diff --git a/.changelog/8771.txt b/.changelog/8771.txt new file mode 100644 index 000000000..57b68665a --- /dev/null +++ b/.changelog/8771.txt @@ -0,0 +1,4 @@ +```release-note:bug +api: Fixed a bug where the Check.GRPCUseTLS field could not be set using snake case. +``` + diff --git a/.changelog/8774.txt b/.changelog/8774.txt index 35f641a61..09b85ef1c 100644 --- a/.changelog/8774.txt +++ b/.changelog/8774.txt @@ -1,4 +1,3 @@ ```release-note:improvement -api: The `v1/connect/ca/roots` endpoint now accepts a `pem=true` query parameter and will return a PEM encoded certificate chain of - all the certificates that would normally be in the JSON version of the response. -``` \ No newline at end of file +api: The `v1/connect/ca/roots` endpoint now accepts a `pem=true` query parameter and will return a PEM encoded certificate chain of all the certificates that would normally be in the JSON version of the response. +``` diff --git a/.changelog/8924.txt b/.changelog/8924.txt new file mode 100644 index 000000000..1832faa75 --- /dev/null +++ b/.changelog/8924.txt @@ -0,0 +1,3 @@ +```release-note:bug +connect: fix connect sidecars registered via the API not being automatically deregistered with their parent service after an agent restart by persisting the LocallyRegisteredAsSidecar property. +``` diff --git a/.changelog/9002.txt b/.changelog/9002.txt new file mode 100644 index 000000000..4d95492f5 --- /dev/null +++ b/.changelog/9002.txt @@ -0,0 +1,3 @@ +```release-note:improvement +ui: add dashboard_url_template config option for external dashboard links +``` diff --git a/.changelog/9006.txt b/.changelog/9006.txt new file mode 100644 index 000000000..6673819ac --- /dev/null +++ b/.changelog/9006.txt @@ -0,0 +1,3 @@ +```release-note:feature +cli: snapshot inspect command supports JSON output +``` diff --git a/.changelog/9007.txt b/.changelog/9007.txt new file mode 100644 index 000000000..6c1780570 --- /dev/null +++ b/.changelog/9007.txt @@ -0,0 +1,3 @@ +```release-note:improvement +server: break up Intention.Apply monolithic method +``` diff --git a/.changelog/9008.txt b/.changelog/9008.txt new file mode 100644 index 000000000..ec1984103 --- /dev/null +++ b/.changelog/9008.txt @@ -0,0 +1,3 @@ +```release-note:bug +ui: only show topology tab for services that exist +``` diff --git a/.changelog/9024.txt b/.changelog/9024.txt new file mode 100644 index 000000000..40053d99b --- /dev/null +++ b/.changelog/9024.txt @@ -0,0 +1,3 @@ +```release-note:security +Fix Consul Enterprise Namespace Config Entry Replication DoS. Previously an operator with service:write ACL permissions in a Consul Enterprise cluster could write a malicious config entry that caused infinite raft writes due to issues with the namespace replication logic. [[CVE-2020-25201](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25201)] +``` diff --git a/.changelog/9059.txt b/.changelog/9059.txt new file mode 100644 index 000000000..73da074bd --- /dev/null +++ b/.changelog/9059.txt @@ -0,0 +1,3 @@ +```release-note:improvement +agent: add path_allowlist config option to restrict metrics proxy queries +``` diff --git a/.changelog/9081.txt b/.changelog/9081.txt new file mode 100644 index 000000000..210123324 --- /dev/null +++ b/.changelog/9081.txt @@ -0,0 +1,4 @@ +```release-note:bug +ui: hide metrics for ingress gateways until full support can be implemented +``` + diff --git a/.changelog/9088.txt b/.changelog/9088.txt new file mode 100644 index 000000000..a43cec17f --- /dev/null +++ b/.changelog/9088.txt @@ -0,0 +1,3 @@ +```release-note:feature +telemetry: add initialization and definition for non-expiring key metrics in Prometheus +``` diff --git a/.changelog/9098.txt b/.changelog/9098.txt new file mode 100644 index 000000000..2963aa754 --- /dev/null +++ b/.changelog/9098.txt @@ -0,0 +1,3 @@ +```release-note:feature +cli: snapshot inspect command provides KV usage breakdown +``` diff --git a/.changelog/9099.txt b/.changelog/9099.txt new file mode 100644 index 000000000..f468d0f4e --- /dev/null +++ b/.changelog/9099.txt @@ -0,0 +1,3 @@ +```release-note:improvement +agent: protect the metrics proxy behind ACLs +``` diff --git a/.changelog/9101.txt b/.changelog/9101.txt new file mode 100644 index 000000000..3b49975b2 --- /dev/null +++ b/.changelog/9101.txt @@ -0,0 +1,3 @@ +```release-note:feature +agent: return the default ACL policy to callers as a header +``` diff --git a/.changelog/9103.txt b/.changelog/9103.txt new file mode 100644 index 000000000..5e73640ae --- /dev/null +++ b/.changelog/9103.txt @@ -0,0 +1,12 @@ +```release-note:bug +autopilot: **(Enterprise Only)** Previously servers in other zones would not be promoted when all servers in a second zone had failed. Now the actual behavior matches the docs and autopilot will promote a healthy non-voter from any zone to replace failure of an entire zone. +``` +```release-note:feature +autopilot: A new `/v1/operator/autopilot/state` HTTP API was created to give greater visibility into what autopilot is doing and how it has classified all the servers it is tracking. +``` +```release-note:improvement +autopilot: **(Enterprise Only)** Autopilot now supports using both Redundancy Zones and Automated Upgrades together. +``` +```release-note:breaking-change +raft: Raft protocol v2 is no longer supported. If currently using protocol v2 then an intermediate upgrade to a version supporting both v2 and v3 protocols will be necessary (1.0.0 - 1.8.x). Note that the Raft protocol configured with the `raft_protocol` setting and the Consul RPC protocol configured with the `protocol` setting and output by the `consul version` command are distinct and supported Consul RPC protocol versions are not altered. +``` diff --git a/.changelog/9113.txt b/.changelog/9113.txt new file mode 100644 index 000000000..107a9ca0e --- /dev/null +++ b/.changelog/9113.txt @@ -0,0 +1,3 @@ +```release-note:breaking-change +connect: Switch the default gateway port from 443 to 8443 to avoid assumption of Envoy running as root. +``` diff --git a/.changelog/9119.txt b/.changelog/9119.txt new file mode 100644 index 000000000..df86dcc21 --- /dev/null +++ b/.changelog/9119.txt @@ -0,0 +1,3 @@ +```release-note:improvement +chore: update to Go 1.14.11 with mitigation for [golang/go#42138](https://github.com/golang/go/issues/42138) +``` diff --git a/.changelog/9141.txt b/.changelog/9141.txt new file mode 100644 index 000000000..06a2690b7 --- /dev/null +++ b/.changelog/9141.txt @@ -0,0 +1,7 @@ +```release-note:improvement +ui: Moves the Proxy health checks to be displayed with the Service health check under the Health Checks tab +``` + +```release-note:improvement +ui: Add the Upstreams and Exposed Paths tabs for services in mesh +``` \ No newline at end of file diff --git a/.changelog/9142.txt b/.changelog/9142.txt new file mode 100644 index 000000000..9c6821442 --- /dev/null +++ b/.changelog/9142.txt @@ -0,0 +1,3 @@ +```release-note:feature +autopilot: Added a new `consul operator autopilot state` command to retrieve and view the Autopilot state from consul. +``` diff --git a/.changelog/9151.txt b/.changelog/9151.txt new file mode 100644 index 000000000..d5fbce91b --- /dev/null +++ b/.changelog/9151.txt @@ -0,0 +1,3 @@ +```release-note:improvement +server: remove config entry CAS in legacy intention API bridge code +``` diff --git a/.changelog/9156.txt b/.changelog/9156.txt new file mode 100644 index 000000000..c2867838a --- /dev/null +++ b/.changelog/9156.txt @@ -0,0 +1,3 @@ +```release-note:bug +namespace: **(Enterprise Only)** Fixed a bug that could case snapshot restoration to fail when it contained a namespace marked for deletion while still containing other resources in that namespace. +``` diff --git a/.changelog/9181.txt b/.changelog/9181.txt new file mode 100644 index 000000000..5a43914e8 --- /dev/null +++ b/.changelog/9181.txt @@ -0,0 +1,3 @@ +```release-note:deprecation +telemetry: the disable_compat_1.9 config will cover more metrics deprecations in future 1.9 point releases. These metrics will be emitted twice for backwards compatibility - if the flag is true, only the new metric name will be written. +``` diff --git a/.changelog/9186.txt b/.changelog/9186.txt new file mode 100644 index 000000000..2660f453b --- /dev/null +++ b/.changelog/9186.txt @@ -0,0 +1,18 @@ +```release-note:bug +server: skip deleted and deleting namespaces when migrating intentions to config entries +``` + +```release-note:breaking-change +server: **(Enterprise only)** Pre-existing intentions defined with +non-existent destination namespaces were non-functional and are erased during +the upgrade process. This should not matter as these intentions had nothing to +enforce. +``` + +```release-note:breaking-change +server: **(OSS only)** Pre-existing intentions defined with either a source or +destination namespace value that is not "default" are rewritten or deleted +during the upgrade process. Wildcards first attempt to downgrade to "default" +unless an intention already exists, otherwise these non-functional intentions +are deleted. +``` diff --git a/.changelog/9191.txt b/.changelog/9191.txt new file mode 100644 index 000000000..25f7da43d --- /dev/null +++ b/.changelog/9191.txt @@ -0,0 +1,18 @@ +```release-note:deprecation +cli: **(Enterprise only)** The `-non-voting-server` flag is deprecated in favor of the new `-read-replica` flag. The `-non-voting-server` flag is still present along side the new flag but it will be removed in a future release. +``` +```release-note:improvement +cli: **(Enterprise only)** A new `-read-replica` flag can now be used to enable running a server as a read only replica. Previously this was enabled with the now deprecated `-non-voting-server` flag. +``` +```release-note:deprecation +config: **(Enterprise only)** The `non_voting_server` configuration setting is deprecated in favor of the new `read_replica` setting. The `non_voting_server` configuration setting is still present but will be removed in a future release. +``` +```release-note:improvement +config: **(Enterprise only)** A new `read_replica` configuration setting can now be used to enable running a server as a read only replica. Previously this was enabled with the now deprecated `non_voting_server` setting. +``` +```release-note:deprecation +server: **(Enterprise only)** Addition of the `nonvoter` tag to the service registration made for read replicas is deprecated in favor of the new tag name of `read_replica`. Both are present in the registration but the `nonvoter` tag will be completely removed in a future release. +``` +```release-note:deprecation +gossip: **(Enterprise only)** Read replicas now advertise themselves by setting the `read_replica` tag. The old `nonvoter` tag is still present but is deprecated and will be removed in a future release. +``` diff --git a/.changelog/9198.txt b/.changelog/9198.txt new file mode 100644 index 000000000..3f68c3b4b --- /dev/null +++ b/.changelog/9198.txt @@ -0,0 +1,3 @@ +```release-note:improvement +agent: All metrics should be present and available to prometheus scrapers when Consul starts. If any non-deprecated metrics are missing please submit an issue with its name. +``` diff --git a/.changelog/9204.txt b/.changelog/9204.txt new file mode 100644 index 000000000..42789c358 --- /dev/null +++ b/.changelog/9204.txt @@ -0,0 +1,3 @@ +```release-note:bug +autopilot: Prevent panic when requesting the autopilot health immediately after a leader is elected. +``` diff --git a/.changelog/9207.txt b/.changelog/9207.txt new file mode 100644 index 000000000..a29bbdb3c --- /dev/null +++ b/.changelog/9207.txt @@ -0,0 +1,3 @@ +```release-note:breaking-change +connect: Update Envoy metrics names and labels for proxy listeners so that attributes like datacenter and namespace can be extracted. +``` \ No newline at end of file diff --git a/.changelog/9229.txt b/.changelog/9229.txt new file mode 100644 index 000000000..36af2f2cd --- /dev/null +++ b/.changelog/9229.txt @@ -0,0 +1,3 @@ +```release-note:bug +command: when generating envoy bootstrap configs use the datacenter returned from the agent services endpoint +``` diff --git a/.changelog/9240.txt b/.changelog/9240.txt new file mode 100644 index 000000000..5e665e6bc --- /dev/null +++ b/.changelog/9240.txt @@ -0,0 +1,3 @@ +```release-note:security +Increase the permissions to read from the `/connect/ca/configuration` endpoint to `operator:write`. Previously Connect CA configuration, including the private key, set via this endpoint could be read back by an operator with `operator:read` privileges. [CVE-2020-28053](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28053) +``` \ No newline at end of file diff --git a/.changelog/_666.txt b/.changelog/_666.txt new file mode 100644 index 000000000..226974992 --- /dev/null +++ b/.changelog/_666.txt @@ -0,0 +1,3 @@ +```release-note:bug +namespace: **(Enterprise Only)** Fixed an issue where namespaced services and checks were not being deleted when the containing namespace was deleted. +``` diff --git a/.changelog/_683.txt b/.changelog/_683.txt new file mode 100644 index 000000000..02e9ade1e --- /dev/null +++ b/.changelog/_683.txt @@ -0,0 +1,3 @@ +```release-note:bug +license: **(Enterprise only)** Fixed an issue where warnings about Namespaces being unlicensed would be emitted erroneously. +``` diff --git a/.changelog/_8984.txt b/.changelog/_8984.txt new file mode 100644 index 000000000..5ac4e115c --- /dev/null +++ b/.changelog/_8984.txt @@ -0,0 +1,3 @@ +```release-note:breaking-change +sentinel: **(Consul Enterprise only)** update to v0.16.0, which replaces `whitelist` and `blacklist` with `allowlist` and `denylist` +``` diff --git a/.circleci/config.yml b/.circleci/config.yml index fac4584bd..af00fc918 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,15 +3,14 @@ version: 2 references: images: - go: &GOLANG_IMAGE circleci/golang:1.14.9 - middleman: &MIDDLEMAN_IMAGE hashicorp/middleman-hashicorp:0.3.40 - ember: &EMBER_IMAGE circleci/node:12-browsers + go: &GOLANG_IMAGE docker.mirror.hashicorp.services/circleci/golang:1.15.5 + ember: &EMBER_IMAGE docker.mirror.hashicorp.services/circleci/node:12-browsers paths: test-results: &TEST_RESULTS_DIR /tmp/test-results cache: - yarn: &YARN_CACHE_KEY consul-ui-v2-{{ checksum "ui-v2/yarn.lock" }} + yarn: &YARN_CACHE_KEY consul-ui-v3-{{ checksum "ui/yarn.lock" }} rubygem: &RUBYGEM_CACHE_KEY static-site-gems-v1-{{ checksum "Gemfile.lock" }} environment: &ENVIRONMENT @@ -27,7 +26,7 @@ steps: install-gotestsum: &install-gotestsum name: install gotestsum environment: - GOTESTSUM_RELEASE: 0.5.1 + GOTESTSUM_RELEASE: 0.6.0 command: | url=https://github.com/gotestyourself/gotestsum/releases/download curl -sSL "${url}/v${GOTESTSUM_RELEASE}/gotestsum_${GOTESTSUM_RELEASE}_linux_amd64.tar.gz" | \ @@ -237,16 +236,15 @@ jobs: name: go test -race command: | mkdir -p $TEST_RESULTS_DIR /tmp/jsonfile + pkgs="$(go list ./... | \ + grep -E -v '^github.com/hashicorp/consul/agent(/consul|/local|/xds|/routine-leak-checker)?$' | \ + grep -E -v '^github.com/hashicorp/consul/command/')" gotestsum \ - --format=short-verbose \ --jsonfile /tmp/jsonfile/go-test-race.log \ --junitfile $TEST_RESULTS_DIR/gotestsum-report.xml -- \ -tags="$GOTAGS" -p 2 \ -race -gcflags=all=-d=checkptr=0 \ - ./agent/{ae,cache,cache-types,checks,config,pool,proxycfg,router}/... \ - ./agent/consul/{authmethod,autopilot,fsm,state,stream}/... \ - ./agent/{grpc,rpc,rpcclient,submatview}/... \ - ./snapshot + $pkgs - store_test_results: path: *TEST_RESULTS_DIR @@ -345,7 +343,7 @@ jobs: <<: *build-distros environment: <<: *build-env - XC_OS: "darwin freebsd linux windows" + XC_OS: "freebsd linux windows" XC_ARCH: "386" # build all amd64 architecture supported OS binaries @@ -440,7 +438,7 @@ jobs: # upload dev docker image dev-upload-docker: docker: - - image: circleci/golang:latest # use a circleci image so the attach_workspace step works (has ca-certs installed) + - image: *GOLANG_IMAGE # use a circleci image so the attach_workspace step works (has ca-certs installed) environment: <<: *ENVIRONMENT steps: @@ -456,7 +454,7 @@ jobs: # Run integration tests on nomad/v0.8.7 nomad-integration-0_8: docker: - - image: circleci/golang:1.10 + - image: docker.mirror.hashicorp.services/circleci/golang:1.10 environment: <<: *ENVIRONMENT NOMAD_WORKING_DIR: &NOMAD_WORKING_DIR /go/src/github.com/hashicorp/nomad @@ -505,7 +503,7 @@ jobs: build-website-docker-image: docker: - - image: circleci/buildpack-deps + - image: docker.mirror.hashicorp.services/circleci/buildpack-deps shell: /usr/bin/env bash -euo pipefail -c steps: - checkout @@ -531,7 +529,7 @@ jobs: algolia-index: docker: - - image: node:12 + - image: docker.mirror.hashicorp.services/node:12 steps: - checkout - run: @@ -559,12 +557,13 @@ jobs: - run: name: install yarn packages - command: cd ui-v2 && yarn install + command: cd ui/packages/consul-ui && yarn install --focus - save_cache: key: *YARN_CACHE_KEY paths: - - ui-v2/node_modules + - ui/node_modules + - ui/packages/consul-ui/node_modules - run: *notify-slack-failure # build ember so frontend tests run faster @@ -578,13 +577,13 @@ jobs: - checkout - restore_cache: key: *YARN_CACHE_KEY - - run: cd ui-v2 && make build-ci + - run: cd ui/packages/consul-ui && make build-ci # saves the build to a workspace to be passed to a downstream job - persist_to_workspace: - root: ui-v2 + root: ui paths: - - dist + - packages/consul-ui/dist - run: *notify-slack-failure # build ember so frontend tests run faster @@ -604,13 +603,13 @@ jobs: - checkout - restore_cache: key: *YARN_CACHE_KEY - - run: cd ui-v2 && make + - run: cd ui && make # saves the build to a workspace to be passed to a downstream job - persist_to_workspace: - root: ui-v2 + root: ui paths: - - dist + - packages/consul-ui/dist - run: *notify-slack-failure # build static-assets file @@ -621,7 +620,7 @@ jobs: - checkout - attach_workspace: at: ./pkg - - run: mv pkg/dist pkg/web_ui # 'make static-assets' looks for the 'pkg/web_ui' path + - run: mv pkg/packages/consul-ui/dist pkg/web_ui # 'make static-assets' looks for the 'pkg/web_ui' path - run: make tools - run: make static-assets - persist_to_workspace: @@ -644,10 +643,10 @@ jobs: - run: name: commit agent/uiserver/bindata_assetfs.go if there are UI changes command: | - # check if there are any changes in ui-v2/ + # check if there are any changes in ui/ # if there are, we commit the ui static asset file # HEAD^! is shorthand for HEAD^..HEAD (parent of HEAD and HEAD) - if ! git diff --quiet --exit-code HEAD^! ui-v2/; then + if ! git diff --quiet --exit-code HEAD^! ui/; then git config --local user.email "hashicorp-ci@users.noreply.github.com" git config --local user.name "hashicorp-ci" @@ -669,9 +668,9 @@ jobs: - restore_cache: key: *YARN_CACHE_KEY - attach_workspace: - at: ui-v2 + at: ui - run: - working_directory: ui-v2 + working_directory: ui/packages/consul-ui command: make test-node - run: *notify-slack-failure @@ -689,12 +688,12 @@ jobs: - restore_cache: key: *YARN_CACHE_KEY - attach_workspace: - at: ui-v2 + at: ui - run: - working_directory: ui-v2 + working_directory: ui/packages/consul-ui command: node_modules/.bin/ember exam --split=$CIRCLE_NODE_TOTAL --partition=`expr $CIRCLE_NODE_INDEX + 1` --path dist --silent -r xunit - store_test_results: - path: ui-v2/test-results + path: ui/packages/consul-ui/test-results - run: *notify-slack-failure # run ember frontend tests @@ -711,12 +710,12 @@ jobs: - restore_cache: key: *YARN_CACHE_KEY - attach_workspace: - at: ui-v2 + at: ui - run: - working_directory: ui-v2 + working_directory: ui/packages/consul-ui command: node_modules/.bin/ember exam --split=$CIRCLE_NODE_TOTAL --partition=`expr $CIRCLE_NODE_INDEX + 1` --path dist --silent -r xunit - store_test_results: - path: ui-v2/test-results + path: ui/packages/consul-ui/test-results - run: *notify-slack-failure # run ember frontend unit tests to produce coverage report @@ -728,23 +727,24 @@ jobs: - restore_cache: key: *YARN_CACHE_KEY - attach_workspace: - at: ui-v2 + at: ui - run: - working_directory: ui-v2 + working_directory: ui/packages/consul-ui command: make test-coverage-ci - run: name: codecov ui upload - working_directory: ui-v2 + working_directory: ui/packages/consul-ui command: bash <(curl -s https://codecov.io/bash) -v -c -C $CIRCLE_SHA1 -F ui - run: *notify-slack-failure - envoy-integration-test-1.12.6: + envoy-integration-test-1.13.6: &ENVOY_TESTS docker: # We only really need bash and docker-compose which is installed on all # Circle images but pick Go since we have to pick one of them. - image: *GOLANG_IMAGE + parallelism: 2 environment: - ENVOY_VERSION: "1.12.6" + ENVOY_VERSION: "1.13.6" steps: &ENVOY_INTEGRATION_TEST_STEPS - checkout # Get go binary from workspace @@ -756,8 +756,12 @@ jobs: - run: name: Envoy Integration Tests command: | + subtests=$(ls -d test/integration/connect/envoy/*/ | xargs -n 1 basename | circleci tests split) + echo "Running $(echo $subtests | wc -w) subtests" + echo "$subtests" + subtests_pipe_sepr=$(echo "$subtests" | xargs | sed 's/ /|/g') mkdir -p /tmp/test-results/ - gotestsum -- -timeout=30m -tags integration ./test/integration/connect/envoy + gotestsum -- -timeout=30m -tags integration ./test/integration/connect/envoy -run="TestEnvoy/($subtests_pipe_sepr)" environment: GOTESTSUM_JUNITFILE: /tmp/test-results/results.xml GOTESTSUM_FORMAT: standard-verbose @@ -773,26 +777,20 @@ jobs: path: *TEST_RESULTS_DIR - run: *notify-slack-failure - envoy-integration-test-1.13.4: - docker: - - image: *GOLANG_IMAGE + envoy-integration-test-1.14.5: + <<: *ENVOY_TESTS environment: - ENVOY_VERSION: "1.13.4" - steps: *ENVOY_INTEGRATION_TEST_STEPS + ENVOY_VERSION: "1.14.5" - envoy-integration-test-1.14.4: - docker: - - image: *GOLANG_IMAGE + envoy-integration-test-1.15.2: + <<: *ENVOY_TESTS environment: - ENVOY_VERSION: "1.14.4" - steps: *ENVOY_INTEGRATION_TEST_STEPS + ENVOY_VERSION: "1.15.2" - envoy-integration-test-1.15.0: - docker: - - image: *GOLANG_IMAGE + envoy-integration-test-1.16.0: + <<: *ENVOY_TESTS environment: - ENVOY_VERSION: "1.15.0" - steps: *ENVOY_INTEGRATION_TEST_STEPS + ENVOY_VERSION: "1.16.0" # run integration tests for the connect ca providers test-connect-ca-providers: @@ -822,7 +820,7 @@ jobs: # only runs on master: checks latest commit to see if the PR associated has a backport/* or docs* label to cherry-pick cherry-picker: docker: - - image: alpine:3.11 + - image: docker.mirror.hashicorp.services/alpine:3.12 steps: - run: apk add --no-cache --no-progress git bash curl ncurses jq openssh-client - checkout @@ -834,7 +832,7 @@ jobs: trigger-oss-merge: docker: - - image: alpine:3.11 + - image: docker.mirror.hashicorp.services/alpine:3.12 steps: - run: apk add --no-cache --no-progress curl jq - run: @@ -895,6 +893,7 @@ workflows: branches: only: - master + - /release\/\d+\.\d+\.x$/ requires: - build-static-assets - dev-build: @@ -928,16 +927,16 @@ workflows: - nomad-integration-0_8: requires: - dev-build - - envoy-integration-test-1.12.6: + - envoy-integration-test-1.13.6: requires: - dev-build - - envoy-integration-test-1.13.4: + - envoy-integration-test-1.14.5: requires: - dev-build - - envoy-integration-test-1.14.4: + - envoy-integration-test-1.15.2: requires: - dev-build - - envoy-integration-test-1.15.0: + - envoy-integration-test-1.16.0: requires: - dev-build website: diff --git a/.circleci/scripts/cherry-picker.sh b/.circleci/scripts/cherry-picker.sh index f6ce0bc43..34bc7eb48 100755 --- a/.circleci/scripts/cherry-picker.sh +++ b/.circleci/scripts/cherry-picker.sh @@ -131,6 +131,16 @@ fi # save PR number pr_number=$(echo "$resp" | jq '.items[].number') +# comment on the PR with the build number to make it easy to re-run the job when +# cherry-pick labels are added in the future +github_message=":cherries: If backport labels were added before merging, cherry-picking will start automatically.\n\nTo retroactively trigger a backport after merging, add backport labels and re-run ${CIRCLE_BUILD_URL}." +curl -f -s -H "Authorization: token ${GITHUB_TOKEN}" \ + -X POST \ + -d "{ \"body\": \"${github_message}\"}" \ + "https://api.github.com/repos/${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}/issues/${pr_number}/comments" + + + # If the API returned a non-zero count, we have found a PR with that commit so we find # the labels from the PR diff --git a/.github/issue-labeler.yml b/.github/issue-labeler.yml index 2c9b92d1d..09667688e 100644 --- a/.github/issue-labeler.yml +++ b/.github/issue-labeler.yml @@ -70,7 +70,7 @@ theme/testing: theme/tls: - '(mtls|mTLS|tls|TLS)' theme/ui: - - '(ui|browser|chrome|firefox|IE|ie|Chrome)' + - '(browser|chrome|firefox|IE|Chrome)' theme/windows: - '(windows|Windows|Microsoft|microsoft)' # thinking: diff --git a/.github/pr-labeler.yml b/.github/pr-labeler.yml index ae50f3cc4..ebebcb090 100644 --- a/.github/pr-labeler.yml +++ b/.github/pr-labeler.yml @@ -1,84 +1,63 @@ -# backport/1.6: -# backport/1.7: -# backport/1.8: -# beta/1.8: -# blocks-release: -# crash: -# do-not-merge: -# help-wanted: -# needs-discussion: -# needs-investigation: -# post-beta: -pr/dependencies: - - vendor/**/* - - go.* -# pr/needs-rebase: -# pr/needs-tests: -theme/acls: - - acl/**/* -theme/agent-cache: - - agent/cache/**/* -theme/api: - - api/**/* -theme/catalog: - - agent/catalog/**/* -theme/certificates: - - tlsutil/**/* -theme/cli: - - command/**/* -theme/config: - - agent/config/**/* -theme/connect: - - connect/**/* - - agent/connect/**/* -# theme/consul-nomad: -theme/consul-terraform-sync: - - website/pages/docs/nia/**/* - - website/pages/docs/integrate/nia* -# theme/consul-vault: -theme/contributing: - - .github/**/* -theme/dns: - - dns/**/* -theme/envoy/xds: - - agent/xds/**/* -# theme/federation-usability: -theme/health-checks: - - agent/health* - - api/health* -# theme/ingress-gw: -# theme/internal-cleanup: -theme/internals: - - lib/**/* - - types/**/* -# theme/kubernetes: -# theme/mesh-gw: -# theme/operator-usability: -# theme/performance: -# theme/service-metadata: -# theme/streaming: -theme/telemetry: - - logging/**/* -# theme/terminating-gw: -theme/testing: - - ./*test*/**/* -theme/tls: - - tlsutil/**/* -theme/ui: - - ui-v2/**/* -# theme/windows: -# thinking: -# type/bug: -type/ci: - - .circleci/* -# type/crash: -type/docs: - - website/**/* -# type/enhancement: -# type/good-first-issue: -# type/question: -# type/umbrella-☂️: -# version/0.8.3: -# waiting-pr-merge: -# waiting-reply: -# waiting-reply-🤖: +pr/dependencies: + - vendor/**/* + - go.* +theme/acls: + - acl/**/* +theme/agent-cache: + - agent/cache/**/* +theme/api: + - api/**/* +theme/catalog: + - agent/catalog/**/* +theme/certificates: + - tlsutil/**/* +theme/cli: + - command/**/* +theme/config: + - agent/config/**/* +theme/connect: + - connect/**/* + - agent/connect/**/* +# theme/consul-nomad: +theme/consul-terraform-sync: + - website/pages/docs/nia/**/* + - website/pages/docs/integrate/nia* +# theme/consul-vault: +theme/contributing: + - .github/**/* +theme/dns: + - dns/**/* +theme/envoy/xds: + - agent/xds/**/* +# theme/federation-usability: +theme/health-checks: + - agent/health* + - api/health* +# theme/ingress-gw: +# theme/internal-cleanup: +theme/internals: + - lib/**/* + - types/**/* +# theme/kubernetes: +# theme/mesh-gw: +# theme/operator-usability: +# theme/performance: +# theme/service-metadata: +# theme/streaming: +theme/telemetry: + - logging/**/* +# theme/terminating-gw: +theme/testing: + - ./*test*/**/* +theme/tls: + - tlsutil/**/* +theme/ui: + - ui/**/* +# theme/windows: +# thinking: +# type/bug: +type/ci: + - .circleci/* +# type/crash: +type/docs: + - website/**/* diff --git a/.github/workflows/issue-labeler.yml b/.github/workflows/issue-labeler.yml deleted file mode 100644 index 45a171880..000000000 --- a/.github/workflows/issue-labeler.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: "Issue Labeler" -on: - issues: - types: [opened] - -jobs: - triage: - runs-on: ubuntu-latest - steps: - - uses: github/issue-labeler@v2.2 - with: - repo-token: "${{ secrets.GITHUB_TOKEN }}" - configuration-path: .github/issue-labeler.yml - not-before: "2020-09-14T08:23:00Z" - enable-versioned-regex: 0 diff --git a/CHANGELOG.md b/CHANGELOG.md index 27528c61e..47737034f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,93 @@ ## UNRELEASED +## 1.9.0-rc1 (November 17, 2020) + +BREAKING CHANGES: + +* connect: Update Envoy metrics names and labels for proxy listeners so that attributes like datacenter and namespace can be extracted. [[GH-9207](https://github.com/hashicorp/consul/issues/9207)] +* server: **(Enterprise only)** Pre-existing intentions defined with +non-existent destination namespaces were non-functional and are erased during +the upgrade process. This should not matter as these intentions had nothing to +enforce. [[GH-9186](https://github.com/hashicorp/consul/issues/9186)] +* server: **(OSS only)** Pre-existing intentions defined with either a source or +destination namespace value that is not "default" are rewritten or deleted +during the upgrade process. Wildcards first attempt to downgrade to "default" +unless an intention already exists, otherwise these non-functional intentions +are deleted. [[GH-9186](https://github.com/hashicorp/consul/issues/9186)] + +FEATURES: + +* agent: return the default ACL policy to callers as a header [[GH-9101](https://github.com/hashicorp/consul/issues/9101)] +* autopilot: Added a new `consul operator autopilot state` command to retrieve and view the Autopilot state from consul. [[GH-9142](https://github.com/hashicorp/consul/issues/9142)] + +IMPROVEMENTS: + +* agent: All metrics should be present and available to prometheus scrapers when Consul starts. If any non-deprecated metrics are missing please submit an issue with its name. [[GH-9198](https://github.com/hashicorp/consul/issues/9198)] +* server: break up Intention.Apply monolithic method [[GH-9007](https://github.com/hashicorp/consul/issues/9007)] +* server: remove config entry CAS in legacy intention API bridge code [[GH-9151](https://github.com/hashicorp/consul/issues/9151)] +* ui: Add the Upstreams and Exposed Paths tabs for services in mesh [[GH-9141](https://github.com/hashicorp/consul/issues/9141)] +* ui: Moves the Proxy health checks to be displayed with the Service health check under the Health Checks tab [[GH-9141](https://github.com/hashicorp/consul/issues/9141)] + +DEPRECATIONS: + +* telemetry: the disable_compat_1.9 config will cover more metrics deprecations in future 1.9 point releases. These metrics will be emitted twice for backwards compatibility - if the flag is true, only the new metric name will be written. [[GH-9181](https://github.com/hashicorp/consul/issues/9181)] + +BUG FIXES: + +* autopilot: Prevent panic when requesting the autopilot health immediately after a leader is elected. [[GH-9204](https://github.com/hashicorp/consul/issues/9204)] +* license: **(Enterprise only)** Fixed an issue where warnings about Namespaces being unlicensed would be emitted erroneously. +* namespace: **(Enterprise Only)** Fixed a bug that could case snapshot restoration to fail when it contained a namespace marked for deletion while still containing other resources in that namespace. [[GH-9156](https://github.com/hashicorp/consul/issues/9156)] +* namespace: **(Enterprise Only)** Fixed an issue where namespaced services and checks were not being deleted when the containing namespace was deleted. +* server: skip deleted and deleting namespaces when migrating intentions to config entries [[GH-9186](https://github.com/hashicorp/consul/issues/9186)] + +## 1.9.0-beta3 (November 10, 2020) + +BREAKING CHANGES: + +* connect: Switch the default gateway port from 443 to 8443 to avoid assumption of Envoy running as root. [[GH-9113](https://github.com/hashicorp/consul/issues/9113)] +* raft: Raft protocol v2 is no longer supported. If currently using protocol v2 then an intermediate upgrade to a version supporting both v2 and v3 protocols will be necessary (1.0.0 - 1.8.x). Note that the Raft protocol configured with the `raft_protocol` setting and the Consul RPC protocol configured with the `protocol` setting and output by the `consul version` command are distinct and supported Consul RPC protocol versions are not altered. [[GH-9103](https://github.com/hashicorp/consul/issues/9103)] + +FEATURES: + +* autopilot: A new `/v1/operator/autopilot/state` HTTP API was created to give greater visibility into what autopilot is doing and how it has classified all the servers it is tracking. [[GH-9103](https://github.com/hashicorp/consul/issues/9103)] + +IMPROVEMENTS: + +* autopilot: **(Enterprise Only)** Autopilot now supports using both Redundancy Zones and Automated Upgrades together. [[GH-9103](https://github.com/hashicorp/consul/issues/9103)] +* chore: update to Go 1.14.11 with mitigation for [golang/go#42138](https://github.com/golang/go/issues/42138) [[GH-9119](https://github.com/hashicorp/consul/issues/9119)] + +BUG FIXES: + +* autopilot: **(Enterprise Only)** Previously servers in other zones would not be promoted when all servers in a second zone had failed. Now the actual behavior matches the docs and autopilot will promote a healthy non-voter from any zone to replace failure of an entire zone. [[GH-9103](https://github.com/hashicorp/consul/issues/9103)] + +## 1.9.0-beta2 (November 07, 2020) + +BREAKING CHANGES: + +* sentinel: **(Consul Enterprise only)** update to v0.16.0, which replaces `whitelist` and `blacklist` with `allowlist` and `denylist` + +SECURITY: + +* Fix Consul Enterprise Namespace Config Entry Replication DoS. Previously an operator with service:write ACL permissions in a Consul Enterprise cluster could write a malicious config entry that caused infinite raft writes due to issues with the namespace replication logic. [[CVE-2020-25201](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25201)] [[GH-9024](https://github.com/hashicorp/consul/issues/9024)] + +FEATURES: + +* agent: Add a new RPC endpoint for streaming cluster state change events to clients. +* telemetry: add initialization and definition for non-expiring key metrics in Prometheus [[GH-9088](https://github.com/hashicorp/consul/issues/9088)] + +IMPROVEMENTS: + +* agent: add path_allowlist config option to restrict metrics proxy queries [[GH-9059](https://github.com/hashicorp/consul/issues/9059)] +* agent: protect the metrics proxy behind ACLs [[GH-9099](https://github.com/hashicorp/consul/issues/9099)] +* ui: add dashboard_url_template config option for external dashboard links [[GH-9002](https://github.com/hashicorp/consul/issues/9002)] + +BUG FIXES: + +* api: Fixed a bug where the Check.GRPCUseTLS field could not be set using snake case. [[GH-8771](https://github.com/hashicorp/consul/issues/8771)] +* connect: fix connect sidecars registered via the API not being automatically deregistered with their parent service after an agent restart by persisting the LocallyRegisteredAsSidecar property. [[GH-8924](https://github.com/hashicorp/consul/issues/8924)] +* ui: hide metrics for ingress gateways until full support can be implemented [[GH-9081](https://github.com/hashicorp/consul/issues/9081)] +* ui: only show topology tab for services that exist [[GH-9008](https://github.com/hashicorp/consul/issues/9008)] + ## 1.9.0-beta1 (October 12, 2020) BREAKING CHANGES: @@ -57,6 +145,33 @@ BUG FIXES: * raft: (Enterprise only) properly update consul server meta non_voter for non-voting Enterprise Consul servers [[GH-8731](https://github.com/hashicorp/consul/issues/8731)] * ui: show correct datacenter for gateways [[GH-8704](https://github.com/hashicorp/consul/issues/8704)] +## 1.8.6 (November 19, 2020) + +SECURITY: + +* Increase the permissions to read from the `/connect/ca/configuration` endpoint to `operator:write`. Previously Connect CA configuration, including the private key, set via this endpoint could be read back by an operator with `operator:read` privileges. [CVE-2020-28053](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28053) [[GH-9240](https://github.com/hashicorp/consul/issues/9240)] + +## 1.8.5 (October 23, 2020) + +SECURITY: + +* Fix Consul Enterprise Namespace Config Entry Replication DoS. Previously an operator with service:write ACL permissions in a Consul Enterprise cluster could write a malicious config entry that caused infinite raft writes due to issues with the namespace replication logic. [[CVE-2020-25201](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25201)] [[GH-9024](https://github.com/hashicorp/consul/issues/9024)] + +IMPROVEMENTS: + +* api: The `v1/connect/ca/roots` endpoint now accepts a `pem=true` query parameter and will return a PEM encoded certificate chain of all the certificates that would normally be in the JSON version of the response. [[GH-8774](https://github.com/hashicorp/consul/issues/8774)] +* connect: The Vault provider will now automatically renew the lease of the token used, if supported. [[GH-8560](https://github.com/hashicorp/consul/issues/8560)] +* connect: update supported envoy releases to 1.14.5, 1.13.6, 1.12.7, 1.11.2 for 1.8.x [[GH-8999](https://github.com/hashicorp/consul/issues/8999)] + +BUG FIXES: + +* agent: when enable_central_service_config is enabled ensure agent reload doesn't revert check state to critical [[GH-8747](https://github.com/hashicorp/consul/issues/8747)] +* connect: Fixed an issue where the Vault intermediate was not renewed in the primary datacenter. [[GH-8784](https://github.com/hashicorp/consul/issues/8784)] +* connect: fix Vault provider not respecting IntermediateCertTTL [[GH-8646](https://github.com/hashicorp/consul/issues/8646)] +* connect: fix connect sidecars registered via the API not being automatically deregistered with their parent service after an agent restart by persisting the LocallyRegisteredAsSidecar property. [[GH-8924](https://github.com/hashicorp/consul/issues/8924)] +* fixed a bug that caused logs to be flooded with `[WARN] agent.router: Non-server in server-only area` [[GH-8685](https://github.com/hashicorp/consul/issues/8685)] +* ui: show correct datacenter for gateways [[GH-8704](https://github.com/hashicorp/consul/issues/8704)] + ## 1.8.4 (September 11, 2020) FEATURES: @@ -202,6 +317,26 @@ BUGFIXES: * ui: Miscellaneous amends for Safari and Firefox [[GH-7904](https://github.com/hashicorp/consul/issues/7904)] [[GH-7907](https://github.com/hashicorp/consul/pull/7907)] * ui: Ensure a value is always passed to CONSUL_SSO_ENABLED [[GH-7913](https://github.com/hashicorp/consul/pull/7913)] +## 1.7.10 (November 19, 2020) + +SECURITY: + +* Increase the permissions to read from the `/connect/ca/configuration` endpoint to `operator:write`. Previously Connect CA configuration, including the private key, set via this endpoint could be read back by an operator with `operator:read` privileges. [CVE-2020-28053](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28053) [[GH-9240](https://github.com/hashicorp/consul/issues/9240)] + +## 1.7.9 (October 26, 2020) + +SECURITY: + +* Fix Consul Enterprise Namespace Config Entry Replication DoS. Previously an operator with service:write ACL permissions in a Consul Enterprise cluster could write a malicious config entry that caused infinite raft writes due to issues with the namespace replication logic. [CVE-2020-25201] (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-25201) [[GH-9024](https://github.com/hashicorp/consul/issues/9024)] + +IMPROVEMENTS: + +* connect: update supported envoy releases to 1.13.6, 1.12.7, 1.11.2, 1.10.0 for 1.7.x [[GH-9000](https://github.com/hashicorp/consul/issues/9000)] + +BUG FIXES: + +* agent: when enable_central_service_config is enabled ensure agent reload doesn't revert check state to critical [[GH-8747](https://github.com/hashicorp/consul/issues/8747)] + ## 1.7.8 (September 11, 2020) FEATURES: @@ -437,6 +572,12 @@ BUGFIXES: * ui: Discovery-Chain: Improve parsing of redirects [[GH-7174](https://github.com/hashicorp/consul/pull/7174)] * ui: Fix styling of ‘duplicate intention’ error message [[GH6936]](https://github.com/hashicorp/consul/pull/6936) +## 1.6.10 (November 19, 2020) + +SECURITY: + +* Increase the permissions to read from the `/connect/ca/configuration` endpoint to `operator:write`. Previously Connect CA configuration, including the private key, set via this endpoint could be read back by an operator with `operator:read` privileges. [CVE-2020-28053](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-28053) [[GH-9240](https://github.com/hashicorp/consul/issues/9240)] + ## 1.6.9 (September 11, 2020) BUG FIXES: diff --git a/acl/acl_test.go b/acl/acl_test.go index 8e50f75f5..becc3b709 100644 --- a/acl/acl_test.go +++ b/acl/acl_test.go @@ -100,6 +100,10 @@ func checkAllowNodeRead(t *testing.T, authz Authorizer, prefix string, entCtx *A require.Equal(t, Allow, authz.NodeRead(prefix, entCtx)) } +func checkAllowNodeReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Allow, authz.NodeReadAll(entCtx)) +} + func checkAllowNodeWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Allow, authz.NodeWrite(prefix, entCtx)) } @@ -124,6 +128,10 @@ func checkAllowServiceRead(t *testing.T, authz Authorizer, prefix string, entCtx require.Equal(t, Allow, authz.ServiceRead(prefix, entCtx)) } +func checkAllowServiceReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Allow, authz.ServiceReadAll(entCtx)) +} + func checkAllowServiceWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Allow, authz.ServiceWrite(prefix, entCtx)) } @@ -204,6 +212,10 @@ func checkDenyNodeRead(t *testing.T, authz Authorizer, prefix string, entCtx *Au require.Equal(t, Deny, authz.NodeRead(prefix, entCtx)) } +func checkDenyNodeReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Deny, authz.NodeReadAll(entCtx)) +} + func checkDenyNodeWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Deny, authz.NodeWrite(prefix, entCtx)) } @@ -228,6 +240,10 @@ func checkDenyServiceRead(t *testing.T, authz Authorizer, prefix string, entCtx require.Equal(t, Deny, authz.ServiceRead(prefix, entCtx)) } +func checkDenyServiceReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Deny, authz.ServiceReadAll(entCtx)) +} + func checkDenyServiceWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Deny, authz.ServiceWrite(prefix, entCtx)) } @@ -308,6 +324,10 @@ func checkDefaultNodeRead(t *testing.T, authz Authorizer, prefix string, entCtx require.Equal(t, Default, authz.NodeRead(prefix, entCtx)) } +func checkDefaultNodeReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Default, authz.NodeReadAll(entCtx)) +} + func checkDefaultNodeWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Default, authz.NodeWrite(prefix, entCtx)) } @@ -332,6 +352,10 @@ func checkDefaultServiceRead(t *testing.T, authz Authorizer, prefix string, entC require.Equal(t, Default, authz.ServiceRead(prefix, entCtx)) } +func checkDefaultServiceReadAll(t *testing.T, authz Authorizer, _ string, entCtx *AuthorizerContext) { + require.Equal(t, Default, authz.ServiceReadAll(entCtx)) +} + func checkDefaultServiceWrite(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) { require.Equal(t, Default, authz.ServiceWrite(prefix, entCtx)) } @@ -381,12 +405,14 @@ func TestACL(t *testing.T) { {name: "DenyKeyringWrite", check: checkDenyKeyringWrite}, {name: "DenyKeyWrite", check: checkDenyKeyWrite}, {name: "DenyNodeRead", check: checkDenyNodeRead}, + {name: "DenyNodeReadAll", check: checkDenyNodeReadAll}, {name: "DenyNodeWrite", check: checkDenyNodeWrite}, {name: "DenyOperatorRead", check: checkDenyOperatorRead}, {name: "DenyOperatorWrite", check: checkDenyOperatorWrite}, {name: "DenyPreparedQueryRead", check: checkDenyPreparedQueryRead}, {name: "DenyPreparedQueryWrite", check: checkDenyPreparedQueryWrite}, {name: "DenyServiceRead", check: checkDenyServiceRead}, + {name: "DenyServiceReadAll", check: checkDenyServiceReadAll}, {name: "DenyServiceWrite", check: checkDenyServiceWrite}, {name: "DenySessionRead", check: checkDenySessionRead}, {name: "DenySessionWrite", check: checkDenySessionWrite}, @@ -411,12 +437,14 @@ func TestACL(t *testing.T) { {name: "AllowKeyringWrite", check: checkAllowKeyringWrite}, {name: "AllowKeyWrite", check: checkAllowKeyWrite}, {name: "AllowNodeRead", check: checkAllowNodeRead}, + {name: "AllowNodeReadAll", check: checkAllowNodeReadAll}, {name: "AllowNodeWrite", check: checkAllowNodeWrite}, {name: "AllowOperatorRead", check: checkAllowOperatorRead}, {name: "AllowOperatorWrite", check: checkAllowOperatorWrite}, {name: "AllowPreparedQueryRead", check: checkAllowPreparedQueryRead}, {name: "AllowPreparedQueryWrite", check: checkAllowPreparedQueryWrite}, {name: "AllowServiceRead", check: checkAllowServiceRead}, + {name: "AllowServiceReadAll", check: checkAllowServiceReadAll}, {name: "AllowServiceWrite", check: checkAllowServiceWrite}, {name: "AllowSessionRead", check: checkAllowSessionRead}, {name: "AllowSessionWrite", check: checkAllowSessionWrite}, @@ -441,12 +469,14 @@ func TestACL(t *testing.T) { {name: "AllowKeyringWrite", check: checkAllowKeyringWrite}, {name: "AllowKeyWrite", check: checkAllowKeyWrite}, {name: "AllowNodeRead", check: checkAllowNodeRead}, + {name: "AllowNodeReadAll", check: checkAllowNodeReadAll}, {name: "AllowNodeWrite", check: checkAllowNodeWrite}, {name: "AllowOperatorRead", check: checkAllowOperatorRead}, {name: "AllowOperatorWrite", check: checkAllowOperatorWrite}, {name: "AllowPreparedQueryRead", check: checkAllowPreparedQueryRead}, {name: "AllowPreparedQueryWrite", check: checkAllowPreparedQueryWrite}, {name: "AllowServiceRead", check: checkAllowServiceRead}, + {name: "AllowServiceReadAll", check: checkAllowServiceReadAll}, {name: "AllowServiceWrite", check: checkAllowServiceWrite}, {name: "AllowSessionRead", check: checkAllowSessionRead}, {name: "AllowSessionWrite", check: checkAllowSessionWrite}, @@ -995,6 +1025,7 @@ func TestACL(t *testing.T) { }), }, checks: []aclCheck{ + {name: "ReadAllDenied", prefix: "", check: checkDenyNodeReadAll}, {name: "DefaultReadDenied", prefix: "nope", check: checkDenyNodeRead}, {name: "DefaultWriteDenied", prefix: "nope", check: checkDenyNodeWrite}, {name: "DenyReadDenied", prefix: "root-nope", check: checkDenyNodeRead}, @@ -1075,6 +1106,7 @@ func TestACL(t *testing.T) { }), }, checks: []aclCheck{ + {name: "ReadAllDenied", prefix: "", check: checkDenyNodeReadAll}, {name: "DefaultReadAllowed", prefix: "nope", check: checkAllowNodeRead}, {name: "DefaultWriteAllowed", prefix: "nope", check: checkAllowNodeWrite}, {name: "DenyReadDenied", prefix: "root-nope", check: checkDenyNodeRead}, @@ -1335,6 +1367,7 @@ func TestACL(t *testing.T) { }), }, checks: []aclCheck{ + {name: "ServiceReadAllDenied", prefix: "", check: checkDenyServiceReadAll}, {name: "KeyReadDenied", prefix: "other", check: checkDenyKeyRead}, {name: "KeyWriteDenied", prefix: "other", check: checkDenyKeyWrite}, {name: "KeyWritePrefixDenied", prefix: "other", check: checkDenyKeyWritePrefix}, @@ -1464,6 +1497,7 @@ func TestACL(t *testing.T) { }), }, checks: []aclCheck{ + {name: "ServiceReadAllDenied", prefix: "", check: checkDenyServiceReadAll}, {name: "KeyReadAllowed", prefix: "other", check: checkAllowKeyRead}, {name: "KeyWriteAllowed", prefix: "other", check: checkAllowKeyWrite}, {name: "KeyWritePrefixAllowed", prefix: "other", check: checkAllowKeyWritePrefix}, @@ -1708,6 +1742,9 @@ func TestACL(t *testing.T) { }, }, checks: []aclCheck{ + {name: "NodeReadAllDenied", prefix: "", check: checkDenyNodeReadAll}, + {name: "ServiceReadAllDenied", prefix: "", check: checkDenyServiceReadAll}, + {name: "AgentReadPrefixAllowed", prefix: "fo", check: checkAllowAgentRead}, {name: "AgentWritePrefixDenied", prefix: "fo", check: checkDenyAgentWrite}, {name: "AgentReadPrefixAllowed", prefix: "for", check: checkAllowAgentRead}, @@ -2101,3 +2138,78 @@ func TestACLEnforce(t *testing.T) { }) } } + +func TestACL_ReadAll(t *testing.T) { + type testcase struct { + name string + rules string + check func(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext) + } + + tests := []testcase{ + { + name: "node:bar:read", + rules: `node "bar" { policy = "read" }`, + check: checkDenyNodeReadAll, + }, + { + name: "node:bar:write", + rules: `node "bar" { policy = "write" }`, + check: checkDenyNodeReadAll, + }, + { + name: "node:*:read", + rules: `node_prefix "" { policy = "read" }`, + check: checkAllowNodeReadAll, + }, + { + name: "node:*:write", + rules: `node_prefix "" { policy = "write" }`, + check: checkAllowNodeReadAll, + }, + { + name: "service:bar:read", + rules: `service "bar" { policy = "read" }`, + check: checkDenyServiceReadAll, + }, + { + name: "service:bar:write", + rules: `service "bar" { policy = "write" }`, + check: checkDenyServiceReadAll, + }, + { + name: "service:*:read", + rules: `service_prefix "" { policy = "read" }`, + check: checkAllowServiceReadAll, + }, + { + name: "service:*:write", + rules: `service_prefix "" { policy = "write" }`, + check: checkAllowServiceReadAll, + }, + } + + body := func(t *testing.T, rules string, defaultPolicy Authorizer, check func(t *testing.T, authz Authorizer, prefix string, entCtx *AuthorizerContext)) { + t.Helper() + + policy, err := NewPolicyFromSource("", 0, rules, SyntaxCurrent, nil, nil) + require.NoError(t, err) + + acl, err := NewPolicyAuthorizerWithDefaults(defaultPolicy, []*Policy{policy}, nil) + require.NoError(t, err) + + check(t, acl, "", nil) + } + + for _, tc := range tests { + tc := tc + t.Run(tc.name, func(t *testing.T) { + t.Run("default deny", func(t *testing.T) { + body(t, tc.rules, DenyAll(), tc.check) + }) + t.Run("default allow", func(t *testing.T) { + body(t, tc.rules, AllowAll(), checkAllowNodeReadAll) + }) + }) + } +} diff --git a/acl/authorizer.go b/acl/authorizer.go index fb3abcc34..9693786f0 100644 --- a/acl/authorizer.go +++ b/acl/authorizer.go @@ -107,6 +107,9 @@ type Authorizer interface { // NodeRead checks for permission to read (discover) a given node. NodeRead(string, *AuthorizerContext) EnforcementDecision + // NodeReadAll checks for permission to read (discover) all nodes. + NodeReadAll(*AuthorizerContext) EnforcementDecision + // NodeWrite checks for permission to create or update (register) a // given node. NodeWrite(string, *AuthorizerContext) EnforcementDecision @@ -130,6 +133,9 @@ type Authorizer interface { // ServiceRead checks for permission to read a given service ServiceRead(string, *AuthorizerContext) EnforcementDecision + // ServiceReadAll checks for permission to read all services + ServiceReadAll(*AuthorizerContext) EnforcementDecision + // ServiceWrite checks for permission to create or update a given // service ServiceWrite(string, *AuthorizerContext) EnforcementDecision diff --git a/acl/authorizer_test.go b/acl/authorizer_test.go index 8ce3ce516..b1833efd1 100644 --- a/acl/authorizer_test.go +++ b/acl/authorizer_test.go @@ -12,6 +12,8 @@ type mockAuthorizer struct { mock.Mock } +var _ Authorizer = (*mockAuthorizer)(nil) + // ACLRead checks for permission to list all the ACLs func (m *mockAuthorizer) ACLRead(ctx *AuthorizerContext) EnforcementDecision { ret := m.Called(ctx) @@ -115,6 +117,11 @@ func (m *mockAuthorizer) NodeRead(segment string, ctx *AuthorizerContext) Enforc return ret.Get(0).(EnforcementDecision) } +func (m *mockAuthorizer) NodeReadAll(ctx *AuthorizerContext) EnforcementDecision { + ret := m.Called(ctx) + return ret.Get(0).(EnforcementDecision) +} + // NodeWrite checks for permission to create or update (register) a // given node. func (m *mockAuthorizer) NodeWrite(segment string, ctx *AuthorizerContext) EnforcementDecision { @@ -156,6 +163,11 @@ func (m *mockAuthorizer) ServiceRead(segment string, ctx *AuthorizerContext) Enf return ret.Get(0).(EnforcementDecision) } +func (m *mockAuthorizer) ServiceReadAll(ctx *AuthorizerContext) EnforcementDecision { + ret := m.Called(ctx) + return ret.Get(0).(EnforcementDecision) +} + // ServiceWrite checks for permission to create or update a given // service func (m *mockAuthorizer) ServiceWrite(segment string, ctx *AuthorizerContext) EnforcementDecision { @@ -183,8 +195,6 @@ func (m *mockAuthorizer) Snapshot(ctx *AuthorizerContext) EnforcementDecision { } func TestACL_Enforce(t *testing.T) { - t.Parallel() - type testCase struct { method string resource Resource diff --git a/acl/chained_authorizer.go b/acl/chained_authorizer.go index 66ab18cd3..391563003 100644 --- a/acl/chained_authorizer.go +++ b/acl/chained_authorizer.go @@ -152,6 +152,12 @@ func (c *ChainedAuthorizer) NodeRead(node string, entCtx *AuthorizerContext) Enf }) } +func (c *ChainedAuthorizer) NodeReadAll(entCtx *AuthorizerContext) EnforcementDecision { + return c.executeChain(func(authz Authorizer) EnforcementDecision { + return authz.NodeReadAll(entCtx) + }) +} + // NodeWrite checks for permission to create or update (register) a // given node. func (c *ChainedAuthorizer) NodeWrite(node string, entCtx *AuthorizerContext) EnforcementDecision { @@ -199,6 +205,12 @@ func (c *ChainedAuthorizer) ServiceRead(name string, entCtx *AuthorizerContext) }) } +func (c *ChainedAuthorizer) ServiceReadAll(entCtx *AuthorizerContext) EnforcementDecision { + return c.executeChain(func(authz Authorizer) EnforcementDecision { + return authz.ServiceReadAll(entCtx) + }) +} + // ServiceWrite checks for permission to create or update a given // service func (c *ChainedAuthorizer) ServiceWrite(name string, entCtx *AuthorizerContext) EnforcementDecision { diff --git a/acl/chained_authorizer_test.go b/acl/chained_authorizer_test.go index 155d9d808..870a00f9c 100644 --- a/acl/chained_authorizer_test.go +++ b/acl/chained_authorizer_test.go @@ -6,6 +6,8 @@ import ( type testAuthorizer EnforcementDecision +var _ Authorizer = testAuthorizer(Allow) + func (authz testAuthorizer) ACLRead(*AuthorizerContext) EnforcementDecision { return EnforcementDecision(authz) } @@ -54,6 +56,9 @@ func (authz testAuthorizer) KeyringWrite(*AuthorizerContext) EnforcementDecision func (authz testAuthorizer) NodeRead(string, *AuthorizerContext) EnforcementDecision { return EnforcementDecision(authz) } +func (authz testAuthorizer) NodeReadAll(*AuthorizerContext) EnforcementDecision { + return EnforcementDecision(authz) +} func (authz testAuthorizer) NodeWrite(string, *AuthorizerContext) EnforcementDecision { return EnforcementDecision(authz) } @@ -72,6 +77,9 @@ func (authz testAuthorizer) PreparedQueryWrite(string, *AuthorizerContext) Enfor func (authz testAuthorizer) ServiceRead(string, *AuthorizerContext) EnforcementDecision { return EnforcementDecision(authz) } +func (authz testAuthorizer) ServiceReadAll(*AuthorizerContext) EnforcementDecision { + return EnforcementDecision(authz) +} func (authz testAuthorizer) ServiceWrite(string, *AuthorizerContext) EnforcementDecision { return EnforcementDecision(authz) } @@ -86,11 +94,7 @@ func (authz testAuthorizer) Snapshot(*AuthorizerContext) EnforcementDecision { } func TestChainedAuthorizer(t *testing.T) { - t.Parallel() - t.Run("No Authorizers", func(t *testing.T) { - t.Parallel() - authz := NewChainedAuthorizer([]Authorizer{}) checkDenyACLRead(t, authz, "foo", nil) checkDenyACLWrite(t, authz, "foo", nil) @@ -121,8 +125,6 @@ func TestChainedAuthorizer(t *testing.T) { }) t.Run("Authorizer Defaults", func(t *testing.T) { - t.Parallel() - authz := NewChainedAuthorizer([]Authorizer{testAuthorizer(Default)}) checkDenyACLRead(t, authz, "foo", nil) checkDenyACLWrite(t, authz, "foo", nil) @@ -153,8 +155,6 @@ func TestChainedAuthorizer(t *testing.T) { }) t.Run("Authorizer No Defaults", func(t *testing.T) { - t.Parallel() - authz := NewChainedAuthorizer([]Authorizer{testAuthorizer(Allow)}) checkAllowACLRead(t, authz, "foo", nil) checkAllowACLWrite(t, authz, "foo", nil) @@ -185,8 +185,6 @@ func TestChainedAuthorizer(t *testing.T) { }) t.Run("First Found", func(t *testing.T) { - t.Parallel() - authz := NewChainedAuthorizer([]Authorizer{testAuthorizer(Deny), testAuthorizer(Allow)}) checkDenyACLRead(t, authz, "foo", nil) checkDenyACLWrite(t, authz, "foo", nil) diff --git a/acl/policy_authorizer.go b/acl/policy_authorizer.go index 01f688488..af52418c2 100644 --- a/acl/policy_authorizer.go +++ b/acl/policy_authorizer.go @@ -350,7 +350,7 @@ type enforceCallback func(raw interface{}, prefixOnly bool) EnforcementDecision func anyAllowed(tree *radix.Tree, enforceFn enforceCallback) EnforcementDecision { decision := Default - // special case for handling a catch-all prefix rule. If the rule woul Deny access then our default decision + // special case for handling a catch-all prefix rule. If the rule would Deny access then our default decision // should be to Deny, but this decision should still be overridable with other more specific rules. if raw, found := tree.Get(""); found { decision = enforceFn(raw, true) @@ -686,6 +686,10 @@ func (p *policyAuthorizer) NodeRead(name string, _ *AuthorizerContext) Enforceme return Default } +func (p *policyAuthorizer) NodeReadAll(_ *AuthorizerContext) EnforcementDecision { + return p.allAllowed(p.nodeRules, AccessRead) +} + // NodeWrite checks if writing (registering) a node is allowed func (p *policyAuthorizer) NodeWrite(name string, _ *AuthorizerContext) EnforcementDecision { if rule, ok := getPolicy(name, p.nodeRules); ok { @@ -720,6 +724,10 @@ func (p *policyAuthorizer) ServiceRead(name string, _ *AuthorizerContext) Enforc return Default } +func (p *policyAuthorizer) ServiceReadAll(_ *AuthorizerContext) EnforcementDecision { + return p.allAllowed(p.serviceRules, AccessRead) +} + // ServiceWrite checks if writing (registering) a service is allowed func (p *policyAuthorizer) ServiceWrite(name string, _ *AuthorizerContext) EnforcementDecision { if rule, ok := getPolicy(name, p.serviceRules); ok { diff --git a/acl/policy_authorizer_test.go b/acl/policy_authorizer_test.go index 0f074e49a..d303eea92 100644 --- a/acl/policy_authorizer_test.go +++ b/acl/policy_authorizer_test.go @@ -13,8 +13,6 @@ import ( // ensure compatibility from version to version those tests have been only minimally altered. The tests in this // file are specific to the newer functionality. func TestPolicyAuthorizer(t *testing.T) { - t.Parallel() - type aclCheck struct { name string prefix string @@ -446,8 +444,6 @@ func TestPolicyAuthorizer(t *testing.T) { name := name tcase := tcase t.Run(name, func(t *testing.T) { - t.Parallel() - authz, err := NewPolicyAuthorizer([]*Policy{tcase.policy}, nil) require.NoError(t, err) @@ -458,7 +454,6 @@ func TestPolicyAuthorizer(t *testing.T) { } t.Run(checkName, func(t *testing.T) { check := check - t.Parallel() check.check(t, authz, check.prefix, nil) }) @@ -468,8 +463,6 @@ func TestPolicyAuthorizer(t *testing.T) { } func TestAnyAllowed(t *testing.T) { - t.Parallel() - type radixInsertion struct { segment string value *policyAuthorizerRadixLeaf @@ -719,8 +712,6 @@ func TestAnyAllowed(t *testing.T) { } func TestAllAllowed(t *testing.T) { - t.Parallel() - type radixInsertion struct { segment string value *policyAuthorizerRadixLeaf diff --git a/acl/static_authorizer.go b/acl/static_authorizer.go index 2339a2fe2..4523f0636 100644 --- a/acl/static_authorizer.go +++ b/acl/static_authorizer.go @@ -142,6 +142,13 @@ func (s *staticAuthorizer) NodeRead(string, *AuthorizerContext) EnforcementDecis return Deny } +func (s *staticAuthorizer) NodeReadAll(*AuthorizerContext) EnforcementDecision { + if s.defaultAllow { + return Allow + } + return Deny +} + func (s *staticAuthorizer) NodeWrite(string, *AuthorizerContext) EnforcementDecision { if s.defaultAllow { return Allow @@ -184,6 +191,13 @@ func (s *staticAuthorizer) ServiceRead(string, *AuthorizerContext) EnforcementDe return Deny } +func (s *staticAuthorizer) ServiceReadAll(*AuthorizerContext) EnforcementDecision { + if s.defaultAllow { + return Allow + } + return Deny +} + func (s *staticAuthorizer) ServiceWrite(string, *AuthorizerContext) EnforcementDecision { if s.defaultAllow { return Allow diff --git a/acl/static_authorizer_test.go b/acl/static_authorizer_test.go index a2865754e..b9ed59093 100644 --- a/acl/static_authorizer_test.go +++ b/acl/static_authorizer_test.go @@ -5,11 +5,7 @@ import ( ) func TestStaticAuthorizer(t *testing.T) { - t.Parallel() - t.Run("AllowAll", func(t *testing.T) { - t.Parallel() - authz := AllowAll() checkDenyACLRead(t, authz, "foo", nil) checkDenyACLWrite(t, authz, "foo", nil) @@ -40,7 +36,6 @@ func TestStaticAuthorizer(t *testing.T) { }) t.Run("DenyAll", func(t *testing.T) { - t.Parallel() authz := DenyAll() checkDenyACLRead(t, authz, "foo", nil) checkDenyACLWrite(t, authz, "foo", nil) @@ -71,7 +66,6 @@ func TestStaticAuthorizer(t *testing.T) { }) t.Run("ManageAll", func(t *testing.T) { - t.Parallel() authz := ManageAll() checkAllowACLRead(t, authz, "foo", nil) checkAllowACLWrite(t, authz, "foo", nil) diff --git a/agent/agent.go b/agent/agent.go index 149998718..e8f897655 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -360,10 +360,16 @@ func New(bd BaseDeps) (*Agent, error) { } cacheName := cachetype.HealthServicesName - if bd.RuntimeConfig.CacheUseStreamingBackend { + if bd.RuntimeConfig.UseStreamingBackend { cacheName = cachetype.StreamingHealthServicesName } - a.rpcClientHealth = &health.Client{Cache: bd.Cache, NetRPC: &a, CacheName: cacheName} + a.rpcClientHealth = &health.Client{ + Cache: bd.Cache, + NetRPC: &a, + CacheName: cacheName, + // Temporarily until streaming supports all connect events + CacheNameConnect: cachetype.HealthServicesName, + } a.serviceManager = NewServiceManager(&a) @@ -792,19 +798,7 @@ func (a *Agent) listenHTTP() ([]apiServer, error) { httpServer.ConnState = connLimitFn } - servers = append(servers, apiServer{ - Protocol: proto, - Addr: l.Addr(), - Shutdown: httpServer.Shutdown, - Run: func() error { - err := httpServer.Serve(l) - if err == nil || err == http.ErrServerClosed { - return nil - } - return fmt.Errorf("%s server %s failed: %w", proto, l.Addr(), err) - }, - MaxHeaderBytes: a.config.HTTPMaxHeaderBytes, - }) + servers = append(servers, newAPIServerHTTP(proto, l, httpServer)) } return nil } @@ -1106,8 +1100,8 @@ func newConsulConfig(runtimeCfg *config.RuntimeConfig, logger hclog.Logger) (*co if runtimeCfg.SessionTTLMin != 0 { cfg.SessionTTLMin = runtimeCfg.SessionTTLMin } - if runtimeCfg.NonVotingServer { - cfg.NonVoter = runtimeCfg.NonVotingServer + if runtimeCfg.ReadReplica { + cfg.ReadReplica = runtimeCfg.ReadReplica } // These are fully specified in the agent defaults, so we can simply @@ -1723,6 +1717,11 @@ type persistedService struct { Token string Service *structs.NodeService Source string + // whether this service was registered as a sidecar, see structs.NodeService + // we store this field here because it is excluded from json serialization + // to exclude it from API output, but we need it to properly deregister + // persisted sidecars. + LocallyRegisteredAsSidecar bool `json:",omitempty"` } // persistService saves a service definition to a JSON file in the data dir @@ -1731,9 +1730,10 @@ func (a *Agent) persistService(service *structs.NodeService, source configSource svcPath := filepath.Join(a.config.DataDir, servicesDir, svcID.StringHash()) wrapped := persistedService{ - Token: a.State.ServiceToken(service.CompoundServiceID()), - Service: service, - Source: source.String(), + Token: a.State.ServiceToken(service.CompoundServiceID()), + Service: service, + Source: source.String(), + LocallyRegisteredAsSidecar: service.LocallyRegisteredAsSidecar, } encoded, err := json.Marshal(wrapped) if err != nil { @@ -3182,6 +3182,10 @@ func (a *Agent) loadServices(conf *config.RuntimeConfig, snap map[structs.CheckI continue } } + + // Restore LocallyRegisteredAsSidecar, see persistedService.LocallyRegisteredAsSidecar + p.Service.LocallyRegisteredAsSidecar = p.LocallyRegisteredAsSidecar + serviceID := p.Service.CompoundServiceID() source, ok := ConfigSourceFromName(p.Source) diff --git a/agent/agent_endpoint.go b/agent/agent_endpoint.go index 73e0f5364..3c2735c92 100644 --- a/agent/agent_endpoint.go +++ b/agent/agent_endpoint.go @@ -136,7 +136,7 @@ func (s *HTTPHandlers) AgentMetrics(resp http.ResponseWriter, req *http.Request) return nil, acl.ErrPermissionDenied } if enablePrometheusOutput(req) { - if s.agent.config.Telemetry.PrometheusRetentionTime < 1 { + if s.agent.config.Telemetry.PrometheusOpts.Expiration < 1 { resp.WriteHeader(http.StatusUnsupportedMediaType) fmt.Fprint(resp, "Prometheus is not enabled since its retention time is not positive") return nil, nil @@ -170,7 +170,7 @@ func (s *HTTPHandlers) AgentReload(resp http.ResponseWriter, req *http.Request) return nil, s.agent.ReloadConfig() } -func buildAgentService(s *structs.NodeService) api.AgentService { +func buildAgentService(s *structs.NodeService, dc string) api.AgentService { weights := api.AgentWeights{Passing: 1, Warning: 1} if s.Weights != nil { if s.Weights.Passing > 0 { @@ -200,6 +200,7 @@ func buildAgentService(s *structs.NodeService) api.AgentService { CreateIndex: s.CreateIndex, ModifyIndex: s.ModifyIndex, Weights: weights, + Datacenter: dc, } if as.Tags == nil { @@ -253,9 +254,11 @@ func (s *HTTPHandlers) AgentServices(resp http.ResponseWriter, req *http.Request // anyway. agentSvcs := make(map[string]*api.AgentService) + dc := s.agent.config.Datacenter + // Use empty list instead of nil for id, s := range services { - agentService := buildAgentService(s) + agentService := buildAgentService(s, dc) agentSvcs[id.ID] = &agentService } @@ -303,6 +306,8 @@ func (s *HTTPHandlers) AgentService(resp http.ResponseWriter, req *http.Request) sid := structs.NewServiceID(id, &entMeta) + dc := s.agent.config.Datacenter + resultHash, service, err := s.agent.LocalBlockingQuery(false, hash, queryOpts.MaxQueryTime, func(ws memdb.WatchSet) (string, interface{}, error) { @@ -330,7 +335,7 @@ func (s *HTTPHandlers) AgentService(resp http.ResponseWriter, req *http.Request) } // Calculate the content hash over the response, minus the hash field - aSvc := buildAgentService(svc) + aSvc := buildAgentService(svc, dc) reply := &aSvc rawHash, err := hashstructure.Hash(reply, nil) @@ -768,6 +773,8 @@ func (s *HTTPHandlers) AgentHealthServiceByID(resp http.ResponseWriter, req *htt sid := structs.NewServiceID(serviceID, &entMeta) + dc := s.agent.config.Datacenter + if service := s.agent.State.Service(sid); service != nil { if authz != nil && authz.ServiceRead(service.Service, &authzContext) != acl.Allow { return nil, acl.ErrPermissionDenied @@ -776,7 +783,7 @@ func (s *HTTPHandlers) AgentHealthServiceByID(resp http.ResponseWriter, req *htt if returnTextPlain(req) { return status, CodeWithPayloadError{StatusCode: code, Reason: status, ContentType: "text/plain"} } - serviceInfo := buildAgentService(service) + serviceInfo := buildAgentService(service, dc) result := &api.AgentServiceChecksInfo{ AggregatedStatus: status, Checks: healthChecks, @@ -822,6 +829,8 @@ func (s *HTTPHandlers) AgentHealthServiceByName(resp http.ResponseWriter, req *h return nil, acl.ErrPermissionDenied } + dc := s.agent.config.Datacenter + code := http.StatusNotFound status := fmt.Sprintf("ServiceName %s Not Found", serviceName) services := s.agent.State.Services(&entMeta) @@ -831,7 +840,7 @@ func (s *HTTPHandlers) AgentHealthServiceByName(resp http.ResponseWriter, req *h sid := structs.NewServiceID(service.ID, &entMeta) scode, sstatus, healthChecks := agentHealthService(sid, s) - serviceInfo := buildAgentService(service) + serviceInfo := buildAgentService(service, dc) res := api.AgentServiceChecksInfo{ AggregatedStatus: sstatus, Checks: healthChecks, diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 5f8600a93..bd251ee5f 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -365,8 +365,9 @@ func TestAgent_Service(t *testing.T) { Passing: 1, Warning: 1, }, - Meta: map[string]string{}, - Tags: []string{}, + Meta: map[string]string{}, + Tags: []string{}, + Datacenter: "dc1", } fillAgentServiceEnterpriseMeta(expectedResponse, structs.DefaultEnterpriseMeta()) @@ -391,8 +392,9 @@ func TestAgent_Service(t *testing.T) { Port: 1818, }, }, - Meta: map[string]string{}, - Tags: []string{}, + Meta: map[string]string{}, + Tags: []string{}, + Datacenter: "dc1", } fillAgentServiceEnterpriseMeta(expectWebResponse, structs.DefaultEnterpriseMeta()) diff --git a/agent/agent_test.go b/agent/agent_test.go index 833b8bb24..0dfb22345 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -13,6 +13,7 @@ import ( "net" "net/http" "net/http/httptest" + "net/url" "os" "path/filepath" "strconv" @@ -23,12 +24,23 @@ import ( "github.com/golang/protobuf/jsonpb" "github.com/google/tcpproxy" + "github.com/hashicorp/go-hclog" + "github.com/hashicorp/serf/coordinate" + "github.com/hashicorp/serf/serf" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "golang.org/x/sync/errgroup" + "golang.org/x/time/rate" + "gopkg.in/square/go-jose.v2/jwt" + "github.com/hashicorp/consul/agent/cache" cachetype "github.com/hashicorp/consul/agent/cache-types" "github.com/hashicorp/consul/agent/checks" "github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/consul" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/internal/go-sso/oidcauth/oidcauthtest" "github.com/hashicorp/consul/ipaddr" @@ -38,13 +50,8 @@ import ( "github.com/hashicorp/consul/sdk/testutil" "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/hashicorp/consul/testrpc" + "github.com/hashicorp/consul/tlsutil" "github.com/hashicorp/consul/types" - "github.com/hashicorp/serf/coordinate" - "github.com/hashicorp/serf/serf" - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" - "golang.org/x/time/rate" - "gopkg.in/square/go-jose.v2/jwt" ) func getService(a *TestAgent, id string) *structs.NodeService { @@ -2499,6 +2506,75 @@ func TestAgent_PurgeCheckOnDuplicate(t *testing.T) { require.Equal(t, expected, result) } +func TestAgent_DeregisterPersistedSidecarAfterRestart(t *testing.T) { + t.Parallel() + nodeID := NodeID() + a := StartTestAgent(t, TestAgent{ + HCL: ` + node_id = "` + nodeID + `" + node_name = "Node ` + nodeID + `" + server = false + bootstrap = false + enable_central_service_config = false + `}) + defer a.Shutdown() + + srv := &structs.NodeService{ + ID: "svc", + Service: "svc", + Weights: &structs.Weights{ + Passing: 2, + Warning: 1, + }, + Tags: []string{"tag2"}, + Port: 8200, + EnterpriseMeta: *structs.DefaultEnterpriseMeta(), + + Connect: structs.ServiceConnect{ + SidecarService: &structs.ServiceDefinition{}, + }, + } + + connectSrv, _, _, err := a.sidecarServiceFromNodeService(srv, "") + require.NoError(t, err) + + // First persist the check + err = a.AddService(srv, nil, true, "", ConfigSourceLocal) + require.NoError(t, err) + err = a.AddService(connectSrv, nil, true, "", ConfigSourceLocal) + require.NoError(t, err) + + // check both services were registered + require.NotNil(t, a.State.Service(srv.CompoundServiceID())) + require.NotNil(t, a.State.Service(connectSrv.CompoundServiceID())) + + a.Shutdown() + + // Start again with the check registered in config + a2 := StartTestAgent(t, TestAgent{ + Name: "Agent2", + DataDir: a.DataDir, + HCL: ` + node_id = "` + nodeID + `" + node_name = "Node ` + nodeID + `" + server = false + bootstrap = false + enable_central_service_config = false + `}) + defer a2.Shutdown() + + // check both services were restored + require.NotNil(t, a2.State.Service(srv.CompoundServiceID())) + require.NotNil(t, a2.State.Service(connectSrv.CompoundServiceID())) + + err = a2.RemoveService(srv.CompoundServiceID()) + require.NoError(t, err) + + // check both services were deregistered + require.Nil(t, a2.State.Service(srv.CompoundServiceID())) + require.Nil(t, a2.State.Service(connectSrv.CompoundServiceID())) +} + func TestAgent_loadChecks_token(t *testing.T) { t.Parallel() a := NewTestAgent(t, ` @@ -4693,3 +4769,68 @@ func TestSharedRPCRouter(t *testing.T) { require.NotNil(t, mgr) require.NotNil(t, server) } + +func TestAgent_ListenHTTP_MultipleAddresses(t *testing.T) { + ports, err := freeport.Take(2) + require.NoError(t, err) + t.Cleanup(func() { freeport.Return(ports) }) + + caConfig := tlsutil.Config{} + tlsConf, err := tlsutil.NewConfigurator(caConfig, hclog.New(nil)) + require.NoError(t, err) + bd := BaseDeps{ + Deps: consul.Deps{ + Logger: hclog.NewInterceptLogger(nil), + Tokens: new(token.Store), + TLSConfigurator: tlsConf, + }, + RuntimeConfig: &config.RuntimeConfig{ + HTTPAddrs: []net.Addr{ + &net.TCPAddr{IP: net.ParseIP("127.0.0.1"), Port: ports[0]}, + &net.TCPAddr{IP: net.ParseIP("127.0.0.1"), Port: ports[1]}, + }, + }, + Cache: cache.New(cache.Options{}), + } + agent, err := New(bd) + require.NoError(t, err) + + srvs, err := agent.listenHTTP() + require.NoError(t, err) + defer func() { + ctx := context.Background() + for _, srv := range srvs { + srv.Shutdown(ctx) + } + }() + + ctx, cancel := context.WithTimeout(context.Background(), 2*time.Second) + t.Cleanup(cancel) + + g := new(errgroup.Group) + for _, s := range srvs { + g.Go(s.Run) + } + + require.Len(t, srvs, 2) + require.Len(t, uniqueAddrs(srvs), 2) + + client := &http.Client{} + for _, s := range srvs { + u := url.URL{Scheme: s.Protocol, Host: s.Addr.String()} + req, err := http.NewRequest(http.MethodGet, u.String(), nil) + require.NoError(t, err) + + resp, err := client.Do(req.WithContext(ctx)) + require.NoError(t, err) + require.Equal(t, 200, resp.StatusCode) + } +} + +func uniqueAddrs(srvs []apiServer) map[string]struct{} { + result := make(map[string]struct{}, len(srvs)) + for _, s := range srvs { + result[s.Addr.String()] = struct{}{} + } + return result +} diff --git a/agent/apiserver.go b/agent/apiserver.go index a187d226b..044bf6041 100644 --- a/agent/apiserver.go +++ b/agent/apiserver.go @@ -2,7 +2,9 @@ package agent import ( "context" + "fmt" "net" + "net/http" "sync" "time" @@ -37,8 +39,6 @@ type apiServer struct { Run func() error // Shutdown function used to stop the server Shutdown func(context.Context) error - - MaxHeaderBytes int } // NewAPIServers returns an empty apiServers that is ready to Start servers. @@ -94,3 +94,18 @@ func (s *apiServers) Shutdown(ctx context.Context) { func (s *apiServers) WaitForShutdown() error { return s.group.Wait() } + +func newAPIServerHTTP(proto string, l net.Listener, httpServer *http.Server) apiServer { + return apiServer{ + Protocol: proto, + Addr: l.Addr(), + Shutdown: httpServer.Shutdown, + Run: func() error { + err := httpServer.Serve(l) + if err == nil || err == http.ErrServerClosed { + return nil + } + return fmt.Errorf("%s server %s failed: %w", proto, l.Addr(), err) + }, + } +} diff --git a/agent/auto-config/auto_config_test.go b/agent/auto-config/auto_config_test.go index b8ab0caf4..dc413ed4d 100644 --- a/agent/auto-config/auto_config_test.go +++ b/agent/auto-config/auto_config_test.go @@ -634,6 +634,7 @@ type testAutoConfig struct { ac *AutoConfig tokenUpdates chan struct{} originalToken string + stop func() initialRoots *structs.IndexedCARoots initialCert *structs.IssuedCert @@ -835,6 +836,7 @@ func startedAutoConfig(t *testing.T, autoEncrypt bool) testAutoConfig { initialRoots: indexedRoots, initialCert: cert, extraCerts: extraCerts, + stop: cancel, } } @@ -1098,16 +1100,15 @@ func TestFallback(t *testing.T) { // now wait for the fallback routine to be invoked require.True(t, waitForChans(100*time.Millisecond, fallbackCtx.Done()), "fallback routines did not get invoked within the alotted time") - // persisting these to disk happens after the RPC we waited on above will have fired - // There is no deterministic way to know once its been written so we wrap this in a retry. - testretry.Run(t, func(r *testretry.R) { - resp, err := testAC.ac.readPersistedAutoConfig() - require.NoError(r, err) + testAC.stop() + <-testAC.ac.done - // ensure the roots got persisted to disk - require.Equal(r, thirdCert.CertPEM, resp.Certificate.GetCertPEM()) - require.Equal(r, secondRoots.ActiveRootID, resp.CARoots.GetActiveRootID()) - }) + resp, err := testAC.ac.readPersistedAutoConfig() + require.NoError(t, err) + + // ensure the roots got persisted to disk + require.Equal(t, thirdCert.CertPEM, resp.Certificate.GetCertPEM()) + require.Equal(t, secondRoots.ActiveRootID, resp.CARoots.GetActiveRootID()) } func TestIntroToken(t *testing.T) { diff --git a/agent/cache-types/streaming_events_test.go b/agent/cache-types/streaming_events_test.go index 05bc3649f..272372754 100644 --- a/agent/cache-types/streaming_events_test.go +++ b/agent/cache-types/streaming_events_test.go @@ -9,17 +9,15 @@ import ( "github.com/hashicorp/consul/types" ) -func newEndOfSnapshotEvent(topic pbsubscribe.Topic, index uint64) *pbsubscribe.Event { +func newEndOfSnapshotEvent(index uint64) *pbsubscribe.Event { return &pbsubscribe.Event{ - Topic: topic, Index: index, Payload: &pbsubscribe.Event_EndOfSnapshot{EndOfSnapshot: true}, } } -func newNewSnapshotToFollowEvent(topic pbsubscribe.Topic) *pbsubscribe.Event { +func newNewSnapshotToFollowEvent() *pbsubscribe.Event { return &pbsubscribe.Event{ - Topic: topic, Payload: &pbsubscribe.Event_NewSnapshotToFollow{NewSnapshotToFollow: true}, } } @@ -37,8 +35,6 @@ func newEventServiceHealthRegister(index uint64, nodeNum int, svc string) *pbsub addr := fmt.Sprintf("10.10.%d.%d", nodeNum/256, nodeNum%256) return &pbsubscribe.Event{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: svc, Index: index, Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -117,8 +113,6 @@ func newEventServiceHealthDeregister(index uint64, nodeNum int, svc string) *pbs node := fmt.Sprintf("node%d", nodeNum) return &pbsubscribe.Event{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: svc, Index: index, Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -164,7 +158,6 @@ func newEventBatchWithEvents(first *pbsubscribe.Event, evs ...*pbsubscribe.Event events[i+1] = evs[i] } return &pbsubscribe.Event{ - Topic: first.Topic, Index: first.Index, Payload: &pbsubscribe.Event_EventBatch{ EventBatch: &pbsubscribe.EventBatch{Events: events}, diff --git a/agent/cache-types/streaming_health_services.go b/agent/cache-types/streaming_health_services.go index 139fc614f..ac1e6e528 100644 --- a/agent/cache-types/streaming_health_services.go +++ b/agent/cache-types/streaming_health_services.go @@ -3,6 +3,7 @@ package cachetype import ( "context" "fmt" + "reflect" "time" "github.com/hashicorp/go-bexpr" @@ -72,7 +73,7 @@ func (c *StreamingHealthServices) Fetch(opts cache.FetchOptions, req cache.Reque Token: srvReq.Token, Datacenter: srvReq.Datacenter, Index: index, - // TODO(streaming): set Namespace from srvReq.EnterpriseMeta.Namespace + Namespace: srvReq.EnterpriseMeta.GetNamespace(), } if srvReq.Connect { req.Topic = pbsubscribe.Topic_ServiceHealthConnect @@ -138,15 +139,14 @@ func (s *streamingHealthState) Fetch(opts cache.FetchOptions) (cache.FetchResult } func newHealthView(filterExpr string) (*healthView, error) { - s := &healthView{state: make(map[string]structs.CheckServiceNode)} - - // We apply filtering to the raw CheckServiceNodes before we are done mutating - // state in Update to save from storing stuff in memory we'll only filter - // later. Because the state is just a map of those types, we can simply run - // that map through filter and it will remove any entries that don't match. - var err error - s.filter, err = bexpr.CreateFilter(filterExpr, nil, s.state) - return s, err + fe, err := newFilterEvaluator(filterExpr) + if err != nil { + return nil, err + } + return &healthView{ + state: make(map[string]structs.CheckServiceNode), + filter: fe, + }, nil } // healthView implements submatview.View for storing the view state @@ -156,7 +156,7 @@ func newHealthView(filterExpr string) (*healthView, error) { // involves re-sorting each time etc. though. type healthView struct { state map[string]structs.CheckServiceNode - filter *bexpr.Filter + filter filterEvaluator } // Update implements View @@ -171,24 +171,41 @@ func (s *healthView) Update(events []*pbsubscribe.Event) error { id := serviceHealth.CheckServiceNode.UniqueID() switch serviceHealth.Op { case pbsubscribe.CatalogOp_Register: - csn := pbservice.CheckServiceNodeToStructs(serviceHealth.CheckServiceNode) - s.state[id] = *csn + csn := *pbservice.CheckServiceNodeToStructs(serviceHealth.CheckServiceNode) + passed, err := s.filter.Evaluate(csn) + switch { + case err != nil: + return err + case passed: + s.state[id] = csn + } + case pbsubscribe.CatalogOp_Deregister: delete(s.state, id) } } - // TODO(streaming): should this filter be applied to only the new CheckServiceNode - // instead of the full map, which should already be filtered. - if s.filter != nil { - filtered, err := s.filter.Execute(s.state) - if err != nil { - return err - } - s.state = filtered.(map[string]structs.CheckServiceNode) - } return nil } +type filterEvaluator interface { + Evaluate(datum interface{}) (bool, error) +} + +func newFilterEvaluator(expr string) (filterEvaluator, error) { + if expr == "" { + return noopFilterEvaluator{}, nil + } + return bexpr.CreateEvaluatorForType(expr, nil, reflect.TypeOf(structs.CheckServiceNode{})) +} + +// noopFilterEvaluator may be used in place of a bexpr.Evaluator. The Evaluate +// method always return true, so no items will be filtered out. +type noopFilterEvaluator struct{} + +func (noopFilterEvaluator) Evaluate(_ interface{}) (bool, error) { + return true, nil +} + // Result returns the structs.IndexedCheckServiceNodes stored by this view. func (s *healthView) Result(index uint64) (interface{}, error) { result := structs.IndexedCheckServiceNodes{ diff --git a/agent/cache-types/streaming_health_services_test.go b/agent/cache-types/streaming_health_services_test.go index 3e794611b..768962aa8 100644 --- a/agent/cache-types/streaming_health_services_test.go +++ b/agent/cache-types/streaming_health_services_test.go @@ -14,11 +14,13 @@ import ( "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/proto/pbcommon" "github.com/hashicorp/consul/proto/pbsubscribe" ) func TestStreamingHealthServices_EmptySnapshot(t *testing.T) { - client := NewTestStreamingClient() + namespace := pbcommon.DefaultEnterpriseMeta.Namespace + client := NewTestStreamingClient(namespace) typ := StreamingHealthServices{deps: MaterializerDeps{ Client: client, Logger: hclog.Default(), @@ -26,15 +28,16 @@ func TestStreamingHealthServices_EmptySnapshot(t *testing.T) { // Initially there are no services registered. Server should send an // EndOfSnapshot message immediately with index of 1. - client.QueueEvents(newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 1)) + client.QueueEvents(newEndOfSnapshotEvent(1)) opts := cache.FetchOptions{ MinIndex: 0, Timeout: time.Second, } req := &structs.ServiceSpecificRequest{ - Datacenter: "dc1", - ServiceName: "web", + Datacenter: "dc1", + ServiceName: "web", + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), } empty := &structs.IndexedCheckServiceNodes{ Nodes: structs.CheckServiceNodes{}, @@ -215,8 +218,17 @@ func requireResultsSame(t *testing.T, want, got *structs.IndexedCheckServiceNode require.ElementsMatch(t, wantIDs, gotIDs) } +// getNamespace returns a namespace if namespace support exists, otherwise +// returns the empty string. It allows the same tests to work in both oss and ent +// without duplicating the tests. +func getNamespace(ns string) string { + meta := structs.EnterpriseMetaInitializer(ns) + return meta.GetNamespace() +} + func TestStreamingHealthServices_FullSnapshot(t *testing.T) { - client := NewTestStreamingClient() + namespace := getNamespace("ns2") + client := NewTestStreamingClient(namespace) typ := StreamingHealthServices{deps: MaterializerDeps{ Client: client, Logger: hclog.Default(), @@ -230,7 +242,7 @@ func TestStreamingHealthServices_FullSnapshot(t *testing.T) { registerServiceWeb(5, 1), registerServiceWeb(5, 2), registerServiceWeb(5, 3), - newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 5)) + newEndOfSnapshotEvent(5)) // This contains the view state so important we share it between calls. opts := cache.FetchOptions{ @@ -238,8 +250,9 @@ func TestStreamingHealthServices_FullSnapshot(t *testing.T) { Timeout: 1 * time.Second, } req := &structs.ServiceSpecificRequest{ - Datacenter: "dc1", - ServiceName: "web", + Datacenter: "dc1", + ServiceName: "web", + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), } gatherNodes := func(res interface{}) []string { @@ -301,7 +314,7 @@ func TestStreamingHealthServices_FullSnapshot(t *testing.T) { registerServiceWeb(50, 3), // overlap existing node registerServiceWeb(50, 4), registerServiceWeb(50, 5), - newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 50)) + newEndOfSnapshotEvent(50)) // Make another blocking query with THE SAME index. It should immediately // return the new snapshot. @@ -324,11 +337,11 @@ func TestStreamingHealthServices_FullSnapshot(t *testing.T) { client.QueueErr(tempError("temporary connection error")) client.QueueEvents( - newNewSnapshotToFollowEvent(pbsubscribe.Topic_ServiceHealth), + newNewSnapshotToFollowEvent(), registerServiceWeb(50, 3), // overlap existing node registerServiceWeb(50, 4), registerServiceWeb(50, 5), - newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 50)) + newEndOfSnapshotEvent(50)) start := time.Now() opts.MinIndex = 49 @@ -345,7 +358,8 @@ func TestStreamingHealthServices_FullSnapshot(t *testing.T) { } func TestStreamingHealthServices_EventBatches(t *testing.T) { - client := NewTestStreamingClient() + namespace := getNamespace("ns3") + client := NewTestStreamingClient(namespace) typ := StreamingHealthServices{deps: MaterializerDeps{ Client: client, Logger: hclog.Default(), @@ -358,7 +372,7 @@ func TestStreamingHealthServices_EventBatches(t *testing.T) { newEventServiceHealthRegister(5, 3, "web")) client.QueueEvents( batchEv, - newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 5)) + newEndOfSnapshotEvent(5)) // This contains the view state so important we share it between calls. opts := cache.FetchOptions{ @@ -366,8 +380,9 @@ func TestStreamingHealthServices_EventBatches(t *testing.T) { Timeout: 1 * time.Second, } req := &structs.ServiceSpecificRequest{ - Datacenter: "dc1", - ServiceName: "web", + Datacenter: "dc1", + ServiceName: "web", + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), } gatherNodes := func(res interface{}) []string { @@ -415,7 +430,8 @@ func TestStreamingHealthServices_EventBatches(t *testing.T) { } func TestStreamingHealthServices_Filtering(t *testing.T) { - client := NewTestStreamingClient() + namespace := getNamespace("ns3") + client := NewTestStreamingClient(namespace) typ := StreamingHealthServices{deps: MaterializerDeps{ Client: client, Logger: hclog.Default(), @@ -428,7 +444,7 @@ func TestStreamingHealthServices_Filtering(t *testing.T) { newEventServiceHealthRegister(5, 3, "web")) client.QueueEvents( batchEv, - newEndOfSnapshotEvent(pbsubscribe.Topic_ServiceHealth, 5)) + newEndOfSnapshotEvent(5)) // This contains the view state so important we share it between calls. opts := cache.FetchOptions{ @@ -436,8 +452,9 @@ func TestStreamingHealthServices_Filtering(t *testing.T) { Timeout: 1 * time.Second, } req := &structs.ServiceSpecificRequest{ - Datacenter: "dc1", - ServiceName: "web", + Datacenter: "dc1", + ServiceName: "web", + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), QueryOptions: structs.QueryOptions{ Filter: `Node.Node == "node2"`, }, diff --git a/agent/cache-types/streaming_test.go b/agent/cache-types/streaming_test.go index 09721817a..b12809c3c 100644 --- a/agent/cache-types/streaming_test.go +++ b/agent/cache-types/streaming_test.go @@ -2,6 +2,7 @@ package cachetype import ( "context" + "fmt" "google.golang.org/grpc" @@ -12,8 +13,9 @@ import ( // for queueing up custom events to a subscriber. type TestStreamingClient struct { pbsubscribe.StateChangeSubscription_SubscribeClient - events chan eventOrErr - ctx context.Context + events chan eventOrErr + ctx context.Context + expectedNamespace string } type eventOrErr struct { @@ -21,17 +23,22 @@ type eventOrErr struct { Event *pbsubscribe.Event } -func NewTestStreamingClient() *TestStreamingClient { +func NewTestStreamingClient(ns string) *TestStreamingClient { return &TestStreamingClient{ - events: make(chan eventOrErr, 32), + events: make(chan eventOrErr, 32), + expectedNamespace: ns, } } func (t *TestStreamingClient) Subscribe( ctx context.Context, - _ *pbsubscribe.SubscribeRequest, + req *pbsubscribe.SubscribeRequest, _ ...grpc.CallOption, ) (pbsubscribe.StateChangeSubscription_SubscribeClient, error) { + if req.Namespace != t.expectedNamespace { + return nil, fmt.Errorf("wrong SubscribeRequest.Namespace %v, expected %v", + req.Namespace, t.expectedNamespace) + } t.ctx = ctx return t, nil } diff --git a/agent/cache/cache.go b/agent/cache/cache.go index 0852393af..62dc8619b 100644 --- a/agent/cache/cache.go +++ b/agent/cache/cache.go @@ -15,7 +15,6 @@ package cache import ( - "container/heap" "context" "fmt" "io" @@ -25,13 +24,43 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "golang.org/x/time/rate" "github.com/hashicorp/consul/lib" + "github.com/hashicorp/consul/lib/ttlcache" ) //go:generate mockery -all -inpkg +// TODO(kit): remove the namespace from these once the metrics themselves change +var Gauges = []prometheus.GaugeDefinition{ + { + Name: []string{"consul", "cache", "entries_count"}, + Help: "", + }, +} + +// TODO(kit): remove the namespace from these once the metrics themselves change +var Counters = []prometheus.CounterDefinition{ + { + Name: []string{"consul", "cache", "bypass"}, + Help: "", + }, + { + Name: []string{"consul", "cache", "fetch_success"}, + Help: "", + }, + { + Name: []string{"consul", "cache", "fetch_error"}, + Help: "", + }, + { + Name: []string{"consul", "cache", "evict_expired"}, + Help: "", + }, +} + // Constants related to refresh backoff. We probably don't ever need to // make these configurable knobs since they primarily exist to lower load. const ( @@ -88,7 +117,7 @@ type Cache struct { // internal storage format so changing this should be possible safely. entriesLock sync.RWMutex entries map[string]cacheEntry - entriesExpiryHeap *expiryHeap + entriesExpiryHeap *ttlcache.ExpiryHeap // stopped is used as an atomic flag to signal that the Cache has been // discarded so background fetches and expiry processing should stop. @@ -166,16 +195,11 @@ func applyDefaultValuesOnOptions(options Options) Options { // Further settings can be tweaked on the returned value. func New(options Options) *Cache { options = applyDefaultValuesOnOptions(options) - // Initialize the heap. The buffer of 1 is really important because - // its possible for the expiry loop to trigger the heap to update - // itself and it'd block forever otherwise. - h := &expiryHeap{NotifyCh: make(chan struct{}, 1)} - heap.Init(h) ctx, cancel := context.WithCancel(context.Background()) c := &Cache{ types: make(map[string]typeEntry), entries: make(map[string]cacheEntry), - entriesExpiryHeap: h, + entriesExpiryHeap: ttlcache.NewExpiryHeap(), stopCh: make(chan struct{}), options: options, rateLimitContext: ctx, @@ -406,8 +430,7 @@ RETRY_GET: // Touch the expiration and fix the heap. c.entriesLock.Lock() - entry.Expiry.Update(r.TypeEntry.Opts.LastGetTTL) - c.entriesExpiryHeap.Fix(entry.Expiry) + c.entriesExpiryHeap.Update(entry.Expiry.Index(), r.TypeEntry.Opts.LastGetTTL) c.entriesLock.Unlock() // We purposely do not return an error here since the cache only works with @@ -635,6 +658,7 @@ func (c *Cache) fetch(key string, r getOptions, allowNew bool, attempt uint, ign // Error handling if err == nil { labels := []metrics.Label{{Name: "result_not_modified", Value: strconv.FormatBool(result.NotModified)}} + // TODO(kit): move tEntry.Name to a label on the first write here and deprecate the second write metrics.IncrCounterWithLabels([]string{"consul", "cache", "fetch_success"}, 1, labels) metrics.IncrCounterWithLabels([]string{"consul", "cache", tEntry.Name, "fetch_success"}, 1, labels) @@ -664,6 +688,7 @@ func (c *Cache) fetch(key string, r getOptions, allowNew bool, attempt uint, ign newEntry.RefreshLostContact = time.Time{} } } else { + // TODO(kit): Add tEntry.Name to label on fetch_error and deprecate second write metrics.IncrCounter([]string{"consul", "cache", "fetch_error"}, 1) metrics.IncrCounter([]string{"consul", "cache", tEntry.Name, "fetch_error"}, 1) @@ -688,10 +713,8 @@ func (c *Cache) fetch(key string, r getOptions, allowNew bool, attempt uint, ign // If this is a new entry (not in the heap yet), then setup the // initial expiry information and insert. If we're already in // the heap we do nothing since we're reusing the same entry. - if newEntry.Expiry == nil || newEntry.Expiry.HeapIndex == -1 { - newEntry.Expiry = &cacheEntryExpiry{Key: key} - newEntry.Expiry.Update(tEntry.Opts.LastGetTTL) - heap.Push(c.entriesExpiryHeap, newEntry.Expiry) + if newEntry.Expiry == nil || newEntry.Expiry.Index() == ttlcache.NotIndexed { + newEntry.Expiry = c.entriesExpiryHeap.Add(key, tEntry.Opts.LastGetTTL) } c.entries[key] = newEntry @@ -748,47 +771,30 @@ func backOffWait(failures uint) time.Duration { // runExpiryLoop is a blocking function that watches the expiration // heap and invalidates entries that have expired. func (c *Cache) runExpiryLoop() { - var expiryTimer *time.Timer for { - // If we have a previous timer, stop it. - if expiryTimer != nil { - expiryTimer.Stop() - } - - // Get the entry expiring soonest - var entry *cacheEntryExpiry - var expiryCh <-chan time.Time c.entriesLock.RLock() - if len(c.entriesExpiryHeap.Entries) > 0 { - entry = c.entriesExpiryHeap.Entries[0] - expiryTimer = time.NewTimer(time.Until(entry.Expires)) - expiryCh = expiryTimer.C - } + timer := c.entriesExpiryHeap.Next() c.entriesLock.RUnlock() select { case <-c.stopCh: + timer.Stop() return case <-c.entriesExpiryHeap.NotifyCh: - // Entries changed, so the heap may have changed. Restart loop. + timer.Stop() + continue - case <-expiryCh: + case <-timer.Wait(): c.entriesLock.Lock() - // Perform cleanup operations on the entry's state, if applicable. - state := c.entries[entry.Key].State - if closer, ok := state.(io.Closer); ok { + entry := timer.Entry + if closer, ok := c.entries[entry.Key()].State.(io.Closer); ok { closer.Close() } // Entry expired! Remove it. - delete(c.entries, entry.Key) - heap.Remove(c.entriesExpiryHeap, entry.HeapIndex) - - // This is subtle but important: if we race and simultaneously - // evict and fetch a new value, then we set this to -1 to - // have it treated as a new value so that the TTL is extended. - entry.HeapIndex = -1 + delete(c.entries, entry.Key()) + c.entriesExpiryHeap.Remove(entry.Index()) // Set some metrics metrics.IncrCounter([]string{"consul", "cache", "evict_expired"}, 1) @@ -829,7 +835,6 @@ func (c *Cache) Prepopulate(t string, res FetchResult, dc, token, k string) erro Index: res.Index, FetchedAt: time.Now(), Waiter: make(chan struct{}), - Expiry: &cacheEntryExpiry{Key: key}, FetchRateLimiter: rate.NewLimiter( c.options.EntryFetchRate, c.options.EntryFetchMaxBurst, diff --git a/agent/cache/cache_test.go b/agent/cache/cache_test.go index 8832572c3..8b77773f9 100644 --- a/agent/cache/cache_test.go +++ b/agent/cache/cache_test.go @@ -15,6 +15,7 @@ import ( "github.com/stretchr/testify/require" "golang.org/x/time/rate" + "github.com/hashicorp/consul/lib/ttlcache" "github.com/hashicorp/consul/sdk/testutil" ) @@ -1000,6 +1001,9 @@ func (t *testPartitionType) RegisterOptions() RegisterOptions { // Test that background refreshing reports correct Age in failure and happy // states. func TestCacheGet_refreshAge(t *testing.T) { + if testing.Short() { + t.Skip("too slow for -short run") + } t.Parallel() require := require.New(t) @@ -1402,3 +1406,73 @@ OUT: } } } + +func TestCache_ExpiryLoop_ExitsWhenStopped(t *testing.T) { + c := &Cache{ + stopCh: make(chan struct{}), + entries: make(map[string]cacheEntry), + entriesExpiryHeap: ttlcache.NewExpiryHeap(), + } + chStart := make(chan struct{}) + chDone := make(chan struct{}) + go func() { + close(chStart) + c.runExpiryLoop() + close(chDone) + }() + + <-chStart + close(c.stopCh) + + select { + case <-chDone: + case <-time.After(50 * time.Millisecond): + t.Fatalf("expected loop to exit when stopped") + } +} + +func TestCache_Prepopulate(t *testing.T) { + typ := &fakeType{index: 5} + c := New(Options{}) + c.RegisterType("t", typ) + + c.Prepopulate("t", FetchResult{Value: 17, Index: 1}, "dc1", "token", "v1") + + ctx := context.Background() + req := fakeRequest{ + info: RequestInfo{ + Key: "v1", + Token: "token", + Datacenter: "dc1", + MinIndex: 1, + }, + } + result, _, err := c.Get(ctx, "t", req) + require.NoError(t, err) + require.Equal(t, 17, result) +} + +type fakeType struct { + index uint64 +} + +func (f fakeType) Fetch(_ FetchOptions, _ Request) (FetchResult, error) { + idx := atomic.LoadUint64(&f.index) + return FetchResult{Value: int(idx * 2), Index: idx}, nil +} + +func (f fakeType) RegisterOptions() RegisterOptions { + return RegisterOptions{Refresh: true} +} + +var _ Type = (*fakeType)(nil) + +type fakeRequest struct { + info RequestInfo +} + +func (f fakeRequest) CacheInfo() RequestInfo { + return f.info +} + +var _ Request = (*fakeRequest)(nil) diff --git a/agent/cache/entry.go b/agent/cache/entry.go index 440c654ba..0c71e9443 100644 --- a/agent/cache/entry.go +++ b/agent/cache/entry.go @@ -1,10 +1,11 @@ package cache import ( - "container/heap" "time" "golang.org/x/time/rate" + + "github.com/hashicorp/consul/lib/ttlcache" ) // cacheEntry stores a single cache entry. @@ -31,8 +32,8 @@ type cacheEntry struct { // Expiry contains information about the expiration of this // entry. This is a pointer as its shared as a value in the - // expiryHeap as well. - Expiry *cacheEntryExpiry + // ExpiryHeap as well. + Expiry *ttlcache.Entry // FetchedAt stores the time the cache entry was retrieved for determining // it's age later. @@ -46,118 +47,3 @@ type cacheEntry struct { // FetchRateLimiter limits the rate at which fetch is called for this entry. FetchRateLimiter *rate.Limiter } - -// cacheEntryExpiry contains the expiration information for a cache -// entry. Any modifications to this struct should be done only while -// the Cache entriesLock is held. -type cacheEntryExpiry struct { - Key string // Key in the cache map - Expires time.Time // Time when entry expires (monotonic clock) - HeapIndex int // Index in the heap -} - -// Update the expiry to d time from now. -func (e *cacheEntryExpiry) Update(d time.Duration) { - e.Expires = time.Now().Add(d) -} - -// expiryHeap is a heap implementation that stores information about -// when entries expire. Implements container/heap.Interface. -// -// All operations on the heap and read/write of the heap contents require -// the proper entriesLock to be held on Cache. -type expiryHeap struct { - Entries []*cacheEntryExpiry - - // NotifyCh is sent a value whenever the 0 index value of the heap - // changes. This can be used to detect when the earliest value - // changes. - // - // There is a single edge case where the heap will not automatically - // send a notification: if heap.Fix is called manually and the index - // changed is 0 and the change doesn't result in any moves (stays at index - // 0), then we won't detect the change. To work around this, please - // always call the expiryHeap.Fix method instead. - NotifyCh chan struct{} -} - -// Identical to heap.Fix for this heap instance but will properly handle -// the edge case where idx == 0 and no heap modification is necessary, -// and still notify the NotifyCh. -// -// This is important for cache expiry since the expiry time may have been -// extended and if we don't send a message to the NotifyCh then we'll never -// reset the timer and the entry will be evicted early. -func (h *expiryHeap) Fix(entry *cacheEntryExpiry) { - idx := entry.HeapIndex - heap.Fix(h, idx) - - // This is the edge case we handle: if the prev (idx) and current (HeapIndex) - // is zero, it means the head-of-line didn't change while the value - // changed. Notify to reset our expiry worker. - if idx == 0 && entry.HeapIndex == 0 { - h.notify() - } -} - -func (h *expiryHeap) Len() int { return len(h.Entries) } - -func (h *expiryHeap) Swap(i, j int) { - h.Entries[i], h.Entries[j] = h.Entries[j], h.Entries[i] - h.Entries[i].HeapIndex = i - h.Entries[j].HeapIndex = j - - // If we're moving the 0 index, update the channel since we need - // to re-update the timer we're waiting on for the soonest expiring - // value. - if i == 0 || j == 0 { - h.notify() - } -} - -func (h *expiryHeap) Less(i, j int) bool { - // The usage of Before here is important (despite being obvious): - // this function uses the monotonic time that should be available - // on the time.Time value so the heap is immune to wall clock changes. - return h.Entries[i].Expires.Before(h.Entries[j].Expires) -} - -// heap.Interface, this isn't expected to be called directly. -func (h *expiryHeap) Push(x interface{}) { - entry := x.(*cacheEntryExpiry) - - // Set initial heap index, if we're going to the end then Swap - // won't be called so we need to initialize - entry.HeapIndex = len(h.Entries) - - // For the first entry, we need to trigger a channel send because - // Swap won't be called; nothing to swap! We can call it right away - // because all heap operations are within a lock. - if len(h.Entries) == 0 { - h.notify() - } - - h.Entries = append(h.Entries, entry) -} - -// heap.Interface, this isn't expected to be called directly. -func (h *expiryHeap) Pop() interface{} { - old := h.Entries - n := len(old) - x := old[n-1] - h.Entries = old[0 : n-1] - return x -} - -func (h *expiryHeap) notify() { - select { - case h.NotifyCh <- struct{}{}: - // Good - - default: - // If the send would've blocked, we just ignore it. The reason this - // is safe is because NotifyCh should always be a buffered channel. - // If this blocks, it means that there is a pending message anyways - // so the receiver will restart regardless. - } -} diff --git a/agent/cache/entry_test.go b/agent/cache/entry_test.go deleted file mode 100644 index fe4073363..000000000 --- a/agent/cache/entry_test.go +++ /dev/null @@ -1,91 +0,0 @@ -package cache - -import ( - "container/heap" - "testing" - "time" - - "github.com/stretchr/testify/require" -) - -func TestExpiryHeap_impl(t *testing.T) { - var _ heap.Interface = new(expiryHeap) -} - -func TestExpiryHeap(t *testing.T) { - require := require.New(t) - now := time.Now() - ch := make(chan struct{}, 10) // buffered to prevent blocking in tests - h := &expiryHeap{NotifyCh: ch} - - // Init, shouldn't trigger anything - heap.Init(h) - testNoMessage(t, ch) - - // Push an initial value, expect one message - entry := &cacheEntryExpiry{Key: "foo", HeapIndex: -1, Expires: now.Add(100)} - heap.Push(h, entry) - require.Equal(0, entry.HeapIndex) - testMessage(t, ch) - testNoMessage(t, ch) // exactly one asserted above - - // Push another that goes earlier than entry - entry2 := &cacheEntryExpiry{Key: "bar", HeapIndex: -1, Expires: now.Add(50)} - heap.Push(h, entry2) - require.Equal(0, entry2.HeapIndex) - require.Equal(1, entry.HeapIndex) - testMessage(t, ch) - testNoMessage(t, ch) // exactly one asserted above - - // Push another that goes at the end - entry3 := &cacheEntryExpiry{Key: "bar", HeapIndex: -1, Expires: now.Add(1000)} - heap.Push(h, entry3) - require.Equal(2, entry3.HeapIndex) - testNoMessage(t, ch) // no notify cause index 0 stayed the same - - // Remove the first entry (not Pop, since we don't use Pop, but that works too) - remove := h.Entries[0] - heap.Remove(h, remove.HeapIndex) - require.Equal(0, entry.HeapIndex) - require.Equal(1, entry3.HeapIndex) - testMessage(t, ch) - testMessage(t, ch) // we have two because two swaps happen - testNoMessage(t, ch) - - // Let's change entry 3 to be early, and fix it - entry3.Expires = now.Add(10) - h.Fix(entry3) - require.Equal(1, entry.HeapIndex) - require.Equal(0, entry3.HeapIndex) - testMessage(t, ch) - testNoMessage(t, ch) - - // Let's change entry 3 again, this is an edge case where if the 0th - // element changed, we didn't trigger the channel. Our Fix func should. - entry.Expires = now.Add(20) - h.Fix(entry3) - require.Equal(1, entry.HeapIndex) // no move - require.Equal(0, entry3.HeapIndex) - testMessage(t, ch) - testNoMessage(t, ch) // one message -} - -func testNoMessage(t *testing.T, ch <-chan struct{}) { - t.Helper() - - select { - case <-ch: - t.Fatal("should not have a message") - default: - } -} - -func testMessage(t *testing.T, ch <-chan struct{}) { - t.Helper() - - select { - case <-ch: - default: - t.Fatal("should have a message") - } -} diff --git a/agent/catalog_endpoint.go b/agent/catalog_endpoint.go index 60c5fc344..188c1bfb2 100644 --- a/agent/catalog_endpoint.go +++ b/agent/catalog_endpoint.go @@ -5,11 +5,127 @@ import ( "net/http" "strings" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" cachetype "github.com/hashicorp/consul/agent/cache-types" "github.com/hashicorp/consul/agent/structs" ) +var CatalogCounters = []prometheus.CounterDefinition{ + { + Name: []string{"client", "api", "catalog_register"}, + Help: "Increments whenever a Consul agent receives a catalog register request.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_register"}, + Help: "Increments whenever a Consul agent receives an RPC error for a catalog register request.", + }, + { + Name: []string{"client", "api", "success", "catalog_register"}, + Help: "Increments whenever a Consul agent successfully responds to a catalog register request.", + }, + { + Name: []string{"client", "api", "catalog_deregister"}, + Help: "Increments whenever a Consul agent receives a catalog deregister request.", + }, + { + Name: []string{"client", "api", "catalog_datacenters"}, + Help: "Increments whenever a Consul agent receives a request to list datacenters in the catalog.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_deregister"}, + Help: "Increments whenever a Consul agent receives an RPC error for a catalog deregister request.", + }, + { + Name: []string{"client", "api", "success", "catalog_nodes"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list nodes.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_nodes"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list nodes.", + }, + { + Name: []string{"client", "api", "success", "catalog_deregister"}, + Help: "Increments whenever a Consul agent successfully responds to a catalog deregister request.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_datacenters"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list datacenters.", + }, + { + Name: []string{"client", "api", "success", "catalog_datacenters"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list datacenters.", + }, + { + Name: []string{"client", "api", "catalog_nodes"}, + Help: "Increments whenever a Consul agent receives a request to list nodes from the catalog.", + }, + { + Name: []string{"client", "api", "catalog_services"}, + Help: "Increments whenever a Consul agent receives a request to list services from the catalog.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_services"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list services.", + }, + { + Name: []string{"client", "api", "success", "catalog_services"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list services.", + }, + { + Name: []string{"client", "api", "catalog_service_nodes"}, + Help: "Increments whenever a Consul agent receives a request to list nodes offering a service.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_service_nodes"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list nodes offering a service.", + }, + { + Name: []string{"client", "api", "success", "catalog_service_nodes"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list nodes offering a service.", + }, + { + Name: []string{"client", "api", "error", "catalog_service_nodes"}, + Help: "", + }, + { + Name: []string{"client", "api", "catalog_node_services"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list nodes offering a service.", + }, + { + Name: []string{"client", "api", "success", "catalog_node_services"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list services in a node.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_node_services"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list services in a node.", + }, + { + Name: []string{"client", "api", "catalog_node_service_list"}, + Help: "", + }, + { + Name: []string{"client", "rpc", "error", "catalog_node_service_list"}, + Help: "", + }, + { + Name: []string{"client", "api", "success", "catalog_node_service_list"}, + Help: "", + }, + { + Name: []string{"client", "api", "catalog_gateway_services"}, + Help: "Increments whenever a Consul agent receives a request to list services associated with a gateway.", + }, + { + Name: []string{"client", "rpc", "error", "catalog_gateway_services"}, + Help: "Increments whenever a Consul agent receives an RPC error for a request to list services associated with a gateway.", + }, + { + Name: []string{"client", "api", "success", "catalog_gateway_services"}, + Help: "Increments whenever a Consul agent successfully responds to a request to list services associated with a gateway.", + }, +} + func (s *HTTPHandlers) CatalogRegister(resp http.ResponseWriter, req *http.Request) (interface{}, error) { metrics.IncrCounterWithLabels([]string{"client", "api", "catalog_register"}, 1, []metrics.Label{{Name: "node", Value: s.nodeName()}}) diff --git a/agent/config/builder.go b/agent/config/builder.go index b14f9d53b..78ffe6838 100644 --- a/agent/config/builder.go +++ b/agent/config/builder.go @@ -9,6 +9,7 @@ import ( "net" "net/url" "os" + "path" "path/filepath" "reflect" "regexp" @@ -16,6 +17,7 @@ import ( "strings" "time" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/go-bexpr" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-multierror" @@ -942,13 +944,15 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { DisableHostname: b.boolVal(c.Telemetry.DisableHostname), DogstatsdAddr: b.stringVal(c.Telemetry.DogstatsdAddr), DogstatsdTags: c.Telemetry.DogstatsdTags, - PrometheusRetentionTime: b.durationVal("prometheus_retention_time", c.Telemetry.PrometheusRetentionTime), FilterDefault: b.boolVal(c.Telemetry.FilterDefault), AllowedPrefixes: telemetryAllowedPrefixes, BlockedPrefixes: telemetryBlockedPrefixes, MetricsPrefix: b.stringVal(c.Telemetry.MetricsPrefix), StatsdAddr: b.stringVal(c.Telemetry.StatsdAddr), StatsiteAddr: b.stringVal(c.Telemetry.StatsiteAddr), + PrometheusOpts: prometheus.PrometheusOpts{ + Expiration: b.durationVal("prometheus_retention_time", c.Telemetry.PrometheusRetentionTime), + }, }, // Agent @@ -1031,7 +1035,7 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { NodeID: types.NodeID(b.stringVal(c.NodeID)), NodeMeta: c.NodeMeta, NodeName: b.nodeName(c.NodeName), - NonVotingServer: b.boolVal(c.NonVotingServer), + ReadReplica: b.boolVal(c.ReadReplica), PidFile: b.stringVal(c.PidFile), PrimaryDatacenter: primaryDatacenter, PrimaryGateways: b.expandAllOptionalAddrs("primary_gateways", c.PrimaryGateways), @@ -1094,7 +1098,7 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { Watches: c.Watches, } - rt.CacheUseStreamingBackend = b.boolVal(c.Cache.UseStreamingBackend) + rt.UseStreamingBackend = b.boolVal(c.UseStreamingBackend) if rt.Cache.EntryFetchMaxBurst <= 0 { return RuntimeConfig{}, fmt.Errorf("cache.entry_fetch_max_burst must be strictly positive, was: %v", rt.Cache.EntryFetchMaxBurst) @@ -1103,6 +1107,16 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { return RuntimeConfig{}, fmt.Errorf("cache.entry_fetch_rate must be strictly positive, was: %v", rt.Cache.EntryFetchRate) } + if rt.UIConfig.MetricsProvider == "prometheus" { + // Handle defaulting for the built-in version of prometheus. + if len(rt.UIConfig.MetricsProxy.PathAllowlist) == 0 { + rt.UIConfig.MetricsProxy.PathAllowlist = []string{ + "/api/v1/query", + "/api/v1/query_range", + } + } + } + if err := b.BuildEnterpriseRuntimeConfig(&rt, &c); err != nil { return rt, err } @@ -1144,6 +1158,10 @@ func (b *Builder) Validate(rt RuntimeConfig) error { // check required params we cannot recover from first // + if rt.RaftProtocol != 3 { + return fmt.Errorf("raft_protocol version %d is not supported by this version of Consul", rt.RaftProtocol) + } + if err := validateBasicName("datacenter", rt.Datacenter, false); err != nil { return err } @@ -1181,6 +1199,11 @@ func (b *Builder) Validate(rt RuntimeConfig) error { rt.UIConfig.MetricsProxy.BaseURL) } } + for _, allowedPath := range rt.UIConfig.MetricsProxy.PathAllowlist { + if err := validateAbsoluteURLPath(allowedPath); err != nil { + return fmt.Errorf("ui_config.metrics_proxy.path_allowlist: %v", err) + } + } for k, v := range rt.UIConfig.DashboardURLTemplates { if err := validateBasicName("ui_config.dashboard_url_templates key names", k, false); err != nil { return err @@ -1747,8 +1770,9 @@ func (b *Builder) uiMetricsProxyVal(v RawUIMetricsProxy) UIMetricsProxy { } return UIMetricsProxy{ - BaseURL: b.stringVal(v.BaseURL), - AddHeaders: hdrs, + BaseURL: b.stringVal(v.BaseURL), + AddHeaders: hdrs, + PathAllowlist: v.PathAllowlist, } } @@ -2326,3 +2350,24 @@ func validateRemoteScriptsChecks(conf RuntimeConfig) error { } return nil } + +func validateAbsoluteURLPath(p string) error { + if !path.IsAbs(p) { + return fmt.Errorf("path %q is not an absolute path", p) + } + + // A bit more extra validation that these are actually paths. + u, err := url.Parse(p) + if err != nil || + u.Scheme != "" || + u.Opaque != "" || + u.User != nil || + u.Host != "" || + u.RawQuery != "" || + u.Fragment != "" || + u.Path != p { + return fmt.Errorf("path %q is not an absolute path", p) + } + + return nil +} diff --git a/agent/config/builder_oss.go b/agent/config/builder_oss.go index 85cf08137..82a037994 100644 --- a/agent/config/builder_oss.go +++ b/agent/config/builder_oss.go @@ -13,6 +13,9 @@ var ( "non_voting_server": func(c *Config) { // to maintain existing compatibility we don't nullify the value }, + "read_replica": func(c *Config) { + // to maintain existing compatibility we don't nullify the value + }, "segment": func(c *Config) { // to maintain existing compatibility we don't nullify the value }, diff --git a/agent/config/builder_oss_test.go b/agent/config/builder_oss_test.go index d7a94a982..e94fec68a 100644 --- a/agent/config/builder_oss_test.go +++ b/agent/config/builder_oss_test.go @@ -24,11 +24,18 @@ func TestBuilder_validateEnterpriseConfigKeys(t *testing.T) { cases := map[string]testCase{ "non_voting_server": { config: Config{ - NonVotingServer: &boolVal, + ReadReplica: &boolVal, }, keys: []string{"non_voting_server"}, badKeys: []string{"non_voting_server"}, }, + "read_replica": { + config: Config{ + ReadReplica: &boolVal, + }, + keys: []string{"read_replica"}, + badKeys: []string{"read_replica"}, + }, "segment": { config: Config{ SegmentName: &stringVal, @@ -118,11 +125,11 @@ func TestBuilder_validateEnterpriseConfigKeys(t *testing.T) { }, "multi": { config: Config{ - NonVotingServer: &boolVal, - SegmentName: &stringVal, + ReadReplica: &boolVal, + SegmentName: &stringVal, }, - keys: []string{"non_voting_server", "segment", "acl.tokens.agent_master"}, - badKeys: []string{"non_voting_server", "segment"}, + keys: []string{"non_voting_server", "read_replica", "segment", "acl.tokens.agent_master"}, + badKeys: []string{"non_voting_server", "read_replica", "segment"}, }, } diff --git a/agent/config/config.go b/agent/config/config.go index 0a97215a3..f8850466c 100644 --- a/agent/config/config.go +++ b/agent/config/config.go @@ -103,9 +103,6 @@ type Cache struct { EntryFetchMaxBurst *int `json:"entry_fetch_max_burst,omitempty" hcl:"entry_fetch_max_burst" mapstructure:"entry_fetch_max_burst"` // EntryFetchRate represents the max calls/sec for a single cache entry EntryFetchRate *float64 `json:"entry_fetch_rate,omitempty" hcl:"entry_fetch_rate" mapstructure:"entry_fetch_rate"` - // UseStreamingBackend instead of blocking queries to populate the cache. - // Only supported by some cache types. - UseStreamingBackend *bool `json:"use_streaming_backend" hcl:"use_streaming_backend" mapstructure:"use_streaming_backend"` } // Config defines the format of a configuration file in either JSON or @@ -264,6 +261,10 @@ type Config struct { RPC RPC `mapstructure:"rpc"` + // UseStreamingBackend instead of blocking queries for service health and + // any other endpoints which support streaming. + UseStreamingBackend *bool `json:"use_streaming_backend" hcl:"use_streaming_backend" mapstructure:"use_streaming_backend"` + // This isn't used by Consul but we've documented a feature where users // can deploy their snapshot agent configs alongside their Consul configs // so we have a placeholder here so it can be parsed but this doesn't @@ -288,7 +289,7 @@ type Config struct { // Enterprise Only Audit *Audit `json:"audit,omitempty" hcl:"audit" mapstructure:"audit"` // Enterprise Only - NonVotingServer *bool `json:"non_voting_server,omitempty" hcl:"non_voting_server" mapstructure:"non_voting_server"` + ReadReplica *bool `json:"read_replica,omitempty" hcl:"read_replica" mapstructure:"read_replica" alias:"non_voting_server"` // Enterprise Only SegmentName *string `json:"segment,omitempty" hcl:"segment" mapstructure:"segment"` // Enterprise Only @@ -797,8 +798,9 @@ type RawUIConfig struct { } type RawUIMetricsProxy struct { - BaseURL *string `json:"base_url,omitempty" hcl:"base_url" mapstructure:"base_url"` - AddHeaders []RawUIMetricsProxyAddHeader `json:"add_headers,omitempty" hcl:"add_headers" mapstructure:"add_headers"` + BaseURL *string `json:"base_url,omitempty" hcl:"base_url" mapstructure:"base_url"` + AddHeaders []RawUIMetricsProxyAddHeader `json:"add_headers,omitempty" hcl:"add_headers" mapstructure:"add_headers"` + PathAllowlist []string `json:"path_allowlist,omitempty" hcl:"path_allowlist" mapstructure:"path_allowlist"` } type RawUIMetricsProxyAddHeader struct { diff --git a/agent/config/default.go b/agent/config/default.go index b905e6053..72888250d 100644 --- a/agent/config/default.go +++ b/agent/config/default.go @@ -119,6 +119,7 @@ func DefaultSource() Source { expose_min_port = 21500 expose_max_port = 21755 } + raft_protocol = 3 telemetry = { metrics_prefix = "consul" filter_default = true diff --git a/agent/config/flags.go b/agent/config/flags.go index 9bce6c18f..be57c23b3 100644 --- a/agent/config/flags.go +++ b/agent/config/flags.go @@ -90,7 +90,8 @@ func AddFlags(fs *flag.FlagSet, f *BuilderOpts) { add(&f.Config.NodeName, "node", "Name of this node. Must be unique in the cluster.") add(&f.Config.NodeID, "node-id", "A unique ID for this node across space and time. Defaults to a randomly-generated ID that persists in the data-dir.") add(&f.Config.NodeMeta, "node-meta", "An arbitrary metadata key/value pair for this node, of the format `key:value`. Can be specified multiple times.") - add(&f.Config.NonVotingServer, "non-voting-server", "(Enterprise-only) This flag is used to make the server not participate in the Raft quorum, and have it only receive the data replication stream. This can be used to add read scalability to a cluster in cases where a high volume of reads to servers are needed.") + add(&f.Config.ReadReplica, "non-voting-server", "(Enterprise-only) DEPRECATED: -read-replica should be used instead") + add(&f.Config.ReadReplica, "read-replica", "(Enterprise-only) This flag is used to make the server not participate in the Raft quorum, and have it only receive the data replication stream. This can be used to add read scalability to a cluster in cases where a high volume of reads to servers are needed.") add(&f.Config.PidFile, "pid-file", "Path to file to store agent PID.") add(&f.Config.RPCProtocol, "protocol", "Sets the protocol version. Defaults to latest.") add(&f.Config.RaftProtocol, "raft-protocol", "Sets the Raft protocol version. Defaults to latest.") diff --git a/agent/config/runtime.go b/agent/config/runtime.go index 5383ed555..4b9695740 100644 --- a/agent/config/runtime.go +++ b/agent/config/runtime.go @@ -77,8 +77,8 @@ type RuntimeConfig struct { // ACLDefaultPolicy is used to control the ACL interaction when // there is no defined policy. This can be "allow" which means - // ACLs are used to black-list, or "deny" which means ACLs are - // white-lists. + // ACLs are used to deny-list, or "deny" which means ACLs are + // allow-lists. // // hcl: acl.default_policy = ("allow"|"deny") ACLDefaultPolicy string @@ -853,12 +853,12 @@ type RuntimeConfig struct { // flag: -node-meta "key:value" -node-meta "key:value" ... NodeMeta map[string]string - // NonVotingServer is whether this server will act as a non-voting member + // ReadReplica is whether this server will act as a non-voting member // of the cluster to help provide read scalability. (Enterprise-only) // // hcl: non_voting_server = (true|false) // flag: -non-voting-server - NonVotingServer bool + ReadReplica bool // PidFile is the file to store our PID in. // @@ -945,7 +945,9 @@ type RuntimeConfig struct { RPCConfig consul.RPCConfig - CacheUseStreamingBackend bool + // UseStreamingBackend enables streaming as a replacement for agent/cache + // in the client agent for endpoints which support streaming. + UseStreamingBackend bool // RaftProtocol sets the Raft protocol version to use on this server. // Defaults to 3. @@ -1546,8 +1548,9 @@ type UIConfig struct { } type UIMetricsProxy struct { - BaseURL string - AddHeaders []UIMetricsProxyAddHeader + BaseURL string + AddHeaders []UIMetricsProxyAddHeader + PathAllowlist []string } type UIMetricsProxyAddHeader struct { @@ -1848,6 +1851,21 @@ func sanitize(name string, v reflect.Value) reflect.Value { case isArray(typ) || isSlice(typ): ma := make([]interface{}, 0, v.Len()) + + if name == "AddHeaders" { + // must be UIConfig.MetricsProxy.AddHeaders + for i := 0; i < v.Len(); i++ { + addr := v.Index(i).Addr() + hdr := addr.Interface().(*UIMetricsProxyAddHeader) + hm := map[string]interface{}{ + "Name": hdr.Name, + "Value": "hidden", + } + ma = append(ma, hm) + } + return reflect.ValueOf(ma) + } + if strings.HasPrefix(name, "SerfAllowedCIDRs") { for i := 0; i < v.Len(); i++ { addr := v.Index(i).Addr() diff --git a/agent/config/runtime_oss_test.go b/agent/config/runtime_oss_test.go index c7c21eb0a..670008ce9 100644 --- a/agent/config/runtime_oss_test.go +++ b/agent/config/runtime_oss_test.go @@ -12,12 +12,16 @@ var entTokenConfigSanitize = `"EnterpriseConfig": {},` func entFullRuntimeConfig(rt *RuntimeConfig) {} -var enterpriseNonVotingServerWarnings []string = []string{enterpriseConfigKeyError{key: "non_voting_server"}.Error()} +var enterpriseReadReplicaWarnings []string = []string{enterpriseConfigKeyError{key: "read_replica"}.Error()} var enterpriseConfigKeyWarnings []string func init() { for k := range enterpriseConfigMap { + if k == "non_voting_server" { + // this is an alias for "read_replica" so we shouldn't see it in warnings + continue + } enterpriseConfigKeyWarnings = append(enterpriseConfigKeyWarnings, enterpriseConfigKeyError{key: k}.Error()) } } diff --git a/agent/config/runtime_test.go b/agent/config/runtime_test.go index 416010839..5e95811fc 100644 --- a/agent/config/runtime_test.go +++ b/agent/config/runtime_test.go @@ -18,6 +18,7 @@ import ( "testing" "time" + "github.com/armon/go-metrics/prometheus" "github.com/stretchr/testify/require" "github.com/hashicorp/consul/agent/cache" @@ -620,10 +621,10 @@ func TestBuilder_BuildAndValidate_ConfigFlagsAndEdgecases(t *testing.T) { `-data-dir=` + dataDir, }, patch: func(rt *RuntimeConfig) { - rt.NonVotingServer = true + rt.ReadReplica = true rt.DataDir = dataDir }, - warns: enterpriseNonVotingServerWarnings, + warns: enterpriseReadReplicaWarnings, }, { desc: "-pid-file", @@ -673,14 +674,22 @@ func TestBuilder_BuildAndValidate_ConfigFlagsAndEdgecases(t *testing.T) { { desc: "-raft-protocol", args: []string{ - `-raft-protocol=1`, + `-raft-protocol=3`, `-data-dir=` + dataDir, }, patch: func(rt *RuntimeConfig) { - rt.RaftProtocol = 1 + rt.RaftProtocol = 3 rt.DataDir = dataDir }, }, + { + desc: "-raft-protocol unsupported", + args: []string{ + `-raft-protocol=2`, + `-data-dir=` + dataDir, + }, + err: "raft_protocol version 2 is not supported by this version of Consul", + }, { desc: "-recursor", args: []string{ @@ -4556,6 +4565,189 @@ func TestBuilder_BuildAndValidate_ConfigFlagsAndEdgecases(t *testing.T) { `}, err: `ui_config.metrics_proxy.base_url must be a valid http or https URL.`, }, + { + desc: "metrics_proxy.path_allowlist invalid (empty)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist invalid (relative)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["bar/baz", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["bar/baz", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "bar/baz" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist invalid (weird)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["://bar/baz", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["://bar/baz", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "://bar/baz" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist invalid (fragment)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["/bar/baz#stuff", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["/bar/baz#stuff", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "/bar/baz#stuff" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist invalid (querystring)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["/bar/baz?stu=ff", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["/bar/baz?stu=ff", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "/bar/baz?stu=ff" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist invalid (encoded slash)", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["/bar%2fbaz", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["/bar%2fbaz", "/foo"] + } + } + `}, + err: `ui_config.metrics_proxy.path_allowlist: path "/bar%2fbaz" is not an absolute path`, + }, + { + desc: "metrics_proxy.path_allowlist ok", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_proxy": { + "path_allowlist": ["/bar/baz", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_proxy { + path_allowlist = ["/bar/baz", "/foo"] + } + } + `}, + patch: func(rt *RuntimeConfig) { + rt.UIConfig.MetricsProxy.PathAllowlist = []string{"/bar/baz", "/foo"} + rt.DataDir = dataDir + }, + }, + { + desc: "metrics_proxy.path_allowlist defaulted for prometheus", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_provider": "prometheus" + } + }`}, + hcl: []string{` + ui_config { + metrics_provider = "prometheus" + } + `}, + patch: func(rt *RuntimeConfig) { + rt.UIConfig.MetricsProvider = "prometheus" + rt.UIConfig.MetricsProxy.PathAllowlist = []string{ + "/api/v1/query", + "/api/v1/query_range", + } + rt.DataDir = dataDir + }, + }, + { + desc: "metrics_proxy.path_allowlist not overridden with defaults for prometheus", + args: []string{`-data-dir=` + dataDir}, + json: []string{`{ + "ui_config": { + "metrics_provider": "prometheus", + "metrics_proxy": { + "path_allowlist": ["/bar/baz", "/foo"] + } + } + }`}, + hcl: []string{` + ui_config { + metrics_provider = "prometheus" + metrics_proxy { + path_allowlist = ["/bar/baz", "/foo"] + } + } + `}, + patch: func(rt *RuntimeConfig) { + rt.UIConfig.MetricsProvider = "prometheus" + rt.UIConfig.MetricsProxy.PathAllowlist = []string{"/bar/baz", "/foo"} + rt.DataDir = dataDir + }, + }, { desc: "metrics_proxy.base_url http(s)", args: []string{`-data-dir=` + dataDir}, @@ -4906,9 +5098,9 @@ func TestFullConfig(t *testing.T) { "bootstrap_expect": 53, "cache": { "entry_fetch_max_burst": 42, - "entry_fetch_rate": 0.334, - "use_streaming_backend": true + "entry_fetch_rate": 0.334 }, + "use_streaming_backend": true, "ca_file": "erA7T0PM", "ca_path": "mQEN1Mfp", "cert_file": "7s4QAzDk", @@ -5131,10 +5323,11 @@ func TestFullConfig(t *testing.T) { "primary_datacenter": "ejtmd43d", "primary_gateways": [ "aej8eeZo", "roh2KahS" ], "primary_gateways_interval": "18866s", - "raft_protocol": 19016, + "raft_protocol": 3, "raft_snapshot_threshold": 16384, "raft_snapshot_interval": "30s", "raft_trailing_logs": 83749, + "read_replica": true, "reconnect_timeout": "23739s", "reconnect_timeout_wan": "26694s", "recursors": [ "63.38.39.58", "92.49.18.18" ], @@ -5471,7 +5664,8 @@ func TestFullConfig(t *testing.T) { "name": "p3nynwc9", "value": "TYBgnN2F" } - ] + ], + "path_allowlist": ["/aSh3cu", "/eiK/2Th"] }, "dashboard_url_templates": { "u2eziu2n_lower_case": "http://lkjasd.otr" @@ -5593,8 +5787,8 @@ func TestFullConfig(t *testing.T) { cache = { entry_fetch_max_burst = 42 entry_fetch_rate = 0.334 - use_streaming_backend = true }, + use_streaming_backend = true ca_file = "erA7T0PM" ca_path = "mQEN1Mfp" cert_file = "7s4QAzDk" @@ -5820,10 +6014,11 @@ func TestFullConfig(t *testing.T) { primary_datacenter = "ejtmd43d" primary_gateways = [ "aej8eeZo", "roh2KahS" ] primary_gateways_interval = "18866s" - raft_protocol = 19016 + raft_protocol = 3 raft_snapshot_threshold = 16384 raft_snapshot_interval = "30s" raft_trailing_logs = 83749 + read_replica = true reconnect_timeout = "23739s" reconnect_timeout_wan = "26694s" recursors = [ "63.38.39.58", "92.49.18.18" ] @@ -6162,6 +6357,7 @@ func TestFullConfig(t *testing.T) { value = "TYBgnN2F" } ] + path_allowlist = ["/aSh3cu", "/eiK/2Th"] } dashboard_url_templates { u2eziu2n_lower_case = "http://lkjasd.otr" @@ -6569,7 +6765,7 @@ func TestFullConfig(t *testing.T) { NodeID: types.NodeID("AsUIlw99"), NodeMeta: map[string]string{"5mgGQMBk": "mJLtVMSG", "A7ynFMJB": "0Nx6RGab"}, NodeName: "otlLxGaI", - NonVotingServer: true, + ReadReplica: true, PidFile: "43xN80Km", PrimaryDatacenter: "ejtmd43d", PrimaryGateways: []string{"aej8eeZo", "roh2KahS"}, @@ -6582,7 +6778,7 @@ func TestFullConfig(t *testing.T) { RPCRateLimit: 12029.43, RPCMaxBurst: 44848, RPCMaxConnsPerClient: 2954, - RaftProtocol: 19016, + RaftProtocol: 3, RaftSnapshotThreshold: 16384, RaftSnapshotInterval: 30 * time.Second, RaftTrailingLogs: 83749, @@ -6891,17 +7087,17 @@ func TestFullConfig(t *testing.T) { }, }, }, - CacheUseStreamingBackend: true, - SerfAdvertiseAddrLAN: tcpAddr("17.99.29.16:8301"), - SerfAdvertiseAddrWAN: tcpAddr("78.63.37.19:8302"), - SerfBindAddrLAN: tcpAddr("99.43.63.15:8301"), - SerfBindAddrWAN: tcpAddr("67.88.33.19:8302"), - SerfAllowedCIDRsLAN: []net.IPNet{}, - SerfAllowedCIDRsWAN: []net.IPNet{}, - SessionTTLMin: 26627 * time.Second, - SkipLeaveOnInt: true, - StartJoinAddrsLAN: []string{"LR3hGDoG", "MwVpZ4Up"}, - StartJoinAddrsWAN: []string{"EbFSc3nA", "kwXTh623"}, + UseStreamingBackend: true, + SerfAdvertiseAddrLAN: tcpAddr("17.99.29.16:8301"), + SerfAdvertiseAddrWAN: tcpAddr("78.63.37.19:8302"), + SerfBindAddrLAN: tcpAddr("99.43.63.15:8301"), + SerfBindAddrWAN: tcpAddr("67.88.33.19:8302"), + SerfAllowedCIDRsLAN: []net.IPNet{}, + SerfAllowedCIDRsWAN: []net.IPNet{}, + SessionTTLMin: 26627 * time.Second, + SkipLeaveOnInt: true, + StartJoinAddrsLAN: []string{"LR3hGDoG", "MwVpZ4Up"}, + StartJoinAddrsWAN: []string{"EbFSc3nA", "kwXTh623"}, Telemetry: lib.TelemetryConfig{ CirconusAPIApp: "p4QOTe9j", CirconusAPIToken: "E3j35V23", @@ -6924,9 +7120,11 @@ func TestFullConfig(t *testing.T) { AllowedPrefixes: []string{"oJotS8XJ"}, BlockedPrefixes: []string{"cazlEhGn"}, MetricsPrefix: "ftO6DySn", - PrometheusRetentionTime: 15 * time.Second, StatsdAddr: "drce87cy", StatsiteAddr: "HpFwKB8R", + PrometheusOpts: prometheus.PrometheusOpts{ + Expiration: 15 * time.Second, + }, }, TLSCipherSuites: []uint16{tls.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, tls.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256}, TLSMinVersion: "pAOWafkR", @@ -6956,6 +7154,7 @@ func TestFullConfig(t *testing.T) { Value: "TYBgnN2F", }, }, + PathAllowlist: []string{"/aSh3cu", "/eiK/2Th"}, }, DashboardURLTemplates: map[string]string{"u2eziu2n_lower_case": "http://lkjasd.otr"}, }, @@ -7262,6 +7461,7 @@ func TestSanitize(t *testing.T) { EntryFetchRate: 0.334, }, ConsulCoordinateUpdatePeriod: 15 * time.Second, + RaftProtocol: 3, RetryJoinLAN: []string{ "foo=bar key=baz secret=boom bang=bar", }, @@ -7298,6 +7498,13 @@ func TestSanitize(t *testing.T) { *parseCIDR(t, "127.0.0.0/8"), }, TxnMaxReqLen: 5678000000000000, + UIConfig: UIConfig{ + MetricsProxy: UIMetricsProxy{ + AddHeaders: []UIMetricsProxyAddHeader{ + {Name: "foo", Value: "secret"}, + }, + }, + }, } rtJSON := `{ @@ -7493,13 +7700,13 @@ func TestSanitize(t *testing.T) { "NodeID": "", "NodeMeta": {}, "NodeName": "", - "NonVotingServer": false, "PidFile": "", "PrimaryDatacenter": "", "PrimaryGateways": [ "pmgw_foo=bar pmgw_key=baz pmgw_secret=boom pmgw_bang=bar" ], "PrimaryGatewaysInterval": "0s", + "ReadReplica": false, "RPCAdvertiseAddr": "", "RPCBindAddr": "", "RPCHandshakeTimeout": "0s", @@ -7511,7 +7718,7 @@ func TestSanitize(t *testing.T) { "RPCConfig": { "EnableStreaming": false }, - "RaftProtocol": 0, + "RaftProtocol": 3, "RaftSnapshotInterval": "0s", "RaftSnapshotThreshold": 0, "RaftTrailingLogs": 0, @@ -7541,7 +7748,7 @@ func TestSanitize(t *testing.T) { "SerfBindAddrWAN": "", "SerfPortLAN": 0, "SerfPortWAN": 0, - "CacheUseStreamingBackend": false, + "UseStreamingBackend": false, "ServerMode": false, "ServerName": "", "ServerPort": 0, @@ -7626,9 +7833,15 @@ func TestSanitize(t *testing.T) { "DogstatsdTags": [], "FilterDefault": false, "MetricsPrefix": "", - "PrometheusRetentionTime": "0s", "StatsdAddr": "", - "StatsiteAddr": "" + "StatsiteAddr": "", + "PrometheusOpts": { + "Expiration": "0s", + "Registerer": null, + "GaugeDefinitions": [], + "CounterDefinitions": [], + "SummaryDefinitions": [] + } }, "TranslateWANAddrs": false, "TxnMaxReqLen": 5678000000000000, @@ -7640,8 +7853,14 @@ func TestSanitize(t *testing.T) { "MetricsProviderFiles": [], "MetricsProviderOptionsJSON": "", "MetricsProxy": { - "AddHeaders": [], - "BaseURL": "" + "AddHeaders": [ + { + "Name": "foo", + "Value": "hidden" + } + ], + "BaseURL": "", + "PathAllowlist": [] }, "DashboardURLTemplates": {} }, diff --git a/agent/connect/ca/provider_consul_test.go b/agent/connect/ca/provider_consul_test.go index adf627333..759769049 100644 --- a/agent/connect/ca/provider_consul_test.go +++ b/agent/connect/ca/provider_consul_test.go @@ -6,10 +6,11 @@ import ( "testing" "time" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" - "github.com/stretchr/testify/require" ) type consulCAMockDelegate struct { @@ -48,10 +49,7 @@ func (c *consulCAMockDelegate) ApplyCARequest(req *structs.CARequest) (interface } func newMockDelegate(t *testing.T, conf *structs.CAConfiguration) *consulCAMockDelegate { - s, err := state.NewStateStore(nil) - if err != nil { - t.Fatalf("err: %s", err) - } + s := state.NewStateStore(nil) if s == nil { t.Fatalf("missing state store") } diff --git a/agent/connect/ca/provider_vault.go b/agent/connect/ca/provider_vault.go index c74a2e460..ea39801a2 100644 --- a/agent/connect/ca/provider_vault.go +++ b/agent/connect/ca/provider_vault.go @@ -79,7 +79,7 @@ func (v *VaultProvider) Configure(cfg ProviderConfig) error { v.spiffeID = connect.SpiffeIDSigningForCluster(&structs.CAConfiguration{ClusterID: v.clusterID}) // Look up the token to see if we can auto-renew its lease. - secret, err := client.Auth().Token().Lookup(config.Token) + secret, err := client.Auth().Token().LookupSelf() if err != nil { return err } diff --git a/agent/consul/acl.go b/agent/consul/acl.go index 7796c3756..1ec7bc419 100644 --- a/agent/consul/acl.go +++ b/agent/consul/acl.go @@ -6,7 +6,8 @@ import ( "sync" "time" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/logging" @@ -15,6 +16,32 @@ import ( "golang.org/x/time/rate" ) +var ACLCounters = []prometheus.CounterDefinition{ + { + Name: []string{"acl", "token", "cache_hit"}, + Help: "", + }, + { + Name: []string{"acl", "token", "cache_miss"}, + Help: "", + }, +} + +var ACLSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"acl", "resolveTokenLegacy"}, + Help: "", + }, + { + Name: []string{"acl", "ResolveToken"}, + Help: "", + }, + { + Name: []string{"acl", "ResolveTokenToIdentity"}, + Help: "", + }, +} + // These must be kept in sync with the constants in command/agent/acl.go. const ( // anonymousToken is the token ID we re-write to if there is no token ID diff --git a/agent/consul/acl_endpoint.go b/agent/consul/acl_endpoint.go index ccc9e1b2a..b8ba08e0b 100644 --- a/agent/consul/acl_endpoint.go +++ b/agent/consul/acl_endpoint.go @@ -11,7 +11,8 @@ import ( "regexp" "time" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/authmethod" "github.com/hashicorp/consul/agent/consul/state" @@ -30,6 +31,73 @@ const ( aclBootstrapReset = "acl-bootstrap-reset" ) +var ACLEndpointSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"acl", "token", "clone"}, + Help: "", + }, + { + Name: []string{"acl", "token", "upsert"}, + Help: "", + }, + { + Name: []string{"acl", "token", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "policy", "upsert"}, + Help: "", + }, + { + Name: []string{"acl", "policy", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "policy", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "role", "upsert"}, + Help: "", + }, + { + Name: []string{"acl", "role", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "bindingrule", "upsert"}, + Help: "", + }, + { + Name: []string{"acl", "bindingrule", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "authmethod", "upsert"}, + Help: "", + }, + { + Name: []string{"acl", "authmethod", "delete"}, + Help: "", + }, + { + Name: []string{"acl", "login"}, + Help: "", + }, + { + Name: []string{"acl", "login"}, + Help: "", + }, + { + Name: []string{"acl", "logout"}, + Help: "", + }, + { + Name: []string{"acl", "logout"}, + Help: "", + }, +} + // Regex for matching var ( validPolicyName = regexp.MustCompile(`^[A-Za-z0-9\-_]{1,128}$`) diff --git a/agent/consul/acl_endpoint_legacy.go b/agent/consul/acl_endpoint_legacy.go index 22838aca0..9cdfba668 100644 --- a/agent/consul/acl_endpoint_legacy.go +++ b/agent/consul/acl_endpoint_legacy.go @@ -5,6 +5,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" @@ -12,6 +13,13 @@ import ( "github.com/hashicorp/go-memdb" ) +var ACLEndpointLegacySummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"acl", "apply"}, + Help: "Measures the time it takes to complete an update to the ACL store.", + }, +} + // Bootstrap is used to perform a one-time ACL bootstrap operation on // a cluster to get the first management token. func (a *ACL) Bootstrap(args *structs.DCSpecificRequest, reply *structs.ACL) error { diff --git a/agent/consul/acl_endpoint_test.go b/agent/consul/acl_endpoint_test.go index f2176f4b5..56448443f 100644 --- a/agent/consul/acl_endpoint_test.go +++ b/agent/consul/acl_endpoint_test.go @@ -449,9 +449,9 @@ func TestACLEndpoint_ReplicationStatus(t *testing.T) { err := msgpackrpc.CallWithCodec(codec, "ACL.ReplicationStatus", &getR, &status) require.NoError(t, err) - require.True(t, status.Enabled) - require.True(t, status.Running) - require.Equal(t, "dc2", status.SourceDatacenter) + require.True(r, status.Enabled) + require.True(r, status.Running) + require.Equal(r, "dc2", status.SourceDatacenter) }) } diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index 33fc4e9a8..2544ad79a 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -1264,7 +1264,7 @@ func TestACLResolver_DownPolicy(t *testing.T) { legacy: false, localTokens: false, localPolicies: false, - tokenReadFn: func(args *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { + tokenReadFn: func(_ *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { if !tokenResolved { reply.Token = foundToken tokenResolved = true @@ -1330,7 +1330,7 @@ func TestACLResolver_DownPolicy(t *testing.T) { legacy: false, localTokens: false, localPolicies: false, - tokenReadFn: func(args *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { + tokenReadFn: func(_ *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { // no limit reply.Token = foundToken return nil @@ -1440,7 +1440,7 @@ func TestACLResolver_Client(t *testing.T) { legacy: false, localTokens: false, localPolicies: false, - tokenReadFn: func(args *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { + tokenReadFn: func(_ *structs.ACLTokenGetRequest, reply *structs.ACLTokenResponse) error { atomic.AddInt32(&tokenReads, 1) if deleted { return acl.ErrNotFound @@ -1558,7 +1558,7 @@ func TestACLResolver_Client(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { reply.Parent = "deny" reply.TTL = 30 reply.ETag = "nothing" @@ -1900,7 +1900,7 @@ func TestACLResolver_Legacy(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { if !cached { reply.Parent = "deny" reply.TTL = 30 @@ -1951,7 +1951,7 @@ func TestACLResolver_Legacy(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { if !cached { reply.Parent = "deny" reply.TTL = 0 @@ -2004,7 +2004,7 @@ func TestACLResolver_Legacy(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { if !cached { reply.Parent = "deny" reply.TTL = 0 @@ -2058,7 +2058,7 @@ func TestACLResolver_Legacy(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { if !cached { reply.Parent = "deny" reply.TTL = 0 @@ -2112,7 +2112,7 @@ func TestACLResolver_Legacy(t *testing.T) { legacy: true, localTokens: false, localPolicies: false, - getPolicyFn: func(args *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { + getPolicyFn: func(_ *structs.ACLPolicyResolveLegacyRequest, reply *structs.ACLPolicyResolveLegacyResponse) error { if !cached { reply.Parent = "deny" reply.TTL = 0 diff --git a/agent/consul/auto_config_endpoint_test.go b/agent/consul/auto_config_endpoint_test.go index 137b9adce..d38b5225e 100644 --- a/agent/consul/auto_config_endpoint_test.go +++ b/agent/consul/auto_config_endpoint_test.go @@ -280,7 +280,7 @@ func TestAutoConfigInitialConfiguration(t *testing.T) { }, }, }, - patchResponse: func(t *testing.T, srv *Server, resp *pbautoconf.AutoConfigResponse) { + patchResponse: func(t *testing.T, _ *Server, resp *pbautoconf.AutoConfigResponse) { // we are expecting an ACL token but cannot check anything for equality // so here we check that it was set and overwrite it require.NotNil(t, resp.Config) diff --git a/agent/consul/autopilot.go b/agent/consul/autopilot.go index 54e2bcd66..cc6cf6230 100644 --- a/agent/consul/autopilot.go +++ b/agent/consul/autopilot.go @@ -3,60 +3,49 @@ package consul import ( "context" "fmt" - "net" - "strconv" "github.com/armon/go-metrics" - "github.com/hashicorp/consul/agent/consul/autopilot" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/metadata" + "github.com/hashicorp/consul/types" "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" "github.com/hashicorp/serf/serf" ) +var AutopilotGauges = []prometheus.GaugeDefinition{ + { + Name: []string{"autopilot", "failure_tolerance"}, + Help: "Tracks the number of voting servers that the cluster can lose while continuing to function.", + }, + { + Name: []string{"autopilot", "healthy"}, + Help: "Tracks the overall health of the local server cluster. 1 if all servers are healthy, 0 if one or more are unhealthy.", + }, +} + // AutopilotDelegate is a Consul delegate for autopilot operations. type AutopilotDelegate struct { server *Server } func (d *AutopilotDelegate) AutopilotConfig() *autopilot.Config { - return d.server.getOrCreateAutopilotConfig() + return d.server.getOrCreateAutopilotConfig().ToAutopilotLibraryConfig() } -func (d *AutopilotDelegate) FetchStats(ctx context.Context, servers []serf.Member) map[string]*autopilot.ServerStats { +func (d *AutopilotDelegate) KnownServers() map[raft.ServerID]*autopilot.Server { + return d.server.autopilotServers() +} + +func (d *AutopilotDelegate) FetchServerStats(ctx context.Context, servers map[raft.ServerID]*autopilot.Server) map[raft.ServerID]*autopilot.ServerStats { return d.server.statsFetcher.Fetch(ctx, servers) } -func (d *AutopilotDelegate) IsServer(m serf.Member) (*autopilot.ServerInfo, error) { - if m.Tags["role"] != "consul" { - return nil, nil - } - - portStr := m.Tags["port"] - port, err := strconv.Atoi(portStr) - if err != nil { - return nil, err - } - - buildVersion, err := metadata.Build(&m) - if err != nil { - return nil, err - } - - server := &autopilot.ServerInfo{ - Name: m.Name, - ID: m.Tags["id"], - Addr: &net.TCPAddr{IP: m.Addr, Port: port}, - Build: *buildVersion, - Status: m.Status, - } - return server, nil -} - -// Heartbeat a metric for monitoring if we're the leader -func (d *AutopilotDelegate) NotifyHealth(health autopilot.OperatorHealthReply) { +func (d *AutopilotDelegate) NotifyState(state *autopilot.State) { + // emit metrics if we are the leader regarding overall healthiness and the failure tolerance if d.server.raft.State() == raft.Leader { - metrics.SetGauge([]string{"autopilot", "failure_tolerance"}, float32(health.FailureTolerance)) - if health.Healthy { + metrics.SetGauge([]string{"autopilot", "failure_tolerance"}, float32(state.FailureTolerance)) + if state.Healthy { metrics.SetGauge([]string{"autopilot", "healthy"}, 1) } else { metrics.SetGauge([]string{"autopilot", "healthy"}, 0) @@ -64,23 +53,88 @@ func (d *AutopilotDelegate) NotifyHealth(health autopilot.OperatorHealthReply) { } } -func (d *AutopilotDelegate) PromoteNonVoters(conf *autopilot.Config, health autopilot.OperatorHealthReply) ([]raft.Server, error) { - future := d.server.raft.GetConfiguration() - if err := future.Error(); err != nil { - return nil, fmt.Errorf("failed to get raft configuration: %v", err) +func (d *AutopilotDelegate) RemoveFailedServer(srv *autopilot.Server) { + go func() { + if err := d.server.RemoveFailedNode(srv.Name, false); err != nil { + d.server.logger.Error("failedto remove server", "name", srv.Name, "id", srv.ID, "error", err) + } + }() +} + +func (s *Server) initAutopilot(config *Config) { + apDelegate := &AutopilotDelegate{s} + + s.autopilot = autopilot.New( + s.raft, + apDelegate, + autopilot.WithLogger(s.logger), + autopilot.WithReconcileInterval(config.AutopilotInterval), + autopilot.WithUpdateInterval(config.ServerHealthInterval), + autopilot.WithPromoter(s.autopilotPromoter()), + ) +} + +func (s *Server) autopilotServers() map[raft.ServerID]*autopilot.Server { + servers := make(map[raft.ServerID]*autopilot.Server) + for _, member := range s.serfLAN.Members() { + srv, err := s.autopilotServer(member) + if err != nil { + s.logger.Warn("Error parsing server info", "name", member.Name, "error", err) + continue + } else if srv == nil { + // this member was a client + continue + } + + servers[srv.ID] = srv } - return autopilot.PromoteStableServers(conf, health, future.Configuration().Servers), nil + return servers } -func (d *AutopilotDelegate) Raft() *raft.Raft { - return d.server.raft +func (s *Server) autopilotServer(m serf.Member) (*autopilot.Server, error) { + ok, srv := metadata.IsConsulServer(m) + if !ok { + return nil, nil + } + + return s.autopilotServerFromMetadata(srv) } -func (d *AutopilotDelegate) SerfLAN() *serf.Serf { - return d.server.serfLAN -} +func (s *Server) autopilotServerFromMetadata(srv *metadata.Server) (*autopilot.Server, error) { + server := &autopilot.Server{ + Name: srv.ShortName, + ID: raft.ServerID(srv.ID), + Address: raft.ServerAddress(srv.Addr.String()), + Version: srv.Build.String(), + RaftVersion: srv.RaftVersion, + Ext: s.autopilotServerExt(srv), + } -func (d *AutopilotDelegate) SerfWAN() *serf.Serf { - return d.server.serfWAN + switch srv.Status { + case serf.StatusLeft: + server.NodeStatus = autopilot.NodeLeft + case serf.StatusAlive, serf.StatusLeaving: + // we want to treat leaving as alive to prevent autopilot from + // prematurely removing the node. + server.NodeStatus = autopilot.NodeAlive + case serf.StatusFailed: + server.NodeStatus = autopilot.NodeFailed + default: + server.NodeStatus = autopilot.NodeUnknown + } + + // populate the node meta if there is any. When a node first joins or if + // there are ACL issues then this could be empty if the server has not + // yet been able to register itself in the catalog + _, node, err := s.fsm.State().GetNodeID(types.NodeID(srv.ID)) + if err != nil { + return nil, fmt.Errorf("error retrieving node from state store: %w", err) + } + + if node != nil { + server.Meta = node.Meta + } + + return server, nil } diff --git a/agent/consul/autopilot/autopilot.go b/agent/consul/autopilot/autopilot.go deleted file mode 100644 index 7e0bbc9ce..000000000 --- a/agent/consul/autopilot/autopilot.go +++ /dev/null @@ -1,540 +0,0 @@ -package autopilot - -import ( - "context" - "fmt" - "net" - "strconv" - "sync" - "time" - - "github.com/hashicorp/consul/logging" - "github.com/hashicorp/go-hclog" - "github.com/hashicorp/go-version" - "github.com/hashicorp/raft" - "github.com/hashicorp/serf/serf" -) - -// Delegate is the interface for the Autopilot mechanism -type Delegate interface { - AutopilotConfig() *Config - FetchStats(context.Context, []serf.Member) map[string]*ServerStats - IsServer(serf.Member) (*ServerInfo, error) - NotifyHealth(OperatorHealthReply) - PromoteNonVoters(*Config, OperatorHealthReply) ([]raft.Server, error) - Raft() *raft.Raft - SerfLAN() *serf.Serf - SerfWAN() *serf.Serf -} - -// Autopilot is a mechanism for automatically managing the Raft -// quorum using server health information along with updates from Serf gossip. -// For more information, see https://www.consul.io/docs/guides/autopilot.html -type Autopilot struct { - logger hclog.Logger - delegate Delegate - - interval time.Duration - healthInterval time.Duration - - clusterHealth OperatorHealthReply - clusterHealthLock sync.RWMutex - - enabled bool - removeDeadCh chan struct{} - shutdownCh chan struct{} - shutdownLock sync.Mutex - waitGroup sync.WaitGroup -} - -type ServerInfo struct { - Name string - ID string - Addr net.Addr - Build version.Version - Status serf.MemberStatus -} - -func NewAutopilot(logger hclog.Logger, delegate Delegate, interval, healthInterval time.Duration) *Autopilot { - return &Autopilot{ - logger: logger.Named(logging.Autopilot), - delegate: delegate, - interval: interval, - healthInterval: healthInterval, - removeDeadCh: make(chan struct{}), - } -} - -func (a *Autopilot) Start() { - a.shutdownLock.Lock() - defer a.shutdownLock.Unlock() - - // Nothing to do - if a.enabled { - return - } - - a.shutdownCh = make(chan struct{}) - a.waitGroup = sync.WaitGroup{} - a.clusterHealth = OperatorHealthReply{} - - a.waitGroup.Add(2) - go a.run() - go a.serverHealthLoop() - a.enabled = true -} - -func (a *Autopilot) Stop() { - a.shutdownLock.Lock() - defer a.shutdownLock.Unlock() - - // Nothing to do - if !a.enabled { - return - } - - close(a.shutdownCh) - a.waitGroup.Wait() - a.enabled = false -} - -// run periodically looks for nonvoting servers to promote and dead servers to remove. -func (a *Autopilot) run() { - defer a.waitGroup.Done() - - // Monitor server health until shutdown - ticker := time.NewTicker(a.interval) - defer ticker.Stop() - - for { - select { - case <-a.shutdownCh: - return - case <-ticker.C: - if err := a.promoteServers(); err != nil { - a.logger.Error("Error promoting servers", "error", err) - } - - if err := a.pruneDeadServers(); err != nil { - a.logger.Error("Error checking for dead servers to remove", "error", err) - } - case <-a.removeDeadCh: - if err := a.pruneDeadServers(); err != nil { - a.logger.Error("Error checking for dead servers to remove", "error", err) - } - } - } -} - -// promoteServers asks the delegate for any promotions and carries them out. -func (a *Autopilot) promoteServers() error { - conf := a.delegate.AutopilotConfig() - if conf == nil { - return nil - } - - // Skip the non-voter promotions unless all servers support the new APIs - minRaftProtocol, err := a.MinRaftProtocol() - if err != nil { - return fmt.Errorf("error getting server raft protocol versions: %s", err) - } - if minRaftProtocol >= 3 { - promotions, err := a.delegate.PromoteNonVoters(conf, a.GetClusterHealth()) - if err != nil { - return fmt.Errorf("error checking for non-voters to promote: %s", err) - } - if err := a.handlePromotions(promotions); err != nil { - return fmt.Errorf("error handling promotions: %s", err) - } - } - - return nil -} - -// fmtServer prints info about a server in a standard way for logging. -func fmtServer(server raft.Server) string { - return fmt.Sprintf("Server (ID: %q Address: %q)", server.ID, server.Address) -} - -// NumPeers counts the number of voting peers in the given raft config. -func NumPeers(raftConfig raft.Configuration) int { - var numPeers int - for _, server := range raftConfig.Servers { - if server.Suffrage == raft.Voter { - numPeers++ - } - } - return numPeers -} - -// RemoveDeadServers triggers a pruning of dead servers in a non-blocking way. -func (a *Autopilot) RemoveDeadServers() { - select { - case a.removeDeadCh <- struct{}{}: - default: - } -} - -func canRemoveServers(peers, minQuorum, deadServers int) (bool, string) { - if peers-deadServers < minQuorum { - return false, fmt.Sprintf("denied, because removing %d/%d servers would leave less then minimal allowed quorum of %d servers", deadServers, peers, minQuorum) - } - - // Only do removals if a minority of servers will be affected. - // For failure tolerance of F we need n = 2F+1 servers. - // This means we can safely remove up to (n-1)/2 servers. - if deadServers > (peers-1)/2 { - return false, fmt.Sprintf("denied, because removing the majority of servers %d/%d is not safe", deadServers, peers) - } - return true, fmt.Sprintf("allowed, because removing %d/%d servers leaves a majority of servers above the minimal allowed quorum %d", deadServers, peers, minQuorum) -} - -// pruneDeadServers removes up to numPeers/2 failed servers -func (a *Autopilot) pruneDeadServers() error { - conf := a.delegate.AutopilotConfig() - if conf == nil || !conf.CleanupDeadServers { - return nil - } - - // Failed servers are known to Serf and marked failed, and stale servers - // are known to Raft but not Serf. - var failed []serf.Member - staleRaftServers := make(map[string]raft.Server) - raftNode := a.delegate.Raft() - future := raftNode.GetConfiguration() - if err := future.Error(); err != nil { - return err - } - - raftConfig := future.Configuration() - for _, server := range raftConfig.Servers { - staleRaftServers[string(server.Address)] = server - } - serfWAN := a.delegate.SerfWAN() - serfLAN := a.delegate.SerfLAN() - for _, member := range serfLAN.Members() { - server, err := a.delegate.IsServer(member) - if err != nil { - a.logger.Warn("Error parsing server info", "name", member.Name, "error", err) - continue - } - if server != nil { - // todo(kyhavlov): change this to index by UUID - s, found := staleRaftServers[server.Addr.String()] - if found { - delete(staleRaftServers, server.Addr.String()) - } - - if member.Status == serf.StatusFailed { - // If the node is a nonvoter, we can remove it immediately. - if found && s.Suffrage == raft.Nonvoter { - a.logger.Info("Attempting removal of failed server node", "name", member.Name) - go serfLAN.RemoveFailedNode(member.Name) - if serfWAN != nil { - go serfWAN.RemoveFailedNode(member.Name) - } - } else { - failed = append(failed, member) - - } - } - } - } - - deadServers := len(failed) + len(staleRaftServers) - - // nothing to do - if deadServers == 0 { - return nil - } - - if ok, msg := canRemoveServers(NumPeers(raftConfig), int(conf.MinQuorum), deadServers); !ok { - a.logger.Debug("Failed to remove dead servers", "error", msg) - return nil - } - - for _, node := range failed { - a.logger.Info("Attempting removal of failed server node", "name", node.Name) - go serfLAN.RemoveFailedNode(node.Name) - if serfWAN != nil { - go serfWAN.RemoveFailedNode(fmt.Sprintf("%s.%s", node.Name, node.Tags["dc"])) - } - - } - - minRaftProtocol, err := a.MinRaftProtocol() - if err != nil { - return err - } - for _, raftServer := range staleRaftServers { - a.logger.Info("Attempting removal of stale server", "server", fmtServer(raftServer)) - var future raft.Future - if minRaftProtocol >= 2 { - future = raftNode.RemoveServer(raftServer.ID, 0, 0) - } else { - future = raftNode.RemovePeer(raftServer.Address) - } - if err := future.Error(); err != nil { - return err - } - } - - return nil -} - -// MinRaftProtocol returns the lowest supported Raft protocol among alive servers -func (a *Autopilot) MinRaftProtocol() (int, error) { - return minRaftProtocol(a.delegate.SerfLAN().Members(), a.delegate.IsServer) -} - -func minRaftProtocol(members []serf.Member, serverFunc func(serf.Member) (*ServerInfo, error)) (int, error) { - minVersion := -1 - for _, m := range members { - if m.Status != serf.StatusAlive { - continue - } - - server, err := serverFunc(m) - if err != nil { - return -1, err - } - if server == nil { - continue - } - - vsn, ok := m.Tags["raft_vsn"] - if !ok { - vsn = "1" - } - raftVsn, err := strconv.Atoi(vsn) - if err != nil { - return -1, err - } - - if minVersion == -1 || raftVsn < minVersion { - minVersion = raftVsn - } - } - - if minVersion == -1 { - return minVersion, fmt.Errorf("No servers found") - } - - return minVersion, nil -} - -// handlePromotions is a helper shared with Consul Enterprise that attempts to -// apply desired server promotions to the Raft configuration. -func (a *Autopilot) handlePromotions(promotions []raft.Server) error { - // This used to wait to only promote to maintain an odd quorum of - // servers, but this was at odds with the dead server cleanup when doing - // rolling updates (add one new server, wait, and then kill an old - // server). The dead server cleanup would still count the old server as - // a peer, which is conservative and the right thing to do, and this - // would wait to promote, so you could get into a stalemate. It is safer - // to promote early than remove early, so by promoting as soon as - // possible we have chosen that as the solution here. - for _, server := range promotions { - a.logger.Info("Promoting server to voter", "server", fmtServer(server)) - addFuture := a.delegate.Raft().AddVoter(server.ID, server.Address, 0, 0) - if err := addFuture.Error(); err != nil { - return fmt.Errorf("failed to add raft peer: %v", err) - } - } - - // If we promoted a server, trigger a check to remove dead servers. - if len(promotions) > 0 { - select { - case a.removeDeadCh <- struct{}{}: - default: - } - } - return nil -} - -// serverHealthLoop monitors the health of the servers in the cluster -func (a *Autopilot) serverHealthLoop() { - defer a.waitGroup.Done() - - // Monitor server health until shutdown - ticker := time.NewTicker(a.healthInterval) - defer ticker.Stop() - - for { - select { - case <-a.shutdownCh: - return - case <-ticker.C: - if err := a.updateClusterHealth(); err != nil { - a.logger.Error("Error updating cluster health", "error", err) - } - } - } -} - -// updateClusterHealth fetches the Raft stats of the other servers and updates -// s.clusterHealth based on the configured Autopilot thresholds -func (a *Autopilot) updateClusterHealth() error { - // Don't do anything if the min Raft version is too low - minRaftProtocol, err := a.MinRaftProtocol() - if err != nil { - return fmt.Errorf("error getting server raft protocol versions: %s", err) - } - if minRaftProtocol < 3 { - return nil - } - - autopilotConf := a.delegate.AutopilotConfig() - // Bail early if autopilot config hasn't been initialized yet - if autopilotConf == nil { - return nil - } - - // Get the the serf members which are Consul servers - var serverMembers []serf.Member - serverMap := make(map[string]*ServerInfo) - for _, member := range a.delegate.SerfLAN().Members() { - if member.Status == serf.StatusLeft { - continue - } - - server, err := a.delegate.IsServer(member) - if err != nil { - a.logger.Warn("Error parsing server info", "name", member.Name, "error", err) - continue - } - if server != nil { - serverMap[server.ID] = server - serverMembers = append(serverMembers, member) - } - } - - raftNode := a.delegate.Raft() - future := raftNode.GetConfiguration() - if err := future.Error(); err != nil { - return fmt.Errorf("error getting Raft configuration %s", err) - } - servers := future.Configuration().Servers - - // Fetch the health for each of the servers in parallel so we get as - // consistent of a sample as possible. We capture the leader's index - // here as well so it roughly lines up with the same point in time. - targetLastIndex := raftNode.LastIndex() - d := time.Now().Add(a.healthInterval / 2) - ctx, cancel := context.WithDeadline(context.Background(), d) - defer cancel() - fetchedStats := a.delegate.FetchStats(ctx, serverMembers) - - // Build a current list of server healths - leader := raftNode.Leader() - var clusterHealth OperatorHealthReply - voterCount := 0 - healthyCount := 0 - healthyVoterCount := 0 - for _, server := range servers { - health := ServerHealth{ - ID: string(server.ID), - Address: string(server.Address), - Leader: server.Address == leader, - LastContact: -1, - Voter: server.Suffrage == raft.Voter, - } - - parts, ok := serverMap[string(server.ID)] - if ok { - health.Name = parts.Name - health.SerfStatus = parts.Status - health.Version = parts.Build.String() - if stats, ok := fetchedStats[string(server.ID)]; ok { - if err := a.updateServerHealth(&health, parts, stats, autopilotConf, targetLastIndex); err != nil { - a.logger.Warn("Error updating server health", "server", fmtServer(server), "error", err) - } - } - } else { - health.SerfStatus = serf.StatusNone - } - - if health.Voter { - voterCount++ - } - if health.Healthy { - healthyCount++ - if health.Voter { - healthyVoterCount++ - } - } - - clusterHealth.Servers = append(clusterHealth.Servers, health) - } - clusterHealth.Healthy = healthyCount == len(servers) - - // If we have extra healthy voters, update FailureTolerance - requiredQuorum := voterCount/2 + 1 - if healthyVoterCount > requiredQuorum { - clusterHealth.FailureTolerance = healthyVoterCount - requiredQuorum - } - - a.delegate.NotifyHealth(clusterHealth) - - a.clusterHealthLock.Lock() - a.clusterHealth = clusterHealth - a.clusterHealthLock.Unlock() - - return nil -} - -// updateServerHealth computes the resulting health of the server based on its -// fetched stats and the state of the leader. -func (a *Autopilot) updateServerHealth(health *ServerHealth, - server *ServerInfo, stats *ServerStats, - autopilotConf *Config, targetLastIndex uint64) error { - - health.LastTerm = stats.LastTerm - health.LastIndex = stats.LastIndex - - if stats.LastContact != "never" { - var err error - health.LastContact, err = time.ParseDuration(stats.LastContact) - if err != nil { - return fmt.Errorf("error parsing last_contact duration: %s", err) - } - } - - raftNode := a.delegate.Raft() - lastTerm, err := strconv.ParseUint(raftNode.Stats()["last_log_term"], 10, 64) - if err != nil { - return fmt.Errorf("error parsing last_log_term: %s", err) - } - health.Healthy = health.IsHealthy(lastTerm, targetLastIndex, autopilotConf) - - // If this is a new server or the health changed, reset StableSince - lastHealth := a.GetServerHealth(server.ID) - if lastHealth == nil || lastHealth.Healthy != health.Healthy { - health.StableSince = time.Now() - } else { - health.StableSince = lastHealth.StableSince - } - - return nil -} - -func (a *Autopilot) GetClusterHealth() OperatorHealthReply { - a.clusterHealthLock.RLock() - defer a.clusterHealthLock.RUnlock() - return a.clusterHealth -} - -func (a *Autopilot) GetServerHealth(id string) *ServerHealth { - a.clusterHealthLock.RLock() - defer a.clusterHealthLock.RUnlock() - return a.clusterHealth.ServerHealth(id) -} - -func IsPotentialVoter(suffrage raft.ServerSuffrage) bool { - switch suffrage { - case raft.Voter, raft.Staging: - return true - default: - return false - } -} diff --git a/agent/consul/autopilot/autopilot_test.go b/agent/consul/autopilot/autopilot_test.go deleted file mode 100644 index 2b26fb826..000000000 --- a/agent/consul/autopilot/autopilot_test.go +++ /dev/null @@ -1,111 +0,0 @@ -package autopilot - -import ( - "errors" - "net" - "testing" - - "github.com/hashicorp/serf/serf" - "github.com/stretchr/testify/require" -) - -func TestMinRaftProtocol(t *testing.T) { - t.Parallel() - makeMember := func(version string) serf.Member { - return serf.Member{ - Name: "foo", - Addr: net.IP([]byte{127, 0, 0, 1}), - Tags: map[string]string{ - "role": "consul", - "dc": "dc1", - "port": "10000", - "vsn": "1", - "raft_vsn": version, - }, - Status: serf.StatusAlive, - } - } - - cases := []struct { - members []serf.Member - expected int - err error - }{ - // No servers, error - { - members: []serf.Member{}, - expected: -1, - err: errors.New("No servers found"), - }, - // One server - { - members: []serf.Member{ - makeMember("1"), - }, - expected: 1, - }, - // One server, bad version formatting - { - members: []serf.Member{ - makeMember("asdf"), - }, - expected: -1, - err: errors.New(`strconv.Atoi: parsing "asdf": invalid syntax`), - }, - // Multiple servers, different versions - { - members: []serf.Member{ - makeMember("1"), - makeMember("2"), - }, - expected: 1, - }, - // Multiple servers, same version - { - members: []serf.Member{ - makeMember("2"), - makeMember("2"), - }, - expected: 2, - }, - } - - serverFunc := func(m serf.Member) (*ServerInfo, error) { - return &ServerInfo{}, nil - } - for _, tc := range cases { - result, err := minRaftProtocol(tc.members, serverFunc) - if result != tc.expected { - t.Fatalf("bad: %v, %v, %v", result, tc.expected, tc) - } - if tc.err != nil { - if err == nil || tc.err.Error() != err.Error() { - t.Fatalf("bad: %v, %v, %v", err, tc.err, tc) - } - } - } -} - -func TestAutopilot_canRemoveServers(t *testing.T) { - type test struct { - peers int - minQuorum int - deadServers int - ok bool - } - - tests := []test{ - {1, 1, 1, false}, - {3, 3, 1, false}, - {4, 3, 3, false}, - {5, 3, 3, false}, - {5, 3, 2, true}, - {5, 3, 1, true}, - {9, 3, 5, false}, - } - for _, test := range tests { - ok, msg := canRemoveServers(test.peers, test.minQuorum, test.deadServers) - require.Equal(t, test.ok, ok) - t.Logf("%+v: %s", test, msg) - } -} diff --git a/agent/consul/autopilot/promotion.go b/agent/consul/autopilot/promotion.go deleted file mode 100644 index d76540d15..000000000 --- a/agent/consul/autopilot/promotion.go +++ /dev/null @@ -1,26 +0,0 @@ -package autopilot - -import ( - "time" - - "github.com/hashicorp/raft" -) - -// PromoteStableServers is a basic autopilot promotion policy that promotes any -// server which has been healthy and stable for the duration specified in the -// given Autopilot config. -func PromoteStableServers(autopilotConfig *Config, health OperatorHealthReply, servers []raft.Server) []raft.Server { - // Find any non-voters eligible for promotion. - now := time.Now() - var promotions []raft.Server - for _, server := range servers { - if !IsPotentialVoter(server.Suffrage) { - health := health.ServerHealth(string(server.ID)) - if health.IsStable(now, autopilotConfig) { - promotions = append(promotions, server) - } - } - } - - return promotions -} diff --git a/agent/consul/autopilot/promotion_test.go b/agent/consul/autopilot/promotion_test.go deleted file mode 100644 index 729b2ed41..000000000 --- a/agent/consul/autopilot/promotion_test.go +++ /dev/null @@ -1,102 +0,0 @@ -package autopilot - -import ( - "testing" - "time" - - "github.com/hashicorp/raft" - "github.com/stretchr/testify/require" -) - -func TestPromotion(t *testing.T) { - config := &Config{ - LastContactThreshold: 5 * time.Second, - MaxTrailingLogs: 100, - ServerStabilizationTime: 3 * time.Second, - } - - cases := []struct { - name string - conf *Config - health OperatorHealthReply - servers []raft.Server - promotions []raft.Server - }{ - { - name: "one stable voter, no promotions", - conf: config, - health: OperatorHealthReply{ - Servers: []ServerHealth{ - { - ID: "a", - Healthy: true, - StableSince: time.Now().Add(-10 * time.Second), - }, - }, - }, - servers: []raft.Server{ - {ID: "a", Suffrage: raft.Voter}, - }, - }, - { - name: "one stable nonvoter, should be promoted", - conf: config, - health: OperatorHealthReply{ - Servers: []ServerHealth{ - { - ID: "a", - Healthy: true, - StableSince: time.Now().Add(-10 * time.Second), - }, - { - ID: "b", - Healthy: true, - StableSince: time.Now().Add(-10 * time.Second), - }, - }, - }, - servers: []raft.Server{ - {ID: "a", Suffrage: raft.Voter}, - {ID: "b", Suffrage: raft.Nonvoter}, - }, - promotions: []raft.Server{ - {ID: "b", Suffrage: raft.Nonvoter}, - }, - }, - { - name: "unstable servers, neither should be promoted", - conf: config, - health: OperatorHealthReply{ - Servers: []ServerHealth{ - { - ID: "a", - Healthy: true, - StableSince: time.Now().Add(-10 * time.Second), - }, - { - ID: "b", - Healthy: false, - StableSince: time.Now().Add(-10 * time.Second), - }, - { - ID: "c", - Healthy: true, - StableSince: time.Now().Add(-1 * time.Second), - }, - }, - }, - servers: []raft.Server{ - {ID: "a", Suffrage: raft.Voter}, - {ID: "b", Suffrage: raft.Nonvoter}, - {ID: "c", Suffrage: raft.Nonvoter}, - }, - }, - } - - for _, tc := range cases { - t.Run(tc.name, func(t *testing.T) { - promotions := PromoteStableServers(tc.conf, tc.health, tc.servers) - require.Equal(t, tc.promotions, promotions) - }) - } -} diff --git a/agent/consul/autopilot/structs_test.go b/agent/consul/autopilot/structs_test.go deleted file mode 100644 index 606576641..000000000 --- a/agent/consul/autopilot/structs_test.go +++ /dev/null @@ -1,94 +0,0 @@ -package autopilot - -import ( - "testing" - "time" - - "github.com/hashicorp/serf/serf" -) - -func TestServerHealth_IsHealthy(t *testing.T) { - cases := []struct { - health ServerHealth - lastTerm uint64 - lastIndex uint64 - conf Config - expected bool - }{ - // Healthy server, all values within allowed limits - { - health: ServerHealth{SerfStatus: serf.StatusAlive, LastTerm: 1, LastIndex: 0}, - lastTerm: 1, - lastIndex: 10, - conf: Config{MaxTrailingLogs: 20}, - expected: true, - }, - // Serf status failed - { - health: ServerHealth{SerfStatus: serf.StatusFailed}, - expected: false, - }, - // Old value for lastTerm - { - health: ServerHealth{SerfStatus: serf.StatusAlive, LastTerm: 0}, - lastTerm: 1, - expected: false, - }, - // Too far behind on logs - { - health: ServerHealth{SerfStatus: serf.StatusAlive, LastIndex: 0}, - lastIndex: 10, - conf: Config{MaxTrailingLogs: 5}, - expected: false, - }, - } - - for index, tc := range cases { - actual := tc.health.IsHealthy(tc.lastTerm, tc.lastIndex, &tc.conf) - if actual != tc.expected { - t.Fatalf("bad value for case %d: %v", index, actual) - } - } -} - -func TestServerHealth_IsStable(t *testing.T) { - start := time.Now() - cases := []struct { - health *ServerHealth - now time.Time - conf Config - expected bool - }{ - // Healthy server, all values within allowed limits - { - health: &ServerHealth{Healthy: true, StableSince: start}, - now: start.Add(15 * time.Second), - conf: Config{ServerStabilizationTime: 10 * time.Second}, - expected: true, - }, - // Unhealthy server - { - health: &ServerHealth{Healthy: false}, - expected: false, - }, - // Healthy server, hasn't reached stabilization time - { - health: &ServerHealth{Healthy: true, StableSince: start}, - now: start.Add(5 * time.Second), - conf: Config{ServerStabilizationTime: 10 * time.Second}, - expected: false, - }, - // Nil struct - { - health: nil, - expected: false, - }, - } - - for index, tc := range cases { - actual := tc.health.IsStable(tc.now, &tc.conf) - if actual != tc.expected { - t.Fatalf("bad value for case %d: %v", index, actual) - } - } -} diff --git a/agent/consul/autopilot_oss.go b/agent/consul/autopilot_oss.go index b01e35136..09a1f76fc 100644 --- a/agent/consul/autopilot_oss.go +++ b/agent/consul/autopilot_oss.go @@ -2,9 +2,15 @@ package consul -import "github.com/hashicorp/consul/agent/consul/autopilot" +import ( + "github.com/hashicorp/consul/agent/metadata" + autopilot "github.com/hashicorp/raft-autopilot" +) -func (s *Server) initAutopilot(config *Config) { - apDelegate := &AutopilotDelegate{s} - s.autopilot = autopilot.NewAutopilot(s.logger, apDelegate, config.AutopilotInterval, config.ServerHealthInterval) +func (s *Server) autopilotPromoter() autopilot.Promoter { + return autopilot.DefaultPromoter() +} + +func (_ *Server) autopilotServerExt(_ *metadata.Server) interface{} { + return nil } diff --git a/agent/consul/autopilot_test.go b/agent/consul/autopilot_test.go index 4a2e73731..d2584c7f3 100644 --- a/agent/consul/autopilot_test.go +++ b/agent/consul/autopilot_test.go @@ -1,10 +1,12 @@ package consul import ( + "context" "os" "testing" "time" + "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/hashicorp/consul/testrpc" "github.com/hashicorp/raft" @@ -18,28 +20,20 @@ func TestAutopilot_IdempotentShutdown(t *testing.T) { defer s1.Shutdown() retry.Run(t, func(r *retry.R) { r.Check(waitForLeader(s1)) }) - s1.autopilot.Start() - s1.autopilot.Start() - s1.autopilot.Start() - s1.autopilot.Stop() - s1.autopilot.Stop() - s1.autopilot.Stop() + s1.autopilot.Start(context.Background()) + s1.autopilot.Start(context.Background()) + s1.autopilot.Start(context.Background()) + <-s1.autopilot.Stop() + <-s1.autopilot.Stop() + <-s1.autopilot.Stop() } func TestAutopilot_CleanupDeadServer(t *testing.T) { - t.Parallel() - for i := 1; i <= 3; i++ { - testCleanupDeadServer(t, i) - } -} - -func testCleanupDeadServer(t *testing.T, raftVersion int) { dc := "dc1" conf := func(c *Config) { c.Datacenter = dc c.Bootstrap = false c.BootstrapExpect = 5 - c.RaftConfig.ProtocolVersion = raft.ProtocolVersion(raftVersion) } dir1, s1 := testServerWithConfig(t, conf) defer os.RemoveAll(dir1) @@ -119,10 +113,19 @@ func testCleanupDeadServer(t *testing.T, raftVersion int) { } func TestAutopilot_CleanupDeadNonvoter(t *testing.T) { - dir1, s1 := testServer(t) + dir1, s1 := testServerWithConfig(t, func(c *Config) { + c.AutopilotConfig = &structs.AutopilotConfig{ + CleanupDeadServers: true, + ServerStabilizationTime: 100 * time.Millisecond, + } + }) defer os.RemoveAll(dir1) defer s1.Shutdown() + // we have to wait for autopilot to be running long enough for the server stabilization time + // to kick in for this test to work. + time.Sleep(100 * time.Millisecond) + dir2, s2 := testServerDCBootstrap(t, "dc1", false) defer os.RemoveAll(dir2) defer s2.Shutdown() @@ -316,7 +319,7 @@ func TestAutopilot_CleanupStaleRaftServer(t *testing.T) { } // Verify we have 4 peers - peers, err := s1.numPeers() + peers, err := s1.autopilot.NumVoters() if err != nil { t.Fatal(err) } @@ -335,7 +338,6 @@ func TestAutopilot_PromoteNonVoter(t *testing.T) { dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Datacenter = "dc1" c.Bootstrap = true - c.RaftConfig.ProtocolVersion = 3 c.AutopilotConfig.ServerStabilizationTime = 200 * time.Millisecond c.ServerHealthInterval = 100 * time.Millisecond c.AutopilotInterval = 100 * time.Millisecond @@ -346,6 +348,10 @@ func TestAutopilot_PromoteNonVoter(t *testing.T) { defer codec.Close() testrpc.WaitForLeader(t, s1.RPC, "dc1") + // this may seem arbitrary but we need to get past the server stabilization time + // so that we start factoring in that time for newly connected nodes. + time.Sleep(100 * time.Millisecond) + dir2, s2 := testServerWithConfig(t, func(c *Config) { c.Datacenter = "dc1" c.Bootstrap = false @@ -370,7 +376,7 @@ func TestAutopilot_PromoteNonVoter(t *testing.T) { if servers[1].Suffrage != raft.Nonvoter { r.Fatalf("bad: %v", servers) } - health := s1.autopilot.GetServerHealth(string(servers[1].ID)) + health := s1.autopilot.GetServerHealth(servers[1].ID) if health == nil { r.Fatal("nil health") } @@ -406,7 +412,6 @@ func TestAutopilot_MinQuorum(t *testing.T) { c.Bootstrap = false c.BootstrapExpect = 4 c.AutopilotConfig.MinQuorum = 3 - c.RaftConfig.ProtocolVersion = raft.ProtocolVersion(2) c.AutopilotInterval = 100 * time.Millisecond } dir1, s1 := testServerWithConfig(t, conf) diff --git a/agent/consul/catalog_endpoint.go b/agent/consul/catalog_endpoint.go index 04be323cb..f5d5b5633 100644 --- a/agent/consul/catalog_endpoint.go +++ b/agent/consul/catalog_endpoint.go @@ -6,6 +6,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" @@ -17,6 +18,52 @@ import ( "github.com/hashicorp/go-uuid" ) +var CatalogCounters = []prometheus.CounterDefinition{ + { + Name: []string{"catalog", "service", "query"}, + Help: "Increments for each catalog query for the given service.", + }, + { + Name: []string{"catalog", "connect", "query"}, + Help: "", + }, + { + Name: []string{"catalog", "service", "query-tag"}, + Help: "Increments for each catalog query for the given service with the given tag.", + }, + { + Name: []string{"catalog", "connect", "query-tag"}, + Help: "", + }, + { + Name: []string{"catalog", "service", "query-tags"}, + Help: "Increments for each catalog query for the given service with the given tags.", + }, + { + Name: []string{"catalog", "connect", "query-tags"}, + Help: "", + }, + { + Name: []string{"catalog", "service", "not-found"}, + Help: "Increments for each catalog query where the given service could not be found.", + }, + { + Name: []string{"catalog", "connect", "not-found"}, + Help: "", + }, +} + +var CatalogSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"catalog", "deregister"}, + Help: "Measures the time it takes to complete a catalog deregister operation.", + }, + { + Name: []string{"catalog", "register"}, + Help: "Measures the time it takes to complete a catalog register operation.", + }, +} + // Catalog endpoint is used to manipulate the service catalog type Catalog struct { srv *Server diff --git a/agent/consul/client.go b/agent/consul/client.go index b4cf90759..d2ae9a1ed 100644 --- a/agent/consul/client.go +++ b/agent/consul/client.go @@ -9,6 +9,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/pool" "github.com/hashicorp/consul/agent/router" "github.com/hashicorp/consul/agent/structs" @@ -21,6 +22,21 @@ import ( "golang.org/x/time/rate" ) +var ClientCounters = []prometheus.CounterDefinition{ + { + Name: []string{"client", "rpc"}, + Help: "Increments whenever a Consul agent in client mode makes an RPC request to a Consul server.", + }, + { + Name: []string{"client", "rpc", "exceeded"}, + Help: "Increments whenever a Consul agent in client mode makes an RPC request to a Consul server gets rate limited by that agent's limits configuration.", + }, + { + Name: []string{"client", "rpc", "failed"}, + Help: "Increments whenever a Consul agent in client mode makes an RPC request to a Consul server and fails.", + }, +} + const ( // serfEventBacklog is the maximum number of unprocessed Serf Events // that will be held in queue before new serf events block. A diff --git a/agent/consul/client_test.go b/agent/consul/client_test.go index 4af8a4629..2fc08c4cf 100644 --- a/agent/consul/client_test.go +++ b/agent/consul/client_test.go @@ -145,8 +145,8 @@ func TestClient_LANReap(t *testing.T) { // Check the router has both retry.Run(t, func(r *retry.R) { server := c1.router.FindLANServer() - require.NotNil(t, server) - require.Equal(t, s1.config.NodeName, server.Name) + require.NotNil(r, server) + require.Equal(r, s1.config.NodeName, server.Name) }) // shutdown the second dc diff --git a/agent/consul/config.go b/agent/consul/config.go index 2b519d9de..7b4cbb507 100644 --- a/agent/consul/config.go +++ b/agent/consul/config.go @@ -12,7 +12,6 @@ import ( "golang.org/x/time/rate" "github.com/hashicorp/consul/agent/checks" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" libserf "github.com/hashicorp/consul/lib/serf" "github.com/hashicorp/consul/tlsutil" @@ -111,9 +110,9 @@ type Config struct { // RaftConfig is the configuration used for Raft in the local DC RaftConfig *raft.Config - // (Enterprise-only) NonVoter is used to prevent this server from being added + // (Enterprise-only) ReadReplica is used to prevent this server from being added // as a voting member of the Raft cluster. - NonVoter bool + ReadReplica bool // NotifyListen is called after the RPC listener has been configured. // RPCAdvertise will be set to the listener address if it hasn't been @@ -269,8 +268,8 @@ type Config struct { // ACLDefaultPolicy is used to control the ACL interaction when // there is no defined policy. This can be "allow" which means - // ACLs are used to black-list, or "deny" which means ACLs are - // white-lists. + // ACLs are used to deny-list, or "deny" which means ACLs are + // allow-lists. ACLDefaultPolicy string // ACLDownPolicy controls the behavior of ACLs if the ACLDatacenter @@ -438,7 +437,7 @@ type Config struct { // AutopilotConfig is used to apply the initial autopilot config when // bootstrapping. - AutopilotConfig *autopilot.Config + AutopilotConfig *structs.AutopilotConfig // ServerHealthInterval is the frequency with which the health of the // servers in the cluster will be updated. @@ -590,7 +589,7 @@ func DefaultConfig() *Config { // TODO (slackpad) - Until #3744 is done, we need to keep these // in sync with agent/config/default.go. - AutopilotConfig: &autopilot.Config{ + AutopilotConfig: &structs.AutopilotConfig{ CleanupDeadServers: true, LastContactThreshold: 200 * time.Millisecond, MaxTrailingLogs: 250, diff --git a/agent/consul/config_endpoint.go b/agent/consul/config_endpoint.go index dc56faf94..b2529133d 100644 --- a/agent/consul/config_endpoint.go +++ b/agent/consul/config_endpoint.go @@ -4,6 +4,8 @@ import ( "fmt" "time" + "github.com/armon/go-metrics/prometheus" + metrics "github.com/armon/go-metrics" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" @@ -12,6 +14,33 @@ import ( "github.com/mitchellh/copystructure" ) +var ConfigSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"config_entry", "apply"}, + Help: "", + }, + { + Name: []string{"config_entry", "get"}, + Help: "", + }, + { + Name: []string{"config_entry", "list"}, + Help: "", + }, + { + Name: []string{"config_entry", "listAll"}, + Help: "", + }, + { + Name: []string{"config_entry", "delete"}, + Help: "", + }, + { + Name: []string{"config_entry", "resolve_service_config"}, + Help: "", + }, +} + // The ConfigEntry endpoint is used to query centralized config information type ConfigEntry struct { srv *Server @@ -19,10 +48,6 @@ type ConfigEntry struct { // Apply does an upsert of the given config entry. func (c *ConfigEntry) Apply(args *structs.ConfigEntryRequest, reply *bool) error { - return c.applyInternal(args, reply, nil) -} - -func (c *ConfigEntry) applyInternal(args *structs.ConfigEntryRequest, reply *bool, normalizeAndValidateFn func(structs.ConfigEntry) error) error { if err := c.srv.validateEnterpriseRequest(args.Entry.GetEnterpriseMeta(), true); err != nil { return err } @@ -47,17 +72,11 @@ func (c *ConfigEntry) applyInternal(args *structs.ConfigEntryRequest, reply *boo } // Normalize and validate the incoming config entry as if it came from a user. - if normalizeAndValidateFn == nil { - if err := args.Entry.Normalize(); err != nil { - return err - } - if err := args.Entry.Validate(); err != nil { - return err - } - } else { - if err := normalizeAndValidateFn(args.Entry); err != nil { - return err - } + if err := args.Entry.Normalize(); err != nil { + return err + } + if err := args.Entry.Validate(); err != nil { + return err } if authz != nil && !args.Entry.CanWrite(authz) { @@ -454,6 +473,11 @@ func (c *ConfigEntry) ResolveServiceConfig(args *structs.ServiceConfigRequest, r func (c *ConfigEntry) preflightCheck(kind string) error { switch kind { case structs.ServiceIntentions: + // Exit early if Connect hasn't been enabled. + if !c.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + usingConfigEntries, err := c.srv.fsm.State().AreIntentionsInConfigEntries() if err != nil { return fmt.Errorf("system metadata lookup failed: %v", err) diff --git a/agent/consul/config_replication.go b/agent/consul/config_replication.go index 7670d35ac..3ab91be0c 100644 --- a/agent/consul/config_replication.go +++ b/agent/consul/config_replication.go @@ -11,12 +11,8 @@ import ( "github.com/hashicorp/go-hclog" ) -func cmpConfigLess(first structs.ConfigEntry, second structs.ConfigEntry) bool { - return first.GetKind() < second.GetKind() || (first.GetKind() == second.GetKind() && first.GetName() < second.GetName()) -} - func configSort(configs []structs.ConfigEntry) { - sort.Slice(configs, func(i, j int) bool { + sort.SliceStable(configs, func(i, j int) bool { return cmpConfigLess(configs[i], configs[j]) }) } @@ -25,12 +21,14 @@ func diffConfigEntries(local []structs.ConfigEntry, remote []structs.ConfigEntry configSort(local) configSort(remote) - var deletions []structs.ConfigEntry - var updates []structs.ConfigEntry - var localIdx int - var remoteIdx int + var ( + deletions []structs.ConfigEntry + updates []structs.ConfigEntry + localIdx int + remoteIdx int + ) for localIdx, remoteIdx = 0, 0; localIdx < len(local) && remoteIdx < len(remote); { - if local[localIdx].GetKind() == remote[remoteIdx].GetKind() && local[localIdx].GetName() == remote[remoteIdx].GetName() { + if configSameID(local[localIdx], remote[remoteIdx]) { // config is in both the local and remote state - need to check raft indices if remote[remoteIdx].GetRaftIndex().ModifyIndex > lastRemoteIndex { updates = append(updates, remote[remoteIdx]) @@ -64,6 +62,30 @@ func diffConfigEntries(local []structs.ConfigEntry, remote []structs.ConfigEntry return deletions, updates } +func cmpConfigLess(first structs.ConfigEntry, second structs.ConfigEntry) bool { + if first.GetKind() < second.GetKind() { + return true + } + if first.GetKind() > second.GetKind() { + return false + } + + if first.GetEnterpriseMeta().LessThan(second.GetEnterpriseMeta()) { + return true + } + if second.GetEnterpriseMeta().LessThan(first.GetEnterpriseMeta()) { + return false + } + + return first.GetName() < second.GetName() +} + +func configSameID(e1, e2 structs.ConfigEntry) bool { + return e1.GetKind() == e2.GetKind() && + e1.GetEnterpriseMeta().IsSame(e2.GetEnterpriseMeta()) && + e1.GetName() == e2.GetName() +} + func (s *Server) reconcileLocalConfig(ctx context.Context, configs []structs.ConfigEntry, op structs.ConfigEntryOp) (bool, error) { ticker := time.NewTicker(time.Second / time.Duration(s.config.ConfigReplicationApplyLimit)) defer ticker.Stop() diff --git a/agent/consul/config_replication_test.go b/agent/consul/config_replication_test.go index 3780b1ea2..72cedd0a1 100644 --- a/agent/consul/config_replication_test.go +++ b/agent/consul/config_replication_test.go @@ -4,6 +4,7 @@ import ( "fmt" "os" "testing" + "time" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/sdk/testutil/retry" @@ -11,6 +12,85 @@ import ( "github.com/stretchr/testify/require" ) +func TestReplication_ConfigSort(t *testing.T) { + newDefaults := func(name, protocol string) *structs.ServiceConfigEntry { + return &structs.ServiceConfigEntry{ + Kind: structs.ServiceDefaults, + Name: name, + Protocol: protocol, + } + } + newResolver := func(name string, timeout time.Duration) *structs.ServiceResolverConfigEntry { + return &structs.ServiceResolverConfigEntry{ + Kind: structs.ServiceResolver, + Name: name, + ConnectTimeout: timeout, + } + } + + type testcase struct { + configs []structs.ConfigEntry + expect []structs.ConfigEntry + } + + cases := map[string]testcase{ + "none": {}, + "one": { + configs: []structs.ConfigEntry{ + newDefaults("web", "grpc"), + }, + expect: []structs.ConfigEntry{ + newDefaults("web", "grpc"), + }, + }, + "just kinds": { + configs: []structs.ConfigEntry{ + newResolver("web", 33*time.Second), + newDefaults("web", "grpc"), + }, + expect: []structs.ConfigEntry{ + newDefaults("web", "grpc"), + newResolver("web", 33*time.Second), + }, + }, + "just names": { + configs: []structs.ConfigEntry{ + newDefaults("db", "grpc"), + newDefaults("api", "http2"), + }, + expect: []structs.ConfigEntry{ + newDefaults("api", "http2"), + newDefaults("db", "grpc"), + }, + }, + "all": { + configs: []structs.ConfigEntry{ + newResolver("web", 33*time.Second), + newDefaults("web", "grpc"), + newDefaults("db", "grpc"), + newDefaults("api", "http2"), + }, + expect: []structs.ConfigEntry{ + newDefaults("api", "http2"), + newDefaults("db", "grpc"), + newDefaults("web", "grpc"), + newResolver("web", 33*time.Second), + }, + }, + } + + for name, tc := range cases { + tc := tc + t.Run(name, func(t *testing.T) { + configSort(tc.configs) + require.Equal(t, tc.expect, tc.configs) + // and it should be stable + configSort(tc.configs) + require.Equal(t, tc.expect, tc.configs) + }) + } +} + func TestReplication_ConfigEntries(t *testing.T) { t.Parallel() dir1, s1 := testServerWithConfig(t, func(c *Config) { diff --git a/agent/consul/connect_ca_endpoint.go b/agent/consul/connect_ca_endpoint.go index 2198c0ec6..e7ae0c723 100644 --- a/agent/consul/connect_ca_endpoint.go +++ b/agent/consul/connect_ca_endpoint.go @@ -67,7 +67,7 @@ func (s *ConnectCA) ConfigurationGet( if err != nil { return err } - if rule != nil && rule.OperatorRead(nil) != acl.Allow { + if rule != nil && rule.OperatorWrite(nil) != acl.Allow { return acl.ErrPermissionDenied } diff --git a/agent/consul/connect_ca_endpoint_test.go b/agent/consul/connect_ca_endpoint_test.go index d55c7e4b6..4e2885e47 100644 --- a/agent/consul/connect_ca_endpoint_test.go +++ b/agent/consul/connect_ca_endpoint_test.go @@ -9,8 +9,7 @@ import ( "testing" "time" - "github.com/stretchr/testify/require" - + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/connect" ca "github.com/hashicorp/consul/agent/connect/ca" "github.com/hashicorp/consul/agent/structs" @@ -18,6 +17,7 @@ import ( "github.com/hashicorp/consul/testrpc" msgpackrpc "github.com/hashicorp/net-rpc-msgpackrpc" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) func testParseCert(t *testing.T, pemValue string) *x509.Certificate { @@ -144,6 +144,93 @@ func TestConnectCAConfig_GetSet(t *testing.T) { } } +func TestConnectCAConfig_GetSet_ACLDeny(t *testing.T) { + t.Parallel() + + dir1, s1 := testServerWithConfig(t, func(c *Config) { + c.ACLDatacenter = "dc1" + c.ACLsEnabled = true + c.ACLMasterToken = TestDefaultMasterToken + c.ACLDefaultPolicy = "deny" + }) + defer os.RemoveAll(dir1) + defer s1.Shutdown() + + codec := rpcClient(t, s1) + defer codec.Close() + + testrpc.WaitForLeader(t, s1.RPC, "dc1") + + opReadToken, err := upsertTestTokenWithPolicyRules( + codec, TestDefaultMasterToken, "dc1", `operator = "read"`) + require.NoError(t, err) + + opWriteToken, err := upsertTestTokenWithPolicyRules( + codec, TestDefaultMasterToken, "dc1", `operator = "write"`) + require.NoError(t, err) + + // Update a config value + newConfig := &structs.CAConfiguration{ + Provider: "consul", + Config: map[string]interface{}{ + "PrivateKey": ` +-----BEGIN EC PRIVATE KEY----- +MHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49 +AwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav +q5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ== +-----END EC PRIVATE KEY-----`, + "RootCert": ` +-----BEGIN CERTIFICATE----- +MIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ +VGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG +A1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR +AB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7 +SkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD +AgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6 +NDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6 +NWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf +ZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6 +ZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw +WQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1 +NTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG +SM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA +pY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g= +-----END CERTIFICATE-----`, + }, + } + + args := &structs.CARequest{ + Datacenter: "dc1", + Config: newConfig, + WriteRequest: structs.WriteRequest{Token: TestDefaultMasterToken}, + } + var reply interface{} + require.NoError(t, msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationSet", args, &reply)) + + t.Run("deny get with operator:read", func(t *testing.T) { + args := &structs.DCSpecificRequest{ + Datacenter: "dc1", + QueryOptions: structs.QueryOptions{Token: opReadToken.SecretID}, + } + + var reply structs.CAConfiguration + err = msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply) + assert.True(t, acl.IsErrPermissionDenied(err)) + }) + + t.Run("allow get with operator:write", func(t *testing.T) { + args := &structs.DCSpecificRequest{ + Datacenter: "dc1", + QueryOptions: structs.QueryOptions{Token: opWriteToken.SecretID}, + } + + var reply structs.CAConfiguration + err = msgpackrpc.CallWithCodec(codec, "ConnectCA.ConfigurationGet", args, &reply) + assert.False(t, acl.IsErrPermissionDenied(err)) + assert.Equal(t, newConfig.Config, reply.Config) + }) +} + // This test case tests that the logic around forcing a rotation without cross // signing works when requested (and is denied when not requested). This occurs // if the current CA is not able to cross sign external CA certificates. diff --git a/agent/consul/federation_state_endpoint.go b/agent/consul/federation_state_endpoint.go index a98ab83e8..88111364c 100644 --- a/agent/consul/federation_state_endpoint.go +++ b/agent/consul/federation_state_endpoint.go @@ -5,13 +5,33 @@ import ( "fmt" "time" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" memdb "github.com/hashicorp/go-memdb" ) +var FederationStateSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"federation_state", "apply"}, + Help: "", + }, + { + Name: []string{"federation_state", "get"}, + Help: "", + }, + { + Name: []string{"federation_state", "list"}, + Help: "", + }, + { + Name: []string{"federation_state", "list_mesh_gateways"}, + Help: "", + }, +} + var ( errFederationStatesNotEnabled = errors.New("Federation states are currently disabled until all servers in the datacenter support the feature") ) diff --git a/agent/consul/fsm/commands_oss.go b/agent/consul/fsm/commands_oss.go index 5a5a530c8..fae5eb1a8 100644 --- a/agent/consul/fsm/commands_oss.go +++ b/agent/consul/fsm/commands_oss.go @@ -4,11 +4,102 @@ import ( "fmt" "time" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" ) +var CommandsSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"fsm", "register"}, + Help: "Measures the time it takes to apply a catalog register operation to the FSM.", + }, + { + Name: []string{"fsm", "deregister"}, + Help: "Measures the time it takes to apply a catalog deregister operation to the FSM.", + }, + { + Name: []string{"fsm", "kvs"}, + Help: "Measures the time it takes to apply the given KV operation to the FSM.", + }, + { + Name: []string{"fsm", "session"}, + Help: "Measures the time it takes to apply the given session operation to the FSM.", + }, + { + Name: []string{"fsm", "acl"}, + Help: "Measures the time it takes to apply the given ACL operation to the FSM.", + }, + { + Name: []string{"fsm", "tombstone"}, + Help: "Measures the time it takes to apply the given tombstone operation to the FSM.", + }, + { + Name: []string{"fsm", "coordinate", "batch-update"}, + Help: "Measures the time it takes to apply the given batch coordinate update to the FSM.", + }, + { + Name: []string{"fsm", "prepared-query"}, + Help: "Measures the time it takes to apply the given prepared query update operation to the FSM.", + }, + { + Name: []string{"fsm", "txn"}, + Help: "Measures the time it takes to apply the given transaction update to the FSM.", + }, + { + Name: []string{"fsm", "autopilot"}, + Help: "Measures the time it takes to apply the given autopilot update to the FSM.", + }, + { + Name: []string{"consul", "fsm", "intention"}, + Help: "", + }, + { + Name: []string{"fsm", "intention"}, + Help: "", + }, + { + Name: []string{"consul", "fsm", "ca"}, + Help: "", + }, + { + Name: []string{"fsm", "ca", "leaf"}, + Help: "", + }, + { + Name: []string{"fsm", "acl", "token"}, + Help: "", + }, + { + Name: []string{"fsm", "ca", "leaf"}, + Help: "", + }, + { + Name: []string{"fsm", "acl", "policy"}, + Help: "", + }, + { + Name: []string{"fsm", "acl", "bindingrule"}, + Help: "", + }, + { + Name: []string{"fsm", "acl", "authmethod"}, + Help: "", + }, + { + Name: []string{"fsm", "system_metadata"}, + Help: "", + }, + // TODO(kit): We generate the config-entry fsm summaries by reading off of the request. It is + // possible to statically declare these when we know all of the names, but I didn't get to it + // in this patch. Config-entries are known though and we should add these in the future. + // { + // Name: []string{"fsm", "config_entry", req.Entry.GetKind()}, + // Help: "", + // }, +} + func init() { registerCommand(structs.RegisterRequestType, (*FSM).applyRegister) registerCommand(structs.DeregisterRequestType, (*FSM).applyDeregister) @@ -291,6 +382,11 @@ func (c *FSM) applyIntentionOperation(buf []byte, index uint64) interface{} { []metrics.Label{{Name: "op", Value: string(req.Op)}}) defer metrics.MeasureSinceWithLabels([]string{"fsm", "intention"}, time.Now(), []metrics.Label{{Name: "op", Value: string(req.Op)}}) + + if req.Mutation != nil { + return c.state.IntentionMutation(index, req.Op, req.Mutation) + } + switch req.Op { case structs.IntentionOpCreate, structs.IntentionOpUpdate: //nolint:staticcheck diff --git a/agent/consul/fsm/commands_oss_test.go b/agent/consul/fsm/commands_oss_test.go index 20a5a9de9..17f640f9a 100644 --- a/agent/consul/fsm/commands_oss_test.go +++ b/agent/consul/fsm/commands_oss_test.go @@ -10,7 +10,6 @@ import ( "github.com/golang/protobuf/proto" "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/sdk/testutil" @@ -1163,7 +1162,7 @@ func TestFSM_Autopilot(t *testing.T) { // Set the autopilot config using a request. req := structs.AutopilotSetConfigRequest{ Datacenter: "dc1", - Config: autopilot.Config{ + Config: structs.AutopilotConfig{ CleanupDeadServers: true, LastContactThreshold: 10 * time.Second, MaxTrailingLogs: 300, diff --git a/agent/consul/fsm/fsm.go b/agent/consul/fsm/fsm.go index 5b0cf9630..e0c8f26b2 100644 --- a/agent/consul/fsm/fsm.go +++ b/agent/consul/fsm/fsm.go @@ -6,13 +6,14 @@ import ( "sync" "time" - "github.com/hashicorp/consul/agent/consul/state" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/logging" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-msgpack/codec" "github.com/hashicorp/go-raftchunking" "github.com/hashicorp/raft" + + "github.com/hashicorp/consul/agent/consul/state" + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/logging" ) // command is a command method on the FSM. @@ -41,7 +42,9 @@ func registerCommand(msg structs.MessageType, fn unboundCommand) { // along with Raft to provide strong consistency. We implement // this outside the Server to avoid exposing this outside the package. type FSM struct { - logger hclog.Logger + deps Deps + logger hclog.Logger + chunker *raftchunking.ChunkingFSM // apply is built off the commands global and is used to route apply // operations to their appropriate handlers. @@ -53,28 +56,40 @@ type FSM struct { // Raft side, so doesn't need to lock this. stateLock sync.RWMutex state *state.Store - - gc *state.TombstoneGC - - chunker *raftchunking.ChunkingFSM } // New is used to construct a new FSM with a blank state. +// +// Deprecated: use NewFromDeps. func New(gc *state.TombstoneGC, logger hclog.Logger) (*FSM, error) { - if logger == nil { - logger = hclog.New(&hclog.LoggerOptions{}) + newStateStore := func() *state.Store { + return state.NewStateStore(gc) } + return NewFromDeps(Deps{Logger: logger, NewStateStore: newStateStore}), nil +} - stateNew, err := state.NewStateStore(gc) - if err != nil { - return nil, err +// Deps are dependencies used to construct the FSM. +type Deps struct { + // Logger used to emit log messages + Logger hclog.Logger + // NewStateStore returns a state.Store which the FSM will use to make changes + // to the state. + // NewStateStore will be called once when the FSM is created and again any + // time Restore() is called. + NewStateStore func() *state.Store +} + +// NewFromDeps creates a new FSM from its dependencies. +func NewFromDeps(deps Deps) *FSM { + if deps.Logger == nil { + deps.Logger = hclog.New(&hclog.LoggerOptions{}) } fsm := &FSM{ - logger: logger.Named(logging.FSM), + deps: deps, + logger: deps.Logger.Named(logging.FSM), apply: make(map[structs.MessageType]command), - state: stateNew, - gc: gc, + state: deps.NewStateStore(), } // Build out the apply dispatch table based on the registered commands. @@ -86,8 +101,7 @@ func New(gc *state.TombstoneGC, logger hclog.Logger) (*FSM, error) { } fsm.chunker = raftchunking.NewChunkingFSM(fsm, nil) - - return fsm, nil + return fsm } func (c *FSM) ChunkingFSM() *raftchunking.ChunkingFSM { @@ -149,11 +163,7 @@ func (c *FSM) Snapshot() (raft.FSMSnapshot, error) { func (c *FSM) Restore(old io.ReadCloser) error { defer old.Close() - // Create a new state store. - stateNew, err := state.NewStateStore(c.gc) - if err != nil { - return err - } + stateNew := c.deps.NewStateStore() // Set up a new restore transaction restore := stateNew.Restore() diff --git a/agent/consul/fsm/snapshot.go b/agent/consul/fsm/snapshot.go index e4c9c0bb4..696ca5645 100644 --- a/agent/consul/fsm/snapshot.go +++ b/agent/consul/fsm/snapshot.go @@ -5,6 +5,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-msgpack/codec" @@ -12,6 +13,13 @@ import ( "github.com/hashicorp/raft" ) +var SnapshotSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"fsm", "persist"}, + Help: "Measures the time it takes to persist the FSM to a raft snapshot.", + }, +} + // snapshot is used to provide a snapshot of the current // state in a way that can be accessed concurrently with operations // that may modify the live state. diff --git a/agent/consul/fsm/snapshot_oss.go b/agent/consul/fsm/snapshot_oss.go index f6bc29d9f..c604eaa40 100644 --- a/agent/consul/fsm/snapshot_oss.go +++ b/agent/consul/fsm/snapshot_oss.go @@ -1,7 +1,6 @@ package fsm import ( - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-msgpack/codec" @@ -605,7 +604,7 @@ func restorePreparedQuery(header *SnapshotHeader, restore *state.Restore, decode } func restoreAutopilot(header *SnapshotHeader, restore *state.Restore, decoder *codec.Decoder) error { - var req autopilot.Config + var req structs.AutopilotConfig if err := decoder.Decode(&req); err != nil { return err } diff --git a/agent/consul/fsm/snapshot_oss_test.go b/agent/consul/fsm/snapshot_oss_test.go index e7bc01590..21eb7a019 100644 --- a/agent/consul/fsm/snapshot_oss_test.go +++ b/agent/consul/fsm/snapshot_oss_test.go @@ -7,7 +7,6 @@ import ( "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" @@ -168,7 +167,7 @@ func TestFSM_SnapshotRestore_OSS(t *testing.T) { } require.NoError(t, fsm.state.PreparedQuerySet(14, &query)) - autopilotConf := &autopilot.Config{ + autopilotConf := &structs.AutopilotConfig{ CleanupDeadServers: true, LastContactThreshold: 100 * time.Millisecond, MaxTrailingLogs: 222, diff --git a/agent/consul/gateway_locator_test.go b/agent/consul/gateway_locator_test.go index aa496e6ae..bf33c5148 100644 --- a/agent/consul/gateway_locator_test.go +++ b/agent/consul/gateway_locator_test.go @@ -5,18 +5,18 @@ import ( "testing" "time" + memdb "github.com/hashicorp/go-memdb" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/sdk/testutil" - memdb "github.com/hashicorp/go-memdb" - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" ) func TestGatewayLocator(t *testing.T) { - state, err := state.NewStateStore(nil) - require.NoError(t, err) + state := state.NewStateStore(nil) dc1 := &structs.FederationState{ Datacenter: "dc1", @@ -362,10 +362,6 @@ func (d *testServerDelegate) blockingQuery( return err } -func newFakeStateStore() (*state.Store, error) { - return state.NewStateStore(nil) -} - func (d *testServerDelegate) IsLeader() bool { return d.isLeader } diff --git a/agent/consul/helper_test.go b/agent/consul/helper_test.go index c194ba37f..b4137a113 100644 --- a/agent/consul/helper_test.go +++ b/agent/consul/helper_test.go @@ -38,7 +38,7 @@ func waitForLeader(servers ...*Server) error { // wantPeers determines whether the server has the given // number of voting raft peers. func wantPeers(s *Server, peers int) error { - n, err := s.numPeers() + n, err := s.autopilot.NumVoters() if err != nil { return err } diff --git a/agent/consul/intention_endpoint.go b/agent/consul/intention_endpoint.go index 95cb5183d..d96e17c26 100644 --- a/agent/consul/intention_endpoint.go +++ b/agent/consul/intention_endpoint.go @@ -6,6 +6,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/consul/state" @@ -16,27 +17,27 @@ import ( "github.com/hashicorp/go-memdb" ) +var IntentionSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"consul", "intention", "apply"}, + Help: "", + }, + { + Name: []string{"intention", "apply"}, + Help: "", + }, +} + var ( // ErrIntentionNotFound is returned if the intention lookup failed. ErrIntentionNotFound = errors.New("Intention not found") ) -// NewIntentionEndpoint returns a new Intention endpoint. -func NewIntentionEndpoint(srv *Server, logger hclog.Logger) *Intention { - return &Intention{ - srv: srv, - logger: logger, - configEntryEndpoint: &ConfigEntry{srv}, - } -} - // Intention manages the Connect intentions. type Intention struct { // srv is a pointer back to the server. srv *Server logger hclog.Logger - - configEntryEndpoint *ConfigEntry } func (s *Intention) checkIntentionID(id string) (bool, error) { @@ -50,25 +51,139 @@ func (s *Intention) checkIntentionID(id string) (bool, error) { return true, nil } -// prepareApplyCreate validates that the requester has permissions to create -// the new intention, generates a new uuid for the intention and generally -// validates that the request is well-formed -// -// Returns an existing service-intentions config entry for this destination if -// one exists. -func (s *Intention) prepareApplyCreate( - ident structs.ACLIdentity, +var ErrIntentionsNotUpgradedYet = errors.New("Intentions are read only while being upgraded to config entries") + +// legacyUpgradeCheck fast fails a write request using the legacy intention +// RPCs if the system is known to be mid-upgrade. This is purely a perf +// optimization and the actual real enforcement happens in the FSM. It would be +// wasteful to round trip all the way through raft to have it fail for +// known-up-front reasons, hence why we check it twice. +func (s *Intention) legacyUpgradeCheck() error { + usingConfigEntries, err := s.srv.fsm.State().AreIntentionsInConfigEntries() + if err != nil { + return fmt.Errorf("system metadata lookup failed: %v", err) + } + if !usingConfigEntries { + return ErrIntentionsNotUpgradedYet + } + return nil +} + +// Apply creates or updates an intention in the data store. +func (s *Intention) Apply(args *structs.IntentionRequest, reply *string) error { + // Exit early if Connect hasn't been enabled. + if !s.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + + // Ensure that all service-intentions config entry writes go to the primary + // datacenter. These will then be replicated to all the other datacenters. + args.Datacenter = s.srv.config.PrimaryDatacenter + + if done, err := s.srv.ForwardRPC("Intention.Apply", args, args, reply); done { + return err + } + defer metrics.MeasureSince([]string{"consul", "intention", "apply"}, time.Now()) + defer metrics.MeasureSince([]string{"intention", "apply"}, time.Now()) + + if err := s.legacyUpgradeCheck(); err != nil { + return err + } + + if args.Mutation != nil { + return fmt.Errorf("Mutation field is internal only and must not be set via RPC") + } + + // Always set a non-nil intention to avoid nil-access below + if args.Intention == nil { + args.Intention = &structs.Intention{} + } + + // Get the ACL token for the request for the checks below. + var entMeta structs.EnterpriseMeta + ident, authz, err := s.srv.ResolveTokenIdentityAndDefaultMeta(args.Token, &entMeta, nil) + if err != nil { + return err + } + + var accessorID string + if ident != nil { + accessorID = ident.ID() + } + + var ( + mut *structs.IntentionMutation + legacyWrite bool + ) + switch args.Op { + case structs.IntentionOpCreate: + legacyWrite = true + mut, err = s.computeApplyChangesLegacyCreate(accessorID, authz, &entMeta, args) + case structs.IntentionOpUpdate: + legacyWrite = true + mut, err = s.computeApplyChangesLegacyUpdate(accessorID, authz, &entMeta, args) + case structs.IntentionOpUpsert: + legacyWrite = false + mut, err = s.computeApplyChangesUpsert(accessorID, authz, &entMeta, args) + case structs.IntentionOpDelete: + if args.Intention.ID == "" { + legacyWrite = false + mut, err = s.computeApplyChangesDelete(accessorID, authz, &entMeta, args) + } else { + legacyWrite = true + mut, err = s.computeApplyChangesLegacyDelete(accessorID, authz, &entMeta, args) + } + case structs.IntentionOpDeleteAll: + // This is an internal operation initiated by the leader and is not + // exposed for general RPC use. + return fmt.Errorf("Invalid Intention operation: %v", args.Op) + default: + return fmt.Errorf("Invalid Intention operation: %v", args.Op) + } + + if err != nil { + return err + } + + if legacyWrite { + *reply = args.Intention.ID + } else { + *reply = "" + } + + // Switch to the config entry manipulating flavor: + args.Mutation = mut + args.Intention = nil + + resp, err := s.srv.raftApply(structs.IntentionRequestType, args) + if err != nil { + return err + } + if respErr, ok := resp.(error); ok { + return respErr + } + + return nil +} + +func (s *Intention) computeApplyChangesLegacyCreate( + accessorID string, authz acl.Authorizer, entMeta *structs.EnterpriseMeta, args *structs.IntentionRequest, -) (*structs.ServiceIntentionsConfigEntry, error) { +) (*structs.IntentionMutation, error) { + // This variant is just for legacy UUID-based intentions. + + args.Intention.DefaultNamespaces(entMeta) + if !args.Intention.CanWrite(authz) { - var accessorID string - if ident != nil { - accessorID = ident.ID() - } + sn := args.Intention.SourceServiceName() + dn := args.Intention.DestinationServiceName() // todo(kit) Migrate intention access denial logging over to audit logging when we implement it - s.logger.Warn("Intention creation denied due to ACLs", "intention", args.Intention.ID, "accessorID", accessorID) + s.logger.Warn("Intention creation denied due to ACLs", + "source", sn.String(), + "destination", dn.String(), + "accessorID", accessorID) return nil, acl.ErrPermissionDenied } @@ -94,8 +209,6 @@ func (s *Intention) prepareApplyCreate( args.Intention.SourceType = structs.IntentionSourceConsul } - args.Intention.DefaultNamespaces(entMeta) - if err := s.validateEnterpriseIntention(args.Intention); err != nil { return nil, err } @@ -105,74 +218,59 @@ func (s *Intention) prepareApplyCreate( return nil, err } - _, configEntry, err := s.srv.fsm.State().ConfigEntry(nil, structs.ServiceIntentions, args.Intention.DestinationName, args.Intention.DestinationEnterpriseMeta()) - if err != nil { - return nil, fmt.Errorf("service-intentions config entry lookup failed: %v", err) - } else if configEntry == nil { - return nil, nil + // NOTE: if the append of this source causes a duplicate source name the + // config entry validation will fail so we don't have to check that + // explicitly here. + + mut := &structs.IntentionMutation{ + Destination: args.Intention.DestinationServiceName(), + Value: args.Intention.ToSourceIntention(true), } - return configEntry.(*structs.ServiceIntentionsConfigEntry), nil + // Set the created/updated times. If this is an update instead of an insert + // the UpdateOver() will fix it up appropriately. + now := time.Now().UTC() + mut.Value.LegacyCreateTime = timePointer(now) + mut.Value.LegacyUpdateTime = timePointer(now) + + return mut, nil } -// prepareApplyUpdateLegacy validates that the requester has permissions on both the updated and existing -// intention as well as generally validating that the request is well-formed -// -// Returns an existing service-intentions config entry for this destination if -// one exists. -func (s *Intention) prepareApplyUpdateLegacy( - ident structs.ACLIdentity, +func (s *Intention) computeApplyChangesLegacyUpdate( + accessorID string, authz acl.Authorizer, entMeta *structs.EnterpriseMeta, args *structs.IntentionRequest, -) (*structs.ServiceIntentionsConfigEntry, error) { - if !args.Intention.CanWrite(authz) { - var accessorID string - if ident != nil { - accessorID = ident.ID() - } - // todo(kit) Migrate intention access denial logging over to audit logging when we implement it - s.logger.Warn("Update operation on intention denied due to ACLs", "intention", args.Intention.ID, "accessorID", accessorID) - return nil, acl.ErrPermissionDenied - } +) (*structs.IntentionMutation, error) { + // This variant is just for legacy UUID-based intentions. - _, configEntry, ixn, err := s.srv.fsm.State().IntentionGet(nil, args.Intention.ID) + _, _, ixn, err := s.srv.fsm.State().IntentionGet(nil, args.Intention.ID) if err != nil { return nil, fmt.Errorf("Intention lookup failed: %v", err) } - if ixn == nil || configEntry == nil { + if ixn == nil { return nil, fmt.Errorf("Cannot modify non-existent intention: '%s'", args.Intention.ID) } - // Perform the ACL check that we have write to the old intention too, - // which must be true to perform any rename. This is the only ACL enforcement - // done for deletions and a secondary enforcement for updates. if !ixn.CanWrite(authz) { - var accessorID string - if ident != nil { - accessorID = ident.ID() - } // todo(kit) Migrate intention access denial logging over to audit logging when we implement it s.logger.Warn("Update operation on intention denied due to ACLs", "intention", args.Intention.ID, "accessorID", accessorID) return nil, acl.ErrPermissionDenied } + args.Intention.DefaultNamespaces(entMeta) + // Prior to v1.9.0 renames of the destination side of an intention were // allowed, but that behavior doesn't work anymore. if ixn.DestinationServiceName() != args.Intention.DestinationServiceName() { return nil, fmt.Errorf("Cannot modify DestinationNS or DestinationName for an intention once it exists.") } - // We always update the updatedat field. - args.Intention.UpdatedAt = time.Now().UTC() - // Default source type if args.Intention.SourceType == "" { args.Intention.SourceType = structs.IntentionSourceConsul } - args.Intention.DefaultNamespaces(entMeta) - if err := s.validateEnterpriseIntention(args.Intention); err != nil { return nil, err } @@ -184,329 +282,149 @@ func (s *Intention) prepareApplyUpdateLegacy( return nil, err } - return configEntry, nil + mut := &structs.IntentionMutation{ + ID: args.Intention.ID, + Value: args.Intention.ToSourceIntention(true), + } + + // Set the created/updated times. If this is an update instead of an insert + // the UpdateOver() will fix it up appropriately. + now := time.Now().UTC() + mut.Value.LegacyCreateTime = timePointer(now) + mut.Value.LegacyUpdateTime = timePointer(now) + + return mut, nil } -// prepareApplyDeleteLegacy ensures that the intention specified by the ID in the request exists -// and that the requester is authorized to delete it -// -// Returns an existing service-intentions config entry for this destination if -// one exists. -func (s *Intention) prepareApplyDeleteLegacy( - ident structs.ACLIdentity, +func (s *Intention) computeApplyChangesUpsert( + accessorID string, authz acl.Authorizer, + entMeta *structs.EnterpriseMeta, args *structs.IntentionRequest, -) (*structs.ServiceIntentionsConfigEntry, error) { - // If this is not a create, then we have to verify the ID. - _, configEntry, ixn, err := s.srv.fsm.State().IntentionGet(nil, args.Intention.ID) +) (*structs.IntentionMutation, error) { + // This variant is just for config-entry based intentions. + + if args.Intention.ID != "" { + // This is a new-style only endpoint + return nil, fmt.Errorf("ID must not be specified") + } + + args.Intention.DefaultNamespaces(entMeta) + + if !args.Intention.CanWrite(authz) { + sn := args.Intention.SourceServiceName() + dn := args.Intention.DestinationServiceName() + // todo(kit) Migrate intention access denial logging over to audit logging when we implement it + s.logger.Warn("Intention upsert denied due to ACLs", + "source", sn.String(), + "destination", dn.String(), + "accessorID", accessorID) + return nil, acl.ErrPermissionDenied + } + + _, prevEntry, err := s.srv.fsm.State().ConfigEntry(nil, structs.ServiceIntentions, args.Intention.DestinationName, args.Intention.DestinationEnterpriseMeta()) if err != nil { return nil, fmt.Errorf("Intention lookup failed: %v", err) } - if ixn == nil || configEntry == nil { + + if prevEntry == nil { + // Meta is NOT permitted here, as it would need to be persisted on + // the enclosing config entry. + if len(args.Intention.Meta) > 0 { + return nil, fmt.Errorf("Meta must not be specified") + } + } else { + if len(args.Intention.Meta) > 0 { + // Meta is NOT permitted here, but there is one exception. If + // you are updating a previous record, but that record lives + // within a config entry that itself has Meta, then you may + // incidentally ship the Meta right back to consul. + // + // In that case if Meta is provided, it has to be a perfect + // match for what is already on the enclosing config entry so + // it's safe to discard. + if !equalStringMaps(prevEntry.GetMeta(), args.Intention.Meta) { + return nil, fmt.Errorf("Meta must not be specified, or should be unchanged during an update.") + } + + // Now it is safe to discard + args.Intention.Meta = nil + } + } + + return &structs.IntentionMutation{ + Destination: args.Intention.DestinationServiceName(), + Source: args.Intention.SourceServiceName(), + Value: args.Intention.ToSourceIntention(false), + }, nil +} + +func (s *Intention) computeApplyChangesLegacyDelete( + accessorID string, + authz acl.Authorizer, + entMeta *structs.EnterpriseMeta, + args *structs.IntentionRequest, +) (*structs.IntentionMutation, error) { + _, _, ixn, err := s.srv.fsm.State().IntentionGet(nil, args.Intention.ID) + if err != nil { + return nil, fmt.Errorf("Intention lookup failed: %v", err) + } + if ixn == nil { return nil, fmt.Errorf("Cannot delete non-existent intention: '%s'", args.Intention.ID) } - // Perform the ACL check that we have write to the old intention. This is - // the only ACL enforcement done for deletions and a secondary enforcement - // for updates. if !ixn.CanWrite(authz) { - var accessorID string - if ident != nil { - accessorID = ident.ID() - } // todo(kit) Migrate intention access denial logging over to audit logging when we implement it s.logger.Warn("Deletion operation on intention denied due to ACLs", "intention", args.Intention.ID, "accessorID", accessorID) return nil, acl.ErrPermissionDenied } - return configEntry, nil + return &structs.IntentionMutation{ + ID: args.Intention.ID, + }, nil } -var ErrIntentionsNotUpgradedYet = errors.New("Intentions are read only while being upgraded to config entries") - -// legacyUpgradeCheck fast fails a write request using the legacy intention -// RPCs if the system is known to be mid-upgrade. This is purely a perf -// optimization and the actual real enforcement happens in the FSM. It would be -// wasteful to round trip all the way through raft to have it fail for -// known-up-front reasons, hence why we check it twice. -func (s *Intention) legacyUpgradeCheck() error { - usingConfigEntries, err := s.srv.fsm.State().AreIntentionsInConfigEntries() - if err != nil { - return fmt.Errorf("system metadata lookup failed: %v", err) - } - if !usingConfigEntries { - return ErrIntentionsNotUpgradedYet - } - return nil -} - -// Apply creates or updates an intention in the data store. -func (s *Intention) Apply( +func (s *Intention) computeApplyChangesDelete( + accessorID string, + authz acl.Authorizer, + entMeta *structs.EnterpriseMeta, args *structs.IntentionRequest, - reply *string) error { - - // Ensure that all service-intentions config entry writes go to the primary - // datacenter. These will then be replicated to all the other datacenters. - args.Datacenter = s.srv.config.PrimaryDatacenter - - if done, err := s.srv.ForwardRPC("Intention.Apply", args, args, reply); done { - return err - } - defer metrics.MeasureSince([]string{"consul", "intention", "apply"}, time.Now()) - defer metrics.MeasureSince([]string{"intention", "apply"}, time.Now()) - - if err := s.legacyUpgradeCheck(); err != nil { - return err - } - - // Always set a non-nil intention to avoid nil-access below - if args.Intention == nil { - args.Intention = &structs.Intention{} - } - - // Get the ACL token for the request for the checks below. - var entMeta structs.EnterpriseMeta - ident, authz, err := s.srv.ResolveTokenIdentityAndDefaultMeta(args.Token, &entMeta, nil) - if err != nil { - return err - } - - var ( - prevEntry *structs.ServiceIntentionsConfigEntry - upsertEntry *structs.ServiceIntentionsConfigEntry - legacyWrite bool - noop bool - ) - switch args.Op { - case structs.IntentionOpCreate: - legacyWrite = true - - // This variant is just for legacy UUID-based intentions. - prevEntry, err = s.prepareApplyCreate(ident, authz, &entMeta, args) - if err != nil { - return err - } - - if prevEntry == nil { - upsertEntry = args.Intention.ToConfigEntry(true) - } else { - upsertEntry = prevEntry.Clone() - upsertEntry.Sources = append(upsertEntry.Sources, args.Intention.ToSourceIntention(true)) - } - - case structs.IntentionOpUpdate: - // This variant is just for legacy UUID-based intentions. - legacyWrite = true - - prevEntry, err = s.prepareApplyUpdateLegacy(ident, authz, &entMeta, args) - if err != nil { - return err - } - - upsertEntry = prevEntry.Clone() - for i, src := range upsertEntry.Sources { - if src.LegacyID == args.Intention.ID { - upsertEntry.Sources[i] = args.Intention.ToSourceIntention(true) - break - } - } - - case structs.IntentionOpUpsert: - // This variant is just for config-entry based intentions. - legacyWrite = false - - if args.Intention.ID != "" { - // This is a new-style only endpoint - return fmt.Errorf("ID must not be specified") - } - - args.Intention.DefaultNamespaces(&entMeta) - - prevEntry, err = s.getServiceIntentionsConfigEntry(args.Intention.DestinationName, args.Intention.DestinationEnterpriseMeta()) - if err != nil { - return err - } +) (*structs.IntentionMutation, error) { + args.Intention.DefaultNamespaces(entMeta) + if !args.Intention.CanWrite(authz) { sn := args.Intention.SourceServiceName() - - // TODO(intentions): have service-intentions validation functions - // return structured errors so that we can rewrite the field prefix - // here so that the validation errors are not misleading. - if prevEntry == nil { - // Meta is NOT permitted here, as it would need to be persisted on - // the enclosing config entry. - if len(args.Intention.Meta) > 0 { - return fmt.Errorf("Meta must not be specified") - } - - upsertEntry = args.Intention.ToConfigEntry(false) - } else { - upsertEntry = prevEntry.Clone() - - if len(args.Intention.Meta) > 0 { - // Meta is NOT permitted here, but there is one exception. If - // you are updating a previous record, but that record lives - // within a config entry that itself has Meta, then you may - // incidentally ship the Meta right back to consul. - // - // In that case if Meta is provided, it has to be a perfect - // match for what is already on the enclosing config entry so - // it's safe to discard. - if !equalStringMaps(upsertEntry.Meta, args.Intention.Meta) { - return fmt.Errorf("Meta must not be specified, or should be unchanged during an update.") - } - - // Now it is safe to discard - args.Intention.Meta = nil - } - - found := false - for i, src := range upsertEntry.Sources { - if src.SourceServiceName() == sn { - upsertEntry.Sources[i] = args.Intention.ToSourceIntention(false) - found = true - break - } - } - if !found { - upsertEntry.Sources = append(upsertEntry.Sources, args.Intention.ToSourceIntention(false)) - } - } - - case structs.IntentionOpDelete: - // There are two ways to get this request: - // - // 1) legacy: the ID field is populated - // 2) config-entry: the ID field is NOT populated - - if args.Intention.ID == "" { - // config-entry style: no LegacyID - legacyWrite = false - - args.Intention.DefaultNamespaces(&entMeta) - - prevEntry, err = s.getServiceIntentionsConfigEntry(args.Intention.DestinationName, args.Intention.DestinationEnterpriseMeta()) - if err != nil { - return err - } - - // NOTE: validation errors may be misleading! - noop = true - if prevEntry != nil { - sn := args.Intention.SourceServiceName() - - upsertEntry = prevEntry.Clone() - for i, src := range upsertEntry.Sources { - if src.SourceServiceName() == sn { - // Delete slice element: https://github.com/golang/go/wiki/SliceTricks#delete - // a = append(a[:i], a[i+1:]...) - upsertEntry.Sources = append(upsertEntry.Sources[:i], upsertEntry.Sources[i+1:]...) - - if len(upsertEntry.Sources) == 0 { - upsertEntry.Sources = nil - } - noop = false - break - } - } - } - - } else { - // legacy style: LegacyID required - legacyWrite = true - - prevEntry, err = s.prepareApplyDeleteLegacy(ident, authz, args) - if err != nil { - return err - } - - upsertEntry = prevEntry.Clone() - for i, src := range upsertEntry.Sources { - if src.LegacyID == args.Intention.ID { - // Delete slice element: https://github.com/golang/go/wiki/SliceTricks#delete - // a = append(a[:i], a[i+1:]...) - upsertEntry.Sources = append(upsertEntry.Sources[:i], upsertEntry.Sources[i+1:]...) - - if len(upsertEntry.Sources) == 0 { - upsertEntry.Sources = nil - } - break - } - } - } - - case structs.IntentionOpDeleteAll: - // This is an internal operation initiated by the leader and is not - // exposed for general RPC use. - fallthrough - default: - return fmt.Errorf("Invalid Intention operation: %v", args.Op) + dn := args.Intention.DestinationServiceName() + // todo(kit) Migrate intention access denial logging over to audit logging when we implement it + s.logger.Warn("Intention delete denied due to ACLs", + "source", sn.String(), + "destination", dn.String(), + "accessorID", accessorID) + return nil, acl.ErrPermissionDenied } - if !noop && prevEntry != nil && legacyWrite && !prevEntry.LegacyIDFieldsAreAllSet() { - sn := prevEntry.DestinationServiceName() - return fmt.Errorf("cannot use legacy intention API to edit intentions with a destination of %q after editing them via a service-intentions config entry", sn.String()) + // Pre-flight to avoid pointless raft operations. + _, _, ixn, err := s.srv.fsm.State().IntentionGetExact(nil, args.Intention.ToExact()) + if err != nil { + return nil, fmt.Errorf("Intention lookup failed: %v", err) + } + if ixn == nil { + return nil, nil } - // setup the reply which will have been filled in by one of the preparedApply* funcs - if legacyWrite { - *reply = args.Intention.ID - } else { - *reply = "" - } - - if noop { - return nil - } - - // Commit indirectly by invoking the other RPC handler directly. - configReq := &structs.ConfigEntryRequest{ - Datacenter: args.Datacenter, - WriteRequest: args.WriteRequest, - } - if upsertEntry == nil || len(upsertEntry.Sources) == 0 { - configReq.Op = structs.ConfigEntryDelete - configReq.Entry = &structs.ServiceIntentionsConfigEntry{ - Kind: structs.ServiceIntentions, - Name: prevEntry.Name, - EnterpriseMeta: prevEntry.EnterpriseMeta, - } - - var ignored struct{} - return s.configEntryEndpoint.Delete(configReq, &ignored) - } else { - // Update config entry CAS - configReq.Op = structs.ConfigEntryUpsertCAS - configReq.Entry = upsertEntry - - var normalizeAndValidateFn func(raw structs.ConfigEntry) error - if legacyWrite { - normalizeAndValidateFn = func(raw structs.ConfigEntry) error { - entry := raw.(*structs.ServiceIntentionsConfigEntry) - if err := entry.LegacyNormalize(); err != nil { - return err - } - - return entry.LegacyValidate() - } - } - - var applied bool - err := s.configEntryEndpoint.applyInternal(configReq, &applied, normalizeAndValidateFn) - if err != nil { - return err - } - if !applied { - return fmt.Errorf("config entry failed to persist due to CAS failure: kind=%q, name=%q", upsertEntry.Kind, upsertEntry.Name) - } - return nil - } + return &structs.IntentionMutation{ + Destination: args.Intention.DestinationServiceName(), + Source: args.Intention.SourceServiceName(), + }, nil } // Get returns a single intention by ID. -func (s *Intention) Get( - args *structs.IntentionQueryRequest, - reply *structs.IndexedIntentions) error { +func (s *Intention) Get(args *structs.IntentionQueryRequest, reply *structs.IndexedIntentions) error { + // Exit early if Connect hasn't been enabled. + if !s.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + // Forward if necessary if done, err := s.srv.ForwardRPC("Intention.Get", args, args, reply); done { return err @@ -579,9 +497,12 @@ func (s *Intention) Get( } // List returns all the intentions. -func (s *Intention) List( - args *structs.IntentionListRequest, - reply *structs.IndexedIntentions) error { +func (s *Intention) List(args *structs.IntentionListRequest, reply *structs.IndexedIntentions) error { + // Exit early if Connect hasn't been enabled. + if !s.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + // Forward if necessary if done, err := s.srv.ForwardRPC("Intention.List", args, args, reply); done { return err @@ -646,9 +567,12 @@ func (s *Intention) List( } // Match returns the set of intentions that match the given source/destination. -func (s *Intention) Match( - args *structs.IntentionQueryRequest, - reply *structs.IndexedIntentionMatches) error { +func (s *Intention) Match(args *structs.IntentionQueryRequest, reply *structs.IndexedIntentionMatches) error { + // Exit early if Connect hasn't been enabled. + if !s.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + // Forward if necessary if done, err := s.srv.ForwardRPC("Intention.Match", args, args, reply); done { return err @@ -717,9 +641,12 @@ func (s *Intention) Match( // Note: Whenever the logic for this method is changed, you should take // a look at the agent authorize endpoint (agent/agent_endpoint.go) since // the logic there is similar. -func (s *Intention) Check( - args *structs.IntentionQueryRequest, - reply *structs.IntentionQueryCheckResponse) error { +func (s *Intention) Check(args *structs.IntentionQueryRequest, reply *structs.IntentionQueryCheckResponse) error { + // Exit early if Connect hasn't been enabled. + if !s.srv.config.ConnectEnabled { + return ErrConnectNotEnabled + } + // Forward maybe if done, err := s.srv.ForwardRPC("Intention.Check", args, args, reply); done { return err @@ -839,23 +766,6 @@ func (s *Intention) validateEnterpriseIntention(ixn *structs.Intention) error { return nil } -func (s *Intention) getServiceIntentionsConfigEntry(name string, entMeta *structs.EnterpriseMeta) (*structs.ServiceIntentionsConfigEntry, error) { - _, raw, err := s.srv.fsm.State().ConfigEntry(nil, structs.ServiceIntentions, name, entMeta) - if err != nil { - return nil, fmt.Errorf("Intention lookup failed: %v", err) - } - - if raw == nil { - return nil, nil - } - - configEntry, ok := raw.(*structs.ServiceIntentionsConfigEntry) - if !ok { - return nil, fmt.Errorf("invalid service config type %T", raw) - } - return configEntry, nil -} - func equalStringMaps(a, b map[string]string) bool { if len(a) != len(b) { return false diff --git a/agent/consul/internal_endpoint_test.go b/agent/consul/internal_endpoint_test.go index 2fac2eb28..cc919c19e 100644 --- a/agent/consul/internal_endpoint_test.go +++ b/agent/consul/internal_endpoint_test.go @@ -1622,6 +1622,8 @@ func TestInternal_ServiceTopology(t *testing.T) { // web and web-proxy on node bar - upstream: redis // web and web-proxy on node baz - upstream: redis // redis and redis-proxy on node zip + // wildcard deny intention + // web -> redis exact intentino registerTestTopologyEntries(t, codec, "") var ( @@ -1650,6 +1652,9 @@ func TestInternal_ServiceTopology(t *testing.T) { Allowed: false, HasPermissions: false, ExternalSource: "nomad", + + // From wildcard deny + HasExact: false, }, } require.Equal(r, expectUp, out.ServiceTopology.UpstreamDecisions) @@ -1675,6 +1680,9 @@ func TestInternal_ServiceTopology(t *testing.T) { Allowed: false, HasPermissions: false, ExternalSource: "nomad", + + // From wildcard deny + HasExact: false, }, } require.Equal(r, expectDown, out.ServiceTopology.DownstreamDecisions) @@ -1686,6 +1694,7 @@ func TestInternal_ServiceTopology(t *testing.T) { redis.String(): { Allowed: false, HasPermissions: true, + HasExact: true, }, } require.Equal(r, expectUp, out.ServiceTopology.UpstreamDecisions) @@ -1712,6 +1721,7 @@ func TestInternal_ServiceTopology(t *testing.T) { web.String(): { Allowed: false, HasPermissions: true, + HasExact: true, }, } require.Equal(r, expectDown, out.ServiceTopology.DownstreamDecisions) diff --git a/agent/consul/issue_test.go b/agent/consul/issue_test.go index 67c371f7d..516e42ff9 100644 --- a/agent/consul/issue_test.go +++ b/agent/consul/issue_test.go @@ -4,11 +4,13 @@ import ( "reflect" "testing" + "github.com/hashicorp/go-hclog" + "github.com/hashicorp/raft" + consulfsm "github.com/hashicorp/consul/agent/consul/fsm" + "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" - "github.com/hashicorp/consul/sdk/testutil" - "github.com/hashicorp/raft" ) func makeLog(buf []byte) *raft.Log { @@ -23,11 +25,12 @@ func makeLog(buf []byte) *raft.Log { // Testing for GH-300 and GH-279 func TestHealthCheckRace(t *testing.T) { t.Parallel() - logger := testutil.Logger(t) - fsm, err := consulfsm.New(nil, logger) - if err != nil { - t.Fatalf("err: %v", err) - } + fsm := consulfsm.NewFromDeps(consulfsm.Deps{ + Logger: hclog.New(nil), + NewStateStore: func() *state.Store { + return state.NewStateStore(nil) + }, + }) state := fsm.State() req := structs.RegisterRequest{ diff --git a/agent/consul/kvs_endpoint.go b/agent/consul/kvs_endpoint.go index 04dee57b6..c6aee9380 100644 --- a/agent/consul/kvs_endpoint.go +++ b/agent/consul/kvs_endpoint.go @@ -6,6 +6,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" @@ -14,6 +15,13 @@ import ( "github.com/hashicorp/go-memdb" ) +var KVSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"kvs", "apply"}, + Help: "Measures the time it takes to complete an update to the KV store.", + }, +} + // KVS endpoint is used to manipulate the Key-Value store type KVS struct { srv *Server diff --git a/agent/consul/leader.go b/agent/consul/leader.go index d9a43c9b7..1fcef0624 100644 --- a/agent/consul/leader.go +++ b/agent/consul/leader.go @@ -11,8 +11,8 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" @@ -28,6 +28,21 @@ import ( "golang.org/x/time/rate" ) +var LeaderSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"leader", "barrier"}, + Help: "Measures the time spent waiting for the raft barrier upon gaining leadership.", + }, + { + Name: []string{"leader", "reconcileMember"}, + Help: "Measures the time spent updating the raft store for a single serf member's information.", + }, + { + Name: []string{"leader", "reapTombstones"}, + Help: "Measures the time spent clearing tombstones.", + }, +} + const ( newLeaderEvent = "consul:new-leader" barrierWriteTimeout = 2 * time.Minute @@ -37,10 +52,6 @@ var ( // caRootPruneInterval is how often we check for stale CARoots to remove. caRootPruneInterval = time.Hour - // minAutopilotVersion is the minimum Consul version in which Autopilot features - // are supported. - minAutopilotVersion = version.Must(version.NewVersion("0.8.0")) - // minCentralizedConfigVersion is the minimum Consul version in which centralized // config is supported minCentralizedConfigVersion = version.Must(version.NewVersion("1.5.0")) @@ -151,6 +162,8 @@ func (s *Server) leadershipTransfer() error { // leaderLoop runs as long as we are the leader to run various // maintenance activities func (s *Server) leaderLoop(stopCh chan struct{}) { + stopCtx := &lib.StopChannelContext{StopCh: stopCh} + // Fire a user event indicating a new leader payload := []byte(s.config.NodeName) for name, segment := range s.LANSegments() { @@ -183,7 +196,7 @@ RECONCILE: // Check if we need to handle initial leadership actions if !establishedLeader { - if err := s.establishLeadership(); err != nil { + if err := s.establishLeadership(stopCtx); err != nil { s.logger.Error("failed to establish leadership", "error", err) // Immediately revoke leadership since we didn't successfully // establish leadership. @@ -256,7 +269,7 @@ WAIT: // leader, which means revokeLeadership followed by an // establishLeadership(). s.revokeLeadership() - err := s.establishLeadership() + err := s.establishLeadership(stopCtx) errCh <- err // in case establishLeadership failed, we will try to @@ -289,7 +302,7 @@ WAIT: // to invoke an initial barrier. The barrier is used to ensure any // previously inflight transactions have been committed and that our // state is up-to-date. -func (s *Server) establishLeadership() error { +func (s *Server) establishLeadership(ctx context.Context) error { start := time.Now() // check for the upgrade here - this helps us transition to new ACLs much // quicker if this is a new cluster or this is a test agent @@ -328,7 +341,7 @@ func (s *Server) establishLeadership() error { } s.getOrCreateAutopilotConfig() - s.autopilot.Start() + s.autopilot.Start(ctx) // todo(kyhavlov): start a goroutine here for handling periodic CA rotation if err := s.initializeCA(); err != nil { @@ -978,7 +991,7 @@ func (s *Server) stopFederationStateReplication() { } // getOrCreateAutopilotConfig is used to get the autopilot config, initializing it if necessary -func (s *Server) getOrCreateAutopilotConfig() *autopilot.Config { +func (s *Server) getOrCreateAutopilotConfig() *structs.AutopilotConfig { logger := s.loggers.Named(logging.Autopilot) state := s.fsm.State() _, config, err := state.AutopilotConfig() @@ -990,11 +1003,6 @@ func (s *Server) getOrCreateAutopilotConfig() *autopilot.Config { return config } - if ok, _ := ServersInDCMeetMinimumVersion(s, s.config.Datacenter, minAutopilotVersion); !ok { - logger.Warn("can't initialize until all servers are >= " + minAutopilotVersion.String()) - return nil - } - config = s.config.AutopilotConfig req := structs.AutopilotSetConfigRequest{Config: *config} if _, err = s.raftApply(structs.AutopilotRequestType, req); err != nil { @@ -1025,18 +1033,32 @@ func (s *Server) bootstrapConfigEntries(entries []structs.ConfigEntry) error { state := s.fsm.State() - // Do a quick preflight check to see if someone is trying to upgrade from - // an older pre-1.9.0 version of consul with intentions AND are trying to - // bootstrap a service-intentions config entry at the same time. + // Do some quick preflight checks to see if someone is doing something + // that's not allowed at this time: + // + // - Trying to upgrade from an older pre-1.9.0 version of consul with + // intentions AND are trying to bootstrap a service-intentions config entry + // at the same time. + // + // - Trying to insert service-intentions config entries when connect is + // disabled. + usingConfigEntries, err := s.fsm.State().AreIntentionsInConfigEntries() if err != nil { return fmt.Errorf("Failed to determine if we are migrating intentions yet: %v", err) } - if !usingConfigEntries { + + if !usingConfigEntries || !s.config.ConnectEnabled { for _, entry := range entries { if entry.GetKind() == structs.ServiceIntentions { - return fmt.Errorf("Refusing to apply configuration entry %q / %q because intentions are still being migrated to config entries: %v", - entry.GetKind(), entry.GetName(), err) + if !s.config.ConnectEnabled { + return fmt.Errorf("Refusing to apply configuration entry %q / %q because Connect must be enabled to bootstrap intentions", + entry.GetKind(), entry.GetName()) + } + if !usingConfigEntries { + return fmt.Errorf("Refusing to apply configuration entry %q / %q because intentions are still being migrated to config entries", + entry.GetKind(), entry.GetName()) + } } } } @@ -1208,7 +1230,9 @@ func (s *Server) handleAliveMember(member serf.Member) error { Warning: 1, }, Meta: map[string]string{ + // DEPRECATED - remove nonvoter in favor of read_replica in a future version of consul "non_voter": strconv.FormatBool(member.Tags["nonvoter"] == "1"), + "read_replica": strconv.FormatBool(member.Tags["read_replica"] == "1"), "raft_version": strconv.Itoa(parts.RaftVersion), "serf_protocol_current": strconv.FormatUint(uint64(member.ProtocolCur), 10), "serf_protocol_min": strconv.FormatUint(uint64(member.ProtocolMin), 10), @@ -1362,8 +1386,8 @@ func (s *Server) handleDeregisterMember(reason string, member serf.Member) error } // Remove from Raft peers if this was a server - if valid, parts := metadata.IsConsulServer(member); valid { - if err := s.removeConsulServer(member, parts.Port); err != nil { + if valid, _ := metadata.IsConsulServer(member); valid { + if err := s.removeConsulServer(member); err != nil { return err } } @@ -1405,135 +1429,31 @@ func (s *Server) joinConsulServer(m serf.Member, parts *metadata.Server) error { } } - // Processing ourselves could result in trying to remove ourselves to - // fix up our address, which would make us step down. This is only - // safe to attempt if there are multiple servers available. - configFuture := s.raft.GetConfiguration() - if err := configFuture.Error(); err != nil { - s.logger.Error("failed to get raft configuration", "error", err) - return err - } - if m.Name == s.config.NodeName { - if l := len(configFuture.Configuration().Servers); l < 3 { - s.logger.Debug("Skipping self join check for node since the cluster is too small", "node", m.Name) - return nil - } - } + // We used to do a check here and prevent adding the server if the cluster size was too small (1 or 2 servers) as a means + // of preventing the case where we may remove ourselves and cause a loss of leadership. The Autopilot AddServer function + // will now handle simple address updates better and so long as the address doesn't conflict with another node + // it will not require a removal but will instead just update the address. If it would require a removal of other nodes + // due to conflicts then the logic regarding cluster sizes will kick in and prevent doing anything dangerous that could + // cause loss of leadership. - // See if it's already in the configuration. It's harmless to re-add it - // but we want to avoid doing that if possible to prevent useless Raft - // log entries. If the address is the same but the ID changed, remove the - // old server before adding the new one. - addr := (&net.TCPAddr{IP: m.Addr, Port: parts.Port}).String() - minRaftProtocol, err := s.autopilot.MinRaftProtocol() + // get the autpilot library version of a server from the serf member + apServer, err := s.autopilotServer(m) if err != nil { return err } - for _, server := range configFuture.Configuration().Servers { - // No-op if the raft version is too low - if server.Address == raft.ServerAddress(addr) && (minRaftProtocol < 2 || parts.RaftVersion < 3) { - return nil - } - // If the address or ID matches an existing server, see if we need to remove the old one first - if server.Address == raft.ServerAddress(addr) || server.ID == raft.ServerID(parts.ID) { - // Exit with no-op if this is being called on an existing server - if server.Address == raft.ServerAddress(addr) && server.ID == raft.ServerID(parts.ID) { - return nil - } - future := s.raft.RemoveServer(server.ID, 0, 0) - if server.Address == raft.ServerAddress(addr) { - if err := future.Error(); err != nil { - return fmt.Errorf("error removing server with duplicate address %q: %s", server.Address, err) - } - s.logger.Info("removed server with duplicate address", "address", server.Address) - } else { - if err := future.Error(); err != nil { - return fmt.Errorf("error removing server with duplicate ID %q: %s", server.ID, err) - } - s.logger.Info("removed server with duplicate ID", "id", server.ID) - } - } - } - - // Attempt to add as a peer - switch { - case minRaftProtocol >= 3: - addFuture := s.raft.AddNonvoter(raft.ServerID(parts.ID), raft.ServerAddress(addr), 0, 0) - if err := addFuture.Error(); err != nil { - s.logger.Error("failed to add raft peer", "error", err) - return err - } - case minRaftProtocol == 2 && parts.RaftVersion >= 3: - addFuture := s.raft.AddVoter(raft.ServerID(parts.ID), raft.ServerAddress(addr), 0, 0) - if err := addFuture.Error(); err != nil { - s.logger.Error("failed to add raft peer", "error", err) - return err - } - default: - addFuture := s.raft.AddPeer(raft.ServerAddress(addr)) - if err := addFuture.Error(); err != nil { - s.logger.Error("failed to add raft peer", "error", err) - return err - } - } - - // Trigger a check to remove dead servers - s.autopilot.RemoveDeadServers() - - return nil + // now ask autopilot to add it + return s.autopilot.AddServer(apServer) } // removeConsulServer is used to try to remove a consul server that has left -func (s *Server) removeConsulServer(m serf.Member, port int) error { - addr := (&net.TCPAddr{IP: m.Addr, Port: port}).String() - - // See if it's already in the configuration. It's harmless to re-remove it - // but we want to avoid doing that if possible to prevent useless Raft - // log entries. - configFuture := s.raft.GetConfiguration() - if err := configFuture.Error(); err != nil { - s.logger.Error("failed to get raft configuration", "error", err) +func (s *Server) removeConsulServer(m serf.Member) error { + server, err := s.autopilotServer(m) + if err != nil || server == nil { return err } - minRaftProtocol, err := s.autopilot.MinRaftProtocol() - if err != nil { - return err - } - - _, parts := metadata.IsConsulServer(m) - - // Pick which remove API to use based on how the server was added. - for _, server := range configFuture.Configuration().Servers { - // If we understand the new add/remove APIs and the server was added by ID, use the new remove API - if minRaftProtocol >= 2 && server.ID == raft.ServerID(parts.ID) { - s.logger.Info("removing server by ID", "id", server.ID) - future := s.raft.RemoveServer(raft.ServerID(parts.ID), 0, 0) - if err := future.Error(); err != nil { - s.logger.Error("failed to remove raft peer", - "id", server.ID, - "error", err, - ) - return err - } - break - } else if server.Address == raft.ServerAddress(addr) { - // If not, use the old remove API - s.logger.Info("removing server by address", "address", server.Address) - future := s.raft.RemovePeer(raft.ServerAddress(addr)) - if err := future.Error(); err != nil { - s.logger.Error("failed to remove raft peer", - "address", addr, - "error", err, - ) - return err - } - break - } - } - - return nil + return s.autopilot.RemoveServer(server.ID) } // reapTombstones is invoked by the current leader to manage garbage diff --git a/agent/consul/leader_intentions.go b/agent/consul/leader_intentions.go index ece38fdad..5d31accca 100644 --- a/agent/consul/leader_intentions.go +++ b/agent/consul/leader_intentions.go @@ -100,6 +100,11 @@ func (s *Server) legacyIntentionMigration(ctx context.Context) error { return err } + entries, err = s.filterMigratedLegacyIntentions(entries) + if err != nil { + return err + } + // Totally cheat and repurpose one part of config entry replication // here so we automatically get our writes rate limited. _, err = s.reconcileLocalConfig(ctx, entries, structs.ConfigEntryUpsert) diff --git a/agent/consul/leader_intentions_oss.go b/agent/consul/leader_intentions_oss.go index 7913b3ece..a2eefdad3 100644 --- a/agent/consul/leader_intentions_oss.go +++ b/agent/consul/leader_intentions_oss.go @@ -84,3 +84,7 @@ func migrateIntentionsToConfigEntries(ixns structs.Intentions) []*structs.Servic return structs.MigrateIntentions(output) } + +func (s *Server) filterMigratedLegacyIntentions(entries []structs.ConfigEntry) ([]structs.ConfigEntry, error) { + return entries, nil +} diff --git a/agent/consul/leader_intentions_oss_test.go b/agent/consul/leader_intentions_oss_test.go index 56b42d20e..58517e403 100644 --- a/agent/consul/leader_intentions_oss_test.go +++ b/agent/consul/leader_intentions_oss_test.go @@ -11,6 +11,13 @@ import ( "github.com/stretchr/testify/require" ) +func testLeader_LegacyIntentionMigrationHookEnterprise(_ *testing.T, _ *Server, _ bool) { +} + +func appendLegacyIntentionsForMigrationTestEnterprise(_ *testing.T, _ *Server, ixns []*structs.Intention) []*structs.Intention { + return ixns +} + func TestMigrateIntentionsToConfigEntries(t *testing.T) { compare := func(t *testing.T, got structs.Intentions, expect [][]string) { t.Helper() diff --git a/agent/consul/leader_intentions_test.go b/agent/consul/leader_intentions_test.go index f458869e4..64159b989 100644 --- a/agent/consul/leader_intentions_test.go +++ b/agent/consul/leader_intentions_test.go @@ -425,6 +425,11 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { makeIxn("contractor", "*", false), makeIxn("*", "*", true), } + ixns = appendLegacyIntentionsForMigrationTestEnterprise(t, s1pre, ixns) + + testLeader_LegacyIntentionMigrationHookEnterprise(t, s1pre, true) + + var retained []*structs.Intention for _, ixn := range ixns { ixn2 := *ixn resp, err := s1pre.raftApply(structs.IntentionRequestType, &structs.IntentionRequest{ @@ -435,6 +440,10 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { if respErr, ok := resp.(error); ok { t.Fatalf("respErr: %v", respErr) } + + if _, present := ixn.Meta["unit-test-discarded"]; !present { + retained = append(retained, ixn) + } } mapify := func(ixns []*structs.Intention) map[string]*structs.Intention { @@ -465,7 +474,7 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { for k, expectV := range expect { gotV, ok := gotM[k] if !ok { - r.Errorf("results are missing key %q", k) + r.Errorf("results are missing key %q: %v", k, expectV) continue } @@ -483,8 +492,14 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { } expectM := mapify(ixns) - checkIntentions(t, s1pre, false, expectM) - checkIntentions(t, s1pre, true, expectM) + expectRetainedM := mapify(retained) + + require.True(t, t.Run("check initial intentions", func(t *testing.T) { + checkIntentions(t, s1pre, false, expectM) + })) + require.True(t, t.Run("check initial legacy intentions", func(t *testing.T) { + checkIntentions(t, s1pre, true, expectM) + })) // Shutdown s1pre and restart it to trigger migration. s1pre.Shutdown() @@ -500,8 +515,7 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { testrpc.WaitForLeader(t, s1.RPC, "dc1") - // check that all 7 intentions are present before migration - checkIntentions(t, s1, false, expectM) + testLeader_LegacyIntentionMigrationHookEnterprise(t, s1, false) // Wait until the migration routine is complete. retry.Run(t, func(r *retry.R) { @@ -513,9 +527,13 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { }) // check that all 7 intentions are present the general way after migration - checkIntentions(t, s1, false, expectM) - // check that no intentions exist in the legacy table - checkIntentions(t, s1, true, map[string]*structs.Intention{}) + require.True(t, t.Run("check migrated intentions", func(t *testing.T) { + checkIntentions(t, s1, false, expectRetainedM) + })) + require.True(t, t.Run("check migrated legacy intentions", func(t *testing.T) { + // check that no intentions exist in the legacy table + checkIntentions(t, s1, true, map[string]*structs.Intention{}) + })) mapifyConfigs := func(entries interface{}) map[structs.ConfigEntryKindName]*structs.ServiceIntentionsConfigEntry { m := make(map[structs.ConfigEntryKindName]*structs.ServiceIntentionsConfigEntry) @@ -541,7 +559,7 @@ func TestLeader_LegacyIntentionMigration(t *testing.T) { require.NoError(t, err) gotConfigsM := mapifyConfigs(gotConfigs) - expectConfigs := structs.MigrateIntentions(ixns) + expectConfigs := structs.MigrateIntentions(retained) for _, entry := range expectConfigs { require.NoError(t, entry.LegacyNormalize()) // tidy them up the same way the write would } diff --git a/agent/consul/leader_routine_manager.go b/agent/consul/leader_routine_manager.go index 11c23f2f6..8b268ca83 100644 --- a/agent/consul/leader_routine_manager.go +++ b/agent/consul/leader_routine_manager.go @@ -12,8 +12,17 @@ import ( type LeaderRoutine func(ctx context.Context) error type leaderRoutine struct { - running bool - cancel context.CancelFunc + cancel context.CancelFunc + stoppedCh chan struct{} // closed when no longer running +} + +func (r *leaderRoutine) running() bool { + select { + case <-r.stoppedCh: + return false + default: + return true + } } type LeaderRoutineManager struct { @@ -41,7 +50,7 @@ func (m *LeaderRoutineManager) IsRunning(name string) bool { defer m.lock.Unlock() if routine, ok := m.routines[name]; ok { - return routine.running + return routine.running() } return false @@ -55,7 +64,7 @@ func (m *LeaderRoutineManager) StartWithContext(parentCtx context.Context, name m.lock.Lock() defer m.lock.Unlock() - if instance, ok := m.routines[name]; ok && instance.running { + if instance, ok := m.routines[name]; ok && instance.running() { return nil } @@ -65,11 +74,15 @@ func (m *LeaderRoutineManager) StartWithContext(parentCtx context.Context, name ctx, cancel := context.WithCancel(parentCtx) instance := &leaderRoutine{ - running: true, - cancel: cancel, + cancel: cancel, + stoppedCh: make(chan struct{}), } go func() { + defer func() { + close(instance.stoppedCh) + }() + err := routine(ctx) if err != nil && err != context.DeadlineExceeded && err != context.Canceled { m.logger.Error("routine exited with error", @@ -79,10 +92,6 @@ func (m *LeaderRoutineManager) StartWithContext(parentCtx context.Context, name } else { m.logger.Debug("stopped routine", "routine", name) } - - m.lock.Lock() - instance.running = false - m.lock.Unlock() }() m.routines[name] = instance @@ -90,7 +99,19 @@ func (m *LeaderRoutineManager) StartWithContext(parentCtx context.Context, name return nil } -func (m *LeaderRoutineManager) Stop(name string) error { +func (m *LeaderRoutineManager) Stop(name string) <-chan struct{} { + instance := m.stopInstance(name) + if instance == nil { + // Fabricate a closed channel so it won't block forever. + ch := make(chan struct{}) + close(ch) + return ch + } + + return instance.stoppedCh +} + +func (m *LeaderRoutineManager) stopInstance(name string) *leaderRoutine { m.lock.Lock() defer m.lock.Unlock() @@ -100,15 +121,16 @@ func (m *LeaderRoutineManager) Stop(name string) error { return nil } - if !instance.running { - return nil + if !instance.running() { + return instance } m.logger.Debug("stopping routine", "routine", name) instance.cancel() delete(m.routines, name) - return nil + + return instance } func (m *LeaderRoutineManager) StopAll() { @@ -116,7 +138,7 @@ func (m *LeaderRoutineManager) StopAll() { defer m.lock.Unlock() for name, routine := range m.routines { - if !routine.running { + if !routine.running() { continue } m.logger.Debug("stopping routine", "routine", name) diff --git a/agent/consul/leader_routine_manager_test.go b/agent/consul/leader_routine_manager_test.go index 85728927d..96b0175ec 100644 --- a/agent/consul/leader_routine_manager_test.go +++ b/agent/consul/leader_routine_manager_test.go @@ -36,7 +36,9 @@ func TestLeaderRoutineManager(t *testing.T) { require.Equal(r, uint32(1), atomic.LoadUint32(&runs)) require.Equal(r, uint32(1), atomic.LoadUint32(&running)) }) - require.NoError(t, mgr.Stop("run")) + doneCh := mgr.Stop("run") + require.NotNil(t, doneCh) + <-doneCh // ensure the background go routine was actually cancelled retry.Run(t, func(r *retry.R) { @@ -51,7 +53,10 @@ func TestLeaderRoutineManager(t *testing.T) { require.Equal(r, uint32(1), atomic.LoadUint32(&running)) }) - require.NoError(t, mgr.Stop("run")) + doneCh = mgr.Stop("run") + require.NotNil(t, doneCh) + <-doneCh + retry.Run(t, func(r *retry.R) { require.Equal(r, uint32(0), atomic.LoadUint32(&running)) }) diff --git a/agent/consul/leader_test.go b/agent/consul/leader_test.go index d0e834b16..0d02e522b 100644 --- a/agent/consul/leader_test.go +++ b/agent/consul/leader_test.go @@ -334,7 +334,9 @@ func TestLeader_CheckServersMeta(t *testing.T) { versionToExpect := "19.7.9" retry.Run(t, func(r *retry.R) { + // DEPRECATED - remove nonvoter tag in favor of read_replica in a future version of consul member.Tags["nonvoter"] = "1" + member.Tags["read_replica"] = "1" member.Tags["build"] = versionToExpect err := s1.handleAliveMember(member) if err != nil { @@ -347,9 +349,13 @@ func TestLeader_CheckServersMeta(t *testing.T) { if service == nil { r.Fatal("client not registered") } + // DEPRECATED - remove non_voter in favor of read_replica in a future version of consul if service.Meta["non_voter"] != "true" { r.Fatalf("Expected to be non_voter == true, was: %s", service.Meta["non_voter"]) } + if service.Meta["read_replica"] != "true" { + r.Fatalf("Expected to be read_replica == true, was: %s", service.Meta["non_voter"]) + } newVersion := service.Meta["version"] if newVersion != versionToExpect { r.Fatalf("Expected version to be updated to %s, was %s", versionToExpect, newVersion) @@ -741,7 +747,7 @@ func TestLeader_MultiBootstrap(t *testing.T) { // Ensure we don't have multiple raft peers for _, s := range servers { - peers, _ := s.numPeers() + peers, _ := s.autopilot.NumVoters() if peers != 1 { t.Fatalf("should only have 1 raft peer!") } @@ -886,7 +892,6 @@ func TestLeader_RollRaftServer(t *testing.T) { dir1, s1 := testServerWithConfig(t, func(c *Config) { c.Bootstrap = true c.Datacenter = "dc1" - c.RaftConfig.ProtocolVersion = 2 }) defer os.RemoveAll(dir1) defer s1.Shutdown() @@ -894,7 +899,6 @@ func TestLeader_RollRaftServer(t *testing.T) { dir2, s2 := testServerWithConfig(t, func(c *Config) { c.Bootstrap = false c.Datacenter = "dc1" - c.RaftConfig.ProtocolVersion = 1 }) defer os.RemoveAll(dir2) defer s2.Shutdown() @@ -902,7 +906,6 @@ func TestLeader_RollRaftServer(t *testing.T) { dir3, s3 := testServerWithConfig(t, func(c *Config) { c.Bootstrap = false c.Datacenter = "dc1" - c.RaftConfig.ProtocolVersion = 2 }) defer os.RemoveAll(dir3) defer s3.Shutdown() @@ -922,21 +925,15 @@ func TestLeader_RollRaftServer(t *testing.T) { for _, s := range []*Server{s1, s3} { retry.Run(t, func(r *retry.R) { - minVer, err := s.autopilot.MinRaftProtocol() - if err != nil { - r.Fatal(err) - } - if got, want := minVer, 2; got != want { - r.Fatalf("got min raft version %d want %d", got, want) - } + // autopilot should force removal of the shutdown node + r.Check(wantPeers(s, 2)) }) } - // Replace the dead server with one running raft protocol v3 + // Replace the dead server with a new one dir4, s4 := testServerWithConfig(t, func(c *Config) { c.Bootstrap = false c.Datacenter = "dc1" - c.RaftConfig.ProtocolVersion = 3 }) defer os.RemoveAll(dir4) defer s4.Shutdown() @@ -946,25 +943,7 @@ func TestLeader_RollRaftServer(t *testing.T) { // Make sure the dead server is removed and we're back to 3 total peers for _, s := range servers { retry.Run(t, func(r *retry.R) { - addrs := 0 - ids := 0 - future := s.raft.GetConfiguration() - if err := future.Error(); err != nil { - r.Fatal(err) - } - for _, server := range future.Configuration().Servers { - if string(server.ID) == string(server.Address) { - addrs++ - } else { - ids++ - } - } - if got, want := addrs, 2; got != want { - r.Fatalf("got %d server addresses want %d", got, want) - } - if got, want := ids, 1; got != want { - r.Fatalf("got %d server ids want %d", got, want) - } + r.Check(wantPeers(s, 3)) }) } } @@ -1257,63 +1236,133 @@ func TestLeader_ConfigEntryBootstrap(t *testing.T) { func TestLeader_ConfigEntryBootstrap_Fail(t *testing.T) { t.Parallel() - pr, pw := io.Pipe() - defer pw.Close() + type testcase struct { + name string + entries []structs.ConfigEntry + serverCB func(c *Config) + expectMessage string + } - ch := make(chan string, 1) - go func() { - defer pr.Close() - scan := bufio.NewScanner(pr) - for scan.Scan() { - line := scan.Text() - - if strings.Contains(line, "failed to establish leadership") { - ch <- "" - return - } - if strings.Contains(line, "successfully established leadership") { - ch <- "leadership should not have gotten here if config entries properly failed" - return - } - } - - if scan.Err() != nil { - ch <- fmt.Sprintf("ERROR: %v", scan.Err()) - } else { - ch <- "should not get here" - } - }() - - _, config := testServerConfig(t) - config.Build = "1.6.0" - config.ConfigEntryBootstrap = []structs.ConfigEntry{ - &structs.ServiceSplitterConfigEntry{ - Kind: structs.ServiceSplitter, - Name: "web", - Splits: []structs.ServiceSplit{ - {Weight: 100, Service: "web"}, + cases := []testcase{ + { + name: "service-splitter without L7 protocol", + entries: []structs.ConfigEntry{ + &structs.ServiceSplitterConfigEntry{ + Kind: structs.ServiceSplitter, + Name: "web", + Splits: []structs.ServiceSplit{ + {Weight: 100, Service: "web"}, + }, + }, }, + expectMessage: `Failed to apply configuration entry "service-splitter" / "web": discovery chain "web" uses a protocol "tcp" that does not permit advanced routing or splitting behavior"`, + }, + { + name: "service-intentions without migration", + entries: []structs.ConfigEntry{ + &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "web", + Sources: []*structs.SourceIntention{ + { + Name: "debug", + Action: structs.IntentionActionAllow, + }, + }, + }, + }, + serverCB: func(c *Config) { + c.OverrideInitialSerfTags = func(tags map[string]string) { + tags["ft_si"] = "0" + } + }, + expectMessage: `Refusing to apply configuration entry "service-intentions" / "web" because intentions are still being migrated to config entries`, + }, + { + name: "service-intentions without Connect", + entries: []structs.ConfigEntry{ + &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "web", + Sources: []*structs.SourceIntention{ + { + Name: "debug", + Action: structs.IntentionActionAllow, + }, + }, + }, + }, + serverCB: func(c *Config) { + c.ConnectEnabled = false + }, + expectMessage: `Refusing to apply configuration entry "service-intentions" / "web" because Connect must be enabled to bootstrap intentions"`, }, } - logger := hclog.NewInterceptLogger(&hclog.LoggerOptions{ - Name: config.NodeName, - Level: hclog.Debug, - Output: io.MultiWriter(pw, testutil.NewLogBuffer(t)), - }) + for _, tc := range cases { + tc := tc + t.Run(tc.name, func(t *testing.T) { + pr, pw := io.Pipe() + defer pw.Close() - deps := newDefaultDeps(t, config) - deps.Logger = logger + var ( + ch = make(chan string, 1) + applyErrorLine string + ) + go func() { + defer pr.Close() + scan := bufio.NewScanner(pr) + for scan.Scan() { + line := scan.Text() - srv, err := NewServer(config, deps) - require.NoError(t, err) - defer srv.Shutdown() + if strings.Contains(line, "failed to establish leadership") { + applyErrorLine = line + ch <- "" + return + } + if strings.Contains(line, "successfully established leadership") { + ch <- "leadership should not have gotten here if config entries properly failed" + return + } + } - select { - case result := <-ch: - require.Empty(t, result) - case <-time.After(time.Second): - t.Fatal("timeout waiting for a result from tailing logs") + if scan.Err() != nil { + ch <- fmt.Sprintf("ERROR: %v", scan.Err()) + } else { + ch <- "should not get here" + } + }() + + _, config := testServerConfig(t) + config.Build = "1.6.0" + config.ConfigEntryBootstrap = tc.entries + if tc.serverCB != nil { + tc.serverCB(config) + } + + logger := hclog.NewInterceptLogger(&hclog.LoggerOptions{ + Name: config.NodeName, + Level: hclog.Debug, + Output: io.MultiWriter(pw, testutil.NewLogBuffer(t)), + }) + + deps := newDefaultDeps(t, config) + deps.Logger = logger + + srv, err := NewServer(config, deps) + require.NoError(t, err) + defer srv.Shutdown() + + select { + case result := <-ch: + require.Empty(t, result) + if tc.expectMessage != "" { + require.Contains(t, applyErrorLine, tc.expectMessage) + } + case <-time.After(time.Second): + t.Fatal("timeout waiting for a result from tailing logs") + } + }) } } diff --git a/agent/consul/operator_autopilot_endpoint.go b/agent/consul/operator_autopilot_endpoint.go index c286fd1e9..2b122e522 100644 --- a/agent/consul/operator_autopilot_endpoint.go +++ b/agent/consul/operator_autopilot_endpoint.go @@ -4,12 +4,13 @@ import ( "fmt" "github.com/hashicorp/consul/acl" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" + autopilot "github.com/hashicorp/raft-autopilot" + "github.com/hashicorp/serf/serf" ) // AutopilotGetConfiguration is used to retrieve the current Autopilot configuration. -func (op *Operator) AutopilotGetConfiguration(args *structs.DCSpecificRequest, reply *autopilot.Config) error { +func (op *Operator) AutopilotGetConfiguration(args *structs.DCSpecificRequest, reply *structs.AutopilotConfig) error { if done, err := op.srv.ForwardRPC("Operator.AutopilotGetConfiguration", args, args, reply); done { return err } @@ -23,7 +24,7 @@ func (op *Operator) AutopilotGetConfiguration(args *structs.DCSpecificRequest, r return err } if rule != nil && rule.OperatorRead(nil) != acl.Allow { - return acl.ErrPermissionDenied + return acl.PermissionDenied("Missing operator:read permissions") } state := op.srv.fsm.State() @@ -55,7 +56,7 @@ func (op *Operator) AutopilotSetConfiguration(args *structs.AutopilotSetConfigRe return err } if rule != nil && rule.OperatorWrite(nil) != acl.Allow { - return acl.ErrPermissionDenied + return acl.PermissionDenied("Missing operator:write permissions") } // Apply the update @@ -76,7 +77,7 @@ func (op *Operator) AutopilotSetConfiguration(args *structs.AutopilotSetConfigRe } // ServerHealth is used to get the current health of the servers. -func (op *Operator) ServerHealth(args *structs.DCSpecificRequest, reply *autopilot.OperatorHealthReply) error { +func (op *Operator) ServerHealth(args *structs.DCSpecificRequest, reply *structs.AutopilotHealthReply) error { // This must be sent to the leader, so we fix the args since we are // re-using a structure where we don't support all the options. args.RequireConsistent = true @@ -94,19 +95,81 @@ func (op *Operator) ServerHealth(args *structs.DCSpecificRequest, reply *autopil return err } if rule != nil && rule.OperatorRead(nil) != acl.Allow { - return acl.ErrPermissionDenied + return acl.PermissionDenied("Missing operator:read permissions") } - // Exit early if the min Raft version is too low - minRaftProtocol, err := op.srv.autopilot.MinRaftProtocol() - if err != nil { - return fmt.Errorf("error getting server raft protocol versions: %s", err) - } - if minRaftProtocol < 3 { - return fmt.Errorf("all servers must have raft_protocol set to 3 or higher to use this endpoint") + state := op.srv.autopilot.GetState() + + if state == nil { + // this behavior seems odd but its functionally equivalent to 1.8.5 where if + // autopilot didn't have a health reply yet it would just return no error + return nil } - *reply = op.srv.autopilot.GetClusterHealth() + health := structs.AutopilotHealthReply{ + Healthy: state.Healthy, + FailureTolerance: state.FailureTolerance, + } + for _, srv := range state.Servers { + srvHealth := structs.AutopilotServerHealth{ + ID: string(srv.Server.ID), + Name: srv.Server.Name, + Address: string(srv.Server.Address), + Version: srv.Server.Version, + Leader: srv.State == autopilot.RaftLeader, + Voter: srv.State == autopilot.RaftLeader || srv.State == autopilot.RaftVoter, + LastContact: srv.Stats.LastContact, + LastTerm: srv.Stats.LastTerm, + LastIndex: srv.Stats.LastIndex, + Healthy: srv.Health.Healthy, + StableSince: srv.Health.StableSince, + } + + switch srv.Server.NodeStatus { + case autopilot.NodeAlive: + srvHealth.SerfStatus = serf.StatusAlive + case autopilot.NodeLeft: + srvHealth.SerfStatus = serf.StatusLeft + case autopilot.NodeFailed: + srvHealth.SerfStatus = serf.StatusFailed + default: + srvHealth.SerfStatus = serf.StatusNone + } + + health.Servers = append(health.Servers, srvHealth) + } + + *reply = health + return nil +} + +func (op *Operator) AutopilotState(args *structs.DCSpecificRequest, reply *autopilot.State) error { + // This must be sent to the leader, so we fix the args since we are + // re-using a structure where we don't support all the options. + args.RequireConsistent = true + args.AllowStale = false + if done, err := op.srv.ForwardRPC("Operator.AutopilotState", args, args, reply); done { + return err + } + + // This action requires operator read access. + identity, rule, err := op.srv.ResolveTokenToIdentityAndAuthorizer(args.Token) + if err != nil { + return err + } + if err := op.srv.validateEnterpriseToken(identity); err != nil { + return err + } + if rule != nil && rule.OperatorRead(nil) != acl.Allow { + return acl.PermissionDenied("Missing operator:read permissions") + } + + state := op.srv.autopilot.GetState() + if state == nil { + return fmt.Errorf("Failed to get autopilot state: no state found") + } + + *reply = *state return nil } diff --git a/agent/consul/operator_autopilot_endpoint_test.go b/agent/consul/operator_autopilot_endpoint_test.go index a2a279237..01ff85533 100644 --- a/agent/consul/operator_autopilot_endpoint_test.go +++ b/agent/consul/operator_autopilot_endpoint_test.go @@ -2,17 +2,17 @@ package consul import ( "os" - "strings" "testing" "time" "github.com/hashicorp/consul/acl" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/hashicorp/consul/testrpc" msgpackrpc "github.com/hashicorp/net-rpc-msgpackrpc" "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" + "github.com/stretchr/testify/require" ) func TestOperator_Autopilot_GetConfiguration(t *testing.T) { @@ -30,7 +30,7 @@ func TestOperator_Autopilot_GetConfiguration(t *testing.T) { arg := structs.DCSpecificRequest{ Datacenter: "dc1", } - var reply autopilot.Config + var reply structs.AutopilotConfig err := msgpackrpc.CallWithCodec(codec, "Operator.AutopilotGetConfiguration", &arg, &reply) if err != nil { t.Fatalf("err: %v", err) @@ -60,7 +60,7 @@ func TestOperator_Autopilot_GetConfiguration_ACLDeny(t *testing.T) { arg := structs.DCSpecificRequest{ Datacenter: "dc1", } - var reply autopilot.Config + var reply structs.AutopilotConfig err := msgpackrpc.CallWithCodec(codec, "Operator.AutopilotGetConfiguration", &arg, &reply) if !acl.IsErrPermissionDenied(err) { t.Fatalf("err: %v", err) @@ -114,7 +114,7 @@ func TestOperator_Autopilot_SetConfiguration(t *testing.T) { // Change the autopilot config from the default arg := structs.AutopilotSetConfigRequest{ Datacenter: "dc1", - Config: autopilot.Config{ + Config: structs.AutopilotConfig{ CleanupDeadServers: true, MinQuorum: 3, }, @@ -155,7 +155,7 @@ func TestOperator_Autopilot_SetConfiguration_ACLDeny(t *testing.T) { // Try to set config without permissions arg := structs.AutopilotSetConfigRequest{ Datacenter: "dc1", - Config: autopilot.Config{ + Config: structs.AutopilotConfig{ CleanupDeadServers: true, }, } @@ -236,7 +236,7 @@ func TestOperator_ServerHealth(t *testing.T) { arg := structs.DCSpecificRequest{ Datacenter: "dc1", } - var reply autopilot.OperatorHealthReply + var reply structs.AutopilotHealthReply err := msgpackrpc.CallWithCodec(codec, "Operator.ServerHealth", &arg, &reply) if err != nil { r.Fatalf("err: %v", err) @@ -263,24 +263,52 @@ func TestOperator_ServerHealth(t *testing.T) { }) } -func TestOperator_ServerHealth_UnsupportedRaftVersion(t *testing.T) { +func TestOperator_AutopilotState(t *testing.T) { t.Parallel() - dir1, s1 := testServerWithConfig(t, func(c *Config) { + conf := func(c *Config) { c.Datacenter = "dc1" - c.Bootstrap = true - c.RaftConfig.ProtocolVersion = 2 - }) + c.Bootstrap = false + c.BootstrapExpect = 3 + c.RaftConfig.ProtocolVersion = 3 + c.ServerHealthInterval = 100 * time.Millisecond + c.AutopilotInterval = 100 * time.Millisecond + } + dir1, s1 := testServerWithConfig(t, conf) defer os.RemoveAll(dir1) defer s1.Shutdown() codec := rpcClient(t, s1) defer codec.Close() - arg := structs.DCSpecificRequest{ - Datacenter: "dc1", - } - var reply autopilot.OperatorHealthReply - err := msgpackrpc.CallWithCodec(codec, "Operator.ServerHealth", &arg, &reply) - if err == nil || !strings.Contains(err.Error(), "raft_protocol set to 3 or higher") { - t.Fatalf("bad: %v", err) - } + dir2, s2 := testServerWithConfig(t, conf) + defer os.RemoveAll(dir2) + defer s2.Shutdown() + joinLAN(t, s2, s1) + + dir3, s3 := testServerWithConfig(t, conf) + defer os.RemoveAll(dir3) + defer s3.Shutdown() + joinLAN(t, s3, s1) + + testrpc.WaitForLeader(t, s1.RPC, "dc1") + retry.Run(t, func(r *retry.R) { + arg := structs.DCSpecificRequest{ + Datacenter: "dc1", + } + var reply autopilot.State + err := msgpackrpc.CallWithCodec(codec, "Operator.AutopilotState", &arg, &reply) + require.NoError(r, err) + require.True(r, reply.Healthy) + require.Equal(r, 1, reply.FailureTolerance) + require.Len(r, reply.Servers, 3) + + // Leader should have LastContact == 0, others should be positive + for _, s := range reply.Servers { + isLeader := s1.raft.Leader() == s.Server.Address + if isLeader { + require.Zero(r, s.Stats.LastContact) + } else { + require.NotEqual(r, time.Duration(0), s.Stats.LastContact) + } + } + }) } diff --git a/agent/consul/operator_raft_endpoint.go b/agent/consul/operator_raft_endpoint.go index b3ea4da28..71fa1bbde 100644 --- a/agent/consul/operator_raft_endpoint.go +++ b/agent/consul/operator_raft_endpoint.go @@ -110,34 +110,15 @@ func (op *Operator) RaftRemovePeerByAddress(args *structs.RaftRemovePeerRequest, } REMOVE: - // The Raft library itself will prevent various forms of foot-shooting, - // like making a configuration with no voters. Some consideration was - // given here to adding more checks, but it was decided to make this as - // low-level and direct as possible. We've got ACL coverage to lock this - // down, and if you are an operator, it's assumed you know what you are - // doing if you are calling this. If you remove a peer that's known to - // Serf, for example, it will come back when the leader does a reconcile - // pass. - minRaftProtocol, err := op.srv.autopilot.MinRaftProtocol() - if err != nil { - return err - } - - var future raft.Future - if minRaftProtocol >= 2 { - future = op.srv.raft.RemoveServer(args.ID, 0, 0) - } else { - future = op.srv.raft.RemovePeer(args.Address) - } - if err := future.Error(); err != nil { - op.logger.Warn("Failed to remove Raft peer", - "peer", args.Address, + if err := op.srv.autopilot.RemoveServer(args.ID); err != nil { + op.logger.Warn("Failed to remove Raft server", + "address", args.Address, "error", err, ) return err } - op.logger.Warn("Removed Raft peer", "peer", args.Address) + op.logger.Warn("Removed Raft server", "address", args.Address) return nil } @@ -190,18 +171,7 @@ REMOVE: // doing if you are calling this. If you remove a peer that's known to // Serf, for example, it will come back when the leader does a reconcile // pass. - minRaftProtocol, err := op.srv.autopilot.MinRaftProtocol() - if err != nil { - return err - } - - var future raft.Future - if minRaftProtocol >= 2 { - future = op.srv.raft.RemoveServer(args.ID, 0, 0) - } else { - future = op.srv.raft.RemovePeer(args.Address) - } - if err := future.Error(); err != nil { + if err := op.srv.autopilot.RemoveServer(args.ID); err != nil { op.logger.Warn("Failed to remove Raft peer with id", "peer_id", args.ID, "error", err, diff --git a/agent/consul/prepared_query_endpoint.go b/agent/consul/prepared_query_endpoint.go index bb13ff3cb..360c80b9b 100644 --- a/agent/consul/prepared_query_endpoint.go +++ b/agent/consul/prepared_query_endpoint.go @@ -6,6 +6,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" @@ -15,6 +16,25 @@ import ( "github.com/hashicorp/go-uuid" ) +var PreparedQuerySummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"prepared-query", "apply"}, + Help: "Measures the time it takes to apply a prepared query update.", + }, + { + Name: []string{"prepared-query", "explain"}, + Help: "Measures the time it takes to process a prepared query explain request.", + }, + { + Name: []string{"prepared-query", "execute"}, + Help: "Measures the time it takes to process a prepared query execute request.", + }, + { + Name: []string{"prepared-query", "execute_remote"}, + Help: "Measures the time it takes to process a prepared query execute request that was forwarded to another datacenter.", + }, +} + // PreparedQuery manages the prepared query endpoint. type PreparedQuery struct { srv *Server diff --git a/agent/consul/prepared_query_endpoint_test.go b/agent/consul/prepared_query_endpoint_test.go index b2764e8ca..b02815934 100644 --- a/agent/consul/prepared_query_endpoint_test.go +++ b/agent/consul/prepared_query_endpoint_test.go @@ -2900,7 +2900,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc1" { ret.Nodes = nodes() @@ -2928,7 +2928,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc3" { ret.Nodes = nodes() @@ -2978,7 +2978,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc4" { ret.Nodes = nodes() @@ -3007,7 +3007,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc4" { ret.Nodes = nodes() @@ -3036,7 +3036,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc4" { ret.Nodes = nodes() @@ -3069,7 +3069,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "dc1" { return fmt.Errorf("XXX") @@ -3103,7 +3103,7 @@ func TestPreparedQuery_queryFailover(t *testing.T) { { mock := &mockQueryServer{ Datacenters: []string{"dc1", "dc2", "dc3", "xxx", "dc4"}, - QueryFn: func(dc string, args interface{}, reply interface{}) error { + QueryFn: func(dc string, _ interface{}, reply interface{}) error { ret := reply.(*structs.PreparedQueryExecuteResponse) if dc == "xxx" { ret.Nodes = nodes() diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index ac1096292..82a656a3a 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -13,6 +13,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/consul/wanfed" @@ -31,6 +32,47 @@ import ( "github.com/hashicorp/yamux" ) +var RPCCounters = []prometheus.CounterDefinition{ + { + Name: []string{"rpc", "accept_conn"}, + Help: "Increments when a server accepts an RPC connection.", + }, + { + Name: []string{"rpc", "raft_handoff"}, + Help: "Increments when a server accepts a Raft-related RPC connection.", + }, + { + Name: []string{"rpc", "request_error"}, + Help: "Increments when a server returns an error from an RPC request.", + }, + { + Name: []string{"rpc", "request"}, + Help: "Increments when a server receives a Consul-related RPC request.", + }, + { + Name: []string{"rpc", "cross-dc"}, + Help: "Increments when a server sends a (potentially blocking) cross datacenter RPC query.", + }, + { + Name: []string{"rpc", "query"}, + Help: "Increments when a server receives a new blocking RPC request, indicating the rate of new blocking query calls.", + }, +} + +var RPCGauges = []prometheus.GaugeDefinition{ + { + Name: []string{"rpc", "queries_blocking"}, + Help: "Shows the current number of in-flight blocking queries the server is handling.", + }, +} + +var RPCSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"rpc", "consistentRead"}, + Help: "Measures the time spent confirming that a consistent read can be performed.", + }, +} + const ( // jitterFraction is a the limit to the amount of jitter we apply // to a user specified MaxQueryTime. We divide the specified time by diff --git a/agent/consul/rpc_test.go b/agent/consul/rpc_test.go index 864d78a30..75d11874c 100644 --- a/agent/consul/rpc_test.go +++ b/agent/consul/rpc_test.go @@ -164,7 +164,7 @@ func TestRPC_blockingQuery(t *testing.T) { var opts structs.QueryOptions var meta structs.QueryMeta var calls int - fn := func(ws memdb.WatchSet, state *state.Store) error { + fn := func(_ memdb.WatchSet, _ *state.Store) error { calls++ return nil } @@ -183,7 +183,7 @@ func TestRPC_blockingQuery(t *testing.T) { } var meta structs.QueryMeta var calls int - fn := func(ws memdb.WatchSet, state *state.Store) error { + fn := func(ws memdb.WatchSet, _ *state.Store) error { if calls == 0 { meta.Index = 3 @@ -219,7 +219,7 @@ func TestRPC_blockingQuery(t *testing.T) { } var meta structs.QueryMeta var calls int - fn := func(ws memdb.WatchSet, state *state.Store) error { + fn := func(ws memdb.WatchSet, _ *state.Store) error { if opts.MinQueryIndex > 0 { // If client requested blocking, block forever. This is simulating // waiting for the watched resource to be initialized/written to giving @@ -261,7 +261,7 @@ func TestRPC_blockingQuery(t *testing.T) { } var meta structs.QueryMeta var calls int - fn := func(ws memdb.WatchSet, state *state.Store) error { + fn := func(_ memdb.WatchSet, _ *state.Store) error { if calls == 0 { meta.Index = 3 diff --git a/agent/consul/segment_oss.go b/agent/consul/segment_oss.go index 11b06b695..690132c34 100644 --- a/agent/consul/segment_oss.go +++ b/agent/consul/segment_oss.go @@ -7,10 +7,18 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/serf/serf" ) +var SegmentOSSSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"leader", "reconcile"}, + Help: "Measures the time spent updating the raft store from the serf member information.", + }, +} + // LANMembersAllSegments returns members from all segments. func (s *Server) LANMembersAllSegments() ([]serf.Member, error) { return s.LANMembers(), nil diff --git a/agent/consul/server.go b/agent/consul/server.go index 9789dd2e6..5db589d3a 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -17,12 +17,13 @@ import ( "sync/atomic" "time" - metrics "github.com/armon/go-metrics" + "github.com/armon/go-metrics" connlimit "github.com/hashicorp/go-connlimit" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-memdb" "github.com/hashicorp/memberlist" "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" raftboltdb "github.com/hashicorp/raft-boltdb" "github.com/hashicorp/serf/serf" "golang.org/x/time/rate" @@ -32,7 +33,6 @@ import ( ca "github.com/hashicorp/consul/agent/connect/ca" "github.com/hashicorp/consul/agent/consul/authmethod" "github.com/hashicorp/consul/agent/consul/authmethod/ssoauth" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/consul/fsm" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/consul/usagemetrics" @@ -50,6 +50,8 @@ import ( "github.com/hashicorp/consul/types" ) +// NOTE The "consul.client.rpc" and "consul.client.rpc.exceeded" counters are defined in consul/client.go + // These are the protocol versions that Consul can _understand_. These are // Consul-level protocol versions, that are used to configure the Serf // protocol versions. @@ -137,9 +139,6 @@ type Server struct { // autopilot is the Autopilot instance for this server. autopilot *autopilot.Autopilot - // autopilotWaitGroup is used to block until Autopilot shuts down. - autopilotWaitGroup sync.WaitGroup - // caProviderReconfigurationLock guards the provider reconfiguration. caProviderReconfigurationLock sync.Mutex // caProvider is the current CA provider in use for Connect. This is @@ -391,6 +390,7 @@ func NewServer(config *Config, flat Deps) (*Server, error) { shutdownCh: shutdownCh, leaderRoutineManager: NewLeaderRoutineManager(logger), aclAuthMethodValidators: authmethod.NewCache(), + fsm: newFSMFromConfig(flat.Logger, gc, config), } if s.config.ConnectMeshGatewayWANFederationEnabled { @@ -616,6 +616,21 @@ func NewServer(config *Config, flat Deps) (*Server, error) { return s, nil } +func newFSMFromConfig(logger hclog.Logger, gc *state.TombstoneGC, config *Config) *fsm.FSM { + deps := fsm.Deps{Logger: logger} + if config.RPCConfig.EnableStreaming { + deps.NewStateStore = func() *state.Store { + return state.NewStateStoreWithEventPublisher(gc) + } + return fsm.NewFromDeps(deps) + } + + deps.NewStateStore = func() *state.Store { + return state.NewStateStore(gc) + } + return fsm.NewFromDeps(deps) +} + func newGRPCHandlerFromConfig(deps Deps, config *Config, s *Server) connHandler { if !config.RPCConfig.EnableStreaming { return agentgrpc.NoOpHandler{Logger: deps.Logger} @@ -665,13 +680,6 @@ func (s *Server) setupRaft() error { } }() - // Create the FSM. - var err error - s.fsm, err = fsm.New(s.tombstoneGC, s.logger) - if err != nil { - return err - } - var serverAddressProvider raft.ServerAddressProvider = nil if s.config.RaftConfig.ProtocolVersion >= 3 { //ServerAddressProvider needs server ids to work correctly, which is only supported in protocol version 3 or higher serverAddressProvider = s.serverLookup @@ -772,10 +780,12 @@ func (s *Server) setupRaft() error { return fmt.Errorf("recovery failed to parse peers.json: %v", err) } - tmpFsm, err := fsm.New(s.tombstoneGC, s.logger) - if err != nil { - return fmt.Errorf("recovery failed to make temp FSM: %v", err) - } + tmpFsm := fsm.NewFromDeps(fsm.Deps{ + Logger: s.logger, + NewStateStore: func() *state.Store { + return state.NewStateStore(s.tombstoneGC) + }, + }) if err := raft.RecoverCluster(s.config.RaftConfig, tmpFsm, log, stable, snap, trans, configuration); err != nil { return fmt.Errorf("recovery failed: %v", err) @@ -817,11 +827,9 @@ func (s *Server) setupRaft() error { s.raftNotifyCh = raftNotifyCh // Setup the Raft store. + var err error s.raft, err = raft.NewRaft(s.config.RaftConfig, s.fsm.ChunkingFSM(), log, stable, snap, trans) - if err != nil { - return err - } - return nil + return err } // endpointFactory is a function that returns an RPC endpoint bound to the given @@ -984,7 +992,7 @@ func (s *Server) Leave() error { s.logger.Info("server starting leave") // Check the number of known peers - numPeers, err := s.numPeers() + numPeers, err := s.autopilot.NumVoters() if err != nil { s.logger.Error("failed to check raft peers", "error", err) return err @@ -998,21 +1006,8 @@ func (s *Server) Leave() error { // removed for some sane period of time. isLeader := s.IsLeader() if isLeader && numPeers > 1 { - minRaftProtocol, err := s.autopilot.MinRaftProtocol() - if err != nil { - return err - } - - if minRaftProtocol >= 2 && s.config.RaftConfig.ProtocolVersion >= 3 { - future := s.raft.RemoveServer(raft.ServerID(s.config.NodeID), 0, 0) - if err := future.Error(); err != nil { - s.logger.Error("failed to remove ourself as raft peer", "error", err) - } - } else { - future := s.raft.RemovePeer(addr) - if err := future.Error(); err != nil { - s.logger.Error("failed to remove ourself as raft peer", "error", err) - } + if err := s.autopilot.RemoveServer(raft.ServerID(s.config.NodeID)); err != nil { + s.logger.Error("failed to remove ourself as a Raft peer", "error", err) } } @@ -1091,18 +1086,6 @@ func (s *Server) Leave() error { return nil } -// numPeers is used to check on the number of known peers, including potentially -// the local node. We count only voters, since others can't actually become -// leader, so aren't considered peers. -func (s *Server) numPeers() (int, error) { - future := s.raft.GetConfiguration() - if err := future.Error(); err != nil { - return 0, err - } - - return autopilot.NumPeers(future.Configuration()), nil -} - // JoinLAN is used to have Consul join the inner-DC pool // The target address should be another node inside the DC // listening on the Serf LAN address @@ -1185,17 +1168,21 @@ func (s *Server) RemoveFailedNode(node string, prune bool) error { if err := removeFn(s.serfLAN, node); err != nil { return err } + + wanNode := node + // The Serf WAN pool stores members as node.datacenter // so the dc is appended if not present if !strings.HasSuffix(node, "."+s.config.Datacenter) { - node = node + "." + s.config.Datacenter + wanNode = node + "." + s.config.Datacenter } if s.serfWAN != nil { - if err := removeFn(s.serfWAN, node); err != nil { + if err := removeFn(s.serfWAN, wanNode); err != nil { return err } } - return nil + + return s.removeFailedNodeEnterprise(removeFn, node, wanNode) } // IsLeader checks if this server is the cluster leader diff --git a/agent/consul/server_oss.go b/agent/consul/server_oss.go index 662641b77..911e90117 100644 --- a/agent/consul/server_oss.go +++ b/agent/consul/server_oss.go @@ -1,24 +1,12 @@ +// +build !consulent + package consul import ( - "github.com/hashicorp/consul/logging" + "github.com/hashicorp/serf/serf" ) -func init() { - registerEndpoint(func(s *Server) interface{} { return &ACL{s, s.loggers.Named(logging.ACL)} }) - registerEndpoint(func(s *Server) interface{} { return &Catalog{s, s.loggers.Named(logging.Catalog)} }) - registerEndpoint(func(s *Server) interface{} { return NewCoordinate(s, s.logger) }) - registerEndpoint(func(s *Server) interface{} { return &ConfigEntry{s} }) - registerEndpoint(func(s *Server) interface{} { return &ConnectCA{srv: s, logger: s.loggers.Named(logging.Connect)} }) - registerEndpoint(func(s *Server) interface{} { return &FederationState{s} }) - registerEndpoint(func(s *Server) interface{} { return &DiscoveryChain{s} }) - registerEndpoint(func(s *Server) interface{} { return &Health{s} }) - registerEndpoint(func(s *Server) interface{} { return NewIntentionEndpoint(s, s.loggers.Named(logging.Intentions)) }) - registerEndpoint(func(s *Server) interface{} { return &Internal{s, s.loggers.Named(logging.Internal)} }) - registerEndpoint(func(s *Server) interface{} { return &KVS{s, s.loggers.Named(logging.KV)} }) - registerEndpoint(func(s *Server) interface{} { return &Operator{s, s.loggers.Named(logging.Operator)} }) - registerEndpoint(func(s *Server) interface{} { return &PreparedQuery{s, s.loggers.Named(logging.PreparedQuery)} }) - registerEndpoint(func(s *Server) interface{} { return &Session{s, s.loggers.Named(logging.Session)} }) - registerEndpoint(func(s *Server) interface{} { return &Status{s} }) - registerEndpoint(func(s *Server) interface{} { return &Txn{s, s.loggers.Named(logging.Transaction)} }) +func (s *Server) removeFailedNodeEnterprise(remove func(*serf.Serf, string) error, node, wanNode string) error { + // nothing to do for oss + return nil } diff --git a/agent/consul/server_register.go b/agent/consul/server_register.go new file mode 100644 index 000000000..c0fda1b9b --- /dev/null +++ b/agent/consul/server_register.go @@ -0,0 +1,22 @@ +package consul + +import "github.com/hashicorp/consul/logging" + +func init() { + registerEndpoint(func(s *Server) interface{} { return &ACL{s, s.loggers.Named(logging.ACL)} }) + registerEndpoint(func(s *Server) interface{} { return &Catalog{s, s.loggers.Named(logging.Catalog)} }) + registerEndpoint(func(s *Server) interface{} { return NewCoordinate(s, s.logger) }) + registerEndpoint(func(s *Server) interface{} { return &ConfigEntry{s} }) + registerEndpoint(func(s *Server) interface{} { return &ConnectCA{srv: s, logger: s.loggers.Named(logging.Connect)} }) + registerEndpoint(func(s *Server) interface{} { return &FederationState{s} }) + registerEndpoint(func(s *Server) interface{} { return &DiscoveryChain{s} }) + registerEndpoint(func(s *Server) interface{} { return &Health{s} }) + registerEndpoint(func(s *Server) interface{} { return &Intention{s, s.loggers.Named(logging.Intentions)} }) + registerEndpoint(func(s *Server) interface{} { return &Internal{s, s.loggers.Named(logging.Internal)} }) + registerEndpoint(func(s *Server) interface{} { return &KVS{s, s.loggers.Named(logging.KV)} }) + registerEndpoint(func(s *Server) interface{} { return &Operator{s, s.loggers.Named(logging.Operator)} }) + registerEndpoint(func(s *Server) interface{} { return &PreparedQuery{s, s.loggers.Named(logging.PreparedQuery)} }) + registerEndpoint(func(s *Server) interface{} { return &Session{s, s.loggers.Named(logging.Session)} }) + registerEndpoint(func(s *Server) interface{} { return &Status{s} }) + registerEndpoint(func(s *Server) interface{} { return &Txn{s, s.loggers.Named(logging.Transaction)} }) +} diff --git a/agent/consul/server_serf.go b/agent/consul/server_serf.go index a014d13bd..d6b79f0a7 100644 --- a/agent/consul/server_serf.go +++ b/agent/consul/server_serf.go @@ -61,8 +61,11 @@ func (s *Server) setupSerf(conf *serf.Config, ch chan serf.Event, path string, w if s.config.BootstrapExpect != 0 { conf.Tags["expect"] = fmt.Sprintf("%d", s.config.BootstrapExpect) } - if s.config.NonVoter { + if s.config.ReadReplica { + // DEPRECATED - This tag should be removed when we no longer want to support + // upgrades from 1.8.x and below conf.Tags["nonvoter"] = "1" + conf.Tags["read_replica"] = "1" } if s.config.UseTLS { conf.Tags["use_tls"] = "1" @@ -351,7 +354,7 @@ func (s *Server) maybeBootstrap() { s.logger.Error("Member has bootstrap mode. Expect disabled.", "member", member) return } - if !p.NonVoter { + if !p.ReadReplica { voters++ } servers = append(servers, *p) @@ -403,22 +406,14 @@ func (s *Server) maybeBootstrap() { // Attempt a live bootstrap! var configuration raft.Configuration var addrs []string - minRaftVersion, err := s.autopilot.MinRaftProtocol() - if err != nil { - s.logger.Error("Failed to read server raft versions", "error", err) - } for _, server := range servers { addr := server.Addr.String() addrs = append(addrs, addr) - var id raft.ServerID - if minRaftVersion >= 3 { - id = raft.ServerID(server.ID) - } else { - id = raft.ServerID(addr) - } + id := raft.ServerID(server.ID) + suffrage := raft.Voter - if server.NonVoter { + if server.ReadReplica { suffrage = raft.Nonvoter } peer := raft.Server{ diff --git a/agent/consul/server_test.go b/agent/consul/server_test.go index 928e59257..c64538638 100644 --- a/agent/consul/server_test.go +++ b/agent/consul/server_test.go @@ -240,7 +240,7 @@ func testServerDCExpectNonVoter(t *testing.T, dc string, expect int) (string, *S c.Datacenter = dc c.Bootstrap = false c.BootstrapExpect = expect - c.NonVoter = true + c.ReadReplica = true }) } diff --git a/agent/consul/session_endpoint.go b/agent/consul/session_endpoint.go index 3ac8b41dc..d3d360488 100644 --- a/agent/consul/session_endpoint.go +++ b/agent/consul/session_endpoint.go @@ -5,6 +5,7 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" @@ -13,6 +14,17 @@ import ( "github.com/hashicorp/go-uuid" ) +var SessionEndpointSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"session", "apply"}, + Help: "Measures the time spent applying a session update.", + }, + { + Name: []string{"session", "renew"}, + Help: "Measures the time spent renewing a session.", + }, +} + // Session endpoint is used to manipulate sessions for KV type Session struct { srv *Server diff --git a/agent/consul/session_endpoint_test.go b/agent/consul/session_endpoint_test.go index e8984f44b..dc0071563 100644 --- a/agent/consul/session_endpoint_test.go +++ b/agent/consul/session_endpoint_test.go @@ -925,7 +925,7 @@ func TestSession_Apply_BadTTL(t *testing.T) { if err == nil { t.Fatal("expected error") } - if err.Error() != "Session TTL '10z' invalid: time: unknown unit z in duration 10z" { + if err.Error() != `Session TTL '10z' invalid: time: unknown unit "z" in duration "10z"` { t.Fatalf("incorrect error message: %s", err.Error()) } diff --git a/agent/consul/session_ttl.go b/agent/consul/session_ttl.go index 4afdc0e38..15c77a24a 100644 --- a/agent/consul/session_ttl.go +++ b/agent/consul/session_ttl.go @@ -5,9 +5,32 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/agent/structs" ) +var SessionGauges = []prometheus.GaugeDefinition{ + { + Name: []string{"session_ttl", "active"}, + Help: "Tracks the active number of sessions being tracked.", + }, + { + Name: []string{"raft", "applied_index"}, + Help: "", + }, + { + Name: []string{"raft", "last_index"}, + Help: "", + }, +} + +var SessionSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"session_ttl", "invalidate"}, + Help: "Measures the time spent invalidating an expired session.", + }, +} + const ( // maxInvalidateAttempts limits how many invalidate attempts are made maxInvalidateAttempts = 6 diff --git a/agent/consul/state/acl.go b/agent/consul/state/acl.go index 1613e753a..61f0b54ba 100644 --- a/agent/consul/state/acl.go +++ b/agent/consul/state/acl.go @@ -434,7 +434,7 @@ func resolveTokenPolicyLinks(tx *txn, token *structs.ACLToken, allowMissing bool // stale when a linked policy was deleted or renamed. This will correct them and generate a newly allocated // token only when fixes are needed. If the policy links are still accurate then we just return the original // token. -func fixupTokenPolicyLinks(tx *txn, original *structs.ACLToken) (*structs.ACLToken, error) { +func fixupTokenPolicyLinks(tx ReadTxn, original *structs.ACLToken) (*structs.ACLToken, error) { owned := false token := original @@ -508,7 +508,7 @@ func resolveTokenRoleLinks(tx *txn, token *structs.ACLToken, allowMissing bool) // stale when a linked role was deleted or renamed. This will correct them and generate a newly allocated // token only when fixes are needed. If the role links are still accurate then we just return the original // token. -func fixupTokenRoleLinks(tx *txn, original *structs.ACLToken) (*structs.ACLToken, error) { +func fixupTokenRoleLinks(tx ReadTxn, original *structs.ACLToken) (*structs.ACLToken, error) { owned := false token := original @@ -824,7 +824,7 @@ func (s *Store) ACLTokenBatchGet(ws memdb.WatchSet, accessors []string) (uint64, return idx, tokens, nil } -func aclTokenGetTxn(tx *txn, ws memdb.WatchSet, value, index string, entMeta *structs.EnterpriseMeta) (*structs.ACLToken, error) { +func aclTokenGetTxn(tx ReadTxn, ws memdb.WatchSet, value, index string, entMeta *structs.EnterpriseMeta) (*structs.ACLToken, error) { watchCh, rawToken, err := aclTokenGetFromIndex(tx, value, index, entMeta) if err != nil { return nil, fmt.Errorf("failed acl token lookup: %v", err) @@ -1794,7 +1794,7 @@ func (s *Store) aclAuthMethodGet(ws memdb.WatchSet, name string, entMeta *struct return idx, method, nil } -func getAuthMethodWithTxn(tx *txn, ws memdb.WatchSet, name string, entMeta *structs.EnterpriseMeta) (*structs.ACLAuthMethod, error) { +func getAuthMethodWithTxn(tx ReadTxn, ws memdb.WatchSet, name string, entMeta *structs.EnterpriseMeta) (*structs.ACLAuthMethod, error) { watchCh, rawMethod, err := aclAuthMethodGetByName(tx, name, entMeta) if err != nil { return nil, fmt.Errorf("failed acl auth method lookup: %v", err) diff --git a/agent/consul/state/acl_oss.go b/agent/consul/state/acl_oss.go index 6826d0ac1..36e907b1a 100644 --- a/agent/consul/state/acl_oss.go +++ b/agent/consul/state/acl_oss.go @@ -243,7 +243,7 @@ func aclPolicyDeleteWithPolicy(tx *txn, policy *structs.ACLPolicy, idx uint64) e return nil } -func aclPolicyMaxIndex(tx *txn, _ *structs.ACLPolicy, _ *structs.EnterpriseMeta) uint64 { +func aclPolicyMaxIndex(tx ReadTxn, _ *structs.ACLPolicy, _ *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "acl-policies") } @@ -273,19 +273,19 @@ func aclTokenInsert(tx *txn, token *structs.ACLToken) error { return nil } -func aclTokenGetFromIndex(tx *txn, id string, index string, entMeta *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { +func aclTokenGetFromIndex(tx ReadTxn, id string, index string, entMeta *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { return tx.FirstWatch("acl-tokens", index, id) } -func aclTokenListAll(tx *txn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclTokenListAll(tx ReadTxn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-tokens", "id") } -func aclTokenListLocal(tx *txn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclTokenListLocal(tx ReadTxn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-tokens", "local", true) } -func aclTokenListGlobal(tx *txn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclTokenListGlobal(tx ReadTxn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-tokens", "local", false) } @@ -297,7 +297,7 @@ func aclTokenListByRole(tx ReadTxn, role string, _ *structs.EnterpriseMeta) (mem return tx.Get("acl-tokens", "roles", role) } -func aclTokenListByAuthMethod(tx *txn, authMethod string, _, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclTokenListByAuthMethod(tx ReadTxn, authMethod string, _, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-tokens", "authmethod", authMethod) } @@ -314,7 +314,7 @@ func aclTokenDeleteWithToken(tx *txn, token *structs.ACLToken, idx uint64) error return nil } -func aclTokenMaxIndex(tx *txn, _ *structs.ACLToken, entMeta *structs.EnterpriseMeta) uint64 { +func aclTokenMaxIndex(tx ReadTxn, _ *structs.ACLToken, entMeta *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "acl-tokens") } @@ -372,7 +372,7 @@ func aclRoleDeleteWithRole(tx *txn, role *structs.ACLRole, idx uint64) error { return nil } -func aclRoleMaxIndex(tx *txn, _ *structs.ACLRole, _ *structs.EnterpriseMeta) uint64 { +func aclRoleMaxIndex(tx ReadTxn, _ *structs.ACLRole, _ *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "acl-roles") } @@ -402,15 +402,15 @@ func aclBindingRuleInsert(tx *txn, rule *structs.ACLBindingRule) error { return nil } -func aclBindingRuleGetByID(tx *txn, id string, _ *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { +func aclBindingRuleGetByID(tx ReadTxn, id string, _ *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { return tx.FirstWatch("acl-binding-rules", "id", id) } -func aclBindingRuleList(tx *txn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclBindingRuleList(tx ReadTxn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-binding-rules", "id") } -func aclBindingRuleListByAuthMethod(tx *txn, method string, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclBindingRuleListByAuthMethod(tx ReadTxn, method string, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-binding-rules", "authmethod", method) } @@ -427,7 +427,7 @@ func aclBindingRuleDeleteWithRule(tx *txn, rule *structs.ACLBindingRule, idx uin return nil } -func aclBindingRuleMaxIndex(tx *txn, _ *structs.ACLBindingRule, entMeta *structs.EnterpriseMeta) uint64 { +func aclBindingRuleMaxIndex(tx ReadTxn, _ *structs.ACLBindingRule, entMeta *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "acl-binding-rules") } @@ -457,11 +457,11 @@ func aclAuthMethodInsert(tx *txn, method *structs.ACLAuthMethod) error { return nil } -func aclAuthMethodGetByName(tx *txn, method string, _ *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { +func aclAuthMethodGetByName(tx ReadTxn, method string, _ *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { return tx.FirstWatch("acl-auth-methods", "id", method) } -func aclAuthMethodList(tx *txn, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func aclAuthMethodList(tx ReadTxn, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get("acl-auth-methods", "id") } @@ -478,7 +478,7 @@ func aclAuthMethodDeleteWithMethod(tx *txn, method *structs.ACLAuthMethod, idx u return nil } -func aclAuthMethodMaxIndex(tx *txn, _ *structs.ACLAuthMethod, entMeta *structs.EnterpriseMeta) uint64 { +func aclAuthMethodMaxIndex(tx ReadTxn, _ *structs.ACLAuthMethod, entMeta *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "acl-auth-methods") } diff --git a/agent/consul/state/autopilot.go b/agent/consul/state/autopilot.go index 5c0188637..d1791f34a 100644 --- a/agent/consul/state/autopilot.go +++ b/agent/consul/state/autopilot.go @@ -3,7 +3,7 @@ package state import ( "fmt" - "github.com/hashicorp/consul/agent/consul/autopilot" + "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-memdb" ) @@ -30,13 +30,13 @@ func init() { } // Autopilot is used to pull the autopilot config from the snapshot. -func (s *Snapshot) Autopilot() (*autopilot.Config, error) { +func (s *Snapshot) Autopilot() (*structs.AutopilotConfig, error) { c, err := s.tx.First("autopilot-config", "id") if err != nil { return nil, err } - config, ok := c.(*autopilot.Config) + config, ok := c.(*structs.AutopilotConfig) if !ok { return nil, nil } @@ -45,7 +45,7 @@ func (s *Snapshot) Autopilot() (*autopilot.Config, error) { } // Autopilot is used when restoring from a snapshot. -func (s *Restore) Autopilot(config *autopilot.Config) error { +func (s *Restore) Autopilot(config *structs.AutopilotConfig) error { if err := s.tx.Insert("autopilot-config", config); err != nil { return fmt.Errorf("failed restoring autopilot config: %s", err) } @@ -54,7 +54,7 @@ func (s *Restore) Autopilot(config *autopilot.Config) error { } // AutopilotConfig is used to get the current Autopilot configuration. -func (s *Store) AutopilotConfig() (uint64, *autopilot.Config, error) { +func (s *Store) AutopilotConfig() (uint64, *structs.AutopilotConfig, error) { tx := s.db.Txn(false) defer tx.Abort() @@ -64,7 +64,7 @@ func (s *Store) AutopilotConfig() (uint64, *autopilot.Config, error) { return 0, nil, fmt.Errorf("failed autopilot config lookup: %s", err) } - config, ok := c.(*autopilot.Config) + config, ok := c.(*structs.AutopilotConfig) if !ok { return 0, nil, nil } @@ -73,7 +73,7 @@ func (s *Store) AutopilotConfig() (uint64, *autopilot.Config, error) { } // AutopilotSetConfig is used to set the current Autopilot configuration. -func (s *Store) AutopilotSetConfig(idx uint64, config *autopilot.Config) error { +func (s *Store) AutopilotSetConfig(idx uint64, config *structs.AutopilotConfig) error { tx := s.db.WriteTxn(idx) defer tx.Abort() @@ -87,7 +87,7 @@ func (s *Store) AutopilotSetConfig(idx uint64, config *autopilot.Config) error { // AutopilotCASConfig is used to try updating the Autopilot configuration with a // given Raft index. If the CAS index specified is not equal to the last observed index // for the config, then the call is a noop, -func (s *Store) AutopilotCASConfig(idx, cidx uint64, config *autopilot.Config) (bool, error) { +func (s *Store) AutopilotCASConfig(idx, cidx uint64, config *structs.AutopilotConfig) (bool, error) { tx := s.db.WriteTxn(idx) defer tx.Abort() @@ -100,7 +100,7 @@ func (s *Store) AutopilotCASConfig(idx, cidx uint64, config *autopilot.Config) ( // If the existing index does not match the provided CAS // index arg, then we shouldn't update anything and can safely // return early here. - e, ok := existing.(*autopilot.Config) + e, ok := existing.(*structs.AutopilotConfig) if !ok || e.ModifyIndex != cidx { return false, nil } @@ -113,7 +113,7 @@ func (s *Store) AutopilotCASConfig(idx, cidx uint64, config *autopilot.Config) ( return err == nil, err } -func autopilotSetConfigTxn(tx *txn, idx uint64, config *autopilot.Config) error { +func autopilotSetConfigTxn(tx *txn, idx uint64, config *structs.AutopilotConfig) error { // Check for an existing config existing, err := tx.First("autopilot-config", "id") if err != nil { @@ -122,7 +122,7 @@ func autopilotSetConfigTxn(tx *txn, idx uint64, config *autopilot.Config) error // Set the indexes. if existing != nil { - config.CreateIndex = existing.(*autopilot.Config).CreateIndex + config.CreateIndex = existing.(*structs.AutopilotConfig).CreateIndex } else { config.CreateIndex = idx } diff --git a/agent/consul/state/autopilot_test.go b/agent/consul/state/autopilot_test.go index 15e5dfd9c..7567e2bf3 100644 --- a/agent/consul/state/autopilot_test.go +++ b/agent/consul/state/autopilot_test.go @@ -5,14 +5,14 @@ import ( "testing" "time" - "github.com/hashicorp/consul/agent/consul/autopilot" + "github.com/hashicorp/consul/agent/structs" "github.com/stretchr/testify/require" ) func TestStateStore_Autopilot(t *testing.T) { s := testStateStore(t) - expected := &autopilot.Config{ + expected := &structs.AutopilotConfig{ CleanupDeadServers: true, LastContactThreshold: 5 * time.Second, MaxTrailingLogs: 500, @@ -41,7 +41,7 @@ func TestStateStore_Autopilot(t *testing.T) { func TestStateStore_AutopilotCAS(t *testing.T) { s := testStateStore(t) - expected := &autopilot.Config{ + expected := &structs.AutopilotConfig{ CleanupDeadServers: true, } @@ -53,7 +53,7 @@ func TestStateStore_AutopilotCAS(t *testing.T) { } // Do a CAS with an index lower than the entry - ok, err := s.AutopilotCASConfig(2, 0, &autopilot.Config{ + ok, err := s.AutopilotCASConfig(2, 0, &structs.AutopilotConfig{ CleanupDeadServers: false, }) if ok || err != nil { @@ -74,7 +74,7 @@ func TestStateStore_AutopilotCAS(t *testing.T) { } // Do another CAS, this time with the correct index - ok, err = s.AutopilotCASConfig(2, 1, &autopilot.Config{ + ok, err = s.AutopilotCASConfig(2, 1, &structs.AutopilotConfig{ CleanupDeadServers: false, }) if !ok || err != nil { @@ -96,7 +96,7 @@ func TestStateStore_AutopilotCAS(t *testing.T) { func TestStateStore_Autopilot_Snapshot_Restore(t *testing.T) { s := testStateStore(t) - before := &autopilot.Config{ + before := &structs.AutopilotConfig{ CleanupDeadServers: true, } if err := s.AutopilotSetConfig(99, before); err != nil { @@ -106,7 +106,7 @@ func TestStateStore_Autopilot_Snapshot_Restore(t *testing.T) { snap := s.Snapshot() defer snap.Close() - after := &autopilot.Config{ + after := &structs.AutopilotConfig{ CleanupDeadServers: false, } if err := s.AutopilotSetConfig(100, after); err != nil { diff --git a/agent/consul/state/catalog.go b/agent/consul/state/catalog.go index 8230f100d..aa7fc0c60 100644 --- a/agent/consul/state/catalog.go +++ b/agent/consul/state/catalog.go @@ -6,15 +6,16 @@ import ( "reflect" "strings" + memdb "github.com/hashicorp/go-memdb" + "github.com/hashicorp/go-uuid" + "github.com/mitchellh/copystructure" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/types" - memdb "github.com/hashicorp/go-memdb" - "github.com/hashicorp/go-uuid" - "github.com/mitchellh/copystructure" ) const ( @@ -262,10 +263,7 @@ func (s *Snapshot) Checks(node string) (memdb.ResultIterator, error) { // performed within a single transaction to avoid race conditions on state // updates. func (s *Restore) Registration(idx uint64, req *structs.RegisterRequest) error { - if err := s.store.ensureRegistrationTxn(s.tx, idx, true, req); err != nil { - return err - } - return nil + return s.store.ensureRegistrationTxn(s.tx, idx, true, req, true) } // EnsureRegistration is used to make sure a node, service, and check @@ -275,14 +273,14 @@ func (s *Store) EnsureRegistration(idx uint64, req *structs.RegisterRequest) err tx := s.db.WriteTxn(idx) defer tx.Abort() - if err := s.ensureRegistrationTxn(tx, idx, false, req); err != nil { + if err := s.ensureRegistrationTxn(tx, idx, false, req, false); err != nil { return err } return tx.Commit() } -func (s *Store) ensureCheckIfNodeMatches(tx *txn, idx uint64, preserveIndexes bool, node string, check *structs.HealthCheck) error { +func (s *Store) ensureCheckIfNodeMatches(tx WriteTxn, idx uint64, preserveIndexes bool, node string, check *structs.HealthCheck) error { if check.Node != node { return fmt.Errorf("check node %q does not match node %q", check.Node, node) @@ -296,8 +294,8 @@ func (s *Store) ensureCheckIfNodeMatches(tx *txn, idx uint64, preserveIndexes bo // ensureRegistrationTxn is used to make sure a node, service, and check // registration is performed within a single transaction to avoid race // conditions on state updates. -func (s *Store) ensureRegistrationTxn(tx *txn, idx uint64, preserveIndexes bool, req *structs.RegisterRequest) error { - if _, err := validateRegisterRequestTxn(tx, req); err != nil { +func (s *Store) ensureRegistrationTxn(tx WriteTxn, idx uint64, preserveIndexes bool, req *structs.RegisterRequest, restore bool) error { + if _, err := validateRegisterRequestTxn(tx, req, restore); err != nil { return err } @@ -378,7 +376,7 @@ func (s *Store) EnsureNode(idx uint64, node *structs.Node) error { // ensureNoNodeWithSimilarNameTxn checks that no other node has conflict in its name // If allowClashWithoutID then, getting a conflict on another node without ID will be allowed -func ensureNoNodeWithSimilarNameTxn(tx *txn, node *structs.Node, allowClashWithoutID bool) error { +func ensureNoNodeWithSimilarNameTxn(tx ReadTxn, node *structs.Node, allowClashWithoutID bool) error { // Retrieve all of the nodes enodes, err := tx.Get("nodes", "id") if err != nil { @@ -414,7 +412,7 @@ func ensureNoNodeWithSimilarNameTxn(tx *txn, node *structs.Node, allowClashWitho // ensureNodeCASTxn updates a node only if the existing index matches the given index. // Returns a bool indicating if a write happened and any error. -func (s *Store) ensureNodeCASTxn(tx *txn, idx uint64, node *structs.Node) (bool, error) { +func (s *Store) ensureNodeCASTxn(tx WriteTxn, idx uint64, node *structs.Node) (bool, error) { // Retrieve the existing entry. existing, err := getNodeTxn(tx, node.Node) if err != nil { @@ -444,7 +442,7 @@ func (s *Store) ensureNodeCASTxn(tx *txn, idx uint64, node *structs.Node) (bool, // ensureNodeTxn is the inner function called to actually create a node // registration or modify an existing one in the state store. It allows // passing in a memdb transaction so it may be part of a larger txn. -func (s *Store) ensureNodeTxn(tx *txn, idx uint64, preserveIndexes bool, node *structs.Node) error { +func (s *Store) ensureNodeTxn(tx WriteTxn, idx uint64, preserveIndexes bool, node *structs.Node) error { // See if there's an existing node with this UUID, and make sure the // name is the same. var n *structs.Node @@ -546,7 +544,7 @@ func (s *Store) GetNode(id string) (uint64, *structs.Node, error) { return idx, node, nil } -func getNodeTxn(tx *txn, nodeName string) (*structs.Node, error) { +func getNodeTxn(tx ReadTxn, nodeName string) (*structs.Node, error) { node, err := tx.First("nodes", "id", nodeName) if err != nil { return nil, fmt.Errorf("node lookup failed: %s", err) @@ -557,7 +555,7 @@ func getNodeTxn(tx *txn, nodeName string) (*structs.Node, error) { return nil, nil } -func getNodeIDTxn(tx *txn, id types.NodeID) (*structs.Node, error) { +func getNodeIDTxn(tx ReadTxn, id types.NodeID) (*structs.Node, error) { strnode := string(id) uuidValue, err := uuid.ParseUUID(strnode) if err != nil { @@ -657,7 +655,7 @@ func (s *Store) DeleteNode(idx uint64, nodeName string) error { // deleteNodeCASTxn is used to try doing a node delete operation with a given // raft index. If the CAS index specified is not equal to the last observed index for // the given check, then the call is a noop, otherwise a normal check delete is invoked. -func (s *Store) deleteNodeCASTxn(tx *txn, idx, cidx uint64, nodeName string) (bool, error) { +func (s *Store) deleteNodeCASTxn(tx WriteTxn, idx, cidx uint64, nodeName string) (bool, error) { // Look up the node. node, err := getNodeTxn(tx, nodeName) if err != nil { @@ -684,7 +682,7 @@ func (s *Store) deleteNodeCASTxn(tx *txn, idx, cidx uint64, nodeName string) (bo // deleteNodeTxn is the inner method used for removing a node from // the store within a given transaction. -func (s *Store) deleteNodeTxn(tx *txn, idx uint64, nodeName string) error { +func (s *Store) deleteNodeTxn(tx WriteTxn, idx uint64, nodeName string) error { // Look up the node. node, err := tx.First("nodes", "id", nodeName) if err != nil { @@ -791,7 +789,7 @@ var errCASCompareFailed = errors.New("compare-and-set: comparison failed") // ensureServiceCASTxn updates a service only if the existing index matches the given index. // Returns an error if the write didn't happen and nil if write was successful. -func ensureServiceCASTxn(tx *txn, idx uint64, node string, svc *structs.NodeService) error { +func ensureServiceCASTxn(tx WriteTxn, idx uint64, node string, svc *structs.NodeService) error { // Retrieve the existing service. _, existing, err := firstWatchCompoundWithTxn(tx, "services", "id", &svc.EnterpriseMeta, node, svc.ID) if err != nil { @@ -816,7 +814,7 @@ func ensureServiceCASTxn(tx *txn, idx uint64, node string, svc *structs.NodeServ // ensureServiceTxn is used to upsert a service registration within an // existing memdb transaction. -func ensureServiceTxn(tx *txn, idx uint64, node string, preserveIndexes bool, svc *structs.NodeService) error { +func ensureServiceTxn(tx WriteTxn, idx uint64, node string, preserveIndexes bool, svc *structs.NodeService) error { // Check for existing service _, existing, err := firstWatchCompoundWithTxn(tx, "services", "id", &svc.EnterpriseMeta, node, svc.ID) if err != nil { @@ -921,7 +919,7 @@ func (s *Store) ServiceList(ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) return serviceListTxn(tx, ws, entMeta) } -func serviceListTxn(tx *txn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.ServiceList, error) { +func serviceListTxn(tx ReadTxn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.ServiceList, error) { idx := catalogServicesMaxIndex(tx, entMeta) services, err := catalogServiceList(tx, entMeta, true) @@ -1025,7 +1023,7 @@ func (s *Store) ServicesByNodeMeta(ws memdb.WatchSet, filters map[string]string, // * return when the last instance of a service is removed // * block until an instance for this service is available, or another // service is unregistered. -func maxIndexForService(tx *txn, serviceName string, serviceExists, checks bool, entMeta *structs.EnterpriseMeta) uint64 { +func maxIndexForService(tx ReadTxn, serviceName string, serviceExists, checks bool, entMeta *structs.EnterpriseMeta) uint64 { idx, _ := maxIndexAndWatchChForService(tx, serviceName, serviceExists, checks, entMeta) return idx } @@ -1044,7 +1042,7 @@ func maxIndexForService(tx *txn, serviceName string, serviceExists, checks bool, // returned for the chan. This allows for blocking watchers to _only_ watch this // one chan in the common case, falling back to watching all touched MemDB // indexes in more complicated cases. -func maxIndexAndWatchChForService(tx *txn, serviceName string, serviceExists, checks bool, entMeta *structs.EnterpriseMeta) (uint64, <-chan struct{}) { +func maxIndexAndWatchChForService(tx ReadTxn, serviceName string, serviceExists, checks bool, entMeta *structs.EnterpriseMeta) (uint64, <-chan struct{}) { if !serviceExists { res, err := catalogServiceLastExtinctionIndex(tx, entMeta) if missingIdx, ok := res.(*IndexEntry); ok && err == nil { @@ -1061,7 +1059,7 @@ func maxIndexAndWatchChForService(tx *txn, serviceName string, serviceExists, ch } // Wrapper for maxIndexAndWatchChForService that operates on a list of ServiceNodes -func maxIndexAndWatchChsForServiceNodes(tx *txn, +func maxIndexAndWatchChsForServiceNodes(tx ReadTxn, nodes structs.ServiceNodes, watchChecks bool) (uint64, []<-chan struct{}) { var watchChans []<-chan struct{} @@ -1268,7 +1266,7 @@ func (s *Store) ServiceAddressNodes(ws memdb.WatchSet, address string, entMeta * // parseServiceNodes iterates over a services query and fills in the node details, // returning a ServiceNodes slice. -func parseServiceNodes(tx *txn, ws memdb.WatchSet, services structs.ServiceNodes) (structs.ServiceNodes, error) { +func parseServiceNodes(tx ReadTxn, ws memdb.WatchSet, services structs.ServiceNodes) (structs.ServiceNodes, error) { // We don't want to track an unlimited number of nodes, so we pull a // top-level watch to use as a fallback. allNodes, err := tx.Get("nodes", "id") @@ -1325,7 +1323,7 @@ func (s *Store) NodeService(nodeName string, serviceID string, entMeta *structs. return idx, service, nil } -func getNodeServiceTxn(tx *txn, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) (*structs.NodeService, error) { +func getNodeServiceTxn(tx ReadTxn, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) (*structs.NodeService, error) { // Query the service _, service, err := firstWatchCompoundWithTxn(tx, "services", "id", entMeta, nodeName, serviceID) if err != nil { @@ -1467,7 +1465,7 @@ func (s *Store) DeleteService(idx uint64, nodeName, serviceID string, entMeta *s // deleteServiceCASTxn is used to try doing a service delete operation with a given // raft index. If the CAS index specified is not equal to the last observed index for // the given service, then the call is a noop, otherwise a normal delete is invoked. -func (s *Store) deleteServiceCASTxn(tx *txn, idx, cidx uint64, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) (bool, error) { +func (s *Store) deleteServiceCASTxn(tx WriteTxn, idx, cidx uint64, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) (bool, error) { // Look up the service. service, err := getNodeServiceTxn(tx, nodeName, serviceID, entMeta) if err != nil { @@ -1494,7 +1492,7 @@ func (s *Store) deleteServiceCASTxn(tx *txn, idx, cidx uint64, nodeName, service // deleteServiceTxn is the inner method called to remove a service // registration within an existing transaction. -func (s *Store) deleteServiceTxn(tx *txn, idx uint64, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) error { +func (s *Store) deleteServiceTxn(tx WriteTxn, idx uint64, nodeName, serviceID string, entMeta *structs.EnterpriseMeta) error { // Look up the service. _, service, err := firstWatchCompoundWithTxn(tx, "services", "id", entMeta, nodeName, serviceID) if err != nil { @@ -1589,7 +1587,7 @@ func (s *Store) EnsureCheck(idx uint64, hc *structs.HealthCheck) error { } // updateAllServiceIndexesOfNode updates the Raft index of all the services associated with this node -func updateAllServiceIndexesOfNode(tx *txn, idx uint64, nodeID string) error { +func updateAllServiceIndexesOfNode(tx WriteTxn, idx uint64, nodeID string) error { services, err := tx.Get("services", "node", nodeID) if err != nil { return fmt.Errorf("failed updating services for node %s: %s", nodeID, err) @@ -1608,7 +1606,7 @@ func updateAllServiceIndexesOfNode(tx *txn, idx uint64, nodeID string) error { // ensureCheckCASTxn updates a check only if the existing index matches the given index. // Returns a bool indicating if a write happened and any error. -func (s *Store) ensureCheckCASTxn(tx *txn, idx uint64, hc *structs.HealthCheck) (bool, error) { +func (s *Store) ensureCheckCASTxn(tx WriteTxn, idx uint64, hc *structs.HealthCheck) (bool, error) { // Retrieve the existing entry. _, existing, err := getNodeCheckTxn(tx, hc.Node, hc.CheckID, &hc.EnterpriseMeta) if err != nil { @@ -1638,7 +1636,7 @@ func (s *Store) ensureCheckCASTxn(tx *txn, idx uint64, hc *structs.HealthCheck) // ensureCheckTxn is used as the inner method to handle inserting // a health check into the state store. It ensures safety against inserting // checks with no matching node or service. -func (s *Store) ensureCheckTxn(tx *txn, idx uint64, preserveIndexes bool, hc *structs.HealthCheck) error { +func (s *Store) ensureCheckTxn(tx WriteTxn, idx uint64, preserveIndexes bool, hc *structs.HealthCheck) error { // Check if we have an existing health check _, existing, err := firstWatchCompoundWithTxn(tx, "checks", "id", &hc.EnterpriseMeta, hc.Node, string(hc.CheckID)) if err != nil { @@ -1743,7 +1741,7 @@ func (s *Store) NodeCheck(nodeName string, checkID types.CheckID, entMeta *struc // nodeCheckTxn is used as the inner method to handle reading a health check // from the state store. -func getNodeCheckTxn(tx *txn, nodeName string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) (uint64, *structs.HealthCheck, error) { +func getNodeCheckTxn(tx ReadTxn, nodeName string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) (uint64, *structs.HealthCheck, error) { // Get the table index. idx := catalogChecksMaxIndex(tx, entMeta) @@ -1859,7 +1857,7 @@ func (s *Store) ChecksInStateByNodeMeta(ws memdb.WatchSet, state string, filters return parseChecksByNodeMeta(tx, ws, idx, iter, filters) } -func checksInStateTxn(tx *txn, ws memdb.WatchSet, state string, entMeta *structs.EnterpriseMeta) (uint64, memdb.ResultIterator, error) { +func checksInStateTxn(tx ReadTxn, ws memdb.WatchSet, state string, entMeta *structs.EnterpriseMeta) (uint64, memdb.ResultIterator, error) { // Get the table index. idx := catalogChecksMaxIndex(tx, entMeta) @@ -1881,7 +1879,7 @@ func checksInStateTxn(tx *txn, ws memdb.WatchSet, state string, entMeta *structs // parseChecksByNodeMeta is a helper function used to deduplicate some // repetitive code for returning health checks filtered by node metadata fields. -func parseChecksByNodeMeta(tx *txn, ws memdb.WatchSet, +func parseChecksByNodeMeta(tx ReadTxn, ws memdb.WatchSet, idx uint64, iter memdb.ResultIterator, filters map[string]string) (uint64, structs.HealthChecks, error) { // We don't want to track an unlimited number of nodes, so we pull a @@ -1930,7 +1928,7 @@ func (s *Store) DeleteCheck(idx uint64, node string, checkID types.CheckID, entM // deleteCheckCASTxn is used to try doing a check delete operation with a given // raft index. If the CAS index specified is not equal to the last observed index for // the given check, then the call is a noop, otherwise a normal check delete is invoked. -func (s *Store) deleteCheckCASTxn(tx *txn, idx, cidx uint64, node string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) (bool, error) { +func (s *Store) deleteCheckCASTxn(tx WriteTxn, idx, cidx uint64, node string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) (bool, error) { // Try to retrieve the existing health check. _, hc, err := getNodeCheckTxn(tx, node, checkID, entMeta) if err != nil { @@ -1957,7 +1955,7 @@ func (s *Store) deleteCheckCASTxn(tx *txn, idx, cidx uint64, node string, checkI // deleteCheckTxn is the inner method used to call a health // check deletion within an existing transaction. -func (s *Store) deleteCheckTxn(tx *txn, idx uint64, node string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) error { +func (s *Store) deleteCheckTxn(tx WriteTxn, idx uint64, node string, checkID types.CheckID, entMeta *structs.EnterpriseMeta) error { // Try to retrieve the existing health check. _, hc, err := firstWatchCompoundWithTxn(tx, "checks", "id", entMeta, node, string(checkID)) if err != nil { @@ -2101,7 +2099,7 @@ func (s *Store) checkServiceNodes(ws memdb.WatchSet, serviceName string, connect return checkServiceNodesTxn(tx, ws, serviceName, connect, entMeta) } -func checkServiceNodesTxn(tx *txn, ws memdb.WatchSet, serviceName string, connect bool, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { +func checkServiceNodesTxn(tx ReadTxn, ws memdb.WatchSet, serviceName string, connect bool, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { // Function for lookup index := "service" if connect { @@ -2279,7 +2277,7 @@ func (s *Store) GatewayServices(ws memdb.WatchSet, gateway string, entMeta *stru // and query for an associated node and a set of checks. This is the inner // method used to return a rich set of results from a more simple query. func parseCheckServiceNodes( - tx *txn, ws memdb.WatchSet, idx uint64, + tx ReadTxn, ws memdb.WatchSet, idx uint64, services structs.ServiceNodes, err error) (uint64, structs.CheckServiceNodes, error) { if err != nil { @@ -2404,7 +2402,7 @@ func (s *Store) ServiceDump(ws memdb.WatchSet, kind structs.ServiceKind, useKind } } -func serviceDumpAllTxn(tx *txn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { +func serviceDumpAllTxn(tx ReadTxn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { // Get the table index idx := catalogMaxIndexWatch(tx, ws, entMeta, true) @@ -2422,7 +2420,7 @@ func serviceDumpAllTxn(tx *txn, ws memdb.WatchSet, entMeta *structs.EnterpriseMe return parseCheckServiceNodes(tx, nil, idx, results, err) } -func serviceDumpKindTxn(tx *txn, ws memdb.WatchSet, kind structs.ServiceKind, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { +func serviceDumpKindTxn(tx ReadTxn, ws memdb.WatchSet, kind structs.ServiceKind, entMeta *structs.EnterpriseMeta) (uint64, structs.CheckServiceNodes, error) { // unlike when we are dumping all services here we only need to watch the kind specific index entry for changing (or nodes, checks) // updating any services, nodes or checks will bump the appropriate service kind index so there is no need to watch any of the individual // entries @@ -2446,7 +2444,7 @@ func serviceDumpKindTxn(tx *txn, ws memdb.WatchSet, kind structs.ServiceKind, en // parseNodes takes an iterator over a set of nodes and returns a struct // containing the nodes along with all of their associated services // and/or health checks. -func parseNodes(tx *txn, ws memdb.WatchSet, idx uint64, +func parseNodes(tx ReadTxn, ws memdb.WatchSet, idx uint64, iter memdb.ResultIterator, entMeta *structs.EnterpriseMeta) (uint64, structs.NodeDump, error) { // We don't want to track an unlimited number of services, so we pull a @@ -2506,7 +2504,7 @@ func parseNodes(tx *txn, ws memdb.WatchSet, idx uint64, } // checkSessionsTxn returns the IDs of all sessions associated with a health check -func checkSessionsTxn(tx *txn, hc *structs.HealthCheck) ([]*sessionCheck, error) { +func checkSessionsTxn(tx ReadTxn, hc *structs.HealthCheck) ([]*sessionCheck, error) { mappings, err := getCompoundWithTxn(tx, "session_checks", "node_check", &hc.EnterpriseMeta, hc.Node, string(hc.CheckID)) if err != nil { return nil, fmt.Errorf("failed session checks lookup: %s", err) @@ -2520,7 +2518,7 @@ func checkSessionsTxn(tx *txn, hc *structs.HealthCheck) ([]*sessionCheck, error) } // updateGatewayServices associates services with gateways as specified in a gateway config entry -func updateGatewayServices(tx *txn, idx uint64, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta) error { +func updateGatewayServices(tx WriteTxn, idx uint64, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta) error { var ( noChange bool gatewayServices structs.GatewayServices @@ -2582,7 +2580,7 @@ func updateGatewayServices(tx *txn, idx uint64, conf structs.ConfigEntry, entMet // insertion into the memdb table, specific to ingress gateways. The boolean // returned indicates that there are no changes necessary to the memdb table. func ingressConfigGatewayServices( - tx *txn, + tx ReadTxn, gateway structs.ServiceName, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta, @@ -2627,7 +2625,7 @@ func ingressConfigGatewayServices( // boolean returned indicates that there are no changes necessary to the memdb // table. func terminatingConfigGatewayServices( - tx *txn, + tx ReadTxn, gateway structs.ServiceName, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta, @@ -2667,7 +2665,7 @@ func terminatingConfigGatewayServices( } // updateGatewayNamespace is used to target all services within a namespace -func updateGatewayNamespace(tx *txn, idx uint64, service *structs.GatewayService, entMeta *structs.EnterpriseMeta) error { +func updateGatewayNamespace(tx WriteTxn, idx uint64, service *structs.GatewayService, entMeta *structs.EnterpriseMeta) error { services, err := catalogServiceListByKind(tx, structs.ServiceKindTypical, entMeta) if err != nil { return fmt.Errorf("failed querying services: %s", err) @@ -2714,7 +2712,7 @@ func updateGatewayNamespace(tx *txn, idx uint64, service *structs.GatewayService // updateGatewayService associates services with gateways after an eligible event // ie. Registering a service in a namespace targeted by a gateway -func updateGatewayService(tx *txn, idx uint64, mapping *structs.GatewayService) error { +func updateGatewayService(tx WriteTxn, idx uint64, mapping *structs.GatewayService) error { // Check if mapping already exists in table if it's already in the table // Avoid insert if nothing changed existing, err := tx.First(gatewayServicesTableName, "id", mapping.Gateway, mapping.Service, mapping.Port) @@ -2749,7 +2747,7 @@ func updateGatewayService(tx *txn, idx uint64, mapping *structs.GatewayService) // checkWildcardForGatewaysAndUpdate checks whether a service matches a // wildcard definition in gateway config entries and if so adds it the the // gateway-services table. -func checkGatewayWildcardsAndUpdate(tx *txn, idx uint64, svc *structs.NodeService) error { +func checkGatewayWildcardsAndUpdate(tx WriteTxn, idx uint64, svc *structs.NodeService) error { // Do not associate non-typical services with gateways or consul services if svc.Kind != structs.ServiceKindTypical || svc.Service == "consul" { return nil @@ -2776,7 +2774,7 @@ func checkGatewayWildcardsAndUpdate(tx *txn, idx uint64, svc *structs.NodeServic return nil } -func cleanupGatewayWildcards(tx *txn, idx uint64, svc *structs.ServiceNode) error { +func cleanupGatewayWildcards(tx WriteTxn, idx uint64, svc *structs.ServiceNode) error { // Clean up association between service name and gateways if needed gateways, err := serviceGateways(tx, svc.ServiceName, &svc.EnterpriseMeta) if err != nil { @@ -2805,11 +2803,11 @@ func cleanupGatewayWildcards(tx *txn, idx uint64, svc *structs.ServiceNode) erro // serviceGateways returns all GatewayService entries with the given service name. This effectively looks up // all the gateways mapped to this service. -func serviceGateways(tx *txn, name string, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func serviceGateways(tx ReadTxn, name string, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get(gatewayServicesTableName, "service", structs.NewServiceName(name, entMeta)) } -func gatewayServices(tx *txn, name string, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func gatewayServices(tx ReadTxn, name string, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get(gatewayServicesTableName, "gateway", structs.NewServiceName(name, entMeta)) } @@ -2832,7 +2830,7 @@ func (s *Store) DumpGatewayServices(ws memdb.WatchSet) (uint64, structs.GatewayS return lib.MaxUint64(maxIdx, idx), results, nil } -func (s *Store) collectGatewayServices(tx *txn, ws memdb.WatchSet, iter memdb.ResultIterator) (uint64, structs.GatewayServices, error) { +func (s *Store) collectGatewayServices(tx ReadTxn, ws memdb.WatchSet, iter memdb.ResultIterator) (uint64, structs.GatewayServices, error) { var maxIdx uint64 var results structs.GatewayServices @@ -2858,7 +2856,7 @@ func (s *Store) collectGatewayServices(tx *txn, ws memdb.WatchSet, iter memdb.Re // TODO(ingress): How to handle index rolling back when a config entry is // deleted that references a service? // We might need something like the service_last_extinction index? -func serviceGatewayNodes(tx *txn, ws memdb.WatchSet, service string, kind structs.ServiceKind, entMeta *structs.EnterpriseMeta) (uint64, structs.ServiceNodes, error) { +func serviceGatewayNodes(tx ReadTxn, ws memdb.WatchSet, service string, kind structs.ServiceKind, entMeta *structs.EnterpriseMeta) (uint64, structs.ServiceNodes, error) { // Look up gateway name associated with the service gws, err := serviceGateways(tx, service, entMeta) if err != nil { @@ -3060,7 +3058,7 @@ func (s *Store) ServiceTopology( // combinedServiceNodesTxn returns typical and connect endpoints for a list of services. // This enabled aggregating checks statuses across both. -func (s *Store) combinedServiceNodesTxn(tx *txn, ws memdb.WatchSet, names []structs.ServiceName) (uint64, structs.CheckServiceNodes, error) { +func (s *Store) combinedServiceNodesTxn(tx ReadTxn, ws memdb.WatchSet, names []structs.ServiceName) (uint64, structs.CheckServiceNodes, error) { var ( maxIdx uint64 resp structs.CheckServiceNodes @@ -3177,7 +3175,7 @@ func linkedFromRegistrationTxn(tx ReadTxn, ws memdb.WatchSet, service structs.Se } // updateMeshTopology creates associations between the input service and its upstreams in the topology table -func updateMeshTopology(tx *txn, idx uint64, node string, svc *structs.NodeService, existing interface{}) error { +func updateMeshTopology(tx WriteTxn, idx uint64, node string, svc *structs.NodeService, existing interface{}) error { oldUpstreams := make(map[structs.ServiceName]bool) if e, ok := existing.(*structs.ServiceNode); ok { for _, u := range e.ServiceProxy.Upstreams { @@ -3257,7 +3255,7 @@ func updateMeshTopology(tx *txn, idx uint64, node string, svc *structs.NodeServi // cleanupMeshTopology removes a service from the mesh topology table // This is only safe to call when there are no more known instances of this proxy -func cleanupMeshTopology(tx *txn, idx uint64, service *structs.ServiceNode) error { +func cleanupMeshTopology(tx WriteTxn, idx uint64, service *structs.ServiceNode) error { if service.ServiceKind != structs.ServiceKindConnectProxy { return nil } @@ -3294,7 +3292,7 @@ func cleanupMeshTopology(tx *txn, idx uint64, service *structs.ServiceNode) erro return nil } -func insertGatewayServiceTopologyMapping(tx *txn, idx uint64, gs *structs.GatewayService) error { +func insertGatewayServiceTopologyMapping(tx WriteTxn, idx uint64, gs *structs.GatewayService) error { // Only ingress gateways are standalone items in the mesh topology viz if gs.GatewayKind != structs.ServiceKindIngressGateway || gs.Service.Name == structs.WildcardSpecifier { return nil @@ -3315,7 +3313,7 @@ func insertGatewayServiceTopologyMapping(tx *txn, idx uint64, gs *structs.Gatewa return nil } -func deleteGatewayServiceTopologyMapping(tx *txn, idx uint64, gs *structs.GatewayService) error { +func deleteGatewayServiceTopologyMapping(tx WriteTxn, idx uint64, gs *structs.GatewayService) error { // Only ingress gateways are standalone items in the mesh topology viz if gs.GatewayKind != structs.ServiceKindIngressGateway { return nil @@ -3331,7 +3329,7 @@ func deleteGatewayServiceTopologyMapping(tx *txn, idx uint64, gs *structs.Gatewa return nil } -func truncateGatewayServiceTopologyMappings(tx *txn, idx uint64, gateway structs.ServiceName, kind string) error { +func truncateGatewayServiceTopologyMappings(tx WriteTxn, idx uint64, gateway structs.ServiceName, kind string) error { // Only ingress gateways are standalone items in the mesh topology viz if kind != string(structs.ServiceKindIngressGateway) { return nil diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 4b7ee1193..526eca354 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -3,6 +3,7 @@ package state import ( memdb "github.com/hashicorp/go-memdb" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/stream" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/proto/pbsubscribe" @@ -10,23 +11,52 @@ import ( // EventPayloadCheckServiceNode is used as the Payload for a stream.Event to // indicates changes to a CheckServiceNode for service health. +// +// The stream.Payload methods implemented by EventPayloadCheckServiceNode are +// do not mutate the payload, making it safe to use in an Event sent to +// stream.EventPublisher.Publish. type EventPayloadCheckServiceNode struct { Op pbsubscribe.CatalogOp Value *structs.CheckServiceNode + // key is used to override the key used to filter the payload. It is set for + // events in the connect topic to specify the name of the underlying service + // when the change event is for a sidecar or gateway. + key string +} + +func (e EventPayloadCheckServiceNode) HasReadPermission(authz acl.Authorizer) bool { + return e.Value.CanRead(authz) == acl.Allow +} + +func (e EventPayloadCheckServiceNode) MatchesKey(key, namespace string) bool { + if key == "" && namespace == "" { + return true + } + + if e.Value.Service == nil { + return false + } + + name := e.Value.Service.Service + if e.key != "" { + name = e.key + } + ns := e.Value.Service.EnterpriseMeta.GetNamespace() + return (key == "" || key == name) && (namespace == "" || namespace == ns) } // serviceHealthSnapshot returns a stream.SnapshotFunc that provides a snapshot // of stream.Events that describe the current state of a service health query. // // TODO: no tests for this yet -func serviceHealthSnapshot(s *Store, topic stream.Topic) stream.SnapshotFunc { +func serviceHealthSnapshot(db ReadDB, topic stream.Topic) stream.SnapshotFunc { return func(req stream.SubscribeRequest, buf stream.SnapshotAppender) (index uint64, err error) { - tx := s.db.Txn(false) + tx := db.ReadTxn() defer tx.Abort() connect := topic == topicServiceHealthConnect - // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest - idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, connect, nil) + entMeta := structs.EnterpriseMetaInitializer(req.Namespace) + idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, connect, &entMeta) if err != nil { return 0, err } @@ -42,10 +72,6 @@ func serviceHealthSnapshot(s *Store, topic stream.Topic) stream.SnapshotFunc { }, } - if n.Service != nil { - event.Key = n.Service.Service - } - // append each event as a separate item so that they can be serialized // separately, to prevent the encoding of one massive message. buf.Append([]stream.Event{event}) @@ -252,7 +278,9 @@ func isConnectProxyDestinationServiceChange(idx uint64, before, after *structs.S e := newServiceHealthEventDeregister(idx, before) e.Topic = topicServiceHealthConnect - e.Key = getPayloadCheckServiceNode(e.Payload).Service.Proxy.DestinationServiceName + payload := e.Payload.(EventPayloadCheckServiceNode) + payload.key = payload.Value.Service.Proxy.DestinationServiceName + e.Payload = payload return e, true } @@ -304,7 +332,9 @@ func serviceHealthToConnectEvents(events ...stream.Event) []stream.Event { result = append(result, connectEvent) case node.Service.Kind == structs.ServiceKindConnectProxy: - connectEvent.Key = node.Service.Proxy.DestinationServiceName + payload := event.Payload.(EventPayloadCheckServiceNode) + payload.key = node.Service.Proxy.DestinationServiceName + connectEvent.Payload = payload result = append(result, connectEvent) default: @@ -316,7 +346,7 @@ func serviceHealthToConnectEvents(events ...stream.Event) []stream.Event { return result } -func getPayloadCheckServiceNode(payload interface{}) *structs.CheckServiceNode { +func getPayloadCheckServiceNode(payload stream.Payload) *structs.CheckServiceNode { ep, ok := payload.(EventPayloadCheckServiceNode) if !ok { return nil @@ -329,8 +359,7 @@ func getPayloadCheckServiceNode(payload interface{}) *structs.CheckServiceNode { // parseCheckServiceNodes but is more efficient since we know they are all on // the same node. func newServiceHealthEventsForNode(tx ReadTxn, idx uint64, node string) ([]stream.Event, error) { - // TODO(namespace-streaming): figure out the right EntMeta and mystery arg. - services, err := catalogServiceListByNode(tx, node, nil, false) + services, err := catalogServiceListByNode(tx, node, structs.WildcardEnterpriseMeta(), true) if err != nil { return nil, err } @@ -364,8 +393,7 @@ func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, serviceChecksFunc } n := nodeRaw.(*structs.Node) - // TODO(namespace-streaming): work out what EntMeta is needed here, wildcard? - iter, err := catalogListChecksByNode(tx, node, nil) + iter, err := catalogListChecksByNode(tx, node, structs.WildcardEnterpriseMeta()) if err != nil { return nil, nil, err } @@ -431,7 +459,6 @@ func newServiceHealthEventRegister( } return stream.Event{ Topic: topicServiceHealth, - Key: sn.ServiceName, Index: idx, Payload: EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Register, @@ -458,7 +485,6 @@ func newServiceHealthEventDeregister(idx uint64, sn *structs.ServiceNode) stream return stream.Event{ Topic: topicServiceHealth, - Key: sn.ServiceName, Index: idx, Payload: EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Deregister, diff --git a/agent/consul/state/catalog_events_test.go b/agent/consul/state/catalog_events_test.go index 95d13c0df..f9a2e1af2 100644 --- a/agent/consul/state/catalog_events_test.go +++ b/agent/consul/state/catalog_events_test.go @@ -4,12 +4,17 @@ import ( "fmt" "testing" + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/proto/pbcommon" + "github.com/hashicorp/consul/agent/consul/stream" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/proto/pbsubscribe" "github.com/hashicorp/consul/types" - "github.com/stretchr/testify/require" ) func TestServiceHealthEventsFromChanges(t *testing.T) { @@ -35,7 +40,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "service reg, new node", Mutate: func(s *Store, tx *txn) error { return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")) + testServiceRegistration(t, "web"), false) }, WantEvents: []stream.Event{ testServiceHealthEvent(t, "web"), @@ -46,11 +51,11 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "service reg, existing node", Setup: func(s *Store, tx *txn) error { return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")) + testServiceRegistration(t, "db"), false) }, Mutate: func(s *Store, tx *txn) error { return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")) + testServiceRegistration(t, "web"), false) }, WantEvents: []stream.Event{ // Should only publish new service @@ -62,11 +67,11 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "service dereg, existing node", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } return nil @@ -83,10 +88,10 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { { Name: "node dereg", Setup: func(s *Store, tx *txn) error { - if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db")); err != nil { + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db"), false); err != nil { return err } - if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web")); err != nil { + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web"), false); err != nil { return err } return nil @@ -104,7 +109,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { { Name: "connect native reg, new node", Mutate: func(s *Store, tx *txn) error { - return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative), false) }, WantEvents: []stream.Event{ // We should see both a regular service health event as well as a connect @@ -117,10 +122,10 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { { Name: "connect native reg, existing node", Setup: func(s *Store, tx *txn) error { - return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db")) + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db"), false) }, Mutate: func(s *Store, tx *txn) error { - return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative), false) }, WantEvents: []stream.Event{ // We should see both a regular service health event as well as a connect @@ -138,11 +143,11 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { { Name: "connect native dereg, existing node", Setup: func(s *Store, tx *txn) error { - if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db")); err != nil { + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db"), false); err != nil { return err } - return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative), false) }, Mutate: func(s *Store, tx *txn) error { return s.deleteServiceTxn(tx, tx.Index, "node1", "web", nil) @@ -157,10 +162,10 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { { Name: "connect sidecar reg, new node", Mutate: func(s *Store, tx *txn) error { - if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web")); err != nil { + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web"), false); err != nil { return err } - return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regSidecar)) + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regSidecar), false) }, WantEvents: []stream.Event{ // We should see both a regular service health event for the web service @@ -175,15 +180,15 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "connect sidecar reg, existing node", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")) + testServiceRegistration(t, "web"), false) }, Mutate: func(s *Store, tx *txn) error { return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, WantEvents: []stream.Event{ // We should see both a regular service health event for the proxy @@ -197,15 +202,15 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "connect sidecar dereg, existing node", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, Mutate: func(s *Store, tx *txn) error { // Delete only the sidecar @@ -222,20 +227,20 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "connect sidecar mutate svc", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, Mutate: func(s *Store, tx *txn) error { // Change port of the target service instance return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regMutatePort)) + testServiceRegistration(t, "web", regMutatePort), false) }, WantEvents: []stream.Event{ // We should see the service topic update but not connect since proxy @@ -253,20 +258,20 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "connect sidecar mutate sidecar", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, Mutate: func(s *Store, tx *txn) error { // Change port of the sidecar service instance return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regMutatePort)) + testServiceRegistration(t, "web", regSidecar, regMutatePort), false) }, WantEvents: []stream.Event{ // We should see the proxy service topic update and a connect update @@ -290,24 +295,24 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Name: "connect sidecar rename service", Setup: func(s *Store, tx *txn) error { if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, Mutate: func(s *Store, tx *txn) error { // Change service name but not ID, update proxy too if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regRenameService)); err != nil { + testServiceRegistration(t, "web", regRenameService), false); err != nil { return err } return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regRenameService)) + testServiceRegistration(t, "web", regSidecar, regRenameService), false) }, WantEvents: []stream.Event{ // We should see events to deregister the old service instance and the @@ -348,25 +353,25 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a web_changed service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web_changed")); err != nil { + testServiceRegistration(t, "web_changed"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // And a sidecar initially for web, will be moved to target web_changed // in Mutate. return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)) + testServiceRegistration(t, "web", regSidecar), false) }, Mutate: func(s *Store, tx *txn) error { // Change only the destination service of the proxy without a service // rename or deleting and recreating the proxy. This is far fetched but // still valid. return s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regRenameService)) + testServiceRegistration(t, "web", regSidecar, regRenameService), false) }, WantEvents: []stream.Event{ // We should only see service health events for the sidecar service @@ -400,17 +405,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -418,7 +423,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Mutate: func(s *Store, tx *txn) error { // Change only the node meta. return s.ensureRegistrationTxn(tx, tx.Index, false, - testNodeRegistration(t, regNodeMeta)) + testNodeRegistration(t, regNodeMeta), false) }, WantEvents: []stream.Event{ // We should see updates for all services and a connect update for the @@ -458,17 +463,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -480,17 +485,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { // services registered afterwards. // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db", regRenameNode)); err != nil { + testServiceRegistration(t, "db", regRenameNode), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regRenameNode)); err != nil { + testServiceRegistration(t, "web", regRenameNode), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regRenameNode)); err != nil { + testServiceRegistration(t, "web", regSidecar, regRenameNode), false); err != nil { return err } return nil @@ -535,17 +540,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -553,7 +558,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Mutate: func(s *Store, tx *txn) error { // Change only the node-level check status if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regNodeCheckFail)); err != nil { + testServiceRegistration(t, "web", regNodeCheckFail), false); err != nil { return err } return nil @@ -595,17 +600,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -613,7 +618,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Mutate: func(s *Store, tx *txn) error { // Change the service-level check status if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regServiceCheckFail)); err != nil { + testServiceRegistration(t, "web", regServiceCheckFail), false); err != nil { return err } // Also change the service-level check status for the proxy. This is @@ -621,7 +626,7 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { // - the proxies check would get updated at roughly the same time as the // target service check updates. if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regServiceCheckFail)); err != nil { + testServiceRegistration(t, "web", regSidecar, regServiceCheckFail), false); err != nil { return err } return nil @@ -658,17 +663,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -712,17 +717,17 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { Setup: func(s *Store, tx *txn) error { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } return nil @@ -772,19 +777,19 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { // Register a db service if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "db")); err != nil { + testServiceRegistration(t, "db"), false); err != nil { return err } // Node2 // Also a web if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regNode2)); err != nil { + testServiceRegistration(t, "web", regNode2), false); err != nil { return err } // With a connect sidecar if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar, regNode2)); err != nil { + testServiceRegistration(t, "web", regSidecar, regNode2), false); err != nil { return err } @@ -803,22 +808,23 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { // Register those on node1 if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web")); err != nil { + testServiceRegistration(t, "web"), false); err != nil { return err } if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "web", regSidecar)); err != nil { + testServiceRegistration(t, "web", regSidecar), false); err != nil { return err } // And for good measure, add a new connect-native service to node2 if err := s.ensureRegistrationTxn(tx, tx.Index, false, - testServiceRegistration(t, "api", regConnectNative, regNode2)); err != nil { + testServiceRegistration(t, "api", regConnectNative, regNode2), false); err != nil { return err } return nil }, + WantEvents: []stream.Event{ // We should see: // - service dereg for web and proxy on node2 @@ -829,29 +835,15 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { // - connect reg for api on node2 testServiceHealthDeregistrationEvent(t, "web", evNode2), testServiceHealthDeregistrationEvent(t, "web", evNode2, evSidecar), - testServiceHealthDeregistrationEvent(t, "web", - evConnectTopic, - evNode2, - evSidecar, - ), + testServiceHealthDeregistrationEvent(t, "web", evConnectTopic, evNode2, evSidecar), testServiceHealthEvent(t, "web", evNodeUnchanged), testServiceHealthEvent(t, "web", evSidecar, evNodeUnchanged), testServiceHealthEvent(t, "web", evConnectTopic, evSidecar, evNodeUnchanged), - testServiceHealthEvent(t, "api", - evNode2, - evConnectNative, - evNodeUnchanged, - ), - testServiceHealthEvent(t, "api", - evNode2, - evConnectTopic, - evConnectNative, - evNodeUnchanged, - ), + testServiceHealthEvent(t, "api", evNode2, evConnectNative, evNodeUnchanged), + testServiceHealthEvent(t, "api", evNode2, evConnectTopic, evConnectNative, evNodeUnchanged), }, - WantErr: false, }, } @@ -884,17 +876,36 @@ func TestServiceHealthEventsFromChanges(t *testing.T) { } require.NoError(t, err) - // Make sure we have the right events, only taking ordering into account - // where it matters to account for non-determinism. - requireEventsInCorrectPartialOrder(t, tc.WantEvents, got, func(e stream.Event) string { - // We need events affecting unique registrations to be ordered, within a topic - csn := getPayloadCheckServiceNode(e.Payload) - return fmt.Sprintf("%s/%s/%s", e.Topic, csn.Node.Node, csn.Service.Service) - }) + assertDeepEqual(t, tc.WantEvents, got, cmpPartialOrderEvents) }) } } +func assertDeepEqual(t *testing.T, x, y interface{}, opts ...cmp.Option) { + t.Helper() + if diff := cmp.Diff(x, y, opts...); diff != "" { + t.Fatalf("assertion failed: values are not equal\n--- expected\n+++ actual\n%v", diff) + } +} + +// cmpPartialOrderEvents returns a compare option which sorts events so that +// all events for a particular node/service are grouped together. The sort is +// stable so events with the same node/service retain their relative order. +var cmpPartialOrderEvents = cmp.Options{ + cmpopts.SortSlices(func(i, j stream.Event) bool { + key := func(e stream.Event) string { + csn := getPayloadCheckServiceNode(e.Payload) + return fmt.Sprintf("%s/%s/%s", e.Topic, csn.Node.Node, csn.Service.Service) + } + return key(i) < key(j) + }), + cmpEvents, +} + +var cmpEvents = cmp.Options{ + cmp.AllowUnexported(EventPayloadCheckServiceNode{}), +} + type regOption func(req *structs.RegisterRequest) error func testNodeRegistration(t *testing.T, opts ...regOption) *structs.RegisterRequest { @@ -1170,10 +1181,10 @@ func evSidecar(e *stream.Event) error { csn.Checks[1].ServiceName = svc + "_sidecar_proxy" } - // Update event key to be the proxy service name, but only if this is not - // already in the connect topic - if e.Topic != topicServiceHealthConnect { - e.Key = csn.Service.Service + if e.Topic == topicServiceHealthConnect { + payload := e.Payload.(EventPayloadCheckServiceNode) + payload.key = svc + e.Payload = payload } return nil } @@ -1242,15 +1253,13 @@ func evChecksUnchanged(e *stream.Event) error { // name but not ID simulating an in-place service rename. func evRenameService(e *stream.Event) error { csn := getPayloadCheckServiceNode(e.Payload) - isSidecar := csn.Service.Kind == structs.ServiceKindConnectProxy - if !isSidecar { + if csn.Service.Kind != structs.ServiceKindConnectProxy { csn.Service.Service += "_changed" // Update service checks if len(csn.Checks) >= 2 { csn.Checks[1].ServiceName += "_changed" } - e.Key += "_changed" return nil } // This is a sidecar, it's not really realistic but lets only update the @@ -1258,12 +1267,13 @@ func evRenameService(e *stream.Event) error { // we get the right result. This is certainly possible if not likely so a // valid case. - // We don't need to update out own details, only the name of the destination + // We don't need to update our own details, only the name of the destination csn.Service.Proxy.DestinationServiceName += "_changed" - // If this is the connect topic we need to change the key too if e.Topic == topicServiceHealthConnect { - e.Key += "_changed" + payload := e.Payload.(EventPayloadCheckServiceNode) + payload.key = csn.Service.Proxy.DestinationServiceName + e.Payload = payload } return nil } @@ -1337,48 +1347,6 @@ func evServiceCheckDelete(e *stream.Event) error { return nil } -// requireEventsInCorrectPartialOrder compares that the expected set of events -// was emitted. It allows for _independent_ events to be emitted in any order - -// this can be important because even though the transaction processing is all -// strictly ordered up until the processing func, grouping multiple updates that -// affect the same logical entity may be necessary and may impose random -// ordering changes on the eventual events if a map is used. We only care that -// events _affecting the same topic and key_ are ordered correctly with respect -// to the "expected" set of events so this helper asserts that. -// -// The caller provides a func that can return a partition key for the given -// event types and we assert that all events with the same partition key are -// deliveries in the same order. Note that this is not necessarily the same as -// topic/key since for example in Catalog only events about a specific service -// _instance_ need to be ordered while topic and key are more general. -func requireEventsInCorrectPartialOrder(t *testing.T, want, got []stream.Event, - partKey func(stream.Event) string) { - t.Helper() - - // Partion both arrays by topic/key - wantParts := make(map[string][]stream.Event) - gotParts := make(map[string][]stream.Event) - - for _, e := range want { - k := partKey(e) - wantParts[k] = append(wantParts[k], e) - } - for _, e := range got { - k := partKey(e) - gotParts[k] = append(gotParts[k], e) - } - - for k, want := range wantParts { - require.Equal(t, want, gotParts[k], "got incorrect events for partition: %s", k) - } - - for k, got := range gotParts { - if _, ok := wantParts[k]; !ok { - require.Equal(t, nil, got, "got unwanted events for partition: %s", k) - } - } -} - // newTestEventServiceHealthRegister returns a realistically populated service // health registration event. The nodeNum is a // logical node and is used to create the node name ("node%d") but also change @@ -1393,7 +1361,6 @@ func newTestEventServiceHealthRegister(index uint64, nodeNum int, svc string) st return stream.Event{ Topic: topicServiceHealth, - Key: svc, Index: index, Payload: EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Register, @@ -1464,7 +1431,6 @@ func newTestEventServiceHealthRegister(index uint64, nodeNum int, svc string) st func newTestEventServiceHealthDeregister(index uint64, nodeNum int, svc string) stream.Event { return stream.Event{ Topic: topicServiceHealth, - Key: svc, Index: index, Payload: EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Deregister, @@ -1495,3 +1461,98 @@ func newTestEventServiceHealthDeregister(index uint64, nodeNum int, svc string) }, } } + +func TestEventPayloadCheckServiceNode_FilterByKey(t *testing.T) { + type testCase struct { + name string + payload EventPayloadCheckServiceNode + key string + namespace string + expected bool + } + + fn := func(t *testing.T, tc testCase) { + if tc.namespace != "" && pbcommon.DefaultEnterpriseMeta.Namespace == "" { + t.Skip("cant test namespace matching without namespace support") + } + + require.Equal(t, tc.expected, tc.payload.MatchesKey(tc.key, tc.namespace)) + } + + var testCases = []testCase{ + { + name: "no key or namespace", + payload: newPayloadCheckServiceNode("srv1", "ns1"), + expected: true, + }, + { + name: "no key, with namespace match", + payload: newPayloadCheckServiceNode("srv1", "ns1"), + namespace: "ns1", + expected: true, + }, + { + name: "no namespace, with key match", + payload: newPayloadCheckServiceNode("srv1", "ns1"), + key: "srv1", + expected: true, + }, + { + name: "key match, namespace mismatch", + payload: newPayloadCheckServiceNode("srv1", "ns1"), + key: "srv1", + namespace: "ns2", + expected: false, + }, + { + name: "key mismatch, namespace match", + payload: newPayloadCheckServiceNode("srv1", "ns1"), + key: "srv2", + namespace: "ns1", + expected: false, + }, + { + name: "override key match", + payload: newPayloadCheckServiceNodeWithKey("proxy", "ns1", "srv1"), + key: "srv1", + namespace: "ns1", + expected: true, + }, + { + name: "override key match", + payload: newPayloadCheckServiceNodeWithKey("proxy", "ns1", "srv2"), + key: "proxy", + namespace: "ns1", + expected: false, + }, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + fn(t, tc) + }) + } +} + +func newPayloadCheckServiceNode(service, namespace string) EventPayloadCheckServiceNode { + return EventPayloadCheckServiceNode{ + Value: &structs.CheckServiceNode{ + Service: &structs.NodeService{ + Service: service, + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), + }, + }, + } +} + +func newPayloadCheckServiceNodeWithKey(service, namespace, key string) EventPayloadCheckServiceNode { + return EventPayloadCheckServiceNode{ + Value: &structs.CheckServiceNode{ + Service: &structs.NodeService{ + Service: service, + EnterpriseMeta: structs.EnterpriseMetaInitializer(namespace), + }, + }, + key: key, + } +} diff --git a/agent/consul/state/catalog_oss.go b/agent/consul/state/catalog_oss.go index d0ca48489..05e59427b 100644 --- a/agent/consul/state/catalog_oss.go +++ b/agent/consul/state/catalog_oss.go @@ -168,7 +168,7 @@ func serviceKindIndexName(kind structs.ServiceKind, _ *structs.EnterpriseMeta) s } } -func catalogUpdateServicesIndexes(tx *txn, idx uint64, _ *structs.EnterpriseMeta) error { +func catalogUpdateServicesIndexes(tx WriteTxn, idx uint64, _ *structs.EnterpriseMeta) error { // overall services index if err := indexUpdateMaxTxn(tx, idx, "services"); err != nil { return fmt.Errorf("failed updating index: %s", err) @@ -177,7 +177,7 @@ func catalogUpdateServicesIndexes(tx *txn, idx uint64, _ *structs.EnterpriseMeta return nil } -func catalogUpdateServiceKindIndexes(tx *txn, kind structs.ServiceKind, idx uint64, _ *structs.EnterpriseMeta) error { +func catalogUpdateServiceKindIndexes(tx WriteTxn, kind structs.ServiceKind, idx uint64, _ *structs.EnterpriseMeta) error { // service-kind index if err := indexUpdateMaxTxn(tx, idx, serviceKindIndexName(kind, nil)); err != nil { return fmt.Errorf("failed updating index: %s", err) @@ -186,7 +186,7 @@ func catalogUpdateServiceKindIndexes(tx *txn, kind structs.ServiceKind, idx uint return nil } -func catalogUpdateServiceIndexes(tx *txn, serviceName string, idx uint64, _ *structs.EnterpriseMeta) error { +func catalogUpdateServiceIndexes(tx WriteTxn, serviceName string, idx uint64, _ *structs.EnterpriseMeta) error { // per-service index if err := indexUpdateMaxTxn(tx, idx, serviceIndexName(serviceName, nil)); err != nil { return fmt.Errorf("failed updating index: %s", err) @@ -195,14 +195,14 @@ func catalogUpdateServiceIndexes(tx *txn, serviceName string, idx uint64, _ *str return nil } -func catalogUpdateServiceExtinctionIndex(tx *txn, idx uint64, _ *structs.EnterpriseMeta) error { +func catalogUpdateServiceExtinctionIndex(tx WriteTxn, idx uint64, _ *structs.EnterpriseMeta) error { if err := tx.Insert("index", &IndexEntry{serviceLastExtinctionIndexName, idx}); err != nil { return fmt.Errorf("failed updating missing service extinction index: %s", err) } return nil } -func catalogInsertService(tx *txn, svc *structs.ServiceNode) error { +func catalogInsertService(tx WriteTxn, svc *structs.ServiceNode) error { // Insert the service and update the index if err := tx.Insert("services", svc); err != nil { return fmt.Errorf("failed inserting service: %s", err) @@ -269,7 +269,7 @@ func catalogMaxIndexWatch(tx ReadTxn, ws memdb.WatchSet, _ *structs.EnterpriseMe return maxIndexWatchTxn(tx, ws, "nodes", "services") } -func catalogUpdateCheckIndexes(tx *txn, idx uint64, _ *structs.EnterpriseMeta) error { +func catalogUpdateCheckIndexes(tx WriteTxn, idx uint64, _ *structs.EnterpriseMeta) error { // update the universal index entry if err := tx.Insert("index", &IndexEntry{"checks", idx}); err != nil { return fmt.Errorf("failed updating index: %s", err) @@ -306,7 +306,7 @@ func catalogListServiceChecks(tx ReadTxn, node string, service string, _ *struct return tx.Get("checks", "node_service", node, service) } -func catalogInsertCheck(tx *txn, chk *structs.HealthCheck, idx uint64) error { +func catalogInsertCheck(tx WriteTxn, chk *structs.HealthCheck, idx uint64) error { // Insert the check if err := tx.Insert("checks", chk); err != nil { return fmt.Errorf("failed inserting check: %s", err) @@ -323,7 +323,7 @@ func catalogChecksForNodeService(tx ReadTxn, node string, service string, entMet return tx.Get("checks", "node_service", node, service) } -func validateRegisterRequestTxn(_ *txn, _ *structs.RegisterRequest) (*structs.EnterpriseMeta, error) { +func validateRegisterRequestTxn(_ ReadTxn, _ *structs.RegisterRequest, _ bool) (*structs.EnterpriseMeta, error) { return nil, nil } diff --git a/agent/consul/state/catalog_test.go b/agent/consul/state/catalog_test.go index 352a3f7ee..cf2bb7dbd 100644 --- a/agent/consul/state/catalog_test.go +++ b/agent/consul/state/catalog_test.go @@ -7,14 +7,15 @@ import ( "strings" "testing" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/api" - "github.com/hashicorp/consul/lib/stringslice" - "github.com/hashicorp/consul/types" "github.com/hashicorp/go-memdb" uuid "github.com/hashicorp/go-uuid" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/api" + "github.com/hashicorp/consul/lib/stringslice" + "github.com/hashicorp/consul/types" ) func makeRandomNodeID(t *testing.T) types.NodeID { @@ -1080,10 +1081,7 @@ func TestStateStore_GetNodes(t *testing.T) { } func BenchmarkGetNodes(b *testing.B) { - s, err := NewStateStore(nil) - if err != nil { - b.Fatalf("err: %s", err) - } + s := NewStateStore(nil) if err := s.EnsureNode(100, &structs.Node{Node: "foo", Address: "127.0.0.1"}); err != nil { b.Fatalf("err: %v", err) @@ -3710,10 +3708,7 @@ func TestStateStore_CheckConnectServiceNodes_Gateways(t *testing.T) { } func BenchmarkCheckServiceNodes(b *testing.B) { - s, err := NewStateStore(nil) - if err != nil { - b.Fatalf("err: %s", err) - } + s := NewStateStore(nil) if err := s.EnsureNode(1, &structs.Node{Node: "foo", Address: "127.0.0.1"}); err != nil { b.Fatalf("err: %v", err) @@ -4415,12 +4410,12 @@ func TestStateStore_ensureServiceCASTxn(t *testing.T) { require.NoError(t, tx.Commit()) // ensure no update happened - tx = s.db.Txn(false) + roTxn := s.db.Txn(false) _, nsRead, err := s.NodeService("node1", "foo", nil) require.NoError(t, err) require.NotNil(t, nsRead) require.Equal(t, uint64(2), nsRead.ModifyIndex) - require.NoError(t, tx.Commit()) + roTxn.Commit() ns.ModifyIndex = 99 // attempt to update with a non-matching index @@ -4430,12 +4425,12 @@ func TestStateStore_ensureServiceCASTxn(t *testing.T) { require.NoError(t, tx.Commit()) // ensure no update happened - tx = s.db.Txn(false) + roTxn = s.db.Txn(false) _, nsRead, err = s.NodeService("node1", "foo", nil) require.NoError(t, err) require.NotNil(t, nsRead) require.Equal(t, uint64(2), nsRead.ModifyIndex) - require.NoError(t, tx.Commit()) + roTxn.Commit() ns.ModifyIndex = 2 // update with the matching modify index @@ -4445,12 +4440,12 @@ func TestStateStore_ensureServiceCASTxn(t *testing.T) { require.NoError(t, tx.Commit()) // ensure the update happened - tx = s.db.Txn(false) + roTxn = s.db.Txn(false) _, nsRead, err = s.NodeService("node1", "foo", nil) require.NoError(t, err) require.NotNil(t, nsRead) require.Equal(t, uint64(7), nsRead.ModifyIndex) - require.NoError(t, tx.Commit()) + roTxn.Commit() } func TestStateStore_GatewayServices_Terminating(t *testing.T) { diff --git a/agent/consul/state/config_entry.go b/agent/consul/state/config_entry.go index 328ad15d3..8df8f1876 100644 --- a/agent/consul/state/config_entry.go +++ b/agent/consul/state/config_entry.go @@ -180,7 +180,7 @@ func (s *Store) EnsureConfigEntry(idx uint64, conf structs.ConfigEntry, entMeta } // ensureConfigEntryTxn upserts a config entry inside of a transaction. -func ensureConfigEntryTxn(tx *txn, idx uint64, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta) error { +func ensureConfigEntryTxn(tx WriteTxn, idx uint64, conf structs.ConfigEntry, entMeta *structs.EnterpriseMeta) error { // Check for existing configuration. existing, err := firstConfigEntryWithTxn(tx, conf.GetKind(), conf.GetName(), entMeta) if err != nil { @@ -254,6 +254,14 @@ func (s *Store) DeleteConfigEntry(idx uint64, kind, name string, entMeta *struct tx := s.db.WriteTxn(idx) defer tx.Abort() + if err := deleteConfigEntryTxn(tx, idx, kind, name, entMeta); err != nil { + return err + } + + return tx.Commit() +} + +func deleteConfigEntryTxn(tx WriteTxn, idx uint64, kind, name string, entMeta *structs.EnterpriseMeta) error { // Try to retrieve the existing config entry. existing, err := firstConfigEntryWithTxn(tx, kind, name, entMeta) if err != nil { @@ -298,10 +306,10 @@ func (s *Store) DeleteConfigEntry(idx uint64, kind, name string, entMeta *struct return fmt.Errorf("failed updating index: %s", err) } - return tx.Commit() + return nil } -func insertConfigEntryWithTxn(tx *txn, idx uint64, conf structs.ConfigEntry) error { +func insertConfigEntryWithTxn(tx WriteTxn, idx uint64, conf structs.ConfigEntry) error { if conf == nil { return fmt.Errorf("cannot insert nil config entry") } diff --git a/agent/consul/state/config_entry_intention.go b/agent/consul/state/config_entry_intention.go index 464f1e380..c22e48427 100644 --- a/agent/consul/state/config_entry_intention.go +++ b/agent/consul/state/config_entry_intention.go @@ -1,12 +1,12 @@ package state import ( - "encoding/json" "fmt" "sort" - "github.com/hashicorp/consul/agent/structs" memdb "github.com/hashicorp/go-memdb" + + "github.com/hashicorp/consul/agent/structs" ) type ServiceIntentionLegacyIDIndex struct { @@ -123,7 +123,7 @@ func (s *ServiceIntentionSourceIndex) FromArgs(args ...interface{}) ([]byte, err return []byte(arg.String() + "\x00"), nil } -func (s *Store) configIntentionsListTxn(tx *txn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, bool, error) { +func (s *Store) configIntentionsListTxn(tx ReadTxn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, bool, error) { // unrolled part of configEntriesByKindTxn idx := maxIndexTxn(tx, configTableName) @@ -144,7 +144,7 @@ func (s *Store) configIntentionsListTxn(tx *txn, ws memdb.WatchSet, entMeta *str return idx, results, true, nil } -func (s *Store) configIntentionGetTxn(tx *txn, ws memdb.WatchSet, id string) (uint64, *structs.ServiceIntentionsConfigEntry, *structs.Intention, error) { +func (s *Store) configIntentionGetTxn(tx ReadTxn, ws memdb.WatchSet, id string) (uint64, *structs.ServiceIntentionsConfigEntry, *structs.Intention, error) { idx := maxIndexTxn(tx, configTableName) if idx < 1 { idx = 1 @@ -173,7 +173,7 @@ func (s *Store) configIntentionGetTxn(tx *txn, ws memdb.WatchSet, id string) (ui return idx, nil, nil, nil // Shouldn't happen. } -func (s *Store) configIntentionGetExactTxn(tx *txn, ws memdb.WatchSet, args *structs.IntentionQueryExact) (uint64, *structs.ServiceIntentionsConfigEntry, *structs.Intention, error) { +func (s *Store) configIntentionGetExactTxn(tx ReadTxn, ws memdb.WatchSet, args *structs.IntentionQueryExact) (uint64, *structs.ServiceIntentionsConfigEntry, *structs.Intention, error) { if err := args.Validate(); err != nil { return 0, nil, nil, err } @@ -196,7 +196,7 @@ func (s *Store) configIntentionGetExactTxn(tx *txn, ws memdb.WatchSet, args *str return idx, nil, nil, nil } -func (s *Store) configIntentionMatchTxn(tx *txn, ws memdb.WatchSet, args *structs.IntentionQueryMatch) (uint64, []structs.Intentions, error) { +func (s *Store) configIntentionMatchTxn(tx ReadTxn, ws memdb.WatchSet, args *structs.IntentionQueryMatch) (uint64, []structs.Intentions, error) { maxIndex := uint64(1) // Make all the calls and accumulate the results @@ -207,7 +207,7 @@ func (s *Store) configIntentionMatchTxn(tx *txn, ws memdb.WatchSet, args *struct // improving that in the future, the test cases shouldn't have to // change for that. - index, ixns, err := s.configIntentionMatchOneTxn(tx, ws, entry, args.Type) + index, ixns, err := configIntentionMatchOneTxn(tx, ws, entry, args.Type) if err != nil { return 0, nil, err } @@ -222,23 +222,23 @@ func (s *Store) configIntentionMatchTxn(tx *txn, ws memdb.WatchSet, args *struct return maxIndex, results, nil } -func (s *Store) configIntentionMatchOneTxn( - tx *txn, +func configIntentionMatchOneTxn( + tx ReadTxn, ws memdb.WatchSet, matchEntry structs.IntentionMatchEntry, matchType structs.IntentionMatchType, ) (uint64, structs.Intentions, error) { switch matchType { case structs.IntentionMatchSource: - return s.readSourceIntentionsFromConfigEntriesTxn(tx, ws, matchEntry.Name, matchEntry.GetEnterpriseMeta()) + return readSourceIntentionsFromConfigEntriesTxn(tx, ws, matchEntry.Name, matchEntry.GetEnterpriseMeta()) case structs.IntentionMatchDestination: - return s.readDestinationIntentionsFromConfigEntriesTxn(tx, ws, matchEntry.Name, matchEntry.GetEnterpriseMeta()) + return readDestinationIntentionsFromConfigEntriesTxn(tx, ws, matchEntry.Name, matchEntry.GetEnterpriseMeta()) default: return 0, nil, fmt.Errorf("invalid intention match type: %s", matchType) } } -func (s *Store) readSourceIntentionsFromConfigEntriesTxn(tx *txn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, error) { +func readSourceIntentionsFromConfigEntriesTxn(tx ReadTxn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, error) { idx := maxIndexTxn(tx, configTableName) var ( @@ -248,7 +248,7 @@ func (s *Store) readSourceIntentionsFromConfigEntriesTxn(tx *txn, ws memdb.Watch names := getIntentionPrecedenceMatchServiceNames(serviceName, entMeta) for _, sn := range names { - results, err = s.readSourceIntentionsFromConfigEntriesForServiceTxn( + results, err = readSourceIntentionsFromConfigEntriesForServiceTxn( tx, ws, sn.Name, &sn.EnterpriseMeta, results, ) if err != nil { @@ -262,7 +262,7 @@ func (s *Store) readSourceIntentionsFromConfigEntriesTxn(tx *txn, ws memdb.Watch return idx, results, nil } -func (s *Store) readSourceIntentionsFromConfigEntriesForServiceTxn(tx *txn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta, results structs.Intentions) (structs.Intentions, error) { +func readSourceIntentionsFromConfigEntriesForServiceTxn(tx ReadTxn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta, results structs.Intentions) (structs.Intentions, error) { sn := structs.NewServiceName(serviceName, entMeta) iter, err := tx.Get(configTableName, "intention-source", sn) @@ -283,12 +283,7 @@ func (s *Store) readSourceIntentionsFromConfigEntriesForServiceTxn(tx *txn, ws m return results, nil } -func jd(v interface{}) string { - d, _ := json.MarshalIndent(v, "", " ") - return string(d) -} - -func (s *Store) readDestinationIntentionsFromConfigEntriesTxn(tx *txn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, error) { +func readDestinationIntentionsFromConfigEntriesTxn(tx ReadTxn, ws memdb.WatchSet, serviceName string, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, error) { idx := maxIndexTxn(tx, configTableName) var results structs.Intentions diff --git a/agent/consul/state/connect_ca.go b/agent/consul/state/connect_ca.go index a60025ac1..7a467e75d 100644 --- a/agent/consul/state/connect_ca.go +++ b/agent/consul/state/connect_ca.go @@ -116,7 +116,7 @@ func (s *Store) CAConfig(ws memdb.WatchSet) (uint64, *structs.CAConfiguration, e return caConfigTxn(tx, ws) } -func caConfigTxn(tx *txn, ws memdb.WatchSet) (uint64, *structs.CAConfiguration, error) { +func caConfigTxn(tx ReadTxn, ws memdb.WatchSet) (uint64, *structs.CAConfiguration, error) { // Get the CA config ch, c, err := tx.FirstWatch(caConfigTableName, "id") if err != nil { @@ -236,7 +236,7 @@ func (s *Store) CARoots(ws memdb.WatchSet) (uint64, structs.CARoots, error) { return caRootsTxn(tx, ws) } -func caRootsTxn(tx *txn, ws memdb.WatchSet) (uint64, structs.CARoots, error) { +func caRootsTxn(tx ReadTxn, ws memdb.WatchSet) (uint64, structs.CARoots, error) { // Get the index idx := maxIndexTxn(tx, caRootTableName) diff --git a/agent/consul/state/federation_state.go b/agent/consul/state/federation_state.go index 88764d0e9..6854267d6 100644 --- a/agent/consul/state/federation_state.go +++ b/agent/consul/state/federation_state.go @@ -134,7 +134,7 @@ func (s *Store) FederationStateGet(ws memdb.WatchSet, datacenter string) (uint64 return federationStateGetTxn(tx, ws, datacenter) } -func federationStateGetTxn(tx *txn, ws memdb.WatchSet, datacenter string) (uint64, *structs.FederationState, error) { +func federationStateGetTxn(tx ReadTxn, ws memdb.WatchSet, datacenter string) (uint64, *structs.FederationState, error) { // Get the index idx := maxIndexTxn(tx, federationStateTableName) @@ -164,7 +164,7 @@ func (s *Store) FederationStateList(ws memdb.WatchSet) (uint64, []*structs.Feder return federationStateListTxn(tx, ws) } -func federationStateListTxn(tx *txn, ws memdb.WatchSet) (uint64, []*structs.FederationState, error) { +func federationStateListTxn(tx ReadTxn, ws memdb.WatchSet) (uint64, []*structs.FederationState, error) { // Get the index idx := maxIndexTxn(tx, federationStateTableName) diff --git a/agent/consul/state/graveyard.go b/agent/consul/state/graveyard.go index bfae5f2c2..8230d9b25 100644 --- a/agent/consul/state/graveyard.go +++ b/agent/consul/state/graveyard.go @@ -28,7 +28,7 @@ func NewGraveyard(gc *TombstoneGC) *Graveyard { } // InsertTxn adds a new tombstone. -func (g *Graveyard) InsertTxn(tx *txn, key string, idx uint64, entMeta *structs.EnterpriseMeta) error { +func (g *Graveyard) InsertTxn(tx WriteTxn, key string, idx uint64, entMeta *structs.EnterpriseMeta) error { stone := &Tombstone{ Key: key, Index: idx, @@ -51,7 +51,7 @@ func (g *Graveyard) InsertTxn(tx *txn, key string, idx uint64, entMeta *structs. // GetMaxIndexTxn returns the highest index tombstone whose key matches the // given context, using a prefix match. -func (g *Graveyard) GetMaxIndexTxn(tx *txn, prefix string, entMeta *structs.EnterpriseMeta) (uint64, error) { +func (g *Graveyard) GetMaxIndexTxn(tx ReadTxn, prefix string, entMeta *structs.EnterpriseMeta) (uint64, error) { stones, err := getWithTxn(tx, "tombstones", "id_prefix", prefix, entMeta) if err != nil { return 0, fmt.Errorf("failed querying tombstones: %s", err) @@ -68,7 +68,7 @@ func (g *Graveyard) GetMaxIndexTxn(tx *txn, prefix string, entMeta *structs.Ente } // DumpTxn returns all the tombstones. -func (g *Graveyard) DumpTxn(tx *txn) (memdb.ResultIterator, error) { +func (g *Graveyard) DumpTxn(tx ReadTxn) (memdb.ResultIterator, error) { iter, err := tx.Get("tombstones", "id") if err != nil { return nil, err diff --git a/agent/consul/state/graveyard_oss.go b/agent/consul/state/graveyard_oss.go index 157f23e1d..d4ee5848a 100644 --- a/agent/consul/state/graveyard_oss.go +++ b/agent/consul/state/graveyard_oss.go @@ -6,9 +6,7 @@ import ( "fmt" ) -func (g *Graveyard) insertTombstoneWithTxn(tx *txn, - table string, stone *Tombstone, updateMax bool) error { - +func (g *Graveyard) insertTombstoneWithTxn(tx WriteTxn, _ string, stone *Tombstone, updateMax bool) error { if err := tx.Insert("tombstones", stone); err != nil { return err } diff --git a/agent/consul/state/intention.go b/agent/consul/state/intention.go index 8381f048d..f1f67866c 100644 --- a/agent/consul/state/intention.go +++ b/agent/consul/state/intention.go @@ -5,10 +5,11 @@ import ( "fmt" "sort" + "github.com/hashicorp/go-memdb" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/go-memdb" ) const ( @@ -139,11 +140,11 @@ func (s *Restore) LegacyIntention(ixn *structs.Intention) error { func (s *Store) AreIntentionsInConfigEntries() (bool, error) { tx := s.db.Txn(false) defer tx.Abort() - return areIntentionsInConfigEntries(tx) + return areIntentionsInConfigEntries(tx, nil) } -func areIntentionsInConfigEntries(tx *txn) (bool, error) { - _, entry, err := systemMetadataGetTxn(tx, nil, structs.SystemMetadataIntentionFormatKey) +func areIntentionsInConfigEntries(tx ReadTxn, ws memdb.WatchSet) (bool, error) { + _, entry, err := systemMetadataGetTxn(tx, ws, structs.SystemMetadataIntentionFormatKey) if err != nil { return false, fmt.Errorf("failed system metadatalookup: %s", err) } @@ -168,7 +169,7 @@ func (s *Store) Intentions(ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) ( tx := s.db.Txn(false) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, ws) if err != nil { return 0, nil, false, err } @@ -178,7 +179,7 @@ func (s *Store) Intentions(ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) ( return s.configIntentionsListTxn(tx, ws, entMeta) } -func (s *Store) legacyIntentionsListTxn(tx *txn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, bool, error) { +func (s *Store) legacyIntentionsListTxn(tx ReadTxn, ws memdb.WatchSet, entMeta *structs.EnterpriseMeta) (uint64, structs.Intentions, bool, error) { // Get the index idx := maxIndexTxn(tx, intentionsTableName) if idx < 1 { @@ -206,6 +207,294 @@ func (s *Store) legacyIntentionsListTxn(tx *txn, ws memdb.WatchSet, entMeta *str var ErrLegacyIntentionsAreDisabled = errors.New("Legacy intention modifications are disabled after the config entry migration.") +func (s *Store) IntentionMutation(idx uint64, op structs.IntentionOp, mut *structs.IntentionMutation) error { + tx := s.db.WriteTxn(idx) + defer tx.Abort() + + usingConfigEntries, err := areIntentionsInConfigEntries(tx, nil) + if err != nil { + return err + } + if !usingConfigEntries { + return errors.New("state: IntentionMutation() is not allowed when intentions are not stored in config entries") + } + + switch op { + case structs.IntentionOpCreate: + if err := s.intentionMutationLegacyCreate(tx, idx, mut.Destination, mut.Value); err != nil { + return err + } + case structs.IntentionOpUpdate: + if err := s.intentionMutationLegacyUpdate(tx, idx, mut.ID, mut.Value); err != nil { + return err + } + case structs.IntentionOpDelete: + if mut.ID == "" { + if err := s.intentionMutationDelete(tx, idx, mut.Destination, mut.Source); err != nil { + return err + } + } else { + if err := s.intentionMutationLegacyDelete(tx, idx, mut.ID); err != nil { + return err + } + } + case structs.IntentionOpUpsert: + if err := s.intentionMutationUpsert(tx, idx, mut.Destination, mut.Source, mut.Value); err != nil { + return err + } + case structs.IntentionOpDeleteAll: + // This is an internal operation initiated by the leader and is not + // exposed for general RPC use. + return fmt.Errorf("Invalid Intention mutation operation '%s'", op) + default: + return fmt.Errorf("Invalid Intention mutation operation '%s'", op) + } + + return tx.Commit() +} + +func (s *Store) intentionMutationLegacyCreate( + tx WriteTxn, + idx uint64, + dest structs.ServiceName, + value *structs.SourceIntention, +) error { + _, configEntry, err := configEntryTxn(tx, nil, structs.ServiceIntentions, dest.Name, &dest.EnterpriseMeta) + if err != nil { + return fmt.Errorf("service-intentions config entry lookup failed: %v", err) + } + + var upsertEntry *structs.ServiceIntentionsConfigEntry + if configEntry == nil { + upsertEntry = &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: dest.Name, + EnterpriseMeta: dest.EnterpriseMeta, + Sources: []*structs.SourceIntention{value}, + } + } else { + prevEntry := configEntry.(*structs.ServiceIntentionsConfigEntry) + + if err := checkLegacyIntentionApplyAllowed(prevEntry); err != nil { + return err + } + + upsertEntry = prevEntry.Clone() + upsertEntry.Sources = append(upsertEntry.Sources, value) + } + + if err := upsertEntry.LegacyNormalize(); err != nil { + return err + } + if err := upsertEntry.LegacyValidate(); err != nil { + return err + } + + if err := ensureConfigEntryTxn(tx, idx, upsertEntry, upsertEntry.GetEnterpriseMeta()); err != nil { + return err + } + + return nil +} + +func (s *Store) intentionMutationLegacyUpdate( + tx WriteTxn, + idx uint64, + legacyID string, + value *structs.SourceIntention, +) error { + // This variant is just for legacy UUID-based intentions. + + _, prevEntry, ixn, err := s.IntentionGet(nil, legacyID) + if err != nil { + return fmt.Errorf("Intention lookup failed: %v", err) + } + if ixn == nil || prevEntry == nil { + return fmt.Errorf("Cannot modify non-existent intention: '%s'", legacyID) + } + + if err := checkLegacyIntentionApplyAllowed(prevEntry); err != nil { + return err + } + + upsertEntry := prevEntry.Clone() + + foundMatch := upsertEntry.UpdateSourceByLegacyID( + legacyID, + value, + ) + if !foundMatch { + return fmt.Errorf("Cannot modify non-existent intention: '%s'", legacyID) + } + + if err := upsertEntry.LegacyNormalize(); err != nil { + return err + } + if err := upsertEntry.LegacyValidate(); err != nil { + return err + } + + if err := ensureConfigEntryTxn(tx, idx, upsertEntry, upsertEntry.GetEnterpriseMeta()); err != nil { + return err + } + + return nil +} + +func (s *Store) intentionMutationDelete( + tx WriteTxn, + idx uint64, + dest structs.ServiceName, + src structs.ServiceName, +) error { + _, configEntry, err := configEntryTxn(tx, nil, structs.ServiceIntentions, dest.Name, &dest.EnterpriseMeta) + if err != nil { + return fmt.Errorf("service-intentions config entry lookup failed: %v", err) + } + if configEntry == nil { + return nil + } + + prevEntry := configEntry.(*structs.ServiceIntentionsConfigEntry) + upsertEntry := prevEntry.Clone() + + deleted := upsertEntry.DeleteSourceByName(src) + if !deleted { + return nil + } + + if upsertEntry == nil || len(upsertEntry.Sources) == 0 { + return deleteConfigEntryTxn( + tx, + idx, + structs.ServiceIntentions, + dest.Name, + &dest.EnterpriseMeta, + ) + } + + if err := upsertEntry.Normalize(); err != nil { + return err + } + if err := upsertEntry.Validate(); err != nil { + return err + } + + if err := ensureConfigEntryTxn(tx, idx, upsertEntry, upsertEntry.GetEnterpriseMeta()); err != nil { + return err + } + + return nil +} + +func (s *Store) intentionMutationLegacyDelete( + tx WriteTxn, + idx uint64, + legacyID string, +) error { + _, prevEntry, ixn, err := s.IntentionGet(nil, legacyID) + if err != nil { + return fmt.Errorf("Intention lookup failed: %v", err) + } + if ixn == nil || prevEntry == nil { + return fmt.Errorf("Cannot delete non-existent intention: '%s'", legacyID) + } + + if err := checkLegacyIntentionApplyAllowed(prevEntry); err != nil { + return err + } + + upsertEntry := prevEntry.Clone() + + deleted := upsertEntry.DeleteSourceByLegacyID(legacyID) + if !deleted { + return fmt.Errorf("Cannot delete non-existent intention: '%s'", legacyID) + } + + if upsertEntry == nil || len(upsertEntry.Sources) == 0 { + return deleteConfigEntryTxn( + tx, + idx, + structs.ServiceIntentions, + prevEntry.Name, + &prevEntry.EnterpriseMeta, + ) + } + + if err := upsertEntry.LegacyNormalize(); err != nil { + return err + } + if err := upsertEntry.LegacyValidate(); err != nil { + return err + } + + if err := ensureConfigEntryTxn(tx, idx, upsertEntry, upsertEntry.GetEnterpriseMeta()); err != nil { + return err + } + + return nil +} + +func (s *Store) intentionMutationUpsert( + tx WriteTxn, + idx uint64, + dest structs.ServiceName, + src structs.ServiceName, + value *structs.SourceIntention, +) error { + // This variant is just for config-entry based intentions. + + _, configEntry, err := configEntryTxn(tx, nil, structs.ServiceIntentions, dest.Name, &dest.EnterpriseMeta) + if err != nil { + return fmt.Errorf("service-intentions config entry lookup failed: %v", err) + } + + var prevEntry *structs.ServiceIntentionsConfigEntry + if configEntry != nil { + prevEntry = configEntry.(*structs.ServiceIntentionsConfigEntry) + } + + var upsertEntry *structs.ServiceIntentionsConfigEntry + + if prevEntry == nil { + upsertEntry = &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: dest.Name, + EnterpriseMeta: dest.EnterpriseMeta, + Sources: []*structs.SourceIntention{value}, + } + } else { + upsertEntry = prevEntry.Clone() + + upsertEntry.UpsertSourceByName(src, value) + } + + if err := upsertEntry.Normalize(); err != nil { + return err + } + if err := upsertEntry.Validate(); err != nil { + return err + } + + if err := ensureConfigEntryTxn(tx, idx, upsertEntry, upsertEntry.GetEnterpriseMeta()); err != nil { + return err + } + + return nil +} + +func checkLegacyIntentionApplyAllowed(prevEntry *structs.ServiceIntentionsConfigEntry) error { + if prevEntry == nil { + return nil + } + if prevEntry.LegacyIDFieldsAreAllSet() { + return nil + } + + sn := prevEntry.DestinationServiceName() + return fmt.Errorf("cannot use legacy intention API to edit intentions with a destination of %q after editing them via a service-intentions config entry", sn.String()) +} + // LegacyIntentionSet creates or updates an intention. // // Deprecated: Edit service-intentions config entries directly. @@ -213,7 +502,7 @@ func (s *Store) LegacyIntentionSet(idx uint64, ixn *structs.Intention) error { tx := s.db.WriteTxn(idx) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, nil) if err != nil { return err } @@ -230,7 +519,7 @@ func (s *Store) LegacyIntentionSet(idx uint64, ixn *structs.Intention) error { // legacyIntentionSetTxn is the inner method used to insert an intention with // the proper indexes into the state store. -func legacyIntentionSetTxn(tx *txn, idx uint64, ixn *structs.Intention) error { +func legacyIntentionSetTxn(tx WriteTxn, idx uint64, ixn *structs.Intention) error { // ID is required if ixn.ID == "" { return ErrMissingIntentionID @@ -290,7 +579,7 @@ func (s *Store) IntentionGet(ws memdb.WatchSet, id string) (uint64, *structs.Ser tx := s.db.Txn(false) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, ws) if err != nil { return 0, nil, nil, err } @@ -301,7 +590,7 @@ func (s *Store) IntentionGet(ws memdb.WatchSet, id string) (uint64, *structs.Ser return s.configIntentionGetTxn(tx, ws, id) } -func (s *Store) legacyIntentionGetTxn(tx *txn, ws memdb.WatchSet, id string) (uint64, *structs.Intention, error) { +func (s *Store) legacyIntentionGetTxn(tx ReadTxn, ws memdb.WatchSet, id string) (uint64, *structs.Intention, error) { // Get the table index. idx := maxIndexTxn(tx, intentionsTableName) if idx < 1 { @@ -329,7 +618,7 @@ func (s *Store) IntentionGetExact(ws memdb.WatchSet, args *structs.IntentionQuer tx := s.db.Txn(false) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, ws) if err != nil { return 0, nil, nil, err } @@ -340,7 +629,7 @@ func (s *Store) IntentionGetExact(ws memdb.WatchSet, args *structs.IntentionQuer return s.configIntentionGetExactTxn(tx, ws, args) } -func (s *Store) legacyIntentionGetExactTxn(tx *txn, ws memdb.WatchSet, args *structs.IntentionQueryExact) (uint64, *structs.Intention, error) { +func (s *Store) legacyIntentionGetExactTxn(tx ReadTxn, ws memdb.WatchSet, args *structs.IntentionQueryExact) (uint64, *structs.Intention, error) { if err := args.Validate(); err != nil { return 0, nil, err } @@ -375,7 +664,7 @@ func (s *Store) LegacyIntentionDelete(idx uint64, id string) error { tx := s.db.WriteTxn(idx) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, nil) if err != nil { return err } @@ -392,7 +681,7 @@ func (s *Store) LegacyIntentionDelete(idx uint64, id string) error { // legacyIntentionDeleteTxn is the inner method used to delete a legacy intention // with the proper indexes into the state store. -func legacyIntentionDeleteTxn(tx *txn, idx uint64, queryID string) error { +func legacyIntentionDeleteTxn(tx WriteTxn, idx uint64, queryID string) error { // Pull the query. wrapped, err := tx.First(intentionsTableName, "id", queryID) if err != nil { @@ -500,6 +789,12 @@ func (s *Store) IntentionDecision( } resp.ExternalSource = ixnMatch.Meta[structs.MetaExternalSource] + // Intentions with wildcard namespaces but specific names are not allowed (*/web -> */api) + // So we don't check namespaces to see if there's an exact intention + if ixnMatch.SourceName != structs.WildcardSpecifier && ixnMatch.DestinationName != structs.WildcardSpecifier { + resp.HasExact = true + } + return resp, nil } @@ -515,7 +810,7 @@ func (s *Store) IntentionMatch(ws memdb.WatchSet, args *structs.IntentionQueryMa tx := s.db.Txn(false) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, ws) if err != nil { return 0, nil, err } @@ -525,7 +820,7 @@ func (s *Store) IntentionMatch(ws memdb.WatchSet, args *structs.IntentionQueryMa return s.configIntentionMatchTxn(tx, ws, args) } -func (s *Store) legacyIntentionMatchTxn(tx *txn, ws memdb.WatchSet, args *structs.IntentionQueryMatch) (uint64, []structs.Intentions, error) { +func (s *Store) legacyIntentionMatchTxn(tx ReadTxn, ws memdb.WatchSet, args *structs.IntentionQueryMatch) (uint64, []structs.Intentions, error) { // Get the table index. idx := maxIndexTxn(tx, intentionsTableName) if idx < 1 { @@ -535,7 +830,7 @@ func (s *Store) legacyIntentionMatchTxn(tx *txn, ws memdb.WatchSet, args *struct // Make all the calls and accumulate the results results := make([]structs.Intentions, len(args.Entries)) for i, entry := range args.Entries { - ixns, err := s.intentionMatchOneTxn(tx, ws, entry, args.Type) + ixns, err := intentionMatchOneTxn(tx, ws, entry, args.Type) if err != nil { return 0, nil, err } @@ -564,18 +859,18 @@ func (s *Store) IntentionMatchOne( tx := s.db.Txn(false) defer tx.Abort() - usingConfigEntries, err := areIntentionsInConfigEntries(tx) + usingConfigEntries, err := areIntentionsInConfigEntries(tx, ws) if err != nil { return 0, nil, err } if !usingConfigEntries { - return s.legacyIntentionMatchOneTxn(tx, ws, entry, matchType) + return legacyIntentionMatchOneTxn(tx, ws, entry, matchType) } - return s.configIntentionMatchOneTxn(tx, ws, entry, matchType) + return configIntentionMatchOneTxn(tx, ws, entry, matchType) } -func (s *Store) legacyIntentionMatchOneTxn( - tx *txn, +func legacyIntentionMatchOneTxn( + tx ReadTxn, ws memdb.WatchSet, entry structs.IntentionMatchEntry, matchType structs.IntentionMatchType, @@ -586,7 +881,7 @@ func (s *Store) legacyIntentionMatchOneTxn( idx = 1 } - results, err := s.intentionMatchOneTxn(tx, ws, entry, matchType) + results, err := intentionMatchOneTxn(tx, ws, entry, matchType) if err != nil { return 0, nil, err } @@ -596,7 +891,7 @@ func (s *Store) legacyIntentionMatchOneTxn( return idx, results, nil } -func (s *Store) intentionMatchOneTxn(tx ReadTxn, ws memdb.WatchSet, +func intentionMatchOneTxn(tx ReadTxn, ws memdb.WatchSet, entry structs.IntentionMatchEntry, matchType structs.IntentionMatchType) (structs.Intentions, error) { // Each search entry may require multiple queries to memdb, so this diff --git a/agent/consul/state/intention_oss.go b/agent/consul/state/intention_oss.go index 56944467d..dcdadfa43 100644 --- a/agent/consul/state/intention_oss.go +++ b/agent/consul/state/intention_oss.go @@ -7,7 +7,7 @@ import ( memdb "github.com/hashicorp/go-memdb" ) -func intentionListTxn(tx *txn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { +func intentionListTxn(tx ReadTxn, _ *structs.EnterpriseMeta) (memdb.ResultIterator, error) { // Get all intentions return tx.Get(intentionsTableName, "id") } diff --git a/agent/consul/state/intention_test.go b/agent/consul/state/intention_test.go index 1b14daecf..23b9caa75 100644 --- a/agent/consul/state/intention_test.go +++ b/agent/consul/state/intention_test.go @@ -13,6 +13,14 @@ import ( "github.com/stretchr/testify/require" ) +var ( + testLocation = time.FixedZone("UTC-8", -8*60*60) + + testTimeA = time.Date(1955, 11, 5, 6, 15, 0, 0, testLocation) + testTimeB = time.Date(1985, 10, 26, 1, 35, 0, 0, testLocation) + testTimeC = time.Date(2015, 10, 21, 16, 29, 0, 0, testLocation) +) + func testBothIntentionFormats(t *testing.T, f func(t *testing.T, s *Store, legacy bool)) { t.Helper() @@ -72,6 +80,8 @@ func TestStore_IntentionSetGet_basic(t *testing.T) { DestinationNS: "default", DestinationName: "web", Meta: map[string]string{}, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, } // Inserting a with empty ID is disallowed. @@ -89,6 +99,8 @@ func TestStore_IntentionSetGet_basic(t *testing.T) { DestinationNS: "default", DestinationName: "web", Meta: map[string]string{}, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, RaftIndex: structs.RaftIndex{ CreateIndex: lastIndex, ModifyIndex: lastIndex, @@ -103,10 +115,12 @@ func TestStore_IntentionSetGet_basic(t *testing.T) { Name: "web", Sources: []*structs.SourceIntention{ { - LegacyID: srcID, - Name: "*", - Action: structs.IntentionActionAllow, - LegacyMeta: map[string]string{}, + LegacyID: srcID, + Name: "*", + Action: structs.IntentionActionAllow, + LegacyMeta: map[string]string{}, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, } @@ -258,6 +272,534 @@ func TestStore_LegacyIntentionDelete_failsAfterUpgrade(t *testing.T) { testutil.RequireErrorContains(t, err, ErrLegacyIntentionsAreDisabled.Error()) } +func TestStore_IntentionMutation(t *testing.T) { + testBothIntentionFormats(t, func(t *testing.T, s *Store, legacy bool) { + if legacy { + mut := &structs.IntentionMutation{} + err := s.IntentionMutation(1, structs.IntentionOpCreate, mut) + testutil.RequireErrorContains(t, err, "state: IntentionMutation() is not allowed when intentions are not stored in config entries") + } else { + testStore_IntentionMutation(t, s) + } + }) +} + +func testStore_IntentionMutation(t *testing.T, s *Store) { + lastIndex := uint64(1) + + defaultEntMeta := structs.DefaultEnterpriseMeta() + + var ( + id1 = testUUID() + id2 = testUUID() + id3 = testUUID() + ) + + eqEntry := func(t *testing.T, expect, got *structs.ServiceIntentionsConfigEntry) { + t.Helper() + + // Zero out some fields for comparison. + got = got.Clone() + got.RaftIndex = structs.RaftIndex{} + for _, src := range got.Sources { + src.LegacyCreateTime = nil + src.LegacyUpdateTime = nil + if len(src.LegacyMeta) == 0 { + src.LegacyMeta = nil + } + } + require.Equal(t, expect, got) + } + + // Try to create an intention without an ID to prove that LegacyValidate is being called. + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpCreate, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + }, + }), `Sources[0].LegacyID must be set`) + + // Create intention and create config entry + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpCreate, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + LegacyID: id1, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGet(nil, id1) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + LegacyID: id1, + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // Try to create a duplicate intention. + { + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpCreate, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + LegacyCreateTime: &testTimeB, + LegacyUpdateTime: &testTimeB, + }, + }), `more than once`) + } + + // Create intention with existing config entry + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpCreate, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + LegacyCreateTime: &testTimeB, + LegacyUpdateTime: &testTimeB, + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGet(nil, id2) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + LegacyID: id1, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + { + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // Try to update an intention without specifying an ID + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpdate, &structs.IntentionMutation{ + ID: "", + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + }, + }), `failed config entry lookup: index error: UUID must be 36 characters`) + + // Try to update a non-existent intention + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpdate, &structs.IntentionMutation{ + ID: id3, + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + }, + }), `Cannot modify non-existent intention`) + + // Update an existing intention by ID + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpdate, &structs.IntentionMutation{ + ID: id2, + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + LegacyCreateTime: &testTimeB, + LegacyUpdateTime: &testTimeC, + Description: "op update", + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGet(nil, id2) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + LegacyID: id1, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + { + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + Precedence: 9, + Type: structs.IntentionSourceConsul, + Description: "op update", + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // Try to delete a non-existent intention + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + ID: id3, + }), `Cannot delete non-existent intention`) + + // delete by id + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + ID: id1, + })) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + LegacyID: id2, + Precedence: 9, + Type: structs.IntentionSourceConsul, + Description: "op update", + }, + }, + }, entries[0].(*structs.ServiceIntentionsConfigEntry)) + + lastIndex++ + } + + // delete last one by id + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + ID: id2, + })) + + // none one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Empty(t, entries) + + lastIndex++ + } + + // upsert intention for first time + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpsert, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGetExact(nil, &structs.IntentionQueryExact{ + SourceNS: "default", + SourceName: "web", + DestinationNS: "default", + DestinationName: "api", + }) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // upsert over itself (REPLACE) + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpsert, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Source: structs.NewServiceName("web", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Description: "upserted over", + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGetExact(nil, &structs.IntentionQueryExact{ + SourceNS: "default", + SourceName: "web", + DestinationNS: "default", + DestinationName: "api", + }) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + require.Equal(t, "upserted over", ixn.Description) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Precedence: 9, + Type: structs.IntentionSourceConsul, + Description: "upserted over", + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // upsert into existing config entry (APPEND) + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpUpsert, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Source: structs.NewServiceName("debug", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + }, + })) + + // Ensure it's there now. + idx, entry, ixn, err := s.IntentionGetExact(nil, &structs.IntentionQueryExact{ + SourceNS: "default", + SourceName: "debug", + DestinationNS: "default", + DestinationName: "api", + }) + require.NoError(t, err) + require.NotNil(t, entry) + require.NotNil(t, ixn) + require.Equal(t, lastIndex, idx) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Precedence: 9, + Type: structs.IntentionSourceConsul, + Description: "upserted over", + }, + { + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, entry) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + lastIndex++ + } + + // Try to delete a non-existent intention by name + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Source: structs.NewServiceName("blurb", defaultEntMeta), + })) + + // delete by name + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Source: structs.NewServiceName("web", defaultEntMeta), + })) + + // only one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Len(t, entries, 1) + + eqEntry(t, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "debug", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionDeny, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, entries[0].(*structs.ServiceIntentionsConfigEntry)) + + lastIndex++ + } + + // delete last one by name + { + require.NoError(t, s.IntentionMutation(lastIndex, structs.IntentionOpDelete, &structs.IntentionMutation{ + Destination: structs.NewServiceName("api", defaultEntMeta), + Source: structs.NewServiceName("debug", defaultEntMeta), + })) + + // none one + _, entries, err := s.ConfigEntries(nil, nil) + require.NoError(t, err) + require.Empty(t, entries) + + lastIndex++ + } + + // Try to update an intention with an ID on a non-legacy config entry. + { + idFake := testUUID() + + require.NoError(t, s.EnsureConfigEntry(lastIndex, &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "new", + EnterpriseMeta: *defaultEntMeta, + Sources: []*structs.SourceIntention{ + { + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + Precedence: 9, + Type: structs.IntentionSourceConsul, + }, + }, + }, nil)) + + lastIndex++ + + // ...via create + testutil.RequireErrorContains(t, s.IntentionMutation(lastIndex, structs.IntentionOpCreate, &structs.IntentionMutation{ + Destination: structs.NewServiceName("new", defaultEntMeta), + Value: &structs.SourceIntention{ + Name: "old", + EnterpriseMeta: *defaultEntMeta, + Action: structs.IntentionActionAllow, + LegacyID: idFake, + }, + }), `cannot use legacy intention API to edit intentions with a destination`) + } +} + func TestStore_LegacyIntentionSet_emptyId(t *testing.T) { // note: irrelevant test for config entries variant s := testStateStore(t) @@ -282,24 +824,27 @@ func TestStore_IntentionSet_updateCreatedAt(t *testing.T) { testBothIntentionFormats(t, func(t *testing.T, s *Store, legacy bool) { // Build a valid intention var ( - id = testUUID() - createTime time.Time + id = testUUID() ) if legacy { ixn := structs.Intention{ - ID: id, - CreatedAt: time.Now().UTC(), + ID: id, + SourceNS: "default", + SourceName: "*", + DestinationNS: "default", + DestinationName: "web", + Action: structs.IntentionActionAllow, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, } // Insert require.NoError(t, s.LegacyIntentionSet(1, &ixn)) - createTime = ixn.CreatedAt - // Change a value and test updating ixnUpdate := ixn - ixnUpdate.CreatedAt = createTime.Add(10 * time.Second) + ixnUpdate.CreatedAt = testTimeB require.NoError(t, s.LegacyIntentionSet(2, &ixnUpdate)) id = ixn.ID @@ -310,10 +855,12 @@ func TestStore_IntentionSet_updateCreatedAt(t *testing.T) { Name: "web", Sources: []*structs.SourceIntention{ { - LegacyID: id, - Name: "*", - Action: structs.IntentionActionAllow, - LegacyMeta: map[string]string{}, + LegacyID: id, + Name: "*", + Action: structs.IntentionActionAllow, + LegacyMeta: map[string]string{}, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, } @@ -321,15 +868,13 @@ func TestStore_IntentionSet_updateCreatedAt(t *testing.T) { require.NoError(t, conf.LegacyNormalize()) require.NoError(t, conf.LegacyValidate()) require.NoError(t, s.EnsureConfigEntry(1, conf.Clone(), nil)) - - createTime = *conf.Sources[0].LegacyCreateTime } // Read it back and verify _, _, actual, err := s.IntentionGet(nil, id) require.NoError(t, err) require.NotNil(t, actual) - require.Equal(t, createTime, actual.CreatedAt) + require.Equal(t, testTimeA, actual.CreatedAt) }) } @@ -339,7 +884,14 @@ func TestStore_IntentionSet_metaNil(t *testing.T) { if legacy { // Build a valid intention ixn := &structs.Intention{ - ID: id, + ID: id, + SourceNS: "default", + SourceName: "*", + DestinationNS: "default", + DestinationName: "web", + Action: structs.IntentionActionAllow, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, } // Insert @@ -351,9 +903,11 @@ func TestStore_IntentionSet_metaNil(t *testing.T) { Name: "web", Sources: []*structs.SourceIntention{ { - LegacyID: id, - Name: "*", - Action: structs.IntentionActionAllow, + LegacyID: id, + Name: "*", + Action: structs.IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, } @@ -380,8 +934,15 @@ func TestStore_IntentionSet_metaSet(t *testing.T) { if legacy { // Build a valid intention ixn := structs.Intention{ - ID: id, - Meta: expectMeta, + ID: id, + SourceNS: "default", + SourceName: "*", + DestinationNS: "default", + DestinationName: "web", + Action: structs.IntentionActionAllow, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, + Meta: expectMeta, } // Insert @@ -394,10 +955,12 @@ func TestStore_IntentionSet_metaSet(t *testing.T) { Name: "web", Sources: []*structs.SourceIntention{ { - LegacyID: id, - Name: "*", - Action: structs.IntentionActionAllow, - LegacyMeta: expectMeta, + LegacyID: id, + Name: "*", + Action: structs.IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + LegacyMeta: expectMeta, }, }, } @@ -428,7 +991,14 @@ func TestStore_IntentionDelete(t *testing.T) { // Create if legacy { ixn := &structs.Intention{ - ID: id, + ID: id, + SourceNS: "default", + SourceName: "*", + DestinationNS: "default", + DestinationName: "web", + Action: structs.IntentionActionAllow, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, } lastIndex++ require.NoError(t, s.LegacyIntentionSet(lastIndex, ixn)) @@ -442,9 +1012,11 @@ func TestStore_IntentionDelete(t *testing.T) { Name: "web", Sources: []*structs.SourceIntention{ { - LegacyID: id, - Name: "*", - Action: structs.IntentionActionAllow, + LegacyID: id, + Name: "*", + Action: structs.IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, } @@ -519,6 +1091,8 @@ func TestStore_IntentionsList(t *testing.T) { SourceType: structs.IntentionSourceConsul, Action: structs.IntentionActionAllow, Meta: map[string]string{}, + CreatedAt: testTimeA, + UpdatedAt: testTimeA, } } @@ -530,22 +1104,17 @@ func TestStore_IntentionsList(t *testing.T) { id := testUUID() for _, src := range srcs { conf.Sources = append(conf.Sources, &structs.SourceIntention{ - LegacyID: id, - Name: src, - Action: structs.IntentionActionAllow, + LegacyID: id, + Name: src, + Action: structs.IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }) } return conf } - cmpIntention := func(ixn *structs.Intention, id string) *structs.Intention { - ixn.ID = id - //nolint:staticcheck - ixn.UpdatePrecedence() - return ixn - } - - clearIrrelevantFields := func(ixns []*structs.Intention) { + clearIrrelevantFields := func(ixns ...*structs.Intention) { // Clear fields irrelevant for comparison. for _, ixn := range ixns { ixn.Hash = nil @@ -556,6 +1125,15 @@ func TestStore_IntentionsList(t *testing.T) { } } + cmpIntention := func(ixn *structs.Intention, id string) *structs.Intention { + ixn2 := ixn.Clone() + ixn2.ID = id + clearIrrelevantFields(ixn2) + //nolint:staticcheck + ixn2.UpdatePrecedence() + return ixn2 + } + var ( expectIDs []string ) @@ -610,7 +1188,7 @@ func TestStore_IntentionsList(t *testing.T) { require.Equal(t, !legacy, fromConfig) require.Equal(t, lastIndex, idx) - clearIrrelevantFields(actual) + clearIrrelevantFields(actual...) require.Equal(t, expected, actual) }) } @@ -986,6 +1564,37 @@ func TestStore_IntentionMatchOne_table(t *testing.T) { } } +func TestStore_IntentionMatch_WatchesDuringUpgrade(t *testing.T) { + s := testStateStore(t) + + args := structs.IntentionQueryMatch{ + Type: structs.IntentionMatchDestination, + Entries: []structs.IntentionMatchEntry{ + {Namespace: "default", Name: "api"}, + }, + } + + // Start with an empty, un-upgraded database and do a watch. + + ws := memdb.NewWatchSet() + _, matches, err := s.IntentionMatch(ws, &args) + require.NoError(t, err) + require.Len(t, matches, 1) // one request gets one response + require.Len(t, matches[0], 0) // but no intentions + + disableLegacyIntentions(s) + conf := &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "api", + Sources: []*structs.SourceIntention{ + {Name: "web", Action: structs.IntentionActionAllow}, + }, + } + require.NoError(t, s.EnsureConfigEntry(1, conf, &conf.EnterpriseMeta)) + + require.True(t, watchFired(ws)) +} + func TestStore_LegacyIntention_Snapshot_Restore(t *testing.T) { // note: irrelevant test for config entries variant s := testStateStore(t) @@ -1132,6 +1741,16 @@ func TestStore_IntentionDecision(t *testing.T) { }, }, }, + &structs.ServiceIntentionsConfigEntry{ + Kind: structs.ServiceIntentions, + Name: "mysql", + Sources: []*structs.SourceIntention{ + { + Name: "*", + Action: structs.IntentionActionAllow, + }, + }, + }, } s := testConfigStateStore(t) @@ -1167,6 +1786,7 @@ func TestStore_IntentionDecision(t *testing.T) { expect: structs.IntentionDecisionSummary{ Allowed: false, HasPermissions: true, + HasExact: true, }, }, { @@ -1176,6 +1796,7 @@ func TestStore_IntentionDecision(t *testing.T) { expect: structs.IntentionDecisionSummary{ Allowed: false, HasPermissions: false, + HasExact: true, }, }, { @@ -1186,6 +1807,17 @@ func TestStore_IntentionDecision(t *testing.T) { Allowed: true, HasPermissions: false, ExternalSource: "nomad", + HasExact: true, + }, + }, + { + name: "allowed by source wildcard not exact", + src: "anything", + dst: "mysql", + expect: structs.IntentionDecisionSummary{ + Allowed: true, + HasPermissions: false, + HasExact: false, }, }, } diff --git a/agent/consul/state/kvs.go b/agent/consul/state/kvs.go index 0926e3573..554f3830b 100644 --- a/agent/consul/state/kvs.go +++ b/agent/consul/state/kvs.go @@ -69,7 +69,7 @@ func (s *Snapshot) Tombstones() (memdb.ResultIterator, error) { // KVS is used when restoring from a snapshot. Use KVSSet for general inserts. func (s *Restore) KVS(entry *structs.DirEntry) error { - if err := insertKVTxn(s.tx, entry, true); err != nil { + if err := insertKVTxn(s.tx, entry, true, true); err != nil { return fmt.Errorf("failed inserting kvs entry: %s", err) } @@ -117,7 +117,7 @@ func (s *Store) KVSSet(idx uint64, entry *structs.DirEntry) error { // If updateSession is true, then the incoming entry will set the new // session (should be validated before calling this). Otherwise, we will keep // whatever the existing session is. -func kvsSetTxn(tx *txn, idx uint64, entry *structs.DirEntry, updateSession bool) error { +func kvsSetTxn(tx WriteTxn, idx uint64, entry *structs.DirEntry, updateSession bool) error { // Retrieve an existing KV pair existingNode, err := firstWithTxn(tx, "kvs", "id", entry.Key, &entry.EnterpriseMeta) if err != nil { @@ -153,7 +153,7 @@ func kvsSetTxn(tx *txn, idx uint64, entry *structs.DirEntry, updateSession bool) entry.ModifyIndex = idx // Store the kv pair in the state store and update the index. - if err := insertKVTxn(tx, entry, false); err != nil { + if err := insertKVTxn(tx, entry, false, false); err != nil { return fmt.Errorf("failed inserting kvs entry: %s", err) } @@ -170,7 +170,7 @@ func (s *Store) KVSGet(ws memdb.WatchSet, key string, entMeta *structs.Enterpris // kvsGetTxn is the inner method that gets a KVS entry inside an existing // transaction. -func kvsGetTxn(tx *txn, +func kvsGetTxn(tx ReadTxn, ws memdb.WatchSet, key string, entMeta *structs.EnterpriseMeta) (uint64, *structs.DirEntry, error) { // Get the table index. @@ -203,7 +203,7 @@ func (s *Store) KVSList(ws memdb.WatchSet, // kvsListTxn is the inner method that gets a list of KVS entries matching a // prefix. -func (s *Store) kvsListTxn(tx *txn, +func (s *Store) kvsListTxn(tx ReadTxn, ws memdb.WatchSet, prefix string, entMeta *structs.EnterpriseMeta) (uint64, structs.DirEntries, error) { // Get the table indexes. @@ -252,7 +252,7 @@ func (s *Store) KVSDelete(idx uint64, key string, entMeta *structs.EnterpriseMet // kvsDeleteTxn is the inner method used to perform the actual deletion // of a key/value pair within an existing transaction. -func (s *Store) kvsDeleteTxn(tx *txn, idx uint64, key string, entMeta *structs.EnterpriseMeta) error { +func (s *Store) kvsDeleteTxn(tx WriteTxn, idx uint64, key string, entMeta *structs.EnterpriseMeta) error { // Look up the entry in the state store. entry, err := firstWithTxn(tx, "kvs", "id", key, entMeta) if err != nil { @@ -289,7 +289,7 @@ func (s *Store) KVSDeleteCAS(idx, cidx uint64, key string, entMeta *structs.Ente // kvsDeleteCASTxn is the inner method that does a CAS delete within an existing // transaction. -func (s *Store) kvsDeleteCASTxn(tx *txn, idx, cidx uint64, key string, entMeta *structs.EnterpriseMeta) (bool, error) { +func (s *Store) kvsDeleteCASTxn(tx WriteTxn, idx, cidx uint64, key string, entMeta *structs.EnterpriseMeta) (bool, error) { // Retrieve the existing kvs entry, if any exists. entry, err := firstWithTxn(tx, "kvs", "id", key, entMeta) if err != nil { @@ -330,7 +330,7 @@ func (s *Store) KVSSetCAS(idx uint64, entry *structs.DirEntry) (bool, error) { // kvsSetCASTxn is the inner method used to do a CAS inside an existing // transaction. -func kvsSetCASTxn(tx *txn, idx uint64, entry *structs.DirEntry) (bool, error) { +func kvsSetCASTxn(tx WriteTxn, idx uint64, entry *structs.DirEntry) (bool, error) { // Retrieve the existing entry. existing, err := firstWithTxn(tx, "kvs", "id", entry.Key, &entry.EnterpriseMeta) if err != nil { @@ -394,7 +394,7 @@ func (s *Store) KVSLock(idx uint64, entry *structs.DirEntry) (bool, error) { // kvsLockTxn is the inner method that does a lock inside an existing // transaction. -func kvsLockTxn(tx *txn, idx uint64, entry *structs.DirEntry) (bool, error) { +func kvsLockTxn(tx WriteTxn, idx uint64, entry *structs.DirEntry) (bool, error) { // Verify that a session is present. if entry.Session == "" { return false, fmt.Errorf("missing session") @@ -460,7 +460,7 @@ func (s *Store) KVSUnlock(idx uint64, entry *structs.DirEntry) (bool, error) { // kvsUnlockTxn is the inner method that does an unlock inside an existing // transaction. -func kvsUnlockTxn(tx *txn, idx uint64, entry *structs.DirEntry) (bool, error) { +func kvsUnlockTxn(tx WriteTxn, idx uint64, entry *structs.DirEntry) (bool, error) { // Verify that a session is present. if entry.Session == "" { return false, fmt.Errorf("missing session") @@ -498,7 +498,7 @@ func kvsUnlockTxn(tx *txn, idx uint64, entry *structs.DirEntry) (bool, error) { // kvsCheckSessionTxn checks to see if the given session matches the current // entry for a key. -func kvsCheckSessionTxn(tx *txn, +func kvsCheckSessionTxn(tx WriteTxn, key string, session string, entMeta *structs.EnterpriseMeta) (*structs.DirEntry, error) { entry, err := firstWithTxn(tx, "kvs", "id", key, entMeta) @@ -519,7 +519,7 @@ func kvsCheckSessionTxn(tx *txn, // kvsCheckIndexTxn checks to see if the given modify index matches the current // entry for a key. -func kvsCheckIndexTxn(tx *txn, +func kvsCheckIndexTxn(tx WriteTxn, key string, cidx uint64, entMeta *structs.EnterpriseMeta) (*structs.DirEntry, error) { entry, err := firstWithTxn(tx, "kvs", "id", key, entMeta) diff --git a/agent/consul/state/kvs_oss.go b/agent/consul/state/kvs_oss.go index b6586a8e5..b1559af25 100644 --- a/agent/consul/state/kvs_oss.go +++ b/agent/consul/state/kvs_oss.go @@ -16,7 +16,7 @@ func kvsIndexer() *memdb.StringFieldIndex { } } -func insertKVTxn(tx *txn, entry *structs.DirEntry, updateMax bool) error { +func insertKVTxn(tx WriteTxn, entry *structs.DirEntry, updateMax bool, _ bool) error { if err := tx.Insert("kvs", entry); err != nil { return err } @@ -33,7 +33,7 @@ func insertKVTxn(tx *txn, entry *structs.DirEntry, updateMax bool) error { return nil } -func kvsListEntriesTxn(tx *txn, ws memdb.WatchSet, prefix string, entMeta *structs.EnterpriseMeta) (uint64, structs.DirEntries, error) { +func kvsListEntriesTxn(tx ReadTxn, ws memdb.WatchSet, prefix string, entMeta *structs.EnterpriseMeta) (uint64, structs.DirEntries, error) { var ents structs.DirEntries var lindex uint64 @@ -56,7 +56,7 @@ func kvsListEntriesTxn(tx *txn, ws memdb.WatchSet, prefix string, entMeta *struc // kvsDeleteTreeTxn is the inner method that does a recursive delete inside an // existing transaction. -func (s *Store) kvsDeleteTreeTxn(tx *txn, idx uint64, prefix string, entMeta *structs.EnterpriseMeta) error { +func (s *Store) kvsDeleteTreeTxn(tx WriteTxn, idx uint64, prefix string, entMeta *structs.EnterpriseMeta) error { // For prefix deletes, only insert one tombstone and delete the entire subtree deleted, err := tx.DeletePrefix("kvs", "id_prefix", prefix) if err != nil { @@ -77,11 +77,11 @@ func (s *Store) kvsDeleteTreeTxn(tx *txn, idx uint64, prefix string, entMeta *st return nil } -func kvsMaxIndex(tx *txn, entMeta *structs.EnterpriseMeta) uint64 { +func kvsMaxIndex(tx ReadTxn, entMeta *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "kvs", "tombstones") } -func kvsDeleteWithEntry(tx *txn, entry *structs.DirEntry, idx uint64) error { +func kvsDeleteWithEntry(tx WriteTxn, entry *structs.DirEntry, idx uint64) error { // Delete the entry and update the index. if err := tx.Delete("kvs", entry); err != nil { return fmt.Errorf("failed deleting kvs entry: %s", err) diff --git a/agent/consul/state/kvs_test.go b/agent/consul/state/kvs_test.go index dd23877eb..5538f24d9 100644 --- a/agent/consul/state/kvs_test.go +++ b/agent/consul/state/kvs_test.go @@ -8,8 +8,9 @@ import ( "github.com/stretchr/testify/require" - "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-memdb" + + "github.com/hashicorp/consul/agent/structs" ) func TestStateStore_ReapTombstones(t *testing.T) { @@ -91,10 +92,7 @@ func TestStateStore_GC(t *testing.T) { // Enable it and attach it to the state store. gc.SetEnabled(true) - s, err := NewStateStore(gc) - if err != nil { - t.Fatalf("err: %s", err) - } + s := NewStateStore(gc) // Create some KV pairs. testSetKey(t, s, 1, "foo", "foo", nil) diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 5e6bbb604..99c0f36bc 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -1,11 +1,13 @@ package state import ( + "context" "fmt" + "github.com/hashicorp/go-memdb" + "github.com/hashicorp/consul/agent/consul/stream" "github.com/hashicorp/consul/proto/pbsubscribe" - "github.com/hashicorp/go-memdb" ) // ReadTxn is implemented by memdb.Txn to perform read operations. @@ -13,14 +15,27 @@ type ReadTxn interface { Get(table, index string, args ...interface{}) (memdb.ResultIterator, error) First(table, index string, args ...interface{}) (interface{}, error) FirstWatch(table, index string, args ...interface{}) (<-chan struct{}, interface{}, error) +} + +// AbortTxn is a ReadTxn that can also be aborted to end the transaction. +type AbortTxn interface { + ReadTxn Abort() } +// ReadDB is a DB that provides read-only transactions. +type ReadDB interface { + ReadTxn() AbortTxn +} + // WriteTxn is implemented by memdb.Txn to perform write operations. type WriteTxn interface { ReadTxn + Defer(func()) + Delete(table string, obj interface{}) error + DeleteAll(table, index string, args ...interface{}) (int, error) + DeletePrefix(table string, index string, prefix string) (bool, error) Insert(table string, obj interface{}) error - Commit() error } // Changes wraps a memdb.Changes to include the index at which these changes @@ -37,29 +52,31 @@ type Changes struct { // 2. Sent to the eventPublisher which will create and emit change events type changeTrackerDB struct { db *memdb.MemDB - publisher *stream.EventPublisher + publisher EventPublisher processChanges func(ReadTxn, Changes) ([]stream.Event, error) } +type EventPublisher interface { + Publish([]stream.Event) + Run(context.Context) + Subscribe(*stream.SubscribeRequest) (*stream.Subscription, error) +} + // Txn exists to maintain backwards compatibility with memdb.DB.Txn. Preexisting // code may use it to create a read-only transaction, but it will panic if called // with write=true. // // Deprecated: use either ReadTxn, or WriteTxn. -func (c *changeTrackerDB) Txn(write bool) *txn { +func (c *changeTrackerDB) Txn(write bool) *memdb.Txn { if write { panic("don't use db.Txn(true), use db.WriteTxn(idx uin64)") } return c.ReadTxn() } -// ReadTxn returns a read-only transaction which behaves exactly the same as -// memdb.Txn -// -// TODO: this could return a regular memdb.Txn if all the state functions accepted -// the ReadTxn interface -func (c *changeTrackerDB) ReadTxn() *txn { - return &txn{Txn: c.db.Txn(false)} +// ReadTxn returns a read-only transaction. +func (c *changeTrackerDB) ReadTxn() *memdb.Txn { + return c.db.Txn(false) } // WriteTxn returns a wrapped memdb.Txn suitable for writes to the state store. @@ -155,6 +172,12 @@ func (tx *txn) Commit() error { return nil } +type readDB memdb.MemDB + +func (db *readDB) ReadTxn() AbortTxn { + return (*memdb.MemDB)(db).Txn(false) +} + var ( topicServiceHealth = pbsubscribe.Topic_ServiceHealth topicServiceHealthConnect = pbsubscribe.Topic_ServiceHealthConnect @@ -177,9 +200,11 @@ func processDBChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { return events, nil } -func newSnapshotHandlers(s *Store) stream.SnapshotHandlers { +func newSnapshotHandlers(db ReadDB) stream.SnapshotHandlers { return stream.SnapshotHandlers{ - topicServiceHealth: serviceHealthSnapshot(s, topicServiceHealth), - topicServiceHealthConnect: serviceHealthSnapshot(s, topicServiceHealthConnect), + topicServiceHealth: serviceHealthSnapshot(db, topicServiceHealth), + // The connect topic is temporarily disabled until the correct events are + // created for terminating gateway changes. + //topicServiceHealthConnect: serviceHealthSnapshot(db, topicServiceHealthConnect), } } diff --git a/agent/consul/state/prepared_query.go b/agent/consul/state/prepared_query.go index d4ffa6f1a..3009dc577 100644 --- a/agent/consul/state/prepared_query.go +++ b/agent/consul/state/prepared_query.go @@ -258,7 +258,7 @@ func (s *Store) PreparedQueryDelete(idx uint64, queryID string) error { // preparedQueryDeleteTxn is the inner method used to delete a prepared query // with the proper indexes into the state store. -func preparedQueryDeleteTxn(tx *txn, idx uint64, queryID string) error { +func preparedQueryDeleteTxn(tx WriteTxn, idx uint64, queryID string) error { // Pull the query. wrapped, err := tx.First("prepared-queries", "id", queryID) if err != nil { diff --git a/agent/consul/state/session.go b/agent/consul/state/session.go index e6fb906e1..36dce655e 100644 --- a/agent/consul/state/session.go +++ b/agent/consul/state/session.go @@ -146,7 +146,7 @@ func (s *Snapshot) Sessions() (memdb.ResultIterator, error) { // Session is used when restoring from a snapshot. For general inserts, use // SessionCreate. func (s *Restore) Session(sess *structs.Session) error { - if err := insertSessionTxn(s.tx, sess, sess.ModifyIndex, true); err != nil { + if err := insertSessionTxn(s.tx, sess, sess.ModifyIndex, true, true); err != nil { return fmt.Errorf("failed inserting session: %s", err) } @@ -213,7 +213,7 @@ func sessionCreateTxn(tx *txn, idx uint64, sess *structs.Session) error { } // Insert the session - if err := insertSessionTxn(tx, sess, idx, false); err != nil { + if err := insertSessionTxn(tx, sess, idx, false, false); err != nil { return fmt.Errorf("failed inserting session: %s", err) } @@ -301,7 +301,7 @@ func (s *Store) SessionDestroy(idx uint64, sessionID string, entMeta *structs.En // deleteSessionTxn is the inner method, which is used to do the actual // session deletion and handle session invalidation, etc. -func (s *Store) deleteSessionTxn(tx *txn, idx uint64, sessionID string, entMeta *structs.EnterpriseMeta) error { +func (s *Store) deleteSessionTxn(tx WriteTxn, idx uint64, sessionID string, entMeta *structs.EnterpriseMeta) error { // Look up the session. sess, err := firstWithTxn(tx, "sessions", "id", sessionID, entMeta) if err != nil { diff --git a/agent/consul/state/session_oss.go b/agent/consul/state/session_oss.go index f7b6517eb..b76deb500 100644 --- a/agent/consul/state/session_oss.go +++ b/agent/consul/state/session_oss.go @@ -35,7 +35,7 @@ func nodeChecksIndexer() *memdb.CompoundIndex { } } -func sessionDeleteWithSession(tx *txn, session *structs.Session, idx uint64) error { +func sessionDeleteWithSession(tx WriteTxn, session *structs.Session, idx uint64) error { if err := tx.Delete("sessions", session); err != nil { return fmt.Errorf("failed deleting session: %s", err) } @@ -48,7 +48,7 @@ func sessionDeleteWithSession(tx *txn, session *structs.Session, idx uint64) err return nil } -func insertSessionTxn(tx *txn, session *structs.Session, idx uint64, updateMax bool) error { +func insertSessionTxn(tx *txn, session *structs.Session, idx uint64, updateMax bool, _ bool) error { if err := tx.Insert("sessions", session); err != nil { return err } @@ -80,11 +80,11 @@ func insertSessionTxn(tx *txn, session *structs.Session, idx uint64, updateMax b return nil } -func allNodeSessionsTxn(tx *txn, node string) (structs.Sessions, error) { +func allNodeSessionsTxn(tx ReadTxn, node string) (structs.Sessions, error) { return nodeSessionsTxn(tx, nil, node, nil) } -func nodeSessionsTxn(tx *txn, +func nodeSessionsTxn(tx ReadTxn, ws memdb.WatchSet, node string, entMeta *structs.EnterpriseMeta) (structs.Sessions, error) { sessions, err := tx.Get("sessions", "node", node) @@ -100,7 +100,7 @@ func nodeSessionsTxn(tx *txn, return result, nil } -func sessionMaxIndex(tx *txn, entMeta *structs.EnterpriseMeta) uint64 { +func sessionMaxIndex(tx ReadTxn, entMeta *structs.EnterpriseMeta) uint64 { return maxIndexTxn(tx, "sessions") } diff --git a/agent/consul/state/state_store.go b/agent/consul/state/state_store.go index a02cd864d..26a7c76a2 100644 --- a/agent/consul/state/state_store.go +++ b/agent/consul/state/state_store.go @@ -6,9 +6,10 @@ import ( "fmt" "time" + memdb "github.com/hashicorp/go-memdb" + "github.com/hashicorp/consul/agent/consul/stream" "github.com/hashicorp/consul/agent/structs" - memdb "github.com/hashicorp/go-memdb" ) var ( @@ -122,7 +123,7 @@ type Store struct { // works by starting a read transaction against the whole state store. type Snapshot struct { store *Store - tx *txn + tx AbortTxn lastIndex uint64 } @@ -152,36 +153,46 @@ type sessionCheck struct { } // NewStateStore creates a new in-memory state storage layer. -func NewStateStore(gc *TombstoneGC) (*Store, error) { +func NewStateStore(gc *TombstoneGC) *Store { // Create the in-memory DB. schema := stateStoreSchema() db, err := memdb.NewMemDB(schema) if err != nil { - return nil, fmt.Errorf("Failed setting up state store: %s", err) + // the only way for NewMemDB to error is if the schema is invalid. The + // scheme is static and tested to be correct, so any failure here would + // be a programming error, which should panic. + panic(fmt.Sprintf("failed to create state store: %v", err)) } - - ctx, cancel := context.WithCancel(context.TODO()) s := &Store{ schema: schema, abandonCh: make(chan struct{}), kvsGraveyard: NewGraveyard(gc), lockDelay: NewDelay(), - stopEventPublisher: cancel, - } - pub := stream.NewEventPublisher(newSnapshotHandlers(s), 10*time.Second) - s.db = &changeTrackerDB{ - db: db, - publisher: pub, - processChanges: processDBChanges, + stopEventPublisher: func() {}, + db: &changeTrackerDB{ + db: db, + publisher: stream.NoOpEventPublisher{}, + processChanges: processDBChanges, + }, } + return s +} + +func NewStateStoreWithEventPublisher(gc *TombstoneGC) *Store { + store := NewStateStore(gc) + ctx, cancel := context.WithCancel(context.TODO()) + store.stopEventPublisher = cancel + + pub := stream.NewEventPublisher(newSnapshotHandlers((*readDB)(store.db.db)), 10*time.Second) + store.db.publisher = pub go pub.Run(ctx) - return s, nil + return store } // EventPublisher returns the stream.EventPublisher used by the Store to // publish events. -func (s *Store) EventPublisher() *stream.EventPublisher { +func (s *Store) EventPublisher() EventPublisher { return s.db.publisher } @@ -288,7 +299,7 @@ func maxIndexWatchTxn(tx ReadTxn, ws memdb.WatchSet, tables ...string) uint64 { // indexUpdateMaxTxn is used when restoring entries and sets the table's index to // the given idx only if it's greater than the current index. -func indexUpdateMaxTxn(tx *txn, idx uint64, table string) error { +func indexUpdateMaxTxn(tx WriteTxn, idx uint64, table string) error { ti, err := tx.First("index", "id", table) if err != nil { return fmt.Errorf("failed to retrieve existing index: %s", err) diff --git a/agent/consul/state/state_store_test.go b/agent/consul/state/state_store_test.go index c522fc0fe..81fe18f49 100644 --- a/agent/consul/state/state_store_test.go +++ b/agent/consul/state/state_store_test.go @@ -6,10 +6,11 @@ import ( "testing" "time" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/types" "github.com/hashicorp/go-memdb" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/types" ) func testUUID() string { @@ -48,10 +49,7 @@ func restoreIndexes(indexes []*IndexEntry, r *Restore) error { } func testStateStore(t *testing.T) *Store { - s, err := NewStateStore(nil) - if err != nil { - t.Fatalf("err: %s", err) - } + s := NewStateStore(nil) if s == nil { t.Fatalf("missing state store") } diff --git a/agent/consul/state/store_integration_test.go b/agent/consul/state/store_integration_test.go index 7f2ae62ce..fc4d05591 100644 --- a/agent/consul/state/store_integration_test.go +++ b/agent/consul/state/store_integration_test.go @@ -64,7 +64,7 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { // Ensure the reset event was sent. err = assertErr(t, eventCh) - require.Equal(stream.ErrSubscriptionClosed, err) + require.Equal(stream.ErrSubForceClosed, err) // Register another subscription. subscription2 := &stream.SubscribeRequest{ @@ -93,7 +93,7 @@ func TestStore_IntegrationWithEventPublisher_ACLTokenUpdate(t *testing.T) { // Ensure the reset event was sent. err = assertErr(t, eventCh2) - require.Equal(stream.ErrSubscriptionClosed, err) + require.Equal(stream.ErrSubForceClosed, err) } func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { @@ -162,6 +162,7 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { } sub, err = publisher.Subscribe(subscription2) require.NoError(err) + defer sub.Unsubscribe() eventCh = testRunSub(sub) @@ -180,7 +181,7 @@ func TestStore_IntegrationWithEventPublisher_ACLPolicyUpdate(t *testing.T) { // Ensure the reload event was sent. err = assertErr(t, eventCh) - require.Equal(stream.ErrSubscriptionClosed, err) + require.Equal(stream.ErrSubForceClosed, err) // Register another subscription. subscription3 := &stream.SubscribeRequest{ @@ -367,7 +368,7 @@ func assertReset(t *testing.T, eventCh <-chan nextResult, allowEOS bool) { } } require.Error(t, next.Err) - require.Equal(t, stream.ErrSubscriptionClosed, next.Err) + require.Equal(t, stream.ErrSubForceClosed, next.Err) return case <-time.After(100 * time.Millisecond): t.Fatalf("no err after 100ms") @@ -394,9 +395,8 @@ func newTestSnapshotHandlers(s *Store) stream.SnapshotHandlers { for _, node := range nodes { event := stream.Event{ Topic: req.Topic, - Key: req.Key, Index: node.ModifyIndex, - Payload: node, + Payload: nodePayload{node: node, key: req.Key}, } snap.Append([]stream.Event{event}) } @@ -405,6 +405,19 @@ func newTestSnapshotHandlers(s *Store) stream.SnapshotHandlers { } } +type nodePayload struct { + key string + node *structs.ServiceNode +} + +func (p nodePayload) MatchesKey(key, _ string) bool { + return p.key == key +} + +func (p nodePayload) HasReadPermission(acl.Authorizer) bool { + return true +} + func createTokenAndWaitForACLEventPublish(t *testing.T, s *Store) *structs.ACLToken { token := &structs.ACLToken{ AccessorID: "3af117a9-2233-4cf4-8ff8-3c749c9906b4", diff --git a/agent/consul/state/txn.go b/agent/consul/state/txn.go index 04bb62660..f4306d0fb 100644 --- a/agent/consul/state/txn.go +++ b/agent/consul/state/txn.go @@ -8,7 +8,7 @@ import ( ) // txnKVS handles all KV-related operations. -func (s *Store) txnKVS(tx *txn, idx uint64, op *structs.TxnKVOp) (structs.TxnResults, error) { +func (s *Store) txnKVS(tx WriteTxn, idx uint64, op *structs.TxnKVOp) (structs.TxnResults, error) { var entry *structs.DirEntry var err error @@ -110,7 +110,7 @@ func (s *Store) txnKVS(tx *txn, idx uint64, op *structs.TxnKVOp) (structs.TxnRes } // txnSession handles all Session-related operations. -func txnSession(tx *txn, idx uint64, op *structs.TxnSessionOp) error { +func txnSession(tx WriteTxn, idx uint64, op *structs.TxnSessionOp) error { var err error switch op.Verb { @@ -129,7 +129,7 @@ func txnSession(tx *txn, idx uint64, op *structs.TxnSessionOp) error { // txnLegacyIntention handles all Intention-related operations. // // Deprecated: see TxnOp.Intention description -func txnLegacyIntention(tx *txn, idx uint64, op *structs.TxnIntentionOp) error { +func txnLegacyIntention(tx WriteTxn, idx uint64, op *structs.TxnIntentionOp) error { switch op.Op { case structs.IntentionOpCreate, structs.IntentionOpUpdate: return legacyIntentionSetTxn(tx, idx, op.Intention) @@ -145,7 +145,7 @@ func txnLegacyIntention(tx *txn, idx uint64, op *structs.TxnIntentionOp) error { } // txnNode handles all Node-related operations. -func (s *Store) txnNode(tx *txn, idx uint64, op *structs.TxnNodeOp) (structs.TxnResults, error) { +func (s *Store) txnNode(tx WriteTxn, idx uint64, op *structs.TxnNodeOp) (structs.TxnResults, error) { var entry *structs.Node var err error @@ -214,7 +214,7 @@ func (s *Store) txnNode(tx *txn, idx uint64, op *structs.TxnNodeOp) (structs.Txn } // txnService handles all Service-related operations. -func (s *Store) txnService(tx *txn, idx uint64, op *structs.TxnServiceOp) (structs.TxnResults, error) { +func (s *Store) txnService(tx WriteTxn, idx uint64, op *structs.TxnServiceOp) (structs.TxnResults, error) { switch op.Verb { case api.ServiceGet: entry, err := getNodeServiceTxn(tx, op.Node, op.Service.ID, &op.Service.EnterpriseMeta) @@ -276,7 +276,7 @@ func newTxnResultFromNodeServiceEntry(entry *structs.NodeService) structs.TxnRes } // txnCheck handles all Check-related operations. -func (s *Store) txnCheck(tx *txn, idx uint64, op *structs.TxnCheckOp) (structs.TxnResults, error) { +func (s *Store) txnCheck(tx WriteTxn, idx uint64, op *structs.TxnCheckOp) (structs.TxnResults, error) { var entry *structs.HealthCheck var err error @@ -338,7 +338,7 @@ func (s *Store) txnCheck(tx *txn, idx uint64, op *structs.TxnCheckOp) (structs.T } // txnDispatch runs the given operations inside the state store transaction. -func (s *Store) txnDispatch(tx *txn, idx uint64, ops structs.TxnOps) (structs.TxnResults, structs.TxnErrors) { +func (s *Store) txnDispatch(tx WriteTxn, idx uint64, ops structs.TxnOps) (structs.TxnResults, structs.TxnErrors) { results := make(structs.TxnResults, 0, len(ops)) errors := make(structs.TxnErrors, 0, len(ops)) for i, op := range ops { diff --git a/agent/consul/stats_fetcher.go b/agent/consul/stats_fetcher.go index bd283f9e8..d486ae504 100644 --- a/agent/consul/stats_fetcher.go +++ b/agent/consul/stats_fetcher.go @@ -2,13 +2,14 @@ package consul import ( "context" + "net" "sync" - "github.com/hashicorp/consul/agent/consul/autopilot" - "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/pool" + "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/go-hclog" - "github.com/hashicorp/serf/serf" + "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" ) // StatsFetcher has two functions for autopilot. First, lets us fetch all the @@ -22,7 +23,7 @@ type StatsFetcher struct { logger hclog.Logger pool *pool.ConnPool datacenter string - inflight map[string]struct{} + inflight map[raft.ServerID]struct{} inflightLock sync.Mutex } @@ -32,7 +33,7 @@ func NewStatsFetcher(logger hclog.Logger, pool *pool.ConnPool, datacenter string logger: logger, pool: pool, datacenter: datacenter, - inflight: make(map[string]struct{}), + inflight: make(map[raft.ServerID]struct{}), } } @@ -40,36 +41,44 @@ func NewStatsFetcher(logger hclog.Logger, pool *pool.ConnPool, datacenter string // cancel this when the context is canceled because we only want one in-flight // RPC to each server, so we let it finish and then clean up the in-flight // tracking. -func (f *StatsFetcher) fetch(server *metadata.Server, replyCh chan *autopilot.ServerStats) { +func (f *StatsFetcher) fetch(server *autopilot.Server, replyCh chan *autopilot.ServerStats) { var args struct{} - var reply autopilot.ServerStats - err := f.pool.RPC(f.datacenter, server.ShortName, server.Addr, "Status.RaftStats", &args, &reply) + var reply structs.RaftStats + + // defer some cleanup to notify everything else that the fetching is no longer occurring + // this is easier than trying to make the conditionals line up just right. + defer func() { + f.inflightLock.Lock() + delete(f.inflight, server.ID) + f.inflightLock.Unlock() + }() + + addr, err := net.ResolveTCPAddr("tcp", string(server.Address)) + if err != nil { + f.logger.Warn("error resolving TCP address for server", + "address", server.Address, + "error", err) + return + } + + err = f.pool.RPC(f.datacenter, server.Name, addr, "Status.RaftStats", &args, &reply) if err != nil { f.logger.Warn("error getting server health from server", "server", server.Name, "error", err, ) - } else { - replyCh <- &reply + return } - f.inflightLock.Lock() - delete(f.inflight, server.ID) - f.inflightLock.Unlock() + replyCh <- reply.ToAutopilotServerStats() } // Fetch will attempt to query all the servers in parallel. -func (f *StatsFetcher) Fetch(ctx context.Context, members []serf.Member) map[string]*autopilot.ServerStats { +func (f *StatsFetcher) Fetch(ctx context.Context, servers map[raft.ServerID]*autopilot.Server) map[raft.ServerID]*autopilot.ServerStats { type workItem struct { - server *metadata.Server + server *autopilot.Server replyCh chan *autopilot.ServerStats } - var servers []*metadata.Server - for _, s := range members { - if ok, parts := metadata.IsConsulServer(s); ok { - servers = append(servers, parts) - } - } // Skip any servers that have inflight requests. var work []*workItem @@ -94,7 +103,7 @@ func (f *StatsFetcher) Fetch(ctx context.Context, members []serf.Member) map[str // Now wait for the results to come in, or for the context to be // canceled. - replies := make(map[string]*autopilot.ServerStats) + replies := make(map[raft.ServerID]*autopilot.ServerStats) for _, workItem := range work { // Drain the reply first if there is one. select { diff --git a/agent/consul/stats_fetcher_test.go b/agent/consul/stats_fetcher_test.go index beba30424..aee5d6aa3 100644 --- a/agent/consul/stats_fetcher_test.go +++ b/agent/consul/stats_fetcher_test.go @@ -10,6 +10,7 @@ import ( "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/hashicorp/consul/testrpc" "github.com/hashicorp/consul/types" + "github.com/hashicorp/raft" ) func TestStatsFetcher(t *testing.T) { @@ -48,7 +49,7 @@ func TestStatsFetcher(t *testing.T) { retry.Run(t, func(r *retry.R) { ctx, cancel := context.WithTimeout(context.Background(), time.Second) defer cancel() - stats := s1.statsFetcher.Fetch(ctx, s1.LANMembers()) + stats := s1.statsFetcher.Fetch(ctx, s1.autopilotServers()) if len(stats) != 3 { r.Fatalf("bad: %#v", stats) } @@ -71,12 +72,12 @@ func TestStatsFetcher(t *testing.T) { // from it. func() { retry.Run(t, func(r *retry.R) { - s1.statsFetcher.inflight[string(s3.config.NodeID)] = struct{}{} - defer delete(s1.statsFetcher.inflight, string(s3.config.NodeID)) + s1.statsFetcher.inflight[raft.ServerID(s3.config.NodeID)] = struct{}{} + defer delete(s1.statsFetcher.inflight, raft.ServerID(s3.config.NodeID)) ctx, cancel := context.WithTimeout(context.Background(), time.Second) defer cancel() - stats := s1.statsFetcher.Fetch(ctx, s1.LANMembers()) + stats := s1.statsFetcher.Fetch(ctx, s1.autopilotServers()) if len(stats) != 2 { r.Fatalf("bad: %#v", stats) } diff --git a/agent/consul/status_endpoint.go b/agent/consul/status_endpoint.go index c19b60318..ac0dc0314 100644 --- a/agent/consul/status_endpoint.go +++ b/agent/consul/status_endpoint.go @@ -4,7 +4,6 @@ import ( "fmt" "strconv" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" ) @@ -57,18 +56,18 @@ func (s *Status) Peers(args *structs.DCSpecificRequest, reply *[]string) error { } // Used by Autopilot to query the raft stats of the local server. -func (s *Status) RaftStats(args struct{}, reply *autopilot.ServerStats) error { +func (s *Status) RaftStats(args struct{}, reply *structs.RaftStats) error { stats := s.server.raft.Stats() var err error reply.LastContact = stats["last_contact"] reply.LastIndex, err = strconv.ParseUint(stats["last_log_index"], 10, 64) if err != nil { - return fmt.Errorf("error parsing server's last_log_index value: %s", err) + return fmt.Errorf("error parsing server's last_log_index value: %w", err) } reply.LastTerm, err = strconv.ParseUint(stats["last_log_term"], 10, 64) if err != nil { - return fmt.Errorf("error parsing server's last_log_term value: %s", err) + return fmt.Errorf("error parsing server's last_log_term value: %w", err) } return nil diff --git a/agent/consul/stream/event.go b/agent/consul/stream/event.go index adbe0762c..74df46b5e 100644 --- a/agent/consul/stream/event.go +++ b/agent/consul/stream/event.go @@ -4,7 +4,11 @@ to the state store. */ package stream -import "fmt" +import ( + "fmt" + + "github.com/hashicorp/consul/acl" +) // Topic is an identifier that partitions events. A subscription will only receive // events which match the Topic. @@ -14,54 +18,85 @@ type Topic fmt.Stringer // EventPublisher and returned to Subscribers. type Event struct { Topic Topic - Key string Index uint64 - Payload interface{} + Payload Payload } -// Len returns the number of events contained within this event. If the Payload -// is a []Event, the length of that slice is returned. Otherwise 1 is returned. -func (e Event) Len() int { - if batch, ok := e.Payload.([]Event); ok { - return len(batch) - } - return 1 +// A Payload contains the topic-specific data in an event. The payload methods +// should not modify the state of the payload if the Event is being submitted to +// EventPublisher.Publish. +type Payload interface { + // MatchesKey must return true if the Payload should be included in a subscription + // requested with the key and namespace. + // Generally this means that the payload matches the key and namespace or + // the payload is a special framing event that should be returned to every + // subscription. + MatchesKey(key, namespace string) bool + + // HasReadPermission uses the acl.Authorizer to determine if the items in the + // Payload are visible to the request. It returns true if the payload is + // authorized for Read, otherwise returns false. + HasReadPermission(authz acl.Authorizer) bool } -// Filter returns an Event filtered to only those Events where f returns true. -// If the second return value is false, every Event was removed by the filter. -func (e Event) Filter(f func(Event) bool) (Event, bool) { - batch, ok := e.Payload.([]Event) - if !ok { - return e, f(e) - } +// PayloadEvents is a Payload that may be returned by Subscription.Next when +// there are multiple events at an index. +// +// Note that unlike most other Payload, PayloadEvents is mutable and it is NOT +// safe to send to EventPublisher.Publish. +type PayloadEvents struct { + Items []Event +} + +func newPayloadEvents(items ...Event) *PayloadEvents { + return &PayloadEvents{Items: items} +} + +func (p *PayloadEvents) filter(f func(Event) bool) bool { + items := p.Items // To avoid extra allocations, iterate over the list of events first and // get a count of the total desired size. This trades off some extra cpu // time in the worse case (when not all items match the filter), for // fewer memory allocations. var size int - for idx := range batch { - if f(batch[idx]) { + for idx := range items { + if f(items[idx]) { size++ } } - if len(batch) == size || size == 0 { - return e, size != 0 + if len(items) == size || size == 0 { + return size != 0 } filtered := make([]Event, 0, size) - for idx := range batch { - event := batch[idx] + for idx := range items { + event := items[idx] if f(event) { filtered = append(filtered, event) } } - if len(filtered) == 0 { - return e, false - } - e.Payload = filtered - return e, true + p.Items = filtered + return true +} + +// MatchesKey filters the PayloadEvents to those which match the key and namespace. +func (p *PayloadEvents) MatchesKey(key, namespace string) bool { + return p.filter(func(event Event) bool { + return event.Payload.MatchesKey(key, namespace) + }) +} + +func (p *PayloadEvents) Len() int { + return len(p.Items) +} + +// HasReadPermission filters the PayloadEvents to those which are authorized +// for reading by authz. +func (p *PayloadEvents) HasReadPermission(authz acl.Authorizer) bool { + return p.filter(func(event Event) bool { + return event.Payload.HasReadPermission(authz) + }) } // IsEndOfSnapshot returns true if this is a framing event that indicates the @@ -78,14 +113,36 @@ func (e Event) IsNewSnapshotToFollow() bool { return e.Payload == newSnapshotToFollow{} } -type endOfSnapshot struct{} +type framingEvent struct{} -type newSnapshotToFollow struct{} +func (framingEvent) MatchesKey(string, string) bool { + return true +} + +func (framingEvent) HasReadPermission(acl.Authorizer) bool { + return true +} + +type endOfSnapshot struct { + framingEvent +} + +type newSnapshotToFollow struct { + framingEvent +} type closeSubscriptionPayload struct { tokensSecretIDs []string } +func (closeSubscriptionPayload) MatchesKey(string, string) bool { + return false +} + +func (closeSubscriptionPayload) HasReadPermission(acl.Authorizer) bool { + return false +} + // NewCloseSubscriptionEvent returns a special Event that is handled by the // stream package, and is never sent to subscribers. EventProcessor handles // these events, and closes any subscriptions which were created using a token diff --git a/agent/consul/stream/event_buffer.go b/agent/consul/stream/event_buffer.go index 1208b07b1..eca2dbec1 100644 --- a/agent/consul/stream/event_buffer.go +++ b/agent/consul/stream/event_buffer.go @@ -170,13 +170,13 @@ func newBufferItem(events []Event) *bufferItem { // Next return the next buffer item in the buffer. It may block until ctx is // cancelled or until the next item is published. -func (i *bufferItem) Next(ctx context.Context, forceClose <-chan struct{}) (*bufferItem, error) { +func (i *bufferItem) Next(ctx context.Context, closed <-chan struct{}) (*bufferItem, error) { // See if there is already a next value, block if so. Note we don't rely on // state change (chan nil) as that's not threadsafe but detecting close is. select { case <-ctx.Done(): return nil, ctx.Err() - case <-forceClose: + case <-closed: return nil, fmt.Errorf("subscription closed") case <-i.link.ch: } diff --git a/agent/consul/stream/event_publisher.go b/agent/consul/stream/event_publisher.go index 6109ce2d9..769e875d8 100644 --- a/agent/consul/stream/event_publisher.go +++ b/agent/consul/stream/event_publisher.go @@ -91,7 +91,8 @@ func NewEventPublisher(handlers SnapshotHandlers, snapCacheTTL time.Duration) *E return e } -// Publish events to all subscribers of the event Topic. +// Publish events to all subscribers of the event Topic. The events will be shared +// with all subscriptions, so the Payload used in Event.Payload must be immutable. func (e *EventPublisher) Publish(events []Event) { if len(events) > 0 { e.publishCh <- events @@ -185,7 +186,6 @@ func (e *EventPublisher) Subscribe(req *SubscribeRequest) (*Subscription, error) if req.Index > 0 { snap.buffer.Append([]Event{{ Topic: req.Topic, - Key: req.Key, Payload: newSnapshotToFollow{}, }}) @@ -268,7 +268,7 @@ func (e *EventPublisher) getCachedSnapshotLocked(req *SubscribeRequest) *eventSn e.snapCache[req.Topic] = topicSnaps } - snap, ok := topicSnaps[req.Key] + snap, ok := topicSnaps[snapCacheKey(req)] if ok && snap.err() == nil { return snap } @@ -280,12 +280,16 @@ func (e *EventPublisher) setCachedSnapshotLocked(req *SubscribeRequest, snap *ev if e.snapCacheTTL == 0 { return } - e.snapCache[req.Topic][req.Key] = snap + e.snapCache[req.Topic][snapCacheKey(req)] = snap // Setup a cache eviction time.AfterFunc(e.snapCacheTTL, func() { e.lock.Lock() defer e.lock.Unlock() - delete(e.snapCache[req.Topic], req.Key) + delete(e.snapCache[req.Topic], snapCacheKey(req)) }) } + +func snapCacheKey(req *SubscribeRequest) string { + return fmt.Sprintf(req.Namespace + "/" + req.Key) +} diff --git a/agent/consul/stream/event_publisher_test.go b/agent/consul/stream/event_publisher_test.go index 940a908c9..576d4ccc3 100644 --- a/agent/consul/stream/event_publisher_test.go +++ b/agent/consul/stream/event_publisher_test.go @@ -7,6 +7,8 @@ import ( "time" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/acl" ) type intTopic int @@ -30,6 +32,7 @@ func TestEventPublisher_SubscribeWithIndex0(t *testing.T) { sub, err := publisher.Subscribe(req) require.NoError(t, err) + defer sub.Unsubscribe() eventCh := runSubscription(ctx, sub) next := getNextEvent(t, eventCh) @@ -42,24 +45,42 @@ func TestEventPublisher_SubscribeWithIndex0(t *testing.T) { events := []Event{{ Topic: testTopic, - Key: "sub-key", - Payload: "the-published-event-payload", + Payload: simplePayload{key: "sub-key", value: "the-published-event-payload"}, }} publisher.Publish(events) // Subscriber should see the published event next = getNextEvent(t, eventCh) - expected := Event{Payload: "the-published-event-payload", Key: "sub-key", Topic: testTopic} + expected := Event{ + Topic: testTopic, + Payload: simplePayload{key: "sub-key", value: "the-published-event-payload"}, + } require.Equal(t, expected, next) } var testSnapshotEvent = Event{ Topic: testTopic, - Payload: "snapshot-event-payload", - Key: "sub-key", + Payload: simplePayload{key: "sub-key", value: "snapshot-event-payload"}, Index: 1, } +type simplePayload struct { + key string + value string + noReadPerm bool +} + +func (p simplePayload) MatchesKey(key, _ string) bool { + if key == "" { + return true + } + return p.key == key +} + +func (p simplePayload) HasReadPermission(acl.Authorizer) bool { + return !p.noReadPerm +} + func newTestSnapshotHandlers() SnapshotHandlers { return SnapshotHandlers{ testTopic: func(req SubscribeRequest, buf SnapshotAppender) (uint64, error) { @@ -141,10 +162,10 @@ func TestEventPublisher_ShutdownClosesSubscriptions(t *testing.T) { cancel() // Shutdown err = consumeSub(context.Background(), sub1) - require.Equal(t, err, ErrSubscriptionClosed) + require.Equal(t, err, ErrSubForceClosed) _, err = sub2.Next(context.Background()) - require.Equal(t, err, ErrSubscriptionClosed) + require.Equal(t, err, ErrSubForceClosed) } func consumeSub(ctx context.Context, sub *Subscription) error { @@ -169,14 +190,15 @@ func TestEventPublisher_SubscribeWithIndex0_FromCache(t *testing.T) { publisher := NewEventPublisher(newTestSnapshotHandlers(), time.Second) go publisher.Run(ctx) - _, err := publisher.Subscribe(req) + sub, err := publisher.Subscribe(req) require.NoError(t, err) + sub.Unsubscribe() publisher.snapshotHandlers[testTopic] = func(_ SubscribeRequest, _ SnapshotAppender) (uint64, error) { return 0, fmt.Errorf("error should not be seen, cache should have been used") } - sub, err := publisher.Subscribe(req) + sub, err = publisher.Subscribe(req) require.NoError(t, err) eventCh := runSubscription(ctx, sub) @@ -191,8 +213,7 @@ func TestEventPublisher_SubscribeWithIndex0_FromCache(t *testing.T) { expected := Event{ Topic: testTopic, - Key: "sub-key", - Payload: "the-published-event-payload", + Payload: simplePayload{key: "sub-key", value: "the-published-event-payload"}, Index: 3, } publisher.Publish([]Event{expected}) @@ -241,9 +262,8 @@ func TestEventPublisher_SubscribeWithIndexNotZero_CanResume(t *testing.T) { expected := Event{ Topic: testTopic, - Key: "sub-key", Index: 3, - Payload: "event-3", + Payload: simplePayload{key: "sub-key", value: "event-3"}, } publisher.publishEvent([]Event{expected}) @@ -282,9 +302,8 @@ func TestEventPublisher_SubscribeWithIndexNotZero_NewSnapshot(t *testing.T) { nextEvent := Event{ Topic: testTopic, - Key: "sub-key", Index: 3, - Payload: "event-3", + Payload: simplePayload{key: "sub-key", value: "event-3"}, } runStep(t, "publish an event while unsubed", func(t *testing.T) { @@ -339,9 +358,8 @@ func TestEventPublisher_SubscribeWithIndexNotZero_NewSnapshotFromCache(t *testin nextEvent := Event{ Topic: testTopic, - Key: "sub-key", Index: 3, - Payload: "event-3", + Payload: simplePayload{key: "sub-key", value: "event-3"}, } runStep(t, "publish an event while unsubed", func(t *testing.T) { @@ -357,6 +375,7 @@ func TestEventPublisher_SubscribeWithIndexNotZero_NewSnapshotFromCache(t *testin newReq.Index = 1 sub, err := publisher.Subscribe(&newReq) require.NoError(t, err) + defer sub.Unsubscribe() eventCh := runSubscription(ctx, sub) next := getNextEvent(t, eventCh) @@ -379,3 +398,25 @@ func runStep(t *testing.T, name string, fn func(t *testing.T)) { t.FailNow() } } + +func TestEventPublisher_Unsubscribe_ClosesSubscription(t *testing.T) { + req := &SubscribeRequest{ + Topic: testTopic, + Key: "sub-key", + } + ctx, cancel := context.WithTimeout(context.Background(), time.Second) + defer cancel() + + publisher := NewEventPublisher(newTestSnapshotHandlers(), time.Second) + + sub, err := publisher.Subscribe(req) + require.NoError(t, err) + + _, err = sub.Next(ctx) + require.NoError(t, err) + + sub.Unsubscribe() + _, err = sub.Next(ctx) + require.Error(t, err) + require.Contains(t, err.Error(), "subscription was closed by unsubscribe") +} diff --git a/agent/consul/stream/event_snapshot.go b/agent/consul/stream/event_snapshot.go index 124cb3251..e20e53a4a 100644 --- a/agent/consul/stream/event_snapshot.go +++ b/agent/consul/stream/event_snapshot.go @@ -37,7 +37,6 @@ func (s *eventSnapshot) appendAndSplice(req SubscribeRequest, fn SnapshotFunc, t } s.buffer.Append([]Event{{ Topic: req.Topic, - Key: req.Key, Index: idx, Payload: endOfSnapshot{}, }}) diff --git a/agent/consul/stream/event_snapshot_test.go b/agent/consul/stream/event_snapshot_test.go index 98e3c683b..7c8329e40 100644 --- a/agent/consul/stream/event_snapshot_test.go +++ b/agent/consul/stream/event_snapshot_test.go @@ -129,9 +129,9 @@ func TestEventSnapshot(t *testing.T) { e := curItem.Events[0] switch { case snapDone: - payload, ok := e.Payload.(string) + payload, ok := e.Payload.(simplePayload) require.True(t, ok, "want health event got: %#v", e.Payload) - updateIDs = append(updateIDs, payload) + updateIDs = append(updateIDs, payload.value) if len(updateIDs) == tc.updatesAfterSnap { // We're done! break RECV @@ -139,9 +139,9 @@ func TestEventSnapshot(t *testing.T) { case e.IsEndOfSnapshot(): snapDone = true default: - payload, ok := e.Payload.(string) + payload, ok := e.Payload.(simplePayload) require.True(t, ok, "want health event got: %#v", e.Payload) - snapIDs = append(snapIDs, payload) + snapIDs = append(snapIDs, payload.value) } } @@ -176,6 +176,6 @@ func newDefaultHealthEvent(index uint64, n int) Event { return Event{ Index: index, Topic: testTopic, - Payload: fmt.Sprintf("test-event-%03d", n), + Payload: simplePayload{value: fmt.Sprintf("test-event-%03d", n)}, } } diff --git a/agent/consul/stream/event_test.go b/agent/consul/stream/event_test.go index 182f0d512..8b36ee8d1 100644 --- a/agent/consul/stream/event_test.go +++ b/agent/consul/stream/event_test.go @@ -15,3 +15,163 @@ func TestEvent_IsEndOfSnapshot(t *testing.T) { require.False(t, e.IsEndOfSnapshot()) }) } + +func newSimpleEvent(key string, index uint64) Event { + return Event{Index: index, Payload: simplePayload{key: key}} +} + +func TestPayloadEvents_FilterByKey(t *testing.T) { + type testCase struct { + name string + req SubscribeRequest + events []Event + expectEvent bool + expected *PayloadEvents + expectedCap int + } + + fn := func(t *testing.T, tc testCase) { + events := make([]Event, 0, 5) + events = append(events, tc.events...) + + pe := &PayloadEvents{Items: events} + ok := pe.MatchesKey(tc.req.Key, tc.req.Namespace) + require.Equal(t, tc.expectEvent, ok) + if !tc.expectEvent { + return + } + + require.Equal(t, tc.expected, pe) + // test if there was a new array allocated or not + require.Equal(t, tc.expectedCap, cap(pe.Items)) + } + + var testCases = []testCase{ + { + name: "all events match, no key or namespace", + req: SubscribeRequest{Topic: testTopic}, + events: []Event{ + newSimpleEvent("One", 102), + newSimpleEvent("Two", 102)}, + expectEvent: true, + expected: newPayloadEvents( + newSimpleEvent("One", 102), + newSimpleEvent("Two", 102)), + expectedCap: 5, + }, + { + name: "all events match, no namespace", + req: SubscribeRequest{Topic: testTopic, Key: "Same"}, + events: []Event{ + newSimpleEvent("Same", 103), + newSimpleEvent("Same", 103)}, + expectEvent: true, + expected: newPayloadEvents( + newSimpleEvent("Same", 103), + newSimpleEvent("Same", 103)), + expectedCap: 5, + }, + { + name: "all events match, no key", + req: SubscribeRequest{Topic: testTopic, Namespace: "apps"}, + events: []Event{ + newNSEvent("Something", "apps"), + newNSEvent("Other", "apps")}, + expectEvent: true, + expected: newPayloadEvents( + newNSEvent("Something", "apps"), + newNSEvent("Other", "apps")), + expectedCap: 5, + }, + { + name: "some evens match, no namespace", + req: SubscribeRequest{Topic: testTopic, Key: "Same"}, + events: []Event{ + newSimpleEvent("Same", 104), + newSimpleEvent("Other", 104), + newSimpleEvent("Same", 104)}, + expectEvent: true, + expected: newPayloadEvents( + newSimpleEvent("Same", 104), + newSimpleEvent("Same", 104)), + expectedCap: 2, + }, + { + name: "some events match, no key", + req: SubscribeRequest{Topic: testTopic, Namespace: "apps"}, + events: []Event{ + newNSEvent("app1", "apps"), + newNSEvent("db1", "dbs"), + newNSEvent("app2", "apps")}, + expectEvent: true, + expected: newPayloadEvents( + newNSEvent("app1", "apps"), + newNSEvent("app2", "apps")), + expectedCap: 2, + }, + { + name: "no events match key", + req: SubscribeRequest{Topic: testTopic, Key: "Other"}, + events: []Event{ + newSimpleEvent("Same", 0), + newSimpleEvent("Same", 0)}, + }, + { + name: "no events match namespace", + req: SubscribeRequest{Topic: testTopic, Namespace: "apps"}, + events: []Event{ + newNSEvent("app1", "group1"), + newNSEvent("app2", "group2")}, + expectEvent: false, + }, + } + + for _, tc := range testCases { + t.Run(tc.name, func(t *testing.T) { + fn(t, tc) + }) + } +} + +func newNSEvent(key, namespace string) Event { + return Event{Index: 22, Payload: nsPayload{key: key, namespace: namespace}} +} + +type nsPayload struct { + framingEvent + key string + namespace string + value string +} + +func (p nsPayload) MatchesKey(key, namespace string) bool { + return (key == "" || key == p.key) && (namespace == "" || namespace == p.namespace) +} + +func TestPayloadEvents_HasReadPermission(t *testing.T) { + t.Run("some events filtered", func(t *testing.T) { + ep := newPayloadEvents( + Event{Payload: simplePayload{key: "one", noReadPerm: true}}, + Event{Payload: simplePayload{key: "two", noReadPerm: false}}, + Event{Payload: simplePayload{key: "three", noReadPerm: true}}, + Event{Payload: simplePayload{key: "four", noReadPerm: false}}) + + require.True(t, ep.HasReadPermission(nil)) + expected := []Event{ + {Payload: simplePayload{key: "two"}}, + {Payload: simplePayload{key: "four"}}, + } + require.Equal(t, expected, ep.Items) + }) + + t.Run("all events filtered", func(t *testing.T) { + ep := newPayloadEvents( + Event{Payload: simplePayload{key: "one", noReadPerm: true}}, + Event{Payload: simplePayload{key: "two", noReadPerm: true}}, + Event{Payload: simplePayload{key: "three", noReadPerm: true}}, + Event{Payload: simplePayload{key: "four", noReadPerm: true}}) + + require.False(t, ep.HasReadPermission(nil)) + }) + +} diff --git a/agent/consul/stream/noop.go b/agent/consul/stream/noop.go new file mode 100644 index 000000000..1b3282dbf --- /dev/null +++ b/agent/consul/stream/noop.go @@ -0,0 +1,16 @@ +package stream + +import ( + "context" + "fmt" +) + +type NoOpEventPublisher struct{} + +func (NoOpEventPublisher) Publish([]Event) {} + +func (NoOpEventPublisher) Run(context.Context) {} + +func (NoOpEventPublisher) Subscribe(*SubscribeRequest) (*Subscription, error) { + return nil, fmt.Errorf("stream event publisher is disabled") +} diff --git a/agent/consul/stream/subscription.go b/agent/consul/stream/subscription.go index a602cad55..03069ea93 100644 --- a/agent/consul/stream/subscription.go +++ b/agent/consul/stream/subscription.go @@ -3,28 +3,33 @@ package stream import ( "context" "errors" + "fmt" "sync/atomic" ) const ( - // subscriptionStateOpen is the default state of a subscription. An open - // subscription may receive new events. - subscriptionStateOpen uint32 = 0 + // subStateOpen is the default state of a subscription. An open subscription + // may return new events. + subStateOpen = 0 - // subscriptionStateClosed indicates that the subscription was closed, possibly - // as a result of a change to an ACL token, and will not receive new events. + // subStateForceClosed indicates the subscription was forced closed by + // the EventPublisher, possibly as a result of a change to an ACL token, and + // will not return new events. // The subscriber must issue a new Subscribe request. - subscriptionStateClosed uint32 = 1 + subStateForceClosed = 1 + + // subStateUnsub indicates the subscription was closed by the caller, and + // will not return new events. + subStateUnsub = 2 ) -// ErrSubscriptionClosed is a error signalling the subscription has been +// ErrSubForceClosed is a error signalling the subscription has been // closed. The client should Unsubscribe, then re-Subscribe. -var ErrSubscriptionClosed = errors.New("subscription closed by server, client must reset state and resubscribe") +var ErrSubForceClosed = errors.New("subscription closed by server, client must reset state and resubscribe") // Subscription provides events on a Topic. Events may be filtered by Key. // Events are returned by Next(), and may start with a Snapshot of events. type Subscription struct { - // state is accessed atomically 0 means open, 1 means closed with reload state uint32 // req is the requests that we are responding to @@ -34,9 +39,9 @@ type Subscription struct { // is mutated by calls to Next. currentItem *bufferItem - // forceClosed is closed when forceClose is called. It is used by - // EventPublisher to cancel Next(). - forceClosed chan struct{} + // closed is a channel which is closed when the subscription is closed. It + // is used to exit the blocking select. + closed chan struct{} // unsub is a function set by EventPublisher that is called to free resources // when the subscription is no longer needed. @@ -48,9 +53,21 @@ type Subscription struct { // SubscribeRequest identifies the types of events the subscriber would like to // receiver. Topic and Token are required. type SubscribeRequest struct { + // Topic to subscribe to Topic Topic - Key string + // Key used to filter events in the topic. Only events matching the key will + // be returned by the subscription. A blank key will return all events. Key + // is generally the name of the resource. + Key string + // Namespace used to filter events in the topic. Only events matching the + // namespace will be returned by the subscription. + Namespace string + // Token that was used to authenticate the request. If any ACL policy + // changes impact the token the subscription will be forcefully closed. Token string + // Index is the last index the client received. If non-zero the + // subscription will be resumed from this index. If the index is out-of-date + // a NewSnapshotToFollow event will be sent. Index uint64 } @@ -58,7 +75,7 @@ type SubscribeRequest struct { // calling Unsubscribe when it is done with the subscription, to free resources. func newSubscription(req SubscribeRequest, item *bufferItem, unsub func()) *Subscription { return &Subscription{ - forceClosed: make(chan struct{}), + closed: make(chan struct{}), req: req, currentItem: item, unsub: unsub, @@ -68,30 +85,41 @@ func newSubscription(req SubscribeRequest, item *bufferItem, unsub func()) *Subs // Next returns the next Event to deliver. It must only be called from a // single goroutine concurrently as it mutates the Subscription. func (s *Subscription) Next(ctx context.Context) (Event, error) { - if atomic.LoadUint32(&s.state) == subscriptionStateClosed { - return Event{}, ErrSubscriptionClosed - } - for { - next, err := s.currentItem.Next(ctx, s.forceClosed) - switch { - case err != nil && atomic.LoadUint32(&s.state) == subscriptionStateClosed: - return Event{}, ErrSubscriptionClosed - case err != nil: + if err := s.requireStateOpen(); err != nil { + return Event{}, err + } + + next, err := s.currentItem.Next(ctx, s.closed) + if err := s.requireStateOpen(); err != nil { + return Event{}, err + } + if err != nil { return Event{}, err } s.currentItem = next if len(next.Events) == 0 { continue } - event, ok := filterByKey(s.req, next.Events) - if !ok { + event := newEventFromBatch(s.req, next.Events) + if !event.Payload.MatchesKey(s.req.Key, s.req.Namespace) { continue } return event, nil } } +func (s *Subscription) requireStateOpen() error { + switch atomic.LoadUint32(&s.state) { + case subStateForceClosed: + return ErrSubForceClosed + case subStateUnsub: + return fmt.Errorf("subscription was closed by unsubscribe") + default: + return nil + } +} + func newEventFromBatch(req SubscribeRequest, events []Event) Event { first := events[0] if len(events) == 1 { @@ -99,35 +127,24 @@ func newEventFromBatch(req SubscribeRequest, events []Event) Event { } return Event{ Topic: req.Topic, - Key: req.Key, Index: first.Index, - Payload: events, + Payload: newPayloadEvents(events...), } } -func filterByKey(req SubscribeRequest, events []Event) (Event, bool) { - event := newEventFromBatch(req, events) - if req.Key == "" { - return event, true - } - - fn := func(e Event) bool { - return req.Key == e.Key - } - return event.Filter(fn) -} - // Close the subscription. Subscribers will receive an error when they call Next, // and will need to perform a new Subscribe request. // It is safe to call from any goroutine. func (s *Subscription) forceClose() { - swapped := atomic.CompareAndSwapUint32(&s.state, subscriptionStateOpen, subscriptionStateClosed) - if swapped { - close(s.forceClosed) + if atomic.CompareAndSwapUint32(&s.state, subStateOpen, subStateForceClosed) { + close(s.closed) } } // Unsubscribe the subscription, freeing resources. func (s *Subscription) Unsubscribe() { + if atomic.CompareAndSwapUint32(&s.state, subStateOpen, subStateUnsub) { + close(s.closed) + } s.unsub() } diff --git a/agent/consul/stream/subscription_test.go b/agent/consul/stream/subscription_test.go index a2f6fb106..02368f61d 100644 --- a/agent/consul/stream/subscription_test.go +++ b/agent/consul/stream/subscription_test.go @@ -69,7 +69,7 @@ func TestSubscription(t *testing.T) { require.True(t, elapsed < 200*time.Millisecond, "Event should have been delivered immediately, took %s", elapsed) require.Equal(t, index, got.Index) - require.Equal(t, "test", got.Key) + require.Equal(t, "test", got.Payload.(simplePayload).key) // Cancelling the subscription context should unblock Next start = time.Now() @@ -122,7 +122,7 @@ func TestSubscription_Close(t *testing.T) { _, err = sub.Next(ctx) elapsed = time.Since(start) require.Error(t, err) - require.Equal(t, ErrSubscriptionClosed, err) + require.Equal(t, ErrSubForceClosed, err) require.True(t, elapsed > 200*time.Millisecond, "Reload should have happened after blocking 200ms, took %s", elapsed) require.True(t, elapsed < 2*time.Second, @@ -130,68 +130,37 @@ func TestSubscription_Close(t *testing.T) { } func publishTestEvent(index uint64, b *eventBuffer, key string) { - // Don't care about the event payload for now just the semantics of publishing - // something. This is not a valid stream in the end-to-end streaming protocol - // but enough to test subscription mechanics. e := Event{ - Index: index, - Topic: testTopic, - Key: key, + Index: index, + Topic: testTopic, + Payload: simplePayload{key: key}, } b.Append([]Event{e}) } -func TestFilter_NoKey(t *testing.T) { - events := make([]Event, 0, 5) - events = append(events, Event{Key: "One", Index: 102}, Event{Key: "Two"}) - - req := SubscribeRequest{Topic: testTopic} - actual, ok := filterByKey(req, events) - require.True(t, ok) - require.Equal(t, Event{Topic: testTopic, Index: 102, Payload: events}, actual) - - // test that a new array was not allocated - require.Equal(t, cap(actual.Payload.([]Event)), 5) -} - -func TestFilter_WithKey_AllEventsMatch(t *testing.T) { - events := make([]Event, 0, 5) - events = append(events, Event{Key: "Same", Index: 103}, Event{Key: "Same"}) - - req := SubscribeRequest{Topic: testTopic, Key: "Same"} - actual, ok := filterByKey(req, events) - require.True(t, ok) - expected := Event{Topic: testTopic, Index: 103, Key: "Same", Payload: events} - require.Equal(t, expected, actual) - - // test that a new array was not allocated - require.Equal(t, 5, cap(actual.Payload.([]Event))) -} - -func TestFilter_WithKey_SomeEventsMatch(t *testing.T) { - events := make([]Event, 0, 5) - events = append(events, Event{Key: "Same", Index: 104}, Event{Key: "Other"}, Event{Key: "Same"}) - - req := SubscribeRequest{Topic: testTopic, Key: "Same"} - actual, ok := filterByKey(req, events) - require.True(t, ok) - expected := Event{ - Topic: testTopic, - Index: 104, - Key: "Same", - Payload: []Event{{Key: "Same", Index: 104}, {Key: "Same"}}, - } - require.Equal(t, expected, actual) - - // test that a new array was allocated with the correct size - require.Equal(t, cap(actual.Payload.([]Event)), 2) -} - -func TestFilter_WithKey_NoEventsMatch(t *testing.T) { - events := make([]Event, 0, 5) - events = append(events, Event{Key: "Same"}, Event{Key: "Same"}) - - req := SubscribeRequest{Topic: testTopic, Key: "Other"} - _, ok := filterByKey(req, events) - require.False(t, ok) +func TestNewEventsFromBatch(t *testing.T) { + t.Run("single item", func(t *testing.T) { + first := Event{ + Topic: testTopic, + Index: 1234, + Payload: simplePayload{key: "key"}, + } + e := newEventFromBatch(SubscribeRequest{}, []Event{first}) + require.Equal(t, first, e) + }) + t.Run("many items", func(t *testing.T) { + events := []Event{ + newSimpleEvent("foo", 9999), + newSimpleEvent("foo", 9999), + newSimpleEvent("zee", 9999), + } + req := SubscribeRequest{Topic: testTopic} + e := newEventFromBatch(req, events) + expected := Event{ + Topic: testTopic, + Index: 9999, + Payload: newPayloadEvents(events...), + } + require.Equal(t, expected, e) + }) } diff --git a/agent/consul/subscribe_backend.go b/agent/consul/subscribe_backend.go index 56f2bac01..d1888911d 100644 --- a/agent/consul/subscribe_backend.go +++ b/agent/consul/subscribe_backend.go @@ -7,6 +7,7 @@ import ( "github.com/hashicorp/consul/agent/consul/stream" agentgrpc "github.com/hashicorp/consul/agent/grpc" "github.com/hashicorp/consul/agent/rpc/subscribe" + "github.com/hashicorp/consul/agent/structs" ) type subscribeBackend struct { @@ -16,8 +17,12 @@ type subscribeBackend struct { // TODO: refactor Resolve methods to an ACLBackend that can be used by all // the endpoints. -func (s subscribeBackend) ResolveToken(token string) (acl.Authorizer, error) { - return s.srv.ResolveToken(token) +func (s subscribeBackend) ResolveTokenAndDefaultMeta( + token string, + entMeta *structs.EnterpriseMeta, + authzContext *acl.AuthorizerContext, +) (acl.Authorizer, error) { + return s.srv.ResolveTokenAndDefaultMeta(token, entMeta, authzContext) } var _ subscribe.Backend = (*subscribeBackend)(nil) diff --git a/agent/consul/txn_endpoint.go b/agent/consul/txn_endpoint.go index 9819d6370..9febc8b89 100644 --- a/agent/consul/txn_endpoint.go +++ b/agent/consul/txn_endpoint.go @@ -5,12 +5,24 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/go-hclog" ) +var TxnSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"txn", "apply"}, + Help: "Measures the time spent applying a transaction operation.", + }, + { + Name: []string{"txn", "read"}, + Help: "Measures the time spent returning a read transaction.", + }, +} + // Txn endpoint is used to perform multi-object atomic transactions. type Txn struct { srv *Server diff --git a/agent/consul/usagemetrics/usagemetrics.go b/agent/consul/usagemetrics/usagemetrics.go index 259c6646e..da09890e5 100644 --- a/agent/consul/usagemetrics/usagemetrics.go +++ b/agent/consul/usagemetrics/usagemetrics.go @@ -5,12 +5,29 @@ import ( "errors" "time" + "github.com/armon/go-metrics/prometheus" + "github.com/armon/go-metrics" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/logging" "github.com/hashicorp/go-hclog" ) +var Gauges = []prometheus.GaugeDefinition{ + { + Name: []string{"consul", "state", "nodes"}, + Help: "Measures the current number of nodes registered with Consul. It is only emitted by Consul servers. Added in v1.9.0.", + }, + { + Name: []string{"consul", "state", "services"}, + Help: "Measures the current number of unique services registered with Consul, based on service name. It is only emitted by Consul servers. Added in v1.9.0.", + }, + { + Name: []string{"consul", "state", "service_instances"}, + Help: "Measures the current number of unique services registered with Consul, based on service name. It is only emitted by Consul servers. Added in v1.9.0.", + }, +} + // Config holds the settings for various parameters for the // UsageMetricsReporter type Config struct { diff --git a/agent/consul/usagemetrics/usagemetrics_oss_test.go b/agent/consul/usagemetrics/usagemetrics_oss_test.go index da6248358..d4919914f 100644 --- a/agent/consul/usagemetrics/usagemetrics_oss_test.go +++ b/agent/consul/usagemetrics/usagemetrics_oss_test.go @@ -7,14 +7,15 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/sdk/testutil" - "github.com/stretchr/testify/require" ) func newStateStore() (*state.Store, error) { - return state.NewStateStore(nil) + return state.NewStateStore(nil), nil } func TestUsageReporter_emitServiceUsage_OSS(t *testing.T) { @@ -91,8 +92,7 @@ func TestUsageReporter_emitServiceUsage_OSS(t *testing.T) { metrics.NewGlobal(cfg, sink) mockStateProvider := &mockStateProvider{} - s, err := newStateStore() - require.NoError(t, err) + s := state.NewStateStore(nil) if tcase.modfiyStateStore != nil { tcase.modfiyStateStore(t, s) } diff --git a/agent/consul/usagemetrics/usagemetrics_test.go b/agent/consul/usagemetrics/usagemetrics_test.go index a618386b2..cd34581c6 100644 --- a/agent/consul/usagemetrics/usagemetrics_test.go +++ b/agent/consul/usagemetrics/usagemetrics_test.go @@ -5,11 +5,12 @@ import ( "time" "github.com/armon/go-metrics" + "github.com/stretchr/testify/mock" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/sdk/testutil" - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/require" ) type mockStateProvider struct { diff --git a/agent/debug/host.go b/agent/debug/host.go index 315f43120..0323508a3 100644 --- a/agent/debug/host.go +++ b/agent/debug/host.go @@ -3,10 +3,10 @@ package debug import ( "time" - "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/disk" - "github.com/shirou/gopsutil/host" - "github.com/shirou/gopsutil/mem" + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/disk" + "github.com/shirou/gopsutil/v3/host" + "github.com/shirou/gopsutil/v3/mem" ) const ( diff --git a/agent/dns.go b/agent/dns.go index 72e622324..d8e20003d 100644 --- a/agent/dns.go +++ b/agent/dns.go @@ -10,6 +10,8 @@ import ( "sync/atomic" "time" + "github.com/armon/go-metrics/prometheus" + metrics "github.com/armon/go-metrics" radix "github.com/armon/go-radix" "github.com/coredns/coredns/plugin/pkg/dnsutil" @@ -26,6 +28,24 @@ import ( "github.com/hashicorp/consul/logging" ) +var DNSCounters = []prometheus.CounterDefinition{ + { + Name: []string{"dns", "stale_queries"}, + Help: "Increments when an agent serves a query within the allowed stale threshold.", + }, +} + +var DNSSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"dns", "ptr_query"}, + Help: "Measures the time spent handling a reverse DNS query for the given node.", + }, + { + Name: []string{"dns", "domain_query"}, + Help: "Measures the time spent handling a domain query for the given node.", + }, +} + const ( // UDP can fit ~25 A records in a 512B response, and ~14 AAAA // records. Limit further to prevent unintentional configuration @@ -592,8 +612,7 @@ func (d *DNSServer) parseDatacenter(labels []string, datacenter *string) bool { // doDispatch is used to parse a request and invoke the correct handler. // parameter maxRecursionLevel will handle whether recursive call can be performed -func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *dns.Msg, maxRecursionLevel int) (ecsGlobal bool) { - ecsGlobal = true +func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *dns.Msg, maxRecursionLevel int) bool { // By default the query is in the default datacenter datacenter := d.agent.config.Datacenter @@ -633,19 +652,26 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d } } + invalid := func() bool { + d.logger.Warn("QName invalid", "qname", qName) + d.addSOA(cfg, resp) + resp.SetRcode(req, dns.RcodeNameError) + return true + } + if queryKind == "" { - goto INVALID + return invalid() } switch queryKind { case "service": n := len(queryParts) if n < 1 { - goto INVALID + return invalid() } if !d.parseDatacenterAndEnterpriseMeta(querySuffixes, cfg, &datacenter, &entMeta) { - goto INVALID + return invalid() } lookup := serviceLookup{ @@ -689,11 +715,11 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d } case "connect": if len(queryParts) < 1 { - goto INVALID + return invalid() } if !d.parseDatacenterAndEnterpriseMeta(querySuffixes, cfg, &datacenter, &entMeta) { - goto INVALID + return invalid() } lookup := serviceLookup{ @@ -709,11 +735,11 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d d.serviceLookup(cfg, lookup, req, resp) case "ingress": if len(queryParts) < 1 { - goto INVALID + return invalid() } if !d.parseDatacenterAndEnterpriseMeta(querySuffixes, cfg, &datacenter, &entMeta) { - goto INVALID + return invalid() } lookup := serviceLookup{ @@ -729,11 +755,11 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d d.serviceLookup(cfg, lookup, req, resp) case "node": if len(queryParts) < 1 { - goto INVALID + return invalid() } if !d.parseDatacenter(querySuffixes, &datacenter) { - goto INVALID + return invalid() } // Allow a "." in the node name, just join all the parts @@ -742,22 +768,22 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d case "query": // ensure we have a query name if len(queryParts) < 1 { - goto INVALID + return invalid() } if !d.parseDatacenter(querySuffixes, &datacenter) { - goto INVALID + return invalid() } // Allow a "." in the query name, just join all the parts. query := strings.Join(queryParts, ".") - ecsGlobal = false d.preparedQueryLookup(cfg, network, datacenter, query, remoteAddr, req, resp, maxRecursionLevel) + return false case "addr": //
.addr.. - addr must be the second label, datacenter is optional if len(queryParts) != 1 { - goto INVALID + return invalid() } switch len(queryParts[0]) / 2 { @@ -765,7 +791,7 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d case 4: ip, err := hex.DecodeString(queryParts[0]) if err != nil { - goto INVALID + return invalid() } resp.Answer = append(resp.Answer, &dns.A{ @@ -781,7 +807,7 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d case 16: ip, err := hex.DecodeString(queryParts[0]) if err != nil { - goto INVALID + return invalid() } resp.Answer = append(resp.Answer, &dns.AAAA{ @@ -795,14 +821,7 @@ func (d *DNSServer) doDispatch(network string, remoteAddr net.Addr, req, resp *d }) } } - // early return without error - return - -INVALID: - d.logger.Warn("QName invalid", "qname", qName) - d.addSOA(cfg, resp) - resp.SetRcode(req, dns.RcodeNameError) - return + return true } func (d *DNSServer) trimDomain(query string) string { diff --git a/agent/grpc/client.go b/agent/grpc/client.go index 783cbae36..7eb80070f 100644 --- a/agent/grpc/client.go +++ b/agent/grpc/client.go @@ -61,8 +61,7 @@ func (c *ClientConnPool) ClientConn(datacenter string) (*grpc.ClientConn, error) grpc.WithInsecure(), grpc.WithContextDialer(c.dialer), grpc.WithDisableRetry(), - // TODO: previously this statsHandler was shared with the Handler. Is that necessary? - grpc.WithStatsHandler(newStatsHandler()), + grpc.WithStatsHandler(newStatsHandler(defaultMetrics())), // nolint:staticcheck // there is no other supported alternative to WithBalancerName grpc.WithBalancerName("pick_first")) if err != nil { diff --git a/agent/grpc/client_test.go b/agent/grpc/client_test.go index 400e0a815..38ecc40aa 100644 --- a/agent/grpc/client_test.go +++ b/agent/grpc/client_test.go @@ -5,14 +5,17 @@ import ( "fmt" "net" "strings" + "sync/atomic" "testing" "time" + "github.com/hashicorp/go-hclog" + "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/agent/grpc/internal/testservice" "github.com/hashicorp/consul/agent/grpc/resolver" "github.com/hashicorp/consul/agent/metadata" - "github.com/hashicorp/consul/sdk/testutil/retry" - "github.com/stretchr/testify/require" + "github.com/hashicorp/consul/tlsutil" ) func TestNewDialer_WithTLSWrapper(t *testing.T) { @@ -42,14 +45,43 @@ func TestNewDialer_WithTLSWrapper(t *testing.T) { require.True(t, called, "expected TLSWrapper to be called") } -// TODO: integration test TestNewDialer with TLS and rcp server, when the rpc -// exists as an isolated component. +func TestNewDialer_IntegrationWithTLSEnabledHandler(t *testing.T) { + res := resolver.NewServerResolverBuilder(newConfig(t)) + registerWithGRPC(t, res) + + srv := newTestServer(t, "server-1", "dc1") + tlsConf, err := tlsutil.NewConfigurator(tlsutil.Config{ + VerifyIncoming: true, + VerifyOutgoing: true, + CAFile: "../../test/hostname/CertAuth.crt", + CertFile: "../../test/hostname/Alice.crt", + KeyFile: "../../test/hostname/Alice.key", + }, hclog.New(nil)) + require.NoError(t, err) + srv.rpc.tlsConf = tlsConf + + res.AddServer(srv.Metadata()) + t.Cleanup(srv.shutdown) + + pool := NewClientConnPool(res, TLSWrapper(tlsConf.OutgoingRPCWrapper())) + + conn, err := pool.ClientConn("dc1") + require.NoError(t, err) + client := testservice.NewSimpleClient(conn) + + ctx, cancel := context.WithTimeout(context.Background(), 2*time.Second) + t.Cleanup(cancel) + + resp, err := client.Something(ctx, &testservice.Req{}) + require.NoError(t, err) + require.Equal(t, "server-1", resp.ServerName) + require.True(t, atomic.LoadInt32(&srv.rpc.tlsConnEstablished) > 0) +} func TestClientConnPool_IntegrationWithGRPCResolver_Failover(t *testing.T) { count := 4 - cfg := resolver.Config{Scheme: newScheme(t.Name())} - res := resolver.NewServerResolverBuilder(cfg) - resolver.RegisterWithGRPC(res) + res := resolver.NewServerResolverBuilder(newConfig(t)) + registerWithGRPC(t, res) pool := NewClientConnPool(res, nil) for i := 0; i < count; i++ { @@ -76,17 +108,17 @@ func TestClientConnPool_IntegrationWithGRPCResolver_Failover(t *testing.T) { require.NotEqual(t, resp.ServerName, first.ServerName) } -func newScheme(n string) string { +func newConfig(t *testing.T) resolver.Config { + n := t.Name() s := strings.Replace(n, "/", "", -1) s = strings.Replace(s, "_", "", -1) - return strings.ToLower(s) + return resolver.Config{Scheme: strings.ToLower(s)} } func TestClientConnPool_IntegrationWithGRPCResolver_Rebalance(t *testing.T) { - count := 4 - cfg := resolver.Config{Scheme: newScheme(t.Name())} - res := resolver.NewServerResolverBuilder(cfg) - resolver.RegisterWithGRPC(res) + count := 5 + res := resolver.NewServerResolverBuilder(newConfig(t)) + registerWithGRPC(t, res) pool := NewClientConnPool(res, nil) for i := 0; i < count; i++ { @@ -117,22 +149,25 @@ func TestClientConnPool_IntegrationWithGRPCResolver_Rebalance(t *testing.T) { t.Run("rebalance the dc", func(t *testing.T) { // Rebalance is random, but if we repeat it a few times it should give us a // new server. - retry.RunWith(fastRetry, t, func(r *retry.R) { + attempts := 100 + for i := 0; i < attempts; i++ { res.NewRebalancer("dc1")() resp, err := client.Something(ctx, &testservice.Req{}) - require.NoError(r, err) - require.NotEqual(r, resp.ServerName, first.ServerName) - }) + require.NoError(t, err) + if resp.ServerName != first.ServerName { + return + } + } + t.Fatalf("server was not rebalanced after %v attempts", attempts) }) } func TestClientConnPool_IntegrationWithGRPCResolver_MultiDC(t *testing.T) { dcs := []string{"dc1", "dc2", "dc3"} - cfg := resolver.Config{Scheme: newScheme(t.Name())} - res := resolver.NewServerResolverBuilder(cfg) - resolver.RegisterWithGRPC(res) + res := resolver.NewServerResolverBuilder(newConfig(t)) + registerWithGRPC(t, res) pool := NewClientConnPool(res, nil) for _, dc := range dcs { diff --git a/agent/grpc/handler.go b/agent/grpc/handler.go index d70fd2b10..388954dc4 100644 --- a/agent/grpc/handler.go +++ b/agent/grpc/handler.go @@ -14,15 +14,16 @@ import ( // The register function will be called with the grpc.Server to register // gRPC services with the server. func NewHandler(addr net.Addr, register func(server *grpc.Server)) *Handler { + metrics := defaultMetrics() // We don't need to pass tls.Config to the server since it's multiplexed // behind the RPC listener, which already has TLS configured. srv := grpc.NewServer( - grpc.StatsHandler(newStatsHandler()), - grpc.StreamInterceptor((&activeStreamCounter{}).Intercept), + grpc.StatsHandler(newStatsHandler(metrics)), + grpc.StreamInterceptor((&activeStreamCounter{metrics: metrics}).Intercept), ) register(srv) - lis := &chanListener{addr: addr, conns: make(chan net.Conn)} + lis := &chanListener{addr: addr, conns: make(chan net.Conn), done: make(chan struct{})} return &Handler{srv: srv, listener: lis} } @@ -51,22 +52,22 @@ func (h *Handler) Shutdown() error { type chanListener struct { conns chan net.Conn addr net.Addr + done chan struct{} } // Accept blocks until a connection is received from Handle, and then returns the // connection. Accept implements part of the net.Listener interface for grpc.Server. func (l *chanListener) Accept() (net.Conn, error) { select { - case c, ok := <-l.conns: - if !ok { - return nil, &net.OpError{ - Op: "accept", - Net: l.addr.Network(), - Addr: l.addr, - Err: fmt.Errorf("listener closed"), - } - } + case c := <-l.conns: return c, nil + case <-l.done: + return nil, &net.OpError{ + Op: "accept", + Net: l.addr.Network(), + Addr: l.addr, + Err: fmt.Errorf("listener closed"), + } } } @@ -75,7 +76,7 @@ func (l *chanListener) Addr() net.Addr { } func (l *chanListener) Close() error { - close(l.conns) + close(l.done) return nil } diff --git a/agent/grpc/resolver/resolver.go b/agent/grpc/resolver/resolver.go index b34aad72f..76a2188d2 100644 --- a/agent/grpc/resolver/resolver.go +++ b/agent/grpc/resolver/resolver.go @@ -7,23 +7,11 @@ import ( "sync" "time" - "github.com/hashicorp/consul/agent/metadata" "google.golang.org/grpc/resolver" + + "github.com/hashicorp/consul/agent/metadata" ) -var registerLock sync.Mutex - -// RegisterWithGRPC registers the ServerResolverBuilder as a grpc/resolver. -// This function exists to synchronize registrations with a lock. -// grpc/resolver.Register expects all registration to happen at init and does -// not allow for concurrent registration. This function exists to support -// parallel testing. -func RegisterWithGRPC(b *ServerResolverBuilder) { - registerLock.Lock() - defer registerLock.Unlock() - resolver.Register(b) -} - // ServerResolverBuilder tracks the current server list and keeps any // ServerResolvers updated when changes occur. type ServerResolverBuilder struct { @@ -31,7 +19,7 @@ type ServerResolverBuilder struct { // parallel testing because gRPC registers resolvers globally. scheme string // servers is an index of Servers by Server.ID. The map contains server IDs - // for all datacenters, so it assumes the ID is globally unique. + // for all datacenters. servers map[string]*metadata.Server // resolvers is an index of connections to the serverResolver which manages // addresses of servers for that connection. @@ -131,7 +119,7 @@ func (s *ServerResolverBuilder) AddServer(server *metadata.Server) { s.lock.Lock() defer s.lock.Unlock() - s.servers[server.ID] = server + s.servers[uniqueID(server)] = server addrs := s.getDCAddrs(server.Datacenter) for _, resolver := range s.resolvers { @@ -141,12 +129,21 @@ func (s *ServerResolverBuilder) AddServer(server *metadata.Server) { } } +// uniqueID returns a unique identifier for the server which includes the +// Datacenter and the ID. +// +// In practice it is expected that the server.ID is already a globally unique +// UUID. This function is an extra safeguard in case that ever changes. +func uniqueID(server *metadata.Server) string { + return server.Datacenter + "-" + server.ID +} + // RemoveServer updates the resolvers' states with the given server removed. func (s *ServerResolverBuilder) RemoveServer(server *metadata.Server) { s.lock.Lock() defer s.lock.Unlock() - delete(s.servers, server.ID) + delete(s.servers, uniqueID(server)) addrs := s.getDCAddrs(server.Datacenter) for _, resolver := range s.resolvers { diff --git a/agent/grpc/server_test.go b/agent/grpc/server_test.go index 68417354b..b660a66a7 100644 --- a/agent/grpc/server_test.go +++ b/agent/grpc/server_test.go @@ -2,18 +2,23 @@ package grpc import ( "context" + "crypto/tls" "fmt" "io" "net" + "sync/atomic" "testing" "time" + "github.com/stretchr/testify/require" + "golang.org/x/sync/errgroup" + "google.golang.org/grpc" + "google.golang.org/grpc/resolver" + "github.com/hashicorp/consul/agent/grpc/internal/testservice" "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/pool" - "github.com/stretchr/testify/require" - "golang.org/x/sync/errgroup" - "google.golang.org/grpc" + "github.com/hashicorp/consul/tlsutil" ) type testServer struct { @@ -21,10 +26,16 @@ type testServer struct { name string dc string shutdown func() + rpc *fakeRPCListener } func (s testServer) Metadata() *metadata.Server { - return &metadata.Server{ID: s.name, Datacenter: s.dc, Addr: s.addr} + return &metadata.Server{ + ID: s.name, + Datacenter: s.dc, + Addr: s.addr, + UseTLS: s.rpc.tlsConf != nil, + } } func newTestServer(t *testing.T, name string, dc string) testServer { @@ -40,16 +51,24 @@ func newTestServer(t *testing.T, name string, dc string) testServer { g := errgroup.Group{} g.Go(func() error { - return rpc.listen(lis) + if err := rpc.listen(lis); err != nil { + return fmt.Errorf("fake rpc listen error: %w", err) + } + return nil }) g.Go(func() error { - return handler.Run() + if err := handler.Run(); err != nil { + return fmt.Errorf("grpc server error: %w", err) + } + return nil }) return testServer{ addr: lis.Addr(), name: name, dc: dc, + rpc: rpc, shutdown: func() { + rpc.shutdown = true if err := lis.Close(); err != nil { t.Logf("listener closed with error: %v", err) } @@ -57,7 +76,7 @@ func newTestServer(t *testing.T, name string, dc string) testServer { t.Logf("grpc server shutdown: %v", err) } if err := g.Wait(); err != nil { - t.Logf("grpc server error: %v", err) + t.Log(err) } }, } @@ -89,14 +108,20 @@ func (s *simple) Something(_ context.Context, _ *testservice.Req) (*testservice. // For now, since this logic is in agent/consul, we can't easily use Server.listen // so we fake it. type fakeRPCListener struct { - t *testing.T - handler *Handler + t *testing.T + handler *Handler + shutdown bool + tlsConf *tlsutil.Configurator + tlsConnEstablished int32 } func (f *fakeRPCListener) listen(listener net.Listener) error { for { conn, err := listener.Accept() if err != nil { + if f.shutdown { + return nil + } return err } @@ -116,11 +141,36 @@ func (f *fakeRPCListener) handleConn(conn net.Conn) { } typ := pool.RPCType(buf[0]) - if typ == pool.RPCGRPC { + switch typ { + + case pool.RPCGRPC: f.handler.Handle(conn) return - } - fmt.Println("ERROR: unexpected byte", typ) - conn.Close() + case pool.RPCTLS: + // occasionally we see a test client connecting to an rpc listener that + // was created as part of another test, despite none of the tests running + // in parallel. + // Maybe some strange grpc behaviour? I'm not sure. + if f.tlsConf == nil { + fmt.Println("ERROR: tls is not configured") + conn.Close() + return + } + + atomic.AddInt32(&f.tlsConnEstablished, 1) + conn = tls.Server(conn, f.tlsConf.IncomingRPCConfig()) + f.handleConn(conn) + + default: + fmt.Println("ERROR: unexpected byte", typ) + conn.Close() + } +} + +func registerWithGRPC(t *testing.T, b resolver.Builder) { + resolver.Register(b) + t.Cleanup(func() { + resolver.UnregisterForTesting(b.Scheme()) + }) } diff --git a/agent/grpc/stats.go b/agent/grpc/stats.go index d25048110..7ba96f91f 100644 --- a/agent/grpc/stats.go +++ b/agent/grpc/stats.go @@ -5,11 +5,49 @@ import ( "sync/atomic" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "google.golang.org/grpc" "google.golang.org/grpc/stats" ) -var defaultMetrics = metrics.Default() +var StatsGauges = []prometheus.GaugeDefinition{ + { + Name: []string{"grpc", "server", "connections"}, + Help: "Measures the number of active gRPC connections open on the server.", + }, + { + Name: []string{"grpc", "client", "connections"}, + Help: "Measures the number of active gRPC connections open from the client agent to any Consul servers.", + }, + { + Name: []string{"grpc", "server", "streams"}, + Help: "Measures the number of active gRPC streams handled by the server.", + }, +} +var StatsCounters = []prometheus.CounterDefinition{ + { + Name: []string{"grpc", "client", "request", "count"}, + Help: "Counts the number of gRPC requests made by the client agent to a Consul server.", + }, + { + Name: []string{"grpc", "server", "request", "count"}, + Help: "Counts the number of gRPC requests received by the server.", + }, + { + Name: []string{"grpc", "client", "connection", "count"}, + Help: "Counts the number of new gRPC connections opened by the client agent to a Consul server.", + }, + { + Name: []string{"grpc", "server", "connection", "count"}, + Help: "Counts the number of new gRPC connections received by the server.", + }, + { + Name: []string{"grpc", "server", "stream", "count"}, + Help: "Counts the number of new gRPC streams received by the server.", + }, +} + +var defaultMetrics = metrics.Default // statsHandler is a grpc/stats.StatsHandler which emits connection and // request metrics to go-metrics. @@ -18,8 +56,8 @@ type statsHandler struct { activeConns uint64 // must be 8-byte aligned for atomic access } -func newStatsHandler() *statsHandler { - return &statsHandler{metrics: defaultMetrics} +func newStatsHandler(m *metrics.Metrics) *statsHandler { + return &statsHandler{metrics: m} } // TagRPC implements grpcStats.StatsHandler @@ -36,7 +74,7 @@ func (c *statsHandler) HandleRPC(_ context.Context, s stats.RPCStats) { } switch s.(type) { case *stats.InHeader: - c.metrics.IncrCounter([]string{"grpc", label, "request"}, 1) + c.metrics.IncrCounter([]string{"grpc", label, "request", "count"}, 1) } } @@ -56,14 +94,16 @@ func (c *statsHandler) HandleConn(_ context.Context, s stats.ConnStats) { switch s.(type) { case *stats.ConnBegin: count = atomic.AddUint64(&c.activeConns, 1) + c.metrics.IncrCounter([]string{"grpc", label, "connection", "count"}, 1) case *stats.ConnEnd: // Decrement! count = atomic.AddUint64(&c.activeConns, ^uint64(0)) } - c.metrics.SetGauge([]string{"grpc", label, "active_conns"}, float32(count)) + c.metrics.SetGauge([]string{"grpc", label, "connections"}, float32(count)) } type activeStreamCounter struct { + metrics *metrics.Metrics // count of the number of open streaming RPCs on a server. It is accessed // atomically. count uint64 @@ -78,10 +118,11 @@ func (i *activeStreamCounter) Intercept( handler grpc.StreamHandler, ) error { count := atomic.AddUint64(&i.count, 1) - defaultMetrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + i.metrics.SetGauge([]string{"grpc", "server", "streams"}, float32(count)) + i.metrics.IncrCounter([]string{"grpc", "server", "stream", "count"}, 1) defer func() { count := atomic.AddUint64(&i.count, ^uint64(0)) - defaultMetrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + i.metrics.SetGauge([]string{"grpc", "server", "streams"}, float32(count)) }() return handler(srv, ss) diff --git a/agent/grpc/stats_test.go b/agent/grpc/stats_test.go index f98d0f3cb..475bbf6df 100644 --- a/agent/grpc/stats_test.go +++ b/agent/grpc/stats_test.go @@ -3,32 +3,33 @@ package grpc import ( "context" "net" + "sort" "sync" "testing" "time" "github.com/armon/go-metrics" + "github.com/google/go-cmp/cmp" "github.com/stretchr/testify/require" "golang.org/x/sync/errgroup" "google.golang.org/grpc" "github.com/hashicorp/consul/agent/grpc/internal/testservice" - "github.com/hashicorp/consul/sdk/testutil/retry" ) func noopRegister(*grpc.Server) {} func TestHandler_EmitsStats(t *testing.T) { - sink := patchGlobalMetrics(t) + sink, reset := patchGlobalMetrics(t) addr := &net.IPAddr{IP: net.ParseIP("127.0.0.1")} handler := NewHandler(addr, noopRegister) + reset() testservice.RegisterSimpleServer(handler.srv, &simple{}) lis, err := net.Listen("tcp", "127.0.0.1:0") require.NoError(t, err) - t.Cleanup(logError(t, lis.Close)) ctx, cancel := context.WithCancel(context.Background()) t.Cleanup(cancel) @@ -48,7 +49,7 @@ func TestHandler_EmitsStats(t *testing.T) { conn, err := grpc.DialContext(ctx, lis.Addr().String(), grpc.WithInsecure()) require.NoError(t, err) - t.Cleanup(logError(t, conn.Close)) + t.Cleanup(func() { conn.Close() }) client := testservice.NewSimpleClient(conn) fClient, err := client.Flow(ctx, &testservice.Req{Datacenter: "mine"}) @@ -64,23 +65,44 @@ func TestHandler_EmitsStats(t *testing.T) { // Wait for the server to stop so that active_streams is predictable. require.NoError(t, g.Wait()) + // Occasionally the active_stream=0 metric may be emitted before the + // active_conns=0 metric. The order of those metrics is not really important + // so we sort the calls to match the expected. + sort.Slice(sink.gaugeCalls, func(i, j int) bool { + if i < 2 || j < 2 { + return i < j + } + if len(sink.gaugeCalls[i].key) < 4 || len(sink.gaugeCalls[j].key) < 4 { + return i < j + } + return sink.gaugeCalls[i].key[3] < sink.gaugeCalls[j].key[3] + }) + + cmpMetricCalls := cmp.AllowUnexported(metricCall{}) expectedGauge := []metricCall{ - {key: []string{"testing", "grpc", "server", "active_conns"}, val: 1}, - {key: []string{"testing", "grpc", "server", "active_streams"}, val: 1}, - {key: []string{"testing", "grpc", "server", "active_conns"}, val: 0}, - {key: []string{"testing", "grpc", "server", "active_streams"}, val: 0}, + {key: []string{"testing", "grpc", "server", "connections"}, val: 1}, + {key: []string{"testing", "grpc", "server", "streams"}, val: 1}, + {key: []string{"testing", "grpc", "server", "connections"}, val: 0}, + {key: []string{"testing", "grpc", "server", "streams"}, val: 0}, } - require.Equal(t, expectedGauge, sink.gaugeCalls) + assertDeepEqual(t, expectedGauge, sink.gaugeCalls, cmpMetricCalls) expectedCounter := []metricCall{ - {key: []string{"testing", "grpc", "server", "request"}, val: 1}, + {key: []string{"testing", "grpc", "server", "connection", "count"}, val: 1}, + {key: []string{"testing", "grpc", "server", "request", "count"}, val: 1}, + {key: []string{"testing", "grpc", "server", "stream", "count"}, val: 1}, } - require.Equal(t, expectedCounter, sink.incrCounterCalls) + assertDeepEqual(t, expectedCounter, sink.incrCounterCalls, cmpMetricCalls) } -var fastRetry = &retry.Timer{Timeout: 7 * time.Second, Wait: 2 * time.Millisecond} +func assertDeepEqual(t *testing.T, x, y interface{}, opts ...cmp.Option) { + t.Helper() + if diff := cmp.Diff(x, y, opts...); diff != "" { + t.Fatalf("assertion failed: values are not equal\n--- expected\n+++ actual\n%v", diff) + } +} -func patchGlobalMetrics(t *testing.T) *fakeMetricsSink { +func patchGlobalMetrics(t *testing.T) (*fakeMetricsSink, func()) { t.Helper() sink := &fakeMetricsSink{} @@ -91,13 +113,17 @@ func patchGlobalMetrics(t *testing.T) *fakeMetricsSink { FilterDefault: true, } var err error - defaultMetrics, err = metrics.New(cfg, sink) + defaultMetrics = func() *metrics.Metrics { + m, _ := metrics.New(cfg, sink) + return m + } require.NoError(t, err) - t.Cleanup(func() { - _, err = metrics.NewGlobal(cfg, &metrics.BlackholeSink{}) + reset := func() { + t.Helper() + defaultMetrics = metrics.Default require.NoError(t, err, "failed to reset global metrics") - }) - return sink + } + return sink, reset } type fakeMetricsSink struct { diff --git a/agent/health_endpoint.go b/agent/health_endpoint.go index af935f1ba..b37c47e16 100644 --- a/agent/health_endpoint.go +++ b/agent/health_endpoint.go @@ -219,8 +219,8 @@ func (s *HTTPHandlers) healthServiceNodes(resp http.ResponseWriter, req *http.Re return nil, nil } - // TODO: handle this for all endpoints in parseConsistency - args.QueryOptions.UseCache = s.agent.config.HTTPUseCache && args.QueryOptions.UseCache + useStreaming := s.agent.config.UseStreamingBackend && args.MinQueryIndex > 0 + args.QueryOptions.UseCache = s.agent.config.HTTPUseCache && (args.QueryOptions.UseCache || useStreaming) out, md, err := s.agent.rpcClientHealth.ServiceNodes(req.Context(), args) if err != nil { diff --git a/agent/http.go b/agent/http.go index dc8cdbc37..93c6cdc8f 100644 --- a/agent/http.go +++ b/agent/http.go @@ -17,6 +17,7 @@ import ( "github.com/NYTimes/gziphandler" "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/config" @@ -31,6 +32,13 @@ import ( "github.com/pkg/errors" ) +var HTTPSummaries = []prometheus.SummaryDefinition{ + { + Name: []string{"api", "http"}, + Help: "Samples how long it takes to service the given HTTP request for the given verb and path.", + }, +} + // MethodNotAllowedError should be returned by a handler when the HTTP method is not allowed. type MethodNotAllowedError struct { Method string @@ -357,6 +365,7 @@ func (s *HTTPHandlers) wrap(handler endpoint, methods []string) http.HandlerFunc return func(resp http.ResponseWriter, req *http.Request) { setHeaders(resp, s.agent.config.HTTPResponseHeaders) setTranslateAddr(resp, s.agent.config.TranslateWANAddrs) + setACLDefaultPolicy(resp, s.agent.config.ACLDefaultPolicy) // Obfuscate any tokens from appearing in the logs formVals, err := url.ParseQuery(req.URL.RawQuery) @@ -697,6 +706,12 @@ func setConsistency(resp http.ResponseWriter, consistency string) { } } +func setACLDefaultPolicy(resp http.ResponseWriter, aclDefaultPolicy string) { + if aclDefaultPolicy != "" { + resp.Header().Set("X-Consul-Default-ACL-Policy", aclDefaultPolicy) + } +} + // setLastContact is used to set the last contact header func setLastContact(resp http.ResponseWriter, last time.Duration) { if last < 0 { @@ -895,12 +910,26 @@ func (s *HTTPHandlers) parseDC(req *http.Request, dc *string) { // parseTokenInternal is used to parse the ?token query param or the X-Consul-Token header or // Authorization Bearer token (RFC6750). func (s *HTTPHandlers) parseTokenInternal(req *http.Request, token *string) { - tok := "" if other := req.URL.Query().Get("token"); other != "" { - tok = other - } else if other := req.Header.Get("X-Consul-Token"); other != "" { - tok = other - } else if other := req.Header.Get("Authorization"); other != "" { + *token = other + return + } + + if ok := s.parseTokenFromHeaders(req, token); ok { + return + } + + *token = "" + return +} + +func (s *HTTPHandlers) parseTokenFromHeaders(req *http.Request, token *string) bool { + if other := req.Header.Get("X-Consul-Token"); other != "" { + *token = other + return true + } + + if other := req.Header.Get("Authorization"); other != "" { // HTTP Authorization headers are in the format: [SPACE] // Ref. https://tools.ietf.org/html/rfc7236#section-3 parts := strings.Split(other, " ") @@ -916,13 +945,18 @@ func (s *HTTPHandlers) parseTokenInternal(req *http.Request, token *string) { if strings.ToLower(scheme) == "bearer" { // Since Bearer tokens shouldn't contain spaces (rfc6750#section-2.1) // "value" is tokenized, only the first item is used - tok = strings.TrimSpace(strings.Split(value, " ")[0]) + *token = strings.TrimSpace(strings.Split(value, " ")[0]) + return true } } } - *token = tok - return + return false +} + +func (s *HTTPHandlers) clearTokenFromHeaders(req *http.Request) { + req.Header.Del("X-Consul-Token") + req.Header.Del("Authorization") } // parseTokenWithDefault passes through to parseTokenInternal and optionally resolves proxy tokens to real ACL tokens. diff --git a/agent/http_decode_test.go b/agent/http_decode_test.go index 32c59cec2..bbfabc6c3 100644 --- a/agent/http_decode_test.go +++ b/agent/http_decode_test.go @@ -282,6 +282,7 @@ var translateCheckTypeTCs = [][]translateKeyTestCase{ translateScriptArgsTCs, translateDeregisterTCs, translateDockerTCs, + translateGRPCUseTLSTCs, translateTLSTCs, translateServiceIDTCs, } @@ -560,6 +561,63 @@ var translateTLSTCs = []translateKeyTestCase{ }, } +// GRPCUseTLS: bool +func grpcUseTLSEqFn(out interface{}, want interface{}) error { + var got interface{} + switch v := out.(type) { + case structs.CheckDefinition: + got = v.GRPCUseTLS + case *structs.CheckDefinition: + got = v.GRPCUseTLS + case structs.CheckType: + got = v.GRPCUseTLS + case *structs.CheckType: + got = v.GRPCUseTLS + case structs.HealthCheckDefinition: + got = v.GRPCUseTLS + case *structs.HealthCheckDefinition: + got = v.GRPCUseTLS + default: + panic(fmt.Sprintf("unexpected type %T", out)) + } + if got != want { + return fmt.Errorf("expected GRPCUseTLS to be %v, got %v", want, got) + } + return nil +} + +var grpcUseTLSFields = []string{`"GRPCUseTLS": %s`, `"grpc_use_tls": %s`} +var translateGRPCUseTLSTCs = []translateKeyTestCase{ + { + desc: "GRPCUseTLS: both set", + in: []interface{}{"true", "false"}, + want: true, + jsonFmtStr: "{" + strings.Join(grpcUseTLSFields, ",") + "}", + equalityFn: grpcUseTLSEqFn, + }, + { + desc: "GRPCUseTLS: first set", + in: []interface{}{`true`}, + want: true, + jsonFmtStr: "{" + grpcUseTLSFields[0] + "}", + equalityFn: grpcUseTLSEqFn, + }, + { + desc: "GRPCUseTLS: second set", + in: []interface{}{`true`}, + want: true, + jsonFmtStr: "{" + grpcUseTLSFields[1] + "}", + equalityFn: grpcUseTLSEqFn, + }, + { + desc: "GRPCUseTLS: neither set", + in: []interface{}{}, + want: false, // zero value + jsonFmtStr: "{}", + equalityFn: grpcUseTLSEqFn, + }, +} + // ServiceID: string func serviceIDEqFn(out interface{}, want interface{}) error { var got interface{} diff --git a/agent/http_register.go b/agent/http_register.go index f4c526c28..41020e858 100644 --- a/agent/http_register.go +++ b/agent/http_register.go @@ -108,6 +108,7 @@ func init() { registerEndpoint("/v1/operator/keyring", []string{"GET", "POST", "PUT", "DELETE"}, (*HTTPHandlers).OperatorKeyringEndpoint) registerEndpoint("/v1/operator/autopilot/configuration", []string{"GET", "PUT"}, (*HTTPHandlers).OperatorAutopilotConfiguration) registerEndpoint("/v1/operator/autopilot/health", []string{"GET"}, (*HTTPHandlers).OperatorServerHealth) + registerEndpoint("/v1/operator/autopilot/state", []string{"GET"}, (*HTTPHandlers).OperatorAutopilotState) registerEndpoint("/v1/query", []string{"GET", "POST"}, (*HTTPHandlers).PreparedQueryGeneral) // specific prepared query endpoints have more complex rules for allowed methods, so // the prefix is registered with no methods. diff --git a/agent/http_test.go b/agent/http_test.go index 883bf70c2..48f0b13f5 100644 --- a/agent/http_test.go +++ b/agent/http_test.go @@ -415,6 +415,54 @@ func TestHTTPAPI_TranslateAddrHeader(t *testing.T) { } } +func TestHTTPAPI_DefaultACLPolicy(t *testing.T) { + t.Parallel() + + type testcase struct { + name string + hcl string + expect string + } + + cases := []testcase{ + { + name: "default is allow", + hcl: ``, + expect: "allow", + }, + { + name: "explicit allow", + hcl: `acl { default_policy = "allow" }`, + expect: "allow", + }, + { + name: "explicit deny", + hcl: `acl { default_policy = "deny" }`, + expect: "deny", + }, + } + + for _, tc := range cases { + tc := tc + t.Run(tc.name, func(t *testing.T) { + t.Parallel() + + a := NewTestAgent(t, tc.hcl) + defer a.Shutdown() + + resp := httptest.NewRecorder() + handler := func(resp http.ResponseWriter, req *http.Request) (interface{}, error) { + return nil, nil + } + + req, _ := http.NewRequest("GET", "/v1/agent/self", nil) + a.srv.wrap(handler, []string{"GET"})(resp, req) + + require.Equal(t, tc.expect, resp.Header().Get("X-Consul-Default-ACL-Policy")) + }) + } +} + func TestHTTPAPIResponseHeaders(t *testing.T) { t.Parallel() a := NewTestAgent(t, ` diff --git a/agent/local/state.go b/agent/local/state.go index f6e396131..b4414e910 100644 --- a/agent/local/state.go +++ b/agent/local/state.go @@ -9,8 +9,8 @@ import ( "sync/atomic" "time" - metrics "github.com/armon/go-metrics" - + "github.com/armon/go-metrics" + "github.com/armon/go-metrics/prometheus" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" @@ -20,6 +20,33 @@ import ( "github.com/hashicorp/go-hclog" ) +var StateCounters = []prometheus.CounterDefinition{ + { + Name: []string{"acl", "blocked", "service", "registration"}, + Help: "Increments whenever a registration fails for a service (blocked by an ACL)", + }, + { + Name: []string{"acl", "blocked", "service", "deregistration"}, + Help: "Increments whenever a deregistration fails for a service (blocked by an ACL)", + }, + { + Name: []string{"acl", "blocked", "check", "registration"}, + Help: "Increments whenever a registration fails for a check (blocked by an ACL)", + }, + { + Name: []string{"acl", "blocked", "check", "deregistration"}, + Help: "Increments whenever a deregistration fails for a check (blocked by an ACL)", + }, + { + Name: []string{"acl", "blocked", "node", "registration"}, + Help: "Increments whenever a registration fails for a node (blocked by an ACL)", + }, + { + Name: []string{"acl", "blocked", "node", "deregistration"}, + Help: "Increments whenever a deregistration fails for a node (blocked by an ACL)", + }, +} + const fullSyncReadMaxStale = 2 * time.Second // Config is the configuration for the State. @@ -906,7 +933,6 @@ func (l *State) updateSyncState() error { !reflect.DeepEqual(svcNode.Meta, l.metadata) { l.nodeInfoInSync = false } - // Check which services need syncing // Look for local services that do not exist remotely and mark them for diff --git a/agent/local/testing.go b/agent/local/testing.go index 5871463e2..283c68c5f 100644 --- a/agent/local/testing.go +++ b/agent/local/testing.go @@ -9,7 +9,7 @@ import ( ) // TestState returns a configured *State for testing. -func TestState(t testing.T) *State { +func TestState(_ testing.T) *State { logger := hclog.New(&hclog.LoggerOptions{ Output: os.Stderr, }) diff --git a/agent/metadata/server.go b/agent/metadata/server.go index d145a9d26..5b35ec78e 100644 --- a/agent/metadata/server.go +++ b/agent/metadata/server.go @@ -40,7 +40,7 @@ type Server struct { RaftVersion int Addr net.Addr Status serf.MemberStatus - NonVoter bool + ReadReplica bool ACLs structs.ACLMode FeatureFlags map[string]int @@ -160,7 +160,10 @@ func IsConsulServer(m serf.Member) (bool, *Server) { } // Check if the server is a non voter + // DEPRECATED - remove looking for the nonvoter tag eventually once we don't have to support + // read replicas running v1.8.x and below. _, nonVoter := m.Tags["nonvoter"] + _, readReplica := m.Tags["read_replica"] addr := &net.TCPAddr{IP: m.Addr, Port: port} @@ -182,7 +185,8 @@ func IsConsulServer(m serf.Member) (bool, *Server) { RaftVersion: raftVsn, Status: m.Status, UseTLS: useTLS, - NonVoter: nonVoter, + // DEPRECATED - remove nonVoter check once support for that tag is removed + ReadReplica: nonVoter || readReplica, ACLs: acls, FeatureFlags: featureFlags, } diff --git a/agent/metadata/server_test.go b/agent/metadata/server_test.go index 6b96785cc..4f479472c 100644 --- a/agent/metadata/server_test.go +++ b/agent/metadata/server_test.go @@ -66,7 +66,7 @@ func TestIsConsulServer(t *testing.T) { "expect": "3", "raft_vsn": "3", "use_tls": "1", - "nonvoter": "1", + "read_replica": "1", }, Status: serf.StatusLeft, } @@ -101,7 +101,7 @@ func TestIsConsulServer(t *testing.T) { if !parts.UseTLS { t.Fatalf("bad: %v", parts.UseTLS) } - if !parts.NonVoter { + if !parts.ReadReplica { t.Fatalf("unexpected voter") } m.Tags["bootstrap"] = "1" @@ -130,10 +130,16 @@ func TestIsConsulServer(t *testing.T) { t.Fatalf("unexpected bootstrap") } - delete(m.Tags, "nonvoter") + delete(m.Tags, "read_replica") ok, parts = metadata.IsConsulServer(m) - if !ok || parts.NonVoter { - t.Fatalf("unexpected nonvoter") + if !ok || parts.ReadReplica { + t.Fatalf("unexpected read replica") + } + + m.Tags["nonvoter"] = "1" + ok, parts = metadata.IsConsulServer(m) + if !ok || !parts.ReadReplica { + t.Fatalf("expected read replica") } delete(m.Tags, "role") diff --git a/agent/nodeid.go b/agent/nodeid.go index d09703b49..27a734670 100644 --- a/agent/nodeid.go +++ b/agent/nodeid.go @@ -13,7 +13,7 @@ import ( "github.com/hashicorp/consul/types" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-uuid" - "github.com/shirou/gopsutil/host" + "github.com/shirou/gopsutil/v3/host" ) // newNodeIDFromConfig will pull the persisted node ID, if any, or create a random one diff --git a/agent/operator_endpoint.go b/agent/operator_endpoint.go index 8ea03b728..f8f2f4fcc 100644 --- a/agent/operator_endpoint.go +++ b/agent/operator_endpoint.go @@ -6,11 +6,11 @@ import ( "strconv" "time" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" multierror "github.com/hashicorp/go-multierror" "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" ) // OperatorRaftConfiguration is used to inspect the current Raft configuration. @@ -192,7 +192,7 @@ func (s *HTTPHandlers) OperatorAutopilotConfiguration(resp http.ResponseWriter, return nil, nil } - var reply autopilot.Config + var reply structs.AutopilotConfig if err := s.agent.RPC("Operator.AutopilotGetConfiguration", &args, &reply); err != nil { return nil, err } @@ -222,7 +222,7 @@ func (s *HTTPHandlers) OperatorAutopilotConfiguration(resp http.ResponseWriter, return nil, BadRequestError{Reason: fmt.Sprintf("Error parsing autopilot config: %v", err)} } - args.Config = autopilot.Config{ + args.Config = structs.AutopilotConfig{ CleanupDeadServers: conf.CleanupDeadServers, LastContactThreshold: conf.LastContactThreshold.Duration(), MaxTrailingLogs: conf.MaxTrailingLogs, @@ -267,7 +267,7 @@ func (s *HTTPHandlers) OperatorServerHealth(resp http.ResponseWriter, req *http. return nil, nil } - var reply autopilot.OperatorHealthReply + var reply structs.AutopilotHealthReply if err := s.agent.RPC("Operator.ServerHealth", &args, &reply); err != nil { return nil, err } @@ -300,3 +300,66 @@ func (s *HTTPHandlers) OperatorServerHealth(resp http.ResponseWriter, req *http. return out, nil } + +func (s *HTTPHandlers) OperatorAutopilotState(resp http.ResponseWriter, req *http.Request) (interface{}, error) { + var args structs.DCSpecificRequest + if done := s.parse(resp, req, &args.Datacenter, &args.QueryOptions); done { + return nil, nil + } + + var reply autopilot.State + if err := s.agent.RPC("Operator.AutopilotState", &args, &reply); err != nil { + return nil, err + } + + out := autopilotToAPIState(&reply) + return out, nil +} + +func stringIDs(ids []raft.ServerID) []string { + out := make([]string, len(ids)) + for i, id := range ids { + out[i] = string(id) + } + return out +} + +func autopilotToAPIState(state *autopilot.State) *api.AutopilotState { + out := &api.AutopilotState{ + Healthy: state.Healthy, + FailureTolerance: state.FailureTolerance, + Leader: string(state.Leader), + Voters: stringIDs(state.Voters), + Servers: make(map[string]api.AutopilotServer), + } + + for id, srv := range state.Servers { + out.Servers[string(id)] = autopilotToAPIServer(srv) + } + + autopilotToAPIStateEnterprise(state, out) + + return out +} + +func autopilotToAPIServer(srv *autopilot.ServerState) api.AutopilotServer { + apiSrv := api.AutopilotServer{ + ID: string(srv.Server.ID), + Name: srv.Server.Name, + Address: string(srv.Server.Address), + NodeStatus: string(srv.Server.NodeStatus), + Version: srv.Server.Version, + LastContact: api.NewReadableDuration(srv.Stats.LastContact), + LastTerm: srv.Stats.LastTerm, + LastIndex: srv.Stats.LastIndex, + Healthy: srv.Health.Healthy, + StableSince: srv.Health.StableSince, + Status: api.AutopilotServerStatus(srv.State), + Meta: srv.Server.Meta, + NodeType: api.AutopilotServerType(srv.Server.NodeType), + } + + autopilotToAPIServerEnterprise(srv, &apiSrv) + + return apiSrv +} diff --git a/agent/operator_endpoint_oss.go b/agent/operator_endpoint_oss.go new file mode 100644 index 000000000..ff87332b6 --- /dev/null +++ b/agent/operator_endpoint_oss.go @@ -0,0 +1,18 @@ +// +build !consulent + +package agent + +import ( + "github.com/hashicorp/consul/api" + autopilot "github.com/hashicorp/raft-autopilot" +) + +func autopilotToAPIServerEnterprise(_ *autopilot.ServerState, _ *api.AutopilotServer) { + // noop in oss +} + +func autopilotToAPIStateEnterprise(state *autopilot.State, apiState *api.AutopilotState) { + // without the enterprise features there is no different between these two and we don't want to + // alarm anyone by leaving this as the zero value. + apiState.OptimisticFailureTolerance = state.FailureTolerance +} diff --git a/agent/operator_endpoint_test.go b/agent/operator_endpoint_test.go index b435410d7..0a398087c 100644 --- a/agent/operator_endpoint_test.go +++ b/agent/operator_endpoint_test.go @@ -7,11 +7,13 @@ import ( "net/http/httptest" "strings" "testing" + "time" "github.com/hashicorp/consul/testrpc" + "github.com/hashicorp/raft" + autopilot "github.com/hashicorp/raft-autopilot" "github.com/stretchr/testify/require" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/sdk/testutil/retry" @@ -403,7 +405,7 @@ func TestOperator_AutopilotSetConfiguration(t *testing.T) { Datacenter: "dc1", } - var reply autopilot.Config + var reply structs.AutopilotConfig if err := a.RPC("Operator.AutopilotGetConfiguration", &args, &reply); err != nil { t.Fatalf("err: %v", err) } @@ -432,7 +434,7 @@ func TestOperator_AutopilotCASConfiguration(t *testing.T) { Datacenter: "dc1", } - var reply autopilot.Config + var reply structs.AutopilotConfig if err := a.RPC("Operator.AutopilotGetConfiguration", &args, &reply); err != nil { t.Fatalf("err: %v", err) } @@ -544,3 +546,179 @@ func TestOperator_ServerHealth_Unhealthy(t *testing.T) { } }) } + +func TestOperator_AutopilotState(t *testing.T) { + a := NewTestAgent(t, "") + defer a.Shutdown() + + req, err := http.NewRequest("GET", "/v1/operator/autopilot/state", nil) + require.NoError(t, err) + retry.Run(t, func(r *retry.R) { + resp := httptest.NewRecorder() + obj, err := a.srv.OperatorAutopilotState(resp, req) + require.NoError(r, err) + require.Equal(r, 200, resp.Code) + state, ok := obj.(*api.AutopilotState) + require.True(r, ok) + + srv, ok := state.Servers[string(a.config.NodeID)] + require.True(r, ok) + require.True(r, srv.Healthy) + require.Equal(r, a.config.NodeName, srv.Name) + + }) +} + +func TestAutopilotStateToAPIConversion(t *testing.T) { + var leaderID raft.ServerID = "79324811-9588-4311-b208-f272e38aaabf" + var follower1ID raft.ServerID = "ef8aee9a-f9d6-4ec4-b383-aac956bdb80f" + var follower2ID raft.ServerID = "ae84aefb-a303-4734-8739-5c102d4ee2d9" + input := autopilot.State{ + Healthy: true, + FailureTolerance: 1, + Leader: leaderID, + Voters: []raft.ServerID{ + leaderID, + follower1ID, + follower2ID, + }, + Servers: map[raft.ServerID]*autopilot.ServerState{ + leaderID: { + Server: autopilot.Server{ + ID: leaderID, + Name: "node1", + Address: "198.18.0.1:8300", + NodeStatus: autopilot.NodeAlive, + Version: "1.9.0", + Meta: map[string]string{ + "foo": "bar", + }, + NodeType: autopilot.NodeVoter, + }, + State: autopilot.RaftLeader, + Stats: autopilot.ServerStats{ + LastContact: 0, + LastTerm: 3, + LastIndex: 42, + }, + Health: autopilot.ServerHealth{ + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 51, 0, 0, time.UTC), + }, + }, + follower1ID: { + Server: autopilot.Server{ + ID: follower1ID, + Name: "node2", + Address: "198.18.0.2:8300", + NodeStatus: autopilot.NodeAlive, + Version: "1.9.0", + Meta: map[string]string{ + "bar": "baz", + }, + NodeType: autopilot.NodeVoter, + }, + State: autopilot.RaftVoter, + Stats: autopilot.ServerStats{ + LastContact: time.Millisecond, + LastTerm: 3, + LastIndex: 41, + }, + Health: autopilot.ServerHealth{ + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 52, 0, 0, time.UTC), + }, + }, + follower2ID: { + Server: autopilot.Server{ + ID: follower2ID, + Name: "node3", + Address: "198.18.0.3:8300", + NodeStatus: autopilot.NodeAlive, + Version: "1.9.0", + Meta: map[string]string{ + "baz": "foo", + }, + NodeType: autopilot.NodeVoter, + }, + State: autopilot.RaftVoter, + Stats: autopilot.ServerStats{ + LastContact: 2 * time.Millisecond, + LastTerm: 3, + LastIndex: 39, + }, + Health: autopilot.ServerHealth{ + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 53, 0, 0, time.UTC), + }, + }, + }, + } + + expected := api.AutopilotState{ + Healthy: true, + FailureTolerance: 1, + OptimisticFailureTolerance: 1, + Leader: string(leaderID), + Voters: []string{ + string(leaderID), + string(follower1ID), + string(follower2ID), + }, + Servers: map[string]api.AutopilotServer{ + string(leaderID): { + ID: string(leaderID), + Name: "node1", + Address: "198.18.0.1:8300", + NodeStatus: "alive", + Version: "1.9.0", + Meta: map[string]string{ + "foo": "bar", + }, + NodeType: api.AutopilotTypeVoter, + Status: api.AutopilotServerLeader, + LastContact: api.NewReadableDuration(0), + LastTerm: 3, + LastIndex: 42, + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 51, 0, 0, time.UTC), + }, + string(follower1ID): { + ID: string(follower1ID), + Name: "node2", + Address: "198.18.0.2:8300", + NodeStatus: "alive", + Version: "1.9.0", + Meta: map[string]string{ + "bar": "baz", + }, + NodeType: api.AutopilotTypeVoter, + Status: api.AutopilotServerVoter, + LastContact: api.NewReadableDuration(time.Millisecond), + LastTerm: 3, + LastIndex: 41, + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 52, 0, 0, time.UTC), + }, + string(follower2ID): { + ID: string(follower2ID), + Name: "node3", + Address: "198.18.0.3:8300", + NodeStatus: "alive", + Version: "1.9.0", + Meta: map[string]string{ + "baz": "foo", + }, + NodeType: api.AutopilotTypeVoter, + Status: api.AutopilotServerVoter, + LastContact: api.NewReadableDuration(2 * time.Millisecond), + LastTerm: 3, + LastIndex: 39, + Healthy: true, + StableSince: time.Date(2020, 11, 6, 14, 53, 0, 0, time.UTC), + }, + }, + } + + require.Equal(t, &expected, autopilotToAPIState(&input)) +} diff --git a/agent/pool/pool.go b/agent/pool/pool.go index d081dfe17..315e59b94 100644 --- a/agent/pool/pool.go +++ b/agent/pool/pool.go @@ -519,7 +519,7 @@ START: // Try to get a conn first conn, err := p.acquire(dc, nodeName, addr) if err != nil { - return nil, nil, fmt.Errorf("failed to get conn: %v", err) + return nil, nil, fmt.Errorf("failed to get conn: %w", err) } // Get a client @@ -533,7 +533,7 @@ START: retries++ goto START } - return nil, nil, fmt.Errorf("failed to start stream: %v", err) + return nil, nil, fmt.Errorf("failed to start stream: %w", err) } return conn, client, nil } @@ -575,14 +575,14 @@ func (p *ConnPool) rpcInsecure(dc string, addr net.Addr, method string, args int var codec rpc.ClientCodec conn, _, err := p.dial(dc, addr, 0, RPCTLSInsecure) if err != nil { - return fmt.Errorf("rpcinsecure error establishing connection: %v", err) + return fmt.Errorf("rpcinsecure error establishing connection: %w", err) } codec = msgpackrpc.NewCodecFromHandle(true, true, conn, structs.MsgpackHandle) // Make the RPC call err = msgpackrpc.CallWithCodec(codec, method, args, reply) if err != nil { - return fmt.Errorf("rpcinsecure error making call: %v", err) + return fmt.Errorf("rpcinsecure error making call: %w", err) } return nil @@ -594,7 +594,7 @@ func (p *ConnPool) rpc(dc string, nodeName string, addr net.Addr, method string, // Get a usable client conn, sc, err := p.getClient(dc, nodeName, addr) if err != nil { - return fmt.Errorf("rpc error getting client: %v", err) + return fmt.Errorf("rpc error getting client: %w", err) } // Make the RPC call @@ -611,7 +611,7 @@ func (p *ConnPool) rpc(dc string, nodeName string, addr net.Addr, method string, } p.releaseConn(conn) - return fmt.Errorf("rpc error making call: %v", err) + return fmt.Errorf("rpc error making call: %w", err) } // Done with the connection diff --git a/agent/router/manager.go b/agent/router/manager.go index 4aaab9759..8d2e9658e 100644 --- a/agent/router/manager.go +++ b/agent/router/manager.go @@ -12,44 +12,10 @@ import ( "sync/atomic" "time" - "github.com/hashicorp/consul/agent/metadata" - "github.com/hashicorp/consul/lib" - "github.com/hashicorp/consul/logging" "github.com/hashicorp/go-hclog" -) -const ( - // clientRPCJitterFraction determines the amount of jitter added to - // clientRPCMinReuseDuration before a connection is expired and a new - // connection is established in order to rebalance load across consul - // servers. The cluster-wide number of connections per second from - // rebalancing is applied after this jitter to ensure the CPU impact - // is always finite. See newRebalanceConnsPerSecPerServer's comment - // for additional commentary. - // - // For example, in a 10K consul cluster with 5x servers, this default - // averages out to ~13 new connections from rebalancing per server - // per second (each connection is reused for 120s to 180s). - clientRPCJitterFraction = 2 - - // clientRPCMinReuseDuration controls the minimum amount of time RPC - // queries are sent over an established connection to a single server - clientRPCMinReuseDuration = 120 * time.Second - - // Limit the number of new connections a server receives per second - // for connection rebalancing. This limit caps the load caused by - // continual rebalancing efforts when a cluster is in equilibrium. A - // lower value comes at the cost of increased recovery time after a - // partition. This parameter begins to take effect when there are - // more than ~48K clients querying 5x servers or at lower server - // values when there is a partition. - // - // For example, in a 100K consul cluster with 5x servers, it will - // take ~5min for all servers to rebalance their connections. If - // 99,995 agents are in the minority talking to only one server, it - // will take ~26min for all servers to rebalance. A 10K cluster in - // the same scenario will take ~2.6min to rebalance. - newRebalanceConnsPerSecPerServer = 64 + "github.com/hashicorp/consul/agent/metadata" + "github.com/hashicorp/consul/logging" ) // ManagerSerfCluster is an interface wrapper around Serf in order to make this @@ -278,7 +244,7 @@ func New(logger hclog.Logger, shutdownCh chan struct{}, clusterInfo ManagerSerfC m.logger = logger.Named(logging.Manager) m.clusterInfo = clusterInfo // can't pass *consul.Client: import cycle m.connPoolPinger = connPoolPinger // can't pass *consul.ConnPool: import cycle - m.rebalanceTimer = time.NewTimer(clientRPCMinReuseDuration) + m.rebalanceTimer = time.NewTimer(delayer.MinDelay) m.shutdownCh = shutdownCh m.rebalancer = rb m.serverName = serverName @@ -497,44 +463,28 @@ func (m *Manager) RemoveServer(s *metadata.Server) { } } -// refreshServerRebalanceTimer is only called once m.rebalanceTimer expires. -func (m *Manager) refreshServerRebalanceTimer() time.Duration { - l := m.getServerList() - numServers := len(l.servers) - // Limit this connection's life based on the size (and health) of the - // cluster. Never rebalance a connection more frequently than - // connReuseLowWatermarkDuration, and make sure we never exceed - // clusterWideRebalanceConnsPerSec operations/s across numLANMembers. - clusterWideRebalanceConnsPerSec := float64(numServers * newRebalanceConnsPerSecPerServer) - connReuseLowWatermarkDuration := clientRPCMinReuseDuration + lib.RandomStagger(clientRPCMinReuseDuration/clientRPCJitterFraction) - numLANMembers := m.clusterInfo.NumNodes() - connRebalanceTimeout := lib.RateScaledInterval(clusterWideRebalanceConnsPerSec, connReuseLowWatermarkDuration, numLANMembers) - - m.rebalanceTimer.Reset(connRebalanceTimeout) - return connRebalanceTimeout -} - // ResetRebalanceTimer resets the rebalance timer. This method exists for // testing and should not be used directly. func (m *Manager) ResetRebalanceTimer() { m.listLock.Lock() defer m.listLock.Unlock() - m.rebalanceTimer.Reset(clientRPCMinReuseDuration) + m.rebalanceTimer.Reset(delayer.MinDelay) } -// Start is used to start and manage the task of automatically shuffling and -// rebalancing the list of Consul servers. This maintenance only happens -// periodically based on the expiration of the timer. Failed servers are -// automatically cycled to the end of the list. New servers are appended to -// the list. The order of the server list must be shuffled periodically to -// distribute load across all known and available Consul servers. -func (m *Manager) Start() { +// Run periodically shuffles the list of servers to evenly distribute load. +// Run exits when shutdownCh is closed. +// +// When a server fails it is moved to the end of the list, and new servers are +// appended to the end of the list. Run ensures that load is distributed evenly +// to all servers by randomly shuffling the list. +func (m *Manager) Run() { for { select { case <-m.rebalanceTimer.C: m.rebalancer() m.RebalanceServers() - m.refreshServerRebalanceTimer() + delay := delayer.Delay(len(m.getServerList().servers), m.clusterInfo.NumNodes()) + m.rebalanceTimer.Reset(delay) case <-m.shutdownCh: m.logger.Info("shutting down") @@ -542,3 +492,59 @@ func (m *Manager) Start() { } } } + +// delayer is used to calculate the time to wait between calls to rebalance the +// servers. Rebalancing is necessary to ensure that load is balanced evenly +// across all the servers. +// +// The values used by delayer must balance perfectly distributed server load +// against the overhead of a client reconnecting to a server. Rebalancing on +// every request would cause a lot of unnecessary load as clients reconnect, +// where as never rebalancing would lead to situations where one or two servers +// handle a lot more requests than others. +// +// These values result in a minimum delay of 120-180s. Once the number of +// nodes/server exceeds 11520, the value will be determined by multiplying the +// node/server ratio by 15.625ms. +var delayer = rebalanceDelayer{ + MinDelay: 2 * time.Minute, + MaxJitter: time.Minute, + // Once the number of nodes/server exceeds 11520 this value is used to + // increase the delay between rebalances to set a limit on the number of + // reconnections per server in a given time frame. + // + // A higher value comes at the cost of increased recovery time after a + // partition. + // + // For example, in a 100,000 node consul cluster with 5 servers, it will + // take ~5min for all clients to rebalance their connections. If + // 99,995 agents are in the minority talking to only one server, it + // will take ~26min for all clients to rebalance. A 10K cluster in + // the same scenario will take ~2.6min to rebalance. + DelayPerNode: 15*time.Millisecond + 625*time.Microsecond, +} + +type rebalanceDelayer struct { + // MinDelay that may be returned by Delay + MinDelay time.Duration + // MaxJitter to add to MinDelay to ensure there is some randomness in the + // delay. + MaxJitter time.Duration + // DelayPerNode is the duration to add to each node when calculating delay. + // The value is divided by the number of servers to arrive at the final + // delay value. + DelayPerNode time.Duration +} + +func (d *rebalanceDelayer) Delay(servers int, nodes int) time.Duration { + min := d.MinDelay + time.Duration(rand.Int63n(int64(d.MaxJitter))) + if servers == 0 { + return min + } + + delay := time.Duration(float64(nodes) * float64(d.DelayPerNode) / float64(servers)) + if delay < min { + return min + } + return delay +} diff --git a/agent/router/manager_internal_test.go b/agent/router/manager_internal_test.go index 05807e207..92714a015 100644 --- a/agent/router/manager_internal_test.go +++ b/agent/router/manager_internal_test.go @@ -8,9 +8,11 @@ import ( "testing" "time" - "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/go-hclog" + "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + + "github.com/hashicorp/consul/agent/metadata" ) var ( @@ -262,55 +264,75 @@ func test_reconcileServerList(maxServers int) (bool, error) { return true, nil } -// func (l *serverList) refreshServerRebalanceTimer() { -func TestManagerInternal_refreshServerRebalanceTimer(t *testing.T) { - type clusterSizes struct { - numNodes int - numServers int - minRebalance time.Duration - } - clusters := []clusterSizes{ - {0, 3, 2 * time.Minute}, - {1, 0, 2 * time.Minute}, // partitioned cluster - {1, 3, 2 * time.Minute}, - {2, 3, 2 * time.Minute}, - {100, 0, 2 * time.Minute}, // partitioned - {100, 1, 2 * time.Minute}, // partitioned - {100, 3, 2 * time.Minute}, - {1024, 1, 2 * time.Minute}, // partitioned - {1024, 3, 2 * time.Minute}, // partitioned - {1024, 5, 2 * time.Minute}, - {16384, 1, 4 * time.Minute}, // partitioned - {16384, 2, 2 * time.Minute}, // partitioned - {16384, 3, 2 * time.Minute}, // partitioned - {16384, 5, 2 * time.Minute}, - {65535, 0, 2 * time.Minute}, // partitioned - {65535, 1, 8 * time.Minute}, // partitioned - {65535, 2, 3 * time.Minute}, // partitioned - {65535, 3, 5 * time.Minute}, // partitioned - {65535, 5, 3 * time.Minute}, // partitioned - {65535, 7, 2 * time.Minute}, - {1000000, 1, 4 * time.Hour}, // partitioned - {1000000, 2, 2 * time.Hour}, // partitioned - {1000000, 3, 80 * time.Minute}, // partitioned - {1000000, 5, 50 * time.Minute}, // partitioned - {1000000, 11, 20 * time.Minute}, // partitioned - {1000000, 19, 10 * time.Minute}, +func TestRebalanceDelayer(t *testing.T) { + type testCase struct { + servers int + nodes int + expected time.Duration } - logger := GetBufferedLogger() - shutdownCh := make(chan struct{}) + testCases := []testCase{ + {servers: 0, nodes: 1}, + {servers: 0, nodes: 100}, + {servers: 0, nodes: 65535}, + {servers: 0, nodes: 1000000}, - for _, s := range clusters { - m := New(logger, shutdownCh, &fauxSerf{numNodes: s.numNodes}, &fauxConnPool{}, "", noopRebalancer) - for i := 0; i < s.numServers; i++ { - nodeName := fmt.Sprintf("s%02d", i) - m.AddServer(&metadata.Server{Name: nodeName}) + {servers: 1, nodes: 100}, + {servers: 1, nodes: 1024}, + {servers: 1, nodes: 8192}, + {servers: 1, nodes: 11520}, + {servers: 1, nodes: 11521, expected: 3*time.Minute + 15625*time.Microsecond}, + {servers: 1, nodes: 16384, expected: 4*time.Minute + 16*time.Second}, + {servers: 1, nodes: 65535, expected: 17*time.Minute + 3984375000}, + {servers: 1, nodes: 1000000, expected: 4*time.Hour + 20*time.Minute + 25*time.Second}, + + {servers: 2, nodes: 100}, + {servers: 2, nodes: 16384}, + {servers: 2, nodes: 23040}, + {servers: 2, nodes: 23041, expected: 3*time.Minute + 7812500}, + {servers: 2, nodes: 65535, expected: 8*time.Minute + 31992187500}, + {servers: 2, nodes: 1000000, expected: 2*time.Hour + 10*time.Minute + 12500*time.Millisecond}, + + {servers: 3, nodes: 0}, + {servers: 3, nodes: 100}, + {servers: 3, nodes: 1024}, + {servers: 3, nodes: 16384}, + {servers: 3, nodes: 34560}, + {servers: 3, nodes: 34561, expected: 3*time.Minute + 5208333}, + {servers: 3, nodes: 65535, expected: 5*time.Minute + 41328125000}, + {servers: 3, nodes: 1000000, expected: 86*time.Minute + 48333333333}, + + {servers: 5, nodes: 0}, + {servers: 5, nodes: 1024}, + {servers: 5, nodes: 16384}, + {servers: 5, nodes: 32768}, + {servers: 5, nodes: 57600}, + {servers: 5, nodes: 65535, expected: 3*time.Minute + 24796875000}, + {servers: 5, nodes: 1000000, expected: 52*time.Minute + 5*time.Second}, + + {servers: 7, nodes: 65535}, + {servers: 7, nodes: 80500}, + {servers: 7, nodes: 131070, expected: 4*time.Minute + 52566964285}, + + {servers: 11, nodes: 1000000, expected: 23*time.Minute + 40454545454}, + {servers: 19, nodes: 1000000, expected: 13*time.Minute + 42368421052}, + } + + for _, tc := range testCases { + delay := delayer.Delay(tc.servers, tc.nodes) + + if tc.expected != 0 { + assert.Equal(t, tc.expected, delay, "nodes=%d, servers=%d", tc.nodes, tc.servers) + continue } - d := m.refreshServerRebalanceTimer() - if d < s.minRebalance { - t.Errorf("duration too short for cluster of size %d and %d servers (%s < %s)", s.numNodes, s.numServers, d, s.minRebalance) + min := 2 * time.Minute + max := 3 * time.Minute + if delay < min { + t.Errorf("nodes=%d, servers=%d, expected >%v, actual %v", tc.nodes, tc.servers, min, delay) + } + if delay > max { + t.Errorf("nodes=%d, servers=%d, expected <%v, actual %v", tc.nodes, tc.servers, max, delay) } } } diff --git a/agent/router/router.go b/agent/router/router.go index 8244745c3..9aaae8739 100644 --- a/agent/router/router.go +++ b/agent/router/router.go @@ -5,14 +5,15 @@ import ( "sort" "sync" + "github.com/hashicorp/go-hclog" + "github.com/hashicorp/serf/coordinate" + "github.com/hashicorp/serf/serf" + "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/types" - "github.com/hashicorp/go-hclog" - "github.com/hashicorp/serf/coordinate" - "github.com/hashicorp/serf/serf" ) // Router keeps track of a set of network areas and their associated Serf @@ -269,7 +270,7 @@ func (r *Router) maybeInitializeManager(area *areaInfo, dc string) *Manager { managers := r.managers[dc] r.managers[dc] = append(managers, manager) - go manager.Start() + go manager.Run() return manager } diff --git a/agent/rpc/subscribe/auth.go b/agent/rpc/subscribe/auth.go deleted file mode 100644 index b41b1fdc4..000000000 --- a/agent/rpc/subscribe/auth.go +++ /dev/null @@ -1,22 +0,0 @@ -package subscribe - -import ( - "github.com/hashicorp/consul/acl" - "github.com/hashicorp/consul/agent/consul/state" - "github.com/hashicorp/consul/agent/consul/stream" -) - -// EnforceACL takes an acl.Authorizer and returns the decision for whether the -// event is allowed to be sent to this client or not. -func enforceACL(authz acl.Authorizer, e stream.Event) acl.EnforcementDecision { - switch { - case e.IsEndOfSnapshot(), e.IsNewSnapshotToFollow(): - return acl.Allow - } - - switch p := e.Payload.(type) { - case state.EventPayloadCheckServiceNode: - return p.Value.CanRead(authz) - } - return acl.Deny -} diff --git a/agent/rpc/subscribe/logger.go b/agent/rpc/subscribe/logger.go index 8615fbd90..99394f546 100644 --- a/agent/rpc/subscribe/logger.go +++ b/agent/rpc/subscribe/logger.go @@ -37,11 +37,12 @@ func (s *streamID) String() string { return s.id } -func (h *Server) newLoggerForRequest(req *pbsubscribe.SubscribeRequest) Logger { - return h.Logger.With( +func newLoggerForRequest(l Logger, req *pbsubscribe.SubscribeRequest) Logger { + return l.With( "topic", req.Topic.String(), "dc", req.Datacenter, "key", req.Key, + "namespace", req.Namespace, "index", req.Index, "stream_id", &streamID{}) } @@ -57,12 +58,20 @@ func (l *eventLogger) Trace(e stream.Event) { case e.IsEndOfSnapshot(): l.snapshotDone = true l.logger.Trace("snapshot complete", "index", e.Index, "sent", l.count) + return case e.IsNewSnapshotToFollow(): l.logger.Trace("starting new snapshot", "sent", l.count) return - case l.snapshotDone: - l.logger.Trace("sending events", "index", e.Index, "sent", l.count, "batch_size", e.Len()) } - l.count += uint64(e.Len()) + size := 1 + if l, ok := e.Payload.(length); ok { + size = l.Len() + } + l.logger.Trace("sending events", "index", e.Index, "sent", l.count, "batch_size", size) + l.count += uint64(size) +} + +type length interface { + Len() int } diff --git a/agent/rpc/subscribe/subscribe.go b/agent/rpc/subscribe/subscribe.go index 934819e2e..0e98893f9 100644 --- a/agent/rpc/subscribe/subscribe.go +++ b/agent/rpc/subscribe/subscribe.go @@ -12,6 +12,7 @@ import ( "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/consul/stream" + "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/proto/pbservice" "github.com/hashicorp/consul/proto/pbsubscribe" ) @@ -35,15 +36,13 @@ type Logger interface { var _ pbsubscribe.StateChangeSubscriptionServer = (*Server)(nil) type Backend interface { - // TODO(streaming): Use ResolveTokenAndDefaultMeta instead once SubscribeRequest - // has an EnterpriseMeta. - ResolveToken(token string) (acl.Authorizer, error) + ResolveTokenAndDefaultMeta(token string, entMeta *structs.EnterpriseMeta, authzContext *acl.AuthorizerContext) (acl.Authorizer, error) Forward(dc string, f func(*grpc.ClientConn) error) (handled bool, err error) Subscribe(req *stream.SubscribeRequest) (*stream.Subscription, error) } func (h *Server) Subscribe(req *pbsubscribe.SubscribeRequest, serverStream pbsubscribe.StateChangeSubscription_SubscribeServer) error { - logger := h.newLoggerForRequest(req) + logger := newLoggerForRequest(h.Logger, req) handled, err := h.Backend.Forward(req.Datacenter, forwardToDC(req, serverStream, logger)) if handled || err != nil { return err @@ -52,13 +51,13 @@ func (h *Server) Subscribe(req *pbsubscribe.SubscribeRequest, serverStream pbsub logger.Trace("new subscription") defer logger.Trace("subscription closed") - // Resolve the token and create the ACL filter. - authz, err := h.Backend.ResolveToken(req.Token) + entMeta := structs.EnterpriseMetaInitializer(req.Namespace) + authz, err := h.Backend.ResolveTokenAndDefaultMeta(req.Token, &entMeta, nil) if err != nil { return err } - sub, err := h.Backend.Subscribe(toStreamSubscribeRequest(req)) + sub, err := h.Backend.Subscribe(toStreamSubscribeRequest(req, entMeta)) if err != nil { return err } @@ -69,7 +68,7 @@ func (h *Server) Subscribe(req *pbsubscribe.SubscribeRequest, serverStream pbsub for { event, err := sub.Next(ctx) switch { - case errors.Is(err, stream.ErrSubscriptionClosed): + case errors.Is(err, stream.ErrSubForceClosed): logger.Trace("subscription reset by server") return status.Error(codes.Aborted, err.Error()) case err != nil: @@ -83,20 +82,20 @@ func (h *Server) Subscribe(req *pbsubscribe.SubscribeRequest, serverStream pbsub } elog.Trace(event) - e := newEventFromStreamEvent(req.Topic, event) + e := newEventFromStreamEvent(event) if err := serverStream.Send(e); err != nil { return err } } } -// TODO: can be replaced by mog conversion -func toStreamSubscribeRequest(req *pbsubscribe.SubscribeRequest) *stream.SubscribeRequest { +func toStreamSubscribeRequest(req *pbsubscribe.SubscribeRequest, entMeta structs.EnterpriseMeta) *stream.SubscribeRequest { return &stream.SubscribeRequest{ - Topic: req.Topic, - Key: req.Key, - Token: req.Token, - Index: req.Index, + Topic: req.Topic, + Key: req.Key, + Token: req.Token, + Index: req.Index, + Namespace: entMeta.GetNamespace(), } } @@ -133,18 +132,12 @@ func filterByAuth(authz acl.Authorizer, event stream.Event) (stream.Event, bool) if authz == nil { return event, true } - fn := func(e stream.Event) bool { - return enforceACL(authz, e) == acl.Allow - } - return event.Filter(fn) + + return event, event.Payload.HasReadPermission(authz) } -func newEventFromStreamEvent(topic pbsubscribe.Topic, event stream.Event) *pbsubscribe.Event { - e := &pbsubscribe.Event{ - Topic: topic, - Key: event.Key, - Index: event.Index, - } +func newEventFromStreamEvent(event stream.Event) *pbsubscribe.Event { + e := &pbsubscribe.Event{Index: event.Index} switch { case event.IsEndOfSnapshot(): e.Payload = &pbsubscribe.Event_EndOfSnapshot{EndOfSnapshot: true} @@ -157,12 +150,12 @@ func newEventFromStreamEvent(topic pbsubscribe.Topic, event stream.Event) *pbsub return e } -func setPayload(e *pbsubscribe.Event, payload interface{}) { +func setPayload(e *pbsubscribe.Event, payload stream.Payload) { switch p := payload.(type) { - case []stream.Event: + case *stream.PayloadEvents: e.Payload = &pbsubscribe.Event_EventBatch{ EventBatch: &pbsubscribe.EventBatch{ - Events: batchEventsFromEventSlice(p), + Events: batchEventsFromEventSlice(p.Items), }, } case state.EventPayloadCheckServiceNode: @@ -182,7 +175,7 @@ func batchEventsFromEventSlice(events []stream.Event) []*pbsubscribe.Event { result := make([]*pbsubscribe.Event, len(events)) for i := range events { event := events[i] - result[i] = &pbsubscribe.Event{Key: event.Key, Index: event.Index} + result[i] = &pbsubscribe.Event{Index: event.Index} setPayload(result[i], event.Payload) } return result diff --git a/agent/rpc/subscribe/subscribe_test.go b/agent/rpc/subscribe/subscribe_test.go index 60d73b336..cf37e75bb 100644 --- a/agent/rpc/subscribe/subscribe_test.go +++ b/agent/rpc/subscribe/subscribe_test.go @@ -93,8 +93,9 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { runStep(t, "setup a client and subscribe to a topic", func(t *testing.T) { streamClient := pbsubscribe.NewStateChangeSubscriptionClient(conn) streamHandle, err := streamClient.Subscribe(ctx, &pbsubscribe.SubscribeRequest{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", + Topic: pbsubscribe.Topic_ServiceHealth, + Key: "redis", + Namespace: pbcommon.DefaultEnterpriseMeta.Namespace, }) require.NoError(t, err) @@ -107,8 +108,6 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { runStep(t, "receive the initial snapshot of events", func(t *testing.T) { expected := []*pbsubscribe.Event{ { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.For("reg3"), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -132,15 +131,13 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { Expose: pbservice.ExposeConfig{}, }, RaftIndex: raftIndex(ids, "reg2", "reg2"), - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, }, }, }, }, { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.For("reg3"), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -164,15 +161,13 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { Expose: pbservice.ExposeConfig{}, }, RaftIndex: raftIndex(ids, "reg3", "reg3"), - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, }, }, }, }, { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.For("reg3"), Payload: &pbsubscribe.Event_EndOfSnapshot{EndOfSnapshot: true}, }, @@ -192,8 +187,6 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { event := getEvent(t, chEvents) expectedEvent := &pbsubscribe.Event{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.Last(), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -217,7 +210,7 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { Expose: pbservice.ExposeConfig{}, }, RaftIndex: raftIndex(ids, "reg3", "reg3"), - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, Checks: []*pbservice.HealthCheck{ { @@ -228,7 +221,7 @@ func TestServer_Subscribe_IntegrationWithBackend(t *testing.T) { ServiceID: "redis1", ServiceName: "redis", RaftIndex: raftIndex(ids, "update", "update"), - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, }, }, @@ -269,7 +262,7 @@ func getEvent(t *testing.T, ch chan eventOrError) *pbsubscribe.Event { case item := <-ch: require.NoError(t, item.err) return item.event - case <-time.After(10 * time.Second): + case <-time.After(2 * time.Second): t.Fatalf("timeout waiting on event from server") } return nil @@ -288,7 +281,11 @@ type testBackend struct { forwardConn *gogrpc.ClientConn } -func (b testBackend) ResolveToken(token string) (acl.Authorizer, error) { +func (b testBackend) ResolveTokenAndDefaultMeta( + token string, + _ *structs.EnterpriseMeta, + _ *acl.AuthorizerContext, +) (acl.Authorizer, error) { return b.authorizer(token), nil } @@ -308,10 +305,7 @@ func newTestBackend() (*testBackend, error) { if err != nil { return nil, err } - store, err := state.NewStateStore(gc) - if err != nil { - return nil, err - } + store := state.NewStateStoreWithEventPublisher(gc) allowAll := func(_ string) acl.Authorizer { return acl.AllowAll() } @@ -451,6 +445,7 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { Topic: pbsubscribe.Topic_ServiceHealth, Key: "redis", Datacenter: "dc2", + Namespace: pbcommon.DefaultEnterpriseMeta.Namespace, }) require.NoError(t, err) go recvEvents(chEvents, streamHandle) @@ -463,8 +458,6 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { runStep(t, "receive the initial snapshot of events", func(t *testing.T) { expected := []*pbsubscribe.Event{ { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.Last(), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -487,7 +480,7 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { MeshGateway: pbservice.MeshGatewayConfig{}, Expose: pbservice.ExposeConfig{}, }, - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, RaftIndex: raftIndex(ids, "reg2", "reg2"), }, }, @@ -495,8 +488,6 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { }, }, { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.Last(), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -519,7 +510,7 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { MeshGateway: pbservice.MeshGatewayConfig{}, Expose: pbservice.ExposeConfig{}, }, - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, RaftIndex: raftIndex(ids, "reg3", "reg3"), }, }, @@ -527,8 +518,6 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { }, }, { - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.Last(), Payload: &pbsubscribe.Event_EndOfSnapshot{EndOfSnapshot: true}, }, @@ -548,8 +537,6 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { event := getEvent(t, chEvents) expectedEvent := &pbsubscribe.Event{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "redis", Index: ids.Last(), Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -573,7 +560,7 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { MeshGateway: pbservice.MeshGatewayConfig{}, Expose: pbservice.ExposeConfig{}, }, - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, Checks: []*pbservice.HealthCheck{ { @@ -584,7 +571,7 @@ func TestServer_Subscribe_IntegrationWithBackend_ForwardToDC(t *testing.T) { ServiceID: "redis1", ServiceName: "redis", RaftIndex: raftIndex(ids, "update", "update"), - EnterpriseMeta: pbcommon.EnterpriseMeta{}, + EnterpriseMeta: pbcommon.DefaultEnterpriseMeta, }, }, }, @@ -614,10 +601,8 @@ node "node1" { policy = "write" } ` - authorizer, err := acl.NewAuthorizerFromRules( - "1", 0, rules, acl.SyntaxCurrent, - &acl.Config{WildcardName: structs.WildcardSpecifier}, - nil) + cfg := &acl.Config{WildcardName: structs.WildcardSpecifier} + authorizer, err := acl.NewAuthorizerFromRules("1", 0, rules, acl.SyntaxCurrent, cfg, nil) require.NoError(t, err) authorizer = acl.NewChainedAuthorizer([]acl.Authorizer{authorizer, acl.DenyAll()}) require.Equal(t, acl.Deny, authorizer.NodeRead("denied", nil)) @@ -695,9 +680,10 @@ node "node1" { runStep(t, "setup a client, subscribe to a topic, and receive a snapshot", func(t *testing.T) { streamHandle, err := streamClient.Subscribe(ctx, &pbsubscribe.SubscribeRequest{ - Topic: pbsubscribe.Topic_ServiceHealth, - Key: "foo", - Token: token, + Topic: pbsubscribe.Topic_ServiceHealth, + Key: "foo", + Token: token, + Namespace: pbcommon.DefaultEnterpriseMeta.Namespace, }) require.NoError(t, err) @@ -905,11 +891,9 @@ func TestNewEventFromSteamEvent(t *testing.T) { expected pbsubscribe.Event } - testTopic := pbsubscribe.Topic_ServiceHealthConnect fn := func(t *testing.T, tc testCase) { expected := tc.expected - expected.Topic = testTopic - actual := newEventFromStreamEvent(testTopic, tc.event) + actual := newEventFromStreamEvent(tc.event) assertDeepEqual(t, &expected, actual, cmpopts.EquateEmpty()) } @@ -932,11 +916,9 @@ func TestNewEventFromSteamEvent(t *testing.T) { { name: "event batch", event: stream.Event{ - Key: "web1", Index: 2002, - Payload: []stream.Event{ - { - Key: "web1", + Payload: newPayloadEvents( + stream.Event{ Index: 2002, Payload: state.EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Register, @@ -946,8 +928,7 @@ func TestNewEventFromSteamEvent(t *testing.T) { }, }, }, - { - Key: "web1", + stream.Event{ Index: 2002, Payload: state.EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Deregister, @@ -956,17 +937,14 @@ func TestNewEventFromSteamEvent(t *testing.T) { Service: &structs.NodeService{Service: "web1"}, }, }, - }, - }, + }), }, expected: pbsubscribe.Event{ - Key: "web1", Index: 2002, Payload: &pbsubscribe.Event_EventBatch{ EventBatch: &pbsubscribe.EventBatch{ Events: []*pbsubscribe.Event{ { - Key: "web1", Index: 2002, Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -979,7 +957,6 @@ func TestNewEventFromSteamEvent(t *testing.T) { }, }, { - Key: "web1", Index: 2002, Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -999,7 +976,6 @@ func TestNewEventFromSteamEvent(t *testing.T) { { name: "event payload CheckServiceNode", event: stream.Event{ - Key: "web1", Index: 2002, Payload: state.EventPayloadCheckServiceNode{ Op: pbsubscribe.CatalogOp_Register, @@ -1010,7 +986,6 @@ func TestNewEventFromSteamEvent(t *testing.T) { }, }, expected: pbsubscribe.Event{ - Key: "web1", Index: 2002, Payload: &pbsubscribe.Event_ServiceHealth{ ServiceHealth: &pbsubscribe.ServiceHealthUpdate{ @@ -1032,6 +1007,10 @@ func TestNewEventFromSteamEvent(t *testing.T) { } } +func newPayloadEvents(items ...stream.Event) *stream.PayloadEvents { + return &stream.PayloadEvents{Items: items} +} + // newEventFromSubscription is used to return framing events. EndOfSnapshot and // NewSnapshotToFollow are not exported, but we can get them from a subscription. func newEventFromSubscription(t *testing.T, index uint64) stream.Event { diff --git a/agent/rpcclient/health/health.go b/agent/rpcclient/health/health.go index 09fe452ab..0118a363c 100644 --- a/agent/rpcclient/health/health.go +++ b/agent/rpcclient/health/health.go @@ -8,9 +8,12 @@ import ( ) type Client struct { - NetRPC NetRPC - Cache CacheGetter + NetRPC NetRPC + Cache CacheGetter + // CacheName to use for service health. CacheName string + // CacheNameConnect is the name of the cache to use for connect service health. + CacheNameConnect string } type NetRPC interface { @@ -51,7 +54,12 @@ func (c *Client) getServiceNodes( return out, cache.ResultMeta{}, err } - raw, md, err := c.Cache.Get(ctx, c.CacheName, &req) + cacheName := c.CacheName + if req.Connect { + cacheName = c.CacheNameConnect + } + + raw, md, err := c.Cache.Get(ctx, cacheName, &req) if err != nil { return out, md, err } diff --git a/agent/setup.go b/agent/setup.go index 7c65777c9..9efc565c9 100644 --- a/agent/setup.go +++ b/agent/setup.go @@ -5,10 +5,18 @@ import ( "io" "net" "net/http" + "sync" "time" + "github.com/hashicorp/consul/agent/consul/fsm" + + "github.com/armon/go-metrics/prometheus" + "github.com/hashicorp/consul/agent/consul/usagemetrics" + "github.com/hashicorp/consul/agent/local" + "github.com/hashicorp/go-hclog" "google.golang.org/grpc/grpclog" + grpcresolver "google.golang.org/grpc/resolver" autoconf "github.com/hashicorp/consul/agent/auto-config" "github.com/hashicorp/consul/agent/cache" @@ -70,6 +78,10 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) return d, fmt.Errorf("failed to setup node ID: %w", err) } + gauges, counters, summaries := getPrometheusDefs(cfg.Telemetry) + cfg.Telemetry.PrometheusOpts.GaugeDefinitions = gauges + cfg.Telemetry.PrometheusOpts.CounterDefinitions = counters + cfg.Telemetry.PrometheusOpts.SummaryDefinitions = summaries d.MetricsHandler, err = lib.InitTelemetry(cfg.Telemetry) if err != nil { return d, fmt.Errorf("failed to initialize telemetry: %w", err) @@ -88,7 +100,7 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) d.ConnPool = newConnPool(cfg, d.Logger, d.TLSConfigurator) builder := resolver.NewServerResolverBuilder(resolver.Config{}) - resolver.RegisterWithGRPC(builder) + registerWithGRPC(builder) d.GRPCConnPool = grpc.NewClientConnPool(builder, grpc.TLSWrapper(d.TLSConfigurator.OutgoingRPCWrapper())) d.Router = router.NewRouter(d.Logger, cfg.Datacenter, fmt.Sprintf("%s.%s", cfg.NodeName, cfg.Datacenter), builder) @@ -120,7 +132,7 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) // function is for registering newer cache-types which no longer have a dependency // on Agent. func registerCacheTypes(bd BaseDeps) error { - if bd.RuntimeConfig.CacheUseStreamingBackend { + if bd.RuntimeConfig.UseStreamingBackend { conn, err := bd.GRPCConnPool.ClientConn(bd.RuntimeConfig.Datacenter) if err != nil { return err @@ -162,3 +174,132 @@ func newConnPool(config *config.RuntimeConfig, logger hclog.Logger, tls *tlsutil } return pool } + +var registerLock sync.Mutex + +// registerWithGRPC registers the grpc/resolver.Builder as a grpc/resolver. +// This function exists to synchronize registrations with a lock. +// grpc/resolver.Register expects all registration to happen at init and does +// not allow for concurrent registration. This function exists to support +// parallel testing. +func registerWithGRPC(b grpcresolver.Builder) { + registerLock.Lock() + defer registerLock.Unlock() + grpcresolver.Register(b) +} + +// getPrometheusDefs reaches into every slice of prometheus defs we've defined in each part of the agent, and appends +// all of our slices into one nice slice of definitions per metric type for the Consul agent to pass to go-metrics. +func getPrometheusDefs(cfg lib.TelemetryConfig) ([]prometheus.GaugeDefinition, []prometheus.CounterDefinition, []prometheus.SummaryDefinition) { + // Build slice of slices for all gauge definitions + var gauges = [][]prometheus.GaugeDefinition{ + cache.Gauges, + consul.AutopilotGauges, + consul.RPCGauges, + consul.SessionGauges, + grpc.StatsGauges, + usagemetrics.Gauges, + } + // Flatten definitions + // NOTE(kit): Do we actually want to create a set here so we can ensure definition names are unique? + var gaugeDefs []prometheus.GaugeDefinition + for _, g := range gauges { + // Set Consul to each definition's namespace + // TODO(kit): Prepending the service to each definition should be handled by go-metrics + var withService []prometheus.GaugeDefinition + for _, gauge := range g { + gauge.Name = append([]string{cfg.MetricsPrefix}, gauge.Name...) + withService = append(withService, gauge) + } + gaugeDefs = append(gaugeDefs, withService...) + } + + raftCounters := []prometheus.CounterDefinition{ + // TODO(kit): "raft..." metrics come from the raft lib and we should migrate these to a telemetry + // package within. In the mean time, we're going to define a few here because they're key to monitoring Consul. + { + Name: []string{"raft", "apply"}, + Help: "This counts the number of Raft transactions occurring over the interval.", + }, + { + Name: []string{"raft", "state", "candidate"}, + Help: "This increments whenever a Consul server starts an election.", + }, + { + Name: []string{"raft", "state", "leader"}, + Help: "This increments whenever a Consul server becomes a leader.", + }, + } + + var counters = [][]prometheus.CounterDefinition{ + CatalogCounters, + cache.Counters, + consul.ACLCounters, + consul.CatalogCounters, + consul.ClientCounters, + consul.RPCCounters, + grpc.StatsCounters, + local.StateCounters, + raftCounters, + } + // Flatten definitions + // NOTE(kit): Do we actually want to create a set here so we can ensure definition names are unique? + var counterDefs []prometheus.CounterDefinition + for _, c := range counters { + // TODO(kit): Prepending the service to each definition should be handled by go-metrics + var withService []prometheus.CounterDefinition + for _, counter := range c { + counter.Name = append([]string{cfg.MetricsPrefix}, counter.Name...) + withService = append(withService, counter) + } + counterDefs = append(counterDefs, withService...) + } + + raftSummaries := []prometheus.SummaryDefinition{ + // TODO(kit): "raft..." metrics come from the raft lib and we should migrate these to a telemetry + // package within. In the mean time, we're going to define a few here because they're key to monitoring Consul. + { + Name: []string{"raft", "commitTime"}, + Help: "This measures the time it takes to commit a new entry to the Raft log on the leader.", + }, + { + Name: []string{"raft", "leader", "lastContact"}, + Help: "Measures the time since the leader was last able to contact the follower nodes when checking its leader lease.", + }, + } + + var summaries = [][]prometheus.SummaryDefinition{ + HTTPSummaries, + consul.ACLSummaries, + consul.ACLEndpointSummaries, + consul.ACLEndpointLegacySummaries, + consul.CatalogSummaries, + consul.FederationStateSummaries, + consul.IntentionSummaries, + consul.KVSummaries, + consul.LeaderSummaries, + consul.PreparedQuerySummaries, + consul.RPCSummaries, + consul.SegmentOSSSummaries, + consul.SessionSummaries, + consul.SessionEndpointSummaries, + consul.TxnSummaries, + fsm.CommandsSummaries, + fsm.SnapshotSummaries, + raftSummaries, + } + // Flatten definitions + // NOTE(kit): Do we actually want to create a set here so we can ensure definition names are unique? + var summaryDefs []prometheus.SummaryDefinition + for _, s := range summaries { + // TODO(kit): Prepending the service to each definition should be handled by go-metrics + var withService []prometheus.SummaryDefinition + for _, summary := range s { + summary.Name = append([]string{cfg.MetricsPrefix}, summary.Name...) + withService = append(withService, summary) + } + summaryDefs = append(summaryDefs, withService...) + } + + return gaugeDefs, counterDefs, summaryDefs +} diff --git a/agent/consul/autopilot/structs.go b/agent/structs/autopilot.go similarity index 69% rename from agent/consul/autopilot/structs.go rename to agent/structs/autopilot.go index 4e83a1d38..abfb7ca0c 100644 --- a/agent/consul/autopilot/structs.go +++ b/agent/structs/autopilot.go @@ -1,13 +1,14 @@ -package autopilot +package structs import ( "time" + autopilot "github.com/hashicorp/raft-autopilot" "github.com/hashicorp/serf/serf" ) -// Config holds the Autopilot configuration for a cluster. -type Config struct { +// Autopilotconfig holds the Autopilot configuration for a cluster. +type AutopilotConfig struct { // CleanupDeadServers controls whether to remove dead servers when a new // server is added to the Raft peers. CleanupDeadServers bool @@ -47,8 +48,35 @@ type Config struct { ModifyIndex uint64 } +func (c *AutopilotConfig) ToAutopilotLibraryConfig() *autopilot.Config { + if c == nil { + return nil + } + return &autopilot.Config{ + CleanupDeadServers: c.CleanupDeadServers, + LastContactThreshold: c.LastContactThreshold, + MaxTrailingLogs: c.MaxTrailingLogs, + MinQuorum: c.MinQuorum, + ServerStabilizationTime: c.ServerStabilizationTime, + Ext: c.autopilotConfigExt(), + } +} + +// AutopilotHealthReply is a representation of the overall health of the cluster +type AutopilotHealthReply struct { + // Healthy is true if all the servers in the cluster are healthy. + Healthy bool + + // FailureTolerance is the number of healthy servers that could be lost without + // an outage occurring. + FailureTolerance int + + // Servers holds the health of each server. + Servers []AutopilotServerHealth +} + // ServerHealth is the health (from the leader's point of view) of a server. -type ServerHealth struct { +type AutopilotServerHealth struct { // ID is the raft ID of the server. ID string @@ -87,48 +115,8 @@ type ServerHealth struct { StableSince time.Time } -// IsHealthy determines whether this ServerHealth is considered healthy -// based on the given Autopilot config -func (h *ServerHealth) IsHealthy(lastTerm uint64, leaderLastIndex uint64, autopilotConf *Config) bool { - if h.SerfStatus != serf.StatusAlive { - return false - } - - if h.LastContact > autopilotConf.LastContactThreshold || h.LastContact < 0 { - return false - } - - if h.LastTerm != lastTerm { - return false - } - - if leaderLastIndex > autopilotConf.MaxTrailingLogs && h.LastIndex < leaderLastIndex-autopilotConf.MaxTrailingLogs { - return false - } - - return true -} - -// IsStable returns true if the ServerHealth shows a stable, passing state -// according to the given AutopilotConfig -func (h *ServerHealth) IsStable(now time.Time, conf *Config) bool { - if h == nil { - return false - } - - if !h.Healthy { - return false - } - - if now.Sub(h.StableSince) < conf.ServerStabilizationTime { - return false - } - - return true -} - -// ServerStats holds miscellaneous Raft metrics for a server -type ServerStats struct { +// RaftStats holds miscellaneous Raft metrics for a server. +type RaftStats struct { // LastContact is the time since this node's last contact with the leader. LastContact string @@ -139,24 +127,11 @@ type ServerStats struct { LastIndex uint64 } -// OperatorHealthReply is a representation of the overall health of the cluster -type OperatorHealthReply struct { - // Healthy is true if all the servers in the cluster are healthy. - Healthy bool - - // FailureTolerance is the number of healthy servers that could be lost without - // an outage occurring. - FailureTolerance int - - // Servers holds the health of each server. - Servers []ServerHealth -} - -func (o *OperatorHealthReply) ServerHealth(id string) *ServerHealth { - for _, health := range o.Servers { - if health.ID == id { - return &health - } +func (s *RaftStats) ToAutopilotServerStats() *autopilot.ServerStats { + duration, _ := time.ParseDuration(s.LastContact) + return &autopilot.ServerStats{ + LastContact: duration, + LastTerm: s.LastTerm, + LastIndex: s.LastIndex, } - return nil } diff --git a/agent/structs/autopilot_oss.go b/agent/structs/autopilot_oss.go new file mode 100644 index 000000000..56f6ee7e8 --- /dev/null +++ b/agent/structs/autopilot_oss.go @@ -0,0 +1,7 @@ +// +build !consulent + +package structs + +func (c *AutopilotConfig) autopilotConfigExt() interface{} { + return nil +} diff --git a/agent/structs/check_definition.go b/agent/structs/check_definition.go index 08119ab89..82c36a16d 100644 --- a/agent/structs/check_definition.go +++ b/agent/structs/check_definition.go @@ -63,6 +63,7 @@ func (t *CheckDefinition) UnmarshalJSON(data []byte) (err error) { DeregisterCriticalServiceAfterSnake interface{} `json:"deregister_critical_service_after"` DockerContainerIDSnake string `json:"docker_container_id"` TLSSkipVerifySnake bool `json:"tls_skip_verify"` + GRPCUseTLSSnake bool `json:"grpc_use_tls"` ServiceIDSnake string `json:"service_id"` *Alias @@ -89,6 +90,9 @@ func (t *CheckDefinition) UnmarshalJSON(data []byte) (err error) { if aux.TLSSkipVerifySnake { t.TLSSkipVerify = aux.TLSSkipVerifySnake } + if aux.GRPCUseTLSSnake { + t.GRPCUseTLS = aux.GRPCUseTLSSnake + } if t.ServiceID == "" { t.ServiceID = aux.ServiceIDSnake } diff --git a/agent/structs/check_type.go b/agent/structs/check_type.go index e1b8f53f8..0cf256cc8 100644 --- a/agent/structs/check_type.go +++ b/agent/structs/check_type.go @@ -76,6 +76,7 @@ func (t *CheckType) UnmarshalJSON(data []byte) (err error) { DeregisterCriticalServiceAfterSnake interface{} `json:"deregister_critical_service_after"` DockerContainerIDSnake string `json:"docker_container_id"` TLSSkipVerifySnake bool `json:"tls_skip_verify"` + GRPCUseTLSSnake bool `json:"grpc_use_tls"` // These are going to be ignored but since we are disallowing unknown fields // during parsing we have to be explicit about parsing but not using these. @@ -104,6 +105,9 @@ func (t *CheckType) UnmarshalJSON(data []byte) (err error) { if aux.TLSSkipVerifySnake { t.TLSSkipVerify = aux.TLSSkipVerifySnake } + if aux.GRPCUseTLSSnake { + t.GRPCUseTLS = aux.GRPCUseTLSSnake + } if aux.Interval != nil { switch v := aux.Interval.(type) { diff --git a/agent/structs/config_entry.go b/agent/structs/config_entry.go index 0f6e54dfa..8a343ca48 100644 --- a/agent/structs/config_entry.go +++ b/agent/structs/config_entry.go @@ -97,6 +97,12 @@ type ServiceConfigEntry struct { RaftIndex } +func (e *ServiceConfigEntry) Clone() *ServiceConfigEntry { + e2 := *e + e2.Expose = e.Expose.Clone() + return &e2 +} + func (e *ServiceConfigEntry) GetKind() string { return ServiceDefaults } diff --git a/agent/structs/config_entry_intentions.go b/agent/structs/config_entry_intentions.go index d3e0e072f..7a737d67d 100644 --- a/agent/structs/config_entry_intentions.go +++ b/agent/structs/config_entry_intentions.go @@ -59,6 +59,59 @@ func (e *ServiceIntentionsConfigEntry) DestinationServiceName() ServiceName { return NewServiceName(e.Name, &e.EnterpriseMeta) } +func (e *ServiceIntentionsConfigEntry) UpdateSourceByLegacyID(legacyID string, update *SourceIntention) bool { + for i, src := range e.Sources { + if src.LegacyID == legacyID { + e.Sources[i] = update + return true + } + } + return false +} + +func (e *ServiceIntentionsConfigEntry) UpsertSourceByName(sn ServiceName, upsert *SourceIntention) { + for i, src := range e.Sources { + if src.SourceServiceName() == sn { + e.Sources[i] = upsert + return + } + } + + e.Sources = append(e.Sources, upsert) +} + +func (e *ServiceIntentionsConfigEntry) DeleteSourceByLegacyID(legacyID string) bool { + for i, src := range e.Sources { + if src.LegacyID == legacyID { + // Delete slice element: https://github.com/golang/go/wiki/SliceTricks#delete + // a = append(a[:i], a[i+1:]...) + e.Sources = append(e.Sources[:i], e.Sources[i+1:]...) + + if len(e.Sources) == 0 { + e.Sources = nil + } + return true + } + } + return false +} + +func (e *ServiceIntentionsConfigEntry) DeleteSourceByName(sn ServiceName) bool { + for i, src := range e.Sources { + if src.SourceServiceName() == sn { + // Delete slice element: https://github.com/golang/go/wiki/SliceTricks#delete + // a = append(a[:i], a[i+1:]...) + e.Sources = append(e.Sources[:i], e.Sources[i+1:]...) + + if len(e.Sources) == 0 { + e.Sources = nil + } + return true + } + } + return false +} + func (e *ServiceIntentionsConfigEntry) ToIntention(src *SourceIntention) *Intention { meta := e.Meta if src.LegacyID != "" { @@ -352,6 +405,9 @@ func (e *ServiceIntentionsConfigEntry) normalize(legacyWrite bool) error { return fmt.Errorf("config entry is nil") } + // NOTE: this function must be deterministic so that the raft log doesn't + // diverge. This means no ID assignments or time.Now() usage! + e.Kind = ServiceIntentions e.EnterpriseMeta.Normalize() @@ -377,11 +433,6 @@ func (e *ServiceIntentionsConfigEntry) normalize(legacyWrite bool) error { if src.LegacyMeta == nil { src.LegacyMeta = make(map[string]string) } - // Set the created/updated times. If this is an update instead of an insert - // the UpdateOver() will fix it up appropriately. - now := time.Now().UTC() - src.LegacyCreateTime = timePointer(now) - src.LegacyUpdateTime = timePointer(now) } else { // Legacy fields are cleared, except LegacyMeta which we leave // populated so that we can later fail the write in Validate() and @@ -541,11 +592,25 @@ func (e *ServiceIntentionsConfigEntry) validate(legacyWrite bool) error { ) } } + + if src.LegacyCreateTime == nil { + return fmt.Errorf("Sources[%d].LegacyCreateTime must be set", i) + } + if src.LegacyUpdateTime == nil { + return fmt.Errorf("Sources[%d].LegacyUpdateTime must be set", i) + } } else { if len(src.LegacyMeta) > 0 { return fmt.Errorf("Sources[%d].LegacyMeta must be omitted", i) } src.LegacyMeta = nil // ensure it's completely unset + + if src.LegacyCreateTime != nil { + return fmt.Errorf("Sources[%d].LegacyCreateTime must be omitted", i) + } + if src.LegacyUpdateTime != nil { + return fmt.Errorf("Sources[%d].LegacyUpdateTime must be omitted", i) + } } if legacyWrite { diff --git a/agent/structs/config_entry_intentions_test.go b/agent/structs/config_entry_intentions_test.go index 1d84c12a8..7660f7779 100644 --- a/agent/structs/config_entry_intentions_test.go +++ b/agent/structs/config_entry_intentions_test.go @@ -21,6 +21,14 @@ func generateUUID() (ret string) { } func TestServiceIntentionsConfigEntry(t *testing.T) { + var ( + testLocation = time.FixedZone("UTC-8", -8*60*60) + + testTimeA = time.Date(1955, 11, 5, 6, 15, 0, 0, testLocation) + testTimeB = time.Date(1985, 10, 26, 1, 35, 0, 0, testLocation) + testTimeC = time.Date(2015, 10, 21, 16, 29, 0, 0, testLocation) + ) + type testcase struct { entry *ServiceIntentionsConfigEntry legacy bool @@ -126,9 +134,11 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, Meta: map[string]string{ @@ -198,10 +208,12 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, - Description: strings.Repeat("x", 512), + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + Description: strings.Repeat("x", 512), + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, LegacyMeta: map[string]string{ // stray Meta will be dropped "old": "data", }, @@ -217,10 +229,12 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, - LegacyMeta: makeStringMap(65, 5, 5), + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + LegacyMeta: makeStringMap(65, 5, 5), }, }, }, @@ -233,10 +247,12 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, - LegacyMeta: makeStringMap(64, 129, 5), + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + LegacyMeta: makeStringMap(64, 129, 5), }, }, }, @@ -249,10 +265,12 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, - LegacyMeta: makeStringMap(64, 128, 513), + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + LegacyMeta: makeStringMap(64, 128, 513), }, }, }, @@ -265,10 +283,12 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - LegacyID: legacyIDs[0], - Name: "foo", - Action: IntentionActionAllow, - LegacyMeta: makeStringMap(64, 128, 512), + LegacyID: legacyIDs[0], + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, + LegacyMeta: makeStringMap(64, 128, 512), }, }, }, @@ -280,9 +300,11 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - Name: "foo", - Action: IntentionActionAllow, - Description: strings.Repeat("x", 512), + Name: "foo", + Action: IntentionActionAllow, + Description: strings.Repeat("x", 512), + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, }, }, @@ -1008,8 +1030,10 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Action: IntentionActionDeny, }, { - Name: "foo", - Action: IntentionActionAllow, + Name: "foo", + Action: IntentionActionAllow, + LegacyCreateTime: &testTimeA, // stray times will be dropped + LegacyUpdateTime: &testTimeA, }, { Name: "bar", @@ -1059,9 +1083,11 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { Name: "test", Sources: []*SourceIntention{ { - Name: WildcardSpecifier, - Action: IntentionActionDeny, - LegacyID: legacyIDs[0], + Name: WildcardSpecifier, + Action: IntentionActionDeny, + LegacyID: legacyIDs[0], + LegacyCreateTime: &testTimeA, + LegacyUpdateTime: &testTimeA, }, { Name: "foo", @@ -1071,23 +1097,27 @@ func TestServiceIntentionsConfigEntry(t *testing.T) { "key1": "val1", "key2": "val2", }, + LegacyCreateTime: &testTimeB, + LegacyUpdateTime: &testTimeB, }, { - Name: "bar", - Action: IntentionActionDeny, - LegacyID: legacyIDs[2], + Name: "bar", + Action: IntentionActionDeny, + LegacyID: legacyIDs[2], + LegacyCreateTime: &testTimeC, + LegacyUpdateTime: &testTimeC, }, }, }, check: func(t *testing.T, entry *ServiceIntentionsConfigEntry) { require.Len(t, entry.Sources, 3) - assert.False(t, entry.Sources[0].LegacyCreateTime.IsZero()) - assert.False(t, entry.Sources[0].LegacyUpdateTime.IsZero()) - assert.False(t, entry.Sources[1].LegacyCreateTime.IsZero()) - assert.False(t, entry.Sources[1].LegacyUpdateTime.IsZero()) - assert.False(t, entry.Sources[2].LegacyCreateTime.IsZero()) - assert.False(t, entry.Sources[2].LegacyUpdateTime.IsZero()) + // assert.False(t, entry.Sources[0].LegacyCreateTime.IsZero()) + // assert.False(t, entry.Sources[0].LegacyUpdateTime.IsZero()) + // assert.False(t, entry.Sources[1].LegacyCreateTime.IsZero()) + // assert.False(t, entry.Sources[1].LegacyUpdateTime.IsZero()) + // assert.False(t, entry.Sources[2].LegacyCreateTime.IsZero()) + // assert.False(t, entry.Sources[2].LegacyUpdateTime.IsZero()) assert.Equal(t, []*SourceIntention{ { @@ -1299,6 +1329,8 @@ func TestMigrateIntentions(t *testing.T) { LegacyMeta: map[string]string{ "key1": "val1", }, + LegacyCreateTime: &anyTime, + LegacyUpdateTime: &anyTime, }, }, }, @@ -1349,6 +1381,8 @@ func TestMigrateIntentions(t *testing.T) { LegacyMeta: map[string]string{ "key1": "val1", }, + LegacyCreateTime: &anyTime, + LegacyUpdateTime: &anyTime, }, { LegacyID: legacyIDs[1], @@ -1359,6 +1393,8 @@ func TestMigrateIntentions(t *testing.T) { LegacyMeta: map[string]string{ "key2": "val2", }, + LegacyCreateTime: &anyTime, + LegacyUpdateTime: &anyTime, }, }, }, @@ -1409,6 +1445,8 @@ func TestMigrateIntentions(t *testing.T) { LegacyMeta: map[string]string{ "key1": "val1", }, + LegacyCreateTime: &anyTime, + LegacyUpdateTime: &anyTime, }, }, }, @@ -1425,6 +1463,8 @@ func TestMigrateIntentions(t *testing.T) { LegacyMeta: map[string]string{ "key2": "val2", }, + LegacyCreateTime: &anyTime, + LegacyUpdateTime: &anyTime, }, }, }, diff --git a/agent/structs/connect_proxy_config.go b/agent/structs/connect_proxy_config.go index 98f22a4f3..3348c4900 100644 --- a/agent/structs/connect_proxy_config.go +++ b/agent/structs/connect_proxy_config.go @@ -418,6 +418,17 @@ type ExposeConfig struct { Paths []ExposePath `json:",omitempty"` } +func (e ExposeConfig) Clone() ExposeConfig { + e2 := e + if len(e.Paths) > 0 { + e2.Paths = make([]ExposePath, 0, len(e.Paths)) + for _, p := range e.Paths { + e2.Paths = append(e2.Paths, p) + } + } + return e2 +} + type ExposePath struct { // ListenerPort defines the port of the proxy's listener for exposed paths. ListenerPort int `json:",omitempty" alias:"listener_port"` diff --git a/agent/structs/intention.go b/agent/structs/intention.go index 800f7c1f2..2b33ddad1 100644 --- a/agent/structs/intention.go +++ b/agent/structs/intention.go @@ -440,6 +440,9 @@ func (x *Intention) ToConfigEntry(legacy bool) *ServiceIntentionsConfigEntry { } func (x *Intention) ToSourceIntention(legacy bool) *SourceIntention { + ct := x.CreatedAt // copy + ut := x.UpdatedAt + src := &SourceIntention{ Name: x.SourceName, EnterpriseMeta: *x.SourceEnterpriseMeta(), @@ -450,8 +453,8 @@ func (x *Intention) ToSourceIntention(legacy bool) *SourceIntention { Type: x.SourceType, Description: x.Description, LegacyMeta: x.Meta, - LegacyCreateTime: nil, // Ignore - LegacyUpdateTime: nil, // Ignore + LegacyCreateTime: &ct, + LegacyUpdateTime: &ut, } if !legacy { src.Permissions = x.Permissions @@ -522,13 +525,30 @@ type IntentionRequest struct { Op IntentionOp // Intention is the intention. + // + // This is mutually exclusive with the Mutation field. Intention *Intention + // Mutation is a change to make to an Intention. + // + // This is mutually exclusive with the Intention field. + // + // This field is only set by the leader before writing to the raft log and + // is not settable via the API or an RPC. + Mutation *IntentionMutation + // WriteRequest is a common struct containing ACL tokens and other // write-related common elements for requests. WriteRequest } +type IntentionMutation struct { + ID string + Destination ServiceName + Source ServiceName + Value *SourceIntention +} + // RequestDatacenter returns the datacenter for a given request. func (q *IntentionRequest) RequestDatacenter() string { return q.Datacenter @@ -645,11 +665,13 @@ type IntentionQueryCheckResponse struct { // Currently contains: // - Whether all actions are allowed // - Whether the matching intention has L7 permissions attached -// - Whether the intention is managed by an external source like k8s, +// - Whether the intention is managed by an external source like k8s +// - Whether there is an exact, on-wildcard, intention referencing the two services type IntentionDecisionSummary struct { Allowed bool HasPermissions bool ExternalSource string + HasExact bool } // IntentionQueryExact holds the parameters for performing a lookup of an diff --git a/agent/structs/operator.go b/agent/structs/operator.go index 121bb2fa2..be4507c32 100644 --- a/agent/structs/operator.go +++ b/agent/structs/operator.go @@ -3,7 +3,6 @@ package structs import ( "net" - "github.com/hashicorp/consul/agent/consul/autopilot" "github.com/hashicorp/raft" ) @@ -72,7 +71,7 @@ type AutopilotSetConfigRequest struct { Datacenter string // Config is the new Autopilot configuration to use. - Config autopilot.Config + Config AutopilotConfig // CAS controls whether to use check-and-set semantics for this request. CAS bool diff --git a/agent/structs/structs.go b/agent/structs/structs.go index 46a6ba399..5e0956a06 100644 --- a/agent/structs/structs.go +++ b/agent/structs/structs.go @@ -1626,9 +1626,8 @@ func (csn *CheckServiceNode) CanRead(authz acl.Authorizer) acl.EnforcementDecisi return acl.Deny } - // TODO(streaming): add enterprise test that uses namespaces authzContext := new(acl.AuthorizerContext) - csn.Service.FillAuthzContext(authzContext) + csn.Service.EnterpriseMeta.FillAuthzContext(authzContext) if authz.NodeRead(csn.Node.Node, authzContext) != acl.Allow { return acl.Deny diff --git a/agent/structs/structs_filtering_test.go b/agent/structs/structs_filtering_test.go index e13c98043..319f47e9e 100644 --- a/agent/structs/structs_filtering_test.go +++ b/agent/structs/structs_filtering_test.go @@ -11,12 +11,47 @@ import ( "github.com/hashicorp/consul/api" bexpr "github.com/hashicorp/go-bexpr" + "github.com/mitchellh/pointerstructure" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) var dumpFieldConfig = flag.Bool("dump-field-config", false, "generate field config dump file") +func TestPointerStructure(t *testing.T) { + csn := CheckServiceNode{ + Node: &Node{ + ID: "f18f3a10-2153-40ae-af7d-68db0e856498", + Node: "node1", + Address: "198.18.0.1", + }, + Service: &NodeService{ + ID: "test", + Service: "test", + Port: 1234, + TaggedAddresses: map[string]ServiceAddress{ + "wan": { + Address: "1.1.1.1", + Port: 443, + }, + }, + }, + } + + ptr := pointerstructure.Pointer{ + Parts: []string{ + "Service", + "TaggedAddresses", + "wan", + "Address", + }, + } + + val, err := ptr.Get(csn) + require.NoError(t, err) + require.Equal(t, "1.1.1.1", val) +} + /////////////////////////////////////////////////////////////////////////////// // // NOTE: The tests within this file are designed to validate that the fields diff --git a/agent/structs/structs_oss.go b/agent/structs/structs_oss.go index 522e2f0ff..29a45520b 100644 --- a/agent/structs/structs_oss.go +++ b/agent/structs/structs_oss.go @@ -74,6 +74,11 @@ func (_ *EnterpriseMeta) FillAuthzContext(_ *acl.AuthorizerContext) {} func (_ *EnterpriseMeta) Normalize() {} +// GetNamespace always returns the empty string. +func (_ *EnterpriseMeta) GetNamespace() string { + return "" +} + // FillAuthzContext stub func (_ *DirEntry) FillAuthzContext(_ *acl.AuthorizerContext) {} diff --git a/agent/structs/structs_test.go b/agent/structs/structs_test.go index 0b4e9c497..d6d85aee2 100644 --- a/agent/structs/structs_test.go +++ b/agent/structs/structs_test.go @@ -1290,7 +1290,7 @@ func TestCheckServiceNodes_Filter(t *testing.T) { } } -func TestCheckServiceNodes_CanRead(t *testing.T) { +func TestCheckServiceNode_CanRead(t *testing.T) { type testCase struct { name string csn CheckServiceNode diff --git a/agent/ui_endpoint.go b/agent/ui_endpoint.go index 07729d99b..f08fb9a96 100644 --- a/agent/ui_endpoint.go +++ b/agent/ui_endpoint.go @@ -9,6 +9,7 @@ import ( "sort" "strings" + "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/api" @@ -316,8 +317,8 @@ RPC: downstreams, _ := summarizeServices(out.ServiceTopology.Downstreams.ToServiceDump(), nil, "") var ( - upstreamResp []*ServiceTopologySummary - downstreamResp []*ServiceTopologySummary + upstreamResp = make([]*ServiceTopologySummary, 0) + downstreamResp = make([]*ServiceTopologySummary, 0) ) // Sort and attach intention data for upstreams and downstreams @@ -566,6 +567,33 @@ func (s *HTTPHandlers) UIMetricsProxy(resp http.ResponseWriter, req *http.Reques return nil, NotFoundError{Reason: "Metrics proxy is not enabled"} } + // Fetch the ACL token, if provided, but ONLY from headers since other + // metrics proxies might use a ?token query string parameter for something. + var token string + s.parseTokenFromHeaders(req, &token) + + // Clear the token from the headers so we don't end up proxying it. + s.clearTokenFromHeaders(req) + + var entMeta structs.EnterpriseMeta + authz, err := s.agent.resolveTokenAndDefaultMeta(token, &entMeta, nil) + if err != nil { + return nil, err + } + + if authz != nil { + // This endpoint requires wildcard read on all services and all nodes. + // + // In enterprise it requires this _in all namespaces_ too. + wildMeta := structs.WildcardEnterpriseMeta() + var authzContext acl.AuthorizerContext + wildMeta.FillAuthzContext(&authzContext) + + if authz.NodeReadAll(&authzContext) != acl.Allow || authz.ServiceReadAll(&authzContext) != acl.Allow { + return nil, acl.ErrPermissionDenied + } + } + log := s.agent.logger.Named(logging.UIMetricsProxy) // Construct the new URL from the path and the base path. Note we do this here @@ -589,6 +617,29 @@ func (s *HTTPHandlers) UIMetricsProxy(resp http.ResponseWriter, req *http.Reques // double slashes etc. u.Path = path.Clean(u.Path) + if len(cfg.PathAllowlist) > 0 { + // This could be done better with a map, but for the prometheus default + // integration this list has two items in it, so the straight iteration + // isn't awful. + denied := true + for _, allowedPath := range cfg.PathAllowlist { + if u.Path == allowedPath { + denied = false + break + } + } + if denied { + log.Error("target URL path is not allowed", + "base_url", cfg.BaseURL, + "path", subPath, + "target_url", u.String(), + "path_allowlist", cfg.PathAllowlist, + ) + resp.WriteHeader(http.StatusForbidden) + return nil, nil + } + } + // Pass through query params u.RawQuery = req.URL.RawQuery diff --git a/agent/ui_endpoint_oss_test.go b/agent/ui_endpoint_oss_test.go new file mode 100644 index 000000000..88bf3f73a --- /dev/null +++ b/agent/ui_endpoint_oss_test.go @@ -0,0 +1,159 @@ +// +build !consulent + +package agent + +import ( + "fmt" + "net/http" + "net/http/httptest" + "sync/atomic" + "testing" + + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/testrpc" + "github.com/stretchr/testify/require" +) + +func TestUIEndpoint_MetricsProxy_ACLDeny(t *testing.T) { + t.Parallel() + + var ( + lastHeadersSent atomic.Value + backendCalled atomic.Value + ) + backend := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + backendCalled.Store(true) + lastHeadersSent.Store(r.Header) + if r.URL.Path == "/some/prefix/ok" { + w.Write([]byte("OK")) + return + } + http.Error(w, "not found on backend", http.StatusNotFound) + })) + defer backend.Close() + + backendURL := backend.URL + "/some/prefix" + + a := NewTestAgent(t, TestACLConfig()+fmt.Sprintf(` + ui_config { + enabled = true + metrics_proxy { + base_url = %q + } + } + http_config { + response_headers { + "Access-Control-Allow-Origin" = "*" + } + } + `, backendURL)) + defer a.Shutdown() + + h := a.srv.handler(true) + + testrpc.WaitForLeader(t, a.RPC, "dc1") + + const endpointPath = "/v1/internal/ui/metrics-proxy" + + // create some ACL things + for name, rules := range map[string]string{ + "one-service": `service "foo" { policy = "read" }`, + "all-services": `service_prefix "" { policy = "read" }`, + "one-node": `node "bar" { policy = "read" }`, + "all-nodes": `node_prefix "" { policy = "read" }`, + } { + req := structs.ACLPolicySetRequest{ + Policy: structs.ACLPolicy{ + Name: name, + Rules: rules, + }, + Datacenter: "dc1", + WriteRequest: structs.WriteRequest{Token: "root"}, + } + var policy structs.ACLPolicy + require.NoError(t, a.RPC("ACL.PolicySet", &req, &policy)) + } + + makeToken := func(t *testing.T, policyNames []string) string { + req := structs.ACLTokenSetRequest{ + ACLToken: structs.ACLToken{}, + Datacenter: "dc1", + WriteRequest: structs.WriteRequest{Token: "root"}, + } + for _, name := range policyNames { + req.ACLToken.Policies = append(req.ACLToken.Policies, structs.ACLTokenPolicyLink{Name: name}) + } + require.Len(t, req.ACLToken.Policies, len(policyNames)) + + var token structs.ACLToken + require.NoError(t, a.RPC("ACL.TokenSet", &req, &token)) + return token.SecretID + } + + type testcase struct { + name string + token string + policies []string + expect int + } + + for _, tc := range []testcase{ + {name: "no token", token: "", expect: http.StatusForbidden}, + {name: "root token", token: "root", expect: http.StatusOK}, + // + {name: "one node", policies: []string{"one-node"}, expect: http.StatusForbidden}, + {name: "all nodes", policies: []string{"all-nodes"}, expect: http.StatusForbidden}, + // + {name: "one service", policies: []string{"one-service"}, expect: http.StatusForbidden}, + {name: "all services", policies: []string{"all-services"}, expect: http.StatusForbidden}, + // + {name: "one service one node", policies: []string{"one-service", "one-node"}, expect: http.StatusForbidden}, + {name: "all services one node", policies: []string{"all-services", "one-node"}, expect: http.StatusForbidden}, + // + {name: "one service all nodes", policies: []string{"one-service", "one-node"}, expect: http.StatusForbidden}, + {name: "all services all nodes", policies: []string{"all-services", "all-nodes"}, expect: http.StatusOK}, + } { + tc := tc + t.Run(tc.name, func(t *testing.T) { + if tc.token == "" { + tc.token = makeToken(t, tc.policies) + } + + t.Run("via query param should not work", func(t *testing.T) { + req := httptest.NewRequest("GET", endpointPath+"/ok?token="+tc.token, nil) + rec := httptest.NewRecorder() + backendCalled.Store(false) + h.ServeHTTP(rec, req) + require.Equal(t, http.StatusForbidden, rec.Code) + + require.False(t, backendCalled.Load().(bool)) + }) + + for _, headerName := range []string{"x-consul-token", "authorization"} { + headerVal := tc.token + if headerName == "authorization" { + headerVal = "bearer " + tc.token + } + + t.Run("via header "+headerName, func(t *testing.T) { + req := httptest.NewRequest("GET", endpointPath+"/ok", nil) + req.Header.Set(headerName, headerVal) + rec := httptest.NewRecorder() + backendCalled.Store(false) + h.ServeHTTP(rec, req) + require.Equal(t, tc.expect, rec.Code) + + headersSent, _ := lastHeadersSent.Load().(http.Header) + if tc.expect == http.StatusOK { + require.True(t, backendCalled.Load().(bool)) + // Ensure we didn't accidentally ship our consul token to the proxy. + require.Empty(t, headersSent.Get("X-Consul-Token")) + require.Empty(t, headersSent.Get("Authorization")) + } else { + require.False(t, backendCalled.Load().(bool)) + } + }) + } + }) + } +} diff --git a/agent/ui_endpoint_test.go b/agent/ui_endpoint_test.go index 784b6e0db..2fec77cc2 100644 --- a/agent/ui_endpoint_test.go +++ b/agent/ui_endpoint_test.go @@ -1369,9 +1369,11 @@ func TestUIServiceTopology(t *testing.T) { Intention: structs.IntentionDecisionSummary{ Allowed: true, HasPermissions: false, + HasExact: true, }, }, }, + Downstreams: []*ServiceTopologySummary{}, FilteredByACLs: false, } result := obj.(ServiceTopology) @@ -1410,6 +1412,7 @@ func TestUIServiceTopology(t *testing.T) { Intention: structs.IntentionDecisionSummary{ Allowed: true, HasPermissions: false, + HasExact: true, }, }, }, @@ -1429,6 +1432,9 @@ func TestUIServiceTopology(t *testing.T) { Allowed: false, HasPermissions: false, ExternalSource: "nomad", + + // From wildcard deny + HasExact: false, }, }, }, @@ -1474,6 +1480,7 @@ func TestUIServiceTopology(t *testing.T) { Intention: structs.IntentionDecisionSummary{ Allowed: false, HasPermissions: true, + HasExact: true, }, }, }, @@ -1491,6 +1498,9 @@ func TestUIServiceTopology(t *testing.T) { Allowed: false, HasPermissions: false, ExternalSource: "nomad", + + // From wildcard deny + HasExact: false, }, }, }, @@ -1521,7 +1531,8 @@ func TestUIServiceTopology(t *testing.T) { require.NoError(r, checkIndex(resp)) expect := ServiceTopology{ - Protocol: "http", + Protocol: "http", + Upstreams: []*ServiceTopologySummary{}, Downstreams: []*ServiceTopologySummary{ { ServiceSummary: ServiceSummary{ @@ -1537,6 +1548,7 @@ func TestUIServiceTopology(t *testing.T) { Intention: structs.IntentionDecisionSummary{ Allowed: false, HasPermissions: true, + HasExact: true, }, }, }, @@ -1619,6 +1631,25 @@ func TestUIEndpoint_MetricsProxy(t *testing.T) { path: endpointPath + "/ok", wantCode: http.StatusNotFound, }, + { + name: "blocked path", + config: config.UIMetricsProxy{ + BaseURL: backendURL, + PathAllowlist: []string{"/some/other-prefix/ok"}, + }, + path: endpointPath + "/ok", + wantCode: http.StatusForbidden, + }, + { + name: "allowed path", + config: config.UIMetricsProxy{ + BaseURL: backendURL, + PathAllowlist: []string{"/some/prefix/ok"}, + }, + path: endpointPath + "/ok", + wantCode: http.StatusOK, + wantContains: "OK", + }, { name: "basic proxying", config: config.UIMetricsProxy{ diff --git a/agent/uiserver/bindata_assetfs.go b/agent/uiserver/bindata_assetfs.go index 7129b849b..2e39bbeb3 100644 --- a/agent/uiserver/bindata_assetfs.go +++ b/agent/uiserver/bindata_assetfs.go @@ -15,8 +15,8 @@ // pkg/web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js // pkg/web_ui/assets/codemirror/mode/yaml/yaml-86bec82a0f62e7a53eef41d44a8e4727.js // pkg/web_ui/assets/consul-logo-707625c5eb04f602ade1f89a8868a329.png -// pkg/web_ui/assets/consul-ui-7aeaf6ce6c56cfe7d7ce8128f78dd5ff.js -// pkg/web_ui/assets/consul-ui-a71586e1e32d7a2cb324d8dc3082a4eb.css +// pkg/web_ui/assets/consul-ui-6545182bcd5582815bc4aa32375523fe.css +// pkg/web_ui/assets/consul-ui-a4c27f15cfda80a598a26c3f3da0342a.js // pkg/web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js // pkg/web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js // pkg/web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js @@ -29,7 +29,7 @@ // pkg/web_ui/assets/favicon.ico // pkg/web_ui/assets/loading-cylon-pink.svg // pkg/web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js -// pkg/web_ui/assets/metrics-providers/prometheus-d34e43a22a7270925b5d2ffba045d5ab.js +// pkg/web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js // pkg/web_ui/assets/mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png // pkg/web_ui/assets/mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png // pkg/web_ui/assets/mstile-310x150-ccc673174b188a92f1e78bc25aa6f3f8.png @@ -37,7 +37,7 @@ // pkg/web_ui/assets/mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png // pkg/web_ui/assets/safari-pinned-tab.svg // pkg/web_ui/assets/vendor-992465b8b230f89d4adce5f016543c4d.css -// pkg/web_ui/assets/vendor-b134a6d8acef5d5cec0e83b782718c89.js +// pkg/web_ui/assets/vendor-ed71485765549f3aea50f590e9204f99.js // pkg/web_ui/index.html // pkg/web_ui/oidc/callback // pkg/web_ui/robots.txt @@ -125,7 +125,7 @@ func web_uiAssetsAndroidChrome192x192501b0811835ea92d42937aaf9edfbe08Png() (*ass return nil, err } - info := bindataFileInfo{name: "web_ui/assets/android-chrome-192x192-501b0811835ea92d42937aaf9edfbe08.png", size: 18250, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/android-chrome-192x192-501b0811835ea92d42937aaf9edfbe08.png", size: 18250, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -145,7 +145,7 @@ func web_uiAssetsAndroidChrome512x512707625c5eb04f602ade1f89a8868a329Png() (*ass return nil, err } - info := bindataFileInfo{name: "web_ui/assets/android-chrome-512x512-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/android-chrome-512x512-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -165,7 +165,7 @@ func web_uiAssetsAppleTouchIcon114x11449e20f98710f64b0cae7545628a94496Png() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-114x114-49e20f98710f64b0cae7545628a94496.png", size: 15576, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-114x114-49e20f98710f64b0cae7545628a94496.png", size: 15576, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -185,7 +185,7 @@ func web_uiAssetsAppleTouchIcon120x120C9cc4fc809a6cbff9b9c261c70309819Png() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-120x120-c9cc4fc809a6cbff9b9c261c70309819.png", size: 16251, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-120x120-c9cc4fc809a6cbff9b9c261c70309819.png", size: 16251, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -205,7 +205,7 @@ func web_uiAssetsAppleTouchIcon144x144Ac561ffa84c7e8ce1fe68d70f1c16d1dPng() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -225,7 +225,7 @@ func web_uiAssetsAppleTouchIcon152x15208c9aa1c11a83650b824e3549b33a832Png() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-152x152-08c9aa1c11a83650b824e3549b33a832.png", size: 23769, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-152x152-08c9aa1c11a83650b824e3549b33a832.png", size: 23769, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -245,7 +245,7 @@ func web_uiAssetsAppleTouchIcon57x57Ae96d6d27e61e25514af459bc8b20960Png() (*asse return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-57x57-ae96d6d27e61e25514af459bc8b20960.png", size: 5158, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-57x57-ae96d6d27e61e25514af459bc8b20960.png", size: 5158, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -265,7 +265,7 @@ func web_uiAssetsAppleTouchIcon60x60522fca33a44f77c679561313def843b9Png() (*asse return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-60x60-522fca33a44f77c679561313def843b9.png", size: 5522, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-60x60-522fca33a44f77c679561313def843b9.png", size: 5522, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -285,7 +285,7 @@ func web_uiAssetsAppleTouchIcon72x72Da5dd17cb4f094262b19223464fc9541Png() (*asse return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-72x72-da5dd17cb4f094262b19223464fc9541.png", size: 7289, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-72x72-da5dd17cb4f094262b19223464fc9541.png", size: 7289, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -305,7 +305,7 @@ func web_uiAssetsAppleTouchIcon76x76C5fff53d5f3e96dbd2fe49c5cc472022Png() (*asse return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-76x76-c5fff53d5f3e96dbd2fe49c5cc472022.png", size: 8031, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-76x76-c5fff53d5f3e96dbd2fe49c5cc472022.png", size: 8031, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -325,7 +325,7 @@ func web_uiAssetsAppleTouchIconD2b583b1104a1e6810fb3984f8f132aePng() (*asset, er return nil, err } - info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-d2b583b1104a1e6810fb3984f8f132ae.png", size: 8285, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-d2b583b1104a1e6810fb3984f8f132ae.png", size: 8285, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -345,7 +345,7 @@ func web_uiAssetsCodemirrorModeJavascriptJavascript77218cd1268ea6df75775114ae086 return nil, err } - info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js", size: 21467, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js", size: 21467, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -365,7 +365,7 @@ func web_uiAssetsCodemirrorModeRubyRubyEa43ca3a3bdd63a52811e8464d66134bJs() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js", size: 5269, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js", size: 5269, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -385,7 +385,7 @@ func web_uiAssetsCodemirrorModeYamlYaml86bec82a0f62e7a53eef41d44a8e4727Js() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/yaml/yaml-86bec82a0f62e7a53eef41d44a8e4727.js", size: 44654, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/yaml/yaml-86bec82a0f62e7a53eef41d44a8e4727.js", size: 44654, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -405,47 +405,47 @@ func web_uiAssetsConsulLogo707625c5eb04f602ade1f89a8868a329Png() (*asset, error) return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-logo-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-logo-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\xeb\x76\xdb\x38\x96\x30\xfa\xdf\x4f\x41\xf3\x7c\x9f\x9b\x9c\x82\x64\xcb\x97\xc4\x51\x8d\x26\x71\x39\xae\xee\x9c\x4e\x25\x99\x38\x99\x9e\x6e\xb7\xbe\x2c\x98\x84\x2c\x4e\x28\x40\x05\x42\x76\xdc\xb6\xce\xb3\x9c\x67\x39\x4f\x76\x16\x6e\x24\x48\x82\x37\x49\x4e\x9c\xee\x64\xad\x2a\xdb\x24\x88\xcb\xc6\xc6\xc6\xbe\x6f\x77\x91\x20\x27\x61\x34\x0a\x98\xbb\x15\xa2\x49\x84\x91\xe7\x06\x04\x27\x8b\xb8\xb7\x88\x76\x61\x08\xe7\x0c\xd1\x64\xb7\xf7\x3f\x09\xc1\x3d\x38\x8f\x5c\x70\xe1\xa2\x2f\x73\x42\x59\xe2\x02\xf7\x05\x9a\x5d\x22\xda\x0b\x21\x83\xba\xed\x6e\xda\x72\x0c\xbc\xc9\x02\x07\x2c\x22\xd8\x43\x80\xf9\x77\x6f\x2f\xff\x07\x05\xac\x2f\x87\x79\x47\xc9\x1c\x51\x76\xeb\x21\xe0\x7e\xfa\x84\x92\xdf\x48\xb8\x88\x91\x0b\xee\xae\x61\xbc\x40\xc3\xed\xbd\xa5\x0f\x2a\x3f\x08\xd1\x04\x2e\x62\xe6\x82\x3b\x84\x17\x33\x44\xe1\x65\xcc\x3f\x01\x57\x88\x0d\xd3\x31\xfd\x3b\x8a\xd8\x82\x62\x47\xf4\xc0\xdb\x2f\x97\xfe\xd2\xf7\x41\xcd\x3a\x61\x10\xe7\x57\x68\x6b\x33\x9f\xc7\x51\x00\xf9\x18\xb9\x06\x33\x12\xa2\x58\x75\x51\x7e\x1c\x06\x45\x80\x00\x0c\xa8\x7f\xa7\x9f\x38\xd0\xf3\xef\xae\x21\x75\xd0\x28\xf4\x2e\xdc\xbf\x63\x47\xfc\x7b\xf7\xf1\x83\xb3\x7b\x3d\xe0\xbd\xee\x06\x31\xc1\x68\xd7\x05\xee\x73\x17\xa8\x06\xee\xd8\xdf\x52\xab\x84\xa3\xf2\xca\xd1\x12\xa0\x65\x3a\x02\x69\x1c\x21\x44\x09\xa3\xe4\xb6\x72\x0c\xd2\x38\x46\xd2\x38\xc6\x62\x1e\x42\x86\x64\xf7\xfa\xbd\x6d\xac\xa4\x71\xac\x58\x42\x31\xdb\x67\x27\xc2\x0e\x7a\x5e\x85\x35\x4c\xe3\x16\x06\x79\xac\x09\x08\x9e\x44\x57\x8b\xf4\xef\x1b\x1a\x31\xf5\xfb\xd2\x1f\xa2\x0b\x36\x1e\x61\x73\xdc\xa8\x79\xa7\x28\x6a\xb5\xc6\xa8\x71\x8d\x0b\xeb\x58\x7f\x3c\xcb\xc6\x8a\xf0\x84\x64\x1b\x56\x37\xda\xa2\x71\xb4\xa0\x71\xb4\x38\x4a\x58\xf3\x48\x41\xe3\x48\xa1\x24\x09\x7a\xe7\xee\xef\x3d\x36\x42\xfd\x24\x8e\x02\xe4\xed\xf9\xe9\xd1\x9f\x50\x84\xfe\x81\x3c\xdb\x96\x46\x28\xf1\x10\xb8\xa3\xf0\x66\xa8\xf6\x35\xff\x0d\xf3\x97\x4b\xdf\x5f\x76\x26\x3a\x48\x53\x8b\xd1\x35\x89\x42\x67\x6f\x8b\x03\x64\x32\x4a\x89\x48\x1f\x7d\x61\x08\x87\xde\x1d\x45\xbf\x2f\x50\xc2\x7e\x25\xf4\x3f\x17\x88\xde\x0e\xf3\xc4\x8e\x7f\x85\xf9\x57\x01\xa0\x23\xd6\x8f\x70\x88\xbe\x68\xf0\x20\x2f\xf0\x7c\x70\x17\x06\x43\xbc\x04\x77\xe2\xd5\x90\x2e\xfd\x25\x28\x74\xf9\x1e\x05\x84\x86\x2d\x3a\x06\x90\xff\x16\x6e\x45\x13\x4f\x4e\x7a\x34\x1a\x41\x9f\x4d\x29\xb9\x71\x30\xba\x71\xce\x28\x25\xd4\x73\xff\x4a\x16\xce\x6c\x91\x30\x27\x99\xa3\x20\x9a\xdc\x3a\x10\x3b\x51\xe8\xfa\xd9\xbc\x16\x9e\x0f\x60\xfd\xcc\x4e\x05\x6e\x97\xa7\x86\x01\xcc\xf6\xda\x8b\x3c\x1f\xc4\xde\xdd\x12\xb0\xfe\xcb\x93\x0f\x27\xa7\x67\x6f\x3e\x9c\xbd\xff\xf4\x9f\x1f\xcf\xde\xff\xf5\xd3\xbb\x93\xf7\x27\xbf\x01\x78\x41\xfb\xbf\xbe\x7d\x7f\xf6\xea\x8f\x6f\x3e\xfd\xf9\xec\xaf\x63\x1f\xe0\xdc\x38\x1f\x05\x9d\x68\x1a\x27\x59\x7b\x9c\x97\x28\x46\xb6\x71\x20\x48\x8c\x71\x88\xe7\x83\xe4\x02\xf7\xcf\x5f\x7f\xfc\xa3\xe8\xa6\x61\xd4\xa4\x38\x6a\x1e\x86\x9c\x92\x97\x87\x24\xb9\x21\xe1\x06\x86\x14\x57\xc6\xb0\x7c\xeb\xe8\x73\x37\x8d\x92\x3e\x9d\x07\x9e\xe5\x62\xd2\xf3\xe8\x5b\xa7\xed\xc9\x56\x4b\xdf\x76\xa7\x19\x9f\x26\x73\x82\xc3\x02\xd6\x64\xdf\x52\xc0\xfa\xe2\x7e\x7c\x03\x67\x88\x9f\xd7\xad\xec\xf4\x4d\x9a\xae\x6a\xf3\x1a\x6e\xb8\xb2\xa7\x8c\xcd\xcb\xfc\x48\x4a\x8c\xf0\xd7\xbd\x48\xd6\x20\x49\xa8\xff\xe6\xfc\xdd\xc9\xe9\x99\xb9\xf1\x23\x54\x81\x11\x9a\x80\x55\xbe\x77\xc3\xc0\xdd\xb2\x76\xe9\xe2\xc4\x15\x84\x8f\x5a\x08\x5f\x10\x47\x08\xb3\xe1\x19\xe7\xfd\xfa\x11\x16\x8b\x49\x10\xbd\xe6\xb4\xdb\x95\x2f\x25\xc4\x7d\x80\xf0\x75\x45\x3b\x84\xaf\x5d\x1f\x4c\x08\x9d\x41\xf6\x26\x99\xc3\xc0\x44\x53\xff\x2e\x9a\x78\x02\x39\x11\xbe\xe6\xff\x79\xee\xe9\xdb\x37\xe7\x1f\x5f\x7f\x92\x73\x3d\xff\x74\xf6\xe6\xe4\x97\xd7\x67\x2f\x5d\xdf\x97\x7b\xe6\xba\xdb\xa3\x11\x7a\x8e\xf9\x09\xe1\x93\x07\xc8\x1f\xca\xe5\x2f\xd5\x20\x2f\x21\x83\x01\xc2\x0c\xd1\xdc\x40\x6a\xcb\xe5\x87\x61\xc0\x3f\xcc\xe3\x21\x6d\xc0\xc3\x80\x10\x1a\x46\x18\x32\xd4\x89\x73\xac\xc3\x46\x7d\x09\xe7\x1b\x94\x2e\x49\x4d\xb6\x37\x76\x57\x5a\xee\xfc\x6c\x75\xbb\x98\x84\x28\xc9\xd8\x42\xc7\xf9\xef\xde\x7b\x49\x1a\x7a\xaf\x5e\x0e\x9d\x46\xa6\x00\x57\x31\x05\x9b\xb9\xa2\x6d\x98\xda\x7c\x45\x53\x79\x93\xc2\xf4\x26\x25\x23\xd6\x5f\xd0\x28\xbb\x12\xb1\xba\xaa\xe9\x12\x10\x7d\x25\xc2\x65\x47\x24\xe1\x88\xf5\x4f\x88\x1c\x90\xc1\x98\x5c\xed\x86\xe9\xd1\x4a\x1e\xf7\xae\x1b\xb7\x2b\xf6\xfc\xae\x7b\x18\x25\x01\xb9\x46\xf4\xb6\x17\x4c\x61\xd4\x7c\xe9\xb4\xdd\x50\x83\xab\x53\x30\xf9\x8c\x6e\x13\x0f\xf9\x9c\x9d\x53\x4f\xae\x10\x7b\x7b\x83\x35\x94\xce\x6f\x67\x97\x24\x4e\x34\x06\xd7\xb5\xe1\xdd\xb0\x9d\x1d\x8f\x8e\x68\x7f\x12\xc5\x0c\x51\xe3\xae\xcf\x18\x70\x6b\x17\x2f\x51\x12\xd0\x68\xce\x08\x15\x73\xec\x67\x97\xdd\xd2\xf7\x7d\x80\xfb\xf3\x45\x32\xed\xf3\x65\xde\x7a\xe2\x42\xd7\x5b\x9e\xb1\xf9\x94\xc3\x7c\x42\xa8\xc7\x67\xca\x46\x83\x9f\xd9\xbf\x43\x7a\xb5\x98\x21\xcc\x92\x7e\x8c\xf0\x15\x9b\xfe\xcc\x7e\xfa\x49\xaf\x04\x2f\xe2\x78\x7b\x94\xb6\xb8\x60\xe3\xe7\xe6\x1f\xc3\xbb\xe5\x16\xfb\xdf\xfb\xcf\xb1\x02\x8b\x47\x7d\xb0\xbd\xe7\xf7\x27\x84\x9e\xc1\x60\x9a\x5f\x19\x14\x37\x35\xbd\x60\x63\x2e\xf4\x0f\x1b\x56\x98\x58\x6f\x7b\x79\x34\x9a\x3e\xf5\xa8\xef\x0f\x8d\x39\x55\x4c\xa8\x9a\x9d\x68\x82\x3e\x05\xcc\xe7\x8b\x58\xa6\xe7\xc7\xd0\x1a\x7c\x1b\x19\x98\x3c\x26\x3a\x54\x38\x99\x79\xf5\x45\xe7\x7b\xaa\x52\xc9\xb1\x19\x8a\x95\x34\x53\xac\x26\xb9\x8f\xdf\x56\x38\x01\x49\x7a\x69\xc5\x42\xfc\x03\x91\xba\xbb\x4c\x31\x30\x5e\x45\x0c\xe4\xd2\x4e\xac\xc5\xc0\x08\x50\x8f\x0a\xc9\x83\x33\x64\x26\xc7\xe6\x41\xdf\x07\x77\xa9\xa0\x98\x2c\x8b\x24\x35\x69\x20\xa9\x82\x4b\xcc\xd1\xd1\xb2\x42\xb1\x42\xcd\x88\xf8\x5a\xac\x1f\x24\xf2\x5d\x62\xd7\xb7\x6d\x66\x13\xe1\x28\xdf\xb3\x26\x60\x45\xe2\xf6\x1f\x07\x3b\x3b\xf2\xb3\xed\x91\x41\xd7\x0e\x4c\xba\x76\x20\xe8\x5a\x26\x33\x95\xc4\x31\x43\xa2\xba\x70\x33\x54\x71\xfb\x01\xc1\x01\x64\x1e\xf6\xc7\x1e\xb3\x09\x63\x85\x0f\xb5\x2c\x66\xfb\x90\x93\x98\x25\x20\xa3\x3a\x61\xae\x3c\x31\x53\x14\xaf\x9b\x1a\x80\x96\xc9\x15\x3f\xae\x9a\x9e\xfc\x58\x4e\xd0\x76\x78\x3a\x88\x23\x74\x1e\x58\x84\x61\xb1\xa1\x5c\xf8\x1e\x09\x0c\x97\x9f\xf0\x33\xc5\xff\x4a\x18\xa1\x88\x9f\xac\x69\x94\x80\xc5\x28\xe6\x5d\x47\x30\x8e\xfe\x81\xe8\xaf\x9c\x34\xeb\x53\xe3\xea\x7e\xdd\xd1\x88\xdd\xce\x11\x99\x38\xb8\x0f\x19\xa3\xd1\xe5\x82\xa1\xe4\xb9\x07\x47\xe6\xdf\x9e\x0f\xc8\x68\x91\x75\xe6\x61\x70\xc7\xaf\x29\x32\x82\x23\x0c\x12\x2d\x74\x5b\x2f\x6b\xe4\x45\x80\x01\x22\xe0\xe2\xf7\x03\xc8\x72\x37\x4d\xc6\xe4\x44\x7d\x71\x10\x3c\x24\xda\xb1\x29\xc2\xd6\x66\xcc\x5b\x00\xa4\xbb\x5b\x02\xf1\x4d\x51\x16\x43\x4e\x84\x13\x06\x71\xc0\xd7\xf5\xe1\x76\x8e\x04\x29\x51\xa4\x05\x89\x23\xc1\x00\x1c\x5d\xdc\x25\x0c\xb2\x45\x32\x74\xd3\x4d\x44\x7d\xf9\xe8\x94\x84\xc8\x07\x2c\x62\x31\x1a\xba\x1f\xa6\xc8\xb9\x84\xc1\x67\x84\x43\x47\x6d\x3c\x0a\x9d\x9b\x88\x4d\x39\x2d\x52\x47\x3b\x44\x0c\x46\xf1\x10\xf5\x67\x28\x49\xe0\x15\x5a\x8e\xb7\x18\xbd\xbd\x4b\x6e\x22\xbe\xe0\x5c\xbf\x77\x01\x4c\x90\xb3\x37\x64\x23\x4e\xe6\x68\xff\xe4\x92\x50\x26\xa6\x08\x98\x04\x42\x72\xb1\x37\x56\x5f\x8c\xdc\x3d\x77\xeb\x92\x22\xf8\x79\x4b\x7c\x76\xb8\x37\x48\x3f\xfc\x88\xe1\x82\x4d\x09\x8d\xfe\x81\x42\x49\x2d\x21\x70\x5d\x3f\xdf\xfc\x20\x6d\xfe\x2b\xa1\x97\x51\x18\x22\x5c\xd9\xf6\x30\x6d\xfb\x86\xb0\x5f\xc9\x02\x57\x77\x7b\x9c\x36\xfd\x10\xcd\x10\x59\xc8\x05\xe4\xdb\x3c\x4b\xdb\x9c\x12\x3c\x89\xa3\x80\x55\x75\xb7\xbf\x9f\x36\x7d\x85\xaf\x61\x1c\xe9\x81\x75\x33\x75\x8c\x86\xe2\xb6\x4e\x41\xf9\x1f\xa3\xa3\xbd\xbd\xe7\xf2\xbb\x73\x44\xaf\x11\x35\x06\x18\xf2\xe7\x58\x1f\x40\xf9\x6c\xb9\x94\x08\x48\xfc\x3b\x36\x22\x4b\x89\x11\x6c\x09\x7e\x2f\x09\x5c\x06\x97\x02\x85\x70\x6f\x2a\x7f\x80\x2b\x6e\x3e\x57\x28\xe7\x7e\xaf\xb8\x04\xdb\xf4\x20\x3f\x93\xfd\x4c\x22\x1c\x9e\xc4\x71\xe1\x22\xad\xe9\xe1\x57\xf9\x81\xeb\x2f\x41\x50\xa1\xe6\x34\x27\x41\x2c\x5d\x98\x8a\x2e\x39\x8b\x45\x85\x22\xb3\xa9\x27\x53\x01\x2a\x7b\x0a\x2b\x54\x95\x4d\x3d\x99\x2a\x4e\xd1\x53\xa7\x4b\x3a\xc2\x0c\xe1\x56\x6a\xb6\x06\xcb\x98\xcd\x04\x66\x48\x42\x34\x65\x29\x03\x83\xc7\x7b\x79\xf6\xfa\xec\xc3\x99\xd2\x45\x60\x8c\x02\x96\x4d\x28\xd9\x45\x5f\x60\xc0\xac\xa6\x2a\xda\x68\x82\xf8\xf6\xac\x73\x60\x31\x1f\xd5\x2f\x72\x25\xbe\xd5\x62\x9c\x0b\xac\xaa\x9e\x26\xf0\x3a\xce\x29\x0c\xa6\xa8\x77\x4a\x30\xa3\x24\x1e\x3a\x98\xf4\xc4\xfd\xb8\x11\x4b\x5e\xfa\xae\x70\xf7\x9c\x50\x0a\x6f\xfb\x51\x22\x7e\x7a\x48\x6b\xfc\x1c\xb4\xf4\x90\x7f\x7f\x9f\x3f\xdc\xd1\xc4\x73\x17\x58\x6e\x5e\x98\x5d\xc5\x52\x1a\xbe\xbf\xdf\xf6\xe4\x6f\xfd\x88\x21\x0a\x19\xa1\x7c\xcf\x95\xe0\x86\x7c\xdd\xf5\x96\xe4\xb5\x2f\xc6\x80\x8e\xb6\xf7\x00\x1c\x6d\x0f\x00\xd1\xec\x1f\xbf\x83\xb4\x44\x9b\x80\x78\x84\x2e\x0a\x5d\x8e\x3d\xff\xe7\x6d\x8f\x8e\xbc\x64\x14\xf7\x31\xfa\xc2\x3c\xdf\xef\x87\x04\x23\x7f\x67\xc7\x93\x42\xb3\x97\xf4\x05\x2e\xf9\x60\x9b\xdd\xdf\x63\xc5\x2c\x6e\x8f\x46\xcc\xff\x99\x0f\xe9\xff\xac\xa8\x6a\xe4\xdf\x41\x3e\x05\x32\x8a\x96\x93\x08\xc3\x38\xbe\xbd\xe3\x13\xa0\xf7\xf7\x5c\x56\x1e\x8d\xe2\xbe\x9c\xf2\xfd\xbd\xfe\xcd\xf3\xd3\x96\xd1\xc4\xd3\x56\x20\xb2\xcc\xa4\x73\x01\x29\x0b\xe0\xb6\x91\x5e\x3f\x87\x62\xc2\x68\x84\xaf\x32\x10\xea\x97\x4e\x24\x3e\xd8\xca\x69\x2c\xe6\x94\x30\xc2\x1b\xf6\x19\x39\x17\x1f\xf6\x03\x18\xc7\x1e\xf2\x95\x24\x78\x0c\x7a\x03\x7f\xcb\x95\xcd\xdd\xd1\x68\x84\x77\x76\x10\xe7\x11\x12\x46\x17\x01\x23\x94\xc3\x66\x94\x7b\xd2\xc7\x70\x26\x95\x20\xee\x6f\x70\x2e\xbe\xb9\xbf\x77\xcf\x91\xfc\x5c\xcf\x46\x62\xc7\x84\x92\x99\xd2\x98\xb8\x27\x9a\xb3\x56\x9f\xec\xfe\x1f\xef\xf9\xf0\x63\x74\xff\xca\xc7\xcc\x7b\x3e\x3c\xbe\x1f\x3c\xb9\x3f\xd8\xf7\xbd\xe7\xc3\xd3\x18\xce\xe6\x28\xf4\x9f\x8b\x4e\xfe\xd7\x6e\x9f\x71\x96\x0b\xfb\xf9\x95\x96\xe0\xe5\xdf\x65\x22\x55\xca\x0b\x79\xae\xba\x66\x1d\xc8\x18\x9a\xcd\x99\xc3\x88\x23\xec\xe9\x8b\x80\x2d\x28\x72\x30\xc1\x3d\x81\x22\x97\x71\xc6\x4d\xf5\xff\x8e\x5f\x61\x87\xd0\x10\x51\xde\xfe\x12\x39\xba\x09\x10\x1f\x40\x3e\x31\x87\x08\xa8\x25\x52\x68\x9b\xc2\x6b\xe4\x40\xc7\x82\x75\xce\x0c\xb1\x29\x09\xfb\xae\xbf\xe4\x48\x90\x99\xab\xc5\x06\x7b\x12\x61\xd8\xfd\x3d\xfb\x0f\xa4\x30\x8e\x63\x24\xbf\xff\xd5\x5f\x5b\x1a\xaf\xf1\x68\x0f\x50\xc1\x3d\xc8\x43\xc7\xfc\x9f\xf1\xbf\xb3\x9f\xf1\x4f\x3f\xf9\xf4\x02\x8f\x47\xe8\x02\x8f\x53\x42\x6b\x33\x56\xb7\xa3\x2f\xb5\x42\xfa\x46\xcc\xd9\xdf\x95\x91\x39\x5c\xd7\xc8\x2c\x15\x7c\x75\xca\xec\x45\x66\x77\x26\x20\x15\x4c\xe9\x73\x73\x1b\x20\xbe\x42\x43\x27\x65\xe0\xa9\x3f\x74\xdd\x54\xf1\x0d\xe4\x18\xdf\xd6\x5c\xcd\xfb\x24\xa3\xd8\x83\xfd\x64\x1e\x47\xcc\x73\x87\xae\xdf\x9f\xc1\xb9\x17\xa2\x80\x84\xe8\xe3\xfb\x57\xa7\x64\x36\x27\x18\x61\xe6\x83\x43\x1f\x44\x23\x72\xb1\x37\x06\x8b\x11\xb9\x18\x8c\x41\x30\x22\x17\xfb\x63\x10\x8e\xc8\xc5\xc1\x78\x2b\x67\x49\xbe\x4b\xc8\x82\x06\xc8\x10\x5f\x22\xe0\xee\xba\xbe\xfe\x6b\xc1\x19\xa5\x84\x45\x58\xf0\x38\x46\xb3\x20\xd7\x2c\xf4\xc1\x2a\x16\x74\x0a\x94\x4a\x37\x1e\xdd\x9d\x8b\x89\xbc\x39\x1f\xd2\xbe\xfe\x15\xbc\xcc\x86\x16\x2f\x72\x7f\x03\xd5\x0c\xce\x50\xf6\x0d\xe7\xfe\xcc\x56\xf2\x65\xe1\x89\xfa\x92\x53\xb2\xf4\x4b\xfe\x07\xf8\x0d\x31\x38\xa4\x7d\xfe\x03\x68\x6d\x24\x5f\xb6\xe8\x41\xff\x95\x6a\x2e\xa4\xfc\x7d\x85\x98\x47\x81\x7b\x22\xd6\xa4\xe8\x8a\xeb\x3f\x8f\xfb\xf2\xc9\x88\xaa\x5f\x86\xb4\xff\x0e\xd1\x59\x94\x24\x9c\x10\xec\xec\x78\xb1\xf9\xf7\x28\xf7\xd6\x07\x52\x23\x05\xbd\xf2\xfe\x24\x19\x78\xcc\x1d\x48\x0c\x08\x54\xed\x59\x52\x00\x60\xfe\xfb\x02\x90\xfc\x5a\xc3\x3b\x2e\x78\x18\xc4\xad\x3c\x19\x4c\xe6\x53\xb2\xf6\x0e\x2b\xcc\xc9\xfa\x98\xef\x99\xb4\xdc\x5b\x51\x4a\x69\xe4\x85\x18\x90\x6a\x99\x5a\xb9\x3c\xe4\xfd\x0f\xe8\xf7\x04\xf2\x82\x4c\x13\x36\xc8\x34\x9f\xaf\x57\x16\x66\x16\x2c\x8a\x93\xdd\x28\xf9\x95\xc4\xa1\xd0\x4e\x16\x5f\x7d\x46\xb7\x1f\x88\xb8\x37\x6d\x42\x10\x1f\xd9\x2a\x1a\x59\x9e\x62\xa1\x65\xb5\xe9\x31\x01\x94\x9b\x65\x70\xd0\xfa\xea\x9d\xda\x85\xa7\xcf\xd7\x95\x5e\x7d\x71\xe3\x45\x1a\x59\x7b\xd7\x22\x4b\xb1\x6b\xc7\xe1\x02\x02\xc2\xac\x27\x68\x8a\xc3\xd0\x17\xb6\x3b\x8f\x61\x84\x7f\x76\x82\x29\xa4\x09\x62\xa3\x05\x9b\xf4\x8e\x37\xe7\x1c\xf7\x15\xa7\xd5\xc5\x8b\x6e\x6a\x61\x83\xcc\x69\x6d\xc4\x87\xee\x9f\xd4\x74\x38\xe9\x62\x3a\xc4\x6d\x4d\x87\xa1\x36\xd3\xe1\x1a\xd3\xe1\x4c\x1e\xb3\xaf\x61\x3a\xc4\xbe\x3f\x34\xe6\xb4\x71\xd3\x21\xae\x36\x1d\xce\xbe\x91\xfe\x63\xbe\x91\xe3\x31\x6f\x3c\x1e\xd3\xef\x8b\xfb\xbf\x5c\x8d\xfb\x17\xbc\x74\x18\x08\x56\xbf\xca\x26\x98\xa0\x39\x14\x42\xe2\xfa\x96\xc1\xb9\xe7\x03\x6f\x0f\x50\x3d\x55\xdf\x8b\x7d\xe0\xcd\x3c\x3c\xba\x5b\x02\x97\x53\x1f\x17\xf0\xa3\xe8\x83\x99\x87\xa5\x43\x15\x54\xbf\xa7\xb3\x70\x41\xe4\x03\xec\x83\x89\x37\xb1\x9b\x15\x49\xd9\xac\xd8\x55\xd6\x50\x26\x52\x92\x82\x23\x29\x8b\x1c\xc9\x2a\x00\x08\x4a\x00\x48\x52\x91\xaa\x72\x41\x79\x3b\x29\x29\x2c\xa8\x4a\x1e\x48\xed\x8a\xf1\xa8\xdc\x73\xe6\xce\xe6\xe1\x0b\x52\x60\x86\x2c\x53\xc0\x17\x89\x76\xf4\x93\x6d\xf2\x42\x61\x7e\x49\xf8\x02\x66\x6e\xa7\x3e\x88\x85\xed\xad\x25\x43\xbb\xda\x84\x39\x74\x26\x31\xbc\x4a\x86\xb8\xff\x2b\xff\x69\x03\x63\xcd\x1a\xa2\xae\x6b\xa8\xe2\x81\x19\x88\xe4\x1a\x16\x3f\x7b\x7b\x00\x67\xfd\x45\xb9\xfe\x76\x76\xbc\x85\xb8\x73\xa4\x34\x1a\x88\x05\xd7\x2c\x39\x6a\xb3\x47\x51\x71\x7d\x02\x2c\x14\x05\x0b\x9a\xa0\xe1\x62\x69\xac\x37\x2e\xad\x37\x3f\x3f\x10\x14\x38\xe2\xcb\x06\x8e\x18\x93\x70\xf3\x0e\x8c\xc4\x42\xe0\xa5\xad\x69\x37\x46\x30\x44\xb4\xc1\x4d\x43\xbe\x78\x8f\x26\x14\x25\xd3\xa1\x73\xb0\xd7\xde\xbd\xcc\x62\x56\xb0\xcd\x26\xe2\xbb\x83\x61\xbc\xbb\x88\x04\x08\xd6\xf4\x1d\x69\x63\x75\xe8\x32\x9d\x75\xfc\x2d\xdb\x04\x04\x7d\x57\x37\x64\x0b\xcf\x99\x36\xca\x27\x32\xf2\xc4\xcd\x28\x54\x63\xc6\x91\x82\xa6\x6e\x6c\x8d\xa8\x8c\xbc\xfa\x2d\x0a\xc5\xd5\x53\x74\xcb\x21\xab\xdc\x3d\x5c\x22\x27\x7a\x8e\x89\xe9\x8c\x5a\x9c\xe3\x6b\x71\xba\xea\xfd\x5d\xab\xbc\x5c\xa1\xb6\xc0\x5a\x3a\x59\x27\x7a\xc0\x98\x58\xd7\xe8\x01\xeb\xa7\x75\xc1\x03\x4d\x36\x4d\x25\x59\xaf\x69\xd0\xac\x92\xcf\xad\x46\xcd\x85\x29\xa2\xbe\x3d\x2f\x9c\x77\x18\xc4\xbb\xa9\xeb\x41\x33\xf7\xdb\x85\xce\x2c\xec\x0a\x01\x0c\x67\x48\xcc\x7f\x77\xdd\x68\xc2\x85\x45\xf8\x2e\xf4\xbe\x29\xbb\xe5\x9a\x43\xb5\xb1\x44\xda\x86\xd2\xe4\xb9\xc3\x50\x5d\x94\x2a\xb5\x43\x25\x2b\x92\xff\x36\xea\x93\xef\x8a\xfc\x07\x2b\x93\x7f\x49\x8d\x69\x91\xe6\x71\x9e\x91\x6a\x2a\x8a\xbb\x52\xfa\xac\xd3\x82\x58\x41\xdb\x91\x76\xbe\xc1\x6e\x81\xa3\xab\x9a\x4d\xb5\x84\x40\x0b\xb1\x70\x34\x17\x30\x76\x27\x34\xfe\xac\xaf\x0d\x01\xa9\x0a\x9f\x99\x2a\x7c\x70\x72\xfa\x3a\x19\xde\xbd\x23\x71\x14\xdc\xbe\x94\x10\x4e\x86\xac\xcf\x1f\xf7\xf3\x4f\x85\x95\xc5\xe2\x44\x76\xf7\xea\xe5\x10\xf5\x5f\xbd\xe4\xdb\x0d\xde\x93\x18\x15\xbb\x31\x9f\xb5\xe9\x64\xb9\x6c\x29\x71\xd0\x42\x90\x5e\x01\x00\xdf\xf3\xa2\xab\x45\x14\x5a\x08\x13\xcc\x2d\x3a\xd7\xc7\x89\xbe\x53\xda\x8b\xca\x79\x7e\x43\x70\x1b\x00\x27\x43\x08\xb4\xf4\x0a\x2e\xee\xde\x23\x6d\x16\xe0\x87\x59\x0a\xf5\x27\x41\x80\x92\x64\xe8\xde\xd0\x88\x21\x77\xc9\xe7\x01\xad\xa3\xaf\xc3\x44\xa4\xeb\xa9\x60\x21\x0c\xaf\xc6\x8a\xe7\x1c\xce\xf5\xcc\x43\xd0\xc0\x3c\x90\x28\x0c\x7a\x73\x4a\xae\x23\x61\x00\x58\x91\x87\x40\xf8\xda\x62\x3c\xc0\x04\xf7\xd0\x6c\xce\x6e\x7b\x09\x62\xab\x65\x0c\xd0\xbc\x85\x08\xd7\x26\x57\x64\xc1\x1a\xbd\x77\xf4\x05\x73\x2a\x67\xf3\x81\x7c\x46\x78\xb8\xb2\x50\xd1\x38\x2b\x0e\xc0\xdd\x00\xc6\xf1\x25\x0c\x3e\xaf\xed\x5e\xb4\x72\x52\x82\xd2\x94\x38\xba\xf6\x16\x34\xfe\x7a\x1e\x4f\xff\xa4\xba\xfb\xe8\x41\x74\xf7\x71\x1b\xdd\xfd\xe2\xeb\xea\xee\xe3\x6f\xa3\xbb\x5f\x7c\x23\xdd\x7d\x7d\x82\x08\x53\x7b\x21\x88\xa4\x38\x50\xd2\x2b\x69\x1d\x4d\xc6\x23\x4a\x27\x21\x92\x41\x6c\xad\xcd\xd0\x82\xc9\x48\x68\x17\x11\xbe\xf6\xab\x63\x9b\x9f\xe7\x35\x7c\xee\x1b\x2d\x13\xb8\x7e\x39\xcd\xcd\xdd\x72\x29\xd8\xe4\x99\x85\x4d\x6e\x0a\xc3\xee\xa4\x45\xc1\x49\x9d\x87\x51\x60\x6a\x51\x22\x2f\xd5\x51\x58\xd4\x9d\xd4\x5f\x41\xb1\x6f\xce\x60\x03\x09\x2f\x92\x6c\xba\x91\x17\x79\x77\x4b\x30\xe1\xf3\x12\x8a\x57\xce\x6b\xfc\x26\x90\x77\x08\xc1\x7b\x14\x46\x14\x05\xec\xe3\xfb\x57\x86\x43\x43\x1a\xa3\x7e\x0d\x69\xba\x8f\xbf\x9c\x9c\x9f\x7d\xfa\xf8\xea\xd3\xc7\xf7\xaf\x5d\x1f\xb8\xf9\xeb\xce\xf5\x0b\xda\xff\x16\x1c\x5a\x6e\xcd\x42\x9d\x14\x90\x10\x09\x0b\x4f\xc2\x20\x43\x2b\x83\x61\x05\x6b\x08\x1f\xb9\xf0\x65\x4b\x43\x92\x98\x6a\x31\xca\xac\x15\xec\x4f\x49\x88\x86\x09\x38\xe7\x1d\x0c\xe3\x02\xfc\x5e\x0b\x16\xa7\x4a\x48\xcb\xa3\x08\x5e\x05\x45\x38\x83\x8d\xbf\x09\x33\x5b\xa9\x0f\xb3\x7c\x58\x60\x68\x41\x5c\x06\xcb\x3a\x53\x95\x50\xb6\xcd\xd3\xa0\x3f\xf5\x6c\xf5\xac\x81\xad\x9e\x0b\xa1\x6b\x5d\x9d\x9c\xee\xa5\xa3\x8f\xcd\x06\x38\xf3\xee\x3e\x39\x9c\xf1\x94\xf3\x7d\x30\xdf\x1c\xdb\x10\x0f\xe9\x74\x93\x8d\xb7\xd9\x7c\x54\x36\x57\x81\xae\x6b\xfb\xe1\x51\xf3\xc3\xa3\xe6\x5f\xd0\xa3\x26\x3d\x26\x91\x36\x27\x7e\x27\x7e\x35\xc2\x2b\x66\x03\xbc\xf6\x25\xe7\xb5\x49\x0b\x5e\x3b\xe9\xca\x6b\x5f\xaf\x6b\x91\x34\x79\xe9\x2d\xc1\xae\xe4\x3c\x6d\x9a\xfc\x4a\x68\xce\xaf\x04\xae\xe2\x28\x63\xe5\xe8\x0b\x6c\xd3\x4a\xc6\xca\xc0\x34\x56\xae\xb8\x82\x46\xcf\x18\x38\xaa\x75\x33\x29\x26\x44\x2b\x26\xba\x9b\x78\x2d\x35\xe4\xef\x17\x31\x4a\x86\xac\x2f\x7e\x82\x6c\x0c\xfe\xcc\xf8\x6b\x09\x2e\x3d\xd9\x97\x58\x5d\x41\xbe\xa9\x56\x62\x43\xb9\x1a\x52\xb7\x9a\x52\x1e\xbb\x82\xf7\x0b\xcc\x29\xbe\xc9\x57\x5e\x5b\xb5\xae\x9a\xc8\xb5\x25\xf5\x2e\x41\xa4\xb4\x3a\x9b\x5f\xd8\x05\xac\xf2\xff\x89\x39\xb6\xe5\x20\x90\x14\xd8\xcf\xeb\x26\xf6\x93\x92\x2f\xdd\xb8\xcf\x1f\x49\x7d\x7e\x24\xf5\xf9\x91\xd4\xe7\xa1\x93\x8b\xe9\xb0\xc1\x66\xc7\xac\xf4\x85\x8a\x60\x7b\xfc\x89\x7e\x1e\x4f\x8a\x9f\xf8\xe1\x92\xfc\x50\x12\xaf\xed\x69\x23\xfb\xf8\x5e\x64\x7a\x3e\xdb\x07\x95\xe8\xf3\x03\x3c\xb4\x3c\xcf\x47\xfb\x3a\xd2\x7c\xfb\x75\xfd\x90\xe5\x7f\xc8\xf2\xff\xa2\xb2\x3c\x3f\x24\x3f\x04\xf9\x1f\x82\xfc\x0f\x41\x7e\x05\x41\xfe\x9d\x52\x84\x0d\x59\x5f\xff\x0a\xce\xa5\x31\xf4\x55\x88\x30\x8b\x98\x7c\x59\x7a\x06\xde\x90\x30\xdf\x24\xff\xe0\xbb\x14\xfd\xbf\x11\x34\xbe\x7f\x65\x81\xb2\x9f\xf7\x74\x1e\x97\x1f\x7a\x83\x1f\x7a\x83\x1f\x7a\x83\x47\xa1\x37\x98\x22\x18\xb3\xa9\x3e\xa1\x3f\xd4\x06\x8f\x48\x6d\xd0\x8a\xa5\x11\xeb\x10\xab\xd0\x6b\xc8\xa2\xb5\xb6\x72\xce\x0b\xf9\xce\x2a\xd2\x9e\x74\x52\x55\x28\xa4\xd9\x78\x1c\x64\xb4\x09\x3c\x5d\xa9\xb6\x82\x25\x10\xc9\x9c\x8c\xdd\x77\x4f\xcd\x29\xe7\xb2\x57\x3b\xa5\xd5\x83\x94\xfe\x99\xef\x3b\xf2\x20\x32\x3a\x6c\x23\xa3\x27\x5f\x57\x46\x87\xdf\x46\x46\x4f\xbe\xd1\x7d\x17\x77\x38\x4b\x57\x90\xa1\x1b\x78\xdb\xd3\x67\xaa\x27\xc2\x7a\x8b\xc7\xbd\x78\xff\x74\x3b\x73\x9d\xf5\x8b\xdf\x55\xdc\xd7\x62\xa3\x17\x22\xbf\x09\xd5\x9e\x80\x45\xde\x79\x35\xcd\x87\x17\x3d\x97\x32\x42\x94\x5d\x74\x0b\x40\x3c\xd2\xf6\xa2\x1b\x1a\xa1\x33\xcb\x6e\x9f\xb6\x17\xfb\xe9\x57\xba\xf1\x71\x7a\xe3\x53\x0e\x88\x2e\x6b\xc9\xdd\xbd\x8b\xc6\xbb\x57\x64\x7b\x5b\xd7\x52\x90\x76\xb3\x89\x24\x5b\xc6\x65\x5e\x5f\x3c\x53\x8d\xfa\x60\x05\x34\xd3\xe4\x09\x6a\x9c\xf6\x45\x1f\x7f\x84\xa2\xfc\x08\x45\xf9\x17\x0c\x45\xd1\x07\x65\x03\x39\x3d\x1e\x51\xf4\xc9\x66\x2e\xd4\xb5\x8b\x99\x5a\xd4\xcc\x9b\x4b\x72\x11\xe4\x93\x5c\xa8\xc8\x80\xef\x4b\x65\x9e\x98\x6b\x58\x71\x05\xd5\x4a\xd2\x34\x4b\x6c\xb9\x67\x43\x49\x5a\x2e\x07\x6a\x99\x42\x52\xad\x24\xb5\x54\x3c\xed\x58\xa1\x93\x91\xcf\x68\xed\xfb\x5c\x75\xf2\xa8\x4c\xff\xb7\x15\x86\x72\x31\x57\x4e\x6d\x64\xa9\xee\xb5\xcd\xff\xb7\x15\x16\x40\x39\x4e\x82\xe2\x49\x9e\xac\x55\x84\xef\xae\x18\xc4\xda\xc5\x75\xe0\xb6\xda\x19\x22\x05\x8a\x15\x1c\x5d\xbc\x06\x1a\xc1\xbe\x19\xb7\x01\xdb\x70\xcd\x25\xcc\xab\xc4\xb1\xb0\x71\xc4\x49\xbb\x05\x36\x2f\x6e\xd2\x38\xd4\xac\x25\x6a\xb5\x82\xe5\xac\x71\xb8\xf9\x3f\x35\x67\x39\x7d\x10\xce\x72\xde\x86\xb3\xbc\xfc\xba\x9c\xe5\xfc\xdb\x70\x96\x97\xdf\x88\xb3\xbc\x6e\x77\x4a\x5a\xf8\x60\x5c\x37\x1e\x91\xdb\xaf\xe9\x83\x71\xb5\x01\x1f\x8c\xab\x07\xf3\xc1\x78\x6b\x61\x4b\xc5\x35\x55\x11\xba\x2c\xde\xad\x1d\xbc\x4c\x49\x8c\x04\xf3\x2a\x23\xc9\x32\xfe\xe7\xda\xf3\xc1\x1d\x7f\x3b\x24\x40\xbe\x1b\x26\x2a\xad\xff\xd4\x9b\x7e\x7f\x3c\xe9\xcc\xe4\x49\x57\x5c\x41\x0b\x37\x8e\x62\xbf\x2d\xdd\x38\x26\xc2\x8d\x63\xea\xd5\x24\xec\xb1\x39\x2b\xbc\x27\x2a\x76\x81\xff\xdc\x8c\xeb\x02\x78\x4d\x02\x18\x0f\x59\x5f\xfc\x5c\x82\xab\x55\xdd\x3a\xd2\x1d\xdb\x1e\x8d\xa0\x8c\xae\x48\x4b\x17\x79\xa1\xe7\xb7\x75\xf6\xd0\xc5\x76\x48\x1d\x6c\xeb\x5c\x44\x02\x8b\x8b\xc8\xf7\x06\xe9\x16\x2e\x23\x65\x9c\xde\xa0\xcb\xc8\xc2\xe6\x32\x62\xcc\xef\x1c\xc5\x13\xeb\x89\xa0\x23\x2c\xd5\xb4\x38\x3d\xcf\xb8\x9f\xa0\x80\x22\x96\x77\xe2\xb1\xd5\x18\x37\x8f\x1e\x97\x28\x6a\xd7\x9f\x9b\xde\xca\x89\x8e\x79\x5f\xd1\xc3\xc2\x32\xe6\x92\x25\x88\xfc\x25\x48\xca\x50\x5b\x3d\x44\x9d\x6f\x41\xd7\x40\xfa\xfc\x37\xc5\x18\x7a\x21\xc5\x15\xe7\x97\xc2\x9b\x4f\x6f\x6b\xb5\xa9\x1a\x9b\x59\x3d\x63\xa2\xc5\x7c\xb5\x19\xed\x76\xa2\xf5\x36\x14\xd3\x6b\xa6\xd3\x89\xf9\x64\x48\x4d\x20\xff\xdb\x46\xb9\x7f\x4e\x62\x72\xf5\x23\x98\xea\x87\x53\xd4\x0f\xa7\xa8\xc7\xe1\x14\x65\xf1\xee\xe8\xe9\x63\xfa\xaf\x5e\x2e\x5d\x98\x81\x3f\x47\x38\xdc\xa8\x77\x14\xe0\x3d\x0e\x17\x0f\x52\x3e\x7d\x6e\x2d\x9a\x4e\x51\x42\xe2\x6b\x94\x15\x45\x8f\x09\x0c\x7b\x11\x8e\x98\xaa\x57\x9d\xa7\xc2\x12\x9f\x77\x11\xbe\x8e\x28\xc1\x9c\x80\x34\xa6\x1b\x4c\x93\x56\x7a\x70\x64\xa9\x77\x2d\x09\xea\xce\x8e\x9b\x88\x5f\x8a\x2f\xd2\x52\x85\xcf\xb3\x41\xb2\x53\xa9\x8a\x4c\x2e\x87\x96\x97\x68\x67\xa7\x66\xb8\x5c\xd1\xc8\xd1\x68\x94\x3e\xdf\xd6\xbf\x67\xe5\x29\x9f\xeb\xb9\x0d\xd3\x01\x7d\x0f\xf9\xa5\x94\xe8\xd1\xc4\xdb\xce\x17\xbd\x66\xbe\x6f\xad\xfa\x78\x0a\x31\x26\xcc\x09\x60\x1c\x3b\xd0\x09\x62\x98\x24\x0e\x4c\x1c\x98\x56\x31\x75\xfd\x82\xc3\x4a\x0a\xc4\x44\xdf\x4b\x09\x62\xef\xf4\x0c\xdf\x4e\x8a\x95\x39\xd3\x0b\xfb\xd3\x27\xb1\x8e\x4f\x9f\x46\x0c\x88\x79\x03\xe6\xe7\xcc\xb8\x12\xeb\x99\x79\x20\x2b\xea\xa1\xbe\x47\x93\x18\x05\xec\xfe\x7e\x5b\xfd\x96\xc1\x50\xc9\x28\xdb\x03\x7e\x1c\x4a\x6f\xfb\xc9\x14\xce\x72\x4d\x2c\x3b\xf3\x8e\x92\x2f\xb7\xba\x91\xac\x98\xaa\x16\xf1\x12\x32\x54\x59\x2c\xb4\x34\x98\xc7\x9b\x83\x8b\x71\x2e\xdb\x90\xb8\x59\xb7\xf7\x54\x81\xd4\x14\x49\xb6\x07\xcb\xa5\x97\xa9\x42\xb3\xf6\x82\x10\x00\x3a\x0a\x14\xbf\xc0\xb4\xa4\x1a\x08\x5f\x41\xdf\xc4\x9e\x2d\x3c\x2a\x4f\x82\x66\xee\x84\x00\xfa\x4b\x14\x27\xc8\xc1\x23\x6a\xf7\x37\x4c\x95\xe7\xf2\x05\xf6\x97\x15\x7e\x37\xdb\xec\xfe\xde\x95\x85\x3d\x5d\x2e\x20\x7a\xcc\x37\xb1\x7c\x5b\xc3\x92\x3d\x5f\x78\xc8\x1f\xb2\x9c\xc1\xd5\x10\x2e\x47\xa3\x11\x32\x30\xf3\x3d\x9a\x20\x8a\x70\xa0\xd1\x93\xcf\xc2\x99\xc2\x04\xff\x81\x39\x97\x08\x61\x47\xd3\x83\x04\x85\x4e\xcf\x49\x16\x73\x44\x3d\x3f\xd7\x82\xef\x05\x32\xc9\x5a\xae\xa0\x66\x8a\xbd\x81\x1d\x7b\x9f\x67\x57\xb5\xf1\xd4\x7a\xaa\x33\x84\xbe\xbf\xb7\x7e\x25\x2a\xd7\xe7\x8e\x67\xf8\x75\x2f\xf3\x4d\xd9\x5b\x0d\x74\x2c\x70\xb9\xb9\x03\x94\x6d\xfa\xce\x8e\x64\xf4\x46\xcc\x4e\x75\xce\xf9\xbe\x39\xe8\xcb\x9c\x4a\x3b\xb7\xbc\x97\x50\xc4\xa6\x88\x3a\x97\xc8\xe1\x5f\x3b\x84\xe6\xc8\xd0\x96\x71\xf2\xf4\xde\xc9\x2a\xe7\x1e\xdb\xd9\x31\x6a\xf8\x82\x3b\xe3\x48\x68\x4e\x03\x99\x30\x2a\xc2\x6f\xb9\xf4\x01\xdb\xd9\x91\xe4\x6d\xe9\x7b\x18\x48\x95\xdd\x49\xc6\xe0\x4b\xc9\x12\x8d\x62\x0f\xfb\x5b\x25\x17\x59\xb8\x45\xf4\x81\x49\x8b\xd0\x26\xa3\x22\x23\x0c\x62\xa3\x26\x6d\xe2\x83\x68\xb4\xf7\x73\xf4\xef\xc9\xcf\xd1\x4f\x3f\xf9\xf1\x45\x34\x36\xf8\xe2\x28\xad\xec\x19\x7a\x0b\x0f\x8e\x90\x20\x31\xea\xcc\x22\x70\xc1\x07\x1b\xeb\x2c\x7e\x31\x27\x29\xee\x4c\xec\xe7\x3b\x8a\x26\xd1\x17\x37\xcb\xbb\xd8\x37\x9f\xfb\x40\x74\xe7\x03\x77\x4e\xc2\xdf\x2a\x3e\x28\xbc\xca\xbe\x79\x9f\xde\xd0\x29\x4f\xe3\x03\x68\x14\x66\xce\x59\x57\x41\xbe\xfe\xcc\xa4\x6a\x4a\x76\x26\x21\xd0\x15\x50\x7b\x33\x88\xe1\x15\x17\xb7\xae\xe2\x68\x36\x2b\x66\x2c\x7e\xa1\x9e\x66\x1f\xec\xf6\xe6\x34\xba\x86\x0c\xed\x4a\x36\xa2\xd4\x53\x59\x56\xeb\x7c\x4e\x2a\x3f\x50\x2b\x74\xc1\x5d\xfe\xc0\x5e\x21\x56\xd6\x1c\x3b\x29\x18\x97\xcb\x26\x30\x24\xbb\xbd\xf0\x16\xc3\x59\x14\xf4\x50\x8c\x38\x92\xf4\x20\x1f\x27\x83\x45\x6e\x55\x2b\xac\xc9\x7a\xf6\xd9\x48\x9e\x84\xb4\x20\xad\x66\x62\xcd\xad\x66\x9d\xe7\xfe\xbd\xcc\x1b\xce\xe7\x3d\xc4\x49\xd6\xae\xe0\x71\xbf\xda\xb4\xff\xf4\xe1\xb7\xd7\xbf\x40\x9a\xf4\x19\x9a\xcd\x63\x4e\xe2\xee\xa2\x70\xe8\xee\x05\x7f\x7b\xff\xf1\x8f\x1f\xff\xea\x82\xcb\x98\x04\x9f\x87\x7f\xb8\x53\xfc\x60\xe2\x0e\x2f\xc6\xc0\x15\x29\x2a\x65\xed\xf0\xe1\xc5\xc5\x31\x70\xf9\xfc\xaf\x23\x74\xe3\x72\x2e\xe4\xe2\xc2\x7d\x21\x18\x3c\x77\xcc\xd7\xc1\x97\xe5\x24\x53\x72\xe3\x8e\xc5\x3b\x8d\xba\x63\x70\x71\x57\xe8\x69\x1f\xb8\x7f\xd7\x82\x13\xe0\xfd\x8a\xe1\x7b\x49\x4c\x58\xda\xb3\xa8\x07\xc0\x3b\x9e\x8a\x3a\x27\x5d\x3a\x95\xdd\x0e\xf6\x80\x3b\x1d\x88\xdf\xf6\xc7\x20\xf7\xda\x91\x22\x8c\x6c\x06\x2e\x0e\x8e\xc0\x1e\xb8\x70\x65\x25\x26\x77\x3c\x2e\xb4\x16\xad\x0e\x72\x0f\xf9\x6c\xdc\x39\xa4\x70\x86\x18\x17\x24\x86\x17\xe3\x65\xe1\xbb\x16\x2b\x0b\x64\xfd\xcd\xee\x4b\x3b\x06\x12\xdc\x3d\x99\x43\x54\x77\x2c\x9e\xf1\xf7\x17\x07\x87\x60\x8f\xcf\x87\xdf\x7b\x5d\x26\xde\xe6\xf5\x14\x26\x67\xd7\x30\x76\x87\x13\x18\x27\x08\xb8\x8b\xf9\x35\x14\x4d\x5d\x35\xfe\xf2\x0f\x60\x86\x18\x1c\xde\x49\xb2\x2c\x42\x2f\x5b\x1d\x87\xfe\xf4\x32\x71\xf9\xdd\x89\x15\xda\x7e\x4a\x10\x4b\x4f\xdc\x07\x8d\xba\x0c\x54\x9c\xc5\x3b\x06\xaf\xe4\x68\xee\xd2\x37\x0f\x26\x6e\x75\x30\x39\x62\x97\xcf\xa5\xb9\x85\xc9\x06\x48\xbd\xf5\x9c\xe2\xfa\x73\xfa\xfe\xbf\x83\xcb\xff\x7e\xf7\xe7\xff\xdb\x7a\x4e\xdd\x49\x0c\x93\xa9\x90\x65\xd5\x72\x5c\x90\x3e\x53\x38\x0d\x5c\xce\xc8\xb8\xc0\xdd\xc9\xb0\xac\x80\x63\xfc\xb8\x84\xd1\xb5\x40\xf6\x43\xb0\x67\x9c\xf5\xe2\x09\x12\x0f\x8e\xc1\x93\x22\x76\xa5\x87\x4e\x1d\xd8\xdc\x67\xfc\xcf\x27\xe0\xe2\xe0\x29\x18\x1c\x0a\x0c\xdd\x03\x17\x07\x4f\x80\x38\x57\x85\x3f\x8e\xc0\x60\x1f\x5c\xb8\xbf\x2f\xd0\x02\xb9\x29\x16\xe7\x7e\x34\x9f\x97\xdc\x61\x11\xd0\xe8\xcd\x50\x92\xc0\xab\xec\xb8\x48\x18\x89\x21\xf7\xc1\x60\xdc\xf2\x14\x66\x0b\x39\x50\x9f\x1e\x80\x0b\x37\x24\xb3\x74\xaa\x66\x37\xc0\xe5\xf2\x51\xed\x1c\xf5\x3c\xf7\x41\xb1\xb3\x9a\x43\x09\x8a\xdd\x29\xd8\x0e\x4c\x70\xee\xa9\x09\x72\x68\x8a\xc5\x72\x8e\xd9\x35\xe8\x42\xb1\x21\x1f\x1c\x4a\xf6\x78\xdc\x15\xe0\x06\x71\x35\x29\xf0\x5c\x21\x94\x1b\x42\x06\x7b\x98\xb0\x68\x92\x79\xb7\xe9\x77\x2a\x9d\x0d\x8c\x11\x15\xdd\x0f\x04\x41\x56\xb3\x7b\xa2\x26\x77\x38\x06\xae\x63\x76\xd0\x73\x05\xc4\x8e\xb2\x99\xda\x28\x7d\x7e\x3a\x09\xa3\x04\x5f\x55\x5c\x0a\xb9\xc6\xe9\xf8\x4f\xd3\xf1\xb3\x71\xf6\x81\xbb\x6d\x1f\xe3\xc0\x82\xf1\xcf\x32\x18\x0a\xda\xaf\x76\x53\xde\x9b\x79\x90\xe8\x41\x8f\xb3\x45\xcb\x35\xa6\xc8\x11\x31\x34\x13\x37\x86\xfa\x5b\x11\xdd\x74\x72\xe3\x15\xd0\xcf\x98\x7f\xe9\x5c\x17\xf1\x5d\xce\xef\x48\xcd\xef\x68\x0c\x5c\x99\x5a\xd9\xad\xc4\x97\xea\x49\x54\xf7\xcb\x37\x3b\x59\x88\x0a\x2a\xab\x74\x6c\x59\x1d\xff\xf7\x57\xb2\x70\x20\x45\x0e\x26\x37\x4e\x4c\xae\xae\x50\xe8\x90\x05\xeb\xb7\x3d\x63\x15\xbd\x7e\x98\x22\x8a\x9c\x1b\x98\x38\x10\x3b\x92\x0d\xe2\x9d\x47\xf8\xaa\xae\xf7\xf1\xb8\xfd\xb1\xae\x82\x7c\x9a\x82\xbb\x1a\x46\x8f\x13\xea\x11\xde\x3c\xd0\x81\x33\x8f\x11\x4c\x90\x13\x4c\x51\xf0\xd9\xb9\x25\x0b\xea\x9c\x0b\xc3\xf2\xab\x97\xbb\xc2\x07\xb4\x81\xc1\x29\x9f\x87\x96\xbb\xb6\x89\xad\xfc\x71\x88\x7e\x1c\xa2\x1f\x87\xa8\x4d\xaf\xa5\x6b\xb6\xf8\xd9\x21\x38\x6a\xd5\x5d\xf9\xcb\x7d\x70\xd0\x20\x0e\x0d\xca\x9d\x80\x1c\xeb\x6c\xe3\x2a\xaa\xdb\x14\x2f\xd7\x23\xce\x87\x76\xe2\x70\x8b\x63\x60\xa8\x59\x78\x17\xd2\x08\xf6\x62\x78\x89\x62\x17\xb8\xbf\x50\x04\xc3\x80\x2e\x66\x97\x0d\xcc\x4f\xca\x34\xdf\x46\x28\x0e\x2b\x24\xd7\xcb\xb4\xb7\xa4\x59\x7a\xcd\x78\x8a\x46\xa1\xb9\xc3\x2e\x57\xa1\x5c\x11\xd8\x42\x96\x61\x11\x8b\x51\x0b\xae\xaf\x61\xd9\xab\xa8\x22\x2c\xb3\xb3\xc8\x4e\xad\x0e\x4d\x2d\xbf\x5a\x12\xdf\x04\x1f\x9f\x3c\x18\xc2\xb5\x06\x5a\x3a\x91\xd5\xa1\x96\x8e\xc3\x45\x72\x18\xf7\x18\xa4\x57\xc8\x36\x94\x12\x59\x7b\xc6\x98\xb5\x80\xee\xb2\x29\x2d\x36\xa6\x1b\x61\x2c\x69\x95\x3a\xbc\x6c\x80\xb9\xa0\x02\xab\xc1\xbb\x0d\x30\x5a\xe3\xa7\x75\x1d\x95\x72\xd2\xaa\x28\xd9\x02\x20\x8c\x90\xf8\x12\x76\x3e\xba\xfa\x64\x45\x78\xbe\x60\xea\x6c\x0d\x80\xee\xad\xc7\xc8\xd5\x95\xa2\x2b\x87\xe0\x10\xb8\xe2\xd2\xbc\x24\x5f\xd2\x43\x67\xd9\xc3\x3a\xf8\xae\x85\x5e\x25\x58\xb7\xbf\x76\x24\x03\xb3\xaf\xc1\x7f\x54\x2d\xfb\xb7\xe2\x5b\xb4\x8a\x52\x86\x93\x19\x2a\xca\x31\xb8\xe8\x8c\x95\x0f\xa4\x21\xce\xef\xef\x74\xdf\x84\xd0\x5f\x50\x1c\x90\x19\x72\x18\x71\x4e\x4e\x5f\x27\x95\x87\xb1\xd3\x31\x68\x58\xc3\x25\x09\x6f\xd7\x59\xc1\xbc\xf6\x76\xe3\xcb\x50\xec\x23\x73\x10\x86\x97\xb1\xe0\x1f\x85\x9f\xa6\x23\xc3\xe4\x9c\x20\x5e\x24\x0c\xd1\xbe\xf3\x17\xe4\x48\x35\x49\x7c\xeb\x20\x1c\x90\x05\x85\x57\xc8\x61\x53\xe4\x2c\x12\xe4\x90\x89\xec\x2d\xc2\xce\x9c\x92\x70\x21\x0d\x97\x86\xdb\x4c\xe2\x4c\x08\x15\xcd\x2f\x51\xc2\x9c\x04\x05\x0b\x1a\xb1\x5b\x67\x4e\x39\x55\x0e\x50\xd2\xb7\x2d\xe1\xa1\xe1\xbb\xc6\x2d\xa4\x41\x1c\x47\xd9\xed\x1a\x92\x20\xe9\xc5\x11\xfe\x5c\x0b\x76\xfd\x25\x54\x4a\x2d\x7e\xe6\x06\xd9\x81\x3b\xe4\x13\x53\x31\x23\x2f\xdf\x9e\x9e\x8b\x0a\x69\xfa\xc6\x72\x45\x64\x8d\xd2\x8b\xb3\x59\x2c\x35\x82\x42\x5b\x26\x18\x3a\x4c\xc8\x1c\x61\x44\x1d\x4c\x28\x9a\x20\x4a\x95\xca\xf5\x10\xb8\xfa\x7a\x74\x3f\x5d\xc6\x30\x3f\xc5\xf7\x08\x86\x62\x6f\x42\x12\x08\xd3\xb0\xf6\x36\xad\xba\x6e\x9a\x5e\x15\xe0\x12\x23\x48\xf1\xe6\x01\xf3\xfa\xec\xe4\xfd\x9b\x02\x78\xa4\x1e\x7f\x57\xe3\x57\x0f\x23\x76\x43\xe8\xe7\x08\x5f\xed\x66\x88\xd9\x83\x41\x9c\x6c\x06\x74\xbf\x92\x38\x26\x37\x02\x78\x57\x8b\x28\x44\xab\x00\xad\x25\x46\xaf\x70\x0f\xb4\x10\x7a\xf7\x0b\xd7\xeb\xba\xe4\xbd\xd2\x02\x05\xdc\x17\x90\xc3\xea\x35\xb9\x8a\xb0\x6b\xcc\x60\x2f\x1b\x51\x1b\xdb\xc0\x85\x7b\xb8\x77\x20\x76\x88\xd1\x05\x2a\x32\x6c\x5d\xa5\xdb\x16\xac\x40\x6b\xab\x5b\x27\xb9\xa5\x8b\x9c\x6b\xbf\xb0\x6d\x12\x4f\xb5\xad\x6d\x2a\xed\x3b\xa9\xf2\x22\x14\x78\xcd\x77\x30\x9a\xf0\x6d\x14\x41\xde\xe8\x77\xe9\xe2\x18\x40\xfe\x22\x80\xf3\x88\x09\xd7\xc7\xd4\xa8\xa5\xf4\xd0\x79\x80\xb9\x31\xb9\x41\x34\x80\x09\x6f\x17\xa3\xd4\x9c\xf4\x9b\xb4\x9f\xf0\xe6\x3d\x46\x61\xf0\xb9\x07\x29\x85\xb7\x7c\x1c\x18\x4c\xc5\xa0\xe2\x62\xe9\x6a\x01\xcc\xec\x6e\xa9\x01\x90\xd6\x1a\x00\x71\x95\x01\x30\xf5\x7f\x00\x86\x29\x30\x2b\x54\x18\x0e\xb7\xf7\x80\x9a\xa4\x30\xc6\x99\x36\x42\xda\x6c\x23\xe4\xf2\xf4\x0c\xe1\x45\xa3\xf1\x5e\x98\xde\x4d\xaf\x9e\xcc\xcb\xcb\x6c\x16\x4d\x3c\xe1\xbb\xd3\x8f\x12\xe9\xc3\x83\x7c\x1d\x11\x45\x3d\xe4\x2f\x3d\xe4\x9b\xce\x8f\x45\xef\xc5\xed\xa2\xe7\x67\xc1\xaf\x94\x5f\xd1\xca\xc5\x3c\xeb\x58\x0e\x38\xa1\x64\x66\x19\x41\xbb\x7a\x22\xd5\x5a\xf8\x33\x26\xc2\x25\x31\xf3\x66\x44\xc6\x1c\x75\x2c\x56\x1a\x88\x50\xe5\xcb\x88\x7c\xe5\xe0\x7d\x0c\x7a\x03\x7f\xcb\x95\xcd\xdd\xd1\x68\x84\x0b\x1e\xab\x3b\x3b\x1e\x1e\xe5\x9e\xf4\xf9\xd1\x15\xbe\x8a\xee\x6f\x70\x2e\xbe\xb9\xbf\x77\xcf\x91\xfc\xdc\xba\x30\xd1\xf8\x44\x7b\x3f\xa9\x4f\x76\xff\x8f\xf7\x7c\xf8\x31\xba\x7f\xe5\x63\xe6\x3d\x1f\x1e\xdf\x0f\x9e\xdc\x1f\xec\xfb\xde\xf3\xe1\x69\x0c\x67\x73\x14\xfa\xcf\x45\x27\xff\x6b\xb7\xcf\x50\x22\xa2\x7b\x73\x2b\x2d\x40\xcb\xbf\xb3\xba\xa2\xbd\xc2\xd7\x30\x8e\x42\x07\x32\xc6\x19\x60\xce\x44\x26\x73\xca\xaf\x5d\x4c\x70\x4f\xec\xcd\x65\x9c\xb9\xd2\xf6\xff\x8e\x5f\x61\x87\xd0\x10\x51\xde\xf4\x12\x39\xba\x09\x10\x1f\x88\x23\xe6\x48\xc7\xc8\x44\xba\xb5\x4d\xe1\x35\x72\xa0\x73\x51\xd8\xee\xb1\xe7\x3b\xb2\xb6\x70\xdf\xf5\x97\x9e\x9f\x8b\xa9\xe0\x3b\xeb\x71\x5a\x36\x1a\xb1\xfb\x7b\xf6\x1f\x48\xb9\x90\xf9\x3b\x3b\xc2\xfb\x5e\xfd\x95\x3a\x9b\xe1\xd1\x1e\xa0\x86\x77\x19\xf3\x7f\xc6\xff\xce\x7e\xc6\x3f\xfd\xe4\xd3\x0b\x3c\x1e\xa1\x0b\x9c\x7a\x94\xd1\x6f\x16\x5c\xb0\x19\xe3\x3b\xa9\x37\xbe\xbf\x7a\xfb\x97\x79\x44\x5e\xbd\xb3\x1b\xdf\x6b\x0c\xea\xc7\x60\x50\xd6\x0e\xef\x8d\xb9\x98\x08\xf1\x55\xaa\x6e\x06\xb6\x26\x9f\xd1\xad\xf0\x65\x6c\xd5\xe8\x34\x8e\x82\xcf\xa5\x96\x87\xd9\x65\x2b\x94\x80\x31\x0a\x7f\x51\x85\x40\x19\xe5\xb3\x07\x9c\x7c\x41\x1c\x72\x8a\x9d\x4d\xf4\x40\xde\x91\xda\xc7\x2d\x25\x7a\x3d\x46\xa3\xab\x2b\x44\x85\xd5\xf5\x08\xec\x97\xac\xc8\x95\x1f\x8a\xff\x55\x7d\x35\x50\x4c\x09\x5f\x0f\x67\x00\x5c\x70\xb1\xff\x2c\x33\x66\xca\x2b\xb4\xc6\xe5\x44\xaf\x40\xdd\x7b\x9c\x33\x33\xef\x3c\x7d\x4d\x2a\xa3\x76\x87\x8b\x29\x4f\xec\xd3\x9b\x29\x19\x0d\x0e\x40\x3c\x3a\xd8\x07\xd1\xe8\xe0\x18\x2c\x46\x87\x7b\x20\x18\xdd\x5d\x23\xca\xa2\x00\xc6\x43\x8f\x8d\xee\x96\x00\x7a\x0c\x2c\x2c\x77\x42\xc9\x85\xf3\x3f\x06\x3b\x3b\x59\x54\x6c\xea\xae\x39\x30\xc3\x98\x06\xe3\x61\x6f\xa0\x0e\x9b\xc7\x7e\x1a\xf8\xff\x5b\x9f\x57\x7e\x65\xf1\xa1\xa2\x0d\x0e\xb5\xa7\x8f\xf5\xde\x68\x34\x62\xcf\xf5\x50\xbd\xc1\x90\xf5\x06\x7a\xc0\x83\x27\x96\x8a\xb7\xce\x5e\xfa\xfa\x28\x3f\xa1\xd4\xc3\x59\xf7\xc5\x1b\x32\x1f\x88\x6b\x99\x60\x06\xe3\xe1\xdd\x72\x09\xc2\xda\x5b\x9f\xb4\x70\xfb\x01\x21\x99\x55\x84\xc7\x87\x64\xe6\xfa\x80\xe3\x07\x6f\xa7\xf1\x66\xb8\x3d\x00\x84\x46\x5a\x10\x1a\xba\x7a\x23\x5d\xf0\x19\xdd\x5e\x12\x48\xc3\x13\x61\xca\xe1\x54\x28\xc2\x51\xce\xeb\x52\x44\xb0\x7c\x12\x3e\xe3\x76\xef\x77\x35\xe3\x04\xc9\xca\xd8\x1a\x3d\xc5\x77\x21\x99\xf5\xf9\x9f\xd2\xeb\x5e\x85\x8c\x7e\x8a\xa3\x84\x71\xd1\x44\x86\x53\x8a\x46\xe9\x23\x1d\x22\xfd\x89\x92\x05\x43\xf5\x2d\x97\x20\x8c\xc2\x57\x38\x41\x94\x9d\x49\x17\xc9\xd2\xc4\xff\x17\xc7\xee\xec\x63\xe5\x49\xe9\xb9\xff\x57\x5a\xcd\xdb\x7a\x9a\x5d\xe0\xca\x9f\x7e\xae\xe8\x37\x5f\x8a\xaf\x9d\x9a\xb3\xfe\xfb\x57\x88\x9d\x30\x46\xa3\xcb\x05\x43\x9e\x61\x92\x88\x51\x78\x79\xeb\xfa\x5b\xb2\xa9\xa2\x2d\xb5\xb3\x41\xbe\xbf\x04\x37\x51\x1c\xbf\x94\x49\x05\xab\xd6\x55\xbb\x21\x05\x28\xf7\x29\x9a\x91\x6b\x54\x01\xd9\xf4\xed\x12\x28\xf5\xc1\xf0\x2e\x47\x73\x73\x6e\xfc\xa8\x2f\x85\xc7\x7e\x18\x25\x73\xc8\x82\xe9\xd9\x35\x5f\x01\xbf\x43\x7f\x23\x8b\x04\xc9\x3f\xdd\x40\x10\x6b\xbe\x16\xdd\xd5\xb0\x7c\x76\x45\x2c\x6d\x34\xf1\x2e\x12\x10\x83\x08\x2c\xc6\xfd\x08\x07\xf1\x22\x44\x89\x87\xfa\x9f\xd1\xed\x29\x09\x91\xcf\x87\x4c\x18\x99\xf3\x8b\x0f\x5e\x41\x09\x83\x2d\x15\x17\xe9\x15\x41\x99\x78\x7f\xb8\xa0\x24\x46\xff\x67\x24\xf6\x4f\xba\x91\xfc\x01\x64\x5b\xe5\x0b\xae\x29\xed\x7e\x34\x1a\x25\xf7\xf7\xe6\x9f\xb1\x8e\x14\x91\x55\xde\xd5\x09\x7a\x2e\x69\xca\x90\x5e\xec\x8d\xb7\x24\xbe\xd3\x05\xee\x63\xf4\x85\x79\x26\x8d\x48\x49\x8f\x07\x47\x2c\xfb\x1a\x0e\x59\xba\xfd\xfe\xce\x0e\xec\x4f\x48\xb0\xe0\x08\xec\xfb\x4b\x33\x63\x40\x20\x5c\xd4\xfb\xc6\x59\x1d\x5f\xa4\x93\x1b\x73\x50\xcc\x29\xe2\x10\x7e\x29\xef\x63\x05\x09\x02\x42\x0b\x52\xa5\x38\x65\x05\x89\x3b\x14\x73\x70\x7d\x13\x38\x5b\xe1\xce\x8e\x47\x44\x4c\x2c\x0e\x5f\xf1\x2b\xc1\xb3\x92\xb8\xd1\x68\x14\x8a\x90\x1c\x7a\x51\x3f\x65\x8f\x02\xe2\x8f\xd3\xe5\x2e\x97\x40\xb2\x05\x76\x9c\x12\x9a\x65\x14\x3e\x17\x3d\x2a\x64\xec\x93\x39\xc2\x26\x9e\x5f\xa0\xb1\x3f\xcc\xb5\x08\x62\x92\xa0\x62\x13\x11\xc8\x9d\xa0\x61\x21\x28\x48\x1e\xdb\xad\xca\x13\x52\xa4\x65\xd9\xd5\xbb\x3d\xd0\x6f\xad\x3b\x8f\xd2\x0d\x56\x9d\x19\x04\x81\xc1\x4b\x29\x4c\x89\x0d\x07\x7c\x45\x15\xf3\xaa\x19\x7e\x4f\xef\x94\x1e\x26\xc9\x11\x9d\x74\x0c\xe0\xf6\x06\x6e\x99\x06\xc0\x30\xcc\x4e\x8b\xd6\x8b\x79\x3e\xe0\x67\x3d\x24\x37\xc6\x84\x98\x7f\xb7\xff\x94\x5f\x8b\x7a\x17\xb9\xec\x92\x8e\xaa\xb6\x12\x3c\xdb\xce\xb5\xd8\x7f\x6a\xfe\xfd\x5c\x60\x80\x71\xb1\xf0\x2e\xf4\x76\x69\x8a\x60\xc4\x65\x8c\xfd\xa1\x31\x44\x4b\xd2\xb2\xe4\xf8\x94\x93\x6e\xc3\x66\xe9\x76\xc1\xa6\xbd\x30\x92\x35\x06\xa7\x90\xb2\xfe\x17\xad\xdb\x79\x38\x1f\xf5\xec\x81\x60\xb5\x8d\x39\xb8\x40\x45\x66\x0d\xdd\x28\xe4\xfd\x10\x3c\xbc\x3b\xfd\xd3\xc9\x9b\x3f\x9e\x0d\x2f\xee\xe4\xa9\x18\xe6\xd4\x1f\x01\xc1\xe1\x90\x33\x7c\x1f\x64\x8a\x3c\x4d\xb2\x2f\xdc\x58\xea\xa1\x96\x20\xfd\x6e\x81\xcd\x2f\x73\x2d\x85\x17\xce\x72\xbc\x04\x62\xf5\xc9\xf0\x8e\x0f\x3f\xbc\xeb\x3a\x7c\xd5\x60\xcb\xf1\x72\x09\xcc\x27\x43\xce\x2e\x9a\x7f\x89\xad\x6b\xbf\x57\x0d\x0e\xcb\xa0\xe3\x6e\x97\x62\x5e\x37\xe5\xe2\x4c\xeb\xa5\xac\xd9\xc1\xe9\xfc\xcd\x17\x4a\xec\x52\xd6\xb9\xc4\x44\xf7\x8f\x0b\x48\x39\x7f\x7f\x12\x28\x0f\x52\x7d\x20\x94\xab\x33\x6f\x93\x44\xf8\x33\x67\xf9\xe7\x91\xe9\x13\x9d\xd4\x3a\x3f\x1f\xab\x07\x3d\x01\x8b\x54\x67\x98\xd0\xc0\x55\xee\xf4\xad\xfd\x83\x53\xd3\xdb\xb1\x70\xd1\xdc\x1f\xe7\x14\x90\xc0\x7d\xc1\x11\x45\x9a\xad\x52\x54\xcd\x6b\x68\xa5\x70\x97\xbe\xcd\x1c\x3b\x2d\xfe\xd6\x72\x90\x83\xd2\x20\xe8\x0b\x12\x53\x57\xb8\x6f\x1d\x41\x1d\x8b\x75\xbb\xe7\x07\xa6\xaa\x7f\xd3\xa5\xad\xa4\xd9\x35\xd4\xa0\xc7\xca\x3f\x38\x21\x0b\x1a\xa0\x1c\xfc\x81\xfb\x82\xe0\x54\x62\xbe\x70\x13\xc4\x58\x84\xaf\x92\xe1\xae\xb2\x00\x0c\x59\x1e\x88\x4f\x4a\x2a\x6f\x31\x1d\xd3\xb6\xc0\x05\x4e\xd3\x6d\xf8\xc2\x15\xd8\x2b\xfa\xe7\xf3\x90\x06\x03\x5b\x1f\xd2\xbd\x4b\x12\x82\x92\xc4\x5d\x33\xda\x41\xc3\x68\x9d\x80\x24\x10\x5c\x83\x48\x99\x5a\x2a\xe1\xd2\x31\x18\x67\x70\x0c\x9e\x55\x39\x00\x97\xbc\xcb\x53\xfd\x82\x44\xb2\x14\x1b\x5c\x35\x74\xc5\x46\xec\x83\x27\xe0\xc2\xe5\x77\xbd\xc5\x19\xbd\xba\xa5\x6a\xa8\x9b\x8b\x2d\x1c\xe7\xbd\xd8\xf5\x84\x4e\x16\x6c\xfa\x8e\x92\x49\x24\xfc\xca\xf9\x5f\xbf\x12\x3a\x33\x27\xf4\x4c\x18\x05\x39\x15\x9c\xab\x76\x02\x4e\x92\x07\x4c\x31\xc4\xe8\x3e\xfb\x60\xa2\xbb\x72\x45\xce\xd5\x34\xc5\x2a\x87\xfa\xe5\x2c\x62\xfa\xfb\x63\x39\xcb\xa7\x6d\xd6\x56\x85\x16\x4a\x03\xd2\xdd\x1b\x42\xc6\x34\x68\x2c\x99\x71\x1a\x89\xa4\xb9\xc5\xb8\x8c\x3a\x87\x3c\xec\x15\x3c\xd9\x57\xe8\xaf\x60\x25\xe3\xe8\x26\x60\xf2\x54\xc2\xe4\xb8\x93\x3b\x4d\x83\xa1\xac\x10\x34\x55\x0d\x93\xdc\x15\xbd\x11\xa8\x74\xee\xf1\x6b\xc2\xa5\xfc\xfa\x29\x38\xce\x9b\xa6\x8a\x0d\x9e\x34\x39\x46\x82\x7d\x70\x00\xb4\xeb\x65\x4b\x23\x56\xce\xea\xa4\xae\x5e\xad\xab\x03\x2e\x17\xe8\x22\xb2\xd0\x97\xa4\x3b\x33\x48\x0b\x50\xe1\x41\xc6\xf1\x53\x09\x90\xb3\x18\x28\xa5\xfb\x8b\x11\xeb\xa4\xf8\x2b\xf2\x56\xa9\xea\x0f\xd6\xaa\xa7\x68\x37\xa3\x14\x45\x73\x52\xa1\xa9\xe2\xaf\x92\x88\x11\x7a\xbb\x4b\xa2\x30\xe0\x04\xea\x3a\x0a\x11\x75\xfd\x15\x34\x50\xa2\x85\x00\xed\x28\x0d\x9e\x36\xd4\x19\x9a\xcb\xb0\x04\x13\xa7\xa2\xb7\xe8\x42\x80\xbd\x2f\x45\x16\x42\x5f\xbd\x5c\x02\x41\xf4\xcb\xc2\x9a\x5c\xd3\x55\x2a\xa7\xe5\x76\xd1\xe8\x80\x0b\x62\xa5\xc6\xc5\x51\x5c\x7f\x4b\x1a\x2d\x46\x68\x67\xc7\x6b\xea\x5c\x3b\x2a\xbb\xbe\x0f\xd4\x67\x4c\xd8\x37\xec\xc3\x18\xcd\x95\x11\xcb\xf0\x05\xdf\x4a\x97\x8f\x64\xea\x14\x26\x0c\x53\xee\x22\x41\x5a\x84\xd4\x6c\x89\x77\xc7\xc9\xf5\xd0\x3a\x08\x6f\x7b\x3b\x47\x43\xbc\xf4\x05\xc4\xc8\x22\xb7\x7f\xe9\x20\x0d\x50\x5b\xb0\xe9\x6f\xc2\xb4\xe3\xfa\x3b\x3b\xaa\xda\xd7\x9c\xf4\x65\x87\x5e\x7b\xa8\x88\x4f\x73\xaf\x45\x06\x2d\xeb\x7a\xe4\x0b\x3e\x79\x7d\xaf\x97\xc5\x4a\xd8\x4e\x54\xe1\x37\xe6\xb7\x15\x2a\xc5\x9d\x6d\x13\x29\xdf\x9f\x9d\x9f\x7d\x30\x44\x3a\xf1\xa6\x2c\xfe\x21\xcc\xe8\xed\xf0\xc2\x0d\x62\x04\xe9\x99\x8a\xb3\xe5\xdf\x9f\x7f\xfc\xe5\xb7\x57\x66\x07\x31\x81\x61\x84\xaf\x0c\x81\xf0\xbf\xc4\xb5\x6e\x08\x84\xd2\x4b\x42\x48\x82\xaa\xb5\x94\x2f\xcf\xde\xbf\x7f\xfb\xde\xe8\xca\x68\x27\x7e\x1d\xde\xa1\x2f\x11\xb3\xcd\xe2\xc3\x5f\xdf\xbd\x7a\xf3\xc7\xf2\x32\xc0\x7a\xd3\x93\xdb\xdd\x72\x7f\x2d\x82\x68\x17\x8c\xf8\x36\x91\xb5\xb3\xe4\xf2\xd7\x5f\x7f\x79\xb3\xb7\xbe\xd8\xb9\x93\xf9\xd0\xec\x40\xc6\x68\xb2\x92\x94\x79\xd8\x56\xcc\x34\x1c\x49\x33\x96\xfc\x28\x63\x44\x28\x4a\xa4\xe7\x86\x50\x65\x1a\x8c\xef\x93\xb2\x38\x23\xce\x40\x49\x9a\x31\x1a\xa6\xbd\x64\x56\x39\x9b\x9c\x58\x2f\xeb\x4a\x3c\xb3\x76\x9f\xbe\x6d\x27\x06\x35\xc8\xa4\xc6\xe9\x28\x04\x71\x5a\x20\x60\x5a\x55\x39\xcb\x9e\x8d\xfc\xac\x24\x9a\xd4\x7c\x38\x78\x62\xfb\xb2\x56\xb6\x1e\x0c\x52\xd7\xdc\x7d\xe9\xb1\x6f\x0a\x17\x83\xa7\x62\xce\x05\x0f\xba\x26\x3e\x56\x07\x83\x76\x64\x60\x55\x00\xf0\x11\x38\xce\xa7\x41\xe8\x16\x17\xe0\x16\x43\x7e\x4b\x61\xbd\x62\x99\x98\xb0\x28\x40\x4e\x9a\xac\xc0\x1e\x24\xbe\x67\x86\x82\xbf\x11\x5c\xf5\x0a\x51\x71\xaa\x9b\x42\x78\x79\x6e\x95\x40\xfa\x9f\x6d\x20\x50\xcb\xad\x8c\x31\x56\x1e\xb6\x82\x63\x72\x26\x30\x8a\xa5\xc9\x5d\x4c\x88\x7f\x71\x49\xeb\x3c\xc6\xe5\xbf\xbf\x20\x87\xa2\x00\x45\xd7\x28\x74\xa0\x23\x98\x0b\x67\x42\xc9\x4c\xc6\x68\xbd\x7d\xf5\xf2\xd4\xd1\x8c\xa2\x73\xb9\x60\x4e\x40\x16\x71\x28\xfc\x7d\x63\x72\x25\x7c\x7d\x89\xf6\xf4\xbd\x89\xd8\xd4\x89\xda\x87\xec\x75\x82\xe5\xe0\xc1\x61\x59\x5e\x57\xca\x21\x77\x05\xea\x87\x29\x2a\x80\x6e\x0a\x13\x87\x22\x7e\xf3\xa0\x50\xba\x47\x43\xc1\x8d\x4a\x88\xf7\x9d\x77\x32\x3c\x4e\xfa\xe0\x60\x07\x86\xb3\x08\x47\x09\x93\x0e\x57\x46\xd0\x1c\x3f\xcc\xca\x1d\xc7\x49\xbd\x59\xf8\xed\xf1\x20\x50\x7f\xf6\xec\x81\xa1\x7e\x7e\xfe\x56\xc3\xfb\x26\xc2\x21\xb9\x71\x84\x0d\xa9\x3b\x1a\x97\x21\xae\xfa\xbb\x81\x89\xea\x33\x05\x32\xa3\xb7\x0e\xbc\x82\xeb\xc4\x39\x56\xaf\xe8\x2c\xa5\x3f\x5d\xa6\xef\xa6\x19\x63\xf8\x16\x84\x88\xc1\x28\x2e\x67\x8c\xa9\x15\xc2\x1f\x20\xa8\xf8\x91\x90\x39\xed\xfa\x96\x6a\xff\x3a\x63\x86\x24\x6b\x22\x99\x33\x0a\x9d\x90\xa0\x44\x46\x2c\x7c\x89\x12\x96\xa2\x85\x78\xed\x40\xc7\x18\x8c\x13\x01\x89\x9e\xdf\x0f\xaa\xac\xe0\x31\x6c\x74\xdc\x3e\x34\xb2\x65\xae\x22\xbe\xac\x94\xf9\x38\x32\xb4\x99\x76\xf6\x47\x72\x8e\x52\xbc\x70\x6b\x12\x70\xa4\x5d\x47\x28\x0e\x65\x69\x29\x5b\x58\x40\x1a\x4b\x20\xc2\x55\x8b\x29\x40\x84\x6b\x19\x17\x45\x7b\x73\x98\x24\x37\x84\x33\xe3\x85\xe4\x25\xea\x8f\x63\xf3\x8f\x81\x11\xe5\xad\xd9\x8d\x82\xf7\xd9\xd3\x6a\xc6\x27\xe5\xda\x5c\x7e\x29\xf4\xb4\x6b\xbb\x5b\xcc\x47\x53\x1f\xf3\x9b\xcc\x21\x36\xd7\xfc\x5a\x13\x51\x36\xd5\xd7\x78\x4d\xb4\x80\xe4\x12\xb3\xe8\xb3\x27\x42\xf4\x90\x5e\xd6\xc0\xba\x4e\x2d\xdf\x19\xb9\x4a\x0e\xc1\x81\x64\x2e\x2f\xb4\x2a\x60\xac\x98\x4e\x77\x1e\xc3\x00\x4d\x49\x1c\x8a\x34\xb9\xa9\xa6\x40\x0e\xb5\x0f\x84\x48\xf2\x64\xac\x46\x26\x58\x4e\xa4\x2b\x53\x9d\xf1\xc6\x05\x2d\xb7\xf2\x6d\x50\x0f\xc6\xed\x18\xed\xfd\xb5\x3a\x93\x68\x2b\xc5\x65\xcb\x4e\x3e\x01\x87\x72\xd1\x9c\x85\xbf\xe0\xbf\x1f\x83\xfd\x3d\x43\x52\xd1\x5b\xa1\xd0\xa8\x9a\x02\x3c\x2c\xa7\xde\x1a\x7b\x57\x0d\x23\x37\x88\xa0\x8d\x91\xaf\x8e\xa2\xce\xd1\x68\xc1\x09\xc9\xe2\x0e\x9b\x09\xf0\x6e\x1d\x3f\xd3\x1c\x76\x9a\x5f\xef\xe5\x82\x31\x15\x07\x75\xb4\xc2\x19\x93\xe1\x9f\x99\xf9\xc7\x02\x20\x79\xf0\xdb\xcd\x46\xda\xa0\x0c\xe9\x81\xc1\x80\x29\xbe\x32\xc7\x70\x4e\x64\x9a\x8c\x08\x3b\x01\x45\xa2\x90\x08\x8c\x93\xbe\xa5\xef\x12\xb4\xad\x08\xb5\x3f\x30\x02\xaf\xce\xcf\xdf\xa6\x15\x8c\x56\xc0\xa9\x0e\x66\x5d\xf1\x7b\x1a\x3a\x94\x41\x37\xef\x93\xbc\x5b\xb4\x32\x1f\xf1\xa3\x65\xcc\x44\x07\x86\x49\x57\x63\x7e\x5a\x85\xfe\x7c\x57\x73\x9a\x65\x67\xea\x96\x04\xec\xb0\x9d\xf1\x76\x65\x65\x43\xa1\x5b\x01\x89\xbe\xf8\x7f\xd2\x9f\x44\x34\x61\x2a\x5a\xc2\x18\xca\x8d\xe1\x3f\x6e\x4b\xe1\xed\x15\xdb\xfa\x4c\xaf\x03\x5c\xb8\xd2\x03\x97\x7f\xb9\xb7\xe2\xa6\x56\x47\x9b\x56\xdd\x79\x06\xf3\x54\x83\x91\x4d\xa1\x52\xc7\xc0\x15\xe6\x90\x04\xc5\x1c\x18\x1a\x99\x22\x86\x44\x04\xd3\x8b\xec\xd0\xda\x51\x4b\xa9\xd8\x0e\xc7\xad\x0e\x75\xe7\x4b\x6e\xbf\xc8\x36\x74\x60\x9b\xbe\x1a\xfa\xd4\x4d\x4a\x68\x9f\x8b\x77\x62\x8b\x70\xbc\x86\x08\xf4\xba\x4b\x30\x85\x79\x37\x1f\x85\x63\x65\x5c\x29\xd2\x15\x61\x01\x7c\x91\x1a\x04\x5f\xa8\x9c\x87\x2f\x24\x6c\xea\xd1\x62\xaf\x68\xa5\x37\x54\x4f\xaa\x22\xba\x34\xe7\x0f\xaa\xd2\xe7\xe5\x75\x55\x12\x59\x5d\xe0\xca\xeb\xaf\xcc\x79\x5a\x3f\xaa\x78\xd0\x1e\x45\x5a\x2a\x74\x45\x2c\x46\x25\xc6\x3e\x62\x04\x5c\xc1\xb4\x9d\xb7\x4c\xd7\xda\xa3\x0b\xfe\x1c\xd4\x8c\x24\xc9\x6e\x11\x6d\x89\x4e\x0d\xd5\xda\x14\xad\xaf\xb0\xab\x34\x0c\x53\xaa\xfb\x35\xca\x03\x57\x63\xa2\x0c\xcc\x54\x06\x6f\x65\xa7\x56\x88\xa2\xc3\x38\x21\x16\x41\x2d\x9c\xdf\xfc\x20\xf1\x98\xa2\x2c\xb2\x33\xf3\x35\xe9\x68\xd9\xce\x4c\x35\xeb\x06\x5b\x9a\xd6\x6c\x3d\x1d\xd3\xb6\xb9\x04\xfa\xb8\xe5\x9f\xa6\x4b\x52\x16\x53\x3e\xc3\x05\x43\xa1\x67\x89\x28\x91\x2d\x18\x4a\x58\x84\xaf\x9e\xbb\x0c\x7d\x61\xee\xd0\x4d\x85\xc0\xa5\xbf\xa6\x49\x9c\xd9\x4d\xe2\xc2\x18\x51\x36\x89\xbb\xae\xb6\x86\x8b\x7d\x34\xc2\x69\xb2\x87\x4b\x20\x6c\x25\xa5\x19\x89\x55\x1b\xde\xde\x5d\x63\x4f\x0d\x4f\xa5\xc7\x91\x3b\x7a\x32\x0f\x3e\xcc\xce\xff\x9b\xb6\xcb\x1d\x2d\xf2\x90\xc4\x16\xae\x41\xf3\x0c\xa1\x9d\x6f\xae\x62\x29\x7e\xbb\x75\x4e\x4e\x5f\x3b\x1f\x3a\x69\x9a\x32\xbf\x02\x3b\x0f\x92\x9b\x4f\x58\x3d\x9f\x72\xf0\x1a\xb8\x70\x0d\xa7\x85\xf1\x18\xf4\x8e\x73\xc9\x42\xab\xb9\xf0\xc1\x41\x3d\x49\x12\x0e\x69\x42\xb4\x48\x58\xb7\xdc\xca\x25\x8c\xf9\x86\xe9\x95\x2f\x61\x12\x05\xbd\x90\x92\x79\x48\x6e\x70\x4f\x87\xe0\x5b\xaa\xf6\xe4\x5b\xb6\xe8\xe3\xfb\x4c\xbe\x5f\x58\x8c\xf2\xef\x5f\x0b\x20\xba\x8f\x7f\x06\x80\xac\x03\x88\xef\x15\x00\x66\xf2\x1a\xbb\x33\x7f\x45\xf3\xef\x73\xbd\x92\x35\xe0\x1d\xf6\x12\xc4\x1e\x67\xde\xf5\xf9\xef\xc9\xcd\xd3\x5f\x7f\x8f\x57\x0a\xfd\xb6\xba\xd3\x57\x66\x26\x01\xee\x0b\x23\x29\x74\x46\x20\x4b\x61\xd2\xd6\x3c\xcf\xf6\xec\x25\x83\x16\xd9\x4b\xdc\xda\x54\x60\x7b\x2d\x35\x06\x0d\xe6\xa3\x4e\x6b\x17\x7e\x2b\x5f\x61\xdd\x6d\x6d\x44\x0d\x93\x17\x12\xcf\x6c\xce\x5a\x64\xef\x5a\x63\x6a\x4d\x92\x8b\xd6\x82\x14\xd2\xba\x68\x49\xa4\x03\xdf\x60\x3b\x97\x0f\x93\x97\xa5\x29\x56\x7b\x45\xce\xbe\x21\x86\xba\x5d\x0c\x71\x65\x84\x70\xcd\xf0\x22\xe6\xfa\xbd\xf4\xd1\x38\x61\x8c\x26\xb5\x11\x96\x8d\xeb\x10\x5b\xaa\x65\x0b\xed\x70\x86\x68\x3f\x84\x0c\xee\xec\x78\x0d\xf3\xb4\x85\x37\xa6\x7d\x80\xbb\xa2\x60\xc6\x0a\x22\x57\x82\x18\x27\xa6\x0a\xad\x58\x1a\xda\x0c\x19\xf4\x39\x22\x14\xa3\x31\x55\xc3\xbc\x27\xaa\x39\xa2\x54\x96\xfa\xda\x07\xd5\x58\x4f\x82\x20\x0d\xa6\xf2\x03\x86\xe8\x2c\xf1\x3b\x4b\x47\xc1\x34\xe2\x67\x53\x28\x06\x6d\xb5\x75\x1e\xc3\x5d\xf2\xe1\xec\x4f\x67\x7b\xbf\x5e\xff\x62\xbf\x4b\x14\x9b\xdf\xc2\x89\xd0\x70\x1b\x1b\x48\xa2\x5d\x70\xa0\x1a\x1c\x83\xfd\x8e\x97\x8f\xb8\x72\x44\xe9\xb3\x56\x44\x6c\xbf\x55\x56\xac\xb2\x49\x57\xa6\xe2\xbd\x9d\xa3\x9e\x10\xe4\xab\x85\xc1\x9c\xb4\xd7\x30\x6f\xd5\xfd\xda\xd3\xae\xb3\x8e\x1c\x81\x67\xab\xa5\x24\x6d\x19\xd4\x66\x6a\xd6\x4c\x3b\x47\x16\x3d\x56\x6d\xe7\xd8\xd7\xbf\x56\x5d\x98\x05\xe5\xde\x71\x59\xa1\xa7\xcd\x88\x55\x76\xda\x2c\x1a\xa9\x8b\x36\xd8\x31\xd3\xf6\xde\x20\x5a\x54\xdc\xcb\x73\x2f\x40\x31\x97\xb9\x19\x33\xe3\xcf\x6f\xba\x54\x8b\x6e\x56\x7a\xf0\x2e\x67\xb9\x7e\x41\xf0\xdb\xb9\x08\x0b\x79\x41\xf0\x69\x4c\x12\xa5\xe2\x3d\x2d\x81\xd8\x58\xbe\xab\x66\x90\x41\xe8\x50\x98\x04\xdc\xd7\x72\x12\xfd\x7e\xdf\x05\xee\x1b\xe2\xcc\x49\x92\x44\x97\x31\x72\xd2\x89\x8a\xa6\xfb\xad\x80\x9a\xb9\x91\x8a\xfc\x76\xed\x77\x23\xfb\x50\xdc\xf6\x35\x5f\xba\xa9\x56\x5b\x90\xe1\x8b\xb1\xc4\x8c\xc1\x41\x6b\xa6\xa9\x6c\x3e\x6d\xcd\xae\x49\x98\x18\x08\x78\xa8\x26\x36\xe8\xc2\xb2\xb5\x23\x29\x76\x13\xf0\xc0\x46\x78\x1a\x6d\x9d\x83\xd4\x72\x73\xf0\x55\x98\x5c\xcd\xda\x6e\x0a\x1a\x6d\x19\xd8\xba\x73\xda\xa4\x7c\x52\x06\x94\x79\xbc\xa0\x3a\x6f\x60\x9d\x8a\x1c\xc6\xf1\xdb\xf4\x28\x17\x74\xe4\x51\xa2\x0e\xa8\xd0\x8b\x67\x27\x3e\xef\x81\x52\xcd\xc6\x76\xe2\x60\xcb\xdc\xc0\x06\x39\x58\xbb\x56\xdb\xe0\x6b\x65\xac\x46\xfe\xad\x08\xa3\x69\x66\x79\xb9\xdc\x07\x23\x8c\x68\x45\x2b\x45\xb1\x7c\x30\x21\x74\x76\xda\xd0\x58\x78\x73\xf9\x80\xc3\xb4\xa0\x6a\xef\xc3\x38\x82\x89\x6c\xd1\x97\x8c\x19\x90\xf0\x42\xa1\xda\xc1\x8a\x2f\xe4\x06\x3d\x14\x6f\x2e\x1b\xc9\x45\x72\x09\x44\x36\x4a\x81\x62\xbc\x51\xec\xe2\xed\x1c\xf9\x59\x21\xf1\x51\xfa\x5b\x0a\x1a\xf1\x97\xb5\x71\x5f\x84\x09\x78\x77\x2f\x21\x83\x81\x70\x57\x91\xa9\x53\xc2\x00\xa4\x36\x3f\xf9\x44\x62\xfb\xf2\x01\xb3\x0f\x2d\x01\xb1\x42\x9d\x6f\x78\x6e\x57\xfa\x9c\xb6\x1b\xe7\x4c\xfc\xed\x59\xc5\x8c\x7e\xd6\xea\xfe\xfe\x62\x0c\x64\x52\xa1\x7e\xa1\x43\xfe\x6a\x2b\xc7\xf9\x0b\xe6\x1d\x68\x82\xe8\xff\xc7\x9e\x08\xbc\x43\xfd\x49\x14\x33\x44\x6d\x49\x6f\xb6\x99\x48\x8a\xf3\xcb\xad\xe7\xbe\x7a\x69\xca\x00\x08\xb8\x22\xec\x6c\xe9\x97\x76\x56\x48\x25\xc8\xf7\x01\x12\x39\xc3\xb4\xed\x45\x36\xa8\x4a\x88\xa4\x0b\xc3\xa2\x1b\xe7\x1d\x25\xb3\x28\x41\xc6\x74\xb0\x6c\x4a\x47\xac\x24\xfc\x18\xe3\x96\x25\x1f\xbe\x0c\xcf\x07\xd8\x43\x45\x21\x67\xcb\xfc\x50\x8b\x29\x48\x26\xaa\x11\xe1\x35\xa5\xcd\x5f\x15\xaf\x12\x78\x8d\xec\xf5\xfa\x39\x02\xd1\x72\x2a\xb7\x7d\x6b\x2a\xb7\x7d\x33\x95\xdb\xfe\x38\x4f\x82\x54\xda\x26\x8a\xe6\x64\x2b\x27\xe3\x9d\x0a\xc6\xff\x43\xc4\x6f\x76\x91\x52\xe6\x25\x64\xc8\xe7\x1b\xc8\x9f\x79\x7c\x8f\x46\xb0\x3f\x47\x34\x89\x12\xe6\x21\xbb\x80\x89\xc0\x9d\x2a\xaf\x97\x8d\x0a\xfd\x3b\x9c\x65\x22\x12\x60\x57\xe7\x02\x83\x34\x20\xed\x0e\x0b\xaa\x99\x32\x2e\x52\xca\x62\xcb\x25\x60\x00\x8a\xad\x18\x73\x79\xcb\x38\x79\x9e\x0f\x28\x3f\x32\x05\x32\xcb\xfc\xbb\x62\x33\x2c\x8d\xd0\x1e\x13\x19\x71\x80\x3c\x6d\x95\x70\x96\x21\x95\x57\x88\x9d\xc7\x8b\xab\x3f\x23\x31\xce\xc8\x44\x66\xec\x73\x20\x36\x24\x80\xca\x7f\x30\x1a\x09\xe9\x75\x2b\x9a\x78\xbd\x01\xdf\x2b\x3f\x55\x95\xea\x54\x48\x1e\x04\x03\x95\x06\x2d\x0b\xc0\x54\xc0\xe1\x4f\xf9\xcc\x4b\x38\x2b\x13\xb3\x08\x7c\x07\x70\xe4\x65\x89\xd3\xfc\x3e\x26\x74\x26\x2e\x6b\x91\x14\x48\x01\x9c\x9a\x54\x88\x8c\xd8\x56\x72\x13\xb1\x60\xea\x41\x8d\xf3\x22\xc5\xea\x9d\xc8\xf9\xab\xb7\x62\x98\x61\x09\x6e\x83\x25\xa4\x3f\x5f\x24\x53\x95\x70\x16\x97\x62\x64\xf3\x4b\xea\x6e\x01\x0d\x48\x88\x7a\x28\x8c\xac\x02\x7e\xc1\x00\x9a\xe6\x23\x65\x66\x89\xf9\xb6\xb9\x77\x51\x45\x5a\x5c\x23\xf5\xee\x28\x9f\x7a\xf7\xfe\x7e\xdb\xab\x4d\xbe\xab\xf3\xe9\x4a\x6c\xbb\x18\x03\x3a\xda\xde\x03\x70\xb4\x3d\x00\x44\xeb\x10\x18\xbd\xbd\x4b\x6b\x7d\x83\x78\x84\x2c\x09\x5e\x7f\xde\xf6\xe8\xc8\x4b\x46\xb1\xcc\xb2\xe5\xfb\xfd\x90\x60\xe4\xef\xec\x78\x58\x40\xdf\x53\x56\x68\x1f\x6c\xb3\xfb\x7b\xac\xc8\x85\xa8\x9b\xfe\x33\x1f\xd2\xff\x79\x19\x40\xbe\xf1\x91\x7f\x07\xf9\x14\xc8\x28\x5a\x4e\x22\x0c\xe3\xf8\xf6\x8e\x4f\x80\xde\xdf\xcb\xc8\xe9\xb8\x2f\xa7\x7c\x7f\xaf\x7f\xf3\xfc\xb4\x65\x34\xf1\xa0\x2a\xc4\x4e\x96\x46\xbd\x6e\x0e\xa9\xd5\xf3\x09\xe3\x2c\x9f\x30\x5d\x3d\x9f\x30\x2d\xe7\x13\xa6\x4d\xf9\x84\x69\x96\x4f\x98\xb6\xcc\x27\x4c\xbb\xe7\x13\xa6\x7e\x7e\xa5\x25\x78\xb5\xcf\x28\x1c\x22\xb9\x98\x85\x28\xe9\xf0\x8d\xd2\x0a\xe3\xaf\x96\x56\x98\x9a\xb4\x5a\x61\xc6\x67\x74\x9b\xa8\x9d\x51\x4f\xae\x10\x7b\x7b\x83\xb5\xfe\x4e\x2e\x23\xd1\x5c\x41\x5d\x1b\xde\x0d\x13\x78\x42\xcb\x6c\x4e\x46\x3e\xac\x5d\xbc\x44\x49\x40\xa3\x39\x23\x72\x8e\xfd\xcc\x4e\x26\xb2\x00\xca\x63\x99\x5e\x7b\xd4\xcf\x4e\x8b\x99\x34\xd9\x4f\x4f\x3e\x1b\x0d\x7e\x66\xff\x5e\xbc\xf0\x7f\x66\x3f\xfd\xa4\xd7\xcf\xc1\xbd\x6d\xdc\xfa\xcc\xbc\xf5\xd9\x78\x78\xb7\xdc\x62\xff\x7b\xff\x39\xf5\x32\x52\xbc\xbd\xe7\x73\xde\xe4\x0c\x06\xd3\xfc\xca\x88\xbc\x4a\x2e\xd8\x98\xb3\x35\xc3\x86\x15\x26\xd6\x44\xce\x11\x4a\x3c\x04\x9a\x3e\xf5\xb0\xef\x0f\x8d\x39\x55\x4c\xa8\x3a\x53\x74\x13\xf4\x31\x60\x82\xd3\x5c\xa6\x54\x3c\x05\x30\xf9\x1e\xb3\x52\x27\xf5\xea\xe4\x27\xff\xf9\x01\x7d\x7c\xf3\xe7\x0a\xd3\xe4\x8c\x84\xf5\xd5\x9e\x8f\x81\x1b\x5d\xdf\xf6\xf8\xa5\x3a\x8b\x54\xa8\xb4\x54\x56\xa4\xce\x92\x69\x0c\xb7\x28\xf1\x9e\x57\xd3\x89\x46\x1f\xe7\x21\x64\x3a\x79\xf4\xa1\x50\x45\x6b\xff\xda\x43\x59\xb1\xf6\x50\xb8\xf9\x65\xc5\x1f\x4c\xf7\xc3\xa7\x75\x39\xaf\x84\x8f\x31\xcd\x2a\xb6\xf1\xbf\xf9\x5c\xb3\x07\x86\x92\x5b\xfa\xfe\x58\x15\x3e\xfb\xe5\x70\xa0\xbc\x4b\xf4\x60\xaf\xa4\x20\x7d\x56\x76\x6f\xec\xe8\x27\x5d\xa7\xf5\x4c\x75\x92\x42\x93\x29\x65\xb1\x4c\xab\x79\x86\x33\x17\xe6\x79\x5a\xbf\xcd\x02\xc1\x72\x0e\xf1\x43\x30\x50\x9a\x42\xf1\xc7\x7e\x17\xa5\x9f\xf6\x6a\xda\x07\x03\xa0\x73\x18\x8d\x6b\x7d\x2e\x07\x6b\x5b\x2c\x53\xcd\x90\xc2\x55\xfe\xc3\x74\x91\x54\xe8\xa7\xb1\x2f\x43\x3e\x82\x3f\xa3\xdb\xc5\xdc\x05\x6e\x72\x8b\x19\xfc\x92\x7a\x4c\x52\x04\x43\x82\xe3\xdb\xcc\x79\xb2\x9b\xe1\xb3\xc8\x60\xa6\x3a\xa3\x78\x74\xc7\xe0\xe5\x79\xf4\x0f\x34\xdc\x07\x71\x84\xd1\x9b\x05\x3f\x9a\x22\x27\x34\x9b\x22\xde\xe3\x14\x26\xd3\xc8\x05\xc9\x94\xdc\x9c\x2e\x68\x42\xe8\x5f\xa6\x08\x9f\x8b\xfd\x8d\xf0\x95\x70\x99\x58\x30\x0e\x9b\xe1\x85\x7b\x4a\x42\xf4\x9b\x38\x74\xbd\x38\xc2\xac\x37\x83\xf4\xb3\x8c\x4e\xe0\x7f\x72\x92\x00\xa2\x5a\x2d\x55\x52\xe9\xa1\x95\x26\x81\xab\x52\x1f\xc9\xd7\xae\xdf\xa8\x89\x9a\xa2\x78\x5e\xa9\x59\x12\xa0\x92\x74\x63\x97\xcf\x59\xe4\x26\x12\x3b\x25\x44\xdc\xe1\x85\x6b\x00\xd3\x1d\x03\xbd\x33\xc3\xed\x01\x90\x9b\x26\x9d\x46\xc5\x46\x16\x7d\x46\x85\xa7\x64\xd1\x65\x74\xdd\xc4\xdb\x0a\xbb\xc4\x87\x72\x69\x7d\xf1\xc8\xf3\xeb\xcd\xb6\x8d\x23\x99\x19\xaf\xe5\x7a\xb7\x44\x56\xd8\x04\x31\xa9\x62\xf1\x04\x5e\xbe\x15\x78\xa9\xc4\x4c\x09\x0c\x2e\xf7\x23\xf6\x1b\x09\xf3\xca\x88\xe2\xcc\x53\xc4\x87\x1e\xf4\xee\x96\x20\xf6\xc1\xdd\x12\x70\x74\x46\x43\xd4\x9f\x45\x33\x04\xf4\x00\xc3\x5c\xff\x4b\x95\xd6\x88\xe5\x26\xc7\xcc\x99\xc9\xa3\x27\x7b\xf1\x73\xc0\xe1\xbb\xea\x31\xfe\x8a\x84\xc8\x0e\x4e\x17\xa0\x4d\xa9\xc4\xc8\x25\x47\x2d\x44\x55\x6e\x23\xfd\x67\x3f\x8c\x92\x80\x60\xcc\x39\x86\x86\x8c\xe6\x5d\xcc\xeb\x5b\x86\xcc\x9f\x4b\x0b\xcd\xd0\x17\x06\x29\x82\xce\xff\xe3\xcc\x29\x72\xc4\x85\x23\x27\xa8\x9a\xf8\x5b\x58\x3a\xb4\x9f\x4e\xa3\x38\xd4\x46\x78\x3d\x5d\xc1\xd7\xfe\xb6\x90\xa9\x9e\xdf\xaa\x87\x56\x0d\x95\x87\xc1\xc0\xbf\xd8\x1b\x6f\xa1\xbe\xc2\x77\x2f\xa7\x92\x51\x34\x90\x6a\xe9\xfc\x66\x4a\x62\xf4\x01\x7d\x61\x86\x2e\x2d\x05\x92\xfa\xc5\xc3\xe0\x0e\xea\xa4\xc7\x89\x38\x69\x8b\x4b\x46\x91\xe4\x5c\xf8\x7c\x5f\x47\x09\xe3\xcf\x83\x29\xa4\x30\x60\x88\xbe\x84\x0c\x4a\x0e\xa4\xb8\xbf\x6a\x02\xe6\x6a\xcd\x49\x94\x73\x41\xcb\x93\x9e\x43\xa1\x2b\xc4\xce\xc4\x63\x2f\x07\xc2\x54\x15\x28\x49\x91\x52\x1d\x9e\xc7\x8b\x2b\x2f\x47\x35\xfc\x3e\x9b\x22\x9c\xe7\x0e\xe5\xc6\x49\xa4\x4c\x00\x17\xeb\x24\x35\xd9\xa2\x42\xde\xc0\xa2\x33\x7b\x5e\x6e\x21\xf4\xf5\x19\x79\xcd\x2f\xe5\x53\x98\x20\xcf\x1f\x8d\x68\xfe\x81\xe0\xd8\x19\x97\x64\xf0\xc5\xde\x18\x88\x43\xcc\xcf\xa7\xc7\xa4\xd2\x2f\x8c\xc2\x93\xf9\x1c\x41\x5a\x42\x71\x39\xe7\x3e\x45\x13\x8a\x92\x69\x2e\x61\xbc\x45\xdf\x98\x07\x80\xd6\xac\xdd\xe5\x96\x3f\x44\xcb\x0c\x52\x62\x12\xa8\xe4\x36\x1e\xb5\x50\x9a\xe0\x49\x44\x67\x02\x23\x7b\x22\x7c\x73\x57\x4e\xec\x71\xf8\x90\x5f\xed\xdd\xd0\x7f\x7c\xa1\xe7\x9d\xfd\xeb\x8a\xd5\xf8\x38\x88\x29\x59\x14\xab\xdd\x5a\xe3\x3b\x45\x95\x37\x33\x23\x78\x1a\xf0\x2e\xf3\x67\x17\x4c\xe9\x29\xc3\xba\x37\x2e\xc6\x7b\x1a\x9d\x2a\x9e\x74\x90\xe3\x49\x57\xa9\xeb\x95\xce\x62\x85\x9a\x25\x0d\xbb\xfd\x0d\xfd\xbf\x2d\x33\x7b\x14\x08\xf8\x97\xbd\xff\xfe\x7c\x7d\xf0\xcb\x7f\x35\x20\x60\x8d\x37\x4e\xc9\xd3\x53\x07\xed\xe7\x52\x3b\x95\xd7\xaf\xfc\x77\xf6\xab\x10\xd6\x5e\x4f\x5c\xbf\xd5\x15\x4f\x2b\x22\x14\x36\x54\xc6\xba\xa5\xbf\x62\x4d\x24\x45\x53\x19\xf1\x56\x45\x4f\x5b\x4f\xc3\x1a\x7f\xc8\xc1\xb5\xa8\x8a\x3c\xe9\xe2\x90\xcb\x37\xd0\xcd\xa5\xa4\x30\xbd\x65\x2d\x5b\xbc\xab\x4f\x30\xef\x54\x9f\x6b\x53\x20\xad\xa2\x2f\xe3\x95\xfc\x36\xdc\x02\x09\x32\x57\xda\x3a\x03\x88\xa2\xaa\x55\x61\x38\x66\x7a\x0e\x77\x22\x13\xac\x1d\x8a\xf8\xe8\x2c\x5a\x1d\xe2\x40\xb5\xa9\x0d\xf8\x5d\x29\x1a\xa6\x44\x1d\xf3\x19\x5f\x0b\x6e\x03\x12\xcf\xd6\xa2\x9f\x8f\x8a\x70\xb6\xcb\xf8\x5f\x72\x6f\xfc\x51\x87\xf0\x47\x1d\xc2\x7f\x8d\x3a\x84\x9b\xe1\x19\x60\x3d\xcf\x30\x7d\xfd\x32\xf8\xe9\x2f\x11\x5b\x9d\x67\x30\x3c\x78\x9f\x18\x59\x8e\xc4\x35\x72\x13\xb1\x69\xcf\x3c\xf5\x36\xd7\x4e\xe0\x3a\xaa\x89\x48\xe5\x6a\xcb\x49\x54\x62\x2d\xec\xd7\x43\xa7\x4b\x50\xd3\xdc\xbc\x7b\xaa\x79\x1f\x2a\xdd\xa4\xba\x2c\x6d\x15\x02\xd3\x36\xfa\x9a\x28\x44\x7b\x77\x4c\x87\x63\xcc\x20\xf3\x62\x2d\x45\xaa\x17\x9d\x61\x3b\xa7\xbc\xb0\xc0\xad\x63\xf2\xae\xae\xb0\xd6\x55\x70\x9a\x60\x8d\xbe\xa0\x60\xc1\xca\xc5\x24\xab\x61\x0d\xa4\x73\x29\xc8\xeb\xb8\x57\x83\x7c\x06\xda\x6f\x01\xcc\x26\x6e\x21\x77\x46\x84\xdf\x61\xe6\xaa\xa8\xd9\x87\x22\xcb\x20\x34\xc9\x73\x44\x67\x50\xf1\x14\xc2\xc5\x51\x36\x7f\x23\xb7\x49\x39\xba\xac\xcc\x59\x58\x93\xcb\x93\x5a\xd6\x02\x76\x8b\xac\xd1\xae\x38\xee\x09\x45\xce\x2d\x59\x38\xc9\x82\xa2\xe7\x2e\xc8\x00\x32\xdc\x1e\x80\x74\x95\xfc\x8f\x4c\x5f\x21\x90\xc5\xd4\x70\x14\x95\x3d\x26\x58\xb7\x07\xfe\x12\x28\x1c\xec\xf0\x8d\xd6\x6c\xe0\x50\xa6\x54\xce\x95\x28\x33\xa1\x3d\xd6\x95\xda\x54\x41\xbb\x4c\x8b\xe7\xfb\x4b\xbd\x9e\xb2\x22\x50\x5e\xc2\x19\x13\x20\xee\x7c\xc9\x01\x98\xba\xc7\x11\xba\xd8\x1b\x03\x7e\xcd\x4b\xa6\x60\xe0\x97\xca\x8c\x99\x3b\xcf\xca\x8a\xaf\xb4\x37\x17\xe0\xf2\xdb\xdc\xaa\xf7\x4a\xfa\x1b\xd2\x86\xfd\x4b\x16\xf1\x2e\x0c\xe2\x5d\x4c\x58\x34\x89\x02\x81\x42\xc9\xe3\x90\x9e\x5f\x3e\xfb\xe5\xf8\xf3\x9f\x3e\xfe\xd5\x7e\x13\xbe\x50\x19\xc9\x74\x22\x96\xd2\x3d\x58\x26\xe1\xda\xc0\xb5\xcf\x89\x96\x8a\x47\xe9\xee\x8d\x5d\xdd\xef\x80\xcf\x61\x21\x02\xf5\xd7\x48\x85\xf9\x57\xb2\xa0\x22\xfb\x80\x4c\x3d\x39\x85\x89\x73\x89\x10\x76\x60\x18\xa2\xb0\x6b\xfe\xc9\x0f\x53\x44\x91\x48\x7e\x0a\xb1\xcc\x89\xcc\xfb\x89\xf0\x95\x4c\xf7\x95\x0e\x53\xd5\x6f\xa7\x34\xa1\x15\xa0\x5e\x08\x43\xee\xf7\x04\xea\x04\x5e\x6f\x04\xd4\x09\xbc\xfe\xba\xa0\x0e\x51\x8c\xbe\x0b\x50\x73\x30\xc9\xc9\x6e\x02\xce\xa2\xa7\xaf\x8c\xd4\xc9\xa3\x04\xf3\x1b\x72\xe3\x2c\x12\x0e\x0a\x21\xd4\x34\x41\xa2\x03\x8c\x65\xaf\x6c\x0a\xd9\xd7\x01\x70\x10\x13\x5c\x03\xe2\xc7\x81\xc2\x62\x92\x9b\xc0\x60\xde\xd1\x9a\x08\xfc\x70\x0f\x6b\xea\xa3\xff\xbe\x82\x1f\x44\x1d\xcf\xd1\x51\x17\xf6\x49\x73\x0c\x6f\x71\x7c\x9b\x36\xf3\xba\x6b\xc1\xf8\x94\x38\xaf\x93\xa0\xb0\x37\x87\x6c\xba\x1b\x47\xc9\x23\x31\x22\x9c\x9f\x1c\xfe\x74\xf2\x97\x5f\x2a\x4a\x57\xf2\xc9\x4a\x35\xe5\x65\x84\x51\x78\x12\x86\xa2\xae\x7f\xaa\x1e\x00\x3a\x85\x61\x9d\x9e\x20\xb5\x22\x70\xd8\x98\x60\xe8\x71\x30\xd8\x63\x81\x6b\xd4\xdf\x99\x18\x77\x64\x1c\xc6\xc3\xd2\xef\xfb\x66\xea\xcb\x95\x93\x45\x36\xe8\x94\xb5\x2a\x44\x2c\xd1\x6a\xd8\xc8\xa6\xbb\x5f\x52\x9f\x4b\x75\xc8\xd0\x4d\xbd\x97\xde\x41\x11\xc7\xb7\x62\x16\x5c\x77\x9c\xaf\x61\xb1\x97\xed\x5c\x0f\xaa\xad\xeb\x9a\xf2\xb9\x94\x16\x5e\x3b\x5b\xed\xdb\xf2\xc6\x5b\x34\xe7\x39\xc3\x4e\x40\xe6\xb7\x3d\x65\x79\xb4\xfb\xec\x19\x34\x5a\x63\x5b\x39\x8d\x9e\x75\xb0\x32\x29\xdb\xb7\x45\xf4\x56\xe6\xad\xcd\x6d\xa5\xce\x78\x5e\xb1\x95\x5a\x41\x21\xf6\x8c\x0b\x6a\x01\x89\xd7\x28\x3a\x12\x1a\x21\xe6\xf3\xb4\xbb\x86\x9d\xaa\x48\x3a\x96\x83\x37\x23\x24\x66\xd1\x5c\xc1\x7a\x0c\x2e\x3a\x06\xd3\xea\x7f\x7a\x8d\xed\x8a\x04\x74\xc4\x8b\x9a\x8c\x65\x45\xa4\x2b\xc1\xbb\xed\x48\x8d\xb8\xa2\x26\x5e\xde\xde\xd7\x2a\x54\xe8\x1d\xa1\x6c\x53\x5b\x4c\x6a\x32\x51\x7f\x93\xed\x25\xb4\x98\xe3\xfa\x2b\x6d\xad\x0c\xc4\xe2\xbc\x09\xc1\xce\x30\xbf\xd1\x25\xc8\x7f\x85\xcd\x26\x01\x8c\x39\x11\xfe\xb1\xdb\x0f\xb2\xdb\x1c\xbc\x0e\x07\x48\x69\xaf\x4b\x80\x7f\xf8\xcd\xce\x5d\xb6\x6b\xee\xb1\xe8\xea\x31\xed\x31\x64\xd3\x47\x41\xac\x35\x8c\x37\xbd\x9d\x75\x77\x7a\x63\x1f\x83\x9a\xc4\xcf\xb6\x8f\x6b\x1c\xc1\x53\x8e\x38\xd5\xce\xc7\x28\xcd\xa0\xdb\x63\x14\x06\x9f\xa5\xf9\x91\x4b\x80\x30\x98\xae\x20\xcc\x54\x48\x0e\xdf\xd6\xb0\x2f\x27\xc6\x10\xc5\x30\x56\x49\x62\x1e\x87\x40\xf3\xf4\x34\x3e\x7c\xb9\xf7\x6a\x62\x17\x68\xf4\x94\xcf\x55\x5a\x1b\xf7\x85\xf4\x0a\x29\x4a\x34\x55\x0a\xdf\x83\x82\x68\xd1\x4a\x69\x50\x96\x53\x4a\xb2\x49\xab\x7e\x0e\x0a\xc9\x49\xba\xe4\xf3\xe1\xf2\x58\xca\xdb\x4b\xc3\xed\x40\x3a\xfe\x48\xa9\x2c\xb7\x93\x8e\x92\x48\x64\xad\x44\x7b\xa6\xa6\xfc\x94\xf6\x57\x2f\xcb\x64\x15\x29\x3a\x14\x19\x2b\xa7\xfe\x93\x2a\x19\x78\xb3\x8e\x3a\x46\xff\x7b\x8f\xae\x38\x1b\x42\x51\xe8\x5c\x47\xd0\x9a\x42\xd7\xcc\x16\xd3\x3d\x43\x5f\xcb\xa1\xf6\x3a\x0d\xd5\xa2\x14\x53\x3b\x42\x6b\xa7\x9c\xdd\x55\x39\x01\x9c\x47\x4c\xa7\x61\x59\xcc\xe7\x88\x8a\x70\x6d\x90\xea\x78\x80\xab\x02\x34\x8a\x54\xa5\x7b\x11\xec\x3a\xea\xf4\x2d\x35\x40\xda\x5b\xa5\x27\x2a\xed\x59\xcc\x60\xc0\x7d\x71\x15\x47\xb3\x19\xa2\xd9\xd7\xed\x3c\xa2\x3c\x3c\x72\xf5\xf3\x62\x7c\xf7\xce\x8e\x22\x80\xc5\x17\xa9\xd3\xcb\x73\x8b\xcf\xb9\xf6\x53\x5a\x0e\x6d\x0e\xe9\x3b\x3b\x35\xc3\xe5\xfc\x8e\x46\xa3\x51\xfa\x7c\x5b\xff\x9e\x19\x37\x9f\xeb\xb9\x0d\xd3\x01\x7d\x0f\x95\xdd\x6e\xa2\x89\xb7\xed\x65\x0e\x3f\x64\xe2\x30\xdf\xb7\xba\x0e\x9d\x42\x8c\x09\x73\x02\x18\xc7\x0e\x74\x44\x5c\x8f\x03\x13\x07\xa6\x4e\x63\xae\x9f\x8b\x5e\x15\x20\xcd\x1c\x76\x7e\xc6\xff\xce\x74\xdc\x2a\xd6\x71\xab\x74\xc4\x84\xab\x8e\x11\x20\x3b\x32\xff\xb8\xbf\xdf\x1e\x00\xda\x37\x43\x2c\x47\xdb\x7b\x3a\x12\x21\xc2\x8e\x08\xe4\xee\xeb\x90\xcb\xd1\xf6\x5e\x75\xda\x5a\xda\xff\x8c\x6e\x01\xf5\x97\x85\x10\xd0\x74\xab\x89\x76\x13\x4b\x10\x7b\xa7\xe1\xf8\x76\x52\x74\x41\x4b\x63\x07\x3e\x7d\x12\xd0\xfe\xf4\x69\xc4\x80\x80\x2e\x60\x06\x04\x92\x2c\x4d\x89\x61\x88\xae\x48\x18\xf0\x1e\x4d\x62\x14\xb0\xfb\xfb\x6d\xf5\x5b\xb6\xd3\xca\xcb\x6b\x7b\xb0\x15\x4d\xbc\xd2\xdb\x7e\x32\x85\xb3\x5c\x13\x0b\xfe\xbc\xa3\xe4\xcb\xad\x6e\x24\x53\x0a\xa8\x45\xbc\x84\x0c\x55\x7a\xc5\x95\x06\xf3\x78\x73\xce\x40\x9b\xb9\x65\x44\x78\xc4\xf6\x9e\xca\x20\x90\xa5\x7f\x19\x2c\x97\x9e\xbf\x55\xf4\x2b\x54\xd1\x1a\x80\x8e\x22\xe5\x08\xa7\x02\x38\xe0\x28\x12\xe6\x71\xdf\xc4\xf1\x2d\x3c\x2a\x4f\xc2\xc8\x5a\x01\xa0\xbf\xe4\xd7\x8d\x83\x47\x55\x51\x3d\x6a\x02\xb1\x7c\x81\xcd\xdd\x8f\xcd\xfd\xdc\x66\xf7\xf7\xae\x74\x64\x73\xb7\x47\x23\xec\x31\xdf\x3c\x8b\xa9\x37\x23\x7b\x5e\x70\x79\x94\x0c\xd4\x68\x34\x42\xc6\xb1\x79\x8f\x26\x88\x22\x1c\xe8\xb3\x23\x4a\x86\x4e\x61\x82\xff\xc0\xa4\xa9\x52\xd5\x1c\x8f\x12\x14\x3a\x3d\x47\x84\x25\x79\x7e\xae\x05\xdf\x02\x14\xba\xe9\x0a\x44\xfe\x89\x21\xcb\xa6\x1f\x19\x54\x2a\xb2\xa3\xee\xf3\x2c\x3c\xda\x78\x6a\x25\x3c\x19\x36\xdf\xdf\x5b\xbf\x12\x39\x6e\xf8\xff\x36\xc3\x6c\x2e\xea\x99\x4d\x76\xf8\x4b\x70\x8e\x6e\x2b\x02\x99\xd3\x1a\x2e\x15\x3a\xf2\xb2\x5a\x38\x65\xa7\x56\x2f\x76\x54\xa5\x6b\xde\x17\xf9\x90\xa7\x08\xc6\x6c\x7a\xca\x2f\x20\x51\xc4\x83\xff\xe4\x37\xb7\x4a\x02\xbc\x32\xbb\x54\x10\x8a\x65\xfd\xc3\xba\x21\x6b\x95\xea\x75\x85\x16\x37\x22\x24\xb7\xe2\xad\x1c\x31\xe7\x24\x37\x7e\xab\x1c\x7f\x75\x4a\xe6\x9c\xe8\xfc\x86\x98\xe2\xb2\x1e\x56\xb2\x07\xab\xc8\xb5\x95\x3c\x72\x4b\x74\x20\x0b\x2c\x73\xfc\x15\x51\xf0\x07\x62\x7c\x5d\xc4\x38\x89\xe3\x6a\xcc\x30\xde\x94\xc1\x68\x54\x52\xdc\x04\xfa\xfc\xd8\xc5\x55\x77\xb1\x6a\x83\xf4\x21\x93\x3d\xec\x1a\xd2\x6f\xfe\xc0\x89\x29\x7e\x0b\x1c\xd8\x9c\xfd\x3e\x27\xf4\x65\x82\x5e\xc7\x84\x98\x35\xc2\x53\x2a\xcd\x05\x23\x93\x59\xf0\xca\xd9\xaf\x2c\x1c\xd2\xce\x8e\x4c\x46\x33\x62\x76\x41\xe2\x9c\x73\x3b\x0e\xfa\x32\xa7\x28\x49\x38\x27\x23\xe2\x06\x50\xc4\xa6\x88\x3a\x97\xc8\xe1\x5f\x3b\x84\xe6\x24\x8b\x2d\x83\x4d\xd5\xbc\x8e\xf4\x05\xf4\xd8\xce\x8e\x11\xd9\x01\xee\x0c\xfe\x71\xa8\xd8\x10\x64\x26\x65\x29\x26\x6c\xe1\xcb\x64\x3b\x3b\x52\x16\x58\xfa\xde\x02\x20\x15\x22\x0f\x30\x88\x41\x34\x4a\xbc\x85\xbf\x95\xb2\x5d\x8b\xac\xb2\x85\x8c\x61\x06\x0b\x1f\x44\x15\xb9\xdf\xb5\xcc\x37\x5a\x00\x0f\x8f\x2e\xee\x3e\xa3\xdb\x61\x1e\xa7\x0a\x35\x33\xa4\xa3\xea\x1e\x60\xa3\x3d\x80\x47\x7b\x3a\x23\x9b\xf6\x72\x55\xf9\xdf\x2d\x59\x72\xa8\x7f\xa7\xda\xd2\xfe\xb9\x40\x53\x95\xb8\x2d\xa0\x11\x8b\x02\x8e\x46\xe8\xa7\xd1\x60\xeb\x92\x22\xf8\x79\x4b\xbc\xb9\x81\x14\x47\xf8\xca\x1d\xb2\xc2\x8b\x39\x4c\x12\xf1\x02\xff\x34\x1a\x2c\x97\x82\xbf\x97\xbd\x89\xd4\x82\x68\x28\x97\x75\x27\x30\x66\x98\x8d\x00\xe4\xf9\x18\xba\x13\x18\xc5\xc2\xbd\x55\x9c\xc9\x21\x5a\x6e\xa5\x1f\xb3\xc2\xc7\x7a\x12\xe9\xb7\xa2\x06\x72\xfa\x54\x76\xc0\x8c\x0e\x70\xa1\x03\x3d\xd9\xb4\x83\xf4\x81\xfc\x16\x2f\xb7\x14\x81\x2b\x7c\x28\x39\xb3\xe5\x72\xb9\x1c\xfb\x3b\x3b\xd0\x33\x91\x08\xfb\x20\x16\xcf\x40\xec\x83\xc5\x32\x73\xa8\x36\xf5\x13\x01\xa8\xd3\x74\x2c\x40\xd0\xa2\xdc\x89\x3e\x83\x0c\x61\x11\x92\x2b\x0a\xb1\xe9\xaa\xd8\x8f\xc4\xa1\x77\x7e\xfe\xc7\xbd\xe3\x93\xd3\xfd\xca\xa4\x42\x7c\xeb\x85\x77\x7c\x24\xce\xf3\xaf\x84\xce\x5c\xe0\x7e\x4a\xbd\xe9\x29\x0c\x23\x62\x26\x08\x56\x1a\x29\xfb\xa3\x76\x29\xee\x9f\x15\xfd\x5f\x52\x18\xf6\x52\xf0\x95\x6e\x43\x7d\x9b\xe4\xca\x8e\x17\x2a\xfb\x1e\x82\xc1\xb1\xe5\x96\x2d\x3b\x33\xe8\xfa\xc7\x57\x94\x2c\xea\x2b\x9f\xb6\xac\x72\x3e\xdd\x37\x1b\x28\x45\x7a\x8d\x31\xc7\x52\x18\x7d\xa0\x2b\xa2\xa7\xf9\x85\x0a\x61\x30\x47\x69\x91\x69\x3d\x42\x5a\x99\xd2\xa8\x67\x9e\x85\x9c\x76\x74\x6a\x91\x5d\x3a\xe7\x6a\x33\x1b\x9c\x56\xcc\x54\x48\x3d\x19\xe2\x24\xdd\xbb\xd3\xd2\x9d\x66\xf1\xd6\x2c\xcf\x94\xcc\x8a\xf4\x2b\x87\xaa\x3d\x61\x52\x21\x0d\xfc\xe5\x22\x8a\xc3\xf3\xc5\xd5\x15\x4a\x14\x46\xbe\x10\x29\x79\xc4\x60\x7f\x99\xa6\x19\xe2\xd5\xe0\xf6\x14\xf1\x4f\x74\x6e\xa8\xc3\x71\x2e\xbd\xd2\xb3\x31\x90\x75\x39\x65\x82\xa5\xbd\x31\x70\xf9\x5d\xe7\x28\x84\x76\xb0\x7a\x97\xd7\xa3\xef\xa5\xbe\xec\x6f\xd0\xcd\x6b\x65\x29\xf9\x98\x20\x07\x3a\xa7\x02\x9f\x35\x0c\x95\x1e\xc0\xf9\xfb\x1f\xee\xee\x18\xa2\xb3\xe5\xf2\xef\x7f\x28\x85\xf5\x98\xbd\x46\xc9\x47\x1c\xfd\xbe\x40\x2a\xdb\xfb\xb3\x52\x26\xab\xfd\x7c\x80\x31\xdf\xa0\x1c\x2a\xac\xd4\xbc\x73\xa4\x90\x59\x4d\x74\xa0\xc7\x38\x36\x2b\xa5\xfe\xdb\x06\x8c\x0c\xfa\xdf\xbf\x39\x1e\xe7\xfc\x15\x4c\x13\x7f\x45\x43\x42\x91\x0d\xce\xcd\xb8\x83\x69\xd5\xce\x13\x1f\x57\x94\x60\x7a\x5a\xc4\xbc\x2e\xe5\xdb\xf5\x49\xcd\x17\x0f\x3f\x17\xc7\x44\x14\x0a\x87\xd8\x41\x5f\x22\x51\x4a\x53\xe3\x2c\xe0\xdc\x97\xac\xd5\x0e\xf1\x6d\x8a\x89\x22\x57\x4a\x67\x33\x72\x4d\xe6\xfd\xa7\x85\x0a\x0c\xba\xc6\xf8\x9b\xf3\x77\x27\xa7\x67\xe7\xeb\xd4\x19\xdf\x34\x91\x3c\xdf\x34\x89\x34\x2a\x08\x3f\x14\x91\xfc\x96\x54\x51\x25\xfa\x1b\x3c\xd5\xe4\x10\xeb\xf5\xae\x4c\x10\x53\x88\xad\x4b\x12\x8f\xba\x90\xc4\xf3\x2e\x04\xf1\x7c\xb3\xe4\xf0\xe9\xc3\x90\x43\x45\x0c\x53\x78\xae\x49\x0e\x33\x62\xf8\x74\x83\xc4\xf0\xe9\x37\x27\x86\x29\xc6\x16\xc8\xe1\x9b\x1c\x26\x6f\x84\x20\xae\xe0\x8a\xb3\x26\x77\xf9\x52\x14\x4f\x86\x3a\x13\xc9\x43\xb1\x98\xc6\x30\x1b\xe5\x33\x8d\x7e\xff\x95\x99\xcd\xc1\x77\xc9\x6c\x96\x90\x62\xf5\x6f\x36\x43\x67\x9f\x7c\x77\x6c\xe7\x93\x0d\x52\xda\x27\xdf\x9c\xd2\xfe\x60\x3b\x6b\x09\xe7\xe6\x78\x4f\x93\x6c\x7e\x05\x06\xf4\x11\x11\xce\xa3\x1c\xe1\x1c\x3c\xd9\x00\x5b\x3a\x59\x88\x44\xfb\xdf\x86\x3b\x2d\xe0\xc7\xaa\x5f\x6c\x86\x7e\x1e\x3d\x30\xfd\xdc\x14\xa7\x6a\x52\xd0\xa3\x0d\x52\xd0\xa3\xaf\x47\x41\x7f\x25\xd4\x61\x53\x24\x4a\x3d\xa8\xdd\x04\x22\x97\xc7\x0c\xde\x3a\xc1\x94\x10\x8e\x9a\xf8\xd6\xc0\x6b\x4e\x6c\x6f\xa6\x51\x30\x15\xcd\x64\x76\x26\x11\x52\xfb\xad\x38\xd7\xaa\x47\x95\xe9\x0d\x2d\xf4\x4c\x28\x7e\x33\x02\xab\xaf\x97\x29\x59\xc4\xa1\x23\x9c\x6d\x94\xbf\xad\x4a\x14\xec\x30\x52\x04\xdb\xf3\x7a\x7b\x63\x49\xcd\x2b\x94\xd8\x99\xae\xf7\xc8\x48\xd1\x64\x23\xe0\x27\x2a\xcb\x9f\x9d\x72\x57\x05\x32\x9a\x0e\xcd\xfb\x87\x95\x7f\xe4\x3c\x73\xf7\x33\xdc\x8a\x54\x7d\x70\x1d\x30\x09\x54\x2e\x45\x70\xe1\xc2\x38\x26\x37\xae\x30\x80\x8b\x9f\x1f\xa6\x48\xc3\x48\x33\x8f\x37\x51\x1c\x3b\x97\xc8\x11\x4d\x51\xc8\x61\x56\x0d\xbe\xbe\x3c\x38\xdd\x26\x11\x22\x7c\x2b\x2e\x37\xf1\xa3\x6a\x0a\x98\xb0\x87\x9d\x06\x07\xc3\x7c\x1e\xab\x10\x66\xe7\xe4\x06\x52\x64\x9f\x0f\x3f\x55\x84\x8a\x1f\xc2\xf7\xb1\x72\x1e\xe9\x17\xd7\x11\x74\x16\x82\x9e\x3b\x99\x45\x24\x71\x2e\x61\x82\x42\x87\x60\xe7\xf5\x53\x27\xa0\x11\x43\x34\x82\x43\x67\x0e\xd9\x14\x38\x72\x82\x82\xfb\xd1\x19\xd2\xc6\x63\x6b\x84\xed\x8a\x64\xe4\x58\x61\x6f\x2f\x80\x34\x74\xc1\x45\x3e\xc1\x98\xa8\x7f\x29\x3d\x2a\x7b\xd2\x3d\xfd\x00\xa4\xe0\x2b\x24\x9d\xcc\x62\x4a\x85\x11\x4d\xdd\xf9\x38\xad\x34\x9a\x0b\x35\xcd\x75\x53\x38\x2c\xb9\x1b\x24\x57\x89\x41\x1e\x23\xe3\xf8\x18\xb7\x9b\x7d\x6a\xca\x39\x42\xd4\x9c\x68\xba\x07\xd3\x4f\xb2\x01\xba\x46\x01\xa5\x02\x75\x75\xb6\xd5\xf2\x75\x73\x60\x26\x58\xad\x0e\xef\xb1\xb1\x61\xc5\xf0\xe3\x76\x83\xa9\x24\xaa\xdd\x86\x2a\xd3\xf3\xc3\x86\x8a\x0e\x07\xab\x10\xfc\x56\x9c\x79\x37\xdc\x70\xbb\x73\xeb\x56\xfd\x89\x0c\x3a\xcb\x0e\xae\x05\xe2\xfa\x3b\x23\xcf\xb3\x2d\x4f\x74\x0e\xf7\xf2\xb1\xe9\x07\xb6\xe2\xbf\xe3\x8a\xfc\xd1\xfb\x22\x5e\xdb\x20\x26\x35\xf7\x67\x5e\xc7\xf3\xae\xb0\x8c\x26\x88\x3f\x33\x60\x6c\x7e\x0b\x36\x51\x07\xb7\x22\x1c\x1c\x13\xc6\xa9\x66\x84\x27\xa4\xf6\xe6\xaf\x42\x7d\x63\x9e\x0e\xa4\x88\x93\xd7\x2c\xdd\x7d\xdf\x79\x35\x11\xdc\x10\x99\x08\x7a\x3d\x21\xfc\x4a\xe1\x12\xa7\x49\x9a\x67\x90\x05\x53\xf1\x9e\xa2\xdf\x17\x28\x61\x40\xfc\xf1\x4a\xdb\x93\xe5\xa5\x24\xfc\x3b\xfa\xce\x7b\xd9\x24\x91\x19\x55\x26\x30\x8a\xf9\x65\x20\xbb\x30\x46\x9a\x53\x72\x1d\x85\x28\x74\x28\xe1\x13\x91\x5d\x84\xf2\xd6\x20\xf3\x39\x49\x22\x86\x74\x5b\x71\xcf\xed\xf2\xab\xd1\x81\xca\x79\xfe\x92\x5c\xa3\x7e\x3b\xc7\xa8\x2a\xc0\xe8\xf7\x50\x21\xe8\x13\x29\x81\xda\xe4\xde\x97\x6f\x4f\xcf\x3f\x7d\x7c\xff\xda\x28\x22\x7e\xb5\x88\x42\x94\xec\xc2\x20\xee\xcd\xa2\x2b\x0a\x19\xea\x89\xcc\x26\x49\x7f\xca\x66\x2a\x40\x5c\xa6\x4c\xa7\x57\x22\x2a\xef\xd3\x65\x0c\xf1\xe7\x94\x65\x12\x62\x12\x26\x64\x8e\x30\xa2\x0e\x26\x14\x4d\x10\xa5\x79\x6a\x19\x92\x40\xb8\xc9\x54\x2b\x21\xdb\x33\x8f\xc7\xda\x0d\xc0\x70\xa5\xc8\xf6\x58\xc4\xf6\xa5\xe2\xaa\xae\x26\xfc\x22\x4b\x1b\xfc\x82\xe0\x34\x05\x93\xa8\x5a\x54\x3c\x02\xc6\xfd\x75\x68\x89\x8a\xb2\x9c\xf1\xca\x4a\xeb\xdd\xe9\x42\xb5\xe8\xa8\x26\x9d\x3f\xea\xe2\xaa\x3b\xaa\xae\xa3\xd4\xcd\x39\xf1\x58\xb9\x30\xf7\x44\x8b\x15\x5d\x07\x55\x47\x59\x3e\xe2\xd5\xb3\x8f\x57\x28\xb7\x0f\x2a\xaf\xc6\x37\x24\x77\xda\x6f\x11\xab\x0e\x8a\xad\xba\x05\x2b\xbc\x15\x1b\x96\xd4\x2e\x8f\xb9\x7d\x41\xd5\x57\xbd\x49\xf1\x44\x91\x9d\x00\xcd\x99\x03\x71\x46\xb0\xfe\xfe\x87\xc4\x61\x14\x4e\x26\x51\xa0\xd2\x3f\x19\x4c\x27\x70\x92\x05\xa7\x55\x89\x60\x3e\x9d\x39\x45\x93\xe8\x0b\x4a\x1c\x88\x43\x67\xca\xd8\x5c\x71\xa3\x49\xff\x6b\x41\x49\xa5\x98\x5c\x15\x50\xb9\x82\x0f\x24\x48\x7a\x71\xa4\xe8\x50\x9d\x62\x6c\x35\xaa\x18\x90\xd9\x0c\xe2\x30\xc9\x88\x4c\x46\x09\xeb\x49\x5e\x05\xa9\xd4\x6a\xb9\x46\x4a\x58\x1f\xd5\x5d\x00\x43\x8c\x20\xc5\x9b\x85\xc3\xeb\xb3\x93\xf7\x6f\x4a\xd0\x10\x04\xf7\x4a\x56\x2c\xe1\xf4\x81\x32\x14\xee\x2a\x19\x69\x33\x90\x79\x8f\x60\x28\x2e\x49\x71\x21\x75\x01\x4d\xab\xec\xf6\x9d\x4b\xe9\xd7\x04\xb7\x37\x36\xae\x37\xd5\x35\x6a\x8d\x19\xfa\xd2\xac\x33\x16\x65\x0f\x6b\xf4\x0e\xb5\xee\xe3\x16\x6d\xb1\xee\xcf\xf1\x64\x71\x28\x18\xfb\xb5\xdc\x88\xa8\x5a\xa4\xf6\xf5\xa0\x30\x23\xb1\xa4\x7d\xa0\xaf\xd7\xfc\x6c\x15\x2a\xe4\xeb\xfe\xd7\x4c\x40\x72\xdc\x4a\xec\x6c\x14\xf7\x52\xde\x5a\x00\x51\x2f\xb1\xa3\x98\x62\x55\xed\x1d\x74\x2f\x00\x28\x1c\x26\x7b\x69\x26\xe7\x2a\x2f\xc6\xec\xd2\xea\x49\x17\x4b\x25\x81\x73\xae\x85\x24\x39\xa5\x77\x4b\x96\x24\x63\x2f\x84\x43\x79\x07\xc6\xc4\x28\x87\xb8\xff\xac\xa8\x92\x68\x4f\xb7\x1f\x88\x0d\xb0\x33\x01\x67\x61\xc4\x8c\xcb\xd2\xca\x38\xb6\x2a\x80\xb1\xf1\x5b\xbe\x05\xc3\x3a\x11\x2e\xb4\x06\xc3\x2a\x99\xd4\x64\x71\x39\x8b\x98\x66\x52\xf7\xec\x4c\x21\x0c\xc3\x26\x8e\xb0\xeb\x45\x7b\xcc\xa9\xf8\x24\x9d\x50\x4a\xb0\xd3\x14\xe5\x52\x2d\x64\x4c\xa2\xe8\x0d\xac\xb2\x10\x58\x13\x8e\xd5\xe6\x17\xdb\xe8\x5e\xad\xc4\x6b\x58\xe4\x7d\x71\x62\xa5\x2d\x2f\xdd\x91\xa2\x1f\x71\x59\xdb\xf5\xc4\x88\x0f\x2b\x79\x4b\x47\xc9\xcb\x88\xb2\x5b\x53\xab\x95\xf6\x66\x50\x31\x9b\xa6\xa1\xf2\xf8\x57\x0c\xa5\xe7\x5c\x2f\x9a\xc8\x34\x33\x8a\xd6\x94\xd4\x90\x95\xba\x0a\x03\x73\xce\xe1\x35\x6a\x27\xc4\x5a\x41\x1b\x64\x25\x63\x36\xb1\x6a\x8a\xc4\xc5\xfb\xd0\x8b\x96\x85\x6e\xea\x45\xd8\xc6\x82\x45\x2b\xd5\x55\x35\x95\x3b\x4d\x39\xf0\x0d\x6d\x12\x70\x67\x8b\x5c\xee\xfb\x44\x58\x51\xce\xa7\xe4\xe6\x5d\x11\x86\xbf\x2f\x90\xd0\xfe\x2a\x8a\x24\xd3\xe2\x8b\xd0\x23\x84\xaf\x65\x00\x92\x91\xaf\x47\x30\x25\x22\x3a\xc9\xd0\x10\x6b\xdb\xb1\xf2\xfc\x4f\x4a\xb6\x6e\xc3\x99\xce\x3c\x50\x3a\x40\x20\xc9\x3b\xae\x97\x3d\x43\xc4\xb2\xa7\x7c\x41\x2a\x39\xd0\x66\x72\x05\xd5\x87\x68\x6c\x30\x65\x10\xa8\x82\x7f\x3e\x1f\x7f\xce\x26\x3d\xac\xc8\x50\x40\x91\x60\xa8\xbc\x5d\x6d\x8a\xde\xbd\x02\xcc\x5f\x02\x6d\x72\xb6\x7e\xb7\x8d\x54\xf5\x45\xcf\xd5\x09\xee\x97\x00\x86\x61\xae\x31\xc0\xfe\xdd\xb6\x27\x62\xc4\x45\xdd\x99\x8b\xb1\xdf\x8f\x70\x10\x2f\x42\x94\x78\xd8\xdf\xd9\xc1\xfd\x28\x79\x83\x6e\x76\x76\x3c\x26\x8a\x9d\xeb\x52\x3f\x00\xfb\x80\xf5\x45\x11\x1a\x0e\x11\x51\x40\x51\x68\x31\x4a\xdd\xd7\xf5\xee\xb1\x3e\x45\x33\x72\x8d\xaa\xbb\x5d\xae\x98\x7b\xa9\xb0\xd1\x8f\x23\x02\x67\x7a\x82\xfe\x07\xbe\xf9\x9b\x3d\x02\x07\xce\xa3\xec\x4c\xea\xca\x1f\x69\x7d\x8f\xac\x32\x45\x56\x82\x05\xb8\x6f\x8c\x1c\xbe\xd6\x3a\xe0\x21\x64\xb0\x97\x63\x43\xc2\x40\xdc\xf8\x3a\x60\x27\x8d\xc1\x87\x0b\x46\x26\x51\x1c\xa7\x19\x9e\x80\xfb\x22\xa1\x41\xd1\x32\x54\xe4\x5e\xb2\xc2\xe0\x6e\x26\x4e\xa7\x4e\xc3\x2a\x0e\x27\xf5\x7a\x6b\x55\xec\xda\x5a\x51\x7c\x7f\xef\x61\x38\x55\x25\x58\x75\x67\xfc\x84\xa7\xec\x78\xd5\x18\xdc\xbc\x82\xe8\x50\x6d\x94\x99\x92\x59\x56\xfe\x31\x4d\xd7\x59\x69\x41\x71\xbb\xca\xd4\xd5\xe6\x27\xbd\x34\xd7\x7f\x73\x82\xdd\xfd\x81\xb0\xe4\x2e\xa4\xfd\x14\x39\xe9\xe6\x39\x13\xb2\xc0\xa1\x91\x73\x57\xcb\xa5\x3a\xe5\xeb\x1a\xc1\xee\x05\x41\x95\x51\x82\xaf\xcc\xd9\x66\xca\x7a\xe1\x54\x66\x8b\xf1\x97\xff\x4e\xb0\x31\x61\x18\x53\x04\xc3\x5b\xf5\x8d\xf0\x94\x10\xbe\x03\xf2\x7e\xe9\x99\xde\x52\x73\x18\xd1\xbe\xf3\x2e\x46\x30\x41\xda\x47\xcd\x09\xa3\x89\x48\xf3\xc1\x1c\x99\x0d\x58\x36\x25\x93\xd4\xe1\x4f\xd8\x74\xa5\xb3\x93\xd0\x62\xa4\x43\x27\x0e\x23\x0e\xe2\x12\x8a\xe9\x07\x97\xbe\xee\x9a\x99\xbc\x09\x3c\x22\xf0\x76\xbb\x12\x28\x0d\x25\x10\x0a\xd3\xb2\x66\x5d\xd6\xbc\xad\xb9\xef\x69\xb4\xf4\x0a\x18\xd1\x16\x15\x2e\x69\x5e\x9c\x1f\x94\xc6\x32\x63\xb6\xf7\x81\x3b\x34\x43\xbf\xed\x53\xaa\x67\xb3\x3a\x3b\xc9\xac\xa1\x8f\xca\x3b\xc1\xb7\xa7\x4d\x82\x6e\x77\xf6\xed\xda\xdf\x37\x36\x91\x93\x95\xb6\x39\x3c\x4d\x7c\x90\xe1\xf6\xaf\x12\x2e\x7e\x73\xd6\xcd\xda\x47\x8b\xf3\xae\x56\x29\xa8\x9b\xce\x57\xa6\x96\x59\xbc\x5c\x0c\x3c\x3c\xe2\xab\xdf\x95\x02\x2f\xbf\x59\xd4\xaf\x07\xfc\xd7\x94\x81\xac\xb9\x30\x14\x7b\x7a\x9e\xf2\x9a\x66\x0a\xbe\x92\xf8\x5a\x79\x1c\x9e\x3c\x8c\x57\x69\x7b\x78\xb8\xbb\xff\xb6\xfb\x6f\xbb\xa9\x13\x58\xe2\xd6\x2c\xf6\x4d\xd6\xa4\x66\xad\x2d\x5d\xbd\xf6\x80\x42\x3e\x2d\xb5\xa9\x4b\xdf\x7e\x3b\x4b\x54\x2b\xca\xa3\xd5\x06\x4d\x9b\xd6\x24\xcf\x8e\x67\x67\x21\x15\x2f\x5e\x18\x92\xc3\x8b\x9c\xe8\xf0\xc2\x90\x34\x5e\x94\xe5\x88\x17\x45\xc1\x24\x65\x6f\x4c\x8f\xd7\xc0\xf0\x47\x35\x11\xf2\x10\x28\x36\x46\x71\x31\xcf\x14\x33\xb3\xa7\x7e\x0e\xd4\xcf\x7d\x95\x15\x26\x83\x47\x26\xf7\x67\xcf\xa2\x44\xf9\xbd\x1a\xcf\xf4\x68\x15\x6a\x95\x66\xb7\xba\x0a\x11\xdc\xaa\xc8\x18\x98\x19\x94\xa2\x44\xd5\x91\x34\xa7\x63\x4c\xbb\x28\x31\x1b\x5a\x12\xed\xaa\x07\xaf\xeb\x1d\x8f\x5b\x78\x58\x14\x18\xbd\xc1\xe1\xb8\x80\xc2\xe5\xb5\x58\x66\xaa\xa6\xa8\xd4\x03\x0d\x15\x6b\x2b\x6e\xbf\x23\x83\x70\x1a\x3b\xb5\x99\xec\x52\x82\x9e\xbe\x14\xe7\x0f\x62\x82\x6f\x67\xb2\xa2\xf9\x7a\xfe\x60\x96\xd2\x73\xe9\xd1\x49\x2b\xd9\x81\x8b\x5c\xa9\x38\xf1\xcb\x0d\xc4\xc2\xff\x4d\x0a\x6d\x92\x5f\x4a\xb9\xaf\xe7\xab\xfa\x53\xb5\xd2\xdb\xad\xd2\xb9\x42\xa6\x81\x89\x4c\xfb\x99\x8e\x29\xb3\xfa\x0f\x9e\x34\x63\xca\x7e\x41\xfd\x73\x08\x2e\x0e\x8e\x8b\x14\xed\x89\x71\x22\x54\xef\xd9\xf9\xcc\x4c\x2b\xe9\xb8\x55\x2e\x5f\xf5\x61\x1a\x1d\x01\xa8\x76\x78\x65\x00\x1e\x6b\x5f\x83\x62\x11\xd2\x3c\xc6\x00\xf7\x45\x26\x7f\xbe\xc8\x14\x78\xc2\xe1\x5a\x39\xf0\xc9\x1f\x87\x95\x44\xcb\xbe\xfa\x03\x70\x08\x8e\x2a\xd3\x6a\xaf\x62\xc7\x5b\x99\x8f\x5b\x39\xd7\x53\xf5\x1d\x76\x1d\xa1\x9b\xbc\xba\x7f\x9c\x66\xff\x6d\x77\x0f\xd7\x56\xe8\xe8\x0c\x20\x8b\xbe\xb1\x26\x53\xb7\x56\x1c\x62\xc2\x7a\x59\x32\x22\xa1\x2e\x48\xb5\x05\xa9\x52\x50\x2a\x0a\xb3\xdb\xb9\x4a\xad\x67\x5c\xcd\xe5\x9b\xb9\x78\x31\x0b\x0e\x9e\x8f\xa0\x34\x1e\x52\x31\x09\x31\xbf\xa0\x0d\xf5\x84\xba\xbe\x25\xbf\x94\xb1\x26\xae\x30\x5d\x27\x22\xb6\x65\xe5\xa4\xb8\x36\xb5\xd1\x26\xb5\x82\xda\x43\x69\x98\xab\xf0\x1c\x25\x7d\xbd\x8e\x8a\x0c\x44\x40\x83\x65\x85\x0f\xe5\x7b\xf3\xc3\x65\x51\x03\xa9\x39\xe5\x82\x26\x51\xe6\x7c\x65\x7d\xce\xae\xf6\x17\x38\xfa\x3d\xd5\x26\xfa\x7d\x46\x64\xd1\x66\xbf\x3f\x89\x62\x86\xa8\xe7\x95\xf3\x51\x6e\x8b\x04\xda\x18\x05\xac\x37\xa7\xe4\xcb\xad\xd4\x62\x4d\x7b\x57\x90\xa1\x1b\xa1\xc6\x65\x88\xce\x04\x0a\xe0\xab\xf4\xe9\x38\x53\x12\xa2\xfe\x9f\x23\x1c\xfa\x4b\xdf\xef\x27\x84\x32\xcf\xab\xd0\x90\xf2\x39\xf5\x45\xf5\x04\xc4\xc1\x0f\x29\xf2\x98\x78\x28\x72\xf7\xd0\x91\xc8\xda\x24\xf7\xe0\xdf\xdc\x65\x56\x77\xd4\xf7\x0b\x4a\x52\xd4\xcf\xd0\xd7\xdf\xa2\xf7\xf7\xfc\x4b\x3a\x92\xdf\x9a\x2f\x73\x9d\xa8\xca\xd2\xb8\xd4\x59\x01\xe7\xfd\x2d\x28\x7b\x84\x69\x8f\x85\x16\xb9\x6e\xb3\x92\xa3\x4a\x23\x19\xa1\x44\x6e\xf0\x9d\x3e\x6f\x43\x0c\xb2\x39\x0d\x29\x28\x74\x37\x84\x4b\x7f\x09\x72\x02\x42\xdd\x16\x67\x7b\xfa\x95\xa1\x7d\x5e\x0d\xeb\xf3\xee\x90\x3e\x6f\x80\xf3\x79\x5b\x28\x2b\xfa\x96\x01\xf9\xbc\x00\xe2\x73\x05\x60\xc1\xc2\xdb\x20\x0b\x28\x80\x23\xd4\x97\xa6\x56\x9d\x06\x0c\xca\x62\xf3\x32\xb1\x97\x41\x2e\x87\xe2\x41\x91\x4e\x0e\xcd\x66\xe7\x96\x46\xe7\xee\xd0\x28\xa1\xaf\x13\xb8\x79\x78\x44\x47\xb0\x2f\x54\xd6\xbe\xa8\x77\x2f\xd7\x79\x85\x98\xa7\x1e\xab\x58\x3a\xdf\x07\xea\xc1\x08\x83\xbd\xd1\x68\xa4\xea\xf7\x4a\x0c\x53\xc7\x3b\x83\x35\xf6\x75\x21\x77\x9d\xa9\x4c\x01\x19\x2f\x41\xc7\x95\x15\x4b\xea\x66\xb7\xc8\x05\x4d\xb7\x28\x3f\x9b\x14\x45\x7d\xdf\xcc\x75\x56\x0f\x9e\xe2\x38\xe9\xbd\x55\x1c\x46\xbd\x30\x47\x59\x16\x3e\x96\x4b\x04\xd4\x5f\xb2\xfe\x14\xe2\x30\x46\x67\xd7\x08\x33\x0f\x6d\xc2\x56\x21\xaa\x57\x88\x30\x88\xc7\x61\xb1\x78\xfa\xe7\xa7\xf1\xe0\xf8\xfa\xca\x6e\xb1\x60\x11\x8b\x51\x62\x48\xd4\x55\x39\xbf\xa4\x54\x74\x6c\x48\x45\x65\x83\xba\xa1\x72\xc9\x05\x39\x59\xe2\x41\x9e\xe4\x83\x90\xa2\xaa\x26\x2e\x70\x5f\x3f\x75\xde\x2f\x62\x94\x94\x8a\xe8\xb7\x97\xbb\xaa\x2a\xfa\x73\x39\xb5\xec\xef\xc3\x77\x50\xe6\x60\x74\xdc\xd4\x2f\xde\x2d\x55\x6e\xdf\xcf\x07\x40\xe4\x43\x15\x8a\xe6\xea\x9a\xea\x7f\x56\x8f\x59\xad\x1a\xdd\x33\xea\xe4\x8b\x9a\x0f\x0d\xb3\x28\x0f\x5d\xe1\x43\x55\xed\xe0\xea\x5a\xab\xf7\xef\xd9\xc7\x93\xfb\xbc\xba\x39\xe1\xaf\x28\x01\xe9\x62\x85\x53\x5a\x3e\x19\x9a\x62\x9c\xa3\xa4\x22\x08\x2d\x53\x21\xef\x4b\x4f\xb6\x42\x92\x0b\xf5\x7d\xb8\x40\x3a\x54\x6c\x1a\x5d\x4d\x51\xc2\x9c\x39\x45\x01\x0a\x11\x0e\x4c\xc3\xc9\x25\x8a\xc9\xcd\xb0\x5b\xe2\xe1\x16\x50\x12\x88\xbe\x3a\x90\xde\x10\x50\x58\x68\x05\x8c\x30\x61\x8f\x11\x4e\x66\xd8\x49\xed\x12\x0a\x41\x7e\xf6\xd0\x43\x91\x96\xb2\xe5\x7a\xd8\x94\x92\xc5\xd5\xd4\x89\x58\xe2\xbc\x7e\xea\x50\x4e\x47\xfa\x15\xae\x1d\x8d\xb2\xa8\x45\x03\xd5\xa2\x04\x53\xab\xf2\xaf\xa9\x44\x24\xe4\xa7\x54\x44\x93\xbe\x5d\xda\x5f\x62\x42\xc9\xac\x87\x30\xa3\x11\x4a\x36\x20\x1d\x15\x2f\xaa\x6f\x5b\x37\x24\x37\xab\x47\x71\x71\xfe\xf9\x30\x08\xe1\xe5\xff\xcc\xed\x17\xe7\x8d\xf0\xe2\xe7\xbb\x23\x6c\xfe\x3b\xd9\x61\x4e\xc3\x5a\xb2\x72\x4b\x99\xa9\x3e\x0c\x0a\x41\x2e\x2d\x6b\xca\xe6\x6f\x27\x57\x5e\x29\x47\xb6\x2b\x45\x9b\x26\xf4\x04\xb5\x69\x22\xc2\x9f\x4d\x5f\x81\x7c\x9c\x4d\x76\xa7\x48\x43\x8d\xb0\x8b\xeb\x5f\x9f\xf0\x5f\xb3\x1d\xca\x1c\xcf\x73\xde\x02\xf9\xda\x4f\x4a\x05\x77\xfc\x30\x16\xff\x80\x64\xc1\xac\x2d\x7a\xad\x8c\xb3\x7b\x92\x11\x63\x9d\x58\xfa\x83\x34\x95\x15\x0c\x59\x35\x87\xa7\xc4\xb7\xd4\x7c\xc0\xd2\xce\xb3\x80\x21\x5d\x38\xe1\xa2\xa4\xab\x4c\xd5\x73\xe3\x71\x4b\xf3\x5f\xad\x6a\x5c\x0d\x71\xd8\xb2\xee\x42\xbb\x28\xc2\x63\x70\x90\xbf\xfd\xdc\x28\x8c\x51\x2e\x50\x78\xbf\x41\x03\x58\x7b\x5d\x94\xfb\xcf\x95\x71\x68\x35\x40\xed\xeb\x15\x1c\x5c\x9b\xb5\x74\xcd\x6e\x7f\x3d\x8e\xcb\x61\x4f\x22\x79\x84\xaf\x49\xea\x31\x72\x95\x7a\xf2\xa5\xd7\x40\xaa\xd7\xcb\x4a\x26\xa5\xbe\x75\x1b\xb9\x05\x1e\x1b\xfd\x17\xe7\xe4\x71\xdc\x02\xff\xf9\xf6\x6f\xff\x45\xae\x3f\x56\x94\x3f\x51\xb7\xb6\x9a\x69\xfa\x33\xf3\xb1\x4c\x63\xf3\x33\x87\xaf\x04\x09\x6d\xe8\x67\x74\x2b\xd2\xae\x9f\xaa\xc8\xc7\xcc\x3f\x4b\x44\xaa\x6a\xcb\x67\x4a\x27\x1a\xcb\x91\x1f\x03\x97\xc1\xcb\x45\x0c\x69\x2f\x20\x71\x8c\x14\xd2\x54\x86\x35\x08\x31\x27\xa5\x48\x83\xa7\x60\xb0\x3f\x2e\xc4\x65\x52\x72\xf3\x27\x14\x5d\x4d\x59\x4a\x9f\x0e\xc6\xe0\xe8\xd9\xb7\x0f\x34\xc8\xa4\x17\x55\x94\x54\x2c\x31\xc9\x12\x35\x77\x49\xdd\x6c\x76\xa1\x33\x1a\x64\x5d\xfc\x7f\xff\x6f\x87\xcf\xc3\x42\x32\xbf\xce\x39\xfe\xcc\xce\xea\x83\xdf\xe5\x3f\x23\xb8\xa0\x55\xde\x29\xbb\xc1\x6a\xa5\x72\x14\x5f\x2b\xfc\x71\xdd\xa2\xae\x1d\x20\xce\x89\x68\xe3\xde\x6f\x26\x00\x82\x72\xb1\x79\x45\x94\x0f\xeb\x50\xbe\x31\xba\xd0\x64\x07\x0a\xd5\x43\x44\x24\x73\xd0\xcf\x9c\xe3\xfa\x28\x14\xde\x02\xd9\x65\x3b\xd0\x36\xf0\x86\x04\x3a\xb6\x70\x8b\x41\x51\xec\xdb\x54\x8e\x2a\x33\xb5\x9f\xe3\xfd\xdb\xea\xb9\xa9\xdc\x9c\x47\x9a\x45\x44\x6d\x9d\x9b\xaa\x94\x36\xca\x4c\x53\x24\xa2\x3a\xa5\x50\xd0\x2b\x7b\x51\x18\x43\x9f\x2b\xf5\x81\xc6\x90\xa2\x5a\x69\x7f\x6c\xad\x02\xd3\xd8\x41\x8d\xb7\x47\xf7\x03\x14\x1a\xeb\x1b\xa4\x59\x61\x94\xb6\xc0\x58\xdf\x33\x63\x7a\xa9\x72\xa4\x7d\x06\xbd\xbc\x2f\xe5\x20\x9f\x35\xc7\x06\x02\x43\x01\x73\x32\x9f\x3b\x50\x24\x17\x2a\xc3\x70\xd5\x05\xd7\x11\xfc\xb6\xb4\xb8\xf9\xbc\xd8\xf2\xb6\x3e\xea\x43\x53\xa5\x8b\xf9\x5a\x27\xa7\x9c\xaf\x71\x95\xe3\xd3\xa2\x97\x07\x38\x43\x0d\xd7\xbe\x1d\x5b\x06\x03\x63\xde\xdd\xb3\xc5\x34\xa3\x8a\x15\x7f\x2d\xca\xe9\x9a\xe1\xdd\x5c\xf8\xa7\x05\x80\x2b\xa4\xbc\xab\x83\x61\xf1\x22\xb7\x00\x4f\x5d\x65\xc9\x6f\x10\xc3\x2b\x14\xfe\x72\x7b\xfa\xfe\xe5\x0a\xa5\xf2\x8b\xae\x24\xa5\xd2\xbe\x85\xd0\xd1\x34\xaa\x5c\xe9\xf3\x5d\x35\xbe\x73\x79\xeb\xc8\x19\x74\xf5\xf6\x5c\x2d\xb4\xed\x61\xa3\x34\x45\xb2\xd2\x39\xb9\x46\xb4\x37\x43\x78\x91\xf6\x8c\xbe\xcc\x21\x0e\xcb\xc9\xca\x3e\xa3\xdb\x4b\x02\x69\x78\x22\xf2\x21\xba\xb5\x56\x26\xc3\x81\xc9\x4c\xd2\x62\x0f\xa5\x3e\xc8\xeb\xa3\x0e\x8b\x5f\xca\x8f\x56\x8a\xc3\xad\x03\x1c\xa3\xd1\xd5\x55\x77\xa1\xc6\x71\x7e\x23\x14\xe5\x86\x6a\xc5\xfb\xb6\x98\x91\xd8\x86\x15\x93\x8c\xea\xa3\xb2\xae\x27\x79\xfe\xbc\xa6\x89\x32\x74\x70\x0c\x26\xb8\x9a\x93\x75\x4a\xdc\x6c\xf6\x21\x5f\x9b\xf6\xd5\x92\x69\x2c\x2e\xb5\x24\xde\x1b\xb4\xe0\x7c\x8f\xc0\xfe\x5a\x8c\xef\x59\xa8\x5c\x6a\x6b\x92\xc6\xd5\xe7\x93\xab\x86\x85\xe4\x32\xf8\x39\xa1\xd2\xdb\xb4\x19\x3c\x66\xe2\x0a\x77\x42\xa8\xd6\xe2\x76\x07\x9a\x4b\xb0\x56\x53\xb8\xa9\x3e\xb7\xbd\xeb\x64\xd9\xef\x39\x3f\x7c\xed\x6a\x6c\x1f\xef\x15\xdc\x65\x45\x38\x55\x5a\xa2\xac\xbe\xb7\x76\x4e\xd8\xe5\xd6\x2d\x92\x0b\xea\x7f\xa7\x72\x6e\x8e\x04\x4c\x5d\xbf\x55\xf0\xca\x0f\x5d\x9f\x65\x50\xff\x6b\xe5\x18\x9c\x62\xf6\xf3\x55\xa7\xd5\xae\xc1\x1e\x70\x17\x71\x07\xe8\xe6\x92\x06\xb5\xc2\xf2\x62\x0f\xb9\x88\x75\x0b\x16\x5b\x5d\x8c\x9b\xc2\xd8\x0b\xd7\x46\x39\x9b\x7e\xa1\x81\x8c\x21\xc8\xd5\xdf\x6c\x8a\x54\x6f\x71\x7a\x5a\x02\xbe\x04\xcd\xb6\xa0\xab\x23\x14\x75\xbe\xf7\x2b\xcd\xb2\xa1\x41\x33\x19\x69\x45\x5c\x57\x91\x60\x1e\xdf\x85\xb4\xb6\x2a\xe6\xbf\x22\x74\xb3\x1e\xd0\xca\x3c\x66\xc9\x0d\x1e\x3c\x05\xc7\xe0\x99\x35\xd7\xd8\x0a\x11\x76\x65\xbf\x72\x8b\x9d\x05\xec\x77\xf1\x87\x16\xc6\xf4\x29\x45\x93\x1e\x23\x2e\xdf\x9c\x4c\xaf\x9e\x9a\x54\x74\x22\x85\x79\xbc\xa0\xe5\x3a\xae\xa9\x09\x26\x89\x17\x57\xd1\xe4\x56\x04\x73\x1b\x15\x5f\x57\xac\xf3\x5a\x65\xec\x78\x1c\x26\x98\x42\xf6\x9b\xc7\x61\x87\xf9\xf2\x37\xf8\xea\xe3\xfb\x9f\xae\xed\x76\x18\x99\x0d\x5c\x5f\xd6\x2a\x47\x86\xfc\xe3\xb5\xc8\x38\xe9\xca\x7c\xce\x82\x4b\xcd\xfd\xef\x83\xb4\x87\xa7\x39\xaa\x53\x33\xcb\x4e\xc6\x26\xd7\x96\xbf\x14\xea\xa7\xe6\xcc\x51\x69\x2c\x5e\x5e\x22\x3d\x96\x51\x7a\x3d\xb5\x80\x02\xd7\x2e\xc2\xd2\x0e\xdb\x1a\xcf\x33\xaf\xae\x63\x30\x18\xe4\x43\x82\x35\xb7\x9e\x7a\xda\xcb\x28\xab\x2c\xdb\x8d\x36\x40\xa9\xd8\x2b\xcb\x3d\xe7\x66\x01\x84\xb9\x3c\x54\x96\x96\xaa\x73\x7b\x43\x15\xa3\x25\xb4\x3a\x6e\x94\xfc\x97\x8a\x5e\xcb\x9a\x89\x8f\xc6\xc5\x70\x5b\x4d\x6b\x5b\x64\x6e\x6b\x48\x4e\x9f\xd2\x29\x33\x4b\x7d\xb6\x55\xd2\xe7\x48\xf8\x40\x35\xa7\xae\xaf\xca\x58\x56\xc7\xfa\xd6\xe4\xaf\xdf\x37\x40\xb3\x56\xfe\xfa\x27\x05\x0f\x86\xfc\xef\x47\x60\xf0\x74\xcd\x7c\xe6\x65\x1e\xa2\xb5\xea\xd3\x50\xdd\xea\x48\xe5\x67\xf5\x0a\x59\xa7\x2a\xad\x9d\x86\x4d\x9a\xd1\x4e\x76\x25\x18\x9a\xd4\xf6\x9a\x07\x6e\x21\x8d\xf5\x5e\x4e\x51\x9c\x67\xf6\x8a\xd9\xcc\xc7\x55\xe9\xee\x72\xdc\x60\x2e\x4a\xf3\x48\x9c\x87\x74\x9a\xba\x1b\x95\xe5\x5d\xea\x0a\x84\x63\x79\x5f\x3d\x30\x03\x21\x45\xb1\xde\xb1\x3d\x47\x5e\xab\x6b\xfc\x59\xfe\x1e\x2f\x61\x69\xe1\x41\xd7\x73\x56\x23\x1a\xa5\x4d\xf2\x79\xb0\xa1\xb2\xb6\xad\x5d\x87\xc2\x4c\xe1\xc1\xf9\xa0\xb3\x58\x60\xa9\xd8\x43\x83\x86\x6a\x87\x27\x0e\x67\x3e\xb8\xa2\xf6\xaa\xee\x4f\x67\xed\x4c\x36\xe6\x53\x70\xe1\xca\x22\x34\xe3\x95\x13\x88\xf0\x7f\x7c\x52\x0e\x9f\x62\x97\x38\xba\xe2\x84\x72\x85\x81\xd2\x4b\xa4\xa2\x02\x65\xbe\x56\x4f\x96\xdb\xe5\xd8\x4e\xca\x53\x1d\xdd\x9f\x3e\x7c\x78\xd7\xcf\x60\x98\xcf\xac\xbc\x72\x38\x68\xd1\x8a\x73\x24\xa3\xb3\x4d\xcf\xb1\x36\x61\x86\xc7\x15\x6a\xb1\xc6\x34\x0e\x6e\xc1\x57\xca\x28\x9d\xd6\x35\x23\x40\x33\x2a\x6a\xca\x2d\x71\xb1\x9c\x42\x94\xc3\x5b\xb4\xe9\xa7\xc0\xee\x58\x1e\xc8\x86\xaa\x4f\x36\x84\xaa\x75\xfb\x75\xd4\x71\xbf\x6a\xd1\x59\x4f\xfa\x83\x48\x11\x3a\x96\x55\x32\x5c\x82\x25\xed\x6f\x89\xa5\x56\x0c\x35\xb3\x23\x96\x41\x6f\x03\x7a\x45\x60\xac\x3a\x77\x66\x26\x6e\xf7\x85\xfa\xcb\x7d\x21\x92\xd0\xa3\xd4\xa9\x8f\xaf\x45\xbe\x1b\xeb\x0d\x5e\x3d\x3a\x5b\x77\x78\x96\x76\xd3\x6d\x47\x8b\x08\x9f\xbb\x0e\x5b\xc0\x04\xb8\xef\xd1\x15\xfa\xb2\xa1\xd2\x52\x82\xfc\x89\x0e\x1d\x99\x6c\x4d\xfb\x7d\x8b\xfc\xc3\x6b\x94\x98\x12\x1d\xab\x2e\x2f\xd1\x55\x84\xa5\xdb\x38\x74\xfe\xfe\x87\xdd\xbf\xff\xa1\x93\x2d\xb2\x35\xee\xb6\x54\xd5\x37\x55\xfd\x6b\x65\xb8\xd9\xe8\x35\x9e\xbb\xa3\x7f\x13\x82\x92\x2d\x6f\x93\x55\x1f\x2b\x33\x22\x93\xab\xab\xd8\xae\x2a\xb1\x72\x80\xfb\x22\x30\x48\xd5\xd8\x91\xe5\x22\xe0\x7c\x1e\x47\xd2\x0c\xa6\x30\xc9\x59\xe0\x18\x25\x89\x93\xcc\x51\x10\x4d\x64\x84\x90\x3d\x0a\xbc\x91\xf6\xaa\x88\xa4\x74\x69\xab\xd8\x7b\x2e\x54\xa9\x32\xe1\x28\x7c\x49\xbe\x64\x94\xa9\x82\xd1\x3c\x92\x25\xe8\x2d\x3c\xe4\x93\x06\x1e\x32\x23\x67\xc6\xa4\x2d\xf4\x4c\x9e\xfa\xca\x84\x23\xd9\x9c\xd7\x27\xff\x7c\xbb\xd4\x4c\xba\x9a\xa7\xca\x8d\xca\xe9\x03\xca\x18\x5c\xbe\x98\xf7\x07\x9d\x2e\x66\x2b\xb6\x06\x6a\xf3\x7a\x99\xf8\x95\xc9\x65\xd9\xb3\x55\x24\xaa\xc3\x8d\x0b\x54\x46\x02\xd6\x14\xe7\x1a\xe4\xac\x82\x78\xa4\x94\x1e\xa6\x78\x74\xd8\x4e\x3c\xd2\xce\xe2\x4a\x1e\x07\x17\xe2\x26\x70\x0d\xf2\xb0\x96\x94\x94\x61\xb8\xd6\xcb\x14\x2a\x75\x28\x11\xa8\xb4\xf0\x5a\xe1\xb0\x24\x65\xea\xe5\xae\x20\x3a\x1d\xd6\x8a\x4e\x9d\x32\xd2\xaf\x47\x8f\xff\x24\xdd\x20\x6d\x7d\x16\x7d\x0f\xac\x2a\x3c\x29\xa4\x55\x16\x5e\x29\x47\x81\x94\xae\xff\x3f\x69\x31\xaf\x5a\xe1\x93\x7a\x29\x9b\x1f\xac\x24\x23\x54\xeb\x87\x6b\x32\xb0\xb5\x58\x7f\x2e\x81\x66\x3e\x03\x66\x79\x39\x32\x71\xf7\xda\x6b\xc9\xf1\x8a\x1d\xd3\x76\x9b\x9a\xcc\xea\x94\xdd\x4d\xf1\x0c\x05\xcc\x5a\x29\x71\x76\x2e\xe5\x64\x9a\xa3\x39\x75\xdc\x5e\x3f\x6b\x76\xc1\x96\x56\xea\xda\x96\x95\xac\x29\xfd\xf3\x49\x18\xda\x39\xdd\x5c\xc5\xc6\x9c\xeb\x60\x13\xde\xa7\xee\x4c\xea\xef\xce\x2e\x55\x10\x13\x36\x95\x4e\x21\x95\xb4\x43\x2e\xbc\x59\x2f\xb2\x4a\x9e\xee\x26\x38\x17\xf2\x72\xb7\x01\x73\x2e\xc7\x76\x25\xd9\xcb\xf3\xaa\xeb\x07\xcf\x64\x9a\x6a\x71\xf4\x19\x8c\x84\x9a\x43\x58\x6c\x52\xc3\xce\x4c\xf3\x4d\xd6\xb4\xd3\x86\xba\xbb\x27\x8f\xe2\x3c\x53\x0f\xf1\x5f\x05\xcb\x94\xa4\x31\x98\xc2\x24\x94\x33\xfd\x64\xdf\xcb\x89\xa8\x93\x2c\x53\xdd\xa8\xe0\x1c\x49\x90\x12\xa3\xf7\x24\x9f\xd6\x1b\xb2\xb4\x2c\xb3\xc9\xea\x19\x4d\xb2\x67\x32\x95\xce\x9a\x16\x27\xab\x6d\xc7\x30\x3b\xb9\x36\xe3\x85\x0b\xe8\xfa\x69\x73\xb0\xc8\x2f\x01\x92\x60\x8a\x66\x50\xa5\x73\x88\xb0\xb0\x1c\xa9\xcc\x10\x9e\x2b\x5f\xba\xbe\xce\xc6\x61\x6f\xa5\x78\x07\x1f\x50\x34\x27\x15\x6d\xf8\xab\x24\x62\x84\xde\xee\xba\x66\xa2\x10\x7b\x2a\x1d\x82\x05\xee\xe7\x1f\xaa\xcd\x53\x03\x70\xa0\x2e\x18\x0a\xfb\x30\x8e\x60\xa2\xa7\xda\xcf\x3a\x07\x6e\x5f\xaa\x79\xfb\x2a\x66\xf9\xbf\x38\x49\x4f\x5c\xdf\x07\x0a\x15\xdb\xf7\xd4\x9b\x32\x36\xef\xab\xad\x2f\xf7\xc7\x91\xe9\x1d\x25\xf3\xce\x3d\x6a\xf5\x9d\xbd\x4b\x81\x9f\x85\x2e\x3d\x37\x1d\xcc\x35\xac\x7e\x3a\x93\xcc\x85\xfb\x86\x48\xed\x40\x2e\x07\x47\xfa\x8d\xc8\x26\x93\x1d\xa7\x62\xe7\xe5\x0e\xef\x64\x7f\x43\xf7\x0d\x71\xa4\x1a\x87\xff\xff\xec\x0b\x0c\xd8\xd0\x15\x3f\xe4\x93\x77\x22\x5c\x64\xe8\xca\x9f\x42\x6e\x94\x2f\x84\x32\x61\xe8\xbe\x47\x57\x8b\x18\x52\xe7\xec\x8b\xf0\x5e\xe2\x48\xbc\xd4\x73\x79\xc5\x99\xe4\xd6\x13\x2a\x8e\x6f\x4c\x2b\x9d\x04\x64\x53\x47\xfe\x91\x9b\x84\xd6\x6e\x58\x67\x92\xd2\x8f\x12\xc4\xa5\xab\xa8\x39\x95\x6b\x48\x1d\x24\x73\xba\xc8\xcf\xfa\xe9\xd7\xbf\x12\xea\x61\x20\x5e\xf1\xef\xee\xef\xc5\xaf\x1c\xfd\xfb\x32\x67\x90\xe7\xfb\x5b\x69\xda\x1f\x95\x09\x1e\x19\xf9\xd9\x01\x5a\x1a\xfb\x5f\x9a\x4c\x3a\x50\xff\x93\xfa\xb5\x5f\xd0\x04\x67\xb4\xad\x3f\x89\x68\xc2\xa4\x39\xd8\x86\x2d\x8e\xb1\x02\xde\x63\xae\x23\x35\x73\x6b\x67\x7c\x86\x98\xbc\xb3\xcf\xb1\x8f\x7e\x5f\xc0\xd8\x33\x09\xb8\x42\x4a\x1f\x58\x48\x6d\xf1\x6b\x4c\x98\xe7\x66\x9d\xbb\x3e\xc8\x28\xf1\x70\x7b\x00\x4a\xa4\xd8\xda\x81\x41\xbd\x7d\x10\x46\xe1\x7b\x14\xa0\xe8\x1a\x9d\x30\x46\x13\x93\xac\x64\x09\x7c\x64\x1a\x1b\xbe\x67\x12\x0e\xfa\xb4\x2b\x2e\xc3\xbf\xbf\x2f\xa6\xbc\x31\x6f\x88\xed\x3d\xdf\xcc\x00\x56\x4e\x5e\x04\xb0\x44\x1b\xaa\x6c\xec\xdb\x23\x23\x79\x10\x06\x79\xab\x93\xff\x1c\xf7\xcd\x07\x43\xac\xf3\x1c\xe9\x44\x40\xc6\xd8\xc5\x54\x3c\x08\xa4\x1f\x2b\x49\x30\x97\xd6\x47\x09\x78\xc3\x62\xa3\xe7\x62\xbb\xd5\x12\xfa\x30\x0c\xcd\xec\x67\x52\xdc\xec\xa7\xcb\x65\x80\x8e\xfd\x61\xee\x0b\x29\x72\x34\x7e\xa4\xa6\xa2\x58\xb3\x21\x13\xf3\x56\xb9\x7f\xb2\x43\x60\x2f\xab\x50\x5f\x2f\xa1\xb2\x5c\x42\x53\x45\x84\x25\x28\xde\x41\xc8\xbf\x4b\x77\x29\x3d\xdb\x22\x3f\x56\x3e\x25\x9b\xf4\x93\x40\xfd\xcf\xe8\x76\x0b\xc9\xad\x52\x67\xbb\x60\x9e\x19\x8d\x46\xec\xfe\xde\xd0\xde\xf2\x07\x4b\x5f\xd4\x6b\xc8\x11\xe8\xfe\x84\xd0\x33\x18\x4c\x8d\x71\x98\x7f\x87\x04\x94\xe4\xe7\xe9\x2d\xc2\x7c\x20\x27\x29\x88\xba\x3e\x63\x62\xc6\xb9\xc1\x39\x79\xb1\x7c\x5e\x68\xe5\x03\xe3\x81\xef\x4b\x0a\x96\x61\x59\xbe\x93\x74\x4b\x39\x63\xea\x2b\xb8\x3b\xa8\x82\x24\xd5\xbd\x07\x19\x79\x9c\x23\x9a\x44\x09\xf3\x90\x1a\x5c\xb3\x06\x1e\x12\x99\xd4\xfc\x25\x28\x30\x05\x88\x03\x86\x92\x38\xbe\x84\xc1\x67\x2f\xfd\x4a\xb4\x4a\x3f\x2a\x24\x90\xa2\x6b\xb9\xdf\x18\xb2\xeb\xe3\xf0\xc2\x89\xde\xb1\xb7\x67\xbf\xbc\x7e\x52\xef\x85\x63\x77\xb1\xe9\xec\x59\xf3\xa4\x95\x63\x8d\x84\x91\xcd\xbf\x26\x15\xbd\x1b\x3c\x6c\x9e\x76\xd6\x4d\x08\x17\x9b\xa7\xc0\xac\xd7\xbc\xaa\x83\xcd\x93\xd6\x0e\x36\x4f\xda\x3a\xd8\x1c\x5b\xfd\x6b\x40\xf6\xa8\x28\xa9\x57\xb9\xdc\xb4\xd2\x5a\x3d\x88\xad\x5e\x8a\xde\x1b\xb3\xd6\x1f\xae\xaa\x03\x97\xf3\x70\xe4\xbc\xbe\xa2\x4d\x5e\xa5\x26\xdf\xb7\xef\x7e\x66\xed\x34\xc0\xb4\x69\x83\xfc\xa1\xc2\x22\x95\x26\xf8\xa8\x93\x7d\xd7\x9e\x20\xb8\x56\xcb\x2a\x91\x6e\x05\xa4\xc9\xac\xea\xd2\xb7\xb3\x5c\x32\x51\x5b\xd5\x65\x3c\xe2\xda\x06\xf5\x83\x35\xb1\x09\xeb\x38\xce\x6e\x26\xf1\x83\x66\x93\xb8\x15\x49\x34\x54\x5a\x58\xc3\x4d\x90\x15\x80\xb5\x09\x43\xf8\xc1\xa6\x0d\xe1\x07\x6b\x18\xc2\xeb\x70\xdf\x8e\x3a\x9a\x85\xcb\xbb\x72\xd9\xe6\xf7\xd0\x26\xe3\x92\x2e\x3c\xd3\x75\x0e\x52\x3f\x96\x6e\xe6\xb2\xd5\x4e\x9c\x50\x20\xd4\x1d\xb9\xff\x52\x28\xb6\xee\x99\xdb\x5f\xf3\xcc\xe5\xf7\xd7\xb4\xdf\xe5\xe8\xdc\x91\x59\xb3\x40\xcf\xb9\xe3\x39\xdd\x5f\xf1\x9c\xa6\xb0\xec\x78\x50\x8b\x20\xde\xc4\x49\xdd\xdf\xf4\x49\xdd\xff\x6a\x27\x55\x80\xe3\xf1\x1c\x55\x4b\xc0\x42\x9b\x52\xed\xcd\x15\x91\x37\xac\x46\x2f\x68\xc3\xa7\x26\x03\xa6\x1c\xe9\xf3\x1a\xf1\x98\xf3\x37\x42\xc2\x37\x94\xee\x36\x25\x78\xd6\x55\x5e\xb3\x2d\x36\x4a\x6b\xbf\xa3\xc9\xa6\xd4\xda\x25\x99\xa9\x49\xbb\x2d\x54\xa3\x4a\x8c\xf8\xd7\xd4\x74\x77\x51\x45\x96\x35\x79\x5d\x74\x91\x77\x19\xc7\x2a\xb5\x39\x06\x72\x14\x14\x7e\x5c\x70\x36\xde\x76\x50\xc3\x67\x63\x94\xf5\xdc\x26\x2a\xb7\x50\xfe\x9a\x8a\xdf\xf8\xd6\xf9\x8d\x53\xc9\x08\x5f\xb9\xc0\xaa\x7f\x3e\x5f\x4c\xc4\x43\xf9\x53\x3d\xac\x56\x48\xf3\x4e\x12\x84\xd9\xd0\x7d\x95\x38\x73\xf9\xbb\xd4\x0d\x67\xeb\xae\xd1\xc7\xfe\xa9\x7c\x44\x57\xd3\xc2\xa6\x9f\xaa\x0d\xab\xde\x13\x63\x62\x67\xbf\x2f\x60\x9c\xe8\x15\xd8\x35\xb2\x39\x22\xa2\x9a\xe6\x94\xb2\x19\x09\xb0\x2a\x55\x2b\x46\x73\xfd\x07\xd5\x7c\x66\x2a\xc2\x66\xad\x5d\x19\x5e\xd5\xea\x34\x66\xa8\xcf\x94\xae\x25\x05\xca\x48\x68\xd1\x8c\x8d\x40\xf2\x1e\xdb\x92\x9f\x9a\xef\x00\xb3\x2a\xc0\xb2\xf7\xe5\x97\xa2\xab\x0e\x9a\x2f\x50\xd4\x3c\x4b\x32\xd0\xe5\x34\xf3\x03\xdc\xa0\x3f\x7b\x10\x55\xd9\xe3\x49\x1f\xfb\x47\x86\xe6\x67\xcf\x0e\xff\x5a\x9b\x38\xf0\x24\xd0\xfa\x80\x13\x7d\x85\x9e\xe6\xca\xfa\xe8\x3f\xab\x12\xb2\xdb\x38\xd9\xbd\x96\x19\x3e\x2d\x0c\xd7\x31\x70\x65\xf6\xf3\x36\x09\x04\xcb\x4a\x38\x99\x9b\xb6\xe0\x63\x94\x04\x7c\xcf\x45\x19\x22\x14\xc7\x66\x3e\x41\x51\x38\xdf\xc5\x90\x45\xd7\xc8\x05\x87\xfb\xad\xf9\x41\xb7\x45\x9d\x25\x51\x45\xb2\x93\xaf\x67\xaa\xc7\xb2\xc7\x33\xa5\xaf\xed\x5a\xb0\x74\x56\x2b\x25\xd3\xcb\x31\x9b\x7f\x32\x9d\x40\x5a\x73\x9f\x95\xee\xb1\x62\xd2\x61\xcd\xa4\xb3\xe4\x4d\xf9\xec\xd9\x36\x56\x3b\x17\xe3\xbe\x01\xb6\xb5\x94\x5b\xf5\x21\x92\xd2\x18\x72\xc8\x8a\xd2\x87\xa1\x73\x18\xa7\x27\xc2\x48\x58\xa0\xfd\xca\xa4\xcb\x8d\xdd\xad\x4c\x25\x1a\xc9\xc3\x70\x15\x57\xe4\x5a\xf0\xc4\xa9\x94\xdc\x09\xe7\x4a\x39\x2b\x36\x97\x7a\x26\x57\xa8\x6c\x1d\x2d\x6e\x06\xf9\x34\xe5\xc7\x7a\xe1\x2c\x0f\x92\x99\x54\xfe\xd3\xb9\x40\x42\x5b\x2e\x90\xd6\x62\x67\xab\x69\x5e\x92\xf0\x76\xb5\x49\x6a\xea\xd0\x94\x68\xa4\x55\x8a\x11\x09\xad\x72\x7e\x11\x2b\x5d\x7a\x08\x38\xe8\x14\xbb\x2b\x83\x42\x39\xcc\x77\x23\x11\x2f\xd3\x74\xdd\xad\x57\xd2\x4e\x5b\xbe\x86\xd2\xe1\x70\x63\x49\x19\x1a\x53\x5f\x37\xe9\x37\x2c\x05\xec\xac\x55\x17\xaa\xd5\x14\x9a\x91\x10\xe9\x1b\x7a\x42\x51\x25\x8a\xc6\xa5\x3e\xc7\xa9\xf6\x41\xa7\xce\xde\xac\x26\x61\xe5\x0c\xd9\x75\x4a\x82\xb5\xcb\x0c\x19\xf3\x7c\x3c\x3c\x2f\xbb\x3a\x7c\x7d\xb2\xff\xe1\x2f\x1b\xe2\x79\xd3\xaa\x18\x2a\x97\x4a\x63\x49\xa2\x54\xf9\xfd\x6c\xd3\x2c\xb0\x2a\x1b\x34\xb0\xd5\x0b\x32\xf8\x60\xe5\x65\x9f\x33\xc4\x16\xbd\x8b\x53\x7f\x62\x87\x22\x18\x12\x1c\x67\xa5\x61\xb4\xbe\x37\x63\x99\xd3\xea\x00\x29\x9b\x2c\x2b\x18\x3f\x16\x56\x59\x99\x7c\x6d\xee\xc6\xfb\xe3\x72\x50\x7c\x09\x08\x45\x86\xb2\x3a\x7e\x2c\x4b\xff\x6a\x26\x4c\x18\xc8\x9a\x03\x59\xaa\xd9\x8a\xf4\xb2\xe5\xd4\x03\x66\xd6\x4c\x5b\x73\x5b\xa9\x61\x0b\xae\xc9\x0e\x0a\xc1\x31\x9b\xc8\xbc\x59\x90\x46\x0a\xa9\x41\x7b\x33\x23\x4c\xaf\x2e\x22\xa8\x52\x5a\x71\x36\x29\xb1\xf0\x7f\xe5\xf0\xb0\x4e\x57\x7c\x25\x9b\x50\x29\xc2\xb8\x2d\x63\xb3\xac\x5b\x34\x5e\x33\x5c\xcb\xc9\xc9\x4e\x4f\xeb\xae\xb8\xa7\xb6\xc8\xd2\x8a\xe5\xba\x2d\xe3\x8c\x4c\x7c\xcc\xad\x4f\x7a\xe3\x6e\x1a\xdb\xe6\x3a\x71\xc3\xe3\x40\xb5\xbc\xd0\x6a\xac\xfc\x83\x74\xd4\x58\xd7\xd6\xd3\x15\x13\x5b\xcd\xcd\x3e\xaf\x8d\xe0\x41\x07\xfc\xd7\x41\x2d\x1b\x8a\x56\xac\xc0\x97\x86\xa4\x89\x5f\x1f\x63\x4a\x2a\x95\x6f\x82\x11\x4f\x1a\x54\x2c\xba\x7a\xd2\x93\x5a\x67\x9b\xd5\x10\xe6\x49\x63\x2e\x98\x86\xca\x39\x79\xa2\x93\x5d\xe2\x6d\x90\xe6\xfb\x50\xeb\xe4\x95\x38\xc0\x7d\x11\xc4\x24\xc9\xd9\xdd\xbb\xf3\x34\x22\x37\xf1\xa3\xd1\xf2\x9c\x85\x11\x5b\x3f\x7e\xbb\x42\xf9\xb8\x92\x7e\x6c\x3f\xaf\x1f\x3b\xf8\xa1\x1f\xfb\xa1\x1f\xfb\xe7\xd4\x8f\x65\xd7\xe3\x0f\x1d\xd9\x0f\x1d\x59\x63\xe5\xd1\xf5\x15\x67\xd9\x45\x26\xdd\x8e\x61\x6c\x2a\xcb\x0c\x05\x5a\x5e\xb3\x66\x0f\x97\x95\xd1\xa7\x69\xa9\xd2\xc4\x4c\x8e\xba\xc9\x94\xa8\x56\xbd\xd6\x63\x52\xbc\x25\x08\xd2\x60\xda\xbb\x84\xf4\x71\xe8\xdc\x16\xfb\x34\xb8\x9c\xfc\xad\x22\x24\x23\x5b\x89\x0b\xdc\xb7\x73\xa6\x43\x34\xde\xce\x15\x1a\x48\x37\x74\x91\xd5\x1f\x34\xb5\x2e\xc7\x6b\xec\xc9\xe0\x8a\x4c\x06\x28\x29\xc7\x32\x70\x39\xb2\x0a\x3d\xff\xb5\x44\x4e\x15\xe5\x9a\x50\x84\x18\xfa\xc2\x7a\xb2\xa9\x99\xaf\x41\x74\x93\x65\x4a\x00\xee\x8b\x79\x0c\x03\x34\x25\xb1\x12\x34\x2c\xbe\x95\x9c\xa1\x38\x32\xd8\xb2\x43\x51\xd5\xf4\x5c\x76\x55\xf6\x94\x2c\x2a\xb5\xc4\x82\xe4\x4c\x6c\x7a\x16\x37\x5f\xe7\xa2\xe0\xe9\x2f\x9c\xb2\x24\x88\x73\x95\x2e\x66\x0b\x2e\xcd\xc4\x8a\x17\x41\x13\xbb\x57\xa8\xc8\xa8\x26\x98\x62\x59\x0f\x63\x75\x6e\xb2\xc5\x9d\x90\x46\x22\xac\xc0\x6c\x35\xd6\x98\x93\xc5\xe0\xaa\x05\x95\x0e\x54\xbc\xc5\x52\x74\x7c\x45\xcb\x95\x64\x42\x8d\xae\x4d\x75\x04\x2e\x32\xc4\x1f\x8f\x81\xf1\xcc\xd4\x10\xae\xe2\x53\xfd\x34\x63\xcf\x04\x0e\xf7\x54\xed\x74\xd3\xc5\xd7\x8c\x0b\x31\xca\xe8\xe7\xea\xd5\xa7\xcf\x8e\x84\xff\xbb\x44\x11\x64\x6a\xb4\x5a\x2c\xfe\x44\x8f\xdd\x9a\x85\xb5\x2e\x41\x16\x36\xaf\x5b\x81\xac\xf1\x9f\x5b\x80\x7e\xb4\xce\xfc\x5f\xaa\x81\x3b\xd5\x7a\x7d\x02\x4a\xaa\xb8\x95\x6e\xfc\x22\x2f\x62\x91\xa5\x2d\x94\x24\x21\xb4\x2a\xeb\x8f\x8d\x8c\x28\x38\xcb\x14\x2d\xe2\xd3\x0e\x84\x85\x0a\x27\x9b\x2a\xca\x32\xd8\x5b\xa3\xfe\xcd\xb7\x21\x28\xc5\x93\x9a\xd3\xc1\x5b\x72\x18\x8a\x3f\x94\x5e\x7f\x08\x93\xc0\x55\x28\xcf\x99\xf2\x97\x46\x35\x7e\x60\xfd\x20\x44\xe2\x0b\xde\x90\x7f\xa0\x0e\x8b\xf5\x8b\xac\x46\xa0\x1a\x46\x3e\x18\x3a\x27\xfc\xcb\xbf\x35\x7f\xa5\xc6\xd2\x9f\xfd\x4d\x0c\x58\xf1\x59\xa1\xb6\x9a\x1a\xd1\x78\xda\x30\x6c\xf1\xfb\x74\x9d\x46\x07\xb5\x13\x78\x47\x51\x80\x42\x84\x03\x3d\xb6\xf1\xc0\x39\x49\x02\x84\x43\x59\x89\xa5\xe1\x63\x35\xb0\xf9\xf5\x4b\x54\xfc\x7c\x73\x0a\xfa\xbc\xaa\xe1\x70\x5c\xca\x36\x56\x45\x31\x0e\x5b\x56\x21\x7b\x34\xf7\xd7\xc0\x72\x7f\x0d\x36\x73\x7f\xed\xa7\x1a\xb2\x34\x45\x5d\xae\xac\xdb\xea\x8a\x8b\x4c\xf7\x66\xbf\x43\xcc\x63\x6c\xaa\xdd\x0a\x2f\x3a\xc6\x3f\x16\xe8\x41\xf7\x78\xbc\x76\xb3\x96\xa8\x6e\x9b\xb6\x7e\xd3\x71\xde\x05\xaa\xb4\xa2\xf8\xdb\x70\xd3\xdb\x36\x5b\x17\x53\x7e\xb8\x8d\x2e\x12\xd3\x1c\xd4\xca\x2f\xbb\x6e\xb8\x22\x8d\x1b\xdf\xe9\x12\x35\xaf\x9a\xf7\x8a\x3b\xae\x49\xf2\xd7\xdb\xea\x5c\xc1\xea\x87\xdb\x6f\xeb\x7d\x96\x03\x5e\x45\x8b\xc7\xb2\xf3\xf6\x0b\xb5\x76\x05\xdf\x0d\x0e\x64\x97\xf3\x43\xa2\x40\x91\xa3\xc8\xc1\xae\xfc\xb2\xeb\xc6\x67\x3c\xc5\xc6\xf7\xbe\xc4\xce\x54\x4d\x7d\x65\x3a\xdf\x71\xf2\x9d\xe5\x21\xbe\xc6\x4d\xc8\x43\x83\x7a\x79\xc8\x6d\x11\x8b\x28\x24\x1c\x95\x66\x4f\xc6\x17\x6a\x15\x90\x99\xe1\xcf\xd0\x03\xa5\x7a\xcc\xf4\x09\xc1\xe9\x27\xb1\xe8\x81\x60\xd5\xab\x56\x65\x4e\x28\x99\xf5\x10\x66\x34\xe2\xe2\xe6\x1a\x4a\xca\xa2\x0e\xf0\x31\xe9\x27\xaf\x23\x74\xf3\x38\x34\x93\xb3\x97\x5f\x82\xb3\x5f\x3e\xff\x62\xd5\x4c\x5a\x75\x89\xc5\x4a\x8f\x79\x55\xe2\xb5\x2e\x6a\xb6\x9f\x4f\x53\x62\x95\xb6\xc5\xd2\x84\xa0\xdc\x53\x35\x4b\xeb\x42\x3a\xaa\x2a\xd8\xb8\x56\x47\x85\x97\x85\xa2\xdf\xd5\x35\x89\x6b\xfc\x02\xb4\x6c\x72\x54\x5d\x35\xbb\x9c\xbd\x54\x78\xbb\x9d\xbe\x7d\x73\xfe\xf1\xf5\xa7\x37\xe7\xef\x4e\x4e\xcf\xce\x3f\x9d\xbd\x39\xf9\xe5\xf5\xd9\xcb\xea\x8c\xfc\x15\x0c\xfe\x6e\xcd\x14\xce\x5d\x8b\x45\xa2\xf2\x0e\xa9\x03\x40\x0e\x70\x9a\x83\x5c\x0d\x66\xf9\xe9\x16\x8b\xf3\x7f\x5d\x60\x19\xe5\xf5\x57\x82\x93\x5b\xae\x3b\x52\xf6\x43\x5c\xc1\x1d\x27\x07\x6e\xa3\x3a\xd2\x06\x50\xd4\x98\xdc\x8a\xce\x4a\x8d\x13\xe6\x57\x1e\x8d\xe6\x9b\x99\xb5\x19\x7f\x93\x62\x78\xd6\xfd\x18\xb8\x6f\x76\x4f\x2a\xb3\x03\x54\x88\xf9\x8d\x95\x17\x8a\x1b\x9b\x0f\xcd\xdb\x6c\x89\x76\x0d\x8c\x42\x91\xa5\x42\xfd\xf8\x46\xc5\x24\x26\x2c\x0a\x90\x13\xe1\x09\xa9\xd0\x4f\x56\xdb\xc0\x8d\xc1\x44\x19\x87\xd7\x4f\x1d\xc8\x18\x8d\x2e\x17\x0c\x25\x7d\xe7\xd5\xc4\x81\xf8\xd6\x21\x13\x51\x38\x6d\x42\xb8\xc8\x1a\xe1\x2b\xc3\x16\x9e\x38\xc2\xee\x28\xde\x53\xf4\xfb\x02\x25\x0c\x88\x3f\x5e\x69\xba\xef\xdc\x44\x71\x2c\xea\x43\xdc\xf6\x9d\xf7\xb2\x49\xe2\xb0\x29\x64\xce\x04\x46\x31\xe7\x8b\x65\x17\xc6\x48\x73\x4a\xae\xa3\x10\x85\x8e\x30\x6d\x26\xb2\x8b\x50\x96\x6f\x23\x73\xa1\x42\x45\xba\xad\xd0\xa7\xef\x86\x5c\xaa\x96\x4c\x85\x03\x2f\xc9\x35\xea\x9b\xeb\xb7\x27\x61\xb6\x83\x44\xbf\x95\x45\x41\x65\xa1\xcf\x81\x9d\x2a\xbd\x7c\x7b\x7a\xfe\xe9\xe3\xfb\xd7\x59\x8e\xe9\xdd\xab\x45\x14\xa2\x64\x17\x06\x71\x6f\x16\x5d\x51\xc8\x50\x8f\x91\xcf\x08\x27\xfd\x29\x9b\xc5\xf2\xf4\xc9\x92\xa2\x2a\x85\xf8\x27\x51\x2a\x45\xed\xa6\x4b\x45\xc6\x35\x4c\xc8\x1c\x61\x44\x1d\x4c\x28\x9a\x20\x4a\xf3\xbe\x78\xaf\x11\xa4\xd8\x99\x11\x8a\xf8\x52\x17\xcc\xdc\x8e\xaa\xe5\xb6\xa9\x37\xd2\x90\x89\xdd\x92\x82\x7e\xac\xf2\x5d\x15\x8e\xc5\xb8\x94\xc7\xa4\x85\x77\x5a\x91\x02\x55\x33\x9b\x08\x5f\x1b\xb1\x05\x13\xce\x2a\xd2\xf5\x2d\xd7\x19\xe3\xf5\xed\xd9\xc1\xcf\x11\x0e\x1f\x07\x13\xf8\x8f\x9f\x3e\xa3\xbf\xbc\xfb\x32\xb1\x9b\xa7\x55\x35\xd6\x38\xc2\x9f\xf5\x8f\xda\x40\x67\x69\x32\xfa\x73\x84\xc3\xb6\x97\x64\x3b\xa3\x81\xa5\xdf\x4e\x7a\xe7\xfc\x1c\x07\x36\xd7\xc8\x56\x75\x91\x5c\x8b\x5b\xad\x72\x80\xed\xcd\x21\x6e\x51\x69\xb1\xd1\xa5\xb6\x5c\x20\x53\x21\xd2\x67\xb1\xfa\xa6\x6a\xc7\xa9\x7b\x5e\x55\xf7\x95\x6e\xb2\x6b\xf9\xcf\x1e\xcb\xa2\xca\x0a\x08\x25\x23\x7b\x6a\x4c\x5f\xc3\xaf\x69\x83\xae\x6e\x19\x13\x70\x54\xf2\x4c\xc8\xa1\x1a\x70\x23\x7c\x45\x51\x92\xf4\xae\x20\x43\x37\xf0\x76\x43\x75\xb5\x1c\xe7\x95\xec\xd7\x51\xfd\x26\x0e\xc2\x5c\x0c\x72\xd4\x78\x0e\xa3\x70\x32\x89\x02\x87\xcb\xc4\x8e\x4a\x26\x93\x38\x64\xc1\x92\x28\x44\xe2\x5e\x3c\x15\x68\xa1\xdf\x39\x33\x94\x4c\xf9\x5d\x9b\xb6\x8d\x70\x5d\xd3\x7e\xdb\xe2\x5d\x2d\xe1\xc4\xf8\xf5\xc0\xa5\x13\x7c\xb5\x71\x58\x7d\xc8\xfa\xce\xe0\x25\xab\xc0\xaa\xd2\xaf\x3d\x09\xbd\xd0\x5c\x7d\x15\x80\x02\x32\x9b\x2d\x70\x14\x40\x86\x64\xd1\x31\x2b\x74\x57\x82\x95\x75\xf6\xbf\xf1\x71\x8b\xdb\xcc\xf9\x1e\xbe\x1c\x32\xe1\xd3\x94\xd5\x6b\xd5\x8e\x5f\x22\x76\x83\x10\x76\xc2\x68\x32\x41\x14\x61\xa6\x17\x12\x42\x06\x03\x84\xf9\xf0\x7d\x8b\x93\x63\x4b\xbf\x35\x7b\x19\xb5\x4e\x7e\x8c\xad\x4e\x24\x27\x07\xab\x1d\xf7\x8c\xec\x94\x2a\xbe\x27\x88\xcf\x90\x91\xa2\x87\xd2\x23\x38\xd0\xfc\xdf\x89\xe0\xd6\x8a\x47\xfb\x3b\x3a\x69\xd9\x22\x6c\x67\x6e\xad\x63\x90\x75\x9d\x3b\x10\x96\xdd\x5f\x1b\x95\x6b\xa4\x79\x93\xd1\x28\x87\x7f\x66\xbf\x97\xd0\x04\xb8\x9a\x77\x0b\xd1\x35\x8a\x39\x33\xd6\xe3\xb4\x61\xb7\xd0\x30\x29\x19\xd7\x45\x77\xb6\x4d\xab\xec\x72\x81\x43\x44\x13\x06\x71\xd8\xb3\x7c\x57\x31\x02\xff\xb2\xb9\x6b\x4d\x2f\x8b\x7d\xad\x6f\xcb\xaf\x3d\xb7\x98\x60\x94\x31\x34\x31\x97\x6f\x7a\x8a\x9b\xac\xf3\xdb\x2e\x0a\x6b\x42\xae\xba\x54\x7c\xb3\xdb\x1b\x14\x46\xe1\x24\x47\x85\x22\x6b\xc1\xce\x5e\x3a\x2d\x27\xdf\xbd\x3e\x3b\x79\xff\x26\x27\xe5\x99\xa2\xa0\xb6\x34\xd4\xb3\xa0\x2d\x64\xbb\x0a\x99\xb0\x6e\xf1\x8e\x23\x25\x41\x29\x73\x56\xc3\xc7\xee\x98\x6e\x3d\x07\x55\xce\xd1\x1b\x39\x1d\x1c\xb3\x8a\xe7\xa1\xeb\x71\x10\x7d\xd4\x90\xb8\x46\xa4\x17\x1d\xe4\x9e\x7f\x0b\x14\x0f\x49\x90\x3c\x1a\x0c\xaf\xc3\xed\xfd\x6f\x86\xdb\x2f\x49\xb0\xe0\x90\x16\x1a\xed\x0d\x20\x77\xeb\x9d\xaa\x62\x22\xca\x13\x78\xcb\xa6\x88\xea\xab\x4a\x64\x19\xb7\x9d\xc2\xca\xcb\xc6\x9a\xc6\xd6\xbc\xca\xab\xd1\xf4\x07\x62\xee\xd7\xc2\xe7\x01\xf1\xb2\x0d\x7b\xb2\x1e\xd1\xcd\xd1\xdc\x46\x24\xe9\xc4\xef\xfd\xeb\xe2\x4a\x23\x98\x1e\x10\x65\x2a\x98\xe5\x6f\x8d\x39\xad\x45\x9d\x7f\x5d\xac\xa9\x05\xd1\x03\x62\x8c\x45\x46\x7c\x20\x6c\xa9\x09\x76\x2b\x76\xb7\x46\xf8\x5f\xb7\xc0\xfc\x16\x33\xaf\x17\x2a\xd7\x51\x94\x36\xa8\x49\x57\x83\xea\xa0\x5a\x40\xad\x35\x75\xa8\xea\x95\xc2\xe0\x91\xc6\xeb\x29\xcb\x07\x26\xac\x27\x1c\x6e\x84\x09\x44\xfc\x66\xf5\x94\xd1\xfe\x34\x37\x11\x9b\xbe\xc2\x13\xe2\x02\x77\xba\x98\x41\x2c\xe3\xfd\x58\xc4\x62\xc4\x7f\xed\x6e\x3b\xc9\xac\x14\x8f\xc0\x62\x72\xfd\x88\xca\x2c\xfd\x12\xfc\xe3\x6f\xff\xf8\xe3\xeb\x9f\xec\x46\x13\x38\x8f\xf8\x7e\x7d\x41\xc1\x42\x84\x6f\xaa\xb2\xaf\x82\x9d\x49\xe0\x95\x0c\xe4\xab\xc8\x1a\x7b\x0c\xdc\x10\x32\xd8\xcb\x95\x43\x0e\x03\x51\x8a\x38\x99\xc3\x20\x2b\xc3\x03\xb4\x2f\x20\x70\x5f\xc0\x05\x23\x93\x28\xcb\x48\x25\x7c\xe1\x68\x50\x0c\x41\xc9\x97\x55\x3e\x14\xe2\x9e\xaa\x66\xe3\x7e\xe6\x18\xf8\x19\xdd\xca\x04\x56\xc2\xec\xc2\x7f\xee\xab\x9f\x07\x63\x5b\xde\x28\x9d\x00\xbd\x48\x61\x0b\x49\x03\x06\x87\x9d\xd3\x05\xb4\x50\x30\x06\x44\x98\xf6\x56\x49\x8b\x95\xc6\x44\x8a\xbc\x58\x59\x59\x27\xcb\xec\xa5\x7b\xbe\xad\xc4\x71\x95\x5d\x39\x57\x8b\xa9\x50\xb1\x59\xf6\x96\x15\x5e\x1e\x57\xa9\x31\x9f\x18\xf1\x02\x51\x72\x2a\xf2\x39\xaf\xe1\x77\x92\x15\xad\x3f\x4a\xf3\xa4\x89\xc8\x25\x86\xbe\x58\xe2\x90\xc4\x24\x21\x83\xae\xae\x2d\x01\xdc\x3f\x23\xe9\x83\xef\x4c\x61\xd2\xd3\x05\x46\x74\x56\xb4\xf6\x06\x2d\xd5\xec\xcf\xe8\xd6\x21\xd4\x99\xa4\xd1\xa1\x95\xc1\xf5\xe5\xba\xf9\xae\xc0\x76\x12\x2c\x38\xe5\xcb\x7e\x1f\xa7\x45\xf4\x4d\xfd\x45\x6e\x2d\x6a\x0d\x1c\x25\x9f\x72\x3e\x09\xdd\x16\xab\x29\x1f\x88\xda\xe2\x91\x8a\xc6\x4e\x31\xa4\x50\x1e\xc4\x82\x20\xfa\x20\x14\x38\x07\x33\x06\xd6\xb6\x6a\x51\xbf\x59\xec\xc1\xb8\xae\x80\x7e\x06\x08\x94\x2b\xa2\xf6\x81\x38\x32\xd5\xb7\x03\x55\xaf\xc0\x41\x38\x74\xa0\xf3\x19\xdd\x4a\xe3\x86\xfe\x30\x20\x61\xce\xc7\x6e\x37\x85\xfa\x46\xb3\x1b\x99\x05\xbb\x07\x4f\x4b\xea\xa4\xd6\xdb\x01\xdc\x72\x90\x92\x39\xce\xe0\xa8\xaa\xbf\xcc\x55\xc3\xaa\xf8\x59\xc1\x67\xab\xb2\x6c\x9a\xad\x55\x16\x14\xc8\xc8\xd5\x55\x85\x5f\x63\xf5\xf1\x6c\xc3\x2e\x9b\x87\xe1\x00\xb8\xff\x93\x28\x6f\xac\x23\x4e\x8f\x45\xed\xce\xe2\x89\x3e\xe2\xb2\x42\xfa\xd2\x40\x51\x99\x17\x50\x5d\x10\x9d\xd1\xfb\x50\xf5\x79\x49\xbe\x34\xe1\x6f\x3d\x39\x38\xd5\xc8\x59\xf5\x71\x13\x89\xa8\x3f\x34\x19\x78\x0f\x05\xed\x77\x05\x76\xad\x4e\x0b\x55\x45\x9f\xce\xd4\xb0\x0e\x04\xba\x4a\x90\x5d\x93\x94\x6d\xe3\x9a\x26\x1e\x57\xbb\x01\x85\xa8\x87\xc2\x88\x11\xea\x16\xab\x47\xa5\xde\xf4\x04\x7f\x46\xb7\x0b\xe1\x44\xe5\x5e\xe7\x0b\x49\x1d\x96\x81\xa3\x81\x52\xcb\x0b\x14\xb0\x49\x85\x29\x57\x15\x47\x5a\xd5\xd8\xa4\x61\xcc\x37\x14\x52\xa4\x1d\xbd\xcc\x8b\xa3\x98\xfe\xdb\x7a\xcf\x66\x97\x42\x5a\xe0\x69\x9d\xfb\x20\x9f\xe0\xb2\x19\x84\x2d\x89\xb0\x2d\xa6\x72\x75\x92\x6e\x4f\x3f\xf6\xff\xb3\xf7\xe7\xeb\x8d\xdb\x68\xbe\x38\xfe\x7f\x5d\x05\xcd\x39\xc7\x47\xec\x86\x68\x51\x8b\x17\x65\xd4\x15\xc7\xae\x74\x6a\xda\xa9\xaa\x29\x57\xd2\x93\x76\xeb\xe4\xa1\x45\x58\x62\x4c\x93\x6a\x12\xf2\x12\x5b\xe7\x7e\x7e\xb7\xf1\xbb\xb2\xef\x83\x8d\x04\x48\x70\x95\x54\x96\x3b\xae\x67\xa6\x63\x71\x03\xf0\xe2\x05\xf0\xae\x9f\xb7\x81\x60\x52\x2b\x9e\xe6\x72\x81\x50\xb2\x8b\x89\x12\x93\xac\xb2\x0b\xc4\x72\xa3\x4f\xa1\x1b\x21\xd7\x87\x62\x1e\x65\x7c\xf3\xbd\x7f\x9b\x14\xd6\x54\x88\x5d\xf2\x36\x96\xc8\xc5\x71\x28\xb4\x7d\x5b\x16\x08\x2d\x77\xba\x18\x5f\x75\x40\x4c\x13\x62\x27\xa5\x4e\x54\x11\x13\x49\x47\x43\x98\xaa\xf2\x79\x42\x95\x8b\xd5\x14\xea\x95\xa6\xe1\x0f\x4d\xe9\xcc\xbe\x9a\x40\x85\xb5\x1d\xd7\xf6\x82\x69\xbc\xbf\x72\xed\x8f\x64\x98\x56\x01\xa4\xba\x86\x0f\x6f\x9b\xa6\x76\x55\x80\xf2\x6b\x12\x9c\x41\x46\x6f\x89\x13\x22\xa0\x20\x30\xbc\x22\xfc\xc8\x7e\x39\x95\xbb\x84\xca\xc9\x87\xfa\xe0\xa2\x77\x98\xde\x4a\x07\xc2\x54\x72\x8c\xaa\xf8\x90\x48\xa2\xd2\xe3\x76\xd5\x31\x6c\xd5\xb1\xaa\xca\xb1\x98\xe9\x9c\x36\xc7\x6b\xa3\xc3\x68\x4b\x98\x72\x69\x0e\x01\xfa\xb7\x89\xf5\xe0\xdb\x49\xcc\x77\x71\x72\x7c\x97\xd7\xa9\xe8\x65\xce\xcc\xa2\x71\x77\x41\x0f\xa8\x60\xb5\x1a\xa4\xa6\x65\xf3\xd2\x14\x61\xc9\x35\xbf\xa9\x40\xd4\x2a\x00\xcf\x0a\x49\x06\x59\x6c\x5b\x49\x4a\xdc\x11\x20\x2c\x1b\x05\x97\x3a\x93\x8d\x99\x01\x6d\x6e\x87\xd0\x27\x95\xf1\xe0\x15\x6a\xa3\xd0\xbd\xd1\x81\x4e\x4c\x2b\xb1\x65\x45\xb0\xa3\x30\x33\x0a\xb5\xa2\x24\x36\x02\xdd\xb3\x23\x24\xda\xe6\xe0\xbf\x9a\x18\xd6\x6e\xd5\xf5\xef\x56\x2e\x6d\x07\x7d\x2c\xd9\x85\x39\xa5\xe8\x2e\x51\x60\xeb\x06\xc0\x44\x19\xee\x74\x00\x47\x18\x13\x8b\xcd\x49\xf5\xa6\xc4\xe2\xfd\x76\x38\x25\xde\xda\xc8\x58\x02\x4e\xf6\x06\x2f\xaa\x6a\xde\x15\x15\x0b\xa3\xa5\xc2\xfc\x11\x32\xa7\x10\x9d\xda\xc8\x6e\x19\x6f\x50\xf8\xf0\x88\xcc\x99\xed\x3b\x1e\x7c\x77\x0b\x7d\xd4\x82\xc6\x72\x62\xa3\xc9\xac\x15\xb0\xd2\x62\xc0\x1e\x41\x56\x37\xec\x4d\x74\xe7\xe2\x5b\xb6\x89\x17\xb1\xf1\x48\x4a\x22\x52\x79\x6e\x98\xd4\xd1\xf2\xe3\xfa\x9e\x64\x20\x8c\x8e\x26\x5b\x86\x2d\x9b\x56\x1f\x33\x8c\x37\x97\x21\xb4\xaf\xdf\x90\x8f\x08\x96\x82\x61\x28\xd4\x30\xa3\x35\xb9\x28\xbb\x99\x58\x29\x15\x0b\x76\xf9\x54\x4f\x05\x7a\x5c\x12\x4f\xdf\xd3\x77\x46\xa3\xf0\x6d\x38\xd4\x75\x83\x5f\x54\x36\x48\xb8\x79\x98\x2e\xfe\x45\x79\x7c\x87\xf4\x1b\xff\xcd\x5f\x61\xbb\xd3\x10\xcd\xc2\xe0\x4e\x0b\x96\xcb\x74\x41\xaf\x3a\xb6\xd7\xed\xa9\x61\x30\x7f\xf7\xf1\xfc\xcf\x47\xbf\x1f\xab\x6d\xaf\x77\xa1\x4b\x53\x4c\x79\xf6\x00\x73\x27\xf1\xff\xc6\xc6\xd0\x58\x53\x8e\x6d\xb1\x40\x8f\x20\xa9\x8b\x79\x0d\x1f\x48\x0d\xc0\x13\x86\xce\x97\x5f\x0f\x5f\xc4\xce\x25\x66\x5b\xde\x3c\x2f\xdf\x4a\xe3\xe6\xb3\x06\xdb\x18\xdc\x2f\x03\x89\xb3\xa7\x73\x08\x20\xc0\xff\x3e\xc2\x7f\x5e\xdf\xee\x25\x59\x28\xa2\xb1\x56\x8c\xd0\x49\x44\xa0\x6e\x03\x80\xd6\xf5\xdb\x5c\x13\xb5\x41\xc2\xfe\xe1\x39\x5f\x55\x0b\xa1\x55\x50\x25\x58\xdf\x91\x7d\xb9\xf0\xec\xb0\xa8\x3e\xda\xf5\xad\xa2\x0c\xda\x98\x97\x3b\x6b\x80\x88\xb4\x21\x10\xd6\x58\x89\x95\x80\xdd\x59\xd5\x6f\xb5\x08\xba\x2e\xc0\xdb\x30\x86\x3d\x6b\xd2\x5f\x47\xb0\xad\xc8\x95\xc9\xba\x44\x67\xfc\x9e\x99\x3f\xc7\x40\xbf\xe2\x96\xd1\x2b\xd7\x83\x7a\x81\x6d\x3d\xdd\x88\x98\xbb\xa5\xf6\x02\x2b\xdb\x73\x26\xe6\xf5\xad\x19\xb7\x4a\x7f\x42\x87\xe8\x23\x09\x36\x74\x57\x65\x1b\x96\x95\xf7\xac\xeb\x5d\x7c\x2d\x89\xa8\xca\xb5\x48\xd6\xca\xc3\x58\xdf\xcc\x36\x00\xf1\x96\xbe\xcd\x51\xd0\x48\x70\x37\xff\x3a\xbc\x9f\xdb\xbe\x43\xf6\x52\xc9\xdd\x74\x0d\x1f\x2e\x03\x3b\x74\x8e\x19\x48\x62\x7a\x82\x64\x3b\xdb\xfe\x98\x81\x24\x8b\x50\x8a\x0c\xff\x4c\x11\xfa\x97\x55\x12\xfa\x2b\x80\xa6\x55\x26\x20\x0a\xdd\xe9\xb4\x29\xa6\xf2\x8f\x41\xb8\x59\x24\xe5\x8d\xc4\xdc\xc7\xd1\x1d\xb5\x42\x39\x54\x51\x1b\xca\x08\x8f\xe7\x5b\xc4\xb9\x2d\xfc\xec\xc2\x3b\x1d\xe8\xef\x84\x6f\xd6\x8a\xc4\xa8\x4f\xda\x34\x1c\x7b\x45\x6a\x8b\x6e\x3d\x6a\xd8\x8e\x8b\x9d\xd4\x9c\x03\x9d\x18\x7b\x89\xd8\x43\x3f\x72\x34\xae\xae\x61\xa7\xbb\x95\xf8\x42\xc4\x2e\x94\x8e\x2a\xc7\x99\x22\xd9\x54\x6c\x0f\x86\x48\x8b\xe1\xd3\x4b\xbf\x58\xd5\x8d\xa3\x7a\xa3\xa4\x48\x46\xfa\x1f\x47\x4c\xcf\x20\xd1\x2b\xbf\x5f\x44\x47\xb9\x1b\x65\xe0\xe6\xc9\xbf\xca\x56\xa5\x55\x3b\x57\xfd\xa1\x0e\xd0\x17\xe5\x9e\x2d\xf9\x85\x78\x99\xd4\x5a\x13\xe9\xaf\x08\x36\xc3\x9c\xc8\x32\x85\xdd\x4a\x65\x5d\xcc\x06\xc2\x0b\x27\x4f\xc9\xd1\x24\x19\xae\x98\xe1\x46\x15\x62\x26\x59\xc2\x6a\xae\xba\x1a\x53\x92\xa1\x71\x1d\x82\x16\x6d\x36\x55\x4c\xa4\x8d\x7a\x5c\xe1\xa1\x6a\xdb\x52\xa3\xcd\x3b\x7b\x3a\x1f\x80\x43\x70\xb4\x76\xa8\x7b\x30\x00\xfb\x95\xe0\xee\x25\x44\xa8\x5a\x86\x7e\x32\xca\x43\x60\x75\xaa\xe7\xed\x57\x1a\x53\x9e\x19\xaf\x52\xc9\x48\x62\x97\x9b\x85\xf0\xaa\x8d\x82\x3c\x0b\x1d\x81\xca\xe5\x3f\x68\x10\x1c\x37\xf5\xfd\x6b\x01\x89\xa7\x32\xb6\xdf\x11\x6b\x5e\x1c\x46\x27\x20\xe8\x37\x82\x0e\x90\xcc\x1e\xeb\xb4\xd2\xa9\x0c\x6f\x0a\xdb\xcc\x9b\x2a\xb6\x19\x2f\x20\x45\x30\xb7\xc2\x34\xd3\xfd\xdd\x3d\xef\xfe\xd0\xcb\xc1\x12\xd8\xb5\x11\x22\x40\xed\x69\x60\x29\x2b\x3e\x9c\x25\x45\x9d\x8e\x8c\xf0\x2d\xb5\x1f\x64\x10\xe9\x89\x1f\xfd\x76\xca\xf7\xf8\xfb\x1b\x8f\x40\xb6\xcc\x10\x9a\x0f\xf7\xf6\xee\xee\xee\xcc\xbb\x9e\x19\x84\xd3\xbd\x6e\xa7\xd3\xd9\xc3\x4f\xe6\xde\x24\xef\xee\x49\x5f\x1a\xde\x33\xd8\x83\xec\x2b\xd6\xd1\xd1\xd1\x5e\xfe\x6d\xc5\x17\xef\x5c\x07\xcd\x74\xa0\xf7\xfb\xf3\x7b\x7e\x6d\x46\x4b\xad\xcb\x17\x6f\x5d\x78\xf7\x5d\x80\xcf\xa9\x8e\xd6\xd1\xfa\x7d\xad\xdf\x8f\x6f\xc1\x30\xa2\x8c\x6f\x99\x96\x72\xfb\xe6\x44\xc9\x97\x8c\xf8\x13\x13\x37\x9c\x78\x30\x96\xd2\xf0\x37\xf9\x8f\x09\x6e\xbc\x7b\x10\xff\x7c\xc0\x3f\xd9\xaf\x01\xd0\x51\x68\xfb\xd1\x55\x10\xde\xb4\x83\xd0\x9d\xba\xfe\x50\xeb\x1e\xcc\xef\xb5\xee\xbc\x24\x06\xa4\x6a\xcb\x56\x8d\x96\xad\xb5\xb6\x9c\x1a\x73\xbf\x7c\xd0\xfd\x4d\x8d\xba\xb8\x6d\x6b\xbd\x6d\x77\xa5\xa6\xe3\x9e\xa8\x87\x3d\xbf\x27\xcd\x6f\xa2\xe5\x6e\x69\xcb\xdd\xb5\xb5\xdc\xaf\x33\xe8\xfe\x7a\x47\xdd\xaf\x33\xec\xfe\x7a\xc7\xdd\xeb\xc9\x7c\x56\xd4\x74\xaf\x87\xd9\x6c\x6d\x1c\x6e\x55\x6f\xd9\xb2\xd6\xd9\x72\x7a\xcc\x9d\xf2\x41\x77\x36\x35\xea\xc2\xb6\xe9\xb0\xd7\xd6\x76\xdc\x18\xe3\x71\xab\x90\xcf\x3a\x98\xc7\xad\xb5\xb5\x2d\x35\x1d\xcf\x80\xba\xe9\xf9\x3d\x21\xfb\x46\x46\x5d\xd2\x74\x67\xbd\x6d\xd7\x21\x78\x29\xbd\x95\x8a\xc9\x2a\x47\x7c\x57\xde\x7c\xbb\xd5\x17\x64\xb7\xbb\xda\x82\x2c\x6e\xb9\x70\x51\xd0\xa6\x57\x58\x14\xdd\x82\x29\xea\x16\x9e\xb3\x78\x8a\xba\x2b\x1c\xb3\xdd\x22\xc6\x2c\x69\xba\xb3\xd6\xb6\x8f\xa4\xa6\x8f\x8a\x5a\x3e\x9a\xdf\xe3\xff\x5f\x4f\xbb\xbd\x81\xbc\x18\x07\x85\x5b\xef\x00\x2f\xc6\xc1\x86\xda\x2e\x1c\x34\x69\x7a\x6d\xa3\x3e\xaa\x31\xe8\xa3\xd2\x31\x6f\x7a\x1b\x38\x94\x7a\x7b\x58\xb8\x16\x0f\xe7\xf7\xda\xe1\xba\xc8\x64\xed\x57\x6f\xd9\xda\x5f\x67\xcb\xa9\x31\xf7\xf6\x4b\x07\xdd\xdb\xdf\xd0\xa8\x8b\xdb\x26\xc3\x5e\x5f\xdb\xf2\xb0\xbb\x85\x14\xc7\xa3\xee\xae\x8d\xe2\x72\xcb\x56\xe1\xa0\x71\xcb\xd6\xda\xc6\xdc\xdb\xaf\x31\x68\x4c\xea\x35\x8e\x3a\xd5\x76\xf1\xb0\x49\xdb\xc5\xe3\x5e\xfb\x56\x30\x28\x3a\x97\xad\x62\x05\x98\x28\x45\x2b\x9c\x50\x85\x6d\xf7\xca\xdb\xee\xad\xad\x6d\xab\x5b\xe3\x64\xb6\xba\x2b\x9e\xcc\x72\xdb\xbd\x3a\x6d\xf7\xd6\xdb\xb6\x25\x9f\x90\x56\xe1\x41\x65\xe1\x23\xd2\x5a\xe1\x74\x4e\xcd\xb7\x7c\x48\x76\x0b\x8f\xe7\x2e\x3e\x25\xbb\x2b\x9c\xcf\x85\x6d\x17\x8f\x9b\xb4\xbd\xbe\x71\xa7\x68\x5e\x3c\x6e\x42\xf3\xe2\x71\xaf\x7d\x4b\x38\x2a\x5a\x96\xc5\xec\xd9\x2d\x67\xcf\x4c\x77\x53\x17\x32\x3f\x8b\xfc\x08\xf5\x4d\xfa\xa2\xb5\xbc\xa6\x45\xff\x57\x6e\xeb\xfe\xe8\x7b\x0f\xf1\x63\xad\x66\x11\x95\x34\x86\x03\x52\xdc\xe5\x2d\xca\x6b\xff\xf3\xcd\xf7\x67\x8b\xd3\x9f\x9f\x29\xaf\x9d\xa7\xae\xf3\x70\xc9\x74\xbe\x3a\x4b\x4a\x67\x39\xe9\x3d\xdc\x08\x25\xa1\x9e\x0a\xcc\x8a\xe3\x20\x37\x92\x78\x4e\xb3\xc7\xeb\x44\xd9\xf0\xd5\x56\xbf\x02\x86\x10\x8d\xd0\x2d\x5d\xcc\x39\x88\xe6\xfb\xc5\x88\xe6\xae\x8f\x60\xe8\xdb\x5e\xb4\xc7\xa8\x49\xa1\xcc\xff\x83\xfd\x6a\x3b\x30\x72\xa7\x7e\x82\x6c\x4e\xd1\x50\x66\xd0\x9b\x6b\xcd\x20\x51\xce\x82\xc9\xb5\x76\xce\x66\x4e\xbd\x9f\x16\x5d\x2e\xaa\x07\x22\x3c\x22\xe5\xee\x14\x84\x4d\x0a\xaf\x24\xa8\x21\x56\x3a\xa1\x2c\xa9\x63\x51\xfc\x09\xb9\xbe\xc3\x94\xc4\xca\xae\x82\xad\x5c\x14\xf2\x48\x10\xf0\x9c\x89\xe9\x07\x0e\x8c\xcc\x68\x46\xab\xce\xca\xdd\x26\x89\xb5\xaa\x10\x28\xf5\x63\x4d\xe1\xa1\xa5\x61\xbf\x3f\x5d\x89\xd4\xf8\xf5\x9a\x84\xfe\x0e\xce\xec\x5b\x37\xc8\x47\x12\xa8\xd2\x6e\xf2\x91\x4c\xe6\xa5\x8c\x8f\x48\x4b\x3f\xb3\xb7\x4e\xa1\x67\x3f\x34\x40\x66\xc8\x1b\x0a\xfb\xde\x0a\xe3\xc0\xcb\x2b\xe9\x55\x8d\x3c\x7e\xc5\xe8\xbe\x7c\x39\x5b\xe3\xd8\xc8\xd7\x56\x18\x19\xef\x4d\xed\x31\xb1\x78\x3f\x45\xfa\xe2\xc9\x0c\x4e\xae\x57\xad\xf3\x51\x3c\xea\x1f\xa0\xed\xa1\x99\xc6\x5a\x5a\xc7\x6e\x20\xe5\x63\xea\x40\xcb\x2c\x7b\xde\x56\xa6\x82\x6a\xee\x9a\xae\x5c\x13\x66\x73\xa9\x8f\x2e\xcd\x23\xb5\x79\xa0\x1a\x3b\x7f\xfe\x70\x29\x90\x83\xf2\x14\x48\x9a\xe3\x61\x65\x53\x21\xdf\x27\x34\x2c\x3e\x60\x55\x81\x3b\xcf\x96\x16\x59\x1e\xe5\xa8\xc7\xdb\x41\xbf\x66\x69\x83\xca\x13\x56\x69\x32\xba\x59\x92\xf3\xb0\xcf\x98\xf4\x45\x44\x2f\xe9\x4d\x92\xea\x59\xa9\x37\x3d\x45\x6f\x8a\x23\xf0\xd6\x98\x13\x9a\x4b\xf7\x86\x79\x9f\x85\x01\x63\xbf\x05\xae\x9f\xc9\xd6\x64\xea\x82\x90\x9c\x19\x47\x86\x51\x40\xb5\x24\xb2\x8c\xaa\x1d\x34\xde\x6c\x8a\xf4\x44\x71\x68\xa2\x42\x2a\x55\xb7\x95\xe3\xc3\x1a\xe6\xe6\x49\xdd\xd9\x9e\x2c\xbd\x3f\xdf\xfb\xbf\xcf\x7f\x7e\x9f\x93\xa5\x97\x4a\xce\xab\xa4\x52\xb2\xf9\xce\x29\x3f\x93\x45\xae\xae\x9e\x5e\xa6\xd8\xa7\x0e\x81\x8e\x69\x59\x94\x47\x26\x12\x7e\x2d\x19\x65\x15\xb6\xd9\xfa\xb9\x64\x7c\x7b\x95\xe0\x66\x12\xc1\x2a\x47\xad\xa9\x10\xf5\x59\x7e\x24\x40\x64\xbb\x5e\xad\x54\xa3\x12\xf5\x4e\x2d\x5e\xa9\x24\x91\xf9\x43\x9b\x6d\x9d\x99\x12\xb1\xbc\x7f\x9c\x02\x44\xdb\x60\x4a\x87\x2a\x93\xbe\xd0\xbe\xa6\x14\x56\x73\xf4\x17\xe5\x4e\x99\xad\x26\x44\x28\xea\xc4\x4a\x40\x53\x1a\xb0\xa2\x44\x6c\xfc\x63\x70\x51\xfb\x68\x26\x2a\xc4\x1a\x8e\x83\x5c\x6a\xc9\x49\x38\x98\x72\xb2\xe6\x92\x93\x77\x53\x91\x8e\x08\xad\xc6\x44\xab\x13\xf0\xcb\x97\xb3\x4d\x92\x8f\x92\x4c\xa5\x12\xd5\xa0\xd2\xa5\xa8\x38\x3f\x1f\xa9\xb8\xea\xbd\x79\x7a\xe5\x2a\xf9\x35\x88\x36\x49\x34\xb9\xe7\x23\x19\x55\xf1\x36\x45\xb0\xb4\xe1\xa3\x27\x1c\xaf\xdd\xcc\xdf\x94\xb4\x59\xa5\x73\x25\xd8\x3d\xc5\x89\x75\x50\xaa\xfb\x1f\x54\xc2\x25\xd9\xc0\x69\xd7\x20\xb1\x76\xbb\xf4\xe6\x0d\xea\xcc\x7c\x46\xa5\x8c\xac\x8a\xc9\x57\x07\x8a\x4c\x61\xa6\xfd\xec\x53\x35\x98\xeb\xc7\x99\x54\xac\x3e\xe3\xbc\x8a\xd9\x56\x29\x3d\x2d\xd1\xa4\xcb\x4d\xa1\x59\x06\x52\x67\xf3\x6c\x4c\x8d\xae\xab\x44\x0f\x6a\x60\x75\xaf\xa8\x40\xef\x97\xab\xac\x69\x05\xba\xc4\x52\xdf\x54\x79\x4e\xf5\xa4\x5f\x4b\x79\x56\x54\xce\x01\x7d\x90\xb5\x98\x34\xc8\x97\x2a\xd3\x8e\x41\xb7\x0a\x16\x53\xa5\x7c\x2b\xac\xae\xda\xa8\x8d\x5c\x82\xf4\xd8\x46\xa1\x3d\xb9\x6e\x73\x4c\x71\x68\x93\x32\xfd\x21\xbc\x0a\x61\x34\x6b\x93\xca\xbc\x44\xbd\x16\x26\x46\x91\x7c\x45\xd4\x69\xf7\x6a\x55\x4d\x7a\x23\x99\x56\xeb\xd0\xa9\xfd\x00\xb9\x57\xee\x84\xec\xcf\xd1\x76\x28\xd7\x9f\xaf\xbf\xff\xee\x1f\xc1\x43\xa4\x56\xae\xbf\xc5\x7b\x05\x01\x47\xa6\x8e\xd4\x1c\x8d\xd9\xca\xa0\xf6\xd2\x8a\x08\xf1\x82\xae\x5b\x5d\x55\xf5\x41\x0b\x37\xbe\xe0\xf8\x0f\x4d\xe1\x5d\xbe\x90\x7a\x8c\x64\x3a\xb4\x3b\x3b\x12\x4e\x3c\xa7\x6e\x69\xc6\x2f\x33\x18\x42\xf2\x11\xdb\xd7\x08\x70\x6b\xf2\x35\xd7\x9f\xb2\xd2\x8f\xa4\xa9\xbc\x4f\x37\xc2\xf9\xe7\x38\xfe\x2b\xae\x12\x05\x33\x3e\x67\x18\x03\x1e\x89\x63\x23\x7b\x8b\x0c\x4f\x3f\x5f\xfe\xfc\xc3\x2f\xbf\x9c\x4e\x2a\x18\x9e\x54\x41\x0a\x15\x00\x84\xf8\xa0\xd7\x04\x23\xb4\x11\xb3\x8f\x28\x14\xc8\x00\x42\x04\x13\xa3\xd0\xb9\x2e\x3f\xaf\xc2\x25\xae\xa8\x6e\x54\x18\x59\x03\xa4\xa1\xb8\x9b\xf9\x8e\x32\xa5\x0a\x91\x63\x8a\x97\x0c\x11\x1d\x59\x94\xac\x2e\x24\x95\x91\xb4\x66\x5f\xe5\x5e\x59\x99\x5e\x55\xeb\xc1\x7a\x44\x8d\x72\xa9\x22\x20\xeb\xba\x6d\x37\xc9\xb1\x56\xec\x20\xcf\x7f\xfe\xfb\x81\x03\xb7\x68\x4b\xfb\xaf\x9f\xff\xe7\x7b\xff\xda\x7b\xdf\x64\x4b\xa3\x47\x73\x37\xa3\x45\x51\x7c\xaa\xcd\x59\xc7\x31\x09\xf3\x37\xc8\xde\x96\x58\xc5\x1d\xb1\x26\x06\xb5\x62\x9c\x53\xe1\x49\x0d\xe3\x5e\x6a\xde\xa1\xbe\xfe\x86\xe6\x16\x71\x29\x67\x6c\x44\xa9\x62\xea\x28\x98\xb7\x23\x64\x87\x0d\xa0\xf8\xd2\x20\x4b\xfa\x24\x74\x91\x3b\xb1\x3d\x5d\x45\x84\x55\xeb\x0a\x1f\x23\xcd\x83\x76\x84\xb4\xc0\x87\xda\x8c\x86\x42\x10\x03\x9a\x16\xf8\xd4\x5e\x81\x59\x45\x73\x23\xed\xca\x76\x3d\xd7\x9f\xd6\x2c\x4c\x9e\x19\x0d\xc7\x06\x7a\xc6\xc1\xcc\xb0\x78\xc9\x41\x8a\x56\x1d\xcf\xdc\x8e\xa2\x8d\x8d\xc7\xf3\xa4\x61\x44\x9a\x1d\x42\x8d\xb5\xd8\xb4\xea\x39\x15\xb1\xf1\x87\xfc\x40\xfe\xba\x59\xe2\x8b\x2e\x94\xad\x4b\x83\x53\x9a\x7a\xab\x73\x6d\xbe\xd9\x88\xbb\x7e\x41\xc4\x9d\x3a\xd4\x2e\xd3\x7a\xf6\xf9\x4d\x9b\x26\x6b\x3a\xe2\xf2\x37\x0a\xde\xf3\x63\xc7\x21\x38\x61\x2c\x0e\x65\x20\x5d\x6a\x60\xf5\xcd\x88\x40\xbc\x48\x74\x0a\x7d\xeb\x2c\xb9\x52\x39\xfe\x2b\x7b\xf2\xb1\x45\xc4\x6a\xfe\xaf\x1c\xf9\x55\x2a\x6b\xca\xb3\xae\x6a\x97\x31\xb2\x2c\x8e\x76\xca\x3a\xcb\xaf\x92\x33\x95\xd4\x7e\x0b\x16\xf8\x48\x5e\xd0\x90\x53\x14\x2e\xe0\xb8\x98\xbd\x2a\xd5\x80\x58\xd1\x1d\xab\x22\x4d\xcc\x2c\x75\xd3\x19\xca\x4e\xcc\x5a\x8e\x5f\x81\x8b\xc5\xbf\x95\x60\xea\xf2\x1c\x8a\xcc\x5e\x7b\x7b\x79\x16\xfb\xdf\xdc\x5b\x84\xb6\x47\xeb\x01\x26\x15\x05\xb9\xfc\x9e\x84\xc9\xb0\x35\xd7\x10\x2f\x29\x25\x36\x6f\x89\x1c\x1f\x41\x3b\x9c\xcc\xda\x97\xf6\x96\x80\x24\x4d\xff\xf1\xdf\xff\xf5\xaf\xdb\xbb\xef\xd4\xd2\x7c\x32\x08\x1d\xe8\x1f\xe7\x68\x1a\x06\x8b\x39\xfd\x93\x9a\x5d\x23\x88\x45\x6e\x92\x2f\x00\xca\x9e\xce\x42\x2d\x89\xb5\xef\xc8\x2e\x7b\xe5\x7a\x08\x86\x98\x3a\x99\xa5\xc5\x16\xd5\x55\x08\x21\x82\xf7\xa8\x4d\x1f\x8d\x17\x56\xe0\x53\xca\x4a\x25\x83\xc4\x7a\x67\x79\x9e\x9b\x81\x04\x9b\xd7\x07\x07\x64\x2f\x23\x9f\xca\xae\xbf\x78\xe9\x8b\x99\x13\xb4\x27\x2a\x0f\xac\x2e\xc3\xd4\x52\x62\x25\xca\x09\xf1\x13\x44\x5c\x7e\x92\xa5\xea\x14\x78\xed\xcd\x02\x0b\xdf\x34\x2b\x83\xe0\x91\x65\x2b\x43\xb1\xd1\x1c\x82\x0b\x3d\x4a\xc9\x64\x80\x6e\xbf\xeb\xf5\xbf\xd1\xd1\x40\xa7\xa9\xc5\xa4\xd0\x1c\xc2\xa2\x94\xa9\x70\x59\x66\xd9\xa8\x2c\x6c\x95\x8c\x28\x98\xd7\xf2\x9a\xea\xa9\xb0\xee\x2e\x91\x3d\x62\xbe\x67\x08\x8b\xec\x1a\x75\x55\x36\xf1\x3e\x1f\x32\x67\x73\xcc\x36\x84\xbd\xdb\x5c\x10\x1f\xa7\x0e\x96\x64\x5a\x64\x69\x5d\x10\x19\x85\xab\x54\xf1\xa6\xfc\x02\x45\x81\xa9\x02\x09\x3e\x25\x3d\xa8\x0c\x07\xad\x1c\x4a\x8c\x9f\x5a\x34\x14\x41\x91\x12\x86\x22\x5c\x5d\x65\x28\x7f\x4f\x7a\xb0\xda\x50\x62\xe5\xb5\x70\x2c\xa2\x8a\x2b\x0c\x46\xbc\xbc\xca\x68\xbe\xa7\xaa\xeb\xea\xa3\x81\x37\x73\xf4\x50\x3c\x14\xfa\x88\x3c\x8e\xf8\xda\x2a\x83\xf8\x10\x68\x3c\xb2\xa5\xa6\x88\xb2\x0f\x14\x71\x17\x15\xcc\xc3\x65\x01\xe8\x0a\xe1\x49\x71\x1a\x44\x41\xa8\x92\x40\x2b\x1d\x05\x41\x6c\x40\xa9\x76\x10\x84\x14\xb1\x2f\xe7\x24\xb0\x3a\x2b\x40\x90\x3f\xcf\x01\x90\xde\x52\x99\xb6\x27\xa9\x7e\x56\xfa\x07\xd1\x5d\x87\x76\x34\xd1\x81\x7e\xac\xa1\x40\xfb\x47\xb6\x58\x67\xf2\x9c\x03\xc9\x83\xff\xc0\x0f\x1e\xe7\x3c\x48\x8f\x1d\xf6\xc9\x9f\x7c\x6a\x35\x78\xc0\x6f\xd0\x73\xe9\xa1\xf8\x3d\xd6\xc4\x0f\xc9\x6b\xf1\x37\x94\x45\x40\x1b\x95\xc0\x97\xf5\x33\x1e\xf9\xd4\xa7\x53\xdf\xc9\xf8\x0c\x14\x30\xaf\x15\x53\x6a\xb6\xe6\x74\xb5\x14\xa7\xab\xb5\x9e\xd3\x15\x93\x8f\x76\x37\x86\x15\xd6\x25\x11\xa4\x69\xd6\x0f\x0d\x32\xc9\x68\x7f\xd2\x16\x2a\x72\x9b\x64\x6b\x93\x6f\x88\xb3\x5a\xa1\x33\x6a\xb6\xad\x51\x28\xbf\x56\xe7\x29\xcb\xab\x7a\xcf\xef\xd4\xec\xbe\x7a\xf1\x34\x44\x34\x2e\x39\xf7\x54\xb3\xcf\xcc\x19\x1a\x0b\x49\xdf\xd8\xe4\x27\x7b\x97\x44\x3c\xf1\x72\x4d\xca\xf1\x2d\x70\xed\x53\x2d\x6c\x9f\xd9\xbe\x36\x9c\x66\xbe\x0d\xaf\x63\x62\x4b\xf0\xa9\x57\x90\x04\xac\x62\x49\x80\xfd\x2c\xb4\x79\x90\xb3\x9d\x99\x3b\x68\x26\x3a\x57\x60\x49\x15\x23\xdb\x25\x58\xc1\x82\x16\x1b\x47\x36\xc5\x57\x02\x3f\x7e\xc5\x83\x14\x51\x9a\x7d\x95\xc7\x4c\x5d\x85\xc1\x4d\x1b\xfa\x28\x74\xb1\xb4\xd5\xcc\x62\x92\x36\x50\x6c\x81\xdd\x84\x64\x58\x6d\x91\x07\x74\xfe\xcb\xdf\x7e\xf8\xf9\xbb\x1f\x8b\x3d\xa0\xc7\x2c\x04\x97\xff\xa5\xc7\xa1\x85\xb6\xfc\x33\xcf\x4b\xda\x57\xe4\x10\x0d\x36\xeb\x25\x25\x84\x56\xf8\x49\x81\xfe\xad\xe7\xfa\xd7\x1c\x16\xe2\xa2\xd7\xa7\x71\xae\xb2\x31\xbe\x33\x06\xba\x1b\x9d\x25\x0f\x6e\xa0\xe2\x57\x3d\xe7\x6a\x22\x43\x88\xe5\x8d\x69\x21\x03\xe7\x18\x35\x2b\x14\xac\x17\x46\xb7\x92\x8f\xbb\xfe\x34\xed\x5e\x89\x33\x9b\xba\x40\x37\x4d\xb3\xba\x09\x3c\xdf\xbf\x95\xef\x18\xea\x72\xc7\x10\x99\xd0\x88\x96\xa3\xc9\xf6\x25\x07\x85\x41\x99\x85\xb5\x32\x32\xff\x26\x9c\x43\x32\x1d\x72\x61\x38\xd4\xae\x81\x53\x18\x4d\x42\x77\x5e\x90\x20\x5b\x6a\xe8\x4f\x9b\xe2\xa5\x4f\xaa\x25\x8e\x32\x17\x43\x9a\x65\xb3\x98\x29\xc7\x27\x67\xe7\xbf\xbe\xfb\x70\xfc\xdd\xd9\xbb\xd3\x5a\x71\x91\xe9\xea\x74\x6c\x7b\x45\xc1\x35\xf4\xf7\xc2\x85\x07\x23\x88\xc8\x2e\x1b\xcf\x0b\x2f\xd3\xc3\x02\x7e\x2a\xd4\x43\x5f\x3f\x4b\xd4\x4c\x65\x50\xd3\xef\xa0\x70\xf9\x37\x22\x9f\x28\x38\xd6\xcf\x98\x51\x49\x5d\xb3\x10\x5e\xe9\xa9\x6c\x96\xca\xab\xb8\x99\x84\x5a\x48\x79\x26\x0c\xd7\xfd\xb2\xa6\xbd\x73\x5c\x54\xc5\xb7\x5e\x5b\xbe\x53\x4d\x6d\x4f\x98\x5a\x2e\xac\x0b\xdd\x6d\x9c\xf4\x93\xcc\x0e\x3b\x24\x85\xda\x3f\xdc\xe5\x40\xb3\x43\x14\x7e\xe9\x0e\x57\xc3\x53\xb1\x72\xdb\x34\x4b\x8a\xc2\x50\x35\x95\x86\xb2\xda\x9c\x89\xb0\xd3\xa0\x7b\xc9\x1c\xf4\x93\x39\x90\x2c\xc5\x4d\xf2\xd4\x2a\x76\xbe\x69\x95\x4c\xfa\x8f\xa7\x90\x38\xea\xd2\x5b\x95\xa9\x5c\xb1\xb3\x97\x81\xf3\xd0\xb4\xab\xc5\xc2\x8c\xf8\xaf\x52\x35\x2f\xdc\x27\xb2\x5b\xa9\x6a\x7a\xe5\x9c\xb2\x9b\x21\x4a\x0c\xfd\xd6\x9c\x2e\x87\x31\xe0\x49\x0d\x6e\x3b\x8d\x41\x51\x6a\x8c\xa6\x2a\xf4\x49\xad\x15\x5a\x60\xef\x5b\x45\xa7\x2e\x57\xa8\xcb\x6b\x42\x15\x4b\x09\x65\x01\x06\x8a\xc2\xec\x35\x03\x10\x84\x52\x4c\xb1\x9a\x9d\x84\x1d\xc4\xc5\xd4\xa5\xb0\x04\x8a\xe1\x41\xcb\xb9\x37\x8b\x47\x48\xab\xb1\xeb\xac\xe1\x14\x17\x2d\x4f\x14\xb0\xa1\xa8\x17\x87\x10\x2d\x42\x7f\x07\x9a\xb1\xf4\xd3\xb8\xfc\x36\x1b\xc7\x16\x26\x22\x4d\xf7\x9d\xfe\x77\x3f\x1d\x85\x6a\xbd\x9c\xa4\xd7\x10\xa3\x96\x9c\x90\x04\xf4\x6f\xe9\xad\x0a\x99\x49\xdc\xcc\xde\x1b\x03\x7d\x12\x42\xbb\x28\x33\x29\x5f\x91\xcc\xff\x6e\x77\x2d\x09\x4a\xbf\x04\x8b\x30\xd9\x8a\x49\xfc\xe7\x25\x84\xbe\x66\x3b\xce\x5a\x52\x94\x6c\xc7\xc1\x1a\xee\x83\xd4\x4c\xad\xfc\xa4\x9c\x68\xd3\x3c\x52\x2f\xe6\xce\x0b\x23\x75\x64\xdf\xae\x85\xd4\x91\x7d\xfb\x75\x49\xbd\x96\x7c\xbb\xaf\x43\xe3\x1b\x3b\xbc\x86\x8e\x76\x15\x84\x54\x06\x29\x48\x92\xab\x41\x71\x87\x1b\x70\x56\xa0\x79\xcd\xb8\x61\x11\xd4\xa0\x0b\xfa\x80\xed\x55\x24\x45\xd6\x0d\x23\x44\x37\xcf\xaa\x0e\x2e\x71\x3a\x38\x50\x1b\xb2\x5d\xaf\xa6\x83\x8c\x4b\x86\x97\x49\x28\x16\x11\xde\x52\x70\x7f\x2d\x5d\x89\x9d\x22\x44\x35\x29\x22\x48\x93\xbb\xfa\x50\x4b\xb9\x44\x41\xa6\xd7\x40\x37\xf4\x72\x77\xa6\x92\xc0\x15\xb0\xbc\xe2\xfa\x8c\xe4\xb4\x27\xe7\xbe\x07\x57\x38\xdf\xb7\x2c\x27\x92\xf5\x6a\xdb\xc2\x0e\xd1\x3c\xea\x0e\xf6\xf7\x7f\x58\x3d\xec\x70\x6b\xa2\x0a\xfb\xb2\xee\xdf\x93\xa2\x0a\x07\xb5\xa3\x0a\x9f\x31\x8e\x24\x35\x92\xfd\x7f\x93\x30\x92\x6c\xe5\x64\x01\xb8\x98\xac\xef\xc2\x18\x92\xe4\x31\x65\x08\xc9\x6b\x44\xc7\xd6\x47\x74\x6c\xdc\x97\x1f\xf3\x90\xec\x1f\x17\x2e\x6f\x8d\x2f\x3f\xe1\xe3\x6c\x5f\x5f\x7d\xf9\x75\x7d\xf9\x25\x7e\xfb\x22\x37\xfd\x8a\xe2\xc6\xf6\xb9\xeb\xe7\x81\xe7\x4e\x1e\xb6\xc8\x5d\x7f\x72\xfa\xfb\xd1\xc2\xbd\xdf\xdb\xac\xbb\x7e\x30\xce\x40\x7b\x0f\x40\x77\xa3\xfe\x7a\x4a\xe9\xfc\xbc\xe6\xee\x96\x38\xdf\x07\x19\x29\x29\xe5\xba\x89\x05\x0c\x9d\x0d\xe9\xc6\xf6\xed\x29\xf9\xe0\x2a\x2e\x9c\x34\x52\x9e\xea\xe3\x25\x65\x1b\x8a\xe0\xcf\xf5\x4d\x24\x46\xcb\xa6\xe1\xbf\x7a\xc1\xa5\xed\x69\x3f\xc6\x3d\xd6\x3e\x91\x31\x34\xb7\x0a\x57\x41\x6b\xa8\x62\xf4\xcd\x0b\x3d\xd8\x67\x4e\x4b\x7b\xe2\x45\x26\x21\xb8\x9b\x71\x5d\x32\x48\xd2\x38\xfc\x80\x26\xbc\x8b\x15\x53\x56\xe3\x15\xa0\xbb\x91\x92\x85\x2a\xe2\xcd\x3e\x6b\x34\x83\x9a\x75\x1d\x1b\xd9\x13\xe8\x23\xa8\xc6\xc6\xd4\xaa\x24\x40\x6e\x86\x67\x4f\xe3\x9e\x95\x45\xea\x97\xb2\x61\xc5\x75\x97\x96\x94\x0f\x93\xb2\x03\x29\x6f\x7f\x46\x28\x6f\xb8\x20\x0a\x67\x26\x15\x46\x52\x7d\x6a\xca\x03\x50\x6a\x6c\x44\x95\x83\x50\xea\x8c\xf9\x59\x22\x38\x44\x46\xdd\x7c\x90\x45\xed\xfd\xea\xb9\x5d\xf8\x9b\x3e\x56\x2b\xa3\x35\xfc\xec\xc2\xbb\x86\x98\x0c\x2c\x40\xa4\xfc\x9c\xa9\xc8\x84\x15\x1e\x53\x93\xed\xe8\x2b\x4a\x23\xaf\x01\x25\xaf\x01\x25\xaf\x01\x25\xc9\xbf\x4a\x01\x25\x74\x05\xbe\x46\x93\xbc\x46\x93\x14\x49\x25\xcf\x13\x31\xc2\x23\x43\x98\xc1\x03\x3d\xcc\x61\x70\x25\x41\x5a\x24\x31\x25\xec\x19\x47\x10\x96\x01\x2f\x23\x13\xc7\x9b\x34\x0a\x2b\xc9\x98\x5b\xb6\xc6\x02\xb4\x85\x11\x22\xe1\x77\x9d\x87\xb3\x9f\x3e\xbf\x7b\x8d\x10\x59\x84\x6c\x6f\xdd\x6c\x78\x08\x6d\xe3\x0f\x1c\x1b\x92\x26\xf2\x26\x02\x43\x36\x4f\xe4\x6d\x8d\x0a\x61\xd4\xc5\x94\xa1\x5d\x5c\x07\x69\xe5\x08\x90\x06\xc4\x7d\x0d\xff\xf8\x03\x86\x7f\xe4\x1f\x7a\xcf\x19\xfe\xc1\x7a\xb5\x6d\xe1\x1f\x7b\xef\x7f\xfc\x1c\xfd\x04\x7f\xff\x0a\xa8\x53\x15\x1e\x70\x26\xdb\x13\x45\x72\x24\x2b\xfc\x87\x52\x14\x89\xd5\xf9\x7a\xe0\x54\xf4\x77\xdb\x99\xac\x82\x4d\x95\x1a\x8d\x45\x16\xf6\xe4\x25\x03\x53\x09\xe6\xee\xad\x87\xa5\xb2\xf8\x89\x7b\xa8\x88\xb3\x38\xac\x1d\x67\x41\x3f\x9a\x2d\x81\x23\x03\x39\x0f\x56\x88\x84\x49\xf4\x64\xe2\x41\x2d\x08\x60\x20\xcf\x88\x29\x5f\xe9\xd8\xa5\xd4\x4d\x8a\x44\x44\x99\xb9\xaa\xed\x8c\x99\xd4\x45\x47\x51\x5d\xb0\x44\x4b\x79\x2c\x1d\xe1\xe1\x29\x43\x75\x0e\xa9\xa7\xa7\x1d\x05\x8b\x70\x02\x63\x56\x88\xc2\x09\xc9\xc1\x0e\x6c\x87\x80\x5d\x09\xeb\x0f\x33\xc8\xde\x9f\xf6\xfe\x94\x52\x2d\x3d\xfb\xf7\x87\x9c\x65\xc8\x4e\xeb\x5e\x76\xbe\x2e\x2e\x28\xee\x13\x75\x5e\xd9\xc8\x26\x43\x56\x82\x50\x36\x0a\xbd\x38\xcc\xf3\x1e\x94\xec\x41\xb4\x6e\xc8\x5a\x37\x21\xf6\xc9\x17\xbb\x0d\x7d\x79\x98\xc3\x97\xb3\xff\x6c\x18\x17\xaf\x28\xd0\x69\x4a\x3c\xe8\xa2\x09\x5f\xc6\x2a\x53\xde\xa7\xbb\x05\xe6\x91\x9a\xa0\x65\x19\x7f\x7d\x65\xe7\x45\xd5\xf1\x44\xc8\xf6\x1d\x3b\x74\x52\xc3\x10\x2f\x37\xee\xfd\x39\xff\xc8\x2b\xe2\x5a\xc5\x48\xd9\xf4\xd6\xd2\x7f\xc1\xa1\xb2\x32\xca\x9a\x78\xb4\x5b\x83\xf4\x8f\x0a\xe1\xb2\xc2\x73\xaf\xf1\xb2\xeb\xda\x48\x5f\x03\x66\x5f\x03\x66\xb7\x33\x60\x56\xea\xc7\xaa\x30\x58\x58\x4e\xcf\x2b\x08\x58\x0f\x22\xeb\x66\xb1\x09\xa0\xac\x1c\xab\xca\x73\x15\xdd\x0f\x03\x6f\x9b\xe0\xb1\x7e\xbe\xff\x9f\xef\xef\xce\x7a\x9f\xbf\x5e\xbc\x6d\x9f\xe9\x32\x9b\x2d\xb1\x8f\xc9\xbc\xdd\x55\xd6\xf4\xdc\xb0\x4c\x4b\x0c\x73\xc2\x03\x29\x8b\xc9\xdc\xfe\x40\x49\x7d\x3d\x28\x46\x32\xe5\x9e\x03\x43\xaa\x66\x00\x5f\x8e\x88\xf2\x47\x0c\xde\xab\xc7\xd5\xdb\x14\x2b\xb5\x21\x88\x24\x35\xf1\x6a\xc4\x9b\xf5\x64\x85\xa6\xfb\x1a\x6f\xf6\x1a\x6f\xf6\x47\x8a\x37\xc3\x9b\xc8\x6b\xb4\xd9\xbf\x47\xb4\x59\xde\x43\xdb\x11\x51\x96\x2d\x77\xa4\x8a\x31\x6b\x5e\xce\x3c\xa5\x14\x3c\x7f\x54\x18\xe9\xd0\x16\xc6\x84\xcd\x6f\xde\xf7\xe0\x4d\x17\xbe\xc6\x84\x2d\x42\xb2\xff\x6d\x36\x22\x0c\xb7\xf0\x07\x8e\x07\x93\x09\xbc\x89\x68\xb0\x4d\x13\x78\x5b\x63\xc1\x08\x65\x37\x19\x09\x56\x9b\xb0\xaf\x71\x60\x7f\xc0\x38\xb0\xbc\x63\xee\x39\xa3\xc0\x48\x9f\xb6\x2d\x06\xec\xcb\xdf\xce\x66\x03\x6f\x6f\x0d\x95\x07\xb7\x26\x78\xeb\x15\x02\x68\x0b\xfd\x9a\x5f\x0f\x02\x48\x7e\xee\x84\x48\x7a\xef\xf1\x52\xe3\x8f\x7f\x80\x77\x30\x22\x3a\x27\x66\x9d\x08\x95\xbf\x48\xbb\xf3\x91\x3c\x8d\xdf\xf3\xc9\x17\x5e\x7d\xa8\xf5\x7d\xa8\xaf\x98\x43\xaf\x2e\xd4\xba\xc6\x53\xd5\x84\x92\xd5\xd9\xc8\x24\x58\x9d\x52\xd9\xad\x43\x22\x98\xea\x76\x4d\xba\x65\x77\xa2\xb5\x4f\x77\x66\x1b\xcb\x1d\x43\x33\x3e\xcd\x6e\x8a\x7f\x68\x3f\xfa\x33\x40\x50\x29\xc5\xca\xe7\x72\x82\x47\xb4\x60\x5b\xdb\xf5\x23\x64\xfb\x5b\x55\x2f\xea\xb7\x5f\x0e\xfc\x9f\xff\x6b\xf6\x5b\xa1\x43\x9c\xf6\xb4\x82\x35\x89\x15\xc0\x1c\x80\xa3\xe6\xde\x6e\xc2\xc9\xec\xb4\x2d\x73\x7b\xa7\x09\x9b\xef\x02\x3f\xda\x12\xbc\x29\x89\x5a\x1c\x8a\xeb\x70\x0c\x74\x67\x62\xb2\xd1\x44\x66\x34\x0b\xee\x56\x44\xc1\xc8\x77\xb7\x77\x93\x46\xb9\x7c\xc1\x0a\x0a\x66\xbd\xec\xaa\x1d\xd6\x4a\x7b\x30\x8b\x7d\xc0\x75\xcc\x1c\x8d\x3b\x0e\x84\x21\x24\x81\x01\x81\x83\xef\x90\xff\x8c\xc7\x59\x04\x1e\xe9\x7d\x32\x96\xc2\xef\x66\xf0\x7a\x2a\x50\x28\xf5\xfd\x55\xc1\xad\x9e\x25\xa2\x21\xcd\xbb\x49\x58\x7e\x4d\xa6\x94\x83\x22\xf0\x96\x1a\xfa\xb6\x97\xce\x27\xa8\x1a\x11\x91\x7c\x29\x5e\xfc\xac\x26\x33\xff\x12\xb7\x85\xc7\xfb\x80\x1e\xf1\xe9\xc8\x26\x86\x14\xac\x85\x54\x17\xea\x31\x74\x83\x41\xcb\x9d\xd8\x2c\x01\x7a\x42\x3d\xd1\xf7\xa7\x3a\xd0\x93\xf8\x84\x13\x5e\xe1\x3a\x87\x0e\xab\xf5\xc4\x27\x8b\x53\x8a\x13\x6f\xd6\x8d\xdc\x35\x91\x35\x32\x7e\x0a\x83\xfb\x87\xf7\xac\x8b\xb5\xb5\x29\x5d\x01\xb0\x75\x03\xa3\x59\x8e\x73\x57\x2f\x87\x3c\xd3\x55\x80\x67\xcd\x1c\xef\x5f\x66\x6e\xa4\xb1\xd9\xd5\x16\x11\x8c\x34\x5b\x9b\xe3\xe1\x12\x08\x7a\x34\x83\xda\x09\x99\xa1\xf8\x19\xdc\xf3\x66\x41\x1e\x4d\x43\x89\x5c\x5f\x6a\x5c\xbb\x73\xd1\x8c\xf6\xb1\x66\x00\x51\xa5\x19\x97\xe4\x91\xec\x79\x00\x56\x92\x4e\xf2\xd8\x81\x30\xf5\x36\xb0\x03\x1e\xe3\xd7\x9d\xdd\xe2\x63\x9b\x94\x8a\x0b\x1c\x2e\xda\xe4\x1c\xd1\xf9\x21\x7e\xa9\xc7\x2a\xc3\xe2\x35\xe1\x9c\xf4\xc9\xfd\x89\x9a\x2b\x57\xe7\x0e\xdb\x71\x42\xea\x4b\x7a\x7e\x06\x79\xff\x49\x3b\xa6\xdd\xd1\x6c\xdf\xd1\xf0\x18\xbf\x06\xbf\xa8\xe5\xe0\x8e\x92\xee\xc7\x9c\x5c\x63\xa0\xaf\x01\x12\x2e\x4f\x30\x4b\x9a\xa1\xbd\x1c\xe6\x3d\x18\xf3\x41\x43\xc1\x36\xdb\x09\xc6\xd6\x6b\xed\x41\x45\x83\x67\xe3\x0d\xb5\x9b\x95\x98\xa4\x05\xb2\x86\x75\x32\x57\xbb\x16\x2a\x2e\x92\x14\x2b\xaf\xb6\xa3\x11\xc9\x66\xfe\xd0\xbe\x5c\x20\x44\xd4\xcf\x94\x51\x89\xcb\xd4\x29\x52\xc4\x53\xa5\x92\x98\xf0\xbf\xd4\x14\xa7\x27\x76\xed\x93\xb7\xaa\xcc\x8e\xec\x69\x7b\xc5\xea\xab\xa5\x22\x72\x71\x1b\x85\x42\xf1\xca\x7a\x93\xc2\x22\x06\xca\xc2\xac\xca\xfd\xb6\x72\xb1\xb6\x24\x98\x8a\x3b\xfc\x1e\x74\xa0\x87\xf0\x37\x38\x41\xf4\x6f\x2e\x34\x73\xab\x59\x88\xef\x07\x0b\x44\xcc\x5d\x62\xb9\xb7\x7f\xf1\xe8\x2b\xdb\x77\x1a\xd8\xc6\x0a\xcc\x51\xcf\x1f\x8a\x95\xe9\xdc\xb6\xf9\x86\xbd\x1f\x6e\xe7\xf0\xd2\x3f\xfd\x2a\xf8\x20\x5c\x4f\x2c\x7b\x72\x6b\xdc\xcc\x99\x84\x76\x19\x24\xa4\xfb\xf5\x40\x42\xa8\xaf\x39\x09\xf2\x58\x4b\x82\xfe\xa1\x18\x1a\xf2\x62\x33\xf4\x7f\x80\xb6\x87\x66\xda\x39\x19\xc8\xf6\xa7\xea\x73\xf9\xf0\x48\xe1\x1e\x3d\x5a\x8f\x7b\x94\x2a\x8a\x94\x71\x08\x8b\xb7\xe7\x76\x14\xc5\xd1\xf0\x79\x7e\x24\xfe\x90\x6c\xc8\x10\xae\xd2\x7c\x77\xca\x31\x75\x53\xde\x3f\x25\x3d\xa8\xe5\x19\xcc\x8e\x45\x8a\xec\xcf\x1b\x0b\x7f\x48\x1e\x8b\x70\x75\x95\xb1\xfc\x3d\xe9\xc1\x8a\x63\x99\x84\x2e\x72\x27\xb6\x57\x3c\x98\xf8\x29\x79\x34\xe2\xe5\x55\x86\xf3\xbd\xed\x7a\xeb\x19\x0e\xbc\x99\xa3\x87\xe2\xb1\xd0\x47\xe4\x81\xc4\xd7\x56\x19\xc5\x87\x40\x9b\x70\xeb\x5a\x4d\xf0\x98\x0e\xb0\xac\xb5\x78\x1e\x8f\x72\x90\xb0\x2d\x11\x35\x3c\x01\x84\x59\xd1\xad\x54\x35\x40\x89\x1c\xba\xeb\x3d\x34\xf8\x37\x5f\xec\xa1\x71\x4e\x46\xf0\x72\x4e\x8b\xf5\x00\xbb\x6c\x1e\x58\x4a\xde\x21\x48\x4b\xd6\x3e\xa9\x3a\xd2\x05\x87\xe3\xa2\x9d\x81\x3e\x91\x89\x8b\x3b\x4c\x40\xa5\x28\xd7\xd5\x07\x96\x3a\xcc\x0d\x04\xce\xdb\x11\x0e\x95\xc1\xad\x9b\x01\x5f\x29\x56\xf7\x32\x6c\xa9\x14\x2b\xb7\x08\x98\x65\xf0\x82\x03\x18\xd9\x6a\x63\xdb\xb4\xb8\x4c\x64\x94\x96\xfd\x8a\xc0\x2c\xfb\x15\xa3\x18\xe9\x83\x54\x80\x65\x9f\xfc\xc9\x9f\x11\xb1\xf6\x01\xbf\x41\x25\xdc\x87\xe2\xf7\x58\x13\x3f\x24\xaf\xc5\xdf\x78\x8d\x62\x5c\x61\xe7\xfd\xca\x61\x8c\x92\x36\xb3\xc9\xd0\x37\x91\xdd\xa4\x80\x31\xf9\x46\xcd\x58\x31\x35\xdf\xae\x3d\xe4\x4d\xe2\x79\x55\xef\x1b\x46\xeb\xa9\x57\xcf\xd7\x8b\x79\x64\x56\x41\xed\x35\x98\xf5\xc5\x04\xb3\xbe\xd8\x38\x46\x15\x1e\x10\x17\xb1\xf2\x31\x81\xe2\xb7\xe2\xd8\x47\x2f\x1d\x15\x19\xff\x31\x8d\xd3\x7c\xd6\x8d\x0b\x54\x6a\x57\xdd\x1a\xd3\xef\x16\x45\x47\xde\xce\xf7\xee\xfa\xc7\x07\xd7\xcd\xa3\x23\x3b\xca\x78\xbf\x8d\x62\x01\xf1\x99\xce\xc6\x42\x02\xfd\x5b\xcf\xf5\xaf\x59\x62\x12\x89\x8b\x14\xf4\x07\x41\x2e\xd5\xdd\xe8\x2c\x79\xb0\x1e\xbc\x46\x05\x11\xa3\x3e\x02\x44\xca\x4f\x38\x60\xfa\x11\x96\x2a\x7e\x84\xd1\xec\x3c\x31\xc9\x66\x95\xd7\x52\xa7\x21\x3d\xc2\xf2\x1c\x6c\xa9\x8f\xe4\x39\x0c\xf5\x4d\x54\xdc\x4c\x84\x2b\x91\x8f\x7a\x69\x53\x96\x92\x10\xab\x3a\xcc\x8f\x91\xe6\x41\x3b\x42\x5a\xe0\x43\x8d\x1e\xec\xd4\x5c\xa4\x05\x3e\xb9\xc6\x77\x12\xcd\x8d\xb4\x2b\x6a\x10\xab\x9c\xd7\x9a\x33\x28\xc1\xda\xf8\xcc\x63\x9a\xd9\x91\x66\x6b\xac\x3f\xab\x0e\x4b\x30\x08\x6f\x66\x58\x9e\x27\x8d\x26\xd2\xec\x10\x6a\xac\xd5\xba\xb9\xc6\xfc\x1f\xcd\x39\xc6\x1f\xf2\x03\xf9\xeb\x66\x95\x50\x91\x3a\xd9\xc5\x92\xa8\x5f\x51\x8b\xc9\x20\x4a\x65\x4e\xfa\xdc\x0d\x98\x45\x2f\xb3\xa9\x3e\x09\x16\x14\x0b\x37\x7f\x1f\x2e\x99\x08\x3d\x37\xf6\xe9\x80\xc5\x3e\x49\x91\xdd\x26\x3f\xda\xd2\x00\x66\x39\x81\xc5\x7a\x0e\xdc\x59\xae\x90\x53\x75\xae\xf5\x42\x7c\x9a\x35\x34\x2b\x1a\x65\x4a\x3d\xf0\x9b\x8b\x5b\x96\x58\x40\x8c\x5f\x11\x82\x04\xf5\x93\x8f\x1f\xce\x7f\x3a\xfb\xf5\xc3\xf9\xa7\xe3\x93\x77\xe7\xbf\xbe\xfb\x70\xfc\xdd\xd9\xbb\x53\xa5\x1d\xa0\x92\xc9\xb0\x93\x31\x13\x26\x84\x24\xe5\xd1\xa9\x66\x9c\xb1\x1d\xd6\x4b\x7d\x97\xa2\x0f\xd9\x67\x9b\x1c\x81\xca\xd3\xab\x61\xec\x21\x1f\x60\x7d\x34\x9c\xa6\xe7\xae\xcc\xa6\x9c\xba\x0d\x36\x8d\x06\x9b\x96\x2e\x05\x40\x5f\xbb\xbe\x53\x23\x94\x5d\x5f\x43\x48\x7c\x11\x9f\x67\xd9\x2f\x77\xd7\x03\x65\x6f\xfe\x0d\x0f\x0d\x13\x03\xc1\xf0\xc6\xf5\x6d\xe4\xfa\xd3\xf6\xd4\x46\xf0\xce\xce\xda\xd9\x94\x2f\xba\xfe\x34\x84\x51\x94\x7e\xa9\xb9\x8d\xad\xd4\x6f\xa1\x36\xbe\xa9\xe8\x20\xd9\xe1\x52\xef\xf5\x8b\xe8\xa7\x27\x01\xe5\xb8\xd3\x77\x2e\x9a\x05\x0b\x2c\x9f\x2f\x68\x0d\x77\xea\xe7\xc9\x26\x69\x54\x0f\xe1\x4a\x8b\x13\x75\x26\xa4\x81\x50\xb1\x02\x51\xff\x4a\x1b\x27\x10\x6d\x53\x1d\xe8\xc7\x51\x14\x4c\x5c\x1b\x41\x87\x59\x69\xd4\xd4\xc6\x3a\x09\x74\x78\x74\x78\x54\x9d\x48\x15\xe5\xaf\x7a\x8c\xb8\x71\xd6\x6b\x48\xa5\xc5\x3c\x42\x21\xb4\x6f\x72\xe8\x53\x4f\x10\x53\x6e\x19\x62\x27\x4f\x02\xdf\x27\x16\xa5\xbf\xbb\x68\xf6\x57\x4e\xa7\xc4\x96\x2b\xdd\x27\x89\x15\xcd\x42\x40\x55\x07\x59\x6e\x56\xc5\xd7\x3b\xc6\x56\xcd\xa7\x68\x72\xe0\x15\x6d\xe4\x9b\x98\x94\x5a\x79\x84\x8d\x12\x3b\x48\x6c\x39\x5b\x64\x2b\x66\x08\x8a\x84\x29\x1d\xec\xd7\x1d\xe5\x66\x47\x96\x4c\x73\x13\xaf\x49\x93\x41\x95\x4e\x58\x21\x8b\x37\x14\xa1\x6a\x65\x41\x36\x89\x49\x6e\x60\x95\x5e\x47\x0c\x30\xb1\xe5\xda\x58\x28\x24\xe1\x98\x36\x6a\xfb\x8b\x9b\x4b\x62\x0e\x26\x86\xe5\xb9\xb7\x08\x6d\xcf\xfd\x1d\xea\xb1\x00\x2f\x54\xdd\x4d\x62\x86\xb9\x01\x4f\x46\x5f\x84\xfe\x2d\x0d\x14\x6e\x6c\x0f\xde\x4c\xec\x2f\x60\xd0\xcc\xc3\xc7\xc4\x90\x38\x14\xad\xb7\x21\x44\x8b\xd0\xd7\xe8\x97\xa6\x10\xb5\x20\x48\x89\x56\xc6\x5f\x3a\xcb\xe5\x8a\x86\xe4\x2d\x44\x74\xfc\x2d\xda\xb7\x17\xfb\xa7\xf7\x6a\x8b\x72\x1a\xc9\xb1\x42\xca\x3d\xdf\x38\xba\x15\xf0\x05\x2b\xc1\xdf\xc5\x3b\xd1\x58\x80\x04\x6e\x7c\x86\x48\x07\x69\x8c\x2d\xe8\xc0\x10\x4e\xdd\x08\xc1\x10\x3a\xe4\x90\xf0\x03\xcd\x0b\xfc\x29\x0c\x35\x78\xef\x46\x28\xc2\x3b\x13\x3e\x65\x27\x36\xb2\xbd\xa0\xb2\x0d\xab\xd6\x8e\x94\xbf\x68\x79\xd0\x7e\xf3\x55\xb5\x65\x20\x6b\xbc\x5b\xdb\x16\x4b\x7f\xf8\x63\xf0\xf7\xdf\xfd\x9b\xff\xde\xaa\x58\xfa\xd7\x60\x7b\x85\xbc\xa0\xbf\x06\xdb\xff\xb1\x82\xed\xad\xae\x2a\x8a\xa7\xbb\xa6\x70\xfb\xfe\xbf\x51\xb8\x7d\x66\x2c\x2f\x38\xdc\x3e\x33\x96\x97\x1d\x6e\x9f\x19\xce\x0b\x0d\xb7\xef\xe1\xa1\xac\x25\x40\xa6\x5b\xb9\xce\xe9\x3a\x77\xf1\x97\x5e\xd2\x94\x07\x99\xbd\x8c\xd2\xa6\x5f\x2b\x5f\xaa\x68\x15\x65\x90\x66\xfa\xa9\xab\xcd\x2b\x81\x26\x48\x4f\xf5\x36\x83\x8e\x22\x7a\x50\x34\xa2\x35\x0c\x1c\x2c\x25\x45\xda\xda\x2c\x93\x44\x71\xb7\x31\x69\xde\xd3\x6f\x69\xc2\xa8\x6a\x86\x16\x96\x0e\x46\xe5\x6b\x90\x07\x94\xf3\x44\xe3\x41\x7d\x49\xbe\xb7\xc9\x81\xdd\xc0\x68\x96\x33\xa2\xf4\xad\xc6\x43\xf9\x11\x46\xb3\x9a\x63\x58\x0f\x9b\xff\x48\x2c\xea\x1b\xe5\xf1\x36\xb1\xda\xa7\x79\x3b\xbe\xba\x02\x4f\x4b\x26\xca\x4d\x4c\xbd\x1f\xa0\xb6\x7a\x00\xa9\x3b\x8d\x07\xf1\x21\x40\x69\x5b\xeb\xa6\x42\x69\x5f\x53\xf3\x5e\x53\xf3\xb6\x5d\x30\x79\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x7b\x4d\xcd\x5b\x71\xf2\x5f\x53\xf3\x5e\x53\xf3\xfe\x0d\x52\xf3\xb6\x30\x23\x8f\x56\x2e\xdf\x9e\x7c\xbc\xd9\xfd\xc3\xdf\x3f\xf7\xf6\xff\xb6\xa6\xf2\xfd\xf5\x6f\xe4\x04\x64\x48\xd2\x15\xaf\xf8\xdf\xdf\x68\x96\x1f\x99\x9a\xfc\x7a\x07\xfd\xea\x09\x7b\x1b\x48\xd9\x4b\x24\x8f\xac\x7a\x46\x05\x8e\x63\x52\x57\x31\x08\x39\xee\x3e\x35\x20\x48\x57\x57\x50\xd8\xa4\x88\x52\x3d\x84\x9e\x0e\xf4\x9b\x3c\x68\xe6\x4a\x91\x72\x1b\x4a\xf0\xd3\xa4\x7f\xa4\x56\x24\x99\xd8\x4c\xdb\x35\x4e\xa2\x72\x70\xe4\xb2\x08\x3b\x91\x26\xd9\xa4\xa6\x43\xb1\xb2\x3d\xe9\x6d\xba\xb4\xbd\x7a\x1a\x13\x54\x67\x59\xd9\xca\xb2\x43\xfb\x50\x78\x29\x9d\xb2\xf1\x0c\x25\x10\x72\x58\xab\x90\x95\x24\x15\xf6\x7c\x12\xcc\x61\xce\xdc\x54\x64\xbf\xb4\xba\x22\x96\xb1\x38\x0b\x98\x87\x56\xf7\xc8\x5f\x40\x9f\x7a\xc1\x25\xbe\x94\x52\x61\xea\x32\x4a\x8a\xf7\xa5\x53\x21\x5c\x78\x30\x82\x68\xaf\x56\x0c\xe6\x8a\x74\x3c\x85\xd1\x24\x74\x79\x14\xce\x1a\xa9\x29\x29\x48\x52\x2b\xe3\xfc\x3c\xbd\xe6\x34\x5d\x0f\x17\xb3\x20\xcb\x7a\x5c\x9c\x15\xd9\xeb\xc7\xc7\xab\xe4\xdd\x59\x08\xaf\xf4\xb1\x5c\xce\xb0\xc1\x2e\xd1\x4c\x4b\x28\x24\x13\x53\x48\xea\x6f\xc8\xef\x1c\xb7\x21\x2a\x7a\x89\x8c\xad\x3a\x1c\x59\xf6\x45\xba\x6e\xc1\xda\xac\x97\xc9\x4c\x05\xfe\xc4\x73\x27\xd7\xe2\x64\x59\xe3\x54\x71\x50\x20\x37\xbe\x4d\xb3\x72\xba\x98\x7b\xee\xc4\x46\x0d\x0b\x1c\xd4\x54\x7f\xa4\x6c\x99\x4d\x08\x33\x95\xf3\x13\x92\x69\x64\x82\xa0\x63\xfb\x53\x18\x06\x49\xc4\xdd\x0b\x9f\xd8\xb3\x60\x1a\x2c\x1a\x2d\xb8\x4a\xfd\x9a\x88\x12\x7d\x83\xee\x25\x73\x70\x98\xcc\x81\x14\xea\xd5\x2c\x5f\x76\x03\xe2\xb7\x96\xfa\xc7\xb4\x17\xcd\xcb\x52\xb8\x16\x95\x2b\x76\xf6\x32\x70\x1a\x44\x54\x24\x9f\xcf\xcf\x49\x17\xff\x1d\x87\x50\x7b\x08\x16\x5a\xb4\x60\x7f\xdc\xd9\x3e\x29\xb9\x18\xa1\x60\xae\x2d\x22\xd7\x9f\x6a\x68\xe6\x46\xda\xf1\xc9\x19\x15\xaa\xdf\xd2\x68\xf4\x3b\xd7\xf3\x30\x29\xc8\x4b\xc1\x02\x99\x79\xdd\x50\x49\x17\x9b\xa0\xd7\x84\x2b\x97\xcd\x49\x46\x19\xf3\xa8\xde\x89\x4e\x17\x5c\xcd\xd1\x14\x7b\x89\x1b\x91\x29\xcf\x65\xb5\x86\xcd\xbb\xac\xd2\x5c\xfd\xb3\xb1\xbb\xcd\x5b\xe8\x4f\x51\xa3\x53\xf1\x2b\xef\x9f\xfb\x2f\x75\xff\x5c\xa4\xc8\x5b\x8b\xc4\x15\x7b\xfa\xcc\x9b\xe7\x22\x82\xe9\x5d\xf3\xdf\x66\x7b\x3c\xa8\xb7\x3d\xfe\x14\x55\x0d\x32\xcc\x1b\xf7\xc1\x26\xf6\xc6\xfd\x0d\x0b\xb6\xb2\x22\xd2\xc9\xc6\xfa\x08\x9b\x9f\x12\xef\xa1\xae\x34\xbc\x1e\xdd\xa6\xb9\x50\xdc\xd9\xe6\x1d\xfd\x14\x7a\xb0\x99\xaa\xf3\x95\x37\xf5\xfe\x4b\xdd\xd4\x9d\x2c\x85\x6b\x51\xb9\x62\x67\x9f\x79\x5f\xa7\xa3\xa4\x5b\xfb\xbf\xd9\xb6\x3e\xa8\xb7\xad\xd3\x15\xb5\xe2\xce\x3e\xd8\xc4\xce\xde\x5f\xeb\xce\x5e\xe0\xae\xed\x55\xf0\xd7\x96\xa5\xbe\x5b\x2b\xa7\xc6\x07\x3e\x65\x4a\xd1\xfd\x1a\xf8\x8b\x08\x92\xff\x4e\xbc\xc0\x17\x8b\x5e\x11\xa6\xe5\x3e\xdf\x54\x41\xad\x68\x71\x19\xa1\x90\x97\xcc\xa2\xe6\x69\x37\x6a\x7b\x70\x6a\x4f\x1e\x68\x3e\xbd\x78\xdd\xf6\x03\xff\xe1\x26\x20\x79\xd6\xd3\x26\xc5\xe5\xd3\x6e\xd1\x6d\x71\xd4\x6e\x61\xbe\xfb\xe1\x2f\xbf\xfd\xa3\xf3\x5f\xd6\xcf\x6a\x8f\x2d\x0c\x43\x32\x65\xe9\xbc\x77\x56\x2a\x18\xff\x97\x3e\x52\x21\x11\x9e\xc7\x6f\xf5\xc6\x40\x9f\x84\xb0\x30\x11\x3e\xdf\xe8\x96\xff\xdd\x2e\xee\xc3\x82\x48\x31\x2b\xe5\xc3\x43\xba\xff\x26\xc9\xf0\xb6\xe3\x40\xa7\x2e\x4a\x23\x45\x67\xbc\xb3\x23\xcd\xf6\x35\x42\x23\xfc\x1d\x6a\xf3\x60\x2d\xe4\x7d\x52\x99\x12\x9f\x03\x4b\x92\x47\xe0\x32\xa4\x81\xad\x22\x70\x64\xdf\xae\x85\xc0\x91\x7d\xfb\xd5\x08\xcc\xb6\xc6\xad\x26\x30\x26\x0e\xed\xe7\x3a\xa8\x4b\xbe\xf4\xd5\xe8\x4b\x8f\x97\xad\x26\x6f\xcc\xbf\xa4\xaf\x8e\x66\x47\x29\xa7\x25\x57\xc7\xfa\x19\xa5\xeb\x90\xc5\x2b\x97\x46\xb0\xd6\x9a\x21\xdc\x8f\xaf\xb7\xc3\x44\xab\x02\x99\xac\x77\x5e\x7e\x09\x16\x0c\x0c\xf7\x2e\x36\x2e\x43\xcd\x87\x77\x89\xa5\x64\x75\x0a\xf3\x0f\xdb\x28\xf9\x6a\x2d\x22\x6f\xe8\x22\xb7\x13\xf0\x3c\x06\xac\xd0\x93\x1e\x47\x24\xf4\x2e\x8c\x10\x15\x26\xea\xa5\x6e\x88\xd0\x66\x34\x22\xa3\x66\x00\x32\xd7\x8b\x2e\x13\x94\x0d\xa2\xbe\x24\x4b\x04\xeb\xf6\x7a\x4b\x07\x2a\x34\x35\x01\xae\x42\x51\x88\x3a\xb9\xab\x0f\xb5\x54\xcc\x39\xc8\xf4\x1a\xe8\x46\x26\xd8\xa2\xe2\xa4\x59\xe5\x92\xf2\x24\xf0\x27\x76\x1c\x7e\x48\x24\x60\x14\x2e\xf0\x35\xc8\x42\x16\x9b\xca\xb0\x5b\x86\x53\x93\x8d\x2c\xd9\x0e\x29\xf6\xbb\xf7\x13\xdb\x3e\xbe\xfd\x97\x5a\x8a\x9d\x07\x9e\x3b\x71\x49\xa0\xa9\xf0\x27\xaf\x0e\xe0\x40\x1f\xb9\x48\xba\x76\x63\xfb\xf6\x94\x70\x33\xbf\x96\x27\xdf\x2a\xf0\x19\xc5\xf0\x1f\x12\x96\xa5\x7f\xe2\x8d\x32\x73\x1b\xbe\x76\x7c\x72\x16\x91\x92\xe1\x9e\x3b\x79\x38\xa5\x03\x96\x78\x7d\xc0\x16\x5a\x53\x43\x9c\xa2\x83\x87\xe3\x04\x39\x4a\x18\x62\xfd\xaf\x8a\x09\x86\xfc\x90\xdb\x5f\x39\xbf\x50\x5b\x25\xf2\x28\xa5\xe5\xff\x18\x0f\xaf\x4a\x04\x50\x41\x50\x52\x12\x0c\xd2\xcd\x58\x28\xb3\x7f\x57\xa1\xf0\x2a\x19\x31\x9a\x2a\xb9\x88\x16\x5b\x90\x77\xc8\x03\x55\x58\x5f\x17\x1c\x48\x48\xe1\x85\x11\x87\x99\xec\xb3\x02\xfa\xe9\x8d\x70\x9a\xf7\xa5\xa3\x2b\x97\x53\x85\x05\xba\x1e\x4e\x5d\x21\xee\x77\x1d\x9c\xfa\x5e\x1c\xcf\x86\xb8\xb1\x0b\xfa\x5f\x93\xdb\x06\x6a\x6e\x1b\x54\xe7\xb6\xc1\xc6\xb9\xad\xaf\x10\x94\xa4\x60\xae\x01\xd8\x5f\x17\x16\x6b\x5d\x96\xf8\x8c\x0f\xd4\xfa\xdc\x20\xcf\xd4\x19\xb1\xa6\x51\x99\x34\xd2\x66\xf6\x2d\xd4\xe0\xcd\x25\x74\x1c\xe8\x68\xe4\xc4\x4e\x97\x85\x68\x4a\xdc\x3c\x45\x41\x5c\xc0\x47\x39\x8b\x39\x3e\x7f\xd3\x0e\x2a\xf1\xbc\xfc\x1c\x78\xca\xc3\x12\x5f\xdf\xdc\x51\xa9\xda\x2a\xba\xcf\xbb\x55\x34\xe4\x8b\xea\xbb\x44\x77\x2d\xbb\x44\xa5\x3d\xa2\xa7\xde\x23\x7a\xd5\xf7\x88\x4c\x9e\xd3\xda\xf7\x88\x6e\x75\xb5\xab\x82\x56\x40\x78\xfd\x61\x0f\x3d\xcc\x61\x70\x95\x9b\xe4\x94\xa4\x2d\xf1\x1b\x4c\x08\x25\x86\x57\x9a\x3c\x65\xcf\xe7\x90\x40\xd4\xd2\xec\xa7\xac\x01\x9d\x35\xc5\xd2\x46\x1b\xea\x1a\x59\xb1\x7e\x5b\xec\xe6\xdb\x06\x8b\xf9\xfd\x9d\xbd\x07\xa3\x1f\xed\xaf\x00\x8b\xb9\x35\x58\x96\xfb\xb2\x53\x7e\x20\x41\x59\x1e\x7c\x05\x24\xcb\x71\x53\x48\x91\x54\xcf\xff\x1d\xf0\xce\x5e\x04\xce\xd9\xd1\x78\x9d\x68\x22\xb9\x90\x1f\xe3\x82\x74\x5e\x9a\x66\xd3\x16\xf5\x79\x09\x3f\x48\x79\xbf\x31\x8a\xd0\x5f\xc9\xd7\x04\xdd\xb3\x76\x96\x76\xb5\xf1\x28\x07\xb1\x86\x9e\xaf\xbd\xbb\x2c\xdb\x49\xea\x6d\x7c\xad\x71\x67\x93\x6c\xaa\x3a\x5e\xf7\xcd\xe0\xa9\x28\xd6\x9e\x72\xbb\x7b\x46\xcc\x94\xd4\xf6\x67\x75\x5e\x30\x66\xca\x51\x6e\x1c\x9c\x95\xfe\xa1\x9f\x10\x1f\xf3\x17\x37\x01\x44\xf9\x00\xef\x60\x44\xa2\x6d\xf0\xe9\x16\xa1\x2c\xc4\x49\xfa\x45\x0a\x8f\xf2\x91\x3c\x8d\xdf\xf3\xc9\x17\x5e\x11\x4e\x9a\x1f\x06\x5f\x19\xe0\x84\xcc\x65\xa3\xd8\x39\xbd\x32\x66\x44\x86\xd1\x24\xe4\x08\xc5\xdd\x9a\xf8\x11\x59\xb6\x5d\x3b\xec\x45\x9a\xe5\xf3\x46\xd0\x0c\xad\x23\xbb\x7e\x5e\xa1\x30\x52\x50\x18\x82\x24\x1e\xc7\x5a\xc5\x57\x04\x1c\x8c\x18\xfe\x62\xad\x00\x17\x6a\x2d\x6b\x65\xed\xaf\xb1\xce\x77\x13\x4c\x43\x7b\x3e\xc3\x0a\xad\x3d\x9f\x6d\x87\xce\xf7\xce\x9d\xf7\x1f\x06\xbf\xcc\x0b\xa0\x2d\x94\xba\x5a\x74\x3b\x65\x36\x11\xfd\xce\x75\x10\xc1\xa9\xb4\x28\x06\x44\x87\xd6\x9d\xc3\xb7\x66\x90\x1f\xda\xa9\x7b\x8a\x52\xa3\x1d\xa0\x4f\x13\xc9\x22\xa1\x16\x6f\x06\x85\xb6\x1f\x11\x15\x91\x7e\x8e\x5e\x20\x23\x49\x3b\x5a\x49\x70\x75\x97\x1f\x83\x3a\xd0\x4a\x1e\x30\x72\x4a\x38\xa7\x7b\x96\x8f\xd0\x80\x9f\x99\xb8\xe1\x84\xca\x2a\x74\x08\x97\xf6\xe4\x1a\x1f\x08\xbe\xc3\x87\x10\x0a\x94\xe8\x82\x0b\xbd\x83\xdb\x1d\x4b\x3e\xe4\xea\x9f\xb7\xef\xdd\x28\xef\xc3\xd6\xa6\x3e\xdc\xdd\xd4\x87\x7b\xab\x7c\xf8\x32\x08\x99\x5a\xaf\xfa\x74\xbf\xec\xd3\x45\xc6\x36\x99\x2b\x3d\xd7\x87\x69\xe5\x3e\x11\x06\x06\x82\xb0\xd6\xcf\xfc\x3d\x10\x6d\x85\x2b\x19\x5c\x71\x2f\x72\x57\x45\x18\x20\xbe\x24\xa8\x08\x42\x2f\xf0\x60\x01\xbe\x32\x1f\xba\x31\x95\xe8\x63\x0f\xc9\xd4\x0e\x80\xee\xd8\xc8\x6e\xfb\x81\x03\x53\x4f\x39\x99\x87\x1c\x97\xd5\xa1\x4c\x3d\xc8\x2f\xa7\x9f\x8f\xe0\x94\x6b\xa4\xc2\xe3\xfc\x6a\xce\x4c\x15\x1e\x66\x0d\xa6\x11\x0b\x52\x2a\x23\x4d\x19\xa3\xcd\x03\x97\x96\xd7\x24\xf8\x2e\x3a\xd0\x07\x7a\x45\x96\x15\xb7\x36\x96\x17\x52\xb2\xa9\x75\xe8\xb6\xd5\x27\xae\x82\x8e\x34\x7f\xf9\xa1\xf8\x19\x16\xe9\x03\xfd\xbe\xab\x03\xfd\xa0\x53\xd6\x53\xf1\x75\x04\xef\xe3\x61\xde\xe3\xb7\x07\xfc\x17\x3e\x96\x3b\xfc\x87\x83\x7f\x99\xbd\x2e\x05\xdf\x48\xe1\xac\x1c\x32\xae\x3f\xe0\x1b\x1d\x66\xf4\x1b\xfb\xde\xbd\x59\xdc\x7c\x1f\x52\x71\xe0\xd4\x9d\xba\xe4\xe0\xbb\xe8\xc6\xc5\x4a\x6f\xf2\x5d\x03\x85\xa9\x02\x6b\xa2\xb4\xf5\xb2\x29\x6d\xbd\x1c\x4a\x77\x5f\x36\xa5\xbb\x2f\x87\xd2\xbd\x97\x4d\xe9\xde\x86\x29\xad\xb8\xbc\x9a\x6e\x44\xeb\x2a\x3a\xee\xad\x1e\x1f\x21\x20\x3e\x11\xf3\x81\x01\xd9\xb1\x04\xf4\x1b\xd7\xf3\xdc\x08\x4e\x02\xdf\x89\x32\x15\x1c\x9b\xe8\x41\x2a\xcd\x43\xd0\x83\x14\x25\x12\xad\xfd\xce\x9f\xe0\x12\x84\xc2\x3d\x80\xe2\xbb\xe8\x2f\x9d\xb7\x73\x3b\x8c\xe0\x7b\x1f\xb5\xd0\x9f\xa0\xb1\x67\x75\x3a\xc3\xce\x12\xd8\x0d\x75\x2a\x4c\xb2\x61\xaf\xb7\x0f\x92\xbe\x0e\x3b\xe0\xc6\xbe\x1f\xb6\x8f\xf8\x3f\xe0\xfa\x2e\x4a\xca\x39\x1a\x8f\x68\xe6\x46\xe6\xaf\xd1\x62\x0e\x43\xd3\x9e\xcf\xbd\x87\x16\xbe\x02\xec\x70\xba\x20\xe2\x93\x01\xc8\x13\x74\x06\x46\x17\x7e\xcb\x32\x80\xdf\x32\xbb\x03\xf2\x1f\xfa\xbf\x07\xe4\x3f\x96\x31\xa6\xcf\xd2\x29\xc0\xcf\xb6\xd9\x73\x6d\x93\xfd\x87\x3e\xd9\xb6\x8c\xf1\x12\x88\x13\x34\xa4\x63\xc2\x64\x5f\x20\xe8\xb4\xa4\x89\xbe\xb1\xef\x75\x41\xab\x33\x1e\xb1\x4a\x06\x47\x49\x01\x4a\xd2\x63\xf2\x98\xf1\x86\x12\xf7\x22\x6c\x75\x07\x00\x1a\x20\x6c\x0d\x3a\xf4\xbf\x07\xec\xb7\xd5\xc1\x17\xc6\x44\xe3\xe4\x8d\x64\x9a\x17\x34\x27\x45\xcb\xa4\x3d\x94\xe9\x80\xf0\x52\xa2\x18\x93\xdb\x22\xe3\x1a\x4f\x4f\x17\xe3\x37\xbe\x79\x15\x84\xef\xec\xc9\xac\x95\x7c\x1e\x19\x8f\xc8\xe4\x0f\xfe\x45\xaa\xaf\x49\xc6\xb6\xbb\x4b\xaf\x45\xc9\x35\x90\xbc\x60\x60\x95\x1a\xf7\x2f\x14\x5a\xf6\x01\x8f\x51\x30\xde\xb8\x57\xad\xf0\x2f\xbd\xfd\x0e\x1d\x85\x3d\xea\xed\x77\xf6\xc2\x37\xfe\xc8\x37\xa9\x09\x41\xe8\x89\xc8\xa6\x9d\xd1\x08\x3d\x3d\xa1\xd1\x28\x6c\x5b\x4f\x4f\x3f\xda\x68\x66\x86\xb6\xef\x04\x37\x2d\xe3\x3f\x6d\x4c\xc5\x9c\xf6\x96\xec\x7d\xdf\xbc\xb1\xe7\xe2\x28\x81\xcf\xbf\xfd\x48\xc5\xea\x61\x6f\xbf\xf3\x27\x7f\x2f\x04\x0f\xdd\x61\x32\x9e\xbd\x2c\x01\xfe\xd4\xb6\xf6\x3b\x00\x4b\xd4\x43\x64\xe2\xff\xc4\x33\x28\xbc\x07\x98\x18\x3c\x44\x26\xfb\x6b\xb9\x34\x0c\xfa\x7f\x82\xc9\xc1\xae\x6a\x72\xe0\xb5\xbb\xdb\x2e\xab\x71\xba\x45\xb1\xad\x9e\x7f\x36\x98\xfe\xfd\xea\xb8\x10\x53\x73\x12\xdc\x5c\xba\x3e\x74\x8e\x1d\x27\xa4\x71\xf4\x0a\x53\xc4\x22\x1d\x7f\x92\x68\x64\xb2\xfd\xbc\x93\xfd\x31\x00\x47\x8d\x95\xb2\xe4\xb4\x54\x68\x12\xfc\xa6\xe4\x2e\xe1\x99\xc3\x05\x35\xc6\xf3\x72\x6d\xb9\x49\x3d\x86\x8a\x43\xa4\x38\x4d\xe0\x27\x51\x26\x99\xcf\x15\x1e\x69\xb9\x9d\xe4\xc1\xe5\x39\x24\x15\x15\xdb\x01\xb1\xa3\x7e\xfc\x70\xfe\xd3\xd9\xaf\x1f\xce\x3f\x1d\x9f\xbc\x3b\xff\xf5\xdd\x87\xe3\xef\xce\xde\x9d\xae\x29\xa8\x31\x35\xd8\x2f\xd4\xc1\x0d\xf4\x79\x08\xe7\x76\x08\x9d\x5f\xff\xb5\x80\x61\xa3\x4a\xfa\x99\xf8\x25\x32\x78\x56\x0b\xb9\x60\x0e\x8a\x43\x74\xf5\x75\x55\x82\xd7\x08\x7c\x35\xe9\x4d\x93\x2c\xfc\x12\x5d\xb8\x20\xe6\x4e\x1f\xa7\x13\x19\x72\x98\x8e\x51\x8a\x24\x8d\xf1\x61\xa9\x21\x0a\x95\x9d\x51\x89\x54\x8d\xd2\x42\xc4\x40\x3b\x05\xf3\xd8\xc8\x9e\x40\x1f\xb1\x84\x7d\x31\x1c\x32\x93\xd0\x94\x7d\x5e\x57\xfa\xc4\x56\x61\x30\x47\xf8\xfe\x16\x30\x59\x32\xdc\xe7\xe1\x32\x05\xd1\xd7\xc9\x3e\x2a\x4e\x39\x1c\xa7\x10\x4c\xbf\x73\x7d\xe7\x13\xf3\x46\xd7\x8a\x85\x2c\x0e\x46\xec\xa8\xda\x89\x0f\xb2\x31\xd0\xad\xee\x81\xd9\x31\x3b\xa6\x15\x3b\x6c\xf5\x61\x62\xb6\x4b\x77\x6d\x1d\x1c\xb8\x0a\xb7\x4d\x82\xf9\x43\xfb\x72\x81\x10\x01\x85\x4e\x79\xdd\xb8\x23\x95\xe7\xbd\x09\xc3\xcc\x47\x62\xad\xc4\x38\x16\xe0\x01\x9d\x0d\x78\xa0\x20\xf0\x31\xb6\x1c\x66\xba\x52\xfa\x55\x6e\x7a\xac\xae\x10\x06\xcc\x2d\x46\xb3\xa9\xa8\xb3\x2b\x2e\xb6\x4f\x93\xab\x48\x45\x7d\x67\x12\x57\xed\x9f\x22\x01\x84\x40\xa5\x2e\xd6\x57\x03\x8b\xa4\xc1\xe7\x0f\x89\xe4\xbd\xdb\x22\x11\xb5\xf3\x70\x19\xb9\x9f\xd1\x3f\x0a\x45\x54\xd6\x53\xdd\xce\x13\x51\x2b\x80\xaa\xc7\x33\x93\xc5\x55\x07\xfa\xb7\x9e\xeb\x5f\x93\xa8\xca\x31\xf5\x69\x10\xa1\x56\x8e\x16\x21\x61\x30\xba\x1b\x9d\x25\x8f\xd6\xc3\x14\xd2\x37\x07\xc5\x2e\x55\xfd\x11\x8f\xda\xf7\x8c\x0d\x4f\x82\x85\x5f\xb2\xf9\x96\xe6\x29\xa4\x36\xba\x01\xab\x96\x65\xb1\x22\x84\xe7\x49\x39\xef\x7c\xd1\x3b\x77\x0f\xa4\x05\x4d\x8a\x64\xeb\x0a\x67\x9e\xf2\xd0\x5e\x15\xc7\x5d\x4d\xe5\x41\xba\x08\xb2\x92\x10\xab\xa4\x84\xe0\x7f\xc7\x48\xf3\xa0\x1d\x21\x2d\xf0\xa1\x46\xcb\xbc\xd0\x42\xc3\x5a\xe0\x93\x6b\x7c\x9b\xd1\xdc\x48\xbb\xa2\xa5\x94\x2b\xe7\xeb\xe7\x0c\x4a\xa8\x53\xfd\xcc\x63\x9a\xd9\x91\x66\x6b\xac\x3f\xab\x0e\x4b\x28\x25\xbe\x99\x61\x79\x9e\x34\x9a\x88\xa4\x94\xb3\x56\xeb\x62\x28\xf0\x7f\x34\x8f\x9c\xe6\xa6\xcb\x5f\x4f\x67\xe4\xac\x9c\x05\x2e\x39\xf9\x2a\x46\x7c\x95\x1b\x74\x15\xdb\x53\x3a\xd7\xa7\x44\xb9\x05\x2a\x99\x52\xd2\x8d\x88\x09\xbb\xd4\xc2\x50\x61\x22\xf9\xfe\x92\xad\x8b\xd0\x25\x15\x43\x49\x8b\xa6\x33\x31\x59\x55\x97\xc8\x8c\x66\xc1\x5d\x2a\x48\xf5\xff\xe9\x40\xd5\xcb\x64\x34\x09\x54\xb3\x0a\x78\xbe\xd4\x2c\x51\xc9\x16\x51\x8f\xd7\x4a\xc6\xad\x1a\xf0\x57\xef\x7d\x35\xdc\x89\xd4\x49\xa5\x36\xf4\x94\xf7\xa8\xaa\xe2\xc3\x4c\x54\x25\xab\xa5\xc2\xb9\x5f\xb3\x68\xc5\x76\xad\xac\xca\x12\x43\x99\xf5\xa7\x54\x48\xd8\xb0\xe5\xa7\xe9\xbe\x57\x51\x32\xb1\x72\x36\x86\xda\xdb\x6a\xa1\x1a\x9e\x2b\x0a\xb2\xe2\xd4\x04\x1b\x71\xaa\xc7\xfa\x23\x71\xa1\x34\x4c\x54\xcc\x02\xb3\x74\x72\x94\xf3\xfc\xc6\xd5\x88\xa1\x8d\xf8\xab\x29\x3f\x55\x56\xbb\x7b\xa5\x6a\x77\x55\xee\x60\x19\x8c\x0a\x95\xbb\x74\xb6\x7b\xa5\xa7\x78\xed\xe8\x57\x0b\x28\x20\x01\xf3\x55\x6d\xb5\x67\x35\xc1\xec\x23\x2a\x76\xac\x8a\x27\x0a\x38\x5b\xfa\x82\x5e\x4e\x55\x72\xaa\x8d\x73\x5d\x2c\x0e\x62\x6d\x84\xdf\xa7\x50\x71\xd7\xa8\x77\x03\x56\x97\x65\xf8\x98\xe8\x81\x43\x85\x67\x57\xf2\x4d\xc9\x3a\x98\xf1\x97\xce\x72\xb9\xaa\xfe\xbe\x6d\x59\x8d\xdd\xdf\xa2\x7f\xf8\xce\x7c\xf2\x9a\xd5\xf8\x42\xb3\x1a\xb9\xce\xf5\x9a\xd9\xf8\xef\x9f\xd9\x18\xc2\xa9\x1b\x21\x18\x42\x27\xa5\xba\xc8\x37\x68\x92\x1d\x67\x8c\x9a\x89\x76\x9f\x93\x4f\xad\x3b\x33\x10\x1f\x1e\xb9\x43\xc8\xde\x5c\x69\x18\x1f\x02\xa4\x55\x1e\xca\x6b\xe2\xe0\x1f\x3e\x71\xb0\x42\xad\xf5\x74\x4d\xe0\xdc\x5a\xeb\x99\x1a\xd7\x15\x6b\xad\x67\xab\x4b\xbf\xd6\x5a\x7f\xd9\x99\x88\xaf\xa5\xd6\x5f\x4b\xad\xbf\x96\x5a\x7f\x2d\xb5\xfe\x47\xcc\x2f\xcd\x55\x79\x9f\xd5\x9b\x1e\xdb\x8b\xf6\x26\x33\x3b\x44\xe6\x3d\x61\xa7\x8d\x6a\xe1\xc9\x05\xa2\x71\x4b\x36\x2b\xd7\x77\x91\x6b\x7b\x43\xdd\x75\xf0\x77\x02\x7f\xf8\xf8\xf9\xdd\xf9\xbb\x2f\xc3\x8b\x47\x64\x87\x53\x88\xd8\x9d\xe5\x78\x09\x48\x4f\xa3\xe1\x23\xbe\x30\x7c\xc4\x8f\x9e\xff\x74\x72\xf2\xee\xfc\x5c\x78\x98\x43\x2a\x2f\xc7\xe0\xdd\xe7\xcf\x1f\x3f\x0b\xb7\x28\x66\xff\x72\xbc\x5c\x02\xf6\xd4\xf0\x71\x09\xc8\xd5\xe1\xe3\x92\x5a\x36\x2a\x13\x2f\x63\xbb\x00\x35\x09\x2e\x51\x19\xa0\x75\x59\x3b\xfc\x62\x6b\xc7\xe5\x97\xdf\xba\x57\xf6\xe7\x5f\xd4\xd6\x8e\x73\xca\x0a\xfa\x5f\x17\x76\xe8\x88\x95\xea\x1d\x37\x9a\xdb\x88\x2c\x1b\xc6\x2e\xfa\xae\x8d\x10\x01\x5a\xde\x4d\x36\xa7\x6c\x68\x03\xb9\xd0\x26\x03\x8f\x85\x99\x28\x9c\xe8\xe3\x24\xdf\xb7\x5e\x08\x42\x08\xaf\xe2\x0f\xd1\x89\x8d\x2d\x9d\xb1\xe1\x43\x88\x79\x48\x3a\xce\xe0\x21\x95\x16\x8d\x43\x56\x6a\x89\x7f\xf8\x06\xbf\x42\x33\x39\x13\x8c\xee\xea\xc7\x57\x8e\x2f\x9f\x76\xf7\xbd\x43\xea\x48\x44\xe7\xb3\xe0\x8e\x28\x26\xa2\x92\xe2\x2c\x42\x5b\x50\x58\x82\x9b\x39\xc3\xdb\xa7\x91\x1d\xd4\xb2\x41\xac\x34\xdd\x31\xe8\x75\x3a\x9d\x4c\x90\x22\x2b\x1b\xd5\x1f\x03\x9d\xac\xa3\xda\xa1\x1e\x4a\xe5\xa2\x0f\xf4\x30\x20\x26\x2e\xdb\x83\xb2\x6a\x76\x12\xcc\x5d\xe8\xc4\x92\x34\xa9\xf1\x4f\x6e\xec\x28\xfd\x01\xa5\x0e\xa7\x4a\x1e\xa9\xfc\xe9\x62\x85\x39\x56\x98\x2c\xac\x4c\xa6\x46\xfb\xef\x3c\x7f\x12\xde\xfb\x3c\x0c\x2e\x3d\x78\xb3\xb9\xa9\xcb\x68\xfa\xe2\x61\x40\x5d\xb8\x94\x8b\xac\x3c\x1c\x00\x0b\xe8\xc2\xe3\xfb\x40\x47\x2e\xf2\xa0\x0e\xe4\xa0\xf3\x60\xfe\xa0\x51\x49\x0a\x53\x12\xcb\x47\x68\x06\xb5\x89\xe7\xce\x2f\x03\xbc\xb7\x09\x7e\x5f\xea\x77\xea\x0a\xbd\x41\xf1\xb7\x49\x4a\x72\xfc\x56\x9b\x64\xae\xd1\xb4\xb9\x31\x7d\xa7\x2f\xf5\x86\xb8\x47\x0e\xc1\x01\xdf\x63\x6a\x06\x0e\x82\x2e\xe8\x81\x3e\x18\xd4\x71\x68\xb0\xad\x55\x9f\x2e\x5c\x87\x40\x22\xc6\xcc\x18\x4b\x3c\x6c\x73\x8c\xbd\x1a\x6c\x93\xac\x23\xcf\xa4\xce\xbd\x58\x80\x09\x0b\x05\x18\x3f\x57\x80\x89\x49\xca\xd2\x93\x5c\x9f\x9c\x7d\xcc\x57\xdf\xd2\xe3\xfb\x7b\x41\xa4\x1b\xc0\x09\x6e\x72\x1e\x74\x82\x1b\xdd\x00\x82\x97\xa3\x69\x12\x18\x26\xe3\x08\xf1\x13\x95\x5e\xc4\x34\x25\x19\x51\xa6\x13\xdc\x90\x5f\xe4\x65\xf6\xca\xaf\x9e\x1b\x21\xe8\xc3\x30\x4a\x9e\x89\x2f\xb5\x8c\x25\xb8\x73\x3d\xef\x14\x46\x28\x0c\x1e\xde\x79\x64\xa1\x36\xe8\x58\xd2\x8a\x19\xc2\x9b\xe0\x16\xe2\x2f\x3b\xae\xf3\xde\x8f\x60\x88\x14\xdf\x4d\xf2\xb8\xde\xd4\x6f\xc2\x76\xe8\x10\xcd\x78\x02\x4c\x78\x0f\x27\x0b\x04\x5b\xfa\x7f\xe8\x26\x65\xa1\x56\x4c\x1c\xa0\x6b\x8c\xfb\x0d\x03\x3c\x72\xa1\x4a\xe8\x0c\xf3\x29\x41\x93\x9f\xc3\x2d\x9d\x89\x6c\xba\xc1\x45\xaf\xe2\xc7\x89\x10\xa7\x1b\xcb\xa5\x91\xf2\x3c\x85\xa5\xb2\x2e\x59\xbc\x57\x41\x78\xa3\x12\xd6\x12\x23\x4b\x94\x15\xc5\xf8\x2f\x4d\xce\x17\x13\xa5\x62\xf7\xaa\x75\x8c\xd5\x04\xd3\x8d\xc8\x7f\x5b\xd0\x30\x78\xf7\x97\x2d\x68\x3c\x3d\xc9\x9f\x74\xaf\x5a\xfa\xc2\xa7\xfd\x75\xf4\xd1\x88\xe2\xa3\x6a\xe7\x44\xf8\x7a\x7a\xda\x69\xd1\xbf\x4c\x17\xc1\xd0\x46\x41\xa8\xb9\xbe\x46\x25\x42\xfc\x65\xf6\x69\x26\xe1\x5d\x8c\x41\x38\xda\xe9\x00\x7b\xb4\x63\x81\x80\x4b\x7f\x28\x7c\x78\xbc\x0a\xc2\x16\x7e\x26\x02\xde\x08\x5e\xa4\x3e\x39\x6e\x19\xdf\xec\xb4\xc2\x51\x2b\x1a\x79\xa6\x0f\xef\x51\xcb\x30\x4c\x27\xf0\xa1\xb1\xbb\xdb\xf2\xcd\xf9\x22\x9a\xb5\x22\x93\xec\x0e\x06\xd8\x41\x4f\x4f\xbe\x49\x9d\xeb\x3b\xa3\x11\x32\xbe\xc1\x4d\x1a\xdf\x2c\x27\x64\x5e\x5c\xe3\xd1\xc6\x5d\x08\x46\xee\xf2\xca\xf5\x6d\xcf\x7b\x78\xc4\x1d\x08\x9f\x9e\xf0\xde\x37\x1a\x79\x26\xed\xf2\xd3\x13\xff\xab\x65\xc4\x4f\xba\x57\x2d\xdb\x40\xb3\x30\xb8\xd3\x82\x65\x9c\x4d\xb7\x24\x94\x52\x10\x6e\x07\xf2\xf1\x63\x2a\x46\x28\x74\xfd\x69\x42\x42\x7e\x53\x0b\xc9\x0b\x8c\x46\x4c\x9a\x9e\x87\x01\x0a\xf0\x83\x26\x0a\xce\xc9\x8b\xe6\xc4\xf6\xbc\x16\x34\xcc\xc8\xc3\x3b\xc8\x21\x68\x5b\xc6\x1b\x9d\x15\x0a\x19\x8d\x46\xfe\xee\x2e\xc4\x8c\x1e\xa1\x70\x31\x41\x41\x88\x69\x33\x92\xae\x98\x78\x43\x25\x49\x87\xfa\x8f\xf6\x9c\xbc\xf3\xf4\xa4\x9f\x43\xfa\x3a\xef\x0d\xe5\x0e\xac\x42\xb6\xd8\xc3\xc7\x7c\xdd\xb1\x57\xf6\xfe\x6f\xeb\xed\xf0\x27\xf7\xe9\xbd\xe1\xa3\xd6\xdb\xe1\xe1\x93\xb5\xff\xd4\xeb\x1a\xad\xb7\xc3\x13\xcf\xbe\x99\x43\xc7\x78\x4b\x3e\xf2\xbf\xf6\x4c\x04\x23\xd4\xf2\x0d\x79\xa4\x19\x7a\xe1\x4d\x05\xd3\xd4\x87\x77\xc4\xa3\xf4\x0e\xaf\xaf\x96\xfe\xde\xbf\xb5\x3d\xd7\xd1\x6c\x84\x75\x01\x56\x77\x91\x0e\x66\x41\xc2\xf3\xfc\x36\x61\x91\x4b\x2f\x09\x60\x34\xff\xe9\xbf\xf7\x35\x82\x9b\x82\x9f\xbf\x84\x1a\x7f\x04\x90\x17\x88\x8a\xac\x05\x84\x6a\x91\x76\xb3\x88\x10\xc5\xde\xb6\x35\x05\xd7\x69\x37\x10\xcd\x02\xc7\xd4\x8d\x25\x66\x02\xbe\xb8\xe8\x28\x1e\x5b\x94\x61\xd0\xd3\x13\xfa\x0b\x64\x1c\x87\x39\x12\x8d\xe2\x5f\x6f\x38\x5f\xfb\xa3\x0e\x08\x47\xa4\xbc\x0d\x59\x74\xc8\xf8\xc6\xff\x4f\xf4\x8d\xff\xe7\x3f\x1b\xe1\x85\x3f\x1e\xc1\x0b\x7f\xfc\x86\x13\x69\xb9\x1e\x8d\xca\x2e\xd6\xa8\x4e\xbe\xbf\xf1\xbd\x1f\xfa\x91\x5a\xa3\xba\x0b\x5d\x6a\x62\xb0\xe7\x6e\x99\xae\x44\xf6\x2b\x2f\x20\x61\xd4\x5c\xb4\x8d\xa3\xbc\xb1\xd2\x94\xf2\x62\x04\xfe\x24\x16\x2d\xbb\x0a\x4c\x71\xee\xdc\xe5\x62\x90\x84\x31\x93\x89\xa0\xc2\xda\x52\x04\xd1\xa9\x8d\x6c\xbd\x91\x1f\xb5\x82\xf5\x9a\x0c\xae\xb2\xab\x43\x16\xd0\x09\x75\x38\x39\xb9\x26\xe9\xfa\xd7\x62\x75\x3e\x6a\x79\x24\xa4\x89\x8b\x38\x26\x24\xcb\xa4\x83\x31\x1a\xa5\x33\x3e\x95\x69\x61\x03\x29\x0c\xb2\x2f\x79\xcc\xfb\xf4\x3f\x62\xe0\xfd\x61\xca\x8b\xd4\x2d\xa2\x3b\x79\xa2\x57\xb3\xd0\xaf\x9c\xc8\x2a\x85\x4e\x0d\x04\x1b\x3e\x9e\x4e\xa0\xc7\x4c\xe3\x46\x14\xd7\x4e\x07\x71\x95\x43\xc7\x8d\xf0\xba\x76\x68\xc5\xca\x1b\x17\x8b\x88\x71\x9d\x37\x96\x03\xab\xe4\x96\x98\xac\x09\x5d\xac\x7e\xe2\x51\x48\x34\x31\x76\xc1\xf5\xaf\x3c\xe2\x6b\x1b\xe7\x50\x81\x3e\x36\x87\x61\xc4\xf3\x1c\xc4\x04\xdc\xa2\x77\x9c\xb8\x7a\xaa\x9c\xb3\x5b\xdd\x9d\x21\xeb\x4e\x87\xa0\x17\x43\xc5\xab\xf2\x86\xc7\x1c\x25\xac\x7e\xbe\x55\xc9\x12\xa9\xad\xbf\x0a\xdf\x7d\x70\xa1\xe7\xac\xf3\xbb\x45\xd4\xa8\xe5\x28\xa8\x6d\x74\x6e\xe6\x1d\x9b\x04\x3e\x62\x00\xc4\x6b\x26\x1f\x8d\xd2\xd9\x4e\xea\x15\xe4\xb6\xd5\xb1\xc8\x57\x51\xe2\xf3\xc3\x9b\xf3\x35\x54\x7c\x87\x6d\x35\x24\x94\x8e\x25\x46\xd1\x03\x8d\xed\xdc\x24\xec\x2e\x8e\xb1\x5b\x84\xae\xa8\xbf\xb2\x3d\x8c\x7c\x81\xef\xf0\xc2\x06\x8f\x45\x7f\xb6\x6d\x4d\xf8\xde\x36\xb3\xa3\x59\xfd\x1a\x64\x29\x85\x21\xd6\x72\x83\x42\x2d\xd7\xce\xd3\x72\x13\x6d\x52\x0c\xc3\x2b\xd3\x65\x2f\x17\xae\xe7\xc0\x30\xe7\x19\xc2\x87\x06\xa0\x03\x1d\x62\xf1\x9f\x11\x42\xa1\x46\x11\x35\x8d\x53\x47\xad\x00\x2e\x01\xd6\xe8\xfc\x09\xf4\x9a\xbf\x4f\xef\x8b\xef\x93\xaf\x92\xc3\x61\xa8\x86\x87\x31\x67\xb6\xef\x78\xf0\xdd\x2d\xf4\xb1\x7a\x43\x14\xda\xcf\x70\x02\xdd\x5b\x78\x8c\x50\x18\xd5\xd2\x93\x89\xe2\x43\x9e\xc2\xc4\xa1\xba\x38\x23\x22\xb9\x42\xd5\x55\xcc\x68\x06\x53\x5e\xa0\xf1\xb8\xa4\xea\xf9\x67\xe8\x63\x5a\xd7\x52\xcb\x13\xa4\x12\x8a\x8d\x92\xf0\x37\x7d\xd7\x8d\x92\xb0\x9b\x16\xdb\x77\x8d\x35\x98\x03\xd2\x98\x2c\x98\x5b\x4d\x37\xfa\x00\xef\x74\x63\x77\x97\x9a\x20\xf0\xa5\x30\xf0\xbc\x4b\x7b\x72\x8d\x29\xe9\x5e\x2e\x10\x24\xc6\x88\x38\xfa\x93\xc9\x78\x52\xe8\x27\x0d\x93\x84\x5c\x72\xa6\xc2\x2f\xd6\xfa\x38\x55\x89\x38\x1e\xff\x32\xd9\x37\xb0\x16\x35\x65\x7f\x1a\x52\x07\xb1\xa0\xc1\x3a\xd6\x4a\xd3\x8b\x2f\xd2\x9d\x8e\x01\x10\xd7\xd3\x98\x97\x8d\xce\x95\xbd\x40\xc1\x95\xeb\x79\x4f\x4f\x8f\x4b\xc3\x0c\xa1\xb3\x98\xc0\x34\x84\x0b\x85\x83\xf1\x5b\x08\x74\x0d\x60\x8f\xc2\x8b\xce\x18\x04\xa3\xf0\xc2\x8a\xe5\x7f\x11\x51\xc6\x06\x81\x01\xe0\xd2\x00\xc8\xc8\x4e\x20\xdd\x5f\x10\xb3\x86\xe0\x5f\x4b\xa0\x64\x5f\xb6\x20\xe8\xbd\x56\x6c\xf4\xf1\x83\xf0\xc6\xf6\xdc\xdf\x39\x3f\xc7\x9f\xc2\xb4\x4a\xfe\x12\x48\x95\x8e\xa2\x0d\xaa\xd9\x32\xa8\x6e\xf0\x6c\x7e\x3b\x49\x3f\x89\xfd\x76\xf8\x02\xf5\xdb\x51\x7f\x5b\xec\x6e\x73\xdc\x68\x12\xf8\x3e\x75\x7d\x2f\xc1\xd9\xc7\xe3\xd3\xb4\x53\x0f\x4c\x02\xdf\x19\x72\xb5\x60\x09\xe2\xbb\xf8\x0a\x56\xf2\x45\xaf\x1f\xbe\x36\x7c\x5c\x02\x76\x4f\x76\x00\xa6\x9c\x85\x20\xd5\x17\xe6\xfa\x5b\x2e\x01\xf5\x1d\xc6\x6e\x3f\xea\x6f\xfc\xf2\xf9\x97\xa1\xd4\x36\x79\x54\x1c\x40\xe1\x93\x64\x3a\xab\xcf\x5f\x89\x35\x2a\xc7\x91\x98\xcb\x01\x29\xeb\x15\xf0\xd7\xe5\x4a\x0c\x8b\x15\xdf\x1f\x3f\xfc\x75\xfa\xaf\x83\xdf\x7e\x58\xdd\x95\x58\xa6\x1b\x8b\x26\xf5\x44\x14\x2f\xf7\x2e\x5a\xfb\x35\x94\xa9\xaf\xe1\x61\x4c\x62\x64\xf8\xe7\xf0\x02\x10\x55\x63\x95\x3f\x48\x77\xa3\x33\xa6\x38\xc7\x1a\xa2\xd4\x44\xe2\x5e\x48\xb4\xd9\x43\x51\x21\x3c\x48\x02\xdb\x74\xbc\x0e\x05\xf7\xc7\x85\x1e\x13\x6c\x40\x24\xd4\x94\x5c\x19\xd7\xd4\x12\xc3\x07\xbb\x56\x46\xc3\x14\xb4\x49\x42\x8e\x77\xac\x40\x3e\xfd\x6e\x87\x47\xd4\x01\x15\x00\xae\xe4\xfb\x62\x5d\x3e\x4a\xa9\x58\xb4\xaf\x31\xf5\x69\x7b\x26\xad\xf6\x6b\xa6\x6b\xfd\x16\x38\xd5\xa8\x3d\x39\x15\x39\x58\x4b\x4d\x14\xd4\xc0\x5e\xf2\x5a\x92\x0f\x47\x0c\x28\xe3\x26\xf9\x9b\x98\xcd\x69\x55\xd1\x12\x91\x3b\xaf\x16\x5d\xb6\x28\xa7\x68\x7a\x68\x1e\xd9\x97\xb8\x5a\xfd\x00\xfd\x98\x78\x5b\x25\x9f\x9b\xc0\x01\xc9\xbe\x5f\xcf\xa6\xa1\x17\x22\x73\x0d\x44\x2b\x57\xb6\xd4\x9e\x90\xef\x97\x09\xe6\x1d\x8c\x41\x7c\xa6\xac\x35\x78\x94\x1b\xa6\xa2\x60\x11\x12\x90\x63\x96\x8c\x31\x87\x7e\xae\xd5\x0e\x26\x4b\x83\xf8\x84\x53\xf6\xbb\x9c\x95\xa1\x0b\x56\x2c\x61\x1d\x30\x76\x2b\xe4\x79\xee\x72\x91\x87\x0c\x78\xfd\xda\xd4\x92\xcd\x6c\x2f\xc5\x39\xa4\xab\x28\xf8\x2b\xfa\xfa\xe3\x19\xad\xcd\x5d\xaa\x85\xab\xfe\xda\xe6\xd7\x6e\xda\x3a\xc4\xa2\xc7\x24\x43\x30\x4d\x14\xad\x31\x2b\xe5\x26\x83\x35\x87\x52\x94\x10\x57\xf5\xad\xaf\x4f\x5a\xd2\x8b\x36\x17\x9c\xe9\x88\xa5\xd5\xd8\xa9\xc9\xfc\x6b\x20\xb3\xb4\x87\x52\xa9\x78\x95\x2d\x54\x32\x9a\xe7\xcf\xad\xdc\xc2\xca\x53\xcc\x88\xa0\xf8\x36\x10\xad\xd2\xc9\x8e\xce\x33\x5e\xe2\x32\xef\x74\x5f\xb3\xaf\x90\x9c\xa9\x56\x1e\x16\xa3\x36\x9b\x57\xc4\xbe\x58\x17\x7f\x09\x3c\x26\x0d\x2a\x16\x4a\x91\x3b\xb9\x26\xa5\x2a\x6a\xa7\xa6\xc9\x11\x3d\x73\x1e\xce\xc3\x10\xf8\xc5\xb6\xf4\xdc\x50\x1f\x12\xdb\xc2\xc0\x48\x34\xf1\xa5\xf6\x62\xee\x50\x1d\x22\x1f\xf7\x39\x0e\x26\x42\x61\xe0\x4b\x85\x2e\xfe\x4e\xbf\xa8\x8a\x16\x4a\xfe\x1d\xfb\x1a\x59\x62\x24\xc4\x88\xaa\xe6\xd0\xd1\xee\x66\xae\x17\x21\x8d\xed\xb9\xc4\xd4\xa4\xe1\x21\x01\x2d\x84\x57\x21\x8c\x66\x24\x64\x27\x7c\xd0\xec\xa9\xed\xfa\x66\x35\xa0\xe6\x95\xec\xcc\xd5\x0c\xad\x15\xcd\xc5\xf5\x1c\x5d\x65\xbc\x58\xb5\x6b\x4d\xec\xc4\xfb\xea\x3a\xaf\x52\x28\x52\xa1\x79\x97\x8b\x7d\x4c\xe4\xa1\x12\x4f\x6c\xbb\xfd\xd7\x02\x92\x20\x78\x1e\x52\x4d\x35\x36\xbe\x13\x01\x9d\xf8\x30\xc9\xa2\xe1\x16\x5e\x96\x51\x7d\x25\xa4\x55\x8b\x94\x4e\x72\x6c\x63\xb5\x99\x6d\x3d\x20\x8e\x85\xba\xa2\x7a\xa6\xc3\xb9\x1b\xe8\x37\x0b\x94\x18\x92\x57\x30\x0e\x8b\x1a\x7c\x6c\x1e\x2e\x06\xb5\x0e\xeb\x99\x87\x15\x96\xd3\x24\x2e\x66\xb9\x5a\x78\x93\xcf\x5b\x5c\xcd\xe0\x0a\x64\xfb\x20\x99\x25\x66\x80\x64\x56\x46\x93\x8e\x41\x7c\xfd\x22\x79\x76\x5c\x12\xc1\x54\x71\x4c\x49\x8c\x10\x51\x69\x45\x1b\x27\x57\x98\x15\x46\x6d\x45\xdf\x9f\x9e\xe8\xc5\x11\xbb\x18\x85\x13\x85\x01\xd0\x78\xcc\xb1\x1b\x4a\x46\x41\x98\x35\xee\x95\xc3\x31\x53\x0d\xc2\xf5\xaf\x8b\xa3\xca\x17\xc8\xf5\xa2\x3d\x27\xb8\xd9\x83\xb7\xd0\x47\x5c\xe7\x78\x9e\x40\xf2\xcf\xfd\xbf\xff\xe0\xf6\xd0\xbd\xda\xfa\x53\x68\xcb\xb1\x04\x43\x42\x22\x47\xf0\xfd\x83\xd9\xb4\x32\x45\xbb\xb1\x0a\x44\x9e\x11\xfd\xcd\xa4\x5e\x54\xe5\x58\xc9\xd8\xde\xc4\x77\x27\xb2\x13\xd4\xdd\x03\x92\x89\x5a\x39\x0c\x52\x58\xf7\xcc\xc3\x93\xe7\x1a\x8a\x1b\x66\x97\x2a\x04\x45\x7a\xc1\x74\x9a\xeb\x47\xa2\x37\x75\x43\xb1\xdf\x50\xff\x4d\x26\x36\x8f\x19\x62\x33\x78\xf2\x71\xfa\x3d\x88\xff\x34\x1f\x1d\x37\x44\x0f\x5f\x1e\xe6\x10\xb8\xd1\xb9\x7d\xeb\xfa\xd3\xa5\x02\x6d\x5e\x01\x34\x1f\x7f\x82\xbf\x97\xc6\x9b\x97\x9f\x8a\xdb\xa1\x20\xf0\xc9\x3a\xde\xdd\x8d\xff\xf6\x0d\x38\xa2\x82\xf5\x1b\x2c\x13\x3e\x46\x77\x2e\xde\x35\x7c\xe3\x71\x62\x47\x90\xb9\x23\x1c\x7d\x08\x47\xe8\x2d\xfd\x85\x9b\x1d\x72\x3f\xc5\x9b\xcb\x10\xda\xd7\x6f\xc8\xb3\xf4\x3c\xe1\xcf\x92\x5f\xf4\x59\x76\xd0\x88\xcf\x52\xb7\x9c\xa3\x0f\xf1\x2f\xb6\xed\xd0\xf7\x48\x1c\x27\x7d\x8f\x86\x74\xea\x4b\x38\x22\x4c\x79\x0b\xcd\x38\xc8\x12\x72\x98\xf9\x47\x76\x5a\x0e\x45\x34\x7d\x7a\xab\x6d\xed\x8c\x46\xd0\x24\xcc\xf8\xf1\xaa\x85\xe8\xde\xd3\xf4\x90\x78\xc6\x80\x56\xba\x95\x65\x7c\x52\x3e\xad\x47\x10\x8e\x5a\x1d\x80\xf0\x26\x0b\x8d\x16\xc4\x07\xae\x7a\x5b\xf6\x81\xc0\x8d\x94\xe2\xd4\x3b\xe8\x9b\x8c\xa1\xf1\xdb\xbe\x49\x99\x3f\x8e\x6c\x15\xfd\x82\xaa\x9b\xcb\x37\xa2\x43\x34\x15\x2d\x1b\x82\xc7\x1b\x18\x45\x76\xea\xac\xc0\xad\x16\x77\x0c\xf8\xe2\xa9\xc1\x7a\x80\x8c\x47\x9b\x4c\x63\x3a\x36\x36\x11\x02\x6c\xd2\x25\x03\x84\xab\x1e\xa2\xf2\xa1\x87\x77\x18\x61\xd1\xc4\xa7\xe3\xd3\x93\x74\xb0\xe3\x1d\x38\x7b\xac\x13\xc9\x3d\x7e\x05\x9f\xef\x2c\x88\x67\x98\x75\xda\xd1\x39\x7d\x13\x9f\xc3\xf0\x6d\xfa\x5c\x4d\x48\x45\x8f\x63\xba\x67\x99\x0c\xd3\x9d\xfa\xdd\xf0\x5e\x08\xf0\x37\x8d\x61\xc1\xeb\x8c\xe5\x28\x77\xb5\x5a\x59\x69\xc0\x4f\xbe\x4e\x3b\xdc\xf2\xe9\xa7\x7d\x93\x7f\x86\xd4\x57\x00\x94\x55\x15\x4e\x53\x32\x98\xfc\x2e\xc0\xd2\x2e\xc4\x9b\x32\x5f\x0e\x88\x0d\x8e\x36\x1c\xcb\x34\x98\xf2\xc3\x4c\x68\x2c\x8a\x23\x36\x83\x2b\x8d\xf8\x1f\x89\xab\x96\xf3\x58\x3c\x9f\x50\x9c\x5b\x23\x09\x13\x65\x21\xa2\xbf\x04\x0b\x1a\xc4\x19\xcd\xe1\xc4\xbd\x7a\x20\xba\x18\x56\xc1\x22\xfb\x16\x02\x2d\x08\x35\x7c\xe6\xe2\x0b\x6c\xc7\x32\xde\xd0\xa8\xcd\x11\x7c\x7a\xd2\x75\xfc\xdf\xb7\x64\x9c\x7c\x0c\xc6\x90\xfc\xe4\x54\x25\xe1\xaa\xcd\x02\xb8\x29\xe5\xb6\x03\x2b\xe8\x1f\x5e\xd0\x7f\xf7\xfe\xc3\x4f\x4a\xa1\x27\x23\xea\x50\x5b\x49\x6f\x2c\x89\x3b\xd4\x26\x3f\x06\xba\x67\xff\xde\xa0\x30\x41\x9c\x43\x43\xc3\x34\x93\x7c\x99\xce\x98\x29\xff\x76\xe8\xda\xed\x99\xeb\x38\x44\x9c\x42\xe1\x82\x97\x6a\xe2\xa5\x38\x87\x5a\xe7\x1b\x5a\x78\x13\xff\x75\x15\x60\x49\xd2\xfd\x1d\xe2\x1f\x73\xdb\x21\xae\x55\xad\xf3\xcd\x8d\x1d\x4e\x5d\x1f\xff\x95\x64\xb6\x54\x81\x39\xcc\x97\xbe\x58\x86\x0a\x37\xb3\x26\xe8\x5a\xb5\x05\x30\x81\x23\x94\x55\x8a\xa8\x13\x94\xba\x30\xe3\x0d\x8f\xc5\x12\xff\xa5\xc7\x57\xc2\xce\x28\xb9\x79\xd1\x1b\xbf\x15\x7f\x64\x13\x2a\x32\xdf\xe9\x28\xbf\xd3\x11\xbf\xd3\x19\x0f\xf1\xbc\xb2\xe3\x43\xe7\xdf\x14\x42\xd7\xdf\xc2\x96\x41\x9e\x59\x02\x7b\x04\x2f\x50\x1c\xbc\x60\xef\x90\x48\xf4\xb0\x65\x03\x5f\x8c\x58\xa0\x63\x5b\x96\x48\x9c\x95\xf0\xc0\x30\x2d\x0b\xc5\x4d\x4a\xe6\x67\x14\x38\xb9\xa7\x5f\x87\xf6\x94\xc4\x1c\x44\xef\x7d\xcc\x6e\x70\x82\xc5\xae\xe1\x8e\xb5\x21\x49\x87\x3f\x64\xff\xfe\x70\x56\xe1\xc1\xbc\x34\xa1\x4a\x02\x53\xac\x31\x7b\x41\x24\x2a\xcc\xf9\xd2\x92\xaa\x77\xe9\x9b\x05\x14\x58\x63\xf6\x10\xdd\xc3\xb8\xb4\xc0\x66\x8b\x59\x02\x52\xfd\x8b\x13\x8b\x30\x89\xf0\x3c\xfe\xec\xc2\x3b\xbc\x91\x27\x57\x21\xed\x8d\x32\xd1\xc8\x30\x80\x54\x4c\x4a\xaa\x16\x25\xb3\x05\x39\xf6\xa1\x29\x5f\x7c\x0b\x65\x09\xe6\xd2\xf5\x9d\x16\x34\x5a\xc6\x10\xa6\x66\x20\xbe\xb3\x34\x8c\x15\x03\xd3\x00\xe3\xdb\x4a\x04\x8a\x27\xb0\xa5\x7e\x8b\xc9\x61\xf2\xb0\x8c\x94\xd9\x25\x23\x9d\x8d\xf3\x25\x88\x54\xc5\x2f\x9f\x89\x2e\xdc\x91\x99\xc4\x93\xe1\xd7\x5a\xdc\x30\x02\xe8\xe3\xc4\xe6\x31\x87\x7e\x6a\x5a\x20\x7d\x83\x50\xb2\x85\xa8\x08\x23\xd6\x88\x43\x54\x30\x16\xcd\x0b\x2c\x5c\x2c\xd7\x9d\x6f\xbc\xd1\xfb\xdd\x23\x7d\x67\x24\x96\xe2\x7a\x7a\x7a\x5c\xd2\xd3\x76\x11\xe9\xc6\xee\x2e\x8c\xe5\x7b\x32\xf7\x29\x11\x1e\x09\xd2\xb5\xea\x26\xde\x7b\x73\x13\xe1\x28\x3d\x14\x42\x3e\x1b\x0b\x14\x02\xc2\x78\x3b\xbe\xf1\x18\xb6\xfc\x1c\x29\x9e\x8a\xef\x58\x5b\xe5\x24\xff\x95\xc9\x54\xc0\x36\x80\xe2\x90\x40\x78\xcc\x27\x8b\x30\x84\x3e\x22\x12\x1e\x9d\xb9\x60\x94\xb9\xd1\x32\xde\x04\xbc\x92\x5a\xb8\xf0\xcd\x68\x32\x83\xf8\x40\x6d\x51\xbf\x0a\x0d\x76\x94\xf5\xf0\xd4\x10\x02\x81\x54\x21\xa1\x8d\x81\x87\x41\x26\x54\x62\x1d\xc9\x8a\x46\x69\x84\x05\xcf\x98\x69\x18\x0b\x08\x14\xa4\x9b\x5a\x66\xcc\x5c\x52\x4d\x8b\xd0\x9c\x0f\xd9\xfd\xa6\xd2\x23\x4d\x18\x79\xde\x90\x39\x9e\xb4\x92\x82\xba\xc8\xa2\x59\x7c\x7a\xf7\xf9\xfc\xfd\xf9\x97\x24\xc0\x8c\x89\xcf\x24\x12\x0e\x7c\x7e\xf7\xe3\xc7\x9f\xdf\x25\x37\x63\x33\xc2\x72\xc9\xf4\x93\xfc\xa8\x38\x4a\x6d\xa7\x28\x30\x2e\x69\x2b\xe7\x1b\xec\x81\xe2\xaf\xb0\x86\x78\xb8\xdc\xf9\xbb\x2f\xe9\xd0\xbc\xa4\xa9\xb2\xc7\xa4\x10\x3d\xe5\x23\x55\x03\xef\x18\x17\xac\x10\x78\xa7\xe2\xa3\xe7\x0a\xbc\xbb\xde\xf3\xdf\xff\xfc\xde\xcd\xa9\x3b\xb2\xce\xc0\xbb\x17\x12\x62\x27\x07\xaa\x49\x65\xfc\x8e\x72\x03\xd5\x78\x9a\x51\x9c\xec\x04\x84\x04\x25\x21\xef\x69\x40\xc3\x8f\x52\xc0\xd0\xb8\x5b\x71\xa2\x52\x2a\xe8\x48\xac\x35\xd6\x51\x84\xb6\x59\x63\x75\x69\x41\x55\x23\x89\xd3\x1b\x2f\xfe\x6c\x04\x8f\x14\xed\xd7\xa5\xc9\x7e\x42\xd0\x9f\xb8\x83\x80\x64\xc7\x58\x25\xfc\xad\xc8\x51\x59\x29\xac\x24\xe9\x45\x6d\x90\x8e\xd8\x0c\x9e\xc9\x00\x64\x49\x25\xdf\xb2\x49\x2e\x8a\xb8\x3a\xa4\x11\x57\x31\x67\xe4\x13\x3d\x15\x37\x55\x7b\x82\xad\x95\x82\x17\x15\x1d\x52\x07\x2f\x66\xe3\x4d\x57\x8f\xfd\x11\xf8\x66\x13\xd3\x54\x69\x7a\x5e\x67\x26\x77\xf9\x34\x0a\xda\xe9\x17\x05\xed\xf0\xcf\x82\x14\x00\xbf\x00\x1e\x5a\x25\x5e\x27\x77\x02\x14\xb1\x3b\x6a\x7a\x0a\x15\x18\x57\x8f\xf1\x59\x73\xfc\x98\x32\xb6\xe7\x2b\xd1\xa0\x11\x3a\xec\x0a\xe1\x42\x0c\xcd\x43\x0e\x17\x4a\xf2\x82\xf3\xcb\x36\x2a\x43\x85\xce\xe9\xd7\xf2\x43\x85\x7e\x09\x16\x61\x2a\x86\xbd\x27\x46\xfd\x0e\x08\x22\x90\x00\xc7\x4a\x4a\x2c\x5d\x42\xe8\x6b\xcc\xd3\x66\xae\x08\xa0\xbd\xf9\x80\xca\x44\x82\xae\xbf\xa7\x56\x63\xbd\x14\x17\x59\x83\x9a\xfc\x53\xb0\x5b\x14\x0d\xa0\x52\xb4\xdd\xfa\x62\xed\x36\xc5\xdd\x25\xc1\x70\xcf\xc3\xdd\x91\x7d\x5b\xc8\xdb\x2b\xc6\xb4\x3d\x6f\xa8\x70\xe1\x91\xc4\x24\xf5\xd5\x0e\xa4\xb2\x0d\xf8\xa5\x1d\x2e\xe5\xe3\x69\x92\xa3\xbe\xda\x62\xa2\xf1\x9d\xf5\xe2\x4a\xf3\x17\x13\x71\x49\x16\xc5\x94\x4a\x88\x75\xb4\xed\x88\xc4\x8a\x68\x0f\x75\x97\x99\x29\xb1\xa3\x18\xa1\xdc\x67\x74\xde\x17\x32\x5b\xa2\x04\xc5\x3a\x75\x87\x17\x45\x5f\x19\x8b\xbc\x03\xf4\xcb\x50\xf6\xb8\x59\x99\xd6\x22\xa1\x5c\x65\x17\xe8\x43\xa1\x44\x53\x4e\xa7\x6a\x64\x72\x3c\xc3\xe1\x59\x29\xa4\xb6\x01\xb6\x43\x51\x44\xed\xb3\xc4\xca\xc6\x81\x67\x0c\xf6\x20\x46\x33\x48\x05\xbe\x0a\xe8\x06\x3c\x80\x96\x69\x50\x29\x23\x06\x8d\x6b\x2d\x08\x89\x95\x42\x67\x05\xad\x8b\x87\xca\xe6\xc5\xe5\xae\x10\x23\x2b\x1a\xdb\x36\x15\x23\x5b\x86\x79\x90\x8d\x3f\x4d\x61\x1e\x28\x5c\x90\xeb\x0a\xad\x8d\xfd\x2d\xea\x18\x18\xb4\xbb\xab\x34\xf2\xcf\x43\x12\xd5\x79\x4a\x3f\xb3\xbb\x9b\xbe\xd2\xca\x4b\x5c\x87\x99\x78\x58\x66\x47\xd6\x9b\x84\xa2\x12\xc2\xb6\x27\x81\x7f\xe5\x86\x37\x64\x2f\xdf\x8e\xd0\x8b\xdf\x4e\xee\x7e\xf8\xfe\x7f\x4e\x3f\x57\x0b\xbd\x50\x57\x50\xd4\x63\x8c\xda\xce\x38\x1f\x77\x9c\xed\xc2\x09\xaa\x67\x52\x5b\x44\x50\x7f\x06\x64\x39\x79\xee\xe4\x5a\xcf\xd4\x8f\xe8\x64\xcf\x1a\x4b\x05\x15\xca\xfb\x75\x42\xa9\xad\x9d\x92\xcf\xd7\xec\x13\x85\xef\xa8\xda\xa7\x5e\x85\x3e\x9d\x24\x5f\xac\x8c\xc7\xce\xdc\x63\x78\x6b\xa2\x8e\x35\x31\xcc\x96\x77\xb1\xc6\x46\x92\xc7\x86\xeb\x2c\x88\xc6\x7a\x2a\xef\x02\x59\x34\x94\xda\x15\xcf\x48\xfe\xd3\x2d\x0c\x1f\xda\x93\x99\xed\x56\x87\x0a\x4f\xbf\x47\xe2\xbd\x8b\xc1\x29\xeb\x42\x53\x12\xef\x63\x0a\x9d\x32\x8d\x4d\xb9\x23\x63\x53\xee\xee\x16\x22\x53\xaa\xd0\x0e\x73\xf0\x2f\x5f\x61\x1c\xf3\x60\x1c\x9b\x81\x38\x46\xf3\x10\xda\xce\x2b\x7e\xe3\x6a\xf8\x8d\x97\xff\x7d\xf4\xb7\x83\x5f\xec\x9f\x0b\xab\xf8\x3b\x90\x78\x8a\x78\x4d\x7f\xd5\x45\xf6\x2b\x9a\x7b\x2e\xa2\x90\x8f\x34\x15\x8a\xbf\x43\x37\x01\xf2\xd8\x67\x52\xb5\x2a\xf5\x3e\x7d\x3a\xf7\xb6\xf8\x9f\x9c\x48\xc3\x7d\xae\xea\x1c\x34\x08\x28\x8c\xd0\x83\x97\xd6\xd7\xf4\x54\x65\xd6\x01\xb0\xfa\x44\xeb\x76\x84\x62\x64\x75\xb0\xef\x2c\xa0\xf8\x08\x79\xe4\x51\xd0\xf1\x82\xb9\x3d\x71\xd1\xc3\x50\xb3\xb4\x1d\xf7\x06\x6f\x99\xb6\x8f\xbe\x49\xf2\xef\xf0\xbf\x4b\x7b\x72\x3d\x0d\x83\x85\xef\xb4\x27\x81\x17\x84\x43\xed\xd6\x0e\x5b\xed\xf6\xdd\xcc\x45\xd0\xf8\x46\x7c\x92\x2c\x02\x7e\xdf\x81\x93\x20\x6c\xd3\x6b\x6d\xab\xd3\x51\x3c\xda\x0e\x6d\xc7\x5d\x44\xf2\x1b\xf4\x5a\xbb\xab\x7e\x43\xea\xc2\x34\xb4\x1f\xda\x83\xcc\x83\xf7\xed\x68\x66\x3b\xc1\x9d\xfc\x5d\xe8\xc1\x5b\xaa\x31\xef\x4b\x6f\x2c\xab\x56\xcb\x65\xe4\x84\xce\x74\xf5\x39\x49\x3e\x52\x30\x27\x15\xfb\x98\x30\x57\x69\xb1\xb7\x30\x58\x20\x98\x57\x3d\x12\x3f\x3d\x83\x36\x2b\x60\x99\x5b\x27\x77\xd6\xcd\xb1\x35\x08\x43\x1c\x24\x15\x89\xa4\xca\xd9\xda\x67\xdc\x81\xb0\x6e\xcd\x46\xfe\x10\xbc\x49\x59\x47\x78\x29\x01\xe1\xc5\x9f\x22\xa8\x91\x61\x86\x11\xde\x8e\x5d\x1f\xc1\x70\x02\xf1\x36\x1e\xda\x57\x57\xee\x44\x5b\x44\xae\x3f\xd5\xce\x0e\xb4\x09\xd1\x9e\x5c\x5b\x8b\x16\x93\x99\x66\x47\xda\xdc\x46\x33\x6d\x1e\xc2\x2b\xf7\x1e\x46\x5a\x10\x6a\x33\x84\xe6\x1a\x25\x49\x64\xe6\x98\x49\x72\x54\xf8\xb2\x8a\xbd\xe2\xb0\x92\x29\xe2\xe3\x62\x35\xc3\x72\xb6\x88\xc3\x1c\x0f\x08\x87\x5a\xb5\x32\x2e\x8d\x46\x70\x24\x94\x5b\xda\x13\x12\xdc\x20\x80\xe4\x32\xaf\x22\x11\x7e\x99\xc8\xdb\x15\x3d\x7f\x12\x92\x06\x7b\x4a\xe9\xa5\x53\x40\x29\x76\xd2\x16\xd5\x62\x64\xff\x1c\x36\xe7\x27\xc3\xa6\x38\xfd\x9c\x7f\x7f\x93\x8c\x1c\x37\xa2\xd9\x21\xd4\x88\x7c\x3e\x5d\x84\xd0\xa1\xf2\x88\xe7\x22\xcd\xf5\x27\xc1\x0d\x66\xe6\x10\xfe\x6b\x01\x23\x14\x69\xf6\x24\x0c\xa2\x48\x73\xdc\xab\x2b\x18\x42\x1f\x69\xbc\x24\x3f\xe6\xe6\x68\x71\x19\x41\x14\x69\xc1\x95\x66\x6b\x78\x11\x78\x90\xdf\x7f\x31\xcc\x2d\x04\x61\xd0\x9a\xfc\x74\xbf\x51\x97\x9f\x6f\xca\xf7\x9c\x7d\x2a\xb1\xbe\x75\xb4\x1e\xd6\xb7\x8e\xd6\xc2\xfa\x21\x8c\x02\xef\x76\x73\xac\xff\x99\x7f\x7f\x93\xac\x1f\x37\x42\x58\x7f\x11\x51\xa6\xa7\xc2\xa9\x76\x37\x73\x27\xb3\x58\xfa\xe6\xec\xcc\xca\xdf\x45\xb3\x60\xe1\x39\x5a\x64\x23\x37\xba\x7a\xd0\x62\x3d\x2f\x5e\x22\x2f\x9d\xd3\xd3\x91\x4c\x2b\xee\xf0\x8c\xd0\xd5\x38\xfd\x70\x4d\x9c\x7e\xd8\x94\xd3\xa3\xdb\x29\xa7\x30\xc9\xaf\xd1\x81\x6e\x75\x3a\xff\x9b\x5f\xa3\xa9\x36\xe2\xc5\x01\xd0\x6f\x5d\x78\xf7\x5d\x70\x2f\x9b\x69\xf4\x8e\xd6\x61\x45\x6b\xba\xd6\x18\xe8\xfc\xef\x8e\x6c\xb3\xd1\xe7\x21\xc4\x9c\x05\x8f\xa3\x39\x9c\xa0\xcf\x58\x7c\x24\x10\x0a\x7e\xbe\xfc\xbe\x99\xc3\x99\x7e\x3b\x8b\x57\x25\x0c\xe9\x3f\x68\xcc\x1e\x11\x2f\xdf\x9f\xa6\x1d\x24\x1b\x69\xe6\x03\xbc\x47\x1f\x02\x07\xae\xab\x31\xb9\x70\x6e\x27\xf9\x0a\x56\xe7\x1e\x62\x3e\xdc\x07\xf8\x8a\x10\x25\x64\x89\x77\x1e\x74\x45\xfc\x10\xb9\xc3\xf8\x63\x3c\xe6\xc9\xf0\x42\xd8\x4b\xc6\x8a\xb7\x12\x1d\x73\xfc\x4d\x58\xc0\x64\x7c\x99\x2d\x85\x9b\x34\x08\xf4\xbf\x94\x10\x99\x70\xb6\x18\x41\x94\xc6\x70\x53\x13\xee\x20\x21\x1c\xfb\xf5\xa0\xf3\xb4\x7e\x01\x9d\xb0\xf0\x33\x29\x8a\x0f\xa4\x4f\xe2\x5f\x74\x65\x8e\xb3\x91\x93\xe2\x2b\xea\x49\x1a\x94\x4c\x12\xed\x69\x79\x86\x9c\x75\xa0\x76\x1f\xe5\x78\x95\x06\xea\xcb\x7d\x49\x07\x2c\x5d\xd7\x6a\x19\x64\x6d\x0b\xee\x70\xe5\x65\x5d\x3c\x02\xda\x02\x11\x3a\xa3\x8d\x6f\x1e\x9d\xe7\xdb\x3c\xba\xb9\x9b\x47\x37\x97\x2f\xbb\x75\x37\x8f\xc3\x64\x29\xb7\xd9\x90\xad\x95\xf6\x91\xd2\x1d\x24\x16\x5a\x87\x09\xbb\xf0\x5a\xc0\xf1\x76\x92\x47\x76\x51\x6d\xe2\xe7\x26\x71\x30\xce\xb1\xee\xec\x23\xe2\x6e\x90\xe1\x20\xd9\xd7\xfe\x1e\x53\xa5\xb3\xea\xe6\xd4\x93\x76\x92\xde\x1a\x36\xa7\x23\xf1\x8b\x47\x15\xb6\xa6\xa3\x3c\x0e\x38\x5a\xd7\xc6\xd4\x53\x6f\x35\x5d\xf5\xe5\x0e\xa6\x9d\xea\xce\x91\xf2\xea\x61\x25\x83\x50\x22\x44\x09\xea\x42\xdb\xf5\x3d\x88\xa2\x72\xa1\xc9\xea\x28\x65\xa5\xaf\x2d\x09\x89\x45\x58\x06\x34\xa8\x96\x0e\x84\xb1\xff\x7e\xc1\x06\xb3\xb6\x6d\xac\xa8\x91\x06\x72\x02\x9f\xa0\x89\x1b\x4e\x3c\x18\xab\x12\x3a\xd0\xbb\xe6\x80\xff\x9c\x60\x6e\x1f\xf0\x79\x9a\x3c\xe8\x19\x26\x3e\xc8\x63\xe2\x83\x42\x26\xae\xc2\xbe\xea\x63\x55\x79\x71\xff\xab\x1d\x9e\x65\xc7\x5a\xef\xab\x1d\x6b\xab\x8b\xc4\x39\x72\xe3\x8a\x1c\x91\x2b\x70\x15\xcb\x5b\x55\x38\x42\x2d\x3a\xf5\x95\x57\x7b\xf5\xb7\xa7\xd8\x12\xf3\xd2\xb7\xa7\xd4\xe9\x6c\x7d\x8d\xed\xa9\xa8\x91\xe7\xdb\x9e\x72\xa5\xac\x62\x21\xab\x0a\x33\xaa\x4f\x51\xf5\xd1\x5a\xcb\x77\x32\x00\x1d\x99\xd5\x92\x12\xc6\x12\xfa\xf5\x80\x60\xb7\xeb\x1a\x05\x98\xa2\xc1\x9c\xa9\x51\x74\xc9\xaa\x93\xbf\x35\x1f\x32\x9e\xed\xe3\x6e\xde\x7f\xe3\xc1\x2b\xc4\x2f\xf5\xe8\x25\x5d\xc9\xcc\x4a\xe3\x5b\xbe\x65\x4d\x90\x18\xe3\xfe\x0e\x78\x90\xdf\xc4\xbd\xb1\x49\x0c\xc4\x45\x37\xc6\x79\xfb\xdf\x65\xa6\x99\x26\xe0\x24\x98\xa8\x40\xb7\x1d\x47\x2c\x94\xeb\x04\x37\x6d\xa1\xa0\xae\x47\xd2\x14\x23\x64\x87\x28\x6a\xdf\xb9\xc4\xd2\x43\xc2\xf5\xda\x28\xb4\x27\xd7\x6d\x1e\x4b\x07\x6d\x92\x64\x49\x02\xf4\x58\x1c\x5d\x74\x3b\x6d\x4f\x16\x21\x21\x3f\xba\x83\xd0\x6f\xa3\x40\x8c\x90\x89\xa0\xc7\xe0\x72\x75\x12\xfb\xa1\xc7\x5e\x31\xd1\x6f\x00\xf4\x28\x08\x51\xfb\xf2\x41\x17\x4d\xaa\x82\x89\x89\xdb\x9f\xe8\x54\x7f\xe1\xfc\xc0\x84\x51\xa1\xc8\xb5\x4e\x5c\xa7\xa4\x1e\xdc\xa9\x1b\xcd\x3d\xfb\x01\x3a\xb5\xe2\x73\x54\x21\x2e\xab\xd6\x4b\x7a\x2c\x2d\xf3\xeb\x4e\xae\x73\x01\x46\xe8\x4d\xdd\x20\xb8\x26\xe7\x24\xc6\x23\x2a\x84\x37\xa1\x8f\xe8\x06\x98\x78\x76\x14\xe1\xc1\x46\x43\x06\x5e\x9c\x8c\x4c\x1f\x27\xb7\xbf\x73\x7d\xc7\xf5\xa7\x11\x0b\xe4\xbc\xc5\xdb\x8d\x40\xbf\xe1\x8e\x05\xf8\x3c\xbe\x77\x86\xba\x0e\xee\x87\x1d\xf0\x30\xec\x00\x46\x76\x7c\x49\x9a\x99\x8d\x23\x98\xdc\x32\x90\x0d\x7e\x27\x07\xd7\x6d\xcd\xe5\x84\xd3\xad\x96\x81\x7f\x30\xe0\x0f\x15\xc2\xc7\x94\x23\x7c\x24\x5c\x6a\xec\x10\x78\xbf\x56\x0a\x02\x24\x79\x80\xe3\x7f\xc4\x57\xde\x42\xdc\x83\x4f\x36\x9a\x9d\x25\xa3\x1e\x42\x93\x72\x8c\xe9\x50\x80\x16\x02\xdd\xb9\x3a\xe6\x87\x38\x22\x8e\xce\x91\x69\x7c\x73\x50\x7a\x79\x53\x20\xdf\x4f\x8d\x9c\xa1\xd5\xc4\x1b\x4d\x06\xe3\x91\x2c\x05\xf3\x03\x09\xd9\x00\x59\x0c\x33\x82\xce\x37\x85\x28\x76\x0e\x1a\xad\x34\x62\xa3\xf8\x05\x83\xc2\x82\x90\xfd\xad\x7a\x53\x94\x11\x79\x53\xc4\x65\x5f\xd6\x0e\x90\x40\x79\x48\xf4\xd6\x0e\x34\xaf\x5c\xdf\x69\xb5\xb2\xc8\x7a\xfa\x9e\x3e\x12\x51\x46\x20\xd0\x4f\xe1\x15\x01\x6d\x08\x7c\x93\x54\xbd\x30\x7f\xf8\xf2\xe5\x93\x89\x27\xf3\x13\x71\xc8\xeb\x78\x24\xbb\xbb\x05\x1f\xd5\x12\x04\x36\x33\xf9\x1a\xe6\x33\x8a\x82\x02\xc2\x91\xa0\x25\x4a\xb8\x37\x74\x28\x42\xc0\x02\xd0\x4d\xdd\x50\x3c\x42\xb6\xae\xb9\x3d\xc9\x7d\x20\xa9\x66\x6a\x00\x7b\x24\x88\x7d\x2b\xb6\x27\x60\x6e\x72\x28\x10\x81\xfe\x17\xf6\xf8\xad\x3f\xb2\x87\xf9\x0f\x84\x63\x12\x95\x17\x0a\x88\xc2\x3e\x07\x37\x79\x64\x61\xcf\xc3\x9d\x0e\x78\x7f\x3a\xa4\xc7\x61\x59\x8f\x0d\x40\xce\xac\x9c\xe1\x24\xf4\x1f\x3e\x92\xe9\x1c\x3e\xe2\xf9\x1c\x3e\x26\x13\x3a\xd4\xf7\x08\xf4\x04\x97\x50\x87\xfe\xf2\x0d\xa4\x95\xb1\x09\xe7\x51\x4c\x50\xc2\x7c\x46\x2b\x00\x39\x0d\xc9\x6c\x67\xc4\x15\xae\x21\xe1\x7b\x7e\x70\xe7\xb0\xfe\x23\xa1\x0d\xf8\x42\x60\x11\xa2\x65\xd1\x7a\x8b\x3d\x92\x86\x7a\xb6\x81\x92\x49\xd4\x4b\x86\xb5\xa7\x67\xeb\xcc\x65\x97\xee\x34\xb4\xe7\xb3\x4c\xf7\x45\x39\x85\x2e\x6e\xf3\x62\xac\x5a\xc3\x31\x4a\x0c\x3b\xa5\x4d\xf2\xbd\x96\x21\xc1\x6c\xc6\x5f\x33\xaf\x82\xf0\x9d\x3d\x99\xb5\xa4\xe3\x01\x99\x54\x7b\x56\xdc\xf5\x8d\x47\xb2\xe1\x9f\xb9\xfe\x75\x0b\x99\xef\x4f\x81\x6f\xf2\xf9\x24\x98\x8a\x06\xdb\x18\x58\x27\x95\xdf\x4f\x7d\x01\x49\x5f\x00\x64\x22\xf9\x59\x9f\x25\x44\x2c\x04\x10\x6f\xab\x3d\x9f\xe5\x51\x81\xc4\x93\xc6\x48\x4f\xc9\x7b\x4f\x4f\x3b\xa5\xb0\x58\xc9\xd3\x71\x79\xf8\xc7\xe5\x9b\x04\x94\x52\x78\x00\xf8\x23\x44\x09\xda\xd2\x87\xba\x61\x46\x33\xf7\x0a\xb5\x0c\x10\x8e\x2e\xd0\x18\xd8\xa3\x8b\xb1\x44\x7a\xd2\x65\x4e\x16\x4c\x03\xe8\xe0\x91\xb7\xa4\x13\x1a\x04\xc6\x63\x48\x57\x06\x32\x5d\xc7\x00\x36\xfd\xa1\xc7\xbd\x0c\x48\xd4\xec\x7b\x07\xe8\x7f\x49\xb6\x91\xc0\x44\x01\xee\x31\x80\xf9\xcd\x98\xae\x93\x8e\x79\xa6\x7b\x02\x34\x5d\x47\x31\x8e\x37\xfe\xce\x68\x14\xec\xee\x26\xb1\x97\x14\x3c\x4f\xfa\x1d\xec\xee\xb6\x58\x7f\xa1\xba\xbf\x48\xd5\x5f\xc4\xfa\xcb\x19\xe7\x91\xc4\x2d\x0e\x43\xf3\xc6\x9e\x2b\x0f\x91\x64\x96\x4e\xce\xcf\x4d\x18\x4d\xec\x39\x64\xa2\x05\x20\xf1\x75\x43\xbb\xc9\xbb\x04\xe8\x86\xc2\x37\x66\x00\x98\x45\xd9\xa7\xfa\x26\xa2\x89\x92\x8a\x19\x5c\x5d\x45\x10\xfd\x1d\x37\x80\x5b\x62\xf8\x90\x1b\x6c\xea\x07\xd2\x02\x6e\x2b\x2d\x1e\xe5\x48\x9f\xb5\x60\xad\xa0\x52\x36\x82\x89\x60\xb6\x43\x24\x44\x2a\xff\x40\x67\x77\xb7\x05\xd3\xe8\x5f\x90\xac\x3e\x27\x98\x10\x91\xab\x65\x80\x47\x12\x51\x30\x4c\xe1\x9d\x05\x37\x14\xeb\x2a\x42\xad\xff\x73\x41\x54\x85\xff\x35\xd2\x69\xe4\xc2\xf8\xff\x00\x64\x52\x78\x1b\xe3\xe9\x49\x16\x58\xb9\x32\xbe\x63\xc9\xe8\x8e\xf2\xe6\xa1\x93\x89\x07\x3e\xeb\x0c\xeb\x7d\xd4\x22\x1e\x17\xba\x12\xf4\x64\x54\x86\x91\xb7\x97\xa5\x81\xcd\xc0\xe3\x4d\xb0\x88\x20\xd6\x73\x14\xa8\xd2\x5a\x82\x89\x17\xcd\x82\x3b\xb2\xd1\x32\x31\x14\x82\x0b\x34\x36\x96\x80\xbe\xbe\x40\xc5\x6f\xcf\x5c\x07\x2a\xde\x5e\x52\x39\x5b\x42\xb7\x8d\x1b\x92\x51\x94\xe9\x3e\x86\x58\xec\xb7\x0b\xa3\xd6\xe3\xfd\x10\x9a\x13\xcf\x85\x3e\xfa\x1f\xf0\x10\xff\xfd\x4b\xbb\x17\xab\x59\x90\x11\x9d\x9c\x31\x11\x44\x66\xe2\x30\x4a\xeb\x5f\x9d\xa5\xb1\x04\x71\x37\x45\xce\x4b\xe7\x5a\xa5\x54\xea\x1d\xcb\x58\x82\x14\x43\x24\x85\x54\xcd\x09\x45\x65\xa3\x8b\x02\x9f\xa5\x71\x31\xd6\x96\xee\x3a\xba\xf1\x06\x65\x37\xfd\xb7\x99\x4a\xa9\x6a\x26\x61\xf8\x68\x29\x3e\x19\xe6\xbf\xad\x42\x57\x13\xde\x46\x8d\xea\x91\x2a\x73\x55\xf2\x73\xc4\xe2\xa4\x01\x24\x22\x41\xb3\x00\xff\x6b\xf8\x10\xb1\xec\x0a\x76\x65\x0a\xd1\xc7\x3b\x9f\x87\xfc\xd3\x8c\x84\x88\x43\xba\x16\x3d\x83\x3f\x83\xb5\xc3\x70\x14\x9a\x57\xae\x87\x60\x28\xaf\x05\xc6\xa3\xca\x4f\x9c\xc2\x68\x12\xba\x73\x14\xd0\xc4\x06\x13\xfa\x8b\x1b\x9a\x33\x81\xf9\x15\xf8\xe4\xc0\x60\xac\xec\x83\x90\xe3\xb3\x6b\xfe\x52\x4e\xc9\x49\x92\x1d\xac\x6f\xfc\xff\x4c\x03\xc7\x92\x64\x87\x47\x9a\x98\xe0\x2f\x3c\x6f\x47\x40\x8f\xf5\x45\xf4\x58\x7f\x3c\x7c\x5c\xbe\xf1\xff\x77\xf7\x2d\x62\x64\x69\xd9\x06\x9e\x4d\xf5\x2a\x27\x9d\x06\x36\x59\x61\x86\x31\x2c\x19\x61\xf4\x56\x95\x5c\x81\x17\x18\x04\x65\xaf\xb6\x6c\xc3\x18\x0a\x7d\xca\xe9\x50\x5e\xf6\x06\x2a\x6b\xa0\x65\x13\x9e\x34\x8c\x44\x6e\x96\x73\x4e\x80\x9f\x9c\x2c\x9a\xeb\x6b\x50\x39\x18\xda\x16\x4b\x0f\xf1\x41\x32\x9b\x58\xa5\xe0\x91\xab\xfc\xf7\x5d\xe8\x22\xf6\xf7\xd2\x18\xc2\x0b\x34\x1e\xf9\x40\x68\xd7\x96\x0a\x58\x57\xcc\xb6\x82\x39\x89\x50\x42\xb2\xd5\x48\x4e\xb6\x7a\x7a\xda\x69\x15\xa6\x5b\xf1\x0c\x2a\xca\x5f\x17\x63\x10\x8e\x76\x3a\xc0\x1e\xed\x58\x20\xe0\x49\x2f\x28\x7c\x88\x79\x30\x02\xde\x08\x2a\x52\x7a\xbe\xd9\x69\x85\xa3\x56\x34\xf2\x4c\x1f\xde\xa3\x96\x61\x98\x4e\xe0\x43\x03\xeb\x63\x54\x2e\x8a\x4c\x42\x38\x03\xec\xa0\xa7\x27\x9f\xf1\x2e\x56\xe2\x8c\x6f\x70\x93\xc6\x37\x0c\x28\xd2\x35\x1e\x6d\xdc\x85\x60\xe4\x2e\xaf\x5c\xdf\xf6\xbc\x07\x02\x2a\x19\x3e\x3d\xd1\xbc\x20\xcf\xa4\x5d\x7e\x7a\xe2\x7f\xb5\x8c\xf8\x49\xf7\xaa\x65\x33\x34\xf2\x60\x99\xac\x27\x42\xa9\xe6\x19\x64\xc1\x1f\x26\x83\x2c\xe0\x19\x64\x32\xbd\xaa\xe7\x90\x11\x13\xd0\x62\x82\x16\x21\x7c\xbe\x44\xb2\x60\x0b\x13\xc9\x04\x4d\x7f\x04\x25\x65\x9b\xfd\x24\xca\x23\xfd\x3b\xb6\x7b\xd1\x9f\xc7\xf8\xd8\xf1\x6d\x04\x99\x4d\x20\x12\xb3\xd1\xa2\xd1\xba\xa0\xc5\x1f\x97\x00\x65\xdf\xb5\x84\x87\xac\x31\x33\xbe\xbc\x91\x8f\x3d\x32\x50\x7c\x54\x66\x8f\x48\xa1\xd8\x94\x89\x39\x07\x8b\x29\x44\x52\xf3\x46\xaa\x52\x0e\x99\xe6\xbb\xca\xae\x77\xc5\xae\x77\xc7\xc3\x04\x65\x45\x05\xd0\x2e\x23\xb1\xcb\x23\x48\xcc\x69\x17\x68\x8c\xc5\x76\xbc\x53\x3f\xbe\x3f\x1d\x0a\x7a\x9c\x64\xb7\xf2\xa5\x5f\x21\xb7\x10\x81\x93\x99\xeb\x39\x21\xf4\x87\x17\x63\x3c\xdf\x17\x68\xbc\x04\xae\x6a\x8c\x20\x1c\xc1\xac\xc6\xc6\xc0\xe5\x5b\x17\x08\xc0\x71\x9e\x42\xa7\x41\xae\xad\xe2\x2e\x84\x10\x73\x0f\x24\xc8\xd2\xa0\x6b\x90\x6a\xf5\x9d\x31\x88\x48\xd1\x7a\xe0\x8d\x2e\xf4\xc4\x72\xa3\x03\x3d\x36\xd8\xe8\x80\x67\x2d\xe1\xbf\x48\xba\x84\x1e\xf3\x76\x94\xb1\x3c\x26\xc5\xf1\x21\x56\x7b\x05\x4c\x79\xba\x83\x79\x58\x42\x00\x21\xd5\x67\xd9\xad\x47\x3c\xd5\x43\x9f\x2b\x71\xc3\x70\xb9\x7c\x93\xc3\xca\xee\x9b\x14\xcb\x2b\x86\x1d\x11\x45\x86\x2b\xdf\x86\x9a\x7a\x78\x55\xe3\x31\x0a\x24\x8a\xad\x10\x09\xad\x00\x8a\xad\x15\xe2\x55\xbf\xe5\xb7\x1e\x97\x00\x1a\xe0\x71\x09\xc8\xf4\x67\x8d\x9a\xf4\xf3\x7c\xc2\xcd\xdf\x02\xd7\x27\xad\x10\xf5\x83\x8d\x8f\xad\x62\x99\x7a\xe2\x28\x68\xd2\x16\x99\x3d\x67\x21\x15\xf0\x80\x82\x14\x02\x63\x6e\x33\xe9\x17\x73\x39\x62\x81\xdf\x33\xa9\x95\x90\xa9\x41\x04\xa5\xfb\x4d\x6a\x8f\xc9\x52\x2b\xbb\xd2\x95\x4b\xcd\x1a\xcb\x1b\x40\xb2\xd4\x1a\xaf\xd6\xc7\xa5\x72\x99\x56\xaa\xa3\xf0\xb8\x04\xf6\xe8\x71\xa9\xde\x80\xc2\xa2\x0d\x28\x36\x8b\x93\xea\x22\x64\x33\x5a\x2a\x45\x4d\x5e\xea\x01\x04\x23\x3f\xc3\x51\x81\xd0\xdd\x56\x38\x0a\x38\x37\x19\x20\x10\xd8\x29\xbe\x2c\xfd\x15\xdf\xa7\x1b\x37\x58\x8c\x82\x84\x8b\xc0\x64\xe4\xb5\x6c\xb0\x00\x08\xa4\xec\xe0\xbe\xc9\xa7\xd1\xfc\xde\x76\x3d\xac\x25\xed\xee\xb6\xa2\x91\xdb\x52\xdc\xe1\x76\x57\xc6\x14\x86\x01\x42\x3a\x1c\x67\xf4\x48\xd7\x3a\x33\x80\x33\xa6\x21\xcc\x1c\x2e\x93\xf2\x39\xd1\xee\x6e\xcb\x89\x3f\x37\x8a\x0c\x30\x31\xf9\xde\x46\x25\x39\xc7\x58\x42\x2f\x2e\x41\xc5\x5e\x99\x88\xaf\xe0\x0d\x49\x9e\x19\x3f\x87\xd0\xe2\x38\xc3\x0b\x85\xe7\xc2\x37\xdf\x9f\x1a\x63\x6e\xb0\x73\x5b\x17\xf8\xc2\x18\x2b\x9c\x2c\xa5\x4b\xbd\x4b\x43\x83\x4a\x46\x7c\xa3\xc3\x3b\x17\x99\x72\xfa\xa5\x88\xd0\x3a\x36\xb2\x13\x9a\x83\xc5\xe8\xf1\x33\x74\xdc\x10\x4e\x12\x1a\xbd\x3f\xa5\x14\xf2\x2f\xe8\xeb\x63\x81\x52\x05\xfd\x55\xce\xd8\x22\x21\x91\xdb\xaa\xf5\xb2\x30\xa9\xef\x4f\x0d\x03\x44\xa9\x19\x59\xb0\x3a\x5d\x32\xcd\x6d\x83\x9a\x6f\x17\x72\x25\x93\x30\x29\x56\x24\x6d\x7a\xdc\x3f\x42\xfc\x4a\xf8\x2f\xa1\x8c\xa1\xe8\x6b\xa2\x9e\x2b\xa5\x0f\x05\xe8\x6d\xe1\x68\x6c\x89\x6f\xe1\x8d\x09\x6f\x4a\xa2\x18\xb4\x28\xb5\x0a\xc0\x9b\x4b\x9a\x0d\xed\x41\x16\xd9\x20\x82\x5e\xa4\xef\x16\xbe\xb9\x7a\x55\xc3\xdc\x17\xe2\x1d\xf1\x51\xd6\x09\xa7\x10\xa9\x10\x85\x62\x64\x1f\x72\x70\x54\x21\x80\x6f\x23\xf7\x16\xb6\xa3\x49\x18\x78\x1e\xfe\x7a\x5d\x3a\x64\x3f\xf0\x92\xc9\x31\x0f\xe6\x78\x55\xa8\x88\xc0\x4c\x76\x51\xfe\x4b\x2f\x79\xe0\x49\x40\x56\x8d\x81\x27\xf1\x51\x2f\x73\xe0\x73\xf4\x40\x2b\xac\x97\xc1\xed\x3f\x4f\xdd\xd2\x9f\xdc\xf0\xd3\x5d\xe7\x10\x96\xd4\x2d\x05\xfa\xae\x8d\x10\x49\x58\x55\x15\x30\x4d\x25\x13\x82\x0b\xcb\x8a\x03\xf3\xba\x14\x13\x31\x21\x04\xb9\x7f\x40\xe2\xea\x94\x31\x9f\x1c\xa2\xf0\xb0\x01\x6c\x87\x32\x6b\x36\xf9\xf4\x81\x02\xc4\x95\xbf\x52\x01\x47\x4f\x88\xb1\x54\x8c\xba\x10\x9d\x42\xd5\x72\xb4\xb8\xdc\x74\xe3\xaa\xd0\xc9\x06\x3d\xbd\x0c\x9c\x87\xca\x9d\x4c\x07\x66\x2a\xd3\x97\x95\x5c\x93\xad\x10\x97\x89\xd1\x3d\xf9\xf8\xe1\xfc\xa7\xb3\x5f\x8f\x4f\xce\xce\x7f\x7d\xf7\xe1\xf8\xbb\xb3\x77\xa7\x52\x05\xdc\xfe\x2a\xc9\xb6\xb8\xd7\x14\x83\x90\xc5\x68\x5e\x91\xa0\x45\x2f\x98\xba\x7e\x1b\x05\xd3\x69\x06\x12\x46\x8e\xbc\x8d\xb1\xde\x59\xb1\x16\xa1\x3e\x84\x08\xf2\x4e\xe6\x1e\x22\x44\x82\xe7\xf6\xf6\xe8\xc6\x31\x44\xc1\x35\xf4\x73\x80\xca\xc4\xe8\x5c\x52\xe5\x37\x0e\x34\x15\xc1\xda\x69\x11\xbc\xb1\x22\xbb\x37\xbd\xb4\x3a\xe0\x42\x3f\x26\x18\xbd\x41\x28\xe4\xab\xd5\xc6\x30\xc6\xff\xce\x82\xa9\xe6\xfa\xda\x9d\x8b\x66\x9a\x2d\xa0\x1a\x90\xf1\x34\x40\x33\x4e\xbe\x59\x11\xa1\xb3\x2a\x7b\xab\x33\x99\x1b\xac\x06\xe6\xa5\xab\xbd\x20\x16\x5e\x8d\xf5\x50\xa7\xab\x56\xaf\x38\x9a\x97\xb1\x16\x83\xc7\x8c\xa3\x6c\x49\xb0\xae\xed\x79\xc1\xdd\x19\xe6\x70\x3c\xe5\xfe\x6d\x8c\xbc\x29\x41\x65\xce\xec\xe8\x07\xb6\x55\x55\x8f\x8a\xcd\x1c\x7e\xab\x16\x88\x56\xc3\x5f\xde\xb9\x9e\x47\x9d\xde\xf5\x62\x06\xd3\x4e\xc0\x64\x8c\x2c\x6a\xd0\x8d\x3e\xc3\xa9\x1b\x21\x18\x42\xa7\xc5\xcf\x09\x83\x55\x1e\x4b\xdd\x4d\xf6\x72\x1a\x9c\x50\xab\x34\x13\x81\x2f\xcd\x93\x12\x9e\x03\x5d\xf2\xf4\xbf\x3b\x9d\xcf\xf7\xe7\x47\x6a\xa9\xe0\x5b\x81\x67\x72\xb0\xb7\xfa\x99\x3d\x9c\xe4\x42\x0a\x90\xc1\x7a\xbf\xd3\xcb\xaf\xf7\x59\xb2\xfb\xb0\xcd\x56\x14\x2a\xc0\xc5\x85\xb5\x9f\x4e\x01\xa0\xcd\xb5\x19\x2c\x83\xd8\xbe\x04\x0f\x2d\x0f\x88\x66\x3a\xd6\x41\x8e\x66\xdd\x49\xa4\xb9\x2c\x5c\x6f\x8d\x83\xbe\x08\xe7\x23\x0b\xe4\x8c\x47\xc5\xd1\x26\x31\x59\x4f\x08\x83\x69\x54\x58\x85\x4e\x8c\x09\x2d\x26\x27\xa4\xa1\x31\x4a\xa0\x8c\x81\x34\xa9\x4a\x42\x56\xdf\x08\x4b\xe8\x54\x4f\x26\xca\x92\xaa\x27\x6e\xb1\xc4\xcf\x23\x42\x5e\xc9\x1d\xaf\x4d\x88\xf2\x83\xa5\x64\x74\x95\xe5\xa8\xcc\xc0\xb2\xe8\xad\xf4\x1f\xa9\x54\x6c\x3f\x50\x27\xd3\xad\x1b\xb9\x08\xcf\xb9\xf6\xd3\xe7\x33\x0d\xcd\x6c\xa4\xb9\x91\xc6\x2a\x26\x62\x4e\x58\xf8\xd7\x7e\x70\xe7\x6b\x21\x64\x55\xe8\xb4\x28\xd0\x1e\x82\x85\x36\xb1\x7d\x0d\x85\x0f\xda\x34\xc0\x4f\x5e\xda\x93\x6b\x0d\x05\x1a\x9a\x41\x2d\x0c\x02\xa4\x05\x21\xb9\x1b\xc2\x76\xb4\xb8\xbc\x71\x89\xe8\x42\xd1\xc5\x8f\x4f\xce\xb4\x2f\xf8\x78\xd9\x3b\x87\x93\x10\xa2\xf7\xa7\xda\x65\xfa\x33\xc7\x27\x67\x91\x59\x8c\xd7\x52\x82\x87\x5d\x89\xb8\x75\x8e\xe5\x0c\x7d\x3d\x37\x49\x68\xc3\xfd\x6e\x7b\xae\x7f\x9d\x43\x73\xfe\x8e\x1d\xa7\xf2\x10\xd4\xea\x59\x70\xc3\xb1\x70\xf7\x81\x24\xb4\xd2\x3d\x3d\x9b\x1d\xf4\xd7\x20\xa6\x11\x26\xb3\x82\x32\x45\x98\x37\xa9\x5e\x3b\xc1\x24\xaa\xde\x6b\xda\x47\x4b\x06\xd2\xe7\xd2\xf5\xe9\xc7\x93\xf3\x5f\x7f\xfa\x7c\xa6\x8b\xd9\xf3\xc9\x40\xfd\x20\x98\x43\x1f\x86\x9a\x1f\x84\xf0\x0a\x86\x21\xd3\xb8\xfa\x40\x8f\xab\x97\xfd\x7a\xe9\xd9\x72\x57\x3e\x43\xdb\x21\x1c\xc5\x63\xc8\xe2\x32\x05\xd5\x20\x7d\x56\x2b\xdb\x50\x5d\x0a\x55\x9f\x2d\x54\x8b\x65\xe7\x09\x39\xba\x5e\xd8\xc9\xd1\x05\xa4\xaa\xb9\x4d\x1c\xdb\x48\xb3\x17\x68\x16\x84\xee\xef\xd0\xd9\xd8\x7a\xdc\xc0\x56\x4e\x65\x86\xcd\x74\x77\x43\x7b\xf3\x22\x42\xda\x25\xd4\xa6\xa1\xed\xe3\xad\x79\x0e\xc3\x1b\x37\x8a\xf0\x46\x85\x97\xfd\xad\x0b\xef\x48\x38\x28\xa9\x30\x6f\x6a\xc7\xd1\x35\xdd\x57\x6d\xe7\xc6\xf5\xdd\x08\xb1\x98\x97\x2b\xb2\x4b\xa3\x99\xeb\x93\xfb\x1c\x42\x8b\x86\x16\x10\x45\xee\x25\x6d\xb0\x1b\xdc\xaa\x80\xbe\x67\x4f\x3c\xae\x6e\xa0\x1b\x56\xef\xe1\x79\x37\x2f\x35\x15\x3c\x68\x87\xfe\x3a\xc9\x70\xf6\xee\xf8\xf3\x87\x14\x31\xa8\xbe\xb1\x17\xc1\xc9\x22\x74\xd1\x43\xdb\x87\xe8\x2e\x08\xaf\x5d\x7f\xba\x37\x0f\x03\x67\x41\xa6\xb4\x6d\x4f\xbc\x68\x3d\x84\xfa\x3e\xc0\x1b\x22\x21\xd5\x74\xe1\x3a\xf0\x39\xf7\xf7\xb2\x24\x57\xaa\xed\xf2\xda\x11\x71\x9a\x2b\xf9\x45\x74\xe3\x59\x08\xaf\x68\x66\xaa\x1f\xa0\x36\xfc\x57\x2d\xe5\x37\xad\xd3\xad\x11\xaa\xbd\x2e\x02\x3b\xa9\x9b\xc0\x0b\xd8\x6f\x85\x82\x79\x14\xfe\x63\x6e\x9d\xde\x2e\x4a\xcc\xce\x6a\x6b\xb3\x88\x21\xc3\x95\x0f\x12\x74\xae\x8f\x95\x85\x81\xe2\x9b\x09\x12\x4c\x45\x18\xff\xd8\x54\x42\xf2\x96\xeb\xcc\x7e\x86\xe2\xc2\xf4\xa7\xab\xe4\xb2\xe0\x99\x66\x11\x05\xeb\x0a\x9f\xc2\xb4\x61\x61\x09\x8a\x7a\x1c\xf0\x2d\x6c\x19\xe4\x99\x25\xb0\x49\xb0\x11\x0f\x61\xb0\x69\x72\x49\xd8\xb2\x81\x2f\xc7\xee\xe3\xb1\x2d\x4b\x4c\x3d\x95\x0a\x13\x94\xe5\x41\xd3\x12\xe6\x39\x8f\xd0\x9b\x2c\x0f\xba\x30\x01\x9a\x4e\x16\xbb\x48\xf2\xa0\x83\x08\x7e\xf4\x59\x56\xc4\x70\xa7\x03\x58\x69\xce\x6c\x4c\x7e\xaa\x88\x3a\xa4\x15\x33\x8d\xc6\x45\x54\x4a\xd2\x99\x2b\xe5\xcb\xca\xdd\x4f\x55\xc6\xa7\xc5\xfd\xe5\xd2\xf8\x65\x49\xb4\x05\xbd\x5e\x31\x49\x38\x9d\x62\x17\x85\x13\x33\x8e\x48\x26\x4e\xfb\x45\xe8\x92\x4c\xe7\xcc\x93\x64\xd2\x54\x0f\xa7\x06\x8c\xcf\xb2\xd4\x78\x85\x74\x0b\x7c\x37\x27\xcf\xc6\x4f\x15\x60\x4f\x6a\xba\xe3\x97\x58\xee\x59\x38\x61\xf5\xdc\xa5\x88\xef\x24\xd3\x73\x77\x17\x4a\x75\xe0\x01\xcd\x9b\xe3\xdf\x9e\x87\xc1\xfd\x03\xfb\x34\xfe\x96\x1c\x1c\xc6\xbf\x02\xc9\x57\x58\x8e\x32\x89\x56\x13\xb2\xdb\x8a\x6a\xf5\xa7\x98\x16\x19\x8f\xad\x74\xd9\x7e\xd1\x53\x48\xa8\x0b\xf2\x4b\xbf\x1a\x6f\xf4\x7e\xf7\x48\x97\x66\xc3\x7f\x7a\x7a\x5c\xc6\x95\xb8\x0c\xdc\x53\xb6\x58\x5a\x24\xfd\x3c\xb5\x40\x90\x50\x57\x5f\x75\x73\x69\xd0\xff\x7d\x93\xa9\x8f\x8f\x8c\xad\x28\xbf\x0f\xe4\x26\xc9\x04\x32\x8e\x23\x7f\x0b\xf3\x54\xdb\x1a\x7c\xe5\xd9\xd1\xac\x1d\x57\x90\x51\x84\x4a\x78\x6e\x9b\x3c\x94\xff\xd6\xcb\xf4\x96\x5f\x05\xe1\x4d\x3b\xfe\x5d\xdb\x61\xfe\x5a\x09\xe6\xdf\x25\x8e\xff\xb5\x12\xcc\x16\x54\x82\xf9\xe5\xbb\xef\xad\x0e\xfa\x7e\xaf\x91\x8c\xce\x4c\x9d\xf9\xb2\x75\x0d\x61\x5a\xb5\x2d\x08\xe0\x3a\x7b\xad\x8b\xff\x7b\xf1\xcf\xf1\xd8\xf8\xf3\xde\x14\x44\xcd\xb0\x76\xf2\x0a\xeb\x85\x30\x92\xb7\xb5\xbc\x6a\x79\x19\xd1\x90\x5e\x64\x75\x75\xe5\xcb\x82\x24\xca\x73\x89\x4d\xdb\x73\xed\xa8\xa5\xe3\xa1\x92\x23\x4b\x37\x80\x8b\xe0\x4d\x85\xc7\xca\xa4\xe3\x49\xe0\x23\xdb\xf5\x73\x05\x64\xfc\x2d\xdd\x48\x64\xa1\xf4\xe8\x92\x08\x7a\x60\x27\xd2\xa8\x1f\x84\x37\xb6\xe7\xfe\x0e\xdf\x61\x4d\x87\x3c\x04\xa2\x91\xdf\xb2\x79\xb2\x29\xde\x43\x4c\x52\x40\xf1\xd8\xf3\x5a\x81\x61\x00\x6f\x14\x5d\x70\xa5\xa4\x6d\x8d\x2f\x3a\xe3\x37\xe1\xa8\x6d\x8d\x46\x23\xcf\x24\x73\xfa\xf1\xaa\xa5\x5f\xe8\xc6\x5b\x5d\xce\xec\xc7\xbb\x1b\xc0\x37\xf8\x55\x0f\xe8\x63\xdd\x18\x7a\x84\x89\x5d\xda\x27\x3c\x0a\x92\xe9\xe5\x9a\x33\xdb\x77\x3c\xd6\x2f\x1b\x84\x4c\x7c\xe5\xd3\x86\x35\x0b\xdc\x41\x82\x8a\xb1\xe4\x72\xc8\x82\x6f\x2e\x8b\x65\xfa\xc0\x8e\xaa\x1d\x5b\x04\x46\x7e\x8f\xa5\x1e\xef\x4d\x66\x70\x72\x7d\x19\xdc\x6f\x87\xb6\xed\x7c\xff\xdb\x3e\xfc\x1d\xa2\x1c\x77\x2e\x2b\x35\xfc\x2d\x8d\x24\x89\x43\xbd\x80\xfe\xad\xe3\x3a\x2e\x41\x42\x4a\xc5\xaf\xa4\x57\xbc\x05\x74\xd7\x9f\x2f\xa8\x07\x63\x1f\xf4\x58\x69\x64\xfa\xab\x4b\x7e\x75\xc7\x34\xec\xab\x47\x43\xc2\xfa\x40\xe7\x34\xc2\x2f\xf5\xc1\x45\xef\x10\x58\x0a\xfd\x3d\x15\xd0\x13\x3f\x4b\xfc\xbb\xbc\x7e\x67\x06\x33\x31\xf3\x92\x12\x98\x2e\x5f\xf1\x0f\xe6\x78\x82\x6c\x4f\x07\xba\xe3\x3a\xed\x98\x08\x81\x5f\xc7\x0a\x50\xca\x18\x35\x6d\x42\xbf\xf2\x69\xfd\xe8\x7b\x0f\xf1\x63\xad\x9a\xd6\x20\x45\xaf\xc8\xde\xb5\x1d\xbc\xfa\x8f\xee\xc3\xdf\xde\xfd\x14\xfc\x96\x73\xea\x70\xd6\x2c\x38\x7e\x2c\xb1\x8a\x72\x57\x55\xa5\xf9\x80\x70\x5a\xb6\x16\xe6\x21\xe8\x2a\x42\x19\xab\x32\xcd\x6a\x8c\x21\x4c\xc1\xb6\x70\x85\x42\xfe\xfe\x76\xea\xb9\x37\x37\x30\x4c\xde\xcc\x8a\xe1\x2c\x4d\x0c\xd8\x20\x00\x11\xf0\x80\xfb\x26\x16\x8c\x16\x89\x60\xde\x5a\x8c\x14\x76\x26\x2e\x59\xb3\x39\x4f\xdf\x88\x65\xaf\xb7\x8a\x5c\x22\x2e\x2e\x2f\x87\xaa\xd4\x33\x65\x99\x59\xde\x9c\x24\xfe\x8e\x46\xa3\xf8\xfa\x0e\xff\x3b\x11\xb4\xdf\xf2\xbe\x0d\xe3\x06\x0d\x2c\xda\xc7\x83\x9c\x50\xdb\x17\x08\x8d\x47\x7f\x77\xb7\x20\x15\x5b\xd0\x9f\x7c\x21\xbb\x5e\x4e\xc6\xf6\x4d\xf1\x67\x92\x98\xed\x9b\xfc\x4f\xc0\x52\xba\x4d\x92\xab\x40\x0e\xe5\xf0\xad\xf4\x8b\xaa\x04\xa1\xc1\x92\x07\x97\x42\x67\x9d\x44\x09\x69\x25\x42\x72\x70\xa5\x21\xc3\x50\x8a\xdb\x27\xb6\xef\x07\x48\xc3\x5f\xd4\x6c\x8d\x20\x7c\x68\x76\xa4\xd9\xb1\xa2\xa5\x0b\x5f\xbf\x62\x8a\x59\x22\xe4\x62\xa9\x36\x93\xf9\x1f\x8e\x10\x11\x6f\x05\x22\x8c\xc4\x1f\x4f\x4f\x3b\x16\x08\x25\x42\x8c\x76\x3a\x80\x85\x3e\xba\x34\x95\x2f\x8c\x09\x32\xda\xe9\xe4\xeb\xaf\xa1\x79\x0d\x1f\x40\x68\x2c\x93\x5e\xde\x88\x79\x6e\xad\x1b\xae\x5a\x51\xa0\x0d\x3a\xe9\x1f\xaf\xd2\x6a\x5b\x9c\xea\xf6\xeb\xaf\x84\x35\x7e\xfd\x75\x84\x00\x61\x05\xac\xb9\xc4\xdf\x9e\x27\x19\x6b\x82\x0c\x98\x93\xf4\xfe\x19\x5e\x79\x70\x82\x9e\x9e\x76\xd8\x5f\x09\x5b\x32\xcd\x68\xc7\xc2\x9a\x56\xe6\xae\x19\xcd\xec\x1b\xe9\x11\x05\xb3\x7f\x0a\x83\xfb\x07\xfe\x10\x4d\x8b\x67\x83\x38\xb5\x11\xcc\xd5\x24\x33\x8d\xb5\xf0\xe3\xe0\x62\x2c\x21\xcc\x10\x48\x88\x9d\x0e\x13\xa7\xe2\x75\xb7\x63\x2d\x97\x09\x92\x55\xca\xc2\xe6\x83\x70\x74\xcb\x94\x47\xc4\x31\x20\x6e\x29\xfc\x9e\xb8\x20\xdf\xf8\xa3\x6c\x27\xc2\xc4\x80\x08\x6c\x96\xd2\xe5\x8f\x72\x2c\x8c\xbc\x03\x33\x7a\xc3\x17\x67\x7f\x26\xce\xe7\x0e\x7a\x7a\xd2\xa9\xf2\xa7\xef\x8c\x46\x8b\x16\x32\xc4\x8d\x23\xb6\x00\xa0\xb7\x97\x2d\x68\x0c\x51\xf2\x99\x4b\x66\x2f\x48\x92\x8e\x84\xf5\xf3\x19\x92\xa0\xd8\x09\x5f\x44\xc4\xe3\x3b\xb3\x23\xff\xff\x20\xed\x12\x42\x5f\xe3\x8b\x35\x82\x8e\xd6\xd6\x88\xad\xb4\x65\x48\x4f\xe0\xb9\x80\x4e\x92\x14\x2a\x80\x31\xdc\x0a\xbb\xea\xad\x9a\x7b\xdf\x26\x18\x13\xc2\x55\xe5\x46\x99\x30\xf4\xd3\x93\xf2\x2d\xbc\xd9\xc9\x3b\xde\x03\xdf\xf1\x80\x1d\xe3\xd5\xa5\x73\x1c\x09\xa8\x49\xa8\xca\xa3\x83\xc6\x63\x70\x01\xc7\xa3\xf0\x02\x8e\x97\x24\x13\x51\xd8\x06\x76\x76\xc4\x9f\x20\x48\x6d\x02\x3b\xf2\x05\xd0\x4a\xf6\x84\xe0\xe9\x29\x10\x37\x41\xac\x79\x07\xf2\x1e\x11\x8c\x7c\x66\x25\x11\xd2\x91\xb3\xa9\xad\xbe\x90\x74\xc6\x01\x37\x9e\x9e\x7c\xac\x7c\x1a\xc0\x16\xbc\x2b\x52\x7b\xa4\x39\xd2\x1b\xf9\xfa\xdb\x20\xbb\x35\xdb\x7c\x6b\x06\xd2\xcd\x11\x37\x47\xc6\x4c\x95\x6e\x21\xff\x74\x09\xc8\xf0\x16\x9e\x67\x80\x60\x4d\xf6\x82\x69\xb1\xe4\xf6\xbd\x15\x9e\x47\xef\xfb\xbf\xab\x25\x37\xe2\x53\xce\x8a\x6f\x20\x51\x3f\x78\x21\x2e\x65\x40\xe9\x91\xa0\x1a\x1c\x26\x6e\x3f\xe6\xfc\xd0\x81\xfe\x05\xde\xe3\xff\x9c\x70\xa5\x02\xe8\x9f\x6d\x87\x54\x82\x3a\x23\x11\xfd\x2c\x84\x84\xd7\xf6\xd7\xd3\x89\x05\x59\xf9\x87\x3c\xc2\xca\x83\x81\x38\xfa\x9b\xaa\x17\x80\xa9\x26\x02\x44\x76\xce\x57\xf6\x10\xee\x18\x8d\x98\x10\xb4\x29\x36\xe8\xc0\x8f\xf5\xa6\x34\x24\x7e\x87\x36\xd2\xc1\x6a\x4e\xe0\xfb\x78\x47\x12\x8b\x62\xd0\x3b\x3e\xab\x1e\xa2\x7c\x59\x0c\xbf\xa5\x8f\xa3\x60\x31\x99\x41\x47\xf8\x10\x0a\x17\x50\x51\x23\x25\x6f\x30\xa2\xce\x96\x33\xa0\x24\xc9\xe1\x45\x8c\x28\x24\x5c\xf2\x6f\x33\x1c\x9e\xbe\x22\xd7\x4e\xc9\x7b\x5a\x8a\x0c\x06\x2c\xb7\xa4\x62\x4c\x2f\x5d\x97\x62\x3d\x9f\xbe\x38\x90\x87\xb9\x34\xee\x1e\xa9\xff\x81\x69\xcd\x17\x14\x67\xa5\x76\xfa\x02\xdf\x07\x8a\x91\xf0\x4b\xf3\x53\x74\x39\x0d\xcd\xda\xe7\xe5\x72\xd8\xf6\xa7\xc7\x73\x84\xaf\xb0\xe8\x17\x1a\x41\x6e\xb1\x01\xb4\x93\x67\xd2\xe3\xe9\x66\x4a\xd9\x0c\x48\xa8\x81\x4c\x51\x1d\x1f\xe1\x6d\x39\xfe\x7a\xac\x4c\x7f\x93\x52\x41\x7a\x62\x24\x61\xad\x74\x90\xbc\xc4\x1a\x4e\x8c\x24\xbb\xe9\x0f\x41\x8e\xdc\xa2\x02\x85\xc6\x1f\x16\xf4\x49\xff\xdb\x26\x36\x4c\x82\x3c\x4f\xf3\x65\x18\xaa\x3d\x33\xab\x46\xe4\x4f\xae\x0b\x67\x52\x6c\x18\xde\xbd\x07\xd1\x8a\x76\x23\xd9\x30\xf0\x71\xd4\x8a\x6d\x03\x04\x6c\x1f\x3a\x49\xa0\x05\xbf\xc0\xcd\xfb\xbf\xd2\xde\x48\x70\x2e\xa2\x0b\x38\x86\xe1\x52\x88\xb9\xbb\xbb\x14\x93\x6d\x84\xd4\xda\xe0\x39\x96\x54\x35\x78\x3f\x0f\x21\x09\x6a\xa4\x0e\x13\xe8\xa2\x19\x0c\xb5\x4b\xa8\xe1\xb7\xb5\x20\x94\xd4\xc3\x37\x82\xae\xc1\xa5\x55\x9a\x57\xdf\x42\xbb\xbb\x82\x4b\x0b\x3c\x0a\x4a\xc0\x90\x89\x27\x50\xc4\x26\x4b\xe3\x96\x61\xda\xa0\xdd\x5d\xaa\xd0\x2d\x8d\x56\x00\x20\xf3\x92\x53\xe9\x74\x34\x6f\x05\xc6\x1b\x01\x68\x89\xb9\xfa\xdf\x50\x8f\x39\x08\x12\x87\x4c\x16\x61\x04\xf8\x92\x7f\x06\x84\xa3\xce\x37\xe1\x7f\xa2\x6f\xc2\x3f\xff\xd9\xf0\x2f\xc2\xb1\x10\x5c\x13\xc6\xbe\x9a\x49\xeb\xb2\x05\x47\x36\x11\xf3\x98\x6e\x62\x83\x0b\xdc\xd8\x38\x86\x4d\xc0\xaa\x13\x91\x8f\x22\x80\xb5\x08\x03\x90\x97\x0c\x10\x9f\x06\xc0\x63\x37\x20\xc7\x04\x43\xa3\x00\xb4\xfc\xd1\xc5\xe3\x35\x7c\x18\xc6\xc7\x0f\xb3\x04\x64\xc2\x53\xa0\x37\x82\xcb\x25\xa0\x0f\x93\xa5\x9b\xe3\xad\x95\xbd\xda\xd0\x7b\xcb\xfe\x1b\x43\x47\xe2\x97\x59\x02\x14\xf4\x52\x40\x8e\xe4\xc3\x46\xde\x5d\x62\x84\x33\x28\x16\xb5\x1d\x4e\xa9\x59\x3f\xee\x14\x3d\x6e\xab\x74\x8a\xbc\x4b\xd6\x46\xda\x4f\x90\xdc\x21\xce\x07\xc9\x65\x90\x3c\x40\x6f\x8d\xa5\xae\xe0\x6b\x71\x57\xc8\xf6\xa7\xee\x8a\xaa\x41\xe2\xe7\x40\xc1\x59\x70\x07\xc3\x13\x9b\x29\x10\x73\xcf\x9e\xc0\x63\xcf\x6b\xe9\xa6\x4e\x50\x25\x8c\xf8\xf3\x6c\x73\x49\x7d\x5f\x40\x82\x66\x93\xce\xe3\x57\x70\x1b\x64\xc7\xe4\xd8\x44\x6c\x3f\x52\x40\x8d\xb2\xdd\x76\x44\x03\x4e\x96\xcb\xe5\x72\x6c\xec\xee\x5e\xb5\xc4\x25\xe5\x1b\x20\x24\xd7\x40\x88\x15\x83\xc4\xf1\x65\x80\x68\xf4\xd0\x6a\x05\x23\xd7\x10\x1e\x27\x6c\x79\xe1\x8f\xc9\x52\x94\x10\x02\x65\xe7\xbf\xb8\x26\x05\x0d\x85\x46\x8c\x19\xc0\x1b\x3d\xb4\x02\xf1\xb3\x31\x67\x5f\x84\x8d\xbf\x9d\x99\x9e\x1d\x0b\xaf\xff\x54\x4b\xf1\xda\xb8\xb0\xc7\xa5\x48\x8b\xca\x37\xb1\x46\x1a\x5f\xc6\x3a\x9f\x60\x57\xfd\x08\x8a\x2c\xb4\x53\xf0\xb1\x62\xd0\x83\x42\x88\xdb\x0e\x73\xfc\x87\xd3\x3d\x67\xef\xcf\xa7\x39\x4a\x5d\x55\x73\x3c\x2b\x7b\x43\x93\x28\xc8\x80\x39\x76\x6f\x9b\x8c\x55\x4b\xe4\x92\x6d\xb4\xcd\x0b\xf3\xb1\x2d\xb6\x79\x22\x4a\x6f\x07\x8b\x7c\xba\xdd\xff\xef\xc5\xc9\xcd\xe7\xed\xf2\x2e\xc6\x7a\xdd\x1f\xc6\xb5\x28\xb0\xc4\xb6\x70\x29\x82\xf7\x0a\x37\xd2\x73\x30\xe9\xe7\x9f\xfe\xeb\xf6\x3c\xfc\x9f\xee\xaa\x4c\xca\x19\x71\x2d\x3c\xca\x4d\x43\x0d\x59\x94\x36\xf8\x82\x38\x34\x61\x87\xe7\x66\xd0\x86\xae\x4d\x55\x84\x61\xcb\xff\x77\x75\x64\x86\x1b\xf5\x0d\xda\x2f\xc2\x37\x18\x48\xbe\xc1\x60\xad\xbe\xc1\xe8\xd5\x37\x58\xe8\x1b\x74\xd3\xbe\x41\x77\x93\xbe\x41\x4f\xe1\x1b\xf4\x0a\x7c\x83\x7e\xbe\x6f\x30\x15\x42\xfc\xf5\x5c\x82\x29\x9f\xa4\x2b\xec\x52\xee\x57\x74\x0c\xae\xe7\x44\x5f\x94\x88\x9d\xdf\xff\xad\xf7\xc3\xfb\xc3\xef\xd7\x96\x42\xf6\x4e\x70\xfb\x88\x29\x96\xc5\x9e\xa1\xd8\x9e\x9f\x94\x18\xaf\x74\xc8\x8a\x46\xc3\xba\xd9\x65\xe9\x83\x2c\x3e\x4d\x27\x7f\x18\x13\x5f\xc0\x4d\x7c\x0b\xd1\xc4\xe7\x01\x77\x14\xb5\x16\x86\x18\x71\x24\xb8\x6e\xc9\x02\x5f\x18\xc0\xcd\xc9\x62\x8a\x8d\x6b\x0b\xc1\xb8\x56\x64\x9a\x4a\x9b\x90\xc6\xc6\xee\xae\x9d\xb6\xb7\x78\xe4\x1a\xf0\x0c\xb0\x10\xed\x2d\x82\xe8\x32\x29\xb4\x22\x2c\xc0\xa4\x82\x15\x21\x84\x10\x8b\x57\x6d\x8a\x20\xbc\x1d\x42\xb7\xf7\x8b\xd7\xb9\xea\xfc\xd7\xa1\x72\x89\x66\x17\x66\x07\xe8\x57\x2e\xf4\x1c\x82\xe8\xcd\xb3\xa4\x53\x03\x53\xa4\x4a\xeb\x0a\xe4\xb6\x0e\xa0\x1e\x8b\x08\xda\xe1\x64\x56\x92\x5f\x1d\x57\xe5\x65\x8f\x9c\x27\x2f\xa5\x33\x97\x93\x97\x12\x69\x7f\x80\x25\x63\xd6\x50\x46\x18\x27\xe9\xa7\x5c\xb1\x8d\xf1\x3f\x06\x89\xe7\xb7\xce\x1b\xd7\xf0\xc1\x09\xee\x7c\xf5\x3b\xfc\xa6\xf0\x52\x1f\xf4\x80\xce\x0b\x72\x63\x25\xa4\xcf\x54\x92\x01\xd0\x89\x89\x72\x16\x78\x04\xef\x0a\xdf\xe9\xf2\xf4\x6f\x7b\x81\x82\xab\x60\xb2\xc0\x42\x71\xf2\x37\xbd\xd9\x07\x7a\x8a\xa4\x99\x3c\xee\x94\xa6\x51\x8e\x4e\x16\x3b\x4b\xb8\xf2\x25\x76\xad\xce\xae\xa8\x5a\x02\x2b\x67\x5d\x97\x16\xe1\x4d\xd2\x05\xf2\x43\xe8\x99\x1d\x9e\xb3\x49\x52\xfd\x35\x82\x88\x04\xaa\x53\x84\x64\x71\x1d\x32\x62\xa8\x90\xc0\x09\x02\xf8\x5b\xba\x0c\x87\x90\x16\x69\x65\xb3\x2f\xb5\x69\xf5\x08\xf6\xf1\x35\x7c\x38\x09\x1c\x92\x3d\x38\x0f\x49\x62\x32\x43\x48\xce\x26\xa7\x95\xeb\x50\xf8\xa8\x72\x27\x41\x38\x6f\x33\x64\x81\xad\xd8\x68\x6e\xef\xfb\x87\xd3\x49\xc7\x57\xcb\x02\xf6\x02\xcd\x4e\x5d\xdb\x0b\xa6\xa2\xb3\x0e\xb3\xf7\xf1\x02\xcd\xbe\x0f\xc2\x1b\xf6\xe7\xa7\x30\xb8\x72\x49\xac\xb0\xf4\x94\x3d\x77\x75\xa0\xff\x08\xfd\xc5\x7b\x04\x6f\xd8\x9f\xe7\x70\x6e\x13\x0d\x2e\x7e\x80\x66\x99\xf3\x5f\xaa\x6b\xd2\x57\x0b\xbe\x57\xf5\x39\x97\x5e\xae\xd7\x59\xf6\x52\xbe\x80\x24\xc3\x59\xdd\x04\x8e\xed\xb5\x3d\xfb\x81\xec\x13\x78\xbf\x19\x83\x8b\x34\xc2\xa4\x84\xdb\x92\x40\xb0\x26\xb1\xd7\x97\xb6\xef\x2b\x37\x6f\x35\xca\x05\x93\xcd\xf2\xc1\x93\xc8\xb6\x7d\x3b\xe5\xad\xf0\x42\xdf\xdd\x43\x7e\x25\xae\x01\xde\x3d\xe0\x97\xee\x6f\x3c\xe2\xae\x9d\x21\x34\x1f\xee\xed\xdd\xdd\xdd\x99\x77\x3d\x33\x08\xa7\x7b\xdd\x4e\xa7\xb3\x87\x3f\x97\x7b\x93\xbc\xbb\xa7\x8b\xcd\x23\x17\xc9\x70\xa0\x14\x79\x2d\xde\x00\x09\x32\x8c\x8d\x66\xbc\x79\x07\xcf\x85\xd5\x33\xbb\x87\x7d\xcd\xda\x37\xad\x83\x43\xbb\x6b\x1e\x1e\xec\x6b\xf4\x7f\x3b\x9a\xa5\x59\x6d\xb3\xd3\x39\x6c\x0f\xcc\x83\x81\xa5\xc9\x37\xf1\x6d\x7c\x53\xc3\x37\x7f\xbf\x19\x98\x83\xa3\xfd\xb6\x65\x0e\xfa\x07\xb6\x65\xf6\x7a\x3d\x8d\xfe\x2f\xf9\x8a\xd6\x69\x77\xcd\xfd\xfd\x03\x4d\xbe\x83\xef\x75\x34\x72\xe7\xf7\x9b\xbe\x79\x38\xc0\xb7\xba\xfd\x23\xdb\x32\xbb\x07\x96\x46\xff\x97\x7e\xc0\xec\x74\x0f\xda\xa6\xd5\x39\x98\x74\x34\xb3\xd3\xc3\x97\xcd\xce\xfe\x41\x1b\x5f\xc7\x97\x7f\xbf\x69\x9b\x47\xbd\x83\x76\xcf\xec\xf7\xf6\x15\x1d\x30\x8f\x0e\x49\xef\x8e\x06\x13\xb3\xd3\xeb\x99\xd6\x41\x97\xfc\xb7\xd7\x3f\xc4\x9f\x1a\x74\xdb\x66\xe7\xc0\x1c\xf4\xda\x66\x7f\x7f\x60\x1e\xed\xb7\xf1\x0b\x9a\x65\x76\xf0\xd8\xfa\xe6\x41\x57\xeb\x99\xdd\xa3\xec\x87\xdb\xf8\x11\xf2\xe5\xde\xa1\x62\x74\x96\x69\x59\xf8\x33\x7d\xeb\xc0\xec\xf5\xbb\xf8\xff\xc9\x9d\x0e\xeb\x78\x77\xd6\x36\x3b\x56\xef\xf7\x1b\xfc\x9d\xc3\x76\xcf\xec\xf5\x14\x9d\xc7\xf7\x0e\x71\x1b\xdd\xfe\xc4\xec\x58\x7d\xd3\xb2\xfa\xe4\xbf\xdd\xee\x11\xee\x7d\xaf\xdf\xb5\x33\x6d\xb7\x2d\xd3\xea\x74\x71\x0f\x0e\xbb\x33\xfc\x34\x21\x51\x77\xa0\x1d\xe0\xff\x55\x91\xc8\xda\x1f\xb4\xf1\xfc\x4d\x70\x9f\x4c\xeb\xa8\xd7\xc6\x24\x36\x7b\x87\x6d\x7c\x0b\xdf\xc1\x9f\xe8\x1f\xb6\xad\xae\x69\x1d\x59\xaa\x4f\x0c\x3a\x07\x6d\xcb\x3c\xb4\xfa\x13\x13\x77\xaf\x77\x60\x5a\x47\x87\xe6\x00\x77\x79\xbf\x6f\x1e\x1c\xe2\x09\xeb\x1d\x9a\x7d\xfc\xcd\xee\xe1\x91\x79\xd8\x3d\x6c\x9b\x84\x2f\x3a\xfd\xc1\x2d\x6e\xf7\xf0\x77\xcc\x92\xf8\x93\xdd\x7d\xcc\x18\x27\x03\xf3\xe8\x80\xfd\x8d\x99\xa5\x63\xee\x1f\xe1\x3f\xd8\x43\x1d\x8d\xdc\x27\xff\x93\x5c\x9c\x74\xcd\xa3\xee\x11\xfe\x1c\xe6\xce\x83\x43\xf3\x68\x30\xd0\x0e\xcd\xce\xd1\xa1\xd6\x35\x0f\xfa\xdd\x33\xeb\xc8\x3c\xd4\xfa\xe6\xe1\x91\x6d\x75\x28\x63\x76\x58\x03\x78\x6e\xac\x03\xd3\xea\xf5\xb4\x43\xb3\xdf\xef\x6b\x8a\x07\x34\xf2\xc0\x01\x7e\xe0\xc0\xf2\x2c\x73\xbf\x7b\xa0\x75\x4d\xab\x67\xe3\xc5\x64\x1d\x6a\xec\x3f\x74\x1a\xe2\x66\x7b\xbd\xdf\xf9\xca\xbb\x72\x3d\x4f\x07\xfa\x7f\x7c\xff\xfd\xf7\xb2\xd8\x92\xfc\x4f\x99\x8c\x47\x24\xa9\x1b\xe8\x2f\xd8\x2f\x0b\xe8\x37\xb6\xeb\xb7\x7d\xfb\x56\x04\x06\x1e\x08\x11\x63\x29\xd8\xde\x3c\xc1\x2e\x93\x0a\xa5\x92\xaa\xf2\xc4\x5c\x06\x50\xac\xea\x8a\x0a\xa3\xf8\x0b\xb9\xad\xe1\x13\x21\xfd\xe1\xfc\xf6\xf2\x60\x9c\xd7\xd6\xab\x62\x61\xfc\x84\x03\xbb\x28\xba\x58\xd0\x7b\xf1\x93\xbe\x7d\xcb\x7b\x66\x87\xae\x4d\x5d\x8e\x78\x37\xb6\x5d\x3f\xd5\x2b\x3d\x06\xbb\xec\xb0\x28\xa6\x5e\x6d\x24\xe9\x74\xf3\x19\xd8\xdf\x74\x23\x2c\x84\xca\xca\xc1\xba\xfe\x70\xfe\xe9\xf8\xe4\x9d\x0a\xee\x9a\xbd\xd8\xe5\xb8\x9c\xfb\xe0\x42\xa7\xf6\x53\x7d\x3c\xc6\x1f\x2f\x0e\xa1\xab\x36\x0c\x2d\x07\xbe\xca\x27\xd5\x98\xa2\xfa\x63\x3b\x50\x77\xd7\xca\x8c\x8b\x4f\x81\x75\x38\x5e\x39\x1a\xb0\x68\x54\x12\xcb\x51\xa4\xd0\x3e\xb8\x20\x15\xa7\x32\x38\xa1\x4d\xd0\xac\xd3\x6d\x1e\x02\x9d\x95\x73\x68\x93\x2d\x85\x03\xad\xcd\x83\xc8\xe5\xb0\x62\xba\x07\xaf\x50\x3d\xa4\xb5\x82\xe6\x8a\x50\xdd\x50\xe8\x12\x84\x9c\x95\xdb\xd2\x04\xa4\x55\x99\x7e\xe5\xbd\xac\x88\x40\x2b\xf2\x94\x75\x44\x30\xcf\x27\x66\xc2\x88\x2b\xf3\x79\x65\xa2\x35\x01\x36\x2c\xa0\x99\x02\x44\xf0\x9f\xff\x44\xe2\xff\xa9\x5e\x8d\x4b\xa2\x45\x1a\x9a\xc1\x9b\x08\x7a\xb7\x30\x8a\x11\x1e\x7d\x7e\xd7\x21\x28\xaf\xd1\x9d\x8b\x26\x33\xd7\x9f\x6a\x77\xae\xe7\x91\x27\xe8\x61\x44\xb0\xda\x58\x81\x5e\x82\x47\x68\x56\xe9\xb1\x7a\xc7\xad\x39\xad\xe5\xd8\xee\x8d\x26\x87\x9e\xd3\xd5\xa6\x26\xe1\x2d\x0e\xb8\xdf\xed\x82\x8b\x44\x7f\x1a\xd3\x50\xee\xf8\x62\xa2\x49\xd5\x83\x3e\x2e\x1b\x10\x69\x04\xef\xfa\x89\x86\xb5\x2a\x67\x55\xa4\x16\x3b\xb9\xd7\xd3\x9e\xc8\x94\x95\x1e\xd7\xab\x97\x4d\x00\xfa\xb7\x0c\xca\x98\xf4\x7b\xef\x4f\x7b\x7f\xda\x8b\x99\x3c\x52\xca\x5b\xf1\x25\x2b\x3e\x73\x4a\x6a\x27\x60\x49\xe6\x77\x82\x03\x9a\x51\x70\x8b\x87\x51\x0a\xb0\xd9\xf8\xe5\x84\x45\x2d\x11\x56\xdd\xea\xe5\xfe\xc0\x27\xac\x7e\x0a\x3d\x88\xa0\x73\x8c\x18\xfa\xf9\xbe\xf2\x10\x5d\x3f\x13\x93\x3e\x4a\x50\xec\x1d\xc5\xe1\x2f\x1c\x10\xf4\xb5\x7d\xf1\xc4\x60\xe1\xe2\x6e\xd4\x66\x55\xbb\x65\xb8\xf6\x59\x08\xaf\x44\x37\x4d\x4e\x72\x10\x3d\x18\xf4\x14\x14\xbd\xfe\xff\xf4\xbc\x16\xc7\x29\x5c\xf8\x17\xb8\xfc\xf8\x11\x9c\x1e\xdf\x56\xf0\x71\xfa\x76\x77\x5f\xaa\xb5\x91\x91\xf7\x36\xb6\xb5\xd6\x58\xdb\x29\xce\x56\x33\x20\xb5\x54\x09\xb2\x08\x59\x72\x3d\x05\x83\xbd\x50\xb6\xfa\xd1\xf6\xed\x29\xac\xb7\xb9\x7f\x5d\x5e\x52\x26\x7b\x74\xfb\x78\xe6\x2b\x49\x15\x8d\xfa\xaa\x60\xe9\x2e\xe8\xf6\x56\x12\x73\xaa\xa5\xb5\x14\xbf\x9e\xa8\x6a\xa5\x9a\x99\x78\x70\x24\x1a\x57\x67\x9c\xd6\xc6\x62\xad\xad\xa3\xd4\xda\xbe\x9a\x66\xd6\x7b\xd5\xcc\x56\xd2\xcc\x7a\xeb\xd4\xcc\x56\x1a\xde\x6a\x62\xba\x75\xa8\x10\xd3\xe3\x8b\xeb\x16\xd3\x85\x53\xa0\xb3\x66\x21\xfd\x6b\x6f\xe6\x49\x55\xed\x6a\x9b\xf8\x4a\xf2\xb9\x93\x34\x56\x51\x40\x2f\x2b\x6e\xd6\x48\x40\x5f\xe1\x28\x5a\xbb\x70\x4e\x42\x77\xc9\x0a\x04\xe9\x01\x6f\x52\x2e\x27\xe6\x92\x72\xb9\xbc\x97\x96\xcb\xad\xf5\xcb\xe5\xce\x44\xe7\xba\xb6\xf8\xf5\x97\x2f\x25\x09\xc2\xb7\xb5\xfd\xc2\xb7\xa5\xce\x8f\x3d\xc2\x5b\xdc\xd7\x14\x99\xac\x43\xe9\xc5\xd5\x45\xa6\xdc\x47\x12\xb1\x68\x90\xb3\x0c\x62\xa3\x22\x8b\xf2\xc8\x95\xe4\x55\x8b\xa0\xd0\xbf\x91\xee\x48\x9e\xbb\xbb\x42\xdb\x52\xa8\x12\x7b\xb4\x22\x05\xd6\x4b\x24\x3f\x70\x9e\x87\x42\x85\x0d\x0b\xad\x7c\x20\xcf\x3d\x0b\x6d\xae\x6f\x9f\x83\x30\xf9\xad\x0a\x4d\xfc\x0d\x3e\xec\xfd\xcc\x0f\xd6\xaf\x46\x19\x49\xd3\x88\xc9\x44\x2a\x8f\xe4\x11\x4a\xf9\xb4\xe3\x46\xf6\xa5\x47\xea\x16\xe5\x3c\xb5\xf0\xa5\xea\x46\x52\x2e\xcc\x06\x69\x8f\x3b\x67\x92\x52\x9b\x55\x58\xf3\xf8\xe4\xec\x79\x18\xd3\xf5\x11\xf4\x69\x21\x9f\x67\x60\xd0\xf2\xd6\x85\xa6\xde\x27\x0f\xaf\x4c\xaa\x86\x6a\x75\xc1\x57\xf5\x94\x7b\xb9\xdc\xb7\x9d\x53\x00\xb6\x70\x3e\xcb\xa8\x5e\x59\x6d\x0d\x49\x40\xd4\x8a\xb2\xce\xd7\xd4\x5a\x7f\x80\xde\xbc\x96\x20\x51\x51\xfe\xd8\xb4\x62\x3a\x50\x29\xa6\x83\x8d\x2b\xa6\x16\xc1\x11\xea\xa6\x0b\x6c\xa9\x25\xf3\x41\x61\xb5\xbf\x97\xa8\xd5\x8a\x75\xb9\x9e\x51\x1f\x2c\xa7\x49\x7a\xae\xc4\x32\x60\xea\xc9\xca\x2b\x82\x5e\x52\xf4\xeb\x45\xcf\xe7\x0f\x76\x34\x73\x4f\x82\x70\xae\x9d\x61\xfa\x6c\xff\x8c\x1e\x34\x73\x30\x34\xe5\x09\x91\x0f\x3e\xbf\xfb\xf4\xf1\xd7\xf7\xe7\xe7\x3f\xbd\x7b\xf9\xeb\xf8\x53\x18\xdc\xba\x0e\xd4\xbe\x87\xd0\xb9\xb4\x27\xd7\xcf\x6a\xda\xc9\x68\xaa\xc4\xb7\x5a\xaa\x1b\x37\xea\x92\xa2\xb5\x41\xe9\x6b\xeb\x16\x0f\x23\x48\x4a\xfb\x46\xfa\xa6\x25\xc1\x74\x43\x92\x4a\x1b\xdf\xaa\x29\xf2\xa9\x3d\x1c\xe2\x4a\x39\x3e\x39\xcb\xc4\xd1\xad\x31\x2e\xae\xa2\xac\x86\xb5\x93\xb6\xc3\x12\x12\xd8\x6a\x72\x88\x2d\x95\x79\xac\x65\x38\x8c\x8b\x8b\x5e\x3f\x65\x97\xeb\xa7\xfc\xe7\xd9\x40\xd3\x10\xc6\x3a\x50\xcd\xfd\x20\x2b\xd1\x74\xc1\x45\x92\x29\xc1\xed\x82\xec\x1a\x4f\x99\x58\x87\x34\x53\x61\xaf\x91\x55\xbb\xf5\x45\x5f\x49\xe1\xab\xc8\xbe\x64\x59\x2d\x7a\x47\x97\x42\x5a\xbd\x60\xea\xfa\x99\x80\xdf\x6b\xf8\x40\x92\x23\xd5\x21\xbf\xfc\xee\x89\xe7\x4e\xae\xeb\xad\x22\xb9\x8f\xe9\xc8\xd8\xb3\x60\xaa\xb9\xea\x1a\xa4\x05\x1f\xaa\xfe\x68\x9c\xfc\x91\x62\x55\x8e\x95\x11\xf8\x3c\xbb\xe5\xdb\xc0\x0f\xe6\x90\x79\xc7\x44\x12\xa9\x63\xa0\xc5\x6a\x8c\xca\x27\xd8\xc7\xd6\x7e\x8a\xe1\x33\x94\x8f\x22\xae\x61\x9a\xc2\xfe\x10\xba\x41\x46\x4f\x83\x45\xac\xee\xb8\x49\xd8\xc0\x57\x8a\x21\xd4\xc4\xf4\x9b\x6e\x96\x47\x34\x14\x68\xa9\xec\x94\x0d\x7b\x4d\x2a\x11\xa0\x7e\xc5\xe5\xb2\xe6\xf0\x54\xf5\xd6\x1e\x44\xd7\x94\x7f\xec\x38\xbb\x8c\xb0\x50\xbf\x26\x0b\x29\x65\x82\xfe\xfa\x5c\x02\x95\x86\xbc\xf6\x7a\xd0\xc5\x2d\x62\x0e\xbe\x5c\x20\xc4\x6a\x2b\xd3\x7c\x0a\xb2\x71\xaa\xbd\x87\x5d\x60\xf5\xc6\xe9\x6c\x0a\xe1\x03\x55\xf7\x58\xfc\xef\x24\xf0\x91\xeb\x2f\xa0\x76\xe7\xa2\x59\xb0\x40\x9a\x17\x4c\xa7\xae\x8f\x17\x50\xd5\xde\x37\x5f\x59\x56\x6f\x05\xb1\xd5\xea\x56\xf6\xca\x6f\xce\x9d\xbf\xfe\x83\xf9\xf5\x00\x4a\x0e\xa0\xa3\x17\x7d\xfe\xe0\x15\xa5\xd9\x9a\xe3\x5e\x11\xd0\x13\xa4\x11\x33\xf9\xeb\x61\xf4\x7c\x87\x91\xb5\x8e\xc3\xc8\x7a\x3d\x8c\x52\x87\x51\xe7\xdf\xe3\x30\xea\xac\x70\x18\x1d\xd5\xb4\x9e\x7d\x2d\xd7\x85\xd4\xe6\x57\x0a\xbb\xc3\xff\xce\x82\x69\xb0\x40\xcf\xbe\x3e\x56\x73\x6a\xa8\x7c\x1a\x8d\x5d\x1a\xa2\x8d\xa6\x0b\x08\xba\x3c\x39\x0e\x80\x7e\x4c\xaa\x65\x06\xe1\xfb\xd3\xb5\xa5\xd7\x24\x04\x92\x12\x18\x39\x30\x81\x1f\xf8\x65\x99\xa9\x45\x24\xa7\x18\x8d\x0d\x43\xcb\x85\xae\x55\x5d\xab\xe9\xb6\x0f\xf3\xdb\x6e\x96\x5e\xa5\x6a\xe4\x40\x70\x2c\xd9\xfe\x14\x86\xc1\x82\xef\xb3\xdf\xf2\x1d\x71\x9c\xc6\xff\x4f\xf6\x44\x2a\x93\x05\x0b\xb4\xf6\x38\x78\xb1\xa3\x5f\x33\xce\x8b\xfe\xab\xb8\xb0\x93\x6e\xae\xb0\xc0\x2b\x7d\x22\x7b\xfb\x00\x1c\x56\x9d\xf4\xb5\xda\xd1\x07\x60\x7f\x3d\x1a\x49\xf6\x76\x0f\xf4\xcb\x86\xa4\x38\xd0\x40\xb9\x86\x94\x31\x26\x57\x5f\x3e\x05\x4b\x38\xe7\x96\xe2\x72\xde\xa5\x0e\xcd\xa4\xd7\xb3\xd1\xfc\xd6\x21\xe8\x1e\xe4\x00\xb1\xa8\x3f\x74\x15\x04\x28\x83\xcd\x32\x09\x68\x98\x85\x7f\x15\xe4\xec\x84\x2a\x6b\xbe\xa5\xb6\xb0\x9f\x7c\xfc\xf4\xcb\xe7\xf7\x7f\xfd\xe1\x4b\xca\x25\xc9\xc2\xf5\x71\xab\x24\xf7\xde\x0f\xb0\x8e\x05\x43\xcd\x0f\x42\x78\x05\xc3\x30\xe9\x56\x2c\xcc\xfe\x7a\xe9\xd9\xfe\xb5\xd8\xa7\xff\xff\xff\x2f\x8e\xb1\x2c\x6a\xfa\x97\x77\xc7\x9f\x05\x4b\x2b\x9e\xb1\xd8\x9f\x58\x34\x21\xe9\x34\x5c\x6a\x33\x2b\x68\xf2\xe7\x77\x9f\xcf\xdf\x7f\xfc\x20\x5a\x75\xf3\x3f\x5d\x81\x7a\x59\x57\xbc\x44\xb4\x19\xf4\xe6\x5a\x33\xca\x49\xfe\xf1\x02\x1a\x74\xa5\xb2\x44\xfa\x3f\xef\x7b\x93\x9d\x76\x5b\xd3\x95\xc3\xff\xeb\xfb\x2f\xbf\x9e\xff\x70\x9c\x4c\x73\xbb\xfd\xcf\xfb\x1e\x94\x49\x2f\x73\x65\x21\x12\x18\x2d\xb0\xc2\xe1\xc0\x3c\x32\x14\xe2\x18\x89\xfd\x22\xd0\xbf\xa5\x1c\x3b\xb1\x49\x6a\xc9\xbf\x92\x1a\x2b\xb3\x10\x5e\xb5\x69\xf9\x15\x67\x12\xc5\xa5\x58\xa2\x20\x44\xed\xcb\x07\x1d\xe8\x6d\x52\x18\xa5\xcd\x0b\xb8\x40\x7b\x12\xbf\x86\x02\x3d\x01\x34\xc0\xd4\xfe\x0d\x4e\xd8\x5b\x13\xdb\xa7\xc9\x4f\x1f\xe2\xdb\x6e\xd4\x26\xee\x58\xcc\xc5\xa4\xda\x8b\xef\xe8\x40\x9f\x12\x88\xe4\x5a\x88\x65\x6a\x30\xad\x8d\x43\x96\x39\xae\xf3\x9e\x60\x3a\x33\xc4\xcb\xa1\x54\x62\xdf\x8d\xcc\x5f\x09\xda\xa8\x1a\x24\x11\xc4\xd8\x65\x61\x10\xa0\x96\x61\x12\x98\xdf\x33\x37\x42\x66\x08\x6f\x82\x5b\xd8\xd2\x39\x36\x57\x1b\xeb\x2e\xed\x5b\x18\x22\x77\x62\x7b\x54\xbe\x37\x96\x20\x4d\xd1\x54\x8d\xf3\x96\x3e\x87\xe1\x8d\x4b\xb0\x26\x23\x5d\x02\x92\x4d\x17\x04\xa1\x38\x6a\xc2\xe3\x4f\x4f\x17\x63\xc3\xbc\x72\x7d\xa7\xa5\x02\x4e\x0b\xe6\x14\x74\x99\x00\xa8\x99\x9f\x21\x4d\x68\xd8\xdd\xd5\xef\x42\x17\x41\x7a\x95\x8a\xa0\xbb\xbb\xd0\x3c\xf6\xbc\xe0\x6e\x69\x10\xec\xc5\x18\xda\x4d\xf2\xe6\x48\x68\x6b\x90\x57\x3e\x77\xdc\x68\x6e\xa3\xc9\x8c\x56\x20\xf7\xe1\x9d\xf6\x63\xb0\x88\x58\x41\x72\x9d\x8a\x4b\x86\xb1\x04\x78\x19\x67\x48\xcf\xd5\x74\x93\xa0\xee\xb5\x30\xb9\xbc\x20\x82\xf9\xcf\x91\x0a\xf5\xf8\x39\xc1\xe3\x97\x45\x9e\x23\x96\x24\x93\x7c\xaa\x95\x2e\x88\x0e\x71\x23\x59\xc4\x3a\x0a\xbb\x16\xcf\xf6\xad\x0b\xef\xe6\x41\x88\x5a\x98\x2f\x53\x3c\x00\xc2\xe4\x0a\x83\x48\x6d\x51\x83\x8a\xf1\x26\x26\x0b\xc1\xb8\x81\xce\xdb\x96\x2f\xb0\x8c\xed\x38\x25\xfc\x02\x42\x33\x42\x0f\x1e\x34\x29\xa2\xd7\xc8\x97\x7f\x22\xd3\xf5\x7d\x18\xfe\x40\x7e\xfd\x59\x9f\xdf\xeb\xc6\x50\x6a\xa1\x12\x53\x96\x34\x82\x77\xb3\x26\x58\x79\xd0\x76\xda\xec\x74\x95\xb1\xc6\x93\xc7\x79\xb7\xe8\xd3\x59\xc4\xf1\xf5\xc0\xe7\xf1\x9d\x24\xbb\x57\x08\xf0\x85\x37\x81\x03\xbd\x9c\x8d\x83\x0c\x85\xa4\xe0\x18\xc0\xb3\x1f\x82\x05\x1a\xc6\x48\xa6\xcb\x34\x55\xde\x94\x53\x85\x7e\x43\x26\x0a\xc4\x2d\xb7\x27\x9e\xdb\xc6\x8f\xe4\xbd\xb2\x3a\x85\x72\x5f\x88\x53\x16\x1f\xe5\x02\x34\x39\xd8\xaf\xf1\xf8\x97\xe5\xf0\xac\x33\x68\x7b\x68\x46\x96\x40\xdb\x73\xa3\x2d\x29\x8a\x70\xbb\x7f\xf2\x3f\xa7\x7f\x9f\x9c\xa9\x61\x13\x39\x50\x20\x2d\x85\xa0\x2c\x79\xc0\xb1\xa1\x14\xf5\xdb\xf4\xbc\x98\xd7\xc4\xb8\x60\x75\x72\x72\x85\x8e\x58\x32\x52\x39\xee\x4f\x49\xf9\xbf\xfc\xb8\x17\x5d\x9c\x91\x60\x81\xe6\x0b\xa4\xe9\xb1\xbe\x7a\x8e\x6c\x44\x74\xdc\x02\x77\x3d\x6f\x20\x1f\x1f\x2b\x36\x89\x27\x88\x88\x2a\x2b\x43\xfc\x58\x2f\x7e\xc4\x8a\x7b\xa2\x4c\x75\xad\xa2\x5c\xe0\x9e\xe5\x93\x3e\x5b\xaf\x8f\x0d\x9c\x2e\x78\x1e\x59\xa2\xe7\x07\xc9\x54\xcc\xeb\x8d\xfb\x82\xf4\x54\x5e\xc6\x07\xa6\x9c\x2b\x15\xa7\xf8\x35\x47\x45\x93\xc0\x59\x47\xfa\xaf\xba\x6b\x12\x05\x9a\xf4\x4e\x26\x61\x7d\xa5\xb2\xee\xa4\x96\x0d\x88\x54\xc4\x7d\x7f\x5a\x77\x30\x49\xd9\x4e\x3e\xb0\xf8\x43\x58\xd0\xaf\xa0\xf2\xac\x71\x0c\x5f\x48\xb9\xc9\xea\x03\xc8\xd1\xc3\xe3\x39\xa2\xdf\x53\x65\x71\x76\x15\x39\x91\xfb\x72\x21\xd5\xd4\x47\x80\x58\xfe\x94\xe0\x87\x62\x65\x20\x9c\x4f\x94\x25\x4c\x1b\x59\x35\xf9\x08\xe1\x0d\xd7\xf4\x48\x3e\x2e\x0a\x02\x0f\xb9\xb8\xb9\x77\xf7\xf3\x20\x82\x54\xc4\x8a\x34\x37\xd2\x22\x88\x34\x14\x68\x28\x5c\x40\x82\xfe\x64\x7b\x9e\x16\xc2\xa9\x1b\x21\x18\x42\x47\xfb\xe1\xcb\x97\x4f\x9a\xed\x3b\xda\xf4\xf3\xa7\x13\x8d\xbc\xa6\xcd\x6d\x34\xa3\xe8\x51\x90\x7c\xcd\xd1\xd0\x2c\x0c\x16\xd3\x99\xf6\xce\xbf\x0d\x1e\xb4\xab\x20\x24\x50\x51\x4c\x29\xb6\xa7\x58\x8c\x10\x29\x4e\x3b\xe1\x34\xb2\xa3\x54\x37\x93\xac\xc4\x47\x1f\x02\x54\x90\x0f\x56\x79\x25\xb0\xcf\x7c\xfd\x75\xf0\x91\x1c\x54\xab\xad\x04\xc1\xd6\x11\x26\xa6\x6f\xfc\x7b\x42\xf6\xd5\xcc\x86\xc6\x1b\x8d\xc7\x98\x6b\xad\x66\x96\xd8\x49\x30\x7f\x68\x33\xbf\x17\x37\xc5\x72\x6c\xef\x6f\xc5\x3a\xda\xd2\xd7\x81\x1e\xc4\x7f\xe6\x18\xd1\xeb\x70\x49\xb9\x85\x4d\x61\x26\x14\x59\x33\xf3\x74\x9d\x12\x4a\xb2\x85\x82\xd8\x35\x28\x52\x74\xb6\x7a\x2c\x5b\x6d\xb1\x1d\x01\x8b\x5d\x51\x8e\xb9\xa2\x8e\x6d\x41\x29\x71\xae\x6c\x5b\x48\xf4\x85\xba\xda\x90\x7b\xfb\xd0\xc6\x1c\x76\xe3\xd2\x3a\xec\xa2\xe8\x2f\xdf\x2b\x78\xeb\x65\x4a\xff\xbf\xfd\x7f\xec\xbd\x79\x7b\xdb\x36\xb6\x3f\xfe\xbf\x5f\x05\xcd\x99\x9f\x4b\x7e\x03\xc9\x92\x97\x2c\xca\xb0\x89\x9b\xa4\xd3\xcc\x64\x9b\x38\x73\x7b\xe7\xaa\xba\x7e\x60\x11\xb2\x98\x50\xa0\x0a\x42\xb6\x55\x5b\xef\xfd\xf7\x60\x25\x48\x82\x14\x29\x2b\x4d\xd2\xdb\xfb\xcc\x6d\x2c\x2e\x20\x96\x83\x83\xb3\x7c\xce\x39\x57\x54\x26\x4f\xb0\x15\x9e\xca\x5e\x59\xd0\x28\x4e\xf7\xc3\x64\xb6\xcf\xd3\xb4\xab\x84\x0b\xbf\xbb\x52\x48\xd0\x3c\xa9\x50\x04\xd9\xad\x34\xa2\x09\x59\xee\x27\x51\x38\xee\xcc\x05\x5e\x9f\xb8\x3e\x68\x91\x29\x5f\xd9\x1e\xcc\x89\x5d\x81\x04\xf3\x02\xa6\xf9\x8b\x11\x8e\x36\x31\x50\x9d\x31\x9a\x47\x18\x91\x34\x33\x4d\xe8\x4b\x9e\xbf\x02\x57\x51\x1c\x3f\x47\x29\x25\xc9\x72\x73\x33\x18\x9b\x8d\xbc\x55\x25\xfb\xae\xb2\x3c\xf8\xab\x5a\x83\x5b\x56\xf9\x75\x87\x37\xa0\x6c\x52\xc6\x8f\xfc\x17\xc4\xb5\xc0\xeb\x01\xda\x9d\x90\x64\xf6\x8e\x24\xb3\x28\x45\xbe\x97\xf5\x68\x12\xe1\xf0\x59\x12\xa2\x1f\x96\xff\x7e\xff\x4a\x5c\x4f\xc9\xd8\x2f\x77\x11\x86\xa1\x67\x34\x0a\x6e\x66\x28\x4d\xa1\xb9\x2e\x66\x35\x2b\x6d\x31\xa2\xfe\x0a\x14\x96\x2a\xff\x1c\xbf\xc9\x1e\x5b\xb1\xff\xb5\x62\x13\xac\x73\x9d\x71\x12\xc7\x88\x37\x6c\xdb\x30\xd2\x50\x90\x3d\x63\xbc\x5e\xbc\x67\x7b\x5c\x58\x12\xd2\xfd\x39\x22\x63\x84\x29\xbc\x40\xec\xee\x62\x86\xcd\xc6\x85\x31\xb2\xc3\xed\x40\xae\xe9\x5d\x4c\x8b\xfb\x51\x94\x96\xde\xd6\xae\x4c\xea\x55\xf6\x1f\x5f\xff\xfa\xbe\xd7\x4f\xe6\xb5\x2a\xbb\x42\xaf\x8f\x11\x4f\x7c\xbd\x97\xe9\x6c\x4d\x94\xf9\xac\xe8\x7b\x61\x2d\x9c\xc2\xef\x4e\x3a\x26\x49\x1c\x77\x44\xfd\x90\xfe\x43\x59\xfd\xe8\x10\x1c\x8b\x0b\x8f\x46\xa2\xb9\xbe\xa8\x2f\xd2\x1b\x09\x53\xc1\xb1\xd5\x93\x75\x54\xae\xee\x2a\x24\xf2\xe3\x62\xf2\x14\x99\x22\x0e\xb8\x97\x11\xa1\x0b\x18\x6f\xac\xa3\xe6\xfd\x3a\xfc\x70\x77\x09\x4a\xa3\xdf\x2c\x65\x3f\x45\x4c\x45\x6a\x86\x53\x94\x9c\x1c\x52\xfc\x11\x14\x84\x21\x8d\x2e\x91\x9c\x22\x76\x96\x18\x60\xad\x8b\x37\x12\xa5\x25\x8d\x83\x1d\xf1\x4d\xf7\xa9\x9c\x50\x9e\x61\x2a\xfb\x49\xd9\x72\xab\x5f\xcf\x74\xb2\x9d\x71\x1c\x21\x4c\x4f\xa3\xdf\xd0\x33\x1d\x2a\xe2\x2e\x62\xb9\x1a\x47\x22\x4e\x84\x87\xdb\xb0\x7f\x0d\x25\xc6\x1c\x53\xae\xd1\x22\x24\x32\x57\x92\xa6\xfc\xb5\xf6\xae\xfc\x82\x51\x46\x67\x3a\x6f\x68\x0f\xea\x3f\xd8\x44\x99\xca\x59\x81\xca\x10\xae\xc2\x20\x73\x31\x1a\x07\x1c\xe5\x72\x78\xc0\xc3\x6f\x04\x2b\x10\x62\xb0\x69\x4e\x32\x09\xd4\xcc\x01\xd4\x1b\x95\xd2\x1c\x1d\xca\x81\x1c\xe4\x60\xa7\x7c\x0c\xb9\x2c\x05\xea\x93\x91\x80\xdb\x14\x73\x18\xc4\x11\xfe\xc4\x49\xaa\x36\x9a\x44\x92\xe3\x32\x42\x71\x78\x47\x08\xa8\x69\xe7\xe2\x38\x90\x82\x49\x8b\xef\xdf\x61\xa1\xd7\xd9\x28\x44\x05\x0f\xa5\x40\x34\xc2\x19\x34\xe8\x7c\x88\x28\x8c\xe2\x06\x88\xbf\x52\xef\xc5\x9b\x5f\xae\xf7\xc0\x7d\xca\xdb\xe0\xaa\xa8\x46\x2e\x16\x52\xed\x19\x5e\xd8\x59\x42\x50\x27\x07\x93\xe3\x8d\xa1\xeb\x39\xc4\x21\x57\x1d\xf2\xe1\x62\x65\xba\xcc\x18\x67\xdf\x32\x32\x49\x57\xdc\x5a\xc0\x55\x99\x5a\x46\xa0\xcb\x1b\x58\x5b\xb9\x43\x1a\xa7\xa2\x45\x95\xaf\x95\xc6\x75\xd6\x9b\x76\x1a\x2f\x61\x63\x9d\xb2\xc1\x42\xbb\x76\x92\x38\xb4\x26\x56\x5a\x9b\x14\xd2\x6e\xad\xac\xb4\xa3\x5b\xf8\xe9\x11\x38\x66\xb3\x97\xce\x63\xb8\x1c\x38\x38\xc1\xe8\xf1\x46\x7c\x76\x23\xbb\xfb\x1d\xd8\xec\xef\xc1\x4e\xfb\xdf\x12\x17\x95\x9b\xf4\xe0\x1b\x60\x99\x9f\xa3\xab\x5b\xe2\x8f\x36\xa6\x58\xc5\xc9\x0e\xbe\x16\xfe\x95\x9b\xcf\xdf\x81\x59\x65\xd0\xb8\x26\x46\xdb\xc6\xb5\xfc\x70\xc2\x85\x56\xbd\xc7\xa4\xfd\x4b\xea\x55\xca\x26\x66\x16\x41\x15\x1a\x96\x5c\xf7\x7a\x33\x98\x2c\x98\xc3\x4f\x3e\x6e\x60\x4b\x70\xe7\x2a\xc2\x61\x72\xe5\x02\xf7\x4c\x0a\xd5\xa7\x42\xa6\x3e\x13\x12\xee\x2b\x21\x52\xcb\x5f\x1f\x78\xe7\xce\x98\x7e\xc4\xbe\x21\x2e\xb2\x3f\xa4\xb6\x77\xb1\x88\xc2\x36\xc6\x36\xab\xd2\xaa\x6d\x6d\x69\x80\x95\xa6\x67\x54\x52\x9e\x24\x64\x06\xe9\x4b\x8a\x66\xa7\xec\xab\x20\xae\xb5\xc8\x25\x40\x5b\x9c\x94\x99\x06\xaa\x0b\xa0\x4d\x91\x42\x01\x69\x18\x1c\xf7\x7a\x80\x0d\x5f\x00\x27\x06\x0f\x7a\x80\x8f\x7d\xe0\xf5\x00\xd1\x25\x4a\x3d\xf7\x02\x51\xde\x3b\xd7\x07\x72\xca\x07\x9c\xbd\x8a\x19\x1b\x68\x15\x6c\x53\x33\x8d\xd4\xbb\x83\x61\xbf\xd7\x1b\x89\x4b\x6c\xee\x33\x9b\x0d\xfb\x25\xaa\x3e\xd7\x9b\x51\x1a\x7e\xef\xaf\x12\x9e\x62\xc1\xab\xfc\xc5\xed\x0a\xab\xad\xa7\xbb\xe1\xfb\x99\x92\x19\x04\xe2\x1d\x31\x72\x69\x9f\x91\x9b\xbb\x2b\x34\x43\xf3\xc3\xc3\x1b\x01\x7b\x19\x58\x00\x34\xab\x91\x18\xcc\x7b\x34\x46\xd1\x25\x3a\x61\x2a\xf9\x26\x26\x2e\xb6\x7e\xaf\xb8\x2d\x83\x77\x6d\xc8\xf5\x7d\x8d\x93\x08\x30\xba\x72\x34\xe1\x79\x82\x3c\x2e\x90\x18\x9e\xdc\x5f\xb2\xda\xba\xeb\x83\xe2\x6d\x65\x10\xb1\xdc\xd1\x54\xe3\xfa\xa2\xf2\xae\x61\xbe\x2a\xf4\xa1\x48\xe4\x81\x69\x2f\x12\x36\xc8\xb4\xbe\x2a\x37\x52\xb8\x21\x36\xff\x7b\x7b\x1e\x0e\x5c\xbd\x4e\x18\xb8\x8f\x7f\xeb\xf0\xbd\x36\x70\xfa\xae\xef\x03\xbc\x5a\x01\x45\xb2\x25\x58\x99\x2a\x09\x58\x46\x94\xe9\x45\xde\xcd\x2d\xf2\x93\x9b\xd5\xe0\x46\xee\x97\xe2\x2c\xc8\xc6\xfc\x55\x0e\x1d\x26\xe8\xc0\x02\xa3\x2a\xbe\xce\xb7\xa5\xa6\xbd\xef\x04\x2e\x77\x48\x92\x18\x05\x79\x3c\xee\x77\x66\x05\x74\x09\xbc\x52\x44\xcc\xda\xfb\x21\x59\xe0\x30\xc2\x17\xcf\xb8\x7a\xfe\x1e\x8d\xa9\xe7\x77\x69\x32\xbf\x47\xbb\x42\x63\x97\xc8\xa8\x3e\x20\x81\x86\x62\x19\x90\xa9\x0e\x96\x66\x47\x44\xb3\x19\x7a\x0d\xe9\xb4\x3b\x83\xd7\x8c\x19\x28\xab\xe1\x62\x1e\x42\x8a\xd8\x4a\xa6\x5e\xee\xd2\x29\x9f\xab\x77\x32\x5e\xc7\xf3\x57\x2b\x30\x2e\x81\xe3\xcc\x7a\xc9\x6c\x33\xf0\x27\x7e\x8c\x48\x4a\x4f\xf0\x78\x9a\x10\x0f\x01\xb7\x5b\x34\x37\x7d\xef\x2c\x62\xe7\x7b\x27\x8e\xdc\x3a\x84\x9a\xa6\x19\x49\xcc\xdf\xf7\xf7\xf6\x34\x42\x50\xdf\x1c\xf6\x47\x4f\xcc\x1f\x83\x9b\x15\x9f\xd8\x02\x3a\x6d\x6f\x0f\xed\x96\x16\x4b\x1d\x36\xbe\x7f\x23\x6e\xa5\xa5\x5b\x60\x0e\x49\x8a\x5e\x62\xea\x21\x35\x61\x7f\x25\xc9\x55\x60\x0c\x38\x49\x51\x4a\x3d\x26\x22\x03\xf5\x55\xe3\x49\x09\x38\xfb\xed\x25\xa3\xe6\xa0\xbf\x63\x2c\x37\xaf\x13\x1b\x9d\xc7\x11\xbe\xd0\xfd\x15\x42\x86\x0f\x48\x80\xab\xa8\x00\xc0\x80\x70\x4a\xc0\x39\x4a\x00\x49\x99\xf7\xd5\xd2\x1f\x48\x83\xa4\xf2\x1b\x71\x90\xb2\x6f\xec\xc0\xef\xe3\x27\x25\x5c\x1f\x3c\x4f\x2e\x91\xeb\x0f\x6c\x70\x3c\x79\x8f\xd7\xe6\xe7\x0b\x19\xad\x1d\xec\x4e\x54\xdd\x0e\xa8\x5c\x18\x8e\xdd\xab\x9a\x67\x76\x73\x55\x04\xf6\xc5\x6b\x6d\xd4\x33\xb8\x3c\x47\x9d\x08\x77\x54\x3d\x78\x8b\x79\xba\xf8\x4c\xed\xfb\xdf\xa6\x5b\x8b\x49\xda\x9d\x39\xc4\xc8\x52\x05\xb8\xd6\x62\xbe\x6d\x0f\x56\x85\xad\xfc\xd5\xc1\x72\x9e\x62\xf2\xa6\xa2\x2a\x30\x2f\x94\xdb\xc4\x36\xfe\x10\x1c\x54\x19\xa7\x4d\x05\xf5\x30\x53\x93\xcb\x7a\xc7\x41\x59\xef\x28\x2a\x1c\x2d\x54\xb2\x63\x6d\xa2\xcf\xd6\xc0\x11\x86\xdf\x9e\xb4\x54\x15\xb1\x78\x6b\x34\x43\xb6\xe9\x49\xd2\x44\x35\x2c\x58\x1f\xd8\xe4\x48\xc5\x25\x6f\x0b\x6f\x9a\x36\xdd\xa8\xd7\x53\xab\x50\xaf\x05\x9c\x15\xd5\x2f\x2b\x60\xaf\xa2\xbb\x8d\xc2\x7f\x8a\x06\x9a\x3a\x60\x0b\x6f\xae\xaf\xcc\x36\x07\x59\xb4\x8d\x2e\x22\xfa\x80\x9b\x2f\x2c\x06\x9d\x35\x2b\xd5\x26\x90\xb3\xd9\xc0\xd7\x28\x8f\x0d\x80\x10\x16\x14\x45\xad\x9a\xa8\xa3\x7b\xf3\x43\xcd\xd4\x47\x19\xd3\x11\x23\xda\x46\x0d\x2b\x32\x24\xad\x81\x91\x5a\xdd\x0a\x57\xa1\x1d\x68\xa6\x61\x19\x1a\xd4\x3a\x65\xab\xae\x0c\xbc\x10\x59\xb4\x20\x76\x81\x28\x93\xfe\xa3\xf3\x05\x45\x9e\x1b\x85\x6e\x0e\x5c\xaf\x55\x93\xe1\x24\x21\xc1\x77\x99\x7e\x02\xdc\xef\x46\x4c\xdc\xb5\xc1\xee\xc5\x21\xce\x66\x62\xe4\x02\xdc\x9d\x43\x82\xb0\x52\x98\x98\x4c\x50\x96\x48\xba\xd9\xb4\xb9\x80\x70\x79\xb3\x08\xda\xf7\x6f\x14\x40\x5e\x5a\x17\x03\xc1\xde\x5d\xe9\xb2\x24\xdd\x64\x32\x49\x91\x12\x36\x0f\x76\xa0\x7c\x7c\x06\xaf\xc5\xb5\x40\x5f\x89\xb0\xbc\x92\x09\xf2\x09\xe0\xc0\x7d\x2e\x0c\x38\xc5\x2f\x71\xee\x50\x6e\x2f\x7f\x39\x6b\xb4\xe7\x16\xcf\x73\xb2\xfe\x20\x33\xb2\x8c\xac\x3b\xca\xca\x78\x0d\x79\xe8\x08\xd7\x60\xc1\x33\xec\xdf\xa8\xdf\x0e\x31\xe4\x60\x93\x24\xa2\x89\x77\x42\x08\x5c\x76\xa3\x94\xff\xcb\x24\x48\xf9\x18\xf4\x90\xbf\xf2\x90\x7f\x7b\x5b\x78\xc1\x5d\x60\x31\xa0\xd0\xdd\x0d\xe8\x72\x8e\x92\x89\x73\xca\x8f\xb6\xbd\x3d\xf1\x6f\x37\xa2\x22\xd6\xc5\x89\xb0\x23\x4e\x5b\xa3\x61\xf1\xc1\x09\x49\x66\x96\x2f\xb0\xf3\x39\x9a\x78\xbb\x48\x3e\xcd\x08\xc2\x4d\x29\x89\xf0\x85\x1b\xa8\xaf\x21\xa3\x8f\x80\xfa\xf2\x38\x96\xc7\x7a\x66\xe4\xa0\xc9\x29\x7f\xb1\x3b\x86\x71\xec\x21\xbf\x9b\xc6\x6c\xa7\x3c\x04\x9d\xbe\xbf\xe3\x8a\xc7\x99\x6a\x8d\xf7\xf6\x10\xa3\x86\x94\x92\xc5\x98\x26\x84\x6b\x7a\xb9\x2b\x5d\xc6\x00\x39\x71\xba\xaf\xe1\x9c\xbf\x73\x7b\xeb\x9e\x22\xf1\xba\x75\x60\xfc\xe1\x13\x25\xf4\xcb\x57\xf6\xff\xd7\x7b\x32\xf8\x77\x74\xfb\xd2\xc7\xd4\x7b\x32\x78\x78\xdb\xbf\x7f\x7b\x78\xe0\x7b\x4f\x06\xcf\x62\x38\x9b\xa3\xd0\x7f\xc2\x1b\xf9\xeb\x7e\x97\xb2\xed\x81\xfd\xfc\x48\x0b\xb3\xc5\xb4\x75\x92\x5c\x39\x4c\xd9\xfe\xb0\x9c\xa3\x17\x1c\xf9\xe0\xbe\xc4\x97\x30\x8e\x42\x07\x52\x46\x1d\x1c\x8b\x99\xce\x09\x82\xa1\x83\x13\xdc\xe1\x6b\x73\x1e\x23\x27\xc2\x29\x85\x78\x8c\xba\xbf\xe0\x97\xd8\x49\x48\x88\x08\x7b\xf4\x1c\x39\xea\x11\xc0\x5f\xe0\xd6\x2f\x27\xe1\xd3\x95\x3a\xb3\x45\x4a\x9d\x29\xbc\x44\x0e\x74\x86\x85\xe5\x1e\x79\xbe\x33\x43\x74\x9a\x84\x5d\xd7\x5f\x79\xfe\x4a\xd3\x9f\xe8\xfe\x8d\xc7\x36\x4e\x10\xd0\xdb\x5b\xfa\x3d\x92\x2a\x93\xbf\xb7\xe7\x31\xae\x24\x7f\xed\x4c\x12\xe2\x89\x05\xed\x31\x0d\x03\x5d\x89\x79\xf5\xa8\xff\x18\xff\x8d\x3e\xc6\xf7\xee\xf9\x64\x88\x47\x01\x1a\xe2\x91\x52\xd4\xc9\xea\x77\xc1\x3f\xc0\xdf\xd2\x47\xf7\x7e\xdd\xff\x64\x97\xe9\x9a\x48\x73\xb9\xdc\x1d\x77\xf0\xf7\xbb\x2a\x7b\x05\xa1\x3c\x49\x4f\x2e\x13\x8b\xb0\x4a\x87\xb0\x45\xd0\xb9\x3c\xa5\xfb\x45\xf0\xa3\x92\x24\xf2\xb1\x16\x47\x60\x78\xf8\x30\x27\x55\xca\xcf\xa9\xd7\x2b\x3c\x45\x59\x49\xf3\x63\x89\xcb\x38\x94\x31\xa6\x87\x59\x13\xdc\x83\xc3\x21\xc6\x5a\x8d\x92\x21\xab\x47\xe0\x68\xa4\x3c\xe0\xae\x71\x93\x5f\xaf\x2a\x80\x6e\xb1\xb9\x17\xb3\xa4\x10\x18\x46\x49\xde\x57\x55\xee\x7b\x66\x57\x57\xc2\x94\x4c\x0c\x35\x32\x8a\x7b\xcb\x9c\x49\x2e\x25\x0b\x7b\x62\x07\xed\x33\xb3\x54\x2c\x67\xef\x9e\x8d\x75\xc5\x71\x6b\x25\xf6\x75\x62\x66\x93\x27\x1a\xc7\x86\xb4\xee\x6e\xc3\x8a\xe9\x5b\xf2\x68\x55\xa2\x8b\x19\x1d\x9b\x8e\x68\xad\x18\xa9\xbe\xd9\xdd\x82\x46\x5e\xae\x91\xdd\x5d\xdb\x22\x51\x41\xe5\x14\x34\x59\x9f\x46\xd3\xb4\x79\xce\xa8\x6f\x67\x92\x8c\x94\x01\x1b\xcd\xd3\x1a\x5f\xde\xfd\x46\xc3\xbc\x43\xd6\x90\xaf\x7d\xa6\xad\x97\x2d\x17\x4b\x97\x1a\x28\xac\xeb\xd4\x30\xad\x6e\x99\xfe\x33\x19\xd9\x2e\xd6\x2e\xf3\xb3\x49\x8d\x2c\xe7\xa5\x6b\xa3\x9a\x95\x44\x6c\xc3\x3d\x56\xef\xf8\xda\xaa\x72\xa6\xbc\x58\xbb\x3d\xe5\x09\xe3\xb4\x20\x3a\x26\xfe\x4e\x2e\x11\x99\xc4\xc9\x15\xb7\x75\xc2\x34\x1d\xb8\xc6\x15\x8e\x5d\x2e\x46\x64\xaf\x80\xc8\x3f\x98\xbf\x76\x96\xbf\x24\x24\xf7\x4a\x3b\xe5\x6e\xcf\x07\x42\x34\x13\x2a\x9a\xe8\x9d\xf4\x33\x49\xed\xae\x14\x94\xad\x0d\xb8\xd2\x74\xab\xce\x43\xe7\x7b\x27\x8c\x2e\xc5\x7f\xbf\x03\x59\x04\x38\x57\x2f\xab\x8c\xb9\x3b\xc5\xbe\xa9\xb4\x8b\xb4\x6c\x5e\x55\x9e\x02\x2c\xfb\xe9\xaf\x44\x9f\xa2\xf0\x64\x3e\x47\x90\x64\x41\xe6\x6c\x12\x78\x88\xb9\xbe\x57\x42\x3f\x3f\xf6\x9a\x7a\x0b\xa5\x36\xba\xb7\xe7\xa1\x62\x0c\x7a\x66\x1b\xf6\xbb\x30\x0c\x65\x33\x08\x10\xcf\xeb\x01\x9c\xb9\x34\x87\x2e\x0f\x00\x97\xa2\x8e\xef\xfb\x2b\x70\x56\x58\x50\xa5\xa7\x97\x26\x24\x5b\xac\xbe\xd0\x78\x94\x3a\xcd\x27\x8a\xa9\x1b\x50\xbc\x2a\x6d\xec\x45\x4a\xda\x81\x86\x05\x5b\x85\x80\x78\x89\xbf\xb7\x07\xcb\xa6\xed\xc4\x5f\x79\xb4\x6e\x94\xe2\x39\x35\x5f\xeb\x07\xaa\xc3\xfe\x39\x9a\x1c\x6d\xc5\x07\xc9\xd8\xc4\xde\x5e\xdd\x3c\x01\x93\x80\x25\x39\x6b\x67\x8b\xf8\x0a\x27\x11\xe5\x2f\xbd\x59\xad\xb6\xe3\xea\xdd\xd8\x37\x0b\x9a\xf7\xb1\x3a\x80\x80\x13\xf6\xce\xfa\xae\xd6\x13\x72\x6e\x89\x1b\xd1\x72\x9d\x2b\x32\x9a\x78\xb9\x6d\x64\x72\x13\xb1\x8d\x19\x09\x33\x26\xb4\x1b\x04\x79\x97\xa3\xa0\x70\x65\x70\x2a\xd1\x35\x6b\xf9\x7b\x9b\x7b\xd1\x37\x52\x76\xe4\xd2\x32\x68\xea\x27\xfe\xed\x6d\xd1\x73\x44\x7c\x7f\xa7\xe2\xe1\xbd\x3d\x8b\x37\x89\xf8\xab\x95\xd5\x43\x98\x79\xf2\x90\xca\x8e\xd3\xd5\xde\xbc\x27\xc6\xca\x22\x7f\x20\x7d\xea\x7a\x73\xd8\xf3\x6e\xe4\x21\x03\xa6\x04\xee\x6b\x4f\xf5\x6e\xcf\x70\x8b\xe7\xf9\x34\x57\xbf\x86\x6c\xd7\x04\x4a\xdb\xca\xf1\xe7\x1d\x23\xca\x42\x51\x1b\x5a\x95\x72\x4f\xa4\x0d\x4d\x5a\x31\x5c\x22\xb2\x36\xd7\x80\x36\x11\xd0\xf6\x26\x2a\xfc\x0d\x98\xa8\x70\x66\xa2\x22\x9b\x9b\xa8\x48\xd9\x44\x45\xd6\x99\xa8\x48\x66\xa2\x22\x0d\x4d\x54\xa4\xbd\x89\x8a\xf8\xf9\x91\x7e\xb3\x26\x2a\xfc\x6d\x98\xa8\x48\xbd\x89\x6a\x91\xfe\xf8\xd3\xaf\xe8\x9f\x76\x13\x55\xd9\x1e\x55\xa1\x88\x2a\xfd\x2b\x5f\x02\x3d\x67\xc1\x39\x02\xfd\xb2\x11\xa0\x6c\xc8\xd9\x96\x41\xa6\xa4\x7d\x68\xeb\x57\x47\x25\x1e\x2b\x28\x7e\xb3\x45\x4c\xa3\x79\x8c\x0c\x73\x18\x07\x99\x97\x53\x55\xb6\x89\xad\x95\x5a\x4b\x6b\xe5\xc3\x60\x86\x5a\xf7\x80\xb5\xba\x07\xd9\x38\xc5\x96\xa1\x91\x54\xba\x83\xfc\x1b\x09\x35\x33\x4e\x88\xd4\xfb\xae\x70\x3a\xf8\x7e\x77\x12\xc5\x14\x11\x6b\x46\x2b\x73\xf5\x77\x83\x00\x59\x3c\x4a\x2b\xd6\x42\x42\x5e\xc0\xf1\x34\xdf\x84\x30\x91\x05\xe5\xb7\x72\x96\x3f\x9f\xb1\x3d\xeb\x99\xe4\x97\x8e\x25\xd8\xe0\x58\x2a\x20\x75\xbf\x8e\x44\x38\x8f\x7e\x3d\xa1\xf8\xdd\x9b\x17\x76\xab\x72\xd6\x7f\x17\x14\x61\x03\xb5\xfb\x99\x03\x80\xad\xe0\x64\x9b\x7b\xde\x9a\x07\xd9\x88\xf1\xc8\x55\x5a\xff\x84\x96\xe7\x09\x24\xa1\x48\x57\x26\x4c\x18\x47\x26\x36\xfe\xc0\x84\xcb\x1f\x67\xf0\x77\x19\xe0\xd1\xce\xcb\xff\x39\x32\x26\xbf\x4e\x08\x6a\xea\x82\xde\x7a\x86\xe3\x9c\x6d\xe8\x30\xcb\x46\x60\xe4\x38\x6e\xed\x25\x5f\x97\x74\xb4\x1d\x97\xb3\x05\xf7\x80\x8d\x78\x9f\x75\xc7\x7d\xc1\x44\x00\x38\x09\x51\x27\x0a\x11\xa6\x11\x5d\x7e\x1d\xfb\xff\x9c\x3c\x3a\x3e\x8f\xa3\xeb\x66\x47\xb6\x3d\x85\x92\x4a\x8a\xf9\xe6\xf4\xdd\xc9\xb3\x17\x0d\xca\x8c\xd5\x02\x5a\x18\x55\xf3\xf4\x88\xce\x2f\xbf\xa8\x37\x7e\xf9\xc5\x75\x6e\x38\xb1\xb1\x29\x64\x37\x5c\x19\xc1\xca\x61\x3f\x92\xb0\xc4\x33\xbf\xfc\x42\x1d\x67\x9e\xc4\xd1\x78\xe9\x04\xec\x51\x9e\xe2\xf0\x97\x5f\x04\xb1\xae\x7e\xf9\x05\xb3\xff\xd7\x5f\x39\x9b\x13\x34\x89\xae\x1d\xfe\x80\xfa\x8a\x3c\xd3\x2c\xf7\x4a\xad\x33\xb9\xb1\xd8\x78\xd3\x18\xa7\x46\x83\xa9\x18\x0a\xfb\x4e\x6d\x37\xed\x9d\xac\xea\xde\x3a\x83\xa9\x14\x6c\x44\x16\xd2\x68\xd2\x66\x1f\x5a\xa8\xfe\x8b\xee\x41\x1a\x4d\xa2\x31\xb4\x87\xd8\x7f\x89\x2d\xd8\x3b\xc4\xe3\x7f\xfc\xf7\x75\x6f\x8d\x63\xb7\xf6\xbc\x55\x2e\xcd\xde\xc8\x1a\x62\xde\xb7\x4a\x9d\xb5\x0b\xde\x36\x10\xa4\x3c\xaf\x5b\x5c\x64\xc0\x5b\x5f\x56\x08\x9e\x93\x18\xa6\xd3\xd7\x22\x7f\x43\xda\x20\x1d\x47\x82\x59\xbf\x63\x44\xd1\x56\x12\x6e\x6c\x16\xb6\x91\xd9\x49\x40\xf3\x98\x0c\x1c\xdc\xd0\x68\x86\x92\x05\x1d\xdc\x47\x87\x40\x4c\x14\x0a\x3f\xc8\x6b\x87\xbd\x1e\x1f\xbc\x32\x44\x7d\x78\xfd\x6a\x25\x41\xee\x34\x1a\x7f\x5a\xee\xed\x79\x58\xfe\x19\xec\xf6\x7c\xa0\xcd\x48\xca\xa6\xc9\x67\xb9\x3b\x8e\x11\x24\x6a\x3e\x3d\x1f\xb8\xaa\xdb\x99\x85\x41\xd8\x19\x27\x14\x91\x27\x32\x0b\x47\x97\xa0\x34\x89\x2f\x91\x97\xdd\xf2\x7c\xbf\x3b\x86\xb4\x28\x7d\x33\xc5\xff\x03\x81\x58\x00\xe1\x4e\xce\x13\x42\xb9\xa9\x24\x40\xc2\x8c\x20\x74\x76\xc4\xa4\x77\x3a\x45\xd8\x33\xa3\x16\x90\xea\x23\x0c\x43\x0f\x33\x49\x7c\x60\xf6\x5c\x5e\x6d\xcb\x13\x78\x3e\x97\x14\xc5\x68\x4c\xf7\xc7\x53\x48\x68\xf7\x9a\x6f\xb5\xcf\xca\x19\xb2\x0b\x9c\x0b\x18\x7d\x10\x31\x45\x11\x8c\x07\x6e\x9c\xc0\x90\xfb\x5e\x78\x7f\xd2\xc1\x0d\xbb\x80\xc2\xc1\xcd\x0a\xc8\x5b\x83\x9b\x04\x0f\x6e\x4e\xff\xfd\xec\xd9\x8b\xd3\xd3\x81\x36\xf0\xba\xe2\x41\x77\x35\x5a\x09\x98\x77\xf3\x19\xa8\x4d\xd4\xd3\x64\xd6\xbe\x0c\xe6\xf9\xb7\xd3\x1f\x7e\xfa\xf9\xef\x27\x0b\x3b\x1b\x3d\x15\xeb\xe9\xfe\x7d\x01\x49\xc8\xeb\x6d\x48\x07\xa0\xca\x59\xec\x4a\xf6\x2a\x03\xf0\x4a\xff\x54\xa1\x6a\x1e\xca\x0b\x1d\x3e\x05\x5a\x36\x4f\xc9\x58\xa9\x26\xa2\xfc\x5d\x73\x28\x4c\xfb\x0a\x47\xd9\x18\x44\x55\x8e\x72\x1e\x31\x37\x2b\xb6\x3c\x52\x0d\xcf\xd8\x2b\x22\x29\x9c\xa2\x96\xb6\x10\xe8\x0c\x9c\x23\x8a\x64\x98\x44\x2c\x10\x3b\x8f\xca\xe7\x91\x10\x22\x1f\x9a\x42\xe4\xb1\x0c\x67\x3e\x62\x5d\x11\x81\x59\xa3\x91\x82\x95\x6f\x9e\x82\xb3\x59\x2e\xd6\xc3\x72\xb6\x80\x42\xea\x80\xa3\x2d\x64\x32\xb4\xa6\x00\xb1\xb9\xed\x9d\x8a\x0a\x4c\x61\x94\xc2\xf3\x58\x81\x8e\x7a\x15\xd1\xe3\x07\xe0\x21\x18\xba\xff\x8c\x70\x28\xb2\xf4\xe5\x53\x55\xe5\x02\xcf\xcb\x91\xea\x87\x79\xcd\xf9\xd1\x48\x56\x5a\xd9\xb0\xb2\x53\xae\x92\x53\x21\xe7\xcc\x7d\xa3\xb7\xcf\x05\xde\x35\x2b\xea\x2b\x2e\xeb\x3c\xa2\xea\xe3\x65\xc2\x79\x60\xb4\xf2\x46\x49\xf4\x7c\xe0\xd9\xc2\xb4\x5b\x31\x4f\x75\xb3\xdc\xa8\x18\xa9\xdf\xb2\x5c\x48\x0d\x1c\xa9\x01\x92\xa1\xa2\x88\xc9\x06\x90\x7d\x45\xed\xfd\x51\xb1\xbc\xfe\xb1\x88\xbc\x96\x34\xcf\xd6\xbe\x07\xb6\x45\xf5\x65\x0c\xd7\xba\xd4\x8c\xc5\x5a\xbf\xa7\xa7\x6f\x55\x69\x74\xb2\x76\x2e\xb9\x2d\xe9\x0a\x11\x7d\x90\xaa\x1a\xd3\x7a\xef\xb8\x4f\x13\x9c\x25\x12\x12\x8f\x89\xeb\x29\x82\x64\x3c\x7d\x81\xb3\x07\xe7\x3a\x7e\xbd\x60\x61\x3a\x2c\x27\x64\xd0\x59\x46\x8a\xc9\x16\xd8\x73\xf7\xa5\xed\x49\xc1\x05\x37\xab\xc6\x53\x9a\x21\xdb\xee\x7f\xd0\x6c\xf7\xd7\x6d\x5b\xfb\x46\x7d\x60\xdf\xa8\x0f\xda\x6d\xd4\x07\x9f\x63\xa3\x16\x1b\xfd\x2c\x1b\xb5\x54\x60\xa8\xb2\xb1\x35\x00\xc4\xa6\x9c\xbd\x29\x7b\xbe\xbf\x09\x7b\x16\xd5\x29\xeb\x3b\x5e\x1e\xf3\xfd\x35\xe9\x5d\xac\xa3\x6f\x14\x65\xb3\x4e\x36\x61\x32\x70\x5b\xe1\xa4\x68\x8e\x9e\x93\xe4\x82\xa0\x34\x75\x98\x80\x4b\x11\x99\x45\x58\x48\xab\x16\xb8\x6b\xeb\xe2\x4c\x7d\x70\x00\x0e\xc1\x11\x38\x5e\x6f\x4a\x31\x98\x91\xde\x9a\xaa\x66\x8b\xc6\xa5\xa9\x24\x10\x3a\x9d\x2a\xc7\xbd\xe2\x84\x76\x8c\xbc\xaa\x99\x75\x54\x78\x1f\x3b\xfc\x49\x51\x3d\xa6\x2a\x7b\x04\x17\x52\xdd\xb8\x55\x74\x51\x49\x3b\xb8\x6b\x78\xd1\xcd\xef\x9a\x11\x93\x0f\x3a\xc8\x02\x3c\xeb\xd0\x3f\x3a\x7e\x9a\xbf\xc9\x57\x41\x02\x61\x94\x90\xed\xb9\x52\xd9\x72\x8b\x8a\xe6\xfa\x70\x9b\x64\x41\x63\x64\xd5\xb0\x9e\x5e\xc4\xd1\x6c\x86\x8c\x0c\xb0\x65\x35\x8a\x2b\x41\x80\x00\x08\x12\x90\x82\x18\x44\x60\x01\xc6\x20\x04\x13\x30\x03\x73\x30\x05\xe7\xe0\x72\x47\x7b\x94\x97\x99\xaf\xcc\x5b\x06\x16\x15\x5e\x41\x12\xa4\x96\x54\xbc\xa1\x9d\xd6\x4f\x6c\xd1\xec\x12\x67\xb0\xb2\x85\xba\xa3\xbd\xbd\x9a\xcf\xe5\x70\x03\x41\x10\xe8\xeb\xbb\xea\xef\x0c\xa1\xf0\x44\xf5\x6d\xa0\x3f\xe8\x7b\xc8\x70\x9b\x5f\xa8\x2c\x94\xfe\x0d\xde\xdb\xab\x52\x33\x69\x2e\x02\x18\x77\xb3\x1f\x60\x9c\xe0\x49\x74\xb1\x50\x77\xcc\x9f\xe0\x8a\x44\x54\x5e\x57\x7f\x02\xa1\xa3\xe2\xae\x54\xd0\xa3\xdf\x10\x79\x92\xfb\x25\xb0\x14\xc4\x1f\x08\x42\x5a\x19\x9d\x7d\x2b\x56\x51\xae\xc9\x5b\x85\xc7\x48\x11\x7d\xa7\x06\xfc\x76\x52\xc4\x7a\xe8\x64\x10\x67\x67\x7c\x5a\xce\xce\x02\x0a\xf8\x34\x00\x6a\xb4\x7d\x96\x85\xd8\x19\xc4\x9c\x07\xa3\xe8\xa5\x78\x8f\x26\x6c\x2b\xdf\xde\xee\xca\xbf\xb2\x25\x91\x70\x8a\xdd\xfe\x4e\x34\xf1\x4a\x77\xbb\xe9\x14\xce\x72\x8f\x58\x16\xfa\x1d\x49\xae\x97\xea\xa1\xde\x0e\x25\x4b\x35\x88\xe7\x90\xa2\x4a\xf8\x49\xe9\x63\x1e\x7b\x9c\x9d\x07\xa6\xfd\x67\xe5\xfb\x3e\xd8\xed\xad\x84\x59\x49\xd3\xdc\x6e\x7f\xb5\xf2\x74\xe6\x8c\x82\x95\x0d\x03\x12\x5c\x4b\xc4\x89\xdc\x45\x30\xb8\x16\x36\x3a\x93\x18\x77\x70\x50\xee\x04\xc9\xb8\x09\x80\x32\x4e\x0f\x07\x15\xec\x46\x75\xe0\x85\xb8\x81\xfd\x55\xb6\x42\x2f\xcc\xf5\xdc\xa5\xb7\xb7\x92\x67\xbb\xbb\x41\xb0\xf4\xa8\x6f\x6e\x1a\x0d\x1b\xa2\x4f\x3e\x72\x80\x56\xd6\xcc\x47\x69\x41\x13\xe4\x15\x04\x81\xb2\x97\x61\x74\xc5\x16\x16\x11\x84\xc7\x0a\xe8\xc2\x7a\xe1\x4c\x61\x8a\xbf\xa3\xce\x39\x42\xd8\x51\x84\x9a\xa2\xd0\xe9\x38\x9c\x71\x7a\x7e\xee\x09\xb6\x16\x28\x74\xb3\x2c\x24\xd9\xa7\xaf\x0d\x8e\x72\x6d\xa7\xde\x27\xf2\xea\x45\xee\xaa\x95\x49\x64\x04\x7d\x7b\x6b\x7d\x8b\x6d\xf4\xfc\x6e\x7f\x67\xe6\x9c\x15\x60\xd3\x9b\x95\xea\xa8\x6c\xe3\x13\x5a\xa6\x1e\xa9\xf0\xfb\x27\x43\x34\x0a\xc8\x10\x8d\x18\xa3\x4e\x0c\x3e\x10\xec\xee\x9a\x3f\x41\x92\xe3\x04\xfc\x6e\x8e\x35\x78\xae\xb0\xc1\x44\xd8\x49\x6e\x6f\x13\x93\x01\xf8\x7b\x7b\x5e\xa2\x19\x06\x37\xb3\x26\x01\x96\xd0\x2a\xbf\x4b\xd0\x25\x22\xa9\xf8\x2b\x5c\x8c\x91\xd1\x41\xce\xc6\x14\x60\x47\x06\x51\xde\xde\xe2\x95\x0f\x12\x1f\x40\x23\xb5\x47\xee\x7b\xfc\x73\xbc\x37\xf9\xeb\x4f\x92\x32\x5b\x82\x8a\x2d\x81\xdc\x4d\x69\x64\xf3\x81\x26\xaa\xe2\x17\xaa\x39\x6b\xc2\x87\xc7\x33\x4d\x24\xd9\x4a\x5d\xb5\x87\xd3\x7d\xfa\x06\xe0\x74\x9f\xfe\xcf\x44\x7c\x7e\xfa\xb6\xe1\x74\x9f\x3e\x37\x9c\x4e\x7f\xe9\x34\xa3\x21\x2f\x1b\x23\x63\xdd\xbe\x6f\x9d\xad\x67\x10\xe3\x84\x72\x3e\xeb\x40\x87\x03\x7a\x1d\x98\x3a\x50\xef\x13\xd7\x18\xc7\x6b\xd1\xba\xd1\x47\xd6\x29\xd9\x77\xde\xb7\x1b\x01\xcb\xa3\xbc\x77\x26\x47\x33\x7f\xdc\xde\xee\xf6\x01\x29\xf0\xb4\x1e\xc8\x98\x18\x87\x74\xe6\x99\x56\xd5\x96\x27\x8c\xc5\x02\x62\x1e\x6d\x6f\x54\xc4\xb7\x92\x0e\xf7\xf6\x5e\x7b\xc6\x49\x0f\xa8\x0f\x30\xbf\x06\xb0\x0f\xd0\x96\xb0\x88\x27\x6b\xdc\x01\x27\xe4\xe5\x3b\x7a\xfd\xd1\xee\x0e\x50\xb6\xf4\x6a\xef\xaa\x25\x4f\xb6\x06\x0f\x8a\xac\x21\x98\x5b\xb9\x2b\xb2\x61\xf7\xcb\x85\xf2\x01\x57\xfd\xaa\x5f\xd4\xf6\x1d\x99\xbf\x5d\x2b\xae\x42\x6b\x70\xcd\xe8\x54\x79\x49\xe7\xf7\xcc\xee\x90\x84\x67\x19\x54\x5f\x14\x3f\x47\xb9\x47\x94\x6f\x4b\x3e\xa2\xdc\x1e\x38\xab\xdb\xa4\x9e\xa4\xda\x4d\xe7\x96\xe1\x55\x60\xe8\xce\x09\xba\x8c\x92\x45\x7a\x9a\x6f\x02\xb8\x4e\x4d\xf3\x56\x23\x94\x6b\x64\xea\x28\x25\x95\x51\x4d\x14\x3f\x27\x07\x97\xf5\x47\xfa\x9f\x46\xc0\xde\x41\xe3\x86\x9e\x97\x51\x19\xa7\xb4\x46\x7b\x0f\x3b\x11\x77\xea\xba\xc0\xbd\x8a\xe2\xb8\x13\x8a\x50\x08\x53\x59\xe7\x21\x63\x6d\x14\x6c\x43\x2f\xd4\xba\xf5\x33\x53\x94\xd7\x9b\x0d\x31\x19\xf6\x54\x08\x98\xc8\x88\x45\x09\xe8\x4a\x6e\x3f\xb6\x1d\x87\x37\x9f\xd0\x72\xe0\x2a\x33\x8a\xd4\x5b\xaa\xf2\x92\xf1\xf7\x83\x00\xad\x56\x23\xb6\x3f\x3d\x1f\x7c\x60\x9c\xd0\xb3\x7f\xbf\xf4\xf9\x19\x9c\x73\xc6\xf9\x1a\xce\x2d\x7d\x48\x13\x36\x55\x85\x0e\x48\xdd\x3d\xe5\xbe\xdf\xe0\xca\x53\xed\x08\xf9\xcd\xd7\x05\x1f\xd8\x6d\xfe\x8f\x67\xd3\x85\x03\xd4\x4d\xe7\x71\x44\x3d\xb7\xeb\xfa\x92\x2b\x02\x12\xd0\xf2\xd5\x9d\xf4\x2a\x62\x1a\xc3\x6e\xcf\xbf\x19\x43\x26\xc3\x7f\x4f\x06\xa2\xaf\x9d\xfe\x8e\xb8\xf2\x37\x75\xc5\xe9\xef\x48\xb6\xa0\x2e\xf4\x56\x1c\xf3\x09\xe4\x88\x50\x79\x40\xbc\x53\x7a\x14\x29\x8f\xbb\xa0\xc6\x30\xbc\xec\xf5\x0b\xdb\xeb\xf9\x05\x61\x6d\xf0\xd8\x8d\xec\xad\x10\xc5\x88\x11\x7d\xf9\x45\xfd\x86\x78\xc4\x43\xf6\xcf\xb2\x99\xb5\xac\x83\xf9\x59\x31\xdf\x9a\x0a\x7c\xf0\x3c\xf0\x94\xd7\xb5\x54\x0e\x85\x6d\x20\xe2\x66\x26\xa0\x8a\x94\x30\xca\x40\xc4\xcd\x51\x28\x04\x49\xf1\x42\x5a\xbc\xa0\xd3\x81\x0a\x63\x18\x88\x0a\xbf\x17\x85\xdf\xe3\xc2\xef\xcb\xc0\x9c\x1d\xaf\x24\xec\xd9\xf4\xac\xbd\x3d\x1d\xfc\x63\x3d\xb5\x4f\x99\xaa\xe4\xa0\x6b\x5e\x01\x97\x6d\x03\x2e\x97\xa0\x88\x4e\x11\x61\x22\x0c\x7b\xdb\x49\x48\xee\x18\xdf\x31\x8e\x40\x25\x2d\x8e\x09\xe2\x98\x97\xbd\x3d\x43\x72\x04\x37\x86\xec\x37\x90\x07\x9f\x61\x7f\xd8\xed\xe5\xed\x14\xbb\x8c\x1c\x01\xdd\xdb\x13\x16\x85\x95\xef\x61\x80\x7c\x09\x35\x3a\xf3\xb0\xbf\x63\xc4\x15\xa8\x80\x2c\xb9\xce\xa7\x4a\x35\x05\x17\xde\x47\x0f\x05\xd4\xae\xc9\xfa\x40\x2d\x30\x98\x80\x8f\x3c\xb5\x1f\x7f\xde\x17\x09\x1c\xc1\xac\x70\x51\x9e\x3a\xf3\xc2\x65\xc9\xb8\xa7\x85\xcb\x05\x3e\x7e\x2e\x6f\xbb\xac\x2b\x12\x42\x24\xd0\xd9\x90\x5c\xa8\x48\x3b\x0f\xb1\x5d\x75\x32\x9f\xf3\x97\x3c\x6d\x15\x66\xd2\x81\xb8\xf1\x9e\xf5\xc1\x43\x5d\xd1\xf1\xee\x78\x41\x08\xc2\x94\x5f\x65\xac\xd7\x67\x44\xad\xd9\x13\xd6\xec\x29\x7b\xd7\xb6\xb9\x78\x4a\xa0\x94\x42\x42\xd3\x9f\x23\x3a\xf5\x64\xad\xec\xae\x2b\x42\x31\x51\x37\x5d\x9c\xa7\x94\x64\xd7\x95\x60\xe9\x03\xdd\xc5\x5d\xa6\xa5\x17\x03\x58\x45\xc8\xdb\x0e\xb5\x05\x7b\xc9\x44\x7a\x7a\x88\x8c\x5a\xca\x09\x00\x0b\x0f\x01\xda\x65\x67\x76\x8a\xa8\x98\x81\x00\x01\x95\xdf\x32\x9b\xb5\x28\x8c\x91\xcb\x63\xc6\xcc\xd1\xcb\x75\xa8\x60\x2d\x46\x80\x9e\xfa\x00\x5f\x57\x76\x5e\x64\xcd\xbc\xe5\x47\x18\x9f\x47\xeb\x79\x23\x86\x7f\xe5\x7d\xd0\x2c\x1e\xf3\x12\xc6\x21\xba\x7e\x2b\xa3\xf3\xb8\xd6\x73\xaf\xbf\xf3\x41\x64\xa0\x1c\xe2\x91\x2f\x87\x22\x30\x45\x8a\x18\x64\x05\x22\x31\xc8\xac\x0f\x6c\x91\x5e\x25\x30\x6c\xf4\xf5\x62\xa9\x6c\x6d\x9a\xe9\xf4\x39\x12\x89\x26\xfc\x53\x59\x07\xfd\x95\xef\xdf\xde\xe6\x48\x74\x27\xdf\x2d\x99\xa7\x95\x5f\xcc\x51\xb8\xcc\xac\xca\xfe\x04\xd9\x9f\xfc\xc8\x7c\x66\x10\x72\x79\x03\xe4\xdb\x57\x95\x91\xac\xbb\x40\x4f\x03\xc2\x61\xd5\x24\x64\xdf\xee\x4a\xc1\xc0\x68\x40\xf5\xbc\xb0\x94\x9e\x9e\x0a\x79\xaa\xb4\x18\x99\x20\xb6\x56\xc3\x12\x7b\x38\x5b\x5f\xcb\x36\xd6\x23\x55\x92\x74\xf9\x4c\xfb\xa0\x23\x72\x0b\x44\xb3\x66\x0c\xf9\x8e\x03\xb3\x1b\x09\x96\x47\xde\xcf\x51\x56\x89\x46\xbd\x29\xe8\xae\xe2\x85\xe7\x51\x98\x7b\x5e\x2e\x90\x71\xb2\x67\x4a\x81\x6d\x28\xf2\x54\xcf\x8f\xa6\xf0\xad\xc9\xa4\x6d\xef\xf4\x1b\xd5\xdd\x1b\xf9\x00\xaf\xb2\x64\x03\x3e\x98\x04\xef\x3c\x2f\x0c\x2e\x7d\xe3\xe8\xd2\xc7\xc4\x10\x8f\xf8\x39\x66\x1e\x53\x20\x9f\x78\xd3\x3c\xd0\x0c\xfb\x12\xcf\x3d\xb0\xf2\xc1\x2c\x78\xe7\x85\x66\xd3\xfc\xa4\x19\x92\xbb\xb6\x3b\x2f\xb6\xab\x54\x24\x78\xd7\x96\xa7\xc5\x96\x95\x66\x95\xdc\xb5\xe5\xf3\x62\xcb\x85\x23\x73\x98\xde\xf5\x0b\xe5\x9e\x2b\xee\x39\x8c\x47\x20\xb3\xc8\xbe\xbd\xc2\x4a\x45\x7f\x8e\xd2\x31\x89\xe6\x34\x21\x55\xef\xfa\xc0\xb8\x51\xfa\x86\x66\x4d\xc3\xa8\xe5\x17\xd4\x9b\xf5\xed\xeb\x5d\x34\x5c\xb4\x6c\x5f\xbd\x59\xdf\xbe\xb9\x51\x87\xe3\x96\x9f\x30\x5e\x2e\x7c\x25\x34\x7d\x88\xcf\x41\x9d\x43\xf5\x04\x3c\x5f\x9f\x9c\x56\x00\xff\x3b\x93\x84\xcc\x1a\x63\x39\xd9\xc3\x1d\xfd\x5b\xbe\xf6\x65\x70\x9c\x93\x1f\x5e\x8d\x7f\xfb\xf5\xf5\x4f\x76\xc3\x4d\x38\x76\x81\xf8\x8f\xac\x24\xa6\x5e\x6e\x9c\xd1\xf6\xd8\x82\x85\xef\x03\x77\x12\xa1\x38\x4c\x91\xc2\x2d\xde\xaf\x82\x0b\x1e\x1c\x58\xd2\xb6\xea\x4e\x34\x4c\xdc\xda\xbc\x60\x77\x83\x6c\x59\xef\xf8\x7a\xdb\x50\x3b\xc7\xe0\xa0\x3f\x02\x2e\x53\x4c\x54\xfc\xc5\x13\xd7\x2c\x6d\x5e\x97\x05\x56\x0d\xd8\x68\x6a\x03\x20\xa6\xea\xff\xdc\xda\xf5\x97\xa2\x57\x11\x12\xe5\x97\x65\xab\x22\xbe\x86\x5d\xe4\xc0\x41\x93\xcd\x39\x3c\x6e\xa7\xeb\x7c\x98\xa2\xa5\x93\xc2\x4b\xe4\x2c\x93\x85\x93\x26\x33\xe4\xd0\x68\x86\x78\x65\x67\x34\x99\x24\x84\xb2\x1b\xbf\x7c\x47\x90\xb3\x48\x23\x7c\xa1\x6a\x37\x4f\x12\xc2\xfe\x64\xdb\xd0\x99\x20\x48\x17\x04\xa5\xdd\xea\x19\xa8\xc8\xaf\x9b\xa5\x61\xe3\xc1\xc2\x17\x24\x59\xcc\x4b\x88\x2c\x0d\xae\x63\xbb\x4f\x14\x7e\xd5\x85\xb3\x5d\x67\x0a\xd3\x0e\x92\x85\x5d\x2d\x06\x31\xb7\x79\xc9\x22\x5e\x5d\xf0\x0b\xe3\xf4\x04\x0e\xeb\x08\x0c\x4d\x23\x62\x2d\xe8\xb1\x90\x90\xef\x10\x94\xb0\xc0\xbd\x11\x70\x87\x6a\x63\x8d\xf2\xd0\xd5\x03\xfd\x3d\x63\xe7\x8d\x4a\xb9\xf9\x64\x8b\x0f\x8c\x95\xc8\xed\x54\x5b\x1b\x05\x80\x6c\x21\x7e\xfc\xa0\x8c\xfc\xeb\x3f\xca\x50\x94\x46\x53\xba\xa1\xa1\xab\xf1\xda\x2a\x11\x87\xbc\x30\x6a\x98\x05\xb0\x31\x3e\xeb\xa8\x16\x8a\xd5\xbc\xf2\xd6\x16\xd6\xe8\x08\x1c\x00\xd7\xd5\xe3\x9b\x46\x61\x88\xb0\x6d\x80\xd5\xc1\x68\xeb\x40\x66\x39\x72\xcd\xf2\x82\xb3\x43\xb5\x43\xd1\x35\xb5\xa7\x5a\x3b\x38\xb4\xec\xcb\x0c\xd1\x68\xa2\x29\xc5\x33\x51\xfa\x8e\x44\x29\x8d\x30\xb2\xd4\x23\xb4\xec\xe3\x9a\x6a\x5a\x36\x7c\xeb\x1b\x79\x86\xd4\x14\x4b\x37\x17\xe1\x40\xd4\xb4\x34\x51\x97\x6a\x6d\xfa\x1a\xa7\xea\x0e\xd9\xcd\x91\xab\x08\xcc\x85\x0b\x9a\x4c\x92\xf1\x82\x87\x71\xeb\xbf\x35\x95\x8b\x0f\xd8\x88\xbc\x2a\x49\x02\x9f\xdf\x1a\x72\x55\x5d\x97\x75\xfb\x6d\xcc\xe4\x35\xbc\x8e\x66\x8b\x99\xd3\x3f\x78\xe8\x8c\xa7\x90\xc0\x31\x5b\xea\xae\xf3\x1a\x2e\x9d\x04\xc7\x4b\x27\xc2\xe3\x78\x11\x22\x27\x46\x94\xdd\x71\xbc\xc5\x7c\x8e\x08\xb7\xd5\x42\x1c\xee\x27\xc4\x89\x93\x2b\x71\xc1\x57\x57\xf0\x82\x89\x16\xac\x95\x45\x4a\x9d\x73\xe4\x2c\x70\xf4\xeb\x02\x75\xab\xd3\xce\x15\x0f\xba\xed\x53\x49\x7b\x7e\xac\x69\x85\x92\x04\x5f\xe4\xb8\xac\xa5\x47\xdc\x8f\x17\x85\x42\xbd\x6e\x5c\xcf\xaa\x0a\xae\x69\xcf\xbb\xd9\x03\xc6\xbe\x6a\x47\xe0\xef\x17\x31\x4a\xf5\x5d\x28\xa9\xee\xbe\x22\x58\x39\xdf\x47\x46\x1c\xf1\xf3\xb7\xcf\x4e\xcf\xfe\xfd\xfe\x95\x4e\xe9\xea\xee\x5f\x2c\xa2\x10\xa5\xfb\x70\x1c\x77\xa7\x74\x16\xff\x85\x2c\x62\xd4\x49\xe7\x68\xac\x63\x0e\x33\x62\x27\x28\x76\x99\xc0\x14\xcf\x1d\x9c\x24\x73\x84\x11\x71\x70\x42\xd0\x04\x11\x22\x45\xa8\x23\x95\x13\xc9\x05\xee\xd9\x79\x0c\xf1\x27\xb3\xc7\xde\x4f\xcf\x5e\x39\x3f\xf2\xfa\x3d\xbe\x9e\x9f\xb5\x24\x53\x79\xcc\xb8\xd2\x24\xae\x63\x60\x37\x2e\xdb\x9b\x4d\xf4\x43\x26\xc7\x87\xa8\x83\xc2\x88\xf2\x92\xf2\x02\x36\x4b\x10\x0c\xd9\xde\x31\xa3\x85\xd2\x25\xa6\xf0\x5a\x20\xdf\x35\x27\xe1\x05\x2f\xed\xec\x9c\xaf\xd7\x28\x9b\xfb\xe9\x38\xae\x65\x0d\x8d\x9a\x69\x9a\xc7\xd2\x70\x9b\xf2\xfa\x76\x96\xa9\x63\x72\xb7\x40\x7a\x03\x2d\x80\xab\xc2\xc8\x6a\xfa\x15\x6f\xdc\x4a\x31\xca\x36\x4b\x9d\x8b\x75\xfe\x73\x9d\x1b\xaf\x73\x71\xde\x0c\xe5\xea\xb3\xac\x69\xb3\x69\xce\xa6\x94\x5b\xdf\xcb\x31\x78\x7c\xb2\x3f\xa1\xa5\x10\xff\xf3\x53\x68\x93\xff\xf9\x64\xf1\x0e\xe6\x64\x86\x66\x2b\xa4\x0e\x7e\xdd\xc8\xf6\x16\xab\xa2\xc6\x4b\xdd\x10\x3e\xe3\xa9\x26\x3e\xb1\xc9\xb1\xb6\xa9\x28\xb9\x39\x6f\xdf\xc6\x86\xcf\x27\x7a\x11\x10\x8d\x64\x41\xc6\x28\x17\x4d\x6a\xa6\xc1\x61\xc4\xb6\xff\xff\xf6\xff\xdf\x3e\x7b\x78\x8c\x30\x1f\x59\x9d\x92\xf2\x50\xf6\xff\x70\x64\x57\x4c\x58\x3b\xae\x51\x01\xb4\xa9\x3c\x60\xc4\x7a\x56\x65\x1b\x2f\xca\x03\xcf\x75\x97\xad\x62\x6f\x5d\x18\x97\x8a\xc8\xd2\xd1\x5a\x3f\x46\x28\x0e\xed\x81\x5c\xef\x62\x38\x46\xd3\x24\x16\xd1\x15\x59\xd4\x57\x31\xbe\x53\xca\x50\xb9\xc9\x01\xfa\xa2\x7c\xf0\xc8\x58\x7e\xb3\xff\xf2\xc4\x31\x5e\x64\x1a\xbe\x03\x9d\x6c\x5d\x1c\x9c\x6b\xca\xb6\x57\xf3\x53\xb2\x69\xc2\xe7\x2c\x1e\xea\xb0\x5c\x00\xd5\x5e\xa8\xf9\x8e\x55\x80\xaa\xcd\x23\x5a\x5c\x4c\x2e\x2e\xe2\xfa\x64\xf4\x45\xf2\xf8\x2f\x8e\x25\x34\xe9\xba\x8a\x4a\xd6\xd9\x2b\xaa\x74\x58\x53\x4f\x8a\xd2\xd3\x71\x32\x47\xe1\xa8\xc6\x7e\x60\x32\x02\x2d\xf2\x67\x59\xa5\xf4\x0b\x2d\x6c\x07\x55\x6a\x15\x6f\xea\x3c\xb9\x6e\xa2\x5a\x15\x27\xee\x24\x8e\xab\xa7\xaa\x36\xa3\xb6\x85\xe1\xdb\x6c\x7d\xf5\x46\xbe\xaf\x8d\x73\xd5\x45\x82\xa9\x69\xee\x64\x96\xbb\xcc\xa4\x97\x5d\xdb\xc8\x1c\x77\x78\x47\xed\xaf\x8e\xdb\x96\xc8\xa3\x2a\x75\x7d\x1d\xc9\x67\xcc\x26\xcd\xa8\x5e\x18\xd4\x0e\x8a\x66\x85\xfa\xcd\xa0\x82\x3a\x8d\xd7\x40\x99\x4b\xa6\x46\x9d\xfd\xdf\x7b\xaf\xd4\x9a\x2b\x0b\xa3\x5d\x9b\xa0\xbe\xcc\x12\x55\x96\xb3\x86\xa4\x51\x39\x2f\x6d\x48\xa5\x2c\x9c\x14\xcb\xc6\xeb\xc3\x4b\x96\xd4\xfe\xb6\x69\xb2\xaf\xd4\xfa\x2c\x21\x7f\x46\x44\x5f\x90\x7a\xfa\x9b\x12\x8d\x55\x26\xed\xd7\x0a\xa5\xe2\x7f\xed\x2c\xa5\x6d\x84\xd8\xd6\xc1\xd7\x9b\xd8\x88\x2a\xe5\x41\xe9\x30\x8d\x12\xec\x78\x6f\xf9\xbf\x30\xf6\x6b\xec\x52\xac\x7d\x48\x10\xac\xa2\xa5\xac\xbd\x3c\x2d\x09\xed\xc9\xb8\x9d\xb1\xb9\x96\x26\x50\x4b\xb8\x70\xe3\x22\xf2\xc6\x9a\xae\xc9\x83\x28\x55\x4d\x99\x7f\x46\x47\x06\xe7\x0e\x4e\x77\x12\xe1\xb0\x73\xbe\x14\xb1\xc1\x59\x71\x79\x01\x24\xd3\x61\xc5\xf6\x60\x60\x25\xfc\xb0\xc7\xe0\x5c\xb4\xc2\x5d\xab\xb2\x60\xbd\x04\x33\x9b\xa5\xea\x79\xf0\xb1\x36\xbf\x88\x99\x49\x11\xed\x70\x48\xac\x26\x2a\x6e\x66\x8e\xe3\xe4\xea\xa5\x52\x8c\x8a\xd5\x0e\x71\x28\x93\xc9\xb5\x00\x49\x97\xfc\xda\x8d\xa3\x90\x4b\x05\xe4\x6f\x18\xa1\x0e\x5c\xd1\xa2\x0b\x30\xff\xa8\xfa\x95\xeb\x39\x07\x5f\x32\xe5\x9f\x27\x18\xe0\x05\x1c\x75\x2f\xdc\x11\x50\x53\x38\xd8\xed\x6f\x10\x9d\x5c\xac\x1e\x90\x2d\x88\xad\x66\x79\xd7\xe0\x92\xba\x7c\xf9\xf7\x3d\x09\xec\xd1\x73\x1f\x0c\x6f\xc4\x78\xa4\x5f\x18\xa8\x3b\x03\xd7\x5d\x01\x79\xef\x54\xd8\xd5\x9c\x6c\x81\xb2\xa7\x4a\x36\x37\xfd\xd6\x9b\x24\xb4\xbf\x92\xd7\x82\x57\xa3\x55\x6d\x29\x48\x4a\x96\xeb\x27\x47\x86\x78\x92\x1c\x70\x52\x4d\x10\xc0\x01\x51\x39\xf7\x59\xd7\x14\xbc\x1b\x0b\x74\xb7\x5c\x24\x43\xba\x1f\xd0\x27\xa5\x02\x24\x0a\x52\x63\x1e\xc9\x85\x89\xe7\x01\xe0\x20\x77\x68\xfb\xc5\x65\xb3\x3c\x23\x4a\x2f\xfb\x03\x6f\xfd\x93\x39\x3c\x9a\x71\xa7\x4c\x1c\xd6\xee\x8a\x0f\xd5\x10\xd2\x2e\xf5\x77\xce\x09\x82\x9f\x34\xa4\x5d\xd6\xc2\xe0\xc6\x16\x8f\xc8\xf2\x25\xa5\x34\xc7\xfc\x2a\x23\x72\x9e\x82\xbf\x6d\x9c\xbb\xdc\x24\x42\x2b\x4f\x2c\x79\xf8\x2b\x60\x28\xe3\x69\xc4\x98\x44\xfe\xb5\x12\x0c\xc5\xcc\x9a\xde\x36\xcc\x90\x7c\x03\x61\x86\xe4\xff\x4c\x98\x21\xf9\xb6\xc3\x0c\xc9\xb7\x91\xb5\x1f\xd6\x03\xae\x7e\xe8\xa3\x1f\xfe\xf3\xee\xfd\x3f\xec\x80\x2b\x95\x05\x4f\xec\x60\x17\x5d\xa3\x31\x47\x4f\xba\x63\x36\xcb\x31\xaf\xeb\xcc\x33\x45\x8a\x3d\x3d\x89\x08\x7b\x5c\x58\xea\x5c\x55\x4a\xac\x11\x36\xeb\x21\x13\x28\xcc\xfd\xef\x82\xe1\xb0\xcf\xf5\x2a\xe5\xf5\x98\x27\x2e\x70\x9f\x72\x19\xe5\xa9\x96\x42\x9e\xb2\x6d\xc1\xab\xad\xe5\x4d\x7e\x22\x85\x8a\x4a\xc2\xf7\x50\x18\xd0\xe5\x3f\xc7\x4c\x40\x93\xe7\xa3\x7b\xca\x0d\x86\x1c\x1b\xa4\xae\xf1\x57\x1e\xb4\xcb\xdb\xd7\x7f\x08\x1e\xd9\xf3\xee\xd5\x26\xef\x96\x22\x74\x73\x83\xdf\x09\x3b\x2e\x1d\x88\x1d\x74\xcd\x3d\xce\x17\xb2\xd7\x6d\xb2\xed\xd4\xf6\x48\x04\xa9\x34\xed\x92\x61\x1b\x79\x64\x83\xc6\x59\x33\xa4\x37\x70\x80\xd9\xa7\xb4\x9d\x77\xa7\x4e\x4d\xc9\x57\xd0\x14\x75\x25\x31\xba\xea\xc8\xb3\xab\xc6\x74\x59\xad\xcb\x3c\xe3\x33\xc7\x39\xd7\x3c\x43\xe5\xad\xb1\xc8\xb9\x66\x7e\x37\xb9\x3c\x66\xd1\xb8\xcc\xfc\xcd\x4b\x8a\x69\x2f\x94\xa9\xda\xf5\x0d\x7d\x85\x3f\xa4\x2d\x2e\x96\x21\xb5\xb3\x2d\x37\x20\x98\x4d\x8b\x66\xaa\x69\x9c\x1e\x98\x93\xf8\x06\x5d\x99\x98\x46\x9b\x8a\xdd\x28\xb1\x57\x83\x8e\x6f\x56\xc6\x52\xbb\x28\x32\x4d\x40\xb5\x2c\x7e\x98\xcc\x49\x30\x2b\xae\x53\x48\xa1\xfb\xa5\xe9\xe6\x64\x7c\xe6\x50\xf3\x24\x83\x43\xf5\x6d\x69\x3c\xb7\x3d\x7e\x55\x94\x72\xb3\x95\xeb\xe7\x52\x8d\xdd\xcf\x27\x32\xcb\xec\x51\xf9\x40\xe8\x63\xd0\x3f\xe6\x78\x99\x53\x78\xa9\xb2\x7a\x65\x17\x0d\x10\x8d\x79\x59\x9e\xfd\xa6\x25\x51\x7f\xcb\x00\xb3\x72\xcb\x4e\xba\x38\x9f\x45\x7c\x10\xa2\x52\x70\x6e\x6f\xa4\xf0\x52\x3a\x7b\xb8\x63\x94\xfd\xfb\x60\x94\xf7\x45\xdb\xf6\x54\x2e\x0d\x26\xb0\xee\x3a\x82\x04\x78\xb8\x6c\x67\xab\x32\x25\x1f\x55\xcc\xc7\xdd\xb2\x8b\x6e\x98\xf2\x6c\x1d\x4e\xa8\x21\xe7\x83\x38\x74\xb8\x3a\x57\xb1\x75\xd7\x95\x5d\x6d\x4c\x52\x16\x32\xaa\x26\x09\xb5\x36\x16\x8a\xf8\xdd\x96\xfe\x99\x10\x97\x9a\x72\xb4\x87\x96\x2d\xdd\x3a\x29\x9d\xb9\x84\xdb\x10\x0c\x12\x65\x36\x6b\x97\x88\xaf\x9c\x28\x72\x58\x9d\x67\xaf\x98\x57\xb1\x41\xb7\xf8\xec\xb7\xeb\xd3\x43\xe0\x52\x78\xbe\x88\x21\xe9\x84\x88\xc2\x28\x4e\x8d\x53\x36\xab\x35\x63\x88\x90\xeb\x0e\x5a\x6d\x39\xec\x71\x24\x1b\xdf\x0e\x1f\xa2\x19\x1a\x84\x28\x55\xe1\x0a\x03\xc8\xfe\x94\x5c\x67\x13\x4f\xef\x67\x3b\x8b\xb5\x6d\x75\x9a\x3b\x89\xab\xb0\xa9\x8d\x4e\xa0\x06\x9d\x25\xc9\xd5\xc6\x3d\x55\xf6\xff\x0c\x71\x7f\xa0\x16\xa7\x6f\xcf\x32\x51\x64\xbd\xa2\xf0\xcd\xcb\xe7\x56\x9e\xdb\x30\xc5\xb4\x6b\xc1\x35\x9a\xe8\x82\x70\xdc\x85\xe3\x38\xed\xaa\x90\x86\x2e\x0a\x23\x95\xb7\x23\xff\xf1\x51\xc1\xbf\x50\xe5\x9d\x6a\x8b\x6f\x2a\xf7\xf1\xd0\xf6\x81\x0d\xbf\x5c\x3c\x23\x3e\x2b\xb9\xa8\xad\xda\x5a\x33\x31\xc5\x90\x43\x63\xed\xef\xe8\x05\xc9\x75\xbc\x89\xf7\x1b\xb8\x4f\x75\x36\xd3\xbc\x7f\xd0\xdd\x77\x73\x93\x9f\x25\xc8\xdd\x17\x1c\xe3\x21\xfb\x53\x88\x9c\xfb\x76\xfa\xb1\x1e\x4e\xb9\xbc\xce\x02\x07\x56\xef\x47\x67\xca\xd2\x6f\x5c\x28\x5e\xab\x77\x19\x7e\xa6\x46\x13\xbc\x4d\x70\xa4\x21\xf0\xd4\xc5\xab\xe8\x87\x72\x1e\xa9\xcc\x84\x3a\xa8\x14\x47\x8c\x77\xc3\x9a\x0f\x98\x47\x5c\x09\x1d\xd4\x2e\x3d\x70\x03\x27\x52\xb3\x7d\x7e\xa7\x19\x49\xb7\x38\x25\x19\x4c\xc0\x05\x8e\x1d\x43\xd0\xcf\xe0\x89\x05\xce\x9d\xff\x67\xcb\x13\x59\x16\x6d\x37\xf0\x68\x16\x5f\xdd\x0c\xf9\x7e\xf0\x4d\x22\xdf\x1b\x6d\xf8\x2d\x03\xdf\x9d\xa6\x68\x5d\x0d\x8f\xd6\xa0\x5c\x59\x7b\xb3\x29\x28\xf9\xa0\x25\xf6\xfc\x78\x54\x3a\x39\xb7\x08\x3d\xff\x02\xcc\xf5\x77\x9d\xe8\x5a\xf0\xf7\x67\x98\xd5\x3b\x8d\xd4\xac\xbf\x92\x0d\x19\x94\xf8\x59\x1e\xa8\x7d\x90\x43\x6e\x57\x02\xaf\x37\xc0\x2f\x37\xe1\x85\x15\x85\x76\x2d\x53\xc0\xed\xf7\x9c\xab\x14\x8d\x8f\xca\xca\xcf\x86\x7d\x42\x64\xdc\xed\x42\xfe\x71\x05\x31\x77\xc8\x88\xd4\x34\x3c\x99\x94\x2a\x92\x37\x21\xc9\x4c\x5c\xa0\xc9\x27\x84\x9f\xb4\xb7\x35\x39\x6d\x6c\x59\x9b\x35\x6f\xb3\x3e\x1c\x18\xa6\x62\x91\x7b\x4b\xdb\x13\xb2\x87\x6c\x06\x05\x5e\xef\xc1\x15\x53\x91\x83\x61\x65\x4a\x9f\x71\x46\x88\xc7\xaa\x8f\x5c\x9b\xf4\x7c\xbf\xa6\x90\x41\x13\x31\x5a\x5a\xbe\xef\x30\x53\x95\x11\xdd\xa5\x27\xf9\x04\x1c\x37\x2e\xbb\xf0\xb9\x97\xe6\xd0\x62\x99\x11\x54\x2f\x89\xb7\x76\x29\xd6\x74\x66\xac\x6d\x3c\xcd\x3a\x73\xd4\xd2\x4c\x54\x45\x0f\x59\xe1\x01\xfb\xe6\x6e\x58\x07\x63\x53\xdd\x6d\x7d\x01\xd8\xcd\x6a\x2a\x94\x6f\x57\x83\xa5\x44\x01\xab\x97\xc2\x59\x29\xf1\x4b\x05\xd8\x12\x87\x46\xe9\xe3\x5b\xaa\x52\x79\x34\xd5\xc7\x24\xc2\x0a\x04\xa5\xf1\x4f\x85\xca\x0c\x53\x82\x26\x1d\x9a\xb8\xdc\x67\x34\x53\x48\xa7\xa2\x6d\x5f\xe3\xb6\x7e\x5d\xa0\x05\x32\x0a\x3a\x48\x27\x66\x0e\x0e\x95\x26\x84\x0a\xf8\x95\xec\x95\x40\x04\x6c\x0c\x91\xca\x03\x28\x34\x4c\x2a\xa9\x85\x49\x41\x0b\x4c\x8a\x75\xb6\xa2\x94\x22\xbb\x95\xb2\xc3\x72\xa9\xb4\xd2\x6c\xc2\xfd\x02\xa2\x2a\x8f\xb6\x6a\x84\xaf\xd2\x3e\xe0\x51\x09\x57\x95\x55\x4e\xdc\x59\x8b\x22\xda\x31\xc0\x43\x42\x37\x37\xb2\xc0\x93\x40\xf8\x03\x64\x33\x71\x94\x52\x26\x32\xa7\xbc\x8c\x20\x05\x37\xec\xe6\xa0\x9c\x21\xcc\x41\x5d\xe9\x37\x19\x92\x51\xf7\x3c\xc2\xa1\x87\x7c\xf9\x79\x99\x5e\x1b\x7b\x22\x19\x9b\xef\xaf\x56\xfe\x6a\x05\xb8\x85\xb8\x9c\x8b\x6b\x43\x70\xd8\x6e\xdf\x67\x4d\x4e\x08\x4a\xa7\xcf\x92\x10\xbd\xe0\x42\x8b\x2d\x17\x65\x98\xcc\xba\x7a\x59\x3c\xb7\x9b\x93\x71\xa8\xdf\x0d\xa3\xf0\x64\x3e\x47\x90\x78\xfe\x0a\x14\x0a\x6e\xe4\x53\xd6\x71\xe8\x12\x0e\x50\x97\x3f\xb5\x63\x66\xa0\xc7\xe2\x5a\xaa\x32\x27\xee\x88\xb9\x55\x97\x87\xbd\x11\x80\x81\x0a\xea\x4a\x02\xd2\x15\x66\x9c\x52\x4a\x4e\x95\x78\x5c\x24\x5c\x73\x7f\x84\x51\x8c\x42\x26\x55\xcc\x21\x49\x91\x73\xf2\xec\x95\x43\x78\x23\xfe\xc0\xf6\xbc\xc2\x87\x48\x0a\x55\x0e\x58\x7f\x60\xfd\xb8\xc0\x44\xd5\xb5\x23\x5c\x90\x03\xe7\x44\xfe\x25\x92\x91\x70\x41\x94\xb7\x29\x50\xd6\x49\x90\xe8\x14\x80\x0d\xde\xcc\x3e\x33\x70\xfd\x7b\x7d\x7f\x05\xf7\xf6\x28\xa3\x37\x01\x72\x81\x20\xf1\x0d\xec\x1c\x53\xe1\xca\x54\x53\x5a\x79\x0f\x01\xa4\xd0\x70\x73\x48\x10\x56\xf5\x46\x4b\x65\xea\x93\x06\xc8\xad\xba\x0a\xf5\xa6\x5c\x91\xfe\x09\xcc\xfa\x13\x98\xf5\x27\x30\xeb\x33\x02\xb3\x7e\x3c\x79\x91\xbc\x78\xf0\x68\x69\x07\x66\x69\x93\xf2\x27\xb4\xe4\x69\x69\x8d\x3f\x9f\x89\xc2\x61\x2e\x24\x11\x34\x45\x21\x0e\xcc\x9e\x47\x1c\xb4\x85\x17\x2e\x77\x96\xbb\xc0\x95\xc0\x90\x46\x28\xad\x0c\xfe\xff\x10\xf4\x7b\x36\xbc\x53\xa9\x2a\xa8\xc9\x53\xf8\x03\xb2\x0c\xa1\x25\x40\xe0\xa1\xe8\xb3\x78\x54\x29\x2e\x9f\xd0\xf2\x3c\x81\x24\x3c\x19\x8f\xd9\x30\x25\x6c\xa2\x71\x1d\xbd\x3c\x46\x29\x67\x7c\x3c\xce\x0c\x24\xaf\x11\x5e\x48\xf1\x91\xfd\x79\x8a\x98\x28\x2a\x04\x90\x7c\x04\x45\x6e\x38\xfb\xec\x3f\x1d\x2e\xea\xf1\xce\xa8\x21\xda\xbe\x00\xc3\xf0\x74\x71\x2e\x27\x5e\x28\x1b\xd9\xef\x0c\x3a\xc7\x8b\xbe\x7d\x90\xa8\xa9\xe2\x92\x8e\x8a\xc5\x1b\x85\x27\xd2\x68\xba\xe8\x0c\xb8\x9f\x73\x54\x9b\x1f\x2d\x79\x2e\x8b\x83\xeb\x48\x5f\xe5\x08\xb8\x1d\xd7\xac\x67\xd8\x03\xc3\x8c\x66\x44\x91\xba\x91\x56\xaf\x64\x46\xf5\x35\x53\x96\x1a\xf3\xab\xf2\xe6\xb4\x88\x7f\xaa\x5c\xc6\x0c\xb6\x55\xd9\xd1\xa6\x5f\xb2\x38\xa7\x44\x5b\x1d\xa9\xd7\x29\xfa\xcc\x22\x93\x72\x71\x8e\xc5\x98\xd1\xa3\x2c\xe3\x14\xba\x9e\x43\xac\x0a\xee\xe6\x22\x8f\x8b\xb1\x75\x7d\xfb\x4a\x16\x63\x52\x36\x09\x1a\x76\x37\xaa\x35\xac\xa6\x93\xfd\x7e\x54\x03\x51\x2a\x15\x3a\x3c\x92\x5b\x7b\x0a\xd3\x79\x32\x5f\xcc\x15\x13\xd2\x21\x38\x9f\xd0\x32\x4c\xae\xb0\x68\xfa\xc0\x88\x0d\x54\x55\x10\xab\xd6\x53\xd7\xbf\x17\x93\xcb\x2d\xf8\x31\x0a\x7f\x58\x66\x01\x3e\xfc\xcb\xe3\x04\x53\x92\x70\x57\xbf\x7c\x54\x5f\x31\x52\x71\xad\xa9\x9e\x28\x67\xcd\xd4\xdf\x8a\xf6\x15\x3b\xe4\xb1\x79\x10\x37\x67\xac\x43\x61\x37\x51\x25\x1e\xad\x3d\x69\x0c\x03\x6b\xa0\xd5\x3f\x2a\x2b\xec\xc6\x70\xf9\x9e\x9d\x43\x8c\x62\x0e\xca\xbd\x6f\x4c\x77\x61\x0e\xef\xcb\xc9\x56\xab\x70\xbe\x74\xab\x57\x46\x3d\xac\xf7\x83\x6d\x87\x48\xf4\x2f\x57\x37\x65\x5d\x0c\x81\x93\xfb\x5d\xe8\x5d\x9e\x44\x87\x07\xe0\x41\x2d\xb5\xaf\xc3\xd4\x66\xb3\xb4\x21\x48\xd2\x8c\x9f\xec\xb7\x63\xda\xa3\x26\x51\x8f\xc6\x19\x69\xd6\x08\xce\x45\xb5\x6a\x2f\xf2\xa3\xad\xe5\xb8\xda\x64\x58\xe5\xb2\xd4\x85\x30\x50\x01\x37\x52\x4c\xb2\xe9\xf8\x1b\x14\x5f\x5e\x6b\xa4\x52\x73\xa8\x13\x05\x1c\x6c\x38\x37\x9f\x09\x72\xdb\x8e\xc5\x88\xa7\xc5\x88\x7a\x16\x70\xb7\xb5\x17\x77\xc8\x7a\xda\xd8\x50\x79\x07\x20\x5c\xe3\x29\x16\xa7\xd3\x86\xe0\xe0\xaa\xf3\x01\xb8\x4f\x79\xcf\xd2\xec\x13\xc5\x34\x23\xed\xa4\xb1\x63\x89\x1f\x3e\x00\x87\x35\xc2\xd9\x1d\xd3\x8a\x6c\xfb\x44\x6a\x04\x07\xaa\x47\x06\xb6\x28\x50\x5c\x36\x8d\x57\xd6\xef\xb5\x80\x0f\xd7\x15\x04\xca\x59\x72\x2f\x16\x51\x68\xda\x8e\xb3\x83\xcd\x2d\x68\x31\xd2\x1e\xad\xcd\xca\xca\x4e\xac\x8f\x39\x81\x64\x46\x98\x27\x6d\xb4\x07\xf0\x4e\x61\xfa\x93\xd8\x81\xc0\x4d\x11\x8f\xa9\x15\x04\x2d\x49\x4c\x16\x22\x52\x25\x81\x8d\xd2\xb2\x6d\x4c\xca\x45\x83\x50\x63\x7b\x72\x45\xf1\x5f\x6d\x66\x06\x66\x19\xe0\x30\x99\x55\x58\x9a\x45\x21\x19\x35\x93\x83\xdd\x3e\xc8\x4f\xe5\x60\xb7\x57\x51\x44\x58\xcd\x25\x6b\x7f\xc3\xda\xc1\x6c\x41\xb3\xa2\x1d\xec\x97\x67\x14\x12\x50\x2b\x14\x30\x5e\x76\x15\xc5\xf1\x7b\x84\x43\x94\xab\x5a\x5c\x34\xe3\x1a\x6b\x26\xba\x10\xa5\xef\xd1\x45\x94\x52\x44\x50\xe8\x29\x8e\xea\x9b\x66\xc0\x4c\xbb\xcb\x19\x03\x8b\x2d\x67\xe4\x92\xeb\x5b\x57\x10\xa3\x87\x7c\x6e\x35\x36\x34\xc0\x2a\x5b\xaf\x7e\x53\x19\x2b\x91\xff\x98\x97\xc5\xd0\xe5\x2d\xf4\x13\xe9\x9c\xdb\xb8\x28\xe8\x97\x0d\xd6\x15\xfd\x61\xdd\xb0\x04\x05\x6b\x0b\xa6\xd4\xa6\x6e\x6f\xb1\xa7\xe7\x1d\x09\x7b\x66\xea\xb9\xc3\x28\xfc\xdf\x20\xcf\x16\xd5\x00\xf5\x7a\x01\x77\xe4\xfa\x7e\x45\x0d\x50\xa4\x3e\x10\xec\xf6\x57\xaa\xd0\x94\x0e\x7f\x45\xfe\x0a\xb0\x9d\x54\xae\x54\x85\x70\x78\xc2\xaf\x54\x84\x2b\xdf\xcd\xd2\xaa\xcd\x08\xad\x6d\xae\xbf\x4b\x4e\xf6\x87\xe8\x11\xfc\xc7\xe2\xc1\x5b\xbb\x25\x8a\xed\x6b\x82\x61\xdc\x38\x05\xfb\x41\x39\xe1\x5c\xbf\x0f\xdc\x38\x92\x36\x23\x95\x8a\x07\x27\x18\x49\x83\xd1\x61\x15\x94\x37\x8b\x2a\x69\x8f\x76\x29\x63\xbe\x8e\x65\x24\x58\x01\x4a\xc9\x31\xb3\xda\x46\xa3\x62\x53\x7a\xf9\xca\xfb\xaa\xd7\x6c\x2d\x95\x45\x48\xe0\xad\xce\x55\xf4\x64\xa7\x9f\x53\x77\xa5\xd9\x8e\x69\x33\xac\xfd\x82\xa9\x67\x54\x69\x22\xab\x53\x3e\x1b\x86\x13\x66\xab\xd0\x20\x2c\xa0\x9c\xeb\xc2\x9a\x0c\x5d\xab\xf3\xad\x3a\x9d\x97\x88\x4c\x08\x4a\x85\x64\xc4\x7b\x93\xc7\xaa\xc0\x18\x11\x2a\x2c\x70\xda\x5e\xe0\x16\x83\xe4\x4c\x93\xd1\x91\xe9\x88\x37\xa4\xf4\x11\xa8\x78\x82\xaf\xbf\x69\x99\x2b\xe5\x82\x6e\x49\x32\xcd\x65\xb2\x4d\x97\xaa\x05\xc2\x4c\x75\xf9\x41\xab\x3d\x24\xde\x35\x33\x1d\x3d\xd4\xed\x00\x77\xb0\xbf\xbf\x79\x5e\x19\x68\x21\xad\x06\x7b\x4a\x9b\x8a\x5a\xaf\xa1\x42\x66\x1e\xf1\x39\xe0\xcd\x29\xe3\x40\xb1\x90\x27\x93\xc0\x35\x74\xd2\xd4\x40\x39\xfc\xd2\xf6\xb4\x1d\x8c\x69\x89\x50\xd8\xee\x1e\x2f\x84\xe1\x94\xf8\x6e\x23\x59\x7c\x2d\x51\xf5\x2b\x40\x6a\x25\x52\x2b\xdb\x03\x6d\x8b\xab\x8c\x75\x59\x46\x47\x0b\x54\xd8\xa5\x64\x51\xc8\xe9\xd4\x90\x24\x2a\x99\x80\x69\xab\x15\x4a\x94\x7a\x77\x94\x33\x91\x73\x4a\xb6\x46\x7a\x55\xb7\x6a\x96\x80\x15\x01\xf1\xa3\x4a\x8a\x6c\xf2\xad\xa2\x59\xa7\xd2\x64\xf9\x39\x68\xe9\xf3\x52\x53\x1d\xe2\xb1\x55\xf6\x24\x23\x23\xa8\x00\xfe\x24\xc9\x3c\xf3\x7b\x69\xb5\x8b\x43\x85\x94\xee\x35\xe5\xb6\x41\xe9\xff\xed\xc8\xfc\xf3\xa9\xd6\x9f\x8a\xca\x5d\x76\xd4\x98\x58\xa3\xb2\x06\xf6\xcc\x3c\xd3\x36\x55\xbd\x0a\x12\x62\xe3\xdc\x47\x5b\x55\xc2\xb6\xac\x44\xad\x40\x18\x85\x2f\x79\x31\x5d\x89\x58\xd8\xa0\x71\x36\x31\xdd\x4c\x45\xca\xd4\x00\xd1\xfc\x73\x51\x9d\xf7\x8e\xed\xe7\xf4\xa6\xdc\x27\xec\x5a\x5f\x7b\x78\x4f\x91\x4e\xac\xda\x61\x4e\x3a\xe2\xe0\xa2\xb6\x79\x79\x2a\xfd\x70\x5f\xa7\xe2\xf1\xfe\xf4\xd1\x3f\x26\x0f\x26\xc8\xae\x78\x54\x57\xef\xee\x3f\x04\x7d\x8b\x92\xd1\x53\x4a\x86\x71\xfa\x98\x9e\xc8\x72\x4d\xea\xad\x49\xdb\xfd\x06\x22\x9c\x8d\x3b\x56\x72\xb8\x3b\x31\x92\xc2\xb2\x7f\x16\x6e\xb2\x29\x71\x0a\xce\xfd\x27\xf8\xe8\x4f\xf0\xd1\x9f\xe0\xa3\x2f\x07\x3e\xa2\xbf\xfd\xe3\xe4\xc1\x02\x55\x64\x85\xca\x21\x8a\xa4\x4c\xf5\x76\x4e\x45\xee\x64\xfe\xa7\x10\xaf\x9a\xa5\x7d\xca\x01\x84\xc0\xb0\x00\x1b\x32\x72\xcc\x3f\x00\xf7\xad\xde\x60\x33\x69\xa7\x70\x91\xc4\x68\x42\x5b\x27\x53\x97\x82\xad\xa5\x42\xa0\x5d\xd5\x2d\x74\x71\x3f\x51\x33\xc0\x3f\x68\xcc\x51\x16\x97\x3e\xca\x67\xb6\xb6\xb4\xa0\x06\xe5\xaa\xe4\xf7\xf9\xc9\xd6\x5a\x49\x2e\x92\xa0\x5f\x44\x8e\x58\x20\x23\xf2\xb5\xbc\xb6\x92\x03\xa7\xe8\x10\xb3\x4c\xf1\xd0\x99\x92\x75\xf2\xa0\x22\xe6\x64\x93\x4c\xe1\x75\x6e\xb7\x8d\xd0\x13\x0d\x8e\x6a\xad\x10\x6c\x92\x70\x80\x11\x85\x9e\x55\xc3\x13\x5a\xa6\x79\x39\xe3\x87\x3a\xc2\x63\xd4\x36\x8f\x47\xe3\x47\x3e\x83\x07\xb3\xc1\x3c\xaa\x22\x0c\x7f\x80\x69\xb4\x46\xd2\xd4\x27\x4d\x29\x46\xb6\xac\xd1\x42\xa5\xff\xcd\x70\xea\x89\x3c\x63\x52\x19\x5d\xc4\x34\x9a\x73\x29\xd4\xee\x0c\x34\xf5\x4a\xa6\x83\x6e\x20\xf3\x99\xd2\xd4\x97\xf1\xdc\xa9\x51\x0e\x76\xfb\x20\x5d\x9c\x53\xc2\x86\x79\xc9\x7f\xda\xdd\x76\x30\x0c\x05\x15\xe4\x1d\x54\x2a\xde\x40\x28\x46\x92\x0c\x95\x47\x4a\xfd\xe6\x87\xe8\x29\xa2\x99\x83\x4e\x7d\xef\x09\xea\x2a\x16\x70\x7b\x9b\x7b\x87\xc7\x7b\x20\x51\x95\xd1\x1f\x64\x8f\xc9\xca\xe4\xd6\xc7\x94\x2b\xcd\xd2\xd1\xfc\x4b\xb2\x7c\x77\xf6\x5e\x96\x19\x97\x31\xe4\x42\xd4\x86\x08\x9d\x18\xd2\x91\x88\x49\x51\x53\x57\x1c\x65\x77\x0a\x53\x8f\xfa\x4f\xac\x9f\xa2\xfe\xa0\xdc\x6f\xca\x64\xfb\xdc\xe5\xa2\xeb\x4b\xeb\xe7\x29\xa2\x2f\x2e\x19\x3d\x70\xfb\xa7\x94\x2f\x22\x94\x7a\x08\xdc\xa8\xa9\x31\x17\x4c\xca\x25\x74\x05\xd4\xdd\x97\x14\xcd\xd2\x72\xc8\x0e\xf6\x08\x17\x15\x95\xfc\xf3\x7d\xcf\xd7\x11\x35\x1f\x93\x08\x7b\x2e\x70\xb9\x4e\x6b\x71\x10\xea\x90\x96\x86\xfd\x5d\x7a\x14\x18\x36\x20\xaf\xdc\x5f\xb4\xf2\xfd\x3b\xb8\xed\x0a\x47\x7e\x59\x5d\xc9\x29\x28\xdb\x52\x97\x69\xbd\xd0\xf6\xe6\x5f\xbd\x7f\x25\xbf\x3d\xff\x2f\xbb\xd0\x96\xc7\x35\x83\x1a\xf5\x59\x96\x3a\x1e\x65\xf9\xe2\x0b\x98\xe8\x66\x87\xfe\x43\x2d\x9b\xb0\x96\xd8\x3f\x6d\x24\xb1\x6d\xe7\xcd\x74\x65\x38\xea\x11\xcf\x81\x32\xac\x4e\x41\xd5\x2e\x2c\xd1\x66\x0b\xad\xb1\x92\xd7\x84\x30\xf2\x01\x15\xc4\xbd\xbb\x71\xfd\x3c\x75\x6a\xf6\x8f\x6b\xd9\x3f\xad\x62\xff\x95\xba\x3d\xde\x60\xd7\x44\x09\xfe\x3a\xf6\xcc\xdf\x7f\xfd\x1f\x94\xc2\x37\xb8\x7a\xcf\xc8\xb0\x00\xa9\xc0\xac\xdf\x37\x47\x86\x03\x50\xbf\xdf\x46\x4e\x16\xd4\xaf\xf6\xce\xb0\x7f\xdf\x48\x72\x65\x7a\x41\xa2\xb4\x23\xce\x36\xd3\x15\xf2\x40\x60\xa7\x45\x26\x33\x69\x9f\xce\xea\x63\x95\xd4\x25\xbb\x72\xc0\xf7\x48\xbb\xad\xb5\xed\xed\xaa\x45\xc6\xc3\x8d\xfc\x0c\x2d\x37\x75\x83\xfd\x59\xf4\x28\x68\x69\x6d\xbb\x1b\x56\x6f\x8c\x2d\x6e\xd7\xb5\x32\xda\x16\xec\xf0\x62\x04\x5d\x2d\xbc\x29\x13\xff\x55\x14\xc7\x77\x36\xc2\xcb\xc6\x4d\x99\x4b\xb5\x5f\x29\x4f\x65\x02\x03\xbb\xc1\x44\x08\xf6\x53\x8a\x61\xab\xf6\x1c\x8c\x50\x18\x77\xb4\x53\xd8\x30\x4b\x22\x36\xb1\x9d\x94\xdd\x82\x14\x55\xbf\x74\x77\x13\x7a\xe5\x0b\xda\xcc\x72\x83\xf0\x62\x26\x2c\x5a\x83\xdd\x1e\xb8\x40\xd4\x26\xaa\xa9\x71\xaf\x56\x7e\xc3\x81\xb7\x1b\xf1\x37\x3b\xd4\xac\xe8\x60\x47\xc9\xde\x9d\xab\x88\x4e\x3b\x32\x27\xb6\x65\x16\x72\x2f\x19\xcf\xb6\x6b\xf8\x0f\x34\x61\xeb\x26\x69\x7d\x03\x7f\xa0\xc9\xd8\x57\xe6\xac\xbb\x4e\x8a\x6e\xe8\x0f\x30\x39\xdb\xde\x51\x7f\xb0\x8d\x64\x0e\x39\x5d\x5c\x5c\xa0\x94\xa2\xb0\xa3\x4a\x2a\x6c\x77\xbe\xca\x1f\xf8\x5a\x27\x70\xa7\xf1\x04\x6e\xba\xd7\xbe\xda\xa1\x37\xa7\x9d\xfd\x73\x34\x49\x08\xea\xe8\x4a\xb9\x9b\xcd\x44\xb1\x99\x3f\xc0\xc4\xdc\x75\x46\xfe\x40\x53\x91\xab\x93\xb2\xe1\x74\x98\x6d\xfc\x11\xa6\xc4\x64\x8f\xd2\x15\xb1\xe9\xcc\x94\x9b\xfa\x03\x4c\x90\x28\xaa\xdd\xd1\xb5\x7e\x36\x9c\x9c\x42\x33\x7f\x80\x89\xb9\xa3\x7c\xf7\x8d\x8b\x75\x04\x86\x51\xd2\x19\x43\x12\x7e\x1d\xc6\xbc\xff\x39\x3c\x38\xff\xe7\xe1\xff\xc0\x0a\xbc\xd8\x7a\x0b\x1e\x8f\x43\xd1\xe1\x20\x02\x19\x2f\xed\x6f\x7d\x30\x74\xb3\xf1\xba\x25\x17\x7a\x7f\x04\x5c\xa7\x58\xe0\xb8\x04\xf0\x2e\x86\x4f\xd8\x62\x5a\x8e\x4b\x2e\xfc\x63\x11\x3f\x2f\x8a\x3e\x8e\x46\xca\x77\xba\x59\x82\x57\x5b\xe8\xf5\x61\x66\x18\xd7\xe5\x52\x8f\x14\xb0\xdd\xa8\x02\x7d\x24\x0b\xdf\x5a\xeb\xee\x1e\xe6\xf1\xf6\x07\x25\xa0\x32\x9f\xbe\x66\xc1\xd7\x4d\xca\x3a\x55\x0d\xe0\x08\x1c\xf0\x74\xee\x5f\xb0\xf3\xa6\x0f\x79\x4d\x00\x8d\xa5\x4c\xae\x05\x5c\x5d\xc2\x06\xae\x8f\x4c\x95\xe1\x35\x59\x7a\x12\x23\x0f\xbd\x36\x5e\x8a\x84\x07\xd2\xa4\x79\xd1\xca\x76\x59\xdc\xfc\x5f\xd0\xbf\x20\xba\xf2\x15\x79\xe2\xfe\xeb\xf5\xdb\x07\x1f\x66\xef\x8f\x6a\x8b\xea\x9d\x7d\x42\x4b\xf6\x8f\x4a\x3a\x61\x09\x98\x98\x44\x28\x0e\x65\xf5\x9a\x5a\x3e\x92\x01\x5a\xf9\x5c\x64\x55\xec\x45\x5a\x05\xcd\xbc\xf8\x8d\x33\x19\x74\x56\xe2\x4f\x46\x5c\xdd\xc1\xa8\x54\xf6\xa4\x10\xe0\x64\x06\xc0\x35\x8f\xf3\x29\x43\xa9\xfa\xa5\x08\x22\x91\x2e\x99\xcd\x0e\xdf\x46\x8f\x46\x66\xf6\x21\xf3\x96\xfc\x29\x27\xb0\x3a\x8b\x4e\xce\x01\x61\x7f\xa9\x2d\x8c\xa9\x14\x38\x98\x05\xa0\xd8\x7c\x35\xbd\x52\xcd\x7b\x23\xdf\x8d\x25\x17\x7e\xd9\x47\xa3\x9e\x2f\x07\x81\x1c\xeb\xf3\x89\xa7\xa1\xe5\xeb\xec\xf0\xe1\x75\x74\x36\x1d\x73\xa1\x79\xff\x4b\x9e\x16\x2b\x43\x3d\x34\x4e\x04\x23\x2b\x8f\xc1\x54\xcb\x6b\x58\x2e\x4e\x7f\x6c\xa6\xba\x95\xed\xc8\x04\xf7\xc5\x03\xf3\x0e\x35\xdd\x2b\x19\x74\x7e\x90\x96\x62\xee\x87\xa3\xf2\x0b\x6b\x43\x55\xd8\x6b\x6b\x6b\xb9\xdb\xd9\x76\x43\xf4\xd0\x9a\x94\x01\x92\xbf\x2b\x0e\x9e\x25\x1d\xf8\x35\xc3\x19\xd1\x0e\xff\x25\x02\x58\x54\x0e\x5a\x5b\x36\x81\xd6\x7c\xff\xf3\x38\x96\x4b\xb1\xfd\xfd\xcf\x15\x94\xc2\x66\xcf\x1e\x94\xa2\x3d\x4a\x72\xc7\xe5\x7c\x4a\xfd\xc3\x20\x08\x50\xf7\x13\x5a\x3e\x4b\x42\xb4\xb7\xa7\xe3\xd6\xc3\x28\x9d\x43\x3a\x9e\x72\x2c\x8a\x87\xd1\x95\xf3\x3a\x59\xa4\x48\xfc\x94\x0e\xd6\x8a\xd8\xf7\x76\xc0\x16\xa4\x97\x3c\x77\xac\x09\xf1\xdd\x75\x59\xf7\x9e\x88\x83\x6a\x60\xc5\xb8\x34\x38\x4d\xd1\xe4\x77\x3e\x45\xeb\x9d\x97\x51\xf8\x1e\x8d\x51\x74\x89\x4e\x98\xfc\x5e\x9d\x5d\x41\x2e\x45\xb6\xbe\x79\x97\x9f\x39\x09\xb4\xc1\x24\xa4\x49\x7c\x89\xc8\x57\xa4\xdd\xfc\xf7\xbf\xe3\xe4\xf0\x02\x5f\x57\x25\x84\x8c\x62\x26\xe5\xe9\xa4\x56\xfa\x0f\x19\x5c\x69\x11\x2f\x72\xd5\x02\x73\x23\xae\x14\x38\x54\xce\x9f\x52\x80\x65\xa6\x30\x64\x79\x9c\x78\x31\x34\xd5\xee\x40\x64\xb0\x39\xae\xa8\x7b\x55\x60\xbd\x46\x14\xf0\xa1\x94\xe6\x8b\xf9\xd8\x74\x97\x0e\x73\xfc\x5c\x7c\xa2\xa2\x84\x95\x92\x6f\x0e\xe5\xc1\xc4\x1e\xfd\x11\x46\x71\x72\x89\x1a\xe3\x9a\x4a\x8a\x48\x68\x54\x8c\x99\xe8\xc6\x6a\x4b\xc7\x86\xea\x9c\x15\x85\xa3\x68\x92\xc4\x34\x9a\xbb\xb9\x99\x2b\xf5\x0f\xb8\x1f\x96\x73\x51\xef\xc3\x31\xbe\x53\x2a\x1f\x76\x87\x26\x6c\xc5\x09\xd7\x16\xfd\x51\x8f\x24\xc5\xca\x43\xd9\x7c\x1f\x54\x08\x7c\xfd\x8a\x4e\x72\xda\x4d\xcb\x78\xf3\x0d\x8a\x63\x16\x42\xbf\x6a\xab\x16\xd9\xe5\x83\xa3\x8a\xa9\x69\x24\x27\x1c\xb5\x28\xd8\x61\xbd\xdc\x2c\x68\x16\xe4\x84\xd3\x92\xc2\x59\xbd\x07\xf2\x76\x06\xb6\x0e\xcf\x18\x27\x21\xbc\xd4\x70\x13\x93\xc3\x7a\x39\x79\x71\x37\xba\xd0\xfd\xb9\x1b\x35\x14\xe8\x60\x13\xee\x55\x5d\xb5\xcf\xbe\x67\xaa\x39\x58\x71\x15\x64\x85\x18\x14\x46\x84\xbb\xa2\xb6\x56\x18\x4d\xb2\x76\xd5\x6e\xd3\xc2\x60\x47\x45\xc6\x64\xf4\xcd\x2c\x5f\x62\x5c\xdb\x62\x19\xb5\x72\xa5\xd0\xb5\x5b\x67\x2d\x9d\x8b\x96\x37\xe6\xf5\xd5\x93\xbb\x86\xe3\x5b\xa7\x77\x0d\xdf\x2f\xf4\x75\x13\xbe\xdf\xb2\x89\xea\x6a\x23\x8d\x96\x6f\x0b\x67\x40\xb9\xc3\x5b\x3c\x03\xac\x1c\xa0\xae\x78\x4d\x6b\x7d\xd1\xf2\x72\x1d\xcf\x3e\xb4\xd7\x57\xae\x25\xf0\x35\x37\x9b\x9d\x13\x8d\x93\xc2\x34\xde\x35\x6d\xf8\x52\x83\x1d\xbe\xe1\x16\xfb\x36\x37\x58\x1b\xee\xf8\x55\x6f\xae\x16\x5b\xab\x66\x63\x1d\xac\xd9\x58\xeb\x8d\x32\x55\xdb\xaa\xf9\xbe\x69\xb5\xa1\x1a\x54\xe4\xac\x25\xf9\x8d\x6b\xbe\x6d\x26\x29\xf6\x6b\x45\xc5\x4a\xc9\xb2\xb9\xc9\x4a\x1b\xa1\xec\x19\x2b\xb9\x01\x2b\xc3\xa5\x4b\x3b\x78\x4b\xb7\x43\x59\x31\xff\x92\x9e\x87\x24\x46\x9d\x49\x42\xac\x99\xfb\xac\x6f\xb0\x87\x3b\xfa\xb7\x7c\xed\xcb\xa4\xd7\xf8\xd7\xcb\xab\xde\xc9\x2c\xde\x62\x7a\x8d\x9c\xbf\x42\x88\x9e\x6a\x82\xaa\x9c\x5d\x05\x3b\x7a\xce\x94\xcd\x2b\xaf\x16\x5c\x74\xdc\x18\xed\xf2\xe2\x42\xae\xaa\x51\xce\x98\xee\x14\xa6\x1d\x71\xb5\xd2\xf9\x5a\xc3\x7f\xea\xca\x9d\xdb\x0d\xe4\xc2\x49\x7a\x90\x37\x35\x70\x51\x9f\x0d\x79\xc8\x2e\x8e\x94\x28\x0d\x17\x34\x99\x24\x63\x9e\xcb\x35\xfb\x5b\x6b\x21\xa2\x59\x5b\x0a\xa9\x2a\x5b\x77\xae\x24\x6d\x4d\x87\x91\x6d\xda\xc5\xff\xbd\x86\xd7\xd1\x6c\x31\x73\x0e\x8e\xef\x3b\xe3\x29\x24\x70\xcc\x36\x7d\xd7\x79\x0d\x97\x4e\x82\xe3\xa5\x23\x13\x20\x39\x31\xa2\xec\x8e\xe3\x2d\xe6\x73\x44\x78\xcd\x24\x88\xc3\xfd\x84\x38\x71\x72\x25\x2e\xf8\xea\x0a\x5e\x30\x7a\x63\xad\x2c\x52\xea\x9c\x23\x67\x81\xa3\x5f\x17\xa8\x5b\xad\xe3\x96\x4d\x32\x96\xe5\xdd\x3c\xbf\x78\x4a\x49\x22\xca\x6d\x1b\xf6\xa1\xd2\x17\xb8\x49\x35\x0a\xcd\x7a\xba\x77\x55\xb8\xdb\xd5\x12\xae\xa2\xc9\xe7\x28\x1d\x93\x88\x63\xcf\x1c\x4f\x04\x3e\xc0\xd8\xb7\x50\xa9\x6a\x80\xb5\x0f\x09\x32\x14\x4f\x4e\x8d\x46\x3b\xa3\x12\xfd\x1a\x37\xb3\x92\x09\x2d\xa9\xb2\x44\x87\x96\x65\x2e\xfe\x2c\xf3\x8b\xbe\x2c\x81\x17\xa1\x34\x9b\xb7\xdc\x15\xab\x49\xf2\xc0\xbc\xf5\xce\x7c\xdc\x46\x67\xf7\x0b\x99\xcc\xe5\xe2\x8a\x04\x94\xaa\x4a\x5d\xd1\x81\x75\x60\xcf\xd7\xb8\x56\xf6\xe5\xbd\xb0\xb0\xcb\xe6\xa2\x84\x2b\x82\xab\x8a\x85\xf1\x54\x84\x15\x2f\x56\xf8\x54\xd7\x35\x7c\x2a\x9c\x3c\x23\x51\x24\xa1\x37\x92\xb0\x07\xbd\xd6\xd9\xec\x34\xad\x3f\xdb\xe6\xf8\xe7\x9d\xd1\x7d\x91\xc7\x7b\xde\x6b\x55\xc8\x8f\x66\xa4\x1a\x68\x23\x03\xe4\x4f\xdd\xc6\xf9\x8b\xca\x25\x0e\x45\x6d\x42\xe1\x3a\x17\x55\x0b\xc5\xdf\xb9\xa2\x84\xc6\x19\xd6\x36\xab\x11\x7f\x35\x5f\x90\xb1\x81\x8c\xc0\x6d\xf9\xa5\xd7\x8c\x67\x17\x34\x8a\xd3\xfd\x30\x99\xed\xa3\x4b\x84\x69\x47\x14\x37\x2c\x8a\x11\x00\x6f\x4b\x90\x20\xf5\x82\xc4\x87\x4f\xff\xfd\xe2\xfe\xfc\x41\x45\xb6\x18\x45\x07\x72\x14\x7a\x34\x0a\x8c\x92\x21\x54\xb2\x32\x48\x32\x9f\x79\xb1\xa2\x95\x42\xc1\xab\x3c\x8a\x96\x6c\x32\xb3\x24\x84\x71\x56\xbe\x58\x66\x93\xc9\xad\x83\x6b\x44\x48\xb2\x66\x40\x16\xa8\x58\xca\x04\x59\xcc\xec\x68\x56\xeb\x11\xb4\xa2\x7f\x61\x74\xd5\xe1\xdf\xd1\xc9\x52\xb6\x17\xee\xdc\xae\xe0\x43\x85\x5a\xd8\xd3\x23\xc8\x77\x7d\x03\x9d\xde\xce\x7b\xdf\xa0\x2b\xe7\xbd\x68\x78\x53\xcd\xa9\xba\x61\x51\x4d\xb1\xa9\xce\x52\x91\xc0\xc3\x92\x90\x72\xcd\xcc\x9f\x27\xe1\xb2\xe9\xbc\xe7\x8e\xa5\x62\x69\x93\xbe\xe0\xc9\x7d\x9e\x40\x96\xbf\x7d\x26\x16\x41\x1e\xb9\x87\x85\x67\x86\xfc\x99\x91\x96\x2c\x0f\xf4\xa2\xd9\x31\x18\x8d\x96\xba\x39\xe2\xe2\xf8\x8e\x88\x0b\x39\xb5\x19\xef\x54\x33\x2b\xeb\xe6\xe6\x4f\x2e\x79\x60\xf1\x86\xd8\xbf\x87\xf2\xdf\xc6\x65\xde\x32\xb1\x6f\xcd\x7a\xca\x13\xbe\xcd\x8a\xe6\xda\xae\x3a\x88\x25\x0b\x2e\x0e\xac\x78\x24\xf7\x8f\x4b\x23\xe4\xff\xde\x2f\x1d\xce\x1b\x15\x1e\xd9\x7a\x6a\xa5\xbc\x38\x6d\x4b\x95\x6e\xa1\x6b\x3d\xc7\x79\xe1\x57\x55\x1e\x6f\xeb\x85\x3b\x00\xee\x33\x1e\xae\xc4\xd3\xbf\xcd\x6d\x7c\xa0\xa1\x41\x67\x1b\x05\x4a\xb6\x98\x81\xa8\x20\xbc\x37\xe0\x18\xb9\x99\x6d\xc4\x33\x8c\xe9\x6a\xc5\x35\xf4\x7b\x5f\x86\x6f\xc8\x6d\x96\xe3\x1c\x2a\x61\xbc\xc1\x41\xb8\x8b\x8e\x69\x38\xe2\xf9\x91\xc4\xf9\xde\xd7\x9b\xac\x28\xe5\x36\xc9\x0f\xd0\x68\x37\x49\x98\x50\x0b\x46\xf2\x3b\x9d\xca\xb9\xf2\xf4\xfd\xfb\xc0\x0d\xa3\x14\x9e\xc7\x95\x8b\x2e\x3f\xcf\x18\x50\x94\x9e\xc2\xcb\x88\xe9\xcb\x02\x05\x2d\xae\xbd\x23\x51\x4a\x23\x8c\xf2\x57\x65\xea\x45\x03\x76\x99\x7d\x28\x5b\x70\x51\x09\x3f\x5d\x9c\xcf\x22\x3e\x39\xa2\x12\xbe\x49\x23\xbc\x06\xb7\x68\x57\x34\xff\x28\x9f\x23\xcf\x2a\x91\x1d\x18\xe8\x53\x2b\xe5\xf1\x92\xdb\x25\xac\x24\xce\x57\xdb\xb7\xac\x49\x69\x1e\xda\x9a\x1e\xb4\x45\xdf\x84\xd6\xcc\x49\x72\xc1\xc4\x58\x87\xc9\xbe\x14\x91\x59\x84\x45\xb0\x6a\x4b\x30\x79\x03\x0e\x09\x71\xe8\x70\xd8\x5b\x95\x91\xc0\x72\xa9\x31\xc5\x94\xa9\xa4\x7a\xcd\xd5\x0a\x94\x97\xfc\x77\x5a\xdd\x67\x10\x8f\xe5\x61\x75\x07\x51\x74\xc3\xdd\xd4\xb3\xec\xa6\x9e\x75\x37\xf5\xb6\xba\x9b\x14\x0c\xd1\xcd\x36\x96\x89\x85\x3e\x56\xf1\x0d\x05\x71\xc3\x36\xcb\x0d\xf5\x9e\x56\x9b\xab\xf7\xe7\xe6\xaa\xd9\x5c\x45\xa2\xb9\xcb\xe6\x5a\xa7\xad\xb6\xdf\x26\x6b\x32\xec\xf4\x7b\x6d\x12\x67\x49\xea\x78\x08\xdc\xbc\xad\x43\x9f\xb3\x04\xcd\x13\x9b\x30\xcd\x04\x49\x5e\x34\xc6\x8c\x62\x2d\xca\xd8\x0f\xca\x32\xb6\x0a\x8f\x38\xe5\x21\x88\xce\x24\x21\x8e\xb8\xc2\x1e\x78\xd4\x2e\x49\xec\xb6\x73\x1d\x9d\x30\x92\x72\x20\x76\xd0\x35\xe7\x0d\x17\xbc\x6b\x5b\x93\x54\x54\x6a\x84\x96\xb9\xd2\x2a\x2c\xd8\x86\x10\x7f\x24\x75\x80\xb2\xe5\xa3\x06\xad\x59\x23\xd9\x93\xb2\xe9\xc0\xb2\xb3\xb6\x36\x2f\x2a\xe3\x41\xfb\x1c\x72\x07\xe0\x91\xd5\xa1\xbb\xae\xae\x6e\xa3\x6e\xf1\x9d\xdd\x3a\xf9\x16\x85\xe7\x8b\x18\x92\xce\x38\x89\xd9\x4e\x8a\x8c\x02\xd5\x24\xb9\x4a\x73\x7b\xe4\x38\x8b\xdb\xe0\x59\x88\xc5\x12\x7c\x88\x66\x68\x10\xa2\x74\x2c\xbd\x22\x03\xc8\xfe\xcc\x97\x7b\xdd\xb2\x2e\xbe\x59\x19\x53\x45\x49\x74\xea\xb6\x73\xdf\xe5\x5f\xc8\xb9\x3d\x1a\x15\x49\xb6\xd6\xa9\x5c\x3b\x48\x92\x5c\x6d\x3c\xc2\xf5\x98\x5b\x28\x35\xbb\xfb\xd9\x9a\x32\x01\xda\x0d\xc7\x5d\x38\x8e\xd3\x2e\xdb\x53\x69\x17\x85\x11\xad\x07\x30\xda\x70\x0a\x4d\x11\xaa\xcd\x3b\xac\x3f\x52\xf2\x39\x35\x02\xc2\x6e\x67\x41\x5a\x6a\x6e\x66\x9f\xca\xd9\xca\x45\xdb\x46\xa1\xcf\xa7\x46\x98\xe5\xd3\x42\x08\xcf\xa8\x98\x7e\x2f\xa7\x02\xea\xf2\xaa\xd9\x99\x4d\xc9\x02\x01\xee\x66\xa9\x11\x87\x05\x44\xb9\xf0\xa6\x78\xe9\xeb\xb2\x22\xbd\x4e\x08\xda\xc4\x20\xd3\xa8\x5f\x9b\xd5\xeb\x75\xca\xd8\x25\x4b\x01\xc2\xf5\xb0\xc7\x4d\x2a\x96\xdd\x75\xcb\x1e\x00\xf7\x45\x18\xd5\x81\x6f\x9b\x80\x09\x6b\x07\xce\x8f\xfd\x90\x51\x33\x49\x16\x65\x0f\x6c\x45\x73\x16\x23\xe1\x81\x48\xdd\x7f\xb7\x3a\x89\xa2\xea\xb7\x81\x3e\x9e\x25\x97\x55\x3c\xbf\xd8\xa9\xc6\xf5\x0a\xd7\xbd\xde\x03\x96\xe2\x83\xce\x15\x24\x38\xc2\xf5\xb6\x4d\x7b\x8b\xf5\x4f\x3b\xb6\xc0\x9b\x75\xaf\x38\x8e\xac\x25\xe4\x88\x29\xaa\x6f\xbb\x0e\xc7\x6a\x76\x60\xde\xf0\xdb\x27\x04\x39\xcb\x64\xe1\xa4\x0b\xf9\xc7\x15\xc4\xbc\x32\x87\x48\xdf\xe8\xd0\x69\x94\x72\x51\xef\xc9\x5d\xfa\xd5\xf4\x11\x5b\xf8\x41\xfd\x38\xf5\x6e\x68\x41\xfa\xc5\x36\xf2\x85\xee\xca\xa4\x6d\x88\xd3\x3c\x6b\x77\x46\xef\x85\x82\x75\x05\x36\xff\x80\x1b\x3f\x38\xd9\x67\x85\x1f\x72\xf5\xf8\x2b\x6b\xc2\x35\xda\x2d\x8d\xe7\xb6\x25\x98\xda\x69\xc8\x1e\xea\x74\xd2\x8d\xfb\xba\xf6\x91\x26\x2c\xa4\x35\x83\xb5\x94\x27\x07\x0f\xc0\xc3\x6d\x96\x44\x3f\x04\x47\xa0\x61\x75\xf3\xbb\x26\xc8\x6d\x53\xf5\x40\x61\x68\x44\x10\x72\x24\x6a\xea\xf1\x64\x7f\xee\x6c\x41\x4d\x30\x88\x44\x06\x28\x94\xa8\xaa\x7b\xa0\x02\x95\x79\xec\xb2\x34\xfa\x4b\x9b\x7f\x1e\x61\xa2\x7d\x6e\xe2\x93\x3f\x8a\x67\xa4\xe9\x20\x4d\x08\xed\x9c\x2f\x65\x61\xbf\x0e\x4d\x5a\x23\x4c\xf2\x00\x0c\x8d\x32\x81\xb5\x28\x13\x62\x41\x99\xb0\x1e\x55\x04\x31\xb3\x5b\x69\x44\x13\xb2\xe4\xdf\xcc\xfa\xe0\xfa\x6b\x43\x9f\x4d\xc0\x8a\x09\x64\x29\x83\x57\x32\xe4\x03\xe0\x4b\xa1\x9e\x14\xf3\x26\x3f\xc2\x3e\xbd\xa0\x28\xec\xc2\x38\x82\xa9\x67\x4c\x6a\x37\x84\x14\x6e\x1e\x6b\x9d\x35\x24\x22\xae\xd9\x5a\x3e\x4b\x30\x85\x11\x46\x84\xff\x52\x1f\x73\x55\xc2\x5f\xbe\xb0\xbc\x9a\x03\xee\x3e\x83\x71\x0c\xcf\x63\x11\x4b\x7d\xca\xef\x18\x51\xda\xdc\x14\x66\xa9\xc0\xd0\xa2\x57\xdd\x71\x8c\x20\xf1\x6e\x9e\x43\x0a\xc7\x08\x53\x44\x44\x09\x85\x70\xbc\xe2\x55\x04\x85\x49\xd5\x56\x8e\x40\xf4\xb3\x10\xfc\x2d\x40\x45\x08\xb0\x49\x1b\xd0\x95\x25\xe8\x5b\x96\x44\x00\x34\xf0\xb2\x20\x74\xbf\x8b\x13\x32\x83\x71\xf4\x9b\x18\xa9\xec\x3b\x32\x3b\x8e\x03\x2a\xa3\x9c\x77\xd2\xab\x88\x8e\xa7\x1e\x16\x05\xbb\x6e\xc6\x30\x45\xc2\x13\x26\x5d\x80\x83\x52\x41\x76\xb1\x07\xb1\x0c\x88\xd6\x1e\xbe\x20\x08\xe4\x35\x59\xf1\x22\x4c\x66\x5d\x4d\x86\x9e\xdb\x1d\x27\x21\xea\x30\x71\x94\xed\x67\xdc\xc5\xe8\x5a\xe5\x89\x3e\x8d\xce\xe3\x08\x5f\xf8\xdd\x30\x0a\x4f\xe6\x73\x36\x89\xfe\xce\x39\x41\xf0\xd3\x8e\xdc\x02\x83\xb5\x8b\xb1\x2a\x06\xa8\xc3\x06\xa0\xaa\x05\x45\xcd\x02\xb3\x75\x59\x2e\x2a\x56\xad\x5d\x61\x38\x54\x51\xb3\xcd\xa8\x0b\x17\xe4\xeb\xc2\xdd\xde\xee\x7a\xb5\x95\xe1\x54\xb1\x37\x01\xcf\x1e\x8e\x00\x09\x76\x7b\x00\x06\xbb\x7d\x90\x28\xc4\x15\x25\xcb\x1b\x55\x1b\x2c\x05\x71\x80\x2c\xd5\xc7\x1e\xef\x7a\x24\xf0\xd2\x20\xe6\xeb\xe1\xf9\x7e\x37\x4c\x30\xf2\xf7\xf6\x3c\xdc\x9d\x2f\xd2\xa9\xa7\x02\xdf\xc1\x2e\xbd\xbd\xc5\xb2\xe6\xc6\x6e\x10\x50\xff\x31\xfb\xa4\xff\x78\x35\x66\x24\xeb\x45\xfe\x0d\x64\x5d\x48\x82\x68\x35\x89\x30\x8c\xe3\xe5\x0d\xeb\x00\xb9\xbd\x15\x25\xcc\xe2\xae\xe8\xf2\xed\xad\xfa\xcb\xf3\xf5\x93\xd1\xc4\x83\xbe\x28\xcd\x96\xac\x56\x72\xda\xf0\x8a\xcf\xd4\xe6\xc5\xee\x70\x56\xec\x8e\x6c\x5e\xec\x8e\x94\x8b\xdd\x91\x75\xc5\xee\x48\x56\xec\x8e\x34\x2c\x76\x47\xda\x17\xbb\x23\x7e\x7e\xa4\xa5\xf9\x6a\x5e\xee\x2e\x44\x62\x30\x4c\xd8\xfe\x62\x35\xef\xf0\xb7\x51\xf3\x6e\x0d\x8a\xb1\xff\xf1\xcd\x3f\x7e\xa4\x8b\x8a\xec\x71\x0a\xc5\x68\xfc\x63\xcd\xa9\x00\x33\x01\x3f\xe3\x53\x16\xf9\x3e\x1f\x71\x7c\x64\x6a\xf9\x0d\x32\x2f\xf4\x6a\x0a\xbe\x89\xa8\x69\x95\xdf\x08\xb8\xfb\x19\x88\x23\x9d\x26\x84\xda\x8b\x8f\xbb\xda\x59\xf7\xa0\x94\x90\xe9\x58\xda\xec\x26\x4c\x00\x10\xa2\xdb\x6b\xe9\x65\xfc\xe9\xc3\x87\x77\xec\x27\xa7\x8b\x74\xdb\x21\xe3\x7c\x1a\x67\xec\x53\x9d\x99\xfc\x42\x55\xaf\x0f\x2b\x8c\x6b\x07\x2d\x47\x70\xd7\x88\x38\x8b\x5e\x64\x8f\x1a\x5d\x1b\x14\xea\xb6\xf3\x5e\x6a\xc3\x82\x5d\xdd\xd5\xb7\xed\x51\xe0\xca\x3c\x2b\x88\x87\x8a\x58\x46\xdb\x33\x55\x79\x95\x2a\x43\x18\xf3\x2d\x67\x69\xb7\xd6\x35\x5d\xba\x54\x9a\x8f\xbb\x10\xec\x4f\x62\x37\xdd\x8d\x5e\xd5\xd8\x53\xe9\x71\x29\x90\xac\xd8\xb1\x36\xdb\x81\x65\x4f\x97\x23\xee\x7f\xaa\xb6\xf8\xe8\xf7\x8f\xcc\xdb\x3f\x19\xdf\x6b\xe6\x9c\xb6\x91\xcb\xf6\xb6\x94\x1a\xc0\x56\xd2\x36\x54\xd0\xad\xe9\x58\x38\xa8\x0c\x2c\xbe\x1b\xe5\xe6\xc3\x7e\xcd\xd4\x90\x35\xdf\x58\x1b\x9c\xba\x9e\xbe\x2b\xf6\xfb\xe6\x44\xff\xaf\x05\x22\xcb\x77\xac\xc9\xcf\x4b\xf8\xbf\xb2\xef\x64\x51\x35\x9b\x10\x3f\xef\xaa\xf3\xae\xaa\x8d\xaa\x2d\x50\x7a\xed\x6b\xd8\x07\xc6\xb4\xff\x6e\x7b\xa1\x3a\xc8\x7e\x9b\x7b\xa1\xbf\xe9\x5e\xa8\x8f\x44\x6e\xbe\x17\x9a\xc7\x26\x09\x61\x6c\x26\x57\x46\x8a\x71\xf6\x30\xe5\x2c\x42\x79\x0e\xe9\x54\x19\xa2\x36\x49\x91\x5a\x50\x54\x1b\x9b\x90\x1a\xa4\x45\x63\x5d\x2b\x18\x6e\x3c\x39\x2c\x4b\xb9\x43\x29\x40\x23\x4c\x49\x84\x52\x4f\xbc\x77\xa1\x6d\x03\xec\xbd\x6e\x46\xc2\x5d\x4e\xc0\x5d\x4e\xbe\xfe\xed\xed\xcd\xca\xef\x12\x14\x2e\xc6\xc8\x33\xe3\x8b\xb0\x2a\x58\x49\x3d\x0c\x0e\xd8\xa0\xc8\xb0\x37\x02\x49\x40\x86\x7d\x2d\xbb\xc3\x2e\x4d\x5e\x25\x57\x88\x3c\x83\x29\xf2\xfc\x6e\x4a\x21\xa1\xe9\xcf\x11\x9d\x7a\x62\x76\xfd\x27\xc2\x5e\x02\xbb\x04\x71\x50\x8f\xe7\xbe\x13\xb3\xee\xfa\x40\x48\xf4\xc9\x6a\x80\x56\x3e\x90\xc1\x5a\xef\x08\x9a\x44\xd7\xae\xbc\xe7\xee\xbb\x3c\x51\x75\x5b\x1b\x82\x4c\x45\x7e\x0e\xad\x51\x59\xb5\xa5\xe6\x7f\x97\xd8\xec\xf1\x7f\xbd\x3f\x7f\xf1\xfc\xfe\xbf\xd6\xc4\x66\x57\x17\xd6\xae\x08\xd2\xee\x4b\x53\xea\x08\x14\x0a\xcb\xf5\x47\x60\xe8\x4e\xa2\x98\x22\xc2\x66\x25\x73\x41\xd8\xf3\x79\x0a\xfb\x6a\xa6\x59\x38\xbc\xaa\x48\x9a\x53\x2f\x72\x45\xe9\x6a\x12\xcd\xe6\xc2\x31\x79\x8c\x06\x89\x66\x90\x14\x83\x34\x5a\xe4\xb6\xae\xcc\x9b\x6b\x3c\x56\x9a\x9f\x86\xac\x6b\x5d\x6a\xea\x87\xc0\x9d\x10\x84\x28\xba\xa6\x1d\x31\x9f\xda\x59\x9d\x60\x41\x76\x2e\x70\x9f\xaa\xbc\x9d\x4f\xf3\xb5\x14\x86\x15\x09\xa9\x1f\x8c\xcc\xf2\x7c\x0f\x33\x20\x80\xc6\x8f\x3f\x1a\x29\x74\x9b\x51\xf9\xbc\x59\x84\x67\xcd\x52\xa4\x68\x9c\xe0\xf0\x5b\x5a\x0c\x1d\xe5\x2b\xd3\xb2\xb7\x48\x4b\xdc\x84\xd4\x5b\xc0\xf2\x37\xc9\x17\xf2\x50\x86\x47\xe8\x32\x14\x82\x72\x4a\xb9\x60\x33\xfa\x51\xde\x92\x0c\x78\x32\x02\x43\x0e\x1c\xe1\x21\xc0\x66\xba\xe4\x23\xb3\x52\x7c\x65\xc6\xf3\x66\x54\xd3\x26\x71\x49\xf3\x53\xda\xa8\xb2\xa8\x4b\xb6\x58\x13\x97\x67\x74\x69\x1e\xcf\xc6\x06\x53\xf3\x93\x07\x8a\x72\x97\x94\xce\x52\xb2\x59\xf4\x71\xf1\xe8\x68\x1c\x7e\xdc\xa6\xae\x76\xdb\x40\xe3\x14\x8d\x09\xa2\x1d\xe1\xf7\xfd\x4a\xf2\x95\x8e\x3f\x3c\x7c\x7b\x7a\x72\xdc\x3a\xbd\x48\x05\xf2\x94\xa0\x4b\x04\xcb\xc6\x0d\xc5\x66\xb2\xe8\x29\xee\x01\xe7\xf1\x4a\xe7\xc9\x75\x66\x85\xb1\xe5\x68\x28\xa2\x51\xdf\x67\xdf\xb0\x3d\x6e\xe4\xd3\x30\x59\x56\xbb\xcc\xfc\xad\x48\xad\xb4\xaa\x77\x4e\x76\xd3\x36\xc5\x8d\x74\x3a\x76\xa2\x10\x61\x1a\xd1\xe5\xd7\x41\x5c\x21\x79\xf0\xf2\xe1\xf4\xc3\xdf\xad\xc4\x55\x51\x99\xb7\xa8\xc7\xb9\xcf\xde\xbe\x39\xfd\xf7\xab\xb3\x37\xa7\xef\x4e\x9e\xbd\x38\x3d\x7b\xf1\xe6\xe4\x87\x57\x2f\x9e\x6f\x18\x80\xc5\x8e\x4c\xee\x98\x76\x7e\xf9\xc5\x55\xea\x92\xac\x39\xc1\x69\xc3\x75\x6e\x38\x31\xc9\x09\xcd\x3f\xd6\x2b\x3c\xf6\xcb\x2f\xd4\x91\xa1\x8e\x4e\xc0\x1e\xbd\x22\x11\x45\xbf\xfc\x22\xe8\x71\xb5\xbe\xa1\x4e\x1a\x85\x68\x0c\x49\x67\x4e\x92\xeb\xe5\x06\xcd\x9e\xcd\xb9\xa0\xed\xf0\x9b\x15\x6f\x13\x04\xc3\xfc\xcb\x38\x09\x37\x7a\x73\xd5\x42\xd6\x6a\x3a\x81\x15\xe3\x64\x9f\xda\x6c\xea\xd6\x37\x68\x1f\xba\x7d\xe0\xec\xb5\xea\xe9\xaa\x7e\xa7\xfa\x40\x5e\x5b\x0c\x44\x23\x27\x10\xbe\x14\x67\x66\x2b\x66\x64\x63\x04\x5f\x30\xf9\x56\x3a\x8f\x23\x4a\xbf\xaa\x1c\xdd\xd3\xfb\xe3\xfe\xe2\x14\xbf\x6d\xc6\x96\x0a\xfe\xa2\xdc\x78\xac\x2e\xa3\xde\xc6\x2e\xa3\x0a\x13\x5c\x31\x75\x76\x0d\x00\xdc\x62\x7e\x6f\x2e\xd7\x15\x92\xbe\xb5\xa1\xba\xf2\x22\xff\xfe\x47\x20\x5b\xb5\xce\x78\x0a\x09\xdd\x17\x12\xe8\xd7\x41\x6d\x97\xff\xec\xbd\xfa\xf9\xc5\x21\xdd\x3c\x81\xdb\xb6\xe4\x94\x8a\x09\xda\x6a\x11\xf3\x9a\x22\xe5\x1c\x4e\xc3\x91\x34\x3b\x0d\xd1\x3f\xbc\xaf\x5d\x18\x86\x27\x63\x5d\x4e\x5c\x14\x0d\xc8\x96\x91\x27\xd0\x51\x50\x90\x2e\xba\x46\x63\x7e\x69\xe5\xe7\xeb\x9a\x6f\x80\x88\x12\x5f\x17\x48\x4e\xb3\x03\x4c\xce\xf5\x5b\x17\x6c\x30\x67\xff\x62\xf1\xd5\xf0\x42\xf8\xf1\xa7\x77\xaf\x27\xf7\x26\x5f\x15\x75\x1a\xf3\xf3\x7b\x11\xe7\x5a\x9a\xd8\x29\x92\xaf\x26\xce\xbf\xb3\xde\x5a\x69\x53\x57\xfc\x50\x57\x0c\x18\x4d\x97\xa9\xc6\x4f\xc4\x3f\x16\x14\xd9\x40\xdc\x29\x92\xf1\xe6\xe5\xf9\x4d\x6a\x2e\xf4\xf8\x6e\xc4\xfc\x55\x90\xf1\xe2\x3f\x1f\xff\xf3\xcf\x8b\xe5\x8f\x1b\x91\x71\x5e\xdf\x10\x10\x3c\x6e\xd1\xc9\xfe\xe4\x41\xd9\xa3\x51\xbe\xea\x93\x5b\xa2\x59\xf1\x1a\xbf\xe0\x6a\xcb\x4d\xed\x6b\x50\xfb\xe6\x6a\xdf\xeb\xdb\xc2\xc7\x33\x63\xa3\xea\x5d\x9d\xd1\x46\xa2\x7b\xb5\x71\x26\x03\xb1\x6e\xb8\x4b\xb7\xb3\x3f\x79\x5b\x15\x08\x5a\xd1\x67\x1f\x18\x7b\x38\xc1\x94\x40\x9c\x72\x0f\x88\xb9\x0b\x56\x9b\xe2\x5e\xcf\x24\x48\x35\xb8\x59\xc9\x0b\x7c\x25\xd9\xef\x55\x5d\x59\x1b\x83\x1d\x08\x32\xdd\x0d\x04\x4a\x74\x06\xc7\xd3\x08\x2b\x9c\xa6\xfc\xd5\x4d\x69\x32\xf7\x7c\x90\x7f\x94\x7b\x72\x60\xbc\xb7\x27\xf6\x62\x4a\xc6\xea\x52\xee\xbe\xec\xa9\x6c\x2a\x30\xb6\x73\x84\x29\x22\x73\xa2\x6a\xeb\xa4\x64\x0c\x6e\x12\xfc\xc1\x32\x43\x54\xf4\x18\x73\x34\xd7\xb3\x45\x4a\x93\x99\x2c\x7b\x94\xcd\xa7\x0b\x6e\x42\x44\x61\x14\x0f\x28\x2f\xc4\x63\xce\xb5\x87\x7d\x80\xd5\xc6\x7c\x47\x78\x46\x3b\x14\xde\xde\xd2\xae\x9c\xbf\xee\x24\x21\x2f\xe0\x78\x6a\x78\x9f\xb0\x7f\x63\xe5\x7c\x6a\xca\x87\x98\x9f\xa5\xa3\xbd\xbd\xf2\x35\x4f\xfc\x0b\x28\x63\x83\x14\x5d\x53\x40\xbb\xfc\xa3\xbc\xe0\x69\x06\x9b\x45\x1a\x33\x4b\xfd\x15\x48\x30\x67\x6d\xb9\x61\x6b\x30\x1b\x20\x81\x5e\x7c\x09\x75\x03\xd0\x40\xb7\x91\xef\xfb\x4f\x48\xa7\x3f\xe8\xf9\x20\x09\xfa\x8f\x93\xbf\x91\xc7\xc9\xbd\x7b\x3e\x1c\x26\x9d\xfe\x28\x7b\x75\x98\x28\xbf\x99\x87\x03\xa4\xc8\xc5\x1f\xd2\x91\x24\x33\x0c\x20\xe3\xa8\xab\xbb\x9d\x37\xa0\x02\x1a\x9c\xa3\x2a\x49\x20\xa7\xec\xd6\xed\x6d\x81\xe0\x20\x45\x79\xca\x11\x7e\x3d\xef\xce\x82\x51\x9e\xa6\x57\x40\x0b\x68\x36\xf4\xb5\x5e\x58\x34\x0a\xe8\x0a\x98\xe2\x54\x0e\x10\x2e\x62\x6c\x9c\xe2\x3b\xbc\xf5\xc2\xa2\x1a\x8d\x8b\xc9\xcf\xb5\x5d\x7c\xb8\xd0\xb4\x7e\xa3\x1e\x34\xae\xc7\xc8\x98\x14\x87\x7f\x66\x68\xf6\xaa\xf7\xf6\xf6\x68\x77\x2e\xb6\xc6\x73\xb1\x51\xca\x57\x3c\x39\x87\xaa\x0d\x0f\x6d\x50\xfc\x8b\xaf\xed\xd7\x71\xf0\x26\x27\x38\x3a\xef\xfd\xfb\x45\xdb\x83\x57\x7a\xb3\xb2\xb3\xb5\x1d\xac\xa5\x51\xb6\xd6\x75\x47\x22\x41\x38\x44\x1c\xdd\xdc\xda\xca\x92\x2d\xc0\x9d\x0f\x40\x79\xda\x35\x3f\x02\x6b\x0e\xa5\x68\xe2\xe5\x4f\x18\xc1\x05\xe4\x61\xb5\xdb\x2b\x1d\x55\x74\x3c\x45\xe9\x13\x79\xa6\xc8\x8f\xaa\xcb\x5e\xd6\x02\x30\x1f\xf7\x07\xf9\x56\x70\x42\x5f\x8b\x3b\x7b\x7b\x1e\x0a\x76\x1b\xb5\x95\xbd\xe4\x97\x59\x9d\xb1\x30\x9b\x6c\x0f\x0a\xcf\x3b\x18\x5e\x7e\x1d\x1b\xe4\x64\x3c\xff\xcf\xfc\xe2\x9f\x87\x35\x80\x65\xab\xc9\x09\xc3\x4b\x69\x5d\x3a\x2e\xe5\xa0\xe9\x1b\x39\x64\x04\x26\xa0\xd3\x51\x4e\xb9\xce\x55\x14\xd2\xa9\xac\xe3\xc6\x1e\x74\x1f\x1b\x37\x63\x34\xa1\x03\x95\x30\x22\x7f\x6b\x8a\xa2\x8b\xa9\xba\xf9\xb0\x70\x93\x26\x73\x79\xc7\xf0\x71\x1f\x14\x42\x1a\x55\xd0\x2e\x85\xe7\x71\x94\xaa\x24\x79\x45\xf8\x82\x5c\x9d\x72\x66\x9d\xfe\xc1\x08\xb8\x0e\xc4\xd1\x0c\xb2\x16\x58\x4b\xd6\x42\xaa\x7d\x9d\x36\xae\xc2\xa2\x56\x53\xca\xaa\x6f\x7a\x8f\xfb\xc7\xe5\x1f\xc7\x3c\x9d\x65\x7b\xf8\x57\xae\x68\x55\xcf\x9a\x76\xea\xfe\x28\xab\xf2\xa1\x5d\xa8\xa5\xb4\x4e\xc7\x22\x4d\x40\xbe\xa2\x6a\xa1\x38\x6e\xb9\x6a\x88\xba\x59\xcc\x40\xd0\x2f\x63\xc0\x6c\x09\xa1\x8c\xfe\xd4\xc3\xce\xcd\x0e\x4d\x09\x9a\x6c\x5e\x6c\x46\x2d\x96\x99\x1b\xa3\xd0\x6e\x31\xe9\x45\x36\xc8\xbb\xd7\x25\x37\x7d\x97\x06\xdd\x66\x06\xdd\x52\xe9\xdf\x9e\xa1\x82\x95\xea\xfc\x16\x43\x88\x7b\xaa\x21\x48\x22\xd8\x61\x22\x2c\x61\x3b\xbe\xba\xca\x33\x70\xcf\xca\x85\x74\xb7\xbe\xec\xc0\x3d\x9b\x43\xac\x27\x31\x97\x1f\xf4\xcb\xf5\x6a\x5d\x11\x08\xe8\x16\x68\xc1\x9a\xf7\xa4\x29\x1a\xb1\x29\x70\xbf\x41\x8d\xe0\x5a\xe9\x22\x43\x41\xc4\x8b\x8b\x68\xb2\x54\xf0\x07\xe9\xe5\x31\x40\x14\x59\x31\x60\x75\xf1\x43\x32\x37\x7e\xfd\xc4\x39\xb3\x71\xe1\x15\x9a\x98\x3f\x7f\x66\x1c\xdf\x84\x4c\x44\xe9\x89\xc9\x45\x2f\x16\x51\xb8\xbd\xd2\xc2\xb9\xd3\xf5\xce\xd2\x8f\x08\x8f\x65\x3b\x2f\x27\xe2\xac\xab\x27\x6c\x0c\x70\xb0\xdb\xdf\x54\xf7\x67\x13\x63\xaf\x2f\x7c\x37\xd5\x8d\x3f\xf1\x57\x0c\x2f\xb3\xc6\x91\x68\xc7\x73\xff\xe2\x76\xc5\x3a\x79\xba\x0b\xbe\x0a\xa8\xe5\xeb\xe9\x95\xdf\x89\xa3\x6e\x46\x2e\xba\x71\x8b\xe0\x94\x5f\xf8\xdd\x9e\x18\xc9\xbf\xe7\x21\xa4\xb5\x16\x0c\xd1\x0e\x59\xe0\x6e\x3a\x9e\x22\x46\x00\x9e\x0b\x27\x14\x91\xf7\x5c\x12\xb3\xa2\x55\x91\xea\x2f\xaa\xe9\x2c\x92\x3d\xe5\x76\x4c\x71\x39\xa7\x9a\xa1\xbd\x3d\x3d\x06\x29\x81\x45\x52\x5a\x04\x37\x39\xfa\x1e\xa0\x6e\x32\x99\xa4\x88\xf2\x5f\xc0\xdc\x0a\xfa\x16\xfb\x01\xf2\xbb\x46\xdf\x13\x3f\x81\xb1\xc3\xf4\xad\x0f\xc9\x7c\xf5\xb9\x6b\x4a\x6f\x24\xc4\x4a\xe4\xfe\xd7\x21\xc8\xfe\x3c\xfe\xb0\x7c\xf1\xe6\xd1\xc7\x4d\x90\x42\x66\xd2\x64\x4b\x3a\xe2\x7e\x1e\xe5\xd6\xcb\xcb\x7b\x87\x55\xe7\x93\x2a\x99\xaf\x13\x31\xdb\x1e\xc9\x1d\x61\xa5\x84\x8b\xaa\x81\x83\x5c\x25\xfd\x72\x06\x66\x1d\xb4\x67\x4f\xb2\x5c\x9f\x31\x59\xe3\xf6\x4b\xe9\x6d\x28\x3c\x97\xe7\x71\xc3\x61\xc8\x43\xd9\x3c\xc4\x4b\x12\xb0\x1d\x53\xbc\xe6\xb4\xb2\xc1\xf7\xe4\x49\xc5\x0f\x8f\xec\x10\x33\x0e\xae\x76\x4a\x73\x89\xa2\xef\x6e\x3b\x36\x73\x28\x18\xcd\x33\x22\x14\xa1\x2a\x28\xa5\x1d\x3e\x9b\x32\xd7\x4a\x09\x8c\xcf\x3d\x36\x6c\x84\x16\xaf\x4d\x9e\x53\xf3\x27\xdd\x33\xd7\xcf\x5d\x8d\x42\x6e\x90\x34\x8e\x31\x35\x93\x39\xeb\xf4\x06\xbb\xbf\x90\x29\xd0\x86\x80\x47\x6c\x30\xe6\x33\x46\x0b\xc5\x7b\xb6\xc7\x45\x85\x12\x8c\x50\x98\x76\x08\x92\xe5\x95\x90\xed\xc9\x18\x2e\x93\x05\x4d\xf7\x2f\x08\xa7\x06\x75\x5f\xcc\x62\x27\xa5\x4b\x4e\xce\x35\x88\x7c\x80\x01\x01\x10\x24\xdb\x62\x56\xe9\x1a\xb3\xd4\xbd\x8b\x07\xe7\xe9\xb3\xfd\x8a\x32\xec\x28\x8e\x8d\x22\x27\x35\xbc\x2b\xc7\x00\x5c\x82\xd2\xe8\x37\x3b\xdf\x52\xf7\x4a\x0a\xab\xb1\x05\x1f\x82\xc3\xf2\xc6\x14\x7a\x95\xd2\xfd\x1e\x6c\x10\xdf\x35\x86\x59\x7e\xc4\x03\x81\x4e\x36\x30\xb3\xe5\x4c\xa3\xb0\x61\x4a\xcd\xac\xbf\x0d\x11\xc3\x35\x25\x3e\x54\x6e\x47\x04\x6d\xb1\x4b\xfa\x7e\x75\x20\xe5\x9a\x41\x35\x4d\x52\xb9\x76\x4c\x55\x0b\x73\xb4\x61\x14\x98\x4c\x67\xc9\xa1\x43\x3a\xa7\x61\x36\xc6\x13\xe3\xd2\xf6\xca\x87\xeb\x29\x13\xfb\x14\x43\x1a\x5d\xa2\x4e\x3a\x26\x89\x48\xd2\xa2\xe7\x4f\x8a\xdc\x2e\x70\x9f\x72\x37\x0b\xa6\x1d\x41\xe1\xee\x53\xf1\x34\x37\x18\x19\x3f\x29\x57\x4c\xe4\xaf\x67\x3a\x85\xe2\x38\x8e\x78\xa6\x91\xdf\xd0\x33\x8d\x6e\x77\x29\xaf\xca\x92\x85\x42\x1c\x89\xac\xf1\x47\x79\xf3\x95\x99\x65\xde\x6c\xb5\x4a\x79\xe4\x25\x0b\xca\x9f\x6b\x9b\xfa\xd4\x42\x72\x7c\x02\xa5\x99\xc8\x44\xa1\xf6\x0f\xca\x3f\x8e\x41\xdf\x6e\x52\x69\x60\x26\x12\x9f\x3c\x38\xe0\x86\x3d\x69\x0e\xe2\x0c\xd4\xa8\xeb\x56\xc8\x30\x56\x18\xfc\xf8\x93\xdd\x4e\xd3\x78\xbb\x34\x4a\x77\xca\xf7\x8a\x56\xea\x85\xa5\x72\xa4\x4a\xc0\xfe\x6e\xfb\x27\xac\xdd\x3f\xe5\xd4\x9f\x55\xc3\x06\xee\x53\xa3\x84\x9c\x6a\xaa\x10\x68\x51\x36\x74\xc8\xd2\x9f\x95\xb6\x8c\x72\x05\x8d\x82\x08\xbb\x49\x76\xcf\xfa\x99\xdf\x30\x31\xd9\x26\x1c\xa6\x2a\x49\x59\x7b\x5f\x4b\x56\x3f\xcc\x00\x20\x48\x73\x45\xa1\xdc\xdc\x14\xa6\x8a\x2d\xea\x88\x91\xce\x55\x84\xc3\xe4\x4a\xdc\x7d\x06\x55\x85\xb1\x33\xc9\xb5\x4e\x05\xd3\x3a\x13\x1c\x44\x9a\x47\xe4\x2f\x61\x4b\x39\x63\x67\xfe\x76\xac\x1f\x56\xc1\x4c\xcb\xb2\x71\x40\x74\x6a\xb1\x2c\x1d\xce\x24\x21\x33\x48\x5f\x52\x34\x3b\x65\x5b\x1d\x44\xb5\x12\x6f\x5a\x4e\x4f\x96\x58\xe2\x4f\xa4\x9a\x9f\x93\x82\xc3\x64\xd6\x21\x68\xbc\x1c\xc7\x22\xd3\xa5\xbe\xf9\x43\x84\xc3\x08\x5f\xb0\x67\x8c\x09\x1e\x01\x48\x29\x89\xce\x17\xd4\x7c\x40\xb2\xa3\xb5\x66\x18\xfe\xdc\xc0\xeb\x01\xa8\x7a\xe7\x7b\xee\x05\xa2\x7c\x8c\xae\x0f\x84\x2b\xa2\xdf\x3f\xee\x01\x92\x5c\x49\x85\xfc\xb8\x07\x66\xf0\x5a\xff\xe8\x01\x49\x1a\x03\xce\x1e\xb2\xe5\xdd\xc8\xae\x53\x44\x69\x09\x59\xaf\x23\xc4\x57\x77\xc4\xbd\xfd\x7a\x7d\x4a\x11\xb6\xbc\xbf\xae\x32\xab\x64\xd7\x75\xe7\x5d\x69\xaa\x29\x34\x5b\x5c\xde\xa0\x0c\xbb\x88\x2b\xfa\xab\x8d\x29\x72\x16\x82\x20\xa0\x7b\x7b\x1e\x0e\x32\xed\x03\x03\xf7\xf1\x6f\x1d\x4e\x65\x03\xa7\xcf\xba\x80\x57\x5b\xb1\x50\x29\xe4\x86\x10\x5d\xcd\x27\x87\x37\xc2\xba\x31\xd0\xb6\xa8\xcb\x08\x5d\x31\xb5\xc3\xf3\x57\x23\x7f\x05\xd4\x22\x97\xf4\xa9\x6c\xaa\x80\x7b\xa6\x2c\x8e\x33\x78\xfd\x5e\xe4\x37\xd7\x2b\x9f\x57\xb8\xc4\xaa\x59\xa6\x3d\x75\x7d\x40\x4b\x37\xb2\x56\x78\xaa\x27\xa4\x26\xf9\x35\xa4\xd3\xee\x0c\x5e\x7b\x87\x85\x25\xec\x8a\xae\xdc\xde\x0e\x47\x3a\xa7\x82\xef\xef\xa8\x37\x22\x11\x29\x6d\xf9\x92\xb1\xf2\xff\x0f\xdf\x3b\x78\x24\xb3\x67\xdd\x48\x67\x19\x65\x8a\x1d\x47\x53\x08\x43\xd9\xdd\x10\x1e\x26\x6b\x93\xbd\x4e\xdf\xa3\x8b\x28\xa5\x88\xb0\xb9\x55\x92\xbb\xc5\xf0\x67\xf2\x4c\xdb\xab\xea\xbc\xf3\xfd\x15\x38\xe3\x0a\xdf\x7b\xad\xef\x95\x3a\x1d\xa5\x12\x1b\xc2\x01\x3e\xb9\x2b\x11\xbe\xb8\xbd\x55\x53\x9a\xfe\x3d\x8e\x66\x33\x44\x0e\x3c\xff\x09\xbf\x44\x90\xf0\xdc\x7a\x3e\x63\x0a\x38\x63\x0a\xdc\xaa\xea\xe7\x13\x02\x46\xbf\xa1\x9c\x85\x4d\x98\xa0\x78\x3b\xd2\x96\x08\xb0\xc5\x7e\xca\xe6\xb2\xc3\xa8\x51\xac\xbd\x8c\x6f\x87\x01\x65\xab\xf6\x43\xb2\xe0\x4c\xec\x19\x17\x10\xdf\xa3\x31\xf5\x7c\x90\x94\x5b\xf9\x6e\x92\x24\x14\x91\x21\x49\x62\x14\xb8\xf2\x10\x89\xf0\x24\x71\x47\xdf\xf9\x20\x0d\x60\x97\x26\xf3\x7b\x49\x57\x08\x9a\x82\x02\xee\xf5\x41\x14\x68\xb3\x5f\x84\x31\x22\xe2\x46\x47\x02\x42\xd9\x6a\x98\x04\xae\xa9\xb1\x07\x22\x3b\xdf\x28\xb0\x23\x2c\xbf\x27\x2c\x9c\x75\x4c\x88\xb3\xb9\x45\x25\x9b\xab\xe6\x47\x7a\x9e\xd7\xf0\xa3\x85\xc1\x8f\x10\xcf\x0e\x66\x58\x43\x4a\xfc\x88\x4a\xe8\xdc\x82\x1b\x9a\xd9\x67\x53\x85\x73\x11\x97\x4e\xf9\x49\xfc\x2e\x91\x58\x32\x7f\xb5\x02\x5c\x8c\xcd\x11\x80\xfc\x74\x96\xde\x90\x3d\xf1\x63\x44\x52\x7a\x82\xc7\xd3\x84\x78\xc8\x92\xa5\x51\x0f\xa8\x08\xed\xfa\xbe\xbf\xb7\xa7\x71\x0a\x19\x78\xab\x3f\x7a\x62\xfe\x18\xdc\xac\x2a\xb2\xdc\x45\x13\x41\xe6\x7f\xa5\x44\xe1\xf3\xfe\x4a\x49\x97\x1f\x79\xdd\xdf\x5e\xb2\xd1\x07\xec\xc4\xf2\x81\xca\xf6\xa8\xa6\x6c\x6f\x0f\xed\x96\x18\x89\x92\x7f\x7c\xff\xa6\xb8\x77\xb5\x68\x34\x87\x24\x45\x2f\x31\x4f\x41\x28\xd3\x0f\xa8\xb6\x01\x09\x8c\x79\x49\x52\x94\x72\xe4\x9e\xcb\xb8\x16\xcc\x6e\xa5\x22\xd7\x23\x3b\x32\xc2\xe8\xd2\x65\xb4\x0f\x2b\xf7\x45\x1a\x24\x9c\xcc\x61\x8e\xcc\x41\xdc\x76\xbb\x44\x41\x5c\xf9\x8d\x45\x10\xb1\x6f\xec\xa4\xdf\x2f\x9e\xb0\xef\xc0\x34\x7d\x15\xa5\x1c\x36\xed\xb9\xf0\x3c\xb9\x44\xae\x3f\x30\x6f\x08\x0c\x97\xbe\x07\x0a\x33\xde\x07\x6a\x25\x02\xb2\x42\x71\x8a\x9c\xca\xd9\xe4\x8b\x53\xb4\xbb\x47\x8d\x2d\x6f\x02\x09\x99\x7e\x9d\x89\x27\xfa\xfb\x9f\x7e\xfc\xf9\xe5\xe1\x0f\x15\xa0\x12\x3c\x5f\xd0\x97\xa1\x91\x08\x6f\xbd\xa1\xeb\x21\x38\xb2\x18\x8d\x7b\x40\x0a\x99\x5a\x07\xe3\x19\x24\xe4\xdc\xf0\x72\xfe\x55\x4a\xd9\x57\x65\xf3\x39\x6a\x60\xf3\xd9\x82\xdd\xa6\xb9\x6d\x86\x7f\x42\x54\xad\xad\x40\x5a\x3c\x2a\x14\x2c\x73\x0b\x84\xd9\x11\x70\x9c\xa3\x11\x53\x69\x78\x45\x9f\x4e\x06\xdd\x39\xab\x0e\x8f\xad\xcc\xab\x50\xce\x51\x58\x74\x7d\x6c\x23\x2b\x12\x25\x96\x98\xb9\x32\xc0\x62\xad\x91\x63\xcb\x86\x8e\x23\x95\x36\x4c\x65\x01\x6c\x53\xf4\xa2\x9d\x9d\xc2\x8e\x42\xc9\xa0\x18\x45\xac\x44\xbe\x66\x88\x36\x56\x59\xe2\xe2\x4f\xa7\xc9\x95\x23\xc9\x43\x53\x5d\x45\xde\xf3\xf5\x00\x0a\xeb\xba\x55\x83\x34\xf4\x04\xb8\xe3\x24\xe6\x3d\x03\xee\x61\xe5\x14\xa8\xb7\x72\x8e\xc1\x92\xd7\xcd\x66\x94\x39\x00\x43\x51\x58\x3c\xb4\xe4\xe9\x52\xae\xbc\x03\xed\xca\x3b\x2c\x65\xf1\x5c\x3f\xbf\x56\x1f\x65\xaf\x6c\xf0\x01\x9a\x64\x72\xbb\xa3\x51\x6e\x83\xe2\x44\xd4\x57\x9a\xf8\x3c\xf4\xf2\x53\x14\xa2\x66\xf4\xd2\xbc\x22\x46\x83\x3d\xa9\xbf\xb8\x49\x1d\x18\x6d\x20\x2b\xef\xd8\xaa\x0e\x35\xdc\xc9\xb5\x65\x02\x9a\xd7\x59\x5a\x6b\x68\x63\x9d\xb5\xd9\xd0\x1a\xe0\x8d\x1a\xc6\xf1\x96\x2d\x6c\x51\xda\x41\xb3\x39\x5d\xf2\xb2\x31\xd4\x70\xed\xd6\x40\x82\x34\x6e\x28\x46\xad\x42\x84\xac\x02\xd4\x16\xd3\xaf\xac\x33\x4a\x59\xfd\xaf\xdb\x47\x08\x69\x55\xb6\xac\xc8\xb4\xd4\x60\x00\x0f\x61\xe5\x2f\xa9\xbe\x7b\x18\xf0\x98\x83\x55\xdb\x0c\x33\x14\x5e\x74\xe2\x28\xfd\x4a\xa2\xf2\x26\x8f\xae\x7e\x7a\x76\x15\xf5\x6b\x93\x35\x1b\x69\xd2\x38\x8f\x08\x7f\x60\xcf\xa6\x2f\xb9\x7a\x61\x0f\x1b\x38\xb6\x88\x27\x3d\x30\x74\x3f\xc0\x8b\x3b\x64\x37\x2e\xb7\x7d\x24\x99\xea\xe1\x08\x64\xe0\xd6\xe1\xc1\x83\xcc\x14\xbf\x49\x0e\x12\x83\x89\x1d\xe4\x53\x89\xb9\x6a\xf9\x5c\xce\x1a\x55\xe5\x25\x1d\xdf\x57\x5f\xfc\xa3\xb6\x44\x6e\x96\x3c\x53\xe4\xea\x31\x3e\xd4\x36\x0b\xb1\x66\xf2\x3a\x11\x28\xe7\xf0\x23\x30\x6c\xcd\xd1\xd9\x82\xdd\xd1\x93\x51\xe8\x72\x51\xd5\x70\xed\xf5\xbc\x4b\x7f\x1b\x04\x74\xd7\xe4\xd2\x15\x89\x8b\xec\xd8\xd5\xb5\x59\x37\x9b\xa4\x5d\x6e\x99\xfd\xab\xfa\xe4\xa8\xcd\xb8\x99\x05\x8c\x02\xb7\xc3\x54\x3f\xbe\xa9\x37\x4b\xba\x99\xe7\x53\x5f\x30\x3d\x89\x54\x9d\xbe\xa6\x94\x5c\xf7\xdf\xff\x73\xb6\xdf\xff\xa9\x42\xb9\x97\xa9\x24\x6b\x95\xf9\xbe\x29\x58\x8b\x28\xab\xfe\x7d\x8b\x7c\x9d\x85\x5f\x99\x37\xf3\x61\x1d\xf7\x0d\xa1\x59\xf0\x28\x73\xc6\xa4\xce\x79\x90\x7f\xc3\x22\x3e\x1f\x55\xfa\x4b\x47\xaa\x5e\xb2\x29\x30\x97\x8b\x66\xab\x01\x99\x95\x91\x8b\x12\x52\xdf\x94\x90\xef\x17\x24\xe4\x46\x9d\x2f\x7f\x57\x35\x58\xae\x9c\x6d\xe3\xe2\xf7\x33\x66\xa1\x54\xd8\xd2\x69\x52\xd6\x6f\x47\x05\xd7\xf9\x3a\xb0\x5e\xe6\x4c\x15\x5b\x4f\xc8\x69\x5a\xda\xd3\xf2\x1f\x41\x13\xe1\x31\x6d\xe7\xe2\x2c\x6f\x89\x3b\x6f\xd0\x75\x42\x9b\x81\xfd\x56\xee\xc0\xdd\x7e\x85\x28\x97\xe0\xf3\x78\x41\x3e\xab\x78\x27\x7d\x28\x8c\x43\x21\x8c\x48\x9a\x3d\xa3\x2f\x79\xdb\x4a\xcc\x90\x7d\x45\x19\x3f\xfd\xda\xc0\xf3\xc6\xf9\x1e\xf8\x34\x0a\xc7\x0c\x0c\xc3\x67\x8c\xe2\xde\x2e\x68\x1a\x85\xe8\x95\xfc\xa2\xe7\x0f\xaa\xbb\x50\xf1\x4e\x6d\x46\x97\x72\x3b\xa5\x31\xc2\x30\xcc\x10\xee\x61\x32\xe6\x9d\xf6\x7c\xb5\x25\xcc\xcc\x2e\xfe\x8d\x80\x96\x47\xa9\xec\x83\x87\xba\x7c\x3b\x6a\x93\xbb\xbf\xb7\x57\xf1\x88\xa5\x02\x92\xf9\x96\x87\xba\x9c\xa1\x64\x36\xfb\xe2\x95\x60\xb7\x0f\x50\x26\x90\x2b\x87\xa8\x7c\x8a\x9d\x2b\xc8\x36\x5e\x81\x74\xaf\x51\x0e\x3a\xfd\x20\x08\x3c\xed\x47\x22\x28\xbe\xbd\x75\x5d\xbf\xcb\xf7\xd9\xdb\x89\xe7\xe2\x24\x99\xb3\x36\x5d\x3e\x38\x7b\xf4\x70\xa1\xa7\xe5\x6b\xa0\xb7\x1b\x04\xec\xf0\x61\x3a\x98\x81\x56\x67\x3b\xc7\x2b\xb8\x7f\xc5\x08\x73\xee\x5f\x34\xb2\x16\xc4\x2a\x7f\x47\x66\x39\xa8\xa4\x2f\x90\x57\x6b\x72\x6e\x65\x39\x91\x1b\x40\xe3\x93\x4f\x08\x57\xa8\x39\x5f\x83\x75\xfe\xcd\xf5\xd5\xc3\xc5\x74\xf6\xbe\xbe\x46\x4d\x13\x9b\x7c\x25\x5e\xf4\xb0\xa2\xb0\xc0\x5d\xeb\x05\x54\x15\x29\x67\x47\x34\x53\x1b\xf4\xcc\x4b\xeb\x4d\x5d\xdd\x72\x9e\xeb\x44\xe4\xc2\x4d\xc8\xcb\xe7\x59\xa9\xf2\x7e\x4b\x70\x54\x71\xd8\xed\xe2\xc5\xf5\xc0\x6a\xcb\xef\x37\x06\xc5\xaa\x14\x6f\x1b\xd7\x66\xcc\xa9\x50\xdb\x2f\xbc\x5e\x72\x61\x68\x8f\x85\x5a\x88\x7a\x33\x57\xe9\xc5\xd3\x71\x32\xaf\x2e\x49\x6a\x7f\xe7\x2b\x2e\xdb\x5e\xb2\x58\xd7\x5b\x5c\xcb\xa5\xdb\x8f\xcc\x32\xd0\x7c\x43\x14\xeb\x40\x9b\x53\x5d\xb0\x2b\x0b\xfe\x67\x8f\x2b\x29\xba\x3b\xfa\x85\xf2\x51\x96\xc6\xc1\xc3\x5c\xe1\xf1\x96\xf6\xcb\x36\x53\x51\xca\x48\xcd\xfa\xf2\x2a\x19\x43\x1e\x05\xea\xc6\xfc\x2f\xe0\x5e\xc4\xc9\x39\x8c\x5d\x7b\xc1\x89\x2d\x75\x25\x57\xe6\xb8\xa6\x5a\x7d\x1b\xcf\xc7\x1a\x72\x5c\x5f\xae\x75\x93\xfc\x13\x63\x8d\x63\x54\x76\xd8\xac\x1c\x2a\x17\xec\x55\x4d\xd4\x8c\x6e\x44\x98\x28\x25\x0b\x26\xea\xa3\xf6\x6a\x77\xe1\xe4\xfc\x2a\xb2\x62\x8b\x4e\x89\x2a\x9d\xfb\x22\xaf\xd1\xb5\x4c\x76\xf3\x19\x15\xf1\xec\x02\x3f\xb3\xcd\x4e\xb8\x40\xe6\xd5\x19\xb8\x51\xc8\x1a\x4a\xf0\xe0\xe6\xfd\x8b\xd3\x0f\x27\xef\x3f\x0c\x34\x34\xce\x15\x79\x9f\x5d\x30\x4e\x70\x38\x70\xa3\xf4\x54\xfc\x5e\x01\xfd\xc4\x9c\x24\x97\x11\xe3\xe1\xab\xd1\x4a\xd4\x74\x4d\x07\x37\xac\xc9\xc1\xcd\x0a\x88\xd7\xd9\x5f\xea\xb1\xc1\x0d\xfb\xd0\xe9\xbf\x9f\x3d\x7b\x71\x7a\x3a\x70\x3f\x5e\x51\x77\xb5\x02\x1f\xaf\x68\xe1\x06\xef\x2b\xbb\xc5\xff\x18\xdc\xc8\xea\x9c\xcd\x27\xd9\x22\x35\xb5\x5c\x99\x92\x60\x55\x2c\x33\x28\xc4\x24\xb9\x4c\x9f\xd0\x32\x95\x65\x19\xe5\x95\x0b\x44\xdf\x5e\x61\xb5\x70\xa2\x86\x61\xaa\x4a\x95\xd4\x3d\xc3\x9a\xa1\xbc\x48\x24\xe9\x8a\xc2\x0d\x5e\x4e\x63\xc8\x97\x52\xc9\x37\xa1\x38\x44\x42\x78\x1f\xbb\x08\x2f\x66\xa2\xca\xe2\xca\xf7\x7d\x20\x6a\x72\xea\x24\x4e\xc4\xcf\x4a\x65\xea\xd1\x11\x65\xae\x57\x60\x25\x27\xc2\x0e\x7a\x52\x45\x8e\x54\xd1\x20\x06\xd9\xc7\x06\xbb\x3d\xc0\xab\xd3\x5f\x2c\xf4\xef\x2b\x12\xc9\x60\xe6\xde\xca\x1f\xa0\x21\x1d\x05\x18\xa0\x2d\x95\x54\x84\x6b\x62\xa5\x70\xef\xcd\xbb\xc5\x32\xb5\x8b\xab\xa7\x32\x6f\x1c\x4f\xab\xe4\x2a\xe4\x83\x6b\xa4\xa1\xcb\x2a\x47\xf3\x5a\x31\x25\x39\xf6\x21\x30\x33\xde\xe9\x43\x3c\x25\x63\x2e\x38\x8a\xad\x26\x0c\x25\xf9\xa2\x19\x39\x2b\xad\x59\x41\x23\x89\xc2\x71\x56\xd5\x44\xef\x32\xa0\xb6\x64\x5b\xec\xbd\x90\x34\x94\x3b\x31\x1f\x34\xc0\x76\x37\x97\x35\xf4\x06\x2f\x25\x44\xe0\xe6\x29\x75\xb7\xb2\x40\x83\x8e\x2d\x39\x2e\x22\x3b\xf6\x0d\x8b\x9c\x8a\x50\xed\x9b\x3e\x07\x3d\xd4\x7d\x29\x40\x1f\x6c\x62\x9b\xce\x46\xd9\xd7\xa3\x94\xe9\x79\x5c\x59\x45\x84\x0f\xa0\x8d\x3c\x25\x65\x34\x1e\x6c\xa9\x98\x67\x7e\x7d\x8d\xc0\xd2\xa7\x09\x46\x84\x24\xb9\x0a\x2a\xca\x6f\x7d\x9f\x8d\x8e\xf3\x9b\xfd\x14\xc5\x13\x39\xd0\x5e\x29\xee\xe2\xa0\x2e\xee\xa2\xf4\x48\x21\xd6\xb7\x5c\xbd\xa4\x81\x20\xba\x6e\xda\x34\xf9\x7d\xc1\x89\x63\x1b\x62\x5f\x75\xa4\x72\xee\xee\x5b\xe0\x14\x3d\x5b\xfe\x99\x4c\x7c\xd3\xb5\x20\x99\xcc\x0b\x29\x74\x8b\xc9\x2c\x75\x1b\x07\x1c\x8a\x24\xcf\xa8\x42\x18\xe4\x97\x5a\x1a\x76\x82\x6e\xb2\x2a\x1f\xaf\x68\xdb\x45\x39\x02\x47\x4c\x38\x5f\xd0\xe9\xbf\xdf\xbf\x32\x13\xa3\x34\x9c\xf4\x07\x7f\x98\x49\x17\xd2\xc9\x97\xde\x0c\x70\x41\xa7\x09\x89\x7e\x43\x72\x37\x1c\x65\x39\xd3\x35\x1b\x7d\x00\x86\xae\x7a\x0e\xb2\x53\xed\x59\x12\xd6\x3f\x20\x0e\xc3\x72\x34\xd8\xef\xcb\x95\xca\xb7\xef\xdb\x11\x25\xe0\x00\x1c\x82\x23\x70\xbc\x5e\x15\x51\x85\x78\xca\x3e\x04\x35\xdb\xb9\x73\x76\xb6\x60\xcf\xfc\xba\x40\xfc\x25\xb6\xcd\x80\xcc\x5e\x2b\xca\xc0\xe4\xea\xfd\x84\x63\xb3\xa8\x41\x42\x36\x80\x94\x94\x84\x57\xad\xb8\x24\xb5\x8a\x0b\xac\x74\x48\x6c\x15\x25\xc2\x87\x1e\x68\x65\xc8\xb0\xff\x2a\xb1\x60\x50\xce\x2e\x20\x8f\xdb\x40\x66\xd1\x63\xd3\x66\x85\xb7\xa3\x2e\xdb\x17\x5d\x9a\xfc\xe3\xf4\xed\x9b\xa0\x9c\x87\x25\x57\x49\x5f\xe6\x3a\xa5\x41\xff\x31\xfd\x5b\x11\x12\xff\x98\xde\xbb\xa7\xc2\x25\x18\xcd\xed\x1a\xb8\x78\x6a\xe2\xe2\x29\xc7\xc5\xd3\xff\xef\xe0\x09\x96\x02\xbb\x07\x7d\xb0\xdb\xf3\x2d\x49\x5e\x99\xcc\xcd\x25\x5d\x38\xa4\x23\x7f\xe5\xfb\x83\x35\xb2\x77\x6a\x95\x96\x23\x94\x7a\x08\xac\x7b\xd5\x83\xbe\x3f\x30\xfa\x54\xd1\xa1\x6a\x71\x7c\x9d\x5e\x00\x01\x15\x26\x7c\x15\x97\xb5\xf2\x6e\x0c\x13\x26\x5f\xa9\xec\x37\x10\x8b\xab\x6e\xa8\x5f\xe0\x8d\xaa\x32\x23\xae\xeb\x9f\x2b\x70\xc3\x4e\x08\x51\xc5\xba\x90\x45\x31\xbb\xf1\xa4\xf0\x5b\x3e\xb8\xf2\x57\x05\x6b\x7a\x39\x37\x62\xd2\x40\xd9\xe6\x98\x8d\xaf\xc3\xd3\xfd\xd3\xc9\xaf\xff\x7a\xf1\xc3\xf8\x43\xdb\x94\x32\x3a\xb2\x3d\x8f\x40\x71\x9f\x0a\xc5\x9b\x43\xdf\x9f\x26\xf8\xa7\x28\x14\xc5\xd7\xd2\xd3\x29\x4f\xe5\xe6\x3e\x0d\x17\x04\x4a\xc6\xf6\x94\x3b\x56\x78\x5c\x70\x32\x9f\x23\xf2\x2c\xc1\x14\x46\x98\xf3\xb7\xa7\x29\x7b\x55\x1e\xec\x3d\xa3\x2a\xdb\x91\x00\x1c\xf2\x34\x2c\x45\x1b\xde\xc1\x08\xb8\x38\xc1\x86\xd3\xdb\x2c\x4f\x37\x4d\x2e\x79\x95\x8f\x7c\x3a\xb6\x2c\x9a\xc9\x22\x11\x00\x97\x26\xf3\x8d\x94\x99\xc6\xf9\x51\x1b\x22\x0a\x8d\x79\x4d\x30\xa3\xa6\x18\x71\x85\x2f\x9b\x59\x63\x62\xd5\xbc\x72\x4e\xcf\x4f\x80\xb9\x0c\xfc\x69\xc7\xf3\x0d\x42\xfd\xa2\x00\x91\x79\x12\x27\x17\xcb\xce\x0c\x51\x12\x8d\xd3\x7d\x5e\xf7\xe5\x0b\x6f\x9c\x0b\xb4\x3c\x7f\xff\xee\x5f\xf7\x6a\x3d\x4c\x73\x44\xc6\x08\x53\x28\xa4\x26\xe9\x70\x67\x7f\xca\x13\xfa\x29\x3f\x98\x9f\x4e\x61\xfa\x5a\x0c\xed\x5d\x76\xc0\x6b\x7f\x8e\x3d\x6d\xaf\x45\x33\xcf\xfd\x38\x30\xe5\xd9\x76\xd9\x11\x8c\x52\x3b\x46\x85\x9d\xfb\xb9\xed\xe1\x86\x63\x05\x20\x48\xbb\xe9\x34\xb9\xea\x2a\x76\x56\x2c\xaa\x6c\xda\xde\xb9\x78\x39\x47\x64\x16\xa5\xa9\xf0\x6a\x15\x13\x73\x96\xf3\x8c\xf6\x33\x63\xb7\xe6\xe2\x2a\x16\xdf\xfc\x50\x65\x2e\xd2\xb9\xc5\x9a\xed\x8e\xea\x0b\x40\x97\x6c\xd4\x45\xf0\x35\x9f\x1d\x13\xb8\x6d\x4d\x75\x6a\x2c\xcb\xa3\xd2\xdf\xc7\xa6\xa5\xe5\x41\xd3\x3a\x6b\x4a\xe7\xd8\xd0\xfa\x50\x44\x21\x4a\xa1\xf0\xcb\x62\x10\x1d\x47\xaf\xec\xe7\x85\x22\x16\xfd\x29\x65\xb2\x5a\xdf\x7c\x33\xe0\x9f\x8d\x04\x7a\x86\xdf\xe6\x39\xa4\x90\xb1\x06\x69\xb4\x38\x3c\x28\x06\xf7\x34\xc3\xb2\x8a\x8f\x1c\x8d\xca\xf5\x70\xfb\xad\x28\xa4\xdc\x59\x33\xd8\x63\x0e\xd3\x94\xe7\x32\xd8\xc4\xa7\xed\xd8\xd0\x98\x9c\xf6\x74\xb3\x39\x47\x52\xfe\x83\x62\x9e\xff\xbf\xcd\x27\xdd\x1c\xc7\x15\x24\xf8\x33\x8c\x43\x37\x5b\x1a\x47\xf6\xc1\xad\x8e\x63\x4c\x22\x1a\x49\xbf\xdf\x36\x07\x92\xb5\x5b\x1a\x89\xf1\xc9\x56\x43\x29\x85\x5e\x54\xc0\x62\xdb\x20\xa7\xa7\x08\xc6\x79\x67\xf7\x17\xe1\x59\x3f\x23\x07\x12\xe4\x2c\x30\x3c\x8f\x91\x43\x13\x27\x64\xc3\x99\x45\x18\x39\x74\x8a\x1c\xd1\x4b\x87\xb5\xb2\x48\x9d\x64\xa2\xea\x45\xa6\x4e\x84\x1d\x82\x66\x09\x45\x4e\xa8\xb9\x40\xda\xfd\x7d\x38\xdf\x4f\xbc\x57\xdb\xe0\x6f\x55\x41\x32\x26\xe9\x1e\x80\xfb\x9b\xf2\x1f\xc5\x2c\x99\xe0\xbe\x98\xa7\x94\x20\x38\xdb\xb0\xe2\x68\x61\xe5\x0b\xc2\x24\x7b\x3c\xd5\xea\x0b\xc2\xe1\x3c\x89\x84\x52\x62\xc8\x6b\x2a\x0e\x40\x77\xa5\x93\x2e\x66\x33\x48\x96\x9d\x49\x42\x3a\xfa\x41\x19\xa9\x50\x12\x4d\xd6\x2b\x02\x6b\x6b\xa5\xdf\xb1\xdf\x61\x72\x85\x3f\x4f\xcf\x9b\x97\xb3\xb6\x60\xec\x6b\x55\x9e\xcc\x7e\x85\x13\xda\xe1\xbf\x64\x7f\xf7\xc5\xe6\xea\xe4\xe4\xeb\x98\x7b\xe7\x33\x87\xbd\x7a\x36\x12\xb1\xf2\x09\x36\x24\xcf\x54\xd7\xf6\xd4\x56\x31\x88\xc3\x2d\xe4\x26\xb2\xa9\x2a\x2d\x55\xa7\x33\xa5\x68\xbc\xc5\xf1\x52\x3f\xe6\xdd\x55\x69\x62\x14\xd0\x89\x23\x8c\xac\x01\xf5\x4f\x2f\x44\x22\x91\x7d\xa3\x26\x55\xd1\xc1\x2c\x4b\xf8\x00\x08\x12\x90\xee\x68\x87\x6c\x9c\x65\x8e\xf0\xe2\xc0\x52\x6e\x48\xf8\x8d\xf7\xf6\xa4\x82\x54\xbc\xd1\x8d\x28\x22\x90\x26\xe4\x89\x2d\x15\x85\x4c\x06\xb1\xb2\xe5\xa9\x40\x7b\x7b\x35\x9f\xe3\xe5\xdb\x52\x4a\x16\x63\x9a\x90\x20\x08\xf4\xf5\x5d\xf5\x77\x96\x1d\xea\x89\xea\xdb\x40\x7f\xd0\xf7\x90\x9f\x79\x9d\x23\xe3\xb3\x66\x4f\xa2\x89\xc7\x4b\x17\x75\xa3\x54\x94\x30\x42\xbe\xaf\x12\x78\xb0\x06\x3c\xe4\xdf\xde\x16\x5e\x70\x17\x58\x2c\x5d\xe8\xee\x16\x3b\x5d\x98\x12\x76\x56\x48\x53\x5b\xd6\xb0\xf8\xe0\x84\x24\x33\xcb\x17\xd8\x42\x45\x13\x6f\x17\xc9\xa7\x2b\x72\x6b\x64\x7d\x04\x54\x65\xba\x90\x7a\x73\x96\x32\x8b\x26\xa7\xfc\xc5\xee\x18\xc6\x6c\x95\xbb\x69\x1c\x8d\x91\xf7\x10\x74\xfa\xfe\x8e\x2b\x1e\x77\x83\x20\xc0\x85\xc9\xe6\xd9\x93\x72\x57\x44\x91\x3b\xde\x97\xd7\x70\xce\xdf\xb9\xbd\x75\x4f\x85\xf1\x15\x5b\x07\xc6\x1f\x3e\x51\x06\x51\xf9\xca\xfe\xff\x7a\x4f\x06\xff\x8e\x6e\x5f\xfa\x98\x7a\x4f\x06\x0f\x6f\xfb\xf7\x6f\x0f\x0f\x7c\xef\xc9\xe0\x59\x0c\x67\x73\x14\xfa\x4f\x78\x23\x7f\xdd\xef\x52\x94\x52\x0f\xfb\xf9\x91\x16\x66\xcb\xbf\xa1\x53\x92\x5c\x39\x18\x5d\x39\x1f\x96\x73\xf4\x82\x90\x84\x78\xee\x4b\xcc\x13\xf3\x38\x90\xb2\xad\x48\xd9\xd9\x9e\xce\x09\x82\xa1\x83\x13\xdc\xe1\x6b\xc3\x8e\xfc\x08\xa7\x14\xe2\x31\xea\xfe\x82\x5f\x62\x27\x21\x21\x22\xec\xd1\x73\xe4\xa8\x47\x00\x7f\x81\x33\x13\x27\xe1\xd3\x95\x3a\xb3\x45\x4a\x9d\x29\xbc\x44\x0e\x74\x86\x85\xe5\x1e\x79\xbe\x33\xe3\x16\xc7\xae\xeb\xaf\x3c\x83\xfe\x44\xf7\x6f\x3c\xc6\x8e\x83\x80\xde\xde\xd2\xef\x91\xb4\x29\xfb\x3c\x39\x8c\xfe\xb5\xa3\xab\x6d\x05\x3d\x40\x8c\xe2\x5a\xd4\x7f\x8c\xff\x46\x1f\xe3\x7b\xf7\x7c\x32\xc4\xa3\x00\x0d\xb1\x2a\xa3\xe5\x90\xec\x4b\x63\x95\x2b\xd6\xbf\xc1\x7b\x7b\x35\xb0\x0a\x03\x4e\x81\x0d\x20\x47\x1e\x58\x81\xbb\xe6\xcf\x0c\x64\x81\xbb\xea\x4f\x20\xe1\x19\xaa\x92\x56\xf4\x1b\x22\x4f\x72\xbf\x04\xf9\x11\x3f\xb3\xc2\xea\xce\x86\x19\xc1\x7b\xd9\x82\x24\x13\x87\xfa\xbe\x75\x69\x9f\x41\x8c\x13\xea\xb0\x16\x1d\xe8\xf0\xa4\x27\x0e\x4c\x1d\xa8\x37\xb5\x6b\xb4\x3e\x91\xc0\x9a\x6c\x42\xd9\x0c\x2a\x53\x3e\x56\xa6\x7c\x12\x50\x3e\x95\xc6\x24\x04\xe6\x8f\xdb\xdb\xdd\x3e\x20\xb9\x89\x08\x76\x7b\x40\x7a\x7c\x98\x34\xb8\xb7\xe7\x11\x3d\x21\xc1\x6e\xcf\x07\x55\xf3\x4e\xba\x9f\xd0\x12\x10\x7f\x95\xf5\x72\x26\x7a\x29\x39\xf0\x4c\x6d\x63\x91\xce\x5d\xec\xe4\xb7\x93\x22\x8b\xd0\x49\xcf\xce\xce\xf8\x7e\x3f\x3b\x0b\x28\xe0\x4c\x8f\xed\x12\xdd\xf6\x3c\xcb\xee\x93\xaf\x71\x64\xf0\x30\xcd\x55\xde\xa3\x49\x8c\xc6\xf4\xf6\x76\x57\xfe\x95\x71\x00\xb9\x0b\x77\xfb\x6c\x57\x97\xee\x76\xd3\x29\x9c\xe5\x1e\xb1\xb0\xf5\x77\x24\xb9\x5e\xaa\x87\x7a\x3b\x94\x2c\xd5\x20\x9e\x43\x8a\x2a\xb9\x56\xe9\x63\x1e\x7b\x9c\x89\x4d\x66\xf6\x33\x8e\x3e\xda\xed\xad\xc6\xb2\x20\xd8\x8d\xea\xcc\x6a\xe5\xe9\x8c\x4c\x85\xb0\x0b\x0c\x48\x70\x29\x19\x15\x55\x4e\x9d\x4b\x11\xbd\x62\xf2\xbe\x1d\x1c\x94\x3b\x41\x32\x0f\x16\x80\xbe\xc8\xa3\x83\x83\xaa\x94\x7a\xb2\x03\x53\x71\x03\x9b\xab\x3f\x35\xd7\x73\x97\xde\xde\xba\x82\xd1\xb8\xbb\x41\x10\x7b\xd4\x37\x8f\x48\x7d\xda\xd0\x27\xe7\x1e\xf2\x07\x34\x6b\xe6\x5c\x9e\x4d\x62\x8b\x05\x41\x80\x8c\xfd\xf3\x1e\x4d\x10\x41\x78\xac\x36\x11\xeb\x85\x33\x85\x29\xfe\x8e\x3a\xe7\x08\x61\x47\x6d\xd6\x14\x85\x4e\xc7\xe1\xce\x3a\xcf\xcf\x3d\xc1\xd6\x02\x85\x6e\x96\x6d\x2f\xfb\xf4\xa5\x21\x3f\x5c\xda\xa9\xf7\x49\xe6\x34\x32\xae\x5a\x45\x82\x8c\xa0\x6f\x6f\xad\x6f\xb1\x33\x33\x7f\xb6\x2f\xb3\xec\xd8\x62\x19\x93\xe0\x66\xb5\x93\x87\xb1\x71\xfc\x1c\xb1\x39\xbb\x90\x7f\x93\x0c\xd1\x28\x20\x43\x34\x62\x52\x59\x62\xb2\x81\xdd\x5d\xf3\x27\x48\x0a\x4c\x60\x37\x7f\x01\x78\x19\x4f\x48\x6e\x6f\x13\x93\x09\x32\x2e\x9f\xe4\x79\x44\x12\x60\x79\x22\xfb\x5d\x82\x2e\x11\x49\xc5\x5f\xe1\x62\x8c\xcc\x1a\x90\x8c\x95\x2b\x3e\x2f\xc1\x73\xb7\xb7\x78\xe5\x83\xc4\x07\xd0\x48\xd1\x95\xfb\x1e\xff\x1c\xef\x4d\xfe\xfa\x93\xa4\xcc\x9a\xa1\x62\xcd\x20\x77\x53\x5a\xd3\x55\xc9\xcd\xa0\xfc\x85\xea\xd3\x25\xe1\xc3\xe3\xc9\xbd\x92\x2d\x61\xf0\x2e\xea\x0d\xfa\x74\x31\xfe\xf4\xcf\x9f\xdf\x3d\xb4\x1b\xf4\x99\xe0\xcc\xc4\x64\xe1\x28\x72\x9f\x72\x41\xba\xc6\x4a\x9f\xa1\xb5\x1f\xd9\xd2\x96\x3f\xcc\x43\x48\x7a\x60\xe8\x5e\x20\xfa\x72\x9c\x60\x95\xa1\xcd\x16\x04\x2d\x95\xa9\xea\x98\x6a\xa5\x34\x1f\x6e\x21\x0e\xa5\xdf\x07\x6e\x7a\x29\xac\x5a\xf7\x81\xcb\x06\xfe\x43\x72\x5d\xcc\x0c\x23\xac\x43\xd7\x5c\xbf\x73\x5c\x6d\x2e\x5a\x16\x2f\x88\xbc\x9e\x85\x8b\x22\x85\x63\xce\x4b\x70\x70\x04\xdc\x39\x41\x4c\x77\x43\x27\xe9\x1c\x8d\xe9\x7b\x48\xa3\xc4\x95\x7e\x3d\x1d\x1f\xaa\x23\x39\x6b\x67\xae\x14\x4d\x6a\x7f\x3a\x9f\xaf\xa5\x32\x4f\x56\x88\x26\xf6\x8c\x42\xea\x81\x19\x24\x9f\x10\x91\x86\xaa\x3e\x70\x61\x1c\x27\x57\x9d\x30\xa1\xf2\x52\x36\x89\x6e\xe7\xc0\xe9\x1c\x38\xfd\x63\xa7\x7f\xac\x6e\x12\x34\xf9\x6f\x17\xb8\xf7\x8d\xdf\xff\x31\x7f\x8b\xd6\x55\xa5\xa1\xc2\x65\x9d\xf1\xf3\x7e\x9d\xc9\xbb\x07\xdc\x71\x44\xc6\x3a\x9b\x98\x3b\xbe\x36\x9b\x1a\x2f\x73\xdf\xcf\xb5\xd6\x2e\x57\x91\x7d\x26\x20\xe1\xd1\x22\xa5\xb9\xe8\x3b\x9d\xbe\xd3\x3f\x70\xfa\x07\x85\xb9\x38\x2e\xcc\xc5\xf1\x26\x73\x71\x04\xdc\x84\x44\xc2\x21\x0a\x17\x34\xe9\xf0\x1a\xac\x1d\xc9\x31\xd7\x4c\xd7\x3c\x89\x97\x17\x89\xb2\x91\xba\xdc\xc6\xc2\xf6\x7d\xcf\xe9\x39\xfd\x9e\x73\xcc\xff\xd9\xd2\x24\x85\x08\x2f\xff\xa4\x16\x35\x11\x7f\x12\x8b\xcd\x18\x0b\x1a\xa5\x8a\xcb\x65\x9f\x6a\xeb\x05\x2a\x67\xe9\x10\x36\x41\xc3\x6f\x3b\x1a\x89\x45\xba\x83\x41\x56\xcf\x19\x94\xa6\x7c\xe1\xed\x95\xf9\xd6\xc3\x2c\x13\x7f\x58\x4e\x00\xd6\xe7\x29\xac\x52\x71\x72\x0c\x87\x6e\x4a\xc6\xae\x71\x8b\xff\x54\x1e\x61\xbd\xd0\x62\x25\x5d\xe0\x2e\x48\xec\xfd\x45\xed\x35\x3f\x4f\x0d\x1d\xc4\xad\x80\xd9\x23\x9c\x0a\x7d\xb7\xda\x7f\x6d\x99\x1b\xcb\x02\xb7\x32\xf9\x7e\xe1\xa9\xd1\xa7\x56\xcd\xdc\x18\xfc\xfc\xf3\x4c\x4e\xeb\xec\x5c\x6b\x8b\x21\xd8\x6c\xe8\xd1\x98\xf7\x53\x98\xd0\xe7\x5a\x22\x30\x83\x69\x95\xd8\x10\xd9\x64\x86\xa3\x92\x85\x7c\x3d\x90\x27\xbd\xbc\xe8\x8c\x17\xe4\x32\x8f\xd0\xd4\xa8\xcf\x30\x0a\x3b\x11\xcf\x2a\x2e\x7f\x88\xf4\xbd\x95\x29\x61\x0c\x94\x68\x96\xa1\xbf\x6d\x48\xda\x1a\x53\xb1\x36\x60\xbf\x0d\x3c\x6d\xc3\xe6\xbd\x41\x61\x16\xb7\x26\x7a\x02\xd2\x5c\xaa\x63\xaf\x64\x99\xb4\xa9\xa3\x7b\x7b\x02\x0c\x19\x50\xbb\xd5\xe6\x94\x69\x94\x0e\xba\x66\x92\x61\xca\x6d\x1e\x8b\x94\x3a\x28\xa2\x53\x44\x9c\x73\xe4\xb0\xb7\x9d\x84\xe4\xcc\x38\x3b\x86\x4d\x40\x69\x95\x63\x82\xb8\xa5\x5d\x14\x05\x97\x37\xc1\x8d\xa1\xac\x0f\xa4\x1a\x81\xcc\x78\xa0\x62\xac\x10\x9b\x0a\xba\xb7\x27\x0c\x2f\x2b\xdf\x4b\x01\x12\x36\x54\xa9\x45\x06\x73\x2f\xf5\x33\x03\x79\xaa\xf2\x34\xec\x88\xbc\x0b\x20\xcd\x8c\x74\xe5\xac\xc9\x00\xe7\x6c\x76\x80\x04\xbd\xc7\xe4\x6f\xf4\x31\xb9\x77\xcf\xc7\x43\x62\x96\xc1\x27\xda\x7e\x37\xf6\xce\x3d\x14\x40\xae\x8e\x49\x1b\x02\x04\x43\xf6\xb1\x91\xce\x61\xef\xfb\x3e\x28\x90\x31\x48\x00\x53\xfc\x7d\x80\x14\xda\x92\x06\x29\xf0\x70\x30\xbc\xf9\x84\x96\x83\xb2\xac\x2c\x8d\x75\xd6\x04\x14\x5d\x48\x2e\x52\x9e\xa5\x1e\xd0\x20\xf2\x54\x62\x89\xee\xaf\x0b\x44\x96\xa7\xbc\x64\x59\x42\x4e\xe2\xd8\x73\xff\x62\x78\xa3\x38\x99\x39\x9c\xd5\xf9\xbe\xc8\x61\x91\xeb\x63\x40\xbb\x33\x38\xcf\x83\x4b\x85\x31\x8e\xe7\x6a\xfe\x31\x4e\x20\xf5\xb8\x8e\xff\x21\xa1\x30\x7e\xc5\xe7\xd0\xf3\xd9\xbc\x09\xcd\x9f\x1d\xc2\x27\x54\x5e\xe7\x09\xc1\xc7\x28\x8a\x3d\xbc\x7f\xe8\x2b\x6b\x04\xd3\xff\x68\x37\x0a\xc1\xf5\x80\x74\xaf\x3b\xa8\x7b\x0d\x96\x03\xd2\x5d\x76\x50\x77\xb9\x5a\xf9\xfe\x6a\x35\xf2\xf7\xf6\x26\x9e\x49\x34\xd8\x07\x84\x5f\x03\xc4\x07\xe9\x2a\x8b\xc3\x64\x8a\xeb\xd2\xf3\x60\x90\xfa\xc6\xe3\xc5\x89\x1f\xe2\x11\xa7\xbb\x5c\x08\x5a\x3e\x40\xcd\x24\x40\x43\x6d\xe6\x45\x1a\x56\x3e\x58\x7a\xd0\x6c\xbf\xbc\x54\x43\x32\x5a\x0f\xb6\xad\x6d\xc2\x07\xc6\x7d\x1f\x40\xd3\x03\xf5\x16\xd4\xf9\xb2\x2e\xc0\x5b\xbf\xbd\x8b\x4a\xb2\xe3\x2f\x8a\xeb\x7b\xf9\xf3\xdb\x77\x93\xff\x79\xfd\xaf\x5a\x5c\x9f\xaa\xb6\x66\x3f\x33\x36\xc8\xed\x5b\x42\x74\xdd\x25\x5f\x1e\x2f\x17\x68\x13\x0c\x6a\xf1\x73\x06\xba\xec\xf0\x8e\xd8\xa1\xaa\x4a\x3e\x2f\x95\x27\xd6\x05\xee\x09\x93\x20\xcc\x0c\xb2\xd6\x22\xc7\xe6\x1b\x3f\xc1\xf4\x9d\xe1\xc0\x5d\x9f\x23\xae\xb1\x0c\x9a\x47\xc1\x48\xc1\x56\x95\x87\xca\xa6\xd1\x55\x25\xd8\x4d\x1b\xc7\xfc\xfa\xb1\xae\xe8\x6e\x1a\x43\xe6\xd7\x8f\x1b\x54\x88\xba\x2b\x0e\xe5\x04\x3b\xda\xbd\xed\x44\xa9\x93\x22\xee\xad\xfa\xe5\x3b\x36\x88\x5f\xbe\x73\xe8\x14\x52\x67\x4e\x92\x69\x74\x1e\xd1\xd4\xa1\x53\x94\xa2\x0c\x88\x32\x21\xc9\xcc\x19\x27\x18\xa3\x31\x8d\xf0\x45\xb7\x4d\x72\x88\x06\x02\x58\x49\xc0\xcd\x43\x43\x1a\xae\x6f\x9b\x3a\x7c\xf9\x85\x7c\xf5\xe0\x33\x2f\xe3\x56\x16\xf1\xc3\x14\x19\x6b\x78\x8e\xe8\x15\x42\xb8\xb8\x52\x53\x98\x3a\xaf\xe0\x12\x11\xe7\x81\x63\xa0\x18\x80\x93\x26\xce\x18\x11\x0a\x39\xa6\xe8\xd7\x05\x4a\x69\xea\xcc\xe0\x92\x09\x43\xec\x1f\x9c\x50\x26\x1f\xf1\x57\x28\x45\x61\xb7\x69\x90\x59\x49\x17\x6d\x99\xe0\xb0\x01\xe8\xab\x01\x02\x24\xcb\x9e\x3b\xd1\x79\x73\x05\x4e\x63\x12\xe1\x50\xa4\x69\x10\xb0\x8f\x6d\xe3\x36\xd8\x51\xf4\x75\xe0\x36\xb6\x01\xd6\x00\x31\x88\xc0\x02\x8c\x41\x08\x26\x60\x06\xe6\x60\x0a\xce\xc1\x25\x58\x66\x32\xea\x85\xe1\x84\xb9\xf8\xa3\x82\x38\xde\xb6\x07\x71\x9c\x7d\x03\x20\x8e\xb3\xff\x33\x20\x8e\xb3\x6f\x1b\xc4\x71\xf6\xbb\x81\x38\x5e\x7c\x4b\x20\x8e\x8f\xdf\x04\xcc\xe2\x3a\x07\xb3\xb8\xde\x2a\xcc\xe2\xdd\x9f\x30\x8b\x5a\x98\xc5\x69\x11\x66\x71\xfa\x39\x61\x16\x57\x16\x98\xc5\x55\x0d\xcc\xe2\xa2\x1a\x66\xf1\xa9\x00\xb3\xf8\xf4\xe5\x60\x16\xa7\xc6\x09\x7f\xfa\x25\x60\x16\xaf\xff\x84\x59\xfc\x5f\x80\x59\xbc\xa9\xb7\xaf\xfc\x70\x7d\xf8\x8f\xb7\xd1\xfb\xb9\xdd\xbe\xa2\xe0\xf5\xa9\x4a\x5a\x60\x82\xd9\xc5\x05\xf3\x91\xa7\x52\x48\xfe\x49\xa4\x59\x7e\xca\x49\x72\x9c\xc4\xfc\x69\x6d\x63\xac\x85\x67\x1c\xdb\xe0\x19\x47\x65\x78\xc6\x18\xc6\xe3\x45\x9c\xcb\x3d\x51\x81\xcb\xe8\xf7\x75\x98\xa0\x4a\xd9\x29\x45\xfa\xb1\x8e\x6f\xd6\xc8\x84\xfb\xf6\xec\xd4\xeb\xbf\xaa\x1a\x78\xd0\xba\x01\x19\x6d\xc6\xff\x79\x68\x05\x3d\xb8\xd6\x12\x58\x0a\xb3\xf2\x70\x1b\xe0\x92\x5c\x28\x25\x9b\xb0\xcc\x22\x9c\x9b\xa5\x2a\x28\x46\x45\x0d\x1c\xed\x3a\x2b\x84\x30\x1d\x59\xb3\x11\x96\xcc\x06\x9f\x31\x5e\x88\x29\x85\x4e\x3a\x4d\xae\x22\x7c\xe1\x18\xb4\xe9\x5c\x45\x74\x1a\x71\x85\xdf\x19\x2f\x08\x41\x98\x1a\x61\x41\xce\x24\x21\x46\xb4\xe2\x21\x18\xba\xa7\x7a\x43\xa8\xbf\x94\xe2\xbe\x8d\x10\xa2\x8a\x4b\x36\xe7\x99\x8c\xc2\x16\xce\x33\x95\x3e\xb1\xbc\x5f\x2d\xc1\xcd\x8a\x90\x46\xb5\x83\x52\xc9\x75\x14\x29\xdb\x1a\xb2\xe4\x6e\x69\x1f\xbf\x54\xa4\x45\x39\xc0\xbb\x13\x62\x83\x35\x5b\xe7\xe7\x7f\x64\xb8\x20\xed\x13\xd0\x3a\xee\xcf\x1a\x4c\x84\x48\x84\xb2\x68\x22\x63\x11\x35\x4b\x35\xa0\x65\x95\xab\xf5\xc0\x9a\x4b\xe7\x8e\x31\x4c\x66\x0f\xdc\xea\xe0\xa5\x76\xfd\x6a\x54\x7d\xbd\x18\xef\x1d\x47\xf8\x93\x5b\xcf\x2a\xed\x11\x6f\x0d\xc3\xd3\x0a\xc1\xf7\x8a\x0e\xf5\x67\x45\x10\xbe\xf8\x04\x77\xcc\xeb\x9c\xa4\x67\xe7\x31\x94\x0f\x71\x00\x4c\xcc\xcd\x65\x22\x8b\xb9\x83\x13\xc2\x24\x4b\x92\x27\xe4\xb7\x73\x84\x1d\xf9\x09\xe7\x39\x4c\xa7\xe7\x89\x0a\xf6\xdf\x10\xb7\x60\x1b\x43\x8a\x28\x8d\xf0\x45\x69\x10\x46\x41\x08\xf5\x88\xc5\xce\xfa\x4c\x4a\x6d\x48\x77\x34\x6c\xd1\x51\x4b\x35\xfd\x56\x11\xfe\xf9\x63\x49\x20\x3e\x6b\x8c\xc0\x95\x4e\xf4\x2c\x37\x8a\xcc\xfa\xa0\x40\xa4\x32\x00\xdc\x06\x27\x35\x23\xf6\x5c\xcd\x02\xd9\xb5\xff\x62\x2f\x8f\x8c\x13\x9e\x37\xf2\x3c\x9a\x21\x9c\x9a\xd8\x04\xf5\xfc\x2b\xd1\x6f\x7d\xde\xaf\x67\x98\x75\x87\xff\xf1\xe7\x38\xfc\x75\x50\xe5\x38\x89\x17\xb3\xe2\x51\xec\xae\xad\x1f\xc4\xad\xfa\x46\x44\xbd\x2d\x9e\x7e\xb3\x4c\x09\x15\xbd\xac\x3e\x17\xaa\x45\x90\x83\x4a\x11\xe4\x0e\x87\xab\xa2\xa8\xea\x43\xb6\xdf\xec\x90\xcd\x62\x6c\xdb\x9e\xb7\x0d\x4e\xdc\x5c\xa6\xe6\x6d\x9c\xd0\x7a\x29\xda\x6e\xca\xc5\xfc\x2e\x5b\xb2\x3c\x47\x8b\x79\x9b\xed\xb8\x98\xe7\x36\xe3\x71\xb3\xcd\xb8\xae\x14\xcd\x05\x49\x16\x73\xe1\x0b\xe9\x20\x38\x9e\x76\x22\x9c\xc1\x83\xb2\x70\x58\x2b\x50\xa8\x1a\x6d\x74\x21\xdd\x2e\x77\x72\xa2\xe4\xc0\x43\x27\x19\x78\xa8\x58\x81\x66\x11\x75\x84\x82\xee\x1a\x79\xb0\x15\xc0\x08\x16\x2f\x24\xc5\x0b\x69\xf1\x42\x5c\xbc\x10\x15\x2f\x2c\x0a\xa8\xa5\xe5\xff\x19\xd4\xd2\xb5\x42\x2d\x25\x45\xd4\xd2\x3b\x2f\x31\x50\x4b\x89\xe1\x47\x2a\x99\xe6\x3e\x43\xd4\x9d\x30\xba\x25\x3e\x78\xe1\x7d\xf2\xb0\xc4\x32\x89\x8b\xec\x6b\x3e\x70\xc7\x93\x0b\x17\x84\xe0\x93\x87\x7d\xf9\x14\xbb\x58\xdc\x6f\x60\x52\x78\x42\x1f\x9a\x60\x66\xb9\x23\x76\x24\x98\x17\x6e\xc9\x8d\x0d\xa6\xa5\xeb\xf2\x85\xf3\xc2\x0d\x5b\x0e\xa7\x4b\xf9\x0c\xee\x96\xef\x06\xbb\xbb\xb8\x3b\x9e\x5c\xf0\x02\xf5\x7e\x57\x6e\x99\x33\x95\xe1\x11\xe0\x0c\x91\x95\x18\x88\xac\x90\xc0\xab\xe7\x59\xb7\x0b\x70\x2c\x6d\x45\x1e\x0a\xc4\xbd\x9b\xc1\x74\x83\x9b\x6b\x91\x0a\xaf\x38\x61\x1c\xec\x64\xbf\xb3\xbc\x67\xbf\x2e\xe2\x36\xf6\x8f\xb4\xf5\x0e\x15\x30\x5a\xba\x1f\xa8\xb2\x2c\x3d\xe1\x1d\xea\x5e\xdf\xa3\x5d\x1e\x1b\xc2\x3a\xc1\x3e\xa8\x1a\x3f\x58\x19\xe0\x2c\xd4\x8d\x42\x90\xf9\xbd\x07\xbc\xd9\x13\x4a\x49\x74\xbe\xa0\xc8\x2b\x41\x4f\x7d\x10\xa2\x94\x0e\x30\x48\xc9\x78\x40\x56\x2b\xdf\xef\xa6\x09\xa1\x66\x0f\xcd\x0c\xe2\xba\xf2\x0f\xea\x66\x8d\xf8\x9d\xec\x3a\x36\xaf\x73\x40\x18\xc8\x96\xe3\xdf\xf3\x6d\x2e\xc6\xbd\x83\xde\x17\x5d\x8f\x8e\x5c\x8f\xce\xc1\xfd\xcf\xb1\x24\x84\x2f\x09\xfe\x8c\x4b\x92\x59\xbc\xca\x60\x45\x59\xf5\x4a\xf0\x83\xc0\x8e\x50\xb4\xc0\x13\x5d\xbf\x72\xda\x78\x8b\x82\x59\x54\xb7\x57\x10\x57\x2a\x5b\xdb\x11\x60\xca\xb7\x4d\xb1\x93\x5a\x10\x75\xba\x5c\x5e\xf4\x7d\x40\xab\x7b\x51\x36\x6b\xf8\x00\xaf\xf9\x58\x41\x32\xd7\xdf\xd9\xb1\x12\xa2\x40\x5c\x56\xcf\x93\xe6\xb7\xb2\x98\x9b\xc9\xcb\x3c\xa4\x27\xb3\xf0\x88\xdc\x5f\x1e\x96\x38\xcc\x8f\x16\x1c\xe6\x47\x81\xc3\x4c\x72\x38\xcc\x30\x78\xed\x79\xe3\x60\x99\xc3\x61\xf2\x43\xe4\xee\xe8\xcb\x49\xf0\xda\x1b\xe7\xda\x2d\x9d\x43\x43\x72\xd7\x8f\xcc\x8a\x1f\xc9\x8e\xb2\x21\xbc\x6b\xe3\x73\x5b\xe3\x92\x93\x0d\x93\x8d\x5b\x2f\x65\xc7\x1d\x8e\x98\xe0\x31\x2d\x7e\x4d\x1d\xb0\xc3\xf4\xae\x03\x39\x2f\x37\xad\x86\x11\x6f\x7b\x18\x97\xc5\x6f\xd9\x8e\xfd\x61\xb4\xbd\xcf\xee\xf6\xd9\x67\x8b\xb4\x96\xb1\xb8\xe1\x62\x3d\xc8\xb7\xe2\x5d\x1f\x8c\x4d\x74\xef\xd8\xc4\x29\x9d\xd4\xa2\x7b\xdf\x80\x93\x0d\xd0\xbd\xc2\xc6\x68\xc3\x33\x85\x70\xf9\x51\xff\xbb\x3f\x8f\x17\x17\x11\xde\x1f\xc3\x18\xe1\x10\x32\x5d\x2c\x3c\xec\xa4\x48\x57\x42\xe3\x3f\xd9\x5d\xe3\xcf\xce\x78\x4a\x92\x19\xa4\xd1\x58\x5e\x9c\xc2\xb9\xbc\x2f\x20\x61\x05\x7c\x14\x30\xa0\x51\x46\xe5\x94\x28\xe7\xb5\x6f\x08\x11\x42\x15\xe8\x1d\x9b\xef\x5e\x40\x45\x6e\x6f\x77\xbd\x5a\x8c\x90\x82\xfd\x08\x38\xc4\x70\x04\x48\xb0\xdb\x03\x30\xd8\xed\x83\x44\xf9\xda\x28\x59\x6a\xc8\x44\x0a\xe2\x00\x59\x70\x28\x8f\x77\x3d\x12\x78\x69\x20\x6a\x31\x7a\xbe\xdf\x0d\x13\x8c\xfc\xbd\x3d\x4f\x54\x5a\xf1\x52\xe1\x7b\xf4\xc1\x2e\xbd\xbd\xc5\x12\x72\xc1\x35\x9a\xc7\xec\x93\xfe\x63\xe9\xaa\x8f\xfc\x1b\xc8\xba\x90\x04\xd1\x6a\x12\x61\x18\xc7\xcb\x1b\x0e\x0d\xb8\xbd\x15\x60\x96\xb8\x2b\xba\x7c\x7b\xab\xfe\xf2\x7c\xfd\x64\x34\xf1\xa0\x54\x0c\x92\x55\x56\xd2\x85\xcf\xd4\x9f\xb9\x6b\x5a\xe4\xae\xc9\xcf\x57\x73\xe0\x13\x13\xbd\xd8\x60\x16\x04\xfd\x81\x53\xd8\x6c\xc7\x7f\x3d\xae\xf7\x5f\xa3\xe4\x7f\xfe\x13\x1e\xbc\x21\x76\xff\x75\xce\x03\xad\xac\x75\xb6\xe4\xd9\x4d\x0a\x2d\x94\x50\xf4\xc7\xc2\x9a\x27\xaa\x45\x4b\xb6\xea\x82\x6a\x9f\xc8\xc1\x08\xe4\x52\x81\x96\x62\xf7\x2d\xa5\xa0\x6d\xf1\x6c\x66\xf1\xb9\x23\x9b\xbf\xdc\x6c\x8f\x20\x26\xb4\xb9\x6b\x7c\xe4\x45\xd7\x4a\x3a\x87\xe4\x13\x13\x8f\x3b\x57\x04\xce\xe7\x16\xdb\xaa\xf5\x35\xe5\x97\x5d\xef\xa0\x2b\x7c\x85\x46\xb3\x5c\x34\xef\x87\x68\x86\x52\x0a\x67\xf3\x4d\x1c\x05\xb9\x96\xe3\x04\x86\x46\xf7\x6d\xfe\xe5\x57\x09\x64\x02\xb2\x23\x25\x07\xfd\x05\xeb\x67\x54\x0e\x86\xfc\x67\x5c\x6b\x1c\x65\xee\xe7\xfa\x50\xc4\x7c\x59\x88\x05\x89\xec\x66\xc2\xbb\x98\x00\xcd\x43\x5f\x59\x02\x77\xb4\x8c\xae\x92\x83\x63\x2d\xb4\xf3\x2d\x18\xd6\xe2\xad\xc7\xd5\x25\xae\x21\x85\x5c\x2a\xcc\xaa\x3f\x08\x6a\x2c\xeb\x80\x04\x5e\xfd\x9d\xc0\xf9\x94\x17\x91\xb6\x94\x7c\x10\x4f\x41\x0a\x03\x51\xfc\x41\xe8\x26\x48\x54\x33\x2e\xaa\x56\xdd\xd2\xea\xfb\x5d\x1e\x22\xd4\x0d\xa3\x74\x1e\xc3\x65\x20\xb3\xd2\x97\xbf\xbd\x02\xd9\xcf\x41\x1e\xfb\xa7\xbb\xd0\x15\x93\x98\x8b\xb5\x4b\x2f\x2f\x02\xaf\x07\x48\x57\x08\x46\xbe\x57\xd7\xbf\xf4\xf2\x22\xeb\xa2\xcb\x01\xe9\x09\xf6\xdc\x59\xb2\x48\x51\x72\x89\x88\xc3\xff\x9a\x25\x97\x48\xfc\x95\x2c\xa8\x0b\x04\x2a\x08\xc9\x0f\x70\x75\x50\x44\xe9\x65\x85\xa5\x73\x37\x09\x3b\x50\xb3\x9b\x3b\xca\xe0\x80\x93\x10\x79\xd5\x0a\x34\x0e\x94\x01\x28\x0a\x94\xa5\x01\x2c\x02\x2f\x1b\xfe\xed\xed\xcd\xca\x97\x73\x70\x7b\x3b\x1c\xf9\xe5\xaa\x73\x26\x30\x8d\xcf\x98\x38\x48\xbe\xef\xad\x7c\x7e\x16\xf7\x82\x60\xa1\x0e\x97\x1b\xc1\xe4\x5b\xae\xa7\x0e\xb4\xec\x46\x18\x23\xc2\x0e\x87\xc0\x7d\x93\xa8\x2d\xec\x9c\x5c\xc2\x28\x66\xe7\xa5\xcb\x61\x58\xde\xb8\x48\x00\xfc\xb4\x70\xfd\x95\x3a\xda\xc2\x60\x31\xec\x8d\x44\x6f\x4b\xc6\x1a\x69\x66\x61\x4c\x6a\x80\x86\x3d\xa6\x7a\x30\x95\x73\x38\x02\xb3\xa0\x48\x16\x15\xad\xe8\x19\x61\x73\x00\xe6\x41\x29\x64\x73\x31\x9c\x8e\x76\x90\xed\x55\x5e\x5d\x2f\x1c\xe2\xd1\x50\x56\xf2\x1e\x05\x74\xd8\x1f\x81\xd9\x10\x8f\xee\xf1\x3f\x79\x77\x84\x04\x29\x1f\xf1\x57\x60\x1a\xf4\x1e\x4f\xff\xa6\xe6\xf9\xf1\xf4\xde\x3d\x7f\x2e\xe9\xe0\x9c\xd1\x6a\xda\x4d\x29\x1c\x7f\xf2\x3d\x5f\xc0\xfc\x26\x7e\x97\x0b\x1c\x9e\xbc\xf1\x96\xfd\x78\x2f\x00\x76\xbe\x17\x32\x65\xcb\xeb\x01\xd8\xe5\x02\x3e\xe3\xcf\xec\xcd\x30\x99\xc1\x08\x7b\x5e\x0f\xc4\x62\xdb\x53\xdf\x0b\x81\x9d\x12\xd8\xf4\xad\x7c\xdf\xef\x12\x5e\xab\x63\xd8\x03\x78\xe4\x83\xa5\xd1\x2a\xd3\x13\x21\x31\xda\x1d\xf6\x00\x6f\x7a\x06\xaf\x7d\x6f\xe6\x8f\xf4\xbb\x11\xe8\x8d\x7c\x70\x21\xc6\x01\x09\x82\xec\xa5\x6b\x2b\x09\x5e\x7a\xaa\x5e\x0c\xeb\xf3\xca\xf7\xbb\xcb\xbe\xf5\xc1\xa5\xc7\xd6\x56\x3c\xd1\xab\x7c\xa2\xcf\x9f\x00\x6f\x83\xa1\xfb\x97\xe7\xcf\x5e\xf4\x5e\xdc\x77\x81\xfb\x97\x67\x0f\x0e\x8f\x8e\x8e\x5d\x1d\xdd\x9b\x74\xd3\xf1\x14\xcd\xd0\x07\x46\x83\x70\xd1\xef\xf9\xe0\xcc\x18\xe8\x5b\x12\x32\x59\xdc\xf7\xde\xea\xa1\x4e\x18\x1b\x28\x6f\x6e\xd6\x73\xef\xdc\xef\x7e\x4c\x22\xac\x2f\x42\x4a\x89\xe7\x4e\xa2\x38\x76\x81\xd5\xaa\xf8\x09\x2d\x77\x34\x46\x9f\xf2\x21\x89\x77\x52\x4a\x92\x4f\xa8\xed\x5b\xa1\x0b\x2e\x04\xe5\xbc\x08\x78\x59\x74\xc6\xde\x15\x87\x11\x8f\x70\x27\x82\x0b\xdc\xf1\x82\xa4\x89\x66\xb8\x9e\x7b\x19\xa5\xd1\x79\x14\x47\x74\xe9\x02\x77\x1a\x85\x21\xc2\xfa\x1d\x91\x84\x08\xf4\xd5\x6f\x99\x7f\x08\x44\xea\xc2\xb5\x0b\x7a\xea\xef\x25\xfb\x1b\x7c\x6c\xce\x65\xbb\x4a\x18\xf1\xfd\x9d\x8f\xe6\xcc\x1a\xec\x84\xd2\x4e\x8c\x2e\x10\x0e\x4d\x4e\xa9\x58\xc2\x75\xd0\x03\xef\x82\xc9\xe3\xeb\xbf\xbd\x53\x9b\xe8\x5a\x81\xdf\xaf\x82\x77\xc3\xeb\x11\xf8\x14\x7c\xd4\xd3\xc1\xe4\x8f\xe2\x6c\x58\xbf\xb4\xf3\xa9\xed\x3b\x9d\x71\x12\x9b\x93\x7a\x0e\xc7\x9f\x2e\x08\x63\xdf\xf2\x0e\x38\xf3\xae\x7c\x1f\x64\x0d\x73\x11\xc7\xef\x52\xa6\x66\x5e\xdd\x73\x07\x0e\xfb\x4c\xfe\xde\xfa\xaf\x0a\x54\xae\xbf\x62\x03\x3e\x0d\xd6\xce\xa1\x7a\x1e\xbc\xe6\x4c\xb1\x78\xaa\x15\x88\xee\xa3\x95\x42\xf8\x8f\x98\x35\xf2\x62\xcd\xfd\xd7\x5d\xe1\x1b\xfd\x20\x56\xd9\x43\x20\x04\xe7\x60\x02\x2e\xc1\x47\x70\x0a\x5e\x70\xea\xd5\xdf\x67\x2b\x5b\xf8\x7e\xab\xf7\xf9\x09\x6c\x32\x73\x7b\xef\x15\x7d\x57\x74\x5e\xdd\x16\xe6\xf1\xab\x28\x8e\x9f\x33\x45\x30\x59\xbe\x10\x14\xdc\xae\xce\x56\xbe\x58\x52\x7a\x79\xb1\xb7\xa7\xfe\x6a\x2a\x4e\xac\x40\x6e\x0e\x06\xa6\xed\x5f\x9a\x63\x78\x94\x9a\xa0\xf9\x09\xff\x12\x98\x05\x91\xc7\x37\x21\x07\x87\x21\xe2\x7b\xc8\x07\x7d\x7f\xd8\x1b\xed\x84\xd9\xbe\x9d\x09\x7e\x31\x07\xd3\x20\xed\x46\xf8\x12\x11\xea\xcd\x7c\xc0\x4f\x1e\xce\xd2\xcf\xa3\x94\x6f\x54\xbf\x42\x6e\x90\xa7\x45\x37\x46\x13\xea\x7b\x18\x4c\xfd\x9d\x85\x9a\x55\x76\xcd\x05\xb3\xce\xc1\xc1\x3d\x77\x7e\xcd\xf6\x05\xa7\xcc\x3c\x59\x32\x8d\x42\xee\x00\x6f\x1e\x4c\xd9\x57\x33\x63\xb4\x37\xf7\xbb\xca\xa2\xc5\x35\x60\x70\x93\xc2\x19\x7a\x0e\x97\x03\x77\xf8\x21\x09\xe1\xd2\x81\x74\xe4\x4c\x07\xb3\xd9\x20\x4d\x9d\x13\x17\xc4\x30\xa5\xe2\xf6\x7f\x50\x4a\x11\xa9\x78\xe4\x67\x84\x3e\x0d\xdc\xe1\x2b\x98\xd2\x91\x13\x86\x21\xd3\xfb\xff\x7f\xf6\xde\xfd\xbb\x6d\x1c\x4b\x18\xfc\xdd\x7f\x85\xcd\xdd\xd1\x90\x1d\x88\xb6\x53\xfd\xf5\x99\x51\x35\xdb\x93\x4a\xd2\xdd\xd9\x4e\x52\xf9\x92\xd4\xf4\xf9\x56\xa3\xad\x03\x93\x90\xc4\x31\x05\xa8\x01\xc8\x8e\xdb\xd6\xfc\xed\x7b\xf0\x22\xc1\x37\x29\xdb\x89\x98\x52\x9d\x99\xb4\x45\x5e\x80\xc0\x05\x70\x5f\xb8\x0f\x1b\x46\x7c\xe5\x75\xc2\xd0\xc4\x79\xf7\xee\xdd\xf1\xab\x57\xf9\xd7\x32\x20\x23\x94\x32\x1a\x73\x2b\xdd\xee\xb3\x4a\xc2\x70\xca\x67\xd3\xcb\xd9\xf4\x7c\x36\x36\x7f\x9e\xcd\x7e\xcc\x91\x47\xa4\xe7\x3f\x17\x3d\xad\x20\x37\x7b\x9d\x4c\xf9\x0c\x60\x4f\x19\x0d\xed\x35\xdb\x82\x1c\xe0\x24\xff\x5d\x76\x13\xeb\x38\x91\x10\x32\x24\x3d\x7c\x8e\x29\xe4\xe8\x98\xa2\x10\xc5\xd7\x28\x72\x26\x85\x17\x9c\x42\xcc\x54\xa8\xab\x33\x31\x66\x3c\x97\x7b\xcf\x9c\xcb\x35\x73\x8e\xf4\x6a\xd8\x6f\x54\xfd\x2e\x3b\xe5\x6b\xb6\x27\xfe\x78\x8e\x7e\xb8\x78\xbf\x51\x2e\x0b\xec\x0d\xe6\x68\x81\xa8\x8b\xbc\x0b\xc7\x79\x86\x26\xea\x85\x8b\xfe\x14\x9c\x9f\x9d\x5d\x20\x9f\x93\x0f\x14\x85\x31\x13\xc3\xff\xc1\x9b\xa0\x3f\x9e\xcb\x87\x7f\x8e\xbf\xa0\xc8\x7d\xee\x4d\xf2\x10\xcf\x3d\x6f\x22\x9a\xa2\x1f\x46\x23\xf1\xa1\x3f\x5c\x3c\x73\xd1\xe9\x39\xfa\xc1\x2b\x74\xf4\xcc\xb9\x72\x14\xe4\x1f\x14\xe4\xbf\x6b\xc8\x3f\x94\x21\x57\x1a\xf2\xdf\x15\xe4\xf9\x73\x0d\xfa\xef\x65\xd0\x85\x06\x4d\x61\xce\x9f\x7b\xe9\x68\xcf\xbc\x67\x0e\x77\x4c\xa8\x56\x66\x26\x89\x76\xb0\xfa\x72\xc8\x1f\x2f\x88\xf5\xc8\xb6\x26\xa5\xe1\x2c\x9b\xef\x35\x60\xf5\x90\x8b\xf9\x90\x8b\xf9\x90\x8b\xf9\xbb\xc8\xc5\xbc\x39\xe4\x62\x3e\xe4\x62\x3e\x04\x09\x76\xcc\xc5\x8c\xae\xfe\xd7\x5f\xd7\x1f\xa2\xea\x4b\x16\x21\x52\x14\xa3\xfd\x2c\xcf\xe8\x34\x8c\xe4\x11\xee\x5d\xac\xf2\xa1\xaa\x64\xb4\x75\xef\x62\x85\x27\xe9\xca\x39\xcf\x6b\xea\xbd\xab\x8b\x11\x29\x09\xfd\xa2\xfc\x6b\x5b\x6e\x5b\x4a\xb7\x0b\x32\x4e\xa6\xce\x2d\xfe\xdf\x0a\x05\xcc\xfb\x94\x8e\xab\x73\xa9\x3f\xd7\x7d\x9e\x3d\x5e\x96\xa5\x28\x69\xf4\x97\x6f\x2c\xd9\x95\xe5\xbf\xd4\x75\xd9\x9f\xa2\x0e\xa0\x34\x64\xf6\xe8\x7a\xc7\xb8\x40\x2b\x4d\xa7\x4a\xc6\xf9\xe0\x54\x4b\xe7\x5d\x82\x72\x8a\x97\x50\x95\xc6\xeb\x9d\x12\x73\xb6\x57\x6f\xcb\xe7\x65\x2a\xdc\x90\x35\x5c\x88\xb5\x04\x08\xb4\x79\xc6\xeb\xf0\xb2\x9a\xcc\x99\x8d\xb7\x5f\x4b\xc8\xc4\xa0\x50\xf4\x70\x2f\x78\x4b\x03\xea\x96\x48\xb3\xe4\xf8\xae\x7d\xd4\xe3\xdf\x8c\x8f\xfa\xaa\xd6\x47\x7d\x5d\xf0\x51\x2f\x64\xd6\x24\xdf\x2e\xb3\xa6\xde\x6c\x4c\x67\xd4\x94\xed\xbc\xdc\x46\x4a\xca\xc9\x36\x6d\xd7\x6e\x9b\x3f\x54\xf8\x12\x57\x5e\xf3\x07\x56\xe6\x4d\xc3\xf7\x54\xf1\x72\xd9\x9b\xbe\xbc\x54\x3f\x26\x35\xcf\xa7\x59\x17\x31\x47\xab\x19\xb0\xe0\xdc\xec\x6f\x75\xf5\xa6\x64\x9c\x33\xf0\x7b\xed\xad\x99\x4e\x2f\x10\x8b\xd7\x92\x26\x33\xef\x9e\xc9\x82\x5b\xd7\x25\x41\x9c\x73\xcf\x34\x11\xa1\xbb\x3b\x68\x96\x6f\xc0\xa4\x9f\xe0\xd6\x03\x49\x70\xeb\x92\x82\xf3\x9e\x59\x9b\x07\x38\x6b\xd6\xf8\xec\x15\xbe\x95\x5b\xdd\x29\x6c\xf7\xda\xab\x6d\x2d\xc4\x5a\xcb\x6f\x8f\x3c\x75\x56\x4e\x13\x33\x75\x28\x1b\x77\x28\x1b\xf7\xdb\x75\xbd\x1b\x66\xc6\xb1\x43\xd9\xb8\x83\xa9\xf2\x60\xaa\x3c\x98\x2a\x0f\x65\xe3\x0e\xa6\xca\x83\xa9\xf2\x29\x4c\x95\xec\xd9\xdb\x9b\xbf\xfd\xe5\x59\x4d\x3e\xb3\x62\xd9\xb8\x86\xf4\x02\x7b\x55\x40\xee\xf7\x5f\xb1\x80\xdc\x0f\xdf\x49\x01\xb9\xdf\x1f\x0a\xc8\x1d\x0a\xc8\x1d\x0a\xc8\xed\xc3\x6e\x39\x14\x90\x7b\x70\x01\xb9\x07\xd4\x23\x39\x14\x90\x3b\x14\x90\x3b\x14\x90\xeb\x54\x40\xae\x9c\x02\x6a\xf8\xd5\xe3\xf2\xf6\xe2\x43\xed\xb8\x43\xed\x38\xde\xb1\x76\x9c\xd2\x8e\x5a\xab\xc7\xe5\xd3\xa9\x7c\x83\xda\x71\xfe\x1f\xfe\xf0\x87\xdf\xe1\xf6\xf2\x71\xfe\xbf\x9d\xff\xee\x50\x42\xee\x69\x4b\xc8\xd1\x38\x1e\xc7\x73\x41\xb7\xc7\xeb\x04\x86\x68\x49\x12\x95\x84\xc3\xba\xa5\x92\x50\x9d\x9a\x95\x2e\xaf\x1e\xc7\x86\x80\x83\x74\x6d\x7b\x15\x03\xba\x8d\x51\x12\x8d\x59\x42\x78\x7e\x42\xd2\xd4\x20\x9f\xb3\x1a\xf0\x87\x4f\xa4\xb6\x41\x2a\xa1\xdd\xe5\x37\xdb\x02\xf1\x8a\xcb\xd7\x74\xe2\xdb\x6d\xed\x72\x62\x4e\x49\x92\x20\xca\x4e\x05\xf9\x89\x43\xa8\x98\x92\x3d\xe3\x0c\x7c\xc3\xe3\x84\x9d\x52\xb2\xe1\x31\x5e\x9c\x4a\x87\x7f\xb9\xd7\xb4\xff\x4a\x61\xda\x29\x21\xc5\xfd\x6f\xe2\xe8\x00\x6e\xe2\xe8\x6f\xe6\x26\x8e\x0e\xfb\x26\x8e\x0e\x23\xfb\x85\xf1\x39\x7a\x99\x1e\xca\x34\xba\x5e\x1c\x39\x44\x27\xd5\x19\x3c\xd5\x4b\xc7\x03\x8c\x13\x8a\x6a\x80\xe4\x3b\xc7\x03\x73\x84\xa2\x4b\x18\x5e\xd5\x80\x99\xd7\x82\x79\x64\x71\xfc\x70\xc3\x97\x84\xc6\xff\x2c\x67\xd8\xa3\x2a\xfc\x4f\xf2\x7f\xd3\xd6\x47\x5f\x50\xb8\xe1\x28\x1f\x11\xed\xcb\x11\xf8\x61\x82\x20\xd5\xa1\xc9\x30\xb8\xdb\x8a\x9d\xaa\x3c\x62\x8c\x21\x5f\xfd\x3a\x4a\x6f\x36\x4e\x82\x80\xfa\xca\x57\x4c\x81\x98\x94\xa3\x0b\xc4\x5d\x02\xac\xca\x9a\xde\xfd\xbd\x81\xf4\xc5\xd3\x23\x66\xb5\x95\x4f\x46\x23\x17\xea\xdf\x81\xf3\x3f\x8e\x91\xb1\x98\x10\x12\x44\xd7\x49\xd6\xf5\xcf\x37\x18\x51\x97\x7a\x20\x0e\xa8\xaf\x50\xec\xeb\x22\x01\x1f\xc5\x2f\x79\x2a\xc1\x26\x48\xfc\x84\x90\xab\xcd\x5a\xaf\xc3\x24\xed\x34\x4e\x85\x94\xe3\x22\x8c\x4d\x6a\x3d\x9f\xa2\x39\x45\x6c\xe9\x4a\x81\x63\x15\x33\xe4\xab\x3b\xad\xc2\x6d\x97\xcf\x97\x08\x57\x06\xd0\xc5\x72\x9a\x15\x63\x14\x53\xbe\xbf\x4f\xd1\x68\xa6\x7e\xb1\xf1\x33\xda\xfd\x99\x68\xc1\x73\x03\x64\x6c\xb7\x15\x37\x57\xd9\x27\x80\x20\xf1\x3c\x6f\x82\x84\x64\x25\x76\xb2\x94\x3e\x2a\xe3\xfa\xb6\x1e\xb8\xdb\xca\x28\x2f\x8b\xf3\xc2\x76\x4e\x14\x85\x5f\xad\x12\x6d\xc5\x59\xcb\x8d\x96\x77\x19\xed\x29\x0c\x13\x76\xaa\x94\x94\x3a\xd6\x59\xd5\x02\x45\xf1\x63\x48\x0b\x6d\x62\x8f\x99\x59\xa7\x62\x88\x35\xa3\xfc\x86\xeb\x71\xb9\x89\x85\x7c\x58\x47\xb0\x08\x5d\x39\x1e\x88\xc8\xaa\x06\x20\x22\xe2\xbd\x90\xc0\xfb\x85\xdc\x2a\x92\x46\xa8\xce\xfa\xa0\x47\x21\x9f\xb8\x0e\x0c\x13\xc7\xdb\x02\x75\xe5\x29\x66\x1c\x23\x56\x91\x7d\x34\xa3\x8d\xea\x53\xae\x7d\x35\x89\x2a\x2e\xfe\x64\x1e\x4e\x1d\x7a\x89\x75\xe8\xa5\xac\x7b\x3c\x11\x0c\x27\xe0\xf2\xf3\x3e\x43\xfc\x15\xe4\xd0\x15\xcf\x64\x76\x0f\xf9\xcb\xdb\x5a\xe7\x0e\x79\xde\x36\xa3\xe0\xa5\x24\x2b\x59\x64\xa9\x4e\x0e\xb9\xf2\x31\xa1\x2b\xa9\xa2\xbc\xbe\x46\x98\x2b\xd1\x26\xc5\x81\xbf\x84\x38\x4a\xf4\x2b\x5c\x3c\xd2\x3d\x0e\x49\xc9\x8f\xed\x6b\xef\x26\xa9\xd3\x7e\x80\x14\xae\xd8\xe4\x4e\x25\x33\xf9\xe9\x76\x72\x07\xd9\xc4\x91\xf9\xc8\xc5\xa2\x42\x1a\x2e\xd5\x23\x05\xe0\x00\x8a\xa4\xa6\x22\x6d\x08\x19\x5a\x19\xc2\xd1\xcb\x84\xe0\x8a\xf4\x35\x4c\x46\xdf\x87\x89\x4c\x3d\x83\x1e\x80\xb0\x35\x49\xe2\x30\x46\xbb\x90\x97\xb4\xe9\x30\xe8\x4c\x7e\xb8\xfb\x4e\x70\x1e\x99\xa0\xc8\xc9\xdf\xee\x3f\x4d\x79\xf0\x36\xde\x2f\x02\xc0\x08\xe5\x3f\xdd\x4e\x1c\xf1\xbf\x0e\x88\xc2\x89\x8c\x4c\x10\x84\x40\x93\x83\x56\x6a\xb0\x2b\x42\x28\x49\x76\x3a\xd4\xaa\xdd\x30\x4e\xb4\x35\xd6\xdf\xd8\x71\x16\x33\xff\x7e\x0f\xb3\x5a\xd7\x7d\x3e\xc9\x4f\x75\x6a\x39\xb9\x42\x78\x97\x63\xab\x1b\x0e\xe3\xdc\xda\x83\xfd\x86\xeb\xdb\x26\xd3\x77\x3b\xd8\xec\x53\x48\xd6\x28\x9a\x9c\x9c\x3f\xf6\x21\x97\x68\xda\xff\x53\xfe\x60\x35\x00\x28\x23\x8f\xfc\xa8\x72\xe2\x2d\xaa\x03\xca\x5e\x01\x53\x8b\xa0\xaf\x8a\xa3\x29\x13\x09\xdc\x3e\xf8\xbc\xfd\xc6\x48\x4d\x8c\x39\xc2\x72\xcd\xf6\x7a\xe6\x30\x0c\x11\x63\x13\x47\xfd\xef\x93\x60\xe2\xea\x7a\xdf\x30\xf0\xf8\x73\x94\x09\xa0\xf6\x6d\x9a\xf9\x2d\xce\x21\xdf\x30\x15\x25\xb9\x79\x9a\x85\x56\x48\x60\x4b\x72\x73\xaa\x29\x38\xdb\x1f\x64\xb4\x19\x04\xc2\x25\x0a\xaf\x98\xe6\x43\x21\x59\xad\x37\x1c\x45\xae\xa4\xd8\xfe\x4b\xf9\xce\x9f\xce\xf2\x39\xe5\xd4\xf5\x7b\xe6\xb3\x9e\x59\xb4\x25\x0b\xb2\xdb\x3a\x4d\x49\x57\x1d\xe7\x24\x08\x90\xaf\x8b\xca\xbd\x79\xb5\xf5\xaa\x1c\xde\x05\x99\x4f\xa3\x04\xa6\x3c\x03\x9f\x8d\x46\x6e\xfe\x41\x30\x9d\x79\x20\xff\x48\x25\x1b\x95\x39\x22\x81\xb2\xfa\xf6\x5f\x5e\x69\x77\xee\x29\x38\x99\x46\xdf\x58\x68\x3a\xea\x3c\xbb\xef\x43\x60\x7a\x5c\x21\x49\x07\xf9\x1f\xa4\xa4\xa7\x91\x92\xcc\xd6\xdb\x6b\xf6\x51\xa6\x9f\x3b\xcd\xd5\x30\x86\xd6\xc9\xa6\x17\xbf\xbc\xbf\xe3\x01\x1e\x80\xe3\x01\xce\x1c\x0f\xe8\xee\x8e\x07\xb4\xec\x78\x40\xdb\x1c\x0f\x68\xe6\x78\x40\x3b\x3a\x1e\xd0\xfe\x8e\x07\xd4\xcb\xcf\x74\xb0\x8e\x07\x78\x18\x8e\x07\xf4\x71\xa4\x42\x99\xd9\x49\xbc\x55\x19\x9e\x5a\xac\xa8\x5b\xc1\x11\xd4\x81\xae\x94\x9c\xca\x32\x93\xf1\x6a\x92\xbe\x86\x12\xa2\x41\x2e\x0a\x09\xc6\x28\xe4\xe3\x35\x25\x5f\x6e\x95\x90\xf4\xb7\x18\x47\x5b\x95\x08\x55\x4c\x8f\x62\x98\x7c\x92\x63\x2d\x0f\x20\x93\x41\xcb\x42\x9b\xbe\xdf\x51\x00\x55\x5c\xc9\x8e\xd5\xd5\xbe\x00\xdc\x7f\x9d\xff\xa2\xcc\xe8\xb1\xf5\xc0\x74\x96\x3a\x09\x70\x57\xac\xfa\x27\x24\x89\x86\x99\xda\x4f\x84\x24\x08\x62\x5d\xb0\xcf\x2b\x4a\x5f\xb4\x2f\xe1\x54\x7b\xff\x5b\x32\x0a\x4c\x78\x3c\xbf\xad\x93\x41\x12\xc8\x96\xef\x10\x63\x70\x81\x98\xed\x83\x82\xc4\x19\xcf\x09\x0d\xe7\x42\x96\x35\x2c\x54\x1c\xf3\xdb\x4f\x1c\x72\x34\x1a\x39\xbf\x3f\xfb\xbd\x20\x3c\x99\x48\x8d\x80\x23\xdb\xfb\xf2\x5f\xb1\x6d\x28\xe3\x26\x6a\x55\xed\x5e\x79\x1c\xc5\xc2\xaa\xe1\xf9\x30\x12\xf2\x94\xca\xd8\xfc\x33\x7e\x99\xc4\xe1\xd5\xe4\xe4\x1c\x30\x1e\x87\x57\xb7\x93\x93\x33\xbd\xbb\x6f\x20\xc5\x82\x46\xeb\x81\x4e\x1c\xed\xf3\x2d\x56\xd6\x0c\x4e\xc9\x47\x72\x1f\xce\xaa\x83\x51\xab\x93\x62\x20\x3f\x4c\x08\x43\x92\x4a\x8b\x3f\xe4\xea\xef\x76\x93\x98\x6e\x00\xa1\x60\xed\xb3\x84\xda\x6b\x73\x08\x1a\x50\x38\xb9\x3e\x4c\x62\xc8\x0c\x01\xb1\xd6\x79\xc7\xbd\xe4\xee\xba\x99\x9e\x74\x2f\x65\xf6\x21\xf5\x3b\x5c\xc2\x18\x67\xdb\x2c\x46\xfa\xf9\x02\x72\x74\x03\x6f\xb5\x26\xa7\x1f\x9a\x98\x81\xbd\xd8\x8b\x29\x45\x6a\xd2\xf6\x0f\xe2\xdc\x41\x9c\x3b\x88\x73\xdf\x5a\x9c\x6b\xb5\x82\xb5\xc9\x54\x2a\x2a\xab\x4e\xa0\x52\x14\x7b\x50\xd2\x94\x26\x60\x83\xb0\xd5\x3f\x81\xc9\x36\x8f\x87\xfd\xb3\xda\xe6\xe6\x6f\xc8\xc4\xc4\xc9\x64\xe0\x27\xc7\x89\x09\x96\xfa\x2d\x23\x85\x21\xce\x63\xbc\xf8\xa6\x28\xa0\x68\x4d\xea\xdc\xe2\xcd\xf0\xda\x5d\x48\x79\xbc\x42\x64\xc3\x6b\x60\xf4\x5b\xc7\x53\x41\x87\x74\x15\xe3\x85\x90\xf2\xa4\xc9\xf4\x73\xea\x6d\x5d\x1d\x82\x07\x94\xf5\xd3\xd7\x9d\xf8\x42\x32\x3c\x52\xdf\x61\xe9\x95\x40\xd6\xaf\x03\x4e\xce\x3c\xc0\xdd\x92\x4b\xb8\x77\x97\x35\x42\x85\x16\xe7\x92\xdc\x65\x52\xf0\x15\xba\xcd\xc9\xc0\xda\x90\xaa\x22\x02\xf3\x83\x76\x3d\xf1\x41\x69\x60\x3d\x3e\xff\x41\xca\xca\x57\xe8\xf6\x25\x89\xd0\x04\xf9\x6b\x8a\xae\x11\xe6\xaf\xd4\x8a\xc8\xb2\x7a\x3b\x5a\x50\x8d\x8c\x4b\x83\xca\xdb\x90\x50\x96\xae\xf3\x65\xfc\x95\x98\x92\x77\x64\x6c\xbf\x4a\xb0\x51\x06\x60\x05\x35\x35\x50\x33\x67\x52\xc4\x63\x65\x67\xe0\x84\x6a\x43\xb6\xf2\xdc\x4c\x63\x77\x15\xa0\x2e\x1f\x68\x35\xf5\x8e\x2e\x29\x82\x57\x47\xf2\xa3\x1b\x9a\xb0\xa9\xde\x0a\x33\x53\xbb\x23\xa7\x35\x58\x9f\x16\xc0\x42\x45\xa8\x1c\x97\x7c\x09\xee\xb6\x1e\xa8\x7d\xed\xa7\xf9\xb6\xb1\xa9\x20\x5c\x35\x70\xd5\x53\x36\x6c\xf1\xdb\xeb\x68\x64\x96\xd1\xe0\x30\x82\x6b\x5e\x0c\xe7\xfb\x0f\x24\x86\x35\x16\x00\xa7\x11\xba\xdc\x2c\x86\x14\xed\x86\xf0\x75\xc3\xd5\xd3\x3c\x5e\x08\x88\x98\x12\xbc\x52\x39\x24\x8a\x81\x6f\x0b\xc4\xc7\x36\x44\xa9\xb0\xf5\x4e\xb4\x0c\xe1\xeb\xbc\xf4\xe6\x9e\x81\xac\x28\x67\x16\x99\x0a\x54\x90\x38\x30\xe1\xb9\x62\x1d\x45\xdb\x1a\xa9\x45\x11\xef\xd3\x35\x45\x51\x1c\x42\x2e\xad\x3f\x5a\x54\x79\x52\x5a\x9c\x3d\x28\x2f\x51\xf9\xd2\x07\xf9\xca\x7b\x00\x31\x80\x83\xf4\xdc\xf0\x8b\xe9\x6c\xc2\x4b\x49\xdc\xb2\x24\x6f\x2e\x4e\xcb\x4c\x7a\xf7\xf7\x27\x27\xd8\x8f\x71\x98\x6c\x22\xc4\x5c\xe4\xbf\x90\xd0\x6a\xaf\x77\xc3\x0c\x26\xd1\xd3\xda\xc4\xfa\x22\x45\x09\xe1\xbb\x23\x65\x34\xca\xa3\xe4\x93\xec\xcf\xeb\x83\x13\xed\x91\x9c\x3b\x2f\x2b\x8c\x56\x04\xc7\x8c\x0b\xb6\xfe\x14\x57\xb2\x7d\xf0\x84\x03\xe4\x47\x21\x03\x34\x43\x11\x16\x28\xc2\x00\x06\x2a\x2a\x89\xa5\x15\xdb\x83\x20\x80\xe2\x1d\x04\x2c\x98\x3a\x8b\x84\x5c\xc2\x64\xbc\x82\x18\x2e\x90\x3e\xeb\x42\xfe\x89\x20\x8d\x9c\x59\x8b\x12\x32\xe5\x33\x99\x14\x4d\xe3\x96\xcb\x3b\x71\x49\xb1\x93\xc0\xa8\x1c\xb4\x9c\x80\x30\x1d\xb4\x2a\x26\x7f\x66\x00\x88\xb5\x66\x2e\x0e\x4e\xce\x01\xab\x1a\xe0\x4c\x68\xf7\x31\xfb\x8b\x7c\xf1\x2e\x7d\xae\xda\x9c\x79\xaa\xc0\xa7\x9c\xc0\x68\x74\xd2\x04\xe9\x01\x6a\x7f\x11\x66\x08\x42\xfe\x2b\xc8\xa1\xca\x03\xc0\xee\xef\xb3\x7b\x71\x59\xf9\x8d\x21\x39\x8f\x4f\xf1\x3f\x91\x9b\x80\x54\xb7\xb2\xdb\x78\xde\x9f\xce\x3c\x80\x47\x23\xd8\x63\x9b\x69\x66\x36\xae\x32\x4d\xef\xe1\x86\x53\xda\x70\xdd\xa6\x4b\x8f\x6d\xd5\xbe\x6b\xde\x1c\xa5\xed\x70\x71\x72\x42\x2a\x8e\xf0\xe4\xc4\xa5\x36\xed\x93\x45\x01\xeb\x97\x8a\x59\x4b\x55\xa5\x34\xf7\xa1\x08\x59\x7d\xf3\x7d\x5e\xa1\xd4\xa2\x58\xb7\x46\x7a\x05\xab\x96\xc8\x5a\xc1\x24\x7b\xcd\xc4\x6b\x06\xe2\x94\xaa\x6c\xb2\x77\xb1\x78\x17\x83\x30\x5d\x5d\xe2\x81\x28\x98\x3a\x31\x5e\x50\xc4\xd8\x58\x9b\x60\x1d\xe0\x70\x24\x24\x71\x28\xb4\x0d\xeb\xe9\x0a\xb1\xa5\xf5\x33\x2b\xa5\x12\xe3\xb1\x78\x27\x73\xe7\xf1\xb1\xf9\xd5\x85\x38\x6d\x2a\x89\xd3\x3c\x98\x3a\x14\x2d\x62\xc6\x11\x95\x95\x15\x44\xb7\xd6\x83\x2e\x3d\xd3\xaa\x9e\xab\x36\x73\x3c\x77\x93\x6c\x93\x6a\xf6\x74\x92\xd8\xdb\xf9\x1d\x62\x4b\xbd\xa5\x8f\xe2\xb9\xbd\xa7\xef\x64\x44\xf0\x1b\xbd\x8c\x2f\xc9\x06\x73\xfd\x74\xee\x67\x03\x4e\xd3\xca\xaa\x44\xac\xe2\xed\xb4\x34\xa7\x2c\xf7\x6c\x9a\x1c\xd6\xe4\x96\xb6\xce\x99\x7b\x12\x95\x17\x6c\x76\x7f\x5f\x7a\x96\xde\x22\x7a\xf7\xf7\xae\x6a\x56\xb5\xaa\xa2\x69\xd5\xf3\x8a\xe6\xb9\xe5\x17\xed\x72\x0f\x4a\x0d\x8c\xe8\x6f\xc5\xf4\x16\x7b\x4c\x77\xca\xfd\xfd\x89\xc0\xa2\xc0\xb3\x10\x91\xe4\xcb\xdc\x56\xba\xbf\x4f\xdf\x8b\xff\x26\x27\x2e\xe9\x41\x58\xc2\x47\x24\x2c\xca\x91\x7a\x9f\xe4\x2f\x75\xce\x4b\xc2\x17\xa0\x35\xd2\x83\x7a\xe6\x00\x27\x21\x21\x4c\x3a\x1d\x26\xdc\xf5\x30\x55\x8a\xbc\x62\xb5\x69\xa5\xa0\x20\xd7\xbd\xcc\xff\x4d\x1b\x5f\x35\x11\x8b\xff\x56\x8c\x55\xed\x0d\xea\xcb\x81\xcb\xb6\xea\x71\xd3\x02\x26\x90\x2d\x4f\x75\xce\xe2\x1c\x33\x50\xca\x61\x98\xc4\x63\x05\x93\x83\x1c\x90\xa2\x38\x27\x74\xc5\x4e\x61\x98\xd4\xa9\x8b\xf2\x6a\x02\x2a\xb3\xaf\x04\x2b\xe9\x8a\xa2\x8b\x53\xed\x0a\xf7\x48\x8a\x62\x69\x0b\xa7\x5c\xaf\x98\x8b\xea\x4f\xe7\x56\x8e\xe0\x2c\xef\xd4\xf9\xec\xc2\xfe\x31\x71\x1c\x00\xcb\x6d\x9f\x57\xb6\x7d\x6e\xb7\x7d\x3e\x9b\x64\x6a\x29\x29\x77\xf1\x43\x65\x17\x3f\xd8\x5d\xfc\x30\x9b\xd0\x54\x06\x76\xb1\xd8\xfc\x3e\x43\xfc\x3f\x15\x62\x09\x65\x2e\xf4\xb6\x95\x0a\x71\xe3\x9a\x55\xea\xb8\x75\x2b\x67\x01\x1f\xd6\x6f\x3f\xd6\xef\xaa\xd6\x42\x63\x2f\x9c\x80\x3a\xac\xd8\x7e\xac\x98\xa9\xe2\xd5\xbe\x6a\x69\xbd\xaf\xc3\xca\x3d\xfe\xca\x49\x2f\x13\x54\x88\x26\xcf\x3f\x55\x41\xa9\xbb\xac\x71\x95\x2d\xa8\x7a\x8d\x0d\xe4\x30\xd7\xd8\x8c\x7e\x7f\x56\xda\x32\xaf\x4c\xee\x94\x9f\x90\x4a\x23\xba\x7d\x9c\xd3\x2b\xf7\x44\x87\x75\x55\x70\xc3\x5c\x55\x35\xf6\xfd\x59\xd3\xce\xa7\x77\x87\xf5\x2c\xa9\x52\x75\x0b\xaa\x01\x87\xb9\xa2\x83\x5c\xcd\x07\xd3\xe2\x25\x4a\xd6\x88\xb2\xd3\x31\x4a\xb4\xde\x59\xd6\xbd\xf4\xab\xb1\x82\x2d\x37\x19\x90\x12\x96\x8e\x7d\x09\xd9\x58\x65\xdd\x94\x49\xa2\x59\xd5\xbc\x31\x5c\xa1\x48\x41\xb1\xf1\x9a\x24\xb7\xf3\x38\x49\x1a\xba\x18\x34\x1e\x1e\x82\x80\x41\xce\x3c\x66\xf6\xfc\xc6\x31\xbe\x26\x55\x89\x4a\x3b\x61\xa2\xbe\xaf\x7d\xc5\x4c\x45\x00\x62\x3a\x9b\x47\x43\xcb\xc0\x70\xd2\xb0\x5b\xe0\x65\x25\x85\x58\x41\xbe\x1c\x1b\x18\x1b\x76\x2f\xa7\x58\xdf\xa7\x9c\x5e\xc7\xfe\xe0\x25\x6b\x47\x57\x48\x7a\xe0\x4b\x00\x0f\x0d\x61\x72\x82\x5d\x31\x16\x92\x6e\x28\x5b\xf6\xc2\xd9\x72\x88\x48\x5b\xf6\xc2\xda\xb2\x1d\x6d\x51\xd4\x1d\x69\xb2\x6e\xfc\xb0\x50\x26\xa6\xd7\x15\x61\x51\xd4\x8e\x2e\x5c\x89\x2e\x4e\x37\x55\xf8\xc2\xc3\xc3\x17\xee\x81\x2f\xdc\x01\x5f\xeb\xf5\xf8\x1a\x51\xd6\x60\xfc\xad\xf4\xf2\xca\x2e\x2d\xac\x1e\x4c\xaa\x73\xb4\x40\x5f\xd6\x55\x7a\x50\x1a\x14\x40\xb3\x54\xc8\x3b\xaa\x33\x77\x5b\x00\xad\xab\xb6\x17\x1f\x3e\xf8\x7a\x14\x80\x04\xd4\xfc\xfd\x33\x4e\x6e\xef\xef\xa9\xbf\x8c\x23\xf4\x69\x09\x01\x0b\xa8\xcf\x96\xd0\x7e\xfc\x9f\xba\x55\x22\xcb\xf0\xa5\x5a\x8a\x2c\x55\xca\x96\xe4\xe6\xb5\xf4\x87\x45\xd1\x68\xe4\x26\x01\xf4\x57\x50\x79\x4f\xea\x0f\x98\xb7\x1f\xd1\xe2\xf5\x97\xb5\xe7\x81\xe4\xfe\xbe\x0a\xce\xbc\xf7\x00\x2b\x74\xc4\x96\x30\x6b\x7c\x91\x4c\xcf\x66\x13\xb8\x4b\x4c\x03\x5c\xaf\xf5\x54\x02\xda\x9c\x2a\xfb\xaf\x72\xed\x7d\xb5\x05\x5c\xda\x21\xcf\xb0\xb5\x5b\x50\xf5\x01\x93\x49\xfd\x99\xd8\x91\xe5\x53\xa6\x1a\x0d\xed\xa0\xe9\xa9\x76\x3d\x6b\x12\xbc\xfd\xb8\xb1\xb8\x52\xce\xac\x26\xe7\x02\x78\x68\x68\x93\x13\xec\x8a\x34\x16\xe3\x4e\x28\xeb\x21\x37\x48\xe8\x01\x22\xad\x87\xdc\x20\xa0\x3b\xa0\x8d\xc5\x8b\xca\xbd\xa6\xde\x14\x8d\x1d\x1a\x7e\x70\x98\x53\xb3\xec\x8c\x3a\x01\xde\x8e\x3b\x0e\x7b\x9c\x52\x01\x3c\x34\xb4\xc9\x09\x76\x45\x1a\x87\xdd\x50\xf6\xbc\x17\xce\x9e\x0f\x11\x69\xcf\x7b\x61\xed\x79\x27\xb4\xf5\x20\x6e\x12\x7a\x80\x68\xeb\x41\xdc\x04\x74\x07\xb4\x91\xcb\xe6\x72\x3b\x12\xa2\xb1\xb8\x8e\xe5\x5a\xd4\x31\x2c\x1a\xd5\x44\x2c\x57\xd5\x88\x57\xe1\xb1\xf7\xf7\x27\x6e\x63\x5c\xb4\x09\x75\x56\x96\xfd\xe9\x0c\x50\xed\xea\x7c\x9e\xba\x5a\xca\xb4\x48\x26\x32\x96\x81\x24\x40\x15\xb1\xb7\x3f\x9e\xb8\x34\x70\x59\x90\xf8\x18\x7d\xe1\xae\xe7\xf9\x11\xc1\xc8\x1b\x8d\x5c\xac\x12\x91\x31\x13\xf5\x72\xc2\xef\xef\x8d\x53\x94\xac\x41\xf7\xa3\xf8\xa4\xf7\xa3\x4e\xb4\x14\x7b\x77\x50\x0c\x81\x04\xf1\x76\x1e\x63\x98\x24\xb7\x77\x32\x2f\xd3\xfd\xbd\x0a\xe0\x4d\x7c\x35\xe4\xfb\x7b\xf3\x97\xeb\xa5\x90\xf1\xdc\x85\xba\xa8\x1d\xd9\x1a\xaf\x41\xbc\x95\x98\x3a\x94\x0c\xea\x51\x32\x28\x8f\xaf\xee\xc1\xde\x32\x61\xc2\x26\xe4\x1b\x8a\x0e\x95\x83\x3a\x56\x0e\xca\xab\x43\x6e\xf1\xc2\x8d\x06\x62\xc3\x9e\x7b\xd3\xb3\x19\xb0\x1c\xff\xe9\x85\xe3\xa4\x97\x5a\xf9\x0a\x30\x50\xda\x9f\x3b\x2b\x55\xf5\xb7\x34\x76\xd5\xb4\x4a\xe8\xbd\x64\x05\xcd\xb3\x0d\xe1\x0a\x25\xaa\x32\x7c\xa5\x0f\xa4\xa2\x02\x25\xd6\x97\x36\xdb\xcb\x29\xd7\xf7\x99\x4d\xb7\x63\xa7\xa6\x41\x07\x44\xe2\x10\x25\x63\x98\x24\xd5\xfa\x38\x56\xf5\x87\xc2\xdb\xaa\x16\x7b\x89\xc5\xb6\xf9\xae\x63\x0e\x77\xda\x3a\x69\xc3\xbd\x9c\x76\xd3\xe6\xc9\xa6\xdc\x79\xfb\x98\x26\xed\x08\xbd\xa4\x95\xb7\xe1\x95\xa2\xa7\x04\x1e\x1a\xfa\xe4\x04\xbb\x22\xee\x92\x76\xd8\x83\x28\xae\x3c\x6d\xd5\x28\x13\xc0\x43\x43\x99\x9c\x60\x57\x94\xa1\x38\x69\x47\x99\x0c\x6b\x67\x88\x8f\x17\xa8\xda\xf1\xdd\x00\xd4\x34\xd9\x4b\x0c\x76\x9d\x33\xeb\x3f\xe7\xc7\x89\x08\xfb\xba\xbb\xc6\x0c\x5e\xc8\xca\x9d\x77\x8f\xd5\xa8\x3b\x46\x1b\xb1\x39\xb6\x7d\xb5\xca\x4d\x87\x8a\xd5\xfe\x28\xed\x80\xcf\x0d\xae\xf4\x88\x69\xb0\xe3\xab\x36\x83\x43\xa2\x9c\x68\x67\x04\x6e\xf0\x55\x3b\xf2\x12\xc8\x58\x3c\xbf\xed\x2b\x87\x98\x66\x43\x43\x61\x3a\xdd\xae\x58\xd4\x0d\x3a\x20\xf2\x9f\x3f\x74\x37\x1a\x2a\xe8\xc1\x21\x4f\x4e\xb1\x33\xe6\xfe\xf9\x43\xbb\xd1\x50\x9c\x51\x58\x13\x45\xd6\x70\x7c\x75\xab\xbd\x44\x60\x87\x09\x4b\xa3\x43\xc7\x84\x87\x07\xdb\xde\x50\x6c\x7b\xbf\xc1\x34\x8e\x83\xb6\xed\x0d\x2c\x9b\xa3\xb6\xed\x99\x9c\x66\x8c\xd0\xba\x54\x64\x32\xb9\x9b\x07\x74\xe6\xc5\x52\xa5\x05\x1c\x08\xb2\xf2\xdc\x13\x33\x51\x96\x40\x3c\x3d\x4f\x87\xad\x52\x49\x11\xca\xfd\x8c\x54\xb9\x54\x5a\x02\xbb\xe4\x4a\xb4\xe9\xdc\xa6\x58\xe9\xa3\x13\x61\x17\xad\xf6\x92\xb0\x37\x70\x46\x33\xd9\xae\xbc\x51\xc1\xb7\x7a\xf7\x86\x04\x73\x18\xe3\x4a\xf7\xcc\x46\x2c\xea\x66\x83\x43\xa3\x99\x6e\x67\x3c\xaa\x06\x1d\xb8\x6e\x77\x17\xd7\x01\x7a\xb8\xf6\x71\x70\xed\xe2\xdf\xda\xcb\xbd\x75\x88\xde\xad\xbd\x9c\x5b\x3b\xf9\xb6\x46\x90\x2d\x11\xed\x6f\xd1\xcd\xda\x0d\x0c\x85\xd6\x84\xbb\xf6\x6a\x5a\xb4\x23\x13\x85\x3d\x49\x9e\x68\x31\x34\x04\x8a\x49\x76\xee\x2f\xec\x80\x34\x3d\xc6\x5e\x79\xd4\x1d\x47\x96\x04\x3b\x9b\x99\x94\x32\xfa\xe7\x05\x9a\x9e\xcf\x26\xe2\xaf\x5d\xc4\x98\x5f\xd3\xfc\x92\x75\x55\xb7\xaa\xee\x2b\x79\x87\x72\xa5\xe9\x6c\xe3\x68\x1c\x63\x86\xaa\xed\xfe\x14\xe1\x08\xd1\xf2\x2e\xc9\x1a\xed\xe5\x66\x69\x9f\xb2\xc9\xee\xd9\x6b\xca\xba\xd1\x20\xa7\x3c\x9f\x23\x8a\x9a\x2b\x96\x54\x6d\xeb\x63\xb1\x73\xcb\xe5\x61\x52\x5d\xfa\x44\x6c\x6f\x7f\x1e\xe3\xe8\xa7\x5b\xd7\x79\xf3\xca\x01\x56\xaa\x56\x20\x1e\xc8\x3a\x31\x3b\x89\xf0\xe9\x98\x9f\x72\xf7\x5f\x77\xe6\xcf\x02\x76\x2f\x97\xbe\xa1\x4f\x31\xbd\xae\xfd\xc5\xd7\xed\xdb\x88\xac\xc6\x6b\xa2\x72\x19\x1f\xcc\x2e\x07\xb3\xcb\xc1\xec\x72\x30\xbb\xec\x68\x76\x69\x4b\x12\xdf\xdd\xe8\xe2\xe2\xe9\xf9\x0c\xa4\xf9\xd0\x75\x80\xbe\x58\x6e\x40\x82\x29\xf4\xc9\x7c\xce\x10\xff\x00\x29\xc2\x1c\xc0\x6c\x7e\x3e\xe3\x90\x72\xf6\xf7\x98\x2f\x5d\xe7\xff\xa2\x88\x91\xe4\x1a\xd1\x89\xe3\x8d\x46\xc4\xdf\x60\xb6\x8c\xe7\xdc\x25\x82\xfd\xd9\x3d\x78\x80\xb4\x15\xd7\xf8\xf2\x2c\xe0\xba\xcd\x5b\x34\x17\xbc\xeb\x36\x7b\xf2\x99\xac\x55\x8e\xba\x2f\x93\x33\x70\x3b\x39\x03\x4b\x14\x2f\x96\x7c\x62\xc6\xf9\x57\xf9\x13\xdc\xc4\x11\x5f\xa6\x0f\xff\x2e\x7e\x6d\xfb\x19\x8e\x22\x4a\xd6\x7d\x85\x7f\xd1\x64\x2f\x59\x5c\xf3\x54\xd5\xc4\xd6\xe4\x06\xd1\x31\x43\x09\x0a\xf9\x38\x66\xe3\x05\x25\x9b\x4a\x0c\xd8\x80\x9d\xfa\xd8\x4b\x94\xd4\xf7\x29\xa7\xf2\x41\xcc\xe4\x93\x9c\xc8\x1b\xf6\x17\x85\x8a\x8e\xdf\xa8\x69\xbf\xe3\x32\xa8\xbf\x50\x65\x84\x58\x8f\x95\x48\xbb\x19\xfc\x62\x7c\x4a\x11\xb2\xf3\x7a\x98\x2e\xda\x97\x04\x73\x1a\xa3\xbe\x76\x4f\xd3\x6a\x68\xa8\x36\x93\xed\x8a\x57\x05\xdf\x01\x89\xb5\xb9\xf4\xc4\xab\x43\x44\xc1\x77\x21\xfe\x1e\x22\x0a\x86\x25\xfe\x7e\x8f\x11\x05\xcf\x3d\x00\x03\x2a\xc4\x5a\x12\x50\x21\xd5\xb2\x2c\xb8\x80\x5c\x38\xce\x84\x80\x24\x90\x81\x05\x08\x5f\x7b\x2e\x4c\xd3\x1c\x0b\x24\x9c\x04\xc9\x45\x32\x61\xbd\xe2\x0c\xd0\x3f\xba\x67\x46\x40\xff\xd8\xc0\xc1\x39\xaf\xaa\x41\x77\xe6\x08\x02\xba\x9d\x1f\x7c\xa9\x14\x2b\x2b\x8d\x46\x15\x49\x0f\xf6\x1e\x65\x5f\x7a\x88\x8a\x5f\x3a\x88\x85\x5f\xd6\xab\xf3\x3e\x08\x5b\x9d\x0f\x10\x65\x62\x8a\xdd\x91\xb6\x3a\x6f\x45\x9b\xb2\xb9\x8e\x2f\xab\x5d\x0a\xeb\x85\xb7\xac\xdd\x5e\x22\xb1\xd3\xa4\xd3\x94\xf6\x07\x23\xe3\x77\x26\x65\x1d\x8c\x8c\xc3\x92\xb2\x86\x6d\x64\x54\xe4\xa4\xae\x0a\xba\x2a\xca\xf9\x20\xff\x2e\xd5\x87\x9f\xd2\xab\x1d\x1c\xbc\x4c\x6d\xd0\x1d\x88\xfc\x30\x29\x3c\x8e\x76\x61\x6a\xaa\xd5\x20\x27\xfc\x05\x45\xe3\x05\x8d\xa3\x71\x02\x6f\xc9\xa6\xc6\x47\x3b\x49\x54\x4d\x98\x53\x05\xc4\x4e\x45\x8b\xa7\x28\x03\x55\x7f\x71\x9a\x63\xaf\x86\x8a\xa1\x9b\x6c\xae\x2e\x12\xc7\x00\x4d\xcf\x67\x85\x68\xe6\x96\x5b\xd6\x79\x22\xc8\x5a\x65\xfa\x94\xa6\x35\xd7\xad\xf6\x72\xcd\xeb\xfb\x4c\x27\xdb\xb1\x4f\x0d\xdf\xbe\x8f\x12\x42\x2a\xc9\x44\xa5\x18\xad\xa0\x07\x87\x3a\x39\xc5\xce\x88\x23\x84\xb6\xa3\x8d\xd0\x15\xe4\x63\xbc\x11\xb8\x6a\xce\x0f\x92\x05\x07\x27\xc9\x38\x9e\x8f\x85\x48\xd2\xd9\xba\x27\x84\x17\x59\xf0\x07\x29\x11\xc6\x55\xc7\x4d\x88\x00\x3b\x9c\xd9\x7c\x5f\x01\xee\xc4\xf5\xcc\x31\xce\x25\x1e\x70\xf4\xcc\x3d\x17\x7b\x7d\xb8\x92\x42\x1b\x8f\x57\x07\x19\xfc\x20\x83\x1f\x64\xf0\x83\x0c\xde\x57\x06\xaf\xb3\x74\x62\x40\x01\x04\x44\xca\xd6\x32\x83\xca\x11\x0c\xde\x41\xbe\x54\xf4\xdc\x25\xa7\xe7\xe8\x07\x21\x72\x5b\xcf\xe0\xe9\x1f\xce\x3c\x00\xff\x25\xf8\xc3\x19\xc0\xf6\x0b\x2a\x5f\x50\xf1\x42\x0e\x81\xd9\x2f\xf1\xe9\xf3\xdf\xcb\x5a\xb2\xff\x12\x3c\xff\x3d\x88\x03\x0a\x36\x01\x34\xa5\xce\xd3\x32\xec\x67\x27\x41\xc0\x26\x1a\x15\xec\x99\x13\x39\x47\xe9\xf3\xc4\x3c\x4f\x9e\x39\x4b\xeb\x79\x6c\x9e\xc7\xcf\x9c\x95\x73\xa4\x71\x61\x1e\x6e\x9e\x39\xcc\xd9\x6e\x7b\x51\x5b\x4a\x56\xe3\xdd\xee\xea\x72\x4d\x87\xc6\xef\x29\x59\xbd\xee\x79\x69\x67\xb5\x69\xe7\xfd\x94\x6c\xaa\x53\x93\x56\xcb\x4c\x0a\x7c\x78\x48\xdc\xf4\x48\x4a\xaa\xc0\x5b\x23\x66\x16\x61\x77\xbc\x09\xd8\x81\x21\x4d\x4e\xaf\x63\x7f\x8b\xb0\xfd\x9e\x5d\xfa\x89\xf4\x57\x6b\xd3\x66\x7b\x89\xbe\x96\x29\x57\x2a\xb2\xd5\x57\x47\x8b\x3d\xf5\x13\x6f\xd8\x20\xdd\xbb\x5b\x74\xc1\x55\xa5\xab\x79\x1d\xb2\xf6\xd4\xc5\xbc\x09\x5b\xdd\xa3\x57\x16\xbc\x3d\x6e\x65\x09\xd9\x58\x08\xde\x3d\x8f\x53\xda\x6c\x60\xe8\x5b\x42\xf6\x5e\xce\xb6\x63\x9f\x1a\xbe\x13\x1a\xd7\x14\x5d\xc7\x64\xd3\x57\xac\xc8\x35\x1d\x1e\x3a\x3f\xa4\xb3\xee\x8e\x52\xd3\xa6\x1d\xad\x14\xcd\xc7\xab\xa2\x21\xaf\x06\x8e\x93\x0a\x4b\x03\x25\x1b\x1e\xe3\xc5\x29\xa7\x10\x2b\x6f\x7a\x31\xbe\xb6\xec\xf8\x07\x0d\x7b\x28\x1a\x36\xfc\xcd\xf8\x12\xc1\xef\x42\xc3\x86\xc3\xd0\xb0\x49\xf5\x2d\x97\xa0\x26\xb5\xb7\x5c\xea\x65\xe5\x2d\x17\x80\x4a\x23\x27\x01\x4d\x75\x71\x7d\x40\xce\x00\xf7\x05\xf9\xfa\x4c\x3c\x97\x2f\x63\xa6\xdc\xeb\x55\x5f\x20\x5f\x63\xcf\x7a\xe3\xab\xf4\x92\xfc\xa3\xf8\x05\x48\x16\x0a\xf6\xf3\x0d\x46\x54\x42\x7a\x1e\x28\xde\x8f\x91\x0e\xd4\x56\x50\xd1\x32\xff\xd2\xaf\x7a\x10\xdc\x9b\x38\x89\x42\x48\xa3\x1c\x88\x46\x51\x89\xfa\x02\x6a\xd1\x5f\x68\x5d\x8a\x74\xa4\xbe\xe2\x6c\x2b\x02\x1c\xcb\x7f\x59\x9e\x18\x77\x3f\x23\x6c\x4d\x11\x8c\xbe\xdd\xf1\x20\xfd\xe7\x8e\x1e\x65\xe2\x7b\x41\x1c\x58\x4a\xfd\xd5\x94\xeb\xc9\x7e\xb2\x3b\xd9\xd7\x41\xc4\xfd\x89\x3f\xa8\xa2\xfc\x17\x39\x92\x3f\x79\x04\x7a\x7f\xa1\xe6\x36\x51\xd4\x68\x9b\x61\x27\x79\x6a\xd2\x99\x7e\x29\x36\xf8\xcf\x84\x97\x93\xbc\xf0\x32\x1a\x35\x8a\x2e\x55\xec\xf0\x21\x94\x19\x69\x12\x69\x93\xe8\x4d\xa1\x02\x29\x55\xa4\x91\x79\x20\xb4\xca\xb6\x0a\xda\x02\x98\xa2\xbe\x49\x40\x5c\xea\x81\x38\x48\xa6\x67\x33\x10\x06\x89\xde\x17\xe9\xa6\x38\xde\xb8\xb1\x40\x65\x18\x84\xfe\x0a\xae\x2b\xaf\x69\x91\xcf\xd6\x49\xcc\x5d\xe7\xd4\xf1\x24\x10\xc2\x21\x89\xd0\x2f\x1f\xdf\xbc\x14\x32\x3e\x46\x98\x7b\xfe\x7f\x93\x18\x4b\x88\xad\xac\x39\xe4\xab\x84\xd1\x17\x39\x62\x8f\xd2\xe7\xde\xc4\xc5\x39\x82\xfe\x1e\xae\x50\x2e\x66\x4a\x95\x21\xf7\x1d\x6f\x34\x8a\x73\x2f\xa2\x50\x3e\x74\xe3\x20\x85\x11\x1b\x37\x84\xdc\x8d\x3d\x0f\x14\x3e\x38\x8d\x67\xe6\x2d\x74\x43\xcf\xf3\xbc\xed\x51\x8a\xda\x50\x62\x35\x7a\x64\xc6\x97\x09\xd2\x61\x99\xbd\x49\x81\x06\x10\xfc\xcb\xc7\xb7\x2f\x65\xf2\x44\xfd\x01\x72\x29\xfa\x46\xd4\x74\x6d\x90\xf3\xcb\xc7\xb7\x8e\xc5\x3a\x04\x75\x13\x9d\x21\xfd\x5d\x59\x84\x36\xc7\xf0\xa2\x16\x86\xc7\x57\xc9\x98\xc1\x79\xdf\x0c\x18\x59\xbb\xa1\xe9\x6b\x7c\x95\x7c\x92\xf3\xed\xaa\xac\xe9\x06\xed\x9a\xda\x66\x05\x71\xff\x5c\x22\x69\xb3\xa1\x21\x32\x9d\x6e\x57\x44\xea\x06\xed\x88\xbc\x5d\x93\xee\x89\xa1\x15\xf4\xd0\x90\xa7\xa6\xd8\x15\x73\x02\xba\x15\x6d\xf1\x6a\xd3\x3d\x37\xb4\x04\x1e\x18\xd2\xd4\x04\x3b\x76\x28\x80\xdb\x51\x86\xfb\xa6\xac\x11\x2d\x86\x86\x36\xdc\x3d\x65\x4d\x8c\xdb\x53\xd6\xc4\x98\x23\xca\x50\xef\xfc\x9f\x59\xbb\xbd\x44\x60\xdb\xa4\xaf\xc9\x55\xdf\xc4\x78\xba\xd1\x5e\x4e\xb7\x69\xbf\xa8\xa9\x76\xde\x32\x02\xbc\x1d\x81\x6c\x0c\x43\x1e\x5f\x57\xa7\xc1\x91\x32\x4e\x19\x7f\x69\x9b\xa1\xa1\x90\xbd\xd0\x73\xed\x8a\x44\xdd\xa0\x13\x1a\x85\x4a\xd1\xfd\x86\x27\x6d\x31\x3c\x1c\xaa\x89\x76\x47\xa1\x80\xef\x82\x41\xa1\xf1\xf7\xc3\xa0\x6a\xb1\x97\x18\x6c\x9f\xad\x8a\x4a\xeb\x33\xdb\x21\x06\xdf\xc5\xec\x75\xaf\xf0\x3b\x0d\xdf\x05\x83\x42\x3d\xec\x9b\xca\xaa\xa3\xe9\x0a\xa6\x66\x3b\x22\xff\xa5\x43\x35\xdb\xe1\x9d\xcd\x76\x0f\x9c\xf8\x5e\x98\xed\x68\x67\xb3\xdd\x03\x6e\x6b\xf6\xde\x6c\x07\x6b\xcc\x76\x4f\x7e\xe3\x91\x37\x1e\xef\x93\xd9\xce\xb2\xd6\xb1\xc7\xb5\x2b\xe9\x50\x6e\x00\x03\xf1\x03\x90\x00\x4e\xcf\x66\x80\x05\xb0\x64\xd2\xab\xbb\x34\x69\xb2\xb1\x91\x4a\x1b\x1b\x29\xdb\xd8\x88\xe7\x01\x97\x06\xd6\x37\xbc\x54\x9a\xf1\xe1\x7a\x9d\xdc\xba\x14\x4c\x49\x6a\x75\xe3\x2e\xf3\xbc\xa7\x35\x79\xb1\x66\x82\xfe\xdf\xa4\xba\x04\x76\x83\x20\x2f\x9b\xec\x25\x3f\x6c\x9e\xea\x15\xba\xed\xeb\x8b\x21\x9b\xec\xe5\x54\xeb\xfb\x54\xd3\xec\xd8\xa1\x00\x6e\x45\x5c\x02\x59\xd7\x9c\xac\x07\x47\x89\xa1\x38\x4a\x1c\x42\x11\x86\x25\x54\x3d\x79\x28\x82\x2d\xbe\xd9\x51\xb8\xaa\xd6\x2a\xcd\xd2\xa1\xe0\x0b\xc7\x99\xe0\xa2\x3b\x7f\x69\xa7\x51\xe3\x95\x4f\x7d\xb6\xb9\x64\x9c\xba\xe3\x73\x6f\xbb\x8b\xf8\x20\xe8\x4f\x40\xfb\x24\x79\xa1\x3d\x12\xb1\x24\xe1\xaa\xb3\xa1\x58\xc0\x0e\x8c\x1d\xc8\xe9\x75\xec\x2f\x09\x57\xed\xcc\x00\xcd\xf9\x98\xd3\x78\xd5\x1c\xd1\x97\x81\x1d\x92\x74\x7d\x17\xfc\xe2\x90\xa4\x6b\x58\xfc\xe2\x7b\x4f\xd2\x95\xb2\x23\x28\xd8\x11\x04\x4c\xa5\xed\x4a\xb2\x17\x4c\xbc\x60\x95\x35\xc1\x09\x48\xfa\x55\x05\x4f\xc8\x62\x5c\x69\xac\xaf\x66\x13\x12\x7a\x68\x8c\x82\x2c\x5e\x77\xe7\x14\x64\xf1\xba\x9d\x55\x90\xc5\xf9\x59\x1f\xa4\x9d\x9f\x0d\x10\x69\x62\x8a\xdd\xb1\x76\x7e\xd6\x09\x6d\xdd\xd3\x9c\x29\xe8\x01\xa2\xad\x7b\xaa\x33\x09\xdd\x05\x6d\xdd\xab\x57\x4a\xe0\xe1\x21\xad\x7b\xed\x4a\x01\xdc\x01\x65\x37\x88\x4a\xe1\xbd\x9f\x97\x4e\xd6\x6e\x70\x28\x4c\x27\xdc\x19\x8f\xba\x45\x6b\xdc\x66\xd2\x23\x2a\x2f\xd9\xd3\x6b\xff\x06\xcc\x75\xef\xae\x83\x29\x2e\xe9\x13\x95\x97\x0c\x2f\x2a\x2f\xe9\x11\x95\x97\x74\x88\xca\x5b\xc1\x1d\x42\x5c\x75\xa3\xbd\x44\x5d\xeb\x74\xfb\xcf\x75\x98\x13\xfd\xd2\x99\x65\x09\xd8\xbd\x9c\x62\x7d\x9f\x72\x7a\x1d\xfb\x5b\xc1\x2f\xed\xe8\xaa\xbe\xab\xa8\x46\xd7\xbe\x5e\x52\x34\xa0\x2b\xee\x9e\xbb\x6a\x15\xb7\xe7\xad\x5a\xed\x98\xff\x2c\x6b\xb7\x8f\x59\xd0\xfa\x25\x40\x5b\x91\xee\xd9\x14\x04\xec\xd0\xb6\x0c\xe9\x9e\x4d\x61\x45\xda\xb3\x29\xac\x36\xd5\x62\x4c\x35\xbe\x36\xc3\x93\x63\x56\x7d\x3a\x5c\x75\xa1\xe1\x3b\x44\xcb\x0f\x31\x52\x1e\xf7\x09\x93\xc7\x5d\x62\xe4\x31\xe9\x5d\x26\x47\x36\x19\x1a\xe2\xe4\x34\xbb\x22\x8e\x90\x76\x4d\x17\x13\x3e\xee\x93\x3e\x5e\xc1\x0f\xd0\x8b\x0d\x13\xfe\xfa\x1f\x3d\x70\xc7\x5f\xff\xa3\x0b\xf2\x7a\x61\x6e\x80\x38\xeb\x83\xb1\x56\x7c\x29\x2b\xf4\x18\xf6\xa5\x71\x59\xbb\x81\x21\x50\x0d\xfc\x45\xf7\x4e\x4d\x83\xae\xa8\xac\xc8\x36\x76\xf0\xa8\xf8\x0e\x6e\xc8\x0e\x1e\x15\xc3\xba\x21\xdb\x27\x8f\x8a\xbb\xed\x04\xdb\x15\x65\x82\x80\x5e\x4c\x67\x13\xbd\x8b\x34\xc5\x70\xe9\x4e\xde\x97\x0a\x4b\x3a\x73\xdf\xd3\xf9\x51\x10\x3c\x8e\x48\x28\x77\x58\x15\xab\x20\x58\xb3\x88\xca\x06\x7b\xc9\x23\x5a\xe7\x7b\x13\xe3\x88\xdc\x74\x9e\xad\x06\x1f\xe4\x5c\xbb\x4e\x72\x90\xb3\x5b\x8b\x96\xd5\x61\x21\x4d\x12\x8e\x69\xb6\x97\x53\x6e\x10\x70\xd2\xe9\x76\x15\x70\x74\x83\x76\x44\x56\x66\x49\xaf\x16\xad\x87\x97\x23\xbd\x47\x82\xf4\x0e\xd9\xd1\xd7\x70\x81\xc6\x3c\xe6\x49\xe5\x4d\x48\xf6\xb6\xaa\xc1\x93\x59\xe5\x52\x44\x74\x37\xb0\xad\x11\x0d\x11\xe6\x62\x70\x21\x49\x36\x2b\xcc\xfa\x19\x1b\xcb\xed\xf7\xd1\xe8\x28\x4b\x2f\x00\x34\x7d\xde\xd3\xfc\xb8\x46\x74\x4e\x68\xa5\x83\x61\x48\xb0\xf2\xe9\x0f\x6f\x4b\xe0\x7b\x79\x32\x5a\x66\x1a\xaf\x91\x0c\x50\xad\xe6\x15\x0d\x74\xd4\x6e\x39\xd0\x89\xef\x30\xe3\xfd\x9c\x6a\x7d\x9f\x6a\x9a\x1d\x3b\x14\xc0\xed\x88\x4b\x36\x14\x26\x35\x39\x42\x62\x3c\x17\x94\x82\xd0\xd3\x24\xbe\xac\x68\xb2\x57\x24\x90\x24\x71\x78\x7b\x1a\x41\x0e\x05\x29\x43\xb4\xab\x6e\xaf\x94\x02\x1e\x40\xa3\x99\x69\x85\xe3\x4f\xe7\xa3\x91\x1a\xd4\x49\x90\xbd\x9c\x9e\xcf\x2e\xec\x1f\x93\xbb\x2d\x30\x34\x6d\x81\x34\x9d\x72\x5e\x59\xa3\x48\x83\x9e\xf2\xa6\x02\xec\x8d\x46\xa2\x67\xa3\x5f\x5f\x34\xf6\x31\x99\x72\x7f\x91\x90\x4b\x98\xdc\xdf\x3b\x2f\x92\xc4\x99\xed\xe4\xfa\x97\x75\x19\xf0\x3e\xf4\x99\xf7\xa1\xb6\x6a\x21\x2a\xca\x8f\x67\xb0\x2b\x12\xa1\xc4\x80\x1e\x9c\x93\xbf\x0f\xd3\xcb\xc1\x39\x79\x58\xa6\x97\xef\xc7\x39\xd9\xb2\x88\x49\xb3\x8e\x4f\x51\xb4\x09\x91\x0d\x04\xb0\xf6\x61\x2e\x55\xc0\xc8\xe8\x2e\x06\xce\x9b\x57\x8e\x17\x04\x01\xf7\xdf\xbd\x78\xff\xe2\x2f\xaf\xdf\xbd\x7e\xff\xf9\xd7\x37\xaf\x26\x34\x70\x56\x10\xc3\x05\x92\x76\x92\xa3\x4b\x8a\xe0\x95\xac\x87\xe1\x38\x27\x41\x90\xeb\x41\xac\x71\x02\x39\x72\x3c\xd1\x2a\x8e\x10\xe6\x31\x8f\x11\x33\xad\xd2\x6a\x19\x81\x23\xc9\x9f\x78\x65\x8e\x20\x9a\xd2\x99\xa2\x03\xd8\x03\x68\xeb\x81\xbb\xec\xab\x93\xe9\x0c\x64\xbd\x89\x5f\xa6\xf9\x64\x3a\xdb\xf6\x73\xa4\xd6\x24\x5a\x1d\xe0\x06\x36\xb9\xc3\x02\x8a\x3e\x7f\x9e\x57\x71\x97\x2a\x9e\x2b\x39\x9d\xcd\x3e\xb9\x8d\xc0\xd2\x52\x65\xb6\x3a\x1d\xd6\xe4\x50\x92\x20\x55\x99\xc4\xd1\x11\xca\x63\x8d\xa4\x5b\xc7\x86\x53\x33\x1e\x97\x60\x54\x53\x4c\xa2\xe6\x76\x79\x00\xd5\xe8\x4c\xff\x37\xae\xf8\x47\xff\x77\x2e\xfa\xca\x4d\x4e\xec\xaf\x42\xdf\xf6\xc6\x4a\x37\x87\x0d\xe1\x6c\xb7\x8f\xc5\x99\x2b\xcd\x64\x95\x6e\x05\xeb\x7d\xb5\x91\x35\x08\xc7\x62\x7a\x5d\x65\x63\x72\xd3\xea\x4b\xba\x63\xea\xf8\xa1\xa6\x8d\x5f\xf7\xcd\x19\xbf\xee\x9a\x30\xfe\x1f\x1b\xb4\xe9\xab\x9d\xa9\x36\x03\x43\xa1\x9e\x68\xc7\x1e\x25\x74\x2b\xf2\x28\xc4\x11\xe9\x1e\x1c\xa9\xc1\x07\x86\x38\x33\xc9\x8e\x5d\x2a\xf0\x2e\xa8\x5b\xf4\xdd\x77\xaa\xcd\xf0\xd0\xb7\xe8\xbe\xef\x24\x74\x3b\xf2\xa4\x08\xd5\x17\x7b\xaa\xd1\x5e\xa2\xaf\x6d\xba\x73\x8a\xd8\x52\xe5\x7d\x7b\x5c\x91\xa8\x42\xa6\xe5\x8f\x9a\x78\x45\x49\x53\x48\x66\x3c\x39\x2a\xea\xca\x46\xd4\x2a\x24\xa3\x47\x1e\x10\x6a\x55\x45\x0e\x16\xa9\x5e\x1d\x59\xb1\x17\xe4\x6a\xb3\xd6\x9f\x9f\xa4\x49\x56\xb0\xe7\xf9\x1a\x67\xae\xb7\xcd\x67\xb4\xe7\x6d\xa8\x96\x1e\x18\xbd\x5d\xe9\xb3\x76\x83\xdc\x5f\x38\x42\x74\x9c\x0a\xb7\x07\xbf\x93\xef\xcb\xf8\x71\xf0\x3b\x19\x96\xf1\x63\x30\x45\x45\x4f\xef\xee\xdc\xe9\x8b\xf1\xff\x0b\xc7\xff\xf4\xcf\xc6\xff\xfe\xeb\x78\xf6\xcc\xdb\x6e\x4f\x17\xa0\x63\xd0\x76\x5a\xc5\x1f\xaa\x2a\xfe\x24\x57\xc5\x3f\x35\x70\x13\xdb\xd8\x7d\x01\x7d\x8a\xd6\x09\x0c\x91\x4b\x8b\xa4\x56\x1e\x34\x4d\x6b\x4a\x49\xf6\xdd\x4c\xd9\x25\x72\x7b\x38\x8e\xa7\x0f\x2d\x36\x94\xcc\x91\xc5\x41\x27\x8e\xd3\xcb\x64\x41\xd1\x1a\xf5\x76\x7f\xd4\x8d\xf6\x92\x5d\x34\x48\x73\x7a\xaa\x5d\xc5\x39\x09\xde\x81\x01\x5d\x23\x5a\x13\x64\xda\x84\x41\xd5\x6a\x2f\x51\xd8\x32\xe1\x78\xb1\xec\x92\x24\xc5\x82\x3b\x5c\x44\x7c\x17\xbc\xf8\x70\x11\x31\x2c\x5e\xfc\xfd\x5c\x44\xec\x43\x96\x14\x4a\x08\x1f\x6f\x68\xa5\x23\x5d\x4d\x56\xf3\xb4\xc9\x5e\x92\xf9\x06\x4e\x49\x08\xff\x85\x76\xf7\xa1\xd3\xf0\xed\xac\xa3\x57\xdd\xec\x41\x96\xcd\xee\x57\x35\xdb\x2a\x9a\xdd\x8c\x36\x8e\x04\x8e\xc2\xe5\x41\xbf\xfd\xce\x78\xea\x41\xbf\x1d\x16\x4f\x1d\x8c\x7e\xdb\x43\x89\x55\x25\x3a\xf5\xa5\xf0\xd4\xf9\x40\x11\x93\x71\x0e\xce\xeb\x2f\x30\x14\xff\xfb\x81\xa2\x79\xfc\xc5\x01\xce\xa7\xcd\x5c\xfd\xf1\x11\x2d\xd0\x17\x67\xe6\xcf\x63\x1c\x55\xfa\x0c\xa4\x4a\x2f\x9e\xa2\xd9\xd6\xf3\x74\x1e\x4d\xd3\xb7\xb9\x89\xcd\xec\x9e\xfe\x1b\x7c\x8d\x28\xbf\x70\xde\xff\xfc\xf9\xd8\x99\x38\x8e\xbc\x39\x93\xc0\x9e\xba\x18\x56\xa3\xe9\xd2\xf2\x5f\x91\x00\x4d\x6e\x8f\x25\xcd\x8c\xf1\xe2\xd8\xf9\x57\x2f\x83\x97\x1d\x81\x7f\x75\xfe\x55\x77\xac\xa7\xd7\xa9\xe7\xb5\x84\x45\xd1\xf1\xe5\x6d\xbe\x53\xd5\x89\xd5\xab\xc6\x55\xa7\x5e\x99\x84\xad\xe8\x55\x75\x62\xf5\xaa\x10\xdf\xa9\xd3\x74\xf2\x7c\x89\x8e\xa9\x68\x97\xef\x5b\x76\x25\xbb\xde\xa6\x16\x84\x9c\x40\x44\xbb\xb0\x25\x55\xd5\xaf\x97\x50\x64\x35\x1b\x1e\x77\xe7\xe8\x83\x9e\x71\x77\x1e\x6f\xda\xb4\x72\x7a\x86\x20\x0d\x97\xa2\xc7\x03\xa3\x3f\x30\xfa\x03\xa3\x3f\x30\xfa\x9e\x8c\xde\xdc\x78\x2a\x42\x52\x73\xe3\xa9\x5e\x36\x94\x9a\x48\x6d\xdb\x54\xd9\xb6\x61\xce\xb6\x2d\x8b\x32\xa8\x3e\xfc\x8c\x60\xb9\xd4\xf3\x61\x14\xb9\xc5\x32\xdc\x2d\x4c\x84\xa1\x04\x85\x5c\xda\x48\xaf\xd0\xed\x58\x4e\x97\xd5\x19\x16\xd3\x46\xc9\x66\x11\xcf\x5b\x1c\x9c\x0d\x61\x74\x71\xe0\x98\xe7\x45\xd2\x36\x1a\x39\x4c\xfe\x51\x7c\x91\x6e\x90\x8b\x0a\xd9\xc6\x1c\xed\xed\xa4\xe2\x25\x1a\x8d\x1a\x3e\x97\x3b\xaa\x41\x10\xa4\xcf\x4f\xcc\xdf\x19\x51\xb8\x30\x63\x9b\xa4\x1f\xf4\x1e\x5c\x5a\x38\xc3\xf7\xdf\xd0\xed\x7f\x4a\x6c\xe7\xb7\x53\xf1\xf6\x1b\xd0\xb2\x07\xff\x59\xa5\x07\xff\x99\xed\xc1\x7f\x36\x9b\x4c\xc5\xc6\xd9\xdd\xfb\x9f\x04\xb4\x50\x97\x98\x02\xa2\x06\xc5\x40\x62\xc4\x55\x2c\x08\x4f\x2e\x47\xfb\x84\x05\xd2\xd2\xa3\x37\x89\xe7\x4e\xe9\xcc\x03\x49\x40\x8b\x8e\xa2\xe9\x88\x2e\x5c\xa6\x4c\x4a\x89\x34\x20\x79\x13\xb7\xdc\xc5\xf4\x6c\xa6\x7a\x91\x49\x9a\xc4\x20\xe2\xe0\xee\x0a\xdd\x4e\x18\x50\x98\x4e\xb6\xd9\x90\xa0\x46\x33\x8a\x8a\x63\xcb\xde\x08\x2a\x3b\x3d\x9b\x8d\x46\x2e\x0a\x62\xcf\x76\x7d\xc5\x1b\x71\x6a\x0b\xb0\x44\x03\x1a\x7e\x14\x0b\x51\x4d\xfd\x7d\x17\x73\xb4\x62\x13\x02\x0c\xf8\x24\xb5\x7f\xa1\x0b\x22\x56\x02\x6d\xb7\x47\xd5\x4b\x4f\x1f\x29\x3e\x5a\xd3\x96\x53\x41\x7f\x28\x86\xc9\x98\x91\x0d\x0d\xfb\x48\x31\xb6\x2b\x66\x16\xac\xf1\x5a\xf7\xf7\x49\x76\xc7\xfc\x79\x4c\x19\xd7\xec\xd0\x3b\xc2\xf7\xf7\x6e\xb9\xcd\x3b\xc4\xa1\x5f\x1c\x88\x67\x58\x6f\x8a\x1b\xe9\x68\x37\x8f\xbf\x5c\x38\xce\xc4\xfc\x2d\x38\x21\x1e\x8d\xa6\xce\xd5\xe6\x12\x51\x8c\xb8\xa0\x45\x0e\x47\x94\x42\x15\xe9\xe6\x60\xb2\x82\x59\x99\x7f\x07\x38\xf0\x86\x39\x33\x3f\xc6\x61\xb2\x89\x10\xcb\x6c\xc8\x99\x6c\x4e\x33\x99\x7b\xa7\xc3\xab\x71\x9b\x47\xc5\xd3\xc5\x99\x98\xa5\x5c\x22\x98\xf0\xe5\x38\x0b\x61\x3c\x88\xa4\x07\x91\xf4\x20\x92\x1e\x44\xd2\xc7\xb7\x3d\x89\x21\xfa\x2f\x97\x28\xbc\x62\x2f\x69\xcc\xe3\x10\x26\xcf\xcc\x83\x0f\x90\xb1\x18\x2f\xd2\xdf\x7f\x87\x14\xc7\x78\x61\x78\xdf\x5a\xbd\x9e\xbc\x83\x7c\xa9\xcc\xe9\x6e\xa1\xe5\x29\xfd\xdd\xf9\xd9\x99\x07\x6e\x54\xc3\x2a\x48\xdd\xa7\x81\x0c\xf5\x18\xaa\x40\xcd\xf8\x34\xec\xb6\x97\xc5\xc4\x90\xd6\x18\x73\x84\x05\x2e\x04\x75\x5d\xc5\x8c\xc5\x04\x1f\x52\x26\x1d\xc8\xeb\x81\xbc\x1e\xc8\xeb\x53\x91\xd7\x37\x86\xe6\xf8\x7f\x85\xec\x43\x46\x76\x84\x72\x6f\xbd\x7c\x91\x24\xe4\x06\x45\xa5\x10\x31\x53\xf0\xca\x81\x02\x40\x85\x6a\x9d\xc0\xd1\xe8\x24\x7d\x11\x21\x7c\x5b\x8a\xb4\x52\xd0\x3d\xa9\xe4\x72\x33\x9f\x57\x67\x0e\x69\xf0\xa8\x32\xad\x06\x66\x51\x4e\x27\xdb\xb1\x4f\x0d\xdf\x6e\x49\x8e\x17\xdd\xd3\x49\x4b\xe0\xa1\x21\x4e\x4e\xb0\x2b\xd6\xe2\x45\x7b\x46\x69\xd6\x23\x01\x37\x1b\x5e\x02\x6e\xd6\x23\x01\x37\xeb\x90\x80\x5b\xc8\x56\x9b\x04\xd2\x5e\x39\x2e\xec\x46\xfb\x94\xe5\x42\x32\xdf\xbe\x14\x47\xb6\xd9\xcb\x5d\xd0\x36\x59\x65\x3e\x3d\x08\x9c\x07\x81\xf3\x20\x70\x7e\xc7\x02\xa7\xed\x09\x5a\x76\xf8\xd0\xbb\xb2\x50\xfa\xd4\x4b\x43\x14\x4e\x8f\x4f\x17\xc0\x19\x3b\x9e\xcf\xc9\x5b\x72\x83\xe8\x4b\xc8\x90\xbb\x9b\x09\x53\x51\x9c\xa7\xcb\xcf\xc9\x08\xdd\x21\xf2\xcd\xb4\x1a\x22\x0d\x5f\x27\xf1\xa1\x6e\xf5\x81\x82\x1f\x28\xf8\x6f\x92\x82\xdb\x77\xf3\x29\x01\xa7\x82\x80\x53\x1d\x89\x06\x58\xf6\x82\x5c\x38\xc0\x99\x10\xd3\x2d\xf4\x25\xf5\x70\xd9\x6e\xb4\x5c\xb4\x7d\x42\x4a\xfe\x0f\xda\xbd\x48\x8b\x04\xde\x4b\xea\xdd\xa0\x87\xc9\x09\x76\x55\xc4\xfe\x41\x3b\xf0\x02\x0e\x29\x67\xe3\x9b\x98\x1f\xfc\xc3\x0f\x1c\xe1\xc0\x11\x7e\xf3\x1c\xc1\xf2\xd6\x72\x0b\x41\x52\x9e\xaf\xa8\xc5\xdf\x63\xbe\xdc\x31\xe5\x7e\xd6\xc1\x03\xb9\x40\x43\x8e\x28\xc6\xa1\x09\x79\x39\x14\x13\x39\x10\xb5\x03\x51\xfb\xbe\x89\xda\xd3\xfa\xc2\x0a\x5a\x52\xe7\x0a\xcb\x65\x46\xc4\x07\x79\xc2\x8a\x2e\x7c\x4d\xaa\x5c\x0a\xfa\x3a\xc0\xaa\x2a\xd4\xe1\x12\xd2\x9a\x3a\x54\x1a\x62\x8e\x59\x5d\xa3\xa1\x49\xc0\x72\xf4\x2f\x97\x90\xf6\x28\x44\x65\x37\xea\x20\x11\x67\xf8\x09\x49\x84\x76\xc3\xac\x69\x39\x58\xf4\xbe\x24\x11\xda\x09\xc5\xaa\x61\x67\x34\x0b\x3c\xad\x49\x8c\xeb\x2a\xa9\x35\xe0\x39\xd7\x74\x98\x88\x26\x11\xfa\x20\x66\xd0\x1f\xd3\x59\xcb\xee\xa8\xc6\x61\x7f\x1c\xcb\x36\x03\x45\xae\x9a\x6f\x4f\xbc\x8a\x46\x5d\x51\x8a\x70\x54\xd6\x9d\xdb\xb1\x9a\x35\x1b\x24\x62\x5f\xe3\x48\x8a\xf0\x3d\x51\x6b\x9a\x75\x46\xee\x3f\x36\x30\xa9\x8c\x0e\x6c\xc0\xac\x6a\x33\x4c\xb4\xea\xf9\xf6\x43\xaa\x6c\xd4\x15\xa5\x42\x50\xcd\xf8\x53\x3f\xd4\x16\xda\x0e\x12\xc5\x7f\xa6\x64\x65\x78\x54\x4f\x44\xdb\x4d\xfb\xa1\x3b\x65\x53\xbb\xe0\x3b\x6b\x3c\x5c\x84\x1b\x56\xb5\x0b\xc6\x4d\xdb\xae\x28\x5f\xf2\x55\x32\x66\x70\x7e\x88\x38\x38\x28\xfe\x07\xc5\xff\xbb\x56\xfc\x1b\x3d\x14\xf2\x55\x44\x1d\x27\xab\x22\xaa\x94\x79\xbd\x5b\x04\xb9\xf8\x04\xe7\x68\x67\x73\xa6\xe8\xe5\xaf\xba\x93\x27\xbc\xd8\x52\xc4\xcd\x44\x8a\xf5\x63\x24\x69\xab\x41\x72\x90\x37\xe9\x9c\x7b\x31\x0f\xd3\xac\x2b\xdf\x88\x71\x84\xbe\x8c\xf3\x95\x37\xba\xa0\x56\xb7\x1a\x28\x6a\x23\xf4\xe5\xe7\x79\x6f\xcc\xca\x56\x5d\x11\x9b\x40\xc6\x77\xc4\x6e\xbe\xe9\x20\x51\xfc\x16\x32\xbe\x1b\x9a\xad\x96\x5d\x51\x8d\x09\xdf\x49\x69\xb2\xda\x0d\x12\xc9\xef\x09\xdf\x49\x77\x4a\xdb\x75\x45\xf0\x1a\x46\x42\x77\xef\x87\x5d\xd3\x68\x90\xa8\xfd\x00\xa3\xd7\x3d\x72\xd2\xd9\x8d\xfa\x20\x55\x5e\x0b\xf6\x47\xab\x6a\x36\x54\xc4\x7e\x52\x93\xee\x8b\x5a\xd9\xac\x2b\x72\xeb\x53\x34\xd7\x63\x76\x98\x19\x9a\xd5\xe0\x3f\xf6\xcb\xd3\x6c\x37\xea\x81\xd2\x04\x86\x68\x0c\x93\xca\x74\x9e\x8d\x78\x4d\x1b\x0e\x15\xb9\x62\x02\x2f\x92\xee\xd9\x3d\x8b\x0d\x7b\x22\x79\x27\x04\x0f\x1a\xb9\xbb\x61\xb6\x2b\x5a\x6b\x43\x55\xea\x91\xba\xc7\x91\x2a\x6d\x28\xfd\xa4\x66\xdb\x0b\xa1\xb2\x4d\x67\x74\x16\x1d\xa9\x3b\xa0\x53\x36\x19\x26\x3a\xd5\x6c\xfb\xa1\x53\xb4\xe9\x8c\xce\x6a\x5f\xc4\x0e\x48\xb5\x1a\x0e\x13\xb5\xa9\x5b\x54\x5f\xfc\xa6\x0d\x3b\x23\x79\x73\xa9\x4d\x6c\xfd\x50\x9c\x36\x1b\x26\x82\xb3\x59\xf7\xc3\xaf\x69\xd7\x15\xbd\x9c\x8c\x43\xb8\x42\xc9\x58\xa6\x63\xea\x85\xe2\x7c\xd3\x41\xa2\xf9\x33\x79\x29\x66\xf0\x52\xce\xbd\x17\xa2\xad\x96\x3d\x50\x7d\x85\x2e\xe1\xe5\x6e\xa8\xb6\x9a\x0e\x14\xd5\x7f\x13\x33\xd8\x09\xd5\x69\xcb\x1e\xa8\x4e\xc8\x0d\xa2\xbb\xa1\xda\x6a\x3a\x50\x54\xa7\x21\x6c\xbd\x51\x9d\xb6\xec\x81\xea\x35\x64\x21\xdc\x91\x82\xd8\x6d\x07\x8a\xec\x0f\x72\x0a\x3b\x61\x3b\x6b\xda\x03\xdd\x0c\x61\x8e\x70\x88\x76\x43\x78\xbe\xf5\x40\x51\xfe\x49\x4f\x62\x27\xa4\xdb\x8d\xfb\xa0\x1d\xc3\xab\x5d\x71\x9e\x35\x1d\x2a\xc2\xc5\x0c\x76\xc3\xb6\x69\xd9\x03\xd5\x3c\xe6\xc9\x8e\xa8\xb6\x9a\x0e\x14\xd5\x9f\xc5\x0c\x76\x42\x75\xda\xb2\xb5\x2c\x75\x86\xaf\xcd\x7a\xbd\x2b\x9b\xb4\x9a\x0e\x14\xd5\xbf\x88\x19\xec\x84\xea\xb4\x65\xe7\x5d\x4d\xe3\x55\x7f\x5b\x7c\xda\x6a\x98\x08\xa6\xf1\xaa\xbf\x35\x5e\xb7\xea\x85\xd8\x1d\xec\xf1\x56\xbb\xc1\x22\x77\x17\x8b\x7c\xda\xae\x0f\x82\xfb\xa3\x76\xb8\x48\xdd\x01\x9f\xed\xa8\xdc\x5c\x76\x8f\xf3\xdd\x5c\x0e\x0e\x79\x62\x7a\x5d\xb1\xb6\xb9\xec\x82\x2e\xc6\xe9\xc1\x23\xee\xe0\x11\x77\xf0\x88\xfb\x9e\x3d\xe2\x9e\x24\x14\xae\x39\x49\xe4\x0f\x3d\x93\x49\x9c\x4d\x08\x48\x02\x3c\x7d\x3e\xb3\x32\x4a\x48\xf2\xe4\xb2\x52\x55\xc5\xb6\xf0\xb7\xeb\xc5\x38\xdc\xd0\xeb\x83\xaf\xef\x81\xb2\x1d\x28\xdb\x81\xb2\x75\xa0\x6c\x16\x82\x65\x85\x92\x40\xad\x6d\xb6\xb7\xe4\x56\x52\x1b\x2b\x2d\x2a\x62\x8a\x65\x64\x65\x19\x4a\x95\x49\x9e\x5f\x38\x2f\x9d\x89\xf3\xbf\x1d\xe0\x1c\x3b\x69\xcd\x06\x94\xfd\xc1\x96\xf1\x5c\x9e\xd2\x7c\x59\x92\xac\xf6\x8b\x9e\xa1\x2a\x62\x23\x36\xf5\x7f\x93\x18\xbb\xa2\xb7\xad\x67\x7e\x00\xc7\xf3\xb6\xed\x45\xe6\x01\x56\xb3\x83\x80\x58\x0e\xd1\x2c\xc0\x3e\xa3\xe1\xfd\xfd\xdd\x97\xc9\x19\xb8\x9d\x9c\x6d\x05\x21\xf6\xc5\xac\xef\xef\x9d\x70\x73\x19\x87\x0e\x88\x83\x29\x01\x77\x5f\x26\x2e\xf3\xbf\x3c\x23\xfe\x17\xef\xf4\x39\xb8\x9d\x30\xff\x76\x6b\x16\x43\x43\x06\x41\x90\x8c\x46\xb1\x22\x35\x77\x5f\x26\xf1\xf4\x7c\xe6\x7f\x01\xb7\x13\xe2\xdf\x6e\x3d\x90\xa1\xca\x85\x01\x03\xce\x7f\xe1\xe3\xe3\xe3\xe3\x77\xc7\x19\x06\xfd\x2f\x39\x54\x41\xff\x56\x41\x39\x9e\x97\x3e\xa4\x3e\x5c\xaf\x93\x5b\x9d\x87\x02\xc4\x5e\xbf\xaa\xbb\x1c\x5e\xf5\xcd\xcb\x29\x9b\xec\xa5\xb6\xd0\x36\xd5\xee\xf9\x67\x05\xec\x5e\x4e\xb1\xbe\x4f\x39\xbd\x8e\xfd\x71\xd8\x9e\x7f\x96\x43\x5c\xe9\x62\x50\x87\xaf\xc1\xb9\x15\xa8\x09\x76\xc7\x58\xbb\xfb\x00\x87\xec\xaa\xfa\x30\xe1\x70\x43\x29\xc2\xe1\x6d\x1e\x76\x2f\x31\xd6\x32\xc7\x98\x27\xa8\x26\x27\x71\x98\xc4\xc6\x44\x53\xda\x20\xa6\xd9\x5e\x4e\xb9\x61\x93\xa4\xd3\xed\xba\x51\x74\x83\x76\x44\x92\xc5\x22\x41\x63\x28\x7b\xe8\x4b\x82\x73\x6d\xf7\x12\xa5\x5d\x26\xbf\xd3\xac\xf7\x73\xba\x0d\x3b\x48\x4f\xb5\xeb\xfe\x91\xe0\x1d\x10\x78\x85\xf0\x69\xcc\xc6\x10\x13\x7c\xbb\x22\x9b\xa6\x2c\x4e\x3b\x48\x86\x31\x7b\x61\x3a\xae\x2a\x85\x65\xab\x8c\x66\xf0\xce\x99\xfe\x6f\x5c\xf1\x8f\xfe\xef\xb9\x10\x8a\x8a\x05\xc5\x5e\x84\x21\x62\x8c\xd0\x37\xaf\x1c\x55\xfa\xed\xe1\x45\xb6\x52\xf4\x24\x68\x01\xc3\xa6\x54\xdc\x3b\xe1\xe6\xad\xec\x35\xc0\xd5\x22\x34\x0f\x8a\x76\x00\x6e\xcf\x19\x38\x1f\x37\x09\x62\x8e\x54\x93\x84\x36\x70\x12\xf0\xb4\xa8\x99\x50\x3e\x7d\x4e\xe3\x95\xeb\x1d\x95\x4a\xb6\x01\x47\x7d\xd8\x31\xd2\xb6\x55\x06\x7a\x34\xc2\xdb\x23\x5b\xd9\x30\x16\x08\x94\xe5\x22\xb6\xc0\xb5\x50\x7e\x81\xeb\x4b\x4c\x8b\xa5\xdd\x7a\xde\x44\xd6\x55\xab\x37\x7a\xe0\x1e\xd6\x08\x4e\x21\x66\xb1\xf8\xce\x98\x93\x1e\x35\x8d\xf3\xed\x86\x46\x00\xd2\xc1\x7f\x26\xdd\xc9\x80\xd5\xa8\x9d\x18\xd4\x5c\x97\x34\xf1\xe3\x01\xde\x97\xf0\x3e\x37\x25\xbc\xcb\x1d\x09\xa7\x1b\x1c\x76\x17\x72\x25\xf4\xe0\x90\x26\xa7\xd8\x19\x6b\x1b\x1c\x76\x43\x1b\xe4\xbd\x65\x40\xd3\x6c\x88\x28\x94\xd3\xed\x83\x45\xc8\x3b\x70\xf1\x1b\x84\x8a\xa4\xf0\x60\x9c\x3d\x18\x67\x0f\xc6\xd9\x83\x71\xb6\xc3\xb5\x93\xc9\xc0\xc8\xe3\xf0\x0a\xd1\x9a\x14\x8c\xea\xe5\xc3\x72\x30\xaa\x3e\x7c\x49\xae\x3e\x93\xfe\x49\x18\x05\xb5\xa1\x2c\x24\xb4\x2f\xcb\xb0\x1a\x0e\x8c\x69\xd8\x53\xee\xd8\x6d\xd6\xa4\x95\x71\x6c\x70\x7f\xa3\x81\x6a\xb3\x97\x68\x6c\x9d\xec\x3f\x0a\xc5\x47\x0e\x4c\xf2\xc0\x24\x0f\x4c\xf2\x7b\x63\x92\xe9\x97\xba\xe5\x5e\xd7\x69\x8a\x62\xf6\x7a\xb5\xe6\xb7\x2e\xf5\x2e\xa6\x33\xcd\x04\x5f\xb8\xd0\xf3\x05\xdd\xf8\xe9\x76\xc7\xb4\x45\xaa\xf1\xd3\xa5\x2b\x92\x9e\xcc\x75\x3e\xd0\x4d\x1c\x31\x6d\xb7\x97\x94\xbc\x81\x21\x66\x13\xee\xca\x0f\x4d\x8b\x76\x0e\x41\xe3\xc7\x35\xf1\x55\x5a\xf5\x2a\x65\x2f\x84\x43\x12\xd5\x0a\x5f\xfa\x6d\x8d\xf4\x65\x8b\x58\x1a\xd2\xdf\xd0\xf8\xff\x21\xb1\x78\x9d\x97\xb0\x78\x1b\x06\x92\xf1\x9c\xd0\x1e\x36\x35\xd3\x62\x68\xdb\x88\x26\x7f\x16\xf3\xec\xba\x87\x24\x78\xeb\x06\x52\x2e\x05\x3d\x05\x2a\xdd\x68\x60\x08\x34\x53\xed\xd8\xa5\x02\x6f\x45\xe0\x4d\x4f\x32\x76\x33\x34\xb4\xdd\x74\xee\xed\xa6\x1d\x59\x71\x92\x8c\x25\x4b\x27\x95\x25\xf5\x28\x12\x9a\x40\x19\x67\x76\xb3\xbd\x44\x5f\x73\x04\xd0\x4d\xcc\x97\x64\x53\x19\x33\xd1\x70\xca\x4c\xab\xbd\x9c\x70\xc3\x7e\x31\x93\xed\xba\x6b\x14\x7c\xeb\xde\xf9\x52\x4d\xe4\x39\xdd\x54\x58\xac\xbf\x0c\x8f\xbe\x7f\xe9\x41\xdc\xbf\x34\x50\xf6\x18\xc7\x3c\x86\x49\xfc\x4f\x81\x07\xb8\x5e\x8f\xaf\x11\x65\x75\x4a\x73\x12\x8f\x2d\x10\xbb\xed\x78\x0e\x85\x0a\x71\xeb\x00\xab\xef\x90\xe0\x79\xbc\x38\x45\xf8\x3a\xa6\x04\x0b\x15\xa1\x88\x65\xe3\x5e\x46\x01\x3c\x7a\xb0\xf8\x01\xb0\x79\xe0\xbf\xf8\xf0\x41\xea\x37\xb9\x27\x52\xbf\x91\x75\xe6\xed\x87\x7a\x32\x4a\xbf\x22\xc1\x9d\x00\x9a\x38\x2f\xd6\xeb\xe3\xff\x34\x98\xc8\xe6\x39\x71\xcf\x40\xba\x3e\x9e\x32\xf0\x58\xc2\x07\xe9\x80\xe3\x90\x60\x0e\x63\x8c\xe8\x38\x42\x97\x9b\xc5\x18\x46\x70\xcd\x51\xb5\x44\x82\x18\x49\xae\x11\x3d\x35\x7f\xb0\xd3\x30\x81\x8c\xc5\x61\x6d\x2f\x4f\x56\xcc\x5a\xe3\xa5\x76\xf4\x16\x8e\x4a\x8e\x91\xa9\x8b\xe3\xf4\x7c\x76\x7f\x9f\xfd\x3a\x9b\x1d\x21\x9f\xa2\x45\xcc\x38\xa2\x6e\x5d\xdf\x93\x15\x8c\xb1\x63\xa1\x1d\x20\x2d\x3f\xb6\x35\x71\xc4\x98\xd9\x5a\xa6\x42\x72\xe0\x7a\x9d\xc4\x21\x14\x03\x53\xaf\xbd\xed\xb6\xfd\xa2\x3c\xb7\x74\x25\x2f\xa5\x36\x27\xa6\x96\xd6\x7b\x49\x72\x3a\xe3\x21\x82\x1c\xaa\x7f\x2a\xb7\xf0\x7f\x64\x50\xa7\x72\x71\x4e\x19\xe2\x9b\xf5\x77\x30\xe9\xaa\x55\x57\xcf\xad\x1f\x6a\xb6\xe3\x74\x83\x56\x51\xbe\xc7\x32\x76\xeb\xb3\x69\x8f\xc4\x3a\x8e\x29\xb9\xdb\xb6\x1b\xa2\xf3\x33\x96\x73\x1c\x5b\x07\x67\xbc\x48\xc8\x25\x2c\xe4\xaa\xeb\x43\xef\x2d\x13\x64\x27\xf2\x10\xcf\xdd\x93\x73\xe9\xeb\x61\x48\xb6\xfa\xee\x8b\x6c\x4c\x7f\x91\x43\xd2\x66\x90\xa3\xbc\x39\xf2\xc4\xd8\xd2\x6e\x62\x1c\x91\x1b\x0f\x07\xea\x8f\x23\x94\x30\x74\x5c\x03\xab\xe6\xe8\xe1\x40\xfd\x21\x61\xeb\xcc\x9c\x0c\x25\x73\x63\xc3\xc3\x81\xf8\xb5\xd5\xec\xac\x7d\xc8\x47\x34\x28\xd9\xfc\xe0\x05\x9c\xe4\x92\x4a\x2b\x7a\x3f\xbf\x75\xb3\xee\x56\x72\x63\x7c\xa0\x68\x1e\x7f\xf1\x00\x9e\xd2\xd9\xfd\xbd\x2b\xfe\x27\x40\x40\x90\x53\xb2\x46\xd8\xbd\x13\x42\xf0\x2b\x25\x03\x4f\x72\x86\xb4\x98\xf9\xbf\xb2\x8d\x50\xcd\x95\x43\xb4\x78\x02\x32\xff\x74\x10\xa1\x04\x71\x74\x2c\x3a\xdc\x6e\x3d\x6f\xbb\x8b\x51\x28\xdb\x46\x75\xbe\x3f\xd9\xa6\xad\xdf\x64\xf6\x1e\xee\xbb\x77\xe7\x09\x64\xcb\xf1\x0a\x31\x06\x17\x45\x85\xb5\x71\xc3\xda\xb2\x8e\xec\xe4\x74\xc3\xe3\xa4\xd0\xe1\x98\xac\xc5\x48\x4b\x3a\xed\x8e\x87\xda\x42\x57\x85\x1d\xcd\xb2\xf6\xb5\x9f\x18\x40\xb3\x8d\x77\x7f\x7f\xb7\x05\x30\xa0\xbe\x1c\xfb\x3b\x35\xf4\x57\xea\x1d\x03\x24\x80\xf7\xf7\xd3\x19\x60\x01\xd1\xec\x34\x26\xf8\xcf\x52\x8a\x8b\x11\x03\x49\xe0\x5a\x02\x95\xe7\x42\xef\x88\x8d\x46\x26\x48\xe1\x28\xa9\x68\xe3\xcf\x09\x7d\x0d\xc3\xa5\xe5\x25\xc5\xbd\xbb\x94\x59\x73\xe0\xd8\x03\x11\x2b\xa1\xed\x3f\x93\xc2\x6a\x09\x72\xbc\x55\xe6\x43\xbd\x4b\x8a\xcb\x69\x6d\x0d\xba\x6d\x37\x26\xe6\xb7\x06\xa1\xab\xba\x0d\x21\xde\xb1\xd3\xab\xeb\x8a\x87\x30\x4c\x2a\x9e\x4a\x07\xba\x8a\xe7\x6b\x92\xc4\xe1\x6d\xc5\x0b\x4a\xc4\xfa\x97\x1e\xc7\x98\x23\xac\x3c\x5c\x4b\xef\xb0\x12\x61\x4a\x7b\x0d\x50\x00\x01\x01\x0c\x24\x16\x59\x8d\x8d\x49\x38\x0e\x04\x31\x90\x72\xe3\x47\x29\x62\x51\x79\xba\xdc\x0c\xe9\x02\x0f\x1e\xd8\x04\x77\x57\xd7\x93\x74\xd3\x00\x18\x26\x19\xcb\x00\x72\x7e\x13\x9a\xfe\x56\xf3\x9a\xc0\xf4\x81\x98\xcf\x84\xa4\x3f\xd3\x79\x4c\x58\xfa\x4c\x8d\x7f\x92\x64\x7c\x28\x4e\xc9\x94\x18\x44\xe9\xa6\xd5\x76\x03\x94\x04\x4b\xe2\x01\xa8\xeb\x86\x13\x2e\x6d\xe8\x0a\x82\x15\x20\xc0\x66\x8a\x66\xf2\x89\xe7\x01\x47\xe2\x3a\x08\x02\x74\x7f\xef\xe8\x05\x11\xbf\x3c\x63\x33\xcf\x7f\x45\xf4\xcf\xfd\x30\x41\x90\x56\xfa\xf9\x61\x3f\xa4\x08\x72\xa4\xdc\xfd\x80\x0c\x97\x5e\xc5\xbc\x06\x56\xe8\x95\x31\xd3\xbe\x81\xe6\x2a\x48\x8a\x1a\x0f\x23\x10\x71\x35\x3d\xdd\x04\x77\xd6\x99\x88\xed\x33\xb1\xe9\x70\x26\xb2\x1f\x63\x71\x96\xe3\x71\x08\x93\xe4\x12\x86\x57\xbd\x28\xa7\x6c\x7a\x4a\x51\x14\x53\x14\xf2\xf1\x12\xe2\x28\xf9\x2a\x92\x4f\x71\xcc\x97\x68\x4e\xa8\x79\x5e\xad\x9b\x20\xef\xce\xa6\xa2\xa3\x91\x9b\x27\xab\x5e\xa6\x70\xf8\xb2\x9b\xd1\xa8\xf0\xc0\x8f\x62\x69\x89\xf9\xa8\xe7\xfb\x26\x43\xe8\xfd\xbd\x2b\x07\x8c\xe8\x47\x04\xa3\x18\x23\xc6\x5c\xcf\x52\x4f\x15\x66\x5c\x2d\x95\xf8\xea\xea\xd1\xb5\xd8\x34\xf2\x61\x74\x0d\x71\x88\xac\xf6\x5b\xcf\xcb\xab\x2c\x5d\xf8\x60\x69\x61\x19\x62\x65\xf5\x5e\x2d\xdc\x25\x21\x5c\x90\x89\xf5\x69\x0a\xa4\xdf\xa8\xd5\xde\x28\x0a\xf2\xd5\xd6\x33\x1d\x05\x9c\x0b\x9d\xee\x41\xab\xa9\xfb\x97\x3c\x6d\x81\xf8\x4b\x7b\x42\x9e\x2b\x09\x8b\xa0\x26\xf2\x83\x9f\x14\x81\x7c\x0f\x57\xc8\xbb\xcb\x2b\xfc\x08\x54\x42\xe9\xbb\xae\x94\xb4\x3a\xcf\xaa\xc0\x8e\x32\xbd\x35\xd5\x98\xaa\xe0\xa4\xd7\xc8\x43\x17\xba\x79\x81\x35\x48\xe5\xf2\xf6\xb5\xe0\x00\xfa\x58\xeb\x0f\x73\xeb\xbf\xeb\xb9\x95\x6b\x6c\xa6\x84\x3c\x97\xe6\x8f\xad\x90\x8a\x24\x90\xbd\xac\xb6\x4d\x41\xde\x03\x19\xdc\x58\x42\x8a\xfa\x9d\x3f\x82\x5d\xe4\x8d\xf8\xfa\x56\xd6\xde\x5a\xc5\x94\x92\xae\x99\x33\x04\x09\xa8\xe4\xde\xd2\x02\x8c\x11\xe6\x93\x42\xbf\x5e\xca\x53\x21\xe7\x34\xbe\xdc\x70\xf4\x53\x8c\xa3\x18\x2f\xd8\x64\x2a\x2d\x21\xce\xec\xc1\xdc\xa7\x22\xc4\x41\x9b\x87\xac\xb5\xe2\x7d\xed\x2a\x2b\x12\xa1\x64\x3c\xa7\x70\xa1\xdc\x08\x6a\xf4\xeb\x71\x09\xae\xe1\xe5\x29\xfa\xc2\x1f\xff\x82\x33\x7b\x60\x04\x53\xfd\xbd\xcf\x14\x62\xa6\x24\x4b\x4d\xad\x6a\xb4\x71\x8b\xc8\x6f\xb7\x1d\x70\x43\xe2\x28\x1c\xaf\x29\xb9\x8e\xa3\xa2\x85\x45\x1d\x5e\xf3\x8e\x9d\x12\xb8\xe1\xcb\xe7\x8f\x55\x52\x2f\xb7\xee\xb0\x6e\xdd\x1d\x39\xbe\x9b\x98\x2f\xc7\x1b\x9a\x38\xb6\xfa\x91\x5e\xfd\x4a\x4c\x61\x70\xb9\x89\x93\xe8\x17\x9a\x54\x99\x62\x84\x08\x77\x09\x19\xfa\x85\x26\x5b\x20\x76\x71\x85\x4c\x28\x81\x84\xb0\xa6\x36\xb3\x07\xb0\x7a\x64\xfa\x75\xbd\x9c\x2f\x9e\x84\x5c\x93\xf5\x66\xed\x78\xbe\x3c\x18\x18\x4c\x75\xa1\x65\x41\xe2\x24\x92\x90\xe7\xf3\x25\xc2\x55\x32\xdc\x9d\xc0\x26\xa1\xf1\x3f\xe5\xc1\xfb\x24\x8b\x37\x23\x55\x65\x19\xe4\x5e\xbd\x24\x11\x9a\x44\x48\xf4\xf8\xcb\xc7\x37\x2f\xcd\xf9\x94\x11\xdb\x11\xf2\x80\x59\xa0\x09\x97\xfa\x34\x08\x13\xc2\x2a\x8c\xa4\x85\x41\xfb\x14\xad\x08\x47\x8e\x27\xe8\x95\x34\x6b\x98\x16\x96\x87\x90\x2f\xfb\x4a\xfd\xb3\xd4\x4f\x57\xde\x88\xa7\xc4\x04\x1a\x62\x62\xcc\xac\x8a\xb9\xa6\xa3\x4a\xc3\xa8\xb1\x07\xa8\x52\xbb\x48\xee\x38\xc3\xbe\x16\x6e\x86\x20\x0d\x97\x75\x92\xa3\x7a\x7b\x3a\x8f\x13\xae\xf8\x56\x95\xe2\x53\x00\x2a\x6b\x59\x05\x80\x0a\x75\xab\x00\x51\xd2\xbb\x0a\xef\x0b\x3a\x5f\xe1\x6d\x51\xf9\x2b\xbc\xc6\xb2\x06\x64\xf3\xfb\x53\xcd\x47\x9a\xe0\x34\x48\x6b\x7f\x1d\xba\xc2\xc6\xee\x9d\x41\x28\x43\x46\x0e\x4e\xc8\xaf\x4d\x8a\x25\x88\xc1\x06\x84\x20\x02\xf3\x87\x52\x90\x75\x35\x05\x59\x09\x91\x6c\x9e\x71\x62\x6b\xe3\xae\xcd\xd1\x9f\xb7\x69\xb2\x7a\xc3\x79\x60\x2d\x36\xae\x51\x40\xf3\x2c\x7e\xe5\x69\x5d\x36\x6f\xd6\x58\x79\x52\xe1\x75\xcf\x00\xcb\x3d\xd4\x7a\xae\x7b\x06\x68\xee\xb9\x54\x77\xdd\x33\x00\x73\x4f\xaf\xae\xc5\x33\x92\x7b\x26\xd6\x50\x3c\x4d\x72\x4f\xf5\x90\xdf\x68\x77\x34\x01\xb0\x29\x35\x33\xf3\x72\xcf\x40\x5c\xd5\x5a\xbc\x08\xf3\xad\x94\x8a\xed\x9e\x81\xc8\x7e\xbe\x3d\x9a\xa7\x52\x81\x42\x92\x34\x89\x57\x28\xac\xeb\x29\x9a\x09\xe5\x54\xe0\x7b\x99\x3b\xfe\x6b\xfb\xf8\x2f\xbb\x1c\x7f\x52\xcc\xf7\x67\x6d\x52\x42\xf9\xa9\x10\x61\xa0\xf4\xa1\xab\xd9\xc9\x35\x40\x63\xe3\xc4\xd7\x0c\x5d\x3c\xc9\xc5\xf7\xe1\x12\x09\x1d\xb1\x09\xa4\x86\x28\x15\xc1\x2a\xc8\x52\x11\xa4\x4c\x76\x8a\x10\x55\xa4\xab\x08\x53\x71\x98\xcb\x30\x15\x6c\xbf\x7c\x94\x2d\x29\x33\x32\xe7\x2b\x6a\x3d\x5f\x62\x45\x3d\x30\x0f\xee\xac\x0d\x68\x9d\xad\xca\x6d\x8d\xed\xf7\xea\x80\x50\xfb\x91\x5c\x86\xc2\x51\xf2\x40\xee\xf8\x12\xfb\x4d\x7a\x7a\x99\xfd\xd4\x9c\xc7\xc4\x7e\x98\x1d\xde\xd8\x7e\x9c\x1d\x92\x4d\xee\xb1\x3e\xa8\xd6\x89\xf2\xb6\x47\x51\x7a\x70\x32\x24\x57\x1d\x9c\xb9\x3e\x38\x0f\xa3\x8e\x51\x35\x75\x9c\xe7\x4e\x62\x64\x9f\xc4\x79\xdd\x49\x54\x2b\x30\xee\x79\x77\x65\xeb\x8f\x8c\x13\x8a\xc6\xe6\x64\x3e\xf5\x8d\x72\x8d\x9c\xcc\xab\x6e\xad\x6a\x95\x89\xfa\x49\x2f\x29\x9a\xd7\x04\xd1\xea\x57\xa7\x06\xe4\xeb\xcc\x34\x1d\x50\x8d\x76\x5b\x73\xd3\xf4\x67\xc8\xf8\x4f\x84\x70\x63\xbb\x4c\x9b\x18\x0f\x8a\xc0\x79\xe1\x04\x41\x80\x7d\x0e\xe9\x02\x71\x9f\xc3\xc5\x7b\xb8\x42\x17\xe6\x41\xf1\x23\x5a\x5a\x64\xbc\x20\x3e\x32\xee\x3a\xd0\x51\xae\xc9\x28\x40\xfe\x1a\x52\x84\xf9\xeb\x04\x09\x35\xe7\x47\x34\x1a\x39\x2f\x9c\x93\x20\x40\xe6\x03\x3f\x7a\x25\xa8\xa3\x2c\x60\xc0\x7c\xdd\x3b\xa2\xa3\x11\x46\x37\xd9\xad\xab\x8b\xa4\xe9\xc0\x5f\xc1\xdb\x4b\xf4\x57\x65\x10\x13\xe7\x8e\x84\x52\x97\xf7\x2f\x49\x74\xeb\xc3\x28\x7a\x7d\x8d\x30\x7f\x2b\x64\x57\x2c\x9d\x04\x92\x58\x50\x6f\xec\xb5\xdf\x75\xe9\x51\xe4\x7b\x14\x62\xf5\x35\xaa\xed\xb4\xf5\x7e\x4c\x9c\xf5\x6e\x8e\x03\x95\x7b\x52\x7c\x77\xcc\xc8\x86\x16\x6b\x27\x65\x2d\x11\xbe\x6e\xbc\x36\x35\x46\x29\x84\xaf\x3d\xd7\x79\xf9\xf3\xfb\x4f\xbf\xbc\xfd\xf5\x97\x37\xbf\xbe\x7a\xf3\xe9\xc5\x4f\x6f\x5f\xff\xfa\xf1\xf5\x8b\xb7\x9f\xdf\xbc\x7b\x2d\x54\x87\xe9\xcc\x48\xf7\x53\x27\x65\x34\x92\x27\xcd\xea\xb2\x47\xa5\x34\xde\xa1\x68\x4d\x58\xcc\x09\xbd\x3d\x4d\x95\x04\x04\x9c\xd3\xd4\x04\xe1\x78\x40\xe9\x78\x39\x58\xb1\x61\x2d\x18\xc3\x1b\xd8\xe4\x2e\x24\x92\xba\xd7\xf4\xec\x49\x7d\x38\x4d\xd8\x34\xcd\x06\xa2\xf4\xea\xac\x1f\x49\xf4\xed\x4e\xc4\x03\xfb\x93\x9a\x01\xd8\x20\xea\x91\x05\xb4\xdd\xce\xbc\xea\x1b\xab\x34\xfa\xdf\xa8\xb0\xa3\x91\xad\x3f\xa5\xc3\x32\x23\x4d\xfd\x98\xd5\x9e\x6c\x60\xa4\x56\x13\xd5\xb3\xe7\xa5\x5a\xb2\xd8\x46\x9a\xe0\x5c\xa1\x5b\x96\xf5\xca\xaa\x86\x99\x9e\xfa\x0c\x6c\x8a\x67\x47\xd6\xd0\xa5\x19\xeb\xa2\x60\xd6\xb2\x47\x20\x1f\x78\x00\x83\xf2\xf0\xa8\xe7\x4d\xb2\x96\x4d\x13\xae\x69\xbd\x55\xff\xf7\x54\x57\xc7\xbd\x6f\x86\xab\xce\xe2\x12\xc1\x68\x7c\x49\xc9\x0d\x43\x4d\x56\xb9\x27\x30\x1a\xe5\xbf\xdc\xd7\x38\x54\x35\x17\x23\x20\x56\x53\x14\xe5\xd9\x5e\x22\x32\xf2\x3e\xb6\xc6\xa0\x9b\x37\x1f\xf4\x8b\x13\x23\xe2\x2c\x17\x42\xc5\x8a\x7c\xed\x24\x1f\x28\x36\x1a\x35\x86\x89\x55\x85\x1e\xd5\x04\xa3\x75\x8c\xa9\x22\x59\x4c\x15\xde\x3d\xa6\x0a\x97\x63\xaa\x70\x5b\x4c\x15\xce\x62\xaa\x70\xc7\x98\x2a\xdc\x3f\xa6\x0a\x7b\xf9\x99\x16\xb0\xd5\x3d\xa2\x8a\xad\x29\x82\xd1\xb7\x0b\xa6\x22\x7b\x18\x71\xdc\x7e\x1d\xcb\x82\x02\xfb\x4e\x87\x26\x4d\x88\xba\xce\x9a\xeb\xa8\x73\xeb\x3b\x1e\xa0\x41\x31\x11\x24\x80\xd6\x1c\xe8\x9f\x9e\x5f\xd0\xf1\xf3\xc9\x99\x07\x48\xf0\xfc\x47\xf2\x47\xfa\x23\x79\xf6\xcc\x83\x53\x32\x7e\x3e\xb3\x2e\x40\x48\x3a\x33\x3c\x1a\xf1\xdc\xb7\xa2\xd0\xf1\x2e\xa6\xe9\x27\x53\x62\xee\xa5\x32\x02\xf4\x26\x53\x6e\xfd\xda\x82\x24\x28\xde\xf4\xf1\x54\xea\x12\x5b\x24\x81\x5c\x5e\x59\x4d\xb0\xaf\x2b\x66\xba\xce\x29\x25\x84\x8f\xd5\x5d\xb9\x23\xc4\x05\xf5\x97\x67\x41\x64\x2f\x51\x14\xf3\xdc\xab\x39\x49\xa4\xa1\xdb\x39\x95\xd5\xba\x1d\x6f\xab\xb8\xaa\xe1\xbe\x8a\x8d\xa9\x49\x9c\xda\xb6\xcb\x34\x42\xb2\xf6\xe2\x04\x73\x4a\x92\x24\x6f\xf2\x94\x72\x69\xd1\x09\x55\x83\x55\x7c\x84\x7a\x56\xf2\x20\xe9\x6a\xa1\x7c\x08\x3e\x8a\x51\x19\xcc\x4c\x0b\xa9\x6c\x1c\x3d\x3b\x59\x93\x6f\xe6\x53\x14\x6d\x42\xe4\x16\x04\x3c\x23\x32\x4f\xf9\x2c\x97\x16\xc9\xec\x1c\x5e\xde\x1f\xd8\xde\xe3\x7f\x3a\xbf\xe0\xe3\x73\xb1\x3f\x68\x70\xfe\x23\xfd\x23\xff\x91\x3e\x7b\xe6\xe1\x29\x1d\x9f\xdb\xfb\x83\xe6\x03\xd6\x2b\x24\x5d\x97\xe5\x33\x65\x4e\x25\xa0\x44\xbb\xbc\x9c\x44\x33\x0b\x7b\x9e\xb7\x05\x68\xeb\x01\x29\xbd\x54\xa2\x42\x5e\xcb\xc8\x48\x24\x47\x68\xd1\x2b\x26\xfe\xee\x8b\x04\xeb\x02\x20\x1d\x48\xf5\x39\x92\xc4\x53\x73\xc3\x20\x08\xd0\x68\x74\xc2\x47\x23\xf3\x44\x08\x46\xb9\x4e\x34\x91\xbc\xd3\xa6\x01\xe7\x7f\x9c\xad\x45\x46\x4a\x18\xb7\xa9\x0a\xfe\xd3\xf9\x05\x56\x18\x27\xc1\xf9\x8f\xe4\x8f\x58\x9e\x48\x3a\x25\x79\x8c\x93\x47\xc4\x38\xcd\x63\x5c\xbb\xac\xb7\x08\x9d\x9a\xfb\x67\x92\xa6\xbd\x3b\x27\x7b\xb8\xd7\x94\x7f\x34\x57\x1b\x09\x57\xee\x39\xeb\x44\x0d\x74\x06\x2a\xe0\x6e\x98\x83\xdf\xca\x63\x56\xa5\x13\x19\x49\x93\xe8\x6b\xf8\x9c\x8e\xfa\xfe\xd3\x87\x17\x2f\x5f\x7f\xfa\xf5\xf5\x7b\xa1\xa7\xbe\x72\x3c\xef\x6e\x2a\xb8\x92\x50\x21\x38\x8f\xf1\x42\x48\xad\x51\xe8\xa7\x36\x40\xe6\x4b\xf6\x50\x7c\xa8\xb9\xc7\xac\xc5\xdf\xb0\xa4\xf1\x78\x40\xd3\x01\xf6\x11\xad\x89\x75\xb3\x6f\xa9\x89\x9a\xe6\x23\x2c\xa4\x98\xc8\x29\xf9\x05\x4c\xca\xec\x73\x87\x5e\x05\xb5\x2c\x76\x6c\x79\xc0\x3a\x3b\x74\x79\xa4\x7c\xfe\x4e\xff\xcb\x3f\x5d\x1c\xd9\x7a\x64\xde\xee\xaa\xd5\x3e\xe6\x79\xbe\xba\x01\xaa\x74\x5f\x43\x25\xc1\x61\xdb\x90\x6e\x1a\x65\xec\xdb\xff\x55\x7b\xc6\xfa\x6b\xc8\x97\x0e\x70\x2c\xde\x1e\x03\xe7\x54\x75\x54\xad\x75\x0b\x92\x0b\x6a\xd9\x77\x69\x31\x95\xcf\x8e\x77\x87\x83\x2c\x41\x34\xcf\xc4\x06\xed\x50\xd2\xad\x37\x21\x07\xa4\xaa\x33\x1c\x8d\x12\x17\x01\x08\xb0\xb7\x95\x7e\xe2\xbc\xfa\x0b\xbd\xc6\x2a\x7a\xa4\x42\x0e\x97\x2b\x9f\x10\x72\xb5\x59\x67\xc7\x26\x22\x2b\x81\x28\x42\xb8\xeb\x29\x97\xef\xb7\x31\xe3\x3e\x8c\x22\xd7\x59\x42\x36\xd6\xbb\x41\x88\xc6\xa5\x53\xf5\xe2\xe5\x5b\xeb\x48\x09\x61\xa6\x6f\xef\x30\x4c\x98\xce\x28\xb9\x8b\x1b\x61\x95\x3e\xca\x50\xa2\x9c\x83\x7b\x19\xb9\x1e\xd9\xde\x6a\x0d\xa2\xde\xd6\x7a\xd2\x68\x4b\x7b\xf1\xfe\xe5\x5f\x7f\xfe\xf8\xeb\xa7\xd7\x6f\x5f\xbf\xfc\xfc\xe6\xe7\xf7\x4e\xea\x3b\x5a\x83\x66\x40\x83\xf2\x09\x51\x96\xd9\xd4\x62\x7a\x21\xc4\x65\xcb\xd6\x0a\x90\xcc\xc4\x5e\x16\x78\xa8\x8b\x52\xf3\x69\x3c\x77\x95\x82\x9b\xee\x53\xe4\x5f\x6e\x38\x27\x78\x34\x7a\x1e\x64\xbf\xd2\x7c\x10\x7e\x04\x39\x64\x88\xfb\x4b\x8a\xe6\x76\x62\x4b\x57\x69\x06\x88\xbf\x30\x7e\x42\xae\x23\x60\x1c\x80\x53\xb7\x6b\xee\x2f\xca\xef\xbd\x23\x28\x34\xae\x5c\xc7\x01\x04\x5c\xdb\x54\x4b\xe0\xde\x76\x0b\x48\xa7\x69\x55\x0e\xf9\xa4\xe0\x22\x51\x66\x8b\x7f\x3a\x1b\x8d\xb2\x63\x6b\x79\xc1\x5f\xd8\x3f\x26\xca\xcd\x12\x60\x35\xab\x4f\x66\x57\xb8\x62\xb1\x4e\xce\x65\x7e\x19\x1a\x38\x31\x7b\x49\x92\x04\xae\x19\x8a\x9c\x58\xaa\x4f\x27\xd8\xb7\x1e\x8e\x46\x38\xb5\x0b\xb8\x9e\x19\xc1\xb9\xce\x1b\x83\xbc\xbb\x6d\xaa\x52\xba\xde\x68\xd4\x80\xe4\x6d\xbb\x95\x7b\x45\x36\x0c\x45\xe4\x06\x3b\x00\x7a\xa0\x13\xf4\x66\x2d\xd9\xee\x23\x5a\xc5\x9b\x06\x51\xdf\x40\x8f\xe3\x89\x0d\xe9\x2a\xba\x4a\xf1\xb2\x66\x57\x47\x01\x23\x8b\x75\xd7\x38\x3b\x9a\xa7\xab\x35\xe4\xa7\x0b\xc4\x4d\x1e\x08\xeb\xb2\xb9\x0e\x24\x89\x2f\x33\xaf\x67\xf5\x28\x62\xc9\xb8\xe4\x79\x66\x2e\x62\x1f\x8b\xc2\x91\xa2\x9f\xac\x8d\x8b\x7a\x52\x57\xe7\xfc\x5a\xe9\xf7\xaa\xbe\x93\x17\x1e\x90\x77\x44\x7c\xc1\xe0\xc4\xd6\xfa\x9c\x6a\x11\x4e\x36\xd7\x34\xaa\x4b\xba\xda\x5a\x37\xbb\xc4\xf3\xe1\x86\x2f\x85\x08\x17\x42\x8e\x22\x29\x5d\xb2\xa3\x93\x62\x6a\x9a\xd1\xa8\xe4\x70\xeb\x01\xe2\x93\xf9\xbc\xfc\x55\x2c\x6d\xcc\xdb\x4e\xee\x49\x55\x7b\xe8\x06\x26\x57\xa9\x1f\x54\xe5\x2e\x4a\xe2\x4b\x2b\xd2\x56\xfa\xcf\x7c\x63\x9f\xe8\xe2\x98\x6b\x56\xbb\xc5\xdb\xd9\x68\x1a\xf0\x38\xc6\xc7\xd4\x4f\xfb\xf3\xac\xbf\xfd\x25\x64\x3f\xdf\xe0\x74\xe0\xd0\xac\x8d\xe2\x7b\x9e\xca\xd9\x9d\x77\x25\x7b\x06\x3b\x79\xa8\xaf\xe2\x2f\x31\x96\x4e\x55\x32\x6b\x81\xce\xcf\x5e\x1b\xa5\xa5\xc1\x25\xe8\x65\x42\xc2\xab\x18\x2f\xd2\x36\x2d\x37\x65\xfd\x2c\xd7\x74\x00\x96\x6b\xfa\x9b\xb1\x5c\xd3\x61\x5b\xae\xe9\x1e\x5a\xae\x1b\x52\x74\xbd\x13\xa7\xcc\x84\x38\x65\xe1\x60\x77\x46\x37\xaf\xc9\xdc\x94\xaa\xee\x1e\xd0\x47\x72\x72\xb7\x61\xf5\xf9\x9b\x0c\x7c\x1a\x20\x75\xa7\x1c\x7b\xee\xde\x9b\x58\xfd\x49\x16\xc7\x9d\x65\xbc\x9f\x08\x2c\x82\x4f\x28\xa4\x88\xbf\x79\x35\xc9\x25\x7b\x97\xf9\xf0\xb7\xde\x16\x24\x64\x41\x36\x95\xa1\xde\xb9\x2f\xab\x08\x57\xd7\x51\xee\x5b\xca\x23\x17\x97\xe9\xa7\x25\x6f\x02\x2a\xed\x86\x39\x7b\xca\x1c\xa1\xe8\x12\x86\x57\x3e\xfa\x82\x42\x21\xdf\xb9\xe5\xef\x52\xa1\xfc\x12\x5f\xf6\xef\x96\x7d\x8d\x2d\x38\xe9\x34\xfe\x4a\x0e\x4c\x8b\x4b\x14\x08\xb5\x58\xdd\xa4\x02\x47\x76\xe1\xc8\x2b\xf2\xf6\xf0\x03\x4d\x30\xe5\x5a\x0a\x5a\xa9\x23\x1a\xbe\x52\xe2\xaf\xdc\x46\xba\x53\xa1\x58\xef\x48\x84\x92\x7e\x71\xc8\xca\x08\x2a\xd0\x17\xab\xb3\x2d\xba\xf3\xb6\x20\x42\x62\x9f\x5d\x43\x8e\x7a\xf5\x77\xa4\xbc\xac\x0b\x81\x85\x99\xb5\x1f\x38\x31\x47\x2b\xa9\x81\x38\xde\x51\x6e\x7f\xc5\xec\x3d\xba\x51\xaa\xb5\xce\x2a\xf4\x11\x85\x84\x46\x6e\xb7\xd4\x63\x7a\x35\xb4\xc1\xe6\xf1\x19\xde\x63\x69\xcd\xcd\x64\x60\xdb\xa1\xaa\x84\x1e\xb7\x76\xb5\x80\x6c\xbc\x82\xf8\xb6\x6e\x92\xca\x1b\x79\x15\xe3\x78\x15\xff\x53\x6d\x90\x66\x66\x0e\x52\x45\xd1\x36\x6f\x29\xae\xa3\x9f\x2c\x10\xb7\x44\x16\x45\xa9\x99\x91\x86\x9a\x60\x44\x37\x5c\x66\x8c\xa1\x65\xbb\x18\x2f\x16\x56\xcb\x77\xf1\x0a\xb1\x90\xc6\x6b\x4e\x14\xc1\xf7\xb3\xdc\x13\x5b\xcf\xf3\x80\x4a\x40\xaa\x37\x25\x06\xd4\xcb\xf2\x82\xe6\x59\x85\x90\x19\x0d\x81\x11\x42\x04\xba\xa8\x5b\x59\x6e\x96\x13\x83\x7c\xa2\x8b\x54\x26\xd5\xbf\x6f\x68\xcc\xf5\xdf\x5b\x6f\x22\xaf\x55\x30\x40\x8f\xc6\x38\xca\x6e\x03\x3a\x23\x2a\xba\xbf\x9f\xce\x2a\x0c\x86\x3a\xc8\xcb\xdc\x1c\x4e\x38\x90\x97\x87\x82\xad\x6d\x4b\xb5\x37\xd0\x94\xce\x46\x23\x17\xca\xcc\x06\x53\x3a\xf3\x00\x94\xf1\x13\xa4\xc2\xc2\x52\xfb\xc5\x0a\xf9\x2f\x33\xb3\x9f\xff\xc8\xff\x58\xb4\x29\xfc\xc8\x9f\x3d\x33\x03\x55\x45\x47\x32\x5b\x02\xb7\x0d\x0b\x7c\x36\xb9\xdb\x1e\xf1\x7f\x79\x7e\x81\xf5\xf6\x73\xa1\x07\x4e\xce\x6a\xcc\x9b\x6a\x89\xe1\x94\xcf\x64\xb1\x90\x96\x9d\xc4\x2a\xd7\x3e\x46\xcc\x45\xa0\xad\xa9\x0b\x3d\x6f\x62\x8d\xa9\x66\x40\xf5\x9b\xab\x6d\x97\x43\xa0\xf9\x52\xe6\xe6\x97\x2d\xa9\xe3\x6c\x81\x8a\x79\x06\xac\xb8\x41\xa0\x65\x32\x6e\xb0\x3e\xe7\x88\xaf\xe9\xd8\xf1\x82\x40\x52\xd8\xea\x5d\xc5\x03\xea\xde\x6d\x01\x06\xb9\xc6\xef\x65\xa0\x50\xb9\x0a\x8c\x0d\x24\xf5\x1a\x3e\x85\xb3\xc2\x53\x0f\x70\x39\x8b\xa4\x62\xbb\x35\x8e\xdf\x29\xd4\xee\xb1\xe7\x20\x7b\x8c\x2b\x19\x25\x45\x6c\x4d\x70\xf4\x67\x42\xff\xf7\x06\x51\xcd\x62\x26\x95\xf7\xa3\x16\xb3\xab\x24\x53\xa8\x58\xc1\x31\x8d\x4a\xff\x20\x48\x73\x8c\x58\x40\xdc\xec\x47\x56\x38\xd1\xc5\xbe\x36\x02\xbc\x89\x84\xaa\x2e\x76\x5c\x7a\xfb\x30\x8e\xd5\xb3\x5b\x07\x38\x96\xa9\xc0\x01\xce\x2b\xc8\x61\x88\x30\x17\x1a\xa9\x97\xeb\xed\x3d\x89\x72\x5d\x61\x12\xe5\xfa\x11\xef\x4b\x9d\x38\x02\xf7\x72\xe0\x4a\xf8\xe1\xf2\xc2\x2f\x87\x9d\xc7\xc5\x8b\xfc\x58\xc3\xf5\x86\x85\x35\x54\x85\x35\xf4\xa8\x58\x43\xbb\x63\x4d\x72\x9c\x0c\x69\x0c\xd1\x92\x6d\x00\x64\x9e\x83\xad\x22\x53\x2a\x9d\x96\xa6\x17\x30\x97\xa6\x98\xe8\x3b\x57\x40\x0b\x33\x2c\xf4\xd6\x71\xba\x20\x6b\x13\xe4\x8d\x46\x89\xd5\x9d\xe7\x01\x9a\x17\xd3\xe2\xea\xec\x8b\x79\xe1\xe5\x37\x20\xa6\x49\xa7\xd9\xc7\x10\xd2\x9e\x70\x66\x5f\x87\x2a\x7e\x24\x09\xb2\x2a\x8b\xeb\x07\x26\xe3\xbb\xf9\x7d\x31\x9d\x4d\xf4\x9f\xfb\x45\x9e\x0a\xc3\x47\x85\xe1\xa3\x6c\xf8\xfa\xcf\x27\xa3\x13\x6a\x24\x85\x1c\x89\xea\x69\xe9\x18\x76\xd8\x9c\xbf\x81\x43\xc8\x12\x52\x0c\x78\x97\xb3\x18\xcb\x17\x79\xa8\x01\x65\xce\xd3\xe3\x56\xe5\x05\x0f\x36\xde\x83\x8d\xf7\x60\xe3\xfd\xce\x6d\xbc\x99\x8b\x66\xce\x4a\x2a\x0d\x78\xf3\x18\x47\x3f\xdd\x7e\x4a\x36\x0b\x37\xa7\x17\xd9\x05\x4d\x95\xbd\xcf\x78\x8b\x2a\xa7\x23\x3f\x0a\x7d\xe9\x01\x59\x78\xa7\xbd\x39\x3d\x5f\x3b\x63\xb1\xcd\x25\xe3\xd4\x3d\xf7\xea\xb3\x39\x1c\xf3\x7a\xcb\xb3\x65\x65\xae\x1f\x5e\xb5\xe9\xd9\x3c\x75\x3c\x90\xd9\xaf\x4b\x2a\xa8\x1e\xae\xa2\x96\x8f\x6e\xa6\xb6\x5d\xc7\x01\xdc\xcd\x50\x0d\x9b\x0d\xd5\x16\x1a\x03\x04\x60\x85\xb5\x1a\x02\xac\xe3\x7e\x6a\x8d\xdc\xfc\x01\xa6\xec\x6a\xbe\xd0\x35\x95\x4e\x3f\x06\x81\x07\xc0\x20\x7e\x83\x25\x81\x86\xc9\x20\x06\x56\x30\x2f\xaf\x7c\xfd\x6a\x48\x47\x0d\x5f\x30\xaf\x1d\x4f\xfa\x21\xec\x72\x1f\xa3\xe0\x4c\x47\x40\x73\x90\x7c\x72\x47\x90\x7d\x08\xdc\x69\x22\x96\x7d\x4b\x7b\xd6\xa4\xda\x90\xa1\x72\x2a\xf5\x01\xb7\xae\x78\xd4\x25\xa1\xa4\x5d\x2f\xe5\x0c\x6b\x2f\x29\x25\xcc\x2f\xeb\x08\xa6\xf4\xad\xe8\xbc\x04\x2c\x90\x9a\x5c\x3e\x56\xa4\xc2\x3a\x89\xb9\xeb\xf8\x59\x3d\x6a\xe4\xaf\xc9\xda\xd5\x4c\xcf\xf6\xc7\x77\x91\xff\xdf\x24\xc6\x12\xd8\x7c\x45\x11\xda\x3e\x5f\x61\x37\xb1\x74\x4a\x53\x5f\xf1\xee\x64\x39\x21\xe5\xb6\x3a\xc9\x73\xe7\x39\x45\x6c\xe9\x4a\x7b\x88\xd8\x13\xb9\xb7\xf5\xe3\xda\x02\x24\x4e\x5c\x3d\x16\x91\x86\x28\x22\xa8\x0c\x51\x9c\x5c\x0e\x22\x95\x36\x42\x71\x5e\x6b\x33\x47\x75\x58\xae\xb0\x3c\xd4\x42\x8c\xc7\x03\xef\x78\xb3\x7c\x9f\x6d\xb7\xbc\x0a\x6b\xe9\x2d\xaf\x94\x86\x0d\x6b\xd4\x71\x51\xd5\x61\x31\xd4\xb7\xb0\xae\xc8\xa2\x8c\x24\x28\xe3\xf8\x5b\x4d\x2d\xb7\x06\xf9\xa9\xa9\x51\xb6\x4c\x4d\xb5\xcf\xa6\x16\x95\x37\xc7\xe3\x4e\x4d\xb9\x31\xf6\xbf\x9a\xb7\x67\xa6\x06\xd9\x32\x33\xd5\x3e\x9d\x59\xa7\xaa\xa0\x52\xe0\xd5\xb9\xa7\x6a\xb2\x76\x48\x90\xfc\x23\xc8\x79\x65\xca\x55\x49\xe6\x73\x69\xc1\x06\x72\xe5\x88\xfc\x4f\x6f\x7f\xf9\xcb\xaf\x7f\x7b\xfd\x7f\x02\xe4\x7f\xf8\xf8\xe6\xdd\x8b\x8f\xff\x47\xfe\x4a\xc3\xab\xed\x87\xce\x26\x8e\x9c\x23\xab\x8d\xf3\xe6\x95\xa3\xbd\x26\x4b\xa9\xe9\x5c\xe8\xd2\xe0\x6e\x0b\x64\x23\x90\x4f\x5a\x63\x84\x2f\xcf\x03\xd0\xa5\xd2\xcb\xa4\x05\x42\xd9\xa8\xab\x61\xc0\x9d\x7e\xf4\x9f\x72\x8a\x8e\xb3\x35\xad\x84\xfc\xd2\xd6\xf3\xc7\x4d\x82\x58\x1b\x90\xa2\x0b\x6f\x24\x95\x2f\x82\xe2\x8d\xd8\x20\x29\xe8\x3b\x12\xc5\xf3\xdb\x4e\xa0\x96\xc5\xbd\xfe\xfb\xd4\xf3\xda\x9d\x30\xf5\x76\x0e\x09\xa1\x51\x8c\x6b\xca\xa2\x1f\x76\x75\xc7\x5d\xfd\x9e\x44\xe8\x51\xf6\xb5\xec\xa8\x6d\x6b\x89\x35\x2b\x02\x99\x97\x9f\xd0\x42\xe5\x7f\x6e\xee\xa3\xd3\x46\x52\x1d\xde\xe2\xf0\x73\x5c\x71\x96\xb2\xad\xd9\x67\xc3\x45\x61\xef\x8d\x96\x7b\x42\x51\x22\x1d\x67\xd9\x32\x5e\x57\x64\xfc\x07\x54\xbb\x0b\x1c\xe5\x63\xd6\x87\xb7\x0b\xff\xfc\xf3\xc7\xd7\x6f\xfe\xf2\xbe\xef\x9e\xb4\x9b\xd9\xab\x9c\xdf\xae\x82\x36\xea\xd0\xf8\xf2\x76\x25\x2e\xec\xb0\x5d\x89\x0b\x9b\x89\xac\x81\xd1\x77\x8f\x8a\x62\x52\x7f\x09\xd9\x3b\x88\x6f\xbd\x34\x54\x27\xeb\x8c\x44\x15\x50\x32\x93\x9a\x01\x79\x87\xd8\xf2\xb5\x0e\xb2\x2b\x7e\xf6\x92\x90\x04\x41\x5c\x24\xee\x02\xc7\x1e\x80\xb9\x2d\xca\x9a\xb7\x68\xcc\x42\x72\x8d\xe8\xed\x38\x5c\xca\xca\x45\x07\xc2\xb8\x33\x61\xb4\x2f\x9e\x1f\x83\x3e\xe6\x2e\xb2\x1f\x8b\xc4\xbd\x54\xcb\x5c\x4d\x50\x57\x88\xc3\x8a\x77\x7d\x68\x5e\x1a\x2d\x3b\x5e\x23\xba\x8a\x65\x78\xc7\x78\xc9\xf9\x7a\xbc\x44\xb0\x94\x48\xb8\x89\xfc\x95\xf2\x2a\x9b\xbf\x9a\x4a\xb9\xd9\x94\xb0\xaf\xf9\x8d\x0d\xc0\xfc\xc6\x7e\x33\xf7\x33\x6c\xd8\xe6\x37\xb6\xc7\xe6\x37\xe4\xb3\x70\x89\x56\xd0\xb6\xc3\x25\x81\xf4\x83\x9f\xdc\x51\xf4\x8f\x4d\x4c\x51\x24\x1a\x81\xbf\xca\x33\x2b\x30\x3d\xb9\x83\x49\x42\x6e\x50\x24\x39\x0d\x9b\x4c\x9d\xd7\x5f\x60\xc8\x1d\xe0\xa8\x7a\x50\x0e\x70\x3e\x6d\xe6\xea\x8f\x8f\x68\x21\xc4\x7b\xf1\x86\xc9\xf3\x2a\x43\x73\xf4\x37\x13\x1d\x2f\x8e\x8b\xa4\x51\x7d\x3f\x7f\x85\x9f\x52\x2f\x20\xbf\x56\xfb\x56\x8d\xa1\xf6\xb5\x1a\x59\xed\x6b\x39\xde\xa6\xbe\xc5\x2c\x4a\x99\x47\x15\xcb\x75\x8d\x01\x53\x97\x8f\x8e\x3c\x9f\xd0\x54\x5b\x27\x6e\xe2\x67\x38\xf4\x73\x28\xf4\x3c\x1b\xbd\xae\xbe\x29\xf3\xd2\x8e\xd2\xfb\x8d\xc6\x4e\xd2\xa4\x75\x95\x46\x3a\xb3\x5d\xea\x3b\x90\x57\x64\x95\x4e\x21\x96\x3b\x2c\x9f\x6d\x3d\x6f\x3b\xf3\xbc\x92\x3b\xd3\x0e\x8c\xe0\x31\x38\x40\x23\x54\x5a\x85\xa0\x49\x66\x06\xe4\xc8\x3e\xab\x7d\x79\x45\x32\x00\x5e\x91\xfc\x66\x78\x45\x32\x6c\x5e\x91\x0c\x8c\x57\xc4\xc1\xdd\x07\xc8\x97\xd5\x6c\x41\xbc\x49\x59\x82\xf8\x91\xf2\x09\xc8\x97\x8a\x33\xcc\xb6\xe0\x9d\x44\x04\x2b\x37\xff\xcb\xeb\xcf\x0e\x70\xfe\xfa\xfa\xc5\x2b\xd1\xe4\xe7\x4f\xe2\xd7\x87\x5f\xc4\xbf\xaf\x5e\xbf\x7d\xfd\xf9\xb5\x03\x9c\x97\x3f\xbf\x7f\xff\xfa\xa5\x78\xf4\xf3\x87\xcf\x6f\x7e\x7e\xff\xc9\x01\xce\xe7\x8f\x2f\x5e\x8a\x77\x1f\x5e\x7c\x7e\xf9\xd7\x3c\xc3\x89\x75\x99\xaa\x32\xc3\x49\x47\x57\x4f\xfb\xd3\xc9\x34\x82\x34\x33\x10\x45\x7a\x55\x1a\x6a\x43\xa5\xe4\xaa\x79\xae\xd3\x2a\x2e\x7b\x29\xaa\x64\x7b\xa8\xdb\xe5\x3e\x9f\x32\x8f\x2a\x26\x04\x01\x73\x63\xdf\xac\x57\x89\x05\xa5\x0b\xe9\x92\x1a\x06\x44\x9a\x3a\xe8\xc6\x7e\xea\x9a\xd7\x32\x9f\x32\x51\xab\xe1\x41\x35\xb9\x41\x1a\x78\xd0\x37\x67\x3f\x8f\x7c\x18\x61\x70\xf7\x42\x7e\x61\x52\x30\xf4\x4a\x4c\x3b\xa0\x78\xc0\xf4\x63\x27\x42\xf8\x36\x7f\x50\xa0\x56\x5a\xcb\x07\x45\x7f\xa0\x7a\x83\x17\x6c\x10\xd0\x57\xd0\xbe\xfd\x74\xeb\x81\xbf\x7e\xfe\xfc\x21\x7f\x06\x9a\xb6\xbf\x93\x5f\xe6\x8e\x3a\xe7\x83\xcc\x6d\xbb\xc9\x11\xdf\xcc\xf6\x56\xd4\x34\xfa\xc9\x2f\xa8\x46\xb4\xa8\x4a\x00\xae\xf8\xd8\xfd\xfd\x89\xdb\x28\xc0\x18\x99\x44\xb1\xa7\xe9\x0c\xd0\xe0\xe4\x0c\xc0\xe0\xe4\x1c\x10\xb3\x61\x39\xbd\x4d\xa3\xa0\x18\x48\x02\x54\xc1\x24\x7f\x3c\x71\x69\xe0\xb2\x20\xf1\x31\xfa\xc2\x5d\xcf\xf3\x23\x82\x91\x60\x84\x2a\xa0\xcd\x65\xbe\x44\x9c\x07\x4e\xf8\xfd\x3d\xd6\xac\xf1\x24\x08\xb8\xf7\xa3\xf8\xa4\xf7\xa3\xce\x8c\x12\x7b\x77\x50\x0c\x81\x04\xf1\x76\x1e\x63\x98\x24\xb7\x77\x32\xe5\x8a\x71\x50\x4e\x7c\x35\xe4\xfb\x7b\xf3\x97\xe0\xca\x1a\x32\x9e\xbb\xd0\x53\x12\x04\xd9\x66\x91\x73\x12\x53\x07\x99\xac\x87\x4c\x96\xc7\x57\x77\xa9\x4c\x46\xbc\x6e\x42\xbe\xa1\xe8\x20\x9a\x3d\xe5\xf5\x64\xfc\x30\xbb\x78\xe3\xf5\xa4\x84\x30\x11\x7c\x2a\x63\x4b\xb3\x01\x5d\x26\xa8\x17\x22\x5d\xb7\xdb\x4c\xe3\x3e\xbe\x2d\x74\xd0\xe3\x42\xf4\x77\x59\xe3\x57\x88\xf1\x18\xcb\x3b\x97\x47\xe8\x61\xf7\x49\x7c\xa0\x28\x44\x11\x92\x39\x80\x6a\x6f\xa2\x14\x64\xca\x36\xcd\x6d\x42\x17\x09\xb3\x80\xee\xa6\x8b\xe0\xe2\x58\x15\xf3\xcd\x86\xaa\x98\x7d\xdb\xb2\xbe\xab\x36\x2c\xcb\x77\x6f\xd1\x02\x86\xb7\xed\xbb\x48\xc1\xf5\xbb\x0a\x51\x1b\x94\xbd\x83\x18\x2e\x50\xf4\xd3\xed\xcb\x8f\xaf\x1c\x90\x17\x95\x5d\x33\xb8\xb2\x07\x46\x6a\x01\xd1\x87\x14\x61\x4e\x63\xc4\x54\x00\xbf\x68\x25\x2b\x3a\x16\x85\xd8\xd4\x25\x59\x30\xe6\xe7\xb2\x58\x9c\x2e\x8f\x3d\x3d\x37\x07\xdf\x11\xe7\x8c\x62\x98\x98\x8a\x0c\x8a\xa8\x3b\x57\x9b\x4b\x44\x31\x12\x22\x47\x10\x48\xef\x0c\x19\xc9\xad\xa7\xf1\x3a\x52\x92\x40\x79\x0a\x06\x37\xa5\xb9\x96\x67\x75\x22\x47\x9f\x87\xcb\x3e\xd2\xe1\x06\x54\xed\xf3\x2e\x17\x0e\x12\x52\x39\x07\x44\x2f\xca\xd7\xb4\xd2\x2d\xc7\x80\x29\x07\x9c\x56\xb0\x6e\xae\x06\x6a\xcf\x75\x73\x35\xf0\xba\x9b\xb4\xae\xae\x77\x10\x30\x8b\x21\x6d\x31\xfb\xb3\x4a\x34\xbd\x87\x32\xe5\x37\x64\x46\x7f\x43\xb7\x8f\x72\x4b\x2b\xfa\x69\x23\x24\x24\xbc\xea\xb4\x83\xfe\x9c\xc0\x45\xd9\xf9\xa5\x00\x24\xc9\x4d\xb7\x43\xf0\x88\xdb\x56\xdf\x36\x6b\x8d\xb6\x85\xfd\x76\x3e\xab\x59\xc8\x40\x0b\x60\xba\x89\x4b\x94\x48\xe1\xbf\x44\x75\xf2\xe9\xdc\x0a\xe5\xcf\x65\x23\xef\xfe\xde\x71\x14\xb9\xeb\x73\x81\xad\x0a\x16\x1e\x6e\xad\xf7\xdf\x49\xed\x45\x14\x51\xc4\x5a\x9d\xc9\xba\x78\x05\xd5\x88\x13\xf6\xad\x79\xe9\x3b\xd9\x05\x38\x0a\xaf\xea\xdf\x3e\x89\x2b\xdb\x67\xb8\x58\xa0\x48\x23\xa0\x7e\x68\x3d\x1c\x95\xaa\x3d\x9f\xba\x79\x4d\xb5\xb3\xf8\x26\x67\x00\xd5\x07\x87\x7c\xc3\xca\xa7\x5f\x21\xd7\x9f\xce\x1c\x83\xe8\x97\x34\xe6\x71\x08\x93\xf4\xc1\x07\xc8\x98\xca\x8a\xa9\x7e\xff\x1d\x52\x2c\x7f\xdb\x44\x43\xbb\x91\x9f\x9c\x29\x0f\x72\x55\x58\x48\xc8\x2d\xf9\x4e\xb5\xd3\xb8\x13\x9a\x8f\x1c\x55\x41\xeb\x2f\x18\xe0\x1b\xfd\xc1\x4a\x58\x3d\x3a\x03\xbb\xd6\x83\x2d\x78\xa9\x3b\x42\x47\xbd\x75\xb6\x8a\x5a\x65\xbb\x2a\x9b\x6c\x03\x62\xaa\x02\x94\xb2\x01\x34\xa5\xf7\x48\xa7\x29\x63\xab\xd5\x1a\x6c\x3d\x93\x11\xb6\x38\x98\x14\xd1\x4f\x32\x16\x83\x99\x4e\x43\x49\xd7\xf8\x49\x86\x62\x16\xb4\x7e\x28\x7d\x1c\x58\xaa\x0a\x1a\xfd\xe6\x58\x8a\x4a\x98\xaf\x99\x4a\x2f\xfe\xa2\xbc\x9f\xca\x0e\x78\xb9\x3e\x2d\x41\xa3\x95\xf7\x74\x71\x7f\xea\xe4\x22\xd5\x6e\x84\xa8\x77\x95\x56\x4e\xf4\x55\xda\x49\x91\xc9\xbd\x7c\x5b\x22\xef\xba\xc6\x41\x79\x83\xe7\x3f\x77\x27\x13\x87\xdc\xbe\x52\xcf\xd8\x64\x3a\x03\x1f\x49\x82\xac\xdf\x5b\x8b\xe0\x3c\xb2\xab\x6a\x43\xb1\xf7\xdf\xdc\xe6\x7f\xa0\x7b\xf4\x63\xb9\xff\x75\xd9\xd4\x4d\x3c\xba\xbb\x34\xf1\x2a\x66\xeb\x04\xde\x76\xf9\xe0\xdf\x62\xdc\x69\xe0\x6d\x5a\x84\x3a\x2c\x1b\xbe\xfc\xe5\xe3\xdb\x47\x72\xef\x37\x55\x26\x7f\xd3\x7b\xf7\xdd\x8b\xf7\x2f\xfe\xf2\xfa\xdd\xeb\xf7\x9f\x7f\x7d\xf3\xea\x51\x74\x83\x62\x9f\xce\x99\xfe\x6f\x5c\xf1\x8f\xfe\xef\x7c\xaf\xe3\x5e\x1e\xc4\x09\x1a\x03\x62\xea\x9b\x29\xbd\xa2\x92\x60\xab\xe8\xb4\x7c\xcb\xb3\xb4\x61\xcc\xfe\x92\x90\x4b\x98\x28\x73\x9d\x12\xfa\x8b\x52\xd4\x9b\x4a\x43\x5f\xb7\x85\x0a\xb4\xf8\xfb\xe6\x55\xc6\x5b\xba\x53\x8e\xce\x47\xfd\x31\x94\x0e\x3b\x95\xd7\x57\x55\xdf\xd2\x2c\x7a\x7d\x96\xbd\x17\xe9\xa2\xe4\xcb\x6f\x9d\x72\x3d\x3c\x28\x09\x98\x64\x71\x5f\xcb\xa2\xd1\xc3\x41\x3f\x1b\xda\x23\x98\x3f\x74\x67\x1f\xd4\xae\x79\x98\x96\xff\xb8\x67\xbd\xcf\xa6\x97\xc5\xa0\x0f\x7b\x7e\x00\x96\xbb\x6f\xc0\x66\x4d\x12\xc5\x62\xcb\x7c\x83\x12\xcf\x13\x3a\x52\xf1\xc8\xa5\xc9\x1e\x1f\xd0\x57\x3e\x6b\xe4\x03\x3a\x6a\x93\x03\xf6\x80\x05\x77\x60\xb3\x7f\x85\x6c\xf9\xd5\x83\x82\xfb\xd0\x96\x34\x2d\x68\x5a\x4a\xe7\xbb\x8e\xc3\x7c\x88\x27\xfb\xe6\x2b\x7a\xb2\xc7\x03\xf7\xd0\x3e\xf8\xd8\x7d\x4d\x1f\xbb\x78\xe0\xbe\x63\x71\xba\xe2\xfa\x40\xd5\x7a\x05\x6e\x76\xf7\x0a\xd4\xba\x5e\x7f\xdf\x40\x50\xe5\x18\x78\x91\x3b\xb4\x93\x47\x70\x07\xbc\x50\x73\x9b\xa8\xcd\xb9\xcd\xb0\xb3\xf9\x8e\x3d\xeb\x84\xb8\xe0\xdb\x2a\x89\x6f\x64\xb5\xf0\x81\x31\xe8\x55\x1d\x3f\xda\xf5\xbf\x54\x28\xde\xa4\x2c\x53\xde\xd9\x5f\xa2\x84\xe0\x05\xfb\x4c\x3c\x57\xbd\xcf\x43\xd7\x39\x75\x55\xa9\x31\x85\x20\xf9\xba\xd7\xb5\x17\xb4\xbd\x1c\x94\x6a\x0c\x09\x56\x24\x7f\xde\x8a\xe2\x0b\x4a\x62\x23\x35\xfd\xf1\xa9\x10\xba\xff\x59\x3a\x85\x14\x5a\xc3\x24\x86\x2c\xeb\x40\xc2\xe4\x9d\xdf\x9a\x1b\x48\x98\x0a\x37\x8c\xe6\x56\x56\x8a\x47\xdd\xf4\xb5\xf6\x2b\x53\x8e\x7d\x15\x37\xb4\xb9\x0f\xe6\xac\x46\x2a\x6c\xa3\xca\xd5\xcd\x6e\x63\x5c\xde\xca\xb7\x71\xca\xe9\x2d\xb1\x9d\xde\x8e\xda\x5c\xde\x1a\xaa\x2a\xa8\x8e\x8e\x64\x37\x46\x8a\x9a\x9e\xcf\xb6\x59\x51\x05\xe6\x0a\x52\xf0\x09\x49\xce\x68\xb9\xb0\xa9\xd1\x9a\x6d\x54\xc0\xa0\x1e\x79\xf5\xcd\xa3\x55\x49\x41\x96\x39\x4d\xb5\xf6\xac\x77\xb1\xb1\x1f\xd8\x75\x50\xd3\x75\xf3\xa5\x7a\xed\xbd\x79\xe9\xee\x79\x87\x8b\x74\x4d\x6a\x7b\xdd\xa7\x17\xda\x74\xb9\x56\x2f\x34\xe9\x72\xbb\x6e\x91\x84\x6f\x71\xa1\x5d\x1c\xc3\xb7\xb8\xc9\x2e\x8e\xe1\xdb\x78\x19\x64\xa3\xf8\x80\xa8\xe0\x27\x70\x81\xba\xaf\x4b\x71\x09\x9b\x87\x97\xdf\x2e\xa7\xf6\xc0\xd5\xa3\xdf\x9d\x9f\x9d\xd5\x0f\xa8\xcb\x22\x35\x79\x9f\x94\x07\x94\xdf\xf2\xbd\x07\xd4\x69\xc5\x1a\xcf\x71\x79\x48\x85\xa3\xdb\x34\xa6\xbc\x3f\x5d\xd8\x45\x73\x3e\x18\xe6\x86\x72\x05\xfc\xb9\xc2\x47\xb5\x87\x41\xca\x88\x7b\x2f\xc9\xa6\x22\x93\x56\xc1\x50\xf3\x92\x60\x8c\x42\x8e\xa2\xbf\xc7\x7c\xf9\x17\xc8\xd1\x0d\xac\x35\x40\xe7\x60\x1b\x4d\xd5\x8d\x2f\xf5\x57\x54\x21\xd9\x3a\xa0\x2e\xb7\xd2\x25\xc9\xa8\xba\xab\x26\xd7\xc2\x8e\x1e\x8c\x1d\xbd\xfd\x3e\x10\xda\x8a\x70\x95\xff\xe9\x33\x5c\xfc\x7c\x8d\x28\x8d\x2b\xae\x06\x4c\xf8\xc3\xd3\xde\x80\x15\xa9\x77\x83\x67\xa5\x45\xbf\x1a\xa0\x32\xba\x5b\x09\x94\xa5\xc7\x7a\x90\x63\x43\x67\xdb\x68\x8d\xba\x62\xdb\x91\x77\xf3\x27\x7d\x8c\x7b\xcf\x5c\x22\xb0\x12\x03\xa9\x38\x66\x75\xe7\xb4\x8e\x9f\x94\xba\xb8\xbf\x2f\xbf\xd0\xdd\x64\xb7\xc4\x6f\xb0\x18\x58\x85\x07\xb8\x3a\x8c\x35\x1f\xb3\x26\x73\x7f\xaf\xd4\x0b\xd1\x40\x3a\x7f\xa7\xc5\xf5\xb3\x8f\x08\xf0\x3a\xb9\x58\xbc\x2b\xca\xc6\xd9\xb3\x4c\x3e\xce\x9e\xf5\x94\x91\xcb\x0d\xdb\x04\xe4\xd2\xe7\x5b\xa4\xe3\xd2\x14\x7a\x3b\x9e\x56\x20\xa1\x4d\x7f\x90\x4b\xec\x37\x08\x64\x4a\x13\x3c\x2b\x15\xaf\x93\x43\x96\xad\x47\x23\x17\x59\x3f\xf3\x9d\xe9\xe4\xd2\xb9\x67\xcf\x50\xd5\x90\x5b\x04\xb5\x6c\x09\xed\xaf\x54\x8a\x6c\xbb\x0e\x59\x77\x96\x1b\xb2\x7e\x56\x3d\xe4\x36\x51\xce\xf2\x77\xb6\xbf\x53\xbd\xf3\x76\x1d\xb5\xe9\x2d\x37\x6c\xf3\xd0\x1e\xf7\xba\xeb\x9e\x48\xa9\x58\xd9\x49\x51\xeb\x6c\x15\x25\x0c\x55\xf0\x46\xbe\x2b\xef\xa2\xe5\xbd\x55\xa4\xa2\x1a\xd2\x31\xe6\x85\x9f\x6e\xdd\x54\x27\x4e\x67\xe2\x01\x47\x0d\x48\x56\xb5\x30\xf3\x5c\x42\x66\x20\x2b\x4c\x09\x67\x69\x5a\x72\x9d\x90\xdc\x74\x36\xe1\x6d\xb3\x39\xba\xa4\x08\x5e\xc9\x53\x9b\x1d\xfa\xda\x66\xe9\x2a\xe7\xda\x99\xb3\x5f\xdb\xcc\xec\xe8\x5c\x2b\x01\x7e\x6e\x6c\xe2\x5c\xd2\xc4\x9e\x57\x60\xcd\xe9\x2e\x0e\x82\xfc\x40\x6e\xd8\x7b\xa5\xcb\x7d\x12\xe9\xef\x2d\x09\xaf\x5e\xa1\xa4\x2c\xeb\x17\x01\x7f\x42\x4b\x78\x1d\x93\x56\xb9\xec\xf3\xe7\x26\xa7\xcf\x06\xb1\xaa\x87\x62\xf3\x6d\x6e\xd0\xfb\x9c\x50\x55\x5e\xe7\x21\x11\xa5\x79\xcf\xd7\x3d\xbc\x98\xfe\x86\x67\xd7\xaa\xa1\xf4\x18\x71\xa5\x56\x77\x2d\x90\x6f\x5e\x7d\xe8\x96\x2a\x58\x17\x70\x6a\x81\x6b\xc9\xd2\xde\x9a\x9a\xb8\xd2\xc7\x46\xb6\x6a\xcb\xed\xde\x25\xea\xbe\x47\x8a\x87\xfa\x81\x34\xdd\xd5\x3c\x41\xf0\xea\x5b\x52\xa1\x9e\x96\x66\xd4\xc5\xf1\xd6\x78\x29\xd5\x58\x5c\x95\x7a\x63\x80\x54\x9d\xf0\x72\xb2\x00\xe3\x2d\xe0\xbf\x79\x15\x04\x01\xcd\xbb\x5b\xe7\x0d\xaf\x0f\x72\x8a\x52\x6b\x4e\x2a\xd6\xbc\x47\xfb\x47\x72\xaa\x4a\xaf\x52\x1e\xa5\xa3\x0e\x4e\x55\x12\xae\xc5\x6d\xe9\x6b\x24\x18\x68\x0e\x66\xe6\x64\x4d\x12\xb2\x38\xb8\x02\x7f\xf7\x69\xb8\x3b\xcb\x1c\xbf\xac\x19\xa7\x08\xae\xea\xad\x61\xe4\x06\xb7\x80\x7c\xa0\x84\x93\x90\xd4\x9a\xe4\x9a\x8c\x4f\xaf\xbf\xc4\x8c\x97\x8d\x2f\x15\x79\x45\xce\x7a\x85\x5a\xc6\xf3\x18\x51\x76\x1a\xc5\xd1\x38\xc6\x0c\x51\x9e\xdf\xf3\xff\x21\x77\xf8\x29\x45\x38\x42\x74\x9c\xc1\x57\xb6\x1c\x52\x79\xda\xdc\xf8\x4d\x69\xa2\xfe\x33\xd7\x2d\x07\x39\x73\x8a\xe6\x55\x04\x8e\xa2\x79\x3a\xdd\x02\xf4\x20\xa7\x79\x13\x27\xc9\x58\x3a\xa2\x91\xdb\xbe\x4b\x9c\x6b\xbb\xaf\xb3\xaf\x28\x65\x2f\x6b\xc2\xd1\xba\x52\xcb\x08\x5f\x57\x24\xc4\x11\x6d\x62\xbc\x38\xbd\x81\xc9\x55\x15\x23\x4b\x59\x18\xcd\xa4\x25\x97\x06\x8e\x79\x5e\x74\xa2\x1c\x8d\x1c\x26\xff\x28\xbe\x48\x5d\xf6\x2e\x2a\xc4\x2f\xe3\x92\xb7\xad\x2c\x08\x37\x1a\x35\x7c\x2e\xe7\x5c\x17\x04\x41\xfa\xfc\xc4\xfc\x9d\x39\xf3\x5d\x98\xb1\x4d\xd2\x0f\x7a\x2e\xb2\x9c\x06\x61\x96\x51\xd0\xcd\xdc\x15\xc9\xfc\x98\x7b\x5e\xa5\xf7\xe3\x4b\x88\x31\xe1\xc7\x21\x4c\x92\x63\x78\x1c\x26\x90\xb1\x63\xc8\x8e\x61\xea\xa5\xea\x58\xbd\x13\xdb\x8f\xd5\x25\xc6\xdb\x87\x21\xfe\xc1\x8c\xf0\xe7\x79\xd1\x65\x35\x15\x50\x7f\xfd\x55\xce\xe3\xd7\x5f\x03\x0e\xe4\xb8\x01\xf7\x0a\xbe\xc7\xca\xe0\x66\x6d\x9d\x1a\x7f\xd7\x8f\x68\x9e\xa0\x90\xdf\xdf\x9f\xe8\xbf\x32\x1c\x6a\xa7\xc8\x93\xf3\xa3\x78\xee\x96\xde\xfa\x6c\x09\x57\x39\x90\x8a\x95\x91\xb6\x52\x03\xa4\x3c\x62\xf5\x24\x5e\x41\x8e\x6a\x5d\x2b\x4b\x1f\x73\x05\x38\x98\xce\x72\xb2\xbd\x64\x73\x27\x67\xda\x01\x36\xdd\x24\x27\xe7\xdb\xad\x9b\xfa\x26\x15\x8c\xbc\x18\xd0\x60\xa3\x73\x2c\x72\xad\x94\x07\x1b\xa9\x1f\x78\xf6\xee\x39\xc2\x41\x79\x10\x14\x58\x55\x76\xbd\x2d\x4a\x18\x3a\xc6\x41\x4b\x49\xfc\x44\xbd\xc0\xde\xb6\xc6\x8b\xf9\x84\xdf\xdf\x3b\xca\xc1\xd5\x39\x09\x02\xea\x72\xcf\xde\xe5\xa9\xcb\x37\xbf\x88\x5d\xe4\x4d\x78\xce\xaf\x55\xae\x6b\x56\xf7\xdf\xda\x99\x1f\xd1\x1c\x51\x84\x43\xb3\x3d\xc5\x28\x8e\x97\x90\xe1\x7f\xe5\xc7\x97\x08\xe1\xe3\x18\xc7\x3c\x86\x49\xcc\x50\x74\x3c\x3e\x96\x75\x3a\x5d\x2f\x07\x21\xd6\x02\x45\x56\xc9\xca\x9c\xd3\x68\xba\x7b\x37\xd5\xbb\xd7\x88\xb4\x8b\xdc\xd3\xca\x53\x9d\x6d\xe8\xfb\xfb\xca\x56\xe2\x64\xe6\x8f\x67\x38\x20\x31\x5a\x12\x63\x66\xe7\x0a\x8e\x82\xbb\x28\x9c\xdc\xfd\x4a\xa4\xa2\xce\x26\x77\x6b\xc8\x97\x13\xe7\x74\x12\x85\xce\x16\x68\xd7\x0f\x56\x01\x60\x5e\x09\xa8\x25\xb9\xa9\xea\x02\x0b\xf9\x78\x0b\x0c\xc5\xaa\xea\x25\x7d\xe7\x6c\x05\xa0\xce\x4b\x58\x0d\x69\x5e\x3a\x5b\x80\xa2\x98\x57\x7d\x31\x05\xfa\x35\x8e\x44\x8f\xba\xd2\x66\x19\x52\x17\xb7\xdc\x6e\xb7\xc0\x68\x58\x15\x50\xa9\xf2\xb5\xed\x88\x8a\x2d\xd8\x18\xe1\xbc\x02\x2e\x7d\x27\x00\x35\x8f\xab\x00\xd3\x6f\x04\x10\x87\x8b\xaa\x8e\xc4\x63\x39\x76\x83\xbe\x3a\xec\x67\xf8\x3d\x9d\x60\x12\xa1\xd3\x89\xc0\x0b\x58\x22\x98\xf0\x65\x28\xed\xa9\x15\x4d\xd5\xeb\xb1\x7a\x2f\x86\x21\x83\x51\x2b\x00\x55\x90\x6a\x9f\x59\x0b\x19\x80\xa1\x48\xbc\xaa\x82\xd5\xaf\xc7\xf2\xbd\x80\x87\xc6\x65\xa2\x02\x38\x7d\x27\x00\x85\xc2\x22\x94\xdf\x0a\x38\xf3\x4a\x62\x0c\x13\x3e\x27\x1b\x1c\xd5\x62\xcc\xc2\x93\x04\x8f\x2a\xbf\x2d\x9f\xb7\x6f\xfd\xbe\x88\x6e\xdf\x64\xe3\xdc\x89\xa1\xbc\xea\x18\x50\x31\xc1\x31\xa7\xf1\x7a\xcc\x63\x31\x0e\xd1\xb1\xca\x08\x5a\x01\x9d\x90\xf0\x6a\x6c\xde\xf7\x40\xe5\xb7\x3a\xaf\x57\xd7\x15\xef\xaf\xae\x9d\x2d\x98\xcb\x04\x74\x15\x6f\x7f\x77\x85\xe4\x36\xad\x19\x86\x78\x7d\x2a\xde\x35\x0e\x41\x42\xa5\xe3\x00\x0e\x25\x84\x8f\xf5\xef\xe6\x11\xc3\x30\xa9\xdc\xbf\x61\xd2\x88\x9b\x8e\x18\x01\x6b\x6d\x03\xac\x3a\xa0\xc6\x3c\xf8\xf0\xcf\x08\x8a\x95\x54\x7e\x44\x3e\x7f\x94\x2f\xc8\xeb\x8f\x4a\x82\x27\x5f\x3c\xc6\x37\xe4\xb6\x8d\xd0\x97\x0a\x20\x75\x4e\xb8\xa0\xbd\xd5\x07\x90\x1b\xb2\xdc\x40\x44\x7e\x27\xfe\x57\x7c\xe8\x28\xe5\xb6\x11\x90\x59\xf2\x11\xbe\xf6\x5c\xe7\xe5\xcf\xef\x3f\xfd\xf2\xf6\x57\x95\xf9\xe8\xd3\xaf\xaf\xdf\xbf\xf8\xe9\xed\xeb\x57\x8e\x37\x1a\xb9\x91\x1f\x85\xbe\xca\x35\xc5\x82\x0a\x92\x63\xec\x43\x4d\x78\x50\x74\xa7\x1b\xb6\x23\xfd\xb1\x8a\x6f\x4d\x74\xca\xab\x2d\x88\xc2\x89\x18\xd7\x56\x85\x22\xcd\x6d\x39\xde\x2d\x87\xb1\x55\xc8\x8a\xa3\x11\xde\x24\x89\x8c\x13\xab\x54\x56\x3e\x09\x71\xef\x18\x7d\x59\x53\x45\x82\x54\x64\x15\x8a\xf9\x12\xd1\xe3\x4b\x74\x2c\x5a\x1f\x13\x9a\xd3\x5e\x8e\x2c\x81\xdd\x88\x7c\xba\x4e\x3c\x1f\x8d\xac\x40\x29\x70\x67\x49\xd2\x13\x2d\x15\x21\x5b\xb4\x2a\x8a\x5d\xdb\xad\x07\xf8\x68\x44\x74\x75\x64\x17\x6b\x33\xd7\x47\xa9\xc6\x9a\x4a\xf1\xcc\xc5\x5e\x66\x48\x35\x22\x3d\x3d\x82\x46\xc4\x4e\x03\x94\x48\x56\x1e\x5a\xfb\x32\x01\x66\xc5\x2b\x11\x0f\x24\xc1\xd9\x8f\xc9\x1f\xc9\x8f\xc9\xb3\x67\x1e\x9b\x26\xb3\xac\xc1\x34\x49\xe3\x1c\x42\x37\x76\x69\x80\xa4\x52\xa2\xa5\x7c\x04\xa6\xe2\x63\x33\x53\x6f\x83\x09\x25\xc4\x49\x48\x08\xd3\x2b\x17\xb3\xe9\xcc\x43\x79\x71\xe4\x79\x40\xf6\xe6\x29\x12\x66\xb2\xed\x18\x58\xf3\xcc\xf3\x00\xb5\xe2\xef\x6c\x13\xde\x1c\xcc\x55\x88\x46\xce\x3c\x18\x79\x35\xf6\x0f\x75\x0c\x4e\xc5\xa8\x63\x33\xb8\x6a\x6b\x80\xd1\xfb\x65\x8b\xfc\xb5\x66\xfc\x25\xc6\xec\xf4\x26\xe6\xcb\xf1\xa5\xe0\x58\x31\x5e\x8c\x75\x45\xf6\x36\x0b\xc1\x21\x4c\x73\x28\xa5\x10\xe0\x6f\xa6\x14\x02\xfc\x2e\x4a\x21\xc0\x3d\x0e\xd8\xb4\x74\xdc\x8a\xdb\x9e\x94\x6e\x81\x3b\x65\xa0\xd4\x3e\x68\x31\xd6\xf6\x03\x29\x6c\x0b\x6a\x28\xad\x97\x1e\xd0\x7c\xf9\x23\x5a\x93\x3a\x50\xb4\x26\x2c\xe6\x84\xde\xea\x84\x91\xa7\x51\xcc\x94\x8b\xae\x07\x68\xa7\x76\x51\xe8\x78\x99\x08\x52\x0d\x6e\x5e\x3b\x1e\x90\x57\x7f\x15\x46\x59\xcd\xb1\x3e\xfd\xe7\x07\x7f\x09\xd9\xd2\x35\x53\x94\x77\xcf\xea\x6f\x10\x85\x4c\xff\x46\x6b\x22\xaf\xa0\x5f\x24\x89\x9b\xce\x53\xbd\xb3\x26\x9d\x81\xf8\x8a\x7e\x94\xaf\x7b\xa6\xb2\x1c\x93\x27\x85\xa8\xcd\xfa\x25\xc1\x9c\x92\x24\x41\x74\x92\x27\x07\xb2\xe7\x5f\xa5\x95\xa7\xda\x5e\x05\x90\xb6\xdf\x88\xd5\x96\x11\x87\x9e\x90\xa1\xb5\x84\x82\xc4\x91\x98\x94\x3d\xfa\x14\xe3\x0d\xee\x98\x74\xfa\x9b\x88\xf3\x1e\xa1\xfb\x7b\xc7\x01\x2b\xc4\x18\x5c\xa0\x09\xf2\xf5\x5f\xf7\xf7\x62\x9b\x70\x18\x27\xf7\xf7\x8e\x3c\x62\x8e\x10\xd7\x64\xcf\x4c\x10\x0f\xf5\xd7\xf4\x6c\xa6\x49\x47\xfa\x1b\x60\xd3\x47\x80\x7d\x1e\xf3\x04\x09\x1a\x5b\xe8\xcb\x03\x32\xa0\x0f\xfb\x6a\x28\x92\x34\x9b\x56\x06\x44\xd7\x69\x92\xb8\x90\xcb\xf8\x67\x71\xce\xc5\xfa\x6b\x47\xeb\xec\xa1\x5a\x04\x5f\xbc\x13\x44\xe8\x04\xaa\x19\x13\x79\x88\x7e\xf9\xf8\xd6\x35\xdc\xdd\x5f\x52\x34\xf7\x7c\x21\xc2\x09\xfa\xe6\xb3\xcd\x25\xe3\xd4\xb5\x56\xdd\xd7\xcc\x5d\x9f\xca\xf1\xb9\xe7\xb3\x75\x12\x73\xd7\x39\x75\x0c\x39\x3d\x07\x3f\x78\x47\x30\xb8\x53\x9f\x9d\xa8\x12\x9c\x59\x3d\x8a\x2d\x20\xd3\xb3\x99\x98\x1a\xe5\xec\xef\x31\x5f\xba\xce\xff\x48\xe9\x15\xa6\xd2\xa4\x6c\x41\x7c\xb6\x8c\xe7\xdc\xf5\xb6\x1e\x80\x7e\x14\x9a\xc7\xd3\xb3\xd9\x76\xab\x9d\x6f\xf2\xf3\xb4\xe5\x03\xef\xfe\xfe\x6e\x0b\x92\x80\xf9\x51\xc8\xee\xef\xa7\xa2\x87\x19\x88\x83\x74\x4b\xca\x67\xea\xef\x94\x5c\x94\xb6\x7d\x14\x4e\xce\x4e\xb2\x85\x48\x19\x88\xeb\xf9\x52\x07\xf8\x79\xee\x3a\xff\xcb\xf1\x2e\xb2\x73\xb0\x40\xfc\x45\xc8\xe3\x6b\xe4\x8a\x2f\xca\x60\x5a\x90\x78\x06\x09\x7a\xab\xc8\xb3\x93\xe8\x93\x32\x31\xc3\x48\x4f\x4e\xbc\xf5\x7c\xbe\x44\xb8\xd2\xa5\xe3\x03\x25\xab\x98\xc9\x9a\x67\xee\x14\x01\xae\x3e\x1b\x26\x08\x52\xfd\x61\x6f\x26\xc4\xa8\x8a\x1e\xd4\x8e\x11\xf2\xcc\xb9\x27\x03\x69\x05\x47\xd3\x47\xac\x8c\xc0\xc2\x11\x82\x1e\x28\xc1\x23\xb5\x15\x0b\x90\xfa\x80\x61\x79\x9f\x53\x71\xd6\x77\xe9\x06\x08\xb9\xba\x4b\xf5\x2e\x2d\x2a\x16\xab\xe4\xd7\x49\x88\xa5\x6b\x30\x4b\x24\x3f\x88\x7d\x83\x11\xfb\xe8\x6f\x46\xec\xa3\xdf\x85\xd8\x47\x9f\x5a\xec\x2b\x0a\x98\xb9\x9d\x71\x85\x6e\x99\x5e\x99\xec\x86\xe6\xe7\x1b\x6c\xc4\x43\x35\x0d\xa6\x55\xf2\xa0\x09\x46\x74\xc3\x47\x23\x97\x06\xb4\x1c\xfe\x9c\x91\x8f\xca\x2e\x8c\x7b\x23\x51\xd8\xf0\xb3\xcb\x1c\x79\x1b\xa8\x8e\xa5\x16\x70\x30\xa0\x5e\x76\x5a\xec\xab\x57\x2f\x3d\xf9\x3c\x38\xff\x91\xff\xb1\x68\x2c\xf8\x91\x3f\x7b\x66\xe6\xaf\xec\x28\x99\x75\x80\xcf\x2e\xec\x1f\x93\xbb\xed\x11\xff\x97\xe7\x17\x50\xa3\xc5\xc5\x82\xee\x7a\xfe\x9c\xd0\xd7\x30\x47\xc4\xb9\x77\xc7\x94\xa2\x3c\xe5\x92\xdb\x4c\x5a\x66\xc8\x2a\x6f\xb3\x04\x99\x47\xa0\xad\xa9\xd8\xfd\x13\x6b\x4c\x35\x03\xaa\xbf\x2e\x6b\xc3\x3e\x06\x5c\x5a\x1e\xb6\xe5\xbb\x41\x36\x98\xab\xb9\x5c\xd9\xf5\x92\xb6\x72\xd7\x43\x7d\x78\xa0\xa2\x62\xd4\x8b\x86\xf6\xf5\x1a\x48\x51\x18\x6f\x92\xf0\x6a\xa5\x36\x2d\x57\x95\x14\x90\x4c\x36\xf3\x94\xa1\x58\x81\xd8\x03\x96\x4a\xca\x4f\xb7\x9f\x92\xcd\xc2\x75\x94\x2f\xbd\x07\xa2\xb0\xa0\xe8\x68\x00\x21\x52\x03\x2c\x04\x4c\xaf\x49\x62\x2b\x8e\x8f\xb8\xc4\xbd\xdb\x02\xe4\x01\x33\x52\x6c\x86\x69\x82\x15\xcf\x2f\x5c\x1e\xa4\x4f\x01\x0d\x90\x91\x11\x61\xc0\x9b\xdc\x7d\x85\x98\x29\x1d\x7e\xc5\x1f\x42\x42\x4a\xef\xd3\xe1\x68\x94\xfe\xed\x36\xf5\x92\x4a\xea\x32\x55\x83\xee\x47\xca\xe7\xb2\x11\x65\x5c\xed\x52\x0f\x40\xcf\x1a\xb9\xf5\x66\xeb\x29\x56\xcc\x01\x05\xb0\x42\x14\xc5\x05\xd4\x2c\x10\x77\x31\x50\xe8\xf6\x53\x17\x76\x13\xf4\x55\x42\x1c\xf6\xc0\x5d\x56\x76\x8e\x4d\x78\x6e\x91\xe1\x86\x2f\x09\x8d\xff\x89\xd4\xf2\xe4\xbe\xa0\x15\x21\xe9\x75\x29\x4f\xbc\x90\x2e\x1f\x41\xdd\x94\x10\x3d\x64\xe9\x9c\x3a\x7a\x13\x27\xc9\x67\x0a\x31\x8b\xc5\x83\x49\x41\xd2\x6c\xff\x78\x56\x52\x7f\x34\x72\x91\x14\x3b\xa4\x98\xe2\x23\x1c\x69\xfd\xca\xac\x91\x36\xdd\x7b\x42\x7d\xcd\xe0\x6c\x4d\x2c\x55\x15\x7d\x18\x26\x42\xdf\x91\xb7\x26\x9e\x67\x1f\xcb\xc6\x99\x1e\x59\x8b\x96\x53\x55\xea\xcd\x01\xa0\xf4\x2a\x5b\x43\x2b\xb6\x0d\x38\x5a\x9f\x72\x3c\x90\x7b\x9c\x5f\xd5\x59\x9d\xe6\x43\x03\xac\xd2\x08\xc1\x80\x0a\x45\x9c\x04\x74\x7a\x3e\x3b\xca\xe2\x23\x47\x23\x5e\x54\x41\x8c\x46\x06\x81\xbd\xe1\x88\x54\x49\xb6\x05\x85\x24\x69\x51\x48\xd4\x6d\xdd\x93\xdb\xad\x1f\x87\x85\xd0\x46\x83\x57\x6e\xde\xb4\xcb\xbc\xcd\xad\xd1\xae\xd3\x87\x61\xa2\x50\xf0\x8d\x67\x6e\xb2\x76\x6b\x9b\x86\x9e\x9c\xbc\xf9\xed\x68\xa1\x83\x61\xe2\x78\xe0\x12\xcd\x09\x45\xef\x8a\xe6\xb7\x8c\xcd\xc4\x4a\x72\x87\x1c\xb9\xde\xb6\xd6\x4e\x27\xe1\x63\x8e\x56\x41\xd6\x52\x5f\x63\xdd\x65\x7e\xe3\x93\x0a\x23\x91\x31\x4e\x6c\xcd\x61\xb2\xf8\xa7\xbe\xfa\x3b\x39\x03\xa2\xeb\x49\xfa\x11\x20\xb4\x29\x36\x99\x3a\x2b\x2b\x7c\xc5\x09\x93\x58\xfc\x31\x7b\x2a\xbb\x5d\x84\xc4\x9a\x5f\x8b\x11\x59\x08\xc8\x07\xbd\xaa\xe1\x39\x31\x7b\x8f\x6e\x1c\x6f\x34\x4a\x9f\xf9\xda\xdf\xf5\x23\x0a\x09\x8d\x5c\x6f\xbb\xc3\xd6\x55\xab\x3b\xf0\x8d\xdb\x67\x73\xee\x6c\x3f\xae\x97\x79\xee\xb2\x9d\x54\x96\xa2\xe2\x08\x34\xec\x50\xef\x9b\x6c\xbb\x1d\xf6\x49\xac\x82\x76\x0e\x1b\xa5\x62\xa3\xfc\x63\x83\xe8\xed\x07\x48\xa5\x83\x17\x43\x90\x86\xcb\xc9\x1d\x64\x13\x47\x29\xcd\x92\x78\x26\x42\x14\x3e\x39\xdb\x6e\xeb\xa8\xa3\xba\x39\x17\x8b\x77\x64\xd3\x3f\xf3\x99\x2a\xd9\xbd\x28\x0b\x88\xed\xa0\xfc\x09\x82\x5c\xd2\x81\x5c\x2c\xa6\x94\x8f\xf4\x80\x94\x58\x54\x94\x87\xa4\xd4\xd8\xf9\xf2\x44\xec\xfd\x8a\xbb\x92\x9f\x6e\x33\x12\xed\x36\x1f\x80\xb2\xb2\x52\x35\xd9\xfd\x39\x0a\xc6\x6b\xa8\x03\xdb\xaf\x6a\xa5\x28\x6e\xf9\x8c\xc8\xde\x84\xfc\x53\x69\xbc\xfd\xb6\x32\x40\x7e\xf0\x0f\xc1\x59\x17\x7e\xc3\x62\xbc\x48\x2a\xe9\x88\x8a\xdb\x6e\x25\x25\x45\x53\xdc\x77\x6a\x20\x83\x4f\x62\x20\xa3\x5d\x0c\x64\xe4\xeb\x1a\xc8\xe8\xb7\x31\x90\x0d\x27\xf6\xdf\x3a\xdf\x15\x61\xfb\xbd\x39\xa0\xce\x8f\xa0\x89\x73\x37\x63\x99\x31\x28\xf5\x33\x7a\xd9\xbc\x00\xd0\xe2\x5b\xed\x67\xe7\x69\x05\xda\xdc\xd9\x9e\x7b\x80\x28\xd0\x74\x7c\x39\xa6\xd9\xc4\x04\xba\x9b\xb2\xa0\x0b\x8d\x29\x4b\x52\x33\x49\x12\xb9\x9f\xfe\x0d\x14\xeb\x33\xf2\x9e\x2a\x46\x68\x29\xf5\x48\x0b\xee\x82\xe9\xca\xd4\x12\xa5\xeb\x42\x94\xa6\xd2\xb2\x5a\x01\x75\x65\x98\x33\x3a\xe9\x2b\x5a\xc7\xd3\xe9\x78\x7e\x7f\xf6\x83\x33\xd1\x7f\x9d\x3b\x3a\xd5\xd5\x56\xdd\x92\x20\x15\x01\xff\x28\xb6\x9f\x36\x86\x59\x13\x9c\x5d\x47\xfc\x1f\x26\x44\x1e\x88\x7f\x81\xf8\x0f\x8f\x36\xb5\xb8\x1a\xf5\xa3\x4d\x79\xb1\x9b\x50\xfe\xd3\xed\xc4\x61\x32\x47\x64\xab\x10\xde\x55\xbc\xb5\x8f\xea\xb7\xe1\xb4\xf0\x7b\xe6\xb4\x82\xbe\x66\xaa\x83\x22\x72\x0f\x56\x29\x8a\xfa\x76\x2d\x13\x91\x89\x42\x9e\x9e\x48\xb6\x39\x73\x28\x22\x29\xc3\x04\xfa\xa9\x14\xaa\xc9\x10\xf5\x09\x6b\xe4\x3b\x28\x13\xf6\xbc\x77\xd5\x24\x44\x1f\x07\x56\x72\xd0\x23\x0e\x7a\xc4\x53\xea\x11\xb2\x62\xe1\xa3\x6b\x11\x75\x74\xbf\xa4\x5c\xd4\xab\x0f\xf4\xab\xaa\x0f\x8a\xa1\x51\xad\x28\x7c\x24\x09\xaa\x53\x13\xc4\x2e\xf9\xad\xaa\x09\x8a\xac\x3f\x4c\x47\x38\x90\xf5\x83\x86\x60\xa8\xce\x41\x3f\x18\x3c\x07\x3d\xe8\x07\x29\x75\x54\xb7\x33\xfd\x14\x04\xdd\x66\x88\x1a\x82\x3d\xf4\x1d\x54\x84\xdc\xcc\x77\xd5\x11\x64\x27\x07\x6e\x72\x50\x12\x0e\x4a\xc2\x53\x2a\x09\x46\xe4\xdf\xdd\x33\x23\x3b\x76\xa5\xfb\xf3\x27\xbc\x0a\xc0\xd6\x55\x80\xba\xc4\xc6\x2d\x37\xd8\xfb\x24\x6d\x6b\x0a\xf9\x30\x71\xfb\x40\x21\x0f\x14\xf2\x40\x21\xf7\x90\x42\x3e\x44\xf7\xf9\xd6\x0e\x4a\xa3\x51\xb5\x83\x52\x4f\xcf\x24\x4d\xb3\xbf\xad\xfa\x00\xee\xb6\x20\x17\xb2\xd1\xc5\x38\xd5\xd9\x23\x6a\x1f\x98\x49\x0f\x06\xf2\xf0\xb4\xac\x95\x27\x0c\x57\x44\x04\x35\xb9\x20\xf3\x34\x1e\xe1\x33\x91\x9b\x2b\x4d\x50\x57\x98\x3b\x6e\x9f\xbb\x49\xe2\xd5\x59\x2f\xb3\x9a\x48\xe5\xe4\x2b\xe2\xa4\xa4\x68\x15\xc7\xb2\xf3\xe4\xbb\x3b\x11\x7f\xc5\xe9\x76\x23\xad\xe9\x2c\x1a\x6c\xce\xc8\xb7\x13\xb1\x35\xfb\xb0\x34\x45\xdb\x63\x13\x14\xef\xfc\xce\x51\xde\xe7\x59\x7c\xc6\x45\xa5\xfb\x30\x07\x18\x38\xbf\x73\xbc\x49\xa3\x07\xbc\x8c\x22\x7f\x7a\x52\xd0\x67\x47\xec\x27\x55\x78\x02\x8b\xe0\x9d\x89\x9f\xab\xbb\x93\xe8\x47\xfb\xef\xef\xed\x5c\x12\xdf\x7c\x45\xaf\xae\x3b\x13\xb6\xab\xeb\x6f\x4f\xd0\xcc\x18\x7a\x4f\x72\xb7\x28\x08\x95\x8d\x1b\xb2\x10\xe1\xe8\xa0\xf7\x1c\xf4\x9e\x83\xde\xd3\xac\xf7\x74\x64\xc9\x57\xd7\x52\xd5\x91\xf1\x88\xdd\x2e\x8d\x4d\xe5\xbe\x16\xe7\x53\x1a\x8c\xcf\x4d\xad\xc8\xd4\x74\x63\x52\xfc\xf8\x8e\xe7\xaf\xc9\xda\x4e\x7e\x63\x22\x4a\x01\x09\x90\x38\xaf\xa0\x94\x94\x27\x47\xea\x93\xce\xd7\xcf\x4d\x42\x02\x33\x2c\x23\xb1\x78\x01\x58\x43\x8a\x30\xcf\xe4\x05\x52\x2d\x2f\xe4\x53\x0e\x12\x20\x19\xca\xa9\x03\x18\x48\xbc\xea\x00\x25\xf3\x56\xc9\x23\xf4\xa2\x51\xd0\x60\x20\xad\xc2\x32\x49\xb6\x35\x3d\x12\xd5\x9f\x5e\x93\x89\x38\xee\x95\x01\xe4\x69\x3e\xf4\x93\x20\x50\x77\xe0\x86\x42\x94\xef\xc6\x3f\x99\x05\x16\xe4\x32\x4d\x45\xd2\x60\xa5\x33\x5f\x17\xfb\x25\xdd\x48\x7a\x94\x7f\x43\x82\x94\x89\x41\xe6\x8e\xdb\x5e\x68\x53\x57\xd7\xa7\x2a\x4d\x6f\x27\x86\xab\xa4\xac\x6f\xcc\x71\xb5\xa8\x57\xa9\x71\xa1\x0e\x48\x3b\xb2\x1c\x3b\xd6\x52\x36\xd3\x47\xcb\xbf\xba\xf6\x35\x32\x54\xa2\x99\x53\x27\x08\x02\xc9\x39\x4d\x36\x1e\xf9\xc3\xb3\xcd\x11\x25\xe5\xee\xea\x5a\x1d\xe8\xde\xca\x5d\x36\xb5\xdd\xe4\x82\x98\xfd\x59\x0d\xfe\x20\x19\x1c\x24\x83\x83\x64\xd0\x2c\x19\xf4\x0b\xa1\xec\x21\x47\xb4\x1a\x33\x2d\x9a\x93\x17\x0c\x3c\x45\x68\x9c\x53\x47\xe6\x15\xcc\xb3\xd6\x2c\x2b\x9a\xe1\x81\xa9\xb9\x32\xdf\x0b\x40\xcf\x9c\x53\xa7\x6c\xb6\x2c\x86\xc5\xa0\xf4\x6b\xe5\x28\x98\x9c\x94\x41\x1e\x2e\x65\x68\x61\xa2\x92\x7b\x63\x40\x01\xe9\x95\xf1\xa5\xe4\xe7\xc6\x0b\x66\x55\xd9\xaf\xcd\xd3\xd5\xf7\x81\xf3\x37\x74\xeb\x78\xf2\x7b\x8f\xec\xf2\x96\x56\x5f\x2a\x71\x83\x5c\xa0\x6b\xa1\x54\x7c\x15\x7c\x8e\x7b\xa4\x37\x78\x0d\xd9\x36\xe3\xb9\x5b\x93\x2a\xd3\xf9\xfd\xd9\xef\x9d\xc0\x4e\x97\xa9\xc7\xde\x95\x7f\x1d\x19\xc7\xbd\xfd\x90\x53\xec\x04\xff\x5d\x84\x15\x0d\xfa\xf5\xa4\x95\x5e\xdc\x5e\x56\xac\x78\x90\xd9\x2a\x25\xca\x19\x7d\x81\xee\x54\x1c\x68\xf5\xff\x09\x82\x52\x1a\x48\xcf\x25\x0e\xca\x97\x18\x68\x0b\x90\x9d\x49\xae\xb2\x27\x55\x5d\x23\xeb\x88\xb6\x76\x04\x73\xf9\x1e\xf9\xfd\xbd\xcc\x42\xa7\x32\x05\x9e\x79\x69\xb9\xb3\x39\x45\xe8\x9f\xc8\xad\xe7\x85\x77\x14\xde\x98\x3c\xf1\xf9\x36\x5c\x1d\x90\x27\x73\x02\xbc\x93\x25\x37\xaa\x69\xbe\x78\x35\x66\x64\x43\x43\x74\xaa\x1f\x3e\xb6\xfb\x9f\xc5\x2f\x7a\xda\x7d\xad\xdb\x26\x31\x4e\x5f\x8d\xb3\x52\x0c\xe3\x2e\x75\x3d\xe0\xfc\xce\x01\x48\xde\x1d\xa9\x1d\xd3\xb5\x2d\xb6\xdb\x7e\x0d\x7b\x70\xab\xdf\x9a\x3a\x53\x6c\x49\x6e\x1e\xef\x48\x25\xf6\x41\x08\x09\xa1\x51\x8c\xa1\xf8\xde\x9c\xd0\xb1\xac\x4d\xe3\x00\xa7\xe7\x21\x3b\x88\xe0\x07\x11\x7c\x28\x22\x78\xfa\x5d\x56\x7d\x24\x2a\x8e\x00\x6b\x3d\x02\xc9\xb0\xd8\x43\xfc\x18\xec\xa1\xc5\x52\xf8\x38\x22\x38\x48\x02\x24\xf3\xd0\x35\x59\xfc\xa8\xb1\xf8\x11\x2b\x25\x55\x35\xbd\xb7\xb2\x21\xba\xcc\xf5\x00\x01\x54\x9b\xb1\x76\x13\xd8\xb7\xe0\x8e\x93\x15\x59\x50\xb8\x5e\xde\x4e\x78\x87\xaf\xe2\xfc\x57\xbf\x8e\x13\x42\xdc\x9d\xd3\x9c\xda\x35\xc5\xf6\xee\x02\xb2\x49\xae\xa8\xb4\x48\xeb\x33\x08\xc6\xe7\x9e\xff\xdf\x24\xc6\xf2\x69\xce\xff\x26\xdd\x85\x68\x1f\xae\x80\xad\x85\xd8\xcf\x2b\x60\x38\xe7\x88\x96\xad\x94\x96\x0d\xb2\xfb\x3a\x80\x9c\xa9\x1a\x38\x32\x27\xdb\x4b\xb9\xf3\x34\x6b\x75\xbc\x3f\x9d\x5d\x38\xb9\x2d\x39\x71\x52\x77\x93\xa3\x92\xed\xc0\x71\x4c\xb9\x22\x0e\xe4\x77\xf5\x2f\xec\x09\xb1\x6e\xe7\xa5\x48\xeb\xd2\xed\xdb\x6a\x7c\x0f\xe7\xa1\xae\xa8\x73\x71\x11\x28\xdf\x3f\x1f\x99\xa7\xc6\x7f\xcd\x69\x8b\xe7\xee\x49\xee\xe4\x64\x4c\xc8\x8f\x62\x53\xc0\xd1\xdb\xf1\x58\x96\x8f\x95\x58\xb6\xbd\xa2\x8d\x29\x09\xd8\xb7\x0d\xd1\xcf\x0e\xfb\x3d\x1c\xdf\xee\x4b\xa6\x4b\x80\x7e\xcd\xe2\x6c\x06\xa3\x85\x89\x17\x05\xf4\xa3\xbc\x12\xf9\x70\x39\xdd\xd6\x28\xcc\xc4\xeb\x34\xec\x5a\xeb\xd3\xe3\xec\x52\xd8\xe8\x3f\xdd\x5b\xec\xdf\xd1\xaf\x60\x8e\x50\x74\x09\xc3\xab\x9a\x36\xe6\x75\x55\xd5\xa9\x9d\xce\x04\x78\xb4\x48\x77\x58\xbc\xe5\x40\x5e\xab\x46\xc2\x8d\x46\x82\x65\x85\xdf\x09\xcc\x0a\xe4\x76\x54\x4e\xa8\xeb\x01\x0c\x38\x80\x4f\x68\x8c\xca\xcc\xf0\x59\x3e\x61\xed\x28\xd0\x9c\x7e\x2c\x47\x70\xcc\xd2\xf9\xe8\x0b\x0a\x37\x1c\x55\x54\xee\x3a\xce\x7b\x11\x50\xb4\x22\xd7\x48\xe0\xb1\xa0\x72\x79\x77\xd8\xa7\x68\x4e\x11\x5b\xba\x6a\xde\xc0\x89\x50\x82\x38\x72\xbc\x42\x3e\x6d\xd8\x4a\x79\x54\x72\xee\xce\xee\x77\x06\x7e\x60\xb1\x9e\xf9\x61\xd7\x5c\xd6\xf5\x4c\xd2\x99\xef\x73\x47\x6a\xad\x4b\x3f\x0c\x27\x69\xad\xa1\x00\x20\x66\x2f\x55\x8a\xeb\xfc\x11\xd3\xf5\x0f\xf4\x7e\x92\x8e\x14\x1c\xd2\x05\xe2\x95\x4e\x50\xe5\xfb\xca\x7c\x8c\x9d\xbc\xe2\x33\x66\x12\xf3\xc5\x9a\xa3\x5b\x59\xc7\xad\xd5\x6e\xae\xf3\x74\x53\x10\x85\x13\x68\xbc\x93\x4c\xd2\x7d\x8a\x18\x49\xae\x91\x8b\x53\x2f\xa5\x17\x2f\xdf\xb2\xc9\x9d\xca\xc1\xf7\x4a\x61\x8e\x4d\xa6\x33\xf0\x91\x24\xc8\xfa\xbd\x95\x75\x11\xf2\x19\x9a\x65\xd9\xa3\xbd\x48\x2f\x6b\x76\xee\xc3\x82\xf2\x3a\x6e\xdd\x3d\x11\x33\x7e\x77\xfa\x3b\xbb\x76\xf3\x50\xe5\x8a\x9e\x87\xf4\x6b\xe4\xa6\x68\xbf\x7a\x2a\x70\xec\xaf\x75\x71\xd4\xca\xfc\x8c\x7a\xf4\xd8\xf7\xb1\xdf\x56\x8c\xd6\x2a\x5f\x87\xbb\xa9\x27\xe3\x2a\x0f\xbd\x45\x6d\xde\x9a\x40\x17\x17\x95\xef\xb5\x5f\x46\x79\xbf\x5a\x61\x35\x4c\x16\x20\xa5\x01\xd2\x9e\x10\x47\x54\x5e\x94\xe9\xb6\x93\xd4\x18\x46\x3d\x30\x3e\x97\x2c\xcb\xf8\xe6\x52\x55\x49\x8d\x1b\xc6\xf5\x5f\x38\x33\x96\x51\x23\x47\xcb\x87\x9c\xc6\x2b\xd7\xf3\x6a\x4a\x8a\xb6\x26\x98\xed\xc9\xb5\x4c\xd5\x4b\xc1\xb5\x08\xe0\x88\xae\xd8\xc4\x71\x54\x80\x8f\x3d\x56\xc1\x9a\x7a\x1d\x4f\xec\x7a\x00\x4a\xcf\x9c\xfd\x60\x55\xd6\x11\x55\xf6\x9a\xc7\x3b\xa5\x71\xc5\xb1\x19\x9b\xcf\xa4\x2f\xfa\x5f\xf3\x56\xf6\xbf\xa6\xe4\xcb\x6d\x5b\xef\x9d\x1d\x2c\xbe\xd3\x4b\xe4\x43\x25\xbe\x27\xbe\x44\xfe\xca\x95\xf8\xac\x8b\xdf\x87\x1c\xba\xa4\xf5\x58\xc4\xc3\xba\x58\xde\x3c\xf9\xc5\x72\xa3\x2e\x54\x8e\x2f\xe9\x12\x27\xd8\x64\xc8\x81\xc6\x90\xc3\x5a\xaf\x96\x6d\x57\xa2\xc4\xf5\x00\x03\x10\xc8\xea\x35\xc8\xc7\x24\x42\x20\xd5\x93\x2a\xee\x9a\x93\xb6\x72\x80\x89\xba\x6b\x96\xc4\xf6\x1d\xe2\x70\x32\x15\x1c\x02\xa3\x90\x8f\xe5\x33\x07\x38\x2b\xc4\x96\xe3\x05\xe4\xe8\x06\xde\x3a\x33\x3f\xc6\x61\xb2\x89\x10\xb3\xfc\x3f\x13\x1d\x0c\xf2\xb7\x18\x47\x8e\xe7\x5d\x08\x32\x53\x7b\x67\x5d\xf4\xaa\x6a\x9a\x4e\x63\x74\x4a\x2e\x53\x01\x02\x4e\x3a\x07\xff\x93\x5a\xf2\x37\xaf\x9c\xac\x44\xb2\x16\xbc\xee\xe2\x68\xd2\xde\x4a\x19\xd7\x6a\xe0\xde\x93\x48\xec\x26\x31\xca\x96\xae\x54\x6d\xb8\x6d\xdd\x3e\xb0\x2a\x32\x9a\x25\xe8\x7c\xd3\x2f\xb0\x46\x05\xd6\xa8\xc2\x1a\xb5\xb1\xf6\xb5\x6e\xff\x37\xbd\x65\x91\x53\x18\x45\x14\x31\xb6\x87\x17\x2c\xdf\xee\xc6\x2d\x7f\xc2\x4e\x82\x8a\xbb\x6b\xbd\xa1\x7c\x7d\xc2\xbe\xaf\xeb\xb7\xf2\x2e\x11\x1b\x83\xa1\x68\x0d\xf9\xf2\xb0\x51\xac\x8d\x92\x27\xcd\x95\x3b\x45\xed\x90\xfb\xfb\xf2\x9b\x0f\xa2\x91\xff\x5a\xa2\xd6\xff\x20\x50\x9b\xfa\x42\xfc\xf1\xfc\xbb\xdf\x52\x07\xef\xa3\xfd\x5a\x8f\x07\x45\xf0\xa5\xef\x51\x14\x53\x71\x20\x38\xf9\xaa\x77\x00\x77\xe6\xc3\x93\x7c\xf0\x51\xde\xa1\xc8\x7b\xa0\xe2\x7e\xf0\x0e\xda\xa3\xfd\xaa\xa5\xe1\xc3\x42\x7c\xeb\x85\xd8\xac\x19\xa7\x08\xae\x7e\x7b\x54\xfc\x61\x82\xc1\x6f\x43\x84\xc4\x84\xcf\xc9\x06\x47\x7b\xb7\x39\x52\x8e\x61\x2f\x5d\xd9\xcd\xd4\x4a\x7a\xe6\x67\x06\x5c\xa5\x13\x67\x1a\x72\x1c\xed\x8c\xa0\xc7\x0d\xfa\xd9\xd8\xc6\x29\x4e\xd6\x24\x21\x8b\xdb\x07\x5a\x81\x37\x45\x2b\x70\xac\x83\x88\xf4\x1c\x76\x30\x01\x57\x76\x1d\xc5\x2c\x24\xd7\x88\xde\x8e\xc3\x25\x8c\x71\xa1\x5b\xd8\xda\x2d\xf9\xae\x2d\xcb\xec\x49\x2c\xcb\xa4\x8b\x65\x39\xf9\xba\x96\x65\xf2\x6d\x2c\xcb\xc9\x37\xb2\x2c\xc7\xd5\xa7\xa1\x68\x59\x6e\x3a\x72\x71\xeb\xd9\xd8\x0c\xcb\xbc\x1c\x3e\x86\x79\xf9\x21\xf5\xcb\x2d\x43\x74\xe3\xf5\xe6\x63\xa4\x32\x62\xc9\x66\x31\xd1\x1c\x45\x5e\x86\x9a\xb4\x46\xed\xf7\x9e\xb6\xed\x36\x76\x3d\x90\x00\x62\xd9\x6b\xc1\x86\x26\xac\x21\x3b\xaa\x78\xed\x78\x40\x52\x5b\x99\x7d\x08\x68\xea\x3e\x99\xce\x80\x61\x1e\x35\x69\x89\xd2\x73\xd2\x62\x9f\x06\x4e\x8c\x17\x14\x31\x66\x3d\xe1\x88\xae\x62\xac\x9c\xec\x1a\xed\xd8\x58\x89\x4a\xf9\x34\x06\x05\xb9\xe9\x02\x4f\x8a\x18\x65\x2e\x73\xef\xb6\x00\x2b\x3b\xae\x9a\x5e\x17\xeb\x37\x2c\x63\xd0\x20\xa4\xab\xf1\x3c\xdf\xbc\xda\x66\x4e\xd5\xf6\x82\x96\x4c\x48\xdb\x27\x6a\xb6\x4f\x6a\x6b\x87\xa3\x91\x0b\x03\xc7\xf1\xc0\xb4\x88\xf2\xce\x08\xee\xf0\x5d\xef\x82\xd6\x21\x98\x9a\xb8\x38\xbd\x53\xba\x20\x09\xe7\x90\x64\xbc\x5e\xbf\x8e\x79\x3c\xec\x25\x94\x95\x2d\x22\x39\x01\xec\xb1\x64\x53\xae\xb7\xc1\x47\x31\x8a\xc6\xe0\xab\xdd\x1d\xa4\x1d\xb3\x44\x4e\xc9\x1f\x1a\x79\x47\xa5\xf4\x21\x5d\x8e\x9d\xca\x21\x52\x3c\xdb\x93\x5c\x27\xe6\xab\xfe\xeb\x2f\x31\xe3\xcc\xf1\x24\xdb\x71\x32\x85\xd1\x3b\xba\xa4\x08\x5e\x1d\xc9\xbe\xaa\x36\xed\x84\x07\x56\x10\x98\x05\x9c\xdb\xf0\x02\x2a\x65\x93\x06\xcc\x64\x2c\xe9\x32\xa2\xac\xb1\xb7\x6d\x88\x34\x43\xb9\x48\x33\xee\x01\x5c\xd8\x60\xbc\xef\x06\x33\x9f\xdd\x37\xe5\xe8\x10\xdc\xd2\xb8\x6c\x26\x79\xef\xde\xad\xdb\xde\x62\xaa\xb3\x77\x7e\x6d\x07\xdf\x3c\x65\x6e\xf3\xc8\x1e\x09\x4d\x7b\x99\x1f\xbc\x2c\x1e\xeb\x8c\xce\x56\x92\x6e\x93\xdc\x39\x97\x97\x50\xca\xc9\x40\x4f\xb6\xe2\x7d\x66\x5a\x91\x56\x10\x15\x6e\x03\x18\x0d\x27\xf9\x44\xe2\x7b\x65\xd1\x2a\x2e\xd9\x7e\x46\x6f\x3f\x90\x82\x3f\x75\xca\x6e\x20\x95\x9e\x8e\x3b\x62\xff\x96\x5f\x2f\xeb\xde\xad\xfa\xbe\x44\x29\x4b\x9d\xeb\xfb\x35\x6a\x3f\x46\x64\xf2\x9e\x39\xdd\x6b\x59\xba\xc9\xca\x34\x04\x27\xfc\xfe\xe9\xc8\xca\xf1\xa3\xad\xb5\x90\x7b\xe8\x5e\x45\x2f\x46\x2a\x00\x37\x8b\x26\x4f\xc4\x8c\xac\x02\xbd\x28\x5a\xf5\x6a\xb4\x04\xd1\x74\x49\xa8\xd4\xb1\x39\x40\x4f\x1a\x52\xba\xe3\x55\xba\x3c\x39\x1c\x2e\xf6\x4f\x74\xfe\x8d\x29\x31\x99\x45\xe0\x9b\xd8\x37\x86\x8e\xed\x9e\x9a\x7e\xa7\x3b\xf2\x46\x26\xb3\x3f\x9a\x4f\x36\x97\x1e\xfb\x6f\x3f\x85\xe4\x6e\xa1\x88\x82\x5b\xf4\x0b\x25\xb4\x12\x06\x2f\x10\x7f\x11\xf2\xf8\x1a\xb9\x92\x12\x37\x26\x55\x52\x39\xfc\x95\xf4\x53\x5f\x7a\x0b\xe4\xca\xc1\x29\x97\xe6\x5e\xb4\x60\x6f\xaf\xe4\x1b\x33\x50\x63\x74\xa3\x91\xfd\x9a\x52\xc1\xa6\x3f\xc0\x05\x3a\xc6\x84\x1f\xab\xc9\xa4\x49\x7f\xfd\x90\x44\x28\xf8\xfd\xd9\xef\x01\xea\x93\x82\x48\x73\xfd\xde\x0e\x70\x08\x5f\x37\x38\xc4\x65\xcb\x08\x2f\x93\x8a\x64\x02\x80\x5a\x92\x20\xb4\xbc\xca\x0b\xe2\xf5\x0b\x4a\xe1\xad\x1f\x33\xf9\xbf\x56\x4e\xed\x44\x50\x3b\x17\x79\xf7\xf7\xb1\xfc\x97\xc9\x7f\x2d\xe4\x29\xa4\x08\xe4\x7d\xbe\x5d\x23\x8d\xba\x37\x2a\x0b\xc4\x31\xe4\xe2\xac\xf3\x63\x4e\x8e\xd9\x9a\x22\x18\x1d\x63\x82\xc7\x31\x57\x97\x99\xc7\xc6\x3e\xe9\xff\x17\x7e\x83\x8f\x09\x8d\x10\x15\xa0\x97\xe8\xd8\x80\x00\xd9\x00\x8a\x41\x1d\x13\xb9\x2f\xd8\xf1\x6a\xc3\xf8\xf1\x12\x5e\xa3\x63\x78\x3c\x55\x77\xe7\xbe\x84\xe7\x84\xce\x5c\xef\x78\x85\xf8\x92\x44\xbe\xe3\x6d\x5d\xaf\x10\x38\xd5\x6f\xee\xe8\x51\x26\x1e\x21\xc6\xe9\x26\xe4\x1b\x8a\xbe\xdd\xec\x99\x3a\x5a\xf1\xdc\xf8\x0f\x31\x4e\x85\x7e\x19\x04\xfc\x76\x8d\xc8\xfc\x18\x59\x0b\x0e\xb8\x77\x94\x73\x72\x58\x53\xc2\x89\x00\xf4\x39\xf9\x24\x1b\xfa\x21\x4c\xc4\xd6\xd0\x6c\xf3\xdf\x04\xdb\xd4\xcc\xd2\x51\x8d\x9c\x20\x08\xf0\x68\x24\x4e\x0b\x56\x08\x20\x74\x34\x72\x71\x90\x7b\xa2\x6e\xb2\x80\xf3\x0e\xae\x65\x83\xfb\x7b\xe7\x13\x52\x6d\x2f\xd4\xb2\xcc\x29\x59\xb9\xc8\x9b\x38\x2f\x0c\xf3\xd4\x80\xa7\xff\x9f\x7b\x31\xf9\x25\xbe\x7f\xe3\x61\xee\x5e\x4c\xfe\xed\xfe\xfc\x0f\xf7\x3f\x3c\xf7\xdc\x8b\xc9\xcb\x04\xae\xd6\x28\xf2\x54\x0f\xff\xf7\xa9\xcf\x11\xe3\x2e\xf6\x2e\xd4\xdc\x74\xe9\x96\x6d\x29\xe9\xa6\xab\x2b\x59\xdc\xdf\xf3\x3f\x21\xed\xf2\xa0\x82\x5b\xd3\x5f\x47\xc6\x41\x02\x07\x67\x80\x4a\x9a\xa1\x76\x0d\xf7\x7e\xc4\x7f\xe4\x3f\xe2\x67\xcf\x3c\x3a\xc5\xb3\x00\x4d\xf1\x2c\x75\x58\xc9\x45\x61\x29\xfc\x6f\xb0\x22\x14\x91\x73\x62\x96\x40\x2d\xe6\x68\x54\x58\xd4\xe3\xd8\x68\x64\xd6\xd6\xcc\xe1\xe6\x09\x43\xae\x7a\x30\x30\x49\xb9\x68\x1d\xb0\x7c\x59\x57\x04\x40\x6b\xf8\x45\x6b\x4d\x49\x4f\xe2\x90\x72\xa6\xee\x4c\xfe\x27\x53\xfe\xb3\xfb\x13\xe9\x9b\x8b\xf0\xb5\x27\x3e\x48\xf8\x2f\x1f\xdf\x3a\x5e\x7a\x9d\xe2\xfc\x8f\xb1\x0d\xa5\x8f\x8c\x11\xd0\xdf\xd0\xc4\x33\x21\x5f\x6a\xa8\x3e\x45\x21\x59\xe0\x58\x2a\xb3\x20\x09\x88\xe8\x9c\x66\x8e\xbf\x0c\xdc\x6d\x33\x46\xf9\xf3\x0d\xd6\x95\x4a\x3d\xcf\x03\x71\x90\x4c\xcf\x66\x60\x13\x24\xfa\x78\x9c\x97\x2d\x0e\xb6\x58\x38\x8d\xcb\x82\xa8\x2d\x85\xce\xcc\x78\xa1\xbb\x49\x5f\x7b\x82\x27\x57\x38\x16\xf4\x17\x1b\x8c\x3a\x88\x34\x9e\x6b\xc5\x08\x71\x46\xf4\xa2\xe8\x44\xf8\x2a\x77\x09\x91\xa7\x78\x34\x72\x51\xcd\x4a\x5d\x54\x48\x1c\x1a\x32\x27\x78\x98\xf6\x40\x09\x2a\x52\x7d\xd6\xa5\x8d\x1a\xc4\x15\xd3\xaa\x28\xa4\x34\x07\x2b\xa5\xde\x19\xfb\x26\xa4\x84\x49\x8c\x30\xaf\x39\x47\xea\xe5\xe9\x92\xf3\x75\x73\xa6\x0b\xcb\xf9\x24\x0a\xbb\xa5\xd8\x92\xa7\x58\xe7\x3d\xe9\xd6\x42\xa7\x37\x89\x62\x26\xb8\x55\xd4\xd9\x3c\x22\xf6\x7e\x1c\x42\xae\xea\x48\x75\xdc\xb1\xba\x88\x85\xeb\xa5\x57\x01\x6a\x62\xd6\x56\x56\x98\x15\xa8\x0e\x99\x97\x33\x1e\x5b\xd3\xca\x4b\xcc\xf5\xb9\x7a\xab\x62\x0e\x75\xd8\xa3\x5a\x05\xdf\x64\x90\x73\xbc\xd1\x48\x01\x31\xcb\xfd\x56\x01\x39\xe0\xce\x80\xe9\x7d\xf0\x54\x9e\x08\x59\x0e\xae\xcd\x3a\x2a\x27\x1d\xd2\x97\xf0\x48\x5f\xac\xeb\xd1\x4d\x72\xb2\x7e\x69\x5e\xf7\xf7\x72\x28\xfa\x39\xbc\x24\x94\xbb\xde\x56\xee\x5c\x40\x01\x3c\xca\x56\x67\x8d\x28\x8b\x19\x77\x5d\x18\x70\xe0\xd2\x00\x79\x31\x76\x71\x70\xb7\xf5\x6a\x1c\xdc\x44\x07\xfa\x7c\xc0\x5e\x0e\x6e\x78\x4a\x67\x01\x04\xd8\x2b\x26\xf2\xfa\xff\xd9\x7b\xfb\xee\xb6\x6d\xb3\x7f\xfc\x7f\xbf\x0a\x99\xdf\x73\x5c\xf2\x1e\x24\x5b\x8e\xd3\xa6\xea\xcd\xb9\xae\x93\xae\xd9\xf2\x74\x3b\xe9\xba\x4e\xd3\xc9\x81\x49\xd8\xe2\x42\x01\x2a\x08\xd9\xf1\x6c\xfd\x5e\xfb\xef\xe0\x89\x04\x49\x90\x22\x29\xd9\xb1\x33\xf7\x9c\x2d\x32\x09\xe2\x19\x17\xae\xc7\xcf\x55\x23\x94\x18\x9c\x75\x8d\x78\x4c\x6b\xf8\xec\xcb\x28\x0e\x03\x48\x57\x26\x97\xd4\xdb\xc7\xa5\xbe\xa3\x9f\x67\x5c\x96\xbe\xe2\x9d\x44\xfc\x28\xbe\x48\xef\xfc\x43\xcb\x7e\xd4\x8c\xda\xd2\x46\xee\xd1\xce\x4e\x4d\x73\x39\x96\xcb\xf7\xfd\xf4\xf9\xb6\xfe\x9d\xb1\x78\x87\xba\x6f\xa3\xb4\x41\x8f\xf3\x18\x45\x7c\x05\x91\x88\x27\x63\x62\xc9\x59\x8f\x79\x9e\x95\x27\x3e\x86\x98\x4b\x51\x9c\x63\xec\xc1\x5e\x10\xc3\x24\xe9\xc1\xa4\x07\x53\x36\xdc\xf1\x4a\x3e\xb6\x06\x9b\xc5\xf9\x2a\xed\x7f\x8a\xb5\xff\x29\xf5\x99\x60\xb0\x0c\x47\x57\xdf\xfc\xe3\xe6\x66\x7b\x08\xe8\xc0\xdc\x49\xfe\xf6\x1e\x70\xc4\x86\x73\x22\xdc\x13\xf0\x26\x03\xbd\xb3\xfc\xed\xbd\xd4\x45\xb1\x44\xd2\xa9\x48\x38\x48\xbd\x65\x25\x48\x80\x9b\xf8\x36\x86\xee\x04\x9d\xc5\x28\x60\x3b\x3b\xea\x07\x3f\x66\x87\xc6\xef\x51\x71\x23\xc9\x91\x15\xd4\xf8\x84\xba\x3f\x6c\x97\x18\xf1\x29\x4c\x0c\x07\x54\xc5\x8e\x03\xe6\xc9\x9c\xee\xdb\xbe\xef\x22\x3f\xe0\x0c\xe3\x0f\xde\x0f\x86\x38\xc3\x59\xfb\xe8\x2c\xf3\x10\x5b\xe5\xce\x4a\xf9\x07\xda\x41\x5a\xf4\x5f\xfc\xbf\x6c\x0f\x7b\x23\x38\x10\x33\xba\xe4\x7b\x84\x8f\xe1\xe6\xc6\xdc\x2a\x39\x30\x7b\x37\xd6\xad\x49\xd2\x25\x07\xf2\xf6\xcc\x10\xaa\x4c\x17\x52\x34\xf8\xf8\x51\x0c\xf7\xe3\x47\x9f\x01\x24\x1b\xf0\x0a\x9c\xb4\x64\x00\x8d\xeb\x26\xcf\x5a\xfb\x85\x95\xb8\xb9\xd9\xd6\xd3\x9f\x1e\x08\xc5\x51\x6f\x0f\xf9\xbc\x94\xde\x0e\x92\x29\x9c\xe5\x8a\x58\x8e\x99\x88\xb3\xd4\x85\xf6\xb6\x18\xbd\xd2\x83\x78\x0e\x19\xaa\x94\x9e\x4a\x8d\xb9\xbc\x38\x18\x9b\x14\xc6\xbb\x16\xfe\xdb\xdb\x7b\x4b\x99\x96\x29\x3d\xf1\xdb\xc3\xe5\xd2\x4d\x97\xa6\x70\xe1\x62\x40\xc5\xe2\xf3\xfe\x32\xbd\xd4\x81\xe4\x4f\x4d\x52\xb0\x85\xfd\x72\x27\x68\x76\xcf\x00\xe8\x2d\x51\x9c\xa0\x1e\xf6\xab\x32\x06\xaa\x0e\x2c\xe4\x0b\x6c\x1e\x92\x9c\x4b\xf0\x36\xbb\xb9\x71\xa4\x0c\xeb\x6c\xfb\x3e\x75\xf9\x56\xcd\xe6\x32\x3d\x33\xec\xb0\x2a\xf4\x1f\x19\xd4\xe5\x04\x9d\x21\x8a\x70\xa0\x49\x0c\x6f\xbc\x37\x85\x09\xfe\x86\xf5\x4e\x11\xc2\xbd\x08\x47\x2c\x82\x71\x94\xa0\xb0\xd7\xef\x89\x9b\xd4\xf5\x72\x25\xf8\x12\x20\xc3\xed\x51\x08\xfb\x23\x96\x75\x3f\x30\x88\x79\x60\xdf\xba\x87\xd9\xf1\x31\x9e\x5a\xe9\x73\xb6\x9b\x6f\x6e\xac\x5f\x71\x1a\xeb\x6d\x4e\x98\x0b\xfd\x7c\xa0\x22\x93\x72\x4d\xe2\x81\x33\xf3\xbc\x14\xb8\xda\xdc\xfe\xce\xd6\x24\x25\x2a\xcc\x4e\xe1\xdf\xf3\xf9\xed\xa1\xcf\x73\x2a\xb1\x39\xa5\x92\x02\x45\x6c\x8a\x68\xef\x14\xf5\xf8\xd7\x3d\x42\x73\x24\x7f\xcb\x38\x18\x7a\x76\x15\x82\x20\xdb\xd9\x31\x48\x1d\xb8\x36\x76\xac\x36\x37\x22\x93\x29\x28\x32\x0c\xcb\xa5\x07\xd8\xce\x8e\xa4\x3e\x4b\xcf\x5d\x00\xc3\x42\x20\x55\x1b\x4a\x37\xe6\x47\xee\xc2\xdb\x32\x76\x6c\xba\x60\x50\x6e\xe8\x85\x07\x2a\x76\x7e\xea\xe0\xef\x2f\x80\xcb\xfc\xf1\xf5\x27\x74\x35\x72\x0a\x7c\x9d\x03\x64\x77\xf3\xb3\x9c\xf2\x8a\x05\x6b\xaa\x36\x4b\x8c\xf2\x56\x8a\xa5\x07\x12\x37\x70\x17\xd9\x94\x78\xa0\xdc\x90\x3c\xdc\xf6\xae\x2e\x81\xec\x5d\x2a\x5b\x97\xfb\xa5\x69\x69\xb9\x25\xe3\xa3\x9a\x36\xf4\x31\x0a\x8b\xa9\xfb\x0e\xcd\x40\x19\xe6\x0d\x28\x0a\x17\x79\xa0\x0b\x23\x24\x22\x4b\xc2\x3f\xc6\x93\x43\x34\xc6\x13\x3f\x44\x01\x09\xd1\xaf\x27\x2f\x8f\xc9\x6c\x4e\x30\xc2\xcc\xe5\x2f\xbd\x91\x78\xcb\x7f\xf2\xcb\x01\x5c\x2f\xf9\xe1\x5d\x4e\xbc\x9d\x1d\xe2\x1a\x5b\x0b\x30\x0f\x60\xf1\x0c\x60\x0f\x2c\x96\xb9\x54\x64\x67\xf5\x1c\x63\x12\xe1\xf3\x78\x03\x68\x5a\x5f\x73\xd4\x10\x6d\x13\x35\x44\x9b\x46\x0d\x61\x1d\xa1\x43\x6b\xa2\x86\x04\x23\x0a\xe8\x5d\x44\x0d\x51\xcf\x1b\x19\x7d\xda\x78\xd4\x10\xad\x8e\x1a\x82\x0f\x31\xaf\xa8\x2d\x6b\xdc\x1d\x82\xe1\xd6\x43\x3b\xb5\xc8\x19\x94\x34\x41\xd5\xad\x52\x60\xd0\x3c\xee\x13\x01\x0a\x47\x37\x59\x02\xac\x50\x16\x95\x92\x23\x39\x34\xbe\xad\x06\xd6\x35\xd2\x7f\x43\x23\xfd\x37\xb1\x00\xe9\x46\xa1\x86\x28\x6c\x96\x29\x4e\x3a\xf0\xed\x4a\x02\x92\xec\xc2\x20\xbe\x1d\xbb\xbd\x8d\x35\x72\x5d\xeb\x6a\x0e\x12\x40\xfd\x8c\xfd\xc3\x87\x8e\x33\xc2\xde\x80\x91\x57\xe4\x12\xd1\x63\x98\xa0\x94\xff\x15\xb9\xe4\x73\xfe\x61\xd2\x6a\x99\x2f\x6c\x20\x56\xde\xdc\x94\x3f\x79\xf9\xbc\xe6\x83\xa5\x98\xc7\x06\x33\x97\xfa\x6d\xde\x8f\xf9\x2b\x4c\x1f\x80\xf9\x31\xbf\x17\x5e\x3e\xb6\xc9\x02\x24\x5f\xf2\x39\x4a\x98\x08\x9e\x20\xd8\x5a\x3c\xf1\x69\xe1\x49\xec\x3b\x47\x71\xdc\xd3\xbe\x45\x3d\xf7\x7f\x3c\xa7\x7a\xf5\x60\x3a\xd9\x89\x5e\x1d\x92\x7b\xe4\xfc\x8f\x23\x63\x92\xc4\xbb\xd8\xf2\x8e\x58\xde\x35\x5e\xb7\x4f\x17\x55\xf7\xbc\xd2\x03\x45\xe7\x53\xd6\x67\x34\x9a\x6d\x54\x17\xbc\x72\x3d\x53\xad\x00\x1e\x24\x00\x66\xeb\x49\xf9\x7a\x52\x73\x06\xdd\x3d\xc0\x32\x7e\x3f\xb7\x78\x32\xbb\xaf\xb3\xeb\x78\x9a\xa0\xee\x6a\x82\x5a\xb1\xe3\x61\xfe\x79\xf3\x79\xc4\x24\x44\xf7\x63\xeb\x77\x26\x1d\x02\xed\xad\x15\xe9\x38\x92\x18\x67\x9b\xa0\x1f\x22\xab\x87\x76\x37\x7c\xd0\xf3\xf8\x5e\xfb\x4c\x6e\x8e\x0a\xdf\xdc\xe4\xf7\xf5\x07\x78\x2e\x42\xac\xc6\x13\x6f\x90\x90\x99\x15\x3e\x4f\x34\x81\xea\x16\xc6\xd6\x8d\x77\x84\x32\xd1\x11\xa9\xb0\xa9\x3c\x27\x6d\x56\xb6\xe4\xff\xf1\xf0\xd6\xb4\xc3\xb5\xaa\xb9\x5c\x21\xf4\x37\x5e\xd9\xa3\xe3\x57\xc9\x20\x9f\x42\xa0\xe1\x42\x0b\xb6\xb1\x76\xb5\x2d\x2d\x99\xa9\x09\x36\xd4\x4e\xe3\x7d\x31\x17\xa3\x7c\xdc\x17\xeb\x9d\x2e\x4a\xe2\xc7\xb3\xd5\xec\x6c\x89\x63\x15\xa1\xdb\x3a\x50\x1a\x55\x35\xe4\x7c\x30\x6b\xde\x8e\x01\xa1\xba\x91\x73\x65\xb9\x44\xcb\x6c\xdd\x22\x10\x21\xc8\x77\xcb\xd3\x69\xeb\x0b\x20\x3e\x1d\x24\x20\x31\xb6\x0c\xe1\x5b\x86\x14\xb7\x8c\xb2\xdd\x6e\xef\x49\xe3\x6d\x2f\xc9\x39\x58\xe8\xf0\x37\xc7\x1b\x69\xfd\x8c\x6b\xd9\x59\x20\xd1\x82\xed\x33\xcf\xdb\xb2\xd4\xc3\xe0\x79\x75\x1d\xd9\x55\x9b\xd5\x73\x60\xaf\x47\xa7\x0c\xf0\x46\xaa\xdf\xd0\x4f\x3f\xf9\xce\xe8\xc6\x77\x3a\xc8\xfb\x12\x52\x1c\xe1\x73\x67\x24\x2d\xd3\x34\x62\x51\x00\x63\xf5\xe7\x1c\x26\x89\x78\x99\x93\xb2\x55\xaf\x64\x86\x4f\xd3\xff\xc7\x60\x81\xa1\xe7\x79\x7f\xde\x4b\xe3\xb4\x53\xbb\x49\xfe\x41\xd5\x64\x79\x37\x37\x35\x53\x20\xe3\x5b\x94\x0f\x47\xaa\xab\x41\xae\xa9\xa9\xc9\xbb\x15\x32\xef\x90\x15\x8f\x80\x61\xed\x12\x5f\x72\x41\x5e\x9c\x06\x56\x71\x02\x70\xbb\xbd\xff\x95\x70\xe3\x83\x0e\x2c\xb9\x46\x13\x58\xc1\x4f\x8a\x0f\x33\x07\x32\x6b\x15\x29\x77\x0f\x9c\x51\xe6\x3b\x66\x2d\x2a\xd9\xc6\x4e\x17\x18\x23\x9f\xd0\x3d\x51\x1a\x74\x5d\xab\xa3\x20\x40\x49\x42\x68\x93\x39\x7f\xbc\xfa\xda\x5f\x7d\xc5\xe6\x38\xd7\x7a\x17\xec\x2a\x8d\x60\x1c\xfd\x87\x6f\xd2\x7e\x1a\x5e\x6b\x5e\xaa\x3f\x22\xde\xab\x7e\x08\x19\x34\x4a\xef\xfe\x3b\x21\x78\x03\x17\x6b\xe5\x07\x69\x5f\xae\xf3\x9a\xee\x9c\x67\x85\x91\x38\x50\x95\x5f\x2e\xbd\x06\x03\xe5\x9d\xef\xc3\x79\xd4\x78\xa4\xa2\xf0\x43\x1d\x2d\x45\x49\xb3\x35\x15\x05\x1f\xe8\x28\x0b\x4a\x6d\x50\x55\xcc\x70\x4e\xcc\xa5\x74\x23\x21\x8a\x65\x2d\x77\x8a\x3c\x3c\xa7\xd1\x0c\xd2\xab\xbf\xa1\xab\x11\x1e\xbc\x3b\x79\xf9\xfa\xe8\xe4\xf7\x8f\x7f\x7b\xf1\xbb\x88\x70\x97\x4f\xdf\xbf\xfa\xf5\x2f\xe2\x11\x45\xc9\x9c\xe0\xf0\x67\x42\xff\x6f\x81\xe8\xd5\x09\x0a\x08\x0d\xad\x06\x97\x9e\xe1\x63\x58\xc1\x91\xd8\x4d\xb4\x9c\xf2\xe0\xf1\xde\x44\x65\xd5\x6c\x18\xa9\x59\x39\xc1\xab\xd7\x43\xf8\xba\x96\x39\x77\xfe\x78\x57\x3e\xac\x7a\x3b\x45\x30\x44\x34\xb1\xad\x62\x18\xd8\x9e\x6a\x15\x4d\xa9\x3a\x69\x81\xe9\x9f\x45\xf8\x1c\xd1\x39\x8d\x30\x43\xd4\x16\x6b\x03\x20\x20\x20\x31\x8c\xbf\x77\x8c\xf9\xb7\x99\x5d\x18\xf9\x65\xde\x80\xfa\x45\xb3\xee\x9f\xf7\x77\x76\x52\x7b\x7d\x66\xc4\xdd\x37\x2d\xba\xfb\x93\xd1\xf5\x12\x40\xff\x7a\x59\x88\x2d\x57\x06\xf0\x0a\xc3\xee\xb8\xc0\xff\x4e\x7c\x3e\x42\xbe\xb3\xd2\x06\xe9\x20\x0c\x76\x76\x5c\x38\xc6\x83\x5f\x5e\x1c\x3d\x7f\x71\xf2\xfe\xe3\xf3\xa3\x0f\x47\xc7\x2f\xde\x7c\x78\x71\x52\xfc\x9a\x17\xf6\x80\x59\xf6\xcd\xd1\xeb\x17\xef\xdf\x1d\x1d\xbf\x28\x16\x35\x1a\xc0\xc9\x21\xff\xbf\x51\x46\x94\x98\x51\xc3\xfb\xdf\x5f\xff\xf4\xf6\xd5\xc4\x87\x80\x2d\x81\x2d\x74\x02\x32\x06\x83\xe9\x2f\x72\x0f\x8e\x22\x60\x6c\x9e\x91\xbb\x07\x12\x43\x50\x19\xfc\xfc\xf6\xe4\xc5\xcb\xbf\xbc\x11\x67\x98\x0c\xde\x88\x9e\xf1\x3f\xbc\xe2\x89\xae\x34\x7c\x6e\x55\x49\x9a\x1a\xc1\xd1\x45\xc0\x85\x3e\x05\xc4\x17\xa6\x42\xdd\x15\x17\x0f\x32\x02\x03\xf0\x40\x11\x15\x2e\x47\x05\x1e\xc8\x8b\x30\xd0\x3b\x84\x83\x19\x9c\xbb\xc4\x1b\x8d\xe1\x44\xfd\xe4\xb4\x40\x47\x0c\x41\x40\x84\x7b\x73\x13\x3a\xd4\xae\xef\xcd\x3b\xed\x52\x41\x95\xf2\xdd\x90\xf6\x5b\x4b\x3f\x32\x03\x8b\x89\xc5\xa8\x2b\x54\xf6\xdf\xac\x31\x7b\x57\x33\x2f\x37\xce\x34\x33\x11\x32\x84\x3d\x40\x73\x7d\x4e\x00\x01\x78\x9c\x5b\xeb\x89\xe7\x96\x7a\xfa\xab\x70\xde\x7e\x08\x3d\x7d\x2e\xf2\x29\xaf\xee\x69\x92\xef\x69\xd4\xa4\xa7\x2a\x70\x20\x4d\x6f\xe5\x5e\x2f\x41\x54\xe8\x66\x04\x12\x4b\x37\x5d\xe4\x5f\x2f\x01\xa7\xbb\xfc\x6d\x32\xf1\xc4\x6f\xf3\x50\x01\x3c\x36\xff\x9c\x78\x00\x79\xde\x38\x92\x37\x1a\xc0\x84\xce\xc4\xd5\x73\x22\x06\x9a\xa0\x51\x99\xc8\xcb\xde\xa9\x15\x48\x3f\x78\x07\xaf\x62\x02\x43\x57\x16\xd1\xc3\x4e\x5f\xbf\x46\x4c\xfa\x72\x10\xf1\x7e\xcb\x11\x08\x3a\xce\xb6\x04\x5a\x24\x83\x19\x62\xd0\x4f\x3c\x45\x81\xcd\xeb\x99\x7f\x14\xbb\xd7\xbc\xc0\x28\x59\x02\x26\x5d\x17\xa4\x2f\x83\x27\x2b\x2b\xc6\x2c\x44\x87\x78\x14\x2d\x01\x8b\x66\x28\x61\x70\x36\x2f\x33\x4f\x2e\x46\x97\xc2\x3f\xd5\xe3\xe2\xc4\x87\x68\x86\x5c\x73\xf4\x22\x35\x54\x6e\xe4\xea\x6a\xe3\xdd\x8b\x7d\x58\xa6\x84\x37\x37\xd7\xcb\x2d\x99\x63\xbb\x67\x79\xad\xc6\x75\x1d\xc0\x60\x8a\x94\xe3\xda\x28\x1e\xd3\xc1\xf1\xd1\xf1\x2f\x2f\x3e\x1e\xbf\x7d\xf3\xe1\xe4\xed\xab\x02\x39\x06\xc1\x82\x26\x84\x8e\x62\xa3\xbe\x97\x6f\x9e\xbf\xf8\x47\xb1\x5c\x18\xe4\xca\x54\x5e\x05\x29\xf4\x69\x83\xbb\x60\xb9\x55\xf4\x4a\x8b\xc7\xce\xe7\x3e\x85\xf8\x1c\x39\x93\x9d\x1d\x37\x1a\x88\xdf\xb9\xc7\xc6\x15\x15\xeb\x0c\xe4\xa2\xa8\xe0\x19\x2e\x60\xec\x0f\xd1\x93\xff\x49\x5f\x79\x40\x6d\x03\xdf\xf7\x13\x51\x8e\x9f\x7e\xb9\xfa\xe9\xe2\xb9\x1e\x80\x96\x9b\x12\x19\x9e\x84\x42\xfa\xbc\xc2\x01\x5f\x47\x07\xc8\x5a\x84\xf7\x07\x88\x8c\x45\x55\x3b\xd4\xea\xa0\xda\x28\x76\xca\xe4\xcb\x02\x42\x68\x18\xe1\x1a\xd0\xb5\x16\x5c\xb5\x51\xd9\x7d\x65\xae\xdb\xb2\xb9\x9c\xc5\x6c\x37\x2f\x77\x18\x64\x66\x8c\x5b\x6a\x5f\x6a\x18\x8d\x6a\xa5\x91\x66\x6a\xf3\x84\xb3\xbc\xcb\x8a\x57\x82\x56\x68\x63\xa5\x00\x96\x47\x60\x94\xfa\x4a\x73\xc6\xc2\x16\x92\xc5\x38\x69\xc7\x3e\x35\x6f\x7f\xe8\x23\x80\x39\x57\xcd\x2a\xb8\x6a\x4e\xb3\x3b\x05\x1a\xb1\x31\x16\xec\x9d\x44\x19\x01\x18\xc0\x9c\x87\x5e\x93\xd8\xa3\xdc\x7e\xc8\xa3\xcf\x6f\xe0\xd0\x14\x6b\x5c\x11\x9a\xf4\x15\x7b\xa1\xc2\x5b\xc1\xae\xa7\x4d\xb0\xeb\xc9\xdd\x62\xd7\xd3\x2f\x83\x5d\x4f\x1e\xa2\x1c\x9b\xdc\x57\x6d\x0a\xcd\x69\x53\xa0\x0b\x33\xb0\x6b\x91\x20\xd2\xec\xc3\xe0\x98\x9f\xed\x71\xf6\x68\xe2\x79\x15\xba\x97\x64\x35\x11\x92\xca\x14\x93\xf2\x58\xf5\x7c\xc9\xa6\x14\x7d\x2d\x90\x72\xd6\xbc\x7e\x56\x2d\x56\xeb\x6a\x7e\x96\xf1\xc6\xeb\x54\x51\x21\x75\xb6\xae\xa7\x42\x26\x6c\x5d\x4f\x85\xc4\xd6\xac\x9e\xb6\xf7\x9d\xd5\x13\xb6\xe3\x4d\x97\xd5\x55\x7f\xc7\xe9\x78\x73\xe2\x8e\x1d\x07\x38\x23\xe3\x7f\x1d\x13\xc8\xd4\xd7\xd4\x38\x67\x8c\x9e\xc8\xfb\x9e\x17\x63\x5d\x92\x89\x70\x40\xc2\x4a\x14\x10\xf5\xd6\xf1\x40\x84\xa3\x9c\x42\xdf\xa4\x9f\x9e\x88\x33\x1a\x2c\xa8\x92\x82\xd5\x57\xfc\xc1\x07\x78\xce\xa5\x54\x84\x93\x05\x45\x2f\x9f\x57\x03\x5f\xa4\xde\x84\x69\xc6\xcb\x43\x17\x0d\x5e\xa1\x73\x18\x5c\xf9\xdb\x7b\x40\xff\x7e\xf9\xdc\x47\x83\x97\xcf\xbd\x51\xf6\x72\x08\xf8\x13\x5f\xf7\x41\x24\x6d\x40\x03\xe5\x29\xfd\x3e\xfb\x29\xf3\x33\x99\x7e\xd1\xef\x0b\x7f\x0b\x68\x1b\x54\x22\x4d\x2b\xf5\x60\xeb\x5c\x26\xb4\x92\x79\xc6\x03\x3d\x6d\xae\x14\x0d\xd3\x4b\xa4\xa3\xba\xae\x6b\x37\xa9\x6f\x74\x85\x7a\x40\x74\xdb\xda\x9b\x95\x5a\x3b\xb8\x8e\x2e\x2c\x36\x22\x93\xb1\xc7\xd7\x1c\x8a\x05\x17\x3b\x30\x5b\x70\x66\x2e\x38\x2b\x2c\x38\x2b\x2f\x38\x2c\xe9\xd2\xe2\x41\x16\xb9\xe1\xb9\x71\x57\x8d\x1f\xcc\x8f\x92\x34\x1b\x65\x62\x04\xa9\x63\x2f\xdb\xf6\xc9\xe0\xe5\x73\x90\x88\x9d\xce\x7f\xe5\x55\x6b\x04\x40\x90\xe4\x7a\xad\x5d\xe9\xdb\xb1\x1b\xd5\x5e\xf5\x2d\x88\xff\xa7\x8b\x86\xb6\x1a\x18\xc2\x39\xab\xab\x50\xb9\xf2\xa3\x19\xb9\x40\x7d\x2e\x04\x54\xd9\x70\x8c\x4b\x25\x79\x88\x9c\x6f\xbc\x26\x19\x97\x41\x97\x55\x64\x1c\x32\x72\x2a\xd2\x1f\xa9\x25\xb4\x22\x0d\x42\xc6\xa8\xeb\xfc\x5d\xe0\x2d\xa4\xd0\x60\x45\xd4\x31\x26\x91\x81\x54\x73\x03\xf4\x19\x05\x0b\xc6\xaf\x34\x99\x14\xe8\xae\xec\x99\xee\x1e\x20\x99\x39\x46\x58\x37\xab\xa9\x63\x47\xba\x48\x2a\x7a\x92\x25\xec\xe7\xac\x42\x5c\x26\xdf\x42\xd5\xac\xeb\x4e\x5c\x22\x74\x20\x29\x15\x40\x1e\x48\x5c\x02\xa8\xa9\xdf\x66\x63\xa8\xff\xfc\xbf\x5f\x5f\x9c\xfc\xfe\xf1\xdd\xd1\xc9\xd1\xeb\x89\x27\x8c\x33\x15\xb2\x43\xbc\xfa\x30\x17\x9d\xc9\x3a\x1e\x67\x51\xcd\x2d\x2a\xf9\xca\x57\x9f\xe3\xf8\xbe\x8f\x4c\x11\x6a\x67\xc7\xcd\xfd\xed\x4b\x1f\x33\x71\x5b\xc3\xcd\x4a\x8d\xb7\x60\x7d\x17\x7b\x84\xb6\xbd\xc0\x37\xd0\x32\x75\x71\x4d\xab\xaf\x84\xa9\xb3\xbd\x95\x4f\x5e\xe4\x54\x87\x26\x8d\x1c\x0f\x10\x1f\xca\xf0\x24\x90\xf8\x50\x01\xa1\x8d\x32\xac\x06\x3c\xc8\x19\x57\x39\x7b\xac\x9c\xf4\x46\x09\x78\x47\x28\x1b\x91\xa5\xb2\x01\xe6\x36\x39\x6c\xb0\xc9\x6b\x51\x3a\xdb\x6c\x73\x59\xd1\x7d\xd5\x66\xd7\xea\x7b\x33\x50\x7d\xfb\xa2\x19\xbb\xa2\xb4\x12\xb8\x92\x01\x5d\x1d\xe0\x21\x20\xe4\x2c\x6f\x7c\xeb\xd3\xca\x86\xd0\x40\x23\x0c\xfb\x8e\x03\xa4\x16\x71\xec\x14\x1a\x93\xee\x73\xe9\x9f\x13\xbb\x32\x2d\x43\x1f\x11\x3d\x48\x3b\xe8\x8f\x53\x4b\x4f\xfa\x72\xcc\x26\xe9\x7b\x7e\x9d\x8f\x85\x46\x50\xb6\x7f\x3b\x2a\x8a\x36\xfa\x85\x34\xe5\xc6\xf2\xde\x2b\x17\x1a\x18\x57\x48\x14\x06\xfd\x39\x25\x17\x11\x97\x27\xd7\x3f\xad\xf9\xfa\xfe\xab\x15\xe9\x0f\x8f\xdb\xb5\xa1\x0d\x74\x23\x85\x47\x0b\x36\x25\x34\xcf\xd2\x96\x8c\x57\x2b\xf6\x33\x2d\x91\x44\xe5\xda\xbf\x81\x6b\x1a\x57\x9c\xa6\x8c\xb9\xe4\x7f\x99\x87\xef\xcb\x18\x45\xe0\xd7\x6c\x14\x71\xaf\x25\x48\xcf\x20\x0a\x0d\x14\x06\x36\xc0\xc9\x12\x90\x2a\xfe\xba\x12\x77\x21\x23\x51\xe5\x40\xc0\x8e\xc4\x4c\x55\x74\x5f\x59\x8f\x12\xad\xb7\x60\xa6\xe7\xe6\x45\xa6\x7d\x5d\x7f\x5a\x44\x3d\x0f\x66\x56\x56\xec\x96\x62\xc0\x63\xc7\x49\x91\xd5\x98\xcf\xa3\xcf\x11\xd6\x7b\x68\x17\x26\xfd\x19\xc4\x96\x59\xe3\x8c\xfb\x66\xe6\xcd\x22\x6f\xa5\x38\xcb\xa0\xf3\x0c\x36\x60\xf5\x8b\x09\xb0\x37\x30\x9b\xa5\x2a\xef\xeb\x6e\xbb\x25\x29\x35\x3a\x73\x45\xd8\x90\x86\x4b\xd7\xd8\x15\xe8\xb2\x27\xa0\xe2\x54\x0a\x05\x3a\x40\xfc\xaf\xc4\x1f\x5f\xeb\x60\xc1\x83\xbd\x03\x07\xb0\x88\xc5\x68\xe4\xbc\x49\x73\x2e\x2c\x27\x80\x2e\x4d\xd1\x77\x93\x32\x6f\xd5\x65\x4a\xf3\xb8\x83\x8a\x15\xc3\x61\x85\xac\x91\x46\xa8\x09\xec\x22\x4c\x42\xb4\xb3\x93\x86\xf4\x0c\x5e\x3e\x17\x8f\x13\x1d\x19\xc4\x39\x31\x2d\xf2\x16\xa7\x05\xb6\x98\x16\xb8\x4c\xd9\x8d\xf4\x0e\xf2\x69\xda\x6c\xfa\x0c\xe0\xbc\x76\xbd\x2d\x99\x59\x11\x45\xdb\xfe\x6c\xfc\xb7\x1d\x09\xd9\xb3\xcc\x01\x1e\x97\xd9\xfa\x4c\x51\x95\xcf\x74\x2e\x02\xb7\xfe\x16\x61\xbe\x69\xec\xfe\x7f\x74\x2c\x97\x7a\xe2\x73\x16\x1f\xb4\xa8\xdb\x5f\x59\x37\x1a\x08\x5c\xd3\x9f\x09\xe5\xfb\x59\xff\xae\x13\x93\xb7\x7d\x9f\x4a\x21\x98\xff\x23\x3f\xf1\x75\x9e\x72\x70\x97\xe7\xd7\x60\x86\xad\xcc\x5a\x2e\x41\xb9\x2d\x09\x75\x5a\xd4\xf1\x00\x3f\xdb\xc9\x88\x2e\xd7\x39\x44\x02\x16\x73\x23\x87\x48\xd6\xf4\x50\x0e\xd1\xfd\x8c\x40\x2a\xc5\xda\x76\x5c\x0d\x55\xcf\x4a\xee\xc9\x52\x82\xf3\x5d\x75\xdc\x15\x80\x9b\x5a\x51\x8b\x74\x9c\xf1\x57\xb0\x13\xa7\x65\x35\xfd\x14\x80\xf8\xea\xe0\xeb\x53\x5a\x28\x51\x65\xf1\xe0\x64\x11\xa3\x44\x64\x87\xb9\x7e\xf9\x9c\x37\x84\x02\x8a\xd8\xcb\xe7\xe2\xc8\x8e\xf0\xc0\x88\xf6\x05\x1f\xae\xe6\xfc\x11\xff\x07\x88\xef\x46\xea\xfb\xa5\x40\xfa\x54\x1e\xe8\x46\x1d\xd8\xa4\x35\xef\x51\x7c\x56\xb3\x1d\xad\xdb\x57\xe2\xc8\xb6\xb7\xd8\x76\x33\x94\x63\x83\xfd\x10\x93\xa3\x83\x96\x53\x14\xde\xec\xd1\xcd\x8d\x9b\xfd\x61\xe8\x24\x45\xa1\x97\xcf\x0d\xdd\x3a\x23\x14\x0d\xe6\x08\x7d\x3a\x8a\x63\xd7\x91\x1b\xd7\x53\x98\x81\xae\xa3\xe7\xca\x01\xe2\xb3\x2d\xc8\xd7\x22\x9d\x41\x51\x17\xc0\x83\x2c\xbe\xdb\x88\xc5\x86\xf9\xb8\x6f\xcf\xca\xae\x95\x12\xd9\x37\x10\x87\x6d\x09\x04\x3b\x9f\x53\x55\xd5\x7f\xb5\x62\xef\xd1\x43\xf6\xd1\x43\xf6\xbe\x79\xc8\xd2\x0a\x22\x98\x64\xea\xd4\xcc\x43\x36\xb1\x7a\xc8\x72\xd6\xae\x83\x4b\xac\x4c\x38\xd9\xe7\x74\x05\xc6\x36\x97\xd8\x84\x41\x7a\x0e\x19\x2a\x17\x7e\x58\xf1\xef\xb2\xef\xc2\x67\xa3\x16\x0a\x49\x94\xb8\x35\x8f\x5f\x79\x61\x68\xf6\x5a\xef\x35\xe5\xf0\x51\x37\x34\x45\xd6\x54\x6a\x1f\x13\xd4\xbc\x99\x3f\xaa\x1c\xfe\x29\x23\xb0\x7e\xf8\xa2\xc4\xd7\x3a\xfc\x60\x2a\xa2\xd3\x2c\xbb\x5c\xbe\x49\x10\xeb\x8b\xc4\x85\xe2\x0a\xb5\xbc\xb5\x4c\xd8\x19\xa1\xb3\x5d\x7b\x01\xa3\xaa\xcc\x75\xb7\x3f\x47\x74\x16\x29\x41\xa8\x45\xe1\xfe\x94\xb1\x79\x5f\xc6\xf2\x57\xfb\x6b\x6d\x8a\x1e\x5e\x3b\xd6\x0e\x8f\x32\x46\xd9\x5a\x20\xd7\xc9\x51\xea\x4c\xb4\x04\x71\xc5\xd2\x27\xc1\x14\xcd\xaa\x52\x8f\xcb\x97\xf5\x6e\xb2\x15\x89\xa1\x64\x09\x35\xa7\x84\x26\x42\xc9\xf4\x1a\xce\x97\xe0\x32\x8a\xe3\xe7\x28\x61\x94\x5c\x95\xab\x34\x3f\x10\x9e\x57\xe9\xc2\xfe\x4c\x72\x2e\x1d\x3a\xf6\x15\x24\x6b\x00\x02\xc4\x52\x44\x48\x1b\x15\x49\x95\x41\x22\xf8\xac\x58\x36\x10\xf9\xf1\x96\x25\x15\x45\xbc\xb3\xe3\x46\x05\xa8\xdb\xd8\xf3\x00\x91\xe9\x2e\x8e\x75\xaf\x3d\x17\x82\x08\xc4\xe0\x3a\x1d\xc7\x28\x15\x7a\x96\x2a\xa9\x89\xe5\x9b\x54\x32\x21\x4b\x60\xf6\xce\x9e\xaa\xd0\x98\xb5\xc1\x14\x72\x0e\x4f\xb9\x4e\x00\xec\x27\x63\x34\xd9\xca\x98\x71\x19\x68\x2d\x73\x23\xc8\xd5\xf5\xca\x6b\xa5\x02\x39\x59\xc6\x43\x17\x0b\x08\xe7\x89\xc6\x9e\x5b\xea\xec\xcb\x94\x71\x4a\xfd\x23\x8f\x77\x25\xca\x54\xca\xce\xb0\xf6\xe9\x52\x71\x9a\x2a\xb6\xf0\xc1\x66\x93\x5d\x16\x5a\xd0\xb9\xa8\x74\x02\xd3\xad\xda\xec\xa6\xf2\x83\xad\x1c\xbb\xde\x30\xbb\xa9\x91\xd7\x94\x96\xf3\x9a\x52\x5b\x5e\x53\xd1\x17\x95\xda\x94\x66\xa9\x4d\xa9\x75\x60\xa2\x70\x2e\xc9\x29\x6d\x9f\xe4\x94\x7a\xf9\x91\x2e\x1f\x6a\xba\x5e\xb5\xb2\xb7\x97\x92\x75\x53\xea\x32\x3b\x79\x0f\xc9\xac\x82\xb6\x87\x64\xe6\x78\x00\xe1\x8b\xca\x18\x89\x0b\xc7\x03\x21\x64\x55\x97\x03\x7f\xd5\x4f\x84\x4b\x7a\xaa\x53\xf7\x80\x7c\x90\xac\xce\xd9\xc8\x37\xfa\x2e\xba\x40\x98\xa9\x4a\xd6\xb8\x66\xe2\x28\x61\x08\x23\xaa\x1c\xee\x43\x32\x1b\xa4\x8f\x74\x18\x87\x41\x77\xc4\xda\xbc\x47\x4c\xbe\x80\x61\xf8\xf7\x28\x89\x4e\xa3\x38\x62\x57\x92\x08\xbb\xde\x8a\x6b\x2a\xad\x7d\x20\x9d\xb8\x75\x23\xf3\x05\x3d\x4f\xff\xa8\xeb\xf8\x12\x58\x9a\xb5\xe7\xab\xdc\x2a\x36\x09\x43\x95\xdc\x86\x8f\x33\x24\x81\xa8\xd2\xf5\xc0\xf5\x45\x5a\x5f\x50\xa8\x8f\x79\xd7\x3a\x9d\xc5\x60\x1a\x85\x21\x12\x19\x91\x65\x6f\xfb\x43\x4e\xc8\x97\xe0\x72\x8a\xf0\xd1\x05\x8c\x62\xc1\xeb\xdb\xdd\xf0\x00\xf6\x2d\x2d\x67\x26\x05\x59\xf7\x21\x9f\x5f\x95\x3e\x22\x2f\x63\x69\x3b\x6b\x61\x34\xb8\xae\xef\xde\x35\x74\x3d\x40\xe5\x7d\xc3\x05\xf7\x62\x62\x0a\xe4\x2d\x81\x18\x4a\x79\xfe\x4a\xac\xc1\x9e\x95\x35\xd8\x33\x59\x83\xbd\xc9\x68\x6f\x8b\xb9\xc5\x4d\x53\x21\xc3\xeb\x6c\x94\x48\xda\x16\x2a\x76\xda\x12\xc0\xe0\x8f\x45\x44\x51\xf1\x02\x2f\x7e\x30\x48\xa2\xff\xa0\x3f\xeb\x78\xa3\x8b\xc1\x05\xa4\xae\x73\xfc\xf6\xcd\xfb\x5f\x5f\x7d\xfc\xe5\xc3\x87\x77\x1f\x5f\x1f\xfd\xe3\xe3\xf1\xdb\x37\x6f\x5e\x1c\x7f\x78\xf9\xf6\xcd\x7b\x9d\x7d\x58\xaf\x0b\x64\x70\x10\xc4\x24\x41\x21\x9f\x33\xdf\x3a\x8c\x0a\x13\xe2\xf6\x36\x1a\x28\xa4\x2a\xd7\x13\x48\x12\xe8\x8f\x05\x4a\x58\x3f\x0a\x9d\xc9\xce\x0e\x1e\x44\x38\x88\x17\x21\x4a\xdc\x9a\x72\x7c\x16\xb6\xb2\xe4\x00\x3b\x3b\x0e\x43\x9f\x99\x3e\xe7\x8c\x22\x38\x93\x26\x1f\xa3\x86\x80\x08\x46\xb6\xcf\x29\x82\xc0\xb3\x90\x5a\xcb\xdc\xb4\x08\xfa\x97\xb8\xde\x00\xa3\xcf\xcc\xf5\xe4\xdf\x26\x0c\x13\xa7\xc5\x52\x71\x1a\x23\x98\x20\x97\x8a\x84\x59\x62\x69\x0e\xf6\xbf\xf7\xbc\x65\xa9\x4a\xbe\xf1\x90\x50\xa7\x8a\x2f\x72\x2b\x53\x2a\x2c\xb5\xb9\x25\x9e\xa7\x5a\xc7\x9f\xe3\x79\xca\xd1\xae\x8d\x71\xc2\x1a\x83\x8c\x29\x68\xb0\x05\x5d\x55\x62\x55\x2b\xb2\x94\x80\x42\xe8\xcb\x9c\x5b\x4d\xa3\x53\x52\x46\x6d\x66\xe7\x8d\x6c\x19\x11\xe5\x45\x7c\x73\xb3\xed\xd6\x72\x60\x9a\xa9\x92\x7b\x7d\x3c\x01\xd4\xdf\xde\x03\xd0\xdf\x1e\x02\xa2\xef\x41\x46\xaf\x52\xcd\x62\x02\x62\x1f\x59\x6e\xf9\x1f\xb6\x5d\xea\xbb\x89\x1f\xab\x8d\xe4\x0d\x42\x82\x91\x27\xd4\xcc\xf3\x45\x32\x75\x13\xbd\xb5\xb6\xd9\xcd\x8d\xf6\x1f\x10\x19\xe7\x7e\xe0\x4d\x7a\x3f\xa8\x04\x88\x91\x77\x0d\x79\x17\x88\x1f\x2d\xcf\x22\x0c\xe3\xf8\xea\x5a\x24\x5c\xbc\xb9\x91\xac\x42\x3c\x90\x5d\xbe\xb9\xd1\xbf\x38\x5b\xa1\x4a\x46\x67\x2e\x54\x29\xec\xc8\x32\xd3\x92\x8a\x99\xba\xb9\x09\xd4\xbf\x0b\x37\x9f\xc3\xb2\x2d\x23\x1c\x66\x6c\xaa\xf8\xff\xe0\xa1\x32\x61\x91\x31\xf6\x59\x69\x40\xb9\x69\x5a\xb4\x18\x56\x88\x24\x9b\xbc\xa0\xe8\x6e\xc7\x96\xf6\x36\x48\xcf\x86\x92\x50\x2a\x05\x86\x30\x13\x18\x70\x4b\x81\x41\xd9\xdd\x33\xb1\x01\x97\xc5\x06\x6c\x13\x1b\x80\x96\x19\x70\x26\x33\xe0\xc3\x9c\xb0\x30\xca\x4b\x0a\xb8\xbd\xa4\x80\xbd\x43\x39\xb6\x91\x3c\xc6\x46\xe2\xce\xf0\xb6\x79\xef\xb4\xa5\xb3\x5b\x91\x10\xd3\xea\x67\x2b\x0e\xaa\xa1\xbe\x9f\x7f\xd5\xd6\x9f\xe9\xad\x58\x7f\xe6\x4d\xac\x3f\xa7\x77\x6b\xfd\x99\x7f\x19\xeb\xcf\xe9\x83\xb1\xfe\x08\xfe\x9d\x41\xca\x7e\x33\xe5\x0e\x7d\x97\x57\xbc\xb5\x38\xbe\x99\x53\xca\x4f\x70\x7f\xe8\xe4\x72\xe5\x33\xe0\x48\x6f\xb6\x81\xe9\x5f\x23\xfd\xda\x9c\xec\x04\x0e\x72\xe2\x8f\xcb\x3c\xe5\x0b\xc7\x96\x12\x5d\xff\xc2\xcf\x07\x67\x4a\x30\x00\x33\x1d\xa8\x07\xae\x78\x19\x5a\x57\x06\x5c\x78\xe0\x9c\x97\x82\x59\x29\x0f\xbc\xf5\xed\x9e\xf2\x02\x64\x0a\xd9\x32\x95\x1a\x4b\x2c\x73\x6e\x31\x9f\xe9\xb8\xb5\x7f\x61\xc7\xab\x0b\x49\xa2\xd1\xcc\xe5\xbb\x47\x85\xb3\xf1\xe2\x19\x06\xb7\xf3\x2f\xcc\x1f\x1c\xe2\x11\x5a\x7a\xfc\xf6\x00\x65\xc0\x55\x00\x0d\x02\x4b\xff\x3c\x3c\xa4\xfd\xe1\x68\xcf\x03\xc4\x1f\xfe\x40\xfe\x97\xfe\x40\xfe\xf4\x27\x0f\x8e\x49\x7f\x38\x31\x8e\x2e\x99\x98\x70\xed\x52\x0f\x09\x45\x97\x03\xe4\x62\x6b\x3a\x56\x31\xc8\x62\xca\x89\x62\x32\x03\x0d\xd6\xb5\x27\xef\x35\x17\x09\xef\x03\xa4\xd1\xf1\x99\xcc\x0c\xa1\xef\xd5\x2c\x95\xb0\xfe\x6e\xea\x4e\xdd\xeb\x25\x40\x02\x3a\xb4\x90\x91\x81\x89\x04\xbe\x9e\x07\xc6\x6c\xa2\x2b\x84\xde\x12\x7c\xf4\xc7\x2c\x0f\x17\x08\x9c\x7f\xf4\x4f\x94\x18\xf4\xf2\xb9\x23\xfe\x94\x96\x0e\xe7\x44\x02\xec\x39\x13\xf0\xa2\xa3\x8e\xc6\x90\x43\x2a\xca\x59\x54\xab\x1e\x60\x14\xe2\x84\xcb\x1b\xf5\x1f\xa5\xc5\x92\xdd\xcf\x53\x2a\xc2\xa9\x19\x8b\xf0\x79\x55\x5b\xfa\xf5\xad\xa9\x6b\x3a\xaa\x5e\xea\xb5\x2d\x0b\x1a\x5b\xac\x5b\x57\x95\x56\x2d\x70\x4a\xc2\x2b\xcb\x17\x6f\xab\xbf\x50\x62\xf0\x3b\x21\x32\x8d\x6c\x27\x1a\x97\x8f\x92\xc9\xab\xe0\x3f\x0f\x0f\xb1\x3c\x4a\xd0\x1f\xfe\x00\xff\x17\xff\x00\x05\xdf\x02\xf3\x47\x09\x4e\xb6\x0c\xd8\x4f\xde\xd1\x8a\xd9\x4e\xfc\xc8\x25\x1e\x58\xf8\xc9\x78\x6f\x02\x02\x3f\x51\x6c\xe1\xd0\x03\xa1\xc6\x15\x89\xcd\x6f\xc7\x28\xdd\xe7\xb1\x1b\x78\x5e\x9a\xa6\xaf\xe7\x78\xe0\xcc\x8f\xdc\xd0\x03\x33\xff\x8c\xd7\x36\xf7\xcf\xb2\xda\xae\xfc\xb9\xa2\x26\xbd\x2c\xb5\x1f\xa7\x23\xe0\xad\x1f\xb9\x57\x1e\x78\xe1\xbf\xe5\x1f\xfd\xdb\x7f\x9b\x7d\xf4\xd9\xbf\xe6\xab\xf2\x42\x51\x24\x20\xd9\xe3\xd1\x4c\xff\xad\xe4\xd4\xd1\xd4\x3d\xe5\x27\x94\x0d\xf8\x59\x7b\xf1\xe6\xc3\xc7\x0f\xbf\xbf\x7b\x01\x1c\xc3\xd5\x46\xe0\xde\xff\xd0\x0b\xa6\x90\x26\x88\xf9\x0b\x76\xd6\x7f\xe6\x78\xe0\xdc\xfd\xb7\xe7\xc9\x85\xe4\x8c\x84\xd4\x65\x2e\x96\x9c\x8d\xfa\x3c\x90\xbb\x5f\xc5\x46\xf9\x1f\xad\xf4\x27\x5d\xf5\x54\xcd\xf0\x59\xeb\x2d\x54\x8c\x65\x19\x20\xda\x2c\x01\x94\x0f\x98\xf9\xcc\xd3\x59\xa2\x33\xdd\xc5\xc2\xe3\xf7\xd6\x5f\x5e\x7c\x70\x44\x0b\x72\x1e\x3c\x41\x27\x8d\x2f\x73\xc3\x9f\x64\x04\x5b\x64\x37\xf0\x0e\x3f\x8b\x8d\xe0\xff\xf5\xfd\xdb\x37\x03\x49\xec\xa2\xb3\x2b\xf7\xb3\xd0\x08\x79\xa3\xb2\x60\x21\xdf\xec\xec\xc8\x7f\x53\xf5\x58\x9a\x14\x5e\xf0\x9c\xea\xf3\xf4\x2d\xe7\xba\x55\x43\xea\xd5\x16\x8a\x13\x24\xb8\xb5\x77\xfe\x85\x2e\xbf\xf5\xce\x50\xb7\xb9\x6a\x20\x7c\xab\xa5\x9d\x3e\x14\x3d\x5e\xd0\xd8\xc8\x79\x22\xfe\x06\xce\x4e\x96\xda\xe4\x9d\x37\xaa\x28\x74\x68\x16\x4a\xf9\xa0\xca\xd9\xf2\x57\xee\x16\xf0\x39\x3d\xc0\x6d\x22\x90\xb3\xb3\xbd\xb9\x6b\x52\xe3\x66\xe4\xe8\x89\x3e\xa5\x16\xe7\x45\x4e\x9b\x25\x49\x36\x53\xef\xa6\xae\x75\x6c\x8a\x70\x19\xc8\x81\xfa\xea\xe2\x8b\x85\x2f\xcb\x75\xe1\xb0\x65\xa0\xb4\x1f\xde\xfe\xed\xc5\x1b\x33\xc2\x58\x3b\xe3\x1d\x3a\xce\x28\xfb\xcb\x03\xb1\x9e\x7c\x6f\xe9\x09\xec\x82\xf4\x62\xd1\x23\x71\x69\xa6\x29\xb6\x2a\x88\x0d\x3f\xf5\x92\x8a\x18\x82\x6b\x32\x47\x38\xaf\xa5\x1b\x28\xad\xaa\x8b\x94\x72\xdb\x5b\x82\x19\x4a\x12\x58\xd0\x7d\x4b\xe2\xab\x46\xac\x36\x38\xc2\x8c\x72\x7e\x9e\xc9\x03\xa0\x3b\x5f\x41\x08\x64\x0d\x89\xcb\xc0\x3e\x67\x89\x30\xa7\x66\xd0\xc7\xe3\x61\x2a\x4d\x7e\xcc\xf4\xa3\x22\xdf\x0b\x1a\xd3\x89\x0f\xd3\xe3\xce\x27\x28\x47\x73\x78\x35\xd6\xe8\x64\x0c\x54\x97\xa8\x02\x7e\xf6\x96\x5b\xf2\x2a\xa6\x0b\x2c\xd5\x56\xe5\x68\xea\x1e\x52\xe9\x53\x80\x60\x76\x73\xd3\xb4\xfa\x63\xec\x22\x19\xf2\x21\xab\x10\x0a\xe4\xc2\x4c\x6b\xbd\x6a\x3a\xd3\x80\xba\x42\x19\x0a\x07\x67\x88\x73\x68\x3a\x79\x8b\x57\x6b\x4a\x30\x0d\xca\xa6\x7e\x35\xcf\x7d\x23\x6f\x09\x84\xee\xb6\xa4\xd1\x57\xb3\xed\xa2\x92\x8a\xd8\x93\xe6\x0c\x75\x50\x50\xde\xd6\x52\x54\xbe\x37\xa8\x4d\x7d\x63\xad\xaf\xa4\x32\x6e\x50\x9f\xfa\xc6\x56\x5f\x4e\xa5\xfc\xa2\x99\x4a\xb9\xc0\xb6\xad\x56\x2e\x37\xd3\xfe\x8a\xba\xec\xaf\xd4\x29\xae\x7a\x2d\xf6\x4f\x95\x07\x79\xde\x3b\xf1\xab\x55\x6f\x24\xb7\xa2\xde\x20\x4d\xd4\x1b\xf1\xdd\xaa\x37\xc8\x97\x51\x6f\x3c\xd0\x34\x26\xc2\xbf\x27\x15\xf8\xf3\x5e\x43\x1e\x67\xd0\xed\x82\xe1\xe7\x29\xb5\x11\xcf\x48\x99\xad\x2a\xb8\x15\x65\xa3\x05\x44\xb0\x1f\xa9\x3a\xc2\x45\x8a\xb3\x04\x48\xf0\x50\x6e\xec\x0a\x0d\x43\xde\x80\xc7\x25\x67\xf3\x96\x2a\xd9\xf7\x40\xec\x32\xe0\x70\x16\x90\x97\xe5\xf7\xd4\xcd\xcd\xb5\x12\x93\x23\x3f\x71\x13\x25\x4d\x73\xa6\xe2\x14\x9d\x11\x8a\xde\x23\x9c\xc7\xe1\x20\x03\x7e\x93\x8b\x41\x04\x04\x5f\x20\xca\x38\xe7\x71\x2d\x2c\x85\x3d\xc1\xce\xe6\xef\x1e\x7a\xa5\x47\x2e\xb8\xdb\x39\xe7\xdb\xf8\xd7\xd2\x10\xc3\x4c\xe8\xf8\x25\x48\x16\x22\x08\xa0\x94\x2c\x81\x37\xab\xbc\x84\xdd\x94\xdb\x41\x40\xdf\xb1\x23\x06\x54\xa8\x23\x56\x3f\x3e\xa0\xcf\x4c\x04\x5b\x95\x6e\x54\x45\xd6\x74\x0e\x82\xad\xd8\x4f\x52\x8b\x01\x39\x93\x91\x94\x87\xc9\x88\xcf\x7e\xaa\xe6\x11\x9b\x1a\x10\x79\xcb\xba\xb1\x18\xfa\x6c\xce\xa5\x03\xf3\x12\x21\xd2\x76\x2b\x2f\x56\xed\x01\x26\xef\x57\x0b\xc0\x27\x1e\x7c\x9e\x52\x37\xf2\x00\x59\x02\xd2\x14\x36\x3f\xbd\x44\xe6\xa7\x04\xd2\x70\x37\x26\x01\x8c\xfb\x09\x23\x14\x16\x1d\x33\xd3\x42\x65\x77\x54\xd3\x3d\x26\x4b\xe4\xe0\x67\x8e\x72\x7e\x51\x7b\xee\x24\xe2\x47\xf1\x45\xaa\x4e\x3f\xb4\x71\x09\xca\x06\xb2\xb4\xc2\xb8\xec\xec\xd4\x34\x97\xb3\x66\xf8\xbe\x9f\x3e\xdf\xd6\xbf\x33\xeb\xc9\xa1\xee\xdb\x28\x6d\xd0\xcb\xa9\xef\x55\x44\x86\x61\x63\xf8\x01\xff\x2f\xd3\x04\x1d\x6b\x82\x4e\x7d\x26\xac\x0b\xc6\xcd\xe1\x9b\x7f\xdc\xdc\x6c\x0f\x01\x1d\x98\xb4\xc7\xdf\xde\x03\x8e\xa0\x1f\x4e\x84\x7b\xc2\x7f\x6b\xa0\x69\x91\xbf\xbd\x57\xed\xa0\x4d\xf9\xad\xc9\x2f\xa1\x02\x64\x4a\xba\x18\x50\xdf\x93\x09\x62\xef\xf4\x48\xdf\x9e\x15\xad\xb2\xa9\x5a\xf0\xe3\x47\x31\x1f\x1f\x3f\xfa\x0c\x88\xf1\x03\xe6\xe5\x82\x0a\xb4\x2c\x64\xec\xc3\x0a\x93\xee\x09\x3a\x8b\x51\xc0\x6e\x6e\xb6\xd5\xaf\x6c\x2d\x94\xba\x75\x7b\xc8\x2f\xfb\xd2\xdb\x41\x32\x85\xb3\x5c\x11\xcb\x0a\x8b\x68\x4e\x5d\x48\x1a\x7d\xd5\x20\x9e\x43\x86\x2a\x6d\x62\xa5\xc6\x5c\x5e\x1c\x8c\xcd\xad\xed\x5d\x8b\x9b\x7e\x7b\x4f\x91\x96\xcc\x35\x62\xb8\x5c\x66\x6e\x2e\x05\xae\x0f\x03\xea\xc7\x8a\x7f\x61\xda\xc5\x25\x16\x0a\x15\xcf\xdc\x85\x5b\xd8\x2f\x77\x82\x66\x7c\x20\x80\xca\x1f\x14\xfb\x2b\xc2\xd5\x12\xf9\x02\x9b\xab\x9f\x33\xc0\x6f\xb3\x9b\x1b\x47\x9a\x25\x9d\x6d\xdf\xe7\xf7\xb1\x79\x5a\x32\x2d\xe8\x61\xc1\x92\x9c\xc9\x79\x5e\x66\x44\x3d\x41\x67\x88\x22\x1c\x68\x4b\x2a\x6f\xbc\x37\x85\x09\xfe\x86\xf5\x4e\x11\xc2\xbd\x08\x47\x2c\x82\x71\x94\xa0\xb0\xd7\xef\x29\xf0\xdc\x5c\x09\xbe\x04\x28\xcc\x80\xd3\xd0\xd2\x45\xde\x88\x59\xad\xdb\x6e\x6c\xdf\xba\x87\x19\xdf\x60\x3c\xb5\x92\x86\x6c\x37\xa7\xfa\x8c\xfc\x57\xc2\x5d\x87\xff\xdf\xa6\x6e\x78\xb3\x17\x6e\xd9\xf1\xc1\x32\xf5\x69\x14\x1d\xf3\xac\xf6\xea\xf7\x7c\x1a\x7b\xe8\xf3\x9c\xca\x50\x5b\x69\x5e\x46\x11\x9b\x22\xda\x3b\x45\x22\x66\xb1\x47\x68\x0f\xa6\xfb\xd1\xe1\x37\x40\xba\xff\xf5\x24\x4a\xbe\xdf\x65\x3b\x3b\x86\xc1\x18\x5c\x1b\x1b\x53\xc3\x39\x23\x93\x0d\x2a\xb2\x48\x42\x15\xbe\xb3\x23\x89\xcc\xd2\x73\x23\x80\xbc\x34\x21\x45\x02\x62\x9f\xb8\x91\xb7\x65\x5a\xec\x53\x3e\xbf\x74\x6e\x52\x5f\x59\x17\x99\x17\x27\xf3\xec\x33\x71\x0c\x31\x26\x4c\xec\xa1\x1e\xec\x05\x31\x4c\x92\x1e\x4c\x72\x03\x5f\xca\x13\x11\x79\xc0\xc5\x7e\x2c\x4f\xbc\x78\x82\x3c\x6f\xf0\x31\x38\xf5\x19\xc0\xa9\x33\xb3\x1f\xf1\x52\xe3\xeb\x4f\xe8\x6a\xe4\x10\x7c\x1c\x47\xc1\x27\x07\xc8\x39\x28\x39\x01\x7d\x0c\x4e\xa5\x63\x11\xe7\x4e\x5c\x24\x1c\x81\xce\x21\x43\x1f\x84\x14\x7c\x73\x83\x06\xc1\x82\x52\x84\x99\x7c\xa0\x7d\xc0\xd0\x2c\x62\xae\xa3\x98\x11\x07\x5c\x2f\xbd\xe5\x72\xe2\xed\xec\x50\xd7\x5c\x05\xec\x81\x44\x3c\x03\x89\x07\xa2\xa5\x9b\xb1\x85\x95\x3c\xa1\xba\xa9\x47\x97\x11\x0e\xc9\xe5\x40\x5c\xdf\xef\xe5\x33\x20\x06\x94\xdd\xda\xa0\x14\xd6\x61\x55\x68\xf1\xd9\x16\x59\xd9\xf2\x02\xbf\x6a\x88\x1f\xc2\x97\x0c\xcd\x5c\x21\xa7\x01\x54\x06\x33\x6c\xce\x6b\x90\xa4\x31\x83\x71\xc7\xf1\x2e\x06\x3a\x35\xba\xcc\x82\x5e\x4a\xfe\x5e\x2b\xe3\x5b\x48\x88\xfa\xb3\x48\x88\xc2\xb9\xa1\x46\x17\x57\x7d\xfe\x52\xbe\xb3\x7f\xf0\x10\xc3\xb9\x8c\xfe\xef\xc6\x32\x1d\x65\xad\x2a\x02\x85\x11\x53\x45\x6f\x6f\xd1\xc7\xd7\x18\xce\xd0\xc8\xe1\xe2\x82\x03\x66\x11\xff\x5d\x54\x00\x3b\x60\x46\x42\x34\x72\xfe\x0d\x2f\xa0\x94\x3c\xf9\x79\x61\xa3\xb1\x54\xa8\x03\x67\x06\xe7\xce\x04\xc0\x38\x82\x89\x7a\xf8\xd4\x99\x2c\x81\xaa\xfa\x97\xe3\x57\xba\x66\xe1\xe0\xf8\xb9\x4f\x17\xa7\x57\xba\x52\xf9\x5b\x56\x47\x4f\xcd\x6a\xe4\x1b\x67\x06\x03\xf5\x8b\xc2\x4f\x88\xff\x73\x2a\xfe\xef\xb3\xd1\xc4\xef\x47\xaf\x8b\x6d\x5c\xc1\x59\xac\xdb\x90\xbf\x65\x1b\xf2\xb7\x73\x35\x8b\x8d\xb6\xc4\x5f\xcb\x09\xe8\xea\x1a\x3e\x13\x70\x13\x16\xb1\x63\x09\xf8\xf2\x75\x0a\x16\xe3\x1b\xee\x85\xd8\x02\x95\x5a\xc1\x90\xcc\x06\x28\x46\xc2\xb3\x58\x8c\x1b\x52\x04\x7b\x7f\xea\x85\xd1\x85\x03\x90\x37\x38\x26\x21\x7a\x2d\x36\x5c\x3b\x57\x4c\xe9\xae\x1e\xe1\x4f\xbb\x82\xfe\x06\x24\x2e\x67\x21\xa9\x09\x42\x31\x98\xe5\x86\xde\x77\xa8\x22\x42\xe4\xd1\x0b\xb2\x99\x17\xe4\x63\x68\x4d\xe3\xd0\x9a\xfc\x7c\x3d\x00\x07\xc8\xaf\x28\xc2\xa6\x8d\xbb\x84\x8a\xd7\x5c\x1d\x1c\x93\xe5\x99\xf1\xc0\xa7\xaa\x08\x1d\xa3\xfc\xa7\x0b\xe1\xb8\x21\x04\x85\xd5\xa5\x35\x78\x8f\x07\xe6\x14\xcd\x21\x2d\xa3\x8c\xaa\xb9\x4b\xd3\x3a\x1a\x0a\x62\x2c\x30\x48\xe6\x88\x26\x51\x4e\xfb\x68\x6a\x65\xa7\x51\x32\xe6\xcc\xb2\xf2\x04\xd8\x75\x3c\x70\xe0\x8d\x9f\x4c\x26\x03\xf5\x9d\x8b\x85\x06\x73\x46\x2e\x50\xeb\x2a\x94\xdb\x47\x11\xc9\xa3\x0b\xfd\xaf\x54\x7e\x15\x2e\x82\xcd\xec\x20\xb6\xf6\x0e\xb2\x2d\x97\x36\x26\x74\x8e\x82\x35\x41\x70\x7c\x71\x00\x05\x4e\x3d\x3b\xd4\x3b\xa9\xe1\xfa\xb3\x54\x1d\x02\x20\x20\x3e\x32\x70\xd4\x25\x86\x7a\x0e\x86\x26\xb5\x59\xeb\x1d\xe1\x42\x9f\x01\x97\xfa\xc4\x8b\xb0\x8b\xfd\xeb\xa5\x57\xa1\xd6\xe7\x0d\x74\xca\xa3\x88\x85\x45\x16\x60\xcf\xb6\xf7\xb2\x84\x11\xcd\xba\xad\x02\x42\x8a\x38\x0f\xac\xf1\x2e\xb4\x00\xda\x3d\xb2\x1f\x8f\xec\xc7\x23\xfb\xf1\xc8\x7e\x34\xcd\x27\xd2\x1f\x0a\x8f\x9c\xd4\xab\x6a\xb4\xbb\x2b\x73\x17\xf8\x8a\xf4\xf0\x07\xda\x4f\x0a\x79\xbc\x66\x4d\xdc\x78\xc9\x25\x80\x15\x37\x92\xfa\xba\x2e\xee\xd7\x22\x48\xad\x74\x1d\x5d\x7d\x05\x5b\xaf\x38\x6c\x24\x3a\x77\xa9\x8b\x3c\xb0\xef\x81\xc4\x27\xe3\xbd\x09\x88\x7d\x62\xf8\xe0\x08\xae\x21\x99\x0c\x54\x25\x6e\x2c\xbe\xad\xe2\x56\x54\x30\x6a\x5a\x25\xf1\x21\xaf\x32\xf1\x61\xb1\x4a\x92\x31\x2e\x42\xed\x6e\x67\x5d\x5a\xd5\xa7\xb8\x98\xa4\x84\x48\x56\x0d\x18\x6c\xde\x20\x32\xec\xba\xb1\x24\x2b\xee\xb6\xad\xfc\x9e\xbf\x3b\x33\xba\x69\x48\x5b\xfb\x1a\xbb\x6f\x48\x0e\xb0\x7b\x60\x56\x87\x90\x2c\x93\xde\x9b\x51\x59\x0d\xe9\x7d\xa7\xf8\xac\xfc\x48\x3b\x23\x39\xdc\x0b\x6a\x0f\x1f\x06\xb5\x27\x76\xc2\xec\x62\x97\xf9\xd7\x61\x9a\x0e\xaf\x01\xcc\x42\x18\x38\x1e\xc0\x42\x95\xb7\xb2\xac\xc8\x88\x25\x4b\x37\x2e\x1c\xcb\x64\x4b\x4d\x8b\x9f\x43\x86\x2e\xe1\x55\x83\xce\x18\x90\x12\x8a\xf4\x75\xf8\xa6\xc5\x27\x4b\xe0\x94\x81\xd8\x9b\x7e\x9e\x7d\xe2\x79\x00\xbb\xac\x5c\x57\xb2\x4e\x65\x73\x4a\x3e\x47\x8d\xaa\x90\xa0\xca\xe6\x77\x57\x6d\x86\x93\xff\xbc\x94\x29\x7e\xf5\x6e\x2b\x7c\xa1\x6b\xca\x30\x34\x57\xe3\x82\xe8\xa2\xfa\xdb\x80\x10\x1a\x46\x18\xb2\x46\x13\x90\x95\x36\x96\x42\xa8\x3b\x9a\xad\x80\xd2\x8c\xa8\x4f\xb1\x86\x5f\x6e\xf2\xb1\xca\xb4\xa5\xbf\x4d\x75\x38\x4d\xbe\x35\x14\x3e\xc5\xcf\x3b\x7d\xfd\xe9\xa2\xc1\x67\x9f\x2e\x8c\x05\x12\x08\xc2\x0d\x56\x47\x78\x95\xeb\xfd\xa5\x10\x5f\x9b\xec\x2c\x99\x0b\x24\xf7\x65\x93\xed\x50\xf8\x8e\x92\xb8\x51\x73\x22\x9d\x84\xfe\x88\x44\x61\xd0\xe0\x9b\x7c\xee\x25\xfd\xf1\x0c\x31\x1a\x05\x4d\xda\xd4\x25\xd3\x39\xbd\x9a\x57\x9e\xb9\x6a\x2e\x6e\xf7\x34\x26\xc1\x27\xce\x6b\xa4\xfb\x57\xc2\xe3\x14\xad\x65\x52\xd9\x02\x01\x01\x09\x88\x41\xe4\xd3\x9c\xb6\x4c\x44\x00\xca\x7c\x96\xb9\x20\x45\x0f\x2c\xfc\x68\x3c\x9c\x80\xc0\x8f\xc6\xfb\x13\x10\xfa\xd1\xf8\xc9\x04\x9c\xf9\x91\x62\x4d\x0e\x3c\x30\x13\xf6\xe1\x71\x38\xd9\x52\xd1\x77\xda\x8b\xe0\xc5\x05\xc2\x39\x0f\xa0\xb5\x50\x56\xae\x97\x80\xf9\xd7\x7c\x96\x46\x8e\xf2\xda\x77\x64\x90\x0e\x5a\x02\x9c\x0f\xe1\x14\x0e\xf1\x33\xc4\xa0\xe3\xdd\xdc\x64\x3a\xab\xd4\x5f\x05\x0f\x28\xc4\xe7\x68\x67\x67\x36\xa0\x88\x4b\x3c\x51\x8c\x5c\xec\x01\xb6\x04\xa1\x8c\x1c\x4c\x17\x72\xc4\x3b\x3d\xf7\xa9\x7b\xe6\xe9\xf1\x41\x7f\xce\x39\x75\xe2\xcf\xf9\xcc\x24\xfe\x5c\xcd\xc5\xbe\xc7\x45\x0f\x19\x40\xb8\x98\xcd\x20\xbd\xea\x9f\x11\xda\xd7\x77\x86\xa8\x69\xea\x53\x37\xf1\xb6\x62\x7f\x2a\x99\xfd\x69\x16\xe1\x84\x6d\x0e\xfe\x33\x11\xa5\xa1\x2e\xf6\xf7\xb2\x56\x37\x06\x04\x04\x60\x01\x90\xb7\xdc\x3a\xa5\x08\x7e\x92\x51\x8b\x8b\xb9\x84\x4c\xe9\x5b\x5b\xaf\xa9\xfe\x57\xf5\xa1\xae\xdf\x5a\x7b\x48\x2e\x71\xc7\xfa\x9f\xa7\x9f\x96\x5a\x58\x9a\x2d\x64\x9c\x8a\x33\x12\x4f\x0c\x82\x5a\x57\xff\x91\x60\x96\x73\xbd\xd5\x5c\x80\xae\x88\xb3\x34\xea\xb7\x24\x0a\xf2\x77\x4a\x92\x56\x54\xff\xd3\x55\x96\x55\xd8\xb5\x4c\x4e\xac\x20\x14\x6b\x6a\x91\x79\x26\xdd\xa0\xf8\xa9\x41\xf8\xc5\x0e\x39\x2d\xec\xb5\x53\xb9\xd7\x4e\xb3\x8d\xa2\x37\x59\xd3\xe9\xff\xe9\x4a\xed\x9f\xd2\xc2\xea\x08\xd6\xf6\x83\x5f\x96\xe7\xda\x60\x5e\x46\x32\x06\x3a\x3f\x90\x0b\x39\x90\x8b\x8d\x0e\xc4\xec\x87\x79\xf5\x8b\x1e\x5c\x15\x7a\x70\x25\x7b\x70\x65\xef\x81\xe0\x39\x57\x4e\xc5\x1b\x12\xca\xe6\x0b\x8d\x6b\xa6\x4b\x34\x7c\x5e\x68\xf8\x5c\x36\x7c\xde\x7d\xe8\xa2\x6d\x11\xaa\x65\x1d\xba\x66\x94\x65\xf3\x6f\x0b\xcd\xbf\x95\xcd\xbf\xed\xde\xfc\x5f\x64\xfd\x75\x5d\x48\xf9\x26\xd1\x85\x8f\x85\x2e\x7c\x94\x5d\xf8\xd8\x71\xea\x8d\x79\x2f\x35\x2c\x99\x0c\xf3\x6b\xe3\xe3\x04\xc5\x67\xee\x99\xb8\xc1\x0a\xe4\xac\xc0\x7b\x66\x74\x62\xd5\x16\xe4\x33\x20\x82\x5a\x2d\x74\xa0\xc4\x93\x37\xad\x4b\x74\xf1\x8c\x5f\xb1\x96\x5a\x0b\x8c\x79\x5d\x9d\x2f\x55\xa1\xc6\x75\xa7\x0c\x74\xab\x9e\xda\x3a\x29\x59\x2f\x39\x8f\x9f\x2e\xd4\x8f\x8c\xd7\x1c\x61\xdf\x25\x22\x1a\xd8\xb3\x79\x6f\xe7\x1a\x4a\xd7\xd9\xe2\x36\x52\xc4\x73\x9b\x69\x9f\xc5\xeb\x8c\x4a\x8d\x02\x23\x6b\xca\x62\xe9\xe5\x7b\x2a\x18\x3c\xb1\x4b\x5f\x14\x76\xe9\x0b\xb9\x4b\x5f\x94\x77\xa9\x66\xf4\xd6\xbe\x29\x52\x8e\xb1\x62\xc3\x9a\xb3\xa0\x36\x59\xbe\x02\xa8\x93\x3d\x56\xf6\x24\x2d\x21\x6b\x20\x7c\xc1\x88\xb1\xfc\xcb\x1c\x50\xab\x50\x3c\x49\xa6\x51\x5a\xeb\x3c\x11\x9e\xd1\x28\xeb\xc1\x2a\x1d\x63\xc6\x9d\xd6\xba\x79\x85\x64\x96\xc7\x76\x04\xb6\x66\x52\xcb\xa6\xf5\x6d\x0e\x3b\xad\xd4\xc2\x0c\x5e\x9d\xa2\x7e\x00\xab\x72\xe7\x6f\x2e\x6b\x49\x85\x8a\x5c\xf4\xae\x1e\x5a\xa1\x99\x56\xdc\xb0\xef\xca\xc9\x32\xd5\xca\x44\xf2\xd8\x49\xc9\x63\x93\x0d\x7e\x52\x2b\x21\x98\xf2\xf7\x72\xb9\x8d\x08\x2c\xfd\x69\xec\xab\xa8\x92\xc1\x69\x84\x43\x97\x68\x7b\x66\x1e\x84\xc4\x12\x14\xca\x06\xc1\x82\x26\x84\xaa\xd9\x58\x7a\x40\x84\x31\x45\x67\x6f\x08\xd3\x6d\x7b\x6e\x66\x12\xf5\x3c\xb7\x14\x6d\x6c\x84\xa7\x32\xfd\x32\xd7\x6e\xbc\xb2\x52\x4b\x9d\xeb\x4b\x1d\xb9\x14\xd0\x35\x62\x85\x9e\x03\x5d\xb3\x78\x24\xdc\x1c\x2f\x60\xbc\xb3\x13\xbb\x32\xad\xf2\x40\x9a\x23\x05\xfa\x8b\x0d\xb7\x86\x8f\x48\xee\x09\x9d\x1f\x80\x34\xce\x43\xb2\xf2\x44\xce\x25\xf9\x6c\x79\x20\xef\xd8\xe3\xb6\xbc\xb3\x53\xeb\x83\x08\x87\x23\x38\x40\x9e\xcc\xd4\xd2\xca\xe1\xd6\x3e\x2f\x75\x41\x4d\xf7\x6c\x62\x28\x9a\x93\x2e\x84\x21\x97\xe0\x07\xc0\x1a\xbf\x05\x49\x2d\x94\x8f\xb8\x9d\x58\x18\x39\x83\x79\x7f\xcc\x2b\x0b\xf2\xdd\x2a\x5c\xe5\x11\x58\xd0\x68\x84\x07\x0b\x1a\x2d\xd7\x58\xa5\x15\x89\xfc\x2a\xef\x8f\x19\x46\x33\x82\xa3\x84\xed\xce\x16\x31\x8b\xfa\xd2\x3f\xb7\x36\x8d\x4e\x5b\x5b\x53\x72\x87\xc0\xe1\xe4\xa1\x62\x31\xc2\x47\x67\x94\xbb\x77\x46\x21\x0f\xdc\xc9\x82\x34\xc6\xb9\x4c\xbe\x62\x9c\xcb\xa4\x02\xe7\x32\x79\x18\x46\xc9\x58\x00\x16\x80\x48\xfe\xb3\x90\xff\x04\x9d\x81\xe7\x03\x52\x6d\x38\x54\x6f\x25\xf8\xd9\x2a\x57\x14\xab\x2f\x44\x43\x67\x94\x7a\xce\xa1\x0b\xc4\x59\xac\x33\x9d\xf0\x89\x52\xbf\x16\xe2\x57\x0a\x01\xe0\xbe\x47\xac\x29\x16\x1a\x45\x09\x62\xc7\x30\x98\xe6\x02\xc5\xe3\x86\xe9\x54\x2c\x60\x69\x51\x55\x96\x55\x1d\x7a\xee\x89\x31\x98\x2b\x3d\x08\x62\x04\xa9\xeb\xa9\x35\x5f\x96\xd9\x11\x13\x84\x1c\x50\x1f\xb9\x0a\xc0\x5c\xac\x22\xe7\x18\x3e\xc0\x73\xd7\x5b\x09\xff\x93\xfa\xf9\x5c\x2f\x41\xe2\x63\x89\x13\x40\x01\x01\xdb\x7b\xde\x56\x92\x45\x4e\xf3\xe2\x03\x8a\xce\x7c\xa2\x37\x66\x11\x2e\x28\x01\xd7\x25\x20\x20\xec\x5d\x0b\x86\x5d\x02\x30\x08\x15\x8c\xe7\x62\x85\x67\x03\xb0\xc4\xae\xb2\x22\xe8\xf0\xcf\xb0\x9a\xa0\x04\x10\x0f\xc0\x0c\x30\x67\xe9\x65\xe9\x55\x44\x62\x94\x63\x19\x0f\x28\x38\x2d\xd7\xdb\xd9\x49\x06\x61\x94\xcc\xf9\x15\x21\x1f\x59\x0a\x49\xd4\x9c\x05\xbe\xa4\x70\x6e\x75\xee\x45\x83\x8f\x72\xce\xf5\x0c\x2e\x44\x8e\x16\x01\x2a\xb0\x48\x3d\xa2\x79\x1f\x8b\x53\xe4\x81\x34\x11\x65\xe9\x1d\xc0\x4b\x50\x00\x55\x32\xbc\x78\x9b\x7b\x14\xef\xec\x98\x7f\x99\xee\x32\xdb\x25\xfa\x2e\x61\xe7\xc4\x48\x45\x6b\x3f\xb4\x75\x62\x53\x52\x79\xde\x95\x0d\x24\x3e\x74\x09\xd8\xf7\x40\x20\xc1\xee\x42\x3f\x11\x3a\x32\x69\xc9\x0a\x44\xa7\x22\x9d\x1c\x07\xfb\x91\xca\x60\x03\xa2\x0c\xd9\x1d\x44\x2a\xef\x0d\x36\x50\xcd\x66\xfe\xf5\x72\x2b\x56\x1f\xee\xec\xb8\x33\x3f\x56\x9f\x7a\x60\xc6\x37\xb6\x8f\x00\xf6\xcf\xb4\xba\x25\x04\x33\xd9\xc1\xb9\x6f\xcb\xda\x80\xc1\x75\x01\x5b\x29\xcb\x55\xaa\xf7\x21\xf5\x71\x79\x83\x00\xe8\x17\xd7\x4f\x0a\xa6\x5b\x26\x02\x7e\xb6\x38\x3b\x3b\xb1\x1a\xcc\x75\x60\x54\x34\xa2\x40\x7e\x36\x82\x4b\xbe\x71\xf8\xb0\xb0\x77\x73\x63\xce\xc2\x5c\xa2\x4f\x64\x93\xa1\x98\x11\x77\x3b\x2b\xcf\x77\x0f\x0c\xaf\xde\x33\xc8\xd0\x9f\x87\x37\x37\xd4\xdb\xd9\x51\xa7\x95\x57\x9b\x6e\x4d\x5c\xc6\x92\xe2\x1b\x0c\xed\xec\xb8\xe9\xae\x45\x72\x0f\xcb\x19\xbe\xb9\x71\x53\x42\x04\xf6\xc5\xc6\xc8\x5a\xda\xd9\xc9\xfa\x59\x98\x8c\x05\x8d\xbc\x14\xb9\x2a\xb4\xe8\x18\xa9\x1b\xa5\x88\x5f\x9e\x67\x4d\x4f\x2d\xfd\xbf\x39\x7b\xbb\xef\x6d\xb1\xf1\x5e\xe6\xb2\x37\x1e\x4e\x72\x03\xe6\x12\x7f\x25\xc0\xea\x78\x6f\x52\x0a\x91\x0d\x1a\xc9\x47\x82\x27\x29\x84\xc8\xe2\x73\x0a\xe7\xd3\x81\xf8\xff\xbb\x16\x4d\x45\xa3\xe5\xb9\x2c\xc0\xd7\xb4\x94\x04\xc9\x6c\xb5\xe4\xf7\x47\x02\xfb\x67\x90\xf3\x67\x57\x15\x25\x92\xe8\x34\x16\x4a\x48\xeb\x5b\xb1\x0b\xac\x48\x55\xfc\x6d\x94\xf4\xc9\x82\x25\x51\x88\x2a\x0a\x9c\x23\xd6\x0f\xb4\xc1\x7c\x45\x47\x30\xa1\x33\x18\x47\xff\x41\x7d\x21\xae\x56\x75\x48\x62\x6f\xa5\xc4\xa0\xb2\xdf\x51\xf0\xa9\x2f\x60\x8a\xfb\x10\x07\xd3\x2a\x3c\x2d\x6d\xf2\x37\xa4\xdd\x45\x7b\x69\x37\x78\x00\x69\xb2\x82\xff\x1a\xe7\xca\xe0\x61\xa7\xc9\x0a\x1e\x86\x08\x13\x82\x33\x30\x2b\xa4\xed\xf3\xc0\x9c\x3f\x89\xb2\x27\x19\x84\x37\x98\x56\x8a\x37\xc1\x48\x27\x40\x02\x97\x11\x56\x78\x0c\x1d\xe4\x85\x33\x31\x05\xbf\x21\xf8\x89\x4b\x0a\x61\x01\x66\x3c\x55\x54\xbf\xbd\xc4\x88\x4a\x50\x99\x55\x08\xc9\x2b\x5a\x13\x50\xb8\x8a\x91\xd7\x43\xb0\x05\x73\x4b\x71\x24\x58\x82\x8b\x08\x5d\xce\x0b\x60\x8c\x66\xa1\xcb\x08\x2f\xc1\xf9\x22\x0a\x6d\x31\xdd\x6a\x00\x8b\x28\x14\xc9\x15\xc5\x1d\x1d\x05\x9f\x7e\xe6\x44\xee\x48\xd0\xb8\xd1\x1c\x28\x82\x9d\xa5\x46\x04\x8a\xc0\x8f\x52\x99\x09\x44\xc9\x5b\x49\xb5\x8d\x14\x98\x29\xf5\x95\xdc\x4d\x92\x7d\x8e\x24\xc3\x23\x41\x39\xf4\x76\xa9\x48\x91\xae\x21\x2d\x0b\xd2\xc9\x67\xbe\xbd\xae\x73\x08\x09\x82\xf2\xea\xa1\x39\xf2\x2b\x7e\xf2\xc9\x61\xf6\x0d\x2d\x7f\x93\x4e\x06\x91\x71\x75\x29\x88\xe6\x98\x4d\xbc\x11\x1d\x93\xc9\x72\xe9\x8d\x34\x38\xd0\x39\xd2\xf1\xf3\xea\x49\x1e\x2a\x72\x69\x1f\x5c\x84\x92\x0a\xc9\xa1\xe9\xe0\x54\x4a\x9f\xd2\xe0\xa0\x31\x38\x5c\xfe\xa6\x0c\x92\xcc\xc6\x70\x72\xc8\xff\x2f\x03\x0b\x1d\xe1\x31\x6c\x37\xc8\xf4\xae\x1c\xc5\xe9\xaa\x52\x42\xea\x76\x6a\x9a\x91\xec\x85\x84\x0f\x58\x02\x85\x23\xf0\xd3\xd5\x4b\xeb\xde\x4c\x3f\x3c\x47\xfa\x1b\x5e\x54\xec\x52\xf5\x69\xf2\xd3\xd5\x07\x78\x2e\xb2\xff\xe7\x67\x57\xf1\x42\x9a\xba\x88\x85\xd5\xf5\x8d\x98\x67\x54\x99\x55\x91\xab\xd8\x9e\x9d\x7a\xa6\x72\xfc\xab\x52\xd6\x42\xce\xff\x93\x29\xb4\x92\xc5\x69\xc2\xa8\xbb\x07\x86\x9e\x6c\x1a\x99\x63\xd0\xaf\x87\x9e\x37\x5a\xb8\xb2\x5e\x8f\x33\xa7\x20\xe5\x6d\xec\x5d\x08\x2d\xd2\xdb\x21\x1a\x99\x2d\xc8\xca\x8c\x9a\x2a\x46\xb3\x70\xcd\xaf\xa4\x9a\xab\x9a\x75\x0e\x65\x12\x35\x2b\x73\x6e\xc4\xa8\x6e\xfb\x48\x88\xcb\x51\xf2\x12\xff\xbd\x44\x9a\xd6\x8f\x88\xdd\xdb\x3a\x4b\x13\xa0\xaa\xd0\x2b\x7e\x00\x5e\x0a\x37\x36\x09\xe7\xfa\xf6\x94\x33\xb4\xc5\x3e\xa2\xf2\xc8\x14\x64\x9a\x14\x19\xf5\x61\xd8\xb2\xa0\x9a\xb1\x9d\x1d\x5e\x82\x8f\x49\x37\x83\xcf\x95\xad\xf0\x9a\xef\xfb\xd7\x90\x9e\x47\x78\xe4\xec\xcd\x3f\x3b\x80\x4d\x29\x4a\xa6\x24\x0e\x47\x38\x03\x0a\xa4\x03\x22\xbb\xc5\xa5\x38\xf3\x94\x0c\x16\xd8\x7c\xb3\xb3\x73\x66\x88\x7b\x74\x20\xfc\x66\x04\x50\xad\x48\x19\x27\x2e\x86\x3c\x53\x3f\x5d\xc1\xd4\x6b\x6d\xdd\xea\xb4\xde\xcd\xd2\x5d\x73\xd2\x7c\xbb\x41\xfb\x0b\x1a\xa5\x2e\xb1\x23\x4b\x9a\x0e\xde\xd9\x6e\x00\x27\x7c\x3c\x36\xd0\x94\xd5\x5f\x2e\x68\xf4\x57\x12\xe1\x2a\x02\xf7\x6f\x12\x69\x0e\x60\x60\x76\x1f\x38\xbb\x0e\x70\x1c\xaf\xb6\xe2\x0f\xf0\xbc\xaa\x5e\x06\xcf\xd3\x4a\x79\xfb\xd2\x4d\x40\x33\x1a\xb2\x55\x4b\x9c\x74\xe9\x70\x0d\xad\x87\x6b\x68\x1e\xae\xe1\x64\xe4\x38\xa0\xf3\xc1\x74\x9c\x12\x92\x98\x71\xff\xb8\xf0\xe6\x46\x61\xad\x6b\x56\x93\x53\x92\xd8\xe5\x24\xa7\x04\xea\xcd\x72\x97\x9d\x93\xa5\x0b\xc9\xf2\x7c\xa4\x3a\x27\x97\xdf\xd0\x37\x37\x58\x1c\x46\xc7\xf1\x96\x4b\xc0\xcc\xf9\xb4\xe7\xa2\xd9\x7c\xd2\x87\xd4\x95\x82\xf2\x2b\xa2\x1d\xfa\x01\xc2\x17\x55\xc7\x93\xbf\xba\x6b\xfc\x2d\x7c\x61\x99\x3e\xc1\x96\x23\x7c\x21\x80\xf9\xc0\x05\xb4\x61\x04\xe5\xca\x94\x34\x0f\x5b\x35\x33\x70\x86\x50\x78\x0a\x83\x4f\xf5\x54\x8a\x4b\x92\x5c\x32\x52\xc9\x28\xeb\x70\x4f\xbf\x62\x1c\x6b\xda\x06\xc7\x9a\x36\xc5\xb1\xc6\x1a\x33\x9a\xd6\xe0\x58\x0b\xf3\x32\xa0\x77\x81\x63\x4d\x3d\x6f\x64\xf4\x69\xe3\x38\xd6\xb4\x1a\xc7\x1a\x3e\x44\x1c\x6b\x62\xcd\x57\xb0\x04\x49\xc5\x29\xc7\x84\x45\x67\x57\x15\xe6\xb7\xb3\x18\x26\xd3\xd7\xd2\x44\x93\x38\x1e\x88\xc9\xf9\x79\xa5\x39\x50\xbe\x74\x3c\x0b\xa2\xa1\x11\x78\xcd\x45\xdd\xa4\xeb\xe5\x42\x40\x5c\xd0\x0b\x60\x0f\x14\x33\xfc\x27\x1e\x58\x48\xc5\xbe\x1c\x5b\x46\x92\x6d\x79\x36\xb6\x87\xdb\xbe\x2f\x75\xdd\xc2\x80\xa6\x47\x2b\x74\xe4\x30\x0c\x5d\xea\x52\xf7\x7a\x09\xae\x59\x34\x43\x64\xc1\x46\xdf\xa2\x27\x40\x4e\x1e\x0a\x3f\xa8\x67\x4f\xf6\xf6\x96\x12\x4d\x5b\x04\xca\x44\x19\xa8\xa4\x07\xa0\x68\x6a\x14\xbb\x1e\x88\x18\x9a\x8d\xc4\x01\x37\xdc\xd1\xcc\xce\x94\xfb\x00\x07\x72\x5a\x07\x6a\x52\x39\x37\xe8\x7c\xa0\x10\x27\x11\xff\xe8\xe8\x94\x50\x26\xfc\x32\x7c\x24\xd4\x63\x87\x9b\xee\x34\x3f\xdf\xeb\xd4\x29\x33\x0e\x00\x94\x9b\x08\x69\xbc\x43\x2a\x13\x45\xee\x86\x48\x56\xdc\x91\x92\xd0\x56\xdd\x0f\xf2\xed\xee\x9c\xa2\x30\x0a\x20\x13\xee\xab\xca\x93\xa9\x49\x29\x23\x0a\xb3\xb6\xb8\xf0\x57\xaf\x2f\x62\x44\x06\xd6\x96\x53\x31\x7d\xb5\x65\x94\x8f\x77\xa5\x9a\x79\x53\x9c\x40\xec\x5f\xeb\x90\xdc\xa2\xf6\x4d\x3d\xd7\x7e\xee\xa3\x3c\x58\xbe\x0a\x47\xce\x27\xd6\x33\xb1\xb4\x8a\xc9\xf4\xc4\xa8\x47\x79\x2d\x9a\x07\xe4\x38\xf9\xe3\xc4\xb4\x5d\x80\xa8\x82\x76\xa5\x53\x64\x63\xf3\xe2\x31\x9a\xe4\xb7\x56\xb4\x6a\x6b\x71\x6a\xd7\x9f\x69\x72\x97\xdb\x62\x88\x77\xa0\x1f\xc4\x51\x5f\x94\xaa\xfc\xe8\x21\xc2\x83\x9e\x11\xba\xc2\xde\xc3\x4b\xec\x9e\x2e\xa2\x98\x0b\x90\xb7\xc6\x86\x16\xf7\x5c\x95\x5c\x48\x49\xdc\x20\x66\x5c\x06\x97\xea\x3d\xd5\x38\x84\xb5\x6b\xbe\x3c\x3e\x45\x89\x3f\x9e\x2c\x81\x98\x27\xbb\xaa\x05\x57\xcb\x7f\xfc\x7b\xb3\xd9\x76\x92\xc3\x14\xc1\xb0\x1f\x42\x06\xab\x76\x2d\x2f\x60\x2b\xfe\x10\xf7\x6b\x0c\xff\x73\xd5\x97\x41\xf0\x5f\x0c\x0d\x6e\x4a\x16\x71\x28\xd4\xad\xe5\xb1\x6c\x0f\x97\xa5\x5d\x24\xbd\xe1\x45\x7c\xc0\xca\x0d\xb5\x95\xc1\x3f\x0f\x54\xda\x7d\x33\x4a\x15\x7b\xd7\x36\xdd\xd4\x18\x8b\x64\x77\x03\xa3\x6b\x2e\xe7\x5e\x0f\xd1\x18\x4f\x6a\xc2\x81\x41\xea\x9d\x2c\xd5\x80\x8a\xcf\xe0\x9f\x6e\x15\x95\xc6\x50\x30\x50\x87\xb0\xc8\x47\x31\x63\x19\xe5\x90\xa8\x04\xa1\x1e\xc1\x8a\x5c\x8f\x23\x0b\xda\x3a\x52\x43\x28\xf4\x37\x35\xf0\xe3\x89\x25\xc1\x9a\x88\x32\x4a\xf3\xbb\x71\x0e\x9d\x79\xd8\xa5\x2d\x11\xdf\x14\xef\xfa\xa5\xb6\x93\x0d\xea\x3a\x4d\x08\xf6\x12\x3f\x47\xa7\x8b\xf3\x9c\x27\xb8\xab\x73\xf0\x72\xe6\x55\x3a\x39\x1d\xaa\x7f\x47\xc8\x2b\xe5\x39\xe1\x23\x26\xb1\x2a\xe0\x22\x6f\xa4\x1f\xc4\xe4\xdc\xb5\xa0\x85\xaf\x9a\xae\x39\x3c\x47\x7d\x16\xb1\x58\x9a\xcb\x6d\x44\x27\x2b\x52\xfd\xd9\x43\x24\x3e\x73\x32\x5f\xcc\xf3\x03\x66\x84\x46\xa5\x12\x0f\x71\x6c\xd9\x75\x98\x1f\xa0\x30\x64\x43\x86\xc2\x7e\x30\x85\xf8\x1c\x25\xe8\x16\x71\xc1\x2b\xdc\x5c\x10\x7b\x4d\x42\x14\xe7\x8d\x3c\xde\xb5\x00\xab\x7e\x47\xa3\x19\xa4\x57\x7f\x43\x57\xa5\x57\xef\xe3\xc5\x79\xe9\x79\xc2\x08\xad\xe2\x20\xc4\x3b\xc7\x03\x29\x40\x81\x9d\x8a\x03\x8b\x72\xb5\x69\x68\xd3\x56\x9a\xc3\x63\xdb\xf7\x45\x1a\xc1\xd4\x35\xd3\x71\xc4\x23\x09\x52\x22\x6f\x0a\xd1\xa1\xc1\x1c\xa1\x4f\x47\x2a\x5f\xc2\xc0\x9c\x0c\xd7\xaa\x12\xa1\xc2\x7f\x23\x0b\xa0\xa2\xc0\xc9\xe2\x23\x1d\x4f\x44\x48\x85\x81\x28\x84\xbd\x62\xc9\x34\x86\xd3\xf1\x64\x6f\xf4\xdf\xa6\x37\x3f\xf4\x73\xdf\xbc\xbf\xc2\x01\x17\x02\x1d\x6f\x8b\x0e\xa2\xe4\xb9\x30\x5d\x84\x37\x37\xa9\xe1\x0d\xde\xdc\x40\x3d\xda\x9b\x1b\xa4\x86\xb5\xc0\x31\x81\xe1\x09\x0a\x08\x0d\x25\xd1\xf6\x96\x4b\xc0\x07\xfb\x16\x57\xe7\x24\xcc\xa6\x44\x7d\x69\x99\x15\x7e\xff\x00\x4b\x70\xe8\x66\x61\x59\x01\xf5\xaf\xc3\x60\x84\x00\x4e\x46\x6c\x59\xba\x2f\x71\x1a\x99\xe6\x52\xe9\x3c\x99\x3e\x02\xc2\xe3\xd6\x97\x5e\x71\xc0\x18\xd6\x1f\x0b\x44\xaf\xac\x23\xa2\x6a\x44\x32\xe8\xa7\xc2\x4e\x5e\x1a\xca\x13\xeb\x50\x9e\x98\x43\x79\x22\x86\x02\xc5\x50\x18\x1f\x0a\x06\x51\x38\x42\xe5\xf1\xd0\x6c\x3c\x50\x8d\x47\x3f\x02\x50\x8c\x87\xda\xc7\x53\xb3\x4e\xd0\x5b\x02\xe9\x7a\xb5\x62\xbd\x65\xa1\x15\x2b\x5e\x06\x11\xcc\x29\xa5\xa3\xe4\x58\x53\x30\x4f\xfa\x8a\xa2\x94\xe3\xf1\x00\xf2\x65\xb2\x34\x81\xc1\x08\x2f\x90\x5b\x87\x41\x2b\xb3\xfb\xf8\xa8\x14\x8e\xc8\xe9\x9a\x70\xfa\x90\x5d\x55\x7e\x4c\xfc\x9c\x08\x77\x76\xc7\xf3\x80\x4e\xfb\x93\xe6\xc0\x57\x09\x6f\xb0\x88\x68\xf1\x9b\x6f\x72\x3c\xd6\x4f\x33\x1a\xe8\x7a\x13\xa1\x41\xce\xf5\xc2\xaa\xfb\x4a\x6f\x08\xcb\x61\x94\x5c\x01\x88\xb0\x26\xfe\x25\x99\xc8\xfc\xa8\x8a\x34\xb5\xf3\x3b\x34\xc4\x31\x18\xc4\x55\x22\xa9\xf5\xba\x32\xde\xcf\x78\xfb\x89\xa8\xe1\x16\x4d\x96\x99\x95\x71\xd5\x15\xa5\xcc\x57\xbc\x3f\x35\xb7\x55\x2a\x21\xbe\x3b\x79\xf9\xfa\xe8\xe4\xf7\x8f\x7f\x7b\xf1\xbb\x70\x95\x5d\x49\x07\x45\x19\xeb\xee\x30\x03\x68\x6d\xfb\xa4\xb8\x3e\xab\xa4\x4c\x3b\x82\x57\xc7\x65\x92\x9a\x05\x46\x66\x44\xb8\xb0\x5a\x7d\x37\x23\xa5\x8d\xb3\x68\xbe\x36\xb5\x92\xb0\x90\xf7\xd1\x70\x2b\x23\xed\x17\xd9\x98\x96\x55\xb7\xcf\x9a\x36\xda\xeb\x25\xc0\xf2\xee\x29\x93\xe9\x2c\x20\xda\xc5\x8a\x4c\xeb\x47\x40\x5c\x38\x3e\x6b\x71\xed\x60\xf3\x22\x7d\x43\xc2\x4a\x20\x7a\xa9\x07\xb1\xe0\x31\xf0\x42\x16\x91\x51\xde\xbd\x59\x40\x77\x0e\x4b\x4a\x4e\x86\xe3\xf1\xe9\x70\xb1\xf0\xf8\x66\x95\x4e\x29\xb9\x48\x71\x49\x64\x97\x9e\xb4\xa3\xcd\x10\x83\x79\x94\x2a\x19\x49\x0e\x70\x49\xea\x59\x15\xde\x9d\x07\x6c\x6c\xb1\xed\x57\x5a\x28\x1f\xe3\x34\x1f\x02\x68\x38\xfd\xaf\xf1\x73\xa6\x5f\x05\x68\x38\x7d\x18\xee\xce\xd0\x72\xcd\x34\x47\x23\x59\x71\x21\x85\x41\x76\x11\x55\x39\x17\xad\xba\x00\xae\x97\xd5\x82\x87\x14\x21\xa5\xc3\x5f\x16\x25\x25\x0b\xbb\x42\x92\x74\x80\xdc\x9e\x38\x17\x5c\x56\xca\x2c\xc1\xaf\xb2\x8c\x4c\x63\x29\x85\x72\x32\x5e\x85\x56\x72\x2d\x46\x6c\xfb\x84\x13\xf6\xcc\x25\x50\x96\x10\x5b\x35\x73\xc2\x93\xd9\x83\x7d\xe7\x60\xef\xc0\x11\x36\x2b\x06\xa3\xd8\x77\xde\xc1\x73\xbe\x5f\x59\xef\x8c\x2c\x70\xe8\x80\x0c\xf4\x48\x10\xca\x6b\xa1\x3f\x4b\x46\x63\x3a\x59\xca\x34\x59\x47\x01\x8b\x2e\x6c\xa9\x3e\xf2\x4a\x55\x3d\xda\xad\x02\x98\x12\xa7\x14\x63\x74\x73\x03\x4d\x30\x07\x47\xa0\x01\xf3\xed\x6a\xdc\xa7\x9c\xa9\xb7\x70\xf0\x92\x85\xc0\x22\x1c\x8a\xf3\x2b\x12\xdd\x90\x19\x50\xe6\x34\x0f\xf0\x94\x94\xed\xce\x5a\xad\x91\x4d\x65\x02\x1c\x11\xdf\xa2\x88\x56\xaa\x07\x86\x15\xab\x85\xb2\xd5\x02\xda\xa8\x0b\x84\x25\xbb\x38\x3f\x85\x8d\x57\xc8\xd3\x21\x46\xde\x0e\x68\xbd\x06\xd6\x76\x9d\x0b\x7a\x53\xca\xac\xf2\xc9\x0e\x83\xa6\x78\xd0\xab\x4e\x76\x61\xb8\x0d\x74\x03\xd2\xf5\x39\x48\x06\x4a\xc1\xe2\x32\xaf\x90\x57\x86\xde\xdc\xe4\xd4\x3a\xaf\x51\x32\x7d\x81\x39\x59\x0e\x1d\xe5\xbf\x5c\x67\xb9\xb0\xf9\x34\x98\x7a\x6f\xb5\x59\xe4\x31\x1a\x18\x7b\x4c\x1d\x48\xce\x96\xad\x2c\x2a\x0f\xab\xe3\x0d\x18\x8d\x66\x6e\x0a\x23\xc6\x14\x64\xd8\xd3\xbd\x3d\x67\x64\x70\xc4\x8a\x3a\xf9\x74\x67\x07\x0f\x10\x0e\x93\xdf\x22\x36\x75\x9d\x63\xe9\x4d\x2b\xaf\x96\x53\xd4\x43\x72\x94\x9c\x2d\x4a\x6f\xa5\x45\x82\xc4\x46\xed\x21\x1c\xce\x49\x84\x99\xe3\xed\xec\xa4\xe9\x76\x8a\xf3\x03\xb6\x87\xd2\xb9\x4d\x60\x3b\xca\x9b\x12\x71\x62\x34\x2a\x62\xa7\x75\x17\x8b\x53\x8b\x7a\x7f\x8e\xe8\x2c\x12\xd0\x7f\xfd\x29\x63\xf3\xbe\xcc\x96\x7e\x4f\x37\xfd\x8a\xad\xbc\x72\x54\x65\x0d\xd1\xda\xf8\x52\x5b\x55\x0a\xa6\x9f\x29\x3c\x17\xee\xf3\xed\x55\x4c\x3d\x43\x99\xb4\xd1\x25\xde\xa8\xb0\xf1\xe8\x0e\xf9\xe8\x0e\xf9\x5f\xe4\x0e\xb9\x11\x6a\x74\x7f\x28\x90\xf2\xc2\x43\xd2\xcb\xee\x97\x0f\x1f\xde\x8d\xaa\x2b\xa8\xa6\xac\x0e\x40\x03\xfe\xf1\xcd\xcd\xf5\x52\xf2\x6b\x5d\xc8\x5a\x0b\x8d\x89\xe1\x0f\xb7\x96\x5a\x37\xab\x67\x05\xae\xd8\x57\x4c\xea\x60\x1b\x52\x87\x9b\x92\x3a\xaa\xc9\x0a\xae\x21\x75\x44\x4e\xf5\x5d\x90\x3a\xec\x79\x23\xa3\x4f\x1b\x27\x75\xb8\x9a\xd4\x91\x87\x48\xea\x92\x35\x48\x5d\x07\xcb\x44\xa5\xc9\x4e\x41\xd9\xa0\x41\x6a\x47\x06\x86\xe0\xe0\x42\xf7\xfa\x48\x7a\x02\x3b\x30\x8e\xc9\xa5\xc3\x89\x59\x3d\xfd\x59\x2d\x77\x54\xda\xb6\x72\xc2\x84\x6c\x77\xa0\x55\xcb\x26\x2f\x8f\x80\xf3\x2e\xa5\x90\x89\x03\xc6\x13\x25\xca\x82\x1c\x02\xfa\xc6\x8d\xae\x24\x35\xba\x0a\xd0\x64\x0c\x24\x39\x19\x7d\x23\xe1\x1f\xf9\x14\xf6\x7c\xbf\xe7\x7c\x93\x06\x3a\x81\x6f\x9c\x1e\xa1\xbd\xe7\x28\x61\x11\x16\xc0\x2a\x59\x21\xaf\x58\xaa\x50\xcb\xff\x54\x7e\xfa\x3f\xce\x37\x5e\xad\xbd\x97\x14\xed\xbd\xa4\xce\xde\x6b\xb7\xf4\xf2\x8b\x8b\xb4\x75\xf8\xce\xa7\x42\x59\xcb\xd8\x14\x25\x3f\x13\xe1\xc2\x6a\xb9\x57\x3e\x95\xe2\xab\x36\x6b\x65\x6a\x7d\x36\x3f\x5d\x34\x38\x94\x34\x7f\x28\xab\x34\x00\x54\x87\x5f\x74\xde\xa8\xfc\xd6\xcc\x1b\xca\x90\xa7\x71\xc0\xfe\xfa\xfe\xed\x9b\x81\xd4\x9a\x47\x67\x57\xee\x98\x02\x06\xd0\xc4\x03\x49\x0b\x43\x76\x8a\x78\xdc\x4b\x6e\x6e\x5c\xf5\xa5\x46\x18\xff\x9b\x00\x36\x35\xac\x68\xcc\xc0\x19\x17\x46\xcb\xa2\x84\x9d\x48\x0d\x60\xec\x5f\x47\xe1\x08\x01\xed\xd7\x40\xcb\x5b\x1c\x66\x5b\x3c\x56\x5b\x5c\x3f\x6a\xe5\xc6\x10\x9b\x56\xb2\x15\x3a\x18\xb0\xce\x42\x38\xbb\x22\xda\x43\x82\x6f\x39\x1a\x69\x2b\x3f\x4e\x0c\x12\x34\x87\x42\x3d\x3e\x72\x76\x9d\xda\x51\x93\x95\xa3\xae\x58\xb0\x3a\x27\xd0\x1a\xa6\x08\x6d\xfb\x79\x7b\xdc\xdf\xd0\x95\x23\x83\xa8\xcb\xfa\x23\x2c\x0d\x5b\x07\x7b\x07\x8e\xf9\x15\xae\xd5\x21\xe9\xcd\x5e\xdc\x97\x72\x57\x12\x9f\x96\xb7\x24\x2d\x7b\xa5\x6c\x91\x9d\x1d\x92\xf7\x89\xf0\x96\xca\xfe\x51\x32\x1d\xb6\x50\x53\xa6\xa9\x8a\xba\x51\x32\x4b\x20\xe8\x26\xdd\x1a\xae\x35\x6e\xb6\x8c\xf0\x10\x41\x9c\xce\xf1\xdb\x37\xef\x7f\x7d\xf5\xf1\xf5\x8b\x0f\x27\x2f\x8f\xdf\x7f\x7c\xf7\xf6\xd5\xab\x8f\x2f\xdf\x7c\x78\x71\xf2\xf7\xa3\x57\x8e\x77\x73\x33\x44\x07\x4b\x60\x23\x71\xc1\xd9\x79\x85\xb2\x73\x11\xf5\x25\x73\xd4\xc5\xe3\x7e\x2b\xf3\xc3\x1b\x04\x67\xe7\x62\x4b\x78\x80\xf9\x68\xa0\x26\xf7\xa3\x86\xfb\xff\x48\xe6\xbc\xd2\x44\xe0\x86\x33\xf3\xf5\xe7\xab\x8f\x4a\xe5\x97\xff\x2c\x7b\xbe\xa5\xb1\x39\x8a\x95\xde\xdc\x38\x73\x4a\x66\x88\x4d\xd1\x22\x71\xa4\x97\x9e\x7e\xe7\x4b\x88\x99\x81\x5c\x30\xb1\xab\xe4\xd7\xef\x54\x01\x95\x9a\xbb\x9c\x5e\xa8\x40\x2f\x32\x98\xc5\x71\xae\x01\x3d\x85\x27\x88\xd3\x42\xf5\xed\x7b\x24\x30\xd3\x18\x40\xe0\x7a\xa9\x0e\x70\xfd\x07\x0c\xb2\xb4\xfc\xc4\x66\x96\x28\x9f\xef\x94\xa9\xba\x9e\x21\x06\x47\x14\x24\xa2\xd5\x11\x1a\xef\x4d\x06\xf2\x37\xe0\x47\x90\x3f\x19\x4e\xc4\x69\x4c\x96\x29\x0b\x55\x48\x76\x54\xeb\x43\x90\x76\x5d\xa7\x56\xb2\xf4\x5d\xf4\xbc\x9a\xef\x43\xd2\xf0\x4f\x0d\x26\xae\x94\x0e\xa9\x59\x1f\xb2\x04\x4c\xeb\xf6\xa2\x2b\xc5\x90\xd1\x66\x0f\x51\xb1\x2b\x7a\x2e\x67\x5f\xe6\x61\xba\x2b\xff\x17\x8a\xce\x28\x4a\xa6\xc2\xef\xa0\xc6\xdf\x45\x25\x87\xaa\xf0\x7a\xe9\xaa\xc1\x55\x29\x06\xd7\xd3\x73\xa8\x4a\xee\xda\x83\xad\x8d\x08\x68\x77\xaf\x4e\xcb\xbe\x7f\xf5\xeb\x5f\xd2\x82\xb5\xbb\x44\x0e\xd5\xea\x6b\x59\xd6\x91\xc1\x10\xce\x19\xa2\x3f\x13\xea\xea\x2f\xbd\x01\x9d\x07\xae\x85\x79\x4f\x8f\x21\x45\x7f\x2c\x50\xc2\x7e\x26\x54\x7a\x26\x6b\x46\x4e\x14\x5b\x7a\xc0\x96\x0c\x83\xcf\x1c\x48\x9b\xb0\x5a\xd1\x37\x90\x59\xaf\xbc\x7b\x51\xc6\x9b\x31\xc5\x9b\xe9\x47\x80\x49\x34\xd3\x16\x42\x17\xeb\xee\xe3\x27\x87\xbe\x1b\x46\x89\x32\x70\x3d\x6e\xe8\x96\x1b\xba\xda\xf1\xa2\x28\xb0\x8c\x27\x76\x87\x82\xbc\xb7\x43\x1a\xfa\xb1\x5c\x82\x34\xdd\x50\xc3\xda\xd7\xdc\x05\x08\xd7\x6e\x02\x01\x5d\xb2\xb9\x4d\xb1\x49\xc9\x1b\x97\xb6\x05\x25\x0b\x56\x9d\x0e\x59\xbc\x6c\x95\x11\xa8\xa5\x94\x5e\xbb\xcd\xe8\x66\xb6\xd9\xc3\xa0\x4c\xb6\x4d\x5c\x4c\x3a\x93\x13\x41\x8e\x8e\x5f\xbd\xff\xf8\xe2\xcd\xd1\x4f\xaf\x5e\x3c\xd7\x0e\x09\xea\x5a\x48\xb3\x6f\x59\x5d\x98\x74\x90\x06\x5e\xda\x1c\x60\x64\x73\xe3\x89\xcd\x58\x3f\xbe\x3e\x41\x0a\x4a\xdd\xe1\x7b\x90\x0b\xd5\x0e\x38\x12\x48\x09\x23\xe7\x92\x46\x0c\x39\xe0\x28\x8e\xc9\x25\xdf\x85\x95\xc7\x38\x17\x3a\x74\x5d\x48\x9d\xca\x9f\xaa\x8d\x37\xf8\xa8\xfe\x55\x90\xd0\x02\xcd\x78\xa0\x9e\x41\x51\x6d\x06\xff\x20\x9f\xbf\xc4\x67\x24\x71\xbc\x5c\x58\x11\xf6\xb0\x1d\x42\x3e\x67\x0c\x19\xcc\x21\x85\xb3\xc4\xa6\x5a\xc7\xde\x35\x13\x1e\x6f\xaa\xcc\x18\x4f\xa4\x8c\x9e\xc1\x6e\xd3\xaa\x21\xa8\xae\x9f\xf0\xbf\x64\xbf\x52\x05\x94\x74\x47\xaa\x60\x96\x45\x4b\x42\xb3\x33\x88\x70\x10\x2f\x42\x94\x64\x77\x3c\x6f\xda\xc4\xce\x76\x75\x98\x94\x0f\x55\x17\xd5\xdf\x5e\x3e\xd1\x5a\xea\x64\x64\xba\x58\xa5\x8c\x43\x4d\x50\x84\x2c\x73\x73\x83\x6e\x6e\x9c\xff\x2f\x25\xbc\xe5\x54\x57\x86\x6a\xc3\xe2\xd6\xa6\x14\xbb\x4c\x58\xd9\xaa\x45\x2a\x71\xc4\x91\x6a\x33\x43\x05\x5c\xae\x23\x37\xe4\x53\x25\xdf\x4f\x01\x62\x06\x31\xac\x86\x94\x11\x91\x95\xdd\x63\xf2\x53\xa1\xdc\x06\xd0\x3a\x88\x09\xf9\xb4\x98\xab\x46\xd2\x79\x1a\xa5\x30\x63\x22\x61\x61\xff\x32\x62\xd3\xfe\x82\xc6\x8e\xe7\xad\x24\xc8\xf9\x09\xaf\xa0\x6e\x69\xea\x3b\x53\x71\x17\x90\x10\x8d\x98\x10\x9f\xd1\x08\x83\x30\x18\x51\x4e\xad\xa0\xcd\x48\x5c\x4f\xe9\x88\xb7\x04\x31\x39\x27\x0b\xb6\xaa\x51\x5b\xdd\xf2\xcb\xca\x8a\x0b\x38\xf1\x6a\x21\xd4\x1a\x2a\x48\xf8\xe2\xb4\xc9\xeb\xe9\x98\x84\xe8\xa7\xab\x5f\x4f\x5e\x55\x44\x52\xe5\x63\x00\x12\x45\x51\xd2\x15\x04\xce\x29\x4c\xd0\xaf\x34\x16\x48\x32\xb9\x56\x05\xa0\x7d\xa1\x51\x21\x95\x57\xf8\xa2\x61\xed\x30\xb6\xbd\x27\x3d\xc6\x84\x94\x2e\xe0\x3b\x06\x22\x29\x9c\x72\x10\xe3\xc2\x08\x43\xbd\x4b\x98\xf4\x24\x60\xbd\xe3\x8d\x5c\x2c\x5d\x4a\xa5\xdf\xf3\x49\xb9\x84\xa7\x94\x90\x7c\xb8\xfe\xc1\xf7\xdf\x17\x12\xfe\xe6\xbe\x4f\x9b\xcd\x7f\xf5\x74\x6f\x6f\xc9\xca\xb2\x0e\x2b\x45\x7d\xca\x60\x6e\x5c\x8e\xde\x6e\x21\xaa\xea\x0c\xef\xeb\x58\x55\x60\x10\x27\x7d\xa5\x7b\x2d\xbf\x15\xd9\xef\x60\x10\xef\x46\x49\x5f\xb8\x89\xf7\x25\x2a\x67\x5f\x01\x03\x95\x79\xc2\x3a\xb4\x9b\xcd\x25\x8c\x2c\x62\xd5\x24\x85\x38\x20\xa2\x6d\x0a\x1e\x88\xdb\x2b\x3e\xd4\x18\x56\x1b\x70\x60\x0b\xd6\x10\x1a\xac\xa1\x9c\x6f\x9b\xa8\x2c\xf2\xa3\x59\xad\xa9\x6a\xdf\xe7\x4c\xa2\x0c\xcd\xe6\x31\xe4\xd7\xb4\x72\x9f\x4c\x7d\x27\xd3\x10\xc8\x0a\x99\x82\xb7\xc2\x38\x27\x12\xaf\x0e\xdd\x4c\xcb\xb9\x7a\x66\x72\xb1\x69\xce\xc9\x22\x46\x89\x53\xdc\xc7\x71\x8b\x7d\x5c\x44\x03\xe9\x20\x8b\xc8\x3a\xee\x53\xc8\xa0\xec\x51\x6b\xd3\xfc\x5d\x98\xa1\x80\xbe\xb9\x84\xb5\x29\x0c\x6c\xd1\xcf\x35\x46\x26\x65\x3d\x86\x2d\xc4\x85\x1a\x85\x74\x0f\xd9\x79\x5d\x79\xbd\x08\x33\xd0\x1c\xd2\x04\xb9\x68\xb0\x88\x42\x6f\x8b\xc9\xdc\x8b\x80\xc9\x98\x24\xa4\xd1\x06\x04\x68\xca\xc0\x30\x8f\xab\xe7\x2f\x9f\xeb\xa8\x1f\x8b\xe9\xa8\x9c\x7c\x1a\x14\x0c\x4f\xcc\xf3\xb6\xb0\xe9\x6c\x80\x81\x23\x9a\x7a\x99\x7e\x21\xa2\x6d\x0d\x5d\x75\x3e\x9f\xb4\xe5\x26\x37\xf0\xca\xf3\x61\x77\x82\xbf\xd5\x45\x8a\x33\x96\xb2\xe1\xd2\xa0\x9b\x73\xf5\x4e\x03\xee\xf6\x34\x97\xa0\x7d\x9b\x7e\xba\x72\x9d\x95\x33\xc4\xc7\x90\xc5\x7d\x08\x8d\x35\xf3\x7e\x70\xc9\xcd\x8d\x4b\x7c\x9a\xbe\x59\x51\x8f\x0c\x18\xc1\x9e\xe7\xed\xec\xb8\xd0\x27\x29\xf5\xc9\x26\x0f\xaa\x08\x3e\x90\xeb\xbd\x0c\xea\xf3\x00\x2c\xdd\x86\x2d\x54\x1d\x02\x32\xea\x5e\xdd\x85\xa2\x47\x0f\xfa\x26\x14\x23\xf8\x62\xf7\x60\xd7\xfb\xa4\x7c\xa6\xef\xa5\xf4\xb4\x62\xee\x4b\xa3\xb8\x6d\x6f\xa6\xdb\x84\x90\xa8\x04\x8f\xa8\x0c\x7b\x31\x25\x9e\xd2\x98\x9e\x5a\xc7\xf4\xd4\x1c\xd3\x53\x31\xa6\x44\x8c\x49\x8a\x63\x29\x0c\xa2\xb8\xf9\xa4\xcc\x16\x85\x23\x5c\x1e\x26\xc9\x86\x99\xa8\x61\xea\x47\x40\xa0\x78\xfb\xa4\x35\x52\x46\xd2\x9d\xcf\x5f\x91\xcf\xf7\x41\x6c\x63\xb5\x7b\xff\x02\x19\xba\x84\x57\x77\x01\x82\x72\x2e\x9b\xba\x93\x6d\xdc\x7d\x65\xd7\x8f\x10\xb9\xbd\x95\x6d\x82\xb4\xb4\x72\xf5\xb5\x07\xbe\x3c\xe8\x56\x04\x82\x0d\x2c\x7b\xde\x81\xea\xee\x08\x57\xee\x8e\xab\x00\x54\x90\x9b\xbd\x02\x4a\xaf\x15\xc0\xba\xb1\x73\x14\xf2\xec\x5a\x32\x53\x19\xbd\x76\x03\x7c\xd0\xed\xf3\x3b\xb0\xc4\xef\xd0\x4d\xf1\x3b\x72\x46\x5a\xcb\x6c\x8d\x4d\x8f\xab\x04\xff\x04\xc5\x67\x76\xf0\x51\x63\x5f\xf2\x42\x76\x3b\x49\x82\x02\x8a\x98\x3a\x09\x16\x25\x5a\x56\x1d\x71\x99\x77\x78\x2d\xed\x20\x84\xbe\x7c\x3e\x12\x39\xab\xde\x8b\xef\x5f\x3e\x1f\xa1\xe5\xa8\x10\x3d\xcd\x74\x5c\xf0\xa6\x20\x6d\x72\x53\x98\xb9\x6a\xbf\x93\x88\xaf\x75\x67\x6a\x65\xc4\xbb\x42\x8d\x35\x09\x42\x5a\xff\x09\x89\xeb\x21\x50\x56\xd6\x2e\x00\x6c\xf3\x75\x77\x65\x54\x19\x99\x93\x98\x9c\xb7\xd2\x7d\x3c\xc4\x68\xe7\x74\x9c\xb5\xfc\x5e\xa5\x9b\xf3\x81\xf5\x22\x38\x30\x2f\x82\x03\xa5\xd6\x28\x05\x49\x63\x09\x5f\x20\xa3\x88\xc9\xce\xce\x76\xb6\x07\x49\x21\x42\xda\xab\xd0\x95\x79\x2a\x40\x83\xf3\x16\x58\x38\x22\x0b\xee\x18\x7c\x8a\x70\xb8\x42\x73\x92\x14\x35\x27\x49\x9d\xe6\xa4\x96\x7b\xbc\xcf\xd1\xd9\x64\xe3\xd1\xd9\xa4\x61\x74\x76\x67\xce\x8b\x5d\xcd\xd1\x6e\x9a\x5c\x6b\xe5\x01\x34\x51\x8b\xad\x89\x45\x45\x6e\x52\x95\xec\xfc\x6e\xd5\x90\x56\x34\x63\xf3\xea\x10\x99\xd3\xb2\xec\xcf\xfc\x04\x3a\xde\xcd\x8d\xa3\xb4\xcc\x0e\x7f\xbd\xb4\xe5\x7d\xb0\x60\x1b\x19\xc6\x7d\xac\xf3\x7b\x8b\xdf\x67\x94\xcc\xf4\xcd\xeb\xa2\x31\xd3\x68\xbf\xc8\x60\x76\x3c\x20\x32\x51\x1b\x7d\x39\x8a\x63\xc7\x3b\xbc\x5e\x8e\x84\x8f\x4b\x57\xcd\x8f\x58\xcb\xdc\x02\xac\x5a\xce\x20\x8e\x10\x66\x32\x8d\xfd\x6d\xac\x37\x27\x66\xf9\xd0\xdb\x47\x98\xa8\xbb\x85\x89\x4a\x1e\x38\xfc\x11\x69\x9f\x6d\x38\xbe\xc3\x6c\xc3\xc9\x43\xcd\xa2\x9b\xa4\x27\x49\xcd\x4d\x25\x60\x58\xdc\x1d\x30\x4c\xb1\x3d\xed\x61\xc3\x80\x0d\x33\xec\x30\x37\xff\xa3\x0d\x20\x85\x1d\xca\xb1\x8d\xe4\xa1\x5f\x66\xb3\x13\x3f\x0c\xd0\xad\xc8\x37\x1d\xce\x00\x04\x2a\xee\x3b\xee\xca\x3b\xe6\x6d\x3e\x20\x52\xd1\x29\xe2\x96\x00\x8b\x22\xfe\xfe\x1a\xe8\xd1\x00\xfb\x32\xb9\x8e\xa3\xdc\x07\x1c\x10\x42\x06\x47\x6c\x09\x68\x3e\x44\x8a\x3f\x1e\x48\xc3\x88\x88\x7f\xc9\x71\x99\xbe\xef\xd3\x01\x85\xf8\x1c\xf1\x8d\x95\xa2\x5d\xbb\xd4\x03\x99\xf2\xa3\xd0\xeb\xc0\xcf\x92\xf0\xa1\x22\x7f\xe9\x0c\x9c\x34\xfc\x14\xe7\xfe\x8a\x15\xbd\xc9\xb6\xbe\xd8\xe9\x72\xdf\x1b\x77\xbb\x07\x42\x23\x2d\xc1\x99\x9f\x3a\x85\x9c\xd9\x4c\x58\x2a\x93\x14\x71\x43\x23\xb9\x66\xea\x7f\xa5\x18\x46\xce\x40\xfb\x89\xee\xc8\x98\x4e\x3c\x0f\xa0\x2c\x91\x00\x02\xc4\x4d\x6a\xdc\xb2\xac\x35\x66\xee\x90\x37\x37\x50\x39\xbd\x48\xdb\x9d\x66\xb0\xf7\x00\xe3\xac\x3f\x83\x94\xfd\x36\x45\xf8\xe8\x02\x46\x22\x5f\x9d\xe7\x46\x32\x57\xe8\x27\x74\x35\x0a\x80\x58\x45\x3a\xf8\x29\x26\xc1\xa7\x08\x9f\x8b\x74\xc1\x32\x60\x37\xf3\x3d\xbd\x56\xcd\x8e\x32\x20\xed\xc1\xa9\xfa\x80\x37\xaf\x7f\xeb\x80\x6c\x99\x63\x79\xc1\x25\x4a\xb0\x90\x69\xa4\x83\x34\x9b\xf4\x1a\x30\x73\x72\x23\x57\x94\x33\x79\xa1\x2e\xce\x5a\x0a\x7c\x6a\xb1\xb3\x23\xca\x52\x94\x20\x76\x0c\x83\xa9\x02\x60\xd6\x7f\x99\x95\x2a\x2a\x80\x30\x13\x91\x4f\x81\xc0\xb1\xa8\xb3\x02\x43\x81\x91\xb6\xc5\xc6\x7b\x93\x2d\x36\x1e\x4e\xf4\xc2\x71\x1e\x31\xf0\xaf\xf9\x6c\x09\x35\x50\xc0\x5b\xf2\xdc\xa0\x3a\x7f\xf7\x86\x9b\x16\x8b\xb3\x50\xa9\xbe\xbb\x71\xe2\x55\xac\xb7\x92\xca\x0d\xf7\xaa\x6a\x8f\x48\xb9\x86\x65\x8f\xc8\x2c\x8a\x22\x92\x49\x47\xb1\x27\x43\x8a\xc1\xa2\xec\x79\x14\xae\xe0\xb8\x93\x60\x8a\x66\xb0\x8a\xb7\x2e\x22\x7c\xe4\x00\x90\x9a\x95\xeb\x97\xf8\xf1\x55\x85\x35\xc4\xd4\xad\xba\xa0\xdb\x73\x1a\xd8\x91\x66\x46\x6c\x20\xa7\x09\xd4\xa0\xb7\x8c\xf0\xea\x42\x7a\x64\x23\xaa\xca\xb6\xf2\x23\x4d\x10\xa4\xc1\xf4\xcb\x25\xd8\x11\xcd\x0b\xac\x8c\x72\x2c\x04\x0c\x43\x41\xe7\x5e\xa9\xf4\xe3\xf9\xec\x0e\x32\x8a\xa8\xba\xc0\xb2\x5d\xae\x93\x94\x08\xd6\x66\xc8\x4a\x18\xa1\xf0\x1c\xed\xc6\x24\x80\x71\x5f\xfd\xb5\x51\x4d\x1b\x1a\x44\x67\x6f\x08\xd3\xb7\x45\x5d\xea\x2c\xd5\x3b\x87\x0f\x33\xff\x91\xdd\x77\xa6\x01\x19\xc8\xca\x1b\xd1\x00\xfa\xf2\xd9\xd9\xd9\xce\xfe\x10\x09\x79\xea\xd2\x3a\xab\xc9\x11\x58\x17\x4d\xc3\x63\x52\x3d\x17\x3c\x97\xe1\xa9\x5e\x95\xe1\xb7\x59\x15\xe7\x88\xfd\x9d\x4f\xb2\x5b\x09\x3d\x62\xe4\x60\x52\x1f\x6d\xe5\x51\x7d\x14\x9c\x50\x85\xeb\x3c\x27\xb2\xb2\x05\x2c\x18\x0e\xcf\x86\x52\x80\xbc\x25\x90\x68\x29\xb9\xa6\x8b\xd2\xd9\xcd\x8d\x8b\xfc\x31\x9a\xe4\x12\x43\xa9\x4e\x01\x2e\x04\x94\x12\x27\x23\x53\x25\x3d\x90\x07\x42\xf5\x46\x70\x2a\xe0\x3a\xcb\x48\x5e\xec\x54\x31\xf0\x71\x95\x16\x25\x21\x94\x7d\x31\x32\x11\x90\x99\xc6\x39\xc8\x1d\xf1\x56\x07\x9c\x95\x50\xec\xcf\x62\xc8\x1c\xe0\xfc\xf8\x59\xbc\xdb\x3d\x4b\x66\xab\xd0\xa6\xda\x4a\xda\xc9\x1d\x4a\xda\xe4\xa1\x4a\xda\x8f\x6a\xaf\x2f\xa0\xf6\x22\x0f\x5f\xed\xd5\x50\x3d\x93\x7c\xc5\xea\x99\xa4\x42\x3d\x93\x3c\x0c\xf5\x4c\x5c\x41\xef\x9b\x25\xa0\x8e\xc9\x79\x9e\x25\x84\x61\xf8\x97\x05\xa4\x61\x52\x63\x19\x3f\x17\x05\x2a\x6f\x74\xe5\x61\xe2\x62\x89\xb4\x4d\x25\xd2\x36\x1d\x0f\x27\x5b\x26\x8a\x18\xb1\x84\x92\x6f\x6f\xb3\x01\xc1\xa2\x03\x69\x02\xc3\x71\x32\xd1\x5a\x89\x86\xca\x11\x19\x7d\x07\xc6\x08\xb0\xc9\x12\xcc\x60\x30\x8d\xb0\x2d\x2f\x51\x67\x3c\x85\x14\x0a\x5a\xe1\x2e\xbd\x96\x4d\xe4\x53\x96\x2a\xb0\x84\x74\x42\xc5\x3c\x0a\x1e\x8a\xa2\x39\xa4\xe8\x78\x0a\xa9\x15\xc3\x2d\xed\x82\x8b\x4c\x8f\xec\x82\xab\x34\x27\xb6\x03\x82\x77\x76\xd4\x36\x12\xfb\x24\x71\x45\x64\x0e\x43\xd6\x40\x45\x2e\xe7\x6a\xdd\x08\x9f\xe7\x43\xfe\x7f\x3e\x1a\x10\x3c\xca\xc7\x3a\x12\x5c\xb5\xb4\xe6\xe7\x32\x07\xa5\xfa\x25\xaa\x51\xdc\x9b\x74\xd0\x06\x33\x4e\x80\x51\xc5\x46\xca\x78\xe3\x9d\x9d\xc2\x05\xc5\xbc\x43\x36\x1a\xb3\x89\x37\x48\xc8\x0c\x55\x84\x0f\xaa\xca\xb5\xab\x84\x0c\x07\xb3\x44\x0b\xea\x4e\xa0\xe5\x52\x24\x59\xa6\x73\x8a\x58\x25\x0a\xfd\x96\x82\xca\x31\x97\xc8\x45\x9e\x99\xfe\x26\xad\xc4\x73\x55\x70\x95\x58\x7b\xb9\xba\x19\xfc\x7b\xb2\x38\x4d\x02\x1a\x9d\xa2\xfc\x04\xe2\x81\xcc\x0b\x18\x8a\x3c\x67\x22\xa7\x24\xc0\x1e\xe0\x93\x98\xc5\xaa\xba\x58\xce\x21\x5c\x82\xf3\xe2\x59\x2c\x22\x66\x6a\xdd\x4a\x5e\xac\x41\x9e\x57\x06\x96\xca\xbe\xe5\xdc\xc2\xd0\x1b\xef\x4d\x0c\x3b\x32\x3f\x63\xa1\x53\x56\x54\xac\xf2\xb0\x90\xbe\x69\x96\xb4\x96\x21\x64\x50\xbd\xbd\x43\x37\x0a\x2e\xce\xaf\xf6\xa3\x28\x1b\x31\x3d\xa1\x1a\x96\x3a\xc5\x8a\xef\x79\x01\x55\x3c\xf5\x12\x6d\xa5\xee\x13\x38\xff\x25\x7d\x9f\x2c\x33\x80\xa7\x84\x0a\x6c\x26\xfe\x8c\x7f\x90\x53\xee\xc9\xc7\x59\x17\x2d\x2f\x23\x1c\x31\xd7\xe2\x35\x54\xa4\xde\x46\xa4\x1c\xf2\x0c\xff\x21\x70\x3d\x4b\xbd\x4a\xd0\x12\x30\x05\x45\x29\xf6\x3b\x86\xb1\x50\x60\xff\x4c\xe8\xcb\x50\x82\xb1\x4a\xca\xf7\x1e\xc3\x79\x32\x25\xcc\xbd\x96\xc7\xb0\xec\x52\x95\x69\xd6\x54\xfa\xdc\x7c\x07\xb2\xbc\x0f\x34\x82\x71\xf4\x9f\xf4\x39\xf1\x73\xfd\x31\x15\xd7\xca\x23\x0b\x10\xc0\xa7\x3a\xa0\x88\xf1\x0e\x55\x8a\xe1\x70\x80\x09\x9d\x89\xca\x4f\x50\x32\x27\x38\xe1\xa2\x26\x01\x5c\x36\x71\x78\x6d\x72\xd7\x03\x03\xe7\xe6\xb6\xc7\x50\x84\xd4\x01\x44\x68\x76\x6b\x87\xa1\x10\x92\x8c\xd1\xbc\x46\x0c\xaa\x91\x88\xaf\x9d\x58\xaa\xb1\x74\x78\x8c\x2d\xa8\xb6\x90\x93\xaf\x3b\xa4\xd0\x66\x26\x22\x1f\xa1\xab\xa7\xa1\x9c\x03\xab\x7e\x35\x99\x98\x03\x75\xef\x3a\x69\x9d\x6a\x5d\x4b\x31\xbe\x9b\xc0\x53\xb2\x0c\x9e\xda\x07\x89\xcd\x50\x61\x40\x01\x1b\x44\x61\x09\x6b\x66\x95\x33\x0d\x43\x9f\x59\x7f\x86\x60\xb2\xa0\xc5\x00\x75\x49\x6d\x73\x05\xaa\xbe\x7b\x88\x99\x76\x59\x14\x7c\xaa\x8e\xc9\x57\xa9\xf1\x64\x99\xd2\xf0\x64\x10\xf3\xa6\xbc\x81\xec\x7c\x76\xc7\x80\x7b\x41\xbf\x39\xb9\x66\x97\x08\xe1\x0f\xa4\xb4\x3d\x2d\x3e\xda\xcd\xb6\xa7\xe3\xd8\xa2\x15\xf7\xf3\xf9\x58\xd5\x59\xb1\x44\x7b\x3c\xc9\x7b\x7c\xab\x82\x89\x4f\xb3\xfd\x3c\x85\x89\x9b\x78\x87\xae\x4b\x7d\x2c\xb3\xe0\x78\x66\x22\x6d\x36\xf8\xc0\xc7\xa4\x40\xbf\x13\x46\xe6\xae\xc7\x8b\x7d\x80\x54\xc0\x0f\x7a\x00\x0b\x11\x20\x01\xaa\xe4\x80\x11\x97\x02\x24\xe2\xf0\x3c\x40\xbd\x91\xab\x0b\x20\x99\x47\x22\x2c\x9b\x96\xcc\x1b\x4d\xcd\x65\x5a\x9d\x2a\x9e\x9a\xc4\xcc\xef\x64\x58\xf9\x6b\x38\x6f\xa7\xba\x63\xd1\x0c\x91\x45\xa5\xeb\x9a\xdc\x86\x73\xa9\x1f\x0c\x3f\xa8\xc2\xb7\xc6\xf6\xe4\x99\xbd\xd4\x07\xbb\x6a\x8b\xd6\x7a\x9b\xc9\xbf\x96\x80\x9f\x21\x9b\x43\x35\xba\xd4\x7a\xcf\x3c\x39\x4e\x93\xae\x4b\x0d\x8d\x25\x35\xfa\xca\x39\x15\x68\x12\xd6\xa8\x8c\x42\x9e\xf0\x7c\xc9\x07\x49\xc5\x04\x3c\xc7\xca\x31\x3e\xc8\xb1\x65\x00\xa5\x5f\x4e\xb7\xcd\x9b\xd7\xb4\xaa\x30\xa0\x14\xeb\x87\x8b\xad\x82\xe1\x16\xa5\x35\xce\xd0\x02\xa3\x24\x80\x73\xe4\x86\x24\x10\x64\x8f\x93\xaa\x17\x31\x12\x14\xf0\xa7\x2b\xe1\xb2\x61\x9e\xf4\xe8\xa3\x46\x63\xe5\xf2\x53\x40\x84\x4d\xd1\xdb\x32\x6a\xce\x85\x51\x7b\x39\x84\x1d\x59\xa0\x99\xd2\x9d\x50\xb6\x9b\x29\xed\x93\xdd\x60\x8a\x82\x4f\x35\x53\x9c\x2a\xae\xd8\xa3\x2e\xf8\xe1\x64\xca\xc4\x99\x66\x95\x76\xcf\x94\x49\xcb\x3a\x55\xba\x2a\x53\x26\xcd\xd4\xaa\xb4\x61\xa6\x4c\xda\x5e\xc1\x4a\xbd\xfc\x48\x1f\x7a\xa6\x4c\x7c\xff\xb5\xc2\xd9\x83\x32\x59\xb7\xca\x95\x26\x96\xcf\x7b\x19\x34\xe5\x78\x87\x99\xda\x2a\x8d\x16\x01\x64\xcb\x81\x49\x20\x9c\xd8\x5d\x34\x48\xe6\x71\xc4\x5c\x67\xe4\x78\x60\xdf\xe3\x7c\xa8\x0b\x7d\x0c\x88\xcf\x39\x38\xe2\x63\x00\x7d\xaa\xc3\x39\xe0\x40\x56\x0c\x62\x9f\xa8\x9f\x3a\xde\x21\x51\xf1\x0e\x73\x98\x24\xfc\x8c\x8c\x34\xa4\x87\xfa\xdb\xf7\xfd\xf8\x70\x6f\x34\xdc\x12\xa5\x02\x1a\xb1\x28\x80\x71\x5a\x2c\x7d\xa0\xca\xf5\x55\xc1\x4b\x48\xb1\xa8\x4e\x35\x13\xdb\x9b\xe9\x57\xd4\xdb\x1b\xa6\x11\x10\xda\x9f\x28\x3d\xf4\x7b\xcb\x11\x5a\x2e\x1b\x92\x6d\x6b\x36\x9f\x8d\xdf\x8e\x6d\xd7\xbc\x71\xf7\xf3\x89\x24\x1e\x4e\xbf\x8b\x48\xd0\x8f\x97\xe5\xe3\x65\xf9\x78\x59\x3e\x5e\x96\x77\x7a\x59\xaa\xab\xa7\xfe\xce\xd4\x37\xe5\x28\xbd\x3d\x41\x8a\xb7\x07\x07\xc7\x9c\xeb\x4f\x8e\xd5\xed\xf4\x67\x52\x78\x90\xdd\x56\xd6\xf2\xff\x5b\x51\xbe\x9f\xdd\x6e\x45\x88\x3f\x5d\xc5\x6f\xf2\xfe\x4c\x5b\x54\x7f\x57\x34\xa8\xde\xfe\xaf\xbd\x74\x83\xe6\xde\xc9\x6b\x39\xad\x40\xfd\x5d\xd1\x9c\x7a\xfb\x67\x7b\xe9\xfe\xd0\xb8\xaa\xdb\xdc\xd5\x65\x38\xfa\x87\x73\xe1\x95\xf1\x09\x1f\x4e\xdf\x8b\x68\x52\x0f\xa7\xe7\x75\xe8\x47\x8f\x2c\xc7\x23\xcb\xf1\xc8\x72\x3c\xb2\x1c\x5d\x89\x51\x74\xe6\x56\xb0\x1b\xa9\x45\xda\xc2\x50\x00\xea\x8f\x9d\x77\x88\x06\x08\x33\x78\x8e\x72\xf7\xa3\x03\x4a\x6f\xd4\x45\x6d\x79\xa3\x59\x06\x47\x0f\x5e\xb3\x31\x78\x67\x87\x0e\x28\xba\x40\x54\x84\x73\xe5\x4f\x56\x3a\xa9\x9c\xd6\x64\x58\xe6\x7c\x0a\xf9\x78\xc6\x70\xc2\x0f\xfe\x18\x4e\x52\xc2\x36\x86\x93\x3f\xf3\x07\x87\xfd\xe1\x68\xb8\x5c\x2e\xbb\xd2\xe0\x47\xd2\xfb\x48\x7a\x1f\x49\xef\x23\xe9\x7d\xc8\xd2\xde\x6b\x94\x4c\x4b\x12\x5f\xf9\x61\x49\x2a\x2a\x17\xf9\xdf\x9a\xef\x6a\xc5\xb1\xec\xab\x4c\x02\x2c\x3d\xab\xe9\x40\x26\x09\x56\x7d\xd5\xb0\xf9\x4c\x22\x2c\x3d\xab\x69\x3e\x93\x0c\xab\xbe\xea\x2c\x1d\x96\x50\xe0\xee\xad\x98\xa2\xa1\xca\x93\x5d\x38\x9f\xc7\x51\x00\x6f\x5d\xff\x6c\x5a\x67\x7f\xf9\xf0\xfa\xd5\x4f\x90\x26\x03\xdd\x0d\xf7\x3a\x0a\x47\x4e\x82\x5e\xfe\xfe\x6e\xfa\xf6\x17\x07\x88\xf8\xb7\xd1\x37\xd7\x4e\x22\x73\xc4\x3b\xa3\xb1\x43\x9c\x09\x70\x84\x17\xaf\x24\xa9\xa3\xf1\xf8\x19\x70\xa6\x08\x86\xfd\x18\x5e\x49\xd7\x8b\x09\x18\xf3\xff\x4d\x26\xc2\x4b\x6c\x02\xc6\xfb\xc0\xf9\xd7\xbf\xb0\x33\x01\xe3\x21\x18\x3f\xd9\x03\xe3\x27\xdf\x82\xef\x27\x60\xec\x1c\xcb\xa8\x3e\xfe\x81\x93\xe6\x77\x75\x80\xf3\x31\x44\x73\x8a\x02\xc8\x10\x7f\xe7\xf4\xfa\x3d\x07\x38\xbb\x6c\x36\xdf\x3d\xa5\x24\x08\x48\x1c\xf5\x87\x4f\xbf\x7b\x7d\x39\xdf\xfb\xf6\x8f\x7f\x9e\xff\x95\xcc\x2f\x76\xc9\x82\xf5\x9f\x3e\x7d\xd2\x0f\x48\x4c\xf8\x87\xe1\x47\x3d\xac\x8f\x73\x4a\x24\xa4\xdb\xee\x8a\xa9\x1f\x4c\x4f\x13\x67\x32\x99\xe4\xba\xfc\x2d\x18\x3f\xf9\x0e\x0c\xf7\x79\x27\x55\xdf\x87\x43\xf1\xc7\x53\x30\xdc\x03\x63\xc7\xcc\x0d\x23\xd0\x9e\x27\x13\xe0\x98\x0b\xaa\xe6\x41\xfe\xc3\x87\xaa\x4d\xfc\x13\x30\xbe\x2e\x4c\xe6\x3e\x70\x7a\x3d\xfe\x82\xcf\x2a\x4c\xa6\x51\x40\xe8\xbc\xaf\xa2\x1f\xc1\x78\xbc\x7f\x00\x86\xc0\xb9\xa4\x70\x3e\x47\x94\xb7\x34\x1e\x3b\x3f\xce\xcd\x3c\xdf\xce\x8f\x61\xa0\xfe\xe1\xff\x2f\x75\x25\x49\xf6\x93\xff\x22\x58\xba\x37\x8b\x99\x7f\x72\x00\xf6\x26\x80\xff\xc3\x87\xa5\x86\xf8\x44\x8d\x90\x0f\x9b\x0f\x14\x8c\x1d\x03\x13\x8b\x4f\x92\x5e\xdc\x27\x07\xe0\xa0\xfc\xdd\x53\xf9\xdd\x41\xcd\x77\xf2\x83\x6f\xc5\x07\xfb\xbc\x0b\x0e\x45\x99\x4f\xa0\x9e\xb4\xc9\xea\x09\xfb\xd7\xbf\x70\x3a\x67\x64\xc1\x62\xa4\x37\xa1\xf3\x23\x16\xeb\x01\xc6\xf9\xf5\x68\x5a\xa7\xac\x35\xdb\xb3\xcf\x8c\x3d\xf0\x9d\x5a\x4e\x63\x69\xb3\x7d\xc3\x3f\x9c\x00\x47\x24\xf1\x41\x0c\x51\x5e\xeb\x70\xb2\x9c\x98\x25\xd2\x2e\xcb\xc5\xdd\x8d\x09\x94\x49\x6d\xf8\x1a\xef\x01\xe7\x22\x42\x97\x7d\xf5\x70\x52\x71\xa4\x6c\xed\xe4\x9a\xa9\x78\x3d\x11\x9b\xeb\xc5\x05\x8c\x9d\xd1\x19\x8c\x13\x04\x9c\xc5\xfc\x02\x8a\x02\x4e\x7e\x37\xc9\xcd\x24\xf6\x92\x38\x9a\xd9\x7e\x4a\xb7\x13\x0c\x24\xdd\x72\xfa\x7a\xf6\x1d\x03\x44\xcc\x99\xc3\x73\xd4\x67\x11\xe3\xc4\x49\xe7\x22\x03\x0e\x26\xac\x8f\xfe\x70\x80\x13\x9d\x39\x93\xe5\x37\x40\x64\x60\xbd\x9e\x09\x22\x26\x33\xc3\x35\x39\xac\x8d\x5c\x34\xb2\xcf\xd3\x6e\x25\xbb\xa7\x30\x89\x82\x7e\x48\xc9\x3c\x24\x97\xb8\xaf\x1c\x44\x6c\x2e\x9b\xf9\x92\xad\x6a\x7b\x40\x6e\x42\x4d\x86\xc5\x68\x24\xe2\x91\x36\x33\x49\xba\xb6\xaf\x6b\x92\x36\x33\x39\xf7\x76\x52\x2c\x48\xbc\xd6\xe1\xcc\xc9\x25\xa2\xfd\x04\xc5\x28\x60\xfd\xd9\x22\x66\xd1\xbc\x98\x89\x40\xce\x8d\x59\xb0\x4d\x55\xf7\x75\x82\x9a\xee\x1a\xeb\xa8\x76\x6b\x4e\x58\xc7\x89\xda\xfd\x5a\x8e\x99\x39\xba\xf5\xe7\xe7\xab\x9a\x8e\xdd\x53\x74\x46\x28\xea\xab\xd4\xf0\xeb\xcf\x4e\xb1\xc2\xaf\x6a\xb2\x36\x37\x4b\x5f\xe5\xf4\xcc\x63\x18\xa0\x29\x89\x4b\x19\x16\x3b\x4d\x91\x59\xdb\xd7\x35\x4d\x26\xb1\x3d\xa7\x64\x31\xdf\xc4\x6c\x95\x2b\xfd\xaa\x26\x4d\x62\x20\xf5\x53\x98\xbf\xb5\x27\xac\x50\xe1\x57\x35\x59\x1b\xe3\x05\x1e\x36\x0b\xc0\x45\xcf\x2f\xab\x11\x3b\xf8\xe7\x6f\xff\x49\xe6\xe7\xff\x68\xa3\x11\xab\xd0\x43\x48\x65\x4b\x2b\xa5\x46\xa6\x7e\xc8\xa9\xa0\xea\xd4\x0f\xab\x94\x0f\x4e\xbd\x02\x80\xa6\x9a\x2c\xbb\x48\xdf\x5c\x5c\x0f\x83\x2e\x52\x7a\x18\x88\x6c\x1b\x5f\x7a\xd9\xe7\xe4\xd7\x3f\x4d\x2f\xf7\x8e\xad\xcb\x5e\x5a\xf3\x6c\x99\x86\xc6\x32\xed\xad\x5c\xa6\xea\x65\x58\x77\xea\xc5\x24\xae\x31\xff\xbb\xfd\x33\x42\x67\x5f\x7a\x15\xa6\xcf\xd9\x1f\xe7\x27\xff\xbc\xb4\x1f\x3e\x15\x32\xc7\xe7\x08\xe2\x00\xc5\x0e\xc8\x30\x64\x1d\x11\xc5\xc3\x47\xe0\xb0\xab\x39\x2a\x1f\xd3\xe1\x1e\x70\xc4\x10\xf9\x29\xdb\x2f\xa9\xe6\xc4\xeb\x08\xc5\x61\x82\x98\xa5\x88\x59\x2c\x86\xa7\x48\xa8\xb1\x87\x4f\x01\x5f\xf8\x21\x18\x8b\x36\x45\xb8\xaf\x53\x52\x8e\xf2\xd7\x3a\x41\x5e\xaa\x31\xee\x4d\x61\x92\xa6\x8b\x51\xba\x4f\x7b\xab\x66\xcb\xc9\x1c\x62\xb3\x73\x6f\x14\xa1\x19\x3e\xa9\xfc\xec\x19\x70\x22\x3c\x5f\x64\xc4\x49\xac\x90\x50\x10\xcb\x33\xff\x23\x5c\x30\x72\x46\x82\x45\xa2\x49\x16\xef\x70\xda\x51\x55\xca\x28\x54\xd2\x4a\x1a\x7d\x2c\xf7\x43\x77\x3d\x8c\x2e\xc4\xcf\x03\x20\x53\xea\x01\x87\xc2\x30\x22\x9a\xed\xd1\x73\x59\x3d\x75\x1f\xc4\xaa\xda\xa7\x2e\x37\x71\x99\x1a\xff\x7b\xe3\x6c\x3e\x2b\xfd\x7e\x0a\xbe\x9b\x4c\x0a\x67\xb5\xa9\xce\x3e\xff\x5f\x79\x63\xd8\x97\xb1\x76\x39\x87\x25\x25\xf9\x53\x83\x86\x54\xac\x70\xb1\x46\xb9\xd4\x72\x9e\x9f\xe8\x39\x13\x93\xbb\x2f\x37\xaa\xaa\x77\x22\x1f\x3a\x22\x7c\x0d\x85\xc5\x4d\x2b\x7f\x1f\x18\xab\xa0\x67\x3f\xd7\xaf\xec\x7b\xa3\xa3\x4f\x81\x93\x1a\x1c\x0a\x97\x99\xd4\xfb\xa7\xc6\x88\xf4\x93\x03\x70\xa0\xb6\x43\x36\x1b\xd5\xe3\x2d\x6c\xb4\xf2\xf5\xf7\x34\xbb\xfe\x1a\x6e\xce\x6c\xe1\x84\x32\x3e\x3b\xcc\xed\x8f\xa4\xcc\xde\x93\xbe\x86\x6a\xfa\xbf\xd5\xd3\xaf\x6e\x8d\x3d\x61\x10\x7b\xfb\xe6\xfd\xaf\xaf\x3e\x3e\x7f\x7b\xfc\xfe\xe3\xaf\x27\xaf\x9c\x74\x5a\x77\xcf\x17\x51\x88\x44\x1a\xaa\xc1\x94\xcd\xe2\xff\x47\x17\x31\xea\x27\x73\x14\x44\x67\x99\x5d\x43\x1f\x27\x41\x08\xa7\x28\x9e\xf7\x30\x21\x73\x84\x11\xed\x61\x42\xd1\x19\xa2\x12\x5e\x40\x94\x62\x22\xce\xdb\x01\xce\xc7\xd3\x18\xe2\x4f\x66\x97\xdd\x5f\x8e\x5f\xf5\x7e\x26\x74\x06\x99\x97\x4e\x54\x3d\x49\x09\x48\x88\xfa\x28\x8c\x84\x01\x4f\x11\x96\x20\x86\x49\x62\x12\x96\x94\xd2\x24\x57\x98\xc1\xcf\xd2\x14\xf5\x09\x5d\xc9\x03\x5f\x77\xd6\x65\x3e\x65\xbe\xb0\xb9\x73\xae\x5f\x00\x4d\xa5\xb2\x72\xd3\x20\xae\xdd\x6d\x69\x9d\xa9\xa1\xa9\x09\x11\xcb\x48\x49\xda\xcb\x61\x6b\x2a\x71\x0b\x9b\xec\xe5\xf3\x6e\x54\xdf\x20\xf0\xbc\x8a\xca\x69\x30\xdb\x46\xb9\x1b\xf3\x37\xf4\xaf\x6f\xe2\xb8\x77\xce\x77\x19\x64\xa8\x07\x7b\xbf\xfe\xfa\xf2\x79\x2f\x3a\x93\xa9\x6c\xc4\x0d\xda\x8b\x92\x5e\x8c\xce\x58\x0f\xcd\xe6\xec\x6a\x50\x77\xf6\xea\x8e\x71\xfe\x14\x5b\x6a\x29\x5e\x2d\xb6\x2b\xa0\x76\xdd\x80\x83\xe2\x04\x35\x59\xbe\x21\x70\x4e\x17\x8c\x11\xb9\x0a\xdf\xf2\x36\x13\x95\x97\xc7\x46\x39\x9f\x1a\x7b\x3a\x4a\xde\xd1\x28\x61\x11\x56\xf4\x53\x3f\x55\x0e\x43\xf2\x61\x99\xe0\xa6\x17\x70\xde\xa0\x3c\x31\x9a\x36\x38\x4c\x41\x41\x93\xc5\xe9\x2c\x12\xdb\xe9\x00\x8c\x9f\x3c\xcb\x1f\x03\x01\x0c\xe4\xc8\xf6\xb3\x65\xd7\x73\xf6\x1e\x5e\x68\x46\xa2\xbc\x0c\xa0\x38\x3b\xcd\xa7\xc3\x32\xd8\x6e\xfd\x5f\xcc\xc3\x86\xfd\x6f\xba\xa1\xec\x6b\x2b\x7b\x22\x00\x2a\x2a\x26\x52\x71\x9e\x15\x1d\x39\x96\xaf\xeb\xc9\x88\xba\x03\x0e\xcc\x3f\x4a\x1b\x35\xdb\x16\xca\x1b\xe1\x69\x76\x6e\x81\x03\x31\xc1\x57\x33\xb2\x48\x9c\xf5\x58\x98\xcc\x2a\xcd\x99\x67\x71\xb3\xf4\xc3\x08\xc6\xe4\x3c\x25\x1d\x99\xba\x65\xec\x1c\x51\xd4\xbb\x22\x8b\x5e\xb2\x50\x3f\x2e\x21\x56\xbe\x6e\x31\x62\x2a\x9f\xd5\xd1\xf1\xab\x9e\x70\xcb\x39\x6c\x63\x7c\x2f\xf4\x48\xf0\xff\xfd\x24\x26\x36\xf3\x7e\xd0\xd6\xb2\x5f\x22\x6c\xc5\x45\xd7\x04\x59\x8e\x23\xdb\x09\x59\xa1\xd2\x56\xe0\xff\x1c\xf0\xfd\x2c\x3f\x51\x3b\x42\xfc\xb3\x57\xde\x18\xcf\xd3\x8a\x2b\xc9\x76\x71\xbf\x1e\x94\x7c\x08\x5a\xcc\x91\x5a\xc4\xee\x0b\x20\x87\xd5\x37\x77\x46\x69\x4b\x00\xe7\xc7\x4c\x26\xfb\x31\x48\xf7\x3e\x9f\x9a\x27\x72\x86\x86\xf2\x9f\xfd\x15\x77\x4d\x49\x85\x01\x78\x0d\xb6\xf1\x77\xf3\x81\xa8\xba\x47\x0a\x7f\xae\x96\xd3\xe7\x90\x4a\x47\x87\x88\xa1\x99\xe9\x0e\x11\x9d\xf1\xfb\xe4\x0f\xed\x39\x11\xc0\x79\xc4\x04\x20\x96\x92\x48\x39\x6b\xd4\x67\x14\x06\x9f\xa4\x5f\x27\x2f\x0d\x83\x29\xff\x07\x5f\x38\x19\x85\xce\x7c\x25\x30\x5f\x57\x07\xe2\xb0\xbd\x22\x40\x4a\xf3\x6b\xa9\x03\x30\xbc\xdd\x20\xe3\x06\xda\x80\xdf\x3f\xff\xdf\x15\xfb\xe7\xb3\x3f\x35\xd3\xc9\x3c\xe3\x4c\xee\xa9\xea\xb7\xdc\xa7\x7c\x8d\x92\x32\xb3\x99\x72\x89\x9a\x56\x4a\xd6\x0c\x38\x53\x8a\xf8\x2a\x4a\x45\xaa\xb8\xa1\xc6\xce\x07\x4e\xc9\x12\x27\xa7\xf0\x71\xc2\x60\x20\xf4\x2d\x4c\xbe\x2c\x52\xec\xbd\xea\x32\x13\xe3\xbe\x6f\xd8\x83\x13\xa2\x98\x5e\x4b\x07\x28\x31\xb8\x5a\x7b\xfb\xb9\x22\x1d\x9a\x17\x12\x4d\x54\xd9\x83\xb9\x7e\x5d\xdb\x89\x62\xa9\x8c\xf7\x2c\x3b\x0e\xd6\x9e\xbf\x28\xe9\xab\x4e\xf2\x7f\xfa\x8c\x38\xd2\x75\x8e\x9f\x14\x71\xac\x3a\x9c\x15\x0c\x2f\xd6\x39\x2a\x5c\x0e\xfa\xd2\x47\x65\xf1\x7f\xe1\xf1\xef\x97\x67\xc9\x5a\x8a\xb3\x34\xe1\xb1\xd0\xa0\xa5\x24\x4e\xcb\x60\xe5\xf3\x06\xe7\xf3\xfe\x45\x84\x2e\x73\x6e\xa0\xad\x3c\xf8\xea\xae\x30\x4c\x98\x29\xee\xb6\x72\xe3\xcb\x3c\xed\x60\x10\xef\x9a\x35\x25\x69\x43\xe9\x70\x7f\x54\xe3\xfd\x51\x8f\x54\xa9\x49\xc4\xcd\xf5\xad\xfc\xe7\x99\xe5\x02\xb3\xa8\x1e\xc0\xb7\xe0\x3b\xf0\xac\xca\xf9\xaf\x6e\xb4\xa7\x14\xc1\x30\xa0\x8b\x99\xf0\x4a\x6d\x75\x6b\x6b\x41\x88\xd4\x29\x9f\x52\x31\x34\xca\x94\x2c\x05\x05\x45\x26\x3d\xeb\x73\x6b\xd1\xb0\x1d\xc5\x71\xef\x83\x26\x69\x95\xba\x02\xab\xb8\x56\x7b\x71\x37\x9c\x26\x9d\xee\xa6\xdb\x0c\x4d\x87\x2b\x25\xc5\xbd\x4c\xf8\xea\x28\x31\xf6\x0c\x57\xd2\x42\x7d\x35\x4c\x4a\x49\xca\x2a\xd4\xf8\x06\x5d\x4a\xae\xba\x8d\x6c\x73\x1b\x2b\x20\x39\x9e\xc6\x9b\xd4\x2e\xfc\x68\x09\xf9\x60\x6d\xc1\x65\x7e\xd5\x57\x4c\xba\x5d\xc3\xad\xed\x70\x99\xec\x24\x66\xb1\x27\xff\x68\xcb\x1c\x1f\x93\xf9\x55\x4f\x57\xd0\x9c\x2b\xad\x95\x3d\x2c\x62\xc6\xd0\x94\x38\x63\x82\x95\x78\x61\x91\x2b\x8e\xf9\x5b\xd9\xa3\x1a\x45\xcb\x26\x44\xbc\x34\x5f\xf1\x43\x94\xef\xea\xe7\x58\x8b\x72\x8b\xa4\x7a\xa2\x7f\x4d\xea\xa7\xd9\xbe\x0b\xbe\x90\x0c\x67\xd2\xbc\x79\x53\x8b\x04\x90\x62\x5b\x53\xc5\x7b\xa3\x79\x6f\x2a\x57\x17\x16\xc3\xa6\x59\x91\xfb\xb7\xf7\x6b\x52\x27\x45\xaf\xec\x48\x26\xa4\x36\xea\xc8\x7e\x43\x15\x4f\xfd\x2e\xb8\x45\x69\x76\x13\x14\x3d\x75\x60\xef\x70\xa9\x7e\x0f\x1c\xcd\x07\x2b\x03\x72\xb1\xf9\x75\x43\x16\x18\x5d\xe4\x25\x80\x82\xe0\x9d\xc9\x01\x42\x04\x37\xe5\xe8\x0e\xc2\x00\x67\xe6\xd7\x11\x06\x44\x6a\xc3\x2f\x2d\x0d\xfc\xe3\xe7\x7f\x3c\x79\x7a\xfe\xac\xc2\x8c\xae\x72\xa4\x01\x47\x26\x23\x48\x7f\xa0\x30\xe3\xf9\xd5\x30\xd2\x7f\x53\x33\x4a\x6a\x31\x34\xe5\x06\x84\xf9\x83\x4f\xe8\x6a\x4e\x51\x92\x1c\xc7\x51\xf0\xa9\xb5\x38\xa1\x22\xaf\x4c\x9b\xad\xb4\x92\x7d\x90\x5f\xeb\x5e\xcb\x78\xa3\x36\x5c\x83\xad\xe6\x67\x45\x45\xac\xe3\xe4\x05\x57\xce\xe6\xba\xaa\x35\x30\x76\x64\x8c\xac\xd8\xad\x5e\x51\x23\x9f\xaf\x67\x06\x31\x3c\x17\x8d\x17\x6a\x7c\x9d\xbe\x90\x15\xab\x8f\xbe\xd3\x31\x54\xb9\x56\x04\x11\x34\x9f\xa4\xea\xff\x15\xcd\x67\xd3\x64\x34\x7d\x2c\x1e\xca\x66\x0b\xf5\x96\x2b\x54\xf1\x79\x99\x06\x40\xf1\x69\x36\x7e\xd8\x32\xdb\x5f\xbb\x58\x28\xae\x01\xfe\xaf\x56\x70\x3e\x6d\x24\x19\x0e\xf9\x17\x60\x78\xc0\xcb\xe7\x49\xf4\xad\x08\x3d\x95\x02\x8f\x26\xde\x9c\x89\x93\x62\x9c\xcd\xd2\x57\x74\x46\x28\x6c\xcf\x9c\x6f\x53\x8f\x11\x06\x6d\xf7\x61\x8d\xc9\xce\xb4\x85\x3a\x67\x42\x61\xca\x08\x89\x4f\x21\xed\x33\x72\x7e\x1e\x23\xc7\xea\x08\xb0\xf2\xba\xdb\xbc\xf8\x62\xf6\xba\xc2\x98\xff\x9d\xa9\xe8\x52\xd7\x4f\xce\xa9\xc7\xe0\x3e\xf4\xdb\x8c\x9b\xc8\x9e\x6c\x7a\xa4\x6a\x46\xdb\x0b\x6a\x65\xbf\x99\x22\x79\xda\xeb\x20\xb5\xa9\x1e\x2b\x27\x5e\xde\xb1\x92\xc0\x46\xb0\x4e\xdb\xea\xfc\x98\x52\x20\xfe\x5c\x3b\xf1\x97\x83\x59\xf7\x27\x05\x57\x3c\xc5\xba\x15\x03\x5b\x4d\xe2\x96\x1a\xc3\x95\x57\xc4\x40\x3d\x50\x74\x77\x1f\x98\xf4\x2f\x7b\xa6\xb4\xc9\x8d\x1a\x3c\x68\xd8\xa0\x55\xfb\x59\xc9\xf0\x6d\x62\x57\x74\x60\xf6\x34\xe5\x14\x13\x0f\x4f\x63\xd4\x4f\x0c\x6f\xd7\x30\x4a\xe6\x22\x9f\x13\x15\x34\x13\xd1\xbc\xca\x5d\x6c\x74\x07\x9a\xfe\x19\xdf\x97\xa3\xab\x0b\xb3\x2e\x98\x89\x9c\xf9\x1b\xa4\x71\xc6\x65\xde\xa0\xfa\x73\x0b\xb3\x90\x8b\x65\xde\x6f\xee\x9d\xdb\x90\x97\x16\x86\xe3\xf6\x7c\xb4\x34\x5e\x2c\x62\x48\xfb\x01\x89\xf9\x30\x4c\x7b\x5b\xc9\x8e\x21\x68\x85\x50\x2b\x8d\x60\x12\x38\xa9\xe4\xd6\x2e\x8a\xba\x85\x28\xda\x4d\xed\x66\x12\x4f\x4e\x38\x5a\x79\x2e\x96\x3f\x4a\xdd\xd9\x6c\x1f\x35\xd4\xc0\x34\x1a\x2d\x25\x97\x6b\x0d\x35\xac\x15\xb9\x6d\xd7\x89\xe5\x26\x51\x66\x85\x27\xfb\x22\xae\x5e\xfa\xeb\xe4\xb5\xb1\xc3\xf4\x6d\xa6\x60\xac\x9b\xd0\x15\x73\x5d\xec\xb5\xfd\x42\x48\x0f\xec\x81\xe1\x16\x68\x72\xbd\x95\x57\x43\x63\xe5\xa9\xd9\xab\x84\x51\x82\xcf\x9d\xf2\x90\x55\xd3\xab\x9d\x3e\x56\x29\x56\x7b\x75\x1e\x99\x2d\xdb\x2a\x2a\x61\x6b\xa7\x7e\x93\x3b\xb6\x03\x57\x53\xa8\x7d\x4e\xe6\xe4\x02\xd1\xfe\x0c\xe1\x45\x5a\x3f\xfa\x3c\x87\x38\x54\x97\x70\xea\xd5\xe9\xfc\xf8\x09\x5d\x9d\x12\x48\xc3\xa3\x20\x40\xd2\xe9\x2f\x59\x9c\xf2\x2f\x73\x54\xca\xba\x6d\x9e\x69\xb3\x8a\xa6\xc3\x42\xbe\x17\x76\xbe\x92\x44\x93\xd7\xc5\x7c\x57\xfc\x52\x1a\x07\xf3\xf2\x8f\x4c\xeb\xe4\x28\x5d\x9e\x93\xea\x9d\xba\x51\xc6\x86\xb3\x9f\x86\xdc\x74\xd3\xd4\xbd\x26\x14\x59\x9a\x6d\xb8\x3b\x1a\xf6\x51\xac\x6b\xc7\x0e\x96\xac\x47\x99\x17\x37\x26\x18\x35\x55\x30\xa6\x34\x2f\xfb\x9c\xf7\x4a\xe8\x05\x52\x37\xd5\x53\xad\x72\xe8\x0f\xd7\xa5\x8f\xfb\xc0\x79\x11\x4a\x8f\xb2\x5a\xff\x69\xa7\xca\x5d\xab\x92\xee\x29\xe3\xc1\x93\xa7\x60\xc8\x19\xe3\xf7\x22\xdf\x5d\xbe\x0b\x6b\x51\xbf\xcd\x4d\xb8\x19\xac\x20\x25\x2d\x53\x33\xc0\xc7\xf3\xfd\x04\xe8\x53\x93\xf3\xc9\x6e\xb3\x44\x8e\x70\xec\x15\xda\x1f\xa5\x63\x18\x9a\xab\xf0\x9e\x91\x79\x6f\x21\xc0\x0e\x57\xad\x45\x5d\xc4\x80\xdc\xc2\x2b\x87\x6e\xab\x62\xaf\x60\x00\x81\x31\xa2\xac\xa7\xd3\x11\x34\xa9\xb3\xce\xdf\xb4\xea\x0b\x43\x0e\x57\xfc\x53\xc3\xcf\x7a\x3d\xad\xee\x96\x2b\xb3\xba\x8d\xfa\x39\xcd\x77\xa6\x89\x45\x40\xff\x57\x69\x0e\x4a\xd2\x35\x2d\x5a\x85\x7a\x1f\xf8\xdf\x97\x51\x1c\xf3\xde\x8b\x8f\xc8\x82\x0d\x36\x31\x86\x36\xc5\xf6\x80\xb3\x68\x12\x8d\x91\xff\x24\x3d\x6f\x7c\xa1\xf9\x75\x47\xa5\x93\x65\xd3\xf9\xd2\xf5\x18\xfe\xb1\xd5\x67\x26\x90\x9a\xd2\x8a\xfb\x8e\x8b\x38\xe9\x7d\x26\x4d\x54\xc5\xa0\x09\xa3\x15\xd5\xbd\x57\xfa\x24\xb7\xd8\x12\x6d\xf6\x8e\xe1\x3e\xd0\x7c\x32\xba\x12\xa1\xa6\x16\x97\x4e\x63\x6a\x54\xac\x29\xbd\x6a\x75\xbd\x74\xe3\x51\xef\xfa\x4e\x58\x24\xe8\xd6\x2e\x84\xd5\x46\xbc\xde\xe3\x4d\xa0\xfe\xd3\x37\xc1\x22\x29\x33\x89\xa5\x06\xee\xfc\x1a\xb0\x78\x05\x3c\x12\xfa\x2e\x84\x5e\xf9\x1e\x34\xa3\xf2\xcd\xce\x4f\xab\xa9\xbc\x13\x12\x5f\xa0\x29\xff\x35\xf4\xdd\xa6\x17\x28\xcc\x5f\x47\x9a\x5e\xe1\xee\x60\xa3\xd5\xfb\xb6\xfd\xb9\xda\xff\x28\x41\x38\x3c\xd6\x3e\x48\xc6\xf6\x34\x62\x1b\x16\x12\xa7\x6f\xf5\x9e\x6c\x26\x69\x7d\x5b\x92\xb4\xaa\xe2\x5d\xda\xc7\xea\x36\x99\xf1\xd6\x34\xa1\xdd\x21\x28\xe8\x24\x36\x7d\xb7\xae\x8c\x34\x29\xf6\xfa\xf1\x7a\xe5\xd7\xab\x9c\xb6\x7b\x78\xc3\x9a\xa1\x55\x8f\x17\x6c\xf9\x40\xd8\x9c\xcc\x1a\xdf\xba\x59\xf0\x56\xb3\x8b\xb7\xf1\xe1\x6a\x35\xcb\x77\x72\xf7\x96\xc9\xce\x7f\xf9\xf5\x5b\x2e\xf9\x3d\x18\xee\x71\x6a\x5a\xed\xb3\xd9\x58\x63\x5f\x2c\x68\x8f\x0b\xb0\x97\x3d\x00\x45\x1f\x11\x7b\x39\x9b\x4b\xa1\xb3\x5a\x13\x2c\xc2\xb2\x3b\x1a\x29\xc5\xb7\x7d\x51\x30\xad\x18\xc6\x31\xb9\x7c\x45\xce\x23\x71\x52\x18\x5d\xa0\xfb\x69\x81\x9c\xee\x17\xce\x96\x9d\xfd\x68\xeb\xf1\xd0\x4a\xb1\xfb\x86\x70\x41\x29\xe9\x9d\x91\x05\x0e\xd7\x50\x06\xfc\x86\xe2\x80\xcc\x10\xbf\x1f\x78\x7d\xf7\xcd\x1c\x75\x4a\xc2\xd6\x3b\xac\x57\x73\x71\x7e\xc1\x95\xba\x9c\x22\x8a\xe4\x7a\xf5\x66\x90\x05\x53\xa9\xf1\x84\xac\x27\x7d\x55\x40\x8f\x50\x71\x5f\xcf\xe0\x55\x0f\x13\x9d\xa2\x43\x18\xc6\xf8\xf2\x5c\x44\xe8\xb2\xc7\xa6\x48\xd6\xc6\x0b\x42\x8a\xd4\xb7\xbc\xaa\x33\x42\x07\x6b\x6c\x84\x0f\xa2\x7b\x21\xc1\xff\xfa\x86\xf7\x08\xcd\x54\x26\x11\x88\xaf\x54\x8b\x88\x35\xea\xa2\x2e\x5c\xd5\x99\xdb\xd8\x4b\x8d\x8a\x35\xf2\x71\x5e\xe9\x17\xd3\xd9\xcd\xda\xfa\x7a\x5f\x7b\x29\x5b\x70\xd7\x6a\xc3\x17\x03\x82\x03\xc8\x4c\xf7\xe5\xd4\xe3\x69\xb6\xc8\x7c\x72\x7f\xba\x52\xfe\xb2\x89\x23\x51\xab\x20\xeb\xe3\xc5\xec\x54\xf8\xd8\x64\x0e\xcf\xe7\x4c\x7b\x3d\xcb\xcf\xfa\xa7\x57\x3a\x08\x59\x56\x0b\x4f\x05\x3f\x9f\x10\xca\xe4\x3b\x1d\x7a\xac\xd2\x66\x64\xc1\xc6\xc9\xe2\x34\x0d\xfc\x14\x2e\x3e\x9f\xd0\x55\x5f\xb8\x29\xf1\x2e\xc4\xa8\x8b\x2f\xb5\x60\xd4\xd6\x71\xa6\xd6\x51\xa3\xf7\x03\x9c\x6c\xf7\x74\xfa\xa7\xcf\xbf\xfc\xe9\x8f\x2e\x31\x96\x31\x49\xcc\x58\xcb\xe6\xe8\x64\x8e\xb6\xce\xc7\x51\x70\xa5\xa7\x41\x52\x5b\xf9\x87\x99\xe9\x41\x4b\x8e\xe3\x27\x07\xd2\x5a\x7e\x20\xcd\xed\x2d\x1c\x9d\x9c\xec\x94\x37\xa0\xf3\x7a\x82\x2c\xa8\x60\x2b\xcf\x94\xa6\xe8\x07\x45\x8f\x6f\x4e\xd2\xbf\x6f\x1f\x17\xa6\xba\x2b\x76\x76\x3f\x8e\x92\xac\xbb\x01\x9c\xab\xc3\x96\x79\x52\x39\x47\xf3\x79\x1c\xa1\x90\xd3\x3f\x4e\x9d\xcf\x08\xe7\x62\x04\x6d\x17\x5e\xb1\x23\x85\x32\xd4\xd2\x43\xaf\x4e\x78\x2d\x0e\x39\x1b\xe5\xad\x81\xd2\x98\x73\xab\x3d\x79\xf7\xad\xa0\x34\xfb\x55\xa0\x34\x4f\x8d\xcf\x36\x00\x4a\xb3\x37\xb1\x83\xd2\x58\x02\x6d\x1a\x82\xba\xd4\xdd\x92\xed\xe6\xc9\x32\x0b\xdd\x06\x66\xa2\xd5\x74\x1f\x58\x47\xb4\x9a\xdc\x0c\x1b\x68\x35\x4d\x43\x99\x36\x7f\x32\x73\x6c\xe3\x46\xa1\x66\x24\xda\xda\x03\x8a\x43\x6c\x1a\x0f\xb7\x97\xd7\x55\x3c\x2d\xe0\xcc\x58\xd6\xb2\x03\xc0\x8c\x4d\xca\x6c\x3c\x39\xed\x82\x13\xed\x9b\xca\x04\x89\xda\x30\x03\xaf\x46\x30\x23\x21\x8c\x8b\xdb\x8c\x60\x79\x1f\x4f\x72\xd0\xad\xd6\xb0\xbf\xb5\x1c\xa6\x6e\x4d\xa2\x2d\x6c\xb2\x92\x6c\xab\x40\x08\x23\xdc\x20\x5a\xb2\xa5\xa7\x59\xc3\xb1\x75\x15\x00\x8b\xe3\x6a\xa6\x41\xfd\x90\xd1\x82\x5e\x94\xf4\x54\x8e\xae\x58\xcc\xc0\x22\x41\x83\xde\xcb\x33\x41\x42\x82\x29\x21\x22\x8c\xd7\x42\x44\x40\x2f\x62\xd2\x69\xe5\x14\xf5\x28\x9a\x91\x0b\x14\xf6\xce\x28\x99\x15\xd8\x03\xdd\x33\x8b\x63\xea\xd3\x62\xc8\x96\xd8\x96\x05\xb0\x84\x7d\xe0\x8c\xba\xaa\xba\xea\x98\x1c\x2d\x2d\xfc\xa8\x90\x1e\x15\x1b\x38\x9c\x64\x90\x8f\x35\x08\x4c\x6b\xcc\xbb\xa4\x92\xbd\x00\x62\x2e\x5a\x9e\xa2\xde\x02\x87\x04\xa3\x81\xac\x6b\x55\x50\x71\xa3\x71\xdf\xc6\x0e\x5d\xc3\x63\x36\xd7\xef\x0d\x51\x78\x4b\xc4\xf3\xef\x28\x01\xbd\x76\xd6\x9c\xae\x51\xcf\x85\xce\x58\x6c\x7c\x0d\x95\xc4\x6d\x22\xe0\x3b\x89\xe5\x4d\xbd\xb9\xef\x00\xc1\xac\xb9\x96\xe4\x9e\xa0\x9b\xad\x80\x56\xca\xa0\xcc\x14\x29\x51\x01\xbb\x99\x96\x21\x83\x37\x53\xb2\x67\x2a\x7a\xae\x19\x75\x9d\x17\xf4\x37\xa3\x32\x50\x11\xa8\x5f\x54\x65\x40\x8f\x4f\x0e\xfe\xb1\xf7\xc7\x51\x43\x54\xf9\x94\xf0\x8a\x93\x8b\x09\x8b\x02\xd4\x53\xa2\x7f\x2e\xc2\x22\xc3\xef\x29\x5c\x43\xfb\xc0\x88\x33\x36\x97\x5f\xd2\xea\xf3\x98\x9c\xc2\xd8\xa8\x4b\x61\x99\x44\x49\xef\x74\x11\xc5\xac\x17\x61\x46\x7a\x32\x51\xe7\xbf\xbe\x49\x54\xdb\xbd\xe4\x2a\x61\x68\x36\xe8\xfd\xce\xef\x50\x88\x7b\x70\x3e\x8f\xaf\xe4\xe5\x29\x40\x89\x61\xac\x4b\x72\x69\x5a\x46\x95\x9e\x11\xda\x3b\x5b\xc4\xb1\xd2\x33\x0e\x64\x07\xe6\xe9\x25\xcd\x2f\x0b\x14\x46\x42\xd9\xd4\x23\x54\x5d\xb9\x32\xf9\xf1\xe9\x82\x89\x76\x4e\x51\x2f\x3a\xc7\x84\xa2\xb0\x77\x2a\x35\x97\xa2\x65\x7e\x0d\x47\x42\x16\x80\x58\xa1\xb1\x24\x83\xde\x2b\x04\x29\xee\xcd\x08\x45\xfc\xda\x27\x0b\xba\x2a\x6e\xb3\x25\x06\xb3\x98\xa0\x08\xf7\x33\x28\xb3\xc9\xa4\x1a\x5b\x39\x05\x66\xae\xc2\x64\x56\xab\x15\x92\x40\xe4\xab\xd6\xc9\x43\xd3\x05\x2b\xe2\xe6\x16\xf5\x0a\xd2\xae\xca\x77\x6f\x24\x44\x29\x31\x91\x56\xf5\x91\xf8\xca\x66\xbf\x4d\x5f\xe6\x30\x88\x2b\x42\xb3\xd2\xc2\xa1\x85\xe7\xa9\x8c\x3f\xb2\x37\xf1\x77\x91\x2a\xfb\x39\x64\x30\x40\x58\x10\xb2\xc6\xed\x65\x82\x83\x03\x7a\x45\xc8\x67\x03\x92\xb5\x12\x3a\xdd\xde\xa3\xe7\x28\x09\x68\x34\x2f\x2e\x42\x93\xb1\xe7\x3e\x2d\x35\xb8\x8a\x22\xdf\x82\xce\xea\xa0\x2d\xa6\x9e\x04\xa0\x54\xd4\x5e\x9e\xd0\xdd\xd0\x58\x1c\xe0\xfc\x9b\x44\xd9\xc5\xb0\x0e\x79\xe7\x44\x79\x23\xe4\xfd\x3e\x80\xee\xfd\xf5\x1f\x9f\x5e\x3e\x7f\x75\xfe\xce\xae\x10\xee\x02\x7f\xa1\x05\xe2\x6f\x5b\x09\xbf\xf9\x6f\x0f\xba\x09\xce\x4e\xee\x80\x3d\x15\xf1\xa5\xe8\x52\x09\x47\x82\x25\x2a\x26\x6a\xbe\xa5\x14\xcd\xd6\xa5\xb6\x24\x6b\x6e\xc3\x1b\x5a\x06\xf7\x22\x8c\xd8\x83\x1a\x9d\xc5\xe0\x54\x35\x64\xcb\x70\x65\xa4\x1e\xbf\xda\x19\x25\x71\xf2\x60\x86\x0c\x2c\x80\x22\x22\x67\x89\xcc\x1c\x2d\x22\x13\x11\xd6\x2a\x5a\x21\xf2\x7e\x2b\x4d\x1e\xdf\xb5\x51\xde\x34\x10\x18\xbb\xe2\x8e\x98\x9a\xcf\x64\x11\xef\x2a\x02\x6b\x07\x1f\xd1\x90\x23\x19\x08\x89\x22\x1b\x79\x10\x92\xfd\x9c\x68\xf2\x24\x95\xda\x2c\x12\x7e\x85\xf4\x01\xca\x72\x59\x13\xb5\xce\x7d\x01\xa9\x7c\x56\x0b\x2e\x9b\x47\xab\x7c\x97\xbd\xfe\x0a\xf1\x2a\xbf\xc0\x55\xd1\x53\x70\x94\x92\x7a\x36\x25\xc6\x65\x10\xc8\x42\x8a\xb3\x71\x1e\x79\xcf\xb1\x09\x3e\xeb\x29\x86\xff\x1e\xb5\xee\x75\xee\x7b\xe3\xce\x68\x43\xa4\x5b\x50\xee\xec\xbf\x02\xc1\xfe\xd2\xa8\x9f\x2d\x61\x43\x8a\xfb\xf4\x0b\x2c\xb8\x98\x0a\x03\x9e\x2e\xbd\x7e\xf4\x4d\xb2\x0e\x2f\x61\xab\xb7\x84\x7f\xb7\x26\x7a\x5f\x77\x6c\x3c\x75\xc5\xf0\xcb\x84\xa4\x7a\x9b\x3c\x3a\x5e\x2e\x4f\x7f\x94\x1c\x99\x17\x6a\x94\xbc\x50\x37\x6a\xe6\x6c\xb2\x06\xd3\xbf\x2e\xa4\x5e\x5a\xd1\xfd\xc0\xd6\x7b\xf7\xe2\xc5\xcf\xff\x17\x11\x3b\xd3\x2f\xfd\x70\x12\xe5\x73\x93\x87\xd6\xe3\x4f\xe4\x0f\xe1\x9b\x23\x7f\x76\x10\x12\xb4\x21\x7f\xd8\x8e\xf4\x5b\x38\xc3\xfd\xfd\x1c\xc0\xfb\x97\xe4\x09\x33\x5f\xa1\x6e\x5c\xbe\x6d\x60\xf7\x89\xe7\x6d\x3e\x3e\xf1\x5a\x61\x16\xee\x99\x04\xf3\x69\xb6\xda\x3a\xa1\x44\x18\xe4\x00\x37\xd2\x9d\xf1\xc4\x40\xf9\x7f\x62\x3c\x74\x40\x86\xa7\xb4\xff\x7d\x09\x42\x30\xfd\xfe\xc0\xf6\xfd\x41\xd5\xf7\x4d\xa1\x01\x2d\x83\xda\xd7\xd7\x00\xe7\x71\x32\x40\xa3\xee\xf0\x62\xed\x44\x85\xa1\x92\x15\x86\xad\x84\x85\x5b\x16\x17\x6e\x43\x60\xf8\xae\x00\x66\x0f\x64\x54\x80\xdd\x24\x58\xe1\xbd\x0e\xbe\xef\xe6\x6f\xbe\x61\x16\xb8\x8e\x45\xaa\x61\x83\x1a\x7b\x9b\xae\x5e\x59\x78\xd1\x9e\x0d\xaa\x25\xda\x0d\x9c\xbd\x0c\x86\x43\x66\x38\x19\x0a\x27\x85\xc6\xa6\xa8\x4d\x0d\xbe\xb3\xd9\x74\x85\x32\x7e\x68\x95\xe8\x36\x05\xa7\xb8\xc9\x19\xe8\x0c\xab\xf8\xed\xc4\x82\x7f\xbf\x36\xac\x62\x25\xbd\xb0\x00\x2d\x66\xe8\x8a\x39\xa4\x45\xc9\xa9\xf0\x67\xea\x57\x0a\x0c\xfc\x23\xc1\xea\x77\xe6\x4e\x90\x77\xde\xc9\xa1\x1f\x0e\x87\x65\x35\x7c\x03\xbc\xc5\x86\x75\xae\x00\x71\x34\x20\x1b\x0d\xed\x48\xf9\xee\x0c\x83\x2c\x47\xf0\xb8\x51\xc3\x2b\xc0\x1c\x75\xc3\x2f\x15\x3e\x64\xc3\xe1\x3c\x69\x59\x6b\x6b\xb4\xc8\x4d\x6e\xfa\xce\xe2\x5f\xfe\xb6\xcf\xf1\x33\xdf\xf3\x8a\xe5\x66\x75\x8a\x3e\x10\xad\x53\x43\x58\x5a\x2b\x86\x8a\xe4\xda\x32\x3c\xe8\x72\xd8\x89\x1d\x4f\x5e\x27\x68\xcc\xbd\x62\xa7\x0e\x72\xe0\x94\xc3\x5b\x41\x72\xec\x00\x50\x59\x49\x62\xec\x0e\x48\x04\x67\xbe\x2f\x69\x22\x1d\xcb\x81\x78\xca\x4f\x7e\x19\xa1\xad\xc2\x47\xa9\xb9\xfb\x62\x83\x49\xe8\x14\x02\xd7\xbb\xf5\x30\xb8\x5b\x65\xa8\x4a\x8c\x55\x75\x38\xdc\x3a\x37\x55\x4b\x9c\x33\x11\x68\xa5\xaf\xfb\xb5\xc3\xe2\x7a\xf9\xd0\x38\x2d\xd9\xb6\x44\x65\xb0\xb2\x0f\xd5\xfb\x70\x3d\x5c\xbe\x75\x3c\x25\x9d\x95\xe1\x72\x5f\x6c\x25\x37\x16\x36\x97\xd6\xb8\xf1\xd0\xb9\xde\x8a\xf0\x39\xdd\x72\xa3\xae\x66\xdd\x6c\x17\x42\x77\xe7\xfb\x6d\x4d\xbf\xc7\x82\x85\x46\x7a\xa1\x90\x20\xe9\xc7\x51\x3e\xab\x78\x75\xac\xf6\x0a\x24\xf5\x6a\x8f\x9c\x80\xcc\x66\x10\x87\xc2\x27\x47\x5d\x41\xc5\x34\xe8\xdd\x32\xa0\x3f\x37\x9d\x70\x7a\x04\xf7\xe6\x45\x93\x51\xcd\x64\xac\x78\x5d\x98\xab\x18\x41\x8a\x37\x3e\x59\xaf\x5e\x1c\x9d\xbc\x29\xcd\x96\xb8\xaa\x13\x14\x2c\x68\xc4\xae\xfa\x18\xb1\x4b\x42\x3f\x45\xf8\x7c\x57\x68\xd8\x23\x7c\xde\x87\x41\x6c\xf1\x67\x5a\x67\x2a\x4f\x10\x0c\xc5\xb9\x15\xee\x53\xeb\xcc\x5f\x8b\x8d\xbf\x46\x5c\xfe\x66\xbc\x30\x0f\xac\x46\x9e\x27\x1d\xb8\xf1\x5b\x0b\x45\x2d\x9a\x0a\xf2\x01\xa2\x5a\x18\x54\xa9\x5c\x4a\xae\xa0\x86\x0f\xa8\xcc\x56\x4b\x66\xbc\x3d\x26\x9c\x41\xb3\xf0\xd2\x58\xec\x0a\x19\xc9\xca\x9f\x8a\x38\x56\xa5\xa2\x12\x72\x97\x4a\xd5\xd9\xc0\xe0\x90\xc6\xb4\xce\x29\x0a\x25\xba\x90\x91\xb1\x46\xb4\x9b\xb3\x61\x24\xf3\x38\x5a\xcb\xf5\x74\xed\x68\x55\x91\x68\xf5\x7e\x84\xaa\xfe\xf2\xb7\x57\xd3\x77\x7f\xfa\x47\x85\x67\xd2\xed\x86\xaa\xf2\x69\xb0\x07\xaa\x6a\xcd\xa4\xd8\x09\x3a\x6c\x75\x92\x0b\x57\xdd\xcf\x45\xad\x96\x15\x94\x8e\x3d\x38\x2d\x67\x58\x4c\x25\xec\xbd\x92\x82\xbb\x49\xc0\x51\xcb\x90\xd3\x32\x2b\xfd\x9b\xe0\x29\xa2\x44\x3a\xc8\xf2\xe9\xe8\x2d\x12\x14\x1e\x96\xa8\x5d\x15\xfb\xd6\x13\x5c\xec\xbf\xbe\xa1\xa8\x47\x70\x7c\xd5\x13\x2e\xb2\x8c\xf4\x92\x29\xb9\xec\x45\x58\xc6\x83\xf3\x9b\xea\x8c\x50\xc9\x23\xd1\x68\x06\xe9\x55\x2f\x73\xda\xeb\x41\x2c\xc9\xb0\x8a\x85\x31\x5e\x29\x4f\x5c\x2e\xbb\xa5\x1c\x8d\xa8\x19\x5d\x20\x7a\xd5\x0b\x60\x82\x14\xf7\x96\xf5\x3f\x4a\x84\xe7\x6d\x84\xc2\x81\xcd\xab\xb1\x75\xf0\x6d\x96\x54\xf9\xb6\x43\x6c\xd3\x4d\xf0\x18\x63\xfb\x18\x63\x7b\xdf\x63\x6c\xcb\x94\xeb\x3e\x04\xd9\x9e\x90\x18\x3d\x86\xd8\x3e\x86\xd8\x3e\x86\xd8\x9a\x72\x8e\xb8\x16\xff\xab\x02\x6c\x4f\x14\x27\xd0\x32\xbc\x96\x7f\xf6\x18\x5c\xdb\x71\xce\x1f\x83\x6b\x1f\x83\x6b\x6b\x56\xaa\x2e\xb8\xf6\x31\xbc\xf6\xc1\x87\xd7\x0a\x41\xd9\x1e\x63\x0b\x1c\x88\xc3\x0e\xea\x0e\x43\x49\xb1\xbe\xae\xe3\x3e\x04\x61\x05\xaf\xff\x2f\xf8\xf9\x9f\x7f\x7d\xb2\xb9\x20\xac\x61\x27\xef\xf8\xfc\xb7\x4f\xf2\x29\x89\x5a\x71\x58\x4e\xde\x95\x31\x0d\x56\xe2\x17\xa9\xf3\x05\x7c\x18\xb3\xb5\x5e\x2b\x0a\xcb\x32\xac\x37\xe8\xf2\xa1\x8c\xaa\x73\xf4\xd5\x7d\xf1\x44\x6d\x3f\xde\x0e\xfe\x94\x07\x52\x6f\xf7\xf4\x9e\x86\x5e\xf1\x39\x78\x0c\xbc\x5a\x2b\xf0\xea\x5b\xd3\x4d\x4f\xec\xa9\x8a\xa8\xab\x13\xf5\xee\x2b\x0a\xb9\xda\xc4\xc5\xd0\x59\x1d\xd9\x53\x41\x57\x7c\x5e\x3b\x32\x6f\xe9\x2d\xb2\x3e\x8d\xcb\xfe\x7b\xd8\x71\x4a\x46\x6f\x0c\x0f\x5b\x49\x2b\x4b\xf1\x3c\xdd\x39\xc8\x3a\x43\x5c\xca\xd6\x09\x1e\x30\x1f\x97\x23\x49\xd0\xad\x84\xe7\x14\xee\x83\xb5\xf8\xc0\x7b\x11\x98\x83\xbf\xff\xc7\xde\xdb\xf7\x17\x55\xd1\xf8\xd2\xb5\x35\x8d\xc1\x31\xe3\x72\xd6\x89\xc1\xe9\x70\x9e\xf3\xfc\x81\x08\x41\x70\x52\x6a\xf9\x65\xd8\x82\xcd\x46\xdf\xc8\x21\xdd\x1b\x9e\xa7\x65\xe8\x4d\x89\xea\x3f\x35\x55\xf4\xdf\x4d\x34\x0c\x66\xc7\x70\x95\xf6\x31\x2a\x7b\xca\x1d\xb4\x85\x3f\xe8\x2d\xf2\x54\x9b\xe6\xa8\x9e\x6a\x1e\xca\x0c\x50\xf9\xce\xc2\x51\x59\xb4\x1f\x80\x73\x26\xdf\xb5\xcf\x81\xdf\x9e\x43\xa8\xe4\x0e\xaa\x2e\x41\xeb\x25\xb7\xf2\x8a\x6b\xb2\x6e\x6b\x45\x9f\xd8\xc8\xd5\x0a\x49\xb4\x1c\x79\xd2\x54\x61\xb2\x89\xe1\x76\xd0\x24\x3a\x2b\x22\x4d\xf6\x4b\x2c\xec\xa6\xc2\x4c\x36\x31\xe0\x7b\x16\x5e\x62\x39\xee\x5d\x03\x4b\x1a\x85\x90\x3c\xeb\x12\x41\xd2\xac\xca\xef\x9b\xc7\x8f\xb4\xd3\x45\x6e\x62\xd9\xbb\x07\x58\xe4\xae\xa7\x9c\x39\x59\xa0\x64\xc9\x94\x5e\xeb\x86\x57\x14\x76\x43\xf7\x70\x87\xac\x3b\xfb\xeb\x04\x3b\x34\x98\xd1\x0e\x81\x0e\x96\xcd\xde\x2c\xc4\xe1\xc9\xda\x21\x0e\xe5\x3d\xf4\x98\xdd\x67\x53\xd9\x7d\xee\xcc\x09\xfe\x0d\x11\xee\x52\x1b\x4d\xef\x23\x24\x83\xff\x9e\xfc\x3e\x77\xbf\x56\x1b\x8b\x54\x90\xd5\xdd\x69\x86\x1f\xd1\x64\xa3\x0e\xaa\xce\xdd\x6d\x7e\x9f\xdb\xb6\x15\x3b\x9d\x83\x11\x56\xf0\x88\x6d\x02\x11\xc4\x8d\x76\x3b\x61\x08\x34\xa7\x43\xad\x18\x7f\xcd\xab\x6e\xb1\x07\x6d\xe7\xe6\xe8\xdd\xcb\xc2\xfc\xe8\x69\x49\x04\x72\xea\x1d\x07\x16\xac\xbb\x69\x1b\x86\xcc\xde\x96\x27\x7f\x33\x9e\xb2\xf5\xeb\xdb\x0e\x08\x28\xf8\xfc\x37\x72\xf0\xaf\x0d\x22\xc8\x29\x42\x09\xed\xac\xe1\x5c\xdb\xad\x5f\x62\xab\xee\xf6\xcf\x22\x14\x87\x09\x62\x49\x3f\x46\xe7\x50\x84\xec\x7e\x51\x7d\xe7\x1f\x6f\x93\x93\x27\xbf\xfd\x73\x6a\xd7\x77\xaa\x00\xf7\x1a\xb9\x7e\x0f\x38\x7a\x48\x15\xe4\x20\xa5\x21\x46\x7e\xd1\x3d\x49\x0c\xa4\x60\xcc\xd0\x67\xe6\x94\x9c\xeb\xf7\xf8\xc4\x08\x15\x0f\xc8\xbc\x99\x7b\x53\x98\xf4\xb5\xe2\xc7\x90\xb2\xeb\xcd\x51\xc9\x1c\xe6\xd2\xaf\x56\x60\x13\x17\x6e\x9b\x08\xcf\x17\xd9\x45\x23\x05\x3d\xa0\x6e\x1c\x20\xb4\x6d\xe4\x8c\x04\x8b\x44\x4b\xa4\x7b\x25\x14\x5f\xe0\xa8\xc2\x46\xd9\x0a\x07\x2f\xa7\xca\xb3\x97\x3f\x13\x4e\x20\x9d\xf0\x3e\xac\x79\x99\x29\x0c\x23\x72\x4e\xc9\x62\x6e\xac\x46\xf5\xe4\x7f\x10\x7b\xc0\x3e\xf9\x15\xec\xd7\x77\x25\x67\xf6\xf2\x6f\x81\x27\x6a\x80\xb4\x01\x27\x88\xa3\x12\x5a\x5b\x57\x0f\xe6\xea\xcd\xd7\x2c\x07\x77\x6e\xcb\x0c\x4b\xc9\x7f\x87\xd5\xc8\xd0\x55\x35\xca\xed\x24\x57\xe2\x89\x9e\x55\x31\xfd\xfb\xfa\x66\x14\xf5\x4e\xe4\x43\x27\x98\xa2\xe0\x93\xe9\xf9\x5e\x86\xc0\x93\xeb\xa4\xd7\x27\x2f\x9c\xa7\xdf\x1b\x1d\x95\xe9\x8c\x85\xd4\x5d\x74\xa8\x57\x4e\xe8\xf2\x9d\xf1\x89\x74\x5b\xe7\x1b\x26\x9b\x8d\xc6\x91\x78\x55\xf7\x47\x9d\x0d\xaf\xb1\xd9\x2f\xb7\xa8\x99\x96\x4d\x10\x93\xf6\x24\xe1\x64\xc1\x19\xdb\x15\x3c\xcb\xb3\x76\x50\xef\x74\x11\xa3\xbe\x40\xb6\x37\x34\xe4\x39\x1e\x66\x8a\xe2\x79\xaf\x1b\x23\xe3\xfe\x72\xfc\xaa\xf7\xb3\x88\xe1\xf1\x9c\x1a\xfb\x78\xcf\x54\x48\x84\xa8\x8f\xc2\x48\xdc\x94\x3a\xae\x26\x86\x49\x62\x92\xb5\xe4\x0a\x33\xf8\x99\xff\x4a\x29\x9e\x48\x14\x2f\x89\x45\x1d\x9d\x10\x53\x28\x96\x2f\x47\x23\xf4\x0b\xe0\x4c\x83\x58\xc6\xea\xf0\xaf\xd2\xd2\x35\xfb\x30\xad\xb3\x1e\xd5\xa1\x96\x76\x56\x25\xc8\x6b\x46\x3c\x37\xb8\xc3\x5e\x3e\xef\x76\xe5\x18\xb7\x8b\x74\x05\xab\x71\x11\xd6\x6d\xa3\x5c\x58\xdd\x6f\xe8\x5f\xdf\xc4\x71\xef\x9c\x6f\x32\xc8\x50\x0f\xf6\x7e\xfd\xf5\xe5\xf3\x5e\x74\x26\x3d\xab\xc5\xf5\xdd\x8b\x92\x5e\x8c\xce\x58\x4f\x28\x6f\x8a\x59\x03\x3a\x9e\xd5\x42\xf1\xd5\xce\x8d\xca\xb4\x13\xc0\x79\xc4\x60\x1c\xfd\x07\xe5\x50\x27\x53\xee\x51\xa7\x1f\xed\x33\x0a\x83\x4f\x7d\xfd\x27\x82\x82\xd7\x54\xa1\xa5\x4a\xb7\xde\x9a\xdf\xab\x62\xd4\x36\xca\xfc\x7d\x69\xae\xef\xe4\x43\xf8\x32\xfc\x7e\xf8\xaa\x79\x46\x91\x0a\x26\xcf\x29\xb9\xb5\x3c\xe9\x10\xf9\x98\xcb\x46\x21\x0f\x19\x39\x3f\xb7\x24\xa2\x68\x72\xa1\x57\x5c\xb8\xaf\x48\x00\xd3\xf4\xf6\xa5\xcb\x35\x73\xac\x69\x7e\x73\xee\xaf\xbe\x39\x45\x55\xa7\xe4\x73\xf5\xe5\x59\x79\x21\xa1\x84\xd1\x28\x60\xf2\x8c\xca\xfc\x2a\x8c\xf4\x60\x2f\xe6\xe3\x30\x02\x31\xcb\x01\xa1\x15\x7e\x31\x36\xd2\x20\x26\x45\xe7\x5a\x39\x47\xac\x97\x20\xd6\x8b\xb0\x90\x90\x4f\xe0\x19\xeb\x25\x8c\x50\xd4\x23\x67\xe2\x89\x6c\xfa\xf9\xb1\x08\x0b\x0d\x89\x4c\xbe\x72\x81\xa8\xf8\x92\x51\x88\x93\x59\xc4\x58\x96\x59\x42\x07\x94\x3e\x3f\x96\xa9\x59\xe6\xb1\x88\xc0\x0e\x75\xce\x15\xc2\xa6\x88\xf6\x9e\x1f\x97\xc9\x4d\x2b\x42\xb3\x8a\x58\xf7\x44\x8c\x20\x64\xa8\x4f\x04\x67\x0e\xeb\xb2\x98\x14\xd7\xc1\xe0\xe8\x7b\xee\x5b\xf5\xbd\x57\x33\xc1\xbc\x45\x48\x11\xcc\x76\x5e\x31\x2b\x88\xd8\x4c\x9a\xd4\x37\xda\x4b\x59\xf4\xca\xc1\x06\x52\x85\x94\x8e\xf3\x01\x18\x4a\xe1\x20\x29\x4d\x8c\x5d\x2f\x7e\x62\xd5\x28\x39\x46\xe4\xb6\x34\x83\x19\x8c\x46\x2e\x5a\xdb\x8c\xe2\x95\x9e\x9e\xc0\x80\xdc\x3f\xc8\x3c\x59\xac\x91\xdb\x8d\x86\x93\xc3\xde\x58\x3d\xa2\x12\xba\x7b\x61\x50\x0a\x54\x7a\xdd\x61\xbd\x33\x50\x32\x56\x8d\xac\xf6\xa6\x94\xd4\xac\x78\x31\x66\x4e\x60\xf2\x22\x35\x3d\xff\x37\x70\x13\x6e\xe4\x0a\xbc\x07\xb8\x06\x9f\x69\x4c\xbe\xfd\xeb\xfc\x6d\x17\x5c\x83\x96\x78\x06\xd9\xfd\xb8\x5f\x21\x07\x3f\x29\xb8\x74\x56\x4b\xbc\x4d\x1c\xc2\x0c\x37\x0b\x35\xe3\x26\xcf\xd1\xd9\x29\xab\xa6\xda\x4c\x8f\xd5\x32\x02\x66\x45\xe8\xbd\x16\x71\xbf\xbb\xed\xc8\xfb\xfd\x92\xad\xa8\x1c\x91\x5f\x5a\x24\xa0\xa5\x9f\x5c\x7c\x7e\xf9\x65\x16\xa0\xde\x3e\x00\x7f\x38\xb1\x07\xe0\xef\x7d\xd1\x00\x7c\x53\xf5\xd0\x31\x00\xdf\x1c\x98\x19\x80\xdf\x7d\x60\x1d\x03\xf0\x73\x33\x6c\x04\xe0\x5b\x3a\xb2\x22\x00\x7f\xbf\x62\xe3\x7c\x5b\xd8\xc5\x45\x94\xec\x42\x5a\xec\x22\x11\x00\x79\x14\x4a\x39\xeb\xd2\x4d\x8c\x50\x21\x0e\x8a\xfe\x3e\x2b\x3e\x5d\x4f\x79\xe6\xdc\x42\xf8\xbf\x08\xb1\xfd\x0a\xe3\xff\x87\xc5\xb0\xcc\x7c\xfc\xbf\x65\x27\x75\x88\xff\xaf\x0e\xd0\x6c\x30\x39\xed\xe2\xff\xcb\x53\x73\x07\x41\x9a\xf5\xa3\xbf\x17\x81\x98\x15\x39\x32\x32\x8b\x16\x67\xc4\xc4\xdd\xb8\x1b\x65\x77\xa2\x08\xaf\x54\xd1\x98\x32\xde\x32\x65\xd1\x44\x59\xf9\xb8\x2f\x74\x1c\xe9\xc7\x10\x13\x7c\x35\x23\x8b\x2e\x39\xf2\x4c\x36\x6b\x03\xec\xda\x7d\x08\xcd\x3c\xf9\xeb\xab\x97\x47\xbf\xce\xfe\xb6\x06\xb7\xd6\xcd\x3b\x3f\xc5\x51\x19\xae\x11\xa9\xb3\xbf\x7e\xec\xa6\xb8\x1d\x44\x94\xa3\x20\xa2\xce\x17\x70\x81\x37\xb6\xc3\x06\xa3\x37\xe5\xc0\x44\x3c\xd1\x83\x19\x59\xe7\x08\x4e\x39\xd8\x7b\x10\xce\xd0\x61\xc4\x5d\x72\x62\x0c\x95\x47\xe6\xfe\x3d\x8d\xe2\x94\xe4\x76\xad\xa0\x83\x6f\x53\xcc\x1f\x23\x39\xc6\xb3\x86\x61\x9c\x22\xe8\x00\x3c\x7b\xd0\x61\x9c\xd2\x37\x58\x3b\xc1\x33\x8d\xa2\x62\x0b\xe4\x2c\x40\xac\x7c\x55\x91\x9c\x77\x7f\x41\xe8\xff\xd2\x4b\x61\x9d\x58\xce\xba\x0a\xbe\x86\x60\xce\x96\xae\x81\xc5\xf5\xcd\x6b\x00\xf6\xbb\xe4\x13\x98\x14\xd3\x09\x74\x13\xe4\x9a\x4a\x70\x9b\x92\xdf\x16\x89\x12\xde\x8e\x8e\x5f\x49\x23\x41\x6b\x01\xee\x56\x85\xb7\x2a\x29\xbf\x28\xa3\x7d\x57\x96\xd1\x16\x49\xb5\x80\x56\x0d\xc6\xd5\x54\x32\xbb\x45\xa9\x4c\x93\xa5\x7a\xf4\x27\xcd\x7a\x54\xe0\x3a\x55\x0a\x9f\x6b\x89\xc2\x85\x69\xb6\xc0\x25\x1d\xcb\x1d\x59\x0b\x77\x56\xdb\x85\x55\x20\x49\x85\x2e\x34\x05\x52\xac\x5e\xdf\x2a\xd9\xb3\xab\xe4\x59\x45\x58\xf2\xe0\x96\xab\x75\xc1\x2b\x53\x56\xb6\x3b\x16\x4e\x10\x13\x5c\xa3\xb2\x58\x28\xd3\x5d\x33\x55\xdc\x5a\xf9\x2a\x1b\x9e\x9f\xee\x91\x4e\xab\xe7\xbb\x9d\x9b\x59\xfe\x44\x8a\xbd\xca\xb9\xca\x00\x09\x90\xdd\x1c\x07\x55\x00\xa4\xe3\xb4\x46\xa8\x3f\x73\x06\xd0\xde\x6f\x48\xfa\xde\x2f\xe6\xe7\x14\x86\x28\xec\x91\x05\x15\x24\x38\xb9\x4a\x18\x9a\xf5\x4e\xaf\x7a\x50\x43\xdd\x71\x72\xcd\x48\x4f\x6a\x15\x7a\x14\x2d\x84\x0a\xd6\x4c\xa0\x10\x05\x53\x09\xab\x07\x85\x59\x17\x0b\x08\xde\x2b\x61\xa2\x15\x2c\xd9\xa0\xf7\x5c\x06\x05\x5c\x12\x4a\xaf\x40\x0f\x5d\x20\x5e\x90\x2c\xce\xa7\xa6\xed\xf9\x12\x26\xbd\x4b\x1a\x31\x86\xb0\x36\x10\x93\x38\xec\x25\xec\x4a\xe1\xf2\x45\x49\x2f\x61\x51\x1c\x4b\x6b\xeb\xa0\xf7\x0b\xb9\x44\x17\x88\x82\xde\x25\xea\x85\xa4\x47\x51\x40\x66\x33\x84\x43\x35\x2c\xd5\x79\x2a\x6a\x51\x06\x68\x65\x36\xc6\xe8\x52\xd6\x3b\xe8\xbd\x42\x90\xe2\x9e\x04\x2c\x16\xd3\xe0\xd4\x7b\x68\x7d\xdb\xd4\x43\xab\x3f\x8b\xce\x29\x64\xa8\xaf\x26\x21\xef\x61\x6e\xf3\xbb\x5a\xe9\x78\xae\x56\x34\x34\xdd\xef\xcd\x75\x2d\x5a\xb9\x5b\xd3\x88\xb6\xcc\x47\x9e\x20\x14\xdd\x2c\x84\xd2\x26\x12\xbc\x01\x13\xee\xda\x55\xf7\x49\xfa\x75\x13\x91\x21\xcc\x39\x88\x98\xac\xcc\xca\x18\x83\x30\x5c\x79\xa5\x09\xa6\x66\x7e\xd5\x57\x94\xac\xd2\x37\x77\x4e\x92\x48\x4f\xbf\x76\x9e\xca\x33\x5b\xe6\x9f\xc0\x61\x64\xde\x4f\x18\xa4\x2c\xef\x9f\x9b\x5e\xa3\x16\x76\xad\x7a\x28\x2b\x46\x99\x9b\xa0\x54\xed\xf1\x65\xe7\xe6\x3d\x0a\x28\x62\x6a\x66\x3e\x28\xc5\x64\xdd\xa4\x3c\x03\x4e\x22\xbe\xc9\x37\x37\x91\x46\xc0\xda\x5d\x99\xcd\xa7\xd1\x6a\x9b\x24\x0d\x15\x16\x98\x61\x85\x19\xaf\xc9\xfd\x5a\xf2\x7f\xde\xdf\x80\xfb\xb1\x7d\xc5\xdf\x07\x64\xbe\x32\xee\xa4\xd9\x8a\x17\xdd\x92\xe5\xac\x2a\x3f\xa7\x09\x70\x62\xe5\x23\x70\x1e\x93\x53\xe1\xf3\x92\x5a\xe5\x56\xcf\x6a\x93\xc8\x2e\xeb\x28\x3a\xd4\xe4\x54\x58\x98\xef\x06\x38\x47\xa3\xe3\x9c\x95\xb1\x11\xab\xd4\xf9\xd2\xc3\x30\x55\xfd\x97\x34\xf9\xb7\x9f\x15\xbb\xa8\xc3\x5b\x4f\xcb\x7f\x2f\x80\x77\xa2\xbf\xbc\xfb\xf9\xe7\x5f\x7e\xae\x08\x44\xb9\x8b\x8c\xd8\x1a\x94\x65\x03\x19\xb1\x9f\x18\xe9\x09\xbe\x9c\x8a\x77\xc3\xd9\xb0\x9f\xdc\x2f\x05\xf6\xba\x80\x3c\xf5\x59\xb1\x27\xf9\x50\xc5\x52\x3e\xeb\x03\xe3\xe1\xe6\xf3\x59\x6b\x27\x0b\x91\x6d\x5b\xc2\x84\x7c\x88\x66\x68\x14\xa2\xc7\xb4\xd6\xce\xa6\xd5\xf8\x8f\x59\xad\x1b\x87\xab\xde\x0e\xae\x50\x2d\xe1\x7d\xcc\x6a\x5d\xc8\x6a\xad\x24\xd6\xaf\x29\xa7\x75\x39\x5e\xf0\x29\x78\x7a\x0b\x39\xad\x25\xb1\xb8\xed\x94\xd6\x07\x93\x12\x78\xd0\x30\x25\xe8\x1d\x53\x5a\xd7\xd6\xd9\x30\x07\xf4\xaa\x94\xd6\xc5\x6c\xd6\xb5\x6d\xb6\xcd\x66\xfd\x30\xf3\x4e\x9b\x1b\x73\xa8\x4d\x37\x4f\xd7\xf1\xab\xbb\x1b\x4d\xe1\x7b\xa9\x29\x64\x44\x6a\x0a\x65\x0e\x2f\x4e\x00\x04\x24\xc4\x99\x45\x51\x28\xa0\x4a\x02\x88\x05\x26\x88\x4c\xd2\x65\xea\x08\x05\x6e\xc2\x8c\x50\xd4\x83\xa7\x64\xc1\x64\x85\x22\x4e\x21\x11\xd1\x20\x53\xde\x08\xd1\x1d\xe9\x49\x81\x49\xeb\xf5\x9a\xe9\xee\x84\xc7\xc0\xd7\xa2\xbc\xcb\x71\x73\xa6\x6a\x42\x24\x2f\xd7\x22\x63\x19\x4f\xab\xdd\xde\x6a\x92\xae\xdc\x68\xea\xde\x64\x2b\x37\xfa\xf4\x60\x92\x95\xcb\xbb\xa3\x22\x9f\x8b\xd2\x00\xfc\x48\xb0\x30\x2c\x1a\xd0\x5e\xe2\x77\x4c\xce\xc9\x42\x5d\x25\xd2\xd2\x32\x31\x60\x2b\x0f\x2a\x09\xfd\x53\xf0\x44\xd9\x2a\x8b\x8a\x2a\x4b\xb1\x3c\x3e\x58\x5d\x49\xd5\x9d\x06\x25\x75\x67\x6b\xe3\x6f\xad\xde\x2d\x8f\x59\xd5\x6f\x29\xab\xfa\x3a\xbc\x52\x97\x5c\xdc\x8a\x86\x6f\x38\xa7\x3a\xbf\xa4\xa4\x7e\xe4\x3e\x67\xb9\xbe\xdd\xac\xea\x5f\x68\x25\x37\x86\x54\xa6\xea\xbb\xf3\x8c\xea\xb2\xdd\x66\xdd\x54\x5d\xfc\x72\xd9\xd4\x5b\x60\x9c\x3d\x26\x95\xae\xc5\x90\xd2\x97\xec\x6a\x2c\xa9\x5a\x44\x28\x2b\xd0\x94\xd2\x14\xb5\xc9\x2b\x5d\x36\x0e\xdc\x4d\xa6\xe9\x92\xf6\xb3\xbd\xee\x3f\x12\xd2\x50\x44\xee\x89\x83\x3f\xdc\xff\x23\xf8\x1b\xfe\xf9\xac\x19\x18\x41\x21\x11\xc6\x2d\x64\x48\x7a\xa9\xa7\xe7\x8e\x95\xdb\x85\x65\xb9\x8d\x34\x49\x0f\x69\x68\x15\x7e\xe7\x4d\x6c\xcc\xf7\xc8\x9b\xda\x69\xea\x4b\xad\x5d\xa9\xb3\xa9\xaa\xf0\xa4\x7e\x69\x16\xf8\x0a\xbd\xa9\xc5\x91\x4e\xf8\x49\x94\x6e\x29\xeb\xa4\xc9\x59\x83\x3a\xc8\xff\xf2\x04\xa1\x13\x53\x93\x3b\x77\x9b\x73\xb3\xfe\x7b\xd4\xac\xde\xbb\xf1\xb1\xee\x9c\x30\x27\x13\xb0\xd3\x8d\xbf\x9b\x4b\xfb\x6f\x4d\xf7\x2f\x95\xb2\x69\x58\xb1\xf0\x63\x51\x28\x0b\x3a\x77\x58\x29\xd7\x54\x76\xb0\x06\xda\xe0\x9d\x03\x30\x6f\x14\xb5\xd1\xd6\xdb\xa0\x0a\xe2\xa8\x9c\xa5\x27\xe3\x2c\xf2\xf9\x1a\x05\xae\x8a\xf2\xd3\x6a\xe9\x2a\x60\xa3\xba\x6b\x71\x0b\xf7\xc2\x51\xe0\xc9\xcf\x6f\xff\xfa\xcf\xf3\xef\x13\xbb\xa3\x00\x9c\x47\x06\x4f\xd8\xd6\x6d\xe0\xe3\x47\x48\xcf\xf7\xf4\x8f\x21\x67\x1a\x85\xc2\x47\xfe\x53\x06\x7d\x00\x39\x1d\x9f\x93\x27\xcd\x5f\xe6\x7e\xad\x32\x8b\xcb\x40\x5e\xc8\x60\x3f\x26\x82\x82\xa7\xb6\x0f\x1a\x98\x0a\x3a\x61\xd9\x76\x76\x55\xfa\xf2\x27\x13\x90\xfe\xde\xe7\xbf\x2d\xd7\x53\xb3\x23\x6f\xa2\xa9\xd4\xaa\x7f\xa4\x69\xb6\xf5\x15\xcf\xd9\x04\x05\x45\xa7\xaa\xcc\x19\x79\x87\x46\xd5\x4d\xb2\xc2\xe4\x0e\x7a\xd3\xbe\x8b\x99\x0d\xdb\x9b\x19\x9e\x18\x9d\xe4\x4b\x64\xbd\xb1\x2a\x6f\xbb\x27\x79\x95\xaf\xfe\x4e\x8a\xc2\x79\x57\x86\xa1\xcd\x95\x61\x6f\xc3\xae\x0c\x4f\x6c\x46\x13\xe1\xc9\x70\x24\x28\x45\xeb\x64\x47\xc5\xc0\x96\xb5\x38\xc2\x5b\x65\x73\x6a\x59\x9d\xa2\x8a\x21\xa3\x16\x36\x74\xae\x61\xce\x46\x27\xd3\x46\xe6\x53\x97\x1b\xee\x7c\x3d\x46\x18\xac\x4b\xfd\xbc\xea\x55\x01\x3e\xcb\x39\x13\x02\xab\x32\xe8\x16\xd1\xd8\x1a\x45\x4e\x74\x0d\x8c\xd9\x00\x90\x7b\x95\x81\xc9\xc2\x09\x6c\xd0\x8a\xbe\xc9\x49\xe8\x6c\x49\x1f\x16\x4c\x2d\xa5\x6d\xd3\xd9\x92\x5e\xcd\xae\xdd\x8a\x3d\xfd\xdb\x92\xd1\x39\x6f\x88\xd6\x94\xec\xdb\x36\x06\xf5\x83\x86\x95\xb6\xb6\xa8\x3f\xc9\xe5\x09\xca\x53\xe0\x1c\xfd\xad\x6d\xf5\x4e\x6c\xea\x9b\xdc\xa6\x9d\xed\xea\xb9\x2b\xe2\x99\xf9\x87\xc8\x0b\x90\xee\x2d\x27\x6f\xa9\xcc\x5b\x31\xbb\x5e\x49\x45\x73\x69\xb1\xb9\x83\x5c\x73\x9d\xad\xfd\xbd\x75\x4d\xa5\x4f\x2d\x7d\xfb\x36\x67\x2e\xfd\xb6\xbd\xb9\xf4\x36\xe5\xb9\xd5\xa4\x62\x45\x1e\x24\x15\xa6\x10\xfe\xc4\x7b\x96\xbc\x54\x4e\x11\xa9\x8f\xde\x81\xfc\xa7\x74\xce\xa2\x50\x48\x50\xca\x70\xc8\xaf\xce\xa1\x3c\x1a\x6d\x83\x73\xb5\x05\xf4\xd9\x04\xc8\x4a\x3b\xd8\x5f\xf2\x1c\x5d\x73\xe8\xe1\x1a\xf8\xf0\x67\xd2\x51\x80\x73\x87\x1f\x94\x4e\xc4\xe4\x7c\x2a\xa1\x74\xaa\x8e\xfb\x70\xd8\x54\xe3\x50\x3f\x45\x7a\xc2\xbb\x9d\xc6\x8d\x4d\xce\x6d\x5a\x7c\x5b\x1c\x99\xf5\x2c\xbf\x66\x43\x2b\x2c\xc0\xeb\xdc\xf1\xad\xed\x86\xfa\xbf\x37\xa4\x97\xb1\x4d\x1b\xb1\x06\xeb\xff\x0c\xab\x70\xc6\x11\xb7\xb4\xd6\xe5\x66\xaf\x1e\x8f\xbf\xa5\x95\xd8\xac\xf9\x16\xad\xc5\xb9\x01\xd4\x5a\x8d\xef\xc1\xea\x6f\xcc\x82\x6c\xd4\x79\x2b\x56\x64\xfd\x5f\x9d\x35\x39\xeb\x43\xa3\x6e\x9b\x5d\x6e\x6f\x55\xce\x2d\xf3\x97\xda\xa7\x6b\x48\x58\xa5\x31\x74\x4a\x9b\x65\xab\xa5\x42\x66\xdb\x6f\x98\x42\x2b\x63\x93\x0a\x29\x16\x36\x94\x43\x2b\x2a\x1b\x5d\x1a\xcc\x4e\xc3\x62\xdd\x12\x6c\xad\x33\x8b\xaf\x5e\x1c\x9d\xbc\x29\xcd\xa5\x60\xd6\xce\x11\x63\x11\x3e\x97\xa1\x9f\x28\xe4\x8f\x31\x0a\xd8\x1d\xa7\xdf\x6a\x3d\x95\x1d\x0e\x4b\xeb\x4f\x2c\x9c\xd4\x5e\x35\xe0\x41\xa3\x87\xf6\xc0\x91\xea\x06\x8b\x69\xaa\x1b\x8f\xc6\x12\xb7\x62\xed\xd0\x53\x7b\xa4\xe7\xdd\xfb\xa6\x6c\x36\xaf\x59\xd9\xe9\xa4\x64\x99\x29\xe6\x22\x93\xee\x22\xfd\x28\xe9\x0b\x99\xa4\x2f\x49\x6a\x84\x2f\xfe\x7f\xf6\xde\x75\xbf\x6d\x1b\xeb\x1b\xfd\xee\xab\x60\xb8\xdf\x47\x25\x27\x90\x2c\xd9\x71\x9a\x28\xc3\x7a\xdc\xc4\x9d\x66\x9a\xd3\x13\x3b\x9d\x99\x6a\xf4\xfa\x07\x8b\xb0\xc5\x09\x05\xa8\x20\x64\xc7\xb5\x75\x2f\xfb\x5a\xf6\x95\xed\x1f\x4e\x24\x48\x82\x14\x75\x8a\x93\x1e\x3e\x34\x32\x09\x80\x38\x2e\xac\xc3\x7f\xad\x45\x94\xdf\x12\xa8\x00\xaa\x50\x74\x41\x51\x32\x6e\x53\x22\x03\x13\x2a\x54\x49\x05\x2a\x45\x22\x51\x52\x34\x4b\x0a\x49\x51\xca\x03\x19\x55\x1a\xb2\x36\x9e\x4d\xce\x85\xa0\x98\x19\x8a\x16\x02\x4e\x24\xc6\xa4\x60\x68\xca\x9b\x97\x46\x04\x8f\xe0\x92\x38\x14\xab\xb5\x61\x79\xc3\xd2\xc7\xab\x2f\x02\x7e\xf2\xfa\x0d\xbc\x7e\x34\xbd\x3c\xb1\xdb\x93\x32\x74\x00\xdf\x1d\xc2\xfe\x55\x05\x49\xd1\x19\xa2\xbf\x05\x03\xf7\x27\x74\xb3\x8a\xd9\xd9\xcd\x2b\x7e\xbf\x4d\x31\x29\x3f\xa1\x9b\xdd\x9f\xd3\x7c\x30\x9f\xcf\xb0\xa4\xd6\x68\x63\x4e\xa4\x72\x48\x6f\xd0\xf5\x57\x31\xa2\x0d\x40\x50\x9a\xc8\x0d\xab\x01\x50\xdc\x45\xe0\x13\xb7\x29\xf4\x44\x58\x83\xdc\x70\xd4\xf9\x78\xd5\xd1\x5b\xbc\x88\x3c\xf9\x09\xdd\x38\xbb\x8e\x58\x30\x2b\xee\xc4\x10\x50\x9e\xd8\xec\x3f\x8f\xd3\x43\x01\xdc\xdd\x15\x74\x06\xbd\x5c\xbc\xec\x83\xca\x3f\xb8\x78\xd4\x05\xed\x5e\x29\x72\x76\x4d\x07\x36\x10\x2e\x7b\xe9\x79\xbe\x20\xb1\x34\xc2\xe6\x42\x29\xee\xba\x45\x05\x75\x6e\x58\x05\x15\xa6\xf0\x10\xeb\x55\x85\x0a\xaf\x1b\x30\x70\xab\x66\x20\x33\x3e\x49\xd7\x14\xcb\x42\x5b\x62\x64\x35\x0a\xfb\x54\xca\xac\xb1\x7e\xbe\xfb\x55\x74\x2e\x95\xf6\xb9\xd2\x16\x5e\x8b\x94\x1b\x1f\x33\x75\x96\x85\x66\x41\x7e\xa5\x8a\x31\x3a\x96\x15\x7e\x15\x61\xd5\x27\xb5\xa1\x93\xdd\x16\x16\x66\xf5\xf0\x5c\x7a\x8e\xba\x4b\x3b\xb8\xdb\x5d\xeb\xae\x21\xc5\x51\xde\x95\xae\xb4\x15\xca\xde\x76\xff\x94\xb5\xf2\xee\x76\xa7\xe3\x28\x71\x7e\xfa\xd9\x19\xc3\x44\x26\x62\xfa\xe8\x24\x28\x49\x22\x82\x3b\xce\xbf\x55\x88\x2d\x24\x6e\xeb\x9f\xff\xf3\x4d\xe2\x5c\x47\x6c\x9c\x2b\x95\x00\xe7\x7c\xc6\x9c\x6b\x64\x44\xc3\x0a\x49\x84\x2f\x9d\x84\xc8\xd2\x23\x48\x91\x50\x43\x60\xc2\xb2\x57\x90\x39\x30\x8e\x3b\xce\x4b\x26\x55\x13\xe8\x12\xb2\xe8\x0a\xc5\x37\x4e\x34\x99\xc2\x91\xf4\xc6\xe3\x1c\xe4\x15\x72\x30\x09\x91\x13\x31\xfe\x7d\x98\x24\x64\x14\x89\x84\x4b\xbc\xf1\x8e\x73\x82\x90\x73\x8e\x62\x72\xed\x5c\x10\x2a\xbd\xf9\x42\xc4\x60\x14\x27\x5c\xc4\xe5\x8d\xbc\xe2\xbd\x3d\x91\xbd\x15\x7e\x7d\x09\x42\x8b\x84\xcb\x83\x7a\x11\x9d\x33\x8b\x14\xc3\x38\xd9\xd5\xb3\xb0\x41\x7f\x3d\x32\xa3\x4e\xa5\xcf\x5e\x36\xca\x08\x4b\x26\x9a\xaf\x94\x79\x7b\x2e\x97\xca\x2e\x33\x68\x7c\xbc\x5a\x12\xa3\x06\xdc\xbf\x4d\x21\x95\xd9\x4d\x07\xa9\x21\x43\x79\x0d\xe7\xfc\xbf\x72\xb7\xe7\x5e\xaf\x8e\x96\xe7\x11\x1c\xb6\xfb\xdb\x5a\x22\xbb\x79\xac\x94\xa7\x60\x5d\xc2\xc5\x1c\x45\x6b\x1f\xd3\x6c\x1a\x25\xfd\x90\xbb\x62\x2d\xd0\x5f\x79\x1a\x2d\xbe\xcb\x96\x1c\x2e\x26\xc2\x65\x19\x3b\xea\x16\x70\x81\x6a\x1a\x4a\xf2\x59\x41\x3c\x94\xa2\xa9\xda\x4b\x69\x58\x9b\x18\x5d\xb0\x36\xa3\xd1\xc4\x90\xf9\x60\x28\xb0\x6d\x71\x24\x9a\x81\xd3\xa9\x74\x9b\xf8\x2f\x89\x70\x4e\x88\xb4\x27\x51\xcc\x87\x30\xba\xc8\xe5\x29\xc8\x01\x12\x45\x82\xc6\xa5\xa4\x47\x93\x01\x2f\x0b\x8d\x3b\x8b\x85\xc6\x2f\x02\x85\x98\x3c\xfd\x38\xfd\xf5\x61\x7c\x64\x97\x1a\x15\xbe\x21\x85\x18\x1a\xb0\xc3\x11\x99\x4c\x09\x16\xe7\x02\xb8\x6f\xa7\x4c\x26\x62\x16\x3f\xb5\x52\x21\x46\x23\xa6\x94\x0a\x4d\xc4\xcf\x8c\xbf\xd8\x17\xc7\xfc\x1e\x25\xab\x6a\xf0\xa1\x85\x8b\xdf\xef\x99\xd8\xb0\x28\xf9\x41\x10\xa6\xd5\xd0\x61\xee\x17\xee\x2b\x50\x29\xac\x65\x73\x63\x4e\xcd\xde\x81\x9a\x9a\xbd\x95\xc5\xa6\x55\x04\x94\x27\xe9\x2d\xb1\x92\x04\x58\xeb\x12\xbf\x67\xba\x3b\xee\x3d\xae\xfc\x63\x4f\x0a\x70\x7b\x79\x95\xc1\x82\xb9\xf8\x5c\x12\xdc\x93\x6a\x01\xce\xc0\xcd\x1a\xf1\xb2\x0a\xc3\x2a\x5c\xec\x7b\x5c\x58\x2b\x09\x70\x8d\x06\xdc\x4c\x82\x7b\xd2\x4c\x82\xcb\x69\xa1\x2b\xa4\x82\x2f\xde\x7f\xe4\xf1\xb0\x18\x05\xa1\xf1\xf1\x69\x6c\x17\x5d\x2c\x5b\x2d\x32\x4d\xe6\x05\x42\xc1\x97\x19\xda\xb1\xa7\xf9\x3f\x4b\xc8\xa8\x65\x8f\xc1\x52\xa8\xb0\x6a\x3f\xa2\x75\xd0\xa1\x9b\xd9\x35\x2b\x03\x22\x1f\x0f\x8b\x61\x41\x65\x12\xd5\x4d\x01\x22\x73\x79\x1f\x85\xdc\xa9\xb4\xf2\xe7\x90\x0a\xb1\xab\x2d\x78\x81\x6a\x43\x9e\x1a\xfc\x05\x45\x88\xa1\x4f\xac\xad\x35\xf8\x6a\x06\x4c\xfc\x64\x1a\xcb\x75\x1a\xc3\x11\x1a\x4b\x02\xd4\x18\x5d\xd8\x1c\x28\x29\x18\x6a\xf7\x44\x7e\xb7\x3e\x57\x97\x25\xb0\xf0\x82\xf1\xa6\x23\x9e\x92\x29\xb9\x42\x54\xe5\x54\x75\xc1\xc0\x0c\xf4\x2e\x1b\x91\x53\x90\x46\xac\x95\xf1\x33\x74\x6e\xf8\xbf\x4d\x66\x31\x8b\xa6\x72\xe7\xb9\x34\xba\x1c\xb3\x92\xf6\x6c\x03\xf0\x4e\xc1\xa9\xaf\x07\x83\xab\x8f\x4d\x92\x7e\x6b\x45\x6b\x7c\xaa\xc4\x28\x64\x2e\xae\x66\xbc\xf2\x1a\xd3\x47\xc5\x3f\x38\x75\x11\x5c\x18\x70\x8f\x1c\x46\x9c\x5f\x4a\xe2\x64\x56\x4c\x04\x24\x04\xee\x2f\x22\xa6\x43\x45\xb9\x94\xb3\x53\x85\xe5\x5f\x02\x52\xf1\x13\xba\x49\x16\xd5\x92\x3d\xe1\x25\x79\x0d\x55\xb9\x8e\xee\x2d\x07\xd1\xac\x22\xcd\xa9\x8e\xf5\xdb\x42\x3a\x83\x1a\xaa\xfa\x6d\x1d\xf2\x63\x81\x19\x7b\x49\x6b\x74\x83\xad\x25\xb3\x5d\xaf\x92\xf7\xe4\xb1\x1a\x3a\x27\x94\xa9\x88\xa2\x31\xd4\xf2\x99\x86\x5a\xac\x3a\xe1\x6e\x8a\x6b\x3c\x18\xea\x9e\xa7\x77\x8c\xfb\x46\x8c\x61\x75\x7c\x4a\xd6\xfa\xe3\x61\x29\x12\x76\x76\xe4\xcc\xbd\x9e\x43\x04\x1b\x4f\xcd\x95\x6f\xd0\x21\x7d\x62\x56\x40\x23\x2c\xd3\x65\x79\x94\x4a\x7d\xd6\x8f\x97\xec\xb4\x3e\xbe\x6b\xe3\x21\x16\x56\xa8\x5b\xf4\x53\x11\x7f\xee\x73\x2c\x7a\x81\x22\xe5\xc1\xe0\xc5\x77\x4b\xce\x65\x89\xba\x6d\x71\x27\xe4\x69\xa4\x7d\x18\xab\x6d\xe3\x12\xb9\xdd\xec\xd6\xb0\x04\x8c\x02\x8f\xeb\x82\xb1\x2c\x15\xd7\xa7\x69\xfa\xd4\x3a\x96\x77\x19\xd5\xf0\xbd\x26\xa9\x5a\x47\x6d\xd0\xdc\x84\x55\xad\xfe\x37\x44\x62\x33\x49\xf5\x5e\x49\xb3\xbc\x9a\x6f\xd5\xb2\x32\x56\xf3\xde\x52\x42\x58\x7b\x23\xfe\x5f\x9f\x67\x87\xac\x6e\x52\xcb\x6d\x11\x33\x40\xe0\x9e\x98\x8e\x8f\x57\xb6\x48\x84\x8f\xd6\xcb\x3d\xb6\x7a\x70\x40\xdd\x9d\xbd\xf5\x22\x03\x6e\x7e\x46\x8b\x14\xda\xb0\x06\xd9\xfd\x5a\x52\x35\x7d\xe6\xe1\xa2\x18\xab\x7d\xc3\x60\xf1\x08\xec\xaf\xe2\xc6\xe3\xfe\x21\xa2\xdd\xad\x23\xbe\xaf\x12\x23\xed\xa7\xdd\x9f\x9d\x29\x8c\xe8\xc6\x03\xde\xa5\x4a\xf9\x3f\x6e\xbc\xbb\xfb\x5b\xcb\x8d\x39\x2c\x64\x4d\x6e\xc5\x5f\xe1\xdf\x64\xa6\xbd\x14\x64\x0f\xf0\x4d\xf6\xc9\x46\x9d\x34\x3a\x78\x7f\x31\xef\x3e\x87\x17\x82\xbb\x96\xf7\xc1\x02\x2e\xe1\xdb\x7a\x48\x03\xbc\x44\x98\xed\x7e\xbc\xda\x92\xaf\xc1\x4f\xbb\x3f\x2f\xd4\x15\x2c\x7e\xbd\xba\x53\xc1\xb2\x93\xb3\x84\x33\xc1\xa6\xe6\x6c\x29\x3f\x82\x4d\x6d\xeb\xc6\x45\x57\x86\xcb\x6f\x24\xd3\xe4\xde\x92\xcc\xe7\x36\xb0\xf4\x76\x60\x7c\xca\x0f\x15\x11\xf2\xe5\x10\x8e\x12\xe7\x90\xa1\x14\x04\xf2\x40\xee\x86\x4a\xc0\xbc\x42\x30\x5c\x50\x32\x69\x23\xcc\x68\x84\x92\x14\xc6\xaf\x51\x11\x14\x5d\x21\x2a\x42\x34\x87\x94\x4c\x5d\xbe\xc9\x3e\xa2\x85\x68\x89\x14\xfb\x60\x07\x4b\x54\x20\xfb\x73\x18\x0a\x42\x97\x46\x49\xac\x83\xad\xc7\x24\x44\x5f\x48\xbc\xa6\x5f\xde\xfe\xef\xd1\xeb\x8b\x7f\x7d\xda\x44\x62\xa7\x1a\xec\x83\x4c\x92\xf1\x86\x8f\xdb\xfd\xbc\xb8\x07\x63\xae\xab\xe2\x2e\xa1\x2b\x84\x59\x3b\x21\x33\x3a\x42\xe5\xc0\x4b\x22\x5b\xbe\x0d\x6b\xd5\xa0\xe6\x5e\x0d\x48\x2b\xa7\xe6\xef\x66\x4c\x95\xcc\x87\x53\x88\x0c\xa4\x13\x1a\x3d\x1d\x82\x12\x78\xfb\xe9\x66\x02\x03\x1d\xd8\xcc\x99\x4f\x86\x40\xac\xda\x17\x8d\xfb\xd8\x28\xce\x58\xd3\x7f\xb1\x57\x17\x84\xfe\x49\xf3\x6d\xf4\x56\x89\xfd\x53\xfd\xf0\x2b\xb6\xe8\xe6\x0d\x56\xfb\xd6\x09\xda\x50\xbe\x18\x7e\xb2\xb7\x9e\x2e\xe6\xdb\xb2\xa5\xf2\xf1\xf2\x36\xdb\x5c\xb6\x98\x9a\x26\x9f\xac\x91\x2b\xa6\x44\x42\x4c\x02\x52\xf3\xcd\xa7\xdb\x8f\x6b\x73\xcf\x2a\xb6\x1c\x65\x2b\x99\x5a\x5d\xbe\x8f\x6c\x3a\xb6\x5e\x6f\x85\x58\x36\xe6\xb7\xcc\xa3\xb0\x9f\xff\xd2\x46\x92\x7d\xac\xaf\xcd\xcb\x3a\xb4\x66\xa6\x8f\x06\xcb\xb7\x52\x9e\x0f\xcb\x89\xb7\x6b\xf3\x62\x75\x07\x80\x7c\xe6\x8e\x2a\x7c\x84\xc5\xc4\xb1\x6a\x98\xa5\x15\x33\x62\x54\x6a\x08\x97\x0f\x98\xd7\xb0\xa3\xab\xeb\x8f\xaa\xb4\x47\x45\x59\xae\x2e\x92\x03\x45\x97\x51\x22\x78\x47\xe1\x05\xd1\x4c\x61\x22\x4a\x6a\x65\x89\xa5\x4f\x55\x31\xf3\x3e\x6b\x54\xff\x15\x25\xc1\x46\xa1\xff\x37\x2f\x1f\x36\x0d\xfb\xdf\x50\x6a\x54\xe7\x6e\x41\x58\xff\x2a\xa9\x30\xd1\xb9\x1f\x75\x6c\x7f\x1d\x19\xb6\xe0\x55\x9d\x89\x9e\x5b\x0f\xe3\x5f\x94\x17\x56\x95\xee\x92\x31\xb9\xbe\x6f\xe1\xee\xe8\xfd\xc3\xdf\x0e\xe0\xcd\xac\x2e\x18\x2f\xb1\xe4\xe3\x7d\x93\x4b\x00\x5a\x23\xd5\x0d\xb3\x48\xde\x9c\x5f\x76\xd5\xb5\xf1\x99\x85\x3b\x3e\xd5\xcd\x63\xea\x36\xa7\xaf\x4d\xdd\xe9\x54\x50\xd8\x65\x45\x9a\xe5\x85\xc7\x26\x95\x05\x3b\x6b\x04\xd7\x7d\x64\xf2\x7c\x45\x8e\x24\x65\x09\x55\x74\x5b\xc5\x32\x1c\xeb\x50\xbc\x79\xfc\x56\xa9\x37\x0b\x88\xcf\x1f\x21\xa8\x70\x18\x25\x2a\x06\xcb\x2a\xa1\x85\xcb\x46\x17\xb3\xdb\xe9\xc1\xe4\x5d\x7d\xd4\x7d\xb4\x16\x54\xc0\xb5\xa0\x7b\x12\x16\x8d\x3e\xde\xac\x68\x86\x74\x0b\x4e\x9d\xf2\xa8\xe5\x72\x07\x0b\x18\xbc\x54\x27\x13\x41\x8f\x61\x8c\x14\xfc\x54\xa8\xbd\x95\xf7\xa7\x63\x56\x6a\xcf\x44\x2a\xc5\x4a\x4e\xc3\x5d\xe4\x15\xfa\xa0\x92\x33\x10\x1e\xa2\xc2\x05\x13\x13\x27\x26\xf8\x12\x51\x07\x7d\x8a\x12\x26\x92\x20\x8a\xa4\x89\x90\xc1\x98\x5c\x76\xaa\xf1\x26\x2b\x5e\xf6\x75\x56\xa6\x3f\x57\xc6\x39\xc2\x8e\xd8\xf2\xce\x35\x4c\x1c\x8a\xd8\x8c\x62\x14\x3a\xd7\xe3\x28\x4e\x98\xc3\xa9\xb7\x34\x09\x46\x89\xc3\x87\x02\x1c\xa5\xa2\x16\x39\x30\xe9\x8d\x03\x2f\x61\x84\xb7\xb1\x68\x75\x4e\x85\x07\x9f\x21\x08\x79\x81\xd8\x6d\x3b\xac\xf6\x3a\x89\xbf\x6b\xdd\x47\x1b\x65\x00\xd7\xb0\xd6\x54\x26\x6e\x2c\xbb\xed\x03\x3b\x88\xac\x89\x50\xb4\x7a\x7e\x19\xa7\x49\x98\x8f\x62\xc1\x85\x4e\x4c\xdf\x2a\x0c\x14\x56\xba\xf2\xa2\xa3\xd7\x51\x1c\x3b\xa9\x1e\xbd\x2a\xbf\x4c\xe5\x19\x58\x42\xe6\xb9\xff\x20\xec\xae\xd2\xb6\x16\x19\xcc\xc6\x63\x75\x36\xa1\x50\xdd\xec\xa4\x2d\x91\x82\xbd\x38\x8a\x27\xc0\x65\xf0\xbc\x2d\x93\xa8\x9b\xea\x8f\x61\x21\x14\x49\x55\x2c\x65\xcd\x35\xc8\xa9\x90\x06\xbc\xd4\xa5\x55\x81\x56\x7f\x44\x30\x66\x63\xe7\xf9\x18\x8d\x3e\x26\xae\x7d\x57\x76\x24\xc3\x2d\x4a\x8e\x64\xc1\xa2\x97\xc0\x93\x66\xe5\xa5\x1e\x73\xa9\x0e\x9e\x20\x7a\x15\x8d\x90\xf3\x12\x27\x0c\xe2\x11\xaa\xef\x64\x22\x4b\x37\xea\x60\xb1\xac\xd9\xb9\xc7\x06\x74\x33\x8c\xf4\x97\x97\xef\xfd\x7b\x81\x72\x39\xa5\xd1\xd4\x39\x8d\x26\xa8\xb6\xef\x94\x95\xb3\xc0\x5a\xba\x6d\x14\x13\x12\x7c\xa9\x4e\xc3\xae\x99\xd1\x25\x16\x4d\xaa\x2a\xd4\x68\x52\xf3\x65\x57\x58\xf1\xd7\x88\x41\x21\x62\xd5\xf5\x69\xa2\x0b\x35\xe8\x53\xb1\xec\x70\xb1\xa4\xb3\x69\x32\xb0\x32\xbe\x26\xbd\x64\xa7\x37\xed\xf3\x19\x63\x22\xf4\x78\x01\x85\xae\xbf\x22\x84\x3f\x30\x70\x8f\xc2\x90\x8a\x50\xf7\x43\x60\xfe\xae\xff\x70\x46\x78\xb3\x2a\x1b\x54\x97\x7d\x16\x08\x28\x99\xb1\x18\x95\xdb\x15\x1a\xee\xbd\x55\x61\x9d\x3d\x60\x77\xce\xda\x57\xbb\xd9\xea\xe3\x69\x36\x51\x03\x09\x59\x6e\x16\x9b\x89\xb0\x2b\xe1\x47\x72\xef\x17\xe6\xcb\xca\xe9\xdc\x18\x99\x90\x4b\x0a\xa7\xe3\x1b\x53\xe5\xf7\xeb\x0c\x89\xcd\x29\x80\x1a\x42\x93\x97\xc1\x47\xa2\xa4\xad\xce\xbd\x52\x03\x6a\x04\x87\xd0\x29\x8e\x04\x32\x84\xcc\x98\xd0\xdb\xb9\xc0\x6d\xeb\x65\xcd\xa2\x35\xac\xa2\xe2\x4b\xb5\x46\xeb\x68\xf8\x76\x73\xb7\xda\x7d\xe7\xde\x1a\xbf\xfa\xf6\xe0\xdd\xc7\x49\xb3\x54\x9d\x79\xd7\xd0\x1e\x70\xe5\x50\xda\xe9\x0d\xad\xb1\xf6\xf0\xbc\x9d\xa0\x51\x1a\xbf\x67\x2f\xa7\x44\x29\xba\x98\x6a\x79\x92\xc1\xf3\x29\xc4\xa8\x3a\xa0\x42\x59\x15\x25\xa9\x8d\xe6\x3c\x36\x05\x3c\x55\xa4\xc0\x58\xa7\xb6\xc5\x82\x34\xcc\x87\xe3\x35\x15\x9c\xae\xa8\xe4\x02\xf7\x44\x88\x29\x26\x12\x02\x14\x3a\x3d\x5c\x26\x60\xcd\x22\x85\xc0\x46\x4c\x43\x5b\x33\x0b\x35\x31\x09\x65\xfa\x96\x31\xe4\x3f\x1c\xb9\x08\x8e\xdc\x61\x9d\x66\xde\x3e\xdb\x30\xbd\xe4\x05\xfb\x52\xa4\x44\xe1\x81\xbc\x98\xea\x55\x58\x3c\xb4\xad\x62\x45\x92\x94\xa3\x28\xeb\xd3\xa7\x49\xc6\x3c\xdd\x2b\x6d\xfa\x17\xbd\xf8\x65\xfc\xcb\xff\xc2\x15\x69\x93\xc1\xb2\x6d\x97\x2c\xed\x19\xa4\x88\x33\x9e\xab\xc6\x89\xcd\x14\x21\xba\xeb\x36\xc3\x75\x81\xd4\x58\x3f\xbc\x06\x31\xd9\x10\x21\xd9\x0a\x11\x59\x44\x40\x4a\xc4\x43\xcf\x63\xa7\x0e\x40\xb5\x79\x7b\xe9\x62\x5a\xb1\x1c\xaf\x44\xc4\x69\x33\x20\xb0\x6b\x90\x8a\x74\x4a\xd6\x26\x13\x5c\x88\xbc\x67\x0a\x11\xfd\xf4\x7c\xff\xf1\xf7\x27\xbf\xae\x48\x21\x28\x97\xac\xdb\x8c\x46\xd3\x36\x8b\xe4\xae\xdc\x02\xa1\x70\xaa\xe2\x6a\x88\xb9\x51\x71\xd7\x64\x16\xa0\x9a\x88\x96\xe1\xe2\x8c\xd4\x61\x7d\x94\x8e\xd7\x11\x8e\x26\xb3\x49\x93\x2b\xd4\x68\x33\x6c\xa4\x6e\x2b\xd3\xa3\x49\x84\xb5\x69\x77\x02\x3f\xf1\x0f\xff\x40\x25\x67\xff\x22\xba\x8c\xc4\x7e\x19\xec\xa5\xc6\xd7\x49\xb2\x64\xb7\x16\x0c\x15\x85\x11\xc4\x9f\x6b\xa4\xe2\x63\xf7\x38\x58\xf9\xc5\xcf\x35\x5a\xf8\x69\xc3\x43\xb5\x92\x64\xeb\xa3\xec\x82\xcc\x04\xc6\x5d\xf1\x4f\x66\x1f\xc8\x24\xc9\xd4\x94\x6d\x33\xe4\xd6\x11\xe5\xc5\x74\x39\x27\xaf\xe6\x81\x27\xab\xd2\x65\xca\x56\x4d\xe7\x6c\x34\x92\xaa\x23\xef\x99\x2e\x4f\x5e\x3c\xda\xdb\x8f\x9f\x7c\xb0\x83\x48\xf2\xb9\x9c\x6d\x4e\x00\x92\xaf\x32\x83\x2b\x9f\xa4\x8a\xd6\x66\x80\xc7\x12\xad\x37\x34\xb5\x9f\x5b\x48\x95\xf6\xf9\xf5\xa0\xcc\xba\x43\x11\x9e\xce\x58\x36\x2a\x8b\x39\xe2\x11\x78\x04\xa4\xfc\x79\x4e\x3e\x55\x19\x28\xd4\x69\xb2\x20\xa1\xcd\x48\x54\x66\x84\xaa\x14\x17\x2d\x15\xea\xfc\xa7\x73\x7e\xe3\x70\x6e\x6e\x77\x2a\xd0\xd1\x05\xdc\x88\x2d\x5e\xd3\xb0\x10\xb0\x75\x01\x0a\x7a\xe9\x5c\x98\xee\xda\xd9\x19\xc5\x61\x92\x5b\xa5\x8c\xef\x55\xc4\x64\xe9\x7c\xf8\x1b\x86\xb8\xe6\x49\xa1\xea\x6d\x3b\x52\xc6\x8d\xbc\xcc\x60\x2a\xc1\x32\xe4\x6b\xa6\xaf\x71\xc3\x51\x6a\xc4\xe8\x28\xfc\x99\x86\x9e\xdb\x02\x06\xeb\x1e\x34\x51\x48\x36\x18\xfd\x4a\x40\xd8\x0d\xea\x3a\xb6\x0a\x82\x6d\xa2\xef\xd0\x00\x58\x48\x05\xc2\x24\x5d\x8a\xa6\xc6\xca\xcf\x08\x47\x6d\x54\xa4\x81\xb8\xb3\x1a\x88\xb4\x8c\x08\xcd\x00\x9e\x39\x98\xa9\xd6\xab\x66\xa1\x94\x57\x56\xf5\xa6\xf7\xe9\x26\x6e\xe6\xd4\x48\x76\xaf\x37\x73\xaf\xfb\xcb\x35\xfa\x25\x39\x6d\x26\x31\x35\x71\x74\xb3\xba\xab\x95\xae\x5f\x13\xda\xb1\xfd\x3b\xb8\xec\x51\x71\xd0\xf8\x0e\x5e\xa8\x1f\x76\xab\x31\x2b\x55\xd9\x70\x5f\xe2\x2b\x18\x47\x1a\x09\x55\x70\x17\xca\x81\x2a\x0f\x38\xe9\x75\xa3\xb4\xbc\x32\xae\xba\x1b\x50\x12\x6f\x8c\x6c\x6e\x89\x64\x2e\x26\x97\x39\x52\x99\xb3\x3d\x8b\xcc\x00\x02\xec\xf5\x86\x84\xa8\xe3\xfc\x60\x49\x14\x00\xa4\x7f\x80\x6b\x81\xd1\xf4\x0a\x3e\x2e\x6b\x24\x3f\x58\xc7\x09\xbe\x36\xf9\xc1\x9a\x50\xb5\x06\x45\xb6\xa8\xc8\x92\xde\xdf\x19\x11\x74\x13\xe9\x8e\x5d\x22\xe6\xab\x53\x6a\xbd\x1a\xab\x51\x6a\x11\x9d\x3f\xd9\x6d\xab\xa4\x05\xf7\x4a\xa3\x9f\x90\x1f\xc6\x47\x57\xa7\xcf\xed\xd2\x13\xfa\x84\x46\xd2\xc9\x7e\xc4\xd9\x3d\xbe\xdb\x26\x28\x49\xe0\xa5\x4a\xfe\x76\x11\x89\xd8\xb5\x16\x79\x28\x8d\x6a\x6b\xa3\xb2\x17\x11\x8a\x43\xc1\x8c\x56\xd0\x54\x6d\x70\x7b\xbc\x82\xc7\x59\x1e\x4c\x25\x14\x09\xfc\xcc\xc9\x98\x5c\x0c\x7d\x32\xe2\xbc\xee\x1b\xe4\x5a\x43\x9a\x75\xf0\x48\xd7\x19\xc3\xa4\xad\x01\xdb\x46\x80\xaf\x5a\x68\x69\x21\x8a\xea\x1b\x45\xa3\x6a\xd5\x23\xa6\x98\xe5\xc2\x19\x23\x17\x64\x24\xbc\x1d\xb2\xdf\x72\x24\x7b\xd2\xf7\x2d\x8b\x70\x29\xeb\xec\x1b\xdf\x39\x00\x2e\xc1\xb2\x41\x9b\x70\xa4\xa4\x15\x13\xb6\xf7\x08\xb8\x79\x31\x2c\x6d\x4b\x08\x77\x62\xc2\x6a\x90\x67\x8e\xcd\x05\xb9\xcc\x7a\xbe\x9e\x25\x4c\x78\x5a\x39\xe2\xb2\x71\x5e\xbc\x39\x71\xc6\x24\x61\x9c\x88\x77\xe4\xdb\x11\xc1\x0c\x46\xd8\xe9\xb5\x1f\x3f\x72\x46\x63\x48\xe1\x88\x53\x06\xc7\x93\xca\x8e\x04\x38\x31\x62\x4c\xfc\x80\x38\x74\xc6\x37\xd3\x31\xc2\x89\x2f\xff\x9a\xc8\xf6\x2f\x23\x2c\x53\xe1\x40\x55\xb8\xe3\xbc\xc5\x23\xe4\xc8\x50\x6c\x21\x90\x64\x7b\x04\x31\x26\xa2\x3b\x72\x3a\xc2\x5a\x53\x5f\x79\x57\x5a\xb6\xcb\x2a\xa1\x4c\xd3\x4d\x93\xc7\x23\x4b\x60\x4b\xe9\x1b\xc0\x55\xd7\x74\x96\xa6\xb6\x79\x0c\x39\xcb\xa0\x1a\xe4\xdb\x2a\xa0\x12\x75\x5c\x3b\xbe\x25\x1c\xcd\x33\xb4\x65\x9c\x58\x68\xd7\x18\x57\x9d\x8b\x17\x28\x19\xd1\x48\xd4\x74\xbc\xb7\xaa\x05\xbf\x5a\x63\xd7\x95\x1b\x11\x52\xa4\x2d\x6c\xfb\xb9\x46\x56\xdc\xfb\xf9\xe9\xce\xb5\x37\x6c\xa0\x28\x5c\xb0\x51\xca\x01\x6f\x8e\x9e\xbf\x3a\x39\x3b\x7e\x73\xf4\xfd\xab\xe3\x17\xab\x45\x2b\x28\x51\x4f\x65\x5b\x88\x95\xb2\xc9\x6e\x09\xc8\x87\x48\x7b\x9f\x96\xb6\x8c\xaf\x92\x27\xfa\xfe\xc6\x81\xa1\xc0\xb9\x8b\xaf\x09\x68\xbb\x30\x81\xc1\x09\x92\x17\x1a\x10\xee\x92\xd7\x51\x1c\x3b\x70\x3a\x8d\x6f\x1c\x36\x96\x1e\x96\x30\x8e\x1d\x46\x3e\x22\x9c\xe8\x83\x28\x0e\xa9\xf0\x69\x30\x5b\xa8\xc8\xae\x64\xb0\x81\xfc\xd3\x2a\xe4\xb7\xe1\x55\x53\xcc\xf3\x63\xd8\x2e\x1f\x71\xf6\x3c\x63\xb7\x35\xfd\x3c\x7a\xfe\x8a\x13\x58\x3e\x13\x2f\xe4\xbb\xa4\xc2\x09\xc7\xb6\xe4\xd6\x35\x98\x92\x38\x1a\x45\x4b\x2c\xc3\x3b\xb3\xc2\x6a\x2b\xa1\xbf\x79\x3f\x8b\x21\xbe\x7e\xb3\x78\x39\x44\x40\xc1\x97\x21\xc2\x2c\x62\x37\xf5\xeb\x23\x79\xb9\xc2\x2a\x89\x89\xba\x59\x66\x9d\x1a\x30\x97\x86\xac\xb7\x2c\x03\xd2\x10\xd4\xd3\xeb\x01\x57\x21\x20\xf9\x5f\x8f\xf9\x07\x13\x78\x1e\xa3\xb0\xc8\x80\x94\x65\xc7\x28\x79\x47\xa3\x84\x45\x58\x86\x34\x4e\x9f\x2a\xd9\x2e\xb3\xbd\x1b\x8d\x1a\x90\x3e\x71\x73\x67\xb9\xae\x1e\x81\xc1\xfe\x93\x3c\x29\x34\x62\xad\x1a\x4a\x47\x3d\x15\x27\xf0\x6a\xbd\x48\xaa\xcb\x8d\xbf\x3c\xba\x15\x87\xa5\x1c\x80\xd6\x1c\x96\xe5\xe2\xcc\x0d\x45\xf6\x83\x22\x75\xfc\x2d\xb3\xab\x78\xe5\x8a\x6e\x3c\x97\xaf\x9b\x5c\x1e\x45\x84\x7c\x6e\x4f\x0e\x4b\x99\x21\x0d\xd6\x10\x18\xd7\xc9\xea\x41\xee\x33\xf5\x03\xe7\xf4\xa5\x97\x55\x18\xc1\x98\x5c\xa6\xa7\x5d\xcb\x03\xfc\x9a\x3b\xa2\x48\x90\x9d\x64\xa6\x7e\x5c\x43\xcc\x38\xd1\x91\xf1\x4b\x95\xd0\xac\x29\xcc\xe1\xca\xb8\xd9\xc5\xc8\xe5\x35\xe2\x08\x14\xd7\x5a\xb3\x3d\x59\x0c\x56\xb9\x01\xb2\x42\xa5\x1d\xa0\xdc\x84\x5c\x55\x45\x6d\x04\x50\xc8\x1f\x97\x31\x43\xba\xe1\x86\x5a\xd7\xba\x88\xd4\x0b\xdd\x41\xc5\xe2\xad\xee\xe1\x21\x87\xd4\x36\x77\x44\x69\x2b\x00\xf7\x6f\x99\xe0\xf8\xb7\x51\xba\xdd\xd3\xd8\xb5\x2a\x30\xcc\x5e\x4d\x00\x0c\xdb\xb8\x7b\x80\xd7\xff\x2c\xf8\xba\xe6\xe6\xd9\x62\x36\xbd\x54\xcb\x20\xb4\xc5\x82\x7f\x17\x17\xa2\x26\xb9\x4a\x3d\x91\x06\x85\xc3\x44\x28\x9a\x71\xb8\xa4\x3a\xc2\x54\x22\xac\xa9\x88\xf8\x12\xf2\xa8\xef\xbf\xc7\xd7\xff\x7a\xf9\xbf\xdf\x57\x64\xc4\x2b\x04\x00\x50\x73\xad\xa5\x73\xab\x45\x57\xdf\x2d\x7b\x6b\x27\x52\xd7\x49\xc7\x53\xca\x25\x36\xf3\x67\x8c\x22\x60\xac\xd3\xe6\x72\xa9\xa7\xd9\xe1\xbf\x9a\x61\x89\xd7\x5b\x4f\xa8\xbe\xaa\x93\x69\x5e\x55\x2f\x07\xd7\xcc\xb1\x14\x14\x02\x03\xec\xe5\x68\xe4\xa3\x46\xc1\x01\x04\x6d\x2c\xb9\x99\x36\xd1\x9e\xdf\x77\xfe\x78\x9d\xd6\x5c\x6d\x87\x2a\x97\xd2\x54\xb2\x49\x29\xf4\x62\xf1\xfc\x3e\x52\x84\xa7\xc2\x5e\x75\xae\xb9\x35\x28\x93\xa3\xd2\x74\xa7\xd3\xb1\x34\x6b\x2e\x8e\xbc\x3b\xcc\x79\xae\xa6\xda\xc4\x25\x94\x43\x9b\x9e\xe9\xa5\x3d\xce\x36\xf1\xd1\x15\x1c\xb8\xc4\xe0\x9f\xf2\x4b\x3d\x25\x60\x3a\xf9\x70\xf3\x19\x69\xf2\x3a\x65\x39\x18\x9d\x2d\x74\x6a\x4a\xb9\x8b\x9c\xeb\xd2\x4a\x1c\x45\x4d\x7a\xdd\xa6\x0c\xc5\x17\x11\x39\x16\x3d\xfc\x70\xfa\xdb\xcf\x17\x15\x91\x63\x6b\x72\xec\x2e\xc7\x6c\x18\x37\xea\x81\x4e\x3e\x95\x11\xaa\x7b\xb8\x4e\x17\x66\xd1\xcd\x79\x05\xa6\xc1\x22\xb9\xe0\x2a\xf6\xc7\xb2\x91\x54\x1b\xd8\xed\x0f\xaa\xe2\xd3\xfe\xde\x6f\xf2\x83\x54\x16\x94\xb9\xe0\x9a\xdc\xe4\x8f\x00\xbf\x1d\xbf\xbd\xd7\xbb\x4a\x5d\x34\xe9\x56\xde\xe6\x15\xbb\x92\xab\xb1\x5b\x6f\x58\x17\x61\x06\x0c\xa6\xa2\xb3\x91\x4c\x3d\x9b\x19\xef\xca\xa1\x6b\xcd\x14\xc8\xfa\xd8\x1e\x6c\x23\x6e\xad\xdc\xf0\xab\x46\xae\x5d\x00\x3a\xc9\xeb\xb2\x96\x8a\x51\xdb\xb0\xc9\x05\x88\x4f\x33\x48\xed\x46\x13\xf7\x6f\x83\xe3\xa8\x22\xdb\x39\x25\xe1\x9e\x20\x76\x4a\xdf\x5e\x8e\x13\x7b\xb0\x8a\xee\xcf\x5d\x3f\x76\xab\xd1\xa1\xb5\xb2\x31\x35\x98\xd5\xb5\x81\xad\x6a\xcf\x57\x61\xaa\x2c\xf9\x97\x16\x04\xac\x93\xd8\xaa\xb4\x5e\x21\x7a\xc3\x86\x42\xb1\x6e\x28\x59\xd3\x56\xee\x96\x82\x56\xb5\x3e\x51\xd3\x3a\xa4\x6d\xc9\xe4\x3e\x6f\x88\x61\x25\xdb\x40\x9e\x26\x23\x4b\x53\xee\xbe\x5c\x6c\x59\xc8\xcd\xcf\x9a\x91\x62\xb7\x8a\x2d\xae\x36\x48\x7e\x01\x2b\xb8\xb1\xec\x4c\x46\x9b\x5b\x48\xcf\x54\x17\x7a\xd8\xb4\xda\x36\x09\x3a\x6c\x74\x74\xd9\x34\x4d\x9f\x6d\xaf\xad\x95\xa0\xa9\xa0\x3b\x5a\x2a\x3d\xd3\x02\xce\xf0\x49\x3d\xe4\x72\x44\x26\x13\x88\xc3\x64\x17\x67\x4a\xd1\x4d\xa0\x2d\x4b\x69\x9a\x70\x59\x9f\x55\x39\x13\xb5\x2f\x57\xcd\xd4\xb4\xec\x3c\xd5\xe4\x69\xca\xc6\xb2\x9b\xa0\xd1\x8c\xa2\xb6\x39\xba\x4d\x4c\xdf\x12\x19\x9b\x36\xb1\xc3\xb7\xeb\xe8\x50\x36\x61\xad\x18\x24\xbb\x19\x5b\xba\x62\x84\x9d\x15\x62\x6d\x17\x71\xb6\x3a\xa6\x4e\x55\x82\x26\xe9\x63\x91\x06\xdb\xce\x02\xee\xd4\xc6\xea\x5e\x2b\x31\x52\x59\x49\xb2\xbc\x96\x4b\x3b\x6a\x7c\x19\x6a\xae\xa3\xf7\xbf\x5e\xc0\xc9\x0f\xbf\x6d\x22\x41\x52\x51\xf7\x55\xa3\xec\xda\xeb\x0d\x73\x9e\x92\x9f\x55\xd5\x95\x5f\x81\x55\xd3\x26\xed\xd5\x65\x3f\x7a\x52\x50\x92\x95\xb2\x1f\xc9\x29\x92\x33\xcb\xbf\x90\x13\x80\x52\x2c\xcf\x81\xe1\xa3\xb8\x6f\x3c\xb4\x27\x44\x02\xa5\xfa\x8f\x6c\xf5\x1f\x35\xaf\xbf\x6f\xab\xbf\xbf\x99\x84\x4c\xe6\x14\xed\x75\x75\xe3\x7b\xab\xea\x11\xf3\x82\xe7\x9a\xe1\x64\xb7\xa8\x1d\x74\xaa\xbc\x22\x97\x8a\x22\xfb\xed\x50\xe5\x68\x6f\xea\xf4\x58\x56\x09\x36\x1c\xe7\xaa\xa2\xdb\x02\xe5\xa0\xfc\x4f\x13\x00\x1b\x0a\xdc\xd0\x8c\xeb\x74\x5d\x7b\xab\xe4\xa1\xaa\xbd\xd5\x5d\x0b\x50\x79\xc9\xf0\xa9\x0d\xaf\xf1\xed\x29\xf6\x6c\xa1\xc6\xf6\x36\xa2\xd8\xab\xda\xa9\x36\xdd\x9e\xa2\x62\x60\x13\x09\xaa\x9e\x6a\x45\x0f\x28\x04\x7e\xcd\xbb\x68\x77\x57\xd1\x02\xee\x35\x6d\x74\x6f\x8d\x64\x55\x25\x8a\x9f\x99\x83\xd4\x85\x32\x2c\x05\xb5\xad\xe8\xc6\xc1\x92\xf9\xab\x1a\x8e\xee\xd1\x76\x9a\xdd\xdf\x7e\xb6\xad\xcd\x9d\xb8\x95\x95\xa9\xb9\xdb\xdd\xcc\x69\x2f\xf3\x40\x56\x3a\xe5\x67\x36\xfb\x55\x2f\xca\xa2\x9e\x24\xff\xad\x8d\xa4\xdd\xda\x84\xf2\x36\xd7\xab\x35\x73\x6f\x6d\x4b\x83\x5b\x4d\xde\xaa\x22\x99\xed\x59\x2c\x91\x75\x52\x9f\x3d\xe7\x56\xa3\xf1\xac\x98\x75\x6b\xfb\xca\xde\xad\xab\x7b\x1b\x29\x7c\xd7\xb9\xf2\x56\xc9\xe6\xae\x25\x86\x4d\x27\xe6\xd7\xfc\xcf\x97\x9c\x2b\x7d\xbb\x79\xf9\xef\x6d\x25\x37\xa6\xf8\x4d\x5b\xdc\x4a\x56\xfe\x86\x39\xe7\x74\x27\x1a\xf5\x3a\xeb\xf1\x9f\x69\xfa\xab\xf4\x9b\x0b\x35\x9c\x07\x0d\x35\xc1\x89\x19\x0d\x6a\xf3\x8a\xe0\x5c\xac\xa8\x2f\x34\x69\x7f\x69\xaa\x96\x48\xda\xbf\xd9\xe9\xfb\x9d\xa6\xee\xdf\x44\x2a\xc6\x46\x9f\x5f\x51\xd3\xbc\x41\x15\xb1\x0e\x1a\x57\xd2\x06\xd7\x2a\x7d\xd1\x27\x19\x0a\xe3\x24\x95\x52\x2b\x53\x36\x2a\x7d\x5f\x2a\xae\x15\x52\x38\x16\x53\x37\x2e\x97\xb0\x51\xab\xb2\x57\x48\xdc\x68\x51\x5a\xae\xa5\x7b\x96\x11\xb8\xee\x5b\xfd\x3c\xf9\x05\x3e\xf9\xe9\xc7\xde\xa5\x5d\xfd\x4c\xf8\x12\xa9\xf4\x0c\x4b\x28\x97\xcd\x18\x90\x27\x5a\x12\x71\x5f\xbe\xf8\xec\xf9\x1b\x4b\xd3\xbd\xb4\xae\xb9\x36\xdd\xa1\xe9\x34\x58\x88\x34\x61\x85\x4b\x2e\xd2\x68\x97\x73\x52\x35\xac\x58\xf6\x31\xd8\x84\x1a\x76\xab\x4a\xd8\xf5\x55\xb0\xb5\x89\xbc\x2c\x66\x3b\x4b\x12\xaf\x26\xdc\xf7\xea\x09\xbc\xdc\x45\x3e\x16\x96\x9b\xbf\xda\xcf\xe2\xa0\x10\x81\xaf\xc2\xd1\xe2\xa4\xc8\x8f\x2c\xca\x5b\xb5\xec\x77\x65\xe4\xbf\xf2\xc7\x75\xe2\x24\xcf\xcd\x39\x27\x64\xe7\x5f\xff\xd2\x6b\xe0\xd7\x75\xd1\x72\xf7\x37\xba\x1e\xb7\x22\x1a\x2f\x54\xa5\x57\x0d\x59\x93\xbc\x52\x63\xb6\x28\x19\xd9\x69\xd0\xb7\x65\xf1\xc4\x0b\x24\xfb\xb0\x3a\x54\x6d\xb9\xa5\x8f\x11\x0e\xf3\xd5\x81\xfb\xb7\xeb\x88\x8d\x5f\xe2\x0b\x62\x50\x34\xa5\x8c\x68\x70\x8c\x56\x99\xf3\xa5\x93\x92\xe9\x09\xaf\x0c\x64\x9d\x16\xc8\xc5\x20\xd2\x5b\xb0\x26\x6c\x4f\x5a\x31\xac\xdc\xf6\x45\xc6\xd9\x16\xf5\xb2\x6e\x6f\x17\x62\x0d\x2d\x3c\x0a\xf6\x23\x50\xb9\x4d\x56\x98\x97\x37\x24\xdc\xc2\xa4\x64\x19\xaf\xdc\x7c\x12\x3d\x90\xe5\xd2\xab\x9c\x8b\x62\xc1\xe6\xb3\xb0\x99\x2d\xb9\xa4\x64\xeb\xd6\x02\xe5\xf2\x8b\x6b\xa6\xc0\xca\x8f\xd6\xc8\x74\xb5\x26\xd0\xbb\x51\x76\x2e\x61\x6b\x59\x2e\x23\x97\x72\xe9\x5e\x1d\xcc\xb2\xa9\xf5\x59\x31\x35\x97\xdb\x34\x8f\x61\x09\x80\xbd\x99\x3c\x86\x25\x82\x91\x31\x9e\x4d\xd2\x19\x36\xab\x96\xb3\x06\x75\xcb\x86\xac\xe2\x86\xfc\x89\x5f\x02\x7c\x55\x26\x28\x19\xb7\x2f\x21\x43\xd7\xf0\x66\xd5\x34\x7e\x6a\x3b\xa1\x46\x83\x86\x69\xe1\xe6\x23\x2e\xd5\x19\x5a\xb3\x0e\xa6\x26\xaf\xfd\xa5\x87\xf0\x8e\x92\x4f\x37\x8e\xb8\x01\x1b\x8c\x61\xca\x4b\x2f\xd1\xff\x5c\x79\xd3\xba\xb6\x5c\x27\x4f\xe1\x65\xe2\xb4\x1c\x91\xaa\xa5\x41\x2f\x17\xe6\x27\x5c\x5c\xa5\x61\x9a\x42\x77\x71\xee\xbb\x47\xcb\x9a\x98\xdc\x3c\xdc\xc0\x4c\x5b\xde\x3b\x50\xf3\x85\xab\xf3\xde\x55\x61\xe0\xd6\xd2\x9c\x2c\x56\x91\xd8\x1c\x39\x53\x85\x86\xdc\x06\xea\x5f\xb9\x8a\x06\x42\x4e\x68\x26\xa4\x6a\xa4\x94\x9d\x4e\xea\x54\x7e\xdd\x7e\x9e\x3a\xbb\x74\xbc\x01\xa5\xc6\x2e\x34\x88\xc4\xbd\xaa\x37\x2e\x4e\x0f\xae\x7a\xbd\x9f\x1e\xdb\xd5\x1b\x0c\x5e\x5e\xa2\xf0\x28\x55\x70\x28\x40\x60\xaa\xf2\x58\x9c\x15\xc6\x24\x56\x9f\x23\x55\x80\x8c\x11\x94\x91\xf6\x53\x73\x04\x15\x19\x0f\x9a\x27\xb1\x63\xf0\x7c\x16\x43\xda\x1e\x91\x38\x56\x23\xa8\xbc\x41\x0f\x96\xea\xcf\x56\x6c\xce\xeb\x27\x88\x66\x63\x73\xbe\x4f\xe1\x65\x8d\xca\xd9\x5e\x27\xe5\xae\xd6\x8b\xb9\xde\x68\xbc\x94\xcb\xdd\xcb\xf2\xab\x8f\x0b\xd0\x80\x5e\x1e\x14\xb1\x4e\xe0\x4b\xb6\x4c\x5e\x18\xfe\xed\x6e\xf1\xdb\x95\x36\xc8\xbc\x7e\x6d\x3f\x9f\x64\x56\x6f\xbb\x12\x3b\x5d\x52\xcc\xf1\x8a\xef\x84\x53\x63\x56\x4b\xfd\xbd\x5a\x58\xad\xff\xef\xff\x75\xcb\x40\xb9\x3d\xe0\x7a\xaa\x9a\xd6\x69\x2c\xe5\x8a\xb1\x68\xc3\x35\x9b\xe6\xe2\x34\xc9\xe2\xfd\xfc\xeb\x74\xf0\x8b\xbb\x52\x0b\x7c\x5f\x72\x83\x5b\xe3\x9d\x2c\xbc\x7f\x17\xc4\xa7\xab\x4d\xee\x66\x04\xff\x86\x61\x18\xc9\x08\xa5\x4e\x4a\xae\x2b\x93\xbc\x6d\x31\xae\xb5\xca\xcc\x06\x8d\x60\x53\xf2\x96\x17\xa8\x7b\x19\x6e\xaa\x98\xbc\xed\x3a\xe2\xe4\x66\xad\x4b\x3d\xbb\x8c\x37\x76\xbd\x7f\x49\x49\x69\xff\xf9\x96\x3d\x3c\xff\xf5\x91\x3d\x4c\xc4\x82\x0b\xfc\xf3\x26\x15\xd8\x56\xf6\x59\x11\xa0\xb7\x62\x08\xb9\xbb\x65\x41\x8e\x5a\x11\xf6\x6d\x4a\x12\x29\x80\x6c\x32\x5d\xad\xc0\x9d\xed\x67\x8c\xc2\x3b\xc5\x1b\x1f\x8b\xcf\xb9\xc0\xa8\x50\x29\x72\xac\x15\xcb\xf2\x77\x93\xed\x56\x1f\xc1\xaf\x2f\xe3\x6d\x43\x22\x59\x9f\xfb\x56\x0b\x55\x2b\x65\x00\xa8\xa7\x63\x1b\x23\x8e\x5f\x4a\x46\xdc\x87\xb3\xf8\xc5\x9b\x97\x49\x6f\x8d\x8c\xb8\x5b\x22\x93\x55\x84\x4b\x7d\xe9\xd2\x16\x83\xd9\x30\xc2\xec\x17\x78\xf6\x22\xf3\xed\x5a\x43\xb1\x9a\x89\x77\x45\xa5\x4d\x67\x00\x67\xf0\xb2\x4c\x55\xab\xad\x35\x7f\x54\x22\x66\x30\x66\x7c\xa9\xbf\x10\x9a\x55\x61\x69\xa8\xd8\xa3\xb9\x6c\xd1\xcd\xf6\xe9\x6b\x7d\x9c\xea\x12\x13\xac\x93\x14\xda\x29\xd9\xfe\xee\x31\x31\xf4\xef\x6b\xcb\x5a\xee\xdd\x72\xb2\xe8\x2f\x6d\xfb\x6e\xe2\x16\x2e\x89\x23\x1b\xba\x77\xd7\xcc\x2b\x5d\x6e\x50\xf1\x05\xf7\xec\xc9\xfb\x01\xbf\x7b\xf2\xf8\xdb\xe9\x97\x25\x89\x94\x9d\x57\x8a\xe6\x21\xcd\x8d\x7f\x98\x26\x8c\x22\x38\x69\x7a\x35\x2e\x4e\x40\x5a\x22\x9c\x62\x9d\xda\xb3\xf4\x43\xcd\xe9\xe7\x87\x5c\x9d\x7a\xf8\x84\x6e\xbf\x22\xcd\x65\x2a\xed\xe4\x12\x1d\xe8\x8b\x7a\xc1\xd4\x0c\xa5\x30\x73\x50\x97\xf3\xb2\xa9\x4a\x61\xd9\x05\x4a\xc5\xa5\x77\x90\x8d\xb7\xbe\x4a\x4a\x16\x6c\x4f\xc5\xc7\x9a\xaf\x94\xec\x65\xe8\x64\xf5\xaa\x50\x0c\x35\xda\x1b\xe7\x82\xc4\x31\xb9\x8e\xf0\xa5\xc3\xd7\xce\x49\xc6\xe4\x9a\x53\xe1\x30\xba\x8a\xc2\x19\x8c\x9d\x1f\x4f\x4f\xdf\xc9\x4f\x38\xaa\xa3\x0e\x1b\x53\x32\xbb\x1c\x3b\xc7\xf8\x8a\xdc\x88\x24\x6f\x1a\x47\x93\x01\xee\xe3\xe8\x23\x72\xde\x51\x32\x41\x6c\x8c\x66\x49\xc7\x11\x80\x64\x91\xfd\x0d\x9e\x93\x19\x93\x21\xee\x23\xec\x94\xd2\xab\x55\x6a\x8c\x6c\x3b\xd0\x9c\xbb\x8a\xcd\x97\xd9\x18\x6a\xf6\x5d\x61\xc5\xd5\xe6\x7b\x94\xd7\xf3\x6d\x74\x07\x3e\xad\xdf\x8d\x35\xfa\x0b\x60\xab\xf6\x86\x84\x75\x75\x36\xb4\x6b\x9b\x6d\x4c\x69\xf6\x95\x32\x5f\xdd\x1a\x2e\x50\x93\xd4\xe8\xaa\xeb\x75\x23\x95\xd8\xd8\x54\xfb\x01\x2c\xd3\xd6\xc4\x28\xbb\x01\x1d\x66\x7d\x8c\x7c\xb5\x1d\xe1\x74\x2a\x43\x84\x54\x88\xe7\x8a\x6d\x10\x74\x35\xcd\x1f\x93\xe1\xc4\x97\x0d\xf6\x51\x71\xcf\xaf\xcb\x35\x28\xc4\xd2\xbd\xf2\x0a\xd7\x4f\x7e\xfb\x70\x72\x3d\x7a\x5f\x0d\xbb\x5e\x00\xb6\x5e\x0e\xb3\x6c\xc6\xb1\x50\xd6\xf5\xcd\xa1\x96\x9f\xae\x5a\xb1\x57\x0e\xa8\xda\xb4\xe6\x93\x95\x6b\xae\xde\x5b\x7b\xb8\x11\x23\xa4\x4a\xd7\x7a\x7b\xe7\xb0\x7e\xf7\x81\x7d\xe7\xfb\xbd\x0a\xf7\xfe\x35\x04\xf0\x5d\x05\x1b\xbe\x5f\x9d\x9f\xc4\x02\x60\x2b\x65\x25\x69\x22\x70\xde\x77\xdc\xfd\xc7\x9b\xc1\x83\x5b\x04\xc7\xfb\x08\xbb\xbf\x06\xc8\xba\x88\x2b\xdf\x38\xd2\xda\xf8\x5a\x9d\x85\x62\x59\xd4\x75\xae\xd9\x0a\x04\xf6\x26\x16\x63\x09\xf4\xb5\x5d\x6c\xec\xd9\x09\x5b\x2d\xac\x70\x85\x90\x41\x8b\x41\x9b\x95\x21\x74\xd3\x04\x5a\x7b\x60\xe0\xbe\x80\x0c\x8e\x10\x66\x6a\x03\x66\x7c\x57\x23\xd8\x1d\x99\x92\x98\x5c\xde\xb8\x95\xe7\x4c\x20\x9e\x3b\x4c\x97\x2b\xf2\x77\x56\xc8\x78\xa9\xb8\x1d\xd3\xf8\x64\x09\x2c\x27\x43\x74\x12\x61\x28\x7c\x35\xab\x20\x9d\x0d\xc7\xfc\x2a\xc2\x1f\x51\x98\x51\x8a\x05\x43\x2f\x12\x9c\x05\x43\x2f\xd1\xa7\xb5\x87\x1e\xe1\x4b\x2e\xfb\xac\x3b\x6c\x43\xdf\x51\x3f\x60\x53\x5f\xd1\x64\xc4\xa5\xf2\x15\x08\xd6\x66\xdd\x7c\xa9\x98\xdf\x85\xdd\x8c\xd2\x82\xcd\xba\x59\x2a\x6f\xe2\x8a\x97\x39\xff\x1b\xdc\x8a\x2f\x05\xea\x5b\x5d\xf0\x0b\x46\x9b\x96\x6c\x3a\xdc\x62\x85\xba\x9d\x78\x00\x9e\x0a\x43\x36\x8c\xf0\x0a\x54\xe4\x3d\x99\xf1\xd9\x58\x34\x06\xaa\x8a\x35\x1b\x40\xa1\xf4\xe2\x73\x64\xd7\x26\xa9\x65\x5b\x71\x81\xa4\xe9\x6c\x01\x6d\x94\x36\xb9\x46\x74\xd1\x28\x9a\x1b\x50\xbd\xd0\xbb\xfd\x38\xef\x2b\xfb\x87\xe8\xed\xb3\x6f\x44\xe1\x69\x18\x96\xaf\x84\xea\xb0\x27\x5b\x2a\xb7\x6e\x5b\x44\xe3\x16\x34\x58\x24\x15\xdf\xc3\x5a\xe3\x4d\x0a\xe1\xae\xe1\xb0\x86\x39\x98\x78\xa5\xbb\xff\xc2\x30\x01\x65\xf6\xee\xed\x14\x61\xe7\x05\x4c\xc6\xe7\x04\xd2\x70\x55\x7c\xd6\xbd\xe5\x14\xaa\x87\xc4\xef\xad\x10\x33\xbf\x57\x0c\xfd\xa8\xfe\xd8\x5b\x04\x88\x5f\x0c\x87\xdf\x1e\x18\x5e\x61\xd8\x85\x0a\x68\x46\xe3\xc4\xe5\x1b\x01\x87\x88\xb6\xb5\x70\x9a\x87\xbc\xa7\x88\x78\x99\x47\x51\xe8\x89\x46\x82\xea\x1a\x39\x16\xc5\xff\x52\x16\xca\x86\x8b\xd7\x6a\xd5\x2c\x7b\xa3\x71\x91\x08\xfd\x95\x32\x60\xc9\xeb\x29\x63\x75\xf2\xe8\xfd\xed\xc0\xeb\x53\x01\x7c\x4d\xa5\xd5\x6e\x64\xb0\x02\xf7\xaa\xbe\xc2\xbb\x7f\xff\x3e\xfe\xf1\x37\xba\x89\xa0\xb5\x8b\xa1\x28\x26\xa3\xf2\x39\x40\xf6\x19\x17\x8a\xcb\x51\x63\x2d\xd1\x62\x7b\x29\x36\xdf\x0c\xc9\xf7\xc4\x78\xb8\x20\xdc\x6b\xda\xc0\x53\x4b\xfd\xa7\x9b\x89\xf6\x9a\x1b\x9a\xe6\x0c\x9e\xac\x1a\xec\xb5\x3a\xa7\x89\x12\xc2\x36\x63\x9a\x8a\xf0\x74\x66\xe4\x68\xb7\x44\x04\x15\xa9\x7c\x85\xda\xfd\x9c\x7c\xca\x34\x26\xd6\x84\xe7\x79\x7d\x52\x66\x1d\xdc\x76\x34\xcd\x83\x52\x34\xcd\x6f\x87\xa5\x10\x8e\x69\x22\xaf\x15\x63\x69\xd6\x34\xf9\x64\x8d\x40\x9a\xa5\x43\x60\x8d\xa0\x59\x37\x9e\x86\xe9\x7c\xca\x81\x2e\x6b\x1a\x7d\xba\xc5\x28\x97\x96\xe3\x52\xf4\x47\x4b\x79\xaf\x97\x59\x14\x97\x52\xa4\xc9\xde\x2a\xa1\x26\xeb\x3c\x21\xec\x1f\xdd\x40\xc8\x49\x77\x53\xe1\x26\xf3\x3d\x5b\x2b\xec\x64\x03\x46\x6d\xed\xa4\x41\x25\x42\x90\xb3\xf6\x99\xbc\x40\xa6\x8b\xb2\xba\x52\xca\xf1\x56\xc5\xa6\x6c\x16\x97\xb2\xc1\x80\x57\x8a\x49\xe9\x6e\x0e\x86\xb5\x45\x20\x56\x33\x28\x56\x01\x3f\x98\xae\x43\x53\x9f\x9a\xed\xe6\x85\x58\xdf\xe5\xb4\x2e\x4e\xd8\x32\x81\xbd\x36\x01\xc4\xb6\xc7\xff\xda\x74\x90\xaf\x62\x74\xaf\x72\xaa\x89\x85\xf1\xbd\xd6\x09\xe5\x95\xe7\xaa\x37\xc4\xa3\x1b\x1a\xac\x7b\x65\xd2\x4f\x1f\x87\xc9\x4f\x3f\x7e\xfb\xa6\xca\xc6\x6c\xb3\x29\xd7\x88\xb0\xdd\xe6\x04\xbc\x20\xbd\xe6\xc1\xa6\xd5\xb2\xeb\x22\xb9\x75\xc1\x8e\xdd\x9e\xf0\x66\x2c\xea\x86\xf7\xc8\x17\x91\xbb\xff\xf9\xcf\x37\x7f\xff\xfb\xbb\x7f\xfc\xbd\x19\x70\x31\xbb\x3f\xd3\x61\xa4\x19\x94\xe5\xa6\xd1\xc8\x0f\x05\xb0\x53\x90\x04\x38\x63\xe4\x22\x8a\x63\xc5\x35\xcf\xce\x27\x11\xcb\xf6\x56\xc6\x21\x3f\x32\xb9\xda\x47\x86\x42\x0b\x25\x4c\x68\x99\x09\x36\x35\x55\xfb\x39\xb5\xf5\x22\xd5\x6f\x47\xba\x78\xd7\xa9\x15\xab\x37\x58\x3a\x30\x31\x2e\x39\xac\x34\xd0\xb6\xa6\x60\x8c\x42\x9c\x08\x7f\xc3\xa5\x33\x38\xd7\x6e\x92\x4d\x6f\xbc\x2f\x23\xf9\xcd\xab\x83\x93\x37\xaf\xe9\x81\x9d\x44\xc1\x69\x64\x5c\x09\xcb\xa6\xc2\x39\x3b\x83\xf4\xb2\xab\x7f\xf4\xf8\x2d\x25\xd8\x3b\xfd\x8f\x32\xf1\x96\x77\x77\x08\x19\x6c\xc7\x44\x58\xb0\x4b\x38\x90\x9c\x42\xee\x40\x28\xe3\xc4\xbf\xbd\x61\x41\xe7\x74\x41\x68\xdb\x88\xc2\x7e\x00\xf6\xba\x4b\xfb\xc2\x37\xe1\x09\x25\x80\x67\x69\x5d\xa5\xa8\x57\x88\x4f\x9e\x4b\x7d\xdc\x33\x1a\xdf\x8e\x5d\x5a\x4c\x71\xb8\xbc\x86\x7d\xcf\xe8\xa1\xf4\xc2\x58\x46\xc2\xda\xcb\x9b\x8d\x75\x3d\x19\xa1\x19\x59\x3d\x23\xcc\x2c\x3e\xbd\xa7\xc6\xc3\x4d\xe8\x65\x72\xb7\x63\xaa\x33\xda\x1f\x02\xf7\x48\x9c\xc5\x55\xf3\xf0\x98\x3c\x75\x41\x9b\x66\xd8\xc1\x1a\xa8\xd3\xaa\x1b\x6b\xe0\xe6\x55\x10\x1c\x38\xa5\x81\x71\x86\xdd\x91\x96\x03\x61\x6f\x51\x40\xa4\xf6\x46\x12\x0f\x96\x0d\x27\xbd\x85\x37\x43\x21\xc5\xf4\x6a\x09\xa6\x1b\xcb\x1a\xd9\x76\xee\x15\x84\x69\x21\xd4\x6f\x28\x7b\x4c\x51\xe2\xcd\x6e\xec\x55\xb3\x43\xd7\x2a\xba\xcc\x73\xb2\x57\xd6\xde\xa4\x76\xfd\x05\xb9\x4f\xf2\x3a\xae\xa6\x8d\x36\x4d\x7d\x92\x36\xbc\x9f\xb3\x9a\xe6\x09\x41\x8e\x0c\xd4\x7e\x75\xd9\x3c\x2e\xcb\xab\xa2\xf6\xca\x9a\x5b\x43\x2f\x95\x9d\x67\x37\xaf\x01\xca\x6b\x87\x56\xa5\x48\x66\x78\xb1\xa7\x96\xcf\x3d\xca\x7d\x6e\xa5\x54\xd5\xc5\xad\xba\x92\x1a\xca\x36\x15\x8f\x73\x0a\xa8\xa5\x83\x52\x35\x56\x79\x2c\x69\x31\x2c\x7d\xa2\xfa\x94\x2e\xc8\x67\x0d\x0a\x5a\x2a\xde\xa3\xf0\x7b\xde\xd3\x24\x43\x9a\xa9\x5c\x65\x8f\xf8\x3f\xb5\x04\x50\x89\x22\xe5\x23\x11\x85\x82\xcc\x2b\xf5\x13\x17\xed\x7a\x72\x17\x37\xb2\x11\x94\x34\x9a\x7b\xc2\xec\x20\x1a\x5d\xc1\xed\x36\xcf\x03\x3c\x6d\xbc\xd3\x2a\x69\xee\x81\x9e\xa5\x1c\xcd\xed\xad\x7a\x6e\x64\x43\x17\x11\x4d\x98\x64\xa1\x97\x63\x4f\xca\x3d\x3b\xd0\x81\x8e\x85\x5d\x45\xea\x56\xa4\x00\xb4\xce\x61\xb3\xed\x3f\xf1\x91\x9e\x8e\xdf\x20\xb6\xf3\xb0\x80\x86\xdc\xb3\xc3\xa0\xab\xcc\xc5\x79\x61\xde\xae\xb2\xaa\x4e\x75\x61\xe9\xd9\xa9\x50\x48\xe9\x9e\x49\x15\xa6\x45\xe5\x5a\x7f\x11\xf7\x7a\x15\x1d\x29\x39\xb3\xd6\x6f\x61\x7d\x20\x56\xdd\x28\x4b\x6d\xde\xea\xc9\xd9\x90\x6e\x77\x49\xa2\xb7\x4e\x56\x1a\xf3\x33\x8b\x75\xbe\xf9\xff\x72\x1a\xe0\x8c\x7a\x15\x43\x08\x36\x66\xaa\xb8\xa4\x36\xc3\xa1\xe3\xe6\xb4\x51\xc2\x7d\x4c\xf8\x82\x29\x72\x59\xd4\x31\x97\x86\x51\x9d\xc6\xa2\x6a\x1b\xd6\xa4\x66\x59\xb1\x8a\x65\xab\x77\xab\xcf\x5c\xa3\x87\x4f\xc0\xd3\xdc\x47\x2d\xf7\x63\xb1\x8a\x2d\xcf\x65\xa3\x01\x95\x5f\x3f\xb6\xf6\xe9\xc0\x1e\x87\xaa\x49\x1c\xf1\x4d\xe8\xdc\x9b\x61\x8d\xd6\x54\x66\x66\x0a\x70\xa9\xc6\x6c\x47\x89\xc8\xca\x1d\xb6\xe5\xa1\x8c\xf0\x15\x51\x8e\x15\x86\x7a\x5e\x00\x65\x72\x9a\x7b\x8a\x2e\x28\x4a\xc6\x6d\xc1\x27\x64\x5a\xaa\x0a\x3d\x7e\x95\xbe\x5e\x31\xc5\x26\x5e\xa7\xa1\x5e\x1e\xb8\x49\x3c\xbb\x2c\x39\x85\xcd\x68\xb4\x21\xdd\xd8\x46\xb2\x71\x88\x46\x69\x0a\xda\xbc\x57\x9d\xd8\xaf\xe3\x8f\xbf\x51\xfa\xfa\x66\xc5\xb8\x2d\x19\x4a\x74\x9b\xa1\x5b\x9e\xf0\x3a\xc9\x88\x5c\x21\x7a\xd3\x56\x78\x2d\x75\x43\xc8\xbf\x86\x99\x93\x83\x06\xd1\xda\xb4\x48\x75\x06\xaa\xc5\x87\x44\x7d\x6a\xf5\x7d\xa4\x26\x6b\x23\xdb\x27\x4b\x8d\x73\xbf\xfb\xe7\x2d\x89\x9e\xff\xe3\x53\xf7\x7f\xb7\x82\xcd\x6a\xe2\x27\xd7\xb3\xfb\xc9\xdd\x43\xe4\xb5\x5e\xd7\x10\x62\x4c\x10\x59\x09\xb3\xb4\x45\xe0\xd5\xc1\x36\x80\x57\x96\xf0\xe5\x07\x92\x43\xfe\x82\x81\x57\xda\x2f\x62\x3b\xca\xa7\xaf\x12\x5e\x65\xd9\xa0\x6e\x33\x5c\xd5\x36\x21\x50\x85\xcd\x60\x67\xcf\xf3\x51\x1a\xd2\x08\x0b\x13\x78\xe3\x50\x34\x42\xd1\x15\x72\x18\x85\x17\x17\xd1\xc8\xb9\xa0\x64\x62\x09\xc6\xa0\x03\x36\x08\x3e\x5b\x21\x73\x3b\xce\x2b\x04\x29\x36\x43\x32\x8c\xf8\x4a\x5f\xce\x28\xff\x8c\x2a\xa5\x43\x34\x94\x9c\x07\x2b\x52\x56\x08\x0d\x7e\x6d\xb2\x40\x8c\xd1\x88\xed\x5a\x3d\x59\x36\x81\x73\x4f\x18\x9a\xb6\xcf\xb9\x90\x86\xa6\xe5\xdc\x77\x9d\x2a\x3f\x7e\x2b\x51\xab\x44\xa3\x59\x51\x68\xcb\x45\xfa\xad\x8a\x5e\x99\x09\xbf\x5b\x48\x78\xbc\x96\xe2\x6f\xe3\xe9\x8e\x1b\xc8\xbe\x2b\x25\x3b\x76\x9b\xa6\x3a\x2e\xc4\xa4\xd9\xd3\xf8\x51\x9b\x33\x73\x95\x5c\x65\xcf\x7c\xdc\xc4\x9e\xb8\x5a\xde\xe3\x0d\x6b\x22\xb6\xaa\x7f\x68\xaa\x75\xc8\x69\x1a\x62\xe9\x23\x59\x05\x39\xab\x55\x02\x2c\x11\x03\xfc\xb3\xe1\xd3\xbe\x46\xf0\x59\x2a\x3d\xd6\xa2\xd0\xaa\x64\xd8\x0c\xac\xa9\x85\xe0\xb2\x33\x48\x31\xa7\xe5\xf6\xc1\x67\xe9\x86\xda\x84\x08\xc2\xa4\x73\xde\xbd\x8a\x1f\xb3\xa7\x1f\x8f\x1f\x5f\xfc\xb7\x22\xa1\xa4\xf2\xf7\x5b\x24\xc4\xa6\x41\x40\xb7\x29\x29\x3c\x2e\xa9\xda\xb3\x1b\x2f\xf5\x73\x3c\x28\x5e\x6a\x2b\x5b\xd2\x0c\xd4\xc2\x67\x0b\x3c\x9a\x5e\x91\xba\x75\x1d\x2e\x55\x31\x0a\xcd\x78\xc2\x3f\x42\x8c\xc7\x2f\x2c\x2c\xe9\xf6\x48\xab\xa6\x7d\x29\xa5\xd3\x4c\xc7\x04\x4e\x25\x19\xbd\x88\x21\x63\x08\x2b\x82\xba\x06\x6d\x13\x13\xb9\x11\xba\x96\x05\x65\xb8\x57\xda\xb6\xdb\x23\xf0\xdd\xe4\x5f\x6c\x45\xd5\xdc\x67\xa1\x6a\x1a\x9f\xb4\xb7\x0a\x4d\xd1\x14\x45\xcd\x77\x7b\x82\x18\x8d\x46\x89\x21\xa5\x6b\xb4\xe3\xdf\xa6\x94\x30\x32\x22\x02\xce\x39\x33\x22\x47\xfe\x2d\x24\xd7\xd8\xfc\x53\x80\x3f\x55\x43\x3f\x52\x74\x91\xca\xeb\x25\x33\xa9\xe4\x72\x65\x82\x2e\xd9\xb6\xf1\xac\x10\x82\xd1\x10\x48\x4c\x4f\x67\x31\x72\x4b\x0c\x10\xf5\xd4\xe8\xda\x30\x27\x25\x54\xc7\x0d\xd1\xda\xa0\x6f\xed\x1e\xd7\x07\xcd\x3c\xae\x1f\x5b\x6b\x98\x38\xd6\x47\x8d\x3c\xae\xd7\xa0\xd6\x1b\xa3\xd5\x0d\x28\xf5\x6a\x99\x79\xf4\xae\x1f\xef\x55\x92\xea\x37\xc4\x09\xd1\x14\xe1\x10\xe1\x51\x84\x92\x6a\x43\xcf\x52\x14\x7a\x2b\x37\xcf\xe2\x7b\xe7\xd4\xb0\x2f\xca\xc0\xc2\x28\x62\x63\x44\x1d\xe3\x08\x39\x98\x50\x27\x3d\x5f\xc0\xb9\x1e\x47\xa3\xb1\x33\x41\x10\x27\x0e\x1b\x43\x66\xfa\xc1\x88\x0b\x4c\x6b\x4b\x50\xe8\x30\xe2\x28\xc5\x86\x73\x1d\xb1\xb1\x13\xb1\x8e\x73\x14\x86\x59\x73\x0e\xc4\xa1\x69\x43\x65\xc4\x41\x38\x99\x51\x94\x33\x7d\x3a\x51\xa2\xdb\x41\xa1\x6c\x89\x8d\x91\x43\x51\xc2\x1c\x72\xe1\xdc\x90\x19\x4d\x8b\x4e\x50\x32\xee\x7c\xae\x55\x59\x11\x2a\xe8\xe6\x23\x6c\x09\x62\x1c\x92\x51\xd2\xe6\x32\x5e\xe5\x62\x2d\xd0\x30\x75\x9b\x29\x98\x28\xba\x8c\x12\x46\xa1\xc2\xe0\x49\xff\x33\xf3\xe1\xff\x93\x06\xaf\xd5\x0b\x29\x1e\xb7\x85\x52\x09\xe1\x34\x67\xec\x42\xc5\x53\x85\xc2\x4a\x0d\xed\x85\x19\xda\xd4\x21\xd8\x99\xd5\xc6\xd7\x5d\x7d\x21\xef\x2f\x93\x84\x94\xe0\x34\x77\x63\x44\x0f\x50\x42\x9d\x19\xb1\xb2\x59\xd4\x82\x55\xe3\x5e\xe7\x78\x98\x8d\x30\x44\xc6\x85\x7b\xbf\x1c\xd1\xcf\xff\xfc\xc7\x3f\xcf\x21\x3b\xba\x37\x63\x53\x45\x50\xc6\xcf\x64\x6c\xca\xa9\x62\x7b\x8b\x8c\x4d\xd6\x30\x01\x4f\x87\x8b\xc2\x04\x2c\x67\x6e\x7a\x6c\xc3\x93\x3f\xfd\x23\xfa\xf9\x7f\x36\x73\xd3\x93\xb2\x95\xe6\xdb\x35\xcd\x4d\x35\x4d\x36\x34\xfc\x2c\xf2\xe6\xb7\x99\x9b\xea\x06\xb2\xac\x1b\xff\x0a\xf6\xa6\xc5\x3c\xd3\x87\x8c\x73\xa1\xc8\x34\x24\x41\x56\x6d\x78\x5a\xdd\xbc\xb4\xd0\xac\x74\xd0\xec\xd6\x2f\x05\xac\xdb\x84\x49\x29\x17\x9d\xdc\x66\x4d\xaa\xb1\x27\x3d\xae\x87\x94\xd7\xd9\x93\x56\x41\x94\xd7\x6a\xda\xfe\xb4\x27\x6d\xc2\x9e\x94\x12\xbb\xa6\xa9\x0e\x0c\xb3\x92\x4c\xcf\xf6\xa7\x75\xe9\xfe\xac\x4b\x29\x3f\xf7\xa7\x5d\xe9\x1e\xec\x4a\x79\x68\xe2\xef\xc8\xb8\x94\x6d\xab\x15\x84\x0e\xe9\xfc\x79\xcf\xf2\xc5\x4f\xff\xfa\xf6\x1f\xaf\x7e\xda\x3d\x6d\xa6\x71\x35\xe1\xfa\x07\xa0\xdb\xec\xda\x50\x51\xd0\xf5\x70\x87\x45\x57\xd8\xa6\xc9\xdb\x16\x05\xc8\x53\x1f\x58\x4e\x8c\x14\x95\x56\x59\xbd\x31\x82\xe1\x7d\x2f\xde\x0f\xef\xfe\xfb\x31\x66\xcf\xff\xd9\x5c\x5d\x2e\xe3\xf0\xa5\xdc\x7d\x1a\xec\x5b\x3d\x1f\x2e\x75\xd8\x27\x24\xe4\xa2\x5b\xe3\xb9\xe6\x53\xb6\xca\x54\xc7\x04\x86\x5f\x00\x6e\x98\xec\x3f\x39\xfe\xe1\x02\x9e\x34\x9a\xed\xba\x89\x6b\x3e\x63\x6a\xe4\x15\x93\xb6\x53\x37\x69\x98\x30\xe1\x77\x71\xdf\xb3\x76\x71\x7c\xf2\xf7\xa7\x74\x1a\x7e\xc6\x59\xd3\x43\x5f\x65\xaf\xe9\x5b\xea\x7e\x27\xed\xe0\xf2\xe9\x4d\xef\xf4\xdf\xdd\xaf\x3e\xb2\xcc\x67\x8a\x27\x23\x57\x6d\x95\xf5\x4e\x10\x63\x11\xbe\x7f\x54\x07\x0b\x7f\xb9\xfe\xfe\x47\xda\x30\x44\x4c\x2f\x6f\xa0\x3b\xd1\x83\x10\xab\xfc\x79\x12\xa0\xe8\x89\xbb\x9f\xc4\x27\xcb\xdb\xbf\x52\xdb\x97\x3d\xfb\x85\x9e\xc2\x6d\x26\xed\x58\x31\xf0\x71\x49\xd7\x8a\x09\x13\x56\x23\xe5\x81\xdc\x30\x3b\xd7\x2b\x32\x82\xb1\x73\xc2\x08\x85\x97\xf6\xb8\x0a\x8b\x24\xab\xd3\x31\x4a\x90\xa3\x17\x5e\x88\x56\xd1\x64\x82\xc2\x08\x32\x14\xdf\x38\x09\xbc\x92\x36\xb1\x58\x7c\x29\x91\x5f\x12\x26\xb0\x29\xa2\x49\x94\x30\x23\x87\xdc\x39\x25\xd7\x09\xa2\xce\x2c\x81\x97\xa8\x36\xf5\x5b\xd5\xa3\xae\x08\x01\x33\xa9\x9d\x81\x8b\x08\xc5\x61\x22\x23\x60\xd4\xa4\x82\xc9\xdb\x43\xd3\x10\xd9\xce\xab\x08\x7f\xac\xb5\xd7\xd4\x8a\xa1\x47\x61\xe8\x40\x81\x6b\xe4\x93\xc2\xc6\xa9\x3e\xcd\x09\x11\x83\x51\xec\x4c\xf9\xf4\x44\x58\xbc\xfa\xf0\x92\x17\xba\x44\xcc\xf9\x75\x16\x8d\x3e\x3a\xd2\x21\x8c\x3f\x83\xba\x5a\xfb\x3a\x0a\x91\xa3\x0c\xfd\x4e\xa8\x7b\xd9\x71\x8e\x31\x43\x54\xb4\x92\x3e\x74\x3e\xbc\x7f\xe5\x44\x58\x7d\x57\x4c\x83\x73\x8e\x62\x72\xdd\x71\xfe\x4d\x66\xce\x08\x62\x67\x96\x20\xf1\x72\x1a\xc3\x11\x1a\x93\x38\x44\x34\x49\x47\x35\x22\xa1\xc9\x26\xba\xb7\xb7\x99\xf1\x7d\x3e\x37\xa7\x44\xac\x6f\x75\x35\x25\x9e\x75\x38\xed\x2e\x54\x94\x96\xd6\xeb\x28\x8e\x9d\x73\xe4\x50\x24\x3a\x62\xd8\x3f\xf9\xb9\x71\xc8\x85\x1a\x98\xfe\xba\x96\xc0\x9c\xd1\x8c\x52\x84\x59\x7c\xe3\x9c\xa3\x08\x5f\x3a\x9c\xd8\xa0\x70\xa1\x6d\xd4\x30\x4f\x8a\x28\xfc\x52\xef\xd8\x05\x36\xf5\x59\x16\x4e\x43\xa8\x81\x2e\x22\x3a\x31\xb3\x09\xb8\x8e\x88\x5d\xc2\xd0\x27\x96\x8f\x6a\xd2\x93\x46\xae\xb3\x24\xc3\x28\xd4\x9a\x3c\x93\x29\xcc\x59\x4d\x5e\x89\x3d\xa3\x48\xad\xf0\x94\x4d\x8a\x49\x86\xaa\x9a\x32\x15\xfd\xfb\xb2\x1b\x03\x55\x79\xa8\xc6\xba\x07\xb4\xe3\x98\xb2\xc4\x99\x51\xf4\x79\x01\x97\x60\xa9\xda\x73\x0b\x8c\x80\x4c\x69\xa6\xde\x19\x23\x16\x55\x3e\xa2\x9b\xa9\xc8\x98\x68\xad\xf4\x11\xdd\xd8\x6a\x84\xe4\x1a\x37\xaa\x20\xcc\x13\x6a\xa6\xad\xa6\x89\xfc\x34\xa0\x1c\x5d\x40\x9d\xcb\x8e\x33\x66\x6c\x9a\xf4\x77\x77\x2f\x29\xbc\x80\x18\x76\xd0\x27\x38\x99\xc6\xa8\x33\x22\x93\xdd\x70\xb7\xa7\x2f\x39\x7d\xd8\x26\x28\x19\xb7\x08\xbd\x8c\xc2\xa0\xd7\xca\xb6\x5f\xe0\x56\x1d\x88\x3d\xe0\xb6\x74\x65\xbe\x75\xb3\x92\xd5\x67\x60\xb1\xfd\xb7\x42\xbf\xdc\x2b\xf9\xb0\x18\x51\x3a\x94\xbe\xfc\xc3\xcb\xb3\x17\x2f\x4f\x8e\xbe\x7f\x75\x7c\xf6\xfe\xf8\xe8\xd5\xe9\xcb\xd7\xc7\xd6\xe4\x0f\xcb\x68\x7d\x57\x26\xaa\x22\x68\x06\x3f\xa6\xff\x3b\x43\x22\xd7\xf1\x12\x54\xf5\x27\x84\xa6\xce\x08\x32\x18\x93\x4b\x71\xeb\x39\xb3\x69\x9b\x91\x76\xc8\x4f\x07\x27\x17\x64\xc6\x1c\xe5\x87\xcb\x3f\x21\xa8\x1a\xbf\x56\x9c\x23\x7c\xe3\xc8\xed\x9a\x38\x13\x18\x22\x4e\x4f\xf5\x51\x02\x0e\x26\x21\x2a\x41\x34\xae\xc9\x4c\xd0\x4a\xde\xa0\xb4\xb8\x70\x12\x4d\x11\x8c\x1d\x16\x4d\x50\x67\x41\xc7\xf3\x46\x51\x41\x1e\x32\x1b\x5b\x1d\x0d\xc8\xa8\x51\x75\x80\x27\xcb\x01\x1f\xc5\x11\xc2\x6c\x70\xae\xa6\x57\x9f\x71\x69\xc9\x43\xa1\x6b\x4d\x8b\x29\x2b\xb9\x8a\x5b\x11\x24\x6d\x98\x55\x29\x1e\xd3\xe5\x68\x41\x23\x3b\x62\x2d\x01\x2c\x06\x19\xa8\xeb\xf3\x5b\xec\x02\xf7\xed\xc5\x85\xd9\x83\x4a\xba\xb0\xea\xa1\x5b\x3a\x31\xf8\xca\x88\x8c\xc6\x89\xc3\x85\x96\x33\xd5\x92\xe6\x52\x2c\x18\x17\x95\xf8\x63\x04\x59\xaa\x11\xc5\x64\x19\xa9\x2a\xc7\xe2\x37\x93\xab\x28\xc4\x09\xe7\xca\x92\x5d\x95\x42\x22\x93\xaa\x38\x51\x3e\x47\xb4\x2d\xa2\xff\x09\xd5\x51\xfb\x82\xc2\x4b\x41\x67\xca\x15\x73\x32\x18\x60\x9b\x92\xc2\x70\xc0\xf4\x63\x63\x34\x78\xe1\x68\xce\x09\x89\x11\xc4\xf9\xf1\xfc\x2d\x1b\x10\xe7\x4a\x22\x18\x47\xbf\x21\xba\xdb\x9e\xd2\xe8\x4a\x4a\x5f\xeb\x8e\xa1\xb2\x42\x0a\x38\xbd\x45\x78\x36\x41\x14\x9e\xc7\xbc\x0a\xb8\x44\xac\x9f\x7e\xd3\xbf\xa5\x88\xcd\x28\x76\x58\xe7\x7b\xd9\xff\x53\x3d\xa2\xf9\xdc\x5f\x38\xe6\x50\x9a\x81\xbe\xce\x01\xbf\x80\x0c\x2d\x35\x5a\xbd\x17\xdb\x2b\x6f\xdc\x42\x0b\x5f\xd8\x0e\xd6\xbd\x5b\x67\x64\x5f\xda\x98\xf0\x8c\x77\xff\xab\xdd\xa3\x6f\x44\xf7\x97\xda\xa5\x09\xa3\x05\x4d\xf8\x57\x35\xe2\x13\xd1\xfd\xc5\x23\x9e\xb1\x28\x4e\x76\xe1\x28\x4e\xda\x3a\x80\x79\xa5\x7a\x4e\xff\x76\x18\x1f\x1d\xc0\xd9\xe7\x38\xe3\x86\x0e\xab\x3a\xcf\xf4\x10\x31\xc8\x77\x3e\xc5\x85\xaa\xbf\xaf\x69\xc4\xd4\xef\xb9\xdf\x47\x03\x36\x0c\x30\x40\xf3\x35\xb6\xbe\xd9\x7d\xb9\xff\x21\xbd\x14\x58\x93\xa4\x23\xf1\x5e\xdf\xf5\x5a\x2d\x79\x40\x1e\x04\xd9\xcb\x41\x6f\x78\x68\xfe\xd1\x7f\x47\xc9\x24\x4a\xd0\x8e\x1a\x71\xda\x2e\x95\xed\x42\x40\x40\x12\xa8\x8e\x7e\x44\x37\x89\x47\xfd\x41\x77\x08\xe2\x80\x0e\x92\xa1\xae\xc5\xbc\xdb\x28\x39\x9a\xb1\x31\xa1\xd1\x6f\x28\xec\x63\x74\xed\x60\x2f\x37\xc7\x30\xeb\x32\xf3\x6f\x91\xc7\xfc\x39\x5f\xb8\x28\x39\xc6\x7c\x66\xac\x75\x88\xb5\xce\x1c\x24\x20\xee\x8c\x20\x1b\x8d\x8d\xe2\xcc\xbf\x8d\x2e\x3c\xd6\x11\xd6\xb8\xa4\xd5\xd2\xbf\x06\xdd\xa1\x7f\x9b\x5c\x47\xbc\xb4\xf1\xac\x23\x37\x85\x7f\x3b\x82\x09\x72\x0f\xba\x5d\xb7\x1f\x5d\x78\x0f\xf8\x37\x7c\x35\x28\xe2\x3d\xe8\xf9\x00\x8a\xff\xe3\x0e\x45\x7c\x0a\x3c\xe6\xef\x10\xef\x41\x57\x3d\xdf\x39\xa7\x08\x7e\xdc\x11\x6d\x3c\xea\xee\xbb\xfd\xca\x77\x3d\xf1\xae\x97\x7f\xa7\x16\xb3\xcf\xc6\x94\x5c\xe7\xbe\xc7\xe6\xb2\x13\x83\xe1\xdc\xf6\xd2\xf7\x3b\x6c\x8c\x0a\xb3\x95\x75\x5b\x76\xa1\xeb\x03\x34\xf7\x7d\x7f\x3e\xaf\x3d\x21\xc9\x08\x6d\xcb\xc4\x93\xa7\x19\x72\x9b\xa2\x8e\x30\x99\x7b\xee\xae\xeb\xeb\xed\x83\xf5\x96\x65\x87\xb8\x93\xc4\xd1\x08\x79\x5d\xd0\x66\x7e\x47\xf2\x9e\x9e\xeb\xfa\x9d\xff\x92\x08\x8b\x4a\x7d\xd7\xad\x1f\x10\x23\xe7\x79\xea\x76\x0e\x13\xf4\xf8\x51\xfb\xbf\xc9\x46\x2f\x9f\x8d\x9d\x40\x77\xc6\x2e\xda\x4f\x5c\x40\xb3\x2b\xac\xc3\xc8\xf7\x37\x0c\x1d\x71\x2e\xc0\x43\xd9\x3c\xa1\x6b\xe7\x14\x7d\x62\x2f\xd0\x88\x84\x88\x7a\xd8\xef\x84\xe2\xa7\x47\xfd\xda\x39\x39\x67\x04\x7e\xa5\x73\xa2\xc7\x7c\x8c\xd3\x31\x23\xf1\xd3\x98\x97\x6c\xde\x2e\x28\x99\x64\x33\xb7\x60\x56\x46\x30\x1e\xcd\xb8\x9c\xd2\x9e\x12\x19\x0e\xde\xc6\xd9\x9c\xc3\x24\x1a\xb5\x43\x4a\xa6\x21\xb9\xc6\xd5\x55\xbf\xa0\x3b\x52\x95\x5f\x70\x37\x8e\x60\x1c\x0b\xe4\x9d\x4c\xcf\xbe\x5d\x02\xa0\x7b\xe7\xea\x47\xee\x83\x80\x7f\x97\x5c\x38\xe8\xb0\x3c\x06\x34\xef\xa3\xfa\xb5\x13\xb1\x9d\xdb\x17\x11\xbe\x44\x74\x4a\x23\xe5\x5a\xd6\xec\x86\xd7\x9b\xd3\xbc\xd6\x90\xbf\x13\x5d\x78\xea\xc9\x25\x62\x6f\xaf\xb1\x1e\xeb\x89\xb4\xa2\xc9\x5a\x34\xa8\x2b\xc3\x9b\x61\xad\x96\x47\x03\xda\x91\x40\xa1\xfc\x15\xa5\x86\x67\x6d\xe2\x05\x4a\x46\x34\x9a\x32\x42\x45\x1f\x3b\xd9\x5a\x73\x2a\x0e\x70\x67\x3a\x4b\xc6\x1d\x38\x9d\xc6\x37\x1e\x06\xd4\x9f\x6b\xaa\x30\x4f\x47\x27\xc7\x4a\xa8\x27\xc7\xd7\x7b\x86\xff\x5a\x3c\x80\xcf\xf0\xc3\x87\xea\x6a\x0f\xf0\x2c\x8e\x1f\x18\xa7\x10\x9b\xa7\x10\x0f\xfb\xb7\xf3\x1d\xfc\x3f\x7b\x87\x4c\x4d\x8b\x07\x7d\xf0\xa0\xeb\x77\x2e\x08\x3d\x86\xc5\xcb\x57\x74\x1a\xc0\x01\x1b\xf2\x4d\xd7\x5f\x30\xc2\xc4\xca\x53\x45\x28\xf1\x10\x58\x54\xd5\x83\xbe\xdf\x37\xfa\x54\xd1\xa1\x6a\xa6\x6d\xd1\xec\x43\xc0\x7c\x3e\x88\x79\xba\x19\xd3\x09\xa6\x5f\x21\x83\xa8\xf7\x3b\x2c\x13\xe3\x3d\x2b\x31\xde\x33\xb7\xc1\xde\xb0\xff\x8f\x93\xb7\x6f\x3a\x52\x6c\x88\x2e\x6e\x4a\x9c\x22\xe1\xfc\x98\xe0\xbe\xf8\x7e\x0a\x82\xf8\xee\x2e\x56\x1f\xf8\x6b\xcf\x97\xec\x0b\xa7\xe2\xc7\x9c\xf7\xf2\xdc\x0f\x82\xdf\x13\x8e\x6f\xe2\x0c\x3b\xc6\x19\x06\xce\x24\x4a\x92\x08\x5f\x3a\x17\x84\xa2\xe8\x12\xff\x84\x6e\x1c\x89\x63\xf7\x4b\xdf\x8d\xe4\xb0\x66\x60\x14\x24\x9a\xa9\x00\xae\xdf\x99\xc0\x69\x9e\x31\x4a\x7b\x26\xcd\xe7\x97\x88\x79\x11\x40\xfe\xdd\x5d\xfe\xef\xb5\xfb\x2c\xa2\x28\xa6\xfd\xcc\x37\x2e\x68\x59\xae\x03\xcc\xbf\xbb\x4b\x29\x7b\x7a\xc3\x7b\xd8\xbb\x9d\x83\xc8\x07\x1e\xf5\x66\xc1\xed\x1c\x30\x10\xfa\x80\x7a\x33\x80\x40\x2c\x7f\x10\x00\xbd\x41\x08\xe2\xa1\x66\x8f\x46\x9c\x3c\xcc\x04\xa3\x57\x47\x32\xc3\x28\xcd\x84\xb6\x75\x5e\x0f\x05\xa8\xf3\x9c\x10\x1a\x02\x16\x30\xf9\x6b\x27\xa3\x4b\x5d\x40\x83\xee\x33\xfa\x57\xd4\xf9\x19\x8d\x34\x5d\xa2\x19\x5d\x12\xcf\x07\x74\xd8\x66\xea\xc7\x0e\x7e\x18\xc0\xbf\xc0\x39\x7f\x4d\x82\xd7\x90\x8d\x3b\xc9\xaf\x94\x79\xd8\x7f\x88\x3a\x3f\xa2\xe8\x72\xcc\x1e\x32\xf5\x03\x24\x01\x79\x88\x3a\x47\xe1\x7f\x67\x09\xe3\x7b\xf8\x21\x33\xfe\xd8\x49\xbe\xeb\xb6\x5a\x1e\x09\x92\x74\xa1\x44\x73\x94\xcc\x70\xe8\xf5\xd0\xc1\x5f\x88\xbf\xdb\xeb\x76\xeb\x67\x92\x4c\x76\x47\x71\x34\xfa\xd8\x16\xce\xd1\x6d\x88\x47\xe3\x6d\xe1\x30\x37\xc6\x52\xb1\xd2\x01\x62\xfa\x46\x5b\x95\x49\x63\xd4\x05\x30\x60\x1d\xe5\x5f\x82\x49\x28\x54\xc1\x1d\x46\x5e\x91\x6b\x44\x9f\xc3\x04\x79\xfe\x8e\x12\xbe\xa0\x92\xb5\xa4\xf5\xa1\x2f\x7e\x4b\x8b\x85\xfc\x0d\xd5\xbf\xe7\x33\xc6\x08\x76\xfb\xb2\xb7\x6a\xc9\x91\x47\x81\xfe\x8e\xdf\xf9\x75\x86\xe8\xcd\x89\xf0\x66\xe1\xa7\x13\xba\xfe\x0e\x69\xb5\xb0\x47\xfc\xf9\x5c\x21\x65\xcc\x69\x1b\xb8\x13\x32\x4b\x90\x34\x14\xca\xdf\xb3\xa9\x2b\x0c\x1f\xa3\x8f\xee\xb0\x4c\x30\x0c\x76\xfb\x35\x2f\x7d\x7c\x85\x30\x67\x1c\x6e\xcf\x67\xe7\xe7\x31\x4a\x04\x05\xe7\x47\x29\xd6\xf4\xfb\x2a\x42\xd7\xfd\xeb\x08\x87\xe4\x5a\x30\x5d\xf6\x2b\x09\x75\xb4\x63\x83\x6c\x91\x89\x5b\x66\xf1\x4e\x23\x09\x4a\xb6\x94\x81\x2a\x7f\x6c\x19\xbd\xc9\xb8\x48\xf5\x5d\x0f\xf9\x73\x29\x6c\xa7\xd7\xde\x02\x3a\xc3\xfb\x2c\xd9\xb3\x38\x4a\x18\xc2\xc2\xbd\xb0\x31\x6b\xc6\xc5\x70\x0f\x39\x1a\xad\x4d\x2e\x1c\xe6\x1b\x14\xf9\xf4\x66\x8a\x14\x55\x7e\x0e\x31\x26\xcc\xe1\x7c\xac\x03\x9d\x51\x0c\x93\xc4\x81\x89\x03\xd3\x1d\xee\xfa\x39\xd6\x88\xb7\x6e\x10\xa1\x67\xf8\xaf\xac\xc4\x14\xd1\x80\x0d\xf0\x70\x87\x1a\xdc\x57\x60\xfe\x71\x77\xf7\xa0\x07\x68\xc7\xbc\xbf\x83\x07\x5d\xa0\x9c\xad\x22\xec\x50\xce\xfd\x75\xf4\x7d\x1e\x70\x29\xbc\x6a\x79\x28\xe7\x3c\x39\x23\xb7\x91\x7b\x5e\xf6\x1f\x95\x0f\x73\xd7\x7a\x98\xbb\xe6\x61\xee\x0e\xfb\x83\xa1\x29\x65\x52\xbe\xea\x3b\x72\x42\x8c\x2f\xa4\xb3\x89\xbc\x4a\x6a\xd4\xf8\x73\xcc\x63\xe3\x28\x01\xc8\x07\xfc\xdf\x4e\xba\x57\x02\x79\xe8\x29\x80\x80\xe8\x3e\xd1\x00\x01\x0f\x06\x83\xdb\x8f\xe8\xa6\xef\xc2\x30\x74\x81\x9c\x8d\xec\x78\x01\xce\x13\x6b\x9d\x55\xc0\x9b\xe4\x0c\x7d\x26\x6f\x04\x5a\xde\x60\x3e\x0c\xd8\x0e\x8a\x13\xe4\x44\x17\x1e\x33\x77\x1a\xe2\xaf\x3a\x14\x4d\xc8\x15\xea\x9c\x47\x38\xf4\x98\x2f\x4a\x8a\x76\x93\x80\x7f\x59\x1c\xdd\x57\xaa\xb3\x2e\x88\x03\x57\x96\xcf\x3f\xdf\x91\x73\x10\x04\x01\x1b\x24\xc3\x56\xcb\x4b\x02\x97\xcb\x97\x71\xe0\x92\x8b\x0b\xd7\x17\x73\x1b\x05\x78\xc7\x55\xfa\xd8\xb4\x7b\x51\xab\xe5\x45\xb9\x73\xf9\xf9\xf8\x4d\xce\x7b\xf0\x69\x94\xdd\x9b\xe5\x04\xa4\xc8\xc2\x59\x15\x6f\x14\x64\x76\x75\x90\x0c\xc5\x03\x60\x11\x51\x07\xb1\x7a\x87\xe7\x73\x0f\x81\x68\x80\x84\xd8\xb0\x03\x83\x72\xe1\x59\xe5\x77\x91\x27\x09\xa8\x6e\x35\xb7\x8d\x84\xb8\xc4\x45\x96\xd2\x09\x21\x46\xa1\x8b\x08\x87\x2f\x71\x88\x3e\xd9\x3f\x10\x04\x01\xe4\xfd\xd2\xba\x35\xa3\x26\xe7\x38\x47\xc8\x43\xa0\xe7\x0f\xba\x43\x8f\x73\x5f\x40\x6e\x4f\xb9\x1f\x4a\x3b\x54\x7f\xbe\xd0\xcd\xfa\xc1\xed\xd8\xc7\xa6\x3e\xde\x2d\x1c\x1d\x75\x06\x7d\x80\xe6\xf3\xa1\xcf\xaf\x44\xda\x11\x41\x60\xf8\xde\x02\xd0\x07\xe2\x9a\xa4\x80\xf0\x12\x5e\xad\x76\x80\x53\x71\xd3\xb3\x7b\x37\x35\x9a\x2f\x45\xca\x25\xe3\x8d\x94\x4e\xf5\x56\xd2\x14\x0c\x28\x80\x85\xab\xa7\xbe\xec\xed\x1c\x90\xa2\xb8\xce\x49\xb9\xe4\x23\x89\xc9\x43\xe2\x80\x0c\xe8\x10\x30\x99\x46\xf0\xed\x85\x87\xfd\xef\x82\xee\xdd\x9d\x07\x07\x78\x18\xa0\x01\x1e\xa6\x93\x0a\xe7\xe2\xdb\xcd\x04\x7f\xb2\x50\xf0\x5f\xb2\x43\xaa\xb9\x74\x7d\xf8\x2f\xd1\xe4\xcb\xe4\x38\x3d\xbc\x1d\x7e\xbb\x89\xa3\xd2\x6a\x19\x23\x98\xa7\x23\xd8\x20\x6b\x99\xac\xca\x08\x62\xcf\x07\x71\xd6\x1c\x96\xcd\xc5\x62\xa7\x83\x68\xd5\x56\x6f\xe7\x60\x16\x44\x1d\x05\xd2\x13\xe4\x15\x8c\x02\x2e\x3a\x0d\x5c\xf3\xa1\x3b\xf4\x77\x90\xd2\x8b\x88\x2f\x0e\x8a\x03\x8b\x02\xa4\x52\x87\xc9\x56\x66\x01\xdf\xa0\x03\xd7\x78\xe6\x0e\x0d\x6d\xb4\x6c\x2b\x06\x83\x19\x88\x87\xbe\x32\x35\x24\x25\x9d\xbb\x32\x39\x98\x17\x88\xe0\x4c\xb4\x01\x81\x29\xcb\xa4\xed\x12\x8a\x0e\xa3\x3e\xf1\x3d\x06\x90\xbf\x83\x3b\xfc\xe1\xdd\x9d\x87\x83\x5b\xfe\xab\xef\x4e\x50\x92\xc0\x4b\xe4\x82\x10\x32\xd8\xc7\x73\x49\x8f\x13\x43\x7e\xc4\x1d\xfe\xea\xee\xee\x76\x0e\xdc\x09\x62\x9c\x05\x4e\x5a\x2d\x0f\xf1\xe9\x4a\x08\x0d\xa8\x97\xa8\x9f\x40\x3f\xe3\x4b\x3f\x82\xa3\x31\x7a\x4e\x30\xa3\x24\x0e\x92\xdc\x9f\x00\x89\x44\x43\xf4\x0a\xf2\x37\xfa\xa7\x0f\xda\xbd\x20\x08\xbc\x7c\xd5\xbb\x3b\xd7\xf5\xd3\xfd\xec\x62\xd2\x4e\x18\xa1\xc8\xe5\x9b\x34\xce\xad\x58\x80\x7d\x10\x17\xd8\x5e\xac\xaf\x17\xc8\x37\x36\x88\x3b\x53\x8a\xae\x22\x32\x4b\xc4\xeb\x74\x1d\x0a\xcf\x83\x7c\xc3\x60\xa6\xd8\x67\x30\x1a\xfa\x20\xdd\x4e\xb3\x56\x4b\x6c\x82\x7c\x27\x66\x8a\xc7\x28\x5e\xdf\x9e\x4b\xa6\x08\xbb\x79\x2a\x26\x05\x08\xa4\xa5\x9a\x4b\xc4\x9e\x1b\x6d\x79\xfe\x4e\xfa\x31\xd6\x6a\x15\xc7\x26\xfb\x64\x0e\x41\x9d\x6e\x4d\x3d\x60\x92\x44\x97\x58\xd3\x1b\xb9\x03\x3d\x64\x50\xe9\x5b\x4e\x89\x19\x9d\x71\xd9\xa6\xaf\x0e\x2e\xaa\xbd\xc0\xe7\x3e\xb8\x2d\xf4\xd2\xa6\x16\x2e\xce\xca\x1c\x5c\x22\xf6\xce\x9c\xe2\xaa\x5a\xb9\x75\xe0\x9f\x8b\xe7\x00\x75\xae\x60\x1c\x85\x90\xa1\xe7\x72\xc7\xa5\x47\x8c\x1f\x81\xef\xe1\xe8\x23\xb9\xb8\xc8\x5b\xe8\x37\xc5\xaa\xee\xa3\x7d\xc0\xd6\xb4\x77\x02\x0b\xe7\xda\x4c\x1b\x96\x20\x76\x1a\x4d\x10\x99\x95\x05\x6a\xcd\x7f\x1a\xe7\x94\xaa\x34\x9e\x9c\xd3\x48\xe3\xa8\x29\xe3\xa3\x2b\x6e\x9e\xec\x93\xbe\x92\x94\x1f\x74\xa5\xa8\x2c\xd8\x47\x98\x1d\xb3\x03\x7e\xbe\xf6\xc5\x33\xd9\xe3\x56\x4b\x58\x2e\x79\x5d\x29\x3b\x77\x5d\xfe\xb6\x6f\x30\xf2\x2c\x4f\xaf\x4c\xf2\xe5\xdf\x32\x8f\xfa\xfc\x46\x10\x7b\x56\x8a\x58\x74\x3e\xdf\xb1\xae\x24\x2e\x4a\x03\xe9\x49\x59\xf5\xd2\x10\x9e\x40\xc1\x14\xd2\x04\xbd\xe4\xe2\xb5\x98\x8d\x07\x51\xf2\x06\xbe\xf1\x70\x6a\x85\x95\x3a\x6a\x7e\xd4\xf0\x5f\x59\xab\xe5\xe1\xa0\xeb\x03\xa1\xb2\x99\xc0\x4f\x1e\x06\x3d\x9f\x77\xb8\xb0\x17\xe9\x8e\x5c\x87\x3a\x5e\x95\xe5\xe4\x7c\xb5\x2d\x8c\xe9\xc1\xfe\x6d\xb6\xd4\xb9\x69\xc3\xe2\x94\x1b\xf4\xf2\xee\x6e\x0f\xed\x4b\x56\x14\x10\xcb\x47\xad\x54\x1d\x2d\x96\xa2\x73\xfc\x97\xa0\xbf\x9f\xcf\x4e\xbb\xe2\xe9\xa8\x81\x13\x14\x1f\x41\x40\x34\xdf\x41\x38\x53\x97\x3b\x0c\x54\x48\x4d\xa4\x93\x02\x08\x91\x84\x09\xe8\x6d\x91\x8a\x57\xbc\x60\x27\x17\x87\x8b\x0b\xe0\xa5\x87\xc1\xed\xdc\x07\xe5\xc7\x69\xfb\x41\xf6\x29\x80\x44\x7d\x79\x49\xc5\x01\x51\xb7\x33\x03\x91\xf8\x98\xb0\x48\xc6\xa2\xf7\x3b\x29\xab\x1e\xf9\x25\x40\x42\xb6\xe5\x64\x26\x40\x87\x57\xce\x80\x04\xe2\xd0\x55\x5b\xf1\xd3\xf1\xa1\x42\x87\xe5\x5d\x2e\xaf\xfa\x98\x24\xc8\xe3\x5b\x28\x6d\x5f\x9a\xfc\x17\x29\x82\xcb\x5b\x4b\x5a\x02\x3f\x8f\x06\xd3\x62\x87\x58\x8e\x74\x93\x55\x37\x27\x03\x16\x16\x77\xdf\x5a\x75\xdf\xac\xba\x3f\xec\x63\x93\xc1\x4d\x0f\x89\x60\x37\xe3\xd5\x19\xdc\x1d\xc5\xdf\xf3\x76\x14\x8b\x42\x11\x0c\x6f\x4e\x18\x64\x28\xd8\x93\x4f\xe4\x22\x05\x16\xcb\x29\xb3\x58\x4e\xe5\x35\xaf\x76\x06\xec\x50\x94\x90\xf8\x8a\xcb\x92\x7d\x56\xfa\x40\xd7\x2c\x50\xdc\x8b\x4a\x13\x87\x8d\x0a\xdf\xf5\x32\xb2\x6c\xb6\xd3\x03\xb8\xc0\x06\x29\x8a\x27\xb8\xab\xb9\x0f\x88\x87\x41\x0c\xa8\xd8\xf2\x96\x73\x52\xac\xcd\xa5\x29\x89\xb9\x31\xe6\xa2\xe2\x13\x62\xa8\xee\xdc\x76\x9a\x78\xc3\x66\x13\xdb\xe0\xcc\xe2\x85\x9c\x99\xe8\xa0\xc9\x59\x69\x30\x52\x7e\x31\xf4\x95\x2f\x2e\x72\x67\xaf\x5f\xda\x0c\x25\xcc\x50\xfe\xfd\xbe\xa9\x05\x49\x79\x34\x55\xfa\xfd\x0c\x63\x44\xf3\xbe\xa4\x86\x2e\x4f\xe9\xce\xf8\x7a\x53\x03\x00\xc5\xd4\xd6\xd3\x9a\x30\x0f\x03\x66\x99\xe4\x94\x08\xca\x66\xe6\xbe\xbf\xc3\x16\xac\xd5\x4e\xb1\x67\xac\xc8\x22\xe6\xb5\xf0\x82\x13\x91\x4d\xe9\x18\x0d\xb7\xe2\xdf\x3e\x02\xea\x56\xed\xa3\x8e\xfa\x35\xf7\xe7\x20\xcf\xa7\xa8\x19\x47\xe5\xe9\xde\x93\xd3\xbd\xaf\x58\xa6\x07\x5d\x35\x8b\x0f\x7a\xcb\x51\xd0\x52\xa6\x7e\xd0\x50\x2d\x5e\xd3\xb4\x94\x3f\x76\x69\x72\x35\xad\x2d\x97\xe7\x0f\x16\x17\x9c\x52\xf2\xe9\xa6\x49\x41\x45\x1a\x68\xb3\xaf\xeb\x2b\x64\x71\x59\x4e\x15\x9a\x96\xcd\xb4\x4e\x8b\xcb\x2a\x77\xd1\x14\xb9\x33\x22\x58\xca\x3b\xa3\xfc\x70\x11\xbe\x2a\xa2\x75\x80\x50\x33\x01\x61\xca\x06\x11\x98\x81\x11\x08\x0d\x7d\xd6\x45\xbe\x8c\x34\x94\x48\xf6\x00\x0d\xc8\xd0\x4b\x7c\x10\x05\xb1\x0c\x15\xa7\x8c\x25\xb3\xfc\x55\x8e\xbd\x99\x3f\x8f\x3b\x21\xc1\xe8\x90\x79\x91\xaf\x2f\xb3\x94\xfe\x46\xea\x64\x51\x00\x0d\xab\xc5\xc4\xc6\xb9\x6a\xc6\x5b\xdc\x3e\x06\xa7\xb6\x53\xcb\xcf\xf2\x86\x95\x22\x2b\xd5\x96\x00\xec\xef\xa4\xdf\x4a\x84\x0a\xcf\x23\x62\x94\x7c\x1e\x5c\x8c\x3e\x31\x97\x8b\x07\x69\x99\xb8\x54\x46\x88\x0d\xa2\x50\xa2\xb8\x37\xc9\x08\xf3\x2f\x4d\xb5\xed\x6f\x05\xee\x81\xe0\x11\xe2\x42\x38\x51\x23\x09\x90\x00\x77\x65\x7f\x89\xfd\x1e\x20\x7d\x3d\xa6\x33\x19\x08\x92\xfd\xe9\x26\x40\x1d\xe5\xa9\x2c\x08\xc7\x89\x2e\xa6\xdd\xc8\xf2\x4f\xdf\xaa\x3d\x99\x7f\xfa\x5c\xed\x6a\xf3\xa9\x1c\x24\xf0\xba\x20\xec\x20\x7c\xe5\x7b\x86\xb3\x9c\x76\x92\x3b\x7b\xff\xe1\xcd\x9b\xe3\xf7\xae\xaf\x6c\x9e\x68\xe4\xf6\xa7\x55\x3a\x7d\x29\x2c\xaa\x29\x42\x9f\x18\xc2\xa1\x77\xcb\x60\xf2\xb1\xef\x75\xc1\xa8\xc3\x7f\xf9\x1e\x45\x97\x9c\x62\x40\x46\xe8\xfb\x19\x16\x6e\x64\x13\x48\x3f\x66\xeb\xeb\xd0\x8c\x14\x5b\x0a\x5f\xd3\x9c\x9a\x99\x4a\x4b\xd8\xb3\x67\x5a\xe6\xa4\x42\xc8\x0f\x68\x87\xaf\x79\x7a\x17\x45\x17\x1e\x27\xa0\xfe\xad\x7c\x1e\x1c\xc8\x4b\x48\x5f\x35\xea\xe9\x3e\x40\xb9\x9b\x02\xf9\x1e\xf3\x77\x34\x61\x95\x65\xba\x06\x1c\xd6\x39\x90\xd2\x2a\xc2\xa1\x36\xf3\x3a\xb4\x93\x30\x32\xf5\x7c\x7e\x73\x89\x3b\xc4\x9f\xfb\xfa\x0e\xf6\x85\x24\xed\xf2\x89\x70\xfd\xce\x14\xd1\x0b\x42\x27\x9e\x3f\x37\x11\xb6\xe9\x80\x73\x13\xad\x15\x0d\x93\x06\xf3\x87\x0a\x26\x24\x90\x9e\xa7\xc5\xd3\x89\x8a\xd3\x89\xe4\x74\xa2\xfc\x74\x92\xc0\x83\x41\x93\x9e\x2c\xb1\x92\x0d\x3f\x1d\x5d\x78\xe2\x6a\xbf\x45\xd6\x95\x44\x7a\x25\xcb\x77\x7e\xba\x92\xa8\xd9\x4a\x22\x63\x25\x85\x90\xe3\x7b\xbe\xa8\xe9\xa9\x96\xf6\x78\x67\x88\x20\x85\x69\x77\x9e\x5a\xbb\x73\x00\x88\xa4\xa9\xfa\x63\x09\x3f\xef\x08\x33\x2e\x02\xa4\xad\x02\x55\x7a\xcf\xec\xd8\xd3\xac\x3b\xf0\x9c\xce\xa6\xcc\x73\x15\x00\x11\x24\xaa\x1f\xbd\x6e\x93\xce\x97\x51\x13\x72\x97\x64\xcd\x67\x8a\xe7\x94\x12\xfb\xf3\xb9\x97\x03\x80\xc3\xe4\x06\x8f\x36\xb6\x35\x37\xbe\x31\x6d\x66\x37\xcb\x4e\x98\xab\x89\x2b\xed\xa6\x6f\xad\xcb\xf7\x08\x40\xbd\xe6\x8f\xfa\x44\x2f\x9d\x7a\xd9\x33\x57\xeb\xdb\xea\xd5\x22\xaa\x85\x27\xdb\x5d\x2c\x71\x5f\x8d\x03\xaf\x0b\x12\xcd\x9a\xfa\x1e\xd6\x3f\x81\x16\x3d\xa7\xfe\x8e\xfd\x56\x18\x0b\x06\xf6\x9c\x37\x10\x67\x0d\x8c\x79\x71\xdb\xd5\x72\x2e\x8a\x5f\xf1\xe2\x51\x56\xfc\x9c\x17\xb7\xdd\x4f\x57\xa2\xf8\x0d\x2f\x3e\xab\xe9\x1e\xaf\x6e\xb9\xf3\x6e\x44\xed\x4b\x5e\x1b\x66\xb5\xcd\x6b\xe7\x1d\xbf\x30\x81\x7c\x22\xa0\xd3\xf2\x41\x8a\x24\xe6\x0d\xcb\x4b\xf5\x52\xb4\xf5\x96\xb7\x45\xb2\xb6\x8c\xef\xeb\x5b\xf8\xad\x28\x78\x66\xe3\xe8\xdf\x7a\x88\x5f\x9f\x59\xeb\x5e\x59\x76\xcb\xb4\x73\x97\x42\x2b\x25\x64\xb7\xf4\xb2\x3f\x13\x8d\x1f\xf3\x5e\xd0\xac\x95\x33\x70\x65\xce\x84\x64\x10\x8e\x77\xf2\x8c\x43\x85\x84\x31\xce\x89\x34\x39\xfe\x4a\x48\x5a\x39\x79\x46\x1d\x09\x21\xb4\xe7\xf0\x11\x4c\x4b\xde\xa9\x9c\x89\x6c\x2a\x1e\xcf\x07\xd8\xab\x50\x0a\x56\xc9\xc8\xb2\xd2\x86\xe4\x23\x7e\xa7\xcf\x7d\x3d\xa9\x19\x8f\xb5\x41\x45\x60\x36\x30\x0b\xbe\xac\x99\xce\x45\x0d\xa5\x9e\xad\x35\xb4\x88\xe6\xe4\x40\x0f\x09\x0b\x99\x3f\x37\x15\x37\xc8\xbf\x25\x1e\x92\x5e\x40\x62\xe8\x25\x83\x10\x06\x09\xbf\x50\x4a\xcf\x29\x88\x7d\x90\x57\x03\x5b\xac\x7a\x4a\x27\xd7\x6a\x65\xca\x39\xd4\xb1\xc0\x43\xf4\x67\x6c\xaf\xf8\x97\xb2\xb5\x11\x6c\xf0\x06\x97\xe5\xdc\x9c\xcd\xdc\x81\x33\x38\x52\x71\xdf\xd8\x94\x93\x15\x3a\x98\xd2\x1e\x06\x38\x3d\x08\xcd\x34\x3e\xaa\x21\xb5\x77\xd5\xd6\x2d\xb4\x33\xf7\x01\x5b\x8c\x96\xab\x90\x34\xb7\xaa\xd8\x5c\xd3\x9e\x65\xd0\x6a\x50\x6a\x75\x65\xfb\x8a\xd0\x2e\x5a\xef\x3b\xa9\x07\xcc\xab\xc7\xd9\x3c\x73\xa6\xd9\x8c\x66\x8c\x2d\xd4\x8c\xf1\xd5\x69\xac\x18\xdb\x2f\x69\xbc\x72\x1c\xc4\x5e\x3f\x0f\x01\x30\x34\xa7\x96\xe1\x66\x00\x0a\xad\x2d\x63\xcb\x6d\x2c\xa5\x43\xd9\xb2\x31\xc6\xe4\x5d\x32\x82\xa7\xa5\xf8\x15\xf7\xc5\x60\x08\x92\x00\x09\x20\x9a\x4c\xea\xa4\x16\x5e\x03\xd1\x52\xed\x32\x31\x9a\xcb\x0c\x9a\x04\xe8\x7c\x02\xbe\x40\xb5\x61\xde\x92\x72\x78\x27\x01\x29\x7b\xbd\xa4\x37\xd5\x83\xac\x11\x04\xdc\x28\x79\x81\x12\x46\xc9\x0d\x0a\x79\x4b\xe5\x97\x31\x62\xf2\x55\xe1\xcd\x2b\x02\x43\xfe\x42\x38\xc5\x18\x28\xbb\x78\xd8\x6a\x79\xfc\x9f\x20\x49\xa5\xe8\x08\x47\xcc\x0e\xc0\xda\x29\x60\x0e\xf9\xf5\x5a\xc0\x52\xc1\x50\xde\xf1\x9d\x33\xb5\x8f\x32\x3a\x67\xe3\x53\x64\x37\x13\xd9\x4d\x1d\xa7\x8d\x33\x39\xe2\x16\xf2\x55\xf3\x67\xc9\x6c\x8a\x68\x05\x1f\x0a\x8a\xd7\x4e\xbf\x00\xcf\x5d\xd0\x41\xc1\x28\x81\x1a\x28\x80\x18\xbf\x5a\x6f\x4f\x21\xd1\x54\x65\xbf\x08\x74\x50\x7d\x44\xb9\x0e\x5a\x2e\xac\xc6\xed\x5b\xea\x5a\xbf\x91\xbb\x19\x1a\xb7\x9e\x67\xd0\x6c\xed\x96\x14\xf1\xb5\xed\x89\xd2\xd6\x76\x8a\x64\xab\xb6\x19\x5e\xd8\xda\xca\x75\x14\xc7\xea\x04\x98\x8d\x2d\xdc\x24\x20\x67\xe0\x29\xec\x08\x39\xc5\x9e\xbc\x25\xf9\x59\xd0\xc4\xfa\x56\x6d\xc8\x3e\x01\xaa\x6b\x7d\x08\x72\x24\xb1\x0f\xf3\x24\x72\x9e\x61\xe9\x6f\x97\xa3\x8d\x99\xda\xf8\x4b\xbe\x74\xab\x0c\xd5\x82\x0f\x12\x50\x87\x9d\xa2\xc7\x62\x86\x20\x2e\x9e\x15\xe1\xf1\x67\x81\x0a\xf9\x40\xc2\x17\xe8\x61\xa6\xe8\xa5\x92\x22\x54\x9b\x7e\x99\xd8\x34\x9e\x34\xe5\x0a\xb7\x78\x93\xdf\x45\xfc\x4e\xc0\xf2\xec\x03\xcd\x30\x15\x78\x2b\xbd\x0d\x40\x0a\x62\xd2\xfb\x85\x66\xdc\xaf\xb0\xb0\xa9\x66\xec\x84\xcd\x6c\xc8\xcb\x08\xd9\x7c\x91\x4b\x79\xb5\x62\xbe\x11\x72\x54\x4f\x84\xc7\x02\xcb\xdc\x4b\xbc\x65\xab\xa5\x62\x9b\x16\x5f\x74\x22\x26\x15\x22\x87\xb6\x99\x55\x5c\xfa\xbc\x6f\xc3\xdb\xb6\x5a\x35\x9f\x13\x66\x78\xcd\xe2\x04\x41\x90\x3e\x7f\xa0\x7f\x67\xec\xd0\xa1\xee\x5b\x3f\xfd\xa0\xef\xa1\xb2\x2f\xc2\x96\x3c\x1d\xe8\x97\xec\xe9\x90\xf6\x12\x16\x91\xed\xad\x16\xcd\xf1\x94\xcc\x07\x58\x3c\x03\x98\x1f\x85\xb4\x22\xc9\x57\xf4\x48\xe0\xce\xb0\xfc\x62\x98\x31\x2f\xef\x65\xe8\xb5\x56\x4b\xfd\xe0\x67\xf3\xd0\xf8\xdd\x2f\x2a\xe3\x8b\xe8\x26\x3d\x85\xcf\x1e\x94\x70\xba\x63\x98\x18\x00\x60\x8d\xd0\x65\x7e\xab\xa5\xc0\x4a\x1e\x0a\x42\x2e\x62\x3f\xf3\x9f\xa5\x2e\xa4\x29\xd2\x38\x05\x89\x2d\x72\x43\xa5\x20\xc3\x42\x42\xd1\x7f\xf1\x7f\xf9\x3d\xec\xf7\xa1\xb2\x37\xf1\xcd\xc5\xc7\x70\x77\x67\xee\xb1\x24\xdd\x63\x36\xe0\x40\xda\x55\x66\xdf\x70\x27\xfc\x02\x72\xd0\x27\x11\x8e\x51\x18\xa2\x66\x09\x73\x54\xea\xc3\x73\x24\x50\x59\x0e\xa1\xb9\x1d\xb8\x83\xca\x92\x83\xba\x7e\x58\xab\xc5\x16\x42\x1c\x0d\xf1\xa0\x28\x3a\x08\x0e\xbd\xd5\x92\xd3\x9c\xb3\x46\x81\x94\x01\xf3\x62\xfd\xd1\x04\xb1\x77\xfa\x5b\x6f\x2f\xee\xee\xf2\x8b\x9a\x2a\x66\xce\xce\x44\x8f\xce\xce\x02\x06\x90\x9c\x44\xa3\xed\x28\x03\xb8\xe5\x21\x11\xc6\x6e\x0b\x0a\xbb\xed\xee\xee\x81\xde\x62\xe9\x08\x7d\x6d\x50\xe6\x6b\x5f\x7a\xdb\x49\xc6\x70\x92\x2b\x62\xa1\x41\x42\x19\xa7\x0b\x75\x77\x0c\x27\xad\x17\x90\x19\x93\xde\x61\x44\x46\xc7\x91\x5b\xa4\xf4\x31\x8f\x17\x07\x03\x93\xf4\xfa\xb7\x82\x8d\x7e\xd0\x55\x56\xcb\x8c\x59\xef\x09\x15\xb6\xdd\xf4\x88\x01\x15\x1b\x9c\xf7\x37\x75\x2e\x56\x0a\x31\x93\x4e\xee\xe0\xa0\xdc\x09\x9a\x31\x33\x00\xfa\x73\xe1\x87\x83\x83\x0a\x6e\x47\x77\x60\x26\x5f\x60\x93\x82\xcc\x4c\x77\x93\x07\xf8\xee\x4e\x0b\x34\x7c\x5b\x7b\xd8\x37\xe9\x79\xba\xf3\xf1\xe1\xc8\x43\x7e\xdf\xf0\x99\x1f\x29\x17\xe1\x0c\x71\x65\x1c\x89\xf7\x3a\xa5\xa3\x3a\x17\x22\x4f\xd5\x18\x26\xf8\x1b\xe6\x9c\x23\x84\x1d\x2e\x61\x44\x30\x8e\x12\x14\x3a\x6d\x47\xf0\x6d\x9e\x9f\x2b\xc1\xd7\x82\xcb\x2b\x3b\x65\x6f\xf2\xd0\xb8\xec\x42\xfb\xee\x3d\xcc\xa8\x84\xf1\xd4\x7a\x7f\x65\x1b\x3a\xf5\x2d\xc8\xd7\x12\x98\x33\xfe\xbf\x0d\x82\xb9\xd6\xc6\xe1\x96\x11\xa5\x38\x75\xde\x32\xd6\xe4\xee\x0e\xf1\x3b\x84\x4b\x7a\x25\x69\x9e\xbf\xf0\x5b\xad\x9e\x7e\x69\xea\x0e\xd4\x4d\x97\x69\x03\xbc\x72\x7d\x7f\x87\x65\xdc\x99\x5d\xed\x65\xc3\xe0\x3d\x7c\x08\x70\xe7\x2c\x87\x33\xaf\xd0\x87\x55\x61\x97\x6c\xba\xdf\xf9\xbc\x74\xe8\x90\x7f\x9b\x78\x31\x40\xbe\xe2\xc7\x23\x2f\x36\xcc\xf6\x9c\x08\x6a\x9d\x40\xe6\x46\x2e\x91\x69\x3e\xf0\x48\xc0\xec\x47\xcb\xcf\xc3\xab\x88\x62\x15\x03\xa8\x7e\xdc\xdd\x49\x7f\x56\x40\x3a\x32\x16\x6d\xca\xc5\x91\xd4\xe6\x0e\x48\x67\x0c\x71\x18\x23\x1a\x50\xa9\x14\x1f\x79\xc4\xf7\x01\x29\x68\x97\x60\xf1\x89\x76\x53\xe8\x01\xa2\xb9\x5d\x92\xfa\xb4\x78\x31\x50\x8e\x7e\xb9\x59\xb3\x38\x54\x45\x17\x9e\x6d\xd5\xb5\xb7\x96\x17\x7a\x06\x5b\xe6\x83\x62\x7b\x92\x60\x55\xd8\x84\x94\x33\x97\xc4\x2c\x95\x3f\x2d\xbe\xa9\xb8\x6b\x9b\x1a\x57\xbc\xe7\x13\x27\x65\x34\x35\x4d\x16\x90\x5f\xfa\xa5\x82\xf4\x60\xf9\xa6\x09\xf1\xcb\x6d\xbc\xb4\x0d\xe9\xce\x50\xe7\x78\x96\x7d\x7a\xa7\xa4\x50\x03\xbd\x07\x41\x80\xb4\x07\x85\x1a\x5c\x49\x15\x5e\x3b\x32\xf5\x97\xc7\x37\xf2\xd0\x07\xf1\x9c\xd3\x9b\x66\xc2\x82\xc2\x3b\x99\x7f\xb4\x93\x71\xa4\x5e\x6f\x56\x9a\xbc\xa6\x70\x2a\x8f\xac\x95\x39\xc0\xe8\x3a\x67\x7d\x35\xdc\xd3\xd8\xdd\x1d\x0b\x82\xa0\xc8\x14\xa6\x7b\x4e\xc1\xe4\xb1\x50\x58\x31\x7f\x47\xd6\x12\xbc\xb2\x55\x8f\x6f\x3a\xb5\x49\x06\x91\xd3\x3b\x1d\x11\x4b\x37\x8b\x76\x0c\xf6\x5e\xf0\xab\x06\x72\x54\x30\xb0\x73\x5a\xc9\x7d\x2d\xd2\xd4\xd2\x05\x9a\xda\x34\x72\x03\x0c\xba\xcf\xe0\x5f\x75\xdf\x9e\x3d\x7c\x98\xea\x22\xf1\x00\x0e\x05\x7c\xdf\x23\xc2\x43\xd5\x98\x18\xed\x82\x65\x61\x6c\x16\x71\xc0\x0c\x10\x5f\x01\x00\xec\x6b\x6c\x7a\x37\x12\x10\x1d\xc6\x1e\xf1\xfb\x09\x27\x41\xa9\x53\x28\x9d\x7b\xc8\xb3\x5f\x87\xcc\xf7\x85\x94\x21\x94\x76\x4c\xb8\xbd\x66\x95\x2a\xab\x28\x46\x11\xa0\x4e\x94\x9c\x30\x32\x9d\xa2\xd0\x66\x54\xa4\x1e\xf2\x3b\x69\x6e\x03\x55\x90\xd7\x4a\x90\x3c\xb3\xef\xc6\xb0\x64\x71\x13\x95\x50\xf6\x96\xa9\x0a\x8a\x2e\x9c\x4a\x0a\x6d\xa9\x33\xca\x15\xd0\xd5\xde\xc1\x24\x89\xae\x90\x3e\xb9\xb6\x8a\xd3\x42\x11\xa6\x95\x3e\x9c\xfb\xf9\x27\x82\x1f\x5f\xc3\x29\xc0\xe6\x5f\xe6\x4e\xcc\x6e\x6c\xa9\x9f\x4d\x27\x90\xef\x32\x12\xa3\x0e\x4c\x12\x44\x99\x27\x85\x0d\x0c\xdc\x6f\xf8\x7e\xfd\xc6\x89\x12\x2e\x5b\xc8\xd0\xd8\x10\x3b\x62\x3e\x1c\xc9\xbd\x01\xe7\x7c\xc6\x9c\x4b\x22\x80\x67\x00\xe7\x04\x46\xff\x56\xb9\x88\x16\xbb\x7d\x88\xe4\xac\x75\xb2\xa8\x0c\x12\x21\x2f\xfe\x44\xa1\x10\x5c\x6d\xe6\x3a\x59\x6b\x4a\xc5\xbf\x2f\x24\x8f\xc3\x85\x7d\xdb\x73\xcf\xf7\xfb\x36\x51\x53\x8d\xd5\xaa\x3e\xd0\xf3\x20\x74\x2e\xad\x56\xee\x4f\x33\xac\x4c\xfe\x4b\x4e\x84\x93\x28\x44\x8e\x1a\xa5\x23\xde\x39\x5a\xcd\xe7\x44\xf8\x8a\x8c\xe4\x35\xea\x82\xd2\x5c\xf8\x79\x51\x19\xfb\xb7\x4c\x6e\x70\x4e\x29\x6e\x45\x53\x72\x9b\xf4\x11\x10\x7f\xf5\x31\xc8\xb6\x5c\x7f\x0f\xe4\xf6\x52\x1f\x01\x3d\x89\xfd\x07\x3d\x90\xc8\x7d\xcc\x7f\x16\xf7\x36\x7f\x56\xe8\x8a\xf4\xf1\x61\xd1\x04\x9d\x30\x38\x99\xf6\x71\x27\xfd\x7d\x77\x27\x64\x17\x4c\xae\x3d\xbf\x32\xf4\x99\xe8\xb2\x1b\x25\xa7\x74\x96\x88\x44\xd4\x9a\x88\xf7\xf2\xee\xed\x06\x89\xa2\x39\x82\x8a\x7d\x20\x69\x16\xb5\xd0\x2c\xca\x69\x16\x91\xd9\x33\xa2\x24\xe5\x99\x6d\x7d\x20\x40\x11\x95\x3c\x58\x52\x79\xf7\xd8\xc3\xb0\x51\x25\x0f\x89\xb9\x1d\xa0\xe1\x1c\x24\x66\x39\x71\x00\xf3\x25\xf8\xb9\x2d\x52\xe2\xfc\x38\x0b\x40\x4c\xf5\x7d\xeb\x75\xcf\x82\x5c\xf3\xa9\x75\x6f\x80\x86\x29\xfa\x33\xa7\x1d\xaf\xff\x30\x31\x6e\x17\x3e\x60\xa1\x4b\xab\x18\xac\x70\x98\x11\x76\x08\x47\x5e\xe3\x15\xe5\xe4\x0e\x93\x05\x73\x9b\xae\x5c\x3e\xf7\x9a\x77\x76\x32\x25\x09\x0a\xdf\x41\x36\x2e\xf3\x39\xd6\x4a\x3b\x86\x3f\x59\x10\xa0\xc3\xc1\xb0\x2f\x16\x85\x7f\xfc\xcd\xdb\x37\xc7\xd9\x37\xbb\xf2\xe1\xf3\xa3\x77\xa7\x1f\xde\xbf\x7c\xf3\xf7\xb3\x77\x3f\x1e\x9d\x18\xef\x7b\xf2\xfd\xd1\xe9\xd9\xe9\xd1\xfb\xbf\x1f\x9f\x66\x6f\xf6\xe4\x9b\xef\x3f\x7c\xff\xfd\x2b\x4b\xc5\x7d\xf9\x3a\x3b\x6c\x15\xf3\x22\xde\xcd\xc5\x59\xe3\xdb\x10\x5e\x4a\x05\x7d\xd5\x38\x77\x24\x0e\x6a\xba\x90\xcc\x15\x1a\xcc\xe8\x5c\xe1\x85\xe7\xcb\x8f\xbf\xd4\x27\x7c\xf9\x5e\xa0\xd2\xd5\xd7\xa0\x6f\xb6\xef\xe5\x3b\x69\x2b\xe1\x49\x93\x97\xa3\x62\xf3\x64\x73\xaa\x02\x96\x7b\xf9\xbd\xa9\x8a\xa9\x4a\xd9\x7d\xb1\xa8\x5e\x56\xd2\x9f\x83\x3c\xb9\x36\xe7\x04\xea\x6a\xea\x03\x4a\x6e\x7e\x27\x2b\xa0\xd0\xb2\xb5\x15\x79\x55\x1d\x52\x3b\x7b\x61\x77\x54\x39\xf5\x99\x94\xae\x96\xdb\x4f\x5f\xc9\x92\x09\x1d\x1d\xc7\x22\x35\x47\x93\x53\x29\xfa\xf6\xbd\x98\xb2\x72\xf1\x44\x33\x35\x49\xb1\xa8\xd4\xa8\xa0\x02\x25\xda\x61\xb9\x8d\xaa\x03\xe2\x1b\x66\x15\x73\xaa\x65\x53\x5c\x18\xb1\x3c\x0e\x1e\x74\xb9\x88\xc6\xfb\x28\x3b\xf5\x33\xa7\x81\x69\x17\x1f\x94\x27\x37\x29\x14\x45\xfe\x2d\xba\xbb\x33\x97\x2b\xc2\x51\xd9\x62\x3a\x9f\x57\xdc\x4d\x06\x41\x94\xbe\x05\x8a\xa9\x4e\x2f\x29\x52\x1f\x74\x05\xd8\x58\x09\x29\x71\x1b\xfa\x13\xf9\xa0\xa3\x8d\x4c\x56\x15\x51\xae\x2b\x66\x05\x53\xf4\x95\x4c\xae\xfd\x2d\x20\xc2\xa8\x63\xc9\x05\x59\xeb\x92\xb2\xc8\xd9\xa5\x91\x54\xb7\xb5\x70\xf0\xe6\x1a\xee\xe0\x86\x98\x96\xa2\x54\x67\x15\x97\xf0\x42\x60\x4b\x85\x05\x3b\xe5\x96\x05\xf8\x31\x15\x41\x7d\x1d\x07\xe9\x99\x78\x5e\x64\xf7\x7d\x0f\x0b\x2b\xa2\xaf\x24\x4b\xd4\x91\xc1\x5c\x02\x5c\xf0\x35\xd6\x71\x0b\xce\xa6\x52\xb5\xf6\x1c\xc6\xf1\x39\x1c\x7d\x4c\x71\xec\xec\xee\xce\xb3\x16\x10\xce\xb1\x6c\x2e\x4f\xc2\x80\x0a\x49\x8e\xf8\x9a\xa5\x4a\x82\xee\xb3\x24\x0b\x69\x92\x3c\x7c\xe8\x93\x41\x32\x34\x40\x90\x1e\x6c\x88\x5d\x50\x7f\x2c\xc0\x11\xa4\xa1\xc8\x64\x9d\x8b\x0b\x59\x29\x0d\x42\x36\xe7\x93\x2c\xe1\x16\xef\x4f\x7e\x7e\x27\xb7\xb3\x9c\xac\xce\x24\xfa\x14\x61\xcf\x58\x6f\x3d\x6d\xd8\x48\x0b\x40\x17\x29\x24\xf8\x26\x4d\x93\x48\xb6\x2f\x20\x5f\xfe\xad\xc3\x7d\xd6\x54\xa8\xba\x22\x57\x62\x9b\xa2\xcb\x28\x61\xf4\xa6\x3f\x81\x11\x76\x01\x0e\x50\x27\x26\xe4\xe3\x6c\xea\xb1\xb2\x3a\xdf\xd8\x35\x97\x88\x1d\x31\x46\xa3\xf3\x19\x43\x9e\x1b\x85\xae\xd2\xee\x6b\xb6\x69\xc0\x86\x8b\xad\xbe\x51\xd2\x26\x33\xc6\x65\x97\x2f\xde\x51\x3d\x24\x23\xf1\xc7\x4e\x76\x51\xd1\xe0\x01\xbb\xbb\x7b\x20\xb4\xbd\x0c\x46\x38\xf1\x18\x97\x1f\x50\x20\xb4\x3e\xc8\x7c\xbc\xa3\xef\x99\x56\xeb\x01\x6c\xee\x33\x88\x09\x9d\xc0\x38\xfa\x0d\xb5\x17\xe9\xb4\x4c\x83\xf8\x9f\x01\x8b\xff\x0c\x58\xfc\x47\x0c\x58\x6c\x01\x8e\x37\x3b\xdb\xb7\xf3\x5c\x2c\x09\x8d\x82\xc9\x94\xa9\x3a\x2c\x87\x54\x71\xa8\xa0\xbb\xd4\x07\xb7\x18\x4e\x50\x1f\x29\x05\x3a\x9b\x37\x00\xba\xfc\x9a\xc0\xcf\x74\x41\xac\x09\x78\x4a\x09\x5e\x09\xf1\xb4\x66\x60\x59\x94\x05\xce\xca\x05\x66\x3d\x8a\x63\x91\xb1\x63\xd1\x0c\x26\xd1\x79\xbc\xb5\xdc\xec\xb6\x1b\x03\x09\x6d\xd1\x33\x1c\x60\xe1\x8a\x74\x22\xbf\xff\xcc\x57\xd6\x24\x2c\x02\xd9\x9e\xde\x4c\x51\xab\x85\x2b\x82\xda\xf2\x2b\x21\xbd\x1a\x6b\x47\x88\xc2\x88\x11\xba\x1b\x47\x8d\xc9\xbd\x25\xac\xa2\x10\xa7\x84\x63\x4e\x27\x4a\x74\x56\x88\xf4\xfb\x1e\x12\x1e\x1d\x26\xd0\xa1\x88\x54\x78\x50\xc4\x33\x15\xd0\x52\x9c\x2a\x28\xfa\x94\x35\x2c\x3f\x78\x41\xc9\xc4\xf2\x05\x0d\x60\xd2\x96\x0f\x81\x5d\x28\xc6\xb2\x44\x46\x1f\x01\xd3\xac\x58\x09\x50\x93\xc7\x2d\x20\x5f\xe5\x00\x79\x02\xda\x3d\x7f\xc7\x95\xc5\xdd\x40\x58\x51\x72\x38\x2c\x71\x6f\xe5\x9e\x08\xbb\x94\xb8\x18\xdd\xd7\x70\x2a\xea\xdc\xdd\xb9\x27\x48\x56\xb7\x0e\x4c\x14\x3e\xd2\x1b\x5a\x55\xd9\xfd\xbf\xde\x61\xff\x43\x74\xf7\xd2\xc7\xcc\x3b\xec\x3f\xb9\xeb\x3d\xbe\xdb\xdf\xf3\xbd\xc3\xfe\xf3\x18\x4e\xa6\x28\xf4\x0f\x45\x23\xff\x67\xb7\xc3\x50\xc2\x3c\xea\xe7\x47\x5a\x98\x2d\xce\xfe\x5a\x50\x36\x2f\xb1\x88\x5b\xe4\x40\xc6\xd0\x64\xca\x44\x6a\xc9\x29\x45\x30\x74\x30\xc1\x6d\xb1\x36\xe7\x71\x06\x10\xeb\xfc\x07\xbf\xc4\x0e\xa1\x21\xa2\xbc\xe8\x39\x72\x74\x11\x20\x2a\x08\x14\xb6\x52\xa3\x27\x12\xb1\x33\x86\x57\xc8\x81\xce\xa0\xb0\xdc\x43\xcf\x77\x26\x88\x8d\x49\xd8\x71\xfd\xb9\x57\x86\xa6\x19\xc6\xae\xef\x90\xb6\x45\x71\x59\x3c\x48\xff\x2a\xc4\xf3\xe6\x43\x93\x3b\x93\xf9\xcf\xf0\x5f\x99\xb8\xb6\xa9\x0e\x58\x98\x19\x56\x36\x76\x96\x25\x80\xcc\x84\xb2\x08\x26\x56\x29\x02\x3a\x8c\x46\x13\xcf\x4f\x03\x65\x21\xed\x37\xfc\x2a\xc2\x4c\xba\x93\x00\x1d\xe7\x4a\x20\xca\x73\xd1\x31\xe8\xc6\xa9\x2e\xef\x9a\xd2\xbb\x24\xdf\xdf\x9c\xc2\x4b\x41\x53\x84\x08\xa5\x8b\xf8\xb6\x98\x64\xcd\x48\xf0\x73\x12\xa2\xd7\x11\xdf\x54\x19\x2d\x96\x82\x00\xa2\x3f\xa2\x78\x8a\xa8\xe7\x4a\x0a\xe4\xd2\xd9\xf9\x8d\x0b\xca\xf1\x3b\x06\x43\x4e\xc5\xd2\xc7\x22\xd2\x81\x76\xac\x62\x1e\xf2\x5c\xc9\x6d\xb8\xbe\x0f\xe2\x40\xc6\x4d\xb5\xa1\x57\xdb\xc2\x84\xdc\x49\xe8\x28\x8b\x5b\xb6\x3b\x22\x21\x9a\x88\xee\xed\x4e\x48\x88\x76\x5d\x1d\xb9\x1e\x02\x77\xd7\xf5\x8d\xbf\x3a\xff\x4d\x5c\xa9\x8c\xc0\x1d\x38\xe3\x24\x17\x86\xaf\x45\x82\x1b\x00\x7d\x10\x1f\x12\xcf\xef\x7b\xa5\x0e\x61\x2e\x58\xf2\xe9\x06\x6e\x4c\x60\x98\x1f\x1e\xf1\xa4\x3b\x79\x16\xd7\x4c\xad\xb7\x0e\x12\x46\xeb\x03\xa1\xf2\x4d\xb3\x7b\x3e\x8b\xe2\xb0\x98\x27\x4e\x45\x99\x90\xc9\x61\x11\xb3\xa8\x41\x44\x5d\xb3\x40\xa1\x4a\x5b\xc5\x2d\x8b\x08\xb6\x69\x51\xb8\x18\xca\x9b\x10\xc9\x80\xdb\x3a\x3c\xa8\x3d\x76\xc5\x17\xc1\x63\x90\xd5\xe3\xf2\xa5\x9e\xa9\x55\x98\xb3\x55\xfb\xe4\x5a\x3d\x10\x1b\x87\x20\x55\xb1\x67\x85\x25\x2b\x09\x6e\x65\x40\x4e\x11\xba\x8e\xb3\x8a\x18\x5c\x22\x26\xd2\x9f\x56\xc0\x34\x78\x29\xa1\x7c\x7c\xc1\x2b\x5a\x24\x2b\xd2\x6a\x3d\xc8\xdf\xec\x4c\x11\x5a\x61\xfe\xd6\x8a\x8e\xd4\x82\xe7\xf2\x1e\xb8\x80\x49\xbc\x85\x50\x81\xe6\x9b\xce\x7f\x9f\x97\x16\xba\x19\x1b\x64\x0c\x0e\x04\xc9\xe4\xfd\xf7\xfc\x61\x80\x54\x93\x12\xc3\x51\x54\x5e\x69\x90\x2c\x4c\xf9\x69\x40\x02\xe6\xe1\xbb\x3b\x28\x6f\x5d\x90\x04\x44\xa6\x86\x23\x83\xde\x10\x44\x01\xe5\x57\x6b\xf2\x40\xe1\x73\xd2\x0f\xc9\xa8\xa9\x12\x2c\x92\x78\x49\x16\x6e\x88\x3f\x12\xa1\x1d\x12\xbf\x63\xf4\x41\xdc\xd1\x41\x34\x48\x86\x73\x19\x36\x54\x37\xc7\xc7\xed\xf9\x60\x64\x83\x16\xcc\x3a\x8c\xfc\xe3\xe4\xed\x9b\x43\xfd\xc3\xf3\xfb\x99\x23\xd1\x4c\x4d\xa3\x9f\xbe\x14\xe0\x05\x53\xbc\x1e\xf9\x9d\x08\x8f\xe2\x59\x88\x12\x2f\x56\x20\x86\x30\x30\x72\x82\xa4\x44\x2c\x06\xae\xa3\xcf\xa6\x13\x12\x24\xa0\x7f\xe8\x53\x94\x70\xda\xb4\x23\x2f\xfe\x30\x45\x57\x81\x50\x8c\xe2\x22\x30\x7b\x13\xfb\x3b\xf9\x3d\x70\xe1\xdf\xdd\xa5\xfb\x33\x12\xbe\x4d\xe5\x40\xe1\x83\x78\x28\x74\x81\xad\x96\x72\xc0\x0a\x64\xd9\x8e\x62\xaa\x0c\x7e\xf5\x50\x5d\xe8\x17\xad\x96\x77\x11\x0c\x86\x3e\xb8\x18\xc0\x8e\x4a\xd7\x7c\xe8\x72\x41\x5d\xb1\x59\x3a\x7c\xb5\xfa\x73\xe8\x29\x98\xb1\xb9\x11\x67\x20\x06\x17\xbe\xdf\x4f\xe1\x79\x69\x53\x77\x77\xae\x40\x5b\x06\xaa\x56\xbe\x17\xad\x96\x08\x7e\x5e\xf5\xfa\x30\xff\x05\xfd\xe1\x7e\xf1\xb1\xfa\x56\x3e\x36\xb6\x8e\x00\xe9\x09\xed\x62\x62\x33\xc9\xda\x3c\x39\x72\x5b\xa9\x43\x89\xd4\x88\xa6\x9a\xb0\xa4\xd5\x5a\x58\xc4\xd3\x47\x71\x14\x23\x58\x76\x87\x5a\x95\x6e\xdd\xce\xab\x1d\x50\xd0\xa1\xf2\x02\x42\x90\x22\x1a\x20\xe9\x1b\xa9\xa8\x8c\x67\xbe\xe3\xec\x7c\xd6\xfb\x39\x48\x66\xe7\x13\x9b\x4f\xdc\xea\x9d\xb4\x63\x96\x51\xee\x54\xcb\xaf\x32\xde\xd5\x9d\xfc\x03\x2f\x3f\xbd\xbe\xa0\x95\x3f\xcb\xb5\x24\x34\xb1\x51\x2d\x92\x12\x2a\xbd\xe6\x15\x50\xb7\xb4\xd5\x9a\x89\x4c\xf7\x0d\x67\x11\xb3\x3d\xa4\x3e\x00\xc3\x50\x9c\xf6\x85\x1f\xb0\x36\xad\x6b\xf3\xa6\xf5\x6f\xab\x2f\x18\x27\x7a\xb6\x91\x6a\x5b\x35\xff\x58\x1f\x0a\x73\xf5\x18\x5a\xe7\x24\x5b\x2a\x5e\x2a\x85\x90\xea\x89\x0e\xf4\x0f\xc9\x71\x26\x3e\x48\x3a\xe2\x90\x04\xea\xdf\xec\xb9\xf2\xfa\x32\x4d\x0b\x9c\xb9\x50\x28\xe5\x2e\x60\x9d\xe7\x9a\x7b\xf1\x65\x1c\x07\x23\x02\x03\xf4\x01\x04\xb7\x29\x7b\xd3\x4f\x23\x54\xcc\xeb\x41\x80\x45\x3e\xa9\x8e\xcb\x2a\x59\x8c\xf2\xca\x44\xd5\x51\xfc\x7b\xf5\x1d\xa2\x5b\xf5\x1d\x82\x5f\x85\xef\x10\xc9\xf9\x7d\x90\x8d\xfa\x7d\x24\x7f\xfa\x7d\xd4\xfa\x7d\x44\x45\xbf\x8f\x68\x9b\x7e\x1f\xb1\xc5\xef\x23\xe7\xf5\xf3\x80\xe5\xfc\x3e\xb0\xe0\x9e\xeb\x43\xa5\x7e\x6e\x77\x0f\x0f\xf9\x7d\x56\x70\x2c\x52\x5b\x37\xfa\x3a\x9c\x3e\x0c\xcd\xc8\x2c\x67\xb0\xf4\x4a\xfa\xc0\xdf\x8f\xb3\x19\x51\x71\x87\xbc\x59\xea\x79\x01\x30\x88\x41\x14\x24\xde\xcc\xf0\xbf\x98\x15\x81\x31\x60\xe6\x83\xa8\xc2\xab\x40\x5f\x26\xc1\x0c\x78\x58\xa7\x33\x32\xb8\xef\x22\x74\x3f\xd3\x5a\x3f\xf3\x70\x90\xee\xd9\x4c\x76\x90\x32\x61\x2a\x8b\xb8\x67\xea\xa2\x74\x81\xdb\xc9\x34\x2b\xc8\xe7\x12\x40\xa9\x1a\x97\x81\x3a\xae\x51\xc8\x3f\xc4\x1d\x46\xa4\x08\xe2\xf7\x07\xc3\xbe\x66\x73\x32\xa5\x6c\xd7\xf7\x65\x66\x1d\x25\x81\x0a\xbe\xdc\x35\x1a\x11\x87\x35\x97\x09\x67\xe1\xd8\x00\x0d\xd6\x1d\x5d\x5a\xb9\xd9\x30\x07\xc3\xbe\x39\x52\xfb\x30\xb5\x02\x8b\xf9\xcf\x84\x5a\x8b\xb6\x5a\x58\x67\xde\xa1\xa0\x57\x37\xfe\xa1\xdf\x6a\x41\xcf\xdc\x86\xd8\x07\xb1\x78\x06\x62\x1f\xcc\xe6\x1e\xeb\x88\x6e\x66\xcc\x94\x81\x4f\x98\xd5\xf1\x4a\x97\x88\xb5\x11\xbe\x8a\x28\xc1\x93\xe5\x6c\xc8\xcb\x99\x15\x50\x85\xc6\xdf\x76\x0f\x4a\x2e\xe6\xee\xee\x81\x57\x6b\x57\xd0\xa6\x02\xc9\x5a\x0c\x86\x80\x72\xae\x00\x06\x0f\x7a\x80\x68\x22\xc3\x6f\xb9\x14\x79\x02\xe2\x00\x59\x74\xd7\xcf\x1e\x78\x34\xf0\x92\x20\x56\x11\x00\x7d\x19\x4c\xb0\xd5\xf2\xa4\xcd\xd9\x4b\xb4\xcc\xca\xaf\x07\xed\xaf\x20\x08\xd0\x33\xfe\x49\xff\x99\xba\xf6\x22\xff\x16\xf2\x2e\x90\x20\x9a\x5f\x44\x18\xc6\xf1\x8d\xcc\x81\x77\x77\xa7\x72\x99\x76\x64\x97\xef\xee\xf4\x2f\xcf\x4f\x4b\x46\x17\x1e\x54\x14\x8d\xcc\x33\xe3\xb6\x98\xa9\x3f\x4d\x25\x4b\x98\x4a\xf2\xf3\xd5\xdc\x58\x12\x22\x39\x98\x19\x45\x7f\x5a\x4c\x9a\xe8\x75\x6d\x16\x86\xa6\x82\xfe\xea\x5a\x54\xe5\x47\xb8\x72\xfe\x61\x6d\x20\x31\xf1\x6e\x99\x0e\xb3\x33\x22\xe4\x63\x84\x74\x06\xe0\x67\xae\x5f\x13\x83\xc8\xe5\x4c\x22\x9a\xfb\xd5\xb9\xec\x90\xb6\x1c\xa9\xf6\x02\x57\x1a\x8b\x12\x0b\x52\x8b\x76\x62\x32\x82\xb1\x0a\xb9\xc8\x2f\x90\x97\x0c\x4d\xcc\x84\xfd\x62\x4f\x04\x4c\x5d\x4f\x7d\x56\x8c\x46\x67\xf0\xf4\x54\x5b\xa8\xc4\xc6\xbd\x44\xec\x18\x33\x1a\xa1\xe4\xfb\x1b\x7e\x08\x3c\x97\x22\xe9\x75\x29\xc6\x97\x33\xbe\xa4\xa4\x5d\x9b\x44\xf8\x27\x3b\x92\x55\x65\x84\x4a\x4b\xb6\x40\x31\x49\x75\xb4\xef\xdf\xdd\xdd\xce\x15\x09\x4c\x2b\xdf\xce\xe7\x73\x10\x05\xd0\x6a\xa9\xca\xac\x2d\x60\x16\x44\x83\x48\x2d\x60\xbb\x37\xec\x24\x74\x04\x46\x46\x6e\x84\x2c\x7e\x8a\x8e\xe7\xa5\x82\x20\xab\x30\xc9\xdf\x1f\x9d\x1c\x9f\x7d\x78\x79\xf6\xe1\xfd\xab\x34\x92\xe7\x4c\xcf\xf6\xae\x9b\x5e\xc0\xa0\xbd\xe7\x77\xfe\x4b\x22\x2c\x9e\xee\x98\x4d\xfc\x78\x7a\xfa\xee\xec\xdd\xfb\xb7\xa7\x6f\x9f\xbf\xcd\x1a\xc9\x38\xfa\x56\xcb\x43\x41\xec\xcd\x7c\x1d\x1b\xf6\x47\x81\x6f\x67\x64\x24\x52\x57\x8d\x19\x9b\xee\xf6\x3a\x3d\xb7\xdc\xe8\xeb\xa3\x7f\x9d\x3d\x7f\xfb\xe6\xcd\xf1\xf3\xd3\x97\x6f\xdf\x9c\xb8\x7d\x1d\x1e\x39\xc0\x9e\xfd\xeb\x02\x61\x94\xa5\xeb\xa1\x99\xd9\x6b\xbc\xe7\xfa\x7d\xeb\x8b\x5f\x2b\x5e\x24\xd3\xf0\xc6\xf5\xd5\x78\xd2\x48\xff\x6a\x78\x07\x7c\x7d\xc2\xd2\x2e\x4c\xa7\x19\x77\x0c\xae\x40\x4d\x79\x88\xae\x50\x4c\xa6\x82\x4f\x90\xf1\x53\x13\x06\x2f\xf9\xbd\x23\xff\x1a\x91\x2b\x24\x7c\x7a\xe5\x9f\x9c\x3e\xbb\x7d\x13\x3a\xe3\xd1\x80\x78\x7e\x87\xa2\x70\x36\xca\x47\xa1\x49\x43\x66\x30\x0f\x83\x3d\x1f\xc0\x80\x0e\xba\x43\x40\x02\x3a\xe8\x0d\x8b\x39\x7f\xd5\xcc\x1d\x3d\x7f\x75\x72\x76\xfc\xe6\xe8\xfb\x57\xc7\x6e\x1f\x75\xca\x4f\x5f\x04\x0f\x1e\x88\x6c\xe3\x22\x2b\x90\x27\xaf\x3a\x8f\xf8\x79\x3d\x71\x2e\xb2\xae\x6a\xe4\xcd\xc9\xbb\xa3\xe7\xc7\x96\xd6\xf3\x2f\x56\xff\xc0\xc9\xc9\xdb\x72\xe3\xd9\xc3\xe5\x1a\xd6\x4b\x8b\x06\x70\x18\x90\x0c\xb6\xe5\x03\x2e\x97\x0f\xd0\x50\x5f\x91\x74\x80\x86\x29\x67\xc1\x7f\x17\x25\x73\xe9\x9d\x6a\x3f\x69\x1f\x5e\x9e\xbd\x78\x79\xc2\x7b\x97\x06\x26\x57\x0b\x5d\x2e\x70\xf4\xe6\xf9\x8f\x6f\xdf\x9f\x9d\x1c\xbf\x92\x5b\x5f\x9f\x2a\xdb\xa8\x12\x8f\xdf\xd7\xdd\xe2\xd8\xee\xee\x42\x1d\xf7\xbb\x26\x24\xba\xde\xce\xb2\x91\x52\x8d\x1c\x75\xa8\x39\xf3\x8b\x4f\xae\xfa\x4e\x28\xbe\x33\x92\x99\xf6\x0a\x47\x2a\x94\xf8\xa4\x45\xdc\xb6\xc5\x04\xbb\x75\x28\x70\x74\xe1\x29\x53\x7a\x4a\x1d\x06\x6e\xc6\x9b\x77\x26\x82\x78\xef\x7a\x9d\xbf\xf8\xff\x19\x88\xff\x0f\x77\x35\xe9\xec\xe9\xfb\x67\xe0\xba\x00\x0d\x6b\xc7\x37\x16\xe8\x80\x44\xe4\x6f\x68\x47\x17\x6d\xce\x64\xfe\xd1\xe3\x34\x6d\x68\x09\x8b\xe2\x16\x2e\x3f\xa2\x6b\x66\x44\xba\xcd\xa2\x76\x7a\x9c\xfc\xfa\x7c\xc7\x1c\xf2\x5f\x7d\x2c\x1e\x00\xb8\x68\x83\x8b\xcb\x10\x8e\xe2\xdd\x28\x91\x68\x84\x76\x82\xe8\x15\xa2\x6d\x15\x5a\xec\x4b\x86\x34\xba\x74\x3a\x72\x44\x3f\x9d\x09\xfc\x18\xe1\x4b\xa1\x7d\xeb\x3b\x74\x3a\xea\x3b\x23\x88\xbf\x61\x0e\x67\x95\x14\xe3\xee\x1c\x3d\x7f\xe5\xda\xd0\x8f\x9a\xd2\x49\xcd\x91\x4c\xd7\x97\xfd\x1a\x74\x87\xb9\x3f\x3a\x21\x62\x30\x8a\xfd\x56\x4b\x1c\xd0\xf2\x9b\xf4\xc4\xa2\x05\xe0\x47\x31\xf5\xf2\xe1\x66\xe7\xf9\xc7\xe3\xa3\x17\xc7\xef\x4f\xce\x4e\xfe\xfd\xfa\xfb\xb7\xaf\x82\xec\xc1\x8b\x97\x7f\x3f\x3e\x39\x35\x1e\x9c\xbe\xfd\xe9\xf8\x8d\xf1\xf7\xcb\x37\x2f\x8e\xff\x65\x56\x38\x3a\x3d\x7a\x7e\xfc\xe6\xf4\xf8\xbd\xf1\xf0\xcd\xd1\xeb\x63\x71\xab\x6a\x99\xdd\xf6\xca\xfd\x57\xfb\xb9\x1c\x2f\xe7\x1f\x93\x29\x1c\x21\x77\xc7\xda\x70\x56\xf2\x05\x64\x70\x84\x30\x43\xd4\x2c\x2a\xfb\x94\x95\x12\xe9\x9a\xcd\x02\x72\x10\x59\x81\x53\xf2\x11\xe1\xdc\xc7\xe4\xb0\xb3\x12\xcf\x65\x34\xc4\x1f\x61\x32\x36\xcb\xa9\xf9\x72\xcf\xce\xe4\xaa\x9c\xcd\xa2\x33\xbe\x48\x67\x63\x04\x43\x44\x93\xb3\x33\x77\xf1\x7a\xca\x14\x3f\xaa\xc6\x12\xda\x99\x2f\x5d\x80\xb4\x68\x8f\xd2\xdb\xa8\x86\x3f\x04\x30\xc0\x9a\xbb\xef\xbb\x7e\xc1\x67\xa9\x5e\xff\x44\x03\xb8\x75\x54\x2b\xcd\xab\x6a\xb0\xf6\x5c\xac\xd5\xd1\x30\x51\x72\x25\x1d\x8d\x92\xd4\x96\xd7\xd4\x00\x9b\x9a\xe6\x30\x37\x9a\xfe\x06\x94\x33\x87\x72\x6c\x0a\xdb\x31\x2f\x4c\xd0\x57\xa1\x9b\x31\x80\x48\x45\x8e\xc8\x89\x8d\x1b\xc6\x43\x83\x44\x49\xfb\xc3\x20\x56\xb2\x66\xdf\xd5\xd8\x51\x11\x80\x93\x33\xe4\x4d\xa8\xb8\x3c\xf5\x02\xff\xde\x9e\x42\x0a\x27\x4d\x8f\xfe\xef\x96\x8b\xfa\xba\x14\x64\x65\x7e\xcd\xa1\x32\xb7\x40\xde\x03\x0a\x49\xa5\x8c\x07\x2d\x42\x31\x04\x89\xce\x7c\x6e\x35\x3d\xff\xa9\x78\xff\x53\xf1\xfe\xa7\xe2\x7d\x5d\xc5\xbb\x97\x80\x3d\x91\x6e\x8f\x93\xf8\x59\x10\x0f\x7a\xc3\x1d\xd3\x9e\x3f\xd3\xa3\x84\x62\x29\x47\x01\xf2\xa2\x94\xfc\xa7\x42\x05\x69\xb5\xbc\x51\x90\xd9\xed\x08\xe0\xf2\xb5\xfe\x6b\x04\xdc\xa1\xab\xa2\x37\xf3\x26\x0f\x61\xfa\xc6\xef\x6b\xb8\x41\x10\x04\xcc\x9b\xf9\xd9\x3b\xea\xcd\xc0\xc8\xf7\xfb\xe9\x83\xac\xf9\x11\x70\x03\xc3\x60\xe9\xcd\x44\x82\x33\x30\x18\x6a\x15\x67\xcb\x5d\xe2\x9a\x99\xd1\x3a\x81\xe1\x0f\x71\xbb\x6c\x28\xc1\x82\x55\x24\xcf\xc2\x9d\x15\xe5\x52\x40\x8c\x4b\x09\x7e\xd7\x3b\x84\xed\x5e\xbf\xcb\x19\x8e\xde\xb3\xe4\xaf\x50\xfb\xc6\xb7\x7b\x43\x43\x6a\x4d\x86\x2a\x93\x74\x2f\xbd\xb2\x0a\xd6\x07\x01\xdf\x17\x38\x5a\xe5\x89\xcb\x19\x90\x13\x06\xa9\x08\x21\x2e\x6d\xcf\x99\x1e\xe8\xd0\x55\xc1\x2e\xe3\x56\xcb\x8b\x83\xbd\x72\x89\xff\xe0\xff\x60\x91\x9e\x21\x0e\x1e\xd9\xde\xf2\x77\x8f\x1e\xe8\x06\xf6\x25\xcd\x4b\x82\xec\x70\x0c\xe0\xf0\x90\xff\xaf\xef\xba\x5a\x95\x1b\x2b\x25\x77\xaf\x5f\xc8\x52\x5f\x22\xa8\x49\x3f\x09\x90\x97\x98\x4a\x54\x27\x7f\xd7\x25\x7e\x3f\x09\x92\xc2\x24\x64\x56\x8c\xcc\x98\xee\x09\xbf\x56\xe0\xba\x86\x25\x60\x9e\xcb\xfa\xb1\x42\x67\x72\xe7\x57\x74\x05\x7b\x49\xae\xd9\x47\x46\x56\x42\x29\xb9\xc8\x19\x1d\x74\xb5\x32\x36\xeb\x23\x4d\x4f\x75\x22\x92\xdd\xc8\x7e\xa6\x4c\x64\x83\x43\xbd\x48\xd1\xf2\x87\x38\xcf\x39\x6e\x71\x85\xa8\xbe\xf7\x8a\xee\xc2\x39\x78\xa6\xb6\x0e\x5a\x66\xec\x35\x9c\x1e\xf2\x9e\xbc\x86\x53\x25\x60\xe9\xbc\x11\xb4\x28\x16\xab\xab\x07\xdd\xdd\x79\x38\x40\xa0\xcd\x0f\xfc\x0f\xaa\x48\x81\x19\xc1\xbe\xa1\x24\xc6\x90\x45\x57\xc8\x19\x91\x10\xf1\x2b\x2c\xf3\x79\x16\xbc\xdf\x8e\x1d\xa2\x85\x36\x08\xcc\x32\xcd\x47\x92\xff\x62\xc2\xd1\x03\x19\x79\xa5\x55\xb0\x40\xa6\xd2\xa5\xd0\x1c\xbe\x35\x33\xed\x9a\x30\x69\x10\x97\x71\x86\x7e\x96\x88\x74\xf5\xd8\x97\xa6\x9f\x7b\x6f\x11\x2e\x2c\xf1\x28\xd0\x80\xba\x3c\x68\xd6\x88\x48\x0f\x03\xe2\xf9\x87\x25\x04\x64\x45\xc8\xf9\x01\x9f\xc5\xe1\x0e\x35\xa3\x25\x50\xcd\x88\x42\x7e\xdf\x78\xe9\xba\x9f\x47\x38\x4c\x11\xe4\x46\xbc\x4a\xdc\x6a\x25\x1e\x04\x66\xd8\x13\x00\xe7\x3a\xb4\xad\x70\x57\x32\x40\x68\x06\x8e\xf6\x0f\x86\x6c\x35\x51\xbe\x06\x82\x38\xd9\x28\x82\xd8\x08\xcd\x57\x15\x93\xfe\x0b\x06\x78\x46\x7f\x18\x80\x67\xa2\x01\x9e\x51\x06\xf0\xa4\x00\x06\x1e\x0b\x22\x20\xec\xde\xa0\x84\x9f\x81\x41\xec\xe5\xd2\x38\x90\xc0\x42\x97\x76\x90\x05\xff\x0c\x0d\x5a\x46\x14\xfe\x19\x05\xb0\x1e\xff\x8c\x75\x6c\xa8\xb9\x81\x38\x8d\x0c\xe8\x64\x39\xa4\xcf\xe6\xbd\x03\x64\x1f\x22\x1f\x78\x38\x80\x66\xd8\x61\xdf\xef\x24\x0c\xb2\x59\xf2\x9c\x84\x28\x40\x00\x6b\x7a\x1c\xcd\x3d\xea\x89\x2f\xf8\x26\xae\x31\x5a\xc8\x0b\x2d\x56\x9b\xaf\xb0\xcb\x9f\xbf\x7d\x73\x7a\xfc\xe6\xf4\xec\xf4\xdf\xef\x8e\x03\xd4\x79\x7e\xf4\xfc\xc7\xe3\x33\xfe\xf0\xfd\xdb\x57\x99\x09\x23\xff\xd8\x7d\x0e\x47\x63\x24\x0c\x05\x94\xc4\xee\x4e\xa1\x15\x57\x59\x10\xda\x7c\x2a\x17\x1b\x05\xa4\x00\xbb\xd9\x51\xbd\x7b\x2b\x2c\x39\x2f\x8e\x5f\x1d\x9f\xf2\x61\xbd\xfb\x70\x9a\x0d\x86\xff\xe1\xbe\xfb\x70\xca\x3b\xae\x4a\xb8\xf2\x5f\xfe\x44\x54\x75\xf9\xff\x17\x77\x9d\xa2\x5f\x67\x28\x61\x4b\x86\x7b\x13\x11\xe2\xfe\xf4\xd4\xf9\x1d\x47\x6e\x82\x66\xe4\x26\x16\xf4\x9e\xb1\x72\xe4\x26\xa6\xfd\x85\x70\x29\x72\x13\x33\x4d\xb9\x4c\x58\xb2\xd9\xff\xec\x1d\x52\x1d\x25\x09\xd7\x44\x6e\x52\x19\x80\x3e\x47\xe4\x26\xec\xfb\x7d\xa3\x4f\x1b\x8f\xdc\x84\xab\x23\x37\x91\xcf\x1b\xb9\xa9\xc8\x1a\x7d\xe1\x2e\x60\x7f\xa6\xfe\xb9\x3f\x17\xb0\x51\xd1\x05\x6c\x74\x1f\xa9\x7f\xbe\x62\x17\xb0\x91\x71\xfd\x8d\xbe\x3a\x09\x21\xfc\xc3\x48\x08\xb1\xd5\x05\x8c\x02\x12\x44\x05\x17\x30\x53\xa2\xff\x7c\x2c\xf9\xcc\x07\x1e\x0d\x48\xc6\x92\xfb\x7e\xe7\x6c\x46\xe3\x80\x01\xda\x39\x93\x4c\x67\xc0\xc9\xa7\x06\xb0\x04\xd8\xfc\x03\x7a\xd0\xbb\x9d\x03\xec\x83\xdb\x39\xb8\xd5\x39\x6b\x25\x04\xb0\xef\xf2\x43\x19\xc9\x34\x03\xbb\xff\x4d\x08\x76\xe7\x3a\xdd\xae\x50\x27\xeb\x56\x3a\xe7\x24\xbc\x91\xfa\x27\x41\xd0\xf5\xf3\x41\xbe\xbd\x61\xe0\x32\xf4\x49\xc7\x01\x4e\x18\x45\x70\xe2\xfa\x80\xda\x3d\xe2\x52\x31\xa0\x3e\x05\x8e\x2a\x56\x9f\xfd\x06\xe9\xa4\xaa\x9f\xc6\x54\x45\x0e\xb0\x67\x63\x12\xb5\xe7\xa6\xf3\x5a\x32\x25\x38\xac\x6c\xb0\x61\x4a\x27\xdd\x9c\x52\xf3\x96\x1b\x13\x14\xc8\x10\xa4\x0c\xe8\x9b\x74\x30\x33\xde\x78\x66\xc1\xe2\x6b\xbf\x66\x70\xc5\xcc\xea\xcd\xf2\x1b\x59\x9b\x92\x35\xcc\x26\x08\xc6\x48\xee\xcc\x05\x0b\xf6\x69\x4c\xd3\x5a\xf0\x9c\x50\x5b\x92\xa3\xb5\x10\x81\x5d\x71\x8f\x96\x77\x9a\x4e\x12\xa5\x76\x8c\xe7\x17\xb7\xa7\x1a\xb0\x29\xce\xaa\x44\x28\x3a\x5f\x98\x1a\xa2\x0c\x15\xc3\xcc\x74\x53\x1a\x7d\x5d\x4e\x5a\xde\xed\x2b\x9b\x09\xeb\x88\xe1\x0a\x7b\x80\x70\x0e\x4c\x8a\xce\x81\x54\x3c\x03\x54\x39\x07\xea\x90\x0a\x86\xf4\x1c\x2e\x94\xd5\x64\xef\x37\x2b\x66\xbe\x7c\x73\x7a\xfc\xfe\xcd\xd1\xab\xb3\x93\xe3\xf7\x3f\x1f\xbf\x3f\x3b\x7e\xff\xfe\xed\xfb\x00\x75\x7e\x78\xfb\xfe\xfb\x97\x2f\x5e\x08\xf4\xe0\x87\x37\x47\x1f\x4e\x7f\x7c\xfb\xfe\xe5\x2f\xc7\x2f\x02\xd4\x79\xfb\x53\x26\x88\xbe\xfd\x29\xd8\xeb\xf2\x1f\xb9\x32\x8f\xba\xbd\x1d\xb3\x89\x47\xdd\xfd\x9d\xaa\x4f\x1d\x74\xbb\x0b\x07\xfe\x69\xdc\xd4\x80\xb2\x5d\x24\x4a\x11\xf3\xf2\x3b\x95\xfd\xe8\x32\xb2\x1f\x6d\x2a\xfb\xe9\x60\xec\x1e\xad\x91\xfd\xa4\xae\x9d\x7e\x0e\xd9\x8f\xfa\x7e\xdf\xe8\xd3\xc6\x65\x3f\x5a\x2d\xfb\x95\x92\xe3\x7e\x0d\x51\x7b\x2d\xc6\xf4\x2c\x3f\x18\xba\xf6\xf0\xdd\xdd\xbf\x5e\xbf\xfa\x91\xb1\xe9\x7b\xa9\x53\xf2\x77\x48\x87\x60\x41\x34\x39\xe5\x42\xd2\xb9\xbb\x20\x73\x3d\xaa\xca\xea\x28\x22\xa4\x29\xbf\xed\xa3\x38\x7e\x2f\x6e\xeb\x04\xfd\xa8\x29\x7c\x66\xba\x75\x7d\x49\xb3\x33\x02\xff\x1d\x27\x4a\x2a\xb4\x93\x7c\xf2\xd7\x47\xdd\x6e\x1a\x68\x8e\x93\xfb\x2b\x44\x99\x60\x63\xf8\x65\xe2\x08\x06\x68\xe8\xa9\x8e\xc8\x2f\xf9\x3b\xb0\x93\xcc\x46\x23\x94\x70\xc2\x8d\x81\xd1\x9a\xf9\xfb\x14\x7d\x62\x4a\xd6\x81\x2a\xf1\x13\x03\xb9\x86\x78\x89\xba\xda\xf2\x6f\x99\xb6\x7b\x07\x8a\xd4\x1f\x31\x62\xc8\x1c\x10\xbf\x8c\x55\x26\x45\xd8\x91\x8c\x1f\x80\x9d\x19\x8d\xf9\x49\x02\x46\x9c\x2e\x75\x01\xb6\x5a\x5e\xfa\x3b\xb8\x9d\x6b\x04\x00\xf5\x28\xe7\x08\xd3\x57\x8a\x33\xfc\x57\x5b\xad\x18\x0a\xdb\xff\x8c\xd8\xd8\xed\xbb\xf9\x95\x74\xe7\xa9\xb0\x53\xc0\xc9\x25\xb6\x63\x83\x52\x59\x12\xc0\xc0\xa3\xc1\x1e\x68\x0e\x8d\xc3\xc1\x22\x70\xdc\x72\xa8\xe0\xdb\xdf\x37\x26\x6e\x2e\x68\xf8\x9f\x10\xe7\x5a\x88\x73\x61\x8a\xbe\x0a\x1c\x9c\x0f\x92\x00\x4a\x94\x33\x1c\xf4\x52\x1e\x84\x74\x12\xc4\xd4\xa9\x94\xa4\xd0\x4b\x40\x2c\x02\x9c\xc2\xce\x39\xba\x20\x14\x9d\x20\x1c\x7a\xc4\x07\xbc\x28\x0e\x3d\x28\x24\x38\x1f\x90\x7a\xa8\x4a\x94\xfc\x40\x8a\x21\x50\xbf\x40\x8f\x20\xed\xe0\xe3\xee\xba\x52\xac\x12\xfb\xb2\xdd\xab\x8f\x3f\xf6\x11\xdd\x9c\xca\x60\x20\x5f\x7a\x92\x8f\x5d\x3d\x40\x4f\x38\x74\x1f\xba\x6e\x1f\xe9\xab\x8e\xd5\x0f\x32\x46\x17\xac\xcd\x68\x34\xf9\xd2\x97\x70\xf5\x20\xb2\xe9\xf2\x4b\xb5\x9e\x11\xc1\xe5\x10\x75\x92\xd9\x79\xc2\xa8\xa7\x55\xd9\x7e\x1f\xd5\x4e\xd7\x04\xde\x9c\xa3\x36\xa7\x6f\x9f\x23\x32\x7d\xb5\xb3\x20\x2b\x26\xa4\xce\x4a\xb3\x56\x0b\x79\x3e\xc0\x22\x6d\x74\xed\x58\x22\x1c\x4d\xa2\xdf\xd0\x6b\x12\xa2\xad\x0f\xa7\xfe\x06\xaf\x09\xce\xf0\x20\x0b\xdc\x83\x80\x1b\x25\x6f\xd0\xb5\x08\xbe\x50\x15\xab\xe1\xf6\xe5\x8b\x7e\xae\xca\xcb\x17\xae\x0f\x44\x34\xde\xdc\x63\xfe\xc4\x15\x67\xa3\x76\x92\x38\x3d\xe6\x84\xfd\xa6\x5d\x88\x41\xb8\x9d\x49\xaa\x74\x44\x74\x52\xf1\xd4\x15\x7a\x8b\xc3\xdb\x79\x09\x3a\xb4\x4d\x81\xc0\x50\x5b\xdf\xce\x81\xd0\x80\xd6\xce\x9b\xca\x26\x15\x9e\x46\x13\x44\x66\xdb\x9e\xb9\x35\xa9\x8b\x4e\x3b\xbf\x32\x89\x49\x10\x53\x03\x2d\xe9\x79\x71\x65\xda\x92\x66\x4d\x9b\xa6\x99\x14\x00\x82\xae\x1d\x54\xd8\xfc\x1e\xf3\x72\x61\xef\x3d\xec\xcf\x7d\x80\xa5\x30\x39\xaf\xcb\xe4\x26\xe3\x71\xb5\xf9\x06\xfb\x6c\x1b\x3c\xaf\xfd\x28\x7b\xcd\x98\x72\xae\x32\x12\xa0\x01\x1e\xb6\x5a\x1e\xd3\x0a\x16\x1f\x30\xed\x89\x55\xb3\x0f\x69\x74\x39\xfe\xfd\x5f\x70\x32\xa3\x97\x8c\xbe\xa2\xaf\x32\x2e\xdd\xe2\xef\x82\x6e\x46\x64\x63\x98\xb0\x97\xe9\xe5\x17\x04\x01\xce\x2e\xc0\x2e\xe7\x7d\x51\x76\xca\x6b\xe7\x94\xcc\x58\x84\x2f\x77\x29\x0a\x23\x8a\x46\xac\xcd\xc8\xbd\x50\x46\x95\x65\x5a\x48\xcd\x64\xc6\x64\x46\x16\x25\xe0\x77\xcc\x98\x31\x3d\x8d\xc0\xee\xb8\xbe\x4e\x70\x3f\x8d\xe1\x08\x71\xb9\xd5\x70\xc8\xc0\x85\x08\x72\x0b\xa9\x9c\x9e\x09\x46\x21\x4e\x22\xde\x2f\x4e\x37\xff\x4c\xe9\xf2\x47\x72\x97\xfa\x33\xa5\xcb\x36\xfd\x2f\xd7\x12\x8c\x6e\xe7\xb6\xd8\x66\x7b\xf9\x40\x62\x4a\xab\xa3\xa1\xf5\x22\x4c\x14\xd6\xe9\x11\x5d\x41\x58\xfa\x86\xd9\xd3\xf5\xe5\xf6\x26\x5c\xd4\x16\x93\x08\x62\x9d\x3c\x8a\x04\x71\x67\x0a\x29\xc2\xec\x99\x9f\x04\x49\x9a\xc2\xc4\x23\x80\x89\x14\x29\x24\x8b\xc1\x4d\xd1\x15\xa2\x09\xe7\xd4\xa9\x87\xc4\x76\xbe\xbb\x33\xcd\xab\x2e\x48\xf8\xfe\x2a\x66\x9e\x41\x00\x03\x5a\x8e\xf0\x4d\x3b\x58\x44\x53\xe0\x07\x27\x61\x90\xb2\x44\x92\xb6\x70\xd4\x11\x3e\x3f\x28\x70\x65\x81\x4e\x2e\x28\x65\x30\xd0\x15\x87\x29\x0d\xf4\x7d\x30\xc8\xfe\x14\x0f\xe6\x00\x6e\x72\x51\x52\x61\xb5\x23\x9c\xa2\x45\x28\x88\xbb\xbb\xc1\xb0\xc8\xd3\xe3\xf2\x38\xf9\xed\x7f\xc8\xff\xd7\x57\x95\x93\x01\x1e\x72\x69\x20\x9d\xce\x46\xf4\xfa\x1a\xc6\x1f\x3f\xff\x95\xe5\xdf\x32\x13\xd5\x32\x40\x43\x7f\x3e\x07\xa8\xc3\x7b\x63\x62\x29\xb2\x56\x64\x20\xa7\xec\x9e\xdb\x31\xf9\x26\x66\xd3\xa2\x52\x79\x23\x9c\x91\x29\x13\xf9\x63\xf8\xde\x50\x88\x1c\x40\x02\x36\xa0\xc3\x8e\x7e\x97\x6f\x6c\x40\x87\xbe\xb1\x90\x1e\x34\x59\x1b\x94\xeb\x37\x2f\x3b\x14\xdc\xa5\xbc\x77\x3d\x0a\x88\x88\x29\xe3\x1b\x5a\x65\x96\x9a\xff\xd5\xaf\xe0\x56\x7f\xb8\x7f\x3b\x85\x6c\xdc\x77\xdd\xf9\xdc\x9f\xef\xa8\xf1\xb3\x46\xeb\x16\xc5\xe1\x08\xd2\x0d\x83\x66\x97\x62\x37\x1e\xf4\x84\x02\x18\x07\xc2\x83\xce\x14\x29\x99\x9f\x4e\x6d\x87\x0f\x30\xf3\xbf\xf9\x8b\xab\x13\xd5\x52\xff\xd6\x50\xc3\xd6\x0d\x39\x41\x90\x8e\xc6\xbb\x52\x30\x5e\xc0\x55\x7c\x01\xfc\xab\x3d\xf3\xee\xea\x3c\xad\x12\xc9\x6c\xe2\x54\xca\xcf\xca\xb4\xbe\x6a\x5c\xae\x0b\xce\x04\xbc\x62\x30\xac\xca\x6c\x93\xe6\xbe\x91\x3c\xa3\x28\x9e\xa6\x8d\xb8\x88\x70\xb8\x31\xc4\xc1\x60\x58\x4c\x43\x32\x43\x41\x9d\x96\xa3\xcc\x51\xb5\x5a\xcd\xc3\x52\xf2\x7d\xc4\x3a\x14\x25\x24\xbe\x52\x16\x20\x99\x49\xc5\x12\x82\xc5\x44\x3c\x56\xf7\x47\xf0\x07\xb7\x89\xc8\x76\x29\xbc\x2d\xb3\x19\x93\xe9\x38\xf8\xe6\xb4\x27\xc0\xb0\xad\xf9\x4a\xb3\x26\x02\x5a\x16\xb3\x20\x1d\xb2\xfe\x80\x0d\xfd\x6a\xf5\x17\x52\x2b\x0c\xc4\xe4\x5c\x5e\x22\xea\xb9\xd2\x86\xe8\x02\x9d\xdb\x53\xa3\xbd\xd4\x2c\x49\xd9\xe0\x3f\xd8\xf5\x25\x40\x87\x09\xa4\x97\x98\x54\xbe\x35\x16\xc5\xfa\x48\x64\xa4\xcf\x5d\x11\xf6\xb3\xad\xfe\xfa\xb2\x4f\xeb\x3a\xd2\xa6\x4a\x17\x6f\x06\x39\xb5\x72\x59\x8d\xa2\xb8\x8a\x38\x82\x72\xef\x47\x17\x37\xb6\x68\xb2\xfb\xd6\x76\xf6\xcd\x76\xf6\x55\x3b\x22\x1e\xa1\x2d\xa2\xec\x23\x6b\x1b\x8f\xcc\x36\x1e\x0d\x73\x14\x43\x0d\x32\x0f\x75\xe2\xac\xaf\x1a\xb1\x7c\xe0\xa6\x8b\x2d\xd0\x4b\x48\xc4\x84\x25\x46\x00\x01\x04\xdc\x7e\x0a\xf9\xbc\xd5\x89\x08\x2d\xc9\xdf\x59\x1a\x27\xd6\x88\x3e\x60\xc6\x32\xdf\xd1\x14\x22\x73\x6f\x6d\xb5\x3c\x1c\x7c\xe3\xba\xdf\xf8\xea\x46\xa2\x1e\xd6\xf7\x0c\xf4\x6f\x71\xe0\xba\xd9\x5d\xa3\x32\xe8\xe4\x43\xad\x53\xd3\xa9\x94\xe6\x92\xf3\x48\xa5\x90\xcc\x9b\x88\xe4\x07\x68\xc0\xd9\x0b\xf5\x81\xd8\xbf\xa5\xe2\xe3\x73\x95\x0d\xb0\x93\xd4\x0e\x00\xd0\xd4\x18\x0c\xab\xc6\x08\x12\x9d\x03\xbe\x7a\x9a\xe4\xfb\xda\x99\x5a\xf8\x19\x3c\x07\x30\x8e\xed\xd4\x6b\xc7\xa2\xa0\x62\x55\x0a\xaa\xe8\xc2\xeb\x8a\xdc\xb0\xe9\x4d\x6f\x7c\xd1\x4f\x91\x2e\x5a\xc7\x42\x52\x91\x8a\x73\x50\x81\x91\x99\x32\x03\xd4\xa4\x3a\xad\x5a\x92\xc3\xc5\xc8\x18\xb2\xe8\xb7\x2f\x9c\xce\x64\x14\x1d\x55\x5d\x62\xae\x1a\x0b\x6a\x1b\x92\xc9\x22\xad\x3c\x8b\x46\x1f\x11\xdd\x15\xd3\xfe\xa7\x13\xd2\x6a\x4e\x48\x86\x6f\x32\x0d\x6c\x2a\x24\x05\xd5\x6f\xb5\x34\x66\xff\x12\xb1\x43\xe3\x77\x85\xeb\x72\x61\x62\xb9\x5c\xfc\xa0\xa4\x09\x1a\xc3\xc4\xc0\x3f\x29\x7d\x10\x60\x7e\x0a\x09\xf7\x50\x10\xf2\xc3\xfa\xcc\x7f\x66\x00\xe6\x41\xce\xcd\x12\xda\xe1\x70\x05\x34\x55\x4a\x0f\x44\xff\xc5\xff\xb5\x87\x7c\x5f\x65\x93\x9b\x4b\x6f\x0f\x80\xef\xee\x4a\x2e\xdc\x5b\xcb\xaa\x44\xbe\x0a\x97\x9a\xa4\x08\x3a\x13\x39\x50\x0c\x94\x2a\xf3\x01\x96\x79\x51\xb0\x6f\x7a\x0c\xc5\xbf\x43\xe8\x7f\x54\xf6\x09\x32\xfc\x8d\x2a\xf2\xf6\xac\xe8\x6f\x34\xfb\xd3\xdf\xa8\xd6\xdf\x28\x2c\xfa\x1b\x85\xdb\xf4\x37\x1a\x59\xfc\x8d\x46\x5f\xb7\xbf\x51\x68\xdc\x74\xe1\x97\xed\x6f\x74\x7a\x8d\x10\x0e\x50\xe7\x54\x5c\xfb\xa6\xaa\xec\x22\xa7\xb4\x89\x3d\x9c\xfa\xe4\x04\x33\x0f\x1b\xde\x38\x99\xb7\xbe\x45\xc6\x68\xc6\xcc\xf4\xd0\xfe\xee\xe3\x6e\xc6\x5e\xaa\x1d\x01\x3c\x14\xb0\x9c\xb7\x4d\x82\xd8\x7b\x4e\x75\x28\x27\x88\x5a\xe1\xeb\x61\xa0\xfc\x58\x38\xf3\xb2\x94\x6f\x85\xac\xa0\x64\x57\x21\x92\x66\x6e\x16\xea\x5b\x36\x17\x92\xcc\x53\x61\x47\xe4\xfd\x7c\x89\x19\xa2\x57\x50\x76\xb3\x73\x16\xa9\x3f\xb5\x6c\xaf\xff\x0e\x38\x23\xaf\x8b\x96\x53\x82\x3b\xac\xc3\xfb\xe3\xf9\x7c\x65\xb2\x7e\x08\xd0\x1b\xb9\xb1\x8c\xab\xf6\xdb\xf3\xf9\x90\xf3\xe3\x86\x6f\x03\x98\x34\x5f\x52\x54\x70\xae\x32\xd6\x84\x96\xd7\x84\xef\x1e\x4e\xcf\x85\x34\x62\xae\x8b\x08\x85\x32\x58\x34\x8e\x74\x87\xa4\xf9\x2b\xe5\x76\xfc\x3b\x25\xb3\xa9\x00\x76\x96\x1f\x77\x54\x73\x1e\x67\x65\x63\xc4\x90\x63\x2b\x25\x67\xa1\xe1\x0e\x39\x63\x6a\x18\x7a\x19\x8c\x9d\xa0\x47\xb8\x60\x37\xe4\xdb\x09\x90\xa1\xb4\xcd\x7f\xe1\x12\xa9\x6e\xb6\x5a\x5e\xd5\x2b\x4b\x34\x60\xa6\xf5\x45\xbc\x74\xb1\x4d\xfe\x43\x26\x16\xcd\xbf\xc8\x06\x72\x59\x33\x90\x82\xeb\x90\xae\x9c\xd6\x8d\x92\xa3\x38\xba\x5a\x58\x4f\x15\xcb\xe6\x8e\x41\xab\xdb\x51\xae\x34\x67\xab\x34\xb6\xdc\x58\x3d\xcf\x17\x79\x5c\xf9\x81\x7d\x15\x25\x0c\x61\xc4\x09\xb6\x3c\xb2\x7a\x12\xea\x9c\xb0\xd4\xb7\x2b\x8e\x37\x23\xd3\xc5\xfd\xea\x55\xf4\x4b\x0a\xcb\xeb\x74\x8d\x7f\xdd\xde\x33\x38\x62\xd1\x15\x7a\x4e\x66\xd8\x36\x71\xe6\x6c\x97\xa7\x2b\xab\x5a\xde\xbf\xaa\x58\xb5\xc7\xde\x25\x7f\x1d\xa0\xe2\x76\xa9\xaa\x57\xb0\x21\xa5\x9b\xfc\x52\x1d\xdb\xf4\xf1\x12\xc7\x5a\x18\x41\xc7\x9a\x70\xca\x0e\x59\x0f\xb6\x59\xa2\x4c\xea\x76\xd2\x1b\x6d\x22\x08\xdc\x34\xb8\x45\x30\x41\x6f\x67\x45\xd1\xca\xb0\xf8\xa1\xdd\x80\x02\xfc\x17\xaf\xdd\x46\x7f\x41\x7f\x41\x0f\x7b\xfe\x43\x36\x9f\x83\x71\x70\x01\xce\x97\x20\x9c\x40\x47\xaa\x01\xc9\xaa\xaa\xbb\xde\x1e\x88\x57\x55\xd7\x4d\x3b\x6a\xa0\x16\xca\x4d\xca\x94\xfb\xb5\x30\x61\x7b\xb1\x84\x27\x73\xae\x62\x9a\xf0\xdb\x55\xfc\x25\x2d\x0d\x9c\xa8\x8b\x3f\x7f\xa0\x70\x22\x5c\x0c\x00\x91\xf4\x87\x74\x2e\x08\xbd\x86\x34\x4c\x00\x59\x9e\xea\x4f\x32\x12\x9e\xee\x38\x46\x6c\x69\x0b\x01\xcd\x52\x22\x17\xd5\x47\x65\x3b\x1d\xf6\x6f\xb9\x5c\xd7\x16\x56\xf3\xb9\xef\x03\xbe\xa5\xb2\x76\x3a\xd3\x18\x8a\x4f\xe6\x2f\x06\xce\x63\x8d\x50\x62\xf3\x81\x35\x54\x58\xb9\x8f\x8b\x0d\x38\xe5\x33\x56\xe1\xab\x24\x85\x4f\xa4\x5d\x83\x3d\xd4\x39\x1b\xcd\x28\x45\x98\x5d\xf0\xa9\x04\x88\x5f\xd7\x82\xdb\x14\xfe\x38\x03\x36\xe4\x8f\x44\x8b\xea\x37\x23\x0c\xc6\xa2\x70\xe2\xef\x64\x79\xd9\xf9\x1b\x65\x05\xe2\x8c\xb3\x9f\x4d\xa0\x5e\x90\x4a\xca\x66\x76\xe0\xaf\xfa\x06\xc9\xbe\x72\x98\x0d\x4b\x38\xda\xe8\x73\x66\x56\x7b\x18\x68\x56\x63\x44\x45\xde\x2a\xbf\xef\x95\x4b\x95\xdb\x2e\x90\x52\xcf\xef\x70\x2a\xe8\x19\xbd\x3f\x87\xa3\x8f\xcd\xbb\xdf\x2e\xf6\xc3\xd2\xd7\xef\x82\xee\x61\x61\x44\xaa\xb3\x74\xa6\x00\x4e\xe9\x1e\xb6\x8c\xa1\x48\xfe\x2d\x7d\xbe\x24\x8c\x1c\xe1\xf0\x5d\x0c\xad\xac\x4d\x49\xfd\x59\x20\x96\xe6\x06\x48\x79\x01\xf3\x61\x70\x3b\x07\xcb\x6d\xbb\xf2\xb6\x0a\xd2\x0d\x33\x60\x43\x21\x16\x52\x2f\xf4\x72\xe1\xeb\xf2\xe3\x90\xf2\x9e\x3d\xa7\xaa\x79\xab\x88\x36\xab\x2f\x14\xf9\xcd\xc2\x8d\x62\xaf\x53\x64\x3f\x44\x29\xf3\x5b\x82\x34\xd9\x3e\x95\xab\x27\xe6\x45\x5b\x1e\x8d\xda\xaf\x55\x44\xa8\xaa\x9e\x6a\xe7\x7d\x7d\x95\x18\xfd\x32\x10\x03\xfe\x2d\xd4\x01\xc2\x6a\x76\x8b\xe0\xf2\xd5\x96\xf4\x7a\x7e\x46\x19\x91\x26\x36\x51\x72\xc4\x4e\x2a\x18\xa3\xdc\x70\xf2\xa7\xb5\x67\x32\x63\xec\xd8\xe2\x2b\x5f\x53\xfd\xbb\xf2\x81\xcc\x38\x8e\x02\x97\x55\xb5\x91\x33\x5f\x88\xe2\xb1\x28\x73\x6a\xb6\xcc\xfb\xf9\x3c\xb5\x6b\x7f\xd2\xd2\x4c\xdd\x57\x2b\x38\xbe\x1c\x43\x25\x0f\xc1\x09\x3f\xe3\xe5\x29\xcc\x9a\x9a\xda\x4f\xbb\xa5\x29\x7e\x9e\x6a\x9b\xaa\x62\x90\x57\x69\xcb\xe8\x7e\xf5\x56\xcf\x6d\xd9\x9c\xd7\xbd\x31\xb9\xa9\xb9\xb8\xa3\x58\x61\xcf\x6f\xb5\x98\x22\x7e\xf9\xd3\x55\x47\x00\xd7\xfe\xe8\xdd\x1d\x93\xa8\xab\xd2\x57\x75\xb5\xc6\x6c\x29\x2b\xcb\x5b\x48\x82\xee\x26\x8a\x21\x02\xe6\x1b\x93\x7a\x48\xce\x67\x21\xf1\x31\x8e\x96\x85\x04\xa5\x34\x61\x61\x3b\xe9\x85\x96\xb6\x32\xf4\x01\x9a\x7b\x22\xb8\x9f\xd4\xd8\x9c\xd7\xdb\x70\x58\x8c\x0a\x16\x2c\xe0\x22\xce\x3e\xb4\x47\x71\xd4\x96\xf6\xce\xb6\xce\x45\x56\xa8\x54\xb2\xe0\x2c\xad\x56\xaa\xac\xa0\xd8\x73\x17\xdc\xe6\xdd\x24\x72\x26\x0f\x43\x1d\xa2\xca\xcf\x05\x54\xa2\x7a\xb8\x64\x42\x2e\x29\x9c\x8e\x3f\x83\x37\x59\x09\xbc\x94\x59\x67\x9e\xea\xff\x00\x0c\xda\xd9\x1f\x24\x18\x0c\x77\xb0\xe5\xa6\x4e\x64\xb0\xde\x20\x48\x3a\x6f\x48\x88\x74\x2a\x8b\xa4\x73\x82\x2e\xf9\xe2\x5b\x2b\x49\xbd\xbf\xac\xf1\x20\x60\xe2\x5f\x7e\x30\x55\x9d\x20\x88\x53\xb6\xd3\x4b\x80\x70\xf9\x16\x4e\xb1\xb7\x98\x84\xa8\x2f\xcb\x83\x30\x92\xf6\x96\x3e\x06\x89\xac\xd7\x8f\xe7\x3e\xc0\x7f\x95\x70\x60\xec\x03\xfc\x1d\x14\x40\x35\x2c\x8d\x85\xa4\x93\x10\xca\x2a\xc1\x2e\xba\xbd\x36\x4b\x7f\x2a\x33\xe3\x8e\xf6\xe4\xd5\x06\x5a\x10\x05\xaf\x21\x1b\x77\x2e\x62\x42\xa8\x17\xef\xee\x65\x99\x62\xbe\xeb\x1e\x26\x41\xfc\x3f\x7b\x87\x64\x10\x0d\xd3\x86\xfa\x1e\x19\x44\xed\x5e\xf6\xe0\x61\xee\xb5\xbf\xbb\xd7\xf7\x12\x01\x9f\xed\x02\x18\x74\x7d\x70\xab\x5f\x25\x7d\x02\x26\x11\xee\x0b\xec\xc2\x4b\x7e\x15\x77\xbb\x7f\xa1\xfe\x6e\xaf\xdb\x05\x13\x14\x46\xb0\xf0\x2a\x51\xaf\xe0\xa7\xfc\x73\x28\x9e\x2f\x30\x1b\xcf\x46\x17\x11\x4d\x3e\x9b\x1b\x93\x81\x83\xc8\xdc\x0c\x7a\x7e\x87\x91\x0f\xd3\x69\x9a\x21\xb2\x54\xa6\xb7\xc0\xf8\x3b\x9b\x86\x90\x21\x89\x82\x6e\x2b\x95\xfb\xd6\x9d\xf1\x94\x10\x9e\xe5\xa3\xa7\x87\x46\x46\x79\x80\xfd\x3e\x55\xb1\x99\x91\x00\x2e\x09\x3f\x0b\x2b\xb2\xca\x84\x0c\x62\x9f\xb7\x34\xf7\x55\x2e\x79\xbe\x9d\x99\x69\x68\x94\x65\xe5\x10\x84\x15\xa6\xd5\xca\xe4\x2b\x06\x74\xb8\x1a\x17\xa0\x8e\x9c\x88\x23\xe6\x41\x91\xe0\x56\x39\x38\x78\x10\xf4\xc0\x80\x0d\x33\x58\x04\xab\x98\x5b\x81\x50\x17\xc8\xe3\x64\x17\x8e\x62\x2b\x55\xd6\x69\xe9\xdb\x66\x61\xf5\x9b\xd0\x64\x03\x44\xd9\x1a\x5b\x0c\x07\xb7\xc2\x7f\x6f\xe0\x75\x01\xeb\xa8\xef\xa1\x77\x14\x25\x88\x1f\x2e\xef\x41\xd7\x07\xb9\x57\xaf\x24\xcc\xc2\xbb\xe5\x27\xab\x37\xf7\x87\xe0\xf4\x66\x8a\xfa\xd5\xd5\xe7\x46\x44\x1d\xbc\x78\x7e\x22\x31\xeb\x11\xc1\xed\x29\xa2\x93\x48\x58\x28\xdb\x63\xc6\xa6\x2a\xc3\xdb\x4a\x93\x57\x2e\x38\x22\x38\x94\x4e\x25\x71\x45\xa5\xdd\x84\x4c\x10\x8b\xf8\xb5\x5f\x98\x7b\x4e\xf1\xd7\x9f\xfd\x9a\x9c\x6f\x0b\x97\x64\x08\x24\x8a\xc7\xeb\x82\x54\x37\xe6\x7b\xb5\x15\xca\xd6\x06\x57\x96\x90\x81\xfe\x15\x23\xe6\xb9\xd2\x87\x5d\x44\xd9\xf5\x6b\xdc\x5c\x17\x2d\xd9\xef\x79\x99\x32\x7f\x58\xf7\x2f\xee\xaa\x6b\x90\xe9\x05\xd4\xbc\x9f\x9e\xbe\xeb\x48\x21\x35\x71\xfd\xbb\xbb\xc1\x10\xb0\xe2\x6b\xb9\x36\xea\x2d\x2e\xbe\x7d\x07\xd9\x58\xae\xdb\xdd\x9d\xfb\x86\xf0\x3f\x5d\x40\x6d\xa5\x44\x09\xed\xb9\xfd\x60\xd0\x15\x69\x6f\xd5\xf5\x2c\x3c\x01\xf4\x1f\xba\x99\x07\x41\x80\x15\x68\x96\x0e\x3b\x11\x1e\xc5\xb3\x10\x25\xe2\x74\xfb\x3e\x38\x12\x63\x2a\xec\xd7\x97\xbc\x10\xdf\x09\xbe\x77\x1b\xe1\x3e\x1a\xb8\xd6\x6d\x32\xec\xc8\xda\x1d\x18\xc7\xe4\x1a\x85\x62\x5f\x27\x9c\xac\xf0\xde\xf6\x6f\xf9\xe7\x6b\xa7\xf8\x07\x42\x27\x90\xf9\xde\x2d\x45\x97\xe8\x53\x7f\xf7\xff\xfe\x67\x77\x77\xde\x64\xae\xb3\xe9\x2a\xe5\x2a\x42\xad\x96\x31\x72\xc9\xca\x2c\x73\x0e\x7e\x37\x9b\x5f\xf2\xb5\x9b\xdc\xe6\x47\x0a\x50\xc2\x37\x60\x6e\x83\xbf\x4b\xf7\x84\xda\xfe\x3a\xae\x84\x2b\x3d\x87\xa4\xdf\x83\xdc\x97\x7c\x29\x4e\x44\x6e\xfe\x75\xef\xae\x17\x28\x61\x11\x16\xf3\xba\x6e\x53\xc6\x00\x44\x33\x95\xb3\x55\xae\x5a\xa6\xcd\x0f\xca\x33\x36\xf7\xfd\xa1\x79\x97\xd2\xc5\x1b\xf2\xe3\xd5\x17\xc6\x6a\xfc\x84\x6e\xd6\x98\xe2\x25\x39\x09\xe9\x7c\xf5\x85\xcd\x80\xd8\x65\xf5\x04\x6c\x00\xdb\xbf\x1d\xb5\x7f\xe9\xb6\x9f\x0e\xbd\xec\x77\x7b\x78\xdb\x05\x8f\xf7\xe6\xc6\x5b\xff\xf0\xff\xec\xce\x97\xe5\xaf\xa6\x24\x8e\x46\x37\x5f\xe1\xac\x1c\xb5\x7f\x81\xed\xdf\xba\xed\xa7\xff\x69\x9f\x0d\x6f\x7b\xa0\xb7\xf7\x64\xbe\xc2\xf8\x29\x89\xbf\xc6\x3d\x51\x1c\xfd\xde\xc1\xe3\x55\x46\xcf\x44\xa6\xe6\xad\x48\x74\x25\x7e\xe9\xb6\xe2\xca\x94\xf8\xbf\x5d\x84\xaf\x22\x4a\xb0\xd4\x87\x15\x80\x6b\x8c\xde\xa8\x9b\x63\x41\x3d\x16\x84\x64\x24\xd4\xbc\x1d\x91\x0a\xf6\x04\xc5\x68\xc4\x08\xf5\xbe\x99\x20\x06\x07\x18\x4e\x50\xe0\x7e\xf3\x10\x3d\xfc\xc6\x1d\x7e\xe3\x8b\xc8\x75\x8c\xd1\xe8\x7c\xc6\x64\x97\x84\x84\xe7\x03\x1c\xdc\xaa\x5e\x1b\xde\x0e\x5e\x88\x46\x24\x44\x1f\xde\xbf\x7c\x4e\x26\x53\x82\x11\x66\x22\x3d\x5a\x01\xc6\x5e\x98\x2b\x5c\x3d\x57\x38\x73\x54\xcb\xe0\x68\x12\x85\xf6\xcd\x73\x32\x8b\x43\x07\x13\xe6\x08\xdf\x65\x39\x56\xe7\x82\x92\x89\xc3\x47\xe2\x30\x78\xe9\x5c\x47\x6c\xec\xf0\x21\x39\x6a\x48\x9d\x6f\xa4\x34\x4f\x67\x18\x47\xf8\xf2\x14\x25\x2c\xb9\xbb\xa3\xe8\xd7\x59\x44\x73\x53\x0e\xa7\x53\xd7\xd7\x0b\xa3\x81\x9b\xb7\xbc\xa9\x7e\x56\xca\x05\x57\x88\xf2\xfb\xab\xef\xee\x75\xf6\x3a\xdd\x87\x7b\xdf\x7e\xbb\x1f\x42\x14\xba\x73\x7f\xe7\xff\x0f\x00\x00\xff\xff\xf6\x76\xfd\xc8\xc9\x7f\x10\x00") +var _web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x79\x6f\x1b\x49\xf2\x20\xfa\x55\x12\x6e\x0c\x76\x7a\x7e\xca\x98\xbc\x0f\x79\x6c\x6c\x8f\x67\x1a\x7a\x80\xfc\x16\x78\xb3\xa3\x3f\x66\xd0\x6f\x51\x2a\x96\x44\xae\x8b\xc7\x92\x14\x6d\xab\xa1\xf7\xd9\x1f\x22\x32\x8b\x67\xf1\x94\xdc\x6d\x7b\x08\x9b\x25\x32\xef\xca\x8c\x33\x33\x22\xf2\xbf\x97\xdd\x62\x3c\xa9\xa6\xec\xd5\x3f\xff\xe7\xcf\x3c\xbc\x7a\x7d\xd7\xab\xea\xce\xa4\x9a\x5e\x74\xc7\xbf\xde\x0e\xc7\x9d\x6a\x7c\x39\x18\x0e\xaa\x27\xe8\x0f\x3b\x45\xcd\x3b\xbd\xa2\x1e\xde\x73\xfa\xf1\xb6\xd3\x9b\xe1\x87\x4d\x8b\xdb\xba\x62\x65\x31\x9a\xf6\x86\x83\x8b\xfd\x25\xa7\xdd\xaa\xe8\xb0\x69\xf7\xa2\x5f\xf4\x06\x6b\xb5\x97\x92\xe6\xc5\xf2\xcf\x4e\xf3\xa5\x7b\x81\xdf\xbb\xbf\x4e\xab\x4f\x53\x5e\xd4\xbd\xfb\xc1\x65\x5d\xdd\x4d\x9f\x8a\xf1\xb4\x57\xd6\xd5\x45\x31\xe9\x75\xaa\x8b\xbb\xde\xfd\xc3\xb8\xba\xb8\x1b\x0e\xa7\xd5\xf8\x02\xdb\xc2\x3f\xf7\xe3\xe1\xc3\xe8\xa2\x3b\xbe\x98\x54\x25\x76\xf8\x6b\xa7\x37\x19\xd5\xc5\xe7\xcb\xdb\x7a\x58\x7e\x78\x82\xaa\x7f\x5b\x8d\xf9\x6d\x31\xe9\x95\xbc\x33\x1e\x8e\x3a\xc3\x8f\x03\x3e\x1d\xf7\xee\xef\xab\xf1\xbf\x8b\x71\xaf\xe0\xd5\xa7\x51\x31\xe8\x54\x9d\x37\xd3\xf1\x43\xf5\x0b\xcb\x35\x46\xc3\x8f\xd5\x98\x4f\xaa\xba\x2a\xa7\x7c\x32\x2d\xa6\x0f\x13\xde\x2b\x87\x83\x34\x66\xf8\xd8\x9b\x76\x79\xa7\x9a\x16\xbd\x7a\xc2\xa6\x9d\xcb\xe1\xa0\xfe\xcc\xcb\x6e\xaf\xee\xd0\xdc\xd4\xc5\x6d\x55\x5f\x5e\xde\x56\x77\xc3\x71\xf5\x2b\xff\x58\xdd\x7e\xe8\x4d\xf9\x74\x5c\x0c\x26\x77\xc3\x71\xff\x72\x3c\x9c\x16\xd3\xea\x8f\x32\x88\x4e\x75\xff\xe3\xeb\x6d\x19\x4f\x3f\xd4\xc3\xfb\xde\x80\x4f\x87\xf7\xf7\x75\xf5\x5f\x38\xe3\xe9\xf5\xd9\xed\xc3\x74\x8a\x6b\x53\x0e\x07\x93\x87\x9a\xf7\x06\xd3\x6a\x80\xaf\xcf\x9b\xf5\x9e\x30\x18\x55\xe3\x7e\x6f\x32\xe9\x0d\x07\x93\xb7\x4d\xf9\xaa\x3f\x9a\x7e\xa6\xf7\xa9\xde\x3e\xd4\x6f\xeb\xde\xdb\x3f\xb5\x25\x5e\x16\xe5\xb4\x37\xab\xda\xb2\xe8\xd5\x76\xb4\xb7\x9c\x3f\x6f\x66\x07\x08\x75\x3a\xac\xd8\x5b\xe0\x90\x86\x46\x7b\xda\x19\x2d\x9a\x29\x2e\x68\x94\x30\xfd\x3c\xaa\x72\xe1\xcd\x94\xa6\x30\x41\x30\x8d\x72\xfe\x6d\x25\x6b\xd4\xe4\x2c\x3a\x48\x90\xdc\xa9\xca\xe1\xb8\xc0\x55\x49\x28\x47\x10\xf9\x7f\x1e\x86\xd3\xea\xe2\x76\xd8\xf9\x7c\xd1\xe9\x5c\x74\xea\x8b\xce\xf4\x62\x8e\xa3\x19\xc4\xbb\xf2\xa2\xab\x2e\xba\xfa\xa2\x6b\x2e\xba\xf6\xa2\xeb\x10\xbe\xbb\xd3\x7e\x7d\xd1\xbb\x1b\x17\xfd\xea\xa2\xae\xee\xab\x41\xe7\xa2\xee\x5d\x0c\xeb\x8b\xd1\xc5\x68\x5c\x5d\x60\x8f\xc5\xb8\x2a\x2e\x1e\xea\x5f\xfb\xc5\xf8\xbe\x37\xb8\x14\xaf\x47\x45\xa7\xd3\x1b\xdc\x5f\x8a\xa7\x8d\x26\x7f\xbd\x1b\x0e\xa6\x7c\xd2\x7b\xac\x2e\xa5\x10\x7f\x78\x4d\x3f\x3f\x56\xbd\xfb\xee\xf4\xd2\x08\xaa\x30\x99\x8e\x87\x83\xfb\x5f\x97\x73\xbc\x10\x4f\x0f\xf5\xaf\x75\x6f\x82\x48\xf1\xb9\xae\xd2\x9b\x11\x4e\x64\xf2\xc2\xcb\x61\x5d\x17\xa3\x49\x75\xd9\x7c\x79\x9d\x33\x26\xa3\xa2\x4c\xa3\xd9\x20\x00\xbf\x2e\x46\x5a\x3c\x74\x7a\xc3\x0b\x44\xc2\xce\x45\xaf\x7f\x7f\x31\xbc\xfd\xdf\x55\x39\xbd\x98\xf5\x3a\xd5\xf0\xd7\x6e\x1a\x46\xf1\x30\x1d\xbe\xee\x17\x9f\xf8\xc7\x5e\x67\xda\xa5\x17\x78\x82\x62\x34\xe2\xb3\x5e\xf5\xf1\x6d\x42\x93\x71\x3f\x23\xc9\xbf\x71\x4d\xdf\xa4\xef\xbf\xe4\x05\xae\xea\x6a\x5a\x11\xf6\xdc\xf5\xc6\x7d\x5a\x23\x5e\xd4\xd5\x78\xba\x40\x8a\x0d\xcc\x2a\x88\xbe\xf0\x8f\xc5\x78\x90\x20\x2b\xb7\x0f\x9d\x62\x70\x5f\x8d\x87\x0f\x93\x15\x74\x60\x04\x50\x17\xd0\xaf\x06\x0f\x7c\x54\x0c\xaa\x9a\xfd\x7b\x3c\xac\xab\x37\x98\xd0\x9b\x56\xfd\x5f\x10\x5a\xc7\x15\x1f\x0d\x47\xc3\x59\x35\xe6\x98\xfe\x36\x0d\xb6\xec\x56\xe5\x87\xdb\xe1\xa7\x5f\xfe\x8b\x1a\x21\xc4\xdf\xa8\x3c\xec\x75\xca\x4c\xa0\xe6\xe4\xe0\xd4\xb6\x9a\x7a\xb9\xb9\x84\xc3\x7f\xba\x48\xb3\x35\x19\x8e\xa7\x5b\x4b\x10\x21\x5c\x9e\x47\xb6\x32\xc5\x45\xfa\x55\x8e\xab\x02\xc1\x3e\x4d\x58\x39\x1c\x7d\xe6\xb7\xd3\x41\xf3\x3b\x15\x29\x06\x65\x55\xaf\x24\x4d\x1e\x6e\xfb\xbd\xe9\xc5\xf2\x32\x8e\xab\x49\x35\xfd\x65\x25\x29\x95\xfa\x25\x73\x04\x06\x69\x9d\x26\x6d\xab\x7f\x39\x18\x4e\xff\x38\xef\xfe\xc7\x84\xf3\x6c\x32\x2a\x1a\xb2\xde\x2d\x26\xbc\xa9\x3f\x1d\xbf\x6d\xda\x3a\x62\x2a\xdb\xd8\xc3\x29\x0d\x2d\x98\xc6\xf0\xa1\xec\xf2\xb2\xa8\xeb\xe1\xc3\x94\xd0\xed\x75\x93\xf5\x30\x99\x2f\x48\xce\xe8\x0f\x1f\xdb\x52\x27\x9b\x89\xeb\x09\x4f\x69\xca\xc7\xd5\xac\x2a\x6a\xd6\x1b\x8c\x1e\xa6\x97\x34\xcc\xaa\xf3\xff\x55\xfd\x2d\xa3\xe9\x54\x77\xc5\x43\x3d\x6d\x1d\x10\x12\xa4\xcd\x01\xe5\xd4\xc9\x66\xe2\x7a\xc2\x53\xf1\x6b\x39\xac\x87\xe3\xcb\x1f\xa4\x75\xfa\xee\xee\x89\x96\x29\xd1\xa4\x2c\x2f\xa4\xfc\xde\xa0\x5b\x8d\x7b\xd3\x27\xa4\xa9\xf3\x2a\x77\x4a\x2a\xf3\x84\x34\xf3\xd7\xdb\xa2\xfc\x80\x52\xc2\xa0\xc3\x73\xee\xdd\xdd\xdd\xeb\x25\xf2\xe7\x46\x9f\x5e\x13\xc1\x1e\x57\x83\x4e\x35\x46\x32\x34\x1c\x4d\x7b\xfd\xde\x63\x75\x5d\xdd\xf7\x6e\x7b\x75\x6f\xfa\x79\xfe\x8e\x54\x12\x2b\xf2\xa2\xf3\xbf\x1f\x26\xd3\x44\x3e\xe9\x45\xb7\x65\x4d\xb6\xe4\xec\x68\x6a\x38\xf9\xc4\xd3\x10\xfb\xc3\xe1\xb4\x8b\x63\xba\x1f\x17\x9f\x27\x65\x51\x2f\xd6\x7f\xad\x40\x31\x98\xf6\x8a\xba\x57\x4c\xaa\xce\x6b\xc4\xd5\xbb\x7a\xf8\x91\x7f\xba\xec\xf6\x3a\x9d\x6a\xb0\x48\xf9\x7c\x39\x29\xc7\xc3\xba\x9e\x37\x73\x3b\xfc\x84\xa3\xc0\x26\x32\xa5\xbe\x1d\x7e\x7a\xdd\x9e\xda\xef\x0d\x32\xd1\xd5\x42\x8c\x3e\x3d\x41\xd9\xe7\x13\xde\x2d\x26\xdd\x1e\xbc\x1b\x76\xaa\xf7\xbd\xf1\x78\x38\xbe\x28\x87\x9d\x0a\xd9\xd2\xaf\xdb\x86\x8a\x04\x9c\xd2\xee\x8a\x7e\xaf\xfe\x7c\xd9\x1f\x0e\x86\xc8\x1f\xaa\x27\x94\x53\x37\x56\xcc\xdd\x79\x17\xd4\xeb\x4c\xfe\xe5\xe8\xd3\xeb\xcc\xe3\x24\xd8\x71\xd5\x67\xe2\x29\x61\xf8\x66\x55\x12\xad\x46\xc5\xb8\x1a\x24\x08\xc9\xa4\xe3\x82\x20\xfc\x22\xc1\xdb\x9c\x79\xfe\xba\x3c\xa4\xbf\xd6\xbd\xc1\x87\xf7\x45\xf9\x8f\xcf\x93\x69\xd5\xff\x79\x38\x98\x5e\xf0\x62\x34\xaa\x2b\x3e\xa1\x94\x8b\x57\xff\xa8\xee\x87\x15\xfb\xe7\xff\xf5\xea\xe2\xff\x19\xde\x0e\xa7\xc3\x8b\xff\xf1\xe9\xf3\x7d\x35\xb8\xf8\xe7\xed\xc3\x60\xfa\x70\xf1\xae\x18\x60\xab\x75\x7d\xf1\xea\xe7\xde\xb8\x60\xff\x28\x06\x93\x57\x17\xaf\xfe\x36\x1e\xf6\x3a\xcd\x8f\xab\xaa\x9e\x55\xd3\x5e\x59\xb0\xff\xbb\x7a\xa8\x5e\x5d\xcc\x7f\x5f\xfc\x34\xee\x15\xf5\xc5\xa4\x18\x4c\xf8\xa4\x1a\xf7\xee\x9e\x96\xd9\x71\xe2\xbd\x0d\xe4\x2f\x66\x7b\x0b\xe8\xe0\x74\x3f\x2d\x2f\xc7\x1c\x18\x12\x28\x60\x19\xc2\xec\x65\xb8\xa1\x35\xfa\xd8\xed\x4d\x2b\xe2\xdc\xd5\xe5\x68\x5c\xbd\xfe\x38\x1c\x77\xf8\xc7\x71\x31\xba\x1c\x0c\xc7\xfd\xa2\x7e\xfa\xd3\xc5\xe5\x65\x71\x87\x12\xf9\x86\xb8\xbb\x04\x41\x79\xa4\xaf\x37\x93\x9e\x1a\xe1\xe7\xd7\x25\x5e\x5e\xa4\xe5\x59\x23\x96\xcb\x89\xe3\xa2\xd3\x1b\xfe\xf2\x6b\xf9\x30\x9e\x0c\xc7\x97\xa3\x21\xb2\xe9\xf1\xd3\x81\xb5\x66\x15\x2a\x16\x45\x9d\x75\x8d\xdb\x62\x52\xd5\x3d\x14\x63\x88\xaa\xac\xe5\x4e\x87\xa3\xa7\x9d\x30\xd3\x48\x5b\x4f\x49\x38\x6b\xb4\x2c\xf1\xf4\xa7\x46\x22\x4a\x6f\x26\x9e\xa0\x18\xf4\xfa\x45\xe2\x10\xd3\xe2\x96\x0f\x8a\x19\x7b\xa8\x9b\xf9\x3b\x45\x80\x39\xba\xca\x65\xa7\x37\xc1\xfe\x3b\xa7\xd4\xbd\x1b\x96\x28\xe4\x1c\x5f\xb1\x8b\x60\x35\x97\xe1\x4f\xad\x8f\xcc\x7b\x3e\xfe\x1f\xd3\xcf\xd4\xe6\x8f\xdb\x44\xb9\x85\x6c\x96\x45\xba\xdd\x65\x9a\x37\xdc\x5f\x90\x46\x34\x17\x12\xab\x4f\xd3\x6a\x3c\x28\x6a\x3e\x19\x3e\x8c\xcb\xea\x44\xe1\xf1\x84\x4a\x4b\xcb\x79\x4a\xed\xc5\xeb\x1e\x5d\x75\x75\x49\x4f\x6f\x61\xdf\xa2\xae\x36\x8b\x8a\x07\x9b\x76\x20\xa5\x70\x96\xc5\x81\xcd\x82\x0b\xdd\x97\x2f\x41\xd8\x8a\x58\x79\x4a\xa5\x5d\xf3\x7d\x40\x6d\x9a\xef\xb5\x57\x3e\xad\xa5\xb6\xc9\x9b\xb7\xf4\xa1\x37\xe8\x5c\x40\xa7\x37\x29\xb1\xd4\x67\x5e\x76\x51\x3d\x85\xf1\xf0\x61\x8a\x72\xf6\xb8\xf3\x36\xcb\xca\x0f\x35\xab\x7b\xad\x5a\xcb\x46\xd2\xd2\x9b\x6f\xe6\x65\x38\xda\xcc\x58\x85\x92\x6d\xf9\x3b\x61\xe0\xae\x2e\x26\x5d\xde\xaf\x26\x93\xe2\xbe\x62\x23\xa8\x48\xc0\xd8\x4c\xfe\xd4\x9b\x4c\x27\x9b\xe9\x93\x87\xb2\xac\x26\x2d\x19\x08\x9a\x3d\x84\x9d\x3a\xed\x24\x2d\x29\x6a\x49\x09\xdc\xa0\x0b\x34\xb0\x4e\x6f\xf6\xe3\xee\xb2\x8b\x77\xda\x5f\x76\xa9\xd4\xd6\x8d\x8b\xb7\x79\xc7\x6b\x57\x91\x6e\xf3\x0e\x87\x2b\x94\x07\xbc\xe4\x73\x1a\xdb\x98\x85\xe7\x34\xb6\x68\xa6\x4d\xe9\xdd\x4c\x9b\x43\x5c\x4b\x56\x86\xd5\x96\x9c\x03\x80\xf1\xa5\xa6\xf6\xa5\x66\xf5\xf9\x13\xda\xc8\x21\x90\xe6\xa2\xa2\xdd\xb8\x3d\x4a\xfd\x9e\xfc\x25\x52\xb1\xa7\x60\x5e\x8b\x3d\xa5\x56\x89\xc8\x41\x85\x77\x2d\xe2\xea\x96\xc4\xca\xaf\xc5\xc8\x57\x93\xd3\x38\x57\xd3\x56\x46\xd5\x96\xb5\x6b\x0c\x7b\x36\x3e\x52\x52\xd3\x78\x4b\x4e\x1a\x50\x4b\xc6\x71\x5d\xaf\x6c\xb0\xb4\xf3\xb9\x6d\x5c\xac\x2d\x63\x65\x4a\x0e\x64\x5a\x6d\x83\xdb\xba\xd5\x93\x92\x56\x7b\x58\xc9\x59\x1e\xda\x4a\xc6\x71\x5d\x37\x5b\x4a\x2d\x69\xeb\x33\xb3\x9a\xb9\xd9\x7f\x93\xd3\x32\x37\x6d\x05\x76\x8d\xf0\x90\x0d\xae\x54\x76\x7d\x9f\xeb\x90\x9a\x0b\x12\x75\x64\xc5\xbd\x03\x3f\xa5\xd1\xf5\x2a\xd3\x7e\xfd\xef\x4e\x31\x2d\x38\x09\x31\xff\xef\x9b\x57\x9d\x12\x8a\xb2\x9e\x40\x6f\xd0\xa9\x3e\xbd\xfa\x85\xa5\x73\xa6\x4e\x23\x11\x4e\x46\xc5\x00\x46\xc3\xba\x57\x7e\xe6\x83\x61\xa7\xe2\xbd\x0e\x0a\x57\xd3\xcf\x2b\x39\x93\x6a\x3c\xeb\x95\x4b\x99\x27\xee\x02\xee\x25\xf8\x2f\xd6\xee\x1a\x03\x78\xb1\x76\xd7\x5a\x3c\x7e\xff\xf2\xc0\x29\x78\x89\x86\x5b\xe7\xe0\x25\x1a\x6e\x9a\x6c\xf4\xf6\xb4\xcb\x32\x19\xd6\xbd\xce\x3e\xdd\xbd\x85\x8d\xee\xdc\x8b\x7a\xbd\x38\x2c\x19\x8e\x2f\x67\xc5\xf8\x8f\x3c\x9d\x17\xf1\xdb\x71\x31\xe8\x70\x27\xc4\x45\xde\x21\xf9\xf1\xf5\x72\xa1\xe9\xe7\xd1\xb0\xa5\xcc\xd3\x4b\x8b\x3a\x5f\x82\xe9\xbc\x14\xa9\xfe\xaa\xc8\xd9\x96\xfd\xe5\x95\xf5\xfd\xc1\x2a\xeb\x9d\xcc\x0b\xf9\x83\xf6\xba\x30\xaa\x6d\xc9\xb6\x0b\x06\x2b\x3c\xf1\x78\x0a\xda\x36\x4a\x7f\x17\xee\x8a\xb5\x81\xde\x16\xa5\x2c\xcb\xf5\x81\xee\xd9\xe6\x48\xfa\x66\xd6\xa3\x4e\xa3\xbc\x2d\xe3\xab\x6e\xab\xea\x4e\xad\x8d\x2f\x6f\x04\xaf\xfc\xda\x65\xcb\x70\xb8\xf2\xb4\x7d\x86\x56\xcf\x14\x0e\xdf\x94\x38\x58\x01\x3f\x96\xbb\x1d\x3a\x59\xab\x8b\xd9\x8c\x7f\x8b\x22\xdc\x0e\xc7\xb7\x55\x67\xad\xd1\xbb\xa2\x34\x42\x6d\x36\x93\x15\xed\xb6\xb1\x95\x77\x7e\xa3\x19\x55\xdd\x0a\x1d\x5f\xaf\xfc\x6a\x99\xdb\x23\xb6\x64\x0e\x43\xc4\xdb\xa8\xee\xee\x5e\xaf\xfc\x3a\xa9\xdb\x83\x7a\x4b\x27\x57\xaf\x57\xcf\xb1\xbe\xc2\x9d\xa3\xb6\x97\x11\x77\x76\xcf\xfb\x88\x42\x75\xbc\x79\xda\xb5\x57\xb4\x45\xbb\xda\xaf\x70\xb4\xcb\xdc\x2d\xe3\x0c\xc5\xad\xdc\x18\x67\xa8\xa2\x2b\xf4\xeb\x95\x57\x69\x1b\xe7\x9e\x7d\xab\x83\xb5\xc8\x1d\x0a\xe2\x71\xaa\xd8\x3e\xdd\xea\x48\x05\x66\xaf\x3e\xb2\xa3\xbd\x96\xb9\xd6\xc1\x17\x1b\x73\x9d\xa0\xe0\xf5\x02\x07\x5a\x26\xba\xdd\x0c\x60\xdb\x19\x7f\x1e\x62\xcb\x00\x32\xfc\x1d\x3f\x80\xfd\xda\xfa\x3e\xad\x75\xaf\xe6\x96\x2d\x7f\x36\x07\x2d\x2a\x23\x0a\xbd\x7f\xd0\x2f\x66\xbf\xb2\x71\xe8\x71\xfc\x51\xc4\xa1\x7b\x96\x2f\xb2\xa7\xf7\xfc\x16\xf6\xec\x57\x7d\xcd\x5a\xd2\x42\xe7\x38\x80\x9f\x94\x5e\x1b\x63\x5f\xaf\xfc\xda\xe4\xc4\x3b\x77\xc8\xdb\xfa\x89\x55\x59\x55\x3b\xbb\xb2\xb7\x32\x28\x71\x02\x8c\x3e\xf3\x80\xea\xe0\x9d\xc4\x1d\x1c\xa2\xb2\x85\x2a\xd6\xe5\xdc\x35\x0e\x71\x12\xfe\x3d\xf7\x3c\xf4\x79\xe7\x99\xa7\x9e\x55\xfe\xb6\x07\x84\x3b\xdf\xf1\x8b\x9d\xb8\x7c\xb5\xa7\x20\x5f\xdb\xf9\xc1\x0b\xee\xcf\xef\x5a\xe9\x6f\x73\x5b\xed\x1b\xda\x04\x6b\x21\x7b\x99\x80\xaf\xab\x3f\x48\xc7\x9f\x49\xf6\x5e\xea\xe8\xff\xa8\x13\x9d\xad\xe2\x95\xbf\x53\x4a\x95\xfb\xdf\xb3\xc5\xac\x3f\xbb\x01\x5c\xec\xc8\xe3\x7c\x71\x78\xbd\xad\x4c\x5a\xe4\x66\xd3\x70\x3a\x1c\x5d\xca\xd1\x27\x46\xdb\x86\xec\x87\x62\xc1\x7a\x6e\x87\xd3\xe9\xb0\xbf\x25\x73\xdc\x58\xb6\xb5\xe4\xd5\xd5\xdd\x7a\xd6\xa1\xfb\x91\x75\x8f\x15\xab\xfe\x07\x3d\x5a\x9d\xce\x43\xb6\x4c\x07\x69\x27\xaf\xb7\x66\xb4\xd4\x9c\xf6\xfa\xbd\xc1\x3d\xbf\x7b\x18\xd0\x3a\x5f\x56\xc5\xa4\xe2\xc3\x87\xe9\xeb\x03\xca\x3c\xfd\xf0\x30\xae\x27\xff\x2b\x6f\xfe\x90\xe1\xed\x7c\xc4\x9b\xbb\x25\xd5\x64\x58\x23\x91\x2b\x8b\x71\x87\x75\xa6\xc7\x94\x4c\x96\x68\x3b\x8a\x4e\x9a\x1d\x18\x1c\x43\xb6\xbd\x9d\x0e\x87\xf5\xb4\x37\xfa\xe5\xc4\x6a\x3b\xc6\x37\x7c\x98\x56\xc7\xf6\xb8\xaf\xce\xf6\xee\x26\xa3\xba\x37\x9d\x1e\xfd\x8e\x87\x54\xdb\xde\x69\x2e\xb1\xbf\x9b\xf6\x82\xf3\x86\xab\x4f\xbd\x69\x6f\x70\xbf\x2a\xbd\x5e\x40\xb7\x2a\xea\x69\x97\x28\x23\x02\xd2\xe8\x61\xca\x3a\x1d\x56\xf5\xd3\xb6\xd9\x46\x2b\x87\x16\x6f\x73\xd0\x49\x20\x3c\x1a\x0f\x47\xd5\x78\xfa\xf9\x72\x38\x2a\xca\xde\xf4\xf3\xeb\x5d\x79\xbb\x11\x6c\x1b\x7e\x1d\x84\x5e\x75\x6f\x50\x15\xe3\x5d\xc8\x95\x4b\xe4\xb1\x5c\x8a\xd7\xd9\x1a\x92\x57\xb3\x6a\x30\x9d\x24\xeb\xee\x15\xc4\x6b\x64\xc6\xde\xe0\xfe\x58\x1c\x4c\xfc\xec\xe8\xf2\x7b\xf1\x71\x5e\x21\x51\xfb\xc3\x3b\xc8\xe5\x8f\x43\xf8\x34\xac\x13\xd1\xbe\xb5\xf2\xfe\x11\xaf\xb6\x41\xc3\x3e\x75\x00\x6d\x95\x8f\xa1\x3e\x07\xbf\xfe\x61\x35\x8f\xea\xfa\xd0\x17\x3f\xac\xe6\x91\x44\xf0\xd0\x17\x3f\xbc\xf2\xb1\x03\x38\xf0\xf5\x0f\xaf\xbc\x97\x22\x43\x12\x60\xde\x1e\x4a\x98\xdb\xcb\xef\xed\xe6\xd0\xa9\xdd\x55\x7c\x7f\x27\x07\x4e\xdf\xae\xe2\xc7\xf2\x88\x55\x8a\x77\x5c\xa5\x86\x2a\x1d\x58\x6b\x95\xf6\x1d\x57\x69\x3b\x27\x9b\x73\x1c\xd1\xca\x87\xc4\x4e\xee\xf5\x30\x98\x54\xd3\xd6\x7a\x29\xa7\xad\x6e\x55\x17\x9f\xd7\x3a\xcb\x49\x5b\x4b\x6f\x76\xb3\x94\xdc\x70\x36\xb9\xce\xd9\xc8\xad\x61\x53\x81\x49\x47\x9f\x77\xbd\x7a\x4a\x9e\xbf\xe3\x1f\x33\x04\x90\xf5\x3f\xf9\x0b\xff\x92\x76\x85\x59\xd2\x71\x46\xc5\x64\xf2\x71\x38\xee\xfc\xd2\xb2\x95\x73\x6c\x5b\xd3\xea\xd3\xf4\x79\xed\xcc\x1d\x39\x77\xf9\xb2\x26\x05\xa9\x19\xf8\xe6\x7b\x1c\x5b\x35\x0f\xfb\xf0\x6a\x47\x8c\x32\x1f\x70\x1f\x3f\xc6\x95\x8a\x87\x8e\x30\x57\x3a\x62\x7c\x58\xf4\x84\xd1\x2d\x55\x3b\x74\x6c\x54\xe5\xa0\x91\x1d\x0c\xb0\x27\xb7\xb1\x7f\xcc\xfb\x01\x74\xd9\x7e\x61\xcb\xf8\xb6\x15\xc9\xdd\x6f\x66\x2f\x5a\x4f\x53\x46\x9e\xef\x9b\xed\x6e\x66\xe6\x16\x97\x33\xe6\x6d\x91\xe3\x57\x3f\xb1\x86\x9d\x88\xb3\xbd\x4c\x6a\xbe\x2d\x7f\xde\xcb\x52\xe6\x16\x98\xdf\x56\x62\xa3\xf1\x75\x28\x5e\xca\x6a\x05\xd7\xf6\xfc\x8d\x66\x57\x00\x70\xc9\x03\x1c\x82\xb7\xe3\xaa\xff\xfa\x2b\x76\x7f\x7b\x8d\x6a\x0e\x6f\x1c\x00\xc1\xae\xd1\x7d\x02\xda\xfa\x6d\x67\xfa\x1c\xda\xfb\x96\x5c\x4c\x5b\x76\xd4\x59\x63\x5f\x7f\x94\xc3\x78\x63\x17\xd2\xa9\x26\xd3\xde\xa0\x48\xc1\x34\xb6\x96\x6a\x6c\x6a\x7e\x8f\xdd\x8d\x13\xf6\x27\x4e\xdc\x64\xd8\xb6\x4d\x70\x9c\xc2\xde\x5e\x7e\xba\xcf\xd9\xfe\x40\xe6\x96\xc1\xe0\x40\x56\x73\x68\x69\x44\xbb\xfd\x65\x77\x43\xe6\x4b\xc6\x6c\x99\x9b\xca\x1e\x52\xf6\xf2\xae\x37\x9e\x4c\x53\x80\x93\x83\x02\xc2\xbc\x60\x6c\x83\xe5\x09\x38\xb5\x3d\x9a\xd0\x84\x40\x0d\x2a\xe7\x1d\xd2\x55\x8e\xb1\x14\x10\x60\x39\x3d\xf5\x9e\x5a\xbd\x2d\x06\x83\x6a\xfc\x0b\x1b\x14\xb3\x3c\x2b\xc3\x3b\x8e\x65\x33\x25\x58\x1d\xe3\x4a\xb4\x94\xc3\x1a\x28\x0e\x2c\x97\x2c\x2b\x0e\x2b\xbb\x65\xfc\x75\xf1\xbc\xe1\xb7\xd4\x6f\x1b\x7d\x4b\xb1\x6d\x83\x6f\x29\x4a\x63\x6f\xbc\x84\x1b\x4f\xa7\x79\x3c\x93\x16\x8e\x9c\x6a\x6c\x70\xd3\x8d\xe4\x05\x46\x52\x62\xa6\x63\x8b\x29\x24\x68\x67\xc3\x9a\x11\x7d\xdf\x13\xdb\x68\x8e\x4e\x2b\x89\x2b\x78\xb3\x12\x0a\xe9\xeb\x0b\x38\xb1\xca\x60\xd5\xef\xc7\x61\x5f\x82\x8b\x9e\x89\xfd\x2e\x02\xbe\x8d\xbc\xb6\x91\xc9\x33\x15\xfc\x8a\xa9\xe0\x0b\x93\xc0\x1d\xe4\x6d\x19\x80\x56\x42\x42\x39\x21\x9e\x76\xca\xc5\x67\x81\xf6\xb7\x17\x68\x4f\x90\xf1\x9e\x2b\xb2\x9d\x5a\x6f\x9f\x1c\x76\x24\x6f\x6e\x67\xc4\x5f\x21\xbb\x5d\xc6\x21\x2b\xd6\x6d\xeb\xbe\x1f\x7d\xf6\xac\x92\x9d\xca\xa5\xbf\x45\x0d\xea\x2c\x23\x7c\x6d\x32\xc2\x57\xa3\x20\xad\x00\xf7\xd7\x49\x8e\x97\x37\x43\x9f\xce\x82\xcb\xb3\x04\x97\x97\x16\x4e\x76\x89\x07\x3b\x59\xff\xca\xd2\x4a\x45\x6b\xfb\xc3\xc7\x71\x31\x1a\x55\xe3\xb9\x7b\x60\xc3\x64\x59\x57\x52\xbb\xf0\xa1\x37\xe8\xf0\xd1\x78\xf8\xe9\xf3\x72\x66\x9a\x60\xb2\x92\x4c\xc1\xc0\x5e\x24\x68\xd7\xe1\x0c\xbd\xea\xbf\x8c\x3c\xf0\x02\xc1\xa9\xf6\x04\x1a\x6e\x97\x0b\x60\x30\x9c\xf6\xca\x0a\x8a\xba\x1e\x7e\x3c\xa8\x50\x13\xf0\x78\xab\x40\xb2\x5a\x7a\xb4\xaf\x58\xa7\x1a\x7c\x3e\xa4\xcc\xc1\xfd\x52\xe1\xbd\xdd\x2e\x4d\xd1\x11\x45\x0f\x1e\xc4\x72\x9d\xb6\xb1\x2c\xf9\x05\x26\x18\xa6\xea\x89\x6d\xb0\xce\x9e\x68\x56\x6b\x45\x97\x9d\xab\x32\x42\x5c\x0e\xa6\xdd\x44\xd8\xff\xa8\x7e\xdc\x1b\x4f\x6a\x74\x70\x18\xea\xd5\x58\xd3\x0b\x08\x6f\x90\x6f\xcd\xc5\xe5\x82\x18\x0a\xb9\xbf\xbc\x6d\x68\x4b\x1b\x79\xaa\xdf\xe2\x7b\x6c\x08\xa6\x93\x6a\x54\x8c\x8b\xe9\x70\xfc\xcb\x4a\x66\x67\x25\x88\x2f\x62\xdd\x31\x82\x2b\x62\xec\x97\x12\x73\x0f\x6a\xfb\x04\x91\xf8\xa0\x76\x9f\x27\x3c\xef\xe9\xe2\x64\x99\x7b\x89\x02\xff\xd7\x9e\x3e\x46\x07\x31\xa9\xc3\x38\xd9\xe8\x14\x69\x7d\x05\xde\x8e\xa8\x4d\x00\x79\x84\x57\x0a\x41\x6c\x26\x14\xd9\x37\x6c\xf9\xd7\x12\x91\x59\x49\x1e\xcd\x7f\x77\x7b\xf7\xdd\x1a\x15\xd5\xcd\x94\xcd\xca\x8b\xac\x45\x03\xbd\xc1\xdd\x70\xe5\xc7\x66\x35\x4a\x5d\xd4\xc8\x61\x02\xfa\xc5\xa0\xb8\xaf\xfa\xd5\x60\xba\x3d\x67\xb3\xad\xcd\x22\x8b\x86\xe7\xf1\xe0\x56\x7f\x6f\x36\xd2\x64\x2c\xaa\xce\x23\xc6\xad\xfe\xde\xac\xda\x64\x8c\xf6\xc7\x2b\x5b\x60\xc3\x8b\x28\x6c\xcb\x20\x75\x04\x34\x1d\x03\x48\x5b\x43\x85\x17\xb7\x3c\xdf\xc1\x80\x2f\x3e\x5d\x0a\xad\x7f\x40\x18\xf1\x65\x15\x12\x67\x63\x43\xa5\xfc\xb6\x03\x8d\xb7\x29\x61\x55\xff\x18\xdd\x6c\xb5\xf4\x2e\x85\x6d\xb5\xe4\x9a\x0e\xb7\x46\x1f\xd3\xbd\x05\xab\x42\xf4\x9a\x48\x4d\xd7\x0b\x30\x0a\x31\x4c\x82\x71\x62\xe8\xcf\xd3\xdf\x96\xc0\xf4\xd4\x86\x3a\x27\x8f\x81\xc0\xf8\x99\x7a\xe3\xc6\x0b\x9c\xd0\xd2\xfc\x0d\x4e\x70\x07\xeb\xf4\x66\x2b\xe7\x75\x4d\x7c\xe5\x85\xaa\xd3\x84\x57\xde\xa9\xbc\xbc\x98\x90\xfe\x72\x62\xf7\x97\x92\xa4\x47\x07\xc9\x8f\x3b\xb8\xe4\x61\xec\x70\x17\xcf\x3b\x8d\xbb\xed\x67\x5d\xfb\x39\xd4\x68\x9d\x3c\x37\x28\xdd\xb2\xed\x71\x9a\x6a\xfc\x72\xca\xe8\xb1\x7a\xe5\x17\x52\x6d\x0e\x57\x4b\x0e\xd2\x30\x9e\xa7\x44\x7c\xbb\xbb\xdf\x5f\x48\x80\x3e\x49\x04\x7e\xa6\x84\x75\xac\xa0\xb4\x29\x01\x2d\xcb\x33\x2f\x7d\x68\xdb\xc2\xb7\x5f\x80\x5d\xff\x5e\x5c\xf6\xb9\xbc\xb1\x65\xcb\xef\x77\xd8\xa9\x7b\x99\x8d\xb6\x67\xec\x89\x1d\xb5\x91\xd5\xbe\xef\xf4\x12\xbb\x3d\x9b\xbb\x32\xbb\xf7\x5e\x5e\x76\x73\xe5\x98\xcd\x92\x43\xb6\x3f\x4e\xdc\xd2\x38\x76\x67\xe2\x39\xbb\x09\xbb\xd5\xfb\x1d\xca\x7b\xbb\x6e\x7e\x80\xca\xbd\x55\x8d\xde\x54\x92\x0f\x57\x89\x9f\xad\xfa\x1e\x7f\x9d\xd5\xba\x1e\xfa\x9d\x6b\x9d\xad\xca\xe5\x8a\x16\xd9\xae\x30\xbe\xb0\xfa\xf7\x02\x7a\xd8\x32\xc9\xcf\x82\xec\xf6\x58\x03\xc5\xc7\xc9\x96\x98\x96\x8b\x73\xad\xa5\x32\x28\xf0\xae\x66\xa4\x58\x97\x8b\xb4\x5d\x52\xec\xac\xa8\x1f\x2a\x4e\x84\xfb\x6d\x3a\xb5\x25\xda\x79\x4c\x65\xa4\xe3\x07\xd6\xcd\xe6\x17\xf9\x24\x0c\x07\x7b\x78\xe1\x94\x7f\x78\xf9\x0f\x0f\xb7\xd5\x78\x50\x4d\xab\x23\xfa\x18\x0c\xfb\xc5\x11\xe3\x9f\x56\xe3\x71\x41\x9c\x77\x7b\x95\x35\x79\xfe\xb0\x57\xdf\x52\x69\xef\x14\x6c\xa9\x77\xd0\x54\x6c\xa9\xbb\x6f\x4a\xb6\x54\x3b\x64\x6a\x26\x55\x31\x2e\xbb\xa4\xf2\x2e\x81\x52\x13\x05\x78\xad\xde\x5e\x94\x58\x2d\xb6\x8a\x15\x39\x6f\x03\x31\xc6\x3d\xba\x4c\xa9\x45\x4b\x3a\x3c\x2a\x40\x0d\x77\x45\xaf\x26\x5f\xde\xce\xf4\x90\xe2\xe3\xaa\xd3\x1b\x23\x5d\xdf\x59\x7c\xd5\xb9\x7a\xb7\x13\xfb\x66\xd4\xd6\x55\xf8\x3a\xb8\xd6\x3a\x80\x1d\x5c\xb1\x0d\xc2\x0e\xae\xbc\x06\x62\x07\xd7\x6b\x81\xb1\x43\x5c\xf5\x8f\x74\x8a\x6f\x8a\xb7\x06\xb2\xcb\xe0\xbe\x18\x40\x7b\x5c\xbb\xbd\xc5\x1a\x09\x65\x5f\xb9\x46\x60\xd9\x28\x37\xae\x2a\xba\xb0\x2f\x49\xff\x79\xe4\x73\x2b\x88\x35\x11\x77\xbf\xef\xf7\x2a\xfc\x6c\x2d\xb5\x0e\x2f\x5b\x0b\xb6\xc1\xc7\xd6\xc2\x6b\xf0\xb0\xb5\x5c\xcb\xfa\x2f\xfa\xd9\x4b\x2f\x36\x8b\xae\xd2\x8c\xa5\xfc\x75\xba\xb1\x43\x3a\x2e\xfe\x3d\xae\xea\x3f\xbd\xe9\x56\xf5\x92\x33\xff\xf6\xf2\x0d\xa4\xfd\xfb\x6e\x38\x7e\x43\x39\xff\xab\xac\x87\x93\x8a\xc4\xe4\x7e\xd1\xd9\xfb\x16\x2b\xa5\x56\x5f\x20\x65\xad\x8f\x3d\x4b\xbe\xe5\x78\xa9\xe4\xb2\x80\x0b\xc5\xc3\xb4\x2b\x38\x25\x8d\xc6\xc3\x59\x6f\xa5\xf6\x4a\xc9\xfb\xe1\xf0\xbe\xae\x0e\x2a\xda\xef\x95\xe3\xe1\x64\x78\x37\x3d\xa8\xf4\xf0\xc3\xb4\xd8\x56\x10\x65\xc5\xde\xe0\x7e\x27\xc9\x5e\x93\x9f\x11\x98\x37\xb8\xca\x7a\x99\x34\x85\x7b\x8b\x2d\xa0\x62\x6f\x51\x9a\xff\xbd\xa5\xe6\x40\xbc\x51\x72\x9e\xb3\x17\x08\x36\x4a\xae\x02\xc2\x22\x7b\x1d\x18\x32\x39\xd9\x35\x99\x04\x99\xd3\xe1\xb0\xbe\x2d\xc6\x59\xf7\xf8\x65\x9f\xb5\x22\x83\xce\xb0\x9c\xf0\xba\x37\xf8\xc0\x8a\x06\x0b\xf6\xd6\xa9\xab\x62\x3c\xd8\x5b\x69\xd9\xb2\xf0\xc0\x7e\x56\xab\xb4\x75\x93\xb1\xb6\x99\xe0\x39\xe6\x1e\x1b\xfb\x7c\x85\x6c\x1e\x5d\x79\x8d\x9a\x1e\x5d\xbf\x85\xc8\x1e\xdd\xc6\x2a\xed\x3d\xba\xfa\x26\x49\xa6\x02\x6d\x54\x91\x36\x00\x51\x5d\x69\x0b\xc7\x3f\xaf\xbe\x5e\x6a\x3d\x34\xff\x6a\xc1\x2c\xe7\xed\x6f\x71\xb5\xe0\xee\x46\x97\x18\xc1\xfe\x86\x37\x0b\xef\x6e\x3c\x11\xe9\xfd\xed\xae\x94\xdb\xdd\xe4\x02\xdd\xf7\x37\xbb\x51\x76\x4f\xd3\xc3\xd1\xb0\x1e\xde\x7f\xe6\xfd\x6a\x3a\xee\x21\xea\x0d\x13\x41\x49\x4b\xda\xa6\x2f\x77\x2e\x87\x83\xfa\x73\xd2\x0c\x89\xe3\xa5\x90\xd7\x4d\xb3\xad\x55\x56\xcb\x2c\x87\x55\x1c\x57\xa3\xaa\x98\x5e\x0e\x86\xf9\xdb\xeb\xa5\xbc\xd1\x30\x85\x67\xb9\x2c\x2b\xba\x6f\xf5\x87\xce\xf0\xe3\x60\x32\x1d\x57\x45\x9f\x97\xc3\xc1\xb4\xe8\x0d\xaa\x31\x83\x24\x86\xf7\x66\x6c\x2e\xfe\xcf\x07\xb3\xb7\x46\xa2\x93\xcb\xc6\xb5\x7b\xab\x0c\xe8\x7a\xda\xa3\xaa\x64\x16\x77\x78\x85\x4c\xc6\xf7\x54\xe8\xf4\x56\x4d\xa3\x57\x64\xc4\x1f\xea\xe1\x7d\x6f\x90\x09\xfc\x7f\xa5\x2d\x41\xda\x13\x6b\xb8\x52\x5a\xe1\x1f\x9a\x85\x5f\x1a\x07\x91\xd2\xe4\xac\x71\x4f\x74\x75\xd1\xe8\xd6\xd2\x73\xf8\xd9\x5d\x3c\xc7\x48\x82\xc9\xa8\x18\x7f\xa0\x23\xe5\x0f\xd5\xe7\xb5\x4a\x0f\xa3\xe3\xd6\x78\x77\xf9\x96\x15\xde\x5d\xa1\x65\x7d\x77\x57\xd8\x58\xdd\xdd\xc5\x37\xd6\x76\xf5\x04\xf4\x6d\xb1\xbc\xa6\x0b\xce\x7e\xed\x9b\x0d\x5a\xd6\xd5\x1b\x3a\x78\xf5\x69\x34\x9c\x54\x1d\x3e\x2a\xa6\xdd\xa5\x63\xc6\xb7\x90\x70\x90\x6d\x6e\xaa\x9e\xda\xc4\xf1\xf5\x90\x7d\x1f\x5d\xab\x53\x43\xd1\xe9\x8c\x51\x85\xea\x1c\x3f\xd6\x4e\x0d\xb7\x55\xb7\x98\xf5\x86\xe3\x13\xab\x93\xe8\x74\x6a\xdf\x0d\x8c\x9e\x58\x1d\xf9\x73\x22\x79\x27\x36\x40\x07\x22\x27\xd6\xad\x87\xe5\x87\x14\x0f\xeb\xc4\x06\xfa\xd5\xa4\x7b\x62\x55\xe4\x6b\xa7\x56\xdd\xc0\xda\x23\x2a\x67\x0c\x3e\xb9\xf6\xf4\xd4\x17\x1e\x0d\xc7\xd3\x53\xab\x8e\x87\xd3\x61\x39\x3c\x15\xc6\xa6\xd3\x53\x6b\x36\x3b\x16\xc7\xd4\x6e\x4e\x13\x16\x88\xb1\xb9\x03\xb9\xb7\x72\x86\xea\x13\x6a\xce\xd7\xf7\x94\xba\x1b\xa7\x51\xa7\xb4\x32\x9f\xb4\xe3\xeb\xa2\xa4\xfd\xa6\x5f\xfd\xd2\x56\x77\xc7\x26\xfe\x31\x1b\xf8\x2b\xc7\xbd\x87\x16\xee\x54\x83\x4d\x66\xb0\xff\xb0\x77\xff\x66\xfc\xda\xcd\x56\x87\x57\x48\xa7\xd5\xc7\xd6\xa2\x2d\xea\xbd\x95\xd6\x77\xc5\x57\xfa\x3c\xa1\xde\x9e\xd9\xdb\xdc\x49\x4f\x2f\xd7\xbe\x95\xde\xba\x39\xce\x89\x92\x4f\xaa\xa5\xce\x09\xb0\x52\xac\xfc\x25\x19\xe3\xc7\x63\xa4\x84\x93\x1b\x7d\x89\x96\x5a\x25\x89\xe3\xdb\xd9\x2d\x5b\x9c\xd4\xde\x2e\x69\xe3\xa4\x06\xb7\xcb\x1f\xa7\x35\xb7\x43\x22\x39\xa9\xc1\xdd\x32\xca\x49\x4d\x6e\x95\x5a\x4e\x6a\x6d\xb7\x1c\x73\x52\x93\xdb\x24\x9b\x93\x1a\xdb\x26\xeb\x9c\xd6\xd8\x56\xe9\xe7\xa4\xe6\x76\xc8\x43\x27\xb6\xd7\x2e\x21\x9d\xd6\xd8\x16\x99\xe9\xb4\xc6\x76\x48\x51\x27\x35\xb8\x45\xae\x3a\xa9\xad\x1d\x92\xd6\x11\xed\x1d\x22\x7b\x9d\xd0\xdc\x56\x69\xec\x84\xb6\x76\xc8\x67\xa7\xb4\x76\x88\xc4\x76\x42\xbb\x3b\x64\xb8\xe3\x5b\xdb\x25\xd5\xcd\xf7\x0f\x7a\x83\xc9\xb4\x18\x94\x55\x6a\x72\x37\xdb\xda\x5e\x69\x17\x6f\xda\x5e\x6b\x3b\x03\xda\x51\x67\x07\x97\xd9\x5e\x6b\x37\x2b\xd9\x5e\x6f\x2b\xbf\xd8\x5e\x65\x37\x53\xd8\x5e\x6f\x1b\xe5\xdf\x5e\x63\x1b\x79\xdf\x51\x63\x2b\x0d\xdf\x5e\x67\x07\xa1\xde\x55\xa9\x9d\x1a\xef\xa8\xb1\x85\xe4\xee\xa8\xb1\x83\xae\x6e\xaf\xb5\x85\x78\x6e\xaf\xb0\x83\x42\x6e\xa9\x74\xdc\x9e\xd8\xc1\x8d\x9c\x52\xb3\x55\x9a\xdd\x5f\xef\x24\x32\x70\xf8\xde\xd8\x41\x0d\x1c\x4d\x1c\x0e\xdf\x1f\x3b\xa8\x81\x93\x48\xc6\x81\x7b\x64\x07\xd5\x3e\x89\x90\x1c\xb6\x4f\x76\x50\xe5\x23\xc9\xcb\xa1\x7b\x65\x07\x55\x3f\x9e\xe8\x1c\xb6\x5f\x76\x58\xe5\xe3\x48\xd1\xe1\x7b\x66\x07\x35\x70\x1c\x81\x3a\x78\xdf\x6c\x47\xfd\x43\xa4\xb7\x03\xaa\x6f\x95\xd6\x0e\xa8\xbb\x43\x3a\x3b\xa4\xf6\x21\xd2\xd8\x01\xed\xec\x90\xbe\xf6\xd7\x6e\x95\xb6\x96\xdd\x06\xe0\xb6\x28\x3f\xd0\x39\xd4\xdb\xc5\xdd\x50\xcb\xf9\x73\xbb\x84\x2d\xf9\x0b\x23\x84\xf6\x02\xdd\x35\x43\x8d\x75\xc3\x0d\x1c\x31\x2f\x87\x75\x9d\x9c\xe6\xde\x3e\x67\xab\xe6\xc4\xb6\x9e\xd1\xc0\x2a\x2b\x3b\xb6\xfa\x16\x8e\x76\x42\x33\xad\x8c\xed\x84\x76\x5a\xf8\xdb\x29\xad\xb4\xb1\xb9\x13\xda\xd9\xc2\xed\x4e\x68\x69\x93\xe9\x9d\xd0\xc8\x16\xde\x77\x42\x4b\x1b\x2c\xf0\x84\x36\x36\x38\xe1\x29\x6d\x6c\x32\xc4\x13\x5a\x69\xe3\x8b\x27\x35\x33\x7d\xf6\xa4\x6c\x70\xc9\x53\xda\x68\x63\x96\x27\xb4\xb3\xce\x33\x4f\x68\xa2\x8d\x75\x1e\xdc\xcc\x4e\x0e\x7a\x74\x2b\x9b\x8c\xf4\xe8\x26\xda\xf8\xe9\xf1\x8d\xec\x64\xab\x47\x37\xd7\xc6\x5d\x8f\x6d\xa4\x95\xc9\x2e\xb9\xde\xb5\xd9\xf6\xad\xe4\xf7\x26\xf9\xfa\xd3\xb7\xad\xd9\x6d\x76\x7e\x87\x78\xfb\xc2\xdd\xb0\x3e\xd4\xda\xb7\x89\xe2\xb6\x6a\x29\xbe\x5c\x61\x3e\x55\xeb\x1c\x7d\xc3\x87\x8e\x1d\xe0\x51\xb6\xf4\xa6\x47\xb8\xe0\xb5\xcf\xe4\x31\x0d\xb4\x4d\xf5\x31\xf5\xb7\xac\xc5\x41\x2d\x1c\xd1\xe5\x25\x7d\xab\x3a\xeb\x15\x97\x3d\x0e\x17\x2b\xb0\xee\x70\xb8\x91\xd3\x1b\xdc\x0d\x37\x12\x77\x08\x52\xab\xde\x86\x1b\xe9\xeb\x96\x3c\x87\x7a\x10\xb6\x2e\xdf\x33\x56\xee\x59\x8b\x76\xcc\x7a\x9d\xb2\x54\xeb\xe6\xd1\xe9\x34\x73\x4e\x8c\xf7\x59\x53\xa7\xe2\x89\xea\x1e\x56\xb6\x21\xaf\x87\x95\x6e\xb0\x79\xbd\xf4\x8a\x81\xda\x8a\xc5\x15\xca\xf3\x0f\x13\x6e\x84\xde\x29\xe0\xcf\x8b\x99\x9d\xc5\xa6\xc5\x7d\xde\xcd\x5a\x82\xbb\x0d\xab\xcc\xec\x9a\xb2\xe2\x03\xb2\xc5\x74\x73\x5f\xa9\xc6\x88\x0c\xae\x3d\x9f\x16\xe3\xfb\x6a\x57\xbf\xf3\xc2\x9d\x6a\xf0\x79\xb3\xf8\xe7\x51\xc5\xc7\xd5\xac\x2a\xea\x14\xe2\x64\x0e\x03\x6b\x63\x58\x2a\xd7\x92\xb3\xdd\x43\x76\x51\xb0\xb1\x6b\xdf\x1a\x5c\x7a\x5e\x74\xd5\x5a\x9c\xda\x49\xbe\x18\x45\x6f\xc0\x07\xc5\xac\x31\x79\xdf\x52\xa1\xc5\x8c\xfd\xae\xaa\x3a\x73\xf5\xf0\x08\xf3\xf7\x24\x55\x4e\xd8\x5a\x24\x8e\x1d\x1d\xaf\xda\xb5\x6f\xe9\x77\xcd\xed\x77\xde\xdc\xde\xa0\xb9\x2b\x29\xc5\x6a\xbd\x6d\xbc\x72\x25\xb4\xe9\x0a\x53\xdc\xe9\x93\x7b\x14\xeb\x3b\xd5\xbb\xb7\x8d\x8c\x9e\xdc\xd6\x26\x59\x3d\xb9\xa9\x36\x32\x7b\x42\x63\xa7\x0d\x64\x0b\x19\xde\xed\xf8\x7c\xc2\x72\x9d\xe0\x43\xbd\x7d\xbd\x4e\x69\x6c\xdb\x82\x9d\xd2\xd6\xf6\x15\x3b\xae\xb5\x13\x87\xb2\x6d\xcd\x3a\xc8\x1d\x96\x77\x21\xe6\xf7\xad\xf6\x8b\xc9\x87\x4d\xd3\xf9\xf6\xd4\x95\x3a\x6b\x26\xf5\xaf\x5b\x13\x97\x4c\xf0\xcb\x61\x3d\x1c\x5f\x96\x0f\xe3\x71\x35\x98\xbe\xc3\x1f\x4f\x3b\x6d\x9c\x96\x62\x22\xb5\x6d\x74\x6e\xb7\x8b\x3a\x28\xbc\x75\x13\x09\x7b\xa7\x4b\x29\x6b\xe2\x4e\xa5\xb1\xcc\x99\xc8\xca\x15\x08\x46\x88\xcd\xd7\xfc\xa1\xba\xad\xaa\x3b\xf5\x7a\xd6\x9b\xf4\x6e\x7b\x75\x6f\xfa\xf9\x92\xbe\xd6\xd5\xeb\x51\xd1\xe9\xa0\xa8\x27\x98\x19\x7d\x3a\x3b\x22\x9c\x1d\x11\xbe\x47\x47\x84\xad\x11\x2c\x9e\xe7\xa2\x50\x0c\x7a\xfd\x22\x51\xc4\x7c\x87\x03\x7b\xa8\x17\xc1\x31\x1e\xa6\x5d\x7e\x37\x1c\xf7\xdf\x8e\x52\x40\x11\x92\x75\x7f\x5c\xaa\xfe\x85\xa2\x67\x9c\x5d\x26\xce\x2e\x13\x67\x97\x89\xb3\xcb\xc4\xd9\x65\xe2\xec\x32\x71\x94\xcb\xc4\xef\x1b\x6c\xe9\xeb\xf2\xd5\xf8\x4f\x0a\xfc\x54\x9f\xdd\x53\xce\x31\xb0\x4e\x88\x81\xb5\xd3\x73\xe7\xc4\xe0\x59\x67\x8f\x9f\xb3\xc7\xcf\xd9\xe3\xe7\xec\xf1\x73\xf6\xf8\x39\x7b\xfc\x9c\x3d\x7e\xce\x1e\x3f\x67\x8f\x9f\xb3\xc7\xcf\xd9\xe3\xe7\xec\xf1\x73\xf6\xf8\x39\x7b\xfc\xb4\x55\x3e\x7b\xfc\x9c\x3d\x7e\xce\x1e\x3f\xa9\xf6\xde\xd3\xc4\xd5\x62\x07\x05\x1e\x7f\xb9\xa8\xdf\xbb\xda\x3c\x87\x06\x7f\xf1\xd0\xe0\xfb\xe6\x7c\x77\x08\xf1\x95\xcb\x68\x7a\xff\x2e\xeb\x62\x32\xf9\xd3\x1b\x32\x23\xf8\xe5\xed\xb6\x40\xe3\xe7\x58\xdf\x5b\x62\x7d\xef\x8a\x00\xfd\xdb\xc4\x01\x3f\x7b\xe5\x9d\xbd\xf2\xce\x5e\x79\x67\xaf\xbc\xb3\x57\xde\xd9\x2b\xef\xec\x95\xf7\x0c\xaf\xbc\xf5\x0b\xf7\x30\xa1\x37\xad\xfa\xbf\x1c\xe0\xb7\x77\xe4\x8d\x1b\x67\x3f\xbf\xaf\xd4\xcf\x6f\xe9\xe2\xb4\x96\xe5\x3f\xd2\x55\xf0\xcb\x5e\x9e\xf2\xb5\x39\x12\x7e\x53\xf7\xb7\x7c\x97\x4e\x8f\xbb\x80\xf7\x14\x97\xc9\x6f\xfb\xe6\x9a\xef\xce\x89\xb3\xdd\xed\xf2\xcb\xdf\xcf\x33\x1d\x0e\xeb\x69\x6f\xd4\x5c\xd3\xdd\x59\x71\x08\xfc\x16\xfd\x3e\xbf\xbc\x3f\x67\xde\x54\xc9\xfe\xb4\xbf\xec\xf2\xa6\x7d\x79\xdf\xcf\x53\xae\x3d\x3a\xd5\x5f\xf4\xb0\xeb\x92\x5e\xd8\xc9\xf4\x84\xfb\x96\x0e\x7e\xbf\xd3\xaf\x69\xda\xe6\xe3\x7a\xbe\xbe\xe9\xcb\x5d\xdf\xf4\x1b\xfb\x0f\x9f\x6f\x8b\xfa\x4e\x6f\x8b\x3a\xbb\x84\x7f\x31\x97\xf0\x1d\x42\xe9\xf3\x1d\xcc\x5f\xfa\x96\xaf\xb3\xcf\xf9\x6f\xe2\x73\xbe\x17\x26\x4e\x75\x61\xdf\xf4\x3e\xef\xf4\x26\xa3\xba\xf8\x7c\xd9\x1b\x90\x4c\x7d\x5b\x0f\xcb\x0f\xaf\xcb\x21\x59\xb0\x5f\xbe\x7a\xd5\xe6\x37\xbd\xe4\x63\x4d\x97\xa5\x67\x47\xd4\xd7\x1f\x7b\x9d\x69\xf7\x52\x82\xaa\xfa\xaf\xbb\xc9\x25\x3b\xfd\x98\x55\x63\xd2\x29\x78\x51\xf7\xee\x07\x97\x74\x2c\x36\x1d\x8e\x9e\x76\x88\x7d\xab\x5e\xf1\xbd\x7e\x71\x5f\x5d\x3e\x8c\xeb\x3f\xfe\x37\x64\x94\x97\xf4\xfb\xcf\x93\xd9\xfd\x7f\x7d\xea\xd7\xaf\xcb\x6e\x31\x9e\x54\xd3\x37\xff\xfc\x9f\x3f\xf3\x70\xf1\x97\xc9\xec\x9e\xcd\x7a\xd5\xc7\xbf\x0e\x3f\xbd\x79\x25\x98\x60\xca\x30\x65\x5e\xb1\xbb\x5e\x5d\xbf\x79\x35\x18\x0e\xaa\x57\xec\x53\xbf\x1e\x4c\xde\xbc\xea\x4e\xa7\xa3\xcb\x3f\xff\xf9\xe3\xc7\x8f\xf0\x51\xc3\x70\x7c\xff\x67\x25\x84\xc0\x86\x5f\xbd\xfd\x0b\xed\x0e\x63\x25\x3e\x7e\xa8\xab\x37\xaf\xaa\x59\x35\x18\x76\x3a\xaf\x58\x59\xf7\x46\xeb\x69\x9d\x37\xaf\xde\x4b\xc9\xa4\xed\xaa\x99\xea\x72\x35\xe3\xea\xb1\x2f\x78\xe8\xaa\x99\xeb\x72\x75\xe3\x1f\xfb\x10\x23\xb7\xef\x1c\x18\xcf\x14\x53\xcc\x81\x09\x4c\x31\xa9\x26\x06\x93\xa4\x60\x11\x62\x64\x52\xbc\x93\x1e\xac\x62\x8a\xfe\xcf\xbf\x4b\xf5\x8f\xfc\x9d\x49\x89\x05\xd5\xe3\x7b\xa9\x98\x12\x25\x37\x60\x14\x13\x3c\x70\x0d\x36\xf0\xc0\xc3\x24\x7d\x61\xf4\x61\xf8\x83\xe1\x8f\xf4\x05\xd3\x1e\x9b\xd9\xf8\x83\xd2\x42\x88\x57\x7f\x7e\xfb\x17\x7c\xe9\xb7\xff\xed\xc7\xd7\xe7\xf9\xfe\x4d\xe7\xfb\xe9\xe0\xcb\xa3\xf7\xdf\x02\xbb\x7c\x05\xe3\x8b\xac\xe0\xc1\xab\x46\xab\x11\xc1\x6a\x29\x99\x92\xef\x94\x04\xe1\x65\x60\x4a\x32\xa5\x40\x68\x1d\x99\x8c\xa0\xb5\xd4\x4c\x49\x50\x8e\xa6\x39\x46\x1f\xaf\xa5\x06\xaf\x45\x60\x06\x62\x88\xce\xbd\x93\x0a\xa2\x13\x96\x69\x70\x36\x8a\x88\x53\x2f\x74\x5c\xfa\x2d\x40\xb9\x28\x9b\xf2\xd7\x0a\xbc\x0e\xc2\x34\xed\xbd\x93\x10\x9d\x43\xb8\x68\xba\x83\xa8\x02\xae\x2c\x56\x31\x2e\x84\xc8\x94\xbc\xca\x43\xfd\xd7\x7b\xa9\x99\x0c\x57\x52\xde\x48\x77\x25\xf5\x8d\x0c\x29\xc9\x50\x92\xa0\x24\xf3\xaf\xa5\xb5\xbb\x2b\xc2\x9d\xf6\xcb\xcb\x77\x7c\xb0\x85\xe3\xfc\xf7\xb7\xec\x26\x7e\x01\xf2\x78\x5e\xec\x7d\x8b\xfd\x82\xb4\xf1\x3c\xd9\x7b\x31\xeb\x37\x72\xc5\x7e\x19\x77\x80\x2f\xe5\xed\x71\xbc\xb9\xdc\xb3\x4d\x14\x9f\x75\x3e\xf9\xc2\x07\xc9\x6d\x63\x39\xe8\x3c\xef\xb8\x2d\xe5\x83\x37\x2e\xbf\x49\xa9\x94\x50\x92\x29\x59\x4a\xb0\x06\x3b\x06\x2b\x34\x97\xe0\x5c\x64\x12\xbc\x96\x5c\x83\x10\x2a\x51\x0c\x22\x00\xb1\xe4\xe0\x3d\x97\xa0\x35\x57\xe0\xa2\x4c\x5f\x35\x18\xa7\x98\x48\xa4\x21\x11\x86\x90\xe8\x42\xa2\x0a\x89\x26\xcc\x29\x02\x53\xb2\x2b\x2d\x08\xa7\x1f\x13\x39\x48\x62\x1a\x0a\x6c\x28\xaa\x19\xfa\x69\xba\x6a\x66\xbe\x13\x71\xf4\x5b\x9e\xe8\x96\x08\x60\x87\x87\x44\xf8\x7d\x05\x4f\xcd\xa4\xee\x4a\x03\xaa\xe6\x1a\x1c\x32\xb4\x6b\x69\x99\x0c\xb5\xe3\xe9\x9f\x04\xc3\xf0\x93\x73\xaf\xf4\x4c\x2d\x4f\x84\xaa\x6e\x85\x8e\xbb\xe7\xe2\x34\xaf\xff\x53\x1d\xf8\x0f\x73\x37\xff\xbd\x65\xc0\x17\x9f\xf7\xdf\x4b\xbe\xfa\x02\x00\xb4\xdd\x4a\xa5\x31\x39\x4e\x67\x58\x98\xf3\xbf\xca\x7a\x38\xa9\x7e\x79\x71\x24\xfa\x0d\x08\x1e\x2a\xd5\xf2\x1a\xf5\xe4\xc8\x2c\x93\x0a\xa5\x48\x9b\x52\x99\x65\x36\x7d\x49\x69\x52\x61\x09\x3f\xcf\x96\x94\x24\x35\x7d\xa7\x64\x99\xfe\xa7\xef\x29\x5d\xb1\xdc\xc7\x4e\xc2\x95\x4f\xac\x77\x9a\x1a\xaf\x6b\xd9\xf9\x10\x76\xdd\x68\x7b\xbd\xd4\xa7\xde\x64\x3a\xd9\x28\xb6\xcd\x7a\xfb\xf7\xa5\x83\x96\xe9\x2b\x19\xdf\x29\x01\x92\xa1\x3a\xc0\x34\xa0\x4c\xce\xec\x0d\xa6\x4a\x46\x19\xe9\x41\xd3\xaf\xe4\x95\x7d\x97\xcb\x68\x96\xab\xc9\x78\x63\xdf\x69\xaa\x4a\x1f\x66\x99\xfe\xd7\x7b\x69\x69\x51\xfc\xb5\xf4\x8c\xbe\x5f\x37\x0b\x84\x29\x81\x80\x80\x8a\xf8\xeb\x06\x08\xae\x31\x95\xf9\xeb\x26\x3b\x03\xc1\x75\xd3\x40\x48\x0b\x7f\xdd\x00\xc1\x75\xd3\xc7\xb2\x56\x50\x7a\x6d\x8c\x3d\x4a\xdf\x3e\x36\x82\xdf\x46\xf9\xa3\xa2\xee\xb4\x9b\x1a\x1d\x75\xf4\xfe\x7b\x93\xf1\xff\x04\xb0\xf9\xbd\x38\xcb\x7f\xc2\xdc\x1e\xa3\xa8\x9f\x14\x10\xf0\x85\x23\x1f\xbc\x78\x34\x95\x67\xf8\xf6\x9d\xee\x44\xfb\x32\xa6\xd6\x2f\xe5\x40\xb1\x73\x34\x47\xd9\x99\x7d\x8b\x1a\xb6\x65\x28\x3e\x96\x12\x24\x76\xca\x10\x7d\x99\x9a\x49\x53\x0a\x26\x41\x72\xfc\xcd\x15\x53\x57\xb6\xe4\x54\x86\x2b\x0e\x91\x2b\xae\x6e\x6c\x29\x30\x09\x7f\x61\x99\xc7\x7e\xc6\x49\x33\xc7\xea\x25\x49\x28\xa1\x6d\x4e\xf6\x0b\x69\x2b\x61\x35\x6b\xb2\x1b\x69\xab\x69\x20\x63\xf5\x92\xb4\x95\xb1\xfa\xfb\xd0\xba\xbf\xbb\xc9\x7f\xda\x1e\xb2\x77\x43\x3e\xcd\xb6\xc7\x1b\x02\x6a\xb6\xb4\xfc\x7a\xcf\x8a\x14\x53\xef\xf2\x81\xdc\xd2\xc9\xdc\xbb\xe6\xfc\x2d\xa5\x60\x12\x53\x6a\xdb\xf9\xdc\x3b\x95\x0b\xce\xcf\xe9\x14\x53\xff\x7a\x2f\x05\xf2\x30\xd4\x46\xae\x17\xea\xc7\x35\xa6\x1a\x20\x76\x99\x54\x10\x1b\xae\x65\x64\x81\x32\x56\x18\xdc\xa6\x36\x77\x7c\x04\xee\xe3\x42\x3a\xef\x91\x38\xd7\x76\x0b\xda\xcd\xce\x7f\x6f\x29\xf2\x9b\x5a\xd1\xdf\xed\x20\xe7\x5b\x9a\xa4\x63\xe4\xba\x53\x02\x07\xbf\x40\x50\xda\x5d\xd1\x97\x7e\xc7\x88\x69\x5f\x24\x1e\xd6\x69\x91\xa6\x4e\x0b\xf2\xf1\x22\x21\x23\x5a\x07\xfc\x5b\xfb\x7a\xbe\xa4\x23\x60\xeb\x0b\x1d\xe3\xe9\xf0\x2d\xca\xb6\x5b\x48\xd6\xc4\x10\x05\x12\xf3\xff\x3c\x27\x70\x29\xfe\xb1\x4c\x98\x1e\xfb\x5c\x31\x69\x6b\x6e\xb9\x65\x12\x8c\xe4\x32\xe9\x9e\x89\x2e\xd5\x48\x96\xb8\x27\x52\x15\x59\xa8\x79\x64\xf1\xfb\x90\x4b\xbf\xaa\x89\x7b\xda\xeb\xfc\xf9\x4c\xff\xc3\xd3\xab\xbe\xb8\x25\xef\x8b\xd8\x80\x7e\x8b\xa8\x1a\x99\x74\xc8\xea\x0d\x04\xcd\xa4\xaa\x11\x60\x14\x81\xce\x75\x4c\x9b\x4b\xcc\x53\x62\x06\xa5\x5c\xfe\xfb\x40\xb7\x17\x7f\xf9\xa7\x2f\x63\x40\xfd\x0d\x9e\xf2\xb8\xa4\xc8\x22\xa5\x21\x2d\x56\x7a\xe6\x51\xc2\x0c\x24\x51\x32\x29\x6a\xc7\x1c\xcb\xe7\x64\x69\x7a\x77\x52\xa2\x63\xbd\x84\xbf\xac\x8b\xc1\xb3\xa8\xc7\xb7\x4c\x2e\x5e\x76\x5d\xbf\x25\x5a\xf1\xd2\x10\xbd\x6c\xc5\x0e\x73\x27\xba\xb7\xcf\xf4\xc1\xfa\x26\x61\xca\x82\x17\x16\x49\x6b\x08\xb6\xe6\x06\x6c\xc0\x47\x64\xf3\x6f\x8b\x19\xe5\x34\xc7\x38\xdd\xdf\x19\x74\x7d\xa1\x39\x78\x3a\xec\xce\xb5\x6f\x11\x6c\x02\xa8\x68\x99\xc7\x79\xab\x71\x96\x18\xcd\xd2\xfc\x1b\xcd\x4e\x7a\x2c\x59\x64\xa4\x94\xef\x03\x66\xbe\xc8\x04\x1c\xc0\x6a\xf7\xdd\xef\x7c\x44\x9d\x2f\x7f\xa1\xe9\x61\x8d\x7c\x8b\xf0\x4f\xcc\x47\x3a\xe2\x46\x49\x6e\x25\x0e\x25\x1d\x93\x01\xd5\x3d\x1b\xeb\xb4\xec\xcc\x5d\xe7\xb2\xdf\x07\xdc\xbf\xe8\x8b\x3f\xed\xbd\x63\xb4\x86\xbb\xa2\x57\x93\x25\x46\x67\xfa\x82\x92\xb8\x66\x4a\x1c\xbf\x15\x2c\x35\xd8\xe0\x6a\xcd\xf5\xb5\x74\x60\xa4\x21\xbd\x45\x33\xfa\x47\x16\x68\x11\x53\x6b\xae\xf1\x1f\xd3\xd7\x1e\xcb\x33\x19\xb0\x0a\x57\xe0\x2d\x3d\x88\x0a\x18\x22\x08\x86\x51\x02\x3e\x1e\xdf\x4b\x0d\x51\x58\x08\xd6\x95\x0a\xbc\x70\x60\x62\xa2\x26\x58\xc0\x1a\xc3\x0c\x04\xe9\x98\x05\x67\x6a\x50\xda\x80\x70\x58\xd2\x38\xf0\xd6\x30\x0d\x21\x50\x73\x91\x69\xb0\xcc\x82\xd0\x8e\x83\x31\x54\x39\x2a\xae\x40\x04\xcd\x0c\x68\x2f\xb9\x85\xe0\x5d\xfa\x3e\xe3\xaa\xb4\x20\xc8\xfc\xd5\x40\x70\x81\x5b\x6c\x51\x69\xee\x40\x5a\x05\xca\x60\x55\x45\x36\xaf\xca\x23\x3b\x74\x2a\x70\x0d\xca\x79\x6e\x20\x46\xcb\x25\xf8\x10\x79\xb2\x82\xf5\xd6\x83\x75\x06\x09\xa1\x57\x4c\x81\x74\xf8\x9e\x4e\x45\x0e\x5e\x79\xae\xc0\x09\xcb\x41\x1b\xcb\x35\x18\xa3\x40\x3b\xc5\x21\x68\x87\xaf\xcb\xc1\x2a\x8f\x75\xa2\xe1\xa0\x14\x8e\x3b\x28\xcd\x25\x88\x10\x21\x4a\xec\x28\x0a\xc9\x14\x08\x89\x93\x29\x2d\x76\x10\x83\xe7\x20\x85\x04\x1d\x2d\x07\x11\x91\xc4\x0a\x89\x2f\x23\x41\x49\x05\x46\x05\xb2\xbc\xc5\x54\x64\xda\xf8\xd6\x46\x68\xfc\x36\x53\x25\x37\x20\xa5\x67\x82\x5b\x70\x5e\x71\x88\x8e\x3b\x30\x26\x70\x05\xc1\x1b\x0e\xce\x2a\x1c\xbe\x04\xa9\x3d\x8e\xd8\x7a\x26\x21\x04\xc5\x2d\x48\x19\x38\x2e\x0a\xbe\x3e\x2e\x85\xc4\x39\x89\x98\xaf\xa3\xe4\x06\xe7\xa7\x30\x10\x50\x88\x08\x91\x09\x26\xa4\x06\x87\xf3\xe4\xfd\xbb\x08\x4a\xa1\xaa\xab\x1c\x22\x91\x13\x1a\x8c\x96\x6c\xbe\xfc\x76\x19\x63\xdc\xcf\xde\x05\xf5\x6a\x19\x49\x07\xc3\xc1\x63\x35\x1e\x1e\x64\xff\xfa\xdc\xeb\x9d\xda\xeb\xfd\x36\xb1\x7b\x0f\x8c\x98\x7b\x68\x64\xd5\xe7\x06\x9e\xf8\x12\xb1\x0d\x5e\x8e\xa4\x21\xf9\x0d\x87\x91\xb4\xfb\x15\x36\xd1\x42\xfd\x97\xa8\x5e\x00\x17\x35\x93\x02\xbc\xf0\x85\x84\xe0\x10\x6e\xf1\x29\x98\x64\x92\x83\x10\x0e\xd1\x5e\x19\xb6\x9a\x89\xd9\x98\xc9\x28\x73\x09\x9e\xa3\x93\x7f\xb3\x74\x6a\xb5\x44\x59\x41\x6b\xc7\x22\x78\xef\x0a\x08\x56\xe3\x27\x75\xc0\x04\xe2\x97\xf0\x4b\xa9\x98\x8e\xd8\xed\x85\x47\xc9\xdd\x69\xf2\x84\xb2\x76\xa3\x2a\x08\xe9\x39\x08\x5f\x72\x10\x12\x84\x52\xe9\xaf\x31\xf8\xd7\x03\x56\x47\x82\xa7\x59\x00\x9d\x6a\x13\xf2\xa5\x2e\x38\x44\x65\x89\xe4\xc5\xd5\x0c\x26\xc1\xda\x08\xca\xda\x12\x84\x42\xfa\x01\x42\x79\x44\x68\x10\x22\x82\xd6\xba\x80\xa0\x24\x7e\x9a\x96\x9c\x21\x4f\x81\xf7\xd2\x43\xf4\x1e\x47\x6b\x9c\x2f\x20\x98\x88\x9f\x3c\x93\x12\x9c\xe7\xa0\xa2\x5b\x4a\xa7\x49\x8c\x41\x71\x70\x51\x95\x60\xb4\x06\xe1\x35\x78\x03\xc6\xa1\xce\x12\x91\x60\x14\xa0\x94\xc4\x0f\x55\x10\xf8\x72\x0e\x84\x77\xd8\x9d\x0a\x0e\xdf\xce\x85\xb5\xb9\xe1\xf8\x5e\xd8\x65\x30\x6b\x33\x8b\x19\x8c\x32\x50\xe9\x76\x96\xc8\x92\xf6\x72\xbd\x01\x09\x26\x22\xe9\x56\x61\xad\x01\xca\xc0\x74\xac\xaf\x15\x32\x22\xa7\x37\xaa\x43\x20\xfe\x17\xec\x7a\xf7\x81\xec\xb6\x83\x5d\x82\x98\xbf\x39\xe5\x83\x5e\x81\x98\x00\xc1\xa4\x23\x56\x6d\x90\x88\xfb\x18\x98\xe0\x01\x5c\x40\x32\x1d\xac\xcd\xdf\x03\x38\xa9\xde\x81\xb4\x96\x19\x90\x0e\x89\xbf\x30\x16\xb4\x64\xd4\x02\x68\x59\x04\x70\xc6\xb2\xf4\x4c\x63\xb0\x79\x0e\x3c\x6d\x3f\x0a\x8b\x6c\x43\x7b\x55\x38\x64\x36\x2c\x3d\xd3\x54\x7b\xa4\xf8\x1c\x17\x82\x39\x08\x5e\xe5\xa7\xc8\xff\x10\xae\xad\x63\x1b\xf5\xd8\xa2\x5e\xbd\xe8\xc0\xe0\x50\x70\xb9\x9c\xcb\x80\xb3\x18\xc8\xe3\xe6\x74\x6c\x63\x08\xf7\x0b\xa6\xb0\x25\x7c\xcf\xb7\x28\x6f\x4b\x0d\x41\x31\xfd\x4e\x6a\x32\xec\x47\x28\x51\xa0\x11\x94\x24\x93\x25\x97\xa0\x99\xe0\x0a\x0c\xc2\x15\x42\x1f\x53\x57\x66\x6e\x3e\xc4\x92\xc1\xd0\x4c\xba\x64\x62\x94\x2c\x8e\x98\x5a\xb2\x42\xca\x56\x47\x33\x1e\x41\x68\x0e\xd1\xce\x8d\x8d\xb2\xed\x11\x57\x5d\x14\x16\xc2\xe3\xfb\xc8\xa4\xbe\x72\x33\xd5\xd5\xe4\xc1\xce\x35\x73\x5d\x3b\xe3\x0a\xd3\x1e\xdf\x3b\x16\x67\xaa\xeb\x6e\xe2\x95\x7b\xec\x5b\xee\x4a\x20\xc2\x21\x19\x18\x8b\xc3\x9d\x70\xfa\xc2\x09\x87\xf0\x3b\xc7\xef\xf4\x17\x53\x1e\xdf\x1b\xa6\xe4\x8d\xed\xaa\x99\x04\x21\x7c\x57\x0a\xfa\x61\x21\x46\xd5\x45\x12\xa3\x6f\xa4\xbf\x92\x61\x66\xae\xcc\x63\x9f\xfc\xdc\xb9\x9e\x71\x7d\xa5\x70\x38\x5d\xee\x41\xc8\x19\xca\xa7\x8a\x49\x53\x6b\x88\x91\x7d\x2f\xce\x5a\x67\x10\xf8\x12\x20\x70\x8c\xd1\xc8\x17\xb8\xda\xef\xd4\x8b\xa1\x5e\x2e\xce\x76\x6b\x4b\xdf\x24\x8d\x54\x4c\x06\xf0\xf6\x9d\xb4\xa8\x6c\xc5\xf4\xab\x79\xae\xa6\xa9\x2b\x72\x4d\x47\xed\x3d\x7a\xe1\xe6\x7f\x15\xd9\x4e\x2a\xf9\xce\x83\x50\xd1\x98\x64\xd6\xde\xe4\x6a\x26\xd5\x3b\xcd\x9a\xbc\xe6\x2f\x26\x33\x7d\x63\x41\xd9\x77\x01\x94\x57\x22\x20\x13\xb5\xe9\xb1\x92\x22\xd5\xbb\xf4\x37\x0f\xa7\xc9\x6c\x86\x95\xbe\xfc\xeb\xbd\x12\xe0\xad\x56\x2c\x42\x88\x41\x9a\x6b\x19\xc0\x3a\x4b\xa2\x93\x92\xfe\x9d\x0c\x60\x82\x22\x8b\x4e\xe1\x91\x7f\x06\xe4\xd0\x1e\x45\x48\x1d\x51\x5e\x0d\xa0\x74\xc0\xdf\x46\xba\x60\xae\x95\x00\x2d\x3d\x1d\x17\x58\x13\xfd\x3b\x25\xc0\x44\x87\xbf\x63\x70\xde\x31\x25\x50\x48\xb3\x58\x5e\x5b\x4b\x06\xfe\xcb\xdd\xff\xeb\xbd\x8c\xe0\xbc\x89\x89\x73\x0b\x75\x2d\x3d\xaa\xba\xc8\xad\x8d\x37\x46\x93\xe5\x97\x57\xd8\xa0\xf4\x4a\x93\xdb\x94\x76\x1a\xa7\x2a\x04\xeb\xc8\xf2\x4b\xa2\x8c\xeb\xc1\x49\x2f\x24\xbe\x4f\x30\x3a\x30\xd4\xb1\x4d\x74\xef\x64\x04\x69\xa2\x65\x0e\xac\x54\x69\x1f\x41\x79\x14\x1d\x42\x34\xa8\xbd\xae\x76\xff\x2f\x94\xed\x82\xb1\x28\xab\x48\xeb\x94\xb9\x46\x59\x2b\x68\x2c\xef\x9c\xf1\xef\xa4\x03\x29\x8d\x61\x0e\x9c\x76\xb8\xea\x16\x82\xf2\x28\x84\x18\x85\xb2\x92\xb4\x60\x15\x89\x26\xca\x28\xe3\xb1\xba\x17\xb4\x39\xa0\xac\xa4\xb7\x91\x22\xed\x64\x7a\x65\xe8\x6d\x4c\xda\x30\x08\x16\xd3\xd7\x7a\x27\xd7\x06\x83\x09\xa8\xe2\xaa\x18\xae\xa5\x01\x1b\xb4\x62\x16\xbc\x93\xda\xbd\x93\xa8\x0f\x0b\xac\xe0\x14\x39\xc8\x6a\x88\xd8\xb0\x05\x2b\x7d\xf0\xb4\xb1\xe2\x83\x61\x16\xe7\x5f\x78\xac\x2f\x85\x8c\x4c\x83\x32\x2e\x68\xac\x6f\x51\x40\xd3\xa0\xad\xb7\x64\x93\x2b\xa4\xd6\x4c\x83\x15\x3a\x2a\xb6\xd6\x3f\x0d\x48\x38\x11\x99\x44\xcd\x1c\x5f\x30\xed\xbb\x28\xd0\xce\xdc\x04\x50\xf6\x4a\x4a\x50\xf6\x86\xd2\x6f\xa4\x06\xa9\xdd\xb5\x94\xd8\x4b\x92\x78\x9d\xd0\x34\x8a\x10\xa9\x37\xa5\xad\xbe\x5e\x6b\xf4\x5f\x9b\x5a\xfa\x37\xca\x59\xcf\x84\xe3\x4c\x38\xce\x84\xe3\xeb\x20\x1c\x87\xb8\xf5\x77\xaa\xc1\xe7\x36\xaf\xfe\x53\xaf\x33\x7f\xc1\x5d\x28\xa4\x08\xec\x65\xb7\xa1\x16\x06\xcf\x41\xbd\x53\x7f\x6f\xce\xdf\x7c\x64\xa6\xe6\xe0\xb5\x07\x2f\xaf\xa5\x64\x1e\xac\x75\x57\xfa\x26\x80\xf5\xdd\x50\x73\x05\xd1\x78\xa6\x20\x18\x03\x5e\x3b\xf0\x52\x5e\x4b\xcd\x02\x08\xa7\x1e\x71\xc6\xc7\x55\x99\xf6\x39\x3f\x54\xd4\xfe\xbb\xe4\x28\x97\x93\x38\x05\xc7\x7b\xf3\x4a\x82\x7d\xc5\x3e\xbd\x79\x05\xde\xbe\x62\x9f\xf3\xdf\x26\xcf\x60\x66\x8a\x9c\xd7\xfc\x1a\x7f\x7a\xf3\xca\x83\xb2\x2b\x1b\x16\x1a\x10\x06\x6d\x1d\x59\x7c\x75\x60\x97\x39\xa9\xee\x0d\xaa\xb2\x18\xbd\x79\x35\xf9\x3f\x0f\xc5\xb8\x5a\xd7\xf1\xf7\x06\x3e\xa0\xe5\x3e\x39\xee\xc1\xb2\xef\xec\x4b\xca\xc4\x67\x38\xf9\x6d\xe1\xe4\x25\xc4\x91\xf3\x9a\xfd\xd6\xb8\x9d\x83\xad\x1b\xa1\xbf\xb7\xb8\x9b\xcf\x36\xb5\x16\x4c\x86\x96\xb8\x8e\x74\x5e\x10\x2c\x38\x8d\x49\x96\x49\x70\x91\x1b\x88\x28\xa8\x90\x0c\xab\xe5\x4f\x1e\xa2\x50\x2c\x3d\xf3\x9e\xb5\x62\x4a\x3c\xf6\x1d\x50\xc0\x1f\x79\xed\x81\x24\x8e\xd8\x5e\xd4\x94\xa9\xdb\xa5\xc0\x91\x74\x20\x11\x2c\x07\x47\xa2\x85\xe5\xd8\x2f\x33\x70\xb6\x8c\xff\x5e\x96\xeb\xe9\x65\xee\x28\xd8\x17\xf5\xff\xeb\x30\x36\xa6\x35\x0f\x4c\xca\xae\x9a\x45\xb0\xa5\x60\xe0\x83\xe3\xe0\xa5\x61\x12\x70\xba\x70\xa9\x6c\x97\x4b\x53\x72\xcc\xa2\x75\xb4\x54\x80\xe7\x02\x33\x2e\xfd\x3b\xcd\x14\x55\xd2\xf4\x54\xa8\x17\x30\x75\x25\xf5\x4c\x5d\xd9\x99\x74\x5d\xa9\x67\x3c\x3e\xbe\xf7\xa8\x18\x78\x69\xba\x71\x46\x56\xe0\xe1\xca\xcf\xe8\xef\x63\x5f\x70\x05\xc1\xfa\x6e\x44\x59\xdb\xe8\x9c\xe1\xa9\x8e\x6a\xca\xc7\x2b\x7f\x23\x53\xe4\x2c\x50\xc1\xdd\x38\x7c\x76\xed\x2c\xb7\xf5\xf8\x5e\x22\xaf\xb0\x37\xb2\xeb\x66\xae\x8b\xa3\xbb\xd1\x58\xed\x5a\x06\xb2\x31\xe7\xa8\x00\x58\x04\xc1\xab\xdd\x7e\xbe\x4d\x74\x90\x25\x27\x51\x5a\xbe\x14\x87\xee\x9e\xd6\x72\x21\x65\xad\x58\x99\xce\xd7\xba\xfd\xfe\xae\x67\x5f\x31\xf5\x9c\x7b\x7d\x5e\x32\x5c\xfb\x8b\x46\xfa\x6e\x41\x90\xaf\x84\xdb\x9d\x51\xe4\xab\xe4\x6a\xe7\x65\x69\xa7\x5c\x5b\x6e\x78\xf9\x3a\xd8\xcd\x71\xc1\x23\x64\xbc\xb1\x5d\x0b\xd1\x98\x1b\x7d\x65\x0b\x94\x31\xd2\x69\x7c\x8a\x22\xb1\x48\xd8\x76\xbe\x67\x21\x86\x2e\x57\x37\x32\x5e\xd9\xc7\x7e\xe4\x92\x4e\xf2\xc8\x72\x31\x42\xd0\x8c\x1e\x73\x6b\xdd\xeb\x1c\xcf\xec\x46\x8a\xae\xba\xd1\x5d\x7e\x1a\x83\x98\x5f\xd5\xb1\xc4\x21\xbe\x16\x5a\xf6\xdd\xcc\xff\xef\x4d\x7d\xbe\x9b\x89\x3c\xf8\x50\x78\xe3\x76\xec\x93\xcf\x82\xb7\xb5\xb4\xc3\x6d\xfd\xc5\x6e\xe8\x5e\x6d\xe0\x5b\x44\x4b\x69\x98\xa9\x0d\x33\x33\xa9\xae\xdc\x8d\xe9\x86\xc7\xbe\x63\xd2\xdd\x78\xf2\x46\xbe\x72\x25\x97\xa0\x6c\xb2\x84\xf0\x76\xd9\x14\x42\x59\x32\x40\x4e\x30\xa6\xca\x54\x0c\x81\x0c\x53\xc9\xba\xc1\x70\x75\x15\x66\x5c\x75\x43\x8a\x4e\xab\xb7\xfd\x7a\x1f\x58\xe8\x9a\x1b\x77\x15\x56\xa3\x6d\x7e\xbb\x48\xfa\x0d\x4d\xeb\xfe\x98\x37\x9b\x17\x79\xef\x89\x7a\xd3\x72\xf3\xf7\xe1\xb6\x22\xdb\x2b\x9f\x64\x27\xb2\xbd\xb9\xed\x36\x22\x2f\x73\x73\x79\x4b\x2b\x27\xdc\x82\xbc\xeb\x7a\xb6\xaf\x85\xe0\x20\xc4\x2b\xc1\x5c\x97\x87\x9a\x2b\xbe\x64\x3f\x25\x21\x46\x88\x3c\xdd\xaa\x72\xad\x98\x0c\xeb\x66\x54\x6e\x8d\x3b\xdd\x84\x35\xdb\x29\xda\x03\x52\x57\xe6\x26\x74\xa5\x9b\x49\xf1\xf5\x12\x88\xaf\x64\x1a\x9e\xda\xac\xe7\xbf\x16\x50\x39\x86\x88\x2a\x09\x42\xd0\xad\x17\x22\xbc\x53\x02\x3c\x93\x06\x74\x8a\x8c\xae\x64\xb2\x02\x00\x61\x2c\xd3\x25\x37\x20\x5c\x60\x82\x3b\xd0\x64\x3b\xee\x6c\xe0\x1e\xac\x0e\xcc\x83\x0b\xa6\xab\x40\x4a\x59\x82\x21\x77\x14\x23\x15\x93\x20\x3c\x45\x62\x27\xb7\x9a\x40\xd6\xe8\xce\x2a\x88\x31\x05\x69\x67\x0a\xa4\x89\x5c\x81\x50\x0a\xdb\x53\xf9\xab\x04\x43\x96\xba\x0a\x9c\x32\xe0\x62\xca\x24\xef\x12\xca\x15\xa8\x2f\xea\x40\xfe\x1e\xc2\xd3\xf9\xb1\x62\x0a\xb4\x31\xcc\x82\x05\x4b\x0d\x2b\x08\xcc\x80\x72\x16\xa2\x76\xcc\x42\x88\x01\x04\x16\xe5\x48\xff\x9d\xe5\xe0\x84\x02\x67\xaf\x2c\x78\xe3\x8a\xf4\x2b\xed\x4d\x4a\xca\xe3\xe0\x6c\x09\x82\xc6\x2a\x1d\x36\x85\xe3\xb3\x21\x80\x35\x12\x27\xc3\xfb\x2b\x0d\xce\xa8\xc2\x18\x90\x2e\xb2\xfc\x47\x30\x21\x38\x58\x27\x99\x01\xaf\x5c\xc9\x71\x16\x10\x12\x45\x24\xcb\x47\x10\x28\xf3\x45\x4d\xdf\xba\x32\x79\x0a\x49\x9c\x3b\x7a\x65\x21\x0c\x27\x5f\x1a\x2c\x43\x33\x22\x1f\xfb\x3c\x80\xb4\x8a\x5b\x70\xd1\x5e\xe9\x1b\x29\xc1\xcb\x6e\x44\x15\xf6\x1a\x9f\x91\x05\xf0\x42\xd7\x12\x64\xc0\xd1\x06\x66\x41\x90\xa9\x86\x50\x86\xd3\x33\xa5\x50\xa6\x4c\x4f\x86\x0b\x11\x28\x88\xfe\x8a\x1b\x98\xfc\x59\x49\x65\xbe\x22\x9c\x3f\xc3\xf3\x19\x9e\x5f\x12\x9e\x8f\xb1\xaa\x1d\x0c\x3b\x2f\x28\x27\x6d\x69\x6c\x87\x94\xb4\x5e\xe3\x14\x19\x69\xb5\x8d\x6f\x91\x4b\x91\xb5\x34\x44\x2f\x8b\x64\x3c\x8e\x8f\xe4\x86\x81\x5f\x23\x3d\xc3\x4f\x6b\x79\x4c\x2a\x16\x41\xa3\xb2\xbe\x96\x41\x95\xd2\xb3\xad\x12\x75\xf5\xd8\x37\x10\x9d\x26\x27\x44\xf3\x8e\x2c\xb1\x0c\x79\xa2\x38\xa2\x28\x39\x6a\xa9\x9f\x70\x43\x39\x12\x73\x38\x55\x61\x1a\xe1\xf8\x4a\xcf\x14\x58\xaf\xba\x06\x84\xf6\xef\x3c\x38\xe9\x98\xb4\xe0\x0c\x8b\xe0\x28\x48\xbf\x0a\x2e\x05\x43\xc5\x6f\x13\x6a\x87\x53\x3b\x2c\x75\x9d\xda\x51\x72\xc6\x53\x4b\x9c\x9a\xfa\x7a\x65\xb3\xf3\x8a\xbe\xf4\x8a\x3e\xfd\xf0\x71\x5c\x8c\x46\xd5\xf8\x6d\x8a\x4d\xf1\xb6\x58\xc6\xf2\x2f\x62\xfb\x23\x3c\x93\xd2\x2c\x0c\x2d\x84\xf8\xc3\x92\xa1\x05\xfd\x3a\x4a\x58\x37\x86\x6e\xef\xb9\x16\x0c\xb9\x54\xbc\x09\x1e\x8c\xac\xa5\x03\xaf\x71\xda\xdc\x8d\xb6\xa0\xed\x75\x2a\x26\x23\xe8\xc7\x15\xfb\x0d\xa7\x40\x2b\x26\x66\x26\x82\xb4\x57\x54\xea\x46\x0b\x08\xf2\x5a\x79\x64\x88\x02\x8c\x9f\x39\x05\xd1\x53\x9b\xb4\x14\xe1\xc6\xe1\x1a\x77\xa5\x07\x1f\x66\x32\x80\x52\xa9\x43\x4e\x1d\xe2\xa3\xad\x13\x29\x35\x48\x53\x53\x1f\x3c\x0d\x56\x59\xf0\xba\xe6\xd4\x32\x55\x9e\x39\x09\x5e\xd5\x9c\x3a\x97\x0e\x84\x7d\x7c\x61\x04\x3c\x2f\xc0\x33\x16\xe0\xa8\xe0\xf9\xdd\xaa\xfc\x30\x79\x31\xde\xbe\xbd\xb9\x1d\xc1\xea\x37\xeb\x9c\x12\x6b\x7e\xbd\x95\xaf\x85\xc3\x53\x20\x39\xb0\x2c\x80\xad\xc9\xca\x9b\x4c\xb1\xb8\xeb\x1a\x72\x85\xb2\x35\x52\x41\x66\xc0\x5e\x63\x29\xcb\x1c\x93\xf2\x4a\xcd\x54\xd7\xd6\x0a\x2c\x37\x60\xbf\x5e\x5e\xf7\x25\xdf\x6d\xff\x6e\x61\xf2\xaa\x3f\x62\xb7\x70\xb3\xc2\xc2\x7e\xcd\x7c\x6f\xf6\x6b\x92\xc9\xd0\xa5\x2b\xdb\x38\xdd\xd9\x26\xb9\x74\x2f\x64\x21\x25\x1b\x0b\xa9\xd8\x5c\x54\x1c\x97\x2f\x2a\x8e\xcd\x45\xc5\x31\x5f\x54\xdc\x17\x74\x98\xad\x40\x61\x4d\x14\x2a\x7c\xe4\x86\x99\xae\x5a\x8d\x96\x3f\x69\x42\xed\x97\x82\x29\x8e\xda\x95\xb7\x5c\x33\x4b\xe5\x14\x28\xcb\x34\x01\x94\xe6\xb4\xa1\x0d\x0a\x75\x1e\x6c\x0a\xff\x7d\xbd\x58\x72\x5e\xb6\x93\x96\xed\x18\x36\x36\x9d\x3e\xf7\xc2\x95\xbd\x6d\x6d\x67\x60\xeb\x15\x4e\xe0\x5e\xab\x4d\x7c\x93\xf4\x46\x33\x5d\x44\x16\xf3\x01\x71\x64\xf1\x4a\xd6\x1a\x42\x44\xb5\x21\x82\xf0\x20\xcd\x75\x64\x52\x5d\xb9\x52\xa0\x0a\xe0\x99\x06\xa9\xb9\x67\x9e\xfb\x49\xfa\xc1\xf0\x47\xfa\x82\xe9\x25\xa7\x0d\x15\x2c\xed\x02\x27\x88\x81\x68\xb8\x02\xe1\x16\xa1\x58\xd5\x4f\x01\xa2\x45\x15\x26\x52\x80\x20\x92\x1e\x35\x53\x72\x31\x18\x26\xb8\x0c\x8f\x7d\x2e\x99\x9d\xd9\xda\x80\x0a\x14\xac\x08\xbc\xe2\x12\x81\x11\x59\x96\x02\x11\x6e\xc2\x95\xfc\x5e\x4e\x05\xbf\xfb\xd5\xd8\xe6\x56\xd2\x5c\x65\xb1\x70\x17\x99\x6c\x5c\x73\xd1\x1b\xdc\x0d\xbf\xa6\x3b\x2e\x4a\x0b\x36\x05\x84\x12\x0c\xc9\xb8\x4b\x24\x7d\xc2\x9b\x1f\x9c\x7e\xff\x23\xc5\x13\x31\x3a\x91\x76\x47\x99\x0d\x95\x27\x53\x2d\x72\x1a\x94\xa6\x90\x60\xc9\x54\xd9\xe6\x90\x30\x82\x83\x31\x9a\x43\x0c\xb6\xe4\xa8\x95\x73\x50\x5e\x71\x70\x1c\x6b\x61\x3a\xc5\xe1\xd2\xdd\x64\xf1\x55\x72\xd0\xc1\x82\x50\x81\x83\x0b\x16\x64\xb0\x54\x17\x8b\x14\x32\xc7\x98\xc2\xe7\xa2\x6d\xcc\xee\x92\x49\xd8\x8d\x74\xa0\x4b\x10\x2a\x82\x0e\x0e\xa4\x0d\xe0\xa5\xc9\x65\xc8\x78\x0c\x54\xb0\xe0\xe6\x29\xd8\x6f\xea\x16\x7b\x65\x82\x61\x9f\x9c\x2a\x46\xfc\x82\xe5\x9a\x21\xa7\xe1\xba\xe6\x6d\xdc\x15\x19\xae\xdd\x48\x35\xc3\xf7\x7e\x7c\x4f\x7e\x18\x1e\x07\xa9\x0d\x4e\x80\x36\xf3\x60\x39\x86\xcb\x12\xc7\x0a\x92\x42\x7d\x19\x8d\x29\x0c\x94\x97\x1c\x94\x0d\x34\x17\x54\x6e\x42\x99\x52\x05\x8a\x87\x50\x82\xb2\x1e\x4b\x81\xc1\x7e\x29\x36\x82\x54\x11\xbc\x51\x54\x01\xe7\x43\x93\x0d\x8b\xce\x11\x62\x28\x52\x82\x0a\x25\x66\x0b\xea\x09\x5f\xc6\x53\x20\x05\x15\x56\xf6\x64\xad\xd3\x77\x77\xad\xce\x27\x5f\xc7\xbd\x22\x67\xc0\x3c\x03\xe6\x56\xc0\x6c\x31\x25\xbc\xec\xa6\x1b\x29\x27\xa3\x62\xfc\xa1\xee\x0d\x2a\xfe\xa1\xfa\xbc\x66\x72\x7e\xed\xe7\x37\x57\x76\xf5\x92\x22\xb6\x5c\x65\x39\x67\xaf\x57\x43\xb2\x7e\x98\xb0\x25\x63\xf5\xb7\x9d\xde\xec\x9b\x16\xa6\xbe\x45\xdc\xa3\x80\xc3\xd6\x9d\x71\xef\x79\xb8\xf7\x0d\x0b\x9d\x67\xa8\x3d\x43\xed\xbe\xa8\xb9\x93\x26\x52\xe6\xca\x1d\x84\xed\x91\x35\x0f\x2c\x3b\x19\xd5\xbd\xe9\x74\x5b\xd3\x3b\x2c\xe1\xb2\xcb\x41\xb7\xaa\x47\xbf\xac\x04\xd6\x6f\xc9\xf8\xf6\xfc\x10\x5e\x0a\x1d\xc9\x13\x31\xb8\x32\xd7\x11\x3c\x80\x34\x9a\x8c\x37\x42\xfe\x1e\x40\xca\x14\x9d\x17\x4b\x68\x70\xd6\xb3\x79\xce\xfc\x99\xeb\xa7\x5f\xa8\x46\x36\x39\xb9\x15\xc1\x0d\x39\x8a\x38\xeb\x31\x45\x45\x3e\xcf\x55\x11\xb1\xc2\x36\xb4\x01\x53\xc2\x7f\x34\x69\x08\xdf\x2c\x69\x68\xdf\xd6\x47\x81\x6d\xf9\xc6\x8a\x84\xc2\xc7\xdb\xf4\xde\x56\xdd\x62\xd6\x1b\x8e\x5f\x6c\x37\x70\x57\x83\xdb\xb7\x04\x5b\x6b\x9d\xb0\x2f\xd8\xda\xce\x7e\xdb\xde\xee\x2a\x09\xdc\xb8\x3a\x9e\xae\x96\x5f\x9b\xe3\x8d\x42\xf5\x70\x89\x98\xb6\xd8\x08\xaf\x74\xf2\x9f\x2c\x65\x9f\x09\xe4\x99\x40\x9e\x25\xfe\x33\x06\x9d\x31\xe8\xeb\xc0\xa0\xfd\x57\x0d\x7c\x78\xb8\xad\xc6\x83\x6a\x5a\x4d\x8e\xbf\x6e\xa0\xad\xee\xc1\x17\x03\xb4\x55\xde\x7a\x39\x40\x5b\xe1\x45\xda\xde\x0b\x0e\x36\x8b\xae\x5e\x72\xb0\x94\xbf\x76\xd1\xc1\xd1\xd7\x10\xb4\x8c\x94\x6e\x18\x58\xea\x62\xff\x75\x04\x9b\x85\xbf\xc8\x95\x04\xd9\xa2\x4c\xc9\x85\x3d\xd9\xa1\x17\xad\xdc\x2f\xc7\x4e\xfa\xf9\xe7\x9f\x57\x28\xec\xf2\xd6\xb9\x00\x45\xb7\x7c\x08\x55\x48\x50\xe4\xdd\x8a\xcf\x06\xcb\xbd\x02\xa9\xae\x35\xa8\xc8\x0c\x28\x81\xa0\xaf\x14\x62\x99\x52\x73\x32\xe3\x9c\x87\xa0\x6b\x2e\xc1\x46\xc9\x1c\x44\x45\x6d\x49\x2a\x26\x73\x31\x06\x4a\xd3\xc5\x21\xda\xd6\x06\x8c\xd3\xcc\x82\xb5\x25\xdd\xbc\xa2\x22\xd8\x08\xc6\x41\x74\x98\x55\x7b\x90\x36\x72\x1c\x53\x09\xda\x13\x79\xf0\x88\x50\x2e\x60\x09\x0e\xc6\x46\x6a\x43\xf1\x79\x1b\x1c\x54\x54\xa0\x15\x12\x38\xaf\xb1\x2f\x8e\x7d\xb9\x6b\xe9\x21\x2a\x4f\x17\xb8\x6c\x19\x3b\xa7\xc1\x3b\xa0\x6b\x54\x44\xa0\x69\xa0\xfb\x44\x4c\xe3\x42\x0c\x36\x06\xa4\x00\xcb\x78\xac\x95\x7b\xf7\xf7\xd5\xd0\x55\x38\x97\x3e\x47\x47\x44\x92\x2b\x91\x88\x27\x82\x18\x55\xfa\x62\x90\x74\x4b\x59\x82\x10\x16\xa4\x76\x38\x1d\xa0\x0c\x08\xab\x40\x3b\x0f\x42\x6b\x50\x1e\xe8\xb6\x1a\x05\xc2\x68\xf0\x05\x18\x85\xa4\x72\x7e\x01\x82\x54\x16\x54\x4d\xd7\x2f\x48\xa7\x0b\x03\xd1\x59\x96\x9e\x69\xb8\x1a\xc8\x49\xc1\x9a\x80\xbc\xcb\xa7\x47\x53\x59\x07\x0e\x22\x46\x72\x0a\x00\x41\x29\x29\x44\xb7\xd2\x3c\x5d\xeb\x20\x91\x4b\x48\xe9\xe9\x12\x1a\xba\xab\x06\x2c\xd2\x3d\xcf\x41\x04\x7c\x44\x22\x6e\x9c\x0c\xf9\x41\x59\x9c\x7b\x7f\x6d\xc1\x30\x72\xbf\x2e\x70\x21\xcd\x9c\x4f\x28\x17\xf3\x95\x32\x5e\xe1\xa7\x49\xd7\xc2\xe3\x04\x94\x38\x00\x0d\xd2\x51\xc3\x60\x94\x02\x11\x0d\x58\x5f\x83\x10\x0e\x84\xc0\x25\x01\xe1\x6c\x49\x77\x43\x04\x50\x12\xa4\xc2\x95\x06\x19\x3c\x28\x2d\x41\x1a\x45\xf5\x94\x03\xeb\xe9\x3e\x1a\x9c\x3f\xe1\x34\x9d\x1d\x7b\x0b\xc2\x07\x50\x4a\xd7\x20\x95\x06\x29\x0b\xba\x68\x87\xa5\x67\x1e\x8d\xa7\x53\x65\x83\x80\x00\xd2\xe1\xcc\xd3\x45\x17\x46\x81\xb0\xf8\xa6\x42\x83\x34\x38\x59\xce\xa5\xb1\xca\x88\xa3\xd2\x3c\x8d\x18\x39\x95\x8b\x0a\xf9\x3e\xae\x8f\xa3\x89\x55\xb8\xbc\xc2\x70\xd0\x9e\x26\x18\xc7\x25\x6c\x9e\x77\x97\x1a\x15\x0a\x7b\xa4\xb7\x14\xe9\xfe\x0f\x82\x7a\x0e\x4a\x85\xd4\xb5\xf6\x06\x14\x02\xbd\x56\x1e\x8c\xc7\x91\x81\x12\x0e\xa1\x44\x6b\x09\x26\x06\x50\x41\x75\xb1\x2a\x42\x15\xf6\x23\x64\xee\x88\x9a\x0d\xf4\xa5\x06\x49\xcb\x5b\x82\xd4\xf8\x4d\x3b\x50\x8a\x56\x34\x80\x36\x2e\xad\x82\xb2\x74\xeb\x8f\x02\x43\xaf\xe8\x02\xe2\x52\x7e\x57\x7c\x45\x41\x13\xea\x41\x58\x9d\xae\xe8\xf0\xa1\xc6\x62\xd8\x72\x2c\x50\x78\xd0\x2c\x3d\xb3\xa7\x3d\x28\xe5\x98\x02\x1f\x6a\x7a\x6d\xe9\x02\x0a\x09\x16\xd7\x93\x1a\x91\xd6\x80\x40\x02\x20\xb1\x0d\x6f\x41\x46\xcb\x41\x09\xe4\xd3\xa0\x2d\xc9\x54\x54\x51\xe0\x08\x0d\xae\x79\xe0\xf4\xfa\x5a\x44\x6c\xd3\x82\x14\xa6\x24\x88\x06\x25\x15\x0e\x04\x11\x19\x17\xc9\x22\x02\x80\x8c\x32\xbd\x11\x4d\x8c\x05\xab\x15\x62\x66\xc0\x09\x93\x33\x9a\xac\x12\x65\xa9\xb4\x3c\xda\xa5\xe5\x31\x84\x24\x79\x05\x68\x3d\x3d\x61\x08\x82\x8f\xc4\x91\x19\x90\x02\x1b\xb2\x99\x54\x59\xe5\x40\x23\x0c\xe0\xfb\x60\x65\xe3\x68\xc2\x1d\x82\x36\x36\x1a\xea\x84\x3c\xd2\x46\x84\xbf\xe0\x99\x59\xba\xc2\x42\x83\x45\xa0\x93\x58\x08\x21\x0d\xa7\xc9\x39\x10\x08\xec\x3a\x80\x40\x68\x8f\x1e\xa4\x02\x89\xaf\xec\x23\x2d\x83\x8e\x92\xdc\x8b\x9c\xc1\x22\x28\x05\x4a\x10\x28\xb8\xa8\x08\x92\xae\xcb\x30\x20\xa4\x22\xb1\x0c\x09\x8b\x70\x11\x5f\x8d\x26\x4b\x0a\x85\x04\x0a\xb4\x91\xa0\xa5\x04\x8b\xcb\x2f\x23\xc8\x98\x20\x20\x81\x9c\xf6\x74\xe7\x14\x58\x93\x66\x9b\x37\xd3\xed\x08\xce\x11\x6a\x50\x46\xa3\xa9\x10\x9e\x90\x1a\xd7\xc9\x25\x6a\xa2\x10\x8a\x0c\xb6\xa8\x51\x70\x72\x92\x90\x00\x6b\x25\xf8\x94\x88\xa2\x9a\x60\x9d\xe7\x35\xa0\x3b\x66\x90\xd2\xd0\x3c\x0b\x47\x32\xa1\xdb\x02\x5a\x96\x2b\x20\x00\x44\xe2\x5e\x82\xb0\xd8\x8c\xa6\x77\x4f\x80\xad\x24\x4d\x3d\x01\x0c\xc2\x94\x0c\x08\x49\xc4\x20\x10\xa6\x93\x63\x19\xb2\x28\x5a\x6c\x6d\x28\x3a\x30\x8a\xc0\x88\x36\x20\x5c\xc0\x51\x01\xdd\x76\x53\x13\xf0\x0b\xa1\x32\x8e\xca\x92\xa6\x59\x58\x64\x1b\x20\x3c\x5d\x2f\x86\x62\xb6\x4a\xe3\x57\x04\xb1\xf8\xfa\x96\x50\x17\xe9\x27\xd2\x96\x04\xa3\x9e\xc8\x9e\xe1\xe4\x11\x05\x8a\x80\x93\xe6\x09\x5f\x9f\x88\x2e\x95\xe2\x60\xa2\x49\xf3\xee\x22\x11\x65\x2c\x18\x08\x7f\x13\xe5\xc6\x55\x40\xd6\x94\xf0\x95\x7a\xb0\x8e\xc0\x8f\xa8\x1c\x41\x59\x9c\x9f\x31\x07\x61\xb8\x06\xe3\x4d\x4d\x57\x70\x21\x3d\x2c\xe9\xce\xa1\x04\x1a\xc4\x0d\x90\xe4\x11\xb0\xe3\x64\x59\x4a\x41\x28\xa1\xe5\x94\x48\x60\x39\x18\x61\x20\x2d\x0f\x62\x2e\xa7\x39\xa5\x65\x0d\x3e\xbd\x90\x90\x38\x7b\xb4\x92\x99\x70\xb8\x90\x14\x0a\x69\x42\xa2\x3b\x44\xa5\xf1\xe5\xac\x27\xda\xc3\x13\x9e\xd0\x1b\x05\x85\xc9\x84\x92\x34\x45\xd8\x2a\xb6\xa1\x32\x62\x06\xa4\xee\x81\x60\x11\x44\x4c\x84\x4a\x7a\x9c\x7d\x6b\x69\xea\x08\x8e\x11\x7e\x4d\x00\x8d\x28\x6c\x15\x18\x94\xf9\x91\xc4\xd0\x95\x45\x92\x54\x9d\x88\x70\x8a\x5f\x5c\x4d\x60\x8b\x2d\xfe\x84\x94\x29\xb2\xf4\xcc\x56\x41\x02\x50\x80\xd0\x2a\x14\x91\x2e\xe1\x49\xcf\xcc\x51\x05\x0d\xc1\x23\xd1\x26\xa2\x8b\x43\xa4\xd9\xa1\xc5\x41\x28\x88\x3a\x43\xb6\x42\xa8\xc2\x3c\xa3\xd3\x30\x90\x13\x84\x4c\x61\x08\x6a\x34\x92\x45\x8e\xa2\x00\xb1\x05\x9c\x5c\xd2\x60\x14\x2d\x97\xd7\x59\x77\xd3\x21\x69\x71\x8f\xef\x23\xf8\xc8\x1c\x68\x2b\x09\xba\x0c\xb9\x28\x12\xed\xc7\x05\x35\x05\x68\x03\xda\x34\x63\xb5\xc8\x4b\xe6\x0c\x87\x6e\x63\x73\x5c\x22\x31\xf9\x49\x43\xf4\xa8\xac\xe2\x33\xb9\xe1\x2c\x9a\x7e\xec\x43\x74\x81\x89\x02\xe9\x09\xa3\x47\xe3\xc5\xa3\x25\x79\x16\x4a\x8b\xe2\x9f\x43\xe1\x8a\x50\x98\x56\x5f\xe8\x8d\xee\x11\x8a\xba\x94\x75\x8d\xb3\xea\xa8\xfd\xc7\x3e\xd7\x10\x22\x2a\x98\xc1\xd7\x12\x2c\xdd\x2d\xa7\x2d\x35\x84\x08\x17\xd6\xda\x91\xda\x80\x0d\xb6\x6e\x78\x1d\xbe\x43\x34\x06\xac\x93\x05\xbe\x81\x65\xe9\x99\x06\x09\xd6\x21\xa5\xb0\xd2\x3d\xf6\x1d\x04\x49\xbc\x16\x5f\x45\xa1\x10\x20\xd4\xa2\x1c\xb9\x21\xe1\x4c\x4a\x88\x38\x56\xeb\x34\x6f\x18\x73\xcb\x18\x38\x0e\x82\x78\x88\xc1\x51\x0b\xf2\x29\x4d\x6f\xe3\xc9\xf9\xd4\xb8\x2e\x38\x55\x83\x0e\x1e\x65\x8b\x24\x6b\x91\x63\xa7\x45\x32\x8d\x30\x8c\xd8\x9a\x44\x24\x64\x1b\x4e\x28\x2c\xcc\xc1\x04\x3a\x5c\x8c\x74\x7b\x94\x55\x05\x68\x1d\xf1\xd3\x0c\x15\x01\x49\xd8\x9a\x16\x11\xfb\x27\x57\x4e\xd0\x06\x5f\x3f\x30\x7a\x64\xbd\x14\x9c\x88\xc9\x6f\xb5\x46\x31\x87\x4b\x08\x08\xfb\xa9\xde\xea\x02\x31\x50\x11\xe1\xca\xa7\x77\xd0\x88\x2c\x6b\xef\xcd\x40\x8b\x90\x28\x08\x72\x53\x81\xf4\xde\xfb\x74\x51\x99\xc3\xce\x23\xca\x51\x0d\xc9\x49\xdd\x93\xe1\x9d\xc0\x85\x8d\x88\x09\xf8\x26\x09\xfe\x2c\x36\x6d\x17\xfa\x3a\x03\xe1\x12\xf0\xe0\xbb\xbb\xa0\x21\x48\x8f\xaf\x1e\xf0\x33\x1f\x00\x72\x41\x1f\x91\x81\x87\x1a\x62\x50\x74\xa7\x93\xa5\xce\x25\x4b\xcf\xc6\x31\x2d\x83\x50\x0d\x91\x2e\xe8\xf2\x9e\x04\x25\xb9\xfe\xd6\x28\x54\x48\xd4\xd2\x57\x83\xcb\x82\x5a\xbe\x38\x0b\x95\xa8\xb5\x90\xb2\x7b\xed\x3d\xea\xaa\x18\x0f\x8e\x0c\x63\xd9\x52\xe7\xeb\x38\xd0\xcb\x97\xcb\x19\x11\xe9\x52\x2f\x5d\x07\x88\x92\x50\xcd\x86\x92\x6e\xb9\x14\x06\x9c\x77\xe0\x82\xc4\xbf\xe4\x71\x8c\xcb\x06\x06\x89\xb2\x92\x0e\x22\x8a\xc3\xf3\xac\x9a\x93\x3c\x45\xae\xd4\x72\xa6\xc1\x3b\x5f\x0a\x06\x92\x38\x2a\x5d\xd7\x95\x50\x5d\xa7\xad\x21\x4f\xae\xd3\x46\x1b\x70\xc8\x2f\xbc\xd1\x10\x90\xe5\x6b\xef\x41\x21\x5f\x0a\xd6\x82\x25\xaa\x86\x68\x46\x9e\x7c\xc2\x6b\xd0\x84\xfe\xc6\x21\x38\x04\xae\x21\x3a\x0a\x73\x4f\xd1\xeb\x28\xac\x5c\x24\x5d\x8d\x72\x88\xf3\x20\x5a\xa2\x5c\x83\x8c\x88\xee\xbf\xe4\xe9\x76\x6a\x64\x4e\xd8\x2c\x20\xf3\x45\xf1\x03\x2c\xd2\x61\x2b\x68\x6f\x89\x06\x10\x0a\x70\x32\xe0\x67\x41\x27\x34\xed\xac\xcd\xc8\x43\x12\xf1\x86\x36\xdf\x8c\xbd\xb6\x40\xa1\xf0\x2d\xed\xbc\x81\xc5\xf6\x02\x5d\x79\x69\x34\x12\x34\x94\x75\x14\x0e\xa4\x20\x8d\x87\xa5\x67\x83\x28\x02\x0b\x46\xa9\x18\x31\xe7\xfc\x6c\x38\x92\x8e\x48\xe6\xba\x28\xc9\xe0\x84\x0a\xe4\x93\x22\x0b\x36\x74\x9d\x9d\x21\xc1\x06\x95\x4e\x62\xe5\x11\x84\xf7\x20\x63\xca\x92\x28\x3e\x07\x07\x5a\xeb\xa4\x74\x44\x0f\x3a\x4b\xe3\x24\x27\x46\x7c\x5e\x5b\xba\x19\x54\x09\x1c\x3e\xaa\x7b\x1c\x3c\x72\x3b\x45\x97\x7c\xe2\x9c\x79\xa4\x6d\x36\x68\xb0\x82\x96\xc2\x50\x0a\x5d\xce\x86\xdf\x6a\x12\x24\x38\x4a\xc1\xa8\xe5\x93\x92\x4f\xb2\x8f\x73\x10\x91\x18\x06\x44\x74\x94\x97\x94\x4b\xaa\xa6\x25\x18\x43\x7d\x1d\x45\x30\x14\x38\x9c\x4d\xcb\xa3\xb5\xca\x2c\xd6\xc4\x34\x5f\x92\xa5\x67\x43\x34\x14\x05\x1a\xf1\xae\x24\xc2\x8d\x5c\x4a\x83\x55\xe4\xdd\x6e\x90\x79\xe0\x37\xe7\x02\x92\xfe\x80\x92\x58\x10\xe1\x1d\x4a\xc8\x74\xa7\xa8\x4a\x5b\xc1\xc8\xb0\x5c\xfa\xa2\x0d\xed\x2b\x2a\x9f\x64\xcc\x98\x20\x9f\x27\xb0\x26\xbc\xe0\x19\x2f\x94\x23\xc1\xcd\x81\xc5\xe9\xc0\x2f\x01\x81\x23\xa9\x1e\x8f\x7d\x04\x68\x5c\x44\x6f\x6c\xcd\x2d\xf9\x42\x80\x37\xe9\x62\x7e\x83\xa2\x52\x1d\xc0\x5b\x04\xdb\x10\xc2\x75\xda\x8d\xb6\x35\xa7\x44\x32\x90\x66\x38\x49\x10\xb5\xbf\xa6\x7d\x50\x8b\xb4\xce\x83\x95\x81\xbc\x67\xa3\x61\x06\xb4\x53\x74\x0f\xbb\x53\x49\x3a\x28\x90\x67\x6a\x96\x9e\x19\x66\x68\x50\xd7\x9e\x42\x03\xd0\x15\x85\xb4\xc1\x40\xd1\x11\x67\x0a\x5c\x01\x56\xa3\x92\x20\x17\x00\x18\x48\x8e\x45\xc6\x02\x02\x15\x12\x81\x8a\x87\x01\x6d\x03\x18\xfc\x6e\x0c\x0a\x65\xe0\xe8\xd6\x3e\x54\x4c\x22\x58\xa9\x20\x4a\x4f\x42\x83\x42\x79\x15\x53\xb2\xf2\x63\xa5\x9a\x28\x70\x88\xfb\x29\x49\x73\x4c\x43\xc2\x42\x42\x2d\x84\xb4\xd0\x86\xda\x0a\x94\x09\x8a\x04\xd4\xa0\x41\x23\xbe\x6a\x85\xe2\x5e\x40\xb8\xf2\x88\x87\xe0\x96\x86\x1b\x49\x92\x9c\x71\x44\x83\x6e\x9a\xfc\x1d\xe1\x20\x41\x59\xe6\xe8\xae\x0a\xcf\x5c\x7d\x50\x50\x48\x18\x8d\x87\xf7\xe3\x6a\x92\x76\x1e\xa7\xd5\xb8\xdf\x1b\x14\xd3\xbc\x61\xb8\xe5\xc4\xf2\x25\xe8\xfb\x7e\xfa\x9d\x8a\x5c\x7e\x42\x9e\xd2\x56\x50\xc6\x18\xff\x4c\xb9\x73\x27\x56\x64\x12\xf3\x2d\x47\xf3\x8a\x95\x75\x31\x99\xbc\x79\x35\x99\x8e\x1f\xca\xe9\xc3\xb8\xe2\xbd\x72\x38\xa0\x97\xe8\x0d\x90\x41\x4c\xa6\x9f\xeb\xea\x2d\xb4\xe7\xf3\xdb\x62\x52\xfd\x3a\x1c\x15\x65\x6f\xfa\xf9\x12\xe4\xd3\xb6\x72\xcd\x0c\xfe\x5a\x0c\x7a\xfd\x62\xda\x1b\x0e\x2e\xb7\x94\xbc\x2b\x06\xe5\x67\x3e\x19\xf5\x06\x4c\x4f\x58\x6f\x70\xd7\x1b\xf4\xa6\x15\xab\x7b\x83\xaa\x18\xbf\x9e\x77\xa5\xec\xeb\xcc\xd2\x3b\xc5\xa4\x5b\x8c\xc7\xc5\xe7\x4b\xc1\x8c\x59\x4e\x1d\xde\xdd\x4d\xaa\xe9\xa5\x78\xbd\x1a\x46\xfe\x92\x96\xe3\xf5\x74\x5c\x0c\x26\x77\xc3\x71\x9f\x0f\xc7\xbd\xfb\xde\xe0\xd2\x8a\x3f\x30\x2b\xfe\xf0\xf4\xdf\x3f\x54\x9f\xef\xc6\x45\xbf\x9a\xb0\xbd\x63\xfc\x55\xfc\xe1\xd7\x83\xc7\xf1\xa4\x6c\x4b\x69\xad\x99\x94\x2d\xc5\xb9\x11\x4f\xf6\x88\xe6\xb9\x94\xe2\xc9\x1f\xd5\x83\xb4\xe2\x69\x3a\x3c\xbc\x07\xa5\xc4\xd3\x01\xd3\x33\xe9\xf5\x47\x75\x35\x9f\x9f\xf9\x44\x5f\x8e\x87\xd3\x62\x5a\xfd\x51\x74\xaa\xfb\x1f\xb1\xe3\x8d\x1c\xed\x52\xde\xd3\x5f\xfe\x9c\xe0\xee\x2f\x9d\xea\x6e\x92\xa5\x94\xa5\x6d\x6f\x44\xd0\x35\x91\x4e\xaf\xca\x3e\xbd\xce\x9b\x57\xc5\xfc\x7c\xd0\xd6\x8e\xe9\x59\xa8\xb9\x63\x9a\x3b\xae\x6f\x42\x72\x55\x4e\xad\x3f\x4c\x2a\x46\x48\x72\xd9\x1d\x57\x77\xd4\x41\xb1\x07\x31\x08\xf0\xb1\x89\x53\xea\x36\xc8\xb0\x42\x63\x56\x82\x60\x2f\x24\xc5\xf6\x28\xd8\x6d\xd2\xe7\x71\x61\xb0\x5b\x5b\x78\x4e\xe5\x93\x03\x61\x6f\x6f\xec\x94\x48\xd8\x6d\x32\xf6\x57\x62\x15\x72\x96\xb2\xcf\x52\xf6\x59\xca\x3e\x4b\xd9\x67\x29\xfb\x6b\xb4\x38\x3a\x53\xe7\x33\x75\x3e\x53\xe7\x33\x75\x3e\x53\xe7\x03\xad\xd9\x36\x6e\xdb\x3c\xf0\xa6\xcd\xb5\x7b\x17\x37\xee\x5c\xdc\xd8\x50\x69\x1c\x35\xe1\xda\xf3\x69\x31\xbe\xaf\xbe\xf1\x10\x15\x40\x84\x05\xa4\xa6\x83\x3d\x05\x42\xdb\x42\x81\x15\x92\xa5\x67\x8e\x12\x2a\x35\xd2\xad\x2e\x62\x55\xc4\x82\x82\x4e\x3c\x62\xa1\x40\x44\xcb\xd2\x33\x15\xd5\x41\xd3\x89\x3a\x99\x62\x18\x9e\x0e\x22\x65\x24\x8b\x07\x3a\x8e\x46\x86\xa3\xb8\x01\xc7\x15\x0f\x04\x2d\x1a\x0c\x92\x0c\x27\x0d\x04\x1d\x90\x78\x07\x24\xcd\x91\x0c\xa5\x90\xf8\xda\x88\x58\x21\x3c\x7e\x58\x0a\x3b\xaa\x94\xce\xc6\x09\x06\x3f\x39\x95\xec\x9b\xc8\x08\x42\x20\x37\xd1\x65\x32\x4c\xb0\x64\xff\x24\x62\xb2\x08\x21\x4b\x24\xb2\x8e\x49\x7f\x94\x4c\xa4\x5a\xd3\xe9\x3b\x1d\xca\x67\x5c\x53\x96\xea\x1a\x07\xcd\x39\xbd\x8a\x20\xc8\x8e\x2a\x80\x30\x11\x44\xd4\x20\x1c\x19\x11\xc5\x64\x1a\x23\x2d\x8e\x59\x22\x29\xb3\x96\x82\x91\x1a\xcf\x28\x8c\x29\x5d\xa0\x2b\xd3\x80\x88\xa8\xda\x74\xb6\xa5\x3d\xcd\xe4\x02\x89\x04\xd0\x68\x90\xcc\x29\xfc\xa4\xb4\x64\x64\x80\x43\x4c\x66\x0c\x65\xb6\x00\xc1\xe6\x7c\x3e\x0c\xa7\xf3\x60\xed\xaf\x15\x51\x2b\x19\xc8\x58\x96\x6c\x5e\x12\x09\xe1\xe9\xb5\x4c\x32\x90\x28\xc0\x1a\x85\x9f\xdc\x29\x72\x7e\x8d\x64\x06\x5b\x91\x86\x42\xaa\xa6\x0a\x44\xf2\x69\x9c\x3e\x91\xaa\x74\xf0\xaa\x70\x0e\xb1\x2d\x53\x80\x31\x0e\x3f\xa9\x29\xa1\x93\xd9\x16\x18\xe9\xf1\x33\x5f\x1d\x04\x05\x1f\x4a\xde\xb4\x64\x9a\x6f\x34\x36\x7a\x43\x02\x99\x26\x2f\x8f\x80\xa7\x16\x85\x36\x05\x1d\x69\x5a\x3b\x6f\x92\x40\xcc\x2b\xb0\x01\x6c\x68\x12\x03\xbe\xb2\x45\x6e\x9f\x2c\x3d\xc8\x26\x29\x34\x4d\xa1\xf8\x20\x34\x5d\x47\xe9\x2d\x97\xa0\xa2\xe7\x28\xf0\x50\x38\x47\xa9\x09\x48\x41\x78\x97\x6c\xfd\x24\x0a\x0b\xc9\xda\x58\xb6\x90\xa4\xd3\x50\x8e\x22\x4b\x1a\x69\xd3\x61\x3a\x08\x8d\xbd\x2a\x04\x48\xab\x39\x19\x90\x88\xc0\xc1\xe1\x94\x87\x2e\xbd\x10\x61\x27\xbd\x4b\xa1\x50\x6c\x63\xe9\x99\x70\xce\x90\xcd\x01\xf1\x11\x97\x60\x02\xe7\x19\x5f\xd3\x49\x7c\x1d\x32\xee\xf0\x88\x73\x42\xd3\x29\xa9\x5e\xc2\xbc\x77\x12\xa2\xb0\x04\xa3\x0a\xb9\x02\xdd\x9b\x1c\xc0\x90\xc4\x64\xc2\x76\xc4\xa3\xcf\x0a\xe2\xc5\x06\xf1\xd4\x17\x45\x3c\x9b\xf1\x2e\x64\xae\x9a\x6d\x65\x4c\xc6\x42\xdb\x86\x84\x61\x19\x09\x1b\x2c\xb4\x19\x0b\x4d\x86\xee\xd0\x82\x85\x65\xc2\x05\xa1\xb2\xc1\x0e\x49\x57\x74\xb8\xeb\x2c\x24\x5b\x48\x81\xe2\x38\x19\xcb\x6c\x22\xa5\x6f\x90\xb2\x96\x92\xa4\x5c\x0b\x3e\xfa\x06\x2d\x65\x83\x95\x7a\x09\x2b\x4d\xc0\x79\x5f\xc1\xca\xb0\x1d\x2b\xdd\x76\xac\x94\x05\x18\x4d\x97\x6c\xaf\xa0\x25\x68\x94\xd4\xbd\x6e\x96\x8e\x2c\xa2\x02\x8a\x12\x16\x3f\x4d\x32\x19\xa9\xc5\x36\x5c\x0d\x3b\x70\x55\xcf\x71\xd5\x16\x60\xa5\xc5\x4f\x6e\x51\x92\x78\x46\xd6\xeb\x09\x2d\xc9\x66\x30\xbd\x7f\x83\x96\x2a\x26\xbc\x34\x84\x97\x81\xf0\xd2\x10\x5e\x1a\xc2\x4b\xdf\x20\x26\x8a\x9c\x28\xa4\x04\x14\x80\xdb\xae\x80\x3c\xc1\x73\x83\xac\xb5\x14\x59\xd8\x28\x99\x5f\x2d\xd9\x4c\x65\x53\x34\x21\x3d\x12\x4d\x89\x9f\x39\x3a\xe4\x55\xb0\x2a\xe2\xa7\x49\x46\x14\x36\xe9\x55\xd5\xd2\xc2\x24\xd3\x1d\x4c\x7c\x87\xc0\x49\x16\x86\x24\x66\x69\x86\x1a\x01\x18\x32\xa6\xd5\x11\xfb\x51\x28\xa2\xce\x7b\x21\xb3\x27\x63\x0c\x7e\x96\x91\x4e\x6d\x72\x3b\x4d\x58\x27\x13\xce\x99\xb0\x8a\x73\x3a\xe3\x9c\xd9\xc0\xb9\x84\x59\xc8\xd5\x02\x29\x73\x09\xe7\x6c\xc6\x39\x95\x90\xce\x17\xa9\x8d\x64\x21\x27\x32\xca\xf9\x86\xf1\xb9\x05\xce\x69\x1b\x17\x38\x67\x08\x2a\x97\x71\x6e\x89\xf3\x59\x6f\xf1\x93\x51\x09\xd3\x4b\x10\xc8\x4a\x40\x26\xe6\x45\xe6\xa0\x04\x5d\x75\xc3\x2a\xb6\xb3\xbf\x98\xd9\x9f\x03\x2b\x37\xf0\xcc\x36\x78\x86\xd0\x69\x22\x7e\x96\xf0\xcc\xb8\x0d\x3c\xd3\x0d\x9e\xc5\x0d\x3c\x0b\x0d\x9e\x21\x27\x55\x06\x3f\xcb\x78\x16\x35\x18\x89\x2c\x50\xae\x20\x5a\x94\xeb\xab\x98\x10\xad\x95\x2b\x2e\x30\xad\x81\x47\x6a\x43\xcd\xf1\x2d\xa1\x1a\x42\x8b\x83\xe4\x34\x33\x47\x34\x32\x7a\x5e\xe2\x7f\xbe\x41\xcf\xc4\xff\xae\xe7\xf0\xde\xc6\xd6\xbe\x92\x7d\x90\xb3\x2c\x7b\x96\x65\xcf\xb2\xec\x59\x96\x3d\xcb\xb2\x67\x59\xf6\x2c\xcb\x9e\x65\xd9\xb3\x2c\x7b\x96\x65\x4f\x95\x65\x9f\x60\xd8\xeb\x94\x7c\x52\xd5\x55\x39\x65\x50\x3c\x4c\xbb\x82\x53\xd2\x68\x3c\x9c\xf5\x96\x83\x9b\x7f\x3d\x76\xd0\x11\x82\xa0\x60\xf2\x4e\x91\x8b\x69\xd0\x4c\x77\xb9\x85\x10\x6c\x2d\x21\x28\x66\x31\xab\x8b\x09\xfe\x11\xd1\x5e\xc4\xc0\xf4\x95\x03\x25\xcd\x35\x4a\x93\x2e\x55\xa6\x12\xf6\xba\x29\xf0\xf8\x7e\x29\xaf\x48\xbc\xa7\xe1\x40\x42\x08\x66\xc8\xaf\x01\x51\x45\xe7\x27\xa6\x2b\x88\x46\x25\x5f\x86\xeb\x08\xd2\x7a\x26\xe9\xb4\xc3\x3b\x64\xbe\x3a\x3c\xf6\x25\x52\x5d\xc7\xc4\xb5\x44\x94\x08\x98\x2f\xe9\xbc\xc3\x36\x1d\x6d\x34\xe8\x38\xc1\x67\x09\x56\x93\xdc\xec\xf0\x8b\xa6\xb3\x0d\xe4\xed\x38\x92\xec\xca\xf1\xd8\xe7\xc8\xc5\x9d\x61\x91\x16\x9c\x29\x59\x2f\x3a\xe7\x6b\x5f\x59\x1a\xd2\x12\x38\xfc\xfd\xaf\xd6\xac\xdd\xf7\x54\x7c\xdc\xef\x34\xbe\x54\x66\xd5\x5b\x1c\x33\xd6\xdc\xc4\xf7\xba\xd9\x17\x1f\x4f\xf0\xaf\x5f\xa9\x74\xb0\x63\xfd\x4a\xad\xad\x1e\xf5\x2b\xa5\x1a\x93\xab\x39\x8e\x7c\x9c\xb0\xdb\x87\xe9\x74\x38\x38\xdd\x11\x7e\xb9\x03\xb2\x51\xc5\x69\xdb\xef\xfa\xbe\x54\xea\x8b\xf8\xbc\xff\x3e\x2a\xaa\x07\xef\x49\x16\x95\xc8\xe1\xb4\x26\x57\x63\xe7\x51\x8e\x8b\xc8\x39\x15\x9d\x10\xeb\x74\x44\xeb\x4c\x4c\xbe\x6d\x91\x3c\x15\x0d\xa8\x80\xd4\x2e\x58\xc4\x10\x50\xc2\x82\xd7\xe4\xb9\x8b\xdf\x91\x52\x82\x26\x6f\x4a\x1b\x92\x17\x90\x0d\x3a\xb9\xf2\x29\x65\x93\xb7\xb5\xc1\x14\xfc\xe2\xe9\x7e\x3b\xd0\x74\xfc\x1f\x23\x07\x67\x1d\x47\xf6\xcd\x21\xaa\xc6\xad\x90\xc2\x78\x58\x8b\xd5\xe8\x50\x19\x33\x9c\x76\x35\x87\x48\x7e\xf0\x48\xe5\x35\xa9\x41\xd8\x89\x8d\xe4\x8e\x19\x38\x78\x72\x1d\x73\xa6\x00\xa7\x2c\x7e\xe6\xe7\xf3\x31\x70\x30\x9e\x1c\xcd\xbc\x4a\xde\xb6\xc6\x19\xd0\xc8\xec\x6c\xcc\xaf\xa1\x1c\x58\xa1\x93\xef\x5c\xf2\x98\xb1\x60\x3c\x32\x1e\x08\x28\x7c\x07\xc7\x24\xd5\x57\x16\xd9\xa4\x4e\x1e\xbe\x91\x58\xbd\x42\xd6\x1e\xe8\x32\x4f\xba\x47\x8e\x78\x3f\x7d\x51\x52\xcf\x38\x68\x59\x80\xb6\xe9\x9c\x34\x3b\x2b\xd2\x9b\xd2\xad\x4b\xf8\x69\x52\x69\xa8\x92\x1c\xcd\x50\x8c\x49\xcf\xc6\xd5\xdc\x93\x2f\x1d\x4a\xdf\x26\x3d\x1a\x5f\x73\xca\x10\xb6\xcc\x3e\x93\x34\x63\x54\x3a\xa9\x42\x9a\xc6\x53\x68\x72\xeb\xd3\x73\xe7\x3e\x8a\x72\x42\x5c\x10\xb9\x9c\x8a\x92\x42\x01\x90\x93\x3e\x87\xa0\x0d\x48\xa9\x0a\xa2\x77\x30\x0f\x98\xe0\x42\xcc\x61\x48\x3c\xc9\x5c\xf8\x9c\xc7\x52\xa0\xa0\x32\x25\xed\x6f\x24\x6f\x65\xe9\x23\x18\xf2\x80\xf4\x11\x81\x06\xa7\x47\x1b\x43\xb3\xe7\x1c\x02\x9c\x82\xe8\x48\xd0\x53\x31\x80\xf5\x28\x02\xd2\xa9\xb5\x43\xe8\xac\x29\x33\x86\x12\xb4\x32\xe4\x86\x69\x2d\x79\xf1\x3a\x17\xc8\xb5\x0a\x01\x9a\x2c\x07\xf0\x6d\xf1\x8f\x71\xa4\xcb\x10\x04\x91\xe6\x45\x5e\x92\x16\x5c\x03\x8d\x08\x78\xd4\x48\xe0\x10\x9d\x4f\x5f\x14\xaa\x20\x1c\xbb\xa6\xc9\xe0\xe0\x49\xf9\x0d\x85\x06\x97\x2e\x62\x14\xae\x81\x25\x9f\xbc\x2a\x93\x9e\x98\xe4\x8b\x92\x44\x9b\x46\xca\xf0\x3a\xf9\xb8\x8a\x48\xee\xba\xa1\x00\xed\x1d\x7e\xe6\x4b\x4c\x2e\xb2\xc9\xa9\x9b\x7e\x23\xec\x38\x97\xbe\x28\x61\x67\xa0\x75\xb2\xe9\x70\x24\x44\x25\xef\xc9\xec\xd2\xe9\x30\x55\x52\x1a\x22\xa2\x44\x9d\xda\x2b\x72\x79\x36\x9a\xca\x78\xa7\xf0\x85\x1e\xdf\x7b\xf0\x2a\x30\x29\x20\xe2\x2a\x22\x8f\x55\xcb\xd6\x00\x82\xb0\x2c\x76\x49\x58\xba\x21\xff\xd5\x92\x0c\x3c\x12\xe8\xa3\xee\xe0\x25\xe1\xa1\x04\xa7\xb2\xf3\x2e\x39\x2d\x22\xef\x24\xeb\x19\x09\x9e\xbc\x04\xe9\x60\x3e\xcd\xa1\x47\x51\x96\xb0\x56\xeb\xe4\x1e\xaa\x51\x5e\x24\xdf\x3f\x9d\xbc\x58\x83\xb6\xb8\xa8\x05\x98\xe8\xf0\x33\x9f\x97\x40\xda\x2d\xcd\x26\xaa\x72\xd9\xc1\x96\x1a\xa1\xa8\x00\x5a\xcd\x10\x10\x92\xfd\x50\x0e\x14\x60\x89\x3e\x91\x40\x4c\xc2\xae\x48\x81\x35\x1c\xa2\x03\x4e\x73\x21\x01\x09\x5c\xe3\xea\x8a\x8d\x90\x87\x6d\x99\xbf\x45\x45\x81\x1f\xa4\xb3\xe0\x51\x2c\x54\xca\x4e\x12\xd8\x88\xe0\xc0\x27\x07\x6b\x57\x82\x4d\x74\xc0\x79\xa0\x68\x22\x3e\x82\x16\x96\x3a\xc6\x0f\x79\x98\x23\x7a\x93\xa5\x93\x70\x33\xa4\x78\x45\x80\x18\x51\xea\xc0\x67\x13\x87\xc1\x91\xc7\xb1\x63\x16\x14\x5d\xa6\xa9\xcc\x1c\x7f\x3c\x69\x70\x16\x11\xc8\xa1\xe6\x4a\x31\xf8\x23\xd1\x4d\x5c\x01\x0d\x96\x8c\x5f\x84\x41\x14\x4a\xbe\x94\x21\xdf\xa4\xc9\x24\xd2\x3d\x1c\x21\x92\x24\x67\x21\x5a\x03\x26\x12\xbd\x92\x84\x3c\x5a\x06\x24\xbe\x88\xa4\x2c\xa5\x20\xba\x7a\xd2\x90\x25\x51\x88\xa4\x43\x11\xc9\x8f\x38\xbd\x44\xc0\x34\x4d\xaf\x0f\xe9\x2d\x23\xbe\x1b\x45\x2b\x20\x6f\x62\x25\x15\x28\x1d\xe9\xed\xc9\x9d\xdf\x81\xd4\x49\xc5\x21\xb2\x18\x75\x16\xb8\x1a\xb7\xf0\xc4\x03\x84\xab\xc1\xc8\x44\xa1\xca\xc6\x7f\xda\x65\x5f\x62\xad\x1a\xa7\x62\x62\x14\xe4\x35\x4c\x1a\x82\x6c\x1c\xe7\x2d\x12\x32\x6b\x3c\x4b\xcf\x0c\xcd\x44\x6e\x8c\x77\x8f\x7d\x9e\x6c\x55\x12\x9b\x50\x1a\xd5\xb0\x98\xc8\xbd\x94\x64\xdc\xa5\xd2\x17\x2d\x12\xd2\x93\x4f\x3a\xc2\x27\x85\x66\x30\x36\x7b\x6a\xe3\xca\x2b\x43\x2e\xdb\x32\x7f\xf3\x42\x11\xb5\xd5\x32\xb1\x10\xe4\x73\x5a\x59\x9e\x50\x4e\xc6\x44\xe6\x6c\xf2\x25\xb7\x10\x83\x4f\x5f\x14\xed\x07\x80\x21\xfd\x12\x1c\xed\x1e\xd2\xe4\x51\x30\x07\xe9\xe9\xf5\x9d\x44\xaa\x38\xa3\x49\x41\x38\x25\x27\x67\xe5\xd3\x4c\xe1\xac\x5b\x4f\x78\x90\xe2\x31\x10\x85\x25\x87\x7c\x85\x7a\xa1\x49\x5d\x13\xf3\xc0\x05\x21\xf8\x50\x11\x73\x1e\xfb\x06\x99\x27\xd2\xf3\x92\xb8\x07\x31\x99\x98\xf6\x0b\x14\xb1\x2a\x0a\xe0\x60\x75\xda\x8b\x68\xcc\xd9\x88\x91\x28\x4b\xd6\x52\xd6\x3a\x8e\xc4\xb6\x90\x40\xae\xcb\x72\x4e\x0d\x89\x89\x39\x22\x1c\x08\x15\xd4\x0a\xc2\x1f\xc5\xff\x70\xb6\x0b\xce\x84\x12\x57\x94\x70\x8f\x5e\x99\xd8\x27\x81\x0b\x2a\xbb\x26\x81\x0b\x2e\x3b\x05\xe8\x08\x35\xce\x03\x0a\xfb\xe9\xca\x43\xa1\x4d\xba\xfe\xb0\x4c\x6c\x89\x00\xcc\xab\xec\xbf\x4f\xd1\x05\x2c\x92\x12\xeb\xe6\xc1\xbb\x24\xc3\x21\xd1\x7b\x75\xc1\xea\x8d\xee\x9d\x5d\xee\x5e\x36\x30\x97\x3b\x17\x74\x37\xa2\xd1\x88\x26\x92\x94\x04\x43\xaa\xb4\xc9\x7d\x53\xd0\x2e\xec\x9b\x02\x6d\x50\xdf\x5a\x91\x81\x57\xd3\x37\x51\x20\xec\xdb\x49\x57\x22\x1d\x22\x0c\x68\x22\x82\xd0\xe4\xa0\xe2\xac\x51\xe1\x58\x4c\xa4\x84\x14\xf1\x43\xd0\xde\x42\x01\xd1\x44\xfc\xcc\xf3\x91\x12\x3a\x97\x82\x10\x21\xf9\x90\xc4\x41\x4c\x0e\x77\x12\x5c\xe2\x64\x52\x47\x50\x96\x62\xea\x18\xfc\xcc\xd1\xc3\x12\xea\x76\x91\xbf\x13\x18\x90\x31\x5f\x8e\x28\xc2\x9b\xf9\xf2\x73\x38\x70\x19\x10\x54\xf6\xf1\x57\xce\xd4\x24\x8a\xe1\x84\x28\xa2\x48\x42\xa5\xdb\x7f\x33\xbd\xa6\xb2\x48\x34\x54\xe3\xf1\x9f\x1a\xb5\x99\x94\x23\xc1\x20\x48\xcb\xf3\x4f\x43\x59\xd6\x92\x94\x55\x3f\xeb\xbf\x9f\xb6\xeb\x14\x90\x2c\xd2\xa5\x99\x5a\x96\xc8\x83\x68\x4a\x98\xca\x91\xd0\x3c\x1d\xc4\xd8\x34\x4d\x3e\x24\xe1\x51\x93\x0b\x7b\x40\x76\x67\x3d\x96\xcd\x54\x3f\x85\x83\x89\x2a\x91\x3d\x8f\xbc\x96\xdc\xfe\x71\xec\x91\x24\x32\x4f\x06\x66\x24\x0d\x6a\x85\x2a\x23\xe2\x9f\x22\x7c\x89\x92\x2b\x50\x01\x85\x0c\x0a\x7a\x67\x35\x0e\x09\x31\x4e\xd1\x0e\xb2\xb4\x31\x31\x44\xab\x11\x7f\x1f\xfb\xdc\xd1\x32\x69\x24\x26\xa5\x02\x4f\xe6\x9f\x28\x7f\x22\xa3\xa4\xdb\x5b\x70\xd2\x54\x12\x57\x6d\xc8\xd3\x87\x84\xd0\x39\x44\x76\xa4\x0e\x56\xe8\x82\x84\x22\xcb\xf2\x9f\xb4\xea\x1e\x39\x06\x93\x08\x66\x25\xa7\x1e\x98\xe0\x3e\x2d\x47\x0c\x8e\x47\xec\x81\x2b\x70\x72\x4e\xf9\x30\x0b\xe5\x08\x41\xac\x10\x85\x2f\x9c\xb9\xe8\xe8\xf2\x67\xcb\x68\xcf\x8b\x69\xf0\xd6\xb1\x08\xc1\x84\xf4\x7d\x79\x19\x7f\x8e\x6b\x5e\x83\x6b\xaa\x5d\xd2\x3d\xd7\xb4\xbb\x97\xd3\xa8\x64\x60\x32\x1c\x1a\x42\x6c\x59\xef\x6a\x81\xb7\xa5\xfd\x90\x00\x2e\x6a\xb2\x0e\x15\xbe\x90\x10\x5c\x0a\x09\xa0\xd2\x7d\xae\x29\x20\x84\x06\xaf\x0c\x5b\xcd\xcc\x86\x89\x28\x43\xfa\x85\xa6\xf7\x07\xa5\xa3\x93\x7f\xb3\x71\x35\xbc\x96\x02\xad\x71\x5e\xbd\x77\x05\x04\xab\xf1\x93\x3a\x20\x61\xc0\x0b\xbf\x94\x8a\xe9\x82\x04\x70\xff\x5e\xa2\x80\x4b\x61\xda\xad\xdd\xa8\x9a\xb7\xaf\x28\xde\x93\xcc\xa7\x37\x32\x6f\x60\x21\xef\xf1\xef\xa5\x81\xe0\x50\x50\xd1\xa9\xb6\xc5\x4f\x43\x39\xa2\x4a\xa2\x60\x5c\xcd\xa0\x40\x8c\x48\x6b\x6c\x49\x67\x0a\x92\xf4\xb4\x14\x35\x49\xa0\x60\xaf\x0b\x08\x0a\xf1\x6b\x1e\xd7\xcb\x19\x05\x2e\x4a\x54\x46\x23\x4a\x21\x02\x8c\xf3\x05\x04\x83\x90\x14\xf3\x4c\x4a\x40\x2a\xa4\xa2\x5b\x4a\xa7\x49\x8c\x41\x51\x94\x98\x12\x0c\x4a\x87\x5e\x83\x37\x60\x50\x6c\x13\x11\xa2\xb0\x05\x28\x25\xf1\x33\xd7\xaf\xc8\x0a\xda\xbd\xcf\xb7\xe0\x06\xd0\x2e\xac\xcd\x0d\x27\xfb\x73\x09\x2e\x98\xb5\x99\xc5\x0c\x46\x19\xef\xa5\x03\x67\x1b\x8b\xd9\xf5\x06\x24\x98\xa8\x38\x52\x91\xb5\x06\x28\x03\xd3\xb1\xbe\xa6\x9b\xc2\x9d\xde\xa8\x0e\xa4\xe0\x1a\x54\x38\x57\xbb\x27\xde\x67\xc2\x72\x7c\x86\xbf\x39\xe5\x83\x5e\x81\x98\x00\xc1\xa4\x58\x9e\xc8\xdc\x0d\x78\x12\x9a\x02\xb8\xe0\xe9\x66\x5f\x9b\xbf\x07\x70\x52\xbd\x03\x69\x2d\x33\x48\xc8\x98\xa1\xc0\x40\x5a\x32\x6a\x01\xb5\xd3\x00\xce\x58\x96\x9e\x69\x0c\x36\xcf\x81\xf7\x44\xf9\xc9\xc0\x57\x7b\x55\x38\x8a\xeb\xe4\x16\xd1\x9d\xb8\xa7\xd3\x3f\x5c\x08\xe6\x20\x78\x95\x9f\x22\xff\xa3\x48\x4d\x8e\x6d\xd4\x63\x8b\x7a\xf5\xa2\x03\x83\x43\xc1\xe5\x72\x0d\x6f\x5c\x0c\xe4\x71\x73\x3a\x96\xf1\x76\x30\x1c\x3c\x56\xe3\xe1\xd1\x51\x2c\xee\xaa\xaa\x83\x04\xe8\xc8\x40\x16\xed\xd5\xbe\x49\x6b\x5c\xc5\xd4\x3b\x07\xc6\x37\x37\x1b\xda\x48\xf1\x60\x41\x59\x5d\x0a\x66\xd2\x85\xff\xc1\x21\x80\x68\x6f\x70\x7d\x75\x44\x42\xa5\xc1\x52\x38\x3b\x17\x74\x3a\xd4\xa4\x2f\x26\x52\x90\x50\x95\x48\x0c\x01\x8f\x4a\x5b\xf2\x12\xa2\x88\x5c\xa1\xde\x01\x8e\x58\xa7\x8b\xcd\x55\x63\xf3\xaf\x60\x6c\xba\x46\x9f\x9e\x58\x7f\xe9\x0b\x44\x91\x76\x83\xd2\x29\x2d\xaa\x45\xcd\x17\x32\x76\xb7\x28\x1d\x12\xcf\xa3\xdf\x04\x54\xf3\xef\x10\x22\xe5\xb9\x40\xfc\x2c\x05\xf6\x61\x0a\xa2\x24\xfc\x43\xb1\xc1\x39\x0d\x3a\xf5\x87\x18\x6b\xc9\x97\x81\x98\x3a\x8e\x8c\xc4\x1f\x4b\x1e\x0e\x28\x1f\x9b\x2c\x19\x0b\xe7\x89\x42\x23\xa4\xe3\xeb\x89\x64\xc1\xae\xf1\x4d\xf1\xd5\x25\xf9\x3c\xa0\x5c\x68\x0c\x79\x47\x08\xd4\x92\x3c\x66\xe7\x4d\x1c\x24\x04\x14\x5c\x11\x6b\x90\x0e\x69\xe5\x4f\x11\xb4\xd3\x2c\x3d\x45\x73\x73\xb8\x4b\x2e\x07\x14\xe3\x26\x6d\xc0\x38\x90\x92\x2e\x6e\x13\x36\x6f\xcd\xe0\x24\xa3\x92\x47\xb1\xe9\x0c\x45\x8a\xb4\x4b\x5f\xc1\x1a\x22\x2f\x52\x82\x22\x1b\x15\x63\x0d\x6d\xcf\xe3\x78\x34\x38\x03\x5e\x52\x28\x4b\x45\x34\x50\xab\xfc\x9d\xde\x86\xa2\xb9\x45\xb2\x30\xd1\x86\x19\x08\x82\x2e\x8f\x75\x2e\x85\x94\xa2\x5d\x40\x54\x36\x9d\x0f\x10\x91\xe2\x7b\x6c\x2a\x50\xc0\x1e\x22\x20\x74\xde\x84\x9d\x92\x3e\x43\x5f\x03\xcd\x02\x28\x54\x39\x03\xd8\x88\x70\xe4\x91\x80\x52\x9c\x23\x72\xcb\xb1\x9e\xa0\x4e\x23\x35\xc8\xdf\x22\x78\x15\xde\xa9\x0c\xaf\x74\xd1\xa6\x6e\xc2\x18\x7f\x1f\x86\x45\x67\xb4\x3c\xa3\xe5\x7f\x06\x5a\xae\x9d\x91\xde\x0f\x87\xf7\x75\xf5\xb5\x1f\x92\x2a\x99\xce\xe6\x75\x29\x10\xd2\x53\x24\x43\x99\x36\x55\xa4\xc5\xb5\x0e\xa8\xe7\xa2\x28\x33\x43\x55\xd0\x75\x0d\x44\x57\x18\xa0\xc0\x6c\x2a\x1b\x1e\x49\x08\x9a\x20\x22\xce\x14\xa8\x68\xba\x0a\xa2\x8d\xa5\x04\xaf\x3d\xca\xa6\x98\xa5\x1d\x79\x2e\xe6\xaf\x0e\xbc\x5d\xb9\xac\xd7\xa8\x60\x7f\x36\xeb\xca\x84\x0c\x92\x29\x81\xb8\x5f\x2a\xda\xf7\x23\x92\x81\x4a\x79\x90\x64\x29\x11\x1c\xdd\x00\xec\xc8\x5a\xc4\x22\xe8\xa8\x68\x4a\x94\x66\x35\x10\x32\x85\x80\x92\x1c\xdd\x3c\xaa\x0c\x7d\x53\x74\x7a\x4b\x37\x1c\x2b\x97\x8e\x4d\xb9\x45\xc1\x12\xb5\x9f\x10\xaf\x10\x30\xfc\x4c\x81\x76\xb6\x88\x20\x03\xe2\x09\x3e\x05\x13\x14\xa7\x92\xec\x88\x56\xf5\x7e\x6d\x7e\x0a\x76\x55\xae\xf5\x49\xbd\xd6\xa0\x9c\x2c\x2c\xa0\xf0\x9c\x26\x4b\xa0\x1a\x2b\xed\x8d\x07\x1d\x64\x17\xd5\x70\xea\x06\x89\x9e\x8c\xf9\x08\x39\xa0\x2a\x5b\x63\x16\xa7\x71\xac\x28\xa7\x7f\xfd\xeb\x3b\xd1\x3a\x51\xb4\x65\x4a\x31\x25\x29\xa4\x24\xf5\xa6\xf3\x61\x84\xf6\xae\x26\xc2\x88\x8f\x22\x40\x50\xa8\x97\x87\x6c\xa9\xc0\x1d\x85\xad\xc7\x99\xa1\x97\x4d\x0f\xca\x99\xbf\xb1\x93\x34\x20\x46\x03\x2a\xc1\x53\x68\x4f\x49\xbb\x0e\x74\x76\xec\x23\x9d\xea\x58\x93\xbe\xaf\x1c\x1e\xff\x64\xb4\xb6\x2b\xa8\x92\xaf\x4e\x2d\xc7\x9d\xed\x27\xa8\x8b\x08\xde\x5f\x4c\xd5\xfe\xad\xd8\xa0\x07\x21\x25\x53\x32\xed\x02\x6a\x41\xa6\x3d\xe0\x6d\x44\xe8\xa3\x4d\x18\xd4\x6f\x5c\xed\xc1\x92\x31\x94\x34\x25\x18\x8f\x4b\x08\x91\x36\xe9\x88\xcf\xd0\x09\x21\x16\x33\xe0\x6c\xe4\xb8\xde\xb1\x90\xe0\x88\x96\xce\x8f\x07\x34\xc5\x5a\xd4\x91\x74\x1e\xe7\x0c\xf7\x60\x34\x95\xa3\xdd\x22\x7c\x36\xb1\x46\x5d\x62\x47\x35\xa2\x23\xe1\xa7\xfe\x49\x36\x1b\x2e\xd2\x2f\x74\x1f\x3a\x78\x29\x91\xef\xd2\x21\x59\x0e\xba\x4b\xd1\x94\x9d\xb9\x36\x64\xb4\x63\x81\xcc\x9c\x8c\x01\x54\xcf\xd3\xab\x79\xea\x83\xa5\x3e\x68\x30\x0c\x07\x13\xca\x74\xb2\x45\xe6\xba\x14\xaf\x90\xf4\xa6\x18\xd2\x8b\x11\x20\xc7\xc7\x3e\x82\xb5\x35\x74\xa5\x82\xed\xa6\x39\x51\x64\x5c\x04\x06\x11\x31\x5a\xfa\x6b\x9c\x29\xc0\xa0\x22\xed\xe7\x5b\x85\xa8\x18\x2a\x0a\x82\x4b\x97\x34\x80\xf0\xb4\x65\x4c\x56\x3a\x64\x55\xb3\x78\x24\xd3\x1a\x43\xe6\x3b\x8b\x0c\xaa\x44\x59\x62\x9e\x95\x6c\x72\x6c\x93\xa6\x62\x93\x96\xe2\x16\xfb\x22\xf1\x92\xf4\x9c\xef\x59\xea\x79\x28\x6f\x32\x25\x4b\x15\x1a\x2f\x60\x8a\x4e\x9d\x2d\x52\x57\x0c\xcd\xd4\xdc\xd2\x4c\x85\x74\xba\x55\xe6\x58\xbd\x74\xe2\x6c\x29\x72\x2d\x0a\x44\x3e\xc5\x4a\x96\x5d\x2a\x5a\x80\xb2\x48\x95\xe7\xe7\x31\x14\x2a\x96\xa2\xda\x0a\x03\x42\x69\xb2\x2d\x4a\xa7\x12\x52\xe6\x17\x91\x39\x46\x64\x0a\xf8\x98\x6c\x8e\xe6\x16\x48\x14\x15\x92\x83\x74\xb1\x39\x26\x94\x86\x1c\xbf\x29\xe4\x63\xf0\x74\x78\x4d\x01\xe9\x9d\x2f\x2c\x18\xab\x59\x7a\x36\xb1\x25\x83\x25\x26\x2d\x5d\x9d\xa2\x4b\xc7\xe4\xe9\xdd\xf4\x27\x73\x77\xc9\xd6\x49\x37\xd1\xb1\x9b\x01\xa4\xac\x3a\x6f\xf7\xe8\x02\xb4\x04\xbd\xd8\x1e\xa1\x23\x45\x55\xd2\xd9\x82\x22\xc7\x70\x1d\x23\x68\x03\x8e\xa2\x01\xd3\xa1\x23\xdd\x40\x51\x80\x0f\x0e\x3f\x0d\x92\xa4\xb0\xe1\x2e\x1b\x75\xca\x90\xcc\xb8\xb4\x6d\x32\x28\x48\x33\x0e\x98\xcc\x74\x25\xb2\x07\xda\x4c\x4c\xc5\x4d\x2a\x6e\x52\xf8\x77\x32\x89\xcd\x83\xd6\x73\x03\x3b\x69\x9a\x19\x6d\xde\x67\x91\x6e\x5d\x3e\x7c\x77\x14\x58\x9e\xfc\x81\x55\x01\x14\x24\x7d\x71\x1a\x24\x09\xdc\xb5\xb7\x39\xc0\x7e\xb2\x03\xf0\xd4\xa7\xf1\x81\x84\xea\x06\xe0\x15\xed\x80\x87\x49\x1b\x80\xd7\xd9\xb0\x52\xdb\xb2\x31\xb6\x5c\x58\x90\xc9\x85\x61\x75\x01\x11\xe2\xf2\xa9\x88\x24\xc0\x21\xa1\x80\xf6\x95\xe9\xc6\x0c\xe5\x67\xbc\x59\x14\x3a\x6c\x76\xaa\x30\xe4\xf0\x9c\x9e\xf3\x83\x7e\xc5\xc1\x19\x04\x0c\x50\x4b\xe7\xa3\xa9\x89\xf9\x40\x44\x63\xa6\x9c\x1f\x24\xb8\x51\xbc\x75\xfa\x4d\x03\x4d\x61\x15\xe8\x86\x14\x93\x7e\xe1\xdb\x23\xc3\x46\xf0\xc7\x89\x2a\x2c\x64\x8b\xde\x39\xdc\x29\x65\x70\xe1\xd8\x12\xeb\xa5\x74\x14\xfa\x40\x3b\x8a\xb0\x1b\x89\xb1\x97\xbc\x31\x80\xcc\x58\x21\x65\xc6\x8a\x3c\x10\x9d\xcd\x7c\x55\xc0\xcf\x7c\x82\x50\x51\x90\x1e\x54\x04\x15\x17\xf8\x86\x20\x43\xe6\x03\x2a\x59\x5e\x93\x99\x2d\xae\x8d\x02\x27\x68\x29\x34\xaa\x03\x74\x0e\x96\x4f\x97\xc9\x1a\x31\xc8\x32\xf7\x6a\xc9\x2c\x2f\xbb\x56\xd8\x08\xd2\x23\xdc\x0b\x8f\x9f\x39\xe4\x53\x08\xe8\x09\x6f\xe0\xb1\x31\x55\x24\x2b\x6d\x87\x9f\x05\x64\xa0\x08\x12\x36\xc0\x88\x10\x9a\x2c\x1d\x08\x04\xe8\x1c\x2e\x5a\x9a\x9a\xbc\x4c\x2e\x99\x00\xb3\x26\xec\xb7\x69\x40\x26\xcc\x21\x2b\xd3\x2e\x44\x17\xa2\x69\xbe\xce\x16\x8a\x4e\x37\x76\x99\x36\xa4\xb3\x2e\x29\x73\xe4\x7d\xa7\xeb\x5c\xda\x3a\x44\x4b\x14\xba\xf4\x12\x5a\x52\xc6\x2c\xf3\x40\x5a\x64\x65\x40\x05\x95\xa8\x3a\x8e\xce\x39\x55\xac\x4e\x3b\x0d\x43\x29\x3a\xc3\xcb\x84\xa3\x31\x49\x5e\xb2\xa4\x5c\x3c\xfc\xca\x43\x9a\x3a\x01\xb8\x0c\xba\xb0\xa8\xf6\xb0\xf4\x6c\x36\x7d\x05\x82\x1c\x85\x13\xb1\xce\xe7\xe7\x9c\xbe\x19\x3a\x7e\x30\x14\x9e\x3a\xfa\xc6\x96\x22\x71\x9c\x34\x02\xbd\x62\xcb\x99\x46\xa0\xd7\x46\xc0\x33\xa1\xcd\x37\x0c\x94\xd9\xa8\x9a\xa6\x37\xda\x26\x9a\x3b\xd9\x65\x38\xd3\x6d\x68\x31\x51\x24\x2c\x63\x9c\x4d\xec\x2d\x23\xc4\x9c\x67\x90\x45\x6f\xe6\x52\xd9\x06\xd6\x99\x86\xe5\x64\x86\xa3\x1a\x7e\xa3\x73\x46\xc8\xd6\xb1\x48\xf4\xb0\x2e\x71\xdd\x18\x0b\x8a\x46\x21\xbd\x5e\x40\xa1\x26\x9b\xdf\x86\x53\xe8\x0c\x14\x99\xc9\xa5\x59\x60\x4b\xf0\x39\x07\x9b\xcc\x70\xf3\x97\x4c\xff\x89\x24\xe2\x17\xba\xfb\x03\xa7\x3c\x64\x67\x07\x43\x01\xda\xe9\xda\x0a\x8a\x90\xd2\x6c\x31\x13\x38\x58\x72\x32\x68\x38\x59\x8e\x53\xdf\x30\x59\x5b\x90\x93\x82\xf4\x7e\x15\xc4\xc8\x94\x78\xf1\x32\x92\xcd\xd9\x78\x9d\x0d\x71\x85\x25\x91\x89\x2d\x87\x67\x50\x74\x50\x49\x11\xd9\xb3\xb4\x90\xf8\x31\x99\xb8\xa4\x97\x44\x41\xc5\x96\x09\x97\xf0\x55\x2d\x19\xa2\x59\x87\x42\x32\xbe\x4c\x41\xb1\x4a\xb4\x9a\x8f\x87\x40\x5c\x5a\x93\x60\x37\x34\xf0\x22\x97\x59\xb0\xe6\x0d\x1f\x69\xca\x24\x59\xa4\x4e\x98\x2a\x28\xfc\xbe\x21\x8b\xd6\xec\x30\x80\xa3\xf5\x21\x50\x98\x6b\x07\x8a\x42\xcf\xf8\xc5\xab\x92\x91\x4f\x40\xad\x8d\x34\xb7\x66\x6a\x54\x32\xd8\xa7\x48\xeb\x74\x8b\x09\x21\xa2\x0a\xe5\x42\x86\x4a\x2e\x26\xf9\xdc\x35\x19\x18\x9b\x80\x64\x23\x87\xc4\xa7\xd0\xd9\x26\x71\x8e\x14\xed\x24\x96\x8d\xc8\x93\x81\x8b\x06\xdc\xb8\xb1\xf8\x42\x01\x69\xea\x72\xc1\xf9\x28\xc2\xbc\x49\x04\x71\x61\x03\x9d\x8c\xbb\x1b\x5b\x67\x24\x75\x52\x07\xfc\xcc\xc1\x31\x67\x2c\xe3\x9f\x9c\xd3\x82\x35\x04\x34\x73\x0e\xb4\x10\xeb\x28\x2c\x3d\x59\x7a\xe5\x41\x24\x13\x3f\xf2\xc0\x41\xe0\x83\x45\x84\x6d\x32\x57\xb0\x74\xe3\x89\x62\xc9\xd6\x81\x00\x5a\x93\x09\x44\x92\x07\x92\x0f\x0a\x59\xa6\xd3\x07\x45\x20\x62\x2b\x04\xb0\x3e\xdb\xdf\xe7\x78\x37\xc6\xd3\xfd\x10\x73\xe9\x21\xe4\x6b\x21\xb2\x74\x92\x84\x11\x95\x3f\x41\x67\x5a\x13\x09\x8b\xad\xa4\xb3\x10\xe1\x25\x08\x17\x0b\x0d\x5e\x6b\x96\x9e\x79\x65\x6d\x24\x8b\x31\x3a\xdd\x5a\x40\x9e\x4a\xb2\xc4\x16\x04\x29\xe7\x74\x73\x2e\xec\xce\x91\x84\x62\xf6\xd4\x64\xc2\x14\x03\xc2\x9e\x72\x2c\x3d\xd3\x04\x69\xb0\xb4\x23\xe4\x42\xac\x33\x72\x87\x86\xba\xa4\xe8\x3e\xc4\xec\x93\x4d\x02\xd9\xff\xe7\x83\x6b\x11\xd3\x2d\x09\xf9\x9a\x9b\x64\x69\x49\xdb\x39\x38\xe3\x36\xca\x42\x1a\x8a\x77\x42\xcf\xb9\xe1\x01\xdd\x30\x10\x67\x73\xaa\x97\x0c\xf3\x5d\x23\x52\xc7\x6c\x80\x23\x7c\x41\x4e\x55\x46\x2e\x80\x46\xa6\xeb\x5e\x82\x0c\x29\xb8\x4c\x63\xab\x90\x04\xaa\x1b\x03\x41\x91\x69\x08\x4d\x96\x22\x6e\x44\x90\x9b\xe8\x91\x55\xf8\x99\x83\x05\x59\x46\x95\x08\x3c\x64\x2d\xa3\x1d\x28\x8a\x93\x84\x5a\xca\xac\x11\x7c\xd2\xac\x91\x0a\x91\xf1\xd7\x68\x92\x9f\xc1\x0a\x8d\x9f\x25\xb6\x86\x78\x30\x6b\xc4\x2d\x84\x26\x4b\xbc\x01\x17\x92\x2c\x5e\xf2\xed\x13\xda\x83\x17\xf9\x26\x91\xe0\x49\x78\x45\x62\x1a\xe9\x3e\x97\x3a\x41\x5a\xa2\x8e\x0d\xfd\xcd\xcc\xce\x29\x14\x91\x9c\x5a\xdc\x16\x10\xe9\x62\x25\x14\xd4\xd3\x7d\x26\x2e\x26\xdf\x4a\x1d\xc0\x7a\x0f\x56\x23\xd5\xa1\x68\xf8\x4d\xe8\xa6\x79\x93\x24\x08\xe0\xdf\x60\x92\xd0\xbd\x09\x70\x34\xb3\xe5\x5c\x0e\x4c\x14\x5c\x45\x97\x03\xe9\xe0\x02\x69\xa7\xe7\xfb\x92\x08\x8e\xc9\xde\x2a\x80\x95\xa8\x95\x2e\x42\xe5\x50\x63\x74\xa7\x48\xba\x11\x86\x0c\xb4\x32\x7a\x90\xf1\x55\x41\xb7\x37\xc9\x25\xfa\xd6\x10\x88\x2c\x00\x37\xe2\xef\x3c\xa3\x9e\x83\x68\x01\x56\xa5\xbd\x93\xe5\xa5\x95\x7a\x8d\x08\x64\x1a\x60\x12\x78\x47\xd4\x46\x93\x55\x30\x52\x8c\x44\x05\x02\x6f\xc8\x40\x96\x25\x09\xf6\x45\x43\xd6\x65\x06\x56\x39\x2f\x92\xaf\x1e\xca\x94\x81\x37\xa4\x01\xe9\xa4\x24\x3b\xd6\xb9\x94\x0b\x8a\xee\xae\x29\x33\x2f\xd7\x0d\x33\x37\x99\x99\xa7\xab\x39\x64\x0b\x9b\x27\x1a\x2f\xb4\x4a\x46\x9c\x24\x2a\xbb\xa4\xbb\xbb\x7c\xc5\x81\xa1\xb0\xfe\x92\x76\x5c\xe7\xf0\xe8\x41\x21\x34\x2a\x72\xfd\x25\x3c\x28\x41\x3b\x14\x88\x34\x38\xda\xa2\x90\x41\xd1\x45\x4d\x24\x18\x15\x16\x2c\xc9\x4b\x0b\xce\x43\xb7\x25\xc4\x60\xea\x34\x63\xd6\x97\xbb\x54\x27\xbd\xae\x3a\x15\xa0\xbc\xc1\xcf\x12\xf7\x4c\x6b\x40\x04\xd8\x93\x8d\x09\xae\x83\x27\x63\xbc\xbc\x6b\x30\x87\xcb\x18\x33\xab\x4e\x3f\xd3\xb5\x65\xe4\x19\x85\xca\x96\x96\xd9\xb3\x88\xfc\x91\x92\x6e\x98\xd8\x62\x48\x63\x49\x22\x4d\x41\xf1\xa2\x64\x56\xbe\x88\x60\x26\x31\x28\x89\x3a\xab\x2a\xa2\x34\x8f\x7d\x8e\x54\x5b\x73\x44\xa3\x1a\x90\x63\x22\xbc\x23\x4d\x74\xf8\x83\x54\x37\xab\x6d\x97\x83\xc3\x79\x35\x4a\xe1\x4f\x7a\x33\x87\x5a\x83\xc2\xf2\x8f\x7d\x03\x2a\x6a\x2e\x81\x62\x83\x21\x20\xfa\x48\x9a\x69\x44\x45\x95\xa6\xd5\x28\x55\xf3\xb4\x67\x02\x28\x22\xeb\xa0\xf0\xb3\x00\x16\x9f\x64\x68\x4d\x9f\xf9\x92\x84\xc4\xca\x6a\x32\x84\xe6\x92\x0e\xe2\x93\x4d\x64\x34\x34\x9a\x60\x0c\x26\x32\x09\x5a\x7b\xba\x76\x82\x74\x94\xe0\x75\x9d\xe4\x5f\x09\x5a\xc4\x9f\xc8\xa8\x8a\xa5\xe7\x7c\xe7\xc8\x46\xe6\x01\x49\x90\x54\x9e\xa5\xcd\xd9\x05\xa9\x50\xd9\x06\xdd\x63\xff\xc5\x8a\x8a\x82\xd4\x33\x6a\x1c\xdc\xe3\x7b\x49\xba\x3f\xf3\xe0\x6d\x9d\x8d\x0a\x8d\x9a\x7f\x49\x96\x60\x0a\x14\x5d\xc1\x11\x6c\xbe\xac\x92\x5e\x59\x07\x24\x30\xab\x6f\x9c\xd8\xbb\x30\xea\x3a\x40\x34\x8e\x05\x88\x02\x35\x58\x45\x31\xc8\x54\x34\x73\x4a\x88\x44\x1a\x35\x7f\x5c\x42\x99\x7c\x7f\xc0\xc4\xeb\x00\xca\xb3\x08\xde\xc4\x02\xe7\x45\xb1\xf4\xcc\x38\x82\x78\xaf\xc0\xdb\x58\xab\x74\x4b\x0e\x89\x0e\x2a\x80\x9a\xc3\x8b\xf4\x49\x3f\x5c\x79\xdf\xac\x5e\x5b\x25\x1f\xdf\x7b\xf2\xda\xa6\xe0\x62\xb5\x4a\xbb\x7e\x64\x83\x1d\x60\xe9\x8a\x8d\x68\x08\x8e\x8c\x90\xf8\x59\xb0\x42\x83\x33\x53\x73\x08\x96\xee\x14\xf1\x45\xb2\x04\x4c\xcf\x46\x6b\xf1\x69\xdb\x1c\xa1\x4a\x52\x2c\xb7\x88\x78\x92\x6e\xf0\x48\x60\x89\x53\x4c\xd7\x8f\xe2\x48\x85\xcb\xb6\xaf\xd9\xd7\x2c\x5d\x14\x44\x27\x62\x3e\x65\xd0\x31\x1c\x76\x4d\x1a\x0a\x5d\x34\x28\xc8\x30\x24\x5a\xe4\x6b\x31\xe2\x67\xae\x25\x13\xfb\xb0\x64\xcc\x49\xd7\x99\x61\x6b\x5a\x87\xbc\xab\x66\xe8\xae\xa7\x9a\x27\x51\x4a\x25\x8f\x46\x63\x25\xe2\x6d\xd4\xf9\x7e\x40\xba\x4d\x4e\xd9\xc7\x3e\xca\x39\x5c\x91\xe0\x63\xc0\x38\x7a\xd3\x25\xfd\x4c\xd3\x75\xa3\x14\x86\x20\x84\xc0\xc9\x8f\x1b\x41\x2d\xe2\xa7\x99\x4c\x92\xfa\x88\x4d\x9b\x88\x9f\x95\x74\x61\x68\x15\xac\x06\x22\xc2\x81\x0e\x2c\xe7\x26\xe8\x46\x44\x9c\xea\xb5\x6b\x07\xff\xf6\x77\xf7\xea\xcf\x6f\xff\xd2\x2f\x26\x1f\x9a\x00\xd6\xf8\xfd\x9f\x83\xde\x74\xf2\xe6\xd5\xc3\xa4\x1a\xff\x63\x54\x94\xd5\xff\x18\xfc\x73\x52\xbd\x62\x9f\xde\xbc\x52\xaf\xd8\x67\x7a\x36\xc1\xdd\xc5\xca\x7d\x92\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\x7c\xde\x72\x3e\x6f\x39\x9f\xb7\x9c\xcf\x5b\xce\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\x7c\xde\x72\x3e\x6f\x39\x9f\xb7\x9c\xcf\x5b\xce\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\x7c\xde\x72\xfe\xcf\xdc\x72\xbe\xbb\xbb\x23\xf3\xea\x7e\x31\xf9\xb0\xcd\x21\xa1\xdf\x2b\xc7\xc3\xc9\xf0\x6e\xfa\xb5\xfb\x24\x68\xa6\xbb\xc8\xf9\xe5\x8c\x9e\x57\xfa\x46\xaf\x18\xc0\x6b\xab\x95\x5d\x37\x80\x37\x2a\x32\x7d\xa5\x72\x9d\x2e\xa7\x3f\xab\x15\x83\xfc\xeb\x3b\xe1\x56\x2a\x6a\x96\xaa\xa6\xfe\x6e\x94\xbc\xd2\xb3\x54\x75\xc5\xcf\xc3\xfe\xe4\x7e\x16\x6d\x3d\xa6\x3f\x57\x0a\xab\xe6\x3e\x5b\xea\xff\xfc\xf3\x5f\x7f\x12\x61\xa7\x4b\xf9\x60\xd8\x2f\x3a\x5f\xce\xa3\xdc\x1d\xe9\x51\xbe\xe6\x8d\xba\xbc\x96\x4b\x47\x11\xf4\x72\xf2\xe7\x18\x9d\xcf\xde\x5e\x12\xac\x4b\x1e\xb4\x72\xa6\x20\x22\x0e\x20\x9e\x90\x3f\x54\x54\x5c\x82\x41\x8a\x13\xa2\x99\x79\xa0\x0b\xea\x29\xa2\x2a\xd2\xd9\xc0\x0d\x18\x7f\x63\xc0\x84\x2e\x72\x7a\xfb\xb8\x12\x46\x21\x87\x57\xf8\xeb\x4f\x41\x36\xc7\x1b\x74\x83\xfd\x35\x28\xa4\xa1\x26\xc8\xda\xd2\x91\x05\xd2\x76\x72\x91\x72\x9c\x1c\x81\x15\xd8\x74\x57\x15\xdd\x6c\x15\x43\xad\x48\x60\x92\x58\x05\x87\x18\x7c\x6d\x40\x4b\x43\xce\x0f\x92\xc4\x79\xb9\xb7\x6b\xa1\x58\x04\x6b\xb0\xbe\x27\xd7\x13\x6d\xa8\x93\x10\x6e\x02\x08\x5b\xd3\x5d\x5d\xd6\x84\x6b\x50\x81\xa8\x43\x68\x86\x39\x0b\x10\x95\xab\x3d\x39\x95\x13\xd9\x98\x71\x9c\x8a\xc7\x75\x8f\xdf\x55\xdc\x1d\x7e\x98\x16\x5f\x3d\xda\xa2\x52\x84\xf3\xa2\x42\x91\xbe\xa7\xa7\x60\x52\x08\x0a\xbb\xe0\xd9\x6a\xba\x20\xcf\x13\xa1\xfd\xe3\x7b\x99\x9c\xba\x3d\xa0\x6c\x1b\x93\x7e\xeb\x90\xfc\x1a\xfa\xab\x34\x45\x37\x45\x71\xcf\xaa\x74\xfb\x9a\x0d\x20\x91\xc7\x79\x0d\x2a\xd0\x45\x6f\x5d\xa4\xba\x25\xc8\xb4\x05\xa4\x94\x03\x29\x54\x0a\x01\x11\xec\x0c\xa2\x75\x54\x91\x42\x8c\x04\x6c\x16\x55\x6e\xd4\x6a\x64\x97\xa8\x76\x49\xbb\x0b\xb4\x93\x1c\x28\x3e\x39\x36\x1f\x67\xd8\xbb\x26\x49\x4b\xf9\x2c\x46\xdb\xe6\xe8\x20\xc8\x82\xa2\xb7\x32\xd9\x6c\x80\x0a\x72\x7a\x22\x1f\x38\x50\x28\x33\xa4\xed\x75\x49\x8d\x49\x55\xd3\x5d\x73\xb4\xe3\xbb\x72\x72\x42\x37\xb5\x81\xf2\xc8\xf0\x85\x4a\x0f\x4a\xd6\x24\xad\x29\x88\x22\xde\x78\xd4\xaf\x49\x33\x44\x11\x94\xce\xe8\xb0\x83\x40\x5f\xba\x74\xb8\xf2\xd8\xb7\xe0\xac\xa1\x0b\xb4\x42\x99\xe3\xd3\x4a\x8a\xe6\x2a\x93\x6b\x5e\x08\xc8\xc8\x67\x29\x02\x6f\xd3\x96\xa6\x20\x34\x2e\xdd\x02\xa6\xac\xa3\xc6\xdc\xd2\x52\x28\x9c\x1a\xfa\xab\xac\xab\x09\x69\xc9\x67\x6f\x96\x42\xb0\x52\xf8\x26\x89\x0d\x61\x17\xd6\x42\x0c\x36\x7f\x4b\xf1\xe4\xbc\x05\x49\x4f\x35\x93\x88\xa1\x25\x9d\x1a\x52\x44\x05\x0b\xa8\x72\x78\xe7\xd3\xdf\xb4\x09\x4f\x7e\x90\x8e\x76\x88\x51\x02\x35\xc8\xec\xbd\xb2\xeb\x80\x45\xdb\xeb\x8e\x5b\xd0\x52\x3d\xbe\x0f\x28\x35\x64\x18\xa2\x68\xc3\x39\x4e\x8f\xa5\xbf\x74\xa9\x9d\x90\x28\x51\x29\x5a\x4f\x85\x92\x29\xe9\x7e\xc6\x91\x0a\x57\x4b\x70\x22\x85\x04\x2b\x93\x86\x4f\x1b\x21\x8b\x28\x5e\xa4\x15\x16\x60\x54\xc0\x4f\x5a\x57\x99\x22\xab\x76\x13\x98\xa0\x4c\x48\x27\xa2\x08\x75\x3e\x92\x2e\x8e\x32\xb2\x04\x1f\x71\x6e\xe8\x5c\x4e\x45\x9d\xe2\xf6\x51\xd4\x9d\xb4\x3f\xea\xb5\xaf\xb1\x2d\x94\xdb\x49\xb4\xa4\x78\x25\x12\x15\x57\x4c\x44\x79\xdf\x48\xf2\x58\xa3\xfb\x0b\x8d\xa2\x9b\xc0\xb4\x93\xa8\xc2\x2b\xfc\x64\x30\x4a\x27\x8e\x14\x59\x87\xf6\x6e\xe9\xa4\x25\xc4\x26\xea\x3a\x29\x87\xcb\x9b\xd1\x12\x27\x87\x7c\x3a\x91\x06\x0a\x89\x8f\x88\xf2\xa3\x43\x70\x68\x42\xc9\x1a\x54\xef\x83\x9b\x49\xf0\x56\x12\x1a\x91\x48\x89\xf8\x45\x0e\xa8\x01\x94\xee\xd2\x2d\x84\x74\x12\x41\x9b\xa9\x29\xe8\x59\x48\x5f\x94\xd2\x08\xbf\x32\xa6\x38\x4b\x3a\x49\x60\x4a\xc6\x94\x2b\x23\x82\x9c\x7c\xec\x73\xda\x08\x66\x1a\xac\xf6\x88\x5b\xff\x3f\x7b\xef\xba\x1b\x39\xce\x2c\x08\xbe\x8a\xb6\xfa\x34\xa6\x5c\x65\xe9\x23\xa9\xbb\x7d\xda\x38\xdf\x78\xce\xa0\x17\xa8\x5a\xec\xe2\xec\x36\x16\xdd\xa8\x19\xc8\x29\xa5\xad\x69\x65\x2a\x47\x92\x6f\x65\xf8\x7b\x8c\xfd\xbd\xcf\xb6\x4f\xb2\x60\x90\x94\x48\x8a\xba\x66\x56\xdf\x3e\xa3\xba\xab\x52\x12\x19\x0c\x06\x83\xc1\x60\x30\x18\x01\x51\x3a\x80\x89\x31\x62\xd3\x42\x7e\xc9\xae\xd3\x21\xf2\x75\x87\x03\x27\xa2\x34\x50\xeb\x20\xc4\x79\x45\xa9\x84\x78\x25\xe5\x2a\x67\xf8\x5f\xae\xf1\xe8\x12\xdd\x64\x55\x95\x6c\xcb\x6a\xf7\xc7\x59\xa6\xa7\x03\xbf\xb4\x1d\xf4\xaf\xbd\x7f\xff\x77\x9f\x2d\x60\x3e\xa5\x83\xeb\x60\xbf\xf0\x9c\x08\x62\x0c\x45\x04\x3f\xf8\x4e\xe0\x79\x9f\x7c\xc7\x47\xb1\x15\xb1\x2b\x7c\xbd\x65\xd0\x43\x1e\xfa\xcf\x84\x2f\xf6\xc8\x89\x5d\xb8\x75\x18\xf2\xca\x00\x0e\xf2\x36\x10\xf7\x27\x0a\xdf\x00\x41\xc6\x03\x02\x1c\x21\xa8\x4b\xa0\x6e\x68\xb1\xba\xf4\xef\xaf\x0c\x4d\x38\x9e\x72\x25\x44\xdd\x07\x9b\x35\x66\x43\x0d\x68\xad\xbf\x7a\xb6\x81\x69\x0f\x65\x9d\xa5\x36\xc5\x01\xc2\xc2\x5e\xdd\x17\x57\x45\x7e\xe5\xb0\x64\xd4\x56\x5a\x38\xbb\xac\xbe\xb3\xd2\xa6\x17\x59\xb6\x28\x37\xbf\xda\x75\x26\x45\x94\x85\xaa\x17\xfb\xb2\x79\xcf\xa3\x6f\x40\x82\xbc\xb3\x39\xc0\xee\x0f\x75\x53\x65\xc9\xce\xce\xf7\x75\x93\xec\x37\x19\x83\x68\xaa\x41\x3f\xd8\x9b\xb2\xa0\x4c\x97\x97\xfb\xab\xe5\xad\xfe\x91\xc3\x77\xd0\x61\x0f\x1c\xdf\x22\xe8\x81\x8a\x8d\xc2\x76\xe0\xa2\xf1\xdf\x63\xc7\x8b\x7c\x8b\xfd\x4d\xa7\x35\x81\xa4\xa3\x1b\x04\x2e\x1c\x2e\x64\x66\x15\xdb\x30\x1c\x86\xb6\xe7\xf8\x91\x5b\x30\x21\x44\xb0\xf7\xc9\x75\x58\x58\x96\x84\xd6\x23\xfc\xa6\x2d\x55\x0c\x68\xad\xa8\x80\xa3\x59\x14\xfb\xb4\x2c\x15\x4f\x21\x6d\xcf\x87\xf6\x58\x30\x20\x0c\xe7\x01\xfe\x86\xee\xb9\x69\xaf\xe9\x8a\x08\x97\x7e\x5d\x2a\x31\x1d\x9f\x14\x0e\xf1\xc0\x36\x00\x67\x97\xd8\xd3\x5b\x8a\x60\x0b\x0e\x47\x72\x10\x40\x8c\x2e\x17\x54\x28\x22\x02\x4d\x85\x16\xfb\x1b\xba\x86\xa1\x6f\x49\xec\xc0\x6b\xfe\x96\xae\xc7\x31\x8b\x20\x00\xae\x13\x11\x1c\x37\xba\x60\x33\x95\x9b\xa2\xdb\xc9\xd8\xf2\x1c\x37\x0c\x29\xf1\x60\x53\x1c\x52\x49\x8a\x5c\xda\xbb\x24\x86\x78\xaf\x31\x8f\xfa\x8a\x20\x82\x56\x18\xc3\x76\x1b\x2a\x78\x11\x3f\xd3\x80\x28\x6e\x51\xf4\x77\x19\x38\x1b\x19\x96\xf1\x13\x42\x96\xdb\xd8\x89\x62\x5c\x80\x29\x12\xe4\x3c\x86\xb0\xb5\x7f\x27\x8e\x17\xb1\x78\x63\x01\x23\x5f\x48\xfb\x14\x40\x74\xda\xc0\x03\x13\xbb\x0f\x81\xd8\x03\xc8\xaf\x5a\xb0\x83\x58\x08\xfe\xe5\x82\x66\x05\x39\x27\x40\xeb\x46\xb1\x4b\x97\x17\x88\x66\x08\xa1\xd5\x1c\x0f\x66\x75\x88\x5c\x8b\x9d\x05\x62\x3f\x76\x48\x1c\xb2\x10\xab\xc1\x06\xec\x2b\x9e\x4b\x59\x20\x70\xe2\xd8\xa7\xff\x5a\x74\xe5\x8e\x1e\x1c\xff\xce\xf1\x93\x08\xfc\x72\x22\xe1\x9d\x83\x7c\x07\x42\x9a\xb9\x31\x5d\x5e\x22\x5a\xd5\x76\xfc\xc0\x2b\x60\xe9\x67\xa7\x72\x10\xe2\x13\x34\x9a\xd0\xf6\x1d\x1c\x42\xa2\x5d\xc7\x83\xa4\xbd\xb4\xdb\x20\x6b\x5c\xca\x4c\x3e\xcf\x1d\xcb\xb5\x93\x20\xe0\x79\x80\xd9\xd1\x0b\x64\xfe\x74\x70\xe4\x41\x22\x05\x37\x84\x70\xa5\x14\x17\x37\x8e\xe0\xf8\xcb\x85\x1c\xa0\x54\x1f\xdb\x70\xa3\x9f\xcf\x62\xec\xc3\x61\x35\x1d\x19\xb0\xfc\x84\x5e\x48\xd5\x23\x4a\x78\x08\x65\x0a\xf1\x1d\x03\x4a\x41\x08\x02\x41\x6c\x61\xf6\xa5\x43\x0f\x01\xd4\xe0\xe0\x2b\x48\x08\x0b\xb5\x21\x1c\x35\x30\x84\xaf\x80\x94\x22\x85\xed\x78\xa0\xf2\x82\xf7\x0e\xad\xfe\xf7\x08\xb8\x24\x12\xbc\x82\x5c\xc6\x98\x11\xdd\x1b\x59\xec\x6f\x1e\x69\x1c\x5b\x81\xe3\x21\x4a\xb2\x30\x74\x5c\x12\x3b\x90\x2d\x38\x0c\x37\x54\xa7\xb3\x1d\x30\xfa\xd9\x90\x4f\x22\xa0\x5a\x92\x8f\xbf\x7e\xc6\x31\x37\xa1\x11\xaf\x80\x00\x14\xb6\xe3\xc1\xa9\x36\xc6\x94\x6c\x89\xce\x42\x10\x20\x34\x72\xdc\x88\xce\x21\x97\xc7\xb3\x87\xc8\xcc\x04\x8c\x62\x21\x9d\x8c\x10\xe1\x8d\x80\x4d\x1c\xd2\x29\xfb\x54\x9b\x83\xa8\xb0\x24\x74\x48\x18\x80\x89\x97\xd0\x31\x63\xf3\x86\x8a\x13\xd2\x0a\x15\xa6\xe4\x38\x1e\x55\xc3\x3d\xd7\xe5\x07\x9b\x2c\xbc\xf0\x86\x85\x13\x73\x3d\x16\xad\xce\x09\x11\x8b\x68\x8b\xc1\xdb\x84\x45\xe5\x15\xb1\x79\x11\x02\x95\x34\x84\x58\xe9\x10\xff\x0e\x41\x2c\x4f\x12\xc5\x85\xe3\x05\xe0\x6c\xc7\x62\x72\x44\x2c\x6b\x11\x5d\x13\xe3\x38\x64\xee\x19\x2e\x0b\x46\x08\x0e\x1a\x14\x45\x3a\x39\x99\xfd\x87\x8e\x16\x44\xb3\x73\x03\x98\x32\x10\xf1\x39\xa0\x7f\xb1\xa3\x8b\xbf\x47\x74\x45\x8c\x84\x16\xc3\x72\xd2\x6e\xa8\x06\x07\x89\x8d\xa9\x32\x09\xd6\x74\xd7\xf1\xe2\x88\x2a\x6a\x30\xe6\x70\x20\x44\xe0\x10\x1b\x9a\x83\x08\x19\x31\xdf\x95\xd0\xbd\x39\xd5\xfa\x0a\x3a\xcd\x30\x1b\x5e\xba\x39\x82\xf0\x0e\x80\x5a\x1c\xbb\x5f\xdf\x41\x40\xf2\x5f\xb3\x3f\x49\x30\x9a\xb7\x45\xe6\x6d\x91\x79\x5b\x64\xde\x16\x99\xb7\x45\xe6\x2f\xb2\xc8\x2c\xd9\xcf\x65\xbb\x43\xf3\x6c\xda\x83\x0d\xd6\xe5\x99\x3f\x44\xcd\x7e\xca\xf3\x55\x5b\xc1\x41\x3c\x16\x40\x9b\xc4\x6c\x78\x5f\x39\xd8\xfc\x40\x95\x71\x42\xac\xd8\x94\xf6\x11\x98\x0d\x64\x18\x0f\xdd\x26\xc3\xf2\xd5\xb3\x72\x9a\x55\xe6\x0f\xbc\x09\x1e\x0c\x96\x17\x5b\xee\x8f\x30\xd7\x30\x9d\x69\x96\x13\xdb\xc4\x22\x0f\xd8\xdb\x20\xaa\x92\x38\x31\xc4\xd0\x23\x77\xd8\xdb\x40\x11\x8b\xd8\xf4\x9d\x4d\x7e\xf2\x41\x89\xc1\x36\xad\x41\xff\x7c\xdd\xd9\xc4\xc2\xe8\xc7\xf0\xc1\x26\x77\x18\x3d\xfc\x55\xa2\x09\xfe\x1e\x04\x7a\x75\x76\x65\x95\xd9\x82\xf5\x76\xd9\xfe\xde\x72\xe4\xa7\xab\x5f\x9a\xe7\x43\xf6\x03\x24\x08\xba\x29\x9f\xbe\x7c\x2c\x92\x9b\xac\xb8\x12\x31\x58\x9b\xe4\xa6\xc8\x9c\xbb\xa4\xb6\x13\xe0\xfb\xda\x6a\xaa\x2b\x47\xfc\x5e\x0e\xe9\x31\x6f\xee\x6c\x36\xcf\x56\x83\xfa\x33\xce\x8e\xc0\xc2\x48\x1f\xfa\x5a\x0c\x79\x3b\xd2\xd2\x08\x63\x62\x2d\xab\x60\x07\xcb\x2a\xfc\x25\xe6\xd4\x9f\x88\xac\x5a\x18\x64\xe0\xe8\x5f\xb6\x65\xf5\xc3\x2e\xc9\xf7\xf6\x3e\x79\xb0\x9b\xf2\xf6\xb6\xc8\xbe\xfc\xa9\x17\x01\x62\x45\x9a\xf4\xaa\x5b\xda\xb4\xf4\xb3\x04\xfd\xbe\xee\x90\x45\x16\x0d\x07\xb2\x82\x7f\x3a\x26\xff\xd3\x10\xf5\x75\x32\x0b\x1e\x78\x8a\x2c\xcf\x83\xa7\x55\x9b\x9d\x09\x4f\xab\x37\x98\x0b\x4f\x2b\x07\x8f\x93\xe9\x01\x95\x52\x6a\x82\x40\xf6\x49\x4b\x11\xb8\x38\x81\x9e\x8a\x15\x24\xc7\x63\x80\xa7\x93\xe8\x29\xe5\xbe\x7d\x1a\xbd\x37\x17\x9d\x3f\x9f\x8b\xce\xfc\x4d\x29\x73\x92\x39\xd1\x21\xe3\x10\xb0\xe1\xcd\x60\xaf\xc6\x8a\xfd\x9c\x06\xe3\x4f\xb9\xb4\x42\x86\x0b\xca\xcb\x51\x18\xc4\xfe\x35\x41\x0e\x8a\x3d\xcf\x0a\x1d\x1f\xc5\x1e\xb1\x08\xb6\x02\xc7\x0d\x90\x17\xd0\x9f\xfe\x35\xc1\x96\xeb\xb8\x9e\x8b\x59\x52\x1a\x3a\x6f\x88\x85\x23\x8b\x5c\xe3\x00\xde\xd3\x47\xbf\x2b\xe3\x5b\xfe\x35\xf6\xad\xc0\x21\x3e\x72\x63\x0b\xfb\x4e\x18\xf8\x56\xe8\xb8\x84\x60\x0b\x07\x4e\xe4\x13\xda\x58\x18\x92\x20\xfe\x84\x03\x96\xf5\x0c\x39\x88\x04\xe4\x1a\xfb\x4e\xec\x52\x21\x80\xc0\x7d\x02\xfb\x8e\x0b\x99\xd8\x90\xe3\x11\xdf\xb5\xb0\x47\x71\x86\xf4\x2d\x51\x84\x3f\x45\x4e\x1c\xfa\x90\xdc\x36\xc0\xd8\xbd\x8e\x9c\x30\xf2\x3c\xda\x14\x76\x23\x14\xd2\x0e\x11\x1f\xbb\x56\x40\xff\x5c\x7b\x1c\xbf\xc0\x72\x29\x32\xf0\xdb\xb5\xe2\x6b\x80\xe6\xa2\x80\x58\xae\x13\xb9\x5e\x04\xa1\xa0\x3d\x1c\xfa\x16\x64\x81\x8f\x48\xec\xfe\x84\x03\x07\x87\x28\xbc\x6e\x4b\x04\x8e\x1f\x11\x5a\x1f\x87\x4e\x10\xbb\x11\xfd\x45\x41\x11\xc4\x08\x24\x1a\x23\xc4\x0a\x2c\x42\xae\x43\xfa\x3a\x82\xe7\xb8\x2d\x14\xd3\x3a\x71\x0b\x22\x72\x70\xe0\xe3\xb8\x05\x1e\x5a\xbc\xd9\x9f\x38\x1a\x14\x8a\xe7\x05\x90\x47\x3a\x40\xd8\xa3\x35\xa2\x88\x78\xf4\x19\xfb\x31\x24\xf9\xf5\x7c\x02\xe4\xf2\xa3\x28\xfa\xc4\x6e\x8e\x42\xb6\xd0\x20\x26\xd1\x35\xb8\xf7\xfb\xe0\xed\x19\xd2\x16\x31\x64\xb7\x8f\x62\x4a\x51\xcf\xc2\xee\x35\x86\xd4\x4b\x80\x1c\x25\x3d\x1d\x5b\x3a\x18\x14\x93\x6b\x1c\xf1\x0f\x81\x45\x50\x5b\x8c\xfe\x74\xaf\xe9\xdf\xd8\x89\x71\x48\xbb\xe4\x78\x24\x04\x1c\xe2\x20\x0e\x2d\x1c\x39\x7e\x10\xc1\x08\x7b\x1e\xf9\xa4\x31\xdf\xcf\x9f\x71\x64\x01\x6c\xdf\x27\x74\xa4\x30\x5c\xf6\xf4\x09\x89\xe0\xe7\x35\x18\xe0\x3d\x2f\x0c\x89\x25\x0a\x79\x94\xf9\xbc\x6b\x1c\xc2\x7b\xfa\x18\x76\x65\x42\x5a\x27\xec\x60\xf0\x42\x74\x59\xb1\x82\x9f\x3f\x87\x56\x7c\x0d\x27\x01\xf0\x35\x10\xa5\x10\x2d\x80\xae\x7d\x01\x05\x59\x7e\x5b\xc8\xb7\xe2\x6b\x4a\x5a\xf6\x49\x14\x89\xac\xc0\x8a\xae\x05\x80\xc8\x0a\xdb\x12\xa1\x15\xff\xfc\xd7\xd0\x16\xdf\xe4\xc4\x9b\x9c\x78\x93\x13\xbf\x8b\x9c\x58\xa4\x55\x95\x55\x73\x3a\xad\x6a\x00\xd8\x88\x56\xa5\xd7\x58\xa3\x55\xa9\x30\xfe\x8c\x5a\x55\xe4\xb8\x54\xb6\x21\x84\x10\xbe\x86\x07\xe2\xa0\x28\x0a\x3d\x2b\x86\x7f\x21\xfd\x80\x8f\x10\xe5\x78\xf1\xf3\x47\xec\xd1\xb9\x16\x63\x2c\x7d\xf5\x9d\xa0\xab\xcb\x9e\x38\xd8\x9f\x42\x0e\x9e\xbd\x0d\x69\x45\xca\x95\x1c\x02\x9d\x77\x00\xc1\x13\x3f\x7f\xc4\xc4\xf1\x23\xd7\xbb\x66\xff\xb2\x5c\x5c\x88\x4e\xba\xee\x39\xc4\x74\x47\x00\xcf\x00\x22\x22\x04\x72\xe3\xfb\x2e\x81\x3c\x74\xe1\x27\xc2\xee\xf2\x20\x27\xbc\x26\x18\x72\x83\xd1\xdf\x54\x44\xd1\xb9\x1b\x63\xf8\x45\xcb\x5c\xb3\x1f\xb4\x84\x28\x48\x2c\x5e\x9b\xfc\x88\x43\x2a\xae\x02\x3a\x1f\xfd\x18\x04\x0a\xf2\x22\xc8\x79\x16\xc0\x43\x1c\x79\xed\x03\xf6\x7f\xc2\x9e\xe3\xfa\x3f\xe2\xf8\x1a\xc7\x9c\x40\x1e\x10\x95\xca\x44\x70\x87\x04\x3f\x49\xf6\x14\xfc\x44\xd0\x35\xfb\x4d\x10\x2f\xcd\x6b\x11\x0c\x25\x62\xf6\xe3\x47\xec\x83\x70\x83\xba\xec\x8b\xcb\xa1\xb2\x5a\xfc\xe9\x27\x2a\xc7\xe0\xb7\x68\x49\xd4\x62\x58\x60\xdf\xe2\xf8\x05\x8e\xfb\x13\x20\x0c\x8b\x5c\xd7\x91\x80\xc5\x56\x12\x9d\x0c\x1c\x17\xd3\xe1\x24\x3f\xb2\x4b\xe9\xd7\x54\x0c\xb2\xef\x18\x88\x16\x43\x26\x1d\xfa\x18\x06\xb0\x9c\x78\x71\xc4\x9e\x03\x28\x1c\x71\x79\x8c\xb0\xcf\x72\x95\x04\x84\xc5\x87\x8a\xa1\x78\x48\xe8\xe2\x48\x7e\x64\x34\xc6\xd7\x94\xc6\x2e\x87\x40\x11\x90\x89\xac\xd3\x38\xbe\x06\x5a\x91\xb6\x73\x0a\x89\xb1\x44\x62\xac\x90\x58\xd4\x62\x84\x14\x14\xf6\xaf\x3d\xce\xef\xec\xbd\x42\x5f\x89\xbc\x0a\x75\x45\x15\x86\x80\x20\x6e\x47\x5b\x99\xb4\x40\x59\x44\xda\xae\x01\x69\xa9\xfe\x40\x7e\x24\x4e\xe0\x5f\x13\x87\xc4\x18\xb1\x34\x35\x2d\x3b\x0a\x06\x6d\x59\x16\x0a\x61\xce\xc9\xd0\x43\xca\xea\x70\x19\x95\x48\x0f\x11\xac\xb7\x7c\x32\xa1\x6b\x31\x95\xc5\x54\x83\x79\x2e\xe6\x21\x7f\x60\x53\x95\x4f\xd9\x9f\x3f\x63\x04\xf0\xe9\xb4\x8d\x9d\x08\x05\xa1\x78\xb4\x62\x36\xd1\xe9\x3b\xfe\xa0\xcf\xf3\x98\x4d\x73\x1c\xbb\x2e\x2d\x01\xb5\xc3\x4e\x8a\x84\x8a\x14\xa1\xa5\xba\xaf\x1e\x43\x86\x55\x15\x4f\x0a\x6a\xd7\x7c\x42\x71\x04\x04\x04\xd2\x49\x11\xd2\x76\xfc\xe7\xcf\x3e\x13\x45\xd7\x1e\xc3\x82\x49\x20\x8f\x33\x0a\xbc\xf2\x3a\x3e\xf1\x38\x9b\x00\x40\x5e\x83\x20\x36\xb4\xf0\x2f\xf0\x1c\x6b\x0e\x5e\xc7\x9c\x49\xe0\x55\xdc\x31\x49\xcc\x99\x04\x20\xf0\x1a\xac\xe9\x98\xfd\xfb\x23\xd5\x0c\x78\xcb\xd7\x58\xc1\x07\x2b\xa8\x62\xde\x01\x2e\x51\x24\x48\x58\x69\x84\x3f\x31\x76\x57\xd0\xc2\x0a\xc6\x38\xe6\x3d\x61\x12\x45\xea\x22\x56\x7a\x2f\x9e\x7e\xc2\x81\xbc\xda\x07\xff\x35\x0c\x22\xf2\x27\xdd\x18\xbc\x2d\x75\x6f\x4b\xdd\xdb\x52\xf7\xb6\xd4\xbd\x2d\x75\x6f\x4b\xdd\x8a\xa5\x6e\xd1\xde\xb6\x2a\x9b\x72\x53\x16\xa7\xdb\xdf\x8e\x00\x1c\xd9\xe3\x9a\x6a\xad\xd9\xe7\xf6\xe1\xfc\x19\xf7\xba\x74\xf1\x23\xb0\x04\x86\x8e\x30\x9f\xc0\xbf\x84\xc9\x22\x96\xeb\x34\x64\x76\xad\xae\x14\xab\x65\x89\x6f\x6d\x19\xa8\x73\xdd\x95\x22\x5d\x19\x00\xf8\xf3\x67\xba\x2a\x60\xe4\xc1\x52\x17\x87\x11\x2c\x29\x24\x00\x23\x52\x44\x7c\x26\xfb\x21\x6f\x7a\xec\x04\x18\xc3\x22\x4f\xe8\x62\x43\xb9\x3a\x24\xa0\x13\x60\x8c\x2d\x1c\x39\x11\xd8\xaa\x88\x13\x41\x8a\x4e\x30\xa5\x85\x74\x2d\xc4\x41\x00\x46\x3a\xd7\x8d\xa0\x7c\x1c\x85\x60\x71\x73\x21\x00\x30\x95\x1c\x6c\xcd\x76\x41\x94\x12\x27\x20\x21\x74\x9b\xc4\x51\x08\xe8\xf8\x6e\x00\xcf\x7e\x00\x12\x98\x50\xec\xe9\x33\x2c\x4d\xc8\xf1\x63\x12\xf3\xef\x2e\x5d\x5c\xa2\x80\xa2\x1f\x39\xd8\x75\xc1\x7c\x48\x70\x10\x59\xe0\xc7\x4b\xf1\xa0\xcb\x89\xcf\xbb\x4b\x00\x7e\x88\x58\x77\xe3\xd8\x03\xbb\x5e\x08\x9e\xd8\xf4\x39\x60\x8b\xa8\x44\x9e\x9f\x3f\xc7\x4e\x14\xc3\x04\x0f\x09\x0a\xaf\x63\xc7\xf7\x21\xbd\x78\xe4\xc4\x28\x8a\xad\xd8\x21\x11\xdc\x06\x8d\x1c\x8c\x63\x2a\x92\x90\xef\x53\xf2\x50\x91\xea\x5d\x47\x8e\xef\xba\x11\x3c\x7a\xb4\x78\xe4\x20\x1c\xc7\x40\x1d\x2f\x0a\xb1\x15\x3a\x3e\x86\x3c\xaf\x74\xe5\xc5\xfe\x75\xe8\x84\x2e\x86\x6c\xfd\x0e\x0a\x09\x15\xdb\x71\xe8\xb1\x67\x3f\xf0\xe9\x0a\x42\x7c\xc4\xb0\x45\x41\x14\x5f\x47\x4e\x18\x44\x80\xac\xeb\x51\x95\xd1\xc5\x71\x08\x63\xe5\x07\x6e\x64\x29\xa8\xff\xfc\xd9\x77\x3c\x1f\x4c\x90\x81\x13\xa0\x30\xbc\xf6\x1d\x8f\x75\x95\x3e\x23\x88\x32\x8a\x08\x5d\x4e\x03\x4a\x62\x88\x38\x4a\x3c\xcf\x67\xc6\x51\x2a\xc3\xbd\x00\x32\xd7\xba\x8e\x1b\x81\x84\x0e\x08\x1c\x81\x22\x27\xf0\x7c\xcf\xf2\x1d\x82\x43\x14\x5a\x11\x05\x43\xbc\x6b\xdf\x41\x31\x81\xf4\xe9\x5e\x10\xba\x91\xe5\x39\x71\x88\x03\x30\xda\xb9\xc4\xc7\x54\xc2\xfb\x5e\x0c\x39\xe8\xe3\x30\x0c\xaf\x3d\xc7\x45\x11\x82\x2b\x07\x11\xf2\x2c\x0f\x96\x53\xe4\x11\xfa\x8b\x5c\x7b\xb4\xdd\x10\xfb\x81\xe5\x39\xbe\x07\x17\xf7\x7d\xc7\x45\x3e\xb6\xb4\x6e\xd1\x7e\x06\xb1\x8b\x29\x71\x51\x18\x86\xe4\x9a\x3e\x07\xd8\x83\xe7\xc8\x0f\x2c\xfa\x1c\xe3\x08\x9e\x63\x37\x86\x38\x99\x84\x40\xf9\x08\x11\xf7\x1a\xe2\x66\x12\x17\xbe\x23\xf6\x1d\x23\x02\x2b\x61\x80\xa0\x7e\x88\x3d\x18\x1c\xe4\xa3\x30\x80\xf2\x21\x81\xc7\x38\x74\x01\x1c\xc2\xac\x78\x04\xe6\x4b\x05\x9d\x9f\x3f\x47\x4e\x1c\x44\x10\xa8\xc7\x8f\x3d\x1c\x5e\x47\x4e\xec\x62\x12\x53\x82\xba\x9e\x47\x09\x14\x85\x6c\x99\x8c\xbd\x90\x2a\x08\x11\x8a\x30\xa5\x77\x18\x7a\xbe\x7f\x4d\xb5\x71\xec\xd1\xef\xb1\xe7\x07\xf4\xbb\xe7\x13\x48\x95\x49\x90\x0f\xee\xde\x04\x87\x1e\x1d\x0f\xdf\x8b\xa9\x4e\x17\xc5\x88\xea\x3f\x88\x04\x98\x71\x9c\xeb\x63\x2b\xa0\x50\xc0\x60\x8f\xc3\x30\xa4\x9d\xf5\x3c\xc4\xac\xe6\x11\xe5\xb0\xd0\xf1\xbd\x08\xd4\x13\x82\x63\x1f\xd4\x3f\x2f\x8e\xe8\x68\x85\x91\x1b\x53\x38\xa1\x1b\x85\xfe\xa7\xc8\x09\xe3\xc8\x8b\x20\x40\x92\x4b\xe8\xda\x8b\x23\xec\x45\x56\xe0\x10\x97\x8e\x6e\xec\x84\xc8\x8f\x62\xc8\xf7\xe9\xc7\xc0\x2d\x80\x9d\xe7\x10\x14\x13\xff\x3a\x76\x42\x3f\x86\x63\x71\x17\x05\x98\xad\xe9\x81\x17\x40\xa8\x1f\xdf\xa5\x33\x46\x21\xd6\xcf\x9f\xa9\x7c\xf2\x3d\xca\x4e\x54\x1d\x61\xf2\x0b\xb8\x0b\x87\xc4\x07\xbb\x7c\x84\x10\xa5\x8e\x1b\x85\x84\xd9\xed\x7d\xb0\x68\x07\x1e\x09\x61\xfe\x13\xaa\x53\xfa\x8e\x87\x10\x02\x79\x12\x84\x5e\x68\x05\x54\xac\xc1\x21\x08\x89\x3c\xda\xbd\xd8\xf5\xa9\xb8\xa0\xcc\x0d\xbc\x13\x87\x84\x32\x3b\xc4\x44\xa0\x64\x41\x08\x74\x24\x48\x13\x4c\xe8\x33\x09\xbc\x98\x8a\x3b\x4c\x30\x65\x7a\x14\xba\x21\xb3\xf5\x47\x70\x5c\x82\xa2\x28\x80\xc9\x13\xb8\xb0\x85\x42\x01\x95\x27\x74\x32\xc1\x09\x89\x13\xc6\xc8\x83\x63\x83\x28\x44\x10\x88\x1c\xf6\x3f\x0e\x41\x01\x81\xbe\x52\xfd\x1c\xd4\x5a\x3f\x86\x67\xcc\x84\x29\x46\xbe\xc7\x68\xe1\x33\xe5\x56\xa2\xcd\xcf\x9f\xa9\xa6\x0c\x87\x39\xb1\xe3\x21\x1f\x4e\x23\xfc\x98\x49\x43\x3f\xf2\x40\xcf\xc0\x1e\x0a\x98\x8c\xf0\x61\x5f\x13\xd0\xe6\xd9\x62\xe0\xb2\xd3\x8b\x10\xa4\x29\xc1\x84\x69\xd8\xa1\x0f\x27\x0c\x9e\x1b\x30\xad\x25\x8e\xd9\xa2\x85\xe2\x88\x6e\x31\x09\xdd\x11\x84\x6c\x63\x88\x7d\x27\x74\x7d\xb6\x41\x0b\x22\x98\xa2\x04\x87\x20\xcc\xc3\x00\x87\x74\xf3\x83\xe0\xa0\x22\x62\x57\xea\x7d\x27\x26\x08\x84\x29\xf1\x62\xd8\xd4\x86\x11\x09\xa0\x35\x1f\xc5\x14\xba\xef\x85\xb0\xf6\x84\xb1\xe7\xb1\xa3\x2a\x2e\x0d\x7d\x0f\x9a\xc3\x31\x06\xd9\x4e\x88\xef\xd3\xf2\x98\xb8\x4c\x57\x03\xf2\xf8\x30\x25\xe1\x39\xf0\xd9\x3e\x42\xa2\xce\xcf\x9f\x59\x43\x80\x67\xe8\x12\xff\x1a\x0e\x56\x3c\x50\x06\x3d\x3a\xc5\xe1\xe4\xc5\x09\x43\x14\xc1\x4f\x02\x87\x30\xc8\x09\x5d\x17\x84\x6e\x48\xa5\x43\xec\xf8\xae\x4f\xa0\x51\x3a\x13\xe0\x9e\x0a\xa2\x0b\x27\x15\xd9\x84\x8e\xbc\x4f\x60\xd7\x06\x29\xa7\x29\x27\xf9\x01\x0c\x45\xe4\x44\x54\x0a\x45\x4e\x80\x3d\x37\xa2\xe5\x7d\xd7\x05\x06\xf6\x62\x00\x47\x42\x04\x0c\x14\xfb\x3e\xac\x08\x41\x40\x37\x7d\xbe\x13\x45\x94\xf2\x91\xe3\x87\xec\x98\x0c\x87\x01\x7c\xf7\x68\xf3\x38\x70\x3c\x1f\x5c\x81\x1c\x37\x8c\xe1\x7c\x2b\xc4\x2e\x94\xf7\x10\xe8\xac\x0e\x3b\xe7\xf1\x48\x48\xd8\x53\x40\x2c\x8d\x10\xc0\x48\x21\x1d\x12\x8f\xca\x2a\x3a\x14\x81\x43\x02\x37\xb4\x7c\x27\x0a\x42\x80\x1a\x04\x98\xce\xa2\x90\x0a\x27\xfa\x1c\x33\x11\x1a\x10\x0f\xc3\x26\x37\xf4\x62\x2a\x34\x82\xd8\x0b\xd8\xf9\x64\x10\xc1\x89\x94\x1f\xc1\x40\x60\x0f\x56\x3b\x2f\x0a\x80\x4b\xa3\x08\x34\x97\x30\x24\x31\x9c\x8f\x79\x31\x9d\xb2\xbe\x0b\x47\x71\x94\x04\x08\xa2\xb4\xb9\xb1\xcb\x98\x3a\x72\x41\x84\xc4\x61\x0c\xc3\x8c\xa3\x00\x83\x3c\xc5\x11\x6b\x4d\xc2\xfd\xe7\xcf\x81\x13\x84\x2e\xec\xc3\xa2\xc0\x77\xe3\x6b\xaa\x5a\xb8\xb0\x3a\xc7\x51\x0c\xe1\xfd\x23\x37\x0c\x21\x67\x31\x0a\x40\x20\x7b\x21\x5d\xb1\x62\x87\xa0\x08\xd1\x55\x17\x07\x18\xb3\x33\x40\x00\x83\x5d\xc4\x26\x8f\xeb\xf9\x21\x98\x43\xe8\xba\x05\x43\x13\x50\x25\x00\x23\x8f\x2d\x58\xb1\x0f\xb2\xc5\x77\x31\x23\x3d\xf2\xe0\x8e\x52\x1c\xc4\x44\x0c\xdd\xb5\xef\xc4\x61\x88\x58\xa6\x67\xec\xc7\x56\xe0\x60\xcf\x63\xa7\x79\xa1\x07\x8e\x56\x0a\xf6\x54\x43\x89\x7d\x90\xb4\x1e\x8a\x61\xf7\x17\xb8\xcc\xa4\x82\x43\xb8\x9c\x18\xb8\x98\x4e\x1a\xd7\x71\xb1\x0f\x60\x70\x4c\x87\x96\x8e\x01\x53\xb8\x10\x63\xf1\x90\x0a\x26\x0c\xf9\xcf\x09\x27\x1a\xa8\x7f\x21\x21\xac\x33\x08\x83\xc0\x42\x24\x82\xb9\x19\xc1\x5c\x05\x01\x06\x9d\x8b\x3c\x9f\x0b\x38\x06\x3e\x0a\xdd\x18\x24\x08\xf4\x06\xa2\xdc\x13\x90\x20\x08\x47\x5c\x54\x01\x5a\x31\x71\x3d\x38\xfa\xc3\x3e\xe1\xf0\x29\xed\xfd\x98\xfe\x4b\x45\x9c\x1b\xc1\xf7\x30\x0c\x63\xa6\x0f\xc2\xd8\xf8\xc4\xf5\x31\xe8\x7f\x2e\x06\xad\x21\xf6\x5d\x90\xe7\x6e\x8c\x09\x5c\x5c\x0c\x60\x3a\x4a\xc4\xf9\xf9\x33\x65\x4c\xba\x96\x53\x8e\xa4\x0a\x14\x1c\xa7\xfb\xc0\xb0\xc4\xe7\x27\xe7\x90\x3b\x82\x52\x9d\x59\xd2\xb0\xcb\x0e\x88\x91\x1f\x78\x20\x82\x22\x02\xfb\x5e\xe2\x32\x2a\xc5\x81\xcf\x6c\x2a\xcc\x0c\xe7\x11\x30\x72\x78\x6c\x39\x08\x1c\x14\xf9\x14\x5b\x58\xd9\xe9\x74\xa2\xff\x52\xf9\x14\x10\xa6\x25\x46\x21\x7d\x46\x81\x4b\xc7\x22\xe2\x87\xc5\xd8\x09\xb8\xdc\x0c\xe1\x78\xda\x75\xc2\x28\xf0\x98\x12\xcc\x04\x97\xe7\xb9\x3e\xd5\xf3\xb1\xeb\xb2\xc1\x03\xe1\x10\x3a\x08\x94\xf5\x80\xaa\x3a\x80\xb5\xdc\xdb\xbf\x8c\xd5\xf4\x6d\xd3\xf4\xb6\x69\x7a\xdb\x34\xbd\x6d\x9a\xde\x36\x4d\x6f\x9b\xa6\xb7\x4d\xd3\xdb\xa6\xe9\x6d\xd3\xf4\xb6\x69\x7a\xdb\x34\xbd\x6d\x9a\x7e\xf3\x4d\xd3\x92\xf3\xb7\x24\x4d\xab\xac\xae\x4f\x76\xfc\x36\x02\x6f\xf8\xf4\xcd\x54\x69\xc5\xe1\x5b\x1f\xcc\x9f\xf1\xec\x0d\xb6\x7d\x81\xe3\xc1\x9e\xcf\xe2\x3f\x30\xa9\x3d\xfa\x0b\xa3\xf6\x3f\x9b\xbf\xb0\x31\xfa\x0f\xd8\x25\xf2\x2d\xe3\xd7\x9d\x0d\xec\x18\xbb\x1b\x9b\x8a\x57\xdb\xf1\x62\x3b\xb4\x5d\x27\xf2\xed\xd0\xa6\xef\x21\x98\x3e\x71\x50\x64\x63\x08\x67\x02\x61\xeb\xe3\x4f\x74\xca\x3c\x60\x35\xc4\xc0\x03\x55\xc9\xbe\xee\x02\x27\xb6\x89\xe3\xb3\x54\x89\xb6\x13\x61\x1b\x02\xc0\xc7\x36\x76\x62\xf8\x71\x67\xe3\x07\x1b\x62\xf6\xfa\x3e\x24\xf7\x81\x12\x3f\x46\x0f\x36\xb9\x23\x1b\x07\x02\x43\x41\xf6\x48\x0b\xdb\xf8\xa7\xf0\x8e\x68\xb7\x54\x1f\x6c\xc7\xc3\x1b\xe2\x40\xf0\x58\x1c\x5b\x54\xeb\x43\x81\x45\x55\x6f\x08\xed\x0b\xd8\x3a\x91\xe5\x3a\x71\x68\x13\x87\x6e\x15\xdc\xf8\x2f\x73\x67\xf7\x6d\xbc\x8f\x1c\xef\x57\xc3\x45\xdf\xac\x2e\x8b\x87\xac\x82\xbb\xbe\x54\x3a\x54\x59\x9a\x57\xd9\xa6\xb1\xd2\xe6\xa8\xeb\xac\x22\x73\xad\x27\x65\xae\xf5\xde\x19\x79\x67\x51\x5c\x71\xd0\x3b\x23\xd7\xbd\x26\x3c\x47\x85\x8b\xe9\xde\x2b\x84\x15\x90\x79\x77\x79\x01\x55\x3a\x23\xf7\x27\xef\x13\x77\x4f\x0b\x0b\x3b\x82\x0c\x22\xa1\x13\x84\xc1\x83\xed\x39\x91\x47\xb5\x1a\x50\xc5\x3c\x30\x25\x78\x0e\x5c\x94\x09\x1c\xe6\x3b\x04\x6d\x7c\x1d\x5d\x3e\x20\xd6\x40\x53\x96\xc5\x4d\x52\x89\x50\x03\x27\x8f\xbf\xbe\x88\x36\x74\xad\xb6\xb0\x77\x67\x3b\x61\x0c\x91\xda\x6c\x87\x84\x7f\x0f\x20\xd8\x56\x20\x42\x6e\xb1\xdb\xc5\xb1\x43\xb7\x60\xec\x7f\x64\xd1\x0f\x31\x0b\xa7\xc6\xb3\xcd\xb9\x0e\x8a\x6d\x07\x76\x5e\xc4\xb5\xb1\xe3\x87\x05\xc4\xbb\x8a\x1e\x28\x6c\xd8\x8b\xc7\x9f\x08\x72\x3c\xba\xf9\x28\x6c\xfa\x68\xfb\x2c\xb8\xc3\x75\xe8\x30\x67\x22\xb0\x4d\xc5\x31\xbb\x1b\xf2\x1f\xf0\x16\x7e\x82\xb7\x97\x25\x4a\x41\xbb\x50\x4e\x3c\x78\x32\xdd\xb1\x1f\xb8\x3c\x9d\x85\x60\xe2\x6d\x95\x65\x4d\xf6\xd4\xd8\xdb\xbc\x68\xb2\xca\xaa\x0f\xc9\x37\x08\xbf\x7c\x6c\x00\xfc\xe1\xc1\x80\xb1\xf8\x13\x0e\x85\x2e\x4c\x9a\xe7\x43\x66\xd7\x65\xd5\xe8\x81\x98\x44\x70\x99\x3f\xaf\x76\x81\xce\x31\x72\x50\x14\xc0\x66\xed\x53\xa0\x3d\xd1\x9d\xa4\x1f\xb8\x04\x05\xd6\x27\xa4\x3d\xc9\x25\x95\xa7\x9f\xad\xcf\xee\x39\x26\xbc\x30\xb6\x3e\xb9\xe7\xe0\x61\xda\x95\x55\x9f\xd4\x92\xdd\xd3\xcf\xd6\x67\xd0\xd1\x11\x76\xc3\xf0\x1c\x59\x9f\xa4\x27\xec\x04\x11\xc6\x24\xf0\x30\x80\x50\x9e\xd4\x92\x08\xe0\xb8\x4e\x14\xc4\x24\x26\xf1\x39\xd8\x36\x51\x4c\x65\xe0\x27\xe9\x35\xdd\x1c\xb9\x91\x17\x13\x62\x7d\xc2\x81\xc3\xc1\x9d\x47\x74\xcb\x84\x08\xf1\x23\xeb\x13\x8e\x94\x3e\xb3\xed\x4c\x48\xe2\xf0\x1c\x82\x75\x47\xb0\xb9\xf9\x14\x39\xc8\x0f\xc1\x6c\xa9\x94\x8e\x1d\xe2\x05\x38\xf6\x49\xa0\xc2\x24\x0e\x8e\x22\x1c\x04\x3e\xc3\x20\x76\x5d\xa2\xbe\x1e\xc0\x57\x7a\x4d\xfb\xd7\xb6\x74\xee\x39\x84\xee\xe2\x02\x44\xcb\x77\xaf\xe9\x86\xd5\x8d\x3d\xe2\x79\x94\x44\xea\xd3\x40\x15\xe9\xf5\x5f\xe3\x7e\xeb\x1b\xaf\xbf\xf1\xfa\x31\xbc\x3e\x7b\x1f\x2d\xc2\xa7\xec\x92\x7d\x72\x9b\xed\xb2\xfd\x8a\xa8\x8c\x3d\x10\xa7\x89\xd0\x38\x03\xb5\x15\x81\x1a\x67\x21\x3b\x12\x81\x71\x3e\x72\x33\xc2\x38\x8e\x23\xb3\xd4\x8e\x30\x86\xd3\xe2\xc8\x8e\xe3\xa8\xed\xcb\x26\xdf\x64\xce\x5d\x7e\x7b\x57\xd0\x8d\x44\xef\xcb\x20\x2a\x7f\x46\xcd\x03\xc3\xd9\x28\x09\x3f\xe1\xc8\xc1\x91\x45\x70\x61\x63\x27\xf0\xec\xd0\x41\x2e\xdd\xce\xc4\x10\xdc\x36\x74\x70\x6c\x3b\x01\xfe\x04\x57\x1e\x62\xba\x37\x8c\x9c\xc0\xb5\xf8\x77\xdf\x81\x03\xa5\xd0\xfd\xe4\x3b\x11\x44\x28\x10\x60\xff\x32\xc6\x80\xdf\x87\x48\xaf\x5a\x0c\xaa\x93\x72\x18\x84\xc2\x0e\x8e\xd9\x72\x40\x4c\x02\x2b\x70\xdc\x90\x2e\x2d\xe2\x5f\xfa\xda\xc2\x3f\xe1\x6b\x1c\x3b\x01\x09\x3d\x0b\x5b\xc4\x6f\xbf\x12\xba\x67\xfe\x09\xbb\xd7\xec\x08\x87\x15\xe0\xff\xc2\x37\x8b\xf8\x3f\x11\xb8\x90\xd3\x96\xef\x0a\xb2\xba\x3f\x2b\x48\xff\x6d\xcd\x88\xb2\xbd\x77\xe8\x11\x16\xe2\xc2\x87\x33\x31\x9f\x2e\xe3\x81\x17\xf1\x73\xbb\x98\xc5\x43\x70\x5d\x30\x18\xbb\xf1\x27\xec\x39\x81\x1b\xc3\x1e\x1f\xb9\xb4\xaa\x6b\x85\x0e\x0e\x82\x00\xae\xf2\xb8\x01\x8a\xda\x4f\xfc\xbd\xa8\x88\x1c\x17\xac\xde\x1c\x6c\xec\xb8\xb1\x8f\xb0\x68\xb4\x45\x46\x5e\xf5\xae\x03\xf2\xf7\x10\xab\x79\xff\x5c\x8b\x78\xd7\x81\x13\x13\x2f\x0a\x81\xfb\xe1\x68\x2e\xf4\x21\xc6\x87\xfb\x23\xba\x46\x70\x2d\x24\x8c\xe1\xe0\x88\x20\xd7\x22\x01\x90\x34\xf8\x89\x78\x3f\x7f\x26\x10\x45\x82\x78\x6d\xad\xb6\xb6\x07\xa5\xbc\x9f\x48\x70\x2d\x00\x90\x00\xfe\xeb\x9e\xb0\xfb\x23\x05\x42\x0b\x5e\x77\xcd\x12\xcf\x92\x10\xa2\x65\x82\x6b\x48\x8e\xcd\x9a\xe7\xd5\x11\x85\x8f\x7e\x22\x50\x1d\x5d\xf3\xaf\x94\x0d\xdb\x9f\xb4\x2a\x78\xdc\x30\x60\x2d\x50\xc0\xec\x27\x24\x93\xe6\xdf\xf1\xbf\x7b\xff\x1e\x9e\x5a\x98\xbc\xcd\x87\xb7\xf9\xf0\x17\x99\x0f\xaf\x4e\x93\xdc\xf2\x83\x9c\x4e\x81\x69\x52\xfa\xfa\x4f\x7f\x12\x83\x1d\x17\x79\x96\xeb\xe0\xd8\x2f\x30\x72\x20\xf0\x10\xfc\x63\x47\x0e\x72\xb1\x45\xff\xfe\xe4\x3a\xe0\x69\x85\x1d\x42\xc2\x02\x43\x9e\xdd\x90\x87\x12\x44\x88\xd8\xf0\xe6\xeb\x67\xec\x44\x70\x53\x35\xf0\x12\xba\x66\xb3\x00\xf5\x7e\xe0\xd9\x90\x1b\x1a\xea\x45\x50\xcf\xfd\xbb\xf8\xee\x39\x08\x2e\x77\x7a\x7e\x01\x1f\x18\xa8\xb6\x3a\xad\xe8\x3b\x7e\xe0\x7f\x22\xc4\x61\xc7\xbb\xc8\xed\xa0\x23\xc8\x22\x16\x15\x80\x2a\x60\x8a\xbb\x96\x59\x9a\xdd\x4f\x1d\x52\x5f\x3f\x47\x8e\x6f\x61\x48\x2b\x67\x61\x66\xaf\x43\xc8\x86\x44\x94\xfc\x19\x21\x64\xb9\x7f\x11\x2d\xeb\x6d\x60\xe7\x0f\xec\x74\xa8\xd6\x36\x63\xe0\xf2\x70\xad\x86\xaa\xb3\x43\xb6\x1a\xea\x0e\x86\x6d\x35\x94\x6d\x5f\x4d\x86\x6f\xed\x95\x54\x43\xb8\x76\x9f\x8f\x0d\xe3\xda\xc7\x12\x42\xb4\x76\x0d\x4c\x87\x73\xed\x95\xfd\x03\x86\x74\x7d\x4b\xe7\x78\x7c\x3a\x47\x3a\x4e\x9b\x6c\xdf\x64\xd5\xc9\x5c\x37\xc6\x41\x0e\x7b\x6f\x0c\xd4\x5b\xe1\xc0\x61\x84\xf4\xa7\xd4\x1c\x88\x15\xfe\xe4\xfe\x48\x1e\x70\x74\x47\xd0\x4f\xe1\x8f\x98\x7c\xfd\x1c\x58\x38\xfe\xd1\x83\x13\xf2\x07\xf2\x75\x87\x6c\x4f\x7f\xfa\x29\x96\x1f\x7c\xf6\x00\x91\x36\x22\xa5\xa0\xf6\x24\x57\x8b\x44\x35\x8c\x2c\x4c\xee\x6c\x5e\xd4\x26\x77\x36\x91\x7e\xfe\x14\xdf\x45\x0f\x18\x7d\xdd\xd9\xc4\x8e\xe8\x27\xf6\xe5\xeb\x0e\x59\x9e\xf4\xf8\xd7\x58\xed\xff\xea\x83\x31\xdf\x4e\x5d\x95\x45\x76\x0a\xa3\xb2\x11\xce\x0c\x7b\xaf\x5a\x6f\xb1\x69\x56\xae\xfe\x27\x15\x0b\x98\x6c\x88\x43\xb0\x85\x2c\xd0\x10\x63\xcb\xb3\xbd\x1a\x7e\xd9\x1e\xfb\x63\xb1\x07\x8b\xfd\xb0\xe8\x0f\x8f\x07\xea\x27\x4e\x10\x5a\xc8\x8e\x2c\xec\xb8\x9e\x1d\x59\xde\x03\xb9\xc3\xc1\x83\x4d\x36\x88\x7e\x83\x04\xe1\xae\xed\xd9\x91\x3d\x72\xbc\xfd\x27\x9b\xba\xbf\x3f\xc1\xb8\x3f\x40\x95\x3d\x64\x49\x61\xe5\xfb\xc3\x7d\x73\x01\x2a\x66\x96\x7e\x54\x3c\x34\xfe\x9c\x1c\x19\x6e\x88\x13\x06\x16\xb2\x7c\xd8\x93\x58\xbe\x05\x29\xe5\x03\xdf\x66\x69\xee\x49\x60\x3b\x6e\x60\x61\x27\x72\x0b\xe2\x40\xc6\xb3\x98\x6c\xb0\xe3\x63\x9b\x7e\xb4\x88\x03\xda\x4c\x6c\xb9\x8e\xe7\xda\x9e\x13\xfa\x90\x60\xce\xf6\x1c\x37\xb6\x03\x3b\x74\x7c\x1b\x63\xf6\x8f\xe3\x41\x66\xb5\xd0\x73\x88\x6f\xbb\x4e\x1c\x39\x61\x41\x1c\x4c\x61\xe0\xe0\x1a\xbc\xa2\x21\x66\x2f\x8b\x70\x64\xd1\xad\x8f\x15\x7e\xfd\x0c\xfe\xe1\xb4\x24\x89\x28\x8a\x91\xe3\x05\x8e\x17\xfc\x1d\xee\x87\xf0\x6b\x22\x9e\xf0\x3a\xa1\xfc\x02\xf9\xed\x68\xf3\x16\x5c\x7e\xb1\xd8\x5d\x19\xba\xdb\xf1\x99\xd7\x89\x6b\x3b\x50\x20\xb2\x9d\xc8\x2b\x1c\x8f\x38\x1e\xf9\x84\x63\x5a\x8d\x80\xbd\x9c\x20\x9e\x22\x2f\xb4\x5c\x8b\x35\xff\xf5\x73\xe8\xf8\xae\x15\x3b\x51\x01\x80\xe8\x5f\x1b\xdb\x41\x3e\x24\xb1\x44\x11\xcb\x70\x1f\x39\x01\x6c\xb1\x9c\x20\x00\x9e\xb3\x5c\xf8\xe3\x10\xc8\x96\xef\x79\xb6\x83\x5c\x20\x2d\x52\xc1\x04\x21\x65\x44\xec\x78\xd8\xf1\x5d\x9b\x38\x84\xfd\x43\xc7\xc5\xf6\xe9\xb3\x67\xfb\x36\x64\x9b\x0f\x63\x87\xee\x3d\x7d\x97\x17\xfc\xba\xf3\x20\xa3\x64\x18\x15\x54\x77\x05\x05\xd9\x41\x90\x53\x91\x67\xfc\xb4\x81\xf9\x5d\xfa\xa7\xb0\x1d\x1c\x3a\x08\xff\x65\xa4\xc3\x1b\xf3\xbe\x31\xaf\x24\xa9\x2f\xaa\xb2\x6c\x5e\x6c\xfb\xf1\x2e\x6f\xb2\x8b\xef\xb6\xdb\xed\xa5\x6d\xa7\xd9\xa6\xac\xec\x9b\xb2\x4a\xb3\xca\xc6\x08\x5d\xe0\xc3\x93\x55\x97\x45\x9e\xb6\x1f\xab\x24\xcd\xef\x6b\x9b\x20\x74\xe1\x1d\x9e\x2e\x6d\xfb\xb6\x4a\x9e\x6d\x1f\xa1\x8b\xef\x82\x6d\x18\x44\xa4\x2d\x99\x15\xd9\x43\x02\x16\x8d\x00\xa1\x0b\xaa\xd6\x1d\x9e\x2c\xff\xf0\x64\xd9\xe1\xe1\xc9\xaa\x6e\x6f\x92\xf7\xe8\xdc\xe2\xff\x39\x28\x3a\x3b\x47\x16\xa6\x0d\x62\x44\x0b\xb9\x86\x42\xf8\xec\xd2\xb6\x6f\xaa\x64\x9f\xda\xc8\x47\x17\xdf\x6d\xe3\xec\x66\x4b\xda\x77\xb4\x9d\xef\xe2\x8c\x60\x3f\x6e\xdf\x45\xf4\x9d\x9f\x60\xcf\xf5\x2e\x6d\xbb\x79\x3e\x94\x3c\xe9\x1a\xc3\x99\xb9\x16\x76\x38\x57\x55\x59\xb1\x2f\x9b\xd0\xf5\x3c\x5f\xd4\xd9\x94\xfb\xa6\x4a\xea\xc6\x8e\xe3\xf8\xe2\x3b\x84\x90\xf8\xd0\x61\xf3\x90\x54\xef\x25\xec\xce\xd4\x12\x14\x37\xb9\x44\x80\xa0\x04\xa7\xf8\x58\x91\xfa\x31\x69\x36\x77\x0b\xca\x44\x5a\x99\x08\xa1\xb3\x57\x27\xdb\xdd\x64\x95\x7d\x93\xd4\xf9\xc6\x4e\xab\xf2\x90\x96\x8f\xfb\x97\x43\x59\xe7\x94\x18\x17\x55\x56\x24\x4d\xfe\x90\x99\xcb\x9d\x1b\xdf\x02\x51\xb2\x7d\x33\xfe\xd5\xfa\xd0\xae\xf6\x37\xe5\x93\x5d\xe7\x5f\xf3\xfd\xed\x05\xe7\xb1\x9b\xf2\xe9\xd2\xf8\xd6\x8c\x87\x80\xd9\xe1\x9d\xdc\xd4\x65\x71\xdf\x64\x97\xe0\x6b\x7c\x91\xdc\x37\xe5\xe5\x57\x1b\x8c\x46\x17\x98\x0e\x93\x64\xbb\xd9\x94\x45\x59\x01\xab\x8f\x43\xb7\xed\x22\xdb\x36\x2f\xf4\xaf\x0b\x34\x55\xb4\xca\x6f\xef\x9a\x17\xf8\x7b\xb0\x70\xf9\x90\x55\x45\xf2\xdc\x61\xbd\xcd\x9f\xb2\x54\x42\xed\x82\x33\x3a\xfd\xe3\xf8\x67\xbc\x33\x18\xa1\xef\x2f\x99\xe3\x34\xfb\xdd\x75\xec\xb2\x29\x0f\x17\xe8\x92\xa1\x78\x79\x28\xf3\x7d\x93\x55\x36\x15\xf9\x4d\x7d\x41\xd7\x91\x09\xb4\x1f\xcb\x6a\x77\x57\x16\x99\x5d\x56\xf9\x6d\xbe\x7f\x49\xf3\xfa\x50\x24\xcf\x17\xf9\xbe\xc8\xbb\xca\x87\xf2\xb1\x75\xe8\x6c\x61\x1c\x37\x9e\x0a\xc8\xa6\xca\x6f\x6f\xb3\xaa\xcf\x85\x97\xbc\x22\x13\x36\x20\x68\x8c\xe3\x78\x49\xb1\xb5\x05\x89\x9c\xd0\xbf\xa4\xa4\xde\x16\xe5\xa3\xfd\x74\x71\x97\xa7\x69\xb6\xbf\x04\x2f\x61\xf1\xfa\x22\x2b\x8a\xfc\x50\xe7\xf5\xe5\x2e\xdf\xcb\x15\xb3\xdd\xa5\xbd\x2b\xbf\xda\xf7\x75\x8b\x1e\xd0\xf1\xd2\xde\xd5\xfd\x97\xfd\x52\x9c\x22\xbd\x0f\x0c\xd7\x7c\x7f\x97\x55\x79\x33\x46\x04\x9e\x85\x91\x0f\xd0\xc5\xbb\x77\x97\x62\x4c\x20\xc7\xe3\xe5\xa6\xc8\x92\xea\xe2\xa6\x6c\xee\xc6\xa0\xd8\x20\xdc\x1e\xb2\xf3\xb1\x96\xb6\xe5\xe6\xbe\x56\x07\xf1\x2e\x49\xcb\x47\x86\xb1\xf6\x3c\xc0\x48\x6d\x7b\x37\x59\x51\x3e\x8e\xb4\xf6\x4b\x52\xe5\x09\xdd\x6e\x27\xfb\x34\x4b\x7f\x68\xaa\xfb\xec\xcb\x80\xc0\x68\x61\xe6\x7b\xfb\x50\x24\x9b\x6c\x21\xd8\x97\x96\xdd\x9a\xa6\xdc\xc1\x24\x16\x1c\x84\x2e\xd5\x6f\x30\x5f\xdb\x8f\x53\x7d\x4c\x6e\xca\x87\xb5\xc8\x34\xe5\xc1\x8c\x09\xfd\x60\x46\x43\x69\x02\x08\x71\x57\x16\x29\x30\x07\x30\x7e\x1c\xc7\x2d\x73\xdc\x14\xe5\xe6\x57\x03\xd7\xc3\xb2\x6e\xd7\x87\x64\x93\x5d\xec\xcb\xc7\x2a\x39\x0c\x4c\x04\x63\xa3\x75\x93\x34\xf7\xb5\x9d\x6f\xca\xbd\x41\xd4\xaa\xc2\xc2\x66\x28\x30\x91\x85\x84\xbc\x12\x12\x8a\xd1\xfb\x02\x5d\xee\x92\xea\x36\xdf\x33\x01\xcd\x29\x50\x37\xcf\x45\x76\xc1\xd4\x0b\xfe\x8a\x41\xa1\xfa\x81\x77\x78\xb2\x5a\x5a\xf1\x8e\x27\x49\x62\x35\x55\xb2\xaf\x0f\x49\x45\x57\x16\xe9\xf7\x25\x93\xc0\xfe\xc1\x2c\x69\x60\xf6\xd8\x37\x8d\xa9\x3b\x9b\xfb\xaa\x2e\xab\x0b\x2e\x44\x39\x20\x32\x04\x49\x30\xc5\xee\xbe\x68\xf2\x43\x91\xd9\xb0\xcb\x7d\xd9\x96\xfb\xc6\xde\x26\xbb\xbc\x78\x16\xb3\xfd\x12\xde\xd5\xf9\xd7\xac\x7d\xc3\xba\xc3\xe6\x99\x91\x8a\xb2\x3c\x13\x95\xc4\x44\x4d\x0e\x87\x2c\xa9\x92\x3d\x8c\xe8\x3e\xbb\x2c\xef\x1b\x5a\x9c\xca\xff\x24\x4d\xa9\xb8\x45\x97\xdb\xa2\x4c\x9a\x0b\xca\x6f\x7d\x81\x29\x53\x0b\x78\x81\x2e\x26\xfb\xe6\x82\x2c\xea\xe9\x45\x9a\xd7\x54\x20\xa5\x2f\x7d\x89\x9c\x65\xe6\xa5\x63\x00\xd2\x85\xe8\x19\x3c\x2a\x9c\x5e\x1e\x92\x4d\xde\x3c\x5f\xe0\xcb\x8e\xe7\x97\x81\xa6\xc2\xfc\xc4\x10\xeb\x6f\x81\xe8\x69\x71\xfc\x27\x22\x68\x0b\xae\x3c\x40\xb2\xe3\x97\x6e\x16\x70\x59\x63\x16\xa8\x5a\x3d\x2e\xa7\xbb\x9d\x8e\x45\x37\x34\x06\x05\x84\xa3\xe3\xba\xae\x41\x17\xc9\x3c\xfa\xa7\x9b\x88\x54\x7c\x4d\xcf\x70\xec\x78\xbe\x3c\x65\x39\xde\x74\x9f\x84\x2c\xfa\xb7\x3b\x30\x35\xdb\x3e\x54\xd9\xae\x7c\xc8\x40\xb0\xa9\x62\x6c\x6e\x35\x66\x43\xbe\xa3\xcb\xc2\x59\x4b\x7b\xc7\x37\xaf\x0a\x59\x52\x6d\xee\x5a\x3a\x7b\x03\xc8\xb1\x62\x5c\x2e\xf6\xa8\x4b\x85\xb8\x46\x5d\x24\xeb\xbb\x7d\xa1\x69\x92\x89\x1d\xa1\x87\xe4\xb4\x8c\x05\xd7\x78\xcc\xb8\x2c\xd4\x83\x8c\x3a\xb1\x58\xec\x41\x1f\x1f\xe8\x2b\x1b\x71\xf5\x5b\x4f\x7d\xed\xb3\xdd\x4c\xf4\x5a\x15\x40\x28\x00\xd3\x8a\xa7\x40\x7e\x62\x83\x03\xca\x8f\xa4\xcd\x0c\xf4\x8f\x2f\xf4\x1c\xb7\xe3\xf4\xb0\x35\x68\x82\x1e\x6a\x54\x7b\x67\x02\x10\x4a\xa7\xdc\xd5\x7e\x6f\x06\x7a\x7f\xac\x96\xb7\x14\xc7\x6e\xc2\x18\xc1\x09\x91\x08\xc7\x46\x4c\xcd\x82\xae\x08\xc1\x28\x69\x0c\xdf\x62\xd7\x33\x86\x13\x4b\xd8\x4d\x11\xbb\x29\x9f\xbe\xbc\xb4\x9a\xeb\x33\x53\x0d\x05\xc8\xf6\x7d\xbd\xa9\xca\xa2\xa0\xb8\x36\xe5\xfd\xe6\xee\x72\x97\x3c\xb5\x33\x86\x38\xc4\xcf\x76\x23\xad\x69\x42\x51\x12\x1b\xd1\x80\xd8\xa0\x62\xfd\xc0\xf4\x79\xa1\xe8\x70\x7d\x5e\x52\xbe\x39\xd4\x7d\xd9\xd8\x49\x51\x94\x8f\x59\xba\x0c\x96\x35\x8c\xb1\x91\x83\xd9\xa7\x29\xac\x0c\x56\x80\xb9\x98\xca\x0d\xb0\x57\xdd\x36\xa6\xb7\xd6\xa5\xe9\x34\x90\xcd\x7d\x45\xf5\xcc\x41\x18\x7e\x14\x87\xdb\x9b\xcb\xbe\x45\xa6\x4f\x40\x7b\x9f\xec\x32\x31\x90\x69\xb6\x4d\xee\x0b\xae\x5a\x3f\x32\x36\x08\x91\x79\x4e\x29\x9b\x33\x8d\x6c\x8b\x75\xd7\x4e\xbb\xb0\x70\x00\xeb\xf3\xe4\x76\xcd\x38\x94\x82\xba\x76\xde\x64\xbb\x17\x36\x1f\xd9\xb2\x31\xca\x91\x46\x8e\x99\xf8\xc2\x08\xc7\xf1\x66\x6d\x90\xa1\x35\x7b\x4d\x23\x7c\x8a\x29\x0d\x78\x68\x71\x03\x26\x30\x6b\xf1\x34\x74\x79\x88\xac\x82\x3b\xd2\xbc\xfa\xa1\x6a\x8a\x2f\xd2\x00\x33\x4f\xad\x99\xf5\x8c\xc8\x4c\x71\xc1\x2c\x20\x46\x56\x61\x6a\xc4\xdc\x4e\x19\xe1\x6a\x0a\xf0\x7a\x04\x87\xb6\xc2\xa0\xd0\x02\xa2\xeb\x91\x94\x2d\x10\x30\x8e\xfe\xe1\x89\x6f\xcd\xf3\x7d\xde\xe4\x49\xb1\x1e\x76\x67\x0c\x60\xcc\x36\x0f\xb4\x58\x8d\xc7\x61\x9f\x68\xb6\x72\x23\xc4\xd0\x34\xf8\x76\xb8\x68\xb3\x91\xe1\x31\x38\xab\x8f\xc5\xc3\xd8\xda\xb7\xed\xb5\x89\xce\x74\x3a\x7d\x57\x94\x74\x7e\xb1\x18\x1e\x1f\xd3\xfc\xc1\xda\x96\x65\x93\x55\xd6\xcd\x7d\xd3\x94\x7b\xb6\x85\x38\x9f\x2a\x05\x1b\x29\x83\x4f\xef\x36\xcf\x8a\xb4\xce\x9a\xda\x72\x3a\xf7\xde\xfa\x4a\x81\xbd\xb4\x16\x6f\x2b\xdb\x1d\x9a\x67\x98\x2f\x19\xf7\x61\x12\xf0\x0c\x5f\x06\xeb\xb0\x70\x0d\x2a\x3e\x13\xa5\x38\xac\x5d\x99\x26\x85\x9d\xe6\x49\x51\xde\xda\xf0\x70\x95\xe6\x0f\xf4\x7f\x2b\x4d\xad\x44\x00\x9b\x2a\x36\x0d\xed\x30\x0b\xd8\xa1\x85\x05\xc8\x32\x87\x14\x56\x92\xd7\xee\xbf\x67\xe5\xc1\xc3\x58\x42\xb9\x7b\x96\xbe\x1f\xd4\xcf\x6d\x6b\x2f\x60\x51\x83\xd3\x3c\x38\xf3\xbc\xb8\xdf\xa7\x59\x05\x87\x29\x13\x3c\xb3\x74\xdc\x4d\xe3\xf2\xc1\x38\xd8\xdd\x51\xc0\xa9\x39\x64\x92\x37\x86\x9b\xfe\x66\x8c\x36\xcd\x62\x02\xa9\xdf\x92\x63\x27\x79\x75\x06\x52\x47\x33\xbe\x81\xe5\x79\xb3\xab\xe7\x88\x34\x3b\x38\xa8\xb9\xd3\xa7\x9b\x38\x72\xc5\xc1\x79\xc5\xd5\x73\x76\x4e\xff\xbb\xcd\x25\x95\xf9\x8f\xe1\x44\x4a\x81\xfe\x00\x69\x74\x3d\x58\x89\xbe\x75\x1d\x33\xe7\x4f\x2e\x5e\x82\xc9\x16\xae\x30\x23\x02\x64\xe6\x04\x9f\x3b\xe5\x66\xce\x82\x41\xae\xed\xf1\xa0\xce\x5b\xec\xf9\xa5\x3d\x33\x79\x85\x2f\xfc\x92\xcc\x3e\x79\x90\xdd\x68\xad\xb2\xb0\x8a\x9c\x0e\x01\xe3\x3d\xee\xd7\xa2\x4b\x78\xb0\x74\xcc\x00\x63\x62\xe4\x1e\xb0\x6e\xb9\x98\x03\x51\xb8\x51\xae\x40\xe9\xaa\xc8\x25\xb3\x90\x4d\x89\xa8\x9e\x47\x75\x67\x08\xcc\x6a\x5d\x76\x86\x6c\x66\xb1\x87\xd7\xdb\x22\x7b\x92\x3f\x49\xaf\xa7\x7b\xa0\xbc\x49\x4c\xd7\x6c\x54\xca\x2b\x7b\x9f\x21\xcb\xfa\x8c\x66\x7b\xfe\xd2\x56\xa2\x6c\xc1\xe9\x9e\x6f\x15\x94\xb6\x0b\xed\xf1\xfd\xdf\xde\x5d\x8e\xf4\x21\x1a\xea\x83\x93\x1c\x0e\xf6\x43\x9e\x3d\x5e\xb1\x49\x5c\xed\xf8\x14\xfe\x85\x0e\xd4\x0f\xec\xf7\x17\xce\xfa\x59\x91\x35\x6c\x52\x6f\xf3\x6a\xc7\x5c\xad\x92\x22\xab\x9a\x4e\x92\xf5\x26\x3c\xf7\x7d\x7a\x4c\xaa\x3d\x9b\x5f\x1c\xbe\x93\x26\xfb\xdb\xac\x2a\xb5\xe5\x98\x85\xf1\x3a\x77\x76\xd9\xfe\xde\x3e\x24\xfb\xac\xb0\x98\x01\x8f\xbe\xa0\xfb\xd2\x2f\x74\xce\x56\x99\x2d\xa2\x7f\xd1\xf7\x57\x0c\x59\x70\xfc\xbd\x29\x9f\xbe\x7c\x04\x20\x20\x96\x7a\x95\xcb\x3c\xdd\x88\x90\x61\x42\xbc\xae\x85\x65\x8c\x40\xf6\xe1\x7c\x2a\x46\xd9\x87\x73\xe7\x31\x6f\xee\x6c\x99\x8e\x96\x42\xe2\x84\x3d\x6d\xaa\x2c\x69\xb2\x73\x4e\xb0\x4d\x79\x78\xa6\x9b\x48\xf1\xcc\x8a\x24\xfb\x4d\x56\x28\xaf\xea\xfb\x9b\x5d\xde\x9c\xcb\xc3\x58\x65\x75\xd6\x7c\x51\x5e\xb1\x52\x5f\xce\x45\x38\x14\x36\x4e\xb5\x69\xf4\x81\x01\xdb\xe6\xcf\xce\xc1\x3f\xc4\xb9\x4b\x6a\x5b\x54\x6a\xaa\x2b\x01\x60\x01\xfd\x18\x1c\x20\x05\xbb\x45\xb0\x12\x90\xbe\x72\x0d\xb9\x22\xe8\x72\x6b\x39\xef\xb7\x67\xd1\x23\x93\x40\x2d\xb3\x74\x32\x48\xb5\x7b\xb3\x42\xfa\x36\x3c\x3d\xe4\x42\xeb\xe7\x89\x04\xa5\x3f\x61\xa4\x8f\x47\x43\x37\x07\xf1\xeb\xbe\x8f\x4f\x94\xae\xa0\x32\x63\xba\xd7\xda\xd4\xe9\x7d\x90\xe6\x90\xf9\x1b\x9b\x26\xfa\x37\x79\x56\x99\xbf\xf1\xe9\xd5\x7d\x9c\x33\xcf\x44\xe1\x6f\x34\xe1\x3a\x64\x4e\x35\xf3\x3a\xdf\x0c\xcd\x5c\x3e\xf7\x8c\x53\x1f\x9f\xa9\x95\x79\xed\x7a\x75\x92\x35\xc9\xb4\x74\xac\x11\xe4\xbf\x97\xe0\x7e\x51\x7c\x9e\xf0\xe1\x49\x3b\xfd\x25\xe6\xd3\x5f\x38\xf2\xb6\xf0\xe1\xc9\xb2\x49\xe7\x22\x0d\x9e\xa3\x98\x9c\x5d\xce\x2e\xa9\x0f\xf6\x8b\xec\x11\x19\x76\x0e\x0f\x5c\x61\x1d\xdd\x7f\xe8\x7c\xc3\x76\x72\xfa\x5b\xd0\x83\x99\xfa\x24\x18\xf5\x8c\x3d\x32\xed\xfc\xec\x65\xa2\xc9\xef\xb6\xe1\x36\xda\x26\xbd\xe6\x18\xe0\x61\x66\xe5\x9b\x47\xbd\x1a\xdf\x13\x18\x4e\xb8\x36\x19\xca\x82\xd7\x51\x59\x3b\x2d\xb1\xcc\x52\xe9\x08\xc1\xd3\xee\x47\x48\x10\x85\xae\x11\x3d\xbe\xed\x31\x20\xa7\x7c\x51\x50\xe3\x5f\xe6\x20\xc6\x8a\xf6\xf8\x78\x80\x80\xad\xcb\x4c\xe8\x26\x1e\xd1\x7c\xf9\x7c\xe2\x87\x01\x7e\x1d\xd5\x5e\xbf\x99\xd6\xb9\xb2\xde\x1f\x4f\xd3\xe2\xfc\xbd\x25\x98\x78\x43\xae\xee\xc3\xaa\x51\x67\x77\x1e\x28\x20\x4c\x5c\xc3\xea\x8d\xb0\x4b\x0d\x97\x68\xcd\x64\xeb\xb5\x9f\xd6\xf8\xb5\x1e\x04\xc7\xe2\x38\x04\x8e\x6a\xfb\x54\x5a\x03\xc3\xe5\x54\xd0\x64\xdc\x4e\xa0\x80\xc8\xc8\x9d\x00\x1c\xb3\x9c\x0c\xae\x03\xb3\xa3\x4f\xf7\x2f\x18\x34\xe5\x01\x2c\x09\x7c\xf1\x0d\x0e\x4f\xed\x4d\x0b\x38\xf9\x9d\x84\xcc\xdc\xf5\xc1\xc9\xf9\x7f\xc9\x77\x87\xb2\x6a\x92\x7d\xf3\x87\xd3\x87\xfe\x39\xb7\xc4\xa6\x6b\x4d\x8b\x07\xc6\x72\x0e\x55\x79\x5b\x65\x35\x8b\x41\xd3\x64\xd5\x2e\xdf\x27\x2b\x07\x6c\x18\x58\x6f\x20\x87\x8b\xf6\x07\x78\xb8\xac\x79\x58\x87\xcb\x8f\x0f\xf7\x60\x3d\x85\x0d\x06\x4b\x69\xec\x31\x55\x4e\x62\x9b\x59\x45\x19\xa3\x4c\x14\x95\xd9\x6c\x56\x51\xce\x7e\x83\x65\x97\xb3\xe5\x10\x28\xc3\x9d\x04\x2a\x57\x7c\xf4\x3d\xbb\xe0\x45\x7f\xc8\x66\x4a\x1b\xd3\xad\x01\x7f\x43\x4b\xc2\x8b\x63\xec\x27\x1d\x66\x1f\xd7\x19\x0d\x07\x20\x0d\xdb\x4c\xd4\x72\x23\x8a\xb6\x5a\x70\xdc\x3e\xa1\x96\x9d\x69\xab\x50\x2a\x99\xed\x16\x4a\x91\x21\x1b\x86\xa9\x90\x69\x77\x30\x58\x4e\xb3\x6d\x18\xca\x19\x77\x14\x83\xe5\x74\x9b\x87\x52\xf0\x88\x6d\x88\x0c\xe7\xe5\x21\xaf\xf3\x9b\xbc\xc8\x9b\x67\xee\x78\xbc\x86\x0d\x81\x4d\xd6\xf1\x1d\xaf\xda\x67\x34\xfe\xc1\xc0\x59\xfc\x8b\x99\x95\xf8\xc7\x09\xde\x61\xa5\x54\x66\x61\xef\x74\xee\x50\xde\xca\xec\xd0\xff\xc0\xc7\x5f\xfe\xa0\x0c\x78\xff\x83\x18\x61\xf6\x65\xce\x90\x42\xc9\xde\x6a\xa9\x38\xc3\x48\xea\xcc\xa5\xe2\x49\x87\xa3\xc3\x93\xf4\x4d\x39\xd0\xf0\xd7\xc9\x1f\xd8\xfc\x17\x49\x7b\x92\x72\xde\xc1\x10\xbd\x69\xf2\xa6\xc8\xae\x0c\x25\xd7\x70\x4b\x1f\x4a\x9f\x71\xfa\x65\x0c\x3c\xd4\x2f\x64\x66\xa7\x7e\xb9\x09\xce\xea\x55\x50\x99\xac\xf7\x59\xe7\xb7\xa1\x02\x32\xeb\x8d\x96\xe1\x5c\x38\x50\x46\x61\xc8\xd1\x32\x82\x37\x7b\x85\xe6\xae\x9b\x72\x25\x9d\x63\xfb\xce\x90\x2b\x85\xce\x48\x18\xc6\xb9\xc2\xa7\x03\x31\x20\x84\xba\x02\x43\xc2\xa8\x2b\x31\x22\x94\xba\x42\x73\x84\x53\x5b\xda\x20\xa4\xda\x6f\x46\x61\xa5\x7f\xed\x09\x2d\x63\x01\x59\x78\x69\x05\xfa\x42\xcc\x58\x40\x11\x66\x5d\x60\xc8\x95\x42\xad\xdd\xfa\x89\x2b\x39\xab\xc5\x13\x40\x3f\x46\xde\x08\x00\x03\xa2\x46\x7c\x1e\x92\x32\xe2\xfb\x88\x80\x11\x45\xe6\xc8\x16\x5e\xd6\x20\x56\xf8\x17\xa3\x44\x51\xbf\xf5\x84\x89\xe1\xb3\x2c\x47\x94\xcf\x7d\x11\x62\xf8\xac\x48\x0f\xfe\x7d\xb6\xe0\x60\xe5\x75\x99\x71\x32\xff\x06\x76\x7a\x99\x14\xf9\xed\xfe\x82\x85\x60\x54\xcc\xf4\x87\x64\xf3\x6b\xfb\x7e\x57\x43\x15\xe5\xe5\xff\xb8\xaf\x9b\x7c\xfb\x2c\x6e\xf5\x98\x60\xa8\xc0\x05\x10\xe5\x2d\x3c\x80\x6b\x78\x2d\x5e\x09\x0f\xf6\x4d\x52\x6c\xde\x3b\x7e\xb6\xb3\x6c\x0b\x1f\x9e\xce\x2c\x78\x41\x1c\xd2\xbe\x81\xe8\x07\xed\x1d\x22\x65\x72\xe8\x54\x4e\x0c\x6b\xb2\x3a\x02\xad\xfe\x40\xb7\x22\xac\x6d\xaf\x6d\xc9\xa0\x4c\xf0\x8b\x54\xc3\x25\x7b\x86\x7a\x18\xd0\xd6\x41\xdf\x1f\x56\x43\x90\xb2\x2b\xa2\x4a\xc9\x08\x37\xb7\x22\x42\x77\x2f\x79\x33\x4a\x1f\x65\x94\x16\xe3\xe4\xc4\xd9\xce\xc2\xd9\xce\x30\x5f\x8c\x37\x63\x57\x45\x15\x99\x32\x64\xbd\x70\xab\x9e\xab\x70\xcd\xab\x23\x3a\xc2\xdd\xc5\xa1\xb4\xee\xb8\xa0\xf0\x05\x46\x87\x27\x83\x2b\x43\x0f\x52\x7d\x48\xf4\x70\x2a\xbc\x7f\xf2\x16\x1e\xa0\x75\x93\xd0\x47\x66\xae\x33\x99\x3e\x07\x4c\xfa\x69\xfe\x60\x2e\x7d\x93\xa5\x43\xb7\x14\xbd\xee\xcc\xb1\x77\x4f\x11\xae\x3c\xab\xa7\xc8\x62\x60\x71\x95\xed\x8e\x3f\x56\x30\xdd\xc1\xba\xc9\xb2\x2d\x79\x75\xe8\x92\x9a\xef\x6f\x0d\x10\xb8\x67\x96\x38\xf8\x48\x90\xbf\x21\xee\x8c\x0a\x23\x87\x83\xdb\x64\xe3\x21\x62\xd8\xce\x18\x80\x1d\x44\xc3\x08\xa1\x01\x0a\xf4\xee\x5c\xea\xeb\x8e\xbe\xe0\xe8\x2b\x0d\x2c\x31\xbd\x8b\x9a\x20\x96\x64\xd1\xa3\x4e\xc7\x19\xa2\x67\xa1\x74\x5a\x5c\xf9\x1f\x6c\xc1\x4d\xf6\x39\xa5\xc8\xfe\x96\x2d\xc0\x00\xf1\x6c\x5c\xb8\xcd\x17\x7d\x4b\xea\x8d\xe2\xb3\x48\x68\xae\x17\xb1\xc7\xc0\x99\x81\xff\x5c\x61\x7d\x84\x6c\x3f\x0a\xd0\x58\x17\x5a\x19\xc9\x7c\xbf\x86\x84\xc5\x8b\x10\x90\xdf\x8f\xad\xca\x3d\x97\x33\xe9\x7a\xf4\xb4\x30\xe1\x53\x9f\xeb\x25\x0e\x5c\x29\x9e\x66\x77\x7e\xea\x32\xa3\xcc\xb2\x61\x97\xeb\xcc\x26\xb4\x69\xfd\x32\xec\x78\xd8\x78\xb0\x94\xb9\xf6\x4d\x52\x9d\xf1\xc5\x9b\xca\xfc\x12\xd6\xaf\x2f\xe2\x34\x69\x7d\x5d\x8b\xae\xf7\x49\x95\x25\xc7\x00\xb9\xca\x76\x47\x55\xa7\xcb\xf0\xa8\x3b\x39\xd3\x1c\x0e\x49\x5d\x3f\x96\x55\xba\xa0\xa8\xd4\xbd\xd9\x75\xa0\x37\xf3\x4b\xcf\x44\x9e\x69\x3a\xb3\x0b\x2e\x41\x9c\xd5\x98\x87\x36\x2f\x3b\x13\x69\x8a\xc4\xcc\x62\x4b\x10\xa6\x45\xe7\xa1\x0b\x25\x27\x91\x1d\x9c\x17\xcb\xeb\xcc\xeb\xc6\xd8\x3c\x58\x51\x6d\xb2\x83\x92\x01\xe4\x23\x6b\x63\x42\xe0\x89\x40\xce\xff\x50\xd6\x75\xd9\x6a\x61\x38\x87\xd6\x09\xd0\xfb\x06\xfd\xeb\xbf\x65\xe8\x2f\x47\x87\x8d\x30\x5c\x83\x51\x1e\x24\x14\xa4\xb7\xd0\xb8\xfc\x0c\xcd\xc2\x0d\x00\x4d\x3c\x18\xde\x75\x20\x0d\x1f\x29\x64\xd3\x6b\xbd\x01\x3e\x85\x7b\x6f\x8c\xc0\xbb\x49\xd9\x7f\xa9\x03\x86\x69\xa6\x3d\x1b\x81\x8a\x89\xa3\xbf\xea\x00\x6a\x9c\x02\xb9\x53\x56\x2c\x6c\xc6\x01\x5b\xb6\xcc\x99\x40\xbc\x28\x91\xf0\x8e\x59\xf3\xb8\xb2\x23\xc6\xea\xcb\x51\x6b\x20\x83\x45\x29\x79\x1c\x9c\x15\x8b\x4d\xbf\x1f\x4b\xab\x72\xb4\xbf\xc9\x92\xc8\xf9\x7b\x39\x8e\x4a\xc5\xb9\x18\x2e\x5f\xf9\x60\xa2\x2c\xc7\x4e\xaa\x36\x17\xb7\xf9\x4b\xdc\x6c\x86\x5d\x0d\x63\x1a\xe7\x69\x06\xed\xcb\xfd\x1e\x7e\x43\x45\x78\xf3\x63\x2b\x87\x2c\xcc\x7b\x70\xfb\x1f\x39\x44\xe3\x12\x60\x12\xe6\x3a\xc8\xe1\x32\x0c\xf2\xdc\x05\x61\x80\xdd\x87\x4a\xf4\x80\x8f\x2c\x07\x46\x4e\x35\x7f\xef\x81\x55\x78\xef\x05\x62\x40\xe9\xe1\x25\x87\xc2\x4e\x1a\x5c\xd2\xf3\x7d\x9d\x35\x16\xb2\xdc\xc3\x93\xa5\x7b\x9a\xa3\x40\xf1\x49\x9f\x2e\xaa\xbb\xc0\xeb\x51\xdb\xba\xb8\x97\xa7\x14\xf6\x23\xb1\x13\x4f\xb5\x0e\x7c\xab\x26\xc4\x30\x7e\x23\xf8\xcb\xf6\x2e\x8b\xe8\xba\x6a\x5d\x3a\x11\xc4\x59\x54\x3b\xf1\x06\xcf\x2c\x0c\x8e\xc3\xa0\x2f\x3e\x4e\x02\xef\x34\xe4\x59\xb2\x8d\x34\x89\xb3\xe3\x5a\xd7\x05\xe0\x09\xa0\x9d\x86\x2c\x73\x36\xab\xa7\x90\x5b\xc7\xa9\x03\xa7\x06\x7d\x2c\xed\x56\xca\xa7\xfe\x46\x77\xbc\xa8\x08\x89\x70\x75\x98\xa1\xd2\x8c\xf6\x65\x54\xdb\x59\x58\x73\x16\xf1\xcc\xbb\xeb\x11\xcd\x69\x14\xda\x80\x52\x35\xbb\xce\x2c\x94\xb5\xdd\xf8\x0c\xd5\x6c\x0c\xdc\x84\xd6\xb6\xb4\xea\x9c\x1e\x4c\x6f\xfe\x97\x4b\xfd\x51\xed\x70\x59\xc5\x85\x5d\x30\x9a\x18\x96\x4a\xe6\x11\x1d\x74\x49\xb5\x85\xa8\x2b\x86\x0c\x6d\xd2\x77\xef\xba\xd9\x2d\x8e\xf2\xa2\x2c\x0e\x12\xf7\xc4\xba\xa4\x16\x2c\xfb\x84\x2a\xe4\x29\x21\x4b\x14\x3e\x21\xd8\xa3\x15\xc6\x1e\x2e\x6b\xf5\xc4\x23\x00\x8d\x91\xe6\xb7\xd2\x0a\x97\x37\x6c\x94\x16\xab\xc1\x1c\x45\x83\x13\xa8\x7e\xcb\x1b\x35\x88\x9b\x95\x40\x8e\xea\xfb\x69\xf5\xbb\x25\xed\xaf\x94\x21\xc7\x69\x73\x27\x00\xf7\x7b\x2b\x71\xbd\x2e\x4c\xe9\x6e\x33\x2a\x8c\x51\x68\x8d\xa6\xd6\x03\x32\xac\xa0\x8d\x16\x1d\xc3\x6b\x95\x3a\xa6\x43\x99\xd6\xc2\xe6\xd4\x18\x41\xf3\x08\x9d\x6b\x04\xd4\x2c\xe1\x39\xaa\x61\x4d\x16\x9e\xa7\x58\x8d\x80\x99\x21\xe0\x46\xd4\xa8\x89\xa2\x7f\x1c\xed\xc9\x90\x18\xe4\x94\x2a\xd4\xa9\xc1\xcb\x24\x3e\x31\xec\xe3\x95\x29\x23\x42\xab\x35\xaa\x23\xa1\x4d\x52\xea\x37\xd3\xad\xd6\xb5\x6e\x96\x11\x47\xc1\x3a\x9e\x24\xa7\x50\xb5\xd6\xb5\x6c\x12\x47\x47\x40\x3a\x9e\x14\x27\xd6\xbc\x96\x22\x71\x8c\xfc\x39\x52\x07\x3b\x11\xcc\xdf\x5d\x11\x33\xf6\x63\x52\x1b\x9b\x59\x6b\x92\x60\xab\xf4\x32\x23\xa4\x11\xe5\x6c\xb2\xfc\x24\x9a\xeb\xd4\x34\x13\xa8\x19\xba\xda\xdc\x6a\x53\x58\x1f\xa3\xb5\x4d\xc0\x9b\x2f\x96\xc7\xf5\xb7\x59\x35\x66\x2a\x71\x13\xb0\xe6\x8a\xce\x31\x75\x6e\x46\xf9\x3f\x8a\x4e\xf7\x4d\x34\xb9\xd3\xeb\x6f\x7f\x10\xad\xed\x14\xba\xda\xd1\x1a\xda\xef\xa1\x97\x1d\xaf\x8d\x1d\xa9\x83\xfd\xd6\x9a\xd7\xb1\xfa\xd6\x51\x5a\xd6\xef\xa8\x5b\x9d\x54\xa3\x3a\x9d\x1e\xf5\xe7\xd6\x9e\x96\xe8\x4c\xb3\x35\xa5\x63\xf5\xa3\x79\x5a\xd1\x0c\x5d\xe8\x68\x0d\x68\x91\xde\x33\x5f\xdb\x39\x8d\x8e\xb3\x40\xb3\x99\xab\xcf\x1c\xaf\xc5\xcc\xd6\x5d\xe6\x69\x2c\x7f\x38\x3d\xe5\x2a\xdb\x5d\x6d\xca\x74\x3c\xf1\x40\x6f\x38\xe7\x56\x69\x09\x3d\xb7\x02\x27\xc4\x74\xf1\x63\xba\xa3\x12\x98\x97\x37\xcd\x6b\xfe\x49\x9d\x69\xec\xa5\x99\xcd\x7b\xdf\x34\x02\xf4\x87\x5c\x7a\x6f\x40\xeb\xa5\xe7\x0c\xf8\x0a\xce\xe6\x59\x55\x95\xd5\x15\xa8\xbe\xe7\xd2\x8b\xd6\x9d\x51\x09\x34\xfa\x90\x54\xef\x6d\x16\x6b\x9c\x95\xb3\x7d\x84\xce\xbf\xdb\x84\xae\xe7\xf9\x67\xa3\xa1\xfb\xde\x3c\xc7\xdf\x3c\xc7\x17\xe0\x67\xf4\xc7\x7d\xf3\x1c\x7f\xf3\x1c\xff\x0b\x7b\x8e\xab\x39\x4e\xd4\x08\xcf\x37\xc9\x06\x6f\x36\x27\x35\x23\xf0\x28\xbe\x27\xb2\x1f\x1c\x0f\xad\x55\x6d\xa6\x73\x81\x4d\x28\xa7\x2b\x01\x28\x1d\x59\xb1\xc9\x9f\x5b\x73\x40\x6b\x5d\x55\x7d\x19\xce\xba\x56\x3b\xb7\x9e\x51\xa1\x5d\x51\x79\x19\xb6\xaa\xc2\x3b\x5d\x6b\x21\xe3\x1f\xb9\x51\x5e\x0f\x45\xef\xd2\xf4\x66\x74\xa2\xa0\x82\xd0\xc8\xf6\x93\x97\x18\xdb\x61\x0e\x16\x51\xda\x30\xee\x29\xa5\xcc\x74\xb3\xe6\xe7\xd4\xae\x71\xb8\xd4\x70\x93\xa3\x53\x6b\x7c\x27\x38\x54\x66\xb8\xb1\x91\x59\x31\xb6\xbf\x33\x97\x50\x9b\x51\xd5\xee\xe1\x04\x21\xeb\xa5\x3f\x8f\x2b\x73\x22\xe9\x7f\x3c\xb4\xb6\xff\xd3\xc9\x19\x27\xb8\x6b\x25\x00\xa5\x23\x2b\xa4\xff\xdc\x9a\x03\x2c\xba\xaa\xfa\x32\x9c\x75\x86\x9e\x5b\xcf\xc8\xe7\x2b\x2a\x2f\xc3\x56\x9d\x15\xd3\xb5\x16\x32\xfe\x91\xd2\x7f\x3d\x14\xbd\x4b\xd3\xd2\x7f\xa2\xa0\x82\xd0\x88\xf4\xe7\x25\xc6\xa4\xff\x60\x11\xa5\x0d\xa3\xf4\x97\xf2\x8d\xce\x9a\x9f\x53\xd2\x7f\xb8\xd4\x70\x93\xa3\x53\x6b\x5c\xfa\x0f\x95\x19\x6e\x6c\x64\x56\x8c\x49\x7f\x73\x09\xb5\x19\x93\xd1\xa5\x79\x3e\x94\x22\x4a\x26\x18\x5d\x58\x1e\x9e\xb3\xa3\x2c\x76\x0b\x03\xbb\x2c\x8b\xa5\xb2\x24\x88\xc9\xea\x18\x22\xbc\xe2\x50\xd0\x0b\x89\x55\x07\xe3\x51\x0c\xc4\x91\x30\x46\x81\x60\x2f\xbb\xa8\x0d\x2f\xbd\x21\xda\x94\xfb\xa6\x4a\xea\xc6\x8e\xe3\xf8\x3c\xdf\xdf\x65\x55\xde\x1c\x35\x48\x13\x29\x70\xb5\xc9\xb1\xc0\xf6\x33\xdb\x0c\xb3\xce\x2a\x62\x34\x45\x68\x16\x04\xb3\x11\xc0\xb4\x73\xef\x6f\xb9\x13\x2d\x30\xe0\x9b\xe9\xfa\xaf\x6b\xba\x1e\xcf\x89\x25\xcd\xbe\x9b\x2a\xd9\xa7\x76\x80\x50\x3b\xf5\xe6\xa6\x86\xfd\x03\xd8\xa7\xff\x80\xa6\xe5\xdf\xd6\x4c\xfc\x5b\x18\x7d\x7f\x33\x23\xee\xf1\x76\xd8\x11\x4d\x6d\xd8\xd6\x7a\x62\xab\xea\xb1\x86\xd3\xa5\xd6\xd1\x13\x46\x96\xee\xc5\x91\xae\x9b\xa4\x6a\xb4\x30\xd2\xec\x9d\x1e\x45\x1a\xbe\xb3\x4f\xbb\xe4\xa9\x0b\xee\xfc\xbd\x14\x0c\x51\xa4\xb8\xea\xc2\x8a\xe2\xf0\xf0\x64\x61\xd7\x18\x1e\xfd\xdb\x1e\x35\x2d\x3f\xf8\x59\x7a\x14\x73\xd4\x01\xc9\xd8\xe1\x84\xf9\x68\x61\xf4\x90\x60\xc4\xc0\x3f\x68\xa0\x6f\x8d\xec\x55\x56\xe7\x5f\xb3\x8b\x87\xac\x6a\xf2\x4d\x52\xe8\xe3\xab\xc4\xf2\x66\x8f\x7c\x9c\x43\x74\x78\x6a\x87\x3a\x38\x6a\xa4\x8f\x59\x32\xce\xb5\x18\xc9\x0b\xd8\x64\x36\x77\xcc\x64\x8a\x65\xbc\xb0\x86\x73\xa6\x15\x98\x74\x46\x19\x88\x8b\x66\x8c\xae\x27\xb1\xdc\x54\xa4\xba\x7e\x70\xb9\xa6\x8d\x0a\x27\x30\xe9\x1e\xa0\x49\x2d\x16\x2a\x76\xbc\x6c\xf7\xb6\x5d\xfb\x5d\xb7\x6b\x5a\x74\x5a\xf7\xc8\x01\x59\x16\x89\x74\x49\x00\xd0\xf9\xd1\x37\x57\xc6\xb4\x5c\xe8\x5c\x37\xe9\xab\x36\x14\xa4\xd1\x18\x60\xd1\x10\x22\xd1\xec\xb2\xf4\x22\xa5\x20\x30\xa7\x65\x5b\x36\x7b\xa6\x1c\x05\x0d\xac\x36\xaf\x8a\xc4\x84\xf3\x2a\xb4\xec\x39\x55\x7c\xb2\x3b\xe6\xc9\xf4\xd1\x14\x8e\xf3\xe3\x48\x24\xcd\x8f\x83\xa1\x30\x3f\x0e\x44\xb4\x54\x03\x58\x6a\xa3\x65\x3b\x7e\xb6\xbb\x34\x45\x83\x7e\xdb\xa6\xff\x45\xb7\xe9\x42\x39\x42\x96\xa7\x7a\x97\xd5\x4d\x55\xee\x6f\x5f\xb6\xe5\xbe\x0b\xe6\x5f\xed\x92\xe2\x12\xde\x3c\x32\xfd\xca\x43\x48\xe4\xb8\x66\xfe\x64\x97\xfd\x44\xb3\x4a\x0a\x35\x82\x4c\xad\xb4\xc9\x09\x58\x6b\x54\xd7\xc3\x1e\xd5\xdc\xc6\xd3\x42\xaa\xc9\x4e\x22\x35\x41\xc0\xf9\x92\x68\xff\x73\x03\xf0\xaf\x0d\x84\xbf\x3a\xfe\xfc\x8b\x1e\xfc\xcf\xe2\x5e\x25\x5a\x9c\x40\x6f\x28\x55\x3e\x26\x87\x27\xc8\x82\x6f\x87\x7a\xb0\xc1\xe8\xec\x1c\x59\x98\x42\xc6\x88\x16\x70\xf5\x14\xf9\x5a\x2e\xfd\x23\x41\x99\x52\x73\x18\x46\x98\x8e\xc2\xb6\x28\x1f\x79\x36\xc5\xb6\x57\x90\x6d\x9f\x95\xed\x14\x7c\x0b\xfb\x68\x57\x9f\xd3\xfd\x80\xfc\xe2\x72\x51\x61\x69\xbf\x80\x94\x14\x13\x69\xba\x88\x89\xa0\xfc\xfc\xa2\x6b\x73\x2a\xb4\x55\x57\x64\x33\x48\xd3\x17\xed\x74\xba\xeb\x2e\x4b\x25\xb0\xa8\xc7\xa2\xca\xa2\xd2\x2b\xfb\xad\xd4\x5e\xde\x75\x9e\x4c\xa1\xcb\x4d\x62\xd3\x92\x3c\xf7\x42\x2f\xa3\x51\x9d\x1d\x92\x2a\x69\xca\x8a\x27\xd4\xda\xe6\x95\x94\xc1\x50\xa2\x59\x9a\x3f\x7c\xbc\x5f\x26\x6b\xe6\x35\xb1\x60\x10\x04\x0e\x27\x6c\x7e\x59\xcb\xc7\x25\x60\x1a\xc5\x64\x2d\xb3\x28\x98\xad\x4e\xe9\x34\x03\xb5\x15\x9c\xc8\x70\x7b\xe9\xf2\x0e\x49\xa1\x5d\xcd\x0e\x84\xc3\x69\x6f\xfe\xf1\x61\x21\xef\xf5\xab\xaf\xae\x79\xa2\xa4\x30\x2d\xa4\xe3\xb3\xb3\xfc\xe3\xc3\x8b\x61\xb9\x50\x5e\x81\x0e\xd4\x5b\x24\x66\x14\x99\xff\xe9\xdc\x1a\x00\x37\x36\x90\x6d\x64\xf7\xe3\x06\x54\x06\x73\x34\x84\x13\x0d\x70\x0f\xe2\xf1\x03\xdd\x81\x7c\xe9\xd1\x9a\x0d\x47\x91\x34\xd9\xff\xfd\x1e\x52\xec\xd9\x18\xa1\xef\x2d\x1b\x54\x93\xb3\xb3\xcb\xd9\x05\x25\xbd\x00\x7b\x2e\x24\x1c\x7f\x52\x5e\x18\x16\x8e\xb7\x54\x78\x6a\x2a\xbc\x55\xb9\xbf\x7a\x87\x00\xdc\xd4\xaf\x1d\x03\x88\xb7\xfa\x41\x00\x64\xa7\xb3\x6f\xb2\xe6\x31\xcb\xf6\x63\x63\x74\x91\x6c\x1b\xe6\x0e\xba\x7a\xa4\x04\x88\xa3\x6a\x9f\x68\xd4\x14\x68\xc7\x8f\x1d\x03\xa7\x66\x97\x90\xd2\x4e\x4a\xfa\x7c\xab\xc4\xb3\xe4\x86\x16\xa4\x90\x93\x2f\x16\xe9\x4a\x26\x5d\x02\xbb\xd6\x96\xcd\x95\x01\x08\xc7\x54\x3e\x4a\x23\x35\x03\x5b\xab\xa0\x6a\xd0\x5e\xcc\x3b\x60\xc4\xf6\xbf\x20\xb4\x40\x66\x7d\x64\x32\xeb\x52\x4d\x29\x26\x73\x7e\x9e\xfe\xcb\x0f\xef\xec\x77\x5f\x64\x1d\xa6\x95\xa2\xf7\x05\xb3\x48\xfc\xb2\x2d\x2b\x56\xec\xe3\xda\xe1\x39\xb2\xa5\xdf\xa2\x91\xd5\xd3\xed\xf8\x46\xd7\xcc\xca\x23\x5a\xd5\x53\xc3\xc8\x7b\xdb\x85\x9b\x96\x74\xfe\x06\x23\x5d\xbf\x23\x48\x8f\x50\xd9\xd3\xa2\x97\x78\xd5\x20\x79\x40\x91\x57\x27\xd9\xc2\xed\xd6\x18\x9c\xe3\x41\x1c\x27\x8b\x46\x40\xae\x96\x48\x26\x98\x2f\x3d\x33\x9f\x4c\x6a\x66\x1b\xa6\x22\x6a\x19\x69\x95\x7a\xcb\xab\xac\x24\x5d\x1f\xc4\x72\x52\x49\x30\x5e\x44\x22\x66\x10\xd1\xc9\x7d\x53\xbe\xc2\x87\xb5\xa6\x49\xa8\x3c\x97\x1c\xac\xf0\x4a\x42\xc8\x95\x97\x93\x00\x6a\xb3\x64\xf3\xa8\xcf\x0c\xc9\x4d\xf9\x90\xad\xe1\x06\x51\x71\x45\x9d\xa3\xf8\x41\x81\xb1\x96\x21\x18\x90\x17\x38\x08\x03\xf3\x34\xbc\x58\xcd\x09\x50\x7b\x36\x2b\xb0\xd2\x6b\x79\x41\xae\xbd\x82\x19\xa0\xfa\x0b\x3f\x42\xf2\x88\xba\x57\xba\x5a\x68\x31\xbb\x9a\x6f\xdd\xba\x5a\x6f\x8e\xba\x3a\xc2\x5e\x74\x75\x2f\x8e\xa9\xd5\x8c\xc5\x16\xea\xf7\xbb\x6f\x70\xd5\xd7\xa8\x65\x26\x80\x15\xd4\x5c\x67\xe7\xbd\x9a\x6d\x53\x58\x36\x60\x8b\x4d\xc8\x57\xab\x4d\x13\xc7\xb1\xc7\xd1\xd6\xeb\xab\xf5\x16\x90\x23\xb9\xf3\x78\xd3\xf9\xd5\x87\x17\x39\xa9\xf0\xf1\x4c\xbb\x94\xa3\x8e\x1d\xf8\xa3\xe9\xcf\x88\xd0\x74\xb9\xfc\xe9\x62\x67\xde\xe6\xf6\xec\xc7\xc7\x9d\x10\xac\xb6\xed\x9f\xcc\x34\x7f\x3a\x4b\x3a\x23\x60\x67\x84\xbb\x3f\x1c\xb2\x6a\x93\xd4\xd9\xa5\x12\xd4\xa6\x3d\x36\xa6\x8b\xa7\xe3\xfa\xaa\x32\x7f\xea\x33\x94\x13\x1e\x8a\x7c\xc3\x53\x8d\x6f\x79\x2a\x31\x03\xb6\xec\x29\x32\x77\x44\xb2\xdd\xa1\x79\x3e\xc9\x58\x08\x48\xa7\x00\x72\x5a\xfa\x2b\x40\x4f\x46\x79\x06\xf5\x45\xf1\x9e\xc0\xd9\xae\x9d\x17\x6c\x9b\x21\xbf\x11\x0e\x3b\xfa\xc6\x17\xfc\x1b\x16\x1e\x28\x2e\x39\x02\x3c\xe6\x90\xee\xa8\x53\xb4\x76\xbf\x8f\xd1\xe1\xe9\xf2\xf1\x2e\x6f\x32\x1b\x8c\xbf\xc2\x55\xa5\xf3\x13\x16\x26\xe5\x6d\xde\x08\x3b\xb1\xfc\x75\x57\x7e\x1d\xf8\x24\xbd\x55\xd8\xdd\xc9\x59\x6f\x1f\xb2\x65\xcc\x2d\xd7\x5b\x5e\x65\x2d\xe3\xf6\x40\xac\x60\xd3\x0e\x46\x7f\xf7\x3f\xb0\x0a\x76\x55\xae\x2e\xd6\x18\xdb\x4d\xf5\xd7\x57\x3d\x9e\x78\x1a\xa8\xa3\x88\x28\x60\xf5\x2f\x4a\xb1\xab\x51\xf5\x63\xd2\x6c\xee\xa4\xcb\x51\xdf\x21\x84\xce\x46\x5c\xa2\x34\x5f\xa8\x4b\x2e\x20\x90\xb6\xf7\xa2\x9b\x53\xee\x6e\xb5\x58\x2a\x74\x15\x57\xd4\x39\x42\x4a\x68\x30\xd6\x49\x8b\xd6\xc9\xac\x4f\x42\x26\x5c\xfd\xc3\x13\x10\x93\x9b\xd5\x0f\x4f\xd6\x47\x8b\x0a\xd3\xb3\xd7\x7f\xab\xef\x0f\x94\xbf\x6b\x6b\x5f\x36\xd6\xfb\xf7\x9d\x78\xb0\x0c\x82\xe5\xcc\x2a\x2b\x4b\x29\xa3\x89\x97\x5e\x01\xf9\xdb\xd9\xcb\x3f\x87\xec\xee\xba\x4f\x10\xe5\xd1\x57\x67\x53\xee\xeb\xfb\xc2\xce\x9e\x9a\xac\xda\x27\x85\x5d\x97\xf7\xd5\x26\x3b\x17\xef\x73\xa0\x4f\x5e\xee\xed\x22\xaf\x1b\xab\x49\x2d\xe6\x3c\x68\x28\x70\xc8\xaa\x5d\x5e\xd7\x6d\x59\xad\xe0\xaf\xf9\x3e\x3d\x77\xd2\xbc\xde\x50\x2a\x3d\xdb\x9b\x3b\xf0\x9a\xac\xca\xfb\x26\xb3\x37\x49\x95\x5e\xdd\x65\x49\x9a\x55\xd6\x7d\x61\xd1\xbd\xe9\x5d\x96\x14\xcd\x1d\x74\xc4\x2e\xef\x9b\xc3\x7d\x63\xa5\xa9\x95\xed\xce\x9d\x02\xca\x9d\xdf\x35\xbb\xe2\x97\x34\x69\x12\x1b\x60\xfc\xb7\x1f\xde\xa5\x1b\x27\xd9\x14\xb5\x93\xef\xd3\xec\xe9\xdd\x17\x0b\xfc\x2f\x3b\x94\xc1\x03\xf7\x50\x16\xf9\xe6\xd9\xde\x97\x69\x66\xe7\x29\x45\xbd\x79\x56\xbe\xd4\x59\xf5\x90\x6f\xba\x8f\xfd\x70\x80\x97\xa7\xbb\x79\xd5\x77\xdc\x94\x8f\x61\xd9\x86\x87\x9d\xef\x75\xc7\xb0\xca\x5b\x78\xb0\xf3\x26\xdb\xd5\xe2\x95\xba\x24\x3f\x56\xc9\x61\x68\x94\x3b\xc9\x32\x31\xda\x23\x05\xcd\xa3\xde\xab\x40\x47\xbf\x7b\x39\x97\x0b\xba\x1a\x43\xdc\xd0\x95\x60\x5c\xd1\x3e\x2f\xe5\x8e\xb6\xe2\x20\x97\x18\x4b\xe8\xdc\xd2\xca\x3b\xbe\x30\xb0\xf5\xc0\x3b\x3c\x5d\x76\x5e\xb6\x4e\x44\x75\xc5\x89\x89\xc7\xa6\x0b\x67\xf5\x95\x9c\xdb\xb9\x19\x83\x1d\x74\xf6\x8c\x9d\x3d\x49\x97\x12\xb9\xd3\x1d\x99\x53\xab\x01\x27\x95\xf1\x5e\x64\xb3\x1e\xf3\x35\x9e\x27\x96\xe7\x19\x39\xd6\x99\x36\x56\x1a\x34\xae\x3e\xbc\x6c\xee\xab\xba\xac\x2e\x0e\x25\xed\x6f\x35\xbf\x33\x0b\xf4\xb0\x63\x14\xaf\xa3\x34\xad\x56\xb5\xe2\x06\xab\xe0\xf0\x24\x2e\x7e\xc2\x6f\xd3\xe1\x95\xde\x7d\xb5\x83\xe3\x5d\x98\x40\xd2\x78\x58\x36\x8f\xdc\x73\xc8\xbc\x86\xbc\xab\xc8\xda\x3b\x4d\xfe\x2b\xf8\xd7\x73\x16\x89\xc9\x82\x19\xfd\xd7\x3b\x9d\x72\x97\x08\xb4\xbf\xda\x51\xad\xbf\xfe\x4a\xf0\x92\xfb\x43\x2f\xfa\xcd\x06\xd5\xb4\x73\xdc\x45\xb9\x35\x57\x99\x5e\xb6\x45\x99\x34\x60\xc5\xfe\xb6\x37\x5c\xc7\x2a\x72\x24\x60\x24\xc4\x16\x56\xd8\xba\x8e\xc1\x8a\x19\xd1\x8a\x44\xb1\x07\x2f\xc5\xb0\x07\x44\xd5\xa5\xc8\x6a\xce\x11\x83\xf6\x3b\x50\x7d\xfd\x48\xa9\xf7\x02\x91\x6c\xf3\x69\xa4\x30\x00\x50\xc3\x82\x1a\xba\x92\x61\x2e\xd6\x1a\x42\x94\xdd\x0d\x3b\x66\x1a\xaa\xc1\x55\x5b\xb5\x4a\x78\x78\x12\x17\xc3\xf8\xce\xd2\x93\x56\x7e\x02\x1e\xbc\x9d\x8d\x04\x06\x0f\xe0\xef\xb3\x5b\x58\x96\xe5\xd6\xc4\xc5\x2b\x34\x89\xb5\xf1\x5e\x93\xdc\x90\x7b\x78\xe2\xf8\x44\x1d\x3a\xd1\x68\xeb\xbc\x1d\x88\xf0\xfe\x51\xee\xf1\xf9\x50\x29\xe1\x11\xf6\x51\xa5\x4f\x0f\x39\x16\x81\x6c\x66\xd3\x46\xa0\x26\x14\x26\x1a\x15\xf7\x18\x7a\x15\x4d\xaa\x91\x5c\x08\xb0\x78\x51\xbd\x1a\x87\x78\x8d\xf7\x6f\x4b\x30\xf1\x8c\x01\x84\x54\x81\xeb\x7a\xed\x08\x0c\x8d\xed\x64\x4f\xfb\x96\x24\x45\x45\xba\x14\x1e\xc9\xef\xde\x09\x2b\xdd\xb2\x31\x1f\xc4\xc2\x34\x3a\x8c\x1d\x99\xec\xf4\x66\x73\x97\x09\xc8\x70\xbf\xa5\x36\xb8\xc2\x34\x28\x4a\x60\x7d\xb6\x9a\xf1\x00\x16\xbc\xd0\x1d\xbb\x9f\xda\x56\x91\x9f\xee\xc4\x24\x17\x11\x19\xc4\x5d\x99\x39\xad\xdf\x99\x41\x29\x6c\xd9\xfa\x6b\x38\x41\xb6\x03\x87\x8d\x19\x9d\x52\xf0\xd5\xc0\x2a\x71\xae\x44\x64\x70\x3e\xed\x7d\x74\x78\xba\x14\x71\x4c\xb8\xfd\x64\x97\xa7\x69\x91\xcd\x6a\xb7\xdd\x17\x2f\xa6\xa9\xa8\xa9\xd2\x43\xe0\x48\x82\x28\x74\x87\xb7\xc0\x4e\x9a\xd5\x4d\xbe\x4f\xe8\xbb\x61\x0b\x8d\x23\xec\x06\x93\xc8\x8d\x47\xa4\x11\x28\xcb\x87\x8f\x32\xde\x89\xda\x33\xb9\x98\x2a\x05\xa6\x49\x2a\x41\x92\xbc\x1b\xa4\x5b\x58\x45\x72\xa8\xb3\x0b\xf1\xe3\x95\x29\x9d\x69\xb9\xb3\xab\x6c\xf3\xbc\x29\xf2\xfd\x2d\xd5\x3a\x3f\x7c\xa3\x08\x48\xab\xac\x6e\xaf\x47\xed\x55\x19\x15\x02\x74\x78\x52\xce\x74\xa6\xd9\x4d\x40\x60\x62\x45\xe5\x33\xf5\x9b\x26\xcf\x17\xc0\x36\x43\x95\x5d\x32\x40\x31\x9b\x37\x95\x34\x36\x92\x62\x13\xb6\xfb\xdb\x49\x20\xce\x5e\xc4\xf7\xac\xff\x61\x44\xd2\x58\x62\x31\x01\x52\xbe\x61\x63\xd5\xcf\xae\x2e\xca\x7d\xf1\xdc\x9f\x18\x63\xe5\x7a\xbb\x0f\x20\x5a\xfb\x32\x2b\x8a\xfc\x50\xe7\xf5\x1a\x6c\x3e\x8c\xe2\xf0\xe1\xc5\x64\x05\x9e\x6c\x65\x93\x1c\x40\xda\x48\xa0\xf9\x2b\x3d\x1e\x0c\x98\x30\xe7\x0d\xf8\xf2\xce\xcd\x92\xb4\x5a\x15\x8d\xad\xc6\xa8\xa3\x32\xb4\xfa\xed\x45\x3d\xe9\x77\xe2\x79\xfd\xbc\x29\xd3\x67\xda\xae\x88\xff\xd1\x7b\xad\xb2\xf9\xe5\xec\x00\x0f\xe2\xc6\x78\x93\xdc\xd8\xfb\xe4\x41\xbe\xbf\x4a\xf4\xfb\xab\xfa\x5a\x7d\x69\x5e\x21\x8b\x2c\xa9\x2e\x6e\xca\xe6\xee\xb2\xc8\x1a\xba\xe3\xa1\x4c\x02\x4b\x31\x82\x28\x3f\xbc\x29\xeb\xbe\x30\x5e\xdc\x3e\xe1\xe9\xc7\xf1\x67\x1d\x83\x81\x2f\xda\x30\x15\xb0\x97\xe0\x3d\x62\xda\xaf\xbe\x3f\x4a\xf6\xf9\x2e\x61\x02\xba\xeb\x7a\xa7\x94\x89\xba\xb9\x95\x68\x4a\x91\xdb\x29\x45\x4a\xa9\xfe\xd4\x63\xf3\x1e\xb2\x41\xc1\x72\xce\x08\xd9\xbf\x35\x6b\x1f\xaa\xf2\x90\x55\xcd\xf3\x85\xae\xce\x5f\xce\x2a\xa4\x0c\x38\xd4\x38\x24\x55\xb6\x6f\x34\xb5\x68\x4c\x4f\x07\x63\x2d\x8f\xd8\xd6\xf5\x8a\x4d\x12\x16\xf6\x24\x4b\xcf\xac\xe4\x42\xb8\x53\x8c\x95\x11\x51\xb0\x47\x8a\xf0\x18\xfe\xbd\xcd\x4b\x76\x93\x65\x5b\x62\x1c\x9c\xb6\xbe\xa5\xe5\xdc\x92\x3a\xac\x24\xd8\x1a\x19\x5f\xc3\x66\x42\xec\xb4\xbb\xa8\x85\xd2\x9c\x13\x7b\x5c\x38\xad\xe6\x2e\x03\x1c\x1b\x76\xae\x7a\x8e\xce\xac\x0f\x16\x3e\x3c\x9d\x5d\x8e\xdc\x91\x7d\x6f\xaa\x0f\x17\x01\xda\xea\xe7\xc8\x78\x69\x76\x66\xcd\x31\xd6\x62\x78\xf6\xb0\x33\x72\xd8\x92\xb2\xed\xd7\x73\xa8\x35\xa7\x4c\x1f\x32\x63\xba\x3a\x03\x71\xcc\x92\xad\x31\xa3\x22\x98\x47\xbe\x9c\x8f\x7f\xfe\xf8\x41\xdf\xb6\x8e\x95\x6e\x77\x61\x1f\x34\x25\xc4\xa4\xad\xa5\xd2\xb2\x0e\xd2\x7f\xd8\xa4\x9f\xb2\x6f\x86\x83\x63\x55\xf4\x48\x21\x14\x5d\xba\x43\x91\xae\x3e\xc3\xf3\x1f\x49\xd0\xf6\x6e\x07\xeb\x00\xe4\x97\xfa\xdd\x60\x45\x45\x9e\x43\x56\x2e\x39\x16\x54\x60\xa9\x42\x46\x46\x63\x0c\xa4\x0c\xc3\x64\x5a\x0a\xb7\xd1\x36\x59\x82\xfe\x88\xd7\x57\xaa\x14\x19\x91\x7c\xfd\x43\xd8\xac\x2e\x8b\x07\x2a\xed\x92\x2a\xb5\xd2\x66\xec\x38\x9d\x17\xad\xc5\x71\x6d\x7d\x48\xf6\xdc\xce\xd8\x94\x65\xd1\xe4\x87\x2f\x43\xc7\xbc\x0b\xeb\xd4\x87\x22\xa7\x5a\xc4\xc2\x6a\xfc\x53\xaf\xe0\xd0\x39\x3f\x3b\x65\x16\xe5\x5a\x5b\x90\x64\xfc\xeb\x53\xd2\x27\x7e\x18\xe0\xcb\xfe\x34\x34\xc6\x6c\x0a\xd8\x09\xb3\x65\x13\x3d\xce\x92\x7f\x76\x0e\x27\xe8\x96\x47\x3f\x7b\x13\x01\x9b\x8e\x80\xd3\x2e\xc1\xa4\xe7\x59\x09\x5a\x84\x98\x4f\x49\xd3\x54\xef\x65\x82\x9c\x31\x05\x23\xdf\xa7\xf4\x33\xba\x94\xf6\x66\x7c\x4a\xf2\x55\x4d\xbe\xbc\xec\xd3\x45\xaa\x13\x41\x68\x16\xcb\x71\xad\x68\x15\xc7\x8d\xd4\x9e\x62\xbc\xe1\xaa\x73\xf8\x6f\xb8\xb6\x99\x0d\xdb\xf2\x73\xb9\x71\xc0\x28\x2d\x6b\x60\xaa\x2e\xce\x58\xd3\x32\x14\x60\x9b\x02\x45\x7f\xe7\x36\x12\xca\x39\x31\xbb\xdd\x94\xed\x6e\x40\x21\x81\xf6\x7f\x79\x62\x99\xf8\x77\xd9\xbe\xf9\x6f\x3f\x34\xe5\xe1\x8b\xa5\x16\xb0\x93\xaa\x2a\x1f\xa5\xad\x83\x8a\xc5\x8c\x71\x9f\x3b\xe0\xb3\x86\x76\xee\x20\x0e\x0f\xd7\xdc\x81\xe9\x1b\xba\xbf\xd1\x9a\xba\x72\x45\x3c\xc1\xba\xac\x59\x35\xd9\x35\x8f\xf2\x70\x92\xb9\xfc\x0d\x17\x9a\x6f\x2b\x2d\x7e\x7b\x09\xf3\x1b\x09\xa6\x6f\x2c\xc1\x16\x2f\xbf\xfd\xdd\xd3\x57\x58\x84\x9e\x2e\xe6\x48\x95\xb7\xd5\x64\x6c\x35\x91\x8e\xb1\xfa\x3b\xc9\x7a\x93\x14\xd9\x7b\x7c\xee\xf8\xf2\x2e\x51\x7e\xcb\x17\xf5\x6e\x17\x0b\xe7\x47\x92\xcb\x3a\x3c\xdb\xf1\xe1\x49\xe8\x06\x36\xdb\xf4\x9f\x7a\xd8\x96\x8c\xd3\xc2\x81\x99\x1c\x89\xb5\x0b\xb9\xae\x2c\xd9\x54\x6d\x3b\xd3\xd6\x5d\x83\xee\x3e\xa8\x71\x2a\x9a\x9d\x14\x48\x3f\xa6\xcf\x62\xce\x78\x53\xc4\x1f\xf5\xcc\x1c\x21\x1a\x7c\xef\x05\x35\x35\xa0\xd9\xeb\x11\x28\xa8\xc4\xf7\xcf\xc5\xff\x4e\x7c\xa6\x1d\xb7\x1a\x0e\x93\xc7\x7b\x71\xc5\x37\xe4\x53\x2b\x8f\xb8\xa4\x3c\xe6\x8d\x3a\x02\xaa\x2b\x34\x04\x47\x21\xcf\x08\x28\xb5\x1c\x0b\x69\x69\x8a\x23\xb8\x66\xf8\xbe\x11\x61\x7e\x2b\xaa\x7d\x1b\xaa\x2a\x06\xeb\x29\xaa\x0a\x2b\xe3\x44\x29\x9e\x8f\x75\xa4\xc7\xc3\x80\xba\x22\x43\x50\x94\xce\x0c\x02\x52\x4b\x31\x73\xc3\x1f\x74\x2f\x3a\x39\x89\x99\x18\x9e\xe3\x2b\x3e\x39\xf6\xac\x98\x72\xaf\xf0\x9f\x42\x86\x88\x0e\xfb\x3c\x82\xf3\xe4\xda\x7b\x5f\x8c\x22\x69\xfe\xae\xb4\x3c\x78\xa8\xd3\x8b\xa3\x81\xa4\x1b\x0a\x87\xb2\xce\x52\xfb\x90\x34\x77\xe0\x75\x20\x88\x31\x76\x9f\x80\x8d\xe9\xec\xe2\x86\x72\x74\x71\xb1\xeb\x4c\xba\x9e\x00\xdf\x4d\x77\xc4\x79\x8d\xfb\x43\xdd\x54\x59\xb2\xb3\xf3\x7d\xdd\x24\xfb\x4d\xc6\xaa\x51\x98\xd0\xe7\x4d\x59\x14\xdc\x16\x3c\x00\xca\x4c\x9b\xa1\x85\xb3\xb7\xc9\x97\xf7\xf3\x96\x38\x6f\x93\xaf\xd4\x63\x29\x33\x4e\x7b\x5c\x27\xbf\x63\x8e\x44\x44\xba\x19\x31\x40\x7d\xa7\xc8\xf7\xbf\x26\x37\x45\xd6\x1e\xc4\xcc\x2d\xcf\x85\xd3\xdc\xe2\x5c\xe2\x4d\x0d\x1e\x3b\xd9\xa9\xb2\x24\x2d\xf7\xc5\xf3\x19\x27\xb0\x86\xdb\xc2\xda\x2a\xa6\x0b\x2b\xab\x78\x0f\x30\x93\x4e\xc5\x11\xe6\x9a\x84\x00\xd8\x1e\x03\x00\x30\x1e\x01\x00\x17\x7f\xba\x21\x9a\x46\x59\xaf\x30\x85\xa1\x5e\x7e\x0a\x21\x7e\xed\x68\x09\x4a\xfd\x2a\x53\x48\xf5\x6b\x4c\xa1\x45\x37\x5f\x8b\x90\xd2\x2b\x4c\xa1\xa4\x97\x9f\x42\xa8\xbd\x97\x25\x8b\xa5\xb9\xc8\x8d\x55\x9e\x42\x74\xac\xee\x14\xd2\x4d\xf9\x6b\xb6\x5f\x84\x69\xaf\xc6\x14\x7a\xbd\x0a\x53\x38\x0d\x0a\xf8\x41\x69\x38\xa3\x86\x2a\x65\x66\x54\xe0\x92\xc5\xb8\xa4\xcc\x11\x28\x13\x15\x07\xa9\x36\x51\x6f\x80\x78\x83\x47\xe4\x62\x81\x6a\x17\x2a\xa3\x26\x4a\xb8\x8a\x38\xa6\x65\x0e\x94\xd1\xfd\x2c\xc6\x57\x9c\x2b\x47\x68\x8b\x4b\xd7\xff\x5e\xcd\xc1\x31\xec\x4a\xce\xd4\x07\x44\x05\x71\xce\x84\xd0\xa4\x5a\x24\xaa\x58\x1f\xd6\xf7\x44\xaa\x3b\xd9\x17\x5a\x76\x61\x6f\xac\x0f\xbc\x3f\x3c\xf3\xeb\x74\x97\xd8\xe9\xe5\x9a\x0e\x69\x35\x47\xba\x23\x4a\xce\xee\x0c\xab\xa0\xa7\xd6\x98\xd7\x15\x2b\x59\xdf\x19\xa9\xee\x64\x77\x68\xd9\x85\x1d\xb2\x92\x75\xa3\x23\x9c\x69\x8e\xe9\x98\x06\x61\x46\xf7\x46\xa5\xe1\x74\x53\x2f\xca\x05\x89\x9e\x9b\xd4\xfd\x3e\xcd\x2a\x96\xb2\x7a\x21\x8b\x4e\xcc\xce\xab\xb4\x50\x1c\x9d\x8f\xe7\xec\xc5\x93\x7c\x08\x85\x19\x53\x64\xae\x6c\xe8\x35\xb1\x70\x94\x16\x4b\x16\xad\x41\xf5\xe2\x56\x30\xbd\xab\x69\x25\x54\xda\x1c\x21\x3d\xa5\xca\xd3\xe2\x93\x16\x5e\x2a\x3f\x53\xdd\x9b\x7a\x6e\xaf\xd2\x5e\x5c\x84\x15\xbd\xeb\x03\x99\xd1\x4b\xa9\xd2\xe2\xde\xa6\x86\x4c\x61\xcc\x31\xf6\xb4\x93\xf2\xf7\x98\x85\xdf\x62\xda\x7d\xfb\x79\xb6\x32\xc3\x83\x38\x54\x7e\xac\x92\x83\xf0\x29\xe9\xbd\x10\xde\xe9\xf6\x13\x77\x5a\x9f\xbd\x00\x7d\x98\x3b\xd0\xeb\x74\xa3\x5e\x2b\xdf\x48\xaf\xea\xb5\x73\x5a\x1d\xac\x03\xbf\x5c\x6d\x33\xf8\x04\xcd\x1a\xd4\xd9\x43\x98\xce\x98\xac\xac\x28\xbf\x0a\xbb\x7a\x18\xd3\x23\xd4\x49\xb5\xed\xe9\xa1\x4c\x17\x28\xa0\x1c\xf6\xd2\xe1\x4c\x97\x6b\xae\xca\xfd\x5e\x1e\x37\x6c\x32\x4e\xcb\x6a\xbb\xea\x8b\x6c\x87\x94\xae\x11\xeb\xe6\x48\xe5\x86\xf1\x22\x4c\x2c\x5d\x50\x4e\x60\x24\xca\xbf\x50\x16\xbe\xad\xf2\xd4\xae\xca\xc7\x0b\x06\x56\xc2\x4f\x7c\x61\x59\xe6\x47\xbe\x67\xfb\xf4\x82\x41\x94\xbe\xb6\xd3\x23\x6f\xb2\x9d\xe2\x4d\xa3\x15\x6a\xc1\x0c\x94\x61\xbe\x37\x75\x56\x6c\xfb\xdf\x64\x43\x3e\x5a\x4c\xb5\x39\x01\x49\xe6\x52\x74\x1a\xd6\x4b\xdf\xc0\x7f\x3a\x44\xfb\x31\x3a\x4e\x87\xb8\x39\x84\x06\x3a\x3c\xbd\x4e\x47\x21\x92\xee\xf6\x1b\x42\x44\xcc\xcc\xf6\x49\x8e\x6f\xca\x7c\x03\xe5\x58\xa0\x23\x8e\xed\x33\x22\x34\x2d\x85\x0d\xf6\xa9\x6f\x02\x19\x76\x84\x1f\x3f\x98\x8f\x44\xe1\x90\xcc\x74\x94\x89\x89\x66\x8e\x1a\x2f\x69\x0a\x1c\xf0\xfa\x6f\xbb\x2c\xcd\x13\xeb\x7d\xe7\x0d\x1b\x84\xe8\xf0\x74\xf6\x72\x2c\x6b\xad\xd1\xd3\x4e\xc4\x64\x32\x15\x29\xd8\x0b\x2c\xb9\x26\x82\xcf\xc6\x43\x76\x81\x99\xaa\x70\x4b\x25\x2f\x7e\x3d\x3d\x27\xaa\xfb\xa4\x93\x74\xec\x68\xc6\x93\xc2\x17\xa8\xd7\x3e\x8e\x04\x7c\x1a\xc4\x4e\xd9\x3d\x11\x84\x03\xa1\xef\x4f\x43\x7b\x06\x56\x39\xb7\xf6\xe6\xec\xea\x4f\xa0\xf3\xcd\x50\xe2\x96\xa8\x79\x6b\x14\x36\x2b\x2d\xe4\x68\xdc\x48\xcb\xd9\x8e\x4e\xe9\x5c\x7c\x62\xad\xfe\xea\x98\x1d\x97\x52\x7d\x90\xf6\xd3\x65\x7a\x18\x2d\xa7\xff\xd5\x87\x97\x61\x8d\x6e\x58\x8f\xeb\x6b\x6f\x4b\x68\x97\x1e\x61\x1f\xd4\xea\x0f\x53\x6f\xba\x50\x1f\xa9\x15\xf4\x4b\x53\xd3\x26\x52\x76\x09\x5d\x36\xa1\xaf\xd2\xe6\x58\xde\x52\x20\x8c\x10\x68\x46\x31\x13\x6a\x6b\x88\xd4\x5c\xe9\x17\x09\x67\x13\xc4\x39\x24\x75\x9d\xef\x6f\x15\xbf\xf9\x99\x66\x91\xae\xee\x51\x86\xc2\x59\xb8\x2c\x37\x9e\x8c\x61\x37\x38\x6c\x63\x28\x4c\xdb\x55\x8c\x4d\x2e\x1f\x50\x23\x12\x4b\xad\x2f\x06\x5c\xc4\xe9\x05\xc9\x6e\x90\x1b\x2f\x61\x92\xc7\xa4\xda\xaf\x65\x92\xb6\xee\x89\x98\x64\x04\x97\x15\x4c\x32\x82\xdd\x30\x93\x8c\xa0\x30\x83\x49\x4c\x4d\xae\x60\x12\x13\x12\x8b\x99\xa4\x8f\x4b\x7b\x47\x31\x89\xb6\x6e\xb8\x84\x49\x36\x55\x0e\x77\x7b\x56\x71\x49\x57\xf9\x44\x6c\x32\x86\xcd\x0a\x3e\x19\xc3\x6f\x98\x51\xc6\x90\x98\xc1\x29\xc6\x46\x57\xb0\x8a\x11\x8d\xc5\xbc\x62\xc0\x46\x30\xcb\x26\x74\x3d\xcf\x5f\xc2\x2c\x90\xb9\x64\x15\xa7\xf0\x9a\x27\x62\x93\x41\x3c\x56\xf0\xc8\x20\x66\xc3\x0c\x32\xd8\xfc\x0c\xee\xe8\x37\xb7\x82\x35\xfa\x08\x2c\xe6\x0b\x1d\x8f\xa5\x2e\x0e\x1c\xce\x2f\x55\x56\xfc\xb0\xcb\xbe\x9c\xe6\xd8\x71\x0c\xda\x34\x6d\x8d\xb5\x97\x12\xc6\x00\x44\xf5\x1f\x78\x85\x4d\x2a\x8b\xa3\xc7\xa2\xf5\x68\xa6\xb6\x4b\x29\xee\xa9\x12\x86\xf0\xa3\x23\xac\x8d\x36\xec\x77\xe5\x7d\x9e\x8d\xb3\xdd\x2b\x44\xf5\xe1\x78\xec\x93\x07\xe5\x94\xdb\x9c\x1d\x04\xbc\x78\x13\x8a\xf3\x87\x1f\x44\x90\xf7\xf6\x86\x91\xac\x70\x47\x13\x31\xfd\xd8\xce\x9b\x43\xba\xcb\x8a\xc3\x17\x16\x63\xa8\xff\xfe\x45\x49\xe6\x35\x0a\x54\xae\x26\x6e\x49\x01\x54\xc3\x87\x97\xf2\x90\x6c\xf2\xe6\xf9\xc2\x19\x0f\xee\x76\x47\x44\xdc\x25\xfa\x6b\x41\x54\x38\x5a\x7c\x08\x1f\xf3\x37\xf9\x24\x3a\xf0\xb3\x9d\x1c\xfa\xd3\x21\xdd\x33\x10\x98\xbe\x78\xe5\x77\xf2\x92\x1b\x48\xf1\xf1\xe5\xea\x20\x45\x6e\xb0\x0c\x0d\x88\xeb\x77\x4c\xfd\x3f\x54\xe5\x6d\x95\xd5\xcc\x58\xd2\x64\xd5\x2e\xdf\x27\x8d\x12\xbd\x41\x4b\xc7\x2e\x1b\x1a\xab\xec\x90\x25\x14\x12\xff\xd5\x37\x42\xca\xf7\xc0\xb9\xd1\x06\xa2\xa8\x76\x01\x55\x67\x7b\xe3\xff\x2e\x6e\xf3\xb2\x75\x83\x6e\xc0\x5b\x9b\x06\x3c\xb4\xdb\xf2\x4d\x59\xdc\xef\xf6\x35\xe4\xe7\xb5\x20\x28\x23\xbc\x6e\xb2\xdd\xa1\x48\x9a\xcc\xf0\x5d\xde\xd1\xd7\x17\x3e\xfa\xde\xf2\xd1\xf7\x5a\xad\x91\x4f\x49\x95\x25\xf5\xc5\x3b\x3e\x6f\x79\x8c\xaf\x77\xd6\x3b\xe1\x84\xc4\x5f\xb4\xc4\xdd\xc3\xae\x58\x76\x49\xed\xf5\x55\xf6\x2e\x51\x7d\x93\x2d\x73\x71\x9e\x8b\x37\x4d\x9a\x84\xb1\x86\x02\x42\xf7\x25\x1e\x6d\xcf\xe8\xcf\x6b\x39\x87\xb2\x6a\xe6\x17\xeb\x49\xef\x9e\x1b\xae\x09\x07\xf3\x76\x78\x36\xb3\xbd\xf4\x78\x00\x6f\x2b\x8b\x8e\xf3\x00\x0b\xb4\x9f\xb5\xcc\x6b\x33\xae\x46\xfc\xb1\x3d\x49\x95\xc3\x4e\xac\xcf\x8d\x0b\xcc\xe8\x41\x19\x97\x1f\x75\x1a\x8f\x30\xe1\x2c\xd4\x64\xef\x62\x1f\x24\x73\x17\xbc\xf8\x73\x7b\x78\x2a\x24\x23\xa3\x24\x63\x35\x8c\x24\xcb\xf6\xa9\x89\x60\xf4\xb5\x44\xae\x6c\x9f\x4e\x13\x4b\xc4\x9c\x5c\x41\x2d\xbd\xea\x08\xb9\xda\xa2\xb3\xe9\x25\x22\x5d\x0e\xf1\x18\x9c\xa2\x1f\x92\xbd\x81\x88\x44\x22\x22\x07\xa3\x97\x51\x2d\xaa\x22\xa2\x85\x64\x53\x1d\x39\x6c\x3f\xad\x69\x96\x4d\x8c\x8b\x3d\x7d\xdd\x86\x89\x7f\x4f\x26\xef\xda\x0c\x4f\xcb\x11\x58\x93\x32\xc0\x54\x77\xa1\x54\xe8\x83\xd0\x05\xa6\x10\x06\xf2\x78\xc8\x0e\x11\xca\x87\x6c\x9f\x8a\x41\x9c\x3b\xf3\xa5\x78\xfb\xeb\x85\x80\x09\xc8\xa4\x3c\x50\x2a\x2d\x14\x0d\x52\xdd\x1e\xc1\xb8\x28\xe8\x13\xcc\xf0\xc1\x44\x30\x69\x71\xa7\xfb\xba\x6e\xfd\x36\x2d\xb5\xa2\x4f\x69\xae\x6c\x0d\x34\x7f\x58\x2b\x4d\xe5\x8d\x05\x96\xd6\xb2\x81\x35\x5b\x13\xae\x4a\x73\x42\x3c\x4a\x0e\x7b\x0f\x79\x9d\xdf\x14\xd9\x5c\x17\x1e\xce\x06\xc6\xcb\xec\x56\x7b\xfd\x7a\x86\x56\xe1\x6c\xca\xc3\xb3\x7d\x73\xdf\x34\xa5\xe6\xd1\x34\x79\x5f\x42\xa9\xbb\x9c\xf5\xcc\xd5\x07\x99\x4e\x2b\x3e\x93\xdd\xd4\xfe\x9d\xec\x94\x6f\xf6\x4e\xfe\x38\x12\x8d\x83\x99\x63\x35\x5b\x41\x32\x63\xed\x97\xb5\xe7\x4c\xc7\x12\x60\x0c\xcc\xf4\x51\xd2\x4a\x02\x18\x6a\xf7\xb3\xc2\x49\xe2\x60\x86\x6a\xab\x00\xb3\x4e\x32\x67\x74\x28\xf3\xa6\x8e\x75\xcc\x0c\xe2\x95\x3b\x4f\x34\xc9\x95\x4e\xdc\x43\x37\x88\xb0\x25\xb3\x64\x35\x6d\x66\x41\x5b\x36\x67\x96\xd2\x6a\x0c\x48\x6b\x8a\x99\x7d\x0f\x8d\x79\x55\x9d\x96\x38\x33\x60\x4e\x6b\x4d\x23\x30\x96\x6a\x4f\x83\xa0\x5a\x72\xe1\x35\x33\x6b\xed\x7d\xaa\x19\xb0\x16\xcd\xb2\x85\x77\xac\x86\x41\x8c\x46\x28\x5c\x32\xe3\xb8\x03\x73\x57\x4e\x4d\x2b\x6a\xba\xd6\x34\x17\x16\x24\x0a\x3d\xc9\xd5\xac\x45\xe8\xad\x87\x3e\x88\xf0\xb4\xab\xf9\x12\x04\xe7\x43\xeb\x23\xb4\x70\xc9\x9a\x87\xd7\x5a\xa0\x3a\x7a\x8a\x52\x60\xfb\x4b\xb4\x02\xae\xa2\xef\x92\x7d\x72\x0b\xe1\x2f\xe7\x1f\x7e\xa9\x20\x96\xd7\xab\xca\xa2\x9f\x3e\x77\x85\x46\x32\xdd\x85\xd5\x40\x4f\x01\xc9\xd8\xcd\x19\x1a\xd3\x74\xb7\x66\x03\x59\x53\x53\x45\x7b\xb1\xc6\x36\x82\xfd\x4a\x58\x47\x00\x90\xfb\xa2\xea\x8f\xee\x6f\x34\x57\x5a\x07\x18\x1d\xc4\x69\x0e\x8d\x4f\x3b\x07\x16\x21\xfb\xad\x39\x79\x1e\x32\xbf\x0b\x7f\xce\x41\xad\xaf\x2f\xb0\xc4\x03\x37\x55\xb2\x4f\xed\x00\xa1\x33\x7e\x88\x5a\x65\x0f\x59\xa2\xdf\x6b\x30\x45\x06\x94\x4a\x0f\xa7\x99\x93\xbf\xff\x23\xdb\xbd\x80\x55\x23\x2f\xa8\x1e\xc7\xd3\xe8\xf4\xd2\xa7\x18\x6a\x8a\x4b\x10\x1a\x04\x6e\x22\x11\xd1\x29\x92\xfb\xa6\x34\x37\xdb\x12\x41\xdd\xb9\x5f\x9a\x60\x89\x50\x9d\xff\xdf\xff\xf3\xff\x5a\x0b\xfe\x7f\xf7\xda\x86\x2d\xb2\x37\x65\x9a\xed\xf2\xaa\x2a\x2b\xcb\xb9\x2e\xd3\xec\x33\xfc\xb6\x19\x9a\xf5\xf9\x68\xff\x7a\xa8\xf6\x89\x09\x8e\xdb\x7d\x42\xf6\x8e\xae\xd5\x5a\xd9\x4e\x59\x9d\x09\x69\x33\xdc\x49\x60\xdb\xd6\x85\x41\x64\x97\xd4\xbf\xda\xf9\x2e\xb9\xcd\x2e\xee\xab\xe2\xfd\x7f\x4a\x93\x26\xb9\x80\xe7\xbf\xd5\x0f\xb7\x1f\x9f\x76\xc5\xe5\xe6\x2e\xa9\xea\xac\xf9\xe1\xff\xfa\x3f\xff\xab\x1d\x9d\xff\x6b\xfd\x70\x6b\x3d\xe4\xd9\xe3\x7f\x2e\x9f\x7e\x78\x87\x2c\x64\x11\xcf\x22\xde\x3b\x6b\x9b\x17\xc5\x0f\xef\x68\x6f\xde\x59\x4f\xbb\x62\x5f\xff\xf0\xee\xae\x69\x0e\x17\x7f\xfb\xdb\xe3\xe3\xa3\xf3\xe8\x3a\x65\x75\xfb\x37\x82\x10\xa2\x80\xdf\x5d\xfd\x2b\x15\x5d\x50\xc9\xae\xee\x8b\xec\x87\x77\xd9\x43\xb6\x2f\xd3\xf4\x9d\xb5\x29\xf2\x83\xfe\x2e\xfd\xe1\xdd\x67\x4c\x2c\xcf\xf1\xaf\x43\xfa\xb7\x45\x9c\xd0\xb5\x42\x27\xc0\x16\xb6\x30\xd9\x60\xfa\xe8\x39\x6e\x6c\x05\x56\xe8\xf8\x16\xc6\xf4\x9f\x3a\x76\x48\x68\xbb\x0e\xc6\x16\xc6\x76\xe8\xf8\x1b\x9b\x16\xb4\x69\x41\x3b\xa0\x2f\x6c\xf6\xfe\x2b\x05\x8e\xc3\x8d\x4d\x9c\x30\xb0\x90\xed\xdb\xc4\x21\x9e\xed\xdb\x7e\xcd\x7e\x58\x3e\xfd\xdf\xa2\x0f\x16\x7d\x60\x3f\xe8\xbb\xaf\x3b\x64\x47\x14\x6e\x40\x2b\xba\x16\x76\x5c\xcf\x76\x2d\xb7\xa6\x3f\x2c\x97\xfd\xb1\xd9\x83\xcd\x7e\xd8\xf4\x87\xfb\x55\x90\xec\x7b\xe2\x22\x84\xde\xfd\xed\xea\x5f\x29\x65\xae\xfe\xd3\xd9\xe5\xdb\xa0\xfc\x01\x07\xa5\x7f\x1b\x49\xce\xf7\xc4\xa3\x09\x2a\x77\x0e\xa4\x5d\x9a\x9c\xfa\x1f\x42\x77\x89\xbc\xff\xed\x6a\x20\x97\x68\xcd\xb7\x5a\x21\x9e\x7b\x0e\xce\x5a\x4f\x70\xd2\x78\xd9\x39\x66\x88\xf8\x25\x93\x78\x76\xa1\x8e\xff\xb7\x32\xcd\xac\xff\x55\x7c\xb6\xde\xbd\xce\xea\x41\x5b\xfd\x3f\x58\x09\x05\xc2\x51\x79\xf9\xda\x4c\x6d\x5c\xd2\x8f\x43\x3b\x65\xd6\xf7\xbe\x4f\x51\x97\x36\x9b\x01\xe4\xda\xc7\x2e\x6b\x12\xb8\xd6\x03\x4a\x07\xcf\x38\x56\x89\xa5\x38\xcd\xb6\xc9\x7d\xd1\xcc\xa9\x32\x1c\x8f\x94\x07\x41\x54\x9e\x67\x65\x10\x54\x82\x34\x2b\x49\xd7\x94\xcc\xa6\x6a\x72\xaa\x9e\x8d\x78\x6e\xf6\xb5\xca\x90\x7a\xad\xea\x65\xfb\x3a\x22\x05\xa6\x96\xf5\x52\xba\x48\x3b\x1b\x45\x6e\xca\x31\x20\x3a\x16\x0e\xf6\x34\x77\x1f\xe7\xe5\x56\xdc\x96\x45\x9a\x55\xad\x08\x51\xd3\x2a\xaa\x1f\x07\x73\x0e\x5f\xaa\x87\x5c\x97\xca\xae\x85\x72\x70\x7b\xdf\xb2\x8d\x84\xed\x11\xb8\x6f\xd9\x3f\xae\x62\x3c\x5a\x5d\x99\x4e\x59\xa7\xfb\x23\x4d\x75\xb9\x27\xd2\x14\x57\x54\xa6\x05\x59\x77\x58\x3e\x5e\x3b\x64\x79\xd2\x6e\x01\xcf\x96\x6a\x4d\x4a\xdf\xd5\x23\x84\xea\xe4\x3c\xab\x2a\xaa\x98\x6e\xe7\x9c\xf0\xc0\x49\x34\x27\xfb\x01\xf1\x96\xe5\xbe\x8d\x1d\x53\xb8\xa6\x38\xe1\xbd\xfe\x58\x69\xda\x01\x4e\x4f\x99\xa9\x55\xb9\x19\xa7\xdd\x8b\x83\x47\x25\x96\x2a\x52\x50\xba\x62\x3b\x21\x29\xb7\xbc\x90\x4e\x1d\xae\x83\x65\xba\x75\xe6\xfc\x9d\xca\xd2\x8e\x9b\xed\x34\x64\x5f\x0d\x21\xe7\x3b\xf2\xb6\xd7\x8c\x89\x96\xf7\x8b\x3d\x2b\x21\x21\xcc\xf3\x25\xf0\xd9\x7c\x99\xd5\x0a\x8e\xd4\x56\xd8\xb3\xdc\x4a\x74\x78\x7a\x35\xa1\xcc\xa2\xe4\x0f\x66\xa9\xba\x54\x97\x19\x43\x5a\x4b\xd9\x8f\x56\xca\x05\xcf\xfc\x32\xfd\x6c\x67\x6a\xd4\x18\xae\xff\xd0\x4b\x3c\x0f\x9b\x11\x23\xca\x5c\x4c\x97\x5b\x08\xe2\xab\x7b\xc5\x0e\x01\x1f\xc8\xfb\x75\xa9\xa5\x6b\xee\x57\x7f\x51\xf3\xf4\x70\x11\x8c\x59\x54\xc4\x4b\x35\x45\xba\x31\x25\xa7\x21\xf5\xcf\xaa\x00\x3f\x62\x45\xa2\x5c\x64\x11\x8f\xfe\x45\x7f\x61\x88\xbc\xc5\xaf\x2f\x8d\xe0\x4f\x07\xc5\xd6\xae\x34\xf1\xfb\x2c\x33\x6b\x6d\x93\x8d\x87\xc8\x6b\x7b\xb3\x61\x66\x35\x71\xdb\xc1\xc0\xcc\xfa\x5c\xd4\xf2\xd0\x32\xd7\x58\x13\x13\x70\xdf\x10\xce\x03\x46\x96\xe2\x1e\x79\x5d\x0a\x6a\x23\x24\x5e\x4a\xcb\x7f\x1b\x9b\x59\x97\xae\x3d\x63\x37\xef\x2f\xe8\x36\x06\x74\x6d\xf5\x49\xca\x2a\xc9\x13\x4e\x90\xe0\xf0\x74\xb6\x8e\x0d\xa6\x45\x64\x2f\x77\x11\xf7\xe6\xd2\x92\x17\x89\xb7\x7a\xf6\x22\xe6\x25\x7b\x93\x35\x8f\x59\xb6\x1f\x20\xbf\x2c\x7e\x58\x70\x73\x63\xb1\x2b\x2d\xf7\xe2\xa5\xb4\x1d\x69\x75\xe0\xba\x49\x9a\x7c\xd3\x13\xec\x26\x80\x8d\x36\x50\x03\xc5\xd2\x7e\x6a\xa8\x21\x36\x6a\xf5\x0e\xce\x4a\xef\xc9\x19\x67\x19\x7f\x80\x63\x34\xde\x9b\x87\x91\x5a\xa7\xdf\x11\xc7\x35\x73\x1c\xc8\x2e\x39\xbd\x88\xe5\xc1\x9c\x27\xfc\x2f\x25\x8f\xdc\xa1\xca\x6c\xb6\x46\xce\xea\xfd\xa1\xca\xac\x4d\x99\x66\x2f\x8f\x65\x95\x32\xf6\xb9\xa9\xb2\xe4\x57\x9b\x3e\x1b\x6b\x28\xce\x0e\x43\x7b\x18\x2a\xf7\xd9\x15\x89\x6c\xb7\x68\x69\xeb\xfa\x09\x7a\x6e\x4c\xff\xea\x82\x10\x8c\x2d\x85\xfa\x5a\xb7\x78\xac\x07\xc5\x03\xf7\xef\x56\x46\xef\x4c\xf7\x81\x1a\x5e\x5a\xb5\x6d\x38\x01\xaf\x77\x55\x07\xa4\xeb\xa8\x7c\x38\xbb\xad\xb2\x0c\x02\x65\xb2\x78\x0d\xba\xd5\xb5\x1f\xcd\x46\x5d\x65\xc6\xd2\xbd\x40\x30\x14\xbd\x01\x6e\xa8\x15\x32\x23\x39\x1c\xb2\xa4\x4a\xf6\x1b\x35\x3a\xbe\xf4\x5b\x68\x2e\x5d\x5e\x14\x1d\x22\x58\x23\x95\x2d\xc3\x40\xab\xe7\xe6\xd7\x17\x92\x22\x79\xb8\x6f\x58\xfe\xbb\x3b\xd8\x9c\xe8\xab\xfd\x42\xb0\xbb\xf2\xeb\x29\xa1\xd5\xa7\x46\x70\x01\x20\x66\x48\x50\xa5\xab\x48\x2f\x0b\x47\x47\xe6\x71\x56\x35\x14\xbe\xa1\x33\xac\x4f\x4e\x98\xed\xce\x2e\xa5\x10\x23\xad\xfa\x11\xb5\xf9\x2c\x8c\xe3\xde\xb7\x42\x73\xde\xa7\x10\x15\x80\xd2\x6d\x2d\x93\xc4\x32\x41\xd7\xe6\x13\x55\x7d\x5a\x90\xf4\xb7\xf9\xae\x96\x8f\xbe\x1f\xc8\x8f\x15\x1d\x9e\x7a\xde\x49\x4c\x9b\x55\xbe\xbc\x3a\xc9\xe1\x60\x3f\xe4\xd9\xa3\xb8\x24\x06\x49\x8e\xa5\x90\x2a\x2f\x8b\x92\xb4\xaf\x5b\xf7\x4f\xb8\xaa\xb7\x83\xe9\xb1\x14\x32\xcb\xe2\xc7\x68\x9d\x85\xbd\xf5\x60\x8c\x25\x23\xe9\x2c\x7e\xcc\x90\xa4\x79\xd9\x53\x02\x65\xba\x8e\x16\x7c\x19\x10\x48\xe6\xe1\x1a\x0c\xc9\xb3\x3c\xa6\x97\x39\x7b\xab\x32\x5d\xcd\x0c\x63\x7a\x7b\xf5\x41\xc6\x40\xfe\x7d\xf5\xc1\xb4\x6d\xb9\xd9\xde\x6c\x37\x03\x5d\x64\xc9\x87\xfb\x04\x9d\x6e\x77\xb0\xaa\x8a\x8e\x41\x7a\x4c\x4d\x13\xcb\x79\x48\x8a\xfb\xcc\x16\x77\xe7\x95\xd4\x6e\xf2\x48\x0f\x16\xd3\x9a\xe5\x09\x9b\x67\x35\xa6\x9c\xa5\x7d\x9c\xd9\xf4\x60\x25\x1d\x11\xba\x9c\x9a\xb1\x60\xc0\x6b\xb5\x15\xfe\x72\x5d\x78\x57\xd5\x6c\x00\xbb\xe3\xd1\xa6\xfb\x86\x0e\x23\x32\xfd\x62\x86\xb0\xce\xc6\x86\xb6\x79\x56\xa4\x75\xd6\x28\x60\xc5\xcb\xfe\x2e\x09\x75\xbb\x24\xa4\xec\x92\x90\xba\x4b\x82\x23\xdb\x65\xe2\x48\x6e\xab\xac\x72\x2a\xed\xee\xca\x2a\xff\x5a\xee\x9b\xa4\x50\xe4\x66\x9a\x57\xec\xd4\xe5\xa2\xca\x1e\xb2\xaa\xce\x3a\xe1\x29\x7d\x2a\x1f\x6d\xf1\x79\xe4\x93\x24\x42\xb5\x50\x51\xea\xda\xb1\x2c\x34\x57\x4b\x40\xc9\x8a\x04\x39\x84\xd6\x52\xa7\x85\x28\x5b\xb7\xfb\x83\xbe\x62\xbc\xe4\x95\x74\x39\x5e\x57\x83\x5e\x62\xc0\xdc\xfd\xf5\x24\xc6\x23\xeb\xc9\xac\x4e\x1a\x39\x75\x21\x59\xa6\x37\xfb\xfd\x89\x6a\xd8\x05\xc5\x28\x1e\xec\x8c\xa2\x57\x4c\xee\xf6\xbf\xc9\xec\xe4\xfa\x99\xfc\xd4\x63\xf1\x53\x0d\x37\x1a\x5a\xaf\xdb\xa8\xa1\x75\x56\x64\x1b\xb5\x27\xda\x37\x11\x0b\xcf\xf5\x65\x25\xb0\x4d\x0b\x2d\x52\x70\x0e\xac\xcb\x7c\xd5\xdf\x65\xfb\xfb\xbc\xc9\x76\x5f\x0c\x1a\x41\xfb\xed\xa5\xa7\x86\xe9\x5b\x38\x4d\x1f\xeb\x7d\xd6\x15\xb3\xfe\x16\xd0\x88\xa3\xac\xfe\x2a\x08\x2a\x7a\xb1\xc2\x7c\xf1\xe1\xe9\xb2\xbb\xdc\xaf\x6a\xbe\x23\x0b\xc8\x58\xb0\xd6\x76\x55\x64\xe1\x09\x84\x4b\xb7\x69\x64\x66\x57\xd7\xb2\x44\x0c\x59\xa3\x5f\x9d\x6d\x91\xd4\x77\xf6\x2e\xab\xeb\xe4\x36\x5b\xb7\x8a\x0e\xf3\x46\x70\x92\x94\xdf\xe2\x82\x83\x85\xfd\xef\x35\x84\xad\x43\xcf\x92\x6c\xd8\xb4\xc3\xe6\xc3\x33\xef\x65\xc4\x8a\x23\x2c\x23\xaf\x92\x2b\xd1\x8b\x94\x76\x16\xfb\xda\xb9\x83\x8b\x50\xb7\x51\x52\xee\x5d\x0b\x43\x2b\x52\xa1\xd9\xf5\xa6\x2a\x0b\xe5\xf2\x19\xdb\xcc\xc9\x6c\x2a\x15\x2f\xf2\x7d\x33\x92\x38\x77\x1b\x6f\xe3\x6d\x62\xb0\x5d\x24\x1e\xfd\xa3\x91\x01\x09\x5d\x9a\x60\xfa\x87\x1d\x3b\x6c\x93\x5d\x5e\x3c\x5f\xec\xca\x7d\x09\x6a\xb7\xe4\x89\x80\x5d\x29\x05\x6f\xc8\x73\x62\xc6\xe0\x3d\xb9\xb3\x6b\xfb\x2e\xa9\xef\x72\x99\x52\x9d\xc9\xc7\xc0\x6b\x08\xc9\xf7\x55\x84\x05\x7b\x9b\x92\x14\x4b\xef\x65\xab\x08\x1c\x5e\x89\x4d\xa8\xe3\xc9\xad\x2a\xbe\x5e\xb7\xf7\x90\xe1\x58\x70\x7b\x18\x45\x24\x46\x06\x0c\x48\x42\xb6\x6e\x20\x37\x31\x08\x92\xed\x4a\x64\x9b\x3b\x3b\x5f\xb0\x9a\xbb\x7c\x6f\x7d\xb7\x8d\xb6\xd1\x16\x0d\xd6\xa6\x88\xef\xef\x77\x37\xd2\x19\x7d\x1a\x25\x51\x34\x40\x37\x1b\x42\x03\x67\xa9\x95\xe6\x0f\x0a\xab\x80\x04\xce\x52\x69\xdc\xe9\xd0\x79\x24\x72\x47\x9b\xe6\xe6\x18\x56\x1d\xd2\x6a\x8e\x14\xbe\x62\x52\x6e\x69\x0d\x63\xb5\xe5\x88\x2e\xc2\x71\x39\x7a\x47\x60\xf6\x07\x20\x61\x3f\x89\x34\x3e\x53\xb0\x06\x2f\x9f\xcd\xce\xde\x94\xbb\x5d\xb6\x6f\x04\xb3\xa5\x69\xe6\x66\xa1\xb1\x64\xdd\x54\xf9\xfe\xf6\x7c\xf8\x93\x4d\xda\x45\x23\x4d\x6f\x12\xd7\x08\x45\xe5\xed\x34\xf5\x32\x3f\x32\x16\x7c\x48\xaa\x3c\xb9\x29\x32\x63\x83\xe2\x63\xd7\x64\x9c\x45\xde\xc6\x37\x42\x4a\xb3\xed\x0c\xc4\xca\x43\x56\x25\x4d\xd9\xa2\x96\xb9\xf4\x8f\xb1\xe8\xaf\xd9\xf3\x63\x59\xa5\x2f\xfa\x09\x5c\xbf\x64\xd2\x94\xbb\x19\x7d\xdd\x65\x4d\x62\xec\x67\x93\xdc\xce\x40\x3d\x69\x9a\x2a\xbf\xb9\x6f\xcc\xb4\xfa\x9f\xf7\x49\x91\x6f\xf3\x8e\xe8\xf1\x76\x93\xf8\x81\x11\xd2\xa1\xa2\x64\x68\x9e\x67\x50\xf5\xe6\x3e\x2f\x9a\x7c\x3f\x3e\x3c\xee\x48\x9b\x32\x63\xb3\xcc\x7d\xcc\x3f\xa1\x65\x62\x65\xe2\x61\x84\x09\x1e\x9e\x78\xbb\xa4\xd9\xdc\xe5\xfb\xdb\x9b\x2a\xd9\xfc\x9a\x35\x2f\x83\x59\xad\x2e\x3b\x33\x81\xbc\x6c\x1a\x7d\x82\xb5\x9e\xe9\x73\x64\x4e\x1d\x79\xe2\x2c\x2b\xdf\xb1\x76\x96\xd0\x3f\xf3\xdb\x53\xa7\x58\xe2\x26\x9b\x9b\xcd\xfc\xda\x3a\x0b\x80\x3d\x65\x6e\xe5\xfe\xbc\x0c\x36\xe1\x4d\x04\x57\x01\xd3\xcc\xce\xd2\x9c\xce\x30\xd5\x3e\x2e\x14\x10\xaa\x0d\xb5\xce\x7f\xba\xaf\x74\x67\x81\x96\x00\x59\x4e\x46\x7b\x6a\x1f\xca\xc7\x76\xd3\x61\x37\x55\x7e\x7b\xdb\x1e\x31\x13\x50\xb2\x64\xa3\xb6\x50\x2d\xb1\xee\x31\xc5\xf1\x30\xad\xfe\x08\x21\x89\x6f\x2e\xe5\xa5\x7d\x28\xb5\x3f\x52\x30\x15\xa6\xaa\xbe\xfa\xd8\x06\xb2\x96\x14\x20\xe1\x98\xe2\x1b\xcf\x8b\x18\x32\xdc\x2d\xe6\xdd\xa5\x1a\x4f\x5d\x6e\xf4\xea\xa0\xbb\xa7\x33\x57\x2c\xaa\x2a\x80\x6b\xe4\xa6\xdc\x6f\xf3\x6a\x07\x33\xc4\xe1\x0f\xf9\xfe\xd6\xa4\x2b\x6e\xb7\xaf\xc6\x6a\xd6\x41\x3d\x12\xe9\x6f\xb4\xfb\x79\x96\xf5\x18\xde\xd2\x3c\x34\xb6\xf1\x22\x0f\xdf\xd1\x56\xfa\x5e\x88\x14\xd8\x45\x18\xc2\xa3\xd0\x9d\x65\x2d\xe2\xa3\x08\x77\xbc\xab\x49\xe2\x0d\x9d\xc0\xa2\x61\x0f\xbc\xb1\x5e\x4b\x99\xc2\x6d\x7e\x7e\xab\x0d\xf9\xd0\xb8\xa8\x54\xc6\xd9\x8e\x6e\xe9\xef\x9b\x3b\x1b\xec\xcc\x07\x16\x22\x2b\xa3\x53\xf9\x8c\x89\x4b\xb8\x98\x4a\x3f\x5e\xdc\x1f\x0e\x59\xb5\x49\xea\x8c\x65\x07\x54\x88\x63\x98\x92\x03\x50\x99\xd0\x34\x32\x93\xee\x66\xc6\x24\x81\x14\xe4\x5e\x02\xca\x67\xb2\x2b\xf9\x69\x81\xb0\xb0\x88\x5a\x0e\x36\xca\xfa\x09\xbe\x9f\xed\x94\x4d\x7c\x5b\x98\x8b\x8e\x9b\xa4\xce\x37\x76\x5a\x95\x87\xb4\x7c\xdc\x0b\xe1\x71\x2e\x15\xe4\xdb\x61\xf9\x48\x5a\x82\x22\x82\xd4\xbd\xb4\x7b\x4c\x76\xbb\x65\x80\x24\x9d\x77\xe2\x48\xf8\x0f\x59\x14\xf4\xb9\x89\x99\x67\xda\x23\x34\x21\xce\x6c\xfc\xfa\x5d\x51\x32\x2e\x81\xe8\x8a\x69\xfe\x60\x6d\xcb\xb2\xc9\x2a\x71\x1f\xb9\x17\xc6\x0f\x13\xb9\x85\x76\xf3\xcd\x02\x30\x1e\x9e\x58\x53\xb6\x7b\x78\x1a\x04\x2d\xf7\xa3\xcb\x63\x0f\xa3\xe3\x11\xee\x0b\x35\x1a\x7a\xaf\x0f\xf9\x4a\xfa\xff\x45\x4f\x94\xf4\xea\x94\x79\xba\xe1\xa2\xde\xfa\x65\x53\x24\x75\xfd\x2f\x3f\xd8\xf0\xf2\x50\x95\x0f\x79\x9a\x55\x5f\xf4\xf3\x7d\xd2\x6d\xb3\xe1\xf7\xb8\x9d\x0d\x29\x56\x55\x64\x32\x1f\xc2\xbe\x5c\x46\x64\x64\x1d\x3a\x57\x0a\x16\xb9\x61\x5a\xce\x05\xa5\xf0\x20\x04\x2c\xb5\xeb\x26\xa1\x5a\x9f\xf4\x00\x64\x3b\x5a\x48\x72\x83\xfd\x43\x56\x81\x4f\xd9\x80\xb9\x9e\xfb\x1b\x1a\xac\xf5\x2c\xc6\x8f\x6e\xa8\x67\x6f\x15\xdc\x85\x91\xcb\xec\xe5\xdd\x5a\x6e\x94\x3a\x03\x97\x33\x7a\xe6\x13\x27\xca\x76\x97\xaa\xa3\xfb\xf0\xc9\x9d\x4c\xc2\x0f\x42\xe4\x84\x92\xc8\x11\x33\x5b\x46\x9e\x1d\x43\x2a\x05\x64\x69\x33\xd5\x4f\x95\x15\x60\xa2\x19\xea\x28\xe1\x8b\xa0\x4f\x7d\x19\xa7\xe2\x7f\x5f\x1c\xcf\x01\x47\x1f\x66\x2b\x58\xfb\xd9\xee\x52\x4e\x86\xe6\x04\xd9\xee\xd2\x24\x03\x2f\x4d\x87\x99\x7a\xef\xae\x8a\xfc\xea\xc3\xb9\xe1\x25\x8c\xc7\xd5\xa9\x63\x06\x9d\x40\x7d\xd0\x67\xa8\x14\x08\xb5\x4b\xed\x42\xa5\x26\x02\x2f\x8e\xfe\xb2\x3b\xcd\x4c\x86\xe3\x7f\x43\x1d\x43\x5a\x51\x02\x83\x31\xb0\x0c\xb8\xad\xf6\x4c\x17\x03\x93\x1c\xec\x8f\x42\x67\x10\x1f\x1f\x21\xdd\x3e\xde\xae\x3b\xaa\xa3\x37\xe5\x1d\x3d\x09\xaa\x32\x09\x73\xb6\x0e\x7c\xf8\xc1\x2e\xf2\xfd\xaf\x5f\xae\x4c\x01\x7f\xbb\x3b\x3c\xea\xa5\xa0\x54\x1e\x09\xcd\xb3\x5a\x6c\x08\x26\x2b\xc2\x88\xb6\xae\xfd\x33\x0a\xd3\xff\xe7\x15\x64\x12\xc6\xac\x90\x2f\x41\x4b\xd9\x4b\x73\x35\x63\x68\x13\xd1\x3a\xef\x18\xed\xdd\x42\x5a\xc1\xd2\xce\x74\xfa\xee\x24\x54\xf1\x56\xa2\xba\xad\x11\x49\xe9\x2a\x48\x5f\x9b\x9c\x4f\x16\x33\x05\xaf\xc4\x65\x2e\x70\x0a\xb1\xb3\x87\x6c\xdf\xd4\x9a\x73\xab\xe2\x88\x14\xcd\x60\x8d\xae\x51\x50\x6a\xc7\x5a\x56\xb3\x5c\x75\xdb\xae\x01\x3c\x19\x93\x93\x01\x1c\x58\x94\x42\x76\xfb\x86\xf6\xe4\xcc\x6a\xd2\x17\xe5\xc8\xa0\x37\x6d\x45\xcb\x00\xce\xde\x64\x45\x31\x1b\xb2\x9e\x81\x65\x01\x87\x72\x89\x80\x17\xf4\xe3\x4a\xf5\xe8\xd0\x9c\x92\xa7\x67\xab\x7e\x51\x50\x52\x9b\x67\x61\xbe\x20\x07\xe1\xa5\xf1\x8a\x18\xf8\xfb\xfa\x87\x27\xcb\x0e\xb5\x9b\x5f\x28\x3a\x3b\x47\x16\xc6\xdc\x29\xcf\xa2\x62\x54\xbd\x1a\xa6\xdd\x21\x3b\x0e\x94\xe6\x9f\x8f\x8c\xc7\xad\x4c\x99\x87\xb9\xca\x06\xcb\x36\xce\xdb\x8f\x6c\xde\x2a\x6e\x77\x3e\x93\x04\xca\x84\x82\x7d\xa9\xac\xf0\xcf\x14\x47\xda\xb5\x1e\x5d\xf4\x6c\x8a\x2c\xa9\x2e\x6e\xca\xe6\x6e\x1e\xf7\xc1\x26\xc1\x30\xd5\xe5\xcb\x53\x41\x8b\x5c\x5a\xee\xec\x2a\xdb\x3c\x6f\x0a\x65\xa7\xae\xc9\x1e\xa5\x94\xd5\xac\xcb\xfc\x3c\x00\xeb\xea\xc3\x84\xf7\x02\x52\xbc\x17\xf8\x93\x66\x16\x7b\xd5\x43\x4e\xf0\x93\x41\xfb\x21\xaf\x9a\xfb\xa4\xb8\xba\x17\xb2\x51\x6b\xfe\xa6\x4c\x9f\x47\x8f\x0f\x87\x6b\x41\xb4\xbc\x58\xf1\xcc\xec\xcd\x37\xb5\x5e\x9a\xbe\xcc\x4b\xa9\x66\xae\x7c\xf5\xa1\xe7\xc4\x6f\x2a\xb8\x49\x0e\x94\x02\xff\xe8\xb0\xf4\x43\xc5\xd3\xa7\xbd\x7e\xd8\xbf\xcd\xa8\x5c\x3a\x9d\x59\xee\x1f\x62\x73\xd0\x4d\x99\xbf\x59\xe4\x6c\xb8\x19\x77\x66\x33\xee\x74\x33\xee\x48\x33\xde\xcc\x66\xbc\xe9\x66\xbc\x91\x66\xfc\x99\xcd\xf8\xd3\xcd\xf8\x67\xe6\xab\xdd\x73\xc6\x69\x59\x1d\x43\xf3\xb6\x15\x48\xea\xc9\x04\x34\xd3\x10\x2e\xab\xa3\x62\xe0\x03\x02\xee\x7c\x04\x4c\x83\xbb\xac\x8e\x8a\x80\xeb\xea\x0a\xda\x04\x30\xd3\xb0\x2f\xab\xa3\x22\x40\x7c\x8a\x00\xf6\x29\x02\xc3\x1e\x4b\x10\x84\x20\xcf\xea\x77\x5f\xb8\xc3\x0f\xbb\x76\xfc\xc5\x92\xd8\xae\x6c\xde\xcb\xce\x64\xb3\x80\xad\xa9\x4e\xdb\x3f\x0d\x22\x02\x52\x77\x39\xda\xe9\xd2\x01\x98\x60\x09\xbb\x0f\x19\x4f\xbc\x6c\xec\xa0\x14\xe8\x79\x7d\xdf\x16\x01\x19\xee\x96\x14\x38\xda\xb0\x5b\xf0\x28\x37\xca\xd6\x93\xf1\x35\x4e\x68\xc1\x3e\x32\xaa\x3b\xbd\xea\xd3\x31\x97\x8d\x61\x9c\x4c\x77\xd6\x06\xe2\x3d\xb5\x0a\x2e\x39\xb3\x98\xda\xb2\xcd\xb2\x94\xee\xbb\xc0\xc9\x08\xd6\x30\x58\xcd\x61\x29\x85\xeb\x53\x33\x20\x1d\x3a\x2f\x67\x15\x02\xa8\x6f\x3d\xef\x17\xbe\x58\xca\x97\x90\xbb\x5e\xf3\xb7\xe8\x55\x73\xd4\xe3\x76\x2c\x39\x75\xad\xb1\xc4\xd5\x87\xce\x34\x67\xa9\xb7\x34\xa4\xba\xb2\xd3\xdd\x80\x41\x69\xd0\x2f\xaf\xff\x7d\xd4\xc8\x24\x5f\x13\x69\x5d\x52\x75\x2b\x9c\xb1\x27\x26\x1b\x01\xbb\xb2\xab\x96\x36\x5b\x2a\x64\xfb\x87\x56\x81\x7b\xad\x8b\xc4\x85\x5a\x7d\xed\xa6\xaf\xb9\xae\xf0\x78\x37\xd7\x15\x39\xed\xcc\x75\xdb\xfc\x66\xe6\xca\xe2\xd6\xaf\xb9\x32\x4b\x82\x65\xae\x29\xae\x50\xc0\xcd\x0f\x16\x9b\xb2\x47\xd9\x5c\x1c\x96\x68\xc7\x49\x9b\xe4\x90\x37\x49\x91\x7f\xcd\x26\xea\x3b\xc9\x63\x3d\x00\xa3\x3d\x92\x7a\x75\xb8\x4b\x9b\x0d\x59\x85\xac\xb4\xe9\xc5\x1b\xd1\x0a\xa8\x86\x10\x21\x4c\xa5\x4b\x4a\xea\xbd\x3c\xe5\x8c\x57\x93\x15\xda\x06\x51\xbd\xe2\xd2\x7e\x16\x6c\xdf\x61\x5f\x95\x4d\xd2\x64\xef\x6d\xcf\x4f\xb3\xdb\xb3\xcb\xc1\x0f\x03\xc7\x3d\x70\x8d\x0a\x26\x3d\x8b\x7d\x21\xf7\xef\xbc\x4f\x8f\x3f\xb8\xf9\xdf\x34\x3c\xce\x2e\xdb\xdf\xb3\x37\xa0\xc4\xab\xdb\x1e\x11\x0a\xa8\x57\x55\xb1\x57\x8c\xf8\x91\x62\xc5\xfa\x8c\x51\xef\x10\xda\x66\x93\x59\x81\xcf\x63\x1c\x4b\xad\xf0\x33\x76\x53\x07\xe4\xcb\xa4\xaf\xce\xae\xac\x32\x5b\xf6\xb9\x1d\xf7\xc0\x55\xa2\x16\x0d\x44\x3a\x5a\x00\x61\xc8\xda\x36\x07\xc4\x8b\xe4\xb3\xb9\xb2\x1f\x57\x1f\x8e\xef\x49\x0b\xe3\x98\xbe\x98\xae\x6a\xc9\x69\xbf\xfa\x76\x1e\x7e\xee\x23\x39\xe6\xc2\xef\xce\xfc\x8c\xd6\xd2\xa4\x0d\x7a\x72\x34\x65\x54\x48\x47\xd1\xa7\xd5\x2d\x7a\xf6\x65\x1e\x3a\xe3\xe8\x1b\x9d\xe2\xda\x66\xef\x86\xe7\x6a\x3a\x32\x57\xb1\x53\xd0\x51\x81\x74\x1c\x1d\x19\xa8\xc1\x98\x2d\xab\x3b\x0b\xde\xbd\xe7\x6b\x6b\xf3\x18\xe6\x70\x71\x12\x62\x29\x5d\x4d\xef\xe2\x96\xf5\x9b\xe1\x77\x02\x40\x0c\xd5\x53\x0c\x85\x8c\xd2\x71\x90\x06\xe2\xb7\xb7\x57\x1d\xd3\x6c\x9b\xef\x61\x1e\xd8\xd0\xdc\x55\x5a\x2c\xcd\xca\x87\x21\x70\xc4\x58\x4e\x36\xad\xc0\x6d\x72\xb8\x70\xbc\x6c\x67\xb1\xcb\x01\x3a\x0a\x6a\x30\x88\xee\xe0\xee\x55\x62\x02\x83\xdd\x7b\x30\x5a\x81\xd1\xee\x1d\x70\x6f\xfe\x5e\xc0\x33\xe4\x9f\x9d\xc3\xc6\xc0\xf2\xe8\x67\x6f\xc2\xe8\x7d\x04\x1c\xf5\x54\xdf\x98\x70\x94\x6a\x04\xfd\x6b\xe4\xdc\x17\x4b\xfa\x60\x50\x96\x4c\x5f\x3b\xb5\xc9\xf0\x95\x7e\x51\x62\xf9\xb3\x33\x8d\x3e\xd1\x6d\x35\x77\xaa\xa1\xa0\x7a\x25\xcb\xc0\x7c\x68\xeb\x83\x47\x66\x5b\x63\x20\x5a\x8e\xdf\x39\x3f\x20\x84\x0c\x49\x89\xc4\xbd\xb3\xda\x52\x9a\x97\x76\xe9\x8a\xe7\x9e\x17\x9a\xf7\xd9\xcb\xe1\xb6\xaa\xf8\x90\xb6\xeb\x29\x4b\x2e\xae\xb2\xdd\xeb\x20\x85\xe4\x23\x88\xcb\x89\xd9\x77\xec\x31\x7e\xbb\x19\x55\xcf\xf6\xc7\xa9\x07\x9b\x70\x30\xdb\x70\xd7\x9e\xa2\x4c\x52\xd8\xde\x95\xe9\xf3\x55\xfd\x70\xab\xb9\xc3\x0e\xaf\xad\x4a\x5c\xaf\x40\x9c\xbe\xf6\xc3\x27\x78\xbc\xbd\x7e\x0b\x5a\x22\x49\x70\x22\xd8\xe4\xd5\xa6\xe8\x02\x09\x27\xfb\x9c\x79\x10\x5e\xb0\xef\xdd\x0b\x0b\x3b\x7e\x6d\xe5\x7b\x90\x38\x99\x95\x25\x75\x66\xe7\x7b\xbb\xbc\x6f\x2e\x57\x55\xea\xed\x92\xe8\xb6\xe3\x36\xdf\xb7\x79\x45\x07\x3f\x6c\xf3\xa2\xb8\xf8\x2e\xdb\x6e\xbc\x34\xd2\xbb\x73\xdb\x37\x05\x0f\x76\xd1\x4e\x33\x4a\x15\x87\xd4\x97\x86\x77\x93\x90\xdd\x69\xc8\xae\x01\xb2\x3b\x0d\xd9\x9b\x86\xec\x19\x20\x7b\xd3\x90\xfd\x69\xc8\xbe\x01\xb2\x5f\xbf\xfe\x9b\xa8\xf0\x6b\xf6\xbc\xad\x92\x5d\x56\x5b\xfa\x60\xbf\xa0\xef\xcf\x31\x42\xdf\xbf\xf4\x37\xc0\xf5\x26\x29\x32\xf7\xbf\xbc\xc7\xe7\xf8\x1c\xcb\x1b\x60\xf5\xc3\xab\xeb\x8e\xd5\xa6\xe2\xdf\x58\x9b\x7d\x78\x7d\xfd\xb7\x3f\x32\x72\xea\xd8\x1c\xbf\x4b\x5f\x27\xc3\x4e\x71\xa1\x52\x89\x40\xd3\x93\x57\x92\xfb\x2a\xf3\x0b\x1d\x08\xa6\xec\x94\xf7\x4d\x91\x35\xcc\x9c\x0c\xbe\x3c\x3f\x70\xd9\xf8\xe5\xdc\x20\x2f\x9d\x87\x3c\x7b\xe4\xc4\x93\xec\xd0\xac\x62\x9e\x16\xd9\x17\xa5\x88\x2a\xf4\x98\x69\xfb\x26\xd9\xef\xb3\xea\xcb\xef\x45\x7a\x4e\x36\x8f\x2e\x08\x0a\x42\xfd\xb0\xca\xef\x0c\x74\xed\x5c\x7d\x85\x13\x70\x4b\xe9\x87\x47\x19\x78\xdf\xcd\x91\xe5\x10\xa8\x1f\x93\x66\x73\xd7\xa5\x12\x38\xa7\x9a\xc1\x99\x8a\xca\x55\xa2\xad\x47\x7d\x87\x7e\xf9\x6e\x25\x52\xf6\xc6\x0a\x24\x29\x67\xbb\x88\xb0\xa6\xa8\xdd\xd6\xe8\x35\xe4\xab\x0f\xe7\x13\xd0\x98\xb5\xdc\xc9\x6b\x7e\x7b\xe8\x2a\x59\x5c\x63\x51\x4b\x57\xea\xa6\x41\xf6\x64\x9b\x09\x60\x26\x82\x57\x89\xd8\x9a\xce\x2d\xbe\x2f\x9b\xf7\xf5\x21\xd9\x9f\xf1\xdd\xcf\xf2\x7a\x6c\xff\x35\xaf\x1e\x33\x35\x2d\x28\xbb\x12\x3f\xbd\xee\x12\x1c\xc1\x4b\x6b\x7e\xd1\x95\x18\x6a\x55\x87\x10\x54\xa2\x0c\x1e\x3b\x07\x64\x60\xb3\xa6\xc0\x68\x85\x25\xed\x2c\x9b\x00\x86\xfa\xf3\xb0\x1b\x63\x7f\x63\xe9\xe9\xb1\x9b\xa8\x36\x67\xdc\x26\x78\x7f\xa8\xe8\x3a\xe4\xe6\x72\xbe\xa1\xea\x00\xe3\x0f\x94\x5c\x87\x9e\x89\xed\xe5\xeb\x82\xc7\x8a\xd3\xf9\x82\x72\x76\x49\x06\x7e\x6e\x69\xb8\x62\x3d\x93\x5b\x17\x76\xc3\xc4\x8a\x73\x0b\x0e\x77\x62\x60\x90\xae\x12\x3e\x2c\x22\x2f\x84\xba\xd4\x1b\xb2\x01\xa9\xa0\xa1\xc1\x5f\xb6\x65\xf5\xc3\x2e\xc9\xf7\xf6\x3e\x79\xe0\x17\x75\xbe\xb0\xe3\x39\xaa\x8f\xec\x9b\x0b\x3b\x46\x08\xe9\x3a\xcd\x48\xe5\x91\x18\xed\xdb\xed\x56\xde\xfa\x3b\x24\xdb\xcd\x06\x3b\x10\xea\xd0\x70\xef\x2e\xf2\x20\xd0\xcf\xec\xce\x6a\x07\x8c\x06\x2a\xaa\x82\xbb\xdf\x31\xd9\x7e\xe5\x9d\xbd\x2e\xd3\x94\x66\x4a\x69\x73\xa5\xd6\x8a\xd3\x46\x96\x97\x54\xf0\x3f\x98\xe2\xb3\x44\xb3\x98\x2f\xe8\x7e\xa3\x65\x6b\xc1\xd2\xc0\x2e\x46\x2a\xd6\x56\x08\x5b\xae\xda\x31\x35\xbb\x50\x77\x39\xb2\x1f\x64\x98\x7b\x52\x9e\x9a\x72\x50\xd2\xe8\xf2\xb3\x2f\xd3\xac\x76\xea\xbb\xf2\xd1\x11\xa9\x4d\x24\xbf\x23\x3d\x15\xca\x14\xb7\x03\xe9\x3e\xa6\xf9\xc3\x14\x87\xb7\x05\x5f\xc4\x66\xc8\x43\x48\xec\x86\xaa\xce\x2d\x1e\x5c\x6c\xa2\x25\xac\x6e\x9c\x3c\xca\xc5\xc9\x35\xb3\x4f\xbd\x79\x29\x32\x4e\xf7\xc3\xa8\x45\x2c\xfe\xf2\xf4\xf8\x4d\x8f\x9b\x5a\x62\xf5\x75\xc0\xd7\x3e\x98\x93\x5e\x0f\x1b\xf1\x82\xb6\xd9\xd6\xf7\x21\xbb\xc0\xcc\x85\xe0\xb6\x2a\x1f\x2f\xf0\xb7\xe0\x22\x29\x9e\x5f\x10\x2c\x58\xc1\xc6\x16\xcd\x59\xac\xb5\x82\x99\x34\x41\xee\x9b\x63\xd8\x19\x97\xb6\x37\xc1\xfe\x5b\x0a\x76\xc5\xd5\xc4\x97\x22\x20\x88\x3b\xbf\xbe\x7a\xc3\x0f\xc6\xf3\xb7\x62\xa2\x53\xf9\x06\x7d\xfb\x58\x9e\xdf\x62\xbe\x0b\xb7\x48\xc4\xfd\xa9\xdc\x91\x35\x42\x55\xec\xfe\xa1\xf9\xf8\x88\xa8\x0e\x97\x9d\x47\xa4\xeb\x8b\x10\x70\xd3\x0a\xa2\xc1\x72\x07\x06\x53\xe9\x76\xbf\x6e\x4e\x1b\x91\x46\xc3\xb6\x42\x82\x50\x8b\x69\xdb\x66\xe7\xcd\xd1\x37\x45\xce\x51\xdb\x87\x8f\xa8\xda\xdb\x6c\xca\x61\x95\x13\xe8\x5a\x7c\x6f\x3d\xa9\xf3\xaf\x94\x88\xad\x13\xeb\xd3\xa5\xf9\x6d\xeb\x12\x36\x70\xa1\xaf\x0d\x2a\x89\x38\x11\xbb\xcb\x4e\xe8\x7b\x4e\x01\x64\x8c\xa0\x0e\x59\x0d\x90\x85\xd4\x73\x29\x7e\xb6\x9e\xef\xe8\xfc\xdd\xde\xef\xb9\x27\xdb\xfd\x4d\xbe\xb1\x6f\xb2\xaf\x79\x56\xbd\x77\xf0\x39\xfd\x8f\xf8\xe7\x4e\xcc\xcd\xff\x8b\x6b\x19\xda\x4c\xef\x79\xe8\x22\x87\xd4\x97\x43\xef\x0d\xf5\x44\xfc\x9e\x0b\xe8\xac\xc5\xa2\xa6\x4c\x7c\xef\x0f\x8e\x25\xdd\x65\xec\x67\x5f\x35\x1c\x81\x9b\x02\x79\x88\x2d\x47\x28\xc9\x40\x10\x8a\x2e\x5d\xbb\xe6\xb2\xdd\x1f\xcd\x3a\xfb\x4f\xb5\x96\xc9\xc7\x07\xcd\xf3\xa1\xe4\x87\x07\xc8\x37\x1e\x1e\x98\x96\xad\x3d\xe8\x7d\xb5\x25\x79\x78\xb2\xdb\x97\x43\xb9\x9f\x14\xaf\x03\xb7\xaf\x95\xcd\x6f\x43\xf7\x61\xe6\xb1\x4c\x65\xfb\x82\x39\x1d\x8a\x49\x89\x32\x23\x3d\xff\x60\xa5\x8f\xb7\x7c\xef\x3d\xe8\x2d\x1b\x86\x65\x2c\x57\x3c\x1f\x96\xa8\xa0\x7d\x43\x31\x0b\x00\xf0\xc8\x04\x61\x88\xd0\xeb\xea\x5d\xc9\x9f\xfc\x54\x67\xa6\xb5\xf9\xcf\x6c\xb7\x4f\x06\xfd\x13\x0d\xec\x1b\xb5\xec\xdb\x85\x22\xbe\x12\x99\xcb\x9b\xbc\x29\xb2\xc1\xb4\x1a\xbf\xd3\xb1\xaa\x21\xef\xc3\xb0\x27\xb8\xa7\x6b\xe3\x60\x62\xec\x7a\xca\x62\x1b\x55\x3b\x16\xb5\xa9\x0b\xa1\x7c\x26\x05\xef\x56\x0a\xdf\x11\x8d\x1e\xa4\xcb\xc1\xa3\x42\xe5\xf5\xfb\x35\x98\x5b\x8e\x4e\xec\x3b\x7c\x95\xb5\xc1\x23\x45\x26\x3c\xbd\x50\x9a\xb6\x36\x5e\xe6\xe6\xa5\x34\x09\x37\xa4\x8b\xab\x34\xd5\x6f\x71\x1c\xd3\xdd\xf3\x09\xb6\x50\xb2\xaa\x0c\xf1\xd0\x3f\xf6\xc9\x83\x12\x3c\xca\x14\x6a\x5b\x16\x90\xcc\xaf\xbe\x07\x4c\xc4\x91\xd0\xc3\xde\x9f\x8a\x17\xbb\x54\xcc\x12\x2b\xca\x69\x98\x19\x27\xc2\x47\xf6\x5a\xc2\x39\x1e\x43\x79\x2a\xc7\x83\x9a\x4d\x42\xb0\x9a\x81\x79\x8d\xe1\x80\x16\x0c\x70\x0f\xa6\xdb\x83\xa9\x4e\x11\xad\x23\xd2\xf6\x4a\xbf\xb0\x21\x6f\xad\xa8\x6a\xd7\x94\x65\x71\x93\x54\xed\xbe\x45\x92\x47\xed\x8c\x45\x90\xc1\xd1\xa8\x56\x0a\x4b\x8d\x14\xcf\x2b\xe8\x9b\x4d\x55\x17\xcb\xef\xd4\x36\xd5\x55\x73\x30\x3f\x8e\x11\x5b\x35\x6d\xed\xa0\xd6\x30\xc9\xa4\x82\x35\x4c\x79\xd8\x02\x33\x88\x3b\xfc\x62\xa2\x88\x7e\x1b\xf4\x5f\xc0\x36\xcb\x93\x76\xd7\x4e\xbe\xaf\x9b\x64\xbf\xc9\xc0\x4e\xfb\xee\x8b\x0c\x85\x55\xd7\x88\xf3\x51\x8b\xff\xa1\x7d\x36\x84\xea\x58\x64\x51\x7c\xfd\x8e\xca\xe6\x43\x56\x5d\xb1\xe0\x71\x57\x89\xea\xc9\xd9\xf3\x2d\x1d\x2d\x3f\x63\x37\xaa\xec\x41\xc3\x6c\xc7\x63\x60\x0c\xc4\xd5\xe4\x01\x2c\x65\xed\xd0\xcb\x76\x3a\x12\xc6\x4b\xa4\x03\x29\x46\x47\x23\x1f\x1e\x17\x99\x6b\x85\xd3\xd6\xc8\xed\xa8\x1e\xa5\x3f\x68\x51\x3d\x55\xb6\x91\xa7\x0d\x9f\x88\x41\x10\x51\xc6\xd5\x89\xa5\xec\xfa\x88\xc1\x14\xa6\x66\xe2\x68\xa7\xa1\x47\xf0\x18\xb8\x2e\x94\xa8\xba\xd3\x04\x70\xfd\xbe\xb4\x5b\x7c\x6c\x9e\x75\x3c\x0c\xa7\x5e\xd1\xe8\x67\xec\x6b\x77\x59\xc0\x0f\xbf\x57\x13\x44\xbb\x54\xfd\x4c\xcf\x79\x6d\xce\xb9\xed\xec\xcb\x26\xdf\x64\x4e\x52\x14\xe5\xe3\xf9\x44\xa1\x34\xdb\x3f\x4f\x95\x39\x64\xd5\x2e\xaf\x6b\x48\xc6\x2d\xde\x41\x24\xca\xf6\xe9\x2e\xbf\xbd\x2b\x28\xf1\xda\x37\xf9\x7e\x5b\xb6\x0f\x70\xa9\xfc\xd9\xde\x25\xfb\xe4\x36\xdb\x65\xfb\xae\x58\x7d\xbf\xd9\x64\x75\x07\x96\xdf\x5a\xed\x27\x0c\xee\x65\x18\x18\x77\x4b\xef\x13\x42\x84\xb1\xfc\x30\x87\x22\xb3\x0b\x4b\xa4\x91\xea\xc8\x34\xea\xbf\x6e\x89\xd5\xff\x44\xa9\xd6\x7f\xdb\x23\x5f\xbf\x08\xa7\x63\xff\x83\xb8\x06\x2c\x3e\xf4\x76\x6c\xf3\x98\x48\x6d\xc6\x74\x45\x69\xb3\x0d\x33\x5d\x84\x89\x1b\xca\xcb\xd9\x8b\x12\x42\x4f\x49\xb6\x4d\x3d\x63\x0e\x11\x11\x7c\x71\x90\x17\x7b\xf4\x1b\x36\x1b\x98\x03\x07\xce\xe7\x01\xbe\xd2\x6a\x23\x2a\xde\x0a\x79\xe8\x13\x3f\x0c\xf0\xeb\x00\xd3\x0b\x8c\xd2\x2c\xbb\x49\xcc\xf2\xff\x26\x4b\xf5\xda\xbd\x46\x42\xe2\x27\x08\x4f\x21\xcf\xe6\xbf\xcc\xb0\xc6\x24\x1f\xd9\x26\xcb\x34\xe2\x88\x5b\xe0\x33\xf8\xa7\x8b\xe5\xa7\xf2\xd1\xd0\x8d\xf6\xd9\xf4\xee\x01\xa6\xe4\x36\x1b\x6c\xfa\xfc\xd1\xab\xdc\xe3\x93\xfe\xad\x79\x16\xa3\x5f\xa5\xfc\xd0\xdd\xfa\x69\xc2\xf7\x30\x80\x01\x18\xba\x6e\x3f\x47\xc8\x31\x26\x98\x25\xe2\xe6\x15\xed\x33\xb7\x26\xde\xb4\x97\x9d\x70\xd3\x3e\x48\x13\x61\x44\xb0\x69\x05\x84\x58\xd3\x5e\xab\x2c\xaf\xdf\x59\x62\x57\x7d\xe6\x53\xeb\x6a\xde\x92\x30\xb7\x70\x9f\x62\x57\xfa\x92\xd0\x7b\xad\x53\xed\xca\x28\x40\xae\xc6\x96\x84\x5e\x11\x95\x76\x57\xfd\x25\x41\x7c\xe8\xa7\xb9\x9e\x43\xbb\xc3\x2c\xa2\x4d\x96\x92\xa9\x75\xd0\xc8\x74\x30\xd0\xe7\xa0\x12\xe6\x30\x42\x91\x43\x8f\x14\x87\x1e\x0d\xf4\x00\xe7\x8e\x5b\x51\x0d\xbf\x97\xf7\xe7\x2f\xab\x68\xf5\xf5\x79\xa1\xa3\x3a\x51\x25\xc5\xdb\x05\x35\x15\x42\xed\xc0\x7b\xeb\xa3\x85\x1d\xaf\xca\x76\x67\x6d\x30\xf5\x6c\x67\xcd\x63\x9d\x4e\xea\x2d\x91\x90\xeb\xd7\x04\x45\xa8\xf6\x29\x39\xba\x86\x4c\xaf\x0d\x43\x6b\x9a\x4e\xe9\x89\x9d\x26\xa3\x36\x50\xd9\x09\x2a\x25\x58\x2d\x93\x67\x1c\xda\xa6\xea\xf6\xac\x62\x3f\xb7\x4b\xea\x5f\xed\x7c\x97\xdc\x66\x22\xd0\xbf\xfa\x3c\x1a\x3a\xdd\xd9\x95\x69\x52\xd8\x2c\x5e\x93\x2e\x59\x87\x94\x0f\x4d\x15\x60\xeb\xe2\xa5\xa6\x78\x8c\x00\x16\xd1\xa9\x6e\xb2\xe2\xec\x45\xed\xe9\xa5\xac\xa0\x06\x08\x8d\xc2\x31\x2f\xd0\x86\x58\xc3\xdc\x69\x4a\xbd\x87\xe2\xb2\x00\x02\x1d\x74\x1b\x1e\x86\xc2\xe5\xf6\xb3\x21\xc5\x67\xc6\xfa\x22\xa4\xa4\x39\xde\x67\x70\x78\x82\x4b\xcb\x10\x2c\x44\xbd\xb1\x1c\x40\x94\x4e\xfa\x11\xfe\xea\xdd\x59\x26\x7a\xc0\xcf\x23\x61\x99\xb3\xc8\x2b\x3d\xba\x29\xd3\xe7\xf3\x91\x4e\xf2\xcd\xea\x68\x11\xc1\x4c\x46\xdd\xba\xd7\x9a\x28\x57\x37\xcf\x45\x76\xa1\x58\x46\xe8\x88\x1a\x52\xec\xd1\xc1\xec\x5e\x8f\x0d\xc9\x72\x6c\x3b\xb0\x70\x99\xac\xbd\x5a\x0f\x41\x01\xa0\xe2\x8b\x1e\x57\x13\x3c\x35\x7e\xd9\x27\xbb\xec\x07\x28\xf0\xe5\xbc\xf7\x46\xb7\x91\xf5\x0a\x0c\x06\xb4\x35\x60\xde\x7a\x31\xfa\x08\x75\xf6\x99\x6d\xfe\x94\xa5\x8a\x27\x88\x21\x39\x0c\x8b\xd2\x35\x38\x05\xcc\xa2\x0a\xf5\x2e\x8e\x4d\xc3\x3b\x49\x3e\x81\x3f\xc4\x55\xc5\x31\xf6\x62\xae\xab\x6d\x08\x34\x1f\xa9\x99\xe6\xc7\x2a\x02\xe7\xef\x92\x27\xbb\x6b\x6a\x9c\x95\x1d\xc1\x76\x74\x15\x57\x1d\x5a\x66\x62\x2b\xe5\x95\x8c\xfc\xf1\xec\xaa\x78\x74\x52\x7d\xd0\x4c\x6a\x7e\xdf\xa4\xe6\x4f\xcc\x4b\xd9\xee\x6f\x3f\x8b\xe8\xbb\x2d\x35\x22\xf4\x70\xd7\x2a\x26\x04\xd2\xb6\x0c\x09\xef\xe5\x33\x7d\xd2\xbc\x38\x31\x12\x2d\x9c\x7e\x58\x83\xc9\x4a\x16\x73\x56\xa1\x5f\xfe\xfb\xa6\x28\xeb\xde\x35\x01\x43\x66\x4d\x11\x3e\x6c\xc2\x86\x21\xd9\xce\xe4\xd4\x47\x86\x2b\x17\xe2\x48\xc4\x93\x8e\x44\x3c\xcd\xfb\x6a\x80\xdc\x9c\xe3\x25\x1b\x2e\xf6\x62\x16\x03\x6b\x57\xde\x56\xc9\xe1\xee\xd9\x86\x7f\x2c\x47\x4a\xc9\xc6\xae\xde\x8b\x08\x28\xfd\xa2\xc9\x53\x5e\xb3\x42\xa0\xbf\xd4\x4d\x55\xfe\x9a\x89\x25\x83\x3f\xda\x69\x52\xdf\x25\x55\x95\x3c\x5f\x78\x96\x67\x6c\x10\xe8\x30\x08\xc7\x54\x05\x88\xfe\x22\xca\x09\x5b\x3e\x60\x1b\x67\x04\xfb\xb1\xa9\x12\xdd\x2d\xd4\x16\xfd\xbb\xad\x39\xa7\x30\xbf\xf1\x64\xee\x1c\x1f\x11\x33\x25\x9b\x7c\xf3\xab\xda\xde\x70\x8f\xa0\x2c\x1d\x73\x49\xcd\x72\xa2\xd0\xa7\x9a\x16\xf3\x1e\xdd\x6f\xee\xca\x8a\x9f\x46\x2a\x71\x9b\x5e\x9d\x34\xaf\x37\x14\xc9\x67\x7b\x73\x97\xe4\x7b\xcb\xa9\xb2\xba\x2c\x1e\xe8\x22\x9e\x54\xe9\xb9\xe1\x7b\x79\xdf\x64\x43\x1f\xeb\x43\x91\x37\xcd\x60\xe5\x43\xd2\xdc\xbd\x8c\xba\xb0\xe1\x01\x17\x36\x6c\x74\x61\xd3\x1d\xe7\x28\xc1\x92\x6a\xcc\xb5\x8e\x97\xd0\x03\x01\xce\x45\xb4\xf5\x89\x63\xa3\x62\x74\x97\xe3\x9f\xfa\x3c\xc9\x79\x4d\x1d\xfe\xcb\x87\x6c\xd3\x94\x95\x9d\x6d\xb7\xd9\x06\x82\xd1\xd8\xf5\x26\x29\x28\xd2\xac\xe0\xab\xc3\x7c\x32\x7a\x38\xfe\x92\xa7\x1f\x7e\x78\x77\xf1\xee\xcb\x00\x9d\xdb\xdc\xd1\xfe\x9a\x51\x96\xbf\x5b\xc9\x52\x3e\xe8\x3e\x1a\xeb\x4e\xb0\x89\xfa\xdd\x6a\xfd\x16\x18\xcf\xca\xcb\xad\xa9\xe3\x22\x16\x96\xf1\x9b\x3a\x21\x27\x27\x81\x01\x0c\xeb\x9b\xe9\x83\xc0\xba\x9e\x71\xb4\x61\x0d\x9f\xfd\xb1\x48\x60\xa6\x30\xfa\x47\x8c\x63\x2d\x16\x23\x70\x34\x5c\x33\x9a\x53\x10\xe6\x8e\xa9\x02\xa7\x17\x92\xbf\x28\xc6\x46\xe3\xaa\x33\x74\x8d\x23\x69\x2c\xa1\x63\x70\xf5\x61\x38\x9d\x5d\x9b\xe3\x51\x4e\x82\x26\xa2\x0d\xf1\x9d\xab\x47\x77\xae\xf3\x28\x2e\x6e\x06\xcd\xa1\xed\x70\x59\x23\x09\xc5\x9d\x21\xae\xa9\x83\xa3\x47\x6b\xd7\xa2\x0f\xad\x1c\x08\xe6\x62\x6b\x65\xbb\x59\x98\x9a\xcb\x19\xb1\xb4\xb2\x9d\x4e\x6c\x90\x8d\xb2\xa3\x3c\x23\x35\x6c\x09\x79\xc4\x50\xd5\x61\x4b\x4f\xb4\xff\x0d\x97\xae\x51\xd9\xcf\x09\x6a\xe9\x53\xd7\x92\x77\xbf\xc6\xa5\x61\x5e\xcd\xa1\x28\x28\x83\x0b\x00\x58\x5a\xa8\x78\x13\x57\xac\xc5\x90\xe3\x01\xd7\x02\x75\x9b\xce\x82\xa3\x99\xe8\xd9\x49\x71\x6e\x8b\x01\xdf\xa0\xfa\xae\xac\x9a\x33\x2b\x4d\xf5\x6d\xb1\xc9\xc1\x0e\x06\xbd\x2d\x97\x15\x45\x7e\xa8\xf3\x7a\xbc\xb1\x9a\xdd\xf1\xe8\xac\xd7\xfd\xab\xba\xa3\xf5\x1d\x48\xf2\x6b\xb3\xea\xed\x81\x5d\x3f\x76\xca\x8f\xef\x66\xc1\xf9\x9f\xf7\x59\xf5\x7c\x48\xaa\x64\xd7\x5a\xda\xfb\xb0\xfe\x0f\x03\x2c\x1e\x40\x49\x5b\xf0\x8d\xaa\x27\x58\x65\x7a\xb8\x88\x9c\xfc\xda\x8e\xbf\x35\x06\xf4\xaa\x18\x6c\xbd\xbf\x7b\x82\xb7\x7e\xbf\xea\x07\x43\xf6\xd3\xd3\xaf\xc2\x4a\x96\x49\x2c\x2e\x75\xb8\xe4\xfb\xb9\x72\xf0\xd8\xa5\x50\x5f\xea\x86\x83\x0e\x2b\x8e\x22\x10\xaf\x71\x10\x41\x1e\x7c\x9f\x4e\xea\x83\x41\xf5\xe3\x18\x4e\x95\x6a\x51\x54\x0a\x8e\xe2\xf8\x87\x0e\x16\xad\x31\x66\x9a\xd7\x3c\xd3\xf9\x00\x6f\x26\x20\x13\x55\x33\xca\x84\x12\x9c\x16\xe3\x8a\xae\xf1\xbb\xaa\xc9\xa6\x5d\x0e\x48\x29\xf8\xe4\xb7\x5d\xc9\xfa\x39\x9f\xe6\x48\x7a\x26\xe4\xad\x74\xdd\x3d\xc0\x25\x2d\x34\xbd\x54\x4f\xd6\x3b\xa3\x57\xe7\x28\x50\x31\xd3\xee\x0b\x25\x09\xb4\x12\x09\x71\xa2\xe7\x1d\x08\x29\xfb\x6a\x9b\x13\x70\xce\x82\xf5\x0d\x68\xa5\x2e\x85\x5a\xc4\x2d\x2e\xd0\xdc\x51\x81\x21\xf6\x50\x9a\x8d\x79\x92\xd9\x57\xda\x72\x95\x44\x4e\x5a\x1a\x27\x78\x94\x5d\xb5\x67\x20\x9e\xca\x56\x0d\x25\xe5\x3a\xbc\x89\xd0\xf7\x56\xd4\x79\x70\x32\x53\x64\xa0\x1a\xb6\x70\x67\xfe\x72\x25\xf3\xd7\xc0\x4c\x50\x5a\x2f\xbf\x19\x19\x20\xa3\x07\x28\xbb\x70\x01\x63\x96\x20\xb0\x4a\xca\x9a\x3d\x77\x70\x31\x81\x8c\xae\xd0\xed\xac\x3a\x7f\xa7\xa5\xcb\x94\x3c\xc2\x99\xbb\xab\xe3\x66\xbb\x51\x6e\x9c\x94\x35\x06\xf3\xe8\x08\xb8\xee\x18\x75\x1c\xec\x44\x14\x18\x75\xb3\x0d\x47\x15\x7c\xf7\x46\xba\xdd\x36\x57\xb6\x86\xef\x81\x62\x71\xff\xd3\xe7\x37\x7e\x75\xbf\x60\xbf\xe5\x22\x2c\xdd\x8b\x05\xc3\xf1\x77\x69\xf9\xb8\xaf\x9b\x2a\x4b\x76\x36\x18\xff\xce\xbf\xdb\x65\x4d\x95\x6f\x6a\x58\x75\x92\x7c\x9f\x55\x56\x9a\x3f\xd0\x7e\x25\xd5\xaf\x30\x3a\xdc\x11\xf4\xfc\xbb\xfb\x83\x5a\xf3\xbe\x2a\xea\xff\xce\x3d\xb3\x99\x82\xb1\x33\x2a\x76\x63\xcc\x92\xef\x8b\xac\x19\x53\x8e\x78\x89\x17\x53\x87\xa4\x5c\xe1\xd8\xd0\x88\x0e\xc2\x18\x5b\x16\xbc\x08\xe0\x2f\xdb\x25\x2c\xf1\x99\xf5\xd1\xc2\x90\xcd\xea\xf0\x74\x36\x8d\x3b\xcf\x13\xc9\x92\x50\x11\xc8\x01\x45\xff\x0a\xa1\x32\xf7\x13\xc8\x9e\x0e\x65\x9d\xa5\x36\xdd\xf9\x80\xab\xc0\x74\xea\x1e\xb3\x87\x41\x93\x3a\xec\x8d\x6d\x51\xe5\xbc\x3b\xc8\x1f\x72\x49\xe8\x2a\x30\x47\x99\xa5\xb5\xc0\x6f\x66\xb2\x52\xe7\xf0\xc0\x1d\x21\xe4\x36\x57\xd4\x93\x9d\x2d\xd4\x2b\x24\xbe\x12\x47\x99\x65\xce\x9d\x49\xaa\x65\x24\x5a\x44\x9a\xa5\x24\x59\x48\x0a\xb3\xbc\xd4\x0c\x3c\x97\x3d\x93\xfa\x34\x65\x26\x3a\x3c\xda\x87\xce\xa1\xd1\x47\xd8\xe4\x19\xba\x09\xb2\x78\x33\xe8\x3f\x79\x2c\x1d\x81\x2e\xc2\x83\xf5\x06\x47\x04\x99\x0c\x94\xdb\x4d\x68\x74\x99\xad\xb3\xa4\xda\xdc\xd9\x37\x49\x25\x12\x05\x31\x52\x8c\xe7\x36\x1a\xec\x89\xe4\xf0\xa3\xf9\x79\xca\x02\xb7\x93\xb0\x0e\x53\x18\xf2\x07\x2b\x4d\x4d\x12\xd8\x29\xf2\xfd\xaf\x56\x22\x89\xdc\x81\xba\x4e\x53\x1e\xca\xa2\xbc\x7d\xee\x0a\xe8\x6e\xbd\x43\x48\xb7\xd9\xc6\xe0\x84\x6c\xa0\x14\x4f\x81\xc7\x02\x2d\xe3\x33\x25\xe1\x1e\xe4\x38\x83\xeb\xb4\xf3\xaa\x13\x35\xeb\xdb\xac\x3a\xee\x71\x4d\x7a\x4a\x75\x4f\xca\xca\x36\xaf\xbe\xdf\xa2\x1c\x4c\xa0\xdc\x4b\x04\x07\x15\x86\x2f\x54\x8d\xb4\x0e\x86\x2b\xc8\x26\x75\xc6\x1e\xd2\xac\x6e\xf2\x3d\x1c\x2f\xf1\x37\xac\xda\xf4\x0d\x0c\x76\x4b\x0b\xb2\x6f\xf1\x13\x52\xf5\xd4\xf4\x31\xdf\xa7\xe5\xa3\x74\xf4\xee\xf9\xe6\x7e\x4e\x01\xba\x29\xd3\x67\xeb\xd0\x3f\xd5\x1b\x8d\xa5\xcf\xf6\xf3\x10\x6a\x9e\x6f\xea\x87\x2f\xdb\x4d\xc4\xc1\x6f\x13\x49\x80\xe9\xbb\x97\x93\xe2\xfd\x2e\xdf\xef\x92\xa7\xf7\x24\x44\x87\xa7\xf3\xe4\xbe\x29\xcf\xce\x7e\xa1\xff\xd8\xdb\xbc\xf9\x32\x90\xa7\xa2\xca\x0e\x59\xd2\xbc\x17\xc5\xce\x0d\x30\xe6\xa6\x0a\xe8\xec\x83\xaa\x24\x1f\xaf\x2f\x49\x95\x2b\x25\xfd\x05\x0b\x70\x31\x2a\x2b\xd9\x20\x29\xd9\x0f\x5b\xd7\x06\x29\xc9\xed\xb4\xbc\x4d\x0b\x47\x06\x9b\x35\x77\x65\x5a\xc3\x5e\x58\xb7\x2b\x7e\x7e\xb7\x18\x1c\xd5\x87\x8c\xb0\xfe\xf7\x09\x58\x8c\x9e\x1c\x64\xb3\x40\xc3\x50\xdb\x17\x37\x8e\x0d\x18\xfc\x38\xa7\x37\x0e\x4b\xc4\xb2\xde\xa1\x68\xd1\x50\xb0\x35\x52\xd5\x87\x22\xe3\x74\x95\x6a\x6e\xcb\x6a\x27\x5d\xcf\xd6\xb4\x4d\x1e\x3e\x42\x71\x3a\x71\xbc\x6e\xbb\x05\xce\xa0\x86\x0b\xb9\x41\xb6\x9b\x5a\xda\x14\x29\x3e\xb0\xcd\xd0\xca\x8c\xad\x76\xea\xa2\xb0\x50\x77\xd6\xe9\x31\x87\xb7\x68\x41\xf9\x7a\x2b\x36\x4b\xc6\xb5\xa0\xdb\xbb\xca\x94\x79\xc6\x19\x57\x29\xae\x2c\xa8\x2a\xe3\xcd\xcb\xcf\x23\x64\x21\x2c\x69\xe7\x78\x5b\xad\x17\x85\x12\x08\x55\x02\xcf\xa0\xd3\x60\x7f\xd8\xdd\x6b\x79\x41\x95\xd0\xbf\x80\x13\x3a\x32\x67\x1c\x58\xa4\xfd\x9b\xa4\xce\x37\x76\x5a\x95\x07\xca\xad\x76\x53\xe5\xb7\xb7\x9d\x97\x15\xb3\xeb\x50\x21\xc9\x13\x36\x96\x95\xc5\x1c\x1f\xdf\xd1\x97\xbf\x40\x20\xfe\x2f\xef\xbe\x9c\xcf\x28\xa3\x7b\x51\xce\xa8\x32\xec\x57\x69\x50\xeb\xc6\x87\x59\xde\x13\xaf\xbe\xf2\xdf\x15\x53\x38\x86\x6c\x2b\x0b\x6f\x2b\x4b\xfa\x77\x80\x4f\x4c\x25\x5b\x70\x55\xf9\x58\x43\xcc\x03\xf8\x04\xe7\xa8\x2a\x94\xc9\x02\x49\x95\x25\xf5\xc5\x3b\x18\x49\x2a\x17\x6a\x0b\x7e\x32\x2f\x26\xc7\xba\x3f\xf0\x9f\xf7\x07\xf6\xf9\x9d\x35\x50\x96\x0b\xa3\x05\x35\x4c\xd0\xcd\x12\xd0\x20\xea\x4c\x92\x6d\x41\xca\xaa\xa1\x76\x4c\x40\x07\x7d\x34\xc4\x09\xd3\x20\x3c\x10\xb2\xd2\xfd\x5e\x7e\x64\x3f\x68\xd0\xe2\x89\xaa\x64\x5b\x8a\x37\x08\x1b\xc4\xf8\xb0\x80\x9f\x65\x2f\x1b\x73\x4e\x99\xdc\x67\x39\x77\x59\x52\x28\xca\xc6\xf9\x64\x15\x16\x82\x49\xa9\x32\xba\x1f\x33\xb5\x31\x5e\xa1\xd7\xc2\x24\x9d\x45\xbc\xd5\x49\xe4\x79\xb6\xde\xb9\x98\x68\xc5\x0d\x78\xf0\x4d\xf0\x64\xc3\xda\x0d\x93\xa9\x86\xf5\x0b\x29\x06\x4e\x60\x37\x18\x27\x1b\x16\x79\x82\xe7\xb6\xac\x97\x37\x34\xcd\x2f\x3b\x0e\x28\x2f\x13\x59\xcd\xe8\xee\x7f\x60\x6b\x3f\x9c\x55\x71\xd8\x18\xa0\xc6\xa4\x37\x98\x17\x98\x74\xaa\x1f\x6e\xc1\x7f\x4c\x37\xd7\xb6\x1f\x98\x0b\xaa\x7c\xe9\xc6\x0c\x84\xb9\x04\x18\xc1\x70\x6f\x81\xce\x1f\xc0\x0c\xe1\x3b\xb0\xa9\xd8\x49\x55\x95\x8f\x46\x38\x72\x01\x0e\x4d\x75\x3c\xa5\x45\xff\x47\x99\xef\x2f\x80\x54\xb3\x9a\x19\x2b\x92\x96\xcd\x40\x81\x41\x8a\xcd\xed\x03\x80\x1e\xa2\xf8\xa8\x57\xed\xc8\x18\xb2\x30\x28\x9d\x66\xf3\x43\x9a\xed\x9f\xbf\x0c\xb6\x63\x2e\xde\xb6\x2e\x98\xd9\x4c\x21\x5a\x76\xb0\x17\xed\x57\x0d\xd8\xbc\xae\xb0\xda\x23\x24\xec\xbe\x73\x2e\x50\xa0\xeb\x8d\x8d\x30\x45\xb7\x10\xca\x5a\x07\x8f\xc3\x2c\x1e\x6d\x58\xd8\x5c\x5d\xcf\xb9\xc0\x4c\xdb\xa0\x4a\xc6\x45\xa7\x04\xf4\xfb\xb4\x06\x36\xd1\x61\x03\x24\xf5\x50\x8b\x85\xdd\x50\xe9\xb3\xa6\x2d\x4f\x6a\x4b\x28\x2d\xea\x81\x9a\xde\x14\xab\xb8\xa6\x2d\x5f\x6d\x6b\x80\x62\xfa\xa8\x2b\x69\xf9\x67\x29\x23\xbd\xdd\xb5\xb0\x84\x6b\x9b\x6c\xfe\x5a\xdf\x6b\x4b\xaf\xc7\xd6\x91\xde\x79\xe5\xb9\x4e\x23\xcb\xb0\xa6\x8c\xd7\x1a\x6f\x40\xf3\x79\x88\x56\x2b\x50\xea\x71\xbb\x62\x02\xbe\xd4\xaf\x84\x8d\xad\xa4\x87\x91\x55\xf3\xf0\x22\x6b\x91\x10\xb1\xdf\x52\xdc\x4e\x03\xcd\xed\x34\x40\x48\x33\x1c\xc8\x5e\x82\x13\x0b\xfa\xf8\xf2\xfd\xdb\x30\x04\x33\xb3\x17\x53\x76\xf8\xfe\xd1\xfb\x6a\x6c\x2e\x7b\xd6\x9d\x29\xf4\xe0\xe0\x75\x1c\x41\x70\xea\x5a\x0c\x78\x81\xaa\x2c\x6f\x15\xa6\x88\x35\x57\x39\x56\xb6\x1f\x0a\xf2\x13\xdb\x0c\x61\x95\xab\x47\x1a\x10\x45\x5e\xba\x50\xd7\x2d\x4f\x1b\x74\x30\x55\x34\x92\x9e\x18\x74\x25\x31\xc8\x2b\xcf\x51\x1a\xe5\xe9\x24\xb6\x36\xe0\x6b\x3c\x32\xa7\x42\x84\x86\xd5\x4a\x25\x3f\xeb\x88\x2a\x39\x77\xb7\xd1\xd1\xbb\xb3\x48\x08\xa8\x3c\x76\xa8\xe5\x7c\x0a\xed\x26\xa9\x6e\xb3\xe6\x7c\xa4\x10\x2c\xf1\xac\x98\x21\xdf\x24\xfc\xa2\x5b\xfc\xf7\xb6\x8f\xbe\x3f\xa7\x7f\xc9\x59\x27\x8d\x9f\xfb\x0e\x12\xe6\x4d\x64\x4b\x93\xc3\x93\x45\x66\xf6\x44\xa4\x19\x9f\xd5\x1f\xa1\x98\x6b\x17\x75\xe6\x34\xc3\xc3\xb4\xce\x2a\xcb\xef\x8a\xcc\x43\x69\x1a\xb0\x5c\x1a\x40\xbf\x94\xf7\x0d\xdc\x04\x43\x63\xb8\xcb\xd5\x26\xf7\x4d\xb3\xfa\x35\x0c\x45\xdc\x23\xfb\x14\x76\xf5\xd8\x0d\x70\xc0\x42\x79\x37\xb0\x01\x1b\xc1\x00\x6a\xf5\x17\x34\xb8\x9f\x4e\xfc\x71\x46\x81\xe3\xae\x3b\x57\x0e\x16\xe0\xf5\xaf\x6a\x4e\xcc\x9b\xde\x99\x19\x9e\x60\x4f\x11\x73\xd1\x6c\xfc\xe6\x9b\x0b\xe9\x1a\xf4\xe9\x96\xc8\x69\xa4\xac\x64\x8c\xd9\x44\x21\x7e\x8a\xc5\x70\xf4\xbb\x9b\xda\x6e\xd0\x51\x8f\x39\x41\x23\x45\xe8\xf9\x08\xc9\xd9\x25\xf8\x3d\x68\x39\x30\x0a\xf3\xc5\x9d\x83\x28\x3f\xe2\x97\xe5\xb0\x16\x9a\x69\x36\x0c\xe5\x6c\x9b\x03\x71\x43\x37\xf1\xc8\x02\x20\x4b\xa5\x07\xb3\x6b\xf3\xc7\x6e\xfd\x12\x7e\x83\x70\x85\xb6\x4d\x19\x20\x5f\xca\x90\xa6\xd1\x9d\xfb\xd2\xdb\x7a\x68\x41\x46\xd5\xe2\x03\x61\xc7\xfb\xcb\x84\x32\x33\xef\x5c\xd5\x43\xc3\xb8\x24\xf5\x1c\xcd\xf4\x7d\x33\xdf\x5d\xce\xad\xdd\x5d\x45\x68\x97\x76\x64\x61\xa4\xfa\x0d\x45\xa1\xdf\x8b\xac\xe3\x6b\xe1\x3e\x3c\x84\xe6\xdc\x77\x1e\x32\x55\xae\x49\x05\x61\x8c\xd1\xe1\x1d\x9e\xac\x48\x0f\xa8\xe1\x9f\x9d\xb3\x2f\x7a\x24\x0d\xac\x45\xe5\x58\x5a\x7b\x21\x95\xe5\x6f\x4d\xbe\xcb\x5a\xaa\xd3\x36\x3b\xaa\x77\xca\xcb\xa5\x26\x33\xbb\xc0\x89\x97\x03\x31\xb8\x5b\xc3\xb8\xba\x95\xf0\xd4\x8c\x33\x3c\x73\xfd\x11\xd8\x37\x76\x91\xdd\x66\x7b\xb3\x43\xce\x6c\x18\xf5\xfd\xee\xa5\xbd\x92\x27\x88\xe1\x72\x62\x58\x4b\x99\x78\x10\xb8\xf9\xe8\x53\xb6\x12\x4b\x0b\x52\x3b\x18\xc7\xb6\xcf\x08\xc4\x16\xd8\xd6\x99\x47\xf2\xc8\x24\x52\x1c\x94\x6e\x26\x88\x8b\x04\x96\x48\x47\xd2\xce\xcc\x93\x60\x03\xfe\x5b\x47\x0f\x1a\x03\xa3\x38\x58\xcc\x03\x99\xe6\x0f\x02\xaa\x21\xe5\xb5\x96\xf0\x6e\x28\xb1\xb8\x4e\xc4\x2e\x74\x05\xe7\x76\x3b\x34\x9e\x7e\x08\x69\x24\x45\x1d\x97\xc3\xd3\x28\x6e\xe8\x4c\x50\xf5\x95\xef\xaa\x6c\xa8\x6a\xed\xf9\x69\x76\x2b\x6b\xdd\xca\xfb\x57\xa9\xe7\xbf\x66\xcf\xf2\x92\xc0\x87\x97\x2a\x4f\x2e\x1f\x60\x75\x8e\xf7\xeb\xaa\xd7\xa4\xb5\xed\x8e\x5e\x5c\x7d\x14\xb7\x63\xc0\xfb\x4d\xfd\x02\x5b\x20\xed\xa6\x60\xbf\x84\xd9\x8e\xde\x1b\x6a\x56\x4c\x6f\x1c\x00\x68\x1d\xc7\xe6\x8e\x9b\x77\x92\x83\xce\xd5\x73\x4b\xd2\xd5\xb1\x7b\xfb\xd2\x8f\x7a\x13\x22\x69\xe2\xa3\x76\xf2\xcd\xc7\xa5\x5b\x41\x7b\x97\x19\xc7\xbc\xd2\x91\x60\xd5\x30\xea\x6e\x31\xe0\xff\x9f\xb8\xab\x5f\x6e\x14\x87\xe1\xaf\xc2\x74\xee\x8f\x4d\x9b\x64\x49\xd2\xdc\xd7\x4e\xfb\x22\x3b\xd9\x19\x1a\xdc\x0b\x53\x12\x18\x70\xbf\x86\xc9\xbb\xdf\x58\xb2\xc1\x96\x6c\x20\x64\xf7\xee\x9f\xdd\xc6\xc8\x1f\xc8\x96\x6c\x0b\x49\xbf\x3f\x2e\xe1\x42\x9f\xb6\xf1\xc7\xd9\xd4\x32\x91\xf5\x1c\xff\x9b\x1c\x02\x74\x11\x67\xc8\xb1\x0c\x13\xe2\x5d\xd3\x82\x86\xf6\xa7\x08\x6b\xe3\xa4\xa0\x3d\x4a\xab\x49\xb7\xf3\x9e\x60\xc2\x9e\x71\x82\x94\xbb\xf1\x87\x71\x14\x8f\xad\x29\x1b\x6a\xee\x33\xfa\x6c\xdb\x26\x7a\x51\x7a\x68\xb4\x48\xb7\x41\x67\x91\x31\xc8\x6c\x38\x2f\x50\xd0\xf9\xe2\x0c\x85\x53\x6d\xb6\x34\xd7\x5a\x40\x38\xc3\x32\xef\x01\x8c\xd2\x8b\xcf\x6b\x13\x9d\x02\x2e\x47\xa3\x09\xc1\x62\x5b\x15\xef\x51\x17\x93\xe3\x16\xfd\x32\xec\x4a\xe3\x1e\x52\x09\xb9\x3f\x70\xaf\x11\x2c\x76\xfd\x46\xb0\xcc\xf6\x66\x33\x22\x69\x84\xd3\x81\x11\xb4\x53\xa5\x1b\x4a\xc9\x1d\xfd\xd9\xf9\xdc\xbe\xce\xe8\x6a\x04\x07\xc4\xa6\x08\x08\x6b\x50\x04\x07\x1d\xea\xbf\xb9\x46\x32\x7e\x23\x6d\x57\x6f\xf2\x2a\x0b\x8f\xf3\x2a\xf5\xee\x71\x06\xe6\x5a\x51\x43\xa3\x1c\xe7\x96\x71\x3e\xac\x6c\xc3\x02\xe4\x73\x3c\x1f\xd6\x4e\xd9\x06\xca\x36\x0d\xcd\xed\x38\x02\x67\x83\x79\xee\xa2\xd3\x56\x5f\x7e\xab\x50\x9d\xc6\x9d\xe4\xf5\xd6\x33\x00\x7d\x55\x46\x80\x22\xfc\x7b\xb7\x54\x3f\x16\xa9\xc8\x85\x14\xf3\x2b\xc6\x8c\x78\x66\x63\x3c\x9e\xb1\xe3\x65\x9a\x9c\xfe\x11\x55\xf1\x5a\xcf\x97\xe2\x58\xca\xcf\x05\x78\x73\x8d\x60\x00\x8e\xb8\x4c\xea\xfa\xbd\xa8\x52\xdd\xef\x20\x3d\x3a\x90\x8d\xa5\x56\x4b\x72\x98\xb6\x9f\x15\x45\x96\xee\x75\xb7\xfa\x9d\xdd\x32\x9b\xd6\x00\x48\x39\x8f\x6e\xe7\x7a\xe8\x45\x25\xfb\x29\x10\x84\x43\xb7\x05\x49\x0c\xf7\xc5\xe9\x39\xab\x8e\xe0\xec\x1e\x39\x73\x9c\xe0\xaf\x7d\x25\x12\x29\xe6\x7a\x32\xf6\x45\xf9\xb9\x78\x92\x27\xf3\x1b\x49\x92\xd3\x5e\xe4\x4e\x51\xfd\xfa\x74\xcc\xe4\xdc\x5e\x47\x95\xa8\x85\xdc\x39\x45\x48\xb5\x9b\x53\x34\x18\xcf\xf2\xc3\xf5\x65\xba\x9f\x41\xe4\x9b\x77\x86\xad\x07\xf6\x54\x5a\xc5\xdd\x9c\xa9\x7f\x96\x28\x15\x2c\xef\xe8\xc5\x29\x2f\xfa\x43\xc0\x4d\xb4\x6e\x2a\x87\x62\x1a\x1f\x4d\xba\xeb\x0e\x88\x0e\x6a\x1d\x8b\x4a\x2c\x1c\x84\x3f\x02\x20\x76\xd7\x82\xe8\x00\xfd\x78\x52\xc8\xe2\xb6\x3c\x24\xf5\xc2\x4c\x80\xac\x1e\x5b\x8c\xa1\x11\x55\x61\x25\xe9\x2f\x3c\xa3\xeb\x72\x2c\x02\xeb\x85\x51\x62\x6a\x51\x26\x55\x22\x8b\x6a\x77\xd9\xeb\xf3\xda\x53\x2b\x4e\x65\x4d\xa0\xa1\x09\x8c\xa2\x2d\x35\xc4\x4e\xdb\xa9\xef\xe8\xb0\x82\xb4\x3b\xd7\xe8\x66\x37\x2a\x4c\x7c\x48\x51\x9d\x92\x7c\x81\xe1\x31\xe1\x10\xbd\xe1\x18\x3e\x2b\xa6\x06\x06\x19\x24\xc4\xae\xfc\x34\x7e\x07\xfd\x96\xf0\x25\x3b\x0d\x48\x61\x1b\x7f\xd0\x4b\xe6\x84\xfb\xbb\xbb\x8e\x49\x18\x63\x5b\xa2\xe7\xda\x0f\x11\x66\x6f\x51\xbc\xca\xf2\x55\x1d\xad\xe1\x15\x72\x9f\x2c\x47\x23\x37\x97\x4e\xb1\xe9\xf7\x1c\xbd\x79\x8d\xa5\x47\x55\x38\x4c\x3d\xb4\x5e\x7a\xaa\x22\x08\x6c\xf2\xbd\x12\xf9\xed\xc3\x41\xe4\xe5\xae\x97\x5c\xc3\xff\xa7\x8e\x67\xac\xe2\xe4\x65\xea\x2f\xe2\x5b\xab\x3b\xe2\x4b\x5b\x72\xb6\x4f\x6c\x83\x00\x67\xfd\x00\xe0\xac\x64\x9f\xd7\x4b\xb8\xa1\xdf\xec\x22\xd8\x74\x3a\xe9\xf0\xee\x59\xec\x91\x3b\x87\x6c\xdf\xb2\x8a\x3d\xac\xc5\x1e\x03\x3c\x84\xed\x4e\xa7\x32\x3f\x15\xa9\x58\x64\xa9\x12\x2c\xf9\xe9\x3c\xd1\x01\xe6\xdd\xc3\xe9\xdb\x03\xf2\xee\x8a\x3d\x02\x6f\x31\x2c\xb3\xda\x4f\xd4\x78\xbd\xba\x68\x8a\xd2\x1a\x2f\xd5\xa3\xa8\xf5\x6a\x18\x45\x0b\x0b\x64\x80\xb2\x8f\x0f\x3d\xd5\xac\x5b\xc1\xdd\x00\x69\x50\x82\xb9\x30\xaa\x52\x5b\xb0\xc4\xd1\x2b\x23\x6e\x71\xc7\x11\x2a\x1b\xa6\x88\x0c\xb6\x4f\x26\x1a\x96\x59\xae\x37\x87\x00\xa0\x2c\x13\xe8\x14\x75\xc5\x5c\xd4\xc2\xda\x96\x80\x8e\xe3\x77\xb1\x9a\xad\xb7\x8c\x01\xd9\xc3\xea\x76\x1f\x90\x0b\x64\x5f\xe4\x39\x1e\x1f\x1f\x07\x9a\x76\xee\x9b\xab\xf5\x96\x66\xd4\xdf\x5a\x90\x4f\x03\xef\x17\x41\x2f\xc8\xc5\xd9\xf4\x97\xf5\x37\x33\xf8\xe6\xa4\xda\x85\x6c\x70\x6a\x5b\x3c\xc9\x4e\x07\x51\x65\xd2\x61\x89\x2e\xa3\x4a\x85\xde\xd2\x43\x88\x6f\x51\x72\x4a\xa3\x2f\x2d\x16\x43\x76\x5a\xa4\x02\xd4\x67\x99\x7d\x88\x7c\x01\x49\x6a\xff\x8e\x67\x0d\xe4\x78\x6f\x5c\xc3\xbb\x65\x3b\x39\xeb\xcf\xcc\xc6\x12\x6c\x99\x42\x30\xae\xd7\xc0\xc3\x4d\x0b\x7b\x74\x2d\x95\x6f\x87\xff\x30\xf9\x16\xff\x2a\xab\x0d\x62\xf4\xb3\xac\x5d\xcc\xa0\x58\x1d\x53\x95\x2a\x39\x43\xea\x13\xbb\x75\xd5\xbf\xf6\xa2\xd5\x7f\xe2\x7f\x1c\xcc\xcf\xab\xbe\x6e\x41\x4f\x3c\xde\x36\x13\xbe\x23\x73\x0c\x4d\xbc\x35\xe3\x09\x80\x1e\x14\x7e\x7b\x10\x69\x26\xf1\x99\x15\x0a\xbe\x82\x8c\xf1\xed\x68\xe7\x64\xd8\x3a\xd7\x0b\x03\x64\x59\xdf\xbf\xbd\x47\x5f\xa3\x2f\xab\xf5\xef\x71\xf4\x35\x5a\xc5\xf1\x6c\x46\xf2\xaf\x07\xe9\x7c\xe8\xa1\xb1\x83\x63\x48\x72\xbb\xc7\x3c\xb7\x7b\xec\x47\x5f\x54\xdd\xd8\x0d\x8d\x78\x9d\xf5\x3d\x6b\x5d\x15\x9d\xcf\x2d\xea\xb1\x93\x90\xee\x17\x65\x5f\xfa\x19\xa6\xe4\xee\x49\x55\xbc\x53\xc1\xa8\x8a\xf7\xb3\xfd\x22\x1d\x88\x6e\xeb\xa6\xe3\x7f\x6e\xeb\x3b\x0d\xce\x3d\x23\x1c\x8c\xbb\xef\xc1\x38\x61\x14\x5d\x14\x4a\x8d\xcd\xb2\xa7\x17\x1b\x01\xbc\xeb\xa4\xea\xd2\x63\x05\x57\x3c\xc5\x9d\x55\x27\x39\x07\x06\x33\x24\x0e\x83\x15\x9d\xe0\xe0\xe5\x9f\xcc\x74\x8a\xaf\x23\x93\x27\xb8\x67\xed\x1e\xad\xf3\xdf\x5d\x39\xef\xa7\x75\x50\x61\xe9\xe1\x11\x0a\xe0\x00\x31\x73\xc7\xb0\xde\x5a\x19\x17\xd8\xd6\x38\xb0\xdb\x35\xa1\x64\xae\x3d\x5b\x6d\xdb\x24\x1c\xdf\x59\x21\x7e\x62\xa0\xc5\xfa\x5c\x4f\x8b\x21\x5c\x96\x16\xb6\x87\x7f\x67\x5f\xb6\x08\x64\xf1\x22\xba\xe1\x90\xa9\xa4\xd0\xc1\x78\x0b\xa2\x6d\xeb\xca\x96\x63\x85\xf1\x38\xb2\xb9\x80\x88\x47\x77\xde\x7e\x79\xd5\x95\xb3\x9b\x7a\xc0\x5a\xcc\xee\x06\x17\xbe\xf9\x10\x41\x04\xce\x8a\xd4\x8f\x5f\xd5\xc2\xc5\xa1\x2e\x43\xc8\xed\x7a\x16\x7d\xdf\xe7\x49\x5d\xdf\x3e\x68\xf6\xef\x02\xf8\xd0\x34\x25\x09\xc7\x5d\x36\x1c\x83\x3e\xd8\xcd\xf2\xe5\xed\x66\x37\x8b\xbc\xc0\xe6\x18\x2a\xef\x5a\x4f\x5b\x5b\x69\xe3\xa4\x2a\xb3\x1d\xff\xe2\x73\x2f\x2a\x49\xc9\x03\x2d\xe0\x28\xcd\xcb\x49\x54\xc5\x4a\x49\xc5\xc0\x65\xe2\x0e\x83\x11\xa9\x09\x7a\xf0\x12\xc2\x84\xb3\x3b\xf2\x87\x9a\x6c\x09\x58\x5d\x9a\x01\xb3\xe7\x9c\xd7\x74\x37\x0b\xdb\x9c\xed\x4b\x29\x89\x5a\xd2\x5e\xcc\x67\x9e\xba\xcd\x64\xe6\xf3\x83\xec\x6c\xca\x0f\x9d\x74\x2e\xf6\x81\x1b\xa4\x42\x2d\xaf\x8d\x0b\x88\xa0\xcb\xa8\x66\xfe\xe1\xc7\xf3\xbe\xe1\x0a\x37\x4a\x4d\x86\x4c\x8a\x9d\xb5\xfa\xab\xfb\xa0\x6b\x78\xb5\xa1\xdf\x78\xb7\x9e\x6d\xe1\x92\xce\xb9\x41\x78\x74\x63\x44\x9b\x1b\x63\x3b\x5f\xa7\xe4\x7b\x28\x9c\x38\x06\xbc\xe0\x46\x8e\x62\x79\x14\x32\x51\x54\xe1\xe1\x44\x87\x8d\xdf\x66\xc4\x1b\x2b\xab\xe2\xe3\xb3\xb7\xa5\xd6\x0b\xe8\x1e\x3c\x08\xe0\xcb\xae\xb7\x71\xa5\x36\x22\xfb\x96\xed\x5b\xb2\x9e\x68\xa1\x4b\xad\x5b\x0d\x03\x57\xf3\x20\xe3\xaf\xb6\x1e\xcd\x67\x35\x0d\x5b\x55\x26\x48\x1f\x14\x03\x9f\xa7\x22\x06\xff\xbb\x75\x2f\x32\x77\xb8\x53\x3c\xb9\x04\x3a\xeb\xb1\xf2\xa9\x63\x4b\x68\x88\x5d\x0a\xdf\xff\x3f\xcb\xf6\x37\xae\x9d\x27\x32\x43\x6b\xd7\x67\x21\xd2\xa7\x64\xff\x32\x8d\x37\xa4\x11\x8f\x06\xd4\x9a\xef\xca\x51\x3a\x7b\xc0\x35\x23\xb5\x1b\x72\x0e\x6d\x67\xff\x08\x5b\xf3\x60\xdb\xf8\x32\x15\xcf\xd9\x49\xc3\xce\x20\x64\x12\x9b\x92\x7f\x03\x00\x00\xff\xff\x26\x5a\x61\x3b\x92\xf4\x04\x00") -func web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJsBytes() ([]byte, error) { +func web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCssBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJs, - "web_ui/assets/consul-ui-7aeaf6ce6c56cfe7d7ce8128f78dd5ff.js", + _web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCss, + "web_ui/assets/consul-ui-6545182bcd5582815bc4aa32375523fe.css", ) } -func web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJs() (*asset, error) { - bytes, err := web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJsBytes() +func web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCss() (*asset, error) { + bytes, err := web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCssBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-7aeaf6ce6c56cfe7d7ce8128f78dd5ff.js", size: 1081289, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-ui-6545182bcd5582815bc4aa32375523fe.css", size: 324754, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x7b\x6f\x1b\xc9\xf5\x20\xfa\x55\x0a\x1e\x04\x9b\xc9\x4f\x75\x52\xef\x87\x9c\x31\x76\xe2\x64\xa0\x0b\xc8\x77\x81\x9b\x8d\xfe\x48\x30\x77\xd1\x6a\xb6\x44\xae\x9b\xa4\x96\xa4\x68\x5b\x03\xdd\xcf\x7e\x71\x4e\x55\x93\x6c\xb2\xf9\xb4\x3c\x63\x4f\x08\x9b\x2d\xb2\xde\x5d\x75\x9e\x55\xe7\x9c\xfa\xef\x65\xbf\x98\x4c\xab\x19\x7b\xf5\xcf\xff\xf9\x13\x0f\xaf\x5e\x7f\x57\x8f\xef\x07\x23\x3e\x1b\xdf\xdf\xd7\xd5\x7f\xf5\x06\x73\x76\x37\x1e\xcf\xaa\x09\xbb\x7d\x9c\xcd\xc6\xa3\x0b\x28\xc7\xa3\xe9\x63\xcd\x07\xa3\x59\x35\x9a\x0d\xc6\x23\x7e\x37\xa8\xea\xde\xb4\x9a\x4d\x19\x3c\x54\x93\xe1\x60\x3a\x1d\x8c\x47\xd3\x37\x4d\xf9\x6a\xf8\x30\xfb\xc4\xa7\xb3\x62\x56\xbd\x79\xac\xdf\xd4\x83\x37\x7f\xea\x4a\xbc\x2c\xca\xd9\x60\x5e\x75\x65\xd5\xc5\x6d\x55\xef\x68\x6f\x35\xbf\x69\xe6\xdf\x93\x71\x5d\xfd\xd0\x1b\x14\xf5\xf8\xfe\xe7\x37\xbd\xc1\x1c\x3f\xac\xd7\x63\xc5\x8e\xac\xdd\x95\x1f\xb6\xd6\x7d\x58\x56\x2d\x2e\x68\x34\x30\xfb\xf4\x50\xf1\x54\x6e\x33\xa5\x29\x3c\x2c\x06\xa3\x34\xa6\xc5\xb7\x56\xd6\x43\x93\xb3\xec\xe0\x97\x59\xf5\x71\xc6\x7b\x55\x39\x9e\x14\x38\xfb\x97\xa3\xf1\xa8\x7a\x6e\x96\xe0\xa2\x3f\xf9\xe5\x76\x3c\xe9\x55\x93\x94\xde\x3d\xdc\x59\x71\x5b\x57\xac\x2c\x1e\xb0\x81\x2d\xaf\x94\xca\xcc\xfa\x55\xd1\x63\xb3\x7e\x1a\x45\xbb\xde\x4a\xd2\xa2\x58\xfe\xd9\x6b\xbe\xf4\x2f\xf0\x7b\x3f\x0d\xba\xa8\x07\xf7\xa3\xcb\xba\xba\x9b\x3d\x17\x93\xd9\xa0\xac\xab\x8b\x62\x3a\xe8\x55\x17\x77\x83\xfb\xc7\x49\x75\x91\xe0\xec\x02\xdb\xc2\x3f\xf7\x93\xf1\xe3\xc3\x45\x7f\x72\x31\xad\x4a\xec\xf0\x97\xde\x60\xfa\x50\x17\x9f\x2e\x6f\xeb\x71\xf9\xfe\x19\xaa\xe1\x6d\x35\xe1\xb7\xc5\x74\x50\xf2\xde\x64\xfc\xd0\x1b\x7f\x18\xf1\xd9\x64\x70\x7f\x5f\x4d\xfe\x5d\x4c\x06\x05\xaf\x3e\x3e\x14\xa3\x5e\xd5\xfb\x61\x36\x79\xac\x7e\x66\xb9\xc6\xc3\xf8\x43\x35\xe1\xd3\xaa\xae\xca\x19\x81\xd1\xe3\x94\x0f\xca\xf1\x28\x8d\x19\x3e\x0c\x66\x7d\xde\xab\x66\xc5\xa0\x9e\xb2\x59\xef\x72\x3c\xaa\x3f\xf1\xb2\x3f\xa8\x7b\x34\x37\xb4\x96\x97\x97\xb7\xd5\xdd\x78\x52\xfd\xc2\x3f\x54\xb7\xef\x07\x33\x3e\x9b\x14\xa3\xe9\xdd\x78\x32\xbc\x9c\x8c\x11\x30\xff\x28\x83\xe8\x55\xf7\xdf\xbf\xde\x96\xf1\x4c\x2f\xf1\x7f\x1e\xc7\xb3\xea\xe2\x76\xdc\xfb\x74\xd1\xeb\x5d\xf4\xea\x8b\xde\xec\x62\xb1\x94\x79\x56\xfa\xf2\xa2\xaf\x2e\xfa\xfa\xa2\x6f\x2e\xfa\xf6\xa2\xef\x70\x4a\xfa\xb3\x61\x7d\x31\xb8\x9b\x14\xc3\xea\xa2\xae\xee\xab\x51\xef\xa2\x1e\x5c\x8c\xeb\x8b\x87\x8b\x87\x49\x75\x81\xd3\x5d\x4c\xaa\xe2\xe2\xb1\xfe\x65\x58\x4c\xee\x07\xa3\x4b\xf1\xfa\xa1\xe8\xf5\x06\xa3\xfb\x4b\xf1\xbc\xd1\xe4\x2f\x77\xe3\xd1\x8c\x4f\x07\x4f\xd5\xa5\x14\xe2\x0f\xaf\xe9\xe7\x87\x6a\x70\xdf\x9f\x5d\x1a\x41\x15\xa6\xb3\xc9\x78\x74\xff\xcb\x6a\x8e\x17\xe2\xf9\xb1\xfe\xa5\x1e\x4c\x71\x1e\x3f\xd5\x55\x82\x39\x9a\xc6\x0c\x85\xbc\x1c\xd7\x75\xf1\x30\xad\x2e\x9b\x2f\xaf\x73\xc6\xf4\xa1\x28\xd3\x68\x36\x60\xe6\x97\xe5\x48\x8b\xc7\xde\x60\x7c\x81\xeb\xd6\xbb\x18\x0c\xef\x2f\xc6\xb7\xff\xbb\x2a\x67\x17\xf3\x41\xaf\x1a\xff\xd2\x4f\xc3\x28\x1e\x67\xe3\xd7\xc3\xe2\x23\xff\x30\xe8\xcd\xfa\xf4\x02\xcf\x50\x3c\x3c\xf0\xf9\xa0\xfa\xf0\x26\x11\xb0\xc9\x30\x93\xaf\x7f\x23\x16\xfe\x90\xbe\xff\x9c\x51\xb2\xaa\xab\x59\x45\x74\xed\x6e\x30\x19\x12\x56\xf1\xa2\xae\x26\xb3\x4e\x72\xc5\x08\x02\x2e\x60\x58\x8d\x1e\xf9\x43\x31\xaa\x6a\x96\x30\x08\x13\x06\xb3\x6a\xf8\xf3\x05\x0c\xc7\x93\x8a\x3f\x8c\x1f\xc6\xf3\x6a\xc2\x31\xfd\x4d\xea\xb7\xec\x57\xe5\xfb\xdb\xf1\xc7\x9f\xff\x8b\x1a\x21\xea\xba\x51\x79\x3c\xe8\x95\x19\x3c\x17\x34\xf7\xd4\xb6\x9a\x7a\xb9\xb9\x44\x28\xff\x74\x91\x5e\x7c\x3a\x9e\xcc\xb6\x96\x20\x34\x58\x9d\x12\xd6\x9a\xad\x22\xfd\x2a\x27\x55\x81\x10\x4c\xc3\x84\x72\xfc\xf0\x89\xdf\xce\x46\xcd\xef\x54\xa4\x18\x95\x55\xdd\x4a\x9a\x3e\xde\x0e\x07\xb3\x8b\xd5\x15\x99\x54\xd3\x6a\xf6\x73\x2b\x29\x95\xfa\x39\xd3\x03\x06\x05\x51\x81\x69\xd7\x42\x5e\x8e\xc6\xb3\x3f\x2e\xba\xff\x3e\x11\x5c\x36\x7d\x28\x1a\xa4\xee\x17\x53\xde\xd4\x9f\x4d\xde\x34\x6d\x1d\x31\x95\x5d\xc4\xe1\x94\x86\x96\x24\x63\xfc\x58\xf6\x79\x59\xd4\xf5\xf8\x71\x46\x98\xf3\xba\xc9\x7a\x9c\x2e\x16\x24\x67\x0c\xc7\x4f\x5d\xa9\xd3\xcd\xc4\xf5\x84\xe7\x34\xe5\x93\x6a\x5e\x15\x35\x1b\x8c\x1e\x1e\x67\x97\x34\xcc\xaa\xf7\xff\x55\xc3\x2d\xa3\xe9\x55\x77\xc5\x63\x3d\xeb\x1c\x10\xd2\x96\xcd\x01\xe5\xd4\xe9\x66\xe2\x7a\xc2\x73\xf1\x4b\x39\xae\xc7\x93\xcb\xef\xa4\x75\xfa\xee\xee\x99\x96\x29\x91\x97\xcc\x2d\x52\xfe\x60\xd4\xaf\x26\x83\xd9\x33\x92\xc7\x45\x95\x3b\x25\x95\x79\x46\xf2\xf7\xcb\x6d\x51\xbe\x47\x1e\x31\xea\xf1\x9c\x7b\x77\x77\xf7\x7a\x85\x92\xb9\x87\x8f\xaf\x89\xf1\x4c\xaa\x51\xaf\x9a\x20\x45\x19\x3f\xcc\x06\xc3\xc1\x53\x75\x5d\xdd\x0f\x6e\x07\xf5\x60\xf6\x69\xf1\x8e\x54\x12\x2b\xf2\xa2\xf7\xbf\x1f\xa7\xb3\x44\x09\xe9\x45\xb7\x65\x4d\xb7\xe4\xec\x68\x6a\x3c\xfd\xc8\xd3\x10\x87\xe3\xf1\xac\x8f\x63\xba\x9f\x14\x9f\xa6\x65\x51\x2f\xd7\x7f\xad\x40\x31\x9a\x0d\x8a\x7a\x50\x4c\xab\xde\x6b\xc4\xd5\xbb\x7a\xfc\x81\x7f\xbc\xec\x0f\x7a\xbd\x6a\xb4\x4c\xf9\x74\x39\x2d\x27\xe3\xba\x5e\x34\x73\x3b\xfe\x88\xa3\xc0\x26\x32\xd1\xbd\x1d\x7f\x7c\xdd\x9d\x3a\x1c\x8c\x32\xfd\xd4\x42\x3c\x7c\x7c\x86\x72\xc8\xa7\xbc\x5f\x4c\xfb\x03\x78\x3b\xee\x55\xef\x06\x93\xc9\x78\x72\x51\x8e\x7b\x15\x72\x98\x5f\xb6\x0d\x15\x69\x31\xa5\xdd\x15\xc3\x41\xfd\xe9\x72\x38\x1e\x8d\x91\xd4\x57\xcf\x28\x99\x6c\xac\x98\xbb\xf3\x2e\xa8\xd7\x99\x92\xcb\x87\x8f\xaf\x33\xbb\x92\x60\x27\xd5\x90\x89\xe7\x84\xe1\x9b\x55\x89\xb1\x3e\x14\x93\x6a\x94\x20\x24\x93\x8e\x0b\x82\xf0\x8b\x04\x6f\x0b\x3e\xf8\xcb\xea\x90\xfe\x5a\x0f\x46\xef\xdf\x15\xe5\x3f\x3e\x4d\x67\xd5\xf0\xa7\xf1\x68\x76\xc1\x8b\x87\x87\xba\xe2\x53\x4a\xb9\x78\xf5\x8f\xea\x7e\x5c\xb1\x7f\xfe\x5f\xaf\x2e\xfe\x9f\xf1\xed\x78\x36\xbe\xf8\x1f\x1f\x3f\xdd\x57\xa3\x8b\x7f\xde\x3e\x8e\x66\x8f\x17\x6f\x8b\x11\xb6\x5a\xd7\x17\xaf\x7e\x1a\x4c\x0a\xf6\x8f\x62\x34\x7d\x75\xf1\xea\x6f\x93\xf1\xa0\xd7\xfc\xb8\xaa\xea\x79\x35\x1b\x94\x05\xfb\xbf\xab\xc7\xea\xd5\xc5\xe2\xf7\xc5\x8f\x93\x41\x51\x5f\x4c\x8b\xd1\x94\x4f\xab\xc9\xe0\xee\x79\x95\xb3\x26\x36\xda\x40\xfe\x72\xb6\xb7\x80\x0e\x4e\xf7\xf3\xea\x72\x2c\x80\x21\x81\x02\x96\x21\xcc\x5e\x85\x1b\x5a\xa3\x0f\xfd\xc1\xac\x22\x26\x5c\x5d\x3e\x4c\xaa\xd7\x1f\xc6\x93\x1e\xff\x30\x29\x1e\x2e\x47\xe3\xc9\xb0\xa8\x9f\xff\x74\x71\x79\x59\xdc\xa1\x3c\xb6\x21\xec\xac\x40\x50\x1e\xe9\xeb\xcd\xa4\x85\x48\xfa\xcb\x0a\x5b\x2e\xd2\xf2\xac\x11\xcb\xd5\xc4\x49\xd1\x1b\x8c\x7f\xfe\xa5\x7c\x9c\x4c\xc7\x93\xcb\x87\x31\x6a\x19\x93\xe7\x03\x6b\xcd\x2b\x14\x2b\x8b\x3a\x4b\x9a\xb7\xc5\xb4\xaa\x07\x28\x91\x10\x55\x59\xcb\x9d\x8d\x1f\x9e\x77\xc2\x4c\x23\x38\x3d\x27\x39\xab\x91\xab\xc5\xf3\x9f\x1a\xe1\x26\xbd\x99\x78\x86\x62\x34\x18\x16\x89\x43\xcc\x8a\x5b\x3e\x2a\xe6\xec\xb1\x6e\xe6\xef\x14\x59\xe4\xe8\x2a\x97\xbd\xc1\x14\xfb\xef\x9d\x52\xf7\x6e\x5c\x3e\x4e\x4f\xa9\xd8\x47\xb0\x5a\x28\x6e\xa7\xd6\x47\xe6\xbd\x18\xff\xf7\xe9\x67\x6a\xf3\xfb\x6d\x52\x19\xf4\x8a\xd1\x7d\x35\x19\x3f\x4e\x51\x56\xd9\x5b\xa6\x79\xc3\xfd\x05\x69\x44\x0b\x1d\xb7\xfa\x38\xab\x26\xa3\xa2\xe6\xd3\xf1\xe3\xa4\xac\x3a\x74\x5f\x14\x7e\x19\x8c\xc6\xb3\x41\x59\x01\x72\xcf\x0f\xfb\x0a\xf5\xaa\xd1\xa7\x7d\x65\x56\xd4\xe8\x6d\x45\x67\x3d\x48\x29\x9c\x65\xde\xb9\x59\x70\xd9\x0c\x5f\x59\x8e\x96\x0c\x76\x4a\xa5\x15\x58\x3b\xa5\x36\xad\xc5\xda\xa2\x9f\xd6\x52\x17\xf8\x2c\x5a\x7a\x3f\x18\xf5\x2e\xa0\x37\x98\x96\x58\x0a\x55\x38\xd4\x57\x61\x32\x7e\x9c\xa1\x50\x3a\xe9\xbd\xc9\x82\xe5\x63\xcd\xea\x41\xa7\x88\xbf\x91\xb4\xf2\xe6\x9b\x79\x19\xc6\x36\x33\xda\x58\xb2\x2d\x7f\x27\x16\xdc\xd5\xc5\xb4\xcf\x87\xd5\x74\x5a\xdc\x57\xec\x01\x2a\xe2\xc6\x9b\xc9\x1f\x07\xd3\xd9\x74\x33\x7d\xfa\x58\x96\xd5\xb4\x23\xe3\x43\x31\x19\x0d\x10\x76\xea\xa4\x74\xaf\x68\x35\x49\xf9\xd9\x40\x22\x1a\x58\x6f\x30\xff\x7e\x77\xd9\xe5\x3b\xed\x2f\xbb\x52\xea\x70\xbd\xe9\x80\xe1\x7d\x4e\x63\x1b\xe3\xff\x9c\xc6\x96\xcd\x64\xfc\xce\xcb\x97\x7f\x0d\x46\x77\xe3\xc5\x8f\x87\x71\x3d\x28\x3f\xf1\x61\x31\x2a\xee\xab\x61\x35\x9a\x2d\x72\x16\x8b\x98\x7f\x2f\xd6\xae\x4b\x61\xdc\x4c\x5b\x00\x60\x47\x56\x06\xdd\x8e\x9c\x03\x60\xf3\xa5\xd6\xeb\xa5\x96\xea\xf3\x57\xa9\xe1\xe1\x90\xe6\xa2\xea\xb1\x62\xaf\x42\xbc\x27\x7f\x85\x72\xec\x29\x98\xd7\x62\x4f\xa9\x36\x4d\x39\xa8\xf0\xae\x45\xec\xdc\x03\x7c\x93\x37\xe4\xba\x33\xf3\x36\x5d\x7b\x23\xa0\xf5\x6b\xf9\xce\xed\xe4\xf4\x86\xed\xb4\xd6\xfb\x74\x65\xed\x1a\xfd\x9e\xed\x86\x94\xd4\x34\xde\x91\x93\x06\xd4\x91\x71\x5c\xd7\xad\x6d\x8d\x6e\x86\xb9\x8d\x1d\x76\x65\xb4\xa6\xe4\x40\xee\xd7\x35\xb8\xad\x1b\x2c\x29\xa9\xdd\x43\x2b\x67\x75\x68\xad\x8c\xe3\xba\x6e\x36\x72\x3a\xd2\xd6\x67\xa6\x9d\xb9\xd9\x7f\x93\xd3\x31\x37\x5d\x05\x76\x8d\xf0\x90\x6d\xa5\x54\x76\x7d\x77\xe9\x90\x9a\x4b\xe2\x76\x64\xc5\xbd\x03\x3f\xa5\xd1\xf5\x2a\xb3\x61\xfd\xef\x5e\x31\x2b\x38\x49\x43\xff\xef\x0f\xaf\x7a\x25\x14\x65\x3d\x85\xc1\xa8\x57\x7d\x7c\xf5\x33\x4b\x7b\xfb\xbd\x46\xb4\x9c\x3e\x14\xa3\x86\x33\x8d\xc6\xbd\x8a\x0f\x7a\x28\xa5\xcd\x3e\xb5\x72\xa6\xd5\x64\x3e\x28\x57\x32\x4f\xdc\x7b\xdb\xcb\x2a\x5e\xac\xdd\x35\xd6\xf1\x62\xed\xae\xb5\x78\xfc\xae\xe1\x81\x53\xf0\x12\x0d\x77\xce\xc1\x4b\x34\xdc\x34\xd9\x68\xcb\x69\x6f\x63\x3a\xae\x07\xbd\x7d\x1a\x73\x07\x03\xde\xb9\x03\xf4\x7a\x79\xda\x30\x9e\x5c\xce\x8b\xc9\x1f\x79\x3a\x22\xe3\xb7\x93\x62\xd4\xe3\x4e\x88\x8b\xbc\x2f\xf1\xfd\xeb\xd5\x42\xb3\x4f\x0f\xe3\x8e\x32\xcf\x2f\x2d\x24\x7d\x09\xa6\xf3\x52\xa4\xfa\xab\x22\x67\x5b\x76\x75\x5b\xeb\xfb\x9d\x55\xd6\x3b\x99\x17\xf2\x3b\xed\x75\x61\x54\xd7\x92\x6d\x17\x0c\x5a\x3c\xf1\x78\x0a\xda\x35\x4a\x7f\x17\xee\x8a\xb5\x81\xde\x16\xa5\x2c\xcb\xf5\x81\xee\xd9\x5c\x48\x8a\x6b\x56\xc8\x4e\xa3\xbc\x1d\xe3\xab\x6e\xab\xea\x4e\xad\x8d\x2f\x6f\xbf\xb6\x7e\x3d\x6f\xd7\x44\x4e\x96\x12\x4f\x9b\xaf\xbc\xd9\x7f\xf8\x06\xc8\xc1\xca\xfe\xb1\x0c\xf0\xd0\xf9\xec\x1e\xff\x56\xa5\xbb\xad\xc8\x75\x83\xfe\x6d\xd5\x5b\xeb\xe4\xae\x28\x8d\x50\xdb\xa6\x65\x6d\x2f\x6a\xeb\x4e\x40\x5b\xa9\xec\x7a\xc1\xf2\xce\x6f\xf4\xad\xaa\x5b\xa1\xe3\xeb\xd6\xaf\x8e\x91\x1c\xb1\x87\x74\x18\xc2\xdf\x46\x75\x77\xf7\xba\xf5\xeb\xa4\x6e\x0f\xea\x2d\x9d\x4b\xbd\x6e\x9f\x52\x7d\xd6\x8e\xdd\x57\xb0\x2b\xb6\xb2\xd7\xd0\x35\x09\xe2\xce\xee\x99\x07\x51\xa8\x9e\x37\xcf\xbb\x36\xc5\xb6\x68\x7f\xfb\x15\xa2\x6e\x9d\xa0\x63\x9c\xa1\xb8\x95\x1b\xe3\x0c\x55\x74\x85\x7e\xdd\x7a\x95\xae\x71\xee\xd9\xa0\xdb\xc5\x23\x0f\x55\x60\x8f\x53\x15\xf7\xe9\x7e\x47\x2a\x58\x7b\xf5\xa5\x1d\xed\x75\xcc\xb5\x0e\xbe\xd8\x98\xeb\x04\x05\xaf\x97\xb8\xd3\x31\xd1\xdd\xc6\x01\xdb\x4e\xfe\xf3\x10\x3b\x06\x90\xe1\xef\xf8\x01\xec\xdf\x4d\xd8\xa7\x55\xef\xd5\x2c\xb3\x31\xd6\xe6\xa0\x45\x65\x44\xa1\xf7\x0f\xfa\xc5\x0c\x54\xda\x47\x21\xbf\xc2\x3e\xeb\x4b\xee\xb4\xed\xd9\x54\xfb\x9a\x15\xb2\xa5\x7a\x73\x00\x4b\x29\xbd\x36\xc6\xbe\x6e\xfd\xda\xc7\x52\xd2\x41\xd1\x91\x3b\xff\xab\x1b\xcc\x5d\x23\x8b\x55\x59\x55\x3b\x07\x67\x6f\x65\x50\xe2\x04\x00\x3d\x7c\x8b\x73\x07\x81\xaf\x6c\xa1\x8a\x75\xb1\x70\x8d\xc0\x9f\x84\x3e\x9f\x7b\xc8\xf9\x79\x87\x94\x47\x1f\x40\x7e\xb1\x73\x98\xaf\xf6\x84\xe5\x6b\x3b\x46\x78\xc1\x6d\xfa\x5d\xb0\xf3\x6d\xee\x91\x7d\x43\x3b\x5a\x1d\x44\x26\x13\xbc\x75\x1d\x03\xe9\xde\x67\x12\x99\x13\x8e\x65\xb6\x4a\x12\xfe\x4e\x29\x55\xee\x1f\x65\x87\x55\x73\xb6\x82\xbe\xd8\x91\xc7\xf9\xf2\x40\x7a\x5b\x99\xb4\x44\xcd\xfe\xdd\x6c\xfc\x70\x29\x1f\x3e\x32\xda\xc1\x63\xdf\x15\x4b\x32\x7d\x3b\x9e\xcd\xc6\xc3\x2d\x99\x93\xc6\xb4\xab\x23\xaf\xae\xee\xd6\xb3\x0e\xdd\x1a\xac\x07\xac\x68\x9b\x5f\x0f\x88\xa8\xf6\x1e\xb3\x5d\x3c\x48\x3b\x7d\xbd\x35\xa3\xa3\xe6\x6c\x30\x1c\x8c\xee\xf9\xdd\xe3\x88\x40\xee\xb2\x2a\xa6\x15\x1f\x3f\xce\x5e\x1f\x50\xe6\xf9\xbb\xc7\x49\x3d\xfd\x5f\x79\x1f\x86\x2c\x4f\x17\x23\xde\xdc\x95\xa8\xa6\xe3\x1a\x49\x54\x59\x4c\x7a\xac\x37\x3b\xa6\x64\x32\xc5\xda\x51\x74\xda\xec\x74\xe0\x18\xb2\xf1\xe9\x6c\x3c\xae\x67\x83\x87\x9f\x4f\xac\xb6\x63\x7c\xe3\xc7\x59\x75\x6c\x8f\xfb\xea\x6c\xef\x6e\xfa\x50\x0f\x66\xb3\xa3\xdf\xf1\x90\x6a\xdb\x3b\xcd\x25\xf6\x77\xd3\x5d\x70\xd1\x70\xf5\x71\x30\x1b\x8c\xee\xdb\x92\xdb\x05\xf4\xab\xa2\x9e\xf5\x89\xae\x21\x20\x3d\x3c\xce\x58\xaf\xc7\xaa\x61\xda\x9e\xda\x68\xe5\xd0\xe2\x5d\xfe\x09\x09\x84\x1f\x26\xe3\x87\x6a\x32\xfb\x74\x39\x7e\x28\xca\xc1\xec\xd3\xeb\x5d\x79\xbb\x11\x6c\x1b\x7e\x1d\x84\x5e\xf5\x60\x54\x15\x93\x5d\xc8\x95\x4b\xe4\xb1\x5c\x8a\xd7\xd9\x1c\x90\x57\xf3\x6a\x34\x9b\x26\xf3\xe6\x16\xe2\x35\xf2\xd5\x60\x74\x7f\x2c\x0e\x26\x6e\x74\x74\xf9\xbd\xf8\xb8\xa8\x90\xa8\xfd\xe1\x1d\xe4\xf2\xc7\x21\x7c\x1a\xd6\x89\x68\xdf\x59\x79\xff\x88\xdb\x6d\xd0\xb0\x4f\x1d\x40\x57\xe5\x63\xa8\xcf\xc1\xaf\x7f\x58\xcd\xa3\xba\x3e\xf4\xc5\x0f\xab\x79\x24\x11\x3c\xf4\xc5\x0f\xaf\x7c\xec\x00\x0e\x7c\xfd\xc3\x2b\xef\xa5\xc8\x90\x04\x98\x37\x87\x12\xe6\xee\xf2\x7b\xbb\x39\x74\x6a\x77\x15\xdf\xdf\xc9\x81\xd3\xb7\xab\xf8\xb1\x3c\xa2\x4d\xf1\x8e\xab\xd4\x50\xa5\x03\x6b\xb5\x69\xdf\x71\x95\xb6\x73\xb2\x05\xc7\x11\x9d\x7c\x48\xec\xe4\x5e\x8f\xa3\x69\x35\xeb\xac\x97\x72\xba\xea\x56\x75\xf1\x69\xad\xb3\x9c\xb4\xb5\xf4\x66\x37\x2b\xc9\x0d\x67\x93\xeb\x9c\x8d\xec\xfa\x37\xd5\x8f\x74\x0a\x79\x37\xa8\x67\xe4\xf8\x38\xf9\x3e\x43\x00\x99\xbf\x93\xbb\xe4\xcf\x69\x03\x94\x25\x0d\xe5\xa1\x98\x4e\x3f\x8c\x27\xbd\x9f\x3b\xb6\x3d\x8e\x6d\x6b\x56\x7d\x9c\x7d\x5e\x3b\x0b\xa7\xc4\xd6\x49\xed\x96\xf1\x6e\x2b\x92\x87\xb1\x99\xbd\x6c\x9d\x54\xac\xe4\xbe\xbc\xd9\xee\x66\x66\x6e\x71\x35\x63\xd1\x56\xb7\x6b\x6c\x2a\xdb\x34\xba\xd1\xc7\x11\x95\x52\xdf\x07\x55\x38\x68\x4c\x79\x46\x8e\x19\x51\xab\xca\xfe\xf1\xe4\xe2\x07\x8d\x06\x0b\x1d\x35\x96\x95\x0a\xfb\x47\x42\x85\xf7\x8c\xe3\x50\xf4\x38\xa5\xf6\xae\x11\xee\x45\x01\xf2\x58\x1a\x26\x92\xbe\x13\x98\xb6\x97\x49\xfd\x77\xe5\x2f\x7a\x59\xc9\xdc\x02\x19\xdb\x4a\x6c\x34\xbe\xbe\xee\x2b\x59\x9d\xcb\xdc\x9d\xbf\xd1\x6c\x6b\x11\x57\xbc\x90\x21\x78\x3b\xa9\x86\xaf\xbf\x62\xbf\xad\xd7\xa8\x9e\xf0\xc6\x73\x0d\xec\x1a\xbd\x26\x50\xa8\xdf\xf4\x66\x9f\x43\x33\xdf\x90\x6f\x64\xc7\xae\x31\xcb\xd6\xb7\x3b\x9d\x96\xb7\xda\x4d\xf4\xaa\xe9\x6c\x30\xa2\x3a\x3b\x4a\x35\x66\x29\xbf\xc5\xae\xc4\x09\xfb\x0a\x27\x6e\x0e\x6c\x53\xef\x8f\x53\xb4\xbb\xcb\xcf\x7e\x25\x2f\xf1\x55\x58\x39\xb5\x3d\x82\xbd\xb4\xa2\x0d\x6c\xe5\xad\xb6\x36\x6f\x5c\x71\xad\x5e\x4d\x4f\xbd\xa7\x56\x6f\x8b\xd1\xa8\x9a\xfc\xcc\x46\xc5\xfc\xf2\x6e\x30\x99\xce\xf8\xf8\x8e\x63\xd9\x0c\x9a\xed\x31\xb6\x82\x7b\x1c\xd6\x40\x71\x60\xb9\x74\x1a\x7d\x58\xd9\x2d\xe3\xaf\x8b\xcf\x1b\x7e\x47\xfd\xae\xd1\x77\x14\xdb\x36\xf8\x8e\xa2\x2b\x63\xdf\x2d\x45\xec\x2f\x99\x20\x6a\x7f\x39\xa4\xd9\xbb\x4a\xed\x24\x68\x9f\x1d\x95\x64\x61\x98\xbc\xbb\x54\x5e\x68\x0a\xde\xb1\x27\xcc\xc9\x22\xec\x46\xe3\xd7\xb0\x88\x91\xd1\xc1\x61\xd3\x5b\x6c\x70\xc7\x8d\xe4\xe5\x24\x51\x62\xa6\x4b\x4b\x08\xa4\x81\xb1\x71\xcd\x88\x5e\xef\x09\xb1\xb2\x78\xe7\x56\x62\xeb\x15\x5b\x11\x59\xbe\xbe\xc8\x07\x6d\x86\xa9\x7e\x3b\x8e\xf9\x12\x5c\x71\x1b\xfd\xed\xa2\xa3\x67\x32\x79\x26\x93\xbf\x09\x99\x6c\x51\x87\x0d\x0a\xf7\xc2\xe4\x6d\x07\xe9\x5a\x1d\x47\x2b\x84\x90\x13\xe2\x79\xa7\x0c\x7b\x16\x3e\xbf\x46\xe1\xf3\xd4\x7a\xfb\x24\xca\x17\x60\xfa\xfd\x63\x79\x6d\x37\x63\xfd\x0a\xd9\xe7\x2a\xde\x58\xb1\x6e\xa1\xf5\xfb\xd1\x37\x7f\x6f\x2a\xd3\x99\xe7\x9f\x79\xfe\xd7\xc2\xf3\xbf\x1a\x65\xa6\x35\xca\xaf\x93\xd4\xae\x6e\x44\x3e\x9f\x05\x91\xcf\x11\x44\xbe\x38\xbb\xdf\xc9\xca\x5b\xcb\x29\x15\xad\xe7\x77\x1f\x26\xc5\xc3\x43\x35\x69\xbc\xd7\x16\x4c\x93\xf5\x25\x0d\x0e\xde\x0f\x46\x3d\xfe\x30\x19\x7f\xfc\xb4\x9a\x99\x26\x95\x6c\x01\x53\xd4\xa8\x17\x89\xee\x74\x38\x83\xae\x86\x2f\xc3\xdf\x8f\x8a\xe0\xfb\x02\x51\x8f\xa8\x10\x7b\x78\x89\xe0\x48\x58\x66\x7f\x4b\x07\x84\x50\xea\x28\xda\xd9\xee\x8a\xcf\x55\x5a\x7f\xaa\x9e\x18\x0c\xeb\xed\x89\x82\xb4\x56\x74\xd5\x57\x25\x03\xd3\xe5\x68\xd6\x4f\x84\xf0\x8f\xea\xfb\xbd\x71\x88\x1e\x0e\x0e\xa8\xdc\x8e\x9a\xbc\x84\x8e\x06\x70\xd7\x5c\x08\x2e\x88\x00\x93\xe3\xc0\x9b\xc6\xa1\xb2\x0b\x9d\xeb\x37\xf8\x1e\x1b\x42\xda\xb4\x7a\x28\x26\xc5\x6c\x3c\xf9\xb9\x95\xd9\x6b\x45\x4a\x45\x88\x3d\x45\x88\x6b\x35\x7e\x44\x6d\xea\xfd\x08\x23\x75\x1a\x5e\x67\x8c\x1e\xfa\x85\x93\xd4\x15\xb3\x07\x7f\xac\xe4\x6d\x0f\xe1\xb3\x91\xb3\x52\x6b\x8b\x67\xe6\x4a\x89\x2d\x7e\xa3\x58\x62\x5f\x08\xa0\x25\xf1\x78\x11\x21\x78\x75\x3d\x8e\x58\x8a\x63\x56\x61\x6b\xe4\xda\xe2\x96\xe7\x80\xd0\xf8\xe2\xb3\x95\x30\xdb\x07\x44\xb5\x5d\x15\xcb\x71\x36\x36\xc4\xf4\x7d\x1e\x49\x07\x89\x92\xd5\xf0\x65\x45\xce\x3d\xed\x1d\x25\x98\xee\x69\xeb\x54\xe1\x75\x6b\xb3\x27\x48\xbb\x2b\x4c\xf4\xbf\xb6\xb6\xfb\xb0\x47\x7a\xd8\x27\x5c\x3c\x7c\xe5\x21\x8c\xbb\x24\xf5\x6a\x78\x8c\x00\xdf\x2e\xbd\x4b\xaa\x6f\x97\x5c\x13\xf4\xd7\x56\x23\x85\xa3\x6f\x4b\x5d\x6b\x32\x18\xc5\x20\x67\x14\xbc\x94\x24\xa9\xc4\xc5\x3e\x4f\xc8\x5f\xa1\x38\xa7\x36\xd4\x3b\x79\x0c\x44\x91\x3e\x53\xb9\xd8\x78\x81\x13\x5a\x5a\xbc\xc1\x09\x5e\x32\xbd\xc1\xbc\x75\x00\xd3\x84\x69\xdd\x29\xdb\xfe\x67\x09\x7e\x07\x88\x48\xdf\xa2\x6c\xd0\xe6\x98\x0d\x6a\x76\xe8\xb8\xa7\xe9\x44\xbf\x9d\x16\xf2\x85\xe4\xf2\xc3\x65\xea\x83\xc4\xe3\xcf\x95\x80\x4f\x92\x61\x3f\x53\xca\x3b\x56\x58\xdb\x94\xc2\x36\xb7\x3e\xbf\xf9\xed\xb7\x43\x64\x8a\x97\x3e\x4d\xeb\xe0\xad\x2f\xc0\x52\x7f\x2b\x4e\xf8\xb9\xfc\xab\x63\x1f\xe7\x37\xd8\x7e\x79\x09\x15\x7e\x53\xd5\xde\xad\x50\x7f\x96\xc6\x7c\xb8\x72\xf8\xd9\x4a\xe0\xf1\xf7\x8c\xac\x6b\x64\xbf\x82\xfe\x75\x98\x56\xb5\x5b\x5b\x3a\x5a\x0f\x3a\x50\xa9\xf9\xd6\x95\x92\x4e\xdd\xa3\xa5\x64\x74\xeb\x13\x2f\xac\x1d\xbc\x80\x98\xbe\x4a\x6d\xb2\x7c\x34\xac\x66\x93\x41\x39\x45\xf0\x9c\x15\x83\x51\x35\x61\x04\x2e\xd3\x87\x62\xf2\x9e\x64\xeb\x2c\x40\x61\xf2\x4a\x6a\x3d\x5e\x7a\x3a\x65\x1f\x98\x1d\xee\xc2\xc5\x87\xe9\x96\x08\x71\xcb\x6d\xf6\x95\x32\x28\x92\xb5\x33\x52\xe4\xb8\x65\xda\x2e\x39\x6b\x5e\xd4\x8f\x15\x27\x19\xfd\x4d\x3a\x3e\x23\x2a\x76\x4c\x65\x94\xca\x0f\xac\xbb\xa9\x18\x1c\x5a\x18\x3b\x39\xb4\xec\x8a\xec\xb8\xaf\xca\xe2\xc0\x00\x27\xee\xf0\xc2\x29\xff\xf0\xf2\xef\x1f\x6f\xab\xc9\xa8\x9a\x55\x47\xf4\x31\x1a\x0f\x8b\xbd\x73\xb9\x2c\x3e\xab\x26\x93\x82\x78\xd9\xf6\x2a\x6b\xd2\xef\x61\xaf\xbe\xa5\xd2\xde\x29\xd8\x52\xef\xa0\xa9\xd8\x52\x77\xdf\x94\x6c\xa9\x76\xc8\xd4\x4c\xab\x62\x52\xf6\x49\xf5\x5b\x01\xeb\x26\xbe\xe7\x5a\xbd\xbd\xe8\xd9\x2e\xd6\xc6\xd0\x9c\xb7\x81\xa4\x93\x01\x5d\x4e\xd2\xa1\x53\x1c\xee\x64\x5c\xc3\x5d\x31\xa8\xc9\x35\xb0\x37\x3b\xa4\xf8\xa4\xea\x0d\x26\xc8\x8e\x77\x16\x6f\xfb\x6a\xee\xf6\x89\xdd\x0c\xb6\xd8\x86\xaf\x83\x6b\xad\x03\xd8\xc1\x15\xbb\x20\xec\xe0\xca\x6b\x20\x76\x70\xbd\x0e\x18\x3b\xc4\xf3\xf7\x48\x1f\xdb\xa6\x78\x67\x4c\xa8\x0c\xee\xcb\x01\x74\x87\x88\xda\x5b\xac\xd9\x5b\xd8\x57\xae\xd9\x61\xd8\x28\x37\xa9\x2a\xba\x00\x2b\xc9\xd3\x79\xe4\x8b\x03\xe2\x35\xc1\x77\xbf\x2b\x69\x1b\x7e\xb6\x96\x5a\x87\x97\xad\x05\xbb\xe0\x63\x6b\xe1\x35\x78\xd8\x5a\xae\x63\xfd\x97\xfd\xec\xa5\x17\x9b\x45\xdb\x34\x63\x25\x7f\x9d\x6e\xd0\x00\xf7\x76\xd0\x2a\xd5\x6e\x3b\x65\x6d\x36\xbb\xdc\xd9\xda\x48\x1d\x8c\xee\xc6\x1b\x89\x1b\xdb\x57\x1b\x25\x32\x60\x6d\xa4\x67\x40\x5a\xa6\xaf\xea\x26\x50\x3c\xce\xfa\x82\x53\xd2\xc3\x64\x3c\x1f\xb4\x86\xd9\x2a\x79\x3f\x1e\xdf\xd7\xd5\x41\x45\x87\x83\x72\x32\x9e\x8e\xef\x66\x07\x95\x1e\xbf\x9f\x15\xdb\x0a\xa2\x18\x3c\x18\xdd\xef\x24\xdb\x6b\xaa\x0f\x02\xf4\x06\x67\x59\x2f\x93\xd6\x6a\x6f\xb1\x25\x64\xec\x2d\x4a\x0b\xbd\xb7\xd4\x02\x90\x37\x4a\xa2\xee\x3a\x4d\xdb\x80\x49\xa0\x5d\x86\xe4\x69\xea\xec\x85\xc3\x8d\x92\x6d\x58\x5c\x66\xaf\xc3\x63\x86\x91\x5d\xd3\xfc\xef\xbb\xf1\x84\x2c\x57\x6e\x8b\x49\x56\x28\x7f\xde\x67\xe0\xc6\xa0\x37\x2e\xa7\xbc\x1e\x8c\xde\xb3\xa2\x79\x9f\xbd\x75\xea\xaa\x98\x8c\xf6\x56\x5a\x35\x46\x3b\xb0\x9f\x76\x95\xed\xdd\xac\xab\x8d\xc5\xbf\x27\x55\xfd\xa7\x1f\xfa\x55\xbd\x8c\x02\xd0\x59\xb2\xe1\x26\x34\x57\xc3\x71\xaf\xa8\xff\x57\x59\x8f\xa7\xd5\xcf\x17\xb9\x89\x66\xe5\x16\xcd\x1c\x1b\x29\xb9\x45\xad\x8f\xae\xbc\x46\xc4\x8f\xae\xdf\x41\xdb\x8f\x6e\xa3\x4d\xf2\x8f\xae\xbe\xc9\x09\xa8\x40\xd7\x12\x11\x2e\xa1\xc6\xd6\x15\xdf\x7b\x51\x7d\xbd\xd4\x7a\xac\xef\x76\xc1\x2c\x5e\xee\x6f\xb1\x5d\x70\x77\xa3\x2b\xfc\x67\x7f\xc3\x9b\x85\x77\x37\x9e\x18\xd0\xfe\x76\x5b\xe5\x76\x37\xb9\xa4\x23\xfb\x9b\xdd\x28\xbb\xb5\xe9\xe3\xaf\x87\xee\xae\xb2\x76\x85\xf4\x4a\xe0\xb7\x49\xf5\x50\x15\xb3\xcb\xd1\x38\x7f\x7b\xbd\x92\xf7\x30\x4e\x01\x24\x2e\xcb\x8a\xae\x44\xfc\xae\x37\xfe\x30\x9a\xce\x26\x55\x31\x5c\xd9\x8f\x80\x24\xd9\x0f\xe6\x6c\xa1\x51\x2c\x06\xb3\xb7\x46\x22\xae\xab\xa6\x8c\x7b\xab\x8c\xe8\x06\xc9\xa3\xaa\x64\x8e\x79\x78\x85\x75\xf9\xa0\xbb\x42\x6f\xd0\x36\x44\x6d\x89\x9d\xab\x55\xea\xc1\xa8\x9a\x32\xb8\xf6\xbb\x72\x5b\xfb\x0d\x7b\x6e\xc4\x5f\xec\xe9\x6c\x6e\x0f\x01\x51\x6f\x68\x32\xf0\xd7\xb2\xd5\xad\xc5\xa7\xd5\x6c\x36\x18\xdd\xaf\x97\x7f\x7c\x38\x6e\xb9\x77\x97\xef\x58\xec\xdd\x15\x3a\x96\x7a\x77\x85\x8d\x85\xde\x5d\x7c\x63\x99\x17\xc5\x3b\x56\x6c\x3d\xaf\xbd\x5e\xed\x73\xcc\x37\xc5\x2a\x60\x6c\x6c\x02\x54\x1f\x1f\xc6\xd3\xaa\xc7\x1f\x8a\x59\x7f\xe5\x54\xf0\x0d\x24\x8c\x65\xbb\x24\xdb\xe3\x9a\x38\xbe\x1e\xf2\xf0\xa3\x6b\xf5\x6a\x28\x7a\xbd\x09\xea\x70\xbd\xe3\xc7\xda\xab\xe1\xb6\xea\x17\xf3\xc1\x78\x72\x62\x75\x92\xce\x4e\xed\xbb\x01\xe3\x13\xab\x23\xa7\x4e\x04\xf2\xc4\x06\xe8\x9c\xe6\xc4\xba\xf5\xb8\x7c\x9f\xe2\xfb\x9c\xd8\xc0\xb0\x9a\xf6\x4f\xac\x8a\x1c\xee\xd4\xaa\x1b\x88\x7d\x44\xe5\x8c\xe4\x27\xd7\x9e\x9d\xfa\xc2\x0f\xe3\xc9\xec\xd4\xaa\x93\xf1\x6c\x5c\x8e\x4f\x85\xb1\xd9\xec\xd4\x9a\xcd\x96\xc9\x31\xb5\x9b\x53\x9a\x25\x62\x1c\x41\xc2\x9a\xca\x19\xaa\x4f\xa8\xb9\x58\xdf\x53\xea\x6e\x58\xb4\x9c\xd2\xca\x62\xd2\x8e\xaf\x8b\x32\xf7\x0f\xc3\xea\xe7\xae\xba\x3b\x4e\x34\x8e\x39\xcd\xd8\xb8\x85\xe6\xf0\x0a\xc9\x32\xea\xd8\x5a\xb4\x2f\xbd\xb7\xd2\xfa\x56\x78\xab\xcf\x13\xea\xed\x39\x7f\xd9\xdc\x3e\x4f\x2f\xd7\xbd\x7f\xde\xb9\x23\xce\x89\x7a\x4e\xab\x95\xce\x69\x31\x53\xb4\xec\x15\x06\xfe\xfd\x31\x9c\xf9\xe4\x46\x5f\xa2\xa5\x4e\xee\x7d\x7c\x3b\xbb\xf9\xf9\x49\xed\xed\xe2\xf0\x27\x35\xb8\x9d\xe7\x9f\xd6\xdc\x0e\x29\xe0\xa4\x06\x77\xcb\x05\x27\x35\xb9\x55\x52\x38\xa9\xb5\xdd\xb2\xc3\x49\x4d\x6e\x93\x26\x4e\x6a\x6c\x9b\x7c\x71\x5a\x63\x5b\x25\x8e\x93\x9a\xdb\x21\x83\x9c\xd8\x5e\xb7\x54\x72\x5a\x63\x5b\xe4\x94\xd3\x1a\xdb\x21\xb9\x9c\xd4\xe0\x16\x59\xe6\xa4\xb6\x76\x48\x37\x47\xb4\x77\x88\xbc\x73\x42\x73\x5b\x25\xa0\x13\xda\xda\x21\x13\x9d\xd2\xda\x21\x52\xd2\x09\xed\xee\x90\x9b\x8e\x6f\xad\x53\x92\x5a\xb5\x69\x83\xdb\xa2\x7c\x4f\x1b\x16\x6f\x96\x11\xcf\x57\xf3\x17\x1b\xe0\x5b\xf2\x97\xbb\xdd\xdd\x05\xfa\x6b\x27\x02\xeb\x27\x04\xf8\x1a\xbc\x1c\xd7\x75\xb2\x74\x7e\xf3\x39\xc2\xc3\x89\x6d\x7d\x46\x03\x6d\x51\xe1\xd8\xea\x5b\x24\x84\x13\x9a\xe9\x14\x0c\x4e\x68\xa7\x43\x1e\x38\xa5\x95\x2e\x31\xe0\x84\x76\xb6\x70\xff\x13\x5a\xda\x64\xfa\x27\x34\xb2\x85\xd7\x9f\xd0\xd2\x06\x8b\x3f\xa1\x8d\x0d\xce\x7e\x4a\x1b\x9b\x0c\xfd\x84\x56\xba\xf8\xf8\x49\xcd\xcc\x3e\x7b\x52\x36\xb8\xf6\x29\x6d\x74\x31\xeb\x13\xda\x59\xe7\xd1\x27\x34\xd1\xc5\x9a\x0f\x6e\x66\x27\x47\x3e\xba\x95\x4d\x46\x7c\x74\x13\x5d\xfc\xf7\xf8\x46\x76\xb2\xdd\xa3\x9b\xeb\xe2\xb6\xc7\x36\xd2\xc9\x64\x57\xec\xc2\xbb\x0e\x91\x5b\xf9\x83\x69\xbe\xd4\xe7\x4d\x67\x76\xd7\x81\xf2\xa6\x69\x39\x3b\xc0\x0a\xfc\xcd\xf6\xea\x3b\x2c\x6c\xbb\xc7\x7f\x4c\x03\x5d\x2f\x78\x4c\xfd\xc3\x66\xe0\xb3\xdf\xf9\x92\xbe\x55\xbd\xf5\x8a\x9f\x33\x4f\x9f\x31\x45\x9f\x35\x3b\xc7\x4c\xcc\xe7\xcc\x49\x63\x80\x92\xb6\x8f\x16\xb4\x66\x9f\xbd\x4a\x2a\x9e\x88\xca\x61\x65\x1b\xea\x71\x58\xe9\x06\xaf\x37\x4a\x4f\xc6\x1f\x3f\xf1\xe6\x18\x6a\x7a\xc4\x99\xd1\x41\x35\x0f\x2e\xde\x16\x1c\x77\x17\xde\x22\x26\xee\xad\xd4\x29\x14\xee\xad\xd5\x21\x02\xee\xaf\xd3\x25\xf0\xed\xad\xb5\x45\xbc\xdb\x5b\x6f\x53\x98\xdb\x5b\x65\x8b\xe8\xb6\xb7\xde\x86\xa0\xb6\xb7\xc6\x86\x58\xb6\xbf\xc6\xa6\x10\xb6\xb7\x4e\x97\xc8\x75\x40\xa5\xd9\x91\x2f\xb3\x21\x4e\xed\xaf\xd1\x25\x3c\xed\xad\xb5\x2e\x2a\xed\xad\xd0\x25\x18\x6d\xa9\xb4\x53\x0c\xda\x53\x67\x53\xe8\xd9\x53\xa1\x4b\xc4\xd9\x57\x65\xa7\x40\xb3\xa7\x72\x97\xf8\xb2\xbb\x4a\xa7\xb0\x82\xaa\xfa\xe3\x94\x1b\xa1\x77\xea\xee\x8b\x62\x66\x67\xb1\x59\x71\x9f\x76\x27\x56\x57\x87\x1c\x8a\x26\xd5\xbc\x2a\xea\xe4\xa5\xbd\x60\x2c\x6d\x43\xe3\xd5\x72\x1d\x39\xdb\x7d\xd2\x96\x05\x1b\xa3\xc3\xad\xe1\x10\x17\x45\xdb\xa6\x7c\xd4\x4e\x32\xb1\x2b\x06\x23\x3e\x2a\xe6\x8d\x3d\xe2\x96\x0a\x1d\x36\x86\x77\x55\xd5\x5b\x6c\xa9\x1c\x61\x9b\x98\x88\xc0\x94\xad\xb9\x1c\xef\xe8\xb8\x6d\x74\xb8\xb3\xdf\x6d\x8e\xaf\x70\x37\xae\x37\xa7\x63\x5b\xc4\xae\x96\x2d\xfb\x9a\x87\xdb\xa2\x89\xbd\x31\xe6\x5a\x29\x45\xbb\xde\xb6\x71\xb5\xa2\x82\xb5\x86\xb1\xd3\xfd\xec\x28\x89\xf8\x54\x47\xb6\x2e\xa1\xef\xe4\xb6\x36\x85\xc0\x93\x9b\xea\x12\x0a\x4f\x68\xec\xb4\x81\x6c\x11\x1a\x77\xfb\xf8\x9d\xb0\x5c\x27\xb8\x0b\x6e\x5f\xaf\x53\x1a\xdb\xb6\x60\xa7\xb4\xb5\x7d\xc5\x8e\x6b\xed\xc4\xa1\x6c\x5b\xb3\x1e\xd2\xf3\x55\x79\x70\x71\xa5\xd7\xb0\x98\xbe\xdf\xb4\x7d\xec\x4e\x6d\xd5\x59\xb3\x89\x7c\xdd\x99\xb8\x71\xb1\x6e\xf9\x38\x99\x54\xa3\xd9\x5b\xfc\xd1\x71\x07\x7b\x77\x54\x89\xae\x53\x8d\xed\xc7\xe6\x07\x45\x83\x6c\x02\x47\xee\x74\x33\x62\x4d\xe4\x8e\x34\x96\x05\x77\x6a\x45\x03\x36\x42\x6c\xbe\xe6\x77\xd5\x6d\x55\xdd\xa9\xd7\xf3\xc1\x74\x70\x3b\xa8\x07\xb3\x4f\x97\xf4\xb5\xae\x5e\x3f\x14\xbd\xde\x60\x74\x7f\x29\x98\x79\xf8\x78\xb6\x24\xfd\x8f\xb3\x24\x7d\x49\x3f\xe6\xb3\x51\xea\xd6\xbc\xf6\xd2\x6f\xf5\xf8\x3e\xd0\x5c\x75\xf7\xb5\xd8\xc5\xe3\xac\xcf\xef\xc6\x93\xe1\x9b\x87\xe4\xb4\x4f\xae\x5b\xdf\xaf\x54\xff\x42\x6e\xe5\x67\xf3\xd9\xb3\xf9\xec\xd9\x7c\xf6\x6c\x3e\x7b\x36\x9f\x3d\x9b\xcf\x1e\x65\x3e\x7b\x8e\x42\xf2\x9f\x19\x85\xe4\x6c\x36\x7d\x0e\xc8\x72\x4a\x40\x96\x9d\x16\xe5\x27\x46\x72\x39\x5b\xa2\x9f\x2d\xd1\xcf\x96\xe8\x67\x4b\xf4\xb3\x25\xfa\xd9\x12\xfd\x6c\x89\xfe\xed\x5a\xa2\xa7\xd6\xf6\xee\x6f\xb5\x8b\x1d\x14\x97\xed\xe5\x82\xa2\xed\x6a\xf3\x1c\x39\xed\xc5\x23\xa7\xed\x9b\xf3\xdd\x11\xd6\x5a\x11\x7c\x07\xff\x2e\xeb\x62\x3a\xfd\xd3\x0f\xb4\x8d\xfe\xf3\x9b\x6d\x71\xd8\xce\xa1\xd0\xb6\x84\x42\xdb\x15\x1c\xeb\xd7\x09\x93\x76\xf6\x16\x39\x7b\x8b\x9c\xbd\x45\xce\xde\x22\x67\x6f\x91\xb3\xb7\xc8\xd9\x5b\xe4\x33\xbc\x45\xb6\xde\xcd\x7c\xf6\x27\x39\xa5\x85\x43\x27\x71\xdf\xb4\x9d\xc3\xc0\xfe\xc6\x61\x60\x7f\x97\x9e\x3d\xbb\x40\xf4\x14\xbf\xa0\x6f\x3b\x00\xee\xd9\x53\xe9\xec\xa9\x74\xf6\x54\x3a\x7b\x2a\x9d\x3d\x95\x7e\x27\x9e\x4a\x5b\xa2\x99\x77\x7a\x1d\x7d\xf9\x10\xe7\xf9\x32\xfd\xe6\xd6\xc0\x5e\xcb\x6d\xe7\x57\x76\x67\xca\xfb\x9d\xd9\x4f\xeb\xe7\x5d\x5e\x5a\x2f\xef\xfa\x74\x4a\x48\xf6\x53\xdd\xa5\x0e\x0b\xe5\xfe\xc2\x3e\x56\x27\xc4\x82\x3f\xf8\xfd\xbe\x78\x08\xf9\x97\x70\xfa\xda\x16\x6c\x7e\x9b\x33\xd8\x39\x08\xfd\x97\x0b\x42\xff\x2b\x3b\xda\x9d\x63\xde\x7f\x83\x31\xef\xcf\x7e\x91\x5f\xcc\x2f\x72\x87\x8a\xfd\xf9\x5e\x96\x2f\x7d\x57\xc1\xd9\xf1\xf2\x57\x71\xbc\xdc\x0b\x13\xa7\xfa\x71\x6e\xba\x60\xf6\x06\xd3\x87\xba\xf8\x74\x39\x18\x91\x87\xd7\x2d\x6a\x8d\xaf\xcb\x31\x59\x53\x5e\xbe\x7a\xd5\xe5\x3c\xb8\xe2\x68\x48\x97\x63\x66\xbf\xa9\xd7\x1f\x06\xbd\x59\xff\x52\x82\xaa\x86\xaf\xf3\x1d\xf3\xe9\xc7\xbc\x9a\x90\x1a\xc2\x8b\x7a\x70\x3f\xba\xa4\x03\xf1\xd9\xf8\xe1\x79\x87\x54\xd9\x76\x0d\x1d\x0c\x8b\xfb\xea\xf2\x71\x52\xff\xf1\xbf\x21\x13\xbc\xa4\xdf\x7f\x9e\xce\xef\xff\xeb\xe3\xb0\x7e\x5d\xf6\x8b\xc9\xb4\x9a\xfd\xf0\xcf\xff\xf9\x13\x0f\x17\x7f\x99\xce\xef\xd9\x7c\x50\x7d\xf8\xeb\xf8\xe3\x0f\xaf\x04\x13\x4c\x19\xa6\xcc\x2b\x76\x37\xa8\xeb\x1f\x5e\x8d\xc6\xa3\xea\x15\xfb\x38\xac\x47\xd3\x1f\x5e\xf5\x67\xb3\x87\xcb\x3f\xff\xf9\xc3\x87\x0f\xf0\x41\xc3\x78\x72\xff\x67\x25\x84\xc0\x86\x5f\xbd\xf9\x0b\xa9\x8e\x58\x89\x4f\x1e\xeb\xea\x87\x57\xd5\xbc\x1a\x8d\x7b\xbd\x57\xac\xac\x07\x0f\xeb\x69\xbd\x1f\x5e\xbd\x93\x92\x49\xdb\x57\x73\xd5\xe7\x6a\xce\xd5\xd3\x50\xf0\xd0\x57\x73\xd7\xe7\xea\xc6\x3f\x0d\x21\x46\x6e\xdf\x3a\x30\x9e\x29\xa6\x98\x03\x13\x98\x62\x52\x4d\x0d\x26\x49\xc1\x22\xc4\xc8\xa4\x78\x2b\x3d\x58\xc5\x14\xfd\x5f\x7c\x97\xea\x1f\xf9\x3b\x93\x12\x0b\xaa\xa7\x77\x52\x31\x25\x4a\x6e\xc0\x28\x26\x78\xe0\x1a\x6c\xe0\x81\x87\x69\xfa\xc2\xe8\xc3\xf0\x07\xc3\x1f\xe9\x0b\xa6\x3d\x35\xb3\xf1\x07\xa5\x85\x10\xaf\xfe\xfc\xe6\x2f\xf8\xd2\x6f\xfe\xdb\xf7\xaf\xcf\xf3\xfd\xab\xce\xf7\xf3\xc1\xb7\xea\x6d\xdb\x24\xdf\x7f\x31\xd6\xea\x05\x33\x2f\xb2\xb2\x07\xaf\x26\xad\x52\x04\xab\xa5\x64\x4a\xbe\x55\x12\x84\x97\x81\x29\xc9\x94\x02\xa1\x75\x64\x32\x82\xd6\x52\x33\x25\x41\x39\x9a\xfe\x18\x7d\xbc\x96\x1a\xbc\x16\x81\x19\x88\x21\x3a\xf7\x56\x2a\x88\x4e\x58\xa6\xc1\xd9\x28\x22\x2e\x89\xd0\x71\xe5\xb7\x00\xe5\xa2\x6c\xca\x5f\x2b\xf0\x3a\x08\xd3\xb4\xf7\x56\x42\x74\x0e\xe1\xa5\xe9\x0e\xa2\x0a\xb8\xe2\x58\xc5\xb8\x10\x22\x53\xf2\x2a\x0f\xf5\x5f\xef\xa4\x66\x32\x5c\x49\x79\x23\xdd\x95\xd4\x37\x32\xa4\x24\x43\x49\x82\x92\xcc\xbf\x56\xd6\xf4\xae\x08\x77\xda\xaf\x2e\xeb\xf1\x9e\xc8\x47\xb9\xa1\x7e\x01\xf2\x78\x5e\xd4\x7d\x8b\xfa\x82\xb4\xf1\x3c\xd9\x7b\x31\xe8\x57\x72\x0b\x7c\x19\xd3\xd4\x2f\x65\x79\xfc\x59\x66\x02\x2f\x6c\xcf\xd1\xb9\xef\xfa\x82\x07\x51\xa7\x6d\x71\x77\x8d\xea\xe0\x7d\xce\x6f\x52\xca\x24\x14\x63\x4a\x96\x12\xac\xc1\x8e\xc1\x0a\xcd\x25\x38\x17\x99\x04\xaf\x25\xd7\x20\x84\x4a\x14\x80\x10\x3a\x96\x1c\xbc\xe7\x12\xb4\xe6\x0a\x5c\x94\xe9\xab\x06\xe3\x14\x13\x09\xd5\x13\xa2\x87\x84\xe7\x09\xcb\x13\x8e\x2f\x30\x9c\x29\xd9\x97\x16\x84\xd3\x4f\x09\xbd\x93\xd8\x85\x02\x18\x8a\x5e\x86\x7e\x9a\xbe\x9a\x9b\xdf\x89\x78\xf9\x2d\x4f\x74\x47\x58\x9b\xc3\xdd\x6d\x7f\x5b\x81\x51\x33\xa9\xfb\xd2\x80\xaa\xb9\x06\x87\x0c\xea\x5a\x5a\x26\x43\xed\x78\xfa\x27\xc1\x30\xfc\xe4\xdc\x2b\x3d\x57\xab\x13\xa1\xaa\x5b\xa1\xe3\xee\xb9\x38\xcd\xa3\xf4\x54\xe7\xd0\xc3\x5c\x19\x7f\x6b\x99\xee\xc5\xe7\xfd\xb7\x92\x97\x5e\x1e\x80\x8e\xbb\x4a\xf7\xc5\xd1\xe7\x57\x20\x75\xa8\x1e\xcb\x6b\xd4\x78\x23\xb3\x4c\x2a\x94\x07\x6d\x4a\x65\x96\xd9\xf4\x25\xa5\x49\x85\x25\xfc\x22\x5b\x52\x92\xd4\xf4\x9d\x92\x65\xfa\x9f\xbe\xa7\x74\xc5\x72\x1f\x47\x91\xac\x5d\xbe\xf7\xf9\x68\x7b\xa7\x6b\xc1\x8b\x5e\x93\xbf\xdd\x5b\xa3\xcb\x48\xee\xb7\xa5\xa1\x96\xe9\x2b\x19\xdf\x2a\x01\x92\xa1\x6a\xc0\x34\xa0\x7c\xce\xec\x0d\xa6\x4a\x46\x19\xe9\x41\x0b\xa8\xe4\x95\x7d\x9b\xcb\x68\x96\xab\xc9\x78\x63\xdf\x6a\xaa\x4a\x1f\x66\x99\xfe\xd7\x3b\x69\x69\x59\xfd\xb5\xf4\x8c\xbe\x5f\x37\x4b\x8c\x29\x81\xc0\x88\x8a\xf8\xeb\x06\x8c\xae\x31\x95\xf9\xeb\x26\x3b\x83\xd1\x75\xd3\x40\x48\xa0\x73\xdd\x80\xd1\x75\xd3\xc7\xaa\x86\x50\x7a\x6d\x8c\x3d\x4a\xc7\xde\x19\xb6\xac\x3b\x44\xd3\xa9\xc1\xac\x3a\x5a\xfb\xad\xe9\xf9\x7f\x02\x0c\xfc\x56\x2c\xe6\x3f\x61\x6e\x8f\xd1\xc0\x4f\x8a\x3a\xf5\xc2\xee\xb5\x2f\xee\xb2\xff\x32\x8e\x0c\x2f\xe5\x9e\xb4\xdb\xa6\xeb\x48\xcb\xd4\x97\x34\x6e\xdc\x31\xb0\x6f\x51\xbf\xb6\x0c\x85\xc7\x52\x82\xc4\x4e\x19\xe2\x2c\x53\x73\x69\x4a\xc1\x24\x48\x8e\xbf\xb9\x62\xea\xca\x96\x9c\xca\x70\xc5\x21\x72\xc5\xd5\x8d\x2d\x05\x26\xe1\x2f\x2c\xf3\x34\xcc\x88\x68\x16\xa8\xbc\x22\x0d\x25\x5c\xcd\xc9\x7e\x29\x71\x25\x54\x66\x4d\x76\x23\x71\x35\x0d\x64\x54\x5e\x91\xb8\x32\x2a\xff\x3e\x74\xee\xdf\xdd\xe4\x3f\x6f\x8f\xfa\x78\x5c\x5c\xaa\x75\x21\x35\x3b\x51\x6c\x3b\x26\xda\xf0\xb1\xc8\x56\x9a\x5f\xef\x31\x91\x62\xea\x6d\x3e\xa3\x5b\x39\xac\x7b\xdb\x1c\xc9\xa5\x14\x4c\x62\x4a\x6d\x3b\xb2\x7b\xab\x72\xc1\xc5\xd1\x9d\x62\xea\x5f\xef\xa4\x40\xee\x87\x6a\xcd\xf5\x52\x8f\xb9\xc6\x54\x03\xc4\x68\x93\x2e\x63\xc3\xb5\x8c\x2c\x50\x46\x8b\x35\x6e\x2a\x84\xc7\x47\xa6\x3d\x2a\x28\xe9\x6f\x2d\x3a\x7e\x53\x8b\xf1\x9b\x1d\xcb\x7c\x4b\x93\x74\x8c\x30\x77\x4a\x48\xca\x17\x08\x77\xb8\x2b\xd8\xe0\x6f\x18\x8b\xe7\x8b\x44\x5a\xe9\x7c\xd7\x5f\xdb\x05\xfa\x25\xfd\x63\x3b\x5f\xe8\x48\xa7\xa6\x17\x74\x00\x39\xdd\x37\xa1\xe3\x45\xbe\x45\x29\x76\x0b\x71\x9a\x1a\xa2\x35\x62\xf1\x9f\xe7\x04\x2e\xc5\x3f\x56\x49\xd0\xd3\x90\x2b\x26\x6d\xcd\x2d\xb7\x4c\x82\x91\x5c\x26\xd5\x32\x51\xa0\x1a\x09\x10\xf7\x44\x94\x22\x0b\x35\x8f\x2c\xfe\x3e\x24\xd0\xaf\x6a\xe2\x9e\xf7\xba\x6b\x7f\xa6\xaf\xf3\xe9\x55\x5f\xdc\x02\xf7\x45\x6c\x37\xbf\x45\x54\x8d\x4c\x3a\x64\xea\x06\x82\x66\x52\xd5\x08\x30\x8a\x40\xe7\x3a\xa6\xbd\x23\xe6\x29\x31\x83\x52\x2e\xff\xfb\x40\xb7\x17\x7f\xf9\xe7\x2f\x63\xf8\xfc\x0d\x9e\xe9\xb8\xa4\xb2\x22\xa5\x21\x7d\x55\x7a\xe6\x51\x96\x0c\x24\x3b\x32\x29\x6a\xc7\x1c\xcb\xe7\x61\x69\x7a\x77\x52\xa2\x63\x23\x12\x7c\x59\xd7\x80\xcf\xa2\x1e\xdf\x32\xb9\x78\xd9\x75\xfd\x96\x68\xc5\x4b\x43\xf4\x9e\xdb\xeb\x4f\xf4\x8b\xfa\x26\x61\xca\x82\x17\x16\x49\x6b\x08\xb6\xe6\x06\x6c\xc0\x47\x64\x8b\x6f\xcb\x19\xe5\x34\xc7\x38\xdd\xbf\x33\xe8\xfa\x42\x73\xf0\x7c\xd8\x95\x3f\xdf\x22\xd8\x04\x50\xd1\x32\x8f\xf3\x56\xe3\x2c\x31\x9a\xa5\xc5\x37\x9a\x9d\xf4\x58\xb1\xbc\x48\x29\xbf\x0f\x98\xf9\x22\x13\x70\x00\xab\x3d\xe5\x7a\xe9\x9d\x37\xe9\x7d\xc9\xdb\xf8\x0e\x6b\xe4\x5b\x84\x7f\x62\x3e\xd2\x11\x37\x4a\x72\x2b\x71\x28\xe9\x98\x0c\xa8\xee\xd9\x58\xa7\x65\x67\xee\x3a\x97\xfd\x7d\xc0\xfd\x8b\xbe\xf8\xf3\xde\x0b\xf2\x6a\xb8\x2b\x06\x35\x96\x60\xbd\xd9\x0b\x4a\xe2\x9a\x29\x71\xfc\xa6\xaf\xd4\x60\x83\xab\x35\xd7\xd7\xd2\x81\x91\x86\xf4\x16\xcd\xe8\x1f\x59\x9a\x45\x4c\xad\xb9\xc6\x7f\x4c\x5f\x7b\x2c\xcf\x64\xc0\x2a\x5c\x81\xb7\xf4\x20\x2a\x60\x88\x20\x18\x46\x09\xf8\x78\x7a\x27\x35\x44\x61\x21\x58\x57\x2a\xf0\xc2\x81\x89\x89\x9a\x60\x01\x6b\x0c\x33\x10\xa4\x63\x16\x9c\xa9\x41\x69\x03\xc2\x61\x49\xe3\xc0\x5b\xc3\x34\x84\x40\xcd\x45\xa6\xc1\x32\x0b\x42\x3b\x0e\xc6\x50\xe5\xa8\xb8\x02\x11\x34\x33\xa0\xbd\xe4\x16\x82\x77\xe9\xfb\x9c\xab\xd2\x82\x20\x33\x57\x03\xc1\x05\x6e\xb1\x45\xa5\xb9\x03\x69\x15\x28\x83\x55\x15\xd9\xb6\x2a\x8f\xec\xd0\xa9\xc0\x35\x28\xe7\xb9\x81\x18\x2d\x97\xe0\x43\xe4\xc9\xda\xd5\x5b\x0f\xd6\x19\x24\x84\x5e\x31\x05\xd2\xe1\x7b\x3a\x15\x39\x78\xe5\xb9\x02\x27\x2c\x07\x6d\x2c\xd7\x60\x8c\x02\xed\x14\x87\xa0\x1d\xbe\x2e\x07\xab\x3c\xd6\x89\x86\x83\x52\x38\xee\xa0\x34\x97\x20\x42\x84\x28\xb1\xa3\x28\x24\x53\x20\x24\x4e\xa6\xb4\xd8\x41\x0c\x9e\x83\x14\x12\x74\xb4\x1c\x44\x44\x12\x2b\x24\xbe\x8c\x04\x25\x15\x18\x15\xc8\xc2\x16\x53\x91\x69\xe3\x5b\x1b\xa1\xf1\xdb\x5c\x95\xdc\x80\x94\x9e\x09\x6e\xc1\x79\xc5\x21\x3a\xee\xc0\x98\xc0\x15\x04\x6f\x38\x38\xab\x70\xf8\x12\xa4\xf6\x38\x62\xeb\x99\x84\x10\x14\xb7\x20\x65\xe0\xb8\x28\xf8\xfa\xb8\x14\x12\xe7\x24\x62\xbe\x8e\x92\x1b\x9c\x9f\xc2\x40\x40\x21\x22\x44\x26\x98\x90\x1a\x1c\xce\x93\xf7\x6f\x23\x28\x85\xaa\xae\x72\x88\x44\x4e\x68\x30\x5a\xb2\xc5\xf2\xdb\x55\x8c\x71\x3f\x79\x17\xd4\xab\x55\x24\x1d\x8d\x47\x4f\xd5\x64\x7c\x90\x9d\xeb\xe7\x5e\x11\xd2\x5d\xef\xd7\x89\xb6\x7d\x60\x8c\xeb\x43\x63\x21\x7f\x6e\x30\x88\x2f\x11\x6f\xe0\xe5\x48\x1a\x92\xdf\x70\x18\x49\xbb\x6f\xb1\x89\x0e\xea\xbf\x42\xf5\x02\xb8\xa8\x99\x14\xe0\x85\x2f\x24\x04\x87\x70\x8b\x4f\xc1\x24\x93\x1c\x84\x70\x88\xf6\xca\xb0\x76\x26\x66\x63\x26\xa3\xcc\x15\x78\x8e\x4e\xfe\xcd\xd2\xf9\xd4\x0a\x65\x05\xad\x1d\x8b\xe0\xbd\x2b\x20\x58\x8d\x9f\xd4\x01\x13\x88\x5f\xc2\xaf\xa4\x62\x3a\x62\xb7\x17\x1e\x25\x77\xa7\xc9\x83\xc9\xda\x8d\xaa\x20\xa4\xe7\x20\x7c\xc9\x41\x48\x10\x4a\xa5\xbf\xc6\xe0\x5f\x0f\x58\x1d\x09\x9e\x66\x01\x74\xaa\x4d\xc8\x97\xba\xe0\x10\x95\x25\x92\x17\xdb\x19\x4c\x82\xb5\x11\x94\xb5\x25\x08\x85\xf4\x03\x84\xf2\x88\xd0\x20\x44\x04\xad\x75\x01\x41\x49\xfc\x34\x2d\x39\x43\x1e\x01\xef\xa4\x87\xe8\x3d\x8e\xd6\x38\x5f\x40\x30\x11\x3f\x79\x26\x25\x38\xcf\x41\x45\xb7\x92\x4e\x93\x18\x83\xe2\xe0\xa2\x2a\xc1\x68\x0d\xc2\x6b\xf0\x06\x8c\x43\x9d\x25\x22\xc1\x28\x40\x29\x89\x1f\xaa\x20\xf0\xe5\x1c\x08\xef\xb0\x3b\x15\x1c\xbe\x9d\x0b\x6b\x73\xc3\xf1\xbd\xb0\xcb\x60\xd6\x66\x16\x33\x18\x65\xa0\xd2\xed\x2c\x91\x25\xed\xe5\x7a\x03\x12\x4c\x44\xd2\xad\xc2\x5a\x03\x94\x81\xe9\x58\x5f\x2b\x64\x44\x4e\x6f\x54\x87\x40\xfc\x2f\xd8\xf5\xee\x03\xd9\x67\x07\xbb\x02\x31\x7f\x73\xca\x07\xdd\x82\x98\x00\xc1\xa4\xc3\x54\x6d\x90\x88\xfb\x18\x98\xe0\x01\x5c\x40\x32\x1d\xac\xcd\xdf\x03\x38\xa9\xde\x82\xb4\x96\x19\x90\x0e\x89\xbf\x30\x16\xb4\x64\xd4\x02\x68\x59\x04\x70\xc6\xb2\xf4\x4c\x63\xb0\x79\x0e\x3c\x6d\x3f\x0a\x8b\x6c\x43\x7b\x55\x38\x64\x36\x2c\x3d\xd3\x54\x7b\xa4\xf8\x1c\x17\x82\x39\x08\x5e\xe5\xa7\xc8\xff\x10\xae\xad\x63\x1b\xf5\xd8\xb2\x5e\xbd\xec\xc0\xe0\x50\x70\xb9\x9c\xcb\x80\xb3\x1c\xc8\xd3\xe6\x74\x6c\x63\x08\xf7\x4b\xa6\xb0\x25\xa4\xce\xb7\x28\x6f\x4b\x0d\x41\x31\xfd\x56\x6a\x32\xe0\x47\x28\x51\xa0\x11\x94\x24\x93\x25\x97\xa0\x99\xe0\x0a\x0c\xc2\x15\x42\x1f\x53\x57\x66\x61\x28\xc4\x92\x69\xd0\x5c\xba\x64\x4c\x94\x6c\x8b\x98\x5a\xb1\x37\xca\xf6\x45\x73\x1e\x41\x68\x0e\xd1\x2e\xcc\x8a\xb2\x95\x11\x57\x7d\x14\x16\xc2\xd3\xbb\xc8\xa4\xbe\x72\x73\xd5\xd7\xe4\x79\xce\x35\x73\x7d\x3b\xe7\x0a\xd3\x9e\xde\x39\x16\xe7\xaa\xef\x6e\xe2\x95\x7b\x1a\x5a\xee\x4a\x20\xc2\x21\x19\x18\x8b\xc3\x9d\x72\xfa\xc2\x09\x87\xf0\x3b\xc7\xef\xf4\x17\x53\x9e\xde\x19\xa6\xe4\x8d\xed\xab\xb9\x04\x21\x7c\x5f\x0a\xfa\x61\x21\x46\xd5\x47\x12\xa3\x6f\xa4\xbf\x92\x61\x6e\xae\xcc\xd3\x90\xfc\xd3\xb9\x9e\x73\x7d\xa5\x70\x38\x7d\xee\x41\xc8\x39\xca\xa7\x8a\x49\x53\x6b\x88\x91\xfd\x5e\x9c\xb2\xce\x20\xf0\x25\x40\xe0\x18\xf3\x90\x2f\x70\x3d\xd4\xcb\x45\xb8\x3f\x35\xe8\x65\x67\xbd\x6f\x92\x46\x2a\x26\x03\x78\xfb\x56\x5a\x54\xb6\x62\xfa\xd5\x3c\xdb\x69\xea\x8a\x5c\xca\x51\x7b\x8f\x5e\xb8\xc5\x5f\x45\x56\x92\x4a\xbe\xf5\x20\x54\x34\x26\x59\xad\x37\xb9\x9a\x49\xf5\x56\xb3\x26\xaf\xf9\x8b\xc9\x4c\xdf\x58\x50\xf6\x6d\x00\xe5\x95\x08\xc8\x44\x6d\x7a\xb4\x52\xa4\x7a\x9b\xfe\xe6\xe1\x34\x99\xcd\xb0\xd2\x97\x7f\xbd\x53\x02\xbc\xd5\x8a\x45\x08\x31\x48\x73\x2d\x03\x58\x67\x49\x74\x52\xd2\xbf\x95\x01\x4c\x50\x64\xbb\x29\x3c\xf2\xcf\x80\x1c\xda\xa3\x08\xa9\x23\xca\xab\x01\x94\x0e\xf8\xdb\x48\x17\xcc\xb5\x12\xa0\xa5\xa7\xe3\x02\x6b\xa2\x7f\xab\x04\x98\xe8\xf0\x77\x0c\xce\x3b\xa6\x04\x0a\x69\x16\xcb\x6b\x6b\xc9\x7e\x7f\xb5\xfb\x7f\xbd\x93\x11\x9c\x37\x31\x71\x6e\xa1\xae\xa5\x47\x55\x17\xb9\xb5\xf1\xc6\x68\xb2\xf1\xf2\x0a\x1b\x94\x5e\x69\x72\x92\xd2\x4e\xe3\x54\x85\x60\x1d\xd9\x78\x49\x94\x71\x3d\x38\xe9\x85\xc4\xf7\x09\x46\x07\x86\x3a\xb6\x89\xee\xad\x8c\x20\x4d\xb4\xcc\x81\x95\x2a\xed\x23\x28\x8f\xa2\x43\x88\x06\xb5\xd7\x76\xf7\xff\x42\xd9\x2e\x18\x8b\xb2\x8a\xb4\x4e\x99\x6b\x94\xb5\x82\xc6\xf2\xce\x19\xff\x56\x3a\x90\xd2\x18\xe6\xc0\x69\x87\xab\x6e\x21\x28\x8f\x42\x88\x51\x28\x2b\x49\x0b\x56\x91\x68\xa2\x8c\x32\x1e\xab\x7b\x41\x9b\x03\xca\x4a\x7a\x1b\x29\xd2\x4e\xa6\x57\x86\xde\xc6\xa4\x0d\x83\x60\x31\x7d\xad\x77\xf2\x5c\x30\x98\x80\x2a\xae\x8a\xe1\x5a\x1a\xb0\x41\x2b\x66\xc1\x3b\xa9\xdd\x5b\x89\xfa\xb0\xc0\x0a\x4e\x91\x23\xac\x86\x88\x0d\x5b\xb0\xd2\x07\x4f\x1b\x2b\x3e\x18\x66\x71\xfe\x85\xc7\xfa\x52\xc8\xc8\x34\x28\xe3\x82\xc6\xfa\x16\x05\x34\x0d\xda\x7a\x4b\xd6\xb7\x42\x6a\xcd\x34\x58\xa1\xa3\x62\x6b\xfd\xd3\x80\x84\x13\x91\x49\xd4\xcc\xf1\x05\xd3\xbe\x8b\x02\xed\xcc\x4d\x00\x65\xaf\xa4\x04\x65\x6f\x28\xfd\x46\x6a\x90\xda\x5d\x4b\x89\xbd\x24\x89\xd7\x09\x4d\xa3\x08\x91\x7a\x53\xda\xea\xeb\xb5\x46\xff\xb5\xa9\xa5\x7f\xa3\x9c\xf5\x4c\x38\xce\x84\xe3\x4c\x38\xbe\x0e\xc2\x71\x88\xfb\xfe\x11\x17\x5e\x1f\x74\x25\xee\x0b\xee\x42\x21\x45\x60\x2f\xbb\x0d\xb5\x34\x6d\x0e\xea\xad\xfa\x7b\x73\xfe\xe6\x23\x33\x35\x07\xaf\x3d\x78\x79\x2d\x25\xf3\x60\xad\xbb\xd2\x37\x01\xac\xef\x87\x9a\x2b\x88\xc6\x33\x05\xc1\x18\xf0\xda\x81\x97\xf2\x5a\x6a\x16\x40\x38\xf5\x84\x33\x3e\xa9\xca\xb4\xcf\xf9\xbe\xa2\xf6\xdf\x26\x3f\xb8\x9c\xc4\x29\xa8\xdd\x0f\xaf\x24\xd8\x57\xec\xe3\x0f\xaf\xc0\xdb\x57\xec\x53\xfe\xdb\xe4\x19\xcc\x4c\x11\xef\x9a\x5f\x93\x8f\x3f\xbc\xf2\xa0\x6c\x6b\xc3\x42\x03\xc2\xa0\xad\x23\x8b\xaf\x0e\xec\x32\x27\xd5\x83\x51\x55\x16\x0f\x3f\xbc\x9a\xfe\x9f\xc7\x62\x52\xad\xeb\xf8\x5f\xf8\xf2\xeb\x2f\xe5\xd5\x7a\x86\x93\x5f\x17\x4e\x5e\x42\x1c\x39\xaf\xd9\xaf\x8d\xdb\x39\x06\xbb\x11\xfa\xf7\x16\x2f\xf3\xb3\x4d\xad\x05\x93\xa1\x23\x1e\x23\x9d\x17\x04\x0b\x4e\x63\x92\x65\x12\x5c\xe4\x06\x22\x0a\x2a\x24\xc3\x6a\xf9\xa3\x87\x28\x14\x4b\xcf\xbc\x67\xad\x98\x12\x4f\x43\x07\x14\xd8\x47\x5e\x7b\x20\x89\x23\x76\x17\x35\x65\xea\x76\x25\xe0\x23\x1d\x48\x04\xcb\xc1\x91\x68\x61\x39\xf6\xcb\x0c\x9c\x2d\xe3\x7f\x2f\xcb\xf5\xfc\x32\x57\x17\xec\xbb\x0c\xe0\xeb\x30\x36\xa6\x35\x0f\x4c\xca\xbe\x9a\x47\xb0\xa5\x60\xe0\x83\xe3\xe0\xa5\x61\x12\x70\xba\x70\xa9\x6c\x9f\x4b\x53\x72\xcc\xa2\x75\xb4\x54\x80\xe7\x02\x73\x2e\xfd\x5b\xcd\x14\x55\xd2\xf4\x54\xa8\x17\x30\x75\x25\xf5\x5c\x5d\xd9\xb9\x74\x7d\xa9\xe7\x3c\x3e\xbd\xf3\xa8\x18\x78\x69\xfa\x71\x4e\x56\xe0\xe1\xca\xcf\xe9\xef\xd3\x50\x70\x05\xc1\xfa\x7e\x44\x59\xdb\xe8\x9c\xe1\xa9\x8e\x6a\xca\xc7\x2b\x7f\x23\x53\x84\x2c\x50\xc1\xdd\x38\x7c\xf6\xed\x3c\xb7\xf5\xf4\x4e\x22\xaf\xb0\x37\xb2\xef\xe6\xae\x8f\xa3\xbb\xd1\x58\xed\x5a\x06\xb2\x31\xe7\xa8\x00\x58\x04\xc1\xab\xdd\x1e\xbd\xc3\x6a\x36\x19\x94\xd3\x55\x4f\x4e\x5a\x3e\x98\x56\xb3\xd9\x60\x74\x9f\x56\x73\x29\x67\xb5\xec\x4c\x17\xab\xdd\x7d\xe7\xde\x67\x5f\x68\xf7\x39\xf7\x8b\xbd\x64\xa0\xf5\x17\x8d\xd1\xdd\x81\x22\x5f\x09\xbf\x3b\x23\xc9\x57\xc9\xd7\xce\xcb\xd2\x4d\xbb\xb6\xdc\xbb\xf2\x75\x30\x9c\xe3\x02\x45\xc8\x78\x63\xfb\x16\xa2\x31\x37\xfa\xca\x16\x28\x65\xa4\xf3\xf8\x14\x31\x62\x99\xb0\xed\x84\xcf\x42\x0c\x7d\xae\x6e\x64\xbc\xb2\x4f\xc3\xc8\x25\x9d\xe5\x91\xed\x62\x84\xa0\x19\x3d\x16\xf6\xba\xd7\x39\x7e\xd9\x8d\x14\x7d\x75\xa3\xfb\xfc\x34\x16\xd1\x64\xac\x72\x88\xaf\x85\x96\xfd\x6e\xe6\xff\xb7\xa6\x3e\xbf\x9b\x89\x3c\xf8\x58\x78\xe3\x2a\xc8\x93\x4f\x83\x3f\xff\x6e\xfc\x23\x6f\xa5\x6c\x17\xff\x16\x71\x51\x1a\x66\x6a\xc3\xcc\x5c\xaa\x2b\x77\x63\xfa\xe1\x69\xe8\x98\x74\x37\x9e\x9c\x90\xaf\x5c\xc9\x25\x28\x9b\x0c\x20\xbc\x5d\xb5\x80\x50\x96\xec\x8e\x13\x60\xa9\x32\x15\x43\xc8\xc2\x54\x32\x6a\x30\x5c\x5d\x85\x39\x57\xfd\x90\x82\xcf\xea\x6d\xbf\xde\x05\x16\xfa\xe6\xc6\x5d\x85\x76\x30\xcd\x6f\x17\x33\xbf\xa1\x69\xdd\x1f\x8f\x66\xf3\xc2\xcd\x3d\x11\x69\x3a\x6e\xe8\x3c\xdc\x44\x64\x7b\xe5\x93\xcc\x43\x3a\x9a\x3b\xc1\x34\xe4\x94\x3b\x47\x37\xeb\x1c\x77\x25\xde\xae\x3b\xd2\xbe\x16\x52\x83\xb0\xae\x04\x73\x7d\x1e\x6a\xae\xf8\x8a\xc1\x94\x84\x18\x21\xf2\x74\xfd\xc9\xb5\x62\x32\xac\xdb\x4d\xb9\x35\x66\x74\x13\xd6\x8c\xa5\x68\xd3\x47\x5d\x99\x9b\xd0\x97\x6e\x2e\xc5\xd7\x4b\x1a\xbe\x92\x69\x78\xee\x32\x97\xff\x5a\x40\xe5\x18\xf2\xa9\x24\x08\x41\xd7\x53\x88\xf0\x56\x09\xf0\x4c\x1a\xd0\x29\xe4\xb9\x92\xe9\xd8\x1f\x84\xb1\x4c\x97\xdc\x80\x70\x81\x09\xee\x40\x93\xb1\xb8\xb3\x81\x7b\xb0\x3a\x30\x0f\x2e\x98\xbe\x02\x29\x65\x09\x86\xfc\x4f\x8c\x54\x4c\x82\xf0\x14\x62\x9d\xfc\x68\x02\x99\x9f\x3b\xab\x20\xc6\x14\x7d\x9d\x29\x90\x26\x72\x05\x42\x29\x6c\x4f\xe5\xaf\x12\x0c\x99\xe6\x2a\x70\xca\x80\x8b\x29\x93\xdc\x49\x28\x57\xa0\x7a\xa8\x03\x39\x78\x08\x4f\x07\xc6\x8a\x29\xd0\xc6\x30\x0b\x16\x2c\x35\xac\x20\x30\x03\xca\x59\x88\xda\x31\x0b\x21\x06\x10\x58\x94\x23\xe5\x77\x96\x83\x13\x0a\x9c\xbd\xb2\xe0\x8d\x2b\xd2\xaf\xb4\x19\x29\x29\x8f\x83\xb3\x25\x08\x1a\xab\x74\xd8\x14\x8e\xcf\x86\x00\xd6\x48\x9c\x0c\xef\xaf\x34\x38\xa3\x0a\x63\x40\xba\xc8\xf2\x1f\xc1\x84\xe0\x60\x9d\x64\x06\xbc\x72\x25\xc7\x59\x40\x48\x14\x91\x4c\x1d\x41\xa0\x88\x17\x35\x7d\xeb\xcb\xe4\x1a\x24\x71\xee\xe8\x95\x85\x30\x9c\x9c\x67\xb0\x0c\xcd\x88\x7c\x1a\xf2\x00\xd2\x2a\x6e\xc1\x45\x7b\xa5\x6f\xa4\x04\x2f\xfb\x11\x35\xd6\x6b\x7c\x46\x16\xc0\x0b\x5d\x4b\x90\x01\x47\x1b\x98\x05\x41\xb6\x19\x42\x19\x4e\xcf\x94\x42\x99\x32\x3d\x19\x2e\x44\xa0\xe8\xf8\x2d\xbf\x2f\xf9\x93\x92\xca\x7c\x45\x38\x7f\x86\xe7\x33\x3c\xbf\x24\x3c\x1f\x63\x46\xbb\x71\x69\xfa\x67\x49\x48\xeb\x8d\x9d\x22\x1f\x1d\x7f\x8b\x7b\xbb\xc6\xb7\xc8\xa5\xc8\x3c\x1a\xa2\x97\x45\xb2\x16\xc7\x47\xf2\xbb\xc0\xaf\x91\x9e\xe1\xc7\xb5\x3c\x26\x15\x8b\xa0\x51\x37\x5f\xcb\xa0\x4a\xe9\xd9\x55\x89\xba\x7a\x1a\x1a\x88\x4e\x93\xd7\xa1\x79\x4b\xa6\x57\x86\x5c\x4f\x1c\x51\x94\x1c\x90\xd4\x4f\xb9\xa1\x1c\x89\x39\x9c\xaa\x30\x8d\x70\x7c\xa5\xe7\x0a\xac\x57\x7d\x03\x42\xfb\xb7\x1e\x9c\x74\x4c\x5a\x70\x86\x45\x70\x14\x83\x5f\x05\x97\xe2\x9c\xe2\xb7\x29\xb5\xc3\xa9\x1d\x96\xba\x4e\xed\x28\x39\xe7\xa9\x25\x4e\x4d\x7d\xbd\xb2\xd9\x79\x45\x5f\x7a\x45\x9f\xbf\xfb\x30\x29\x1e\x1e\xaa\xc9\x9b\x14\x8c\xe2\x4d\xb1\x4a\x17\xbe\x88\xb1\x8f\xf0\x4c\x4a\xb3\xb4\xac\x10\xe2\x0f\x2b\x96\x15\xf4\xeb\x28\x61\xdd\x18\xba\x96\xe7\x5a\x30\xe4\x52\xf1\x26\x78\x30\xb2\x96\x0e\xbc\xc6\x69\x73\x37\xda\x82\xb6\xd7\xa9\x98\x8c\xa0\x9f\x5a\x06\x1b\x4e\x81\x56\x4c\xcc\x4d\x04\x69\xaf\xa8\xd4\x8d\x16\x10\xe4\xb5\xf2\xc8\x10\x05\x18\x3f\x77\x0a\xa2\xa7\x36\x69\x29\xc2\x8d\xc3\x35\xee\x4b\x0f\x3e\xcc\x65\x00\xa5\x52\x87\x9c\x3a\xc4\x47\x57\x27\x52\x6a\x90\xa6\xa6\x3e\x78\x1a\xac\xb2\xe0\x75\xcd\xa9\x65\xaa\x3c\x77\x12\xbc\xaa\x39\x75\x2e\x1d\x08\xfb\xf4\xc2\x08\x78\x5e\x80\xcf\x58\x80\xa3\x82\xe1\xf7\xab\xf2\xfd\xf4\xc5\x78\x7b\x47\x73\xa7\x04\x9f\xdf\x6c\x65\x7f\x14\xf8\xf5\x3a\x5f\x0b\x87\xa7\xc8\x71\x60\x59\x00\x5b\x93\x59\x37\xd9\x5e\x71\xd7\x37\xe4\xfb\x64\x6b\xa4\x82\xcc\x80\xbd\xc6\x52\x96\x39\x26\xe5\x95\x9a\xab\xbe\xad\x15\x58\x6e\xc0\x7e\xbd\xbc\xee\x4b\xbe\xdb\xfe\x7d\xc2\xe4\x46\x7f\xc4\x3e\xe1\x66\x85\xa5\xc1\x9a\xf9\xbd\x19\xac\x49\x26\x43\x9f\xee\x62\xe3\x74\x19\x9b\xe4\xd2\xbd\x90\x49\x94\x6c\x4c\xa2\x62\x73\xa3\x70\x5c\xbd\x51\x38\x36\x37\x0a\xc7\x7c\xa3\xf0\x50\xd0\xd9\xb5\x02\x85\x35\x51\xa8\xf0\x91\x1b\x66\xfa\xaa\x1d\x08\x7f\xda\x44\xd1\x2f\x05\x53\x1c\xb5\x2b\x6f\xb9\x66\x96\xca\x29\x50\x96\x69\x02\x28\xcd\x69\x2b\x1b\x14\xea\x3c\xd8\x14\xfe\xfb\x7a\xb1\xe4\xbc\x6c\x27\x2d\xdb\x31\x6c\x6c\x36\xfb\xdc\x0b\x54\xb6\xb7\x75\x02\x03\x5b\x6f\x62\x2f\xf7\x6a\x57\xf8\x26\xe9\x8d\x66\xba\x88\x2c\xe6\xf3\xe0\xc8\xe2\x95\xac\x35\x84\x88\x6a\x43\x04\xe1\x41\x9a\xeb\xc8\xa4\xba\x72\xa5\x40\x15\xc0\x33\x0d\x52\x73\xcf\x3c\xf7\xd3\xf4\x83\xe1\x8f\xf4\x05\xd3\x4b\x4e\x1b\x2a\x58\xda\x05\x4e\x10\x03\xd1\x70\x05\xc2\x2d\x63\xaf\xaa\x1f\x03\x44\x8b\x2a\x4c\xa4\x88\x40\x24\x3d\x6a\xa6\xe4\x72\x30\x4c\x70\x19\x9e\x86\x5c\x32\x3b\xb7\xb5\x01\x15\x28\x3a\x11\x78\xc5\x25\x02\x23\xb2\x2c\x05\x22\xdc\x84\x2b\xf9\x7b\x39\x0f\xfc\xdd\xaf\xc6\xbe\x1b\xf8\x96\xfe\x21\xd3\x8d\x0b\x47\x06\xa3\xbb\xf1\xd7\x73\x93\x48\x69\xc1\xa6\xf8\x4f\x82\x21\x11\x77\x89\xa0\x4f\x79\xf3\x83\xd3\xef\x7f\xa4\xf0\x21\x46\x27\xc2\xee\x28\xb3\xa1\xf1\x64\x97\x45\x3e\x82\xd2\x14\x12\x2c\x59\x26\xdb\x1c\x01\x46\x70\x30\x46\x73\x88\xc1\x96\x1c\x75\x72\x0e\xca\x2b\x0e\x8e\x63\x2d\x4c\xa7\xb0\x5b\xba\x9f\xcc\xbb\x4a\x0e\x3a\x58\x10\x2a\x70\x70\xc1\x82\x0c\x96\xea\x62\x91\x42\xe6\x90\x52\xf8\x5c\xb6\x8d\xd9\x7d\xb2\xff\xba\x91\x0e\x74\x09\x42\x45\xd0\xc1\x81\xb4\x01\xbc\x34\xb9\x0c\x59\x8a\x81\x0a\x16\xdc\x22\x05\xfb\x4d\xdd\x62\xaf\x4c\x30\xec\x93\x53\xc5\x88\x5f\xb0\x5c\x33\xe4\x34\x5c\xd7\xbc\x8d\xbb\x22\x2b\xb5\x1b\xa9\xe6\xf8\xde\x4f\xef\xc8\xed\xc2\xe3\x20\xb5\xc1\x09\xd0\x66\x11\x1b\xc7\x70\x59\xe2\x58\x41\x52\x64\x2f\xa3\x31\x85\x81\xf2\x92\x83\xb2\x81\xe6\x82\xca\x4d\x29\x53\xaa\x40\xe1\x0f\x4a\x50\xd6\x63\x29\x30\xd8\x2f\x85\x42\x90\x2a\x82\x37\x8a\x2a\xe0\x7c\x68\x32\x58\xd1\x39\x20\x0c\x05\x46\x50\xa1\xc4\x6c\x41\x3d\xe1\xcb\x78\x8a\x9b\xa0\x42\x6b\x47\xd6\x3a\x7d\x77\xd7\xe9\x6b\x72\x8c\x15\x77\x3a\xf6\x9d\xb2\x15\xd3\xdc\x37\xbd\xc1\xfc\x9b\xe6\x25\xdf\x22\x56\x50\x80\x55\xeb\xce\x58\xf1\x79\x58\xf1\x0d\xf3\xdc\x33\xd4\x9e\xa1\x76\x5f\x94\xd0\x69\x13\x19\xb0\x75\xbb\x5a\x77\x24\xc1\x03\xcb\x4e\x1f\xea\xc1\x6c\xb6\xa5\xe9\x6e\x13\xa0\x6c\x5a\xdd\xaf\xea\x87\x9f\x5b\x21\xc4\x3b\x32\xbe\x3d\x7b\xeb\x97\x42\x44\xf2\xb9\x0a\xae\xcc\x75\x04\x0f\x20\x8d\xa6\x53\xeb\x90\xbf\x07\x90\x32\xc5\x21\xc5\x12\x1a\x9c\xf5\x6c\x91\xb3\x78\xe6\xfa\xe9\x17\xca\xcf\x4d\x4e\x6e\x05\x95\x77\x4b\xa7\xe8\x1e\x53\x54\xe4\x8b\x5c\x15\x11\x1f\x6c\x43\x15\x30\x25\xfc\x47\x13\x85\xf0\xcd\x12\x85\xee\xfd\x4c\x14\xd5\x56\x63\xf3\x27\xe4\x3d\xde\x8c\xf1\xb6\xea\x17\xf3\xc1\x78\xf2\x62\xdb\x20\x9d\x0d\x9e\xb0\x17\xd2\xd9\xce\xde\x0d\x91\xae\x5a\x3b\xcd\x19\xfb\x2d\xb2\xb7\x6a\xcb\xd8\xca\xf9\x4f\x16\x87\xcf\xf4\xec\x4c\xcf\xce\xa2\xf9\x19\x83\xce\x18\xf4\x75\x60\xd0\xfe\x18\xe8\xef\x1f\x6f\xab\xc9\xa8\x9a\x55\xd3\xe3\xe3\xa0\x77\xd5\x3d\x38\x62\x79\x57\xe5\xad\x51\xcb\xbb\x0a\x2f\xd3\xf6\x46\x5e\xdf\x2c\xda\x8e\xbe\xbe\x92\xbf\x16\x81\xfd\xe8\xf8\xe8\x1d\x23\xa5\xd0\xe7\x2b\x5d\xec\x8f\x93\xbe\x59\xf8\x8b\xc4\x4a\xcf\x96\x2f\x4a\x2e\xed\x5e\x0e\xbd\x01\xe2\x7e\x35\xa8\xcb\x4f\x3f\xfd\xd4\xa2\xb0\xab\xbb\xcf\x02\x14\x5d\x3f\x20\x54\x21\x41\x91\xd3\x1d\x3e\x1b\x2c\xf7\x0a\xa4\xba\xd6\xa0\x22\x33\xa0\x04\x82\xbe\x52\x88\x65\x4a\x2d\xc8\x8c\x73\x1e\x82\xae\xb9\x04\x1b\x25\x73\x10\x15\xb5\x25\xa9\x98\xcc\xc5\x18\x28\x4d\x37\x1a\x68\x5b\x1b\x30\x4e\x33\x0b\xd6\x96\x74\x25\x84\x8a\x60\x23\x18\x07\xd1\x61\x56\xed\x41\xda\xc8\x71\x4c\x25\x68\x4f\xe4\xc1\x23\x42\xb9\x80\x25\x38\x18\x1b\xa9\x0d\xc5\x17\x6d\x70\x50\x51\x81\x56\x48\xe0\xbc\xc6\xbe\x38\xf6\xe5\xae\xa5\x87\xa8\x3c\xdd\x2c\xb1\x65\xec\x9c\x06\xef\x80\xee\x77\x10\x81\xa6\x81\x2e\x3a\x30\x8d\x67\x23\xd8\x18\x90\x02\xac\xe2\xb1\x56\xee\xed\xdf\xdb\x31\x75\x70\x2e\x7d\x0e\xdb\x86\x24\x57\x22\x11\x4f\x04\x31\xaa\xf4\xc5\x20\xe9\x96\xb2\x04\x21\x2c\x48\xed\x70\x3a\x40\x19\x10\x56\x81\x76\x1e\x84\xd6\xa0\x3c\xd0\x35\x1a\x0a\x84\xd1\xe0\x0b\x30\x0a\x49\xe5\x22\x32\xbb\x54\x16\x54\x4d\x71\xe1\xa5\xd3\x85\x81\xe8\x2c\x4b\xcf\x34\x5c\x0d\x64\x4c\x6d\x4d\x40\xde\xe5\xd3\xa3\xa9\xac\x03\x07\x11\x23\x19\x2f\x83\xa0\x94\x14\x3b\x58\x69\x9e\xe2\xcd\x4b\xe4\x12\x52\x7a\xba\x1d\x83\x2e\xd1\x00\x8b\x74\xcf\x73\x10\x01\x1f\x91\x88\x1b\x27\x83\x63\x50\x16\xe7\xde\x5f\x5b\x30\x8c\xbc\x42\x0b\x5c\x48\xb3\xe0\x13\xca\xc5\x7c\xd7\x85\x57\xf8\x69\xd2\xb5\xf0\x38\x01\x25\x0e\x40\x83\x74\xd4\x30\x18\xa5\x40\x44\x03\xd6\xd7\x20\x84\x03\x21\x70\x49\x40\x38\x5b\x52\xd0\xfa\x00\x4a\x82\x54\xb8\xd2\x20\x83\x07\xa5\x25\x48\xa3\xa8\x9e\x72\x60\x3d\x5d\x94\x81\xf3\x27\x9c\xa6\x33\x2e\x6f\x41\xf8\x00\x4a\xe9\x1a\xa4\xd2\x20\x65\x41\x37\x80\xb0\xf4\xcc\xa3\xf1\x74\xfa\x65\x10\x10\x40\x3a\x9c\x79\x8a\xc0\x6f\x14\x08\x8b\x6f\x2a\x34\x48\x83\x93\xe5\x5c\x1a\xab\x8c\x38\x2a\xcd\xd3\x88\x91\x53\xb9\xa8\x90\xef\xe3\xfa\x38\x9a\x58\x85\xcb\x2b\x0c\x07\xed\x69\x82\x71\x5c\xc2\xe6\x79\x77\xa9\x51\xa1\xb0\x47\x7a\x4b\x91\x2e\x26\x20\xa8\xe7\xa0\x54\x48\x5d\x6b\x6f\x40\x21\xd0\x6b\xe5\xc1\x78\x1c\x19\x28\xe1\x10\x4a\xb4\x96\x60\x62\x00\x15\x54\x1f\xab\x22\x54\x61\x3f\x42\xe6\x8e\xa8\xd9\x40\x5f\x6a\x90\xb4\xbc\x25\x48\x8d\xdf\xb4\x03\xa5\x68\x45\x03\x68\xe3\xd2\x2a\x28\x4b\xd7\x91\x28\x30\xf4\x8a\x2e\x20\x2e\xe5\x77\xc5\x57\x14\x34\xa1\x1e\x84\xd5\xe9\xee\x00\x1f\x6a\x2c\x86\x2d\xc7\x02\x85\x07\xcd\xd2\x33\x3b\x00\x83\x52\x8e\x29\xf0\xa1\xa6\xd7\x96\x2e\xa0\x90\x60\x71\x3d\xa9\x11\x69\x0d\x08\x24\x00\x12\xdb\xf0\x16\x64\xb4\x1c\x94\x40\x3e\x0d\xda\x92\x4c\x45\x15\x05\x8e\xd0\xe0\x9a\x07\x4e\xaf\xaf\x45\xc4\x36\x2d\x48\x61\x4a\x82\x68\x50\x52\xe1\x40\x10\x91\x71\x91\x2c\x22\x00\xc8\x28\xd3\x1b\xd1\xc4\x58\xb0\x5a\x21\x66\x06\x9c\x30\x39\xa7\xc9\x2a\x51\x96\x4a\xcb\xa3\x5d\x5a\x1e\x43\x48\x92\x57\x80\xd6\xd3\x13\x86\x20\xf8\x48\x1c\x99\x01\x29\xb0\x21\x9b\x49\x95\x55\x0e\x34\xc2\x00\xbe\x0f\x56\x36\x8e\x26\xdc\x21\x68\x63\xa3\xa1\x4e\xc8\x23\x6d\x44\xf8\x0b\x9e\x99\x95\xd8\xfa\x1a\x2c\x02\x9d\xc4\x42\x08\x69\x38\x4d\xce\x81\x40\x60\xd7\x01\x04\x42\x7b\xf4\x20\x15\x48\x7c\x65\x1f\x69\x19\x74\x94\xe4\x06\xe1\x0c\x16\x41\x29\x50\x82\x40\xc1\x45\x45\x90\x14\xc7\xdf\x80\x90\x8a\xc4\x32\x24\x2c\xc2\x45\x7c\x35\x9a\x2c\x29\x14\x12\x28\xd0\x46\x82\x96\x12\x2c\x2e\xbf\x8c\x20\x63\x82\x80\x04\x72\xda\xd3\x65\x38\x60\x4d\x9a\x6d\xde\x4c\xb7\x23\x38\x47\xa8\x41\x19\x8d\xa6\x42\x78\x42\x6a\x5c\x27\x97\xa8\x89\x42\x28\x32\xd8\xa2\x46\xc1\xc9\x49\x42\x02\xac\x95\xe0\x53\x22\x8a\x6a\x82\x75\x9e\xd7\x80\x2e\xbf\x40\x4a\x43\xf3\x2c\x1c\xc9\x84\x6e\x0b\x68\x59\xae\x80\x00\x10\x89\x7b\x09\xc2\x62\x33\x9a\xde\x3d\x01\xb6\x92\x34\xf5\x04\x30\x08\x53\x32\x20\x24\x11\x83\x40\x98\x4e\x0e\x30\xc8\xa2\x68\xb1\xb5\xa1\xb0\xa5\x28\x02\x23\xda\x80\x70\x01\x47\x05\x74\x0d\x47\x4d\xc0\x2f\x84\xca\x38\x2a\x4b\x9a\x66\x61\x91\x6d\x80\xf0\x74\xef\x11\x8a\xd9\x2a\x8d\x5f\x11\xc4\xe2\xeb\x5b\x42\x5d\xa4\x9f\x48\x5b\x12\x8c\x7a\x22\x7b\x86\x93\xe7\x06\x28\x02\x4e\x9a\x27\x7c\x7d\x22\xba\x54\x8a\x83\x89\x26\xcd\xbb\x8b\x44\x94\xb1\x60\x20\xfc\x4d\x94\x1b\x57\x01\x59\x53\xc2\x57\xea\xc1\x3a\x02\x3f\xa2\x72\x04\x65\x71\x71\x4c\x1b\x84\xe1\x1a\x8c\x37\x35\xdd\x0d\x84\xf4\xb0\xa4\xcb\x50\x12\x68\x10\x37\x40\x92\x47\xc0\x8e\x93\x65\x29\x05\xa1\x84\x96\x53\x22\x81\xe5\x60\x84\x81\xb4\x3c\x88\xb9\x9c\xe6\x94\x96\x35\xf8\xf4\x42\x42\xe2\xec\xd1\x4a\x66\xc2\xe1\x42\x52\x28\xa4\x09\x89\xee\x10\x95\xc6\x97\xb3\x9e\x68\x0f\x4f\x78\x42\x6f\x14\x14\x26\x13\x4a\xd2\x14\x61\xab\xd8\x86\xca\x88\x19\x90\xba\x07\x82\x45\x10\x31\x11\x2a\xe9\x71\xf6\xad\xa5\xa9\x23\x38\x46\xf8\x35\x01\x34\xa2\xb0\x55\x60\x50\xe6\x47\x12\x43\x77\xa9\x48\x52\x75\x22\xc2\x29\x7e\x71\x35\x81\x2d\xb6\xf8\x23\x52\xa6\xc8\xd2\x33\x5b\x2f\x08\x40\x01\x42\xab\x50\x44\xba\x1d\x24\x3d\x33\x47\x15\x34\x04\x8f\x44\x9b\x88\x2e\x0e\x91\x66\x87\x16\x07\xa1\x20\xea\x0c\xd9\x0a\xa1\x0a\xf3\x8c\x4e\xc3\x40\x4e\x10\x32\x85\x21\xa8\xd1\x48\x16\x39\x8a\x02\xc4\x16\x70\x72\x49\x83\x51\xb4\x5c\x5e\x67\xdd\x4d\x87\xa4\xc5\x3d\xbd\x8b\xe0\x23\x73\xa0\xad\x24\xe8\x32\xe4\x4a\x45\xb4\x1f\x17\xd4\x14\xa0\x0d\x68\xd3\x8c\xd5\x22\x2f\x59\x30\x1c\xba\x26\xca\x71\x89\xc4\xe4\x47\x0d\xd1\xa3\xb2\x8a\xcf\xe4\x2e\xb0\x6c\xfa\x69\x08\xd1\x05\x26\x0a\xa4\x27\x8c\x1e\x8d\xb7\x81\x96\xe4\x01\x25\x2d\x8a\x7f\x0e\x85\x2b\x42\x61\x5a\x7d\xa1\x37\xba\x47\x28\xea\x53\xd6\x35\xce\xaa\xa3\xf6\x9f\x86\x5c\x43\x88\xa8\x60\x06\x5f\x4b\xb0\x74\xe9\x95\xb6\xd4\x10\x22\x5c\x58\x6b\x47\x6a\x03\x36\xd8\xba\xe1\x75\xf8\x0e\xd1\x18\xb0\x4e\x16\xf8\x06\x96\xa5\x67\xbe\x9e\xc5\x3a\xa4\x14\x56\xba\xa7\xa1\x83\x20\x89\xd7\xe2\xab\x28\x14\x02\x84\x5a\x96\x23\x77\x09\x9c\x49\x09\x11\xc7\x6a\x9d\xe6\x0d\x63\xee\x18\x03\xc7\x41\x10\x0f\x31\x38\x6a\x41\xbe\x6f\xe9\x6d\x3c\x39\xc9\x19\xd7\x07\xa7\x6a\xd0\xc1\xa3\x6c\x91\x64\x2d\x72\x40\xb3\x48\xa6\x11\x86\x11\x5b\x93\x88\x84\x6c\xc3\x09\x85\x85\x39\x98\x40\xa7\x80\x91\xae\xb5\xb1\xaa\x00\xad\x23\x7e\x9a\xa1\x22\x20\x09\x5b\xd3\x22\x62\xff\xe4\x72\x06\xda\xe0\xeb\x07\x46\x8f\xac\x97\x82\x13\x31\xf9\xd7\xd5\x28\xe6\x70\x09\x01\x61\x3f\xd5\x6b\x2f\x10\x03\x15\x11\xae\x7c\x7a\x07\x8d\xc8\xb2\xf6\xde\x0c\xb4\x08\x89\x82\x20\x37\x15\x48\xef\xbd\x4f\x37\x28\x39\xec\x3c\xa2\x1c\xd5\x90\x9c\xd4\x3d\x19\x08\x09\x5c\xd8\x88\x98\x80\x6f\x92\xe0\xcf\x62\xd3\x76\xa9\xaf\x33\x10\x2e\x01\x0f\xbe\xbb\x0b\x1a\x82\xf4\xf8\xea\x01\x3f\x8b\x01\x20\x17\xf4\x11\x19\x78\xa8\x21\x06\x45\x97\xcd\x58\xea\x5c\xb2\xf4\x6c\x1c\x68\x32\x08\xd5\x10\xe9\xe6\x20\xef\x49\x50\x92\xeb\x6f\x8d\x42\x85\x44\x2d\xbd\x1d\xf5\x12\xd4\xea\x8d\x3e\xa8\x44\xad\xc5\xba\xdc\x6b\x98\x51\x57\xc5\x64\x74\x64\x7c\xbd\x8e\x3a\x5f\xc7\xf9\x5b\xbe\xf5\xca\x88\x48\xb7\x0d\xe9\x3a\x40\x94\x84\x6a\x36\x94\x74\xfd\x9e\x30\xe0\xbc\x03\x17\x24\xfe\x25\xcf\x48\x5c\x36\x30\x48\x94\x95\x74\x10\x51\x1c\x5e\x64\xd5\x9c\xe4\x29\x72\xf9\x94\x73\x0d\xde\xf9\x52\x30\x90\xc4\x51\xe9\x1e\xa1\x84\xea\x3a\x6d\x0d\x79\x72\xf1\x34\xda\x80\x43\x7e\xe1\x8d\x86\x80\x2c\x5f\x7b\x0f\x0a\xf9\x52\xb0\x16\x2c\x51\x35\x44\x33\xf2\x38\x12\x5e\x83\x26\xf4\x37\x0e\xc1\x21\x70\x0d\xd1\x51\xfc\x6d\x0a\xaa\x45\xd1\xae\x22\xe9\x6a\x94\x43\x9c\x07\xd1\x12\xe5\x1a\x64\x44\x74\x31\x1f\x4f\xd7\xe6\x22\x73\xc2\x66\x01\x99\x2f\x8a\x1f\x60\x91\x0e\x5b\x41\x7b\x4b\x34\x80\x50\x80\x93\x01\x3f\x4b\x3a\xa1\x69\x67\x6d\x4e\x9e\x5c\x88\x37\xb4\xf9\x66\xec\xb5\x05\x8a\xd1\x6d\x69\xe7\x0d\x2c\xb6\x17\xe8\x2e\x3e\xa3\x91\xa0\xa1\xac\xa3\x70\x20\x05\x69\x3c\x2c\x3d\x1b\x44\x11\x58\x30\x4a\xc5\x88\x39\xe7\x67\xc3\x91\x74\x44\x32\xd7\x47\x49\x06\x27\x54\x20\x9f\x14\x59\xb0\xa1\x7b\xb6\x0c\x09\x36\xa8\x74\x12\x2b\x8f\x20\xbc\x07\x19\x53\x96\x44\xf1\x39\x38\xd0\x5a\x27\xa5\x23\x7a\xd0\x59\x1a\x27\x39\x31\xe2\xf3\xda\xd2\x95\x85\x4a\xe0\xf0\x51\xdd\xe3\xe0\x91\xdb\x29\xba\x7d\x10\xe7\xcc\x23\x6d\xb3\x41\x83\x15\xb4\x14\x86\x52\xe8\xd6\x28\xfc\x56\x93\x20\xc1\x51\x0a\x46\x2d\x9f\x94\x7c\x92\x7d\x9c\x83\x88\xc4\x30\x20\xa2\xa3\xbc\xa4\x5c\x52\x35\x2d\xc1\x18\xea\xeb\x28\x82\xa1\xc0\xe1\x6c\x5a\x1e\xad\x55\x66\xb1\x26\xa6\xf9\x92\x2c\x3d\x1b\xa2\xa1\x28\x20\x82\x77\x25\x11\x6e\xe4\x52\x1a\xac\x22\x2f\x5c\x83\xcc\x03\xbf\x39\x17\x90\xf4\x07\x94\xc4\x82\x08\x6f\x51\x42\xa6\xcb\x0e\x55\xda\x0a\x46\x86\xe5\xd2\x17\x6d\x68\x5f\x51\xf9\x24\x63\xc6\x04\xf9\x3c\x81\x35\xe1\x05\xcf\x78\xa1\x1c\x09\x6e\x0e\x2c\x4e\x07\x7e\x09\x08\x1c\x49\xf5\x78\x1a\x22\x40\xe3\x22\x7a\x63\x6b\x6e\xc9\x66\x1b\xbc\x49\x37\x86\x1b\x14\x95\xea\x00\xde\x22\xd8\x86\x10\xae\xd3\x6e\xb4\xad\x39\x25\x92\x21\x27\xc3\x49\x82\xa8\xfd\x35\xed\x83\x5a\xa4\x75\x1e\xac\x0c\xe4\xe5\x17\x0d\x33\xa0\x9d\xa2\x0b\xa2\x9d\x4a\xd2\x41\x81\x3c\x53\xb3\xf4\xcc\x30\x43\x83\xba\xf6\xe4\xc2\x4c\x77\xa7\xd1\x06\x03\x05\x6d\x9b\x2b\x70\x05\x58\x8d\x4a\x82\x5c\x02\x60\x20\x39\x16\x19\x0b\x08\x54\x48\x04\x2a\x1e\x06\xb4\x0d\x60\xf0\xbb\x31\x28\x94\x81\xa3\xeb\xc4\x50\x31\x89\x60\xa5\x82\x28\x3d\x09\x0d\x0a\xe5\x55\x4c\xc9\xca\x8f\x95\x6a\xaa\xc0\x21\xee\xa7\x24\xcd\x31\x0d\x09\x0b\x09\xb5\x10\xd2\x42\x1b\x6a\x2b\x50\x26\x28\x12\x50\x83\x06\x8d\xf8\xaa\x15\x8a\x7b\x01\xe1\xca\x23\x1e\x82\x5b\x19\x6e\x24\x49\x72\xce\x11\x0d\xfa\x69\xf2\x77\x44\xa9\x03\x65\x99\xa3\x20\xfa\x9e\xb9\xfa\xa0\x58\x75\xed\xb8\x99\x4b\x2a\xde\x1d\x38\xb3\x8b\x33\x1c\x17\x39\xb3\xb3\x85\xcf\xa9\x7c\x72\xec\xcc\xed\x8d\x9d\x12\x3c\xb3\x8b\xff\x7d\x25\x27\xb6\x67\x0e\x78\xe6\x80\x67\x0e\x78\xe6\x80\x67\x0e\xf8\x35\x5a\x03\x9c\xa9\xf3\x99\x3a\x9f\xa9\xf3\x99\x3a\x9f\xa9\xf3\x5e\xdb\xd3\x7a\x30\xaa\xa6\x0c\xae\x7d\x87\xdb\xfc\x66\xde\x01\x97\x7b\x1d\x78\xb1\xd7\xda\x35\x4f\x6b\x57\x3c\x7d\x2d\x62\xfe\x91\x17\xfc\x12\x95\x01\xa9\x69\x07\x5e\x81\xd0\xb6\x50\x60\x85\x64\xe9\x99\xc3\x8e\x49\x8d\x44\xac\x8f\x28\x16\xb1\xa0\xa0\xad\xc9\x58\x28\x10\xd1\xb2\xf4\x4c\x45\x75\xd0\x74\xf4\x45\x67\xa6\x74\xef\x3b\x02\x51\x74\xf9\x5a\x78\x3a\x03\xb2\x8a\x1b\x70\x5c\xf1\x40\xa0\xa3\xc1\xd0\xcd\xe8\xd2\x40\xd0\x01\x29\x79\xa0\x3b\xcd\xc9\xa2\x01\x29\xb1\x8d\x88\x22\xc2\xe3\x87\xa5\x38\x66\x4a\xe9\x7c\x8a\x68\xf0\x93\x53\xc9\x10\x81\x4e\x2b\x05\xb2\x16\x5d\xa6\x13\x44\x4b\x86\x0a\x22\xa6\xa3\x5b\x32\x19\xa0\x63\xec\xf4\x47\xc9\x44\xb7\x35\x1d\x93\xd1\xe9\x59\x46\x3c\x65\xa9\xae\x71\xd0\x1c\xa8\xa9\x48\x37\xd0\x0b\x1b\x40\x98\x08\x22\x6a\x10\x8e\x4e\xfb\x63\x3a\xc3\x96\x16\xc7\x2c\x91\xae\x59\x4b\xd1\xcd\x8c\x67\x14\x17\x8d\xae\xe0\x93\x69\x40\x44\x61\x6d\xda\x84\xd6\x9e\x66\x72\x89\x51\x02\x68\x34\x48\xf3\x14\x7e\x52\x5a\x3a\x0d\xc4\x21\xa6\xf3\xc6\x32\x1f\xd5\x62\x73\x3e\x9f\x5a\xd1\xc1\x8d\xf6\xd7\x8a\x48\x97\x0c\x64\xd5\x46\x87\xd3\x89\x9e\xf0\xf4\x5a\x26\x9d\x64\x16\x60\x8d\xc2\x4f\xee\x14\xc5\x00\x8d\x34\x07\x5b\x91\x86\x62\xb4\xa5\x0a\x44\xff\x69\x9c\x3e\xd1\xad\x74\x42\xa2\x70\x0e\xb1\x2d\x53\x80\x31\x0e\x3f\xa9\x29\xa1\x93\x7d\x05\x18\xe9\xf1\xb3\x58\x1d\x04\x05\x1f\x4a\xde\xb4\x64\x9a\x6f\x34\x36\x7a\x43\x02\x99\x26\x2f\x8f\x80\xa7\x16\x85\x36\x05\x9d\x3d\x58\xbb\x68\x92\x40\xcc\x2b\xb0\x01\x6c\x68\x12\x03\xbe\xb2\x45\xd6\x9f\x8e\x64\xc9\x78\x20\x34\x4d\xa1\x2c\x21\x34\x5d\x68\xe5\x2d\x97\x74\x31\x3c\x4a\x3f\x14\x1f\x4a\x6a\x02\x52\x10\xde\x25\xa3\x1c\x89\x92\x43\x32\x0b\x94\x1d\xf4\xe9\x34\x94\xa3\x50\x55\x46\xda\x74\xea\x05\x42\x63\xaf\x0a\x01\xd2\x6a\x4e\x27\xbd\x22\x70\x70\x38\xe5\xa1\x4f\x2f\x44\xd8\x49\xef\x52\x28\x94\xe1\x58\x7a\x26\x9c\x33\x74\x38\x48\x4c\xc5\x25\x98\xc0\x79\xc6\xd7\x74\x12\x5f\x87\x4e\x61\x3d\xe2\x9c\xd0\x74\x9c\xa1\x57\x30\xef\xad\x84\x28\x2c\xc1\xa8\x42\x16\x41\x37\x2f\x06\xba\x2f\x5b\x81\x09\xdb\x11\x8f\x3e\x2d\xc4\x8b\x0d\xe2\xa9\x2f\x8a\x78\x36\xe3\x5d\xc8\x2c\x36\x1f\x6a\x9b\x8c\x85\xb6\x0b\x09\xc3\x2a\x12\x36\x58\x68\x33\x16\x9a\x0c\xdd\xa1\x03\x0b\xcb\x84\x0b\x42\xe5\x93\x75\x12\xb5\xe8\x14\xc6\x59\x48\x46\x4b\x02\x65\x73\x3a\xd5\xde\x44\x4a\xdf\x20\x65\x2d\x25\x89\xbc\x16\x7c\xf4\x0d\x5a\xca\x06\x2b\xf5\x0a\x56\x9a\x80\xf3\xde\xc2\xca\xb0\x1d\x2b\xdd\x76\xac\x94\x05\x18\x4d\xd7\x74\xb6\xd0\x12\x34\x8a\xed\x5e\x37\x4b\x47\xa6\x0b\x01\xe5\x0a\x8b\x9f\x26\x99\xac\x49\x62\x17\xae\x86\x1d\xb8\xaa\x17\xb8\x6a\x0b\xb0\xd2\xe2\x27\xb7\x28\x49\x56\x23\x33\xd3\x84\x96\x64\xdc\x93\xde\xbf\x41\x4b\x15\x13\x5e\x1a\xc2\xcb\x40\x78\x69\x08\x2f\x0d\xe1\xa5\x6f\x10\x13\xe5\x4f\x94\x58\x02\x4a\xc3\x5d\x97\x48\x9d\x60\x62\x4d\x66\x15\x8a\x8e\xc2\x95\xcc\xaf\x96\x8c\x1b\xb2\xcd\x88\x90\x1e\x89\xa6\xc4\xcf\x02\x1d\xf2\x2a\x58\x15\xf1\xd3\x24\x23\x0a\x9b\xf4\xaa\x6a\x65\x61\xd2\x19\x3b\x26\xbe\x45\xe0\x24\x53\x20\x92\xb9\x34\x43\xf5\x00\x0c\x59\xbd\xe9\x88\xfd\x28\x94\x57\x17\xbd\x90\x7d\x82\x31\x06\x3f\xab\x48\xa7\x36\xb9\x9d\x26\xac\x93\x09\xe7\x4c\x68\xe3\x9c\xce\x38\x67\x36\x70\x2e\x61\x16\x72\xb5\x40\x9a\x5d\xc2\x39\x9b\x71\x4e\x25\xa4\xf3\x45\x6a\x23\x99\xb2\x88\x8c\x72\xbe\x61\x7c\x6e\x89\x73\xda\xc6\x25\xce\x19\x82\xca\x55\x9c\x5b\xe1\x7c\xd6\x5b\xfc\x64\x54\xc2\xf4\x12\x04\xb2\x12\x90\x89\x79\x91\xdd\x16\x41\x57\xdd\xb0\x8a\xed\xec\x2f\x66\xf6\xe7\xc0\xca\x0d\x3c\xb3\x0d\x9e\x21\x74\x9a\x88\x9f\x15\x3c\x33\x6e\x03\xcf\x74\x83\x67\x71\x03\xcf\x42\x83\x67\xc8\x49\x95\xc1\xcf\x2a\x9e\x45\x0d\x46\x22\x0b\x94\x2d\x44\x8b\x72\x7d\x15\x13\xa2\x75\x72\xc5\x25\xa6\x35\xf0\x48\x6d\xa8\x05\xbe\x25\x54\x43\x68\x71\x90\xac\xdb\x17\x88\x46\xd6\x89\x2b\xfc\xcf\x37\xe8\x99\xf8\xdf\xf5\x02\xde\xbb\xd8\xda\x57\xb2\x29\x72\x96\x65\xcf\xb2\xec\x59\x96\x3d\xcb\xb2\x67\x59\xf6\x2c\xcb\x9e\x65\xd9\xb3\x2c\x7b\x96\x65\xcf\xb2\xec\xa9\xb2\x6c\xd7\x3d\x81\x64\xb2\x31\x7d\x28\x26\xef\xeb\xc1\xa8\xe2\x39\x4a\x37\x26\xaf\xa4\xd6\xe3\xcd\x18\x26\xd3\x59\x31\x9b\x52\x12\xa4\xec\x97\xb0\x75\xdc\x2f\x16\xa7\x22\x97\x1f\xeb\xc1\xe8\x7d\x57\x41\x19\x63\xfc\x33\xe5\x2e\x02\x4f\xa3\xec\xbd\x70\xbf\x33\x48\x32\x8a\xe9\xf4\x87\x57\xd3\xd9\xe4\xb1\x9c\x3d\x4e\x2a\x3e\x28\xc7\x23\x7a\xc7\xc1\x08\xe5\xee\xe9\xec\x53\x5d\xbd\x81\xee\x7c\x7e\x5b\x4c\xab\x5f\xc6\x0f\x45\x39\x98\x7d\xba\x04\xf9\xbc\xad\xdc\xc3\x64\x7c\x3f\xa9\xa6\xd3\x5f\x8a\xd1\x60\x58\xcc\x06\xe3\xd1\xe5\x96\x92\x77\xc5\xa8\xfc\xc4\xa7\x0f\x83\x11\xd3\x53\x36\x18\xdd\x0d\x46\x83\x59\xc5\x70\xe6\x8b\xc9\xeb\x45\x57\xca\xbe\xce\xe6\xad\xbd\x62\xda\x2f\x26\x93\xe2\xd3\xa5\x60\xc6\xac\xa6\x8e\xef\xee\xa6\xd5\xec\x52\xbc\x6e\xdf\xf5\x7e\x49\xcb\xf1\x7a\x36\x29\x46\xd3\xbb\xf1\x64\xc8\xc7\x93\xc1\xfd\x60\x74\x69\xc5\x1f\x98\x15\x7f\x78\xfe\xef\xef\xab\x4f\x77\x93\x62\x58\x4d\xd9\xde\x31\xfe\x22\xfe\xf0\xcb\xc1\xe3\x78\x56\xb6\xa3\xb4\xd6\x4c\xca\x8e\xe2\xdc\x88\x67\x7b\x44\xf3\x5c\x4a\xf1\xec\x8f\xea\x41\x5a\xf1\x3c\x1b\x1f\xde\x83\x52\xe2\xf9\x80\xe9\x99\x0e\x86\x0f\x75\xb5\x98\x9f\xc5\x44\x5f\x4e\xc6\xb3\x62\x56\xfd\x51\xf4\xaa\xfb\xef\xb1\xe3\x8d\x1c\xed\x52\xde\xf3\x5f\xfe\x9c\xe0\xee\x2f\xbd\xea\x6e\x9a\x19\xde\x8a\x0b\x28\x62\xf2\x9a\x79\xb3\x6e\xab\x94\x83\xde\x0f\xaf\x8a\x85\xaf\xbc\xad\x1d\xd3\xf3\x50\x73\xc7\x34\x77\x5c\xdf\x84\x14\x5e\x3c\xb5\xfe\x38\xad\x18\x21\xc9\x65\x7f\x52\xdd\x51\x07\xc5\x1e\xc4\x20\xc0\xc7\x26\x4e\xa9\xdb\x20\x43\xcb\xde\x6e\x3c\xe8\x95\x7c\x5a\xd5\x55\x39\x63\x50\x3c\xce\xfa\x82\x53\xd2\xc3\x64\x3c\x1f\xac\x86\x6e\xfe\x7a\xac\xa7\x23\x04\x41\xa1\xb2\x9d\x22\xc7\xd4\xa0\x99\xee\x73\x0b\x21\xd8\x5a\x42\x50\xcc\x62\x56\x1f\x13\xfc\x13\xca\x20\x22\x06\xa6\xaf\x1c\x28\x69\xae\x51\xb5\x75\xa9\x32\x95\xb0\xd7\x4d\x81\xa7\x77\x2b\x79\x45\x12\x84\x1b\x71\x58\x08\xc1\x0c\x79\x43\x20\xdf\xd6\xf9\x89\xe9\x0a\xa2\x51\xc9\x03\xe2\x3a\x82\xb4\x9e\x49\x3a\x87\xf5\x0e\x35\x01\x1d\x9e\x86\x12\x45\x40\xc7\xc4\xb5\x44\xfe\x1c\x30\x5f\xd2\x49\xac\x6d\x3a\xda\x68\xd0\x71\x62\x96\x25\x58\x4d\x4a\xbc\xc3\x2f\x9a\x4e\x5d\x51\xd1\xc0\x91\x64\x07\x90\xa7\x21\x47\x95\xc2\x19\x16\x89\xfb\x30\x25\xeb\x65\xe7\x7c\xed\x2b\x4b\x43\x5a\xe1\x4d\x7f\xff\xab\x35\x6b\xb7\xd9\x14\x1f\xf6\xbb\x9a\xaf\x94\x69\xfb\x98\x63\xc6\x9a\x73\xf9\x5e\xe7\xfc\xe2\xc3\x09\x5e\xf9\xad\x4a\x07\xbb\xe3\xb7\x6a\x6d\xf5\xc3\x6f\x95\x6a\x8c\x41\x17\x38\xf2\x61\xca\x6e\x1f\x67\xb3\xf1\xe8\x74\xf7\xf9\xd5\x0e\x88\x79\xe3\xb4\xed\x77\x98\x5f\x29\xf5\x45\x3c\xe5\x7f\x9b\xfd\x32\x0f\xde\x93\x62\x2c\x51\xdc\xd6\x9a\x1c\x94\x9d\x47\xa5\x32\xa2\x18\xaf\xc8\x76\x45\x27\xe3\x11\x67\x62\xf2\x88\x8b\xe4\xdf\x68\x40\x05\x14\xbd\x82\x45\x0c\x01\x25\x2c\x78\x4d\xfe\xbe\xf8\x1d\xc5\x36\xd0\xe4\x83\x69\x43\xf2\x1d\xb2\x41\x27\x07\x40\xa5\x6c\xf2\xd1\x36\x98\x82\x5f\x3c\xdd\xde\x05\x9a\x0c\x93\x62\xe4\xe0\xac\xe3\xa8\x4b\x70\x88\xaa\x71\x46\xa4\xe0\x1f\xd6\x62\x35\x32\x77\xc1\x0c\xa7\x5d\xcd\x21\x92\xf7\x3c\x8a\x9c\x9a\xf6\x64\xb0\x13\x1b\xc9\x89\x33\x70\xf0\xe4\x70\xe6\x4c\x01\x4e\x59\xfc\x2c\x2c\x87\x62\xe0\x60\x3c\xb9\xa7\x79\x95\x7c\x74\x8d\x33\xa0\x51\xf2\xb6\x31\xbf\x86\x72\x60\x85\x4e\x1e\x77\xc9\xcf\xc6\x82\xf1\x28\x05\x43\x88\x16\x44\x70\x4c\x52\x7d\x65\x51\x66\xd7\xc9\x2f\x38\x92\xde\xa1\x50\xcf\x08\x74\x55\x21\xdd\x92\x45\x8a\x08\x7d\x51\x52\xcf\x39\x68\x59\x80\xb6\xc9\x82\x23\xbb\x38\xd2\x9b\xd2\x9d\x32\xf8\x69\x52\x69\xa8\x92\xdc\xd3\x50\xa7\x4a\xcf\xc6\x41\xdd\x93\x07\x1e\x43\xed\x28\x3d\x1a\x0f\x75\xca\x10\xb6\xcc\x9e\x96\x34\x63\x54\x3a\xed\xcb\x68\x1a\x4f\xa1\xc9\x19\x50\x2f\x5c\x02\x29\x36\x0a\x89\xe4\x28\x72\xab\x28\x29\x80\x00\xb9\xf6\x73\x08\xda\x80\x94\xaa\x20\x7a\x07\x8b\x30\x0b\x2e\xc4\x1c\xbc\xc4\x93\x02\x88\xcf\x45\x04\x06\x0a\x45\x53\xd2\x66\x6b\xf2\x71\x96\x3e\x82\x21\xbf\x49\x1f\x11\x68\x70\x7a\xb4\x31\x34\x7b\xce\x21\xc0\x29\x88\x8e\xb4\x4e\x15\x03\x58\x8f\xfa\x28\xd9\xd3\x38\x84\xce\x9a\x32\x63\x28\x41\x2b\x43\xce\x9b\xd6\x92\xef\xaf\x73\x81\x1c\xb2\x10\xa0\xc9\xa6\x09\xdf\x16\xff\x18\x47\x1b\x2b\x04\x41\xb4\x0d\x44\xbe\x95\x16\x5c\x03\x8d\x08\x78\xd4\x48\xe0\x10\x9d\x4f\x5f\x94\xb3\xf4\xea\x29\xb0\x80\xe3\xe0\x69\x27\x2e\x14\x1a\x5c\xba\x66\x4e\xb8\x06\x96\x7c\xf2\xc5\x4c\x9b\x56\x49\xd9\x29\x49\xcf\x6a\x54\x1e\xaf\x93\x67\xac\x88\xe4\xe4\x1b\x0a\xd0\xde\xe1\x67\xb1\xc4\xe4\x58\x9b\x5c\xc1\xe9\x37\xc2\x8e\x73\xe9\x8b\x12\x76\x0e\x5a\x27\x6b\x33\x47\x1a\x5d\xf2\xb9\xcc\x8e\xa0\x0e\x53\x25\xa5\x21\x22\xca\xe0\x10\xb1\xc8\x51\xda\x68\x2a\xe3\x9d\xc2\x17\x7a\x7a\xe7\xc1\xab\xc0\xa4\x80\x88\xab\x88\x3c\x56\xad\xda\x29\x09\xc2\xb2\xd8\x27\xcd\xed\x86\xbc\x5e\x4b\x32\x3d\x4b\xa0\xcf\x65\x0a\x3e\x63\xf1\x9b\x53\xd9\xe5\x97\x5c\x1d\x91\x77\x92\x5d\x9f\x04\x4f\xbe\x85\x64\x32\x94\xe6\xd0\xa3\x5e\x4d\x58\xab\x75\x72\x2a\xd5\xa8\xbc\x92\xc7\xa0\x4e\xbe\xaf\x41\x5b\x5c\xd4\x02\x4c\x74\xf8\x59\xcc\x4b\xa0\xad\x36\x9a\x4d\x0d\xc2\x64\xb7\x5c\x6a\x84\x62\x09\x68\x35\x47\x40\x48\x96\x8d\x39\xbc\x80\x25\xfa\x44\xda\x39\x69\xde\x22\x85\xe3\x70\x88\x0e\x38\xcd\x85\x04\x24\x70\x8d\x83\x2c\x36\x42\x7e\xb9\x65\xfe\x16\x15\x85\x8b\x90\xce\x82\x47\x1d\x55\x29\x3b\x4d\x60\x23\x82\x03\x9f\xdc\xb2\x5d\x09\x36\xd1\x01\xe7\x81\x62\x90\xf8\x08\x5a\x58\xea\x18\x3f\xe4\x97\x8e\xe8\x4d\x36\x98\xc2\xcd\x91\xe2\x15\x01\x62\x44\xa9\x03\x9f\x4d\xf4\x06\x47\x7e\xca\x8e\x59\x50\x74\x55\xa0\x32\x0b\xfc\xf1\xb4\x9d\x64\x11\x81\x5c\x50\x74\x3d\x2a\xf9\xb9\x53\xac\x71\xa7\x34\x58\x32\xcb\x13\x06\x51\x28\x79\x60\x86\x7c\x4f\x20\x93\x48\xf7\x70\x84\x48\x92\x9c\x85\x68\x0d\x98\x48\xf4\x4a\x12\xf2\x68\x19\x90\xf8\x22\x92\xb2\x94\x82\xe8\xea\x69\xbb\x4e\x12\x85\x48\x1b\x3a\x44\xf2\x23\x4e\x2f\x11\x30\x4d\xd3\xeb\x43\x7a\xcb\x88\xef\x46\x31\x0e\xc8\x07\x59\x49\x05\x4a\x47\x7a\x7b\x0a\x02\xe0\x40\xea\xb4\xdf\x42\x64\x31\xea\x2c\x70\x35\xce\xe4\x89\x07\x08\x57\x83\x91\x89\x42\x95\x8d\xd7\xb5\xcb\x1e\xc8\x5a\x35\xae\xc8\xc4\x28\xc8\xd7\x98\xb6\x2b\x64\xe3\x6e\x6f\x91\x90\x59\xe3\x59\x7a\x66\x68\x26\x72\x63\xbc\x7b\x1a\xf2\x64\x45\x97\xd8\x84\xd2\x01\x7f\x25\x72\x2f\x25\x99\x9d\xaa\xf4\x45\x8b\x84\xf4\xe4\xc9\x8e\xf0\x49\x01\x1d\x8c\xcd\xfe\xdd\xb8\xf2\xca\x90\xa3\xb7\xcc\xdf\xbc\x50\x44\x6d\xb5\x4c\x2c\x04\xf9\x9c\x56\x96\x27\x94\x93\x31\x91\x39\x9b\x3c\xd0\x2d\xc4\xe0\xd3\x17\x45\x9b\x93\x60\x68\xb3\x0b\x1c\x1d\x65\xd0\xe4\x51\x08\x08\xe9\xe9\xf5\x9d\x44\xaa\x38\xa7\x49\x41\x38\x25\xd7\x68\xe5\xd3\x4c\xe1\xac\x5b\x4f\x78\x90\xa2\x38\x10\x85\x25\x37\x7e\x65\xc1\x28\x93\xba\x26\xe6\x81\x0b\x42\xf0\xa1\x22\xe6\x3c\x0d\x0d\x32\x4f\xa4\xe7\x25\x71\x0f\x62\x32\x31\x6d\x5e\x2a\x62\x55\x14\xf6\xc1\xea\xb4\x31\xda\x18\xda\x12\x23\x51\x96\xec\x38\xad\x75\x1c\x89\x6d\x21\x81\x1c\x9e\xe5\x82\x1a\x12\x13\x73\x44\x38\x10\x2a\xa8\x15\x84\x3f\x8a\x1a\xe2\x6c\x1f\x9c\x09\x25\xae\x28\xe1\x1e\xbd\x32\xb1\x4f\x02\x17\xab\x69\x4f\x11\xc1\x05\x97\x9d\xc2\x7a\x84\x1a\xe7\x01\x85\xfd\x74\xa1\x9b\xd0\x26\x5d\xee\x56\x26\xb6\x44\x00\xe6\x55\xf6\xfa\xa7\x98\x04\x16\x49\x89\x75\x8b\x90\x5f\x92\xe1\x90\xe8\xbd\xfa\x60\xf5\x46\xf7\xce\xae\x76\x2f\x1b\x98\xcb\x9d\x0b\xba\xf9\xcd\x68\x44\x13\x49\x4a\x82\xa1\x7d\x3d\x93\xfb\xa6\x50\x5f\xd8\x37\x85\xe7\xa0\xbe\xb5\x22\xd3\xd3\xa6\x6f\xa2\x40\xd8\xb7\x93\xae\x44\x3a\x44\x18\xd0\xc4\x11\xa1\xc9\xb1\x05\x12\x4d\xfc\x2c\x26\x52\x42\x8a\x13\x22\x68\xa3\xb3\x80\x68\x22\x7e\x16\xf9\x48\x09\x9d\x4b\xa1\x8b\x90\x7c\x48\xe2\x20\x26\x07\x49\x09\x2e\x71\x32\xa9\x23\x28\x4b\x91\x78\x0c\x7e\x16\xe8\x61\x09\x75\xfb\xc8\xdf\x09\x0c\xc8\xcc\x38\xc7\x21\xe1\xcd\x7c\xf9\x05\x1c\xb8\x0c\x08\x2a\x47\x06\x50\xce\xd4\x24\x8a\xe1\x84\x28\xa2\x48\x42\xa5\xbb\x4d\x33\xbd\xa6\xb2\x48\x34\x54\x13\x27\x20\x35\x6a\x33\x29\x47\x82\x41\x90\x96\xe7\x9f\x86\xb2\xaa\x25\x29\xab\x7e\xd2\x7f\x3f\x6d\x0b\x3c\x20\x59\xa4\x2b\x01\xb5\x2c\x91\x07\xd1\x94\x30\x95\xe3\xa7\x79\x3a\x15\xb6\x69\x9a\x7c\x48\xc2\xa3\x26\xc7\xf7\x80\xec\xce\x7a\x2c\x9b\xa9\x7e\x0a\x22\x13\x55\x22\x7b\x1e\x79\x2d\x05\x0b\xc0\xb1\x47\x92\xc8\x3c\x99\xbe\x92\x34\xa8\x15\xaa\x8c\x88\x7f\x8a\xf0\x25\x4a\xae\x40\x05\x14\x32\x28\x54\x9e\xd5\x38\x24\xc4\x38\x45\xc7\x59\xd2\xc6\xc4\x10\xad\x46\xfc\x7d\x1a\x72\x47\xcb\xa4\x91\x98\x94\x0a\x3c\x19\xa6\xa3\xfc\x89\x8c\x92\xee\xa6\xc0\x49\x53\x49\x5c\xb5\x21\x4f\x1f\x12\x42\xe7\x10\xd9\x91\x3a\x58\xa1\x0b\x12\x8a\x2c\xcb\x7f\xd2\xaa\x7b\xe4\x18\x4c\x22\x98\x95\x9c\x7a\x60\x82\xfb\xb4\x1c\x31\x38\x1e\xb1\x07\xae\xc0\xc9\x05\xe5\xc3\x2c\x94\x23\x04\xb1\x42\x14\xbe\x70\xe6\xa2\xa3\xab\x6d\x2d\xa3\x0d\x78\xa6\xc1\x5b\xc7\x22\x04\x13\xd2\xf7\xd5\x65\xfc\x29\xb6\x7d\x0d\xd7\x55\xbb\xa4\x7b\xae\x69\x77\x2f\xa7\x51\xc9\xc0\x64\x38\x34\xf0\xd8\xaa\xde\xd5\x01\x6f\x2b\xfb\x21\x01\x5c\xd4\x64\xb7\x2e\x7c\x21\x21\xb8\x14\x48\x40\xa5\xdb\x2a\x53\x18\x09\x0d\x5e\x19\xd6\xce\xcc\x26\xd3\x28\x43\xfa\xa5\xa6\xf7\x07\xa5\xa3\x93\x7f\xb3\xb1\x1d\x94\x4b\x81\xd6\x38\xaf\xde\xbb\x02\x82\xd5\xf8\x49\x1d\x90\x30\xe0\x85\x5f\x49\xc5\x74\x41\x02\xb8\x7f\x27\x51\xc0\xa5\x28\xec\xd6\x6e\x54\xcd\x7b\xe9\x14\x25\x4a\xe6\xa3\x64\x99\x77\xd3\x91\xf7\xf8\x77\xd2\x40\x70\x28\xa8\xe8\x54\xdb\xe2\xa7\xa1\x1c\x51\x25\x51\x30\xb6\x33\x28\x7c\x23\xd2\x1a\x5b\xd2\x01\xa7\x24\x3d\x2d\xc5\x5a\x12\x28\xd8\xeb\x02\x82\x42\xfc\x5a\x44\x03\x73\x46\x81\x8b\x12\x95\xd1\x88\x52\x88\x00\xe3\x7c\x01\xc1\x20\x24\xc5\x3c\x93\x12\x90\x0a\xa9\xe8\x56\xd2\x69\x12\x63\x50\x14\x5b\xa6\x04\x83\xd2\xa1\xd7\xe0\x0d\x18\x14\xdb\x44\x84\x28\x6c\x01\x4a\x49\xfc\x2c\xf4\x2b\xf2\xcf\x70\xef\xf2\x1d\x9f\x01\xb4\x0b\x6b\x73\xc3\xc9\x33\x46\x82\x0b\x66\x6d\x66\x31\x83\x51\xc6\x3b\xe9\xc0\xd9\xc6\x96\x7f\xbd\x01\x09\x26\x2a\x8e\x54\x64\xad\x01\xca\xc0\x74\xac\xaf\xe9\x1e\x64\xa7\x37\xaa\x03\x29\xb8\x06\x15\xce\x76\xf7\xc4\xfb\x4c\x58\x8d\xea\xf0\x37\xa7\x7c\xd0\x2d\x88\x09\x10\x4c\x8a\x00\x8a\xcc\xdd\x80\x27\xa1\x29\x80\x0b\x9e\xee\x2d\xb5\xf9\x7b\x00\x27\xd5\x5b\x90\xd6\x32\x83\x84\x8c\x19\x0a\x27\xa4\x25\xa3\x16\x50\x3b\x0d\xe0\x8c\x65\xe9\x99\xc6\x60\xf3\x1c\x78\x4f\x94\x9f\x5c\x0f\xb4\x57\x85\xa3\x68\x50\x6e\x19\x13\x8a\x7b\x32\x45\xc0\x85\x60\x0e\x82\x57\xf9\x29\xf2\x3f\x8a\xef\xe4\xd8\x46\x3d\xb6\xac\x57\x2f\x3b\x30\x38\x14\x5c\x2e\xd7\xf0\xc6\xe5\x40\x9e\x36\xa7\x63\x15\x6f\x47\xe3\xd1\x53\x35\x19\x1f\x1d\xfb\xe2\xae\xaa\x7a\x48\x80\x8e\x0c\x7f\xd1\x5d\xed\x9b\x74\x0d\x50\x4c\xbd\x75\x60\x7c\x73\x6f\x9b\x8d\x14\x45\x16\x94\xd5\xa5\x60\x26\x5d\x67\x1e\x1c\x02\x88\xf6\x06\xd7\x57\x47\x24\x54\x1a\x2c\x05\xc1\x73\x41\x27\x0b\x0b\xfa\x62\x22\x85\x16\x55\x89\xc4\x10\xf0\xa8\x74\x3e\x28\x21\x8a\xc8\x15\xea\x1d\xe0\x88\x75\xba\xd8\x5c\xa4\xb4\xf8\x0a\xc6\xa6\x4b\xc2\xe9\x89\xf5\x57\xbe\x40\x14\x69\x37\x28\x99\x8c\xa0\x5a\xd4\x7c\x21\x37\x1c\x8b\xd2\x21\xf1\x3c\xfa\x4d\x40\xb5\xf8\x0e\x21\x52\x9e\x0b\xc4\xcf\x52\x38\x20\xa6\x20\x4a\xc2\x3f\x14\x1b\x9c\xa3\xfb\xd9\x29\x07\x1c\x7d\xd3\x9e\x98\x3a\x8e\x8c\xc4\x1f\x4b\xbe\x57\x28\x1f\x9b\x2c\x19\x0b\xe7\x89\x42\x23\xa4\xd3\x5d\xf2\xc9\xb7\x46\xe3\x9b\xe2\xab\x4b\xf2\xc6\x42\xb9\xd0\x18\xf2\xdb\x12\x8a\x2e\x75\x57\xe0\xf3\x26\x0e\x12\x02\x0a\xc9\x88\x35\x48\x87\xb4\xf2\xc7\x08\xda\x69\x96\x9e\xa2\xb9\x17\xd9\x25\x67\x28\x8a\x8c\x93\x36\x60\x1c\x48\x49\xd7\x52\x09\x9b\xb7\x66\x70\x92\x51\xc9\xa3\x88\x76\x86\xe2\x4b\xda\x95\xaf\x60\x0d\x91\x17\x29\x41\x91\xc1\x9c\xb1\x86\xb6\xe7\x71\x3c\x1a\x9c\x01\x2f\x29\x00\xa6\x22\x1a\xa8\x55\xfe\x4e\x6f\x43\x31\xe0\x22\x99\xbb\x69\xc3\x0c\x04\x41\x57\x63\x3a\x97\x02\x51\xd1\x2e\x20\x2a\x9b\xce\x07\x88\x48\xf1\x3d\x36\x15\x28\xcc\x0f\x11\x10\x3a\xfc\xc6\x4e\x49\x9f\xa1\xaf\x81\x66\x01\x14\xaa\x9c\x01\x6c\x44\x38\xf2\x48\x40\x29\x3a\x12\x39\x0c\x5a\x4f\x50\xa7\x91\x1a\xe4\x6f\x11\xbc\x0a\x6f\x55\x86\x57\xba\x46\x50\x37\xc1\x8f\x7f\x1f\x56\x8e\x67\xb4\x3c\xa3\xe5\x7f\x06\x5a\xae\x9d\x91\xde\x8f\xc7\xf7\x75\xf5\xb5\x1f\x92\x2a\x99\x0c\x85\x74\x29\x10\xd2\x53\xfc\x43\x99\x36\x55\xa4\xc5\xb5\x0e\xa8\xe7\xa2\x28\x33\x47\x55\xd0\xf5\x0d\x44\x57\x18\xa0\x70\x6e\x2a\x5b\x41\x4a\x08\x9a\x20\x22\xce\x15\xa8\x68\xfa\x0a\xa2\x8d\xa5\x04\xaf\x3d\xca\xa6\x98\xa5\x1d\xf9\x54\xe7\xaf\x0e\xbc\x6d\x5d\x45\x6a\x54\xb0\x3f\x99\x75\x65\x42\x06\xc9\x94\x40\xdc\x2f\x15\xed\xfb\x11\xc9\x40\xa5\x3c\x48\x32\xdb\x0a\x8e\xee\x37\x75\x64\xba\x66\x11\x74\x54\x34\x25\x4a\xb3\x1a\x08\x99\x42\x40\x49\x8e\xee\x55\x54\x86\xbe\x29\x3a\xbd\xa5\xfb\x5b\x95\x4b\xc7\xa6\xdc\xa2\x60\x89\xda\x4f\x88\x57\x08\x18\x7e\xae\x40\x3b\x5b\x44\x90\x01\xf1\x04\x9f\x82\x09\x8a\x6e\x49\x46\x8d\x6d\xbd\x5f\x9b\x1f\x83\x6d\xcb\xb5\x3e\xa9\xd7\x1a\x94\x93\x85\x05\x14\x9e\xd3\x64\x09\x54\x63\xa5\xbd\xf1\xa0\x83\xec\xa3\x1a\x4e\xdd\x20\xd1\x93\x31\x1f\x21\x07\x54\x65\x6b\xcc\xe2\x34\x8e\x96\x72\xfa\xd7\xbf\xbe\x15\x9d\x13\x45\x5b\xa6\x14\x89\x92\x02\x51\x52\x6f\x3a\x1f\x46\x68\xef\x6a\x22\x8c\xf8\x28\x02\x04\x85\x7a\x79\xc8\x66\x53\xdc\x51\xb0\x7b\x9c\x19\x7a\xd9\xf4\xa0\x9c\xc5\x1b\x3b\x49\x03\x62\x34\xa0\x12\x3c\x05\x04\x95\xb4\xeb\x40\x67\xc7\x3e\xd2\xa9\x8e\x35\xe9\x7b\xeb\xf0\xf8\x47\xa3\xb5\xdd\xa9\x52\x2f\x63\x7c\x7f\x31\xb5\xfa\xd7\x62\x79\x1e\x84\x94\x4c\xc9\xb4\xe3\xa7\x05\xd9\x14\x82\xb7\x11\x21\x8d\x36\x5c\x50\x97\x71\xb5\x07\x4b\x56\x98\xd2\x94\x60\x3c\x2e\x17\x44\xda\x90\x23\x9e\x42\xa7\x81\x58\xcc\x80\xb3\x91\xe3\xda\xc6\x42\x82\x23\xba\xb9\x38\x0a\xd0\x14\x8d\x51\x47\xd2\x6f\x9c\x33\xdc\x83\xd1\x54\x8e\x76\x86\xf0\xd9\x44\x23\x75\x89\xf5\xd4\x88\x7a\x84\x8b\xfa\x47\xd9\x6c\xae\x48\xbf\xd4\x73\xe8\x90\xa5\x44\x1e\x4b\x07\x62\x39\x2c\x2f\xc5\x5b\x76\xe6\xda\x90\xb5\xa0\x05\xb2\xaf\x34\x06\x50\x15\x4f\xaf\xe6\xa9\x0f\x96\xfa\xa0\xc1\x30\x1c\x4c\x28\xd3\x29\x16\xf9\x09\x50\x44\x43\xd2\x91\x62\x48\x2f\x46\x40\x1b\x9f\x86\x08\xc2\xd6\xd0\xa5\x0b\xb6\x9f\xe6\x44\x91\x55\x23\x18\x44\xba\x68\xe9\xaf\x71\xa6\x00\x83\x4a\xb3\x5f\x6c\x0b\xa2\x12\xa8\x28\x4c\x2e\x5d\xe3\x00\xc2\xd3\xf6\x30\x99\x07\x92\x39\xdf\xf2\x91\x6c\xfa\x0c\xd9\x0d\x2e\x33\xa8\x12\x65\x89\x45\x56\x32\x06\xb4\x4d\x9a\x8a\x4d\x5a\x8a\x6c\xec\x8b\xc4\x37\xd2\x73\xb1\x3f\xa9\x17\xc1\xbe\xc9\x86\x35\x55\x68\x62\x11\x50\xfc\xea\x6c\x0a\xdf\xb2\x70\x55\x0b\x13\x57\x15\xd2\x49\x56\x99\xa3\xf9\xd2\xe9\xb2\xa5\xd8\xb6\x28\xfc\xf8\x14\x4d\x59\xf6\xa9\x68\x01\xca\x22\x05\x5e\x9c\xbd\x50\x30\x59\x8a\x7b\x2b\x0c\x08\xa5\xc9\xa8\x31\x9d\x40\x48\x99\x5f\x44\xe6\x28\x92\x29\x24\x64\x32\x76\x5c\x98\x3e\x52\xdc\x48\x0e\xd2\xc5\xe6\x48\x50\x1a\x0a\x3f\x41\x41\x21\x83\xa7\x83\x6a\x0a\x59\xef\x7c\x61\xc1\x58\xcd\xd2\xb3\x89\x3e\x19\x2c\x31\x64\xe9\xea\x14\x7f\x3a\xa6\x78\x13\x4d\x7f\x32\x77\x97\x8c\x2c\x75\x13\x3f\xbb\x19\x40\xca\xaa\xf3\xd6\x8e\x2e\x40\x4b\xd0\xcb\xad\x10\x3a\x3e\x54\x25\x9d\x23\x28\x0a\x4f\xa1\x63\x04\x6d\xc0\x51\xbc\x60\x3a\x60\xa4\x3b\x2a\x0a\xf0\xc1\xe1\xa7\x41\x92\x14\x58\xdc\x65\x6b\x72\x19\x92\xfd\xa8\xb6\x4d\x06\x85\x71\xc6\x01\x93\x7f\x80\x44\x56\x40\x1b\x87\xa9\xb8\x49\xc5\x4d\x0a\x10\x4f\xb6\xf8\x79\xd0\x7a\x61\xd9\x2b\x4d\x33\xa3\xcd\xfb\x2c\xd3\xad\xcb\x07\xed\x8e\x42\xcf\x53\x54\x02\x55\x00\x85\x51\x5f\x9e\xfc\x48\x02\x77\xed\x6d\x0e\xc1\x9f\xce\xfc\x3d\xf5\x69\x7c\x20\x01\xba\x01\x78\x45\xbb\xdd\x61\xda\x05\xe0\x75\xb6\xe8\xd6\xb6\x6c\xac\xbc\x97\xa6\xab\x72\xe9\xd1\x51\x40\x84\xb8\x7a\x02\x22\x09\x70\x48\x00\xa0\x3d\x64\xba\x53\x43\xf9\x39\x6f\x16\x85\x0e\x96\x9d\x2a\x0c\x85\x5d\x48\xcf\xc5\xa1\xbe\xe2\xe0\x0c\x02\x06\xa8\x95\xb3\xd0\xd4\xc4\x62\x20\xa2\xf1\x8f\xc8\x0f\x12\xd2\x28\x22\x3b\xfd\xa6\x81\xa6\xe0\x2e\x74\x87\x8a\x49\xbf\xf0\xed\x91\x39\x23\xf8\xe3\x44\x15\x16\xb2\x2b\xc1\x02\xee\x94\x32\xb8\x70\x6c\x85\xcd\x52\x3a\x0a\x78\xa0\x1d\xc5\xe0\x8d\xc4\xc4\x4b\xde\x58\x5e\x67\xac\x90\x32\x63\x45\x1e\x88\xce\xfe\x05\x2a\xe0\x67\x31\x41\xa8\x14\x48\x0f\x2a\x82\x8a\x4b\x7c\x43\x90\x21\x53\x01\x95\x5c\x3e\xc8\xbe\x1f\xd7\x46\x81\x13\xb4\x14\x1a\x45\x7f\x3a\xf3\xca\x27\xc9\x64\x06\x1d\x64\x99\x7b\xb5\x64\x0f\x9c\x7d\xba\x6c\x04\xe9\x11\xee\x85\xc7\xcf\x02\xf2\x29\x48\xf4\x94\x37\xf0\xd8\xd8\x48\x93\x7b\x88\xc3\xcf\x12\x32\x50\xdc\x08\x1b\x60\x44\x08\x4d\x56\x0d\x04\x02\x74\xe6\x16\x2d\x4d\x4d\x5e\x26\x97\x7c\x0f\x58\x13\x18\xdc\x34\x20\x13\x16\x90\x95\x69\x17\xa2\x0b\xd1\x34\x5f\x67\xd3\x68\xa7\x1b\x83\x70\x1b\xd2\xb9\x96\x94\x39\x36\xbf\xd3\x75\x2e\x6d\x1d\xa2\x25\x0a\x58\x7a\x05\x2d\x29\x63\x9e\x79\x20\x2d\xb2\x32\xa0\x82\x4a\x54\x1d\x47\xe7\x9c\x2a\xda\xd3\x4e\xc3\x50\x8a\xce\xeb\x32\xe1\x68\x7c\x21\x56\x4c\xb8\x97\x0f\xdf\x7a\x48\x53\x27\x00\x97\x41\x17\x16\x55\x1c\x96\x9e\xcd\x06\xaf\x40\x90\xa3\xa0\x46\xd6\xf9\xfc\x5c\xd0\x37\x43\x47\x0d\x86\x02\x58\x47\xdf\xd8\x4d\x24\x8e\x93\x46\xa0\x5b\x46\xe4\x69\x04\x7a\x6d\x04\x3c\x13\xda\x7c\x07\x41\x99\xbd\x39\x68\x7a\xa3\x6d\xe2\xbd\x93\x0d\x86\x33\xfd\x86\x16\x13\x45\xc2\x32\xc6\xd9\xc4\xde\x32\x42\x2c\x78\x06\xb9\x12\x64\x2e\x95\x8d\xef\x9d\x69\x58\x4e\x66\x38\xaa\xe1\x37\x3a\x67\x84\x6c\x96\x8f\x44\x0f\xeb\x12\xd7\x8d\xb1\xa0\x98\x38\xd2\xeb\x25\x14\x6a\x72\x36\x68\x38\x85\xce\x40\x91\x99\x5c\x9a\x05\xb6\x02\x9f\x0b\xb0\xc9\x0c\x37\x7f\xc9\xf4\x9f\x48\x22\x7e\xa1\xdb\x41\x70\xca\x43\xf6\xb2\x32\x14\xc2\x9d\x2e\xb6\xa0\x38\x4d\xcd\x76\x32\x81\x83\x25\xef\xa6\x86\x93\xe5\x48\xf6\x0d\x93\xb5\x05\x79\x47\x49\xef\xdb\x20\x46\x3e\x0c\xcb\x97\x91\x6c\xc1\xc6\xeb\xec\x01\x20\x2c\x89\x4c\x6c\x35\x48\x8c\xa2\x43\x49\x8a\xd9\x9e\xa5\x85\xc4\x8f\xc9\x9c\x25\xbd\x24\x0a\x2a\xb6\x4c\xb8\x84\xaf\x6a\xc9\xe8\xcc\x3a\x14\x88\xf1\x65\x0a\x8a\x98\xa4\xd5\x62\x3c\x04\xe2\xd2\x9a\x04\xbb\xa1\x81\x17\xb9\xca\x82\x35\x6f\xf8\x48\x53\x26\xc9\x22\x75\xc2\x54\x41\x01\xfa\x0d\x59\xaf\x66\x4f\x25\x1c\xad\x0f\x81\x02\x61\x3b\x50\x14\x00\xcb\x2f\x5f\x95\x0c\x7a\x02\x6a\x68\xa4\xa5\x35\x53\xa3\x92\xa7\x10\xc5\x62\xa7\x7b\x4e\x08\x11\x55\x28\x97\x32\x54\xf2\x6d\xcb\x67\xac\xc9\xb3\xc1\x04\x24\x1b\x39\x68\x3e\x05\xd7\x36\x89\x73\xa4\x98\x4b\xb1\x6c\x44\x9e\x0c\x5c\x34\xe0\xc6\x7f\xce\x17\x0a\x48\x2b\x97\x4b\xce\x47\x31\xe8\x4d\x22\x88\x4b\xe7\x8b\xe4\x55\xd2\x38\x59\x20\xa9\x93\x3a\xe0\x67\x01\x8e\x39\x63\x15\xff\xe4\x82\x16\xac\x21\xa0\x59\x70\xa0\xa5\x58\x47\x81\xeb\xc9\xaa\x2b\x0f\x22\x99\xf3\x91\xeb\x1f\x02\x1f\x2c\x63\x70\x93\x69\x82\xa5\x3b\x51\x14\x4b\x76\x0d\x04\xd0\x9a\xcc\x1d\x92\x3c\x90\x9c\xdf\xc8\x25\x86\x3e\x28\x02\x11\x5b\x21\x80\xf5\xd9\xf1\x27\x47\xdd\x32\x9e\x6e\x90\x58\x48\x0f\x21\x5f\x1c\x91\xa5\x93\x24\x8c\xa8\xfc\x09\x3a\xd3\x9a\x48\x58\x6c\x25\x9d\x7b\x08\x2f\x41\xb8\x58\x68\xf0\x5a\xb3\xf4\xcc\x2b\x6b\x23\x59\x87\xd1\x49\xd6\x12\xf2\x54\x92\x25\xb6\x20\x48\xb9\xa0\x9b\x0b\x61\x77\x81\x24\x14\x39\xac\x26\x73\xa5\x18\x10\xf6\x94\x63\xe9\x99\x26\x48\x83\xa5\xdd\x1f\x17\x62\x9d\x91\x3b\x34\xd4\x25\xc5\x18\x23\x66\x9f\xec\x0f\xc8\xf1\x28\x1f\x52\x8b\x98\xee\x51\xc8\x17\xe1\x24\xab\x4a\xda\xba\xc1\x19\xb7\x51\x16\xd2\x50\xd4\x25\x7a\x2e\x8c\x0c\xe8\x0e\x82\x38\x5f\x50\xbd\xe4\x11\xe4\x1a\x91\x3a\x66\x63\x1b\xe1\x0b\xf2\xe6\x34\x72\x09\x34\x32\x5d\x08\x13\x64\x48\x21\xae\x1a\xbb\x84\x24\x50\xdd\x18\x08\x8a\xcc\x40\x68\xb2\x14\x71\x23\x82\xdc\x44\x8f\xac\xc2\xcf\x02\x2c\xc8\x0a\xaa\x44\xe0\x21\xcb\x18\xed\x40\x51\xb4\x36\xd4\x52\xe6\x8d\xe0\x93\x66\x8d\x54\x88\x8c\xbf\x46\x93\xfc\x0c\x56\x68\xfc\xac\xb0\x35\xc4\x83\x79\x23\x6e\x21\x34\x59\xe2\x0d\xb8\x90\x64\xdd\x92\xef\xa7\xd0\x1e\xbc\xc8\x77\x8d\x04\x4f\xc2\x2b\x12\xd3\x48\x37\xbe\xd4\x09\xd2\x12\x75\x6c\xe8\x6f\x66\x76\x4e\xa1\x88\xe4\xd4\xf2\x3e\x81\x48\x57\x2f\xa1\xa0\x9e\x6e\x3c\x71\x31\x39\x75\xeb\x00\xd6\x7b\xb0\x1a\xa9\x0e\xc5\xcb\x6f\x02\xc8\x2d\x9a\x24\x41\x00\xff\x06\x93\x84\xee\x4d\x80\xa3\x99\x2d\x17\x72\x60\xa2\xe0\x2a\xba\x1c\xce\x0b\x17\x48\x3b\xbd\xd8\x83\x44\x70\x4c\xb6\x55\x01\xac\x44\xad\x74\x19\xb0\x8b\x1a\xa3\x5b\x47\xd2\x9d\x31\x64\x8c\x95\xd1\x83\x0c\xad\x0a\xba\xdf\x49\xae\xd0\xb7\x86\x40\x64\x01\xb8\x11\x7f\x17\x19\xf5\x02\x44\x0b\xb0\x2a\xed\x93\xac\x2e\xad\xd4\x6b\x44\x20\xd3\x00\x93\xc0\x3b\xa2\x36\x9a\x2c\x80\x91\x62\x24\x2a\x10\x78\x43\x06\xb2\x2c\x49\xb0\x2f\x1a\xb2\x2e\x33\xb0\xca\x45\x91\x7c\x39\x51\xa6\x0c\xbc\x21\x0d\x48\x27\x25\xd9\xac\x2e\xa4\x5c\x50\x74\xbb\x4d\x99\x79\xb9\x6e\x98\xb9\xc9\xcc\x3c\x5d\xde\x21\x3b\xd8\x3c\xd1\x78\xa1\x55\x32\xd8\x24\x51\xd9\x25\xdd\xdd\xe5\x4b\x10\x0c\x05\xfe\x97\xb4\xbb\xba\x80\x47\x0f\x0a\xa1\x51\x51\xcc\x01\xc2\x83\x12\xb4\x43\x81\x48\x83\xa3\x2d\x0a\x19\x14\x5d\xe5\x44\x82\x51\x61\xc1\x92\xbc\xb4\xe4\x3c\x74\x9f\x42\x0c\xa6\x4e\x33\x66\x7d\xb9\x4b\x75\xd2\xeb\xaa\x53\x01\xca\x1b\xfc\xac\x70\xcf\xb4\x06\x44\x80\x3d\xd9\x93\xe0\x3a\x78\x32\xbc\xcb\xbb\x06\x0b\xb8\x8c\x31\xb3\xea\xf4\x33\x5d\x6c\x46\x2e\x99\xa8\x6c\x69\x99\x5d\x1a\xc9\x11\x32\xe9\x86\x89\x2d\x86\x34\x96\x24\xd2\x14\x14\xb5\x4e\x66\xe5\x8b\x08\x66\x12\x83\x92\xa8\xd3\x56\x11\xa5\x79\x1a\x72\xa4\xda\x9a\x23\x1a\xd5\x80\x1c\x13\xe1\x1d\x69\xa2\xc3\x1f\xa4\xba\x59\x6d\xfb\x1c\x1c\xce\xab\x51\x0a\x7f\xd2\x9b\x39\xd4\x1a\x14\x96\x7f\x1a\x1a\x50\x51\x73\x09\x14\xa1\x10\x01\xd1\x47\xd2\x4c\x23\x2a\xaa\x34\xad\x46\xa9\x9a\xa7\x3d\x13\x40\x11\x59\x07\x85\x9f\x25\xb0\xf8\x24\x43\x6b\xfa\x2c\x96\x24\x24\x56\x56\x93\xd1\x33\x97\x74\xe8\x9e\xec\x1f\xa3\xa1\xd1\x04\x63\x30\x91\x49\xd0\xda\xd3\xc5\x14\xa4\xa3\x04\xaf\xeb\x24\xff\x4a\xd0\x22\xfe\x48\x06\x54\x2c\x3d\x17\x3b\x47\x36\x32\x0f\x48\x82\xa4\xf2\x2c\x6d\xc4\x2e\x49\x85\xca\xf6\xe6\x1e\xfb\x2f\x5a\x2a\x0a\x52\xcf\xa8\x71\x70\x4f\xef\x24\xe9\xfe\xcc\x83\xb7\x75\x36\x20\x34\x6a\xf1\x25\x59\x7d\x29\x50\x74\x49\x47\xb0\xf9\x3a\x4b\x7a\x65\x1d\x90\xc0\xb4\xdf\x38\xb1\x77\x61\xd4\x75\x80\x68\x1c\x0b\x10\x05\x6a\xb0\x8a\x22\x21\xaa\x68\x16\x94\x10\x89\x34\x6a\xfe\xb8\x84\x32\xf9\xf9\x80\x89\xd7\x01\x94\x67\x11\xbc\x89\x05\xce\x8b\x62\xe9\x99\x71\x04\xf1\x5e\x81\xb7\xb1\x56\xe9\x1e\x1d\x12\x1d\x54\x00\xb5\x80\x17\xe9\x93\x7e\xd8\x7a\xdf\xac\x5e\x5b\x25\x9f\xde\x79\x0a\x17\x41\x21\x0e\x6b\x95\x76\xfd\xc8\xde\x3a\xc0\xca\x25\x1c\xd1\x10\x1c\x19\x21\xf1\xb3\x64\x85\x06\x67\xa6\xe6\x10\x2c\xdd\x3a\xe2\x8b\x64\xf5\x97\x9e\x8d\xd6\xe2\xd3\x16\x39\x42\x95\xa4\x88\x92\x11\xf1\x24\xdd\xf1\x91\xc0\x12\xa7\x98\x2e\x28\xc5\x91\x0a\x97\xed\x5c\xb3\x93\x6b\xba\x4a\x88\x4e\xbf\x7c\xca\xa0\x23\x37\xec\x9a\x34\x14\xba\x8a\x50\x90\x11\x48\xb4\xc8\xd7\x62\xc4\xcf\x42\x4b\x26\xf6\x61\xc9\x70\x93\x2e\x3c\xc3\xd6\xb4\x0e\x79\x57\xcd\xd0\x6d\x50\x35\x4f\xa2\x94\x4a\xae\xd4\xc6\x4a\xc4\xdb\xa8\xf3\x0d\x82\x74\xdf\x9c\xb2\x4f\x43\x94\x73\xb8\x22\xc1\xc7\x80\x71\xf4\xa6\x2b\xfa\x99\xa6\x0b\x49\x29\xfe\x49\x08\x81\x53\x00\x09\x04\xb5\x88\x9f\x66\x32\x49\xea\x23\x36\x6d\x22\x7e\x5a\xe9\xc2\xd0\x2a\x58\x0d\x44\x84\x03\x1d\x4e\x2e\xcc\xcd\x8d\x88\x38\xd5\x6b\x17\x13\xfe\xed\xef\xee\xd5\x9f\xdf\xfc\x65\x58\x4c\xdf\x37\x6e\x7d\xf8\xfd\x9f\xa3\xc1\x6c\xfa\xc3\xab\xc7\x69\x35\xf9\xc7\x43\x51\x56\xff\x63\xf4\xcf\x69\xf5\x8a\x7d\xfc\xe1\x95\x7a\xc5\x3e\xd1\xb3\x71\x79\x15\xad\x1b\x27\xcf\x5b\xce\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\x7c\xde\x72\x3e\x6f\x39\x9f\xb7\x9c\xcf\x5b\xce\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\x7c\xde\x72\x3e\x6f\x39\x9f\xb7\x9c\xcf\x5b\xce\xe7\x2d\xe7\xf3\x96\xf3\x79\xcb\xf9\xbc\xe5\xfc\x9f\xb9\xe5\x7c\x77\x77\x47\xa6\xd4\xc3\x62\xfa\x7e\x9b\xf3\xc1\x70\x50\x4e\xc6\xd3\xf1\xdd\xec\x6b\xf7\x3f\xd0\x4c\xf7\x91\xf3\xcb\x39\x3d\xaf\xf4\x8d\x6e\x19\xbb\x6b\xab\x95\x5d\x37\x76\x37\x2a\x32\x7d\xa5\x72\x9d\x3e\xa7\x3f\xed\x8a\x41\xfe\xf5\xad\x70\xad\x8a\x9a\xa5\xaa\xa9\xbf\x1b\x25\xaf\xf4\x3c\x55\x6d\xf9\x74\xd8\x1f\xdd\x4f\xa2\xab\xc7\xf4\xe7\x4a\x61\xd5\xdc\x67\x47\xfd\x9f\x7e\xfa\xeb\x8f\x22\xec\xb4\x75\x1f\x8d\x87\x45\xef\xcb\x79\x8f\xbb\x23\xbd\xc7\xd7\x3c\x4f\x57\xd7\x72\xe5\x28\x82\x5e\x4e\xfe\x14\xa3\xf3\xd9\xb3\x4b\x82\x75\xc9\x5b\x56\xce\x15\x44\xc4\x01\xc4\x13\xf2\x7d\x8a\x8a\x4b\x30\x48\x71\x42\x34\x73\x0f\x74\x85\x3d\x85\x72\x46\x3a\x1b\xb8\x01\xe3\x6f\x0c\x98\xd0\x47\x4e\x6f\x9f\x5a\x21\x13\x72\x28\x85\xbf\xfe\x18\x64\x73\xbc\x41\x77\xdc\x5f\x83\x42\x1a\x6a\x82\xac\x2d\x1d\x59\x20\x6d\x27\x77\x28\xc7\xc9\xe9\x57\x81\x4d\x37\xe6\xd1\xfd\x7a\x31\xd4\x8a\x04\x26\x89\x55\x70\x88\xc1\xd7\x06\xb4\x34\xe4\xe8\x20\x49\x9c\x97\x7b\xbb\x16\x8a\x45\xb0\x06\xeb\x7b\x72\x33\xd1\x86\x3a\x09\xe1\x26\x80\xb0\x35\xdd\x18\x68\x4d\xb8\x06\x15\x88\x3a\x84\x66\x98\xf3\x00\x51\xb9\xda\x93\x03\x39\x91\x8d\x39\xc7\xa9\x78\x5a\xf7\xee\x6d\xe3\xee\xf8\xfd\xac\xf8\xea\xd1\x16\x95\x22\x9c\x17\x15\x8a\xf4\x3d\x3d\x05\x93\x42\x50\x88\x05\xcf\xda\xe9\x82\xbc\x4c\x84\xf6\x4f\xef\x64\x72\xe0\xf6\x80\xb2\x6d\x4c\xfa\xad\x43\xf2\x6b\xe8\xaf\xd2\x14\x56\x19\xc5\x3d\xab\xd2\x1d\x90\x36\x80\x44\x1e\xe7\x35\xa8\x40\xd7\x4d\xf6\x91\xea\x96\x20\xd3\x16\x90\x52\x0e\xa4\x50\x29\xdc\x43\xb0\x73\x88\xd6\x51\x45\x0a\x27\x12\xb0\x59\x54\xb9\x51\xab\x91\x7d\xa2\xda\x25\xed\x2e\xd0\x4e\x72\xa0\x8b\x11\xb0\xf9\x38\xc7\xde\x35\x49\x5a\xca\x67\x31\xda\x36\x47\x07\x41\x16\x14\x36\x9a\xc9\x66\x03\x54\x90\x83\x13\xf9\xbb\x81\x42\x99\x21\x6d\xaf\x4b\x6a\x4c\xaa\x9a\x6e\xbc\xa4\x1d\xdf\xd6\xc9\x09\xdd\x17\x09\xca\x23\xc3\x17\x2a\x3d\x28\x59\x93\xb4\xa6\x20\x8a\x78\xe3\x51\xbf\x26\xcd\x10\x45\x50\x3a\xa3\xc3\x0e\x02\x7d\xe9\xd3\xe1\xca\xd3\xd0\x82\xb3\x86\xae\xf1\x0b\x65\x0e\x8c\x2d\x29\x8c\xb4\x4c\x6e\x78\x21\x20\x23\x9f\xa7\xd0\xdf\x4d\x5b\x9a\x02\xce\xb8\x74\x17\xa1\xb2\x8e\x1a\x73\x2b\x4b\xa1\x70\x6a\xe8\xaf\xb2\xae\x26\xa4\x25\xff\xbc\x79\x8a\xfd\x4c\xa1\x9a\x24\x36\x84\x5d\x58\x0b\x31\xd8\xfc\x2d\xc5\x8e\xf3\x16\x24\x3d\xd5\x5c\x22\x86\x96\x74\x6a\x48\xd1\x13\x2c\xa0\xca\xe1\x9d\x4f\x7f\xd3\x26\x3c\xf9\x3c\x3a\xda\x21\x46\x09\xd4\x20\xb3\xf7\xca\xae\x03\x16\x6d\xaf\x3b\x6e\x41\x4b\xf5\xf4\x2e\xa0\xd4\x90\x61\x88\xc2\x9c\xe7\x98\x3c\x96\xfe\xd2\xd5\x9a\x42\xa2\x44\xa5\x68\x3d\x15\x4a\xa6\xa4\xfb\x19\x47\x2a\x5c\x2d\xc1\x89\x14\xfe\xab\x4c\x1a\x3e\x6d\x84\x2c\x23\x76\x91\x56\x58\x80\x51\x01\x3f\x69\x5d\x65\x0a\xe9\xdc\x4f\x60\x82\x32\x21\x9d\x88\x22\xd4\xf9\x48\xba\x38\xca\xc8\x12\x7c\xc4\xb9\xa1\x73\x39\x15\x75\x8a\xd1\x47\x11\x76\xd2\xfe\xa8\xd7\xbe\xc6\xb6\x50\x6e\x27\xd1\x92\x62\x93\x48\x54\x5c\x31\x11\xe5\x7d\x23\xc9\x3b\x8d\x6e\x51\x35\x8a\xee\x23\xd4\x4e\xa2\x0a\xaf\xf0\x93\xc1\x28\x9d\x38\x52\x14\x1d\xda\xbb\xa5\x93\x96\x10\x9b\xeb\x1e\x48\x39\x5c\xdd\x8c\x96\x38\x39\xe4\xbf\x89\x34\x50\x48\x7c\x44\x94\x1f\x1d\x82\x43\x13\xc3\xda\xa0\x7a\x1f\xdc\x5c\x82\xb7\x92\xd0\x88\x44\x4a\xc4\x2f\x72\x36\x0d\xa0\x74\x9f\xee\x42\xa5\x93\x08\xda\x4c\x4d\x01\xce\x42\xfa\xa2\x94\x46\xf8\x95\x31\xc5\x54\xd2\x49\x02\x53\x32\xa6\x5c\x19\x11\xe4\xe4\xd3\x90\xd3\x46\x30\xd3\x60\xb5\x47\xdc\xa2\x88\x1c\x04\xc4\x52\x24\xb4\x58\x4d\x4c\xae\x73\x42\x3d\x0d\xa5\x83\x80\x73\xd0\xae\x23\x44\x86\x95\x56\x25\x91\x2b\xb5\xdc\x36\xfd\xdf\xde\xca\x9d\x2c\x7a\x56\x4d\x26\xc5\xdd\x78\x32\xfc\x7a\xd8\xf4\xfe\x20\x2f\x8b\x17\xb4\x6f\xcd\xdf\xff\x6e\x13\x03\xb3\x38\x0f\x1a\xa4\xad\x0d\x04\x8a\x27\x14\x94\x9c\x5b\x70\xc6\x5c\x5b\xb0\x22\xb2\x90\xdc\xf5\x36\xd8\xa0\x11\x46\xfc\x55\x65\x66\x2f\x20\x6a\xf2\x30\xf4\xb9\x32\x35\x47\x17\xc6\x28\x7d\x83\xed\x77\xb4\xb0\x3a\x0e\x0a\x66\x24\xa8\xae\xa2\xba\x9e\xa5\xba\xf8\x7c\x4a\xc3\xa4\xe3\x29\xbd\x32\x50\x3d\xe7\xa9\x33\x4e\x35\xa8\xb7\x4d\xee\xb9\x08\x42\xfb\x30\x9e\x56\x3d\x8e\x63\xa0\x10\xb0\x6f\x1e\xeb\x37\xf5\xe0\x0d\xa4\x2b\xf1\x59\xaf\x86\x61\x35\xed\xb3\xde\x6c\x23\x8a\x6c\x3d\x2e\xdf\xf3\x69\xb5\x12\x3d\x96\xaa\x5e\x8e\xc6\xb3\x3f\xe6\x48\x1b\x74\xd9\xe6\xf7\x3b\x1b\xc3\x8a\xbc\x1c\xd7\x08\x42\x83\xf1\xe8\xcd\x29\x6d\x3c\x4c\xc6\x1f\x3f\xf1\xe6\x7a\xd0\xe9\xde\x57\xf8\x9a\x43\x75\xe0\xb2\x3b\xb0\x4c\x89\x39\x92\x8d\x9a\x03\x39\x15\xff\x18\xc1\x04\xcb\xd2\x13\xd1\x5a\xd1\xd5\xc7\xa5\x20\x13\x0e\x4d\xf7\x43\x37\x6a\x98\xf4\xfe\xff\x67\xef\xdf\x77\x24\xb7\x99\x05\x41\xfc\x55\xf4\x2b\x8f\x31\x5d\xdd\x29\x99\xa4\xee\x55\x5f\x17\xce\x37\xf5\x3b\x03\x2f\xd0\xbd\xd8\xc5\xd9\x6d\x2c\x6c\xd4\x0c\x54\x29\x66\x95\xc6\xca\x54\x8e\xa4\xba\x75\xa2\xfc\x18\xfb\xf7\x3e\xdb\x3e\xc9\x82\x41\x4a\x22\x25\xea\x9a\xd9\xb6\xdb\x5f\xa1\xed\xee\x94\x14\x0c\x06\xc9\x60\x30\x18\x0c\x46\x98\x8e\xe5\x06\x76\xca\x85\x10\xc1\xce\x27\xdb\xe2\x21\x58\x22\x56\x8e\x88\x5b\xb5\x4c\x31\x60\xa5\x82\x14\x8e\x66\x51\xe8\x32\x58\x26\x9e\x7c\x56\x9f\x0b\xf5\xf1\xc0\x3f\x18\xce\x03\xdc\x35\xdb\x73\xb3\x56\xb3\x15\x11\x2e\xf8\xda\x4c\x62\x5a\x2e\x49\x2d\xe2\x80\x6d\x00\xce\x2e\xb1\xd3\xae\x29\x80\x2d\x38\x1c\xc9\x41\xb0\x30\xb6\x5c\x30\xa1\x88\x08\x54\xe5\x1b\xfc\x6f\x68\x1a\x86\xb6\x45\xa1\x05\xaf\xc5\x5b\xb6\x1e\x87\x3c\x5a\x00\xb8\x4e\x04\x70\xdc\x68\x83\xcd\x54\xae\x8a\x6d\x27\x43\xc3\xb1\x6c\xdf\x67\x9d\x07\x9b\x62\x9f\x49\x52\x64\xb3\xd6\x45\x21\xc4\x76\x0d\x45\x84\x57\x04\xd1\xb2\xfc\x10\xb6\xdb\x50\xc0\x09\xc4\x99\x06\x44\x6c\x0b\x82\x7f\xca\xc8\xf9\xc8\xf0\xbc\xc3\x90\x2b\xc1\xc4\x56\x10\xe2\x14\x4c\x91\x20\xe7\x31\x84\xa8\xfd\x27\xb1\x9c\x80\xc7\x16\xf3\x78\xf7\xf9\xac\x4d\x1e\x44\xa2\xf5\x1c\x30\xb1\xbb\x90\x01\xc2\x83\x2c\xcf\x29\x3f\x88\x85\x40\x5f\x36\x68\x56\x90\xec\x06\xb4\x6e\x14\xda\x6c\x79\x81\xc8\x85\x10\x46\xcd\x72\x60\x56\xfb\xc8\x36\xf8\x59\x20\x76\x43\x8b\x84\x3e\x0f\xa7\xea\xad\xc1\xbe\xe2\xd8\x8c\x05\x3c\x2b\x0c\x5d\xf6\xaf\xc1\x56\xee\xe0\xd1\x72\xef\x2d\x37\x0a\xc0\x2f\x27\xa8\xbc\x73\x90\x6b\x41\xf8\x32\x3b\x64\xcb\x4b\xc0\x8a\x9a\x96\xeb\x39\x29\x2c\xfd\xfc\x54\x0e\xc2\x79\x82\x46\xe3\x9b\xae\x85\x7d\x48\xf7\x6d\x39\x90\x3a\x9c\x35\x1b\x64\x8d\xcd\x98\xc9\x15\x19\xac\x85\x76\xe2\x79\x22\x1b\x39\x3f\x7a\x81\xfc\xc3\x16\x0e\x1c\xc8\xe0\x62\xfb\x10\x9a\x94\xd1\x62\x87\x01\x1c\x7f\xd9\x90\x89\x98\xe9\x63\x6b\x61\xf4\x73\x79\x72\x0f\x38\xac\x66\x23\x03\x96\x1f\xdf\xf1\x99\x7a\xc4\x3a\x1e\xc2\x96\x42\x2c\x47\x8f\xf5\x20\x04\x7c\x20\x66\x65\xf6\x65\x43\x0f\xc1\xd2\xe0\xe0\xcb\x8b\x08\x0f\xab\x51\x39\x6a\x60\x08\x55\x01\xb9\x8c\x52\xd3\x72\x40\xe5\x05\xef\x1d\x56\xfc\x9f\x01\x70\x49\x50\xf1\x0a\xb2\x39\x63\x06\x6c\x6f\x64\xf0\xbf\x45\x54\x71\x6c\x78\x96\x83\x58\x97\xf9\xbe\x65\x93\xd0\x82\x9c\xe5\xbe\xbf\x66\x3a\x9d\x69\x81\xd1\xcf\x84\x44\x36\x1e\xd3\x92\x5c\xfc\xf5\x33\x0e\x85\x09\x8d\x38\x29\x04\x9b\x30\x2d\x07\x4e\xb5\x31\x66\xdd\x16\xb5\x59\x08\x82\x81\x06\x96\x1d\xb0\x39\x64\x8b\x44\x1a\x10\x85\x99\x80\x51\xcc\x67\x93\x11\xa2\xb9\x11\xb0\x89\x43\x52\x77\x97\x69\x73\x10\x01\x96\xf8\x16\xf1\x3d\x30\xf1\x12\x36\x66\x7c\xde\x30\x71\x42\x6a\xa1\xc2\x95\x1c\xcb\x61\x6a\xb8\x63\xdb\xe2\x60\x93\x87\x12\x5e\xf3\xd0\x61\xb6\xc3\x23\xd3\x59\x3e\xe2\xd1\x6b\x31\x78\x9b\xf0\x08\xbc\x55\x1c\x5e\x84\x40\x25\xf5\x21\x2e\x3a\xc4\xba\x43\x10\xb7\x93\x04\x61\x6a\x39\x1e\x38\xdb\xf1\xf8\x1b\x01\x4f\x97\xc6\xd6\xc4\x30\xf4\xb9\x7b\x86\xcd\x03\x0f\x82\x83\x06\x23\x91\x4d\x4e\x6e\xff\x61\xa3\x05\x91\xeb\x6c\x0f\xa6\x0c\x44\x77\xf6\xd8\x5f\xfc\xe8\xe2\x9f\x01\x5b\x11\x83\x4a\x8b\xe1\x99\xb1\xd7\x4c\x83\x83\xf4\xea\x4c\x99\x04\x6b\xba\x6d\x39\x61\xc0\x14\x35\x18\x73\x38\x10\x22\x70\x88\x0d\xd5\x41\x34\x8c\x50\xec\x4a\xd8\xde\x9c\x69\x7d\x29\x9b\x66\x98\x0f\x2f\xdb\x1c\x41\x28\x07\x20\x2d\x0c\xed\xaf\x67\xed\x44\x06\x7f\xed\xc0\x33\x6f\x8b\xcc\xdb\x22\xf3\xb6\xc8\xbc\x2d\x32\x6f\x8b\xcc\xdf\x64\x91\x99\xb3\x9f\xa3\xdb\x7d\xf9\xa2\xdb\xd0\xf5\x96\x15\x59\x3e\xaa\x92\xf1\x69\xb6\x82\xbd\x74\xcc\xc0\xd6\x4f\xd9\x82\x7d\x65\x97\xa0\xc9\x48\xfa\xe9\x68\x1b\x49\x1e\xa3\xf4\x81\x9a\x1c\xae\x95\xe9\x64\x7c\x1f\xdb\xa5\xb0\xa7\x48\x1f\x3d\x7f\xe5\x9d\x6f\x6f\x34\xbc\xd0\xb0\x7f\x86\x09\x86\xd9\xf4\x32\xac\xd0\x24\x06\x79\xc4\xce\x1a\x31\x3d\xc4\x0a\x21\x48\x1e\xb9\xc7\xce\x1a\x40\x0c\x62\xb2\x77\x26\xf9\xe2\x82\xe6\x82\x4d\x56\x82\xfd\xf9\xba\x35\x89\x81\xd1\xcf\xfe\xa3\x49\xee\x31\x7a\xfc\xbb\x84\x0b\xfc\x33\x3a\xe8\xd5\xda\x66\x39\x35\x2b\xf6\xde\xd2\xdd\x83\x61\xc9\x4f\x57\xbf\x96\x2f\x7b\xfa\x11\x32\x00\xdd\x66\xcf\x37\x1f\xd2\xe8\x96\xa6\x57\x55\x90\xd5\x32\xba\x4d\xa9\x75\x1f\x15\x66\x04\x73\xab\x30\xca\xfc\xca\xaa\x7e\xcf\xc7\xf4\x94\x94\xf7\x26\x9f\x29\x8b\x51\x7d\x8f\xb3\xc3\x33\x30\x6a\x0f\x7d\x51\x0d\x79\x3d\xd2\xd2\x08\x63\x62\xcc\x2b\x60\x7a\xf3\x0a\xfc\x2d\xe6\xd4\x77\xd4\xad\xad\x38\xc7\xc0\xd1\xbf\x6e\xb2\xfc\xe3\x36\x4a\x76\xe6\x2e\x7a\x34\xcb\xec\xee\x2e\xa5\x37\xdf\xf5\x22\x40\x8c\xa0\x25\xbd\x8a\xba\x6f\xea\xfe\x33\xaa\xfe\xfb\xba\x45\x06\x99\x35\x1c\xc8\xf0\xfe\xe5\x98\xfc\xbb\xe9\xd4\xd7\xd1\x34\x77\xe0\x1e\x32\x3f\xd1\x5d\xab\xd8\xe4\x54\x77\xad\x72\xbd\xc9\xee\x5a\x70\xf0\x38\x9a\xff\x4f\x81\x52\x33\x00\xf2\x4f\xad\x1c\x80\xb3\x33\xe4\xa9\x54\x41\xf6\x3b\x8e\x78\x3c\x4b\x9e\x02\xf7\xed\xf3\xe4\xbd\xf9\xe5\x7c\x7f\x7e\x39\xd3\x77\xa2\xdc\x33\xe6\x44\x27\x8b\x1d\x64\x0b\x76\x80\x1d\x1c\xa3\x3b\xb2\x56\x89\xef\x72\x69\x85\x14\x16\x8c\x97\x03\xdf\x0b\xdd\x6b\x82\x2c\x14\x3a\x8e\xe1\x5b\x2e\x0a\x1d\x62\x10\x6c\x78\x96\xed\x21\xc7\x63\x3f\xdd\x6b\x82\x0d\xdb\xb2\x1d\x1b\xf3\xac\x33\x6c\xde\x10\x03\x07\x06\xb9\xc6\x1e\xbc\x67\x8f\x6e\x03\xe3\x1a\xee\x35\x76\x0d\xcf\x22\x2e\xb2\x43\x03\xbb\x96\xef\xb9\x86\x6f\xd9\x84\x60\x03\x7b\x56\xe0\x12\x56\x99\xef\x13\x2f\xfc\x84\x3d\x9e\xd6\x0c\x59\x88\x78\xe4\x1a\xbb\x56\x68\x33\x21\x80\xc0\x67\x02\xbb\x96\x0d\xa9\xd6\x90\xe5\x10\xd7\x36\xb0\xc3\x68\x86\xfc\x2c\x41\x80\x3f\x05\x56\xe8\xbb\x90\xbd\xd6\xc3\xd8\xbe\x0e\x2c\x3f\x70\x1c\x56\x15\xb6\x03\xe4\xb3\x06\x11\x17\xdb\x86\xc7\xfe\x5c\x3b\x82\x3e\xcf\xb0\x19\x31\xf0\xdb\x36\xc2\x6b\xc0\x66\x23\x8f\x18\xb6\x15\xd8\x4e\x00\xb1\x9e\x1d\xec\xbb\x86\xcb\x7e\x05\x24\xb4\xbf\x60\xcf\xc2\x3e\xf2\xaf\x6b\x08\xcf\x72\x03\xc2\xca\x63\xdf\xf2\x42\x3b\x60\xbf\x18\x2a\x82\x78\x07\x55\x95\x11\x62\x78\x06\x21\xd7\x3e\x7b\x1d\xc0\x73\x58\x03\x85\xac\x4c\x58\xa3\x08\x2c\xec\xb9\x38\xac\x91\xfb\x86\xa8\xf6\x8b\x20\x83\x61\x71\x1c\x0f\xb2\xd6\x7b\x08\x3b\xac\x44\x10\x10\x87\x3d\x63\x37\x84\x2c\xbe\x8e\x4b\xa0\xbb\xdc\x20\x08\x3e\xf1\xeb\xa2\x90\x0e\xd4\x0b\x49\x70\x0d\x3e\xfd\x2e\xb8\x78\xfa\xac\x46\xec\xb0\x9f\x41\xc8\x7a\xd4\x31\xb0\x7d\x8d\x21\xb7\x12\x10\xc7\xba\x9e\x8d\x2d\x1b\x0c\x46\xc9\x35\x0e\xc4\x07\xcf\x20\xa8\x06\x63\x3f\xed\x6b\xf6\x37\xb6\x42\xec\xb3\x26\x59\x0e\xf1\x81\x86\xd0\x0b\x7d\x03\x07\x96\xeb\x05\x30\xc2\x8e\x43\x3e\xb5\x98\xef\x97\xcf\x38\x30\x00\xb7\xeb\x12\x36\x52\x18\x6e\x78\xba\x84\x04\xf0\xf3\x1a\xac\xee\x8e\xe3\xfb\xc4\xa8\x80\x1c\xc6\x7c\xce\x35\xf6\xe1\x3d\x7b\xf4\x1b\x18\x9f\x95\xf1\x1b\x1c\x02\x88\x2d\x2b\x86\xf7\xcb\x67\xdf\x08\xaf\xc1\xfc\x0f\x5f\xbd\x0a\x0a\x31\x00\x74\xed\x56\x58\x90\xe1\xd6\x40\xae\x11\x5e\xb3\xae\xe5\x9f\x2a\x90\xc0\xf0\x8c\xe0\xba\x42\x10\x18\x7e\x0d\xe1\x1b\xe1\x2f\x7f\x0f\x6d\xf1\x4d\x4e\xbc\xc9\x89\x37\x39\xf1\xa7\xc8\x89\x59\x5a\x55\x96\x97\xa7\xd3\xaa\xda\xc8\x96\x68\x55\x6d\x1c\xe3\x5a\x95\x5a\xe2\x7b\xd4\xaa\x02\xcb\x66\xb2\x0d\x21\x84\xf0\x35\x3c\x10\x0b\x05\x81\xef\x18\x21\xfc\x0b\xf9\x05\x5c\x84\x18\xc7\x57\x3f\x7f\xc6\x0e\x9b\x6b\x21\xc6\xd2\x57\xd7\xf2\x9a\xb2\xfc\x49\xa0\xfd\xe2\x0b\xf4\xfc\xad\xcf\x0a\x32\xae\x14\x18\xd8\xbc\x03\x0c\x4e\xf5\xf3\x67\x4c\x2c\x37\xb0\x9d\x6b\xfe\x2f\x4f\xb6\x85\xd8\xa4\x6b\x9e\x7d\xcc\x76\x04\xf0\x0c\x28\x02\x42\x20\xf9\xbd\x6b\x13\x48\x34\xe7\x7f\x22\xfc\x02\x0f\xb2\xfc\x6b\x82\x21\xf9\x17\xfb\xcd\x44\x14\x9b\xbb\x21\x86\x5f\x0c\xe6\x9a\xff\x60\x10\x15\x20\x31\x44\x69\xf2\x33\xf6\x99\xb8\xf2\xd8\x7c\x74\x43\x10\x28\xc8\x09\x20\xa9\x99\x07\x0f\x61\xe0\xd4\x0f\xd8\xfd\x82\x1d\xcb\x76\x7f\xc6\xe1\x35\x0e\x45\x07\x39\xd0\xa9\x4c\x26\x82\x0f\x24\x38\x47\xf2\x27\xef\x0b\x41\xd7\xfc\x37\x41\x02\x5a\x94\x22\x18\x20\x42\xfe\xe3\x67\xec\x82\x70\x83\xb2\xfc\x8b\x2d\xb0\xf2\x52\xe2\xe9\x0b\x93\x63\xf0\xbb\xaa\xa9\x2a\xc5\xa9\xc0\xae\x21\xe8\xf3\x2c\xfb\x0b\x10\x0c\x8b\x5c\xd3\x10\x8f\x07\x54\xaa\x1a\xe9\x59\x36\x66\xc3\x49\x7e\xe6\x37\xd1\xaf\x99\x18\xe4\xdf\x31\x74\x5a\x08\xa9\x72\xd8\xa3\xef\xc1\x72\xe2\x84\x01\x7f\xf6\x00\x38\x10\xf2\x18\x61\x97\x27\x23\xf1\x08\x0f\x0a\x15\x02\xb8\x4f\xd8\xe2\x48\x7e\xe6\x7d\x8c\xaf\x59\x1f\xdb\x02\x03\x23\x40\xee\xe4\x76\x1f\x87\xd7\xd0\x57\xa4\x6e\x9c\xd2\xc5\x58\xea\x62\xac\x74\x71\x55\x8a\x77\x64\xd5\xc3\xee\xb5\x23\xf8\x9d\xbf\x57\xfa\x57\xea\x5e\xa5\x77\xab\x22\x9c\x80\xaa\x73\x9b\xbe\x95\xbb\x16\x7a\x16\x91\xba\x69\xd0\xb5\x4c\x7f\x20\x3f\x13\xcb\x73\xaf\x89\x45\x42\x8c\x78\x1e\x9a\x9a\x1d\x2b\x06\xad\x59\x16\x80\xb0\xe0\x64\x68\x21\x63\x75\xb8\x81\x4a\xa4\x87\x00\xd6\x5b\x31\x99\xd0\x75\x35\x95\xab\xa9\x06\xf3\xbc\x9a\x87\xe2\x81\x4f\x55\x31\x65\x7f\xf9\x8c\x11\xe0\x67\xd3\x36\xb4\x02\xe4\xf9\xd5\xa3\x11\xf2\x89\xce\xde\x89\x87\xf6\x3c\x0f\xf9\x34\xc7\xa1\x6d\x33\x08\x28\xed\x37\x52\xc4\x57\xa4\x08\x83\x6a\xbe\x3a\x9c\x18\x5e\xb4\x7a\x52\x48\xbb\x16\x13\x4a\x10\x50\x61\x20\x8d\x14\x21\x75\xc3\x7f\xf9\xec\x72\x51\x74\xed\x70\x2a\xb8\x04\x72\x04\xa3\xc0\x2b\xa7\xe1\x13\x47\xb0\x09\x20\x14\x25\x08\xe2\x43\x0b\xff\x02\xcf\xf1\xea\xe0\x75\x28\x98\x04\x5e\x85\x0d\x93\x84\x82\x49\x00\x83\x28\xc1\xab\x0e\xf9\xbf\x3f\x33\xcd\x40\xd4\x7c\x8d\x15\x7a\xb0\x42\x2a\x16\x0d\x10\x12\x45\xc2\x84\x95\x4a\xc4\x13\x67\x77\x85\x2c\xac\x50\x8c\x43\xd1\x12\x2e\x51\xa4\x26\x62\xa5\xf5\xd5\xd3\x17\xec\xc9\xab\xbd\xf7\x5f\x7d\x2f\x20\xdf\xe9\xc6\xe0\x6d\xa9\x7b\x5b\xea\xde\x96\xba\xb7\xa5\xee\x6d\xa9\x7b\x5b\xea\x16\x2c\x75\xb3\xf6\xb6\x79\x56\x66\xeb\x2c\x3d\xdd\xfe\x56\x87\x70\xc9\x1e\x57\x87\x67\x7c\x9f\xdb\x2d\xf5\x3d\xee\x75\xd9\xe2\x47\x60\x09\xf4\xad\xca\x7c\x02\xff\x12\x2e\x8b\x78\x32\x53\x9f\xdb\xb5\x1a\x28\x5e\xca\xa8\xbe\xd5\x30\x50\xe6\xba\x81\x22\x0d\x0c\x20\xfc\xe5\x33\x5b\x15\x30\x72\x60\xa9\x0b\xfd\x00\x96\x14\xe2\x81\x11\x29\x20\x2e\x97\xfd\x90\x18\x3d\xb4\x3c\x8c\x61\x91\x27\x6c\xb1\x61\x5c\xed\x13\xd0\x09\x30\xc6\x06\x0e\xac\x00\x6c\x55\xc4\x0a\x20\x07\x27\x98\xd2\x7c\xb6\x16\x62\xcf\x03\x23\x9d\x6d\x07\x00\x1f\x06\x3e\x58\xdc\x6c\x88\xfa\xcb\x24\x07\x5f\xb3\x6d\x10\xa5\xc4\xf2\x88\x0f\xcd\x26\x61\xe0\x03\x39\xae\xed\xc1\xb3\xeb\x81\x04\x26\x8c\x7a\xf6\x0c\x4b\x13\xb2\xdc\x90\x84\xe2\xbb\xcd\x16\x97\xc0\x63\xe4\x07\x16\xb6\x6d\x30\x1f\x12\xec\x05\x06\x38\xef\x32\x3a\xd8\x72\xe2\x8a\xe6\x12\xc0\xef\x23\xde\xdc\x30\x74\xc0\xae\xe7\x83\xfb\x35\x7b\xf6\xf8\x22\x2a\x75\xcf\x2f\x9f\x43\x2b\x08\x61\x82\xfb\x04\xf9\xd7\xa1\xe5\xba\x90\x3f\x3c\xb0\x42\x14\x84\x46\x68\x91\x00\xae\x80\x06\x16\xc6\x21\x13\x49\xc8\x75\x59\xf7\x30\x91\xea\x5c\x07\x96\x6b\xdb\x01\x3c\x3a\x0c\x3c\xb0\x10\x0e\x43\xe8\x1d\x27\xf0\xb1\xe1\x5b\x2e\x86\x44\xae\x6c\xe5\xc5\xee\xb5\x6f\xf9\x36\x86\x74\xfc\x16\xf2\x09\x13\xdb\xa1\xef\xf0\x67\xd7\x73\xd9\x0a\x42\x5c\xc4\xa9\x45\x5e\x10\x5e\x07\x96\xef\x05\x40\xac\xed\x30\x95\xd1\xc6\xa1\x0f\x63\xe5\x7a\x76\x60\x28\xa4\xff\xf2\xd9\xb5\x1c\x17\x4c\x90\x9e\xe5\x21\xdf\xbf\x76\x2d\x87\x37\x95\x3d\x23\x08\x2d\x8a\x08\x5b\x4e\x3d\xd6\xc5\x10\x66\x94\x38\x8e\xcb\x8d\xa3\x4c\x86\x3b\x1e\xa4\xa6\xb5\x2d\x3b\x00\x09\xed\x11\x38\x02\x45\x96\xe7\xb8\x8e\xe1\x5a\x04\xfb\xc8\x37\x02\x86\x86\x38\xd7\xae\x85\x42\x02\xf9\xd1\x1d\xcf\xb7\x03\xc3\xb1\x42\x1f\x7b\x60\xb4\xb3\x89\x8b\x99\x84\x77\x9d\x10\x92\xcc\x87\xbe\xef\x5f\x3b\x96\x8d\x02\x04\xf7\x0c\x02\xe4\x18\x0e\x2c\xa7\xc8\x21\xec\x17\xb9\x76\x58\xbd\x3e\x76\x3d\xc3\xb1\x5c\x07\x6e\xeb\xbb\x96\x8d\x5c\x6c\xb4\x9a\xc5\xda\xe9\x85\x36\x66\x9d\x8b\x7c\xdf\x27\xd7\xec\xd9\xc3\x0e\x3c\x07\xae\x67\xb0\xe7\x10\x07\xf0\x1c\xda\x21\x04\xc7\x24\x04\xe0\x03\x44\xec\x6b\x08\x96\x49\x6c\xf8\x8e\xf8\x77\x8c\x08\xac\x84\x1e\x82\xf2\x3e\x76\x60\x70\x90\x8b\x7c\x0f\xe0\x7d\x02\x8f\xa1\x6f\x03\x3a\x84\x39\x78\x00\xe6\x4b\x85\x9c\x5f\x3e\x07\x56\xe8\x05\x10\x9d\xc7\x0d\x1d\xec\x5f\x07\x56\x68\x63\x12\xb2\x0e\xb5\x1d\x87\x75\x50\xe0\xf3\x65\x32\x74\x7c\xa6\x20\x04\x28\xc0\xac\xbf\x7d\xdf\x71\xdd\x6b\xa6\x8d\x63\x87\x7d\x0f\x1d\xd7\x63\xdf\x1d\x97\x40\x2e\x4c\x82\x5c\xf0\xf1\x26\xd8\x77\xd8\x78\xb8\x4e\xc8\x74\xba\x20\x44\x4c\xff\x41\xc4\xc3\x9c\xe3\x6c\x17\x1b\x1e\xc3\x02\x06\x7b\xec\xfb\x3e\x6b\xac\xe3\x20\x6e\x35\x0f\x18\x87\xf9\x96\xeb\x04\xa0\x9e\x10\x1c\xba\xa0\xfe\x39\x61\xc0\x46\xcb\x0f\xec\x90\xe1\xf1\xed\xc0\x77\x3f\x05\x96\x1f\x06\x4e\x00\x51\x91\x6c\xc2\xd6\x5e\x1c\x60\x27\x30\x3c\x8b\xd8\x6c\x74\x43\xcb\x47\x6e\x10\x42\x42\x4f\x37\x04\x6e\x01\xea\x1c\x8b\xa0\x90\xb8\xd7\xa1\xe5\xbb\x21\x1c\x8b\xdb\xc8\xc3\x7c\x4d\xf7\x1c\x0f\xe2\xfb\xb8\x36\x9b\x31\x4a\x67\xfd\xf2\x99\xc9\x27\xd7\x61\xec\xc4\xd4\x11\x2e\xbf\x80\xbb\xb0\x4f\x5c\xb0\xcb\x07\x08\xb1\xde\xb1\x03\x9f\x70\xbb\xbd\x0b\x16\x6d\xcf\x21\x3e\xcc\x7f\xc2\x74\x4a\xd7\x72\x10\x42\x20\x4f\x3c\xdf\xf1\x0d\x8f\x89\x35\x38\x04\x21\x81\xc3\x9a\x17\xda\x2e\x13\x17\x8c\xb9\x81\x77\x42\x9f\x30\x66\x87\x40\x08\xac\x5b\x10\x02\x1d\x09\xf2\x00\x13\xf6\x4c\x3c\x27\x64\xe2\x0e\x13\xcc\x98\x1e\xf9\xb6\xcf\x6d\xfd\x01\x1c\x97\xa0\x20\xf0\x60\xf2\x78\x36\x6c\xa1\x90\xc7\xe4\x09\x9b\x4c\x70\x42\x62\xf9\x21\x72\xe0\xd8\x20\xf0\x11\x44\x1f\x87\xfd\x8f\x45\x90\x47\xa0\xad\x4c\x3f\x07\xb5\xd6\x0d\xe1\x19\x73\x61\x8a\x91\xeb\xf0\xbe\x70\xb9\x72\x2b\xf5\xcd\x2f\x9f\x99\xa6\x0c\x87\x39\xa1\xe5\x20\x17\x4e\x23\xdc\x90\x4b\x43\x37\x70\x40\xcf\xc0\x0e\xf2\xb8\x8c\x70\x61\x5f\xe3\xb1\xea\xf9\x62\x60\xf3\xd3\x0b\x1f\xa4\x29\xc1\x84\x6b\xd8\xbe\x0b\x27\x0c\x8e\xed\x71\xad\x25\x0c\xf9\xa2\x85\xc2\x80\x6d\x31\x09\xdb\x11\xf8\x7c\x63\x88\x5d\xcb\xb7\x5d\xbe\x41\xf3\x02\x98\xa2\x04\xfb\x20\xcc\x7d\x0f\xfb\x6c\xf3\x83\xe0\xa0\x22\xe0\xf7\xe8\x5d\x2b\x24\x08\x84\x29\x71\x42\xd8\xd4\xfa\x01\xf1\xa0\x36\x17\x85\x0c\xbb\xeb\xf8\xb0\xf6\xf8\xa1\xe3\xf0\xa3\x2a\x21\x0d\x5d\x07\xaa\xc3\x21\x06\xd9\x4e\x88\xeb\x32\x78\x4c\x6c\xae\xab\x41\xf7\xb8\x30\x25\xe1\xd9\x73\xf9\x3e\x42\xea\x9d\x5f\x3e\xf3\x8a\x80\x4e\xdf\x26\xee\x35\x1c\xac\x38\xa0\x0c\x3a\x6c\x8a\xc3\xc9\x8b\xe5\xfb\x28\x80\x9f\x04\x0e\x61\x90\xe5\xdb\x36\x08\x5d\x9f\x49\x87\xd0\x72\x6d\x97\x40\xa5\x6c\x26\xc0\xe5\x14\xc4\x16\x4e\x26\xb2\x09\x1b\x79\x97\xc0\xae\x0d\x72\x4a\x33\x4e\x72\x3d\x18\x8a\xc0\x0a\x98\x14\x0a\x2c\x0f\x3b\x76\xc0\xe0\x5d\xdb\x06\x06\x76\x42\x40\x47\x7c\x04\x0c\x14\xba\x2e\xac\x08\x9e\xc7\x36\x7d\xae\x15\x04\xac\xe7\x03\xcb\xf5\xf9\x31\x19\xf6\x3d\xf8\xee\xb0\xea\xb1\x67\x39\x2e\xb8\x02\x59\xb6\x1f\xc2\xf9\x96\x8f\x6d\x80\x77\x10\xe8\xac\x16\x3f\xe7\x71\x88\x4f\xf8\x93\x47\x8c\x56\x47\x00\x23\xf9\x6c\x48\x1c\x26\xab\xd8\x50\x78\x16\xf1\x6c\xdf\x70\xad\xc0\xf3\x01\xab\xe7\x61\x36\x8b\x7c\x26\x9c\xd8\x73\xc8\x45\xa8\x47\x1c\x0c\x9b\x5c\xdf\x09\x99\xd0\xf0\x42\xc7\xe3\xe7\x93\x5e\x00\x27\x52\x6e\x00\x03\x81\x1d\x58\xed\x9c\xc0\x03\x2e\x0d\x02\xd0\x5c\x7c\x9f\x84\x70\x3e\xe6\x84\x6c\xca\xba\x36\x1c\xc5\xb1\x2e\x40\x10\x9a\xcd\x0e\x6d\xce\xd4\x81\x0d\x22\x24\xf4\x43\x18\x66\x1c\x78\x18\xe4\x29\x0e\x78\x6d\x12\xed\xbf\x7c\xf6\x2c\xcf\xb7\x61\x1f\x16\x78\xae\x1d\x5e\x33\xd5\xc2\x86\xd5\x39\x0c\x42\x88\xe9\x1f\xd8\xbe\x0f\x49\x89\x91\x07\x02\xd9\xf1\xd9\x8a\x15\x5a\x04\x05\x88\xad\xba\xd8\xc3\x98\x9f\x01\x02\x1a\x6c\x23\x3e\x79\x6c\xc7\xf5\xc1\x1c\xc2\xd6\x2d\x18\x1a\x8f\x29\x01\x18\x39\x7c\xc1\x0a\x5d\x90\x2d\xae\x8d\x79\xd7\x23\x07\x2e\x26\x85\x5e\x48\xaa\xa1\xbb\x76\xad\xd0\xf7\x11\x4f\xe5\x8c\xdd\xd0\xf0\x2c\xec\x38\xfc\x34\xcf\x77\xc0\xd1\x4a\xa1\x9e\x69\x28\xa1\x0b\x92\xd6\x41\x21\xec\xfe\x3c\x9b\x9b\x54\xb0\x0f\x37\x12\x3d\x1b\xb3\x49\x63\x5b\x36\x76\x01\x0d\x0e\xd9\xd0\xb2\x31\xe0\x0a\x17\xe2\x2c\xee\x33\xc1\x84\x21\xc1\x39\x11\x9d\x06\xea\x9f\x4f\x08\x6f\x0c\xc2\x20\xb0\x10\x09\x60\x6e\x06\x30\x57\x41\x80\x41\xe3\x02\xc7\x15\x02\x8e\xa3\x0f\x7c\x3b\x04\x09\x02\xad\x81\xd0\xf6\x04\x24\x08\xc2\x81\x10\x55\x40\x56\x48\x6c\x07\x8e\xfe\xb0\x4b\x04\x7e\xd6\xf7\x6e\xc8\xfe\x65\x22\xce\x0e\xe0\xbb\xef\xfb\x21\xd7\x07\x61\x6c\x5c\x62\xbb\x18\xf4\x3f\x1b\x83\xd6\x10\xba\x36\xc8\x73\x3b\xc4\x04\x6e\x2b\x7a\x30\x1d\xa5\xce\xf9\xe5\x33\x63\x4c\xb6\x96\x33\x8e\x64\x0a\x14\x1c\xa7\xbb\xc0\xb0\xc4\x15\x27\xe7\x90\x30\x82\xf5\x3a\xb7\xa4\x61\x9b\x1f\x10\x23\xd7\x73\x40\x04\x05\x04\xf6\xbd\xc4\xe6\xbd\x14\x7a\x2e\xb7\xa9\x70\x33\x9c\x43\xc0\xc8\xe1\xf0\xe5\xc0\xb3\x50\xe0\x32\x6a\x61\x65\x67\xd3\x89\xfd\xcb\xe4\x93\x47\xb8\x96\x18\xf8\xec\x19\x79\x36\x1b\x8b\x40\x1c\x16\x63\xcb\x13\x72\xd3\x87\xe3\x69\xdb\xf2\x03\xcf\xe1\x4a\x30\x17\x5c\x8e\x63\xbb\x4c\xcf\xc7\xb6\xcd\x07\x0f\x84\x83\x6f\x21\x50\xd6\x3d\xa6\xea\x00\xd5\x72\x6b\xff\x36\x56\xd3\xb7\x4d\xd3\xdb\xa6\xe9\x6d\xd3\xf4\xb6\x69\x7a\xdb\x34\xbd\x6d\x9a\xde\x36\x4d\x6f\x9b\xa6\xb7\x4d\xd3\xdb\xa6\xe9\x6d\xd3\xf4\xb6\x69\xfa\xc3\x37\x4d\x73\xce\xdf\xa2\x38\xce\x69\x51\x9c\xec\xf8\x4d\x87\x6f\xc1\xe9\x9b\x0e\xcd\xe8\xe1\x5b\xb7\xd0\xf7\x78\xf6\x06\xdb\x3e\xcf\x72\x60\xcf\x67\x88\x1f\x98\x14\x0e\xfb\x85\x51\xfd\x9f\x29\x5e\x98\x18\xfd\x07\xec\x12\xc5\x96\xf1\xeb\xd6\x04\x76\x0c\xed\xb5\xc9\xc4\xab\x69\x39\xa1\xe9\x9b\xb6\x15\xb8\xa6\x6f\xb2\xf7\x10\x41\x9f\x58\x28\x30\x31\xc4\x30\x81\x58\xf5\xe1\x27\x36\x65\x1e\xb1\x1a\x62\xe0\x91\xa9\x64\x5f\xb7\x9e\x15\x9a\xc4\x72\x79\x7e\x44\xd3\x0a\xb0\x09\x51\xdf\x43\x13\x5b\x21\xfc\xb8\x37\xf1\xa3\x09\x81\x7a\x5d\x17\x32\xfa\x00\xc4\xcf\xc1\xa3\x49\xee\xc9\xda\x82\x68\x50\x90\x32\xd2\xc0\x26\xfe\xe2\xdf\x93\xd6\x2d\xd5\x47\xd3\x72\xf0\x9a\x58\x10\x31\x16\x87\x06\xd3\xfa\x90\x67\x30\xd5\x1b\xe2\xf9\x02\xb5\x56\x60\xd8\x56\xe8\x9b\xc4\x62\x5b\x05\x3b\xfc\xdb\xdc\xd9\x7d\x1b\xef\x23\xc7\xfb\x55\x73\xd1\x97\x16\x59\xfa\x48\x73\xb8\xeb\xcb\xa4\x43\x4e\xe3\x24\xa7\xeb\xd2\x88\xcb\xa3\xae\xb3\x56\xe9\x6a\x1d\x29\x5d\xad\x73\xa6\xe5\x9d\x59\xc1\xc4\x41\xef\x0c\x6c\xfb\x9a\x88\xc4\x14\x36\x66\x7b\x2f\x1f\x56\x40\xee\xdd\xe5\x78\x4c\xe9\x0c\xec\x2f\xce\x27\xe1\x9e\xe6\xa7\x66\x00\x69\x43\x7c\xcb\xf3\xbd\x47\xd3\xb1\x02\x87\x69\x35\xa0\x8a\x39\x60\x4a\x70\x2c\xb8\x28\xe3\x59\xdc\x77\x08\xea\xf8\x3a\xb8\x7c\x40\xac\x81\x32\xcb\xd2\xdb\x28\xaf\x42\x0d\x9c\x3c\xe8\xfa\xac\xbe\x61\x6b\xb5\x81\x9d\x7b\xd3\xf2\x43\x08\xcf\x66\x5a\xc4\xff\xa7\x07\x11\xb6\xbc\x2a\xce\x16\xbf\x5d\x1c\x5a\x6c\x0b\xc6\xff\x47\x06\xfb\x10\xf2\x18\x6a\x22\xc5\x9c\x6d\xa1\xd0\xb4\x60\xe7\x45\x6c\x13\x5b\xae\x9f\x42\x90\xab\xe0\x91\xe1\x86\xbd\x78\xf8\x89\x20\xcb\x61\x9b\x8f\xd4\x64\x8f\xa6\xcb\x83\x3b\x5c\xfb\x16\x77\x26\x02\xdb\x54\x18\xf2\xbb\x21\xff\x01\x6f\xe1\x27\x78\x7b\x19\x15\x14\xd4\x0b\x70\xd5\x83\x23\xf7\x3b\x76\x3d\x5b\xe4\xb0\xa8\x98\x78\x93\x53\x5a\xd2\xe7\xd2\xdc\x24\x69\x49\x73\xa3\xd8\x47\xdf\x20\xe6\xf2\xb1\x51\xef\xfb\x07\x03\xc6\xe2\x3b\x1c\x8a\xb6\x30\x29\x5f\xf6\xd4\x2c\xb2\xbc\x6c\x07\x7b\xaa\x82\xcb\x7c\xbf\xda\x05\x5a\x61\x64\xa1\xc0\x83\xcd\xda\x27\xaf\xf5\xc4\x76\x92\xae\x67\x13\xe4\x19\x9f\x50\xeb\x49\x86\x54\x9e\x7e\x31\x3e\xdb\x2b\x4c\x04\x30\x36\x3e\xd9\x2b\xf0\x30\x6d\x60\xd5\x27\x15\xb2\x79\xfa\xc5\xf8\x0c\x3a\x3a\xc2\xb6\xef\xaf\x90\xf1\x49\x7a\xc2\x96\x17\x60\x4c\x3c\x07\x03\x0a\xe5\x49\x85\x44\x80\xc7\xb6\x02\x2f\x24\x21\x09\x57\x60\xdb\x44\x21\x93\x81\x9f\xa4\xd7\x6c\x73\x64\x07\x4e\x48\x88\xf1\x09\x7b\x96\x40\xb7\x0a\xd8\x96\x09\x11\xe2\x06\xc6\x27\x1c\x28\x6d\xe6\xdb\x19\x9f\x84\xfe\x0a\x22\x74\x07\xb0\xb9\xf9\x14\x58\xc8\xf5\xc1\x6c\xa9\x40\x87\x16\x71\x3c\x1c\xba\xc4\x53\x71\x12\x0b\x07\x01\xf6\x3c\x97\x53\x10\xda\x36\x51\x5f\xf7\xd0\x2b\xbd\x66\xed\xab\x6b\x5a\x39\x16\x61\xbb\x38\x0f\x31\xf8\xe6\x35\xdb\xb0\xda\xa1\x43\x1c\x87\x75\x91\xfa\xd4\x53\x44\x7a\xfd\xf7\xb8\xdf\xfa\xc6\xeb\x6f\xbc\x7e\x0c\xaf\x4f\xde\x47\x57\xe1\x53\xb6\xd1\x2e\xba\xa3\x5b\xba\x5b\x10\x8a\xb1\x83\xe2\x34\x61\x19\x27\x90\xb6\x20\x3a\xe3\x30\xb1\x73\xf7\xfb\x43\x34\xce\x0e\xd8\x38\x4c\xda\xb0\x0d\x61\x88\x90\x91\xb8\x8c\x43\xd5\x7e\x8f\x7a\x02\x86\x93\x4c\xe2\x7f\xc2\x81\x85\x03\x83\xe0\xd4\xc4\x96\xe7\x98\xbe\x85\x6c\xb6\xf9\x08\x21\xfe\xac\x6f\xe1\xd0\xb4\x3c\xfc\x09\x2e\x28\x84\x6c\x27\x17\x58\x9e\x6d\x88\xef\xae\x05\xc7\x3f\xbe\xfd\xc9\xb5\x02\x88\x27\x50\xa1\xfd\xdb\x6c\xdd\xff\x9c\x4e\x7a\x6d\x45\x8c\x3a\x29\x87\x41\xb4\x6a\xef\x98\x0d\x02\x44\x10\x30\x3c\xcb\xf6\xd9\x42\x50\xfd\xcb\x5e\x1b\xf8\x0b\xbe\xc6\xa1\xe5\x11\xdf\x31\xb0\x41\xdc\xfa\x2b\x61\x3b\xdc\x2f\xd8\xbe\xe6\x07\x2e\x1c\x40\xfc\x0b\xdf\x0c\xe2\x7e\x21\x70\x7d\xa6\x86\x6f\x00\x79\xd9\x5f\x14\xa2\x7f\x5a\x32\xa2\x7c\xa7\xec\x3b\x84\x07\xa4\x70\xe1\x04\xcb\x65\x8b\xae\xe7\x04\xe2\x94\x2d\xe4\xd1\x0b\x6c\x1b\xcc\xbb\x76\xf8\x09\x3b\x96\x67\x87\xb0\x23\x47\x36\x2b\x6a\x1b\xbe\x85\x3d\xcf\x83\x8b\x37\xb6\x87\x82\xfa\x93\x78\x5f\x15\x44\x96\x0d\x36\x6a\x81\x36\xb4\xec\xd0\x45\xb8\xaa\xb4\x26\x46\x5e\xa3\xae\x3d\xf2\x4f\x1f\xab\xa9\xf9\x6c\x83\x38\xd7\x9e\x15\x12\x27\xf0\x81\xfb\xe1\x20\xcd\x77\x21\x22\x87\xfd\x33\xba\x46\x70\x89\xc3\x0f\xe1\x98\x87\x20\xdb\x20\x1e\x74\xa9\xf7\x85\x38\xbf\x7c\x26\x10\xf3\x81\x38\x75\xa9\xba\xb4\x03\x50\xce\x17\xe2\x5d\x57\x08\x88\x07\xff\x35\x4f\xd8\xfe\x99\x21\x61\x80\xd7\x4d\xb5\xc4\x31\x24\x82\x18\x8c\x77\x0d\xf9\xab\x79\xf5\xa2\x38\x62\xf8\xd1\x17\x02\xc5\xd1\xb5\xf8\xca\xd8\xb0\xfe\xc9\x8a\x82\x7f\x0c\x47\x56\x23\x05\xca\xbe\x20\xb9\x6b\xfe\x1d\xff\xbb\xf3\xef\xfe\xa9\x85\xc9\xdb\x7c\x78\x9b\x0f\x7f\x93\xf9\xf0\x6a\xed\xb2\x32\x59\xd3\x7e\x45\xe7\x14\xa6\x51\x8c\x1a\xd3\x68\xd8\xb2\x8c\x62\x64\x84\x53\xa6\x0f\x07\xb9\x78\x4e\x93\xdd\x6f\x3a\x40\x1c\x86\xe1\x4f\xf0\xf5\xec\xea\x1f\x31\xdd\x14\x62\xf8\x93\xf8\xe3\x59\x24\x72\x7e\xc1\x9d\x41\xef\x93\x6f\xb9\xbe\x6b\x04\x96\xef\xa6\xa6\xe5\x05\xb6\x09\x66\x67\x02\xb1\xf3\x31\xb7\x2f\x87\x21\xa4\x1f\x70\x3e\xb9\x06\xe3\x63\x08\x00\x64\xd8\x96\x1b\x7a\x56\x60\x43\x3c\x20\x37\x85\x02\x06\x14\x60\x58\x0c\x86\x85\xc7\xca\xe3\xd5\x3f\x14\xb4\xe9\xf9\xf0\xdf\x09\x76\x59\x43\x19\x85\x17\xf7\x39\xdd\xc0\xeb\x48\x9b\xb8\x4c\x31\x3d\x45\x77\x5c\x07\x97\x4e\xbe\xca\x98\xbd\xfe\xee\xcf\xb5\xb0\x65\x23\xc7\xb0\x2d\x1c\xba\x29\x46\x16\x84\x71\x82\x7f\xcc\xc0\x42\x36\x36\xd8\xdf\x9f\x6c\x0b\xfc\xd6\xb0\x45\x88\x9f\x62\x48\x55\xec\x8b\xc0\x8c\x08\x11\x13\xde\x7c\xfd\x8c\xad\x00\xee\xfd\x7a\x4e\xc4\x74\x2a\x1e\xe3\xdf\xf5\x1c\x13\xd2\x6b\x43\xb9\x00\xca\xd9\xff\xac\xbe\x3b\x16\x82\xab\xb2\x8e\x9b\xc2\x07\x8e\xaa\x2e\xce\x0a\xba\x96\xeb\xb9\x9f\x08\xb1\xf8\x61\x39\xb2\x1b\xec\x08\x12\xb1\x05\x29\x90\x0a\x94\xe2\xa6\x66\x9e\xa9\xf8\x53\x43\xd4\xd7\xcf\x81\xe5\x1a\x18\x32\xf3\x19\x98\x5b\x3f\x11\x32\x21\x97\xa7\x78\x46\x08\x19\xf6\xdf\x44\x0b\x7e\x1b\xd8\xe9\x03\x3b\x1e\xf8\xb6\x4e\xba\x38\x3f\xf8\xad\xa6\xe8\xe4\x00\xb8\x9a\xb2\xbd\x41\x70\x35\xb0\xf5\xab\xd1\x60\xb8\x1d\x48\x35\x20\x6e\xf3\xf9\xd8\xa0\xb8\x5d\x2a\x21\xe0\x6d\x53\xc1\x78\x70\xdc\x0e\xec\x5f\x30\x40\xee\x5b\x46\xcc\xe3\x33\x62\xb2\x71\x5a\xd3\x5d\x49\xf3\x93\x39\xc2\xf4\xa0\x5c\xe0\x0b\xd3\x83\x69\xd4\x1d\x46\x5b\xee\xbb\xd4\x1c\x88\xe1\x7f\xb1\x7f\x26\x8f\x38\xb8\x27\xe8\x8b\xff\x33\x26\x5f\x3f\x7b\x06\x0e\x7f\x76\xc0\xdf\xe0\x91\x7c\xdd\x22\xd3\x69\x3f\x7d\x09\xe5\x07\x97\x3f\x40\xdc\x92\x40\x01\x6c\x3d\xc9\xc5\x82\xaa\x18\x46\x06\x26\xf7\xa6\x00\x35\xc9\xbd\x49\xa4\x9f\x5f\xc2\xfb\xe0\x11\xa3\xaf\x5b\x93\x98\x01\xfb\xc4\xbf\x7c\xdd\x22\xc3\x91\x1e\xff\x1e\xab\xfd\xdf\x7d\x30\xa6\x5b\xfd\xf3\x2c\xa5\xa7\x30\xd1\xab\x78\x66\x5b\xcf\xd5\xe2\x23\x16\x6e\x19\xf8\x3b\x95\x05\x98\xac\x89\x45\xb0\x81\x0c\x50\x0b\x43\xc3\x31\x9d\x02\x7e\x99\x0e\xff\x63\xf0\x07\x83\xff\x30\xd8\x0f\x47\xe4\x3a\x20\x96\xe7\x1b\xc8\x0c\x0c\x6c\xd9\x8e\x19\x18\xce\x23\xb9\xc7\xde\xa3\x49\xd6\x88\x7d\x83\xc4\xea\xb6\xe9\x98\x81\x39\xe0\x21\xf0\x9d\xcd\xd7\x3f\xbf\xc3\x84\x4b\x45\x4e\x1f\x69\x94\x1a\xc9\x6e\xff\x50\x5e\x80\x5e\x49\xe3\x0f\x8a\x93\xcb\xf7\xc9\x91\xfe\x9a\x58\xbe\x67\x20\xc3\x85\x8d\x88\xe1\x1a\x90\x8a\xdf\x73\x4d\x0b\xa2\xa1\x11\xcf\xb4\x6c\xcf\xc0\x56\x60\xa7\xc4\x82\x4c\x71\x21\x59\x63\xcb\xc5\x26\xfb\x68\x10\x0b\x54\x98\xd0\xb0\x2d\xc7\x36\x1d\x0b\x0c\x13\x3e\xfb\x65\x87\xa6\x67\xfa\x96\x6b\x62\xcc\xff\xb1\x1c\xc8\x48\xe7\x3b\x16\x71\x4d\xdb\x0a\x03\xcb\x4f\x89\x85\x19\x0e\xec\x5d\x83\x63\x39\x84\x3d\xe6\x41\xa2\x0c\xb6\xdf\x31\xfc\xaf\x9f\xc1\xc5\x9e\x41\x92\x80\x91\x18\x58\x8e\x67\x39\xde\x3f\xe1\x8a\x8d\xb8\x69\xe3\x54\x8e\x3b\x8c\x5f\x20\x2f\x20\xab\xde\x80\xfb\x43\x06\xbf\x6e\xc4\xb6\x38\x2e\x77\xdc\xb1\x4d\x0b\x00\x02\xd3\x0a\x9c\xd4\x72\x88\xe5\x90\x4f\x38\x64\xc5\x08\x1c\x62\x10\x24\x52\x0b\xfa\x86\x6d\xf0\xea\xbf\x7e\xf6\x2d\xd7\x36\x42\x2b\x48\x01\x11\xfb\x6b\x6d\x5a\xc8\x85\xe4\x9f\x28\x60\x8d\x67\xff\x78\xb0\xaf\xb2\x3c\x0f\x78\xce\xb0\xe1\x8f\x45\xd8\xa6\xcc\x72\x1c\xd3\x42\x36\x74\x2d\x52\xd1\x78\x3e\x63\x44\x6c\x39\xd8\x72\x6d\x93\x58\x84\xff\xc3\xc6\xc5\x74\xd9\xb3\x63\xba\x26\x64\xe9\xf7\x43\x8b\x6d\x38\x5d\x5b\x00\x7e\xdd\x3a\x90\x89\xd3\x0f\x52\xa6\xb0\x82\x56\x6c\x21\xc8\x45\x29\x32\xa5\x9a\xc0\xfc\x36\xfb\x93\x9a\x16\xf6\x2d\x84\xff\x36\xd2\xe1\x8d\x79\xdf\x98\x57\x92\xd4\x17\x79\x96\x95\x07\xd3\x7c\xba\x4f\x4a\x7a\xf1\xc3\x66\xb3\xb9\x34\xcd\x98\xae\xb3\xdc\xbc\xcd\xf2\x98\xe6\x26\x46\xe8\x02\xef\x9f\x8d\x22\x4b\x93\xb8\xfe\x98\x47\x71\xf2\x50\x98\x04\xa1\x0b\x67\xff\x7c\x69\x9a\x77\x79\xf4\x62\xba\x08\x5d\xfc\xe0\x6d\x7c\x2f\x20\x35\x24\x4d\xe9\x63\x04\x66\x0c\x0f\xa1\x0b\xa6\xcb\xed\x9f\x0d\x77\xff\x6c\x98\xfe\xfe\xd9\xc8\xef\x6e\xa3\x77\x68\x65\x88\xff\x2c\x14\x9c\xaf\x90\x81\x59\x85\x18\x31\x20\x5b\x03\x84\xcf\x2f\x4d\xf3\x36\x8f\x76\xb1\x89\x5c\x74\xf1\xc3\x26\xa4\xb7\x1b\x52\xbf\x63\xf5\xfc\x10\x52\x82\xdd\xb0\x7e\x17\xb0\x77\x6e\x84\x1d\xdb\xb9\x34\xcd\xf2\x65\x9f\x89\xbc\x75\x9c\x66\xee\x9d\xd9\xd0\x9c\xe7\x59\xce\xbf\xac\x7d\xdb\x71\xdc\xaa\xcc\x3a\xdb\x95\x79\x54\x94\x66\x18\x86\x17\x3f\x20\x84\xaa\x0f\x0d\x35\x8f\x51\xfe\x4e\xa2\xee\x5c\x85\x60\xb4\xc9\x10\x1e\x02\x08\xd1\xe3\x43\x20\xc5\x53\x54\xae\xef\x67\xc0\x04\x2d\x98\x00\xa1\xf3\x57\x8b\x6e\x6f\x69\x6e\xde\x46\x45\xb2\x36\xe3\x3c\xdb\xc7\xd9\xd3\xee\xb0\xcf\x8a\x84\x75\xc6\x45\x4e\xd3\xa8\x4c\x1e\xa9\x1e\x6e\xa5\x7d\x0b\x9d\x42\x77\xe5\xf0\x57\xe3\x7d\xbd\xda\xdf\x66\xcf\x66\x91\x7c\x4d\x76\x77\x17\x82\xc7\x6e\xb3\xe7\x4b\xed\x5b\x3d\x1d\x15\xce\x86\xee\xe8\xb6\xc8\xd2\x87\x92\x5e\xc2\x99\xc4\x45\xf4\x50\x66\x97\x5f\x4d\xb0\x14\x5d\x60\x36\x4c\x92\xc1\x66\x9d\xa5\x59\x0e\xac\x3e\x8c\xdd\x34\x53\xba\x29\x0f\xec\xaf\x0b\x34\x06\x9a\x27\x77\xf7\xe5\x01\xfe\xee\x05\xce\x1e\x69\x9e\x46\x2f\x0d\xd5\x9b\xe4\x99\xc6\x12\x69\x17\x82\xd1\xd9\x1f\xcb\x3d\x17\x8d\xc1\x08\xfd\x78\xc9\x0f\x58\xf8\xef\xa6\x61\x97\x65\xb6\xbf\x40\x97\x9c\xc4\xcb\x7d\x96\xb0\xed\xbf\xc9\x44\x7e\x59\x5c\xb0\x75\x64\x84\xec\xa7\x2c\xdf\xde\x67\x29\x35\xb3\x3c\xb9\x4b\x76\x87\x38\x29\xf6\x69\xf4\x72\x91\xec\xd2\xa4\x29\xbc\xcf\x9e\x6a\x9f\xd8\x1a\xc7\x71\xe3\xa9\xa0\x2c\xf3\xe4\xee\x8e\xe6\x5d\x2e\xbc\x14\x05\xb9\xb0\x01\x41\xa3\x1d\xc7\x4b\x46\xad\x59\x75\x91\xe5\xbb\x97\xac\xab\x37\x69\xf6\x64\x3e\x5f\xdc\x27\x71\x4c\x77\x97\xe0\x68\x5d\xbd\xbe\xa0\x69\x9a\xec\x8b\xa4\xb8\xdc\x26\x3b\xb9\x20\xdd\x5e\x9a\xdb\xec\xab\xf9\x50\xd4\xe4\x41\x3f\x5e\x9a\xdb\xa2\xfb\xb2\x0b\x25\x7a\xa4\xf3\x81\xd3\x9a\xec\xee\x69\x9e\x94\x43\x9d\x20\x12\x59\x8a\x01\xba\x38\x3b\xbb\xac\xc6\x04\xd2\x64\x5e\xae\x53\x1a\xe5\x17\xb7\x59\x79\x3f\x84\xc5\x04\xe1\xf6\x48\x57\x43\x35\x6d\xb2\xf5\x43\xa1\x0e\xe2\x7d\x14\x67\x4f\x9c\xe2\xd6\x73\x0f\x23\xd5\xf5\xdd\xd2\x34\x7b\x1a\xa8\xed\xd7\x28\x4f\x22\xb6\xc7\x8e\x76\x31\x8d\x3f\x96\xf9\x03\xbd\xe9\x11\x18\x35\xce\x64\x67\xee\xd3\x68\x4d\x67\xa2\x3d\xd4\xec\x56\x96\xd9\x16\x26\x71\xc5\x41\xe8\x52\xfd\x06\xf3\xb5\xfe\x38\xd6\xc6\xe8\x36\x7b\x5c\x4a\x4c\x99\xed\xf5\x94\xb0\x0f\x7a\x32\x94\x2a\xa0\x23\xee\xb3\x34\x06\xe6\x00\xc6\x0f\xc3\xb0\x66\x8e\xdb\x34\x5b\xff\xa6\xe1\x7a\x58\xd6\xcd\x62\x1f\xad\xe9\xc5\x2e\x7b\xca\xa3\x7d\xcf\x44\xd0\x56\x5a\x94\x51\xf9\x50\x98\xc9\x3a\xdb\x69\x44\xad\x2a\x2c\x4c\x4e\x02\x17\x59\xa8\x92\x57\x95\x84\xe2\xfd\x7d\x81\x2e\xb7\x51\x7e\x97\xec\xb8\x80\x16\x3d\x50\x94\x2f\x29\xbd\xe0\xea\x85\x78\xc5\xb1\x30\xfd\xc0\xd9\x3f\x1b\x75\x5f\x89\x86\x47\x51\x64\x94\x79\xb4\x2b\xf6\x51\xce\x56\x16\xe9\xf7\x25\x97\xc0\xee\x5e\x2f\x69\x60\xf6\x98\xb7\xa5\xae\x39\xeb\x87\xbc\xc8\xf2\x0b\x21\x44\x05\x22\xd2\x87\xa9\x62\x8a\xed\x43\x5a\x26\xfb\x94\x9a\xb0\xcb\x3d\x6c\xb2\x5d\x69\x6e\xa2\x6d\x92\xbe\x54\xb3\xfd\x12\xde\x15\xc9\x57\x5a\xbf\xe1\xcd\xe1\xf3\x4c\xdb\x8b\xb2\x3c\xab\x0a\x55\x13\x35\xda\xef\x69\x94\x47\x3b\x18\xd1\x1d\xbd\xcc\x1e\x4a\x06\xce\xe4\x7f\x14\xc7\x4c\xdc\xa2\xcb\x4d\x9a\x45\xe5\x05\xe3\xb7\xae\xc0\x94\x7b\x0b\x78\x81\x2d\x26\xbb\xf2\x82\xcc\x6a\xe9\x45\x9c\x14\x4c\x20\xc5\x87\xae\x44\xa6\x54\xbf\x74\xf4\x60\xba\xa8\x5a\x06\x8f\x0a\xa7\x67\xfb\x68\x9d\x94\x2f\x17\xf8\xb2\xe1\xf9\x79\xa8\x99\x30\x3f\x31\xc6\xe2\x5b\x10\x7a\x5a\x1a\xff\x85\x3a\xb4\x46\x97\xed\x21\x5f\xf4\xa1\x99\x05\x42\xd6\xe8\x05\x6a\xab\x9c\x90\xd3\xcd\x4e\xc7\x60\x1b\x1a\x8d\x02\x22\xc8\xb1\x6d\x5b\xa3\x8b\x50\x87\xfd\x69\x26\x22\x13\x5f\xe3\x33\x1c\x5b\x8e\x2b\x4f\x59\x41\x37\xdb\x27\x21\x83\xfd\x6d\xf7\x4c\xcd\xba\x0d\x39\xdd\x66\x8f\x14\x04\x9b\x2a\xc6\xa6\x16\xe3\x06\xe7\x7b\xb6\x2c\x9c\xd7\x7d\x6f\xb9\xfa\x55\x81\x46\xf9\xfa\xbe\xee\x67\xa7\x87\x38\x0e\x26\xe4\x62\xa7\x77\x99\x10\x6f\xf5\x2e\x92\xf5\xdd\xae\xd0\xd4\xc9\xc4\xa6\xa3\xfb\xe4\xb4\x4c\x85\xd0\x78\xf4\xb4\xcc\xd4\x83\xb4\x3a\x71\xb5\xd8\x83\x3e\xde\xd3\x56\x3e\xe2\xea\xb7\x8e\xfa\xda\x65\xbb\x89\xe4\xd5\x2a\x40\xa5\x00\x8c\x2b\x9e\x15\xf1\x23\x1b\x1c\x50\x7e\x24\x6d\xa6\xa7\x7d\x62\xa1\x17\xb4\x1d\xa7\x87\x2d\x21\x13\xf4\x50\xad\xda\x3b\x11\x41\xa5\x74\xca\x4d\xed\xb6\xa6\xa7\xf5\xc7\x6a\x79\x73\x69\x6c\x26\x8c\x16\x5d\x25\x12\xe1\x8c\x89\xab\x59\xd0\x94\x4a\x30\x4a\x1a\xc3\xb7\xd8\xf5\x0c\xd1\xc4\x73\x9e\x33\xc2\x6e\xb3\xe7\x9b\x43\xad\xb9\xbe\x70\xd5\xb0\x42\x59\xbf\x2f\xd6\x79\x96\xa6\x8c\xd6\x32\x7b\x58\xdf\x5f\x6e\xa3\xe7\x7a\xc6\x10\x8b\xb8\x74\x3b\x50\x5b\x4b\x28\x4a\x62\x23\xe8\x11\x1b\x4c\xac\xef\xb9\x3e\x5f\x29\x3a\x42\x9f\x97\x94\x6f\x81\x75\x97\x95\x66\x94\xa6\xd9\x13\x8d\xe7\xe1\x32\xfa\x29\xd6\x72\x30\xff\x34\x46\x95\xc6\x0a\x30\x95\x52\xb9\x02\xfe\xaa\xd9\xc6\x74\xd6\xba\x38\x1e\x47\xb2\x7e\xc8\x99\x9e\xd9\x8b\xc3\x0d\x42\x7f\x73\x7b\xd9\xb5\xc8\x74\x3b\xd0\xdc\x45\x5b\x5a\x0d\x64\x4c\x37\xd1\x43\x2a\x54\xeb\x27\xce\x06\x3e\xd2\xcf\x29\x65\x73\xd6\xea\xb6\xd9\xba\x6b\xa3\x5d\x18\xd8\x83\xf5\x79\x74\xbb\xa6\x1d\xca\xaa\x77\xcd\xa4\xa4\xdb\x03\x9f\x8f\x7c\xd9\x00\x8e\xec\xb9\x87\x0c\xb6\x81\x15\xf8\x3d\x09\x67\xae\x5d\xf4\x28\x1f\x13\x1b\x59\x6a\xe8\x4e\x8f\x8d\x48\xa9\xc3\x1b\xe2\x7a\x2d\x57\x8e\x7c\xe1\x83\x23\xfa\x86\xd7\x41\xfa\xf4\x82\x25\x95\x88\x69\xac\x54\xe0\xa0\xd9\x15\xe8\xd0\x2c\xa5\x53\xd3\xe4\x3e\x61\x52\x71\x60\x9c\xe4\x1f\xf3\x32\xbd\x91\x98\x88\xbb\x80\x4d\x2c\xa7\x25\x66\x8c\xd3\x26\x21\xd1\xb2\x23\x57\x55\xa6\x36\x4a\x8b\xb7\xa5\x64\x2f\x27\xb0\x6f\xbb\x0d\x4a\x33\x10\xba\x9c\x48\xd9\xca\x01\xe3\xe8\xee\x9f\xc5\xf6\x3f\xd9\x25\x65\x12\xa5\xcb\x71\x37\x06\x07\xce\x6c\xd3\x50\x57\x2b\xfe\x30\xee\x13\xcd\x56\x61\xe8\xe8\x9b\x06\xdf\x8e\x96\xd6\x6c\xe4\x74\xf4\xce\xea\x63\xe9\xd0\xd6\xf6\x6d\x5b\xad\xeb\x67\x36\x9d\x7e\x48\x33\x36\xbf\x78\xa8\x95\x0f\x71\xf2\x68\x6c\xb2\xac\xa4\xb9\x71\xfb\x50\x96\xd9\x8e\x6f\x53\x56\x63\x50\xb0\x59\xd3\x38\x0b\x6f\x12\x9a\xc6\x05\x2d\x0b\xc3\x6a\xfc\x86\x8b\x2b\x05\xf7\xdc\x52\xa2\x2e\xba\xdd\x97\x2f\x30\x5f\xa8\x70\x34\xaa\xf0\x69\xbe\xf4\x96\xe1\xab\x99\x4a\xcf\x08\x14\xc7\xc5\x75\xc6\x38\x89\xd2\xec\xee\xe6\x2a\x4e\x1e\xd9\xff\x46\x1c\x1b\x91\x40\x33\x00\x30\x84\x61\x3f\x82\x60\x5f\x97\x07\xa2\xb8\x73\x0b\x07\x12\xe5\xba\xef\x39\x3c\x2c\xd5\x12\x81\xcd\xb3\xf4\x7d\xaf\x7e\xae\x6b\x3b\x80\x75\x0e\x4e\x06\xe1\xfc\xf4\xe2\x61\x17\xd3\x1c\x0e\x66\x46\x78\x63\xee\xf8\xea\xfa\xff\xbd\x76\x50\x9b\x63\x85\x53\x73\xc2\x28\x0f\xf4\x57\xfd\x0d\x18\x6a\x88\x95\x04\x21\xdf\x90\x1b\x07\xf8\x70\xb0\xf2\x23\x18\x59\xc3\xc2\xa2\xaa\xc5\x3c\x2f\x71\xbb\x40\x35\x75\x3a\x34\x13\x41\x2e\xd8\x3b\x4f\x84\xea\xce\xcf\xf0\xff\xb4\xb9\xa1\x30\xf3\x6c\xce\x62\xad\xee\x0e\x4a\xab\x2f\xf7\x46\xd4\xde\xca\x0e\x99\xf7\x47\x17\x9a\x6a\x4a\xcd\x5c\x0d\x06\x84\xc0\xc4\x49\x3a\x3e\x85\x46\xf9\xbc\x97\x3b\x3b\xbc\xd6\xe6\x21\xfe\x7c\xa8\xcf\x4d\x5e\x47\x37\x54\xac\xdb\x39\x8f\x09\xdf\x96\xb6\x64\x06\x6b\xc7\x04\x34\x3a\x86\xed\x20\x6b\xc4\xfc\x14\x8c\x95\x2b\xe5\x02\x92\xae\xd2\x44\x32\x0d\x99\xac\x13\xd5\x33\xa9\xe6\x1c\x81\x5b\xae\xb3\xc6\x98\xcd\xad\xf6\xf0\x7a\x93\xd2\x67\xf9\x93\xf4\x7a\xbc\x05\xca\x9b\x48\x77\xbf\x46\xed\x79\x65\x6f\xd2\x67\x5d\x9f\x50\xad\x66\x8b\x5c\x57\x5e\x1f\xbe\xff\x74\x76\x39\x50\x7b\xd0\x57\xbb\x15\xed\xf7\xe6\x63\x42\x9f\xae\xf8\x94\xcb\xb7\x62\xc2\xfd\xca\xba\xf8\x23\xff\x7d\x23\x98\x96\xa6\xb4\xe4\x53\x70\x93\xe4\x5b\xee\x28\x15\xa5\x34\x2f\xb5\xb2\x86\x9b\x02\x56\xd6\x96\xee\x1e\xcc\x7d\xb4\xa3\xa9\xc1\xa7\x08\x7b\xc1\x36\x6f\x37\x2b\x6b\x9b\xe5\xd4\xac\x2c\x08\xec\xfd\x15\xaf\x17\x3c\x70\x6f\xb3\xe7\x9b\x0f\x80\x04\xe4\x41\xa7\x70\x96\xc4\xeb\xca\xec\x50\x09\xc0\xa5\xb8\xb4\x56\x8c\xf7\xab\xb1\x78\x6b\xef\x57\xd6\x53\x52\xde\x9b\x72\x97\x18\x4a\x6f\x45\xfc\x69\x9d\xd3\xa8\xa4\x2b\x4e\xa6\xb5\xce\xf6\x2f\x6c\xa7\x55\x3d\x73\x90\x68\xb7\xa6\xa9\xf2\xaa\x78\xb8\xdd\x26\xe5\x4a\x1e\x91\x9c\x16\xb4\xbc\x51\x5e\x71\xa8\x9b\x55\x15\xf0\x85\x3b\x8b\x15\xba\x81\x04\x5e\xaa\xab\x3f\x5f\x81\xa3\x86\x75\x1f\x15\x66\x55\xa8\xcc\xaf\x2a\x04\x33\xfa\x8f\xe3\x81\xae\xe0\xee\xfc\x0b\x11\xb5\x97\x8c\x3e\x9f\x80\xb6\xf0\x98\xcf\xc6\xf5\xa1\xf0\x00\x3f\x4b\x30\x1d\xbe\x96\xbe\xf5\x33\xb8\x0c\xb4\x9c\xd3\x25\x2c\x5d\x96\x97\x3e\x1e\x8d\x5d\x6f\xca\x6b\xbe\x0f\xb3\x7a\x03\xa8\xf0\x7c\xf3\xba\xc5\xfc\x9d\x0f\xd2\x2c\xd0\x7f\xe3\x8c\xde\xfe\x26\xcf\x0b\xfd\x37\x31\x41\x9a\x8f\x53\x66\x4a\x05\xfc\x8d\xa6\x4c\x43\xcc\xa9\xe6\x4e\xe3\xe6\xd0\xb2\x3c\x4f\x3d\x2e\x6c\x8f\xcf\xd8\x02\xb7\x68\xf1\xd0\x2c\x10\x3a\x39\xbe\x44\xaa\xfe\x59\x52\xf4\xa0\x78\x02\xe1\xfd\x73\xeb\x4c\x94\xe8\xcf\x44\xe1\x20\xd8\xc0\xfb\x67\xc3\x24\x8d\xe3\x30\xf8\x53\x62\x72\x7e\x39\x19\xb2\x3d\x6e\x07\xd9\x4f\xd0\x6f\xdc\x00\x84\x0a\x37\xa8\x85\xb7\x59\x80\xef\x61\xda\x6f\x41\x33\xe4\x6a\x49\xc5\x73\xe7\xfc\x91\xeb\xab\xe7\x87\x91\x2a\x7f\xd8\xf8\x9b\x60\x13\x75\xaa\xe3\x88\xfb\xf9\x4e\x6c\x9b\xda\xc5\x84\x96\xac\x39\xf7\x59\x53\x44\xbd\xd7\x41\xb1\x39\x2e\x7c\xf4\x02\xe6\x08\x19\x52\x6b\xe8\xc4\x0b\x7c\x5b\x4b\x9e\xd8\x08\x68\x88\x53\xbe\x28\xa4\x89\x2f\x53\x08\xe3\xa0\x1d\x3e\xee\xe9\xc0\xda\x91\xc4\xb7\x23\x87\xb4\x3c\xdc\x5c\xe2\xfa\x1e\x7e\x1d\xd4\x0a\xbf\x99\x0a\xb8\xb0\xdc\x5f\x4f\xed\x11\xfc\xbd\x21\x98\x38\x7d\x0e\xe0\xfd\x7a\x4a\x63\x29\xed\x01\x10\x66\xad\x01\x4d\x45\xa0\x18\x80\xa8\x70\x1c\xa1\xc8\x54\x95\x1c\x81\x42\x50\x71\x1c\x01\x47\xd5\x7d\x2a\x05\x80\xd3\x72\x2a\x6c\x32\x6d\x27\xd0\x25\x64\xe2\x4e\x80\x8e\xdb\x12\x7a\xd7\x81\xc9\x61\xad\xbb\x6e\xf7\x65\xb6\x87\xbd\xb5\x58\x7c\xbd\xfd\x73\x7d\xff\x00\xce\x2a\x47\x31\x73\x27\x76\x70\xfd\xfd\xff\x25\xdb\x7d\x96\x97\xd1\xae\xfc\x96\xaa\xcd\xbf\xe6\x56\x53\x77\x6f\x67\x76\x1f\x1b\xd6\x3e\xcf\xee\x72\x5a\xf0\xc8\x2a\x25\xcd\xb7\xc9\x2e\xd2\xf6\x7d\x3f\x68\x77\x4c\xfa\x61\xf5\x23\xd1\x0f\x3f\x3c\x42\xbd\xe5\x94\x91\xeb\x85\x6a\x8d\xe8\x18\x9c\x34\xd2\x93\x40\xf9\xd8\x8e\x80\xca\x9c\x31\x09\x54\x70\x4c\x2f\xec\x7c\x4e\xea\x43\xa5\xf1\x93\x67\xb3\xda\x45\x3f\xf2\x4b\x47\xec\x87\xec\x59\x62\x62\xa6\x98\x8b\x37\x0c\x12\x5e\x1c\x63\x4a\x68\x28\xfb\xa0\x33\x85\xf5\xc0\x0d\x28\xa7\x2a\xe0\xf0\xf6\x5c\x85\x9d\xb8\x55\x57\x0a\xe9\xb7\xed\x0a\x48\xdf\x16\x5e\x07\xa4\xd3\xa8\x7b\xe1\x5a\x5b\x7b\x0d\x9c\x56\x0b\xef\x85\x6b\x6f\xf9\x15\xc0\x23\x54\x77\x19\xcf\xe1\x31\x29\x92\xdb\x24\x4d\xca\x17\xe1\xc2\xba\x84\x79\x80\x4d\x74\xdc\x22\x3e\x68\xd8\x43\x7c\xd1\xf3\x83\xf8\x38\xc2\x00\x1c\x4a\x1d\x71\xfe\xae\x3d\xc4\xca\x5b\x79\x4c\xbb\x1f\xc4\x20\xca\x1f\x94\x51\xeb\x7e\xa8\x86\x89\x7f\x99\x32\x2e\x00\xd9\x59\x5b\x14\xbf\x05\x69\x1d\xbf\x54\x9c\x9e\x70\xb0\x7f\x96\xbe\x29\x16\x72\x77\xd9\xd4\xe7\xe4\xd4\x21\x4e\x7a\x46\xb1\x01\xe8\x1b\x4d\x29\x4a\x4a\xff\xa8\x36\x40\x53\x46\xb7\x86\xd6\x8c\x72\xfd\x4d\x3b\xda\xed\xaf\x9d\x51\xd7\x02\xc8\xa3\xdf\x02\xe8\x72\x81\x16\x40\xe1\x86\x26\xba\xda\x42\xae\xa8\x95\xc6\xca\xc5\x7d\xc9\xf8\x82\x55\x03\xb0\x9f\xeb\x46\x57\xf9\xac\x19\x5b\xe5\xbb\x7e\x64\x15\x90\x91\x71\x95\x61\xd5\x51\x95\xbf\xb4\xc7\x54\xf3\x4d\x1e\xd1\xbe\xcf\x62\x3c\xbb\x9f\x95\xd1\xec\xfb\x5c\x8d\xa5\xfc\x7d\xea\x5a\x2f\xe0\xdb\xb3\xfc\x64\x47\x7d\xfc\x0c\x21\x4a\x93\xbb\xdd\x05\x0f\x43\xa6\xd8\xe7\xf6\xd1\xfa\xb7\xfa\xfd\xb6\x80\x22\xca\xcb\xff\xf1\x50\x94\xc9\xe6\xa5\x72\x72\xd7\xe1\x50\x91\x57\x48\x94\xb7\xf0\x00\x5e\x8c\x45\xf5\xaa\x72\xb6\x5c\x47\xe9\xfa\x9d\xe5\xd2\xad\x61\x1a\x78\xff\x7c\x6e\xc0\x0b\x62\x91\xfa\x0d\x5c\x06\xae\x5d\xea\x8f\xe0\xed\x34\xaa\x8f\x15\x7b\x19\x5c\x81\xe9\xe3\x72\x05\x68\x80\xd5\x15\xb8\x29\xfc\x2e\x17\xd0\x30\xbd\xfc\x59\xcb\xf9\x1a\x80\x0e\xfb\xf7\xc1\xc8\x73\xa0\x0b\xd3\x9d\x08\x7d\x30\xca\x6c\x90\x81\x26\x4f\x09\xa9\x50\x7b\x5e\x74\x7d\x60\x6b\x5e\x68\xa3\x8f\x56\xfd\xdf\x78\x75\xf5\x5a\xca\x34\x62\xce\x87\x4e\xcd\x75\x9a\x85\x55\xdc\x31\xe9\x87\xec\x58\x6b\x81\xc9\x6a\xbf\x62\xb7\x7f\x49\x46\x8a\x72\xce\x16\xe8\x01\xc9\x56\x4b\xfb\xf6\xa9\xfb\x9b\x65\xf2\x28\xcb\x64\x35\x4e\x56\x48\xb7\x06\xa6\x5b\x8d\xec\xd4\x5e\x1a\x5c\x14\x70\x61\xcc\x04\x72\x10\xa6\x1d\x5b\xe1\x9a\x57\xab\x6a\x88\xf0\x72\x05\xe8\xf6\x51\xb2\xc2\x17\x18\xed\x9f\x35\x87\xcb\x1d\x4c\xc5\x3e\x6a\x47\x9a\x10\xed\x93\x77\x92\x80\xad\x11\xc8\x2e\xd2\x73\x9d\xce\xfe\xd5\x63\xd7\x8d\x93\x47\x3d\xf4\x2d\x8d\xfb\x2e\x70\x39\xcd\xc1\x53\xe7\x0a\x17\xdc\x06\x55\x4f\x05\xab\x81\xc5\x39\xdd\x1e\x6f\x5b\xd6\x5d\x4f\xb9\xa5\x74\x43\x5e\xad\xa7\x28\xdf\x25\xbb\x3b\x0d\x06\xe1\xf6\x52\x59\xbf\x23\xe4\xae\x89\x3d\xa1\xc0\xc0\x09\xd1\x26\x5a\x3b\x88\x68\x54\x7b\x0d\xb2\x7d\x55\x31\x42\xa8\xa7\x07\x3a\xd7\xd1\xda\x3a\x48\x5b\xf9\x68\x6b\x1d\xa0\x6e\x74\xee\xb0\x81\x58\x92\x45\x8f\x3a\x1d\x27\x88\x9e\x99\xd2\x69\x76\xe1\xdf\xf9\x22\x13\xed\x12\xd6\x23\xbb\x3b\xbe\xe8\x00\xc6\xf3\x61\xe1\x36\x5d\xf4\xcd\x29\x37\x48\xcf\x2c\xa1\xb9\x5c\xc4\x1e\x83\x67\x02\xfd\x53\x85\xf5\x11\xb2\xfd\x28\x44\x43\x4d\xa8\x65\x24\xf7\xc6\xe9\x13\x16\x87\x4a\x40\xfe\x38\xb4\x2a\x77\x9c\x80\xa4\x9b\xa3\xe3\xc2\x44\x4c\x7d\xa1\x97\x58\x70\xdb\x72\x9c\xdd\x85\xbd\x7e\x02\xcc\xbc\x61\x97\xcb\x4c\xee\x68\xdd\xfa\xa5\x51\xf0\xf9\x78\xf0\x84\xac\xe6\x6d\x94\x9f\x8b\xc5\x9b\xc9\xfc\x0c\xd6\xaf\x9b\xea\x1c\x62\x79\x59\x83\xad\xf7\x51\x4e\xa3\x63\x90\x5c\xd1\xed\x51\xc5\xd9\x32\x3c\x41\x68\x55\x81\x3b\x7f\x57\x84\x95\xbc\x61\xd1\x1c\xcb\xb4\x5b\xd9\xf9\x06\xc4\x77\xdf\x72\x9a\xe6\x93\x03\x3a\x0e\x77\x73\x56\x1e\x24\x12\xa4\xb7\x50\xb9\xfc\x0c\xd5\xea\x5d\x8d\x39\xdc\x3e\x2a\x8a\xa7\x2c\x8f\x27\x01\x35\x95\x4e\x81\x66\xc4\x4c\x82\x1b\x25\x92\xf7\xe4\x04\x90\x69\x04\x72\xd8\x31\xf2\x04\xd4\x28\x71\xac\xca\x51\x80\x69\x84\x31\xa0\x31\xb2\x00\x66\x80\xa8\xbe\x49\x3d\x0b\x7a\x8c\xdc\x81\x89\x3b\xaf\xc0\x40\x43\x24\xa3\xc4\x07\xba\xe5\x4e\xee\x2d\x9e\xd5\xbc\x6b\x28\xd7\x7c\xbc\xd2\xe3\xe1\x54\x48\x1f\x04\xbf\x75\xde\x68\x91\x37\xdc\xd4\x7d\xd9\x46\x0c\xbc\xd2\x7a\xd6\x22\xad\x38\xa1\xfd\xaa\x41\xd8\xea\x1e\xc8\xf2\xb0\x60\xc9\xd1\x4a\x9d\x79\x0b\x90\x0e\xc5\x41\x09\xdf\x75\xcc\x6a\x24\xd4\x90\x6a\xac\x6e\x8e\x5a\x9d\x38\x2e\xd6\x93\xc7\xe1\x19\x90\xff\x5d\x7a\xfb\x40\x04\x19\x43\xab\x8b\x2c\xf0\x3b\x78\xbb\x1f\x05\x46\xed\x32\x31\x49\xbe\xb7\xeb\x98\x51\x88\xd7\x7d\xba\x55\x44\xf4\xc8\x1c\x8a\x94\x22\xe3\xf4\xcc\x59\x32\x60\xa2\xce\xa1\x45\x2a\x30\x4e\xc9\x94\x15\x62\xea\xf4\x58\x52\x7a\x88\xc2\xd1\x29\xa0\x13\xc2\x6d\xa2\xfa\x61\x78\xd5\x53\x05\x79\x0f\x53\xf4\x41\x74\x90\x0f\x88\x71\xed\x08\xeb\xbf\x77\xd0\x2a\xe3\x77\x80\x80\x33\xed\x58\x76\x7d\x31\xee\x34\x9e\xbe\xc9\xae\xa0\xa5\x81\x0c\x7b\xff\x6c\xb4\x1d\x78\x91\xa7\xb8\xfa\x8e\x83\xb6\x3d\x8b\xdb\x21\xa2\x9a\x20\x7b\xa7\x14\xd2\x03\x81\xda\x4e\x25\xbf\xbf\x55\x15\xd5\x30\x7e\x23\xfc\xfa\xed\xc1\xac\xfe\x1b\x5c\x4f\x66\x96\x9c\xd4\x5a\xfd\x1e\x67\x60\x6d\x1a\xc4\xd6\xb3\x6c\x4d\x2e\x33\x89\xe4\xd6\x9e\x68\xc9\xe2\x37\x84\x7f\xee\xba\x78\x34\xae\x29\x8d\x3e\xc5\x9e\x4c\x2f\x60\x97\xd6\xda\x15\xc6\x47\x62\x3a\xb6\x1b\xa6\xed\xfc\x74\x4b\xc1\xd2\x1a\xdb\xcb\xc6\x51\x78\x8e\x6d\xfe\xf0\xfe\xf2\x04\xb2\x7d\xb1\xf2\x71\x3a\xa4\xcb\xfb\x68\xf6\xa6\xb6\xb5\x05\x1b\x00\xaa\x6e\x9d\x5f\xed\xa7\xa8\x4b\x43\xa4\x8f\x68\x52\x73\x8b\x4e\xe9\xad\xf1\x8d\xf4\x7c\xa9\x31\xa8\xb1\xcd\x2b\x38\xb3\x09\xda\xed\xfa\xdc\x19\x3f\xa0\x17\xce\x29\x36\x93\x74\xc5\x28\xa0\x33\x8f\xb4\x78\xad\x3a\xb0\x0a\x68\xe8\x45\xf6\x89\xf5\xbb\x56\xb4\xdc\x13\xaa\x75\xa7\xc4\x2c\xf5\xf0\x09\xd1\x4e\x56\xe2\x3a\x75\x8e\xe9\x6e\x13\x0a\x0c\x35\x69\x89\xa6\xd6\x41\xd2\xaf\xa0\x0d\x82\x0e\xd1\x75\x1a\x75\xac\x8d\x76\x81\x16\xb6\x08\xc5\x40\xcb\xbe\xa9\xce\x35\xa7\x32\xad\x14\x5d\x80\x60\x61\x5b\x8f\x52\xac\xe6\x54\xa4\x11\xb7\xb3\x8b\x2f\x6c\xe3\xa9\xb4\xa7\x69\x75\x2e\x93\x95\x8b\x75\xa5\xa3\x10\xfd\x29\x2a\x52\x9b\xe2\x71\xcd\x68\x4a\x89\x81\x2e\x39\x42\x0f\x1a\x40\x35\x69\xe2\x0e\x6a\x3d\xa3\xc0\xd3\x94\x9d\x01\x34\x13\x26\xdd\x80\x6a\x33\x02\xfa\xd7\xd1\x68\x34\xd1\xfa\x4f\xa9\xd6\x9c\x1a\xbd\xdc\xc5\x27\xc6\x3d\x5d\xc1\xd1\x56\x3c\xaa\xe5\x4c\x2c\x35\xda\xc2\x45\xfa\x8e\x16\xd3\x80\xd2\x33\x0a\x3f\x4a\xe6\x89\xd4\x1f\x1d\xee\x25\x3a\xd0\x62\x3c\x63\x0d\xfd\xb6\xda\xd0\xdc\x1a\xf5\x92\x75\x21\x96\x63\x9a\x7e\x9c\x72\x34\xb7\x36\x9d\xb0\x5e\x84\xe3\x98\x26\x9f\x4c\x57\x9a\x5e\xf1\x11\x52\x78\xb9\xd6\x74\x34\xb6\x3f\x47\x75\xd2\x91\x3d\x41\x7f\x9a\x5a\x6c\xac\x87\x8e\xd1\xa4\x46\xf0\x4d\x9f\xf4\xc3\x3a\xd5\xa4\x12\x13\x15\xab\x11\x5c\x53\x27\xec\x90\x8a\x35\x01\xfe\xaf\xa2\x67\x7d\x13\xed\xea\xf4\x3a\xd5\x1f\xac\x49\xcd\xd1\x9f\x26\x6b\x4d\xc7\xea\x4a\xd3\x34\xa4\x09\x7a\xd1\xe9\xb5\xa1\xe3\x74\xa0\x23\x34\x9f\x3f\x4a\xdf\x39\x46\xcb\x59\xac\xdb\xfc\x11\x1a\xcd\x72\x3d\x66\xa1\xf6\xf2\x07\xeb\x2c\x27\xd2\x54\x4e\xa1\x9f\x7c\x57\x5a\xc9\x2c\x5d\x64\xba\x06\x72\x1a\xbd\x63\x86\xb6\x31\x55\xc7\x38\x5e\xb3\x98\xac\x4f\x4c\xd3\x22\xfe\x72\xba\xc3\x15\xdd\x5e\xad\xb3\x98\xea\xd7\x2e\xf1\x49\x5d\x4d\xf8\xcb\x89\x72\x79\x1c\xb8\x1e\x8c\x71\x50\xd1\x4d\x43\x80\x63\xcd\x9c\x32\xe3\x38\xa4\x9e\x91\x3b\xdf\x5a\xe4\x77\x07\x55\x7a\xaf\xa9\xe6\xd0\x71\x1f\x7b\x05\xb7\x62\xc8\x21\x7f\x05\x0a\xe7\x4a\x7a\x51\x3b\xc0\x29\x11\xff\x78\x9e\xf6\x56\xf2\xf9\x95\x48\x3e\x7f\x3e\x18\x43\xeb\xcd\x47\xf8\xcd\x47\xf8\xcd\x47\xf8\xcd\x47\xb8\xfc\xfb\xf9\x08\xab\xc1\xf7\xd5\x10\xa9\xb7\xd1\x1a\xaf\xd7\x27\xdd\x74\x8b\x30\x98\x27\xda\x6d\x1f\x8f\xad\x56\x3a\x04\xaa\xf1\x0d\xf2\x08\xa0\x42\xd8\xc0\x96\x58\x40\x0c\xed\x7a\x7b\x41\x94\x3a\xb4\xfb\xdc\xa1\xe4\x37\x23\xea\xef\xec\xa2\x32\x35\xf3\xb6\xb0\xe3\x65\x7a\xb4\xe0\x99\x05\xa7\x52\xd8\xd6\x8c\xc7\x4b\x68\xd5\xe1\x59\xc5\xa6\xd2\xa6\xaa\xc8\x43\xf0\xf3\xa6\xe2\xf2\x8d\xe1\x92\xf2\xad\x06\x4c\xd9\x8e\x8d\x41\xca\xc4\x0c\x6e\xc0\x3a\x20\x83\xcc\x35\xbc\xb7\xea\x83\xe9\xaf\x6c\x80\x53\x86\x76\x4c\x7a\x08\xb5\x1a\x55\xcd\xed\x0f\x72\xbf\x5c\x6a\x8b\x58\x1a\x27\x92\xda\xc7\x63\xab\xdb\x2f\x50\x8d\x4b\xed\x11\x40\x85\xb0\x01\xa9\x2d\x20\x86\xa4\x76\x2f\x88\x52\x87\x56\x6a\x0f\xe5\x15\x1b\x99\x25\xb3\x8b\xca\xd4\xcc\x93\xda\xe3\x65\x7a\x26\xd6\xcc\x82\x53\x29\x6c\x4f\xbd\xf1\x12\xda\xb9\x38\xab\xd8\x54\xda\xd4\xd9\x3a\x04\x3f\x6f\x2a\x2e\x97\xda\x4b\xca\xb7\x1a\x30\x45\x6a\x8f\x41\xca\xc4\x0c\x4a\xed\x0e\xc8\x20\x73\x0d\x4b\xed\x3e\x98\xfe\xca\x06\x38\x65\x48\x6a\xeb\x21\xd4\x6a\x74\xc6\x89\xf2\x65\x9f\x89\xbb\xd2\xdc\x38\xc1\x13\x47\x9c\x1f\x65\xbb\xe2\x01\x1f\xfa\x02\x41\x48\x82\x68\x7a\x8c\x86\xa9\x81\x12\xa6\xc5\x2c\x58\x10\x44\xa0\x73\x9f\x5d\xa5\x6c\xda\xfd\x77\xfe\xb2\xb9\xaf\x7e\xe8\x0c\xc5\x3a\xdb\x95\x79\x54\x94\x66\x18\x86\xab\x64\x77\x4f\xf3\xa4\x3c\x6a\x30\x0c\xad\x11\xa6\x65\x3b\x99\x68\xfe\x98\x64\x91\x98\x60\x28\x98\xbb\x87\xd7\x6f\xa2\x75\x3b\xdf\xee\x96\x35\x6a\x05\x25\x7b\x33\xca\x7e\xcf\x46\xd9\xe1\xb4\x2b\xd2\x3c\xba\xcd\xa3\x5d\x6c\x7a\x08\xd5\x93\x68\x6a\x56\xbf\xbf\x80\xe5\xf5\x78\xa3\xe9\x80\xba\xd8\x6f\x18\xfd\xf3\x4d\xa0\xdf\xde\xa8\xf9\xad\x0c\x95\xdf\xde\xfc\x78\x62\x3b\xe2\xb1\xa6\xc2\xb9\xf6\xc0\x13\xc6\x24\xee\x44\x20\x2e\xca\x28\x2f\x5b\x01\x88\xf9\xbb\x76\xfc\x61\xf8\xce\x3f\x6d\xa3\xe7\x26\x2c\xf0\x8f\x52\xe8\xb4\x2a\x2b\x4a\x13\x84\x10\xfb\xfb\x67\x03\xdb\xda\xd8\xc1\xa7\x39\x14\xd1\x1f\x69\xcc\x3b\x9c\x98\x73\x6c\x30\xdd\xa8\xbf\xd0\xec\x3e\x68\xfe\x1e\x30\x5d\xf7\x9a\x9e\x6b\xf3\x71\x4e\x8b\xe4\x2b\xbd\x78\xa4\x79\x99\xac\xa3\xb4\x3d\x8e\x4a\xb4\x67\xfe\x28\xc6\xd3\x47\xfb\xe7\x7a\x48\xbd\xa3\x46\xf4\x18\x51\xbf\x6a\x45\x4e\xd5\x86\x5d\x93\xb8\x60\xd2\xe0\x4f\x18\xf3\xd1\xa1\x9e\x3a\xc2\xf3\x38\x61\x48\x89\x88\x07\xbf\x42\x24\xa6\xb1\xd8\x57\xdd\x70\x55\x65\x1d\x67\xaa\xaa\xa3\x79\x00\x94\xad\xb8\x87\xd8\x72\xe8\xf6\x6d\xbb\xf3\x87\x6c\x77\x5a\x11\x27\xed\x23\x3b\x5e\x1f\x6e\xb0\x1d\x07\x70\x6a\x28\xbe\x69\x31\xf1\xa6\x84\xa8\x9b\x1d\x0a\x6e\xaa\xcb\xd1\x54\x27\x1e\x5d\xf8\x34\xbd\x1b\xcb\x41\x0a\x1c\xae\xcf\xe9\x33\x6f\x1e\x7c\xe8\x0f\x01\xf9\x41\x17\xa0\xb1\xdf\x91\x4a\xc3\x76\x63\xc0\x12\x2b\x8e\x81\xd6\xec\xd9\x0f\x38\xd6\xcc\xbe\xc9\xf1\xa1\x37\x1c\xde\x87\x9e\xa8\x76\x6a\x10\xbb\xd6\xa8\x98\x96\x4b\xb7\x97\xba\x58\xad\x6f\x1b\xd9\xef\x76\x23\x5b\xa9\x21\xc8\x70\x54\xcf\xa2\xa2\xcc\xb3\xdd\xdd\x61\x93\xed\x9a\x60\xda\xf9\x36\x4a\x2f\xe1\xcd\x13\xd7\x64\x1c\x84\xaa\x44\xa3\xdc\x97\xe8\xb2\x9b\xed\x4f\x49\xe7\x43\x90\xae\x96\x3a\x38\x38\xaf\x8d\x69\x55\xd8\x61\x3a\xd2\x70\x76\x30\x35\xd9\x40\xa0\x06\xe8\x9e\x15\x6d\x7b\x6a\x00\xec\xa5\x81\xa8\x17\xc7\x7f\x3e\xb4\x43\x85\x19\xc2\x33\xa1\x15\x55\xcc\xe9\xcb\x57\x8c\xc9\xfe\x19\x52\x11\x9b\x7e\x3b\x34\x59\x70\xbe\x42\x06\x66\x98\x31\x62\x00\x76\x3b\x4f\x71\x2b\xa1\xf1\x91\xa8\x74\xa1\xf1\x35\x23\xcc\x46\x61\x93\x66\x4f\x22\x3d\x57\xdd\x2a\x48\x79\xcc\x61\x1b\x55\xda\xc0\x2e\xda\x16\x2b\xa6\x79\xcb\x2f\x2e\x67\x01\x4b\x9a\x39\x52\x42\xbc\xc7\x33\x73\xc0\xc7\xd3\x13\xba\xc7\xf1\xe2\x98\xe6\xf1\x11\xe9\xc7\xe3\xf8\xd0\x3a\x29\x6d\x9a\xcb\x43\x79\xcf\x6a\x71\x55\x64\x16\xf4\xc2\x76\x2b\xa5\xe7\x37\x5d\x04\x33\x6f\x72\x03\x98\x0c\x52\xc4\x3e\xef\x64\x14\x29\xe8\x3e\xca\xa3\x32\xcb\x45\x26\x97\x4d\x92\x4b\x19\x70\xa4\x3e\x8b\x93\xc7\x0f\x0f\xf3\x64\xcd\xb4\x2a\x66\x0c\x42\x45\xc3\x09\xab\x9f\x57\xf3\x71\x09\x50\x06\x29\x59\xca\x2c\x0a\x65\x8b\x53\xaa\x4c\x20\x6d\x01\x27\x72\xda\x0e\x4d\xde\x0f\x29\x10\xa4\xde\x09\xad\x3f\xed\xc4\xef\xef\x8f\xca\x2a\xf1\xfb\xfb\xa5\xa9\x1f\x7e\x7f\x7f\xaa\xa4\x0c\x35\xa6\xe3\xb3\x23\xfc\xfe\xfe\xa0\x59\x2e\x94\x57\xa0\x03\x75\x16\x89\x09\x20\xd3\x3f\xad\x8c\x1e\x74\x43\x03\x59\xc7\x6f\x3e\x6e\x40\x65\x34\x47\x63\x38\xd1\x00\x77\x30\x1e\x3f\xd0\x0d\xca\x43\xa7\xaf\xf9\x70\xa4\x51\x49\xff\xaf\x77\x90\xe2\xca\xc4\x08\xfd\x68\x98\xa0\x9a\x9c\x9f\x5f\x4e\x06\x94\xf4\x02\xec\xd8\x90\x77\xf6\x59\x79\xa1\x59\x38\xde\x52\x51\x29\x88\x3a\xb6\xf6\x49\xb9\x77\x3a\x66\x75\x61\x3c\x6f\x19\xd6\xab\xb7\x6d\xd3\x3a\x64\x87\x32\x6f\x69\xf9\x44\xe9\x6e\x68\x8c\x78\x1e\xf1\xe3\x72\xdb\x0b\x14\x47\x95\x3e\x55\x3e\x79\x19\xdb\x09\x12\xc0\xf3\x2c\xeb\x4a\x0c\x79\x29\xed\x9b\xa4\xcf\xd7\x4a\x3c\x4f\x2e\x66\x40\x0a\x27\xf9\x52\x49\x5b\xc9\x64\x4b\x60\x53\xdb\xbc\xb9\xd2\x83\xe1\x98\xc2\x47\x69\xa4\x7a\x64\x4b\x15\xd4\x16\xb6\x9e\xfc\xd8\x88\xef\x7f\x41\x68\x81\xcc\xfa\xc0\x65\xd6\xa5\x9a\xd2\x47\xe6\xfc\x24\xfe\x4f\x1f\xcf\xcc\xb3\x1b\x59\x87\xa9\xa5\xe8\x43\xca\xcd\x14\xbf\x6e\xb2\x9c\x83\x7d\x58\x3a\x3c\x47\xd6\xf4\x47\x54\xb2\x78\xba\x1d\x5f\xe9\x92\x59\x79\x44\xad\xed\x04\x10\xf2\x91\x1e\xbf\x39\x06\x7f\xff\xba\x8b\xb6\xf4\xe3\x36\x8b\xa3\xf4\xa6\xfb\xe6\xc3\xfb\x43\x2f\x5b\xc5\x33\xb7\x3e\xf1\xf4\x6d\x4a\xbc\x7c\x5f\x11\x1f\xa1\xf8\xc7\x69\x27\x7d\xa2\x46\x7e\xc1\x76\x40\x9d\xaa\x33\x37\x6d\x43\x78\x8e\x47\x71\x9c\x44\x1b\x40\xb9\x58\xae\xe9\x70\x1e\x3a\xc6\x42\xb9\xab\xb9\x0d\x99\x09\xba\x79\x5d\xab\x94\x9b\x5f\x64\x61\xd7\x75\x51\xcc\xef\x2a\x09\xc7\xa1\x4a\xa7\x0a\x82\x3e\x7a\x28\xb3\x57\xf8\xb0\xd4\xc0\x09\x85\xa7\x76\x07\x07\x5e\xd8\x11\x72\xe1\xf9\x5d\x00\xa5\x79\xf6\x6f\xd4\x65\x86\xe8\x36\x7b\xa4\x4b\xb8\xa1\x2a\xb8\xa0\xcc\x51\xfc\xa0\xe0\x58\xca\x10\x1c\xc9\x01\x0e\xc6\x78\xaa\x60\xf6\x62\x31\x27\x40\xe9\xc9\xac\xc0\xa1\x97\xf2\x82\x5c\x7a\x01\x33\x40\xf1\x83\x38\x6a\x72\x88\xba\xe3\xba\x9a\x69\x77\xbb\x9a\x6e\x23\xbb\x5a\x6e\xd4\xba\x3a\xc2\xea\x74\xf5\x50\x1d\x4c\xab\x79\x47\x0d\xd4\x6d\x77\xd7\x6c\xdb\x5e\xa3\xe6\x19\x12\x16\xf4\xe6\x32\x6b\xf1\xd5\x64\xcb\xc4\xbc\x01\x9b\x6d\x88\xbe\x5a\x6c\xe0\x38\x8e\x3d\x8e\xb6\x81\x5f\x2d\xb7\xa3\x1c\xc9\x9d\xc7\x1b\xe0\xaf\xde\x1f\xe4\xd4\xa0\xc7\x33\xed\x5c\x8e\x3a\x76\xe0\x8f\xee\x7f\xde\x09\x65\x93\x91\x9b\x2d\x76\xfa\xcd\x72\xc7\x0a\x7d\xdc\x39\xc3\xe2\x13\x82\x93\x19\xf8\x4f\x67\x8f\xe7\x1d\xd8\x98\xf2\x1e\xf6\x7b\x9a\xaf\xa3\x82\x5e\x2a\x81\x4f\x2e\xe5\xcc\xf8\x96\xed\xaa\xca\xfc\xa9\x4f\x62\x4e\x78\xb4\xf2\x0d\xcf\x46\xbe\xe5\xd9\xc6\x04\xdc\xb2\x47\xc9\xd4\x11\xa1\xdb\x7d\xf9\x72\x92\xb1\xa8\x30\x9d\x02\xc9\x69\xfb\x5f\x41\x7a\xb2\x9e\xe7\x58\x0f\x8a\x0f\x06\xa6\xdb\x7a\x5e\x88\xd4\xfa\xd2\x9b\xca\xb1\xa7\xbd\xf1\x05\x2f\x89\x99\xc7\x92\x73\x0e\x12\x8f\x39\xea\x3b\xea\x2c\xae\xde\xef\x63\xb4\x7f\xbe\x7c\xba\x4f\x4a\x6a\x82\x09\xb9\x72\x78\x69\xfc\x7a\x2b\xc3\xf4\x26\x29\x2b\x6b\xb3\xfc\x75\x9b\x7d\xed\xf9\x24\xbd\x55\xd8\xdd\x4a\x78\x6b\x99\x42\x3e\x87\xb9\xe5\x72\xf3\x8b\x2c\x65\xdc\x0e\x8a\x05\x6c\xda\xe0\xe8\xee\xfe\x7b\x56\xc1\xa6\xc8\xd5\xc5\x12\x93\xbd\xae\xfc\xf2\xa2\xc7\x77\x5e\x0b\xd5\x51\x9d\x58\xe1\xea\x5e\x48\xe2\x57\x90\x8a\xa7\xa8\x5c\xdf\x4b\x97\x90\x7e\x40\x08\x9d\x0f\x38\x56\xb5\x3c\xaa\x2e\x85\x80\x40\xad\xbd\x17\xdb\x9c\x0a\xa7\xad\xd9\x52\xa1\x29\xb8\xa0\xcc\x11\x52\xa2\x85\x63\x99\xb4\xa8\x5d\xd5\xba\x5d\xc8\x85\xab\xbb\x7f\x86\xce\x14\xc6\xf9\xfd\xb3\xf1\xc1\x60\xc2\xf4\xfc\x55\xf1\xfd\x6b\x79\x02\x42\x1d\x07\x6e\xdb\xef\x5e\x00\x81\xdf\xc2\x28\xf2\x6f\xc5\xc3\x9e\xcd\x92\xc2\xd8\x65\xa5\xf1\xee\x5d\x23\x64\x0c\x8d\x78\x3a\x37\xb2\xdc\x50\x60\x5a\x42\xaa\x03\x20\x7f\x3b\x3f\xfc\x6b\xac\x00\x4d\xf3\x09\x62\x9c\xfe\xaa\x1b\x9c\xce\x0c\x03\x07\x37\xe2\xba\xab\xea\x7f\x2b\x6c\x0d\x72\xe5\xe0\x79\xd0\xbb\xe6\x79\xfb\x67\x83\xfd\x6f\x02\x9b\xb4\xd2\x86\xae\x04\x00\xfc\x65\x3a\x2d\x00\xd2\xf6\xcd\x3b\x12\x97\xd6\x39\xaf\xcf\xf7\x50\xdf\xc8\xab\x4d\x96\x95\x4d\x44\x8e\x32\xdb\x57\xd7\x5f\xf6\xcf\x3d\x25\xee\x69\x14\x37\x25\xb8\xe6\x21\x15\xba\x2f\xb7\xa9\x55\xd2\xed\x3e\x8d\x4a\x6a\xc2\xd8\xc2\x91\xc4\xa1\xe5\x23\xf8\xda\x39\xb3\xa8\xce\x47\xa4\xb3\x0b\x7e\x04\xa2\xd0\x71\xf8\x6a\x26\xbb\x98\x3e\x5f\xb8\x08\x35\x22\x71\x93\x3c\xd3\x58\xcb\x01\x9d\x29\xdf\x6d\xd6\xf1\x07\xde\x7c\x53\xc8\x4f\x52\x9b\x03\x6f\xe5\x2d\x3c\x98\x49\x49\xb7\x45\x0d\xd8\x3e\x32\x6f\x23\x90\x5f\xb6\x0f\xcc\xc5\x6b\x49\xd8\xe8\xc7\x4b\xdc\x5a\xa9\xe0\x5c\xb4\x7f\x96\x96\xec\x9e\x22\xb7\x59\xfc\x72\x90\x3d\x27\x60\x86\x69\x81\xad\x6a\x5c\x93\xdd\x5d\x33\xc6\xd1\x43\x99\x8d\xd3\x26\xcd\xe1\xc0\x75\x65\xdf\xe1\xda\x11\xb9\x1a\x6d\xdc\xc3\x8d\xef\x5b\x6a\xb2\xdb\xdc\xd2\xaa\xf4\x64\xb7\x97\x95\x19\x09\x15\xc9\xe6\x0b\x27\x5a\x6a\x75\x80\x1e\xef\x6b\x93\x1e\x61\x53\x94\xd8\xbd\xb8\xf8\x44\xd2\xfb\x8a\x57\x73\x46\xde\xd8\x62\x22\x51\x5a\x5d\x26\xea\xed\xe5\x1a\x43\xe7\xf0\x65\x08\xdc\xf8\x75\x93\xe5\x7c\x76\xfd\xf7\x75\x9a\x15\xf4\xe6\xb0\x7e\xc8\x8b\x2c\xbf\xd8\x67\x09\xb0\x4f\xbf\xa7\x72\x57\xb8\xf8\x9b\x60\x13\x69\x12\x23\x6f\xd2\x2c\x2a\x2f\xa0\xb3\x2f\x61\x87\xcf\x46\x6c\x57\x5e\x98\x21\x42\xa0\x9d\x73\x21\x6d\xef\x9f\x2b\x8e\x80\x6e\xb4\xd6\xd9\xae\x78\x48\xcd\x04\xf8\x39\xc9\x76\x66\x9a\x14\xa5\x61\xed\xb2\x32\x59\x53\x2b\x4a\xd3\xec\x69\x35\x02\x14\xd3\xdd\xcb\x18\xcc\x9e\xe6\xdb\xa4\x28\xd8\x8a\xb2\xaa\xde\x81\x1f\x7b\xfd\x94\xec\x36\x59\xfd\xb0\xcf\xd2\x64\xfd\x62\x6e\xa3\x5d\x74\x47\xb7\x74\x57\xd6\x5f\x8a\x87\xf5\x9a\x16\x0d\x92\xa7\x28\xdf\x31\xa6\xef\x4b\x15\xdd\x08\xc5\x7e\x07\x7b\x65\x17\x27\xf9\x07\xd0\xad\xf1\xc1\xb0\xc9\xfe\xf9\x7c\x52\x3f\x35\xda\xd9\x78\x7f\x4d\x85\x95\xfa\xad\x29\x22\xf7\x5f\xe7\x2d\xeb\xc7\xce\xcb\x4e\x7f\x76\x20\x44\xbf\x76\xde\x8b\xfe\x1d\x55\xde\x3c\xa1\xbc\xb1\x1f\x75\x6f\xd1\xe7\x92\xe6\xbb\x28\x35\x8b\xec\x21\x5f\xf7\x36\xb6\x8c\x0d\x7e\x9b\x41\x03\xd0\x74\x00\x87\x6d\x01\xfe\x96\xec\xe2\x95\x15\x27\xc5\x9a\x89\x90\x17\x73\x7d\x0f\xd7\x38\xf2\xec\xa1\xa4\xe6\x3a\xca\xe3\x6a\x12\x3e\xa4\x46\x9a\xac\xac\x7b\x1a\xa5\xe5\x3d\xac\x71\x66\xf6\x50\xee\x1f\x4a\x23\x8e\x0d\xba\x5d\x59\x29\xc0\xad\xd8\xca\xf9\x6b\x1c\x95\x91\x09\x38\xfe\xdb\xc7\xb3\x78\x6d\x45\xeb\xb4\xb0\x40\x04\x9e\xdd\x18\x70\x21\xa4\x21\x19\x2e\xfd\x88\xfe\xdd\x65\x31\x35\x13\x36\xef\x92\xf2\x45\xf9\x52\xd0\xfc\x31\x59\x37\x1f\x35\xfc\x7a\xba\xcb\xd5\x5d\x46\x3f\x7e\x99\x54\x77\xf7\x4f\x79\xb4\xef\x1b\xe5\x31\xd6\xae\xbb\x6e\x00\x50\x3f\xea\x9d\x02\x6c\xf4\x9b\x97\x53\xb9\xa0\x29\xd1\xc7\x0d\x0d\x04\xe7\x8a\xfa\x79\x2e\x77\xd4\x05\x7b\xb9\x44\x0b\xd1\xe6\x96\x7a\xf6\x89\x3d\x26\x5f\x53\x1d\x26\xf6\xeb\x6b\x3f\x56\x40\xb7\xa3\x13\x8f\x4f\x17\xc1\xea\x0b\x39\xb7\xb9\xf7\x14\x68\x17\x90\xbe\x19\x3b\x79\x92\xce\xed\xe4\xc6\x0c\xc5\x6f\xd9\xf4\x09\xeb\x6e\x01\xa6\xcf\xf3\xcb\x4f\xd3\xf6\x66\xd3\xce\x4b\x96\x9d\x92\x2c\x3c\x1b\xb9\x7a\xdf\xd2\x26\xa6\x37\x66\x86\x49\xe7\x18\x1b\xce\x51\x46\x9b\xda\x4a\x23\x96\x71\xaf\xd1\x5f\xe0\xb7\xce\x0f\xa6\xdd\x7c\xb5\x81\xc3\x4d\x18\x21\x52\xeb\x77\x33\xad\xbb\xa7\x74\xf3\x92\xee\x5d\xd4\xad\x6d\xf7\xb6\xbf\xc5\x85\x3f\xc1\x22\x21\x99\x31\xa3\xff\x7e\x8e\x2e\xf6\x1c\x81\xf6\x77\xf3\xfa\x72\x17\x47\x03\x99\x78\x29\xb9\x6d\x40\x51\xb7\x0d\xf8\xb8\xdb\xf7\xf3\x6e\x46\x1f\xf8\x96\x8f\x55\x7c\x7c\xe8\x8b\xf9\xd7\xe7\x0f\xf2\x8e\x53\xe8\x25\xd5\x21\xd9\x31\xf4\xf0\xd3\xb7\x34\x6a\x8e\x54\x67\xd1\xd6\x29\xae\xea\x4c\x64\x31\x87\x54\x61\x5d\xfe\xd0\x9e\x5e\x32\x2e\x6a\x98\x01\x24\x1f\x0d\xc9\x5e\xcc\x50\xc2\x80\x12\x6d\x05\x42\x0f\x56\x9f\x97\x28\x3b\x17\xee\x8d\xd2\x57\x42\xa8\xad\x6a\x11\x7f\xff\x5c\xdd\x42\x17\x56\x09\x47\x5a\xd5\x09\x5c\x17\x6a\x8e\x52\x60\xc0\x00\xff\x8e\xde\xc1\x92\x2b\xd7\x56\xdd\xf2\x46\xa3\x54\x6b\xed\xb4\x72\x45\x76\x6d\x25\x09\x1a\x72\x82\xc1\xda\x45\x3d\x60\x44\xfd\x20\xb7\x78\xd5\x07\x55\x9b\x57\xd5\xfe\xe9\x10\xc7\x43\x78\x4e\xac\x5a\x8b\x54\x47\xc2\x48\xa5\xd5\xa5\xc9\x4e\x41\x9d\xda\xd3\xc7\x4b\x82\xfe\x0d\xc1\xc4\xd1\xc6\xeb\x53\x45\xa6\xed\xd4\x3d\xdc\x37\x76\xa3\x2d\xe9\xda\x24\x14\xf5\xe6\xb2\xb2\xd6\x9e\x9d\x55\x87\x75\xf3\xc6\xb4\x97\x0a\x5d\xef\x73\x76\xe3\x92\xd0\x99\xcc\x3d\x3a\x24\xfd\xed\x96\xea\x20\x7d\xc6\x4a\x6e\x72\x36\xca\xbe\xb8\x52\xe2\xf3\x3d\x0f\x70\x51\x03\xcb\x4f\xf7\xea\xf9\x42\x63\xa0\x1c\xae\xf1\x5e\x8f\x44\x61\xb2\xda\xf4\x66\x79\x74\x6b\xa0\xb1\x26\x28\x34\xb6\x10\x2a\xe1\x23\xab\x94\x14\x62\xfa\xba\x68\xff\x7c\x59\x85\x19\x13\x36\x8e\x6d\x12\xc7\x69\x8f\xc9\xb6\xae\xa3\xda\xb5\xce\xe9\xbb\xaa\x8c\xda\xfa\x8a\x2e\xe2\x05\xbe\xdd\xbf\x35\xb5\x62\x5a\x94\xc9\x2e\x62\xef\xfa\x2d\x27\x96\xd8\xcf\x0f\x91\xd5\x17\xe6\xad\x22\x53\xf6\x29\x92\x69\x8d\xd4\xd6\xc8\x60\xea\xac\x1e\xea\x3a\x09\x87\xe4\xae\x28\x5d\xce\x4e\xa3\x7d\x41\x2f\xaa\x1f\xaf\x5c\xf5\x8b\xb3\xad\x99\xd3\xf5\xcb\x3a\x4d\x76\x77\x4c\xf7\x7b\xff\x8d\x42\x0d\x2e\xb2\x7d\xbd\x1e\xb5\x63\xe4\xbd\xe0\x4d\x3a\xf1\x11\x3c\x53\x95\x15\x37\x8d\x14\x7e\x52\xbf\xa9\xf7\x8b\xa6\x61\xd5\xe3\x93\xfd\x2a\x41\x55\x1a\x9b\x20\x2d\x76\x91\x82\xf4\x6a\xce\x0b\x3b\xc5\xad\x5d\x15\xb2\xba\xf8\x5d\x4b\x98\x16\x62\x46\x73\x63\xb1\x31\xe2\x05\xcf\xaf\x2e\xb2\x5d\xfa\xd2\x65\xfa\x21\xb8\x8e\xae\x0f\x5d\x54\xbf\xa4\x69\x9a\xec\x8b\xa4\x98\x47\xc7\xfb\xc1\xda\xdf\x1f\x34\x76\xd6\x21\xfc\xeb\x68\x0f\x12\x43\x42\x2a\x5e\xb5\x03\xb5\x05\x74\x3b\x3e\xa4\x73\x9a\x32\x22\x1b\x5b\xc0\x2d\x66\x19\xea\x05\x95\x41\xd5\x6f\x07\xf5\x58\xd1\x0a\xc7\x5a\x75\x9b\xc5\x2f\xac\xc6\x2a\x6c\x57\xe7\xb5\xca\xb6\x97\x93\xa3\x36\x55\x61\x60\xca\xe8\xd6\xdc\x45\x8f\x72\x50\x0a\xd2\x0e\x4a\xd1\x5e\x3f\x2f\xf5\x2b\x58\x4a\xa3\xfc\xe2\x36\x2b\xef\x2f\x53\x5a\xb2\xdd\x04\x63\x03\x58\x24\x11\x84\xd9\x13\x55\x19\x0f\xa9\x36\x1a\xcb\x09\x4f\x10\x8e\x3f\x2f\xe8\x3f\x6c\xab\x62\x4f\x81\xce\x2e\x5a\xc4\xb5\xcc\xf6\x3e\x24\xda\x25\xdb\x88\x8b\xd7\xa6\xe9\x8d\x72\x54\x95\x4d\x8c\xa8\xa5\xa8\xd8\xb5\xa2\xa2\x42\x75\x27\x17\x9f\xd3\x90\xde\x0f\x96\x5e\xde\x91\xdd\x50\x18\xe6\x3e\xcf\xf6\x34\x2f\x5f\x2e\xda\x6a\xf3\xe5\x24\x20\x65\xc0\xa1\xc4\x3e\xca\xe9\xae\x6c\xa9\x2d\x43\xfa\xf2\x05\x6e\x02\x9e\x36\xad\xe2\xd3\x83\xc7\x32\xa3\xf1\xb9\x11\x5d\x54\xde\x8d\x43\x30\x55\x3e\x91\x01\x10\x91\x24\xa6\xb3\x49\xa0\xb7\x94\x6e\x88\x76\x70\xea\xf2\x46\x2b\x89\xa2\xd4\x60\x25\x63\xe2\xc0\xf8\x6a\x94\xfa\x6a\x47\xdb\x04\xf7\x95\xe6\x5c\xb5\x97\x84\x93\x5b\xe1\xc1\x27\xa8\xe1\x47\xc0\x2b\x74\x6e\xbc\x37\xf0\xfe\xf9\xfc\x72\x20\xf0\xc5\x3b\x5d\x79\xb8\x97\x57\x17\x5f\x21\x6d\x24\x8c\x89\x25\x87\x58\x8b\xd3\xd9\xa1\x4e\xcb\x61\x73\x60\xeb\xaf\x2b\x28\x35\x05\xa6\x8b\x99\x33\x5d\x41\x41\x10\xf3\xec\x99\xdc\x30\x07\x66\x88\x9b\xd5\xf0\xe7\xce\x55\xe8\x41\xe8\x5e\x27\x24\x9d\xae\x15\x4b\x4b\x36\x48\xff\x7e\xb3\x78\x5c\x39\xa4\x75\x0e\x5f\x5b\x1e\x19\x4d\x04\x62\x9b\xed\x20\xa4\x78\x26\xf0\xfc\x57\x12\xb4\x27\xf0\x5f\x9a\xd1\xad\x42\x72\xcc\x28\xc0\x73\x51\x0d\x8c\xc6\x10\x4a\x19\x87\xce\x84\x03\xde\x30\x73\xc8\x1f\x70\xc2\x8e\x15\x90\x01\xc9\xd7\x3d\xc8\xa4\x45\x96\x3e\x32\x69\x17\xe5\xb1\x11\x97\x43\x47\xd2\x02\xb4\xa8\x8e\x3c\xd9\x86\x5e\xd8\xf3\xca\x2c\x4b\xcb\x64\x7f\xd3\x77\x54\x3a\xb3\x4c\xb1\x4f\x13\xa6\x45\xcc\x2c\x26\x3e\x75\x00\xfb\xce\xca\xf9\x49\x6d\x05\x57\xdb\x64\x64\x67\xc8\x4e\x4f\xba\xc4\xf5\x3d\xac\xf1\x62\xd2\x7a\x7b\x7a\xfc\x94\xd6\x30\x49\xdb\x3f\xd3\x3d\x5f\xc1\x29\xb4\xe1\xe8\xbc\x33\xdb\x51\x18\x8f\xc0\x53\x2f\xc1\xa4\x73\xd1\x01\xb4\x88\x6a\x3e\x45\x65\x99\xbf\x93\x3b\xe4\x5c\x71\xc6\x42\x97\xd2\x2e\x4b\x4c\x49\xb1\xaa\xc9\x11\x49\x5c\xb6\x48\x35\x22\x08\x4d\x62\x39\xa1\x15\x2d\xe2\xb8\x81\xd2\x63\x8c\xd7\x5f\x74\x0a\xff\xf5\x97\xd6\xb3\x61\x0d\x3f\x95\x1b\x7b\x8c\xbf\xb2\x06\xa6\xea\xe2\x9c\x35\x0d\x0d\x00\xdf\x14\x28\xfa\xbb\xb0\x70\x30\xce\x09\xf9\x65\x63\xba\xbd\x05\x85\x04\xea\xff\xf5\xd9\x84\xa4\xe4\x5b\xba\x2b\xff\xdb\xc7\x32\xdb\xdf\x18\x2a\x80\x19\xe5\x79\xf6\x24\xfb\xfd\x2a\x54\x4c\x18\xf7\xa9\x03\x3e\x69\x68\xa7\x0e\x62\xff\x70\x4d\x1d\x98\xae\x41\xf9\x1b\xad\xa9\x4b\x3d\x7a\x8f\x5f\x97\x5b\x56\x47\x7e\xeb\x32\xdb\x9f\x64\x2e\x7f\xc3\x85\xe6\xdb\x4a\x8b\x3f\x5e\xc2\xfc\x41\x82\xe9\x1b\x4b\xb0\xd9\xcb\x6f\x77\xf7\xd4\xf8\x70\xbf\xad\x26\xc7\xad\x26\xd2\x71\x52\x77\x27\x59\xac\xa3\x94\xbe\xc3\x2b\xcb\x95\x77\x89\xf2\x5b\xb1\xa8\x37\xbb\x58\x38\xc7\x91\x6e\x90\xc1\xb3\x19\x82\x0b\x33\xe8\x06\x26\xdf\xf4\x9f\x7a\xd8\xe6\x8c\xd3\xcc\x81\x19\x1d\x89\xa5\x0b\x79\x5b\x59\x32\x99\xda\x76\xde\x5a\x77\x35\xba\x7b\xaf\xc6\xa9\x68\x76\x52\x1e\x9a\x90\x3d\x57\x73\xc6\x19\xeb\xfc\x41\xef\xc6\x81\x4e\x83\xef\x9d\x48\xe5\x1a\x32\x27\x5d\xa1\x6a\x1d\x7b\x6a\x0e\x6d\x87\x5b\x71\x25\x36\xe4\x63\x2b\x4f\x15\x33\x64\xc8\xa3\x73\x00\x55\x03\xd4\x87\x47\xe9\x9e\x01\x54\x2a\x1c\x8f\x53\xad\x0b\x0e\xbc\x64\xf8\xbe\x51\xc7\xfc\x51\xbd\xf6\x6d\x7a\x55\x31\x58\x8f\xf5\x6a\x65\x65\x1c\x81\x12\x19\xe9\x07\x5a\xdc\x8f\xa8\x01\xe9\xc3\xa2\x34\xa6\x17\x91\x0a\xc5\xcd\x0d\x7f\xd1\xbd\xe8\xe8\x24\xe6\x62\x78\x8a\xbf\xf5\xe8\xd8\xab\x37\xa6\xc4\x5d\xe6\x7f\x01\x19\x52\x35\xd8\x15\x69\x19\x46\xd7\xde\x87\x74\x90\x48\xfd\x77\xa5\xe6\xde\x43\x9d\x4e\x58\x2b\x24\x79\xf9\xef\xb3\x82\xc6\xe6\x3e\x2a\xef\xc1\x43\xa0\xea\x8c\x21\x9f\x7c\x3e\xa6\x93\xc1\x35\x70\x6c\x71\x31\x0b\x2a\xb9\xf8\xc3\x77\x5d\xc8\x16\x68\xd1\x3a\x4b\x53\x61\xe9\xed\x05\xdc\xe7\xd9\xf3\x8b\xf9\xb0\x2f\xca\x9c\x46\xdb\x62\x20\xe7\x40\xe7\xb6\x5c\xef\xd9\x8a\xbc\x89\x37\xaa\x43\x36\xe5\xf6\x1f\xd2\xdf\xfe\x6b\x39\x75\x12\xe5\x46\x93\xb6\xcb\xad\x34\xd9\xfd\x16\xdd\xa6\xb4\x3e\x7d\x99\x0a\x2f\x24\xd2\x54\x70\x21\xe6\xc6\x46\x8c\x1f\xe7\xe4\x34\x8a\xb3\x5d\xfa\x72\x2e\xfa\xbd\x45\xdb\xcc\xd2\x2a\xa5\x33\x0b\xab\x74\xf7\x70\x50\xbb\x17\x75\x8c\x32\x15\x03\x50\x7b\x0c\x02\xa0\x78\x00\x01\xdc\x98\x69\x86\x68\x9c\xe4\x76\x81\x31\x0a\xdb\xf0\x63\x04\x89\xfb\x3a\x73\x48\xea\x16\x19\x23\xaa\x5b\x62\x8c\x2c\xb6\xe3\x9a\x45\x54\xbb\xc0\x18\x49\x6d\xf8\x31\x82\xea\x0b\x4d\xbb\xa2\x8c\x76\xeb\x79\xc4\x0d\x15\x1e\x23\x74\xa8\xec\x18\xd1\x65\xf6\x1b\xdd\xcd\xa2\xb4\x53\x62\x8c\xbc\x4e\x81\x5e\x9a\xb4\x52\x7d\xca\xe4\x1d\x29\xd8\x4b\xe1\x48\xb9\x5e\x42\xb5\xab\x4a\x57\x56\x8f\x80\x09\xc1\x37\x02\x25\xce\xa8\xfa\xd6\x22\xb1\xfe\xd4\xeb\x90\x56\xbb\x24\x42\xed\x1b\xd2\x1c\x7b\x60\xda\xbe\x13\xc3\x0b\xca\x95\x55\x69\x80\x73\xd7\xf4\xa6\xe4\xc4\xb5\xbd\x29\xa0\xed\xc0\xea\x73\x75\x60\x84\xd0\xa8\x7e\x53\x15\x31\xde\x2f\x27\x9f\x95\x9d\xd9\x00\x56\x64\xb0\x09\xc6\x7b\xd1\x08\x91\xae\x7c\xbc\x1d\xfc\xec\x71\x49\x2b\xaa\x92\x93\xdb\x50\x15\xe8\x69\x01\xff\xdc\x4e\x71\x35\x8d\x7e\x23\x5a\xde\x02\x56\x76\x66\x1b\x58\x91\xc1\x56\x18\xd1\xb2\x71\xa8\x9c\x5e\x8e\x69\x4d\x85\x61\x76\x9b\xaa\x82\x23\x2d\x13\x62\x46\xb9\x25\xd0\xf1\x61\x7a\xd8\xc5\x34\x4f\x93\x1d\x9d\xcd\x81\x23\x33\xee\x2a\x4e\x15\xef\xe1\x23\x18\x77\xe9\xc4\xed\x90\x30\x7b\x06\xcc\x9c\xf6\x9d\x0a\x07\x47\x68\x44\x44\xb4\x90\xa9\x77\x93\xbc\xf1\x7d\x46\x2d\x6a\xe2\xf2\x08\xd9\xc7\x0a\xcf\x15\x7e\xac\xcc\xb0\xf4\x8b\x5b\xde\xc8\x93\x9b\x12\x77\xee\xf5\x2f\x68\x92\x84\x64\x76\xd3\xa4\xb2\x23\x4d\x8c\x35\xf9\x36\xc1\x07\xf5\xc4\x13\xed\xcf\x98\x59\xdf\x7e\x2a\x1d\x37\x77\x16\x06\x88\xaa\xce\x6b\x9f\xf2\x68\x5f\xb9\x6b\x74\x5e\xd4\xf1\x87\x9e\xab\xc0\x58\x53\xd7\x8c\xf7\x53\x87\x74\x99\xb6\xd2\xa9\xe5\xdb\x6a\x3a\x4d\x75\xa7\x53\x8e\x1a\x9c\x63\xda\x93\xc6\xb1\x66\xd2\xf0\x4d\x1e\xac\x78\xc2\x04\xe4\xa0\x22\xf1\xfb\xe2\x01\x8b\x8f\xd0\xea\x44\xdd\x73\x07\x2d\x9e\xaf\x0e\x8a\x9a\x86\x07\x2e\x1e\xd3\x1a\x95\x6b\xa7\x22\xdc\xd7\x68\x68\x90\xc5\x66\x48\x25\x7e\x97\x74\xbb\xb5\x6d\xc8\x53\x2e\xbe\xce\xa2\xc4\x68\x8b\xd2\x11\x8a\x2a\xf8\x03\x63\xd6\xbb\x3c\x89\xcd\x3c\x7b\xba\xe0\x68\x25\xfa\xaa\x2f\x66\x51\x46\x79\x39\xf0\x9d\xee\xe2\x0b\x8e\x51\xfa\x5a\x4f\x84\xa4\xa4\x5b\xc5\xf9\xa4\x05\x54\xa3\xe9\x81\xe1\xae\x2a\x05\x4d\x37\xdd\x6f\xb2\xdd\x1b\xcd\xee\xb5\x29\x31\x30\xa6\xf6\xe8\x38\xae\x43\xd7\x1e\x7e\x3a\x42\xbb\x61\x21\x4e\x47\xb8\x3e\x6a\x03\x12\x51\x1b\x87\x03\xdf\x48\xd7\xcc\x35\xb1\x09\x26\x66\xbc\x26\xc7\x57\xa5\xbf\xb0\x71\x2c\xd2\x01\x3f\xf0\x09\x41\x81\xe6\xe2\x06\xb3\xce\x37\xc1\x0c\x7b\xb4\x0f\xef\xf5\x27\x88\x70\xa6\xa4\x3b\xf9\xc3\xed\xc8\xa4\xc3\x90\xba\xfb\xec\xaf\xff\xb6\xa5\x71\x12\x19\xef\x1a\xe7\x51\xcf\x47\xfb\xe7\xf3\xc3\xb1\xac\xb5\x44\xf7\x3a\x11\x93\xc9\xbd\xc8\xd0\x5e\x60\xc9\x93\x0f\x5c\x1c\x1e\xe9\x05\xe6\x4a\xc1\x1d\x93\xbc\xf8\xf5\xf4\x9c\xa8\x6e\x6d\x4e\xd2\xb0\xa3\x19\x4f\xba\x75\xaf\xde\x92\x38\x12\xf1\x69\x08\x3b\x65\xf3\xe4\x18\xa6\x27\x44\xab\x1c\xf3\x3a\x53\x76\xdf\x27\xd0\xee\x96\xe8\x69\xe3\x3a\x98\x11\xa7\x72\x7a\x88\xea\x8e\x5d\xad\x0c\x9d\xd2\xbd\xf6\xc4\x2a\xf9\xd5\x31\x1b\x23\x5e\x7c\x7e\x77\x5e\x8d\xee\x57\x18\xcc\xa1\x5f\xeb\xea\xd7\xb5\xba\x1a\xd6\x9c\xce\x88\x8f\xb0\xaa\x55\xe5\x17\x74\x47\x3c\x66\xd8\xe2\x40\xba\x2d\x9a\xec\xb5\x38\x6f\x12\x5d\xc5\xe5\xb1\x83\xcf\x31\x2c\x69\x70\x39\x89\x05\x18\xd8\x4c\xb3\x56\x5d\xd8\xda\x47\x45\x91\xec\xee\x14\x47\xed\x89\xc6\x82\xa6\xec\x51\xd6\xb1\x49\xb4\xcc\x37\x29\x68\xa9\x9b\x3f\x08\x5a\xa2\xe6\x1a\x1e\xb4\xb4\x8c\x8d\xab\xb6\xe6\x61\xf3\x84\xa6\x9e\xca\x0c\x4f\xe8\x2d\xb2\xc3\x39\x9c\x21\xa2\xea\x2e\xe2\x8c\xba\xec\x89\x38\x63\x80\x96\x05\x9c\xa1\xa3\x6e\x01\x67\xe8\x88\x9a\xcd\x19\x3a\x5a\x46\x39\x43\x57\xf3\x08\x67\x74\xeb\xa9\xaf\xbf\x45\xc1\xc6\xf6\xe7\x70\xc6\x3a\x4f\xe0\xda\xc8\x22\xd6\x68\x0a\x9f\x88\x37\x86\xa8\x59\xc0\x1c\x5a\xfa\x16\x70\x87\x96\xac\xd9\xec\xa1\xa5\x66\x94\x3f\xb4\x75\x8f\x30\x88\xa6\xa6\x8a\x43\xd6\xbe\xed\x38\xee\x1c\x0e\x81\xc4\x54\x8b\xd8\x43\x94\x3c\x11\x6f\xf4\xd2\xb1\x80\x31\xba\x94\x2d\xe0\x8a\x2e\x41\xb3\x59\xa2\x4b\xc7\x28\x3f\x74\x6b\x1d\x61\x86\x76\x1d\x73\x0f\xdd\xab\xac\x02\x39\x4d\x3f\x6e\xe9\xcd\x69\xce\xcf\xb4\xd8\xe6\x76\x9f\x16\xc9\x70\x6f\x68\x8a\x1c\x5a\x21\xf0\xb4\x37\x44\x04\x01\xd9\x06\x1c\x43\x7b\x42\xd1\xf0\xad\x5e\xc4\xea\x78\xff\xf1\x9e\xa6\xfb\x1b\x1e\x03\xa6\xfb\xfe\xa0\xe4\x3e\x54\xe2\xd1\x7d\xb0\x2a\xfb\x9d\x09\x3b\x48\x79\x9b\x65\x62\xba\x7d\x05\x94\xa2\x39\xbb\xe8\x51\x39\xdf\xd5\x67\x8b\x02\x8f\x52\x51\x7d\x15\xa9\xbb\xbe\xe2\x22\xab\xd3\x41\x6f\x70\x37\x99\xf8\xea\x2e\x0d\x10\xa2\xf9\x70\xc8\xf6\xd1\x3a\x29\x5f\x2e\xac\xbe\xd0\x5d\xf7\xa4\x8a\xc8\xc3\x7e\x4d\x8a\xf6\xc5\x00\xfb\x68\xd0\x7f\x93\x8f\x4c\x3d\x97\x6e\xe5\xe0\x8b\x16\x69\x9e\xa1\xe5\xec\x85\xa8\xb9\x8c\x6e\x21\x8b\xd2\xcd\xd5\x5e\xba\xd3\x6f\x68\x2a\xa8\x2e\x66\x71\x3d\x7d\x9f\x67\x77\x39\x2d\xb8\x5d\xa0\xa4\xf9\x36\xd9\x45\xa5\x72\xaf\x3f\xd9\x46\x77\xf4\xe2\x21\x4f\xdf\xfd\xe7\x38\x2a\xa3\x0b\x78\xfe\xa9\x78\xbc\xfb\xf0\xbc\x4d\x2f\xd7\xf7\x51\x5e\xd0\xf2\xe3\xff\xf9\x7f\xfc\x57\x33\x58\xfd\xa3\x78\xbc\x33\x9e\xb7\xe9\xae\xf8\x78\x76\x5f\x96\xfb\x8b\x9f\x7e\x7a\x7a\x7a\xb2\x9e\x6c\x2b\xcb\xef\x7e\x22\x08\x21\x56\xf0\x8c\x83\x5c\x3c\xa7\xc9\xee\x37\x1d\x20\x0e\xc3\xf0\x27\xf8\x7a\x66\x80\x81\xee\xe3\x19\x71\xce\x0c\x6e\xe0\xe0\xbf\xd7\x69\x54\x14\x1f\xcf\x8a\x32\x7f\x58\x97\x0f\x39\x35\x93\x35\x9b\xc5\x59\x14\x27\xbb\xbb\xb3\xab\x7f\x80\x3f\xf4\x95\xa5\xff\x6e\xde\x46\x05\x6d\x06\x1c\xbf\xf6\xc1\x55\xbd\x73\xe0\x41\x58\x18\x8f\xf6\x40\x6e\xa2\xdd\xfa\xc5\x2c\xf6\xc9\xce\xb0\x0b\x23\xd9\x6d\x92\x5d\x52\x52\x23\x4d\x76\x34\xca\x2f\xeb\xaa\x88\x7b\x59\x94\x79\xf6\x1b\x35\xe3\xa8\xb8\x8f\xf2\x3c\x7a\xb9\x40\x86\xe3\xc8\x6f\xb3\xcd\xa6\xa0\xe5\x05\xaa\xde\x31\x1c\xeb\x68\x7f\x01\xc3\xd1\x5c\x97\x33\xb3\x3c\xb9\x4b\x76\x17\x2e\xfa\xd1\x70\xd1\x8f\xaf\xff\xf6\x1b\x7d\xd9\xe4\xd1\x96\x16\xc6\x28\x8d\x07\xf4\xe3\x61\x32\x1d\xaf\xc4\xd5\x40\xdb\xb6\x81\xb1\x06\xdc\x74\xd0\xab\x3b\x03\xbd\x89\x31\x7a\xf5\x67\xd5\x80\x5d\xf4\x5a\x66\xd3\x6b\x20\x04\xbd\x4e\xe8\x9e\x22\xd9\xee\x53\x5a\xf7\x4f\x73\x2f\x31\xcf\xca\xa8\xa4\xef\x50\x4c\xef\xce\x59\xc5\x9d\x2f\xb6\xc7\xbf\xbd\xfe\xe3\x27\xce\x77\xff\x88\xe9\xa6\xb8\xfa\x07\x5b\x95\x0c\x4e\xd0\xc7\xb3\x1f\x89\x8d\x10\x3a\x13\xcf\xa6\xe0\x6b\xfb\xcc\xd8\x24\x69\xfa\xf1\x8c\x4d\xc7\x33\x23\x89\x3f\x9e\x45\x67\x46\xfc\xf1\xec\x33\x26\x86\x9b\x7a\x86\xfd\x18\xa4\xa6\x67\xd8\xa6\x67\xda\x5f\x82\xaf\x67\x3f\x5d\xfd\xe3\x27\x8e\xfd\xa1\xa0\x06\x4c\x92\x8b\xfb\x9c\x6e\xa0\x82\x68\x64\x62\x00\xe3\x33\x14\x4b\xca\x56\x93\x01\x48\x28\x1e\xef\xae\xfe\xb3\x62\x60\xaf\xa5\x78\x15\xb2\xa1\xf9\x94\xd3\x3d\x8d\x98\xc4\x11\xbf\xba\x76\x79\x39\x92\x40\x95\x79\xc7\x69\x12\xf2\x4c\xb0\x98\xfc\x09\x17\x2f\x64\x93\xe0\x5d\x9e\xc4\xb5\x21\x10\x1e\x6a\xd3\xd7\x3a\x4b\x1f\xb6\xbb\x02\x72\x36\x19\x10\x6b\x13\x5e\xd7\x89\xc7\xba\xdf\x65\xab\x59\x51\x4d\xf0\x56\xa9\x81\x4f\x51\x4e\xa3\xe2\xe2\x4c\xac\xb6\x22\x28\xdc\x99\x71\x56\xb9\xc7\x89\x17\x75\x8f\xee\xc0\x52\x25\x3b\x35\x77\xba\x40\x76\xa5\x52\xbd\xdb\x0d\x3d\x38\x0f\x31\x6d\xb1\x15\x83\xf3\x83\x82\xa2\xed\x8d\x3e\x58\x9f\xd6\x23\xdc\xb0\xf6\x59\x5e\x4e\x07\xeb\x68\x7f\x1d\x47\x6e\x1d\x0d\x7a\xa3\xd6\x64\x0e\x3b\x74\x78\x00\x6f\x72\x03\x72\x77\xe9\x59\xa0\xfe\xdc\xca\x0b\x36\xe1\x72\xcd\x5f\xd0\x59\x59\x39\xe9\xc7\xed\x09\x71\x81\x79\x27\x30\x6e\x15\xe7\xfc\xda\xf3\x7b\x70\x04\xd0\x19\x92\xf9\x07\xc9\x8e\x0c\x2f\xbe\x43\x7f\x62\xa5\x9f\xc8\x60\x3f\xf1\x12\xda\x7e\xa2\xbb\x58\xd7\x4b\xec\xb5\xd4\x47\x74\x17\x8f\xf7\x50\x15\x6a\x74\x41\x17\xd5\x45\x27\xf7\x51\x5d\xa2\xa7\x93\xaa\xa8\xa6\x7d\xdc\x04\xce\x22\xfb\x68\xa7\xe9\x39\x22\xf5\x9c\x40\xd3\x86\x51\x0f\x25\xaa\x38\x27\xd2\xb1\xc4\x80\x4f\xc9\x69\x4f\x37\xf8\x14\xb8\xd8\xb1\xd7\x75\x60\xfe\x77\x64\xf4\x32\x56\xff\xfc\xd4\xe1\x9a\x39\xc5\x75\x28\x06\x27\x7d\xb7\x40\x5b\x08\x56\x73\x5d\x1e\x04\xd9\xd9\x47\xf9\x40\x77\x71\x35\x72\x53\x27\xb6\x94\xd6\x60\xf9\x1c\x57\x90\xcc\x9c\xee\x4a\xd9\xc1\x99\x2f\x41\x76\x7a\x49\xcc\xf4\x6e\x2f\x69\x3e\xe8\x7a\x49\x5a\xa5\x8d\x38\x95\x16\x62\xdd\x9a\x09\x50\x69\x02\x09\x88\xa5\x26\xb5\x1c\xb1\x8d\x38\x96\xf7\xf5\x58\x5a\x94\x7a\x16\xdf\x96\xa8\x55\xaa\xab\xa4\x9f\xe4\x55\xfa\x98\x14\xc9\x6d\x4a\xa7\xfa\xa4\x89\xb1\xd7\x75\xb2\x36\xc0\x81\x51\x5f\xc9\x9f\xa0\x32\x58\xeb\x6c\xff\x62\xde\x3e\x94\x65\xd6\x72\xdb\x1b\xbd\x7a\xa3\x94\x9d\xcf\x83\xad\xe2\x13\xb9\xaf\x55\x4a\xcb\x77\x6a\xa3\x4e\x76\xd8\x3d\xd9\x1a\x77\x5c\xbf\xf4\xa0\x99\x6f\xd1\x1e\xed\x27\x2d\xec\x61\xe9\x11\xee\xb1\xad\xd6\xa2\x99\x6b\xf9\x9d\xd4\x6a\x0d\x6c\x37\x99\x9e\x24\x01\x26\xa8\xa5\x0a\x32\xe3\x24\x53\xc2\x38\x66\x66\x18\xd3\x27\x88\x00\x6d\x5c\x28\x25\x1f\xd0\x2a\xde\x80\x46\x54\xcd\x99\x04\x8b\x3b\x64\x18\xdb\x31\x53\x62\xb8\x83\x86\x8a\xd4\x06\xb5\xc9\x77\x13\xb9\x0f\xe0\x69\x7b\x64\x08\xe7\x5c\xe5\x67\x00\xd5\xb0\x12\xd4\x5b\xb0\xee\x23\xbc\x64\xe2\x2c\xbd\x79\x37\x84\xeb\x88\x49\x34\x78\x1b\xaf\xbf\xc0\x60\xa0\xc9\x39\x13\x4a\x38\xd6\x37\x70\x6a\x86\x55\xdd\x1d\xbc\xa9\xb8\x20\x67\xea\x49\x2e\xf1\xcd\x22\x6f\x39\xf6\x2e\xc1\x73\x6f\x39\x4c\xa2\x73\x29\xd2\x2e\x79\xc3\x97\x25\x26\x11\x33\x0d\x45\xbb\x6a\x65\x1d\x37\xdd\x39\x0b\xf9\x40\x82\xe8\x79\x28\xe6\x97\xcb\xb3\xb4\x9b\x33\x78\x81\x12\x31\xde\x84\xc5\x48\x4f\x81\x49\x6d\xe6\x6c\x25\x67\xa0\x75\x0b\x71\x1d\x81\x40\x6d\xcb\x88\xca\x35\x40\xf9\xa4\x92\x93\xc1\x65\xaa\x54\xe5\xce\xfe\x83\xa6\x42\xed\x2a\xd6\x46\x71\x1a\xa7\x8b\xd3\xb2\xf8\x34\x62\xff\x14\x46\x9d\x46\xda\xc9\xf9\x6e\x4a\xb5\xdd\x25\x9e\xa7\x7c\xb8\xcd\xa3\x5d\x6c\x7a\x08\x9d\x0b\xef\x81\x9c\x3e\xd2\xa8\x7d\x45\x46\x17\x93\x51\x82\xd6\x25\x75\xea\x7e\xff\x9d\x6e\x0f\x60\x4f\x48\x52\xa6\x6f\x89\xe4\x44\x9d\xc4\x35\x9a\x92\xd5\x7d\x9a\x16\x06\x61\x9c\xa8\x62\x88\x44\x0f\x65\xa6\xaf\xb6\xee\x04\x75\xab\x7c\xa9\xc3\x55\x05\x49\xfd\x7f\xff\xef\xff\xc7\x98\xf1\xff\xd9\x6b\x1d\x3b\xca\x5c\x67\x31\xdd\x26\x79\x9e\xe5\x86\x75\x9d\xc5\xf4\x33\xfc\x36\x39\x99\xc5\x6a\xb0\x7d\x1d\x52\x79\x67\x0e\x05\x69\x13\x31\xe2\x84\x2f\xc7\xd5\xfb\x95\xb5\xc9\x29\x85\xe0\x0a\xfc\x46\x81\x08\x7e\x2d\x57\x2b\xa5\xf4\xbc\x8d\x76\x3b\x9a\x8b\x0b\x06\xbf\x6e\xb2\xfc\xe3\x36\x4a\x76\xe6\x2e\x7a\x14\x9e\x24\x37\xfc\xd6\x41\x67\xe8\x5e\x3b\x18\xbb\x7e\x23\x2a\x0c\xdd\x2a\x4b\x3d\x21\x75\x9e\x41\x09\x49\xdd\x03\x95\x15\x64\x1b\x15\xbf\xcd\xf7\x79\x78\x4c\xe8\xd3\x7f\xc9\x9e\x3f\x9e\x21\x03\x19\xc4\x31\x88\xa3\x9e\xeb\x8e\xfb\x44\x88\xd3\x62\x56\xc8\xcc\x1f\x52\xfa\xf1\x8c\x3e\xd2\x5d\x16\xc7\x67\xc6\x3a\x4d\xf6\xed\x77\xe2\x84\xd8\xb1\xdc\x6b\x9f\xfd\x6d\x10\xcb\xb7\x0d\xdf\xf2\xb0\x81\x0d\x4c\xd6\x98\x3d\x3a\x96\x1d\x1a\x9e\xe1\x5b\xae\x81\x31\xfb\xa7\x08\x2d\xe2\x9b\xb6\x85\xb1\x81\xb1\xe9\x5b\xee\xda\x64\x80\x26\x03\x34\x3d\xf6\xc2\xe4\xef\xbf\x32\xe4\xd8\x5f\x9b\xc4\xf2\x3d\x03\x99\xae\x49\x2c\xe2\x98\xae\xe9\x16\xfc\x87\xe1\xb2\xff\x0d\xf6\x60\xb0\x07\xfe\x83\xbd\xfb\xba\x45\x66\xc0\xf0\x7a\xac\xa0\x6d\x60\xcb\x76\x4c\xdb\xb0\x0b\xf6\xc3\xb0\xf9\x1f\x93\x3f\x98\xfc\x87\xc9\x7e\xd8\x5f\xab\x2e\x13\x27\xe5\xd2\x31\xf3\xdb\xa0\xfc\x05\x07\xa5\x7b\xb9\x4e\xce\xf6\x25\xe4\x84\x72\xdf\x46\xda\xdc\xb1\xb9\x57\x2d\x21\x10\xc3\x2d\x89\xe9\xae\x64\xd3\xbd\x5a\x7f\x64\x88\xda\x50\xdb\x02\x12\x79\x03\xe1\xc8\xf4\x04\x67\x87\x97\x8d\xf3\x55\x15\x15\x67\x94\xce\x26\xd0\xf5\xff\x9a\xc5\xd4\xf8\x5f\xaa\xcf\xc6\xd9\xeb\xa4\x16\xd4\xc5\xff\x83\x43\x28\x18\x8e\xca\xa9\x58\xe7\xe0\x13\xab\xcd\x30\xb6\x53\xe6\xcd\xef\x3a\xf4\x35\x89\xc7\x39\x42\xa1\x88\x6d\x69\x19\xc1\x2d\x35\x50\xc2\x44\xbe\xb9\xbc\x52\x07\x62\xba\x89\x1e\xd2\x72\x4a\x91\xfe\x68\xb4\x22\x1a\xa6\xf2\x3c\x92\x03\x52\x09\xce\xad\xa4\xd9\x53\x32\xcb\xaa\x49\xc9\xda\xd6\xe1\x09\xf9\xf6\x72\x4d\xb2\xbd\xbc\x7d\x5d\x78\x59\x9a\xd2\x56\x66\xd2\xe6\x16\xf8\x14\xb2\x84\x5d\x47\x43\xdc\x50\xd0\xdf\xd3\x5c\xd9\x1d\xcb\x88\xb9\xc9\xd2\x98\xe6\xb5\x90\x50\x93\x61\xaa\x1f\x7b\x73\x37\x5f\xaa\x87\x58\x97\xca\x2e\x88\xf1\x68\x7d\x41\xb8\x8e\x74\xee\x10\xb8\x20\xdc\x3d\x8e\xe2\x5c\x98\x5f\x69\x0e\x4a\x07\x5b\x22\x4d\x63\xb9\x0d\xd2\xf4\x55\x54\xb2\x19\xf9\x94\x78\xc6\x63\xd3\xe7\x19\xf0\xee\x80\xc2\xba\xbf\xca\x98\xbd\x2b\x06\xba\xa8\x91\xe1\xbc\x68\x55\x44\x77\xa9\xed\x84\x27\x48\x55\x75\xb2\xab\x8e\xa8\x59\x6e\xdb\xd0\x69\x84\xad\x8b\x00\xdf\x69\x8f\x11\xc7\x0d\xe2\xf8\x94\x19\x74\x95\x1b\x9f\xad\xfb\x9e\xf0\xa8\x04\xcc\x45\x0a\x49\x57\x7c\x83\x27\x65\xe4\xaf\xe4\x4f\x43\x6b\x2f\x4c\xb3\x86\xac\xce\x54\x66\xb6\x6c\xba\x6d\x11\xab\x73\x15\x6f\xba\xb7\xbe\x11\x4f\x5a\x19\xdd\xf8\xb3\x12\xbd\x44\x3f\x53\x3c\x97\xcf\x94\x49\xb5\xe0\x40\xad\x85\x3f\xcb\xb5\x04\xfb\xe7\xd7\x1e\xef\x76\xa6\xe0\xf7\xe5\x1f\xbb\x54\x97\x10\x4d\xc2\x52\xd9\x41\x5d\xca\xa6\xcf\xfd\xaa\x5d\xba\xd5\x55\xaa\x4d\xc4\xb0\xef\xa4\xee\x87\x8d\x46\x1f\x64\x4f\x7a\xb6\xcb\x56\x06\xec\x6e\xf1\x83\x9a\x4e\x49\xc8\x50\xcc\x03\x5d\x5e\xaa\x19\xe5\xb5\x99\x53\x35\x19\x9a\x16\x05\x8b\xaa\x16\x13\xc6\x12\x06\x71\xd8\x5f\xec\x17\x86\xc8\x6c\xe2\xfe\xdf\x00\xfd\xac\x87\xcd\xd6\x9d\x40\x71\x37\x6c\x62\xa9\x4d\xb4\x76\x10\x79\xad\x2f\x0c\x4d\x2c\x56\x5d\x22\xd2\x70\x66\x7b\x62\xb5\xd2\x02\x73\xff\x53\x1d\x13\x0a\x17\x8e\xea\x86\x85\x0e\x46\x38\xc3\x35\x79\xbe\xb5\x98\x04\x54\x2b\x1d\x71\xa8\xe7\xc3\x49\xf5\xc6\x65\x0b\x1b\xd2\xa1\x62\x6b\xd2\x50\xf0\x88\x0b\xb6\x75\x01\xfd\x5a\x7d\x92\xf2\x88\x8a\x14\x23\xc4\xdb\x3f\x9f\x2f\xe3\xa8\x71\xd1\xd9\xc9\x56\x25\x3c\xb5\x5a\xe9\xaa\xaa\xb7\xed\x7c\x55\xdc\xc1\xf5\x96\x96\x4f\x94\xee\x7a\x7a\x54\x16\x4b\x3c\x9c\xbd\x16\xec\xaa\x95\x6d\xf3\x52\xda\x82\xd4\x7a\x6f\x51\x46\x65\xb2\xee\x08\x7c\xad\x18\xeb\x66\xf9\xea\x1b\xf2\x5a\xc5\x10\xc3\xfe\x8e\x9c\x0b\xb6\x72\x7b\xb8\xaa\xc5\x27\x5d\x9e\xb0\xec\x1e\x0e\x63\xb2\x4a\xce\xfa\x62\x38\x30\xc7\x89\xf8\x4b\x49\xef\xb7\xcf\xa9\xc9\x17\xb8\x49\x2d\xd9\xe7\xd4\x58\x67\x31\x3d\x3c\x65\x79\xcc\xc7\xf8\x36\xa7\xd1\x6f\x26\x7b\xd6\x96\x50\x1c\x12\xfa\x36\x17\x4c\x68\xf3\x8b\x43\x74\x3b\x6b\x5d\x6a\xda\x09\x8a\x69\xc8\xfe\x6a\x82\x5d\x0c\xad\x63\xed\x85\x6a\xf6\xb8\xf5\x8a\x03\xe1\x3f\xad\x8c\xde\x79\xdb\x0d\xa9\x7f\x5d\x6c\xed\x8f\x09\x78\x95\xab\x0a\x1c\x5b\x04\xe5\xc3\xd6\x96\x15\xaf\x6d\x92\xed\x46\x4d\x52\x57\x95\xa1\x2c\x3c\x10\x74\xa7\x63\x26\xe4\x56\xdc\x6a\x62\x47\xfb\x3d\x8d\xf2\x68\xb7\x56\xf3\x17\x48\xbf\x2b\xb5\xa3\x49\x57\xa3\x33\x3c\x1e\x14\x4d\xbf\xa7\xd6\xae\xcd\x92\x1b\x46\x25\x2d\x70\xff\x50\xf2\xb4\x84\xf7\xb0\xa7\x68\x5f\x7d\x9b\x89\x76\x9b\x7d\x3d\x25\xb6\xe2\xd4\x04\xce\x40\xc4\x77\xf8\xaa\x08\xac\xb2\xfe\xc2\x09\x92\x7e\x9c\x55\x8d\x44\xec\xc3\x34\x8b\x88\xe5\xd3\xed\xf9\xa5\x14\xca\xa6\x56\x37\x82\x3a\xcd\x88\x76\xdc\x05\xa7\xb3\xf2\x4a\xf1\x4d\x9a\x45\xe5\x05\xf0\x8e\x4e\x3e\xe9\x70\xb5\x66\x0f\x53\x6c\x6a\x94\xec\xb7\xfe\xbe\xa2\x8b\x7e\xec\x49\x52\x16\xec\x9f\x3b\xae\x43\x5c\xf1\x54\xbe\xbc\x5a\xd1\x7e\x6f\x3e\x26\xf4\xa9\xba\x28\x09\x99\xa6\xa5\x40\x3d\x87\x59\x99\xf2\x97\x2d\xc5\x27\x5c\x68\xeb\xa1\x73\x78\x1e\x9f\x79\x51\x89\x5a\x8d\x85\x6d\x70\x6f\xe4\x2e\x6d\xd7\x19\xc2\xda\x1f\xc5\x49\xd6\x51\xf1\xe4\x7e\x1d\x04\x3c\xf4\x88\x1f\xfd\x70\xf5\x06\x7a\x9a\x1f\x29\x4e\x9f\x42\x57\x99\x9c\x7a\x86\xd1\xbd\x85\x83\x9a\x9a\x02\xf9\xf7\xd5\xfb\xfe\x9c\xd1\xfa\x26\xf2\x0c\xd0\xdd\x0e\x1d\xaf\xb7\xb7\xa8\x4a\x8e\x46\x56\x8c\x4d\x13\xc3\x7a\x8c\xd2\x07\x6a\x56\x51\x26\x94\xfc\x7a\xf2\x48\xf7\x82\xb5\xaa\x1d\xec\x81\x16\x16\xe5\x58\xed\xc3\xc4\xaa\x7b\x0b\xb5\x09\x61\x8b\xa7\x9e\x0a\x8e\xbc\x50\x6b\x11\x2f\x97\x05\x02\x56\x77\xf8\xb0\x91\x1d\xac\xba\x6b\x93\xd0\x12\xd3\x05\xd3\x04\xf5\xd6\x56\xb4\x49\x68\x1a\x17\xb4\x54\xd0\x56\x2f\xbb\x1b\x17\xd4\x6c\x5c\x90\xb2\x71\x41\xea\xc6\x05\x4e\x6f\xe7\x89\x23\xb9\xae\x2c\x4f\x98\xb4\xbb\xcf\xf2\xe4\x6b\xb6\x2b\xa3\x54\x91\x9b\x71\x92\xf3\xc3\x8f\x8b\x9c\x3e\xd2\xbc\xa0\x8d\xf0\x94\x3e\x65\x4f\x66\xf5\x79\xe0\x93\x24\x42\x5b\xd1\xca\xd4\xb5\x63\x5e\xc0\xb7\xba\x03\x25\x83\x0f\xe4\x74\x5a\xda\x3b\x35\x46\xd9\xec\xdc\x1d\xf4\x05\xe3\x25\xaf\xa4\xf3\xe9\xba\xea\xf5\xfc\x02\xe6\xee\xae\x27\x21\x1e\x58\x4f\x26\x35\x52\xcb\xa9\x33\xbb\x65\x7c\xff\xdd\x9d\xa8\x9a\x3d\x4f\x88\xc2\xde\xc6\x28\x7a\xc5\xe8\x06\xfc\x9b\xcc\x4e\xa1\x9f\xc9\x4f\x1d\x16\x3f\xd5\x70\xa3\xbe\xf5\xba\x8e\x45\x5b\xd0\x94\xae\xd5\x96\xb4\xbe\x55\x11\x16\x6d\x57\x56\x02\xeb\xdc\xdc\x55\x1e\xd4\x9e\x75\x59\xac\xfa\x5b\xba\x7b\x48\x4a\xba\xbd\xd1\x68\x04\xf5\xb7\x43\x47\x0d\x6b\x6f\xd8\x5a\xfa\x58\xe7\x73\x5b\x31\xeb\x6e\xf8\xb4\x34\xca\xea\xaf\x42\xa0\xa2\x17\x2b\xcc\x17\xee\x9f\x9b\xf8\x06\x8e\xaa\xf9\x0e\x2c\x20\x43\x21\x80\xeb\x55\x91\xc7\x20\xa9\x7c\xae\x75\x23\x33\xb9\x78\x2b\x1b\x48\x9f\xe1\xf8\xd5\x2a\xb3\x6d\x76\x97\x47\xfb\xfb\x17\xc3\x6a\xa0\x0e\x9b\x24\x4d\x1b\xad\x40\x06\x8a\x9e\x93\x82\x7f\x86\xdd\x2a\xbf\xdf\x5f\xef\x71\x3a\x51\x0a\x1c\xc3\x69\x55\x02\xcb\x7d\x2f\x06\x15\x18\x74\xc3\x43\x05\xc1\xf5\xc0\x4b\x4e\x5b\x48\x09\x76\x43\x15\x3c\x4d\x76\xb4\x80\x28\x14\x75\x99\x61\x30\x71\xc2\xa7\x6f\x84\x58\x29\xe0\x64\x49\x2a\x5d\x26\xeb\xdf\xd4\x3a\x74\x94\x03\x14\xdb\x6a\xc9\x21\x4e\x02\xdf\xcd\xe9\x96\xe7\x66\x89\x76\xeb\xfb\x2c\x17\x27\xf1\x6a\x74\x15\x6b\x93\x46\xc5\xbd\xb9\xa5\x45\x11\xdd\xd1\x65\xaa\x4d\xff\x84\xf5\x4e\x92\x0c\xbf\xba\x12\x62\x60\xf7\xc7\x16\xc1\xc6\xbe\x63\xbc\xd7\xd8\x4d\x60\x47\xe8\xe8\x37\x98\x95\x1a\x50\x19\xa7\x5e\x25\x57\xaf\x83\x94\x90\x19\xbb\xad\x73\x1b\x1b\xa1\x66\xf7\xaa\x5c\x2d\xaf\x6c\xdb\x48\xc5\x66\x16\xeb\x3c\x4b\x95\x6b\x79\xdc\x01\x4b\x96\x1d\x12\x78\x9a\xec\xca\x81\x94\xd2\x9b\x70\x13\x6e\x22\x8d\xf9\x28\x72\xd8\x9f\x56\x37\xa0\x6a\xdc\x09\x66\x7f\xf8\xb1\xcd\x26\xda\x26\xe9\xcb\xc5\x36\xdb\x65\xb0\x17\x92\xbc\x34\xb0\x2d\x25\xa7\xf6\x45\xb6\xd8\x10\xfc\x58\xb7\x66\x61\xde\x47\xc5\x7d\x22\xf7\x54\x63\x75\xd3\x08\x00\x84\xe4\x1b\x3e\xd5\xa1\xc1\x26\x26\x31\x96\xde\xcb\x86\x29\x38\xfc\xab\x2c\x03\x96\x23\xd7\xaa\xf8\xe2\xdd\x3d\x40\xee\xef\x4a\x04\xf9\x41\x40\x42\xa4\xa1\x80\x44\x64\x63\x7b\x72\x15\xbd\x28\xf9\x56\x51\x3e\xe6\xe0\x47\x3a\x46\x79\x9f\xec\x8c\x1f\x36\xc1\x26\xd8\xa0\xde\xd2\x8c\xf0\xdd\xc3\xf6\x56\xf2\x62\x88\x83\x28\x08\x7a\xfa\xcd\x84\x28\xe0\x34\x36\xe2\xe4\x51\x61\x15\x58\x16\x69\x2c\x8d\x3b\x1b\x3a\x87\x04\xf6\x60\xd5\xc2\x22\xc6\x8b\x43\xc2\xd9\x01\xe0\x2b\xbe\xf4\xcc\x2d\xa1\x2d\x36\x9f\xd0\x59\x34\xce\x27\xef\x08\xca\xfe\x02\x5d\xd8\x4d\xaf\x8e\xcf\x15\xaa\xc1\x03\x6a\xbd\x35\xd7\xd9\x76\x4b\x77\x65\xc5\x6c\x71\x4c\x6d\xea\x6b\x21\x8b\x32\x4f\x76\x77\xab\xfe\x4f\x26\xa9\x57\xf2\x38\xbe\x8d\x6c\x2d\x16\x95\xb7\xe3\xd8\xa1\x6e\xa0\x05\x7c\x8c\xf2\x24\xba\x4d\xa9\xb6\xc2\xea\x63\x53\x65\x48\x03\x67\xed\x6a\x31\xc5\x74\x33\x81\xb0\x6c\x4f\xf3\xa8\xcc\x6a\xd2\xa8\xcd\xfe\x68\x41\x7f\xa3\x2f\x4f\x59\x1e\x1f\xda\x87\x9e\x5d\xc8\xa8\xcc\xb6\x13\xda\xba\xa5\x65\xa4\x6d\x67\x19\xdd\x4d\x20\x3d\x2a\xcb\x3c\xb9\x7d\x28\xf5\x7d\xf5\x3f\x1f\xa2\x34\xd9\x24\x4d\xa7\x87\x9b\x75\xe4\x7a\x5a\x4c\xfb\x9c\x75\x43\xf9\x32\xa1\x57\x6f\x1f\x92\xb4\x4c\x76\xc3\xc3\x63\x0f\xd4\x29\x33\x36\xcf\x64\xc9\xfd\x3b\x1a\xc5\x4e\x9e\x78\x18\x61\x82\xfb\x27\xde\x36\x2a\xd7\xf7\xc9\xee\xee\x36\x8f\xd6\xbf\xd1\xf2\xd0\x9b\x52\xee\xb2\xb1\xdd\xc8\xcb\xa6\xd6\x67\xbb\xd5\xb2\xf6\x1c\x99\x52\x46\x9e\x38\xf3\xe0\x1b\xd6\xa6\x11\xfb\x33\xbd\x3e\x75\x8a\x45\x76\xb4\xbe\x5d\x4f\x2f\xdd\x66\x01\x30\x72\x4d\x2d\xdc\x9d\x97\xde\xda\xbf\x0d\xe0\x4a\x65\x4c\x4d\x1a\x27\x6c\x86\xa9\x47\x14\x95\x02\xc2\xb4\xa1\xda\x31\x52\x5c\x0a\xd0\x1c\x0b\x48\x88\x0c\x8b\xb2\x96\x9a\xfb\xec\xa9\xde\x09\x9a\x65\x9e\xdc\xdd\xd5\xa7\xfa\x04\x94\x2c\xf9\xa4\xa1\x52\x2d\x71\xdb\xd7\x4c\xd0\xa1\x5b\xfd\x11\x42\x12\xdf\x5c\xca\x4b\x7b\xc7\xd2\x5f\xe9\x4b\x0a\xa5\x95\xfd\xb0\xab\x3e\xd6\x01\xee\x25\x05\xa8\x72\xec\x71\xb5\x47\x76\x9c\x18\xe1\x56\x74\x76\xa9\xa6\x4e\x90\x2b\xbd\xda\xb7\xaf\x0f\x70\x57\x36\xa6\x2a\x80\xdb\xe8\x3a\xdb\x6d\x92\x9c\x47\xcf\xb3\xc4\x43\xb2\xbb\xd3\xe9\x8a\x9b\xcd\xab\xb6\x98\xb1\x57\x4f\xa5\xba\xd6\x8f\x6e\x32\xf2\x76\x6c\x7f\x69\x1e\x6a\xeb\x38\xc8\xc3\x77\xf4\xd1\x49\x27\x4c\x0c\xec\x22\x34\x21\x62\xd8\x76\xbf\xa8\x62\xc4\x54\x8e\x8c\x57\xa3\x9d\xd7\x77\x08\x8e\xfa\x7d\x17\x87\x5a\x2d\xe5\xd0\x37\xc5\x11\x7a\x6b\xc8\xfb\xc6\x45\xed\x65\x4c\xb7\xaf\xaa\x07\x27\x77\x6c\x3c\xc8\x3e\x5e\x0e\x53\xd0\x61\x6b\xce\x8f\x5d\x38\x64\xfb\xf0\x43\x1a\x8e\x57\x2b\x7a\x28\xef\x4d\x38\x4e\xd8\xf3\xb8\x62\x94\x09\x87\x73\x2e\x80\x9b\x70\x7c\x0f\xfb\x3d\xcd\xd7\x51\x41\xc5\x86\x52\xee\x6e\xcd\x24\xef\xc1\xca\xc5\xb0\x96\x3d\xdb\x8e\x7f\x5c\xb6\x48\x19\x32\x24\xa4\x42\x36\xd8\x92\xe7\x1c\x88\x1f\x83\xa8\x70\x60\x0f\x69\xbb\x65\xb8\x74\xab\xd8\x6a\x6a\x60\x21\x8c\x6e\xa3\x22\x59\x9b\x71\x9e\xed\xe3\xec\x69\x57\x89\xa3\x95\x04\x28\xac\x1e\xb2\x9f\x81\x84\xa5\x0e\x6c\x59\xef\x5a\xf9\x7d\xa6\x9e\x2e\x69\xfc\x45\x07\xc2\xaa\xc8\xc2\xa5\xcb\x9f\xdc\x0a\x57\x9f\x94\x56\x02\xd2\xc4\xaf\x3f\xa4\x19\xe7\x3b\x08\x24\x1b\x27\x8f\xc6\x26\xcb\x4a\x9a\x57\x97\xc6\x3b\x81\x51\x31\x91\x6b\xa8\xb7\xf3\x3c\xd6\xec\xfe\x99\x57\x65\xda\xfb\xe7\x5e\xd4\x87\x5a\x0c\xcb\x79\xd2\x60\x71\xd0\x6c\x8f\x9b\xad\x3d\xf1\x74\xc2\x52\xba\xbe\xde\xad\xf1\x4a\xfa\xff\xd0\xce\xbe\xa6\x89\x6f\xc3\x43\xd0\xec\xb2\x32\x59\x53\x2b\x4a\xd3\xec\x49\x93\x56\x4b\x01\x8a\xe9\xee\x65\x0c\xa6\x89\x9a\x53\xac\xaa\x77\x30\xb4\xf5\x53\xb2\xdb\x64\xf5\x43\xe7\x6e\x5f\xfd\xa5\x78\x58\xaf\x69\xd1\x20\x11\xa7\x59\x15\x1f\x61\xba\x35\xd0\xab\x95\x25\xf1\x5a\x2c\x95\xc6\xaf\x10\x55\xf2\x3f\x7d\x34\xe1\xe5\x3e\xcf\x1e\x93\x98\xe6\x37\x6d\x17\x15\xd2\x98\x29\xe0\xf7\xb0\xf1\x18\x29\x47\x05\x48\x67\x13\x07\xbb\x86\x4c\xc8\xc0\x3a\xbe\x52\x00\xd3\x44\x23\xd6\xa6\xa2\x52\x66\xdc\xb0\xd3\xf6\x6a\xe8\xa2\x9d\xe6\x63\xb1\x4f\x93\xb2\xec\x2d\xbc\x8f\xca\xfb\xda\x70\x0c\x3c\x09\x13\xc4\x8c\x1f\x84\x7a\x6a\xe1\xe2\xb2\xef\xbd\xa6\x5c\x99\x6c\x21\x6a\xec\xc3\x8e\x1f\x4b\x89\x58\xb6\xe3\x10\xed\x2c\xeb\x53\x09\xad\x94\xc2\x0b\x6e\x46\xbc\x1c\xf8\xd4\x35\x96\x0a\xcd\x40\xb5\x54\x5e\x3e\xd2\x75\x99\xe5\x26\xdd\x6c\xe8\x1a\x96\x39\xb3\x58\x47\x29\x44\x7b\x05\xc0\x57\x8b\x6f\x0a\x3a\x34\xfe\x9a\xc4\xef\x3f\x9e\x5d\x9c\xdd\xf4\xf4\x73\x6d\xf1\x76\x97\x8c\xb2\xe2\xba\x1f\xcd\xe5\x03\xe9\x36\xa6\xae\xec\x08\x9b\xa8\xdf\xdb\x81\xac\xe5\x55\x47\xd7\xf0\x2a\xcf\xbf\xf6\x9b\x6a\x3b\xae\x6c\xb7\xbd\xcd\xd7\xa0\xe1\x6d\xd3\x7d\xa8\xa8\x2e\xba\xce\xd6\x03\xce\x69\x7d\xee\xe1\x82\x37\x4d\xfa\x48\x77\x65\xd1\x7b\xed\x75\xe2\x38\x16\x57\xe2\x68\x83\x5f\x7d\x5d\x30\x9a\x63\x18\xa6\x8e\xa9\x82\xe7\xd0\x6a\x65\x94\xa6\x43\xa3\x71\xd5\x5c\xe9\x1d\x26\x52\x0b\xd1\xa6\xe0\xea\x7d\xbf\x76\x56\xaf\xbe\xf2\x9a\xce\x76\x50\xec\xf1\x89\x2f\x02\x0e\x42\x13\x88\x55\xfd\x3c\x26\xf4\x6d\x3f\xac\xb6\x0b\x2b\xe5\x43\x08\x75\x88\xc0\x5e\x1b\x7c\xd9\x43\x2d\x07\xbc\xa9\xd4\x1a\x74\x3b\x89\x52\x3d\x9c\x96\x4a\x83\x6e\xdb\x9d\x0d\xb2\x51\xf6\xfe\xec\xde\x80\x18\xf6\x07\xfd\x86\x4b\xd7\xa0\xec\x17\x1d\x6a\xb4\xa7\xae\x21\x7b\xc5\x68\x97\x86\x69\x25\x7b\xee\xa3\xf6\x2f\x00\xa0\x07\x33\xf1\x76\x2e\xe4\x5b\x1d\xc2\x49\xef\xe9\xda\x72\xc6\xab\xee\x1f\x0d\x49\xf1\x2a\x74\x26\x53\xb8\x8b\xfb\x2c\x2f\xcf\x8d\x38\x3e\xb4\xcd\x14\x1a\x77\x30\x18\xf4\x1a\x8e\xa6\x69\xb2\x2f\x92\x62\xb8\x32\x0b\xac\x58\x22\xe3\x6b\x51\x1d\xca\x76\xef\xa3\xfe\x7c\x36\x09\xcf\xff\x7c\xa0\xf9\xcb\x3e\xca\xa3\x6d\x85\xeb\xaa\x8b\xeb\x7f\xd7\xe0\x5a\x27\xf9\x3a\xad\x8e\x0c\xeb\x05\x5b\x7b\xb2\x09\xd6\xa1\x0e\x2d\xd5\xa1\x53\xbd\x13\xd8\x24\xcf\x34\xae\x77\x16\xdd\x85\xb9\xeb\x69\xff\xe7\xfb\x48\x76\xdb\x55\x3c\x6a\xb6\xf7\xa7\x5f\x45\x6b\xa7\x77\xf0\xeb\xff\xf1\xb2\xda\xad\x0e\x69\xad\x93\xd6\xb9\xa9\x4b\x59\x7b\xa9\xea\x3b\x9d\xc5\x8a\x4b\x01\x1c\x3e\xf7\x13\x28\x1c\x29\x44\x8a\xce\x3e\x0a\xc7\xa0\x6a\x12\x15\xc0\x41\x1a\x8f\x66\x24\xe1\x52\xf6\x48\x73\xb8\xd3\xd4\xe3\x50\x26\x44\xb7\xc6\x9f\x8c\x87\x82\x6d\xbb\x92\x89\xb7\x2a\x63\xc6\x49\x21\x4c\xf9\x3d\xbc\x19\xf1\x54\x13\x72\x42\xd1\xd1\xfb\xa7\xe9\xb0\xa2\xaa\xfd\xae\x6a\xa2\x75\x72\x4e\xa6\x18\xd4\x66\xa9\x41\x21\x54\xb1\x10\x84\xa1\x5f\xf1\xa4\x41\x66\x51\x46\x90\x79\x83\x6f\x3c\xdf\x7f\x34\xd3\x64\xf7\xdb\xcd\x95\x2e\x75\x8c\x3b\xc8\x4d\x27\x58\xe9\x5a\xf7\xc8\x90\xbe\xbe\xf6\x4a\xc0\x17\x01\xd6\x21\x8b\x32\x0a\xcf\xa8\xa1\xec\x5c\x21\x35\xce\xb4\x46\xae\x89\xc3\xa0\x58\x51\x5b\x57\x2c\x27\xc5\x95\xf9\x06\x2d\x56\x23\xd6\x68\x6f\x6f\xf1\x9b\x0b\x63\xfb\xb4\x56\x02\xe1\xf1\x29\xb1\xcc\x51\x65\xfc\x36\x9c\xd4\xb1\x13\x38\xd8\x88\x65\x97\x1b\xe5\xe4\x01\xde\x04\xe8\x47\x23\x68\x7c\xef\x6a\x8f\xdc\xf6\xd1\x85\x58\xa2\x6d\xc9\x50\xd3\xc3\xcf\x4a\xed\xd9\x37\xeb\x06\x88\x94\x05\x2a\x2d\xdc\x8f\x9a\xb4\x8b\x33\xb2\x26\x63\x85\xe6\x26\xb5\xd6\xbe\xdb\x7f\xbd\xba\x9d\x90\xc9\xe4\xf7\xe9\x8e\x91\x18\x1a\x3b\xf5\x00\xba\xc6\x57\x6f\x18\xed\xc0\x85\x7f\x49\x65\x15\x5b\x6a\xee\x1f\xc3\xf7\x68\xa4\xd9\x53\x0b\x95\xac\x6b\xda\x6d\x56\x41\xde\x2d\xa6\x2b\xbc\x99\xa4\x9b\x30\x20\x04\xdc\x9a\x8b\xb0\xe4\x95\x84\x47\xb8\x28\xd9\xa5\xb4\x1c\x52\x66\x04\xc4\x41\x87\x5a\x32\x35\x63\x4d\x25\x6d\x14\xda\x0b\x3c\x70\x41\x09\xfe\x32\x6d\xf2\xa3\xf1\x93\x41\xce\x8d\x0f\x06\xfe\xd1\x30\x0d\x7b\xff\x7c\x3e\x4e\xfb\x81\xf7\x0b\xa0\x60\x18\x4c\x5e\xd8\x87\xc2\xd2\xa2\xa5\xac\x60\x60\x30\xfe\x4b\xab\x15\x0a\xed\xf5\x46\x42\x1b\x77\xa4\x36\xa1\x2b\x65\x7a\x82\x03\x75\x6c\xf0\x56\x40\xb7\x97\x6a\xb8\x15\x0d\x1f\xdf\x6e\x6e\x37\x6b\x05\xff\xd5\xfb\xea\x10\xc6\x57\xcc\xf8\xfc\xac\x43\xd1\x16\xe0\xfe\x8d\x02\x20\x6f\x0e\xc7\xda\xa9\x2e\xf3\x70\xf4\xa0\x29\xa3\x04\xcf\x87\x36\x75\x4f\x7d\x54\xfa\x1f\x96\xca\xce\x53\xde\xe2\x52\xa8\x76\xe9\x56\x39\x33\xb1\x3c\xba\xbd\xd4\x9d\x0a\x5d\xea\x6e\xf1\xb4\x5b\x77\x95\x26\x57\xef\x57\x9a\x97\x30\x1e\x57\xa7\x0e\x54\x7f\x82\x23\xda\xf6\x0c\x95\x92\xed\x35\x99\xf2\xd9\x96\x0a\xc1\x65\xc5\xee\x41\xe4\x38\x33\x69\xee\xbd\x69\xca\xd4\x12\xbd\x59\xda\x09\x0c\x46\xcf\xc1\x98\x5d\x7b\x28\x30\x99\xa6\x3b\x2b\xe9\x8e\x42\xb3\xba\x0c\x8f\x50\xdb\x31\xbc\x3e\x89\x53\x57\x4b\xc6\x3b\x92\xef\x6f\x48\xb7\xaf\xba\xf0\x52\xb1\xdc\xa7\xad\x38\x1e\x95\xe5\x70\xb4\x20\x8c\x4d\x1d\x48\x66\x02\x30\xfb\x7f\x1a\x20\x97\x15\x7a\xf7\x85\x39\x64\x29\x9e\x47\xc2\x60\xdd\xe7\x72\x51\x2f\x68\x5a\xef\xe0\x4a\xee\xc0\x61\x25\xf7\x80\x68\x2e\xf3\x28\xd7\x6b\x11\x5b\x72\x46\xe2\x86\x75\x35\x90\xe9\xdd\xa2\xef\xc1\xab\x2a\x2c\x98\x6a\x8e\x56\x42\x26\x28\x77\x69\x83\x3a\x50\xd8\x94\x4a\xb9\xa5\x61\xa0\x66\x6e\x62\xe8\x3a\xa9\xf4\xd0\xc9\xd9\x95\xf4\xd0\xc0\x53\xdc\xf0\x28\x4f\xac\x25\xe7\x46\x19\x1f\x14\x07\xeb\x5e\x2b\x13\xa0\x33\xd7\x34\x4d\x27\x63\x6e\x27\xd6\x9f\xc1\xa1\x62\x6e\xe3\x19\xed\xb8\x52\x2f\x25\xb6\x42\x5d\x8c\xcf\xd6\x76\xc8\x39\xc9\x25\x60\x12\xe5\x87\xee\x49\x8e\xb8\x81\xd0\x3d\xf4\xd1\x06\x21\x83\x00\x15\xee\xfe\xd9\x30\xfd\x56\x6c\x31\x14\x9c\xaf\x90\x81\xb1\xb8\x45\x6e\x30\x81\xa8\x06\x1f\x6b\x45\x29\x3b\x0e\x55\x77\xe3\xaf\xe1\x0b\xbe\x67\x80\xb9\x2a\x34\x67\xed\xbc\xfd\xc0\xe7\xad\xaa\x4a\x73\x49\xd0\x39\xc5\xba\x94\xed\x7a\x83\xe1\x9c\x75\x91\x86\x87\xd3\xe6\x4c\x13\x6e\x2d\x7b\x42\x5b\x90\xad\x53\x1a\xe5\x17\xb7\x59\x79\x3f\x8d\x97\xc1\x6d\x42\x23\x38\xe4\xc0\x5f\x5e\xcd\xe2\x71\xb6\x35\x73\xba\x7e\x59\xa7\x8a\x97\x54\x4b\x92\x29\x50\x46\x99\x2f\x33\x3a\xe8\x71\x5d\xbd\x1f\xb9\xce\x87\x94\xeb\x7c\xe2\xa9\x65\xeb\x7f\x6d\x8f\x8d\xb8\x95\x61\x3e\x26\x79\xf9\x10\xa5\x6c\xf8\xb4\xd5\xdf\x66\xf1\xcb\xe0\xd5\x8d\xfe\x52\x90\xd0\x25\x54\x42\x15\x74\x66\xaf\x5a\x2e\x8e\x5b\x17\x07\xc5\xa9\x44\xfb\x45\x4f\xe1\xab\xf7\x9d\x00\x45\x3a\xc0\x75\xb4\x67\x3d\xf0\x7b\x43\xa5\xeb\x2b\x57\x5f\xeb\xd0\x79\xdd\x18\x7c\x4a\x78\xc4\x89\x70\xbf\x57\x9b\x86\x66\x02\xb2\x1d\x5f\x7f\x35\xf6\xc4\x6a\xec\xf1\x6a\xec\x81\x6a\x9c\x89\xd5\x38\xe3\xd5\x38\x03\xd5\xb8\x13\xab\x71\xc7\xab\x71\xcf\xf5\x21\x47\xa7\x8c\xd3\xbc\x32\x9a\xea\x4d\xc3\x93\x94\x9d\x11\x6c\xba\x21\x9c\x57\x46\xa5\xc0\x05\x02\xec\xe9\x04\xe8\x06\x77\x5e\x19\x95\x00\xdb\x6e\xab\x7b\x23\xc8\x74\xc3\x3e\xaf\x8c\x4a\x00\x71\xc1\xcc\xe1\x32\x02\xfa\xaf\xf0\x82\x9f\x59\x42\x0b\x8b\xc6\x49\x79\x76\x63\x68\x5c\x47\x79\xc5\x59\xf9\x4e\xbe\x62\x3d\x1d\xe3\x12\x1c\x8c\x88\x13\x92\xa4\xa0\x6b\x82\x7d\x5a\x4d\x06\x5a\x1d\xc2\xca\x9a\x05\x36\xd6\x25\xed\x95\xb2\x10\x1e\xd9\xd4\xf9\x98\xfa\x5b\x29\x65\x3c\xd4\x6c\x4f\x1c\xc6\xb0\xb2\xe1\x65\x78\x19\xac\xd4\x6e\x17\x69\xf5\xab\x4e\x71\x91\xb7\x79\x2a\xa0\xa4\x20\x93\x73\x83\x2b\x2a\x1b\x4a\x63\xb6\x6f\x83\x2b\x9d\xb0\x6a\xc1\xfa\x0d\x8b\x27\xc4\x0b\x9b\x80\x69\xdf\x04\xfa\x50\x31\x80\xfa\xd7\xb9\x6b\x28\x96\x47\x39\x64\x66\xa3\xa6\x89\xb7\xe8\xb5\x75\x57\x5d\x58\xb4\x94\x23\x3c\x1d\xc4\xd5\xfb\xc6\x48\x67\xa8\x81\x8a\xa4\xb2\xf2\xbd\xf3\x1e\xd3\x52\xef\xd5\xf4\xee\xf7\x41\x73\x93\x1c\x29\xa9\x8e\xca\xd0\xb6\xc7\xb5\x5a\xa2\xb7\x42\xc8\xb6\x8d\x56\x01\x11\x8a\x45\x04\xab\x6c\x97\x6f\x05\xa7\xd4\x97\xad\xc2\xb8\xe8\xcb\x6e\xa2\x60\x63\xfb\x7d\x65\xab\xc0\x95\x3d\x85\xab\x40\x95\xfa\xc2\x60\x8a\xe9\x29\x59\xc5\x05\x02\xbf\x7a\x9e\x32\xa9\x33\xea\x49\xe5\x1a\xde\xf2\x18\x5a\x47\xfb\xa4\x8c\xd2\xe4\x2b\x1d\x29\x6f\x45\x4f\x45\x0f\x8e\xda\xc5\xeb\xb5\xf2\xce\x30\xf7\xd1\x8e\xa6\x46\x5c\xb6\xe3\x5a\xb7\x01\x54\xd3\x48\x25\xfc\x24\x53\xbe\x1a\x5a\x4e\x39\xb7\x68\x6d\x57\x5a\x5b\x46\x35\x6e\x53\xfd\x59\x71\x42\x92\xb3\xf9\x9b\x8e\x1b\xd3\xbb\xf3\xcb\xde\x0f\x3d\xce\xed\x10\x1b\x0c\xa6\x31\x8f\xbd\x2c\xb7\x6f\xd5\xed\x8f\xbf\xb8\x69\x5f\x37\x3c\xd6\x96\xee\x1e\xf8\x1b\x50\xc4\xd5\xad\x4b\x15\x66\xbe\x53\x54\xb1\x60\x0c\xdc\xc3\xc7\x5d\x6f\xfc\x96\x61\x9d\x4f\x66\x05\xbf\xc8\xb5\x27\xd5\x22\x4e\x67\x75\x0d\x90\xe3\x21\xbe\x5a\xdb\x2c\xa7\xa6\x1c\x48\x62\x38\xac\x84\x12\x11\xbf\x27\x8a\xfe\x0c\x0c\x7d\xf6\xb7\x29\x28\x0e\xd2\x9d\xf7\x85\xed\xb8\x7a\x7f\x7c\x4b\x6a\x1c\xc7\xb4\x45\x17\x7f\x4c\xba\x51\xa1\xb1\xfc\x88\x33\x1d\xe9\x9c\xcf\x6e\x3c\x1c\xe1\x8c\x7b\x69\x9f\xd4\x41\xb7\x8f\xee\x19\x15\xd3\x51\xfd\x53\x6b\x0b\x1d\x8b\xb3\x88\xf6\x7c\x74\x98\xc2\x2a\x16\x61\x27\x6c\xe1\xe2\x7e\xe4\x5e\xf5\xa7\xe8\x47\x05\xd3\x71\xfd\xc8\x51\xf5\xc6\x0c\x5f\xdc\x58\xe1\x12\xbf\xb0\xb4\x48\xa2\x09\xd1\x00\xb9\x37\xcd\xf8\x4e\x6c\x5e\xbb\x39\x7d\x27\x40\xc4\x49\x3d\xc5\x50\xc8\x24\x1d\x87\xa9\x27\xa5\x68\x1d\xa9\x27\xa6\x9b\x64\x27\xae\xab\xb0\xea\xae\x64\xb7\x1c\x91\x18\xa6\x5e\x63\xe1\xa1\x95\x89\xbd\xb8\xc0\x10\xfb\x18\x16\x3b\x78\x5f\xd2\xed\x3e\x8d\x4a\xda\x0b\x70\x17\xed\x2f\x2c\x87\x6e\x0d\xe1\x20\xd3\x22\x41\x8d\x67\xdc\x1c\xca\xbd\x4a\x4c\xa0\xb1\x84\xf7\x06\xdc\xd5\x5a\xc2\x3d\x11\x0d\xa5\x93\x64\x03\xb9\xe7\x2b\x50\xf5\x0d\x87\x7d\x76\x46\xcc\xe0\x47\xe0\x51\x4f\xec\xb5\xf7\x3b\x99\x46\xd0\x8d\x8d\x2a\xee\xb2\x4a\x1f\x34\xca\x92\xee\x6b\xa3\x36\x69\xbe\xb2\x2f\x4a\x7a\x59\x7e\xca\xd1\xed\x74\x53\x09\x15\xa5\x03\x54\xe3\x8c\x69\x98\x0f\x6d\x5c\xb8\xd1\x5e\x97\xe8\x09\xf0\xee\x36\x8e\x0d\x08\xe9\xae\x03\x56\xc1\xd4\x0a\x43\xa9\x5e\xda\x46\x2b\x37\x9f\x1d\x5f\xbf\x11\x9e\x8f\xb7\x56\xc5\xfb\xb4\x5d\x47\x59\x72\x71\x4e\xb7\xaf\xbd\x3d\x24\x1f\x4a\x5c\x8e\xcc\xbe\x63\x8f\xe8\xeb\xed\xa5\x7a\x6e\x3f\xdc\x7b\xb0\xad\x06\x33\x8b\xb8\xda\x97\x66\x51\x0c\xdb\xbb\x2c\x7e\xb9\x2a\x1e\xef\x5a\x6e\x83\xfd\x6b\xab\xe2\xf4\xe8\x55\xe7\xb1\xdd\x98\xc0\x8e\xa8\xaf\x5b\x83\x88\xfb\x53\xa5\xaa\x04\x07\x01\xe1\x2c\x5f\x47\xcb\xde\x25\xfc\x06\xf6\x05\xff\xde\xbc\x30\xb0\xe5\x16\x46\xb2\x03\x89\x43\x0d\x1a\x15\xd4\x4c\x76\x66\xf6\x50\x5e\x2e\x2a\xd4\xd9\x25\xb1\x6d\xc7\x5d\xb2\x63\x2d\x32\x58\xab\x7a\x3f\x70\xd7\x7d\xba\x59\x3b\x71\xd0\x6e\xce\x5d\xd7\x9c\xdb\xdb\x44\x33\xa6\xac\x57\x2c\x52\x5c\x6a\xde\x8d\x62\xb6\xc7\x31\xdb\x1a\xcc\xf6\x38\x66\x67\x1c\xb3\xa3\xc1\xec\x8c\x63\x76\xc7\x31\xbb\x1a\xcc\x6e\xf1\xfa\x6f\x55\x81\xdf\xe8\xcb\x26\x8f\xb6\xb4\x30\xda\x83\x7d\x40\x3f\xae\x30\x42\x3f\x1e\xba\x1b\xe0\x62\x1d\xa5\xd4\xfe\xff\xbf\xc3\x2b\xbc\xc2\xf2\x06\x58\xfd\xf0\x6a\xdb\x43\xa5\x99\xf8\xd7\x96\xe6\x1f\x5e\x5f\xff\xed\xaf\x4c\x9c\x3a\x36\xc7\xef\xd2\x97\xc9\xb0\x53\x04\xa4\x53\x82\xa8\x77\xe4\x95\x74\x59\x1f\xdc\xef\x7a\x2f\x46\x65\x0f\x65\x4a\x4b\x6e\xf4\x05\x07\xa0\x8f\x42\x36\xde\xac\x34\xf2\xd2\x7a\x4c\xe8\x93\xe8\x3c\xc9\x5a\xcc\x0b\x26\x71\x4a\x6f\x14\x10\x55\xe8\x29\x29\x42\xff\xac\xae\x17\xdd\xe6\x04\x75\x12\x37\x41\x50\xf7\x5a\xd3\xd9\x80\x33\xac\x89\xab\x90\x07\x75\x4f\x3f\x3e\xc9\xc8\xbb\x2e\x8c\x3c\x47\x6e\xf1\x04\xf7\xaa\xea\x54\xb9\x2b\xa6\x19\x9c\xab\xa4\x5c\xb5\x7c\xd1\x35\x01\x51\xe4\xd8\x74\x48\xd9\x1b\xab\x89\x58\x77\xd1\xa3\x58\xaa\xab\x24\x21\x8a\xda\x6d\x0c\xc6\xd6\xbc\x7a\xbf\x1a\xc1\xc6\xed\xdf\x56\x52\x88\xe8\x4b\x57\xd1\xec\x12\xb3\x6a\xba\x52\x37\x0d\xb2\x97\xda\x44\x04\x13\x09\xbc\x8a\xaa\xad\xe9\x54\xf0\x5d\x56\xbe\x2b\xf6\xd1\xee\x5c\xec\x7e\xe6\x97\xe3\xfb\xaf\x69\xe5\xb8\xa9\x69\x06\xec\x42\xfa\xda\x65\xe7\xd0\xa8\xc9\x0b\x3c\x04\xba\x90\xc2\x56\xd1\x3e\x02\x95\x44\x39\xc7\xce\x01\x19\xd9\xa4\x29\x30\x58\x60\x4e\x3d\xf3\x26\x80\xa6\xfc\x34\xea\x86\xd8\x5f\x0b\x3d\x3e\x76\x23\xc5\xa6\x8c\xdb\x08\xef\xf7\x81\x2e\x23\x6e\x2a\xe7\x6b\x8a\xf6\x30\x7e\x0f\xe4\x32\xf2\x74\x6c\x2f\x87\x5b\x3b\x56\x9c\x4e\x17\x94\x93\x21\x39\xfa\xa9\xd0\x10\xa2\x72\x22\xb7\xce\x6c\x86\x8e\x15\xa7\x02\xf6\x37\xa2\x67\x90\xae\xaa\x10\x1c\x55\xce\x61\x75\xa9\xd7\x64\xbb\x9f\x9a\x4a\x9d\x1f\xcf\x31\x7d\x64\x57\x5e\x98\x21\x42\xa8\xad\xd3\x0c\x14\x1e\xb9\x32\x24\x6d\xfd\x2d\x42\xb7\xf3\xb4\x8a\x89\x12\x4d\x5f\xa8\xb6\x78\xd4\x59\x40\x25\x75\xf5\x2f\xa6\x24\xcc\x59\x85\xa7\x0b\x85\x3f\x48\xc4\xcf\x10\xa3\x3c\x64\x9a\x62\x99\x84\xac\x94\xaa\xcd\xaf\x65\x43\x69\xc2\xa6\x75\x73\xca\x09\xcf\xc1\x31\xae\x02\x12\x3f\xc4\xc9\xe3\x18\x27\xd5\x80\x87\x4a\x41\x77\x10\xaa\x34\xf4\xbc\x71\xde\x06\x47\x8e\x60\x0e\x4b\x69\x99\x54\x09\x5d\xb6\x84\xcb\xd5\xd8\x67\x40\x95\x36\x5f\x45\xc0\xd3\xda\x8d\x73\xd8\xf8\x38\xaa\x10\x8b\xaf\x9f\xbd\x76\xd1\x9c\xf4\x3a\xd2\x80\x77\xad\xc9\xb7\x63\x8f\xf4\x02\xf3\x63\xed\xbb\x3c\x7b\xba\xc0\xdf\x82\x8b\xa4\xc4\x29\x9e\x37\x43\xaa\x0e\x09\xf2\x49\xac\xb5\x80\x99\x5a\x02\xd3\xd5\x27\x0b\x09\x9c\x70\x1a\x27\xbd\x09\xd0\x6f\x25\x40\x15\xf7\x07\xb7\x1b\x8c\x10\xde\x49\x37\xca\x78\x74\xcc\x3f\x88\x89\x4e\xe5\xaf\xf2\xed\x93\x26\x7d\x8b\xf9\x5e\x39\xdf\x21\xe1\xe3\x63\x0f\xac\x11\xea\x2d\x9a\xdf\x5b\x7e\x27\x55\xa4\xd6\xcb\xc6\xef\xce\x76\xab\xb4\x0e\x03\x78\x3e\xf4\xdc\x3b\x93\x0f\xdd\x9c\x73\x9d\xb5\x09\x8c\x7c\x52\xfc\xcd\xb6\x09\x68\x40\x5a\xb5\x16\xf0\x7e\x73\x17\x41\xa8\x6e\x58\x4d\x42\xe3\x90\xd0\xb5\xa6\x4d\xd1\x3c\xfb\x4f\x59\xea\x2b\x5a\xca\x79\x8b\xe5\xb5\x15\xd1\xce\xf2\x53\x24\x5f\x59\x9f\xd7\x9e\x95\xcf\x97\xfa\xb7\xb5\x57\x53\xcf\x2d\xb5\x3a\xd9\x0f\x12\x7d\xda\xdc\xe0\x41\x55\x30\x1d\xa4\xcd\x63\x09\xb9\x65\x91\x81\xa6\x84\x5c\x5c\x3f\xdc\x26\x6b\xf3\x96\x7e\x4d\x68\xfe\xce\xc2\x2b\xf6\x1f\x71\x57\x56\x78\x3e\x14\x86\x71\xa0\xd4\x60\x78\x48\xd2\x13\x1e\x92\x68\xc3\x43\xd6\x71\xb7\xa0\xb1\x06\x0f\xf9\x31\xf2\xbd\x3b\x38\x86\x74\x41\x0f\x1c\xc8\x92\x34\x29\x5f\x2a\x5f\x32\xcd\x29\xae\x2e\xf2\x6e\xb5\x13\xf0\x25\x91\x09\x32\xd4\x66\x4b\xdd\xa9\x17\x0f\x1e\xa5\x5d\xb9\x97\x3a\x99\xb5\xff\x6a\x46\xcc\x7f\xa9\xe5\x55\xb6\xb2\x97\x2f\xfb\x4c\xd8\xd8\x91\xab\xb5\xb1\xeb\x56\xd2\x1d\xa8\xa2\x85\x21\x39\x42\xf2\x6b\x8b\x7d\x59\xfd\x95\xc3\x79\xbb\xab\x28\x4e\xaf\xa3\xed\xea\x2b\xf2\x58\xc9\xdb\x70\x7d\xe2\x6b\x9d\x5e\xa7\x27\x7a\xfa\xf9\x43\x97\x6e\xf9\xea\xb7\xd7\x59\xc9\x34\x2b\x6b\xa2\x38\x08\xcc\xd1\x8a\xbb\xf6\xd4\x83\x1c\x38\xd2\x47\xe8\x75\xf1\x46\xe9\x3b\x3f\xfc\x98\x68\x94\xfd\x9e\xcd\xdb\x51\xaf\x1b\x9f\x86\x7d\x83\x9a\x7d\x9b\x34\x74\x55\xb0\x2a\xab\x4c\xca\x94\xf6\xa6\x54\xfe\x93\x4e\x1f\x35\x41\x1e\xfb\x1d\xa6\x9d\xf6\x06\x01\x2c\x71\x4d\x4b\x79\xc0\x73\x88\x06\x5a\xbe\x93\xd2\xe7\x9d\x4b\x89\x1b\x15\xe0\x7b\xd2\xea\x0f\xd2\x64\x5b\x57\xb1\x8a\xf2\xdd\x12\xdc\x7b\xa5\xdd\xd9\xf7\xf8\x8a\xd6\x39\x6a\x3c\xe2\x05\xbe\xdd\x05\x8a\xe3\xda\x14\xca\xbd\xa1\x94\x2a\xe1\x32\x70\x7a\x15\xc7\xed\xcb\x0e\xc7\x34\x77\x35\xc2\x16\x4a\x46\xed\x3e\x1e\xfa\x7d\x17\x3d\xca\x37\xa7\x91\x2e\xcd\xa2\x2c\x20\xb9\xfb\xb9\x1e\xd9\x58\xaa\xdc\x40\x5b\xb4\x8a\xdd\xd0\xce\x96\x7a\x2a\x36\xe6\x49\xf9\x5a\x5c\xcc\x5f\xca\x4c\x0c\x1f\xf9\x6b\xa9\xb9\xe1\x10\xc9\x63\xed\x55\x93\x10\x57\x5c\xaa\xe1\x7b\x6d\x30\x9d\x19\xbc\xd1\xc1\x69\x77\x70\xaa\xb3\xab\xd5\x10\x69\xb3\xd8\xbe\x12\x21\x6f\x14\x99\x56\x58\x66\x59\x7a\x1b\xe5\xf5\x2e\x4b\x12\x65\xf5\x64\x47\x86\xb3\xef\x04\xb1\x91\x63\xd6\x11\xc9\xdf\x1b\x7e\xb7\xf6\x6a\xaa\x13\xe3\x0f\x6a\x9d\xea\x82\xdb\x9b\x56\x5d\x4b\xad\x52\xb4\x5f\xe1\x18\x65\xd2\x8a\x35\x34\x28\x3c\x4f\x8f\xe2\x1e\x6b\x23\xb4\xb5\xef\x47\xfe\x27\xb8\x96\x58\xd0\xfc\x31\x59\xd3\xc2\x4a\x76\x45\x19\xed\xd6\xd4\x2a\xee\xb3\xa7\xb3\x1b\x19\x0b\x2f\xde\xea\x9c\x0f\xad\x98\x1b\xad\xcf\x9a\xf0\x18\xb3\xec\xa3\xaf\x3f\x30\xb1\xbe\xa7\xf9\x15\x4f\x46\x71\x15\xa9\xbe\x92\x1d\xef\xcd\x41\xf8\x09\x9b\x65\x65\x8b\xec\xd3\xad\x88\x3b\xd1\x93\xf9\xa7\x8a\xbc\x2b\x29\x96\x0e\xdd\xb6\x89\xd0\x46\x8a\xb8\xd4\x49\xcd\x9e\x28\xc9\xa7\x89\x6b\xb5\xc0\x2d\x6a\xe0\xfe\x51\xa7\xa7\xdf\xb7\xf2\x0e\xa9\x6c\x23\x4f\x1b\x31\x11\x3d\x2f\x60\x8c\xdb\xee\x2c\x65\x53\x4a\x34\x86\x3d\x35\x81\x73\x3d\x0d\x1d\x82\x87\xd0\x35\xc9\x8e\xd4\x8d\x30\xa0\xeb\xb6\xa5\xb6\x40\x60\xfd\xac\x13\x89\x82\xda\x05\xb5\x9e\xbc\x6e\xeb\xb6\x08\x78\xba\x77\x4a\x82\x68\x97\x8a\x9f\xb7\x84\x47\x4f\xd6\x92\x32\xb6\xf8\x1b\xd3\x28\xca\x3c\xdb\xdd\x35\x81\xa8\xc6\x0a\x40\xc6\x94\xd9\xa5\x62\xba\x7b\x19\x2f\xd4\x24\x51\x11\xc9\x55\xe4\x3a\x17\x94\x63\xb5\xea\x2f\xad\xba\x8a\x6f\x35\x44\xca\x9a\xda\x55\xf3\xba\x68\x56\xd7\xcc\xed\x92\x99\x5d\xa1\x0f\xbe\xd9\xca\x09\x70\xd9\x49\x1e\x3c\xde\x33\x23\x0d\x1e\x6c\x43\xb3\xdd\x76\x11\x8e\x34\xb2\x6c\xed\xd1\x70\x1d\x8e\x13\xb1\xac\x1f\xa1\x5f\x44\x4d\xee\x2d\x0e\x88\x2e\x71\x1c\xdd\xac\xfd\xf5\x5a\x43\x42\x41\xa3\x9c\xed\x85\xa2\xbc\xba\x3c\xcc\xbb\x62\xf8\xbe\x73\x6f\x4b\xa4\x24\x42\x87\x96\x76\x11\x67\x4f\xbb\xa2\xcc\x69\xb4\x05\x71\x1b\x25\x3b\xb6\xe0\xf3\xe8\xb3\x4c\x77\x8f\x57\x3f\x6c\x69\x99\x27\xeb\x42\xfe\x9e\x26\xbb\xdf\x8c\x68\xf5\xc3\xc3\x7e\xb8\xac\x55\x66\xfb\x2c\xcd\xee\x5e\x1a\x80\xba\x53\x88\xeb\x7b\xb8\x9f\xe8\x3a\x44\x40\x28\x85\x43\x6a\x43\x89\xd0\x16\xdc\xf9\x1a\x9f\x2b\x81\x34\x20\x30\x01\xd8\x0e\xa6\x15\x27\x6a\xe4\x86\x49\x65\xec\xe3\xaa\x74\x94\xe2\x8e\x14\x4a\x61\x5a\x79\xb7\x26\xd9\x1b\x21\xb9\x13\xbd\x01\x0a\xf4\xab\x80\x03\xb5\x43\xae\x03\xb8\x61\x7e\xce\x1f\x62\x5a\x94\xc9\x0e\x4c\xce\xe2\x0d\x2f\x36\xbe\x66\x34\x77\x59\xb8\x05\x01\xae\x7a\x88\x98\xed\xfd\xaa\xf8\xc8\x3d\x94\xfa\x22\x17\xac\xaf\x9d\x3b\x61\x6c\x91\xde\x46\xcf\xef\x08\x53\x94\x57\x6c\xab\x75\x7e\xfe\x2b\xfb\xc7\xdc\x24\xe5\x4d\xcf\x3d\xb1\x9c\xee\x69\x54\xbe\xab\xc0\x56\x1a\x1c\x53\xaf\xea\x18\x75\x96\x15\x55\x6a\x0e\x97\x97\x66\xf0\x95\x72\xfd\x4c\xe4\xd9\x1b\x92\x4b\xdb\x2c\x8e\x52\x35\x46\x48\x1d\xa0\x4b\xce\x79\x35\x2a\xdb\xe2\xd4\x92\xd1\xd2\xf2\x3e\x8b\x0b\x08\x45\xde\xf6\xaf\xfe\x7c\x36\x1b\xdd\x3e\x2a\xef\xb5\xb8\xfe\xb7\x11\x5c\xbc\x3f\x05\xca\x72\xc6\x6a\xae\xd6\x5f\x99\x32\x34\x14\xfc\x3c\xa5\x35\x16\xbf\x08\xb9\x3c\xf8\xef\xac\xa1\xe0\xeb\x91\xc6\xc0\x30\x54\x12\x32\x08\x36\x76\x9f\x56\xf0\x05\x61\x97\x56\x34\x5e\xb6\x81\x90\x77\x21\xba\xed\xba\xc7\xf6\x18\xc3\xcb\x88\x22\x31\x75\x0b\x4a\x17\x66\x68\x65\x51\x05\xf0\x60\xe4\xbb\xf1\xfe\x98\xc2\x5b\x72\xa2\xc7\x2a\xc2\xc1\x09\x51\xd7\x96\x0c\x08\x65\x3a\x8e\xb7\x02\x57\x16\x2f\x95\xf1\xa6\xdd\x8f\xad\x64\x21\x2c\x1f\x2b\xbc\xc9\x97\x8b\x42\x09\x85\x2a\x81\x27\xf4\x53\x6f\x7b\xb8\x65\x46\x5e\xbc\x24\xf2\x2f\x20\x81\x12\x99\x32\x0e\x43\xa9\x37\x0f\x4a\x12\x50\x26\x24\x45\xc0\x94\x2c\x37\x7e\xdd\x45\x5b\xfa\xf1\x8c\xbd\xfc\x15\x2e\xc2\xdc\x9c\xdd\xac\x26\xc0\xb4\xed\x10\x13\x8a\xf4\x86\xee\xd4\xa9\x50\xc3\xc3\x2c\x9f\x5d\x2f\x36\x08\x36\x60\x0a\xc7\x90\x4d\x0e\x77\xa3\x0d\x5c\xfd\xd0\xbe\xe9\xe1\x9d\xa9\xa5\xeb\x6a\xf3\xec\xa9\xe0\x51\x99\xd9\x77\x70\xc2\x50\x31\x77\x01\xf4\xb2\x48\x23\x74\x74\x32\x66\xc6\xe5\xed\xbe\x7a\x74\x48\x7b\x93\xd9\x55\xfb\xfa\x5e\x7c\x20\xee\xa4\x7d\xb8\xc8\x6d\xd6\xeb\xe0\x2b\xae\x6c\xcb\x1b\x7c\xa7\x17\x37\x08\xd4\x7e\x51\x3b\x29\xe5\xc0\x50\x16\xbf\xd1\xdd\x85\x75\x4f\xa3\x54\x59\xf6\x57\xa3\x45\xf8\x29\xab\x52\x64\x70\x17\xa2\xab\x63\xb8\x40\xa7\x86\xd1\x7e\xae\xbc\x3c\x47\x89\x17\x71\xab\xa6\x52\xd2\x02\xd7\xd0\x21\xb6\x7e\xa3\x15\x8b\xa0\x57\x53\x2b\x6e\x81\xeb\x38\x81\xc7\xc9\x1a\xad\xb8\x8a\x98\x35\xb5\xe6\x36\xbc\xa6\x6a\x11\x65\xab\x47\x8d\x18\xb9\xdf\xcf\xf6\xbc\x3d\x1b\xda\xfe\xf8\x22\xfd\x5b\xe0\x51\x16\x19\x2a\xab\xdc\xec\xd0\x6c\xc8\xd9\xb6\xa0\x30\x8a\xc7\x3b\x48\xd2\x29\xf5\x9c\xfa\xe1\x00\x17\xb6\x95\x5c\xc6\x5a\x24\xfc\x66\xb2\x16\x8d\xb8\xb4\xdc\x24\x6d\xd3\x63\xf8\x01\xac\x10\x66\x94\xe7\xd9\x93\x16\x8f\x0c\x20\xb0\x89\xa0\x5d\x22\x5b\x1c\x03\xfd\x1f\x59\xb2\xbb\x80\xae\x9a\x54\xcd\x10\x48\x9c\x95\x3d\x00\xbd\x3d\x36\xb5\x0d\x80\xba\xaf\xc7\xab\x64\x77\x6a\xe3\xc4\xf1\xce\xc0\x18\xf2\xa3\x8e\x46\x3f\xf9\x18\xd3\xdd\xcb\x4d\x6f\x3d\x7a\xf0\xba\xf6\x6a\x22\xe8\x7b\x88\xc1\xf6\xb6\xa2\xfe\xda\x42\x36\xad\x29\xbc\xf4\x40\x17\x36\xdf\x05\x17\x28\xd8\xdb\x95\x8d\x32\x85\x25\x1b\x5c\x3b\x35\x2a\x5f\x07\xe4\x45\x17\xed\x27\xbf\x1f\x69\xf3\x4d\x83\x52\x24\xc5\xd0\xf4\xce\x3e\xda\x75\xbb\x64\x1f\xed\x34\x37\xdb\xe1\x57\x0a\xf1\xe9\x5c\xf4\xe3\x8a\xfd\x25\xdf\x6f\xd7\x7e\xd6\xa4\x10\xd0\xcb\x38\x9d\x5c\x3e\xc8\x7a\x95\xf0\xbe\xaf\x1e\x4d\x50\x2c\xc8\x65\xf3\xf9\x27\xbb\xad\xfe\xc9\x45\xf8\x1b\xa5\x54\x05\xf4\x93\xdd\xed\x98\xa3\xab\x26\xfa\xaa\x6d\xa5\x6a\xf2\x93\xab\x4d\x10\xdc\x1a\x90\xa3\x89\xf1\xa6\x10\xe3\xfd\x14\x8e\x10\xc3\x01\x8f\xa6\x26\x98\x32\x2a\xc1\x4f\x18\x75\x87\xa5\xcd\xaa\x07\x29\xa2\x5f\xe7\xb4\x4d\x0e\x49\x3a\x49\x59\x3d\x5d\xfe\x97\x21\x3d\xa3\xe3\x86\xb0\x6a\xf7\xb0\xa1\xd1\x39\x86\x4b\x0d\x57\xd0\x8a\x05\x14\x2c\x56\xb0\x5b\x01\xf6\x65\xc3\x78\x27\xb0\xfc\x90\xa6\xb5\x1f\xd0\xaa\xf6\x07\x79\x97\xc1\x93\x23\x28\xf9\x9b\xbd\x56\xfe\x66\x0f\xa1\x96\x89\x47\x76\x8b\x19\x51\xf8\x86\xd5\xbb\x3f\x86\x21\xf8\xe1\x43\x3a\x76\x3a\xd1\xbd\x18\xb1\x3c\x3d\x51\xc7\x0e\x37\x46\x5e\x6b\x9d\xe8\x03\xe9\x1a\xf8\x46\xdb\x3d\x7d\x2b\x25\x6f\x25\x07\x4e\x79\x26\x6a\xee\x93\xf7\x57\xca\x0e\x56\x69\xdf\xc8\x4e\xb5\x32\xb1\x16\x03\x15\x54\x20\x52\x6c\xe4\x9a\xed\x35\xaa\xb8\x2a\x7b\x89\x46\xf6\xe2\x46\xf6\x12\x8d\xec\x75\xa6\xac\x04\xce\x4f\xfe\x94\xdd\x8a\x3c\x4f\xab\x3d\x35\x04\x5e\x1d\x98\xac\x3e\x42\xfd\xfb\x19\x25\x44\x96\x9e\x00\xc3\x62\x7b\x86\xdf\x80\x93\x85\x0f\x40\x5b\xcb\xad\x03\x55\x4f\xc7\xd0\x64\x78\x96\x6f\x8a\x22\xf1\x57\xeb\x24\x98\x6e\x95\x90\x27\xb8\xc9\x36\x25\x1d\x1e\x77\x4d\x0c\xff\xe5\x9f\xd7\xf8\xfa\xba\x2f\xb0\x70\x5f\x90\xbd\x89\x97\x48\xb4\x81\xf9\x1c\x11\x50\xaf\x1b\x4b\xcf\x11\xb1\xf4\x86\xc2\xf1\xcd\x2d\xbd\xa0\xbb\xe5\x6f\x65\xb2\xa5\x52\x16\xbf\x16\xcf\xc8\x2c\x05\xd7\x7d\x6b\xdf\xcd\x96\xe8\x77\x67\x71\x8e\x96\x90\xd2\x4c\xe9\x1d\xdd\xd5\x81\x11\x97\x30\x92\x16\x21\xd7\x77\x7b\x23\x4e\x77\x18\xa1\x4e\x12\x58\xdd\xe3\xa9\xbb\x67\x06\x45\x71\xf2\x58\x11\xa5\x89\x2a\x34\x16\x6b\xae\x87\x56\xee\x0e\x04\x5e\x5d\x22\x5e\xb2\xaf\x35\xab\x55\x3c\x2f\x79\xac\x56\x0f\xe2\x96\x58\x7b\x3a\xf4\xc6\xca\xee\x0b\x95\xcd\xdf\x4f\xef\x90\x9e\xd3\x9c\x1e\xb9\xd2\xbc\x95\x4e\x1e\xab\xae\x80\x54\x8f\x9a\xc4\x93\x93\x6b\xd0\x79\xe0\xcd\x97\x59\xd2\x65\x26\x91\xbf\x7f\x20\x71\x2a\x88\x26\x18\x32\x3f\x68\x32\xed\x72\x3b\xf4\x43\x9e\x16\xff\x5d\xf8\x32\xf2\x05\x7f\xab\xcd\x65\x3f\x87\xc8\xfe\x69\xa0\x75\xaf\x9c\xc7\xd7\xcd\x5b\x11\xe3\xab\x2d\x85\x3b\xd7\x5c\x3b\x3e\x3d\xad\xd0\xa1\x9a\x24\x8a\x45\x19\x95\x85\xba\xd6\xfd\x61\x17\x54\xdb\x21\xd5\x41\xbf\xce\xb3\x27\xa3\xc9\x7e\xa4\xbe\xfa\x66\xf7\xdf\xab\x63\x97\x9c\x96\xeb\xfb\xee\x69\x0c\x7f\xad\x9e\xc7\xf0\x77\xdd\x69\xe3\x30\x9d\xa0\x93\x86\x0a\xba\x79\x71\x26\xeb\xd6\x22\x00\xc7\x9d\x02\x63\xd9\x75\x78\xeb\x2c\xdf\xb2\x1b\xbd\x28\xd6\x72\xfe\xef\x42\x48\xea\x6e\x27\x8f\xab\xca\x55\xaf\xf7\xf8\x20\x3b\xb9\x06\x39\xdd\xbe\xde\x13\xe5\x9d\x0d\xef\xec\x43\x3b\xce\xe9\x04\xb7\xf2\x8e\x2b\x8a\x21\x5f\x57\x6b\x39\x50\xf4\x41\x1f\xd4\x3e\x21\xae\xa6\x6a\xe1\xcd\xc5\x2f\xf1\xf0\xdf\x37\x3c\x81\x43\x4c\x53\x5a\xd2\xd5\x11\xd4\xf2\x3b\x7f\xdd\x4c\xb9\x2b\x2b\x4b\xe2\xb5\x9a\x7e\x43\x7d\x27\x17\xd7\xe7\x1d\x59\x55\x59\x26\xf2\x72\x18\x82\x7b\x5d\x0b\x5c\x10\x2c\x7a\x9d\xed\x36\x49\x2e\x62\x97\x2a\x6d\xd5\xf7\x2e\x07\xd9\x47\x45\xf1\x94\xe5\xb1\x7c\x91\x51\x0f\xc9\xc9\x18\x87\x63\x72\x69\x08\x6a\xb0\x57\x23\x8e\x63\x9d\xd3\xa8\xa4\x2b\xde\x87\x22\x30\x74\xb9\xab\x9e\x39\x48\xb4\x5b\xd3\x54\x79\x55\x3c\xdc\x6e\x93\x72\x25\x0f\x7d\x4e\x0b\x5a\xde\x28\xaf\x38\xd4\xcd\xaa\x7d\x53\x41\xc3\x31\x9c\x25\xaa\xea\xcf\x61\x8d\xd1\xf6\x9b\xf4\x41\xee\x26\xe9\x75\xd3\x2b\xec\x2f\x8b\x33\x72\xcb\x34\x30\x9c\xb1\x5f\x64\xb8\xe5\x3e\x62\xf7\x59\x5e\x9e\x83\x17\xe0\x94\x24\xff\x71\x39\x96\x0a\x5d\xdc\x25\x58\x49\xf7\x2b\xa1\x54\x27\x7c\xbb\x3e\xe2\xf8\x07\xbe\x4b\x5d\x4d\x08\x4e\x5e\x81\x0e\x46\x5e\x9f\x52\xb4\x2f\x42\xfa\x60\xd9\xce\xa5\x48\xb9\xc1\x9c\x33\x0b\xba\x8f\xf2\xa8\xcc\xf2\x9b\x79\xcd\xef\x96\x5e\x5a\x70\x69\xd7\xf4\x20\x5a\xd0\x51\x6d\x4c\x4a\xb7\xb9\xf2\x2d\x34\xe3\x1e\x1b\x74\x7b\x9c\x38\x55\xfd\x7f\xe9\x73\x49\xf3\x5d\x94\x8a\x54\x3b\xfd\xce\xd8\xe3\xde\xda\x92\xf7\x24\x10\xd9\x0b\xc8\xab\xd2\xc3\xe8\xdd\xc3\x6a\xc0\xdf\x92\xdd\xc8\x2c\xac\xbd\xdf\x06\xc1\xaa\xdb\x3c\x0f\xa9\x91\x26\x2b\x6d\x3e\x6c\xd9\x85\x67\x25\xce\xde\x61\xf4\xcc\xec\xa1\xdc\x3f\x94\x46\x1c\x43\x13\x52\xdd\x5c\xe6\x5a\xf2\xcc\x09\x2d\x0a\x69\xd6\x30\xd1\x09\x73\x31\x29\x6b\x17\xc7\x31\x6d\x75\x1a\x87\xad\x04\xef\x38\x24\x97\xc5\x43\x70\x23\xac\xaa\x2f\xc4\x83\x36\x44\xbf\xe6\x34\x7d\xff\xf1\x9e\xa6\xfb\x9b\x1e\x40\x91\x44\x2e\x56\x9c\x4f\xe8\x76\x20\x8f\xdc\xff\xc7\xdb\x95\xed\xb6\xad\x03\xd1\x5f\x21\x2e\x70\x81\x28\x8e\x12\x49\x8e\x8c\xb6\x40\xfb\x23\x85\x1f\x1c\x4b\x45\x0c\xaf\x88\x5d\x37\x86\xa0\x7f\x2f\x34\x5c\x34\x9c\x19\xd2\xb2\x12\xf4\x95\xe6\x6e\x6a\x36\x72\xce\x01\x8f\xc8\x51\xc8\xb9\x93\x2f\xea\x23\xf6\x93\xbf\x31\x4c\x27\xa1\x62\x61\x05\x3d\x69\x9d\x30\x61\x50\x65\x40\xb6\x77\x49\x77\xfb\xaa\x4e\x57\x55\xf7\xd1\x9c\x2e\xde\x2f\xc6\x4d\xeb\x7f\x1c\x2f\xfa\xc3\xa4\xd6\xb7\x74\x40\x7d\xaf\x4f\x95\x66\x51\x39\x33\x46\x20\xf1\x8f\xaf\x2b\xc5\x1f\x52\xbd\x1d\xf6\x11\x5d\xa9\x67\xce\xc9\x95\x5a\x70\x68\x82\x75\x22\xbb\x22\x37\x40\xc6\xfa\x24\x58\x29\x74\xfe\xa4\xf3\xef\x17\xf7\x6b\xa2\xe7\xde\x16\x91\x09\xc4\xce\xbb\xf1\x78\x4e\x97\x4d\x6d\xdc\xdd\x28\x97\x34\x80\x7e\x58\xbb\xca\x01\xa8\x2f\xd7\xe9\xb1\x46\xea\xc4\x50\x21\xd2\x9c\xb0\xbe\x65\x80\x3b\x31\xdc\xe0\xf0\xb6\x7f\xbf\xa4\x36\x8c\x7f\xf4\x67\xe2\x79\x72\x79\x01\x71\x05\xa6\xdc\x87\x2d\x4a\xc1\x24\xf4\xd6\x25\xe3\x57\x48\xba\xb9\x71\xb9\xa4\x75\x74\xed\x5e\x5d\xb4\x11\x06\x62\xd4\xdb\x07\x0b\x3b\x4a\x44\x03\x75\x7a\x43\xf9\x82\x6a\xb1\xab\xd4\x9d\x8d\x0b\x6c\x57\xbb\xb4\xaa\x41\x08\x1e\x56\xef\xf5\x26\x05\x10\xa1\x6f\x59\xd2\x68\x1c\x53\xff\x12\x02\xf9\xef\xad\x79\x5e\x6b\xe3\x67\x28\x26\xa4\xd3\xbc\x6c\x72\xe1\xc8\x50\x44\x9f\xa3\x99\x67\xd9\xf9\xf5\x9f\x31\xe9\x49\x17\x07\x26\xb0\x43\x6f\x0e\x70\x31\x4b\xe4\xf7\xc2\x25\x5d\x49\x0b\x61\xc0\x28\xd7\xb8\x21\x19\xe7\xa9\xa0\x44\xf8\xdc\x83\x2c\x20\xcc\xe5\x03\x2f\x39\x84\xdc\x6b\xcc\x02\xdb\xf4\xc7\x25\xcf\x4b\x9c\x24\xfa\x40\x66\x65\xc2\x9a\x38\xb5\x55\x33\x09\x3f\x9f\xff\xa8\x27\x75\x97\x17\xb3\x4c\x3d\xa9\x3c\xcb\x92\x84\xe4\xbb\x06\xeb\x49\xa9\xe5\x99\x97\xe4\x4a\x72\x69\x33\x9e\x4b\x9b\xc9\xa9\xb9\xdd\x30\xb8\xa3\x01\xcb\x29\x9e\x59\xef\xc0\x19\xdb\x3a\x34\x0d\xfd\xb7\x98\xd4\xa5\x71\xf1\x4c\x8f\x90\x9d\xd0\xb1\xb3\x60\xe4\xd8\x88\xa7\x07\xbb\x27\x20\xf1\xb5\x78\x21\x3d\xc2\x82\xde\xb9\x32\xfb\x5f\xfe\x1d\x8b\x3e\x03\xfa\x92\x90\x1d\xcc\xfa\x2b\x19\xfd\x87\xd1\xd4\x73\x28\xb5\x11\xbe\xc8\x28\x18\x59\x26\x21\x00\x99\x12\xe5\x32\x3a\xd6\x14\x95\xa0\xb3\xb7\x7c\xce\x36\xa1\xad\x0e\xf3\x0c\x69\xed\x65\x88\x3c\x7e\x61\xe1\x46\xbd\xa8\xd3\xe2\x05\xdc\x9d\xf9\x0f\x64\xaa\x4d\x0e\x0f\xf1\xba\x1e\x70\x00\xb5\xf3\xa0\x00\xec\x81\xc4\x9f\x43\x51\xa2\x2c\x5b\xa6\xf4\x9a\x10\x71\x48\x44\x4b\x3a\x15\x0a\xa6\x34\x2b\xd4\x01\x6f\x5a\x6c\x6c\x6c\x5a\x0c\x49\x11\xb4\xd0\x19\xe2\x06\xfa\x81\x55\x40\xb4\xd4\xbf\x37\xf4\x0f\xa3\xf0\x11\xda\x23\xa1\x7d\x9b\xc6\x0d\x27\x63\xc6\xbb\xb0\xdb\x9f\x56\xcb\x7a\x22\x8e\xcb\x9b\xe6\x9e\x4e\x04\x7e\x15\x97\xa4\x00\x5e\x80\xd5\x51\xe0\x86\x3e\x5c\xab\x00\xe4\x52\x0d\x8d\xea\x77\xad\xf4\xbf\xdf\x39\x26\x06\x6f\x2c\x51\x3f\x97\x9b\xc5\xf1\x78\xff\xdd\x6c\xff\x3c\x80\x11\x42\x93\x3c\x85\xc3\x6e\x76\x0c\xc6\x60\x5e\xde\xfa\xfc\xdf\x3c\x51\x22\x2e\x8e\x4e\x88\xf2\xa3\x94\x2e\x26\x89\x2b\xa6\xe5\x0c\x5f\xf2\x59\x8c\x3f\x6a\x4c\x1f\xf8\xf3\x2c\x30\x7a\x79\x39\x79\x8b\x95\x3b\x1c\x49\xc9\x88\x9f\xe8\xc7\xed\x34\x12\x1d\x31\xfb\xd9\xb7\xd6\x1b\xe4\xa1\xce\x5c\x05\xd6\xb6\xe1\xa0\x34\x41\x2c\x87\xde\xee\xc7\x41\x62\x9c\xf4\x19\xe4\xdc\x6b\x85\xab\x47\x8b\x47\x2d\x63\x8d\x4c\x11\xb8\xa9\x04\x34\x09\x2c\x55\x53\x1f\x64\xd2\x94\xc9\x0c\xf7\x0c\xc1\x45\x90\x9f\xaa\xda\x20\x0a\x45\x9c\x4a\x91\x7f\x65\x04\xc2\xc5\xf4\x40\x5e\x59\x95\x41\x7a\xfd\x61\x83\xf3\x30\xeb\xe0\xce\x88\x70\xb6\x21\x6c\x7e\x36\x09\x58\x08\x98\x11\x01\xd8\x32\x97\x33\x33\x6c\x16\x8f\xdb\xfa\xb4\xe8\x6a\x85\xa7\xa3\x5e\xa7\x72\xb4\x86\x77\x06\x1e\x49\xb4\x27\x7b\x33\xd7\x2d\x41\xe9\x37\x55\xf2\x4c\x3b\xbd\x70\x04\xbc\x1e\x3c\x45\xe3\xac\xbe\x51\xf4\x4d\xb1\x8b\xf5\xd9\x29\x6c\x14\x41\x90\x8e\xbe\xf0\x3e\xf1\xd6\xf8\x94\x7f\x9b\x39\x15\xa1\xda\x67\x79\x29\xc8\x4b\xd4\x35\x28\xb8\x55\x4d\xc6\xa0\xe8\x49\xfc\x45\x6d\x77\xd8\x9f\x8b\x28\xa6\x4b\x78\x50\x64\xab\xb3\xa1\x7a\x8e\xce\x4f\x82\xeb\xf9\xc8\xbd\x37\x97\xd0\xa3\x16\x65\x64\xed\xaf\xba\xae\x5e\x16\xcb\xb5\x20\xca\x8c\x08\xfb\x50\xf7\x58\x94\x7b\x06\x52\x2b\x77\xeb\xc2\x62\xae\x73\xc6\x1a\x2b\xa8\xa8\xbf\x01\x00\x00\xff\xff\xff\xd3\x1f\x14\xe9\xc3\x04\x00") +var _web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\x7b\x77\xdb\x36\xb6\x28\xfe\xbf\x3f\x05\xcd\x7b\x8e\x87\xbc\x85\x64\xc9\x76\x5e\xca\x70\xd2\xd4\x4e\x67\x72\x4f\x9a\xe4\xc4\xc9\xe9\xcc\xd5\xe8\x66\xc1\x24\x24\xa1\xa1\x00\x15\x04\xed\xa8\xb2\x7e\x9f\xfd\xb7\x00\x10\x24\xf8\x14\x25\xcb\x49\xdc\xb8\x6b\xcd\xc4\x22\x41\x3c\x36\x36\x36\xf6\x7b\xdb\x71\x84\xac\x88\x33\xec\x73\x7b\x2f\x40\x63\x4c\x90\x63\xfb\x94\x44\x71\xd8\x89\xf1\x21\x0c\xe0\x9c\x23\x16\x1d\x76\x7e\x8b\x28\xe9\xc0\x39\xb6\xc1\xd0\x46\x9f\xe7\x94\xf1\xc8\x06\xf6\x8f\x68\x76\x81\x58\x27\x80\x1c\xea\xb6\x87\x69\xcb\x11\x70\xc6\x31\xf1\x39\xa6\xc4\x41\x80\xbb\xcb\x37\x17\xbf\x21\x9f\x77\xd5\x30\x6f\x19\x9d\x23\xc6\x17\x0e\x02\xf6\xc7\x8f\x28\xfa\x85\x06\x71\x88\x6c\xb0\xbc\x84\x61\x8c\x06\xfb\xbd\x95\x0b\x6a\x3f\x08\xd0\x18\xc6\x21\xb7\xc1\x12\x91\x78\x86\x18\xbc\x08\xc5\x27\x60\x82\xf8\x20\x1d\xd3\x5d\x32\xc4\x63\x46\x2c\xd9\x83\x68\xbf\x5a\xb9\x2b\xd7\x05\x0d\xeb\x84\x7e\x98\x5f\x61\x55\x9b\xf9\x3c\xc4\x3e\x14\x63\xe4\x1a\xcc\x68\x80\xc2\xa4\x8b\xf2\xe3\xc0\x2f\x02\x04\x10\xc0\xdc\xa5\x7e\x62\x51\x07\xe9\x19\x3b\xd4\xb3\xf5\x73\xdb\xf3\xf8\x62\x8e\xe8\xd8\x3a\x5f\xcc\x2e\x68\x78\x70\x60\x47\xf2\x8f\xe2\x8b\x2e\xe6\x88\x41\x4e\xd9\xb3\x6c\x90\x0c\x04\xaa\x25\x5a\x0d\x2a\x5e\xa2\x83\x83\x86\xe1\x50\x57\xac\x85\xb3\xd8\xe7\x94\x79\x9e\x97\x3e\xdf\xd7\x7f\x77\xe7\x8c\x72\x2a\x3e\x7b\xa6\xe7\x36\x48\x07\x74\x1d\xe4\xae\xd2\x45\x62\xc7\x5d\x5e\x42\x66\x21\x6f\xee\x0c\xed\x7f\x13\x4b\xfe\xf7\xf6\xc3\x7b\xeb\xf0\xb2\x2f\x40\x77\xe8\x87\x94\xa0\x43\x1b\xd8\xcf\x6c\x90\x34\xb0\x47\xee\x5e\x32\x55\xec\x95\xb7\x17\xad\x00\xca\x46\x80\x6b\x47\x08\x50\xc4\x19\x5d\xd4\x8e\x01\xd7\x8e\x11\xae\x1d\x23\x9e\x07\x90\x23\xd5\xbd\x7e\x5f\x35\x56\xb8\x76\xac\x58\xa1\x4a\xb6\x93\x16\x26\x16\x7a\x56\x77\x34\xb8\x3e\x40\x04\xe4\x8f\x86\x4f\xc9\x18\x4f\xe2\xf4\xf7\x15\xc3\x3c\xf9\x7b\xe5\x0e\xd0\x90\x8f\x3c\x62\x8e\xeb\xaf\xdf\x29\x86\x5a\xad\xd1\x5f\xbb\xc6\xa8\x72\xac\xbf\xbf\xc8\xc6\xc2\x64\x4c\xb3\x0d\x6b\x1a\x2d\x5a\x3b\xda\x78\xed\x68\x21\x8e\xf8\xfa\x91\xc6\x6b\x47\x9a\x2b\xba\xa7\x77\xee\xfa\xda\xe1\x1e\xea\x46\x21\xf6\x91\xd3\x73\x53\xfa\x36\x66\x08\xfd\x81\x9c\xaa\x2d\xc5\x28\x72\x10\x58\x32\x78\x35\x48\xf6\x35\xff\x0d\x77\x57\x2b\xd7\x38\x5f\x81\x1a\x11\x8f\x9d\x7d\x07\x59\x98\x44\x1c\x12\x5f\x1c\x44\xee\xba\x7c\xca\xe8\x95\x45\xd0\x95\xf5\x7e\x31\x47\x2f\x18\xa3\xcc\xb1\x4f\x21\x21\x94\x5b\x3e\x0c\x43\x0b\x5a\x7e\x08\xa3\xc8\x82\x91\x05\xad\x94\x20\x18\xbd\xcf\x54\xef\x63\xca\x1c\x01\x40\xe2\xf5\x9e\x92\xbf\xf2\x6e\x88\xc8\x84\x4f\x9f\x92\x1f\x7e\x50\x80\x65\x1e\x1f\x92\xd1\x1e\xeb\x66\x18\xe8\x99\x3f\xae\xaf\xf7\xfb\x80\x75\x4d\x8c\xf4\xf6\x7b\xc0\x96\x0b\xb4\x31\xb1\xd8\xc1\x81\xc3\xba\x1a\x43\xbd\xfd\x5e\xfd\x55\xc0\xba\x9f\xd0\x02\x30\x77\x95\xcd\x72\x61\x42\xdd\x59\x78\xc9\xa7\x11\xe2\x6f\x35\x9d\x7a\x33\xbe\xbe\xce\xdf\x4d\x7a\xff\xba\x1f\x3f\x4a\x6a\xf6\xf1\xa3\xc7\x81\xa4\x5e\x80\x1b\x10\xb8\x10\x64\x53\xac\x91\x9b\x9b\x8f\xc7\x8e\x1d\x13\x35\xb7\x20\xa3\xa0\xef\xd0\x38\x44\x3e\xbf\xbe\xde\x4f\xfe\xca\x28\xa9\xab\xc6\xdb\xef\xef\xe1\xb1\x53\x7a\xdb\x8d\xa6\x70\x96\x6b\x52\x41\x9f\xdf\x32\xfa\x79\xa1\x1b\xf5\xf6\x38\x5b\xe8\x45\x9c\x41\x8e\x32\x9a\xdc\xe5\xf4\x9c\x33\x4c\x26\x5d\xb1\xc9\xe5\xc1\x1c\xd1\x1c\x0c\xcd\xcb\xc9\x5d\xae\x5c\xd7\x05\xfb\xbd\x95\x0f\xb9\x3f\xcd\xae\x8a\xfd\xfe\x6a\xe5\x64\x07\x20\x6b\x2f\xd1\x01\x30\xef\xd2\x41\xae\x98\x2f\x57\x8f\xa8\x77\xe9\xf0\x29\x8e\x5c\xf3\x0e\xd9\x23\x5e\x79\x12\x0c\x40\x36\x89\x67\x88\xf0\x08\x50\x77\x85\xc2\x08\x59\xc4\x63\x5d\x71\xd9\x2e\x64\x1f\x59\x83\x74\x02\x53\xf5\x82\x98\xbb\x3f\x35\xf7\x73\x9f\x5f\x5f\xdb\x54\xee\xbf\xbd\xef\x79\xd4\xe1\xae\x79\xd7\xed\x6b\x58\xf2\xdc\x9d\x89\xc7\xce\x25\xc5\x81\xd5\xf3\x3c\x0f\x19\xc7\xe6\x1d\x1a\x23\x86\x88\xaf\xcf\x8e\x18\xdc\x9a\xc2\x88\xfc\x85\x5b\x17\x08\x11\x0b\x13\xcc\x31\x0c\x71\x84\x02\xab\x63\x45\xf1\x1c\x31\xc7\xcd\xb5\x10\x5b\x80\x02\x3b\x5d\x01\x5a\x39\xc8\x1d\xf0\x6c\xfa\x97\x06\x17\x70\x59\x8d\xba\x9a\xf6\x4f\x72\x4f\x2b\x2f\xf6\x0c\x9b\xaf\xaf\x2b\xbf\x12\x97\xb3\xbc\xa1\x37\xe6\xcd\x90\x66\xaa\x3c\x05\xab\x3d\xb1\xdf\x13\xcf\x9c\x45\x81\xfd\xcb\xa1\x71\x06\xfa\x83\x03\x12\x87\xe1\xbe\xe7\xf1\x6a\x0a\x75\x2e\xc0\x68\xa1\xcf\x73\x86\xa2\x48\x52\xa1\x38\xe2\x16\xc2\x7c\x8a\x98\x75\x81\x2c\xf1\xb5\x45\x59\x8e\x64\xed\x19\xf8\xaf\x81\xa8\xae\x2b\x87\x1f\x1c\xf0\xec\x25\x58\x1a\x88\xa9\x49\x2c\x32\x2f\xc7\xe2\xc5\xb9\x5a\xb9\x80\x1f\x1c\x28\x22\xb3\x72\x9d\x09\x40\xae\x5c\x3b\x05\x73\x30\x05\x97\xde\x85\x33\x71\xf7\xd2\xfd\x9c\x64\x77\x43\xa0\xb0\x75\xe2\x82\xcb\x6a\xb4\x5e\x25\x0d\xa9\x37\x01\xce\xdc\x1b\x2e\x3f\xa1\xc5\xc0\x66\xe8\xf7\x18\x45\xfc\x67\xca\xfe\x3b\x46\x6c\x61\x03\x35\xc9\x3c\x6c\x15\x39\xe6\xdd\xc0\x07\xcc\xe3\x5d\x4c\x02\xf4\x39\xc5\x31\x67\xec\xb8\x60\x19\xf8\x03\xb2\x02\x4b\xf9\x6a\xc0\x56\xee\x6a\x05\x2a\x07\x78\x87\x7c\xca\x82\xf6\xc3\x00\x2a\xfe\x0a\xf6\xcc\x53\x43\x8d\xad\x4c\xb6\xf1\x5f\x34\x56\x3b\x17\xcd\x91\x8f\xc7\x0b\x0b\x12\x0b\x9b\x27\xc1\x89\x1c\x17\xd0\x56\xf3\x3c\x95\x5b\x59\x3b\x51\x02\x68\x76\x04\x1c\xdf\x71\x41\xec\x2c\x57\x80\x77\xcf\x9e\xbf\x7f\x7e\xfa\xe2\xf5\xfb\x17\xef\x3e\xfe\xf7\x87\x17\xef\xfe\xf5\xf1\xed\xf3\x77\xcf\x7f\x01\x74\xc8\xba\x3f\xbf\x79\xf7\xe2\xe5\xdf\x5f\x7f\xfc\xaf\x17\xff\x1a\xb9\x92\xa2\x94\x46\xfd\x20\x79\xba\x96\xa3\x86\xbb\x1a\xf5\x0c\x85\xa8\x61\x54\x0a\xb0\x31\x2a\x74\x5c\x80\x87\xa4\x7b\xfe\xea\xc3\xdf\x65\xa7\x6b\xe6\x80\x8b\x73\xa8\x84\xb6\xe0\xc8\x1b\x26\x00\x8d\x09\x60\xc7\x05\x70\x83\x09\xc0\xfa\x09\x48\x41\xa0\x0a\x0d\x95\xdc\xa4\x99\xaa\x29\x8e\xba\x6c\xee\x3b\x15\xa2\x55\x4a\x05\x2b\xd7\xe2\xa8\x56\x2b\xb7\x4a\x2a\x33\x3e\x8d\xe6\x94\x04\x05\xa4\xcb\xbe\x65\x80\x77\xa5\x84\xf7\x1a\xce\x90\xbb\x5a\x8d\xdc\x83\x83\x99\x43\x0d\x0a\x33\x77\xc1\x54\x3e\x03\x53\x17\x4c\x56\x4e\x2a\x8d\x0a\x2a\xa5\x69\xe8\x64\x9d\x5c\x6a\xca\x9c\x6b\xe4\xd3\x29\xe7\xf3\xb2\xf0\x9d\xdc\xd0\x02\x61\x00\x04\xe1\x9e\x29\x60\xa4\x37\x4e\xfc\x67\x95\x3b\xfd\x6c\x6b\xc9\xc1\x41\x83\xf0\x64\x08\x4d\xc4\x60\x59\xf3\xb7\x00\xc9\xf1\xae\xd9\x6d\x41\x52\x9e\x35\x41\x5b\xd2\xd5\x2c\xc1\x1f\x88\x3d\xcb\xfd\x52\xdc\x18\x73\x07\x8a\x68\xae\x5c\x53\x1c\xba\x4d\x26\x7e\x7c\x27\x98\xf8\x9c\xe8\xe4\xcc\x77\xca\xc4\x07\xf7\x4c\x7c\x23\x13\x7f\x51\x64\xe2\x2f\x6e\x93\x89\x9f\x55\x30\xf1\xb3\x06\x26\x3e\xae\x67\xe2\x17\x05\x66\x7a\xf1\xc5\xb9\xf9\xbc\xa0\x98\x60\xef\xc5\x17\xe4\xe3\xf3\x72\xd0\x57\xd0\x1b\x5d\x6a\x4a\x2b\xd8\x21\x81\x3e\xd8\x5b\xae\x34\x80\x92\xd1\x3f\xa1\x45\xe4\x30\xb7\x3b\xa6\xec\x05\xf4\xa7\xe6\xdd\xed\x2e\xf1\x10\x8d\x3c\x36\x44\x23\x71\x25\x62\x93\xfc\xec\xef\x9b\x3f\x01\x2e\x10\x9f\xfd\xfc\x03\xe0\x64\xb4\x08\x5f\x5f\x63\x93\xf8\xba\x07\x07\x0e\xce\xd3\x26\xec\x91\x44\x33\xe3\x76\x19\xba\x44\x2c\x52\x7f\x05\xb1\x8f\x8c\x09\x9a\xdc\x01\x4b\x40\x7c\x7d\x4d\x56\x2e\xc0\x2e\xa0\x07\x07\x0a\xd5\xf6\x3d\x2f\x37\x9e\x1c\x4e\xce\x26\xff\xfc\x19\x2e\x5f\x09\x54\x5f\x09\x20\xf7\x32\x11\xb3\x5c\x90\x22\x73\x71\x84\xfa\xad\xc5\x72\x79\x71\x18\xba\x00\xdf\x44\xd2\x43\xdd\xd7\xe7\x6f\x9f\x9f\xbe\x30\x59\x38\x0f\xd5\xf0\x76\x5a\x2e\xac\x7d\x6f\x07\xbe\xbd\x57\xd9\xa5\x4d\x22\x3b\x91\x27\x1d\xe2\xbd\x98\x5d\x20\xd6\xc5\x24\x39\x42\xec\x52\x6c\x92\xed\x87\x18\x11\xae\x98\x1d\x17\xb0\x9a\x56\x88\x5c\xda\x2e\x08\xbf\x1b\xb1\x74\xae\xc5\xd2\x50\x8b\xa5\xc9\x59\xf4\x02\x27\x34\xc4\xd2\x54\x83\xbd\x17\x29\xf2\x2b\x5e\x26\x1c\x01\xf7\x52\x22\x9d\x70\x05\x80\x78\x62\xf5\xcf\x19\x83\x0b\x87\x0b\x68\xf7\x9e\xb2\xbf\xf2\xa7\xec\x87\x1f\x5c\x32\x64\xa3\xec\x83\x21\x1b\xa5\x6a\x5f\x67\xe1\x20\x8f\x4a\xa4\x4e\x6e\x00\x0a\x86\x62\xb0\x91\x38\xa7\x3e\xe4\x0e\x11\x17\x54\xb2\x93\x36\xc0\x40\xd0\x6b\x17\xc8\x0f\x5d\x20\xf7\x0e\xc0\xe4\x21\xd2\xc2\x31\xf7\x42\xe0\x10\x2d\x1c\x8f\x29\x9b\x41\xfe\x3a\x9a\x43\xbf\x42\x56\x90\x9b\x2b\x25\x04\x44\x2e\xc5\xff\x1c\xfb\xf4\xcd\xeb\xf3\x0f\xaf\x3e\x2a\xa4\x3b\xff\xf8\xe2\xf5\xf3\x9f\x5e\xbd\x38\xb3\xdd\xe4\x0e\xb6\xc5\x0d\x83\x9e\x4d\x85\xd0\x22\xb0\x10\xa0\x94\x41\xd3\x72\x89\x1a\xf2\x0c\x72\xe8\x23\xc2\x11\xab\x1a\x36\xd5\x4f\x89\x6e\x02\x5f\x74\xa3\x44\x83\xb1\x63\xee\x32\x71\x01\x93\xcf\x00\x73\x41\x68\x8a\x06\x00\x7b\x97\x8e\x43\xbd\xd0\x35\x9a\xa7\x90\x1a\x92\x91\xc4\x90\x1c\x61\xce\x93\x6d\x13\x55\x0c\x32\x31\x10\x68\xb9\x72\x01\xf4\x2e\x73\x42\x8a\x02\xf6\x90\xdd\xb4\x5f\xba\x89\x50\xe3\x53\xca\x02\x4c\x20\x47\x1b\xd9\xdc\x4a\xa2\x4d\x8a\xd5\x06\xec\x1d\xf2\x67\x15\x65\x58\x6a\xbe\xc8\x43\xa1\x64\x5e\x28\x5c\xba\x37\xb7\x32\x54\x58\x4b\xb2\x2d\x3c\x24\x34\x40\x51\x66\x50\xb3\xac\x7f\x76\xde\x29\xb9\xbb\xf3\xf2\x6c\x60\xad\x35\xa7\xb0\xb5\xe6\x14\x7a\xab\x72\x11\xbe\x13\x72\x11\xcc\xc9\x45\x70\xa7\x72\x51\x78\x2f\x17\x35\xca\x45\x7e\x51\x2e\xf2\x6f\x53\x2e\x8a\x2b\xe4\xa2\xb8\x41\x2e\x22\xdf\xbe\x71\xc3\x37\xe8\xb3\x7f\xe7\x8c\x1b\xd1\x77\xc3\x45\x42\xcd\x45\x46\x26\x17\x19\x03\xdf\x0b\x9d\xc8\xe0\x22\xa3\x8c\x52\x53\x85\xad\x91\x0b\xfc\x66\xe3\x06\xf7\x22\x83\x7f\xdb\xd4\xb8\x41\x53\xab\x03\xf6\x78\x37\x66\x38\x33\x1f\xb0\xcc\xc8\x81\xb5\xf9\x80\xae\x12\xbe\x0b\x17\xf9\xae\x58\x3e\x03\xb1\x0b\xa2\x1a\x95\x6c\xb4\x86\x7b\x11\x6c\xdd\x3d\xd7\x72\x37\xb9\x16\xc8\x61\x48\x27\x87\x41\xca\xc4\x47\xf7\xec\xc8\x3d\x3b\x72\xcf\x8e\xdc\xb3\x23\xf7\xec\xc8\x3d\x3b\xd2\xc0\x8e\x18\xa6\x6e\xe6\xb8\xb7\xc8\x5c\xe0\xc8\xa7\x97\x88\x2d\x3a\xfe\x14\xe2\xf5\x36\xdf\x7b\x4e\xc3\xe0\x34\x0c\xa6\xd1\x34\x38\x28\x6a\x99\x1d\xcd\x37\x57\x44\x1f\x3e\x35\x48\xa4\xaf\xd4\xa6\x36\xa2\x1b\x2e\xee\x4c\x8f\x75\xc7\x38\xe4\x88\x19\xd6\x81\xec\x72\xab\xec\xe2\x0c\x45\x3e\xc3\x73\x4e\xd5\x1c\x8d\x6b\x5a\xde\x01\xa4\x3b\x8f\xa3\x69\x82\xaf\xd2\xbf\x20\xe9\x8c\xe4\x98\x8e\x8c\x29\xe0\x5e\xff\x29\xff\x6b\x51\x5b\xfb\x94\x6b\xe6\x80\x78\xea\xb8\x67\xea\x59\x3e\x7a\x66\xfe\x18\x2c\x57\x7b\xfc\x3f\x8f\x9e\xb1\x04\x2c\x0e\x11\x37\x51\x95\x61\x46\xd0\x14\x65\xee\x18\xf2\x91\xbb\x72\xdd\xc1\x9a\x15\x46\x95\xa6\x26\xc5\xb3\xad\xfb\xd4\x21\xae\x3b\x30\xe6\x54\x33\xa1\x7a\x83\xc7\x3a\xe8\x13\xc0\x5d\xb1\x88\x55\xd9\x70\x87\xbf\x92\xdd\x0c\x7e\x4b\x0c\x72\x81\xfc\xe4\x5d\xe5\x37\xd6\xec\xb5\x71\xa8\xbf\x4d\x56\x3a\xbe\x13\xac\xb4\x9f\x63\xa5\x6b\xf8\x91\x2d\x59\xe9\xe8\x9e\x95\x6e\x64\xa5\xe7\x45\x56\x7a\x7e\x9b\xac\xf4\xb8\x82\x95\x1e\xdf\x6d\x56\x7a\x6e\x70\x16\x35\xce\x3a\xdf\x30\x2b\x1d\x7c\x37\xac\xb4\xaf\x59\xe9\x71\xde\x3e\x8c\xbd\xc8\x19\x1b\xac\xf4\x38\xa3\xd4\xa1\xc2\xd6\xb1\x0b\xf0\x3a\x56\x7a\x5c\xcf\x4a\x6f\xe0\x55\x4c\x22\xa9\xdc\x53\x6a\xbe\x50\x3a\x17\x83\x38\xd1\xf6\x99\x38\x1e\x6e\xe3\x64\x0c\x1d\x17\x84\x5a\x4f\x18\x03\xea\x50\xe9\x9f\x3a\xc5\x51\xd7\xb4\x25\x3b\xcc\x75\xc1\x32\x75\x43\xc6\x2b\xcd\xeb\xc7\x15\x06\xdc\x58\x19\x70\xc7\x35\xbc\x7e\xb0\x86\xd7\x97\x2e\x0c\xeb\xc2\x2a\x6b\x82\x2d\x91\x58\x77\x39\xb0\x30\xb9\xd0\x94\xb3\xe7\x5e\x5e\xa3\x92\x9c\xd2\xf0\xcf\xca\xff\xc7\x77\xc9\xd5\xd3\xbf\x55\xc6\x27\xba\x13\x8c\x4f\xee\xea\x73\xc6\x3b\x65\x7c\xe6\xf7\x8c\x4f\x23\xe3\xb3\x28\x32\x3e\x8b\xdb\x64\x7c\x82\x0a\xc6\x27\x68\x60\x7c\xc2\x7a\xc6\x67\x56\x60\x40\x66\x5f\xcf\xd5\x73\x61\x50\xd5\x9a\x68\xc3\x6f\x98\xf7\xb9\x00\x53\x70\x09\x26\xe0\x0d\xb8\x02\xbf\x79\x95\xd7\x48\xc9\x1f\xec\x6f\xc7\x86\xa3\x63\xa6\x4f\x38\x36\x95\x0b\xc7\x52\xb9\x90\xc5\x51\x94\x42\x34\x8c\x28\x8b\xa1\xc1\x2d\xd8\x99\x73\xd8\x48\xde\xab\xa5\x00\x8d\xc2\x87\x3a\x3e\xa3\xea\x43\x26\x88\x01\xf8\x58\x58\x56\x3e\xc0\xa3\x3c\x31\x33\x90\xa7\x69\x6a\x02\xf1\x4b\x93\x2b\x7e\x5c\x37\x3d\xf5\xb1\x9a\xe0\x5b\xcf\xa9\x73\x60\xcc\xbb\x39\xc2\xef\x86\x51\x1d\x57\x38\x32\x0a\x7e\x06\x7a\xf3\x1a\x47\x46\xff\xb6\x1c\x19\x63\x67\xe6\x20\x0f\x9a\x8e\x8c\x70\x8d\x23\xe3\xac\xc2\x67\x91\xa5\x9c\xf1\xdc\xaf\x0f\x6b\x52\x91\x84\x18\x40\x4f\xf2\xa4\xaa\x4b\xc1\x05\x8b\x5f\x11\xa7\x0c\x09\x5e\x58\x2c\xd4\xf7\x42\x81\x26\x09\x8f\xf1\x33\x65\x0e\xd3\xd4\xa9\xe2\xf6\x21\x5d\xc8\x39\xc3\x17\x31\x47\xd1\x33\x87\x7a\xe6\x6f\xc7\x05\xd8\xf3\xb3\xce\x1c\x02\xc4\x85\x32\xc0\x1e\xf5\x08\x80\x3a\x7c\xaa\x52\xcf\x89\x9c\x18\x70\x80\x25\x36\xbb\x5d\x75\xfd\x38\x15\x74\x2d\xee\x4a\x56\x55\x12\x2f\xb7\xcb\xa7\x88\x54\x36\xe3\x8e\x0f\x90\xee\x2e\x75\xb9\x54\x5c\x6e\xb5\x7b\x67\x8e\x6b\x4a\xd1\x3a\x41\x75\xa4\x31\xc7\x1b\x2e\x23\x0e\x79\x1c\x0d\xec\xf4\x20\xa2\xae\x7a\x74\x4a\x03\xe4\x02\x8e\x79\x88\x06\xf6\xfb\x29\xb2\x2e\xa0\xff\x09\x91\xc0\x4a\x0e\x2f\x0a\xac\x2b\xcc\xa7\x42\x96\x48\x26\x12\x20\x0e\x71\x38\x40\xdd\x19\x8a\x22\x38\x41\xab\x91\xbc\xce\xa3\x2b\x2c\x6f\x5f\xb3\xdf\xa5\x0f\x23\x64\xf5\x06\x5c\x22\x1e\xe9\x3e\xbf\xa0\x8c\xcb\x29\x02\xae\x40\x12\x0d\x7b\xa3\xe4\x0b\xcf\xee\xd9\x7b\x17\x0c\xc1\x4f\x7b\xf2\xb3\x93\x5e\x3f\xfd\xf0\x03\x81\x31\x9f\x52\x86\xff\x40\x81\x3a\xb9\x0c\xd8\xb6\x9b\x6f\x7e\x9c\x36\xff\x99\xb2\x0b\x1c\x04\x88\xd4\xb6\x3d\x49\xdb\xbe\xa6\xfc\x67\x1a\x93\xfa\x6e\x1f\xa7\x4d\xdf\xe3\x19\xa2\xb1\x5a\x40\xbe\xcd\x93\xb4\xcd\x29\x25\xe3\x10\xfb\xbc\xae\xbb\xa3\xa3\xb4\xe9\x4b\x72\x09\x43\xac\x07\xd6\xcd\x92\x5b\x6a\x20\xd5\x9e\x29\x28\xff\xe6\x3d\xe8\xf5\x9e\xa9\xef\xce\x11\xbb\x44\xcc\x18\x60\xa0\x9e\x27\x5f\xaa\x67\xab\x84\x1b\xa2\xee\x92\x7b\x74\xa5\x30\x82\xa7\x48\xf5\x7b\x9d\xc3\x89\xa1\xfc\xfd\x4d\xd1\x14\x23\xc4\x0f\xd8\x89\x65\xc8\x08\xd6\xfc\xbd\x59\xc0\x6d\xd3\x9f\xfe\xda\xe8\x75\x8c\x49\xf0\x3c\x0c\xab\x45\xe6\x86\xfe\x7e\x4e\xbe\x33\x22\x29\x9b\xc3\x65\xcd\x09\x7e\xac\xe8\x30\x1f\x6d\x6b\xcc\x30\x6e\x0e\x88\x5d\xd7\x6f\x3e\x9e\xd6\xe8\x37\x68\x0e\x79\x5d\xd7\x6f\x3e\x62\x96\x24\x82\x7b\x94\x13\xdc\x99\x0c\xd6\x88\x1c\x0e\x68\xd1\xf3\xfa\xc2\x73\xa8\x07\x4d\xbf\xeb\xa9\x97\x92\xf6\x4b\x6f\xc8\x46\x60\xe2\xdd\xc4\x4b\x1a\x5c\x79\xcb\x15\x30\x2d\x53\x93\x9a\x50\x98\xab\x21\x1a\x79\x93\x24\x14\xe6\x2a\x1f\x0a\x63\xfe\x04\x57\xc5\x50\x98\xab\xda\x50\x98\xab\xeb\xeb\xab\x62\x28\xcc\x55\x5e\x76\xbb\xf2\x2e\xdb\x84\xc2\xe4\x72\x9b\x38\x82\x8f\x44\xee\xf5\x35\x5a\xb9\xe0\xca\x05\x6f\x0c\x0e\xf1\xaa\x10\xa8\x72\x95\x84\xc2\xe4\x9e\x3f\xbb\x2a\x8b\xcc\x6f\xd2\x50\x98\xab\xe6\x50\x98\xe2\x08\xd5\xac\xb1\x98\xe2\x95\x58\x5e\x12\x0a\xe3\x5d\xe5\xfd\xd5\xdf\xae\x51\xd4\x60\xc2\x11\xe1\x6d\x42\x70\xd7\xa4\x88\xaa\xca\x05\x65\x98\x69\x99\x21\x50\xb0\x3f\xab\x9a\x86\x66\xf6\x2e\xc3\x00\x75\xf6\xe2\xd5\x8b\xf7\x2f\x12\xd7\x72\x42\x90\xcf\x33\xa8\x47\x87\xe8\x33\xf4\x79\x65\xce\x26\xba\xd6\xc4\xf4\x0d\xd8\xf5\x2a\xf2\x28\x35\x2f\xf2\xa6\x46\xb5\xaa\x91\x33\xcf\xfd\x75\xe0\xb5\xac\x53\xe8\x4f\x51\xe7\x94\x12\xce\x68\x38\xb0\x08\xed\x48\x0e\x74\x27\x29\xad\xd2\x77\x05\x7e\x4e\xf2\xe6\x5d\x1c\x29\x1e\x1d\xe9\xc0\x1c\x65\x72\x28\x6a\x81\x6a\x14\x39\x0a\x19\xaf\xaf\xf7\x9d\xc2\x81\x10\x7b\x9e\x58\x95\x91\xab\xbb\xde\x53\xba\xb1\xe1\x08\x30\x6f\xbf\x07\xa8\xb7\xdf\x07\x58\x8b\xc8\x82\xaf\xd3\xf2\x04\x04\xa1\x87\x86\x85\x2e\x47\x8e\xfb\x74\xdf\x61\x9e\x03\xbd\xb0\x4b\xd0\x67\xee\xb8\x6e\x37\xa0\x04\x09\xc2\xaa\x2c\xfa\x0e\x54\x04\xcf\x05\xfb\xfc\xfa\x9a\x24\xb2\x88\x94\xc8\x9e\x8a\x21\xdd\xa7\x09\xa7\x12\xbb\x4b\x2a\xa6\x80\xbd\x78\x35\xc6\x04\x86\xe1\x62\x29\xf5\x44\xd7\xd7\x82\x64\x79\x5e\xd8\x55\x53\xbe\xbe\xd6\x7f\x39\x6e\xda\x12\x8f\x1d\x9d\x77\x03\xaf\x32\xd7\x01\x09\xa9\x0a\xc0\xed\x23\xbd\x7e\x01\xc5\x48\xaa\x9c\x32\x10\xea\x97\x89\x86\x72\x2f\xe7\x4e\x51\xa7\xab\x42\x6e\x72\x6f\x3c\x06\x9d\xbe\xbb\x67\xab\xe6\xb6\xe7\x79\xa4\x40\x3d\x04\x6c\xbc\xdc\x93\x2e\x81\x33\xa5\x8b\xb2\x7f\x81\x73\xf9\xcd\xf5\xb5\x7d\x8e\xd4\xe7\x7a\x36\x0a\x3b\xc6\x8c\xce\x12\xc5\x95\xfd\x5c\x4b\x6c\xc9\x27\x87\xff\xcf\x79\x36\xf8\x80\xaf\x5f\xba\x84\x3b\xcf\x06\x8f\xaf\xfb\x0f\xaf\x8f\x8f\x5c\xe7\xd9\xe0\x34\x84\xb3\x39\x0a\xdc\x67\xb2\x93\xff\x38\xec\x72\x21\xd4\x10\x37\xbf\xd2\x12\xbc\xdc\x65\xa5\xd8\x9c\xb0\xae\x16\xe4\x1c\xcd\xe6\xdc\xe2\xd4\x92\x89\xe5\x62\x9f\xc7\x0c\x59\x84\x92\x8e\x44\x91\x8b\x30\x93\x50\xba\xff\x26\x2f\x89\x45\x59\x80\x98\x68\x7f\x81\x2c\xdd\x04\xc8\x0f\xa0\x98\x98\xa5\xf4\x5f\x91\x92\xc3\xa7\xf0\x12\x59\xd0\xaa\xc0\x3a\x6b\x86\xf8\x94\x06\x5d\xdb\x5d\x39\x65\x8d\xb2\xa3\x10\x86\x5f\x5f\xf3\xbf\xa1\x04\xe3\x04\x46\x0a\x9e\x3a\xf9\xb5\x67\xe8\x85\x01\xcb\x09\xc6\x4f\xc9\x5f\xb9\xd4\x0f\xb3\x21\x19\x79\x48\x6a\x87\x13\xb7\xd8\xaa\xac\x6d\xed\xe8\x4b\xa3\x07\xc1\x4e\xf2\xba\x7d\xe9\x6c\x6b\xf3\x5b\xd5\xde\x07\x77\x42\x7b\x9f\x0b\xd5\x77\x66\x3b\xd5\xde\x2f\xee\xb5\xf7\x8d\xda\xfb\x69\x51\x7b\x3f\xbd\x4d\xed\xfd\x45\x85\xf6\xfe\xa2\x41\x7b\xcf\xbe\x7d\xb7\x05\x03\xd8\xce\xf4\xce\xa9\xee\x2f\xbf\x1b\x6d\xf0\x4c\x6b\x83\xa7\x5a\x1b\xcc\x80\x0f\xc6\xe0\xc2\x5b\x38\x53\x43\x1b\x3c\xcd\xee\x06\xe5\xc1\x03\xa6\x2e\xb8\x68\x76\x5b\x60\xde\x14\x38\xfe\x4d\xb2\xad\x29\x37\xd0\xa6\xd8\xa4\xc8\x8c\x4d\x4a\xe5\x62\xf6\xcc\xbc\x0f\x21\x99\xa0\x81\x95\x6a\x27\x99\x3b\xb0\xed\x34\x8e\x09\xa8\x31\xbe\xa5\xbc\x6d\x2a\xb7\x47\xec\xd0\x6e\x34\x0f\x31\x77\xec\x81\xed\x76\x67\x70\xee\x04\xc8\xa7\x01\xfa\xf0\xee\xe5\x29\x9d\xcd\x29\x41\x84\xbb\xe0\xc4\x05\xd0\xc3\xc3\xde\x08\xf8\x1e\x1e\xf6\x47\x20\xf2\xf0\xf0\x68\x04\xc6\x1e\x1e\x1e\x8f\x32\x40\x85\x02\x50\x11\x8d\x99\x8f\x0c\x4d\x2d\x04\xf6\xa1\xed\xea\x5f\xbe\x10\xd2\x23\x8e\x89\x94\xaf\x8d\x66\x51\xae\xd9\xd8\x05\x37\x4f\x25\x97\x66\x31\x09\xbd\xe5\xb9\x9c\xd6\xeb\xf3\x01\xeb\xea\x3f\xc1\x59\x36\x11\xf9\x22\xf7\x1b\x24\xcd\xe0\x0c\x65\xdf\xc0\x19\xca\x7d\xa5\x5e\x16\x9e\x24\x5f\x8a\x73\x99\x7e\x29\x7e\x80\x5f\x10\x87\x03\xd6\x15\xff\x00\xed\xcf\x2a\x80\x20\x7b\xd0\xbf\x52\xb3\x9b\x32\x29\x4d\x90\x54\x88\x3e\x97\x6b\x4a\xd8\x07\xdb\x7d\x16\x76\xd5\x13\x8f\x25\x7f\x0c\x58\xf7\x2d\x62\x33\x2c\xcf\x7d\x74\x70\xe0\x84\xe6\x6f\x2f\xf7\xd6\x05\x49\xb2\x39\xa7\xbc\x5b\x34\x03\x8f\xb9\x1f\xd4\x80\x40\xdd\x0e\xd2\x02\x00\xf3\xdf\x17\x80\xe4\x36\x26\xd7\x23\x85\xe4\x7a\xe1\x16\x29\xfd\x4c\x7d\x81\x52\x4a\x5a\xbc\x30\xc3\xca\xc7\x62\x07\x55\x62\xba\x4a\x3c\xab\xa1\x47\x1b\xe7\xfe\x63\xb9\xd4\x7b\xb4\x66\x3b\x60\xf5\x76\xc0\x16\xdb\x01\x1b\xb6\x03\x6e\xb2\x1d\xb0\xb8\x1d\x89\x52\x36\x70\x98\x71\x3b\xf8\x2e\x18\xcb\x67\x60\xec\x82\x69\x8d\x37\xd5\xe5\x1a\x25\xdd\xa7\xcb\xad\xb5\x73\x31\xc7\x61\x74\x88\xa3\x9f\x69\x18\x48\x8f\xab\xe2\xab\x4f\x68\xf1\x9e\x4a\x19\xa9\x4a\xab\x27\x46\xae\xd4\xf5\x55\x3c\x25\x2a\x63\x49\x45\x46\x78\xe5\xb3\x65\x68\x03\xbf\x13\xa7\x2d\x2d\x4b\x5e\x54\x6b\x03\x3f\x5d\xd6\xe6\x6b\x8f\xd7\x4a\x86\x7e\x65\xef\x5a\x07\x57\xec\xda\xb2\x4e\xa9\x14\x5a\x3b\x92\xfe\x5a\x1c\x7d\xe6\x87\xf3\x10\x62\xf2\xd4\xf2\xa7\x90\x45\x88\x7b\x31\x1f\x77\x1e\xef\x2e\xed\xf9\x17\x9c\xd6\x26\xf9\xd1\x2f\x2a\xe4\x7a\x73\x5a\x3b\xc9\x8e\xfe\x27\x0d\xd4\x09\x6e\x25\x50\x67\xde\x26\x50\x67\xf6\x65\x03\x75\xe6\x5f\x27\x50\x67\xf6\x95\x14\xfa\x8b\x9d\x1c\x8f\xc5\xda\xe3\x71\xf1\xc5\xd5\x59\xd3\x5b\x55\x67\x5d\xde\x09\x75\xd6\x24\xa7\xce\x9a\xec\x54\x9d\xf5\xe6\x5e\x9d\xd5\xa8\xce\xfa\xad\xa8\xce\xfa\xed\x36\xd5\x59\x57\x15\xea\xac\xab\xed\x9c\x51\xbf\x15\x75\xd6\x6f\x06\xab\xf8\xdb\x9d\x53\x67\x7d\xfc\x6e\xd4\x59\x13\xad\xce\xba\xca\x9c\x1b\x43\x30\x07\x17\xde\x1b\xe7\xca\x50\x67\x5d\x39\x46\x2a\x41\x89\xad\x57\x6b\xd5\x59\xdc\xbb\x02\x4e\xb8\xb9\x3a\x4b\xaa\x83\x02\x5f\xea\xae\x48\x04\x60\x55\x04\x4e\x84\xe6\x50\x8a\x12\x37\x8f\xc3\x59\x38\x2e\x70\x7a\x80\xa5\x22\x9e\x13\xba\xc0\x99\x39\xc4\x5b\xae\x80\x2d\xd8\x40\x1b\x28\x37\x8d\x99\x43\x54\x0e\x45\x9a\xfc\x9d\xce\xc2\x06\xb1\x0b\x88\x0b\x02\x27\xa8\x0e\xe2\xc1\xb9\x20\x1e\xb8\xaa\x4c\x6f\xbf\x89\xf2\x8c\x16\xc3\x93\x60\x59\x87\x06\xb7\x01\xc7\xb8\x04\x0e\x98\x6a\x0c\x6b\x97\x47\x2b\x62\x94\x36\x55\x70\xa5\x5e\xde\xa1\x57\x1e\x27\x4b\x72\xe9\x90\x21\x2e\x48\xf0\x15\x13\x22\x43\xa8\xd3\xb9\xaa\x36\x79\x0d\x68\x7e\x81\x64\x48\xb3\x32\x01\x2e\x08\xc5\x89\xd8\x4e\x43\xb3\xdd\xf4\x05\xe4\xc6\x21\x9c\x44\x03\xd2\xfd\x59\xfc\x5b\x05\xe2\x86\x15\xf9\x5b\xae\x68\x8d\x52\x87\x83\x50\xad\xc8\x7f\xea\xf4\x00\x31\xce\x47\xae\xf7\x83\x03\xc7\x57\x7e\x4c\x49\x32\x10\xb1\xfc\x06\x00\x84\x6d\xf6\x2f\x2c\xae\x56\x02\x89\x21\x3f\x66\x11\x1a\xf8\x2b\x63\xf5\x71\xf9\xfc\xe6\x57\x1f\x25\x2a\x9e\xcb\x9c\xdf\x5d\xe8\x82\xb9\x7c\x06\xe6\x2e\xb8\xaa\x51\xf1\x7c\x5c\xa3\xe2\x21\x34\xb8\xcf\x18\xba\x55\xee\x2d\x58\x21\xb1\x28\x0f\xdb\xc3\x10\xc1\x00\xb1\x35\x51\xfe\xea\xc5\x3b\x34\x66\x28\x9a\x0e\xac\xe3\xde\x56\x69\xb3\x9a\x66\x83\x05\xb6\x12\x18\x1e\xc6\x58\xee\xf3\x0d\x53\x0f\xb4\xf1\x0b\xdb\x64\x3a\x37\x49\x70\xda\xa6\x76\xe1\x97\x16\xf9\xee\x13\x2f\xdc\x27\x5e\xb8\x4f\xbc\x70\x9f\x78\xe1\x2b\x89\x7c\xdf\x61\xe2\x85\xb9\x99\x78\x01\x82\xb1\x17\x39\x73\x43\xe4\x9b\x97\x12\x2f\xcc\x5d\x30\x5e\x27\xf2\xcd\x6f\x90\x52\xd5\x74\x08\x70\xa4\xa8\x27\x9d\x17\x0c\x5e\x0f\x67\xde\x0b\xf4\x36\x0a\xc8\x61\x25\x61\xc2\x8a\x1c\x0f\x78\x1b\x61\x4a\x5a\x42\xf5\x8c\x61\x8b\x19\xbf\x92\xbc\x4f\x2b\xe9\xaf\x2e\xe5\x2c\x2d\x84\x03\xd5\x77\x79\x93\xf2\x65\xc6\x6c\x37\x2d\x5f\x56\xf9\x69\x55\xf5\xb2\x52\x86\x0b\xa8\x32\x5c\x40\x17\xcc\xb7\xcc\x70\x91\x58\x3b\x6f\x18\x35\x51\x67\x33\xfd\x7e\x23\x27\x22\xd3\x6c\xf8\xe6\xbc\xc0\xb2\x42\x3f\x3c\x4c\x63\x06\xd7\x5b\x24\x36\x61\x95\xa3\x6a\x23\x2d\x81\x33\x24\x37\xe9\xf0\xa6\xb5\xbb\xa3\x0a\x83\x68\xa1\xf7\x5d\x05\x47\xdc\x70\xa8\x36\xe1\x0e\x55\x43\x69\x09\x63\x83\xa1\x36\x31\x74\x37\x0e\x15\x6d\x29\xc1\xb4\x31\x69\x7f\x69\x09\x66\x7c\xab\x12\xcc\xfc\x4e\x48\x30\xb9\x1c\x1a\x4e\xb0\x53\x09\x66\x76\x2f\xc1\x7c\x43\xc5\xf2\x16\x15\x12\xcc\xe2\x6e\xfb\x60\x7f\xad\x4a\x79\xbb\x91\x60\xa6\xdf\x8d\x04\x13\x68\x09\xe6\xc2\xcc\xc8\x11\x81\x85\x37\x73\x2e\x0c\x09\xe6\x22\xbb\x1b\x12\x79\xfb\xc2\x05\x8b\x75\x12\xcc\x85\x99\x20\x63\x13\x09\x46\x89\x10\xac\xc8\x9a\xfb\x8e\xe0\x6e\x13\xd6\x9f\xdc\x4c\x58\xc9\x86\x28\x98\x7a\x58\x3b\xe9\x44\xdc\xbb\x76\x41\x77\xbe\x66\x6e\x6b\xad\x36\x06\x93\x2f\x9d\xa6\x59\xae\xe8\xf2\x52\xba\x15\xf3\xae\xf6\x36\x4e\xfd\x84\xb9\xe9\x27\x0c\x9e\x9f\xbe\x8a\x06\xcb\xb7\x34\xc4\xfe\xe2\x4c\xe1\x76\x34\xe0\x5d\xf1\xb8\x9b\x7f\x2a\x1d\xbb\x2b\x12\x76\x2c\x5f\x9e\x0d\x50\xf7\xe5\x99\xb8\x93\xc1\x3b\x1a\xa2\x62\x37\xe6\xb3\x36\x9d\xac\x2a\xc1\xb1\xd6\x0a\x64\x82\x03\x96\xc1\xf1\x27\x00\xc1\x5a\xb3\x91\x09\x02\x5c\x04\x41\x55\x8f\xcf\xb5\x6c\xb0\x71\x56\xc6\xbc\xa8\x2d\x25\x60\x40\xa2\x01\x03\xda\x12\x09\x86\xcb\x77\x48\x7b\x22\x0b\xca\xaa\xcc\xb5\xcf\x7d\x1f\x45\xd1\xc0\x16\xc4\x06\xd9\x2b\x63\x56\xb0\x69\x2e\x37\x91\x98\xd3\x45\xd6\xc8\xcb\x46\x06\x83\x9a\xe7\x62\x47\xaa\x25\xe5\x79\x31\xa5\x44\x24\x9f\x81\xc8\x05\x17\x35\x92\xf2\x74\x8d\xa4\x4c\x71\xe0\x77\xe6\x8c\x5e\x62\xa9\x3d\xd8\x52\x60\x96\xc5\xfc\x4a\xde\xcb\x84\x92\x0e\x9a\xcd\xf9\xa2\x13\x21\x5e\xe5\x7a\x6c\x64\x1f\x02\x21\x88\xf7\x4c\x0d\xb9\xa1\x1f\xff\x93\x8a\xd5\x35\xde\xb8\x5a\xac\x16\xd2\x74\x48\x27\x34\xe6\x6b\xa3\xe3\xb5\x6c\x75\xaa\x36\xe0\x3d\xfd\x84\xc8\x60\xa7\xce\xb8\xb9\x59\x09\x9c\x39\x14\x6c\xd6\x05\xf4\x3f\xdd\x38\x7c\xbf\x8d\xdf\x6e\xbb\x29\x89\x33\xdd\x89\x59\x78\xe3\x29\xcd\xd7\x4e\x29\xf8\x53\xbb\x12\xcf\x6e\xc5\x95\x38\x68\xe3\x4a\x7c\xfe\x65\x5d\x89\x83\xaf\xe3\x4a\xdc\xec\xd2\x6b\xda\x80\x25\x7d\x96\x88\xad\xa2\xef\x6f\x62\x0f\xfe\x66\x5d\x80\xef\x4a\xf2\xdc\xcb\x5b\x55\xfd\x4c\xee\x84\xea\xe7\x4d\x4e\xf5\xf3\x66\xa7\xaa\x9f\xab\x7b\xd5\x4f\xa3\xea\xe7\x6d\x51\xf5\xf3\xf6\x36\x55\x3f\xbf\x55\xa8\x7e\x7e\x6b\x50\xfd\xf8\xf5\xaa\x9f\x8f\x05\x15\xcc\xc7\xaf\x97\x3c\xf7\xad\xc1\x5a\xbe\xfd\x82\xda\x9f\x74\x02\xe7\x5f\x36\x8c\xe4\xc6\x5a\x27\x10\x7b\xd2\x2f\x10\x91\x4b\xb7\xbe\x9c\xf9\xb3\xbc\x6f\x9e\xfd\x5a\xab\xfe\x6d\x77\x50\xba\x75\x96\xab\x95\xd4\xe7\xbc\x00\x9f\xc0\x67\xf0\x0e\x9c\x82\x33\xf0\xde\x73\xe8\x7d\x4d\x7d\xa9\xf8\x7a\xa3\x15\x5f\xb8\x58\x53\xff\xca\xc1\x86\xe2\x2b\x35\x8f\xed\x5d\xaa\xa3\x8a\x77\x9e\x8a\x76\xea\x7c\x6c\x57\x53\x3f\xa9\x9d\xff\xb1\x98\x87\x16\xdf\xd0\x51\x80\x44\x4d\x69\x0e\x16\x66\x9a\x83\x99\x93\x16\x61\xad\xae\xaf\xb0\x0b\x07\x02\x3d\x9f\xed\xd3\x18\xa4\x93\x9f\x67\x93\x9f\x39\x33\x67\xb9\x02\x71\x5a\x05\xe2\x79\xcc\xa7\xbf\x48\x86\x6f\x40\xc1\x3b\x14\x60\x86\x7c\xfe\xe1\xdd\x4b\x23\x56\x5a\x2e\x11\x91\xcb\xee\x25\x64\xe9\xb9\xfc\xe9\xf9\xf9\x8b\x8f\x1f\x5e\x7e\xfc\xf0\xee\x95\xed\x02\x3b\x2f\xaa\xd9\x6e\xb5\xc7\xf6\xc6\x7a\x19\x05\x01\xb9\x1d\x3e\x0d\x90\x74\xa4\x88\x38\xe4\x68\x6b\xa0\x6c\xe1\x82\x21\x46\x2e\x7c\xd9\xd2\x13\x5e\x4e\xb5\xe8\x0c\xdf\x6a\x27\x4e\x69\x80\x06\x18\x9c\x8b\x0e\xea\xdc\xfb\x5f\x49\x99\x7d\x8d\x82\x37\x8f\x3e\x64\x1b\xf4\x89\x1c\xd7\xcc\x61\xfa\xd5\x14\x5a\xb5\x0e\x20\x15\x1f\x16\x95\x5a\xc9\xdc\xc3\x5a\x90\xdd\x64\xe2\x6a\x23\xaa\x66\x6d\xdc\x43\xd5\x8a\xb6\x49\x45\xd1\x95\x89\x2a\xba\x82\x73\xb9\x5b\x5f\x78\x0e\xf6\x42\x33\x77\xeb\x27\x4f\xd1\xc2\xcf\xde\x90\x8e\xc0\xbb\x9b\x25\x6e\x3d\x2b\x26\x6e\x7d\x57\x93\xb8\xf5\x6c\x88\x46\xde\xbb\x24\x71\xeb\x59\x3e\x71\xab\xf9\x13\x9c\x15\x13\xb7\x9e\xd5\x26\x6e\x3d\xbb\xbe\x3e\x2b\x26\x6e\x3d\xcb\xcb\x0d\x67\xde\xe7\xcd\x13\xb7\x8a\x5b\x5f\x27\x6e\x3d\x73\xc1\xa9\x91\xb8\xf5\xac\x90\x56\xf5\x2c\x49\xdc\x9a\x7b\xfe\xec\xac\x2c\xae\x9d\xa6\x89\x5b\xcf\x9a\x13\xb7\x16\x47\xa8\x66\x8f\xc4\x14\xcf\xc4\xf2\x54\x44\x10\xf4\xce\xc4\xdd\x9a\x71\x46\xef\xd7\x68\x55\xe7\x52\x91\x7f\x53\xff\x23\xdd\xcb\x86\x39\x1e\x76\xa0\x98\xbd\xcf\x09\x51\xe9\x6e\x04\xfd\x30\xd9\x94\x5b\xcb\x0d\x51\x35\xc4\x6d\x26\x7d\xc8\xc6\x5b\x3f\xd6\x4d\x33\x39\x6c\xba\xb6\xfb\x8c\x0e\xf7\x19\x1d\x6e\x55\x0d\xfb\x6d\x66\x74\x48\x8f\x09\xd6\xd1\x3f\x77\x52\xa9\x7b\x9f\xd7\xe1\x3e\xaf\xc3\x7d\x5e\x87\x0a\x3d\xe9\x7d\x5e\x87\x5a\x25\xa9\xcc\xca\xb0\x77\x73\x95\xe5\x47\xcf\xe9\x01\xdc\x42\x65\x09\x37\x55\x59\xbe\xfd\x6e\xb4\x90\x93\x8a\x00\x22\xe9\xa8\xe1\xbd\xa9\x0b\x20\x9a\xa6\x01\x44\x61\x8b\x00\x22\xbc\x2b\xbd\xa0\x46\x63\xa9\x94\xca\x29\x05\x6b\x33\x19\xe4\xab\xad\xd2\x9b\x27\x6a\xa8\xd4\x55\x16\xd4\x3c\x5b\xc5\x16\x8d\xcd\xd8\xa2\x9b\xad\xa7\x6d\x66\x06\xea\x35\x26\x36\x60\x85\xb8\xfe\xbc\x4a\x8a\x82\xc0\x69\xe9\x0d\xf8\x2e\x0e\x51\x34\xe0\x5d\xf9\x2f\xc8\xc6\x10\xcf\x8c\x5f\x2b\xf0\xd1\x51\x7d\xc9\xb5\x56\xeb\x71\xd7\x3a\xec\x25\x69\x55\x71\xd3\xda\x68\xc3\xda\x7c\xb1\xb6\x9c\x93\x1f\xfe\x3a\x2b\x5d\xeb\x97\x87\xd5\x4a\x61\x73\x82\x0a\x5c\x5a\x6b\x55\x3e\x93\x21\xad\xcb\x46\x11\x0b\xbc\xcc\xc1\x03\x56\x26\x60\xc0\x32\x9e\xeb\xb2\x39\x9e\x6b\x5d\x21\x9c\xb9\xe0\x32\xee\x33\x30\x6c\x92\x81\xe1\xcf\x2c\x18\xd3\x5b\x11\x8c\x59\x1b\xc1\x18\x7f\x59\xc1\x98\x7d\x1d\xc1\xf8\x1b\xa8\x5d\x94\x3b\xbc\x25\xa1\x75\x2f\x8f\x61\x37\x97\x5d\xab\x0a\x8a\x40\x0e\x43\x3a\x49\x0b\x8b\xac\x4f\x0c\x92\xbe\x48\x52\xab\xef\x22\x6a\xf0\x3e\x5d\xc6\x7d\xba\x8c\xfb\x74\x19\xf7\xe9\x32\xee\xd3\x65\x7c\x99\x74\x19\xe3\xbc\xcf\x0d\xf6\x22\x67\x6c\x48\xbb\xe3\x52\xba\x8c\xb1\x0b\xf0\x3a\x69\x77\x7c\x73\x2f\x18\x5c\x95\x1f\xb1\x98\xbd\x62\xab\xcc\x88\xd0\x71\x41\xa8\x25\xcc\x18\x84\x80\x3a\xb4\x8d\x94\xa9\xf2\xff\x55\x66\x70\x60\x2a\x83\x03\x73\xc1\x78\xcb\x0c\x0e\x8c\x86\x37\xce\xdf\xa0\xfa\xb8\xb7\x9e\x7e\x43\xd6\x53\xb1\x25\xb7\x6a\x3b\xcd\x0f\x70\xdb\x96\x53\x31\xda\x97\xb1\x9b\xb6\x5f\xd7\xbd\xd5\xf4\xde\x6a\xfa\x9d\x5a\x4d\xc5\x21\xb9\x37\x99\xde\x9b\x4c\xef\x4d\xa6\xf7\x26\xd3\x7b\x93\xe9\xbd\xc9\xf4\xde\x64\x7a\x6f\x32\xfd\x73\x99\x4c\xdf\x26\x7e\x61\x03\xde\xd5\x7f\x82\x73\x15\x27\xf5\x32\x40\x84\x63\xae\x5e\x96\x9e\x81\xd7\x34\xc8\x37\xc9\x3f\xf8\x13\x18\x59\xbf\x2e\x6c\xbe\x47\xb3\x6c\x12\xa1\xd7\xd1\xec\xea\xbd\x85\xf6\xde\x42\x7b\x6f\xa1\xbd\xb7\xd0\x7e\x29\x0b\xed\x14\xc1\x90\x4f\x35\x19\xba\x37\xd0\xde\x1b\x68\xbf\x3b\xb9\xfd\xde\x40\x7b\x6f\xa0\xfd\x2e\x64\xeb\x7b\x03\xed\x96\x06\xda\xcd\x65\xf4\x54\x37\x10\xf8\x40\x2e\x4d\x2f\x2c\x2b\xd6\x50\xac\x36\x2f\xfb\xac\x2b\x33\x7f\x4b\x26\xe2\xe4\xda\xbf\x17\x3a\xb6\x29\xcc\xe5\xef\x82\x9d\x6a\x62\x9d\x36\xa9\xcb\x65\x4e\xa6\x3a\x0d\x5a\x32\xa7\x5c\xf6\xb3\xc6\x29\x6d\x5f\x72\xe0\xcf\x2c\x96\xc1\x5b\x11\xcb\x70\x1b\xb1\x2c\xfc\xb2\x62\x19\xfe\x3a\x62\x59\xf8\x95\xc4\xb2\x78\x83\xb3\x34\x81\x1c\x5d\xc1\x45\x47\x9f\xa9\x8e\xac\x33\x57\x3c\xee\x45\x31\x69\xb3\x33\xb7\xb1\x5f\xc7\x97\xb6\xb7\x46\xb7\x2a\xb7\x8d\xef\x84\xdc\x36\xcf\xc9\x6d\x35\xcc\xef\x96\x72\x5b\x70\x2f\xb7\x35\xca\x6d\x8b\xa2\xdc\xb6\xb8\x4d\xb9\x6d\x56\x21\xb7\xcd\xee\xb6\xdc\xb6\x30\xf8\xb5\xc5\x9d\x93\xdb\x2e\xbe\x1b\xb9\x6d\xae\xe5\x36\xdf\x94\xdb\x30\x08\xbd\xc0\xf1\xdd\xbd\x9c\x6b\x9f\xf6\x97\x53\xd8\xea\xb7\xb0\x89\xfa\xbb\x96\xdb\x92\xcb\x11\xf8\xf9\x54\x73\x69\x86\xa2\xf0\x99\xb2\xb1\xa4\xf2\x58\x08\x7c\x00\x1d\xd8\x56\x1e\x1b\x18\x29\xec\x57\x9b\x7d\xba\xeb\x52\xe2\xbb\x16\x53\x59\x5e\x4c\xad\x5d\x59\x55\x15\x71\x21\x22\x8e\x8b\x22\x22\x96\xcf\x00\x76\x81\x5f\x23\x22\x5e\xac\x15\x11\xe5\x49\xb8\xa9\x23\x71\xda\xcd\x86\xbe\xc4\x95\xbe\xc1\x86\xcc\x89\x0d\x1a\x86\xff\xac\x32\x67\x66\x31\x98\x57\x78\xd1\x26\xa0\x3d\x0c\x50\xc4\x19\xad\xcf\xab\xb4\x49\x81\xb5\x79\x55\xd1\xe9\x64\x1c\x4c\xc6\xb4\x9d\x1f\x6d\x9b\x3a\x6b\x7f\x66\x59\xd1\xbf\x15\x59\x31\x6e\x23\x2b\x46\x5f\x56\x56\x8c\xbf\x8e\xac\x18\x7d\x25\x59\x71\xdc\xea\xa0\xec\xa0\x16\x7a\x6b\x4f\xf4\x2f\x28\xf7\x05\xb7\x2a\xf7\xcd\xee\x84\xdc\x97\xab\xdf\x56\xc7\x3c\x6f\x29\xf7\x5d\xdc\xcb\x7d\x8d\x72\xdf\x65\x51\xee\xbb\xbc\x4d\xb9\x6f\x5a\x21\xf7\x4d\x1b\xe4\x3e\xfc\xed\xcb\x7d\x97\x06\xcf\x74\x79\xe7\xe4\xbe\xc9\x77\x23\xf7\x2d\x2a\x7d\x61\x63\x10\x79\x17\x75\xbe\xb0\x41\xea\x0b\x1b\x7d\x49\x5f\xd8\x9d\x97\x03\x1f\xe7\xcb\x81\xfb\x8e\x7f\xd7\x3d\x6a\x43\x73\x45\x37\x5b\x4f\x5b\x3f\xc9\xd0\x2b\x8f\xb3\x43\x3f\x49\x58\xf2\x93\x0c\x13\x31\x74\x56\xf4\x93\x8c\xe5\x33\x10\xd7\xfb\x49\x4e\xd6\x88\xa1\x9c\x7e\x42\x37\x16\x42\x93\x4e\xbe\x5e\x38\xab\xdc\x15\x10\x03\x1f\x44\x60\xbc\x57\xe3\x40\xf1\x27\x15\x62\x83\x94\x67\xfe\x58\x13\x0a\x2a\xb7\x47\x30\xcc\x87\x7e\x48\x09\xaa\x14\x62\x83\xb5\x0c\xf1\xac\x72\x1c\x33\xc6\x4d\x8d\x13\xa1\x70\x9c\xe7\xcc\x6b\x6a\xbf\x6d\x59\x01\x6d\xb6\x76\xa6\x8b\xca\x99\x16\xc2\x7d\x53\xa0\x54\x82\xa3\x4d\x1c\x5e\x6b\xb0\xaf\x17\xe8\x2f\xd6\x0e\x37\xad\x1c\x2e\x3f\x60\x2c\x7d\xe0\x9f\xb5\x32\x7c\x4d\xd7\x8e\x78\xd9\x6e\x81\xeb\x17\x77\xb9\x76\xa8\x49\x4b\xd4\x6a\x05\xcb\xc9\xda\xe1\xde\xfc\xa9\x95\x23\x57\xb7\xa2\x1c\x79\xd3\x46\x39\xf2\xfe\xcb\x2a\x47\xde\x7c\x1d\xe5\xc8\x6f\xed\xb0\xb5\x45\xb4\xef\x6f\x6b\x51\xf5\xe3\x17\xd7\x42\xbc\x75\xee\x50\xd5\xbb\xf3\x5b\x55\x99\xbc\xb8\x13\x2a\x93\x4f\x39\x95\xc9\xa7\x9d\xaa\x4c\x3e\xdf\xab\x4c\x1a\x55\x26\x67\x45\x95\xc9\xd9\x6d\xaa\x4c\xde\x55\xa8\x4c\xde\x35\xa8\x4c\xe6\xf5\x2a\x93\xd3\x82\xea\xe2\xf4\xeb\x55\xbd\x3b\x33\x98\xf4\xb3\xaf\x51\xf5\xee\xfd\x97\x55\x76\xdf\x3c\x1e\x7a\x7c\x6b\xf1\xd0\xaf\xc1\x73\xf0\x0b\xf8\x03\xbc\x04\xaf\xc0\x07\xcf\x09\x6b\xaa\xde\x49\x2e\xdd\x76\x41\xf4\xdd\xa8\x8c\x3e\x69\x95\x51\x5c\x0c\x9f\xfe\xec\xc4\x86\xca\x28\x75\x76\xdb\x3b\x57\x87\x35\xde\x79\xdd\xbb\xb7\xce\xa9\x83\xbc\xd0\xac\x7b\x17\x56\xd6\xbd\x53\xbb\x04\x7c\x70\x5a\xac\x7c\x17\xef\x5a\x45\xc5\x68\xa8\x4a\xad\xa9\x1a\x2a\x99\x2e\xe3\x37\xc7\x05\x4b\xf1\x76\x80\x81\x7a\x37\x80\x40\xe9\x6a\xae\x9c\xab\xbb\xae\x7b\x9a\x98\xba\xa7\x9b\xad\xa7\x7d\x34\x77\x71\x94\x96\xd1\xdc\x97\x32\x9a\xfb\xca\x59\x6e\x16\xa5\xfc\x8e\x26\xe9\xa1\xc5\xbf\xbb\x89\x59\x06\xaf\xa8\x0f\xc3\x01\xef\xca\x7f\x57\x60\xbc\x9b\xe8\xee\x74\x37\xf7\x3d\x8f\xaa\x74\xd6\x6e\xba\xfa\xa9\xe3\xb6\x8d\xf9\x06\x5c\x1d\x70\xdc\x04\xe9\xa6\x48\xf1\x8b\x8a\x48\xf1\x3b\x0a\xf7\xf6\x91\xe3\x65\xec\xdf\xa1\x46\x74\x51\x19\x39\x5e\x9a\xed\x39\x0a\xc7\x4d\x67\x87\x79\x44\x79\x1b\x91\x94\x0e\x90\x6e\x84\x7c\x86\x78\x36\xd6\x2c\x71\x81\x62\x2b\x71\xb4\xd3\x33\x5b\x75\x64\x43\x4a\x5a\xc1\x26\x37\xf5\x6d\xaa\x42\x4a\xaa\xa3\x34\xcf\xb7\x0a\xe7\xc0\x71\xc5\x9d\x96\x2d\x36\xaa\x85\xe8\xf6\xb5\x0f\xc5\x2e\x6d\x5a\xaf\x31\xff\x4d\x4d\xa9\x46\xa9\xdc\xac\x99\x6d\xba\x17\x62\xb2\x7b\xdb\x4d\xdc\xd8\xef\xfa\xf9\xa7\x26\x82\x64\xa3\x60\xab\x5d\x82\x6d\xb7\xc8\x80\x89\x71\x03\x3a\x5c\x6c\x9a\xb8\x8b\xca\xf5\x22\x5f\x54\xe4\x56\x78\xa1\x72\x2b\xc4\xb9\x7a\x91\xaf\x3d\x27\xf6\x22\xb3\x5e\xe4\x73\x4f\xf3\x10\xbf\x78\xc3\x70\x04\xfe\xb8\x59\xc5\xc8\x57\xc5\x8a\x91\x7f\xd4\x54\x8c\x7c\x35\x44\x23\xef\x8f\xa4\x62\xe4\xab\x7c\xc5\x48\xf3\x27\x78\x55\xac\x18\xf9\xaa\xb6\x62\xe4\xab\xeb\xeb\x57\xc5\x8a\x91\xaf\xf2\x32\xf7\x2b\xef\x97\xcd\x2b\x46\x0a\x8e\x59\x57\x8c\x7c\xe5\x82\x97\x46\xc5\xc8\x57\x85\x7a\x8e\xaf\x92\x8a\x91\xb9\xe7\xcf\x5e\x95\x55\x1d\x2f\xd3\x8a\x91\xaf\x9a\x2b\x46\x16\x47\xa8\x16\x2d\xc4\x14\x5f\x89\xe5\xa9\x8a\x91\xbe\xf7\x4a\x70\xa5\x99\x54\xf1\x61\xad\x89\x68\x4e\x43\x3a\xb9\x2f\x72\x70\x9f\x42\x23\x59\xdd\x7d\x0a\x8d\x5b\x56\x31\xdf\xa7\xd0\xa8\x0e\xb2\xec\x68\x5a\x74\x43\xf7\xbf\xfb\xe4\x19\xf7\xc9\x33\xbe\x6d\xcd\xf2\x7d\xf2\x8c\xfb\xe4\x19\xdf\x85\x66\xf5\xab\x25\xcf\xd8\x4c\x79\x58\x17\x9b\x24\xa3\xb1\x3e\x61\x12\xec\x34\x97\x06\x10\x3d\x0e\xfc\x15\x88\xbf\x6a\xc5\x83\xf9\x3c\xcf\xf3\xa3\xd9\x05\x62\x1d\x86\x22\x1a\x5e\x22\x96\x3e\x08\x29\x0c\x3a\x86\x24\x92\x17\x0f\xd4\xb6\x1f\x22\x72\x89\x19\x25\x62\x83\xaa\x3c\xb9\x0c\x01\x81\x1a\x27\x97\xfe\x59\x05\x04\x7c\xab\xfc\x05\xcc\xdd\xdc\x70\xa7\x37\x77\x78\x7f\x73\x37\xde\xdc\x51\xf1\xe6\x8e\x6e\xf3\xe6\x8e\x2b\x6e\xee\xb8\xe1\xe6\xa6\xf5\x37\xb7\x5f\xb8\x41\xfd\xaf\x67\x13\x8e\x0c\x12\x10\x7d\x0d\x9b\xf0\xf8\x8e\xd9\x84\xe5\xc5\x39\x37\x0f\xe4\x9f\x99\x67\x80\x9a\x67\x20\x40\x19\xa8\x9f\x67\x9a\x27\xc5\x43\x20\x2f\x74\x88\xc1\x3d\xe8\x03\x4a\xf7\xb0\x3e\x30\xa9\x5d\x16\x96\xed\xb2\xa1\x61\x97\x85\x2e\x88\xbd\xde\xd3\xf8\xaf\xf0\x69\xfc\xc3\x0f\x6e\x38\x8c\x4d\xbb\x6c\x3c\xca\x78\x68\xdf\xa1\x1e\x32\xed\xb2\xa8\x60\x97\x0d\xa5\x5d\x76\x26\xf7\xf3\x2d\x43\x63\xfc\xd9\x06\x4c\xef\x64\xd7\x7c\xee\x02\xd9\x9d\x0b\xec\x39\x0d\x7e\xa9\xf9\xa0\xf0\x2a\xfb\xe6\x5d\x7a\x43\x1b\xfa\x5d\x9a\x29\x72\x1c\xf3\xf2\x9f\x03\xa7\x07\x48\xe6\x29\x30\xaf\x9b\x52\x35\x93\xe0\xd3\xd9\x9c\x12\x44\x78\x67\x06\x09\x9c\x20\x16\x1d\x4e\x42\x3c\x9b\x89\xd1\x4d\xde\xe1\xc7\xe4\x69\xf6\xc1\x61\x67\xce\xf0\x25\xe4\xe8\x50\xb1\x11\xa5\x9e\xca\x4a\xc4\x8d\xcf\x49\xed\x07\xc9\x0a\xed\x9c\x1f\xdb\x7e\x0f\x4c\x10\x2f\xbb\x47\x58\x29\x18\x57\xab\x75\x60\x88\x0e\x3b\xc1\x82\xc0\x19\xf6\x3b\x28\x44\x02\x49\x3a\x50\x8c\x93\xc1\x22\xb7\xaa\x2d\xd6\x54\x79\xf6\x79\xe2\xaa\x71\xaa\xe7\xd1\x45\x9f\x39\x22\x41\x6e\xab\xf9\xc6\x73\xbf\x2b\xf3\x86\x84\x92\xc5\x8c\xc6\xd1\xa1\x64\x87\xbf\xd8\xb4\xff\xf1\xfe\x97\x57\x3f\x41\x16\x75\x39\x9a\xcd\x43\x41\xe2\x96\x38\x18\xd8\x1f\x1e\x7d\x7e\x3d\xfd\x85\x20\x1b\x5c\x84\xd4\xff\x34\xf8\xcb\x32\xe1\x07\x23\x7b\x30\xb4\x0f\x34\xf2\x8d\x80\x1d\x71\xc8\x25\xa4\xc5\x9b\x61\xff\x31\xe8\x03\x41\x53\x47\x23\x60\x4f\x61\xf4\xe2\x12\x86\xf6\x60\x0c\xc3\x08\x01\x3b\x9e\x5f\x42\x26\x9a\x8d\x56\x7f\x01\x33\xc4\xe1\x60\xa9\xce\xa7\xcc\x41\xde\x0a\x2e\xdd\xe9\x45\x64\x0b\x22\x4a\x92\xf9\x7f\x8c\x10\x4f\x41\xff\x5e\xaf\x81\x83\x9a\x4d\x59\x72\x38\x51\xa3\xd9\x2b\xd7\xdc\x21\xb2\x7e\x87\xe6\xf3\x0e\x12\x97\xca\xb7\xb1\x43\xff\x97\x8c\xc9\x98\xfa\xff\xaa\xde\xa1\x1f\xe5\x4c\xcb\xfb\xf3\x18\xd8\x62\x1d\x97\x18\x5d\xd9\x82\x5f\x1c\x8a\xff\x8d\xc4\xbf\x76\xb6\xa7\xc3\x65\xe1\xab\x23\x60\xff\xfb\xdf\xc4\xb2\xc4\xbb\xc7\xc0\x96\x03\x76\xa2\x90\xf2\xa4\x0f\xfb\x47\x02\x67\x48\xbc\xb5\xa7\x08\x06\x82\xf0\xb5\xed\x52\x75\xda\xef\x01\x7b\xda\x97\x7f\x1d\x8d\x80\xf1\xd2\x52\xd2\xa7\x6a\x04\x86\xc7\x47\xa0\x0f\x86\xb2\xab\x38\xb2\x47\xa3\x5c\x5b\xd9\xe6\xd8\x78\x24\x66\x61\xcf\x21\x83\x33\xc4\x51\x82\x78\xb9\x6f\x5a\xac\xc7\xa7\x84\x4b\x89\x6f\xb3\x05\x3d\x06\xb6\xdc\x81\x8e\x6c\x94\x76\xab\x77\x65\x28\x57\x22\xe6\x22\xcf\x4a\xeb\x29\xb7\x79\xbd\x93\x53\x97\xc7\xf5\x0d\x4f\xdd\x47\x8d\xa9\x6f\x48\xb8\x48\x9b\x39\x5b\x9c\x37\x81\xa7\xe5\xe3\x66\xee\x58\xb4\x83\x3b\xb6\xf2\xf8\x91\xe6\xe3\xf7\xee\x9f\xfe\xc5\x3f\xdf\xfe\xd7\xff\xa9\x3e\x7e\xe3\x10\x46\x53\xa9\x44\x48\x96\x63\x83\xf4\x59\x82\xbc\xc0\x16\x1c\xa4\x0d\x9a\x88\x69\x0f\xd8\x01\xbe\x94\x78\x7d\x02\x7a\xc6\xd1\x2d\x1e\x14\xf9\xe0\x31\x78\x58\x46\xa7\xe4\x6c\x25\xa7\x32\xf7\x99\xf8\xf9\x10\x0c\x8f\x1f\x81\xfe\x89\x44\xc9\x1e\x18\x1e\x3f\x04\xf2\x08\x15\x7e\x3c\x00\xfd\x23\x30\xb4\x7f\x8f\x51\x8c\xec\x14\x6d\x73\xff\xac\x3f\x1e\x3a\x84\x47\x9e\x0e\x09\x8d\xce\x0c\x45\x11\x9c\x64\xe7\x43\xc1\xc8\x3c\x1f\x6d\x0e\x5d\xb6\x90\xe3\xe4\xd3\x63\x30\xb4\x03\x3a\x4b\xa7\x6a\x76\x03\x6c\x21\x98\x36\xce\x51\xcf\xf3\x08\x14\x3b\x6b\x38\x87\xa0\xd8\x5d\x02\xdb\xbe\x09\xce\x5e\x32\x41\x01\x4d\xb9\x58\x21\xaa\xd8\x06\x21\x28\x36\x14\x83\x43\x25\x97\x8c\x36\x05\xf8\xbf\xb3\x18\x2a\x93\xd0\xce\x13\x84\xb2\x03\xc8\x61\x87\x50\x8e\xc7\x59\x68\xa4\x7e\x97\xd4\xf7\x84\x21\x62\xb2\xfb\xfe\x03\xd0\x4b\x67\xf7\x30\x99\xdc\xc9\x08\xd8\x96\xd9\x41\xc7\x96\x10\x7b\x90\xcd\xb4\x4c\xd0\x8b\xd3\x89\x38\xa3\x64\x52\x49\xfb\x0b\x8d\xd3\xf1\x1f\xa5\xe3\x67\xe3\x1c\x01\x7b\xbf\x7a\x8c\xe3\x0a\x8c\x7f\x92\xc1\x50\x92\xfa\x64\x37\x23\x49\xf3\xf3\x20\xd1\x83\x3e\xce\x16\xad\xd6\x98\x22\x07\xe6\x68\x26\x2f\x88\xe4\x77\x42\xe5\xd3\xc9\x8d\xb6\x40\x3f\x63\xfe\xa5\x73\x5d\xc4\x77\x35\xbf\x07\xc9\xfc\x1e\x8c\x80\x1d\xd2\x09\x8d\xc5\xbe\xd5\xe0\x4b\xfd\x24\xea\xfb\x15\x9b\x1d\xc5\xbe\x8f\xa2\x68\x9b\x8e\x2b\x56\x27\xfe\xfb\x17\x8d\x2d\xc8\x90\x45\xe8\x95\x15\xd2\xc9\x04\x05\x16\x8d\x79\xb7\xed\x19\xab\xe9\xf5\xfd\x14\x31\x64\x5d\xc1\xc8\x82\xc4\x92\xdb\x21\x3b\xc7\x64\xd2\xd4\xfb\x68\xd4\xfe\x58\xd7\x41\x1e\xc6\x7c\x4a\x19\xfe\x03\xd5\xc3\xe8\xdb\x84\x3a\x26\xbb\x07\x3a\xb0\xe6\x21\x82\x11\xb2\xfc\x29\xf2\x3f\x59\x0b\x1a\x33\xeb\x5c\xba\x2b\xbe\x3c\x3b\x94\xd1\xb4\x6b\x78\x9a\xf2\x79\x68\xb9\x6b\xbb\xd8\xca\xfb\x43\x74\x7f\x88\xee\x0f\x51\x9b\x5e\x4b\xd7\x6c\xf1\xb3\x13\xf0\xa0\x55\x77\xe5\x2f\x8f\xc0\xf1\x1a\x09\xa8\x5f\xee\x04\xe4\x58\xe7\x2a\xae\xa2\xbe\x4d\xf1\x72\x7d\x20\xf8\xd0\x8d\x38\xdc\xe2\x18\x04\x6a\x16\xde\x86\x0c\xc3\x4e\x08\x2f\x50\x68\x03\xfb\x27\x86\x60\xe0\xb3\x78\x76\xb1\x86\xf9\x49\x99\xe6\x05\x46\x61\x50\x23\xa8\x5e\xa4\xbd\x45\xeb\x85\xd5\x8c\xa7\x58\x23\x21\x6f\xb4\xcb\x75\x28\x57\x04\xb6\x94\x65\x38\xe6\x21\x6a\xc1\xf5\xad\x59\xf6\xe6\xfa\x86\xaa\x41\xaa\x64\xa7\x56\x87\xa6\x91\x5f\x2d\x89\x6f\x92\x8f\x8f\x6e\x0d\xe1\x5a\x03\x2d\x9d\xc8\xf6\x50\x4b\xc7\x11\x22\x39\x0c\x3b\x1c\xb2\x09\xaa\x1a\x2a\x11\x59\x3b\xc6\x98\x8d\x80\xde\x64\x53\x5a\x6c\xcc\x66\x84\xb1\xa0\x40\xda\xe8\xe5\x1a\x98\x4b\x2a\xb0\x1d\xbc\xdb\x00\xa3\x35\x7e\x56\xae\xa3\x56\x4e\xda\x16\x25\x5b\x00\x84\x53\x1a\x5e\xc0\x8d\x8f\xae\x3e\x59\x98\xcc\x63\x9e\x9c\xad\x3e\xd0\xbd\x75\x38\x9d\x4c\x12\xba\x72\x02\x4e\x80\x2d\x2f\xcd\x0b\xfa\x39\x3d\x74\x15\x7b\xd8\x04\xdf\x1b\xa1\x57\x85\x46\xb2\xed\xb5\xa3\x18\x98\x23\x0d\xfe\x07\xf5\xb2\x7f\x2b\xbe\x45\xeb\x24\x55\x2e\x22\x43\x27\xb9\x89\xfa\xb7\xd0\xd9\x6e\xd5\xc0\xc5\xfd\x9d\x1e\x99\x10\xfa\x15\x85\x3e\x9d\x21\x8b\x53\xeb\xf9\xe9\xab\xa8\xf6\x30\x6e\x74\x0c\xd6\xac\xe1\x82\x06\x8b\x9b\xac\x60\xde\x78\xbb\x89\x65\x24\xec\x23\xb7\x10\x81\x17\xa1\xe4\x1f\x65\x4c\x8f\xa5\x12\x0e\x59\x7e\x18\x47\x1c\xb1\xae\xf5\x2b\xb2\x94\x9a\x24\x5c\x58\x88\xf8\x34\x66\x70\x82\x2c\x3e\x45\x56\x1c\x21\x8b\x8e\x55\x6f\x98\x58\x73\x46\x83\x58\x59\x8c\x0d\x7f\xa5\xc8\x1a\x53\x26\x9b\x5f\xa0\x88\x5b\x11\xf2\x63\x86\xf9\xc2\x9a\x33\x41\x95\x7d\x14\x75\xab\x96\x70\xdb\xf0\xbd\xc1\x2d\xa4\x41\x1c\xe2\xec\x76\x0d\xa8\x1f\x75\x42\x4c\x3e\x35\x82\x5d\x7f\x09\x13\xa5\x96\x38\x73\xfd\xec\xc0\x9d\x88\x89\x25\x11\xe9\x67\x6f\x4e\xcf\x3f\x7e\x78\xf7\x4a\x8b\x0c\xc0\x96\xb9\x51\x12\x8d\x38\x9f\x85\x4a\x23\x28\xb5\x65\x92\xa1\x23\x94\xce\x11\x41\xcc\x22\x94\xa1\x31\x62\x2c\x51\xb9\x9e\x00\x5b\x5f\x8f\xf6\xc7\x8b\x10\xe6\xa7\xf8\x0e\xc1\x40\xee\x4d\x40\x7d\x69\x93\xd7\xf1\x27\x75\xd7\xcd\xba\x57\x05\xb8\x84\x08\x32\xb2\x7b\xc0\xbc\x7a\xf1\xfc\xdd\xeb\x02\x78\x94\x1e\xff\x50\xe3\x57\x87\x20\x7e\x45\xd9\x27\x4c\x26\x87\x19\x62\x76\xa0\x1f\x46\xbb\x01\xdd\xcf\x34\x0c\xe9\x95\x04\xde\x24\xc6\x01\xda\x06\x68\x2d\x31\x7a\x8b\x7b\xa0\x85\xd0\x7b\x54\xb8\x5e\x6f\x4a\xde\x6b\x4d\x4e\xc0\xfe\x11\x0a\x58\xbd\xa2\x13\x4c\x6c\x63\x06\xbd\x6c\x44\x6d\x55\x03\x43\xfb\xa4\x77\x2c\x77\x88\xb3\x18\x15\x19\xb6\x4d\xa5\xdb\x16\xac\x40\x6b\x23\xdb\x46\x72\xcb\x26\x72\x6e\xf5\x85\x5d\x25\xf1\xd4\x9a\xd7\xc4\x9b\xa9\x6d\x28\x2f\x02\x89\xd7\x62\x07\xf1\x58\x6c\xa3\xcc\x10\x88\x7e\x57\xbe\xa5\x3e\x14\x2f\x7c\x38\xc7\x5c\xfa\x9c\xa6\x46\xad\x44\x0f\x9d\x07\x98\x1d\xd2\x2b\xc4\x7c\x18\x89\x76\x21\x4a\xcd\x49\xbf\x28\xfb\x89\x68\xde\xe1\x0c\xfa\x9f\x3a\x90\x31\xb8\x10\xe3\x40\x7f\x2a\x07\x95\x17\x8b\xbd\xa1\xed\x2f\xb3\xbb\xa5\xa6\x3f\xd6\x68\xfa\x23\x75\x06\xf7\xd4\xf1\x04\x18\xa6\x77\x90\xc1\x48\xc5\x60\xca\x49\x4a\x63\x9c\x69\x23\x64\xeb\x6d\x84\x42\x9e\x9e\x21\x12\xaf\xb5\xc9\x4b\x8b\xfa\x5e\x55\x0c\x9f\x55\x70\xf8\x97\x4e\x53\x5d\x1c\x29\xe7\x29\xe4\xea\x18\x7c\xe6\x20\x77\xe5\x20\xd7\xf4\x3a\x2d\xba\x8d\xee\x17\x5d\x6e\x0b\x0e\xbd\xe2\x8a\x4e\xe2\xb1\xb2\x8e\xd5\x80\x63\x46\x67\x15\x23\x68\x1f\x5b\x94\xb4\x96\x8e\xa4\x91\xf4\x05\xcd\xdc\x48\x91\x31\x47\x1d\xfd\x9f\x46\xed\xd5\x39\x91\x22\x37\x89\x86\x7a\x0c\x3a\x7d\x77\xcf\x56\xcd\x6d\xcf\xf3\x48\xc1\x55\xf8\xe0\xc0\x21\x5e\xee\x49\x57\x1c\x5d\xe9\x24\x6a\xff\x02\xe7\xf2\x9b\xeb\x6b\xfb\x1c\xa9\xcf\x2b\x17\x26\x1b\x3f\xd7\x6e\x67\xc9\x27\x87\xff\xcf\x79\x36\xf8\x80\xaf\x5f\xba\x84\x3b\xcf\x06\x8f\xaf\xfb\x0f\xaf\x8f\x8f\x5c\xe7\xd9\xe0\x34\x84\xb3\x39\x0a\xdc\x67\xb2\x93\xff\x38\xec\x72\x14\xc9\x20\xb6\xdc\x4a\x0b\xd0\x72\x97\x95\x3e\x80\x2f\xc9\x25\x0c\x71\x60\x41\xce\x05\x03\x2c\x98\xc8\x68\xce\xc4\xb5\x4b\x28\xe9\xc8\xbd\xb9\x08\x33\x1f\xe6\xee\xbf\xc9\x4b\x62\x51\x16\x20\x26\x9a\x5e\x20\x4b\x37\x01\xf2\x03\x79\xc4\x2c\xe5\x91\x1a\x29\x7f\xc2\x29\xbc\x44\x16\xb4\x86\x85\xed\x1e\x39\xae\x35\x43\x7c\x4a\x83\xae\xed\xae\x9c\x72\x78\xa5\x23\x68\x99\xe7\xf1\xeb\x6b\xfe\x37\x94\xf8\xee\xb9\x07\x07\x32\x54\x2d\xf9\xb5\x67\xc4\x58\x01\x96\x4b\xb7\xf2\x94\xfc\x95\xcb\x58\x2b\x36\x24\x23\x0f\xc9\x48\xab\x04\x3a\xb9\x50\xc7\xbb\xe7\x08\x8a\x9b\x8d\xef\x2f\xdf\xfc\x3a\xc7\xf4\xe5\xdb\xad\xbc\x93\x4a\xda\xe1\xde\x48\x88\x89\x90\x4c\x52\x75\x33\xa8\x6a\xf2\x09\x2d\xa4\x13\x69\xab\x46\xa7\x21\xf6\x3f\x95\x5a\x9e\x64\x97\xad\x54\x02\x86\x28\xf8\x69\xa1\xee\x03\xce\xc4\xec\x81\x20\x5f\x90\x04\x82\x62\x67\x13\x3d\x56\x77\xa4\x76\x2e\x4c\x89\x5e\x87\x33\x3c\x99\x20\x26\xad\xae\x0f\xc0\x51\xc9\x8a\x5c\xfb\xa1\xfc\xbf\xba\xaf\xfa\x09\x53\x22\xd6\x23\x18\x00\x1b\x0c\x8f\x9e\x64\xc6\x4c\x75\x85\xd6\x5f\x83\xe9\x0a\x92\x7b\x4f\x70\x66\xe6\x9d\xa7\xaf\xc9\xc4\xa8\xbd\xc1\xc5\x94\x27\xf6\xe9\xcd\x04\xbd\xfe\x31\x08\xbd\xe3\x23\x10\x7b\xc7\x8f\x81\xef\x9d\xf4\x40\xe4\x2d\x2f\x11\xe3\xd8\x87\xe1\xc0\xe1\xde\x72\x05\xa8\xc3\x81\x5f\x71\x27\x94\x7c\x67\xff\xd6\x37\x42\xe0\x33\x3f\xd9\xbe\x19\xf3\xdb\x1f\x0d\x3a\xfd\xe4\xb0\x39\xfc\x87\xbe\xfb\x9f\xfa\xbc\x8a\x2b\x4b\x0c\x15\xef\x70\xa8\x9e\x3e\xd6\x3d\xcf\xf3\xf8\x33\x3d\x54\xa7\x3f\xe0\x9d\xbe\x1e\xf0\xf8\x61\xce\xf9\x5f\x7f\x91\xbe\x7e\x90\x9f\x50\xea\x5a\xae\xfb\x12\x0d\xb9\x0b\xe4\xb5\x4c\x09\x87\xe1\x60\xb9\x5a\x81\x71\xe3\xad\x8f\x5b\xb8\xd9\x81\x80\xce\x06\xd5\x59\xb8\x02\x3a\xb3\x5d\x20\xf0\x43\xb4\xd3\x78\x33\xd8\xef\x03\xca\xb0\x16\x84\x06\xb6\xde\x48\x1b\x7c\x42\x8b\x0b\x0a\x59\xf0\x5c\x9a\x72\x74\x92\x86\x41\x8e\xfe\xe3\xa8\xfb\x51\x3a\xeb\x57\x87\x1d\x24\x33\x8e\x10\x57\x6f\x12\xf4\x94\xdf\x05\x74\xd6\x15\x3f\x55\xb8\x43\x92\x7a\xe4\x63\x88\x23\x2e\x44\x93\xc8\x4b\x1b\xa5\x8f\x74\x52\x9e\x8f\x8c\xc6\x1c\x35\xb7\x5c\x81\x00\x07\x2f\x49\x84\x18\x7f\xa1\x7c\x53\x4b\x13\xff\x0f\x81\xdd\xd9\xc7\x89\x0b\xab\x63\xff\x2f\x5b\x3b\x60\x57\x9e\x66\x1b\xd8\xea\x5f\x57\x37\x93\x5d\x88\xa5\xb8\xda\x9b\x3c\xeb\xbf\x3b\x41\xfc\x39\xe7\x0c\x5f\xc4\x1c\x39\x86\x49\x22\x44\xc1\xc5\xc2\x76\xf7\x54\xd3\x84\xb6\x34\xce\x06\xb9\xee\x0a\x5c\xe1\x30\x3c\x53\x15\x86\xea\xd6\xd5\xb8\x21\x05\x28\x77\x19\x9a\xd1\x4b\x54\x03\xd9\xf4\xed\x0a\x24\xea\x83\xc1\x32\x47\x73\x73\xf1\x13\xa8\xab\x84\xc7\x6e\x80\xa3\x39\xe4\xfe\xf4\xc5\xa5\x58\x81\xb8\x43\x7f\xa1\x71\x84\xd4\x4f\xdb\x97\xc4\x5a\xac\x45\x77\x35\x28\x9f\x5d\x99\x77\x05\x8f\x9d\x21\x04\x32\x51\xf7\xa8\x8b\x89\x1f\xc6\x01\x8a\x1c\xd4\xfd\x84\x16\xa7\x34\x40\xae\x18\x32\xe2\x74\x2e\x2e\x3e\x38\x81\x0a\x06\x7b\x49\xea\x1e\xa7\x08\xca\xc8\xf9\xcb\x90\xd1\x10\xfd\x3f\x4f\xee\x9f\x72\x23\xf9\x0b\xc8\xb6\xca\x95\x5c\x53\xda\xbd\xe7\x79\xf0\xfa\xda\xfc\x19\xea\x10\x1d\xf9\x8d\x3e\x41\xcf\x14\x4d\x19\xb0\x61\x6f\xb4\xa7\xf0\x9d\xc5\xa4\x4b\xd0\x67\xee\x98\x34\x22\x25\x3d\x0e\xf5\x78\xf6\x35\x1d\xf0\x74\xfb\xdd\x83\x03\xda\x1d\x53\x3f\x16\x08\xec\xba\x2b\x33\x47\x55\x24\x63\x03\xba\xc6\x59\x1d\x0d\xd3\xc9\x8d\x04\x28\xe6\x0c\x09\x08\x9f\xa9\xfb\x38\x81\x04\x06\xe3\x0a\xa4\x4a\x71\xaa\x12\x24\xf6\x40\xce\xc1\x76\x4d\xe0\xec\x8d\x0f\x0e\x1c\x2c\x13\x48\x90\xe0\xa5\xb8\x12\x9c\x4a\x12\xe7\x79\xde\x58\xc6\x42\xb1\x61\xf3\x94\x1d\x06\xb0\x3b\x4a\x97\xbb\x5a\x01\xc5\x16\x54\xe3\x94\xd4\x2c\xa3\xe0\x99\xec\x31\x41\xc6\x2e\x9d\x23\x62\xe2\xf9\x10\x8d\xdc\x41\xae\x85\x1f\xd2\x08\x15\x9b\xac\x80\x7c\x3c\x28\x44\x63\xa9\x63\xbb\x57\x7b\x42\x8a\xb4\x2c\xbb\x7a\xf7\xfb\xfa\x6d\xe5\xce\xa3\x74\x83\x93\xce\x0c\x82\xc0\xe1\x85\x12\xa6\xe4\x86\x03\xb1\xa2\x9a\x79\x35\x0c\xdf\xd3\x3b\xa5\x87\x89\x72\x44\x27\x1d\x03\xd8\x9d\xbe\x5d\xa6\x01\x30\x08\xb2\xd3\xa2\xf5\x62\x8e\x2b\xf3\x24\x05\xf4\xca\x98\x10\x77\x97\x47\x8f\xc4\xb5\xa8\x77\x51\xc8\x2e\xe9\xa8\xc9\x56\x82\x27\xfb\xb9\x16\x47\x8f\xcc\xdf\xcf\x24\x06\x18\x17\x8b\xe8\x42\x6f\x97\xa6\x08\x46\x40\xcc\xc8\x1d\x18\x43\xb4\x24\x2d\x2b\x81\x4f\x39\xe9\x76\xbc\x5e\xba\x8d\xf9\xb4\x13\x60\x18\xd2\xc9\xa1\x3f\x85\x8c\x77\x3f\x6b\xdd\xce\xed\xb9\x9e\x67\x0f\x24\xab\x6d\xcc\xc1\xd6\x29\x91\x06\x36\x0e\x44\x3f\x94\x0c\x96\xa7\xff\x78\xfe\xfa\xef\x2f\x06\xc3\xa5\x3a\x15\x83\x9c\xfa\xc3\xa7\x24\x18\x08\x86\xef\xbd\xaa\xaf\xa0\x49\xf6\xd0\x0e\x95\x1e\x6a\x05\xd2\xef\x62\x62\x7e\x99\x6b\x29\xbd\x70\x56\xa3\x15\x90\xab\x8f\x06\x4b\x31\xfc\x60\xb9\xe9\xf0\x75\x83\xad\x46\xab\x15\x30\x9f\x0c\x96\x2b\x90\xfb\x25\xb7\xae\xfd\x5e\xad\x71\x58\x06\x1b\xee\x76\x29\xd8\x78\x57\x2e\xce\xac\x59\xca\x9a\x1d\x9f\xce\x5f\x7f\x66\xb4\x5a\xca\x3a\x57\x98\x68\xff\x3d\x86\x4c\xf0\xf7\xcf\xfd\xc4\x83\x54\x1f\x88\xc4\xd5\x59\xb4\x89\x30\xf9\x24\x58\xfe\x39\x36\x7d\xa2\xa3\x46\xe7\xe7\xc7\xc9\x83\x8e\x84\x45\xaa\x33\x8c\x98\xaf\x44\xa3\x93\xf6\xfe\xc1\x86\xaf\xbf\xf4\xbd\x1d\xe5\x14\x90\xc0\xfe\x51\x20\x8a\x32\x5b\xa5\xa8\x9a\xd7\xd0\x2a\xe1\x2e\x7d\x9b\x39\x76\x56\xf8\x5b\xab\x41\x8e\x4b\x83\xa0\xcf\x48\x4e\x3d\xc1\xfd\xca\x11\x92\x63\x71\xd3\xee\xc5\x81\xa9\xeb\xdf\x74\x69\x2b\x69\x76\x0d\x35\xe8\xe3\xc4\x3f\x38\xa2\x31\xf3\x51\x0e\xfe\xc0\xfe\x91\x92\x54\x62\x1e\xda\x11\xe2\x1c\x93\x49\x34\x38\x4c\x2c\x00\x03\x9e\x07\xe2\xc3\x92\xca\x5b\x4e\xc7\xb4\x2d\x08\x81\xd3\x74\x1b\x1e\x26\x39\x60\x44\xff\x62\x1e\xca\x60\x50\xd5\x87\x72\xef\x52\x84\xa0\x24\x71\x37\x8c\x76\xbc\x66\xb4\x8d\x80\x24\x11\x5c\x83\x28\x31\xb5\xd4\xc2\x65\xd3\xe0\x98\xc7\xe0\x49\x9d\x03\x70\xc9\xbb\x3c\xd5\x2f\x28\x24\x4b\xb1\xc1\x4e\x86\xae\xd9\x88\x23\xf0\x10\x0c\x6d\x71\xd7\x57\x38\xa3\xd7\xb7\x4c\x1a\xea\xe6\x72\x0b\x47\x79\x2f\x76\x3d\xa1\xe7\x31\x9f\xbe\x65\x74\x8c\xa5\x5f\xb9\xf8\xf5\x33\x65\x33\x73\x42\x4f\xa4\x51\x50\x50\xc1\x79\xd2\x4e\xc2\x49\xf1\x80\x29\x86\x18\xdd\x67\x1f\x8c\x75\x57\xb6\x2c\xd8\x93\xd6\xe7\x11\x50\xbf\x98\x61\xae\xbf\x7f\xac\x66\xf9\xa8\xcd\xda\xea\xd0\x22\xd1\x80\x6c\xee\x0d\xa1\x62\x1a\x34\x96\xcc\x04\x8d\x44\xca\xdc\x62\x5c\x46\x1b\x87\x3c\xf4\x0a\x9e\xec\x5b\xf4\x57\xb0\x92\x09\x74\x93\x30\x79\xa4\x60\xf2\x78\x23\x77\x9a\x35\x86\xb2\x9c\xcb\x49\x13\x4c\x72\x57\xf4\x4e\xa0\xb2\x71\x8f\x5f\x12\x2e\xe5\xd7\x8f\xc0\xe3\xbc\x69\xaa\xd8\xe0\xe1\x3a\xc7\x48\x70\x04\x8e\x81\x76\xbd\x6c\x69\xc4\xca\x59\x9d\x92\xab\x57\xeb\xea\x80\x2d\x04\x3a\x4c\x63\x7d\x49\xda\x33\x83\xb4\x80\x24\x3c\xc8\x38\x7e\x49\xf5\xac\x2c\x06\x2a\xd1\xfd\x85\x88\x6f\xa4\xf8\x2b\xf2\x56\xa9\xea\x8f\x36\xaa\xa7\xd8\x66\x46\x29\x86\xe6\xb4\x46\x53\x25\x5e\x45\x98\x53\xb6\x38\xa4\x38\xf0\x05\x81\xba\xc4\x01\x62\xb6\xbb\x85\x06\x4a\xb6\x90\xa0\xf5\xd2\xa8\x75\x43\x9d\xa1\xb9\x8c\x8a\x28\xee\x54\xf4\x96\x5d\x48\xb0\x77\x95\xc8\x42\xd9\xcb\xb3\x15\x90\x44\xbf\x2c\xac\xa9\x35\x4d\x52\x39\x2d\xb7\x8b\x46\x07\x42\x10\x2b\x35\x2e\x8e\x62\xbb\x7b\xca\x68\xe1\xa1\x83\x03\x67\x5d\xe7\xda\x51\xd9\x76\x5d\x90\x7c\xc6\xa5\x7d\xa3\x7a\x18\xa3\x79\x62\xc4\x32\x7c\xc1\xf7\xd2\xe5\x23\x95\xb3\x86\x4b\xc3\x94\x1d\x47\x48\x8b\x90\x9a\x2d\x71\x96\x82\x5c\x0f\x2a\x07\x11\x6d\x17\x73\x34\x20\x2b\x57\x42\x8c\xc6\xb9\xfd\x4b\x07\x59\x03\xb5\x98\x4f\x7f\x91\xa6\x1d\xdb\x3d\x38\x50\x89\x78\xd1\x9c\x76\x55\x87\x4e\x7b\xa8\xc8\x4f\x73\xaf\x65\xba\xc9\xca\xf5\xa8\x17\x62\xf2\xfa\x5e\x2f\x8b\x95\x54\xfc\x5c\x2f\xaa\x88\x1b\xf3\xeb\x0a\x95\xf2\xce\xae\x12\x29\xdf\xbd\x38\x7f\xf1\xde\x10\xe9\xe4\x9b\xb2\xf8\x87\x08\x67\x8b\xc1\xd0\xf6\x43\x04\xd9\x8b\x24\xb0\x56\x7c\x7f\xfe\xe1\xa7\x5f\x5e\x9a\x1d\x84\x14\x06\x98\x4c\x0c\x81\xf0\x7f\xe4\xb5\x6e\x08\x84\xca\x4b\x42\x4a\x82\x49\x6b\x25\x5f\xbe\x78\xf7\xee\xcd\x3b\xa3\x2b\xa3\x9d\xfc\x73\xb0\x44\x9f\x31\xaf\x9a\xc5\xfb\x7f\xbd\x7d\xf9\xfa\xef\xe5\x65\x80\x9b\x4d\xaf\xad\x28\x2a\xf7\xb7\x42\x10\xdd\x04\x23\xbe\x4e\x64\xed\xef\xe8\x2c\xfc\xe5\x09\x3e\xbc\xb9\xd8\x49\x28\xc7\x7e\x2e\xc4\x16\xd8\x07\x90\x73\x16\x6d\x25\x6e\x9e\xb4\x95\x37\x53\x7e\xe1\x91\xc1\x9b\x3f\xc8\x38\x12\x86\x22\xe5\xc2\x21\x75\x9a\x06\x07\xfc\xb0\x2c\xd7\xc8\xc3\x50\x12\x6b\x8c\x86\x69\x2f\x99\x79\xae\x4a\x60\x6c\x16\x7a\x15\xc2\x55\x76\x9f\xbe\x6d\x27\x0f\xad\x11\x4e\x8d\x63\x52\x88\xe6\xac\x80\x80\x69\x5e\x15\xbc\x7b\x36\xf2\x93\x92\x8c\xd2\xf0\x61\xff\x61\xd5\x97\x8d\x42\x76\xbf\x9f\xfa\xe8\x1e\x29\xd7\x7d\x53\xca\xe8\x3f\x92\x82\x44\xc1\x95\x6e\x1d\x43\xab\xa3\x42\x37\xe4\x64\x93\x48\xe0\x07\xe0\x71\x3e\xf1\xc1\x66\x01\x02\x89\xb0\xaa\x4f\xc4\x50\x2c\xab\x10\xe3\xab\x66\x2c\x83\xd2\x37\x9e\x6e\xd1\xef\x53\x8b\x52\x3f\x69\x17\xda\x6d\x5d\x8d\xeb\xbd\x69\x2b\x20\x24\x63\xd4\x5f\x4b\x76\x7f\x8b\x70\xbd\xa4\x9b\x42\xdc\x7b\x0e\xea\x40\x39\xc6\xed\x28\x82\xcc\xae\x0d\x80\x4e\xdc\x7f\x25\x3b\x67\x8d\x21\x0e\x95\x3f\x80\x9c\x94\xf8\xe2\x82\x35\xb9\xb3\x67\xff\xfd\x8a\x2c\x86\x7c\x84\x2f\x51\x60\x41\x4b\x72\x3f\xd6\x98\xd1\x99\x0a\x22\x7b\xf3\xf2\xec\xd4\xd2\x9c\xac\x75\x11\x73\xcb\xa7\x71\x18\x48\x87\xe4\x90\x4e\xa4\x33\x32\xd5\xae\xc8\x57\x98\x4f\x2d\xdc\x3e\xa6\x70\x23\x98\xf6\xbf\x08\x4c\xcb\x6b\x4b\xd9\xf8\x6d\x80\xfb\x7e\x8a\x0a\x20\x9c\xc2\xc8\x62\x48\x5c\x91\x28\x50\x7e\xdc\x50\xb2\xcd\x0a\xf2\x5d\xeb\xad\x8a\xe3\x53\xce\x42\xc4\x82\xc1\x0c\x13\x1c\x71\xe5\x19\x66\x44\xf7\x09\x62\x93\xf8\x0d\x59\xa9\xdb\x8d\xb8\xe6\x6e\x05\xfa\x4f\x9e\x7c\x01\xe8\x9f\x9f\xbf\xd1\x70\xbf\xc2\x24\xa0\x57\x96\x34\x78\x6d\x87\xd6\x65\xc8\x27\x7d\x5e\xc1\x28\xe9\x37\x05\x36\x67\x0b\x0b\x4e\xe0\x4d\x03\x33\xeb\x57\xa6\x79\xbe\xcd\x97\x61\x27\x39\x0d\xd4\x96\x04\x88\x43\x1c\x16\x73\xda\xe4\xdb\xdf\x30\x6e\x73\xd7\xc7\xf6\x4b\x90\x42\xed\xbb\x97\xaa\x2f\xb7\xc2\x16\x45\xfa\x64\xf5\x12\x14\x58\x01\x45\x91\x0a\xbb\xf8\x8c\x23\x9e\xa2\x8a\x7c\x6d\x41\xcb\x18\x50\x10\x09\x85\xb6\x77\x0f\x7d\xb6\x70\x7f\x2e\x74\xbe\x53\x77\xf9\x75\xda\xaa\xfc\x3c\x5a\x0c\xa3\x61\x9a\x72\x65\x0f\x0c\x7d\x6f\x35\x5f\xa8\x58\x6a\x25\x80\xd9\x0d\x29\x4a\xd2\xae\x31\x0a\x03\x55\xb9\xbd\x2a\x70\x22\x8d\xb6\x90\x01\xbd\xc5\x24\x29\xd2\xf9\x4e\xb0\x53\x9d\x39\x8c\xa2\x2b\x99\xaa\xb9\x90\xde\x25\xf9\xf1\xd8\xfc\xd1\x37\xe2\xe0\x75\xba\xa8\x82\x7f\xde\xa3\x7a\x8e\x30\x65\x67\x6d\x71\x1b\x75\xb4\xf3\xbf\x5d\xcc\xd8\xd3\x1c\x15\x1d\xcd\x21\x31\xd7\xfc\x4a\x53\x6e\x3e\xd5\x7c\x44\x03\x82\x28\xf6\x39\x8b\xcf\x7b\x28\x85\x33\xe5\x87\x0e\x2a\xd7\xa9\x25\x60\x23\x9b\xcb\x09\x38\x56\x5c\xf7\x50\x2b\x4b\x46\x09\x37\x6e\xcf\x43\xe8\xa3\x29\x0d\x03\x99\xc1\x39\xd5\xa5\xa8\xa1\x8e\x80\x94\xd5\x1e\x8e\x92\x91\x29\x51\x13\xd9\x54\xda\xc8\x84\x86\x82\x1d\x20\xf1\xfe\x48\x1e\x8c\xda\x49\x20\x47\x37\xea\x4c\xa1\xad\x52\x28\x54\xec\xe4\x43\x70\xa2\x16\x2d\x64\x9b\xa1\xf8\xfb\x31\x38\xea\x19\x22\x9c\xde\x8a\x04\x8d\xea\x49\xcb\xed\x8a\x30\xad\xb1\x77\xdb\x40\x7b\x83\xba\x56\x65\x30\xaa\x8f\x33\xcf\x5d\x00\x92\x05\x53\x45\xd5\x76\x13\x02\xdf\x9a\x64\xae\x0f\xcc\xcd\xaf\xf7\x22\xe6\x3c\x89\x14\x7b\xb0\xc5\x19\x53\x01\xb2\x99\x81\xac\x02\x40\xea\xe0\xb7\x9b\x8d\xb2\xd2\x19\x22\x0c\x87\x3e\x4f\x18\xda\x1c\xa7\x3b\x56\x89\x44\x30\xb1\x7c\x86\x64\x71\x3f\x18\x46\xdd\x8a\xbe\x4b\xd0\xae\x44\xa8\xa3\xbe\x11\x9a\x76\x7e\xfe\x26\xad\x20\xbb\x05\x4e\x6d\x60\xf8\x96\x7f\xa7\xc1\x55\x19\x74\xf3\x5e\xdb\x87\x45\x3b\xfc\x03\x71\xb4\x8c\x99\xe8\xd0\x39\xe5\x8c\x2d\x4e\xab\xb4\x30\x1c\x6a\xd6\xb6\xec\x6e\xde\x92\x80\x9d\xb4\x33\x6f\x6f\xad\x85\x29\x74\x2b\x21\xd1\x95\xff\x1f\x75\xc7\x98\x45\x3c\x89\x27\x31\x86\xb2\x43\xf8\xc7\xa2\x94\x00\xa0\x66\x5b\x9f\xe8\x75\x80\xa1\xad\x7c\x94\xc5\x97\xbd\x2d\x37\xb5\x3e\x1e\xb7\xee\xce\x33\xb8\xb2\x06\x8c\x5c\x17\x4c\xf6\x18\xd8\xd2\x60\x14\xa1\x50\x00\x43\x23\x13\xe6\x48\xc6\x78\xfd\x98\x1d\xda\x6a\xd4\x4a\x74\x8f\x27\xa3\x56\x87\x7a\xe3\x4b\xee\xa8\xc8\x36\x6c\xc0\x36\x7d\x31\xf4\x69\x9a\x94\xd4\xcf\x17\xef\xc4\x16\x01\x8b\x6b\x62\xf4\x9b\x2e\xc1\x14\xe6\x9b\x79\x71\x3c\x4e\xcc\x4f\x45\xba\x22\x6d\xa4\x3f\xa6\x26\xd3\x1f\x93\xac\x90\x3f\x2a\xd8\x34\xa3\x45\xaf\xe8\xc7\x60\xe8\xc0\x54\x87\x23\xe5\xf0\xd0\xaf\x4b\x30\x98\x57\x9a\x29\x64\xb5\x81\xad\xae\xbf\x32\xe7\x59\xf9\x51\xcd\x83\xf6\x28\xd2\x52\xd3\x2d\xa3\x55\x6a\x31\xf6\x1b\x46\xc0\x2d\x8c\xff\x79\xdb\x7d\xa3\xc5\xbe\xe0\xf1\xc2\xcc\x58\x9b\xec\x16\xd1\xb6\xfa\xd4\x94\xaf\x8d\xf5\xfa\x0a\x9b\xa4\x81\xaa\xca\x0e\xa2\x51\x5e\x17\xe3\xd2\xa1\xab\x89\x4b\x40\x62\xc9\x4f\x10\x45\x07\xba\x42\x22\xc3\x7e\x04\xbf\xf9\x5e\xe1\x31\x43\x59\xec\x6b\xe6\x8d\xb3\xa1\xed\x3f\x33\x66\xdd\x34\x1c\xd5\xb4\xf7\xeb\xe9\x98\xd6\xdf\x15\xd0\xc7\x2d\xff\x34\x5d\x52\x62\x53\x16\x33\x8c\x39\x0a\x9c\x8a\x98\x1b\xd5\x82\xa3\x88\x63\x32\x79\x66\x73\xf4\x99\xdb\x03\x3b\x15\x02\x57\xee\x0d\x9d\x06\x78\xb5\xd3\xc0\xff\xe4\xcb\x00\xe9\xe9\xd8\xb6\xf6\x17\x90\xfb\x68\x04\x1c\x65\x0f\x57\x40\x1a\x91\x4a\x33\x92\xab\x36\xfc\xe1\x37\x8d\xce\x35\x7c\xb9\xbe\x8d\xa4\xd9\xe3\xb9\xff\x7e\x76\xfe\x4f\x56\x69\x5b\xac\xce\xbf\x1b\x56\x70\x0d\x9a\x67\x08\xaa\xf9\xe6\x3a\x96\xe2\x97\x85\xf5\xfc\xf4\x95\xf5\x7e\x23\x55\x56\xe6\x79\x51\x97\xe6\xda\x98\x4f\x50\x3f\x9f\x72\x78\x1f\x18\xda\x86\x5b\xc7\x68\x04\x3a\x8f\x73\xe9\x54\xeb\xb9\xf0\xfe\x71\x33\x49\x92\x2e\x7b\x52\xb4\x88\x38\xdb\xf8\xb4\xe7\x30\xe6\x2b\x26\x7c\xbf\x80\x11\xf6\x3b\x01\xa3\xf3\x80\x5e\x91\x8e\x4e\x52\x50\x51\x50\x2a\xdf\xb2\x45\x1f\x77\xb3\x2e\x44\x61\x31\x49\x04\xc4\x8d\x00\xa2\xfb\xf8\x33\x00\xe4\x26\x80\xb8\xab\x00\x30\xd3\xfb\x54\x87\x3b\xd4\x34\xbf\x9b\xeb\x55\xac\x81\xe8\xb0\x13\x21\xfe\x6d\x66\xa6\x9f\xff\x1e\x5d\x3d\xfa\xf9\xf7\x70\xfb\xd2\x1d\x45\x59\xa8\x36\x77\x0b\xb0\x7f\x34\xd2\x66\x67\x04\xb2\x14\x48\x5e\x99\x09\xbb\x3a\xbf\x4b\xbf\x45\x7e\x17\xbb\x31\x59\x5a\xaf\xa5\xc6\x60\x8d\x8d\x6a\xa3\xb5\x4b\x87\x9e\x2f\xb0\xee\xb6\x06\xa8\x35\x93\x97\x12\xcf\x6c\xce\x5b\xe4\x37\xbb\xc1\xd4\xd6\x49\x2e\x5a\x0b\x52\x48\x7c\xa3\x25\x91\x0d\xf8\x86\xaa\x73\x79\x3b\x99\x6b\xd6\x45\xb3\x6f\xc9\xd9\xaf\x89\x32\x6f\x17\x65\x5d\x1b\x43\xdd\x30\xbc\x8c\x4a\x7f\xa7\x9c\x44\x9e\x73\xce\xa2\xc6\x18\xd4\xb5\xeb\x90\x5b\xaa\x65\x0b\xed\x92\x87\x58\x37\x80\x1c\x1e\x1c\x38\x6b\xe6\x59\x15\x00\x9a\xf6\x01\x96\x45\xc1\x8c\x17\x44\xae\x08\x71\x41\x4c\x13\xb4\xe2\x69\xf0\x37\xe4\xd0\x15\x88\x50\x8c\x57\x4d\x1a\xe6\x7d\x75\xcd\x11\x95\xb2\xd4\xd5\x5e\xba\xc6\x7a\x22\x04\x99\x3f\x55\x1f\x70\xc4\x66\x91\xbb\xb1\x74\xe4\x4f\xb1\x38\x9b\x52\x31\x58\x55\x54\x48\xb3\x10\x42\x98\x8f\x19\x43\xc4\x5f\x34\xdf\x2f\x5f\x2c\x30\xf0\xbf\x82\xd9\x71\xff\xe4\xe1\xa7\xea\x1b\x26\x61\xfe\x5b\xf8\x5c\x1a\x5e\x76\x7d\x45\xca\x0b\xfe\x5d\xfd\xc7\xe0\x68\xc3\x2b\x49\x5e\x44\xb2\x56\x5f\x2b\xd2\x76\xd4\x2a\x9b\x58\xd9\xd0\xab\x52\x18\x2f\xe6\xa8\x23\xc5\xfb\x7a\x11\x31\x27\x03\xae\x99\x77\xd2\xfd\x8d\xa7\xdd\x64\x33\x79\x00\x9e\x6c\x97\xca\xb5\x65\x30\xa0\xa9\x6f\x33\xad\x1f\x59\xd4\x5d\xbd\xf5\xe3\x48\xff\x59\x77\x8d\x16\x54\x7e\x8f\xcb\x6a\x3e\x6d\x5c\xac\xb3\xde\x66\x51\x5c\x9b\xe8\x88\x2d\x33\xdd\xf1\x15\x62\x45\x75\xbe\xa2\x06\x2f\x48\xaa\xca\x57\x0f\x24\x6c\xe6\x2a\xc9\x65\x66\x23\xfa\x45\xd7\xbc\xd1\xcd\x4a\x0f\xde\xe6\x0c\xdc\x3f\x52\xf2\x66\x2e\xe3\x6b\x7e\xa4\xe4\x34\xa4\x51\xa2\x09\x3e\x4d\x61\xce\x59\x8c\xaa\x80\x62\x27\xd3\xc8\xe0\x76\x22\xcd\x07\xf6\x2b\x35\x93\x6e\xb7\x6b\x03\xfb\x35\xb5\xe6\x34\x8a\xf0\x45\x88\xac\x74\xb6\xb2\xe9\x51\x2b\x50\x67\xbe\xb8\x32\x5b\x60\xfb\x3d\xca\x3e\x94\x9c\x41\xc3\x97\x76\xaa\x01\x97\x24\x7b\x38\x52\xf8\xd2\x3f\x6e\xcd\x60\x95\x4d\xad\xad\x59\x3b\x05\x13\x03\x2d\x4f\x92\x89\xf5\x37\x61\xef\xda\x11\x9a\x6a\x73\x71\xbf\x8a\x1c\xad\xb5\x8b\xf6\x53\x2b\xcf\xf1\x17\x61\x88\x35\x1b\xbc\x2b\x68\xb4\x65\x76\x9b\x4e\xef\x3a\x45\x55\x62\x6c\x99\x87\x31\xd3\x59\x18\x9b\xd4\xe9\x30\x0c\xdf\xa4\xe7\xb9\xa0\x4f\xc7\x51\x72\x4a\xa5\x0e\x3d\x3b\xf6\x79\x6f\x95\x7a\x96\x77\x23\x6e\xb7\xcc\x39\xdc\x34\x24\x8e\x64\xdc\x6e\xb5\x06\xdc\xe0\x81\x55\xe4\x4b\xfe\xad\x0c\x4a\x5a\xcf\x1e\x2b\x8a\x54\xd3\x24\x21\x57\x2e\x88\x28\xe3\x75\x6d\x28\xe3\xb6\x0b\xc6\x94\xcd\xa4\x8b\x01\x26\x88\xd5\x34\x95\x8e\x61\x2e\x10\x20\x2f\x68\xed\xbb\x30\xc4\x30\x52\x2d\xba\x8a\xc7\x03\x0a\x9c\x28\x48\x36\xb8\xe6\x0b\xb5\x7f\xb7\xc5\xe6\xab\x46\x0a\x0c\xe2\x2e\xf1\x8c\xdf\xc6\xe3\x84\xed\x5c\xcc\x91\x9b\x95\xd5\xf7\xd2\xbf\x52\xb8\xc8\x5f\x95\x8d\xbb\x32\x0e\xc3\x59\x9e\x41\x0e\x7d\xe9\xf6\xa2\x92\xd4\x04\x3e\x48\x6d\x87\xea\x89\x3a\x09\xab\x5b\xcc\xf3\xb4\x92\xdb\x5d\x0b\x78\xf1\xd2\x31\x4e\x5e\x57\x50\x7f\x19\x54\x0a\xa5\x3b\x89\xed\x82\xec\x47\x0b\xeb\x8c\x02\x29\x65\xbc\x9b\x7d\x66\xc0\x48\xa6\x39\x02\xb4\x72\x2e\x02\x43\x73\x48\xa2\xe6\x92\x9b\xbe\x7c\xe4\x54\xca\x50\xdd\x5c\xc3\xeb\xeb\xe1\x08\x70\xbd\xc3\xb9\x6e\xc5\xab\xbd\x9c\x64\x23\x85\x13\xa0\x89\xb8\xfb\xb7\x9e\x0c\xbd\x44\xdd\x31\x0e\x39\x62\x55\x69\x8f\xf6\xb9\x4c\x8b\xf4\xd3\xc2\xb1\x5f\x9e\x99\x32\x0e\x02\xb6\x0c\x3c\x5c\xa5\x62\x4d\x86\x58\x52\xec\x42\x2e\x40\x02\x06\x11\xbc\x44\x03\xa7\x27\xe5\xa8\xe8\x93\xeb\x30\x34\x11\x1b\x27\xe0\xf5\x2e\x26\x1c\xcf\x50\x77\x06\xd9\xa7\x6c\x70\x0b\x39\x52\x06\x91\x12\x04\xa0\x00\x67\x29\xed\xd2\xbc\x94\xe5\x3e\xae\x18\x9c\xe7\x17\x30\xa6\xcc\x79\xfa\xd4\x8d\xae\xb0\xac\x5b\x2f\x83\x23\x3d\x24\x93\x18\xb9\x4b\x1f\x46\xc8\xea\x0d\x74\x7f\x1e\xd6\xa9\xf4\x8e\x0c\xcb\x16\x1e\x1e\x8d\x9e\x89\xff\x2b\x98\xf6\xbc\x34\x4e\x13\x24\xdd\x1e\x01\xd5\xb1\xf7\x00\xd0\xee\x1c\xb1\x08\x47\xdc\xe1\xee\x9e\x1c\xe6\xc1\x80\x7b\xa8\x1b\x21\xc2\x41\x3e\x85\x93\x24\x8f\xb9\x1c\x4e\x3a\x52\x6f\x49\x24\x8d\x4c\xd9\x94\x24\x97\xe6\x6a\x05\x08\xe0\x23\x17\x30\xc7\xd5\x23\xf6\x8f\xf7\x2e\x18\x82\x9f\xd4\x58\xfd\xde\x20\x99\x52\xbf\x07\x50\x97\xf7\x64\x21\x6e\x01\x80\xa3\x64\x9b\x24\xd5\x75\x96\x8a\xf8\x8a\x16\xab\x64\x9a\xfd\xe3\x81\xcc\x0c\x8c\x48\x60\x0f\xd2\xbc\x7e\x11\xa7\x73\x47\x8a\xbd\x08\xa8\x39\x0e\x8f\x04\x83\x30\x52\x3b\x9f\x5a\x0e\x13\x8a\x5c\x93\xf0\x4c\x57\xdc\x46\x57\xd6\x5b\x46\x67\x38\x42\xc6\x5e\xe9\xbd\xf6\x78\x49\x74\x37\x90\xaa\x2c\xb7\x0b\x24\x75\x5c\x40\x1c\x54\x14\xd1\xf7\xcc\x0f\xb5\x90\x8d\x54\x22\x2a\x19\x35\x57\x22\x39\xdb\x52\x33\x45\x7d\x06\x79\xfd\xac\xd2\xae\x66\xc1\xbc\x13\xc4\xcf\xc3\x78\xf2\x5f\x68\xe1\x64\x6a\x24\x75\x88\x88\xb8\x69\xf9\x9a\xd4\x63\xf9\x0f\x3c\x4f\x6a\x05\xf6\xf0\xd8\xe9\xf4\xf7\x3d\x8f\xba\xa9\x0a\x5a\x27\xe1\x72\x28\xe8\x27\x09\xf8\xb2\xd0\xdf\x04\xb5\xc4\x53\x31\xf3\x12\x34\x81\x79\xea\x3c\x27\x4b\xd9\xe7\x76\x09\x65\x33\xc9\xd8\xc8\x74\x54\x09\xc6\x32\x93\x2a\x63\x8f\xef\x25\x27\x8d\xea\xdd\x90\xc9\x7d\xe5\x49\x4b\x11\x79\x90\xe9\x4e\x08\xb0\x4f\xa5\x80\xfd\x1e\x0b\x5e\x59\xa6\xbc\x3a\x83\x1c\xb9\x62\xa1\xe2\x99\xe3\xba\x00\x77\xe7\x71\x34\x4d\x52\x1d\x93\x52\x74\x76\x7e\x49\x55\x21\xcc\x6b\x74\x27\x34\x40\x1d\x14\xe0\x4a\xc5\x49\xc1\xb0\x9c\x92\x27\xae\x36\x79\xb3\xac\xcf\xa8\x26\x21\xb3\x91\xf4\xd9\xcb\x27\x7d\xbe\xbe\xde\x77\x1a\xd3\x3e\xeb\x4c\xce\x0a\xdb\x86\x23\xc0\xbc\xfd\x1e\xa0\xde\x7e\x1f\x60\xad\x85\xe1\x6c\xb1\x4c\xcb\xfb\x83\xd0\x43\x15\xa9\x85\x9f\xee\x3b\xcc\x73\xa0\x17\xaa\xfc\x6e\xae\xdb\x0d\x28\x41\xee\xc1\x81\x43\x24\xf4\x1d\xa8\xac\xfb\x2e\xd8\xe7\xd7\xd7\x24\x21\x94\xfb\x9e\xc7\xdd\xa7\x62\x48\xf7\xe9\x4a\x51\x98\xd8\x5d\x52\x31\x05\xec\xc5\xab\x31\x26\x30\x0c\x17\x4b\x31\x01\x76\x7d\xad\x62\xf6\xc3\xae\x9a\xf2\xf5\xb5\xfe\xcb\x71\xd3\x96\x78\xec\x50\x57\xe5\x5d\xc6\x2b\xa3\x44\xbf\x80\xd4\xf6\x99\xac\x49\x96\xc9\x9a\x6d\x9f\xc9\x9a\x95\x33\x59\xb3\x75\x99\xac\x59\x96\xc9\x9a\xb5\xcc\x64\xcd\x36\xcf\x64\xcd\xdc\xfc\x4a\x4b\xf0\x6a\x9f\xcb\x3a\x40\x6a\x31\xb1\x2c\x26\xf2\x95\x12\x5a\x93\x2f\x96\xd0\x9a\x99\xb4\x3a\xc1\x8c\x4f\x68\x11\x25\x3b\x93\x3c\x99\x20\xfe\xe6\x8a\x68\x0d\xa8\x5a\x46\xa4\xef\xab\xa6\x36\xa2\x1b\x2e\xf1\x84\x95\xd9\xab\x8c\x7c\x54\x76\x71\x86\x22\x9f\xe1\xb9\xe0\x28\xc5\x1c\xbb\x99\xfd\x51\xde\xb9\xea\x58\x26\x54\x98\x00\xe6\x66\xa7\xc5\x4c\xd7\xed\xa6\x27\x9f\x7b\xfd\xa7\xfc\xaf\xc5\xac\xc1\x4f\xf9\x0f\x3f\xe8\xf5\x0b\x70\xef\x1b\xa9\x83\xb9\x99\x3a\x98\x8f\x06\xcb\xd5\x1e\xff\xcf\xa3\x67\xcc\xc9\x48\xf1\x7e\xcf\x15\xb7\xe6\x0b\xe8\x4f\xf3\x2b\xc3\xea\x2a\x19\x72\xc9\x22\x0c\xd6\xac\x30\xaa\x4c\x21\x8e\x51\xe4\x20\xb0\xee\x53\x87\xb8\xee\xc0\x98\x53\xcd\x84\xea\x73\x94\xaf\x83\x3e\x01\x5c\x72\xb8\xab\x94\x8a\xa7\x00\xc6\x77\x31\x1f\x3a\x6c\x56\xc8\x3f\xfc\xef\xf7\xe8\xc3\xeb\xff\xaa\x31\xf9\xce\x68\xd0\x5c\x67\xfc\x31\xb0\xf1\xe5\xa2\x23\x2e\xd5\x19\x4e\x62\xf3\x95\x62\x27\x75\x42\x4d\x93\x06\x84\x30\x8a\x0a\x7a\x4d\xd9\xe8\xc3\x3c\x80\x5c\xa7\x2d\x3f\x91\xca\x7c\xed\xb7\x7c\xa2\x6a\x25\x9f\x48\xf7\xc9\xac\xec\x88\xe9\xd6\xf9\xa8\x29\xdb\x9a\xf4\xdd\x66\x59\xad\x40\xf1\x5b\xcc\x35\x7b\x60\x98\x09\x94\x4f\x55\xa5\x72\xec\xa8\x1c\x66\x95\x77\x35\xef\xf7\x4a\x2a\xe6\x27\x65\xb7\xd1\x0d\xfd\xcf\x9b\xf4\xc6\xa9\x12\x57\xaa\x7e\x95\x0c\x98\xa9\x81\x0d\x7d\xb2\x86\xf6\x28\x57\xb8\xa5\x3e\x7b\xfd\x09\xe8\x27\x5a\x55\xf9\xe3\x68\x13\x05\xa9\xf6\x16\x3b\x02\x7d\xa0\xb3\x67\x8d\x1a\x7d\x59\xfb\x37\xb6\x04\xa7\x5a\xb4\x04\x57\xc5\x3f\xa6\xeb\x69\x82\x7e\x1a\xfb\x32\xe4\xa3\xe4\x13\x5a\xc4\x73\x21\x85\x2f\x08\x87\x9f\x53\x4f\x54\x86\x60\x40\x49\xb8\xc8\x9c\x52\x37\x33\x28\x17\x19\xcc\x54\xbf\x16\x7a\x4b\x0e\x2f\xce\xf1\x1f\x68\x70\x04\x42\x4c\xd0\xeb\x58\x1c\x4d\x99\x8d\x9c\x4f\x91\xe8\x71\x0a\xa3\x29\xb6\x41\x34\xa5\x57\xa7\x31\x8b\x28\xfb\x75\x8a\xc8\xb9\xdc\x5f\x4c\x26\xd2\x15\x25\xe6\x02\x36\x83\xa1\x7d\x4a\x03\xf4\x8b\x3c\x74\x9d\x10\x13\xde\x11\x22\xb5\x8a\xfa\x10\x3f\x05\x49\x00\x71\xa3\x46\x0f\xd6\x7a\xbe\xa5\xe9\x07\xeb\xb4\x6d\xea\xb5\xed\xae\xd5\xda\x4d\x51\x38\xaf\x55\xb3\x49\x50\x29\xba\x71\x28\xe6\x2c\xb3\x62\xc9\x9d\x92\xc2\xd7\x60\x68\x1b\xc0\xb4\x47\x40\xef\xcc\x60\xbf\x0f\xd4\xa6\x29\x67\x5c\xb9\x91\x45\x5f\x5c\xe9\x81\x5a\x74\xc5\xbd\x69\xca\xf7\x04\xbb\xe4\x87\x6a\x69\x5d\xf9\xc8\x71\x9b\xcd\xe1\x6b\x47\x32\x73\xad\xab\xf5\xee\xc9\x7c\xc4\x11\xe2\x4a\xb5\xe3\x48\xbc\x7c\x23\xf1\x32\x11\x33\x15\x30\xdc\x15\x88\x10\xff\x85\x06\x79\x31\xb9\x38\xf3\x14\xf1\xa9\x43\x9d\xe5\x0a\x84\x2e\x58\xae\x80\x40\x67\x34\x40\xdd\x19\x9e\x21\xa0\x07\x18\xe4\xfa\x5f\x25\x09\xb5\x78\x6e\x72\xdc\x9c\x99\x3a\x7a\xaa\x17\x37\x07\x1c\xb1\xab\x0e\x17\xaf\x68\x80\xaa\xc1\x69\x03\xb4\x2b\x15\x21\xbd\x10\xa8\x85\x58\x92\x55\x4b\xff\xec\x06\x38\xf2\x29\x21\x82\x63\x58\x93\x4b\x7f\x13\xb7\x85\x3d\x43\xe6\xcf\x25\x24\xe7\xe8\x33\x87\x0c\x41\xeb\xff\xb3\xe6\x0c\x59\xf2\xc2\x49\x14\x31\xaa\x89\xbb\x47\x54\xa0\xc0\xe9\x14\x87\x81\x76\x6e\xd0\xd3\x95\x7c\xed\x2f\xb1\x4a\x32\xfe\x26\x79\x58\xa9\x3b\x71\x08\xe8\xbb\xc3\xde\x68\x0f\x75\x13\x7c\x77\x72\xee\x0c\x09\x0d\x64\x5a\x3a\xbf\x9a\xd2\x10\xbd\x47\x9f\x15\x87\x93\x87\x99\xfe\xc3\x21\x60\x09\x75\xba\xed\x48\x9e\xb4\xf8\x82\x33\xa4\x38\x17\x31\xdf\x57\x38\xe2\xe2\xb9\x3f\x85\x0c\xfa\x1c\xb1\x33\xc8\xa1\xe2\x40\x8a\xfb\x9b\x4c\xc0\x5c\xad\x39\x89\x72\x16\x72\x75\xd2\x73\x28\x34\x41\xfc\x85\x7c\xec\xe4\x40\x98\x6a\x20\x15\x29\x4a\x54\x96\xe7\x61\x3c\x71\x72\x54\xc3\xed\xf2\x29\x22\x79\xee\x50\x6d\x9c\x42\xca\x08\x08\xb1\x4e\x51\x93\x3d\x26\xe5\x0d\x22\x3b\xab\xce\x08\x2f\x85\xbe\x2e\xa7\xaf\xc4\xa5\x7c\x0a\x23\xe4\xb8\x9e\xc7\xf2\x0f\x94\x7e\x54\x48\x32\x64\xd8\x1b\x01\x79\x88\xc5\xf9\x74\xb8\x52\x47\x05\x38\x78\x3e\x9f\x23\xc8\x4a\x28\xae\xe6\xdc\x65\x68\xcc\x50\x34\xcd\x95\x2a\xa8\xd0\x84\xe5\x01\xa0\x55\x90\xcb\xdc\xf2\x07\x68\x95\x41\x4a\x4e\x02\x95\xdc\xf1\xe3\x16\x4a\x13\x32\xc6\x6c\x26\x31\xb2\x23\xc3\x62\x0f\xd5\xc4\xbe\x0d\xdf\xfc\x49\xef\x8a\xfd\xf1\x99\x9d\x6f\xec\xb7\x58\xac\x03\x29\x40\xcc\x68\x5c\xac\xb3\x5c\x19\x37\x2b\xeb\x0b\x9a\xb9\xe8\xd3\x44\x02\x2a\x73\x7b\xc1\x19\x21\x65\x58\x7b\xa3\x62\x1c\xad\xd1\x69\xc2\x93\xf6\x73\x3c\xe9\x36\x15\xe5\xd2\x59\x6c\x51\x2d\x67\xcd\x6e\x7f\x45\xbf\xfa\x8a\x99\x7d\x13\x08\xf8\x6b\xef\x9f\x9f\x2e\x8f\x7f\xfa\x9f\x35\x08\xd8\xe0\xcf\x54\xf2\xa0\xb5\xab\x72\x89\x95\xd7\x9f\x78\x40\x1d\xd5\x21\x6c\x75\x25\x7b\xfd\x56\xd7\xda\xad\x89\xfc\xd8\x51\x01\xf5\x96\x7e\xa0\x0d\x11\x2a\xeb\x0a\xd8\xb7\x2a\xb7\xdb\x7a\x1a\x95\x71\x9d\x02\x5c\x71\x5d\x44\xcf\x26\x8e\xce\x62\x03\xed\x5c\xaa\x0f\xd3\x0b\xb9\x62\x8b\x0f\xf5\x09\x16\x9d\xea\x73\x6d\x0a\xa4\x75\xf4\x65\xb4\x95\x8f\x8b\x5d\x20\x41\xe6\x4a\x5b\x67\x56\x49\xa8\x6a\x5d\x78\x93\x99\xf6\xc4\x1e\xab\x8c\x7e\x27\x32\xee\x3c\xcb\x02\x00\x89\x9f\xb4\x69\x0c\xa4\xde\x2a\xca\xa8\x44\x1d\xf3\xb9\x86\x0b\x2e\x16\x0a\xcf\x6e\x44\x3f\xbf\x29\xc2\xd9\xae\xd6\x44\x29\x04\xe1\xbe\x02\xe6\x7d\x05\xcc\xef\xa3\x02\xe6\x6e\x78\x06\xda\xcc\x33\x4c\x5f\x9d\xf9\x3f\xfc\x8a\xf9\xf6\x3c\x83\xe1\x03\xfd\xd0\xc8\x1e\x25\xaf\x91\x2b\xcc\xa7\x1d\xf3\xd4\x57\x39\xc7\x02\xdb\x4a\x9a\xc8\x24\xc2\x55\xb9\x9e\x4a\xac\x45\xf5\xf5\xb0\xd1\x25\xa8\x69\x6e\xde\xc1\xd7\xbc\x0f\x13\xdd\x64\x72\x59\x56\xd5\xa6\x4c\xdb\xe8\x6b\xa2\x10\x45\xbf\x61\x9a\x21\x63\x06\x99\x1f\x70\x29\x03\x40\xd1\x9d\x78\xe3\x54\x22\x15\x70\xdb\x30\xd3\xda\xa6\xb0\xd6\xf5\x97\xd6\xc1\x1a\x7d\x46\x7e\xcc\xcb\x65\x4c\xeb\x61\x0d\x94\x23\x2e\xc8\xeb\xb8\xb7\x83\x7c\x06\xda\xaf\x01\xcc\x75\xdc\x42\xee\x8c\x48\x1f\xcd\xcc\xad\x53\xb3\x0f\x45\x96\x41\x6a\x92\xe7\x88\xcd\x60\xc2\x53\x48\x77\x50\xd5\xfc\xb5\xda\xa6\x59\xe2\xbc\xbd\x2d\x67\x51\x59\xd6\x00\x37\xb2\x16\x74\xb3\x88\xa5\x64\x86\x03\xfb\x39\x43\xd6\x82\xc6\x56\x14\x33\xf4\xcc\x06\x19\x40\x06\xfb\x7d\x90\xae\x52\xfc\xc8\xf4\x15\x12\x59\x4c\x0d\x47\x51\xd9\x63\x82\x75\xbf\xef\xae\x40\x82\x83\x1b\x7c\xa3\x35\x1b\x24\x50\xc9\xbc\x73\x8e\x55\x26\xb4\x47\xba\x46\x60\x52\x4a\x31\xd3\xe2\xb9\xee\x4a\xaf\xa7\xac\x08\x54\x97\x70\xc6\x04\xc8\x3b\x5f\x71\x00\xa6\xee\xd1\x43\xc3\xde\x08\x88\x6b\x5e\x31\x05\x7d\xb7\x54\xe0\xce\xdc\x79\x5e\x56\x7c\xa5\xbd\xd9\x80\x94\xdf\xe6\x56\xdd\x2b\xe9\x6f\x70\x1b\xf6\x2f\x8a\xc3\x43\xe8\x87\x87\x84\x72\x3c\xc6\xbe\x44\xa1\xe8\xdb\x90\x9e\xcf\x9e\xfc\xf4\xf8\xd3\x3f\x3e\xfc\xab\xfa\x26\xfc\x31\xc9\xf4\x06\xd2\x0c\xd3\xd5\x89\x47\x2b\x0c\x5c\x47\x82\x68\x25\x11\x3d\x9b\x7b\xae\xd7\xf7\xdb\x17\x73\x88\x65\x02\x84\x1b\xe4\x31\xfd\x17\x8d\x99\xcc\xea\xa0\xf2\x85\x4e\x61\x64\x5d\x20\x44\x2c\x18\x04\x28\xd8\x34\x69\xe8\xfb\x29\x62\x48\x66\xb1\x85\xc4\x92\x8e\x7e\xa2\x1f\x4c\x26\x2a\x8d\x5a\x3a\x4c\x5d\xbf\x1b\xe5\x78\xad\x01\x75\x2c\x0d\xb9\x77\x09\xd4\x11\xbc\xdc\x09\xa8\x23\x78\xf9\x65\x41\x1d\xa0\x10\xdd\x09\x50\x0b\x30\xa9\xc9\xee\x02\xce\xb2\xa7\x2f\x8c\xd4\xd1\x37\x09\xe6\xd7\xf4\xca\x8a\x23\x01\x0a\x29\xd4\xac\x83\xc4\x06\x30\x56\xbd\xf2\x29\xe4\x5f\x06\xc0\x7e\x48\x49\x03\x88\xbf\x0d\x14\x96\x93\xdc\x05\x06\x8b\x8e\x6e\x88\xc0\xb7\xf7\xb0\xa1\x32\xff\xef\x5b\xf8\x41\x34\xf1\x1c\x1b\xea\xc2\x3e\x6a\x8e\xe1\x0d\x09\x17\x69\x33\x67\x73\x2d\x98\x98\x92\x34\x07\x5f\x22\xb6\xe8\xf8\x53\x88\x2b\x6c\x58\x35\xb5\x6e\x6a\x3e\x8f\x39\x0e\xef\xd5\x65\xf7\xea\xb2\x7b\x75\xd9\x6d\xaa\xcb\x7a\xf0\x7f\xde\x3c\x78\x3d\x8d\x1a\x33\x07\x04\x28\xe2\x49\xa8\x64\xf6\x4f\xfe\x61\xf2\x2b\x9a\x87\x98\x73\x19\x58\xa9\x42\xd1\xf5\x37\x89\x3d\x57\x34\x7b\x27\x1d\xee\x0a\xdf\xab\xd6\xb5\xaf\xcd\x7f\x2a\xed\xcd\x11\x5f\x84\xc8\x2e\xeb\xd4\xd4\xa5\xf6\x50\xfb\x13\x9e\x80\xa1\x4d\xa4\xb3\xd1\x66\x15\x7b\xec\x34\xb5\x7f\xa1\x0b\xd9\x60\x99\x5a\x62\xe8\x1c\xfa\x98\x2f\x06\x56\xdf\xda\xc7\x33\x41\xf6\x20\xe1\x4f\xcd\x2a\x9b\x17\xd0\xff\x34\x61\x34\x26\x41\xc7\xa7\x21\x65\x03\xeb\x12\x32\xa7\xd3\xb9\x9a\x62\x8e\xdc\xa7\x59\x3b\x89\xbd\xfa\x6d\x80\x7c\xca\x3a\xea\x59\xa7\xdf\xeb\x95\x1a\x76\x18\x0c\x70\x1c\xe5\xdb\xab\x67\x9d\xa3\xaa\xf6\xb9\xc1\x27\x0c\x2e\x3a\x0f\x0a\xcd\x3e\x77\xa2\x29\x0c\xe8\x55\xbe\x4f\x14\xa2\x4b\xa5\x28\x79\x68\xb4\x5f\x35\xc5\xfc\x56\xec\x01\x0a\x26\x37\xdd\x83\xac\x8b\xda\x3d\x68\x35\xbb\xa2\x8d\xcb\xb0\xee\x4a\xe3\x30\xa3\x31\x47\xf5\xae\x0b\xb5\xb6\xde\xb4\xc1\x51\xbd\xcd\x4e\xad\xe6\x01\x18\xda\xe7\xca\x79\xef\xb5\xe9\xdc\x69\xbd\x13\x43\xb3\xb5\x59\x0c\x2b\x0a\x20\x24\xa9\xbf\xb3\xa4\xeb\x9c\xd2\x90\xe3\x5c\xc2\xe5\x0f\x11\xb2\xe4\xe2\x58\x24\x88\xa4\x74\x14\xf4\x91\x20\xae\x0c\x8e\xc7\xd8\x4f\x58\xd6\x57\x8f\x2c\x9f\x09\x72\x88\xa1\x15\xc5\xfe\xd4\x82\x91\x35\x87\x7c\x6a\xcd\x19\x1a\xe3\xcf\x28\xb2\x28\xb3\xa6\x9c\xcf\x2d\x05\x8a\xca\xc4\xe1\xf5\x49\x12\x1b\x4c\x8e\x65\x73\x7b\xb6\x1e\x71\x84\xea\x0b\x50\x3d\x2e\x29\x9e\xf3\x4a\x68\xb3\x96\xc0\x16\x69\xee\x13\x55\x71\x0d\xe3\x22\x61\xda\xf1\x65\x35\x3c\x23\xbb\x74\x92\x97\x23\x33\x33\x1f\xa9\x9a\x00\xf9\xa2\x2e\x89\x4a\x38\x69\xd5\x32\x7b\xf2\x51\xaf\x21\x7f\x72\xd5\xcf\x22\x8e\x6b\xb2\xbd\x7b\x34\x3f\xd7\x3d\xdf\x16\x16\xa7\x03\x58\x50\x3a\x05\xaa\x18\x00\x14\x28\x16\x21\xc4\xdc\xc2\xc4\xa7\x33\x81\xc9\x0c\xfd\x1e\xa3\x88\x47\x16\xf4\x19\x8d\x22\x2b\xc0\xe3\x31\x62\x88\x70\x2b\x71\x9d\x95\xa8\x1c\xc5\x17\x11\xe2\x91\x45\xc7\x16\xb4\xc4\x09\x08\x91\x7e\xff\xcd\x63\xb6\x51\xbe\x44\xe5\x7e\x56\x04\xe6\x51\x25\xb6\xef\x14\xe9\x35\x06\xb5\xc2\xfb\xfe\x93\xdd\xe0\x7d\xff\xc9\x0d\xf1\x9e\xa1\x88\x86\x97\xb7\x81\xf7\xef\x74\xcf\xb7\x85\xf7\xe9\x00\x12\xef\xe3\x48\x61\xbc\x62\x16\xad\xab\x29\xf6\xa7\x29\x37\xac\x71\x59\x21\xb1\x15\x4d\x65\xe1\xb5\x08\x72\x1c\x8d\x17\x56\xba\x93\xe9\xf9\xb8\xab\x68\x5e\xaa\x24\x79\x0b\xb4\x3d\x81\x7a\x3b\x34\x7f\xbc\x23\x34\x7f\xbc\x39\x9a\x47\x97\x69\xd9\x95\x2b\x1c\xf0\xa9\x0d\xec\x7e\xaf\xf7\x9f\xfa\xd9\x14\xe1\xc9\x94\x9b\x0f\x1f\x00\xfb\x12\xa3\xab\x9f\xe8\xe7\x7c\x81\x0c\xbb\x67\xf5\xac\x24\x1b\x54\x7f\x04\x6c\xfd\x77\xc1\xdf\xd2\x9e\x33\x24\x1d\x9d\x9f\x47\x73\xe4\xf3\x77\x82\x45\x94\x06\x3b\x52\xcf\x95\xdf\xce\x2d\xad\xfa\x2e\x1b\x64\x8d\x25\xfd\x2f\x5b\x45\xd3\x08\x36\x52\x26\x5a\xbe\xfd\x61\x5e\xa3\xcf\xfc\xb5\x0c\x91\xda\xcd\x60\xf9\xd8\x29\xa3\xb8\xbe\x90\xb2\x16\x29\x06\x3e\x04\xe2\x89\x91\x30\xbf\x6f\xbe\x59\x98\x6f\x7a\xe6\x9b\x04\x3f\x46\x23\xb1\x92\xbc\x0f\x40\xb1\xc2\xc1\x0d\xe1\x58\xae\xea\xdf\x13\xe8\xcf\xa7\x09\x56\xf6\x1b\x86\x03\xf6\xdf\xd6\x80\x58\xd5\xe1\x29\x15\xe0\x59\x07\xb6\x47\x19\xd8\x92\x5f\x0b\x5b\x57\xf2\x1d\xda\x69\x09\xe2\xc6\x6e\x0a\xf0\x7e\x90\xeb\xf2\x81\xf4\x25\x09\x64\xfe\xa7\x52\x4d\x07\xf3\x93\xea\x2d\x7a\xb0\x66\x8b\xd4\x4c\x8b\xe9\xcb\x2b\x28\xcb\xa3\x4a\xc5\x65\xff\x61\xf5\xe3\x07\xd5\x8f\x4f\x72\x72\xde\xda\x53\x5d\xcd\x8d\xec\xec\xb8\x3d\xbe\xf1\xa1\x6e\x5e\x81\x1a\x41\xb2\x9d\xe5\x2a\x6f\xbb\x26\x1d\xbd\xaf\x47\x3a\x8e\x6a\x49\xc7\x51\x2d\x5e\x1e\x6d\x4a\x3a\x1e\x67\x47\xb9\x93\x2c\xb9\x7f\x53\x6f\xa0\x26\xfa\x91\x4a\x3a\x83\x0c\x59\xd2\x52\x2b\x7f\x5b\x03\x74\x53\x58\xd2\x77\xa6\x4c\xc2\x38\x17\x82\x33\xe1\x32\x65\x60\x3e\x4e\x35\xe9\xed\xd7\x14\x26\xbd\x9b\x92\xa6\xe3\x1c\x1d\x39\xde\x01\x69\x7a\x62\xf6\xf8\xa4\x05\x61\x7a\x52\xb7\xff\x4f\x76\x45\x96\x8e\xab\x09\xcd\x51\xf5\xe3\x9e\x80\x5d\xd5\x9b\x27\x95\x4f\x1f\xd7\x2b\x7e\x32\xae\xc9\x10\x0e\x3a\x98\x84\x88\x47\xeb\xb9\xa4\x7e\xaf\x92\x39\xfa\xd2\xac\xcf\xc3\x51\x21\xe9\xa7\x5e\x48\x82\xf3\x0f\x1b\x68\xca\xce\x28\x57\xd3\x20\x1b\x33\x06\x7a\x7b\x7c\xcc\xfc\x44\xcb\x2b\x04\x09\x1b\xd8\x47\xdd\x07\xfa\xa7\x2f\x10\xfc\x81\xde\x25\x7f\x51\x8e\x14\x7a\x54\x87\xb7\x8f\x1a\xf1\xb6\x0d\xc6\x56\xdf\xa3\x95\x0f\x1f\x7e\xb1\xdb\x72\xdd\x3d\x76\xfc\xc5\xee\xb1\x9b\x73\xc0\x95\x6c\xe2\x0d\xf1\xa1\x96\xbf\x6a\x66\xaf\xda\xe0\x43\x35\xa7\x74\x52\xf9\xf4\xb8\x25\x3d\x4a\x55\x2c\x77\x9d\x1e\x15\xee\xe0\xfe\x97\xa0\x47\x4d\x83\x7c\x2d\x7a\x54\xcb\x47\x35\xb3\x51\x6d\xf0\xaf\xfa\xa6\xac\xbe\x3e\xd7\xdb\x41\x1e\x14\xdd\xe0\xb5\x3e\xaa\x50\x87\x4d\x56\x83\x03\xb6\x05\x7d\x8e\x2f\x51\xa5\xe7\xfb\x91\x3c\x5d\xf9\xbe\xe6\x83\x04\x4d\x4f\xc4\xdc\x3e\x3f\x0d\xd1\x98\xeb\x47\xc7\xea\x51\x5d\x6d\xe8\x92\x52\xad\x5e\x67\x66\x30\x82\xe9\x6c\x1f\x68\xc7\x6a\x1f\xcf\xa0\xf4\x36\x18\x1e\x8d\xb4\xaa\xe5\x3f\xd7\x69\x5a\x9a\x8b\xc0\xe1\x4b\x1b\xd8\x30\x08\x4c\xbf\xe6\x80\xce\x3a\x73\x1a\xe1\xc4\xbb\x39\x94\x85\xda\x22\x0e\x19\x8f\x3a\x57\x58\x6a\x69\xa4\x23\x74\x87\x33\xe8\x7f\x52\x66\x6a\x1b\xd8\x08\xca\xd4\xd5\xd2\xd7\x59\x97\x79\xbb\x9c\x74\xfc\x98\x49\x28\xf3\x2b\x84\x48\x87\x53\xd3\x71\xda\x48\x5e\x22\x35\x57\x76\x6a\xc8\x32\xb5\xfd\x2a\x55\x66\xe7\x62\x61\x9b\xba\x50\x43\x3d\xa4\x75\x47\x6a\x47\xdf\xeb\x6d\x4f\x98\xc9\x0c\xc8\xb2\x77\x12\x6c\xe1\xc8\x52\xe9\x35\x72\x53\xbf\xeb\xe5\xba\xfc\x19\x1c\xfb\x9f\x6a\xf3\x67\xa8\x97\xb6\x0b\x04\x73\x7f\x2e\xfd\x25\xea\x52\x76\xa8\x1c\xec\xaa\x49\x31\xc9\x46\x61\x65\xf6\x28\x7b\xfd\x13\x26\x81\x4c\x04\x32\x4c\x20\x6b\x8f\x00\x8e\xce\x70\x34\x0f\xe1\x02\x05\x32\x3d\x40\xb2\x81\x2f\x83\x81\x6d\x83\xcf\x83\x1e\x58\x0c\x7a\x20\x81\xb7\x78\x94\xdb\x12\xf1\xc5\x6d\x15\xba\xb8\x49\xfe\x8d\x5c\x7e\x86\x24\x7f\x04\x0c\x82\xb7\x90\x4f\x5f\x6d\x5a\x4c\x63\x9b\x54\xb6\xea\x85\xda\xd0\x6e\xa0\x06\x90\x1f\xbb\x2b\x90\x1e\x83\x52\x52\x59\xb9\x5f\xdd\xd7\x2a\x29\x49\x39\x63\xad\x4c\xc1\x3a\x41\x3c\x35\x3d\xb9\x4e\xbe\x62\x05\xc8\xf5\xa0\xb2\x42\xa8\xd3\xd7\x7e\x28\xe5\x29\xaf\x87\x92\x96\xe0\x75\xe3\x80\x74\xff\x26\x31\x0e\xa4\xbb\xce\x3e\xaa\x4d\xba\x60\x1f\xda\x9e\x97\xcb\xa0\x69\x9f\xa1\xb1\x40\x22\x4c\x49\xf7\x17\xc8\xfd\x69\xf7\x1f\xef\xdf\xbf\xed\x8a\xcd\x7a\x2b\x6d\xbd\xb6\x58\xc9\xc1\x41\x43\xa7\x96\xf2\x3c\xf1\x3c\x0f\x75\xb3\xde\x56\xae\x9b\x64\x87\x00\xcc\x33\xc4\x11\x1d\x3d\xa0\x4b\x29\x62\xd2\x35\xec\xe0\xc0\xee\xda\x6e\x45\x93\x34\x83\x68\x5d\x83\x2c\xeb\xa8\x0b\xa8\x67\xb0\x1b\x37\x1c\x4f\x42\x34\x5f\xac\xd1\x80\xff\x90\x8e\x9e\x11\x8f\x0e\xea\x1b\xb0\x91\x74\xc3\x62\x2e\x48\xdb\x24\x49\x47\xb0\xb7\x3c\x53\x9c\xc7\x60\xbf\x07\x5e\x9e\x0d\x14\xb1\x5e\x37\x63\x57\x66\x53\x1d\xd4\x2c\x27\x83\xff\x60\x29\xb7\x73\xb0\x14\xfb\x39\x58\x66\x1b\x3a\xb0\x0f\xed\xd5\x6a\x05\x34\x67\x34\x20\xab\x3d\xa4\x52\x55\x4a\xcc\x53\x5e\xfe\x12\xf9\x5c\x07\x83\x9a\x81\xf2\x68\xe7\xae\xb2\x1c\x6f\x02\xef\xf5\xb5\x52\x83\xfa\x4b\x09\x1b\xf0\x5e\xa6\x52\x89\x56\x4d\xe7\x2d\x35\x79\xb9\xd5\xbb\x0d\x2a\x91\xa4\xfa\xc8\x24\xe3\xd9\x6e\xcd\x7b\xf3\xe8\x4e\x18\x9c\x4f\xcb\x99\xa7\x8d\x5b\x54\x1d\xee\xa6\x4c\xd3\xc6\x55\xd2\x95\xfd\x39\xee\x5e\x2e\xff\xb5\xee\xad\x3a\xf1\x1e\xef\x2a\x41\xad\xe2\x2d\x71\x97\x32\x4d\xf4\x2b\x4c\x3e\x39\xbc\xfb\xf2\x0c\x90\xae\xde\x4f\x99\x18\x45\xe7\x74\x49\x26\x59\xd9\x7f\xa1\x07\x9e\xeb\x21\xc9\x3e\x9d\x5c\x48\xb5\x29\xb8\x5f\x06\xd2\xac\x07\xe7\xd3\x3a\x28\x48\x07\x42\x41\x75\x72\x39\xb6\x5f\x06\xd7\xd7\xfb\xe5\x74\x3f\xff\x2b\x8f\xfc\x59\xeb\x34\x5f\xeb\x72\x65\x66\x50\xca\x1a\x00\xe2\x71\x05\x50\xc7\x1e\xd8\x6e\x37\x9a\xe2\x31\x97\xf9\x82\x87\x7c\x04\xa8\x97\xe5\xf2\x96\x1f\xca\x29\x6b\xb0\x08\x18\xa0\xe0\xb5\x4c\x2b\x63\xac\x82\x03\xec\x2e\x99\x3a\x19\xbc\x8b\x03\x17\x50\xf5\xc3\x4e\x67\x89\xa5\x9b\xe4\xcb\x00\xd8\x7f\xcb\xc8\x08\xee\x72\x2a\x66\x0c\x50\xfd\x30\x5d\x1c\x14\x9d\x5c\x15\x4d\x40\x5d\x1c\x54\xac\x63\x8f\xec\x7b\x1e\x3e\x38\xc8\x9c\xed\xf6\xa5\xc3\x67\xee\x37\x3e\x38\x70\x92\xf9\xa2\xea\xf9\xf2\xaa\xf9\xf2\x64\xbe\x1a\x71\x96\xd2\xd3\x6d\xc0\xba\xb3\x62\x4e\xf0\xe4\x12\xc9\x76\xe9\xf4\xfc\xbc\x8b\x22\x1f\xce\x91\x83\xd4\xc7\xd2\x43\x6b\x40\xb7\xf9\x76\x25\xbe\x97\xcc\xe7\xf6\x64\xc3\x32\x79\x8f\x2e\x1d\x8f\x23\xc4\x7f\x15\x5d\x8a\xbe\x15\x87\xbb\xdb\xce\xff\x21\xfb\x14\xbd\x17\x59\x9c\x9a\x5c\x58\x6a\x74\x16\x93\x6e\xe4\x4f\x91\xe0\x97\x1d\x1b\x8e\x39\x62\xef\x10\x91\xd5\x29\xcc\x71\x51\x25\x7f\x83\x32\xe6\x6a\x1f\x75\x71\x94\x30\x51\x28\x38\x38\x70\x50\x31\x09\x38\x92\x27\x2c\xa0\xbe\x64\x9b\x1c\x17\x2c\xa5\x25\x7a\x90\xa7\x04\xa2\x8d\x1f\xd2\x08\x45\xdc\xf9\xcb\x50\xf2\xac\xff\xe1\xd9\xca\xe2\x3d\xfa\x4b\x5a\xc5\xcb\xbd\xbe\xce\xa7\xc5\xd2\x52\xdf\x7e\xdf\x0c\xb5\x43\x20\x4f\x20\x6c\xb9\xb9\x32\xd5\xb8\x71\xdc\x23\x47\xea\xec\x15\xb6\xdb\xd9\xaa\xea\x12\x91\x96\x96\xc6\xc1\x72\x46\xe3\x08\x09\x86\xbb\xaa\x1e\x19\x4a\x73\xc5\x47\x53\x7a\x25\x89\x69\xc2\x4a\x22\x20\xf3\xab\x02\xf5\xb9\x99\xdb\xae\xea\xeb\x29\x0e\x50\xc5\xd7\xb2\x52\xa5\x4a\x43\x95\xe5\x71\xd7\x03\x55\x66\x97\x32\xd2\xb3\x2e\x3f\x0f\x50\xd7\x0f\x31\x22\xfc\x9f\x60\x91\xfe\xfd\xaf\xce\x71\xca\xef\xe7\xf2\xb2\x47\x88\x77\x33\x93\x43\x51\x10\xe8\xad\xdc\x15\x48\xa7\xd9\x14\xf5\x59\x10\xea\x64\xb0\x68\x01\x21\xd2\xdc\xf3\xa8\xab\x4a\x9e\x71\x75\x28\xc4\x7d\xf9\x5c\xa7\x33\x73\x6c\x1c\xd8\xee\x1e\x2f\x13\xf6\x67\x4e\xf5\x98\x45\x24\x51\xef\x8a\x78\x32\xa8\xff\xba\xd7\xfc\x35\x77\xb7\x8f\xe6\x6c\x74\xf9\xf8\x36\x22\x3b\x67\x9f\x8e\xfc\xc9\xd9\xe9\xac\xda\x69\x5b\x66\x93\x13\xb2\xb9\xdc\x29\xf3\x8f\xa2\x9f\x0a\x48\x5d\x57\x5a\x24\x43\x38\xca\x1b\x45\x14\x39\x90\xa9\x0c\x1e\xb5\x70\x9e\xaa\xca\xe0\xa5\xcb\x36\x3d\xc8\xdb\xeb\xfb\x39\x7d\x58\x95\xf5\x22\x6f\xde\xad\xf3\xcc\x82\x89\x42\xe8\x58\xea\xa1\xea\xb3\xe6\x4c\x8f\x73\x3a\xa2\xc4\x76\x91\x3a\xe2\x56\xa6\xae\x3d\x4e\x34\x48\x0f\xc0\xd0\xfe\x19\xe2\x50\x20\xcc\x86\xee\xcc\x86\x73\x94\x51\xc1\x6e\x9c\x76\xd6\xe8\x21\x16\xe4\x0d\x90\x25\x7d\x9c\xd6\x24\x3e\x34\xe7\x07\xec\xf7\x32\xd2\x77\x04\x6c\xcb\x18\xa7\x06\x8c\x79\x37\xe5\xed\xbb\xad\x58\x40\xd1\xb5\x6c\x6d\xbd\x74\xb3\x09\x2d\x66\x8b\xca\x76\xe5\xa8\x64\xdd\xcc\x2b\x5c\x8b\xd3\x4e\x64\x80\x9b\x1b\x24\xd6\x66\x68\x2a\x36\xcb\x39\x01\x2a\xac\x3b\x19\x55\x83\xa6\x02\x6a\x65\x7d\xef\x49\xb1\x38\xde\x3a\x58\xaf\xf1\xee\x5b\x57\x7d\x6f\x9d\xe7\x5f\xf1\xa4\x98\x5a\x62\xb5\x0f\x32\x6b\x25\x43\x4a\x0d\xba\xbe\x12\xda\x7a\x9b\x7f\x29\x8b\xd8\x66\x78\x91\xce\xe7\x66\xd8\x50\xc0\x83\x9d\x91\xbd\xfe\x5a\xb2\xd7\x8e\xf4\x15\x37\x46\xf5\xfc\x0e\x05\x98\x21\x9f\x57\x92\xb0\xb5\x81\x9d\xf5\xd4\x8c\xa5\xfd\xd6\x9e\x89\x02\x45\x3b\x29\x52\x34\x63\x6e\xa6\xf3\xab\xf1\xac\xe1\xc8\x34\x53\x14\xab\x94\x5b\xfb\x75\x29\xb7\xf6\xda\xd3\xb4\x16\xf5\x55\xcf\x5b\x5f\x12\xf5\xc0\x5d\x73\x55\x54\x82\x77\xed\x85\xd1\xdf\xf4\xc2\x28\x5f\x0e\x1b\x75\x51\xbd\x79\xad\xb7\x6f\x27\xd7\x42\x71\xc2\x3b\xbc\x16\x2a\x89\x42\xfd\x62\xac\xe6\x2b\xe2\xb8\x11\x64\x95\xb8\x58\x67\x6c\xae\x98\x67\xc3\x61\x6a\x7c\xd9\xee\xea\x68\x1d\xd0\xde\xfa\xd4\x6c\x42\x97\x5a\x9c\xf0\x2d\x8f\xd8\xdd\x3c\x60\x9b\x50\xc7\x6f\xfa\x70\x6d\x70\xb4\x1a\x0e\xd6\xd1\x9a\x83\xb5\x16\xc5\x8f\xea\x8e\x55\xfb\x73\xb3\xd1\x81\xaa\x4b\x8d\xd0\x16\xe5\x37\xce\xe9\xd5\x38\xe9\xb5\x13\xee\x37\x72\x8f\xed\x42\x33\xd7\xe5\x12\x53\x16\xf6\x6a\xcb\xb9\x51\x01\x16\x86\x99\x20\xbc\x61\x91\xd7\xd6\xfa\x81\x6f\x29\x0b\x43\x16\x8d\x58\x95\x90\xe1\xc7\x49\x88\x67\x33\xc4\xb2\x8e\xda\x65\x5c\x70\x88\x67\xeb\xe7\xc5\x72\x6b\x07\x07\x89\x36\xa2\xf8\x22\x0d\xaa\x7f\x56\x61\x38\xd4\x79\x10\x56\x83\xaa\xfc\xf0\x07\x07\x0d\xc3\xe5\xf2\x1a\x78\x9e\x97\x3e\xdf\xd7\x7f\x67\x19\x14\x9e\xe9\xb9\x0d\xd2\x01\x5d\x07\x95\xc3\xfa\xef\x6b\xd2\xdd\x85\x9a\x74\xf4\xbb\x49\x96\x41\xff\x14\x35\xe9\xe8\x17\xab\x49\x87\x33\x54\x72\xb2\x35\xd2\xb1\xc5\x5d\xb7\x12\x64\xa7\x90\x10\xca\x2d\x81\x2a\x16\xb4\xa4\xd5\xc3\x82\x91\x05\x53\x12\x60\x1b\xeb\x80\x09\x65\xcc\xe6\x28\x26\xa5\xab\xc1\x11\x5d\x0d\x8e\x79\x5c\xce\xce\x28\x3b\xe7\x99\x3f\xae\xaf\xf7\xfb\x80\x75\xcd\xc2\x65\xe2\x84\x25\xf5\x3d\x30\xb1\x64\x79\xc4\xae\x2e\x64\x26\x4e\x23\xa8\x53\x30\xb3\xee\x27\xb4\x00\xcc\x5d\x65\xb3\x0c\x4d\x52\xe6\x84\xfa\x80\x28\xe3\x83\x3a\x23\x6f\xc6\xc5\xc3\x97\x5a\x3c\x3e\x7e\x94\x27\xe9\xe3\x47\x8f\x03\x49\x24\x05\xfe\xa5\x7d\xc7\x99\x69\xc0\x40\xc6\x1a\x92\xf7\x0e\x8d\x43\xe4\xf3\xeb\xeb\xfd\xe4\xaf\xec\x6c\x25\xf8\xbd\xdf\x17\xe7\xa5\xf4\xb6\x1b\x4d\xe1\x2c\xd7\xa4\xe2\x1a\x78\xcb\xe8\xe7\x85\x6e\xa4\x88\x62\xb2\x88\x33\xc8\x51\x2d\x3d\x28\x0d\xe6\x88\xe6\x60\x38\xca\x59\xdd\x64\xd1\x91\xfd\x5e\x42\x03\xb3\x62\xce\xfd\xd5\x2a\xb3\xe0\x17\xac\x7b\x04\x30\x4f\x17\x3f\x4c\x8c\xb9\xd4\x8b\x94\xdb\x91\x49\x55\xf6\x88\x57\x9e\x84\x51\x0b\x16\x50\x77\x25\x44\x1c\x8b\x78\x75\xb5\x72\x92\x09\xf8\xea\x05\x31\x77\xdf\x37\xf7\x53\xd0\x76\x5b\x9d\x5d\x69\x2d\x76\xb8\x6b\x5e\xa9\x69\xd2\x23\xfe\xac\x70\xe3\x65\xfe\x3c\xc6\xb1\x79\x87\x64\xdc\xbc\xaf\xcf\x8e\x18\xdc\x9a\xc2\x88\xfc\x85\xab\x04\x80\xd2\xef\x04\x86\x38\x42\x81\xd5\xb1\xa4\xe3\x96\xe3\xe6\x5a\x88\x2d\x40\x81\x9d\xae\x40\xde\xa0\x03\x9e\x4d\x3f\x32\x98\x8d\xa8\x1a\x75\x9f\x65\x45\x07\x8d\xa7\x95\xfc\x43\x86\xcd\xd7\xd7\x95\x5f\xc9\x9a\xc6\xe2\xff\x76\x63\xc0\x19\x37\x1b\x70\x82\xf0\xec\x53\x40\xc6\xcd\x59\x77\xf2\xff\x54\x04\x19\x57\xa4\xc1\x81\x86\xee\x2d\x4b\x43\x51\xd6\x44\x2a\xed\xa3\x56\x3b\x2a\x07\xfd\x44\xbd\xd8\xc2\x94\xd3\x6b\xce\x7b\x0c\x86\x2a\x00\x4b\x13\x32\xc1\xba\x1f\xa6\xf9\x8d\xed\x68\x4a\x65\x81\x8d\x46\x87\xf4\x93\x82\xd3\xb8\x9e\x64\xe6\xd4\x64\x03\x5b\x7a\x35\xd9\xc0\xfe\xc7\xfb\xf7\x6f\xc5\x4f\x79\xe7\x44\xbb\xd6\x28\x4b\x68\xce\xc4\x50\x9d\x59\x32\xc2\xb6\xc2\x70\xdb\x15\xec\xca\x41\xdd\x90\x8a\xab\x35\x48\x6b\x15\x44\xdb\xd8\x05\x32\x25\x4a\x9d\xc9\x2d\xa8\xd3\x08\x67\x92\xab\x81\x45\x2a\x3f\x6d\x51\x67\x53\x2f\x89\x36\xe9\x35\x2a\x07\xd0\x68\x7a\xf3\x8c\x07\x37\x43\xe0\x7f\xa8\x43\x76\x33\xfc\x4d\xd5\x1c\x28\xad\x6f\x62\xa2\x70\x92\xa4\xa7\x02\x3c\x15\x47\xbd\xac\x8d\xff\x47\x73\x69\x1b\xf9\xfd\x89\xf9\xfa\x1f\xc6\x78\x6b\x60\xd9\x80\x3e\xbb\x3b\x62\x7a\x01\x3b\xb1\xf2\xb4\xc0\xe3\xa3\x5a\xa5\xe3\xcd\x10\xb8\x98\xf1\xb3\xda\xe0\xba\xa9\xe2\x6a\x3d\x7e\x37\xe6\xf8\xda\x06\xe9\xff\x3b\x46\x6c\xf1\x56\x74\x79\xbb\x88\xff\xbb\x18\x27\x4b\xe1\xbf\x0d\xf2\xcb\xa9\x5a\x6f\xeb\xfa\xa8\x3b\x02\xa5\xcf\xbe\x85\x73\x60\x80\xfd\x8b\x9d\x85\x7a\x05\xfc\x2e\xcf\x42\x7f\xdb\xb3\xd0\xac\xa5\xbc\x0d\xb5\xa5\xe2\xd1\x66\xc9\xce\x54\xeb\x2e\x75\x8e\xd8\x5d\xa9\x2b\x0b\xfa\xc0\x54\x57\x39\xf7\x4c\xc6\xd9\x29\xeb\xb2\x2a\xa4\x85\x83\x03\x22\xcb\x9d\x7b\xbc\x5a\xa8\x3e\x17\x9c\xbf\x85\x3e\xcf\x19\x8a\x22\xc1\xd5\x4b\xb5\x01\xc2\x7c\x8a\x98\x75\x81\x2c\xf1\xb5\x45\x59\x4e\xca\xde\x33\x44\x36\xcd\xf7\x2b\x3f\x74\x87\x1f\x1c\x18\xfa\x1d\xb0\x34\x64\xa9\x41\xc2\x92\x23\xb3\xec\x77\xb1\x24\xb8\x58\x26\x3f\x38\x50\x72\xf1\xca\x75\x22\x80\x92\x22\xac\x80\x00\x0a\x7c\x2f\x76\x22\x77\xcf\x10\x41\x52\x01\x02\x2b\x01\x2b\x72\x81\x5f\x2d\x89\x69\x95\x16\xf7\x22\xe0\x10\x6f\xb8\xfc\x84\x16\x83\x84\xbf\x98\xa0\x9c\x1b\x5e\xbe\x5e\x3d\x22\x9c\x61\x14\x15\x22\x3b\xba\x90\x4d\xa2\xae\x60\xf9\x6b\xa2\x32\x6c\xf7\xfa\x7a\xb9\x72\xbb\x0c\x05\xb1\x8f\x9c\x0a\xff\x61\xe2\x31\x87\x83\x23\x17\x50\x4f\xd6\xcb\xc4\x1e\x19\xf6\x53\x55\x09\xcd\xd7\xd6\xec\xaa\x20\xb4\x5f\x31\x9f\x2a\x4f\x4c\xdb\x7d\xb6\x14\x40\x1e\xd0\x2e\x43\xf3\x10\xfa\xc8\xb1\xdf\x2a\x6e\xc9\x76\x81\x82\x35\x5e\xc9\x32\x98\xaa\x9d\x9d\x84\x88\x24\xef\xec\x43\x7b\xe5\xae\x56\x23\xf7\xe0\x00\x3a\xe6\xa6\x11\x17\x50\xf9\x0c\x50\x17\x44\xab\xac\x44\x86\xa9\xed\x9e\x83\x26\xbd\xf9\x18\xcc\xdd\x6d\xd5\xe1\xb9\x3c\x65\xdf\x86\x37\x5f\x7f\xf2\x3f\xff\xf7\x8f\x37\xbf\x3e\xaf\xa9\x58\xa4\x3c\xf3\x5a\x09\x80\x46\xe5\x22\x95\xc8\xbb\x52\x94\x83\xb6\x29\xf9\x1d\x99\x92\x5f\x3e\xce\xb8\x46\x76\xcc\x53\xdb\xe3\xf5\x8e\x78\x6b\xca\x21\x56\xfa\xe0\x1d\xd5\xf9\xe0\xb5\xe5\xc2\x37\xa8\xe9\xa9\xed\x42\x37\x27\xae\x15\xd8\xf5\x2d\xd9\x82\x54\x4a\xed\x7a\x74\x4f\x29\x1f\x37\xc9\x48\x72\x08\x3e\xa1\x85\x56\x6a\x65\x1a\x94\x37\x57\x44\x1f\x0b\xa5\x04\x8e\xb4\xe6\xb3\xa9\x8d\xe8\x86\x1f\x1c\x38\xcc\x63\xdd\x31\x0e\x79\xae\x0e\x33\x2f\x52\xc8\x7c\x17\x67\x28\xf2\x19\x9e\x73\xaa\x0c\x35\x86\x36\x55\xaa\xea\x94\x51\x23\xa1\xd1\x04\x30\x37\xb3\x35\xe4\xed\x58\x99\xee\xb6\xff\x94\xfc\x35\x25\xe4\x25\x1d\x2e\xf5\xd4\x15\x97\xb6\x18\x92\xd1\x33\xf3\xc7\x60\xb9\xda\x23\xff\x79\xf4\x8c\x27\x60\x71\xa8\x0b\xf6\x7b\x35\x7e\xeb\x72\xd2\x80\x4a\x9f\x71\xd7\x1d\xac\x59\x61\xf4\xac\x8a\x00\x89\xdb\x02\x81\x75\x9f\x3a\xd4\x75\x07\xc6\x9c\x6a\x26\x54\x47\xe1\xf8\xba\x01\x1c\x0a\x54\xbd\xeb\x2c\xda\x2b\x6f\x43\x03\x24\xb3\xed\x59\x98\x58\xa8\x72\x31\x6a\xac\x84\x84\x12\x90\xed\x66\xc5\xf5\x6d\x5e\xed\x2b\x77\x80\x86\x7c\xe4\x11\x80\x4a\xe6\x85\x7b\xdb\xdd\x5d\xb0\xdd\xe1\xef\xc6\x76\x87\xff\x14\xb6\x3b\xfc\x0d\xe6\xbb\x37\xe2\x53\x3d\x94\x0b\x11\x4d\x7e\xca\x90\x47\xf5\x77\x1a\xad\xad\x7e\x3e\x17\xd7\x0e\x81\x1c\x25\x91\xac\x91\xc9\xb1\x41\xaf\x14\xb0\x55\xbc\x21\xfe\xd6\x3b\x38\x48\xc3\x78\xb3\xfb\xa0\x67\x5e\x0e\x3d\x71\x39\x00\x5e\xfe\xb6\x6f\x34\xea\x8f\x92\x90\xe1\xbd\xfc\xb5\x27\x17\x2a\xae\xca\xf2\x15\x69\x1a\x36\x04\xe6\x78\x9e\xc7\x65\xec\x51\xe8\x55\xc9\x01\xa5\xe1\x8f\x2a\xa7\x7e\x64\x4e\xfd\x68\x34\xc8\x1c\xed\x58\xb9\x8b\x63\xa3\xed\x71\x71\x05\x99\xd1\x68\xc8\x47\x07\x07\x8e\xa4\xd4\xcb\x97\x67\x03\x23\xfa\x30\x17\x6d\x4d\x72\xbf\x98\x8e\x6b\x06\xda\x29\x5b\x88\xd6\x2e\x10\xdd\xac\x40\x5c\xb5\x46\xc0\x3c\x54\x8e\x33\x54\x9c\x08\x75\x86\x1c\xa0\x51\x5d\x18\xa2\x85\x74\x8c\xa5\x98\x02\x43\x02\x7b\x90\x23\x05\x8c\x23\x17\x60\x8f\x09\xe1\x09\x7a\x6c\xd8\x1f\x81\xd0\x1b\xda\x59\xbc\xb1\x0d\xec\x34\xcc\xd8\x06\x3a\x85\xbb\xf8\x4b\xa6\x90\xb6\x53\xdc\x86\xa5\x78\x79\x3d\x71\xe6\xa1\x7d\xcf\xc3\x43\x9e\x9d\x03\x49\xc1\x42\xc1\x21\x00\xa6\xa2\x30\x93\x57\x4b\xb1\xd5\x03\xa2\xc3\x12\x07\x6c\xb5\xda\xab\x41\xe5\x78\xaf\x80\xf2\x15\xcb\x86\x32\x34\x4f\x87\x8c\xba\xd5\xd0\x13\xa7\x5a\xac\xd1\x00\x51\x1a\x3b\x9b\xc1\x0a\xf0\x34\xc6\xd6\x7c\x4a\x1c\xe2\x2c\x57\x00\xb9\x60\xb9\x02\x72\xfb\xcb\xa1\xf8\xaa\x7b\xbd\xe1\xdd\xdf\x28\x26\x72\x14\x19\x50\x97\xac\x2f\x39\xc5\x95\x76\x6a\xb9\x0a\x95\xc5\xde\xae\x94\x86\x89\xb1\xcf\x1a\xdb\xba\xaa\xc7\x5a\x8c\xf0\xc5\x77\x5d\x15\xdb\x9e\x04\xf6\x81\xe1\x28\x9d\x4e\x4a\x63\xca\xd0\x2a\x9f\xf4\xca\xa3\xd6\x1f\xe5\x09\x40\x76\xd4\xb6\x3e\xad\xcb\x55\xe5\x31\xad\xfc\xf6\x78\x94\x3f\xbd\xcb\x15\xa0\xde\x72\x55\x4d\x80\x58\x13\x01\x4a\xc3\x14\x6c\x99\xf2\x41\x60\xe8\xaa\x92\xd5\x4c\x12\x1d\x30\x80\x3d\x52\xc2\x28\x6c\x4c\xd7\x61\x1e\xd6\xd8\xe4\x02\x6c\xa0\x53\xfa\x38\xf7\x57\xfa\x5e\x11\x6e\xe0\x7b\x38\xc3\x22\x10\x79\xa1\x43\x81\x0f\x38\x28\x64\x6f\x20\x5d\xbd\x8d\x5d\xed\x9d\x7a\x70\xe0\x40\x2f\x76\x2a\xde\xe8\x6c\x01\x09\x52\xb8\x2e\x60\x6a\x39\x63\x6f\xa9\xce\x7a\x92\xb6\x21\x41\x1a\x89\xcc\x6c\xb5\x97\x81\xfe\xe0\xc0\x19\xa7\xdd\x79\xd0\x05\x51\x57\xd3\x36\xc5\xc9\x8d\x13\x53\x7f\xee\x93\xc8\xfc\x44\x10\xa4\xfc\xce\x90\x1a\x40\x9b\xeb\x64\xc3\x8a\x7c\x1b\xa4\xfb\xf2\xcc\x1d\xe9\x30\xf3\xd8\x19\x8a\x07\x23\x60\xa7\x69\xee\xab\xa9\x34\x72\x15\x67\xa4\x09\x9d\xa0\x5c\x72\xcb\x55\x4f\x50\xc2\x3a\x4d\x0d\x21\x61\x0e\x7c\x6f\xa9\x83\x35\x52\x18\xbd\x3c\x53\x10\x22\x43\xf5\xf9\xc8\x80\x54\xc3\x7c\x2b\x77\xcc\xcf\x40\x14\x3b\x1b\x7d\x6c\x6c\xea\xcb\x33\xd7\x05\xb0\xb0\x23\xbe\x0a\x21\x2d\xc0\x9c\xba\x2a\xe9\x80\x9f\x23\x47\x02\x1f\x34\x5f\x9c\x23\x7a\x3a\xab\x87\xcc\x86\x22\xfe\xba\xbe\xae\xcc\x90\xa2\x34\x7b\x95\x99\x3f\x80\xdd\x31\xae\x46\xc7\xfc\x4a\x10\x26\x41\x94\x4c\x36\xc8\x6f\xab\x1c\x40\x9f\xe7\x34\x42\x41\x67\x0e\xf9\xf4\x30\xc4\x11\xff\x36\xb4\x61\xe7\xcf\x4f\x7e\x78\xfe\xeb\x4f\xb4\x5a\x1b\x96\x18\x6c\x7d\x3a\xbb\x10\x92\xd9\xf3\x20\x60\x28\x8a\xb2\x00\xd6\x44\x4d\xd6\x26\x92\x35\x81\x8d\x09\x86\x8e\x00\x43\xa2\x3e\x3b\xae\x53\x9f\x35\xc4\x99\x3d\x30\xec\x30\x27\xa5\xbf\x55\x88\xdf\x4d\x53\xdb\xd6\x38\xba\xa7\xb6\x12\xb3\xbc\x41\xa5\xe2\xad\xc9\x84\xa4\xaa\x97\x1b\x21\x67\x52\xe5\xbb\x59\x4e\xbe\x0a\x37\x84\x79\x36\x25\xbd\x73\x1d\x98\x6c\x5d\x9d\xd7\x7e\xa5\xb7\x7e\x8d\x13\x7d\xe6\xc3\xbf\xc6\x95\x3e\xff\x42\xa6\xf9\x9f\x2f\x3a\x17\x31\xe7\xb2\x70\xba\x4c\x06\xf7\xa3\xf2\x06\x00\x49\xdd\xef\xd4\xc0\x0a\x6c\x8d\x6d\xc5\x8c\xfd\x35\x83\xb5\x88\x12\x68\x36\x7b\x99\x5b\x19\x20\x0e\x71\x3d\xe6\x99\x41\x33\xd2\xab\xc9\xa7\xe1\x16\xa1\x66\x05\xbb\xa3\x1c\x79\x9e\x76\xb7\x66\xa7\x6a\x0d\x80\x06\xbc\xb3\xb0\x18\x31\xe1\x11\x18\xb6\xac\x6c\x6e\x15\xfe\xd3\x6b\x2c\x8d\xd2\x58\x95\xbc\x25\x5e\xac\x0d\x8c\xc9\x5b\x34\x73\xf0\x6e\x3b\xd2\x66\x76\x75\x73\x7b\x75\x52\x91\xb7\xd2\x8b\x6a\x37\x5b\xac\x1c\xb2\xbe\xa1\xed\xa5\x8c\x7f\x9d\xad\x55\x59\x45\x30\x99\x58\x94\x58\x83\xfc\x46\x97\x20\xff\x05\x36\x9b\xfa\x30\x94\xf9\xba\xee\x77\xfb\x36\x76\x5b\x80\xd7\x12\x00\x29\xed\x75\x09\xf0\xb7\xbf\xd9\xb9\xcb\xf6\x86\x7b\xac\x13\xe0\x7f\x33\x7b\x0c\xf9\xf4\x9b\x20\xd6\x1a\xc6\xbb\xde\xce\xa6\x3b\x7d\x33\xcf\x93\x1b\x19\x33\x61\xca\x11\xa7\x21\x71\x2a\xcb\x6c\x6d\x5e\xd9\xcd\xad\x9e\x35\x92\xc3\x86\x96\xce\x72\xd2\x56\x0e\x27\x6a\x70\x7b\xb5\x9d\xbd\x53\x74\xc4\x08\x0c\x3b\x11\x8d\x99\x8f\xbe\x0d\x81\xe6\xd1\x69\x78\x72\xd6\x7b\x39\xae\x16\x68\xf4\x94\xcf\xe5\x8c\x05\xd7\x19\xc2\x0b\x14\x96\x24\x9a\xb2\x40\x93\xa7\x1f\x27\x9b\x24\xcc\x2e\xcb\x29\x25\xd9\xa4\x55\x3f\xc7\x05\x8f\xab\x8d\x5c\xc6\xfa\x06\x6f\xff\x50\xba\x94\x8b\xf3\x99\x4a\x65\xb9\x9d\xb4\x12\x89\x24\x29\x20\x51\x92\xce\xca\x8c\xf0\xd1\x2e\x02\xc6\x0d\x91\xa2\x55\x10\x6e\x39\xe3\x49\x5a\xb3\x68\x04\x6c\x78\x75\x93\xea\xe9\xfa\xbf\x77\x68\x22\xd8\x10\x86\x02\xeb\x12\xc3\x82\x0b\x5c\xbf\xd6\x05\x6e\xf3\x20\xe2\x35\x43\xd5\x7b\xdb\x6d\x19\x5b\xdc\x8e\xd0\x56\x53\xce\xcd\x2b\xaf\xfb\x70\x8e\x39\x0c\xf1\x1f\xe2\xcc\xc5\xf3\x39\x62\x3e\x8c\x50\xce\xdd\x2e\xd1\x86\x15\xa9\x4a\x42\x51\xb7\x21\x9b\x15\xd4\xe9\x6b\xba\x87\x68\xeb\x61\xc7\x9f\x22\xff\x53\x74\x1f\x1f\xbc\x41\x7c\xf0\x2d\x05\x16\xd2\x3b\x11\x58\x88\x73\x81\x85\x78\xa7\x81\x85\xf0\x3e\xb0\xb0\x31\xb0\x30\x2e\x06\x16\xc6\xb7\x19\x58\x18\x56\x04\x16\x86\x77\x3b\xb0\x30\x36\xa8\x54\x7c\xe7\x02\x0b\xfd\x66\x66\x93\x9f\xfc\xe4\x9f\xa3\x45\x58\xcd\x6c\xfe\x28\x23\xa9\xea\x75\xe4\x65\xb5\xf0\xb1\x51\x91\x64\xcb\xd8\x8c\x3a\x5d\xb3\x8a\xc0\x9a\x22\x18\xf2\xe9\xa9\xb8\x80\x64\xa9\x0a\xf1\xaf\xb8\xb9\xd1\x6c\xce\x17\x37\x60\x97\x0a\x42\xb1\x8a\x59\x6c\x1a\xb2\x51\xa9\xde\x14\xda\xb0\x13\x21\xb9\x15\x6f\x65\xc9\x39\x47\xb9\xf1\x5b\x88\xd0\x1b\xc4\x56\xbc\xa6\xa6\xb8\xac\x87\x55\xec\xc1\x36\x72\x6d\x2d\x8f\xdc\x12\x1d\x68\x4c\xb8\xae\x4c\x97\x43\xc1\x7b\xc4\xf8\xb2\x88\xf1\x3c\x0c\xeb\x31\xa3\x10\x54\x99\x07\xa3\x58\x5e\x1c\xb5\x71\xe3\xde\x44\x44\xb9\xdf\xc5\x8d\x77\xb1\x6e\x83\xf4\x21\x53\x3d\x1c\xda\x39\x17\x7c\xe3\xc0\xc9\x29\x7e\x0d\x1c\x68\x5b\xc8\x6a\x43\xa1\xef\x86\x71\x55\x95\xc2\x53\x2a\xcd\x45\xdf\x4d\x30\x15\xd6\xc1\x54\xbe\x19\x4c\x15\x82\xd8\x83\x8e\x6f\x04\x53\xf9\x59\xe4\x13\x53\x4c\xa5\xef\x82\x78\x5d\x30\x95\x6f\x04\x53\xe5\x70\xaa\x10\x53\xa5\x7c\x34\x7b\x80\x7b\x3d\x40\xbc\xde\x5e\x74\x85\x05\x5b\x9d\x0f\xa5\xaa\xaa\x7d\xc1\xdc\x65\xd2\x96\x75\xcf\x25\x9a\xba\x4b\xa9\x09\xf0\x19\xe6\xd8\x17\x68\x84\x7e\xf0\xfa\x7b\x17\x0c\xc1\x4f\x7b\xf2\xcd\x15\x64\x04\x93\x89\x3d\xe0\x85\x17\x73\x18\x45\xf2\x05\xf9\xc1\xeb\x4b\xdf\x91\xfd\x9e\xea\x4d\xba\xb6\xa0\x41\xe2\xc7\x27\x31\x66\x90\x8d\x00\xd4\xf9\x18\xc8\x74\x83\xa2\x03\x20\xcf\xe4\x00\xad\xf6\xd2\x8f\x79\xe1\x63\x3d\x89\xf4\xdb\x2b\xcc\xa7\x56\xfa\x54\x75\xc0\x8d\x0e\x48\xa1\x03\x3d\xd9\xb4\x83\xf4\x81\xfa\x96\xac\xf6\x12\x02\x57\xf8\x50\x71\x66\xab\x95\x0a\xee\xa2\xc5\xe0\xae\x50\x3e\x03\xa1\x0b\xfc\x9a\xe0\xae\xa8\x31\xb8\xcb\x07\x51\xeb\xe0\x2e\x4c\x38\x22\x62\x1b\x0f\xc7\x94\xcd\x0e\xc7\x18\x85\x41\x84\x78\x85\x26\xe3\x6b\x28\x7e\x63\xfc\xe6\xff\x3c\x39\xfc\xd7\xcb\x6a\x5e\x7c\x46\x03\x99\x8a\x6e\x8e\xd8\x0c\xcb\xf3\xfc\x33\x65\x33\x1b\xd8\x1f\xd3\x1a\x6e\x0c\x06\xaa\x88\xbe\xf6\x30\x8d\x52\x0f\xd3\x8a\x47\x2d\x52\xb8\xf7\x1f\xc9\xb2\xc4\x39\xff\x97\x14\x86\x9d\x14\x7c\xa5\xdb\x50\xdf\x26\xba\x45\x72\xe7\xda\x01\x8e\x04\x31\x90\x45\x8c\x4f\x40\xff\x71\x43\x0c\x58\xe6\xcc\xa0\xeb\xf3\x4d\x18\x8d\xe7\x95\x17\x6f\xe5\x70\xf5\xc9\x8e\xa7\x47\x66\x83\x44\x91\xde\x60\xcc\xe9\x01\x5b\xe9\xd8\x33\xce\xa1\x0f\x86\x32\xcb\x44\x47\x15\x11\xc8\xa2\xdc\x1e\x19\x79\xde\x91\x20\xc3\xb6\x1e\x21\xad\x1a\x2d\xa4\xcf\x8e\x7a\x67\x16\xba\xde\xc8\xa9\x45\x75\x69\x69\xc7\xba\x35\x4e\x2b\x73\x7a\x85\x58\x32\x55\x59\x36\xb0\xa3\x48\x7a\xea\xc1\x92\xed\x8b\xfd\xa3\x8a\x6e\x93\xba\xbc\x08\x41\xe6\x4f\x7f\x16\x50\x55\x3f\xd3\x12\x81\xc9\xab\xb7\x21\xf4\xd1\x94\x86\x2a\x09\xc5\x8f\x17\x31\x0e\x83\xf3\x78\x32\x41\x51\x82\x91\x3f\x46\x53\x7a\x75\x2a\x07\xfb\x75\x2a\x73\x77\xff\x48\xc9\x69\x32\xb8\xfc\x7b\x0a\xc9\x24\x71\x9a\xc9\x57\x86\xec\x9f\x18\xf5\xa4\x4f\x40\xff\xc9\x48\x79\x4f\x2b\xdc\x39\xea\x8d\x54\x22\x53\x2b\x41\x68\x8b\x24\xef\xf2\x7a\x74\xd1\x4c\x2d\xf6\x35\xba\x7a\x95\x58\x4a\x3e\x44\xc8\x82\xd6\xa9\xc4\x67\x0d\xc3\x44\x0f\x60\xfd\xfb\x2f\xcb\x25\x47\x6c\xb6\x5a\xfd\xfb\x2f\x76\xb1\xa0\xb5\xd9\x2b\x8e\x3e\x10\xfc\x7b\x8c\x54\xdd\xc9\xfe\x93\x52\xf5\x6b\xa3\xb1\x6c\x71\x3c\xca\xa3\xc2\x56\xcd\x5b\x72\x92\x99\x7d\xc3\x2c\xce\xda\x37\xab\xa8\xa7\xf8\xf8\xbf\x77\x60\x64\xd0\xff\xfd\x6f\xcb\x11\x9c\xbf\xf6\x2b\x77\xb7\x34\x24\x14\xd9\xe0\xdc\x8c\x37\x30\xad\x56\xf3\xc4\x8f\x73\x4c\x71\x11\x54\x06\xe6\x6d\x53\x62\x58\x5a\xde\xb2\x73\x2a\x8f\x89\x35\x16\x5c\x16\xb1\xd0\x67\x1c\x71\x4c\x26\x1a\x67\x81\xe0\xbe\x64\x64\x80\x05\xc9\x22\xc5\x44\x81\xc9\xdd\x8d\xcd\xc8\x0d\xa9\x65\x4c\x1c\x78\x3c\x02\x43\xfb\xf4\xcd\xeb\xf3\x0f\xaf\x3e\xbe\x3e\x7f\xfb\xfc\xf4\xc5\xf9\xc7\x17\xaf\x9f\xff\xf4\xea\xc5\x59\x3d\x1e\xb4\x4c\x1e\xb4\x03\x22\x79\xbe\x6b\x12\x99\x05\x5c\xdc\x1a\x91\xfc\x9a\x54\xf1\x41\xf2\xef\x23\x4d\x0e\x89\x5e\xef\xd6\x04\x31\x85\xd8\x4d\x49\xe2\x83\x4d\x48\xe2\xf9\x26\x04\xf1\x7c\xb7\xe4\xf0\xd1\xed\x90\xc3\x84\x18\xa6\xf0\xbc\x21\x39\xcc\x88\xe1\xa3\x1d\x12\xc3\x47\x5f\x9d\x18\xa6\x18\x5b\x20\x87\xaf\x73\x98\xbc\x13\x82\xb8\x85\x2b\xce\x0d\xb9\xcb\x33\x71\xe8\x09\x4c\xf3\x0b\xdd\x12\x8b\x69\x0c\xb3\x53\x3e\xd3\xe8\xf7\x7b\x66\x36\xfb\x77\x92\xd9\x2c\x21\xc5\xf6\xdf\xec\x86\xce\x3e\xbc\x73\x6c\xe7\xc3\x1d\x52\xda\x87\x5f\x9d\xd2\xde\xb3\x9d\x8d\x84\x73\x77\xbc\xa7\x49\x36\xbf\x00\x03\xfa\x0d\x11\xce\x07\x39\xc2\xd9\x7f\xb8\x03\xb6\x74\x1c\xcb\x3c\x06\x5f\x87\x3b\x2d\xe0\xc7\xb6\x5f\xec\x86\x7e\x3e\xb8\x65\xfa\xb9\x2b\x4e\xd5\xa4\xa0\x0f\x76\x48\x41\x1f\x7c\x39\x0a\xfa\x33\x65\x16\x9f\x22\x99\x49\x23\xd9\x4d\x60\x2d\x68\x6c\xcd\xe0\xc2\xf2\xa7\x94\x0a\xd4\x24\x0b\x03\xaf\x05\xb1\xbd\x9a\x62\x7f\x2a\x9b\xa9\x6c\x19\xbe\x8f\xa2\xe8\x6b\x71\xae\x75\x8f\x0c\xe5\x6a\x9d\x22\x35\xa5\x67\x52\xf1\x9b\x11\x58\x7d\xbd\x4c\x69\x1c\x06\xb2\xa2\xb1\x95\xf8\xdb\xfa\x94\x10\xe4\xcb\xe4\x23\x05\xb0\x3d\x6b\xb6\x37\x96\xd4\xbc\x52\x89\x9d\xe9\x7a\xcd\xe4\xd1\x55\x04\xfc\x79\x92\xbb\xb3\x9a\x72\xd7\x05\x32\x9a\x0e\xcd\x47\x27\xb5\x3f\x72\x9e\xb9\x47\x19\x6e\x29\x1d\xb8\x9d\x06\x4c\x02\xfb\x82\x06\x0b\xd1\xbf\x0d\xc3\x90\x5e\xd9\xd2\x00\x2e\xff\x7d\x3f\x45\x1a\x46\x9a\x79\xbc\xc2\x61\x68\x5d\x20\x4b\x36\x45\x81\x80\x59\x3d\xf8\xba\xea\xe0\x6c\x36\x89\x00\x91\x85\xbc\xdc\xe4\x3f\x75\x53\x20\x94\xdf\xee\x34\x04\x18\xe6\xf3\x10\xfb\xea\x26\x7c\x7e\x05\x19\xaa\x9e\x8f\x38\x55\x94\xc9\x7f\xa4\xef\x63\xed\x3c\xd2\x2f\x2e\x31\xb4\x62\x49\xcf\xad\xcc\x22\x12\x59\x17\x30\x42\x81\x45\x89\xf5\xea\x91\xe5\x33\xcc\x11\xc3\x70\x60\xcd\x21\x9f\x02\x4b\x4d\x50\x72\x3f\x3a\x63\xcd\xa8\x3a\x95\xe9\x96\x64\xe4\x71\x82\xbd\x2a\x11\x1e\x18\x6a\x3f\xf5\x84\x8c\xcb\x32\x8d\xd2\x46\xd4\x51\xee\xe9\xc7\x20\x05\x5f\x36\x8f\x42\x4c\xa9\x34\xa2\x25\x77\x3e\xf1\xd5\x3d\x5c\x08\x35\xcd\x75\x53\x38\x2c\xb9\x1b\x24\xf9\xd1\x37\x8e\x91\x71\x7c\x8c\xdb\xad\x7a\x6a\x89\x73\x04\x0a\x5a\xdc\x83\xe9\x27\xd9\x00\x9b\x46\x01\xa5\x02\x75\x7d\x36\xc0\xf2\x75\x73\xac\x7c\x09\x74\xc6\xe6\xba\x6e\x9b\x8b\x9c\x55\x5b\x99\xaa\x07\x53\xc8\xbe\x71\x05\xc8\x86\x7a\xac\xed\xca\xf0\xb5\x21\xf8\xad\x38\xf3\xcd\x70\xc3\xde\x9c\x5b\xaf\xd4\x9f\xa8\xa0\xb3\xec\xe0\x56\x40\x5c\x7f\x97\x44\x5b\x8f\x6a\xf2\x4a\xe6\x70\x2f\x1f\x9b\x9e\xa1\x21\x67\x31\x32\xee\x84\x13\x70\x92\xeb\xb7\xb8\xd5\xcf\x83\xc0\xa0\x2a\xeb\xef\xd3\xbc\xce\xe7\x6d\x61\x59\xeb\x76\xe0\x89\x01\x73\xf3\xdb\x76\xd9\xad\x5b\x39\xb0\x3d\xd6\xe6\x5b\xc3\x04\x4e\x28\xc7\x3e\x3a\x34\x37\xc1\x74\x58\x2a\x45\xac\xd7\xf5\x93\x75\x20\x63\xbb\x52\x71\x45\xf9\x8c\xe6\xab\x87\x53\x12\xa0\x10\xf1\x84\x74\x9d\x94\x96\x6c\xd0\xaf\x93\x8a\xa8\x98\x8a\x3d\xee\x15\x28\xf7\x0d\xf0\xa2\x5e\x74\x48\x26\x9d\xdf\x5a\x49\xea\x1e\x18\x74\x3b\x07\xb1\x4d\x9d\xd3\x1e\x27\x2e\xac\x1d\xd9\x62\x4b\xd7\xb1\xa4\x23\xe9\x3e\xd0\x89\x42\x9a\x6d\x86\xbe\x2f\x32\xe2\xb8\x11\x3d\x4e\x11\xfd\xb8\x96\x34\xbe\xa6\xb9\x8b\x78\x81\x78\x7d\x50\x64\x1d\x15\xac\xf1\x56\x5b\xb3\xa4\x84\x04\x6f\xb5\xa0\x7a\x52\x6f\x6c\xb5\x25\x90\x9d\xf9\x68\xce\x2d\x48\xac\x97\x1a\xf3\xff\xfd\x97\xc8\xe2\x0c\x8e\xc7\xd8\xb7\xe2\x08\x93\x89\xc9\x74\x00\x2b\x8a\xfd\xa9\x05\x23\xc9\x7c\x58\x73\x99\xec\x18\x45\x16\x24\x81\x35\xe5\x7c\x9e\x70\x23\x51\xf7\x4b\x41\x49\x79\x89\x44\xdb\x02\x2a\x49\x23\xa2\x72\x4b\x50\x3f\xea\x84\x98\x7c\xaa\x05\x9e\xfe\x4a\xa7\x0e\x7e\xa8\xf4\x32\x55\xda\xa0\xb3\x37\xa7\xe7\x1f\x3f\xbc\x7b\x95\x5d\x31\x87\x3e\x9d\xcd\x20\x09\xa2\x8c\xc8\xa4\xe9\x86\x6d\x26\x35\x03\x84\xd2\x39\x22\x88\x59\x84\x32\x34\x46\x8c\x65\x29\xf8\xb9\xcc\xd2\x63\x03\xfb\xe3\x45\x08\xf3\x53\x3c\xa3\xbe\x74\x18\x5b\xab\x8e\x6f\xd0\xd2\x1b\x60\x08\x11\x64\x64\xb7\x70\x78\xf5\xe2\xf9\xbb\xd7\x25\x68\x48\x82\x3b\x41\x9c\x63\x32\xe9\xc8\xc4\xdb\x28\x38\x4c\x78\xe4\xdd\x40\xe6\x1d\x82\x81\x64\xb5\x27\x31\x0e\x1a\x9d\x61\xb6\x40\xcf\x35\x4d\x9a\x85\xdb\x8d\x24\xe1\x16\xa6\x9a\xb5\x5a\x43\x8e\x3e\xaf\xd7\x19\xca\x9c\xb6\x0d\x72\x67\xa3\xfb\x70\x85\xb6\x50\xf7\x67\x39\x6f\x92\xe4\xd2\x6e\xa3\xd8\x8c\xc9\x3c\xd6\x8c\xd4\x71\x61\x46\x72\x49\x47\x40\x5f\xaf\xf9\xd9\x26\xa8\x30\xcf\xa9\x04\x1b\x26\xa0\x38\xae\x44\xec\x58\xcb\xee\xa7\xbc\x95\x04\xa2\x5e\xe2\x86\x6c\x6a\xa5\x6a\xe7\x78\x43\x86\xf3\x31\x50\x0e\x73\x9d\x00\xc3\x90\x4e\x84\x30\x56\xe3\xc5\x96\x5d\x5a\x1d\xe5\x62\x97\x48\x60\x82\x6b\xa1\x51\x4e\xe9\xd9\x92\x25\xc9\xd8\x0b\xe9\x50\xbc\x01\x63\xd2\x33\xb8\x88\x27\x45\x91\xb4\x3d\xdd\xbe\x25\x36\xa0\x9a\x09\x78\x11\x60\x6e\x5c\x96\x95\x5c\x72\x0b\x12\x71\x0b\xb7\x7c\x0b\x86\x75\x2c\x5d\x28\x0d\x86\x55\x31\xa9\x51\x7c\x31\xc3\x5c\x33\xa9\xbd\x6a\xa6\x10\x06\xc1\x3a\x8e\x70\xd3\x8b\xf6\xb1\xa0\xe2\xe3\x74\x42\x29\xc1\x56\x50\x00\x5a\x2d\x60\x4c\xa2\xe8\x0d\x9a\x44\xa1\x57\x26\x9c\x6a\xcc\x2f\xb5\xd3\xbd\xda\x8a\xd7\xa8\x90\xf7\xe4\x89\x55\xb6\x9c\x74\x47\x8a\x7e\xa4\x65\x6d\xc7\x43\x23\x3e\xa8\xe4\x2d\x8b\xa3\x33\xcc\xf8\xc2\xd4\x6a\xa4\xbd\x19\x54\xac\x4a\xd2\xac\x3d\xfe\x35\x43\xe9\x39\x37\x8b\x26\x2a\xcd\x48\x42\x6b\x4a\x6a\xa8\xf5\xb2\xaa\x65\x9d\xc3\x4b\xd4\x2e\xba\xa3\x12\xb4\x3e\x24\x7e\x7a\x15\xde\x7c\xd5\x0c\xc9\x8b\xf7\xb6\x17\x7d\x2a\x67\xdd\xb4\xec\xb5\xa8\xfc\xff\xb3\xf7\xe6\xdb\x6d\x1b\x59\xbf\xe8\xff\x7e\x0a\x08\xe7\x2e\x35\xd1\x29\xd2\x24\x35\x5a\xfd\xb1\x6d\xc5\x56\x3a\xfe\xe2\xe9\xb3\x9c\xf4\xe9\xe8\xf0\x7a\x41\x44\x89\x44\x04\x01\x0c\x00\x4a\x62\x2c\xdd\x67\xb9\xcf\x72\x9f\xec\xae\x9a\x07\x14\x46\x82\x16\x9d\x48\x6b\x25\x26\xc1\x42\x0d\xbb\xa6\x3d\xfc\xf6\xde\x85\x61\x55\x4a\x78\x0d\x11\x67\xa5\xd0\x81\x44\x50\xc7\x06\xf6\xd5\x02\xed\x65\x8e\xd6\x4e\xb0\x16\xfd\x74\x16\xdd\x7c\xd0\x69\xf8\xfb\x02\x62\xed\x1f\x3d\x91\xc2\x88\x07\x64\x81\xe1\x35\x71\x40\x91\xe2\xb5\x60\xa6\x04\x7b\xa7\x48\x1a\x42\x66\x3b\xa4\xc8\xef\x24\x63\xeb\x94\xc0\x54\xf2\x86\x62\x00\xf1\x44\x05\x2e\x67\x91\x01\x78\xd8\x33\x34\x20\x1a\x1c\xa6\x9d\x58\x31\xc5\x10\xfd\x16\x43\xc6\x80\x3c\xfa\x1f\x6d\x0d\x00\x3d\xc0\x8e\xbe\xa8\x36\xc9\xa3\x1c\x0f\x75\x96\xf1\xe6\x29\x33\x45\x3e\x9d\x82\xd4\xb9\x07\xcc\xe4\x68\x7c\x6f\x0b\xe2\x28\xcf\xdf\x2f\x3b\xd4\x62\x8a\xde\x70\x3d\x4f\x29\x0c\x42\xe7\xcb\x56\x07\xfb\x08\xe3\xac\x03\x67\x63\xa7\xe7\x87\x93\x60\xe1\xe1\x78\xae\xdb\xdb\x61\xcf\x4f\xde\xc1\x9b\xed\xed\x4e\x8a\xc3\x90\xb2\xa4\x02\x20\x74\x00\x0e\x42\xea\x7b\x88\x22\x8e\x73\x0f\x88\x16\x23\x53\x7d\x51\xed\x9d\xb4\x17\xc3\xab\xe8\x1a\xe6\x57\x7b\xdf\x30\xf6\x8e\x36\xd1\x0d\x63\x49\x50\x2f\x77\x10\x01\x1f\xb8\x20\x00\x0b\x30\x01\x09\xb8\x00\x73\xe0\x81\x2b\xb0\x04\xe7\x60\x06\xae\xc1\x14\xbc\x07\x37\xe0\x37\xf0\x19\x7c\x00\xa7\xe0\x44\x38\x19\x5d\x4a\xbe\xdd\x97\x7f\xd6\x08\x14\xb7\x64\xa6\x41\xec\x7c\x09\xb7\xb7\x0b\x92\x6a\x48\xc9\x34\x42\x29\x38\x84\xea\xc8\x15\x2a\x51\x22\x84\xc3\x57\xc8\xa3\x43\xd0\x8c\x4e\x61\x8f\x39\xdf\xff\x01\xe3\xe7\xca\x37\x12\xf7\x20\x76\x68\x18\xf8\x7b\xa9\xb3\x1f\xd7\x1a\x2e\xe3\xe5\x37\x11\x2e\xe3\x95\x12\x2e\xe3\x55\xab\xe1\x32\x3e\x3d\x86\xcb\x28\x0c\x97\xf1\x56\x0f\x97\xf1\x76\x9d\xe1\x32\xde\x19\xc2\x65\xbc\x2b\x08\x97\x71\x99\x1f\x2e\xe3\x58\x0b\x5b\x71\xfc\xd5\xe3\x66\xf0\xa6\xdf\x4a\xa7\xea\xdb\xaf\x18\x31\x83\x77\xe0\x0f\x76\xe2\x81\x88\x05\x2d\xcf\x44\xab\xc7\xe9\xa9\x62\x53\x44\x74\x44\xb7\x33\x38\x1e\xc5\x67\x70\x7c\x8f\x63\xca\x4b\xc7\xc0\xd6\x96\xfc\x15\xf8\xda\x21\xb0\xa5\x3e\x00\x1d\x71\x26\xf8\x77\x77\xbe\x7c\x08\xa2\xeb\xd5\x57\xcf\x08\x7f\x14\xd2\xbc\x35\x52\x62\x89\x6c\x92\x82\x50\x0a\x1f\xce\x52\x27\xdd\xdd\x85\xf7\x0e\xf0\x71\xb2\x3c\x1e\x1c\x5d\x69\x0f\x37\x87\x7b\xa3\x3e\x7f\xee\x67\x8f\xe6\x88\x1d\xcd\x40\xf9\x91\x3a\x33\x3a\x80\x2f\x2a\xbd\x85\xfc\xdb\xc5\xc7\xc3\x5b\x04\x81\x03\xfc\x96\x62\x9b\xbc\x2e\xf6\xa7\xfc\xf5\xf5\xff\xfc\x70\x30\xbd\x09\xcd\xfe\x94\xee\xdc\x57\x38\x6c\xe2\x14\x09\x6f\xe1\x64\x81\xf9\x66\x2a\x16\x01\xfb\x0a\x26\x89\x4b\x78\x6a\x34\xb3\x98\x41\x0f\xe1\xcd\x31\xe3\xe3\x89\x14\x03\xec\x77\x51\xea\x5f\x50\xac\x03\xe2\x5e\xbc\x09\x96\xdc\x99\xe3\xa5\x08\xcf\xe7\x2e\xd2\xe8\xc2\x0f\x02\x39\x47\x5f\x12\x4f\xaa\x87\x20\x97\xd4\xe2\x24\x73\x9f\x21\xba\xdd\x21\x4d\x46\xab\x68\x38\x58\x38\x17\xad\x6b\xb9\x3d\xd2\x40\x07\xb2\x62\xc4\x16\x9d\x20\xf2\xdc\x80\xca\x75\x43\xfa\xef\x2e\xfd\x77\x8f\xfe\xbb\x2f\x44\xc1\xbd\xac\x18\x49\x1b\xc9\x8a\x8d\x86\xb2\xa2\x1b\x35\x55\x2d\xd5\x15\x18\x54\x9b\x5b\x5f\xdb\x84\x87\x8a\xfa\xda\x2c\xf2\x83\x6a\x96\x62\x09\x85\x43\x75\x65\xd9\x2a\x60\xca\x0d\x60\x2c\x19\xd5\x71\xd7\x2d\xf9\x95\xee\x62\x8e\x98\x75\x3b\x0f\x0d\xa5\x64\x03\xde\xc5\xf8\xa1\x05\x41\xed\x40\x8b\xcf\xb2\x75\x11\x2d\x42\x4f\x8a\xf4\xce\xb4\xe1\x2c\xd0\xf8\x0a\x21\x56\x34\xf5\x78\x1a\x47\xe1\x54\xee\x2d\xb7\xb8\x11\x28\xb3\x29\xb2\x0c\xf9\x3b\x0e\xa5\x0e\xbb\x41\x0c\x5d\x6f\x49\xdf\xc1\xf8\x3c\x7c\xcd\x11\xa9\xb6\x2b\x63\x74\xe7\xae\x1f\xf7\xac\x0f\x01\x74\x13\xc8\x90\xd1\x96\xe7\x5f\xe0\x4b\x32\xb5\x48\x0c\x7a\x52\x14\x31\xe9\x54\x42\xc6\x48\x22\x02\xb1\xc5\xb6\x13\xde\x74\x62\xa5\x91\x05\x3d\x3f\x55\xd0\xd7\xfc\xe7\x5e\x23\x70\x65\x3e\x79\xf0\x1d\xbe\x95\x4b\x94\x4f\x33\x18\x43\xeb\x06\xf1\xc4\xa1\x45\x56\x47\xe2\x5e\xa3\x1e\x2d\xa3\x45\xac\x77\xcb\xb8\x28\x78\x98\x48\x69\xde\x79\x8c\x8e\x06\x2b\xa2\xea\x52\x38\x8f\x55\x23\xc2\x20\xd3\x96\x1c\x29\x64\x08\xec\x23\x2d\x7a\xaf\xa1\x4b\xc5\xca\x9d\xda\xd0\xcc\x15\xac\x60\x83\xbe\x52\xa8\xfa\xe9\x84\xcf\xf4\xda\x90\xe2\x67\xd2\x24\xa2\x63\xa5\x6a\xe4\x68\x79\x3d\xd0\xf4\xaf\xc9\x89\x47\xb8\x16\x63\x1d\x85\xfb\xdd\xb0\xc8\xc8\xa9\x7e\xe3\xc6\x61\xbd\x2e\x3d\xd3\xfc\x0b\x78\xda\x05\x96\xce\xbd\xc1\xea\xab\x67\x3b\x22\x6a\xa2\x2e\xea\x3a\x31\x1e\xf1\x80\x1a\xf9\x46\xa4\xbd\xac\xf9\x67\x3f\x8f\x0c\xaa\x05\xa9\x99\x41\xa1\x7d\x30\x48\x6e\x24\x05\x98\x4a\xc7\x6f\x2a\x87\x06\x3b\xa4\xcb\xdc\x0c\x06\xae\x08\x72\x58\x1b\x18\xa4\x1a\xf2\xef\xdf\x33\x18\x62\x6c\x37\xe1\x55\xc8\x65\xf2\xba\x78\xbc\x04\x33\x8e\xd1\xb6\x44\x8f\x66\xb9\x41\x80\x2f\x8b\x37\x07\xd6\x3c\x0a\xfc\xc9\x52\x41\xcd\x4c\x16\x31\xba\x71\x82\x25\x3a\xa2\x09\x26\x57\x6d\xa6\x67\x1d\xc7\x10\x57\x9a\x2c\xe8\x87\x1b\x37\xc4\x48\xd9\x04\x91\x3f\xcd\xa1\x7b\xb5\xc8\xe5\x6d\x4d\x42\x43\xac\x09\xed\xd9\x40\x56\xfd\x93\x9d\xe7\x21\x8a\xc7\xd1\x22\xa1\x8f\x14\xeb\xc0\x2e\x38\xdb\x39\xc4\x91\x07\x6d\x6e\xbb\x20\xc7\x5c\xd6\x02\x93\x33\xb7\x68\xe9\x4a\x84\x93\x6d\x4a\x84\x88\x6a\xc4\xe2\x52\x52\x36\x35\xb9\x0c\xc1\xb3\x8a\xf6\x0f\x0b\x43\xae\x80\x6e\x07\xa9\x35\xbd\xcf\x8c\x48\xa2\x9a\x60\x8d\xc3\x92\x7b\x53\x37\xc7\x62\x8e\x96\x45\x46\xa6\x0b\x47\x97\x35\x64\xde\x03\xa3\xa6\x9f\xda\x5c\xb8\xe0\x9f\x07\xe8\x33\xb7\x56\x54\x90\x1b\x88\x2e\xff\x94\xbf\x31\x06\x72\xe0\x6f\x03\x82\xcf\xc4\x0b\xf5\xd7\xe3\xc8\x56\x9d\x30\xf6\xd3\xbf\x3f\xfd\xfb\x53\xee\x77\x92\xd8\xe5\x43\x7e\x47\x4b\x96\x8f\xb8\x30\xf5\x44\x2e\x4b\xe8\x27\xd4\x59\x6c\x2c\x5a\xf6\x93\xb7\x6e\xe8\x4e\xa1\xf7\xfd\xf2\xe5\xc7\x57\xc9\x6a\x39\xa1\x0a\xe0\xab\x93\x45\x92\x46\x57\xdd\x18\x6a\x94\xc3\xa2\xee\x98\x5e\xa8\xf4\x46\xae\x36\xd8\x4c\xd4\x79\xc2\x6e\x29\xe7\x0c\x3d\x58\xb2\xc6\x4d\xf9\xd0\xa1\xc4\xce\x3d\x8d\x8a\x0e\xa5\xbc\x51\xab\x46\x31\x71\xf2\x72\x23\xdf\x0b\xc9\x7e\xf7\x42\x31\xe0\xbd\x90\xec\x7d\x2f\xb2\xd6\xbc\x17\xba\x79\x90\x6b\x02\x64\xbf\xc3\x89\xe4\x15\x28\x6f\x56\x32\xf4\x50\x5d\x68\x98\x1a\xda\x76\x43\xcf\xd4\x80\x48\xda\xd3\x53\xf9\x99\xc1\xaf\xdd\xf4\xd3\xa9\x81\xda\xc2\xaa\x2f\x9e\xe9\x0b\x75\xa0\x68\x1e\x8c\xa0\x89\x72\xa7\xa9\x9c\xd3\xde\x08\x53\xe0\xae\x7c\x43\xdc\x1b\x9a\xba\x59\xee\x8e\xd4\x6d\xdd\x1e\x2e\x61\x20\x72\x6e\x31\x19\x08\x50\x7e\x3b\x29\xf7\xec\x60\x5f\xed\xaf\xa1\x37\xf4\xe2\xa5\x06\x7e\xf3\xbd\x9b\xdd\x0e\x51\xc8\x6e\x3b\xfd\xf4\x29\xb9\x93\xcb\x6f\xb6\x1c\x69\x75\xc7\x7c\x34\xd5\x8f\x41\x3c\xc8\x60\xbf\xa8\xfc\xf3\x0a\x1f\x1e\x6e\x18\x85\xcb\x2b\xc2\x94\xac\xe6\x35\x44\x15\x8b\x44\x5b\xc3\xa5\x0e\xb2\xb5\x99\xfa\x11\x91\x39\x97\xf7\x23\xa6\x5d\x8d\x57\x7c\xde\xd4\xeb\xa6\x12\x77\xd7\xa4\xf2\x7c\x06\x0f\xb3\x45\xc2\x37\xa0\xfa\x6a\x2c\x66\x03\xd5\xe5\x78\x20\x6d\x33\xda\x54\xd5\xc5\x88\xfe\x5e\xe1\x77\xcc\x43\xca\x73\x28\x2a\x0e\xb7\x52\x93\xf0\x74\x65\x34\x26\xfc\x21\xf3\x64\xe8\xca\x0b\x2e\xb3\xd2\x80\xfd\x42\xa8\xc1\x5f\x08\x5e\x15\x07\x44\x20\x24\xa4\xca\xdd\xbd\xdc\x43\xd3\x3c\xfa\x5d\xb0\x07\xf6\x73\x93\x36\x35\x41\x09\x37\xd6\xd7\x34\x0d\x44\xad\xea\x41\x64\x1e\xa7\x76\x26\x2e\x3a\x25\xcc\xf6\xc0\xb5\x0c\xb1\xc7\xd4\x07\x26\x26\xa6\xbe\x0a\x80\xb9\xaa\xfd\x28\xa4\xfd\x66\xda\xe9\x4a\x7e\x20\x96\x24\x13\xbf\xc4\xcc\x99\xf5\x91\x32\x67\xad\x0b\xa1\x6c\x64\xdf\x33\xa1\x7f\xd5\x71\x15\xc9\xff\x9f\x54\x79\xdf\x4f\xac\x6b\x1f\xde\x58\x51\x18\x2c\xad\x73\x38\x71\x17\x09\x44\xf2\xb7\x9f\x58\x57\x64\x55\x58\xe9\x2c\x8e\x16\xd3\x99\xe2\x34\xa2\xd3\xc4\xf2\x43\xa2\x87\xfd\x69\x71\x0e\xe3\x10\xa6\x30\xb1\x26\xc1\x22\x49\x61\xdc\x5b\x1b\xbd\x7e\x88\xa2\xb4\xa5\x95\x50\x44\x31\xbb\xd8\xfb\xa1\x5f\xec\x05\x72\x79\x98\x3c\x9d\xc4\x5e\x22\x50\xeb\x26\x07\x86\x52\xc7\x07\xda\xb5\x37\xd0\x8d\x43\xeb\x2a\x8a\xa1\xe5\x9e\x47\x8b\xd4\x22\x52\x49\x11\x7f\xd4\x90\xd8\x85\xce\x9b\x15\x04\x8f\x3c\xd6\x1f\xad\x36\x15\xab\xcc\x75\x9e\x15\x65\x9b\x32\xf8\x6f\xed\x23\x58\xc7\x4b\xd6\x49\x3c\x47\x90\x8c\x18\xd4\x78\x11\x62\xec\x22\xb1\xc3\x76\x31\x92\x91\xa3\x24\x09\x68\x52\x09\xc4\x4d\x38\xf6\x04\xa6\x5d\xb2\x1a\x48\xbe\x3a\x0e\x87\x74\x43\x8f\x81\x22\x09\x70\x12\x7b\xcc\x24\x38\xa4\xca\xea\x80\x44\x15\x86\xf8\x66\xd4\xe1\x48\x44\x0c\x7f\x84\x1e\x88\xf5\x07\x91\xfe\xc0\xd7\x1f\xb8\xfa\x83\x40\x7f\xb0\xd0\x1f\x4c\xf4\x07\x09\x7d\xe0\x87\x14\x6e\x81\xe5\xae\x8e\x1d\xc3\x79\x94\xf8\x69\x14\x2f\x25\x77\x2a\x07\x5c\xb0\xf7\x09\xa5\xc1\x5c\xfb\xee\x69\xdf\xaf\xb4\xef\x4b\xed\xfb\xc9\x5f\x26\x80\xf9\x2b\x16\xc0\xdc\x97\x03\x98\xc7\x20\x1a\x7d\xea\xf8\x52\x00\x73\x5f\x42\x28\x32\xec\xc9\x47\x82\xf7\xf1\x1d\x70\xdb\x39\xee\x84\xa3\xc8\x0c\x0f\x72\x64\x18\xee\x0c\x1c\x77\x42\x87\xbe\xe1\xa8\xa8\xdc\x6b\xed\xb7\x8c\x58\x3f\xd5\x0a\x70\x45\xc1\x7b\x73\xad\xa7\x36\xb8\x29\xa8\xf3\xd4\x06\xbf\x69\x3f\xeb\x8a\x1e\xf0\x59\x2b\x80\x2d\x1a\xe0\x83\xf6\x14\x2d\x4b\x1b\x9c\xd2\xa7\x61\x8f\xd8\xa8\x5f\x7e\x7c\x45\x6a\xbb\xc2\x59\xca\x40\x28\x22\xbb\xfb\x52\x64\x77\xee\x46\x4c\xa1\x86\x7a\x60\xf7\x27\x22\x8e\x3b\x2b\xfa\xbc\x03\x47\xfc\xa9\xc3\x1f\x53\xfa\x43\x89\xf8\x47\xb8\x18\x03\x19\xe4\x04\x9c\xbf\x07\xac\x27\x0c\x27\x52\xa1\x27\xa4\x68\xa6\x27\xe4\xf1\xea\x3d\x61\x4a\xa9\x0a\x3d\x21\x45\xb7\xb7\xf5\xae\x28\x2d\x41\x53\x33\x86\x79\x32\xb4\x88\x2b\xd5\x56\x06\x69\x09\xcd\xbb\xfe\x4b\x47\x54\x9f\x33\x06\x0a\x55\x0e\x7b\xf3\x18\x5e\xc3\x30\x7d\x45\x18\x95\x0e\x43\x22\x6d\x8d\x46\xb0\x47\xee\x85\x1e\x31\xff\x31\x14\xd4\x08\xfd\xe2\xb9\xa9\x4b\x9f\x3f\xc7\xbd\x40\x6b\x72\xb4\xd5\x3f\x4a\xa5\xa6\x35\xf5\xb0\xa1\x0b\x74\x33\x8f\x52\x52\xe1\x22\xf4\x7f\xe7\xe8\x6d\xa7\x97\x46\xc7\x71\xec\x2e\x3b\x4e\xef\xc2\x0f\x52\x18\xab\x88\x32\x0a\xe7\xc3\x09\x2b\x43\x38\x49\xbb\xf3\x38\xba\x5d\x12\x78\xd1\xac\x3b\x75\x53\x78\x83\x61\xf3\x29\x8c\xaf\xf0\x6e\x0b\xa7\xfc\xe9\x58\x80\xb2\x61\xef\x27\x3f\xf4\x9c\x7b\xc7\xe9\x25\x51\x9c\x76\x3a\x39\x20\x50\xd4\xa7\x1e\xce\x56\x0c\x5f\x46\x57\x73\x37\x86\x9d\x14\x3f\xc4\xb1\xf2\xe3\x11\xde\x4b\xe4\xf2\xfb\xbb\x7d\x3f\xee\x91\xdb\x13\xed\x45\x0d\x94\x0e\x7b\xe2\xbc\x71\x9e\xc4\x77\x77\xe8\xcd\x78\x44\xde\x95\x7f\x54\x2a\x79\x42\xb0\x93\x61\xa6\x32\xed\x80\x72\x9e\x44\xa4\xc6\x88\xd7\xa8\x95\x50\xaa\x05\x78\xf2\xd8\xd1\x38\x0a\xc9\x77\xd1\x87\x51\x4c\x9e\x68\x75\x8c\x22\x6d\x92\x99\x42\xbc\x7c\x8e\xc5\xa4\x7e\x65\x72\x9f\xe6\x13\xfb\xb4\x3e\xa9\x4f\x4b\x08\x7d\x6a\x20\x33\xbd\x2a\x34\x2a\x9f\x9a\x68\x7c\x2a\x53\x98\xc2\xc5\x72\x49\x8b\xaf\x4a\xd8\x23\xcc\x3c\x4b\xbc\x11\xf5\x42\x44\x2d\x92\x4a\x43\xba\xe1\x8e\xf0\x03\xfd\x5a\x3b\x92\x8b\x9d\x1a\x0a\x9d\xda\x47\x88\xe7\x48\x30\x6c\x98\x73\x1c\x9d\x70\x14\x8f\x22\x82\x81\x74\xb6\xb7\xf1\xfd\x8b\xbf\x90\xa9\x02\xf4\xdb\x28\x04\xe8\xd8\x50\xd6\x1a\xdd\xd3\x82\xbe\xa1\x43\x51\xe3\x0e\x4b\x07\x42\x09\x1b\xde\x83\x9a\x83\x51\x17\xf5\x59\xcc\xa7\x42\xed\x01\x5f\x8a\x8e\x9c\x43\xa4\x98\x08\xca\x44\xea\x35\xd3\xe7\x52\xc5\xf7\xe8\xf9\x19\xe9\xfe\x78\x14\xdf\xa7\xbd\x99\x1b\x7a\x01\x3c\x41\x67\x6e\x07\x3a\x24\x85\xc7\x4b\x3d\x85\x47\x8c\x9f\x81\xd8\x01\xbe\x9c\xc2\x03\xcc\x46\x7f\x74\x3a\xe7\xa3\x13\x47\x2a\x2e\x31\x36\x67\xe1\x18\x33\x61\x32\x8f\x05\x24\x1f\x84\xad\xbe\xc2\x8d\x49\x40\xd3\x23\xc4\xf9\xdd\x3b\xe0\x7a\xf4\x47\xe7\x5c\xae\x5c\xe6\x8d\xce\xe2\x55\xab\x9f\xea\xd5\x67\xd8\xab\xb3\x68\xd5\x36\xde\xeb\x6d\x70\x0e\xed\xcc\x5f\xb5\xee\x9b\x1c\xf2\x9c\xda\xe0\xcc\x5d\xb5\xf2\xdf\x8a\x88\x83\x5a\x08\x56\x6d\xe1\xb3\xde\x42\x86\xd5\x3c\x5b\xac\xda\xc6\x07\xbd\x0d\xc2\xad\x9e\x4d\x1a\x57\x2c\x71\x41\xc2\xe5\xc0\x01\xa7\x7a\x43\x84\x01\x3e\x4b\x56\x1d\x81\x56\xad\x91\x3f\x3b\xbb\x18\x03\x01\x9d\x7f\x7f\x13\x32\xc8\x35\xf3\xfc\x8f\xe2\xf2\x5a\x1c\x20\x15\xc9\xb4\xcb\x2d\xa2\xf3\x9a\x4d\xd1\x17\x8b\x6b\xd7\x79\xb3\x33\xaf\x66\x2b\x5a\x05\x55\x5a\xe3\x4c\xc2\xd9\x55\xa3\xc6\xd8\xfb\x25\x6d\xb1\xd8\x0a\xcb\xba\x8d\x90\x17\xb5\xda\xcf\x65\x5f\xbc\x37\x85\x89\x93\x5e\x83\x37\x0d\x12\x27\xe1\xf4\xfd\x38\x0e\xdc\x66\x24\x4d\x3a\xf8\xe9\x20\x18\x1c\x5e\x4f\xcd\x20\xff\xd4\x4f\x03\x98\x48\xc6\xec\xbc\xa4\x47\x44\xb9\x7f\x28\x19\xfc\xb2\x1e\xe5\xe2\xb3\x1a\xe5\xd1\x10\x10\x6f\x5f\x8d\xc2\xe8\xe7\x15\xb1\x81\xfd\xe6\xc0\xfa\xb8\x08\xa0\x66\x44\xac\x65\xad\x94\x33\x36\xc9\x11\x07\x31\x96\x3b\x03\x5a\x44\x33\x48\x92\xd0\x59\xdc\xf3\xc1\x12\xc6\x32\x39\x83\xab\x14\x01\x4e\x8d\xd5\xa6\xfb\x6b\x67\x12\xec\x97\x98\x0a\x54\xa0\x15\x03\xae\x0c\xc6\x65\xbd\xc8\x36\x9d\x13\x44\x24\x5f\x41\x9d\x0f\xeb\x31\xb4\x47\xe6\xb9\x39\xb2\xfd\x3f\x30\x01\x7c\xb0\x38\x2a\x8b\x0a\x7e\xa0\x5a\x5f\x3f\xc9\x89\xc2\x29\x90\x7c\x43\x23\x1a\x82\xbe\xef\x2d\x20\x8b\x95\x39\xf3\xa7\x33\x98\xa4\xd6\x3c\x86\x13\xe8\xc1\x70\x22\x63\xf8\xcf\x61\x10\xdd\x1c\x35\x31\x78\x15\x52\x09\x2f\xf4\xe6\x44\x7a\x17\x01\x6d\xa0\x39\x34\x0a\xa3\x74\x13\xe9\x24\xa7\x18\x2d\x1c\x82\x16\xe5\xd4\x1c\x7b\x15\xe7\xe5\xab\x38\x1e\x66\x60\xf2\xd3\xc4\x7a\x73\x60\xc5\xe8\x1c\xe9\x15\xa9\xf2\x6b\x45\x5a\x2a\x31\x91\x0e\xca\xf3\x67\x8a\x94\x99\xf4\xf8\xc5\x5a\x79\xae\xa9\x27\xea\x7b\x16\x30\xe0\x22\x8e\xae\xba\x30\x4c\x63\x1f\x26\x54\xab\xbf\x8a\xb6\x5e\xbf\xa8\x6a\x86\x0e\xf8\xcc\xae\x99\xf7\x61\xb0\xe4\xc5\x3a\xab\xfa\xba\xe3\x5e\xad\xcb\xd7\x5d\xe8\x9e\x25\x8f\xd7\xce\xec\xcf\xea\xd7\x7e\xfd\x2d\xf9\xb5\x4f\xd7\xea\xd7\xfe\xfe\x9b\xf0\x6b\xbf\x51\xfc\xda\x6f\x5a\xf5\x6b\xff\xed\xd1\xaf\xbd\xd0\xaf\xfd\x54\xf7\x6b\x3f\x5d\xa7\x5f\xfb\x67\x83\x5f\xfb\xe7\x02\xbf\xf6\x59\xbe\x5f\xfb\x07\xcd\xaf\xfd\xc3\xc3\xf9\xb5\x9f\x4a\xa7\xea\xe9\x43\xf8\xb5\x9f\x3c\xfa\xb5\xff\x15\xfc\xda\x2f\x8b\x45\xde\xdb\x85\xff\xd3\xf0\xd9\x8f\x81\x59\xe4\xbd\xc1\x01\x68\x11\x5f\x85\x1d\xdc\xb7\x05\x1b\x2e\x3c\xd0\x79\x68\x66\xe1\x02\xee\x4d\xb4\xf8\xcc\x75\x7d\xd1\xb1\x5c\x69\x13\x61\x70\x57\x81\x63\x32\x24\xb0\x49\xa9\x34\xe6\x40\x42\x23\x00\x53\x76\x8d\x60\x03\x63\xae\x11\x7e\x88\x43\x4a\x33\x9f\x76\x35\xb4\xb4\x24\x00\x53\x7f\x91\x03\xe1\x3a\xb2\x8f\x3e\x0a\x9e\x4c\x60\x8e\x14\x9f\x76\xa3\x53\xc5\xe1\x7a\xc2\x31\x4e\x22\x11\xbf\xbf\x9a\x23\xbb\x10\x63\x35\xa5\x05\x13\xbf\x3e\x61\xff\x4c\x60\xe3\xfc\xe7\xef\x58\x7c\x03\x82\x3e\x63\xe0\x33\xfa\x58\xd7\x6e\x98\xb9\x56\xea\xf0\x49\x3a\x48\xe3\x61\x93\x85\x24\x3b\x96\x32\x5c\xad\x70\x04\x21\x45\xc6\x4a\xfe\x08\x69\x55\xd0\x9c\x02\xaf\x31\xa0\x49\x53\x8f\x14\x30\xf5\xa4\x23\x32\x0c\x2a\x5b\xd9\x58\x4b\x6b\x90\x6d\x3c\xeb\xa5\x52\xd2\x81\x1c\xaf\x93\x6c\x78\xfc\xea\x60\x50\x35\x33\x89\x0c\x64\x97\x3b\x4a\x77\x6c\x6b\x11\xe1\x07\x87\x60\x47\x83\xe2\xf9\x5e\x00\x95\x24\x10\xc3\x12\xd4\x5a\xa1\x24\x9c\xad\x9f\x24\x82\xaf\xd3\x40\x05\xcc\x5a\x2b\x71\xfe\xca\x03\xf9\x75\xd1\x56\xf5\xba\x64\x0f\xfb\xe1\x75\xc4\xa3\x31\x4c\x79\x6c\x3e\xcf\xf7\x58\xa8\x05\x19\x8e\xc6\xe3\x84\x70\xc9\x8e\x87\xce\x6b\x45\xc6\x55\xa5\xdb\x5b\x81\x48\xd3\x91\x60\xc4\x84\x69\x3b\x1c\xa1\xa6\x17\x48\xa2\x38\xb5\x1d\x8e\x57\xcb\xfc\x8c\x43\x1d\xd8\x0e\xc7\xaf\x55\x84\x9a\x31\x74\x1b\x1a\xc9\x22\x85\x1e\x31\xa5\xd3\xea\xb0\x5b\xd1\x04\xdb\xcc\x91\xbc\x69\x3b\x05\xd8\x37\x0a\x35\x3b\xff\xcb\x40\xcd\x6e\x72\xa1\x66\xbf\x95\x42\xcd\xa6\x1c\x6a\x76\xdd\xf9\x50\x08\x35\xa3\xeb\x02\x24\xe0\x03\xb6\xfe\xe3\xf2\x0e\x20\xcb\x01\x5c\xe8\x4f\xc9\x2a\x00\x73\xed\x39\xb1\x67\x79\x86\x3a\xd0\x14\x5f\x69\xcf\x33\xa6\xbc\x25\x2d\x60\x46\x82\xa5\x3d\x7c\x00\xe6\x02\xc2\xd6\x8c\x4a\xa2\xa7\xef\x14\xa6\x59\xf3\x9e\x45\xac\xf4\x78\x9c\xfc\x05\x42\x52\x34\x70\xed\x1d\x0c\xc5\x22\x6d\x92\x32\xbd\x79\x0c\x3d\x1c\x6b\xa5\x23\xb1\x1f\x5c\xfa\x10\xa0\x2d\xdc\x07\x06\x2d\x82\x1d\xf1\x03\x79\x94\x38\x12\x88\x8a\xef\x2c\xad\x75\x59\x6c\x12\x15\x90\xe2\x8e\xdc\x22\xeb\xff\x13\xa9\xbf\xa4\x58\x95\xfe\xb2\xb7\x4d\xbd\xa5\x8d\x49\xb0\x2b\xb1\xf7\xcd\x04\x3e\x93\x5e\x8e\xe2\x74\x2c\x21\x4d\xc4\x65\x9f\x33\x37\x03\x81\xe3\x20\x24\xa1\x2a\x91\xed\x6d\xe5\xe9\x59\x7f\x2c\xa3\x88\xb2\xc4\x79\xae\x17\x27\xd6\x57\x0c\x87\x78\x6f\x80\x43\xbc\x37\xc1\x21\x92\xd1\x49\xa7\x33\x19\x9d\x2b\x70\x08\xb6\xf9\x56\x07\x43\x5c\x8c\x4e\x3a\x13\xc5\xb2\x8a\xf7\xef\xea\x30\x88\x79\xa6\x62\x7a\x04\xac\x8e\x7e\xf0\xf4\xaa\xa9\x55\x7c\x65\xe8\xc3\x95\x89\x18\xd8\x97\x6c\x65\xe0\xc3\x52\xaf\x3a\x0b\x4b\x58\x19\xfa\xa0\xb5\x60\x36\xea\x2f\xca\x2d\xc6\xa5\xb5\x38\x60\x22\x9b\x8f\x27\xb2\x7a\xfb\xb6\xd0\x7c\x7c\x09\x6e\x9b\x9a\x8f\xf1\xc8\x37\xc3\x7c\xfc\x3f\xef\x7f\xfd\x25\xba\xfe\x39\x47\x96\xa6\x56\x0b\xda\x53\xfe\xaf\x08\xb2\xcc\x93\xb3\x89\xd0\x70\x09\xc4\xfe\x07\x97\x70\x89\x79\x89\x97\x34\xf5\x91\x88\xa2\x16\x47\x8b\x94\xfb\x64\x73\x49\x4a\x17\xce\x33\x02\xf8\x21\xb0\x53\xf7\x7c\x11\xb8\x71\x77\x12\x05\x01\xa4\x6c\x65\x6e\x6c\x1a\x6c\xe6\xe5\x32\xdb\xe0\x00\x0c\x86\xe3\xb1\x9a\x98\x29\x8e\x6e\x7e\x84\xfe\x74\x96\x72\x09\x6e\x67\x0c\xf6\x9e\x3d\x7c\xa6\x01\x61\xbd\x45\xb2\x0e\x0b\x9d\xc1\x65\x2d\x11\x71\x46\x3c\xc9\x4f\xd9\x22\x57\xc1\x52\xda\x89\x2a\xfe\xbf\xff\xb7\xc6\xeb\x9e\x96\xcd\xbd\x76\x92\x77\xb9\xb2\xe2\xec\x67\xe4\x4f\xca\x2e\x60\xf4\xbe\xd2\x53\x89\x98\x7d\x4a\xd3\x28\x0a\x52\x7f\x5e\x2f\xa9\xd4\xd7\xca\x7f\x54\xd1\x81\xad\x38\x33\x4f\x35\x8a\x23\x31\xab\x74\xee\xdb\xc9\x80\x10\x47\x37\x8d\x97\xbc\x57\xb4\xe4\x4b\xd3\x0b\xc9\xba\x03\xd5\x6a\x3f\xc0\xa9\xcc\x26\x3d\x11\xa7\xae\x07\x3d\x1c\x50\x40\x48\xe4\x03\xe6\xde\x5e\x92\x41\xd5\x94\x6f\x61\x90\x09\xed\xd0\x52\x92\x62\x39\xb7\xbb\xd5\xf9\x7b\xf3\xe4\xc4\xb6\x12\x1c\xce\x60\xa2\xaf\x9c\x9c\x58\xd0\x9e\xe6\x0d\x96\xf3\xd4\xe2\xb4\x4e\x44\xb5\xda\x15\x9a\xc4\x7e\x96\x4c\xa7\x14\x3e\xc1\x56\x88\x0e\xab\x19\x2a\x30\x99\xea\x15\xd4\x74\x6a\x2c\xde\x40\x9e\x34\xbe\x01\x0f\xfc\x49\xd1\x12\xd2\xf8\xe4\xf8\x72\x1c\x1c\x52\x98\x10\xc9\xca\x0f\x6b\x38\x50\xd3\xa6\x9a\x48\x20\x01\x50\x8e\xe7\x73\xcb\xc5\xd9\x65\xb3\x34\x6c\x3a\xe0\xa2\x03\xbf\xea\x59\x5c\xbe\x5f\x0c\x01\x4e\x36\x7b\xd3\xe4\x61\x51\xbe\xd6\xce\xc9\x26\xec\x6f\xb2\x7d\x2a\xd4\xb2\x86\x3d\x54\x72\xed\x9b\x57\x8b\x12\x69\xa9\x7e\x7a\xd0\xf2\xa5\x62\x5c\xbf\x06\x70\x5e\x41\xf3\xb6\x92\xff\xc9\x40\xc0\x06\x39\xcf\x8b\x68\xa8\x5f\xe4\x06\xe2\xd1\xab\x6c\xb5\x08\x0d\x56\xc6\x1d\x1b\xde\xa6\x30\x0e\xdd\x40\x0f\xd4\xc5\x62\x25\xf1\xb4\x72\x14\xcf\x68\xd3\xf6\xad\xf3\xa5\x45\x7a\x50\x37\x0a\x55\xb3\xdc\x36\xeb\x4d\xd3\x74\x08\xec\x79\x34\x8f\xae\x61\xdc\xbd\x82\xe1\x82\xd7\x0c\x6f\xe7\x6e\xe8\x65\xb3\x55\x5f\xc2\xe5\x79\xe4\xc6\xde\x31\x4e\x88\x6f\x17\xa2\x6c\x87\x80\x46\x8c\x56\xb3\xb4\x9a\x73\xa9\xed\xa8\xd6\xb9\x5d\xfd\x4d\xf2\x52\xeb\x71\x33\xd3\xd8\x9f\x4e\x9b\x04\xce\x7c\x1b\xc5\x70\x2d\x11\x17\xf1\x34\xd4\x0e\x09\xab\x6e\x95\xe6\x41\x5d\x4d\xc7\x09\xcf\x94\xc9\xe2\x54\x87\x51\x98\xcf\xc9\x5a\x19\x6e\x56\xbc\x88\xc6\xc6\x0c\x7d\x24\x0c\xc4\x39\x93\xc4\xbb\x83\x0a\x9c\xef\x1e\x8e\x0a\xdb\x9c\xf1\x3d\xf1\x68\xd4\xad\x82\xac\xe1\xc5\x09\xc5\xf3\x69\x91\x8d\x6e\x59\x4a\x1e\x39\x73\xa5\x7d\x11\xc5\xcc\xa6\x5d\x9f\x68\x76\x14\x32\x35\x85\x2d\xc2\x85\x0a\xa9\x96\x47\x63\x32\x8f\x2e\x1b\x1a\x4d\x6d\xbe\x70\x34\xa6\x97\xfb\x5a\x24\x2c\x1c\xd9\x5c\x84\xd4\x2d\xac\xad\x5a\x9c\xb6\x6c\xe9\x0a\xd9\xe5\xd9\xdf\x4b\xd2\xb7\xbc\x38\x50\xa5\xab\x41\x6f\xba\x38\xcd\x3c\xfb\xab\x14\xf3\x8b\xaf\xec\xe7\x4d\xbb\x55\xad\x40\x1f\xd8\x8b\xa0\x06\x75\x95\xac\xc1\x95\x56\xb9\x5e\x83\x12\x3f\xd5\xb0\x8a\x8d\xd1\xc3\xca\xf2\xd8\x69\xd7\xc6\xb3\x4c\xd6\x01\xad\x00\x4f\x6e\x50\x3d\x55\x5d\x85\xdd\x53\x91\xf0\x19\x6a\x56\x25\x5d\xd1\x41\x41\xeb\x78\x29\x02\xd1\xae\xd8\xcb\x92\x02\xe5\xc7\x48\xa5\xc3\xb5\x89\x04\xb3\x79\x17\xd2\xca\xaa\x98\x5f\x7c\x78\xb3\x1a\xd1\xb2\x3c\xa6\x5e\x66\x1f\x1c\x80\x43\xd0\x20\x44\xb0\xb9\xc8\x0e\xd8\x05\x7b\x65\xe1\x84\xc0\x30\x5b\x22\x1f\x93\x81\x9d\x09\x66\x31\xbc\xe8\xa6\x91\x8d\x26\x47\xe8\xd5\x39\xe8\x82\x65\x52\x9c\x07\x8b\x98\xc5\x0f\x12\x5e\x09\x1c\xa4\x91\x04\x8b\xa9\x7f\xb1\xd4\x23\x0d\x4d\x5b\x80\x67\x48\xc6\x8e\xcd\x70\x41\x30\x43\x98\x36\xc3\x1c\xb3\xd7\xff\xe1\xe9\xdb\x37\xdf\x7f\x30\x9b\x63\x78\x96\x1e\x61\x2c\xa1\x11\xf2\xb2\xb6\x92\x4c\x54\x3d\xdd\x3e\x42\x0a\x74\x35\x32\x58\x38\xfa\x1e\xb6\x97\x0c\xb5\x20\x7c\xfa\x1e\xde\xc1\x80\xc1\x8b\xc8\xae\x8b\x08\xb4\x45\xa6\x98\x55\xa3\xf2\x71\x2e\xc6\x1c\x8f\xaf\x2c\x12\x5f\xe6\x0c\xa9\x80\xa5\x92\xfb\xbe\x42\xdc\xbd\x62\x26\xe8\x34\xba\x82\x56\x74\xa1\x65\x28\x49\x2c\x37\x86\xd6\x39\xf4\xc3\x69\x6b\x31\xf6\xac\x4f\xb3\x28\x81\xbc\x3a\xa9\x2d\x1c\xb5\xff\x1c\x4a\x51\xfe\xfc\x10\xbb\x8e\xfd\xfc\xba\x67\x1d\x87\x4b\xb9\x2c\x81\xfd\x78\xa2\x04\x79\xfb\x26\x8a\x2f\xad\xf3\x45\x4a\xbe\x51\x9f\xaf\x64\x19\x4e\x58\x68\x7f\x98\xe9\xea\x2b\xb4\xbf\x7c\x3c\x8a\xce\xcb\x8f\xaf\x1c\xcb\x73\x53\x37\x49\xa3\x18\xf6\x5a\x9a\xb4\x95\x82\xff\x15\x4f\x9b\x6d\xb0\x47\x0c\x54\x40\xe3\xc6\x05\xfc\xab\x4b\xce\x46\x8e\x70\x24\x45\x6f\x78\xbd\xd2\x75\x52\x74\x70\x6f\xd4\xd5\x22\xa9\x38\x37\xe3\x5a\x79\xfb\x83\xf7\xd3\xc5\xeb\xa7\xbf\x14\x5e\x2b\x85\xb7\x88\x16\x8f\x95\x9c\xfb\xcd\x0e\xfc\xb5\x1d\x9a\xb2\xc5\x16\x1d\x94\x6f\x0e\x2c\x74\x4f\xfa\xe7\x8b\x14\x26\x3d\xeb\xf5\x85\xe5\x86\x4b\x74\xaa\xa2\x73\xe7\x22\x0a\x82\xe8\x06\x9d\xa4\x72\xfe\x91\x2b\x37\xa5\xc9\xac\x62\xf8\xfb\x02\x26\x29\xc0\x5f\xc4\xc9\x8a\x0f\x32\x0c\x24\xec\x59\x1f\x49\x91\xc4\x4a\x67\x6e\x6a\x5d\xb8\x7e\x80\x0e\x35\x52\x85\xd4\xd2\x3c\x8e\xae\x7d\x0f\x7a\x16\x66\xd0\xe8\xb9\xea\x91\xd3\x2f\x9a\x63\xc4\x28\x64\x65\xb1\x3f\xec\x53\x0f\x86\x4b\x8b\xb0\x70\x68\xef\x5e\xff\x09\x8e\xbe\x92\x58\xa7\xd4\xf9\x57\x6c\xa5\x75\x1d\x82\xba\xf5\x61\x3d\x67\x21\xfb\xbd\x5a\x14\xd0\x16\xce\xc4\xcc\x89\xb3\x19\xe7\xa1\xe8\x56\x4e\x92\xeb\x87\x38\x0c\x7f\x0b\xde\x0e\x97\x87\xcf\xfe\xdb\x7c\x18\x4e\xe3\x68\x31\xb7\x99\x5e\x8c\xe6\xa3\x27\x5f\xde\xf8\x49\x8a\xa5\xdf\x74\x16\x79\x58\x21\xac\xfc\xef\x13\x71\xc4\xa1\x10\x1b\x89\x49\xdf\x16\xdb\xab\x20\x70\xc5\x01\xb1\xf4\xe6\x70\xeb\x82\x92\x5d\x96\x8e\x23\x9b\xf0\x12\xfd\xd2\xa5\x03\xd0\x14\xe4\x67\x3b\xbb\x60\xb0\x5b\x2b\x51\x24\x6e\xe3\x10\x0c\x64\x06\x66\x5f\x28\xc6\x59\xc0\x1b\x9a\x0f\x01\xd8\x7e\xf2\xca\x8f\xd3\xa5\x1c\xa0\xd6\x36\xeb\x9c\xa4\xf4\x21\x7b\xa0\x5f\xa4\x7c\x62\x95\x9b\x0b\x0e\xf6\xa8\x7e\x9b\xb8\xb2\xfc\x42\x73\x49\x88\x62\xf8\xa5\xb1\x9e\x63\x8e\x1d\x55\x2c\x8d\x88\xe1\x3c\x33\x28\x76\xb1\x0f\xd6\x9c\xae\x49\x21\x62\x17\x9d\x85\xdc\xa2\x88\xe7\x54\xa8\xa3\xb2\xfa\x96\x53\x9c\x8b\x9f\xe8\x32\xc5\x54\x93\xeb\x00\x5f\x0c\x4c\x3a\x13\x21\x1f\xd0\x53\xc9\x3c\xff\x3c\x2f\xb6\xbb\xda\xa5\xac\xa6\x3a\x76\x3d\x3f\x22\x8b\x66\xac\x59\xa3\x87\x12\x79\x59\x26\x41\x09\x75\x60\xcd\xdc\xa4\x4b\x33\x85\x16\xa3\x65\xe4\xf8\x31\x7b\x99\xcf\x7b\x60\x70\xd0\x24\xec\x8b\x31\x65\x62\x11\x95\x8d\x73\xa3\xa1\x2d\x98\x77\xd4\xb3\x62\x0c\x85\x5c\x95\x1f\xce\x17\x2c\x01\xe9\x8e\x94\x7e\x0f\x11\x73\x28\x25\xb5\xda\x93\x00\x93\x2a\x89\x15\x4b\x37\xa1\xb7\xa0\xb3\xaa\xa1\xe5\x55\x48\xdd\x23\xea\x5e\x16\x48\xc9\xa4\xc2\x55\x32\x83\xec\xe1\x9d\xa5\x67\x09\x3c\x3b\xa3\x2e\xad\xd8\xc0\x87\xef\xdc\x1e\x7d\x30\x16\x8a\x5e\xbc\x5a\x04\xdd\x2a\x40\x04\x0a\xd3\x6e\xe5\xae\x58\xc3\x4d\xac\x3c\xa8\xbb\x91\x0b\xcc\x1c\xbc\x88\x92\xcc\xef\x83\x4b\x91\x73\x25\xfd\xaa\x62\x77\x51\x99\xb0\x93\x40\xb8\x7e\x4a\x87\x34\x90\xd8\x6b\xd4\x38\xbd\x4e\x12\x18\xc0\x49\x65\xc7\x48\x75\x16\x48\x9b\x07\xe0\xcc\x7e\x43\x76\xc5\x0a\xf1\xee\x2d\x0b\x75\x0a\xc7\xbe\xd0\xda\xa9\x01\x5f\xc4\x76\xf3\x1b\x18\x77\xe9\xa8\x18\x01\xa2\x79\x4a\x31\x15\x2f\xc8\x2f\xcc\x84\xfe\x52\x4a\xb1\xb4\x0b\x06\x87\x68\x2d\xef\x62\x94\x8c\xe1\xae\xe0\xf6\xf6\x1f\x3f\x7d\xfa\xd0\x13\x34\x54\x2e\x8f\xe6\x59\x5b\x74\x44\xd6\x1e\x46\x7c\x95\xe6\xc7\x33\xe7\x8b\xcb\x2e\x91\xe2\x4c\x29\x06\x27\xc9\x3d\x30\x78\xd6\x30\x9b\x58\xf9\x52\x64\xc7\x3a\x59\x8b\xb6\x96\x13\x90\x9c\x20\xb8\x4c\x8f\x13\xbb\xb6\x1e\x30\xdb\xa7\xfd\x96\x96\x6a\xd1\x7c\xed\xd5\x9c\xaf\xc2\xe5\xcc\x3a\xfd\x09\xde\xd2\x3d\x3a\xd8\x47\x87\x31\xb9\x12\x2a\xae\x52\xe3\x0a\x7d\xc1\x0f\x63\x13\xe9\x4d\x44\xcf\xc9\x43\x43\xf7\x1d\x26\x99\x70\x1e\x4f\x69\x16\x33\x2c\xad\x42\xee\xc2\x8c\xc6\x42\x7e\x1b\xb3\x09\x6e\x9e\x44\x89\x55\x78\xc2\xab\xa9\x37\xa3\xfa\x82\x57\x6e\xc9\x0a\x34\x01\xf6\x47\x38\x85\xb7\xad\xa0\x09\xe9\xf1\x87\x2b\xb4\x12\xc2\xad\x51\x7d\x26\x96\x4a\x1b\xa3\x0b\x69\xc5\xb4\xca\x73\x38\xf5\x43\x12\x02\xcb\xb5\xfe\xcf\xdf\x9e\xfe\x9f\xbf\xd5\xc2\x15\x56\x5e\xbb\x15\x61\x37\x19\x9b\x58\xe5\x44\x1e\xeb\xba\xc6\x95\x3b\xfa\x2d\x96\xc4\x72\x05\x79\x1d\x5b\x81\xad\xe4\x69\x34\x9d\x06\x66\xb3\xa7\x91\x35\x1c\xe2\x20\x87\x16\x11\xfa\x88\x5e\xc9\x9d\xcf\x03\x9f\x40\xda\xe8\x4a\xb2\x16\x61\x00\x93\xc4\x4a\xe6\x70\xe2\x5f\x90\x68\x87\x66\x1e\xbc\xf4\xec\xa5\xd1\x15\xf9\xd0\x9a\x60\xb7\x30\x88\x0c\x9c\x91\xd0\x07\xe7\xd1\xad\x38\x99\x72\xf8\xcf\x3d\x30\xec\x9b\x59\xcb\xfd\x12\xd6\x52\x1c\x67\x52\xa7\x0d\xe7\x19\xd9\xf5\xb9\xf9\x05\x45\x9f\x57\x3f\xfe\xd1\x74\xd1\x9e\xd4\x85\x9a\x65\x0b\xed\x95\x2d\x69\xe3\xc5\x3c\x1c\xd4\xba\x98\x8d\xab\x75\x42\x27\xaf\x2b\x64\x33\x21\xb4\x89\x67\x4d\xc4\xad\xdd\x15\xa5\xad\xac\xac\x25\xa5\xf6\xe5\x6b\xae\x04\x2e\xae\x49\x4d\x54\xab\x22\x4b\x4d\xbb\xd5\xa4\x26\xba\x18\x77\xa9\xc0\x0f\xce\xf0\x4d\x60\x4b\xc7\xc3\x4a\xc2\x93\x58\xe1\x4c\xf1\xa3\xae\x6e\x26\x19\x65\x06\x5e\x98\x16\x39\x23\x7e\xb2\xe1\x96\x62\xab\x0d\x59\xe5\xb2\xf9\x93\x2a\xa3\x1f\x5a\x3d\x8f\x89\x29\x57\x3f\x8f\x55\x3c\x6e\x91\x8e\x90\x08\x69\x18\x36\xa0\x00\x8b\x93\xbc\xf8\x36\x99\xeb\x9f\x19\x93\x0b\x34\x4a\xdc\xe3\x50\x7e\xa1\x91\x8c\x90\x8f\xf5\xd0\x59\xf7\x7a\xe3\xc7\x0a\x3e\x2e\x1a\x85\x22\xed\xa9\x69\x38\xae\xe7\xb5\x31\x16\x85\x57\x8c\xe1\x85\x30\xf9\x30\xed\x3b\x17\x0d\x24\xc6\x94\x74\x41\x56\x95\x9a\xf3\x71\x99\xc9\x34\xcc\x23\x53\x6e\xde\x70\x29\x03\xac\x31\xbd\xac\x7c\x2e\x0c\xe5\x38\x37\x8a\x36\x97\x29\x2a\xa5\x73\x41\x64\xd6\xd4\x0f\x06\x15\x44\xa7\xe1\xe2\x32\x55\x67\x53\x1c\x97\xe7\x32\x3f\xf6\x3c\x33\xa7\x3b\xdc\x19\x6b\x79\xc0\xab\xae\x7b\xee\x9a\x40\xbf\xd7\x76\x8f\x70\xc3\x28\x9d\x11\x4b\x51\xee\xd9\x41\x06\x5e\xae\x17\xa9\x97\x01\xbe\x1a\x9d\x69\x0e\xde\x3a\x64\x56\xd2\xe9\xe6\x1e\x7b\xc5\xc6\x9f\xfa\x71\x73\x84\x2a\x1c\x6f\xfd\xd4\xf5\xb1\x9a\x03\xa3\xaf\x44\x8e\x37\xc6\x37\xd9\x5d\x1c\xf3\xa5\xcb\x42\xc2\x42\x77\x32\x33\x24\x7c\x9b\x0b\xf5\x10\xfa\x88\x59\xa6\x84\xc7\x93\xc5\xf0\xae\x9c\x84\x71\xa4\x23\x74\x27\x93\x44\x71\x34\x14\x0f\x39\x90\x12\xa9\x76\xf4\x99\x88\x25\xa7\xb3\xe8\x06\x49\x29\x3f\xa0\x0b\x41\x63\xf5\xa4\x22\xe2\x19\xc9\x3b\xb7\x22\x7a\xcc\x68\x3c\x92\xec\x5a\xb6\xc9\x3a\x62\x8b\xf4\x73\x85\x06\x2f\xfe\x4b\x0f\xde\xa6\x30\xf4\x3a\x5f\x52\x77\x4a\x7a\x67\x83\x10\xe7\x31\x01\xc9\x64\x06\xaf\xdc\xa3\x9c\x60\x40\xf8\x47\xdb\x01\x84\xb8\x39\xa5\x78\x90\xfa\x18\xce\xa3\x9c\x32\x52\xd4\x20\x5b\x4e\x42\xc3\x4e\x7e\x39\xac\xc7\x3d\x88\x42\xbc\xf6\xd5\x87\x74\xf2\x8e\xb4\x38\x43\x6e\xe0\xbb\x09\xeb\x6a\x4f\x54\x0e\x6c\x9a\x0c\xaa\x47\xe3\x2f\xff\x82\x8e\xf4\xc4\x76\x1c\x40\x97\x62\xf5\x9a\xba\xb3\x34\x9d\xf7\xe8\xd4\x67\xeb\x43\x8b\xe9\x43\x1c\xcd\x6b\xd7\xc8\xd4\x77\xe6\x2a\xf1\xfa\xd4\xaa\xec\xd8\xbc\x31\x5b\x09\x19\x4a\xc3\xa8\xd8\xef\x22\xa2\x1d\x50\x92\xc0\xf0\x77\x70\x30\x07\xb1\x9d\xf4\xca\xb3\x15\x7e\x21\xf5\x1d\xd9\xef\x22\x8b\xa8\x71\xd0\xff\x4f\x6e\xdd\x49\x7a\x64\xe3\x7f\xc8\x93\x0f\xd8\xf5\xfb\xc8\x26\xff\x62\xb9\x91\xfc\x80\x95\x09\x47\xf6\x47\x38\x5d\x04\x6e\x6c\x9d\xf0\xe0\x4b\x68\x81\x93\xbe\xbc\x46\x4c\x72\xe5\x0e\xe9\xed\x4b\xdd\xe2\x9d\x70\xd3\x99\x45\xbe\x28\x9d\x60\xda\x0d\x63\x4f\xf8\xf9\x91\xa1\x38\x71\xfb\xea\x98\x03\xfc\xd0\x7c\x64\xfc\xed\x1f\xa2\xb8\x43\x93\x29\xa1\xf7\xee\xee\x44\xe8\x21\x1a\x36\xca\x11\x51\x47\x7b\x7e\xf2\x0e\xde\x6c\x6f\xc3\x1e\x4e\x11\x8f\x7f\x05\xf0\x5e\x9a\xff\x4c\x67\x78\x43\xbd\xcf\xf4\x63\x4f\xd3\x04\x8b\xb3\xad\x77\xe1\xc7\x49\x4a\xec\xcd\xa6\xd5\x62\x49\x23\x40\x35\x2a\x15\xd1\x9e\x1b\x2b\x43\x3d\x0c\xa3\x0f\xe6\x3e\xf6\xe0\xef\x0b\x37\xe8\xc8\x07\x38\x5d\x94\x0e\x30\x1c\xb5\xfa\xdb\x61\x94\x76\x6c\x51\xb9\xed\x00\x71\x12\x1f\x6d\x0d\x40\xe6\x28\x36\x56\x20\x9d\xde\x0e\xf0\x7c\xef\x23\x9c\x40\xff\x1a\x1e\xa7\x69\x9c\xc8\xc7\x0a\x79\x77\x0a\xc9\x46\x21\xb1\x0e\x09\x1d\xd8\x6e\xa7\x5c\x86\x73\x77\x47\xca\x26\xbc\xac\x7c\x43\x6c\xf5\x9d\x7b\x40\x5d\xed\x8e\xbe\xd0\xe3\x52\xcf\x6c\x47\xa2\x33\xf3\x00\xa7\xa2\xed\x10\xa8\xc6\x28\xe7\x79\xd8\x93\x1f\x1c\x85\x2c\x85\x16\x4b\x38\x25\xb5\x7d\xa4\xf5\x0b\x02\xfe\x32\x95\x04\x95\x5c\x52\x54\xc0\x3b\xd2\x0b\x91\xe8\x47\x74\x08\x3d\xd7\xf3\xe4\x50\x62\x44\xdc\xec\xf1\xe1\xa6\x20\x1e\xd3\xcc\x85\xec\x0d\x25\xd5\x62\xfe\x4b\xb4\x2b\x94\x35\x3b\xc2\xa1\x75\x3b\x10\xc4\xce\x7d\x2a\x6d\x82\x7b\xe0\x7a\x5e\x86\x7e\x69\x6f\xbe\x48\x66\x64\x09\x76\x70\x14\x26\xf5\x1d\xd2\x05\xc3\x6b\x31\xbc\x8a\xae\x61\xfe\x8b\xfa\x1d\x04\x9d\x2f\x99\x94\x83\x09\xce\xbd\xa6\x46\xda\x25\x40\x0c\xd8\xbb\x84\xcb\x27\x90\x4c\x15\xdd\xdb\x9a\x79\x66\x34\x1a\xa5\x77\x77\x92\xf6\x16\x3d\xb8\x77\x9c\xed\x6d\xed\x80\x36\x44\xf4\x4d\x9d\x2f\x10\x53\x89\xbc\xce\x6f\x91\x94\x45\xb2\xc5\x87\x3a\xdb\x63\xb8\xc7\x4a\xe3\xe8\x78\x31\xbc\xae\x95\x72\x80\xf4\x80\x65\x87\x13\xab\x4c\xad\x84\x4f\x29\x09\x89\x4b\x9d\x94\x60\xce\x91\x54\xf4\x3b\x10\xc7\xe3\x1c\xc6\x89\x9f\xa4\x1d\x48\x1b\x67\xac\x41\x87\xa4\x76\x74\xee\x81\xc6\x14\x40\x44\x98\x38\x0a\x82\x73\x77\x72\xd9\xe1\x6f\xe1\x52\xfc\x25\x74\xb6\x4b\xf8\x9e\x18\x7d\x6d\x8c\xef\x91\x64\xd7\xcd\x80\xf9\xf8\x1f\xd2\xf7\x27\xdf\xbf\xd9\x2f\x86\xf9\x98\x31\x3c\xb5\xa1\x3b\xfb\x95\x90\x3b\x84\x46\x26\x00\x0f\x17\xbd\x4b\x20\x3c\x07\xb5\x75\x13\x18\xc3\x73\x20\x44\xc7\x67\xcd\x11\x3c\xfb\x95\x11\x3c\xfb\x55\x11\x3c\x87\x46\x00\x0f\x10\x8f\x74\x49\x3d\x0f\xd3\x53\x49\x6b\xb5\x16\x5b\x3d\x11\xbd\x5b\xb3\xd6\xef\x36\xd5\x81\x93\x7e\x58\xa4\x5f\x5f\xd1\x26\xdf\x27\x36\xf9\xa1\x79\xf6\x85\xb5\x53\x22\x53\xdb\x06\xf9\x5d\xba\x8a\x76\xb4\x60\xda\x95\x4c\x5f\x59\x0d\xbf\xb9\xdc\xae\xae\xad\x6a\xb0\x68\x84\x55\x9d\xa6\x4f\x54\x74\xd8\xb2\x55\x9d\xc4\x16\x59\xd9\xa0\xbe\xb3\xe2\x6a\x0a\x59\x4c\x96\x7a\x26\xf1\x9d\x72\x93\xb8\x71\x91\x30\xaa\x54\xb0\x86\xcb\x24\xd3\x88\xd5\x86\x21\x7c\xa7\x6d\x43\xf8\xce\x0a\x86\xf0\xa2\xb5\x6f\x5e\x3a\x8c\x85\x53\x11\x5e\xa6\xfe\xad\xdb\x64\x9c\xd1\x85\x0b\x5d\xe7\x80\xe3\x58\xea\x99\xcb\x9a\xed\x38\xac\x40\x28\xda\x72\xbf\xd0\x25\xb6\xea\x9e\x1b\xae\xb8\xe7\xd4\xf9\x95\xed\x77\xca\x39\xb7\x87\x1d\xf4\x14\x33\x5e\xed\x7d\x3a\x6c\xb8\x4f\x39\x2d\x6b\x6e\x54\x9d\xc4\x6d\xec\xd4\x61\xdb\x3b\x75\xf8\xd5\x76\x2a\x26\xc7\xe6\x6c\x55\x83\xf3\x71\xb9\xc1\xbc\x89\x0f\xc5\x8a\x6a\x74\x4d\x1b\x3e\x93\x19\x30\x8a\xd4\x57\x35\xe2\x01\xe2\x6f\xb0\x84\x2f\x29\xdd\x4d\x4a\x70\x51\x95\xaa\xd9\xc6\x13\xc5\xb4\xdf\xfe\x45\x5b\x6a\xed\x8c\xcc\x54\xa6\xdd\xc6\xaa\x51\x2a\x46\xfc\x35\x35\xdd\x75\x54\x91\x59\x4d\x5e\x1d\x5d\xe4\x17\xc1\xb1\x12\x6d\x8e\xb4\x38\x34\x85\xdf\xbd\xe3\x00\xe9\xd7\x1a\x6a\x78\xd1\x46\x56\xcf\x2d\x2f\xe5\x0a\xca\x5f\x59\xf1\x1b\x2c\xad\xb7\xe8\x94\xf4\xc3\xa9\x0d\x8c\xfa\xe7\xd3\xc5\x05\x7e\x48\xfe\xa5\x0f\xf3\x15\xd2\xa8\x92\x04\x86\xe9\x91\xfd\x3a\xb1\xe6\xe4\x33\xd1\x0d\x8b\x71\x17\xe8\x63\x7f\xcc\x6e\xd1\x66\x5a\x58\xfe\x2a\x9d\xb0\xfc\x39\x91\x3a\x76\xf2\xfb\xc2\x0d\x12\x36\x02\xb3\x46\x56\x39\x44\x68\x51\x45\x29\x2b\x8e\x00\xa3\x52\x35\xa7\x35\xdb\x59\xab\xe6\x53\xa8\x08\xcb\xb5\x76\x59\x7a\xe5\xab\xd3\x52\x49\x7d\x46\x75\x2d\x9c\x28\x23\xac\x45\x93\x26\x02\x92\x7b\xec\x09\x79\x55\xfe\x0d\xa4\x46\x05\x98\xf8\x3d\xfb\x23\xae\xaa\x86\xe6\x0b\xe8\x9a\x67\x72\x0c\xd4\xd9\xcd\x68\x03\x97\xe8\xcf\x4c\xaa\xb2\xe6\xae\x70\x12\xcc\x65\x33\x54\x65\xff\x4a\xe1\xfc\xe4\xd9\xee\x7f\x0a\x83\x80\x1f\x4f\x98\x3e\xe0\x98\x5d\xa1\x2f\xa5\x60\x55\xe2\x6b\x5e\x72\x69\x13\x27\xdb\x07\x67\x4d\xa3\x38\x1e\x02\x9b\x64\x72\xae\x12\x0c\x3c\xab\x84\x23\xd9\xba\x34\x8c\x51\x32\x41\x73\x8e\x3e\x4d\x60\x10\xc8\xb1\xc1\x77\x31\xdb\x16\xba\xa9\x7f\x0d\x6d\xb0\x3b\xac\xe9\xfb\x5c\x18\xbb\xce\x83\xa9\xeb\x07\xb5\xb0\x9e\x5c\x8f\x65\x76\x75\xe2\x3f\x9b\xb5\x60\xbc\x57\x8d\x02\x63\x2b\xcc\xe6\x8f\x32\x08\xa4\x32\xf7\x99\x0b\x8f\xc5\x9d\xf6\x0a\x3a\x2d\x02\xb1\xaa\x99\x80\x4d\xac\xb6\x12\xaf\xaa\x05\xb6\xd5\xe8\x5a\xdd\x76\x80\x49\x49\x0e\x69\x28\x7d\x48\x3a\x87\x31\xdf\x11\x52\xf0\x31\x86\x2b\x23\x90\x1b\x33\xac\x8c\x06\x0d\x54\x69\xd8\x04\x8a\x5c\x48\x9e\x80\x4b\xc9\xb5\xd6\x5c\x26\xfe\x5c\x7b\x61\x24\xe5\xf0\x7b\x2b\x69\x71\x05\xe5\x79\xf8\xbe\xd5\xdc\x59\xd6\x92\x65\x80\xfc\xb1\xb8\x7e\x9e\x29\xae\x5f\x65\xb1\xb3\x52\x37\xcf\x59\xec\x87\x66\xb2\x74\x85\xa0\x81\x95\xc2\x05\x12\x6a\x65\x63\x05\x1a\xcf\xa5\x75\xd0\x81\xa5\xcb\x68\x4c\x0a\x0a\x98\xaf\x77\x44\xbc\xe2\xc9\x09\x2b\x8f\xa4\x9a\xb6\x7c\x05\xa5\xc3\x6e\x6b\x01\xd6\x4a\xb3\xde\x95\xe9\x37\x74\xb5\x44\x5e\x3e\xbe\x7c\x35\x05\x63\x24\x70\xa4\x8f\x2e\x56\x54\xd9\xc0\xe6\xc8\x65\x49\xfb\xc0\xb2\xe6\xb5\xab\x49\x30\xe4\xc3\xab\x16\xff\xa1\x48\x49\x70\xdf\x62\x14\x88\xcd\xe1\x79\xd3\xe9\xee\x9b\xe3\xe1\xa7\x7f\xb7\xc4\xf3\xf2\x0c\xff\x34\x2e\xa2\x91\x03\x96\x33\x95\x72\xe5\xf7\xb3\xb6\x59\xe0\xc1\x3e\x4f\x55\x50\xc4\x07\x53\x94\xbd\x62\x88\xd5\xd1\xc5\x1c\x4f\x6c\xc5\xd0\xf5\xa2\x30\x58\x2a\xf9\x3d\xb1\x5a\x96\xb3\xcc\x3c\x17\x2a\x67\x93\x11\xdb\xfc\xac\x6e\x5c\xb8\xb5\xb1\xca\xd4\xe4\x6b\x82\x1b\x0f\xc7\x59\x5f\xf9\x0c\x11\x74\x86\x32\xdf\x7f\x4c\xa4\x72\x90\xa3\x29\x0c\x48\x92\x51\x91\x36\x22\x27\x55\x44\x36\x26\x81\x1c\x01\xdf\x54\x7c\xc7\xe0\x03\x64\x58\x6b\x34\xde\x9e\xea\x1c\xd3\x46\x14\x7d\x4d\x1a\xd1\xc2\xfc\x77\xaf\x24\x37\xbd\x22\x8f\xa0\x5c\x69\xc5\x6a\x53\x62\x41\x7f\x59\xf7\xb0\x5a\x57\x7c\x2e\x9b\x90\x2b\xc2\xd8\x15\x7d\xb3\x8c\x53\x34\x5e\x39\x38\x86\x2c\x3b\x1d\x14\x5d\x71\x07\x26\xcf\xd2\x9c\xe1\xda\x15\xfd\x8c\xe4\xf5\xa8\x8c\x8f\xa0\x71\xdb\x5e\x6d\x73\x16\xb8\x61\x33\x96\x9a\x2a\xb4\x4a\x23\xff\x44\x80\x1a\xab\xda\x7a\xea\xae\xc4\x4a\x7d\x33\xf7\xab\x95\x75\x50\x63\xfd\xf3\xc8\xa0\xed\x78\x2b\xe6\xac\x97\x92\x00\xe8\x5f\x7f\xc5\x64\x54\x2a\x0f\xb2\x22\xf6\x4b\x54\x2c\xbb\x74\xbe\xf6\x0b\xc1\x36\xcd\x16\xcc\x7e\xa1\x43\x63\x29\x31\xf4\x4b\x50\x5c\xe2\x55\x16\xcd\xb7\xa1\xd6\x51\x95\x38\xc0\x7e\x31\x09\xa2\x44\xb1\xbb\xd7\xe7\x69\x70\x9e\x91\x8d\xd1\xf2\x9c\x78\x7e\xba\xba\xff\x76\x8e\xf2\xb1\x91\x7e\x6c\xa8\xea\xc7\x76\x1e\xf5\x63\x8f\xfa\xb1\x3f\xa7\x7e\x4c\x5c\x8f\x8f\x3a\xb2\x47\x1d\x99\x49\x07\xd6\xb2\xe2\x4c\x5c\x64\x04\x76\xec\x06\xb2\xb2\x4c\x52\xa0\xa9\x9a\x35\xb3\xbb\x2c\xf1\x3e\xc5\x2e\xb6\x4c\x21\xc7\x13\x1d\xb4\x99\xde\xc0\xa8\xd7\xda\x24\xc5\x1b\xc9\x53\xde\x3d\x77\xe3\xcd\xd0\xb9\xbd\x75\xdf\xf7\x0f\xa2\xd7\x03\xb3\xce\x4d\x8c\xc4\x06\xf6\xfb\x79\xca\x5c\x34\xde\xcf\xe9\x32\x20\x30\x74\x9c\xa1\x0b\x94\x97\xa6\x3e\x1c\x46\xc7\x0d\xe6\x81\x91\x63\x2d\x16\x74\xb3\x48\x7a\x7a\xf4\xd1\x26\x9e\x1e\x87\x79\x8e\x1b\x31\x84\x29\xbc\x4d\xbb\x3c\xa1\x3d\xe3\x23\x58\xb6\x78\x86\x8d\x04\xf6\x8b\x79\xe0\x4e\xe0\x2c\x0a\xa8\xe0\x61\xc0\x5a\x22\x06\x63\x4f\x62\xd3\x76\xc1\xc1\x18\xd8\xa7\xa4\xaa\x2c\x72\x52\x57\x72\xe1\x71\x91\x9e\x98\xf4\x2e\xb6\x9a\xc3\x4e\x43\xfe\x63\x90\x16\x21\xa2\x92\xc5\xee\x6a\x81\xa4\x9b\x80\xf2\x26\xf0\xc2\x8c\x12\xc5\x11\xd6\x30\x93\x4c\x72\xdd\x35\xe7\x2e\x2b\xdc\x11\xdc\x33\xa1\x01\xf3\x55\x9a\x3f\x9a\x44\xfd\xce\x17\x5c\x6a\x9c\xea\x15\x86\xc2\xfc\x2d\x2a\x8e\x44\x08\x39\x2c\xef\xec\x1e\x38\x13\x1b\x61\x3c\x06\xd2\x33\x59\x63\xd8\x04\x63\x7d\x20\xd8\x35\xbc\x86\xbb\x18\xac\x66\x2b\x90\x5f\xd9\x4f\x84\x06\xb1\x8a\x6e\xd4\xf4\x53\xe2\xd9\x1e\xc6\xc3\x93\x25\x02\x65\x0d\x57\x85\xc1\x1f\xb3\xb6\x2b\xb3\xb4\xc6\x21\x78\x30\x5c\x16\x8f\x00\x97\x50\x07\xc0\x1e\xad\xd2\xff\x57\xb4\xe1\xd5\xba\x5f\x42\xfc\xf9\xbc\x4b\x12\x02\x6b\x13\x20\x3f\x5f\x69\x12\x44\xc6\xe1\x9a\x11\xd2\xf7\x41\x46\xc9\xd8\x88\x97\xd1\xb9\x2c\x83\x96\xc0\x70\x26\x26\x51\x9c\x17\xcf\xc8\x74\x20\x52\x92\x93\xe0\x33\xf8\xd5\x1a\x47\x64\x8c\xe1\x43\x79\x67\xe4\xa0\xbf\x42\x96\xce\x87\x39\x1a\xf5\x33\x47\xb1\x2e\x18\xa2\x33\xe2\x2f\xd4\x62\x71\xe4\x26\x13\x9b\x6e\x5e\x24\x6e\x90\x5d\xa0\x07\xf4\x96\x5f\xf0\x20\x7e\x03\x15\x44\x2f\xd0\x6d\x6f\x7c\x43\x64\x32\xa7\xcd\x90\x07\x47\xd6\x31\x7a\xf3\xd7\xf2\xb7\x68\x5b\xec\xb5\x5f\x71\x83\x39\xaf\x69\x19\xa0\x69\x8b\xd2\xd3\x92\x66\xf5\xf7\xf9\x38\xa5\x0a\x0a\x3b\xf0\x21\x86\x13\xe8\xc1\x70\xc2\xda\x96\x1e\x58\xc7\xc9\x04\x86\x1e\xc9\x17\x59\xf2\x32\x6d\x58\x7e\xfb\x15\xd4\x5f\x6f\xcf\xf4\xa0\x2a\x51\x76\xc7\x99\x38\x6a\x79\x27\xc6\x6e\xc5\x5c\xc9\x1b\x73\x13\x0f\x0c\x37\xf1\xa0\x9d\x9b\x78\xc8\x75\x7f\x3c\xf8\x9e\x92\x7c\xba\xb9\x4a\x46\x68\x15\xcd\x57\x8a\xbc\x8d\x95\x84\x46\xea\x0f\x35\x3d\x3b\xb5\xf3\xa0\xbe\xa7\x61\xb5\x5e\x93\xa5\x6e\xea\x36\xfb\xa5\x66\xbf\xb5\x53\xa9\xa1\x60\x5f\x72\xe9\x9b\x26\x9b\x1c\x51\xeb\x9c\x68\xfd\x30\x55\xa8\x96\xfd\xb1\xee\x84\xd3\xa3\xb1\xf5\x99\xce\x9c\xe6\x79\xfd\x6e\x38\xe3\xec\x48\xfe\x7a\x53\x2d\xdd\x08\xeb\x9c\x6f\xe3\x7d\xa6\x10\x2f\xa7\xc4\xa6\xcc\xbc\xf9\x42\x2d\x1c\xc1\x37\xb3\x06\xc4\xe5\xbc\xce\x25\xa0\x73\x14\x0a\xed\xb2\x3f\xd6\x9d\x78\xc1\x53\xb4\x3e\xf7\x19\x76\x26\xaf\xeb\x8d\xcf\xf9\x9a\x9d\xaf\x2d\x0f\xa1\x31\xb6\x21\x0f\x0d\x8a\xe5\x21\xbb\x82\x97\x25\x96\x70\x68\x00\x41\xe2\x39\xc9\x94\x59\x72\xec\x42\x49\xa3\xc5\x35\xb4\xfc\x49\x14\xf2\x57\x02\x5c\x43\x14\xd2\x5a\x99\x92\xf6\x22\x8e\xae\xba\x30\x4c\x63\x1f\xc9\x9c\x2b\xa8\x5f\x75\xed\xe6\x26\x69\x5e\xaf\x7d\x78\xb3\x19\x3a\xd7\x9d\x97\x9f\x0e\xde\xbf\xfb\xf5\x8d\x51\xe7\x9a\x55\x8e\x1a\xf2\xd1\xab\xba\xd1\x6b\x96\x7a\x79\x38\x56\x02\xb0\x18\xa5\x6d\x8f\x27\xf3\xec\x12\xbd\x6d\xa1\xb3\x4a\x5e\xda\x1e\xdb\x08\xc1\x50\x6e\xc7\x7c\x9c\x41\x31\xe2\x81\xc9\x26\xc4\x13\x49\xbb\x25\x6c\x09\xb6\xa2\x47\x9c\x66\xb9\xec\xde\x9d\x7e\x38\x7e\x79\x72\xfa\xf9\xe4\xdd\xf1\xf7\x6f\x4e\x5e\xe5\xe7\x1a\xc8\x61\xf0\x9f\x16\x74\xe1\xd4\x36\xd8\x5a\x72\xef\x90\x22\x02\x28\x84\x63\x1c\x64\x33\x9a\xa9\xdd\x15\x6c\xd5\x43\x10\x8b\xb6\xde\x98\x4e\x76\x26\x70\x7b\x3f\x8b\xb0\x6c\x00\x34\x52\xc8\x2d\xa5\x83\x6a\x61\x89\x4a\x9d\x6b\x08\xc3\x2a\xed\x30\xba\xf2\x62\x7f\xde\x4e\xaf\x65\xcf\x22\xbe\xc2\x45\xf5\x63\x60\xbf\x7b\x7a\x9c\x1b\xf7\x20\x47\xcc\x2f\xcd\x29\xa1\x4f\x6c\xd6\xe9\x50\xca\x15\xba\x22\x04\x96\x11\x43\x4b\x1f\x55\x90\x67\xd2\xce\x89\x04\x9e\xcd\xe5\xa8\x20\xc9\x0c\x26\x9f\x92\x78\xe2\x86\x40\xea\x63\xea\xcc\xa8\x91\x60\x9c\x89\xc6\x51\x01\x63\xa5\xaf\xb6\x62\xbf\x08\x9a\x00\x98\x1a\x66\x71\x2e\xb9\x15\xed\xaf\xe2\x92\x7d\xf8\xab\xff\xd2\x0f\xbd\xcd\xb8\xf0\xff\xf8\xee\x12\xfe\xfb\xc3\xed\x85\xd9\xc8\x4a\x22\x2c\xd9\x81\x1f\x5e\xb2\x7f\x0a\xdd\x75\x89\x8d\xe0\x27\x3f\xf4\xaa\x1e\x88\xd5\x14\xc4\x86\x7a\x6b\xe9\x18\xd5\x3e\x0e\x4c\x00\xbf\x4a\xd9\x7d\x6c\x03\x38\x94\xc2\x38\xbb\x73\x37\x2c\x48\x25\x68\x3e\x3c\x4d\x78\xca\x4c\x26\x48\xba\x90\x2e\xf1\xe8\x0b\xd0\x3a\xb6\xc0\xe7\xe6\xa3\x68\xaa\xe4\xe0\x33\xf4\xba\x0c\x05\x7a\x08\xec\x2b\x18\x2e\x28\x11\x32\xa6\x61\x6e\x02\x5e\x01\x9d\xd3\x22\x60\x4b\x1c\xf8\x7b\x19\x7b\xba\xb2\xd4\x80\xed\x87\xd3\x18\x26\x49\x77\xea\xa6\xf0\xc6\x5d\xb6\x94\x1d\xca\xb2\x5e\x93\x7a\x2d\x5a\x6f\x62\xc1\x10\xb1\xbc\x16\x6d\xcf\x4a\x63\xf7\xe2\xc2\x9f\x58\x48\xfe\xb1\x68\x48\x94\xc4\x8a\x16\x69\xe2\x7b\x90\xa4\xc2\xc7\xcb\x82\xfd\x66\x5d\xc1\x64\x66\xa5\x91\x28\xeb\x87\x45\x45\x7b\x55\x53\x50\x55\xa4\x53\x8a\xae\x07\xc4\x89\x86\xd3\xd6\x69\xf5\x49\xd4\x2d\xe8\x45\x92\x9d\xd2\x0c\xa7\x5d\x42\x3d\x4f\x1e\x7d\x1e\x81\x26\xd1\xd5\xd5\x22\xf4\x27\x6e\x0a\x49\xea\x2c\x23\x75\x1b\xd1\xca\xd8\xfb\xb7\xa8\x5d\x7d\x9a\xe3\x68\x81\x87\x13\x5d\xa0\x6e\x92\x24\xad\x74\xc6\xcf\x61\x7a\x03\x61\x68\x79\xfe\xc5\x05\x8c\x61\x98\xb2\x81\x78\x6e\xea\x4e\x60\x88\x9a\xef\x19\xa0\x7a\x15\xd1\x57\xe6\x64\x60\xb5\xd0\x78\x95\x76\x24\x3a\x0e\x9a\x6d\x77\x71\xec\x04\x3e\x3d\x05\x59\x22\xa3\x04\xa2\x1e\xa6\x91\x0e\xc0\xdf\x80\x0d\x8d\xfe\x8e\x71\xd2\x70\x7d\x6b\x7f\x43\x3b\x4d\x0c\xc2\xb4\xe7\x56\xda\x06\xa2\x6a\x65\x43\x18\x66\x7f\xe5\xa5\x5c\x20\xb9\xc9\x8c\x46\xd6\x89\x51\x7c\xce\x2c\x13\x92\x75\x1e\xf1\x6e\x1e\xbc\x86\x01\x62\xc6\xba\xe8\x6c\x78\xaa\x15\x4c\x32\x86\x54\x5c\x9d\x69\xd2\x72\xab\x5c\x84\x1e\x8c\x93\xd4\x0d\xbd\xae\xe1\xbd\x9c\x16\xd0\x9b\xe5\x55\xb3\xf3\x52\xaf\x6b\x75\xbb\x6d\xe1\xbe\x0d\xa3\x10\x0a\x86\x26\x80\x6e\x1c\x76\x29\x37\x59\x84\x3e\x16\x35\xba\xac\xc2\xd4\x3d\xa7\x7c\xb3\xdd\x1d\x68\xad\xa0\x23\x87\x3a\xd4\x9e\x0d\xf6\xc0\x7e\x6e\x02\x30\xa6\x61\x78\xf5\xfe\xe5\xe9\xe7\x37\x27\xc7\x1f\xdf\x7d\xfe\xf9\xe3\x9b\x0c\x5d\xfb\xd4\x40\x4b\x03\x28\x16\xb0\xa0\xa4\x17\x38\x26\x74\x18\x45\x73\x18\xc2\xd8\x0a\xa3\x18\x5e\xc0\x38\xa6\xde\x42\xbb\x2c\x3e\x93\x0d\xec\xcf\x38\x09\x64\xe9\xe0\x2d\xeb\x0d\xa2\x94\x35\x5d\xf8\x1e\xcc\xdb\x29\xb9\xf0\x6a\xe3\x3e\xc8\x83\xf8\xb6\xb2\x3b\xd0\xca\xd2\xf7\x43\xdd\xed\x80\xeb\x28\x38\xe2\x4a\x17\x3d\xae\x40\x79\xfe\x10\x4b\xdc\x8b\x26\xc9\xc6\xac\xf0\xa2\xb5\x3d\x7c\xb0\xb5\xfd\x2a\x9a\x2c\x10\xa5\xb1\xf6\xb2\x85\xc5\x5d\x79\xa6\xf2\x98\x88\x6c\x07\xde\xa7\x33\x18\xb3\xab\x0a\xc7\xca\x36\xed\xc2\xdc\xcb\xc6\x18\x8c\x55\xbe\xca\xf3\x97\xe9\xe3\xc2\x1c\x16\xd2\x67\x8d\xeb\xb2\x0a\x7b\xb2\xda\xa1\xab\x9c\xb9\xa5\x8b\xa4\x16\xbf\xf7\xd7\x5d\x2b\xa5\x64\x5a\xe3\x92\xc9\x61\x96\x1f\x7a\xe5\x54\x16\x75\xfe\xba\xab\xa6\x90\x44\x6b\x5c\x31\x06\x19\x71\x4d\xab\xa5\xc0\x65\x4b\xaf\x6e\x05\x27\xb6\x7a\xee\xe5\x15\x7a\x5e\x2c\x54\xae\xa2\x28\x2d\x51\x93\x36\xa3\xea\x20\x5f\x40\x2d\x34\x75\xd0\x1c\x8c\xd8\xd2\xc1\xbd\xce\xa8\xfd\x23\x8c\xd2\x2e\x06\x57\x60\x13\x08\xfe\x64\x44\x45\x30\xec\xc4\x8d\x9f\xce\x5e\x87\x17\x91\x0d\xec\xd9\xe2\xca\x0d\x89\xd7\x5a\xea\xa7\x01\x44\x1f\xeb\xdb\x4e\x84\x95\x62\x03\x2c\x26\xd7\x1b\x94\x2c\xe8\xfb\xc9\x1f\xbf\xfe\xf1\xaf\x37\xdf\x99\x8d\x26\xee\xdc\x47\xf3\x75\x0b\x27\x0b\xec\x84\x48\x93\x97\x62\x76\x26\x71\xa7\xc4\x1d\x2d\x27\xf6\xe9\x21\xb0\x3d\x37\x75\xbb\x4a\x52\x5f\x6f\x82\x13\xea\x26\x73\x77\x22\x92\xc9\x00\x86\xfb\x02\xf6\x0b\x77\x91\x46\x17\xbe\x88\xab\x84\x71\x4f\xf1\x44\x77\x37\x50\x93\x03\xef\x62\x71\x8f\xe6\x64\xb1\x2f\xd1\x0a\xbc\x84\x4b\x12\x86\x09\x9b\x5d\xd0\xbf\x43\xfa\xef\xce\xd8\x14\xfd\x88\x85\xf1\xd6\x4f\x58\xcd\xf5\x7d\xb0\x5b\xdb\xe9\xbd\x82\x82\x71\x12\x61\xd3\x5e\x93\xe0\x4e\x3c\xa5\x12\x8e\xee\x24\x92\x13\x19\x7a\x4f\xa0\xd8\xa6\x44\xbd\x79\xc0\x14\x25\xa3\x90\x96\x77\x98\xd4\x26\xd2\x07\x8f\xf3\xd4\x98\xfb\x12\x36\xdc\x4f\x5e\xe2\xa8\xc4\x2b\x60\x0c\x44\xea\xf5\x3d\x1e\xed\x0b\x7b\xa9\xa4\xf0\xd6\xe0\x73\x82\x3b\xe9\xa6\xae\xcd\x32\x24\x00\xfb\x27\x48\xf0\xd6\xd6\xcc\x4d\xba\x2c\x4d\x06\x8b\xed\x55\xdd\xa0\x45\x8b\xfd\x04\x97\x56\x14\x5b\x17\xdc\xa7\x31\xd7\x45\x3c\x9b\xfd\xdd\xc6\xab\x3d\x9a\x2c\xd0\xc9\x27\x3e\x8f\x79\x2a\x78\x59\x7f\xa1\x8c\x85\x8e\x01\x2d\xc9\x03\xc4\x27\xc1\xa5\x9e\x13\x78\x07\x67\xc8\xf6\xa9\x4f\x31\x5f\x21\x5a\x92\x0b\xc3\x02\x61\x1b\x41\xe3\x1c\x64\xcf\x4d\xd3\xa8\x71\x16\x62\x3c\x07\xe3\xa2\x34\xf0\x82\x10\x50\x49\x05\xf6\x29\xb2\x48\xc0\x6a\xcb\xa5\xb5\x02\x0b\x86\x9e\xe5\x5a\x97\x70\x49\x8c\x1b\xec\xc5\x49\xe4\x29\x78\xaa\xa7\x9c\xea\xad\xc6\xe8\x91\xd3\x4e\x0f\x0e\x32\xea\xa4\xca\xd3\x01\xec\xac\x43\x8a\xdc\xce\x60\x2f\xaf\x3e\x5e\xc1\x53\xa3\xe2\xa7\x01\x3e\x27\x37\xf9\x97\xa9\x94\x70\x00\x4b\xa3\xe9\x34\x07\xc3\x96\xbf\x3d\xab\xb0\xcb\xf2\x66\xd8\x01\xf6\x6f\x09\x45\xde\xec\xa1\xf3\x18\x67\xa0\xd4\x77\xf4\x1e\x92\x15\xf8\x8f\xd2\x12\x25\xd1\xed\xe8\x05\x51\x7b\x79\xef\xd2\x3a\xcf\xa3\xdb\xb2\xf5\x5b\x7c\x1c\xbc\x64\x8b\x33\xef\xe5\xb2\x23\xa2\x78\xd3\x08\xf2\xee\xe2\xb3\xdf\xc6\xab\xab\xf9\x59\x48\xf3\xd2\xd4\x3e\x0d\x8b\x48\xc0\x72\xdd\x98\x35\x49\x62\x1a\x57\x34\xf1\xd8\x0c\x06\xe4\xc1\x2e\xf4\xfc\x34\x8a\x6d\x3d\x07\x12\x47\x4e\x47\xe1\x25\x5c\x2e\x70\x84\x10\xfb\x5a\x4d\x87\xb4\x9b\x25\x0e\x23\x4a\x21\x2f\xa0\xad\x26\xea\x9d\x9a\x97\xe2\xa7\xa9\xb1\x89\xd1\x18\x4d\xa8\x1b\x43\x97\xed\x0e\xe9\xe2\xd0\x83\x58\x1b\xef\x59\x71\x29\xf0\x34\x45\xab\xdc\x07\x6a\x98\xc6\x72\x12\x56\x3c\x84\x4d\xfe\x73\xcd\x8f\x74\x73\x10\xad\x06\x8c\x49\x2d\x3c\x8d\x94\x88\x5f\xe3\x98\x54\x91\x5d\x22\x96\x9f\x7c\x88\xfd\x24\xf5\x43\x28\xfb\xcc\xf1\x1f\x5f\x87\xd7\x22\x3d\xa4\x81\xed\x52\x8f\x31\xc1\x17\x73\xd8\xab\x7b\x5d\x06\x7a\x55\x3b\x5d\x1c\x25\x74\x0f\xab\x26\xe4\x4e\x2a\x9d\xa8\xc2\x26\xe2\x8e\xc6\x50\xcb\x55\xf9\x92\x08\x17\xab\x09\xd4\x2b\x4d\xc3\x5f\x9a\xd2\x99\x73\x55\x04\xbc\xea\x7a\xbe\x1b\x44\x53\x7e\xbe\x32\xe9\x0f\x7b\x13\x56\x09\xab\x74\x09\x97\xcf\x9b\xba\xf1\x54\x08\x48\xd7\x04\x9c\x81\x47\x3f\x90\x27\x44\xf2\x78\xa7\x51\x77\x50\x91\xfd\x72\x2a\x0f\x31\x95\x45\x45\xbb\xe0\x6c\xe7\x50\x3f\x4a\xf7\xa4\xa9\x64\x91\x96\xf8\x25\x21\x10\xc8\xbc\x5d\x33\x86\xad\x7a\xc4\xa5\xf2\x88\xc2\x64\x4e\x9b\x47\x1d\x23\xc3\xe8\x2a\x91\xd1\xf4\x15\x02\xec\x17\x42\x7b\xf0\x62\xc2\xd7\x1d\x77\x84\x1e\xb2\x6c\x0b\x3b\x99\x3b\xb3\x68\xdc\x43\xb0\x03\x4c\xc1\xa1\x1a\xb8\x21\x65\x7d\x90\x0c\x29\x32\x6a\xd6\x69\x88\x0b\x55\x10\x02\x2a\xc6\xde\x42\x5c\xb7\x22\x12\xb5\xe1\x70\x4e\x6e\x1a\x9d\xdb\x94\x37\xa6\x0a\xb4\xb9\x1b\xc3\x10\xe7\x77\x83\x17\x69\x37\x8d\xfd\x2b\x1b\xd8\x58\xb5\xc2\x35\x2b\x92\x1e\x85\xaa\x51\x88\x16\x45\xe8\x08\xec\xc0\x4d\x52\x59\x37\x07\x7f\x6f\xa2\x58\xbb\x36\x67\x71\x5b\x39\x41\x1b\x0c\x11\x67\x17\xe7\x24\x54\x3b\x4f\x23\xd7\x76\x00\x22\xca\xd1\x56\x1f\xb0\x38\x59\x72\xca\x34\x25\x6b\x92\x9c\x82\xde\x8d\xa7\xd8\x5a\x9b\x38\xf7\x80\x91\xbd\xc1\x8b\xa6\xcc\x6d\x45\x29\xaf\x48\xc2\xab\x70\x94\xf6\xa6\x30\x7d\xe5\xa6\x6e\xc7\x79\x92\xc6\xcb\x2f\x69\x6f\xe6\x86\x5e\x00\x4f\xae\x61\x98\x76\xa0\x73\x3f\x71\xd3\xc9\xac\xe3\xd3\x04\x59\x20\x1a\x41\x9a\xfd\x8a\xe5\xfb\x8f\x7a\x68\x13\xd3\xa4\xff\x84\x9f\x93\xf2\xfd\x87\x3c\x4b\x25\x1e\x08\xa5\x63\x8f\x6e\xc3\x4e\x44\x72\x68\x39\x4a\xfe\x7f\x49\x53\x70\x14\x4b\x99\xb8\x48\x66\x29\xb2\xdc\x7a\x48\x28\x95\xd3\x4e\x85\x44\x4e\x05\x36\x4f\xec\x66\x3f\xb5\xb7\x46\xa3\xf8\x79\x7c\x64\xdb\x0e\x7b\x68\x6c\x10\xaf\xe6\x23\x3d\x85\x15\x59\xe3\x5b\xb8\xdf\xe8\x33\x7b\x85\x9e\x4e\x47\xe9\x2c\x8e\x6e\x2c\xff\xfe\x5e\x4f\x4b\x55\x47\xf7\xba\x39\x91\xf8\xe7\x27\xef\x4f\xbf\x7b\xf6\xc7\xb1\x59\xf7\x7a\x13\xfb\xc4\x9d\x90\xc5\xd7\xa7\xe6\x24\xf6\x2f\x57\x86\x72\x49\x99\xeb\x62\x81\x9d\x40\x9c\xdd\xf1\x12\x2e\x71\x26\xbb\x97\x34\xc6\x5c\x7e\x56\x77\x39\x02\x2c\x56\xdb\xb2\xe6\x59\x12\x52\x82\x9b\xcf\x2a\x6c\x79\x88\xba\x4c\xf8\x93\xa7\x36\x0b\xf7\x02\xd8\xe7\x67\xe8\xe3\xe5\x35\xd7\x67\xa8\xca\x5a\x19\xa1\x23\x58\xa0\x61\x83\x30\xa3\xed\xeb\x5c\x85\xd8\xa0\xc4\x79\x91\xfd\x7b\xaa\xf8\xd2\x54\x10\x25\x68\xdf\x53\xf7\x7c\x11\xb8\x71\x51\x96\xaf\xcb\x6b\x43\x32\x2f\xe6\xe7\xb2\x86\xa8\xac\x4d\x43\x89\x72\x21\x56\x09\x4f\x4e\x73\x57\x9b\x59\xd0\xb6\xc2\xb6\xc6\x3c\x58\x57\x93\xfe\x7a\x92\x6e\x45\xcd\xaf\x35\xc4\x32\xe3\x0f\x54\xfd\x39\x06\xf6\x05\xd3\x8c\x5e\xf8\x01\xb4\x0b\x74\xeb\x7a\x23\x4c\xa4\xcf\xb7\x02\x1b\xdb\xf3\x26\xbd\xcb\xeb\x1e\x6f\x95\x7c\x85\x1e\x96\x47\x44\x84\xe3\xa1\x49\x37\xac\x0a\xef\x59\xd3\xbb\xfc\x9a\x40\x54\xe5\x6a\x24\x6b\xf9\x61\xb4\x37\xb3\x0d\x42\x51\x2b\x75\xb3\x88\x57\x18\xdc\xcd\x6a\x87\xb7\x73\x37\xf4\x58\xbe\x7f\x61\x6e\xba\x84\xcb\xf3\xc8\x8d\xbd\x63\x1a\xda\x4f\x9f\x20\x55\xcf\xb6\x3f\xa6\xa1\x7e\xe5\x00\x80\x34\xd6\x95\x01\xfa\x97\x15\x12\x76\x57\x08\x90\x55\x99\x80\x69\xec\x4f\xa7\x4d\x23\x03\xbf\x8d\xe2\xf5\xc6\x03\x5e\x0b\xe6\x9e\xa3\x3b\x6a\x41\x39\x4c\xa8\x0d\x23\xc2\xe3\xe1\x36\x71\x6e\x0b\xbf\xf8\xf0\xc6\x06\xf6\x89\x54\x67\x2d\x24\x46\x7d\xd2\xea\x41\xc5\x2b\x52\x5b\x36\xeb\x11\xc5\x36\x4f\xd9\x51\x73\x0e\x6c\xac\xec\xc5\x6c\x0f\xa9\xe4\xd9\xb8\xba\x84\xad\x77\x4b\xd8\x42\xe4\x2e\x94\x8e\x2a\xc7\x98\xa2\xe8\x54\xdc\x00\xc6\xa9\xc5\x83\x80\x97\xd6\x58\xd5\x8c\x63\x7a\xa3\x24\xd5\x83\xfe\xc7\xe2\x7e\x67\xe2\xa9\x1b\xeb\x2f\xa2\xa3\xda\x8d\xb2\x10\xdd\xe2\xaf\xb2\x56\x69\xd5\xce\x55\x2f\xd4\x07\xf6\xa2\xdc\xb2\xa5\xbe\xc0\xb7\x49\xad\x3d\xa1\xd7\x22\xe9\x0c\x73\x90\x65\x06\xbd\x95\x49\xbb\x98\x05\xc2\x4b\x37\x4f\xc9\xd5\xa4\x28\xae\xa8\xe2\xc6\x04\x31\x53\x34\x61\x35\x77\x5d\x8d\x29\xc9\xd0\xb8\x0e\x41\x8b\x0e\x9b\x2a\x2a\xd2\x46\x3d\xae\x50\xa8\xda\xb1\xd4\xe8\xf0\xce\xde\xce\x07\xe0\x10\x3c\x6b\x3d\x60\x3b\xd8\x03\xfb\x95\x82\xb6\x2b\xd1\x7f\x6a\x29\xfa\xf1\x28\x0f\xc1\xa0\x5f\xdd\x6f\xbf\xd2\x98\xf2\xd4\x78\x95\x12\x1f\x62\xbd\xdc\x2c\x86\x17\xdd\x34\xca\xd3\xd0\xe1\xb0\xa8\xec\x0b\x01\xc1\x31\x55\xdf\xef\x0b\x88\x2d\x95\x5c\x7f\x87\xb5\x79\x1c\x46\x27\xc5\x81\x6f\x14\x3a\x40\x51\x7b\xb4\xa9\xa5\x33\x29\xde\x9a\xea\x66\x82\x08\xa7\x72\xdc\x08\xd5\xcc\xf0\x0f\xff\x74\xf8\xe3\x4e\x4e\x2c\x81\xa2\x08\xeb\xf4\x72\x56\x04\x75\x32\x32\xbc\x6e\x89\xfe\x20\x13\x47\x1d\xdb\xd1\xaf\xa7\xec\x8c\xbf\xbd\x0a\x70\x78\x8e\x59\x9a\xce\x8f\x9e\x3e\xbd\xb9\xb9\xe9\xdd\xec\xf4\xa2\x78\xfa\x74\xd8\xef\xf7\x9f\xa2\x92\xb9\x3f\xe2\x77\x9f\x2a\x35\x1d\xdd\xd2\xb0\x07\xd9\x57\x06\xcf\x9e\x3d\x7b\x9a\xff\xb3\xa1\xc6\x1b\xdf\x4b\x67\x36\xb0\x77\x77\xe7\xb7\xec\xd9\x8c\x24\x0c\x57\x1f\x5e\xfb\xf0\xe6\xfb\x08\xdd\x53\x7d\xab\x6f\xed\xee\x5a\xbb\xbb\xfc\x27\x18\x27\x64\xe1\x0f\x7a\x03\xe3\xf1\xcd\x88\x92\xcf\x19\xb1\x12\x13\x3f\x9e\x04\x90\x73\x69\xa8\x4e\xf6\x65\x82\x1a\x1f\x1e\xf0\xaf\x4b\xf4\x95\x7e\xdb\x03\x76\x1a\xbb\x61\x72\x11\xc5\x57\xdd\x28\xf6\xa7\x7e\x78\x64\x0d\x0f\xe6\xb7\xd6\x70\x5e\x82\x01\xa9\xda\xf2\xa0\x46\xcb\x83\x56\x5b\xd6\xc6\xbc\x5b\x3e\xe8\xdd\x75\x8d\xba\xb8\xed\x41\xbb\x6d\x0f\x95\xa6\x79\x4f\xcc\xc3\x9e\xdf\xe2\xe6\xd7\xd1\xf2\xb0\xb4\xe5\x61\x6b\x2d\xef\xd6\x19\xf4\x6e\xbb\xa3\xde\xad\x33\xec\xdd\x76\xc7\xbd\xb3\xa3\xae\xb3\xa2\xa6\x77\x76\xd0\x32\x6b\x6d\x85\x0f\xaa\xb7\x3c\x18\xb4\xd9\xb2\x3e\xe6\x7e\xf9\xa0\xfb\xeb\x1a\x75\x61\xdb\x64\xd8\xad\xb5\xcd\x1b\xa3\x6b\x7c\x50\xb8\xce\xfa\x68\x8d\x0f\x5a\x6b\x5b\x69\x9a\xcf\x80\xb9\xe9\xf9\x2d\x26\xfb\x5a\x46\x5d\xd2\x74\xbf\xdd\xb6\xeb\x10\xbc\x94\xde\x46\xc1\x64\x95\x2b\x7e\xa8\x1e\xbe\xc3\xea\x1b\x72\x38\x5c\x6d\x43\x16\xb7\x5c\xb8\x29\x48\xd3\x2b\x6c\x8a\x61\xc1\x14\x0d\x0b\xef\x59\x34\x45\xc3\x15\xae\xd9\x61\xd1\xc2\x2c\x69\xba\xdf\x6a\xdb\xcf\x94\xa6\x9f\x15\xb5\xfc\x6c\x7e\x8b\xfe\x6b\xa7\xdd\x9d\x3d\x75\x33\xee\x15\x1e\xbd\x7b\x68\x33\xee\xad\xa9\xed\xc2\x41\xe3\xa6\x5b\x1b\xf5\xb3\x1a\x83\x7e\x56\x3a\xe6\x75\x1f\x03\x87\x4a\x6f\x0f\x0b\xf7\xe2\xe1\xfc\xd6\x3a\x6c\x8b\x4c\x83\xfd\xea\x2d\x0f\xf6\xdb\x6c\x59\x1b\xf3\xce\x7e\xe9\xa0\x77\xf6\xd7\x34\xea\xe2\xb6\xf1\xb0\xdb\x6b\x5b\x1d\xf6\xb0\x90\xe2\x68\xd4\xc3\xd6\x28\xae\xb6\x3c\x28\x1c\x34\x6a\x79\xd0\xda\x98\x77\xf6\x6b\x0c\x1a\x91\xba\xc5\x51\x6b\x6d\x17\x0f\x1b\xb7\x5d\x3c\xee\xd6\x8f\x82\xbd\xa2\x7b\x79\x50\x2c\x00\x63\xa1\x68\x85\x1b\xaa\xb0\xed\x9d\xf2\xb6\x77\x5a\x6b\x7b\x30\xac\x71\x33\x0f\x86\x2b\xde\xcc\x6a\xdb\x3b\x75\xda\xde\x69\xb7\xed\x81\x7a\x43\x0e\x0a\x2f\xaa\x01\xba\x22\x07\x2b\xdc\xce\xda\x7c\xab\x97\xe4\xb0\xf0\x7a\x1e\xa2\x5b\x72\xb8\xc2\xfd\x5c\xd8\x76\xf1\xb8\x71\xdb\xed\x8d\x5b\xa3\x79\xf1\xb8\x31\xcd\x8b\xc7\xdd\xfa\x91\xf0\xac\x68\x5b\x16\x2f\xcf\x61\xf9\xf2\xcc\x74\x57\x7b\x90\xf9\x5a\x64\x47\xa8\xaf\xd2\x97\xb5\xe5\x35\x35\xfa\x9f\x99\xae\xfb\x7d\x18\x2c\x79\xb1\x4e\x53\xad\xfd\xe4\xb2\x9b\x40\x12\x77\x79\x83\xfc\xda\xbf\xbb\xfa\xe1\xcd\xe2\xd5\x2f\x0f\xe4\xd7\xce\x5c\xd7\x19\x5c\x52\xf7\x57\xa7\x4e\xe9\xd4\x27\x7d\x07\x35\x42\x48\x68\x6b\xc0\x2c\x8e\x83\x5c\x8b\xe3\x39\xf1\x1e\xaf\x83\xb2\x61\xbb\xad\x7e\xb6\x03\x09\x8d\x30\x2c\xdd\xcc\x32\x2a\x6e\xa0\x22\xac\x72\x83\xa2\xd8\x38\x42\x76\x1c\xba\x41\xf2\x94\x52\x33\xe9\xcd\xd2\xab\xe0\x7f\xd1\x6f\x5d\x0f\x26\xfe\x34\xe4\xae\x31\x34\x1a\xca\x0c\x06\x73\xab\x59\x48\x94\x37\xd1\xe4\xd2\x3a\xa5\x33\x67\x3e\x4f\x8b\x1e\x17\xe5\x7e\x90\x8a\x28\xbe\x3b\x05\xb0\x49\xe9\x15\x11\x35\x64\xa0\x3b\x94\x89\x9c\x05\xc5\x55\xa8\xb1\xfc\xa7\x18\x2b\xbb\x4a\x6c\xe5\x22\xc8\x23\x8e\x80\xe7\x4d\x7a\x61\xe4\xc1\xa4\x97\xcc\x48\xae\x54\xb5\xdb\xd8\xb1\xd6\x04\x81\x32\x17\x6b\x1a\x1e\x5a\x19\xf6\xeb\x57\x2b\x91\x1a\xbd\x5e\x93\xd0\xdf\xc3\x99\x7b\xed\x47\xf9\x91\x04\xaa\xb4\x2b\x2a\xc9\x78\x5e\xaa\xf1\x11\x49\xc2\x62\xfa\xd6\x2b\x18\xb8\xcb\x06\x91\x19\xf2\x86\x42\xeb\x5b\x61\x1c\x68\x7b\x89\x5e\xd5\xf0\xe3\x37\x8c\xee\xd3\xa7\x37\x2d\x8e\x0d\xd7\xb6\xc2\xc8\x58\x6f\x6a\x8f\x89\xe2\xfd\x0c\xee\x8b\x2f\x67\x70\x72\xb9\x6a\x4e\x87\xe2\x51\xff\x08\xdd\x20\x9d\x59\xb4\xa5\x36\x4e\x03\xc5\x1f\xd3\x06\x56\x66\xdb\xb3\xb6\x32\xd9\x32\x73\xf7\x74\xe5\xfc\x1f\xeb\x73\x7d\xf4\x89\x1f\xa9\xcb\x80\x6a\xf4\xfe\xf9\xcb\xb9\x40\xee\x95\xbb\x40\x12\x1f\x8f\x41\xd6\x15\xf2\xb5\xa0\x61\xf1\x05\x6b\x02\xee\x3c\x98\x5b\x64\x39\xca\xd1\xe6\xc7\xc1\x6e\xcd\xd4\x06\x95\x27\xac\xd2\x64\x0c\xb3\x24\x67\xb0\x4f\x4e\xfa\x22\xa2\x97\xf4\x46\xb8\x7a\x56\xea\xcd\x8e\xa1\x37\xc5\x08\xbc\x16\x7d\x42\x73\xe9\xde\xd0\xef\xb3\x10\x30\xf6\x5b\xe4\x87\x19\x6f\x4d\x2a\x2e\x48\xce\x99\x1c\x19\x46\x02\xaa\x09\x64\x19\x11\x3b\x08\xde\x6c\x9a\xda\x42\x70\x68\x22\x42\x1a\x45\xb7\x95\xf1\x61\x8d\xf1\x5f\x52\x77\x36\xc7\x4b\xef\xbb\xdb\xf0\x8f\xf9\x2f\xaf\x73\xbc\xf4\x34\xe7\xbc\x4a\x22\x25\x9d\xef\x9c\xf4\x33\xd9\xc8\xd5\xd5\xdd\xcb\x0c\xe7\xd4\x21\xb0\x11\x2d\x8b\xfc\xc8\x64\xc2\xb7\xe2\x51\x56\xe1\x98\xad\xef\x4b\xc6\x8e\x57\x25\xdc\x8c\x60\xac\x72\xc4\x9a\x0a\xa8\xcf\xf2\x2b\x01\xa6\xae\x1f\xd4\x72\x35\x2a\x11\xef\xcc\xec\x95\x89\x13\x99\x2f\xbb\xf4\xe8\xcc\xa4\x03\x65\xfd\x63\x14\xc0\xd2\x06\x15\x3a\x4c\x9e\xf4\x85\xfa\x35\x23\xb3\x9a\x23\xbf\x18\x4f\xca\x6c\x36\x21\x4c\x51\x8f\x0b\x01\x4d\x69\x40\x93\x12\x29\x19\xc1\xea\x5d\xcd\x58\x84\x68\xe1\x3a\xc8\xa5\x96\xea\x84\x83\x28\xa7\x4a\x2e\x39\x7e\x37\x15\xe9\x98\xa6\xab\x2d\xa2\xd5\x09\xf8\xe9\xd3\x9b\x75\x92\x8f\x90\xcc\x24\x12\xd5\xa0\xd2\xb9\x2c\x38\x3f\x1c\xa9\x98\xe8\xbd\x7e\x7a\xe5\x0a\xf9\x35\x88\x36\x11\x92\xdc\xc3\x91\x8c\x88\x78\xeb\x22\x98\xae\xf8\xd8\x91\xae\xd7\x61\xe6\x33\x21\x6d\x56\xe8\x5c\x29\xec\x9e\xe1\xc6\x3a\x28\x95\xfd\x0f\x2a\xc5\x25\x59\xc3\x6d\xd7\xc0\xb1\x76\xb3\xe4\xe6\x35\xca\xcc\x6c\x46\x15\x8f\xac\x8a\xce\x57\x07\x06\x4f\x61\x2a\xfd\xec\x13\x31\x98\xc9\xc7\x19\x57\xac\x5d\xba\xf2\x2a\x7a\x5b\x69\x72\x9a\x90\xa4\xcb\x55\xa1\xd9\x05\x64\xf6\xe6\x59\x9b\x18\x5d\x57\x88\xde\xab\x11\xab\x7b\x45\x01\x7a\xbf\x5c\x64\xd5\x05\xe8\x12\x4d\x7d\x53\xe1\x59\xeb\xc9\x6e\x2d\xe1\xd9\x90\x39\x07\xec\x82\xac\xc6\xa4\x81\xbf\x54\x99\x74\x0c\x86\x55\x62\x31\x55\xf2\xb7\x42\xe2\xaa\x9b\x76\x53\x1f\x47\x7a\xec\xa6\xb1\x3b\xb9\xec\xb2\x98\xe2\xd0\xc5\x29\xd9\x63\x78\x11\xc3\x64\xd6\x8d\x23\x22\x92\x45\xa1\x34\x31\x06\xe7\x2b\x2c\x4e\xfb\x17\xab\x4a\xd2\x6b\xf1\xb4\x6a\x43\xa6\x0e\xa3\xd4\xbf\xf0\x27\xf8\x7c\x4e\x36\x43\xb8\xfe\x78\xf9\xc3\xf7\xbf\x46\xcb\xc4\x2c\x5c\xbf\x40\x67\x05\x0e\x8e\x4c\x0c\xa9\x39\x12\xf3\x20\x13\xb5\x97\x64\x44\xe0\x1b\xba\x6e\x76\x55\x53\x85\x03\xd4\xf8\x82\xc5\x7f\x68\x1a\xde\xe5\x13\xce\xc7\x88\xa7\xc3\xba\x71\x13\xe9\xc6\xf3\xea\xa6\x66\xfc\x34\x83\x31\xc4\x95\xb8\xa1\x85\x03\xb7\x8a\xda\xfc\x70\x4a\x53\x3f\xe2\xa6\xf2\xaa\x6e\x14\xe7\x9f\xc5\xf1\x5f\x71\x97\x18\x16\xe3\x43\xc2\x18\xd0\x48\x3c\x37\x75\x37\x48\xf1\xf4\xcb\xf9\x2f\x3f\xfe\xe7\x3f\xaf\x26\x15\x14\x4f\x26\x90\x42\x85\x00\x42\x6c\xd0\x2d\x85\x11\x5a\x8b\xda\x47\x66\x0a\xd4\x00\x42\x38\x26\x46\xa1\x71\x5d\x2d\x6f\x8a\x4b\x5c\x51\xdc\xa8\x30\xb2\x06\x91\x86\x78\x37\x4b\xb2\xc9\x1b\x62\x2c\x9b\x54\xf1\x8a\x22\xa2\xaf\xb2\x92\xd5\x99\xa4\x32\x92\xd6\xec\xab\xda\xab\x41\xa6\x57\xd5\x7a\xd0\x0e\xab\x51\xce\x55\x44\x78\x5f\x77\xdd\x26\x3e\xd6\x86\x13\xe4\xe1\xef\xff\x30\xf2\xe0\x06\x1d\x69\xff\xfd\xcb\xff\xfe\x21\xbc\x0c\x5e\x37\x39\xd2\xc8\xd5\x3c\xcc\x48\x51\x24\x3e\xd5\xfa\xb4\xe3\x88\x84\xf9\x07\xe4\xce\x86\x68\xc5\x3d\x39\x27\x06\xd1\x62\x9c\x12\xe6\xc9\x1c\xc6\xbd\x54\xbd\x43\x6c\xfd\x0d\xd5\x2d\xf2\x56\xce\xe8\x88\xb4\x64\xea\x69\x34\xef\x26\xa9\x1b\x37\x08\xc5\xa7\x07\x59\xb2\x27\xb1\x9f\xfa\x13\x37\xb0\x4d\x44\x58\x35\xaf\xf0\x71\x6a\x05\xd0\x4d\x52\x2b\x0a\xa1\x35\x23\x50\x08\xac\x40\xb3\xa2\x90\xe8\x2b\xd0\x52\xb1\xfc\xc4\xba\x70\xfd\xc0\x0f\xa7\x35\x13\x93\x67\x46\xc3\x62\x03\x3d\xe0\x60\x66\x88\xbd\x64\x41\x8a\x56\x1d\xcf\xdc\x4d\x92\xb5\x8d\x27\x08\x94\x61\x24\x96\x1b\x43\x8b\xb6\xd8\x34\xeb\x39\x61\xb1\x51\x45\x61\xa4\xd6\xde\x2b\xb1\x45\x17\xf2\xd6\xa5\xe0\x94\xa6\xd6\xea\x5c\x9d\x6f\x16\x71\xb7\x5b\x80\xb8\x33\x43\xed\x32\xad\x67\xcb\xaf\x5b\x35\x59\xd3\x10\x97\x7f\x50\xb0\x9e\x1f\x7b\x1e\x8e\x13\x46\x71\x28\x7b\xca\xa3\x06\x5a\xdf\x0c\x0b\xc4\x92\x44\x6b\xd1\xb7\xde\x88\x27\x95\xf1\x5f\xd9\x9b\x8f\x6e\x22\x9a\xf3\x7f\x65\xe4\x57\x29\xaf\xa9\xce\xba\xa9\x5d\xba\x90\x55\x76\xb4\x5f\xd6\x59\xf6\x14\xdf\xa9\x38\xf7\x5b\xb4\x40\x57\xf2\x82\x40\x4e\xd3\x78\x01\xc7\xc5\xcb\xab\x52\x0e\x88\x15\xcd\xb1\x26\xd2\xf0\xc5\x52\xd7\x9d\xa1\xec\xc6\xac\x65\xf8\x95\x56\xb1\xfc\xd9\x18\x4c\x5d\x9d\x43\x79\xb1\xd7\x3e\x5e\x1e\x44\xff\x37\x0f\x16\xb1\x1b\x90\x7c\x80\x22\xa3\x20\xe3\xdf\x05\x4c\x86\xee\xb9\x86\xf1\x92\x34\xb6\x79\x43\xf8\xf8\x04\xba\xf1\x64\xd6\x3d\x77\x37\x24\x48\xd2\xf4\xd7\xff\xf9\xef\xdf\xaf\x6f\xbe\x37\x73\xf3\x62\x10\x36\xb0\xdf\xcf\xd3\x69\x1c\x2d\xe6\xe4\x23\x51\xbb\x26\x10\xb1\xdc\xd8\x5f\x00\x94\x95\xce\x86\x5a\x92\x73\xdf\xe1\x53\xf6\xc2\x0f\x52\x18\x23\xea\x64\xb6\x16\xdd\x54\x17\x31\x84\x29\xbc\x4d\xbb\xa4\x28\xdf\x58\x51\x48\x28\xab\xa4\x0c\x92\xf3\x9d\xe5\x59\x6e\xf6\x94\xb0\x79\xbb\xe0\x00\x9f\x65\xb8\xaa\xec\xfe\xe3\x5b\x5f\xf6\x9c\x20\x3d\x31\x59\x60\x6d\x35\x4c\x2d\x21\x96\x10\x4e\xb0\x9d\x20\x61\xfc\x93\xca\x55\x6b\xc1\x6b\xaf\x16\x88\xf9\x26\x5e\x19\x38\x1e\x59\x36\x33\x14\x1d\xcd\x21\x38\xb3\x13\x8d\x27\x03\xe4\xf8\x6d\xd7\xfe\x46\x46\x03\xbd\xa6\x1a\x93\x42\x75\x08\x45\x29\x13\xe6\xb2\x4c\xb3\x51\x99\xd9\x2a\x19\x51\x34\xaf\x65\x35\xb5\x35\x58\xf7\x10\xf3\x1e\x7c\xdd\xd3\x08\x8b\xf4\x19\x31\x55\x36\xb1\x3e\x1f\x52\x63\x33\x5f\x36\x78\x79\x77\x19\x23\x3e\xd6\x2e\x16\x31\x2d\x2a\xb7\x2e\xb1\x8c\xd2\x53\x22\x78\x93\xf5\x02\x65\x86\xa9\x02\x09\x3e\x88\x1e\x54\x0e\x07\x6d\x1c\x0a\x8f\x9f\x5a\x34\x14\x49\x90\x92\x86\x22\x3d\x5d\x65\x28\xff\x16\x3d\x58\x6d\x28\x5c\x78\x2d\x1c\x8b\x2c\xe2\x4a\x83\x91\x1f\xaf\x32\x9a\x1f\x88\xe8\xba\xfa\x68\xe0\xd5\x3c\x5d\x16\x0f\x85\x14\x51\xc7\xc1\x9f\xad\x32\x88\x77\x91\xc5\x90\x2d\x35\x59\x94\x7d\x60\xc0\x5d\x54\x50\x0f\x97\x01\xd0\x0d\xcc\x93\xe1\x36\x48\xa2\xd8\xc4\x81\x56\xba\x0a\x22\xae\x40\xa9\x76\x11\xc4\x24\x62\x5f\xce\x4d\x30\xe8\xaf\x10\x82\xfc\x61\x2e\x00\xfd\x48\xa5\xd2\x9e\x22\xfa\x0d\xf4\x2f\x58\x76\x3d\x72\x93\x89\x0d\xec\x63\x2b\x8d\xac\x5f\xb3\xc9\x3a\x45\x39\x0f\xe2\x82\xbf\xa2\x82\xc7\x39\x05\xc9\xb5\x43\xab\xfc\x39\x24\x5a\x83\x25\x7a\x83\xdc\x4b\xcb\xe2\xf7\x68\x13\x3f\x8a\xd7\x78\x1d\xc6\x24\xa0\x8d\x52\xe0\xab\xf2\x19\x43\x3e\xed\x92\xa9\xef\x67\x6c\x06\x86\x30\xaf\x15\x5d\x6a\x36\xe6\x76\x1d\x18\x6e\xd7\x41\x3b\xb7\x2b\x22\x1f\xe9\x2e\x0f\x2b\x6c\x2b\x2c\x48\x53\xaf\x1f\x02\x32\xc9\x48\x7f\xca\x11\x2a\xaf\x36\x45\xd7\xa6\xfe\x20\xcf\x6a\x85\xce\x98\x97\x6d\x8d\x44\xf9\xb5\x3a\x4f\x96\xbc\xa9\xf7\xec\x97\x9a\xdd\x37\x6f\x9e\x86\x11\x8d\x4b\xee\x3d\xd3\xec\x53\x75\x86\x45\x21\xe9\x6b\x9b\x7c\x71\x76\x29\xc4\x93\x1f\xd7\xa4\x1c\x3b\x02\x5b\x9f\x6a\xe9\xf8\xcc\xf6\xb5\xe1\x34\xb3\x63\xb8\x8d\x89\x2d\x89\x4f\xbd\x02\x27\x30\x28\xe6\x04\xe8\xd7\x42\x9d\x07\xbe\xdb\xa9\xba\x83\x78\xa2\x33\x01\x16\x67\x31\x72\x7d\x1c\x2b\x58\x92\x62\x39\xb2\x89\x3f\x89\x42\xfe\x4a\x00\x49\x44\x69\x5a\x2b\xc3\x4c\x5d\xc4\xd1\x55\x17\x86\x69\xec\x23\x6e\xab\x99\xc6\x44\x57\x50\x6c\x80\xde\x04\x7b\x58\x6d\x90\x05\xf4\x97\x5f\x7f\x38\x38\xdd\xdd\xd9\x29\xb4\x80\x1e\x53\x08\x2e\xfb\x64\x73\x68\xa1\xab\x7e\x2d\x4c\xe9\x45\x6e\x40\x39\xbf\x0f\x73\x8b\xde\x6f\x27\x5b\x15\xbd\xb8\x4b\x0d\xa8\x78\x0e\x0c\x26\x54\x60\xbf\x08\xfc\xf0\x92\x45\x8c\x38\xdb\xd9\x25\x48\xd8\x4c\x2a\x54\xdb\x4f\xde\x88\x82\x75\x93\x81\xad\xc1\xf2\x2a\x18\x0c\x39\x79\x3b\xc9\x72\xe0\x1d\xa7\x4d\xb3\x08\xdb\x25\xe0\x57\xdc\x80\x1f\x4e\x75\xfb\x0b\x77\x7d\x1a\x02\xbb\xd7\xeb\xe5\x69\x71\xeb\x9a\xc0\xf2\xad\x47\x3b\xcc\x7a\x84\xa7\x36\x21\x39\x6b\xb2\xfd\xc9\x09\xd5\x60\x74\xd5\x2a\x77\xdb\x6e\x8b\x99\x6c\xe0\xce\x65\x95\xdb\x10\xac\x5c\x3b\xc2\x2b\x98\x4c\x62\x7f\x5e\xe8\x4d\x5b\x6a\x17\xb0\x32\xba\x7b\xa5\xda\xe6\x00\x1f\x7d\x29\x4b\x01\x39\x68\xa0\x95\xe3\x97\x6f\x4e\x3f\x9f\xbc\x3b\xfe\xfe\xcd\xc9\xab\x5a\x60\xca\x0c\xbb\x4c\x4f\x84\xa7\x69\x74\x09\xc3\xa7\xf1\x22\x80\x09\x4c\xf1\xe1\xcc\x67\x89\x65\xf7\xa1\x38\xa1\x0a\x69\xd4\xd7\xb3\x48\x6a\x7a\x41\x98\xa9\x78\x58\x78\x38\xb4\x20\x73\x34\x71\xb7\x31\x31\x6d\xb3\x18\x5e\xc8\x5a\xee\x5a\xfb\xbb\x6e\x07\x2a\xd1\x9f\x72\xd3\xf5\xeb\xb6\xac\x13\xcf\x4f\x33\x0d\x56\xe6\x68\x4b\xd8\x44\xd3\x34\xcb\xf9\xef\x19\xcf\x2f\x75\x7a\x85\x10\x1c\x62\x9e\xe8\x95\x2a\x25\x11\x62\xb6\x0b\xe2\x66\x62\xf0\x64\xd2\x72\x88\x6f\xec\x7c\x19\xb3\x4c\x55\x9e\xb1\x4a\xbd\x53\x72\x54\x37\xea\xa4\x98\x8d\x5d\x31\x1b\x8a\xf2\xb9\xc9\x5e\xac\x3c\x80\xa6\xa9\x37\xd9\x1f\xf3\x4c\xf1\xf2\x32\x7a\xd5\xa0\x77\xc5\x2e\x9f\x47\xde\xb2\x79\x87\xcb\x58\x21\xf9\xaf\x52\xb2\x30\xd4\x2f\x7c\x9a\x99\x53\x86\xe5\xde\xcc\xeb\x22\x0f\x8f\x2f\xb7\x0a\x85\x0e\x79\x5c\x95\x1a\x2b\xf0\x15\x8f\xbd\x52\x6b\x44\x55\x63\xac\xd4\x24\x57\xa1\x72\xb1\xde\xd9\xdc\x04\x5a\x55\x9e\x84\xaa\x8c\xbf\x18\x56\x4c\x23\x55\x9f\x0b\xc7\x6b\xf2\x10\xb1\xdd\x4a\x94\x24\x6a\x59\x11\xa7\x79\x73\x34\x45\x17\x2d\x47\xaf\x4b\xd6\xa9\x1f\x5e\x47\x13\x26\x60\x4a\x19\xa7\xb8\x36\x41\xa0\x2b\x78\xce\x78\x05\x7d\x41\x42\x95\x90\xac\xf5\xcd\x60\x17\xba\xb4\xde\x66\xaa\x2a\x9e\x9b\x5d\x08\x93\x47\xb2\xf8\x1f\xc3\x74\x11\x87\x5b\xb0\xc7\x39\xb5\xc6\x59\xc6\xe9\x38\x36\xd0\xdf\x6a\xba\xef\xed\x7e\xff\xf3\xb3\xd8\xac\x7e\xc0\x5e\x44\x58\x77\xa7\xfa\x5d\x01\xfb\x05\xf9\xa9\x82\x03\x16\xe3\x3e\x76\xc6\xc0\x9e\xc4\xd0\x2d\x72\xc0\xca\x17\x89\xf3\xeb\x1d\xb6\xe2\x87\xf5\x9f\x68\x11\x8b\x2b\x01\xc3\x5c\xcf\x21\x0c\x2d\xd7\xf3\x5a\xf1\xc4\x72\x3d\x0f\xc9\xe9\x4b\xa5\x99\x5a\x6e\x58\x39\xa0\xda\x3c\x52\x2f\xe6\xde\x37\x46\xea\xc4\xbd\x6e\x85\xd4\x89\x7b\xfd\x75\x49\xdd\x8a\x5b\xe1\xd7\xa1\xf1\x95\x1b\x5f\x42\xcf\xba\x88\x62\xc2\x0b\x15\xf8\x02\xd6\xa0\xb8\xc7\xd4\x50\x2b\xd0\xbc\x26\x3c\x5a\x8e\xdd\x30\x04\xbb\x80\x9e\x55\xd8\x13\xd8\x8f\x93\x94\x1c\x9e\x55\xed\x78\xf2\x74\xb0\x78\x74\xa9\xeb\x07\x35\xed\x80\x8c\x47\x3d\x17\x88\x33\xcc\x42\x6a\x51\x0d\x3b\xb6\x31\x44\x8c\x04\xde\x32\x00\x65\xc5\xaf\xf6\x91\xa5\x59\x7e\x41\xa6\xd7\xc0\x76\xec\x72\xab\xad\x91\xc0\x15\x42\x96\xf1\x34\x94\xf8\xb6\xc7\xf7\x7e\x00\x57\xb8\xdf\x37\xcc\xf5\x93\xf6\x6a\xd3\xd0\x95\xe9\x3c\x19\xee\xed\xef\xff\xb8\x3a\xba\x72\x63\xc0\x93\xbb\xaa\x66\x62\x47\x01\x4f\xee\xd5\x06\x4f\x3e\x20\x5c\x46\x1b\xc9\xfe\x9f\x04\x2d\x93\x4d\x10\x2d\xa9\x83\xf1\xfe\x2e\x84\xca\x88\x62\x46\xa4\xcc\x23\x70\x65\xe3\x81\x2b\x6b\x87\x2c\xf0\x35\xa4\xc2\x00\xa4\xc7\x1b\x03\x59\x10\xeb\x38\xdb\xd7\x47\xc8\x42\x5d\xc8\x42\x09\x3c\xa1\x08\x8d\xb0\x22\xbb\xb1\x79\xa8\x84\x79\x14\xf8\x93\xe5\x06\xa1\x12\x5e\xbe\xfa\xe3\xd9\xc2\xbf\x7d\xda\x12\x2a\xa1\x02\x14\x81\x46\x30\xdf\x03\xc3\xb5\x3a\x6f\x13\x4a\xe7\xbb\x6f\x0f\x1f\x34\xbe\x45\x91\x39\x49\x18\xe2\xd4\x98\x60\x36\x1d\xd2\x95\x1b\xba\x53\x5c\xe1\x2a\x36\x59\x3d\x20\xa0\xa9\xf2\x12\x5b\x77\x99\xc5\xba\x75\xff\x6f\x55\xd5\xfc\xaf\x20\x3a\x77\x03\xeb\x2d\xef\xb1\xf5\x01\x8f\xa1\xb9\x05\xb0\x9a\xd5\xbc\x5c\x51\x9c\x07\x9e\xd8\xa7\xc6\x55\x77\x12\x24\x3d\x4c\x70\x3f\x63\x62\xa5\x91\x57\x39\x80\x82\xf8\xf5\xcb\x89\x61\x56\x5b\x2b\xc0\xf6\x13\xe3\x12\xaa\x18\x56\xb7\xe2\xcd\xf2\x95\xb0\x18\xd4\x34\x9a\xba\x13\x18\xa6\xd0\x1c\x02\xd4\xaa\xe2\xe7\xb9\x9e\x35\xfb\x8a\xf7\xac\xcc\x21\xa1\x74\x19\x56\xdc\x77\x3a\xa7\x7c\x28\xb2\x2b\xc8\xcc\xbd\x12\x8a\xa5\xdd\x38\x31\xca\xcc\x68\x00\x98\x3f\x0b\x74\xa6\xbd\x6d\xd0\x20\xe6\x66\x3b\x70\x10\x13\x3b\xac\x83\x41\x6a\x9f\x57\xcd\xc4\x87\xf6\xe0\x05\xeb\xbe\x56\x2b\x07\xa5\xf8\xc5\x87\x37\x0d\x43\x4f\x50\x10\x4b\x15\xa3\x66\x0d\xd4\x7a\x03\x70\xcb\xb3\xaf\xc8\x8d\x34\x82\xbb\x0c\x54\x55\x4c\x7f\x55\xb8\x4b\xdb\xab\x51\x9e\x55\x03\xd4\xa5\xa6\xe4\xba\x56\x98\x8b\xbd\x36\x90\x4b\xeb\xac\xb3\xa5\xfd\x95\x00\x5c\x6a\xa1\x1d\x2a\x74\x76\x15\x70\x8b\x5d\x19\xda\x52\x09\xd8\x42\x76\xa0\x09\xd5\x92\x7b\x65\xae\x83\x22\x2b\xe2\x59\xec\xaf\x88\x66\xa9\x83\x65\x59\x01\x39\xd8\x28\x17\x4d\x13\x04\xca\x4e\x05\x9d\x4e\x59\xe4\x8d\x72\x8c\x4a\x99\x95\xc8\x84\x18\x61\xc8\x10\xaa\xf0\x48\x97\x73\x18\x5d\x28\x91\x3b\x04\xa6\x84\x96\xf1\x24\x66\x19\xb0\x6c\x39\x1c\x6f\xd2\x08\x56\x92\x51\xb7\x6c\x8c\x06\x68\x03\x11\x22\xf1\xf7\xfd\xe5\x9b\x9f\x3f\x9e\x3c\x22\x44\x16\x31\x3d\x5b\xd7\x0b\x0f\x21\x6d\xfc\x85\xb1\x21\x3a\x91\xd7\x01\x0c\x59\x3f\x91\x37\x15\x15\x42\xa9\x8b\x28\x43\xba\xd8\x06\x69\x55\x04\x48\x03\xe2\x3e\xc2\x3f\xfe\x82\xf0\x8f\xfc\x4b\xef\x21\xe1\x1f\xb4\x57\x9b\x06\xff\x38\xfd\xcf\xc9\xcb\x38\x5e\xfe\xfc\x15\x82\x6b\x55\x28\xe0\x4d\x36\x07\x45\xf2\x4c\x15\xf8\x0f\x15\x14\xc9\xa0\xff\xf5\x62\x70\x91\xef\x5d\x6f\xb2\x4a\x08\x2e\x6d\x34\x03\xbc\xb1\x27\xdf\x72\xfc\x2d\x49\xdd\xbd\xf1\xd1\xb7\x06\xec\xc6\x3d\x34\xe0\x2c\x0e\x6b\xe3\x2c\x48\xa5\xd9\x4c\x3f\x6a\xbc\xea\xbd\x15\x90\x30\x42\x4e\xc6\x16\xd4\x02\x00\x03\x2e\x23\xbb\xa4\x65\xdc\xd5\xd4\x1f\x49\xc0\x25\xb2\x98\xab\xea\xce\xa8\x4a\x5d\x36\x14\xd5\x8d\x09\x39\x30\x5e\x4b\xcf\xd0\xf0\x8c\x50\x9d\x43\x62\xe9\xe9\x26\xd1\x22\x9e\x40\xbe\x14\x92\x78\x82\xfd\xc9\x23\xd7\xc3\x31\xbd\xa4\xfd\x87\x16\xc8\xd3\xbf\x3f\xfd\xbb\x26\x5a\x06\xee\x1f\xcb\x9c\x6d\x48\x6f\xeb\x9d\xec\x7c\x9d\x9d\x91\xf0\x56\xc4\x78\xe5\xa6\x2e\x1e\xb2\x31\xd6\x66\x23\xe8\xc5\x61\x9e\xf5\xa0\xe4\x0c\x22\xe9\x51\x5a\x3d\x84\x2e\xfd\xd0\xfb\x96\x8f\xa1\x4f\xcb\x39\xfc\x76\xce\x9f\x35\x87\xff\x2b\x02\x3a\x4d\xb1\x05\x5d\x56\xe1\xab\x21\xd9\x8c\xbf\x93\xd3\x02\xad\x91\x9a\xb1\xd9\x32\xf6\xfa\xca\xc6\x8b\xaa\xe3\x49\x52\x37\xf4\xdc\xd8\xd3\x86\x21\x3f\x6e\xdc\xfb\x53\x56\xc9\x63\x60\xb9\x8a\x48\x59\xfd\x68\xd9\xfd\x86\xa1\xb2\x6a\x30\x39\xf9\x6a\x1f\xec\xe9\x5f\x2a\xc0\x65\xa5\x72\x8f\x78\xd9\xb6\x0e\xd2\x47\xc0\xec\x23\x60\x76\x33\x01\xb3\x4a\x3f\x56\x8d\xf6\x85\xf8\xf4\xbc\xbc\x87\xf5\x22\x81\x5d\x2d\xd6\x11\x0f\x2c\x47\xab\xb2\xb2\xe5\xa5\xa1\xbd\x25\x8e\x82\x8d\x8a\x02\x76\xfb\xbf\x7f\xb8\x79\xb3\xf3\xf1\xeb\xe1\x6d\x77\xa9\x2c\xd3\x5f\x2b\xdc\x16\x91\x79\xb3\x93\xc9\xd9\xb9\xb0\xcc\x81\x0c\x73\x42\x03\x29\xc3\x64\x6e\x3e\x50\xd2\x6e\x27\xea\x92\x4a\xb9\xdc\xf8\x57\x76\x43\x08\x9f\xdd\x3a\x80\x2f\x87\x45\xf9\x2b\x82\xf7\xea\xad\xea\x4d\xc2\x4a\x65\xc2\x38\xb5\xc3\x05\x98\x89\x57\x03\x6f\xb6\xa3\x0a\x34\xc3\x47\xbc\xd9\x23\xde\xec\xaf\x84\x37\x43\x87\xc8\x23\xda\xec\xcf\x81\x36\xcb\x2b\xb4\x19\x88\xb2\x6c\x56\x27\x13\xc6\xac\x79\xd6\x76\x4d\x28\x78\x78\x54\x18\xee\xd0\x06\x62\xc2\xe6\x57\xaf\x77\xe0\xd5\x10\x3e\x62\xc2\x16\x31\x3e\xff\xd6\x8b\x08\x43\x2d\xfc\x85\xf1\x60\x2a\x81\xd7\x81\x06\x5b\x37\x81\x37\x15\x0b\x86\x29\xbb\x4e\x24\x58\x6d\xc2\x3e\xe2\xc0\xfe\x82\x38\xb0\xbc\x6b\xee\x21\x51\x60\xb8\x4f\x9b\x86\x01\xfb\xf4\xd3\x9b\xd9\x5e\xf0\xb4\x85\x04\x8b\x1b\x03\xde\x7a\x0c\x01\xb4\x81\x76\xcd\xaf\x17\x02\x48\x2d\xf7\x12\x73\x7a\xaf\xd1\x56\x63\xc5\xdf\xc1\x1b\x98\x60\x99\x13\x2d\x9d\x24\x2d\x7f\x91\x74\xe7\x3d\x2e\x8d\xde\x0b\x71\x0d\x8f\x36\xd4\xfa\x36\xd4\xc7\x98\x43\x8f\x26\xd4\xba\xca\x53\xd3\x84\xe2\xdd\xd9\x48\x25\x58\x9d\x52\xd9\xa3\x43\x21\x98\xe9\xe7\x9a\x74\xcb\x9e\x44\xad\x4f\x77\xe6\x18\xcb\x1d\x43\xb3\x75\x9a\x3d\x14\xff\xd2\x76\xf4\x07\x08\x41\x65\x64\x2b\x1f\xca\x08\x9e\x90\xbc\x74\x5d\x3f\x4c\x52\x37\xdc\xa8\xb4\x58\xbf\xfd\xe7\x20\xfc\xe5\xbf\x67\xbf\x15\x1a\xc4\x49\x4f\x2b\x68\x93\x68\x9e\xcf\x3d\xf0\xac\xb9\xb5\xbb\x4e\x86\x2b\x9d\xb0\xf9\x26\xf0\x67\x1b\x12\x6f\x4a\xa1\x16\x0b\xc5\x75\x38\x06\xb6\x37\xe9\xd1\xd1\x24\xbd\x64\x16\xdd\xac\x18\x05\x23\xdf\xdc\x3e\x14\x8d\x32\xfe\x82\xe6\x4d\xcc\x5a\xd9\x4d\x27\xec\x40\xb7\x60\x16\xdb\x80\xeb\xa8\x39\x1a\x77\x1c\x48\x43\x10\xc0\x80\xc8\x43\xbf\xe0\x7f\xc6\xe3\x6c\x04\x1e\xe5\x7d\x3c\x96\xc2\x7a\x33\xf1\x7a\x2a\x50\x48\xab\x7f\xd5\xe0\x56\x0f\x82\x68\xd0\xd7\xae\x80\xe5\xd7\x5c\x94\x2a\x28\x02\x1d\xa9\x71\xe8\x06\xba\x3f\x41\x55\x44\x84\xa8\x89\x6f\x7e\x9a\x7a\x9a\xd5\xc4\x74\xe1\xfc\x1c\xb0\x13\x36\x1d\x59\xc7\x90\x82\xbd\xa0\x75\xa1\xde\x82\x6e\x30\x68\xb5\x13\xeb\x25\xc0\x8e\x94\x36\xf5\xf5\x2b\x1b\xd8\x02\x9f\xf0\x92\x25\xf2\xce\xa1\xc3\x6a\x3d\x09\xf1\xe6\x54\x70\xe2\xcd\xba\x91\xbb\x27\xb2\x4a\xc6\x0f\x71\x74\xbb\x7c\x4d\xbb\x58\x5b\x9a\xb2\x0d\x01\xb6\xae\x60\x32\xcb\x31\xee\xda\xe5\x21\xcf\x6c\x53\xc0\xb3\x66\x86\xf7\x4f\x33\x3f\xb1\xe8\xec\x5a\x8b\x04\x26\x96\x6b\xcd\xd1\x70\x71\x08\xfa\x74\x06\xad\x97\x78\x86\x78\x19\xd4\xf3\x66\x20\x8f\xa6\x50\x22\x3f\x54\x1a\xb7\x6e\xfc\x74\x46\xfa\x58\x13\x40\x54\x69\xc6\x15\x7e\x24\x7b\x1f\x80\x95\xb8\x93\xbc\xe5\x80\x17\xf5\x26\x2c\x07\x34\xc6\xaf\x3b\xbb\xc5\xd7\x36\x4e\x69\x17\x79\x8c\xb5\xc9\xb9\xa2\xf3\x21\x7e\x5a\xb1\xca\x61\xf1\x9a\xac\x1c\xfd\xe6\xfe\x40\xd4\x95\xab\xaf\x0e\xd7\xf3\x62\x62\x4b\x7a\xf8\x05\xf2\xfa\x83\x75\x4c\xba\x63\xb9\xa1\x67\xa1\x31\x7e\x8d\xf5\x62\xe6\x83\xfb\x46\xba\x1f\x33\x72\x8d\x81\xdd\x42\x48\xb8\x3c\xc6\x4c\x34\x43\x7a\x79\x94\x57\x90\xaf\x83\x86\x8c\x6d\xb6\x13\x74\x59\xb7\xda\x83\x8a\x0a\xcf\xc6\x07\xea\x30\xcb\x31\x29\x1b\xa4\x85\x7d\x32\x37\x9b\x16\x2a\x6e\x12\x6d\x29\xaf\x76\xa2\x61\xce\x66\xbe\xec\x9e\x2f\xd2\x14\x8b\x9f\x9a\x52\x89\xf1\xd4\x1a\x29\xf8\x54\x99\x38\x26\xf4\xa7\x4d\xb1\x3e\xb1\xad\x4f\xde\xaa\x3c\x7b\xea\x4e\xbb\x2b\x66\x8b\x2d\x65\x91\x8b\xdb\x28\x64\x8a\x57\x96\x9b\x0c\x1a\x31\x50\x06\xb3\x2a\xb7\xdb\xaa\xc9\xda\x04\x98\x8a\x19\xfc\x96\x36\xb0\x63\xf8\x1b\x9c\xa4\xe4\x33\x63\x9a\x99\xd6\x2c\x46\xbf\x47\x8b\x14\xab\xbb\xe4\x74\x6f\xbf\x33\xf4\x95\x1b\x7a\x0d\x74\x63\x05\xea\xa8\x87\x87\x62\x65\x3a\xb7\x69\xb6\xe1\xe0\xc7\xeb\x39\x3c\x0f\x5f\x7d\x95\xf8\x20\x4c\x4e\x2c\x2b\xb9\x31\x66\xe6\x8c\x43\xbb\x1a\x24\x64\xf8\xf5\x82\x84\x10\x5b\xb3\x00\x79\xb4\xe2\xa0\x7f\x28\x43\x43\xbe\x59\x0f\xfd\x1f\xa1\x1b\xa4\x33\xeb\x14\x0f\x64\xf3\x5d\xf5\x19\x7f\xf8\xcc\x60\x1e\x7d\xd6\x8e\x79\x94\x08\x8a\x64\xe1\xe0\x25\xde\x9d\xbb\x49\xc2\xd1\xf0\x79\x76\x24\x56\x48\x55\x64\x48\x4f\x89\xbf\x3b\x59\x31\xb0\xa6\xcb\xfb\x07\xd1\x83\x5a\x96\xc1\xec\x58\x14\x64\x7f\xde\x58\x58\x21\x75\x2c\xd2\xd3\x55\xc6\xf2\x6f\xd1\x83\x15\xc7\x32\x89\xfd\xd4\x9f\xb8\x41\xf1\x60\x78\x29\x75\x34\xf2\xe3\x55\x86\xf3\x83\xeb\x07\xed\x0c\x87\xe6\x94\x2d\x1a\x0b\x29\xa2\x0e\x84\x3f\x5b\x65\x14\xef\x22\x6b\xc2\xb4\x6b\x35\x83\xc7\xf4\xc1\x60\xd0\x8a\xe5\xf1\x59\x4e\x24\xec\x81\x1c\x35\x5c\x04\x84\x59\xd1\xac\x54\x15\xa0\x84\x2f\xdd\x76\x2f\x0d\x56\xe7\x37\x7b\x69\x9c\xe2\x11\x7c\x3b\xb7\x45\x3b\x81\x5d\xd6\x1f\x58\x4a\x3d\x21\x70\x4b\x83\x7d\x9c\x75\x64\x08\x0e\xc7\x45\x27\x03\x29\x91\xc1\xc5\x1d\x8a\xa0\x52\x64\xd5\xd5\x0f\x2c\x75\x98\x0b\x04\xce\x3b\x11\x0e\x8d\xe0\xd6\xf5\x04\x5f\x29\x16\xf7\x32\xcb\xd2\xc8\x56\x6e\x50\x60\x96\xbd\x6f\x18\xc0\x48\x77\x1b\x3d\xa6\xe5\x6d\xa2\x46\x69\xd9\xaf\x18\x98\x65\xbf\x22\x8a\x91\x14\x24\x0c\x2c\xad\xf2\xe7\x70\x86\xd9\xda\x25\x7a\x83\x70\xb8\xcb\xe2\xf7\x68\x13\x3f\x8a\xd7\x78\x1d\x8f\x28\xc6\x15\x4e\xde\xaf\x0c\x63\x54\xa4\x99\x75\x42\xdf\xe4\xe5\xa6\x00\xc6\xd4\x1f\x6a\x62\xc5\xcc\xeb\xb6\x75\xc8\x9b\xb2\xe6\x4d\xbd\x6f\x88\xd6\x33\xef\x9e\xaf\x87\x79\xa4\x5a\x41\xeb\x11\xcc\xfa\xcd\x80\x59\xbf\x59\x1c\xa3\x29\x1e\x10\x63\xb1\xf2\x63\x02\xf1\xb7\x38\xf6\x31\xd0\x51\x91\xfc\xc3\x94\xbb\xf9\xb4\x1d\x17\xa8\x54\xaf\xba\x31\xaa\xdf\x0d\x42\x47\x5e\xcf\x9f\xde\xec\x1e\x1f\x5c\x36\x47\x47\xf6\x8d\x78\xbf\xb5\xc6\x02\x62\x33\x9d\xc5\x42\x02\xfb\x45\xe0\x87\x97\xd4\x31\x09\xe3\x22\x25\xf9\x41\xe2\x4b\x6d\x3f\x79\x23\x0a\xd6\x0b\xaf\x51\x81\xc5\xa8\x1f\x01\x42\xb3\x13\xee\x51\xf9\x08\x71\x15\x6f\x61\x32\x3b\x15\x2a\xd9\xac\xf0\x5a\x6a\x34\x24\x57\x58\x9e\x81\x4d\xab\x24\xcf\x60\x68\xaf\x23\xe3\xa6\x60\xae\xe4\x75\xb4\xa3\xab\xb2\x8c\x84\x58\xd5\x60\x7e\x9c\x5a\x01\x74\x93\xd4\x8a\x42\x68\x91\x8b\x9d\xa8\x8b\xac\x28\xc4\xcf\xd8\x49\x62\xf9\x89\x75\x41\x14\x62\x95\xfd\x5a\x73\x06\x25\x69\x1b\x1f\x78\x4c\x33\x37\xb1\x5c\x8b\xf6\x67\xd5\x61\x49\x0a\xe1\xf5\x0c\x2b\x08\x94\xd1\x24\x96\x1b\x43\x8b\xb6\x5a\xd7\xd7\x98\xfd\x11\x9f\x63\x54\x51\x18\xa9\xb5\xf7\xaa\x40\x45\xea\x78\x17\x2b\xac\x7e\x45\x29\x26\x13\x51\x2a\x73\xd3\xe7\x1e\xc0\x14\xbd\x4c\xa7\xfa\x65\xb4\x20\xb1\x70\xf3\xcf\xe1\x92\x89\xb0\x73\xb1\x4f\x07\x14\xfb\xa4\x20\xbb\x7b\xec\x6a\xd3\x03\x98\xe5\x00\x8b\xed\x9c\x70\x67\xb9\x4c\x4e\xd5\xb9\xb6\x0b\xe3\xd3\xb4\xd0\xac\xac\x94\x29\xb5\xc0\xaf\x0f\xb7\xac\x2c\x01\x19\xbf\x22\x81\x04\xed\x97\xef\xdf\x9d\xfe\xfc\xe6\xf3\xbb\xd3\x0f\xc7\x2f\x4f\x4e\x3f\x9f\xbc\x3b\xfe\xfe\xcd\xc9\x2b\xa3\x1e\xa0\x92\xca\xb0\x9f\x51\x13\x0a\x42\xe2\xf4\xe8\x44\x32\xce\xe8\x0e\xeb\xb9\xbe\x2b\xe8\x43\x5a\x6d\x93\x2b\xd0\x78\x7b\x35\xc4\x1e\xb2\x01\xd6\x8f\x86\xd3\xf4\xde\x55\x97\x29\xa3\x6e\x83\x43\xa3\xc1\xa1\x65\x2b\x00\x68\x1c\xbb\xbd\x3a\x94\xdd\x6e\x01\x12\x5f\xb4\xce\xb3\xcb\x2f\xf7\xd4\x03\x65\x6f\xfe\x44\xc2\xd2\x03\x3b\x85\xf1\x95\x1f\xba\xa9\x1f\x4e\xbb\x53\x37\x85\x37\x6e\x56\xcf\x66\x7c\xd1\x0f\xa7\x31\x4c\x12\xfd\xa5\xe6\x3a\xb6\x52\xbb\x85\x59\xf9\x66\xa2\x83\xa2\x87\xd3\xde\xdb\x2d\xa2\x9f\x2d\x00\xe5\xa8\xd3\x37\x7e\x3a\x8b\x16\x88\x3f\x5f\x90\x1c\xee\xc4\xce\x93\x75\xd2\xa8\x0e\xe1\xd2\xd9\x89\x3a\x13\xd2\x80\xa9\x58\x81\xa8\xff\x22\x8d\xe3\x10\x6d\x53\x1b\xd8\xc7\x49\x12\x4d\x7c\x37\x85\x1e\xd5\xd2\x98\xa9\x8d\x64\x12\xe8\x31\x74\x78\x52\x9d\x48\x15\xf9\xaf\x7a\x0b\x71\xed\x4b\xaf\x21\x95\x16\xf3\x24\x8d\xa1\x7b\x95\x43\x9f\x7a\x8c\x98\xf1\xc8\x90\x3b\xf9\x32\x0a\x43\xac\x51\xfa\xb7\x9f\xce\xfe\xc5\xe8\x24\x74\xb9\xca\xef\xd8\xb1\xa2\x19\x04\xd4\x74\x91\xe5\x7a\x55\x7c\xbd\x6b\x6c\x55\x7f\x8a\x26\x17\x5e\xd1\x41\xbe\x8e\x49\xa9\xe5\x47\xd8\xc8\xb1\x03\x63\xcb\xe9\x26\x5b\xd1\x43\x50\x26\x4c\xe9\x60\xbf\xee\x28\xd7\x3b\x32\x31\xcd\x4d\xac\x26\x4d\x06\x55\x3a\x61\x85\x4b\xbc\x21\x0b\x55\xcb\x0b\xb2\x09\x26\xb9\x81\x56\xba\x0d\x0c\x30\xd6\xe5\xba\x88\x29\xc4\x70\x4c\x37\xed\x86\x8b\xab\x73\xac\x0e\xc6\x8a\xe5\x79\xb0\x88\xdd\xc0\xff\x03\xda\x9c\x81\x97\xb2\xee\x0a\xcc\x30\x53\xe0\xa9\xd1\x17\x61\x78\x4d\x80\xc2\x8d\xf5\xc1\xeb\xc1\xfe\x02\x1a\x9a\xf9\xe8\x8b\x50\x24\x1e\xc9\xda\xdb\x18\xa6\x8b\x38\xb4\x48\x4d\x53\x98\x76\x20\xd0\x58\x2b\xe7\x9f\xfd\xfb\xfb\x15\x15\xc9\x1b\x18\xd1\xf1\xb7\x64\xdf\x5d\xec\xbf\xba\x35\x6b\x94\xf5\x48\x8e\x15\x5c\xee\xd9\xc1\x31\xac\x10\x5f\xb0\x52\xf8\x3b\x7e\x12\x8d\xa5\x90\xc0\x8d\xef\x10\xe5\x22\xe5\xb1\x05\x3d\x18\xc3\xa9\x9f\xa4\x30\x86\x1e\xbe\x24\xc2\xc8\x0a\xa2\x70\x0a\x63\x0b\xde\xfa\x49\x9a\xa0\x93\x09\xdd\xb2\x13\x37\x75\x83\xa8\xb2\x0e\xab\xd6\x89\x94\xbf\x69\x19\x68\xbf\xf9\xae\xda\xb0\x20\x6b\xac\x5b\x9b\x86\xa5\x77\x67\xe9\x1f\xd1\xfb\xc1\x77\x1b\x85\xa5\x7f\x04\xdb\x1b\xf8\x05\xfb\x11\x6c\xff\xd7\x02\xdb\x0f\x86\x26\x14\xcf\xb0\x25\xb8\xfd\xee\x9f\x08\x6e\x9f\x19\xcb\x37\x0c\xb7\xcf\x8c\xe5\xdb\x86\xdb\x67\x86\xf3\x8d\xc2\xed\x77\xd0\x50\x5a\x01\xc8\x0c\x2b\xe7\x39\x6d\xf3\x14\xff\xd6\x53\x9a\x32\x90\xd9\xb7\x91\xda\xf4\x6b\xf9\x4b\x15\xed\xa2\x4c\xa4\x99\x5d\xed\x69\xf3\x4c\xa0\x22\xd2\x53\xbd\xc3\xa0\x6f\x40\x0f\xca\x4a\xb4\x86\xc0\xc1\x52\x52\xe8\xda\x66\x95\x24\x86\x5f\x1b\x93\xe6\x35\xa9\xcb\x92\x46\x55\x13\x5a\x58\x3a\x18\x93\xad\x41\x1d\x50\x4e\x89\xc6\x83\xfa\x24\xea\x5b\xe7\xc0\xae\x60\x32\xcb\x19\x91\xfe\x53\xe3\xa1\xbc\x85\xc9\xac\xe6\x18\xda\x59\xe6\x6f\xb1\x46\x7d\xad\x6b\xbc\x8b\xb5\xf6\xfa\xda\xe6\x4f\x57\x58\xd3\x8a\x8a\x72\x1d\x53\x1f\x46\x69\xd7\x3c\x00\xed\x97\xc6\x83\x78\x17\xa5\xba\xae\x75\x5d\x50\xda\x47\xd7\xbc\x47\xd7\xbc\x4d\x67\x4c\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x1e\x5d\xf3\x56\x9c\xfc\x47\xd7\xbc\x47\xd7\xbc\x3f\x81\x6b\xde\x06\x7a\xe4\x91\xcc\xe5\x9b\xe3\x8f\x37\xbb\x5d\xfe\xfb\xe3\xce\xfe\x4f\x2d\xa5\xef\xaf\xff\x43\x0e\x20\x43\xe1\xae\x58\xc6\xff\xdd\xb5\x7a\xf9\xe1\xa9\xc9\xcf\x77\xb0\x5b\xdd\x61\x6f\x0d\x2e\x7b\x82\xf3\xc8\x8a\x67\x84\xe1\x38\xc6\x79\x15\xa3\x98\xc5\xdd\x27\x0a\x04\xe5\xe9\x0a\x02\x9b\x82\x28\xb5\x63\x18\xd8\xc0\xbe\xca\x0b\xcd\x5c\x09\x29\xb7\x26\x07\x3f\x4b\xf9\xc3\xb9\x22\xf1\xc4\x66\xda\xae\x71\x13\x95\x07\x47\x2e\x43\xd8\xc9\x34\xc9\x3a\x35\x1d\xca\x99\xed\x71\x6f\xf5\xd4\xf6\xe6\x69\x14\x51\x9d\x55\x61\x2b\xbb\x1c\xba\x87\xd2\x4b\xba\xcb\xc6\x03\xa4\x40\xc8\x59\x5a\x85\x4b\x49\x11\x61\x4f\x27\xd1\x1c\xe6\xcc\x4d\xc5\xe5\xa7\x8b\x2b\x72\x1a\x8b\x37\x11\xb5\xd0\xda\x01\xfe\x04\xec\x69\x10\x9d\xa3\x47\x9a\x08\x53\x77\xa1\x68\x6b\x5f\xb9\x15\xe2\x45\x00\x13\x98\x3e\xad\x85\xc1\x5c\x91\x8e\xaf\x60\x32\x89\x7d\x86\xc2\x69\x91\x9a\x8a\x80\xa4\xb4\x32\xce\xf7\xd3\x6b\x4e\xd3\x76\x56\x31\x05\x59\xd6\x5b\xc5\x59\x96\xbd\x3e\x3e\xde\xc4\xef\xce\x62\x78\x61\x8f\xd5\x74\x86\x0d\x4e\x89\x66\x52\x42\x21\x99\xa8\x40\x52\xff\x40\x3e\xf1\xfc\x86\x51\xd1\x4b\x78\x6c\xd3\xe5\x48\xbd\x2f\xf4\xbc\x05\xad\x69\x2f\xc5\x4c\x45\xe1\x24\xf0\x27\x97\xf2\x64\x0d\xc6\x5a\x72\x50\xa0\x36\xbe\x49\xb3\xf2\x6a\x31\x0f\xfc\x89\x9b\x36\x4c\x70\x50\x53\xfc\x51\xbc\x65\xd6\xc1\xcc\x54\xf6\x4f\x10\xd3\x48\x19\x41\xcf\x0d\xa7\x30\x8e\x04\xe2\xee\x1b\x9f\xd8\x37\xd1\x34\x5a\x34\xda\x70\x95\xfa\x35\x91\x39\xfa\x06\xdd\x13\x73\x70\x28\xe6\x40\x81\x7a\x35\xf3\x97\x5d\x03\xfb\x6d\x69\x7f\x54\x7a\xb1\x82\x2c\x85\x6b\x51\xb9\x62\x67\xcf\x23\xaf\x01\xa2\x42\x54\x9f\xef\x93\x2e\xff\x1d\xc7\xd0\x5a\x46\x0b\x2b\x59\xd0\x0f\x37\x6e\x88\x53\x2e\x26\x69\x34\xb7\x16\x89\x1f\x4e\xad\x74\xe6\x27\xd6\xf1\xcb\x37\x84\xa9\x7e\x4e\xd0\xe8\x37\x7e\x10\x20\x52\xe0\x97\xa2\x45\xda\xcb\xeb\x86\x89\xbb\x58\x07\xbd\x26\x4c\xb8\x6c\x4e\x32\xb2\x30\x9f\xd5\xbb\xd1\xc9\x86\xab\x39\x9a\x62\x2b\x71\x23\x32\xe5\x99\xac\x5a\x38\xbc\xcb\x32\xcd\xd5\xbf\x1b\x87\x9b\x7c\x84\xfe\x9c\x34\xba\x15\xbf\xf2\xf9\xb9\xff\xad\x9e\x9f\x0b\x8d\xbc\xb5\x48\x5c\xb1\xa7\x0f\x7c\x78\x2e\x12\xa8\x9f\x9a\x7f\x9a\xe3\xf1\xa0\xde\xf1\xf8\x73\x52\x15\x64\x98\x37\xee\x83\x75\x9c\x8d\xfb\x6b\x66\x6c\x55\x41\xa4\x9f\xc5\xfa\x48\x87\x9f\x31\xde\x43\x5d\x6e\xb8\x1d\xd9\xa6\x39\x53\xdc\xdf\xe4\x13\xfd\x15\x0c\x60\x33\x51\xe7\x2b\x1f\xea\xbb\xdf\xea\xa1\xee\x65\x29\x5c\x8b\xca\x15\x3b\xfb\xc0\xe7\x3a\x19\x25\x39\xda\xff\x64\xc7\xfa\x5e\xbd\x63\x9d\xec\xa8\x15\x4f\xf6\xbd\x75\x9c\xec\xbb\xad\x9e\xec\x05\xe6\xda\x9d\x0a\xf6\xda\x32\xd7\xf7\xc1\xca\xae\xf1\x51\x48\x16\xa5\x6c\x7e\x8d\xc2\x45\x02\xf1\xbf\x93\x20\x0a\xe5\xa4\x57\x78\xd1\x32\x9b\xaf\x96\x50\x2b\x59\x9c\x27\x69\xcc\x52\x66\x11\xf5\xb4\x9f\x74\x03\x38\x75\x27\x4b\xe2\x4f\x2f\x3f\x77\xc3\x28\x5c\x5e\x45\xd8\xcf\x7a\xda\x24\xb9\xbc\x6e\x16\x5d\xab\xa1\xf6\x49\x75\x43\xed\x06\xfa\xbb\x1f\xfe\xe7\xb7\x5f\xfb\xff\x3d\xf8\xc5\x6c\xb1\x85\x71\x8c\xa7\x4c\xf7\x7b\xa7\xa9\x82\xd1\xbf\xa4\x48\x05\x47\x78\x86\xdf\xda\x19\x03\x7b\x12\xc3\x42\x47\xf8\x7c\xa5\x5b\x7e\xbd\x43\xd4\x87\x05\xe6\x62\x56\xf2\x87\x87\xe4\xfc\x15\xce\xf0\xae\xe7\x41\xaf\x6e\x94\x46\x12\x9d\xf1\xc6\x4d\x2c\x37\xb4\x30\x8d\x50\x3d\x44\xe7\x41\x5b\xc8\xab\xd2\xe8\x12\x9f\x13\x96\x24\x8f\xc0\x65\x91\x06\x36\x8a\xc0\x89\x7b\xdd\x0a\x81\x13\xf7\xfa\xab\x11\x98\x1e\x8d\x1b\x4d\x60\x44\x1c\xd2\xcf\x36\xa8\x8b\x6b\xfa\x6a\xf4\x25\xd7\xcb\x46\x93\x97\xaf\x5f\xdc\x57\xcf\x72\x13\xcd\x68\xc9\xc4\xb1\xdd\x8c\xd0\x75\x48\xf1\xca\xa5\x08\xd6\x5a\x33\x84\xfa\xf1\xf5\x4e\x98\x64\xd5\x40\x26\xed\xce\xcb\x7f\xa2\x05\x0d\x86\x7b\xc3\x95\xcb\xd0\x0a\xe1\x8d\xd0\x94\xac\x4e\x61\x56\xb1\x9b\x8a\x5a\x6b\x11\x79\x4d\x0f\x99\x9e\x80\xf9\x31\x20\x81\x1e\xf7\x38\xc1\xd0\xbb\x38\x49\x09\x33\x51\xcf\x75\x43\x0e\x6d\x46\x10\x19\x35\x01\xc8\x4c\x2e\x3a\x17\x51\x36\xb0\xf8\x22\xb6\x08\x92\xed\xed\x8e\x0d\x4c\xd1\xd4\xa4\x70\x15\x86\x44\xd4\xe2\x57\xfb\xc8\xd2\x30\xe7\x20\xd3\x6b\x60\x3b\x19\xb0\x45\xc5\x49\x1b\x94\x73\xca\x93\x28\x9c\xb8\x1c\x7e\x88\x39\xe0\x34\x5e\xa0\x67\x90\x42\x16\x9b\xf2\xb0\x1b\x16\xa7\x26\x8b\x2c\xd9\x0c\x2e\xf6\xfb\xd7\x13\xd7\x3d\xbe\xfe\xdd\xcc\xc5\xce\xa3\xc0\x9f\xf8\x18\x68\x2a\x7d\x64\xd9\x01\x3c\x18\xa6\x7e\xaa\x3c\xbb\x72\x43\x77\x8a\x57\x33\x7b\x96\xc7\xdf\x1a\xe2\x33\xca\xf0\x1f\x0c\xcb\xb2\x3f\xb0\x46\xa9\xba\x0d\x3d\x3b\x7e\xf9\x26\xc1\x29\xc3\x03\x7f\xb2\x7c\x45\x06\xac\xac\xf5\x3d\xba\xd1\x9a\x2a\xe2\x0c\x1d\x3c\x1c\x8b\xc8\x51\xd2\x10\xeb\xd7\x2a\x3b\x18\xb2\x4b\x6e\x7f\x65\xff\x42\x6b\x15\xe4\x91\x26\xe5\xbf\xe5\xc3\xab\x82\x00\x2a\x00\x25\x09\x30\xc8\x30\xa3\xa1\xcc\x7e\xae\x42\xe1\x55\x3c\x62\x2c\x93\x73\x11\x49\xb6\xa0\x9e\x90\x07\x26\x58\xdf\x10\x1c\x28\x91\xc2\x0b\x11\x87\x19\xef\xb3\x02\xfa\xd9\x8d\xe2\x34\xef\x2b\x57\x57\xee\x4a\x95\x36\x68\x3b\x2b\x75\x05\xdc\x6f\x1b\x2b\xf5\xb5\x3c\x9e\x35\xad\xc6\x21\xd8\xfd\x9a\xab\x6d\xcf\xbc\xda\xf6\xaa\xaf\xb6\xbd\xb5\xaf\xb6\x5d\x03\xa3\xa4\x80\xb9\xf6\xc0\x7e\x5b\xb1\x58\xeb\x2e\x89\x8f\xe8\x42\xad\xbf\x1a\xd4\x99\x7a\x83\xb5\x69\x84\x27\x4d\xac\x99\x7b\x0d\x2d\x78\x75\x0e\x3d\x0f\x7a\x16\xbe\xb1\xf5\xb4\x10\x4d\x89\x9b\x27\x28\xc8\x1b\xf8\x59\xce\x66\xe6\xf7\xaf\x6e\xa0\x92\xef\xcb\x8f\x51\x60\xbc\x2c\xd1\xf3\xf5\x5d\x95\xa6\xa3\x62\xf8\xb0\x47\x45\xc3\x75\x51\xfd\x94\x18\xb6\x72\x4a\x54\x3a\x23\x76\xcc\x67\xc4\x4e\xf5\x33\x22\xe3\xe7\xd4\xfa\x19\x31\xac\x2e\x76\x55\x90\x0a\xf0\x5a\x5f\x3e\x4d\x97\x73\x18\x5d\xe4\x3a\x39\x09\xb7\x25\xf6\x03\x65\x42\xb1\xe2\x95\x38\x4f\xb9\xf3\x39\xc4\x21\x6a\x89\xf7\x53\x56\x81\x4e\x9b\xa2\x6e\xa3\x0d\x65\x8d\x2c\x5b\xbf\x29\x0e\x4e\x9b\x16\x16\x73\x37\x38\x4f\xa2\xd3\xe1\xfb\xaf\x10\x16\x73\x63\x62\x59\xee\xab\x46\xf9\x3d\x25\x94\xe5\xc1\x57\x88\x64\x39\x6e\x1a\x52\x44\xeb\xf9\x9f\x21\xde\xd9\x37\x11\xe7\xec\xd9\xb8\xcd\x68\x22\xb9\x21\x3f\xc6\x05\xee\xbc\xc4\xcd\xa6\x2b\xcb\xf3\x4a\xfc\x20\xe3\xef\x8d\xa3\x08\xfd\x0b\xd7\x26\xc9\x9e\xb5\xbd\xb4\xab\x8d\xc7\x38\x88\x16\x7a\xde\x7a\x77\xa9\xb7\x93\xd2\x5b\xfe\xac\x71\x67\x85\x37\x55\x1d\xab\xfb\x7a\xe2\xa9\x18\xf6\x9e\xf1\xb8\x7b\xc0\x98\x29\xda\xf1\x37\xe8\x7f\xc3\x31\x53\x9e\xe5\xe2\xe0\x06\xfa\x17\xfb\x25\xb6\x31\x7f\xf2\x45\x40\x94\x77\xf0\x06\x26\x18\x6d\x83\x6e\xb7\x24\xcd\x86\x38\xd1\x5f\x24\xe1\x51\xde\xe3\xd2\xe8\xbd\x10\xd7\xf0\x18\xe1\xa4\xf9\x65\xf0\x95\x03\x9c\xe0\xb9\x6c\x84\x9d\xb3\x2b\xc7\x8c\xc8\x2c\x34\x25\x72\x84\xe1\xd7\x9a\xf1\x23\xb2\xcb\xb6\xf5\xb0\x17\xfa\x92\xcf\x1b\x41\xb3\x68\x1d\xd9\xfd\xf3\x18\x0a\x43\x0b\x85\x21\x71\xe2\x1c\x6b\xc5\x9f\x48\x71\x30\x78\xf8\x8b\x56\x03\x5c\x98\xa5\xac\x95\xa5\xbf\xc6\x32\xdf\x55\x34\x8d\xdd\xf9\x0c\x09\xb4\xee\x7c\x96\x95\xf9\x80\xfd\x62\x1a\xf8\x57\x57\x30\x16\xaf\xab\x82\x20\x48\x9d\x2f\x48\x90\x0b\x41\x0c\x22\xe0\x3f\x61\xbf\x58\xae\xc8\x6e\xd2\x71\x47\x36\x7b\x6e\x8f\x46\x44\x4e\xb7\x4e\xb1\x20\xb7\xbd\x4d\x25\x3a\xfd\x87\x9e\x9f\xc2\xd8\x4d\xa3\xf8\xb9\x21\x5d\x0a\x2d\x09\xef\x4d\xb9\x54\xe0\xf6\x76\x41\x73\xb0\x87\x46\x9f\xc6\x8b\x49\x1a\xc5\xa3\xd1\x88\x3f\xdf\x62\x9f\x7b\xf3\x38\x4a\x23\xf4\xda\x73\xd6\xb7\x23\xde\xa0\xd3\x81\xce\x3d\x1f\x64\x80\x08\x00\x42\x10\x3b\x5f\xc2\xed\xed\x3c\x91\x38\x05\x5f\x60\xb8\xb8\x82\x31\xce\xfe\x12\xf6\xc4\x17\x80\xb1\x9f\xd3\x05\xfb\x45\xfe\x0a\x6e\x62\x3f\xa5\xcf\xd9\x47\x40\xe4\xe9\xb0\xe7\x87\x7e\xea\xe3\x74\x39\xf1\x73\xe5\x5b\x6f\xe2\x06\x41\x27\x76\x8e\x88\x90\x7d\x2f\x75\x76\x41\x66\xcb\xbf\xe8\x6c\x75\x44\x82\xdf\xe8\xc2\x4a\x1d\x27\x9d\xc5\xd1\x0d\x36\xe2\x23\x89\xe7\x24\x8e\xa3\xb8\x63\xbf\x74\xc3\x30\x4a\x2d\x54\xa3\xe5\x5a\x93\xc0\x4d\x12\x0b\x67\x03\xe6\xd4\x95\x6a\x9f\x90\xda\x2f\xa2\xb8\x83\xd7\xc3\xa8\xff\x8f\xf0\xbf\xd2\x1e\x51\xea\xfd\x23\xfc\xee\x3b\xb2\x4e\xe2\x51\x7a\x16\x8e\x9f\xc4\x12\x11\x46\xf2\x97\xbb\xbb\xad\x01\x88\x15\x42\x8c\xb6\x58\xd4\x72\xdb\x0f\xad\x78\x7b\xbb\x13\x73\x82\x8c\xb6\xfa\x0e\xc8\xa3\x7b\xdc\xbb\x84\x4b\x10\x3b\xf7\xa2\x97\x09\xe9\x25\x5d\x97\xc9\x88\xbe\x9a\xc0\xf4\x03\x9b\xf4\xf7\x17\x77\x77\xea\xfa\x66\xeb\xaa\xf7\xf9\x33\x5e\x1a\x9f\x3f\x8f\x52\x80\x97\x02\x48\x25\x0a\x5c\xa0\x35\x48\x94\x1a\xfc\x7d\x4c\x6e\x7b\x11\x92\xbe\x79\x62\x39\x7e\x84\x17\xe8\x5a\xb8\xbb\xdb\xa2\x9f\xc4\xb2\x74\x48\x7b\x5b\x83\x27\xfe\x45\x27\xf3\x6b\x2f\x99\xb9\x57\x4a\x11\xc3\x62\xc7\x59\xc0\x58\xa1\xfe\x93\x34\x5e\xb2\x41\xbc\x72\x53\x28\x16\x78\x2f\x8d\x4e\xd3\xd8\x0f\xa7\x64\xd9\x64\x1a\xeb\xa0\xe2\xe8\x46\xeb\x48\x23\xba\x77\x1c\x07\x6c\xf5\xef\x27\x6e\x3a\x99\x89\x7d\xb7\x35\xb8\xbf\xef\x38\x4f\x68\x3b\x52\x79\x7a\x3c\x8c\xae\x3a\xd0\x41\xfd\xa5\x27\x46\x34\xba\xea\xa4\x33\x3f\x71\xe4\x0d\xf9\x24\x1c\x65\x3b\x11\x03\x37\x9e\x2e\xf0\x45\x07\x22\xe7\x1e\x06\x09\xb4\xc2\x51\xdc\x73\xe7\xf3\x60\x89\xeb\x10\x05\x78\x07\xe6\xe4\x87\x50\x9e\xfd\xb9\x3c\x9f\x5b\xe9\xdd\x9d\x1d\x11\xb4\xc6\xd6\x68\xe4\x76\x52\x47\x3e\x38\xb6\x18\x2d\xd3\xe7\x5e\x07\x3a\x47\xa9\xa8\x06\x7d\x47\xf3\x4a\xb6\xd8\x68\x34\x82\xd2\xfe\xf9\x08\x2f\x60\x0c\xc3\x09\xdb\x44\x18\x68\x3e\x73\x93\xf0\x6f\x29\x01\x31\xb1\xcd\x9a\x40\xcf\xea\x5a\xc9\x62\x0e\xe3\x8e\xa3\x94\x40\x73\x01\x3d\x9b\x0f\x05\x8a\xa6\xaf\xa4\x53\xf5\xca\xbc\x7a\x9f\xd3\xa7\x53\xe5\xa9\xf1\xa0\x14\x0b\xfa\xee\xce\xf8\x16\x3a\xec\xd4\x13\x8f\x9c\x67\xa1\x38\x89\x2d\x3f\xb4\xe0\xf3\x82\xa3\x8f\x1e\x59\x40\x3a\x02\xb7\xfa\xea\xc1\xb7\xd5\x17\x87\xdd\x56\xff\xde\x39\x82\x67\xe9\x78\x14\x02\x78\xdf\x8e\x96\xf1\x1c\xcc\xc0\x35\x98\x82\xf7\xe0\x06\xfc\x56\xac\x71\xfc\xe5\xa7\x8f\xff\xf3\xc7\xf0\xf7\xa0\x30\xb0\xd2\xb6\x9b\xa6\x58\xa5\xa6\xab\x0c\x07\x5c\x1a\xa5\x72\x25\xbf\x61\xbb\xf8\x1f\xcc\xd1\x10\x6b\x41\x46\x7d\x88\x65\xb2\xeb\x29\xd5\xeb\xdb\x37\xbe\x97\xce\x48\x8c\x88\x3e\x92\xf6\xfc\x3f\x98\xea\x7e\x0f\xd8\x33\xc8\x44\xcf\xcc\xaf\x79\xa9\x22\x79\xc5\x69\xec\x86\x09\x56\x6c\x82\xb3\x1d\x24\x11\xe0\x07\x98\x02\x76\xc6\x98\x20\x55\x8e\x7a\x4d\xa4\x38\x1b\x58\x55\x4b\x3a\x39\xbd\xca\xf6\xac\x30\x3c\x49\x1f\xd8\x13\x3f\x9e\x10\xb9\x9b\x08\xfa\xe7\xee\xe4\x12\x09\x37\xa1\xc7\x06\x16\x0b\x7a\xd0\xc2\xc0\xee\x4b\xed\x17\x38\x74\x98\x9b\x70\x6f\xfd\xa4\xa8\xf2\xc1\x3a\x2b\x1f\xae\xb3\xf2\x9d\x55\x2a\x3f\x8f\x62\xaa\xb2\xce\xab\x7e\xb7\xac\xfa\x52\x53\xdb\x54\x34\x17\xf8\x21\xd4\xd5\xd7\xd5\x0d\x6f\xa8\x5f\x9e\x4f\x58\x9d\x24\xc7\xe1\xae\x8e\x2a\x81\x75\x10\xf5\x2a\x77\x47\xc5\x51\xca\xb6\x13\x11\xba\xc9\x03\x06\x8f\x63\xbb\x78\x39\x14\x25\x96\x43\xf1\xdc\x73\x53\xb7\x1b\x46\x1e\x14\x3f\x7b\xda\xaf\x6c\x48\x52\x09\xf6\x44\x2d\x98\xc0\x29\x53\xb7\x52\x38\x1f\x7d\x60\x9c\xa1\x42\x11\xad\xe1\xf4\xb9\xe7\x30\x30\x99\x1f\xca\x17\xda\x3c\xf2\x49\xea\x68\x1c\xbb\xcc\x06\xf6\x9e\x5d\x79\xd1\x4a\x3d\x48\xa9\xd7\x63\xc9\xe1\xd7\x27\xa7\x1a\x59\x32\xb4\xd7\xe4\x00\x29\x3e\xc6\x72\x57\xc6\x2e\xb0\x6f\x87\x36\xb0\x0f\xfa\xe5\xdd\x96\x2b\x48\xe1\x2d\x1f\xf5\x2d\x7a\x7f\x8f\x7d\x5b\x92\x0e\x91\x2f\x1e\xfa\xd6\xdb\x19\x92\x38\x53\x5a\x48\xb1\x1d\x69\xf9\x5f\xf9\x01\xe2\x36\x26\x51\xe8\x25\xe2\x48\x3c\xb3\xaf\xdc\x5b\xff\x6a\x71\xf5\x43\x4c\x04\xe1\x57\xfe\xd4\xc7\x66\xbe\xb3\x21\x4f\xd3\x7d\x95\x6f\x14\x2f\x5c\x07\xeb\x98\x89\xc1\x9f\x6e\x26\x06\xdf\xe8\x4c\x0c\xff\x74\x33\x31\xfc\x46\x67\x62\xe7\x4f\x37\x13\x3b\x5f\x61\x26\x72\x14\xf7\x26\xf3\x52\x53\x65\x24\x92\x02\xf2\x80\x28\x6a\xfa\xe3\x26\x4a\x44\x93\xda\x8e\x2b\x11\x3f\x8f\x0c\xa2\xde\x60\xbf\xff\x77\x78\x0f\x3e\x8c\x3a\x5c\xc7\x88\xfb\x06\x3d\xe0\x2b\xe5\x35\xd5\x9e\xa2\x5e\x10\x22\xf1\xf6\x36\xe2\x9b\xb6\x46\xa3\xd4\xac\x39\x3a\x45\x52\xad\x05\x6f\xe7\x31\x4c\x12\x2c\xb7\x2e\x92\xd4\x82\x7e\x3a\x83\xb1\x75\x0e\x2d\xf4\xb6\x15\xc5\x8a\x2a\xe9\x89\xa4\x97\x60\x92\x2d\x71\x5f\xec\xa4\xdb\xdb\xa9\xf8\x11\x7c\x91\x14\x06\x47\x54\xf8\x83\xb2\x04\xa9\x4b\x97\x88\x2c\xe9\xf6\x36\x51\xfe\xdc\x3b\x1d\x17\x40\x87\xc0\x4f\x40\x08\x62\x44\x81\x8e\xeb\xc8\xaa\x4b\xa2\xa1\x80\x4f\x16\x54\xbb\xe0\x3c\x61\x7a\xad\x74\xc4\x55\x0d\x54\xb7\x05\xc2\x11\x76\x7e\x41\x93\xdc\x49\x1d\x10\x8f\xfa\xff\x88\xff\x2b\xfd\x47\xfc\xdd\x77\x4e\x78\x16\x8f\xc5\x0b\x67\xf1\x98\x89\xf4\x41\xc7\xeb\xc0\x91\x8f\xd5\x2e\x54\x8f\xe1\x83\x33\xd4\xd8\xb8\x47\x9c\x1c\x3a\xa1\xe3\x38\x00\x6d\x03\x1b\x44\xc0\xeb\x40\xc7\x01\x4b\xf4\x96\x03\x88\x9c\x05\x76\x76\xf6\xc5\x23\xc6\x7b\x9f\x7d\xee\x0c\x1c\xf0\xb9\xd3\x1b\xee\xe1\x7f\xc8\xff\x0f\xf0\x3f\x03\x67\x2c\x5e\x60\x67\xc8\xd9\xe7\x4e\x97\x16\xee\xf6\xe8\x3f\xa4\x78\x17\x97\x87\xf7\x4c\xd2\x1f\xb9\xa0\x13\x8e\xce\xbe\x5c\xc2\xe5\x91\xb6\x6d\xa7\x30\x3d\xd2\x34\x3e\x70\x84\x69\xd7\x73\xe3\x69\xd2\xe3\x1c\xf8\xdd\xdd\xd9\xd8\xe9\xc5\xd0\x5b\x4c\x60\xa7\x63\x54\xb3\xbd\x75\xd3\x59\xef\xca\xbd\x45\x0f\xf9\x8b\x0e\x9a\x41\x54\xdd\x95\x7b\xcb\xf4\x22\x67\xc3\x3d\xb0\xd7\x07\x07\x7b\x60\xd0\xef\x8f\x7b\x57\xee\x5c\xaa\x51\xd4\x67\x6c\x24\xfd\x67\xff\xf9\xdc\x8d\x13\xf8\x3a\x4c\x3b\xe9\xdf\xa1\xf3\x74\xd0\xef\x1f\xf5\xef\x3b\x29\x40\x6d\x39\xf7\xf7\x80\x8c\x53\xc8\x0e\xe6\x41\xe6\x8c\x11\xa4\x23\xb8\xea\x30\x41\x38\x82\x74\x8d\x3d\xf1\x2f\x3a\xe1\x3f\x77\xf6\xfb\x4c\x89\xba\xb3\xdf\x7f\x1a\xfe\x43\x01\x64\x89\x8d\x48\x36\xe1\xdf\xec\xbf\x7d\x07\xbf\xfb\x9b\x6d\xf9\x89\x15\x43\xd7\xeb\x46\x61\xb0\xfc\x1b\x5a\xfe\xd2\xa0\x1c\x00\x47\xb0\x47\xac\x1e\x39\x1d\xed\x8f\x46\xe9\xdd\x5d\x3a\x1a\x85\xdd\xc1\xdd\x1d\xee\x76\xec\x86\x5e\x74\xd5\x71\xfe\x2b\x46\xa4\xe2\xda\x24\x75\x06\xb0\x56\x9c\xfc\xf6\x85\xc8\x3f\x47\x3b\xfb\xfd\xbf\xc7\x4f\xd9\xa0\xc0\x72\x78\x14\xf2\xa1\x3f\x4d\xff\xde\x1d\xec\xf7\x01\x92\x7b\x8e\xc2\x1e\xfa\x07\xb0\xdf\xa4\x62\x80\xca\x2f\x47\x61\x8f\x7e\xba\xc7\xd3\x35\x76\xb6\xb7\x27\x1d\xf9\x94\x08\x1d\x10\xe3\x67\x20\x76\x80\x7b\xdf\x49\x99\x66\xc8\x01\xe7\xa3\x4e\x3c\xf2\x1d\xa9\xf0\x6c\x44\x76\xda\xf5\xe8\x2c\x1c\x83\xe9\xe8\x8b\xae\x9f\x52\xb5\x57\xf2\x59\x23\x29\xdf\xe5\xe5\x41\x46\xde\x7d\xc6\xfe\xee\xef\xc1\xcd\xe8\xcb\x3d\x53\x56\x5f\xc2\x65\xd2\x99\x3a\xbd\x8b\x28\x3e\x71\x27\xb3\x8e\x32\x95\x37\x67\x70\x3c\x9a\x9e\xc1\xf1\xbd\xe3\x80\x1b\x59\x55\xbe\xb5\x25\x7f\x05\x37\x9a\xa2\x7c\x4b\x7d\x00\x3a\x42\x6f\x7e\x73\x77\x77\x23\x1b\x0a\x9c\xed\xed\xce\x8d\xaa\x47\xbf\x19\x5d\xf7\x92\xc0\x9f\xc0\x0e\xda\xa2\xd7\x30\x4e\xc8\xa7\x82\x55\x9c\x76\xce\xc1\x0c\x40\xe7\xee\x0e\xde\x3b\xe0\xc6\x01\xef\xb7\xb7\x89\xe2\x6d\x6b\x34\x52\xda\xc3\xcd\xe1\xde\xa8\xcf\x9f\xdf\x64\xcd\x17\xef\x99\xf9\x02\x28\x3f\x52\x95\x9e\x03\xb8\xe2\x55\x6f\xc1\xac\x2e\x44\x5d\xbc\x41\xc3\x43\xd7\x8e\x03\xa2\xd1\x0d\x88\x65\x83\xd9\x07\x50\x64\x76\xfb\x0d\x7c\x70\xaa\x5a\xd4\x16\xf3\x24\x8d\xa1\x7b\xd5\x65\xd6\x95\x1c\xd7\xad\xda\x76\x35\xe0\x82\x00\x2c\xc0\xe4\x89\x6c\xc9\x90\xec\x18\x7f\x52\xfb\xda\xc5\xb7\x64\x5f\x9b\xaf\xd5\xbe\xe6\x7d\x13\xf6\xb5\x2b\xc5\xbe\x96\x63\xa1\x68\x68\x5f\x5b\x3e\xda\xd7\x0a\xed\x6b\xd7\xba\x7d\xed\x7a\x9d\xf6\xb5\x73\x83\x7d\xed\xbc\xc0\xbe\x96\xe4\xdb\xd7\x66\x9a\x7d\x6d\xf6\x70\xf6\xb5\x6b\xe9\x54\xbd\x7e\x08\xfb\xda\x94\x9d\x78\x20\x22\xd3\xe8\x8f\xbe\xdc\xb3\x8e\xca\xbc\x43\x9c\xc3\x3b\xf8\x88\x77\x88\x29\xef\xe0\xab\xbc\x83\xfc\x15\xf8\x3a\xef\xe0\xe7\xf2\x0e\xfe\xdd\x9d\xaf\xf3\x0e\xbe\x7a\x46\xf8\xa3\xb0\x0a\xef\x20\x31\x85\x56\x4c\x4d\x89\x77\x77\xe1\xbd\x03\x7c\x07\x44\x12\xef\xe0\x6b\x37\xbb\x4f\x79\x07\xe5\xf9\x73\x3f\x7b\x34\x47\x9c\x77\xf0\x8b\x79\x07\xbd\x85\xfc\xdb\xc5\xc7\xc3\xc3\xbc\x83\xdf\x92\x45\xf2\x7d\xb1\x15\xf2\xc7\xc1\x4f\x7f\xbc\x7e\x7b\xf2\xa6\xd0\x0a\x39\x89\xae\xce\xd1\xa1\x77\xec\x79\x48\xcc\xb6\x81\xbd\x2d\xbc\xe8\x5e\x78\x93\x3a\x86\x4a\xc6\xd4\xe8\xfc\x0b\xcd\xab\x82\xad\x96\x7b\x79\x36\x98\xfd\x8c\x3f\x1a\x51\xed\xb0\x88\x55\x55\x1c\xbb\x4a\xfd\xfe\x98\xfe\x69\xa1\xfb\x76\x89\x7e\xa8\xd8\xd4\x7e\xf6\x8b\xdc\xad\xd5\x4c\x41\x42\x9d\x96\x63\xd9\x60\x05\x14\x70\x32\x8b\xd3\x57\x62\x10\x2d\x8a\x6e\x67\x8f\x99\x43\x17\x4d\xd0\x90\xe2\x94\xd0\x51\x28\x7c\xbb\x2a\x1a\xdb\x8a\x1e\xeb\x1d\x67\xe1\x1d\x2a\x2c\x80\x03\x8c\x64\x7c\xff\xee\xf4\xe7\x37\x9f\xdf\x9d\x7e\x38\x7e\x79\x72\xfa\xf9\xe4\xdd\xf1\xf7\x6f\x4e\x5e\x35\x70\x2b\x96\x6b\xde\x1b\x2b\x99\x29\xd8\xc0\x11\x43\x45\xec\x56\x31\x9c\xbb\x31\xf4\x3e\xff\xbe\x80\xf1\xb2\x56\x63\x46\x13\x1f\xcf\x9b\xd3\x07\x76\x98\xcc\xdd\x49\x7e\xde\x9c\x8a\xce\xf2\x1c\xf9\xab\xe6\xce\x69\x1a\x19\xd2\xc2\x09\xe5\x70\xcf\x56\x09\x52\x58\xa0\x44\xe5\xa3\xaa\x93\x42\x64\x68\x9e\x27\xde\x57\xdc\x35\x31\xd4\xbc\x24\x22\xd5\x15\xb8\x75\x82\xc2\x98\x96\xec\x61\xde\x22\x73\x53\x77\x02\xc3\x94\x86\xd6\x94\x9d\xbd\x41\x79\x79\xdb\x88\x5e\x5f\x75\x21\x7a\x52\x1b\x1b\xb6\x18\xc5\xf0\x37\x63\x35\x1a\x26\x65\x1d\xcb\xac\xe8\x16\xe4\x39\x89\xbe\xf7\x43\xef\x03\xf5\x2f\xa9\xe5\xdd\x9c\xe7\x32\x9d\xdd\x6a\xbc\x1d\xc6\x0f\xa0\xee\x0e\x86\x07\xbd\x7e\xaf\xdf\x1b\x70\x17\x0c\xfb\x48\x60\x01\xf4\xae\xb5\xba\x52\xb1\xff\x51\xf7\xdc\x0f\xbd\xae\xcb\x7a\xd4\xc6\x8a\x2d\xf5\xd9\x23\x7f\x94\x0a\x75\xec\x73\xed\x2c\x3d\x9c\x1e\x6a\xbe\xec\x9e\x2f\xd2\x14\xa7\xab\xd3\xfc\x01\x98\x8b\x07\x8b\xc8\x25\x4d\x97\x31\x47\x54\x76\x59\x0f\xdb\x5e\xc7\x05\xee\xd8\x55\x3c\x5e\xea\x41\x48\x2a\xec\xaa\xbc\x40\x61\xf8\xd5\x43\xb0\xa3\xc2\x7c\x6c\x78\x35\x4f\xe5\x34\xca\xd8\x6b\xa2\x7c\xdb\x56\xb7\xe6\xb9\x73\xdf\x06\x76\x17\xcd\x9c\xd7\x25\x5e\x3b\x7e\x78\x1d\x4d\x58\x52\xc4\x88\x3a\x19\x90\xd8\x54\xc4\x75\x20\x8c\xd2\xae\x08\xd1\x0a\xc3\x6b\x1b\xd8\x2e\xf6\x2d\xc7\x8e\xe8\x26\xd3\x60\x7d\x53\x60\x91\xbe\x91\x1b\x04\x6f\x84\xd1\xcf\x0f\xa9\x40\x8b\xf3\x6c\x76\x88\xcf\x84\x03\xe2\xbc\x9f\x89\x63\x84\x03\x22\x5a\x00\xf5\x60\x91\x42\xaf\x87\x5e\x64\xbf\x43\x8f\x7a\x57\xbb\x58\x9f\x68\x3b\x60\xf2\x97\x31\x29\x5e\x31\x93\xa2\xaf\x9a\x14\xa3\xd1\xb2\xe3\x4b\x26\x45\x9f\x9b\x14\x29\x2e\xd9\x6f\xdd\xa4\x78\xd1\x99\x75\xe0\x28\x92\x4d\x8a\x91\xd1\xa4\x48\x5c\x5a\x5c\x30\xc3\x36\x45\xfc\x9a\x23\x9c\x60\x02\xfd\x79\x14\xa7\x68\x86\x17\xf4\xb9\x64\x0f\xf4\x25\x7b\x20\x95\xf5\x34\x1b\x19\x2b\x3a\xf3\x93\x1e\xa9\x88\x1b\xd6\xc4\xda\xd1\xde\x91\x15\x3f\xc2\xba\x46\x8a\x3b\x72\x85\xf8\x39\x6e\xf7\x89\x64\x8b\x23\x05\x7b\xf3\x18\x7a\x38\x39\x56\xc7\xce\x6c\x12\xa1\xf9\xd1\xea\x61\x86\x30\xd8\xc9\x34\x2c\x2c\x82\xd2\x4a\x2f\x1b\x6e\x4f\x94\x35\x76\x43\x6e\x26\x8a\x53\x6a\xc6\xf2\x0c\x66\x2c\x8f\x98\xb1\x7c\xc5\x8c\xe5\x8e\xa6\x9d\x8e\x3f\x9a\xc8\x86\x2c\x3a\xbb\x67\xe1\x18\x34\xb4\x61\xa1\x8d\x74\xef\x80\x60\x34\xed\xf8\x4a\xc5\x74\x81\x9c\xc5\xab\x56\xbd\xc8\x54\x4d\xd7\xd8\x59\xb4\x6a\xd5\xbe\x6c\xd7\xb9\x29\xb4\xeb\xbc\x07\x37\x2b\xd8\x75\x36\x2d\x52\xc6\xab\xef\x0e\x07\x3f\xc1\x37\xb1\x59\x63\x44\xbd\xd8\xea\x05\xcc\x78\xc1\xbd\xdf\xa8\x1a\x09\xa8\x81\x2c\xa4\x4f\xc4\xe9\xda\xa0\x64\x62\x01\x34\x4a\xb4\x4c\x82\x9a\x96\x16\x64\x83\xa4\xe4\x58\x57\xac\x8d\xa1\xec\xb2\x3d\x04\x87\x4a\x5c\xcb\x67\xb5\x63\x6d\x18\x9c\xcf\x85\x92\x64\xcf\x10\xe3\x63\xd0\x1f\x03\x5d\x46\xc6\xbe\x9f\x0d\x38\x71\xfb\x2b\xb8\xb8\x6b\xf4\xda\xff\x86\x3d\xdc\xe5\xe9\xc8\x13\xaf\xd0\x67\xe3\xf4\x88\xc4\xf8\x9a\x3a\xc0\xf8\x06\xf5\x8a\x67\xe9\xe9\xd7\xe3\xd3\x3e\xe0\x21\xe2\xb4\x24\x2e\xf9\x7c\xb0\x21\x16\x5c\x0e\x87\xff\xc0\x3e\xed\x7b\x52\x94\x30\xdd\xa7\x7d\xd8\x8e\x4f\xfb\x8e\xc1\xa7\xfd\x94\xf0\xc1\x16\x55\xad\x36\xf6\x6b\xdf\x2d\x71\x0a\x37\xae\x30\x25\x70\x6f\x4e\x89\x9a\xb9\x7a\xd8\x9a\xad\xed\xd5\x5e\x77\x00\xaa\x77\xbe\x71\x04\xac\x48\xcd\x21\xb0\x3d\xb4\x1e\xbf\xf6\x1d\x90\x09\xf3\xd0\xc8\xaf\xbd\x46\xca\x90\x15\x71\xa6\x92\xb7\x3b\x77\x67\x37\xfa\xaa\x73\x8f\xf6\x26\x88\xd3\x72\xf6\xe7\x21\x63\x25\xb3\xde\x6d\x50\x98\xe4\xfe\xf2\x3c\xf1\x3f\xa6\xbf\x16\xda\xef\x68\x4f\x6d\xa1\x1d\xd3\xd6\xfb\x21\xb0\xd1\x90\xba\x93\x28\x40\x9b\x0d\xcf\xee\x59\x0e\x2b\x45\xec\x74\x64\x93\x32\xbb\xdb\x8b\xc0\x0f\x2f\x31\x33\x87\xcf\xcf\x5d\x62\x20\x53\xa3\xba\xe0\xbb\xdc\xf6\x93\x37\xa2\x68\xe5\xcd\x28\x73\x63\xed\xa5\xa7\x32\x9b\x95\x44\xca\x35\x70\x66\xbf\xa6\xcb\xf0\x65\xb4\x08\x4b\x54\xaa\x95\xed\x8a\x54\x75\x49\x22\x2a\x92\x66\xde\xc2\x64\x76\xca\xa2\x9f\x9b\xd4\x7e\xa5\x5a\xcb\x1f\xa1\x1b\xa4\xb3\x7c\x8c\x79\x25\xd5\xa2\x51\x4d\x2f\xf1\x6f\x88\xc4\x69\x34\xef\x26\xa9\xcb\xb9\xbb\x86\x54\xde\xc3\xf9\xa8\x62\x3f\xf5\x69\xec\x28\x23\x21\x56\x09\xdd\x8a\xfe\x8e\x53\x2b\x80\x6e\x92\x5a\x51\x08\xad\x19\x26\x91\x35\x99\xc1\xc9\xa5\x15\x85\xf8\x19\x3b\x66\x2c\x3f\xb1\x2e\x5c\x3f\xf0\xc3\x69\xe5\xbc\x1a\x39\x83\x62\xa9\xd8\x1e\x7e\x4c\x33\x0c\xf1\xa2\xfd\x59\x75\x58\x73\x37\x49\xd6\x3a\xac\x20\x50\x46\x93\xe0\xd4\x0f\xb4\xd5\xba\xb9\x4e\xd8\x1f\xc9\xf7\x40\x72\x48\xa8\xb5\xeb\x91\x73\x57\xce\xd6\xa0\xf0\x7a\x15\xb9\x58\x6d\x87\x1a\xee\x67\xc3\xf1\xa4\xc7\xe4\x2d\x31\x81\x83\x4c\xcc\x5e\x1a\x9e\x95\x5b\x48\xcf\x76\xf6\xe4\xe0\xe2\xcd\x27\x92\x9d\x2f\x2e\x3d\xdf\xf6\x15\x69\x8e\x5a\xb6\x7b\xde\x84\xa9\x7d\x93\x5e\x32\x8b\x6e\xb4\x60\x72\xff\x8f\x58\x61\x72\x2f\x65\x9d\xfb\xce\x58\x29\x22\x2f\xbf\x5c\x80\x44\xf6\x8d\x7a\xa6\x85\xa2\xb5\x56\x32\x6e\xd3\x80\xbf\x7a\xef\xab\xe5\x87\xd1\x6e\x2a\x33\x3c\xa4\xbc\x47\x55\xcd\x99\x94\x2b\x2d\xd9\x2d\x15\xee\x7d\x82\x1a\x69\x20\xef\x6d\xc2\xce\xaa\xcc\x31\x94\xe1\x43\x4a\x99\x84\x16\xcd\xf0\x26\x3c\x48\xd3\x73\xaf\x22\x67\x32\xc8\x39\x18\x6a\x1f\xab\x95\x8d\xeb\x0a\x2b\xf8\x2f\x37\x85\x37\xee\x12\xe7\x30\x9d\xda\xdc\x9a\x0a\xab\xe2\xce\x2a\x25\x50\xea\x67\x3e\x97\x35\xbe\x0a\xba\x4c\x5b\x5f\x4d\xd7\x53\x65\x23\xf4\x4e\xa9\x11\xba\xea\xea\xa0\x91\xc6\xc7\x0d\x66\x7b\xa7\xf4\x16\xaf\x2d\xcd\x0f\x80\x41\x0e\xcf\x17\xa5\xcd\xce\x9a\x22\xb7\x26\x06\x54\x72\x23\xaf\x30\xed\xd2\xad\x2f\x59\x7c\x65\x63\x2f\x93\xc5\xb8\x74\xde\x28\xcf\xa6\x41\xc4\x6d\x31\x64\x38\x20\x9d\x4b\x8e\xbe\x08\x39\xd0\x84\x67\x26\x35\x4d\x61\x8a\xc4\x65\x55\x06\x73\xfe\xd9\xbf\xbf\x6f\x18\x86\x8e\x0f\x6e\xd3\x6c\x2a\xc3\xdf\x92\x5f\x43\x6f\x3e\x79\x8c\x3e\xfe\x8d\x46\x1f\xe7\x96\xd6\xc7\x08\xe4\xeb\x55\xd0\x6f\x40\x04\xf2\x18\x4e\xfd\x24\x85\x31\xb6\x23\xcb\xa2\x8b\xfa\x03\x09\x86\xcd\x16\x46\xcd\x80\xd8\x1f\x45\x55\x6d\x47\xf0\x46\x97\x47\xee\x10\xb2\x3f\xae\x34\x8c\x77\x51\x6a\x55\x1e\xca\x63\x80\xef\xbf\x7c\x80\xef\x72\xb3\xa7\x54\xce\x68\xec\xd4\x0a\x12\x05\x15\xad\xf2\xe7\x90\xa8\x80\x96\xe8\x0d\xa2\x30\x5d\x16\xbf\x47\x9b\xf8\x51\xbc\xc6\xeb\x78\x8c\x18\xfe\xcd\x44\x0c\x27\xd3\x67\x9d\x8a\xe4\xa3\x6b\x0a\x1b\x2e\xaf\x36\x05\x37\xaa\xfe\x50\x33\xd6\xb6\x79\xd9\xb6\x1e\x30\x5c\x59\xf2\xa6\xde\x37\x8c\x75\x6e\xde\x3c\x6d\x98\x55\xab\xcd\x7e\x5b\xb6\xf5\x32\xfa\x65\x0d\xea\x03\xfd\x71\x4d\xca\x35\xb6\xa2\x57\xea\xaa\x61\xa2\x95\xe7\x35\x3b\xbb\x5e\x7b\xf9\x63\x1c\xf8\x86\x71\xe0\x73\x45\xde\x07\x4d\x04\xc6\xf5\x45\x4f\x27\x33\x37\x4e\x7b\xb7\x78\x39\xad\x55\x0a\x17\x0f\xb0\xc4\xad\xe8\xac\x28\xbc\xf3\xc8\xf6\x3d\x54\x4f\x14\x1e\x7d\xf9\x78\x72\x7a\xf2\xe9\xe8\xec\x4b\xea\xc6\x53\x98\xd2\x5f\xee\xc7\xf7\x00\xf7\x34\x39\xfa\x82\x1e\x1c\x7d\x41\x45\x4f\x7f\x7e\xf9\xf2\xe4\xf4\x54\x2a\xcc\x52\x9f\xdf\x8f\xc1\xc9\xc7\x8f\xef\x3f\x4a\x3f\xe1\x14\xde\xa8\xa2\x7b\x40\x4b\x1d\x7d\xb9\x07\xf8\xe9\xd1\x97\x7b\xac\xd9\xa8\x4e\x3c\x43\xb4\x8f\x7a\x04\xcf\x04\x02\x69\x47\xdb\x11\x16\x6b\x3b\xce\x3f\xfd\x36\xbc\x70\x3f\xfe\xc7\xac\xed\x38\x25\x4b\xc1\xfe\xd7\xc2\x8d\x3d\xc4\x08\xb2\x4d\xe3\xf9\xc9\xdc\x4d\xf1\xb6\xa1\xcb\x45\xc0\x45\xb7\xc5\xe1\x94\x85\x36\xe0\x07\x5d\x3c\x70\xce\xcc\x24\xf1\xc4\xa6\x58\x85\x7e\x6d\x08\x42\x0c\x2f\x78\x45\x64\x62\xb9\xa6\x93\x2b\x3e\x24\xcc\x83\xe8\x38\xf5\xec\x33\x6a\x34\x0e\x29\x46\x89\x55\x7c\x85\x5e\x21\xf1\x68\x45\x2e\xfd\xea\xd7\x57\x8e\x2d\x9f\x74\xf7\x35\x22\xec\x0b\x3f\x39\x9d\x45\x37\x58\x30\x91\x85\x14\x6f\x11\xbb\x92\xc0\x12\x5d\xcd\x03\x98\x0a\x64\x07\xd1\x6c\x60\x2d\xcd\x70\x0c\x76\xfa\xfd\x7e\x36\xda\x1e\xf3\x61\x04\x36\xde\x47\xb5\xa1\x1e\x46\xe1\x62\x17\xd8\x71\x84\x55\x5c\x6e\x00\x55\xd1\xec\x65\x34\xf7\xa1\xc7\x39\xe9\x5d\xec\x3e\x89\x7e\xd8\x32\xda\x03\x4a\x0d\x4e\x95\x2c\x52\xf9\xd3\x45\x36\xf9\x2a\x93\x85\x84\x49\x6d\xb4\x7f\xe6\xf9\x23\x76\xfa\x1b\x37\xb1\xdc\xd0\x9a\xc7\xd1\x79\x00\xaf\xd6\x37\x75\x19\x49\x5f\xbe\x0c\x88\x09\x97\xac\xa2\x81\xc1\x26\x8b\x0b\x0c\x80\x2d\x15\xdf\x07\x76\xea\xa7\x38\x26\x9e\x8c\x98\x78\x19\xcd\x97\x16\xe1\xa4\x10\x25\x11\x7f\x94\xce\xa0\x35\x09\xfc\xf9\x79\x84\xce\x36\xc9\xee\x4b\xec\x4e\x43\xa9\x37\x29\xaf\x1b\x47\x57\xe6\x6f\x75\x71\x58\x4c\xdc\xbd\xfd\x31\x79\x67\x57\xe9\xcd\x90\xb8\xae\x1d\xb0\x33\xa6\x38\xd4\xa4\xc1\x94\x01\x76\xc0\x2e\xd8\xab\x63\xd0\xa0\x47\xab\x3d\x5d\xf8\x1e\x4e\x5d\xca\x17\x23\xe7\x78\xe8\xe1\xc8\xad\x1a\xf4\x90\xac\xc3\xcf\x68\xf7\x1e\x67\x60\xe2\x42\x06\x26\xcc\x65\x60\x38\x49\x8f\xcc\x3e\x69\xfc\xf7\xa7\x51\x62\x3b\xc0\x8b\xae\x72\x0a\x7a\xd1\x95\xed\x00\xc9\xca\x81\xf8\x09\xd9\x5b\x07\x3b\xdf\x7c\xc6\x01\x62\xcc\xa1\x6e\x48\x28\x3e\x4c\xc6\x11\x77\xbb\x21\x0f\x11\x4d\x89\xbf\x91\x17\x5d\xe1\x6f\x24\xd6\x0e\xf9\xf5\x73\xe0\x27\x29\x0c\x61\x9c\x88\x32\xfc\x51\xc7\xb9\x07\x37\x7e\x10\xbc\x82\x49\x1a\x47\xcb\x93\x00\x6f\xd4\x06\x1d\x13\xad\xf4\x62\x78\x15\x5d\x43\x54\xb3\xe7\x7b\xaf\xc3\x04\xc6\xa9\xa1\x5e\xe1\x25\xf5\xa4\x7e\x13\xae\x47\x86\xd8\xe3\x13\xd0\x83\xb7\x70\xb2\x48\x61\xc7\xfe\x5f\x36\xf3\x30\xe3\xc4\x01\xb6\x45\x57\xbf\xe3\x80\x2f\x8c\xa9\xca\xfa\x4a\xc1\x1e\xbb\x87\x3b\x36\x65\xd9\x6c\x87\xb1\x5e\xc5\xc5\x31\x13\x67\x3b\xf7\xf7\x8e\x66\x79\x8a\x4b\xd9\x35\xbc\x79\x2f\xa2\xf8\xca\xc4\xac\x09\x25\x4b\x92\x65\xc5\xb8\x47\x9f\x1a\xbb\x4a\x89\xc0\x73\xd1\xc1\x9e\x7b\x3d\x3f\x21\x1e\x7c\xd0\x71\x78\xa4\xa1\x0e\x74\xf4\xf0\x57\x39\x11\xac\x48\xb0\xb4\xbb\xbb\xad\x8e\x16\xb0\xcd\xf2\x59\x24\x20\x54\x33\xad\x9a\x72\x78\x67\x63\x10\x8f\xb6\xfa\x20\x1a\x6d\x0d\x80\xcf\xb8\xbf\x34\x5e\xf2\xc0\x61\x2e\x08\x46\xf0\x4c\xab\x72\xdc\x71\xfe\xb1\xd5\x89\x47\x1d\x77\x14\xf4\x42\x78\x9b\x76\x1c\xa7\xe7\x45\x21\x74\xb6\xb7\x3b\x61\x6f\xbe\x48\x66\x1d\x97\x44\xe0\x71\xc0\x56\x7a\x77\x17\x52\x4f\x45\xec\xaf\xf9\x0f\xd4\xa4\xf3\x0f\x1a\xb0\x6a\xe1\x7c\x89\x50\x17\xfc\xd1\xe2\xfe\xc2\x0f\xdd\x20\x58\x7e\xc1\x01\xb2\xee\xee\xd0\xd9\x37\x1a\x05\x3d\xd2\xe5\xbb\x3b\xf6\xa9\xe3\xf0\x92\xfe\x45\x27\xa2\x0e\xa0\xfe\x3d\x73\x35\x0c\xef\x31\xa5\x0c\x84\xdb\x82\x6c\xfc\x88\x8a\x09\x8e\xb5\x25\x48\xc8\x7e\x24\xa1\x86\x1c\x4a\x23\xca\x4d\xe7\x05\xe9\x82\x0e\x0d\x64\x74\x08\xba\x03\xe7\x89\x4d\x8a\xdb\xa3\xd1\x28\xd4\xa2\xdb\x21\xda\x8c\x94\x27\x3d\x74\xa0\xe2\x20\x5c\xf6\x5b\x77\x8e\xdf\xb9\xbb\xb3\x4f\x21\x79\x9d\xf5\x86\xac\x0e\x24\x42\xd2\x88\x5d\xf6\x31\xdb\x77\xf4\x95\xa7\xff\x77\xe7\xf9\xd1\xcf\xfe\xdd\x6b\x27\x4c\x3b\xcf\x8f\x0e\xef\x06\xfb\x77\x3b\x43\xa7\xf3\xfc\xe8\x65\xe0\x5e\xcd\xa1\xe7\x3c\xc7\x95\xfc\x5f\x4f\x7b\x29\x4c\xb0\x63\xa7\x32\xd2\x0c\xbd\xe4\xf0\xa0\x92\x53\xed\xeb\xf0\xda\x0d\x7c\xcf\x72\x53\x24\x0b\xe0\xcc\x71\x1e\x24\x83\x59\x60\x78\x5e\xd8\xc5\x4b\xe4\x3c\x10\x00\xc6\xde\xff\x09\x5f\x87\x16\xce\x01\x81\xca\x9f\x43\x8b\x15\x01\xf8\x05\x2c\x22\x5b\x24\xf0\x57\x42\xbc\x74\x71\x8e\x7c\xd7\x32\xac\x3a\xeb\x0a\xa6\xb3\xc8\xeb\xd9\xce\x7d\x47\x8a\x82\x45\x46\xf1\xa5\x43\x16\x4c\x7a\x77\x97\xfe\x93\x45\x0d\x45\x2b\x32\xe5\x81\x51\x85\x17\x6d\x38\xea\x83\x58\x71\x9b\xfd\x47\xf8\x5f\x29\x0e\x8c\x17\x9f\x85\xe3\x11\xc4\x61\xf1\x28\x91\x5a\x8a\xe2\x14\x15\x4b\x54\x2f\x7f\xb8\x0a\x83\x1f\x77\x13\xb3\x44\x75\x13\xfb\x44\xc5\x40\xbc\xcb\x0b\x65\x25\x7c\x5e\x05\x11\x86\x51\x33\xd6\x96\xa3\xbc\x91\xd0\xa4\x59\x31\xa2\x70\xc2\x59\xcb\xa1\x21\xf7\x3f\x33\xee\x32\x36\x88\xe0\xf7\xf2\x10\x54\x48\x5a\x4a\x60\xfa\xca\x4d\x5d\xbb\x91\x1d\xb5\x82\xf6\x1a\x0f\xae\xb2\xa9\x43\x65\xd0\x31\x75\x18\x39\x99\x24\xe9\x87\x97\x88\x12\x68\x83\x63\x28\x3c\xd6\x3c\x62\xd2\x78\x10\x73\xde\x32\xc9\xc6\x6a\xfc\x22\x4e\x23\x05\x82\xb6\x07\x9e\x19\x82\xc2\xa8\x36\xf2\x3d\x25\x44\xcc\x2e\xa1\xad\x0a\xbc\x3f\xd4\xac\x48\xc3\x22\xba\xe3\x12\x3b\x75\x34\x7e\x84\x3a\x42\xbb\x3f\x50\xa0\x53\x7b\x92\x0e\x1f\x4d\x27\xb0\xf9\xa2\xf1\x13\x92\x7f\xd2\x06\x54\x52\xc2\x22\x32\xda\xd7\x88\x7b\x4c\x16\xe7\x57\x3e\x62\x11\x29\xf5\x18\x45\xcc\xab\x85\x93\x55\xd0\x65\xb0\x2b\x2c\x0a\x42\x12\xa3\x0f\xfc\xf0\x22\xc0\xb6\xb6\x71\x0e\x15\x48\xb1\x39\x8c\x13\xe6\xe7\x80\x1b\x2f\xa4\x1c\xcd\x8b\x42\xfb\xab\xbd\x32\xae\x6e\xce\x50\x65\x27\x1a\x7e\x02\x47\xe1\x30\xd8\xd5\x06\x94\x30\xfd\x06\x01\xc5\x4a\xb6\x48\x6d\xf9\x55\xaa\x77\xe9\xc3\xc0\x6b\xb3\xde\x22\x6a\xd4\x32\x14\xd4\x56\x3a\x37\xb3\x8e\x4d\xa2\x30\xa5\x89\xc2\x5b\x26\x1f\x41\xe9\x6c\x26\xf5\x0a\xa2\xbd\xd4\xd1\xc8\x57\x11\xe2\xf3\xe1\xcd\xf9\x12\x2a\xfa\x85\x1e\x35\x18\x4a\x47\x1d\xa3\xc8\x85\x46\x4f\x6e\x0c\xbb\xe3\x18\xbb\x45\xec\xcb\xf2\x2b\x3d\xc3\x70\x0d\xec\x84\x97\x0e\x78\xc4\xfa\xd3\x63\x6b\xc2\xce\xb6\x99\x9b\xcc\xa8\x5e\xbf\x86\x9c\xab\x09\x0c\x5c\xca\xf5\x0b\xa5\xdc\x28\x4f\xca\x15\xd2\xa4\x0c\xc3\x2b\x93\x65\xcf\x17\x7e\xe0\xc1\x38\xa7\x0c\x5e\x87\x0e\x20\x03\x3d\xda\x1a\x00\x46\x88\xbc\x08\x15\x8c\x3a\x66\x01\xf0\x1e\x20\x89\x2e\x9c\xc0\xa0\xf9\xfb\xe4\x77\xf9\x7d\x5c\x2b\xbe\x1c\x8e\xcc\xf1\xc4\x7b\x33\x37\xf4\x02\x78\x72\x0d\x43\x24\xde\x60\x81\xf6\x23\x9c\x40\xff\x1a\x1e\xa7\x69\x9c\xd4\x92\x93\xb1\xe0\x83\x4b\x21\xe2\x10\x59\x9c\x12\x11\x3f\x21\xe2\x2a\x5a\x68\x8e\x88\xb6\x7b\x4f\xc4\xf3\x8f\x30\xf4\xd4\x88\xee\xe5\x32\x33\x99\x98\x04\x12\x39\x18\x48\xeb\x9b\xbc\xeb\x27\x02\x76\xd3\xa1\xe7\xae\xd3\x82\x3a\x40\x00\x33\x49\xbb\x68\xb5\xf6\xfc\xe4\x1d\xbc\xb1\x9d\xed\x6d\xa2\x82\x40\x8f\xe2\x28\x08\xce\xdd\xc9\x25\xa2\xa4\x7f\xbe\x48\x21\x56\x46\x70\xf4\x27\xe5\xf1\x14\xe8\x27\x81\x49\x42\xc6\x39\xf3\xf8\xac\x9c\xaa\x98\x1d\xe7\xdf\x7a\xb4\x0e\x24\x45\x4d\xe9\x47\x47\xe9\x20\x62\x34\x68\xc7\x3a\x3a\xbd\xd8\x26\xdd\xea\x3b\x20\x65\x72\x1a\xb5\xb2\xd1\x58\x29\x8b\x34\xba\xf0\x83\xe0\xee\xee\xcb\x7d\x5e\x68\x7a\x12\x06\x3b\xec\xa4\x60\xe8\x80\x68\x14\x9f\xf5\xc7\xc0\x1f\xc5\x67\x03\xce\xff\x8b\x76\x21\x88\x80\xef\x00\x78\xef\x80\xd4\xc9\x4e\x20\x39\x5f\x52\xaa\x0d\x41\xdf\xee\x81\x71\xf9\xd2\x0d\x41\x7e\xeb\x70\xa5\x4f\x18\xc5\x57\x38\x40\x09\x5d\xcf\xbc\x2a\x44\x2b\xf1\x49\x22\x95\x8e\xa2\xf5\xab\xe9\x32\x88\x6c\xf0\x60\x76\x3b\x45\x3e\xe1\x76\x3b\xf4\x80\xd8\xed\x88\xbd\x8d\x9b\xdb\x3c\x3f\x99\x44\x61\x48\x4c\xdf\xf7\xe0\xcd\xfb\xe3\x57\xba\x51\x0f\x4c\xa2\xd0\x3b\x62\x62\xc1\x3d\xe0\xbf\xa2\x27\x48\xc8\x97\xad\x7e\xe8\xd9\xd1\x97\x7b\x40\x7f\x53\x0d\x80\x9a\xb1\x10\x68\x7d\xa1\xa6\xbf\xfb\x7b\x40\x6c\x87\xdc\xec\x47\xec\x8d\x9f\x3e\xfe\xe7\x48\x69\x1b\x17\x95\x07\x50\x58\xb2\x82\xe9\x50\x9e\xbf\x12\x6d\x54\x8e\x21\x31\x77\x05\x68\xda\x2b\x10\xb6\x65\x4a\x8c\x8b\x05\xdf\xb7\xef\xfe\x35\xfd\xfd\xe0\xb7\x1f\x57\x37\x25\x96\xc9\xc6\xb2\x4a\x5d\xb0\xe2\xe5\xd6\xc5\xc1\x7e\x0d\x61\xea\x6b\x58\x18\x05\x46\x86\x55\x87\x36\x80\x2c\x1a\x9b\xec\x41\xb6\x9f\xbc\xa1\x82\x33\x97\x10\x95\x26\x84\x79\x41\x48\xb3\x72\xb8\xd3\xc1\x81\x00\xb6\xd9\x68\x1f\x4a\xe6\x8f\x33\x9b\x13\x6c\x0f\x73\xa8\x1a\x5f\xc9\x53\x70\xca\xf0\xc1\xe1\x20\x23\x61\x4a\xd2\x24\x26\x07\xb9\x12\x59\xbd\x7d\x86\xa8\x03\xf9\xd1\x58\x86\xf2\xcf\x83\x67\x9a\x88\x45\xfa\xca\xa9\x4f\xda\xeb\xe1\xff\x27\xbd\x0b\x3f\x4e\x52\xaa\xc2\x1b\x8f\xc7\x45\x46\x35\xa2\x4f\xd6\x90\x83\xb5\xc4\x44\x49\x0c\xdc\x11\xaf\x09\x7f\x38\xac\x40\x19\x37\xf1\xdf\x44\xcb\xfc\x8c\x86\xdc\xa9\xe7\x0f\x69\x08\x8d\x7d\x48\x09\x28\x54\x0f\xcd\x91\x7d\xc2\xd4\x1a\x46\xe9\x5b\x61\x6d\x55\x6c\x6e\xd2\x0a\x10\xe7\x7e\x3d\x9d\x86\x5d\x18\xe5\x7b\x4f\xd6\x72\x3d\x33\x0c\xf5\x20\xa3\x2a\x60\x60\xde\xbd\x31\xe0\x77\x4a\xab\xe0\x51\xa6\x98\x4a\xa2\x45\x8c\x13\xb5\x52\x67\x8c\x39\x0c\x73\xb5\x76\x50\x6c\x0d\x6c\x13\xd6\xf4\x77\x39\x3b\xc3\x96\xb4\x58\xd2\x3e\xa0\xcb\xad\x70\xcd\x33\x93\x8b\x3a\x64\x12\xdc\x89\x24\x95\x95\xb7\x6c\xe6\x78\x29\xf6\x21\x5d\x45\xc0\x5f\xd1\xd6\xcf\x67\xb4\xf6\xea\x32\x6d\x5c\x73\x6d\xeb\xdf\xbb\xba\x76\x88\xa2\xc7\x14\x45\x30\x71\x14\xad\x31\x2b\xe5\x2a\x83\x96\xa1\x14\x25\xc4\x35\xd5\xf5\xf5\x49\x8b\x7b\xd1\x65\x8c\x33\x19\xb1\xb2\x1b\xfb\x35\x17\x7f\x0b\x64\x56\xce\x50\xc2\x15\xaf\x72\x84\x2a\x4a\xf3\xfc\xb9\x55\x5b\x58\x79\x8a\x29\x11\x0c\x75\x03\x59\x2b\x2d\x4e\x74\xe6\xf1\xe2\x5f\xf8\x34\xc0\x2e\xee\x83\x7b\x91\xaa\x9e\x6a\xe5\xb0\x18\xb3\xda\xbc\x62\xec\x8b\xb6\xd6\x97\xb4\xc6\x94\x41\x71\xa6\x34\xf5\x27\x97\x4b\x54\xa2\xb6\x6b\x9a\x8a\xe8\x99\x33\x38\x0f\x4d\x1f\x2e\xb7\x65\xe7\x42\x7d\x30\xb6\x85\x06\x23\xb1\xe4\x97\xba\x8b\xb9\x47\x64\x88\x0a\xe1\xb8\xd3\x38\x0a\x95\x34\xfe\xff\x26\x35\x9a\xd0\x42\xe2\xef\x38\xb4\xf0\x16\xc3\x10\x23\x22\x9a\x43\xcf\xba\x99\xf9\x41\x92\x5a\xf4\xcc\xc5\xaa\x26\x0b\x0d\x09\x58\x31\xbc\x88\x61\x32\xc3\x90\x9d\x78\x69\xb9\x53\xd7\x0f\x7b\xd5\x83\x60\x37\xd6\x33\x57\x53\xb4\x56\x54\x17\xd7\x33\x74\x95\xad\xc5\xaa\x5d\x6b\xa2\x27\xde\x37\x5e\xc4\x2a\x14\xa9\x38\x38\x19\x65\xfb\x28\xcb\x43\x38\x1e\xae\xbb\xfd\x7d\x01\x31\x08\x9e\x41\xaa\x89\xc4\xc6\x4e\x22\x60\x63\x1b\x26\xde\x34\x4c\xc3\x4b\x3d\xaa\x2f\x24\xb7\x6a\x99\xd2\xc2\xc7\x96\x8b\xcd\xf4\xe8\x01\x1c\x0b\x75\x41\xe4\x4c\x8f\xad\x6e\x60\x5f\x2d\x52\xa1\x48\x5e\x41\x39\x2c\x4b\xf0\x5c\x3d\x1c\x15\xaa\x87\xe3\x7a\xea\x61\x83\xe6\x54\xe0\x62\xee\x57\x83\x37\x85\xac\xc5\xd5\x14\xae\x40\xd5\x0f\xe2\x59\xa2\x0a\x48\xaa\x65\xec\x91\x31\xc8\xaf\x9f\x89\xb2\xe3\x12\x04\x53\xc5\x31\x09\x8c\x10\x16\x69\x65\x1d\x27\x13\x98\x0d\x4a\x6d\x43\xdf\xef\xee\xd4\x50\xd4\x49\x3c\x31\x28\x00\x9d\x2f\x39\x7a\x43\x45\x29\x08\xb3\xca\xbd\xa8\x9a\x72\x28\xf1\xc3\xcb\x62\x54\xf9\x22\xf5\x83\xe4\xa9\x17\x5d\x3d\x85\xd7\x30\x4c\x99\xcc\xf1\x30\x40\xf2\x8f\xbb\xff\xfe\xd1\xdf\x49\x6f\xcd\xda\x9f\x42\x5d\xce\x40\x09\xcd\xcb\xf8\x08\x76\x7e\x50\x9d\xd6\x99\x1e\xf2\x14\x89\x40\xb8\x8c\x9e\x02\xa0\x3a\x56\x92\xeb\x9b\xd8\xe9\x84\x4f\x82\xba\x67\x80\x98\xa8\x95\x61\x90\xd2\xbe\xa7\x16\x9e\x3c\xd3\x10\x6f\x98\x3e\xaa\x00\x8a\x0c\xa2\xe9\x34\xd7\x8e\x44\x7e\xb4\x1d\xc3\x79\x43\xec\x37\x19\x6c\x1e\x55\xc4\x1e\xa9\x39\x02\x3a\xc2\xfd\x1e\xf0\x8f\xbd\x2f\x9e\x1f\xa7\xcb\x4f\xcb\x39\x04\x7e\x72\xea\x5e\xfb\xe1\xf4\xde\x56\xd2\x1f\x62\x94\x22\x60\xa1\x19\x84\x51\x83\x57\xc1\xde\xb3\x85\x97\x8c\xa1\x14\x6f\xc7\xc6\x10\x2b\xb1\x8f\x59\x92\x39\x8c\xc8\x82\x23\xc2\x58\x3f\x41\x3c\xe1\x97\xe4\xc6\x47\xa7\x46\xe8\x7c\x99\xb8\x09\xa4\xe6\x08\xcf\x3e\x82\xa3\xf4\x39\xf9\x86\x9a\x3d\x62\x76\x8a\x27\xe7\x31\x74\x2f\x9f\xe0\xb2\xe4\x3e\x61\x65\xf1\x37\x52\x96\x5e\x34\x72\x59\x62\x96\xf3\xec\x23\xf4\x8d\x1e\x3b\xe4\x3d\x8c\xe3\x24\xef\x11\x48\xa7\x7d\x0f\x47\x78\x51\x5e\xc3\x1e\x07\x59\x42\x96\x73\xf9\x0b\xbd\x2d\x8f\xb2\x69\xaf\xbb\x83\xad\xd1\x08\xf6\xf0\x62\x7c\x7f\xd1\x49\xc9\xd9\xd3\xf4\x92\x78\x40\x40\x2b\x39\xca\x32\x36\xa9\x10\x77\x04\xc4\xa3\x4e\x1f\xa4\xe8\x90\x85\x4e\x07\xa2\x0b\xd7\x7c\x2c\x87\x40\x5a\x8d\x34\x15\x20\xb6\x0e\x86\x3d\xba\xa0\xd1\xdb\x61\x8f\x2c\x7e\x8e\x6c\x95\xed\x82\xa6\x1f\xef\x95\x44\x02\x1a\x5a\x36\x06\x5f\xae\x60\x92\xb8\xda\x5d\x81\x5a\x2d\xee\x18\x08\xe5\x5b\x83\xf6\x20\x75\xbe\x44\x78\x1a\x75\x6c\xac\x60\x02\x22\xdc\x25\x07\xc4\xab\x5e\xa2\xea\xa5\x87\x4e\x18\x69\xd3\xf0\xdb\xf1\xee\x4e\xb9\xd8\xd1\x09\x9c\xbd\xd6\x31\xe7\xce\x5f\x41\xf7\x3b\x05\xf1\x1c\x19\x72\x1d\x13\x6c\x32\xbf\x87\xe1\x73\xfd\x5e\x15\xa4\xa2\xb9\x1e\xf0\x99\xd5\xa3\x99\xdf\x88\xdd\x0d\x9d\x85\x00\xd5\xe9\x1c\x15\xbc\x4e\x97\x1c\x59\x5d\x9d\x4e\x96\x1b\x08\x45\xed\xa4\xc3\x9d\x90\x54\x1d\xf6\x58\x35\x38\x51\x3c\x20\x4b\xd5\x60\x34\xc5\x83\xc9\xef\x02\x2c\xed\x02\x3f\x94\xd9\x76\x48\xe9\xe0\x48\xc3\x9c\xa7\x41\x94\x3f\xca\x40\x63\x53\x39\x05\x31\xb6\x3f\x62\x53\x6d\x26\x0f\x26\x94\xe7\xd6\xd1\xb3\xc8\xdb\xff\x89\x16\x04\xc4\x99\xcc\xe1\xc4\xbf\x58\x62\x59\x0c\x89\x60\x89\x7b\x0d\x81\x15\xc5\x24\xf3\x4a\x1a\x59\xf4\xc4\x72\x9e\x10\xd4\xe6\x08\xde\xdd\xd9\x36\xfa\xf7\x39\x1e\x27\x1b\x83\x73\x84\xbf\x32\xaa\x62\xb8\x6a\x33\x00\x37\xa1\xdc\x66\xc4\x0a\xfa\x35\x88\x76\x4f\x5e\xbf\xfb\xd9\xc8\xf4\x64\x58\x1d\xa2\x2b\xc9\x66\xf2\xda\x43\x3c\x8d\x1d\xb8\x7f\x34\x48\x5f\xc8\x7d\x68\x08\x4c\x53\xf8\xcb\xf4\xc7\x54\xf8\x77\x63\xdf\xed\xce\x7c\xcf\xc3\xec\x54\x1a\x13\x3d\xf1\x60\x17\xec\x01\xfb\xc6\xf7\xd2\xd9\x91\xd5\xff\xc7\x0c\xfa\xd3\x59\x8a\x3e\x5d\x44\x88\x93\xf4\xff\x80\xe8\xcb\xdc\xf5\xb0\x69\xd5\xea\xff\xe3\xca\x8d\xa7\x7e\x88\x3e\x09\xcf\x96\x2a\x61\x0e\xf3\xb9\x2f\xea\xa1\xc2\xd4\xac\x22\xba\x56\x6d\x06\x4c\x5a\x11\x92\x2b\xad\x6e\x04\x25\x26\x4c\x3d\xeb\xce\x3f\x77\xa4\xfc\xb3\x22\xc3\xce\xce\xf8\xb9\xfc\x25\xeb\x50\x91\xa9\xa7\x6f\xac\xa7\x2f\xd7\xd3\x1f\xe3\x8c\x25\xf4\xfa\x30\x64\x98\x86\xcf\x61\xc7\x21\x59\x4d\x40\x34\x82\x67\x29\x07\x2f\x44\x5b\x18\x89\x1e\x77\x22\x10\xca\x88\x05\x32\xb6\xfb\x12\x8e\xb3\x52\x3c\x30\x44\xcb\x42\x76\x93\x90\xf9\x01\x19\x4e\x66\xe9\xb7\xa1\x3b\xc5\x98\x83\xe4\x75\x88\x96\x1b\x9c\x20\xb6\xeb\x68\x6b\xb0\x26\x4e\x87\x15\x72\xff\x58\xbe\xa9\x50\x30\xcf\x4d\xa8\x12\xc3\xc4\x25\xe6\x20\x4a\x64\x81\x39\x9f\x5b\x32\xf5\x4e\xff\xb1\x80\x02\x2d\x7a\x0f\x91\x33\x8c\x71\x0b\x74\xb6\xa8\x26\x40\xeb\x1f\x77\x2c\x42\x24\x42\xf3\xf8\x8b\x0f\x6f\xd0\x41\x2e\x9e\x42\xd2\x1b\xa3\xa3\x91\xe3\x48\xa7\x7d\x2a\xf3\x7c\x10\xd8\xea\xb2\xc0\xd7\x3e\xec\xa9\x0f\x9f\x43\x95\x83\x39\xf7\x43\xaf\x03\x9d\x8e\x73\x04\xb5\x19\xe0\xbf\xdc\x3b\xce\x8a\xc0\x34\x40\xd7\x6d\x25\x02\xf1\x09\xec\x98\xdf\xa2\x7c\x98\x3a\x2c\x47\x53\xbb\x64\xb8\xb3\x71\x3e\x07\x21\xcf\x35\x48\x47\x21\x65\x5d\x98\x21\x53\xe0\xc9\xd0\x6b\x1d\xa6\x18\x01\xa4\x38\xd6\x79\xcc\x61\xa8\x4d\x0b\x24\x6f\x60\x4a\x76\x52\xc2\xc2\x80\x78\x24\x17\x41\x8c\xb1\xac\x5e\xa0\x70\xb1\x5c\x73\xbe\xf3\xc4\xde\x1d\x3e\xb3\xb7\x46\x52\xf9\xf0\xee\xee\xcb\x3d\xb9\x6d\x17\x89\xed\x6c\x6f\x43\xce\xdf\xe3\xb9\xd7\x58\xf8\x54\xe2\xae\x4d\x3f\xa2\xb3\x37\xd7\x11\x8e\xd0\xc3\xc0\xe4\xd3\xb1\x40\x09\x10\xc6\xda\x09\x9d\x2f\x71\x27\xcc\xe1\xe2\x09\xfb\x8e\xa4\x55\x46\xf2\xcf\x94\xa7\x02\x91\x03\x0c\x97\x04\x4e\x27\xff\x72\x11\xc7\x30\x4c\x31\x87\xc7\x52\xc6\x67\x7e\xe8\x38\x4f\xfc\xed\x6d\x42\xa7\x78\x11\xf6\x92\xc9\x0c\xa2\x0b\xb5\x43\xec\x2a\x04\xec\xa8\xca\xe1\xda\x10\x7c\x89\x54\x31\xa6\x0d\xce\x89\x86\x27\x54\x59\x3a\x8a\x16\x8d\xd0\x08\x31\x9e\x7c\xd1\xd0\x25\x20\x51\x90\x1c\x6a\x99\x31\x33\x4e\x55\x67\xa1\xd9\x3a\xa4\xbf\x37\xe5\x1e\x89\xc3\xc8\xc3\x42\xe6\x98\xd3\x8a\x16\xea\x22\x1b\xcd\xe2\xc3\xc9\xc7\xd3\xd7\xa7\x9f\x04\xc0\x8c\xb2\xcf\x18\x09\x07\x3e\x9e\xbc\x7d\xff\xcb\x89\xf8\x91\xab\x11\xee\xef\xa9\x7c\x92\x8f\x8a\x23\xd4\xf6\x8a\x80\x71\xa2\xad\x9c\x3a\x68\x81\xe2\x5a\x68\x43\x0c\x2e\x77\x7a\xf2\x49\x87\xe6\x89\xa6\xca\x8a\x29\x10\x3d\x63\x91\xaa\xc0\x3b\xba\x0a\x56\x00\xde\x99\xd6\xd1\x43\x01\xef\xfe\x7f\xf6\xde\x7c\xbb\x6d\x1c\xcd\x03\xfd\xdf\x4f\x41\x73\xe6\xb8\xc9\x29\x88\x16\x25\xef\x35\xaa\x94\xdb\x49\xba\xd2\x9d\x4a\xd2\x71\xaa\x7b\xba\x1d\x8d\x0f\x2d\x42\x16\x2b\x14\xa9\x02\x21\x2f\xb1\x75\xdf\xe7\xbe\xc6\x7d\xb2\x7b\xb0\x12\x20\x41\x8a\x94\xe5\xc4\xa9\xa9\x3e\x33\x15\x8b\x04\xb1\x7e\x00\xbe\xf5\xf7\x7d\xda\x4e\x5e\xfd\xe3\x55\x54\x91\x77\x64\x9d\x8e\x77\xdf\x88\x8b\x9d\xee\xa8\xa6\xe2\x38\xfb\x87\x95\x8e\x6a\x22\xcc\x48\x06\x3b\x01\x25\x40\x49\x89\x7b\xda\x65\xee\x47\x05\x60\x68\xd2\x2d\x19\xa8\x54\x70\x3a\xda\x1f\x96\x81\xa4\xbb\x05\x94\x3b\x3d\x4c\xa9\x50\x41\xd7\x64\xf4\x26\x9b\xbf\xec\xc1\xa3\x79\xfb\xf1\xbc\x60\x8a\xd3\x9f\x7a\x82\x80\xfc\xc4\x78\x88\xfb\x5b\x9d\xa1\xb2\x91\x5b\x49\xde\x8b\xd6\x20\x1d\x52\x0d\x5e\x8a\x00\xe4\x41\x25\x3f\xf2\x45\xae\xf3\xb8\x3a\x60\x1e\x57\x92\x32\xaa\x27\xbd\xe0\x37\xd5\x7a\x81\xfd\x07\x39\x2f\x1a\x3a\x64\x76\x5e\x2c\xfb\x9b\x3e\xdc\xf7\x47\xa1\x9b\xc7\x58\xa6\x46\xcb\xf3\xc7\xca\x54\x6e\x9f\x95\x9c\x76\x76\xea\x9c\x76\x44\xb5\xa0\x00\xc0\xaf\x80\x87\x36\xf1\xd7\xa9\x5c\x00\x83\xef\x8e\x79\x3e\x77\xf3\x84\x93\x0f\xf7\xf1\x59\xb3\xff\x98\xd1\xb7\xe7\x0b\xcd\xc1\x4a\xe8\xb0\x0f\x70\x17\xe2\x68\x1e\xba\xbb\x50\x1e\x17\x6c\x74\x17\xaa\x76\x15\x3a\x65\xb5\x55\xbb\x0a\xfd\x2b\x9d\xa3\x82\x0f\x7b\x5f\xf5\xfa\xdd\x2d\x26\xbb\xa4\x29\x96\x2e\x20\x4c\x2c\x6e\x69\xf3\x1e\x08\xa0\xfd\xf8\x0e\x95\x39\x07\xdd\xfe\x4c\x6d\x46\x7a\x05\x2a\xf2\x77\x5b\xd2\x4f\xcd\x69\x51\x37\x80\x46\xde\x76\xeb\xf3\xb5\x7b\x2c\xea\x5e\xe2\x0c\xf7\x75\xa8\x3b\x0b\xae\x6a\x69\xfb\x81\x3e\x6d\x5f\xd7\x55\xb8\xf6\x4a\xe2\x9c\xfa\xc3\x2e\xa4\x65\x07\xf0\xb7\x76\xb9\x2c\x1f\xcf\x2a\x31\xea\x0f\xdb\x4c\xcc\xbf\xb3\x9d\x5f\x69\xf5\x66\xa2\x26\xc9\x3a\x9f\x52\x0d\xb1\x8e\xb5\x9d\x51\x5f\x11\xeb\xb6\xed\x36\xf3\x96\x64\x8b\x66\x01\x12\x42\x64\xcc\x72\x14\xeb\xc2\x1b\x96\x04\xab\x2e\x19\x5f\x43\x2c\xf2\x2e\xb0\x2f\x90\x6e\x71\xf3\x4b\xad\x65\x4a\xba\xca\x1e\xb0\x8f\x94\x14\x4d\x15\x9d\x6a\x11\xc9\xf1\x15\x2e\xcf\x46\x2e\xb5\x2b\x60\x3b\xd4\x79\xd4\x7e\x15\x5f\x59\xe9\x78\xc6\x61\x0f\x24\x9a\x41\xc1\xf1\x55\x41\x37\x10\x0e\xb4\x5c\x82\x2a\x28\x31\x98\x5f\x6b\x8d\x4b\xac\xe6\x3a\xab\x48\x5d\xc2\x55\xb6\xca\x2f\xf7\x01\x3e\xb2\xaa\xb2\xed\xb1\x7c\x64\x97\x61\x1e\x94\xfd\x4f\x0b\x98\x07\x06\x13\xe4\xba\x5c\x6b\xa5\xbd\xc5\xec\x03\x83\xb7\xb6\x8c\x4a\xfe\x19\xa2\x5e\x9d\xcf\x59\x35\x5b\x5b\xc5\x27\x4e\x55\xe0\x3a\x2c\xf9\xc3\x72\x3d\xb2\xbd\x8a\x2b\x2a\x9d\xd8\xce\x28\x4d\xc6\x11\x9a\xd2\xb3\xfc\x69\xb8\x5e\xfc\x7a\x72\xfd\xd3\xcb\xff\x79\xfe\xbe\x99\xeb\x85\x39\x83\xa2\x2d\x31\x6a\xbb\xc3\x6a\xdc\x71\x7e\x0a\xe7\xa8\x9e\x79\x6e\x11\x45\xfc\xd9\xa5\xdb\x29\x8e\x46\x9f\xec\x52\xfe\x88\x6e\xf9\xae\xf1\x4d\x50\xa1\xa2\x5f\x27\x6c\xb6\xad\xe7\xb4\xfa\x96\x7d\x62\xf0\x1d\x4d\xfb\xd4\x6f\xd0\xa7\x93\xbc\xc6\xc6\x78\xec\xdc\x3c\x46\x8e\x26\x66\x58\x53\xdd\x6c\x45\x17\x5b\x1c\x24\x55\x64\xb8\xce\x84\x68\xbc\xa7\xfa\x29\x50\x46\x43\x69\x9d\xf1\x0c\x92\xa6\xf5\x7c\xde\x8a\xc5\xa1\xf8\xb6\xf6\xcb\x87\xfb\x76\x57\x7e\x20\x19\xdd\x3b\x98\xcc\xa7\x0c\xdb\xef\x68\xb3\x0b\x2e\x21\x36\x9d\xab\xf2\x7c\x5b\xb8\x0d\x27\x20\x09\x70\x74\x05\x3b\xd9\x08\xa5\x71\xcc\x12\xa4\xb5\x9b\x87\x72\x05\xdf\xf2\x74\xf0\xa4\x45\xa6\x49\xe0\xd8\xd3\x59\xf5\x47\xdf\xf2\xc0\x73\x64\xed\x16\x03\x17\x1f\x7d\xab\x03\x9f\xe1\x5b\x16\x67\xda\x1a\x7b\xf6\x8b\x44\x6f\xfc\x12\xa1\x77\xd7\xdd\x03\xb8\x24\x7a\x43\xa2\xfc\x9b\xc3\x38\x4a\x90\x1c\xbe\x2f\xd1\xbd\x19\x9e\xb6\x32\x11\x36\xc3\xda\xee\x55\xe5\xaa\x12\x82\xda\xc1\x0a\xde\x90\x13\x18\xf0\x0c\x87\xc6\xaa\xf7\x0d\xaa\x2c\xf1\x49\x03\x69\x42\x93\xf6\x4b\xa3\xae\xcd\x68\x6b\x6a\x39\x9b\x5f\x3c\x76\xe3\xf9\xe4\x34\xce\xbd\x6b\xea\xe9\x45\x1a\xde\x36\xee\xa4\x5d\x40\x77\x37\x66\xb4\x35\x52\x4d\xd9\x4f\xb6\x94\x01\x9f\x67\x83\x3e\x3e\x79\x6d\x4a\x05\xad\xe0\x71\xae\x82\x71\x41\x7a\x2d\x73\x16\xf9\x3b\x34\x25\x27\x75\x54\xbd\x8c\x92\x0e\x4e\x2f\x2f\xe3\x7a\x9d\x60\x05\x06\x44\x11\xfb\x81\x65\x7b\xc3\x38\x4a\x2e\xb3\xa3\x6d\x9e\x24\xe6\x08\xa7\x9f\x60\x52\xc1\xae\xa9\x01\x50\xd5\x48\x28\x02\x01\xa2\x1c\xb9\x5e\xdc\x5a\x5d\x70\x66\x1f\x53\x4d\x65\x8a\x5e\x3d\x37\xe6\xfa\x6a\x18\x37\x6d\x59\xaf\xd3\x4b\x2b\x4a\xac\xeb\x08\x4f\xac\xc0\x0a\xa3\xf1\x18\x22\x98\x60\x8b\x8e\x67\xa5\xf8\x69\x51\x67\x63\xc4\x89\x96\x6a\xd0\x87\xee\x06\x2e\xd7\xb5\xde\x10\xf3\x9a\x0c\xcf\xa5\xfd\xd0\xa6\xab\x14\x32\xb6\x86\x27\xe7\xa4\xc5\x95\x04\x92\x1b\xa7\x1a\x86\x20\x8e\xd3\xeb\xd7\x84\xc2\x0b\xa9\x8c\x35\x85\xc1\x24\xc8\x7e\xe2\x47\x55\x73\xde\xbd\x74\xf9\x3d\x34\x4c\xce\xac\x04\x58\x23\x7c\x1f\x1f\xa3\x11\xbf\x8f\x1f\xd5\x2e\xf7\xbf\x2c\xbc\xcd\xcf\x72\xb7\x3d\x3e\xbd\x82\x46\xf1\x34\x64\xec\xc9\xf6\xbb\xf8\xf4\xcd\xdf\xff\x61\xe6\x0a\x7e\xd4\x68\x46\xe2\x66\x18\x83\x1e\x76\x4a\x87\x79\x0f\xf4\xc0\x99\xa2\x41\xb5\x77\xba\xfd\xea\xf0\x87\x25\xc7\x10\x3f\x75\x55\xee\x02\x9c\x9d\xf9\x7b\xa0\xab\x1d\xa4\xbc\xb9\x0e\xf3\x1b\xd2\xda\xd7\xb4\xe5\xea\xc8\x78\x67\xfd\x36\x8a\x74\x7b\x39\x32\x6d\x8b\x1b\xbf\x94\xc5\x65\xd2\xcb\x15\xc2\x25\x98\x1f\x32\x2a\x21\x7c\x93\x69\x3d\xa1\x94\x96\x03\x2d\x08\x15\xb9\x9a\xf1\xa4\x55\x62\x97\xfc\x1a\xd9\x31\x2d\x64\xdb\x9c\xf7\xcb\xd2\xa1\xb6\x62\x8e\xca\x53\xd5\x2f\x59\x12\x14\xe5\x78\xa1\xe3\xad\x27\x62\xf9\x0d\xb3\x64\x74\x8d\x19\x2a\xc3\xbc\xef\x72\xa0\x6b\xcd\xd0\xb0\x9a\x11\xd6\xa8\x1c\xd3\x4a\x00\x43\x7b\x26\x17\x83\xfa\x5b\xaa\xb9\x0d\xd7\xd4\x11\x1a\x93\x16\xdc\xb2\xbc\x02\x57\x51\x16\x61\x42\xce\xd6\x2f\xef\x5f\x5b\x78\x12\x60\x2b\xca\x24\x7c\x48\x90\x58\xf3\xe4\x53\x92\x5e\x27\x16\x82\xdc\xdf\xd8\xca\x52\xeb\x36\x9d\x5b\xa3\x20\xa1\x40\x22\x97\x29\x29\x79\x11\x8c\x3e\x89\x6c\x40\x28\x4d\xb1\x95\x22\xfa\x16\xc1\x0e\xc3\xb1\xc5\xd2\x8e\x74\x7c\xf2\xda\xfa\x40\xae\xd0\xed\x53\x38\x42\x10\xbf\x7a\x6e\x5d\x14\xab\x39\x3e\x79\x9d\x3d\xa6\x6d\xb6\x11\x55\xb5\x61\x4c\x4a\x3b\x26\x8e\x72\x7d\x22\x19\x55\x27\x8e\x92\x4f\x15\x6b\x22\xbe\x09\xa4\x39\x90\x5a\x2f\x26\xe9\x54\xe8\x44\xf7\xf4\x34\x4c\xec\x56\x53\x4e\x1e\x5e\xe7\x5f\x52\x3a\x83\x15\x86\xa6\xaa\x87\x85\xde\x86\xe9\x28\x6b\xde\x5b\xd6\x37\x5f\x37\xa4\x0a\xb9\xe2\xf9\xdb\x93\xd3\xf3\x5f\xde\xbf\x56\x8c\xc2\xea\x00\x93\x34\x9d\xc1\x04\x22\x2b\x49\x11\x1c\x43\x84\xb8\xac\xb9\x03\x6c\xe9\xbd\x7a\x7e\x11\x07\x7a\x57\xde\xc3\x20\xa4\x74\x16\xa6\x23\xca\x7c\x48\x33\x75\x93\x31\x3f\xd4\x6c\xdf\x7c\x3f\x9a\x2f\x53\x26\xbf\xf3\x0b\x94\xde\xd5\xdf\xd8\x55\xd9\x03\x34\xaa\x35\xa0\x19\x4e\xb0\x15\xcc\xf1\x24\x45\xd1\x67\x96\x86\xb5\xed\x64\x7f\xad\xbb\x8b\x31\x49\x8f\xd3\xdd\x36\x97\x51\xb3\x33\x5b\x46\x11\x5f\x40\xeb\x12\x05\x09\x39\xb0\x67\x10\x4d\xa3\x2c\x23\x07\x14\x39\x30\xaf\x22\x78\x9d\xa3\x3d\x79\xd6\x71\xf6\x89\x9d\xb6\x41\x38\x8d\x92\x28\xc3\x3c\xf9\xd1\x98\x9e\xdd\x78\x12\x25\xf4\xbd\x95\x4d\xd2\x79\x1c\xf2\x1c\x33\x54\x84\xf5\x1e\xb4\x7b\xbe\xec\xc1\xfa\x88\x47\x15\xb0\xb7\x83\x51\x2c\x04\x2d\x3c\xe5\x77\xf5\xd7\x3d\xbc\xcc\xb3\x10\xc3\x00\x25\xeb\x9c\x86\xd7\x2f\x8e\xdf\xbf\x29\x4c\x06\x47\x4f\xcc\xe0\x68\x8e\x22\x7c\xdb\x49\x20\xbe\x4e\xd1\xa7\x28\xb9\xdc\x9e\xa1\x34\x9c\xd3\x25\xed\x04\xa3\x38\x5b\xcf\x44\xbd\x4c\xc9\x81\x48\xa7\xea\x72\x1e\x85\xf0\x6b\x9e\xef\x4b\xa1\xba\xa8\x9c\x2f\x7c\x07\x64\x3e\xc0\x3c\x35\xc3\x04\xc1\x71\x07\xa7\x0c\x90\xab\x03\x7f\x6b\x25\xf6\x17\xa5\xd9\xaf\x98\xe5\x58\xc5\x47\x7a\x1a\xa2\xf5\x21\xfa\xf7\xcc\x7f\x7e\x35\x7f\x18\x5c\x92\x02\xbb\x4c\x03\xec\x6c\xb3\x63\x98\x7c\x29\x3d\xdc\x9a\x9a\x71\x57\x46\x46\x2a\xcf\xf8\x1f\x91\xf9\xab\x47\xe6\xaf\x25\xd0\xbe\x75\x7c\x3f\xa5\x9a\xb7\x09\x0f\x58\x3f\xda\xec\x96\xa3\xf2\x21\xd7\xb0\x15\x41\x72\x58\xc4\x84\xbb\xb2\x13\xcd\x3a\xa0\x87\xf4\xee\x17\x01\xe9\x0a\xe1\xf5\xe0\x6c\xb8\x34\xc2\x7e\x59\x10\xfd\xea\x81\xe1\x45\x3c\xab\x0c\x8d\x3c\xea\xeb\x70\xc9\xf3\x07\x7b\x73\x14\xd9\xae\x16\xf4\xac\x86\xc5\x9a\x0a\xaf\x29\x14\x7c\xa3\x4d\x20\x78\x21\xfc\x3b\x8f\x0a\xde\xda\x32\x86\x82\x8b\xba\x67\x28\xbd\xb9\x15\xf0\x3e\x68\xa4\x9f\xc7\x39\x32\x10\xad\x85\x2d\x27\x8d\xc7\xdf\xc8\x21\x77\x6a\x63\xb5\x0b\x44\x8b\xdd\x3b\xe7\xa9\x87\xa0\xbb\xec\xbf\x1b\xa5\xf8\x68\xec\x3e\x89\xf0\xeb\x02\xe6\x23\x5d\x40\x4e\x71\xf4\x6f\x65\x9d\x5a\xeb\xc1\xc7\x71\x90\x4d\x3a\xd2\x83\xc8\xe0\x24\x12\x47\x1d\x5a\xa8\xfa\xab\x6f\xd3\x4f\x60\x9c\xa2\x69\x47\xfe\x7e\x50\x9a\xda\xb6\x49\x6a\x29\x0e\x41\x21\x4f\x6d\x31\x4b\xed\xa6\x9e\xa5\x76\x6b\xab\x36\x47\xad\x29\xef\x69\x45\x26\xdc\x3f\x12\xba\x56\x25\x74\x5d\x2d\x9d\x6b\x36\x43\x44\x5e\xfb\x23\x93\xeb\x83\x32\xb9\xfe\xeb\xcf\x2f\xfd\x2e\x7e\xb9\xbd\x12\x8f\xce\x55\x9c\xd5\xbc\x75\x0b\x66\xda\x74\x2c\x28\xc9\xe8\xb6\x9d\xb3\xff\x3d\xfb\x38\x1c\xba\xdf\x6d\x5f\x82\x60\x9d\xb9\xe9\xd2\x04\xc1\x0c\x2e\xcd\xe5\x56\x09\xd8\x44\x06\x53\xca\x01\xbe\x50\x39\x51\x81\x1b\xea\x05\x71\x14\x64\x2c\x9f\x1d\xbd\xb2\x6c\x17\x44\x18\x4e\x1b\x14\x5b\xc6\x1d\x8f\xd2\x04\x07\x51\xb2\x2c\x85\x9e\xe4\x85\x8c\xa9\xbe\xa8\x88\x22\x70\x61\xaa\x92\x7c\x05\x83\xc4\x49\x3d\xa6\x1c\xa0\x67\x88\x47\x1d\xe8\x8f\xe3\xd8\x89\x5c\x17\xc4\x83\xe0\x2c\xe0\x84\xdf\xf1\x87\x67\xdd\xe1\x06\x1a\x74\xfc\xc1\x60\x10\x4b\xc8\x4e\xfb\xcc\x76\x9f\xd9\x3a\xe0\x11\x39\xdd\x00\x79\x21\x9e\xc6\xc0\x1e\xda\xee\x51\x4c\x89\x78\x9e\xe7\x61\xa3\xd8\x96\x73\x2d\x99\x5e\x0a\x90\x5b\x80\x24\x16\xa8\x19\xe4\xe9\x42\xf0\x21\x23\x71\xb8\x8c\x16\xc5\x0b\x3b\x68\x76\x6d\x5d\xa2\x74\x3e\xdb\xe6\xa0\x4d\xdb\xa3\x09\x1c\x7d\xba\x48\x6f\x9e\x86\xb4\x1d\xbe\xfc\x75\x0f\x7e\x86\xb8\xc2\x90\xad\x03\x4d\x48\x27\x37\x60\xff\x18\x46\x61\x44\xa1\xb1\x0a\x9e\x3b\xc5\x1d\xef\x03\x3b\x4a\x66\x73\x16\x03\xb5\x07\xfa\x3c\x34\x8e\xfd\xea\xf1\x5c\x4f\xcc\xe1\xad\xcf\x9c\xe1\x76\x80\x2d\xe6\x88\x7c\xb4\x03\xce\xfa\x07\xc0\x37\xc8\xef\x3b\x25\x54\x08\x56\x96\x1a\xb4\x45\xfc\x46\xf1\xa3\xdd\xd2\x47\x46\xc4\xbe\x6a\xc1\x3f\x9d\x91\x05\x0a\x62\x0e\x9c\x2e\x27\x21\x4d\xda\x68\x01\x96\x12\x46\x4b\x9d\xd0\xb9\x58\xd6\xb7\x49\x7c\x2b\x8b\x39\x2d\xb5\x41\x86\x5e\xd1\xb3\xeb\x69\xd0\xea\xbf\x7b\xb7\x7f\x7b\xf1\x4b\xfa\x6b\xc5\xad\x23\x48\xb3\xe6\xfa\xf1\xd5\x28\xba\x9e\x29\x4a\x8f\x65\x2c\x2e\xc7\x42\x1c\x80\x9e\xc1\x89\xb3\x29\xd1\x3c\x8c\x30\x94\x25\x78\x2a\x54\x61\xe0\xbf\x7f\xbc\x8c\xa3\xe9\x14\xa2\xfc\xcb\x32\x1b\x4e\xd9\x19\x80\x40\x0a\x22\x10\x80\x18\xcc\x37\x24\x63\x34\xca\x19\x73\x67\x34\x30\xe8\x99\x04\x67\xcd\xd7\xbc\xf8\x42\xf2\x5e\xcf\x0c\x48\xc0\x82\x5d\x5e\x18\x73\x05\x18\xc3\x8c\x44\x73\x1a\xfb\x3b\x18\x0c\xe4\xf3\x4d\xf1\x77\xce\x68\x3f\x13\x7d\x3b\x92\x0d\xba\x84\xb5\x97\x83\xcc\x98\xee\x0b\x20\xf7\x2e\xd9\xda\xaa\xda\x34\x58\x93\x9f\x12\x2f\xff\x01\xa4\x36\x83\xbd\x51\x7f\x82\x6b\x14\x61\xfe\x5c\xfc\x09\xd8\x8e\x4b\x3c\x0e\xa8\x15\x7d\x86\xe8\x99\xf6\x8b\x89\x04\xc8\x3d\x62\xdb\x70\xa1\x74\x76\x9c\x0b\x21\x0e\x54\xc1\x73\xb1\xeb\x1a\xd9\xed\x93\x20\x49\x52\x6c\x91\x1a\xad\xc0\x1a\xc5\x41\x96\x59\x41\x66\x05\x52\xd0\xb2\x95\xda\x67\x5c\x30\xcb\x99\x5c\xc2\xd5\x72\x1e\x80\x32\xb7\x5c\xf9\x89\x29\x7b\xab\x4c\xc2\x40\xfd\x71\x7f\xbf\xe9\x03\xa4\x4d\xc4\x60\xb3\x0b\xb8\xd3\x67\x94\x58\x44\x88\x41\x72\x42\x06\x9b\xdd\x6a\xf9\x15\x79\x9f\xe0\x2d\x40\xee\x22\xef\x65\xa8\x66\xe3\x75\x42\x21\x5a\x65\x10\xbf\x13\x8b\xfe\x76\x5c\x14\xdb\x04\x5d\x79\xe7\xe7\x94\x34\xce\xcf\x07\x18\x50\x52\x20\x92\x8b\xac\x7b\x9a\x43\x23\x2b\x3c\xa0\x2e\x57\x4a\x72\x7c\x0f\xc7\x31\x1c\xe1\xfb\xfb\x4d\xfe\x57\x4e\x96\x5c\x32\xda\xf4\x89\xa4\x55\x7a\xeb\x65\x93\x60\xaa\x15\x31\x10\xfb\x3b\x94\xde\xdc\x8a\x42\x5d\xca\x2c\xf1\x41\x3c\x0f\x30\xac\x94\x24\x4b\x8d\x39\xa4\x38\x38\x1b\x6a\xc0\x79\x0b\xd7\x75\xc1\x66\x37\x47\x0e\x17\x9d\x59\x2c\x1c\x77\xa3\x28\x8b\xcb\x43\x62\x30\xe1\xc2\x23\x3f\x37\xd2\xc1\x84\xc1\x7d\xaa\x1b\x72\x23\x19\x94\x3b\x81\x72\x05\x22\x48\xdd\x05\x8c\x33\x68\x25\x83\xaa\x9c\xc8\xbc\x03\xfc\x45\xa2\xae\xfe\xad\xba\x9e\x9b\xf8\xfe\xde\x66\xc2\x9f\xbd\x39\x18\x8c\x1c\xec\xaa\x07\x87\xd4\x00\xe0\x67\x17\x0e\x74\x8f\x70\x5e\xcd\x05\xd7\x17\xe4\x10\xd3\xca\xfe\x79\x0f\xa9\x3b\xf0\x48\x6c\x22\x6a\xf1\x9d\x04\x59\xf2\x27\xcc\x50\x0d\xc4\x66\xcd\x60\x68\x75\x2c\xaa\x2b\x75\x5c\xad\x04\x59\x0b\x18\xda\x72\x28\x30\x6f\x5a\x99\x6f\x67\x62\xa6\xde\x67\xfc\xe9\xa5\xf6\xd4\x78\x50\xe6\x04\x7d\x7f\x6f\xfc\x8a\x1c\x76\xfa\x89\x77\x25\x4e\x3c\x90\x0a\x30\xc6\x3b\x89\x12\xcf\xeb\xf8\x04\x6f\x33\x07\xb9\x84\x51\x7f\x11\x8c\x26\x8e\xc6\x59\x44\x67\x70\x38\x40\x67\x70\x48\xe1\xfa\xd5\x63\x60\x73\x53\xfd\x09\xa2\xc2\x21\xb0\xa9\x3f\x00\x4e\x7e\x26\x44\xf7\xf7\x91\x7a\x08\x12\xc9\x3b\xd2\xcf\x88\x68\x90\x70\x2d\x89\xeb\x21\x78\x05\x51\xc6\xfe\x2a\x24\x58\xa6\x47\xb9\xaa\x99\x00\x89\x7b\x7f\x9f\x10\xe1\xd3\x05\xa9\x62\x5d\xd1\xda\xa3\xcd\xd1\xde\xe8\xcf\x9f\x45\xe5\xa3\x39\x15\x47\x33\xd0\x5e\x96\x71\xcb\x8b\x2d\x54\xdf\x2e\x11\x1d\xde\x3c\x8e\x5d\x10\xad\x49\x5f\x70\x59\xcf\xb9\xbd\xf4\xd1\x69\xf6\x6a\xe7\xb3\x99\x73\xa3\x36\xe5\x32\xfb\xa6\xe0\xdc\x51\xe6\xa3\xca\x83\xb6\x90\xdf\x52\x98\xfd\xb8\xf1\xc3\x06\xf6\x07\x78\x43\xfe\x39\x11\x42\x05\xb0\xdf\x07\x61\x94\xda\xc0\x7e\xcd\xa3\xca\x5f\x28\x70\x01\x9a\xa9\x90\xfa\x66\x95\xf9\x1f\x5a\xc4\x66\xbd\x02\xd2\xef\x5d\xc2\xca\x31\xe4\xbd\x21\x58\x52\xcb\x36\x26\x1d\x63\x1e\x13\x8a\x34\xc5\x07\x9d\x26\x52\x6e\xd2\xe1\x92\x24\xa2\x45\x97\xc5\xfa\x27\x02\x74\x2b\xcf\x55\x49\xde\xb0\x5e\x15\x01\xbf\xb4\x78\x09\xe1\x6f\x4c\x8a\xe3\x74\x3e\x9a\x50\xb8\x1a\x51\x11\xcd\xbf\xa6\x78\x79\x2d\x19\x8c\x2a\xb3\x55\x0c\x48\xc9\xcb\xf9\x2d\x8c\x08\x51\x2a\xf9\xdd\x0c\x47\x04\xee\xe8\x68\x5a\x55\xa5\x35\x57\x68\x25\x83\x50\x13\x27\x66\x0e\x2f\x69\xc0\x08\xa1\x03\xb9\x9d\x69\xe3\xee\x53\x50\x35\x32\xd7\x62\x43\x09\x52\xea\x14\x1f\x88\x73\xa0\x3e\x1f\xed\x52\xf7\x5e\x5b\x0f\xc0\xf3\xf7\x78\x58\xd2\x8c\x1f\x7f\xb6\x5c\x23\xf2\x84\x7b\xbf\x30\x97\x79\x9f\x0f\xa0\x93\x97\x29\x8e\x47\x1d\x77\x1e\x91\x24\xbc\x49\xa4\xff\x0d\xb9\xc2\x3b\xba\xc3\xf9\xd0\x18\xf8\xa7\x05\xc1\xf4\x55\x4f\xc2\x56\x81\x30\x55\x2e\xc6\x62\x32\xf2\xb8\xae\xff\x13\xd3\x61\x82\x27\x59\xee\x17\x24\xe0\x60\x8b\x20\x20\x2c\x52\x88\x23\x84\x70\xb5\x6a\x56\xc0\x1b\x29\x04\x17\xad\x86\x1b\x52\x25\x8b\x4b\xc5\xc0\xdb\x81\x23\x75\x03\x18\x05\xa3\x4f\x30\xcc\x1d\x2d\xc4\x03\x89\x31\xc2\x7a\x03\xe6\x5a\x9a\x20\xa7\x64\x85\x32\xb1\xb9\x5b\x5b\x64\x95\x36\xf5\x24\x29\x8a\x34\x78\x4a\x38\x55\x0b\xde\xcc\x10\xa4\x4e\x8d\xcc\x60\x02\x23\x3c\x81\xc8\xba\x80\x2c\x4d\x4a\x8a\x34\xf1\x70\x43\x91\x35\x04\xb7\xca\x92\x4b\x39\x1c\xe7\x83\xbf\x04\x77\x8a\x10\x70\xc4\xd9\x13\x45\x04\xde\xec\xea\xa2\xf2\x66\x97\xcc\x0d\xde\xda\x62\x02\xdd\xc2\x75\x22\x00\xb9\x95\x9c\x71\xa7\x83\xa9\x13\xb9\xb9\x3a\x22\x12\xa6\xfe\x8d\x31\x13\x0c\xa2\xdc\x20\x83\x4b\x8e\x34\x20\xd1\xec\x33\x00\x0d\xba\xdf\xa3\xff\xc6\xdf\xa3\xef\xbe\x73\x93\x33\x34\x54\x9c\x6b\x90\xb4\xd5\x64\xce\x85\x03\x07\x29\x65\xf3\xb8\x6c\x92\xb2\x2c\x41\x43\xa1\xce\x4e\x88\xe8\x44\xf9\xa3\x00\x10\x29\xc2\x05\xf4\x23\x17\xc8\xdb\x00\xc4\xfc\x05\x5c\x08\x5d\xc7\x20\x02\x4e\x32\x38\xbb\xfb\x04\x6f\x8f\xe4\xf5\xc3\x35\x01\x25\xf7\x14\x18\x0f\xe0\x62\x01\x58\x61\x86\xb5\x63\xb6\xd6\xea\x56\x6d\x18\x3f\xe3\xff\x52\x5b\x43\x06\x31\xd5\xc5\xf3\xd0\x2f\x18\x13\xb9\xe0\x18\x63\x14\x5d\xcc\x31\x74\x58\xc5\x6e\xd5\x5b\xaa\x84\xe3\x69\x70\x02\x74\xc9\xd4\xfa\xb2\x53\xec\xba\x6d\xd2\x29\xfa\x2d\xdd\x1b\x45\x3b\x41\xfe\x86\x1a\x1f\x34\x93\x41\x5e\x80\xbd\x1a\x6a\x5d\x21\xcf\x64\x57\xe8\xf1\x67\xee\x8a\xa9\x41\x6a\xe7\xc0\xe9\xeb\xf4\x1a\xa2\x93\x80\x0b\x10\xb3\x38\x18\xc1\xe3\x38\x76\x6c\xcf\x06\x76\x87\x46\xc3\xf1\xea\xf9\xe1\x52\xa8\x3f\x77\x38\xf1\xf8\xa2\x0b\xff\x15\xd2\x06\x3d\x31\x37\x96\xa6\x3f\xe3\xa7\x2d\xcb\xf7\x06\x17\x8b\xc5\x62\xe8\x6e\x6d\xcd\x1c\x75\x4b\x25\x2e\x40\xf4\x19\x40\x44\x30\xc8\x0d\x5f\x2e\x08\x06\x57\x8e\x13\x0d\xe6\xae\x52\x9c\x92\xe5\x59\x32\xa4\x5b\x51\xdd\x69\x40\x37\xfe\xab\x7b\x52\x91\x50\x98\xc7\x98\x0b\xe2\xc1\x95\x13\xa9\xd5\x4a\xca\x3e\x43\x2b\xd7\x5d\x5a\x9e\x4d\x9f\xec\xff\x42\x4b\x72\x6f\x9c\xa5\x43\x90\xcb\xb3\x6f\xaf\x13\x21\x07\x3d\x87\xd9\x08\x45\x33\x9c\x22\xf3\x97\x44\x22\x95\x8f\x89\xcc\xa7\xe8\x55\xdf\x82\x3a\x0d\xed\x25\x78\x4b\xfd\x74\xda\x2a\x5e\xe9\x2d\xfd\x34\xd4\xf1\x6f\x9e\x6f\x87\xdb\xdf\x3d\xaf\x10\xea\x9a\xaa\xe3\x67\x41\x62\x4b\x10\x04\x3a\x60\x3e\xd4\xac\x43\xc7\x6a\xe5\x7c\xc9\x53\xd4\xcd\x2b\xeb\xf1\x54\x74\xf3\x94\x95\x7e\x1a\x24\xf2\xee\x6a\xef\xef\xf3\x93\xa9\x19\x8a\xea\xab\x59\x17\xa5\x5c\xf7\x7f\xc6\xb4\xa8\x90\xc4\x53\xa1\x52\x0c\x6f\x0c\x66\xa4\xaf\x41\xa4\xef\x7f\xf9\xeb\xd5\x29\xfa\x9f\xde\x43\x89\x54\x10\xe2\x5a\x68\x54\xa8\x86\x56\x24\x51\xd6\xe0\x37\x44\xa1\x39\x39\x7c\x6d\x02\x5d\xd1\xb4\x69\xf2\x30\x74\x92\xdf\xab\x21\x13\x3d\xaa\x6d\x30\xfd\x26\x6c\x83\x91\x66\x1b\x8c\xd6\x6a\x1b\x0c\xfe\xb0\x0d\xd6\xda\x06\xe7\x45\xdb\xe0\xfc\x31\x6d\x83\xb1\xc1\x36\x18\xd7\xd8\x06\x93\x6a\xdb\x60\xc1\x85\xf8\xcb\x99\x04\x0b\x36\xc9\xb9\x72\x4a\xcd\xbf\xa0\x61\x70\x3d\x37\xfa\x68\x09\xdb\xf9\xf2\x6f\xfd\x9f\x5e\x1d\xbc\x5c\x5b\x08\xd9\x0b\xc5\xec\xa3\x86\x58\xd6\x5b\x86\xa4\x3e\x5f\xfc\xaf\xe1\x25\xab\x2a\x0d\xdb\x46\x97\x15\x2f\x32\x79\x9b\x66\xff\x67\x54\x7c\x91\x50\xf1\x8d\x54\x15\x5f\x0c\xe6\x83\xc0\x19\xb9\xaa\xc7\x91\x62\xba\xa5\x1b\x7c\xe4\x82\x79\x45\x14\x93\x54\xae\x8d\x14\xe5\x5a\x9d\x6a\xaa\xa8\x42\x1a\xba\x5b\x5b\x69\x51\xdf\x12\xd3\x67\x20\x76\xc1\x48\xd5\xb7\x28\xac\x4b\x56\xab\x45\x18\x81\xac\x41\xe8\x04\x82\x90\xb0\x57\x9d\x71\x14\x1b\x73\xbb\x7d\x0d\xa6\x3b\xfe\x57\xdc\x1d\x77\xff\x7a\xd0\x1c\xa4\x78\x1c\xc1\x38\xcc\xa0\x02\xa6\x5f\x18\x98\x21\x54\xda\x36\x60\xd6\x09\x34\xe0\x0c\x06\x68\x34\x59\x12\x5f\x2d\xd4\x13\x32\x7d\x45\xfe\x51\x19\x71\x5f\x7c\x94\x73\xfb\x14\x66\x98\x37\x64\x4c\x8c\x26\x05\x5b\x89\xfb\xb1\x9b\x5b\x7e\xdb\x7c\xf1\x09\xde\x86\xe9\x75\x62\xfe\x46\xbc\xd4\x00\x8d\xfb\xc0\xce\x78\x27\x7b\x14\xe9\xd9\x17\xb5\x51\x15\xe5\x24\x8d\x29\xd2\x17\x79\xd3\x93\x19\xb3\xe7\x38\x1d\xa7\xa3\x39\x61\x8a\xf3\xbf\x87\x02\x20\xb9\x30\xa5\xa5\x38\xee\x32\x54\xf3\x12\x5c\x36\x69\x2c\x11\xc2\x97\xda\xb5\x36\xa7\xa2\x69\x0b\x3c\x38\xea\x7a\x99\x7b\xbd\x12\x2e\x50\xed\x42\xcf\xf5\xf0\x82\x4c\xf2\x24\xbf\x19\x64\xa9\x4a\x3f\x50\x9f\x74\x75\x1f\xf2\xc9\x70\xca\x37\x31\xcf\x2f\xcf\xb6\xe1\x11\x64\x89\x79\xf9\xea\x6b\x6d\xfa\x7d\x52\x90\xf0\xb4\x27\x69\x48\xa3\x07\x8b\x10\xea\x45\x5f\xf7\xe5\x32\x14\xb9\xaa\xa2\x51\x8a\x66\x1d\x8e\x2c\xf0\x24\x0e\x9a\xab\x9b\x9d\x83\xcb\x51\x37\x31\xf3\x02\xc1\x1c\x4f\x9e\x47\x41\x9c\x5e\xaa\xc6\x3a\x42\xde\xc7\x73\x3c\x79\x99\xa2\x29\xff\xf3\x1d\x4a\xc7\x11\xf5\x15\xd6\x4a\xb1\xb4\x90\x3f\xc3\x64\xfe\x8a\xe5\x6b\x23\x7f\x9e\xc2\x59\x40\x25\x38\x59\x80\x45\x99\x8b\x5f\xa6\x67\x5a\xad\x35\xf5\x35\x2d\xc7\xd3\xc7\xb5\xeb\x2c\xff\xa8\x9a\x41\xd2\xf1\xbb\xa6\x69\x18\xc4\x9d\x38\xb8\xa5\xe7\x04\x39\x6f\x86\xe0\xac\x9c\xca\xcd\x08\x3e\x9b\xfb\x5e\x5f\x04\x49\x62\x3c\xbc\xcd\x28\x17\x9c\x37\xab\x06\x4d\xa2\xc7\xf6\xd5\xa5\x68\x85\x26\xf2\xb7\x81\xdd\x3b\x10\x4f\x58\x46\x7f\xf2\x68\x5f\x3c\xba\x99\xc6\xd4\x5c\x3b\xc1\x78\x76\xb4\xbd\x7d\x7d\x7d\xed\x5d\xf7\xbd\x14\x5d\x6e\xf7\xba\xdd\xee\x36\xa9\xae\xf2\x25\xfd\x76\xdb\x56\x9b\xc7\x11\xd6\x81\x50\x19\xd4\x9c\x3c\x00\x29\x32\x4c\x80\x27\xa2\xf9\x90\xac\x85\xdf\xf7\x7a\x07\x3b\x96\xbf\xe7\xf9\xfb\x07\x41\xcf\x3b\xd8\xdf\xb3\xd8\x7f\xbb\x96\x6f\xf9\x1d\xaf\xdb\x3d\xe8\xec\x7a\xfb\xbb\xbe\xa5\xbf\x24\xaf\xc9\x4b\x8b\xbc\xfc\x3c\xdd\xf5\x76\x0f\xf7\x3a\xbe\xb7\xbb\xb3\x1f\xf8\x5e\xbf\xdf\xb7\xd8\x7f\x69\x2d\x56\xb7\xd3\xf3\xf6\xf6\xf6\x2d\xfd\x0d\x79\xd7\xb5\xe8\x9b\xcf\xd3\x1d\xef\x60\x97\xbc\xea\xed\x1c\x06\xbe\xd7\xdb\xf7\x2d\xf6\x5f\x56\x81\xd7\xed\xed\x77\x3c\xbf\xbb\x3f\xea\x5a\x5e\xb7\x4f\x1e\x7b\xdd\xbd\xfd\x0e\x79\x4e\x1e\x7f\x9e\x76\xbc\xc3\xfe\x7e\xa7\xef\xed\xf4\xf7\x0c\x1d\xf0\x0e\x0f\x68\xef\x0e\x77\x47\x5e\xb7\xdf\xf7\xfc\xfd\x1e\xfd\xb7\xbf\x73\x40\xaa\xda\xed\x75\xbc\xee\xbe\xb7\xdb\xef\x78\x3b\x7b\xbb\xde\xe1\x5e\x87\x7c\x60\xf9\x5e\x97\x8c\x6d\xc7\xdb\xef\x59\x7d\xaf\x77\x58\xae\xb8\x43\x8a\xd0\x9a\xfb\x07\x86\xd1\xf9\x9e\xef\x93\x6a\x76\xfc\x7d\xaf\xbf\xd3\x23\xff\x4f\xdf\x74\x79\xc7\x7b\x93\x8e\xd7\xf5\xfb\x9f\xa7\xa4\x9e\x83\x4e\xdf\xeb\xf7\x0d\x9d\x27\xef\x0e\x48\x1b\xbd\x9d\x91\xd7\xf5\x77\x3c\xdf\xdf\xa1\xff\xf6\x7a\x87\xa4\xf7\xfd\x9d\x5e\x50\x6a\xbb\xe3\x7b\x7e\xb7\x47\x7a\x70\xd0\x9b\x90\xd2\x74\x8a\x7a\xbb\xd6\x3e\xf9\xaf\x69\x8a\xfc\xbd\xdd\x0e\x59\xbf\x11\xe9\x93\xe7\x1f\xf6\x3b\x64\x8a\xbd\xfe\x41\x87\xbc\x22\x6f\x48\x15\x3b\x07\x1d\xbf\xe7\xf9\x87\xbe\xa9\x8a\xdd\xee\x7e\xc7\xf7\x0e\xfc\x9d\x91\x47\xba\xd7\xdf\xf7\xfc\xc3\x03\x6f\x97\x74\x79\x6f\xc7\xdb\x3f\x20\x0b\xd6\x3f\xf0\x76\x48\x9d\xbd\x83\x43\xef\xa0\x77\xd0\xf1\x28\x5d\x74\x77\x76\xaf\x48\xbb\x07\x9f\x09\x49\x92\x2a\x7b\x7b\x84\x30\x4e\x76\xbd\xc3\x7d\xfe\x37\x21\x96\xae\xb7\x77\x48\xfe\xe0\x85\xba\x16\x7d\x4f\xff\x93\x3f\x1c\xf5\xbc\xc3\xde\x21\xa9\x8e\x50\xe7\xfe\x81\x77\xb8\xbb\x6b\x1d\x78\xdd\xc3\x03\xab\xe7\xed\xef\xf4\x5e\xfb\x87\xde\x81\xb5\xe3\x1d\x1c\x06\x7e\x97\x11\x66\x97\x37\x40\xd6\xc6\xdf\xf7\xfc\x7e\xdf\x3a\xf0\x76\x76\x76\x2c\x43\x01\x8b\x16\xd8\x27\x05\xf6\xfd\xd8\xf7\xf6\x7a\xfb\x56\xcf\xf3\xfb\x01\xd9\x4c\xfe\x81\xc5\xff\x61\xcb\x20\x9b\xed\xf7\x3f\x8b\x9d\x37\x8e\xe2\xd8\x06\xf6\x7f\xbc\x7c\xf9\x52\x67\x5b\xf2\xff\x2c\xe3\xf1\x28\x27\x35\x85\xc9\x9c\xff\xf2\x81\x3d\x0d\xa2\xa4\x93\x04\x57\x2a\x24\xf2\xae\x9a\x54\x46\xf7\x87\xa9\x62\xec\x4a\xa1\x50\x26\xae\xaa\x8a\xcd\xe5\xd0\xcc\xa6\xae\x98\x20\x04\x3f\xd0\xd7\x16\xb9\x11\x96\x25\x07\x5c\x0e\x60\xbd\xb6\x5e\xd5\x33\xe3\x27\x02\xd8\xa5\x22\xfb\xd5\xb2\x57\x5d\x60\x27\xc1\x95\xe8\x59\x80\xa2\xa0\x23\xd2\x0c\xfd\x1c\x44\xc5\xe4\x23\xb6\x44\x99\xec\x72\x2f\xa6\xfe\x4a\xc9\xab\xac\x3a\xc0\xe3\x62\x23\xdc\x85\xca\xaf\x40\xf9\x7e\x73\xfa\xee\xf8\xe4\x85\x09\xe8\x9b\x7f\xd8\x13\x80\x98\x7b\xe0\xcc\x66\xfa\x53\x7b\x38\x24\x95\xd7\xbb\xd0\x35\x1b\x86\x55\x01\x5f\x95\x64\xb3\x60\xc4\xf2\xdd\xb5\x1b\xdb\xbe\xb9\xbb\x7e\x69\x5c\x62\x09\xfc\x83\x62\xf6\xcf\xd5\x71\xba\x97\x92\x1c\xc3\xfa\xdc\x01\x67\xf6\x1b\xe6\xba\xb9\xba\xd3\x5d\x55\x9b\x07\xc0\xe6\x89\x2c\x3a\xf4\x48\x11\x40\x6b\xb3\x34\x8b\x04\xac\x98\x1d\xc3\x71\xab\xe4\x5e\xb5\xcd\xd5\xa1\xba\x61\x14\x51\x84\x9c\x07\xb7\xa5\x62\xa5\xea\xf3\xb7\xbc\x97\x0d\x21\x77\x8b\xb9\xcc\xcf\xec\x70\xe4\xe5\x84\xf8\x60\x3a\x6f\x3c\x69\xab\x00\x1b\xd6\xcc\x99\x01\x44\xf0\xe3\x47\xac\xfe\x9f\xe9\x53\x32\xc1\x6c\xec\x16\x9e\xc0\x69\x06\xe3\x2b\x98\x49\x84\xc7\x44\xbc\x0d\x29\xf6\x6b\x76\x1d\xe1\xd1\x24\x4a\x2e\xad\xeb\x28\x8e\x69\x09\x76\x19\x51\xac\xb6\xd1\x1c\x51\xb8\xfa\xab\x08\x5e\x7b\x4d\x7a\x6c\x3e\x71\x5b\x2e\x6b\x93\xec\x7b\x2b\x2c\x0e\xbb\xa7\xdb\xc2\x0a\x8b\x54\x03\xbd\x1e\x38\xcb\xe5\x27\x9e\xdc\x50\x3e\xcc\x25\xa9\x76\x58\xcf\xcb\x06\x44\x1b\xd9\x1d\xaa\x12\xd6\x43\x29\xab\xe1\x6c\xf1\x9b\x7b\x3d\xed\xa9\x44\xd9\xa8\xb8\xdd\x3c\x61\x04\xb0\x7f\xe4\x00\xc7\xb4\xdf\xdb\xff\xb5\xfd\x5f\xdb\x92\xc8\x33\x23\xbf\x55\x4e\x74\xbe\xb7\x24\x6b\x04\xe1\x64\x3e\x53\x1c\xd0\x92\x80\x5b\x3f\x8c\xa5\x00\x9b\x2b\x7f\x6c\x6b\xf9\x61\xcf\xcc\xf9\x5f\xb5\x1f\xe4\x86\xb5\x59\xf6\xb4\xf0\x98\xaa\x18\xf5\x91\xaf\x8b\x2d\x28\x2e\x23\x25\x62\xda\x47\x0d\x7b\xbe\x6b\xb8\xfc\x95\x0b\x82\x7d\xb6\xa7\xde\x18\xdc\x5d\x3c\xca\x3a\xc1\x08\x47\x57\x50\xcf\xe6\xfa\xe3\x04\xc1\xb1\x6a\xa6\xa9\x08\x0e\x62\x17\x83\x5d\xc0\xde\xb7\xff\x1f\xbb\xaa\xc5\xaa\xe4\xb7\xdf\xd0\xf6\x13\x57\x70\x71\x7c\x4f\x82\x8e\x8b\xaf\x7b\x7b\x5a\x96\x91\x12\xbf\xf7\x68\x47\x6b\x8b\xbd\x5d\xa0\x6c\x33\x01\x32\x4d\x95\xc2\x8b\xb0\xe4\x82\x06\x02\xfb\x46\xc9\xea\xe7\x20\x09\x2e\x61\xbb\xc3\xfd\xcb\xd2\x92\x31\xd8\xa3\xb7\x43\x56\xbe\x11\x57\xb1\x52\x5f\x0d\x24\xdd\x03\xbd\xfe\x83\xd8\x9c\x66\x61\x2d\xf5\x9f\xe7\xa2\xda\x52\xc9\x4c\xbd\x38\x72\x89\xab\x3b\x2c\x4a\x63\x52\x6a\xeb\x1a\xa5\xb6\x2f\x26\x99\xf5\xff\x90\xcc\x1e\x24\x99\xf5\xd7\x29\x99\x3d\x68\x78\x0f\x63\xd3\xfd\x03\x03\x9b\x2e\x1f\xae\x9b\x4d\x57\x6e\x81\xee\x9a\x99\xf4\x2f\x7d\x98\x3f\x0f\x70\x30\x82\x09\x59\xce\xe6\x57\xcd\xaa\xfc\x79\x98\x37\xd6\x90\x41\x5f\x96\xd6\x6d\x25\x06\xfd\x01\x57\xd1\xda\x99\x73\xea\xba\x4b\x77\x20\x28\x0e\xf8\x31\xf9\x72\xaa\x2e\x59\xce\x97\xf7\x8b\x7c\xb9\xbf\x7e\xbe\x3c\x1c\xd9\x42\xd6\x56\x6b\xff\xf6\xb9\x24\x85\xf9\xf6\x9f\x3e\xf3\xed\x9b\xe3\x63\x0f\xc9\x11\xf7\x25\x59\x26\xff\x40\xfb\xf0\xe1\x2c\x53\x65\x91\x9c\x2d\xda\xad\xd8\x06\x52\xa9\xc8\xbd\x3c\x2a\x39\x79\xd3\x26\xa8\xb5\x6f\x14\x3b\x52\x65\xee\x6e\xd0\xb6\xe6\xaa\xc4\x8b\x36\x9c\x81\xf5\x4e\x52\x92\x86\x5f\x67\x86\x6a\x1b\x56\x5a\x79\x43\xcb\x7d\x95\xb9\xf9\x74\xf5\x35\x26\xa6\xba\x55\xa5\x89\xbf\xc1\xdb\xed\x7f\x88\x8b\xf5\x8b\xcd\x8c\x26\x69\xc8\x69\xa2\x99\x47\xaa\x26\xca\x58\x3a\x8c\xb2\xe0\x22\xa6\x79\x8b\x2a\x4a\xcd\x13\x2d\xbb\x91\x16\x0b\xf3\x88\x73\x4f\x3a\xe7\xd1\x24\xa3\x4d\x48\xf3\xf8\xe4\xf5\xd7\x21\xcc\x28\xc1\x30\x61\x89\x7c\xbe\x02\x81\x2e\x6f\x5d\x69\xea\x55\x5e\xf8\xc1\x53\xb5\xa2\x58\x5d\x53\xab\x5d\x30\x2f\x2f\xb7\x6d\x57\xa4\xbe\xad\x5d\xcf\x65\xb3\xde\x58\x6c\x45\xd4\x21\xea\x81\xbc\xce\x97\x94\x5a\x7f\x82\xf1\xac\x15\x23\xd1\x90\xff\x78\x6c\xc1\x74\xd7\x24\x98\xee\x3e\xba\x60\xea\x53\x1c\xa1\x5e\x31\xc1\x96\x99\x33\xdf\xad\xcd\xf6\xf7\x2d\x4a\xb5\x6a\x5e\xae\xaf\x28\x0f\x2e\x9f\x93\xe2\x5a\xa9\x69\xc0\xcc\x8b\x55\x95\xfe\x7d\x49\xd2\xaf\x6f\x7a\x3d\x7f\x0a\xb2\x49\x74\x92\xa2\x99\xf5\x9a\xcc\xcf\xd3\x5f\xd1\xfd\xd5\x0c\x0c\xab\xd2\x84\x4a\x07\xef\x5f\xbc\x7b\x7b\xfe\xea\xf4\xf4\x97\x17\xdf\xfe\x3e\x7e\x87\xd2\xab\x28\x84\xd6\x4b\x08\xc3\x8b\x60\xf4\xe9\xab\xaa\x76\x4a\x92\x2a\xb5\xad\x2e\x95\x8d\x57\xea\x92\xa1\xb5\xdd\xa5\x9f\xad\x9b\x3d\xcc\x20\x4d\xf8\x9b\xd9\x8f\xcd\x09\x16\x1b\xd2\x44\x5a\xf9\xaa\x25\xcb\x67\xb6\x70\xa8\x3b\xe5\xf8\xe4\x75\xc9\x8f\x6e\x8d\x7e\x71\x0d\x79\x35\x22\x9d\x74\x42\x1e\x90\xc0\x77\x53\x48\x75\xa9\xdc\x62\xad\xc3\x61\x9c\x9d\xf5\x77\x0a\x7a\xb9\x9d\x82\xfd\xbc\xec\x68\x8a\xa0\x94\x81\x5a\x9e\x07\x65\x8e\xa6\x07\xce\xf2\x48\x09\xa1\x17\xe4\xcf\x44\xc8\xc4\x3a\xb8\x99\x06\x67\x8d\x2e\xda\xad\xcf\xfb\x4a\x73\x5f\xc5\xc1\x05\x8f\x6a\xb1\xbb\xb6\xe6\xd2\x1a\xa7\x97\x51\x52\x72\xf8\xfd\x04\x6f\x69\x70\xa4\xd9\xe5\x57\xbc\x3d\x89\x23\x9a\xe2\xb9\xc5\x2e\xd2\xfb\x58\xf4\x8c\x7d\x9d\x5e\x5a\x91\x39\x07\x69\x4d\x45\xcd\x8b\xca\xe0\x8f\x02\xa9\x0a\xac\x8c\x34\x11\xd1\x2d\x3f\xa6\x49\x3a\x83\xdc\x3a\xa6\x4e\x91\xd9\x07\x5a\xcd\xc6\x68\x2c\xc1\x2b\x5b\xfb\x2d\x46\xee\x50\x31\x0a\x99\xc3\xb4\x80\xfd\xa1\x74\x83\x8e\x9e\x39\x8b\xf8\xbd\xe1\x2a\x6e\x03\x5f\xc8\x87\xd0\x52\xc3\x6f\x7a\x65\x1a\xb1\x70\x6a\x15\xa2\x53\x1e\xd9\x6a\xd2\x68\x02\xda\x67\x5c\x5e\xd6\x1c\x59\xaa\xfe\xda\x9d\xe8\x56\xa5\x9f\x40\x46\x97\x51\x12\xda\x69\x49\x42\x46\x9e\x60\x67\x7d\x26\x81\x46\x43\x5e\x7b\x3e\xe8\xfa\x16\x09\x05\x5f\xcc\x31\xe6\xb9\x95\x59\x3c\x05\x3d\x38\xcd\xd6\xc3\x1e\xf0\xfb\xc3\x62\x34\x85\x52\x41\xd3\x33\x96\xfc\xef\x24\x4d\x70\x94\xcc\xa1\x75\x1d\xe1\x49\x3a\xc7\x56\x9c\x5e\x5e\x46\x09\xd9\x40\x4d\x7b\xbf\xfa\xce\xf2\xfb\x0f\x60\x5b\xfd\x5e\x63\xab\xfc\xe3\x99\xf3\xd7\x7f\x31\xff\x71\x01\xe5\x17\xd0\xe1\x37\x7d\xff\x90\x1d\x65\x05\x56\x18\x8d\x29\xe8\x09\xb6\xa8\x9a\xfc\x8f\xcb\xe8\xeb\x5d\x46\xfe\x3a\x2e\x23\xff\x8f\xcb\xa8\x70\x19\x75\x7f\x1f\x97\x51\xf7\x01\x97\xd1\x61\x4b\xed\xd9\x97\x32\x5d\x68\x6d\x7e\x21\xb7\x3b\xf2\xbf\xd7\xe9\x65\x3a\xc7\x5f\x7d\x7f\x3c\xcc\xa8\x61\xb2\x69\xac\x6c\xd2\x50\x75\x34\x3d\x40\xd1\xe5\xe9\x75\x00\xec\x63\x9a\x2d\x33\x45\xaf\x9e\xaf\x2d\xbc\x26\x9f\x20\x2d\x80\x51\x00\x13\x24\x69\xb2\x2c\x32\xb5\x6e\xca\x19\x46\xe3\x8a\xae\xe5\x4a\xd7\x9a\xee\xd5\x62\xdb\x07\xd5\x6d\xaf\x16\x5e\x65\x6a\x64\x5f\x31\x2c\x05\xc9\x25\x44\xe9\x5c\x9c\xb3\x3f\x8a\x13\x71\x58\xc4\xff\xcf\xcf\x44\xc6\x93\xa5\x73\xbc\x76\x3f\x78\xb5\xa3\x5f\xd2\xcf\x8b\xfd\xaf\xe1\xc6\xce\xbb\xf9\x80\x0d\xde\xa8\x8a\xf2\xeb\x7d\x70\xd0\x74\xd1\xd7\xaa\x47\xdf\x05\x7b\xeb\x91\x48\xca\xaf\xfb\x60\x67\xd9\x90\x0c\x17\x1a\x58\x2e\x21\x95\x94\xc9\xcd\xb7\x4f\xcd\x16\xae\x78\x65\x78\x5c\xf5\xa8\xcb\x22\xe9\xed\xb2\x37\xbf\x7f\x00\x7a\xfb\x15\x40\x2c\xe6\x8a\xc6\x69\x8a\x4b\xd8\x2c\xa3\x94\xb9\x59\x24\xe3\xb4\xe2\x24\x34\x69\xf3\x7d\xb3\x86\xfd\xe4\xed\xbb\x7f\xbd\x7f\xf5\x97\x9f\x3e\x14\x4c\x92\xdc\x5d\x9f\xb4\x4a\x63\xef\x93\x94\xc8\x58\x10\x59\x49\x8a\xe0\x18\x22\x94\x77\x4b\x32\xb3\xe7\x17\x71\x90\x7c\x52\xfb\xf4\xff\xfd\xbf\xd2\xc7\xb2\xae\xe9\x7f\xbd\x38\x7e\xaf\x68\x5a\xc9\x8a\x49\x7b\x62\xdd\x82\x14\xc3\x70\x99\xce\xac\xa6\xc9\x7f\xbc\x78\x7f\xfa\xea\xed\x1b\x55\xab\x5b\x5d\x75\x83\xd9\x2b\x9b\xe2\xb5\x49\x9b\xc0\x78\x66\xad\x36\x73\x9a\x7d\xbc\x66\x0e\x7a\x5a\x5a\x22\xfb\xe3\x4d\x7f\xb4\xd9\xe9\x58\xb6\x71\xf8\x7f\x79\xf5\xe1\xfc\xf4\xa7\xe3\x7c\x99\x3b\x9d\x8f\x37\x7d\xa8\x4f\xbd\x4e\x95\xb5\x48\x60\x2c\xc1\x8a\x80\x03\x8b\xe9\x50\xa8\x61\x44\xda\x45\x60\x72\xc5\x28\x76\x14\xd0\xd0\x92\xdf\xf2\x1c\x2b\x13\x04\xc7\x1d\x96\x7e\x25\x1c\x65\x32\x15\x4b\x96\x22\xdc\xb9\xb8\xb5\x81\xdd\xa1\x89\x51\x3a\x22\x81\x0b\x0c\x46\xf2\x33\x9c\xda\x39\xa0\x01\x99\xed\x5f\xe1\x88\x7f\x35\x0a\x12\x16\xfc\xf4\x46\xbe\x8e\xb2\x0e\x35\xc7\x12\x2a\xa6\xd9\x5e\x92\xd0\x06\xf6\x25\x85\x48\x6e\x85\x58\x66\x06\xd3\x7a\x74\xc8\xb2\x30\x0a\x5f\x51\x4c\x67\x8e\x78\x79\xa4\xa5\xd8\x8f\x32\xef\x9c\xa2\x8d\x9a\x41\x12\x81\xc4\x2e\x43\x69\x8a\x1d\xd7\xa3\x30\xbf\xaf\xa3\x0c\x7b\x08\x4e\xd3\x2b\xe8\xd8\x02\x9b\xab\x43\x64\x97\xce\x15\x44\x38\x1a\x05\x31\xe3\xef\xdd\x05\x28\xce\x68\x21\xc7\xb9\x63\xcf\x20\x9a\x46\x14\x6b\x32\xb3\x35\x20\xd9\x62\x42\x10\x86\xa3\xa6\x14\xbf\xbf\x3f\x1b\xba\xde\x38\x4a\x42\xc7\x04\x9c\x96\xce\x18\xe8\x32\x05\x50\xf3\xde\x43\x16\xd0\xb0\xb5\x65\x5f\xa3\x08\x43\xf6\x94\xb1\xa0\x5b\x5b\xd0\x3b\x8e\xe3\xf4\x7a\xe1\x52\xec\x45\x09\xed\xa6\x59\x73\x34\xb4\x35\x28\x32\x9f\x87\x51\x36\x0b\xf0\x68\xc2\x32\x90\x27\xf0\xda\xfa\x39\x9d\x67\x3c\x21\xb9\xcd\xd8\x25\xd7\x5d\x00\xb2\x8d\x4b\x53\x2f\xc4\x74\x8f\xa2\xee\x39\x64\xba\xe2\x34\x83\xd5\xe5\x68\x86\x7a\x52\x4e\xb1\xf8\x95\x91\xe7\xa8\x26\xc9\xa3\x55\x39\xc5\x84\xe8\x90\x34\x52\x46\xac\x63\xb0\x6b\x72\xb5\xaf\x22\x78\x3d\x4b\x11\x76\x08\x5d\x16\x68\x00\xa0\xfc\x09\x87\x48\x75\x98\x42\xc5\xdd\x90\xd3\x42\x31\x6e\x60\xf8\xcc\x49\x14\x92\x09\xc2\x70\x09\xbd\x00\xe4\x65\xf8\x36\x86\x1e\x43\xf4\x1a\x24\xfa\x4f\xec\x45\x49\x02\xd1\x4f\xf4\xd7\x77\xf6\xec\xc6\x76\x8f\xb4\x16\x1a\x11\xe5\x92\x46\xc8\x69\xb6\x0a\x56\x1e\x0c\xc2\x0e\xbf\x5d\x75\xac\xf1\xbc\xb8\xe8\x16\x2b\x5d\x46\x1c\x5f\x0f\x7c\x9e\x38\x49\xca\x67\x85\x02\x5f\x38\x4d\x43\x18\x57\x1c\x1c\x74\x28\x34\x04\xc7\x05\x71\x70\x9b\xce\xf1\x91\x44\x32\x5d\xac\x30\x2b\xac\x0e\x7d\x52\x20\x69\xb9\x33\x8a\xa3\x0e\x29\x52\xf5\xc9\xc3\x67\xa8\xf2\x03\x19\xb2\x78\xa7\x27\xa0\xa9\xc0\x7e\x95\xe3\x5f\x2c\x87\x67\x9d\xc0\x20\xc6\x13\xba\x05\x3a\x71\x94\x3d\x91\xa4\x08\x57\x7b\x27\xff\xf3\xfc\x9f\xa3\xd7\x66\xd8\x44\x01\x14\xc8\x52\x21\x18\x53\x1e\x08\x6c\x28\x43\xfe\x36\xbb\xca\xe7\x35\x57\x2e\xf8\xdd\x8a\x58\xa1\x43\x1e\x8c\xb4\x1c\xf7\x67\x49\xfa\xbf\x6a\xbf\x17\x5b\x5d\x91\x74\x8e\x67\x73\x6c\xd9\x52\x5e\x3d\xc5\x01\xa6\x32\x6e\x8d\xb9\x5e\x34\x50\x8d\x8f\x25\x55\xe2\x39\x22\xa2\x49\xcb\x20\x8b\xf5\x65\x11\x5f\xf6\xc4\x18\xea\xda\x44\xb8\x20\x3d\xab\x9e\xfa\x72\xbe\x3e\x3e\x70\xb6\xe1\x85\x67\x89\x5d\xed\x24\xd3\x30\xae\x57\xf6\x05\xdb\x85\xb8\x8c\x37\x5c\x38\x37\x0a\x4e\xf2\xb3\xd0\x34\x27\x69\xb8\x8e\xf0\x5f\x73\xd7\xb4\x19\x58\xa5\x77\xfa\x14\xb6\x17\x2a\xdb\x2e\xea\xb2\x01\xd1\x8c\xb8\xaf\x9e\xb7\x1d\x4c\x9e\xb6\x53\x0c\x4c\x56\x44\x18\xfd\x06\x22\xcf\x1a\xc7\xf0\x81\xa6\x9b\x6c\x3e\x80\x0a\x39\x5c\xae\x11\xab\xcf\x14\xc5\xd9\x33\xc4\x44\xee\xe9\x89\x54\x0b\x95\x00\x35\xfd\x29\xc5\x0f\x25\xc2\x00\x9a\x8d\x8c\x29\x4c\x57\xd2\x6a\x8a\x11\xc2\xa9\x90\xf4\x68\x3c\x2e\x4e\xd3\x18\x47\xa4\xb9\x17\x37\xb3\x34\x83\x8c\xc5\xca\xac\x28\xb3\x32\x88\x2d\x9c\x5a\x18\xcd\x21\x45\x7f\x0a\xe2\xd8\x42\xf0\x32\xca\x30\x44\x30\xb4\x7e\xfa\xf0\xe1\x9d\x15\x24\xa1\x75\xf9\xfe\xdd\x89\x45\x3f\xb3\x66\x01\x9e\x30\xf4\x28\x48\x6b\x0b\x2d\x3c\x41\xe9\xfc\x72\x62\xbd\x48\xae\xd2\x5b\x6b\x9c\x22\x0a\x15\xc5\x85\xe2\xe0\x92\xb0\x11\xea\x8c\xb3\x4e\x84\x2b\xe9\x51\x9a\xab\x49\x1e\x44\x47\x6f\x52\x5c\x13\x0f\xd6\x78\x27\xf0\x6a\xbe\xfc\x3e\x78\x4b\x2f\xaa\x87\xed\x04\x45\xd7\x81\x72\xd5\x37\xf9\x3d\xa2\xe7\x6a\xe9\x40\x13\x8d\xca\x31\x56\x6a\xab\xb9\x26\x76\x94\xce\x6e\x3b\xdc\xee\x25\x54\xb1\x02\xdb\xfb\x47\x35\x8f\xb6\x56\x3b\xb0\x53\xf9\x67\x85\x12\xbd\x0d\x95\x2c\xd7\xb0\x19\xd4\x84\x2a\x69\x96\x4a\xb7\x49\xa1\xa4\x6b\x28\xa8\x5e\x83\x21\x45\x97\xb3\xc7\xf2\xdd\x26\xf5\x08\x84\xed\xca\x2a\xd4\x15\x6d\x74\x0b\x46\x8e\xf3\xc1\xba\x85\x5c\x5e\x68\x2b\x0d\x45\x57\xb7\x1d\x42\x61\xd3\x88\xe5\x61\x57\x59\x7f\xfd\x5d\xcd\x57\xdf\x26\xf7\xff\xeb\x35\xe6\xe0\x09\xa6\xc4\x53\xf9\x27\x73\x1c\xc5\xd9\x76\x98\x4e\xb7\x29\x4c\xbb\x00\x5c\xf8\xe2\x42\x21\x82\xb3\xb4\x42\x10\x24\xaf\xb2\x08\xa7\xe8\x76\x3b\x8d\xc2\x51\x67\xc6\xfc\xf5\x91\xed\x82\x16\x48\xf9\x42\xf7\xa0\x4e\xec\x02\xa4\x09\x4d\x60\xaa\x3f\x8c\x92\x68\x15\x05\xd5\x39\xa1\x79\x98\x40\x94\xe5\xaa\x09\xf9\xc8\x71\x17\xe0\x3a\x8a\xe3\xe7\x30\xc3\x28\xbd\x5d\x5d\x0d\x46\x66\x43\xd7\xaa\xe4\xed\x0a\xcd\x83\xbb\xa8\x55\xb8\xe5\x99\x5f\x37\x68\x05\x42\x27\xa5\xfc\xd0\x5b\x60\xcf\x06\x4e\x17\x60\x6f\x8c\xd2\xe9\x3b\x94\x4e\xa3\x0c\xba\x4e\xde\xa3\x71\x94\x84\x27\x69\x08\xff\x7c\xfb\xcb\xfb\xd7\xec\x79\x86\x46\x6e\xb9\x8b\x41\x18\x3a\x4a\xa5\xe0\x6e\x0a\xb3\x2c\x50\xd7\x45\xcd\x66\x25\x35\x46\xd8\x5d\x80\xc2\x52\xe9\xe5\xe8\x4b\x52\x6c\x41\xfe\xaf\xd5\x31\x41\x3a\xd7\x19\xa5\x71\x0c\x69\xc5\xa6\x0d\xc3\x15\x05\x79\x19\xe5\xf3\xe2\x3b\x53\x71\xa6\x49\xc8\xb6\x67\x10\x8d\x60\x82\x83\x4b\x48\xde\xce\xa7\xf4\x38\xce\xcd\x88\x59\x71\xe3\x81\x04\x20\x9e\x8a\x6a\x43\x4f\x10\x06\x92\xfc\x60\xb0\xa2\xc4\x82\xcf\xaa\xb6\x28\x16\xfb\x32\x29\x64\xb9\x2d\xe6\xc0\x55\x52\xe0\x2c\xdc\x23\x78\x86\x87\x83\x04\xc0\x35\xa5\x56\x0a\xea\xf5\x02\x3f\xff\x3b\xf9\xf7\xa7\x7f\x3d\x9f\xd4\xea\x05\x84\x8b\xfc\x08\x52\x74\xed\xad\x5c\x30\x6c\xa2\x31\xc8\x33\xcb\x17\x16\xdc\x2a\xfc\xee\x64\x23\x94\xc6\x71\x87\x25\x29\xf1\x0f\x78\x8a\xa5\x3e\xd8\xd5\x81\x82\x39\xe2\xff\x11\x47\x55\x39\x94\x4f\xd8\x35\xaf\x65\x10\xd8\x23\x9c\x47\x7f\x07\xf4\x58\x36\x94\x7d\xca\xd6\x97\x8d\x6b\x3b\xe5\x84\xb3\x4c\x48\xd8\x2d\xe2\xb9\x70\xd4\x3a\x60\x5f\x45\x08\xcf\x83\x78\x65\xb1\x59\x37\x35\x51\x7e\xc3\x46\x30\x8b\x3e\x1b\x32\x91\xb2\x30\x8f\x4c\x8d\xf0\x28\xd9\x5d\x38\x47\xc6\xb6\x40\x12\xe0\xe8\x0a\xf2\x09\x25\xb4\xa5\xf8\x8f\x5d\xbe\xe1\x8e\x63\x5c\x5f\xd9\x61\x6d\xda\x3f\xf2\xe9\xa7\xa0\x57\xf9\x4f\x9c\xce\xf2\x5f\x27\x12\xff\x67\x14\x47\x30\xc1\xa7\xd1\x67\x78\x22\xa3\x57\xec\x79\xcc\xd7\x6e\x87\x85\xae\xd0\x08\x20\xf2\xaf\x22\x57\xa9\x63\xd2\x2a\x2d\x7a\x69\x6a\x59\x72\xca\xad\xb5\xf7\x2e\x28\xe8\x89\x24\xf8\x7a\x43\x15\x95\xbf\xbf\x8a\x7c\xa7\x29\xa6\xca\x5e\x65\x85\x41\x6a\x61\x23\x3d\xea\x78\xd3\xef\xd1\x88\x20\xaa\xa5\xe6\x9c\xb9\xaa\xe1\x52\x09\x54\x85\x25\xea\x0e\x4b\xc8\x4b\x7d\x3e\x90\x9e\xe6\x09\x4b\xc7\xa0\x01\x27\x88\x26\x23\xe6\x01\x54\x84\x55\x88\xa3\xe4\x13\x25\xa9\xda\x00\x17\x4e\x8e\xb7\x11\x8c\xc3\x07\x7a\xa5\xaa\xaa\x37\xea\x9a\x52\xd0\xb2\xd1\xfd\x7b\x56\xe8\x75\x3e\x0a\x96\x54\x44\xc8\x34\x8d\x5c\x1f\x1a\x74\x3e\x84\x38\x88\xe2\x06\x4e\x88\xa5\xde\xb3\x2f\xbf\x5e\xef\x81\xfd\x23\xad\x83\x4a\xc7\xd2\x99\xb2\x80\xfe\xa7\x18\x86\xa7\x29\x82\x1d\xcd\x73\x8f\x56\x06\x6f\x66\x41\x12\x52\x69\x46\x8f\x60\x2b\xd3\x65\x7e\x70\xfa\x86\x91\x71\xba\xa2\x0a\x0c\x2a\x5d\xd5\x1e\x04\x32\xe3\x82\xb1\x96\x07\x20\x4b\x15\x95\xbc\x74\xad\xa4\xab\x69\xbd\xb6\xa9\xf1\x12\x36\x16\x73\x1b\x2c\xb4\x6d\x26\x89\xbe\x11\xeb\x69\x29\x4e\xa5\x59\x81\x5a\xa9\xda\x37\x9c\xa7\x3b\x60\x97\xcc\x5e\x36\x8b\x83\xdb\x23\x2b\x49\x13\xf8\xfd\x4a\xe7\xec\x4a\xa6\x80\x07\x1c\xb3\x5f\xe2\x38\xf5\xbf\xa5\x53\x94\x6f\xd2\xde\x37\x70\x64\x3e\x46\x57\xd7\x74\x3e\x9a\x0e\xc5\xaa\x93\xac\xf7\x54\xce\x2f\x6d\x3e\xbf\xc0\x61\x95\x7b\xeb\x35\xd1\x23\x37\x4e\x2f\x98\xa4\x94\x69\x95\x7b\x8c\xab\xe4\xb8\xdf\x89\x50\xd3\xa9\x79\x59\x99\x2c\xc8\xd7\xbd\x5e\x33\xc7\x73\xf8\xd0\x9b\x8f\xea\xfc\xd2\xa4\x73\x1d\x25\x61\x7a\x6d\x03\xfb\x9c\x33\xd5\xa7\x8c\xa7\x3e\x67\x1c\xee\x6b\xc6\x52\xf3\x5f\x1f\x68\xe7\xce\x89\x34\x45\xda\x60\x0f\xc9\x1f\x94\xc5\x53\x7c\x9e\x2e\xe7\x51\xd8\x46\x11\x68\x14\xa8\xa5\x1e\x30\x1e\x24\x42\x40\x54\xb2\x3c\x8f\x53\x34\x0d\xf0\x2b\x0c\xa7\xa7\xa4\x79\x30\xaf\xd5\x16\x06\x40\x6a\xc3\x84\x0a\x09\x89\x07\xc0\x89\x9c\x74\xa0\xba\x19\x2c\x51\x13\x2d\x80\x9d\x4b\x23\xb6\x0b\x22\x27\xcd\xb3\xb9\xed\x76\xbb\xfc\x09\x99\xa7\x9f\xf8\xd3\x7d\xf9\x50\x2c\x01\x75\xd8\x60\xcf\xe4\x44\x0a\xd1\x8c\x3f\x8f\x92\x08\xeb\xde\x45\x0d\x75\x3e\x5c\x55\x30\x38\xf3\xbb\xdd\x21\x7b\x44\x96\x24\x57\x33\x91\x5f\x2c\x51\xf5\xc2\xe5\x8d\x15\x15\x40\x2b\x35\xfc\x9f\xdc\xb5\xc6\xe0\x6b\xf3\x1f\xb6\xc7\xe8\xc3\x91\xfd\x71\xdd\x7c\xc8\x83\x01\xfb\x86\xcd\x05\xd7\x2d\xf1\x53\xc0\x63\x22\xa4\xda\xf0\xd9\x1d\x73\xd9\x39\x32\x38\xff\x2c\x86\xda\xa8\xde\xc3\x11\x8c\xae\xe0\x31\x15\xf8\x57\x19\x14\x25\xf8\xd7\x54\x21\x43\xfb\x78\x46\x57\x56\x3a\x7b\x0c\x12\x78\x6d\x49\x0a\x75\x18\xdd\x5c\x42\x36\x4e\xbe\x23\x79\xca\x78\xdb\x05\xc5\xd7\x42\xab\x63\x78\x93\x93\x8f\xcb\xd2\x07\x2b\x3a\xb8\x42\x1f\x8a\xbb\x61\xa0\x2a\xbd\x98\x22\x35\xae\x4f\x2d\x0e\x85\xf3\x13\x59\x88\xad\x2d\x27\x19\xd8\x72\xc1\x12\x60\x7f\xff\xb9\x43\x37\xe5\x91\xe5\xdb\xae\x0b\x92\x85\x9c\x61\xbe\xf9\x8b\x0e\x72\x62\x3b\x94\x7d\xe3\xe4\x92\x6f\x6a\x4b\xfe\xec\x6e\x71\x74\xc7\x15\x24\xc5\xa9\xe0\x95\xb9\x0b\x9a\xa6\x9d\x36\x2b\xaf\xb7\x3b\x46\x1c\x06\xbf\xb0\x62\x2d\x74\xef\x4a\x82\xfc\x13\x73\x34\x3e\x43\x69\x0c\x07\xba\x83\xf1\x9f\xd4\x94\xee\xdc\x93\x4c\x50\x36\xa9\xef\xcf\xe9\x3c\x09\xa3\xe4\xf2\x84\x0a\xf7\xef\xe1\x08\x3b\xae\x87\xd3\xd9\x77\xd8\x63\xf2\x3e\x77\xf5\xf2\x01\x1a\x48\xdf\x32\xc5\x07\xac\x93\x70\x3d\x2a\xc4\xf9\x44\xfd\x1c\xe0\x89\x37\x0d\x6e\x9c\x2e\x40\x42\x0d\x3a\x9f\x85\x01\x86\x64\x55\x33\x47\x7b\x74\x4a\xa7\xec\x1d\x0f\x40\x72\xdc\xc5\x02\x8c\x4a\xde\x7e\x6a\x02\x68\xb2\x43\x68\x89\x97\x11\xca\xf0\x71\x32\x9a\xa4\xc8\x81\xc0\xf6\x8a\xaa\xad\x1f\xac\x79\x6c\xfd\x60\xc5\x91\x5d\xe7\x72\x27\xe9\x87\x13\xf6\x0f\xfe\xd6\x96\x74\x79\x94\x2f\xcf\xfc\xe1\x33\xf5\xc7\xd1\xdd\x82\x4e\x6c\xc1\xdd\x6e\x6b\x0b\x6e\x0e\x4a\xab\x25\x0e\x4a\xd7\xbd\x63\xaf\xb2\xd2\x2b\x30\x0b\x50\x06\x5f\x25\xd8\x81\x62\xc6\xfe\x13\xa5\xd7\x03\x65\xc4\x69\x06\x33\xec\x10\x0e\x1b\x88\x66\x95\x92\xdc\x85\xee\xf3\x2b\x42\xda\x03\x7f\x43\x59\x6f\x9a\xf9\x36\xba\x88\xa3\xe4\x52\x76\x98\xf1\x28\x2e\x40\x83\xa4\x8a\x0c\x40\x3a\x40\x94\x14\x12\x8d\x14\x40\x54\x3e\x11\x6b\x09\x10\x04\x83\xa8\xb2\x8d\x78\x10\x90\x36\x36\xd2\x1f\xe2\x67\x25\x4f\xc5\xe0\x22\xbd\x82\xb6\x7b\x64\x72\x30\xe4\xef\x16\x30\xce\x20\x5d\xc9\xf9\xd2\xc1\x6e\xcc\xab\xeb\x01\x95\x0b\xc3\x2e\xb7\x8a\x79\x26\x2f\x17\xe4\x62\x4f\x5d\xcd\x3e\x37\x5f\xaa\x78\x9f\x06\xb7\x17\xb0\x13\x25\x1d\x91\xe4\xde\xa0\x73\x2f\x96\xa9\xfd\xfe\xdb\xb4\xd5\x11\x5e\xbd\x33\x0b\x12\x68\x48\x6d\x5c\x6b\x1d\x58\xb7\x59\xae\x42\x37\xff\xba\x77\x3b\xcb\x12\xf4\xa6\x22\xd5\x31\xcd\xfe\xdb\x44\x17\x7f\x00\x7a\x55\xea\x6d\x55\xc4\xed\xe7\x82\x76\x59\x72\xe9\x95\x25\x97\xa2\xc8\xd2\x42\xa8\xdb\x95\x26\x81\x7c\x0d\x2c\xa6\x3a\xee\x72\x5d\x57\xd1\xc1\x70\x89\x6c\x49\xf6\x3d\x4a\x9b\x08\x97\x05\xfd\x05\x99\x1c\x2e\xfa\xe8\xda\xf4\xa6\x58\xf0\x4a\x12\xa2\x5a\x91\x7c\xa9\x17\x5d\x51\x80\x33\x7a\x21\x56\x74\xb7\x51\x4c\x53\x51\xc5\x53\xe7\xad\x43\xab\xf3\x85\xe2\xa7\x97\x87\x10\xc9\xcc\xa8\xfb\x54\x01\x62\x50\x09\x2d\x59\xa9\x36\xd1\xa9\xcd\x06\xbe\x44\xfc\x6c\xe0\xdd\x61\x70\x0d\xa9\x15\x34\x65\xc8\xb2\x3e\xd4\x5c\x00\xe5\x81\x2a\x31\xc4\x6d\xe4\xb7\xe2\x81\x24\x45\x37\x54\x2b\x94\x25\x55\x2e\x1c\xf2\x34\x04\x2d\xa4\xb2\xda\xdc\xf6\x8c\x6d\x91\xcc\xd8\x25\xc4\x44\x1e\x88\x2e\xe6\x18\x3a\x76\x14\xda\x5a\xc4\x80\x94\x59\xce\xc6\x29\x1a\xfc\x29\x17\x5c\x80\xfd\xa7\x21\x61\x7f\x4d\xb1\x04\xec\x1e\x27\x33\x31\xb4\x41\xe2\xcd\x02\x04\x13\x21\x4b\x11\xb6\xa0\xcc\x94\x78\xf9\xb4\xd9\x00\x51\x9e\xb3\x18\x89\xe0\xde\x09\xaf\x7f\xae\x9f\x1c\xb0\xe3\xdd\xa6\xc7\x70\x34\x40\x5e\x3a\x1e\x67\x50\x30\x9c\xbd\x8d\x94\x17\x9f\x06\x37\xec\xd9\x40\x3e\x89\x12\xfe\x24\x67\xec\x23\x6a\x75\x64\xfc\x80\x55\x6c\x89\x9e\x0e\xe5\xfa\xf4\xc7\x79\xa5\x5d\xbb\x18\x7d\x80\x96\x5f\x64\x0a\x74\xca\xb2\xab\xac\xec\x84\xc2\x2f\x1d\x66\x5c\x2c\x58\xc1\xdd\x3b\x69\xfd\x46\x0a\x2f\xac\x92\x44\x34\x76\x8e\x11\x0a\x6e\xbd\x28\xa3\xff\x12\x26\x92\x17\x4b\x1d\xe8\x2e\x1c\xe8\xde\xdf\x17\x3e\xb0\xe7\x09\x1b\x50\x68\x6f\x0e\xf0\xed\x0c\xa6\x63\xeb\x94\x5e\x6d\x5b\x5b\xec\x5f\x2f\xc2\x2c\x80\xc7\x8a\x12\x8b\xdd\xb6\x4a\xc5\xac\xc1\x31\x4a\xa7\x86\x16\xc8\xfd\x1c\x8d\x9d\x4d\xc8\x4b\x13\x82\xb0\x33\x8c\xa2\xe4\xd2\x1e\x88\xd6\xa0\xd2\x47\x80\x5d\x7e\x1d\xf3\x6b\x3d\xd7\x8e\xe0\xf4\x94\x7e\xe8\x8d\x82\x38\x76\xa0\xeb\x65\x31\xd9\x29\x07\xa0\xe3\xbb\x1b\x36\x2b\x4e\x64\xee\x64\x6b\x0b\x12\x6a\xc8\x30\x9a\x8f\x70\x8a\xa8\xe4\xa7\x3d\xf1\xc8\x01\x48\x89\xd3\xfe\x39\x98\xd1\x6f\xee\xef\xed\x53\xc8\x3e\x37\x0e\x8c\x16\x3e\x16\x8c\x3f\xff\x64\xfb\x7f\x9d\x67\x47\xbf\x44\xf7\xaf\xdc\x04\x3b\xcf\x8e\x0e\xee\xfd\xbd\xfb\x7e\xcf\x75\x9e\x1d\x9d\xc4\xc1\x74\x06\x43\xf7\x19\xad\xe4\x3f\xb7\x3d\x4c\xb6\x47\xe2\xea\x23\x2d\xcc\x16\x91\xde\x51\x7a\x6d\x11\xe1\xfb\xc3\xed\x0c\xbe\xa0\xee\x1c\xf6\xab\xe4\x2a\x88\xa3\xd0\x0a\x30\xa1\x0e\xea\x60\x9a\xcd\x10\x0c\x42\x2b\x49\x93\x0e\x5d\x9b\x8b\x18\x5a\x51\x92\xe1\x20\x19\x41\xef\x63\xf2\x2a\xb1\x52\x14\x42\x44\x8a\x5e\x40\x4b\x14\x01\xf4\x03\xaa\x3f\xb3\x52\x3a\x5d\x99\x35\x9d\x67\xd8\x9a\x04\x57\xd0\x0a\xac\xb3\xc2\x72\x0f\x1d\xd7\x9a\x42\x3c\x49\x43\xcf\x76\x17\x8e\xbb\x90\xf4\xc7\xba\x7f\xe7\x90\x8d\x33\x18\xe0\xfb\x7b\xfc\x03\xe4\x62\x93\xbb\xb5\xe5\x90\x53\x89\xff\xda\x18\xa7\xc8\x61\x0b\xda\x25\x42\x06\xbc\x66\xf3\xea\x60\xf7\xfb\xe4\xbf\xf1\xf7\xc9\x77\xdf\xb9\xe8\x2c\x19\x0e\xe0\x59\x32\x14\x82\x3b\x5a\x93\xbf\x45\x54\xcf\xd3\x1d\x8c\xfe\xf1\xf7\xc9\xcd\xf8\xb9\x99\xa7\x6b\xc2\xcd\x69\x80\x24\x0f\xf0\x18\xb0\x05\x24\x07\xc2\x14\x79\x48\x83\x97\x61\x7a\xed\x30\x68\x11\x49\xcf\x6f\x69\xbf\xe8\xd1\x29\x38\x09\xce\xd6\x30\x70\x01\x0d\xec\x69\x28\xc3\x4a\x76\xc0\x59\xff\x40\xe3\x35\x79\x27\x44\xa5\x15\x16\x28\x35\x7b\x7b\xa1\xf6\x0e\xe7\x0c\x39\xdf\xc9\xbc\x41\xfa\x3c\xd8\xb6\x9f\x37\x40\xed\x46\xd4\xd7\x5a\x4a\x5f\x3c\x76\x77\x07\xec\x0c\x85\xdd\xdd\x56\x5e\xd2\xe7\x55\x99\xe0\x0d\x9a\xfe\x22\x5c\x0c\x0a\xc2\x28\xd5\x2d\x64\xe5\x91\x69\xda\x7c\x6d\x5c\x79\xc7\x73\xe6\x4c\x99\x50\x91\x01\x9d\x03\x4b\xd9\x18\xcd\xcd\xe8\x17\xd2\x8a\x67\x48\xeb\x4e\xbe\x3d\x1f\xc9\xb4\xec\xc6\x74\xf5\xcb\xd8\xd6\x26\x63\xe1\xea\xf3\x65\x1e\xd2\x8a\xc5\xaa\x5c\xc7\x92\xd0\x9b\x87\x0f\x74\xed\x16\xb9\x4a\x87\x6d\xb2\x8b\x54\x43\xba\x14\xcb\x44\x07\xcd\x66\x4d\x05\xea\x6c\x68\x36\x37\xb7\xc0\x7e\xa8\x30\xf6\x34\x59\x4d\x86\xaf\x55\xbb\x0e\x4b\x66\x70\x75\x84\xae\x6f\x67\xfe\x34\x80\x86\xe2\x14\x2a\x2f\x57\x9a\xc4\x25\x36\xcc\xbd\x46\x73\xf0\x00\x00\x97\xa7\xbe\x0c\xc6\xc7\x86\x87\xa5\x47\x0d\xc4\xec\x65\xc2\xa3\x14\x12\x55\xbb\x21\x07\x19\x60\x6b\x97\xdb\x17\xb9\x1c\xa9\x59\x27\xdb\x08\x94\x25\xc1\x40\x8a\x94\x41\xad\x48\x19\xad\x57\xa4\xe4\x03\x3a\xda\xec\x02\x6e\x9a\xa0\xb4\xc0\x3a\xc6\xfe\x4e\xaf\x20\x1a\xc7\xe9\x35\x55\xd2\x06\x59\x76\x64\x2b\x4f\xa8\x1b\x79\x31\x38\x7e\x01\x18\x14\xa4\xfe\xec\x5c\x7f\xc4\xe4\x8d\x4a\x05\xeb\x66\xd7\x05\x8c\xa1\x64\x82\x25\xeb\x1d\x37\x9b\x71\x99\xb4\x14\x1f\x2f\x65\x55\xcf\x74\x89\x81\x3c\x0a\x9f\x4a\xc3\x55\xea\xe7\x8d\x62\xa7\x04\xf4\x25\x2e\x2b\x84\x85\x71\x23\xe1\x1d\x74\x17\xac\x33\x51\x78\x3c\x9b\xc1\x00\xe5\x81\xfe\x64\xf4\x34\xcc\x5f\xbe\x2b\x79\xa0\x7f\xef\x34\x35\x7f\x72\xe1\x79\x6b\xcb\x81\x45\x1c\x80\x5c\x9b\xed\x7a\x41\x18\xf2\x6a\x20\x40\x8e\xd3\x05\xd2\x8a\xe7\x3a\x67\x36\x0d\xc2\xe7\xcc\x8a\xeb\xba\x0b\x70\x5e\x58\x49\xa1\x56\x28\x4d\x48\xbe\x4a\x3e\x13\xd0\x84\xf4\x4f\x27\x8a\x48\x47\x29\xfb\x94\x5b\x05\x8a\x24\xb4\x91\x2a\x3a\x77\x11\x86\xe3\x44\xee\xd6\x56\x5a\x56\xc6\x47\xee\xc2\xc1\x75\xa3\x64\xe5\xc4\x7c\x2d\x1f\xa8\x84\x5e\xa0\x1e\xfd\x7c\x49\x54\x23\xea\x0a\x41\x08\xe4\x7c\xd8\xda\xaa\x9b\x27\xa0\x52\x2e\xa7\x63\x69\x1f\x62\xad\x50\x12\x11\x76\xdf\xbb\xc5\x62\x49\xd4\x42\xc3\xae\xad\x6c\x63\x06\xcd\xfb\x58\x1d\xc4\x41\x09\x7b\x63\x79\x57\xeb\x09\x59\x5b\xe2\x46\xb4\x2c\x75\x65\x06\xeb\x69\x34\x76\xb4\x6d\xa4\x1e\x23\x6c\x1b\x13\x12\x26\xa7\xcf\xe6\x60\xa0\x5b\x49\x19\x85\x0b\xfd\x58\x89\xae\x49\xcd\x3f\x98\x2c\xa2\xae\x02\x9b\xa2\x41\x63\x48\xea\x47\xee\xfd\x7d\xd1\xd6\x85\x5c\x77\xa3\xa2\xf0\xd6\x96\xc1\xfe\x85\xdc\xc5\xc2\x68\xd4\xcc\x6d\x8f\x50\x20\x14\x79\xd2\xfe\xf8\x4c\x59\x59\xe8\x1e\x71\x97\x00\xb9\x39\xcc\xd8\x27\xba\xeb\x83\xca\xa6\xbb\xd2\xd0\xbe\xd9\x55\xac\xfa\xba\x69\x90\xca\x85\x67\x64\xd7\x0c\x84\xa0\xf7\x27\xf5\x7c\xde\x50\x22\x5d\x04\xb5\xc1\x45\x09\xff\x23\x68\xa8\x81\x8b\x83\x5b\x88\x96\xe2\x3d\x48\x8d\x06\x6e\xaf\x51\x4b\xbe\x01\x8d\x5a\x92\x6b\xd4\xd0\xea\x1a\x35\x54\xd6\xa8\xa1\x65\x1a\x35\x94\x6b\xd4\x50\x43\x8d\x1a\x6a\xaf\x51\x43\xae\x3e\xd2\x6f\x56\xa3\x96\x7c\x1b\x1a\x35\x54\xaf\x51\x9b\x67\x2f\x7f\xfa\x0d\xfe\xed\x93\x51\xa3\x56\x56\x9f\x55\x68\x2a\x84\x54\xa6\xa7\xa1\x2f\xa8\x96\xfc\xb2\xa6\xa0\xac\x43\x5a\x97\x2e\xa8\x24\x76\x48\x65\x5d\x47\x80\xbf\x15\x24\xbe\xe9\x3c\xc6\xd1\x2c\x86\x8a\xf6\x8e\x7a\xd5\x97\xe1\x42\xdb\xc4\x37\x73\x71\xa5\xb5\xd4\xa1\x1c\x86\x52\xe8\x48\x6b\x85\x0e\xb4\x32\xcc\x99\x22\x8a\x54\x5a\xaf\xdc\x3b\xee\x32\xa7\xdc\x10\x99\xf3\xa7\xc2\xed\xe0\xba\xde\x38\x8a\x31\x44\x46\x54\x31\x75\xf5\x37\x07\x03\x68\x30\x80\x2d\x48\x0d\x29\x7a\x11\x8c\x26\x7a\x15\x4c\x03\x37\x28\x7f\xa5\x29\x1d\x5d\x72\xec\x19\xef\x24\xb7\x74\x2d\xa5\x0d\xae\xa5\x82\x6b\xf2\xd3\x00\x23\x3a\xfc\xed\x18\x27\xef\xde\xbc\x30\x2b\xc1\xf3\xfe\xdb\xa0\xe8\xe5\x50\xbb\x9f\xb9\x1a\xc5\xe0\x8d\x6d\xf2\x26\x30\x62\x51\x2b\x41\x2d\x5a\xb6\xfb\x4f\xf0\xf6\x22\x0d\x50\xc8\x20\xe3\x98\xee\x62\x47\x0d\x06\xe8\xa9\xf1\x01\xbb\xb9\xbf\x3f\x8f\x68\x69\xe7\x94\xf0\x18\xa8\xd5\x3f\xa7\x08\x36\xb5\x98\xaf\x1d\x65\x5a\x53\x0a\xf5\x73\x44\x08\x05\x67\xba\xb5\x51\x7f\x19\xf0\x6b\xbb\x53\xce\x14\xcd\x04\x56\x3a\xfb\x8c\x3b\xee\x2b\x82\x31\x24\x69\x08\x3b\x51\x08\x13\x1c\xe1\xdb\xa7\xb1\xff\x2f\xd0\xe1\xee\x45\x1c\xdd\x34\xbb\xb2\xcd\x30\x56\x02\x98\xf4\xcd\xe9\xbb\xe3\x93\x17\x0d\x52\xbd\xd5\xfa\xdf\x10\xaa\xa6\x10\x95\xd6\xc7\x8f\xe2\x8b\x8f\x1f\x6d\xeb\x8e\x12\x1b\x99\x42\xf2\xc2\xe6\x21\xbb\xd4\x4b\x89\x13\x16\x2b\xf3\xf1\x23\xb6\xac\x59\x1a\x47\xa3\x5b\x6b\x40\x8a\x52\x98\xc9\x8f\x1f\x19\xb1\x2e\x3e\x7e\x4c\xc8\xff\xcb\x56\xce\x67\x08\x8e\xa3\x1b\x8b\x16\x10\xad\xf0\x3b\xcd\xf0\xae\x54\x3b\xe1\x1b\x8b\x95\x37\x0d\xea\x6a\x34\x98\x8a\xa1\x90\x76\x6a\xbb\x69\xee\x64\x55\xf7\x96\x69\x4a\x39\x63\xc3\x90\x60\xa3\x71\x9b\x7d\x68\xa0\xfa\xaf\xba\x07\x71\x64\x42\x04\xf9\x1a\x9b\xef\x2f\xbf\x6d\xff\x0b\xdf\xc2\x0b\xf3\xe5\xfb\x23\x11\xd2\x72\xf3\x73\xed\xd5\x6b\x8c\xf1\x67\x43\x15\x00\x7b\xdc\x70\x5a\x02\x0d\x54\xaf\x02\x3d\x74\xee\xec\xcc\xfe\x89\xd9\xcf\x80\xfd\xe7\x34\xbc\xb5\x81\xfd\x52\x1a\x43\x34\x58\xbf\x20\x49\x93\xdb\x29\x05\xa8\x27\x5f\x89\x50\x12\xcd\x02\xa7\x07\x91\x6a\x9f\x94\x63\x4c\xeb\x6a\x14\x06\x99\xa1\x6e\x93\x68\x77\xc9\xa8\x01\x47\x54\xb3\xdf\x8a\xa0\x73\x12\x6a\x49\xc9\xe7\x82\x00\xde\x26\xf1\xad\x2c\xe6\xac\x40\xc3\xe3\x68\x14\x98\xa1\x3a\xbe\x06\x25\x77\xfb\xc9\xe8\xaf\xff\x73\xd3\x5d\xe2\x4b\x51\xcb\x33\x0a\x8f\x80\xee\xd0\x48\xa0\xbe\x51\x72\xaa\x5d\xe4\xb6\x41\x5b\xe5\x79\x5d\xe3\x41\x05\x68\xed\xb7\x15\xc2\xd3\x38\x0e\xb2\xc9\xcf\x0c\x07\x26\x6b\x00\xeb\x93\x26\xa4\xdf\x31\xc4\x70\x2d\xc0\x3d\x95\xb1\x54\x0d\x51\x74\x40\xf3\xf8\xa8\x64\x70\x87\xa3\x29\x4c\xe7\xf8\x68\x0f\xf6\x01\x9b\x28\x18\x7e\xe0\xcf\xfa\xdd\x2e\x1d\xbc\x50\xa6\x7e\xf8\xf9\xf5\x82\xc7\x96\xe0\x68\xf4\xe9\x76\x6b\xcb\x49\xf8\x9f\x83\xcd\xae\x0b\xa4\x2a\x54\xe8\xe5\xe9\x2c\x7b\xa3\x18\x06\x48\xcc\xa7\xe3\x02\x5b\x74\x3b\xd7\x92\x31\x5d\xf9\x18\x43\xf4\x8c\xa3\xf9\x78\x08\x66\x69\x7c\x05\x9d\xfc\x95\xe3\xba\xde\x28\xc0\x45\x09\x32\x1a\x3b\xf6\x07\x14\x24\xcc\xf7\xf4\xf8\x22\x45\x98\xaa\xfb\x06\x90\xa9\xc2\x98\xde\x09\x12\x09\x14\x4f\x60\xe2\xa8\x31\x43\x50\xf4\x31\x08\x43\x27\x21\xd2\xe4\x91\xda\x73\xfe\xb4\xed\xbd\x46\x71\xa1\x32\x18\xc3\x11\xde\x1e\x4d\x02\x84\xbd\x1b\xba\xd5\x1e\xf5\x64\xc8\x1f\xd0\x53\x40\xe9\x83\x4d\x29\x31\x0a\xe2\x23\x3b\x4e\x83\x90\x1a\x0e\x69\x7f\xb2\xa3\x3b\xf2\x00\x86\x47\x77\x0b\xc0\x5f\x1d\xdd\xa5\xc9\xd1\xdd\xe9\x2f\x27\x27\x2f\x4e\x4f\x8f\xa4\x91\xc2\x66\x05\xed\xc5\x70\xb1\xa0\x02\x77\xf3\x19\xa8\x05\xfc\x6a\x32\x6b\x5f\x27\xcc\xe0\xf3\xe9\x9f\x7f\xfa\xe7\x5f\x8e\xe7\xe6\x63\xf4\x94\xad\xa7\xfd\x97\x79\x80\x42\x9a\xb7\x87\x5b\xaf\x05\xf6\xb9\xcd\x8f\x57\x1e\x35\x5b\xfa\xa7\xca\x91\xed\x80\x3f\xe8\xd0\x29\x90\xf2\x65\x86\x46\x42\xbc\x66\x69\x34\x9b\x7b\x9f\xb5\xcf\x94\x96\x8f\x81\x65\xf7\x29\xe3\x11\xda\x79\xd2\xf6\xa1\xa8\x78\x4a\x3e\x61\xe0\x92\x82\x5a\xda\x46\x1d\x14\xfd\xe1\x54\x22\x66\x0c\xd3\x61\xf9\x3e\x62\x82\xd0\x81\x2a\x08\xed\x72\x0c\x82\x1d\xd2\x15\x16\x1b\x39\x1c\x8a\x48\x8e\xd5\xa1\x7c\x9b\x61\x3a\xf7\xcb\x10\x1f\x05\xbc\x8f\x9d\x35\x20\xa2\x1a\x71\x7b\x4c\x3e\x27\x56\x45\x26\xb7\x30\xca\x82\x8b\x58\xf8\xec\x75\x2b\x20\x1f\x7a\xe0\x00\x9c\xd9\x7f\x8b\x92\x90\xa1\x7d\xea\x90\x77\x1a\x5a\x44\x19\x5e\xa2\xaf\x6b\x7f\x0e\x87\x3c\x63\xd3\x8a\x19\xe2\xb4\x8c\x70\x05\xa0\xa8\x3d\xa5\xb7\xcf\x99\x8b\x79\x9e\x1c\x9c\x3d\x96\x78\xc4\xa2\xf1\x32\xe1\xec\x2b\xb5\xbc\x11\x52\x29\x1d\x78\xbe\x30\xed\x56\xcc\x11\xdd\x2c\x57\xca\x46\xea\xb6\x4c\x3b\x54\xe9\x40\x65\x78\x59\xae\xba\x22\x19\x52\x03\xf7\x9d\x92\xcc\xcc\xa9\xdd\x2f\xe0\x3e\x30\x35\x5f\xee\x8d\x4b\xd6\xbe\x0b\xd6\x45\xf5\x65\x67\xc5\x65\x10\xaf\xc5\x9c\xe1\xa7\xa7\x6f\xad\x77\x39\xfd\x2e\x85\x72\x9d\xa5\xd7\x10\xc9\x8b\x54\xe4\xaa\x97\x7b\xc7\xfe\x31\x4d\x72\xf4\x2f\x56\x8c\x3d\xcf\x60\x80\x46\x93\x17\x49\x5e\x70\x26\x41\x27\x0a\x5a\xd2\x7e\x19\x45\x45\x42\x03\x15\x11\x52\x48\xb9\x3d\xae\x3f\x15\xde\xb6\xab\x65\xf5\x2a\xcd\x90\x69\xf7\xef\x37\xdb\xfd\x75\xdb\xd6\xbc\x51\xf7\xcd\x1b\x75\xbf\xdd\x46\xdd\x7f\x8c\x8d\x5a\xac\xf4\x51\x36\x6a\x29\x51\x59\x65\x65\x35\x15\xb5\x39\xd9\x9b\x1e\xcf\x7b\xab\x1c\xcf\x2c\xcb\x6d\x7d\xc7\xcb\x63\xde\x5b\x82\xc9\x64\x1c\x7d\xa3\xc0\xb6\x65\xbc\x09\xe1\x81\xdb\x32\x27\x45\x93\xca\x0c\xa5\x97\x08\x66\x99\x45\x18\x5c\x0c\xd1\x34\x4a\x18\xb7\x6a\x70\x94\x6e\x9d\xe4\xcd\x07\x3d\xd0\x07\x3b\x60\x77\xb9\x3a\x50\x39\x8c\xe4\xd6\x14\xb9\x9f\xa4\x53\xa5\x40\x6e\x91\x20\x2a\xd4\xc1\x3b\x49\x71\x47\xc1\x67\xce\x35\xfc\xcc\x82\xde\xa1\x25\x59\x16\xaa\x2a\xc8\x17\xca\xa4\xda\x71\xab\x80\xbe\x92\x74\xf0\xd0\x88\xbe\xbb\x2f\x8a\xac\x4b\x07\x3d\xc8\x63\xaa\xeb\x3c\xd8\x24\x6c\x01\xfd\x92\xae\x02\x77\xe6\x12\x4c\xb6\x63\x73\x61\xcb\x2e\x0a\x9a\xcb\x23\xdc\xd2\x39\x8e\xa1\x51\xc2\xfa\xf1\x32\x8e\xa6\x53\xa8\x20\x49\x97\xc5\x28\x2a\x04\x01\x04\x52\x10\x81\x00\xc4\x60\x0e\x46\x20\x03\x63\x30\x03\x21\x98\x82\x5b\x70\x01\x26\x39\xca\xeb\x55\x6e\xef\x75\xae\x06\x06\x11\x5e\xb8\xd5\x70\x29\xa9\xf8\x42\x3a\x5e\x3c\x33\x81\x48\x70\x5f\x99\x85\x09\x61\x02\x6e\x6d\xd5\x34\xa7\xf9\xbe\x0c\x06\x03\xf9\x7c\x53\xfc\x9d\x7b\xd9\x3c\x13\x7d\x3b\x92\x0d\xba\x0e\x54\x5c\x3f\x2e\x73\x90\xdb\x64\x6b\xab\x06\xc1\x56\x09\xba\x4f\xbc\xfc\x87\x8e\x61\x9b\x78\xea\xcf\x1c\xcf\x36\xf1\xc4\x9f\x80\x23\xe1\x7a\x5c\x40\x8f\x3e\x43\xf4\x4c\xfb\xc5\xfc\x81\x90\x7b\xc4\x08\x69\xa1\x74\xf6\x2d\x5b\x45\xbe\x26\x6f\x85\x4f\x51\x06\xf1\x3b\x31\xe0\xb7\xe3\xa2\xbf\x92\xc4\x63\x39\x3f\xa7\xd3\x72\x7e\x3e\xc0\x80\x4e\x03\xc0\x4a\xdd\xd7\x79\x54\xab\x42\xcc\xba\x43\x95\x5c\x8a\xf7\x70\x4c\xb6\xf2\xfd\xfd\x26\xff\x2b\x5f\x12\xee\x12\xb4\xe9\x6f\x44\x63\xa7\xf4\xd6\xcb\x26\xc1\x54\x2b\x62\x58\xe8\x77\x28\xbd\xb9\x15\x85\xba\x1b\x18\xdd\x8a\x41\x3c\x0f\x30\xac\x74\xa1\x2a\x35\xe6\x90\xe2\xe4\x3e\x50\xf5\x3f\x14\xf1\x65\xb3\xbb\x60\x6a\x25\x49\x73\x9b\xfe\x62\xe1\x48\xf0\x9a\x82\x96\x2d\x01\x68\xf0\x8e\x7b\x4d\xf1\x5d\x94\x0e\xde\x31\x1d\x9d\x4a\x8c\x1b\xc9\xa0\xdc\x09\x94\x9f\x26\x20\xe5\xa1\xb1\xc9\xa0\xe2\xb8\x11\x1d\xf8\x95\xbd\x48\xdc\x45\xbe\x42\xbf\xaa\xeb\xb9\x89\xef\xef\xf9\x99\x6d\x6f\x0e\x06\x57\x0e\x76\xd5\x4d\x23\x5d\xdf\xf0\xb3\x73\xea\x64\x98\x57\x73\xce\x35\x68\x8c\xbc\x06\x83\x81\xd0\x97\x25\xf0\x9a\x2c\x2c\x44\x30\x19\x09\x67\x2d\xd2\x0b\x6b\x12\x64\xc9\x9f\xb0\x75\x01\x61\x62\x09\x42\xcd\x60\x68\x75\x2c\x7a\x70\x3a\xae\x56\x82\xac\x05\x0c\xed\x1c\x08\x28\x6f\xfa\x9d\x72\xa2\xbc\x33\x53\xaf\x00\x91\xbe\xd4\x9e\x1a\x0f\x89\x9c\xa0\xef\xef\x8d\x5f\x91\x8d\xae\xef\xf6\x53\xb1\xdb\x81\x74\x98\xbe\x5b\x88\x8e\xf2\x3a\x3e\xc1\xdb\xcc\x41\x15\xbe\x2b\xd1\x19\x1c\x0e\xd0\x19\x1c\x52\xb8\x22\xe5\x1c\x18\x6c\x6e\xaa\x3f\x41\xa4\x9d\x04\xf4\xad\x76\x34\x38\x36\xd3\xc1\x44\x89\x15\xdd\xdf\x47\xea\x01\xe0\x6e\x6d\x39\x91\x3c\x30\xa8\x9a\x35\x1a\x24\xdc\x3d\xd0\xf5\x10\xbc\x82\x28\x63\x7f\x85\xf3\x11\x54\x3a\x48\x8f\x31\xe1\x74\xc6\xe3\x96\xef\xef\x93\x85\x0b\x22\x17\xa4\x0a\xa2\x8e\xd6\x1e\x6d\x8e\xf6\x46\x7f\xfe\x2c\x2a\x1f\x4b\xa9\x38\x96\x80\xf6\x92\x2b\xd9\x5c\x20\x89\xaa\xd8\x42\xf5\xc9\x1a\xd1\xe1\x31\xf0\xb2\x7c\xa5\x5e\xb4\x77\x09\xfd\xf4\x0d\xb8\x84\x7e\xfa\x3f\x13\x64\xfd\xe9\xdb\x76\x09\xfd\xf4\xd8\x2e\xa1\xb2\xa5\x9b\x9c\x86\x9c\x7c\x8c\xe4\xe8\x76\x5d\xe3\x6c\x9d\x04\x49\x92\x62\x7a\xce\x5a\x81\x45\x9d\xd2\xad\x20\xb3\x02\xb9\x4f\x6c\x65\x1c\xef\x59\xed\x4a\x1f\x49\xa7\x78\xdf\x69\xdf\xee\x98\x6b\x29\xa6\xbd\x53\x4f\x34\xf5\xc7\xfd\xfd\xa6\x0f\x50\xe1\x4c\xeb\x82\xfc\x10\xa3\x6e\xc9\xfa\xa1\x55\xb5\xe5\x11\x39\x62\x01\x52\xaf\xb6\x93\x62\x42\x81\xad\xad\xf7\x8e\x72\xd3\x03\xec\x82\x84\x3e\x03\x89\xbb\xb6\x8c\x00\xcf\x97\x98\x03\x8e\xd1\xab\x77\xf8\xe6\xd7\x0a\xff\x00\xae\x4b\xaf\xb6\xae\x1a\xc0\xed\xa5\x03\x2c\x03\xea\x49\xa8\x96\xbb\x02\xc2\x5e\x8f\x6f\x17\x5f\x85\x51\x56\xfd\xa1\xd4\xef\xf0\x3c\x10\x52\x70\x65\x52\x83\xad\x06\x77\xf3\x47\x12\x94\x37\x7f\x83\x52\x0a\x0d\x2a\x5a\x64\x3f\x87\x5a\x11\x61\xdb\xe2\x45\x84\xd9\x23\xc9\xf3\xbf\x89\x92\x58\x9a\xe9\xec\xb2\x8b\x20\x38\xb3\x67\x08\x5e\x45\xe9\x3c\x3b\xd5\xab\x00\xb6\x55\x53\xbd\x51\x09\xc5\x0d\xd5\x3d\x23\x8e\x93\xa8\xa2\xd8\x1c\x1f\x5c\xde\x1f\x6e\x7f\x1a\x02\x73\x07\x95\x17\x72\x5e\x0c\x6e\x10\x4b\xa4\xf7\xb0\x13\x51\xa3\xae\x0d\xec\xeb\x28\x8e\x3b\x21\x0b\xe7\x51\x85\xf5\xb6\x5e\x11\xaa\x5c\x28\x65\xeb\x0f\x2a\x2b\x2f\x37\x1b\x24\x3c\xec\x0d\x63\x30\xa1\x12\x4f\x35\xc0\x0b\xbe\xfd\xc8\x76\x3c\xbb\xfb\x04\x6f\x8f\x6c\xa1\x46\xe1\x72\x4b\x15\x1c\x20\xfd\x7e\x30\x80\x8b\xc5\x90\xec\x4f\xc7\x05\x6f\xc8\x49\xe8\x98\xdb\x2f\x35\x3f\x0d\x66\xf4\xe0\xfc\x39\x98\x19\xfa\x90\xa5\x64\xaa\x0a\x1d\xe0\xb2\x7b\x46\x6d\xbf\x83\x17\x8e\xa8\x87\xf1\x6f\xae\x4c\x1c\x43\x5e\xd3\x7f\x1c\x93\x2c\x3c\x80\x5e\x36\x8b\x23\xec\xd8\x9e\xed\xf2\x53\x11\xa0\x01\x2e\x3f\xdd\xc8\xae\x23\x22\x31\x6c\x76\xdd\xbb\x51\x40\x78\xf8\x1f\xd0\x11\xeb\x6b\xc7\xdf\x60\x4f\xfe\x5b\x3c\xb1\xfc\x0d\x7e\x2c\x88\x07\xdd\x05\xf5\x5b\x06\x7c\x44\xb0\x3c\x20\xda\x29\x39\x8a\x8c\xc6\x0e\x61\x65\x18\x4e\xfe\xf9\xa5\xe9\x73\x7d\x41\x48\x1d\x34\xfe\x28\xff\x2a\x84\x31\x24\x44\x5f\xfe\x50\x7e\xc1\x8a\x38\xd0\xdc\x2c\x99\x59\xc3\x3a\xa8\xcd\xb2\xf9\x96\x54\xe0\x82\xe3\x81\x23\xac\xae\xa5\xb4\x4a\x64\x03\x21\x3b\x57\x01\x55\xf8\x5a\x08\x05\x11\x55\x47\xc1\x10\x44\xc5\x07\x41\xf1\x41\x2c\x1e\x30\x65\x58\x0e\xe5\xcb\x7f\x8f\x0a\xbf\xb3\xc2\xef\xc9\x40\x9d\x1d\xa7\xc4\xec\x99\xe4\xac\xad\x2d\x19\xc0\x66\xbc\xb5\x4f\x89\xa8\x64\xc1\x1b\x9a\x49\x9b\x6c\x03\xca\x97\xc0\x08\x4f\x20\x22\x2c\x0c\xf9\xda\x4a\x91\x76\x8d\x6f\x28\x57\xa0\xe0\x16\x47\x08\x52\x9f\x97\xad\x2d\x85\x73\x04\x77\x0a\xef\x77\xc4\x2f\x3e\xa8\xe6\xd3\x29\xe6\xda\x21\xc7\x03\xde\xda\x62\x1a\x85\x85\xeb\x24\x00\xba\xdc\xd5\xe8\xda\x49\xdc\x0d\x25\x36\x46\x04\x15\xf2\x75\xbe\x11\xa2\x29\xb8\x74\xce\x1d\x38\xc0\x66\x49\xd6\x05\x62\x81\xc1\x0c\x9c\x53\x40\x4d\x5a\xde\x65\xb8\xa9\x20\x2c\x3c\xe4\xb7\xce\xb4\xf0\x98\x1f\xdc\xb7\x85\xc7\x85\x73\xfc\x82\xbf\xb6\x49\x57\xb8\x0b\x11\x8b\x30\x08\xd0\xa5\x88\x16\x75\x20\xd9\x55\xc7\xb3\x19\xfd\xc8\x91\x5a\x61\xc2\x1d\xb0\x17\xef\x49\x1f\x1c\xe8\xb1\x8e\x7b\xa3\x39\x42\x30\xc1\xf4\x29\x39\x7a\x5d\x42\xd4\xf2\x78\x4a\xe4\xf1\x94\x7f\x6b\xda\x5c\x14\x85\x2b\xc3\x01\xc2\xd9\x3f\x23\x3c\x71\x78\xce\x7d\xcf\x66\xe1\xc4\xd0\xcb\xe6\x17\x19\x46\xf9\x73\xc1\x58\xba\x40\x76\x71\x93\x48\xe9\xc5\xe8\x6b\x16\xb6\xb9\x81\x4d\x01\x8b\x1c\xbb\x52\x0e\x91\x50\x4b\x19\x76\xb3\x50\x08\x60\x8f\xdc\xd9\x19\xc4\x6c\x06\x06\x10\x08\x58\xd9\x7c\xd6\xa2\x30\x86\x36\x8d\x7b\x54\x47\xcf\xd7\xa1\xe2\x68\x51\x82\x4c\x45\x03\x74\x5d\xc9\x7d\x91\x57\xf3\x96\x5e\x61\x74\x1e\x8d\xf7\x0d\x77\x84\x73\xde\xc8\x23\x3e\xa1\xa9\xd0\x43\x78\xf3\x96\x47\x98\x52\xa9\xe7\x3b\x7f\xe3\x0d\xc3\x7d\x3d\x4b\x86\x2e\x1f\x0a\xf3\x29\x12\xc4\xc0\x33\x99\xb1\x41\xe6\x7d\x20\x8b\xf4\x3a\x0d\xc2\x46\xad\x17\x53\xee\x4b\xd5\x4c\xc7\xa7\x9e\x48\x38\xa5\x4d\xe5\x1d\x74\x17\xae\x7b\x7f\xaf\x91\xe8\x86\xde\x2d\x0e\x95\x4c\x1f\x6a\x14\xce\x71\x8d\xc9\x9f\x20\xff\x93\x5e\x99\x1f\x14\x42\x2e\x6f\x00\xbd\x7e\x91\x61\xcd\xb8\x0b\xe4\x34\xc0\x24\xac\x9a\x84\xbc\x6d\x8f\x33\x06\x4a\x05\xa2\xe7\x85\xa5\x74\xe4\x54\xf0\x5b\xa5\xc5\xc8\x18\xb1\xb5\x1a\x16\xdb\xc3\xf9\xfa\x1a\xb6\xb1\x1c\xa9\xe0\xa4\xcb\x77\xda\x1b\x19\x55\x5e\x20\x9a\x25\x63\xd0\x3b\x0e\xd4\x6e\xa4\x09\xbf\xf2\xfe\x19\xe5\xe9\xa3\xc4\x97\x8c\xee\x2a\x3e\x78\x1e\x85\x5a\x79\xbe\x40\xca\xcd\x9e\x0b\x05\xa6\xa1\xf0\x5b\x5d\x1f\x4d\xa1\xad\xf1\xb8\x6d\xef\xe4\x17\xd5\xdd\x1b\xba\x20\x59\xe4\x48\x19\x2e\x98\x0d\x4e\x1d\x67\x3c\x98\xb8\xca\xd5\x25\xaf\x89\xb3\x64\x48\xef\x31\x2d\x25\x9c\x8e\x75\xab\x5e\x68\x8a\x7e\x89\x02\x67\x2c\x5c\x10\x0e\x4e\x9d\xb1\x5a\x35\xbd\x69\xce\xd0\x43\xeb\x9d\x16\xeb\x15\x22\x52\xfa\xd0\x9a\x6f\x8b\x35\x0b\xc9\x2a\x7a\x68\xcd\x17\xc5\x9a\x0b\x57\xe6\x59\xf0\xd0\x16\xca\x3d\x17\xa7\xe7\x59\x3c\x04\xb9\x46\xf6\xed\x75\x22\x44\xf4\xe7\x30\x1b\xa1\x68\x86\x53\x54\xf5\xad\x0b\x94\x17\xa5\x36\xe4\xd1\x74\x36\x6f\xd9\x82\xf8\xb2\xbe\x7e\xb9\x8b\xce\x46\x2d\xeb\x17\x5f\xd6\xd7\xaf\x6e\xd4\xb3\xac\x65\x13\xca\xc7\x85\x56\xc6\xaa\x0d\xf1\x18\xd4\x19\x54\x9f\x83\xe3\xe5\x78\xd0\x2c\x78\xa5\x33\x4e\xd1\xb4\xb1\x2f\x27\x29\xdc\x91\xbf\xf9\x67\x5f\xc7\x8f\x73\xfc\xe7\xd7\xa3\xcf\xbf\xfd\xfc\x93\x59\x71\x13\x8e\x6c\xc0\xfe\xc3\x13\x6e\x88\x8f\x1b\x83\x48\xef\x1a\x7c\xe1\x7d\x60\x8f\x23\x18\x87\x19\x14\x7e\x8b\x7b\x55\xee\x82\xbd\x9e\x01\x29\x59\x76\xa2\x21\x56\x72\xf3\xc4\xff\x76\x19\x33\xae\xe8\xd3\xf1\x8e\xae\xb7\xc9\x6b\x67\x17\xf4\xfc\x21\xb0\x89\x60\x22\x62\x88\x9e\xd9\xc0\xb6\xcb\x2a\x2b\x23\xbc\x30\x1b\xb0\x52\xd5\x0a\x8e\x98\xa2\xff\x33\x63\xd7\x5f\xb1\x5e\x45\x90\xa5\x71\xe7\xb5\xb2\x18\x31\xf2\x90\x3a\x0e\xaa\xc7\x9c\x45\x63\xcf\x3c\xeb\xc3\x04\xde\x5a\x59\x70\x05\xad\xdb\x74\x6e\x65\xe9\x14\x5a\x38\x9a\x42\x9a\x21\x1e\x8e\xc7\x29\xc2\xe4\xc5\xc7\x3f\x21\x68\xcd\xb3\x28\xb9\x14\x39\xe0\xc7\x29\x22\x7f\x92\x6d\x68\x8d\x61\x80\xe7\x08\x66\x5e\xf5\x0c\x54\x40\x5a\xe7\x48\x85\x34\xe0\xfd\x12\xa5\xf3\x59\xc9\x23\x4b\x3a\xd7\x91\xdd\xc7\x12\x48\xcb\x04\xfc\xb6\x35\x09\xb2\x0e\xe4\x09\xa2\x0d\x0a\x31\xbb\x79\x9e\xb1\x5e\xf7\xeb\xfb\xe9\x31\x3f\xac\x1d\x70\xa6\x2a\x11\x6b\x9d\x1e\x35\x48\x82\x5d\xd0\x07\x25\x5f\xe0\xee\x10\xd8\x67\x62\x63\x0d\x75\xd7\xd5\x9e\x6c\x4f\xd9\x79\xc3\x12\xb4\x25\xaf\x71\x5f\x59\x09\x6d\xa7\x9a\xea\x28\x38\xc8\x16\x30\x10\x7a\x65\xcf\x3f\xff\x30\xf7\xa2\x54\xaa\x92\x15\x9d\xd9\xd2\x5f\x5b\x80\xc9\xf0\x07\xc3\x86\x20\x9a\x8d\xfd\xb3\x76\x6a\x5d\xb1\x9a\xa7\xcb\x5b\xc3\x1a\xed\x80\x1e\xb0\x6d\x39\xbe\x49\x14\x86\x30\x31\x0d\xb0\x3a\xa0\x72\x99\x93\x99\x46\xae\x39\x14\x3f\xb9\x54\x3b\x18\xde\x60\x33\x4e\x60\xaf\x6f\xd8\x97\xb9\x47\xa3\xea\x4d\xc9\xca\x44\xd9\x3b\x14\x65\x38\x4a\xa0\x21\x89\xa8\x61\x1f\xd7\xa4\xc0\x33\xf9\xb7\x8a\xd0\xbc\x2a\x74\xbf\xc2\x22\xf4\x58\x22\x5a\xd5\xeb\x52\xac\x8d\x2f\xfd\x54\xed\x33\xf2\x72\x68\x0b\x02\xb3\x83\x39\x4e\xc7\xe9\x68\x4e\xa1\x08\xe4\xdf\x92\xca\x59\x03\x26\x22\xaf\x02\xfa\xa0\xf3\x5b\x43\xae\xa2\xeb\x70\x5a\x79\x98\xfc\x1c\xdc\x44\xd3\xf9\xd4\xf2\x7b\x07\xd6\x68\x12\xa0\x60\x44\x96\xda\xb3\x7e\x0e\x6e\xad\x34\x89\x6f\xad\x28\x19\xc5\xf3\x10\x5a\x31\xc4\xe4\x8d\xe5\xcc\x67\x33\x88\xa8\xae\x36\x48\xc2\xed\x14\x59\x71\x7a\xcd\x1e\xb8\xe2\x49\x32\x27\xac\x05\xa9\x65\x9e\x61\xeb\x02\x5a\xf3\x24\xfa\x6d\x0e\xbd\x6a\xcc\xc4\xe2\x45\xb7\x7e\x2a\x69\x7f\x1e\x4b\x5a\xc1\x28\x4d\x2e\xb5\x53\xd6\xd0\x23\x6a\xc7\x8b\x42\x26\x5e\x37\x4e\x42\x57\xe5\xae\x69\x06\x98\xed\x02\x65\x5f\xb5\x23\xf0\xf7\xf3\x18\x66\xf2\x6d\xc0\xa9\x6e\x4f\x10\x2c\x9f\xef\x1d\x25\x16\xfe\xf9\xdb\x93\xd3\xf3\x5f\xde\xbf\x96\xd1\xad\xf6\xf6\xe5\x3c\x0a\x61\xb6\x1d\x8c\x62\x6f\x82\xa7\xf1\x7f\xa0\x79\x0c\x3b\xd9\x0c\x8e\x64\xcc\x61\x4e\xec\x08\xc6\x36\x61\x98\xe2\x99\x95\xa4\xe9\x0c\x26\x10\x59\x49\x8a\xe0\x18\x22\x24\x91\x4a\x6d\x19\x56\x73\x7e\x11\x07\xc9\x27\xb5\xc7\xce\x4f\x27\xaf\xad\x97\x34\x85\x96\x2b\xe7\x67\x29\xc9\x54\x5e\x33\x36\x57\x89\xcb\x38\xee\x95\x73\x6d\xe7\x13\x7d\x40\xf8\xf8\x10\x76\x60\x18\x61\x42\x09\xdc\x6d\x16\xc1\x20\x24\x7b\x47\x8d\x16\xca\x6e\x13\x1c\xdc\x30\xcf\x77\x79\x92\xd0\x2c\xb5\xe6\xe3\x9c\xae\xd7\x30\x9f\xfb\xc9\x28\xae\x3d\x1a\x1a\x55\xd3\x14\x84\x55\x31\x9b\xd2\xa4\x94\x86\xa9\x23\x7c\x37\xf3\xf4\x06\x92\x01\x17\xd9\xcc\xc5\xf4\x8b\xb3\x71\x2d\x19\x64\xdb\x2c\xb5\x16\xaf\xff\xc7\x3a\x37\x5e\xe7\xe2\xbc\x29\xc2\xd5\xa3\xac\x69\xb3\x69\xce\xa7\x94\x6a\xdf\xcb\x31\x78\x74\xb2\x3f\xc1\x5b\xc6\xfe\xeb\x53\x68\xe2\xff\xe9\x64\xd1\x0e\x6a\x3c\x43\xb3\x15\x12\x17\xbf\xac\x64\x7d\x8b\x55\x91\x56\xa9\x6e\x08\x8f\x78\xab\xb1\x26\x56\xb9\xd6\x56\x65\x25\x57\x3f\xdb\xd7\xb1\xe1\x75\xb0\x22\xe6\xa2\x91\xce\x11\x39\xe1\x94\x68\x52\x15\xca\x89\x10\xdb\xf6\x7f\x6d\xff\xd7\x36\x29\x3c\x82\x09\x1d\x59\x9d\x90\x72\xc0\xfb\xdf\x1f\x9a\x05\x13\x52\x8f\xad\xa4\xed\x6d\xca\x0f\x28\xb1\x9e\x55\x80\xfc\x45\x7e\xe0\xb9\xec\xb2\x91\xed\xad\x0b\xe3\x12\x11\x59\x32\x5a\xeb\x65\x04\xe3\xd0\x1c\xc8\xf5\x2e\x0e\x46\x70\x92\xc6\x2c\xba\x22\x8f\xfa\x2a\xc6\x77\x72\x1e\x4a\x9b\x1c\x20\x1f\xf2\x82\x3b\xca\xf2\xab\xfd\xe7\x37\x8e\xf2\x21\x91\xf0\xad\xc0\xca\xd7\xc5\x4a\xb4\xaa\x4c\x7b\x55\x9f\x92\x55\xd1\xca\xf3\x78\xa8\x7e\x39\x6b\xb1\x39\xbb\xfa\x03\x13\x6f\x55\xab\x47\x24\xbb\x98\x5e\x5e\xc6\xf5\xf9\x1a\x8a\xe4\xf1\x0f\xea\x4b\xa8\xd2\x75\x15\x95\x2c\xd3\x57\x54\xc9\xb0\xaa\x9c\x14\x65\xa7\xa3\x74\x06\xc3\x61\x8d\xfe\x40\x3d\x08\x24\xcb\x9f\x23\xa3\xc9\x0f\x5a\xe8\x0e\xaa\xc4\x2a\x5a\xd5\x45\x7a\xd3\x44\xb4\x2a\x4e\xdc\x71\x1c\x57\x4f\x55\x2d\x1c\xbc\xe1\xc0\x37\xe9\xfa\xea\x95\x7c\x4f\xed\xe4\xaa\x8b\x04\x13\xd3\xdc\xc9\x35\x77\xb9\x4a\x2f\x7f\xb6\x92\x3a\xae\xff\x40\xe9\xaf\xee\xb4\x2d\x91\x47\x55\x52\x86\x3a\x92\xcf\x0f\x9b\x2c\xa7\x7a\xa6\x50\xeb\x15\xd5\x0a\xf5\x9b\x41\x04\x75\x2a\x9f\x81\xf2\x29\x99\x33\x0b\x5f\x7e\xaf\xd4\xaa\x2b\x0b\xa3\x5d\x9a\x5d\xa1\x7c\x24\x0a\xa4\xbe\x86\xa4\x51\x39\x2f\x6d\x48\xa5\xcc\x9c\xec\x2a\x7f\xef\xa8\x37\x1a\xcf\x83\xff\x6d\xd3\xa4\x2f\xc4\xfa\x3c\x9b\x44\x4e\x44\x5f\x91\x7a\xfc\x55\x89\xc6\xc8\x93\xfa\xb5\x4c\x29\xfb\xbf\x76\x9a\xd2\x36\x4c\x6c\xeb\xe0\xeb\x55\x74\x44\x95\xfc\x20\x37\x98\x46\x69\x62\x39\x6f\xe9\xbf\x41\xec\xd6\xe8\xa5\x48\xfd\x01\x82\x41\x15\x2d\xe5\xf5\xe9\xb4\xc4\xa4\x27\xe5\x75\x7e\xcc\xb5\x54\x81\x1a\xc2\x85\x9b\x29\xdd\xf4\x35\x5d\x02\xb3\xc6\x45\x4d\x8e\x3f\x23\x23\x83\xb5\x8b\xd3\x1e\x47\x49\xd8\xb9\xb8\x65\xb1\xc1\x22\x30\x58\x38\x92\xc9\xb0\x62\x73\x30\xb0\x60\x7e\x48\xb1\x60\xc6\x6a\xa1\xa6\x55\x2a\x85\x49\x67\x66\x15\xee\x8d\x06\x1f\x4b\xf5\x0b\x9b\x99\x0c\xe2\x0e\x75\x89\x95\x44\x45\xd5\xcc\x71\x9c\x5e\xbf\x12\x82\x51\x31\xc1\x68\x12\x72\x40\xc4\x16\x4e\xd2\x25\xbb\x76\xe3\x28\x64\xe9\xc3\x92\xc7\x1f\xdf\xce\xe0\x91\xcd\x6a\xb4\x41\x42\x1b\x15\xbf\xb4\x9e\x53\xe7\x4b\x22\xfc\x53\x80\x01\x9a\x33\x55\xf6\xc2\x1e\x02\x31\x85\x47\x9b\xfe\x0a\xd1\xc9\xc5\x0c\x18\xf9\x82\x14\xd3\x9f\x13\x22\xf0\x94\x53\x92\x7b\x19\xda\xee\x0f\x5d\xee\xd8\x23\xe7\x7e\x70\x76\xc7\xc6\xc3\xed\xc2\x40\xbc\x39\xb2\xed\x05\xe0\xef\x4e\x99\x5e\xcd\xca\x17\x28\x2f\x55\xd2\xb9\xc9\xaf\xde\xa4\xa1\xf9\x13\x5d\x0a\x5e\x0c\x17\xb5\xd9\x57\x31\xba\x5d\x3e\x39\x3c\xc4\x13\x69\x8e\x93\x62\x82\x40\x32\x40\x22\x6f\x04\xe9\x9a\x70\xef\x4e\x98\x77\x37\x5f\x24\x85\xbb\x3f\xc2\xcf\x4a\xd9\x73\x84\x4b\x8d\x7a\x25\x17\x26\x9e\x06\x80\x03\xed\xd2\x76\x8b\xcb\x66\x28\xc3\x12\x9e\xbb\x47\xce\xf2\x92\x9a\x3f\x9a\xf2\xa6\x4c\x1c\xc6\xee\xb2\x86\x6a\x08\x69\x13\xbb\x1b\x17\x08\x06\x9f\xa4\x4b\x3b\xcf\xe7\x42\x95\x2d\x0e\xe2\x29\x78\x4a\x50\xdd\xf4\x29\x21\x72\x9a\x46\xa2\x6d\x9c\x3b\xdf\x24\x4c\x2a\x4f\x0d\xb9\x24\x2a\xdc\x50\x46\x93\x88\x1c\x12\xfa\x67\x25\x37\x14\x15\xf9\xbf\x6d\x98\x21\xfa\x06\xc2\x0c\xd1\xff\x99\x30\x43\xf4\x6d\x87\x19\xa2\x6f\x23\xf3\x44\x5a\xef\x70\xf5\x0f\xf8\xaf\xc9\xf8\xdf\xbb\xa7\x66\x87\x2b\x81\x82\xc7\x76\xb0\x0d\x6f\xe0\x88\x7a\x4f\xda\x23\x32\xcb\x31\x4d\xa5\x4e\x91\x22\xd9\x9e\x1e\x47\x88\x14\x67\x9a\x3a\x5b\xe4\xc1\x6b\xe4\x9b\x75\x40\x18\x0a\x75\xff\xdb\xe0\xec\xcc\xa7\x72\x95\xb0\x7a\xcc\x52\x1b\xd8\x3f\x52\x1e\xe5\x47\xc9\x85\x08\xac\xdf\x1f\x67\xba\xca\x8f\x41\xa8\x08\x10\xbe\x43\xa6\x40\x3f\x60\xff\xec\x12\x06\x8d\xdf\x8f\xf6\x29\x55\x18\x52\xdf\x20\xf1\x8c\x7e\xb2\xd7\x0e\xb7\xcf\x3f\x00\x87\x66\xdc\xbd\x5a\x00\x7a\xce\x42\x37\x57\xf8\x1d\x93\xeb\xd2\x0a\x12\x0b\xde\x50\x8b\xf3\x25\xef\x75\x1b\xb4\x9d\xda\x1e\xb1\x20\x95\xa6\x5d\xca\x75\x23\xbd\xae\xc9\x35\xce\x88\xf2\xdf\xc0\x00\x66\x9e\xd2\x76\xd6\x9d\x3a\x31\x45\x4f\x32\xcb\x12\xa8\x26\xf0\xba\xc3\xef\xae\x1a\xd5\x65\xb5\x2c\x73\x42\x67\x8e\x9e\x5c\xb3\xdc\x2b\x6f\x89\x46\xce\x56\xf1\xdd\xf8\xf2\x68\x89\x85\xa5\xfa\x9b\xa6\xc5\x93\x56\x28\x55\xb4\xf3\x15\x79\x85\x16\x92\x1a\x17\xc3\x90\xda\xe9\x96\x1b\x10\xcc\xaa\x99\x62\xc5\x34\x4e\x7a\xea\x24\xbe\x81\xd7\xaa\x4f\xa3\x49\xc4\x6e\x04\xec\xd5\xa0\xe3\xab\x25\x68\x95\x26\x8a\x5c\x12\x10\x35\xb3\x1f\xea\xe1\xc4\x0e\x2b\x2a\x53\x70\xa6\xfb\x95\x6a\xe6\x24\xe7\x4c\x5f\x9e\x49\xca\x09\xe5\x9b\x60\x3c\xd7\x3d\x7e\x91\x51\x75\xe5\x95\xd3\x81\xcc\x4a\x88\x65\xfe\x81\x1a\x9c\x1b\x5c\xe5\x2a\xc2\x7d\xfe\xef\x5e\xc9\xf8\x59\xa6\x68\x0d\x84\x12\x18\x69\x1e\x41\xe6\xba\x5b\xd6\x72\xc9\x78\x66\x05\x64\x2d\xd7\x95\xe9\x41\xda\xa4\x5f\xd4\x97\xe7\x34\xb8\x12\x88\x63\xf9\x43\xc5\xc1\x47\x7d\xcc\xf9\x12\x55\xcb\x29\xdb\x2a\x6a\x9d\xb2\xf9\xc5\x34\x2a\x2a\x47\xf2\x03\x74\xa7\xa2\x17\x0f\xc3\x1b\x5d\x11\x04\x6d\x99\xe7\x50\xc3\xb3\x30\x48\x42\x8b\x0a\x78\x15\x9b\x79\x59\x8a\x61\x5f\x23\xb2\xbd\xea\x85\x34\x2c\x9e\x69\x21\x7a\xcc\xdf\x92\xd3\x0b\x4f\xd5\xae\x53\xdb\xa3\x92\xa3\x32\x41\x8c\x81\x6a\x7a\xc6\x1d\x18\x36\x79\x6b\x98\x3a\x75\x09\xd7\xc1\x2a\xa4\x42\x91\xd6\x0e\x9a\xaf\x0c\x1d\x79\x56\x8d\xbc\x57\x44\x5a\x6c\xd0\x2d\x3a\xfb\xed\xfa\x74\x00\x6c\x1c\x5c\xcc\xe3\x00\x75\x42\x88\x83\x28\xce\x94\x7b\x37\xcf\xa0\xa4\x30\x95\xcb\xae\x5e\xa9\x4b\x64\x79\x5e\xe8\x76\xf8\x10\x4d\xe1\x51\x08\x33\x11\xc0\x70\x14\x90\x3f\xf9\x49\xb8\x8a\xed\xf7\xd1\x6e\x67\xa9\x6d\x9d\x68\x77\x73\x95\xb7\x6a\xa3\x3b\xa9\x41\x67\x51\x7a\xbd\x72\x4f\x85\x45\x20\xf7\xc1\xef\x09\x3d\xae\x6f\xc6\x9d\x28\x1e\xbd\x2c\x9d\xd3\xab\xe7\xc6\x33\xb7\x21\xe8\xb4\x6d\xf0\x74\x54\xfd\x0d\xc2\x91\x17\x8c\xe2\xcc\x13\x41\x0e\x1e\x0c\x23\x81\xe4\xa1\x37\x3e\x2c\x58\x1c\xaa\xec\x55\x6d\x3d\x9e\xca\x7d\xec\x9b\x1a\x58\xb1\xe5\xe2\x1d\xf1\xa8\xe4\x22\xb6\x6a\x6b\x59\x45\xbd\xfc\xfb\xca\xda\x3f\xd0\x2e\xa2\x75\xbc\x89\x3d\x1c\xd8\x3f\x4a\x7c\x53\xdd\x62\x68\x6f\xdb\xda\xe4\xe7\x90\xb9\xdb\xec\xc4\x38\x20\x7f\x32\x26\x74\xdb\x4c\x3f\xc6\xcb\x49\x43\x7a\x66\x9e\x61\xf5\x96\x75\x22\x3e\x7d\xa6\x6c\xf2\x52\x49\x4c\xb1\x3c\x35\x9a\xe0\x75\xba\x4b\x2a\x0c\x4f\x5d\x04\x8b\x2c\xa4\xb1\x61\xb9\x52\xf5\xa8\x92\x1d\x51\xbe\x0d\x6b\x1a\x50\xaf\xb8\x92\xbf\x50\x3b\xc0\xe0\x06\x66\xa5\x66\xfb\xfc\x41\x33\x92\xad\x71\x4a\x72\xc7\x01\x1b\x58\x66\xaf\x02\x3f\x77\x58\x2c\x9c\xdc\x05\xae\x7e\xbd\x13\x59\x66\x6d\x57\xb0\x71\x16\x3f\x5d\xcd\x17\xbe\xff\x4d\xfa\xc2\x37\xda\xf0\x6b\x76\x85\xb7\x9a\xfa\xef\x4a\x87\x69\xe9\xa6\xcb\x33\xca\x36\x75\x53\xee\xb5\xf4\x46\xdf\x1d\x96\x6e\xce\x35\x3a\xa3\x7f\x85\xc3\xf5\x8b\x4e\x74\xad\x3b\xf8\x23\xcc\xea\x83\x46\xaa\x66\x64\xc9\x87\x0c\x4a\xe7\x99\xee\xba\xdd\xd3\x7c\xb9\x2b\x5d\xb1\x57\xf0\x68\x6e\x72\x16\x56\xa4\x8f\x36\x4c\x01\xd5\xe8\xd3\x53\xa5\xa8\x8e\x14\x7a\x7f\x32\xec\x63\xc4\x23\x71\xe7\xfc\x8f\xeb\x20\xa1\x26\x1a\x06\x56\x43\xe1\xa5\x44\xea\xc7\x31\x4a\xa7\xec\x01\x4e\x3f\xc1\xe4\x59\x7b\xed\x93\xd5\x46\xbb\xb5\x5a\xf5\x26\xed\x43\x4f\x51\x1e\x33\x34\x2e\xa9\x4f\xc8\x0b\x99\x14\x0a\x34\x03\x84\xcd\xa6\x42\x73\xcc\xca\x85\x3e\xe5\x8e\x60\xc5\xaa\xaf\x5c\x13\xf7\xbc\x57\x93\xda\xa0\x09\x1b\xcd\x75\xe1\x0f\x98\xa9\xca\x18\xef\x52\x49\x3a\x01\xbb\x8d\x13\x31\x3c\xf6\xd2\xf4\x0d\x9a\x19\x46\xf5\x9c\x78\x6b\x97\x62\x49\x67\x46\x52\xc7\xd3\xac\x33\x3b\x2d\xd5\x44\x55\xf4\x90\xa7\x22\x30\x6f\xee\x86\x99\x31\x56\x95\xdd\x96\xa7\x35\x5e\x2d\xcb\x42\xf9\x75\xb5\xfb\x14\x4b\x69\xf5\x8a\x99\x2f\xb9\x47\x53\xc1\x91\x89\x3a\x4b\xc9\xeb\x9b\x8b\x52\xba\x7f\xd5\xaf\x69\x94\x08\xb7\x28\xe9\x11\x55\xc8\xd5\x30\x41\x70\xdc\xc1\xa9\x4d\xad\x48\x53\xe1\xfb\x54\xd4\xf6\x03\xfb\xb7\x39\x9c\x43\x25\xb7\x03\x37\xad\xce\x20\xe2\xdf\x71\x03\xa7\xe6\x2a\x95\xa5\x08\x33\xd7\x2c\xde\x3f\xe6\x2d\xb0\xb2\xfb\x94\xee\x5c\x21\x5d\xa8\xa2\x5a\x17\xaa\xd4\xe0\x42\x45\x3a\x5b\x91\x66\x91\xbc\xca\xc8\xb5\x79\xcb\x5b\xb5\xdd\x82\x8f\x95\xee\x7f\xd5\xc8\xe3\x4a\x5a\x85\x87\x25\x4f\xab\x3c\x97\xe2\xc6\x52\xbf\xa2\x0d\xc5\x9d\x88\xc9\xe6\x1b\x98\x43\x50\x9d\xc7\x51\x86\x09\x8b\x9c\xd1\x44\x82\x18\xdc\x65\xc1\x95\xe2\xba\xc4\x61\x27\xd1\xf7\x0e\x1a\x40\x8f\xbc\x73\x3d\xbe\x78\xbc\x2d\x04\x12\x87\xc1\xb0\xb9\xee\x62\xe1\x2e\x00\x55\x04\x97\x41\xb8\x56\xf4\x0a\xdb\xf4\x69\x95\x63\x04\xb3\xc9\x49\x1a\xc2\x17\x94\x37\x31\x81\x50\x86\xe9\xd4\x93\x6b\xef\xd8\x9e\xc6\xca\x60\xd7\x0b\xa3\xf0\x78\x36\x83\x01\x72\xdc\x05\x28\x64\xda\xd0\xb1\xea\xa8\xcf\x52\x32\x80\x1e\x2d\xb5\xa1\x42\xcf\x27\xec\x59\x26\x20\x13\x37\x18\x16\xb1\x78\x7c\xd6\x1d\x82\x74\x20\xa2\xb9\xa2\x01\xf2\x98\xb6\xa6\x84\xc5\x29\x10\xc7\x19\xd2\x9a\xfd\x32\x88\x62\x18\x12\xe6\x61\x16\xa0\x0c\x5a\xc7\x27\xaf\x2d\x44\x2b\x71\x8f\x4c\xe5\x85\x63\x08\x27\x3f\x61\x79\x75\x8f\x8c\x8d\x33\x67\xa8\xba\x7a\x98\xed\xf1\xc8\x3a\xe6\x7f\x31\x14\x12\xca\x6f\xd2\x3a\x99\x7b\x75\x34\x88\x24\xf6\x5f\x83\x2f\xf3\x66\x8e\x6c\xf7\x3b\xdf\x5d\xa4\x5b\x5b\x98\x90\x19\xf3\x6e\x49\x41\xe4\x2a\x4e\x73\x44\x52\x2b\x53\x4d\x69\xe5\x1d\x08\xa0\x70\x83\x9b\x05\x08\x26\x22\xd1\xa8\x5b\x74\xd9\x8a\x1a\xb8\x6c\x15\x93\xbd\xeb\xfe\x5a\x39\xfb\x90\xfd\xe1\x91\xf5\x87\x47\xd6\x1f\x1e\x59\x8f\xe8\x91\xf5\xf2\xf8\x45\xfa\x62\xff\xf0\xd6\xec\x91\x25\x35\xc7\x9f\xe0\x2d\xc5\xa3\x55\xfe\x3c\x61\xf6\x77\x3b\x40\x51\xa0\x72\x3c\xd4\x23\x7b\x16\x51\x6f\xad\x64\x6e\x53\x4b\xb4\x0d\x6c\xee\x11\xd2\xc8\x3d\x2b\xf7\xfb\x3f\x00\x7e\xd7\xe4\xe8\x54\x4a\x07\xaa\x9e\x29\xb4\x00\xcf\x3f\x68\x88\x0c\x38\x60\x7d\x66\x45\x85\x7c\xf2\x09\xde\x5e\xa4\x01\x0a\x8f\x47\x23\x32\x4c\xee\x2f\xd1\x38\x81\x9e\x1e\xb8\xa5\xe9\x18\x77\x73\x3d\xc8\xcf\x30\x99\x73\x2e\x91\xfc\x79\x0a\x09\xc7\xc9\xf8\x0c\x3d\x74\x42\x1b\xce\x36\xf9\x4f\x87\x72\x70\xb4\x33\x62\x88\xa6\x16\x82\x30\x3c\x9d\x5f\xf0\x89\x67\x32\x45\xfe\x3b\xf7\x99\xa3\xbe\x13\x1f\xb8\xbb\x54\x71\x49\x87\xc5\xac\x8d\xcc\xe0\xa8\x54\x5d\xd4\xf9\xef\x69\xf6\x68\xb5\xd1\x92\x81\xb2\x38\xb8\x0e\x37\x49\x0e\x81\xdd\xb1\xd5\x44\x86\x5d\x70\x96\xd3\x0c\xf3\xf5\x18\x4a\x29\x8a\x43\xa9\x2f\x99\xb2\x4c\x99\x5f\x01\x98\xd3\x22\xf0\xa9\x72\x19\x73\x7f\xad\xca\x8e\x36\x6d\xc9\x60\x83\x62\x75\x75\xb8\xf8\x26\xe8\x33\x0f\x49\xd2\x02\x1c\x8b\xc1\xa2\x3b\x39\xd4\x14\xbc\x99\x05\x89\xc8\xb4\xab\x85\x1c\x17\x83\xea\x7c\xf3\x4a\x16\x83\x51\x56\x89\x16\xb6\x57\x4a\x32\x2c\xa6\x93\xfc\x3e\xac\xf1\x4d\x2a\x39\x06\xed\xf0\xad\x3d\x09\xb2\x59\x3a\x9b\xcf\xc4\x21\x24\x9d\x86\x3e\xc1\xdb\x30\xbd\x4e\x58\xd5\xbd\x61\xd9\x99\xa8\x6a\x3d\x65\xe2\x7b\x36\xb9\x54\x51\x1f\xc3\xf0\xcf\xb7\x79\x64\x0f\x6d\x79\x94\x26\x18\xa5\xd4\xa2\xcf\x8b\xca\x27\x0a\x06\xd7\x92\xb4\x89\x7c\xd6\x54\xe1\xac\xa8\x46\x31\xfb\x3a\x36\x8f\xde\xa6\x07\xeb\x19\x53\x8f\x88\xdc\x8e\xc6\x9e\x34\xf6\xff\x6a\x20\xbc\x1f\x96\xe5\x72\x65\xb8\x74\xcf\xce\x82\x04\xc6\xd4\x1b\x77\x4f\x99\xee\xc2\x1c\xee\xf1\xc9\x16\xab\x70\x71\x6b\x57\xaf\x8c\x28\x2c\xf7\x83\x69\x87\x70\xb7\x5f\x2a\x4b\xf2\x84\x18\xcc\x41\xee\x8b\xd0\x3b\xbf\x89\xfa\x3d\xb0\x5f\x4b\xed\xcb\x9c\x69\xf3\x59\x5a\xd1\xc7\x4e\x0d\x9c\xf4\xdb\x1d\xda\xc3\x26\xe1\x8e\xca\x1d\xa9\x26\x07\xd6\xc2\x59\xa5\xb1\xf8\x70\x6d\xe0\x56\xab\x0c\xab\x9c\x8f\xba\x10\xff\xc9\xbc\x8a\xc4\x21\xd9\x74\xfc\x0d\xb2\x2e\x2f\xd5\x45\x89\x39\x94\x08\x01\xbd\x15\xe7\xe6\x91\x7c\x6d\xdb\x1d\x31\xac\x34\x1b\x91\xc9\xab\xdb\xd8\x8b\x07\xc0\x9d\x36\xd6\x47\x3e\xc0\xdf\xad\xf1\x14\xb3\xdb\x69\x45\xaf\xe0\xaa\xfb\x01\xd8\x3f\xd2\x9e\x65\x79\x13\x45\x7c\x91\x76\xdc\xd8\x2e\x77\x1c\xee\x81\x7e\x0d\x73\xf6\x40\x3c\x91\x75\xdf\x48\x8d\xbc\x7e\xea\x1d\x00\x5b\x64\x26\x2e\x6b\xc0\x2b\x13\xf7\x1a\x7c\x0c\x97\x65\x02\xd2\xd4\xb4\x97\xf3\x28\x54\x55\xc4\xf9\xc5\x66\x17\xa4\x18\xae\x76\x96\xda\x63\xa1\x15\x96\xd7\x1c\x73\x13\x86\x09\x45\x6b\x34\x47\xee\x4e\x82\xec\x27\xb6\x03\x81\x9d\x41\x1a\x4c\xcb\x08\x9a\x93\x18\xcf\x40\x24\x72\x01\x2b\x39\x65\xdb\xe8\x8b\x8b\x0a\xa1\xc6\xca\xe2\x8a\xac\xbf\x52\x87\x0c\xd4\xfc\xbf\x61\x3a\xad\x50\x23\xb3\x0c\x32\x62\x26\x8f\x36\x7d\xa0\x4f\xe5\xd1\x66\xb7\x22\x7b\xb0\x98\x4b\x52\xff\x8a\x49\x83\xc9\x82\xe6\xd9\x3a\xc8\x2f\x47\xc9\x20\x20\x56\x68\x40\xce\xb2\xeb\x28\x8e\xdf\xc3\x24\x84\x5a\xba\xe2\xa2\x1a\x57\x59\x33\xd6\x85\x28\x7b\x0f\x2f\xa3\x0c\x43\x04\x43\x47\x9c\xa8\xae\xaa\x06\xcc\xa5\x3b\x4d\x19\x58\xac\x39\x27\x17\xad\x6f\x1e\x23\x46\x07\xba\x54\x6b\xac\x48\x80\x55\xba\x5e\xf9\xa5\x50\x56\x42\xf7\x7b\x9a\x0f\x43\xe6\xb5\x90\x25\xb2\x19\xd5\x71\x61\xe0\x97\x15\xd6\x15\xfd\x21\xdd\x30\x44\x03\x4b\x0d\x26\x97\xa6\xee\xef\x13\x47\xce\x3b\x64\xfa\xcc\xcc\xb1\xcf\xa2\xf0\x7f\x07\xfa\xb1\x28\x06\x28\xd7\x0b\xd8\x43\xdb\x75\x2b\x92\x7f\x42\xd1\xc0\x60\xd3\x5f\x88\x0c\x53\x32\xee\x15\xba\x0b\x40\x76\x52\x39\x45\x15\x4c\xc2\x63\xfa\xa4\x22\x4e\xf9\x61\x9a\x56\xa9\x46\x68\xad\x73\xfd\x22\x60\xec\x07\xf0\x30\xf8\xeb\x7c\xff\xad\x59\x13\x45\xf6\x35\x4a\x82\xb8\x31\xf6\x7a\xaf\x8c\x34\xe7\xfb\xc0\x8e\x23\xae\x33\x12\x18\x3c\x49\x9a\x40\xae\x30\xea\x57\x79\xec\xca\x90\x8d\xdd\xf6\x4e\x2d\x65\xd7\xae\x5d\x1e\x02\x56\xf0\x98\xa4\xae\xb1\x52\x47\x23\x02\x3f\xba\x7a\xca\x7d\xd1\x6b\xb2\x96\x42\x23\xc4\xdc\xaa\x2e\x44\xd8\x64\xc7\xd7\xc4\x5d\xae\xb6\x23\xd2\x0c\xa9\xbf\xa0\xea\x19\x56\xaa\xc8\xea\x84\xcf\x86\x71\x84\xf9\x2a\x34\xf0\xfe\x2f\x83\x5c\x18\x51\xd0\xa5\x38\xdf\xaa\xd3\x3a\x47\xa4\x7a\x9a\x54\x70\x46\xb4\x37\xba\x4b\x4a\x10\x43\x84\x99\x06\x4e\xea\x0b\xec\x62\x74\x9c\xaa\x32\xda\x51\xed\xed\x0a\x97\x3e\x04\x15\x25\xe8\xfa\xab\x9a\xb9\x12\x08\x74\x4b\x92\x69\xce\x93\xad\xba\x54\x2d\x1c\xc9\x44\x97\xf7\x5b\xed\x21\xf6\xad\x0a\x71\x74\x20\xeb\x01\xf6\xd1\xf6\xf6\xea\x80\x32\x81\x81\xb4\x1a\xec\xa9\x42\xdc\x59\x8b\x35\x14\x0e\x98\x3b\x74\x0e\x68\x75\x42\x39\x50\xcc\xe0\x49\x38\x70\xe9\x21\xa9\x4a\xa0\xd4\xcb\xd2\x54\xda\xec\x73\x69\x08\x44\x58\xef\x1e\x2f\x44\xdb\x94\xce\xdd\x46\xbc\xf8\x52\xa2\xf2\x2b\x7c\xd1\x4a\xa4\x56\xd6\x07\x9a\x16\x57\x28\xeb\x72\x28\x47\x83\x47\xb0\x8d\xd1\xbc\x00\xe6\xd4\x90\x24\x2a\x0f\x01\x55\x57\xcb\x84\x28\xf1\xed\x50\x53\x91\x53\x4a\x36\x06\x74\x55\xd7\xaa\xe6\x7e\x65\x91\xf0\xc3\x4a\x8a\x6c\xd2\x56\x51\xad\x53\xa9\xb2\x7c\x0c\x5a\x7a\x5c\x6a\xaa\x73\x6c\x6c\x05\x9b\xa4\x40\x81\x32\xff\x9e\x34\x9d\xe5\x76\x2f\x29\x76\x51\x8f\x20\x21\x7b\x4d\xa8\x6e\x90\xdb\x7f\x3b\x1c\x78\x3e\x93\xf2\x53\x51\xb8\xcb\xaf\x1a\xd5\xa5\xa8\x2c\x81\x9d\xa8\x77\xda\xaa\xa2\x57\x81\x43\x6c\x0c\x7a\xb4\x56\x21\x6c\xcd\x42\xd4\x02\x84\x51\xf8\x8a\x66\xd1\xe5\x1e\x0b\x2b\x54\x4e\x26\xc6\xcb\x45\xa4\x5c\x0c\x60\xd5\x3f\x67\x69\x79\x1f\x58\xbf\x26\x37\x69\x4d\x98\xa5\xbe\xf6\xee\x3d\x45\x3a\x31\x4a\x87\x1a\x77\x44\x7d\x8b\xda\x02\xf2\x54\xda\xe1\x9e\xa6\xe0\xf1\xfe\xf4\xf0\xaf\xe3\xfd\x31\x34\x0b\x1e\xd5\x69\xbb\xfd\x03\xe0\x1b\x84\x8c\xae\x10\x32\x94\xdb\x47\xb5\x44\x96\x93\x51\xaf\x8d\xdb\xf6\x1b\xb0\x70\xa6\xd3\xb1\xf2\x84\x7b\xd0\x41\x52\x58\xf6\x47\x39\x4d\x56\x25\x4e\x76\x72\xff\xe1\x7c\xf4\x87\xf3\xd1\x1f\xce\x47\x5f\xcf\xf9\x08\x7f\xfe\xeb\xf1\xfe\x1c\xfe\xb5\xc2\xf9\x48\xf5\x28\xe2\x3c\xd5\xdb\x19\x66\xa0\xc9\xf4\x4f\xc6\x5e\x35\xc3\x7b\xd2\x1c\x84\xc0\x59\xc1\x6d\x48\x01\x97\xdf\x07\x7b\x46\x6b\xb0\x8a\xd6\xc9\x4c\x24\x31\x1c\xe3\xd6\x28\xea\x9c\xb1\x35\xa4\x06\x34\x8b\xba\x85\x2e\x6e\xa7\x62\x06\x68\x83\xca\x1c\xe5\xe1\xe7\x43\x1d\xd2\xda\x50\x83\x18\x94\x2d\x50\xef\xf5\xc9\x96\x52\x89\x16\x30\xe0\x17\x3d\x47\x0c\x2e\x23\xfc\x33\x5d\x5a\xd1\x9c\x53\x64\x24\x59\x2e\x78\x48\x88\x64\x89\x1a\x54\xf4\x39\x59\x05\x22\xbc\xce\xec\xb6\x92\xf7\x44\x83\xab\x5a\x0a\x04\xab\xe0\x0a\x10\xa2\x90\xb3\xaa\x58\x42\xcb\x34\xcf\x67\xbc\x2f\x03\x39\x86\x6d\xe1\x3a\x1a\x17\x79\x04\x0b\x66\x83\x79\x14\xd9\x17\x7e\x07\xd3\x68\x0c\x98\xa9\xc7\x46\x29\x06\xb0\x2c\x91\x42\xb9\xfd\x4d\x31\xea\x31\x80\x31\x2e\x8c\xce\x63\x1c\xcd\x28\x17\x6a\x36\x06\xaa\x72\x25\x91\x41\x57\xe0\xf9\x54\x6e\xea\xeb\x58\xee\xc4\x28\x8f\x36\x7d\x90\xcd\x2f\x30\x22\xc3\xbc\xa2\x3f\xcd\x66\xbb\x20\x0c\x19\x15\xe8\x06\x2a\x11\x6f\xc0\x04\x23\x4e\x86\xc2\x22\x25\x7e\xd3\x4b\xf4\x14\xe2\xdc\x40\x27\xda\x7b\x06\x3d\x71\x04\xdc\xdf\x6b\xdf\xd0\x30\x0f\xc8\xd2\x31\xba\x47\x79\x31\x11\x0f\x62\x2a\x26\x4c\x69\x86\x8e\xea\x1f\xf1\xbc\xdd\xf9\x77\x39\x24\x2e\x39\x90\x0b\x51\x1b\x2c\x74\xe2\x0c\x0f\x59\x04\x8b\x98\xba\xe2\x28\xbd\x49\x90\x39\xd8\x7d\x66\x6c\x0a\xbb\x47\xe5\x7e\x63\xc2\xdb\x6b\x8f\x8b\xa6\x2f\x29\x9f\x67\x10\xbf\xb8\x22\xf4\x40\xf5\x9f\x9c\xbf\x88\x60\xe6\x40\x70\x27\xa6\x46\x5d\x30\xce\x97\xe0\x05\x10\x6f\x5f\x61\x38\xcd\xca\x91\x39\x89\x83\x28\xab\x28\xf8\x9f\x1f\xba\x82\xe3\x83\xde\xaf\x69\x94\x38\x36\xb0\xa9\x4c\x6b\x30\x10\xca\x90\x96\x86\xfd\xbd\x75\x30\x50\x74\x40\x4e\xb9\xbf\x70\xe1\xba\x0f\x30\xdb\x15\xae\xfc\xb2\xb8\xa2\x09\x28\xeb\x12\x97\x71\x3d\xd3\xf6\xe6\xef\xdd\xbf\xa7\x9f\x9f\xff\xc3\xcc\xb4\xe9\x7e\xcd\xa0\x46\x7c\xe6\x40\x8e\xc3\x1c\x28\xbe\xe0\x13\xdd\xec\xd2\x3f\x90\xbc\x09\xa9\x89\xfc\xd3\x86\x13\x5b\x37\x60\xa6\xcd\xa3\x4e\x77\x28\xd4\xc9\x59\x35\xd2\x54\xbb\xe8\x43\x93\x2e\xb4\x46\x4b\x5e\x13\xa9\x48\x07\x54\x60\xf7\x1e\x76\xea\xeb\xd4\x29\x8f\xff\xa4\xf6\xf8\xc7\x55\xc7\x7f\xa5\x6c\x9f\x90\x9f\x2d\x77\x4d\x94\x26\x4f\x63\xcf\xfc\xe5\xb7\x7f\xc3\x2c\x78\x93\x54\xef\x19\x1e\x16\xc0\x05\x98\xe5\xfb\x66\x47\x31\x00\xca\xef\xdb\xf0\xc9\x8c\xfa\xc5\xde\x39\xf3\xf7\x14\x2c\x2b\xd5\x0a\x12\x65\x1d\x76\xb7\xa9\xa6\x90\x7d\xe6\x3b\xcd\x00\xcb\xb8\x7e\x3a\x4f\x8c\x55\x12\x97\xcc\xc2\x01\xdd\x23\xed\xb6\xd6\xba\xb7\xab\x64\x19\xfb\x2b\xd9\x19\x5a\x6e\xea\x06\xfb\xb3\x68\x51\x90\xdc\xda\x7a\x37\xac\xdc\x18\x6b\xdc\xae\x4b\x79\xb4\x35\xe8\xe1\xd9\x08\x3c\xc9\xbc\x09\x15\xff\x75\x14\xc7\x0f\x56\xc2\xf3\xca\x55\x9e\x4b\xd4\x5f\xc9\x4f\xe5\x0c\x03\x79\x41\x58\x08\xf2\x93\xb3\x61\x8b\xf2\x09\xb6\xec\xde\x47\x38\x88\x3b\xd2\x28\xac\xa8\x25\x21\x99\xd8\x4e\x46\x5e\x05\x18\x56\x7f\xf4\x70\x15\x7a\xe5\x07\x52\xcd\x72\x07\x93\xf9\x94\x69\xb4\x8e\x36\xbb\xe0\x12\x62\x13\xab\x26\xc6\xbd\x58\xb8\x0d\x07\xde\x6e\xc4\xdf\xec\x50\xf3\x6c\x83\x1d\xc1\x7b\x77\xae\x23\x3c\xe9\x70\x30\x6c\xc3\x2c\x68\x1f\x29\x65\xdb\x55\xfc\x3b\x9a\xb0\x65\x93\xb4\xbc\x82\xdf\xd1\x64\x6c\x0b\x75\xd6\x43\x27\x45\x56\xf4\x3b\x98\x9c\x75\xef\xa8\xdf\xd9\x46\x52\x87\x9c\xcd\x2f\x2f\x61\x86\x61\xd8\x11\xb9\x14\xd6\x3b\x5f\xe5\x06\xbe\xfd\x09\x5c\x75\xaf\xfd\x0e\x86\xbe\x7d\x01\xc7\x29\x82\x1d\x99\x22\x77\xb5\x99\x28\x56\xf3\x3b\x98\x98\x87\xce\xc8\xef\x68\x2a\xb4\x04\x29\x2b\x4e\x87\x5a\xc7\xef\x61\x4a\xd4\xe3\x91\x9b\x22\x56\x9d\x99\x72\x55\xbf\x83\x09\x62\xd9\xb4\x3b\x32\xc9\xcf\x8a\x93\x53\xa8\xe6\x77\x30\x31\x0f\xe4\xef\xbe\x71\xb6\x0e\x05\x61\x94\x76\x46\x01\x0a\x9f\x86\x32\xef\xdf\xfd\xde\xc5\xdf\xfa\xff\x0e\x2a\xfc\xc5\x96\x6b\xf0\x68\x1c\x8a\x0c\x07\x61\x9e\xf1\x5c\xff\xe6\x83\x33\x3b\x1f\xaf\x5d\x32\xa1\xfb\x43\x60\x5b\xc5\xcc\xc6\x25\x07\xef\x62\xf8\x84\x29\xa6\x65\xb7\x64\xc2\xdf\x65\xf1\xf3\x2c\xdb\xe3\x70\x28\x6c\xa7\xab\xe1\xb8\x9a\x42\xaf\xfb\xb9\x62\x5c\xe6\x49\xdd\x11\x8e\xed\x4a\xfa\xe7\x1d\x9e\xf1\xd6\x98\x70\xb7\xaf\xfb\xdb\xf7\x4a\x8e\xca\x74\xfa\x9a\x05\x5f\x37\xc9\xe7\x54\x35\x80\x1d\xd0\xa3\xa8\xed\x5f\xb1\xf3\xaa\x0d\x79\x49\x00\x8d\x21\x3f\xae\xc1\xb9\xba\xe4\x1b\xb8\x3c\x32\x95\x87\xd7\xe4\xf0\x24\x0a\xdc\xbc\x54\x5e\x32\xc0\x03\xae\xd2\xbc\x6c\xa5\xbb\x2c\x6e\xfe\x47\xb5\x2f\x34\x39\x87\x9e\x90\x25\xee\x1f\x3f\xbf\xdd\xff\x30\x7d\xbf\x53\x9b\x4d\xef\xfc\x13\xbc\x25\xff\x08\xd0\x09\x43\xc0\xc4\x38\x82\x71\xc8\x93\xd4\xd4\x9e\x23\xb9\x43\x2b\x9d\x8b\x3c\x7d\x3d\x83\x55\x90\x87\x17\x7d\x71\xce\x83\xce\x4a\xe7\x93\x12\x57\xd7\x1b\x96\xb2\x9b\x14\x02\x9c\xd4\x00\xb8\xe6\x71\x3e\x65\x57\x2a\xbf\x14\x41\xc4\x50\x91\xc9\xec\xd0\x6d\x74\x38\x54\xd1\x87\xd4\x57\xfc\x27\x9f\xc0\x6a\x14\x1d\xcd\x00\x61\xfe\xa8\xad\x1b\x53\x29\x70\x30\x0f\x40\x31\xd9\x6a\xba\xa5\x64\xf7\x0a\xde\x8d\x01\xf2\xbe\x6c\xa3\x11\xe5\x4d\x79\xad\xc4\xfd\x44\xd1\x66\xe9\x3a\x5b\x74\x78\x1d\x89\xa6\xa3\x2e\x34\xed\x7f\xc9\xd2\x62\x3c\x50\xfb\xca\x8d\xa0\xa0\xf2\x28\x87\x6a\x79\x0d\xcb\x59\xe9\x77\x55\x44\x5b\x5e\x0f\xc7\xb1\x2f\x5e\x98\x0f\x48\xe6\x5e\x79\x40\xeb\x83\x34\x64\x71\xef\x0f\xcb\x1f\x2c\x0d\x55\x21\x9f\x2d\x4d\xe2\x6e\x3e\xb6\x1b\x7a\x0f\x2d\x81\x0c\xe0\xe7\xbb\x38\xc1\x73\xd0\x81\xdf\x72\x3f\x23\xdc\xa1\xbf\x58\x00\x8b\x40\x9c\x35\xa1\x09\xb4\x3e\xf7\x1f\xc7\xb0\x5c\x8a\xed\xf7\x1f\x2b\x28\x85\xcc\x9e\x39\x28\x45\x5a\x94\xf8\x8e\xd3\x6c\x4a\x7e\x7f\x30\x18\x40\xef\x13\xbc\x3d\x49\x43\xb8\xb5\x25\xe3\xd6\xc3\x28\x9b\x05\x78\x34\xa1\xbe\x28\x4e\x02\xaf\xad\x9f\xd3\x79\x06\xd9\x4f\x6e\x60\xad\x88\x7d\x6f\xe7\xd8\x02\xe5\x92\x6b\xd7\x1a\x63\xdf\x6d\x9b\x74\xef\x19\xbb\xa8\x8e\x8c\x3e\x2e\x0d\x6e\x53\x38\xfe\xc2\xb7\x68\xbd\xf1\x32\x0a\xdf\xc3\x11\x8c\xae\xe0\x31\xe1\xdf\xab\xd1\x15\xf8\x52\xe4\xeb\xab\x9b\xfc\xd4\x49\xc0\xcb\x27\x21\x8d\xa1\x92\x65\xbe\x41\xda\x6a\x52\xb8\x23\x7f\x57\xa5\xad\xfe\x22\x71\x33\x7f\x7f\x75\xdd\x3d\x9e\xc6\x6b\x8c\x9b\xd1\x18\x11\xea\x9f\x2d\x27\xa8\x8a\x8b\x2d\x5c\x90\xda\x1d\x45\x33\xa7\x14\x78\x6f\x7a\xcb\xd8\x14\x35\xd8\x16\x39\xc6\x88\x4c\x35\x09\xb2\x0e\x7b\x5a\x29\x55\xd5\x9c\xf0\x75\xe9\xca\xcc\x37\x1f\x93\x7e\x7a\x7a\xb6\xab\x1d\xd0\x67\x43\x3e\x23\x0f\x87\x82\xe7\x0a\xe6\x38\x1d\xa7\x23\x0a\xd2\x92\xff\x2d\x6f\x31\x56\xad\x29\x36\xb4\xea\x12\xd3\x52\xca\xd4\x74\x18\x9a\xa6\x9d\xfd\xef\xe7\xe0\x26\x9a\xce\xa7\x56\x6f\x77\xcf\x1a\x4d\x02\x14\x8c\xc8\xcd\xe4\x59\x3f\x07\xb7\x56\x9a\xc4\xb7\x16\x8f\x6c\xb4\x62\x88\xc9\x1b\xcb\x99\xcf\x66\x10\x51\x30\xe4\x20\x09\xb7\x53\x64\xc5\xe9\x35\x7b\xe0\x8a\x27\xc9\x9c\xd0\x1b\xa9\x65\x9e\x61\xeb\x02\x5a\xf3\x24\xfa\x6d\x0e\xbd\x6a\xa4\xb9\x9c\x97\xac\x59\xde\xd5\x81\xc3\x32\x8c\x52\x96\x2e\x4b\x5e\xe4\x86\x16\xe8\x59\x19\x85\x6a\x3e\x9c\xe6\x09\x80\x2a\x45\xb7\x16\xb9\x80\xaa\x68\xf2\x39\xcc\x46\x28\xa2\x4a\x65\xcb\x61\x1e\x0d\x41\xec\x1a\xa8\x54\x54\x40\xea\x0f\x10\x14\x91\xf1\x82\x1a\x95\x7a\x86\x25\xfa\x55\x5e\xe6\x58\x88\x2d\xa9\xb2\x44\x87\xcb\x58\x1a\xe3\x79\xe1\x73\xe0\xfa\x08\x66\xf9\xbc\x69\x4f\x4c\xc2\x8d\x9e\x11\xf8\x9d\x5a\xdc\x44\x67\x7b\x05\x88\x32\xbe\xb8\x0c\x59\x22\xcf\xe9\xad\x73\xa6\x3d\x33\x10\xc3\x52\x3d\x0a\x17\xd4\x4b\xc7\x65\x73\x45\x86\xad\x25\x10\x56\xd2\x9d\x33\xd7\xa9\x62\x7e\x73\x2d\x91\x79\x97\xa7\x07\x1e\xca\xb5\xce\x67\xa7\x69\xfe\x98\x36\xac\x28\xed\x8c\xec\x8b\xc8\x06\xaf\xb1\xa3\x85\xc0\x67\x25\x86\xa0\x0d\x6f\xa9\xdf\xba\x8d\x03\x13\xcb\x89\x09\x58\x6e\x01\x26\x13\xb3\xac\x03\xec\x6f\x2d\xa9\x80\x72\x87\xb5\x0d\x57\xa4\x9f\xea\x69\x14\x1a\xf0\x08\x7a\x6a\x7b\xf1\x99\x52\x76\x8e\xa3\x38\xdb\x0e\xd3\xe9\x36\x24\xbc\x9f\x48\x1c\x58\x60\x23\x40\xb2\x2e\x46\x02\xd5\x33\x12\xfb\xaf\x67\xf3\x37\xb7\x2f\xe3\x5a\x3d\x86\x18\x85\x1c\x8d\xd0\x32\xe5\xaa\xa7\x1c\xdf\x98\x03\x95\x15\xa1\xaa\x85\x79\x5b\x00\x24\x18\xc2\xc4\x0a\xd9\xd0\x79\x98\x98\xb6\x0e\xb6\xe2\xfa\x48\xaa\x31\x24\x49\xdf\x2d\xe3\x33\x48\x87\xcd\x5c\x2c\xa5\xb4\xa2\x65\x4f\xa7\xed\xb4\xcd\x9d\xde\xc0\x31\xb2\x1d\x92\x63\x7e\xd8\x19\xf4\x33\x64\x04\x7a\xd7\x57\xd0\x0f\x9b\xcf\xde\x37\xf0\xda\x7a\x9f\xc6\x45\x36\xaa\xed\x71\xd7\x22\xcd\xfb\xe3\x67\x2d\x6e\x93\xf6\x5d\xbb\x96\x8a\x98\xa5\x3e\xcf\xe0\xde\x1b\x02\xfb\x9c\x7e\x7d\xce\x16\x61\x98\xab\x52\xd4\x32\x67\xb4\xcc\x50\x72\x96\x3d\xb9\x68\x66\xe5\x4a\xa3\xa5\x6e\xae\x4a\xd9\x7d\xa0\x2a\x85\x4f\x6d\x7e\x76\x16\xd3\xde\x6b\x37\x17\xbf\xb0\x44\x7a\x7b\x0a\xe5\x44\xfe\xdd\x5d\x7b\x86\x63\x7e\xc3\xb7\x59\x51\xad\xee\xaa\x8b\x58\xe4\x6e\x5d\x72\x25\xb3\x24\xf6\xda\x08\xe9\xbf\x7b\xa5\xcb\x79\x25\x44\xd1\xb5\xc7\x4c\xea\xec\xb4\x09\x03\xcd\x40\xd7\x72\x8e\x75\xe6\x57\x64\x0e\x5b\x96\xfb\xb3\x3a\x41\x7c\x02\xaf\x45\xca\x16\xb3\xe0\x63\x64\xc8\xf3\x17\xeb\x40\x1e\x5d\x63\x68\x61\x81\x79\x6f\x70\x62\x68\x33\xdb\xe8\xcc\x50\xa6\xab\xd5\xa9\x21\xbf\xfb\x3a\xe7\x06\xdf\x66\xda\xc9\x21\x90\xe0\x94\x13\x84\xa5\x01\x8f\xe1\x19\x2b\x3f\xe4\x06\xbc\x7d\xb9\xc9\x8a\x5c\x6e\x13\xc7\xff\x16\x09\x03\x1b\x47\xb8\x7e\xd1\x5b\x59\x81\x7a\x32\xc1\x5b\x71\x80\x6e\x06\x35\x95\x05\x57\x12\x69\x6a\x8f\xfd\x73\xa8\x87\x9f\x1b\x79\xa2\x9e\x62\xd8\x31\xae\x3d\xcd\x66\x55\x32\x43\xa8\xb4\x13\x46\x59\x70\x11\x57\x12\x23\x9f\x16\x72\x30\x46\xd9\x69\x70\x45\xd3\x5e\xf3\x7e\xd2\x67\xef\x50\x94\xe1\x28\x81\xfa\x53\x8e\xf5\xa0\xd8\x79\xf2\x86\x8a\x84\x98\xcd\x2f\xa6\x51\x51\x1e\x2f\x2e\x53\xa9\x0b\xab\x64\xf8\xd6\x8d\x70\x44\xaa\x45\xe9\x25\xe1\x6c\x2d\xc2\x0e\x63\x88\xa6\x51\xc2\x1c\x53\x5b\x1a\x8e\x1b\x1c\x9a\x41\x12\x5a\x54\xc5\x5d\xa5\x37\x30\x3c\xd2\x72\x14\xfa\x7b\xd5\x8b\x55\x5e\x20\xd3\x74\xb3\x84\x86\x82\x24\x78\x3e\x43\x03\x8f\xfd\x28\xe4\xb6\x24\x3d\x62\x6b\xee\xb4\xf1\xdc\x94\x73\xba\x16\x09\xb9\x6b\x24\xe4\x6e\x0b\x42\xee\x15\x08\xb9\x34\xb5\xb6\x30\x39\x10\xa9\x2a\xb8\x52\x4e\xea\x7d\xd5\x92\xb8\x5b\xe4\x40\x4c\xb3\xdc\x50\x14\xaa\x9a\x7e\xe3\xe6\xea\xfe\xb1\xb9\x6a\x36\x57\x91\x68\x1e\xb2\xb9\x96\x09\xb0\xed\xb7\xc9\x92\x68\x3a\xbf\xdb\x26\x48\x96\x53\xc7\x01\x61\x1b\x54\xf5\x87\xbc\x7a\x79\xc6\xcb\x12\x7f\x4d\x78\x4b\x0a\x10\xab\x7a\xac\x16\xd9\xee\x83\x32\xdb\x2d\x5c\x21\x4e\xa9\xbb\xa1\x35\x4e\x91\xc5\x9e\x90\x02\x87\xed\x00\x61\xd6\x1d\xd7\x78\x4c\x48\xca\x0a\x12\x0b\xde\xd0\xb3\xe1\x92\x76\x6d\x6d\xcc\x8b\x08\x83\x68\x19\x17\x5d\xa1\xd4\x56\xf8\xfa\x1d\x2e\x16\x94\x95\x21\x06\xa6\xbf\x01\xb3\x8f\xca\xda\x04\xc3\xce\x5a\xdb\xbc\x88\xe8\x86\xf6\xf1\xe2\x3d\x70\xa8\x99\x82\xaa\x77\xc5\x61\xfb\x6e\xd1\x9d\xdd\x3a\xd0\x16\x07\x17\xf3\x38\x40\x9d\x51\x1a\x93\x9d\x14\x29\xc9\xa8\x50\x7a\x9d\x69\x7b\x64\x37\x67\x0e\x09\xf7\xc7\x97\xe0\x43\x34\x85\x47\x21\xcc\x46\xdc\x50\x72\x14\x90\x3f\xf5\xd4\x2e\x6b\x16\xcf\x57\x4b\x59\x22\x28\x09\x4f\xec\x76\x16\x3d\xfd\x03\xcd\x12\xb2\x5a\x36\xe3\x46\x83\x44\xe9\xf5\xca\x23\x0c\x2b\xe5\x67\x51\x24\xe0\x8c\xff\x5e\x7e\x9b\x74\x69\xe2\xee\x91\x17\x8c\xe2\xcc\x23\x7b\x2a\xf3\x60\x18\x61\x5b\xba\x39\xbd\x7a\xae\xe3\x1c\xe7\x5e\x2f\xbe\x6e\xe1\xac\x98\xca\x9a\x19\x5e\xd2\x61\xd9\x48\xc9\x0c\xd5\xa0\x99\x75\x2d\x48\x4b\x61\x4e\xed\x53\x19\x99\x8c\xd5\xad\x24\xf5\xf8\x51\x71\xa9\x34\xe6\x29\xac\x14\xc5\x65\x2a\x95\xfc\xce\xc6\x68\x0e\x01\xb5\xbc\xd4\xb0\xc3\x0c\x0e\xa9\xf0\x25\xfb\xe8\x69\x29\x96\x7e\x4e\x11\x5c\x45\x47\xf3\x48\xc8\x56\x45\xe2\x2d\xe1\x80\xca\x64\x03\xd5\x99\xeb\xf5\x6d\xd8\x0e\x9d\xfc\xa1\x5b\xb6\x07\xec\x17\x21\x97\x68\xab\x13\xc0\x2f\x7b\x59\x3b\x70\x7a\xed\x87\x84\x9a\x51\x3a\x2f\x1b\x65\x2b\xaa\x33\xe8\x0d\x7b\x0c\xa6\xef\x61\x39\x11\x58\x86\x2f\xd9\x85\xf7\x8d\x93\xf0\xb7\xc9\x4d\xb0\xec\xf3\x2e\x30\x24\x1a\xb0\xae\x03\x94\x44\x49\xbd\xba\xd3\x5c\x63\x7d\x69\xc5\x46\xc2\xef\xca\x06\x9f\x58\x16\xc7\x0d\xb6\xd8\x14\xd5\xd7\x5d\x3d\x77\x7a\x07\x66\x0d\xdb\x3e\x46\xd0\xba\x4d\xe7\x56\x36\xe7\x7f\x5c\x07\x09\x45\xe1\x64\x50\x0d\x16\x9e\x44\x19\x65\xf5\x9e\x3d\xa4\x5f\x4d\x8b\x74\x81\x3d\x8f\x5b\x4d\xb4\xdc\x0d\x2d\x48\xbf\x58\x87\x0e\x6a\x5f\x26\x6d\x85\x9d\xa6\x08\x5d\x76\x95\xf6\xae\x70\xcc\xef\xcb\x94\xad\x76\x0e\xf2\xa8\xe5\xde\xab\xc4\x7f\x6f\xb4\x5b\x1a\xcf\x6d\x69\xba\x9a\xcf\x4d\xdd\xf1\x50\x27\x93\xae\xdc\xd7\xa5\x45\x9a\x1c\x21\xad\x0f\x58\x43\x2a\x32\xb0\x0f\x0e\xd6\x99\xfe\xac\x0f\x76\x40\xc3\x4c\x66\x0f\x05\xc3\x69\x83\x70\x28\xdc\x6a\x98\xc3\x71\xc4\xf0\xf3\x69\x60\xbf\x3d\x9d\x63\xd5\x3f\x84\x3b\x0b\x08\xaf\x63\x81\x71\x28\x9c\x92\x67\x10\x71\xed\x3f\xf5\x58\xe6\x16\x01\xfe\x48\x77\x3f\x91\x06\x39\xd6\xf8\x4b\x56\x86\x2b\x11\xb2\x14\xe1\xce\xc5\x2d\x87\xf3\xef\xe0\xb4\xb5\xfb\x89\xee\x9d\x21\x5d\x50\xd2\x5a\x17\x14\x64\x70\x41\x21\x3d\xaa\x70\x5d\x26\xaf\xb2\x08\xa7\xe8\x96\xb6\x69\xbb\x4b\xdd\x9c\x55\x1f\x16\xd5\xb7\xa5\xec\xcf\x92\x3b\x43\x00\xba\x14\xa2\x24\x9b\x2d\xde\x08\x19\xf4\x1c\xc3\xd0\x0b\xe2\x28\xc8\x1c\x65\x2a\xbd\x30\xc0\xc1\xea\x7e\xd5\x79\x45\xcc\xbb\x9a\xac\xe0\x49\x9a\xe0\x20\x4a\x20\xa2\xbf\x44\x63\xb6\x00\xf7\xa1\xcb\x49\x91\x1b\x13\xef\x24\x88\xe3\xe0\x22\x66\x7e\xd3\xa7\xf4\x8d\xe2\x91\x4d\x55\x61\x06\xb4\xc5\x16\xbd\xf2\x46\x31\x0c\x90\x73\xf7\x3c\xc0\xc1\x08\x26\x18\x22\x06\x97\x18\x8e\x16\x34\x63\x00\x53\xa9\x9a\xa0\x07\x59\x3f\x0b\x8e\xde\xcc\xcf\x08\x02\x32\x69\x47\x78\x61\x70\xf0\xe6\xf0\x87\x00\x0f\x9c\xdc\xe1\xdc\xf5\x92\x14\x4d\x83\x38\xfa\xcc\x46\xca\xfb\x0e\xd5\x8e\x27\x03\xcc\x3d\x9a\x37\xb2\xeb\x08\x8f\x26\x4e\xc2\xc0\xb9\xef\x46\x41\x06\x99\x71\x8c\x5b\x05\x8f\x4a\xc9\xd7\xd8\x1e\x4c\xb8\xf3\xb3\x34\xfa\x0d\x06\x03\xfe\x8c\xa3\x5b\x86\xe9\xd4\x93\x1b\xc0\xb1\xbd\x51\x1a\xc2\x0e\x61\x47\xc9\x7e\x4e\xbc\x04\xde\x08\x4c\xa8\xd3\xe8\x22\x8e\x92\x4b\xd7\x0b\xa3\xf0\x78\x36\x23\x93\xe8\x6e\x5c\x20\x18\x7c\xda\xe0\x84\x7f\xb4\x74\x31\x16\x45\x67\xf4\x74\xa9\x9f\x15\x0f\x19\xbe\x08\x9e\x68\x8a\x82\xd1\x3f\xde\x5f\xbc\x78\xbe\xf7\xf7\x25\xae\xd6\xb5\x09\xd1\x4c\x3e\xd7\x3e\x3f\xfc\x86\xa0\x00\x00\x47\xd8\x00\x7b\x1c\xc5\x18\x22\x32\x2b\xe6\xdc\x36\x0a\xae\x33\x3d\x11\x73\x6b\xaf\x45\xd1\x3f\xd4\x67\x05\xf0\xb8\x9a\x80\xb0\x52\x02\xd8\x19\x8a\xa6\x01\x2a\xfa\x5c\xb4\x88\x41\xad\x8c\x6f\x53\x8a\x95\xe6\xc7\x78\x19\xb7\x0f\x21\x3d\x00\xf6\x18\x41\x88\xe1\x0d\xee\xb0\xf9\x94\x82\x66\x9a\x30\xb2\xcb\x53\x42\x17\xb4\xd0\xca\x54\x17\x02\x47\xf7\x87\x2a\x8c\xde\xc1\xb0\x68\x9b\xa5\x46\x58\xae\x99\x56\x10\xca\x9b\x39\x6c\xd6\x2c\x45\x06\x47\x69\x12\x7e\x4b\x8b\x21\x9d\x76\x79\xf8\x74\x8b\xf0\xc1\x26\xa4\xde\xc2\xca\xde\x86\x72\x14\xea\x51\x02\xa1\x24\xe5\x94\x62\xb6\x72\xfa\x11\x9c\x4e\xae\x34\x1a\x82\x33\xaa\xf4\xa1\x1e\xbd\x6a\x58\xe3\x8e\x8a\xe8\x5e\x19\x99\xdc\x8c\x6a\x56\x4c\xb1\xd4\x3c\xbf\x92\x84\x56\x31\x06\x18\xe7\x74\xc9\x39\x3b\xca\x23\x2a\x1b\x4c\xcc\x8f\x6e\xe4\xa1\xec\xa4\x0c\x69\x5b\xcd\x99\xb8\x78\x75\x3c\x89\x34\x27\x19\x1c\x21\x88\x3b\x4c\x66\x7b\x1a\xc1\xca\xff\x33\xfa\x70\xf0\xf6\xf4\x78\xb7\x75\xb4\x50\x85\xd5\x08\xc1\x2b\x18\x94\xe5\x70\x71\xcc\xe4\xce\x50\x4b\x93\xb2\x57\x5b\x92\xde\xe7\x6d\x98\x8a\x2b\xe1\x31\xea\x91\xd5\x2e\x82\xbe\x15\xa9\x95\x56\xf5\xc1\x51\x91\x6d\xc3\xf6\xb8\xc0\xd0\x89\x42\x98\xe0\x08\xdf\x3e\x0d\xe2\x0a\xd1\xfe\xab\x83\xc9\x87\xbf\x18\x89\xab\x02\x41\xb7\x5f\xd0\x9d\xdb\x27\x6f\xdf\x9c\xfe\xf2\xfa\xfc\xcd\xe9\xbb\xe3\x93\x17\xa7\xe7\x2f\xde\x1c\xff\xf9\xf5\x8b\xe7\x2b\xfa\x53\x91\x2b\x93\x8a\x92\xd6\xc7\x8f\xb6\xb0\x54\x70\x6c\x08\x4a\x1b\xb6\x75\x47\x89\x89\x4f\xa8\x5e\xac\x5b\x28\xf6\xf1\x23\xb6\xb8\xe7\xa2\x35\x20\x45\xaf\x51\x84\xe1\xc7\x8f\x8c\x1e\x17\xcb\x2b\xea\x64\x51\x08\x47\x01\xea\xcc\x50\x7a\x73\xbb\x42\xb5\xe7\x33\x04\xc7\xd1\x8d\x45\x5f\x56\x7c\x8d\x60\x10\xea\x1f\x27\x69\xb8\xd2\x97\x8b\x16\xbc\x56\xd3\x09\xac\x18\x27\x69\x6a\xb5\xa9\x5b\x5e\xa1\x79\xe8\xe6\x81\x93\xcf\xaa\xa7\xab\xfa\x9b\xea\x0b\x79\x29\x68\x87\xd4\x75\xc0\xe4\x8a\xdd\x99\xad\x0e\x23\xd3\x41\xf0\x15\xe1\x39\x28\x61\x74\x46\x93\x00\xe1\x6d\xc6\x18\x3c\x8d\xb3\xe9\xea\x6f\xdd\xd7\xff\x7c\xd1\xc7\xab\x87\xc9\xae\xeb\xfa\xa8\x98\xa0\xb5\x62\x40\xd7\x60\x3c\xb3\x04\x0d\x44\x58\xdf\x68\xa8\x50\xa1\x7d\xf5\x82\x90\x67\x45\x77\xf2\x98\xeb\x7c\x19\x69\x98\x92\x4c\xf1\x00\x6f\xe0\x88\x3e\xa2\x19\x1e\x14\x58\xe8\x15\x94\x4c\xac\x75\xa6\x1c\x57\x3b\x40\xd8\x8f\x62\x5a\xc4\x76\xe4\x79\x39\x7f\x32\x60\x56\xc1\xaf\x3f\xbd\xfb\x79\xfc\xdd\xf8\x49\x51\xa7\x32\x3f\x5f\x8a\x38\x97\xd2\xc4\x46\x91\x7c\x25\x71\xfe\x85\xf4\xd6\x48\x9b\x12\x30\x41\x3c\x51\x52\xee\x79\x44\x62\x79\xc6\xfe\x31\x28\xe6\x8e\xd8\x9b\x22\x19\xaf\x8e\x6e\xae\x52\x73\xa1\xc7\x0f\x23\xe6\x27\x41\xc6\xf3\x7f\xfd\xfa\xaf\xbf\x5d\xde\xbe\x5c\x89\x8c\x75\x36\x90\x69\x35\xa9\xa0\x9d\xff\x49\xfd\x5c\xd5\xc4\x6a\x79\x51\x95\x66\xd9\x67\xf4\x81\x2d\x05\xea\xda\xcf\xb8\x08\xbb\xec\x3b\xdf\xe4\x91\x9b\xeb\x80\x44\xef\xea\x64\x69\x6e\x30\x29\x67\x14\x68\x75\xeb\x17\x17\xfe\xc1\xfb\x93\xd6\x55\x61\x94\x60\x7d\x76\x81\xb2\x87\xd3\x04\xa3\x20\x61\x99\xae\xf4\x8c\x4e\x2b\x9a\x12\xce\xb9\xde\x7f\x70\xb7\xe0\x0f\xe8\x4a\x92\xdf\x8b\x3a\x54\x10\xe5\x38\x60\x64\xba\xc9\xb3\x46\x4d\x83\xd1\x24\x4a\x84\xea\x9b\xff\xf2\x32\x9c\xce\x1c\x17\xe8\x45\x49\x97\xa3\x20\x16\x99\x97\x32\x34\x12\x8f\xb4\xf7\x22\x49\x30\xab\x6a\xa0\x6c\xe7\x28\xc1\x10\xcd\x90\x80\x26\xc9\xd0\x08\xdc\xa5\xc9\x07\xc3\x0c\xf1\xbc\x4f\x09\xb5\x80\x9c\xcc\x33\x9c\x4e\x39\x6a\x4c\x3e\x9f\x36\xb8\x0b\x21\x0e\xa2\xf8\x08\x53\x1c\x13\x75\xae\x9d\xc4\x05\x89\xd8\x98\xef\x10\x8d\x1b\xa6\x49\xae\x3c\x3e\x7f\xde\x38\x45\x2f\x82\xd1\xc4\xc9\x37\x7f\xe2\xde\x19\x4f\x3e\x31\xe5\x67\x09\xbd\x4b\x87\x5b\x5b\xe5\x67\x0e\xfb\x17\x60\x72\x0c\x62\x78\x83\x01\xf6\x68\xa3\x14\x2f\x32\xb7\x44\x40\x69\x86\xc0\xee\x02\xa4\x09\x3d\xda\xb4\x61\xcb\xfc\x97\x00\x0d\xe4\xe2\xf3\xec\x50\x20\x55\x12\x62\xa2\x1f\xfc\x67\xa8\xe3\x1f\x75\x5d\x10\x0d\xfc\xef\xa3\xff\x46\xdf\x47\xdf\x7d\xe7\xa6\x67\x51\xc7\x1f\xe6\x9f\x9e\x45\x22\x4d\x26\xcd\x6a\xca\xc9\xc5\x3d\xc3\x43\x4e\x66\x09\x48\xc9\x89\xfa\xd0\xc4\xd3\x15\xd6\x16\x8d\xaa\x38\x81\x9c\x92\x57\x3c\xe1\x58\x4e\x70\x01\x86\x3a\xe5\x90\x67\x08\x3b\x0f\x66\x8c\x74\x9a\xa6\xb9\xd4\x18\x7f\x64\x32\x68\xc9\x85\x85\xc3\x01\x16\x19\xcd\x4a\xc5\xdd\x3b\xe6\xb6\x60\x15\xbf\xa1\xb5\x17\x16\x55\xa9\x9c\x4d\xbe\x56\x77\xb1\x70\xa1\x6a\xf9\x45\xbd\x1d\x4e\x8e\x91\x1c\x52\x34\x55\x6c\x6e\x20\xac\xfa\x6e\x6b\x0b\x7b\x33\xb6\x35\x9e\xb3\x8d\x52\x7e\xe2\xf0\x39\x14\x75\x38\xab\xe4\x09\xa1\x6b\xfb\x34\x2e\xde\xf4\x38\x89\x2e\xba\xbf\xbc\x68\x7b\xf1\x72\x23\x43\x7e\xb7\xb6\x4a\x5c\xd4\x0c\x13\x63\xd9\x95\x88\x68\x4a\xf5\x28\xb9\x6c\x2f\xfc\xe6\x0b\xf0\xe0\x0b\x90\xdf\x76\xcd\xaf\xc0\x9a\x4b\x29\x1a\x3b\xfa\x0d\xc3\x4e\x01\x7e\x59\x6d\x76\x4b\x57\x15\x1e\x4d\x60\xf6\x8c\xdf\x29\xbc\x51\xf1\xd8\xc9\x6b\x00\x6a\x71\xf7\x48\xaf\x25\x49\xf1\xcf\xec\xcd\xd6\x96\x03\x07\x9b\x8d\xea\xca\x3f\x72\xcb\x47\x9d\xb2\x30\xab\x6c\x0f\x1c\x5c\x74\x92\xe0\xea\x69\x6c\x90\xdf\xf6\xf6\xa6\x07\xe1\xe7\xeb\x1a\x70\x0b\xa3\xce\x3b\x09\xa8\x37\x5f\xaf\x07\x76\x4b\x61\x3d\xbe\x12\x96\xc3\x4c\xb5\x9d\x8e\xb0\x95\x74\xae\xa3\x10\x4f\x8e\x98\x9f\x3d\x29\x68\x7f\x6f\x03\xf5\x7d\x0c\xc7\xf8\x48\xb8\xe1\x97\xde\x4e\x60\x74\x39\x11\xef\x0f\xca\xef\x71\x3a\xe3\x2f\x15\x1b\x64\xaf\xe0\x2e\x26\x1c\x22\x71\x70\x11\x47\x99\x88\x49\x2e\x9a\x97\xf9\x32\x95\xa3\x96\x68\x2c\xb2\x15\x24\xd1\x34\x20\x35\x90\x9a\x8c\x80\x94\x5c\xa5\xda\xaf\xc4\x3f\x2e\xf9\xe9\x29\x96\x66\xd5\xba\xe7\xef\x96\x7f\xec\xd2\xf0\xdf\xf6\xd0\xa3\x8a\x07\x9b\x3a\xe4\x5e\x09\xbb\x92\xb9\xe1\x6a\x19\x83\xab\xf3\x25\xf7\x86\x46\x90\x51\x5d\x38\x50\x5f\x16\xbd\xbb\x65\x19\xe3\x98\xf2\x90\x2e\x25\x89\x5b\xd1\x35\xd8\x10\x7f\xc7\xda\x9c\x20\x38\x36\xc6\xde\x35\x30\x0b\x9b\xe3\x0e\x0a\xf5\x16\x03\x0a\xf2\x41\x3e\x1c\xdf\x59\xb5\x2d\x29\x74\xab\xf9\x0b\xeb\x10\xaa\xdd\x61\x0d\x5e\x6a\xd1\x3d\xb3\x2b\x2a\x0a\x50\x14\x74\x08\x2f\x8b\xc8\xd6\xaf\x46\xcb\x05\xf6\x79\x19\x90\x74\xed\xcb\x0e\xec\xf3\x59\x90\xc8\x49\xd4\xe0\x18\xbe\x5e\xaf\x96\x61\xee\x05\x76\x81\x16\x8c\x31\x25\x0d\xdc\x04\x6a\x00\xd8\xaa\xd2\xf6\x81\xb3\x1a\xac\xd5\x5a\x36\x23\xb7\x52\xc7\xf3\xcb\x68\x7c\x2b\xcc\xd3\x5c\x0b\xaf\x18\xb9\x73\x50\x55\xf1\xf0\x03\xcd\xe1\x2c\x7e\xfd\x44\x0f\x67\xe5\xc1\x6b\x38\x56\x7f\xfe\x93\x1c\xfd\xaa\x49\x3b\xca\x8e\xd5\x53\xf4\x72\x1e\x85\xeb\x83\x68\xd5\xae\xd9\x07\xb3\x41\xcc\xf5\x90\xec\x3c\xd0\x22\xa7\xa0\x3a\xc0\xa3\x4d\x7f\x55\x25\x00\x99\x18\x33\x4e\xeb\x1a\x92\x16\xfe\x67\x12\x5c\xe5\x95\x43\x56\x8f\x63\xff\x87\xed\xb1\x75\x72\x64\x17\x5c\x2d\x13\xa1\x53\xfe\x26\x8e\xbc\x9c\x5c\x64\xe5\x06\x0e\x4a\x5f\xf8\xcd\x2e\x1b\xc9\x2f\xb3\x30\xc0\xb5\xaa\x0c\x56\x0f\x9a\x27\x5e\x36\x9a\x40\x42\x00\x8e\x1d\x8c\x31\x44\xef\x29\x4b\x66\x4e\x72\x2c\xfa\x0b\x6b\x3a\x0b\x79\x4f\xa9\x42\x93\x3d\xd6\x64\x34\xb8\xb5\x25\xc7\xa0\xa4\x83\xa6\xa3\xb9\xd3\xe8\xfb\x08\x7a\xe9\x78\x9c\x41\x4c\x7f\x01\x75\x2b\xc8\x57\xe4\x07\xd0\x77\x8d\x7c\xc7\x7e\x02\x65\x87\xc9\x57\x1f\xd2\xd9\xe2\xb1\xb1\x79\x57\xe2\x66\x33\xf8\x84\x0c\x5a\xff\x1c\x7d\xb8\x7d\xf1\xe6\xf0\xd7\x55\x3c\x39\x54\x8c\x1a\x03\xfa\x8b\xaf\x7b\x21\x75\x75\x7e\xaf\x5f\x75\x3f\x09\xe8\xf1\x1a\x18\xfa\x9e\x7e\x85\x95\x82\xd9\x87\x0a\x06\x79\x8e\x48\x5e\x06\xbc\x11\x9e\x64\xbb\x66\x4c\x9b\x65\x49\x1c\xaa\x42\x87\x70\x70\xc1\xef\xe3\x86\xc3\xe0\x97\xb2\x7a\x89\x97\x38\x60\xb3\xcf\xe7\x92\xdb\xca\xe4\x5e\xc5\x6f\x2a\x7a\x79\xe4\x97\x98\x9e\xab\xb6\xe5\xc5\xa1\x51\xf4\xc3\x95\xc8\xaa\x7f\xba\x52\x3d\x21\xc2\x30\xc0\x41\x07\xc3\x0c\x33\xcc\x7a\x1e\xc7\x52\xf0\x50\x77\xe8\x18\x41\x64\x4c\xe3\x6e\xeb\x27\x35\x2d\x69\x9f\xdb\xae\xf6\x34\x0a\xa9\x66\x52\xb9\xc6\xc4\x4c\x6a\x6a\xea\x15\x76\x7f\x21\x0a\xdb\xe4\xa1\xcc\x72\x01\x29\x65\x94\x1a\x8a\xef\x4c\xc5\x19\x20\x64\x02\x61\x98\x75\x10\xe4\x68\xb6\xd0\x54\x32\x0e\x6e\xd3\x39\xce\xb6\x2f\x11\xa5\x86\x1a\xd7\x68\x90\x00\x04\xd2\x75\x9d\x49\xd1\x92\x54\x18\xb7\x7b\xbf\x5c\xfc\x9a\x56\x24\xa5\x1f\xc1\x38\x56\xa0\x23\x9b\xf8\x4b\xfb\x4c\x7a\x85\x8a\x6b\xb4\xcf\x64\xd6\xc2\x72\x58\x61\x3a\xed\x20\x38\xba\x1d\xc5\x51\x72\x69\x99\x8e\x18\xba\xdd\x3a\x22\x48\x58\x11\x66\x87\xac\x72\x26\xc7\xee\x52\x1e\xb3\xaf\x88\xfb\xfb\x2c\xa2\x5d\x11\xc8\xf7\xe4\x03\xc6\xa6\xde\xe8\x49\xb9\x77\xca\xd2\x9a\xaf\x81\xe3\xd8\x08\x66\xd1\x67\xf3\x81\x2b\xde\x95\x24\x6d\xa5\xb2\x52\xa2\xec\x5c\x20\xdc\x91\x8e\xc7\x2d\x55\x79\x5d\x60\x8f\x82\x3c\x68\xbe\xc7\xdc\x5e\x15\x67\xcc\x32\xfc\x44\xd0\x10\x67\x21\xef\x6f\x43\x57\xd4\xfa\x04\x3b\x34\xe0\x1f\x06\xa6\x88\x74\xf9\xde\x1c\x4f\x69\x2f\x1f\x54\x53\xe4\x82\xa5\x63\xaa\x5a\x98\x7e\x4b\x70\x9c\x7c\xc8\xb9\xe7\xa5\x0c\x74\xcf\xc7\x78\xac\x3c\x7a\x28\xea\x75\xf1\xc1\x81\x38\x80\x92\x00\x47\x57\xb0\x93\x8d\x50\xca\x22\x77\xe4\xfc\x71\x59\xc1\x06\xf6\x8f\xd4\x50\x94\xe0\x0e\xa3\x70\xfb\x47\x56\x9a\xea\xbb\x94\x9f\x98\x4a\x54\xfc\xd7\x89\x8c\xab\x1f\xc5\x11\x0d\x3f\xf9\x0c\x4f\xa4\xdb\xb4\x8d\x29\x7a\x27\xd3\x32\x09\x30\x64\x8e\x86\x4c\x87\x6f\xd8\x44\x5a\xbd\x55\x72\x2f\xcf\x86\x5f\x6c\xb0\x2d\x22\x86\x81\xe8\xe8\x14\x72\x0d\x97\xa6\xd4\xda\x29\xff\xd8\x65\xaa\xb3\x95\x34\x5c\xac\x49\xae\x9c\xe4\x9a\x2c\x7c\xab\xc0\x91\x1a\x60\xe3\xf4\xc1\x8f\x3e\x99\x55\x4c\x8d\x37\x4c\x23\x14\x0c\xba\x5b\xa4\x3e\x82\x69\x5b\x87\x4a\xba\x9a\x2f\xb3\x83\xc2\xda\x1d\x54\x46\x84\xa8\x1a\x36\xb0\x7f\x54\xc0\xc6\xe5\x85\x62\xd2\xcb\xf0\xc4\x10\x15\xb4\x57\x24\x4f\x95\xd5\x5e\x05\xe1\xa1\x7e\x9a\x57\x0c\x4e\x5d\xe5\x40\xa9\x0a\x54\x5d\xba\xd2\xcb\xd8\xe2\x1c\x65\xba\x0a\x8b\x7c\x12\x64\xc7\xf2\x8a\x67\x99\xce\x98\xba\x85\x6d\x0c\x45\x2b\x93\x26\x9d\xeb\x28\x09\xd3\x6b\xf6\xd5\x49\x20\x60\xa9\xcf\xf9\x11\x76\xca\x4e\xb0\x73\x76\x98\x70\x25\x0f\xff\xc5\x34\x42\xe7\x84\xa5\x59\x8f\x0e\xc7\xc8\x5e\x4a\x8e\x3c\x18\x20\x19\x72\x3a\x43\x29\x4e\xf1\xed\x0c\xd2\x08\xcb\x00\xbf\xc2\x70\x7a\x4a\x06\x07\xe2\x5a\xbe\x3d\x2a\x87\xad\xa6\xa6\x28\x87\xa5\xda\x1e\x66\xda\xf0\xfd\xdd\x2e\x40\xe9\x35\x97\xeb\x77\xbb\x60\x1a\xdc\xc8\x1f\x5d\xc0\x97\xea\x88\x6e\xd5\x7c\x7e\x1f\x41\x3d\x54\xf4\x09\x63\x9c\x66\x87\xf1\xc8\xf6\x90\xfa\x16\xc8\xe9\x73\xd8\xc8\x2e\xa5\x8e\x86\x8e\xc6\x16\xba\x9b\xfc\xb9\x1c\x9a\xcd\xf5\x41\x85\x6a\x8b\xb3\x3f\x28\x3b\x79\x04\x15\x3e\x6c\x52\x63\xc3\xe7\x68\x30\x18\xe0\xad\x2d\x27\x19\xe4\x22\x4e\x02\xec\xef\x3f\x77\x28\x11\x1c\x59\x3e\xe9\x42\xb2\x58\x8f\x1a\x8c\x2b\x86\xda\xa9\xc2\x84\x77\x09\x63\x4e\xd5\xfa\xcf\xee\x98\xe2\xe5\x48\xd6\x77\x15\xc1\x6b\x22\x11\x39\xee\x62\xe8\x2e\x00\xdd\x77\x25\x39\x2f\x9f\x5d\x60\x9f\x0b\x4d\xe8\x34\xb8\x79\xcf\x30\xad\x24\x29\xe9\x82\x20\x5b\x68\xc3\x4a\x65\xb6\x0b\x70\xe9\x45\x5e\x8b\xbb\x11\x8d\x1d\x28\xd6\xe5\xe7\x00\x4f\xbc\x69\x70\xe3\xf4\x0b\xab\xee\xb1\xae\xdc\xdf\x9f\x0d\x81\x48\xc1\xe9\xba\x1b\xe2\x8b\x88\x48\x54\x89\xa9\x25\x85\x58\xfe\x2b\xf9\xae\x77\xb8\x60\x4b\x7c\xc7\xc5\x06\x4c\x04\x4e\xea\xee\xc1\x14\x78\x0f\x73\x41\x51\x0f\x2b\xde\xeb\xec\x3d\xbc\x8c\x32\x0c\x11\x99\x5b\xc1\x98\x1b\x14\x92\xea\xe9\x68\xfa\x54\x5c\x66\xae\xbb\x00\xe7\x54\x10\x7d\x2f\xe5\xd0\x52\xa7\xa3\x8c\x3b\xaf\x50\x0f\x24\xed\x49\x94\x5c\xde\xdf\x8b\x29\xcd\xfe\x12\x47\xd3\x29\x44\x3d\xc7\x7d\x46\x1f\x21\xc8\x4c\xcb\x8e\x7b\xe4\x74\x73\x7f\x26\x97\x6d\x67\x57\x0f\x02\x8f\x3e\xeb\x19\xb4\x98\x6a\x4c\xa3\x65\x90\x18\xa8\x99\x4c\x66\x87\xd0\x22\x5b\xfc\x84\x7d\x99\x0e\x30\x59\xb6\x3f\xa7\xf3\x24\x8c\x92\xcb\x13\xca\xfe\xbd\x87\x23\xec\xb8\x20\x2a\xd7\xf2\xa7\x71\x9a\x62\x88\xce\x50\x1a\xc3\x81\xcd\xef\x85\x28\x19\xa7\xf6\xf0\x4f\x2e\x88\x07\xa9\x87\xd3\xd9\x77\x91\xc7\xd8\x48\x46\x02\xdf\xf9\x60\x3e\x90\xfa\xc8\x28\x49\x20\x62\x2f\x3a\xf1\x06\xd7\x2b\x63\x47\xa5\x70\x49\x8e\x5d\x30\x37\x9f\x35\x85\x23\x2c\xe1\xed\x31\xd5\x6b\xdd\xc1\x45\x8f\xc6\x51\xe5\xd1\x58\x7d\x86\xc9\x89\x5e\x72\x86\x8d\x94\x33\x0c\x6e\x6d\x39\x58\x39\xc3\x70\xe9\x0c\xc3\xdc\xb9\x6f\x4e\x35\xe0\xa4\xd9\x4c\x78\xe2\xb0\x47\xa7\xf4\x72\x7d\x97\x72\x6f\x37\x77\xb1\x00\x94\x49\x3d\x2a\xa7\x3f\xb3\xf2\x98\x76\x52\xe2\x65\x84\x32\x7c\x9c\x8c\x26\x29\x72\xa0\x39\xf7\x1a\x1f\x50\xc1\xf9\xec\x07\x7f\x6b\x4b\x7a\x52\xe4\xee\x65\xfe\xf0\x99\xfa\xe3\xe8\x6e\x41\xa8\x88\x91\x1d\x46\xc2\x57\xf0\x3f\x31\xf2\xe8\x01\xe7\x7d\x7e\x45\xc6\x39\x20\xb7\x9d\x0b\x44\x30\xff\xd6\x96\xf8\x4b\x4c\xd3\xd6\x16\xdc\x1c\x94\x8e\x0f\xc1\xd6\xb8\xc5\x34\x67\x8a\xea\x73\x16\xa0\x0c\xbe\x4a\xb0\x03\xf9\xb2\xe6\x98\x01\x00\x0d\x94\xc9\x48\x33\x98\x51\x87\x42\x9b\x9c\x55\x69\xfe\x2a\x63\x51\xfd\xe4\x6e\x09\xa3\x2b\x9b\x10\x7c\x5a\xb9\x19\x82\x41\x44\x69\x3b\xd5\x68\x1b\xc4\x6d\xf7\xc8\x7c\x10\x57\xb6\x31\x1a\xcc\x49\x1b\x1b\xc1\x0f\xa3\x67\xa4\x9d\x20\xcb\x5e\x47\x19\xf5\xe6\x76\xec\xe0\x22\xbd\x82\xb6\x7b\xa4\xbe\x60\xae\x65\xf2\x1d\x28\x4c\xbe\x0f\xc4\xa2\x0c\xd0\x02\xc6\x19\xb4\x2a\x67\x93\xae\x53\xd1\x0a\x10\x93\x9f\x8d\xf4\x80\xcc\x41\x33\x7b\x9a\x30\x05\xfe\xf6\xa7\x97\xff\x7c\xd5\xff\x73\x85\xaf\x4b\x32\x9b\xe3\x57\xa1\x92\xda\xa7\xa8\x8f\x33\xb9\x67\xef\x98\x53\xc5\xe5\xca\x39\x2a\x56\x51\xbc\x01\x3e\x37\x96\xaa\x6d\xab\x72\x0d\x79\x12\x8a\x9c\x9d\x06\x8a\x9c\x35\x28\x63\x9a\x2b\x5c\x68\x13\x2c\x65\x49\x85\xdf\x47\x31\xa7\xae\x5d\x20\xcc\x0e\x53\x54\xee\x0c\x89\x68\x42\xb1\x5b\x3b\xb9\x2f\xd1\x79\x75\x30\x65\x65\x14\xfe\x7e\xc9\x71\xa6\x68\x88\x59\x41\x85\x51\x16\xd1\x91\x5d\xa5\xb7\xe8\xb6\xd1\x5b\xac\x59\x77\xb1\xc3\x9a\xee\x49\x2c\xc6\x36\xf0\x86\xed\x54\x0f\x66\x9f\x98\xdc\x31\xa4\xe8\xb9\xa1\xa3\x43\x4a\xfd\x93\x21\x8a\xfa\x74\x92\x5e\x5b\x9c\x3c\x24\xd5\x55\x20\x5c\x2d\x77\xe7\x30\xae\x5b\xb5\xcb\x88\x9c\x00\x7b\x94\xc6\xb4\x67\xc0\xee\x57\x4e\x81\x5d\x8a\x1e\x37\xd9\x00\x8b\x91\xc3\x74\x89\xc0\x19\xcb\x2a\x15\x16\xb3\x3d\x2b\x86\xc5\x9e\x34\x2c\xf6\xb5\xe4\xf7\x7e\xa3\xf9\x35\x5a\x4c\xbb\x65\xb5\x0e\x90\x24\xa3\xed\x8e\x46\x91\xf0\xc5\x89\xa8\xc7\x14\x7c\x1c\x7a\xf9\x29\x0a\x61\x33\x7a\x69\x8e\x7d\xd8\x60\x4f\xca\x16\x57\x41\xfc\x94\x6a\xb0\xf2\x8e\xad\xea\x50\xc3\x9d\x5c\x0b\x08\xd7\x1c\x51\x77\xa9\x3a\xed\xf1\x33\x4d\x2b\x91\x47\xd2\x3d\xa9\x03\xa7\x33\x7c\xcb\xb2\x48\x2b\x86\xe6\x1a\x07\x25\xa9\x56\x8b\x61\xab\xc8\x25\x23\x03\xb5\x46\xb0\x8e\x65\xba\x2b\xa3\x35\x78\xfd\xfe\x4a\x52\x80\x2d\x4b\x2f\x2d\xc5\x16\x96\x00\x10\x6b\x69\xa3\x13\x40\x43\x21\x16\x6d\xf1\x48\x70\x70\xd9\x89\xa3\xec\x89\x04\x0b\x8e\x0f\xaf\x7f\x3a\xb9\x8e\xfc\xda\x7c\x83\x8a\x91\x98\x9e\x11\xe1\x9f\x49\xd9\xec\x15\x15\x2f\xcc\xd1\x0c\xbb\x06\xf6\xa4\x0b\xce\xec\x0f\xc1\x65\x66\x4b\xb5\xce\x70\x48\x0e\xeb\xb6\x6c\x90\x5a\xb7\xc8\xa5\xda\x1f\x82\xdc\xd5\xf6\xac\xb7\x9f\x2b\xdc\x1f\x94\x01\xe8\x80\xdc\x55\xea\x5d\x67\x8b\xe5\xb3\xe9\xd1\x28\x30\x76\x65\xd8\x61\x3d\xcc\xe3\xb2\x54\x7d\xa1\x8a\xec\xa2\x34\x54\x89\xf7\x1f\xd6\x61\x47\x1d\x00\x1b\xa7\x69\x8c\x23\x81\x96\x34\x04\x67\xad\x4f\x74\xb2\x60\x0f\xb4\x57\x14\xba\x5c\x14\x35\x6c\x73\x32\xa7\xd2\xdf\x0a\x01\x95\xd9\x8a\x76\xa9\x4e\x2a\x60\x6e\xcc\x9e\xb4\x4b\xbc\x60\x2b\x06\xdc\xcc\x66\xd3\x3e\x50\x87\x6f\x49\xf3\x75\x90\xc7\xb1\x02\xbb\x43\x44\x3f\xba\xa9\xa5\x0d\xa6\xe5\x25\xa1\x9e\x53\x5f\x11\xcc\x82\x8b\x4e\x4f\x09\xc0\x69\xef\xfd\xdf\xa6\xdb\xfe\x4f\x15\xc2\x3d\x77\xa4\xa9\x15\xe6\x7d\x95\xb1\x66\xc1\x5f\xfe\x9e\x81\xbf\xce\xa3\xc2\xd4\x97\x7a\x90\xc9\x9e\xc2\x34\xb3\x33\x4a\x9d\x31\x2e\x73\xf6\xf4\x2f\x0c\xec\x73\x6d\x5a\xea\x5e\x89\x61\x2e\xa7\x47\x12\x03\x52\x73\xe0\x14\x39\x24\x5f\xe5\x90\xf7\x0a\x1c\x72\xa3\xce\x97\xdb\x15\x15\x96\x73\x24\x99\x4e\x71\x25\x69\xb5\x10\x61\x4b\xb7\x49\x59\xbe\x1d\xae\x6c\x23\x55\xcd\x9f\x92\xdb\x93\xfc\x1f\x82\x63\x66\xf9\x6c\x67\xaa\x2c\x6f\x89\x07\x6f\xd0\x65\x4c\x9b\x62\x9b\x14\x56\xc5\x4d\xbf\x82\x95\x4b\x93\x8b\x78\x8e\x1e\x95\xbd\xe3\x96\x13\x72\x42\xc1\x04\xa2\x2c\x2f\x23\x1f\x39\xeb\xc2\x8b\xc8\x5b\x11\xca\x4f\xb7\x36\x1e\xbe\x61\xb5\x7c\x1a\x99\x39\x26\x08\x43\x9a\x9a\xf9\xed\x1c\x67\x51\x08\x5f\xf3\x16\x1d\xf7\xa8\xba\x0b\x15\xdf\xd4\x02\xcd\x94\xeb\x29\x8d\x31\x08\xc3\xdc\xdf\x3e\x4c\x47\xb4\xd3\x8e\x2b\xb6\x84\x0a\x38\xe3\xde\x31\x47\xf7\x28\xe3\x7d\x70\xa0\x47\xb7\xa3\xd4\xbe\xbb\x5b\x5b\x15\x45\x0c\x58\xb7\xea\x57\x0e\xf4\xe8\x81\x92\x2b\xed\x8b\x4f\x06\x9b\x3e\x80\x39\x43\x2e\x6c\xa0\xbc\x14\xb9\x57\xa0\x69\xbc\xcc\xef\xbe\x46\x38\xe8\xf8\x83\xc1\xc0\x91\xc6\x23\x04\xe3\xfb\x7b\xdb\x76\x3d\xba\xcf\xde\x8e\x1d\x3b\x49\xd3\x19\xa9\xd3\xa6\x83\x33\x07\x35\x17\x7a\x5a\x7e\x06\xba\x9b\x83\x01\xb9\x7c\x88\x0c\xa6\xf8\xce\x93\x9d\xe3\x14\x2c\xbe\x6c\x84\x9a\xc5\x17\x0e\x8d\xd0\xc7\xe5\x76\x38\xf8\x42\x25\x7d\x01\x5d\xac\xd1\x2c\xc9\x7c\x22\x57\x70\xd4\x4f\x3f\xc1\xa4\x42\xcc\x79\x0a\xda\xf9\x37\x37\xd7\x07\xf3\xc9\xf4\x7d\xa3\x34\xeb\xb5\x3a\xf9\x4a\x27\x50\x55\x33\x76\x20\x9c\xcc\xc0\xd9\xaa\xa2\x8f\xd4\x39\x54\xa5\xa3\xe2\xe9\xd9\xf3\x99\x17\xb9\xd9\x6b\x32\x54\x51\x08\x16\x86\x9c\x9a\xa2\x57\xcf\xf3\xa4\x54\x7e\x4b\x17\xa8\xe2\xb0\xdb\x85\xb1\x37\x4a\x41\xd3\xdc\xd3\x55\x40\xd6\xad\x8c\xc2\xaf\x89\x50\xeb\x4f\xb1\x55\x95\x33\x2b\x5f\x88\x7a\x35\x57\xe9\xc3\xd3\x51\x3a\xab\x4e\x3e\x61\xfe\xe6\x09\x27\xe8\x6a\x94\xf1\xaa\x2e\x49\xd7\x8e\x9a\xf0\x87\x6e\x88\x62\xc6\x1f\x75\xaa\x0b\x7a\x65\x76\xfe\x99\xa3\x5c\x8a\xe6\x0e\xbf\x90\x01\xd4\x50\x39\x38\xd0\x52\x4c\xb5\xd4\x5f\xb6\x99\x8a\x12\x7e\x31\xe9\xcb\xeb\x74\x14\xd0\x98\x54\x3b\xa6\x7f\x01\xfb\x32\x4e\x2f\x82\xd8\x2e\xfa\xb4\xaf\xb5\x2b\x5a\x42\x9b\x9a\xbc\x64\x6d\x2c\x1f\xed\x73\x66\x16\x12\x73\xac\x02\x8b\x31\x92\xfe\x88\x42\x0f\x9b\xa7\xbb\xa0\x8c\xbd\xc8\x79\x91\xd3\x0d\x0b\x5a\xc5\x68\x4e\x58\x7d\xd8\x5e\xec\x2e\xdc\x9c\x4f\x02\x43\x99\x75\x8a\xe5\x63\xd8\x66\x70\x4b\x37\x1c\x83\xe7\x11\x05\xf1\xfc\x01\xbd\xb3\xd5\x4e\xd8\x80\xc3\xfd\x1c\xd9\x51\x48\x2a\x4a\x93\xa3\xbb\xf7\x2f\x4e\x3f\x1c\xbf\xff\x70\x24\xbd\xe1\x6c\x86\x12\x6c\x83\x51\x9a\x84\x47\x76\x94\x9d\xb2\xdf\x0b\x20\x4b\xcc\x50\x7a\x15\x91\x33\x7c\x31\x5c\xb0\xec\x1d\xd9\xd1\x1d\xa9\xf2\xe8\x6e\x01\xd8\xe7\xff\x3f\x7b\x6f\xbf\xde\xb6\x8d\x2f\x08\xff\xef\xab\x90\x39\x7b\x7c\xc8\x0d\x44\x4b\x4e\x9b\xe9\x28\x65\x3d\x69\x92\x39\xcd\x99\xb4\xc9\xc6\xe9\xcc\xee\xea\x68\xf3\x40\x24\x24\xa1\xa6\x00\x15\x04\x6d\x6b\x2c\xed\xf3\xde\xc6\x7b\x7b\xef\x95\xbc\x0f\x3e\x48\x82\x14\x29\x91\xb2\xdd\x58\x09\xfb\x47\x63\x91\x00\x08\xfc\x00\xfc\xbe\x3f\xc4\x5f\x49\xb3\xc1\xad\xf8\xd0\xc5\xaf\x2f\x5f\xbe\xbe\xb8\x18\x58\xbf\x5d\x73\x6b\xbd\x06\xbf\x5d\xf3\xc2\x0b\x39\x57\xf1\x4a\xfe\x31\xb8\x55\x75\x18\x1a\x00\xb9\x84\x6b\x6a\xb8\x33\x1b\x8c\x55\xf2\xab\xa3\x7f\x2b\x36\x49\x6f\xd3\x25\x5a\x46\x36\x92\x4e\x5a\xfa\xc9\x14\xf1\x77\xd7\x24\xd9\xb8\x0b\xc5\x1d\xa9\x5e\xcc\xdb\xd6\x46\x0c\xc3\x4f\x4e\x6c\xe6\x31\x57\xa5\xf9\xb7\x73\x12\x83\xf6\x1c\x2a\x1d\x22\xc1\x10\x94\xc9\x39\xba\x88\xc4\x73\xc4\xe0\x38\x44\x6b\xc7\x71\x00\x71\x17\x71\x34\x4b\x73\x4b\x31\x47\xbb\xf8\x75\xc8\x3a\x5d\x1d\x4b\xd4\xf5\x89\x87\x52\x07\x93\x0e\x3a\xaf\x3a\x8e\x3c\x39\x83\x04\x64\x1f\x1b\x1c\xf7\x80\xac\x43\x36\x8d\xd3\xdf\xd7\x0c\xeb\xd0\xea\xde\xda\x19\xa0\x21\x1f\x79\x04\xa0\xf5\xfd\xb0\xab\x74\x47\x66\x21\xd2\xfb\xe5\x7d\xbc\x8c\xca\xd9\xd5\x0b\x9d\xce\x4e\x66\x7b\xb2\x12\xcf\x07\x2b\x5f\xaf\x5a\xb7\x59\x40\xc9\x06\x14\xe8\xef\x77\xc0\x4c\xc4\x97\x12\xf1\x88\xc9\xfa\xc0\xfa\xaa\x29\x45\x49\xbe\xc4\x42\x4e\x4b\x6b\xd6\x5b\xa0\x38\xf0\xb3\x1a\x18\xe9\x2d\x03\xc9\x95\x6c\xea\x61\xaf\x38\x8d\xc4\x9c\x98\x8f\x03\x10\xb7\x5b\xf2\x1a\xe9\x05\xdf\x08\x03\x90\xea\xa9\xe4\x6d\x65\x3a\xff\xf2\x70\x11\x31\xf2\xa9\xa1\x91\x33\x22\x46\x80\x31\x75\xbd\xd4\x53\xcd\x40\x9f\xed\xa3\x9b\xce\x56\xd9\x4f\x57\xa9\xb3\x06\x59\xba\xe6\x04\x6b\x56\xc0\x36\xe5\xd1\x64\xe8\x67\x82\x3c\xf3\xfb\x6b\xd6\xd4\xa4\x04\x31\x46\x73\xf5\x36\x12\xbb\xf5\x33\xb1\x3a\x89\x6f\x4e\x23\x14\x4e\xf4\x42\x37\x6b\xc9\x9f\x6d\x8b\xae\xd8\x68\x52\x88\x3c\xde\xac\x75\x51\x83\x11\xdd\x05\xb6\xf4\xf8\x7d\x46\xc0\x89\x0b\x71\x9a\x4c\xa4\x12\x76\xcf\x4a\xdc\x29\x7a\x65\xd9\x70\x32\xf6\x6d\xa8\x0b\x3a\x48\x9e\x17\x72\x68\x15\x73\x6c\xe6\x0b\x99\x5a\x9a\x46\x59\xc5\xd2\xf2\x9f\x67\x6b\x04\x05\xdd\x67\x57\x7e\xbb\xe6\x4d\x37\xe5\x1b\xf0\x8d\x60\xce\x63\x3e\xfb\xf5\xc3\x5b\x33\x1c\xa8\x26\xd0\xff\xfc\xc5\x00\x5d\x71\x27\x9f\xfb\x32\xc0\x98\xcf\x28\xc3\xff\x42\xfa\x36\x7c\x93\x95\x47\x4e\xd1\xe8\x9f\xc1\xd0\x4a\xda\xc9\x8a\xa0\x2f\x69\xb0\xbd\x81\x22\x86\x9b\x79\x76\xfe\x58\xac\x54\x52\x9f\xb0\xdc\xa3\x04\x9c\x81\xac\xd0\xe0\x56\x51\x24\x29\xdb\xb2\x69\x43\x48\xa0\x9d\xa3\xb3\xaa\x18\x60\x52\xf4\x4f\x5c\x33\xa0\x93\xea\xaa\xa2\x21\xb9\xea\x30\xf9\x72\x7f\x72\xa8\xa6\x2e\x25\x1b\xcc\x6b\x2a\xb8\xe0\xad\x82\x0b\xad\x34\x48\xdc\xab\x97\x88\x5c\xba\x97\x0a\x43\x86\xfe\x37\x61\x0b\x06\x9b\xb9\x0e\x34\xb9\xf5\x74\x72\x3f\x01\xb6\x52\x9f\x76\x24\x4b\xf8\xb9\x9c\xfe\xe7\xc5\xbb\x5f\xbc\xcd\xac\x30\x66\xdb\x24\x05\x2b\xf7\xfa\xcf\xf9\xf7\x45\x3f\xf8\xe7\xfc\xc9\x93\x24\x46\x42\x9c\xb9\x63\xc3\x19\x9e\x9b\xce\xf0\x5c\x3a\xc3\xf3\x7f\x3b\x3b\x27\x9a\x61\xb7\xa9\x03\x8e\x7b\x4e\x49\xee\x59\xc1\x73\x4b\x4e\x97\x0e\xf9\xc8\x59\x3b\xce\x60\x07\xef\x1d\x95\x72\xcb\x18\x45\x36\x02\xbb\xba\xda\xd4\x71\x06\xc6\x9c\x2a\x26\x54\xcd\x8e\xef\x92\x0b\x28\xe0\x4a\x85\x9f\x04\x70\xad\xed\x5b\x43\x85\x29\x77\x2a\xfb\x0d\xd4\xe6\x26\x2f\x92\x5f\xe0\x97\xa4\x26\x89\x7a\x9e\xfe\x5c\x83\x5b\x41\x21\x7e\x46\x7c\x46\x83\x42\x72\xc7\xec\xc5\x79\xe1\xb7\x6e\xb8\x76\xd6\x05\x6d\xfa\x66\xca\x46\x5c\x43\x0e\x94\x3e\x1b\x8f\xc3\xd2\xfd\xd3\x8b\xdf\xff\xc7\xeb\x1f\xfd\x8f\x4d\x13\xdc\xa4\xe1\xea\x79\x0f\x14\xeb\xaf\x4a\xf0\x7e\xa3\x8b\xb9\xff\x84\x03\x55\xaa\x2b\xba\x98\xc9\xc4\x72\xd6\x5f\x83\x98\x41\x8d\xd8\xfe\x2a\x0d\x2b\x32\xd4\x97\x2e\x16\x88\xa5\x65\x2d\x65\xd4\xba\xe8\xaa\x09\x7b\xcf\xa8\xe1\xf5\x8d\x72\x38\x94\x49\x61\x8a\x3a\xbc\xb3\x91\x2e\xbf\x5d\x96\x5f\xd0\x9a\xd1\x2b\x59\x69\x2e\x9f\x1c\x2e\x0b\x61\x2a\xe1\x08\x80\xc5\xe9\x62\x2f\x61\xa6\x76\xda\xd6\x9a\x1e\x85\x06\x5c\x29\x11\xa7\x49\x56\x3e\x96\x52\x8f\x86\xac\x01\xd8\x04\xae\x59\x0d\xd9\x85\x8e\xf6\x69\x86\xf3\x8d\x83\xfa\x59\x1d\x44\x16\x34\xa4\xd3\x65\x77\x8e\x38\xc3\x7e\x74\xea\x4b\x39\xf8\x33\x17\x93\xf8\xf1\xd9\x82\xfe\xf8\xf6\xd7\xf2\x8b\xb3\x40\xcc\x47\x84\xc3\x69\x5a\xa8\x4e\x1e\x69\x65\x71\x97\x6e\x76\xf4\x67\xb5\x98\x0f\x08\x46\xea\x32\x68\xaa\xfd\x57\x49\xac\xff\x3a\x83\x91\x6e\xf1\x3e\x95\x6e\xca\xb2\x4c\xc1\xcc\xa3\xcc\xd7\x59\xf9\x73\xba\xf2\x67\x5a\x57\xae\xbf\x1d\xb9\xd1\x8c\x5e\xbb\x09\xee\xd1\xde\xdc\x9a\x2d\xcb\x2b\xca\x25\x2f\xb8\x40\x6c\x8e\xa3\x48\x99\xa0\x0a\xba\xf0\xb3\xcd\x14\xa5\xfd\xcc\x43\x3c\x45\xb9\x69\x78\xbc\xf1\xa1\xca\x34\xa6\x65\x75\xd2\xad\x54\xc9\x9c\x9b\xeb\xee\xf0\x8e\x5c\xdd\x79\xd3\xcb\x7a\x97\x73\xda\x5f\x0a\xb6\xbd\x1d\xf5\xb2\x36\x34\xf3\xa5\xeb\x7f\x5a\x78\xb8\xbf\x8b\x5b\x99\x3b\xa1\xe6\xee\x3e\xaf\x33\x61\xa7\x93\x2e\xf0\x61\x7d\x0a\x8b\x86\x91\x4d\x90\xef\x1e\xbe\x9e\x07\x5f\xb5\xef\xa2\xfa\x66\x56\xf6\x38\xd9\xe7\x67\xfb\x38\xa5\x56\x7b\xbe\x36\x53\x34\x6d\x4e\xd6\xb4\x16\x2d\x60\x14\x61\x32\xdd\xcf\x38\xdd\x29\x73\xab\x94\x67\x2f\x1d\x76\xc3\x22\x94\x7d\x50\xc1\xf9\xdf\xf6\x07\xba\xb9\x8e\x6b\xc8\xc8\x03\xac\x23\x1d\x76\x63\x1d\xd9\x07\xef\x75\x1d\x3e\xc3\x1c\x6b\x03\xde\x7d\x2e\x24\x1b\x77\x63\x25\xc6\x27\x1b\x2d\xa5\xdc\x47\xf6\x6e\x2e\xd0\x33\x04\xc3\xbc\xd5\xfa\xb3\xe0\xac\x7f\xa2\x0e\x64\xa8\x13\x13\x38\x0e\x51\x87\xd3\x4e\x20\x96\x33\xc7\x04\x75\xf8\x0c\x75\xd4\x2c\x3b\x62\x94\x38\xea\xd0\x49\x52\x26\x30\xea\x60\xd2\x61\x68\x4e\x39\xea\x04\x29\x16\x88\xdc\x3f\x06\xf3\xfd\x24\x67\x75\x1f\xf8\xad\x2a\xda\xa5\x8a\x2c\x9e\x49\x06\xa0\x70\x9a\x05\x71\xfb\x3b\x26\x32\xb7\xb7\x85\xc9\x94\xa1\x28\xea\x4e\x21\x47\xd7\x70\xb9\x91\x66\x6d\x2f\x3c\x96\x20\xdd\x6f\x47\x82\x2d\x8e\x38\x43\x70\xbe\x67\xc1\xca\xc2\x09\x2a\x70\x97\xa2\x79\x94\x39\x3a\x24\x5a\x13\xcd\x97\x21\x12\x2c\x28\x56\x52\x8b\xc1\xcf\x25\x2c\x5e\x91\xaf\x33\x16\xd0\xab\x62\x0e\x36\x8c\x0c\xe5\xb4\x25\x5d\x75\x37\x8a\xe7\x73\xc8\x96\xdd\x09\x65\xdd\x74\x0e\xc9\x2e\x5c\xe8\x07\x9b\x5c\x97\xd6\x56\xd6\x29\x73\xbc\xb3\xd0\xf7\xe1\x40\x2d\xa0\xd7\xe4\x0f\x83\xdb\xd6\x4a\xd0\xdb\x73\x91\xb2\x9c\xc6\x8e\x50\xde\x95\xbf\xf4\x3c\x4f\x15\x16\xea\xe6\x04\x8b\x50\xfa\x23\x64\x2e\x0a\x49\x5b\xac\xb2\x03\x50\x62\xb0\xef\x51\x5a\xfb\x12\x8a\x5b\xda\x44\x0a\x2c\x91\xbe\x1a\x4a\x83\x9f\x12\xd9\xe9\x1d\x09\x97\x69\x33\xfb\xae\x72\xa0\xd8\xda\x6e\x88\x09\x2a\xcd\x11\xf0\xd7\xa9\xca\x88\x72\x6a\x54\xff\x2a\xda\xcc\x75\xb1\x24\x40\x01\x06\xf0\x28\xb5\x31\x87\x59\x06\x0c\x3b\xf4\x4a\x0a\x3b\x29\x53\xf8\xc9\x89\x96\xf9\x8a\x2f\x5c\xcc\x11\x83\x9c\xb2\xf3\xb2\x94\x1a\xba\x36\xd4\xba\x2c\xdf\x06\x3a\x39\xd9\xf2\x39\x59\x28\x2f\xe2\x2c\xf6\x39\x65\x9e\xe7\xa5\xcf\x8f\x93\xbf\xb3\xc4\x55\xe7\xc9\xdc\x06\xe9\x07\x1d\x1b\x39\x99\x21\x3d\x36\x3e\x6b\xce\x04\x4f\x6c\x59\x24\xca\xc5\x91\x2a\x16\x85\x1c\x27\x49\x44\x22\x06\xb0\x91\xb3\x5a\x15\x3a\x58\x31\x51\x5b\x17\x58\xc7\xc5\x49\x17\x40\x22\xa8\xa6\xd6\x1e\x66\x03\xab\x0f\x4e\x18\x9d\x97\x7c\x41\x6c\x14\x9e\xd8\xc7\x48\xb7\x3e\x12\x1f\x8c\xb8\x2c\x9a\x92\x95\xda\x32\xe6\x08\x78\x92\xbc\x43\xab\x02\xb2\x6c\x5e\x9c\x5e\xc8\x8e\xae\x0f\x43\xb1\xcb\x6e\x14\x62\x1f\xd9\xdf\x81\x6e\xdf\x39\xb2\x54\x73\xcb\xf3\x3c\x52\x00\xb6\xcc\x1c\x95\x7b\xa2\xca\x09\xca\xb9\xfc\x0c\x17\xb2\xcf\x6a\x65\x5d\x28\x7d\x32\x29\x5d\x98\x6c\xfc\x22\xd1\xf1\xea\x2e\xa7\xff\xc7\x3e\x1f\xfc\x8a\x57\x6f\x1c\xc2\xed\xf3\xc1\x77\xab\xfe\xb3\xd5\xd3\x33\xc7\x3e\x1f\xbc\x0c\xe1\x7c\x81\x02\xe7\x5c\x0e\xf2\xdf\x4e\x5d\x8e\x22\x6e\x13\x27\xbf\xd2\x02\xb4\x9c\x5b\x3e\x63\xf4\xba\x43\xd0\x75\xe7\xe3\x72\x81\x5e\x33\x46\x99\x6d\xbd\x21\x32\xc3\x50\x07\x72\x71\x15\xb9\xe0\x72\xa2\x05\x43\x30\xe8\x10\x4a\xba\x72\x6f\x04\xf3\x83\x49\xc4\x21\xf1\x91\xfb\x5f\xe4\x0d\xe9\x50\x16\x20\x26\x9a\x8e\x51\x27\x69\x02\x64\x07\x19\x97\xd4\xa1\x12\x5c\x51\x67\x1e\x47\xbc\x33\x83\x57\xa8\x03\x3b\xc3\xc2\x76\x8f\x6c\xa7\x33\x97\x4a\x54\xd7\x72\xd6\xb6\x71\xfe\xd4\xf4\x6f\x6d\x81\x54\x3d\x8f\xaf\x56\xfc\x07\xa4\xd5\xe4\x8e\x4c\x72\x93\xfe\x3a\x4a\xeb\x9a\x79\x3d\xc0\x8c\x32\x66\xdc\x79\x4e\xbe\xe7\xcf\xc9\x93\x27\x0e\x1b\x92\x91\x87\x86\x24\x29\x58\xd6\x61\xd9\x97\xa2\x24\x47\xaf\x73\x4b\x4e\x4e\xb6\x78\x8a\x18\x1e\x22\xc4\xf0\x4d\xc9\xfb\x8a\x10\xd7\xfc\x99\xf9\x8d\x10\x37\xf9\x13\x68\x8f\x93\xa4\x66\x19\xfe\x17\x62\xe7\xb9\x5f\xea\xf8\x31\x27\x53\x2c\xa7\x93\x9d\x64\x07\xde\xce\x36\x84\x4e\x3a\xdc\x71\x4a\xb7\xf6\x25\x24\x84\xf2\x8e\x18\xb1\x03\x3b\x32\x8f\x4b\x07\x46\x1d\x98\x5e\x6a\xcb\x18\x7d\xa1\x7d\x85\x32\x80\x0a\x08\x26\xd6\x09\x92\x58\x27\x98\xc7\x25\x28\x0d\x20\x78\xe6\x8f\xd5\xea\xb8\x0f\x58\x0e\x10\xde\x71\x0f\x68\x23\x96\xe0\x8b\x4f\x4e\x6c\x96\x02\xc4\x3b\xee\x39\xa0\x0a\xee\xcc\xbd\x44\x4b\xc0\x9c\x75\x36\x4b\x55\x86\x2c\xc1\xc0\x41\x72\x8d\x55\xbe\x7c\x75\x93\xdf\x4d\x8a\x28\x22\x4d\xf8\xf6\xe9\x93\xbc\xef\x9f\x3e\x79\x1c\x48\xa4\x27\x6e\x49\x3a\xf6\x3c\xcb\x52\x94\xaf\x26\x65\xe0\xb0\x14\xab\x7c\x40\x93\x10\xf9\x7c\xb5\x3a\xd6\x7f\x65\x18\x40\xdf\xc2\xe3\xbe\xb8\xd5\x1b\x6f\xdd\x68\x06\xe7\xb9\x26\x25\x68\xfd\x3d\xa3\x37\xcb\xa4\x51\xef\x88\xb3\x65\xb2\x88\x57\x90\xa3\x4a\xac\xb5\xf1\x31\x5b\x34\x17\xac\x97\x99\xc6\x4d\x3a\x54\x1d\xf7\xd6\xbe\x2e\xbd\x76\x9b\x4c\x66\xbd\xb6\xd3\xcc\x52\x85\x48\x12\x02\x98\x37\xd3\x88\x8a\x27\x76\xaa\x99\x0a\xc8\x31\x71\xdf\x11\xf1\x36\x27\xc1\x32\xa3\x1c\xa0\x8e\x4a\x0d\x44\xbc\xaa\x12\xb3\x7a\x02\xfa\x05\x31\x77\x7f\x69\xee\xe7\x31\x5f\xad\x2c\x85\x68\xac\x63\xcf\x0b\x6d\xee\x98\x24\x32\xa5\x36\xfc\x7c\x6c\x23\x67\xc0\xb3\x61\xc6\x9a\x36\xa9\x2b\xe6\x79\x1e\x32\xee\xcf\x07\x34\x41\x0c\x11\x3f\xb9\x44\x62\x16\x9d\x19\x8c\xc8\xbf\xf3\xce\x18\x21\xd2\x49\x2e\x6b\x84\x82\x4e\xb7\x23\xed\x8f\xb6\x93\x6b\x21\xf6\x02\x05\x56\x96\x69\x30\xfb\xb4\x01\x6f\x7b\x56\x7e\x7a\xcf\x33\x3b\x98\xf1\xb4\x94\x25\xc8\x0e\xf4\x6a\x55\xda\x4b\xd0\xcc\x3c\x6d\xbf\x32\xb3\x92\xab\x9c\xe2\xb7\xeb\xa3\xbc\x67\x9e\x74\x09\x64\x65\xf6\x3b\x01\xb7\x21\x1a\x79\x6c\x88\x46\x82\x2b\xc3\x26\x1a\x38\x3e\x36\x7f\x02\x5c\x40\x02\xc7\xf9\x07\xc0\xce\x70\x02\x5e\xad\xb0\x89\x04\x05\x96\xc7\x79\x1c\x81\x3d\xa2\x29\xb2\xe3\x32\x74\x85\x58\xa4\xfe\x0a\x62\x1f\x99\xd5\x36\x05\x2a\x4f\xf0\xbc\xf6\x07\x5c\xad\xc8\xda\x01\xd8\x01\xd4\x48\x35\x96\xfb\x9e\xfc\x9c\x9c\x4d\xfe\xf9\x39\xde\x44\xcd\x34\x41\xcd\x20\xf7\x52\x1b\x08\x92\xe2\xa6\xde\xe6\x17\xaa\xa9\x0b\x96\xcb\x93\xa9\xcb\xf0\x3d\xb9\x15\x4e\xb7\xdb\x28\x7e\x3c\x8b\xbe\xfb\x3d\x78\xcd\xb6\x46\xc1\x08\xfe\xb9\x20\x96\x51\xe2\x33\xa4\xfc\x09\xff\xaa\x2c\x63\xd6\x5f\x25\x9b\x6d\x86\x99\x94\x44\x65\x18\x7e\x82\x1b\xd9\xd7\x0b\x4e\x33\x3d\x30\xb4\xa6\x88\xbf\xf1\x29\x49\x12\xd1\x95\x85\x7d\x6b\x51\x2b\xa7\x91\xc8\x39\xef\xa5\x6e\x27\xf7\x10\x79\xd3\xef\x03\x2b\xba\x52\xea\xbf\x67\xc0\x12\x2b\xff\x91\xde\x6c\xe6\x9f\xf9\x16\x0c\x2d\x99\x6f\xd8\xea\x28\xf1\x51\x3c\x58\x16\x1f\xa8\x94\xa7\x85\x87\x69\x42\xfb\x5c\xe4\xad\xb5\x60\x48\x80\x1f\xbd\x88\x16\xc8\xe7\x1f\x20\xc7\xd4\xd2\x96\xcc\x34\x22\x36\xa9\xa4\xb6\x1d\x72\x49\xeb\x3f\x6f\x6f\x9d\x57\x54\x57\x66\x06\x0b\xd0\xa4\x3c\x87\x52\xd2\x60\x0e\xd9\x25\x62\x5a\xa3\xd7\x07\x16\x0c\x43\x7a\xdd\x0d\x28\xd7\x8f\x32\x20\x5a\xdd\xb3\x4e\xf7\xac\xd3\xff\xb6\xd3\xff\x36\x79\xc9\xd0\xe4\x7f\x5a\xc0\x7a\x66\xfc\xfe\x5f\xe6\x6f\x35\x7a\x52\xe9\xa9\xf0\x38\xcd\x6c\xfa\x6c\x9b\x6d\xa0\x07\x2c\x1f\x33\x3f\xcd\x9f\x66\xf9\x37\xe6\x50\xfe\x32\xf7\xfd\xdc\x68\xcd\xb2\x33\x95\x43\x02\x32\x19\x1f\xb3\x01\x8b\x7e\xa7\xdb\xef\xf4\xcf\x3a\xfd\xb3\x02\x2c\xbe\x2d\xc0\xe2\xdb\x7d\x60\xf1\x0d\xb0\x28\xc3\xca\x04\x0c\x63\x4e\xbb\xb2\x18\x6e\x57\x23\xd4\x1d\xe0\x5a\xd0\x70\x39\xa5\x89\x32\xd9\x92\x6a\x1b\x71\xf1\x7b\x9d\x5e\xa7\xdf\xeb\x7c\x2b\xff\xb9\x27\x20\x05\x88\x2c\xdb\xd3\x92\x00\xa2\x3d\x2c\x65\x5a\xeb\xb2\x6c\x7c\xdf\x6d\xfc\xbd\x61\x76\xbb\x6b\xc2\x99\x33\x20\xad\xf8\x89\xf1\x5b\x29\x1c\xc9\xf2\x0e\x1a\xe7\x14\x66\x50\xdb\x3c\x94\xc9\x5c\x7d\x0a\x07\x59\x39\x81\x8d\xf4\x6b\xaa\x49\x80\x22\x45\x39\x86\x43\x2b\x62\xbe\x65\xbc\x92\x3f\x13\xb3\x7a\xba\xd1\x6a\x27\x2d\x60\xc5\x2c\xb4\xff\x94\xdc\x35\x27\x7f\x1a\xba\x88\x04\xb9\x26\xf2\x14\x3a\x56\xb5\x13\x40\x09\x6c\x4a\x36\xb8\x91\x56\xf9\x33\x83\x26\xa5\x5a\x5b\x60\x63\xe0\xf3\x87\x01\x4e\x89\xea\xf8\x6c\xab\x85\xa6\x66\x45\x87\x5d\xf7\xe6\xcf\x7b\x3b\x22\x54\x99\x02\x16\x74\x21\x3d\xad\x12\x63\x40\xea\x7b\x64\x68\xfc\x53\x16\xb3\x18\x89\x81\x83\x4d\x86\xab\x5f\xe6\x4e\xd1\xdf\xf0\x5b\x49\x19\x4b\x5c\xc5\x1b\x25\xd9\xf9\xaa\xfc\xb8\x4b\xd3\xf7\xed\x54\xfb\xf7\x9b\xf8\x71\xa5\xee\xbd\x13\x4c\x02\x15\x68\x98\x15\xcd\xbc\x9a\x76\xfd\x98\x5d\x15\x9c\x77\x71\xd0\xc5\x32\x21\xbd\xfe\xa1\xb2\x38\x57\x26\x09\x32\x4b\x2e\x34\x8d\x4d\xdc\xa1\x60\x4f\xd5\xfe\xef\x3c\x3b\xd5\xfc\xcb\x49\xa0\x20\x0b\x60\x54\xeb\x01\x30\x97\xe8\xda\xde\xd0\xe7\x96\x09\xf1\x27\x27\xca\x2b\xd6\xe3\xe5\xba\xae\x0b\x21\x87\x77\xd0\x8d\x60\x98\x23\xa9\xcd\x89\x23\xde\x41\x98\xcf\x10\xeb\x8c\x51\x47\xf4\xee\x50\x96\x53\x7e\x1d\x19\x9a\x94\x44\x16\x57\x87\xcf\xd6\x45\xeb\xf5\x4b\x70\x6b\xa8\x38\x06\x5a\xf8\x42\x66\x60\x58\x31\x68\x4c\x80\x82\x9f\x9c\xe8\xaa\xf9\x8e\x0d\x01\x52\x9a\x67\x2d\x7b\x7b\x73\x1b\x3a\x99\x59\x01\x26\x09\x3b\x8e\x26\x5a\x1f\x92\xa9\x36\x37\x73\x66\x03\x92\xd3\x74\x02\xe6\xf5\x9e\xb3\xef\xf9\x73\xf6\xe4\x89\x43\x86\x6c\x64\xb8\x0e\xb3\x54\xeb\x19\xd9\x63\x1b\x79\x54\x0a\xb1\x5a\xf3\x42\xc1\x50\x7c\x6c\x94\x56\x3d\x70\x1c\x07\x14\xee\x08\xc0\x60\x6c\x23\xc7\x01\x28\x71\xbb\xe5\x1e\x04\x36\xf1\x86\xb7\x97\x68\x39\xd8\x14\x21\xb4\x8a\xb3\x34\x13\x89\x0b\xd9\x34\x92\x15\x0a\x00\xf7\x62\x3b\xc9\x30\xe2\xfe\x1e\x23\xb6\xbc\x90\x95\xf4\x28\x7b\x11\x86\xb6\xf5\x27\xc3\x38\x27\x8f\x59\x47\x52\x00\xc7\x51\xc9\x4c\x72\x73\xf4\xb8\x3b\x87\x8b\xbc\x97\xb1\x52\x61\xca\xa4\xdd\x7f\x0b\x29\xe4\xb6\xd4\x8c\x7c\xa4\x1c\x86\x6f\x25\x0c\x6d\x47\xc0\x4d\xe9\x4b\x04\x6f\xf2\x82\xeb\xe7\x32\x1d\xbc\x8f\x70\x68\x93\xd3\xa7\x4e\xa2\xc3\x11\x52\x33\x77\x71\x00\x6e\x06\xcc\xbd\xe9\x22\xf7\x06\x2c\x07\xcc\x5d\x76\x91\xbb\x5c\xaf\x1d\x67\xbd\x1e\x39\x27\x27\x0b\xdb\x3c\x34\xc4\x01\x4c\x3e\x03\xcc\x01\x70\x9d\x05\xe4\x0a\x71\xff\xca\xb6\xa9\x07\x1d\xa3\x79\x11\xf0\x43\x32\x92\xe7\x2e\x17\x8b\x98\x8f\x54\x34\x0f\xa0\xa1\x6c\x90\x45\x3f\xd6\x0e\xb8\xb2\xa9\x39\xfe\xe6\x56\x0d\xd9\x68\xb7\xd7\xf5\xd6\x21\x1c\x60\xbc\x77\x00\x35\xed\x76\xef\xc0\x36\x0b\xe0\x14\xbc\x73\x9a\x1b\xf6\xee\xc3\x9a\x07\x42\x10\x03\x1f\x44\x60\x02\x16\x20\x00\x73\xb0\x04\x63\x30\x03\x57\x60\x0a\xde\x81\x6b\xf0\x5b\x76\x2d\x3f\x19\xda\xba\x4f\x5f\xaa\xb5\xef\x7d\x73\x6b\xdf\xc5\x01\x58\xfb\x2e\xbe\x1a\x6b\xdf\xc5\x61\x5b\xfb\x2e\xfe\x30\x6b\xdf\xeb\x43\xb2\xf6\x5d\x1e\x84\x3d\xee\x26\x67\x8f\xbb\xb9\x57\x7b\xdc\x87\xd6\x1e\xb7\xd5\x1e\xf7\xb1\x68\x8f\xfb\xf8\x90\xf6\xb8\x97\x25\xf6\xb8\x97\x5b\xec\x71\x9f\xaa\xed\x71\xaf\x0a\xf6\xb8\x57\x9f\xcf\x1e\xf7\xd1\xa0\xf0\x1f\x3f\x87\x3d\xee\x97\xd6\x1e\xf7\x35\xd8\xe3\x5e\x6c\xb7\xc7\x85\x1f\x2f\xff\xd3\xff\xdf\x17\xff\xbb\xdc\x1e\x97\xb8\x77\x46\x49\xc0\x6e\x92\xa6\x2e\x71\x92\x2c\xf8\x54\x1a\x06\xbb\x84\x81\x16\x7f\x6b\x1e\xfa\x27\x95\x79\xd4\x54\xb4\x54\x5a\xec\xfe\x52\x66\xb0\xfb\x6e\xd3\x60\xe7\xc3\xd0\x8f\xc3\x5c\xfc\x75\x85\xa5\xae\xdf\x4f\xa3\x6f\x92\xb4\x75\x9a\xc5\xf7\xd3\x18\xbf\xd4\x56\xa5\x13\x8b\xec\xf1\xd9\x74\x84\x7e\xe3\x11\xe4\xbb\xef\xc0\xd0\xfa\x35\x05\xfb\x28\x7b\xf8\x2a\x95\x4b\x73\xfa\xa3\xd2\xc0\x21\xb3\x6a\x4b\x3f\xd1\x29\x15\x07\xd9\x3b\x25\x7a\xae\x24\x73\x16\xd0\xd4\xcf\x39\xb6\xe6\x80\x5a\x65\xcb\xab\x28\x1b\x91\xea\x5e\x0b\xc1\x02\xcf\x4a\x13\x78\x6d\xc4\x1b\x3c\xa0\x67\xfe\x3b\x12\x2e\x3b\xd1\x8c\x5e\x63\x32\xed\x64\xab\x8d\x3a\xd7\x98\xcf\x30\x91\xce\xf9\x7e\xcc\x18\x22\xdc\x70\xc0\xef\x4c\x28\x33\xe2\x82\xfe\x6c\xb8\xf6\x02\xc3\xc9\x57\x4d\xfb\x3e\x9c\xf5\x2b\x2d\x16\xfd\x0d\x37\xe6\xbc\x5a\xb3\xf2\xa0\xed\x9d\x59\x66\x53\x17\xab\x43\x25\xcb\xbd\xb2\x4b\x3c\xb1\x4b\xc2\x0e\xab\xfc\xb3\xa5\x2b\xbe\x4e\xf9\x50\x84\xf4\x28\xa7\x52\x15\x57\xb0\x2c\x9e\x31\x7b\xbb\xf1\x81\x1a\x6a\xd7\x6f\xf6\xd4\x8e\x57\x5c\x27\x0d\xb1\x46\x77\x49\xa2\xb6\xa4\x63\x92\x2c\xb2\xea\x8e\xd5\x38\x8e\xbb\x4e\x94\x69\xd5\x2f\x05\x68\xf3\xe0\xa1\x52\x5f\x7e\xc4\x30\xaa\x76\xe6\x37\x8e\x8d\xe4\x83\x7c\x1a\xee\x70\xe2\x4f\xb2\x79\xe7\x57\xbf\xdb\x9d\xbf\xe4\x64\x81\xe2\x19\x13\xb7\xe8\x7d\x32\x8d\x86\x47\xaa\x0c\x85\x3f\x2b\x9d\x6b\xbd\xd8\x96\x3b\x03\x7e\x9f\x20\x8a\x87\xdf\x03\xab\x32\x70\xe2\xc1\x76\xa6\x49\x68\x45\x31\xc2\xcc\xbc\x9c\x21\x26\x97\xd6\x76\xca\x7d\x06\xfe\xb2\x7f\x00\x51\x21\x04\x3b\xc1\x05\xe9\x67\x55\x28\xb6\xfa\x84\xb4\x2c\xa6\x69\x24\x3f\x8d\x43\xa8\x1b\x49\x0b\x7e\x28\x3d\x7e\x54\xe2\xe9\x0e\xa1\x4c\x08\x44\x2c\x8f\x4f\xde\x2d\x10\xe9\xe8\x4f\x74\x5e\xc1\x68\x36\xa6\x49\xc8\xf7\x9e\x86\xd7\xb2\x35\x28\x71\xa1\xb8\x84\x7e\xde\x44\x9e\x44\x44\xbf\x7a\xf7\xf2\xe2\x93\xcc\xb7\x94\x26\x48\x83\x53\x44\xf8\x29\x5d\xa8\xd4\xd6\x33\x3e\x0f\xff\x14\xe3\x4f\x6a\x54\x6b\x74\x1f\x70\x78\xa9\x05\x1a\x94\x02\x23\x68\x00\x8c\x92\x52\xea\x8d\x62\xc9\xf3\xac\x97\xf2\x8b\x2b\x27\x15\x65\x57\x3c\x33\xa9\x65\x29\x33\x74\xe0\xbf\x71\xa7\x13\xaf\x3b\x1d\xc7\xb4\xe9\x7f\x57\x30\xa1\x1a\x33\xd2\x17\x33\xbb\x6e\xe2\xd5\x3f\xc4\x78\xc6\x15\x54\xe3\xbe\xc2\x73\x44\x22\xd3\x25\x2c\x69\xff\x56\xad\xaa\x8a\x21\xae\x12\x12\xfa\xbd\xea\x9c\x4a\x3b\x88\x5a\x09\xff\xfc\xeb\xe2\x01\xb9\xe7\x34\x98\xce\xa7\x61\x3c\x2f\xf2\xb2\xe5\x4c\x5c\xb1\x18\x9e\x19\x6a\x56\x2a\x4f\xdc\x43\x88\x7f\xc5\x9c\xab\x79\x94\x6a\x8e\xfe\x6c\xa3\xf0\x4d\x5d\x4e\xb5\x7f\xe7\xc2\x93\x8d\x79\xd3\x92\x9c\x19\xc9\x3d\xb9\x03\x8f\xfa\xb4\x94\x55\xcd\xe2\x49\x1f\x90\x5d\x7d\xba\x15\xf3\xec\x48\x6f\x7c\x1f\x0c\x6e\x7a\x7a\x9a\xa2\xac\x78\xf1\x00\x08\x2b\x0f\x72\x03\x5d\xc5\x8b\x26\xc8\x2a\x5e\x6c\xa0\xaa\x82\x40\x7f\x1f\x88\x6a\x57\xf0\x66\x45\xf1\x3e\x46\xe3\x85\x72\xf1\xe8\x8a\x47\x5d\x4c\xd2\x20\x4c\x19\xee\x99\x06\x79\x4a\x3f\x0f\x23\xdf\x5b\xe6\xc0\x51\xed\xfc\x71\x47\xd7\x8e\xbc\x3f\xc7\xcf\x99\x3f\x47\xb1\x3a\x4c\x8c\xbb\x9a\x76\x67\x39\xaa\x8b\x6d\xc4\x9a\x1c\x40\x8b\x1e\x21\xb8\xf8\x00\x16\x1f\x84\xc5\x07\x71\xf1\x81\x5f\x7c\x10\x15\x1f\x4c\x0a\x7e\x27\xbf\x7d\x35\x7e\x27\x37\x89\xdf\x09\x2e\xfa\x9d\x7c\xb0\xb1\xe1\x77\x82\x0d\xf3\xf8\x86\xa5\xe1\x01\xa2\xcd\x94\x0d\x01\x3b\xe0\xb5\xfd\xca\x26\xda\x1b\x45\x3d\x14\x5f\x73\x80\xe5\x4f\xa6\x16\x08\xc0\x2b\x9b\x38\xba\x95\xa3\x6f\xc6\xbc\xf0\x70\xe3\xf2\x83\x65\xa1\x45\xca\xdf\x80\x71\xc9\x1b\x85\x1e\xc0\xac\xf0\x4a\x63\x19\x70\xb5\xf1\x5c\x77\x98\x16\x5e\x94\x11\x9d\x77\x85\x36\x1b\x49\x9d\xae\x75\x03\xe2\x6e\x76\xf7\x8e\x8f\x89\xeb\x4f\xa6\xb2\x42\xbd\xe3\xea\x7b\xf9\x29\x49\xf1\x08\x88\x8b\xc8\x95\x7b\x05\x05\xcc\x35\xaf\xfd\xe2\xe3\x8b\x97\xaf\x7f\xf9\xf8\xfa\xc3\xa7\xb7\xef\x5e\xbe\x78\x6b\x39\x9e\xe7\x11\xe5\x6d\x93\xdc\x6f\x39\x9a\xc9\x97\x38\x27\x27\x1b\x32\xeb\x71\xda\x4d\xdf\x60\x57\x13\x43\x57\x88\xb9\xab\x95\x4d\xdc\xc2\x52\x3c\xeb\xd7\x34\x3b\xc6\x04\x71\x7f\x96\x72\xde\x13\x79\xea\x37\xd2\x60\x58\x0e\x20\x99\x2b\x11\x36\x5c\x89\x02\x06\xaf\x5f\x65\x1b\x53\xf0\x23\x4a\x6d\x81\x43\xe5\x41\x6f\x65\x6e\xb7\xde\xed\x8d\x4a\xe6\x57\x3c\x12\xee\x4d\xf7\xcf\x60\x59\xf1\x6e\xf9\xa4\xfc\xb9\x8a\xc4\x38\x3d\x4b\xad\x30\xa8\xe0\x5e\x94\xce\x04\x55\x96\xd6\x67\x72\x4a\xee\xcd\x13\xee\xca\x68\x0f\x31\x09\xf1\xc1\x8d\xc1\x6f\x71\x30\x40\x2e\x0e\x40\xe6\x18\x3a\x90\xc3\xbe\xe0\x9c\xe1\x71\xcc\x91\xbd\xe1\x4c\xea\x80\x00\x45\x7c\x40\x40\xc4\xfc\x01\x5b\xaf\x1d\xc7\x8d\x28\xe3\xe6\x0c\xcd\x2c\xe8\x69\xf5\x22\xe4\x66\x83\x38\xdd\xec\x39\x31\x9f\x4b\x5f\x26\x90\x6d\xc8\xaf\x8b\xfb\xdc\x8e\x27\xdf\xba\xdf\x7e\xd6\x0d\xe9\xea\x0d\xe9\x9e\x7d\xfb\x10\x7b\xc2\xe4\x9e\x90\x07\xdc\x93\xcc\x60\xb1\xe9\x68\xa7\x4b\x77\x29\xa4\xe7\x95\x7b\xd7\x95\xb8\xd6\x59\x4e\x25\xd8\xe4\x88\x0a\x23\x56\x8f\x57\x60\x1f\x2b\x47\x3b\x52\x8e\x80\xef\xeb\xfa\xfd\xa5\xb2\x4c\xc7\x95\x02\x81\xe3\x00\x5e\x39\x0b\xb7\xa0\x6c\x75\x00\xd9\xf1\xa5\x82\x9c\x97\x7e\xe4\xa8\xf4\x14\x2a\x57\xc1\x6a\x20\xa5\x14\x45\x97\xa3\x33\x71\x99\x8d\x52\x48\x16\x9a\xe8\xdb\x65\x13\xed\x40\x78\x59\xe2\x40\x78\xa9\x1c\x08\x71\xce\x81\x30\xf0\x7e\xb1\xed\x85\xf7\x5b\xce\x81\x50\xd2\xce\xbb\xbb\x0d\xce\xbd\x5f\xec\x85\x39\xae\x24\xbf\x43\x76\xd7\x71\x97\xc5\x71\x37\x29\xf8\x90\xde\xf5\x23\xe3\xe2\x47\x32\x26\x60\x88\xef\x3a\xf8\xac\x6c\x70\x8d\x1f\x87\x70\xef\xd1\x37\xf2\x06\x0f\x47\x82\x8f\xbb\x2a\x7e\x2d\x61\x4d\x86\xe1\x5d\x17\x32\xdd\x1c\x3a\x59\x46\x7c\xdf\xcb\x78\x57\xfc\x56\x19\xc3\x34\xf4\xef\xef\xb3\xc7\x7d\xf1\xd9\xeb\xe2\x67\x37\x78\xb0\x61\x74\x7f\xdf\x94\x7c\xbe\xf8\x6c\xf1\x88\x67\xe8\x7a\x38\xd9\xed\x6c\x5b\xd1\xd7\x01\x0b\xd3\xcb\x76\x61\x7a\xd9\xfe\xbc\xd5\xcb\xf6\x05\xf8\x79\x0f\x2f\x5b\x42\x39\xf6\xd1\x69\x88\xe7\x98\xa3\xa0\x0b\x65\x52\xe5\xcf\x9d\x57\xf5\xcd\xb8\x77\xf5\x11\xb3\x59\xb9\x8f\x84\x9a\xb2\x05\xb2\x1a\xbc\x4a\x19\x51\x96\x9f\x38\x69\x3b\x2c\xba\x20\x24\x34\x44\x35\xe8\x16\xd6\x3f\x92\x05\x7b\xcf\x46\x86\xaa\xa3\x44\x23\xf6\x54\x9a\x82\x64\x7d\xf4\x66\xb9\x81\x73\xd9\xfb\xc1\xd0\xfa\x29\x2b\x31\xd7\xdc\x4e\x9e\xe8\x79\x66\x4f\x4b\x15\x81\x6f\xd5\xca\x3a\x2a\x5d\x76\xb9\x71\xb1\x56\xe9\x2d\x73\xc2\x3f\xd2\x60\x79\xc7\xe9\x96\x25\x79\xed\x74\x3e\xce\x70\x94\xe4\xd6\xeb\xcc\xe1\x52\xf9\x98\x06\x68\x81\x48\x80\x88\x8f\x51\xd4\x59\xd2\xb8\x73\x4d\xc9\xff\xf7\xff\xfc\xbf\xbc\x13\x21\xd4\x19\x23\x1f\xc6\x11\x92\xcf\x03\xfd\x5c\x79\xa6\xca\x15\x0b\x69\x85\xcf\xd0\xdc\xdd\x73\xe9\x55\xa1\x3e\xbb\x12\x79\xdd\x45\x2f\x53\x7a\x29\x1f\x47\xba\x2d\x1d\xd7\xd5\xe6\xda\xda\x2b\xd7\xd6\xe1\xf8\x24\xfb\x0f\x9a\x81\x28\x3a\x08\x8f\xe7\x49\xce\xe3\x79\x72\xaf\x1e\xcf\x8b\xd6\xe3\x79\xab\xc7\xf3\xb2\xe8\xf1\xbc\x7c\x48\x8f\xe7\xa0\xc4\xe3\x39\xd8\x2f\x03\xd1\xbc\xe0\xf1\x3c\xff\x7c\x1e\xcf\x4b\x03\xab\x2e\x3f\x87\xc7\xf3\xb8\xf5\x78\xfe\x1a\x3c\x9e\x67\xdb\xb9\xf9\x39\xfb\xee\xf4\xd9\x8f\x53\x52\xce\xcd\xef\x8a\x0c\x2f\x29\x77\x90\x73\xee\xd9\xe0\xe8\x93\xc8\xf3\x2a\x63\xfe\xd3\x0d\x7f\xa8\xcd\xa4\x0f\x6f\x92\xe4\xa9\x16\xb0\x5e\x84\x21\xbd\x46\x41\x49\xb9\xa9\xaa\x1e\x3f\xc1\xe8\xbd\x91\x73\x75\xb7\x0b\xc0\x0e\x3f\xa3\xc4\x99\x7a\x1c\x73\xae\x8c\xda\x67\xba\x9a\x01\x59\x76\xb5\x0f\x8d\x78\xf8\x14\x7c\x9b\x0b\x9b\x17\xb0\x19\x64\xf5\x90\x55\x76\xa2\xc5\xcd\xf3\x10\x4d\xb8\xf1\xfc\x26\x79\x6e\xe5\x12\x12\x7d\x63\x7e\x50\xbb\x58\xcb\x1a\xdd\x21\xf6\x2f\x33\x23\x39\xa7\xd3\x69\x88\xde\x27\x40\xdf\x9a\x4e\x28\x2d\x18\x53\xcc\x0e\x60\x94\x86\x49\xcb\xc1\xcc\x70\x80\xde\x91\xb4\x0a\x8c\xf4\x70\x97\xde\xc4\x2f\x05\x6f\x61\x19\x5e\x90\xd1\x8c\x5e\x7f\x94\xd3\x10\x37\x38\x9b\x4a\x52\x07\xc6\x9a\xd3\x38\x42\x21\x82\x32\xa8\x7e\x4c\x39\xa7\xf3\x34\xf9\x83\x04\xe2\x22\xeb\xd3\xac\x5c\xda\xc6\x71\x1c\x4b\xc9\x68\x6b\xbe\x94\xbc\xa0\xf6\x92\x12\x82\x74\x70\x0c\x22\x18\x15\xbd\x97\x36\xb2\xad\x98\x9d\x5f\x04\x41\x07\x0a\x2a\xa1\x0f\x5f\x87\xcf\x20\xef\x48\x2d\x7d\x24\xa4\x9e\x08\x75\xf8\x35\xcd\x92\x95\x73\xda\xf1\xd5\xf7\xdc\xd2\xcf\x54\x3f\x2c\xae\x53\x97\xd6\xda\x71\xcb\x4a\xef\xc6\xeb\x1b\xe8\xf3\x52\x3f\xd5\x1a\xfe\x76\xdb\x4a\x82\x9f\x55\x94\x39\xd1\x5f\xcf\xea\x83\x6f\x66\x95\x36\xa7\x98\xaf\x17\x4e\xcc\x5a\xe0\x67\xc0\x7a\x2d\xc6\xb8\x8b\xb7\x5d\xc5\x7d\xae\x71\xdd\x9e\x56\x5e\x2e\xf5\xdf\x4b\x89\x33\x8b\x67\xa6\xbe\x23\x5c\xe5\xdc\x64\x5d\x19\xe2\xa3\xf0\x7e\x50\x81\x9e\xad\x1c\xb1\x7a\xb6\x5b\x7c\xed\x6b\xe8\x2a\x9a\x6e\xcf\xce\x53\x5b\x86\xd1\x9b\x24\x95\x2b\x02\xf4\xed\x9f\x5b\xd4\x7d\x47\xd4\xfd\xf6\xcf\x9f\x13\x71\xbf\x85\x4b\xc4\x3a\x7f\xee\x98\xe9\xd5\x1b\xa0\xee\x97\x88\x71\x88\x49\xe7\xa7\x8f\x1f\xdf\x77\x18\xfa\x3d\x46\x11\xef\x60\x32\xa1\xca\xad\x64\x8c\x3a\x38\x10\xe7\x6f\x82\x51\xf0\x30\xc8\xfa\x91\x20\x54\xe5\xe9\x55\x0d\xb8\xfe\xfd\x1e\x66\x8d\x7c\x42\x1a\x6d\xc1\x94\x0f\x8a\x7b\xb6\xd6\x07\x30\x62\xe8\x1a\xe4\x11\x92\x60\xce\x6a\x00\x24\xd5\x03\xee\x21\xd1\x7f\x4e\xdf\x97\xaa\x20\xaf\xda\xd4\x3f\x86\x0b\xd6\xa4\x32\xf5\xcf\xa2\x22\xf5\x8f\xff\x50\xa9\x7f\x62\x7b\x5e\x2f\xf5\x4f\x39\xe2\x05\x18\xcc\xb7\xa5\x00\xca\x5f\xb2\x0a\xb7\x84\xd2\xa1\xbd\xe3\xea\x77\xca\x20\x1e\x95\x18\xc4\xa3\xf2\x8c\x3a\xe3\xcd\x8c\x3a\x15\xeb\xb9\x83\x89\xbc\xc2\xd8\x38\xce\xa7\xc9\x29\x40\xa4\x71\x9a\x9d\x7c\xff\x6d\x39\x76\xae\xb6\x5a\xff\x66\xe0\x6a\x0f\xeb\x9f\x0a\xf2\x2a\x53\xe6\x07\x70\xf9\x5b\xfa\xef\xe9\x22\x8c\xa7\x98\x9c\xfa\x30\x44\x24\x80\x4c\x3c\x7f\xda\x8d\xa4\x8f\x85\x42\xf1\xe2\xa7\x78\x6b\xfc\xd9\xf5\x67\x8c\xce\x21\xc7\xbe\x7e\x38\x83\x0b\xfd\x5e\xf9\xc8\x16\x8c\x03\xc0\xc8\xda\xe3\xdc\xe6\xb5\xe6\x4d\xb3\xd6\xa0\x8a\x84\x32\x65\xca\x55\xa5\xc7\x5f\xad\x8e\xed\xad\x69\x6b\x92\x4c\x34\x4a\x5f\x3d\x1c\x01\xe6\x1d\xf7\x00\xf5\x8e\xfb\x00\x27\xca\x10\xce\x96\xa9\x4e\x1b\x82\xd0\x43\x25\xa9\x51\x9e\x1f\xdb\xcc\xb3\xa1\x17\xba\x04\xdd\x70\xdb\x71\xdc\x80\x12\xe4\x9c\x9c\xd8\xc4\x5d\xc4\xd1\xcc\x86\x4a\x39\xe4\x80\x63\xbe\x5a\x11\x8d\x0c\x24\x4a\x7c\x2e\x3e\xe9\x3c\xd7\xba\xd4\xd8\xb9\xa5\x62\x0a\xd8\x8b\xd7\x13\x4c\x60\x18\x2e\x6f\xa5\xee\x76\xb5\x52\xf9\x55\x42\x57\x4d\x79\xb5\x4a\xfe\xb2\x9d\xb4\x25\x9e\xd8\x54\xe3\x58\xbc\x4e\x2e\x3b\x59\x4b\x48\xad\x56\xbe\xfe\x77\x8f\x1c\x33\x01\x52\x28\x34\x66\xe8\xb3\x97\x95\xc0\x93\x24\x59\x51\x65\xee\xa0\x68\xff\xdc\x41\xba\x80\x74\xf3\x0c\x42\xa0\x2c\x7d\xd0\x79\x2e\x6f\xd0\xe0\x1e\x92\x06\x9d\xab\xb5\x25\xc6\x9d\x0d\xeb\xcb\xc3\xa5\xe1\xb9\x1f\xb5\xe2\x64\x47\xf1\xd5\x57\x37\x17\xcf\xfe\x4e\xae\xca\xd5\x8a\x73\x1a\xc0\x50\xaa\x77\x22\x81\x7f\x42\x38\x46\xa5\xc1\x91\x85\xd8\x49\x23\x9a\x41\x85\xa0\xa4\x25\x35\x4b\xe5\xc5\x24\x4e\xf4\x9b\xe6\x19\x33\xf7\xaf\xb2\x9f\x54\x60\xfb\x6e\x94\x84\x4d\x24\x21\x87\xd6\x96\x28\x4d\x1d\xfc\xf2\xed\x9d\x8b\xe6\x9b\x95\xd8\xbe\x35\x33\x87\x0e\x93\xfa\xf5\x82\x3b\xd7\xb3\xae\x1d\xd6\x99\x8b\xb4\xa8\x9f\x46\xde\x62\x28\x60\xf0\x7a\xa3\xba\xdc\xb0\x24\x67\xfc\x77\x9b\x31\x66\xdf\x82\x7e\x7f\x8f\x5c\xc1\xdf\xe9\xce\x4f\xc1\x50\x9d\xac\xfd\x54\x02\x30\xd3\x06\x44\x0b\xc8\x2e\x43\x4c\x50\xf7\x12\x2d\xd3\xb0\x4b\x25\xed\x6c\x81\x7e\x1a\xc1\x02\x38\x8b\xd1\x86\xc8\xf3\x77\xb4\xbc\x93\x3c\x62\x6c\x49\x51\xa4\xcc\x26\x7c\xcd\xe0\x62\x51\x12\x85\x56\xda\x2d\x49\x08\x51\x33\xac\x3e\xfb\x0a\xc7\xf3\x5c\x1e\xea\x8f\x78\x8e\x22\x0e\xe7\x8b\x12\x7f\x8e\x8a\x00\xb7\xef\x8a\x5b\x7e\xb7\xac\x0a\xaa\x16\x64\x16\xbb\xb6\x89\x58\x8c\x9b\xab\xd3\x20\x7c\x23\xee\x4b\x83\x0b\x61\xe4\xda\xd0\x35\x09\xf2\x60\xc9\x82\xfb\x36\x62\x95\xb6\x5c\x81\xec\xdc\xec\x80\xc0\x77\x40\xe1\xd1\x6e\x80\x61\x48\xa7\x99\x1b\x55\xee\xb8\x6a\xe5\x8b\x40\x5b\x42\xaa\xb6\x0a\x01\x92\x3b\x8f\xae\x14\x6b\xf7\x75\xa1\xb2\x24\xf2\xef\x46\xa1\x90\x76\x93\xad\x80\xea\xac\x58\xb3\xcc\xaf\xaa\xb1\x72\x28\xaf\xec\xd1\x7b\xdb\xd9\xbc\x51\xb5\xb4\x02\xb5\x66\x3b\x4e\x9c\xaa\xee\xa6\xc8\xca\xa3\x12\x9f\x4a\x45\xcc\x0e\xd5\x4f\xee\x42\x4a\x1f\xac\x4b\xb4\x14\xac\x9c\xcf\xf0\x18\x49\x53\x42\x1a\xec\xe1\x53\xc6\x50\xb4\xa0\xd2\x3b\x5a\x7b\x57\x75\xa6\x0c\x2e\x66\x1d\x7d\xbb\x3b\x0a\x27\x0a\xfe\x79\x4e\x19\xea\xa8\xaa\xdb\xe5\x4a\xac\x8d\xa2\xb0\x65\xc6\x84\x4d\x33\x5d\x29\xee\x6d\x18\x92\x5a\xf8\x7c\x06\xa3\x7e\xaa\x6d\x2f\x9b\x6f\xa7\xbc\x32\x6b\x55\x78\xed\x46\x3e\x6f\xf0\xb4\x42\xeb\x5e\x86\xb3\x9e\xdd\x8d\xd2\x14\xe7\x9b\xaf\x10\x4c\x68\x57\x70\x21\x26\xd8\x7f\xa1\xe9\x3e\x87\x14\x06\x9b\xaa\xc7\xdd\x36\x84\x07\xbb\x1f\xa9\x16\x73\x9f\x2b\x92\xa9\x10\x35\x21\x5a\x2e\x50\x37\x33\x6a\xf4\xbf\x05\x96\xc0\x5f\x5a\xa5\x58\x9a\x1b\x5c\x56\x4e\x56\x18\xce\x54\x63\x16\xd4\xed\x25\xb7\x2c\xaf\x6c\x6c\x0e\x9f\x5a\xd9\xc6\x4b\x89\x7a\xb5\xea\x30\x9a\xd1\x38\x0c\x2e\x66\xf4\x5a\xa0\x34\x60\xcd\x63\x6e\x86\x9f\xca\x73\x91\x0f\x59\x55\xf1\xac\x31\x09\xa5\x83\xb0\x66\xf0\xb4\xae\x31\x66\xb8\x10\xb3\x2a\xc4\xc1\xa5\xd6\x42\xde\x45\xff\x68\x6a\x28\x12\xf5\xe3\x51\xaa\x0c\x72\xd1\x0d\x47\x24\xb0\x49\xaa\x1d\x92\x92\xc3\x62\xab\x87\xe4\x44\x2b\x52\xd2\x37\xc9\x28\xb7\x62\xd5\xd2\x6f\x1e\xc8\xe9\x0f\x8e\xfb\x40\x1f\xba\xc1\xad\x62\x34\x37\x63\x70\x18\xbc\xfe\x0f\x81\xfc\x22\xdb\x59\x03\xc5\x3f\xe7\xdc\x67\x94\xda\x0b\x71\x5b\xc3\x14\xb9\xe2\x5f\x57\xad\x2b\x89\x28\x31\x06\x51\x4f\x18\x62\x88\x04\x88\xd9\xce\x7a\x0d\xb2\xd7\x83\xbc\xaf\x98\xea\x0c\x39\xcc\x65\xde\x8e\xae\xa6\x9e\xdd\x03\xcc\x55\x0a\x1a\x47\x35\x43\x21\x2a\x0b\xa6\x89\xae\xa6\x6e\xc6\x4e\x48\xef\x50\x4a\x6c\x65\x76\xa1\x57\x88\x75\xe4\x5f\x73\x7a\x85\xd4\x5f\x54\x9c\x13\xe5\x3e\x82\xf4\x07\x64\x8c\x8d\xca\xd9\xed\x32\xd9\xd4\x2e\xbc\x64\x42\x40\xce\x5e\x1e\x25\x21\x5c\x84\x06\xc8\xae\x0e\x49\x22\x5e\x12\x53\x17\x7b\x49\xec\x16\x48\x42\x6a\x20\x87\xab\xd5\xed\x1a\x4c\xbc\xe4\xc7\x70\x04\x16\x5e\xe4\x2a\x34\x29\xdf\x05\x5e\xe4\xc6\x04\xf3\x8b\x78\x32\xc1\x37\xab\x95\x65\x81\xb9\x67\xfa\x1d\x2d\x1c\x77\x82\x43\x8e\x58\xde\xed\x48\x4b\xf6\x32\x87\xb8\x75\xec\xa1\xb5\x23\x7d\xd1\x7a\xc7\xde\x44\x4b\xc6\x27\x27\xbd\x63\x6f\x9e\x88\xc9\xb7\xea\x40\x89\x5d\x96\x7a\xdd\xe4\xf4\x1f\xf7\xd5\x5a\x97\x62\x3f\xa0\x1b\x71\xe8\x5f\x3a\xb6\xa3\xbe\x3d\x77\x5c\xa9\x04\xb1\xf5\x8b\x77\xe2\xc7\x07\xe5\x6d\xe4\xd8\x13\x07\x8c\xbd\x49\x55\xf4\x5b\x2f\x91\xb5\xe7\x25\x7e\x53\xc4\xb9\xe5\x4f\xa4\x44\xbe\x76\x1c\xc0\xc5\xff\x66\x62\x02\xd4\x95\x7a\x39\xc1\x39\x8b\x49\x04\x74\x0e\x31\xb1\xed\x1e\x08\xd5\x05\xe0\x8e\x3d\x01\x25\x70\xe8\x20\x57\x70\xdf\x6b\xc7\x71\x5c\x26\xce\xb7\x3d\xec\x01\x32\x92\x56\x80\x74\xd4\xb7\x98\x20\xc8\x8c\x71\x87\x3d\x20\x87\x9e\xc3\x1b\xc7\x1e\x3b\xa3\xb4\x6f\x0c\x7a\x23\x07\x4c\x15\x48\x20\x43\x50\x74\xba\x29\xdb\x80\xce\xcc\xd6\xb7\x45\x7c\xdf\x59\x3b\x8e\xbb\xec\x97\x36\xbc\xb2\xd1\xb0\x37\x52\x2d\x7a\x95\x2d\xfa\xb2\x05\x78\xe7\x0d\xad\x3f\xbd\x7a\xf9\xba\xf7\xfa\x99\x05\xac\x3f\xbd\xfc\xf3\xd3\x6f\xbe\xf9\xd6\x4a\xf5\xe3\xd8\x8d\xfc\x19\x9a\xa3\x8f\x70\x1c\x22\x18\xf7\x7b\x0e\xb8\x36\x16\xfa\x8e\x05\x98\xc0\xd0\xb1\xdf\xa5\x4b\x9d\x8b\x5b\xb3\x79\x17\xc4\xcc\xed\xa5\xe3\xfe\x46\x31\x49\x1f\x42\xce\x99\x6d\x4d\x70\x18\x5a\xa0\x34\xac\xf1\x12\x2d\x93\xcd\xbd\xb6\xb9\x5c\x92\xea\x13\x71\x46\x2f\x51\xd3\x5e\x81\x05\xa6\xea\x10\xfe\xe6\x21\x57\x48\x6a\x24\x48\x2f\xa4\x6a\x22\x7d\x75\x2d\x60\xf9\x31\x8b\x28\xb3\x1c\x37\xe2\xcb\x10\xd9\xd6\x15\x8e\xf0\x18\x87\x58\xe2\xf1\x19\x0e\x02\x44\xd2\x3e\xaa\xb0\x19\xe8\x27\xbf\x75\x4d\x33\x10\x27\x0f\x6e\x2c\xd0\x4b\xfe\x5e\x8a\xbf\xc1\xa7\xfa\x48\xc9\x4d\xc4\x44\xc7\x39\xfa\x64\x42\xd6\x35\x04\x42\xde\x0d\xd1\x14\x91\xc0\xc4\x3a\x5b\x1a\x47\xf1\xbc\x88\x82\xde\x83\x0b\xaf\xc4\x3d\xfd\x68\x87\xa2\x58\xa9\xcd\x36\x75\xbb\xa5\x1a\xe9\xd5\xca\x26\x9e\x6f\x23\xc7\x59\xad\xf8\xc9\x09\x3a\x39\xb1\x48\x2c\xb0\x85\xa1\x8b\x4c\xd1\x08\x39\x39\xb1\x91\x47\xd4\xec\x98\xd7\x03\xd4\x74\x0e\x4e\x83\x56\xa3\x01\x05\xa4\x24\x30\x89\xfd\x90\x6a\xee\xce\x6f\x03\x4a\xa4\x72\x6d\xa0\xff\xea\x6b\x6b\x0d\x1a\xb2\x27\x4f\x46\xeb\x35\x28\x92\x29\x46\xaf\x3b\x68\x0d\x26\x03\xba\x5e\xd7\x55\xf6\xaa\xb5\xff\xc1\x8a\x5e\xe9\x48\x0a\xa0\x77\xdc\x03\xa1\x77\xdc\xcf\xa0\x62\x40\x84\x94\xea\xde\xd7\x79\xb0\x29\x9a\x49\xb4\x22\x3e\xb9\x3f\xd0\x43\x52\x25\x0f\x50\x11\x46\xa1\x52\xb7\x4b\x20\x99\x7c\x00\x5b\xde\xc2\xe4\x58\x90\x54\xe9\x4e\x4a\x95\xee\x61\xa6\x74\x5f\xaf\x05\xe6\x48\x6c\x06\x17\x6e\x24\x8d\x03\xef\xbd\x0b\x97\x24\x66\x81\xe7\x6a\x92\xaf\xbd\xf7\xca\x28\x00\x2e\xbd\x4f\xe9\x25\x16\x52\x5f\xf1\x0e\x97\xde\x8f\xa3\xcb\xa6\x7d\xba\x3e\x0d\x4d\x54\x30\x86\xfe\xe5\x94\x09\x1a\xad\xdf\x80\x6b\xfb\xb5\xe3\x80\x6c\x60\x29\x59\x38\x2e\x17\xa0\x7c\xed\x14\x1f\xef\xfe\xa0\xd2\x1c\x3a\x6b\x6d\xdc\x78\xe9\xdc\x5e\xb8\xc8\x7e\x99\xc1\xee\xc2\x9d\xd8\x6a\xef\x6f\xbc\x9d\x38\x21\x19\xee\x28\x21\xd1\x3f\xf4\x4f\x4e\x1a\x40\x4e\x21\x8b\xb2\xb5\x69\xa6\xa0\xc9\x0a\xa3\x78\x9e\xce\x47\xcc\xff\x83\xe4\x60\x8a\x8c\x56\x01\xb1\x7f\x2a\xc5\xc2\xf2\x47\x88\x2c\x07\xfc\xb6\xe3\xfd\x07\x57\x25\x89\xf9\xa8\x30\xa9\x8d\xc0\x44\x16\xbf\x08\xc0\x0c\x7c\x02\x37\xe0\x37\x49\x23\xd2\x19\x08\xac\x58\x98\x41\xc3\x11\x24\x63\x68\x7a\xfe\x97\xaf\x20\xa1\x23\x15\x0b\x48\x5e\xaf\x1d\xed\xba\x5f\xc5\x59\xf5\x76\xbf\x07\xd7\x38\x0c\x5f\x21\x41\x37\x97\xaf\x15\xa1\xd9\x60\xdf\x3f\x49\x97\xfa\xf2\xe0\x00\x90\xfa\x6f\x27\x6c\xf5\xc9\x49\xf2\x57\x5d\x26\x79\x0d\x72\x40\x1c\x98\x39\x02\xb4\xb1\x53\x97\x27\x51\x37\x7d\xee\xc5\xb6\x24\x93\x32\xc9\x23\x62\x8e\x8d\x1c\xd0\x77\x86\xbd\xd1\xd1\x22\xa3\xac\x73\xcd\x56\x82\xb1\xe7\xbb\x98\x5c\x21\xc6\xed\xb9\xe6\xf2\x24\xd3\x35\xc6\x91\x24\xa5\x4e\x29\x2f\x94\xf2\x73\x6e\x88\x26\xdc\xb1\x09\x18\x3b\x47\x51\xb2\x1f\xe2\x99\x05\xe6\xdd\xb3\xb3\x27\xd6\xe2\x46\xe0\x00\x79\xd7\xf2\x17\x0d\xcf\x51\x72\x23\xec\xa5\x37\x16\x5f\xcd\x2c\xf4\x82\xe9\x49\x4c\xc5\xd2\xc8\x04\x6e\x23\x38\x47\xaf\xe0\x72\x60\x0d\x3f\xd2\x00\x2e\x3b\x90\x8f\x3a\xb3\xc1\x7c\x3e\x88\xa2\xce\x0b\x0b\x84\x30\xe2\xea\xf5\xff\x42\x11\x47\xac\xa2\xc9\x3f\x11\xba\x1c\x58\xc3\xb7\x30\xe2\xa3\x4e\x10\x04\x82\x16\x99\x6d\xc4\x57\x5e\x87\x11\x1a\x58\x3f\xff\xfc\x73\xe7\xd5\xab\xfc\x6b\x19\x8a\x12\x95\x2e\x27\x77\x49\xf5\x45\xb7\x12\x86\x30\xb0\xf1\x70\x36\x72\x9c\xe4\x37\x74\x1c\x30\x91\xb2\x4b\x64\x97\xc6\x2d\xa4\x9c\x84\x47\x87\x7c\x34\x9c\x8d\x86\xfd\x51\x37\xf9\xb3\x37\x7a\x9e\xe3\x83\x50\xc9\xf7\x48\xee\x63\x82\x67\xcd\x6d\xfe\x5a\xc8\x23\x66\x9c\x4a\xb6\xb3\xdf\xf7\xd1\xd3\xf3\x5f\x62\x95\xa0\x29\x7a\x43\x38\x9a\x22\x66\x23\xe7\xdc\xb2\x9e\xa0\x81\x7a\x61\xa3\x1f\xbc\x7e\xaf\x77\x8e\x5c\x4e\xdf\x33\xe4\xe3\x48\xcc\xfa\xa9\x33\x40\xdf\xf7\xe5\xc3\xbf\xe1\x1b\x14\xd8\x67\xce\x20\xdf\xe2\xcc\x71\x06\xa2\x2b\x7a\x7a\x72\x22\x3e\xf4\xec\xfc\x89\x8d\x4e\xfb\xe8\xa9\x53\x18\xe8\x89\x75\x69\xa9\x96\xcf\x54\xcb\xbf\xe8\x96\xcf\x36\x5b\xce\x75\xcb\xbf\xa8\x96\xfd\x33\xdd\xf4\x2f\x9b\x4d\xa7\xba\x69\xda\xa6\x7f\xe6\xa4\xb3\xed\x39\x4f\x2c\x6e\x25\xb6\xce\xcc\x9e\xb8\xd8\xc3\x29\x82\x43\x7e\x7f\xe5\x87\x8e\x4c\xa3\x74\x1a\x8e\xe3\x7f\xa9\x41\x8e\xd1\x21\x05\x39\x4e\x1e\x34\xc8\x71\x71\x10\x41\x8e\xb9\x30\x37\x3b\xb8\xd7\x20\xc7\x79\x1b\xe4\xb8\x35\xc8\x71\x56\x0c\x72\x9c\x3d\x64\x90\xe3\xb2\x24\xc8\x71\xb9\x25\xc8\xd1\xaf\x0e\x72\x1c\x17\x82\x1c\xc7\x9f\x2f\xc8\xd1\x80\xb7\x3d\xfb\x1c\x41\x8e\x57\x6d\x90\xe3\xd7\x10\xe4\x38\xdd\xee\x8d\xf4\xf3\xe9\xe4\x1f\xff\xe0\x8b\x7e\xb9\x37\x92\x60\x29\x9a\x79\x1f\x99\x79\xde\xeb\x78\x22\x25\x69\xcc\xcf\xfe\x48\x4f\xa4\x6f\xd2\xf2\xc1\x69\x96\xf8\xd4\x13\xc9\xc8\xbb\xfb\xcd\xa8\x18\xbe\x54\x48\x47\xdf\xd3\x8b\x8a\x7e\x55\x89\x4d\xb7\xb4\xcb\x67\xe8\x37\xdc\x08\xee\xd3\xff\x68\xc3\xa4\x2e\x53\xf2\x57\x59\xa7\xff\xa2\xa7\xf2\x5d\xa3\x88\xb6\xcd\x60\xd4\xb3\x8d\xbf\xbf\xad\x91\x74\xb9\x76\xc9\xf1\x0d\xfb\x7a\xa5\xfd\xbb\xc4\x3e\x9f\x1a\x40\x35\x84\x6b\x94\x44\x29\xb5\x92\x6f\x1b\x5a\xf9\xe8\xd5\x1f\x7a\xcf\xfa\x32\xc9\xe7\xa4\x67\xe0\x2e\xdf\xa7\x52\xe3\x7c\x89\x35\x76\x77\x72\xfd\x62\xb1\x9c\x5f\x68\x27\x71\x2a\x79\x71\x05\x71\x28\xf0\xf2\xbe\xce\x5a\x55\x5f\xbf\x27\xd7\xa5\x33\xe5\xba\xd4\xab\x7f\x97\x76\xe5\x4a\x4e\x8c\xc7\xba\xd6\x45\x45\xee\x64\x65\x55\x4e\x6d\xd2\xca\x44\x9d\x1a\xa0\x67\x30\x7a\x2b\x5d\x14\x94\x11\xfa\x4e\x46\xe6\x4c\xe2\xab\x57\xdd\x3a\x79\x40\x0b\x31\x2f\xf1\x57\x13\xf3\x12\x54\xa6\x1d\x9e\x17\xd2\x0e\x17\xca\x5d\xe3\xcf\x57\xee\x5a\x9f\x36\xa8\xcb\x5c\xcb\x7e\x4e\xee\x20\x85\x9b\x15\xb0\xcd\xb4\xb5\x26\x8d\x2a\xc9\x92\x2a\x1d\xcd\x4b\xfc\x6f\x3d\xa3\x22\x76\x42\xd7\x1d\xa5\x49\x14\x03\x7a\x89\x4b\x80\xf8\x71\x24\xb0\xb9\x96\x99\xb2\x5e\x8a\xf6\xaf\x56\x96\x75\x24\x18\x21\x9e\x5a\xa1\x6d\xee\xa5\xd8\x2e\xf1\x62\xcf\x34\x49\xd9\x00\x98\xa3\x39\xb0\x5c\x2b\xd5\x2b\xf1\xfc\xaf\xb4\x61\xe0\xeb\xac\x98\x9b\x53\x1b\x92\xd1\xda\x78\x65\x67\x7f\xaf\x56\xc3\x51\xe2\x1b\xdf\x03\xdf\x68\x1f\x86\x14\xae\x9e\x38\x35\x3b\x8a\x66\xe7\x73\x5e\x42\xef\xca\xb6\xb1\x17\xe7\x43\x7c\x74\x61\x9c\x7b\x0c\xe9\x49\x73\xf9\x85\xde\x95\x8d\x0b\x99\x0b\x93\x43\x71\x87\x74\x98\x15\x31\x44\x85\x6f\xe5\x8e\xd5\x90\xee\x8e\x20\xaa\xec\x2d\xe4\x07\x23\x7e\x08\x3f\x74\x8d\x6e\x45\x48\x36\x75\x65\x9f\x23\x69\xe0\xec\xef\xa7\xff\x63\x79\x21\x40\x58\x9a\x66\x24\x21\x39\x25\x35\x22\x4a\x39\xb3\xde\x16\x86\xba\x4e\xbe\x8e\x0d\x6f\xbb\x8d\x44\x25\x29\x8d\x2d\x70\x46\x59\x96\xed\x90\xc2\x20\xf1\xc7\x2b\xb8\x49\x57\xd6\xde\xdb\x9b\x33\x4a\x1d\x18\x9b\x32\x44\x77\x09\xb8\x2f\x16\x17\xf9\x03\xa0\x5c\x0e\xde\x7d\x96\xd0\x64\x1a\xd2\x9b\x32\x37\x0f\x81\x5e\x30\x99\x26\x5c\xe0\x1d\x1c\xf5\xb7\xb2\x5a\xf7\xc0\x1a\xc5\x45\xde\xe8\xb3\x66\x20\x4c\x2a\x91\xb4\x29\x08\xf7\x4a\x41\xd8\x34\x94\xd2\x2f\x29\xcf\x5f\xd4\xe1\x1e\x17\x27\xbd\x35\x92\xb2\xac\x4e\x7e\x45\xbc\xe6\x71\x12\xa7\x77\xb4\x35\x88\xcf\xdf\x3f\x88\x6f\x8f\xf0\x3d\x39\x97\x92\x08\xbe\xd2\x85\xc9\xc6\x77\x8f\xe5\xcb\xaf\xb4\x00\xad\xfa\xc1\x99\xd1\x82\x21\x18\x7c\xf6\xb8\xcc\x87\x8b\x3c\x6c\xed\x50\xad\x1d\xaa\xb5\x43\x7d\x59\x76\xa8\x2d\xc9\x36\x5b\x3b\x54\x6b\x87\x6a\xed\x50\xb9\x64\x9b\xe4\xe2\xc9\x7f\x7e\xf3\xb4\x57\x2e\x05\xeb\xfc\x9a\x32\xd6\x23\x6f\x6f\x4a\x33\x6e\xd6\xa9\xe3\xb7\x99\x95\xb3\x7e\xc4\x76\x92\xaf\x69\x8a\xf8\x1b\x9f\x92\xf7\x3a\xfb\x67\x59\x9a\xcc\xb2\x08\x56\x33\x14\x50\x57\xfc\x57\xa5\x1c\xef\x5c\x1c\xb4\x9f\x05\xd9\x3e\x03\x96\x80\xc1\x8f\xf4\x66\x33\xb9\xd5\xb3\x34\xed\x5a\x47\x1b\xb9\xd2\xfc\x6c\xc6\x03\xe5\x1f\x5f\x78\xa8\x9d\xe4\xcd\xe8\xb1\xb3\x6f\x80\xb5\x60\x48\x6c\x04\x7a\x11\x2d\x90\xcf\x3f\x40\x8e\xa9\xa5\xf3\x9f\xa5\x31\xe0\xcf\x8c\x9c\x69\xd5\x90\x4b\x5a\xff\x79\x7b\x6b\x9d\x36\x60\x5b\xba\x37\x69\xb6\x41\x93\xf2\x94\x61\x49\x83\x39\x64\x97\x5a\xa6\x95\xc5\x25\x65\xde\xc9\x6e\x40\xb9\x7e\x94\x01\xd1\xea\x9e\x75\xba\x67\x9d\xfe\xb7\x9d\xfe\xb7\xc9\x4b\x86\x26\xff\xd3\x02\xd6\x33\xe3\xf7\xff\x32\x7f\xab\xd1\xff\xa9\x02\x0d\x8a\x8f\x7f\xd2\xf1\x06\xfa\x79\x75\x64\xab\x8f\x99\xaf\x0d\x2b\xdf\x00\xcb\xbf\x31\x87\xf2\x97\xb9\xef\xe7\x46\x6b\x96\x6d\xad\x1c\x12\x90\x31\x7a\x5d\x02\x8b\x7e\xa7\xdb\xef\xf4\xcf\x3a\xfd\xb3\x02\x2c\xbe\x2d\xc0\xe2\xdb\x7d\x60\xf1\x0d\xb0\x28\xc3\x2a\x13\x1f\x8c\x39\x55\xe9\xf2\xba\x1a\xb5\xee\x0a\x04\xa6\xe1\x72\x9a\xc6\x49\x5a\x52\x55\x2d\x2e\x7e\xaf\xd3\xeb\xf4\x7b\x9d\x6f\xe5\x3f\xf7\x04\x24\x99\x79\xb5\x3d\x2d\x1a\x10\xed\x61\xd9\x16\x07\xfd\x17\x03\xed\x7f\xb7\xf1\xf7\x99\x99\x86\xa4\x69\x32\x8f\xaa\x1c\xd0\x46\xc9\x37\x55\x16\x9f\x6c\x29\xf4\x5f\xdb\x0a\x2f\xc3\xc0\x54\xc0\xb1\x56\xb8\x82\xa1\x85\x03\x5d\x13\xfd\x5b\x60\x05\x19\xc9\x31\xb3\x91\x06\x28\x52\x94\x63\x38\xb4\x22\xe6\x5b\xc6\x2b\xf9\x53\x79\x3a\x18\x1b\x9d\x66\xc9\x8c\x59\x68\xff\x29\xb9\x6b\x4e\xfe\x34\x74\x11\x09\x72\x4d\xe4\x29\x74\x92\x88\xe8\x62\xe9\x3b\x50\x0a\x9b\x92\x0d\x6e\x94\x11\xf7\x33\x83\x26\xa5\x5a\x5b\x60\x63\xe0\xf3\x87\x01\x4e\x89\x6a\x77\xdf\xca\xcf\x8d\xee\xcd\x77\x7b\x17\xf5\xae\xf2\x2d\x28\xe6\x87\xdd\x91\xde\x7d\x68\xe6\x05\x11\xbb\xbd\xc1\x70\xf5\xc1\xd0\xfa\x05\xce\x91\x76\x7f\xca\x62\xf1\x7f\x91\x89\x01\x0c\xa7\x22\xc5\xf0\xe0\x2a\xde\x48\x9a\x19\xaa\x58\xd2\x6f\x72\xb5\xc1\xfb\x55\x95\xa1\xf7\xaa\x06\x94\xa6\xe9\x9c\x60\x12\xa8\x5a\xd0\xa9\x53\x43\x74\x35\xed\xfa\x31\x93\xe9\x6d\xb3\x32\xd0\xd5\x15\x9f\xcb\x3d\x25\xcc\xc8\xfb\x3b\xd6\x84\xce\xab\xd7\xeb\xb9\x43\x7c\x75\x19\x3f\x83\xca\x8c\x9f\xf3\x8a\x8c\x9f\x93\x87\xca\xf8\x59\xdb\xfb\x21\x7f\x2f\x00\xde\x74\x75\x30\x33\x7d\x6e\x88\x0d\x9b\xc9\x3e\x8d\x94\x03\xd2\x75\x40\x89\x8b\x80\x7b\x71\xbd\x62\x9c\xf2\x98\x75\x54\x5c\xb4\x76\x3a\xc8\xcd\xd1\xe3\x85\xf0\xf7\x34\xac\x66\x01\x59\x84\xfe\x16\x52\xc8\x6d\xa9\x17\x91\x31\x79\x6f\x25\x0c\x6d\x47\xc0\x4d\x69\x4b\x04\x3f\xf2\x82\xeb\xe7\x3f\x43\x3e\x73\x7d\x84\x43\xdb\x7d\xf6\xec\xd9\x7f\x27\x8e\x63\xd4\x80\xe5\x2e\x0e\xc0\xcd\x80\xb9\x37\x5d\xe4\xde\x80\xe5\x80\xb9\xcb\xae\xfb\x5d\xff\xbf\x23\x77\xb9\x96\x35\x59\x77\xb8\x2f\x14\x33\x94\x5e\x6d\x66\x28\x2d\xc0\xff\xee\xc5\x3b\xaf\xf2\x99\x44\x37\x77\xac\x71\x32\xd2\x8d\x21\xb6\xe5\x23\xbd\x17\x7f\x02\x86\x71\x17\x4f\x04\x3a\xed\x2e\x42\xe8\xa3\x19\x0d\x55\x91\x48\xc3\xa8\x27\x5b\xd5\xea\xb6\x61\xeb\xbb\x1f\x95\x0b\xf1\xd2\xbd\x6d\x64\xba\x5c\x62\x14\x06\x49\x32\x1b\x63\x41\x59\x92\x9b\xa8\xa2\xf9\xdd\x17\x52\xd9\x21\xe5\x58\x6f\xf3\x87\x6d\x8a\x78\x89\x7f\x4c\xba\xf0\xf5\xba\x72\x3b\x09\x67\x34\x0c\x11\x8b\x4e\x05\xfa\xc1\x3e\x54\xa4\xcd\x5c\x71\xd6\x3c\xe6\x38\x8c\x4e\x19\x8d\x39\x26\xd3\x53\xce\x20\x51\x67\x4d\xbb\x3f\xee\x8a\xa6\x02\xfe\x91\x69\xe2\x49\x35\xae\xd1\x97\x6a\xb1\x9d\x34\xb7\xd8\x2e\x0e\xc0\x62\xbb\xf8\x6a\x2c\xb6\x8b\xc3\xb6\xd8\x2e\xfe\x30\x8b\x6d\x70\x48\x16\xdb\xf9\x83\x5a\x6c\x97\x07\x61\xb1\x1d\xe7\x2c\xb6\xe3\x7b\xb5\xd8\xce\x5a\x8b\xed\x56\x8b\xed\xbb\xa2\xc5\xf6\xdd\x43\x5a\x6c\xaf\x4a\x2c\xb6\x57\x5b\x2c\xb6\x51\xb5\xc5\x76\x5a\xb0\xd8\x4e\x3f\x9f\xc5\xf6\x9d\xc1\x3f\xbc\xfb\x1c\x16\xdb\xeb\xd6\x62\xfb\x35\x58\x6c\x7f\xcb\x54\x27\x98\xe8\x43\x26\xed\xae\xb6\x25\xf8\x60\x59\xf6\x81\x55\x34\x88\x38\x65\x48\x88\x61\x15\xef\x27\x08\x05\x63\xe8\x5f\x5a\x62\xda\x79\x6d\x4c\xe8\x5d\xdb\x36\x34\xd1\xe7\x97\xac\x91\x19\x67\xf1\x28\x49\x76\xc7\x44\x2e\x51\x6c\x26\xd2\x0a\x9a\x59\x45\x78\xca\xfc\xa1\xc2\x53\x02\x7b\x5a\x4f\x41\xa3\x0f\x03\x08\xc1\x54\x6a\x66\x64\x47\x19\xb6\x22\xce\x00\x88\x0b\x8f\xd3\xad\x07\xbe\x7e\x93\xaa\x72\x50\x2e\x6a\x85\x21\x18\xf3\x19\x65\xd2\x22\xbf\x19\xb5\xa2\x25\xdc\x19\x8e\x94\x0e\x26\x19\xd7\x45\x37\xc8\x8f\xb9\x79\xa3\x9d\x5b\xe2\xca\xd9\xb8\x7e\x88\x20\xb3\x93\x44\x65\xb7\x6b\x41\x8b\x90\x91\x8a\x92\xea\xc8\x91\xa3\x14\xb5\x1f\x7b\x1e\xd1\x71\x2c\x09\xb2\x53\x1b\x35\x45\xdc\xa6\xc0\x50\xf1\x0a\x24\xa1\x5b\xba\xe2\xe9\x11\x36\xfa\xca\x27\x92\x6d\x51\xbf\x3d\xeb\xff\xa6\xe1\x2e\xd8\x71\xd6\x32\x43\x14\xcc\x86\x7e\x77\x4d\x10\xb3\x89\x03\x42\x8f\xb8\x0a\xc2\xae\x1f\x33\x86\x08\xff\x20\x7e\x49\x01\x01\xc4\x1e\x74\x43\x4a\x2f\xe3\x85\xbe\x93\x83\x74\xd0\xd0\xc9\x32\x83\x15\xda\x98\xe2\xae\xc0\x7f\x13\x86\xa2\x99\x2d\x95\x3e\x73\x1c\x21\x57\x11\xf5\x02\xb9\x77\xf9\x0c\x91\xd2\xb4\x3c\xa1\x5c\x66\xc9\x1c\xc5\x92\x57\xab\x14\x8c\xc9\xd2\xcf\x63\x37\x93\x9f\x3f\x52\x7d\xb6\x62\x30\xb1\xf3\xd9\x78\x4a\xc7\x04\x0c\x40\xc7\x71\x06\x68\xed\x38\x12\x71\xc9\xdb\x57\x9a\x2d\x68\xed\x80\xdb\xb5\x56\x81\x2d\x6d\xb4\xa1\x02\x93\xec\xa1\x8c\xe0\x71\x72\x0a\xaf\xe4\x3c\xdf\x5d\xd3\x15\x7b\xd7\x36\xcc\xc7\xbc\xc8\x2b\x71\x87\xc8\x1c\x3d\xb2\x5f\x1c\x39\xbb\x55\x43\x7a\xd7\xc1\x0b\x43\xe7\xee\xe1\x10\xef\xd6\xcd\x55\xf6\x76\x00\x34\xd5\x72\xd0\x54\xcb\xfd\xb6\x5b\x4d\x13\xf8\x5b\x62\x75\x52\xd4\xc8\x0d\xf6\x88\x7f\xa9\xea\x15\xf2\xa0\x72\x1c\xcb\x49\x48\xec\x5e\x25\x24\xda\x4a\x48\x5b\x25\x24\x58\x94\x90\xe0\x43\x4a\x48\xb8\x44\x42\xc2\xb6\xc0\x90\xc9\x7c\x49\x4e\x42\x12\x34\xbf\x54\x42\x22\xe7\x05\xa5\xdd\x1f\x27\x18\x09\xc9\x8c\xac\x0d\xdb\x55\x76\xff\xe1\x1f\x28\x1e\xdd\x0f\xd3\x1d\x7e\x2d\x8c\x2f\x4b\x18\x5f\x5e\xc5\xf8\x7a\xd4\xe6\x06\xcb\xcb\x8d\xe8\x57\x75\x6a\xb9\x80\x61\xe9\xf1\x4e\x6d\x83\xe2\xae\x65\x70\x0e\xeb\xd0\x98\x53\xe8\x87\xd1\x69\xe2\x55\x5a\x6e\x0d\x28\xeb\x81\x54\x81\xe5\xc2\x9e\x99\x18\x3b\x3d\x96\xe4\x4b\x25\x4b\xec\x41\xc9\x12\xcd\x91\x25\x7a\xaf\x64\x09\xb7\x64\x69\x2b\x59\x0a\x8b\x64\x29\x7c\x48\xb2\x04\x4b\xc8\x12\xdc\xa2\xb8\x23\xd5\x8a\xbb\xcf\x4a\x96\x0c\x85\x61\x3e\x4e\xf3\xd0\xc8\xd2\xd7\x93\x20\x84\x26\x74\x89\xa4\x2e\x32\x1e\xb6\x89\x41\x88\xcc\xcc\xe5\xc9\x39\x05\x7c\x3b\x21\x22\xa6\x9f\x85\x41\x91\xe2\xfa\x14\x49\xd7\xac\xfe\x63\x72\x15\x64\xc4\x38\x2d\x32\x32\x8e\x71\x18\x20\x36\xa8\x50\xe8\x51\x36\xb7\x1c\x10\xd0\x79\x45\x83\x80\x8a\xf7\xe2\x22\x35\x4b\x66\xac\x74\x3b\x94\xcd\x95\xc7\x8e\x9e\x85\x7c\x62\x5b\xd0\x0f\x2d\x67\x0d\xd4\x35\x12\x2b\xc6\x28\xda\x50\x12\x71\x43\x49\xa4\x3e\x65\x9b\x4a\x6a\x54\xa2\x02\x96\x0c\x70\x74\x8d\x05\x8e\x24\xce\xad\x0f\x23\xa4\x62\x50\x06\x68\x48\x46\x1e\x97\x9f\x17\xb7\xf7\x15\xe4\xd0\x16\xcf\x64\x35\x10\xf9\x2b\xdd\x73\x24\x80\xec\x38\xeb\xac\x16\xcb\x46\x99\x95\x2c\xe3\xae\x2a\x0e\x42\xe7\x2e\xa1\x6c\x2e\xc5\xf1\xd7\x57\x88\x70\x65\x6e\x4e\x61\xe0\xce\x20\x09\x42\xfd\x4a\x60\xc7\xb5\x79\x98\x78\xfd\xc3\xb4\x2b\xf3\x85\x76\x0d\x3b\x32\x29\xbb\x21\x10\x7e\xa1\xec\x0b\x7d\x50\xf6\x05\x1f\x84\x75\x34\x47\x66\xab\x04\xa8\x3d\x99\xac\xb0\x65\xb2\xb6\x32\x59\x51\x91\xc9\x8a\x1e\x92\xc9\x8a\x4b\x98\xac\x78\x0b\x93\xc5\xaa\x99\x2c\xbf\xc0\xec\xf8\x9f\xcf\x3a\x9a\xf7\xae\xfa\x0c\xd6\xd1\x89\x36\x19\xa6\xc8\xad\x83\x49\x07\x9d\x6f\x71\x0c\xd1\x0e\x1d\x05\x25\x6d\x51\x85\x6b\xb0\x2e\x6b\x67\x80\x86\x7c\xe4\x11\x80\xee\x89\xbf\x5b\x80\x00\xcc\x65\x99\x84\x19\xb8\xf2\x6c\x5e\xb0\xc9\x2d\x3c\x9b\x7c\x2d\x8a\x09\x98\x30\x80\x71\xa5\x45\x4e\x1a\xbf\xbd\xd0\x8e\x0d\xae\x30\x4e\x2d\x72\x54\xdd\xab\xb8\x89\x45\x0e\x7b\xbd\xe7\xf8\x7b\xfe\x1c\x4b\x8b\x1c\x36\x2d\x72\x38\xb5\xc8\x4d\x6c\xdf\x16\xb4\xc0\xb0\xc8\xb1\x52\x8b\x9c\xf4\x5e\x7e\x0f\x19\x9c\x47\x16\xb8\x55\x95\xc2\x7e\x5c\x0e\x6e\x61\x34\x90\x05\x04\x2d\xc1\x32\x41\xe6\xcf\xd4\x23\xd5\xc0\x02\x0c\x49\xa7\x54\x0d\x0a\xc3\x2a\x17\x03\x9b\xa7\xb9\xe4\x10\x09\x5e\x86\x94\x94\xda\xe4\x74\xd1\x38\x12\xd8\x96\xaf\xda\x20\x6d\x80\xc1\x39\x03\x0c\x77\x00\x91\xcf\x04\xeb\x1c\x17\x0c\x30\x81\x67\x7e\x64\xee\x0d\xf9\x08\x2c\xbd\x5d\x46\x07\x92\xb3\xb3\xa4\xfd\x1d\x30\xf6\xcc\x57\x33\xef\x76\x0d\x4c\xf6\x6f\x59\xe1\xa3\x30\x1b\xa2\x91\xb7\xd4\x3e\x0a\xb3\xbc\x8f\x82\xf9\x13\xcc\x8a\x3e\x0a\xb3\x4a\x1f\x85\xd9\x6a\x35\x2b\xfa\x28\xcc\xf2\x94\x7a\xe6\xcd\xeb\xf8\x28\x98\x54\x97\xdb\xe2\xf6\x22\x67\xb5\x12\x1c\xe7\xcc\x01\x63\xc3\x47\x61\x56\xf0\x20\x98\x69\x1f\x85\xdc\xf3\xf3\xd9\xa6\x8f\xc2\x38\xf5\x51\x98\x6d\xf7\x51\x28\x7e\xa1\x1c\x21\x89\x29\xce\xc4\xf2\x94\x8f\x02\x31\xf9\xd6\xab\xfa\x7c\xeb\x82\x86\xd8\xc7\x68\x1f\xfd\x5c\xda\xb5\x55\xd4\xb5\x8a\xba\x2f\x97\x87\x6c\x15\x75\xad\xa2\xae\x55\xd4\x7d\x4e\x45\x5d\x9e\xd0\xec\xd4\xb1\x00\x76\x94\x37\x8e\xa7\x68\xf3\x0b\xa5\x3d\xf8\x90\x1c\xe6\xe1\x83\x12\xca\xf0\x20\x54\x42\x71\x5e\xa2\xb5\x63\xaf\x2c\x22\x47\x53\x94\x93\x93\x84\xb4\x4c\x11\x3f\x37\xfe\xce\xa9\x3d\xc5\x68\x6a\x65\x05\x2e\x8c\x32\xfb\xf9\xf1\x46\x60\xcd\x0c\x46\x06\xd7\xaf\xc3\x6b\x80\x20\x25\x1a\x73\xd9\xc8\x0b\x6c\xe4\x38\xcf\x9d\xe7\x06\x5e\x07\x5c\x92\x42\x96\x3a\x9b\xef\x90\x21\x98\xe8\xa0\xfb\x53\x39\x7f\xf9\x7f\xf5\x3d\xe2\x0c\xa8\x62\x9e\xd7\x8a\x29\x01\x64\xb5\x42\x9b\x49\x02\x35\x90\xfc\x7b\xe5\x7a\xa2\x96\xeb\xd9\xca\xf5\x04\x45\xae\x27\x78\x48\xae\x67\x52\xc2\xf5\x4c\xb6\x70\x3d\xb4\x9a\xeb\x59\x14\xb8\x8f\xc5\xe7\xd3\x9c\x19\x05\xf9\xaa\xf2\x18\x3e\x62\xc6\x27\xd5\x5e\x81\x29\x78\x97\x69\xb0\x2a\xec\x54\xf3\xaf\x48\xa1\xe5\x27\x8c\xd2\x64\xab\x42\x8b\x7a\x91\x3d\x31\xb8\xa7\x49\xaa\xd0\xd2\x4c\xfe\xa4\x89\x42\x2b\xf4\x7a\xcf\xc3\xef\xf9\xf3\x50\x2a\xb4\x42\x53\xa1\x15\x8e\x32\xef\xb3\x45\x3d\x17\x73\x6d\xf5\xb3\x00\x03\x8b\xa2\xcb\xf8\xc4\x50\x4e\x89\xf3\x5f\x12\xf1\x1f\xdb\x81\x3d\x31\x3d\x4f\x75\x43\x85\x22\xf6\xb0\x3b\x4a\x16\x6f\x69\x39\xeb\x35\x48\xb4\x62\x86\x05\xb2\xca\x5b\x5d\x1b\x22\x37\x67\x53\xe8\xad\x31\x97\xc0\x9a\x72\x56\x7f\xa8\xb5\x52\x6a\xeb\xc2\x12\x6d\x5d\xa8\xb4\x75\x93\x82\xb6\x6e\xe9\x65\xbb\x33\x96\xba\xba\x99\x77\x17\xf7\x63\x30\x2d\x6a\xe8\x66\x15\x1a\xba\xe9\x10\x8d\xbc\x99\xd6\xd0\x4d\xf3\x1a\x3a\xf3\x27\x98\x16\x35\x74\xd3\x4a\x0d\xdd\x74\xb5\x9a\x16\x35\x74\xd3\x3c\xe3\x34\xf5\xc6\xcd\x35\x74\x02\x3b\x25\x1a\xba\xa9\x03\xae\x0c\x0d\xdd\xb4\xa0\x3f\x9b\x6a\x0d\x5d\xee\xf9\xf9\x74\x93\x5f\xbd\x4a\x35\x74\xd3\xed\x1a\xba\xe2\x17\xca\x11\xae\x98\xe2\x54\x2c\x4f\x69\xe8\x98\x37\xcd\x6b\xe9\xde\xed\x21\x01\xed\x32\x33\x1b\xce\x7d\xad\xd3\x76\xeb\xb4\x7d\xb0\xec\xe7\x1f\xab\x74\xbb\x47\xa7\x6d\x58\xe6\x3c\xfd\x79\xd8\xcf\xcf\xa5\x77\xab\x12\x73\x0f\xc3\x70\xeb\x7f\x2d\x5c\xec\x5e\xfe\xe2\x52\xc5\x70\x94\xba\x8b\xa7\xfc\x2b\xdd\xe4\x5f\xb1\xc1\xbf\xd2\x84\x7f\xa5\x92\x7f\xc5\x55\xfc\x6b\x6c\x43\x9b\x79\xc8\xe4\x5f\x51\x81\x7f\xc5\x25\x06\xd9\x88\x32\xfe\xa3\x60\x1a\x29\xe3\x16\x08\xfc\x81\x15\xf8\x16\xb8\xc4\x24\x18\x58\xe2\xff\x56\x0d\xeb\x2c\xab\x70\x71\xf7\xeb\x53\x69\x46\xc3\xbd\x0c\x69\xaa\x5f\x6b\x45\x6b\xad\x68\x2d\x41\x6f\xad\x68\xad\x15\xed\xa0\xc9\xea\xa3\xb5\xa2\x19\x54\xa6\x35\xa1\xb5\x26\xb4\xd6\x84\xd6\x9a\xd0\x5a\x13\x5a\x6b\x42\x6b\x4d\x68\xad\x09\xad\x35\xa1\x7d\x01\x26\x34\xc1\xdf\xb5\x06\xb4\xd6\x80\xd6\x1a\xd0\x2a\x85\x9f\xd6\x7a\xd6\x5a\xcf\xbe\x06\xce\xb3\xb5\x9e\xb5\xd6\xb3\xd6\x7a\xd6\x5a\xcf\xf6\xb1\x9e\xfd\x21\x96\x32\x4e\x2f\x11\xd9\xc7\x54\xa6\x3b\xb6\xb6\xb2\xd6\x56\xd6\x92\xef\xd6\x56\xd6\xda\xca\x0e\x9a\x88\xfe\xf1\xb6\xb2\xa3\x46\xf4\xe9\x73\x67\x88\xda\x95\xfc\xa9\x56\x06\x29\x1c\x5d\xf8\x74\x81\x82\xc1\x71\xff\xbe\xb3\x45\x49\x30\x7d\x05\xf9\xa2\x00\xf3\x52\x38\x28\x1a\x51\xcc\x1b\xa5\x50\x3c\x4d\xcb\xf9\xb8\x1c\xb2\x29\xe2\x2a\xa9\x38\x5d\xef\x9f\x57\x4a\x9f\xc4\x56\x73\xd1\x6a\x2e\x5a\xd6\xa7\xd5\x5c\xb4\x9a\x8b\x56\x73\xd1\x6a\x2e\xca\x35\x17\x7f\xa4\xbf\x2f\x26\x1c\x11\xc9\x54\xb4\xa4\xb9\x25\xcd\x2d\x69\x6e\x49\x73\x4b\x9a\x5b\xd2\xdc\x92\xe6\x0a\xd2\x0c\x7d\x1f\x45\xd1\xc0\x52\xff\x3e\x3c\x79\xbe\xbc\x6a\xc9\x72\x4b\x96\x5b\xb2\xdc\x92\xe5\x96\x2c\xb7\x64\xb9\x25\xcb\x9f\xc9\xd6\x4f\x68\xd0\x7a\xdd\xb5\x94\xb8\xa5\xc4\x2d\x25\x6e\x29\x71\x4b\x89\x5b\x4a\x5c\x4d\x89\x39\xe4\x71\x34\xb0\xd4\xbf\x7f\x14\x65\x8e\x66\xf4\xfa\x54\xfb\x0b\x44\x6d\xf1\xa2\xb6\x78\x51\x5b\xbc\xe8\x11\xf1\x13\x6d\xf1\xa2\xb6\x78\xd1\xa3\x2a\x5e\xe4\xd3\xf9\x22\xe6\x28\xb0\xa5\x2b\x96\xfb\x72\x86\xfc\xcb\xc8\x1d\x8e\x2c\xa7\xad\x67\x74\xc8\xf5\x8c\xf6\x2e\x5d\xe4\xcb\x13\x60\x81\x5c\x26\x05\xbd\x4a\xef\x76\x9d\x4c\x4b\x41\x69\x8a\xb8\x5a\xb7\x79\x7a\x2c\xc7\x55\x5f\xcc\x07\x52\xaa\x8e\x96\xc0\x33\xc8\xbd\x50\x0c\xca\x9b\x57\x6b\xa7\x2c\xee\x52\xa0\xc7\x14\xb1\x0c\x79\xd6\x7c\x74\x72\x62\xe7\x1f\x78\xc3\x91\x03\xf2\x8f\xdc\x45\x1c\xcd\x6c\xb1\x9d\x62\x95\x7b\x54\x56\x4a\x60\xb0\x57\x59\x25\xdd\xb9\xad\xa9\xf4\xa5\xd4\x54\x22\xd1\x02\xfa\x4d\x93\xc0\x25\x9d\xda\xa8\x96\x36\xaa\xe5\xcb\x65\x67\xdb\xa8\x96\x36\xaa\x25\x9d\xc5\x97\xcc\x1f\x3e\xc6\x0c\x70\x39\x12\x73\xf0\x11\x2d\xf7\x1b\xc5\xa2\x60\xd3\x86\xb1\x3c\x50\x18\x4b\x72\xf4\x5a\x33\x60\x6b\x06\x6c\xf9\x9c\xd6\x0c\xd8\x9a\x01\x5b\x33\x60\x6b\x06\xac\xed\x90\x73\x77\x5b\x5f\x62\xe0\xdb\x49\x81\xbf\xe2\xe4\xbf\xe9\x67\x0b\xc2\x9e\x3c\x03\x2e\x8e\xd4\x59\x40\x8e\x93\x8a\x97\xc8\x11\xf2\x99\x49\x43\x8b\x44\xf0\xb8\x38\xe9\x02\x48\x04\x4a\x51\xd7\xc3\x18\x58\x7d\x70\xc2\xe8\xbc\xe4\x0b\x09\xc7\x80\x74\x6b\x49\x16\x23\x49\xd9\x32\x10\x21\x63\x8e\xe2\x9c\x2b\xbe\x70\x23\x7d\x6d\x9e\x24\x22\x47\x2b\xf4\xbe\x03\xdd\xbe\x73\x64\xa9\xe6\x96\xe7\x79\xa4\x00\xec\x93\x13\x9b\x78\xb9\x27\x92\x3b\x94\x24\xcf\xfa\x19\x2e\x64\x9f\xd5\xca\xba\x40\xaa\x7b\xe9\xc2\x64\xe3\x17\xc9\x2d\xd2\x5d\x4e\xff\x8f\x7d\x3e\xf8\x15\xaf\xde\x38\x84\xdb\xe7\x83\xef\x56\xfd\x67\xab\xa7\x67\x8e\x7d\x3e\x78\x19\xc2\xf9\x02\x05\xce\xb9\x1c\xe4\xbf\x9d\xba\x1c\x45\x52\x95\x9d\x5b\x69\x01\x5a\x29\x13\x9b\xc7\x68\x6f\xc8\x15\x0c\x71\xd0\x81\x9c\xa3\xf9\x82\x77\x38\xed\x44\x0b\x86\x60\xd0\x21\x94\x74\xe5\xde\x8c\xc3\x8c\x23\x73\xff\x8b\xbc\x21\x1d\xca\x02\xc4\x44\xd3\x31\xea\x24\x4d\x80\xec\x00\xc5\x8c\x3a\x8a\xbe\x46\x0a\x3b\xce\xe0\x15\xea\xc0\xce\xb0\xb0\xdd\x23\xdb\xe9\xcc\x11\x9f\xd1\xc0\xb5\x9c\xb5\xbd\x99\xcf\xd9\x16\xc8\xd4\xf3\xf8\x6a\xc5\x7f\x40\x1a\x15\x39\x27\x27\x36\xf7\xd2\x5f\x47\x86\xb9\x18\xb0\x9c\x85\xe0\x39\xf9\x9e\x4b\xb3\x31\x13\x92\x05\x92\x46\x63\x2d\x62\x6e\xe4\x76\x7e\x20\xae\x33\x3e\x08\x93\x76\x9b\x12\xb9\x4d\x89\xdc\xa6\x44\xbe\x03\x6f\x3c\xff\x63\x79\xe3\xf4\xbb\xcb\x24\x47\x3f\xa0\xea\xf8\x60\xc3\xc6\x68\x6a\x62\x58\x85\xb5\x0c\x0f\xd1\xc8\x63\xda\x5a\x86\xf3\xd6\x32\xf3\x27\xc0\x45\x6b\x19\xae\xb4\x96\xe1\xd5\x0a\x17\xad\x65\x38\x8f\x9b\xb0\x47\xea\x58\xcb\x64\xf1\x81\x54\x2b\xa8\x40\xbc\x5a\x91\xb5\x03\xb0\x03\xa8\x61\x2d\xc3\x05\x5b\x16\xd6\xd6\xb2\xdc\xf3\x73\xbc\x69\x2d\xa3\xa9\xb5\x0c\x6f\xb7\x96\x15\xbf\x50\xbd\xb5\x58\x2e\x4f\x5a\xcb\xf0\x3d\x49\x31\xe3\x2a\x87\x03\xed\x6a\x40\x36\x5e\xa6\x1e\x6c\x0e\x58\xda\x36\xfb\x5a\xa4\xa0\x34\x87\x36\xdd\xe1\x87\x10\xd9\xd4\x31\x59\xfa\xc4\x0f\x41\x27\x73\xa6\xf7\xee\x87\x30\x97\x39\xb4\x9b\xfb\x21\x6c\x77\x89\xa4\x31\xf3\x91\x78\x2b\xfe\x6d\x1a\xee\x6f\x78\x30\x50\xc3\x83\x21\x73\x7e\x2c\xf8\x30\x24\xb8\x6d\x86\x23\x57\x1d\xbe\x2d\x7e\x0a\x3e\x25\x04\xf9\xbc\xbb\x10\x34\x57\x39\x2d\xfc\x1d\x93\x60\xed\x64\xe9\xb8\xd1\x0d\x47\x8c\xc0\xf0\x42\xce\xbe\xca\x67\x42\x7e\x2e\x99\xd3\x76\x83\x3a\x4a\x20\xc9\xdd\xd7\xf9\xb1\x57\xab\xe1\xc8\x59\x3b\x60\x38\x32\xb4\x44\x62\x13\x2f\x90\x94\x34\x92\x95\xfc\x48\x69\x88\x20\x71\x5c\x01\x6f\x5b\xe7\xd9\x8e\x4b\x9c\x1f\x62\xe5\xfc\x40\x0b\xce\x0f\x06\xf0\x86\x7c\x04\x76\x16\xb2\x28\xed\xea\x00\x66\x26\x1e\x5f\xe6\x9b\x6d\x40\x6d\x48\x1a\x7e\xa8\x38\x42\xe1\x7b\xcc\x14\xa7\xc7\x4d\xc5\x69\xc5\x3e\xd7\x91\xa8\x01\x3d\x2a\x13\x37\x6d\xfc\xa5\xca\xd4\xf0\x90\x0a\xea\xb4\x62\x51\x2b\x16\xb5\x62\x51\x95\x58\x84\x5b\xb1\xa8\x81\x58\xd4\x8a\x27\x5f\xb6\x78\xb2\xdc\x52\xc7\x27\x84\xd1\xec\x67\x14\x45\x70\x2a\x39\x8d\x44\x52\xf9\xa4\x0c\xf7\x80\x7a\xf3\xaf\x51\x3c\xc1\x3b\xc5\x13\xec\x98\xdc\x51\x41\x3c\xc1\x4d\xc4\x93\xd8\xeb\x3d\x8f\xbf\xe7\xcf\x63\x29\x9e\xc4\xa6\x78\x12\x8f\x32\xdf\xb0\x9a\xe2\x09\xa1\x1c\x4f\x96\x16\xa0\x9b\x15\x7e\xb0\x21\x44\x20\xb1\x0d\x65\x25\x76\xfa\x02\x03\x26\x3e\x14\x0c\xc1\x60\x79\xc1\x21\x17\x5c\xd8\x37\xbd\x6f\x2c\xcf\xf3\x32\xcf\x68\xc1\xaa\x8a\x61\x5c\xf9\x7f\x21\x6d\xb0\x88\x27\x58\x4c\x49\x40\x52\x17\x2c\x04\x04\x35\x2d\x17\x06\x81\x7d\x1b\xa0\x88\x33\xba\x7c\x47\x5e\x86\xd8\xbf\x1c\x1c\xf7\x41\xc4\xb1\x7f\xb9\x14\xfb\x22\xb6\x6f\x60\x5d\x43\x46\x30\x99\x5a\xda\x7d\x64\x60\xc5\x8b\x00\x72\x64\x09\x09\x21\x99\x9c\x72\x90\x91\xe2\xcb\xa8\x1c\x39\x95\xb3\x8e\xc8\xf5\x43\x1a\x21\xc9\x3b\x8a\x3f\x6c\x47\x90\xc0\x9d\x92\x04\x2e\x4a\x12\x09\xa0\x85\x1c\x71\x97\x52\x3d\x0e\x98\x17\xd8\x7f\xb5\x35\xcd\xc5\x06\xd9\x6f\x9b\xb0\xb0\xdc\x4f\x58\x38\x8d\x17\x11\x67\x48\x0a\xbc\xad\x2b\x4c\xeb\x0a\xf3\x45\xf3\xb5\xad\x2b\x4c\xeb\x0a\xd3\xba\xc2\xb4\xae\x30\x8f\x31\x37\x4d\x4a\x99\xa3\x19\xbd\xae\xa7\xc2\x03\x18\x40\x10\x82\xf8\xc8\x54\x9a\x18\x2a\x93\x2f\x94\x3e\x47\x87\xa4\xca\x9b\x3c\x28\x33\xb1\x38\x08\x55\x5e\x90\x63\x79\x2a\x94\x21\x7b\xb2\x3c\xf3\x96\xe5\xd9\xca\xf2\xcc\x8a\x2c\xcf\xec\x21\x59\x9e\x65\x09\xcb\xb3\xdc\xa2\xca\xf3\xab\x55\x79\xe3\x82\x2a\x6f\xfc\xf9\x58\x1e\x03\xde\xf6\xec\x73\xb0\x3c\x57\xad\x2a\xef\x6b\x50\xe5\x4d\xab\x55\x79\x2a\x1a\x89\xd4\x54\xf4\xb1\x82\x4b\x82\x0b\x43\x0c\xa3\xc4\x6b\xc1\x50\xe5\x58\x0e\xa0\x05\xa5\x20\xf4\xae\x6c\x1b\x7f\x2d\xec\x6a\x50\xd7\x67\x61\x5e\xe1\xb3\x30\x79\x28\x9f\x85\xc8\x1e\xd7\x53\x0a\x8a\xa3\x01\x20\x18\x4b\x8d\xa0\xec\x65\x68\x0a\xc3\xc2\x73\x19\xec\x05\x62\xfd\xb4\xc2\x09\xa1\xb9\xfe\xd0\xde\x57\x81\xf8\xa0\xfa\xc3\xac\x28\x82\xfa\xed\xcf\x20\x26\x99\x6a\x11\x23\xfd\x7c\x0a\x39\xba\x86\x4b\x9d\x84\x41\x3f\xe4\x74\x41\x43\x3a\xbd\x3f\xfd\xe3\xa2\x44\xff\xb8\xa8\xf0\x64\x90\x7b\x7a\x77\xe5\x63\xe8\x5d\xd9\xb8\x54\xaf\x49\xee\x3a\x74\x5c\x1c\x5a\x9d\xac\x21\xbb\xeb\xc0\x85\x61\x13\x85\x29\xdd\xad\x30\x2d\xe9\x27\x88\x9d\xa1\x30\xc5\xa6\x58\x36\x6d\x2e\x96\xa5\x5a\xd3\x36\x39\x59\x49\x72\xb2\xa6\x31\x0b\xf8\x00\x62\x16\xf0\x57\x13\xb3\x80\x0f\x3b\x66\x01\xff\x61\x31\x0b\xf0\x41\x25\xfa\xf0\x20\x24\xfa\x5c\x22\x36\x3b\xbe\x57\x89\xde\x6f\x25\xfa\xad\x12\xfd\xa2\x28\xd1\x2f\x1e\x52\xa2\x8f\x4a\x24\xfa\x68\xbf\x34\x7c\x93\x82\x44\x3f\xf9\x7c\x12\xfd\xc2\x20\xc9\x8b\xcf\x21\xd1\x07\x87\x68\xc4\x48\x53\xf0\x81\x29\x78\x57\xe9\x15\x6f\x39\x60\xfe\x15\x65\xdf\x8b\xeb\xba\x95\xf8\x15\x6e\x25\x70\x0f\xb7\x12\xea\xf5\x9e\xd3\xef\xf9\x73\x2a\x25\x48\x6a\x4a\x90\x34\xa5\x59\x81\x3d\x79\x78\xaf\xf7\x46\x9e\xee\x39\x27\x95\xfa\x0e\xe8\x4a\x6d\x71\x7f\xde\xe7\xb4\xb6\xf7\x79\x58\x22\xb3\x85\xe5\x3e\x23\x4b\x6f\x73\x49\x63\x99\x83\x6f\xd6\x2c\x07\xdf\xa6\x87\xf8\x55\x2e\x19\xdf\xb4\x98\x8c\x6f\x56\xa1\xf4\x9b\x0e\xd1\xc8\x9b\x69\xa5\xdf\x34\xaf\xf4\x33\x7f\x82\x69\x51\xe9\x37\xad\x54\xfa\x4d\x57\xab\x69\x51\xe9\x37\xcd\xb3\x11\x53\x6f\xdc\x3c\x19\x9f\x40\x2d\x49\x32\xbe\xa9\x03\xae\x0c\xa5\xdf\xb4\xa0\x92\x9b\x6a\xa5\x5f\xee\xf9\xf9\x74\x53\xe9\x77\x95\x2a\xfd\xa6\xdb\x95\x7e\xc5\x2f\x94\x63\x4b\x31\xc5\xa9\x58\x5e\x49\x32\xbe\x77\x7b\xc9\x92\x6d\xc9\xc6\xd6\xff\xe6\xab\x62\x5d\x5b\xff\x9b\xd6\xff\xa6\xf5\xbf\x69\xfd\x6f\x0e\xa1\x64\x63\x9e\x58\xd7\x28\x4a\xd1\x12\xe9\x96\x48\xb7\x44\xba\x25\xd2\x2d\x91\x6e\x89\xf4\xd7\x4a\xa4\x13\x3a\x30\xb0\xb2\x60\xf4\x3f\x96\x50\xb7\xe1\x2c\x2d\xa5\x6e\x29\x75\x4b\xa9\x5b\x4a\xdd\x52\xea\x96\x52\x3f\x22\x4a\x1d\x21\xce\x31\x99\x6e\xa3\xcb\x0f\x9e\xed\x9f\xa1\x05\xad\x48\xe5\x9f\x4e\xcf\x01\xbb\x6a\x02\x70\x3c\x47\x34\xe6\x15\x6d\xf4\x5b\xcb\x51\x27\x8a\xcd\x31\x99\x0e\x8e\xfb\x40\x6e\xd4\x47\x06\x49\x84\xa5\xdb\x62\xa9\xa9\x0b\xa8\x9c\xfe\xae\x1e\xc4\xe5\xd8\xbf\x3c\x52\xdf\x89\xd2\x72\x55\xd9\xb8\x16\x38\xee\x39\x80\xdb\x8e\xcb\x67\x88\xd8\x26\x4d\xc9\x3a\xa1\x42\x8f\xbe\xb3\xce\x25\xef\xbf\x44\xcb\x1c\x2e\xd3\xe5\x01\xe4\x3c\x0a\x93\xb6\x05\x99\x52\x65\x03\x3a\xfd\xa7\xd2\x19\xf4\x12\x2d\x5f\xd2\x00\x0d\xc4\x4d\x44\x57\x88\xf0\x57\x6a\x47\x6c\x67\xbd\x06\x7b\xd6\x05\x48\x9c\x38\x99\x57\x5a\xa9\xcb\x0f\x31\x22\xdc\x1d\x87\xd4\xbf\x14\x4b\x72\x8e\x92\x8a\x06\xca\x8b\x4a\x95\x35\x50\xad\x86\x49\xab\x91\x35\x28\xc2\xb1\x74\x30\x70\xcc\x74\x79\x86\x48\x1c\x99\xc4\xb9\x14\xe8\xf1\x2c\x90\x5a\x24\x75\x57\xe7\x68\xcc\x10\xbc\x3c\x92\x1f\x8d\x59\x18\x0d\xf5\x51\x18\x59\x83\x94\x9e\x95\xae\x43\x34\xb6\x9c\x93\x93\xd2\x79\xc9\x97\xe0\x76\xed\x80\xca\xd7\xc9\x99\xb3\x00\x51\x26\xb1\xf2\x89\xab\x91\xb2\x69\x8b\xdf\x4e\xcd\xd2\x09\x01\xe4\xb0\x0b\x03\xb8\x90\xb8\xc0\x2c\x1e\xf5\x57\x24\xa6\xd5\x15\x0d\x4e\x03\x34\x8e\xa7\x9b\x85\xa2\x1a\x5f\xe7\xca\x0e\x7a\x96\x56\x2e\xa4\xeb\xb8\x57\x95\x23\x2d\x59\xd5\x7a\xed\x94\x2f\x0b\x91\xab\x2d\xa5\xb0\x26\x78\x2a\x5a\x60\x46\xc9\x5c\x6e\xb9\xf1\x3a\xe6\x38\x8c\x4e\xa7\x88\x77\xcd\x16\x85\xa5\x0b\x6a\xbe\x07\x2e\x43\xe4\xca\xc4\x63\xcc\xb3\x7b\x80\xa4\x25\x56\xb2\x6a\x2b\xe0\x1a\x93\x80\x5e\x83\x80\xfa\x92\x36\x88\x7d\x14\x7d\x59\xf9\x62\x15\x26\x3f\x5d\x30\x14\x60\x1f\x72\x19\xfb\xaf\x2d\x8f\x55\x40\x50\xab\xd4\x24\xe0\xee\xfb\x5a\x8a\xa6\x89\x58\x1e\x77\x21\x09\xde\x31\xc7\xbe\x55\x6a\x5d\x14\x0d\x6e\x61\x18\xd2\xeb\x41\x85\xc0\xf0\x42\x3e\xf4\x3c\x8f\xaf\x41\x80\xc8\xb2\x4e\x3b\x0b\x2e\x16\x5d\x78\x0d\x19\xb2\xca\x98\xb6\x8c\xe9\xd4\xbd\x0a\x57\x83\xd4\x05\x2b\xa1\x41\xa1\xc2\xda\x9c\xa0\x39\x25\x38\xe2\x82\xfa\xd5\x86\xf0\x9e\xc7\xa7\x04\xc6\xfa\x08\x25\x30\x56\x3e\x1c\x02\xc6\x0b\x18\x45\x82\x2e\x55\x40\xef\x42\x36\x54\xd0\xd3\xee\xf6\x75\x9a\xfa\x0c\x73\xec\xc3\xb0\x46\xdb\x3c\x88\x6b\x9f\xdc\x05\x0d\xb1\xbf\x7c\xd4\x40\xbe\xc4\x24\x88\x06\xb7\xd6\x34\xa4\x63\x18\x76\xe7\x90\xc0\x29\x92\x58\xa2\x5c\x62\xc0\xd1\x7f\xc8\x96\x3f\xa7\x0d\xd7\x40\x30\x64\x01\x64\x41\x49\x8f\xe3\xd2\x1e\x6b\x10\xf8\x66\x81\x20\x43\x9e\x30\x8e\xf7\x2b\xc8\xa1\x8f\x08\x47\x2c\x5a\xad\x52\x74\x22\xc3\x24\x58\x84\x64\xd7\x0b\xfc\x2f\x64\x13\x90\xfa\xc7\x98\x7d\x1c\xe7\x87\xde\x9e\xfb\xa6\x29\x55\xb7\x2c\x45\xe1\xa3\xdb\xc1\xc7\x74\x4d\xb4\xbf\x55\xc5\xde\xf6\x84\x38\x55\x6f\x1f\xcb\xbc\xa2\x9c\xbb\xed\xe6\xa3\xde\xc4\xe4\x1a\x62\x32\x15\x02\x65\x57\xc7\xf8\x58\x55\x40\xff\x3b\x26\x81\x26\x17\x1c\x09\x56\x19\x0a\x71\xa0\x49\xb7\x39\x8a\x66\x0d\xda\x6b\x20\x96\x5f\x71\x99\xad\x15\x58\x98\x74\xc5\xa8\x15\x98\xe3\x0d\xf9\x19\x45\xb3\xb5\x8c\xea\xe9\x6e\x69\x7a\x9c\x36\x5d\x83\xda\x67\x5b\xb4\x6f\x70\xbe\x8b\xcd\x77\x9d\xf1\x42\xfb\x75\x2a\x8f\x46\x83\x5b\x86\xa6\x38\xe2\x88\xa1\x32\xfc\x27\xd7\xad\x9a\xbe\xa4\x31\xe1\x3f\xf4\x34\x00\xb2\x5e\xa5\xe0\x52\x18\x30\xd7\xf5\x91\xde\x2e\x4e\x2f\x11\x39\x88\xbb\x75\x17\x12\xa7\xfa\x96\x9f\xd6\xb7\xd4\x87\xe1\x1a\x84\xd4\x2f\x6d\xd1\x49\x5a\xd4\x03\x70\x08\xa3\xd9\xa9\x56\x4b\xe6\xa0\xaa\x24\x18\x3f\xc4\x5d\xd5\x26\xd7\xf2\x80\xa4\x99\x09\x65\xf3\xe8\x14\xfa\x61\x15\x3b\x2f\x83\x75\xa0\x14\xf7\x55\xb3\xcd\x03\x44\xd9\xfc\x54\x57\x21\xbc\xe7\x63\x64\xee\x9f\xe2\xfb\x8b\x4a\xb0\x1f\xfa\x86\xb7\x67\xa6\xf0\xea\x8f\xce\xcd\x1f\x03\xcb\x02\x9b\x0a\xb4\x1f\xce\x4a\xfb\x9e\x99\x7d\xcf\x46\x83\x4c\x76\xc2\x9b\x43\x3c\x2d\x1d\xe2\xa9\x39\xc4\xd3\xd1\x80\x19\xb9\xab\x85\x5c\x2e\x24\xf2\x7f\x28\xc0\x52\x16\xd9\xd4\x59\x97\x4a\x6d\x5b\xf7\x6c\xa7\x20\x66\xee\x9c\xd1\xb8\xdd\xbf\xc7\xb1\x7f\x97\x95\x6a\x04\x73\xe3\x44\xab\x76\xc7\xfe\xd0\x1d\x3b\xaa\xda\x31\x5d\x5b\xb5\xc6\xae\x25\x2d\xdb\x9d\x7b\x80\x9d\x93\xb1\xfe\x48\xd7\xbb\xd5\x42\xbd\x93\x7f\xca\x68\x88\x2c\x67\x9f\x5b\x59\xa6\x24\x28\xdf\xe3\xa4\xe5\x61\xee\x71\x32\xfb\xc7\xb3\xd3\x86\xb2\x60\x70\xab\xb2\x35\xc8\xd8\x5e\x6b\x7d\x3f\xf8\x56\x9e\x89\x1a\xfb\xaa\xda\x1d\xe6\xae\xaa\xb9\x3f\x9e\x3d\xad\x7d\x7b\xf7\xd8\xcf\x12\x51\xa7\x7c\x43\x75\xc3\xc3\xdc\xd1\x83\xdc\xcd\x3b\xe3\xe2\x19\x0a\x17\x88\x45\xa7\x5d\x14\x2a\xd9\xb0\x44\xf6\xd2\xaf\xba\xaa\xed\x66\x97\x03\x12\xc2\xd2\xb9\xcf\x60\xd4\x95\xd6\xc4\xee\x42\x5b\xde\x37\xd7\x4d\xe0\x1c\x05\xaa\x55\xd4\x5d\xd0\x70\x39\xc1\x61\xb8\x65\x88\x83\x86\xc3\x5d\x00\x70\x90\x2b\xc7\x91\xb9\xbe\x2e\x26\x57\xd4\x87\x9b\x52\x5e\x2d\x48\x54\x8f\x75\x88\x90\xb9\x37\xb0\x7c\x39\x30\x81\xe3\x52\x0c\x31\x87\x7c\xd6\x4d\xda\x98\x6d\x1f\xe5\x12\xab\xc7\x94\xcb\xab\x39\x1e\x1c\x47\xbb\xc1\xe5\xd3\x06\xf0\x12\x8d\x0f\x0d\x60\x72\x81\x75\x21\xe6\xd3\x7a\x20\x9b\x35\x82\xd9\xec\x10\x81\x36\x6b\x04\xb5\xd9\x6e\xb0\x05\x41\x7d\xa0\x05\xc1\xc1\x81\x4c\x2c\xaf\x2e\xc0\x82\x60\x37\xb8\x48\x29\xb8\x38\x8b\xcb\xe0\x45\x0e\x0f\x5e\xa4\x01\xbc\x48\x0d\x78\x2d\x16\xdd\x2b\xc4\xa2\x2d\xca\xdf\x52\x57\xa4\xcc\x68\x61\x8c\xa0\xa5\x21\x86\xa6\xe8\x66\x51\x26\x07\x99\xee\xfa\x49\x02\xa9\x3d\xc5\x99\xdb\x35\xa0\x86\x59\xec\xc5\xfb\xf7\xae\x9e\x05\xc0\x1e\x4b\xfe\x7e\x47\xc2\xe5\x6a\xc5\xdc\x19\x0e\xd0\xc5\x0c\x02\xe8\x31\x37\x9a\x41\xf3\xf1\x3f\x74\xaf\x50\x26\x54\x48\xa5\x14\x99\x97\x2a\x9a\xd1\xeb\xd7\xd2\x69\x13\x05\x27\x27\x76\xe8\x51\x77\x0e\x95\x8b\x9f\xfe\x40\xf2\xf6\x03\x9a\xbe\xbe\x59\x38\x0e\x08\x57\xab\xb2\x76\xc9\x7b\x07\xc0\xc2\x40\xd1\x0c\x66\x9d\xcf\xc3\x61\x6f\x34\xa0\xfb\xb8\x47\xc3\xc5\x42\x2f\xc5\x63\xe5\xe6\xb3\x24\xc5\xea\x4f\x72\xef\x5d\x75\x04\xec\x5c\xf5\x16\xba\xf3\xb4\xa0\xf2\x0b\xe6\xd3\xf9\x82\x46\xe2\x44\x6e\xde\x32\xd5\xe9\xd0\x2e\x9a\x5e\x6a\xdd\xbb\x26\x9b\xef\xbe\x6e\x11\x2e\xe5\x33\xcb\xd1\xb9\x68\x7c\x68\x60\x93\x0b\xac\x0b\xb4\x08\x93\x5a\x20\x6b\xc0\x37\xc8\xd6\x07\x08\xb4\x06\x7c\x83\x68\x5d\x03\x6c\x11\x9e\x96\x9e\x35\xf5\xa6\xa8\xec\xd0\xed\x0f\x0e\x72\x6a\x95\xb5\x41\x27\x9a\xef\x86\x1d\x87\x0d\x6e\xa9\x68\x7c\x68\x60\x93\x0b\xac\x0b\x34\x0e\xeb\x81\xec\xac\x11\xcc\xce\x0e\x11\x68\x67\x8d\xa0\x76\x56\x0b\x6c\x0d\x90\x9b\x6c\x7d\x80\x60\x6b\x80\xdc\x44\xeb\x1a\x60\xa3\xe3\xed\x4e\xe3\xb2\xc5\x06\xa4\x8a\xc1\xa8\xc5\x98\xc6\xed\x89\x82\x51\x45\x0e\xdf\xb2\x30\x50\x15\x1e\xbb\x5a\x1d\xdb\x5b\x33\x05\x27\xc9\x7f\x95\x66\x7f\x38\x02\xcc\x3b\xee\x01\xea\x1d\xf7\x01\x4e\x58\x37\xce\x96\x69\x1e\x56\x08\x42\x0f\x95\x64\xa3\x7d\x7e\x6c\x33\xcf\x86\x5e\xe8\x12\x74\xc3\x6d\xc7\x71\x03\x4a\x90\x73\x72\x62\x13\x77\x11\x47\x33\x1b\x26\xa1\x19\xc7\x7c\xb5\x22\x9a\xd5\x96\x51\x70\xcf\xc5\x27\x9d\xe7\x3a\xea\x33\x76\x6e\xa9\x98\x02\xf6\xe2\xf5\x04\x13\x18\x86\xcb\x5b\x19\x65\xba\x5a\xa9\x94\xb6\xa1\xab\xa6\xbc\x5a\x25\x7f\xd9\x4e\xda\x12\x4f\x6c\xaa\xc3\xea\xf0\x3a\x89\xd1\x22\x6b\x09\xa9\xfd\x93\x1f\xb3\xaf\x26\xf9\x31\x4b\x92\x1f\xe7\xe1\x55\x3f\xfd\xb1\x4c\x5b\x1f\xfb\x3c\x66\xe8\xf3\xe5\x40\x66\x0f\x9d\x03\xf9\x7e\xbc\x09\xcb\xc5\xa1\x8d\x1c\xea\xcc\x13\x07\xb6\xef\x0c\x7b\x23\x40\xbd\xd4\x8d\x9d\x9d\x5b\x56\x6a\xd4\x92\x21\x24\xa9\x25\x8a\x4a\xd7\x8f\xda\x42\x55\xb5\x95\x46\xbd\x89\x42\xca\xa3\xf2\xd6\x8f\x92\x14\x6c\x5f\xad\x0f\xe7\x28\xc4\xff\x42\x55\x3e\x90\x0a\x0b\x6c\x90\xbe\xb4\xdb\xa3\x5c\x72\xf5\x98\xd9\x72\x6b\x0e\x9a\x74\xa8\x01\x48\xe2\xa3\xb0\x0b\xc3\xb0\x5c\x1e\x27\x7e\xcc\x18\x22\xfe\xb2\xac\xc7\xa3\x84\xe2\xae\xf5\x2e\x30\x87\x7b\x1d\x9d\xb4\xe3\xa3\x5c\xf6\xb6\xc3\x93\x2d\xb9\xf6\xf1\x49\xba\xec\x06\xe8\x98\x95\x5a\xc3\x4b\x59\x4f\xd9\xf8\xd0\xc0\x27\x17\x58\x17\x70\x63\x56\xe3\x0c\x22\x5c\x7a\xdb\xca\x41\x26\x1a\x1f\x1a\xc8\xe4\x02\xeb\x82\x0c\xe1\x70\x37\xc8\x64\xec\x75\x84\x78\x77\x8a\xca\x1d\xdf\x93\x06\x15\x5d\x1e\x25\x04\xcb\x7d\x3b\x37\x17\x10\x35\x5f\x73\xf4\x58\xd7\xbc\xe5\xd4\x24\x93\x17\xbc\x72\xed\xd3\x63\x74\xaa\x7f\x8a\xb6\x42\xb3\x6b\xfa\x6a\x6d\x76\x3d\x54\xa8\x36\x07\x69\x0d\x78\xc6\xa4\xd4\x23\x66\x8b\x1e\x5f\xf5\x39\x38\x20\xca\x85\xd6\x06\x60\x4c\x2e\x77\x03\x2f\x84\x51\xa4\xea\x57\x35\xe2\x43\x92\x6e\x87\x06\xc2\x74\xb9\x75\xa1\xa8\x3b\xd4\x00\xe4\xbf\x9e\xd6\x57\x1a\xaa\xd6\x07\x07\x3c\xb9\xc4\xda\x90\xfb\xd7\xd3\xdd\x4a\x43\x71\x47\x61\x45\x14\xd9\x96\xeb\xab\x7b\x3d\x4a\x00\xd6\x58\xb0\x54\x3a\xd4\xcc\xa6\xd7\xea\xf6\x0e\x45\xb7\x47\x32\xdd\x1e\xdb\x5f\xb7\xc7\x36\x75\x7b\x6c\x97\x6e\x8f\x65\xba\x3d\x56\x53\xb7\xc7\x9a\xeb\xf6\x98\x93\x5f\xe9\xa1\xeb\xf6\xc8\x61\xe8\xf6\x58\x5e\xb7\x97\x24\xde\x8a\x28\xab\xca\x97\x25\xd3\x91\x39\x40\x17\x11\x1a\x6c\xba\xdd\x0b\xb4\x72\xe6\x88\x95\x28\x4d\x20\x19\xf6\xd3\x69\xab\x7c\x47\x94\x71\x37\x43\x55\x36\x93\x9a\xc0\x3a\xb1\xc1\x26\x9e\x8b\x79\xb9\x7e\x63\x3b\x62\x17\xbd\x1e\x25\x62\xdf\x42\x19\x93\xc5\xd6\xa5\x8d\xaa\x7d\x0d\x62\x41\x38\xc4\xa4\xd4\x3d\x73\x2b\x14\x75\xb7\x83\x03\x63\xb2\xdc\xda\x70\x54\x1d\x6a\x00\xb2\xbe\x8b\xeb\x01\x7a\xb8\x36\x71\x70\xad\xe3\xdf\xda\xc8\xbd\xf5\x10\xbd\x5b\x1b\x39\xb7\xd6\xf2\x6d\x0d\x60\x34\x43\xac\xb9\x46\x37\xeb\x77\x60\x20\x34\x16\x5c\x77\xd4\xa4\xc7\x6e\x60\x22\xbf\x21\xca\x13\x3d\x0e\x0d\x80\x62\x91\xb5\xc7\xf3\x6b\x00\x4d\xcf\xb1\x51\x92\x6e\x4b\x30\x83\x68\xd8\x1b\xad\x56\x59\x5a\xab\x61\x6f\x74\x8e\x86\xfd\xd1\x40\xfc\xb5\x0f\x1b\xf3\x29\x4d\x82\x58\x95\xa9\xae\xcc\x5e\xc9\x6b\xe4\x88\x4b\x57\x8b\x83\x2e\x26\x11\x2a\xd7\xfb\x33\x44\x02\xc4\x36\x4f\x49\xd6\xe9\x51\x1e\x96\xdd\x4b\x4e\x52\x50\x36\x5a\xb2\xee\x74\x90\x4b\x9e\xe8\x4c\xd5\x0d\x8f\x75\x47\x9c\xdc\xa4\x0e\x61\xd6\x3a\x2b\xb1\x2a\x8e\xb7\x3b\xc1\x24\xf8\x71\x69\x5b\x6f\x5e\x59\xc0\xc8\x27\x0a\xc4\x03\x47\xe6\x74\xdd\x87\x85\x4f\xe7\xfc\x90\xa7\xff\xaa\x36\x7d\x16\x6d\x1f\xe5\xd6\x6f\x19\x53\x2c\xaf\xee\x78\xf8\x6a\xf7\x31\xa2\xf3\xee\x82\xaa\x84\xbb\xad\xda\xa5\x55\xbb\xb4\x6a\x97\x56\xed\xb2\xa7\xda\x65\x57\x26\xf3\xfa\x4a\x17\x9b\x0c\xfb\x23\x90\x26\xed\xd6\x01\xfa\x62\xbb\x01\xf6\x86\xd4\xa5\x93\x49\x84\xf8\x7b\xc8\x10\xe1\x20\x2b\x41\xcc\xdc\x88\x43\xc6\xa3\x7f\x62\x3e\xb3\xad\x3f\x31\x14\xd1\xf0\x0a\xb1\x81\xe5\x9c\x9c\x60\x37\x26\xd1\x0c\x4f\xb8\x8d\x05\xf9\x33\x47\x70\x00\xde\x55\xee\xf7\xe6\x89\xc7\x75\x9f\xb7\x68\x22\x68\xd7\x32\x7b\xf2\x91\x2e\x00\x5a\x3b\xe0\xf6\x66\xd0\x03\xcb\x41\x0f\xcc\x10\x9e\xce\xf8\x20\x99\xe7\x4f\xf2\x27\xb8\xc6\x01\x9f\xa5\x0f\xff\x29\x7e\xad\x9b\x29\x8e\x02\x46\x17\x4d\x99\x7f\xd1\xe5\x51\x92\xb8\xed\x4b\x55\x0b\x5b\xd0\x6b\xc4\xba\x11\x0a\x91\xcf\xbb\x38\xea\x4e\x19\x8d\x4b\x21\x60\x36\xac\x35\xc6\xa3\x04\x49\xf5\x98\x72\x29\xef\xc5\x4a\x2e\xe4\x42\xde\x44\xff\xa1\x40\x51\xf3\x1b\x15\xfd\xf7\xdc\x06\xf5\x17\x2a\x8d\x10\x6b\xb0\x13\xe9\x30\x07\xbf\x19\x17\x29\x40\xf6\xde\x8f\x64\x88\xdd\x5b\x42\x38\xc3\xa8\xa9\xde\x33\xe9\x75\x68\xa0\x4e\x16\x5b\x17\xae\xaa\x7d\x0d\x20\x56\xe6\xd2\x13\xaf\xda\x88\x82\x2f\x82\xfd\x6d\x23\x0a\x0e\x8b\xfd\xfd\x12\x23\x0a\xce\x1c\x40\x3d\x26\xd8\x5a\xec\x31\xc1\xd5\xc2\x2c\xb8\x00\x9f\x5b\xd6\x00\x83\x50\xd5\xa6\x40\xe4\xca\xb1\x69\x5a\x35\x4c\xd5\xaf\x0a\xcf\xc3\x01\x6c\x14\x67\x80\x7e\xaf\x9f\x19\x01\xfd\x1e\xc3\x83\x73\x5e\x55\x93\xae\x4d\x11\x44\xeb\xdd\xf4\xe0\xa6\x94\xad\x2c\x55\x1a\x95\x24\x3d\x78\xf4\x20\xbb\x69\xc0\x2a\xde\xd4\x60\x0b\x6f\x16\xf3\x7e\x13\x80\xcd\xfb\x07\x08\x32\xb1\xc4\xfa\x40\x9b\xf7\x77\x82\x4d\xe9\x5c\xbb\xe3\x72\x97\xc2\x6a\xe6\x2d\xeb\xf7\x28\x81\x58\x6b\xd1\x69\xca\xf9\x56\xc9\xf8\x85\x71\x59\xad\x92\xf1\xb0\xb8\xac\xc3\x56\x32\x2a\x74\x52\xa1\x67\xd4\x95\x29\xee\xe4\xdf\xa5\xc6\x70\x53\x7c\xb5\x87\x83\x57\x52\xcd\x72\x0f\x24\xff\x68\x31\xfc\x96\x38\x98\x09\x26\xc1\x3e\x44\x4d\xf5\x7a\xac\x0b\xde\xba\xbf\x37\x28\xe8\x4e\x19\x0e\xba\x21\x5c\xd2\xb8\xc2\x47\x3b\x0c\x55\xfd\x96\x53\xd5\x28\x3a\x15\x3d\x1e\xae\xc0\xdd\x4e\xa1\x24\xc1\x62\xe8\x3a\x5b\xab\x8d\xc4\x35\x40\xc3\xfe\xa8\x10\xcd\xbc\xc3\xca\x3a\x09\x05\x5a\x2b\x4d\x9f\xb2\x6d\xcf\x75\xaf\x47\xb9\xe7\xd5\x63\xa6\x8b\xad\x39\xa6\x6e\xbf\xfb\x1c\x85\x94\x96\xa2\x89\x52\x36\x5a\xb5\x3e\x38\xd0\xc9\x25\xd6\x06\x1c\xa5\x6c\x37\xd8\x28\x9b\x43\xde\x25\xb1\x80\xd5\xf6\xfc\x20\x59\x70\x70\x18\x76\xf1\xa4\x2b\x58\x92\xda\xda\x3d\xc1\xbc\xc8\xd2\x3f\x48\xb1\x30\xba\x60\xb8\x60\x01\xf6\xb8\xb3\xf9\xb1\x3c\x52\x8b\xea\x25\xd7\x38\x97\x78\xc0\xd2\x2b\x77\x6c\xe2\x34\xa1\x4a\x0a\x6c\x1c\xcf\x5b\x1e\xbc\xe5\xc1\x5b\x1e\xbc\xe5\xc1\x9b\xf2\xe0\x55\x9a\x4e\x02\x18\xa0\x00\x4b\xde\x5a\x66\x50\x39\xa2\xde\xcf\x90\xcf\x14\x3e\xb7\xf1\x69\x1f\x3d\x15\x2c\xb7\xf1\x8c\x9e\x3e\xeb\x39\x80\xfe\x9b\xf7\xac\x07\x88\xf9\x82\xc9\x17\x4c\xbc\x90\x53\x80\xe6\x4b\x72\x7a\xf6\x8d\x03\x42\x8f\xfc\x9b\x77\xf6\x0d\x88\x3d\x06\x7c\x8f\x26\xf5\xb8\xd3\x5a\xe1\x32\xa3\xe8\x40\x83\x02\x3e\xb1\x02\xeb\x28\x7d\x1e\x26\xcf\xc3\x27\xd6\xcc\x78\x1e\x27\xcf\xe3\x27\xd6\xdc\x3a\xd2\xb0\x48\x1e\xfa\x4f\xac\xc8\x5a\xaf\x1b\x61\x5b\x46\xe7\xdd\xfd\x6c\x75\xb9\xae\x87\x46\xef\x19\x9d\xbf\x6e\x68\xb4\x33\xfa\xec\xa6\xfd\x8c\xc6\xe5\xa9\x49\xcb\x79\x26\xd5\xfc\xf0\x80\x18\x37\x48\x4a\xaa\x9a\xef\x04\xdd\xd4\xaf\x0f\x37\xd1\xf6\xc0\x80\x26\x97\x57\x73\xbc\xa9\x5f\x03\x5c\x8c\xc6\x8b\xe6\x62\x6d\xda\xed\x51\x82\x6f\xc7\x92\x4b\x05\xd9\x72\xd3\xd1\xf4\x91\xfa\x89\x6f\x39\x20\xf5\x87\x9b\xd6\x81\x55\xa9\xab\x79\x15\xb0\x1e\xa9\x8b\xf9\x36\x68\xd5\x8f\x5e\x99\xd6\x88\xd7\x9b\xc1\xa8\x2b\x18\xef\x86\xd7\x29\xed\x76\x60\xe0\x9b\xc1\xe8\x17\xb9\xda\x9a\x63\xea\xf6\xb5\xc0\xb8\x60\xe8\x0a\xd3\xb8\x29\x5b\x91\xeb\x7a\x78\xe0\x7c\x9f\xae\xba\x3e\x48\x93\x3e\xbb\xc1\xca\xd0\xa4\x3b\x2f\x2a\xf2\x2a\xda\x71\x5a\xa2\x69\x60\x34\xe6\x98\x4c\x4f\x39\x83\x44\x79\xd3\x8b\xf9\xed\xca\x8e\xdf\x4a\xd8\x87\x22\x61\xd3\xaf\xc6\x97\x88\x7e\x11\x12\x36\x3d\x0c\x09\x1b\x97\x5b\xb9\x04\x36\xa9\xb4\x72\xa9\x97\xa5\x56\x2e\x40\x95\x44\x8e\x3d\x96\xca\xe2\xfa\x82\xf4\x00\x77\x05\xfa\xfa\x48\x1d\x9b\xcf\x70\xa4\xdc\xeb\xd5\x58\x20\x5f\x63\xcf\x78\xe3\xaa\xf4\x92\xfc\x83\xf8\x05\x70\x16\x0a\xf6\xee\x9a\x20\x26\x5b\x3a\x0e\x28\xda\xc7\x70\x0d\x6c\x2b\xb0\xe8\x26\xfd\xd2\xaf\x1a\x20\xdc\x6b\x1c\x06\x3e\x64\x41\xae\x89\x06\xd1\x06\xf6\x05\xcc\xc0\xbf\xd4\x30\x8a\xd4\xc4\xbe\xe2\x6e\x2b\x04\x1c\xcb\xff\xc3\x3c\x32\xae\x7f\x47\xa2\x05\x43\x30\xf8\x7c\xd7\x03\x37\x5f\x3b\xba\x97\x85\x3f\x0a\xe4\x00\x53\xec\xaf\x96\x5c\x8d\xf6\xc3\xfd\xd1\xbe\x0e\x22\x6e\x8e\xfc\x41\x19\xe6\x3f\xcf\xa1\xfc\xc1\x3d\xe0\xfb\x73\xb5\xb6\x81\xc2\x46\xeb\x0c\x3a\xe1\x43\xa3\xce\xf4\x4b\x71\x02\xff\x8c\x79\x39\xce\x33\x2f\x27\x27\x5b\x59\x97\x32\x72\x78\x17\xcc\x8c\x34\x8a\x34\x51\xb4\x5f\xa8\x40\xca\x14\x6a\x8c\x1c\x10\x19\x65\x5b\x05\x6e\x01\x50\x61\xdf\xd0\xc3\x36\x73\x40\xec\x85\xc3\xde\x08\x44\x5e\xa8\xcf\x45\x7a\x28\x3a\xbe\x1d\x0b\x50\x46\x5e\xe4\xce\xe1\xa2\xd4\x4c\x8b\xdc\x68\x11\x62\x6e\x5b\xa7\x96\x23\x1b\x21\xe2\xd3\x00\xfd\xfa\xe1\xcd\x4b\xc1\xe3\x13\x44\xb8\xe3\xfe\x46\x31\x91\x2d\xd6\xb2\xe6\x90\xab\x12\x46\x9f\xe7\x90\x3d\x4a\x9f\x3b\x03\xdb\x26\x39\x8c\xfe\x0b\x9c\xa3\xd5\xca\xb2\x9c\x5c\xe4\x94\x2a\x46\xee\x5a\xce\xc9\x49\x9c\x7b\x11\xf8\xf2\xa1\x1d\x7b\x69\x1b\x71\x7c\x7d\xc8\xed\xd8\x71\x40\xe1\xb3\xc3\x78\x94\xbc\xa5\x76\xe4\x38\x8e\xb3\x3e\x4a\x01\x1c\x49\xd8\x4e\xee\x99\xfc\x65\xec\x74\xb4\x49\xe4\x24\x5b\x03\x28\xf9\xf5\xc3\xdb\x97\x32\x85\xa2\xfe\x00\x1d\x8b\xb1\x11\x4b\x86\x4e\x20\xf4\xeb\x87\xb7\x96\x41\x40\x04\x8e\x13\x83\x21\xfd\x5d\x59\x8a\x36\x47\xf6\x26\x3b\xc8\x1e\x9f\x87\xdd\x08\x4e\x9a\xe6\xc1\xc8\xfa\x1d\x9a\xd4\xc6\xe7\xe1\x85\x5c\x6f\x5d\x91\x4d\x77\xd8\x2d\xaf\xc5\x73\x48\x9a\x67\x14\x49\xbb\x1d\x1a\x20\xd3\xe5\xd6\x05\xa4\xee\xb0\x1b\x90\xcb\x05\xad\x9f\x1e\x5a\xb5\x3e\x34\xe0\xa9\x25\xd6\x85\x9c\x68\xbd\x13\x6c\x78\x1e\xd7\xcf\x10\x2d\x1b\x1f\x18\xd0\xd4\x02\x6b\x0e\x28\x1a\xef\x06\x19\x69\x9a\xb8\x46\xf4\x38\x34\xb0\x91\xfa\x89\x6b\x30\xd9\x9d\xb8\x06\x13\x8e\x58\x84\x1a\x67\x01\xcd\xfa\x3d\x4a\x00\xee\x5a\xf4\x15\xbd\x6c\x9a\x1e\x4f\x77\x7a\x94\xcb\xdd\x76\x5e\xd4\x52\x6b\x1f\x19\xd1\x7c\x37\x00\xa3\x2e\xf4\x39\xbe\x2a\x4f\x86\x23\x79\x9c\x4d\xf8\xa5\x7d\x0e\x0d\x84\xd1\x0b\xbd\xd6\xba\x40\xd4\x1d\x6a\x81\x51\x08\x16\xf5\xed\x3c\x69\x8f\xc3\x83\xa1\x5a\x68\x7d\x10\x8a\xf6\x75\x20\x28\xe4\xfe\x66\x10\x54\x3d\x1e\x25\x04\x77\xaf\x56\xc5\xa6\x35\x59\xed\x21\x86\xe0\xe1\xe8\x75\xa3\x20\x3c\xdd\xbe\x0e\x04\x85\x78\xd8\x34\xa1\x55\x4d\x05\x16\x4d\x95\x77\x58\xfe\x9f\x1d\xaa\xf2\x8e\xec\xad\xbc\xbb\xe3\xc2\x1f\x85\xf2\x8e\xd5\x56\xde\xdd\xc1\x66\xf3\xe8\x95\x77\xb4\x42\x79\xf7\xe0\x76\x8f\xbc\x0a\xf9\x31\x29\xef\x0c\x9d\x1d\xbc\x5f\xbd\x92\x0e\xe8\x06\xd4\x13\x3f\x00\xf6\xe8\xb0\x37\x02\xd0\xa3\x1b\x8a\xbd\x2a\xd3\xc9\x2f\x70\x8e\xaa\x74\x6c\xb8\x54\xc7\x86\x37\x75\x6c\xd8\x71\x80\xcd\x3c\xe3\x1b\x4e\xca\xcd\xb8\x70\xb1\x08\x97\x36\x03\x43\x9c\x6a\xdd\xb8\x0d\x1d\xe7\x61\x55\x5e\x70\x3b\x42\xff\x8d\x96\x17\xc2\xde\xc2\xc8\xcb\x2e\x8f\x92\x1e\x6e\x5f\xea\x25\x5a\x36\xf5\xc8\x90\x5d\x1e\xe5\x52\xab\xc7\x54\xcb\xac\x39\xa0\x68\xbc\x33\x7c\x2c\x84\x51\xdd\xcc\xac\xad\xbb\xc4\xa1\xb8\x4b\xb4\x01\x09\x87\xc5\x54\x3d\x78\x40\x82\xc9\xbe\x99\xb1\xb8\xaa\xe2\x2a\xcb\x92\xa2\x90\x73\xcb\x1a\x90\xa2\x53\xff\xc6\x49\x63\x89\x6f\x3e\x73\xa3\x78\x1c\x71\x66\x77\xfb\xce\x7a\x1f\xf6\x41\xe0\x1f\x8f\x35\x49\xf5\xc2\x1a\xa4\x63\x09\xfd\x79\x6d\x45\xb1\x68\x7b\x60\xe4\x40\x2e\xaf\xe6\x78\xa1\x3f\xdf\x49\x45\x43\x34\xe1\x5d\xce\xf0\x7c\x7b\x5c\x5f\xd6\xac\x4d\xd5\xf5\x45\xd0\x8b\x36\x55\xd7\x61\xd1\x8b\x2f\x3d\x55\x57\x4a\x8e\xa8\x20\x47\x14\x40\x95\xbc\x2b\xcc\x5e\x40\xf1\x02\x96\x56\x06\xc7\x20\x6c\x56\x1b\x3c\xa4\xd3\x6e\xa9\xb2\xbe\x9c\x4c\xc8\xd6\x87\x46\x28\xe8\xf4\x75\x7d\x4a\x41\xa7\xaf\x77\x93\x0a\x3a\xed\xf7\x9a\x00\xad\xdf\x3b\x40\xa0\x89\x25\xd6\x87\x5a\xbf\x57\x0b\x6c\xf5\x93\x9d\xa9\xd6\x07\x08\xb6\xfa\x09\xcf\x64\xeb\x3a\x60\xab\x5f\xc3\x52\x36\x3e\x3c\xa0\xd5\xaf\x60\x29\x1a\xd7\x00\xd9\x35\x62\x92\x79\x6f\xe6\xa5\x93\xf5\x3b\x38\x10\xa6\x0b\xae\x0d\x47\xdd\x63\x37\x30\x1b\xc4\xe6\x85\x8f\xd4\xec\xbf\x05\x72\xf5\x87\xab\xa1\x8a\x0b\x9b\xc4\xe6\x85\x87\x17\x9b\x17\x36\x88\xcd\x0b\x6b\xc4\xe6\xcd\xe1\x1e\x81\xae\xba\xd3\xa3\x04\xdd\xce\xe5\x36\x5f\xeb\x61\x2e\xf4\xa6\x36\xc9\x12\x6d\x1f\xe5\x12\xab\xc7\x94\xcb\xab\x39\xde\x1c\xde\xec\x06\x57\xb9\xad\xa2\x1c\x5c\x8f\xd5\x48\xb1\x05\x5c\xb8\x7e\x06\xab\x39\xde\x9d\xbd\x6a\xbe\x67\x16\xb4\xac\xdf\x63\xcc\x85\xd6\x2c\x0d\xda\x9c\xd6\xcf\xa9\x20\xda\x1e\xda\x91\xa1\xf5\x73\x2a\xcc\xe9\xee\x9c\x0a\xf3\xb8\x9c\x8d\x29\x87\x57\x7c\x78\x7c\xcc\xbc\xc9\x80\xf3\x3a\x38\x7c\x8f\x98\xf9\x43\x8c\x97\x27\x4d\x82\xe5\x49\x9d\x48\x79\x42\x1b\x17\xcb\x91\x5d\x0e\x0d\x70\x72\x99\x75\x01\x47\xe9\x6e\x49\x97\x50\xde\x6d\x92\x44\x5e\xb5\x3f\x40\x2f\x36\x42\xf9\xeb\xdf\x1b\xc0\x8e\xbf\xfe\xbd\x0e\xf0\x1a\x41\xee\x00\x61\xd6\x04\x62\x3b\xe1\xa5\xb4\xd0\x5d\xd8\x14\xc7\x65\xfd\x0e\x0c\x80\x6a\xe2\x2f\xea\x0f\x9a\x74\xa8\x0b\xca\x92\x9c\x63\xad\x47\xc5\x17\x60\x21\x6b\x3d\x2a\x0e\xcb\x42\xf6\x98\x3c\x2a\x6e\xd7\x03\x62\xd6\x95\xf1\x3c\x76\x3e\x1c\x0d\xf4\x29\xd2\x18\xc3\x66\x7b\x79\x5f\x2a\x28\xe9\xfc\x7d\x0f\xe7\x47\x41\x49\x37\xa0\xbe\x3c\x61\x65\xa4\x82\x12\x4d\x22\x4a\x3b\x3c\x4a\x1a\xb1\x73\xbd\xd7\x98\x04\xf4\xba\xf6\x6a\x75\xf3\x83\x5c\x6b\xdd\x45\x1e\xe4\xea\x16\xa2\x67\x79\x58\xc8\x36\x0e\x27\xe9\xf6\x28\x97\xbc\x85\xc1\x49\x97\x5b\x97\xc1\xd1\x1d\x76\x03\xb2\x34\x57\x7a\x39\x6b\x7d\x78\x99\xd2\x1b\xa4\x49\xaf\x91\x23\x7d\x01\xa7\xa8\xcb\x31\x0f\x4b\x2d\x21\xd9\xdb\xb2\x0e\x0f\xa6\x95\x4b\x01\x51\x5f\xc1\xb6\x40\xcc\x47\x84\x8b\xc9\xf9\x34\x8c\xe7\x24\x6a\xa6\x6c\xdc\xec\xff\x18\x95\x8e\xb2\x00\x03\x40\xc3\xb3\x32\xf5\xe3\x16\xd7\xe9\x05\x62\x13\xca\x4a\x1d\x0c\x7d\x4a\x94\x4f\xbf\xbf\xdc\x68\xfe\x28\x6f\xc6\x8e\x73\x80\x17\x48\x06\xa8\x96\xd3\x8a\x2d\x78\xd4\xec\x79\xa0\x0b\xdf\x63\xc5\x8f\x73\xa9\xd5\x63\xaa\x65\xd6\x1c\x50\x34\xde\x0d\xb8\x30\x66\x30\xac\xc8\x11\x82\xc9\x44\x60\x0a\xca\x4e\x43\x3c\x2e\xe9\xf2\xa8\x50\x20\x0d\xb1\xbf\x3c\x0d\x20\x87\x02\x95\x21\x56\x57\xb6\x57\x42\x01\xf7\x60\x22\x99\x69\x81\xe3\x87\xfe\xc9\x89\x9a\xd4\xb1\x97\xbd\x1c\xf6\x47\xe7\xe6\x8f\xc1\xed\x1a\x24\x38\x6d\x8a\x34\x9e\xb2\x5e\x19\xb3\x48\x83\x9e\xf2\xaa\x02\xe2\x9c\x9c\x88\x91\x13\xf9\xfa\x7c\xeb\x18\x83\x21\x77\xa7\x21\x1d\xc3\x70\xb5\xb2\x5e\x84\xa1\x35\xda\xcb\xf5\x2f\x1b\xd2\xe3\x4d\xf0\x33\x6f\x60\xec\xd1\x1b\x51\x52\x84\x3c\x6b\x3b\xa7\x01\x0a\x93\xa6\xad\x73\xf2\x97\xa1\x7a\x69\x9d\x93\x0f\x4b\xf5\xf2\xe5\x38\x27\x1b\x1a\x31\xa9\xd6\x71\x19\x0a\x62\x1f\x99\x8d\x00\xd1\x3e\xcc\x1b\x75\x30\x32\xbc\x4b\x80\xf5\xe6\x95\xe5\x78\x9e\xc7\xdd\x9f\x5f\xfc\xf2\xe2\x3f\x5e\xff\xfc\xfa\x97\x8f\x9f\xde\xbc\x1a\x30\xcf\x9a\x43\x02\xa7\x48\xea\x49\x8e\xc6\x0c\xc1\x4b\x59\x15\xc3\xb2\x8e\x3d\x2f\x37\x82\xd8\xe3\x10\x72\x64\x39\xa2\x17\x0e\x10\xe1\x98\x63\x14\x25\xbd\xd2\x9a\x19\x9e\x25\xd1\x9f\x78\x95\x5c\x41\x34\x64\x23\x85\x07\x88\x03\xd0\xda\x01\xb7\xd9\x57\x07\xc3\x11\xc8\x46\x13\xbf\x92\xee\x83\xe1\x68\xdd\xcc\x91\x5a\xa3\x68\x75\x81\xb7\x90\xc9\x3d\x36\x50\x8c\xf9\x6e\x52\x46\x5d\xca\x68\xae\xa4\x74\x26\xf9\xe4\x26\x00\x37\xb6\x2a\xd3\xd5\xe9\xb0\x26\x8b\xd1\x10\xa9\xfa\x24\x96\x8e\x50\xee\x6a\x20\x2d\x2d\xb3\x9d\x5a\x71\x77\xa3\x8d\xea\x4a\x68\xb0\xbd\x5f\xbe\x81\xea\xd4\xd3\xff\x75\x4b\xfe\xa7\xff\xeb\x8b\xb1\x72\x8b\x13\xe7\xab\x30\xb6\x79\xb0\xd2\xc3\x61\xb6\xb0\xd6\xeb\xfb\xa2\xcc\xa5\x6a\xb2\x52\xb7\x82\xc5\x63\xd5\x91\x6d\x61\x8e\xc5\xf2\xea\xf2\xc6\xf4\x7a\x37\x6b\xbc\x5f\x02\xf9\x43\x4d\x1e\xbf\x68\x9a\x39\x7e\x51\x37\x6d\xfc\xef\x31\x8a\x9b\x4a\x67\xaa\xcf\x81\x81\x50\x2f\xb4\xe6\x88\xb2\xf5\x4e\xe0\x31\x48\x02\x5a\x3f\x38\x52\x37\x3f\x30\xc0\x25\x8b\xac\x39\xa4\x6a\x5e\x07\x74\xd3\xa6\xe7\x4e\xf5\x39\x3c\xf0\x4d\xeb\x9f\x3b\xd9\x7a\x37\xf0\x24\x0b\xd5\x14\x7a\xaa\xd3\xa3\x04\xdf\xae\xe5\x4e\x18\x8a\x66\x2a\xef\xdb\xfd\xb2\x44\x25\x3c\x2d\xbf\xd7\xc4\x2b\x8a\x9b\x42\x32\xe3\xc9\x51\x51\x56\x4e\x58\xad\x42\x4a\x7a\xe4\x00\x21\x56\x95\xe4\x60\x91\xe2\xd5\x91\x11\x7b\x41\x2f\xe3\x85\xfe\xfc\x20\x4d\xb2\x42\x1c\xc7\xd5\x30\xb3\x9d\x75\x3e\xaf\x3d\xdf\x05\x6a\xe9\x81\xd1\xd8\x95\x3e\xeb\x77\x90\xe7\x8b\x04\x88\x75\x53\xe6\xb6\xf5\x3b\xf9\xb2\x94\x1f\xad\xdf\xc9\x61\x29\x3f\x0e\xa6\xb4\xe8\xe9\xed\xad\x3d\x7c\xd1\xfd\xdf\xb0\xfb\x2f\xb7\xd7\xfd\xcb\xa7\xee\xe8\x89\xb3\x5e\x9f\x4e\x41\xcd\xa0\xed\xb4\x96\x3f\x55\xb5\xfc\x71\xae\x96\x7f\xaa\xe0\xc6\x86\xb2\x9b\x9e\x53\x97\xa1\x45\x08\x7d\x64\xb3\x22\xaa\x95\x17\x4d\xe3\x9a\x8d\x54\xfb\x76\x26\xec\x62\x79\x3c\x2c\xcb\xd1\x97\x96\x24\x98\xcc\x92\x25\x42\x07\x96\xd5\x48\x65\xc1\xd0\x02\x35\x76\x7f\xd4\x9d\x1e\x25\xb9\xd8\xc2\xcd\xe9\xa5\xd6\x65\xe7\x64\xf3\x1a\x04\xe8\x0a\xb1\x8a\x20\xd3\x6d\x10\x54\xbd\x1e\x25\x08\x77\x2c\x18\x4f\x67\x75\x92\xa4\x18\xed\x5a\x43\xc4\x17\x41\x8b\x5b\x43\xc4\x61\xd1\xe2\x2f\xc7\x10\xf1\x18\xb2\xa4\x30\x4a\x79\x37\x66\xa5\x8e\x74\x15\x59\xcd\xd3\x2e\x8f\x12\xcd\x6f\xa1\x94\x94\xf2\x5f\x59\x7d\x1f\x3a\xdd\x7e\x37\xe9\x68\x54\x3d\xfb\x20\x8b\x67\x37\xab\x9d\x5d\xaf\x74\xb6\x3c\x5d\x5b\xdc\x8f\xcc\xf7\x45\xa7\xd5\x5c\xdf\x47\x09\xcb\x3a\x6b\x9f\x0b\x9a\xd8\xca\xf6\x5f\x18\x3f\xd1\xca\xf6\x87\xc5\x4f\x1c\x8c\x6c\xdf\x40\x80\x57\x45\x4a\xb5\x41\x7c\x68\xbd\x67\x28\x92\x31\x1e\xd6\xeb\x1b\xe8\x8b\x7f\xdf\x33\x34\xc1\x37\x16\xb0\x2e\xe2\x89\xfa\xe3\x03\x9a\xa2\x1b\x6b\xe4\x4e\x30\x09\x4a\xfd\x25\x52\x81\x9f\x0c\xd1\x68\xed\x38\x3a\x87\x68\x32\x76\x62\x85\xce\x74\xbe\xee\x1b\x72\x85\x18\x3f\xb7\x7e\x79\xf7\xb1\x63\x0d\x2c\x4b\x5a\x0d\x65\x63\x47\x19\xc5\xd5\x6c\xea\xf4\xfc\x77\x24\x9a\x86\xcb\x8e\xc4\x99\x98\x4c\x3b\xd6\xbf\x3b\x59\x7b\x39\x10\xf8\x77\xeb\xdf\xf5\xc0\x7a\x79\xb5\x46\x5e\xc8\xb6\x28\xe8\x8c\x97\xf9\x41\xd5\x20\xc6\xa8\x1a\x56\xb5\x46\x8d\x64\xdb\x92\x51\xd5\x20\xc6\xa8\x0a\xf0\xb5\x06\x4d\x17\xcf\x67\xa8\xc3\x44\xbf\xfc\xd8\x72\x28\x39\xf4\x3a\xd5\x9e\xe4\x98\x41\x56\x87\x2c\xa9\xba\x86\x8d\x18\x42\xa3\xdb\xa3\xa4\xc6\x5b\x39\x1b\x8e\xde\xeb\x15\xd7\xe7\x6f\x92\x3e\x3b\x29\x7d\x84\x20\xf3\x67\x62\xc4\x96\xd0\xb7\x84\xbe\x25\xf4\x2d\xa1\x6f\x48\xe8\x13\x6b\xaf\x42\x24\x15\xd6\x5e\xf5\x72\x4b\x99\x8d\x54\xaf\xcf\x94\x5e\x9f\xe6\xf4\xfa\xb2\x20\x85\x1a\xc3\xcd\x10\x96\xcd\x1c\x17\x06\x81\x5d\x2c\x44\xbe\x83\x88\x44\x28\x44\x3e\x97\xfa\xe1\x4b\xb4\xec\xca\xe5\x46\x55\x4a\xd5\xb4\x53\x18\x4f\xf1\x64\x87\x73\x77\x82\x18\x6d\xe2\x59\xc9\xf3\x22\x6a\x3b\x39\xb1\x22\xf9\x47\xf1\x45\x7a\x40\xce\x4b\x78\x9b\xe4\x6a\xaf\x07\x25\x2f\xd1\xc9\xc9\x96\xcf\xe5\xae\xaa\xe7\x79\xe9\xf3\xe3\xe4\xef\x0c\x29\x9c\x27\x73\x1b\xa4\x1f\x74\xee\x5c\x5c\x39\x83\xf7\xdf\xd1\xf2\x1f\x12\xda\xf9\xe3\x54\xb4\xfc\x03\xb6\x19\xbd\xd0\x2b\x8d\x5e\xe8\x99\xd1\x0b\xbd\xd1\x60\x28\x0e\xce\xfe\x91\x0f\xd8\x63\x85\xca\xcc\x0c\x60\x35\x29\x08\xc2\x84\x5d\x25\x02\xf1\xe4\xf2\xd3\x0f\xa0\x27\xb5\x5c\xfa\x90\x38\xf6\x90\x8d\x1c\x10\x7a\xac\xe8\x24\x9b\xce\xe8\xdc\x86\x4a\x9d\x16\x4a\xe5\x99\x33\xb0\x37\x87\x18\xf6\x46\x6a\x14\x99\xa0\x4a\x4c\x22\xf6\x6e\x2f\xd1\x72\x00\x81\x82\x74\xb8\xce\xa6\x44\x35\x98\x51\x50\x9c\x5b\xf6\x46\x60\xd9\x61\x6f\x74\x72\x62\x23\x2f\x76\x4c\xb7\x5f\x12\x8b\x5b\x5b\x68\x8b\x75\xc3\x84\x1e\xc5\x82\x55\x53\x7f\xdf\x62\x8e\xe6\xd1\x00\x83\xa4\xf9\x20\xd5\xfd\xa1\x73\x2c\x76\x02\xad\xd7\x47\xe5\x5b\xcf\xee\x29\x36\x5c\xe3\x96\x53\x81\x7f\x18\x81\x61\x37\xa2\x31\xf3\x9b\x70\x31\xa6\x1b\x6a\x16\xa8\xf2\x5a\x8f\x77\x21\x87\x8b\xdc\x09\x66\x11\xd7\xe4\xd0\x39\x22\xab\x95\xbd\xd9\xe7\x67\xc4\xa1\x5b\x9c\x88\x93\x90\xde\x14\x36\xd2\xc9\x70\x82\x6f\xce\x2d\x6b\x90\xfc\x2d\x28\x21\x39\x39\x19\x5a\x97\xf1\x18\x31\x82\xb8\xc0\x45\x16\x47\x8c\x41\x15\xe5\x67\x11\x3a\x87\x41\x8a\x94\x2c\x60\xc1\xeb\xc8\x1a\xb9\x98\xf8\x61\x1c\xa0\x28\xd3\x9f\x67\xbc\x39\xcb\x78\xee\xbd\x2e\xaf\x86\x6d\x1e\x14\x0f\x17\x63\x93\x6c\xe5\x0c\xc1\x90\xcf\xba\x59\xf8\x66\xcb\x92\xb6\x2c\x69\xcb\x92\xb6\x2c\xe9\xfd\xeb\x9e\xc4\x14\xdd\x97\x33\xe4\x5f\x46\x2f\x19\xe6\xd8\x87\xe1\x93\xe4\xc1\x7b\x18\x45\x98\x4c\xd3\xdf\xff\x84\x8c\x60\x32\x4d\x68\xdf\x42\xbd\x1e\xfc\x0c\xf9\x4c\x99\x12\xec\x42\xcf\x53\xf6\xdf\xfb\xbd\x9e\x03\xae\x55\xc7\xb2\x96\x7a\xcc\xa4\xa5\xaf\xe7\x50\xd6\x34\x99\x9f\x6e\xbb\x6e\xa4\x31\x49\x50\x2b\x26\x1c\x11\x69\xa9\x58\x20\x36\xc7\x51\x84\x29\x69\xd3\x45\xb5\xe8\xb5\x45\xaf\x2d\x7a\x7d\x28\xf4\xfa\x26\xc1\x39\xee\x4f\x30\x7a\x9f\xa1\x1d\x21\xdc\x1b\x2f\x5f\x84\x21\xbd\x46\xc1\x46\x78\x5c\x52\xec\xcb\x82\xa2\x81\x0a\x53\x3b\xa6\x27\x27\xc7\xe9\x8b\x00\x91\xe5\x46\x94\x99\x6a\xdd\x10\x4b\xce\xe2\xc9\xa4\x3c\x6b\xca\x16\x6f\xb2\xa4\xd7\x81\x69\x94\xd3\xc5\xd6\x1c\x53\xb7\xdf\x59\xd2\x31\xc2\xd3\xfa\xa9\xb4\x65\xe3\x43\x03\x9c\x5c\x60\x5d\xa8\xe1\xe9\xee\x6c\xda\x51\x83\xe4\xe3\xd1\xe1\x25\x1f\x8f\x1a\x24\x1f\x8f\x6a\x24\x1f\x17\xbc\x55\x1c\x42\xd6\x28\xbf\x87\xd9\xe9\x31\x65\xf8\x90\xc4\xb7\x29\xc6\x91\x7d\x1e\xe5\x29\xd8\xb5\x58\xa5\x3e\x6d\x19\xce\x96\xe1\x6c\x19\xce\x2f\x98\xe1\x34\xbd\x60\x37\x1d\x3e\xf4\xa9\x2c\x94\x7d\x75\xd2\xf0\x8c\xd3\xce\xe9\x14\x58\x5d\xcb\x71\x39\x7d\x4b\xaf\x11\x7b\x09\x23\x64\xef\xa7\xc2\x54\x18\xe7\xe1\x72\x93\x46\x94\xed\x11\xf5\x97\xf4\x3a\x44\x1c\xbe\x08\x71\x5b\xb3\xbb\xc5\xe0\x2d\x06\xff\x2a\x31\xb8\x69\x9b\x4f\x11\x38\x13\x08\x9c\xe9\x28\x3c\x00\xb3\x17\xf8\xdc\x02\xd6\x00\x27\xc3\x52\x57\x62\x0f\x1b\xee\x87\xcb\x45\xdf\x07\xc4\xe4\xbf\xb3\xfa\x05\x6a\x64\xe3\x47\x89\xbd\xb7\xc8\x61\x72\x81\x75\x05\xb1\xdf\x59\x0d\x5a\xc0\x21\xe3\x51\xf7\x1a\xf3\xd6\x3f\xbc\xa5\x08\x2d\x45\xf8\xea\x29\x82\xe1\xad\x65\x17\x02\xc4\x1c\x57\x61\x8b\x7f\x62\x3e\xdb\xb3\xdc\x40\x36\xc0\x03\x52\x01\x0e\x93\x90\x97\xb6\x90\x4a\x8b\xd4\x5a\xa4\xf6\x65\x23\xb5\x87\xf5\x85\x15\xb8\xa4\xca\x15\x96\xcb\x6c\x90\x77\xf2\x84\x15\x43\xb8\x1a\x55\xd9\x0c\x34\x75\x80\x55\x15\xb8\xfd\x19\x64\x15\x35\xb8\x74\x8b\x09\x89\xaa\x3a\x1d\x1a\x07\x2c\x67\xff\x72\x06\x59\x83\x22\x5c\x66\xa7\x1a\x1c\x71\x06\x1f\x9f\x06\x68\x3f\xc8\x26\x3d\x0f\x16\xbc\x2f\x69\x80\xf6\x02\xb1\xea\x58\x1b\xcc\x02\x4e\x0b\x8a\x49\x55\x15\xb9\x2d\x70\xce\x75\x3d\x4c\x40\xd3\x00\xbd\x17\x2b\x68\x0e\xe9\xac\x67\x7d\x50\x13\xbf\x39\x8c\x65\x9f\x03\x05\xae\x5a\x6f\x43\xb8\x8a\x4e\x75\x41\x8a\x48\xb0\x29\x3b\xef\x86\x6a\xd6\xed\x20\x01\xfb\x9a\x04\x92\x85\x6f\x08\xda\xa4\x5b\x6d\xe0\xfe\x1e\xc3\xb0\x34\x3a\x70\x0b\x64\x55\x9f\xc3\x04\xab\x5e\x6f\x33\xa0\xca\x4e\x75\x41\x2a\x18\xd5\x8c\x3e\x35\x03\x6d\xa1\xef\x41\x82\xf8\x6f\x8c\xce\x13\x1a\xd5\x10\xd0\x66\xd7\x66\xe0\x4e\xc9\xd4\x3e\xf0\xce\x3a\x1f\x2e\xc0\x13\x52\xb5\x0f\xc4\x93\xbe\x75\x41\x3e\xe3\xf3\xb0\x1b\xc1\x49\x1b\x71\xd0\x0a\xfe\xad\xe0\xff\x45\x0b\xfe\x5b\x3d\x14\xf2\x15\x54\x2d\x2b\xab\xa0\xaa\x84\x79\x7d\x5a\x04\xba\xb8\x80\x13\xb4\xb7\x3a\x53\x8c\xf2\x93\x1e\xe4\x21\x55\x9a\x12\xb9\x25\x91\x62\xcd\x08\x49\xda\xeb\x20\x29\xc8\x9b\x74\xcd\x8d\x88\x47\xd2\xad\x2e\xdd\xc0\x24\x40\x37\xdd\x7c\xd5\x91\x3a\xa0\xd5\xbd\x0e\x14\xb4\x01\xba\x79\x37\x69\x0c\x59\xd9\xab\x2e\x60\x43\x18\xf1\x3d\xa1\x9b\xef\x7a\x90\x20\x7e\x0b\x23\xbe\x1f\x98\x8d\x9e\x75\x41\x4d\x28\xdf\x4b\x68\x32\xfa\x1d\x24\x90\x7f\xa1\x7c\x2f\xd9\x29\xed\x57\x17\xc0\x0b\x18\x08\xd9\xbd\x19\x74\x93\x4e\x07\x09\xda\xf7\x30\x78\xdd\x20\x1f\x9f\xd9\xa9\x09\x50\xa5\x59\xb0\x39\x58\x55\xb7\x43\x05\xec\x85\x5a\x74\x53\xd0\xca\x6e\x75\x81\x5b\x9d\x9e\xba\x1a\xb2\x87\x99\x9d\x5a\x4d\xfe\x43\xb3\x1c\xd5\x66\xa7\x06\x20\x0d\xa1\x8f\xba\x30\x2c\x4d\x65\xba\x15\xae\x69\xc7\x43\x05\xae\x58\xc0\x8b\xb0\x7e\x66\xd3\x62\xc7\x86\x40\xde\x0b\xc0\x07\x0d\xdc\xfd\x20\x5b\x17\xac\x95\xa1\x2a\xd5\x40\x7d\xc4\x91\x2a\xbb\x40\x7a\xa1\x56\xdb\x08\xa0\xb2\x4f\x6d\x70\x16\x1d\xa9\x6b\x80\x53\x76\x39\x4c\x70\xaa\xd5\x36\x03\xa7\xe8\xb3\x3b\xe0\x50\xc3\xa6\xdc\x17\xb1\x06\x50\x8d\x8e\x87\x09\xda\xd4\x2d\xaa\x29\x7c\xd3\x8e\xb5\xcf\x6c\x3c\xd6\x2a\xb6\x66\x20\x4e\xbb\x1d\x26\x80\xb3\x55\x37\x83\x6f\xd2\xaf\x2e\x78\x39\xed\xfa\x70\x8e\xc2\xae\x4c\xc7\xd4\x08\xc4\xf9\xae\x07\x09\xe6\x8f\xf4\xa5\x58\xc1\x4b\xb9\xf6\x46\x80\x36\x7a\x36\x00\xf5\x25\x1a\xc3\xf1\x7e\xa0\x36\xba\x1e\x28\xa8\xff\x2e\x56\xb0\x17\xa8\xd3\x9e\x0d\x40\x1d\xd2\x6b\xc4\xf6\x03\xb5\xd1\xf5\x40\x41\x9d\x86\xb0\x35\x06\x75\xda\xb3\x01\xa8\x17\x30\xf2\xe1\x9e\x18\xc4\xec\x7b\xa0\xc0\x7e\x2f\x97\xb0\x17\xb4\xb3\xae\x0d\xc0\x1d\x21\xc2\x11\xf1\xd1\x7e\x00\xcf\xf7\x3e\x50\x90\x5f\xe8\x45\xec\x05\x74\xb3\x73\x13\xb0\x13\x78\xb9\x2f\xcc\xb3\xae\x87\x0a\x70\xb1\x82\xfd\xa0\x9d\xf4\x6c\x00\x6a\x8e\x79\xb8\x27\xa8\x8d\xae\x07\x0a\xea\x8f\x62\x05\x7b\x81\x3a\xed\xd9\x00\xd4\xf1\x62\xb1\x2f\x99\x34\xba\x1e\x28\xa8\x7f\x15\x2b\xd8\x0b\xd4\x69\xcf\xda\xa0\x66\x78\xde\x5c\x17\x9f\xf6\x3a\x4c\x00\x33\x3c\x6f\xae\x8d\xd7\xbd\x1a\x01\x76\x0f\x7d\xbc\xd1\xef\x60\x81\xbb\x8f\x46\x3e\xed\xd7\x04\xc0\xcd\x41\x7b\xb8\x40\xdd\x03\x9e\xbb\x41\x19\x8f\xeb\xc7\xf9\xc6\xe3\x83\x03\x9e\x58\x5e\x5d\xa8\xc5\xe3\x3a\xe0\x8a\x38\x6b\x3d\xe2\x5a\x8f\xb8\xd6\x23\xee\x4b\xf6\x88\x7b\x90\x50\xb8\xed\x49\x22\x9f\x36\x4c\x26\xd1\x1b\x60\x10\x7a\x64\x78\x36\x32\x32\x4a\x48\xf4\x64\xc3\x8d\x8a\x92\xbb\xc2\xdf\xae\xa6\x5d\x3f\x66\x57\xad\xaf\x6f\x8b\xd9\x5a\xcc\xd6\x62\xb6\x1a\x98\xcd\x00\xb0\xac\x50\xe2\xa9\xbd\xcd\xce\x96\x3c\x4a\xea\x60\xa5\x45\x45\x92\x62\x19\x59\x59\x86\x8d\xca\x24\x67\xe7\xd6\x4b\x6b\x60\xfd\x0f\x0b\x58\x1d\x2b\xad\xd9\x80\xb2\x3f\xa2\x19\x9e\xc8\x5b\x9a\x2f\x4b\x92\xd5\x7e\xd1\x2b\x54\x45\x6c\xc4\xa1\xfe\x8d\x62\x62\x8b\xd1\xd6\x4e\xf2\x03\x58\x8e\xb3\xde\x5d\x60\x1f\x10\xb5\x3a\x0a\xb0\xe1\x10\x0d\x3d\xe2\x46\xcc\x5f\xad\x6e\x6f\x06\x3d\xb0\x1c\xf4\xd6\x02\x11\xbb\x62\xd5\xab\x95\xe5\xc7\x63\xec\x5b\x20\xf6\x86\x18\xdc\xde\x0c\x6c\xe8\xde\x3c\xc1\xee\x8d\x73\x7a\x06\x96\x03\xe8\x2e\xd7\xc9\x66\xe8\x96\x9e\xe7\x85\x27\x27\xb1\x42\x35\xb7\x37\x83\x78\xd8\x1f\xb9\x37\x60\x39\xc0\xee\x72\xed\x80\x0c\x54\x36\xf5\x20\xb0\xfe\x8b\x74\x3a\x9d\xce\xcf\x9d\xf4\x31\x75\x6f\x72\xa0\xa2\xee\x52\xb5\xb2\x1c\x27\x7d\xc8\x5c\xb8\x58\x84\x4b\x9d\x87\x02\xc4\x4e\xb3\x8a\xc3\x1c\x5e\x36\xcd\xcb\x29\xbb\x3c\x4a\x69\x61\xd7\x52\xeb\xe7\x9f\x15\x6d\x1f\xe5\x12\xab\xc7\x94\xcb\xab\x39\x1e\x87\xbb\xf3\xcf\x72\x48\x4a\x5d\x0c\xaa\xe0\x75\x70\x6e\x05\x6a\x81\xf5\x21\xb6\xdb\x7d\x80\xc3\xe8\xb2\xfc\x32\x11\x3f\x66\x0c\x11\x7f\x99\x6f\xfb\x28\x21\xb6\x63\x8d\x98\x87\xa8\x22\x27\xb1\x1f\xe2\x44\x45\xb3\x71\x40\x92\x6e\x8f\x72\xc9\x5b\x0e\x49\xba\xdc\xba\x07\x45\x77\xd8\x0d\x48\x3a\x9d\x86\xdb\x4a\x6e\x6f\x43\xc1\xb9\xbe\x8f\x12\xa4\x75\x16\xbf\xd7\xaa\x1f\xe7\x72\xb7\x9c\x20\xbd\xd4\xba\xe7\x47\x36\xaf\x01\xc0\x4b\x44\x4e\x71\xd4\x85\x84\x92\xe5\x9c\xc6\xdb\xb2\x38\xed\xc1\x19\xe2\xe8\x45\x32\x70\x59\x29\x2c\x53\x64\x4c\x26\x6f\xf5\xf4\x7f\xdd\x92\xff\xe9\xff\xce\x04\x53\x54\x2c\x28\xf6\xc2\xf7\x51\x14\x51\xf6\xe6\x95\xa5\x4a\xbf\xdd\xbd\xc8\x56\x0a\x9e\x10\x4d\xa1\xbf\x2d\x15\xf7\x5e\xb0\x79\x2b\x47\xf5\x48\x39\x0b\xcd\xbd\xa2\x1e\x80\x9b\x6b\x06\xd6\x87\x38\x44\x91\x25\xc5\x24\x21\x0d\x1c\x7b\x3c\x2d\x6a\x26\x84\x4f\x97\x33\x3c\xb7\x9d\xa3\x8d\x92\x6d\xc0\x52\x1f\xb6\x12\x6e\xdb\x28\x03\x7d\x72\x42\xd6\x47\xa6\xb0\x91\x68\x20\x50\x96\x8b\xd8\x68\xae\x99\xf2\x73\x52\x5d\x62\x5a\x6c\xed\xda\x71\x06\xb2\xae\x5a\xb5\xd2\x83\x34\xd0\x46\x70\x06\x49\x84\xc5\x77\xba\x9c\x36\xa8\x69\x9c\xef\x77\x68\x08\x20\x9d\xfc\x47\x5a\x1f\x0d\x18\x9d\x76\x23\x83\x0a\x73\xc9\x36\x7a\x7c\x80\xf6\x12\xde\xc4\x52\xc2\xeb\xd8\x48\x38\x8b\x89\x5f\x9f\xc9\x95\xad\x0f\x0e\x68\x72\x89\xb5\xa1\x16\x13\xbf\x1e\xd8\x20\x6f\xcc\x03\x26\xdd\x0e\x11\x84\x72\xb9\x4d\xa0\x08\x79\x0d\x2a\x7e\x8d\x50\x11\x15\xb6\xca\xd9\x56\x39\xdb\x2a\x67\x5b\xe5\x6c\x0d\xb3\x53\x92\x81\x91\x63\xff\x12\xb1\x8a\x14\x8c\xea\xe5\xdd\x72\x30\xaa\x31\x5c\x89\xae\x3e\xd2\x8a\x24\x8c\x5b\x82\x57\x04\xb6\x61\x91\x4f\x59\x53\x92\x61\x74\x3c\x30\xa2\x61\x2e\xb9\xe6\xb0\x59\x97\x9d\x84\x23\x26\xcd\x95\x06\xaa\xcf\xa3\x04\xe3\xce\xc5\xfe\x5e\x28\x3e\xd2\x12\xc9\x96\x48\xb6\x44\xf2\x4b\x23\x92\xe9\x97\xea\xe5\x5e\xd7\x69\x8a\x70\xf4\x7a\xbe\xe0\x4b\x9b\x39\xe7\xc3\x91\x26\x82\x2f\x6c\xea\xb8\x02\x6f\xfc\xb8\xdc\x33\x6d\x91\xea\xfc\x70\xe9\x8a\xa4\x27\x73\x95\x0f\xf4\x36\x8a\x98\xf6\x7b\x94\x98\x7c\x0b\x41\xcc\x16\x5c\x97\x1e\x26\x3d\x76\x53\x08\x86\xef\x57\xc5\x57\xaa\xd5\x2b\xe5\xbd\x10\xf1\x69\x50\xc9\x7c\xe9\xb7\x15\xdc\x97\xc9\x62\xe9\x96\x6e\xcc\xf0\x7f\x52\x2c\x5e\xe7\x39\x2c\xbe\x0b\x02\x61\x77\x42\x59\x03\x9d\x5a\xd2\xe3\xd0\x8e\x11\x0b\xff\x26\xd6\x59\xf7\x0c\xc9\xe6\x3b\x0f\x90\x72\x29\x68\xc8\x50\xe9\x4e\x07\x06\xc0\x64\xa9\x35\x87\x54\xcd\x77\x02\xf0\xba\x21\x1a\xbb\x3e\x34\xb0\x5d\xd7\x1e\xed\x7a\x37\xb0\x70\x18\x76\x25\x49\xa7\xa5\x25\xf5\x18\x12\x92\xc0\x26\xcc\xcc\x6e\x8f\x12\x7c\xbb\x96\xcd\x67\x34\x2e\x8d\x99\xd8\x72\xcb\x92\x5e\x8f\x72\xc1\x5b\xce\x4b\xb2\xd8\xba\xa7\x46\xb5\xdf\x09\xc4\x9b\x72\x24\xcf\x59\x5c\xa2\xb1\xbe\x39\x3c\xfc\x7e\xd3\x00\xb9\xdf\x6c\xc1\xec\x98\x60\x8e\x61\x88\xff\x25\xe0\x00\x17\x8b\xee\x15\x62\x51\x95\xd0\x1c\xe2\xae\xd1\xc4\xec\xdb\x9d\x40\x21\x42\x2c\x2d\x60\x8c\xed\x53\x32\xc1\xd3\x53\x44\xae\x30\xa3\x44\x88\x08\x45\x28\x27\xee\x65\x0c\xd0\xa3\x3b\xb3\x1f\x80\x24\x0f\xdc\x17\xef\xdf\x4b\xf9\x26\xf7\x44\xca\x37\xb2\xce\xbc\xf9\x50\x2f\x46\xc9\x57\xd8\xbb\x15\x8d\x06\xd6\x8b\xc5\xa2\xf3\x8f\x04\x12\xd9\x3a\x07\x76\x0f\xa4\xfb\xe3\x28\x05\x8f\xc1\x7c\xe0\x1a\x30\xf6\x29\xe1\x10\x13\xc4\xba\x01\x1a\xc7\xd3\x2e\x0c\xe0\x82\xa3\x72\x8e\x04\x45\x34\xbc\x42\xec\x34\xf9\x23\x3a\xf5\x43\x18\x45\xd8\xaf\x1c\xe5\xc1\x8a\x59\x6b\xb8\x54\xce\xde\x80\xd1\x86\x63\x64\xea\xe2\x38\xec\x8f\x56\xab\xec\x57\x6f\x74\x84\x5c\x86\xa6\x38\xe2\x88\xd9\x55\x63\x0f\xe6\x10\x13\xcb\x00\x3b\x40\x9a\x7f\xdc\xd5\xc5\x12\x73\x8e\x16\x32\x15\x92\x05\x17\x8b\x10\xfb\x50\x4c\x4c\xbd\x76\xd6\xeb\xdd\x86\xf2\xdc\xd6\x6d\x78\x29\xed\x72\x62\xda\xd1\xfb\x51\xa2\x9c\xda\x70\x08\x20\x87\xea\x7f\xa5\x47\xf8\xaf\x59\xab\x53\xb9\x39\xa7\x11\xe2\xf1\xe2\x0b\x58\x74\xd9\xae\xab\xe7\xc6\x0f\xb5\xda\x6e\x7a\x40\xcb\x30\xdf\x7d\x29\xbb\xf5\xdd\x34\x67\x62\x5c\xc7\x14\xdd\xad\x77\x3b\x20\xe4\x57\x2c\xd7\xd8\x35\x2e\x4e\x77\x1a\xd2\x31\x2c\xe4\xaa\x6b\x82\xef\x0d\x15\x64\x2d\xf4\x80\x27\xf6\x71\x5f\xfa\x7a\x24\x28\x5b\x7d\xf7\x45\x36\xa7\xff\x90\x53\xd2\x6a\x90\xa3\xbc\x3a\xf2\x38\xd1\xa5\x5d\x63\x12\xd0\x6b\x87\x78\xea\x8f\x23\x14\x46\xa8\x53\xd1\x56\xad\xd1\x21\x9e\xfa\x43\xb6\xad\x52\x73\x46\x28\x9c\x24\x3a\x3c\xe2\x89\x5f\x6b\x4d\xce\x76\x4f\xf9\x88\x79\x1b\x3a\x3f\x7a\x4e\x07\xb9\xa4\xd2\x0a\xdf\x4f\x96\x76\x36\xdc\x5c\x1e\x8c\xf7\x0c\x4d\xf0\x8d\x03\xc8\x90\x8d\x56\x2b\x5b\xfc\xe3\x21\x20\xd0\x29\x5d\x20\x62\xdf\x0a\x26\xf8\x95\xe2\x81\x07\x39\x45\x1a\x8e\xdc\x4f\x51\x2c\x44\x73\xe5\x10\x2d\x9e\x80\xcc\x3f\x1d\x04\x28\x44\x1c\x75\xc4\x80\xeb\xb5\xe3\xac\xf7\x51\x0a\x65\xc7\xa8\xca\xf7\x27\x3b\xb4\xd5\x87\xcc\x3c\xc3\x4d\xcf\xee\x24\x84\xd1\xac\x3b\x47\x51\x04\xa7\x45\x81\x75\xeb\x81\x35\x79\x1d\x39\xc8\x69\xcc\x71\x58\x18\xb0\x4b\x17\x62\xa6\x1b\x32\xed\x9e\x97\xda\x00\x57\x89\x1e\xcd\xd0\xf6\xed\xbe\x31\x80\x65\x07\x6f\xb5\xba\x5d\x03\xea\x31\x57\xce\xfd\x67\x35\xf5\x57\xea\x5d\x04\xb0\x47\x57\xab\xe1\x08\x40\x0f\x6b\x72\x8a\x29\xf9\x9b\xe4\xe2\x30\x8a\x40\xe8\xd9\x06\x43\xe5\xd8\xd4\x39\x82\x27\x27\x50\x6b\x2e\x8f\xc2\x92\x3e\xee\x84\xb2\xd7\xd0\x9f\x19\x5e\x52\xdc\xb9\x4d\x89\x35\x07\x96\x39\x11\xb1\x13\x5a\xff\x33\x28\xec\x96\x40\xc7\x6b\xa5\x3e\xd4\xa7\xa4\xb8\x9d\xc6\xd1\x60\xeb\xdd\xca\xc4\xdc\xd1\xc8\x7e\x74\xc5\xbc\x71\xd7\x87\x61\x38\x86\xfe\x65\xa3\x53\x22\xbb\x9e\x32\x14\x60\x86\x7c\xde\x9d\x41\x12\x84\x7f\x08\x96\x2f\xce\x79\x8c\x26\x94\x25\xcf\xcb\xf9\x30\xe4\xdc\x9a\x27\xe6\xe4\xc4\xce\x1f\x21\x27\x63\xae\x5c\x39\xcc\xc9\x49\xe1\x81\x1b\x60\x29\x75\x7e\xd0\xeb\x7d\x93\x01\x74\xb5\xb2\xe5\x84\x11\xfb\x80\x60\x80\x09\x8a\x22\xdb\x31\x58\x71\x05\x19\x5b\x63\x60\x57\x99\x59\x6c\x03\x25\x21\x17\x06\x57\x90\xf8\xc8\xe8\xbf\x76\x9c\x3c\x7b\x56\xe7\xce\x6f\x6c\x6c\x84\xa2\x4d\x51\x46\x6d\xdc\x98\x52\x1e\x71\x06\x17\xa7\x69\x23\xfd\x46\xed\x76\xcc\x60\x99\xcf\xf0\x83\xed\x67\x3a\x0b\x38\x11\xfc\xeb\x9d\x76\x53\x8f\x2f\xef\xef\x14\xf1\x97\xe6\x82\x1c\x5b\xda\x6c\x98\xab\x3f\x78\xa1\x6e\xe0\x2f\x70\x8e\x9c\xdb\xbc\x70\x83\x40\x69\x2b\xad\xd7\x4f\xef\xae\xf5\xa4\xac\xd9\x51\xc6\xa3\xa7\xdc\x61\x59\x3b\x69\x21\xbf\xeb\x46\x6f\xdf\x60\xdd\xa4\x74\x7b\x9b\x4a\xab\x80\xdd\xd7\xfe\xd3\xdc\xfe\xef\x7b\x6f\xe5\x1e\x27\x4b\x42\x8e\xcd\xf2\xd7\x56\x50\x00\xd9\xc8\xdc\x56\x53\x7e\x92\x3a\xef\x04\x36\x06\x42\x56\xbf\xf3\x57\xb0\x16\x6e\xbd\x5a\xca\x3a\x43\x73\xcc\x18\xad\x9b\x25\x40\xa0\x00\x2d\xe1\x7e\x90\xc2\xa0\xda\x1c\xf1\x91\xf9\x82\x12\x44\xf8\xa0\x30\xae\x93\xb2\x39\x90\x73\x86\xc7\x31\x47\x3f\x62\x12\x60\x32\x8d\x06\x43\x29\xf5\x59\xa3\xf5\x5e\xe6\x2c\x83\x14\x97\xb8\x73\x6b\x51\xd8\xd8\x2b\xde\x54\x86\x9c\xd3\x00\x85\xdd\x09\x83\x53\x65\x32\xad\x90\x25\xba\x1b\xed\xb6\xbc\x3c\x45\x37\xfc\xfe\x8d\x39\xd9\x83\x84\x08\xeb\xef\x7d\x64\x90\x44\x13\xca\xe6\x29\xb6\xaa\x90\x3c\x0c\x24\xbf\x5e\xd7\x80\x0d\xc5\x81\xdf\x5d\x30\x7a\x85\x83\xa2\x34\xa9\x2e\x6f\xf2\x2e\x3a\xa5\x30\xe6\xb3\xb3\xfb\x2a\x1f\x96\xdb\x77\x5a\xb5\xef\x96\x9c\xdf\x35\xe6\xb3\x6e\xcc\x42\xcb\x64\xb5\x52\x33\x97\x84\x14\x01\xe3\x18\x87\xc1\xaf\x2c\x2c\x13\x3b\x05\x07\x3e\x86\x11\xfa\x95\x85\x6b\x20\x4e\xf1\x86\xa7\x11\xf7\x64\xa3\x29\xe2\xb6\x3a\xcc\x0e\x20\xea\x51\x32\xae\xed\xe4\xfc\x8e\x64\xcb\x05\x5d\xc4\x0b\xcb\x71\xe5\xc5\x20\x60\xa8\x8b\xca\x0a\x14\x27\x81\x84\x1c\x97\xcf\x10\x29\xf3\x61\xbf\x15\xd0\xa4\x0c\xff\x4b\x5e\xbc\x0b\x59\xa8\x16\xa9\x8a\xb2\x20\xf7\xea\x25\x0d\xd0\x20\x40\x62\xc4\x5f\x3f\xbc\x79\x99\xdc\x4f\x19\x9d\x1a\x20\x07\x24\x1b\x34\xe0\x52\x76\x00\x7e\x48\xa3\x12\x85\x50\x61\xd2\x2e\x43\x73\xca\x91\xe5\x08\x7c\x25\x45\xb8\xa4\x87\xe1\x0d\xe1\xca\xb1\x52\x5f\x14\xf5\xd3\x96\xd6\xbf\x14\x99\xd0\x04\x99\x24\x2a\x25\x45\x5c\xd3\x59\xa5\x21\xa3\xc4\x01\x4c\xb1\x98\x38\x77\x9d\x69\x2d\x6d\x9e\x72\x25\xe8\x36\x54\x0f\x98\x64\x2b\xe2\x94\xa1\xae\xc6\xb6\x0f\xae\xb4\xab\xb8\x9e\xbc\x4c\x31\x50\x89\xc3\xaa\x17\x3d\x63\x68\x52\x11\xa7\xa0\x5f\x9d\x26\x4d\xfe\x98\x95\xa6\x13\xaa\x20\xaa\x15\xc2\xfc\xdf\x60\xc4\x7f\xa4\x94\x27\x2e\x15\x69\x97\x44\x49\xed\x59\x2f\x2c\xcf\xf3\x88\xcb\x21\x9b\x22\xee\x72\x38\x15\x3c\xcc\x79\xf2\xa0\xf8\x11\x7d\x48\x23\x5e\x38\xb5\x91\xe0\x8a\x2c\xe5\xfd\x81\x3c\xe4\x2e\x20\x43\x84\xbf\x0e\x91\xc0\xae\xcf\xd1\xc9\x89\xf5\xc2\x3a\xf6\x3c\x94\x7c\xe0\xb9\xb3\xd1\xea\x28\xf3\xc9\x4a\xbe\xee\x1c\xb1\x93\x13\x82\xae\x33\xc5\x96\x8d\x24\xc7\xe2\xce\xe1\x72\x8c\x7e\x52\x7c\xb8\xb3\x3e\x0a\xa8\x2f\x59\x08\x77\x4c\x83\xa5\x0b\x83\xe0\xf5\x15\x22\xfc\xad\xb8\x32\x44\xea\x61\x43\x2c\x04\x0b\xe2\xec\x56\x27\xe8\x59\xe4\x47\x14\xb7\xf9\x0a\x55\x0e\xba\x53\x05\xb1\x5e\x17\x78\xc2\x46\x67\x72\x86\x60\xd0\x1d\x33\x7a\x1d\xa1\x6d\x0c\xc8\x03\xd0\xc7\xfc\x97\x9b\xd2\xc1\xb2\xb5\x10\xad\xbc\x2e\x97\x4b\x95\xc3\x42\xee\x11\x22\x57\x96\x14\xb3\x2b\x78\xd7\x3c\xa6\x6c\xe6\xfe\x87\x6d\xe4\x14\x3d\x00\x8b\x77\xe9\x38\xef\xff\x77\x72\xb2\xd5\xfb\xaf\xcc\xa3\xac\xc2\xc7\xb0\xa6\xab\x1c\xce\x5c\xe5\xc8\xfe\xae\x72\x64\xd3\x55\x8e\xec\x72\x95\x23\x99\xab\x1c\xa9\xe9\x2a\x47\x9a\xbb\xca\x11\x27\xbf\xd2\x02\xb4\xea\x3b\xca\x45\x0b\x86\x60\xf0\xf9\x7c\xe4\xf0\x23\x74\x24\x37\x78\xc0\xb8\x9c\xce\x40\xaf\xa0\xcc\x4e\xa7\x26\xb9\x25\x9d\x3e\xdf\xb6\xd4\xbd\x75\x2d\x07\x30\xaf\x98\xdf\x03\x50\x63\x0d\xec\x87\xb3\x73\xd6\x3d\x1b\xf4\x1c\x80\xbd\xb3\xe7\xf8\x7b\xf6\x1c\x3f\x79\xe2\xd0\x21\xee\x9e\x8d\x0c\x59\x0f\xa7\x2b\x23\x27\x27\x3c\xf7\xad\xc0\xb7\x9c\xf3\x61\xfa\xc9\x84\xc3\xe1\xce\x28\xcd\x87\xe1\x0c\x86\xdc\xf8\xb5\x06\xa1\x57\x54\x6a\xf0\x14\xd3\x8b\x23\x12\x42\x2e\xa5\xf3\x01\x71\x75\x21\x14\xdb\x3a\x65\x94\xf2\xae\xcf\x90\x62\x2a\x4f\xf5\x5f\x8e\xd1\x22\x7b\x89\x02\xcc\x73\xaf\x26\x34\x94\x3c\xbd\x75\x2a\x8b\xb0\x59\xce\x5a\x51\x97\x84\x51\x93\xb8\x6c\xa0\x16\x71\x6a\xb2\x69\xa9\xe3\x6b\xa5\x8c\x48\x38\xa3\x61\x98\xe7\xee\x24\x2d\x2c\xda\x16\x75\xb3\x92\x8f\x30\xc7\x88\x09\x8d\x05\x5a\x53\x4a\xf8\x0f\x62\x56\x09\x64\x86\x85\x08\x45\x4b\xaf\x4e\x96\x5a\x18\xb9\x0c\x05\xb1\x8f\xec\x02\x7f\x93\x90\xe9\x21\x1f\xe5\xa2\x5d\x93\x93\xc3\x37\xcf\x07\x31\xcf\xf8\x0f\xfd\x73\xde\xed\x8b\xf3\xc1\xbc\xfe\x73\xf6\x3d\x7f\xce\x9e\x3c\x71\xc8\x90\x75\xfb\xe6\xf9\x60\xf9\x38\x84\x4d\xea\x4a\x6d\x98\x4f\x80\x32\x94\x0d\x25\xd8\xa5\x1e\x06\x8d\x0c\xe8\x09\xd6\x1d\xad\x1d\x70\x2b\x88\x55\x29\x28\xa4\x04\x2a\x1d\xcc\xac\x05\x64\x70\x1e\x89\xbf\x9b\x02\xc1\x90\x75\xd2\x89\x94\xdf\x23\x89\x3c\x35\x35\xf4\x3c\x0f\x9d\x9c\x1c\xf3\x93\x93\xe4\xc9\xb1\x57\x18\x44\x23\xc9\x5b\xf5\x7e\x60\xfd\x5f\x6b\x6d\xa0\x91\x0d\x88\x9b\x58\x85\xfc\xd0\x3f\x27\x0a\xe2\xd8\xeb\x3f\xc7\xdf\x13\x79\x23\xd9\x10\xe7\x21\x8e\xef\x11\xe2\x2c\x0f\x71\xed\x89\x50\x71\xe0\x13\x15\x8d\xa6\xfe\x4e\x16\xdd\x62\x9c\xce\xc1\x23\x3c\x6b\xca\xec\xcd\xd5\x41\x22\xa5\x67\xce\xb8\x51\x07\xba\x02\xe5\x47\x79\x98\x93\x5f\xcb\x6b\x66\x62\xcd\xc2\x59\x03\x58\x6b\x1c\x11\xb9\x72\x6c\xeb\xe5\xbb\x5f\x2e\x7e\x7d\xfb\xe9\x97\x8b\xf7\x2f\x5e\xbe\xbe\xf8\xf4\xfa\x97\x17\x3f\xbe\x7d\xfd\xca\x72\x9c\xdb\xa1\xa0\x4a\xc0\x8a\x10\xe7\x98\x4c\x05\xd7\x1a\xf8\x2e\x26\x1c\x11\x69\x36\x73\x25\x79\x28\x3e\xd4\xd4\x63\xb4\xc3\x8c\xa4\x49\x85\x41\xe8\x80\xc6\x03\xd1\x07\xb4\xa0\x86\x12\x93\xa1\x05\x8d\x30\xa7\x6c\xa9\x19\xe9\x53\x44\x04\x17\x13\x58\x1b\x2a\xd0\xc1\x26\xf9\xdc\x63\x54\x81\x2d\x8b\x03\x1b\x86\x4d\x6b\x8f\x21\x25\x2e\x88\xbd\xd3\xff\x72\x4f\xa7\x89\x87\xd4\x25\x5a\x46\xb6\xdd\x03\x2c\x53\xea\x72\x85\x57\x22\xc7\x71\x27\x38\xe4\xc5\x1c\x8b\xa9\xf8\x59\x64\x1c\xd6\x5b\xb2\x88\xa1\x8c\x7c\xbb\x9f\xb4\xc1\xd3\x5d\x40\x3e\xb3\x80\x65\xd0\xf6\x18\x58\xa7\x6a\xa0\xd2\x7d\x93\x28\x17\x54\x92\xef\x8d\xcd\x54\xe6\x09\xe7\x96\x78\x59\xde\x2f\x9e\xb1\x0d\x5a\x77\x5e\x6f\x34\xc1\x07\xa4\xa9\x1c\xe8\xc9\x49\x68\x23\x40\x01\x71\xfe\x7f\xf6\xde\xbe\x39\x71\x1c\xdd\x1b\xfe\x3f\x9f\x22\xed\x9a\x93\x47\xde\x55\xe8\xee\x3d\x7b\xdf\xb5\x45\x8f\x37\x95\x4e\x32\xd3\xd9\xe9\x04\x26\x74\xcf\xec\x2c\x27\x37\x65\x6c\x01\x06\x63\x33\x7e\x81\xd0\x81\xf3\xd9\x9f\xd2\x8b\x6d\x59\x96\x0d\xc4\xd0\x84\xc4\x5b\xe7\x4c\x07\xc9\x96\x64\x59\x96\xae\xdf\xef\x7a\x5b\x12\xf5\x7f\x20\xef\x61\xa3\xb1\xe2\x16\x3d\x2c\x87\x93\x37\x6f\xbb\xee\x28\x9c\x24\x9f\x8d\xe9\x8e\xf1\x44\xb9\x6e\x00\x54\xaa\xc9\xc7\x78\x18\x23\x6e\xa0\x0c\x74\xff\x94\xad\x06\x2c\x1a\x67\xbe\xaa\xf3\x8b\xcf\xdc\x27\x85\x85\x99\x4d\x5b\xd7\x0d\xdb\x67\x81\x42\x8c\x14\xc9\x15\xf2\xd8\xda\xd8\x04\x8f\xfa\xc8\xa6\x3a\xdf\x3c\x48\x8a\xf1\xe7\xae\x39\x1e\x6e\x10\xf9\xfc\xce\x1b\xa2\xf4\x48\xcd\xe8\xd7\xeb\xce\xe5\x75\x0b\x4f\x68\xe7\xfc\xf6\xe2\x53\xe3\xae\xd3\xba\xfa\x7c\x75\xf1\xe5\xba\x71\x8b\xf7\xac\x48\x8e\x97\x4e\x33\xf4\xb4\xec\x17\x42\xd9\xa0\x98\xa5\x39\xc3\xe2\x32\xc7\xef\x40\x44\x02\xec\x65\x05\x1e\x0f\xa0\x98\xb2\xb1\x7a\x80\x02\xdc\x78\x9d\xa2\x5a\x37\x0c\x02\xd7\x39\x39\xf9\x9b\x96\xfc\x8a\xdd\x7c\x6a\xa6\x1e\xe8\x3e\x0a\x6a\x03\x0f\xf5\xf8\x78\x25\x80\x22\x03\x14\x9c\x47\x2a\x11\xa0\xe0\x6b\x14\xe8\xc4\xda\xf4\xa0\xd6\xcf\xd6\xab\x47\x2e\x46\x5c\xa9\x86\x35\x17\x06\x8c\xc7\xc9\x5c\xae\x2e\x97\xd0\x5a\xeb\xb1\xa4\x43\x7e\x23\xb0\xc1\xd9\x63\xf1\x9f\xef\x4e\x4e\xe2\xe9\xe0\x8d\x1b\xce\xf8\x1f\x75\xaa\x51\x86\x0e\x7d\xaa\x56\xb4\x2a\x00\x7e\x59\x6f\xde\x13\xb7\x41\x4f\x53\x2c\xff\xc2\xb5\x6d\x7d\xe2\x23\x53\xb1\x08\x7c\x7a\xe3\xd4\xb8\xc2\x93\x13\x27\xe6\x05\x80\x1a\x8d\xe0\x3d\x73\x07\x44\xea\xe3\x32\x86\x94\x40\x3d\x39\x29\x98\xe4\xe5\x6a\x66\x6d\xec\x86\x3e\x32\xdd\x99\xa3\x40\x57\x85\x6b\x5d\x1d\x4e\xc8\xb1\xbb\x45\x26\xae\x68\x10\xf9\x37\xb0\x71\xec\x98\xbc\xa3\x46\x73\xf4\x2c\x2b\xd6\xea\xe2\x6b\x48\x0e\xb6\x1c\xbd\x6e\x54\x3a\x9e\xe8\xc1\xdb\x3e\x0a\x22\xf7\x9e\xa8\xdf\x82\x4b\x6c\xab\x9b\x18\x78\xd0\x22\xd3\xb7\x4f\x33\x4a\x36\x4a\xaa\x41\x77\x5b\x3b\x9c\x25\x9a\x04\xf0\x73\x91\xbf\xd5\xe5\xe9\xf9\xa5\x2a\x7e\xda\x4f\x5a\x78\x40\xea\x91\x55\xc3\x07\x1c\x5e\x5a\x5f\x62\x14\xa1\x24\xcf\x1a\x1b\xeb\x11\xab\x02\x37\xb9\xd5\x52\x6b\x7a\x18\x0c\xb0\x08\x67\xe8\x01\x32\x89\x74\xe9\x1f\xbd\x11\x3d\x0e\x4f\x4e\x32\xb6\x05\x2a\xb4\x6a\x6e\xaf\x97\xed\xd5\x21\xe6\x3f\x4b\x51\x13\x23\x71\x9b\x97\xaf\xa1\x99\x6e\x8f\x62\x95\x8f\x74\x15\xd9\x56\x97\x33\xa0\x26\xf6\x5d\x7b\x36\xff\x10\xc7\x9c\xf3\xb6\x57\x18\x76\x44\x48\xc3\x3d\xb6\x9c\x63\xaf\x16\xb7\xa7\x72\x7f\xd7\x06\xba\xdf\x98\x39\xf1\xc0\xdd\xe8\xdd\xd0\x73\x4f\xa5\xa1\xd8\xd2\x5a\xb3\xbf\xba\x6b\x19\xe3\x8c\xad\x07\xcb\xf1\xdf\xea\x86\x4d\x9c\x51\x58\xd8\xbd\x5c\xe3\x3b\x76\x39\xb9\xb4\x6b\xbb\xc6\xc8\x72\xfa\xf1\x3d\x45\x76\xa3\x1b\x33\xd7\xde\x01\x30\xd7\xde\xab\x61\xae\xbd\xc3\x66\xae\xbd\x67\xc8\x5c\x17\x78\x5e\xdf\xe0\xaf\x8c\x61\xeb\xc4\x88\x18\x3e\x46\xd8\x3c\xc7\x21\x37\x86\xee\x2a\x64\x9f\x64\xfd\x31\xf4\xf3\xdd\x72\xa3\xeb\x6b\x13\xe4\xf9\x96\x1f\x80\x47\x12\x5a\xb0\xfe\x78\x1b\xb9\x60\xd4\x13\xf3\xfc\x24\x90\x61\x1d\xcf\x22\x6c\x21\xc3\x43\xc1\xf5\x65\x3d\x15\xc3\x8f\x84\x39\x5c\xaa\x4b\x68\xbb\x7d\x37\x94\x5a\xf0\xa7\x7a\xa6\x86\xcb\x40\x21\x1d\x2b\xd4\xf8\xc0\xc9\xee\x9f\x9c\xbc\x09\x3d\xc2\x1b\xa6\xf8\x94\x1e\x42\x66\x57\x37\x46\x35\xf4\x80\x0c\x2c\xdf\x81\x6c\xbf\x1e\x06\xbf\x6e\x8d\xb4\x0f\xb2\x66\x15\xdc\x75\xc4\x3e\xe6\x92\x0c\x8c\x89\x4b\x1e\xc4\xb0\x98\x1c\x71\x2a\x54\x48\x13\xf8\x31\x97\x6b\xb8\xc4\xb3\x0d\x93\xbc\x4b\x92\xa3\x9c\x1a\x6f\x7d\x27\x7f\xee\xd4\x42\x7a\xa4\x56\xa7\x37\xae\x89\xec\xcd\xcc\xcb\x29\x09\x8a\xa7\xcf\xa2\xdf\x36\x6e\x4e\x5d\x42\x13\xe1\x75\x36\xd5\x03\xb4\x51\x7b\x47\xd4\xa0\x24\x59\x38\x94\xeb\x8a\xd9\x7e\xa8\x58\x01\x1a\x13\x04\xa2\xa8\x47\xa9\xf5\x65\xf9\xb7\x68\x46\xa1\x35\x73\x16\xbd\x43\x86\xeb\x99\x60\x3d\x8f\x72\xf6\x36\x18\x61\xb3\xfd\x03\x6f\x5b\xa8\xb9\x78\x1b\x58\xae\x11\x2c\x94\x8d\x7b\xe2\xda\x96\x31\x7f\xab\xfb\xa7\x63\xdd\x99\xe7\x3d\x24\xb5\x96\x1f\x5b\x8e\x35\xb6\xbe\xd1\x05\x52\x7c\x98\xc3\x18\x28\xf2\xf4\x16\x3d\x75\x58\x49\x1f\x05\x9c\xc8\x42\x77\x6a\x3f\x92\x86\x8a\xae\xc1\xcd\x04\xc4\x11\xd0\xcb\xf2\x62\x81\x18\x2f\x3f\xdd\xc4\x25\xf2\x0d\xcf\x9a\x04\x2e\xdd\xf0\x6b\x89\x4b\xd1\x52\x55\x55\x48\xe3\xca\xb0\x45\xe9\x40\x4f\x4d\xc2\xbd\xa4\x8f\x0a\x2c\x33\x46\x1b\x0c\x16\x22\xd0\x59\xde\x9b\x0d\xa2\xd7\xe9\xc0\xb4\xff\x52\x2c\x93\xb2\xdf\x33\xcf\x0a\xd8\xdf\x4b\xb5\x4e\xd4\x2a\x0e\x44\x5b\x3b\x38\xb2\x66\x03\x2c\xd0\x0d\x5a\x2c\xda\xf7\x12\xc2\x90\xd9\xb3\x46\x9a\xc3\x7a\x00\x89\xf2\x10\x1f\x6b\xcb\x4c\x48\x55\xd4\xf6\xee\x4f\x4e\x80\x4b\x1c\x56\xda\xde\xbd\x0a\x5d\x62\x2a\x66\x49\x18\x96\xdc\x1e\x25\xf2\x5f\x42\xb3\xbf\xff\x10\xfc\x28\x72\x0a\x1f\x82\xbf\xfe\x35\x1a\x28\x8d\x25\x9b\x70\x09\x01\x4f\x2c\x04\xf7\xf5\xc7\xe5\x51\xf0\x5f\x7f\x3b\x73\xd8\xf2\x03\xae\x0a\xdf\xbc\xcb\xa1\x37\xe9\x2b\x76\xdb\xc1\x3d\x89\x01\xbb\x62\x25\xf9\xd2\x77\x6f\x21\x1f\x20\xb8\xea\x56\xe0\xaa\x6a\x9d\x1b\x53\xce\x80\xf2\x17\xd7\xaa\x55\xee\x42\x76\x2e\x25\xa6\x45\xc9\x2b\x55\x94\x25\x24\x61\x6e\x97\x50\x17\x17\x88\xcb\x51\xc6\x05\xec\x73\x6a\xf3\x8d\x1a\x56\x54\x4d\x23\x3b\xac\x7c\x55\x05\x9a\x07\x1e\x97\xd0\x81\xa9\x9b\x6f\x89\x4d\x64\x36\xb8\x2f\x7f\x11\xc1\x35\x41\xdb\xbd\x17\x4a\x55\x18\x90\xa7\xb0\x25\xcb\xad\x70\xfc\x8a\x10\x92\x99\x7f\x06\xd2\x62\x28\x3d\x28\x3d\xe4\x4f\x5c\xc7\xfc\xc9\xf5\x7e\x0d\x91\xc7\x8e\x98\xba\x54\x3f\xca\x1d\x76\xd2\x6d\x0a\x89\x89\x39\xa2\x1d\xa7\xd6\xc4\x5b\xb3\x85\x7c\xcd\x02\xc9\x8f\x24\x1f\x06\x70\x6a\x8c\x04\xb8\x36\x31\x54\xc7\x2b\x2e\xd6\x3e\x9c\x5a\xb4\x6c\xae\x40\x85\xa3\x0a\x14\xa8\x5c\xea\x81\x6e\x20\x27\xc0\x88\x54\x4d\xb5\x76\xeb\x9a\xa9\xa6\x1c\xd7\x4c\xb5\x83\xeb\x33\x8d\x28\x78\xee\xc9\xc0\xa9\xf0\x13\x10\x85\x5f\x6a\x76\xb6\x3b\x2f\xa4\xb3\x02\xf5\x06\x37\x6b\x48\x36\x6b\x68\xab\xb3\x86\x9e\x3e\x6b\xe4\xc4\x49\x26\xcd\x47\x5e\x86\x1b\x88\x1d\xe9\xb5\xd5\x22\x53\x2c\x9d\x66\x1e\x4f\xd3\x81\x17\xcf\xc4\xa6\xcf\x0a\x3d\xe1\x09\x85\xd6\xd6\x7c\x5c\x98\xdc\xa3\xa5\x49\x23\x9b\x6b\x4e\x55\xa1\x97\x16\xd3\xc2\x75\x84\x97\x57\x20\xa6\x79\xae\x8d\xb6\x22\xa4\xed\xf0\xc9\xbe\xcf\xae\x78\xe7\xda\xc8\x4f\x12\xc6\xb1\x82\x28\x90\x5f\xf4\xfb\xac\x7d\x5f\x67\x7f\x3e\xaf\xed\x49\x18\x3e\x12\x86\x8f\x92\xe1\xb3\x3f\x77\xb6\x4f\xd0\x91\x08\xa1\x2f\x68\x69\xe6\x33\x5c\x63\x71\xbe\x82\x8f\xd0\xb7\x5d\xd1\xb7\x87\x3c\xc5\x29\xa9\x48\x5f\x75\x40\x01\x11\xd8\xb8\x69\xd6\x88\x8a\xe3\xad\x38\xde\x8a\xe3\x7d\xe1\x1c\x6f\x62\xa2\x99\x62\x49\x09\x81\xd7\xb3\x1c\xf3\xe3\xbc\x65\x87\x7d\x90\xc2\x45\x7c\x9e\x1a\xca\xf7\x45\xd6\xa2\xd4\xe8\xa8\x66\x1a\x35\x62\x01\x29\xd4\x31\x6b\x4e\xb5\xc6\x8c\xb1\x58\x2e\xd7\xf7\x6a\xbe\xe3\xda\x71\x90\xcf\x3c\x73\x2c\x73\xfe\xf0\xe4\xd4\x73\x54\xaa\xa8\x30\xe1\xaf\x33\x10\x94\x0d\x97\xee\x96\x5b\xa7\xa9\x79\xd3\x71\xe8\x3e\x8d\xa8\x76\x8b\x89\x6a\x6e\x1a\x35\x04\x5d\x09\x5b\xed\x42\x07\x78\x44\xa6\xc8\x25\xb9\x83\x12\x54\xb6\xfc\x5c\x58\xd7\x6b\x78\xb3\x03\xc2\x39\x80\x03\xe2\x15\x46\x7a\x3e\xcc\x03\xe2\xc0\xf2\x20\xa4\xc1\x57\x27\xda\x3a\x72\xce\x85\xa8\x5a\x51\x89\x1d\xc2\x53\xf4\x31\xf4\xba\xa8\x21\xc8\x4e\x10\xda\x9d\xcf\xb4\x34\x30\xe9\x08\x3e\xb2\x4d\x2c\xe9\x8b\x59\xd6\xc4\x68\x28\xda\xe5\x48\x39\x0c\x38\x15\x0f\x55\x12\x92\xbd\xeb\x82\x3c\x61\xae\x92\x92\x5c\xf3\x75\x62\xea\xf1\xfe\x26\x1a\x2f\x41\xee\x92\x1c\xb7\x65\xce\x53\x61\x62\x5b\x01\x50\x6a\x49\x9a\x31\x54\x9b\xb8\x13\xc0\x0e\x3d\xde\x1e\x1f\x20\x96\x76\xb7\x46\xd2\xee\x72\x1b\xed\x26\xbd\xf8\x33\x8b\x18\xa5\xd1\x5e\xd4\x47\x12\x25\x9a\x9a\xad\xd6\xd3\xa7\x73\xcf\x43\xfe\x00\x10\x9b\x19\xbc\x26\x52\xb5\xf9\xe3\x5a\x42\x84\xbf\xb8\xfc\x59\x44\xec\x0a\x71\x82\xb2\x57\x88\x0f\x97\xba\x22\x96\x36\x0c\xfc\xbd\xe6\x3a\xc9\xaf\xf1\xba\x8c\xec\x50\x05\x1f\x8f\x92\x3a\xde\x48\xa8\x58\xad\xe5\xa5\xb3\x16\x6b\x79\x89\x34\x1c\x1d\x8d\xcc\x2f\x4a\xee\x16\xe3\xd5\xb8\x59\xa7\xdb\x22\xa1\x93\xb3\x73\xbc\xaf\x47\x4b\xbd\x83\xf4\xa3\xd1\x51\xae\x78\x34\x7a\x7f\xf2\x68\x66\x76\x71\x6c\xf7\xd1\xa8\x19\xe3\xe6\xaa\x79\xfe\xc9\xe8\x20\x57\x3c\x19\xbd\x3f\x7e\xb2\x6c\xb2\x17\x99\xec\x83\x05\x5e\x62\x26\x95\x1f\x30\x71\x2c\xa7\xe4\x98\x31\x3d\x74\xa1\x05\x75\x68\xc3\x10\x1a\xd0\x87\x3d\x38\x81\x26\x1c\xc3\x39\xec\xc2\x01\x9c\xc2\x7e\xe2\xcb\xd6\xe0\x74\x69\x0d\x4d\x12\x56\x21\x12\x74\x14\x9f\xfc\x21\x56\xc4\x47\xe1\x99\x6c\x4f\x65\xd2\xcb\x52\xfa\x99\x9f\x9c\x14\x74\x97\x92\x46\x34\x4d\x8b\xcb\xdf\x44\x7f\x27\x72\xcf\x59\x34\xb6\x7a\xdc\xa1\x8a\x25\xad\xf8\x21\x67\x89\xa2\xd2\x39\x39\x29\xd0\xae\x72\x24\x88\xc3\xe9\x73\xd3\xfa\xd5\x24\x9e\x0e\xa9\x8b\x75\xad\x4e\x2d\xfa\x13\x32\x2d\x2d\xe7\x30\xea\x9d\xa5\x7e\x51\x09\xcd\x53\xeb\xf4\x2c\x5e\x72\x83\x1d\x26\x32\x21\x48\x64\x16\xb7\x77\x1c\xa8\xaa\x54\xfa\xb9\xd0\x1d\xc7\x0d\x8e\x71\x8b\xc7\xfa\x31\xb1\xf3\x3f\xd6\xfd\x63\x3d\x96\x7b\x15\xae\xf5\x0e\xbf\x48\x41\x27\x92\x21\x7d\x14\x34\xa3\xe9\x6c\xf4\x44\xf9\x34\x3e\xbc\x3a\x1d\x32\xe9\x9d\x8e\x16\x40\x32\xc9\x78\x59\xc7\x6d\x37\x13\x3c\xc8\x7d\x4f\x39\xb1\x14\xee\x50\xcf\x46\x46\xb0\x58\xbc\x61\x7f\x25\x2f\x9c\x89\x80\x6f\xde\x63\x91\x32\x53\x5b\xf3\x07\xfa\x38\x75\x89\x64\x19\x35\x3d\xf7\x61\x1e\x5d\x44\x33\xc4\xb0\x87\xb8\xc4\x1b\x55\x9e\xc8\x9c\xe9\x0c\xe0\xcb\x61\x9b\xff\xce\xd4\x47\xa2\xde\x7f\xf3\x2e\xb1\x00\x8f\x06\xb3\x5c\x26\x61\x57\x84\x53\xdb\x81\x9e\x36\x62\x52\x72\x10\xe9\x99\x47\xe4\xbc\x52\xf9\xa5\x7e\xe4\x68\xd9\x41\x78\x90\x03\x7a\xcc\x39\xc5\xd1\x56\xb0\xb2\x2d\x5a\xe1\xa8\xcb\xe4\x0d\xb5\xf8\xf7\xf9\x26\x58\x2c\x14\x2a\xe5\x2a\x6f\x34\xad\x01\x02\x95\xff\x24\x63\xa8\x13\x9c\x5d\x01\xa4\xd6\x83\xa4\x99\x2b\x06\x8c\x12\xea\x99\x5b\x99\x77\xa8\x87\x3c\xe4\x18\xd1\xf2\xc4\xa3\x38\x1e\xe8\xbe\xf3\xff\x05\xc7\x5d\x84\x9c\xe3\xe8\x33\xf0\x91\x79\x7c\x7a\x4c\x69\x71\x35\x75\x05\x7e\x17\xc4\xb7\x29\x96\x08\xe2\xae\x47\xdc\x7e\x35\x92\xaf\xde\xb3\x44\x8f\xcd\x95\x4a\xb7\xa0\x64\x41\x2f\x16\xd2\xbb\x48\xe6\xd6\xd4\x5e\xf2\xc0\x9b\x75\x33\xa3\xec\xd8\x86\x81\x37\x50\xf1\x64\xfa\x77\x3c\x6f\x6d\x74\xaf\x79\x6d\x74\x8f\x37\x7f\x8b\xdb\x65\xb4\x37\x6f\xf8\x9f\xd0\x4a\xed\x33\xa4\x36\xb5\xf1\x00\x9a\x81\x40\xb1\x9c\x63\x6b\xb1\xb0\xf8\xed\x05\x43\x0c\x2b\xde\x8e\xb4\x37\xc4\x57\xd5\x61\x70\x50\xad\x79\x68\x8a\x3c\x9f\xfe\x25\xb8\xe3\x72\xd6\x1c\xb1\x75\xca\x62\xe1\x2c\x55\x68\xa9\xd0\xe5\xdc\x2e\x52\xfd\x91\xee\xc8\x68\xd2\xe5\x67\x56\x76\xd3\x73\xa3\x4d\x0f\xa6\x2a\x19\x2a\x51\x61\xbc\xa8\xc4\x1e\xf2\xf7\x6d\x8b\x3c\x5e\x68\xdb\x2a\xb4\xca\x00\x23\x54\x6b\x7d\xfe\xfa\x73\xe7\x97\xab\x3f\x34\x54\x6b\xde\x5d\xdf\x9c\xdf\xfd\x41\x7e\xc5\x01\x3d\xf8\x42\x25\xb4\x4c\xe5\x88\xbb\x47\xb9\xbe\x54\x08\xbc\xb9\xd3\x80\x43\xb5\x21\x7a\x10\x78\x6a\x8c\xe7\x55\xe8\xc9\x8b\x5d\x79\xb1\x25\x2b\x86\x8f\x6c\xb8\xbf\x91\x47\xc8\x48\x2e\x8a\xb2\x5c\xaa\x50\x97\xb7\x68\xcb\x8b\xc3\x54\xb1\x13\x62\x39\x43\x51\xa1\x21\x2f\xee\xa7\x2c\x23\x40\x86\xcb\x90\xed\x21\x27\x27\xd4\xa8\x46\x0b\xe4\x87\x58\x0b\x6f\x03\xc7\xe8\x61\xe2\x51\x9f\x04\x0a\xbb\x91\x15\x0c\x90\x87\x11\x3a\xbe\xfb\xd8\xf5\x52\xa7\xda\x11\xb7\x91\x47\x5b\x41\xc4\x71\x9e\x9c\x70\xc4\x08\x7c\xe4\x76\xd8\x3a\x7b\xf7\x88\xb7\x92\x12\x2d\xa8\xf0\x14\x06\x27\x27\x1d\x26\xb8\x01\x07\xb2\xb8\x86\x81\xd6\x04\x8e\x7a\x94\xf1\x7b\x40\x47\xc3\x68\xbf\x8d\x01\xfd\xaa\xd0\x0e\xf8\x05\xbf\xe3\x43\x3a\xc8\xdd\xc7\x67\xe0\x0a\x20\x2d\x20\x5f\x4f\xb4\xe5\x53\x97\x5d\x2e\x64\x83\x8a\x45\x6d\xcb\x54\x60\x0f\xe2\xdd\x59\x85\xe4\x2e\x95\x18\xc9\xc2\x89\x50\xc6\x69\xd3\xa1\x29\xd4\x51\x85\xfb\x58\x28\xc5\x6f\x4a\x81\x73\xa1\x94\xa6\xdf\x86\x5d\xa1\x98\x02\x95\x6b\x02\x3b\xe1\x40\xa8\xbc\x71\x4d\xab\x37\x67\x95\x53\x56\x89\xb8\x54\x68\x5c\x18\xf7\x9e\xf6\x00\x80\xaf\xf5\x55\xee\x55\xd2\xa7\x6c\x3b\xf7\xe4\xa5\xa6\xac\xde\xd2\x2a\x2c\xfe\xed\x72\x1b\x09\x31\x28\x5e\xaa\x70\xa2\x3d\x00\x9f\x6f\x17\x4f\x54\xdb\x2b\xdb\xac\x29\x36\xcb\xcf\x75\xdb\x2d\xdb\xfc\x58\x6c\x9e\xbe\xae\xb6\x55\xb6\xe1\xb9\xd8\x30\x7d\xe3\x6d\xbd\x6c\xc3\x5d\xb1\x61\xb6\x68\xda\x76\xd9\x96\x07\x62\xcb\xa9\x75\xd7\x0e\xcb\xb6\x3f\x15\xdb\x4f\x2d\xdd\xb6\x51\xb6\x7d\x9f\x87\x82\x77\x85\x50\xd0\x70\x5d\xcf\xb4\x9c\x4c\xa6\xe8\xf2\x88\x30\xd9\xc9\xba\x9c\x64\xd5\x7d\xa9\x48\x70\x70\x48\x48\x70\xba\x53\x24\xd8\x4f\x21\xc1\xfe\x56\x91\x60\xa3\x42\x82\x85\x48\xb0\x23\x22\xc1\xce\x2e\x91\xe0\x4c\x82\x04\x67\x05\x48\xb0\x9b\x8f\x04\x87\x02\x12\x1c\xee\x0f\x09\x76\xb8\xfd\x2a\x87\xc7\xd8\x2d\x12\x6c\x56\x48\xb0\x42\x82\x39\x48\xf0\xd6\x35\x11\xc5\x82\xad\x52\x58\x30\x07\x03\xae\x89\xef\x62\xc4\x36\x7f\x35\x88\xad\x2f\x41\x6c\x8d\x1c\xc4\x36\xdd\x15\x62\x1b\x80\xe1\x06\x88\xcd\x80\x43\x02\x82\xc8\x5d\x2a\x35\x7b\x56\xa0\x2f\x94\x5e\x60\x11\x10\xc3\xbb\x74\x71\x0b\xf5\x69\xbe\x89\x89\x50\x91\xc6\x78\xc2\x4d\x73\xc7\xf8\x62\x51\x9c\x37\x2c\x02\x60\x86\xd6\x04\x20\xd4\xe6\xbb\x00\x60\xbe\xd6\x04\x61\x0a\xca\x90\xe7\x2e\x0f\xc1\x7a\x62\xc3\x6c\xea\xca\xa3\xaf\x89\xd8\x72\x3c\xfb\xe5\x01\x98\x29\xb6\x9d\x02\x8e\xa5\x61\xd8\x38\x33\xf4\x78\x0d\x94\x47\x62\x21\x8f\x64\x5a\x85\x48\xc6\x34\xb6\x81\x60\x92\xaf\xd9\xe7\xa4\x00\xff\xa5\xa2\x96\xde\x21\xa1\x96\xc9\x4e\x51\x8b\x99\x42\x2d\xe6\x56\x51\xcb\xb8\x42\x2d\x85\xa8\x65\x20\xa2\x96\xc1\x2e\x51\xcb\x5c\x82\x5a\xe6\x05\xa8\xc5\xcf\x47\x2d\x5d\x01\xb5\x74\xf7\x87\x5a\xb8\xf9\x06\x83\x7d\xa0\x96\x69\x85\x5a\x5e\x07\x6a\xf9\xa9\x71\x77\x75\xfd\xf3\xed\xa6\x18\x86\xbf\x8d\x97\x41\xd2\xf0\x46\x1f\x33\x78\xd3\x2f\xa7\xea\xea\xba\xae\x8d\x74\x67\xa5\x52\x8b\xca\xf7\xc6\xab\x81\x31\xa6\x04\xc6\x8c\x73\x60\xcc\x64\x57\x30\xa6\x07\xba\x1b\xc0\x18\x1d\x76\x09\x94\x20\x77\xc5\x8a\x24\x5b\x28\xbd\x41\xfe\xe0\x8a\xc5\x2e\x85\x21\xab\xcc\x41\x1f\xba\x36\x05\xc0\xd2\x8c\x5d\xa0\x0f\x5b\x9b\x02\x4b\xa2\x48\x29\x8d\x3e\x42\xb1\xe1\xd4\x13\x97\xc7\x20\x16\x2f\x6b\xf7\x8b\x65\x6d\xcb\x37\xdc\x29\xf2\xe6\xa7\xc6\x80\xa4\x3b\xde\x9e\xea\xe0\x28\x2d\x34\xb1\x03\x6d\xfc\x52\x05\xf0\xf9\x21\x09\xe0\xdd\x9d\x0a\xe0\x83\x94\x00\x9e\x23\xc2\x3c\x51\x00\x9f\x56\x02\x78\xa1\x00\x3e\x13\x05\xf0\xd9\x2e\x05\xf0\xbe\x44\x00\xef\x17\x08\xe0\xe3\x7c\x01\xbc\x21\x08\xe0\x8d\xfd\x09\xe0\x33\x6e\xbf\x9a\xed\x43\x00\x1f\x56\x02\xf8\xeb\x10\xc0\x9f\xa0\x36\xe0\x83\x67\x10\xa9\xaf\xb3\x0b\x4b\x32\x41\x7b\xa0\x42\xf3\xd5\xc8\xd5\x03\x89\x5c\x3d\xcd\x91\xab\xbb\xbb\x92\xab\xe7\xa0\xb1\x81\x5c\x1d\xc2\x06\x11\x92\xc9\x5d\xaa\x10\x60\xc5\x10\x2a\x79\xd2\xd8\x17\xea\x2e\xa8\x10\xd8\x13\x8a\xc7\x28\xd0\x15\x38\x61\xa5\x39\xa2\x78\xa8\x0d\x01\xb0\x35\x73\x17\xa2\xb8\xa1\x0d\x81\x9d\x66\xd5\xb9\x27\x2c\x2f\x91\xfb\x62\xfb\xdb\x35\xc9\xea\x89\xcd\xb3\x79\x2e\xaf\x12\x98\x88\x2d\xd3\x57\x55\x5e\x19\x60\xf3\x18\xa2\x53\x88\x21\xe2\xf4\x1b\xa7\x13\xe4\x8d\x2d\xf2\x29\x9f\x0e\x82\x60\x72\x3a\x40\x7a\x26\x09\x6b\x41\x06\xda\xe8\xaf\x75\xa0\x47\x1c\x83\x64\x95\x1f\x0b\x6c\xc0\xd9\x51\xda\x18\x81\x1d\xed\xc3\x97\x0a\x45\x3a\x87\x04\x45\x9a\x3b\x85\x22\x2d\x31\xc7\xda\xbb\x0f\xce\x8f\x41\x14\xcf\xcf\x89\xe2\xf9\x79\x5a\x40\x3c\x67\x79\x49\x89\xff\xb1\x58\xbc\x79\x0f\x3d\x41\x56\x7a\x07\x13\xe1\x88\xf8\x47\xa7\x85\xa1\xbc\x79\xf7\xb0\xe8\x06\x3d\x5e\x64\xbe\x4a\x01\xa6\xab\xad\x02\xa6\x51\x05\x98\x0a\x01\xd3\x85\x08\x98\x2e\x76\x09\x98\x1e\x24\x80\xe9\xa1\x00\x30\x0d\xf3\x01\xd3\x9d\x00\x98\xee\xf6\x07\x98\x2e\xb8\x5d\xf5\x62\x1f\x80\xe9\xb2\x02\x4c\xcf\x1b\x30\xc5\x6f\xea\xcb\xe6\x41\x37\x6e\x0f\x20\xe8\xc6\xed\xab\x89\xca\x74\x7b\xd8\x41\x37\x6e\x9f\x71\xd0\x0d\x54\xf3\x8d\x01\x1a\xeb\x7c\xf4\x8d\x73\x8d\x44\xbf\xaf\x3f\x7a\xe8\xcf\xd0\xf2\x90\x89\x6f\x82\x9f\x88\x60\x8d\x67\xba\xfe\xa8\xdb\xb6\x3b\x43\x26\xd1\x8a\xf9\xf5\xb6\x72\xf5\xa0\x1b\x58\x84\x6e\x7a\xa8\x67\x3d\x28\x50\x69\x85\x3d\xfa\xc7\x1d\xea\xa3\x07\x5a\xe3\x63\x31\xfb\x9e\x24\xe4\x60\x7d\x9e\x93\xee\x6e\x34\xc0\x72\x83\x48\x59\x83\x6c\xb1\x25\x2f\xd6\xe5\xc5\xb6\xbc\x38\xe4\x8b\x89\x4f\x59\x8f\x05\x1d\x31\xdc\xf1\x24\x0c\x90\xa9\xd6\xdc\xe8\x64\xed\xc1\x2f\xe0\xbc\x96\xcc\x40\x2d\x35\x01\x2a\x06\x73\x60\x42\x6f\x57\xe3\xfb\xd9\xbd\x93\x55\xf7\xce\x5e\x0d\xcd\x71\x15\xd1\x1c\x56\x4c\x73\xd0\x03\x54\x1b\x01\x8b\x23\x3b\xac\x98\xec\x68\x52\xd9\xc5\x4a\xbe\x8c\x55\xd9\x28\x55\xe8\x69\xef\xf8\x2c\x94\xf2\x1c\x94\x1d\x70\x07\x90\xe6\xf2\x64\x87\x2b\x90\x1d\x0e\x21\x3b\x22\xc7\xb3\x3b\xc2\x43\x90\xdb\x54\x18\x2d\xf8\xb9\x50\x1c\xad\xff\xae\x50\x1e\x7d\x0e\x03\xa1\x9c\x7d\x1d\xd3\x6c\x33\xe4\x63\x81\x7d\xa1\x82\xac\x19\x05\x36\x58\x71\xcc\x8a\x04\x9a\x05\x81\xa3\xb5\x1f\x47\x68\x5e\x57\x92\xb5\xa6\x88\x11\x13\x93\x48\x2d\xd1\x44\xe4\x2f\x4d\x12\x27\x4d\x1a\x19\x94\x8b\x89\x1e\xdc\x93\xf8\x11\xf7\xea\xc9\x49\x0b\xf0\x6b\xc4\x51\xa1\x47\xca\x48\xc6\xa4\x14\x6b\x33\xd6\x2e\x01\x30\xb5\x99\xba\x0b\x45\xe7\x5c\xbb\x04\x26\xdf\x30\x7b\x55\xe5\x19\x95\xae\xd8\x72\xf4\xb6\xcb\x53\x2a\x03\xb1\xe9\x68\xc1\x94\x27\x55\xa6\x62\xd3\x6c\xcd\x95\x37\xaf\xec\x4b\xe6\x83\x2e\xdb\xf2\x4e\x6e\x0d\xb1\x6d\xb6\xf2\xcb\xbb\xb7\x09\xed\xf2\xdf\x4a\xdb\xbf\x5f\x19\x6c\x3e\xef\x66\x15\x72\x35\x2a\x34\x79\x2a\xeb\xe6\x69\x54\xd6\x53\x38\xac\x82\xab\xf4\x28\xf3\xdf\x5a\x6a\x76\x4a\xe5\x10\x74\xba\x8a\xeb\x3a\xca\x51\x62\xbd\x50\xa6\x6b\x78\x48\x4c\x57\x67\xa7\x4c\x57\xf3\x20\x98\xae\x54\x74\x11\xd0\xda\x2a\xd3\x75\x55\x31\x5d\x85\x4c\xd7\x9d\xc8\x74\xdd\xed\x92\xe9\x1a\x49\x98\xae\x51\x01\xd3\x35\xcb\x67\xba\x1e\x04\xa6\xeb\x61\x7f\x4c\xd7\x1d\xb7\xab\xde\xed\x83\xe9\xba\xa8\x98\xae\x03\x61\xba\x2e\x37\x67\xba\xbe\x1c\x00\xd3\xf5\xe5\xd5\x30\x5d\x5f\x0e\x9b\xe9\xfa\x72\x60\x4c\xd7\xad\xf6\xd8\xd4\x83\x81\x9c\xd4\xc2\x35\x31\xa1\x85\x7f\xc4\x2c\x97\x1e\x0c\x28\x8a\xba\x5f\xc2\x1b\x32\x11\x7e\xf6\xf6\x9f\xaf\xbe\x28\x50\xf9\x74\x75\x7e\x89\x6f\x69\xb4\xf0\xaf\xe6\x57\xfc\xdf\xcb\xab\xcf\x57\x5f\xae\x14\xa8\x5c\x34\x6e\x6f\xaf\x2e\x70\x51\xa3\xf9\xe5\xba\x71\xdb\x52\xa0\xf2\xe5\xee\xfc\x02\xd7\x35\xcf\xbf\x5c\x7c\x4a\xd3\x65\xb7\x8c\x9d\x03\x2e\x4d\x84\x2c\xe5\xc5\xb2\xc5\xba\xbc\x98\xf1\x62\x11\x40\x20\xb3\xaf\x02\x65\xa5\x66\x3d\xa1\xce\xd8\x1d\x71\x8b\xab\x38\xb4\x4b\x70\x5b\x8b\xa6\x7b\x33\x06\xad\xf0\xce\xc6\xab\xe1\xcf\x5a\xb9\xfc\xd9\x55\x0e\x7f\xd6\xd9\x15\x7f\x36\x04\x0f\xeb\xf1\x67\xdc\x87\x33\x86\x0f\x84\xb6\x22\xf7\xb2\xaa\xe8\x03\x9b\x4b\xea\x18\x53\xd1\x15\xaa\x3e\x31\x0b\x8f\x81\x50\xce\xbe\x44\x05\x4e\x25\x6d\x29\xb0\xcf\x4a\x73\x48\xb3\x68\x79\xad\x41\x99\xe5\xad\xc5\x5c\xc2\x2c\x7b\xb2\xf1\xbc\x59\x53\xc2\x9b\x35\xe5\xbc\xd9\x05\x00\xa6\xd6\x48\xf1\x66\xdc\xfc\x96\xa7\xb8\xe6\xda\x85\x40\xe9\x70\xaf\xa8\x3c\xcd\xd5\x95\x35\x1f\xf1\x51\xa5\x99\xae\x81\xd8\x7a\xb4\x50\xca\x53\x5d\x53\xb1\xe9\x78\xad\x95\xa7\xba\xfa\xb2\x49\xd9\x06\xd3\x25\x69\xf6\x89\x3c\x57\x7c\x6b\x11\xcb\x75\xbe\x31\xcb\xf5\xfc\x08\xae\xca\x81\xfb\xf9\x52\x59\x95\x03\xf7\x4b\x25\x89\x2a\x07\xee\xca\x81\xbb\x22\x89\x9e\xb5\xff\x48\x16\x3a\xf7\xb5\xc7\x73\x32\x35\xf5\xb4\x8f\xb4\x42\x44\x62\x05\x8a\x70\x98\x15\x2b\x26\x72\xe6\x69\x58\xdb\x27\xed\x35\x72\x60\xed\x2a\x17\xec\xe3\x7e\x8d\x8e\xa3\xc6\x5f\x87\x01\x93\x95\x06\xb8\x45\xd8\x56\xa9\x9c\xb8\x9f\xab\x13\x37\x7d\xb9\x59\x8f\xed\x4f\x5f\xbe\x34\x57\xba\x6a\xdb\xda\x14\x00\x5d\x70\xd5\x8e\x5a\x2c\x0f\x97\x42\x6d\x0a\xf4\x14\xe2\x20\x83\x2a\x0f\x94\x74\x5e\xb0\x6e\xac\x27\x58\xaf\xf2\xa3\x5e\x57\x76\x2e\xe3\xf4\x00\x87\xb0\x03\x9b\xb0\x05\xaf\xe0\x08\x3e\xc0\x3b\x78\x01\x2f\xe1\x17\x78\x0b\xcf\xe1\x0d\xfc\x06\xaf\xe1\x67\xf8\x15\x7e\x84\x9f\xe0\x4f\xf0\x17\xf8\x07\xfc\x13\xfe\x9c\x2c\xba\xdf\xb8\x13\xec\xb7\x97\x2a\x71\xff\x9e\x12\x1c\xd7\xa4\xe8\x51\x0e\x7b\x2e\x13\x1f\xe9\x88\x16\x8b\x37\xa0\x90\xa3\x8f\x68\x77\xca\xc0\xb6\xef\xa1\xa7\xbd\x79\x07\x5d\xed\xcd\x7b\x68\x45\xbb\x3c\x16\x0e\xa3\xaf\x5e\x87\xb6\x86\x24\x3c\xf0\x87\x37\xc0\xd3\x80\xae\xd9\x35\x07\x3d\x04\x40\x55\x6b\xa6\xeb\x20\x7c\xcc\x3a\xb5\x49\xe8\x0f\x80\x4e\x8f\x3f\x15\x62\xa9\xca\x61\x3b\x06\xd9\x31\x3f\xe0\x2e\xd5\x0f\x4c\x5a\x0c\xd5\x47\x17\x0f\xc1\xd2\xc2\x65\xcf\x72\x74\xdb\x9e\x3f\x12\xe9\x34\xca\x1b\x6c\xd7\xe8\x90\x17\x8b\xe8\x2f\xa0\xc6\x57\x5a\x3d\xe0\xb2\x2d\xd8\x5a\x72\x5b\x01\x9e\xa9\xa7\xab\x1d\x7e\x7d\x35\x6a\x87\x5f\x23\xb5\x43\x7a\xbe\xd6\x57\x3c\x98\x88\x3e\x4c\xe8\xa1\xfd\x69\x1f\x7e\xdd\xb5\xf6\x21\xee\xe9\x87\x43\x02\xce\xff\xd9\x29\x70\xfe\xf7\x41\xd8\x80\xfc\x2b\x05\xef\xff\xb5\x55\x78\x8f\x50\x85\xef\x0b\xf1\xbd\x87\x44\x80\xef\xa1\x5d\x22\xfc\x00\x49\x20\x3e\xcb\x76\x26\xc7\xf8\xbf\xe5\x63\x7c\x92\x80\x96\x07\xf9\xa4\x60\x4f\x28\x9f\xcc\x64\xb4\x8a\x3d\xb4\x0f\x9c\xef\xa2\x0a\xe8\xbf\x60\xa0\xbf\x9d\x4c\x43\x16\x62\x3e\x1d\xe5\x72\x0a\x6d\x96\x2f\x68\x65\x06\x22\x56\x4d\x12\x11\x85\x4f\x6a\xe1\x2f\x0a\x8d\xf7\x56\xb6\x77\xbf\x44\xef\x3d\x79\x2c\xed\xc9\x93\x9a\xa4\x70\x92\xb4\x6b\xca\xa7\x7a\x2c\x2f\x9e\x97\x88\x97\xd7\x95\x3f\xc1\x20\x55\x4c\xd2\x73\xaa\x70\x2a\x2b\xec\xcb\x1b\x68\xc8\x8b\x67\xe9\xa8\x22\xc3\xf5\xed\x1e\x14\x15\x76\x04\x83\x06\xa0\xdc\xa0\x40\x57\x54\xd8\xcc\x54\x5c\xfb\x37\xba\xa3\xf7\x91\xf9\x71\x7e\x71\x77\xa9\xa8\xf0\xe7\x57\x43\x29\xfd\x2b\xd7\x30\x01\xa1\x1c\xcb\x84\xff\xec\xca\x32\xe1\x07\x80\x4f\xe8\x75\x4c\x13\x48\xa0\x90\x2b\x48\x0e\x74\x15\xd2\xfb\x58\x6a\xaa\x51\xa6\x94\x8f\xce\xf1\x90\xad\x65\x9a\x53\xc2\xc3\xdc\x65\xaa\x5b\x6e\xe8\x19\xe8\xb6\xa5\xc0\x8b\xbc\x3a\xe2\xfe\x72\x29\x6b\x38\xb0\x1c\x1d\x37\x8c\x6f\xff\x52\x78\x01\x69\xe3\x36\x73\x49\xd3\x43\x06\x32\xb1\x50\xa2\xc0\xf3\x9c\xfe\xa9\x66\xf8\x26\x53\x1b\x91\x65\xdf\x32\x35\x9f\x51\x5f\x37\xe6\x78\xb2\xae\x73\xea\x14\xf8\x39\xdb\x5b\x1c\xdf\xfb\x6b\xa6\x8e\x26\x4a\x32\xcf\x03\x05\x7e\xcc\x54\xd2\x5c\xbc\xa4\xf2\x53\xce\x9d\x2c\x05\xd2\x4f\x99\xea\x54\x86\xa4\x5f\xb2\xd5\x24\x7e\xc9\x1f\xd9\x79\x8b\x37\x02\x5f\x81\x7f\x46\xd5\x39\xf6\x23\xc2\xd7\x2f\x5a\x91\x88\x9e\x53\xec\x33\x44\x4e\xe0\x59\xc8\x27\xdf\x42\x0d\x8f\x63\xb1\x78\x5c\xaa\xa2\x21\x49\x0c\x2f\x7e\x07\x08\xfe\x4d\x85\x8e\x16\xb4\xdf\xdd\x43\x8c\xa9\xde\x47\xeb\x5e\x41\x0f\x01\xf2\x1c\xdd\x3e\xf5\xc9\x0b\x65\xd4\x83\x32\x0a\xbb\xc8\x73\x50\x80\x68\xee\x7b\x62\x75\x02\xa3\x21\x5f\x99\xf4\xcb\xce\x19\xee\x1b\x32\xac\xf4\x93\x51\x9b\x95\x7f\x4b\x6c\x56\xfe\x2d\xb3\x59\xb9\xd2\x5c\x04\x40\x4b\xfb\x59\x12\xa2\xa7\xb4\xaf\xd7\x08\x37\xde\xca\x64\x4b\x2b\xcd\xeb\x3e\x64\xda\x4d\xc5\xe6\x29\x4d\xef\xde\x65\xdb\xe7\xf7\x8f\xf2\xa6\x30\x17\x99\x0e\x92\x1d\xa8\xbc\x35\xcc\x65\x5e\xeb\xd4\x85\xaf\xb4\x45\xcc\x17\xd9\xf4\xf0\xbb\x60\x79\xdb\x98\xdb\xc2\x2e\xe8\x73\xf8\x65\x3b\x39\xcf\x74\xc2\xef\xc4\xed\x5e\xd9\xf6\x6f\x72\xde\x03\xb3\xf2\x99\x94\x6d\xff\x5b\xa6\xfd\x58\x75\x62\x96\x6d\xfb\x3a\xd3\x76\x72\x9e\xb4\xc7\x65\x5b\xff\x9c\xd3\xba\x02\xdb\xf3\xb2\x6d\x7f\xcd\xce\x7a\x92\xb3\xa2\x5b\xb6\xf5\x8f\x99\xd6\xb9\x53\xb1\x3d\x28\xdb\xfc\xa7\x4c\xf3\xdc\xb9\xda\x9e\x96\x6d\xfe\xa7\x9c\xd1\x47\xc9\x09\xfb\x65\x3b\xf8\x25\xd3\x41\x3a\xfb\x61\xa3\x6c\x07\x7f\x64\x3b\xa0\xd1\xcd\x66\x65\x5b\xfe\x33\xbb\x1b\xf0\xf2\x45\x7b\x58\xb6\x83\xcc\x59\x28\x48\x24\xed\xce\x6a\xb3\xbf\xa2\x06\x54\xd8\xe2\x8d\xff\xb2\xdd\x25\xd2\x44\xbb\xb9\x71\x57\xf1\xcd\x42\x37\x2d\x5e\x15\x6a\xa1\x42\x5d\xe8\x68\xba\x5a\x09\x9a\xdc\x14\x06\x96\xed\xbf\xb5\xfc\x9f\x5c\xdb\x44\xde\x56\xf4\x9e\x47\x69\xc7\xc0\x38\xb8\xd6\x0b\xd5\x66\x8e\x0e\x49\x0d\xf2\xb0\x53\x35\xc8\xdd\x41\xa8\x41\x2e\x52\x6a\x90\x9c\xb0\x59\x4f\x54\x83\x5c\x56\x5a\x90\x42\x2d\xc8\xb9\xa8\x04\x39\xdf\xa5\x0e\xe4\x8b\x44\x05\xf2\xa5\x40\x03\x72\x95\xaf\x01\xb9\x15\x14\x20\xb7\xfb\xd3\x7f\x9c\x73\xbb\xea\xf9\x3e\xb4\x1f\x37\x95\xf2\xa3\x52\x7e\xe4\x28\x3f\x7e\x41\x73\xaa\xfd\xf8\xf6\x3d\x95\x1f\x31\xcd\x1d\xca\x8b\xa5\xca\x0a\x51\x03\x11\x5f\xbd\x89\x72\x41\x85\x66\x86\x03\xc7\x73\xa0\xc2\xd6\xab\x21\xbe\x2f\x22\xe2\x5b\x4f\x88\x6f\x22\x31\x6a\x97\x40\xe7\x78\x6f\x3d\xe6\xbd\x59\x34\x4e\x7d\xeb\xbc\xf7\x08\xdc\x02\xfc\x01\x72\xb4\xb7\x95\x4f\x7b\xcf\xe1\x2d\x61\x33\xc9\x5d\x2a\x24\x2f\x0e\x76\x85\x42\x9e\xf5\x1a\x08\x75\xb7\xfa\x18\xf9\x13\xdd\x40\x0a\x9c\x0a\x55\x9f\x5d\x63\xc4\x00\x59\x5f\xa8\xfa\xc9\xd6\xfb\xbe\x02\x1b\x42\x31\x8b\xee\x33\x13\x8a\x53\xe0\x71\x28\x54\xa6\x80\x5f\x47\xa8\x6c\x21\xe6\x61\xd4\x64\x15\x1c\x6b\xab\x43\xe0\x45\xac\x6d\x2c\xfd\xcb\x09\x50\xa2\x29\x8a\xb8\x4c\x4a\xd2\xfe\x82\xe6\x8b\x85\xa2\x30\xdf\xbd\xbb\x14\x0f\xea\x91\x4d\xf2\x0e\x04\xd0\x55\xa1\x9e\xe2\x41\xe7\xda\x0d\x00\x63\xad\xb5\x0b\x1a\xb4\xab\xdd\x80\x31\xdf\x2e\x79\x99\xe5\x69\xd0\x81\xd8\xee\x76\x59\xd0\xa9\xd8\x3c\xb7\xa4\xca\x53\xa0\x7d\xb1\x75\x6e\x55\x96\xa7\x40\x1b\x62\xeb\x6c\x61\x97\x27\x3f\x67\x62\xcb\x5b\x8b\x7c\x35\x14\x5b\x4e\x73\x33\xa5\xe9\xce\x8e\xd8\x7e\x9a\x9a\x29\x4d\x77\x36\xc5\xf6\xe3\x8f\xbc\x3c\xd5\x29\xb4\x9c\x6c\x0b\x6d\x73\x35\x93\x21\xbf\x55\x85\x63\x9e\xc7\x18\xf3\x3c\xc6\xb7\x42\x1a\xc3\xa1\x19\x87\xb7\x96\x15\x6b\x5d\x2b\xed\xa3\x1c\x39\xfb\x85\xb2\x17\x37\x87\xc4\x5e\x7c\xdb\x29\x7b\x71\x7d\x10\xec\xc5\xe7\x14\x7b\xf1\x79\xab\xec\xc5\xd7\x8a\xbd\x28\x64\x2f\x7e\x12\xd9\x8b\x9f\x76\xc9\x5e\x7c\x94\xb0\x17\x1f\x0b\xd8\x8b\xf3\x7c\xf6\xe2\x93\xc0\x5e\x7c\xda\x1f\x7b\xf1\x13\xb7\xab\xfe\xb4\x0f\xf6\xe2\x97\x8a\xbd\xa8\xd8\x8b\x15\xa6\x9b\x7f\xec\x22\xb5\xd7\x4e\x39\x8d\xb8\xd8\x4f\x1b\xfa\xf5\xd2\x3f\x27\x62\x72\xb1\xd4\xcf\x71\xfa\xe7\x3c\xc3\x6c\x5c\x0c\x90\x31\xf2\x6b\xed\x7b\x05\xb2\xbf\x2f\x3c\x2b\xb0\x0c\xdd\x8e\x0b\x9a\xba\xef\x13\xab\x4b\xf6\xfb\x77\xdd\x73\xe8\xe3\x75\x0b\x9a\xc3\x38\xab\xa8\x76\x5a\x58\x7b\xfb\x6a\xa8\x96\xcf\xb9\x36\x86\x5f\x73\x4c\x0c\xbf\xed\xca\xc4\xf0\x06\x7c\xda\xc0\xc2\xb0\x01\x3f\x11\x0a\x82\xdc\xc5\xec\x0b\x67\x42\x19\x8f\xac\x87\x42\xdd\xb9\x69\xe2\x17\xa1\xc0\x8e\x50\x71\x4b\x70\x42\x53\x28\x4d\xac\x11\x5a\x42\x4d\x0a\xef\x5d\x09\x95\x29\xb0\x36\x12\x2a\x69\x86\xaf\x07\xf1\x16\x52\x7a\x27\x94\x7e\xd1\xfb\x7d\x64\xb2\x41\x23\x5f\x81\x17\xe2\x00\x69\x1e\x35\x5f\x81\x97\xe2\x00\xc9\xc2\x56\xe0\x17\x56\x9e\x63\x6a\xd7\x0a\xf4\x20\xf4\x33\x94\x8d\x3f\xb3\xb0\x4c\xf3\xe6\x9d\xfa\x68\xe8\x3e\x22\x3b\x3d\xa1\x6c\xd2\x9f\x6b\x3d\x32\x7d\x8e\x3e\xdf\x23\xd9\xd5\xec\xdb\x8d\x2e\x9e\xb1\x4f\x59\x7a\x2d\xfb\xee\xa3\x6b\x27\x6c\x1b\x38\x62\x5b\x73\x54\x8e\xc6\x93\x60\xae\x2c\x63\xf3\x3b\x71\x17\x91\x5b\x0c\x72\xfd\xd4\x7a\x96\x1d\x20\x2f\x7d\x24\x8b\x4f\x83\x25\x9a\x1a\x9d\xa1\xa5\xaa\xb2\x55\x2e\xf4\x19\x6f\x54\xa5\xba\x8c\x9e\x73\x9d\x1e\xa3\xad\xb0\x5c\x8f\xd1\x5b\xc8\xe9\xf1\x5e\x3d\x39\xb9\x96\x18\x26\x5e\xcb\x0c\x13\x1b\xda\x2f\x00\xf4\xb5\xdb\x5d\xa4\x0e\x9c\x69\xbf\x80\x7e\xc6\x2c\xb1\x34\xcf\x37\x14\x9b\xdd\x6e\xc6\xc0\x8e\xd8\x7c\xbc\xf1\x94\xe7\xfa\x9a\x62\xdb\x74\xef\x2a\x4f\xf3\xb5\xc4\x86\x39\x63\xac\xd2\x2c\xdf\x95\xd8\x78\x9a\x31\x2b\xcd\xf5\x8d\xc4\xf6\xd3\x8c\x59\x69\xc6\xef\x41\x6c\x9f\x65\x6a\x2c\x4d\xf5\xdd\x65\x06\x4e\x1b\x2e\xcd\xf1\x5d\x88\x0d\x67\x4e\x93\xf2\x5c\xdf\x65\x66\xc9\xc4\x07\x52\x79\xbb\xc6\x2f\x99\x25\xc3\xce\xb4\xf2\x46\x8d\xe2\xa8\xd9\x29\xd8\x9e\xaf\x66\x28\x65\x37\xaa\xb0\xcf\xf3\x93\xd2\x61\x27\x87\x53\xbb\xbb\x61\x2f\x42\x03\xeb\xf4\x16\x1f\x4b\xed\xc1\x93\x3a\x8b\xee\x5f\xa7\xaf\xf8\x40\x6a\x4f\x9f\xd4\x57\x22\xdb\xa7\xfa\xea\xf3\x2c\xef\x1f\xc5\x2c\x6f\xa4\xea\xd8\x2a\xcf\x7b\x94\x0e\x46\xc5\xd8\x86\xee\x4b\xe5\x70\x07\x87\xc4\xe1\x4e\x77\xca\xe1\xa6\x72\xe0\x83\xfe\x56\xd9\xd1\x46\xc5\x8e\x16\xb2\xa3\x1d\x91\x1d\xed\xec\x92\x1d\x9d\x49\xd8\xd1\x59\x01\x3b\xda\xcd\x67\x47\x87\x02\x3b\x3a\xdc\x1f\x3b\xda\xe1\xf6\xab\xce\x3e\xd8\xd1\x66\xc5\x8e\xbe\x60\x76\xf4\xb6\xd5\x3c\xbf\xb8\x62\xfc\xe8\x46\x54\x29\x71\x07\x4a\x71\xa5\x51\x09\xd7\x26\x67\xbc\x40\xb8\xa9\x56\x39\x1a\x35\xe6\x34\xa5\x34\xea\x4a\xb7\x6e\xe2\xd0\xbd\x0e\xd5\xba\xa2\xa1\xc7\xa6\x6b\x5b\xc6\xfc\x92\x5e\xe4\xd7\xdb\xf7\xf0\xce\xb5\x11\xf7\x7b\xb9\x24\x61\xa3\x5f\x0b\x09\xd9\x97\xc4\xce\x6b\xe4\xc4\xce\x9b\xee\x2a\x76\xde\x00\x0c\xd7\x8b\x9d\x47\xe8\x0c\x03\x0e\x09\x99\x46\xee\x8a\x13\x1a\xfa\x42\x69\x02\x9b\x7b\x42\x4d\xca\x35\x71\x92\xa9\xb4\x11\xf3\x1e\x32\x85\xaa\xf3\x8b\xcf\xbe\x02\xc7\xac\x34\x27\x40\x9f\xa1\x35\x01\x08\xb5\xf9\x2e\x58\x18\x5f\x6b\x82\x70\x17\x29\x06\x7b\x62\xc3\x1c\xe7\x50\x9a\x85\x99\x88\x8d\xa7\x5d\x43\x4b\x33\x31\x66\xb6\xfd\xf8\x15\x96\xa7\x63\xc6\x62\xeb\x74\x15\x94\xa7\x62\x42\x1e\x58\xb5\x0a\x81\x95\x6b\x99\xc6\xe9\xc4\x73\xa7\x16\xb5\xe0\xd9\x89\x1d\xcd\x51\x5a\x36\x66\x72\x4b\xe3\xa5\xe2\xac\xd9\x21\xe1\xac\xe1\x4e\x71\x56\x27\x85\xb3\x72\x24\xd5\x27\xe2\xac\x66\x85\xb3\x0a\x71\xd6\x48\xc4\x59\xa3\x5d\xe2\xac\x96\x04\x67\xb5\x0a\x70\x56\x23\x1f\x67\x5d\x09\x38\xeb\x6a\x7f\x38\x6b\xc4\xed\x57\xa3\x7d\xe0\xac\x87\x0a\x67\xbd\x60\x9c\x55\xce\x0a\x85\x22\x2b\xbc\x28\xee\x9e\x81\x1d\x4a\x3a\x59\x7c\xb6\xd8\x48\x1b\x8d\xf4\x5f\x0d\x0c\xea\x48\x60\x50\x33\x07\x06\x0d\x77\x05\x83\x66\xe0\x6a\x03\x18\xd4\x83\x57\x04\x88\x90\xbb\x62\x18\x34\x11\x4a\x79\x8d\xaa\x29\xb9\x83\x71\xf6\x63\xa1\xea\x17\xcb\x21\x3e\x35\xe9\xd2\xf3\x30\x18\x7c\xbd\xfb\xac\xc0\xae\xd8\x8b\xe5\x4f\x6c\x7d\x4e\x87\x30\x10\x2a\xa9\x8e\x6e\xca\x4a\x73\x70\x53\x4f\x7b\x00\xc0\xd7\xfa\xbb\xc0\x4d\x13\xed\x01\xf8\xbb\xc0\x4d\xa6\xd8\xf0\x76\xf5\xd7\x63\xd9\xb8\x23\x25\x4b\x69\xdc\x34\x17\x5b\xa7\xef\xbc\x3c\x64\xea\x8a\x0d\xc7\xcb\xa6\x3c\x6a\x1a\x64\x66\x9c\x5f\x79\xe5\x15\xd8\x53\xb1\x7d\xa6\x60\x2e\xad\xb9\xf6\x79\xb8\x77\x57\x08\xf7\x26\x84\xa2\xfa\xfe\xfe\x12\x47\x69\x87\x68\x26\x51\xdd\xbe\x54\x04\x78\x7e\x48\x08\xf0\x66\xa7\x08\xf0\xdb\x41\x78\x4b\x5c\xa7\x70\xea\xf5\x56\x71\xea\xe7\x0a\xa7\x16\xe2\xd4\x4f\x22\x4e\xfd\xb4\x4b\x9c\xfa\x55\x82\x53\xbf\x16\xe0\xd4\xdb\x7c\x9c\xfa\x51\xc0\xa9\x1f\xf7\x87\x53\x3f\x71\xbb\xea\xa7\x7d\xe0\xd4\x9f\x2a\x9c\xfa\xfa\x70\x2a\xaa\xdd\x9c\xdf\x9e\xff\x7c\x75\x73\x75\xfb\xa5\x73\x7d\x99\xe0\xd6\x74\xb1\xf2\x8e\xfd\xef\x54\xf2\x1f\xf6\xbf\xf7\xca\xda\x4e\x17\xbf\xec\x01\xec\xae\xa7\x44\x7c\x5a\xa4\xed\x12\x21\xb6\x25\x11\xb6\xe5\x0e\x1e\x9b\x05\xad\x28\x76\xf8\xd8\x6c\x74\x73\x59\x7f\xab\x6e\x05\x78\xc7\xc4\x67\x8c\x8a\x37\x9e\x2f\xd6\x18\x01\x95\x06\xc3\xce\xc4\x91\xbe\x54\x54\xf8\xe5\xd5\x70\x09\xd7\xb9\x7e\x1d\x9f\x73\xfc\x3a\x6e\x76\xe5\xd7\x71\x0e\x3e\x6e\xe0\xd7\x31\x85\x1f\x09\x44\x27\x77\x31\xbf\x8e\xbe\x50\xc6\x23\xdc\x86\x50\xc7\xc1\xd3\x99\xa4\x4a\x81\x43\xb1\x31\x5e\x13\xd8\x11\x2a\xef\x42\x1b\xf9\x0a\x6c\x0a\xc5\xbc\x37\x48\xba\x46\xf0\x06\x49\x57\x0a\xde\x20\x79\x0f\xe5\x2b\xf0\x41\xa8\x1c\x33\xa7\x90\x74\x69\x80\xc6\x13\x5b\x0f\x90\x02\x2f\xa4\xc3\xa0\x43\xbc\x64\x75\x39\x7e\x1f\x96\xff\xb3\xed\x76\x75\x9b\x46\x25\xa4\x09\x81\xa5\xfe\x04\xeb\xed\xce\x1a\x73\xe2\xb8\x66\x31\x8d\xbf\x49\x5c\x07\xbe\xc9\x5c\x07\xa6\xda\x4f\x00\x0c\xb4\x2f\xbb\x20\x5f\xfa\xda\x4f\x60\xb0\x7d\xd7\x81\x86\xd8\xec\x76\xa9\x97\x99\xd8\xfc\x56\xa9\x97\xa1\xac\xf5\x6d\x50\x2f\x9d\xcc\xac\xa4\x74\xed\xa5\xe9\x97\xa6\xd8\x3e\xfb\x48\xcb\x13\x2f\x2d\xb1\x65\xce\x04\xa1\x34\xf9\x72\x25\x36\xbe\xe5\x40\x21\x23\xb1\xfd\x2d\x07\x0a\x79\xc8\x5f\xec\x5b\x71\x20\xb8\x13\xdb\x67\xac\x57\x69\xe7\x81\x0b\xb1\xe1\x64\xdb\x2c\xef\x3e\x70\x29\x7f\xab\x6c\xd1\x94\x0e\x8b\x2c\x34\x2e\xdb\xab\xd7\xf1\x21\x58\xd5\x88\x0a\x07\xbc\xbd\xfd\x80\xe7\x09\x7f\x29\xe6\x09\x3d\xf7\x61\xa7\x34\xe1\x51\xda\x8a\x96\x89\x7d\xc3\x97\x4a\x08\x76\x0e\x89\x10\x6c\xee\x94\x10\x4c\x19\x05\x80\xd6\x56\xa9\xb6\xab\x8a\x6a\x2b\xa4\xda\xee\x44\xaa\xed\x6e\x97\x54\xdb\x48\x42\xb5\x8d\x0a\xa8\xb6\x61\x3e\xd5\xf6\x20\x50\x6d\x0f\xfb\xa3\xda\xee\xb8\xfd\xea\x6e\x1f\x54\xdb\x45\x45\xb5\xbd\x3e\xaa\x6d\x5d\x93\x10\xd7\x44\x90\xb9\x68\x46\x7c\xd9\xe5\xa1\x19\x87\xe4\x06\x29\x99\xbd\x1a\x9e\xa7\x25\xb1\x19\xb9\xca\xb1\x19\x69\xee\xca\x66\xa4\x03\x1e\x36\xb0\x19\x99\xc0\x07\xc2\x47\x90\xbb\x18\xc3\x63\x0a\x65\x3c\x90\x1e\x0b\x75\x1c\x0a\x9e\x0b\x55\x6c\x41\x53\x24\xdb\x95\x57\xe2\xee\x06\x62\x93\xc4\x6f\x7e\x2a\xde\x10\xa3\xbf\xbe\xbc\xa9\x26\x15\x7e\x1b\xac\x36\xc7\xaa\x64\xa2\x5d\x00\xd0\xd3\x66\xbb\x20\x36\x4c\xed\x02\xf4\xb6\x4f\x6c\x8c\xc5\x66\xb7\x4b\x6c\xcc\xc5\xe6\xb7\x4a\x6c\x74\xc5\xd6\x53\xab\xa2\x3c\xbf\x31\xc8\x69\x9f\x4c\x7d\x69\x76\x63\x9a\x99\x1b\x1a\xd3\xa1\x34\xb9\xd1\xcf\x0c\x7b\x8b\xe4\x46\x23\x67\x4e\xd8\x17\x52\x9e\xdd\xe8\xf1\x90\xf4\xb2\x10\x92\x7a\xae\x5d\x05\xfa\xac\x02\x7d\x7e\xff\x40\x9f\x95\x51\x48\x65\x14\xb2\x7e\x08\xcd\xca\x28\xa4\x32\x0a\xa9\x90\xea\xfa\x21\x34\x5f\xbe\x35\xc7\x8a\x3b\xda\xf7\x19\x23\x8e\xb5\xee\xf0\x37\xbe\x63\xad\x7c\x25\x71\xb1\x29\x2f\x1e\xcb\x8b\xe7\x69\xa4\xde\x95\xbf\x8d\xd7\x13\x80\xf3\x5a\x02\xe0\x3f\xe7\x00\xf8\x6f\xbb\x02\xf0\x37\xc4\x44\x63\x5d\x00\x1f\x99\x68\xdc\x48\x4c\x34\x6e\x0a\x4c\x34\x6e\xf2\x4d\x34\x6e\xa4\x26\x1a\x37\x45\x26\x1a\x51\x25\x09\xa6\x60\xf1\x56\x1a\x51\x4d\x84\xcb\x4c\xe4\x04\x56\x40\x2e\x69\x89\xfd\xb9\x66\xaa\xfe\x4a\x6c\x22\xc6\x48\x23\xa1\x26\xa5\xbd\x7d\x10\x2a\x53\xaa\xd7\x3b\xe9\x9d\xb4\xd5\x8b\xdc\x69\xf3\x13\xc3\x8d\xa8\xf2\x93\xee\x0f\x14\xf8\x45\x34\xe7\x70\x64\x66\x14\x3b\x89\xc0\x58\x99\x51\xbc\x64\x33\x8a\xe4\x43\xda\x85\x25\x45\xf6\x5b\xdc\x81\x49\x85\xf8\x39\xef\xc0\xaa\x82\x63\x4d\xb6\x6f\x52\x91\x36\x09\xd9\xbe\x49\x45\xda\x24\x64\xfb\x96\x15\x29\xe3\x87\xed\xdb\x56\xa4\x2d\x4e\x4a\x1b\x57\x7c\x11\xdb\xa7\x1b\x6c\xf9\x74\xd3\x1b\xd8\x4f\xf8\xf4\xbb\x38\x8d\x28\x89\x7d\x10\x57\xf0\x1c\xde\xc0\x6f\xf0\x1a\x7e\x86\x5f\xe1\x47\xf8\xe9\x88\xc7\x65\x5c\x6e\x85\x17\x4a\x64\xfd\xc2\x75\x9b\xc2\x94\x3d\x40\xa4\xa8\x9a\xe5\x53\x69\x0a\xa9\x8c\xfc\x38\xfe\x19\x37\x00\x90\xca\x73\x3a\x22\x29\xf3\x46\x1c\xb4\x30\x25\xc7\x56\x04\x6d\xb9\x86\x69\x87\x3d\xcf\x1d\xc7\x3d\xfc\x99\xee\x47\x7d\x94\x0a\xb7\xd7\xce\x54\xb7\x2d\xf3\x58\x0f\x02\x34\x9e\x04\xc7\x81\x7b\xec\x4f\x3c\xa4\x9b\xc7\x8e\xeb\x9c\x92\x3e\xbb\x76\xc2\x7c\xd5\xfe\xc7\xb9\x76\x8e\x5d\xcf\x44\x1e\xbe\xb4\x8b\x8e\xa3\x4b\x20\xb9\x41\xc7\xe3\x38\xa6\x3c\x86\x4f\x05\xe5\x81\x3e\x45\xc7\xfa\x71\x5b\x78\x8c\x7b\xa0\x1e\x8f\x51\x30\x70\xcd\x9a\xa2\x2e\x01\x37\xaf\x7f\xa4\x78\xae\x35\x67\x16\x89\xd3\x1a\x09\xfc\x12\xb6\x8b\x8e\x64\xb1\x78\x03\x0a\xa7\x96\x35\x7d\x44\xbd\xca\xda\xf7\xd0\xd3\xde\xbc\x83\xae\xf6\xe6\x3d\xb4\x22\x10\x1a\x78\xf3\xd8\xf3\x4c\x87\xb6\x86\x24\x8f\xf9\xe1\x0d\xf0\x34\xa0\x6b\x76\xcd\x41\x0f\x01\x50\xd5\x9a\xe9\x3a\x48\x3d\x39\x01\x4e\x6d\x12\xfa\x03\xa0\x53\xb4\xae\xc2\x37\xc1\x62\xe1\x30\x79\x9c\xe0\x91\x0f\xb8\x4b\xf5\x03\x23\xb7\x42\xf5\xd1\xc5\x43\xb0\xb4\x70\xd9\xb3\x1c\xdd\xb6\xe7\x8f\x84\x4c\x5b\x2c\xf0\x06\xa2\x69\x76\x8d\x0e\x79\xb1\x88\xfe\xc2\xf3\xca\xae\xb4\x7a\xc0\x65\x00\xc7\x5a\x72\x32\x20\x9e\x29\xb2\x5a\xc8\xbf\x4f\x58\x2f\x26\xa2\x5f\x54\xe8\xa1\xfd\x2d\x9a\x3f\xe3\x37\xce\x3e\x28\x06\x09\xe3\x97\x8e\xb8\x6f\x10\x06\x2a\x7b\xab\x0c\x9a\xe5\x51\x90\x48\x65\x34\xcd\x3f\xe0\xe9\xfb\x88\x01\x53\xe8\x4d\x8a\xa6\x69\x8e\xb0\xa5\xe0\x77\xaa\xa5\x4a\x6a\x8e\x3e\x26\x92\xbd\x3e\x21\x37\x2c\x16\x4a\x0b\xd1\x7b\xcf\x52\x1f\x6d\x5d\x39\x8f\x00\x16\xbb\xf0\xed\xff\x03\x67\xf5\xaf\xd6\xe2\x5a\x75\x02\x70\x56\xff\xc7\xe2\xfd\xff\x5d\xfc\xf7\xdf\x54\x70\x56\xbf\xb0\xf5\xf1\x04\x99\x2a\x6d\xe1\x87\xb7\xb5\x00\xf9\x01\x70\xd4\x33\xfa\x6c\x11\x8f\x9d\xcc\x0e\x2d\x7f\x04\x74\x99\x04\x8b\x45\xf0\x4f\xc4\xd6\x19\x5e\x87\x81\x16\xff\x3a\xe2\xfc\x28\xa1\x97\xb2\xda\xff\xe0\xfc\x18\x10\x7f\x4a\xaf\xed\xdc\x6b\x88\x78\x53\x32\x6e\x2a\xe9\xe9\xb7\x43\x62\xf7\x7f\xdf\x29\xbb\xff\xeb\x41\x38\xa6\xfe\x90\xd2\x41\xfc\xb0\x55\x1d\xc4\x7f\x2a\x1d\x44\xa1\x0e\x02\x21\x51\x09\x81\xd0\x2e\xb5\x10\xff\x96\x68\x21\xfe\x5d\xa0\x85\xf8\x29\x5f\x0b\xf1\x2f\x41\x0b\xf1\xaf\xfd\x69\x21\xc8\x2c\x46\x0b\x18\xa1\x7d\xe8\x21\x02\x54\x29\x22\x2a\x45\x44\x81\xc9\x5c\x8d\xb7\x9b\xab\x45\xaa\x09\x07\x3d\x51\x37\xd1\x45\xb6\xeb\xf4\xfd\x2f\xae\x0a\x14\x6a\x2a\x21\xe8\x27\x04\xbd\x84\xa0\x6b\x10\xf4\x07\xeb\xa7\xf0\x4a\x3b\x47\xd6\x08\x3b\x9e\x3c\x53\xcc\xd6\xd4\xd8\xbf\x84\xfb\x17\xee\xd1\x6d\x4b\xf7\x93\xdb\xbe\xe8\x7d\x5f\x92\xbb\x5c\xbc\x8c\x64\xb4\x50\xe1\x78\xc5\x65\x09\x43\x97\x4d\x1a\x16\xa5\xb2\xe1\x73\x87\xc9\xd2\xda\xe0\x8d\x2f\x7e\x82\x6b\x62\x32\x22\x7a\x85\xae\xdd\x94\x96\x69\x2a\x9b\x5d\x4c\x78\xc4\xbc\x04\x63\x79\xe9\xcc\x64\xb9\x1d\x0a\x73\x94\x35\x0a\x6b\x67\x85\xb5\xc3\x35\x12\xb1\x25\x79\x1f\x3a\x6b\x5c\x9d\x64\x6e\x68\x6e\x92\xe4\x4d\x85\x9f\x5e\x8d\xa6\xe7\x87\x5c\x97\xdc\xff\xe4\xb8\xe4\xfe\xbe\x2b\x97\xdc\xdf\xc0\xbf\x36\x70\xc9\xbd\x82\xff\x22\x1a\x07\x72\x97\xa0\xdb\x19\x09\x75\x64\x17\xbb\x8e\xc9\xac\x07\x59\xb5\x02\xef\x84\x62\x6a\xe3\x76\x21\x94\x46\xbb\x0f\xbc\x14\x2a\x92\x8c\x66\xc2\x0d\x31\x37\x7b\x2b\xd4\x50\x5f\xb2\x73\xb1\x5b\x42\xd5\xdf\x08\xa5\x64\x2b\x83\xdf\x84\x52\x9a\x8b\xe7\x5a\xd2\x02\x53\x25\x7c\x96\x8f\x3e\x1a\xeb\x57\xc9\x23\x47\x75\x1f\x59\x5d\x8e\x87\xee\xd5\x43\x80\x3c\x47\xb7\x5b\x6e\xe8\x91\x84\x3a\x82\x7b\x2e\x59\x2c\xd1\x9a\x45\x4e\xe0\x59\xc8\xa7\x69\xf5\xf9\x3d\x69\xb1\x78\x5c\xaa\xd2\x3c\x60\x74\x61\xfd\x01\x10\xfc\x9b\x0a\x1d\x2d\x68\xbf\x8b\x17\x4a\xd0\x7e\x7f\x0f\x15\xc4\x06\x70\xea\x93\x11\x10\x5c\xbb\x54\xd5\xda\x58\x9f\xe4\xb7\x94\x34\xf1\xee\x1e\xe2\x76\x96\x6a\x5c\xf6\x0b\xf1\xdb\x6f\x21\xc2\xcf\xc4\x49\xcd\xca\x65\xa0\x63\xdf\xc3\x46\x89\xe8\x84\x7b\xd6\xc9\x47\x27\xdc\xb2\x59\x5a\xba\x5d\xa6\x88\xfb\x8e\xb9\xe1\xbe\x6b\xb2\xbd\xb8\xb3\x26\xf2\xf0\xae\xa3\xf7\xd1\xa6\x93\x99\x7e\x75\x6f\xf9\xf1\xd0\xa2\xbf\xbc\x7f\xf7\x2e\xb7\x9f\xf5\x67\x32\xbd\xaa\x36\xed\x67\x83\x69\x14\xd6\x7c\x6e\x4f\xf7\xea\xc9\xc9\xaf\x12\x07\xfc\x5f\x65\x0e\xf8\x57\x5a\x80\x00\x68\x69\x9f\x76\xa1\x3a\x1e\xe1\xc6\x5b\xb9\x4a\xde\xd2\x3a\xe4\x87\x4c\xfb\xc2\x49\x54\x5e\x8f\x7c\x27\xef\x62\x1b\x4a\xe4\x8b\x4c\xd3\xdb\xca\xe4\x77\x99\x69\x39\x3e\x55\xcb\xab\x90\xbf\x64\x1a\x8f\xf3\xb2\x95\xd6\x20\xdf\x66\x07\xbe\x45\x7b\xf5\xf3\x4c\xeb\xdb\x4a\xe2\x77\x93\x7d\x95\xfa\x76\xb4\xc5\xdf\x32\x2d\x53\x49\xa5\xbc\x9e\xf8\x3a\xd3\xf2\xcd\x96\x7c\xef\x3f\x4b\x67\x23\x32\xbe\x28\xad\x21\xfe\x9a\xb7\xba\xe3\x75\x58\x5a\x49\xfc\x51\xfa\x69\xc6\xed\x97\xd6\x15\x8b\xad\x67\x84\xbd\x75\xd2\xf6\x15\xb6\xa0\xc2\x16\xef\xdc\x9f\x99\xb1\x28\xe3\xe1\x1a\x29\xfb\x64\x37\xae\x68\x5e\x4c\x42\xd8\xdf\xb0\x17\x11\x8c\xae\xd1\x59\x92\x85\xb0\xf1\xa4\xce\x12\x2c\xbb\x46\x67\x5c\x32\xc7\xd9\x93\x7a\xe3\xb0\x70\x61\x77\xb9\xe2\x4f\x7b\xb8\x61\xbf\x79\x2d\x6d\x38\x80\x64\x9a\x3b\x25\x07\xb0\xe6\x84\xe7\x0b\x4c\xed\x66\xc9\x11\xe4\xbd\x84\x16\x6f\xc9\xe1\xa0\x75\x4c\x39\x9e\x83\x05\x07\xfc\x09\xfe\x02\xff\x80\x7f\xc2\x9f\xe1\x6f\xf0\x77\xf8\x2b\xfc\x01\xfe\xe7\x88\x57\x15\xc4\x3c\xfb\xbf\x5f\xaa\x55\xc7\xbf\x0e\x49\x81\x89\xd0\x4e\x35\x98\x01\x3a\x08\x15\xa6\x83\x52\x3a\x4c\x27\x47\x05\xf4\x44\x25\xa6\x87\x2a\x2d\x66\xa1\x16\x53\xcf\x68\x31\xf5\x9d\x6a\x31\x5d\x24\x51\x63\xba\xa8\x40\x8f\xf9\xef\x7c\x3d\xa6\x85\x04\x45\x26\x29\xd8\x93\x26\x53\xe7\x35\x99\xfa\x5e\x34\x99\x76\xa5\xc9\xac\x34\x99\xab\xf3\xc1\x84\x4f\xd5\x5c\x6e\x33\xe6\x47\xac\xa7\x0c\xe5\xc5\x65\xe2\xd6\x76\x5d\xd7\x46\xba\x93\xf1\x5e\x4a\xca\x4b\xb8\x2f\x25\xc5\xdd\x8d\x7d\xac\x06\x69\x9d\xec\x54\x4c\x7a\x93\xfa\xd9\x10\xc3\x9b\xa4\x7e\x0e\xd3\x3f\x25\xea\x3a\xd7\x71\x90\x11\x20\xf3\x77\x2b\x18\x30\xd2\x2a\x5d\xf8\xb3\x1e\xa0\x99\x3e\x97\xaa\xef\x6e\x90\x3f\xb8\x72\xf0\x07\x6a\x2a\x2c\x41\x87\x0a\x5b\xd2\xcb\x44\x15\x67\x52\x96\xa8\x39\x93\x32\x4e\xe8\xbe\x5a\xa9\x2d\x25\xc3\xae\x89\x80\x65\x94\x73\x5f\xd2\x1d\x7f\x5f\x82\x33\x1e\x72\xee\x4b\x20\x45\xea\x46\x6e\xa4\xff\x79\x35\xfa\x4a\x26\x8e\xc9\x14\x96\x1e\xca\xd1\x58\x32\xbb\xa7\x1d\xa8\x2c\xff\x05\xf0\x89\xbe\xb6\xce\xf2\x02\x12\x01\x40\x85\xf4\xbe\x58\xd9\x77\x99\x29\xe7\x79\xe8\x2f\xd2\xbb\x18\x5d\x75\x9b\xa9\xa4\xc9\x6a\xce\x33\xe5\xc2\xda\xbd\xc9\xb9\x20\x59\x6c\xdf\x72\xae\x88\x97\xf1\x75\xe6\x82\x88\xd9\xbe\x70\x43\x27\x50\xe0\xe7\x6c\x0b\xb2\xef\x1b\x7e\x2d\xbe\x8e\x6d\x0e\x1f\x33\x57\x25\xe4\xeb\xa7\x6c\x0b\xbc\xd7\xca\x4f\x99\xea\x94\xd3\xc9\x2f\x99\x6a\x4a\x62\xfe\x91\x9d\x79\xd7\x44\xbe\x02\xff\xcc\x54\xb0\x31\xfe\x9c\xa9\x60\x0f\x79\x41\x56\xb3\x02\x7f\xcb\x5c\x90\xe1\xd6\x7e\xcf\x0e\x96\x10\x9f\xbf\x66\xca\x29\x3d\xfc\x43\x54\x9e\xa3\xa9\x4d\x6d\x95\x45\x5a\x9c\xcc\x9c\x2f\x16\xd9\x0a\xf6\x3c\xb1\xc2\xe8\xda\xc1\xed\x17\x36\xcc\x0d\x60\xb1\xa0\x3a\x60\xbc\x48\x17\x0b\x45\x51\xd9\xd7\xf7\xcf\x44\x03\x85\xaf\xde\x54\xe9\x9a\xdd\xbe\x57\x69\x5c\x33\x87\xc0\x0a\x75\x6b\xe6\x20\xd9\x54\xd7\x2a\x39\x89\xa4\x1a\xf3\x77\xd1\xde\x12\x0b\x8b\xa4\x7f\xf2\x3e\x4e\x4e\x00\xe2\x7e\xa6\x0f\x1e\x15\x66\x95\x8b\x7f\x45\x92\xfe\xf3\x54\x87\x4f\xed\x9f\xb5\x97\xea\x9f\x95\x49\xfb\xcf\x55\x29\x3e\x75\x00\x51\x83\xa9\x11\x44\x85\x78\x08\xf7\xea\xc9\x09\x3e\x82\x32\x2a\x47\x5c\x98\xd5\x39\x5e\x68\x36\x02\xe0\x4e\xfb\xcf\x2e\x74\x8e\x97\xb8\xf1\xbb\x5d\xe4\x5c\xfb\x92\x69\x79\xbb\x2e\xab\xb7\xd2\x91\x6f\xcd\x67\xf5\x3c\xd3\xfc\xb6\xd2\xae\xdd\x64\x5a\x16\xc9\xea\xd2\x4a\xc7\x6f\x39\x5d\x70\x6c\x70\x69\xe5\xe3\x75\x4e\x1f\x09\xe5\x5d\x5a\x03\xf9\x39\xd3\x85\x70\xa2\x97\x57\x45\x7e\xcd\x3e\x85\x54\x26\x28\xaf\x9a\xfc\x58\xdc\x53\xa4\x27\x2f\xad\xa8\xfc\x94\xe9\x87\x53\x0a\x97\x56\x56\xfe\x94\x7d\x8a\x94\x3f\x6e\x69\x75\xe5\x2f\x99\x0e\xd2\x0e\xb9\xa5\x95\x95\x7f\x64\x3a\x60\x2a\xe2\xd2\x6a\xca\x3f\xb3\x3b\x12\x95\xcf\xda\x83\xb2\x4d\xff\x9c\x69\x3a\x5a\x2f\xd3\xb2\x4d\xff\x96\x69\x5a\x90\x11\xdb\xfd\xb2\x5d\xfc\x9e\xe9\x22\xab\xc1\x6d\x94\xed\xe4\xd7\xec\xc2\xa1\x0a\xfa\x59\xd9\x96\x7f\xc8\xb4\xcc\x0c\x21\x86\x65\x5b\xce\x8e\x98\x93\x8d\xd7\x51\x19\xe6\xde\xad\xc2\x3b\x5e\x47\x97\xdd\x47\xa9\x98\xbc\x8e\x52\x50\x76\xe3\x8a\xe6\x79\xa1\xb9\xdd\x7a\xc2\x63\xc4\x7a\xf3\x95\xdd\x88\x67\xe7\xd5\x13\x7a\x13\x19\x93\x35\x3b\x4d\x4e\xba\xd1\x93\x3b\x4d\xe8\x96\x35\x3b\xe5\x8e\xf0\x87\x27\xf7\xca\x71\x35\xa9\x6e\xef\x78\x55\x6e\xb8\x4a\x95\x4b\x78\x98\xef\xa9\xca\x4d\xd8\x94\x0b\x4e\x79\x70\xf1\x52\xd5\xb3\x97\x87\xa4\x9e\xfd\xb2\x53\xed\xec\x6d\x4a\xeb\x79\xbb\x55\xa5\xe7\x79\xa5\xf3\x2c\xd4\x79\x5e\x8b\x2a\xcf\xeb\x5d\x6a\x3c\x6f\x24\x0a\xcf\x9b\x02\x7d\xe7\x45\xbe\xbe\xf3\x9b\xa0\xee\xfc\xb6\x3f\x6d\xe7\x35\xb7\x5f\xe5\xc4\x3e\xdd\xad\xae\xf3\x73\xa5\xea\xac\x54\x9d\x2b\xa2\x47\x7e\x7d\x06\x7a\xce\xcd\x72\x1b\xc4\xc5\x25\xf2\x73\x6e\x16\xa4\x71\x2d\xbd\xe5\xdd\xab\xd1\x7f\xdd\x4a\x22\x33\x9e\xe7\x44\x66\xfc\xb2\xab\xc8\x8c\x97\xe0\xdb\x06\x91\x19\xbb\xf0\x1b\x51\x4f\x90\xbb\x58\x64\xc6\x81\x50\x46\x39\xd0\xa9\x50\xca\xf3\x97\x7d\xc9\x1d\x8c\x7b\x6c\x88\x55\xc4\x4d\x61\x26\x94\x7e\x44\x03\x7d\x6a\xb9\x9e\x02\x87\x42\xcd\x97\x2f\x9f\x15\xd8\x11\x0a\x3f\xbb\xc6\xe8\x12\xd9\xfa\x5c\x81\x4d\xa1\x8a\x4f\xb4\x99\xae\x11\x12\x6d\xa6\x2b\x85\x44\x9b\xc2\x9d\xcc\x76\xfb\x81\x95\xe7\x04\x52\xec\x6a\x9f\x01\x98\x6b\x77\xbb\x60\xa6\x07\xda\x67\x30\xdf\x7e\x20\xc5\xa9\xd8\x2c\xe3\xbb\x4b\xf3\xd1\x7d\xb1\xe1\x14\xdd\x5d\x9a\x8f\x6e\xc8\xc6\x1d\xb1\xdd\xa5\x39\xe9\x59\xa6\x75\xea\x5b\x53\x9a\x89\x1e\x8a\x0d\x27\xeb\xbe\x3c\x05\xdd\x11\x1b\x27\x9f\x4e\x79\xde\xb9\x29\xb6\xcb\x7d\x7d\xe5\x29\xe7\x96\xd8\xfa\x36\xc3\x25\x5e\x89\x8d\x6f\x39\x5c\xe2\x48\x6c\x7f\xcb\xe1\x12\x1f\x32\xe3\x8f\xbc\x48\x4a\x33\xcb\x73\x9e\xdc\xf8\x5a\xc8\x6d\x04\xee\x08\xad\x64\x36\xa0\x24\xd3\xa3\x6b\x5b\xc6\x5c\xe4\x3c\xa0\xc3\x4c\x87\x77\x65\xbe\x7e\xc4\x47\x79\x8a\x71\xc6\xef\x2f\x95\x17\xf9\xf5\x90\x78\x91\x1f\x76\xca\x8b\xfc\xe7\x20\x8c\xd6\x53\x71\x97\xc0\xbf\xb7\xca\xde\xfc\xab\x62\x6f\x0a\xd9\x1b\x27\x63\xb1\xee\xec\xd4\x62\x1d\xc9\x2c\xd6\x51\x91\xc5\xfa\xef\xf9\x0c\x4e\x20\x5a\xac\x07\x7b\xb4\x58\x77\x78\x8b\xf5\x3c\xc7\x8b\xdd\xb2\x38\x5e\x65\xb1\x5e\xd1\x38\x79\x34\xce\xb9\x61\x20\xdf\x77\xbd\x88\xce\x71\x91\x06\x9e\x2b\x71\x93\x98\x96\xfb\x39\xe5\xbd\xa7\x27\x0c\x99\xa4\x6d\xbd\xcd\x8d\xf9\x9b\xcd\x19\x9f\xf9\xc6\x77\x94\xb4\x86\x57\x4c\x3d\x40\x8a\x60\x13\x9f\xcc\x76\x5f\x4e\x65\x35\xe4\xc5\x33\x79\x23\xc3\xa7\xbf\x82\x8e\xbc\xc5\xac\xe1\x7c\x14\x50\x9f\xc6\xdc\xfa\xed\xd5\x10\x67\xff\x8e\x88\x33\x3d\xb1\x1b\x27\xf8\x40\xfb\x17\xd0\x39\xfa\x4c\x8f\xe9\xb3\x1f\xd8\x89\xbb\x75\xab\xf1\x5f\x01\x3e\x55\x35\x8b\xe7\xcf\xac\xa2\x48\x57\x01\xb5\xef\xa5\xf7\xa9\x90\xdf\x78\xe0\x28\x53\xcb\xd3\x20\x0f\x99\x5a\x8e\xc5\xb8\xcb\x54\x5e\x5f\x36\x29\x3b\x73\x91\xa9\x6a\x21\xc3\x43\x01\xee\xf1\x32\x53\xf7\x19\xf5\x75\x63\xae\xc0\x2f\xd9\x1a\x97\x68\xce\x6f\xb3\x83\xe4\xf3\x46\x9c\x67\xaa\xa9\xbd\xc7\x4d\xa6\x3c\x49\x07\xf1\x2d\x53\x77\xe7\xda\xb8\xe2\x5a\x32\xf4\x4c\x9a\x87\xcf\xd9\x79\x11\xb2\x34\x7c\xcd\x5c\xc1\xe7\x11\xf8\x98\xa9\xa5\x61\xfa\x3f\xe5\xdc\x15\xdb\xa1\x8b\xd5\x82\x1d\xba\x58\x8d\x3f\x2b\x05\xfe\x21\x7d\x8b\x0a\xfc\x33\x3b\x07\x21\x99\x83\x9f\xa3\x0a\xce\x24\x5c\x87\xc0\x8b\x4c\xc2\x2d\xff\x67\xdb\xed\xea\xf6\x8d\xee\xe8\x7d\x84\xd7\x67\x8e\x01\x37\xb5\xd6\x8e\x66\x7d\xb1\x68\xdf\xab\xb5\x9e\xe5\x98\xb2\x58\x49\xc7\xa8\x76\x7d\xa9\x69\x9a\x53\xbb\x39\xbf\x3d\xff\xf9\xea\xe6\xea\xf6\x4b\x87\x04\x26\xa4\x16\xb8\xff\x49\x19\xe0\x7a\x44\xbe\xf8\x0f\x08\xa0\xab\x42\x5d\x88\xf9\xe3\x91\x98\x3f\xbf\x49\x58\xce\xd2\x74\xe4\x08\x37\x9e\x72\xbb\xe7\xbf\xa6\xf2\xac\xe4\x43\xa6\xfd\xed\xd2\x92\x77\x99\xf6\xb7\xca\x4b\x5e\x64\x9a\x8f\xf7\x84\xf2\xdc\xe4\x65\xa6\xf1\x64\x57\x29\x4f\x4e\x7e\xc9\xb4\x1e\xed\x4b\xe5\x09\xca\xdb\x6c\xdb\x74\x67\x2b\xcf\x4e\x9e\x67\x17\x4c\x2a\xa7\x4e\x69\x86\xf2\x26\xd3\x01\xb3\xa6\x2b\xcd\x4d\x7e\xcb\xb4\xcc\xa5\xeb\x29\xcd\x4c\x5e\x67\x5a\x67\x3b\x7c\x79\x66\xf2\xb3\x64\x21\x66\x53\x01\x95\xb6\x7c\xfd\x9a\xfd\x56\xc5\x5c\x40\xa5\x6d\x60\x3f\x66\xfa\x48\xe5\xbb\x29\x6d\x08\xfb\x29\xd3\x3e\x4b\x48\x53\xda\x0e\xf6\xa7\x9c\x91\x47\xd4\x76\x69\x2b\xd8\x5f\x32\x1d\xa4\xb9\xf3\xd2\x16\xb0\x7f\x64\x3a\xa0\xe7\x75\x79\x0b\xd8\x3f\xa5\xbb\xfc\x36\x2c\x60\x7f\xce\x7e\x55\x54\x66\x68\x77\xca\x36\x2d\x36\x2c\x93\x32\x36\x0e\x8a\x23\x69\xa4\x28\x1c\x8e\x8b\x96\xaa\x7a\x54\xa0\x67\x98\xb8\xb6\xdb\x9f\xef\xd2\x88\x32\xc1\x12\x43\x8e\xbf\x1a\xbe\x54\xe5\x40\xe7\x90\x94\x03\xcd\x9d\x2a\x07\x5a\x29\xda\xbd\xb5\x55\xda\xfd\xaa\xa2\xdd\x0b\x69\xf7\x3b\x91\x75\xbf\xdb\x25\xe9\x3e\x92\x70\xee\xa3\x02\xca\x7d\x98\x4f\xb9\x3f\x08\x8c\xfb\xc3\xfe\x08\xf7\x3b\x6e\xbf\xba\xdb\x07\xdd\x7e\x51\xb1\xed\x15\xdb\x9e\xc3\xb6\x33\x09\x3d\x09\x13\x73\xf9\x0c\xac\x27\x13\xfa\xbc\x28\xe9\x45\x26\xd9\xc5\xec\xd5\xd0\xae\x2d\x89\xbd\xe2\x55\x8e\xbd\x62\x73\x57\xf6\x8a\x1d\xf0\xb0\x81\xbd\xe2\x04\x3e\x10\xee\x8c\xdc\x95\xd0\x87\x54\x00\x37\x85\x4a\x9e\xdc\x19\x0b\x75\x1c\x31\x33\x17\xaa\xc8\x2e\x68\xb8\xb6\x02\xbb\x42\xcd\x4f\x24\x16\x39\x32\x3f\xce\xcf\x2f\x3e\xfb\x0a\x1c\x08\xf5\x5f\x27\x7e\xe0\x21\x7d\xec\x2b\x70\x2a\x8e\xc5\x9d\x39\x71\x65\x5f\xa8\xa4\x98\xbf\xc1\x4a\x73\xcc\x0b\x27\xda\x05\x00\x3d\x6d\xb6\x0b\xf3\x42\x53\xbb\x00\x3d\x09\xe4\xde\x96\xfb\xfb\x58\x6c\x7f\xbb\xde\xef\x73\xb1\xf9\xad\x3a\xbf\x77\xc5\xd6\x93\x05\x52\x9e\xd3\x1b\x88\x8d\x8b\x6b\xac\x3c\xb3\x37\x15\xbb\xe0\x96\x69\x79\x66\xaf\x9f\x79\xb5\xfc\x4a\x2f\xcf\xee\x35\xc4\xf6\xb7\x15\x77\xbb\xc7\x43\xd3\xcb\x5c\x0b\x38\xab\x67\x21\xcf\x7f\x6b\x5a\xe6\xa9\xe5\xf8\xc8\x0b\x64\xf0\xf4\xad\x87\x1c\x13\x79\xa7\xc9\xf5\xd2\x3b\x33\xc8\x75\xe3\x23\x3b\xf7\x06\xf6\x20\x4a\x0a\xca\xbd\x79\x97\x17\xfa\x25\x7a\xf0\xe5\x52\x5d\xe7\xc9\xc3\x09\xd1\xb0\x3e\xe1\xc9\xd9\x9d\x07\xf9\xe4\x1e\xea\xa5\x1f\x99\x52\x11\x1e\xea\xc5\x8f\x2b\x5c\x7d\x90\x8f\x39\xb3\x6c\xfb\x94\xe4\x72\x75\xa5\xdc\x4b\xd1\x2b\x4e\xdd\x7b\x40\x4f\xef\xb9\x21\x3d\x7b\xb8\xa7\x4d\x6a\x91\x33\x4d\xfd\x0e\x03\xcb\xf6\xc9\x3d\x96\xd3\x7f\x3b\xd3\xed\x91\xcc\xaa\x35\x31\x4c\xe2\xa0\x9a\xf7\x52\xa9\x25\x77\xa7\x6c\x8d\x95\x62\x6b\xac\xad\xb2\x35\x7a\xc5\xd6\x14\xb2\x35\x86\xc8\xd6\x18\xbb\x64\x6b\x6c\x09\x5b\x63\x17\xb0\x35\x5e\x3e\x5b\x13\x0a\x6c\x4d\xb8\x3f\xb6\xc6\xe0\xb6\x00\x63\x1f\x6c\x8d\x1f\xed\x4a\xd1\xb6\x71\x6c\x39\xc7\xe8\xac\x80\x02\x66\xd4\xad\x20\x44\x89\x22\x16\x27\x54\x2d\xd5\x3a\x6a\x07\xf7\x9a\x03\x51\x39\xee\x81\x6c\xc6\x7e\xc4\x35\xe0\x35\xd7\xd3\x1e\x4d\xa3\xfe\xd8\x71\x89\xa2\xd5\xaf\x3f\x4e\xf4\x60\x50\x57\xde\xd6\x4d\x43\x59\x42\x16\x37\xdf\x97\x5c\x10\x55\xe1\xab\x06\xee\x4c\xd6\x84\x83\x31\xcd\x12\x46\x3b\x96\xac\x95\xb8\x4e\x59\xe2\x0b\x03\xe4\xb0\x7a\xc9\x95\x51\xa5\xb2\x84\xc8\xb4\x02\x59\x8f\xf1\x45\x1d\xcb\xc4\x2d\x52\x14\x2f\xb9\x92\x56\x90\xc0\x74\x91\x32\x44\x72\x55\xac\x27\x59\xae\x39\x15\x4b\x18\x46\x12\xbf\xe4\xba\xb8\x0e\x5f\xc8\xce\x38\xc9\x65\xac\x06\x5f\x14\xe8\x7d\x59\x43\xb8\x98\x8c\x3d\x9a\xbe\xbc\xd9\x4f\xe6\xf7\x6d\xdd\x71\x4d\xf4\xb6\x8e\xe7\x05\x0e\x90\x6e\x07\x03\x83\xb8\xb8\x48\x6e\xa5\xd5\xa7\xb4\x7e\xa3\x87\xc2\x47\xbc\x8f\x4c\x5c\x25\xbb\x96\x55\x9f\x92\x7a\x7c\xbd\x6e\x9a\x1e\xf2\x7d\xe9\xac\xc6\x75\xf8\x42\x0c\x45\x4c\x3d\xd0\x25\xd7\x45\x55\x64\x42\x1c\x37\xe8\xb9\xa1\x63\xe6\x4e\x08\x37\x0d\xe4\x72\x53\xda\x37\x29\x5f\xbd\xb2\x37\x9d\xc7\xd5\x6b\xe8\x34\xf5\x41\x78\x81\x6c\x95\x7b\xf8\x01\x4f\x03\xcf\x9a\x9c\x06\x16\x1e\x07\x6e\x98\x90\x5d\xb2\x86\x6d\xd7\x18\x9d\x46\xf5\x1b\x4c\xe5\xbe\x3e\xc7\xd1\x54\x52\x3f\x9a\x2a\x4b\xd8\x73\x6d\x13\x79\x92\xda\xbf\x8c\x10\xf9\x44\x73\x86\x81\xab\xdf\xe2\xba\xc2\x21\x90\xab\xe2\x71\x40\xc5\x73\xdd\xe0\x94\xfd\x2e\x1e\xb1\x6e\xd8\xd2\xf5\x6b\xd8\x85\x73\xb3\xe6\x8c\xc0\x09\x33\x26\x91\x5c\x14\x55\x6d\xa1\x1b\xbc\x21\xd9\xd2\x4e\x48\xf9\x56\x7a\x20\xee\x6d\xd2\xfd\x8c\x54\x6c\xa3\x0f\xb2\x6c\x4d\xf4\x20\xb9\x88\x7e\x27\x01\xde\x5a\xe5\x1f\x60\x10\xed\xba\x05\x9b\xc8\x5f\xf0\xbf\xb8\xa3\xa3\xf8\x30\xed\x41\x42\x6a\x23\x67\xaa\x02\xe5\xa2\x71\xdb\xfa\xfa\xb9\x73\xdb\x6a\x9e\x5f\x5c\xb5\x3a\x57\xb7\xe7\x1f\x3f\x5f\x5d\x2a\xea\xc9\x09\xe8\xd5\x4c\xa3\xe6\x10\xae\xcc\xd7\x24\x5b\x4e\x44\xa4\x15\xcd\x03\xdd\x77\xd6\x9b\xed\x1e\xeb\x4c\xd2\x57\x9d\xd6\x28\x4b\x68\x1a\x75\x3c\xae\x25\x25\xa5\x27\xbc\x98\xfe\x92\xf9\x78\x2b\xe1\xe3\xa9\x65\xf8\x1d\x41\xa9\x74\x16\x90\xa6\x4b\xa9\x79\xef\xc8\xcd\x50\xf3\x56\x96\x9a\xd7\x39\x6a\xde\x52\xa1\xad\xbd\xfb\x60\xff\x68\x7d\xb0\xff\xfa\x57\x55\x6f\xdb\x3c\x35\x6f\xc7\xd4\xbc\x0f\x42\xe0\x69\x88\xa7\xe6\x91\x40\xcd\xeb\x84\x9a\xb7\x5d\x43\xa7\x16\x71\xdc\xa2\x8b\x0a\x89\xd9\x8d\xaa\x42\xd2\x9a\x4a\xb7\xb0\xaf\x77\x9f\x53\xd7\x46\x65\xaa\x0a\x3d\x8e\xfd\xe6\x19\xba\x09\x9c\xd0\xf4\xb1\xef\xa0\x13\x93\xe2\xa0\xa7\x16\x01\x7c\xff\x2d\x1e\xb5\x15\x0d\x4e\x0e\xf6\x23\x58\x4f\xee\x48\xfb\xb1\x5a\x0f\x96\xe3\xbf\x9d\x59\xc1\xe0\xb4\x8b\x4f\x2c\xcb\xe9\x9f\xea\x06\x3d\x5f\x56\x10\x00\x1c\x1e\x4d\xe9\x40\x7b\x80\xbc\x83\x9a\xe5\xd3\x77\x81\x54\x35\x46\x0f\x00\xa9\x22\xa4\xcd\x41\xa5\x14\xad\x2f\x16\x6f\x80\xc0\x18\x60\x29\x9f\xae\x4d\xdc\x32\x6b\x9a\xa6\x9c\xd7\xda\xf7\xd0\xd3\xde\xbc\x83\xae\xf6\xe6\x3d\xb4\x22\x71\x1b\x63\xce\x68\xdd\xe8\xd0\xd6\x50\x5b\x68\xf2\x1e\xa8\x1f\xde\x00\x4f\x03\xba\x66\xd7\x1c\xf4\x10\x00\x55\xad\x99\xae\x83\xf0\xf6\xe1\xd4\x26\xa1\x3f\x00\x3a\xd5\x81\xaa\x10\x83\x35\x87\xad\x39\xf2\xf9\x7d\xc0\x5d\xaa\x1f\x18\x08\x0d\xd5\x47\x17\x0f\xc1\xd2\xc2\x65\xcf\x72\x74\xdb\x9e\x3f\x12\xd0\xbb\x58\xe0\x4f\x4e\xd3\xec\x1a\x1d\xf2\x62\x11\xfd\x05\xd4\xf8\x4a\xab\x07\x5c\xf6\x3d\x5b\x4b\x6e\x99\xe0\x99\x92\x4c\xdc\x1b\x14\x3d\x3f\x9e\x45\xa6\x24\x8c\xa7\x30\xaa\x64\x44\x06\x9b\x23\xf6\x5d\xe7\x01\x6f\xa4\x32\x55\xf2\x3f\xe0\xe9\x7b\xf5\x48\xa1\x97\x93\xf4\xc6\x02\xbd\x82\xe7\x46\x4b\x95\xd4\xf0\x36\x49\x80\xb5\x72\xa3\x4f\xc8\x3d\x8b\x85\xd2\x42\xf4\xf6\x68\x34\x74\x75\xf4\x3c\x77\xcc\x50\xb8\x72\x1e\x7d\x99\xec\x96\xb7\xff\x0f\x9c\xd5\xbf\x5a\x8b\x6b\xd5\x09\xc0\x59\xfd\x1f\x8b\xf7\xff\x77\xf1\xdf\x7f\x53\xc1\x59\xfd\xc2\xd6\xc7\x13\x64\xaa\x67\xa4\x91\x1f\xde\xd6\x02\xe4\x13\x6f\x85\xd4\x93\x66\xe6\x4b\x7d\x94\xee\x91\xd7\xce\x54\xb7\x2d\xf3\x58\x0f\x02\x34\x9e\x04\xc7\x81\x7b\x4c\x88\xbe\xd0\x08\x42\x0f\x1d\x3b\xae\x73\x4a\x96\x48\xd7\x4e\xe8\x9f\xda\xff\x38\xd7\xce\xb1\xeb\x99\xc8\xc3\xd7\x77\xd1\x71\x74\x09\x24\x37\xe8\x78\x60\xc7\x14\xcc\xfb\x74\xd3\x1d\xe8\x53\x74\xac\x1f\x4b\x56\xdd\xf1\x18\x05\x03\xd7\xac\x29\xea\x12\x64\x89\x27\x40\x17\x4c\xb0\x58\x04\xff\x44\x6c\xc5\xe1\x15\x89\x01\x25\xfb\x75\xc4\x79\x02\x13\xe7\xcf\xc4\x19\xe4\x83\xf3\x63\x40\x3c\x82\xbd\xb6\x73\xaf\x21\xe2\x0f\xcc\x74\xff\x65\xb0\x2c\x07\x61\x2d\x2d\x66\x21\x6b\xe8\x21\x40\x8e\x09\xe2\x7d\x0b\x3e\x52\xfe\xb1\x4e\xb7\x79\xcb\x61\xf4\x00\x11\xb6\xf1\x6e\x48\xc8\x49\x15\xb2\x73\xf9\x0e\x4d\xdc\xbc\x4b\xd1\xc4\xf5\xad\xc0\xf5\xe6\x6f\xe9\xc5\x6f\x4d\xcb\xd7\x59\xd0\x4b\x6f\xad\xfb\x4c\x43\x51\x13\x11\x44\x7e\x79\x54\xad\xa8\x90\xd8\xe0\x49\x38\x57\x76\x62\xb5\x7e\x6b\xd6\x06\xba\x3f\x00\xd1\x23\x12\x27\x05\xfa\x37\x34\x0d\x9f\xfd\x46\x13\x97\xf8\x2a\x9c\xdb\x36\x88\x9f\x93\xd6\x71\x0f\x9d\x5c\x52\xa3\xfb\x07\x90\x79\x83\xe1\x23\x80\x08\x51\xe1\xe4\xc2\x75\x02\xcf\xb5\x6d\xe4\xd5\xd3\xdb\x01\x69\xb9\x43\x48\x1c\x39\x1d\x05\x11\xa3\x67\xf0\xdb\x26\xe9\xd0\x55\x2c\x43\x33\x09\x05\xe1\x4f\x22\x45\xcd\x50\xfe\x90\x1e\xbc\xda\xa3\x4f\x22\x74\xd6\xf1\xf7\x6e\xa2\xc5\x42\x51\xe0\x18\xf9\xbe\xde\x47\x75\x54\x63\x7f\x2d\x16\x78\x99\x04\xba\x65\x2f\x16\x0a\xf9\xc4\x14\x2c\xae\x91\x96\x7d\xbc\x79\xd0\xbf\xda\xef\xee\xd9\xd6\x11\xff\x86\x4e\xd4\x86\xe6\x24\xad\x39\xb5\xc0\x0a\x6c\xf2\x87\xd0\xac\x0a\x15\xb2\x55\xd4\xe8\xa8\xc8\x2e\x1d\x35\x10\x5d\x42\x7d\x22\x69\xb8\x76\xf2\x46\x7f\xc2\x9f\x3c\x5e\x0a\x2c\xaf\x40\x52\x48\xdf\x47\x0d\xd7\xe1\xfd\xe8\x4d\x6c\xfd\x83\xbf\xa7\xaf\x77\x9f\x41\x74\xd0\xd7\x06\x1e\xea\xa9\x35\x2c\xcd\xe1\xad\xae\xe6\x87\x5d\x3f\xf0\x00\xb7\x00\x6a\xec\x9c\x67\x1f\xe8\xe9\x7b\xb5\xe6\x4f\x6c\x2b\x00\xca\x5b\x25\xda\x59\xdf\xc3\xff\x56\x8f\x5c\xed\x91\x76\x5b\x7f\xbc\xd5\xc7\xa8\x1e\xf3\xff\x58\x92\x6e\xbf\xbb\xc7\x8f\xe6\x05\xfe\xef\x56\x30\x00\xca\xff\x12\x41\xd6\x8d\x05\x4b\x72\x87\x55\xf3\x07\x56\x2f\x00\xea\x52\x85\x6e\xcd\x34\xa2\xe2\xf6\xbb\xfb\xe5\x92\x9c\x75\xe2\xc3\xf3\xa2\x82\xba\x58\x3c\x2e\xa1\xad\xe9\x35\xd3\xf0\x17\x8b\x36\x6e\xe1\x1e\x86\x9a\x1e\xad\x4e\x52\x46\xff\x8e\x77\x8e\xcc\x17\x60\x1a\xf5\x77\x6f\x92\x17\x11\x9f\x25\x40\xad\x11\x38\xd0\xe8\x01\xe5\xff\x28\xea\x59\xf2\x49\xf4\x51\x70\x6e\x04\xd6\x14\x01\xdc\x63\x0d\x0f\x19\xda\x6a\x34\x09\x6c\xd5\x90\xcf\xc8\x66\x1f\x4d\x3d\x1a\x46\xfc\x11\x85\x4b\xb5\x16\x0c\x90\x23\x75\x03\x6a\x7a\xee\xd8\xf2\x51\x0d\x1f\x66\x6d\x04\x03\xda\xad\x61\x23\xdd\x63\x1d\xab\xf7\x58\xa2\x92\xb4\x40\x57\x0c\x16\x6d\xde\xab\xed\x77\xf7\x47\x84\xf9\x65\x5f\x5b\x76\x02\x85\xaf\xc9\x55\x61\xe6\x7a\x44\x97\xa2\x70\x25\xfb\xd6\x1c\xa2\xb9\x91\x7c\xf6\x4f\x69\x06\x62\x11\x7b\xc9\x4b\x93\x56\xa1\xd4\x68\x1a\xeb\x09\x8b\xeb\x59\x22\x27\x32\x7b\x8f\x63\x85\x7b\x2f\x55\x31\x34\xa9\x84\xdf\xc3\x11\x7e\xcd\x57\x23\xfc\x9a\x2f\x42\xf8\x35\x77\x2d\xfc\xc6\x3d\x8d\xb9\x1d\x4d\xe3\xcd\x7b\xe9\x9b\x91\xfa\x89\xd0\xc7\xf0\xa3\x30\x3b\x45\xd7\xe0\x66\x82\x93\x13\xe0\x69\x5e\xad\x47\x4c\x9e\xb8\x5d\x3e\xd9\x3e\x56\xb9\xa3\xe0\x31\x72\xa6\xc3\x44\xe5\x49\x3f\x4b\x26\xe6\x39\xd0\x53\x93\xaf\x25\x7e\x3a\xbc\xf7\x3c\x26\xae\xe3\xef\x3f\x04\x3f\x8a\x94\xc9\x87\x20\x0a\x18\xe4\x68\x94\x4d\x4a\x38\x92\xe0\xfe\x8c\xff\x51\x7f\x5c\x1e\x05\xff\xf5\xb7\xb3\x31\x9b\x16\xe0\xe0\x23\x47\x66\x06\x1d\xa8\x8f\x2d\x4a\x17\xb4\x03\x72\xd0\xd6\x57\x3c\xa1\x2f\x55\xd9\xe1\x13\x0e\xad\xf2\xd5\xf1\xf1\xea\xaf\x73\x63\xca\x19\x50\xbe\x4e\x70\xd5\xec\x3b\x30\x20\xfc\xcb\x32\xab\x00\xed\x1e\x92\xe7\xc9\x60\xa7\xb6\x0c\xd3\x83\x08\x4b\xd5\x4f\x2b\x8c\x41\x5f\xe3\xce\xde\x37\x82\x39\xc4\xc9\x49\xa4\xfd\xef\xa3\xe0\x8c\xfb\xbb\x2e\x72\x62\xf4\xc9\xd2\xc7\x13\x9e\x89\x0f\x6f\x32\xa7\xcd\x40\xf7\xb9\x65\xc6\xce\x1c\x18\xa8\x31\x99\x0b\x90\xd6\xc4\x27\xfb\x07\xf5\x03\x27\x36\xe0\xf3\xcb\xea\x01\x2f\x92\x50\x57\x2d\x5a\x0f\xdf\x10\x31\x22\x64\xfc\xe4\xbf\xb4\x3f\x47\xad\xbb\xf4\x38\x5f\x52\xbb\x11\xe8\x2c\x16\xbc\x74\xd3\x48\x19\xa6\x34\xb6\x6a\x98\x32\xab\x0c\x53\x0a\x0d\x53\x9a\xa2\x61\x4a\x73\x97\x86\x29\x43\x89\x61\xca\xb0\xc0\x30\xa5\x97\x6f\x98\xd2\x11\x0c\x53\x3a\xfb\x33\x4c\x69\x72\x10\xa4\xb9\x0f\xc3\x94\xd6\xf7\x35\x4c\xe1\x7d\xf4\x2a\xf7\xa5\x17\xea\xbe\xc4\xd1\xae\x23\x0d\x38\xda\x7a\x9c\xa7\xb7\xfa\xba\x2c\xa7\xea\xe6\xdc\xc4\x31\xa4\x16\xbb\xa4\x43\xe9\x43\xe8\xbf\x1a\x87\xa2\x46\x6e\xfe\xdf\x59\x4e\xfa\xdf\xc1\xae\xb2\xff\x76\x41\x67\xbd\xe4\xbf\xf8\x6d\x2b\xd0\x86\x1d\xe2\x7b\x43\x6e\x53\xa1\xc2\x91\xd0\x0a\x0c\x85\xca\xe8\x5d\xd3\x5a\x83\xd5\xe6\x64\x78\x65\xe1\x71\xa7\xe9\x00\x61\x22\x83\x5c\xc4\x45\xe6\xf2\x8b\x8c\x01\xcc\xb0\xe6\x09\x8b\xa8\x52\xeb\x06\x7a\x09\x3f\x6c\xc2\xac\x7f\x9c\xb7\xec\xb0\x0f\x14\x1a\xe0\x57\x85\xa6\x21\xb0\xf3\xec\x02\x54\x33\x0d\xe8\xd4\x4c\xc3\x57\x8b\xb8\x45\x71\x7c\x73\x30\x07\x8f\x4b\x88\x54\x18\x8d\xd4\x89\x86\x19\x65\x96\x7d\x7f\x06\x02\x2d\x2e\x85\x9e\x86\x22\x36\xd3\xd5\x82\xa2\x60\x46\xb7\xfa\x18\x69\x9a\xe6\x91\x3f\xf0\x86\x1c\xef\x3e\xf1\x5e\xa7\x69\x1a\x28\x6a\x25\xe6\x94\xf1\xf9\x1b\xb5\x43\x98\x64\x72\x93\xe7\x07\xf4\x1b\x51\xa1\xab\x72\x23\xe7\x6a\x96\x2a\x17\xac\x4c\x42\x9a\x3a\xc2\xd4\xf4\x51\x00\x1c\x48\xa7\xbb\x16\x47\xd7\x51\xcf\x72\x26\xce\x51\xe1\xe3\x04\x79\x63\x8b\x59\x51\x05\xa9\x97\xac\x87\xc1\xc0\xf5\xac\x6f\x88\xbe\x9e\x54\x0f\x8c\xb2\x27\xde\x5b\x04\xa0\xd5\x1d\x12\xe9\x89\xa5\x7b\x15\x54\x25\xd9\xc5\x89\x37\xa6\x3e\x68\x02\x8b\x0f\xe5\x90\xbd\x8d\x0a\x5f\x72\x75\x0a\x59\x48\x1b\x10\xc4\x41\x32\xbc\x99\x65\xdb\x5f\x3c\xdd\xf1\x2d\xaa\xb6\xcf\x7e\x3a\xb1\xe8\xf4\x46\xd3\xd0\xc9\x09\x40\x84\x33\x22\x1c\x53\x0d\x39\x26\xd3\x0b\x44\x6f\x8c\x59\x9f\xa8\x8b\x05\x7f\x1d\xaf\x41\x88\x55\x1c\x35\xdd\xb0\xfd\x1a\x33\xfc\x51\x55\xfe\x23\x2d\x7c\x98\x23\xee\x15\xa6\x28\xf6\x7c\x8d\x16\xcc\x54\x25\x6f\x34\x79\x99\x01\x54\x98\x1e\x40\x51\x61\xaa\x38\xfd\x8e\xef\xf3\x18\x7b\x47\x9b\x00\x04\xff\x86\x77\x4d\xa7\xfd\xee\x1e\xba\x9a\xd3\x7e\x7f\x7f\x94\xe4\xef\xc5\x3b\xbf\x40\x9d\x47\x9a\x04\x0f\xf2\xcb\xcf\x25\x54\xfa\x92\xc6\x0b\x9b\x4a\x12\xf6\x4e\x65\xf9\x7a\x6d\xed\x0a\x00\x5d\xf3\x53\x5e\x8b\x74\xcf\x2d\xef\xb6\x18\x6a\x57\x40\xe7\x1b\x4e\x6d\xdb\xe5\xdd\x16\x0d\xb1\xfd\xf4\xce\x5f\xde\x71\x51\x68\x5e\x5c\xf9\x6d\x6b\x75\x40\x96\xa2\x06\x54\xa8\xf3\x5f\xb0\xce\x6b\x40\x46\x2b\x34\x20\xd4\x52\xf0\xbb\xda\xcc\x54\x4e\x33\x95\xd3\xcc\xa1\x72\x13\xa1\xc8\x4d\x84\x07\xe2\x34\x23\x3d\x57\xbf\x07\x25\x21\x73\xd6\x61\x4b\x37\xfc\x8e\xc4\xc4\x76\x60\xa7\xf1\x6a\x30\x9e\x25\x09\x1a\x91\xb5\x4c\x8d\x2d\xce\xd8\x3a\x85\x81\x7c\x41\xcb\x42\x1d\x64\xcc\xa5\x54\xfe\xdc\x32\xd6\x39\xb7\x22\x8b\xe3\xa7\x1e\x5f\xba\x61\xd3\x23\xac\xe0\xe4\xe2\x92\x98\x1c\xf1\x1f\x61\xbc\x8a\xed\x97\x7a\x8a\x85\x87\xa4\xdb\x31\x76\x7a\xe4\xfa\x07\xa1\xdb\xe9\x09\xba\x9d\xde\xb3\xd4\xed\x74\xf7\xad\xdb\x49\x59\xae\x80\xc9\x56\xe5\x27\xb3\x92\x9f\x0a\xe5\xa7\xae\x28\x3f\x75\x77\x29\x3f\x8d\x25\xf2\xd3\xb8\x40\x7e\xb2\xf3\xe5\xa7\xb9\x20\xc7\xcc\xf7\xa7\xdb\xe9\x72\x87\x4f\x77\x1f\xba\x9d\xc1\xc1\x38\x1d\x73\xa2\x5b\x2a\xd5\x98\x06\xd6\xd0\x0a\xe8\x86\x4d\x62\x90\xbd\x16\x91\x6f\x22\x49\xcf\x40\x69\x7d\x33\x27\x3d\x83\xb1\xab\xf4\x0c\x03\x30\x5f\x8f\xd6\x0f\xd0\x78\x62\xeb\x01\x8b\x60\xa5\x44\x72\x21\x71\xb8\x54\x61\x88\x9b\x89\xc9\x7f\x0b\xce\x25\x01\xf9\x63\x06\xbf\x8b\x7a\xae\x87\x6e\xa4\x3c\x3e\xb3\x2c\x27\x8c\xb9\x45\x6d\xc6\xf0\xc4\x27\x64\xa6\x9c\xfe\x4f\xbe\x10\x7c\xb7\x15\xa0\xb1\x96\xb4\xc3\x5e\xde\x63\x12\x23\xab\x2e\xb1\xd3\x8e\xec\x83\x97\x11\x2f\xc8\x29\x06\x98\x23\xde\x9b\x77\x10\x37\x5d\x8f\x3b\x81\x78\x19\xf8\xf5\xb6\x32\xe6\xa2\xfe\x2a\x86\x6d\xe1\x3f\xee\x97\x1b\x32\xc4\x3d\xd0\x05\xfa\xd3\x19\x62\x89\xc1\x7d\xd4\xbd\x89\xb0\xdc\x3d\x25\x12\x7c\x66\xe6\x38\x16\x34\x7e\x2e\xc5\xf2\x6f\xd1\x4c\x51\x4f\x4e\xe2\xb2\x1a\x8b\x4a\x73\x87\x0c\xd7\x33\x01\xcb\x73\xe0\x4b\x78\x4b\x9f\xf2\x96\x7a\x31\x04\x81\x53\x0d\xb8\x9a\xce\xf3\x98\x7d\x8d\x2d\xa0\x86\xd6\xf6\xee\xe1\x4c\x2b\x43\x06\xc2\x8e\xf6\xb8\x84\xbc\x22\x7a\x96\xa3\x88\xee\xb4\xd1\xbd\x36\x63\x8a\xe8\x4e\x5a\x11\xcd\xff\x84\x1d\x51\x11\xdd\xc9\x55\x44\x77\x16\x8b\x8e\xa8\x88\xee\xa4\xe5\xcd\x8e\xd6\x58\x47\x11\xcd\x0b\x45\x01\xc0\x9b\x2b\x52\x17\x0b\xbc\x4c\x3b\x2a\x1c\x72\x8a\xe8\x8e\xa0\x26\xee\x30\x45\x74\xaa\xfc\xac\x93\x15\xf3\x87\xb1\x22\xba\x53\xac\x88\x16\x7b\x90\x9f\x17\x78\x88\x1d\xfc\x78\x4c\x11\xad\x75\xa0\xcb\x03\xce\xe6\x5a\x80\x93\x6c\x2c\xdf\x09\x6e\x42\x1b\x86\x47\x3c\xc0\xe1\x42\x8d\xbc\x50\xc8\xe9\x1f\x12\xe4\xec\xed\x14\x72\x4e\x0e\x02\x72\x9a\x02\xe4\x34\x9f\x25\xe4\x9c\xee\x1b\x72\xa6\x40\x07\x18\x6f\x15\x72\xce\x2b\xc8\x59\x08\x39\xa7\x22\xe4\x9c\xee\x12\x72\x76\x25\x90\xb3\x5b\x00\x39\x8d\x7c\xc8\x39\x10\x20\xe7\x60\x7f\x90\x73\xca\x1d\x3e\xd3\x7d\x40\xce\x7e\x65\xd6\xf7\x1a\xcc\xfa\x1a\x1b\x00\xf3\x35\x4c\xf4\xc2\x57\x83\xdd\xc7\xb9\x26\x79\xf3\x1c\x93\xbc\xde\xae\x4c\xf2\x7c\x30\xd8\xc4\x24\x4f\x87\x03\x82\xca\xc9\x6d\x9c\xd5\x9d\x02\x6d\x56\xb3\xa9\xc5\x5d\x9e\x1d\x5d\x02\x92\xb3\x96\x6f\x96\x09\x0b\xc0\xb7\xba\x5d\x44\x6d\x82\x69\x19\x9b\x2b\x19\xa2\xc6\xa0\x77\x22\x01\xbd\x93\xac\xb1\x8e\x0c\xf4\xea\x5a\x1f\x00\x4b\x0b\x65\xe6\x3b\xa5\xcd\x6b\x6c\xad\xcf\x3f\x2e\xff\x8a\xcb\x9b\xd6\x58\x3c\x86\x6b\xac\x85\xe1\x2c\x96\x7b\xaa\x02\x71\x15\x88\xab\x40\x5c\x05\xe2\x2a\x10\x57\x81\xb8\x0a\xc4\x7d\x3f\x10\xf7\xdd\x7d\xc2\x1a\x15\x78\x7c\x0d\xe0\x71\x56\x81\xc7\x0a\x3c\x8a\xe0\xb1\xcf\x6a\xfe\x0c\x91\x37\x6f\xea\x1e\x49\x57\xf3\xe8\x23\xdd\x33\x06\xf5\x47\xdd\xaf\x2b\x34\x2c\x85\x02\x3d\x34\xb1\x75\x23\x9a\x96\x1c\xd0\x59\xac\x24\xa6\x01\x3c\xf1\x68\x8f\x78\xc5\x6f\x34\x2a\x99\x37\x96\xe8\xcf\x11\xa8\x8f\x6c\x15\x69\x9a\x96\xf2\x04\xe1\x72\xa4\x13\x1f\x17\x36\x5e\xea\xda\x22\xfa\xb4\xf0\x7e\x40\x2b\x74\xd3\x52\x9c\x2c\x09\xe0\xf6\x71\x9e\x68\xaa\x41\x31\x58\xce\x3a\xa3\xc9\x1e\xfd\x25\xc0\xe6\xc6\x2e\x61\x73\xe3\x3b\xc1\xe6\xd9\x5a\xb0\x39\x8a\xf7\xbc\x86\xd1\xad\xec\x2e\xaa\x39\xcd\xe2\x69\xd2\x9a\xe5\xf4\x4f\xa5\xb1\xb6\x2a\xdf\x91\xca\x77\xe4\xa5\x60\x98\x2a\xe1\x4a\x95\x70\x65\x3f\xb6\x8f\xbd\x57\x23\xca\xae\xe7\xb6\x42\x85\xd8\x6c\x40\x75\x49\xae\x53\x2b\x9d\xeb\x54\xd7\xde\x7d\xd0\x7f\xf4\x3e\xe8\x7f\xfd\xab\x6a\xb5\x75\x5e\x88\xd5\x53\x01\xd5\x57\xe4\x3a\xb5\x8a\xac\x17\xd3\x67\x66\x4e\xa6\xd0\x62\xf7\x99\xde\x66\x47\xfa\x3a\x66\x4d\xbe\xe5\xf4\x6d\x29\x25\x4e\x9a\x99\x57\xac\xf8\x6a\x56\xfc\xc5\x06\xda\xeb\xed\x24\xd0\x9e\xbf\x4e\xa0\xbd\xd9\xf7\x0d\xb4\xe7\xef\x27\xd0\xde\xe4\x90\x94\x2a\xe6\x4e\x65\xd8\xf1\x41\x28\x55\xe6\x82\x52\x65\xfe\x2c\x95\x2a\x8d\x7d\x2b\x55\x52\xb4\x7a\x9e\x3b\xcb\x13\x01\xc9\xa0\x02\x24\x85\x80\xa4\x21\x02\x92\xc6\x2e\x01\xc9\x54\x02\x48\xa6\x4f\x53\xaa\xf4\x05\x40\xd2\xdf\x1f\x20\x69\x70\xb2\x4b\x4e\x98\xc8\xdd\x02\x92\xd9\x9e\x94\x2a\xc3\x4a\xa9\xf2\x1a\x94\x2a\x9d\xb5\x94\x2a\x14\x01\x14\xe8\x55\xb8\x6b\xa3\x30\x64\xaf\x47\xbf\xd2\xcd\xd5\xaf\x0c\x72\xf4\x2b\xe6\xae\xf4\x2b\x13\xd0\xdf\x4c\xbf\xd2\x27\x5a\x14\x72\x9b\xca\x62\x9a\xdd\xb1\x50\x7a\xfd\xad\xc7\xc3\xe3\xd5\x08\xd0\x13\x6b\x59\xde\x38\x95\x45\xd3\x8a\x12\x8f\xbc\xc7\xab\x8e\x5c\x1a\x8f\x2e\x7a\xda\x39\x68\x08\x1a\x03\x36\xac\x02\x3d\xc1\xfa\x81\xef\x7a\xa0\x17\x05\xbe\x23\xb8\x9a\x64\xef\x08\x6a\xf1\xdf\x90\x2a\x52\x22\x4b\xc3\x26\xf9\x46\xb8\xa0\x5f\x88\x39\xb5\x5d\x5f\x2a\x2a\x91\xec\x33\x69\x30\x90\xfa\xe8\xcf\x2c\x5c\xc6\xdd\x05\x69\x2a\x8c\x54\x88\x3a\x96\x7a\x44\x51\xd5\x47\x43\xf7\x91\xf2\xf7\x77\xff\xad\xd4\xd9\x5f\xef\x95\x3a\x7d\x80\x25\xfd\x64\xd0\x92\x62\x8c\x4d\x23\xc5\x65\x27\x73\x2b\xea\x97\xb1\x44\xfd\x32\x5e\x57\xfd\x32\xdc\xa5\xfa\x65\x98\x56\xbf\x70\x6b\x7f\xcb\xfa\x97\xce\x66\x64\x4d\x39\xfb\xc5\xcd\xc9\x9a\xd7\x18\xf6\xe4\xc5\x12\x35\xc6\x21\xf1\x08\xfe\x4e\x79\x84\xde\x41\xf0\x08\x13\x81\x47\x98\x3c\x4b\x1e\x61\xb0\x6f\x1e\xc1\x4c\xf1\x08\xe6\x56\x79\x84\x71\xc5\x23\x14\xf2\x08\x03\x91\x47\x18\xec\x92\x47\x98\x4b\x78\x84\xf9\xd3\x82\xba\x74\x05\x1e\xa1\xbb\x3f\x1e\x81\x9b\x6f\x30\xd8\x07\x8f\x30\x3d\x44\xc5\x26\x17\xd2\x05\xb6\x36\x43\xaa\xaf\x27\xae\x8b\x99\x1b\xd7\x65\x9c\x13\xd7\xc5\xdf\x55\x5c\x17\x03\x74\x37\x81\x9f\x16\x24\xc1\xc2\xe0\x14\xdf\x96\x35\xe2\x73\xbd\xe0\x23\x46\x2f\xae\x17\x28\xd0\x34\xea\x18\x3f\xc2\x91\xe5\x98\x75\x05\xff\x57\x81\x1b\x99\xf9\xe9\x2b\xd1\x6b\x3e\x12\xe4\x56\xd2\xd6\x95\x60\xe1\x3a\x4a\xb0\xe9\xf7\x55\x82\x85\xdf\x55\x09\x86\x51\x76\x62\x8e\x48\xa1\x6e\x69\x33\x45\xd1\xdf\x2f\x97\x5d\xc0\x63\xd9\x10\x2a\x4f\xc0\x60\xdb\x21\x73\x30\x54\xee\x49\xa0\x72\x6f\xbd\xa8\x36\xfd\x4c\x54\x9b\x46\x14\xd5\x66\x46\xa2\xda\x0c\xcb\x45\xb5\x69\x8a\x51\x6d\x86\x39\xac\x6f\xb3\x8d\xee\xb5\x21\x63\x7d\x9b\x69\xd6\x97\xff\x09\x9b\x22\xeb\xdb\xcc\x65\x7d\x9b\x8b\x45\x53\x64\x7d\x9b\x69\x81\xbb\xa9\xcd\x36\x8f\x6a\x83\x4f\x97\x28\xaa\x4d\x53\x85\x1d\x8e\xf5\x6d\x0a\x9c\x6c\x93\xb1\xbe\xa9\xf2\xb3\x66\x16\xe7\x74\x62\xd6\xb7\x59\xcc\xfa\x8a\x3d\xc8\x3f\x28\x3c\xc4\x26\x7e\xbc\x28\xaa\x4d\x33\x1d\xd5\xa6\xb5\x16\xb5\xe0\xb9\xf6\xa6\x76\x9d\xf4\x96\xca\xa8\xb3\x32\xea\x7c\xdd\xd8\xa7\x32\xea\xac\x8c\x3a\x2b\xa3\xce\xca\xa8\x73\xa5\x51\x27\x77\x60\xee\xd0\xa2\x93\x3f\x96\x9f\x6a\xce\x89\xdb\xa8\x8c\x39\x2b\x63\xce\xca\x98\xb3\x32\xe6\xac\x8c\x39\x2b\x63\xce\xca\x98\xf3\x10\x80\x48\x65\xcc\x59\x19\x73\x56\xc6\x9c\x95\x31\x67\x79\x63\x4e\x2c\xff\x57\xa6\x9c\x95\x29\xe7\x06\xa6\x9c\x79\x3a\x96\x8c\x85\x67\xbe\x0d\xa7\xb7\x6f\x1b\x4e\xaa\x4f\xf2\x98\xb5\xe6\x9d\x6b\xa3\x3c\x5b\x4d\xbc\x7d\x54\xb6\x9a\x95\xad\xe6\x2a\x1a\xa6\x9c\xa1\xe6\xa6\x34\x4c\x65\xa6\xf9\x82\x28\x98\xca\x4c\xb3\x32\xd3\xac\xcc\x34\x2b\x33\xcd\xca\x4c\xb3\x32\xd3\x7c\x8d\x66\x9a\x0c\x83\x56\x46\x9a\x2f\xcb\x48\xb3\x32\xc8\xac\x0c\x32\x2b\x83\xcc\xca\x20\xb3\x32\xc8\x2c\xe6\x0f\x68\x18\xd7\xcd\x2c\x32\xd9\x3d\x95\x49\x66\x65\x92\xf9\xba\x71\x4e\x65\x92\x59\x99\x64\x56\x26\x99\x95\x49\xe6\x4a\x93\x4c\xfe\xc4\xdc\xa1\x4d\x66\xea\x60\x7e\xaa\x51\x26\x69\xa4\xb2\xca\xac\xac\x32\x2b\xab\xcc\xca\x2a\xb3\xb2\xca\xac\xac\x32\x2b\xab\xcc\x43\xc0\x22\x95\x55\x66\x65\x95\x59\x59\x65\x56\x56\x99\xe5\xad\x32\x23\x5b\xcb\x2a\x73\xd9\x8b\x34\xc7\xe4\x33\x97\x3d\xc5\x1a\x33\x01\x3e\x7c\xfa\xb1\x3d\x04\xc0\x74\xb8\x00\x98\x34\x11\x98\xb3\x22\x0b\x58\x65\xde\xb8\xa9\x79\xe3\xce\x32\x81\xad\x67\xdd\xc8\x08\x8d\x72\xe6\x8d\x15\xa1\x51\x11\x1a\x15\xa1\x51\x11\x1a\x15\xa1\x51\x11\x1a\x15\xa1\x51\x11\x1a\x15\xa1\x51\x11\x1a\x15\xa1\x51\x11\x1a\x15\xa1\xf1\x52\x09\x8d\x19\xab\x29\x32\x10\x7e\x72\xf4\xd6\x67\x98\xa4\x1d\x83\x41\x59\x92\xf6\x52\xd9\xd9\x19\xe7\xb2\x5f\xeb\x5b\xf8\xb8\x84\x8f\xb4\xa2\xbe\xb6\x83\xef\xda\x59\xe1\x2b\x32\xe8\x40\xc8\xa0\x0d\x08\x20\x81\xda\xe1\x8c\x4d\x39\x59\x06\x38\x2f\x95\xc8\xf1\x76\x0a\x6e\xdd\x83\x00\xb7\x95\x49\xec\xfe\x50\x5b\x28\xa2\xb6\xf0\x39\x99\xc4\x3a\xf9\xa8\x2d\x25\xfc\x7f\x4f\xb0\x26\x33\xc5\x65\x4b\x37\xfc\x8e\x90\x6d\x3b\x02\xb9\xf1\x6a\xe4\xe7\xd8\x2e\xd5\xe0\xe5\x67\x1b\x86\x9a\x0e\x0c\x95\x57\x1f\x70\x48\x8d\xac\x56\x43\x85\xa1\x7c\x59\x27\x42\xa6\xb1\xb6\x90\x49\x63\x99\x78\xba\xe3\x5b\xb8\xe4\x8b\x4b\xa4\x3f\x86\x6d\xb0\x04\x48\x64\x0c\x57\x94\x31\x6c\x52\x06\x6d\x15\x1a\x9c\x8c\xc1\x1f\xca\xc6\xea\x43\x39\x40\x0e\xd1\xa7\xac\xed\x3e\xc2\xdd\x42\x8c\x54\xab\xc3\x7a\xf7\x87\x35\x9b\x44\x77\xab\xc7\xa0\x55\x1d\x83\xcf\xe8\x18\xd4\x25\xc7\xa0\xfe\xb4\x63\xd0\x16\x8e\x23\x7b\x7f\xe4\xe5\xbe\x4e\x42\x5e\xf3\x7b\x78\x9e\x21\xfe\xab\x39\x81\x5d\x89\x67\x88\x95\xe3\x19\xe2\x65\x3c\x43\xdc\x62\xcf\x10\x37\xf2\x0c\x71\x8b\x3d\x43\x0c\x60\x3f\xd5\x33\x44\x3c\x0c\x73\x1c\x43\xf8\x33\xd9\xdf\xe0\x4c\x5e\xc7\x0b\x24\x07\x32\xb3\x5d\x0c\xba\xd0\x3a\x4a\x23\x1f\xf6\x39\xea\x2f\xf5\x44\xb6\x0f\x49\x91\x1d\xee\x54\x7c\x30\x0e\x02\xeb\x0b\xde\x7b\xc0\x7f\x96\x8a\xec\xf9\xbe\x15\xd9\xbd\x94\x2c\xd8\xdb\xaa\x2c\x38\xa9\x64\xc1\x42\x59\x70\x2e\xca\x82\xf3\x5d\xca\x82\xa6\x44\x16\x34\x0b\x64\x41\x3d\x5f\x16\x1c\x0b\xb2\xe0\x78\x7f\xb2\xe0\x9c\x3b\x7c\xe6\x07\xc7\x8a\x74\xe1\x00\x4e\x21\x8b\x4d\xa4\x01\x67\xb5\xca\x32\x3e\xc7\x15\x15\x5a\xaf\x46\xa2\xeb\xe5\x84\x26\xb2\xb4\x49\x4e\x68\xa2\x70\x57\xa1\x89\x6c\x30\x06\x48\xb3\x78\xb9\xce\x2a\xd0\x49\xba\x70\x2c\x9a\x52\xaf\x0e\x2a\x14\x6f\x9b\xa8\x16\xbf\xef\x8e\x65\x66\x63\xd9\xf2\xea\xb3\xa3\x1c\x75\xdd\xa3\x69\xd4\x1d\xc8\x54\x65\xca\x5f\x14\x68\x05\x68\x5c\x8f\x0d\x01\x82\xb3\xb4\xc2\x8e\xe9\xc2\xf0\xfc\x2a\x7f\x51\x54\x4e\x9d\xc7\x5e\xe9\x63\xa2\xcd\xab\x3b\x4b\x75\xb9\xa1\xae\xcc\x07\xf3\x5d\xc4\xc1\x31\x24\xba\x32\x23\x1b\x07\x47\x85\x5d\x0d\x78\x9a\xc5\xeb\xc5\x06\x51\xd4\x9b\xa9\xd6\x76\xee\x61\xbf\x5c\xd4\x9b\x99\x18\xf5\xa6\x9f\x63\x48\x32\x6b\xa3\x7b\xad\xcf\x0c\x49\x66\x69\x43\x12\xfe\x27\x9c\x89\x86\x24\xb3\x5c\x43\x92\xd9\x62\x31\x13\x0d\x49\x66\x69\x11\x6a\xa6\x4d\x37\x8f\x7a\x83\xf7\xa9\x28\xea\xcd\x4c\x85\x0d\xce\x90\x64\x26\x98\x79\xcc\x98\x21\x49\xaa\xfc\x6c\x96\x95\x5c\x1b\xb1\x21\xc9\xac\xd8\x90\x44\xec\x41\xbe\xf5\xe2\x21\xce\xf0\xe3\x51\x43\x12\x57\x9b\x41\x8f\x47\x48\xc3\x0d\x10\x52\xa5\x55\x7c\x56\x44\xe5\x33\x47\x1a\x96\x80\x34\xac\x67\x89\x34\xfc\x7d\x23\x8d\x14\xef\x08\xf4\xad\x22\x0d\xbb\x42\x1a\x85\x48\xc3\x17\x91\x86\xbf\x4b\xa4\x11\x4a\x90\x46\xf8\x34\xd6\xd9\x10\x90\x86\xb1\x3f\xa4\xe1\x73\xfb\xb9\xbf\x0f\xd6\xb9\x77\x88\xac\xf3\xe4\xd5\x60\x14\x3d\xc2\x28\x26\x8f\x51\x42\x38\xd1\x6c\x60\x72\x18\xc5\x14\xb9\x67\x73\x13\x8c\xe2\x6a\xef\x3e\xb8\x3f\x06\x1f\x5c\x82\x51\x5c\x1e\xa3\xb8\x31\x46\xe9\x01\x03\x20\x6d\xc2\x63\x94\x89\x14\xa3\x14\xd9\x41\xea\xc4\x8e\xb0\xae\xd0\x7f\x37\xb4\x85\x34\xd7\x0e\x9c\x8a\xe1\x49\x61\xfe\x8e\xcd\x6c\xfc\x16\x0b\x85\xad\x42\x65\xb9\x19\x30\xb1\x80\x0f\xcc\xed\x03\x93\x8c\x82\x3d\xa4\x0a\xf6\x50\x85\x66\x0e\x99\x3f\x59\x25\xaa\x8e\xa6\x6b\x2b\xd6\x47\xd3\x4a\xa1\x5e\x29\xd4\x5f\xb0\x68\x53\x29\xd4\x2b\x85\x7a\xa5\x50\xaf\x14\xea\x45\x0a\xf5\xe8\x10\xdc\x86\x22\x3d\x6a\x6b\xe3\xa0\x03\x61\x60\xd9\xfe\x5b\xdd\x37\x90\x63\x56\x71\x06\xaa\x38\x03\x55\x9c\x81\x2a\xce\x40\x15\x67\xa0\x8a\x33\x50\xc5\x19\x78\xa6\xc8\xa2\x8a\x33\x50\xc5\x19\xa8\xe2\x0c\x54\x71\x06\xca\xc7\x19\x18\x4d\xd7\x4b\x66\xed\x53\xd0\xf7\x3a\xc3\x0d\x84\x09\x6d\x4e\x60\x90\x36\x00\x21\x87\x30\x43\x31\xdc\x40\xb8\xa3\x70\x03\x6b\x9b\xf6\x64\xc3\x0d\x90\x69\xcd\x4d\x68\x1d\x42\xe0\x6d\x90\xd0\x1a\x7a\xda\xe9\x7b\xfc\x36\x89\x01\x4e\x14\xd0\xb0\xe6\x4f\x6c\x2b\x00\x4a\x4d\x51\x6b\x13\x77\x02\xd4\x1a\x31\x56\x68\xf4\x80\xc2\x28\x61\xbc\xd2\x10\x11\xb8\xac\xc2\xc4\xd8\xfa\xda\x89\xb1\x8b\x2c\x8b\xac\x88\xa0\xd7\x39\xe6\x1d\x4e\x74\x0f\x39\x41\x62\x64\xe4\xca\x8d\x8c\xc0\x3b\x98\x38\xad\x03\x17\x12\xfa\xfe\xad\x82\x21\xb0\x5a\x97\xde\x11\xd5\x52\x23\x26\xef\xac\xd0\x3a\xc9\x82\xf8\x41\xd9\xf0\x96\x39\x2d\xba\xb4\x3d\xf6\xf2\x98\x17\xba\x24\x00\x65\x7c\x7e\xbe\xd1\x34\x9a\x8a\x3b\x42\x6b\xd9\x14\xdd\xad\xe8\x3b\xc6\xe2\x83\xa3\xe6\x4c\x1f\x17\xbb\x32\xea\x1d\x6f\x0b\xf1\x22\x62\xa3\xfc\x05\x61\x58\x89\x07\x99\x82\x3e\x4f\x89\x51\x10\xee\x3a\x46\x81\x47\x36\xff\x31\x08\xa0\xab\xc2\x30\x65\x77\xf5\xbd\x23\x12\x70\xdf\xe2\xf7\x0e\x4a\x30\x9a\xbe\xed\xb9\xb6\x89\xa7\x74\x0d\xf5\x0c\x35\x36\xaa\xf4\x33\x95\x1d\x51\x65\x47\x54\xd9\x11\x3d\x6f\x48\x5c\xd9\x11\x55\x76\x44\x95\x1d\x51\x65\x47\x24\x02\x22\xa9\xca\x8d\x0a\x36\xb9\x66\x41\x45\xd1\x2b\x90\xcc\x1c\x27\x75\x43\x81\xac\x7a\x94\x60\xa8\xda\x84\xd8\x36\x31\xf0\x53\x1b\x4d\x6b\x4c\x30\x23\xbb\x98\xf2\x56\xd1\x34\x8d\xf0\x30\x8b\x05\x0d\xa5\x46\x7e\x44\x02\xbb\x3c\x82\xc6\x68\x5a\x63\x4f\xb6\x53\x03\x9f\x27\x86\x36\xa7\x5a\x46\xcb\xff\x89\x3e\xe7\x2a\x3d\xe3\x51\x8e\x0d\xc0\x0b\x15\x33\x8d\x17\xad\x65\xf4\x77\xa2\x65\x34\xd6\xd1\x32\x36\xbe\xaf\x96\xd1\xd8\x8f\x96\xb1\x77\x48\x5a\xc6\xc9\x4e\x21\x95\x79\x10\x90\x6a\x2c\x40\xaa\xf1\xb3\x84\x54\xfd\x7d\x43\xaa\x79\x0a\x52\xe5\xb8\xd1\x3e\x11\x52\x75\x2b\x48\x55\x08\xa9\xfa\x22\xa4\xea\xef\x12\x52\x0d\x24\x90\x6a\x50\x00\xa9\xc2\x7c\x48\x35\x15\x20\xd5\x74\x7f\x90\xaa\xcf\xc9\x2e\xfd\x7d\x40\xaa\xc6\x9e\xb4\x8c\xb3\x4a\xcb\xf8\x1a\xb4\x8c\xc3\xcd\xb5\x8c\x1d\x9a\xd1\x08\xda\xaf\x06\x37\xcf\x23\xdc\x6c\x8b\x8a\xc4\x2e\xb0\x39\xdc\x6c\xc7\xb8\x79\x42\x37\x43\x7b\xeb\x8a\xc4\x1e\x98\x6e\xa6\x48\x9c\x12\x5d\x61\x03\xdf\xb6\xc2\x2b\x67\x23\x2f\x1c\x9b\xd3\x38\xae\x1b\x91\x9c\x83\xcc\x69\xcd\xa3\x4a\x71\xb2\xf2\x56\x39\x22\x32\x65\x4a\x77\x87\xd4\x14\x68\xe6\x63\x8e\xa7\x5b\x81\xe8\xaf\xca\x5b\x65\x55\xec\xf1\xb4\x22\xd4\xa1\xfa\x4c\xaa\x1b\xf4\x0a\x95\x9a\x6e\x79\xa5\x26\xd3\x5d\x4a\x95\x85\x74\xa7\x95\xea\x07\x73\x9a\xf3\x81\x1f\x29\xf9\x58\x78\x74\x21\x36\x3a\x69\x97\x57\x21\xd2\xfe\xa1\xf2\x0b\x9a\x2b\x2a\xe9\xaf\x46\x65\x8a\x54\x77\xfe\xcc\xc2\x65\xdc\x8d\x50\x41\xf8\xf3\xf4\x6b\x3d\xcb\xf3\x83\xe8\x10\x24\xa1\xd9\x15\x55\x7d\x34\x74\x1f\x29\x7f\x7f\xf7\xdf\x4a\x3d\x7a\x51\x59\x6a\x43\x37\x6c\xbf\x46\x53\xab\x29\xea\x11\x7b\xb9\x05\xd7\xf3\x54\x88\x2a\xa6\xd1\x23\xa3\x91\x32\x3b\x3d\x80\x6a\x74\xac\x18\xde\xd3\xbf\xda\xef\xee\x4f\x4e\x94\xbf\xbf\xfb\xbb\xa2\x69\x5c\x19\x7b\x80\x75\x19\x99\x23\xba\x5f\xa1\xcd\x54\xa3\x63\xd0\x07\xf6\xf6\x55\xa3\xa6\x44\x35\x6a\x52\xd5\xa8\x2d\xa8\x46\x67\x00\x58\x9a\xbd\x13\xd5\xe8\x2c\xad\x18\x65\x6f\xa5\xed\xde\xaf\x04\xc2\x92\xfb\xb0\x8c\xc0\xcd\x93\xb5\x51\x80\x85\xd1\xf4\xad\xe7\xba\xc1\xe9\x06\xae\x6b\xec\xd2\x4a\x39\x5a\x39\xaf\xbd\x48\xf0\x67\x8b\xe0\xcf\x3e\x10\xe7\x35\xa9\x65\xcc\x1e\x82\xa2\xdb\xdc\xf7\x6f\x1f\x5c\xf8\xaf\xd7\x63\xe5\xb7\x9e\x07\x59\x0c\xf5\xd8\x3a\x85\x41\x71\x38\xf4\x3c\x27\xae\x70\xa9\x12\xf1\x25\xf7\x28\x72\x5c\x13\x95\x0b\xf3\xf3\x9a\x23\xa1\x46\x70\xc1\x00\x6d\x2c\x91\xd3\xff\xb7\x91\x4e\x14\x4e\x49\x0a\x06\x7e\xcb\x8f\xbf\x5f\x98\x72\x3b\x95\xb6\x44\x5e\x0e\xd7\x50\xb8\xb2\x21\x23\x1d\xae\x6a\xb1\x00\x81\x86\x18\xc1\xf0\x4e\x8d\x19\xe3\x9e\x87\xd0\x37\x24\x85\xee\x54\xf7\xf0\xe8\xe9\xb3\x68\x55\xa7\xef\x09\xa8\x84\xcb\xab\x5a\x0e\x47\x13\xd0\xdb\xa9\xfc\x30\x39\x08\x4d\x80\x29\x68\x02\xcc\x67\xa9\x09\x98\xee\x5b\x13\x30\x4e\x09\x83\xe3\xad\x0a\x83\xf3\x4a\x18\x2c\x14\x06\xa7\xa2\x30\x38\xdd\xa5\x30\xd8\x95\x08\x83\xdd\xa7\x85\x83\x1d\x08\x42\xd9\x60\x7f\x9a\x80\x29\x77\x02\x4f\xf7\xa1\x09\xe8\x1f\xa2\x71\x15\x09\x3f\x0b\x3b\xb0\x09\x5b\xf0\x2a\x3f\x0c\xad\xa9\x07\xfa\xa9\xef\x86\x9e\x81\xde\xb2\xc2\x57\x15\x85\x76\x0c\xf2\xa2\xd0\xce\x73\xa2\xd0\xf6\x76\x15\x85\xd6\x07\x83\xf5\x18\x66\xfc\xce\x14\xe8\xc2\x01\x61\x98\xfb\xf8\xb6\x55\x0c\x33\x61\xdc\xea\x0a\xa3\x0e\x37\x63\x9c\x57\xc7\xb6\x4d\x71\xcd\x1b\x46\xb2\xe5\x12\x4c\xe2\xe7\xaa\xd1\xb5\x28\xb5\xb1\x09\x40\x08\x54\xa8\xfc\x45\x81\x88\xa4\x8b\xa4\xe2\xe9\xba\xf7\xda\xfc\xbd\x9b\x46\xb8\x35\xc1\x74\x17\x11\x6e\x27\x92\x08\xb7\x13\x59\x84\xdb\x46\x26\xc2\xed\x4c\x63\xeb\x60\x48\x22\xdc\x76\xca\x45\xb8\x6d\x89\x11\x6e\x3b\x39\xca\xc5\x56\x1b\xdd\x6b\x1d\xa6\x5c\x6c\xa5\x95\x8b\xfc\x4f\xd8\x12\x95\x8b\xad\x5c\xe5\x62\x6b\xb1\x68\x89\xca\xc5\x56\x5a\x2a\x6c\x69\xc3\xcd\x23\xdc\xe2\x2d\x30\x8a\x70\xdb\x52\x61\x93\x53\x2e\xb6\x04\xd5\x5f\x8b\x29\x17\x53\xe5\x67\xad\xac\x30\xde\x8c\x95\x8b\xad\x62\xe5\xa2\xd8\x83\x7c\x57\xc7\x43\x6c\xe1\xc7\x8b\x22\xdc\xb6\xd2\x11\x6e\xaf\x56\x11\xb0\x14\xf5\xfa\x03\x77\x56\x81\xde\x27\x83\xde\x1e\x0f\x55\x0d\xd7\xf5\x4c\xcb\xd1\xf1\x04\xf7\x5c\xef\x14\xcf\x30\xae\xd8\x10\x06\xbf\x64\xa3\x44\x63\x27\x46\x89\xe1\x33\x0c\x7d\x12\xee\xc7\x28\xd1\x97\x2f\x4d\xc9\x52\xf4\x57\x2e\xc5\xde\x77\x27\x52\xaa\xc0\x2d\x22\xf6\x7e\xe6\x44\x4a\x15\xb8\xa5\x0a\xdc\xf2\xcc\x89\x94\xe7\x1d\xb8\xa5\x80\x48\xa9\x02\xb7\xec\x2d\x70\xcb\x96\x0c\xf5\x22\x12\x05\x8e\xe0\x43\x45\xa4\xac\x8c\xf9\x91\x21\x52\x06\x39\x44\x8a\xb9\x2b\x22\x65\xed\x98\x1f\x11\x91\x92\x09\xeb\xb1\x41\x3a\x1f\x66\xcd\x56\x64\xc0\x96\x31\x6f\xcb\x35\x60\x23\x61\x3e\x9c\x75\x13\xff\x78\x34\x62\x46\x01\xff\xc1\x7d\xae\xc0\x07\x2a\xf4\xa0\x43\x6c\xdd\x36\x32\x77\x33\x80\x11\x99\xbb\x2d\xe1\x63\xe0\x8e\xdd\xbe\xa7\x4f\x06\xf3\x7a\xb0\x46\xaf\x76\xba\x57\xf5\x49\x31\x2e\x76\xc0\xbc\x8c\x25\xcc\xcb\x58\xc6\xbc\x0c\x33\xcc\x4b\x27\x62\x5e\x9a\x84\x79\x69\x95\x63\x5e\x46\x22\xf3\xd2\xca\x61\x5e\x46\x6d\x74\xaf\xb5\x18\xf3\x32\x4a\x33\x2f\xfc\x4f\x38\x12\x99\x97\x51\x2e\xf3\x32\x5a\x2c\x46\x22\xf3\x32\x4a\x8b\x91\x23\xad\xb9\x39\xf3\x82\xf7\xcc\x88\x79\x19\xa9\xf0\x8a\x63\x5e\x46\x02\x2f\x32\x62\xcc\x4b\xaa\xfc\x6c\x94\x95\xde\xaf\x62\xe6\x65\x54\xcc\xbc\x88\x3d\xc8\x8f\x01\x3c\xc4\x11\x7e\xbc\x88\x79\x19\xa5\x99\x97\x87\xf5\x99\x97\xb7\x03\xa4\xdb\xc1\xc0\x18\x20\x63\xe4\x57\x29\x86\x9e\x8b\xf5\xdb\x33\x07\x5d\x87\x11\x1a\xc4\xd8\x37\xe8\xaa\x42\x83\xec\x0f\x74\x19\x22\xe8\x32\x0e\x24\x34\xc8\x73\x31\x65\x4c\x87\xf9\x3e\x34\x53\xc6\xd7\x13\x0c\x3f\x8e\xcf\xd1\x4b\xc7\xe7\xf0\x35\x1b\xf4\x38\xf0\xd2\xcb\x18\x34\xf6\x54\xe8\x17\x1b\x34\x06\x5a\x6f\x33\x05\xaa\x34\x2e\x20\xe3\x6b\xe1\xe9\x7b\xb5\x36\x74\x2d\x87\x94\x1e\xf1\x2e\x14\x31\xbc\x40\x1b\x4a\xd8\x16\x30\x40\xef\xbb\x26\xc9\xe9\x3d\x35\x50\x3f\x27\x73\x55\xf9\x1c\x2b\x61\x6b\x43\x61\x8b\x13\xb5\xb6\x29\x45\xe8\x95\x14\xf1\x8c\xb2\xf9\xd8\x12\x29\xc2\x3e\x6c\x29\x62\x5f\xa9\x7c\xb6\x23\x45\x18\xaf\x46\x8a\xb0\x22\x29\xc2\xe0\xa5\x08\x1b\x86\x9a\x0e\x0c\x95\x4f\xfe\x22\x4a\x11\x86\x0a\xc3\x55\x52\x84\xc1\x49\x11\x7a\x2f\x40\x5e\x6e\x98\x2d\x2e\x56\xd6\xfa\xb2\x04\x4c\x05\xbd\x85\x8a\x15\xa0\x71\xed\x82\x50\x1a\x6c\x33\x57\xd4\x7f\xbe\x3b\x53\x52\x5c\x07\x96\x30\x08\xd5\xed\x2b\x47\x19\x27\x61\x45\x89\xd8\xd6\x00\x92\x7e\x63\xee\x15\xa2\x3c\x19\xc1\xa6\x32\x82\xad\x42\x23\x47\x46\x30\x36\x90\x11\xc6\x28\xd0\x29\x55\x57\x89\x09\x95\x98\x50\x71\x32\x15\x27\x73\xf8\xd2\x54\xc5\xc9\x54\x9c\xcc\xab\x90\xa6\x2a\x4e\xe6\xe0\x38\x19\x2f\x58\x33\x87\x62\x25\x6a\x55\xa2\x56\x25\x6a\x55\xa2\x56\x25\x6a\x55\xa2\x56\x25\x6a\x55\xa2\xd6\x8e\x44\xad\x62\x9a\x0c\x1f\xbf\x29\xca\x2b\x31\x6d\xab\x99\x16\x3d\x93\x49\x98\xb5\x27\xf1\x69\x59\x3e\x0c\x0b\x61\xaf\x40\x08\x8c\x19\xc1\x4a\x12\xac\x24\xc1\x97\x23\x09\x56\x39\x92\x5e\xb1\x24\x58\xe5\x48\xaa\x72\x24\x55\x39\x92\xaa\x1c\x49\xa2\x03\x89\x10\x73\x63\x93\xa8\x1a\xe6\x73\x27\x20\xc5\x54\x4d\xbb\x96\x3d\x9f\x9c\x58\x29\x25\x7b\x92\x05\xbd\xa6\xec\xc9\xd7\x8c\xad\x07\xcb\xf1\xdf\xce\xac\x60\x70\xda\xb5\x5d\x63\x64\x39\xfd\x53\x1a\x6f\xdd\x5f\x99\x71\x09\x86\xd0\x80\x3e\xec\x25\x8b\x74\xc2\x6d\x76\x93\x97\x2a\xbc\x9a\x89\x97\x7a\x6a\xed\x64\x7c\xcc\x85\xec\x05\xe5\x5d\xcd\x79\xa7\xf8\xe8\x9d\xe7\x05\x6b\x30\x57\x7a\xc8\x8f\x0f\xc9\x5f\x7d\xbe\x53\xc4\xd0\x3d\x08\xc4\x30\x10\x10\xc3\xe0\x59\x22\x86\xe1\xbe\x11\x43\xca\x63\x39\x2f\x74\xda\x13\x11\x43\xbf\x42\x0c\x85\x88\x61\x28\x22\x86\xe1\x2e\x11\x43\x43\x82\x18\x1a\x05\x88\x61\x92\x8f\x18\x66\x02\x62\x98\xed\x0f\x31\x0c\xb9\x43\x74\xb8\x0f\xc4\xd0\x01\x55\x2a\x9e\x57\x90\x8a\xa7\x99\x9f\x8a\x47\xee\xd5\xef\xae\x4e\xdc\xc3\xa4\x12\x12\x02\x40\x7e\x71\x0f\x21\xb3\xab\x1b\x23\x45\x85\xba\x90\xe0\xa7\xf7\x6a\x40\xdf\x34\x02\x7d\x56\x3a\x6a\x80\xab\xf5\x81\xc5\x81\x3e\x2b\x06\x7d\x6c\x0f\xb4\xb6\x1e\x35\x60\x0c\x66\x00\x69\x2e\x0f\xfa\xdc\x82\xa8\x01\x21\x9c\x91\xa8\x01\xe4\x36\x02\x8f\xc8\xb4\xde\x91\x14\x1f\x86\x50\x19\xbf\x6b\xe8\xb3\x1a\x0e\x09\x5a\xbb\x42\x82\x30\x28\x0c\x4b\x90\x09\x5a\x90\x1f\x96\xc0\x13\xd3\x08\x21\x75\x65\x98\x82\x20\x0a\x53\xe0\x40\x2c\x95\xd7\x3d\x18\x49\xea\xeb\x46\x2c\x30\x81\x0a\x1d\x18\x60\xd9\x6f\xf3\x88\x8d\x03\x30\x04\xd6\x76\x01\x2c\xeb\xde\x72\xa6\xba\x6d\x99\x7a\x80\x5a\xec\x23\x5f\x27\x38\x44\x0a\x96\x47\xeb\xa1\x86\x1e\x90\x11\x06\xfc\x04\x24\x28\xaf\xc6\x2d\xa9\x9a\x87\xc6\xee\x14\xe1\x79\x17\xe2\x36\xa8\x8f\x4e\xcd\x43\x3d\x0f\xf9\x03\x40\xe7\x09\x2a\x26\xb2\x51\x80\xa2\x64\xc6\x5d\x49\xa8\x83\x2e\x0d\x75\x60\x71\x98\xbb\x86\x1e\x02\xe4\x98\x20\xc9\x00\xa5\xc2\x50\xeb\x00\x60\x6b\xbd\x54\x16\x1b\x66\x51\x5d\x3a\x8b\x8d\xa1\x75\xf8\x14\x3d\xc2\x27\xd4\x76\xcb\xb6\xef\x8b\xed\x27\x5f\x61\xdb\x2a\xdb\xb8\xd0\xb4\x64\x4d\xb4\xf5\xd5\xe9\x78\x56\xb4\xa1\xc2\x54\x0a\x23\x9b\xa7\x45\x9a\x2b\x69\x11\xf2\xf5\xf9\x6f\xd7\x4d\xcd\x13\x5d\x8f\x4c\x2b\x90\x51\x23\xa4\x1d\xcb\xe9\x9f\x4a\x15\x77\x18\x3f\xf1\x5a\xad\x58\x70\xf3\x5e\x2a\xfb\xe1\xee\x14\x88\x5b\x07\x01\xc4\x2b\x9d\x54\xa5\x93\x92\x23\x4c\xaf\xd2\x49\x55\x3a\xa9\x83\x87\x27\xb1\x4e\xca\x4f\xc3\x93\x50\xb3\x81\xcf\xc1\x93\x38\x5e\xeb\x91\x4b\xbf\x13\x7f\x07\xf9\x47\x0d\x80\xb4\x90\x87\x27\xa1\x14\x9e\x04\x68\x3c\xb1\x75\x0a\x11\x14\xa8\x88\x27\x7b\x0a\x7a\xf8\x1c\xf4\x28\x4e\x26\x4a\x45\x49\x4b\x22\x4a\x5a\x54\x94\xf4\x8b\x45\xc9\x8d\x14\x3a\x29\x49\xe4\x89\x9a\x1c\xda\x08\x55\xe8\xac\xa7\xc7\x39\x4a\x1f\x3d\x6c\x5b\xb0\x5f\xaa\xfc\x12\x1e\x92\xd6\xc3\xd8\xa9\xb0\xe5\x1f\x84\xb0\x25\x9c\x15\xa0\xf7\x2c\xb5\x1e\xdd\x7d\x6b\x3d\x26\x29\x99\x74\xb2\x55\x99\xd4\xac\x64\xd2\x42\x99\xb4\x2b\xca\xa4\xdd\x5d\xca\xa4\x63\x89\x4c\x3a\x2e\x90\x49\xed\x7c\x99\x74\x2e\xc8\xa4\xf3\xfd\xc9\xa4\x5d\xee\xf0\xc9\x89\x31\xfd\x8c\x8d\xe6\x07\x70\x0a\xfb\x90\x25\x1f\x5a\x2b\xc5\x7d\xc4\x3a\x42\xfd\xd5\x88\x95\x93\x9c\x58\xb9\xae\x66\xe6\xc4\xca\x35\x76\x15\x2b\x37\x04\xf3\xf5\x58\x6f\x9a\xbb\xda\x82\xf3\xa2\x58\xb9\x96\x7f\xc1\xd8\x26\x19\x25\x4b\x6f\x51\x18\x21\xa5\x69\x5a\x50\x0b\x74\xaf\x8f\x02\x91\xcd\x9e\xb8\x13\xb0\x32\x9d\x7c\x92\x5f\x23\x4e\xeb\x1e\xf1\xd4\xd1\x30\x72\xb8\xdd\x4c\x42\xf9\xb5\x12\x15\xd1\x61\xd7\x3d\x68\x1a\x75\x97\x46\xde\xf5\xce\x9a\x9e\x3b\xb6\x7c\x54\xf3\x90\xef\xda\x53\x04\x9c\x68\xa5\x3c\x9e\x5f\x7c\xf6\xeb\x8f\x4d\xd7\xb6\x8c\xf9\x25\xfd\x4e\xfc\x7a\xfb\x1e\xde\xb9\x36\xe2\x7e\x2f\x97\xaa\x5a\x77\xf8\x7c\xf4\x34\x00\xf0\xc6\x7c\x77\x0f\x74\x77\x11\x27\xd7\x97\x48\xfc\x7e\x36\x4e\xae\x8c\x3c\x1e\x68\xc0\xd5\x74\x9e\x3a\x9e\x6a\x6c\x19\xf5\xb5\xb6\x77\x0f\x1b\xe5\x22\xe7\x0e\xc5\xc8\xb9\x8d\x1c\x2d\xec\xb0\x8d\xee\xb5\x06\xd3\xc2\x0e\xd3\x5a\x58\xfe\x27\x1c\x8a\x5a\xd8\x61\xae\x16\x76\xb8\x58\x0c\x45\x2d\xec\x30\x2d\xda\x0d\xb5\xfe\xe6\x91\x73\xf1\xfe\x19\x45\xce\x1d\xaa\x70\xc6\x69\x61\x87\x82\x8e\x74\xc8\xb4\xb0\xa9\xf2\xb3\x61\x56\xa2\x9e\xc5\x5a\xd8\x61\xb1\x16\x56\xec\x41\x7e\x24\xe0\x21\x0e\xf1\xe3\x31\x2d\xac\x36\x84\x2e\x8f\xef\x3a\xeb\xe2\xbb\x0d\x42\xb8\x6d\x05\xe0\x41\x1b\x86\x47\x69\xda\x29\x76\x4e\x7b\xa1\x20\xcf\xdf\xab\x89\xde\x5f\xde\xfe\xe5\x2d\xde\xcc\xe8\xfb\xde\x3c\x6b\xcd\xa1\xa0\xd3\xc9\x4e\xd1\xa9\x79\x10\xe8\x74\x2c\xa0\xd3\xf1\xb3\x44\xa7\xfd\x7d\xa3\xd3\x79\x0a\x9d\xce\xb7\x8a\x4e\xbb\x15\x3a\x2d\x44\xa7\x7d\x11\x9d\xf6\x77\x89\x4e\x07\x12\x74\x3a\x28\x40\xa7\x46\x3e\x3a\x9d\x0a\xe8\x74\xba\x3f\x74\xda\xe7\x4e\xcd\xfe\x3e\x34\x26\x8d\xef\xab\x31\xe1\xed\x20\x2b\x5b\xc0\x97\x6f\x0b\x38\xdc\x81\x2d\x60\xcc\x70\x84\xaf\x86\xe1\x98\xe7\xda\xf5\x75\x73\xec\xfa\x26\xbb\xb2\xeb\xeb\x81\xe9\x26\x76\x7d\x3a\x24\x09\xfb\x21\xb9\x2d\xe6\x3d\x6c\x56\xda\x60\xa5\x85\xc9\x96\x37\x71\x03\x5b\xc7\xf8\x2f\x8f\x91\x58\x99\x3a\x59\x48\xff\xf3\x14\x33\xba\x31\xe8\x6f\xdb\x8c\xee\x5e\x3d\x39\x31\x25\xb4\x82\xb9\x9e\x4d\x9a\xae\xcd\x00\xb0\xb4\x70\x27\x36\x69\xb6\x36\xe3\x1f\x37\x7a\xfd\xe5\x8d\xd1\x2c\x1e\x21\x0f\x57\x21\xe4\x28\x86\x42\xa9\x28\xe7\x55\x66\xdf\x7d\x3b\xa6\xb1\x40\x18\x1b\x27\x0e\x3e\x14\xdc\x5b\x69\x65\x2b\xad\x6c\xa5\x95\x7d\xf6\xb8\xf7\x79\x6b\x65\x0b\x72\xa7\x56\x5a\xd9\x5c\x9f\xd7\xc3\xb0\x14\xe4\x74\xc1\xb0\x59\xe5\x4e\xdd\x54\x1f\x6c\xed\x4b\x1f\xbc\x41\xee\x54\xaa\x0f\x1e\xe0\xdb\x56\xe1\xa2\x40\x0f\x42\xbf\xae\xd0\x7f\x15\x48\x5f\x38\xae\xc5\xff\x2a\x70\x64\x39\x66\x5d\xc1\xff\xdd\x10\x43\x6d\x90\xad\x15\xd5\xfc\xc5\x42\x51\xa0\x83\xff\x22\xe3\x38\x72\x4e\x4e\x80\xa3\x29\xd1\xe8\xb8\x2c\x05\xa7\xef\x89\x8e\x9a\xc8\xe0\x8d\x1e\x70\xd4\x93\x13\x10\x68\x41\xa4\xa9\xfe\x1f\x87\xcf\x69\xc0\xdc\xae\x48\x61\xe0\x59\x63\xa0\xaa\xf4\x55\x6e\x94\xfd\xf5\x29\x8a\xe9\x38\x1b\x2c\x51\x4c\x07\xc8\x1b\xfb\x75\x05\xef\xac\xc1\x59\x6a\xac\xf5\xf6\x3d\xdc\x08\x32\xd2\xdc\xad\xee\x53\x60\xe3\x7e\xb5\xd1\x2a\x9c\x66\xb2\xb6\xf6\xa3\xac\xad\x0d\x92\xb5\x75\x56\x4e\xf7\xdc\x11\x75\xcf\xb3\x1c\xd6\xaf\xd3\x46\xf7\xda\x8c\xb1\x7e\x9d\x34\xeb\xc7\xff\x84\x1d\x91\xf5\xeb\xe4\xb2\x7e\x9d\xc5\xa2\x23\xb2\x7e\x9d\xb4\x00\xdb\xd1\x1a\x9b\xeb\x9e\xf1\x6e\x1d\xe9\x9e\x3b\x2a\x1c\x72\xac\x5f\x47\xe0\xe4\x3a\x8c\xf5\x4b\x95\x9f\x75\xb2\xb8\x61\x18\xb3\x7e\x9d\x62\xd6\x4f\xec\x41\x7e\x00\xe1\x21\x76\xf0\xe3\x45\x59\x5b\x3b\xe9\xac\xad\x2b\xbd\xa2\x38\x64\x4d\xd1\x4a\x05\xae\x9f\x0c\xae\x27\x12\xb4\x7b\x1a\xcd\x6b\x5c\x91\x8e\xc6\xb2\x0e\x02\x96\xb6\x3f\xc1\x92\xf5\xaa\xd6\xc3\x95\xad\x1b\xbc\xe1\x10\xff\x01\x53\x11\x59\x0a\x82\xe8\x14\xf9\x11\x28\x2b\xba\x06\x37\x13\x60\x3c\xa9\x79\x35\x7a\x6e\x71\x5f\x5b\xf2\xad\xad\xc2\x5a\x78\x8c\xdc\xe6\x40\x04\x7f\xa7\x36\x09\xfd\x01\xdb\x30\x1d\x0c\x42\x59\x63\x8e\xe0\xcf\x92\x48\x04\xef\x3f\x04\x3f\x8a\x52\xc1\x87\x20\x02\xce\x8e\x46\x65\xa5\x44\x0c\x08\xee\xcf\xf8\x1f\xf5\xc7\xe5\x51\xf0\x5f\x7f\x3b\x33\xd8\xb4\xe0\x33\xf1\xcd\x3b\xd9\x46\x17\xa8\x8f\x43\x2a\x9f\xb6\x83\x7b\x7c\x5e\xd4\x57\x3c\xa1\x2f\x15\x5c\x29\xc9\xb2\xea\x56\x2c\x80\xd4\xb9\x31\xe5\x0c\x28\x5f\x32\x5e\x35\xfb\x0e\x0c\x28\x57\x9a\x85\x01\xbd\x52\x8b\xbf\xb7\x72\x79\x4e\xd2\x5b\xb2\xc8\x57\xc1\xad\x11\x55\x69\xeb\x82\x43\x21\x9c\xc6\x3b\x25\x9c\xe6\x07\x41\x38\x75\x05\xc2\xa9\xfb\x2c\x09\xa7\xd9\xbe\x09\xa7\x94\xaa\x1d\x0c\xb6\x4a\x38\x4d\x2b\xc2\xa9\x90\x70\x9a\x89\x84\xd3\x6c\x97\x84\x53\x5f\x42\x38\xf5\x9f\x46\x38\x35\x04\xc2\xa9\xb1\x3f\xc2\x69\xc6\xc9\x92\xb3\x7d\x10\x4e\xc3\x43\x24\x9c\x3a\xb0\x09\x5b\xf0\x0a\x8e\xe0\x03\xbc\xab\x08\xa7\x3c\xc2\x69\x90\x4b\x38\x4d\x73\x08\xa7\xf1\xae\x08\x27\x13\x34\x36\x23\x9c\x1a\x45\x0e\x08\x2b\xe8\x1f\x2e\x1e\x4b\x5e\x54\x9c\xf5\xe9\x9a\xc5\x42\x61\x2b\x50\x29\x8a\x83\xe3\xc0\x98\xa0\x21\x4e\x03\x05\xe4\x0b\x0f\xc6\x7b\x84\x7c\x71\x20\xaa\x59\x26\x44\x35\xc7\x35\x11\x8c\x5d\x03\xd4\x65\x26\x0e\x8c\x9b\x6b\x27\xe0\x03\x1f\x3c\x2e\xa1\xab\xc2\xc7\x25\x7c\x24\x38\xea\x06\x05\x7a\xbd\x8d\xd1\xae\x83\x8c\xe0\x94\x94\x29\x50\x19\x23\x7f\x70\xda\xd7\x03\x34\xd3\xe7\xca\x7d\xcd\x72\x0c\x3b\x34\x91\x0f\x92\x2c\x09\x2e\x86\xa8\x63\xa8\xfc\x62\x39\xa6\xa2\xaa\x67\x78\xf9\xd6\x83\x35\x1e\x27\x5c\xf1\x38\x99\xe7\x11\x36\xde\x54\xa2\x86\xf8\x19\x6a\x2d\xfa\xf1\x5e\x5f\x2a\xaa\x1a\xed\x75\x47\xf4\xcc\x79\xb4\xcc\xfa\xea\xbb\x68\x6c\xa2\x9c\xeb\x6e\x5d\x13\xef\x0b\x78\x94\x2b\x9a\x22\xce\xd6\xea\x32\x6f\x1d\xb0\x57\x80\xb8\x57\x90\x3b\x6b\x59\x06\xce\x81\x2e\x9e\x35\x97\xce\x9a\xcb\xcf\x1a\xfb\xbf\x8d\xb8\xb9\x2e\x98\xed\x82\x9b\x9b\x4b\xb8\xb9\xb9\x8c\x9b\xeb\x64\xb8\xb9\x66\xc4\xcd\xb5\x08\x37\x77\x55\x8e\x9b\x7b\x10\xb9\xb9\xab\x1c\x6e\xee\xa1\x8d\xee\xb5\x2b\xc6\xcd\x3d\xa4\xb9\x39\xfe\x27\x7c\x10\xb9\xb9\x87\x5c\x6e\xee\x61\xb1\x78\x10\xb9\xb9\x87\xb4\xac\xff\xa0\xb5\x36\xe7\xe6\xf0\xc1\x16\x71\x73\x0f\x2a\x1c\x71\xdc\xdc\x83\xc0\x9c\x3d\x30\x6e\x2e\x55\x7e\xf6\x90\x85\x58\xa3\x98\x9b\x7b\x28\xe6\xe6\xc4\x1e\xe4\x67\x35\x1e\xe2\x03\x7e\xbc\x88\x9b\x7b\x48\x73\x73\x77\x1b\x73\x73\x6f\x75\xd3\xc4\xe7\x66\x95\x4c\x64\x2d\x66\xae\x4a\x26\x72\x28\xc9\x44\xaa\xb4\x72\xaf\x18\x1d\x57\x69\xe5\xaa\xb4\x72\xaf\x02\x65\xbe\xda\xb4\x72\x69\x20\xf5\x46\x40\x2f\x18\x41\x45\xb8\xa1\xc6\x80\x54\x95\x63\x6e\x75\x8e\xb9\xac\x78\x88\x25\x42\x1f\x99\x13\x3d\x18\x54\x12\x62\x25\x21\x56\x12\x62\x25\x21\x56\x12\x62\x25\x21\x56\x12\x62\x25\x21\xee\x57\x42\x7c\xf9\xa2\xd7\x00\xe9\x76\x30\x30\x06\xc8\x18\x55\xa2\x57\x25\x7a\x55\xa2\x57\x25\x7a\x55\xa2\x57\x25\x7a\x55\xa2\x57\x25\x7a\x55\xa2\xd7\x6e\x45\xaf\x27\x86\xcd\x0b\x03\xcb\xf6\x93\x7a\x64\x5a\x1e\x32\x82\xd3\xc0\x95\x45\xcd\xdb\xce\xd7\xe4\x69\x99\x48\x0e\x8f\x51\xc7\x75\xf0\x0e\x26\x61\x1d\x80\x92\x12\x28\xd5\x25\x3f\x47\xde\xe6\x73\x34\x46\x81\xce\x62\x42\x54\xa2\x69\x25\x9a\x56\xa2\x69\x25\x9a\x56\xa2\x69\x25\x9a\x56\xa2\x69\x25\x9a\x56\xa2\xe9\xee\x44\xd3\x70\xe2\x07\x1e\x22\xce\xff\x95\xdc\x55\xc9\x5d\x2f\x46\xee\xf2\x2b\xb9\xeb\xf5\xca\x5d\xcf\x3b\xd1\x62\x81\xdc\x55\x25\x5a\xac\x12\x2d\x1e\x9a\xc8\x67\xa6\x45\xbe\x89\x66\x03\x93\x13\xf9\xcc\xd8\x21\x8d\x49\x7c\xe6\x26\x0e\x69\xae\xf6\xee\x83\xfb\x63\xf0\xc1\x25\x0e\x69\x2e\xef\x90\xe6\x0a\x89\x16\x27\xbc\x43\xda\x44\xea\x90\xb6\xb5\x18\xb0\xe6\x73\x97\x48\x7d\x60\x7e\x57\x89\xd4\xcc\x91\x48\x57\x66\x8e\x8c\x25\x52\xc7\x0d\x7a\x6e\xe8\x98\x95\x1c\x5a\xc9\xa1\xeb\xcb\xa1\x9c\x14\xba\x4d\x01\x4b\xaf\x04\xac\x42\x01\x2b\x14\x05\xac\x70\x97\x02\x96\x2d\x11\xb0\xec\xc3\x26\xb6\x42\x6e\x97\x0a\x0f\x8e\xd8\x32\x5e\x8d\x94\x63\x45\x52\x8e\xc1\x4b\x39\x36\x0c\x35\x1d\x18\x2a\x9f\x9a\x4a\x24\xb6\x0c\x15\x86\xab\x88\x2d\x83\x13\x23\x22\x2d\x9b\xcc\x41\x21\xe3\x34\xa0\x98\x46\x14\x1a\xc1\xaf\x25\x71\xd1\xa8\x7b\x76\xe2\xac\x6d\x99\x79\x27\xb7\x4d\x4f\x6e\x5b\x85\x46\xce\xc9\x6d\xac\x7d\x72\xfb\x03\x77\x56\x3e\x26\x1b\x4d\xf6\x05\x0d\xe8\xf3\x74\x21\xe2\xa3\x34\xbf\xcc\xb3\x7c\x12\xcb\x8a\x53\x3e\x40\x55\xe0\x4e\x5c\xdb\xed\xcf\x25\x41\xa9\x26\x2b\x83\x52\x99\xf2\x36\x27\x9e\xfb\x60\x21\xff\x6d\xcf\xf5\x4e\xd9\xeb\x13\x9a\x36\x57\x36\x3d\x96\x37\x6d\x5a\xbe\xe1\x4e\x91\x37\x3f\x35\x06\xba\xe5\x08\xcd\x8e\x57\x36\x3b\x7f\xd1\x51\xde\xba\x3b\x89\xf2\x36\x5f\x27\xca\xdb\xdd\xf7\x8d\xf2\x36\xdf\x4f\x94\xb7\x81\x7c\x55\x8a\x51\xde\x8a\x96\xfe\x60\xe5\x1a\x9d\x7e\xf7\x50\x6f\x7d\x10\xa7\x30\xc2\x3b\xa4\xfa\x88\xc5\x3f\xfc\x9c\xb6\x86\xda\xd6\x3d\xd0\x55\x18\x6a\x36\xe3\x21\xa9\x10\x67\xc4\x03\x24\x07\xb6\x03\x0c\x75\x69\xd7\x4c\xd7\x41\x67\x01\x08\xd5\xba\x98\xff\x34\x64\x71\x3c\x48\xd8\xd8\xb8\xe3\xc6\x21\xc5\x98\x9b\xed\x14\x0d\x0d\x0f\x02\x0d\x75\x04\x56\xbe\xf3\x2c\x59\xf9\x87\x7d\xb3\xf2\xcd\x14\x68\x6c\x6e\x15\x34\xb6\x2a\xd0\x58\x08\x1a\x1f\x44\xd0\xf8\xb0\x4b\xd0\x78\x25\x01\x8d\x57\x05\xa0\xb1\x97\x0f\x1a\x47\x02\x78\x1b\xed\x8f\x95\x7f\xe0\x24\xe2\x87\x7d\xb0\xf2\x77\xdf\x97\x95\x8f\xfb\xbd\x00\x55\x32\xbf\x57\x90\xcc\xef\x72\xd3\x08\x80\x79\xa9\xff\xb8\x64\x7e\x96\x13\x20\x87\x9e\xea\xb9\xb9\xff\x42\xeb\x94\xbe\x64\x12\x54\x90\x5e\xd3\xa1\x39\xaa\xe1\xeb\x31\xe3\x69\x46\x6c\x87\x2f\xe4\x00\xc4\xc2\xa7\xd6\x02\x3e\xc7\x78\xc4\x79\xaa\x8f\x68\xa8\x50\xe8\x6f\x3d\xd0\x60\x03\x8c\x00\xd2\x74\x5e\xaf\xa3\x17\x04\x1a\xb4\xe1\x88\x65\xfc\x1b\x71\x79\x00\x43\xa1\x94\xbd\x66\x68\xb0\x72\x4e\xab\xe3\x73\x74\x0c\x9d\xd8\xeb\x78\xe9\x30\x01\x15\xb8\x9a\x87\xfa\xc8\xa1\xb4\xc2\x5d\xe8\x04\xd6\x18\xd5\xc6\xba\x37\x4a\x3e\xe6\x63\x04\x12\xd9\x29\x7a\x16\xc9\x5d\x33\x4f\x9f\xa4\xf7\x28\x22\x59\x7d\x50\xfd\x99\x45\x4e\xd6\xda\xc4\x43\x53\x0d\xd5\x1c\xf4\x10\xa8\x8f\x86\xee\xa3\xe3\x77\xf5\xe8\x78\x93\x2c\xe3\x5a\x3c\xdc\x28\x26\x22\x9e\x82\x68\x8d\x3c\x5e\xea\x81\x6e\x20\x27\x40\x5e\x3d\xa8\x25\x3f\x60\x8b\x7c\x53\xb7\xfa\x18\xd5\x03\x1a\x51\x91\x95\xb4\xd8\x6f\x12\x0c\x91\x8b\x9d\x08\x2f\x91\x1f\x58\x8e\x8e\x7b\x22\xb7\x39\xf4\x36\xbe\xb8\xc5\x0a\x33\xf7\x9e\x93\xa7\xad\x2b\xba\x6d\xbb\x33\x85\xec\x03\xf8\xf9\xb4\xbf\xc3\x64\xc4\x13\xe4\xf9\x96\x1f\x00\x4f\x3d\x22\x4f\xfd\xf7\x3a\xab\xeb\x79\xc8\x1f\x00\x56\xfa\x7f\xea\xf8\x1f\x05\x39\xa6\x52\x8f\x4f\x34\x3f\x70\x27\x40\x25\xea\x3a\xaa\xe3\x22\xdb\xbd\x26\xd5\xcb\x41\x6e\x9d\x46\xef\x09\xaf\x52\x06\x91\xc4\xed\x99\x9e\x3a\x2e\x5b\x89\x44\x70\x4d\x2b\x0c\xfa\xc0\x22\x9f\x8b\x0e\x6d\xa8\xe0\x87\x52\x20\x12\xad\x36\x52\xd7\x90\xad\x81\x5c\xa4\x33\x61\x82\xc0\x5b\x28\x15\x3f\xad\x1c\x36\x51\x8d\x54\x83\xdf\x33\x92\x66\x6e\xf8\x4c\xdf\x0e\xfb\x75\xc6\x43\x66\x43\x69\x16\x26\x32\xe1\x83\xe7\x0d\xe2\xe0\x93\x51\xe8\x44\x18\x7a\x36\xbb\x9d\x7e\xc2\x24\x38\x8b\x5a\x33\x75\x7f\xd0\x75\x75\xcf\xec\x84\x9e\xdd\x09\xd0\x78\x62\xeb\x01\xf2\x21\xa1\xa1\x48\x7c\x41\xc8\x68\xaf\x7a\xfb\x1e\x46\xac\x1a\x4b\xf2\x98\x1b\x92\x73\x45\xa4\x4d\xa8\x58\x4e\x1f\x6f\xdd\x5c\x49\x80\xbc\x31\x59\xfd\x4e\x7f\x45\x44\x4e\x1a\x50\xc6\xaf\xf5\x2c\xcf\x0f\xd8\x46\x2e\x44\x97\x39\x73\xeb\xe2\xd4\x76\x41\x97\x0b\x0a\x4a\x1f\x6f\x9d\x38\x9e\xe3\xec\x54\x46\x13\xb2\xce\xed\x66\xe6\x76\x79\xf4\xcf\x58\x2c\xdb\xe8\x41\x8f\x78\xae\x82\x48\x1f\x58\xa6\xd1\x14\x45\x85\x6d\x71\xca\xbf\xef\x04\xc7\x2b\x65\x9d\x49\x9a\xa4\x26\x09\x5a\x4f\x0d\xf4\xd9\x01\x0f\xc0\xdf\xbe\xe2\x7e\x28\x09\xf4\x39\xa4\x81\x3e\xfd\x54\xa0\x4f\x5b\xbb\x00\x40\xd7\x7c\x59\xa6\x56\xa7\x6c\x42\xd5\x50\xbb\xe0\xa3\x98\xc6\x99\x5a\x4b\xa7\x80\x35\xc4\x86\xa3\x33\xbe\x7c\x12\x58\xb1\x61\x51\x2a\x68\x5b\xf7\x2b\x69\xcb\xc2\x16\x54\x98\x0a\xec\xaa\xf3\x2a\x98\xcb\x8d\x54\x30\x59\x2f\xb3\x94\xba\x85\x33\x91\x08\x38\x10\x19\xbc\x54\xb5\x8a\xb3\x53\x52\xd0\x3b\x08\x52\xd0\x4d\xb1\x5d\xee\x56\xd9\x2e\xab\x62\xbb\x0a\xd9\x2e\x5b\x64\xbb\xec\x5d\xb2\x5d\xba\x84\xed\xd2\x01\x4a\x88\x9a\x37\x4e\x8a\xed\x0a\x48\x6e\x3c\x09\x72\x75\xf6\x6b\x22\xe1\x08\xe2\x32\x5b\xba\xf6\xc1\x99\x48\xa4\xf2\x5a\xbd\x64\xce\xc0\x8d\x38\x83\x10\x32\x81\x0a\x1f\x4f\x94\x3d\x40\x30\xc0\x40\x47\xb3\x40\xc8\x61\xa5\x30\xd1\xaf\x39\x74\xd9\x86\x2a\xb4\x8b\x6d\x25\x90\x16\x42\x10\x44\xe0\xbc\x20\x9c\xe3\x13\xed\x2e\x61\xa0\x29\x91\xc4\xa7\x64\x50\x12\x22\x84\x45\x2a\x2a\xa4\x43\x43\xca\x5b\x28\x62\x38\x14\xf5\x88\xe1\xf6\xd4\x45\x2b\x05\x51\x82\xeb\x33\x70\xa2\x9e\x6a\x24\x1a\x19\x87\xda\x15\x95\xa8\x1f\x95\xc4\x7f\x47\x3d\xea\x7a\x48\x1f\x11\x6c\x2c\x95\x95\xeb\x81\xa6\xc4\x19\xce\xf9\x8b\x53\x72\x36\xbe\x2a\x56\x97\x46\x97\xb1\x05\x5e\xf7\x4e\x4e\xd6\x1d\x58\xd2\x86\xba\xcc\xda\xaf\xc4\x49\x3b\x11\x24\x2f\x85\xfd\x0a\x54\xb2\x85\x61\x99\xd5\x03\xdc\xd2\x85\x81\x0a\x75\x52\x06\x75\x15\x86\x78\xe7\x4d\xbe\xba\x70\x53\x31\x29\x1a\x58\x65\x69\x5a\x59\x9a\x56\x1e\x4f\x95\xc7\xd3\x0b\x90\x36\x2b\x8f\xa7\xca\xe3\xa9\xf2\x78\xaa\x3c\x9e\x36\xf2\x78\x5a\x91\xdd\xbd\xf2\x88\xda\xaf\x47\x14\x93\x56\x19\x53\x58\x89\xab\x95\xb8\xfa\x92\xc4\xd5\x2a\x30\xd2\x2b\x16\x57\xab\xc0\x48\x55\x60\xa4\xd7\x25\x33\xee\x3c\x30\xd2\x8b\x0d\x55\x24\x88\x41\x6f\xe9\x0b\x2a\x92\x86\x56\x34\x80\x4c\x2b\xa8\xe4\xa4\xef\x20\x27\x55\x7a\xc7\x17\xef\x9a\x9d\xa7\x77\x7c\xc2\xd1\x6a\x0b\x47\x9c\xbd\x3f\x26\x68\x5f\xde\xd9\xfc\xf1\x7e\x78\x4c\xd0\xeb\x39\xd5\x63\x9d\xa7\x13\x9f\xea\x9a\x05\x1c\xee\x3c\x77\x44\x0e\xc8\x49\x38\x20\x37\xcb\x01\x59\x1c\x07\xe4\xaa\x50\xd7\xde\x7d\xd0\x7f\x74\x3f\xe8\x7f\xfd\xab\x6a\xb5\x75\x9e\x03\xd2\x63\x0e\xc8\x00\x36\x40\x5a\xc0\x73\x40\x81\xc0\x01\x59\x84\x03\x8a\x6c\x22\x49\xc6\x6b\xa8\xac\x3c\x1a\x39\x5e\xc7\xd9\xfa\xe9\x4d\x7a\xa8\x98\x8c\x67\x72\x42\x57\x4c\x46\xc5\x64\x54\x4c\x46\xc5\x64\x54\x4c\x46\x25\xf3\x3c\x1b\x26\x23\xd7\x8f\x85\x5e\xfd\xc8\x3c\x4a\x94\xbf\x28\xd0\x34\xa8\x47\xc8\x84\x68\xb8\x78\x87\x16\xc8\x24\x10\x49\x7d\x12\x39\x87\x44\xae\x51\xa9\xcd\xbe\xef\x19\x75\x54\x8b\x25\x95\x8e\x65\xbe\x82\xbc\xbc\xa2\x74\xb6\x41\xa2\x92\x4a\x3c\xab\xc4\xb3\x83\x10\xcf\x2a\xbb\xa8\x57\x2c\x9e\x55\x76\x51\x95\x5d\x54\x65\x17\x55\xd9\x45\x6d\x62\x17\xa5\x1b\x06\xf2\xfd\xba\x42\xff\xdd\x81\x1d\x14\x93\x63\x23\xe1\x35\xc7\x19\x9b\x89\xb9\xeb\x7a\x64\xf3\x3e\xf6\xc4\x09\x7b\x4d\xc1\x77\x63\x29\xf7\x40\x0d\xa9\x98\xf4\x5a\x09\xb7\x95\x70\xfb\x82\x84\xdb\x8a\x7b\x7c\xc5\xc2\x6d\xc5\x3d\x56\xdc\xe3\xeb\x92\x30\x5f\x58\x7a\xb9\x02\x3f\x56\xfa\x65\xbc\x49\xbc\x2d\x11\x54\x48\xcc\x17\x45\xe5\x03\xfa\x6c\x32\x9a\x8c\x17\x26\x16\xbe\x5e\x07\xc5\x19\xbb\xbd\x96\x0e\x53\x2e\x84\x7c\x8a\xcf\xbd\x17\x2a\x09\xda\xf1\xda\x4f\xcf\x48\x26\xf8\xb1\x10\x8a\xb1\x7c\x0c\x64\x3e\x8c\x33\xf3\x4d\x2e\x8a\xde\x6c\xaf\x8c\xde\x1c\x1e\x52\x48\x63\x63\xa7\x12\xb8\x7f\x10\x12\xb8\x40\xfb\x80\xde\xb3\x94\xc0\xbb\xfb\x96\xc0\x27\x29\x09\x7c\xb2\x55\x09\xdc\xac\x24\xf0\x42\x09\xbc\x2b\x4a\xe0\xdd\x5d\x4a\xe0\x63\x89\x04\x3e\x2e\x90\xc0\xf5\x7c\x09\x7c\x2e\x48\xc2\xf3\xfd\xd1\xcb\x5d\xee\x1c\xed\x1e\x9c\x10\x3e\x80\x53\xd8\x87\x0d\x38\x83\x43\xd8\xd9\x34\x78\xad\xf5\x6a\x24\xf8\x49\x24\xc1\xeb\xe9\xc8\xb2\x96\x66\x02\x3d\x15\x47\x33\xe2\x88\x0d\xf6\x15\x6c\x3d\xaa\x6c\x08\xe6\x00\x69\x16\xcf\x11\x5b\x05\x51\x65\x5d\x38\x17\xe3\xc4\xea\x9b\x01\x86\x1c\x7e\x37\x58\x3b\xd8\x66\x14\x8f\x66\x83\x70\x36\x62\x24\x4f\x07\x5f\x18\xf6\x73\xc3\x76\x9a\x46\x3d\x61\x9c\x21\x93\xb7\x58\xa4\x9a\xc2\xa0\x9d\x0e\x17\xcb\xc7\x06\x2a\x0c\x20\xc2\xa7\xb8\xaa\x2e\x37\xf4\xd0\xed\x81\x2e\xd0\xb7\x8f\x2d\x7c\x49\xe8\x43\x9f\x86\x3e\xd4\x53\xa1\x0f\x07\x1a\xf0\x34\x8b\x0f\x7c\x38\xd5\xd8\x12\xe8\x6b\x6d\xe7\x1e\x36\xb4\x32\xa1\x04\xe1\x50\x7b\x5c\x42\x3e\x50\x79\x23\x27\x50\xf9\xb0\x8d\xee\xb5\x06\x0b\x54\x3e\x4c\x07\x2a\xe7\x7f\xc2\xa1\x18\xa8\x7c\x98\x1b\xa8\x7c\xb8\x58\x0c\xc5\x40\xe5\xc3\xb4\x60\x36\xd4\xfa\xeb\x04\x2a\x4f\x65\x40\x01\x78\xf7\x43\xea\x62\x81\x96\x2a\x1c\xaa\x70\xc6\x05\x2a\x1f\x0a\x61\xc4\x87\x2c\x50\x79\xaa\xfc\x6c\x98\x95\x87\x67\x71\xa0\xf2\x61\x71\xa0\x72\xb1\x07\xf9\x86\x8e\x87\x38\xc4\x8f\x47\x03\x95\xbb\xda\x10\x7a\x3c\x92\xec\x6c\x86\x24\x03\xbd\x5f\x79\x62\x57\x3a\x84\x4a\x87\x50\xe9\x10\x5e\x04\x82\xa9\x74\x08\x95\x0e\xe1\x55\x20\x90\x97\xaa\x43\x38\x40\xe2\xfe\x68\x03\x71\x2b\x8e\xc9\x59\x85\xb5\x0e\xaa\xb0\xd6\x9c\xf0\xc7\x89\x55\xee\xb3\x14\xab\xc2\x7d\x8b\x55\x55\x82\xf4\xd7\xe2\x85\x9f\x97\x20\xfd\x80\xa3\x7f\xbf\x98\x04\xe9\x2f\x5b\xaa\x8a\xf3\xa3\xfb\xf2\xe8\xdf\x36\x34\x34\x3d\x93\x37\x2c\x66\x0c\x59\xe2\x30\x68\xac\x8a\xfe\xed\x73\xd1\xbf\x9f\xa1\x7c\xe5\x82\x70\x17\x79\x5b\x32\x31\xb0\x6d\x1a\x03\xdb\x26\x79\x5b\x9e\x9e\xad\xfd\x6d\x12\x35\x7c\xc3\x30\x3a\xb1\x21\x45\xc5\x6e\x55\xf1\x73\xaa\x93\xbb\x8a\x9f\x53\xc5\xcf\xa9\xe2\xe7\xbc\xf2\xf8\x39\x5c\x0a\x8e\xb2\x91\x73\xca\xf8\x5f\xbf\x66\x23\xc5\x03\xb2\xec\x0b\x77\x2a\x39\x18\x07\x41\xe0\xf8\x29\xf9\x26\xc7\xa7\xf4\x89\xf2\x4d\xaf\x92\x6f\x0a\xe5\x9b\xb1\x28\xdf\x8c\x77\x29\xdf\x4c\x24\xf2\xcd\xe4\x69\x26\x6b\xa6\x20\xdf\x98\xfb\x93\x6f\xc6\xdc\xae\x3a\x3e\x38\x72\x62\x0e\xbb\x30\x36\x5b\xcb\x37\x59\xe3\x32\xa8\x9b\xc6\xab\x32\x56\xf3\x73\x8d\xd5\x7a\x39\xc6\x6a\xe1\xae\x8c\xd5\x6c\x60\xae\x67\xac\x46\x73\xa9\xba\xd0\x7c\x8a\xb1\x5a\x9e\x55\x98\x15\xa0\x71\x3d\x49\xcb\xdd\x47\xc1\xb9\x11\x58\x53\x04\x78\xeb\xae\x62\x27\x16\x3a\x17\x08\xcb\x11\x63\xea\x81\x12\x78\xba\xe3\x5b\xb8\xfe\x8b\x9b\xf2\x4a\x56\x60\xe2\xed\x12\x40\x85\x88\x5b\x2a\x63\x42\x0c\x89\x19\x97\x21\x33\xe3\x9a\x67\xcc\xb8\xba\x1a\x9b\x9c\x01\x31\xe3\x9a\x96\x33\xe3\x6a\x88\x66\x5c\xd3\x1c\x33\xae\x46\x1b\xdd\x6b\x53\x66\xc6\xd5\x48\x9b\x71\xf1\x3f\x61\x43\x34\xe3\x6a\xe4\x9a\x71\x35\x16\x8b\x86\x68\xc6\xd5\x10\x4e\x61\x6d\xb0\xb9\x19\x17\xde\x11\x22\x33\xae\x86\x0a\xfb\x9c\x19\x57\x43\x34\xb2\x62\x66\x5c\xa9\xf2\xb3\x46\x56\xf8\xe9\xc7\x66\x5c\x8d\x62\x33\xae\x4c\x0f\xd2\x4d\x0e\x0f\xb1\x81\x1f\x2f\x32\xe3\x6a\xa4\xcd\xb8\x66\x85\x72\xb5\xe3\x06\x3d\x37\x74\xcc\xca\x72\xeb\xb9\x70\x5b\xcf\x5c\x42\xad\x74\x67\xaf\x85\x81\xcb\xd3\x9d\x1d\xb0\x49\xd2\x8b\xd1\x9d\xbd\x70\x39\x33\x56\x9e\x19\xbc\x9c\x69\xc3\x50\xd3\x81\xc1\xc9\x99\x46\xc6\x24\xc9\x50\x61\xb8\xca\x24\xc9\xe0\x04\xbf\x2e\xea\xb9\x1e\x2a\xce\x98\x8b\xa7\x8c\x0a\x60\x6c\xd2\x9a\x7a\x1f\x1d\xe3\x8d\x9d\x1e\x9d\xea\x11\x9d\x5a\x7c\xd6\x98\x48\xfb\xfb\xbb\xbf\x43\x94\x63\x06\x64\x53\x33\x20\x5b\x85\x46\x0e\x0d\x56\xac\xaf\x62\x9e\x10\x6b\x1d\xd6\x7c\x0d\x72\xa6\xa9\xdf\x61\x60\xd9\x7e\x7c\x7d\x22\x78\xe2\xd7\x20\x9e\xf2\x94\x3f\x22\x1b\x0e\xb4\xa0\x8e\x5f\x03\x34\x78\xb5\x25\x1f\x04\xeb\x85\x9e\xfc\x3d\xae\x5b\x61\x33\x23\xb0\xa5\x66\xf9\x14\xbe\x20\x55\x8d\x7d\xd2\x90\x8a\xf7\x9f\xc5\x62\x4e\xfe\x6b\x92\xff\x72\x8b\x4b\xfa\x3d\x5e\x3b\x53\xdd\xb6\xcc\x63\x3d\x08\xd0\x78\x12\x1c\x07\xee\xb1\x3f\xf1\x90\x6e\x1e\x3b\xae\x73\x4a\xa6\xaa\x6b\x27\xb2\x47\xed\x7f\x9c\x6b\xe7\xd8\xf5\x4c\xe4\xe1\x4b\xbb\xe8\x38\xba\x04\x92\x1b\x74\x3c\xa8\x63\xba\x47\xfb\xf4\xdb\x1e\xe8\x53\x74\xac\x1f\xb7\x85\xd9\xbf\x07\xea\xf1\x18\x05\x03\xd7\xac\x29\xea\x12\xa4\xdd\x28\x37\x7d\x76\xb4\x95\x07\x37\x11\x7d\x7d\xa1\x87\xf6\xf7\xf4\x66\xbc\xbd\xd2\x47\x56\x7c\x72\xdc\x27\xeb\x0d\x71\x2f\x1c\x06\x74\xb7\x72\xb4\x8c\x61\x54\x5a\x4e\x40\x91\xd2\xfd\x1f\xf0\xf4\x7d\x74\x5e\x29\xf4\x26\x45\xd3\x34\x47\x58\xbf\x27\x27\xc0\xd1\x52\x25\x24\x44\x95\x0a\x95\x1b\x7d\x42\x6e\x58\x2c\x94\x16\xa2\xf7\x9e\xd1\xd7\xd2\xf3\x5c\xbc\x06\xeb\xca\x79\xb4\x07\xb2\x0b\xdf\xfe\x3f\x70\x56\xff\x6a\x2d\xae\x55\x27\x00\x67\xf5\x7f\x2c\xde\xff\xdf\xc5\x7f\xff\x4d\x05\x67\xf5\x0b\x5b\x1f\x4f\x90\xa9\xd2\x16\x7e\x78\x5b\x0b\x90\x8f\x71\xf4\x19\x7d\xb6\x88\xb4\xcd\x38\x59\x02\x7c\x4c\x68\x5a\xb0\x58\x04\xff\x44\x4c\x62\xc5\x10\x0c\xe3\x5b\xf6\xeb\x88\x93\x6b\xa1\x97\x02\xfc\x58\xcc\x25\xf2\xad\xd7\x76\xee\x35\x44\xa4\x5b\xb6\xa9\x67\xfd\x30\x65\x06\x6d\xd1\xa7\x2d\xbc\xd4\x63\x2b\xf2\xba\xe7\x96\x66\x6a\x6e\x52\xbe\x96\x87\xc3\x94\x0f\x76\x8a\x43\xa6\x07\x81\x43\xfa\x29\x1c\xd2\xdf\x2a\x0e\x69\x54\x38\xa4\x10\x87\x74\x44\x1c\xd2\xd9\x25\x0e\x99\x49\x70\xc8\xac\x00\x87\xf8\xf9\x38\x64\x28\xe0\x81\xe1\xfe\x98\xf2\x0e\x27\x36\x75\xf6\x61\x09\xd0\x8c\x76\x3c\xe8\xd2\xd7\x68\x69\x8f\x4b\x21\x58\x09\xe1\xf1\xbc\x1c\x1e\xcf\x6a\xa3\x7b\xcd\x63\x3c\x9e\x95\xe6\xf1\xf8\x9f\xd0\x12\x79\x3c\x2b\x97\xc7\xb3\x16\x0b\x4b\xe4\xf1\xac\xf4\x1e\x61\x69\xce\x3a\x3c\x1e\xd9\xca\x63\x6c\x40\x8d\x1e\x16\x0b\x67\xa9\x42\x4b\x85\x2e\xc7\xe3\x59\x02\xcb\x66\x31\x1e\x2f\x55\x7e\x66\x65\xb7\x66\x37\xe6\xf1\xac\x62\x1e\x4f\xec\x21\xff\x74\xb1\xc8\xe3\x11\x1e\xcf\xda\x12\x68\x6c\x69\xc0\x5d\x5b\x8f\x91\x73\x1d\x86\x13\x9e\xa2\xc2\xd7\x03\x40\xfb\x12\x00\x4a\xd0\x8f\xd6\xc8\x00\x50\xaa\xe8\x18\x44\xf8\x73\xdb\x8a\x8e\x2e\x18\x02\xa4\xe9\xbc\xa2\x43\x2f\x50\x74\xd8\x70\x48\x14\x1d\xe4\x36\x5c\x4a\x5f\x1e\x0c\x59\x39\x4a\xe1\x60\x77\x1d\x1c\xcc\x22\x6e\x89\x61\x53\x33\x5e\xf9\x81\xee\x05\x3e\x89\x9f\xa5\xfc\x6f\x12\x8c\x4b\x51\xa2\x61\x82\x77\x10\x8b\x4c\x53\x15\x2f\x29\x37\xf8\x7a\xf7\x59\x51\xd5\xa8\x52\xf9\xdf\x28\x48\x6b\x5c\x14\x25\x1d\xa8\x85\x1e\x21\xb6\x13\x03\x56\xaf\xe6\x21\xc3\xed\x3b\x16\x89\x8a\x04\x2d\x6d\x82\x1b\xf7\x62\x3c\x0d\x5c\xf8\xb8\x4c\x94\x26\x8d\x99\x83\x28\x3f\x80\x27\x4a\xd7\xac\xf6\xbb\x7b\x68\x6b\x16\xdb\x47\xde\x67\x23\x80\xf1\x27\x52\x5b\xcf\xda\xca\xf2\x86\xb2\xf1\x6b\xe8\x01\x3b\xae\x56\x55\x2e\x84\xd8\x8a\xbc\x0d\x9b\xa8\x97\xa2\x50\x04\x88\xcd\xfa\x9a\xea\x26\xfc\x81\xb2\x17\x56\xa3\xa6\x34\x9a\xa6\x05\xb5\xc0\x25\x30\xe2\xe4\x04\xa0\x9c\xb7\x78\x26\xd1\x4c\xb1\x2b\x53\x0a\xaa\xe8\x7e\x48\x15\x5a\x24\x90\x83\x5a\x5f\xa5\xd6\x8a\xee\x8a\x94\x59\xd3\x14\x5f\xe2\xaa\xd0\x22\x65\x78\x5f\x4c\xf1\x25\xd0\xd6\x9a\x00\xe8\x9a\xc1\xab\xb3\xd8\x07\xd0\x76\xef\x61\x19\x45\x96\x0a\x43\xad\xc9\x07\x5c\x48\xbe\xa1\xb6\x55\xb6\x69\x9d\xa7\x7a\x5a\x85\x54\x8f\x8f\x82\xc0\x72\x9e\xec\x53\xcf\x19\x3d\x45\x9c\x0d\xf4\x61\x0f\x4e\x8e\xd2\x76\x02\x4c\x04\x31\x5f\x2a\x73\x33\x3e\x24\x60\x37\xdf\x29\xb0\xeb\x1e\x04\xb0\x1b\x08\x3e\x6c\x83\x67\xe9\xc3\x36\xdc\xb7\x0f\xdb\x34\x85\x7f\xa7\x5b\xc5\xbf\xfd\x0a\xff\x16\xe2\xdf\xa1\x88\x7f\x87\xbb\xc4\xbf\x0d\x09\xfe\x6d\x14\xe0\x5f\x33\x1f\xff\xce\x04\xfc\x3b\xdb\x1f\xfe\x1d\x72\x87\xcf\x70\x1f\xf8\xb7\x53\xe1\xdf\xd7\x80\x7f\x9b\xf9\x76\x7c\x86\x6d\x21\x27\x78\x3b\x08\x82\x09\x09\x0c\x26\xbf\x2a\x96\xc3\x30\x04\x29\x09\xa4\x93\xeb\xa8\xdc\xfb\xd6\xb4\x7c\xfc\x62\x4d\x05\xc3\x12\x7a\x53\x47\x27\x2f\x10\xbe\x9e\x34\x29\xd3\x08\x6c\x5b\x69\xab\x42\x57\xeb\x03\x8b\x03\xdb\x56\x0c\xb6\xd9\x5e\x69\x6d\x1d\x6c\x8f\xc1\x0c\x20\xcd\xe5\xc1\xb6\x2b\x05\xdb\x74\xed\x60\x58\x3d\x23\xb0\x9a\xdc\x18\x83\x70\x43\x28\x35\x8d\x3b\x52\xee\x0b\xe5\x74\x15\xf8\xb4\xb2\xc7\x2a\x39\x84\x6e\x3d\x35\x9e\x1e\x1e\xba\x65\xe8\xec\x0d\xae\x09\x33\x7b\x96\x63\x9e\xdb\x36\x50\xe3\xec\x81\x74\xdc\x1c\xfe\x64\x1f\x3c\x06\x7f\xbe\x9a\x4a\xc4\xc2\x3d\x4a\xda\x1c\xb2\x16\x0c\x90\x93\xde\x39\xd9\x78\xe2\x0d\x82\x8b\xe5\x4d\xd0\x63\x34\xbd\xb5\xae\xed\x1a\x23\xcb\xe9\x2b\xea\xc9\x09\xbd\xc8\xa7\x01\xbf\x09\xc6\x8c\xde\xc1\x63\x74\x19\xdb\x06\x96\xea\x86\x4e\xaa\x03\x30\x04\xd6\x76\x9d\x54\x59\xf7\xe1\xc4\xd4\x03\x24\xef\xd5\x9f\x59\x4c\xec\x30\x74\x1f\x45\x2b\xaa\x9e\x32\xf5\xcc\xcc\xc3\x62\x41\x66\x9b\x95\xeb\x5d\xd7\x0b\x80\xba\x8c\xc1\xde\x51\xf2\x36\x27\xc8\xf3\x2d\x3f\x00\xc0\xd5\x02\x08\x3c\x0d\xa9\x96\x03\x1c\xed\x71\xa9\xe6\x78\x7b\xe1\x06\xd8\x57\xeb\x6e\xe4\xed\x45\xbe\x26\x17\x3a\x11\x8a\xef\x4a\x4c\x52\xbb\xd4\x24\xd5\x4a\xa1\xf8\x50\xeb\x00\x60\x6b\x93\x14\x8a\x8f\xde\x6a\xdb\x29\x0b\xb6\x0d\xad\x03\x6c\x09\x41\xe0\x95\x6d\xd8\x17\x1b\x8e\xbe\xef\xf2\xdc\x43\x4f\x6c\x3a\xb5\x45\x94\x27\x20\x84\xd6\xa3\xf5\xd9\xd6\xef\xe1\x2a\xbc\x22\xbb\x51\x85\x36\xff\xdd\xd8\x3c\xbd\xd1\xcc\xa7\x37\x38\x23\x95\x02\x2f\x6b\xaf\xc0\x64\x65\x66\xd9\xa6\xa1\x7b\x66\xd6\x58\x85\x33\x4a\xf5\x38\x19\xd3\x7b\xa9\x04\x87\xbb\x53\xce\xc0\x3a\x08\xce\x40\x17\x38\x03\xfd\x59\x72\x06\x7b\xcf\xb7\x99\xb2\xde\x04\xf6\x56\x39\x83\xb0\xe2\x0c\x9e\x51\xbe\x4d\x43\xc2\x19\x18\x05\x9c\x81\xf7\xfc\x6d\x77\xf7\x95\x6c\x73\x3b\x30\xb4\xa7\x11\xed\x57\xac\xa0\x0a\xa8\x22\xcb\x57\x79\x9c\xf7\xb2\x61\x9e\x9d\xe8\x54\xa5\x11\x71\xa8\x85\x7b\x8e\x79\xaf\x1b\x9b\xf7\xe6\xac\xfc\x24\x22\x8e\xc1\x45\xc4\x59\x4b\xfc\x8f\x91\x85\x90\x87\x25\x0a\x95\x53\x4f\x47\xce\x59\xaa\x50\x07\x3e\x30\x9e\x0c\x18\x62\x74\x10\x2b\x53\xf3\xfd\xc3\xb2\x3d\x71\x37\x15\xf4\x91\xe4\xfd\x4c\x0f\x3e\x16\xfe\x09\xb5\x15\x48\x1d\xa0\x1c\x01\xa1\xe1\x85\xd6\x76\xee\xcf\x50\xdb\xb9\xd7\x4c\x64\xb8\x26\xfa\x7a\x77\x7d\xe1\x8e\x27\xae\x83\x9c\x00\xe0\x4a\xb5\x4e\x6a\xf1\x9f\xf8\x70\x80\x8f\x4b\xfc\xf1\x12\x38\x60\x89\xb1\x7a\x1c\x6a\xe0\xed\x10\xa5\xde\x9a\x89\x2b\xb1\xcc\xe7\x5b\x4e\xdf\x5e\xd3\xf8\xb9\xd0\x53\x29\xd6\x8f\x69\xfc\x64\xd0\xfd\x59\x7a\x02\x53\xa1\xcc\x8f\x24\x82\xa2\x6b\x70\x33\x01\x16\x66\x34\xaf\x46\x73\xa2\x72\x73\x9b\x1c\xa7\xab\x0e\x7a\x3c\x46\x4e\x7e\x22\xa7\x8e\x53\x9b\x84\x7e\xa4\x9a\x76\xb0\x04\x14\x87\x54\x48\x8b\xbc\x09\x29\xf2\xfe\x43\xf0\xa3\x48\x8c\x7c\x08\x12\xa9\x8d\xee\x23\x09\x13\x12\xdc\x9f\xf1\x3f\xea\x8f\xcb\xa3\xe0\xbf\xfe\x76\xe6\xb0\x69\x01\x1e\x3e\xfb\x64\x7c\x28\x09\xf5\x84\xbf\x62\xaf\x1d\xdc\xab\x4b\x55\xad\xaf\x78\x42\x5f\x8a\x42\xe9\xa7\xb7\xea\x56\xe0\xa9\x6a\x9d\x1b\x53\xce\x80\xf2\x79\xc6\x75\xc4\x2c\x12\xaa\x3f\xcb\x5b\xbb\x87\x18\x40\xc5\xd2\x62\xd4\x5d\x43\x0f\x01\x72\x4c\xf0\x68\xf9\x17\x64\x7b\xaf\xcb\xc4\x3d\x85\x6e\xfd\xcc\x4a\x40\xf7\xfa\x28\x10\x83\x86\x4d\xdc\x09\x50\x97\x90\x70\x4e\x75\x89\xee\x59\x8b\xa9\x88\xc8\x74\x23\x27\xdd\x83\xb5\x7e\xba\x07\x9d\x5e\x1a\x0d\xbd\x78\xeb\x13\xe9\x2e\x8f\x24\x73\x70\x23\xd6\xca\x82\xf4\x19\xeb\xfa\x12\x3a\x35\x3f\xd0\x83\xd0\x67\x94\x98\x7e\xc6\xdd\xdb\xf4\xdc\xb1\xe5\xa3\x9a\x87\x7c\xd7\x9e\x22\xe0\x44\xc7\xe2\xe3\xa5\x1e\xe8\x06\x72\x02\xe4\xd5\x5d\x88\x1f\x85\x35\x8c\x57\xbf\x43\xd8\xb4\x8f\xf3\x96\x1d\xf6\x01\xaa\x59\x26\x74\xa1\x85\x97\x94\xba\x5c\xf2\x5b\x9e\x25\xdf\xf2\x68\x66\xe5\xb7\x74\x03\xf1\xdf\xea\x86\x5d\x10\xe7\xb5\xc4\x1a\x91\x89\x46\xff\x3f\x7b\x6f\xda\xdf\x36\x8e\xa7\x8b\xbe\xf7\xa7\x70\x78\xe7\x7a\x80\x69\x98\x71\xaa\xab\xcf\x99\x51\x8a\xed\x9b\x4a\x5c\x5d\xee\x4e\x62\x4f\x9c\xea\x65\x74\x74\xf3\x83\x49\x48\x82\x4d\x11\x6c\x10\x94\xa3\x96\x74\x3f\xfb\xfd\x61\x21\x09\x6e\x92\xbc\x28\x8e\x6c\xbe\xa8\x8a\x45\x82\xd8\x08\x02\xcf\xf3\x5f\xab\xce\xb0\xe6\x6d\xba\x09\xe2\x5e\x01\xff\xa2\x63\xc7\xe9\x45\xd0\x15\xec\x3d\xbb\x21\xfc\x2d\x4e\x48\x8e\x7f\x0f\x5f\xbd\x28\x09\xf5\x32\x97\xe5\x72\x61\x6d\x88\x72\x26\xd9\xcf\x62\x51\x7f\xe4\xf4\xdd\x8a\x07\x94\x88\x6f\x93\x99\xbb\x9e\xb6\x9d\x17\x46\x9e\x40\x47\x63\x71\x28\x38\x9d\xd4\x8f\x8c\x6d\xce\x6b\xce\x2e\x23\x37\x41\xcc\xcb\xa7\x95\xcb\x69\xe5\xf6\x3c\x82\x23\x54\x88\xcc\x40\x69\x8a\xfe\x42\x66\x0e\x44\xce\x4b\x07\x66\x1f\xe6\xcb\xec\xc3\x6c\x99\x39\x56\xbe\xbe\xf9\x3c\x46\x2c\x20\x3b\xbe\x04\xe5\x08\x6e\xb7\x04\xdf\x04\x81\x44\xd0\x0f\xb1\x0e\xe5\xfc\xe5\xf9\x8d\x76\x7a\x1e\x2f\xb2\x24\x4d\x0f\xf7\x35\x2f\x16\xe5\x75\xfd\x19\x8f\x12\x07\x2e\x16\xfd\x01\x74\x13\x36\x21\x4d\xda\x03\xd5\x04\x59\xf5\x62\x9a\xba\x71\xce\xb8\x50\x1d\xd1\xc4\xbf\xf5\x3b\xb9\xcd\x9b\xad\xb9\xe4\xed\xde\x3b\xbd\xc3\xf6\x9c\xa1\x25\x45\x1e\x37\x7e\xb3\x6f\xde\xbe\x4f\xdc\x73\x16\x52\x7f\xf6\x4e\x8f\x71\xd3\x17\xad\xe0\xc7\xca\xb7\xdd\xd0\xd2\x27\x16\x92\x07\x6e\x67\xe3\x75\x11\xab\x51\x76\xeb\xe2\x7e\x5f\x17\x67\x61\xf7\x6d\x6d\xf6\x6d\xa9\xcf\x8a\x92\x6d\x7d\x50\x66\xdf\x3f\x0d\x48\x24\xa8\xd8\xbc\x1d\xf3\xdc\x83\x7d\x57\x0d\x87\x68\x1d\xd6\xa5\xfe\x90\xf2\x44\x7c\x5b\x4c\x57\x78\x49\x7b\xdc\x4d\x10\xb6\x96\x0c\x95\x4b\x86\x56\x97\x8c\xd1\x00\xbf\x38\xd2\x2a\xe0\x7d\x5c\xb2\xbe\x36\x03\xed\x39\xb0\x97\xf1\x7c\xd0\xb0\xb2\x10\xce\x08\xd2\x7f\x42\xb8\xd7\x50\x8f\xc0\xa3\xf6\x3a\x8a\xa3\xb6\xa8\xe7\xc7\xe6\x7a\x34\x45\x92\x55\x99\x7e\x33\x2f\x7f\xe4\x7f\x5b\xdd\xf8\xdf\xd0\x68\xb4\x6f\x30\x8f\x68\x34\x72\x7a\x5a\xbf\xcd\xa9\xa0\x3e\x0e\xcd\xcf\x18\x27\x89\xba\x59\x62\x6b\xa6\x57\x6f\xc7\xc4\xbf\x4e\x6c\xc7\x01\x0b\x02\x33\x08\xe1\x1f\x8f\xf6\xcc\xef\x5e\x2e\x7f\x2f\x5f\x68\x9b\x2c\xb8\x58\xac\x98\x02\x9d\x61\xd9\xf8\xf0\xe6\x9c\x9f\x00\x9b\xf1\x97\x9d\x9e\x05\x3c\x16\xd5\x4f\xc0\xd2\x9a\xa8\x27\x25\x21\x54\x5f\x83\x68\xf9\x02\xa2\xdb\xad\xfd\x27\x82\xc6\xdd\x3b\x40\x72\xb3\x9b\xb8\x6b\xf0\xa4\x7a\xb0\xf0\x3c\x69\xac\x22\x47\xf7\xc8\xe9\x15\x4e\x27\x8d\x45\x35\x6c\xbc\xd3\x01\x26\xd8\x35\x89\x76\xfb\x5d\xbd\xf1\x7d\x92\x24\x8c\x6f\x32\xe7\xdd\xd1\x77\xfb\xa3\xaf\xda\x9c\x44\xad\xdf\x0c\xae\xc6\x9c\x04\xd4\xc7\x3a\xc6\xae\x90\x03\x64\x5b\x5a\xae\x46\x1e\xd9\xb0\x7e\x1b\xc3\x4b\x54\x2f\x59\x8b\xf9\x42\xe5\x5a\xad\x0f\x1d\x71\x4f\xb8\xef\x48\x22\x68\xa4\x4c\xdf\x1a\x4a\x30\xcf\x79\x13\x86\xfb\x59\x02\xd7\x7d\xf0\x1f\xd0\xa9\x14\xa1\x55\x5a\x69\x7f\x18\x51\x3e\xbd\x34\x5b\xbf\xbc\x74\xc9\xf9\x0f\x13\xbf\x41\xdd\x63\x0d\xf7\x78\xc3\xbd\xe5\x72\xe3\xb7\x94\x05\x55\x3e\xcc\x4c\x3d\x36\xcc\x00\x65\xe9\xf2\x2b\x2a\xdd\x35\x51\x3c\xea\x2a\xc9\x06\x8d\xbe\xd6\x7e\x2c\x16\x2f\xc0\xca\x20\x0c\xa6\x6a\x73\xc0\xf6\x07\x88\x7b\x2f\x8e\x10\xf3\x5e\xbc\x42\x34\x5b\x20\x82\xcf\x72\x0d\x06\x46\xa1\x47\x1a\x82\x75\xbc\x7e\x01\xb8\x07\xb0\x17\xba\x11\xf9\x2a\x00\x84\x6e\xc0\x22\x02\x0f\x0e\x80\x56\x92\x00\xac\x0d\x21\x20\x7a\x21\x16\x8b\xc8\x68\x3e\x94\xc6\xf4\xb5\x6c\x12\xbe\x36\x0a\xfc\x14\xce\x99\xec\x02\xf5\xd2\xe5\x90\x46\x38\x0c\x67\x73\x65\x30\xb0\x58\xe8\x98\x16\xa1\xab\xbb\xbc\x58\x64\x7f\x01\x98\x97\xa4\x43\xc0\x8c\x0a\x96\x2e\xad\x00\xd7\x72\xa6\x1a\x26\xee\x45\x16\x2b\x64\x6f\x65\x20\x91\xa8\x08\x24\xc2\x6f\x19\x48\xc4\x0a\x21\xc2\xeb\x21\x44\x78\x53\x08\x11\xd5\x17\x13\x45\x84\x17\x51\x44\x78\x63\xc0\x0c\x55\xb8\x14\x4f\x84\xdf\x3e\x9e\x08\x87\xe5\x91\xd6\xe6\x6b\xc7\x42\xc4\x44\xdb\x0e\x82\xf2\x78\x9b\x6e\x2e\xa6\x6e\xde\x12\x33\x35\x26\x89\x04\xa7\x24\x01\x11\xac\xeb\x3c\x49\xbe\x6f\x03\x82\x7e\x90\x7b\x74\xd4\x3f\x1a\xec\x45\xfd\x57\xd9\x08\x1d\x6b\xcb\x96\xaf\x5b\x19\xa4\x2c\x61\xd3\xd9\x67\xd7\xb4\xa7\xea\xb1\xf7\xe6\xfe\xab\xc1\xc6\xa2\xbd\xd6\xfd\x96\x1b\x8b\xc9\xe4\xe5\x61\xe6\x91\x5c\xa2\x9a\xff\x0f\x91\x67\xf5\x61\x80\x05\xb6\x4a\xbf\xbc\x4a\x58\xf4\x00\x74\xb3\xf5\x81\xbc\x2f\xf3\xb2\x1e\xb1\x64\xb7\x56\x68\x25\xb3\xf7\xbd\x5c\xc2\x0d\x06\x2a\x3b\x7f\x88\x63\xba\xf1\x48\x55\xe1\x5d\x1d\x2d\x27\xc9\x66\xef\x54\x15\xdc\xd1\x51\x56\x54\x86\xa8\xad\x98\xe5\x28\x60\x97\x51\xda\x58\x5d\x4b\x67\x61\xdb\x59\xd8\xee\x88\x85\xed\xb0\xb3\xb0\x7d\xbe\x16\xb6\xc3\xaa\x85\xed\x70\x47\x2c\x6c\x93\x26\x4b\xd7\xc7\xf1\xca\xb5\xe2\x5c\x82\xe1\x63\x78\xe5\xc6\xbb\x68\x5e\x15\x3c\x1b\x57\xcd\xdc\x86\x77\x52\xb8\x6a\x72\xe4\xa3\xc0\x4b\xc1\xc4\xb2\xdc\x9d\xe4\xae\x9a\xc6\x70\x77\xb2\xd2\x55\xb3\x4c\x85\x10\xf5\x8e\x5e\xd3\x9f\xc4\x6b\xaa\xe8\x10\xb5\x5d\x35\xe9\xa0\x48\xa0\x92\x00\xe2\x05\xb6\xab\x66\x50\x71\xd5\xe4\xca\x55\x33\xe6\x74\x82\xf9\xec\x2f\x64\xe6\xa0\xc8\x3d\xff\x74\xfa\xe1\xcd\xa7\x7f\x7c\xf9\xcb\xc9\x3f\x20\x52\x75\x40\xe4\x24\x61\x3a\x32\xf7\x2f\xde\xff\xf6\x27\x7d\xd3\xf2\xc3\x9c\x20\xc0\x33\x93\x62\x4e\x92\x98\x45\xc1\x2f\x8c\xff\x77\x4a\xf8\xec\x13\xf1\x19\x0f\x9a\x0d\x8b\xcd\xf3\x18\x0c\xc1\xa4\x64\xc3\xdb\x52\x87\xd9\xae\xe4\x56\xa9\x26\xad\x59\xa3\xd0\x6c\xaa\x2b\x39\x91\x24\x44\x5a\xe8\x87\xb2\x44\x99\xb4\xe4\x8b\xc7\x21\xf2\xd5\x35\xe4\x43\x34\x69\x89\x40\x1c\x6c\x00\x2e\x6d\xd4\xb8\x1e\x64\x2a\x0f\xeb\xba\x92\x4e\x5e\x7e\xa9\x2f\xb6\xdd\x1d\x13\x1c\x10\x9e\x34\x41\xd3\xc0\x6f\xba\x9a\x59\x63\xd4\xaa\xd3\xdf\xc1\xe1\x90\x46\x23\xc2\x63\x4e\x23\x41\x78\x53\xa4\x63\x1d\x30\xc7\x82\xb8\xa1\xb5\x25\x86\x4f\x15\xe2\x76\xb9\xb7\x4c\xee\x2d\x0b\xe2\x26\xdf\x25\xc4\x9d\x3d\x36\xc4\x1d\x96\x20\x6e\x0b\x48\xb8\x23\xc4\x8d\x3b\x88\xbb\x12\xe2\xce\xaa\x10\x77\xb6\x4d\x88\x1b\x34\x40\xdc\x60\x05\xc4\x0d\xdb\x21\xee\xa4\x02\x71\x27\x8f\x07\x71\x67\xd6\x7e\x3e\x7b\x0c\x88\x7b\xb9\x8b\x10\x77\xec\xd5\xf5\xca\xbc\x06\xe4\xfe\xf8\x83\x15\x58\xa6\x00\x6d\x3f\xd8\x5e\x25\x3f\x0c\x7a\xf3\x25\x62\x2d\xc1\x76\x48\x9b\x73\x49\xbf\x62\x3b\x31\xf0\xe4\x08\x25\x54\xc9\x1b\xe4\x6e\xe0\x1f\x1c\x00\xd6\x8f\xdc\x5f\x4f\xde\xbc\x3b\xf9\x74\xf1\xe5\xdd\x9b\xcf\x6f\xde\x9e\x7c\xfc\x7c\xf2\xa9\xfa\xb4\x2c\x0c\x91\x5d\xf6\xe3\x9b\x0f\x27\x17\xe7\x6f\xde\x9e\x54\x8b\x5a\x0d\x44\xc9\xb1\xfc\x5f\xaf\x10\xdd\x09\xab\x86\x8b\x7f\x7c\xf8\xf9\xec\xfd\xc0\x63\x48\x2c\xd1\xf4\xd9\x90\x82\x61\x46\x0a\x46\x05\x29\x08\x51\x80\xa6\x5e\x0c\x46\x16\x29\x18\x55\xb3\xc2\x8d\xb6\x10\x2c\x75\x02\x88\x37\xb5\x49\xc1\xb4\x31\x7e\x0b\x16\x02\xfb\xe3\x5f\x33\x78\x39\x86\x48\x3d\x0a\x91\x63\x21\x44\x07\x81\x23\x84\x2d\xcb\x23\xf7\x97\xb3\x4f\x27\xa7\x7f\xfa\x28\x09\x02\xa2\xee\x47\xb5\x5c\x14\x5b\x28\xd1\x85\x11\x02\x61\x0b\x5d\x68\x26\x0a\x85\xc3\xcc\x5e\x9b\x65\x99\xb9\x3e\x06\x04\x01\xe6\x71\x15\x06\xca\xea\x2a\x88\xdc\x82\xe7\xa0\xc8\x35\x8c\x06\x09\xb5\xcc\xcb\x1a\x5e\x06\x8f\x99\x3b\xc1\x31\xa0\xb0\xd7\x67\x03\xf3\xa7\xe4\x0e\x99\xda\x91\x21\x6a\x07\x51\xb9\x05\xe5\xb9\xdd\x48\x36\x1f\x02\xe0\x8a\xd3\x34\x76\x4a\x3b\x03\xb5\xf7\xaa\x40\x61\x3a\x6a\x90\x76\x22\xca\xaa\x37\x3e\x45\x45\xd3\xcd\x1d\x2f\x0e\x3d\x79\x5c\x09\xa5\xd7\x8b\x20\xe2\xa5\x11\x60\x44\x51\xd4\x2f\x2d\x93\x01\x04\x6d\xfd\xfe\x4d\xc5\xd0\xd8\xbd\x7e\xbf\x23\x21\xb9\x45\xbf\x71\xb9\xdf\xe1\x26\xfd\xce\x73\x5c\x67\x9f\xf5\x7c\x89\xc2\x4a\xa7\x43\x84\x1b\x3a\x0d\x88\x37\x5f\x22\x79\xc6\xca\xbb\x78\x00\xd5\xdf\xf6\xb7\x8a\xa2\xbe\xfd\x73\x00\x11\x81\xb0\x1f\x0e\x4a\xa3\x8d\x18\x9f\x28\xfa\xfa\x49\x0d\x3b\x69\x8c\xe1\x53\x8e\x1e\xa7\xc3\x20\x65\xcf\x9d\xe3\x59\xc8\x70\x00\x74\x91\x6c\x12\xf2\xdb\x1f\x88\xd0\x22\x75\xaa\xee\xef\x39\xff\x54\xbb\xc3\x0b\xcf\x63\x2a\x06\xdb\x84\x08\xec\x61\xfd\x35\x86\x5e\x02\x66\x60\x54\x92\x20\x34\xf4\xaf\x2a\x3d\x90\xb5\x5f\x82\xb9\xac\xa9\x87\x97\x48\x68\x0f\x3b\xed\x72\x07\x75\xab\x25\x37\x5f\xcf\xf3\xc2\xe3\xa8\x17\xe6\x73\x20\xe8\x84\x24\x02\x4f\xe2\xd6\xc4\x98\x40\xee\xd0\x12\xe0\x42\x89\x7a\x3e\xd3\x09\x01\x0d\x53\x28\xc7\xda\x38\x7d\x86\x6a\xeb\x31\xb2\xfa\x41\xba\x58\xcc\x97\x7b\x81\x5a\x6d\xfb\x0d\xb7\xd5\xe4\xa4\xde\xdc\xc7\xfe\x98\x18\xdf\xeb\x5e\xd8\xe7\xee\xdb\x37\x6f\x7f\x3d\xf9\xf2\xf6\xec\xe3\xe7\x4f\x67\xef\x2b\xa7\x39\xf2\x53\x9e\x30\xde\x0b\xad\xfa\x4e\x3f\xbe\x3b\xf9\x7b\xb5\x5c\xe0\x97\xca\xb4\x22\x89\xcc\x9f\x30\xdc\x00\x4a\x2c\xf7\xaa\x8e\xd5\x61\xdf\xf9\x7a\xc8\x71\x34\x22\xce\xe0\xe0\x00\xa4\xae\xfa\xbb\x74\xd9\x42\x38\xa1\xcb\xc9\x90\x93\x64\xac\x8a\x2a\x19\xc6\x14\x87\xde\x2b\xf2\xfb\xff\xc8\x6f\x41\x64\xd6\x92\xe7\x79\x58\x95\x93\xbb\x8c\x5e\x7e\xf9\x1b\x05\x10\xb1\xe6\xa8\x86\xa5\x30\x5b\x17\xb3\xc8\x97\x6f\xd5\x41\xba\x16\xe5\xc0\x88\xd2\xfa\x2b\x36\xab\x7d\x45\x8c\x6b\xd2\x94\xae\x34\x84\x28\xd0\xe9\x4a\x03\x88\x46\x2d\xf2\xa8\xe9\x7a\x79\x94\xcf\x18\x0f\x68\x84\xdb\x03\x0a\xdd\x42\xe7\x69\x55\xd6\xa9\x3e\xbf\x85\xea\xd3\x4c\x62\x97\x4b\xf2\x5b\x8a\x12\xfc\xaa\x28\xc1\xff\x9e\x72\x49\xae\xd0\x96\xa5\x4d\x39\x1d\x1f\x47\x94\xe0\x5b\x5b\x80\xff\x18\xa2\x84\x64\x17\x45\x09\xc3\x67\x43\x8c\xf3\x34\x96\x3c\x27\xc6\x1e\x06\xdc\xa2\xc4\xbc\xaa\x27\xe3\x05\x25\xa6\x75\x4a\x8c\x2d\x4a\x4c\x21\x0a\xbd\xa3\xd7\xe1\x4f\xf4\x75\xf8\xbb\xdf\x41\xdc\x0f\x6d\x4a\x1c\xe6\x94\x38\x01\x29\x20\x9e\xb0\x29\xb1\xa8\x50\x62\xbc\x4e\x4f\xa6\xea\x58\xab\x27\xe3\x2d\x07\xf8\x70\xfd\x01\x1e\xf8\xb7\x3d\xb8\xbb\x54\xd4\x5d\x2a\xea\x0e\x3e\x74\xf0\xa1\x11\x3e\xac\x48\x45\xdd\xc1\x87\x0e\x3e\xec\x1a\x7c\x18\x96\xb3\x60\xfb\x1e\x06\x43\x0b\x44\x0c\x0b\x71\x99\xfe\x4e\x86\xb7\x91\xab\x33\xef\xe8\x35\xfb\x49\xbc\x66\x4a\xae\xce\x6c\x10\xc1\x2a\x20\xc2\xb7\x41\x84\xdf\x28\x57\xb7\x41\x44\xe6\x73\x6b\x49\xc6\x87\x56\x40\xf3\xb5\x92\xf1\x76\xaf\xc6\xac\xbe\x46\x89\x5d\xab\x2c\xa2\x2a\x99\xcc\xfc\xaf\x23\xe3\xaf\xac\xc5\x26\xbd\xfc\x83\x9a\xe0\xb8\x31\x6e\x79\x02\xe6\x4b\xc4\x6d\x61\x35\x29\x07\x0b\x5b\x97\xfb\x7b\x78\x0f\xa0\x44\x13\x9f\x4d\x09\x9f\x1d\xfa\x63\x4c\x37\xb2\xbe\x59\x23\xee\xa8\xd6\xd8\xc9\x3c\x9e\x74\x80\x40\x7a\x9b\x00\x81\xd1\xa6\x01\x02\x59\x16\x8c\x2f\x5a\x11\x20\xd0\xa4\xe2\xfa\x16\x01\x02\x23\x08\x7b\x56\x9f\x1e\x3c\x40\x60\xd4\x1e\x20\x10\x6f\x15\x99\x87\x3b\x81\xcc\xd3\x8a\x29\x55\xfa\x5d\x9a\x52\x05\x8f\x6d\x4a\x55\xb2\x17\x6f\x83\x80\x77\x24\x30\x49\x47\x60\x56\x12\x98\xa0\x4a\x60\x82\x6d\x12\x98\x61\x03\x81\x19\xde\x4d\xfe\x19\x57\x08\x4c\xfc\x78\x04\xa6\x9c\x40\xf2\x11\x08\xcc\x64\x17\x09\xcc\xec\xd9\x10\x18\x3f\x23\x30\x33\xdb\x5b\x80\xa1\xa1\x97\x80\x99\x45\x60\x66\x39\x81\xc1\xfa\x3b\x99\xdd\xc6\x5b\xc0\x26\x30\xbc\x8d\xc0\x4c\x40\x0c\x88\x37\xb4\x09\xcc\xf0\xb6\xde\x02\xaa\x8e\x0d\xbc\x05\x66\xf7\xf2\x16\x48\x41\x00\x66\xdb\xf1\x16\xe0\x25\x6f\x01\x0a\xa8\x22\x32\x10\xcd\x97\x68\x22\xff\x2c\xc6\x83\xb8\xfb\x56\xb2\x81\x7e\x71\x69\x00\x61\xc5\xb7\x20\xac\xfa\x16\x30\x75\x0d\x31\x88\x66\x2d\x0c\x67\xb6\x9e\xe1\x68\x67\x81\x3b\x7b\xe7\x76\x62\xe0\x4e\x0c\xdc\x89\x81\xbf\x15\x8a\x4a\xab\x28\x2a\xdd\x11\x31\xb0\xfd\xd9\x3e\x66\x56\x93\xd4\xda\xa5\xd2\x9d\xcb\x6a\xe2\x3f\x1b\x28\x93\xcb\x62\xfd\xb2\x2c\x36\xf5\x70\x5b\xca\x12\x9e\xa7\x2c\x49\x57\xa7\x2c\x11\x9e\xbf\x3d\xb1\xe8\x86\x00\xe4\xae\x95\xfe\xa2\x73\x46\x3e\x5c\x85\xab\x8d\x79\xef\x5a\xeb\x6a\x53\xdb\xbb\xd6\xba\xda\x10\x76\xc3\x5a\xd7\xc8\x8a\xfd\x16\x24\xe5\xaf\x47\x52\x8d\xf1\xdc\xee\x28\x25\xb6\xea\xaa\xc7\xd0\x27\x13\x36\x25\x87\xf2\xc3\x6c\xf2\xa8\xcc\xa3\xa2\x22\x8c\xc2\xbd\x96\x9d\xef\x89\xe2\x33\x3f\x4f\xd0\x3a\x04\x7d\xc7\x41\x4e\xcf\xfa\xcf\x19\x14\xd1\x04\x1a\xe2\x32\x91\x25\x22\xb6\x3c\x67\xb3\x9a\x92\xb5\x35\x0d\xcb\x8b\x70\xb1\x50\x11\xaa\x74\x14\xb1\x23\x98\x43\xaf\x21\x27\xe4\x5f\xa4\x31\x59\x73\x96\x20\x09\xdf\x64\x5b\x68\xf9\x19\xa1\xc3\xa8\xda\x22\x8a\x6c\x29\x44\x07\x07\x2b\xd8\xb9\xc5\xca\x23\x3b\x83\x76\x69\x4f\x8e\xca\xd9\xb3\xf3\xbd\x3b\xca\x11\xa4\xf9\x14\xa3\x52\x06\xeb\xa8\x9e\xc1\x9a\x67\x19\xac\x97\xb0\xe6\xe1\xb6\x25\x48\x3d\xd9\x09\x48\x3d\xab\xc8\x6f\x67\xdf\xa5\xfc\xf6\xec\xb1\xe5\xb7\x97\x25\xe6\x71\xf9\xa0\xcc\x63\xdc\x31\x8f\x95\xcc\xe3\xac\xca\x3c\xce\xb6\xc9\x3c\xa6\x0d\xcc\x63\xba\x82\x79\xa4\xed\xcc\x63\x54\x61\x00\xa3\xc7\x93\xdf\x9e\x59\x47\xf0\xd9\x63\xc8\x6f\x6f\x76\x51\x7e\x7b\x85\xbe\xa0\x73\x74\x81\x4e\xd0\x35\xfa\xea\x01\xd6\x92\xec\x9f\x44\x3e\x0b\x08\x77\x20\x0a\x9f\x0d\x4b\xba\xcc\x58\x52\x5a\xb0\x24\x09\xfc\x42\x6f\x0c\x52\x68\x63\xbf\x4c\xe0\x6b\x7c\xcc\xd3\x07\x17\xf8\xc6\x60\x04\x88\x17\xda\x02\xdf\xb0\x51\xe0\x9b\xbd\x27\x84\xd1\x48\xe5\xdf\xbf\x91\x4f\xae\x96\x04\x67\x45\xd6\x49\x82\x53\x04\x58\xc6\xeb\xe4\x97\xda\xe0\x48\x35\x03\x67\x20\x2d\x89\x7b\x75\xc1\x55\x09\xe7\x95\x2f\x4f\xca\x8d\xcb\x99\x19\x80\xbc\xf0\x19\x8f\x2c\x07\x2c\x12\x25\x29\x27\xa7\xef\x56\x50\x93\x4a\x8e\x1e\x33\xe1\x0e\x3c\x06\xc4\x7d\x4f\x46\xd8\x9f\x49\x58\x91\xfd\x7d\xfa\xce\x23\xee\xe9\x3b\xd8\x2b\x6e\xbe\x42\xf2\x8a\x97\xf5\x08\x24\x40\x7e\x35\x26\x40\xf3\x45\xf1\x27\x9e\x10\x44\x4a\xb1\x99\x2f\x2a\xbf\xf1\x84\xc8\xb9\x6b\xe1\xad\x9b\x7a\x9b\xd6\xa7\xb3\x56\xd1\xed\xe5\xe6\xac\x24\x37\x67\xad\x86\x41\x12\xb3\xea\x29\x07\xe0\x08\xf1\xc2\x71\x98\x40\x9d\xfa\x2d\x17\x9f\x3f\x84\x63\xed\xda\xa1\xde\x5d\x51\x50\x0c\x98\x79\xad\x83\x62\x10\x22\x35\x1f\xab\xc6\x75\x4b\xdf\x5c\x56\xf6\x15\xa5\x9b\xf9\xb8\x62\x2b\x2c\x61\x04\xe5\x7a\x54\x5f\x03\xf0\x01\x44\xa2\x58\x8c\x76\xe0\x70\x24\x2a\x8b\xb1\x16\x38\xbc\xea\x23\x4b\x11\x43\xd8\x2d\x72\xfe\x41\x80\x1f\xc6\xaf\xf7\x41\xc6\x9c\x7f\xa0\xd8\x3d\x7d\x87\xb0\xfa\x26\xe5\x5f\x1b\x8e\x61\x00\x0f\x0e\x26\x25\x21\x04\x83\x88\xaa\x6b\x88\x42\x94\xda\x42\x08\x74\xe5\x01\xea\x85\xd0\x2a\xfc\xc5\x2b\xb6\xd1\x73\xaf\xcf\x06\xe8\xc2\x9b\x57\x0f\xe5\xf2\x91\x6d\x1f\x26\x16\x31\xeb\xc9\x83\x6b\x89\xae\xbd\xf9\x12\xd9\xb6\x57\x17\x4d\x26\x3c\x04\xce\xaf\xfb\x64\xe0\x5d\xf4\x89\x8a\x04\x71\x6d\xd3\xa5\x17\x2f\xec\x9f\xe8\xba\x42\x96\x5e\x94\x2f\x20\x50\x70\xa7\xeb\xc5\xe2\xda\x26\x8b\xf0\xe0\x00\x5c\x97\xb9\xd4\xb5\x77\x6e\x18\x33\x74\x39\x99\x12\x9e\xe8\xbf\x6a\xb9\x74\x2d\xa2\x0d\x24\x70\x20\x70\xb1\x20\x4b\x88\xae\x21\x3a\xb1\x62\x65\x94\xda\x53\xcd\xa9\xde\x94\xaf\x1f\x5f\xd7\x29\xec\x49\x46\x61\x51\xe9\xa6\xc1\x2b\x99\xeb\xa8\x57\x6f\xa1\x19\x0b\xc9\x2e\x5e\xcb\xe1\xc9\xd7\x00\x11\xf6\xae\x11\xb5\xa5\x4e\x5f\x97\x10\xee\xad\x96\x3a\xb5\x67\x5c\xbc\x85\xb8\x49\x56\xb2\x51\x70\x2f\x1c\xe0\x58\xac\xaa\x70\x23\x11\x95\x4a\xce\x39\x37\x01\xe7\x51\x8a\xfc\xbd\xb2\x1d\x8d\xf9\xd2\x92\xa7\x2a\xa6\x1a\xee\x92\x80\x26\xde\xaa\x80\x26\xd8\x09\x01\x4d\xc5\xf0\x05\x4c\xbe\x4b\x01\xcd\xe8\xb1\x05\x34\xb3\x92\x80\xa6\x25\xda\xd3\x1d\x05\x34\x97\x9d\x80\x66\xa5\x80\x66\x54\x15\xd0\x8c\xb6\x29\xa0\x19\x37\x08\x68\xc6\x2b\x04\x34\x49\xbb\x80\x66\x5a\x11\xd0\x4c\x1f\x4f\x40\x33\xb2\x0e\x9f\xd1\x63\x08\x68\xce\x76\x51\x40\x73\x83\x2c\x11\x8d\x07\x70\x8b\x80\x06\x0b\x76\xe9\x40\xf4\x7c\x74\xd8\xb3\x4c\x3a\x93\x14\xd2\x19\xac\xfc\x89\x2e\x41\x02\xf7\xea\xaa\xa6\xbd\x58\x7f\x55\xc9\x83\x4b\x67\x86\x60\xba\xce\x9f\x48\x4b\x67\x02\x62\x68\x45\x8a\xa6\x4a\x3a\x73\x26\x9f\x5c\x2d\x9d\xc9\x8a\xac\x93\xce\x24\x08\xe0\x4c\x3a\x93\x63\xd3\x26\x61\x89\x1e\x38\x71\xb1\x10\x1c\x38\x7f\x55\x47\x78\xf6\xb9\xd6\xd2\xf8\x88\x63\xc5\xdf\x4c\xc7\x5d\xf2\x95\xf8\xa9\x7c\x87\x50\x53\x9b\x3b\x50\xff\xdc\x84\x71\x04\x92\x6f\x11\x46\x18\x1c\x21\x5a\xd0\x7c\x15\x54\x78\xad\xe8\x62\x53\xa1\xc5\xda\x41\xac\xea\x3e\x6d\xe9\x7e\xce\x85\x95\x2d\x18\xae\xcb\x67\x94\x3b\x7d\x1e\x6e\x10\x50\x4f\x19\x3b\x66\x8c\x9b\xc8\x25\x43\x11\xb7\x63\x44\x89\x3e\xcb\x7e\xfe\xf7\x6f\x27\x9f\xfe\xf1\xe5\xfc\xcd\xa7\x37\x1f\x06\x50\x05\x46\xab\xd8\x41\x06\x25\xe2\x8c\x95\xf6\x3e\xd0\xda\xfb\xa4\x44\x9c\x6f\x3c\x10\x7a\xbe\x4d\x9c\xaf\xbc\x62\x85\x7f\xf1\xfa\x78\x80\xce\xef\x47\x9c\x4f\xaa\xc4\xf9\xbc\x85\x38\x9f\x48\xe2\x7c\x6e\x88\xf3\x49\x99\x38\xdb\x3f\xd1\x49\x95\x38\x9f\xb4\x12\xe7\x93\xc5\xe2\xa4\x4a\x9c\x4f\xca\x18\xf7\xc4\xfb\x72\x7b\xe2\x2c\x37\xf4\x8c\x38\x9f\x40\x74\x61\x11\xe7\x93\x0a\xad\x3d\x31\xc4\xb9\x74\xfd\xf8\xa4\x4e\x2d\x2e\x72\xe2\x7c\xb2\x9a\x38\x57\x5b\x68\x3e\xa3\x64\x17\x4f\xe4\xf0\x34\x71\x4e\xbd\x13\x14\xda\xc4\xf9\x7a\xbd\xb9\x46\x35\xa9\xe7\x1d\xa9\xb3\xaa\xa6\x73\xe2\xfb\x16\x81\x8b\xbe\x73\x92\xd8\xe5\x6c\xe9\x72\xb6\x7c\xe7\x24\xb1\xcb\xd9\xd2\xe5\x6c\xf9\x1e\x72\xb6\x18\x2c\xef\xc8\x17\x67\xfb\xbc\x1c\x1c\x80\xd2\x6f\x4f\x27\xad\x96\x34\x02\x4d\x9e\x0d\x71\x0c\x1b\xfd\xb8\x7c\x34\xf1\xd2\x16\x3f\x2e\x76\x07\x3f\xae\x5b\x64\x7d\x99\xd8\xc4\x71\xb2\xad\xac\x2f\x2b\xfc\xb8\xd6\xe6\x7b\x59\xe9\xc1\xf5\x00\x99\x5e\x14\xc7\x09\xee\xa7\x52\xde\xb4\xbb\x0f\xc5\x2b\x03\x10\xad\xef\xf0\x7b\x15\x92\xfb\xce\xc1\xa5\xf5\x29\xc2\xdd\x24\x0e\xa9\x00\x4e\xcf\x91\xeb\x8a\xb9\x31\x8b\x01\x44\xd8\x63\xee\x15\xa3\x91\xba\xbe\x97\x2b\xed\x4b\xb1\xc0\x01\x41\x73\x93\x19\xbe\x87\xd1\x39\xe3\xa2\x47\x97\x59\xe8\xe9\x35\x19\x75\xda\xbc\xde\x26\x1b\x80\x7f\xa3\xda\xba\x3f\xfc\xd7\x15\x75\x04\xa0\x23\x00\x59\x28\x8a\x1c\xfe\x3f\x24\xb2\x0d\x3b\x64\xbb\x12\xd9\x26\x55\x64\x9b\x6c\x13\xd9\xa6\x0d\xc8\x36\xbd\x1b\xb2\xf5\x2b\xc8\xd6\x7f\x3c\x64\x5b\xd6\xbd\x3f\x02\xb2\x1d\xee\x22\xb2\x8d\x9f\x0d\x2e\xc5\x19\x2e\x8d\x6d\x5c\x9a\xa2\xc4\x0b\x41\x6c\xe1\xd2\xb8\x8a\x4b\xe3\x07\xc7\xa5\x43\xe0\x03\xe2\x25\x36\x2e\x4d\x6e\x8b\x4b\x55\x1d\x1b\xe0\xd2\xf8\x36\xb8\x34\xdb\xa4\xdb\x51\x93\xb5\xbc\x6b\x50\x28\x6a\xb5\x75\x2c\x59\x8e\xbe\x79\xfb\x3e\x71\xcf\x59\x48\xfd\xd9\x3b\xbd\x20\x13\x07\x4a\xee\xe4\x36\xdc\xf1\x1a\xaf\xb6\x36\x44\x5c\x41\x26\x71\x88\x05\xf1\x1c\x07\xe9\x40\x57\x7d\xa7\xd2\x18\x72\x3e\xb1\x90\xe4\x3f\x07\xcd\xf1\x9e\x8a\x2d\x4c\xf5\x20\xef\xa0\xd7\x1f\x58\x02\x5f\x7d\xad\x2f\x06\xf9\x7d\xf9\x7d\xf6\x55\xd0\x2a\xdd\xfe\x37\xf4\xaf\xbc\x83\x3b\x64\x76\x71\xbe\xdc\x49\x5f\xc8\x1a\xbe\x4e\x35\xbe\x4e\x21\x8a\x5b\xf0\x75\xbc\x1e\x5f\x33\x1a\xf8\x87\x31\x67\x53\xaa\xd8\xc5\xbd\x61\x76\xb9\xbe\x0e\x6d\x3f\xf5\x98\x79\x5b\xe4\x12\x78\x27\xb8\x44\x58\x51\x26\x84\xdf\xa5\x32\x21\x7e\x6c\x65\x42\x09\x74\xb7\x45\x74\xb8\x23\xe5\xf2\x3b\xca\xb5\x92\x72\xc5\x55\xca\x15\x6f\x93\x72\x25\x0d\x94\x2b\xb9\x1b\xe5\x1a\x56\x28\xd7\xf0\xf1\x28\x57\x6c\x9d\x56\xf1\x63\x50\xae\x60\x17\x29\xd7\xf3\x51\x05\xa4\x8d\xaa\x80\x04\x4d\x3c\xbf\x45\x15\x40\xb7\x15\xd2\x2d\x00\xc3\x7b\xab\x02\x54\x1d\x77\x56\x05\xbc\x49\xc5\x98\xf1\x46\xa3\xb1\x5a\xac\xe9\x35\xf8\x97\xd7\xa8\x97\xac\xe0\x8e\x49\x18\x4d\x9d\x21\x88\xef\x2b\xd8\x8f\xd6\x46\x92\x93\xbf\xec\xc5\xff\x38\xa1\x85\xcd\xae\xf1\x34\x43\x0b\x83\xf9\x47\x3c\x21\x3d\xe1\xd2\x00\xc9\xbf\x74\xbe\x39\xe1\x46\xc9\x12\xf1\xaa\x31\x1a\xae\xd2\xa7\x44\x5d\x43\xc9\xbd\xd4\x13\xb1\xa2\xdb\x0f\xc0\x9b\x4c\x45\x1d\x61\xfa\x16\xea\x09\x33\x89\x5d\x48\xbc\x2e\x33\x4a\x97\x58\xad\xcb\x8c\xf2\x74\x50\x68\x97\x58\x6d\xd3\x7c\x21\xb1\xdc\x22\x1f\xe2\xdc\x56\xf5\x74\xc7\x76\x77\x6c\x77\xc7\x76\x77\x6c\x77\xc7\x76\x77\x6c\x77\xc7\xf6\x16\x8f\x6d\xce\xc2\x87\x30\x06\xd4\xd5\xd8\xd7\xe9\x57\x1a\x65\x2c\xfc\x25\x4e\x0e\x27\x38\x6a\x38\xd6\x11\xb7\x0e\x76\x66\x7d\xd5\xec\xa9\x1e\xec\xdf\x44\xc5\xd7\x19\xe2\x75\x86\x78\x95\x83\x9d\x75\x86\x78\x9d\x21\xde\xce\x1f\xec\xb8\xe1\x60\x0f\x5b\x0e\x76\x5a\x3b\xd8\xd9\xea\x83\x9d\x65\x07\x3b\x5b\x7d\xb0\x6b\x13\xbc\xfb\x1d\xec\x9b\x99\xe0\xd9\x07\xbb\x4b\xbe\x0a\x12\x05\xa0\x08\x8c\x77\x4b\xcb\x24\x13\x8f\xe2\x30\x3b\x73\x1e\xe0\xd8\xaf\x55\xd9\xf1\xf6\xce\x1b\xa0\x73\x07\xee\xdc\x81\xbf\x77\xac\xd6\xb9\x03\x77\xee\xc0\xdf\x83\x3b\xf0\x53\xc6\x6a\xb9\x33\xef\xa4\xec\xcc\x1b\x78\x29\x98\x58\x88\x6d\x52\x15\xc5\x4c\xb6\xe4\xcc\x1b\xd8\x88\x2d\xd8\x96\x33\xef\xe4\x1e\xce\xbc\x93\x2d\x38\xf3\xd2\x21\x90\xfb\x42\x64\xe6\x2f\x3b\x47\xe5\x24\xaa\xe5\xb3\xa7\x97\x14\x77\x89\xfc\x95\x78\xfd\x79\x22\xb0\x48\x93\x9e\xf3\xe3\xd1\x8f\x0e\x12\x54\x84\xa4\xe7\x7c\x64\x62\x7f\xc8\xd2\x28\x70\x96\x03\xc4\xf3\xd1\xaa\x26\x1e\xc8\x35\x78\xe5\xe0\xef\x65\x41\x64\xef\x8f\xc6\xb4\x3b\x0a\x5a\x7c\x40\x3e\xb2\x40\xff\xcf\xf3\x3c\xe1\x46\x2c\x20\x12\x21\x5e\x68\xa0\xeb\x9e\xbe\x53\x97\x0d\xee\x3d\x0d\xe4\xf9\x93\x1d\x21\xd5\x19\x65\xb7\x98\x51\x96\x23\x7e\x37\x37\xbc\xf1\x78\xde\x6c\x7e\x0d\xe9\x11\x95\x2d\x71\x56\x38\x0a\x4f\x5a\x24\x83\xc1\xc6\x74\xe1\xe1\x58\x42\x47\x0e\x3a\x72\xd0\x91\x83\x8e\x1c\x74\xe4\xa0\x23\x07\x1d\x39\xe8\xc8\x41\x47\x0e\x1e\x9f\x1c\xe8\x63\x73\xbe\x2c\x62\xd4\xd4\xbc\x1e\x8b\xa0\x55\x3e\x8b\x22\xe2\x8b\x43\x6d\xa2\xf5\xc2\xf3\x88\xfb\x17\x1a\x49\x28\xd9\x1c\xf9\x93\xf7\x35\x72\x1d\x78\x64\xa9\x1c\x20\x37\xae\xdb\x5b\x5b\x37\x71\xd5\xd1\xf1\x0b\xe3\x12\xa3\x65\x7f\xaf\xf2\xc6\x96\x5b\xa7\xf6\xb5\x96\xff\xe8\x47\x3c\xa2\xa1\xb4\xce\x2f\xb3\x03\x4c\xc6\xf2\x85\x68\xb4\xd5\x2f\x9c\xe5\x39\x72\x86\x94\x27\xc2\x7c\xbd\x35\x26\xe1\x40\x24\x59\x4e\xd2\xe3\xcb\x6f\x44\x27\xd4\xee\xf3\x20\x74\x42\xd7\xd4\xd1\x89\x8e\x4e\x74\x74\xa2\xa3\x13\x1d\x9d\xe8\xe8\x44\x47\x27\x3a\x3a\xd1\xd1\x89\x6f\x0f\x55\x37\x0c\x22\xda\x3f\x1a\x7c\x13\x90\x29\xd8\x35\x79\x08\x88\x69\xea\x59\x6b\xcf\xda\x50\x82\xb3\x90\xac\xb2\x77\x45\xcc\x82\xa9\xd4\xda\xd6\xe8\x53\x85\xa9\x78\xab\x30\x35\xdc\x09\x98\x9a\x56\x60\x6a\xfa\x5d\xc2\xd4\xe0\xb1\x61\x6a\x09\xa8\xb4\x79\x76\xdc\x11\xa6\x26\x1d\x4c\x5d\x09\x53\x83\x2a\x4c\x0d\xb6\x09\x53\x87\x0d\x30\x75\xb8\x02\xa6\xd2\x76\x98\x1a\x57\x60\x6a\xfc\x78\x30\x35\xb0\xf6\xf3\xe0\x31\x60\xea\x64\x17\x61\xea\xec\xd9\xc0\x54\x3f\x83\xa9\x43\x1b\xa6\x32\x44\xbd\x04\x0c\x2d\x98\x3a\xcc\x61\x2a\xd6\xdf\xc9\xf0\xc1\x83\xda\x4c\x40\x0c\x88\x47\x6d\x98\x4a\x6f\x0b\x53\x55\x1d\x1b\xc0\xd4\xa1\x05\x53\x57\xe4\x3f\x2b\x02\xfb\xa5\x20\x00\xc3\x12\x32\xb5\x1e\x5b\x91\xb0\x3e\x17\x63\xeb\xb5\x11\xb9\x9f\xd2\x90\x24\x07\x07\x20\xf2\xe6\xa7\xef\x7a\x91\x7b\x41\x7c\x4e\xc4\xe9\x3b\x25\x32\xed\x45\x6e\x76\x72\x51\x16\x21\xb9\x7a\x7a\x91\x2b\xff\x41\xea\xb9\x9e\x79\x7e\x09\x51\x74\x70\x10\xa8\xb8\x93\xfb\x56\x1d\x51\x83\x98\xf8\x82\x84\xc3\x95\xa0\x5b\xe5\x6c\x6b\xc4\xd9\x7a\x6d\xdc\x37\xcb\x77\xe1\x1f\x52\x9d\xc2\xb6\x1a\xef\x6a\x55\x94\x8b\xd5\x23\x1d\x61\x95\xca\x99\xce\x67\x3e\xbb\xb4\x58\x80\xe2\x87\x15\xff\x54\x15\x3a\x7d\x67\x05\xd2\x17\x8c\x13\x37\x26\xe4\xfa\x4d\x18\x02\x47\x43\x70\xa8\x4c\x75\x7e\x9e\x01\x27\x9b\x75\xb9\xc8\x4e\xdf\xc1\x3d\x26\xdf\x6a\xfe\x2e\x54\x5d\x28\x72\xdf\xf8\x3e\x49\x12\xc6\x4f\xdf\x79\x85\x28\x9c\x21\xa7\xb8\xee\x14\x01\x6f\x4a\x32\x7f\x75\x14\x49\x66\x12\x56\x99\x09\x53\xd7\x10\x83\x68\xb8\xca\x1c\x1f\xb1\x46\xc3\xfc\xd9\x26\xac\x25\x66\x21\x1b\x3d\x84\xf7\x7c\x5e\x55\x83\x70\x5c\xad\x11\xb9\xd9\x20\xbc\x67\xc3\x67\x3b\xd2\xe2\xd3\x64\x20\x29\x78\xca\x41\x43\xfd\xad\x44\xc3\x4a\x37\x89\x86\x35\xfa\xb6\xd1\xb0\xd2\x6f\x1a\x0d\xcb\x66\x0e\xbb\x93\xb4\x7c\xb8\x55\xb6\x1d\xef\x04\xdb\xae\x84\x76\x04\xc1\x77\xc9\xb6\xa7\x8f\xcd\xb6\x27\x25\xb6\x3d\x79\x50\xb6\x3d\xeb\xd8\xf6\x4a\xb6\x3d\xad\xb2\xed\xe9\x36\xd9\xf6\x65\x03\xdb\xbe\x5c\xc1\xb6\xc3\x76\xb6\x3d\xae\xb0\xed\xf1\xe3\xb1\xed\xa9\x85\x5d\xa6\x8f\xc1\xb6\x47\xbb\xc8\xb6\xcf\x90\x95\xb6\xdc\x03\xbc\x25\x69\xb9\x82\xe3\x0e\x44\xf8\xd9\x90\xf3\x49\x46\xce\xc3\x32\x39\xc7\xde\x0c\x84\xd0\x86\xcc\x19\x39\x37\x42\xac\xf0\xc1\xc9\x79\x02\xc6\x80\x78\xd8\x26\xe7\xb8\x91\x9c\xeb\xb7\x84\x28\x1a\xab\x9c\xe5\x23\xf9\xdc\x6a\xce\x9e\x15\x59\xc7\xd9\xc3\xbb\xa9\x96\x0a\x22\x6a\x08\x5d\x41\x5e\x7e\x91\xaf\x9e\x46\x82\x44\xe6\x8d\x9a\xb6\x02\x30\x05\xe1\xfd\xd4\x50\xac\x85\xa8\x16\x79\xbc\xa9\xfb\x8e\xdd\xc8\x65\x41\xf0\x24\x69\x33\x29\x3b\xcd\x3a\xe7\x5e\xb0\x94\xfb\xe4\x23\x9e\x10\x4f\xdb\x4c\xa1\x86\xbb\x17\x9e\xed\x99\x61\x17\x78\x47\x12\x41\x23\xc5\xd2\x54\x1d\xca\x4a\xab\xad\xc0\x85\x27\xdc\x28\x59\x2c\x1c\xf3\xb1\x3a\x48\x42\xa5\x24\xe5\xe4\xf4\x1d\xb0\x1e\x52\x76\x6a\xd4\xfd\x2d\xbe\xcb\x28\x6a\x3d\xc8\xc7\x50\x6d\x7c\xd5\x38\x1a\xe6\xa2\x3c\x12\x7b\x42\x56\x8c\x82\x01\x82\x7c\xe0\x83\xf9\x12\x51\x88\xe6\x4b\x34\x02\x2a\x51\x7a\xb6\x12\x91\xec\x6e\x2d\xfd\x79\xdc\xc0\xcc\x63\xcd\xcc\xc3\x52\xfa\xf3\x33\x0f\x30\x0f\xdb\xe9\xcf\x6f\xbc\xec\x53\xb9\xf2\xfa\x7c\x80\xbe\xdc\x2f\xf9\xf9\x45\x35\xf9\xf9\x97\x16\x33\xc5\x8b\x3e\x19\x78\x5f\x4c\xf2\xf3\x8b\x72\xf2\x73\xfb\x27\xba\xa8\x26\x3f\xbf\x68\x4d\x7e\x7e\xb1\x58\x5c\x54\x93\x9f\x5f\x94\xb1\xf2\x85\x77\x75\xfb\xe4\xe7\xf2\x60\xc8\x92\x9f\x5f\x40\x74\x6e\x25\x3f\xbf\xa8\xa4\x26\xbf\x30\xc9\xcf\x4b\xd7\x8f\x2f\xea\x14\xe5\x3c\x4f\x7e\x7e\xb1\x3a\xf9\x79\xb5\x85\xe6\xb3\x4e\x76\xf1\x42\x0e\x4f\x27\x3f\xa7\xde\x05\x62\xb6\xb0\xe5\xa4\x55\xd8\x22\x0f\xb5\xe4\xe5\x61\xcc\xb8\xc0\x61\x59\xd0\x42\xe4\xf9\x77\x98\x08\xcc\x47\x58\x90\x7a\xe1\x8a\x28\xa5\x9d\x64\xb6\x9e\xc3\xad\x0f\xe4\x1f\xdd\xbc\xbc\xfa\x4a\xec\xa3\x78\x45\xd9\x38\x97\xca\x64\x73\xd5\x40\xb1\x60\x97\x6d\xe2\xa4\x54\xd0\xd0\x94\xa8\x0d\x2d\x3f\xe4\x2c\x68\x04\xa2\xa7\x2a\x17\xe2\x5b\xe5\xca\x6c\x27\xb8\x72\x17\x0a\xf2\xf1\x48\x60\x5a\x25\x81\xe9\xf7\x14\x0a\x32\x5a\x91\x47\xc4\xfa\x6c\xbf\x29\xf7\x6b\x0a\x41\x99\x9b\x54\x7c\x3b\x06\xf8\x30\x4c\xcc\xb7\xbf\x8a\xa7\xcc\xac\xf2\x70\x8c\x3e\xd2\x64\xd3\x78\x23\x68\x96\x45\x50\x84\x42\x94\x7a\x18\xf8\x16\xcb\xf2\x8b\x73\x8f\xeb\x85\xeb\x43\x94\x36\xaf\xf0\x5c\x66\xeb\xf9\x08\x44\x19\x6b\x21\x5f\x89\x9f\x8a\xba\x9e\xb1\x7e\x9e\x9a\x5a\x0d\x52\xb1\xea\x55\xb0\x93\x01\x6b\x82\x50\x04\x51\xa8\xae\xa1\x10\x22\x5f\x7e\xdf\xc5\xbb\xf5\xd7\x9c\xca\x97\x82\xe1\xd5\xa7\xb2\x2a\xd1\x9d\xca\xdd\xa9\xdc\x9d\xca\xdd\xa9\xdc\x9d\xca\xdd\xa9\xdc\x9d\xca\x5b\x3f\x95\xfd\x31\x8e\x46\xa4\x49\x26\xa0\xef\x24\x44\x1c\x4e\x71\x48\x03\x25\xe4\x6a\xb8\xdb\x70\x8e\x0f\x19\x9f\xbc\x6c\x2e\x60\x55\xf5\x32\x97\x86\x1e\xc6\x84\x4f\xa8\xf1\x90\xbc\x45\xe1\xc3\xb1\x10\xf1\xe1\x58\xe5\xf2\x6a\xb6\x36\x47\x54\x6f\x63\x58\xbe\xcd\xbd\xb2\xd1\x40\x6e\x67\xfb\x44\x91\x44\xa7\xb8\xef\x14\xf7\x9d\xe2\xbe\x53\xdc\x3f\x1f\xc5\xbd\xdf\x29\xee\xb7\x0e\x10\x47\xc8\x52\xa1\x7b\x73\xa7\xf1\x10\xef\xe5\xd6\xa0\xa8\xb1\x40\xe9\xe0\xee\xd1\x5c\xb2\x8f\x4e\x3c\x80\xdb\x54\xf2\xfe\x98\x4c\xb0\x03\xd1\xc8\x03\xe1\x73\x41\xa9\x96\x56\xbe\x11\xa5\x2a\x7b\xd6\xfb\x69\xe8\xa3\xb2\x86\x9e\x7b\x47\xaf\xf9\x4f\xe2\x35\xff\xdd\xef\x60\xd4\xe7\xb6\x86\x9e\xdf\x46\x43\x1f\x69\x0d\xbd\x7e\x69\x28\x35\x2a\x7a\x52\xc0\xe2\x10\x01\x96\xc1\x62\xf9\x3d\x35\x60\xe2\xba\x6e\x5c\x17\x5c\x61\x03\xaf\xee\xb9\x5f\x0c\x72\x64\x3c\x51\xa3\xfb\x80\xe3\xdc\xb4\xfc\x86\x86\xe1\x3b\x92\x08\xce\xea\x41\x67\xe0\xbc\xfe\x78\x1a\x86\xf9\xb3\x39\xa6\xfd\x85\xf1\x06\x0b\x00\xa6\x27\x5e\xbe\x92\xea\x34\xff\xf1\x07\x4b\xa1\x58\x4c\xe9\x0f\xb6\xf9\xe9\x0f\x83\xde\x7c\x89\x42\x6d\x3f\x90\x77\xe1\x17\x65\x1c\x8b\xd5\xb6\x1b\xea\x06\x52\x2f\xdc\x6b\x58\xe3\xe1\xc1\x01\x48\x3d\x70\x84\x0a\x65\x30\x08\x21\x44\x54\x5e\x8b\xdc\xb7\x59\xe7\x21\x60\x28\x45\x21\x9a\xe7\xc3\xe9\xe5\x76\xdc\x4b\xb3\x37\x37\x3c\x93\xef\x65\x34\x9f\x0f\xbb\x93\xf5\xf9\xd0\x70\xae\x3a\xa3\x12\x64\xc8\xb5\xa0\x8f\x59\x14\x79\x17\x7d\x32\xd8\x2b\xcc\xe2\x0f\x0e\x80\x90\x3c\x5f\x19\x51\xa8\xe5\x03\xeb\x6f\x55\xee\x97\xfa\xd3\xb0\x1d\x0b\xec\x02\x23\x59\x20\x57\x9d\xdb\x6c\x89\x41\x44\xd5\x35\x44\x95\xea\x1c\xda\xaa\xf2\x33\x2f\x5f\xb3\x37\x5e\x1f\x0f\xd0\xd5\xfd\x74\xe5\xe7\x55\x5d\xf9\x55\x8b\xae\xfc\xbc\x4f\x06\xde\x95\xd1\x95\x9f\x97\x75\xe5\xf6\x4f\x74\x5e\xd5\x95\x9f\xb7\xea\xca\xcf\x17\x8b\xf3\xaa\xae\xfc\xbc\x0c\x4f\xcf\xbd\x9b\xdb\xeb\xca\xe5\x19\x90\xe9\xca\xcf\x21\xfa\x62\x2d\xed\xf3\x8a\x26\xfb\xdc\xe8\xca\x4b\xd7\x8f\xcf\xeb\xac\xe0\x4b\xae\x2b\x3f\x5f\xad\x2b\xaf\xb6\xd0\x7c\xac\xc9\x2e\x9e\xcb\xe1\x69\x5d\x79\xea\x9d\xcb\x6d\x70\x73\x5d\xb9\x1f\x52\x12\x89\x97\x26\x30\x93\x66\xbe\x05\x45\x2e\x71\xcd\x7c\x25\x23\xe3\x5f\x80\xc2\xbd\x16\x69\xd0\x13\x65\x9a\x16\x9d\xde\xaf\x7c\xfe\xea\x5c\x71\x69\xa2\xcf\x17\x02\x61\x7e\x82\x10\xb8\x04\x72\x11\x55\x1e\x68\xa2\x3c\x59\xe7\x2a\x53\xb2\x4f\x33\xb7\x02\xab\x62\xdd\xe0\x90\xb3\x49\x43\x0b\x19\xc5\x24\xa6\xb4\x82\xde\x89\x42\xcf\xc5\x14\x11\xab\x8f\x92\xa8\x94\x1c\x27\xda\x60\x37\x81\xe6\x33\xfa\x4f\x74\xf8\x0a\xee\x39\xba\xb8\xe3\xa9\x0d\xad\x34\xd9\xca\x1f\xab\x74\xc5\x8d\xf0\x44\xc3\x6a\xe7\x03\x8e\xd5\x33\x8b\x85\x73\x41\xf4\xe3\x8d\x03\x53\x85\xdf\x64\x27\x87\x79\xe4\xe5\xff\x0b\x8e\x7b\xbf\xd1\xc5\x29\x8c\x04\x38\xee\xfd\xe7\xe2\xd5\xff\x5a\xfc\xfe\x07\x08\x8e\x7b\x6f\x43\x3c\x89\x49\x00\x8f\x55\x25\xff\xf6\xd2\x15\x24\x51\x47\x74\x69\xa4\x95\xd9\x92\x87\x61\x03\x50\x3a\x8d\xd4\x2e\xbb\x8f\x85\x20\x93\x58\xec\x0b\xb6\x9f\xc4\x9c\xe0\x60\x3f\x62\xd1\xa1\x7a\x37\x97\x61\x41\xe1\xdd\xff\x13\x9d\x46\xfb\x8c\x07\x84\xcb\xa2\x97\x64\x3f\x2b\x82\xd4\x03\x58\xf6\x68\x5f\x63\xf8\x44\x83\xae\x31\x9e\x92\x7d\xbc\xdf\xaf\xbc\xee\x01\x80\xfb\x13\x22\xc6\x2c\x70\x1d\xb8\x04\x55\x49\x07\x9c\x03\xf9\xad\x7b\x9e\x58\x2c\xc4\x1f\x49\x16\xf0\x59\x1d\x27\xf9\xaf\x3d\x4b\x04\x50\xb1\x4d\x7c\x1d\xfd\x24\x94\x28\x80\xf7\xa3\x81\x47\x94\x20\xc0\xc8\xfa\x6a\x09\x72\x76\x43\xa6\x12\x6f\x55\xa6\x12\xec\x84\x4c\xa5\xe2\x12\x0c\x26\xdf\xa5\x4c\x65\xf4\xd8\x32\x95\x59\x49\xa6\x32\x7b\x50\x99\xca\x65\x27\x53\x59\x29\x53\x19\x55\x65\x2a\xa3\x6d\xca\x54\xc6\x0d\x32\x95\xf1\x0a\x99\x4a\xda\x2e\x53\x99\x56\x64\x2a\xd3\xc7\x93\xa9\x8c\x2c\x98\x35\x7a\x0c\x67\x88\x33\x3b\xc2\x8d\x4e\xa3\x59\xc4\x15\xb5\xf1\x3f\x6f\xc1\xff\x54\xe2\x7f\x6e\xf0\x3f\x2d\xe3\x7f\xfb\x27\xa2\x55\xfc\x4f\x5b\xf1\x3f\x5d\x2c\x68\x15\xff\xd3\xf2\x56\x4a\xbd\x68\x13\xfc\x1f\x59\xe1\x37\xb9\xd9\x04\x17\x8b\x68\x09\x25\x87\x62\x16\xfe\xa7\x15\x74\x4e\x0d\xfe\x2f\x5d\x3f\xa6\xf5\x13\x8c\xe5\xf8\x9f\xae\xc6\xff\xd5\x16\xda\x0f\x61\xaa\x86\xa7\x6d\x65\x1f\x48\xfa\x75\xe3\x01\xd1\x22\x9f\x0a\xd8\xc4\x81\x28\x6a\xb9\x4b\xa2\xa9\x03\x51\x9b\xbb\x49\x80\x05\x3e\x4c\x94\x4d\x7a\x9e\x2f\x40\x76\xfe\x0c\x00\xf6\x5c\x44\x5d\xb3\x4c\xd4\xc5\x9a\x45\x5d\xea\xeb\xf2\x2e\x01\xb3\x44\x5d\x2c\x17\x75\xc5\x7a\x5b\x63\xb7\x11\x75\xa5\xde\xd1\xeb\xf4\x27\xf1\x3a\x55\xa2\xae\xd4\x16\x75\xa5\x56\xba\xbb\x29\x90\x88\xc5\x12\x75\xf1\x46\x51\x97\x7c\xff\x88\x22\xa5\x1e\x41\xea\x29\x88\xd4\x6b\x47\xb8\x72\x51\xbe\x6d\x07\x85\xe6\xaa\x25\x12\x63\x08\x88\x35\x22\xb1\x09\x18\x01\x76\x27\x91\x58\x48\x13\x41\x22\xc2\x13\x2d\x5f\x0a\xd8\xc4\xcd\x2f\x01\x53\xc8\xa2\xbb\x6a\xaa\x2e\x88\xd0\x37\x70\x10\xfc\x95\x26\xf4\x92\x86\x54\xcc\xb4\x50\x08\xc0\x5b\x89\xd4\xf2\xb6\x5c\x4e\x26\x6c\x4a\xb2\x26\xe3\x94\xcb\xba\x50\x7d\x60\xa5\x5a\x57\x8c\x2f\xef\x46\x43\x27\x1b\xba\xa3\xd6\x8b\x0e\x16\x51\xed\x19\x0e\x74\xd4\x1f\x35\x39\x01\xf3\x55\x03\x00\xa2\xf9\x34\xaf\x56\x8b\xcc\x8a\xfa\x04\x9c\x0b\x57\x60\x2e\xa1\xd6\x98\x06\x01\x51\x74\x4f\x0f\xea\xf0\x15\x5c\x2e\xad\x59\x1a\x93\xe8\xcd\x14\xd3\x50\xae\xfb\x26\x69\x99\x5e\xb5\xfa\x78\xf6\x1a\xfa\x51\x84\xa9\xd6\x2d\x1d\xcb\x57\x74\xce\xd9\x84\x26\xf6\x5e\x9d\x43\x46\x51\x1d\x5b\xb4\x6a\x24\x70\xce\x00\x44\x5c\x09\xcd\x94\x3f\xbb\xa9\xd9\xe5\x24\x61\xe1\x94\xa8\x1b\x66\x28\x6a\x7c\xad\x73\x5b\x93\x7d\x1e\x35\xca\x3e\x8f\x6c\xd9\xe7\xd1\xa0\x77\xb4\xa7\xa3\x77\xda\xab\xb0\xc5\xd1\x5d\xb8\xf8\x92\x71\x25\xe0\x83\xed\x4b\xb7\x58\x18\xfe\x3f\x53\xca\x1b\xe7\x9c\x0e\x6b\x6d\xba\x09\xfd\x17\xf9\xa3\x7e\x01\x24\x9a\xba\x53\x2c\xa9\xd1\xd9\xc7\x8b\xdf\xde\x7f\xf9\xf5\xf3\xe7\xf3\x2f\x1f\xde\xfc\xfd\xcb\xdb\xb3\x8f\x1f\x4f\xde\x7e\x3e\x3d\xfb\x78\xe1\x40\xfb\xd5\xb9\xf2\xeb\x76\xfd\x90\x25\x24\x00\xf2\x3c\x68\x1c\x54\x4b\x06\x9e\x17\x2f\x88\xab\xb5\x22\x09\x80\x7d\xe7\xeb\x21\x27\xff\x4c\x49\x22\x0e\x69\xe0\x0c\xe4\x36\x4b\x23\x3f\x4c\x03\x92\x80\x15\xe5\xe4\x9c\xec\xe5\xc7\x65\x74\x70\xe0\x08\xf2\x55\xbc\x24\x53\x12\x89\x43\xed\x3d\xa5\x43\x8c\x5b\x35\xf8\x4c\x69\x69\x0e\xe5\xa7\x27\x5b\x02\x66\x01\xda\xd3\xa2\x26\x2f\x01\xd0\x8d\xc8\x57\x01\xa0\xfe\x6d\x07\x34\x91\x54\x5b\xc7\x77\x09\x09\x4e\x08\x88\x20\x8a\xcc\x8b\xfa\xf1\x87\xff\x82\x70\x59\xab\x52\x2e\x4a\x62\x47\x7d\x51\x0f\x36\xbd\xa7\xda\xa3\x3a\x20\x4d\x2e\xe2\x0d\x4a\x22\x5e\xa1\x63\xd6\xa8\x08\x27\x88\x55\x44\xbc\x7a\xa7\xee\x8b\x01\xba\x8f\x64\x17\x22\xec\x9d\xd9\x3b\x96\xd9\xec\xfb\xd1\x7d\xeb\x0d\xab\xf5\xea\xf3\xa2\xcf\xef\x5b\x71\xc9\x59\xe8\x66\x33\x01\xe8\x58\x88\x78\xb5\xd1\xae\x2c\xf1\xd2\x2c\xa5\xb6\xdb\xfa\x62\xeb\x5d\x85\x23\x0e\x53\xbe\xae\xc4\xba\x56\x74\xa9\x7f\xa6\x84\xcf\x0e\x63\xcc\xf1\x24\xd9\xc0\x2a\x08\xf9\x28\x41\x43\x14\xa3\x00\x4d\xf6\xca\x86\x00\x39\x1d\x7e\xa2\x72\xdb\x92\x2e\x7d\xff\x4b\xb3\xb0\xb4\x89\xa5\xeb\x96\x16\x8b\x17\x60\xa5\x48\x36\x93\xb2\x6a\xf9\x50\x7f\x80\xb8\xf7\xe2\x08\x31\xef\xc5\x2b\x44\x33\x54\x2d\x39\x78\x06\xd9\x30\x0a\x3d\xd2\x20\xf6\x7b\xfd\x02\x70\x0f\x60\x2f\x34\x5b\x0f\x74\x03\x16\x11\xa8\x62\x20\xc5\x69\x32\x06\x38\xdb\x8c\x24\x79\xcd\x72\xbd\x29\x00\xfc\x5a\x36\x09\x5f\x1b\x52\x9e\xc2\x39\x93\x5d\xa0\x5e\xba\x1c\xd2\x08\x87\xe1\x6c\xae\x84\x00\x8b\x85\x96\x1d\x86\xae\xee\xf2\x62\x91\xfd\x05\x60\x5e\x92\x0e\x01\x33\x88\x9a\x2e\x8b\x50\x34\x6a\xa6\x16\x8b\x33\xf3\xef\xc8\x96\x4c\x8e\x6f\x2f\x19\xbf\xc9\xe5\xd6\x57\xea\xff\x67\xbb\x2a\x95\xb5\xec\x1c\xcc\xda\xb2\x07\x54\x9a\xa6\xd1\x2d\x86\x15\x10\xbd\xfc\x53\x4e\xbe\xed\xd8\xca\x5c\x5f\xbd\x43\xa3\xb2\x68\xd5\x20\xdc\xdc\x5d\x83\xa0\x6b\xb8\x83\x1e\x01\x35\x29\x11\x8e\x4b\xda\x83\xde\x03\xa8\x0e\x8e\xf5\xd8\x32\xb1\x73\x31\x3b\x37\xdf\x4c\x18\x7f\xb5\x15\x95\x51\x5e\xfd\x97\x35\x1f\xaa\x25\x7e\x3a\xdf\x25\xb5\xc0\xc5\x56\xd5\x02\x27\x3b\xa1\x16\xb8\xae\xa8\x05\xae\xbf\x4b\xb5\xc0\xe7\xc7\x56\x0b\x7c\x2d\xa9\x05\xbe\x3e\xa8\x5a\xe0\x53\xa7\x16\x58\xa9\x16\xf8\x5c\x55\x0b\x7c\xde\xa6\x5a\xe0\x6d\x83\x5a\xe0\xed\x0a\xb5\xc0\xac\x5d\x2d\xf0\xae\xa2\x16\x78\xf7\x78\x6a\x81\xcf\x16\x8a\xff\xfc\x18\x6a\x81\x8f\x9d\x5a\xe0\xfb\x56\x0b\xe4\x6f\xea\xcd\x93\x8e\x92\xf9\x61\x2b\x51\x32\xdf\x6c\x12\x25\xf3\x5f\xdf\x36\x4a\xe6\x9b\xc7\x89\x92\xf9\xaf\x9d\x09\x86\xa6\x04\xba\x02\x73\xf1\x37\x5b\x1e\x9d\xd1\xf1\x96\xbb\x0d\xdb\xa1\x3d\xa5\xf2\x58\x3d\x7c\x25\xb9\x44\x11\x77\x58\x20\x47\x67\x00\x77\xed\x4c\x7c\x3a\x17\xb8\x53\x80\x68\xb7\x24\x16\x07\x02\x9a\xfc\xe1\x62\xb9\x54\xbc\xe9\xd4\x03\xf2\xdb\xcf\x0d\x5a\x49\xe4\xb3\x80\xfc\xf6\xe9\xf4\x2d\x9b\xc4\x2c\x22\x91\x80\xe8\xbd\x2c\xc3\x57\x95\x41\xa7\x10\xfd\x26\x4b\x15\x61\x8a\x01\x44\x3f\x97\xc6\x55\x7c\x1e\xf3\x25\x8a\xd4\x3c\xd5\xad\x20\x8b\x57\x7c\xf8\x4a\x82\x34\xe1\x09\x37\x89\x43\x2a\x80\xf3\x7f\x22\x07\xba\x13\x1c\xb7\xa4\x56\x17\x9c\x4e\x80\x5c\x3d\xee\x15\xa3\x91\x2e\x0e\x5d\x1a\x05\xe4\xeb\xd9\x50\xfe\x94\x17\x8e\xa3\x1e\x59\x42\x49\x00\x11\xaf\xeb\xaf\x98\xc5\x91\xf8\x1f\x5f\x1d\xf3\xc3\x57\x3d\xb5\x59\xbf\x7a\x4d\x7f\xe2\x2a\x31\x0f\xeb\xd3\xc3\x57\x8d\xa9\x79\x54\x7f\xb5\x75\x2d\x53\x5d\xf6\x09\x88\x9a\x4d\x3d\xe5\x20\x93\x1b\x2a\xf1\xca\x8b\x23\x38\xf7\x71\x42\xf6\xcb\x2c\x48\xc0\x9e\x19\x98\x91\x31\x03\xa2\xa2\x5b\x93\x4c\x27\x26\xe0\x9e\x7c\x2c\xa3\xc6\x05\x3c\xc8\x9e\xfb\x00\x3e\x80\xf9\x12\x11\x28\x01\xaa\x79\x27\xd9\x3d\xa1\x54\x82\x10\xa2\xbe\xc8\x95\x6c\x0c\x2e\xd1\xaf\x5e\x5f\xb8\x6f\xdf\xbc\xfd\xf5\xe4\xcb\xdb\xb3\x8f\x9f\x3f\x9d\xbd\x47\xce\xdf\x0f\x3f\x19\xd9\xf7\xe9\x3b\x47\xfd\xd4\x7a\x1f\xe7\x13\x19\x72\x92\x8c\x9d\x01\xfa\xa5\xdd\xa9\x40\x2b\x6d\xc3\x96\xbb\x0d\x46\xa0\x10\xa5\xab\x0b\x0b\x8e\xa3\x44\xc9\x4a\x5f\x7e\x1d\x73\x07\x22\xbf\xcd\x9f\x81\x08\x41\xa3\x91\xac\x72\xe8\x7d\x04\x20\x79\x2e\x8a\xde\xaf\x99\xa2\x17\x37\x2b\x7a\x75\x4a\x80\x4f\x00\x5b\x8a\x5e\x9c\x2b\x7a\x2f\x0c\x82\x7d\x70\x9f\x86\x73\xf0\x6e\x5d\x4a\x00\x4b\xd1\x3b\x44\xef\x94\xf6\x56\x3d\x05\x91\x53\x32\x14\x8e\x2b\x37\xf3\x35\xe1\xa0\xa0\x72\x2b\x5f\x05\x68\x62\xee\x58\xfa\x60\x6c\x45\x21\x6c\xd1\x07\x5f\x83\xcf\x00\x6f\x41\x1f\x7c\x5f\xdd\x6e\xbd\x5f\xb7\x56\xe7\x2a\x7d\x40\x9b\x9f\xf4\xfb\x76\xff\x68\xf3\xf8\x25\x0b\x9a\x7a\x6c\x9e\xff\x79\xed\xf3\x46\xa5\x76\xae\xf5\x08\x0d\x2a\xa9\x42\xc4\xb1\x32\xea\x65\xf4\xc7\x57\xc7\x91\xde\xa8\x99\xf7\xea\x35\xfb\x29\xca\xa2\x5f\x96\x37\x6a\x36\xd8\xd3\x04\x41\xcd\xa9\xec\x7d\xcb\xeb\xc3\xde\x14\x50\xb9\x69\xe1\xfe\xd1\x00\xa5\x1e\x36\x48\xfd\x95\xdc\x6b\xd4\xc3\x29\x0f\xed\x67\xfb\x24\x5f\xc1\x63\x90\x42\x08\xb3\x13\x6b\xdf\x81\x28\xf1\xa6\xc0\x97\x5b\x50\x22\x6b\x8b\xbd\xa4\xa8\x2d\xf0\x62\x73\x56\xed\x3b\xd0\x3e\xe5\xd0\xc4\x9b\x82\x00\xa2\x99\x37\x91\x0f\x5d\x7a\x93\xe2\xa1\x91\x37\x4f\x79\xd8\x9b\x99\xf3\x0e\x69\xf9\x69\x6f\x98\xfd\x36\x3a\x9c\xde\x07\xf0\x2f\xb9\xff\x0b\x57\xee\xe4\x27\x1f\x3f\x7f\xf9\xfc\x8f\xf3\x13\xe4\x58\x11\xfe\x5f\x5e\x25\x2c\x7a\xbd\xef\x8f\x31\x4f\x88\xf0\x52\x31\x3c\xfc\x4f\x07\xa2\xdf\xc0\x25\x84\x48\xce\x8f\xd2\x6b\xa1\x00\x0b\xdc\x0b\x97\x12\xa4\x8f\x5c\xbd\x09\xff\xaa\xdb\xf0\x7e\x5d\xed\xc8\x90\xb3\x93\x51\xa6\x0a\xd5\x19\x92\x49\x5f\xb8\x82\xbd\x67\x37\x84\xbf\xc5\x92\xf8\x0c\x4a\x25\x90\xc9\x85\x61\x5f\x93\x9f\x2d\x44\xf3\xa5\xa5\x0e\x0d\xa1\xdc\xb5\xff\x74\xf2\xd9\x51\x2d\xe8\x79\x80\xea\x14\xb6\x9e\x2c\x0d\x7f\x50\xc0\x01\x39\x76\x07\x1e\x8f\xd4\x42\xf0\xfe\x7c\x71\xf6\xd1\xd5\x47\x29\x1d\xce\xc0\x48\x29\x99\x61\xaf\x2e\x79\xd6\x77\x0e\x0e\xf4\xbf\xb9\xfe\x3d\xe7\xab\x8a\xd1\x98\xc7\xf3\xbb\x92\xff\x99\x86\xcc\xad\x3d\x12\x26\x44\x6d\xb8\x67\xde\x69\x56\x7e\xef\xcc\xd2\xe7\x03\x33\x10\xb9\xd4\xf2\x4e\x1f\xab\x1e\xa7\x3c\xf4\x1c\x27\x5b\x71\xea\x37\x72\x0e\x1c\x98\x5d\x39\x83\xbd\x96\x42\xc7\x76\xa1\x1c\x65\xb7\xce\x96\xb7\x76\xb5\xa0\x51\xfe\x39\x0f\x89\xf0\xc7\x7f\xa3\x62\xfc\x59\x67\xb7\x5b\x97\xa4\x24\xdb\x98\x4d\x0a\x8e\x8b\x30\x1d\x15\x69\x39\xc4\x98\x44\xa0\x29\x65\xb5\x6a\x05\x14\x03\x23\x10\x19\xa0\x23\x54\xa4\xcf\x79\xb1\xfc\xe7\xce\xdf\x0f\xdf\x6a\x35\xa6\xee\x52\xaf\xd0\xd9\xe7\x99\x3d\x8e\x1d\xc7\xca\xdb\x22\x3f\x17\x53\x81\xc9\xdc\x5d\xdd\xad\x56\x9b\x95\xe4\x12\x92\x32\x44\xcd\x36\xb2\x87\x43\x9c\x4a\x99\xe7\x09\xb7\xb4\x87\x66\x5b\x52\x83\xf4\x49\xdc\x6a\xba\x49\x46\xb8\xcd\xd4\xe2\xea\xd4\xfe\x4b\xc7\x53\xfd\xf5\xe4\xcd\xbb\x93\x4f\x17\x5f\x3e\x9f\xfd\xe5\xe4\x63\x21\x29\x20\xa5\xd9\x2d\x7e\x41\x84\xad\xd9\x45\xcc\x13\x6e\x7e\x70\x67\x23\x01\xbc\xb0\xc2\x69\x34\xbe\xb1\xf2\xca\xd7\xcc\x6f\x18\x9a\xb3\x98\x44\x65\xbb\x06\xd7\x18\xa7\x00\x62\xcc\x88\xe0\x12\x4d\x48\x92\xe0\x8a\x95\x91\x3e\x69\xcc\x88\xcd\xd7\x4c\x22\xc1\x25\x35\x16\xfa\x6b\xcf\x3a\xdf\xb2\xeb\xe9\x1a\x2e\x81\x40\x3f\x48\x48\x14\xc9\xad\x9b\x79\x51\xff\x55\x0e\x81\x7e\x2d\xec\x4b\x38\x5c\x2c\x00\x91\x58\x89\xe5\x7b\x9b\x9c\xa0\xd2\x06\x2b\xab\x69\xe2\x3a\x92\x28\xeb\x2e\xe9\x58\xc6\x09\x81\xcb\x3d\x8d\xf5\x78\x1a\x69\x25\x2e\xa8\x9f\xc9\x04\x70\xb5\xa6\x91\xe2\x8d\xa5\x69\x5a\xff\x70\x04\x88\xab\x9e\xd3\x55\x28\x03\x9c\xca\x4c\x67\x76\x29\xf9\x4c\x23\x2e\x81\x0e\xdc\x63\xae\xfe\x6e\xb3\x8f\x0a\xde\xc2\x68\xcb\xde\x33\x6c\xfb\x94\x32\xad\xb5\x8c\x5c\x94\x41\x4c\x9b\xed\x94\x79\x13\x80\xd4\xcc\x6f\xa0\x36\x2a\x33\x1f\x11\x69\xb4\x7f\x6b\x31\x73\xda\xa0\x6e\xf3\xe8\xaa\xda\xdb\x8c\x73\x36\xa8\xdd\x3c\xda\x58\xfb\x00\x1e\x1c\x9c\x94\x8c\x77\x74\x68\xe3\x13\xe5\x4f\x8b\x70\xb3\xf1\x0e\xbe\xaf\x2d\x4c\xec\x7d\x04\x89\x5d\x6f\xd9\xd3\x2f\xbc\x6f\xfd\x41\xb5\x7e\x8b\x03\xf4\xd3\xfb\xd6\x3e\xa9\xd6\x5e\xd0\x88\xbe\x7f\xdf\xca\x13\xdb\x4c\xe8\x97\xcd\xcc\x84\x2a\xac\x77\xbd\xc1\xd0\x66\x16\x3d\xaa\xae\xe6\x5b\xf9\x81\xd7\x7c\x5b\x6d\x05\x5d\x06\x5a\x2b\x03\xed\x13\x95\x6c\x87\x5b\x91\x6c\xe3\x4d\x24\xdb\xe9\xb7\x95\x6c\xe3\xc7\x91\x6c\xa7\xdf\x56\xb2\x9d\xb7\xeb\x6f\xd5\x4c\x21\xd9\x09\x33\x85\x52\x4e\xd8\xb6\xd4\xff\x77\xd4\xbf\xc7\x9d\xfe\x7d\xa5\xfe\x7d\x52\xd5\xbf\x4f\xb6\xa9\x7f\x0f\x1a\xf4\xef\xc1\x0a\xfd\xfb\x8a\x8c\xc0\x15\x3b\xc3\x47\x0b\x84\x39\xb1\x0e\xd7\x96\x28\x5d\xdf\x71\x9c\xa3\x99\x0e\x80\x92\x6b\x8b\xca\x61\x55\x20\x44\x97\xcf\x45\x5e\x3f\x5c\x23\xaf\x97\xb0\x8a\x7a\x71\x4d\x5e\x6f\xde\x9c\x9f\x09\xec\x11\x5d\x17\x29\x13\x5b\xfe\x4f\x0a\xfa\xb5\xd2\xad\x59\xd9\x6d\x60\xb5\xec\xc3\x78\xd3\x20\xaa\x84\x19\xb9\x9e\x10\x10\x23\x94\x43\x44\x89\x9f\x40\x0a\x94\xea\xaf\xec\x4e\x81\x48\x99\xf3\xd6\xbc\x2d\x50\x0a\x04\x32\xd2\x66\xa2\x58\xef\x62\x31\x37\xfa\x2b\xec\x85\x20\x34\x6a\xae\xf9\x12\xcd\x2f\xc9\x90\x71\x72\x41\xa2\xa0\xec\x84\xe2\xb2\x98\xc8\xbf\x96\xf2\x15\x4c\x09\x17\x84\x27\xbd\xb9\xf2\xdb\xd8\x57\x92\xc0\x32\x93\x2d\xf6\x47\x25\x18\x8c\x31\x4f\x14\xc5\xd4\x5b\x9c\x75\x04\x2c\x97\x4b\x94\xa4\x2a\xfb\x6b\xaf\x0a\x84\x65\xb3\x26\xd5\x10\xc8\x65\x27\x04\x65\x8c\xbd\x27\x90\xd6\xd5\xf6\x22\xf3\xc7\x67\xf2\x55\xf4\xf8\xb2\x81\x9f\x1b\x64\x8d\xf5\x7c\x87\x7b\xa1\x87\xed\x03\x5b\xad\xee\x63\xdc\x93\xb3\x9f\xeb\x5f\x15\xe4\x40\x54\x73\x76\x10\xaa\xa1\x4f\xe2\x90\x88\x12\xb5\xa4\xda\x93\x46\xd3\xf4\x2c\xfc\x90\x66\xeb\x5e\x83\x0c\xc0\xfd\x3a\xe6\x40\xae\xb4\x25\xa2\x9a\x5a\x26\x0d\x7e\x21\x89\xf6\x0b\xc1\xe5\x40\xa9\x97\xeb\x99\x4e\x7c\xc9\x30\x0f\x5e\x86\xcc\xc7\xe1\x61\x22\x18\xc7\xd5\xc8\xa9\x79\xa1\xd5\x61\xcc\x1f\x05\x50\x71\x6b\x3f\xe6\x4f\x95\xec\xb0\xad\xa2\x46\xba\x13\xa8\x11\x57\x17\x98\x8a\x76\x5c\xfb\x0c\xa8\xfe\x0c\x48\x2d\xf2\xf6\x93\x3a\xbd\xd2\x0a\xec\x4d\x4b\x90\xba\x25\x40\xf7\x1d\x21\xb5\xdf\x41\xea\x95\x90\x3a\xae\x42\xea\x78\x9b\x90\x3a\x69\x80\xd4\xc9\x0a\x48\xcd\x57\x40\xea\x0a\xb4\x1d\x3e\x9e\x49\x6b\x6c\xed\xe2\xf1\xce\xa1\xea\xa0\xa4\x2f\x08\x41\x94\x27\x9b\xf4\x7c\x10\x59\x00\x52\x7e\x78\xc6\xc8\x9d\xe6\xf6\xeb\xd9\x0b\x45\x80\x7a\xc2\x4a\x85\x48\x20\x74\xbf\xf8\x97\x1e\x47\x34\x03\x93\x18\x44\xc8\x20\x49\x16\xbd\x0d\xa9\x7f\xdd\xea\x55\xfa\xc5\xd7\x71\x66\x5d\x09\xb7\x00\x51\x9e\xa5\x23\x2c\xc8\x67\xa5\x24\x58\x2c\x88\xeb\xa7\x9c\x93\x48\xe8\x0b\x99\xc3\x31\x99\x50\x01\x1c\x83\xae\x1c\x34\x5f\x2a\x61\x36\x8a\x4a\xb9\xf8\x26\xf6\x46\x10\x02\xd1\x88\xa0\x55\xdc\xda\x62\xe8\xc2\x7c\x31\x7c\xcf\x0c\x58\x14\xb6\x2e\xb4\xae\xa2\xc3\x96\x8a\x4e\x99\x05\x1c\xbd\x0e\x7f\xa2\xaf\xc3\xdf\xfd\x0e\xe2\x7e\x68\x2b\xe6\xc2\x5c\xd1\x13\x81\x21\xe0\x1e\xb1\x6d\x5d\x48\xc5\xd6\x05\xe7\x19\x36\x15\xc8\xb9\xa1\x51\xc0\x6e\x5c\x05\x7d\x2e\xf4\x45\x88\x54\x35\x10\x39\xd7\x64\x56\xc2\x3e\x10\xf1\xe2\x3d\x08\xb4\x26\xf6\x7d\xa3\x8a\x52\x8e\x49\xf2\x5f\x50\x56\xe1\x98\xfe\xc8\x05\x7f\x2a\xc8\x04\x28\x49\x26\x22\x5a\x65\x33\x80\x48\x94\x31\xdd\x64\x63\x4c\xc7\x92\x3b\x01\xb9\x2e\x1f\x4d\x97\x8f\xa6\xcb\x47\xd3\xe5\xa3\xf9\x8e\xc5\x70\x5d\x3e\x9a\x9d\xe0\x29\xdf\x57\x3e\x9a\xe2\x8d\xcb\xc9\x13\x85\xc8\xec\xe1\xf3\xcf\xb0\x80\x1c\x4e\xa8\x52\xd7\x96\x4e\x60\x3a\x9d\x1d\xca\x9b\xfa\x5e\xf3\x03\xbb\x98\x9c\xd6\xea\xff\xcb\x90\x46\x82\xac\x51\x97\x93\x80\x0a\x53\xb4\x3e\x5e\xb3\x4b\x22\xb6\xf7\x0c\x75\xda\xbb\xe2\x70\x1d\x6e\x15\x42\xa5\x3b\x01\xa1\xfc\x12\x84\xf2\x1f\x14\x42\x25\x1d\x84\x5a\x09\xa1\x82\x2a\x84\x0a\xb6\x09\xa1\x86\x0d\x10\x6a\x78\x37\x4d\x66\x5c\x81\x32\xf1\xe3\x89\x5d\x02\x6b\x57\x0d\x76\x0e\x45\x4d\xd0\x0c\x5d\xa2\x31\x9a\xa2\x11\x3a\xf3\xfa\xf3\x08\x4f\x48\xcf\xf9\xf3\xc5\xd9\x47\x07\x4d\xa8\xfc\xbb\x6a\x49\xed\xa0\x09\x0b\x48\xcf\xb9\xc2\x53\xac\xad\x44\x1c\x44\xbe\x8a\x5e\x5f\x5b\xa6\x23\x67\x82\x63\x67\x80\x70\x48\x71\x62\x2e\xfe\xc1\x19\x2c\x91\xa9\xfa\xd7\xb7\xef\xb3\x9a\x55\xf0\xb1\xaf\x87\x3c\xbd\x9c\x65\x95\xea\xbf\x75\x75\xfc\xd2\xae\x46\xdf\x71\x26\xd8\x37\x7f\x71\x7c\x4d\xe4\x3f\x97\xea\x7f\x5f\xad\x26\xfe\xf1\xe6\x43\xb5\x8d\x19\x9e\x84\x59\x1b\xfa\x6f\xdd\x86\xfe\xdb\x99\x4d\x42\xab\x2d\xf5\x6b\x39\x40\x37\x1e\x68\x0b\xda\xa9\xbd\xc3\x26\x1e\xe0\xcf\x05\x85\xfa\x19\x0a\x1d\xb6\xa1\x50\x8e\xa8\x97\x80\xa1\x85\x42\x87\xb9\x09\xa8\x61\x4f\xc3\x07\xf7\xcd\xc2\x20\xbe\x85\x6f\x16\x43\x71\xd5\x93\x6a\x68\x61\x5e\xb9\x3e\xea\x0e\x3d\x85\xa1\x5a\xae\x57\x56\x90\xeb\x3e\x99\x1a\x4d\x3d\x23\x22\x4e\x14\x88\x5b\x67\x3f\x1c\xb0\x89\x4b\x42\xa2\xa2\x3d\xaa\x35\x8d\x39\xc1\xfb\xbf\xdb\x0f\xe8\xd4\x41\x04\xba\x6f\x59\x40\x3e\x28\xe4\xa8\x51\x78\x5a\x45\xe1\x5c\xeb\x3b\x38\x44\xc3\x8a\xdd\xec\xcc\xd3\x73\x73\xe9\xf5\xa3\x01\x1a\xdf\x2f\xa9\xc9\xa8\x9a\xd4\x64\xdc\x12\xbd\x60\xd4\x27\x03\x6f\x6c\xa2\x17\x8c\xca\xd1\x0b\xec\x9f\x68\x54\x8d\x5e\x30\x6a\x8d\x5e\x30\x5a\x2c\x46\xd5\xe8\x05\xa3\x32\x2e\x19\x79\x97\xb7\x4f\x6a\x22\xf7\xc8\x2c\xa9\xc9\x08\xa2\xa9\x15\xbd\x60\x54\x89\x2d\x30\x32\xd1\x0b\x4a\xd7\x8f\x47\x75\x38\x38\xcd\xa3\x17\x8c\x56\x47\x2f\xa8\xb6\xd0\xbc\xed\xcb\x2e\x8e\xe4\xf0\x74\xf4\x02\xe6\x8d\x10\xbf\x4d\x4c\x3f\x1d\x66\x98\x46\xd7\x2f\xd5\xc2\xf0\x99\xb1\x96\xbd\x4d\x6a\x13\x94\x22\x7f\xaf\x0c\xbd\xcc\xb1\x98\x3c\x55\xb2\x51\x42\x2f\x9b\x86\x71\x23\x2d\xb9\x47\xba\x70\x7a\x9b\x85\xd3\xab\x4d\xdc\x86\x49\x5b\xe2\x67\x93\xb4\x25\xce\x92\xb6\x94\xe7\x6b\x07\x22\xe9\x81\x7a\x92\x92\x6f\x10\x2e\x2e\xd8\x25\x99\xc1\x64\xab\x32\x83\xd9\x4e\xc8\x0c\x4a\xe1\x49\xc1\xe5\x83\xca\x0c\xc6\x9d\xcc\x60\xa5\xcc\xe0\xac\x2a\x33\x38\xdb\xa6\xcc\x60\xda\x20\x33\x98\xae\x90\x19\x24\xed\x32\x83\x51\x45\x66\x30\x7a\x3c\x99\xc1\x99\x05\x8e\xce\x1e\x23\xfa\xd8\x4d\x17\x7d\xec\xfb\x8e\x3e\xf6\x30\xd2\x9d\xab\xf6\xa4\x24\x56\x90\x99\x36\x21\x07\x27\x31\x4b\x24\x3b\x9d\x15\x39\xf6\x57\xa4\x2a\xb1\x8a\x5f\x4f\x1d\x49\x42\xd6\x96\x4b\xb4\x84\xc3\x81\x08\x7b\x37\x00\xd0\xe7\x22\x4c\xb9\xdc\x28\xa3\xc9\xb8\x25\xa3\xc9\xe4\x0e\x19\x4d\xa8\x77\xf4\x9a\xfe\x24\x94\x5f\x7e\xd4\xa7\x8d\x71\xa0\xf6\x03\x30\xda\x2c\xa3\x49\xe1\x54\x8a\x91\xca\x50\x86\xd4\xa3\xd0\xca\xe9\xec\xa0\xb0\x72\xeb\x7a\xea\xa0\xb4\x72\x2d\x5b\x00\xc8\x37\x37\x5a\x72\x9e\xc4\x9c\xc4\xb8\x29\x4f\x43\xc9\x9c\x55\xcf\xa5\xde\x47\x33\x17\xba\x48\x4e\x74\x9e\x9d\x82\xf0\x84\x36\xf9\x03\x54\x62\x3c\xf4\x87\x80\x64\x61\x4d\x5e\x3a\x10\xfd\x08\xfb\xbf\x1f\x0c\x5c\xf3\x38\x10\xb6\x87\xc1\x84\x4d\x1b\xfb\xb5\x49\x85\x26\x28\x8e\x30\xba\xd3\x59\x83\x2d\xee\xac\x25\x55\x81\xe5\xd7\x7b\xef\x7c\x05\xa1\x77\x03\xa8\x5d\xb9\xf5\x16\xef\x9f\xb5\x20\xad\xd6\x2e\x17\xc2\xfd\x73\x16\xf8\xd5\x6a\xf3\xb5\xd4\x67\xf7\xad\x9b\xda\xb2\x93\xab\x3b\xc8\x4e\x5a\x1d\x01\xda\x84\x28\xf6\x77\x5e\x60\x03\xf6\x54\x05\x27\x74\x97\x18\x17\xde\x2a\xe3\x0a\x77\x82\x71\x75\xc6\xf1\x9d\x71\x7c\x33\xe3\x62\x9d\x71\xfc\xf6\x8d\xe3\x91\xa5\xa7\xdd\x08\xd3\x07\x1e\x88\x9e\x0b\x9a\x4e\x33\x34\x9d\xb4\xa3\x69\xe6\xf9\x20\x81\xb6\x7a\x22\x43\xd3\x58\xaf\xf7\xe4\x36\x68\x5a\x9b\xd2\x0b\x65\x4a\x1f\xb5\x99\xd2\x53\x30\x04\xc4\x63\x36\x9a\x66\x6b\xd0\x34\x47\xc3\x2a\x0a\x4e\x36\x43\xc1\x59\x14\x8b\x5a\x86\xb5\x1f\x1a\x33\xac\xfd\x60\x07\xb7\xf8\x41\x05\xb7\xc8\xc4\xec\x4a\xda\xea\xc9\x6f\xdc\x91\xff\x1e\x47\xbd\xfb\xc1\xea\xdc\x10\x0d\x51\x2f\xc7\xc0\x3d\x07\xba\x31\x8b\x8b\x6d\xaf\x1c\x59\x2d\x03\xda\x80\x79\x02\x01\xee\x51\x48\x23\x10\x79\xf3\x25\x6c\x71\x86\x94\x0d\x98\x15\xc3\x6e\xe5\x0c\xa9\x14\xcb\x0c\x45\x70\x3d\xa4\xcf\xce\xa8\x4d\x07\x61\xf2\x90\x65\xe0\x3e\x6c\x00\xf7\xa1\x06\xf7\x49\x05\xdc\x4f\x3c\x6b\x4d\xcc\x3c\x09\xf0\x2f\xef\xa7\x97\x9d\x56\xf5\xb2\x97\x2d\x72\x9d\x69\x9f\x0c\xbc\x4b\x23\xd7\x99\x96\xe5\x3a\xf6\x4f\x34\xad\xca\x75\xa6\xad\x72\x9d\xe9\x62\x31\xad\xca\x75\xa6\x65\x24\x32\xf5\x66\xb7\xd7\xcb\xca\x5d\x31\xd3\xcb\x4e\x21\x1a\x5b\x2b\x7d\x5a\x91\xba\x4c\x8d\x5c\xa7\x74\xfd\x78\x5a\x07\x80\xe3\x5c\xae\x33\x5d\x2d\xd7\xa9\xb6\xd0\xbc\x2e\x65\x17\xa7\x72\x78\x5a\xae\xc3\xbd\x29\x8a\x6c\x6e\x31\xda\x98\x5b\x64\xc9\x5f\x37\x54\xc8\xee\x95\xdd\x08\xcc\xc9\x87\x9f\x2a\x9f\x08\x3b\x45\xec\xee\x28\x62\xd3\x67\xa3\x88\x4d\x9f\x84\x22\x36\xfd\x66\x8a\x58\x7f\x97\xc4\x02\xc9\x56\xc5\x02\xc3\x9d\x10\x0b\xc4\x25\xb1\x40\x0b\xb1\xba\xa3\x58\x20\xe8\xc4\x02\x2b\xc5\x02\x97\x55\xb1\xc0\xe5\x36\xc5\x02\x93\x06\xb1\xc0\x64\x85\x58\x00\xb7\x8b\x05\x66\x15\xb1\xc0\xec\xf1\xc4\x02\x97\x16\x38\x6a\x31\x23\xd8\xae\x22\x76\xdc\x29\x62\x9f\x83\x22\x76\xda\x10\x0d\xf9\xf0\x95\x0a\x39\x9d\xc7\x48\xef\xbd\x7c\xe9\x40\x95\x2f\xc5\x30\x01\x79\xa1\x08\x17\x2e\x6b\xce\x88\xa7\x2c\xb9\x5c\x25\x09\x6a\xb5\xe7\x6c\xd7\xf6\xae\x57\x63\x40\xc4\xbc\x31\x78\x3e\x26\xef\xf1\x06\xe1\xcd\xb8\x17\xb4\xa4\x23\x49\xee\x90\x8e\x64\x23\xb9\x92\x0f\x66\x9b\x69\x69\xb3\xdc\xda\x0c\x29\xd6\x83\xd4\x83\x25\x79\x13\x35\x77\x48\x73\xa4\xb5\x35\x5a\x57\x8d\x3f\x42\x30\x95\xb5\xfe\x20\x57\x07\xef\x1f\x0d\x10\xf5\xb8\x15\x39\x5c\x69\x3f\xd9\xc0\x35\x75\x01\xaa\x9e\xbd\x85\xe8\xc8\x6a\xa0\x31\x34\xb9\x6a\x80\x17\xca\x59\x86\x36\x54\xcf\xde\xaa\x76\xa3\xa9\xd5\x95\x0f\xa0\x8a\x7d\x57\x13\xe7\x0c\x8b\xf0\x61\xb0\x12\x41\x5a\xbd\x88\xfb\x6b\x6a\xa9\x37\x06\xbc\x45\x0d\x7c\x6f\x45\x2d\xbf\xbd\x64\x82\xa5\xdc\x27\xf7\xb4\x19\x2f\x92\xac\xdb\xbe\x48\xe8\x06\x5d\xa1\x2f\xe8\x1c\x5d\xa0\x13\x74\x8d\xbe\xa2\x4f\xe8\x2d\x7a\x87\x3e\xa3\x8f\xe8\x0d\xfa\x80\xfe\x85\x4e\xd1\x7b\xf4\x1b\xfa\x19\xfd\x8a\x7e\x41\x7f\x41\xff\x40\xff\x44\x7f\x42\x7f\x45\x7f\x43\xff\x8d\xfe\x0d\xfd\x0f\xfa\x3b\xfa\x73\xf1\x51\x12\x62\x1d\xf3\x84\x3c\x55\x21\x88\x20\xb7\xcf\x29\x5e\x93\x81\x6c\x21\x6f\x72\xb3\x94\x65\x43\x61\x41\x44\x9e\x8d\xb4\xc0\x0c\x75\x79\xd7\xb4\xee\xdf\x85\xb0\xc0\x0c\xe2\x5b\x48\x0b\x38\xd9\x25\x71\x01\x23\xdb\x0d\x40\x48\x76\x42\x60\x80\x49\x49\x62\x80\xc9\x83\x8a\x0c\x54\x3e\x8d\x4e\x66\xd0\x2e\x33\x50\xd1\x60\x4b\x42\x83\x84\x6c\x53\x6a\x90\x92\x06\xb1\x41\x4a\x56\xc8\x0d\x08\x69\x17\x1c\xf8\xa4\x22\x39\x50\x17\x1e\x49\x74\x90\xd8\xa0\x22\x69\x59\xc7\xdb\x15\x1e\x0c\x49\x27\x3d\x78\x0e\xd2\x83\x98\xb4\x33\x7d\xcb\x9a\x3a\xf0\x37\x33\xe6\x8e\x58\x40\x36\xb3\xe3\x36\x25\x37\xb0\xe4\x36\x25\xe9\x26\x36\xdf\x5a\x91\x09\x51\x5b\xea\xd5\xc6\xc2\x6d\x99\x58\x1b\x0b\xb7\x65\x62\xad\x17\x3e\xcc\xce\xe1\x15\xf9\x58\x57\x3f\x95\xac\x7f\x2a\x96\x47\x81\xca\xe6\xba\x71\xd1\x78\x83\xd7\x4d\x13\x9f\x4d\x09\x9f\x1d\xfa\x63\x4c\x23\x65\xf4\xb3\xf6\x21\xc1\x62\x16\xb2\xd1\x4c\x45\x2f\x58\x5b\xda\x67\x8c\x07\x34\xc2\x42\x0e\x74\x76\x1b\x7b\xfe\xcb\x0d\x96\x4c\x12\x63\x35\x83\xe3\xdb\xf9\x1f\x4c\x6f\x57\x7c\xb4\xa1\xbb\xc2\xd9\x26\x93\xa7\xb2\xce\xa1\x9b\x0d\xde\x23\x0b\xa9\x2f\x67\xf9\xea\x16\x65\xbf\xac\x2f\xcb\x59\x28\xa7\xec\x7c\x7d\x49\x46\x03\xff\x30\xe6\x6c\x4a\x03\xc2\x1d\x88\x2e\xd6\x3f\x32\x21\x82\x53\x3f\x71\x20\x3a\x59\x29\x24\x6c\x62\xfd\x2f\x2f\x43\xe6\x5f\x4b\x0e\x07\xd1\x57\x6f\x48\x00\xb8\x7e\x2e\x72\x42\x83\x69\xd7\xb9\x73\x84\xa4\xc5\x9f\x83\x91\x6d\x39\x74\x70\x02\x24\x44\xda\x44\x58\x28\xdf\xac\x4f\x22\xa1\x72\x6e\x7d\x45\x0a\x59\x41\x64\x2a\x80\xc8\x89\x74\x6c\x8c\x4f\xcd\x77\x1c\xf4\xb6\x7e\x23\x54\xa9\x03\x1c\xf4\xae\x7e\x6b\x84\x05\xb9\xc1\xb3\xc4\x41\x9f\xeb\x37\x33\x19\x93\x83\x3e\xb6\xde\x74\xd0\x9b\xd6\x7b\xc5\xee\x8c\x3e\xac\x2f\x94\x38\xe8\x5f\xf5\x52\x72\x1f\xa6\xf2\xde\x69\xf3\xbd\x99\xd5\xc8\xfb\x7a\x91\xea\xde\x8c\x7e\xab\x97\xc9\xb7\x62\xf4\x73\xfd\x66\xb1\xf3\x26\x0e\xfa\xb5\x69\x14\xea\x03\x48\x1c\xf4\x4b\xc3\x1b\xc1\x13\xa2\x36\xd7\xc4\x41\x7f\xa9\xdf\xce\x77\xc7\xc4\x41\xff\x58\x71\xdb\x41\xff\xac\xdf\xbd\x9e\x3a\xe8\x4f\x4d\x83\x51\xb9\x53\xff\xda\x30\x5b\x72\x77\x53\x53\xf9\xb7\x96\x9b\x33\x07\xfd\x77\xfd\x96\xdc\xe9\x12\x07\xfd\x5b\xfd\x8e\xdc\xd9\x1c\xf4\x3f\xf5\x1b\xd9\xfe\x85\xfe\xde\xd0\xc1\x59\x4c\x1c\xf4\xe7\xec\x46\x8b\x9f\x91\xde\xda\xd6\x1a\x32\x22\x8c\x42\x4f\x90\x92\x4f\x8f\x4a\xf0\x1f\x10\x9f\x05\xe4\xb7\x4f\xa7\x6f\xd9\x24\x66\x11\x89\x04\x94\x68\x24\xec\xbf\x1a\x20\xdf\x0b\xfb\x3f\x0c\x50\xe2\x85\xfd\xdf\x0f\xd0\xd0\x0b\x0d\x04\xfe\x51\x9e\xf6\x4a\xce\x9c\x0c\xf6\x4c\x72\xfd\x6c\x8b\x3a\x99\x92\xa8\x44\x65\x75\x58\xe8\x9a\x95\xe7\x51\xa3\x95\xe7\x91\x6d\xe5\x79\x34\xe8\xcd\x97\x48\x78\x73\x39\x13\x3d\xc7\x64\x12\x75\x74\x96\x64\xb2\xcc\x81\xe3\x88\x08\x20\xf4\x7e\xe0\x4e\x88\xc0\x0e\x5c\x2c\x0a\x52\x61\x65\xa2\xe5\x38\x1a\x91\x83\x83\xd8\xe5\x44\xee\x24\x34\x24\x20\x82\x48\x2c\x51\x02\xe7\x2a\xc3\x7f\xf6\x3a\x7a\x3a\xbe\xb7\x20\x60\x08\xb3\x01\x72\x2f\xd0\xc2\xf6\x40\x4e\x0d\xf5\x02\x33\x19\x3f\x40\x89\xf9\xd5\xe3\x49\x3a\x99\x60\x3e\x3b\x1c\x32\x7e\x98\x7d\xf5\xaa\xaa\x89\xac\x8a\xc2\x3d\xac\x93\x4c\x53\x3b\xc9\x74\xd4\x94\x76\x34\x56\xb9\x63\xcd\xa6\x7c\xa1\xab\x05\x18\x31\xe4\xa3\x14\x11\xb8\xdc\xbb\xe4\x04\x5f\xef\xa9\x56\xd3\x38\x11\x9c\xe0\xc9\x61\x63\xf3\x2b\xaa\xff\xcd\x3c\x98\xd5\xdf\x58\x7b\xc0\x6e\xa2\x3b\xd6\xff\x2e\x7f\xb4\xd6\xc2\xd2\x6e\xc1\xda\xc7\x7b\xea\x8a\xb5\x1b\xac\xaa\xff\x8d\x92\x9f\x96\x7a\x9b\x6f\xc4\xa6\x22\x75\x04\xe8\xbf\xf5\xd7\xa9\xff\xce\xbf\xf0\x35\xd5\xff\x3c\x7b\x97\x77\x0e\x34\x4c\x8e\x39\x2f\x56\xd5\xf2\x5e\x15\x01\x7e\xf5\x51\x6b\x4b\xeb\xe9\x1c\x4d\x95\xd5\x36\xd3\xab\x6d\x56\xac\x94\x6c\x99\x6d\x3a\xff\x3f\xcf\xcc\x02\xaa\xbd\x59\xc3\xd8\xee\x30\xfa\x65\x7d\xb2\xad\x73\x49\x8d\xe4\xb2\x3a\x92\x4b\x3d\x92\xcb\x07\x1d\x89\xdd\x11\xfb\xe8\x51\x5d\x18\x57\xbb\x30\xd6\x5d\x18\x37\x77\x41\xe1\x81\xb5\x93\xf1\x91\x05\xba\xfd\x4a\xeb\xd9\xc1\xdb\xd3\x6a\xf3\x4a\xcb\x53\xdd\xf2\xf4\xee\x83\x57\x8d\xab\x24\xd2\x8d\x83\xcf\x81\x89\x6a\x7f\x54\x6d\x7f\xa4\xdb\x1f\xdd\xbd\xfd\x3f\xe9\x06\x56\xf5\x21\x3f\xdb\x7b\x3a\xcf\x7a\xa5\x0f\x67\xba\x0f\x67\x77\x9c\x7d\x6b\xea\x6b\x2d\xeb\x53\xbc\x17\x35\x64\x50\x8a\xdd\x84\x84\x43\x30\x54\x27\x59\x65\x53\xab\x80\x9d\x62\xb7\x58\xb7\x0c\xe5\x14\x0c\xe5\x70\x1a\x76\x83\x1a\x98\xdb\xb4\x2e\xd5\xc5\xa1\x3c\x6a\x1b\x6a\xad\x60\xb7\x55\x75\x9e\x9a\x42\x1b\xd7\x9d\x03\xba\x5b\xf5\xb4\xa9\x93\x1a\x15\xe9\x79\xbc\x9e\x9a\x3f\x0a\x5c\xd6\x8b\x3c\xc0\x3c\x59\x05\x6c\xd2\x47\x96\x1a\xca\xdf\x73\x43\xa0\x3a\x93\xa4\xdc\xe5\x24\x61\xe1\x94\x80\x38\x23\x46\xf3\x62\xab\xea\xf9\xe8\x63\x76\x80\xf4\xd2\x25\x2c\xf7\x54\x41\x31\xb5\x4c\x6f\xaa\xcb\xf4\x46\x2f\xd3\x9b\xfa\x32\xcd\x48\xe9\xbd\x0f\x8c\x9c\xdd\xb6\xac\x58\x7b\x1a\xcc\x2a\x2b\x57\x80\x53\x31\x66\x9c\xfe\xab\x7d\x21\xe4\x25\x74\x0d\x4c\xbe\x31\x66\xbd\xff\xdc\x2a\x5a\xe7\x09\x99\xc5\xc4\xd5\x18\xd2\x78\xc8\x0c\xe0\xc1\x01\x25\x4d\x39\x96\x48\x8b\x63\x77\x89\x88\xdd\xdf\x62\xe0\x93\xe4\xe2\xd7\x76\x03\x86\xc9\xdd\xdf\x5e\xe0\x6d\x63\xd5\x0f\xe1\xdb\xfd\xae\x56\x73\xc6\x25\xef\xef\xdb\xfd\xb9\x56\x77\x41\x46\xfb\xf4\xbe\xb5\x7f\xac\xd5\x5e\xb0\xd9\xfb\xe7\x26\x7f\xd3\x56\xfb\x43\x24\x26\xff\xd0\x56\xb9\x45\x75\xef\x9f\xa0\xfc\x5f\x6b\x5b\x79\x90\x54\xe5\xa7\xb5\x66\x72\x46\xdf\x4f\xee\x5b\xf9\xfb\xc6\xca\x6d\x91\x40\x7f\x78\xdf\x36\x7e\xab\xb5\x51\x93\x29\xf4\xe3\xfb\x36\xf2\x73\xad\x91\x42\x28\xd1\x0f\xee\x5b\xfb\xaf\xb5\xda\x4b\x52\x8d\xfe\xe4\xbe\x0d\xfc\xd2\xb0\x96\x32\xb1\x48\x7f\x76\xdf\xda\xff\x52\xdf\xde\x2c\xb9\x4a\xff\xf2\xbe\xf5\xff\xa3\x56\xbf\x2d\x98\xe9\x8f\xef\x5b\xff\x3f\xdb\xeb\x77\x50\x7f\x7a\xdf\xea\xff\x54\xab\x5e\xc5\xf5\x18\xdd\xb7\xde\xbf\x36\xac\x49\x25\x5b\xea\x9f\xdd\xb7\xea\xbf\xd5\xbf\xdb\x5c\x38\xd5\xbf\xb9\x6f\xed\xff\xdd\x5c\xbb\xfc\x94\xae\xee\x5b\xf7\xbf\xd5\xea\x36\xe2\xb1\xfe\x97\xfb\x56\xfd\x3f\xb5\xaa\xb5\x7c\xad\x7f\x7e\xdf\x9a\xff\x5e\xab\x39\x17\xd0\xf5\x2f\xee\x5b\xf9\x9f\xeb\xcb\x44\x49\xf8\xfa\x27\xf7\xad\xf9\xda\x36\x83\x8c\xc9\x9d\xed\x20\x0b\x8d\xc8\xca\x2c\x1e\x01\x9b\xbc\x24\x53\x12\x89\xc3\x4c\xf8\xd8\xd4\x4c\x61\xe7\xd9\x92\xad\x8c\x44\xc2\x58\x5f\xd6\x5a\x98\xe0\xd9\x25\x39\xf4\x71\x18\x56\xd3\x84\x94\x4c\x07\x9e\x73\x0c\xdf\x5d\x31\x22\x8b\xb7\x6a\x43\x16\xec\x84\x09\x59\xc9\xeb\xa8\x2d\x7f\xfc\x1d\x0d\xc8\x66\x9d\xfd\xd8\x4a\xfb\xb1\x69\xd5\x7c\x6c\xba\x4d\xeb\xb1\xcb\x06\xe3\xb1\xcb\xbb\x05\xff\x1c\x57\x2c\xc7\xc6\x8f\x67\x38\x36\xb5\x76\xd5\xe9\x63\x98\x8d\x8d\x3a\xab\xb1\xe7\x60\x35\x76\xe6\x81\x36\x73\x2c\x1b\x2f\xb4\xdb\x61\x59\xe1\x84\x52\x6f\x04\x40\xf8\x5c\x0c\x3a\x26\x6b\x02\x0a\x69\xfd\xef\xac\x25\xa0\x50\x7c\x87\x80\x42\x1b\xe5\x3a\x19\x82\x31\x20\x5e\x68\xdb\x72\x84\xcd\x8e\x5f\xea\xf5\x3a\x28\x45\x63\xa5\xec\x56\x0f\x96\x1c\xbf\x7c\x73\xa7\x1c\x68\x88\xae\x55\x83\x53\x3d\x48\x5c\xcb\xc8\x2b\xdc\x9f\x0d\xda\x55\x2a\xeb\x0b\x2d\x03\x2d\x16\x89\xc8\x1e\x0d\x3d\xea\xfa\x21\x4b\x88\x7b\x49\xa3\x00\xd0\x6c\x87\x04\x47\x88\xe5\xd9\x91\x01\xa8\x8b\x73\x85\xeb\xa7\x3c\x61\xd9\x57\xb6\x84\x08\x1c\xa1\xc8\xa5\xc3\x8f\x4c\x64\x6d\x43\x80\xf3\xf8\x3b\x10\x02\xe8\x8a\x31\x89\x9a\x2a\x23\x40\x64\x37\x4b\xed\x86\x6b\x2b\x6d\xa8\xf3\xfe\x3a\xf9\x42\xf3\xae\x49\x52\x9b\xd2\x3d\x9b\x83\xac\x66\x75\x49\x65\x0a\x9c\xe2\xf0\xe0\x20\x04\xf2\x8d\x42\xe8\xea\x63\x1d\x1c\x21\xee\x72\x92\x08\xcc\xc5\xdf\xc6\x24\x7a\x33\xc5\x34\x94\x2b\x5d\x8e\x48\xaf\x11\xa8\xf2\x23\xcb\x9d\x51\x8b\xaa\x83\x92\xa4\x9a\x42\x84\xd5\x35\x84\xeb\x41\x8a\xf2\x55\x76\x7f\xa1\xa9\xef\x8d\x40\xd8\xe2\xd5\x76\x6f\x99\x69\x68\xd3\xb9\xb3\xbb\xb3\xb9\x58\x2b\x4b\x6e\x49\xe6\xba\x1c\xd1\x5d\x8e\xe8\x2e\x47\x74\x97\x23\xba\x91\xaf\x74\x39\xa2\xbb\x1c\xd1\xbb\x9c\x23\xba\x15\x26\xe6\x21\xd9\xc1\x11\x12\x2e\x8b\x7c\x02\xd5\xd5\x87\x4e\x11\xdd\x7c\x5c\xb7\x06\xdf\xbe\xcb\x79\xdd\xe5\x51\xde\x01\xb1\x68\x97\x47\xb9\xcb\xa3\xdc\xe5\x51\xee\xf2\x28\x7f\x2f\x79\x94\x5b\xf3\x06\x5b\x22\xb5\x2e\x79\xf0\xee\x24\x0f\xe6\x24\x66\x6b\xb3\x07\xaf\x42\x43\xe6\x7c\x50\x5e\x5e\x2b\x02\x48\x6b\x49\xda\x85\x46\x2e\xcd\x82\xb4\x02\xb3\xb9\xb2\x57\x25\x1b\x47\xb8\x84\x3a\xee\x11\x41\x29\xa7\xbd\xc8\x4d\x39\x5d\xc2\xbb\x64\x04\xd6\x03\xee\x52\x02\x3f\xe1\x94\xc0\x67\x4b\x08\xf7\x36\xc4\xd6\x0d\xc1\xa7\x37\x32\x64\x98\x44\x64\xc2\x22\x9a\x88\x97\x93\x34\x14\xf4\x50\xa7\x86\xaf\x98\x20\x98\xaf\xa3\x1a\x12\x6a\xaf\x7c\x28\x99\x93\x21\x7e\xaa\x78\x3b\xb8\x7d\xec\xa6\xcb\x86\xe0\x4a\xdb\x0a\xdf\x34\xbb\x6b\x50\xa2\x24\xe6\x04\x07\x8f\x17\x8f\x68\xd2\x45\x06\xff\xf6\x91\xc1\x67\x3b\x1e\xf1\x7a\x96\xbf\x71\xf3\x41\xb5\x86\x27\xbb\xbc\x7b\x74\x32\x5d\xc3\x1d\x62\x94\xa1\xa6\x00\x65\xc7\xa5\x8f\xb6\xf7\x00\x61\xc9\x8e\xf5\xd8\x32\xba\x5d\x33\xc1\xf8\x06\x11\xbe\xc6\xbb\x24\x84\x98\x6e\x55\x08\x31\xda\x09\x21\xc4\x59\x39\x23\x23\x38\xf3\x9a\xce\x22\xc3\x83\x0f\x0e\x32\x42\x3c\x22\xe2\xd8\xfa\xbb\x25\xd2\x68\x45\x91\xc6\x38\x78\xfd\xa2\xf6\xc9\x8d\x71\x72\x76\x13\x65\xbd\x34\x1f\x1e\x92\x04\xd8\x10\x27\x40\xbc\x0b\xb9\x21\xbf\x86\xaf\xad\xdd\x5e\x7e\xc4\x74\x08\x78\x9e\xd4\x38\xe7\x8c\x56\x6d\xef\x48\xe2\x73\x1a\x0b\xc6\x01\x97\x0f\x98\xe7\x99\xea\xbf\xfa\xbf\x6e\x2f\x82\x3d\xa6\x77\xe1\xa5\x16\xa5\xa0\x68\xb1\xa8\xa5\xdf\xcd\x27\xe9\xe6\x41\x65\x35\x57\x9d\xac\x66\xa5\xac\xe6\xa2\x2a\xab\xb9\xd8\xa6\xac\xe6\x4b\x83\xac\xe6\xcb\x0a\x59\x4d\xdc\x2e\xab\x39\xaf\xc8\x6a\xce\x1f\x4f\x56\x73\x61\x21\xf2\x8b\xc7\x30\x61\x3b\xe9\x4c\xd8\x9e\x83\x09\xdb\xb5\xaa\x0f\x7d\xd5\xff\x7c\xd2\xff\xbc\xf5\x40\x5b\xe8\xb2\x80\x4d\x56\x84\x2b\x23\x91\xcf\x74\x2c\xa4\x36\xbb\xb8\x15\x41\x8d\xdb\xcd\xe4\x36\x51\x42\xa9\x90\x64\xcf\xc8\x82\xee\x66\x4d\xe8\x74\x9d\x0e\xee\xaa\x25\x74\xfa\xf4\x0e\xa1\xd3\x37\x12\xf8\x8d\xc1\xf9\x66\x02\x3f\xb9\x90\x50\x8a\xce\x95\xbc\x4f\x3d\x05\x51\xbe\x7e\x90\x5f\xb9\x91\xc5\xf7\x4e\x2a\xd7\x0b\x33\xa6\xa1\xb9\x53\x0e\xb4\xce\x33\xd1\xa1\xfc\xc4\x6a\x82\x43\x38\x3f\x03\x17\x00\x17\x6f\x43\xc5\xe6\x91\x05\xf5\x79\xd5\x78\xee\xa0\x6b\x35\x2d\x1f\x70\x2c\xbf\x1a\xf3\xd7\x27\xf5\x57\x94\x7d\x61\xe0\x82\x08\xa8\x2a\x71\xbf\x84\x34\x11\x24\x22\x3c\x51\xc2\x49\x37\x60\x13\x37\xbf\x04\xec\x38\xea\x09\x11\x6f\xb1\x3f\xae\xcb\x37\xe1\x3c\x6f\x32\x2f\x7e\x43\xc3\xf0\x9d\x24\x72\x6c\xd6\x50\xbe\xd2\x72\x16\x5b\x1d\xa2\xaf\xcd\x7b\x35\xd1\x06\x83\x00\xca\xbd\xba\xb2\x25\xb8\x7e\x48\x30\x07\xd0\x6c\x0e\x79\x0f\xda\x84\xb1\x59\xd8\x77\x35\x6d\xdc\xd3\x91\xb7\x5c\xf3\x66\xdd\x94\xd3\xcf\x78\x04\x60\x49\x20\x6b\xbc\xe4\x4b\xb2\x40\xeb\xd4\x41\xd8\x8b\x5c\x16\x93\x08\x70\x44\xd1\x8b\x23\xb8\x87\x8b\x13\x42\x16\x77\x39\x19\x7a\x74\x4f\x1b\x3f\x46\xf6\xc0\x71\x10\x00\x8c\xe6\x26\x14\x4f\xd1\xcb\x08\xce\x95\x29\x1f\x50\xea\x73\xe5\x5b\x0a\x41\xe4\x0a\xcc\x47\x44\xa0\xc8\x95\x3b\x0e\x84\x4b\x44\xe4\x16\x50\x1a\x9c\x7c\x2c\x32\xd3\x85\xd5\x61\x01\x88\xab\x8a\xc1\xe5\x12\xee\x15\xf6\x88\xf2\x84\x7d\x9b\x72\x4e\x22\xa1\xe4\xcc\x00\x1e\x1c\x60\x37\xa0\x49\x2c\xe1\x94\xbe\xd4\x50\x48\x99\x0b\x66\x73\x9c\x46\x37\x1c\xc7\xab\x82\xeb\x13\xf7\x8b\x7e\x11\xd9\x7c\x7e\x92\x28\x41\xb9\xc6\xa3\x4f\xd9\x7b\x8f\x50\x54\x9f\x30\x88\x74\xfa\xc4\xfd\x86\x7b\x28\xca\xbb\x20\xe7\x7d\x65\xb4\xa6\xcd\x13\x62\x1e\x1c\xd8\xbf\xec\xa0\xe4\x2f\x6a\xac\x5f\x2d\x1a\x3d\x7c\xd5\xda\xeb\xdb\xe6\xf2\xd8\xd3\xd0\xb3\x9c\xd1\x03\x51\x6f\x02\x18\xfa\x41\x1e\x35\xb4\x7f\x34\x40\xa1\x47\xfb\xaf\x06\x28\xd5\xd1\xa1\xb0\xea\xd4\x57\xc9\x70\x64\x15\x91\xf7\x55\x5b\x8c\xca\xef\xc6\xe4\x9a\x54\x7f\x27\xca\x8c\x34\x82\x7b\x12\xa1\xce\xb5\x19\xcc\x7c\xb9\x77\x6d\x1e\x3c\x38\x00\xbe\x77\x6d\x1e\x85\xc8\x97\x8b\xde\x23\x28\xf2\xd2\x2c\x72\x41\x88\x7c\xdd\x41\xb3\x29\x54\x56\x6c\x84\xe6\x6a\x81\x15\x13\x9e\xbf\x6f\x91\xad\x51\xee\x45\xf5\xc5\x83\x98\x57\x7d\x9b\xda\x9c\xb5\x58\x97\xdc\x7a\x39\xec\xe0\xe0\xda\x0c\x66\xee\x5b\x15\xf5\x38\xd2\x8f\xf5\xd8\x52\x2e\x23\x39\x2c\x09\x8f\xec\x59\x50\x7b\x17\xdc\x2b\x26\xc3\xec\xbb\xe0\x45\x51\x5e\xae\x25\x1c\xcc\x2e\x04\x16\xe4\x8f\xaf\x16\x0b\x89\xd7\xcc\x97\x2c\xab\xcd\x17\x6a\xb1\xda\xd4\xb0\x9b\x97\x1b\x39\x38\x00\xf9\x8a\x26\x7a\x7d\xeb\xf9\x5e\x2c\x40\xbe\x81\xa1\x1f\xd4\x32\x29\xda\x3d\x38\x28\x7a\x5d\x99\x9a\x94\x53\x68\x7d\x6c\xaa\x86\xa0\x61\x37\x35\x4b\x32\x00\x5f\x5d\x12\x09\x4e\x49\x02\x20\x74\x87\x34\x14\x84\x83\x7a\xf6\x05\x6f\x02\x08\xfa\xa1\x48\x59\x2a\xd7\x99\xe8\xbf\x1a\x94\x26\x63\x09\x75\x38\x33\xd0\x04\xd7\xfb\x47\x03\xb5\x0b\x0c\xe0\xc1\xc1\xa8\xa4\x55\xe2\x0a\x9c\x8e\xd4\xfe\x58\xcf\x82\xa1\xce\xd4\x87\xc8\xfb\x7f\x52\x36\x16\xce\x8f\xe5\xfb\xc7\x86\x48\xaa\x75\xe7\x99\x3b\xee\x6d\xe3\x3c\xac\x56\xbd\x35\x1b\xe7\xb7\x1b\x19\x4d\x29\x50\x97\x94\x35\x3a\xd1\x88\xe3\x78\xec\xaa\xff\x77\x96\xcb\x9d\xe5\x72\x67\xb9\xdc\x59\x2e\x77\x96\xcb\x9d\xe5\xf2\xd3\xb3\x5c\xd6\x47\x5c\x1b\x98\x52\xb4\x2b\xf7\x09\x7b\x78\xab\x65\x05\x84\xd6\x58\x52\xfc\x33\xc1\x87\x43\x2c\x67\x73\xd6\x52\x22\xa1\x97\xa1\x8a\x2e\xd1\x78\x57\xe1\xc5\x44\xb4\xdc\xa5\xc9\x21\x4b\x45\x42\x03\xd2\x52\x60\x44\xc4\xa1\x9f\xc5\xb0\x5d\xd3\x91\x88\xf1\x89\xc2\x23\x87\xca\xfc\xa3\xad\x43\x6a\xd9\x1c\xe6\x5c\xa2\xb5\xdf\xd4\xbf\x3e\x1c\x52\x9e\x88\x43\x1c\xf9\x63\xc6\x9b\x83\x56\x64\xc6\x22\x16\x2e\xf1\xad\x2f\xde\x7f\xaa\xb8\x24\xb9\xbd\x9d\xc8\xf0\x1b\xda\x89\xd4\x76\xaa\x0d\xd3\x7c\x0d\x9f\x4d\x96\xaf\xe1\xfd\x92\x7c\x3d\xb6\x3d\xcd\xf0\x9b\x29\xff\xbb\x58\x27\xc6\x7a\xc9\xd2\xa7\x4f\xbe\x4b\x7d\xfa\xe8\xb1\xf5\xe9\xb3\x12\x51\x99\x3d\x28\x51\xb9\xec\x88\xca\x4a\xa2\x32\xaa\x12\x95\xd1\x36\x89\xca\xb8\x81\xa8\x8c\x57\x10\x15\xbf\x9d\xa8\x4c\x2b\x84\x61\xfa\x78\xfa\xf4\x91\x85\x5c\x46\x8f\xa1\x4f\xaf\xd8\xed\xec\x0b\x79\xde\x93\xe3\x15\x16\x57\xc6\x52\xaa\x22\xa7\xaa\x4a\xb1\x2c\xfc\xbf\x84\x3d\xd2\x17\x03\x2f\x42\xe4\x81\x38\x92\xca\x10\xeb\x55\xc0\x3a\x3a\x97\x57\xd2\xe2\x0a\xcf\xff\x44\x17\xcf\x85\x54\xcd\xd6\xf8\x5b\x08\x94\x22\xdf\xbb\x6c\xf1\xb7\x88\x37\xf1\xb7\xa0\x65\xf5\x6b\xea\x1d\xbd\x4e\x7f\x12\xaf\xd3\xdf\xfd\x0e\xd2\x7e\x6a\xab\x5f\xd3\xfc\x70\x3f\x03\x53\x40\x3c\xdf\x56\xbf\xfa\x15\xf5\x2b\x35\xea\x57\xdf\x41\x01\xf3\x55\x0d\x10\x9d\xe9\x1c\xcd\xce\x0d\x8d\x1c\x74\x43\xa3\x80\xdd\x14\x17\x15\x61\xf8\x45\xf2\x85\x37\x9a\x2e\xa0\x73\xfb\xa6\x61\x41\xd6\x2a\xc8\xee\xe5\xfc\x29\xaa\xdf\xa3\xc9\x59\x46\x8f\x58\xfd\x6e\x4e\x78\x4e\x34\xdf\xc1\xf5\x22\x16\xcd\x09\x8b\xbb\x65\xcf\x11\xb1\x46\xfd\x3b\x01\x23\x30\xbc\xa5\xfa\xf7\x4a\xbd\x96\xbf\x11\x7c\xfd\x01\xc7\xe8\x46\x7e\x0b\xb4\xf8\x16\xf2\x38\x23\x67\x37\x11\xd1\xd4\xd9\x52\x31\xac\xd6\xda\xd6\x7b\x53\x2a\xbf\xa6\x53\x69\x18\xa2\x9b\xb2\x8a\x36\x7b\xbf\xed\x3a\x0d\xa3\x92\xf6\xf3\x47\xa6\x94\xdc\x48\xd2\xbc\xe6\x91\x1b\x5a\xe8\x6c\x46\x29\xad\x6b\x4d\x8a\xcd\xd2\xcc\x48\x4a\x83\x5f\x18\x97\x5b\x62\xae\x40\x26\x5a\xdb\xf4\x59\x29\xb4\xb2\x3d\x6a\x75\x2a\x74\x62\xd4\x5f\x15\xed\xf1\x57\xf9\x39\xce\x4b\x38\x4c\xd1\xd7\xac\x13\x8e\x7e\x4a\x32\x0b\x7a\x5c\x3c\xc3\xeb\xcf\xe4\xdd\xa6\x9e\xe7\x89\xe3\x08\x64\x2d\xf6\xc5\x00\xf6\x78\x9f\x0e\x96\x4b\xd8\xb3\x90\x9f\x79\x21\xe6\x8a\x2d\x16\x59\xae\x19\xaa\x0a\x8a\xba\x4a\xb3\xbb\xe9\x50\x15\x57\x6f\x18\x2a\xb3\x86\x1a\xd5\x9f\xc9\x87\x9a\xeb\x03\x45\x9f\x0d\x8e\xe5\xff\xf2\x51\xc3\x5e\xd4\x67\x77\x1a\x32\x67\x6c\x83\x75\xe7\x66\x4b\xf4\x24\x24\xf2\x9f\xfc\x71\xa2\x7f\xff\x3c\x3b\x5d\xb5\xb6\xf2\x6a\x46\x24\xab\x41\x3e\x61\xaf\x32\x53\x51\xf2\xf3\xec\x33\x1e\x7d\xc4\x93\x16\xed\xa2\x81\x06\xd9\xe9\xa7\x5e\x7e\x56\x7b\x4f\x40\xab\x81\xa2\xa6\xa6\x66\x56\xd5\x6e\xcc\x12\xab\xcf\xac\x7a\xc4\xf9\xbf\x1c\xa5\xcf\x4c\xd2\xcb\x44\x70\x70\x84\x5e\x41\xdd\x2d\x62\x8f\x36\xbb\xfd\x0a\xc2\x5e\x02\x74\x2b\xb0\x7f\x34\x28\x54\x9b\x99\x9c\x69\x65\xf7\x6e\x1a\xf4\xf1\xc7\xa4\x67\xb7\xa7\xab\xae\xd7\xbb\x7a\xdc\x09\xb0\xeb\x48\x74\x25\xad\xea\xcf\x1b\x05\x9e\x9a\x15\xac\xd9\xb7\xa0\x10\x03\xb1\x4d\x25\x68\x72\x1a\xfd\xb5\x6d\xf3\xb2\x3e\xab\x8d\xad\x15\x8e\xed\x1f\xbd\xa3\xbd\x2b\xa3\xe9\x36\x32\x14\x4d\xb7\x4f\x55\x16\x01\xa2\x5a\x39\xbb\x4c\x08\x9f\x56\x7b\x4c\xea\xe3\xd4\xe7\xfd\x95\x36\x10\xc8\x3e\xb4\xbd\x06\x36\x22\xb1\x0a\x20\xae\x1c\x5a\xd6\x4c\x34\x32\xf1\xa4\xe6\xf2\x03\xfb\x80\xf9\x88\x46\x3d\xe7\x28\xfe\x2a\xcf\x07\x4e\x92\x31\x0b\x83\x5e\xb4\xcc\x21\x30\x77\x99\xee\x96\x3c\x33\xed\xef\xd0\x4d\x23\xeb\xce\xd5\xc1\xc1\x95\xa5\xdc\xe7\xae\x0a\x85\x1e\x45\xc4\x17\x00\x22\x6e\x8e\x95\x86\x00\x56\x12\x98\xe8\x00\x56\xa9\x76\x73\xb4\xa4\xb4\x17\x6b\xa4\xb4\x85\x5a\x79\x85\xa4\x16\x0b\x76\xd9\x70\xf9\x52\x30\xdc\xe4\xe8\x66\x6b\x17\xf3\xaf\x9a\x3f\x55\x51\x25\xdb\x6e\xc2\xf3\x9d\x10\xe0\xe0\x72\xba\xf3\x87\xcd\x76\xde\x49\x26\x56\x27\x3b\xaf\xe5\x3a\xdf\x6a\xaa\xf3\xa6\x4c\xe7\x2b\x24\x13\x7c\x45\x9e\xf3\x6a\x9a\xf3\x47\xcc\x72\x5e\x0a\x01\xfe\x18\x39\xce\x77\x51\x32\x11\x3f\x17\x41\x03\xce\x04\x0d\x71\x9b\x9d\x77\x8a\x12\x2f\x04\x31\xb4\xdd\xb9\xf3\xc4\xb7\xfa\x93\x89\xb7\x10\x29\xd5\x07\xc4\x4b\x6c\x41\x43\xd2\x68\xe7\x9d\x72\xfa\xb6\x40\x9f\xfa\xc8\x2f\x65\xef\x44\xaa\x2a\x88\x9c\x2b\x46\x23\x89\x06\x1a\xb0\x52\x0d\xb4\xbd\x6a\x04\x6d\xaf\x6c\xd0\xf6\x6a\xd0\x73\x1c\x74\x67\xc0\xe7\x38\xb5\x7d\xcf\xe2\x4c\x80\x2d\x16\x7a\xc2\x78\xa6\x8c\x91\x78\x35\x04\x12\xd8\xd6\x9c\x4d\x44\x89\xa0\xe5\x56\xaa\x02\x66\x7f\xb1\xfc\x2f\x02\x24\xc7\x5c\x2c\x22\x05\xf2\x1c\x47\x72\xaa\x92\x54\x23\xb6\x8c\xda\x35\x36\x6a\xe5\x58\xd9\x77\x63\xde\x8f\xf1\x46\xb1\xe9\x9a\xc1\xce\x0a\x4c\xb5\xd6\x13\x6d\x5c\x4f\xca\xe9\x9f\x19\xad\x9b\x0b\x97\xf9\x9a\x7e\xcf\x9a\x12\xd8\xab\x03\x39\x2f\x1d\x39\xe2\x4d\x9a\xf9\x8c\x47\x6b\x5a\x11\x78\x94\x37\x21\x3b\xa5\x83\xe1\x56\xe4\x31\xa2\xa1\x9a\x06\xe5\x6f\x09\x04\xd5\x3e\x1f\x5b\xf1\x16\xfd\xf1\xd5\x71\x74\xf8\xaa\x77\x04\x11\xf3\x5e\xbd\x66\x3f\x45\xaf\x99\x52\xc2\xb1\xc3\x57\xf6\x87\xc4\xf2\x0f\x89\x28\xc5\x8c\xc1\xd6\xb4\x6a\xec\x99\x6a\xf3\x8d\x14\xa2\xb8\x8c\xad\xe3\xb5\xd8\x7a\xda\x86\xab\xe5\xad\xce\xf4\xb0\x33\x3d\xec\x4c\x0f\x3b\xd3\xc3\xce\xf4\xb0\x33\x3d\x7c\x72\xa6\x87\xea\xec\x6b\x3b\xd5\x95\x32\x93\x44\x53\x68\x4b\x6f\xa7\x98\x6f\xfa\xc4\xc3\x1a\x2a\x0e\x09\x09\x2e\xb1\x7f\xbd\x5a\x06\x26\x3f\x07\x39\xb1\x87\xb2\xbd\x15\x01\x54\x11\x45\x78\xaf\x2c\xbc\x30\x43\x08\x9f\xea\x49\x9e\xda\xb2\x5d\xdb\x2d\x5d\x6f\xb0\x8d\x46\x31\xba\x91\x24\x3b\x85\x57\x95\x91\xd5\x08\x79\xcc\x7a\xbc\x2e\x8f\x2e\xce\xc3\x75\xb6\x37\xb2\x8f\xd6\xc9\xae\x8e\x0d\x1d\x4c\xc8\xac\xeb\x48\x9e\xcd\x19\xde\xae\x88\x25\x0a\xe6\xf6\xea\xb5\xf8\xa9\x0a\x3f\x5f\x8b\x0c\x4f\x44\x9e\xde\x22\x0a\x94\x29\x6c\x4e\x23\x06\xbd\xf9\x72\x4f\xfc\xdf\x3f\x1c\xa7\x66\x5a\x40\x24\x0f\xaf\x26\xf7\x7d\x39\xa3\x5a\x2a\xd0\x17\x03\xb8\x84\xb0\xb7\x66\x84\x49\xa3\xb8\x80\x92\x04\x10\xb4\xee\x51\x49\x14\x7b\x56\x9f\x5a\x3a\xd4\x2e\x8f\x58\x37\xfb\x11\x32\x59\x18\x1a\x85\x2f\xbb\x13\xfe\x66\xb8\x55\xd4\x1a\xef\x04\x6a\x0d\x4a\xa8\xb5\x25\x8a\xe9\x1d\x51\xeb\xa4\x43\xad\x2b\x51\xeb\xb8\x8a\x5a\xc7\xdb\x44\xad\xb3\x06\xd4\x3a\x5b\x81\x5a\xc3\x76\xd4\x7a\x59\x41\x8f\x97\x8f\x27\xed\xb5\xe6\x1b\x8c\x1f\x43\xda\x3b\xfd\xb6\xd2\x5e\xdb\x00\xaf\x8b\x27\xf3\xf4\xe3\xc9\x9c\x35\x25\xf9\x27\x4b\x74\xd3\x1e\xb1\x79\x18\xe2\x64\xfc\x41\x47\x68\x48\x1c\x88\xda\x42\xcf\x84\x6c\x34\x32\xb1\x65\x46\x00\xb0\xe7\xc2\xa1\x82\x8c\x43\x85\xed\x91\x9d\x99\x37\x01\x21\xb4\xa1\x7f\xa6\x00\x30\x91\xcc\xc3\x07\x57\x00\x24\xe0\x12\x10\x8f\xd9\x0a\x00\xd6\xa8\x00\x88\x98\xa0\xc3\x99\x83\x28\xba\x54\xe1\x10\xd4\x83\x10\x65\xaf\x13\x61\x73\xdd\x92\x71\x87\x36\x99\xfb\x4a\xfc\x54\x6c\x12\xf4\xf9\x8e\x82\xfe\x33\x44\x2b\x16\xae\x11\x44\xb8\x72\x89\x41\x14\xea\x50\x0d\x7a\x38\x85\xf4\xb6\x96\xad\x8c\xc0\xf9\x8b\x57\x2f\x3c\x8f\x1c\x1c\x80\x50\x07\x4f\xc9\x16\x37\x80\x28\x54\x01\x1e\x7c\xe0\x83\xf9\x12\xcd\x05\x9d\x10\x96\x8a\xde\xff\x22\xbf\x47\xe4\xab\x20\x51\x40\x82\xcf\xe6\xda\xef\x8f\xe4\x47\xa6\x4a\xcd\x62\xd2\xc3\xc0\x49\x52\xdf\x27\x89\xfc\x44\xb0\x6a\xaa\x47\x01\x44\x54\x90\x49\x4f\x31\x0a\x2b\x2d\x99\xdd\x99\x7a\x1f\xb8\xab\xe7\xde\x35\x73\xab\x5e\xc7\x67\x8e\xa3\x84\xca\x87\xde\x5c\x32\x2e\x14\xd4\xf1\x88\x72\xe6\x39\x7e\xe8\x4e\x4b\x42\x71\x9f\x3a\x55\xb8\x15\x07\x91\xd2\x44\xe8\x50\x2d\xca\x26\x28\x8b\x9d\x10\x37\x44\xe4\x8e\x75\x44\xee\xb0\x1a\x3b\x21\x5b\xa6\xfd\xe8\xbe\xa1\x02\xb0\x37\x02\xcc\xae\x3a\x5b\xe9\xf7\x8f\xcc\xc0\x6c\xd9\xc2\xcd\x3a\xd9\x82\xe2\xab\x6d\x92\x05\x7d\xf7\x65\xcc\x49\x40\x7d\x2c\x54\x02\x6c\x13\x82\x7a\x93\x52\x87\x19\xfd\x58\x53\x3c\x62\xc1\xba\x22\x56\xce\xfc\x95\xe5\x4c\x92\xfa\x95\x65\x4c\x3e\xf8\x56\x7f\x46\x4b\xd1\xf1\x9c\xc4\x23\x5b\xa2\x8c\xfe\x4e\x50\xc6\xa4\x44\x19\x5b\x4c\x2c\xee\x48\x19\x87\x1d\x65\xfc\x8e\xd2\xb6\xc4\x0d\x94\x31\xbe\x1b\x65\xfc\x5e\x14\x1d\x3b\x9e\xb3\xc5\x9b\x9b\xf3\xa2\x57\x75\x22\x32\xd7\x4f\xcd\x96\xd4\x53\x59\x61\xad\xfb\xf2\xe0\xe8\xa9\xfc\xaa\xd6\xc5\xfc\xa8\xe8\x95\x93\xca\x42\xa4\x0e\x87\x5e\xd9\x17\x03\x22\x7d\x1c\xc8\xcb\xd8\x8e\x36\x80\x66\xcf\x85\x3c\x24\x19\x79\x60\x6d\x6e\x4a\xf2\x2b\x1d\x02\x66\x91\x07\x56\x28\x60\x8c\xc5\x1d\x93\x98\x71\x8d\x02\x86\x59\xde\x36\xf9\x81\xbc\xc2\xb8\x62\x22\x99\xbc\x42\x69\x7e\xd5\xa0\x38\xd2\xe9\x6c\x22\x88\x58\x59\x9b\x32\x5b\x87\x78\x24\x93\x3c\x9c\x64\x54\xb2\x84\x7c\x88\x1c\xfe\xa1\x1f\xd2\x43\x55\xaa\xf5\xa1\x9a\x76\xe5\xd6\x5f\x42\xeb\x03\x66\x18\x4e\x49\x9a\xfc\xe2\x08\x95\x1c\x33\xea\xe6\x3b\xcb\x25\x5c\x37\x6e\xc6\xd7\xc4\xbb\x90\x25\x5e\x5e\xa6\x34\x54\xf6\xd6\x36\x84\x62\x7c\x92\xbc\xbc\x9e\x36\x5c\xc4\x7e\xd8\x70\xb5\x01\x85\xa9\xeb\x06\x79\xd5\x6f\x70\x16\x92\x86\xcb\x2d\xa8\x4f\xdd\x8b\x92\x18\xd7\x33\x05\x56\xa3\x52\x28\x4d\x2a\x4a\xd0\x10\xc5\x28\xd8\x2b\x4b\x71\xcd\x8e\x39\x79\xaa\xb8\x6e\xb6\x4b\x7a\x8b\xcb\xad\x82\xd0\xf1\x4e\x80\xd0\x69\x09\x84\x4e\x1f\x14\x84\x8e\x3a\x10\xba\x12\x84\x5e\x55\x41\xe8\xd5\x36\x41\xe8\x59\x03\x08\x3d\x5b\x01\x42\x27\xed\x20\xf4\xa6\x02\x06\x6f\x1e\x4f\x6f\x71\x65\xed\xaa\x57\x8f\xa1\xb7\xf8\xf2\x48\x7a\x8b\xf3\x4e\x6f\xf1\x1c\xf4\x16\x17\xb5\x28\x07\x27\xde\xfc\x7a\xda\xcb\x39\x09\xc2\x7e\xd8\xcb\xc9\x88\xe1\x1b\x39\x05\xc9\x98\x46\xce\x3e\x90\x84\x3d\xbd\x9c\x75\x58\xcc\x25\x77\x56\x47\x1a\xe6\xf4\xf2\x48\x0a\x4b\x74\xed\x01\xbf\x45\xfb\xc1\x49\xcc\x12\x2a\x18\x9f\x69\x44\xa5\x42\xa9\xae\x2b\x69\x40\x19\x44\xb1\x77\x0e\xc0\xf0\xb9\xb0\x9e\xe9\x46\xac\x67\x54\x63\x3d\x5a\x65\x72\x99\x91\x9e\x5b\xa8\x4c\xa8\x77\xf4\x9a\xfe\x24\x5e\x53\xa5\x32\xa1\xb6\xca\x84\x0e\x0a\x8d\xf6\x0d\x90\xa0\xc3\x52\x99\xf0\xe6\x64\x98\x0a\x32\xc7\xe8\x46\x29\x46\xd4\x63\x10\x39\x19\xc2\x0e\xcc\xf5\x2f\xe6\xba\xc2\xcc\x0e\xea\x0f\x4a\x3a\x14\x9b\x8f\x29\xe0\xbf\xd2\x43\xf7\x62\xad\xd1\xbd\xe6\x18\xcd\xc1\xde\x85\x56\x8d\xa8\x8e\xf4\x89\x0a\xa2\x5d\xb8\x51\xab\x90\x55\xa5\xfb\xde\x49\x9f\x0c\xf4\x11\x6c\xc6\x2a\x8f\xb2\xc5\x22\x1b\xa1\x3a\xd8\xec\x30\xf2\xb2\x4e\x61\xe2\xd0\x37\xba\x03\x67\xeb\x47\x39\x0e\x23\xe1\x26\xe9\xe5\x84\x8a\x96\xb2\x31\xe1\x09\x4d\x84\x2e\x9c\x4d\x98\xd0\x5c\x74\xdc\xc0\x45\xc7\x05\x17\x2d\x69\x0c\xf4\x5b\xea\xfb\xf7\x15\xea\x07\xde\xb9\x1d\xf6\xa1\x78\xd1\xfd\xe4\xde\x21\x91\x6d\xf6\x7c\xbd\x86\x45\x8e\x09\x0e\x0e\x03\x2c\x70\x1b\x71\x96\x05\x9a\x8a\xef\x22\x65\xce\x75\x32\xf9\x48\x07\x65\xc7\xa3\x7c\x63\x10\x16\xf2\x11\x4f\x95\x4f\x46\x5b\xa5\x68\x7c\x27\x28\x1a\x2b\x51\x34\xf6\xa0\x14\x8d\x76\x14\x6d\x25\x45\x0b\xab\x14\x2d\xdc\x26\x45\xc3\x0d\x14\x0d\x6b\x8b\x02\xd3\xdf\xa8\x44\xd1\xe4\xb9\xdc\x48\xd1\xa2\xc7\xd5\x13\x44\xcb\x16\x6d\xe6\xae\xe9\x09\xd2\xe7\x82\x4c\x59\x86\x4c\xd3\x36\x64\x8a\x51\xe8\x51\x90\x5a\xc8\x34\xb5\x5c\x31\xf5\xc2\x4d\x95\x1d\xc9\x6a\x79\x7c\x6a\xe1\xbf\x56\x1b\x1a\x38\xd7\xbd\xe0\x69\x74\x1a\xbd\x23\x97\xe9\xa8\x94\x07\x1d\x10\x2f\xe7\x7f\x26\xc9\xcd\xb1\xf9\xb7\x47\xa0\x75\x4a\xa8\x39\x3f\x96\x73\xc2\x42\x53\x40\xae\xcf\xec\x42\xc8\x46\x06\x6d\x29\x90\xc5\xab\x20\x0b\xab\x6b\x08\x43\x94\x96\x05\xfe\xe9\x9a\x53\x3c\xc6\x23\x72\x28\xa8\x08\x75\xd4\xe3\x26\xe0\x52\x14\x69\x7f\x6c\x17\x01\x4c\xcc\xe2\x34\x2e\x0f\x58\x30\x4e\x6b\x25\x76\x71\x6c\x05\x83\x2d\x0f\x50\x85\xea\xc5\x82\x04\x87\xfe\x18\x47\x23\x92\x90\x86\x77\x97\x7b\xc3\xec\x95\x4f\xdf\xdc\xd1\xf1\x89\x42\x38\xbc\x4b\x2a\x81\x70\xab\x78\x33\xdd\x09\xbc\xe9\x97\xf0\xa6\xff\xa0\x78\x33\xe9\xf0\xe6\x77\x64\x97\x32\x6c\xc0\x9b\xc3\x15\x2a\x01\xda\xae\x12\x88\x2b\x2a\x81\xf8\xf1\x54\x02\x3b\x6e\x9a\x82\x66\xe8\x12\x8d\xd1\x14\x8d\xd0\x59\xbb\x71\x7a\x22\x18\x27\x0e\x44\x13\x0f\xf0\xe7\x02\x52\xfd\x35\xb1\x6d\xe5\xe9\x4a\xbd\xa4\x25\xb6\x6d\xb8\x49\x6c\xdb\xbb\x58\x9c\x63\x10\x6f\x96\x5a\x54\xbf\x33\xc4\x50\x5c\x35\x2c\x1f\xda\x09\x4a\x88\xf8\xc0\x02\x12\x36\xc6\x84\x84\xf3\x22\xbc\xa9\x5c\x85\x74\x82\xf9\xec\x2f\xa4\x29\x6a\xab\x5d\xf0\x22\x4c\x47\x6b\x4a\x71\x22\xfb\x4a\xc3\xa6\x36\xd5\x04\x6a\x73\xf6\x86\x98\x37\x47\x8d\xe6\xec\x47\xb6\x39\xfb\x91\xf2\xf1\xcc\xb7\x03\xb9\xf0\x5c\x09\x98\x32\x61\xaa\xa3\xd8\xac\xab\x15\x0f\x7b\x4a\x28\xab\x26\xcb\x8d\x09\xb9\x7e\x13\xea\x57\xe7\xda\x33\x03\x1a\xdd\x31\xb9\x5a\xf1\x79\xac\x5b\xc0\x91\xf3\x0e\x0b\xec\x93\x48\x10\xee\x40\x4f\xb5\xeb\xab\x42\xd1\xc1\x41\xa9\x9c\xac\x54\x9b\x77\x40\xdd\x97\xec\x77\x96\xc4\x42\xef\xc7\xa5\x67\x2e\x66\x91\xff\x99\x4e\x88\xdc\x86\x5c\x9a\xbc\x53\x71\x0a\x83\xc5\x22\xdf\xf4\xd8\x62\xc1\xb2\xb1\x2e\x16\xc4\x0c\x2a\x8d\x42\x86\x83\x4f\xc4\x67\x3c\x00\x2a\x3d\x27\x5c\xe6\xef\x41\x8e\xf8\x2c\x5a\x65\xa1\x54\x99\x1e\x53\x4f\xc3\x0c\x21\xcb\x93\x7c\x48\xa3\xe0\x4d\x18\xfe\x3c\xb3\xe6\xe3\xe1\xa3\x51\xce\x97\x88\x7b\xf3\xc0\xef\x11\x14\x25\x3d\x91\xeb\x23\xf3\x47\xb3\xbc\x8f\x0a\xa0\xa8\x9c\x99\xf9\x25\xa4\x92\xb0\x7a\x3a\xfd\x21\xb2\x06\xf9\xcf\x94\xf0\x59\xe3\xf8\x78\x79\x7c\x3f\xcf\xe4\x3a\x5f\x1d\xa8\xb7\x36\xb0\xdf\x37\x0e\xec\xf7\xf6\xc0\x7e\xaf\x06\xc6\xd4\xc0\x84\x1c\x58\x84\x68\xd0\x23\xf5\xd1\xf1\x62\x74\xcc\x8c\x2e\xbb\x84\x98\x1a\x1d\x6f\x1e\xdd\x8a\x77\xc8\xac\xa8\xa6\x6a\x37\xdd\x6c\x65\xe8\xb2\x9b\xad\x0d\xa3\x78\x58\x13\x69\x80\x26\x6f\x33\x72\x03\x75\x32\x51\x92\x3b\x6a\x40\x44\x3c\xa2\x93\xd3\x22\xe2\x26\x78\x4a\x4a\x19\x84\x27\x6c\xda\x9a\x90\x57\xeb\x60\x50\xe4\x91\xf2\x74\x2a\x2f\x8f\x40\xc7\x98\xd6\xc3\x30\x29\x5d\xe4\xb7\xa7\x32\x6f\x3b\x72\x4f\x65\x79\x06\x18\xfd\x65\x9a\x33\x39\x82\xaa\xf4\xe6\x9f\x4a\xd4\xcf\xae\x16\x9b\x2a\x80\x03\xe5\x0f\x5f\xea\x45\xa3\x63\x4d\x4e\x25\x1b\x3e\x70\x52\xca\x9c\x4b\xa3\x8c\x2c\xb6\xa5\x47\xb6\xab\x68\xdb\xfa\xb4\xbc\x22\x6d\x70\x23\x49\xb5\x1b\xc9\xb0\xa2\x14\x9a\x79\xd9\xe9\x73\xe9\xf5\xa3\x01\x1a\x7b\xf7\x51\xe0\xa0\x91\x37\x5f\x22\xdb\xc8\x60\xdc\x62\x64\x30\xea\x93\x81\x37\x36\x46\x06\xa3\xb2\x91\x81\xfd\x13\x8d\xaa\x46\x06\xa3\x56\x23\x83\xd1\x62\x31\xaa\x1a\x19\x8c\xca\x6c\x67\xe4\x5d\x6e\x62\x64\x60\x33\x17\x01\x24\xf2\x22\x70\xb1\x20\x4b\x88\x46\x10\x4d\xad\x8d\x61\x54\x31\x01\x18\x19\x23\x83\xd2\xf5\xe3\x51\x9d\x64\x4e\x73\x23\x83\xd1\x6a\x23\x83\x6a\x0b\xcd\x60\x52\x76\x71\x24\x87\xa7\x8d\x0c\x98\x37\x42\xdc\x96\x4b\x9d\x6d\x2c\xc0\xd0\x56\x94\xcd\xa6\x99\x8d\xf2\x0e\xeb\xfe\x44\xae\x44\x6d\x87\xd9\x45\xba\xed\x22\xdd\x76\x91\x6e\x1f\x51\x60\xe0\x57\x05\x06\xfe\x8e\x44\xba\x7d\x54\x05\x55\x35\xc2\xee\x6a\x59\xd7\x77\x2c\x2d\x48\x4a\x6e\xed\x4f\x99\xfc\xe7\xf1\x66\x13\x64\x08\xbf\x50\x31\x66\x7d\x2f\x04\x89\x45\xf8\x93\x42\xb2\x6f\x82\xcc\x26\x10\xf9\xab\xb5\x52\xc2\x4b\xac\xe8\xa5\x6b\x08\xb8\x7e\xc6\x91\xa7\xdf\xc6\x5c\x3c\xb7\xf1\x39\xff\x74\xfa\xe1\xcd\xa7\x7f\x7c\xf9\xcb\xc9\x3f\xec\xfc\xee\x9b\xf2\x3d\x55\xb4\x11\xbf\x16\xbc\x94\xa0\x26\x24\x9b\x61\x46\x0a\x44\x43\x24\x4f\x81\x52\x88\x92\x25\x28\x0c\x0d\x2d\x50\x91\x6c\x0e\x2a\x7c\xc6\x78\x40\x23\x85\x6e\xef\x86\x2d\xb4\x5b\x88\x60\x13\xa6\x12\xb5\x36\x26\x1e\xa5\xc6\xc3\xb7\xc1\x0f\xc3\x82\x1f\xcc\xfa\xb0\xd9\x53\x85\x1f\x74\xab\xf0\x03\xef\x04\xfc\x28\x85\x8c\x6c\x33\x32\xb8\x23\xfc\x48\x3b\xf8\xf1\x1d\x05\xda\xf7\x1b\xe0\x87\xbf\x02\x7e\xb0\xef\x1f\x7e\x3c\x56\x94\xfd\x87\x81\x1f\x43\xaf\xec\x1e\x6b\xe5\x5a\x8b\x9f\x0d\x32\x09\x8b\x60\xa2\x39\x32\xd1\xc1\x6f\xd2\xb6\x00\xa2\x34\x0f\x20\xca\xd6\x21\x13\x7f\x73\xd5\x80\x41\x26\xd6\x21\x7c\x3b\xf1\xef\x3d\xa3\xda\xcf\x97\x28\xd2\xc2\xdf\xba\x64\x54\x14\x92\xd1\xc8\x48\x46\xb3\x4b\x48\x49\x7c\x3d\x71\x0b\xb9\x6f\xd4\x20\xd7\xfe\xa8\x02\x7a\x34\x8b\x7e\x6d\x20\xd5\x30\x13\x40\x16\xaa\x4a\xf5\x72\x51\x78\xe1\x55\x53\x60\x2c\x81\x1c\x3d\x35\x0e\x94\x93\x03\x22\x4f\xab\x4d\x21\x8a\xdc\x09\x11\xd8\x2b\x15\x95\x57\x1c\x88\xa2\xdc\xd0\x08\x97\x40\x98\x16\xdc\x61\x20\x24\x1c\xf3\x5b\x40\xd8\xba\xb8\xea\x16\x08\x0b\xfc\xdb\x80\xaf\x55\x51\x5b\xf7\x6c\x24\x60\x11\xfc\x27\x0a\xa6\x4a\x40\x62\xd3\x14\xeb\xa4\x25\xfb\x79\x13\x40\xd0\x3d\x5a\x2c\x5e\x80\x95\x39\xd6\x6d\x8d\x53\xe4\xf5\x07\x88\x4b\xb8\xc4\xbc\x17\xaf\x10\xcd\x76\x5f\x79\xfc\x67\xb8\x0c\xa3\xd0\x23\x0d\x79\xbc\x5f\xbf\x00\xdc\x03\xd8\x0b\xdd\x88\x7c\x15\x00\x42\x37\x60\x91\x92\xdc\xeb\x18\xaf\x00\x6b\x31\x26\x44\xf2\xdc\x8c\xcc\xd7\xae\xb6\xdf\xd7\xb2\x49\xf8\xda\xe0\x81\x14\xce\x99\xec\x02\xf5\xd2\xe5\x90\x46\x38\x0c\x67\x73\x85\x3f\x16\x0b\x9d\x0c\x3c\x74\x75\x97\x17\x8b\xec\x2f\x00\xf3\x92\x74\x08\x98\xd9\xcf\xe9\xb2\x08\x26\xab\x66\xea\xee\x69\xe3\x53\xf0\x5c\xd2\xc6\xeb\x91\xd6\xe6\x6b\xf3\xc4\xf1\x4a\x7f\x91\xfa\x22\xe5\xe4\xf1\xb2\xc7\x1b\x31\xd1\x37\xc8\x1e\xef\xef\x92\xc1\x59\xb2\x55\x02\x37\xdc\x09\x02\x57\x0a\x85\x03\xe2\x07\x25\x70\x41\x47\xe0\x56\x12\xb8\xcb\x2a\x81\xbb\xdc\x26\x81\x9b\x34\x10\xb8\xc9\x0a\x02\x87\xdb\x09\xdc\xac\x42\xa4\x66\x8f\x67\x70\x76\x69\x81\xa3\xcb\x9d\xe3\x70\xc6\xd4\x0c\x99\x9c\xea\xad\x06\x67\x44\x08\x1a\x8d\x12\x15\xe7\xf4\xb9\x50\xbb\x38\xa3\x76\xb8\x4c\xed\xa8\x17\x00\x0c\x6d\x78\x9c\x59\x99\x25\x66\xe9\x3f\xb8\x95\x99\x0f\x66\x1b\x5a\x99\x65\x2f\x0a\x31\x34\x2b\x1b\x9a\x09\x0f\xdf\x9a\x4d\x06\x7e\x8d\x45\xae\xc9\x70\xb5\x8e\xbd\xcd\x97\x9b\x9a\xed\x68\x43\x2d\x9d\x53\x37\xf7\xbb\x75\xf5\x33\xc0\xd1\xfd\xd6\xdb\x57\x0e\xc4\x74\x0f\xcc\x14\xe4\x2e\xb5\x92\x95\x16\x94\x2c\xd2\xd6\x5e\x0e\x5c\xd6\x58\x5f\x36\x92\xb9\x2c\xd0\xf8\x88\x24\x71\x45\x9e\x5d\x5d\xc2\xac\xe1\x73\x3c\x92\x00\x4b\xec\x0f\x59\x1a\x59\x5b\x05\x77\x13\x81\x45\x9a\x78\xce\x8f\x47\x3f\x3a\xe8\x9c\xb3\x09\x4d\x88\xcb\x89\x02\xfc\x73\xe5\x96\x92\xf4\xfa\x7c\x60\x4d\xcc\x88\x88\x37\xbe\xa0\x4d\x76\x33\x85\x95\x96\x5a\x6a\xdc\x2b\x8d\x39\x6b\x34\x6b\x45\x1e\x21\x7d\xb2\x58\x70\xb7\x98\x6b\x20\xdf\x2a\x44\x12\x84\x59\x94\x18\xc0\x41\x93\x6d\x8b\x5e\xc3\x92\x1b\xfd\x00\x11\xf3\x44\xff\x68\x80\xa8\x27\xfa\xaf\xf2\xa5\x19\xd9\x55\x33\x44\xeb\xe1\x5e\x33\x13\xc2\x62\x42\x29\x72\x86\x94\x27\xc2\x40\x71\x6b\xae\x9a\xdf\x19\x29\xde\x19\xca\x63\xa9\xe6\x0a\x14\x82\x79\xcb\x6c\x55\x96\x66\xb6\x30\x4c\x4a\x61\x35\x0f\x9a\x93\x0f\x1b\x38\xf9\x50\x73\x72\x6c\x73\x72\x34\xf6\x00\xf7\xa8\x6d\x5c\x33\xf5\xac\x8f\x6e\xa4\xec\x6b\xce\xee\x67\x5f\x73\x55\xb5\xaf\x39\x6b\xb1\xaf\xb9\xea\x93\x81\x77\x66\xec\x6b\xae\xca\xf6\x35\xf6\x4f\x74\x55\xb5\xaf\xb9\x6a\xb5\xaf\xb9\x5a\x2c\xae\xaa\xf6\x35\x57\x65\x70\x77\xe5\x8d\x6e\x6f\x5f\x23\x0f\x9a\xcc\xbe\xe6\x0a\xa2\x1b\x4b\xa8\x74\x55\xb1\x7e\xb9\x32\xf6\x35\xa5\xeb\xc7\x57\x75\x4c\x7d\x93\xdb\xd7\x5c\xad\xb6\xaf\xa9\xb6\xd0\x7c\x76\xca\x2e\x5e\xc9\xe1\x65\xf6\x35\x57\x65\xfb\x9a\x2f\xb7\x90\xc2\xd0\xc4\x67\x53\xc2\x67\x87\xfe\x18\xd3\xa8\x13\xc9\xdc\x5d\x24\xb3\x2b\x5c\xae\x0b\x6a\x9b\x27\xae\xb1\x74\x1a\x16\xd1\x7a\x51\x21\x5a\x07\x07\x19\xaf\x18\x11\x71\x6c\xfd\xdd\x62\xbc\x5b\xfe\x2a\xe4\x4c\xbc\x7e\x51\x13\xfd\x8c\x71\x62\xa5\xdb\x31\x02\x20\x24\x79\x84\x41\xa0\x80\x78\x0a\x17\xbd\x86\xaf\x2d\x19\x1e\x12\x0a\x48\xf0\x8c\x07\xad\x4b\xde\xc3\xe5\x03\x99\xa1\x81\xea\xbf\xfa\xbf\x6e\x2f\x82\x3d\xa6\xb7\xb0\xa5\x66\xa4\x28\x5a\x2c\x6a\xb9\x8d\xf3\x49\x1a\x3e\x28\xe5\x8d\x3b\xca\xbb\x92\xf2\xce\xaa\x94\x77\xb6\x4d\xca\x1b\x34\x50\xde\xe0\x6e\x94\x77\x52\xa1\xbc\x93\xc7\xa3\xbc\x33\xeb\xf0\x99\xed\x1c\xe5\xcd\xfd\xab\x24\xe9\x6d\xa7\xbc\x65\x9d\xca\x73\xe2\xbd\xc3\x56\xde\x1b\xb7\xf0\xde\x74\x5b\xbc\x37\x04\x93\xcd\x78\x6f\xe0\x2b\xca\x3b\x79\x00\xca\x5b\x81\x6e\xb7\x76\x32\x51\x5c\x23\xf0\x13\xd7\x38\xf3\x80\xe2\xa8\xd0\xe2\x6f\x8f\x2f\x16\x25\x4f\xa2\x0f\x24\x19\x9f\x44\xf2\x25\x04\x0e\x3c\x4e\xc0\x0c\xe0\xe2\x35\x42\x54\x6a\x59\x6f\x56\x8d\x9b\x4e\x53\x9e\x0d\xfd\x2e\x4a\x4c\x4a\x33\x4e\xd7\x22\x60\x86\xa1\x3a\x10\x45\x6b\x8b\x06\x44\x60\x1a\x3a\xd0\x15\x9c\x4e\x00\xdc\x4b\x6e\xa8\x6c\x54\xc0\xb9\x8f\x13\xe2\xfc\xe1\xe8\xc8\xe9\x59\xfa\x5f\x43\xe0\x3d\x7e\x70\x20\x91\x59\x90\xfc\x8d\x8a\x31\x70\xde\xb2\x28\x22\xbe\xd0\xeb\xfd\x92\xec\x13\x3d\xfa\x7d\x6a\x29\x22\xd2\x84\x28\xde\xb6\x4f\xa2\x20\x66\x34\x12\x0e\xcc\xbc\xb6\x92\xfa\xbc\xa1\x17\xaf\x20\xdc\x33\x9f\x7b\x4f\x7f\x6d\xf2\xfc\x85\xbd\x82\x71\x27\x2c\xd4\xbe\x29\x3a\xc0\x73\x9d\xf2\xf9\x4d\x94\xef\xb2\x46\xf9\xc6\x9e\x5e\x6f\x53\xc5\xf6\x46\xf7\x63\x7b\x37\x55\xb6\x37\x6a\x61\x7b\x37\x92\xed\x8d\x0c\xdb\xbb\x29\xb3\x3d\xfb\x27\xba\xa9\xb2\xbd\x9b\x56\xb6\x77\xb3\x58\xdc\x54\xd9\xde\x4d\x19\xfe\xdd\x78\xd3\xdb\xb3\x3d\xb9\xc7\x66\x6c\xef\x06\xa2\x33\x8b\xed\xdd\x54\xb8\xd8\x8d\x61\x7b\xa5\xeb\xc7\x37\x75\xd4\x7d\x96\xb3\xbd\x9b\xd5\x6c\xaf\xda\x42\xf3\xb1\x21\xbb\x78\x23\x87\x97\xb1\xbd\x9b\x32\xdb\xbb\xda\x9c\xed\xe5\x61\x14\x0f\x63\xc2\x27\x54\x6d\xe5\x87\x63\x21\x62\x15\x9c\xac\x3d\xdb\xc9\x46\xf4\x2f\xdf\x6e\xbb\x1c\xe8\x5d\x0e\xf4\x2e\x07\x7a\x97\x03\xfd\xfb\x36\x69\x7c\x32\x39\xd0\x9f\x38\xc8\xa7\x8d\x76\x8b\x0f\x93\xf8\xfc\x2e\x76\x8b\x6b\xcf\xd0\x75\x8e\xd0\x99\x96\xe1\xee\x11\x0a\x1a\x3c\x2e\x54\x53\xbf\x70\x3c\x92\xe5\xee\xed\x49\xbd\x6f\xf9\x4c\x67\x39\xdb\x45\x43\xce\x76\x61\x72\xb6\x37\xda\x02\xae\x4b\xde\xbe\x06\x97\x74\x58\xe4\xb6\x58\xe4\x89\x66\x71\x67\x5b\xc9\xe2\xce\x37\xc9\xe2\x4e\xc1\x37\xcd\xe2\xce\x1f\x27\x8b\x3b\x7d\xa4\xdc\x00\x78\xab\x10\x3a\xdc\x09\x08\x5d\x72\x4b\x6d\xc3\x21\x77\x84\xd0\x7e\x07\xa1\x57\x42\xe8\x61\x15\x42\x0f\xb7\x09\xa1\x93\x06\x08\x9d\xec\x36\x84\x1e\x5a\x87\x6b\x8b\x72\xe8\x3b\x86\xd0\xcf\xc7\xf5\x27\x6d\x70\x4a\xd6\x72\x72\xbf\xcd\x29\x19\xe7\x4e\xc9\x74\x03\xa7\xe4\x07\x80\xd0\xdf\x2b\x6c\x66\x80\x81\xf9\x12\x11\x9d\x42\xf9\xd7\xcf\x9f\xcf\x7b\xed\x15\xb4\x93\x03\x07\x11\x57\x3e\xbc\x58\xcc\x97\x25\xab\xa0\x3b\x60\xf1\xb0\x41\x20\x1c\x6a\x81\x70\x9b\x73\xf4\x2d\xfc\x72\xac\xcc\x72\xf7\x8a\xbb\x52\xd4\xd3\x45\x5f\x01\x95\x2c\xca\xf2\xfc\x93\xab\x39\xf4\x48\x9f\x0e\x00\x86\x28\xf5\x42\xa3\x89\xd7\xa7\x98\x9f\xf7\x53\xad\xed\x08\xf8\x70\x19\x2a\xc7\x98\x63\x01\xd2\xba\xae\x20\x35\x36\x71\x5c\x1e\x48\x36\xb2\xab\x3b\x0a\x55\x02\x5a\xe5\x5f\x49\xae\xfb\x21\x37\x99\x59\x9e\x1d\xb3\x0e\x51\xfd\x20\xf6\x48\xb6\x23\xa0\xa8\x94\x34\x9f\xc0\x39\x03\x58\xee\x2b\x92\x9e\x23\x27\x22\x5f\x85\x83\x48\xd5\x4f\xb9\x54\x46\xed\xa2\xaa\x50\x68\xce\x31\xfd\x75\x54\x41\xe2\x13\xe5\x36\x5d\x20\xdf\xdc\x11\xc6\x0a\x6f\xf2\x3d\xda\xe2\x4c\x1e\xdb\x16\xa7\xcb\xc3\xfd\x78\x4c\x61\x52\x65\x0a\x93\xef\x29\x0f\xf7\x8a\xf0\x45\x41\x53\x3e\xec\xc7\xb1\xc5\x29\x27\x96\xfd\x76\x64\xc1\x36\x06\xfa\x96\x62\x8e\x07\xb2\x01\x7a\x36\x24\x25\xcf\xb5\x3d\xb5\x23\x27\x31\x14\xa3\x4b\x34\xf6\x86\x60\x6a\x61\x8d\x69\x35\x5c\xf2\xf4\xc1\x0d\x7a\x66\x20\x00\xc4\x1b\xdb\x06\x3d\xe3\x46\x83\x9e\x09\x8e\xf0\x88\x04\x3f\xcf\xde\x7e\x7a\x97\x28\xeb\x0e\xdb\xac\x67\x7a\xeb\x88\x4d\x05\x6e\x7e\xa0\xb8\x4d\xeb\xc2\xb1\x6a\x27\x83\x7d\xe2\xe6\xb1\x85\x91\x0f\x26\x60\x5a\xb2\xec\xc9\x6a\x31\xdb\x1e\x0e\xb3\x38\xd5\x56\x7d\x0f\x2e\xa3\xc5\x9b\xc8\x68\x67\xdf\x56\x46\x8b\xbf\xa9\x8c\x16\xcc\xdf\xa8\x7a\x7b\x0e\x0e\x43\x76\xe3\x48\x22\x6a\x45\x69\x4d\x3e\x94\x17\xdf\x4a\xaf\x92\xd2\x42\x5d\x2c\x40\xfd\x62\x35\x10\x6d\x6b\x48\x6b\xc1\xf4\xc7\x04\xdd\x84\x4d\x48\x63\x90\x59\xe2\x9e\x96\x7a\xa7\x8e\xde\x7a\x93\x6d\x3c\x18\x5c\x7a\x14\x70\x32\x22\x91\xa6\x77\x9f\xd2\x48\xd0\x09\x71\x27\x98\x5f\x17\xed\xed\x13\x50\xf8\x1d\xd4\x99\x4c\xc3\xf3\x37\x1c\xc7\xe5\xfe\x2a\x4c\xf8\x1a\x1a\xf3\x30\xb9\xcd\x91\xa9\x47\x54\x2c\x02\x6d\x2a\xb6\x7f\xd4\xcb\xc7\x24\xaf\x7a\x3f\x34\x7c\x1f\x79\xf7\x6b\x66\x6f\x1c\xee\xa9\x5a\x7e\xc8\x6a\x89\x3c\xe2\x26\x24\x12\xa8\xe4\xb7\xa5\xdf\xb3\x9b\xc5\xeb\xb0\x0d\xc8\x22\xe4\x9c\xe7\xd2\x84\x2c\x55\xa5\x8b\x2f\x79\x1a\x0b\xe0\x98\x6d\x43\x72\x31\xd5\xce\x1f\x7a\xca\xbe\x8d\x44\x81\x53\xf4\x3b\x11\x2c\x06\x50\xee\xb4\x3a\xee\x1a\x54\xaf\xa3\xe1\xb5\x5d\xb6\x48\x7b\x60\xc5\xb8\x50\xcb\x00\xf2\xb7\x15\x6f\xfa\xb6\xb4\x93\x84\x02\x51\x92\x0a\x6f\xff\x9d\x31\x0f\x37\xc6\xd0\x56\xb1\xb3\x4d\xcc\x6c\xaa\xe2\xc1\x44\x59\x46\x59\x8e\x34\x13\xec\xfd\xfb\x05\x4b\xb9\x4f\xe4\xaa\xdf\xf7\xbc\x7d\xe7\xdf\xb3\x9d\x5f\xa0\x7f\x77\xe4\x09\xf9\x8e\x24\x82\x46\x58\x76\xab\x28\x04\xab\xa5\x2a\xb5\xfc\x47\xeb\xa3\xff\xe1\xfc\x3b\x5c\xa2\xbc\x8f\xac\x88\x46\x43\x4d\x34\x9a\xec\x12\xa2\x2a\x1a\x0d\xd3\xd1\x68\xea\x8b\x61\x23\x0f\x47\x0a\xcd\x92\xf9\xf1\x2e\x4b\xa6\x84\xa5\xe2\xd6\x65\xa3\x23\x40\x57\xa2\xf9\x31\x75\x0d\x31\x88\xa6\x2d\x02\xab\xcb\xcd\x05\x56\xd7\xd3\xfb\x45\xf1\xa3\xc9\x2f\x2c\x54\xc6\x6f\x75\x21\xd6\xf5\xb4\x0b\xdf\xd7\x85\xef\xeb\xc2\xf7\x75\xe1\xfb\xba\xf0\x7d\x8f\x18\xbe\xef\xb9\x70\xe0\xb0\x48\x1d\x94\x73\x60\x86\x7c\x94\x78\x69\x2d\x5d\x90\x79\x1b\x34\xcb\x17\x84\x92\x75\x8a\xba\x21\x02\xec\x76\x5c\xf4\x7a\x7a\x6b\x12\xca\x1b\x49\xe8\x1a\x97\x94\x5c\x84\x7a\xe7\xbc\x27\x72\x7b\x28\x07\x79\xcc\x72\xa0\x53\xef\xcf\x17\x67\x1f\x5d\x1d\xa1\x8b\x0e\x67\xa0\xcf\x91\x40\x64\x00\x11\xbe\x45\xe2\x0d\x5a\x64\xbf\x5d\x2c\x80\x79\xd2\xbc\xfc\xf9\x5f\xc8\xac\x47\x50\x11\xa9\xaf\x27\x50\xce\xa5\x7b\x5c\x22\x99\xaa\xba\x06\xeb\xe8\x0c\xa1\x37\xa7\x41\x8f\xa0\x2c\x63\x0b\xaf\x87\x24\xb4\x40\x60\x58\x01\x81\xb7\x4a\xd0\x12\x36\x04\x23\xdc\xcc\x45\x08\xdd\xe7\xb5\x38\x2f\x55\x3e\xfa\x83\x03\x40\x3c\xc7\xd1\x6b\x9a\x56\x46\x1d\xa1\x84\xc4\x58\xa1\xa0\x9e\xf3\xd2\x59\x39\x07\x55\x20\xbc\x61\x28\x46\xda\x14\x38\x31\xfb\x30\x56\x29\x7e\x24\x5e\x2a\x45\x49\x94\x8b\x1f\xea\xc8\x0e\x35\x37\xa6\x48\x6f\x47\x3f\x1e\xfd\xe8\xd8\x4f\x45\x2b\x5d\x99\xb2\xa5\x5f\x5d\xa5\x7a\x8d\x52\x8f\xd7\x17\x28\xaf\x67\xdf\xd9\xa3\x07\x07\xb4\x9c\xd1\x05\x2e\xcd\xce\xd7\x12\xd0\x91\x41\xe4\xeb\x80\x8e\xbe\xca\xc4\xd2\x88\xc3\x87\x9b\xe3\xf0\x09\x11\x9c\xfa\xc9\x5d\xc1\x38\x89\x1a\xb0\xb6\x59\x87\x5a\x6f\x8a\x42\x94\xee\x95\xad\x9b\x0a\x95\xd1\xd3\x44\xde\xc9\x2e\x05\x16\x18\x6e\x95\x26\xc4\x3b\x41\x13\x82\x8a\x32\x33\xf8\x2e\x95\x99\xd3\xc7\x56\x66\x96\xa2\xa9\xb5\xa9\x83\xee\xc8\xa6\x66\x1d\x9b\x5a\xc9\xa6\xa6\x55\x36\x35\xdd\x26\x9b\xba\x6c\x60\x53\x97\x2b\xd8\x94\xdf\xce\xa6\xc6\x15\x56\x33\x7e\x3c\x65\xe6\xd4\x3a\x7c\xa6\x8f\xa1\xcc\x1c\x3d\x92\xcd\xf6\x59\x61\xca\x94\xc1\xeb\xc2\xb2\xce\x36\xcf\xe1\x2d\xce\xc1\xb4\x4f\x06\x1e\x37\xce\xc1\xb4\xec\x1c\x6c\xff\x44\xb4\xea\x1c\x4c\x5b\x9d\x83\xe9\x62\x41\xab\xce\xc1\xb4\xbc\x85\x53\x2f\xda\xc4\x39\x58\x9d\xb4\xb9\x17\x91\x9e\xe2\xc5\x22\x5a\x4a\x04\x89\x98\x05\x7a\x69\xc5\x75\x97\x1a\xe7\xe0\xd2\xf5\x63\x5a\x3f\x39\x59\xee\x1c\x4c\x57\x3b\x07\x57\x5b\x68\x7f\xb5\x54\x0d\x4f\x39\x07\xd3\x07\xa2\xdc\x37\xde\x9c\x4a\x26\x33\xc5\x61\x4f\xd1\x2a\x12\x4d\x21\x70\xde\x9e\x7d\xbc\xf8\xed\xfd\x97\x0f\x27\x9f\x3f\x9d\xbe\xbd\xf8\x72\x7e\xf6\xfe\xfd\x97\xd3\x8f\x9f\x4f\x3e\xfd\xf5\xcd\x7b\x07\x2e\x16\xaf\xc8\x8f\x4b\x74\xe5\x01\xde\x12\xaa\x22\xa5\x87\xfa\x1d\x3a\x10\xb1\x96\x32\x7e\x48\x49\x24\x5e\x2a\xa3\x49\x88\xd2\x67\xc3\xfd\x27\x19\xf7\xa7\xd5\xf8\xfc\x33\x40\xa1\x9d\x8d\x3f\xd3\x7d\x9b\xbc\xd8\xf4\xc1\x75\xdf\x09\x18\x03\x22\x29\x56\xa1\xfb\x66\x8d\xba\x6f\x7f\x38\x72\x10\x46\x63\x15\xcc\x42\x3d\x25\x2f\xaa\x17\xe8\xa0\xd0\x5c\x1f\x99\xeb\x8a\x03\x39\x48\x2f\x54\x4b\x45\x4e\x2d\xfb\x61\xb9\xe4\x57\x66\xf6\xdd\x0b\xc0\x14\xd0\x92\xea\x4d\x3f\xb3\x22\xdc\xc4\x5e\x61\xef\xe8\xfa\xc3\x91\xe2\x64\x10\x45\x9e\x70\x0d\x65\x91\xbb\xef\x94\x06\x84\x7f\x61\xb1\x6c\x31\x59\x2c\xe6\xcb\xbd\xc8\xbe\xfd\x75\xf6\xc5\x84\x7e\x28\x3f\x56\x5c\x47\x91\x3b\x24\xc2\x1f\x17\x0b\xd6\xde\x9f\x89\xab\xa7\x45\x97\xf9\x1b\x15\xe3\xcf\xec\x9a\x44\xc0\x79\x39\x7d\xa5\x4c\x65\x79\x84\xc3\x97\x29\xcd\x58\xd4\xa1\xaa\xdb\xc9\x55\x49\x2a\x9b\xc0\x9e\x01\xb8\xb5\x7e\x2f\x16\x4e\xcc\xd9\x84\x88\x31\x49\x13\x47\xe1\x0c\x35\xda\xec\xbe\x77\x43\xa3\x80\xa9\xe8\x0a\x49\x1a\x2a\xf6\xa8\x6b\x38\x37\x05\x00\x97\xf5\x6b\x24\xc1\x4c\x86\x4f\xf5\xbe\x74\xf8\x48\xfd\xdd\x98\x56\xf7\xb3\x5a\x55\x10\xc9\x62\x93\x0a\x7a\xfb\x79\x7f\x19\x84\x72\x99\x27\x2c\x24\xba\x1e\x50\x54\x69\x65\x11\x1e\xd2\x28\x30\xaa\xc4\x8b\x74\x32\xc1\xbc\x2e\x58\xca\xf9\x0f\x1d\xda\x75\x98\x69\xad\x04\xa9\xb4\x0a\x98\x44\xc8\xfd\xd2\x3c\x64\xbb\xcc\x27\xe2\x93\x48\x98\x26\x2f\x08\xa7\x24\xd1\xaa\x49\x44\xd0\x7c\x69\x64\x0a\xab\x1f\x12\x58\x94\x9e\x19\x34\x45\xb4\x64\xed\x59\x58\xe7\x13\x22\x70\xef\x06\x25\xaa\xf5\x1e\xe9\x1f\x0d\x50\x22\x2b\xed\x91\xfe\xab\x81\x92\x0e\x24\x4b\xdb\x50\x5c\xce\xd5\x6f\x71\x22\x38\xc1\x93\x95\x93\x55\xd6\xfa\xab\xd9\x38\x6e\x9f\xa7\x5e\x79\xac\xa9\x69\xa1\x61\xb0\xfa\x4d\xcc\xeb\xd1\x48\x6d\x24\xa3\xd2\x4a\xdc\xe8\xd8\x97\x76\xcf\xdf\xb1\x9b\x68\xdb\x7d\x0f\xf2\x36\x1e\xa4\xf7\x03\x78\x70\x10\x37\x98\xda\xc7\xda\xd4\x9e\x96\x62\xaf\x60\xef\x0c\x00\xea\xa5\x76\xf4\x15\xbd\x3d\xf6\xf9\x00\xdd\x27\xee\x0a\x44\xa1\x77\x66\x6f\x79\xc5\x0e\xdb\x67\xf7\xad\x9a\xde\x31\x90\x48\xa4\xd2\x98\x74\x0e\xba\x5d\xb0\x90\x2e\x58\xc8\x0e\x50\xfe\x2e\x58\x48\x17\x2c\xe4\x59\x90\xa8\xef\x2d\x58\x88\x3a\x27\x4b\x40\xe8\xbd\x09\xb4\xf5\x4d\xb3\x9a\x71\x32\xe4\x24\x19\xab\x94\x4a\x2b\xb2\x98\xe9\xbe\xb5\xe6\x32\xdb\x7e\x1c\x10\x6d\x80\x77\x4f\xc7\x43\x53\x49\xe7\x75\xb8\x55\xd0\xd1\xe5\x7c\xef\x72\xbe\x77\x39\xdf\xbb\x9c\xef\x5d\xce\xf7\x6f\x9b\xf3\xfd\xee\x8e\x40\x23\x22\x2e\xc2\x74\xb4\xe6\xc9\x8b\xf7\xbf\xfd\xa9\xfa\xd8\x26\x40\x47\x1f\xba\xf9\x53\x9c\x4c\x58\x53\x56\x98\xa6\x1c\x3c\x38\xc0\xb1\x20\xfc\x17\xf9\x86\x4d\x3d\xd0\xe5\xb1\x0f\x1a\x0c\xaf\xf3\xd5\xcc\xc9\x3f\x53\x92\x88\x5f\x18\x7f\xa7\xfc\x97\x32\xd3\x27\x55\x6c\x09\x51\x3d\x59\x8e\x3c\x20\x11\x41\x79\x13\x1b\xe4\x0b\xba\x67\xc4\x09\x24\x2c\xe5\x58\xfe\x04\x29\xac\x99\x84\xb1\x66\xca\x2e\x21\x05\xcc\x3c\x72\x8b\x24\xb3\xe2\x9b\x64\xcc\xd7\x73\xf6\x32\xa0\x89\x09\x62\xdc\x21\xb4\x0e\xa1\x75\x08\xad\x43\x68\x1d\x42\xeb\x10\x5a\x87\xd0\x76\x11\xa1\xad\xcd\x92\x58\xb5\x59\xef\x0f\x36\xc9\xfb\x97\xeb\x37\x55\x6a\x42\xc7\x2c\x3b\xa7\xd0\xf9\xe2\x54\x8c\x19\xa7\xff\x5a\x91\x04\xaf\xb1\xe5\x6f\x06\x72\x48\xb4\x12\xe3\x90\x68\xfa\x90\x98\xa7\xe4\x0e\xab\x62\x22\xf9\xf6\x7a\xb4\xfd\x76\x9e\x28\x0a\x1a\xee\x92\x8d\x73\xbc\x55\xc8\x16\xec\x04\x64\xeb\x8c\x77\x3b\xe3\xdd\x66\xc8\x96\x74\xc6\xbb\xb7\x30\xde\xed\x8c\x68\x9f\xb6\x11\xed\x99\x07\xda\x8c\x5c\x39\x4b\x05\xe1\x2a\x59\xdb\xda\x3c\xe6\xcf\x47\x7b\x3b\xa9\x69\x6f\x23\xed\xf9\xe5\xcd\x6a\xda\x5b\x6d\x02\x1b\x67\xca\xdb\x87\x36\x81\x1d\x2a\x13\x58\x6c\x9b\xc0\xe2\x46\x13\x58\xf3\x26\x73\x6b\xd7\xa1\xb1\x76\x2d\x52\x2d\xa7\xe6\x4e\x6e\xf2\x1a\x79\x7e\xd9\x13\xf7\xee\x7e\xb5\x9b\x30\x06\xbe\x7d\xc6\xb0\x23\x72\xd2\xb5\x0c\x84\x58\x9e\x5b\x47\x48\x94\xad\xde\xdf\xbc\x7d\x7f\xf1\xe5\xe4\xe3\x9b\x9f\xdf\x9f\xbc\x73\xe0\xb1\x2d\xc0\xce\x2a\x6c\x4e\x24\x1f\xf8\x3d\xa2\xfc\x5c\x97\x4d\x29\xc7\x75\x73\xfd\x41\x53\x06\xb8\xfe\xfc\x13\x49\x54\xf4\x98\x9e\x23\x37\x21\x09\xe5\x1d\xf4\xc6\xf7\x49\x92\xf4\x1c\xf9\x41\x11\x07\xbd\x09\x43\x76\x23\x3f\xa2\x0d\xf9\x59\x61\x4c\xad\xe6\xbd\x94\x4a\x4f\x5d\x35\x6b\xda\xfd\x62\xfe\xf5\x53\xce\x49\x24\x2e\x84\x84\x3d\xe6\x1a\x56\xb5\x7f\xe6\x38\x4a\xa8\xac\x57\x5f\x3f\x8d\x86\x2c\x71\x14\x40\xc9\x5f\x63\x04\xa3\xe6\x43\xac\x14\xcc\xd5\x8d\x31\xc7\x93\xa4\xe9\xbc\x8b\xe0\x5c\xc2\x5d\x2f\x2b\xd3\x8f\x06\xda\xff\x76\x4f\x82\x18\x03\x88\x5b\x86\x60\xba\xfe\x49\xfe\x72\xca\x0e\x6e\x3a\xd3\x7c\x8b\x21\xa8\x6a\x49\xf9\x70\xbb\x34\xf2\xc3\x34\x20\x49\xa1\x9b\x90\x4d\x17\xbe\xc9\x6a\x79\xea\x5b\x1e\x33\x5d\x34\xbf\xe1\x72\x59\xd2\x76\x64\x69\xdd\xed\x14\xf7\xb9\xc2\xa3\xd5\x2c\x35\xab\x7d\xb1\x20\x8b\x85\xf3\xff\xe5\x8c\x1a\xae\xf0\x69\x26\x45\x63\x79\xa2\x7a\x13\xdd\x48\xa8\xf8\xd3\xed\x76\xc9\x8a\xb7\x13\xd3\xa6\x9b\xa4\x97\x89\xe0\xe0\x15\x5c\xe6\x36\xb1\x01\x88\xca\x5e\xc4\x54\x5d\x93\x27\xa8\xbf\x04\x85\x07\x3e\x0a\xbd\x11\x00\xd8\xf3\x4b\x36\xb1\xd9\x7e\x79\x7f\xdb\xd5\xd4\x1b\xd9\xe9\x27\xed\x2d\xb7\x4f\xef\x5b\x39\xb6\x65\x08\x67\x9b\xcb\x10\x18\x0d\xfc\xc3\xcc\x22\xb9\xcb\xa6\xde\x65\x53\xef\xb2\xa9\x7f\x2f\x4e\xcf\x5d\x36\xf5\x67\x2c\x37\xe9\xb2\xa9\x77\xd9\xd4\x37\xca\xa6\x2e\x18\xa7\xb4\xcb\xa2\xfe\x9d\x67\x51\xd7\x31\x64\xf9\xda\x4c\xea\x2d\xfe\xa4\xf5\xcc\xe5\x6b\x9d\x48\xcb\x3e\x81\x05\xdf\x38\xbb\x89\x8c\xc9\x34\x74\x43\xc6\xae\xd3\xd8\xac\xa1\x1c\x05\xf6\x72\xaf\x48\x47\xa1\xc3\x1b\x2a\xc6\x87\x29\x0f\x1d\x08\x6f\x49\xc8\xcb\xe0\x72\x23\x3e\x5b\x15\x33\xaa\xc0\x4b\x3e\x0b\x48\x4f\x28\x77\x43\xd2\x8b\x50\xe0\xf7\xb8\xe4\xa7\xac\x29\x45\xce\x6a\x6e\x4b\x8b\x21\x84\x6c\xc4\xd2\x86\x3c\x36\x8d\x5d\x68\x6a\x49\x57\xb0\xae\x19\x3f\x64\x49\xd3\x14\x59\xa1\x85\xb9\xab\x0a\xd5\xa6\xbb\x24\xc8\x78\xcb\x02\xf2\xf3\xec\xb7\x4f\xef\xdb\x4d\xf1\x95\xbf\xb1\xe9\x67\x11\x8d\xb7\xb4\x0e\x90\x73\x89\x13\xf2\x1b\x0f\x1d\x44\x4a\xe1\x8d\xb9\xcb\x62\x12\x55\xbb\xa0\xfc\x0f\x5b\x92\xdf\x47\x59\x86\xfa\x17\x47\x26\x86\x2d\x71\x27\x24\x49\xf0\x88\xb8\x89\xc0\x5c\x98\x8c\xf4\x9c\x4c\x98\x20\xfb\x37\x38\xd9\x57\xc3\x0c\x1c\xd8\x03\x91\xed\xa7\xfb\xa9\x5e\x02\x9a\x70\x53\x72\xd4\xde\x8f\xff\xf5\x5f\x7b\x97\x9c\xe0\xeb\x3c\x0b\x7d\xe9\xf9\xbc\xd9\xf2\x53\x7f\x38\x3a\x5a\x8a\xba\xc5\x9e\xa8\x05\x87\xd6\xfe\xbe\x11\xcc\x09\xe3\xfd\x12\xd8\xe7\x9f\x7a\x97\xc4\xbe\x4b\x62\x2f\x29\x76\xcc\x42\xea\xcf\xee\x17\xf3\x17\xfb\x61\x72\x68\x22\xb0\xd5\xef\x8e\x85\x88\x65\x91\x97\x34\x39\x9c\xe2\x90\x06\x87\xb2\x56\xc2\x0f\x4d\x08\x83\xba\x76\xdf\xf4\xa9\x41\xbb\x2f\x37\x3e\xdb\x24\xcf\xf2\x80\x7c\xa2\xf4\xbd\x4b\xeb\xd9\xa5\xf5\xec\xd2\x7a\xb6\x51\x3d\xfa\xfd\x5b\x35\xee\x7a\x5a\x4f\x70\x84\x78\x11\x07\x16\xa2\xc0\x2b\x47\x86\x8d\xb3\x70\xac\x10\x4d\x9e\x0d\xcb\xfb\xde\x72\x80\x9a\x13\xf3\xb6\xe1\x85\xd9\x9d\xd5\xa0\xac\xae\x06\xcd\x00\x40\x7b\x6a\x1c\xb0\x59\xd6\x7c\x83\xdc\x0b\x25\x14\x41\x8e\x20\x93\x38\xc4\x82\x38\x50\xc3\x79\xc7\xce\xad\x80\xa7\x04\xe4\xd3\x57\xd5\xfa\x59\x6d\x0a\x8e\xa3\x24\x5c\x9d\xbf\xc7\xa2\x50\x79\x71\x90\xcd\x2f\x2a\xf5\xe9\x53\x1a\x92\xc4\x81\x77\xcf\x23\x3a\xb9\x05\x4c\x53\x01\x8c\xee\xe7\x28\xa2\xeb\xe8\xfc\x44\x3a\x3f\x91\xce\x4f\xa4\xf3\x13\xe9\xfc\x44\x3a\x3f\x91\x27\xe4\x27\xb2\x09\x48\x52\xe7\xdf\xc3\xe4\x01\xfc\x86\x51\xff\x51\x26\x68\x56\xc1\xfd\x03\xbf\x27\x6e\x15\xd3\xbf\x9c\xdc\xea\x8e\xf1\xfd\xed\xef\xa5\x51\xc0\xa7\xf7\x7b\x15\x75\x3f\xc6\x3c\x21\x80\xb8\x29\x0d\xe0\x9e\x70\x63\x16\x03\x88\x84\x4a\xdf\x0c\x88\x6b\x02\x14\xaa\x9d\xd9\xb5\xd2\x76\x99\xeb\xa7\xef\x8c\xa9\x62\x53\xa4\x7e\xc7\x00\x9d\xc3\xec\xd0\x76\x50\x25\xce\xbf\x80\x70\x2f\xaa\x66\x7b\x93\x4d\x9d\xe6\x4f\xc8\xaf\x19\xd6\x43\xea\x65\x05\x56\xbd\x51\x6d\x3f\x52\x86\x8a\xa5\x85\x00\xb2\x22\xd5\xf9\xcb\x75\xe2\x3a\xb7\x46\x01\x23\x39\x72\xb2\x24\x75\x7f\x3c\xca\x84\xfa\x59\xf2\xec\x9f\x67\xc0\x59\x3b\x5f\x72\x44\xc6\x06\x0a\x38\x1f\x55\x24\x39\x01\x5f\x03\xba\x58\x00\x6a\xcc\xb2\x36\xa8\x47\x7f\x39\x11\x84\xf0\xe0\x00\x30\x8f\xe6\x1f\x5a\x31\x95\x0c\x39\x13\x22\xb0\x0d\x82\xb9\xb9\x04\x21\x62\xb9\x80\xfa\x8e\x6e\x45\x7b\x9b\x01\x61\xce\xc2\x3b\x87\xb4\xd9\x8e\xb4\x52\xf5\xa8\x93\x55\x76\xb2\xca\x4e\x56\xd9\xc9\x2a\x3b\x59\x65\x27\xab\xfc\xce\x60\xf8\xf7\x26\xab\x54\xe7\xe5\x2e\x48\x2a\xb7\x2f\xd5\xab\xe3\xd9\x2e\x08\x70\x17\x04\xb8\x0b\x02\xbc\x03\x58\xa3\x0b\x02\xdc\x05\x01\x7e\x16\xf0\xe1\x7b\x0b\x02\x5c\x3b\x33\xab\x69\x51\xcb\xc9\xf4\x9b\x65\x72\x77\x17\xc6\x31\x15\x17\xd8\x64\xda\x2c\x19\x5f\xe6\xcf\xf3\x42\x18\xc7\x8c\x30\x2e\xbb\x84\x94\x18\xce\xe3\xb7\x10\xc6\x31\xb8\x69\xde\xd7\x92\x61\x68\x6d\x84\x7f\x68\x1c\xe1\x1f\xec\x11\xfe\x41\x8d\x10\xab\x11\x6a\x1b\x56\x64\x66\xfb\x54\xc9\x1f\xb5\xa1\x2b\x0d\x7a\x51\x7d\xd0\xb4\x18\x34\x36\x83\xce\x2e\x21\xac\x06\x4d\x9b\x07\xbd\x22\xcb\x2a\xfe\x26\x61\x92\x93\x6c\xc1\x74\xd8\xab\xc3\x5e\x1d\xf6\xea\xb0\x57\x87\xbd\x3a\xec\xd5\x61\xaf\x15\xd8\xab\x0c\xb9\xfe\x84\x05\xb9\xc1\xb3\x4d\x54\xa1\x0f\x04\xbb\x46\xba\xc5\x6f\x83\xbd\xbe\x05\x00\x51\x4b\xae\xf3\x6f\xef\xfc\xdb\x9f\x8d\x7f\xbb\xe5\xdd\xfe\x90\xc8\x69\xd8\x21\xa7\x95\xc8\x69\x52\x45\x4e\x93\x6d\x22\xa7\xb8\x01\x39\xc5\x77\x73\xdc\x0e\x2a\x08\x26\x78\x3c\xc7\xed\x89\xb5\xab\xb6\x84\x6b\xfc\x8e\xc1\xd3\x0c\x59\xae\xdb\xed\x8e\xdb\xea\x64\x7c\x56\x8e\xdb\x49\xab\xe3\xf6\xf0\xdb\x3b\x6e\x07\x9b\x39\x6e\xeb\xb7\x84\x18\x0a\x56\xb9\x6d\x6f\x8a\xed\x34\x0a\xa9\x48\x9b\xb4\x45\xd1\xd6\x40\x9d\x32\x6c\xcb\x91\xdd\x37\x97\xa5\x35\x69\x0e\x1b\x52\xa7\x16\x82\xb7\x16\x4c\x7d\x3b\xcf\xdc\x59\xcd\x33\xf7\xd2\xcb\xde\xe5\x58\xf9\xe5\x4e\xef\xe7\x97\x7b\x56\xf5\xcb\x9d\xb6\xf8\xe5\x9e\xf5\xc9\xc0\x9b\x1a\xbf\xdc\xb3\xb2\x5f\xae\xfd\x13\x9d\x55\xfd\x72\xcf\x5a\xfd\x72\xcf\x16\x8b\xb3\xaa\x5f\xee\x59\x05\x2d\x78\xe3\xdb\xfb\xe5\xca\x9d\x2b\xf3\xcb\x3d\x83\x68\x64\xad\xb2\xb3\xaa\xd7\xac\xf1\xcb\x2d\x5d\x3f\x3e\xab\x83\xb4\x51\xee\x97\x7b\xb6\xda\x2f\xb7\xd6\x42\xe3\x66\x2c\xbb\x78\x26\x87\x97\xf9\xe5\x9e\x95\xfd\x72\x6f\x36\x27\x05\x82\x5d\x93\x5b\x51\x82\x06\xcb\x34\x53\xc7\xc3\x5a\xc0\x75\x96\x6e\x9d\xa5\x5b\x67\xe9\xd6\x59\xba\x75\x96\x6e\x8f\x6c\xe9\xc6\x6a\x96\x6e\xbc\xb3\x74\x6b\x70\x38\x61\x0f\x67\xe9\x76\x4b\x87\x13\x7d\xfe\x3e\x8c\xc3\xc9\x1d\xb3\x99\xdc\xce\x29\x37\x21\xe1\xb0\x09\x0f\x37\x79\xc7\xca\xb2\xcd\x11\x7a\x13\xe2\x73\x22\x0c\xae\x6f\x08\xd1\x53\x54\x17\x03\x01\x8f\xe7\x3a\x02\x2f\xe3\xa7\xef\x14\x7c\x45\x17\xea\xf9\xd3\x77\x3d\xb2\xb4\x62\xf8\xca\xf5\x02\x04\xb4\xfd\x36\xfc\x90\x45\x1b\xfa\xf2\xaa\xa2\x8d\xdd\xb5\x5d\x7a\x4b\x53\x0f\xab\x64\xe1\xdc\x38\x01\xaf\xe7\x0b\xeb\x78\xc8\x5c\xfb\x13\x97\xa8\x4f\xb5\xb5\x4f\xca\xd1\xe1\x01\xda\xe2\x2c\x24\xd5\x96\xea\xa6\x8d\x5c\x05\x93\x0f\x81\x40\xec\x41\x4c\x1b\x05\x8b\x59\xc8\x46\xb7\xf2\x59\xee\xa4\xda\x9d\x54\xbb\x93\x6a\x77\x52\xed\x4e\xaa\xdd\x49\xb5\xb7\x22\xd5\xb6\xce\xa7\xc0\xef\xa4\xdb\xdf\xb9\x74\x3b\xf0\x93\x07\x92\x6d\xe7\x60\xe4\x16\xa6\x94\xd9\x5e\x52\x13\x6f\xff\xd8\x28\xde\xfe\xd1\x16\x6f\xff\x68\xfc\xb6\x15\x1e\x0b\xfc\x44\x39\x31\x9f\x45\x04\x44\x6a\x9f\x32\x0b\x88\x1e\x1c\xbc\x28\xd0\x27\x45\xce\x07\x92\x8c\x4f\x4c\xbe\x3c\x68\x36\xd9\x5a\x3c\x1b\xfd\xf6\xb4\x91\x66\x24\x01\x1d\x57\x66\xa8\xe8\x9a\x46\xc1\x1a\xd7\x70\x5c\x75\x0d\xc7\xab\x5c\xc3\x57\x1a\x66\xb6\xc5\xdd\x14\x5e\x29\x44\x8e\x12\x19\x26\xee\x90\xf2\x44\x64\x7b\x8a\x66\x24\xb0\x94\x29\xa3\xb9\x68\x40\x04\xa6\xa1\x03\x5d\xc1\xe9\x04\xc0\x2c\xa4\xa7\x30\x21\x80\xfe\x70\x74\x94\x47\x01\x92\xc3\xb5\xe6\x55\x42\xa1\xc0\x84\xf8\x7c\xcb\xa2\x88\xf8\x42\x7f\x87\x97\x64\xdf\x64\x24\xdc\xa7\xd1\x3e\xe3\x01\xe1\xfb\x82\xed\xa7\x09\x51\x68\x7a\x9f\x44\x41\xcc\x68\x24\x1c\x68\x7b\x91\x57\xde\x0d\x7a\xf1\x4a\xfb\x2b\xab\x70\x9f\x7a\x17\x20\xcb\xdb\x47\xe8\x6c\xd4\x03\xa8\x55\xdf\x69\x01\x9e\xb1\x16\x20\xf1\xc7\x64\x82\xdb\x88\x93\x91\xed\xd3\x48\x90\x48\xce\xcf\x61\x4c\xf8\x84\x1a\x0b\xa2\xcd\xca\x1d\x8e\x85\x88\x6f\x55\xf8\x70\x4c\x70\x40\x1a\x85\xff\x96\xe8\x9f\x59\x18\x82\x3d\x55\x66\x46\xb7\x4a\x76\xba\xc0\x4c\x8f\x47\x23\x92\x2a\x8d\x48\xbe\xa7\xc0\x4c\xac\x9d\x46\xf8\x4d\x01\x92\x1e\x87\x46\x94\x73\xec\x3e\x42\x36\xc8\x61\x55\x46\x26\xcf\x79\x72\xbc\x42\x82\x62\x24\x1f\x95\xa3\xb5\x7a\xf0\x5a\x47\xed\x12\xf6\x48\x5f\x0c\xbc\x08\x91\x07\x93\xe7\x5b\xcb\xf1\x29\xd3\x90\x3c\x24\x14\x33\x72\x57\xe3\xad\xa5\x41\x2d\xf1\x42\xc0\x2c\x32\xc2\xcc\xc7\x89\xf7\xa8\xfe\x58\x58\x41\x46\xc2\x3a\x19\x49\x2d\x32\x12\x42\x94\x78\x47\xaf\x93\x9f\xc2\xd7\xc9\xef\x7e\x07\xd3\x7e\x62\x93\x91\xc4\xca\x4c\xe8\x03\xec\x11\x9b\x8c\x90\x0a\x19\x49\x15\x19\x69\x3e\x6f\x85\xab\x0f\x6b\x88\x54\x45\x2d\xe5\xcc\x79\x1b\x6d\x5e\x38\x3b\x6f\x11\xcf\x9f\xc1\x19\x01\x62\x72\x17\x2b\x96\x51\xbc\x0e\x4d\x10\xcc\xfd\x71\xbb\x18\x56\xde\x7d\x19\xf3\xff\x9f\xbd\x7f\xdf\x6e\xdb\x38\xe3\x86\xd1\xff\x7d\x15\x08\xde\xbd\x5d\xe2\xcd\x90\x22\x29\xc9\x96\x95\xb2\x8e\x23\x3b\x8d\x1b\xc7\x76\x7d\x48\xdb\xa8\xdc\x59\x23\x60\x48\x22\x02\x31\x0c\x30\x94\xcc\xca\xba\x97\x7d\x2d\xdf\x95\x7d\x6b\x4e\xc0\x0c\x30\x38\x12\x94\xe4\x44\x59\xab\x35\x45\x0e\x06\x73\x7c\xce\xcf\xef\x41\x9e\xef\x42\x82\x14\x19\xa0\xa2\xdd\x7a\x15\x93\x08\xc1\xa5\x92\xbc\x9e\x6f\xcf\x71\x8c\x4c\x91\x08\x99\x06\x12\x60\xb3\xb8\x05\x07\xfe\x29\xfe\xfd\x3c\x5b\x48\x5c\xfb\x15\xba\x41\xd9\xcf\x21\x8b\x72\x2a\xff\x3d\x4d\x14\x2b\x6e\x27\x9a\x54\xf6\x57\xa3\x2b\x51\xca\x2e\x1f\x9f\xa1\xb5\xa3\xd7\xcb\x1c\x92\x91\x56\x40\x07\x31\x98\x81\x15\xf0\x14\x49\x4d\xb7\xf6\xfc\x41\x25\xb5\xcd\x4e\x25\xb5\xb3\x2f\xc2\x2c\xbd\xd0\xe4\xc9\x45\xa7\xf2\xe4\xc5\xbd\x3c\x59\x2a\x4f\xbe\xc9\xca\x93\x6f\x76\x29\x4f\xce\x0d\xf2\xe4\xbc\x44\x9e\x5c\xde\xfd\x20\x8d\x37\x0a\x95\x7a\xf3\xc5\xd9\xa4\x2f\xc1\x6f\xe0\x57\xf0\x76\xd2\x1b\x02\x4f\x0d\xd5\x78\x3f\xb9\x62\xec\xf0\x58\x8f\xd8\x78\xeb\x00\xe8\x06\xf4\xcb\x40\xfb\x52\xb8\x8a\xf5\x80\x8f\xb7\x0e\x60\x6e\xdd\xde\x10\xf8\xda\xb7\xe7\x17\xf4\x3b\xa8\x7d\xc7\xf2\xb6\x7b\x43\xb0\xd6\xbe\x95\x99\xdd\x82\x2c\xd2\x06\x71\xee\x31\xd1\x88\xfe\xe8\x9a\x9e\xa6\x3f\xcc\xf4\xa7\x78\x5d\xd4\xde\x10\xac\xd4\xef\xaf\xc1\x8b\x49\xef\x72\x72\x95\x48\x17\xc7\xac\x24\x70\xba\x2c\xd7\xe0\xb7\x89\x6d\x90\x29\x7e\xcd\x40\x38\x39\xe0\x37\x2a\xd1\x5f\x16\x48\xf4\x74\xd1\xc5\xce\xfc\xda\x48\xa2\xbf\x3c\xfd\x6d\x3a\xf9\x15\x5c\x3a\xe0\xfc\xcf\x22\x8c\x2f\xca\x85\x71\x2e\x48\x4c\x2e\x72\x22\xb9\xb8\x50\x1b\x29\x93\x83\x02\xca\x24\x05\x56\x34\xc1\xa0\x47\xa4\xc5\x9e\x8b\x2f\x4c\x6e\x29\x8e\xdc\x78\x7f\x8a\xa6\x29\x54\xbc\x14\x3a\x4b\x1e\x78\xc1\x1e\x98\x3a\x0f\x1f\x9e\xf5\x94\x85\x03\xc4\x01\x21\xfb\x0e\x84\x0e\xc8\x48\xce\xe7\x95\x92\x73\x52\x01\xd7\x28\x3b\x0b\x71\x8c\xe0\x08\xce\xd1\x5e\x80\x5d\x18\xf4\xc5\x5f\xf7\x08\x01\xf7\x08\x01\xf7\x08\x01\x7f\x16\x8c\xf5\x0e\x11\x02\xd6\xa6\x4c\xfd\xdb\x31\xe5\xdd\x16\xcc\xba\x1e\x52\xf3\x45\x98\xf2\xd0\xc0\x9f\xbd\xc6\xe4\xbb\x00\xbb\xe7\x7e\x38\x57\xa5\xc0\xd9\x44\x17\x74\x04\xff\x60\xfc\x5d\x7f\xc8\xb8\x6a\x6a\x71\x7b\x37\xf0\x51\x48\xca\x8a\xdb\x27\xae\x30\x34\x38\x13\xdd\x3e\x7c\xf8\x55\xfa\xc7\xb5\xe3\x5c\xff\xb9\x0c\x8e\x0a\x82\x42\xa1\x8c\x13\x18\xd0\x14\x78\x0c\x44\x02\xa6\xd0\x20\x06\x02\x4f\x86\xdf\xe0\xbf\x92\x6f\x30\x8b\x81\xc0\xaa\xd9\x11\x4f\xd3\x88\xfa\x75\x0f\x4d\x02\xd5\xec\x18\x14\x66\xf8\x51\x79\x02\xcc\x94\x10\x08\x34\x71\x15\x81\x4a\x20\x90\x17\x87\x05\x67\x23\x08\x12\x47\x3f\x9c\xa3\x01\xa5\xc5\xb9\x48\x57\x73\x5c\x44\xbd\x0e\xe7\x88\xfc\x4c\x1f\xec\x21\xa7\x56\xb5\x9f\xb4\x3a\xa8\xec\x42\x2e\x92\xea\xba\x46\x26\xd7\x75\xe8\x5c\x31\x8a\xc4\xdf\x17\x02\x74\x1a\x4e\x19\xba\x7b\x49\x0d\x20\x0f\x05\xc8\x2c\x49\xb2\x1d\x1c\xf8\x31\xdf\x49\xe4\x7c\xfe\xdc\x43\x93\x53\x34\x15\xe1\x32\xda\x10\x41\x38\x41\x26\x4f\xb5\x42\xac\x06\x11\x5a\xe2\x0b\x24\xc6\xc6\x10\xe7\xc1\xd5\x75\x42\x68\xb3\x43\x0c\x13\xa8\x89\xbc\xf8\x8a\xb9\xf8\xea\x36\x34\xfc\xe2\x88\x14\x9a\x7d\x71\x44\xf6\x5c\xbc\x5c\x41\x26\x4a\x16\x18\x24\x0b\x1a\x15\x58\x7c\xb3\xad\x2b\x0c\xc4\xd9\xe6\x59\xfb\x6d\xf6\x77\x77\x81\xdc\xf3\xf2\x26\x05\xa6\xeb\x6c\x33\x83\x31\x3a\xdb\x24\x6f\x6c\xce\xb6\x30\x19\xac\xb3\x6d\x0c\x26\xdc\x7c\x1b\xec\xd5\x32\xe0\xf2\x8b\xb2\x7a\xa0\xc7\x0a\x0a\xf6\xec\xfd\x51\xf5\x88\xe5\x4e\xf5\x88\xcd\x17\xa1\x47\x9c\x69\x7a\xc4\x59\xa7\x7a\xc4\xe2\x5e\x8f\x28\xd5\x23\xe6\x59\x3d\x62\xbe\x4b\x3d\xe2\xc2\xa0\x47\x5c\x94\xe8\x11\xde\xdd\x37\xe1\xce\x15\x2a\x35\xbf\x0d\x25\xe2\xcd\x17\xa3\x44\xa8\xa6\x63\xb3\x32\x50\x1a\x1a\x87\xa4\xe0\x78\x6a\x27\x25\xf2\x09\xb0\x8f\x61\xec\xda\x0e\xd0\xbf\xf3\x10\xfd\x92\xca\x4a\xe0\x74\xca\x4c\xaf\x57\x2b\x3e\x56\x1f\xc5\xc7\x99\x7b\x80\xf2\x21\xb0\x43\x63\x08\xec\x50\x0d\x81\x1d\x4e\x8f\x4f\xa7\xb9\x9b\x25\x73\x7a\x26\x97\xf4\x62\xf1\x5f\x4f\x43\xa6\xe5\x98\xab\x0d\x4d\x26\x13\x72\xed\x38\x9f\x3f\x87\xa7\xc3\xe9\xf4\xfa\x1a\x78\x7e\x84\x58\x2b\x7f\xb6\x39\xbe\xbc\x06\xbf\x4e\x7a\x6f\x7a\xab\xc9\x95\x62\x90\x56\xb4\xad\xdf\x8c\x76\xee\x50\x6d\x70\x0d\x4c\x66\x67\xdd\x36\xff\x9b\xe3\x80\x37\xbd\x15\xb0\xa9\x90\xa2\x5b\xe2\x93\x9f\x84\x7c\xa2\x5b\xe4\x93\x5f\x15\xd1\x44\xb7\xcf\x27\x2d\x84\x54\xa2\xdb\xff\x93\x5f\xb9\x40\xa2\x1b\xf1\x93\x1f\xa5\x2c\xa2\x5b\xe9\x93\x9f\xa5\x18\xa2\x5b\xf8\xd3\x9f\x99\xaf\x5a\x37\xe4\xd3\x1f\x57\x0e\x78\xfb\x67\x51\x13\xcf\x6a\x99\xc2\x17\x45\xa6\xf0\x65\x3b\x53\x78\x2a\x07\x96\x28\x5b\xbf\x26\x96\xed\x8d\x41\x35\xd8\x18\x2d\xdb\x6f\xab\x54\x03\xc2\xac\xe9\xaa\x6e\x30\x0b\x20\xb1\x81\xfd\xed\x27\xf6\xdb\xde\x2c\x5e\x9a\x2a\x85\x32\x71\xe8\xcf\x99\x8e\x97\xbc\x36\xc3\x5a\xb3\x6a\xa3\x93\xa8\xf8\xc8\xb9\x66\x6a\x64\xe6\x01\x45\xb4\xfa\x2a\x3b\xe8\xcc\x92\x50\x5e\xc5\xcf\xbb\xd2\x31\x7f\xe1\x2c\xc2\xcb\xe4\x0d\xae\xfe\x1e\xe7\xca\x78\xf5\x5e\x86\x0c\xce\xc3\x82\x84\xa0\xe5\x8a\x58\x04\x5b\xf1\x2a\x42\xd0\xb3\x42\x1c\xf6\x7d\x11\x4d\x92\x48\xd9\x83\xff\x86\x2f\x95\x10\xf9\x33\x64\xc9\x26\x80\x3d\x00\xe9\x38\x2c\x2e\x8d\xc4\xfc\x1a\x2f\xe0\x05\xb2\xa0\x75\x9a\x99\xc6\xb4\xe7\x58\x4b\x44\x16\xd8\x1b\xd8\xce\x75\x2f\x9f\x39\xd8\x6c\x65\x51\x76\x59\x25\x39\x32\xc8\xac\x7c\x24\x9f\x3f\x7f\xd5\x2b\x5d\x5a\xd1\xb5\x28\x3d\x77\x3a\x05\x11\x95\xe0\xf1\xe4\xab\x11\xf0\x25\x63\xa6\x12\xa9\x54\x15\x20\x08\x26\xc8\x30\xcd\x6f\xbe\xea\x45\x93\x1e\x9c\x04\x83\x10\x7d\x22\x3d\xc7\x19\x78\x38\x44\xce\xc3\x87\xbd\x90\x17\xc0\x83\x3c\x26\xdd\x01\x54\x94\x0b\x05\x3f\x65\xd4\xf2\x1b\xfa\x4a\xe7\x1b\x21\xa2\xae\x9d\x2b\x4c\x87\xe0\x4f\xd6\xd7\x33\x3f\x84\x41\xb0\xb9\x62\x22\xf1\xe7\xcf\x94\x42\x4e\x26\xc1\x80\x0f\xf9\xf3\x67\xf9\x89\xae\xab\x68\xe9\xcf\x7a\x58\x90\x5f\xff\x5a\xd2\x9e\xf0\x9a\xad\x14\x3b\x2d\xec\xdf\x16\xe7\xc5\x43\xfc\x46\xad\x23\x74\x7b\x87\xc6\x4d\x76\x5c\x5c\x28\x5e\xff\x2f\xdd\x74\xa4\xdc\x41\x40\x64\x41\x41\xc1\x38\x8a\x14\x09\xe4\x88\x64\x84\x23\xd0\x1f\x49\xd9\xc4\xe6\x0f\xd9\x93\xc9\x24\xcc\x90\x14\xba\xa7\x13\xed\x9b\x41\x08\x97\xc8\x01\xf6\x4f\x70\xc5\x1e\xf8\xfc\xd9\x7e\x8f\xf8\xb3\x4f\xb5\x4b\x7b\x6c\x3f\x93\x9c\x41\x34\xdc\xfb\xff\xf5\x9e\x1e\x7f\xf4\x3f\xbf\x74\x42\xd2\x7b\x7a\x7c\xf4\x79\xf4\xe8\xf3\xfe\xd8\xe9\x3d\x3d\x3e\x09\xe0\x72\x85\x3c\x87\xf7\xf0\xff\xd9\x1b\x10\x14\x93\x5e\xe8\x3c\xe5\x73\x93\xd9\xb8\xb9\x44\xd4\x1e\x3f\x26\xe4\xf3\x67\xf2\x37\x24\xce\x19\x3d\x87\x64\x92\xfc\xf5\x40\x51\x7c\x41\xa4\x59\x31\xa9\x1e\xcc\x14\xe0\xe8\x34\x9c\x4e\x10\x53\x7f\xf9\x92\x46\xb9\x50\xdb\x2f\x23\x47\x79\xb5\x53\x4b\x82\xf7\x45\x58\x12\x96\x9a\x25\xa1\x20\xcb\xb3\xa5\x25\x61\x73\x6f\x49\x28\xb5\x24\x5c\x64\x2d\x09\x17\xbb\xb4\x24\x9c\x19\x2c\x09\x67\xed\x72\x94\x17\x19\x8d\x7e\x71\x7b\x1e\xc9\x0b\x45\xd4\xbc\xf8\xe2\xe2\xc1\x58\x6e\x32\x8f\x09\x03\xef\x27\xbd\xa8\x20\x47\x39\xc0\xf3\x39\x8a\x6c\x07\xcc\x27\x3d\xfc\x67\xd1\xbf\x96\x15\x6e\x3a\xaa\x73\xc0\xc9\xa6\xc0\x4d\xb7\x6a\xe1\xa6\xab\x95\xaa\x3c\xeb\x2d\x7a\x68\x02\x55\x37\x1d\x34\xba\xe9\xc4\xa6\x01\x1f\x2c\xf4\x6c\x65\xe6\xaa\x4b\x60\x83\x02\x9c\x77\xab\x39\x57\x89\x6f\x0a\x7a\xde\xdf\xd7\x30\xf2\x0c\x78\x3d\x59\x0c\x9e\x39\x6b\x57\xe8\x16\xe3\xcc\x66\xdd\x0b\xc1\xd8\x01\x78\x12\x9d\x0e\xa7\xc0\x9f\x44\xa7\xa3\xe9\x83\x34\xab\x15\x01\xac\x91\x36\x41\x19\xbe\x22\x03\x1c\xb2\x71\x48\x1a\x03\x4e\xfd\x64\xbe\x5c\x90\x49\x69\x28\x93\x99\x38\x01\x4d\xc9\x90\xc3\x60\x7a\x1c\x07\x9c\x22\x40\xd2\x40\xae\x25\x74\x17\xbe\x19\xb1\xc7\xbc\x69\x7f\x1b\x19\x0d\x4d\x23\xd5\xd0\x34\x9a\x1e\x5f\x25\x59\xcf\xa1\x38\x97\x3f\xf1\x37\x89\x09\x88\xe4\x4e\x1e\xa6\x31\x48\x56\x99\xad\xaa\xea\xa4\x8c\xd0\x0a\x46\xe8\x64\x01\x23\xa3\xa7\x32\xeb\x64\xef\x21\xb5\xe0\x75\xa6\x12\x35\x55\x2a\x06\x38\x95\x8b\x58\x77\x71\x0f\xb1\xfc\x67\x14\x9b\xf6\x8d\xb2\x06\x49\x54\xe9\x1e\x3c\xa5\xff\x37\x41\x03\x1c\x1e\x6b\xae\xd0\x01\x0e\x8b\xb6\x5d\x7d\xfc\x34\x9c\x52\x79\x8f\x7f\x62\xdd\x08\xf7\x28\xaf\x7f\x9d\x6e\x0a\x71\x17\xa8\xfc\xc8\xa5\x71\x05\x0f\x1f\x66\xd4\x32\xe2\x3c\x25\xc7\xa7\x64\xea\x0c\x62\xbc\x44\x46\x94\x27\x34\x10\xef\xc8\xc0\x37\x09\x2b\x44\xd1\x42\x5f\x89\xa7\x8e\xd1\x75\xf2\x88\x1f\x12\x14\xad\x22\x64\xd8\x1f\x89\x17\xc4\x0b\xae\x3f\x40\xdc\x5f\xab\xee\x69\x4f\x90\x13\xcc\x43\x4a\x93\xbe\x1c\x7e\x2e\xc4\xe9\xe4\xa7\x42\x1e\x28\x3c\x88\xd7\x67\xb1\x1b\xf9\x67\x48\x5f\xea\x70\xe0\x2e\x60\x38\x47\x1e\x93\xc8\x02\x3c\xe7\x86\x18\xba\xdc\x1f\x22\x18\xc6\xbe\x68\xc8\x56\x1b\xa7\x30\x5e\x05\xf7\x3b\x59\x2c\xb1\xd3\x28\x24\x91\x8f\xe2\x9e\x6e\xce\x44\x8e\x23\x4a\x83\x1b\xad\xa5\x54\x9b\x1e\x39\xa7\xc3\xa9\x92\xfd\x4e\xef\xad\x67\x3b\x49\x72\xba\xa7\x19\x91\x38\xea\x13\x95\x5e\x31\xf7\x2f\xab\xc9\xe8\x6f\x26\x09\x5d\xbb\x9c\x9c\x46\x53\xf0\xdb\x76\xf9\xe8\x6f\xb3\xf9\xe8\xbf\x15\xe4\xa3\xbf\x3d\x45\xd3\xc9\x6f\x22\x1f\xfd\xad\x9e\x8f\xae\xfe\x09\xde\x66\xf3\xd1\xdf\x16\xe6\xa3\xbf\xfd\xfc\xf9\x6d\x36\x1f\xfd\xad\x2e\x49\xbf\x9d\x5c\x36\xcf\x47\xa7\x5c\x5d\xe6\xa3\xbf\x75\xc0\xaf\x0a\xc1\x7a\x9b\xc9\x16\x7f\x2b\xf2\xd1\xb5\xef\x9f\xbe\xcd\x2b\x30\xbf\x26\xf9\xe8\x6f\xcb\xf3\xd1\xb3\x6f\x30\x0b\x2a\x74\x88\x6f\xe9\xf4\x78\x3e\xba\x3f\x79\x0b\xb0\x6a\x2d\x7c\x5f\x69\x2d\x64\xc8\xc4\xaa\xb5\xf0\x5b\x44\xb9\x48\xdf\x83\x04\x8a\x9f\xcb\xb0\xbb\x00\x04\xc1\x03\x3d\xa4\x4d\x48\x71\xeb\x3f\xaa\xc1\xd0\xfd\x92\x74\xe3\x78\xa7\xba\xf1\xec\x8b\xd0\x8d\x35\x04\xa7\xde\xaa\x53\xdd\xd8\xbb\xd7\x8d\x4b\x75\xe3\xb3\xac\x6e\x7c\xb6\x4b\xdd\x78\x69\xd0\x8d\x97\x25\xba\xf1\xba\x58\x37\xde\x64\x74\xe3\xcd\xed\xe9\xc6\x67\x0a\x55\x2d\x88\x11\xd9\xad\xa3\x7d\x91\xaf\x41\x99\xca\xe5\x2a\xd7\x8f\x0a\xb8\xbe\x4f\xb9\x7e\x24\xb8\xbe\xaf\x73\x7d\xf5\x4f\xe0\x67\xb9\xbe\x5f\xc8\xf5\xfd\xcf\x9f\xfd\x2c\xd7\xf7\x75\x1a\xe1\x4f\xc2\x3a\x5c\x9f\x91\x72\x69\x03\x15\xee\xb0\xcf\x9f\xc3\x6b\x07\xf8\x4c\x86\x52\x0a\x61\xea\x3c\xd9\x17\x5c\x5f\xfb\xfe\xa9\x9f\x27\xcd\x38\xe1\xfa\x7e\x39\xd7\xcf\xbe\xa1\x98\xbb\xf8\x6c\x7a\x9c\xeb\x77\x64\xc5\xb8\x28\x46\x57\xa3\xd2\x40\x3f\xc6\xeb\xc8\x4d\x73\xa5\xa9\xa2\x6d\x6e\xcd\xa3\x99\x19\xda\xbc\xed\x80\xe0\x4f\x83\xc4\xb6\x92\xa6\x8e\x40\x47\x62\xc3\x13\xaf\x17\x28\xe6\x8d\x20\x31\x6f\x08\xf8\xed\xa0\x73\xf3\x86\xdb\xdb\xf4\xd0\x04\xab\xe6\x0d\x6c\x46\x62\x83\x04\xbe\x67\x1b\x6b\x03\x1f\x30\xe5\x16\xb0\x87\x1d\x20\xa3\xd2\x01\x14\xdf\x2b\x40\x6d\x81\x02\xd4\xe6\x06\x08\xe6\xdd\xdc\xce\x15\x53\xbd\x78\x1f\x03\x78\x86\x23\xd2\x13\x48\x64\xe9\x3b\x07\x11\x8a\x11\x39\x81\xee\x02\xc9\x1f\xe9\x05\xe8\x55\x02\x01\x67\x8d\x26\xd0\x83\x2b\x82\xa2\xef\x71\xd4\x43\x8e\x02\x09\x0c\xae\x96\x12\xdc\xec\x18\x5d\x03\xc2\xdf\xf1\x2b\x53\x10\x43\x18\x30\xe4\xb3\xef\x71\xf4\x92\x5b\xf9\xc5\x79\x78\x1f\xc2\x55\xbc\xc0\xa4\x77\xa5\xe9\xb4\x85\x08\xca\x5c\xf6\x61\xaf\xe3\x2a\xaa\x3e\x1c\x80\x45\x80\x31\x8a\xc4\xcd\x16\xdf\xfb\x13\x6d\x74\x89\x1f\x26\x05\x60\x06\x3e\xa0\xf7\xca\x8d\x10\xa1\xc3\x2b\xcc\x0e\xc0\x83\x10\x47\x4b\xd6\xf9\x3b\x14\xaf\x70\x18\xa3\x5e\x08\x7c\x40\x29\x05\x1f\xb8\xa6\x9e\x33\x10\xb8\x57\x02\x87\xe2\x46\x66\xa4\xbc\x51\x4e\x8c\x01\x42\x97\x4d\x0a\x0d\x96\x88\xc0\x89\x32\xb7\x9f\x10\x81\x62\x5e\xec\x69\x3b\xe0\x73\x60\x21\xd8\xe9\xf4\xe0\x9a\x2c\x70\xe4\xff\xaf\xc4\x1c\xc5\xe5\x84\xf6\x56\xa9\x8e\x96\x25\x19\xa9\xb6\x28\x61\xc3\x9d\x26\x6c\x45\x04\x87\x51\x66\xaf\xed\x79\x80\xe7\x78\x5d\x12\xa6\xdf\x7e\x29\x42\xd3\x52\x44\xe6\x29\x87\x03\x3e\x0e\x3e\xdf\x08\x90\x81\xef\x51\x9a\xc9\x0c\x18\x33\x03\xba\xde\x8c\xa3\xeb\x05\x1a\xba\x9e\x3f\x59\xf4\x7a\x78\x12\xa8\x26\x0d\x8d\x92\x9d\x86\x53\xb0\x8d\x41\xc3\x01\x70\xb2\xe8\x61\xb5\x7b\x49\x0c\x4f\xa3\x6d\xbb\xd6\x34\xf4\x8b\x0a\x0d\x9d\xa0\x4f\xa4\xbf\x44\x30\x5e\x47\xf4\xb2\xaa\x9a\x3a\x57\xd4\xb5\x06\x45\xcf\xe5\x54\xf8\xc6\x12\x43\xe1\x03\x62\x22\xb6\xa6\xef\x7e\x35\x04\x73\x44\x0c\x09\x2b\xc9\x26\x5e\x5f\x3b\x55\x33\xf7\xdd\xf3\xec\x94\xb3\x19\xba\xa2\xcd\x7d\x4a\xee\x7d\x4a\xae\x1e\x0c\xdc\xf3\x27\xa6\x60\x2c\xa1\x67\x3e\x7c\x28\x15\xce\x39\x22\x4f\x95\xcf\x05\x75\xd0\x32\x87\x0b\x47\xbd\x6f\xbe\xca\xc5\x9c\x2c\x60\xfc\xe6\x32\x94\xa3\x14\x91\x27\x80\x2a\x98\x42\x96\xed\x21\x96\xbc\xea\x7c\xe3\x7c\xa3\x84\x3b\x01\xc2\x14\xe4\x04\x94\x36\xd5\xc9\x94\xde\x9e\xa3\xd8\x8d\xfc\x15\xc1\x51\x2f\xa2\x0f\x24\xcc\x80\x8e\x9f\xfd\x3f\x7f\x5f\xe8\x1c\x63\xae\x94\x5c\x73\x53\x05\x08\x3f\x7f\x36\x54\x37\x4a\x82\xfa\xee\x41\x08\xff\xa8\x99\xcb\x4d\x41\x08\xbf\x80\xda\xe6\xb7\x95\xb6\x4c\x77\x2b\x7e\xd0\x8d\x92\x3d\xfb\xb3\xf8\xfd\x13\x3c\xc0\x95\xd9\xef\x1f\x82\x35\x98\x4d\x82\xde\x4a\x51\x8c\x57\xb9\x62\xe7\x2b\x07\xcc\xaa\xe2\xae\x57\x8a\x2e\x4a\x4f\x99\x41\x15\xf5\x7b\x6e\x6f\x95\x4e\x8a\xe1\xf3\xd1\x86\xfc\xfe\x19\xfb\xe7\x9a\x22\xd3\x4f\x15\x75\x94\x5c\x22\x14\x7e\xc0\x45\x62\x74\x6b\x8d\xc2\xb6\x81\xa1\xdc\xe6\x58\x69\x34\x9e\x4a\x1b\x92\x01\xb8\x7c\x5f\x2f\xc0\x29\x8d\x4d\x93\x30\xc9\x4a\xa6\xec\xa9\xe7\x3b\x4f\x7b\xbd\x70\x12\x73\x54\x72\xc7\x51\x45\x85\xc1\x07\x3a\x35\x16\xfa\x18\x0e\x62\x82\x57\x3d\x87\x36\xfb\x00\x23\xda\xd8\x71\x40\x2c\xf0\xb2\x45\xcb\x01\xc1\xbd\x10\xb0\xf8\x0d\xc7\x01\xa1\x73\xdc\x93\x0d\x90\x03\xb4\xac\xdc\x98\x44\xb8\xa4\xb4\x91\xba\xce\x49\xe7\xe2\x29\x65\xe5\x59\x0b\x43\x2f\x31\xb3\x8e\xfc\x04\x57\xa6\x24\xdb\xd0\x01\x6b\x9e\x64\xbb\x76\xc0\x4a\x8f\xa4\x9f\x55\xca\x9f\x4b\xc4\x34\xa6\x32\x01\x74\xc5\x73\x7d\xbd\x0f\xa2\xf1\xbd\x24\x7a\x2f\x89\xde\x83\xc3\xdc\x9a\x88\xb5\xce\x8a\x58\xeb\x2f\x04\x1c\xe6\xae\x88\x58\xba\x07\xff\x4b\x8b\xc3\x74\x33\x88\x2c\x49\xa1\xc4\xf8\xcf\x22\x75\x25\xa0\x28\xeb\x72\x50\x94\xb5\xa3\x46\x6d\x64\xa5\xae\xb5\x03\x82\x2a\xa9\x6b\xad\x64\xbb\xa1\x4f\xc8\x5d\x9b\x02\xbe\x14\xd2\xc6\x53\x3b\x52\x41\xca\x77\xcf\x4b\xca\x1d\xa2\x4b\x09\xa3\xa1\x5b\x41\xf9\xa4\xa2\x75\xc8\xb3\x70\x50\x1a\xfd\x54\x82\xae\xb1\xd6\x19\x7f\x5c\xc5\xf8\x71\xe4\xfb\x7d\x59\x34\x5d\x63\xff\xec\xa7\xa2\x96\x5f\xa4\x91\x8d\xce\xa0\x7a\x8e\x5f\xe4\xdc\xd6\x7e\x9f\x5f\x12\x75\x7e\xda\x44\x14\xf1\x8c\x28\x84\x8f\xfc\x51\xc5\xb3\x70\xa7\xe2\x59\xf4\x45\x88\x67\x58\x13\xcf\x70\xa7\xe2\x99\x7f\x2f\x9e\xdd\x21\xf1\x0c\x1a\xc4\x33\xa8\x22\x39\x7d\x15\x6a\xe2\x19\xe9\x85\x66\xf1\x2c\x7c\x1a\x50\x31\x29\xcc\x98\x3a\x6f\x27\x1a\xe8\xb6\x24\xb4\x6c\xfc\xe3\x97\x05\xbb\xf1\xa7\x11\x00\x71\x2f\x29\x94\x5d\x20\x00\x42\xb0\x9e\xf8\xb9\xa2\xd9\x3c\x1e\x25\x94\x35\xb3\xcb\xe2\x51\xa2\x62\x54\xbc\xa8\x08\x15\xcf\xed\x05\x3d\x34\x59\xab\xf1\x28\xeb\x4c\x3c\x4a\xc4\xe2\x51\x24\xc7\x96\xa1\x51\x4a\xba\x4d\xac\x48\x9c\x73\xa3\x2d\x48\xbd\x91\x3c\xfa\x84\xf5\x26\xc1\x4e\xd6\x21\x8a\x5d\xb8\x42\x3d\x0f\xbb\x6c\x84\xf4\xac\xbf\x08\x10\x1b\xec\x77\x1b\x56\x01\x4f\xb5\xf0\xf8\xbf\x8a\xd1\xb0\xc0\x7b\x17\x33\xa0\x0f\xe7\x81\xd2\xb3\x9a\x25\x82\xd2\x82\xe2\x69\x03\x2e\x9b\x46\x59\xd9\x14\xb2\xef\x00\x64\xf5\x98\xeb\xc8\xa6\x05\x90\x69\xb5\xe4\x9a\xfb\x34\xfc\x9b\x4e\xc3\xcf\x2d\xdc\x57\x32\x6f\xfd\x41\x69\x52\x7b\x98\x26\xb5\x47\x0d\x93\xda\x95\x74\xf6\x28\x9f\xce\x1e\x99\xd2\xd9\xd9\x58\x44\x46\x7b\x94\x66\xb4\x47\x46\x34\x0a\xd6\x58\xcb\x6d\x8f\x9a\xe7\xb6\x47\x8e\x3e\xd3\xdc\x7a\x7d\x61\x70\x05\xe1\xae\x13\xf2\xb7\x67\x7e\x8a\xbd\x3b\xa7\x4b\x19\x05\x82\x98\xc0\x88\x88\x0c\xa3\xf7\xac\xa0\xe7\xb1\xed\x3c\xd5\x83\x65\x99\xf0\x06\xfc\x07\x36\x8c\x5d\x7a\x14\x48\x0f\x0d\xe2\x55\xe0\x93\x9e\x7d\x6c\x3b\x60\xec\x9c\x8e\xa6\x4f\x7b\x78\x12\x02\x7f\x12\x39\xc7\x3d\x7f\x12\x02\x3c\x89\x64\x7d\x53\x3c\xe0\x1d\x83\x60\xe2\x8b\x8f\xb2\x00\x28\x14\x05\x40\x57\x30\x8e\xe9\x1d\x11\x45\x40\x93\xbf\x27\x93\x49\xf0\x74\x78\x3c\x7a\xc0\x5a\xb9\x91\x4f\x7c\x17\x06\x49\xb3\xe4\x0b\xd1\xae\x2f\x1a\x5e\xc2\x28\x64\xdd\x89\xd7\x04\xe6\xd7\xf4\x0b\xfa\xb5\x46\x49\x49\x50\xf1\xc5\x30\xb9\xf4\xc3\x6b\x96\xc5\x56\x8f\x6c\x2b\x58\x51\x85\xa4\xfb\xe6\xf7\xbc\xf6\xf0\xcf\x2f\xbe\xcc\x71\x73\x1c\xac\x7b\x66\x79\xcf\x2c\xef\x99\xe5\x3d\xb3\xbc\x25\x66\x29\x58\x4f\x39\xcf\x94\x9c\xf2\x38\xe1\x9e\xe0\xab\x21\x67\x56\x16\x1e\x9c\x50\xa9\x3f\x3e\x11\xdc\xe9\x6f\x7e\xe6\x8b\x94\x5b\x19\xdb\xff\xb5\xa0\x7d\x3f\xe5\x6e\x62\x8c\xb9\x57\xfe\x8b\xf3\xcf\xe4\x8d\xe2\xef\x82\x17\x8a\x5f\xff\x6a\x6e\x5d\xe3\x75\x6f\x39\x5b\x4e\x3a\x10\x7f\x17\xbc\x4e\xfc\xfa\x37\x73\xeb\xfe\x48\x61\xd5\x4d\x78\xb5\xc4\x56\xfc\x12\x19\x9e\x84\x8d\xbc\xd9\xb1\x27\xc6\x4f\xa6\xed\x0a\xcc\xd1\x02\x73\x60\x6b\xe8\x51\x9b\x45\x94\xd3\x4b\x24\x7b\x26\xbd\x53\xf6\xa5\x3d\x65\x86\xaa\xba\x6b\xc4\x71\x37\xff\x5c\x2b\x04\xec\x13\x66\x6d\x7a\x19\x7a\xe8\x53\xc3\xf5\xca\x43\xc4\xdf\x0b\x54\xf7\x02\xd5\xbd\x40\x75\x2f\x50\x6d\xcf\xe0\xfc\x59\xaf\x40\x98\x4a\x72\xd1\x0c\xe2\x12\x88\x26\xa7\xf6\x5b\x14\xb9\x28\x24\x70\x8e\x34\xee\x6f\x83\xdc\x2f\x42\x0c\x31\xfc\x22\x05\x22\x5b\x4e\x5e\x0a\x69\xe1\xc3\x87\x51\x9a\x3a\x0c\xf2\x79\x00\x6c\x70\x94\xd6\x24\xf1\xfb\x74\x1d\xe9\x71\x45\xa7\x78\x4a\x2f\xfe\x29\x9e\x26\x84\xed\x14\x4f\xff\x46\xbf\x78\xda\x1f\x1d\x8f\xae\x93\x9b\x5b\x9f\xaf\x27\xb5\x3c\xee\x49\xef\x3d\xe9\xbd\x27\xbd\xf7\xa4\xf7\xcb\xd5\x65\x7f\x42\xf1\x22\xa7\xcf\xe6\xbf\xcc\xe9\x7c\xf9\x26\x7f\x2d\x79\xae\x54\xd9\x4c\x9f\x4a\xf5\xdb\xdc\x77\x25\x03\x48\xf5\xdc\xa2\xa7\x6a\xbe\x3e\xd5\x77\x73\xdf\x95\xbc\x3e\xd5\x7b\x8b\x9e\x6a\xad\xfb\x8a\x8a\x05\x5f\xa2\xea\x6b\xa8\xf8\xf0\x47\xd4\xf1\x9e\xa3\x98\xf8\x21\xa4\x7d\x19\xd5\xbd\xcc\xef\xe5\xba\x1e\x25\xae\x01\x24\x28\xde\x83\xab\x55\xe0\xbb\x70\xe7\x2e\x0a\xbe\x42\x3c\x42\xe1\x87\x0f\x3f\xbd\xfa\x0e\x46\xf1\x40\x0e\xa3\x77\xe5\x7b\xc7\xf6\xc1\xfe\xbf\xbf\x86\x9b\x7f\x07\x36\x60\x35\x0e\x8f\xff\x72\x25\xc2\xdb\x62\xfb\xf8\xd4\xc6\xf6\x14\x70\x98\x41\xce\x97\x8e\x4f\x4f\x8f\x80\xbd\x40\xd0\xeb\x07\x70\xc3\xf3\x36\xa6\xe0\x94\xfe\x6f\x3a\x65\x69\xf5\x53\x70\x3a\x06\xf6\x7f\xff\x1b\xda\x53\x70\x3a\x02\xa7\xfb\x43\x70\xba\xff\x08\x3c\x99\x82\x53\xfb\x84\x57\x6e\xa4\x0f\xd8\x31\x92\x95\x1b\xe8\x2f\x56\xdf\xb2\xa7\xd3\xa9\xf6\xf0\x23\x70\xba\xff\x18\x8c\xc6\xb4\xb9\xe8\x65\x34\x62\x7f\x1c\x82\xd1\x10\x9c\xda\xee\x3a\x8a\x50\x48\xde\xe1\x35\x41\x7c\xf5\xa7\xc0\x56\x97\x56\x8c\x88\xff\x43\x5f\x2a\x83\x20\xa7\xe0\xf4\x2a\x33\xad\x31\xb0\x2d\x8b\xfe\x40\xe7\x07\xe3\x85\xef\xe2\x68\xd5\x17\xb5\x26\xc1\xe9\xe9\xf8\x00\x8c\x80\x7d\x19\xc1\xd5\x0a\x45\xf4\x4d\xa7\xa7\xf6\xb7\x2b\x14\x2d\x7d\x16\x96\xc2\x30\xdd\x3c\x57\xfc\x43\xff\x9f\x1b\xb6\xe2\xf4\x23\xfd\x84\x43\x0e\x7a\xc8\xd6\x60\xff\x00\x0c\xa7\x80\xfe\x43\xa7\x25\xa6\xb8\x2f\x66\x48\xa7\x4d\x27\x0a\x4e\xed\x99\x1f\xc5\x44\xc8\x1f\xd3\x74\x99\xf7\x0f\xc0\x41\xfe\xb9\x43\xfe\xdc\x41\xc9\x73\xfc\x81\x47\xec\x81\x31\x1d\x82\x1d\xa1\x14\xce\x40\x2e\xda\xb4\x7a\xc1\xfe\xfb\xdf\x30\x59\x33\xbc\x26\x01\x92\xc7\xc1\xfe\x36\x64\xfb\x01\x4e\xf5\xfd\xa8\xdb\x27\xef\x35\x3d\x3d\x47\xca\x19\x78\x2c\xb6\x53\xd9\xda\xf4\xdc\xd0\x07\xa7\xc0\xa6\x47\x6b\x89\x08\x8a\x68\xaf\xa3\xe9\xf5\x54\x6d\x91\x0c\x99\x6f\xee\x5e\x80\x39\x42\x07\xdb\xe3\x21\xb0\x2f\x7c\x74\xd9\x17\x5f\x4e\x0b\x0e\xb7\xe9\x3d\xda\x6b\x0a\x7e\x9e\xb2\xc3\xf5\xe2\x02\x06\xf6\xf1\x0c\x06\x31\x02\xf6\x7a\x75\x01\x59\x03\x5b\x3f\x4d\xfc\x30\xb1\xb3\x84\x23\x5b\x16\xa1\x89\xed\xb4\x1c\x8d\x0d\x79\xbc\x13\xb0\xfb\x72\xf5\x59\x45\x14\x1c\x32\x08\x05\x7b\x05\xe7\xa8\x4f\x7c\xc2\x2a\xf1\x45\xf4\x96\xb0\x7e\x30\xe9\xa3\xdf\x6d\x60\xfb\x33\x7b\x7a\xfd\x17\xb0\x44\x04\x1e\x5f\x2d\x19\x39\x61\x34\xae\x8a\x62\x0d\x16\x67\xb1\x7d\x7d\xad\xc6\xd3\x90\x6b\xc7\x79\x50\x46\xf0\x92\x61\xc5\x7b\x67\x30\xf6\xdd\xbe\x17\xe1\x95\x87\x2f\xc3\xbe\x88\xf7\x31\x61\x2e\xe8\x2d\x1b\xf5\xf6\x05\x05\x52\xd7\x99\x16\x89\x7c\x0e\x23\xda\xc9\x22\xc9\xde\xfe\x58\x8b\xd4\xcd\xe2\x7c\x99\x8b\x42\xa9\xc4\x2d\x8b\x11\xbf\xfc\xeb\x7f\xf1\x6a\xfe\xef\x26\x62\x44\x01\xcb\xe0\x7c\xb1\x11\xff\x49\x39\x85\x26\x2d\x94\x71\x8a\x2a\x3e\x61\x97\xd3\xea\x28\x11\x3a\xcc\xd4\xb7\x3e\x65\xf5\xdc\x02\x82\x5a\xb1\xe3\x7b\xd0\x0d\xe2\xdb\xde\xf6\x15\xfe\xf8\xf5\xe2\x72\x78\x62\xdc\xf6\xdc\x9e\xa7\xdb\x34\x52\xb6\x69\x58\xb9\x4d\xc5\xdb\xb0\xed\xd2\xb3\x45\xdc\x62\xfd\xf7\xfa\x33\x1c\x2d\x6f\x7b\x17\x16\xcf\xc9\xef\xf3\x77\xbf\x5c\x9a\x2f\x5f\x92\x36\x66\xbb\x54\x51\x0b\x6c\x60\x2f\x51\x1c\xb3\xa2\xd8\x3c\x10\x98\xce\xc0\x26\x9b\x15\xca\x5f\xd3\xd1\x10\xd8\x6c\x8a\xf4\x96\x8d\x73\x52\x14\xfb\xd9\x47\x81\x17\x23\x62\x68\xa2\x36\x0b\xe0\x19\x62\xb2\xff\xe8\x10\xd0\x8d\xa7\x92\x2d\x7d\x27\x83\x56\xb2\x73\x72\x2c\xfd\x19\x45\x11\x13\x7d\x12\xe1\xde\x5a\xc0\xb8\xcf\xbf\x4d\xc4\x54\xf3\x5b\xd5\x37\xc7\x2b\x18\xaa\x83\x7b\x2d\x08\xcd\x68\xbf\xf0\xb1\x23\x60\xfb\xe1\x6a\x9d\x12\x27\x9e\x16\x03\x04\x95\x02\xf6\xb7\x70\x4d\xf0\x0c\xbb\xeb\x58\x92\x2c\x3a\xe0\x64\xa0\xa2\x95\xd2\x28\x27\x40\x2a\x63\xcc\x8f\x43\x0e\xdd\xf3\x2f\xd8\xc7\x03\x59\xc0\xd0\x8e\xa0\xe7\xe3\x79\x84\xd7\x2b\x65\x2d\x8b\x97\xee\x03\xdb\x55\xf3\xd2\x69\x0b\x97\x6a\x5c\x4f\x94\xbb\x79\x94\xfb\x7c\x08\x1e\x4f\xa7\x99\xbb\x5a\x57\xbd\xd2\xff\xcb\x1f\x0c\xf3\x36\x96\x6e\xe7\x28\xa7\xcf\x1c\x2a\x34\xa4\x60\x87\xb3\x3d\xf2\xad\xe6\xeb\xbc\x2f\xd7\x8c\x2d\xee\x98\x1f\x54\xd1\xef\x94\x7f\xc9\x2b\x55\x22\x2f\x7b\x68\xf9\xe7\x03\x65\x17\xe4\xea\x6b\xe3\x4a\x9f\x57\x06\x7a\x08\xec\x44\x37\xcc\x30\x33\xae\xa2\x25\x7a\x63\xf2\xc8\x01\x38\x10\xc7\x21\x5d\x8d\xe2\xf9\x66\x0e\x5a\x9e\xfd\x1d\xa6\xec\xaf\xe6\xe1\x4c\x37\x8e\xe9\x4d\xe9\x65\x6e\x7e\x25\xdf\xb2\x48\x8a\xe4\x67\x28\x96\xff\x91\x5c\x7e\xc1\x35\x86\xcc\x8a\xf0\xe6\xf5\xfb\x8f\xaf\x7e\x7d\xfe\xe6\xe4\xfd\xaf\x1f\xdf\xbd\xb2\x93\x65\xdd\x9b\xaf\x7d\x8f\xea\x2a\x6e\x30\x58\x90\x65\xf0\x7f\xa2\x75\x80\xfa\xf1\x0a\xb9\xfe\x2c\x55\x41\xe5\x75\x62\x84\x70\x81\x82\x95\x15\x62\xbc\x42\x21\x8a\xac\x10\x47\x68\x86\x22\x0e\xe5\xc6\x5a\x11\x86\xcb\x61\x03\xfb\xd7\xb3\x00\x86\xe7\xea\x90\x7b\x3f\x9c\xbc\xb2\xbe\xc7\xd1\x12\x12\x27\x59\xa8\x72\x92\xe2\x62\x0f\xf5\x91\xe7\xb3\x7a\x95\x82\xb0\xb0\x6c\x3f\x95\xb0\x24\x94\x26\xde\x84\x04\x7e\xe2\x56\x83\x73\xb4\xe1\x17\xbe\xec\xae\xbf\x5b\x07\x88\x51\x1a\x5b\xbb\xe7\xf2\x07\x20\xa9\x54\xda\x6e\xe1\x06\xa5\xa7\x2d\xe9\x33\xb1\x09\xd4\x21\x62\x29\x29\x49\x46\x39\x6a\x4c\x25\x76\x70\xc8\x5e\x3e\x6f\x47\xf5\x15\x02\x4f\xbb\x28\x5c\x06\xf5\xdd\x48\xe3\x98\xff\x42\xff\xfd\x4b\x10\x58\x73\x7a\xca\x20\x41\x16\xb4\x3e\x7e\x7c\xf9\xdc\xf2\x67\x2c\x89\xc5\x62\x1c\xd4\xf2\x63\x2b\x40\x33\x62\xa1\xe5\x8a\x6c\x06\x65\x77\xaf\xec\x1a\xeb\xb7\xd8\xd0\x4b\x96\xb5\x98\x58\x40\xe9\xbe\x01\x1b\x05\x31\xaa\xb3\x7d\x23\x60\x9f\xad\x09\xc1\x7c\x17\x1e\xd1\x77\xc6\x54\xe9\x29\xa0\x9c\x87\xca\x99\xf6\xe3\xb7\x91\x1f\x13\x3f\x14\xf4\x53\x7e\x2b\x5c\x55\xfc\xcb\x3c\xc1\x4d\x18\xb0\x6e\xfb\x9b\x2a\xaf\x56\x24\x4c\x46\x41\xe3\xf5\xd9\xd2\x67\xc7\xe9\x00\x9c\xee\x1f\xe9\xd7\x80\x85\xf1\xd8\xfc\xfd\xe9\xb6\xcb\x35\x7b\x0f\x2f\xa4\x20\x91\xdf\x06\x90\x5d\x9d\xfa\xcb\x61\x98\x6c\xbb\xf1\xaf\x57\x5e\xcd\xf1\xd7\x3d\x50\xe6\xbd\xe5\x23\xe1\xd8\x41\xe6\x85\x14\x92\x67\xc1\x40\x4e\xf8\xcf\xe5\x64\x44\xf0\x80\x03\xf5\x8f\xdc\x41\x4d\x8f\x85\x30\x1c\x1f\xa6\xf7\x16\xd8\x30\xc4\xe1\x66\x89\xd7\xb1\xbd\x9d\x08\x93\x1a\x10\xa9\xf0\xcc\x38\x4b\xdf\xf3\x21\xab\x4e\x25\x48\x87\x14\xb1\x29\xc7\x7a\x16\x21\x6b\x83\xd7\x56\xbc\x16\x1f\x2e\x61\x28\xbc\xac\x01\x22\x88\x13\x81\x67\x27\xaf\x2c\xe6\x10\x7a\xda\xc4\x4e\x9a\x19\x11\x93\xff\xfb\x71\x80\x4d\x96\x58\xb7\xa9\x11\x36\x47\xd8\xb2\x9b\x2e\x09\x32\x9f\x47\x7a\x12\xd2\x46\xb9\xa3\x40\xff\x39\xa0\xe7\x99\x3f\x22\x4e\x04\xfb\x67\x98\x3f\x18\xcf\x93\x8e\x0b\xc9\x76\xf6\xbc\x1e\xe4\xcc\xbd\x0d\xd6\x48\x6c\x62\xfb\x0d\xe0\xd3\xea\xab\x27\x23\x77\x24\x80\xfd\x6d\xaa\x93\x7d\xeb\x26\x67\x9f\x2e\xcd\x3e\x5f\xa1\x11\xff\x67\x5c\xc1\x6b\x72\x26\x0c\x40\x7b\x30\xcd\xbf\x9d\xb9\xba\x88\x8f\x64\xfe\xac\xd6\xd3\x57\x30\xe2\x36\x69\x9f\xa0\xa5\x6a\xb9\xf6\x67\x94\x9f\xfc\x2e\x8d\xdc\x2e\x5c\xf9\x04\x06\x0c\x54\x9a\x1d\x2d\x2a\x1a\xf5\x49\x04\xdd\x73\x1e\x51\x40\x5b\x43\x77\x41\xff\x09\x2f\xec\x94\x42\xa7\x66\xed\x90\xee\xab\x0d\x43\xaf\xb9\x21\x80\x6b\xf3\x5b\x99\x03\x42\xb8\xdb\xe4\x9d\x1a\xd6\x80\xff\x7c\xfa\xe7\x86\xfc\x72\xf4\x75\x3d\x9b\xcc\x11\x15\x72\xcf\xc4\xb8\xf9\x39\xa5\x7b\x14\xe7\x85\xcd\x44\x4a\x94\xb4\x92\x8b\x66\xc0\x5e\x44\x88\xee\x62\x8c\x02\xe4\x12\xc6\xa1\x4e\xed\x0f\x94\x92\xc5\xb6\x66\xf0\xb1\x3d\x77\xc0\xec\x2d\x84\xff\x98\xa5\xd8\xc3\xe2\x36\x53\x85\xdf\xd7\x1c\xc1\x3b\x2c\x84\x5e\xc3\x00\x22\xac\x48\xb5\xe6\xf7\x6b\x4d\x5a\xbc\x9e\x69\x34\x7e\xe1\x08\x56\xf2\xe7\xd2\x41\x64\x5b\xa5\xb2\x67\xde\xdb\x5a\x7a\xff\xfc\xb8\x2f\x06\x49\xff\xe9\x13\x6c\x73\x2f\x27\xbd\x29\xec\x5a\xb5\xb8\x2b\x21\xbc\xd8\xe6\xaa\x50\x3d\xe8\xb6\xaf\xca\xfa\x9f\xde\xc9\x7f\x2e\x67\xf1\x56\x86\xb3\x98\x45\xf1\x48\x0b\x5a\x42\xe2\xa4\x0e\x96\xbf\x6f\x70\xb5\xea\x5f\xf8\xe8\x52\xf3\x9d\x37\x72\xb6\x96\xb1\xb0\x10\x13\x55\xdd\x6d\xe4\x71\x4d\x9d\xa2\xd0\x0d\xf6\xd4\x9e\xe2\xe4\x45\xc9\x74\xbf\x15\xf3\xfd\x56\xce\x54\x98\x49\x18\xe7\x7a\xc4\xff\x39\x32\x30\x30\x83\xe9\x01\x3c\x02\x8f\xc1\x51\x91\x9f\xb6\x6c\xb6\x67\x11\x82\x9e\x1b\xad\x97\x67\x71\x53\xae\x2d\x15\x21\x5c\x66\x7c\x4a\xd4\x50\x3f\x35\xb2\x64\x0c\x14\xa9\xf6\x2c\xef\xad\xc1\xc2\xf6\x2c\x08\xac\x0f\x92\xa4\x15\xda\x0a\x8c\xea\x5a\x29\xe3\xae\xb9\x4c\x0b\x94\xba\xb3\x9b\xaf\xd0\x62\x54\xa9\x29\x0e\x53\xe5\xab\xa5\xc6\x68\x29\x5e\xff\x4c\x7f\x25\x42\x4a\x4e\xcb\xca\xf4\xf8\x1a\x5d\x72\xa9\xba\x89\x6e\xb3\x8b\x1d\xe0\x12\x4f\xed\x43\x6a\x56\x7e\xa4\x86\x7c\xb0\xb5\xe2\xb2\xda\xf4\x85\x90\x6e\xb6\x70\x4b\x3f\x5c\xaa\x3b\xb1\x55\xb4\xf8\x1f\x4d\x85\xe3\x13\xbc\xda\x58\xb2\x83\xfa\x52\x69\xa9\xee\x61\x50\x33\x46\xaa\xc6\xc9\x2b\xda\x14\xe8\x15\x27\xf4\x57\x3e\xa2\x12\x43\x4b\x17\x2a\xde\x3a\xfe\x82\xf5\xbb\xf2\x35\x96\xaa\xdc\x3a\x2e\x5e\xe8\x8f\x71\xf9\x32\x9b\x4f\xc1\x2d\xe9\x70\x2a\xcd\x5b\xd5\xf5\x48\x00\xae\xb6\xd5\x35\xbc\xd7\x5a\xf7\xba\x7a\x75\x66\x33\x4c\x96\x15\x7e\x7e\xad\x8f\x71\x99\x16\x5d\x39\x90\x54\x49\xad\x35\x90\x71\x4d\x13\x4f\xf9\x29\xd8\xa1\x36\xdb\x05\x45\x4f\x62\x8d\x5a\x30\xd5\x27\xc0\x96\x72\xb0\x70\x20\x67\x5f\xbf\x6d\x74\x19\x89\xd6\xba\x06\x90\x51\xbc\x53\x3d\x80\xa9\xe0\xaa\x1e\xdd\x42\x19\xa0\xc2\xfc\x36\xca\x80\xcf\x32\x25\x6f\x59\x1b\xf8\xf7\xf7\xff\xde\x3f\x9c\x1f\x15\xb8\xd1\x65\x65\x22\x9b\xd7\x8f\x4e\x3e\x20\x2f\x95\xf9\xc5\x34\x92\x7f\x13\x37\x4a\xe2\x31\x54\xf5\x06\x14\xd2\x2f\xce\xd1\x86\x61\x9b\x9d\x04\x0c\xab\xb5\xa1\x3a\x21\x82\x64\x55\x9f\x2d\xf7\x92\x7d\xe0\x4f\x27\xf5\x94\x58\x68\x68\x13\xa9\xc1\xd4\xf3\x51\xd6\x10\x6b\xdb\xba\xe2\x4a\xc5\xdc\x9e\x78\x1b\x38\xb5\x79\xb0\x35\x3b\xad\x4e\xd6\x22\xaf\xf7\xb3\x84\x21\x9c\xb3\x97\x67\x7a\xfc\x29\xf9\x81\x77\x2c\x1e\x7a\x2c\xc3\x5d\xb5\xb7\x30\x22\xa8\x7e\x93\x98\xff\x2b\x5e\x9f\x2e\x93\xf2\xea\x13\xf6\x25\x7f\x6d\xa6\xdf\x7c\x87\x22\xa8\x39\xb5\x00\x08\x39\xcd\x24\x0f\x1b\x56\xfb\x8f\xae\x16\x32\x36\x40\xff\x95\x06\xce\xc3\x5a\x9a\xe1\x88\x3e\x01\x46\x07\xb4\xbd\x4e\xa2\x77\xa2\xf4\x14\x2a\x3c\x92\x78\x53\x21\x8e\xab\x71\x26\x4f\x5f\x36\x18\x21\x73\x3c\xb5\xd8\x26\x8b\x60\x02\x4d\xfc\xb0\xc4\x65\xa7\xfa\x42\xed\x19\x33\x98\x12\x8c\x83\x33\x18\xf5\x09\x9e\xcf\x03\x64\x1b\x03\x01\x2a\xd9\x5d\xf7\xea\x8b\x3a\xea\x02\x67\xfe\x63\xd5\xd0\x25\xd8\x8f\x16\xd4\xa3\x48\x1f\xf2\xd7\x54\x9a\x48\xbf\xe9\x7a\xa6\x62\x45\x9b\x2b\x6a\xf9\xb8\x99\x2c\x79\x1a\xb6\xd0\xda\xc4\x88\x63\x04\x23\x77\xd1\xa7\x03\xcb\x29\x6c\x38\xe4\xbf\xb2\xa0\x01\x49\x81\xe8\xf7\x2b\x22\x33\x13\xb2\x79\x07\xe3\x69\x26\x14\x4f\x88\x6e\xd9\x1c\x04\x95\xb8\x25\xce\x70\x11\x15\x31\x10\x5f\x08\xba\x3b\x06\x2a\xfd\x4b\xbf\x13\xd6\xe4\x5a\x2f\x3c\xa8\xf9\x42\xa3\xf5\xb3\x50\xe0\xeb\xe2\x54\xb4\x10\xf6\x24\xe5\x64\x0b\x0f\xcf\x02\xd4\x8f\x95\x68\x57\xcf\x8f\x57\x90\xb8\x0b\x26\x49\x7c\x4b\x50\xa4\x9b\xdc\xd9\x41\xb7\xa1\x1a\x9f\xf1\x24\x9f\x08\x93\x59\x75\x26\x4c\x68\xee\x6f\x90\xa4\x84\xe4\x65\x83\xe2\xc7\x0d\xc2\x82\x96\x76\x32\xae\x1f\x9d\x5b\x53\x96\x66\x8e\xe3\xe6\x72\x34\x77\x5e\xac\x03\x18\xf5\x5d\x1c\xd0\x69\xa8\xfe\xb6\x9c\x1f\x83\xd1\x8a\x14\xb7\x23\xd1\xdc\x9a\x25\xbc\x34\x50\x45\xdb\x99\xdd\x54\xe2\x49\x09\x47\xa3\xc8\xc5\xfc\x43\x49\x38\x9b\xe9\xa1\x9a\x16\x98\x5a\xb3\x8d\xf0\xe5\x56\x53\xf5\x4a\x55\x6e\x13\x3b\x31\x70\x12\xe1\x56\xd8\x1f\xb3\x14\x28\x1e\xaf\xa3\x5b\x63\x47\xc9\xaf\xa9\x81\xb1\x6c\x41\x2b\xd6\x3a\x3b\x6a\x33\x43\x48\x2e\xec\x81\x12\x16\xa8\x4a\xbd\x85\xac\xa1\xb6\xf1\x54\x1d\x55\x4c\x22\x1c\xce\xed\xfc\x94\xc5\xab\xab\x83\x3e\xaa\x0c\xab\x56\x59\x44\x66\xc3\x77\x65\x8d\xb0\xa5\x4b\xdf\xe5\x89\x6d\x21\xd5\x64\x7a\x5f\xe1\x15\xbe\x40\x51\x7f\x89\xc2\x75\xd2\x3f\xfa\xb4\x82\xa1\x27\x98\x70\x12\xd5\x69\x7f\x7b\x8e\x36\x67\x18\x46\xde\x33\xd7\x45\x3c\xe8\x2f\x5e\x9f\xd1\x27\x35\x2a\x65\x3c\x36\x47\xd2\xad\x22\xe9\x30\xd3\xef\x99\x9f\x2f\xa7\xd1\xe8\xb6\x98\xc7\xd9\x27\xb9\x73\x50\xd7\x7f\x64\xd9\x62\x6e\xcb\xb3\x13\xbb\x53\x3b\xca\x58\x73\xf5\x93\x3c\xa4\x76\x96\xba\x9f\x70\x84\x0c\xaf\xad\x79\x3a\x6a\x8e\x91\xed\x6b\xcb\x01\xe6\xbc\x47\x69\x14\x77\x88\x43\x54\xd7\xc0\x98\xd0\xbc\xf4\x71\x3a\x2a\x66\x17\x48\xc2\x54\xcf\xa4\xc9\xa1\x3f\xda\x96\x3e\x8e\x81\xfd\xc2\xe3\x11\x65\xa5\xf1\xd3\x76\x51\xb8\x56\x21\xdd\x13\xce\x83\xfd\x43\x30\xa2\x82\xf1\x7b\x56\x71\x5d\x1f\xc2\x56\xd4\xaf\xbb\x05\x57\x93\x15\xb8\xa6\xa5\x5a\x06\xe8\x7c\x9e\x4c\x81\xbc\x35\x5a\x4c\x76\x93\x2d\xb2\x59\x60\x2f\xb3\xfe\x08\x1b\xc3\x48\xdd\x85\xf7\x04\xaf\xac\x35\x83\xd9\xa9\xda\x8b\xb2\x8c\x01\x7e\x84\x2b\xa7\x6e\xea\x62\x98\x71\x80\xc0\x00\x45\xc4\x92\x30\xbf\x75\xfa\x2c\x8b\x37\x2d\x7a\x42\xd1\xc3\x85\xfc\x54\xf3\x31\xcb\x92\xe6\x6e\xbe\x33\xd5\xef\x28\x5f\x53\x7d\x30\x75\x3c\x02\xf2\xbf\x42\x77\x50\x9c\xec\x69\xd6\x2b\x64\x7d\xa0\x7f\x5f\xfa\x41\x40\x47\xcf\x1e\xc2\x6b\x32\xe8\x62\x0e\x4d\x9a\x0d\x81\xbd\xae\x93\x8d\xa1\x3f\x92\xdc\x37\xba\xd1\x94\xdd\x45\x3c\xc8\xb2\xee\x7a\xc9\x7e\x94\xf8\xd8\xe2\x3b\xe3\x72\x4b\x69\x01\xbf\xa3\x2a\x4e\xc2\xcf\xb8\x8b\x2a\x9b\x34\xa1\xbc\x45\x0c\xef\x95\xbc\xc9\x0d\x8e\x44\x93\xb3\xa3\x84\x0f\xd4\x5f\x8c\xb6\x44\xa8\xae\xc7\xa5\xd5\x9c\x6a\x35\xab\x4b\xaf\x1a\xb1\x97\x76\x32\xea\x4d\xf3\x84\x75\x8c\x76\xc6\x10\xaa\x9d\x78\xd6\x3d\x27\x10\xff\x49\x4e\xb0\x8e\xf3\x42\x62\xee\x05\x37\xce\x06\x0c\x51\x01\xf7\x84\xbe\x0d\xa1\x17\xb1\x07\xf5\xa8\x7c\xbd\xfb\xd3\x68\x29\x6f\x84\xc4\x67\x68\xca\x9f\x86\xbe\x9b\xec\x02\x99\xf5\x6b\x49\xd3\x0b\xc2\x1d\x4c\xb4\x7a\x6c\x3a\x9f\xd5\xf1\x47\x31\x0a\xbd\x13\x19\x83\xa4\x1c\x4f\x25\xb7\x61\xcd\x21\x55\xaa\xcf\x64\x3d\x4d\xeb\x51\x4e\xd3\x2a\xca\x77\x69\x9e\xab\x5b\x67\xc5\x1b\xd3\x84\x66\x97\x20\x63\x93\xe8\x9a\xb7\x56\x66\x9a\x64\x47\x7d\xcf\x5e\x29\x7b\xe5\xcb\x76\x07\x39\xac\x9a\x5a\x75\xcf\x60\xf3\x17\xc2\x14\x64\x56\x9b\xeb\xa6\xc9\x5b\xf5\x18\x6f\xed\xcb\xd5\x68\x95\x6f\x84\xf7\xe6\xc9\xce\x9f\x9c\xfd\xe6\x5b\x3e\x01\xa3\x21\xa5\xa6\xc5\x31\x9b\xb5\x2d\xf6\xd9\x86\xe6\xbc\x00\x73\xdb\x03\x90\x8d\x11\x31\xb7\x33\x85\x14\xda\xd5\x96\x60\x96\x96\xdd\xd2\x49\xc9\x9e\xed\xb3\x86\x49\xc7\x30\x08\xf0\xe5\x2b\x3c\xf7\xd9\x4d\x21\xd1\x1a\xdd\x4d\x0f\xe4\x62\x9c\xb9\x5b\x66\xf1\xa3\x69\xc4\x43\x23\xc3\xee\x6b\x4c\x15\xa5\xd8\x9a\xe1\x75\xe8\x6d\x61\x0c\xf8\x17\x0a\x5c\xbc\x44\x94\x3f\xd0\xfe\xee\x9a\x3b\xea\x0c\x7b\x8d\x4f\x98\x55\xc2\x38\x6f\x71\xa7\x2e\x17\x28\x42\x7c\xbf\xac\x25\x24\xee\x82\x5b\x3c\x21\xb1\x78\xac\x0a\xb0\x70\xc4\xf8\xf5\x12\x6e\xac\x10\x4b\x70\x68\xe6\x18\xa3\xdb\x73\xe1\xa3\x4b\x8b\x2c\x10\xef\x8d\x36\x84\x11\x12\xcf\xd2\xae\x66\x38\x1a\x6c\x71\x10\x3e\xb0\xe1\x79\x38\xfc\xef\x5f\xe8\x88\xd0\x52\x60\x58\xc3\x70\x23\xde\x88\x48\xad\x21\xca\xc6\x45\x83\xd9\xc5\x59\xaa\xd5\xac\x56\x8c\x73\x65\x5c\x4c\xeb\x30\x6b\xe3\xcf\x63\x19\xa5\x6c\xc0\x5d\x2b\x4d\x5f\xe4\xb5\x6b\xd5\xf0\xe5\x24\xe2\x69\xb9\x4e\x63\x72\xbf\xdb\x88\x78\xd9\xd8\xe6\xa8\x55\x90\xf4\xc3\xf5\xf2\x8c\xc5\xd8\xa4\x01\xcf\x73\x22\xa3\x9e\xf9\x63\xfd\xb3\x8d\x4c\x42\xe6\xdd\xc2\x33\x26\xcf\xc7\x38\x22\xfc\x37\x99\x7a\x2c\x00\x9b\xd3\x64\xe3\x78\x7d\x96\x24\x7e\xb2\x10\x9f\x73\xb4\xe9\xb3\x30\x25\x3a\x84\x00\xb5\x89\xa5\x66\x82\xda\x36\xc1\xd4\x32\x6b\xf4\x6e\x80\x93\xed\x9d\x2d\xbe\xfe\xf4\xc3\xd7\xbf\xb7\xc9\xb1\x0c\x70\xac\xe6\x5a\xd6\x47\x27\xb3\xa5\x77\x3e\xf0\xdd\x8d\x5c\x06\x4e\x6d\xf9\x1f\x2a\x28\xaf\xd4\x1c\x4f\xf7\x0f\xb8\xb7\xfc\x80\xbb\xdb\x1b\x04\x3a\xd9\xe9\x2d\xaf\x41\xe7\xe5\x02\x19\x50\xc1\x2a\xef\x94\xa4\xe8\x07\xd9\x88\x6f\x4a\xd2\x9f\x34\xcf\x0b\x13\xc3\x65\x27\xbb\x1f\xf8\x71\x3a\x5c\x17\xae\xc4\x65\x4b\x23\xa9\xec\x67\xab\x55\xe0\x23\x8f\xd2\x3f\x4a\x9d\x67\x98\x4a\x31\x8c\xb6\xb3\xa8\xd8\x63\x81\x32\xd4\x30\x42\xaf\x4c\x79\xcd\x4e\x39\x9d\xe5\xce\x40\x69\xd4\xb5\x95\x91\xbc\x63\x23\x28\xcd\xb8\x08\x94\xe6\x50\x79\xac\x03\x50\x9a\xe1\xd4\x0c\x4a\x63\x48\xb4\xa9\x09\xea\x52\xc6\x25\x9b\xad\x93\x61\x15\xda\x4d\x4c\x45\xab\x69\x3f\xb1\x96\x68\x35\xda\x0a\x2b\x68\x35\x75\x53\x99\xba\xbf\x99\x9a\xd8\xd8\x29\xd4\x0c\x47\x5b\xfb\x82\xf2\x10\xeb\xe6\xc3\x0d\x75\x5b\xc5\x61\x06\x67\xc6\xb0\x97\x2d\x00\x66\x4c\x5a\x66\xed\xc5\x69\x96\x9c\x68\x3e\x54\x2a\x48\x54\xc7\x02\xbc\x98\xc1\x12\x7b\x30\xc8\x1e\x33\x1c\x72\x7e\x3c\xd5\xa0\x5b\x8d\x69\x7f\x5b\x05\x4c\xed\x4c\xa3\xcd\x1c\xb2\x9c\x6e\x2b\x40\x08\xfd\xb0\x46\xb6\x64\xc3\x48\xb3\x9a\x73\x6b\xab\x00\x66\xe7\x55\xcf\x82\xfa\x21\xa5\x05\x96\x1f\x5b\xa2\x9c\x42\xc0\x56\x60\x1d\xa3\x81\xf5\x72\xc6\x48\x88\xbb\xc0\x98\xa5\xf1\x1a\x88\x08\xb0\x7c\xc2\x83\x56\xce\x90\x15\xa1\x25\xbe\x40\x9e\x35\x8b\xf0\x32\x23\x1e\xc8\x91\x19\x02\x53\x0f\xb3\x29\x5b\xec\x58\x66\xc0\x12\xc6\xc0\x3e\x6e\x6b\xea\x2a\x13\x72\xa4\xb6\xf0\xad\x40\x7a\x14\x62\xe0\x68\x9a\x42\x3e\x96\x20\x30\x6d\xb1\xee\x9c\x4a\x5a\x2e\x0c\xa9\x6a\x79\x86\xac\x75\xe8\xe1\x10\x0d\x78\x5f\x55\x49\xc5\xb5\xe6\xbd\x8b\x13\xba\x45\xc4\xac\x36\xee\x8e\x28\xbc\x21\xe3\xf9\x3f\x28\x06\x56\x33\x6f\x4e\xdb\xac\xe7\xcc\x60\x0c\x3e\xbe\x9a\x46\xe2\x26\x19\xf0\xad\xd4\xf2\xba\xd1\xdc\x37\x80\x60\x56\xdf\x4a\x72\x47\xd0\xcd\x2a\xa0\x95\x52\x28\x33\x41\x4a\x44\xc2\x6e\x6a\x65\x48\xe1\xcd\x84\xee\x99\xa8\x9e\x5b\x66\x5d\xeb\x8a\x7e\x37\x26\x03\x91\x81\x7a\xbb\xc5\x04\xc2\x1f\x5f\x1f\xc0\x17\x05\x35\x89\x42\x4c\x7c\xd7\x00\x55\x7e\x04\xe4\x4f\x49\x29\x17\xa1\xff\xab\x69\x16\xfc\x20\x0b\xb0\xf3\x53\xe1\xbd\x6e\x96\x67\x2b\xb3\x81\x7f\x48\x25\x91\xa6\x09\xbb\x8a\x08\xb2\xaf\xf2\x8c\x9f\xd4\x84\x90\x56\xb9\x8d\x72\x70\xdf\x49\x51\xa2\xfd\xd0\xcc\xdc\x8c\x71\xaf\x79\x80\xcf\x60\xa0\x2c\xac\x40\x77\xf1\x63\xeb\x6c\xed\x07\xc4\xf2\x43\x82\x2d\x5e\xef\xe9\xbf\x7f\x89\x2d\xbe\x11\x56\xbc\x89\x09\x5a\x0e\xac\xff\x50\xa9\x02\x86\x16\x5c\xad\x82\x0d\x17\x27\x18\x4c\x33\x0c\x64\x4b\x82\x85\x45\xc1\x9a\xe1\xc8\x9a\xad\x83\x40\x58\x5e\x07\x7c\x00\xab\x44\x6c\xa1\xec\x13\x79\x3e\x33\xbf\x59\x38\x12\x42\x08\x2f\x44\x78\xb6\x26\xec\x3d\x67\xc8\xf2\xe7\x21\x8e\x90\x67\x9d\x71\x5b\x2e\x7b\x33\x15\x4c\x7c\xa6\x1d\xc1\x50\xe0\xd3\xc4\x03\xeb\x15\x82\x51\x68\x2d\x71\x84\xa8\x20\x84\xd7\x91\x31\xf5\x68\xa4\x4b\xc1\x0d\x50\xa9\xd9\x02\xf9\x61\x3f\x05\x77\x9b\x4e\x8b\xd1\xa6\x13\xa8\xea\x22\x94\x6a\xb1\x3f\x1e\x76\x59\xdd\x32\x59\xf9\x2a\x39\x3c\x03\x75\x57\x1b\x1c\x28\x03\xfd\xcd\x99\xa2\x72\x41\x0c\x8c\x2e\xf8\x4c\x49\x65\x1b\x62\x34\xcc\xb1\xa7\x4c\x9e\xf1\xe4\x47\x0d\xdd\xb9\x20\xe9\x2d\x69\xec\x19\xa4\xc9\xc2\xcc\x2e\xf3\x2b\x7e\x66\xe5\x2f\x9f\x43\x02\x5d\x14\xb2\xd9\xd6\x7e\x5f\xaa\x92\xd9\xc0\xca\x82\x69\x2b\x60\xb7\x85\xa0\xf4\xe6\x11\x3d\x47\xb1\x1b\xf9\xab\xec\x66\xd6\x99\xbb\xf6\x68\xee\x85\x55\xbc\x6e\x07\xd6\xc0\x83\xa6\x68\x85\x1c\xda\x53\xf0\x51\x7e\xd3\xf7\x3c\x65\x73\x80\xfd\x1b\xf6\x53\x96\xbb\x0d\xe3\xa4\xec\xae\x13\xc6\x79\x17\xe0\x0c\x4f\xde\xfe\xf8\x9f\x7f\xad\x42\x62\xe6\x9b\x6d\x80\x45\xa4\xa9\xe1\x51\x23\xb3\x82\xfe\xec\x41\x3b\x93\x84\xad\x5d\xb0\x43\x96\xb9\x8b\x2e\x85\xda\x69\x1b\xeb\xc4\xd4\x16\x7a\x0d\x7d\xbf\xf0\x7c\xd2\xa4\x73\x83\x23\xab\xe8\x8d\x86\xb7\xf1\x0c\x40\xca\x20\x49\x84\x35\xc0\xc0\x0a\x89\x35\x8f\x13\xc2\x4a\x91\xf0\xda\x7d\x2c\xe1\x10\x85\xd2\xf2\xca\x34\xd9\x47\xdc\x93\xf1\xb8\x89\x4d\xa6\x86\x1e\xd8\x16\x4e\x44\x35\x68\xc6\xeb\x60\x4f\xdc\x6e\x33\xa6\x88\x44\x12\x49\xb1\x45\xc4\x99\xd5\xb1\x45\xc6\x9a\xc6\xb1\x9f\x28\x63\x06\xc5\xbd\x40\xa9\x00\x79\x75\xab\x8e\xb5\xe6\xae\x60\x4f\x1e\x95\x62\xc6\xea\x20\x94\x6f\xd3\x9f\xff\x80\x30\x94\xb7\x40\xa7\x2c\x81\x32\xc9\x69\x47\x5d\x52\x94\xc7\x76\xcc\x54\x2e\x3b\xd5\x01\xf5\x4c\xaa\xcc\x96\xf6\xde\x9f\xfd\xc6\xa3\xd6\x9e\x57\x28\x66\x13\x1a\xd9\x80\x70\xa6\xff\x65\xe8\xe5\x6d\x83\x79\x36\x44\x03\xc9\x9e\xd3\x5b\xd8\x70\xb6\x14\x0a\xea\x5c\x22\xb7\x48\x4e\xb2\x0d\x27\x35\xf5\x9b\x83\xb5\xdb\x12\x94\xaf\x3d\xe4\x9d\x60\x31\x94\x99\xe0\xc4\x1c\xa3\x83\xde\x69\x95\x52\xfd\xf8\x99\xca\x50\xfd\xf8\x85\xe0\xa8\x69\x0c\xc9\x16\x12\xe7\xb6\x48\x79\x49\x47\x77\x02\x32\xef\x3b\xf7\xe2\xec\x67\x1f\xfe\x6c\x96\x38\x79\x78\x4d\x2c\x42\x69\x74\xc4\x3c\xfa\x0d\xff\xc0\x42\x6e\xf8\xc7\x16\x12\xaa\xf4\xcf\x8f\x9a\x91\x7e\x83\x60\x36\x1e\x6b\xb8\xed\xed\x25\x4c\x53\xb7\xad\x05\x3e\x01\xc3\x37\x54\x89\xc5\x61\x3a\xd3\x73\x3f\xf4\x64\xb5\x60\x43\xd4\x02\x87\x5b\x13\x03\xd9\x57\xbe\xb4\x41\x0a\x11\x34\x7e\x52\x50\x1c\xfa\x90\xa3\x43\xe4\x9e\x3f\x28\x7a\xbe\x2e\xda\x9d\x61\x52\xe3\xa4\xb4\xf7\x78\x0a\x52\x8c\x9e\xf6\x88\x59\xcd\xc4\xe4\x91\x90\x93\x47\x8d\x04\xe5\x1d\x8b\xca\xbb\x10\x96\x1f\x67\xf0\xd9\x01\x0f\x74\x37\x7b\xb9\x0a\x02\xb2\xc1\x93\x76\x21\xd4\x1d\x8b\x7f\x65\xe2\x41\x89\x08\x50\x3b\x80\xb2\x7a\x67\xe1\x45\x73\x11\xa0\x94\x60\xd5\x88\x5f\x52\x98\x2d\x2f\xda\x31\x62\x7e\xf7\xda\xde\x95\xae\x26\xdf\xda\x13\x58\x61\x4d\x1d\x19\xb5\x99\xae\x10\x02\xbb\x5c\x81\xd6\x48\x81\x8f\xa6\x06\x48\xf7\xad\x91\x02\x0b\xe9\x85\x01\x3b\x30\x05\x0c\xd4\xc0\x03\x39\x97\xa6\xdf\x89\x4f\x09\xd6\xed\xb7\x38\x14\x9f\x53\x0f\xb9\x1e\x8f\xa2\x01\xfa\x8d\x46\x79\xfb\x67\x0d\x08\xc1\x9a\x7d\x56\xe0\x12\x2a\x28\x84\x8a\x65\x20\xcf\x3b\x59\x6d\x7d\xca\x40\xed\x5c\x70\x4d\xc1\x8b\x2b\xf0\x09\xe5\x8b\x5f\x0a\xc8\xc3\x9a\xd3\xd9\x6f\xd8\x6b\x63\x00\xc4\x2e\x0f\x7d\x6b\xd5\x47\xe7\xf6\x9a\x3c\xf3\x84\x76\xcc\x0f\xab\x9d\x75\xeb\x37\xae\x76\x60\x78\x5b\x36\xfb\x41\x7b\x97\x12\x14\xa6\xc1\x01\xb6\xbc\x79\xad\xd0\x1e\x87\xd9\x41\x1d\x68\x78\x8b\xa3\x9d\x80\x13\xb6\xc0\x5c\x2c\x24\x31\xe6\x98\x1a\x1c\xa6\xe1\x1c\x49\x6d\x18\xc3\x85\x38\xa4\x37\x3f\x0f\x3a\x56\x10\x76\x53\x3f\x22\xaf\xc6\x22\xb4\xca\xea\xb2\x76\x9e\xd9\xb5\x53\x81\x2a\x27\x58\x15\x67\x78\x6d\xc3\xa9\x1a\x42\x77\xb1\xdc\x21\xc9\xee\xb7\xce\xf4\xb2\xf4\x6c\x2f\xa9\xd5\x35\x04\x1a\x30\x8a\x0f\xc5\xe7\x70\x3b\xa8\xb9\x6d\x82\xff\xec\xca\x0c\xb0\x5b\xdb\xc9\xce\x32\xc1\x92\x1e\x3b\xcf\x06\xb3\x2a\x32\xc2\xe4\x9b\x6b\x0d\x35\x1d\x66\xb3\xac\xb0\x1b\x3f\x6f\x5b\x86\xf2\x65\xbc\x13\xdc\xfd\x8f\xdd\xb8\x1f\xf8\x7a\xa1\xec\xe2\xf4\xe3\x0a\x70\xf0\xe2\x90\x0a\x17\x2f\x97\x30\xf4\x58\x50\x85\x60\x41\xd9\xca\xde\xed\x8a\x7a\x3f\x57\xa3\x28\x2c\x1c\x5a\xab\xac\xbb\xa4\x64\x31\x2a\x7e\xce\xac\x55\x80\x60\x14\x76\xbe\x58\xaf\x5e\x3c\x7b\xf7\x3a\xb7\x5a\x8c\x55\xc7\xc8\x5d\x47\x3e\xd9\xf4\x43\x44\x2e\x71\x74\xee\x87\xf3\x3d\x66\x5d\xf6\xc3\x79\x1f\xba\x81\x21\x20\x65\x9b\xa5\x7c\x87\xa0\xc7\xee\x2d\x8b\x7f\xd9\x66\xfd\x1a\x1c\xfc\x2d\x52\xcd\xbb\x09\x2c\x3c\x30\x3a\x38\xf6\x5b\x48\xe3\x3b\xcb\xae\xcc\x9a\xc9\xf5\x9c\x47\xa9\x0c\x8a\xea\x24\xb9\xe8\x46\x25\xac\x91\x17\x60\xc5\x4b\xfa\x3e\x56\xd2\x5e\xc9\x98\x0c\xd8\xa9\xe0\xc9\x99\xf4\x5b\x96\x9a\xc9\x74\x2d\xc0\xf5\x2e\x51\x7d\xb2\x86\xb1\x3d\x49\xd3\x5c\x45\xc8\xe3\x80\x39\x4a\x11\x16\xf6\x5e\xcd\x7e\x1f\xaf\x02\x7f\xab\x68\xca\xad\x13\x30\x59\xed\xd0\xbb\x91\x7d\xf9\xc3\x8f\xaf\x16\x6f\xbf\xfe\xf7\xdb\xdb\xc8\xbe\xa4\xcb\x60\xce\xbd\x94\x96\x49\x76\x12\x64\x26\xe6\x54\xcb\xc0\x1c\x6b\x89\x98\x79\x03\xa5\x6d\xce\xb7\xd2\x9c\x6a\x89\x86\x3d\xcc\x19\xb8\xeb\xe4\xd0\x34\xcc\xa2\xcc\x8b\xd2\xff\x62\x32\x85\x1f\xf3\x08\x47\xba\x1c\xd6\x3a\x46\xde\xd3\x1c\xb5\x2b\x12\xdf\x2c\x26\xc5\xfe\xf7\x2f\x11\xb2\x70\x18\x6c\x2c\x16\xe3\x48\xb0\x15\x2f\xf0\xa5\xe5\x87\x3c\xc5\x99\x72\xaa\x19\x8e\xb8\x8c\x14\xf9\x4b\x18\x6d\xac\x34\x5a\xca\x82\x21\x27\xc3\x22\xbd\x43\xf9\x49\x84\x52\x52\xdd\x2d\x91\x68\x58\xcf\xe8\x02\x45\x1b\xcb\x85\x31\x12\xd2\x5b\x3a\x7e\x3f\x66\xa1\x93\x3e\xf2\x06\xa6\x70\xb2\xc6\xf9\xa4\x69\x9d\xe0\x5d\x67\x8d\x26\x87\xe0\x3e\x6d\xf4\x3e\x6d\xf4\xae\xa7\x8d\xe6\x29\xd7\x5d\xc8\x1b\x7d\x87\x03\x74\x9f\x35\x7a\x9f\x35\x7a\x9f\x35\xaa\xea\x39\x8c\x2d\xfe\xa9\x72\x46\xdf\x09\x49\xa0\x61\xc6\x28\x7d\xec\x3e\x5f\xb4\xe5\x9a\xdf\xe7\x8b\xde\xe7\x8b\x96\xec\x54\x59\xbe\xe8\x7d\xc6\xe8\x17\x9f\x31\xca\x14\x65\x73\xda\x28\xb0\x61\xe8\xb5\x30\x77\x28\x46\x8a\xed\x6d\x1d\x77\x21\xfb\x65\xef\xec\xc7\x78\xfd\x62\xf3\xef\xee\xb2\x5f\x46\xad\x22\xc3\xf5\x67\xf7\xf5\x2a\x3b\x8d\x24\x2c\x5b\x0f\x24\x4c\xd2\x54\x28\x23\xdd\x2a\x03\xc6\xd0\xf1\x6b\x74\x59\xbf\xdf\xd6\xc9\x2f\xdb\xc5\x42\x36\x8e\xea\x3b\xe0\xd6\xa3\xc3\x3b\x9a\xfc\x42\xef\xce\x7d\xea\xcb\x56\xa9\x2f\x8f\xd4\x60\x31\x46\x8b\x0a\xf2\x5e\xde\x89\xdf\xfe\x40\x49\x2f\x5d\x90\xa7\xd6\x46\x31\x4b\xa4\xbd\xd0\x75\x6d\x29\x42\x24\xb4\x6c\x7b\x2a\x93\xfe\xf7\x65\x67\x8a\x28\xa3\x51\xe2\x3c\x39\x8f\xcd\x65\x54\xb4\x97\x63\xca\xdc\x41\x89\x70\xc1\x24\x11\x3d\x33\x42\x54\xb9\xdf\x45\x82\x44\x2a\x47\x6c\x2f\x8d\xdc\x89\xd4\x88\x57\x47\xfb\xa3\x35\xf9\xe9\xbc\x40\x1c\xe1\x01\x96\x49\x16\x84\x9a\x19\xb1\x4d\x16\x44\x8b\xfb\xac\x73\x68\x16\x08\x6f\xbf\xcb\x50\xd2\xed\x52\x20\x78\x9f\xad\xd9\x7e\x8e\xee\x1d\xaa\xa6\xd2\xc7\x53\x89\xb0\xd7\x32\x6d\xa0\x79\xae\xc0\x50\x84\xe5\x35\x88\xcb\xdb\xa1\x54\xd1\xb5\x4c\x71\x28\xa5\x08\x35\x51\xe0\xb1\x41\xa6\x30\x68\xa1\x80\xf2\xe6\xc7\x77\xa0\x54\xbf\x39\x23\x20\x47\xe6\x6b\x82\xaa\xec\x30\x0b\xc0\x74\x61\x2b\x34\x82\x7c\x06\x40\x5d\xc5\xb5\x8b\xe9\xb6\xb0\xe8\xd8\x15\x11\xff\xe3\x9c\x10\xd7\x55\xb8\x7f\x17\x13\xbe\x63\x61\xfe\x86\xeb\xde\x36\xc0\xbf\x56\x28\xff\x51\x9b\x48\xfe\x7a\x5d\x3e\xa9\x1f\xc7\x7f\xe7\x2b\xfe\x17\xb1\x27\xcd\xad\xb7\xcf\xcb\xa4\x07\x68\xfb\x30\xf7\xcc\x69\x68\x1f\x76\x9e\x0e\x67\xbc\x4d\xd0\x79\x8d\x15\x6d\x5f\xe4\x5f\x3d\xec\xf5\x42\xcd\xf7\xb7\x0e\x35\xcf\x9f\xa1\xfb\xc2\x21\x5d\x15\x0e\xb9\xb1\x60\xe4\xd7\x98\x85\xad\x74\x5a\x39\x84\xc9\xc6\x7f\x9e\xd2\x21\x37\xbf\x57\x9d\x45\x8c\xf3\xee\x6e\xb4\x78\x08\x7b\x65\xad\x01\x8a\xc1\xdd\x6c\xe9\x90\x5d\xfb\xec\xec\xd6\x41\xe1\x15\x32\x62\x93\x80\x70\xc6\xd1\x76\x13\x0e\x1e\x69\x56\xc4\x82\xf9\x97\xfc\xd4\x2e\x06\xbc\xe9\xda\x3c\x7b\xfb\x32\xb3\x3e\x72\x59\x62\x06\x41\x78\xc3\x01\xde\xdb\x1e\xda\x9a\xa9\x8b\xbb\x8a\xa8\xae\x27\x53\x36\xfe\x79\xd7\x81\xd9\x99\xd8\xeb\x5a\x81\xd6\xa5\xc1\xdc\x9a\x29\x10\x47\xad\x6d\x7c\x5b\x87\x57\x73\x70\xc1\xbd\xfe\xcc\x47\x81\x17\x23\x12\xf7\x03\x34\x87\x2c\x75\xf2\x56\x2d\x7e\xbf\xbf\x89\xdf\xed\xff\xeb\x97\x85\xd9\xe2\x27\x20\x67\x4b\xf4\xfa\x21\xb0\xe5\x94\x0a\xc8\x41\x42\x43\x94\xd2\x85\x43\x4e\x0c\xb8\x62\x4c\xd0\x27\x62\xe7\x82\x9c\x87\x74\x61\x98\x89\x07\xa4\x51\xa5\xd6\x02\xc6\x7d\x69\xf8\x51\xb4\xec\x72\x87\x4c\xbc\x82\x5a\x65\xc7\x02\x70\xce\x0c\xb7\xf1\xc3\xd5\x3a\x65\x34\x5c\xd1\x03\x82\xe3\x00\x66\x6d\xc3\x33\xec\xae\x63\xa9\x91\x0e\x73\x30\x96\xc0\x16\x8d\x95\xb6\x05\x81\x36\x76\x51\x84\x25\xfd\x8e\x39\xe3\x5b\xe1\x2e\x18\x4b\xbe\x46\xd0\xf3\xf1\x3c\xc2\xeb\x95\xb2\x1b\xc5\x8b\xff\x81\x9d\x01\xf3\xe2\x17\x88\x5f\x8f\x73\x41\xc5\xf9\xcf\x0c\x52\x50\x01\x8a\x02\xb6\x1b\xf8\x39\xc4\xa8\xb6\x91\xa4\xc5\x87\xaf\x5e\x79\x5f\xed\xc8\x8c\x72\x75\x45\x47\xc5\xd0\xa8\x45\x3d\xf2\xe3\xc4\x77\x62\x5f\xae\x2a\x5b\xfe\xb1\xe4\x8c\xac\xdf\x29\xff\xd2\x76\x17\xc8\x3d\x57\x23\x90\xf3\x30\x5c\x7c\x9f\xe4\xfe\xe8\xca\x79\xf2\xbc\x32\x50\x5e\x29\x95\x69\xdd\xd9\xc0\x66\x11\x0c\xcc\x7f\x53\x1e\xe1\xe1\xc3\xf4\xc0\xa4\xab\x51\x3b\x23\xaa\x88\x7f\x94\x79\xb1\x6a\x3b\xbe\xb4\x4d\x4d\xad\x6c\x8c\x98\x34\x27\x09\xef\xd6\x54\xb0\xad\x90\x59\x8e\x9a\x61\x26\x47\xeb\x00\xf5\x19\x44\xb4\x62\x21\xd7\x64\x98\x05\x0a\x56\x56\x3b\x41\xa6\xf7\xc3\xc9\x2b\xeb\x7b\x96\x4b\xe1\xd8\x25\x1e\x62\x4b\x35\x48\x78\xa8\x8f\x3c\x9f\x71\x4a\x99\xdf\x10\xc0\x38\x56\xc9\x5a\xbc\x09\x09\xfc\x44\x3f\x25\x14\x8f\xd5\xa0\xe6\xc4\xa2\x8c\x4e\xb0\x25\x64\xdb\xa7\xd1\x08\xf9\x03\xb0\x17\x6e\xc0\x73\x26\xe8\x53\x49\xeb\x92\x73\x98\xf4\x59\x9e\x5d\x5f\x4a\x3b\x8b\x6a\x6f\xd5\x23\x9e\x1d\x9e\xb0\x97\xcf\xdb\xb1\x1c\x85\xbb\xf0\x90\x9c\x92\x50\x4d\xf9\x6e\xa4\xa5\x37\xfd\x0b\xfd\xf7\x2f\x41\x60\xcd\xe9\x21\x83\x04\x59\xd0\xfa\xf8\xf1\xe5\x73\xcb\x9f\xf1\x08\x57\xc6\xbe\x2d\x3f\xb6\x02\x34\x23\x16\x33\xde\x0c\x0a\x86\xda\xf0\xae\x66\x9a\x57\x07\x99\x09\xd7\x8e\x0b\x57\x3e\x81\x81\xff\x3f\xa4\x21\xdf\x25\xd2\xa3\xac\x6c\xd8\x27\x11\x74\xcf\xfb\xf2\x4f\x04\x99\xac\x29\x52\xfc\x84\x6d\xbd\xb1\xbc\x57\x24\xa8\x75\x2a\xfc\xdd\xb6\xd4\xf7\xee\x83\xf7\xd2\x7b\x32\x7a\x65\x94\xfa\xcc\x39\x73\x66\x21\xcf\xce\x05\x76\xec\xb7\xc8\x40\xd3\xe0\xd8\xf9\x25\xc3\xf3\xb9\x01\x89\xbd\x0e\x43\x2f\x60\xb8\xaf\xb0\x0b\x93\xca\xd9\x39\xe6\x9a\x86\x96\xd4\xe7\x9c\xe3\x6a\xce\xc9\xba\x3a\xc3\x9f\x8a\x99\x67\x21\x43\x42\x31\x89\x7c\x97\x28\xc5\xe0\x19\xe6\xbf\x15\xd0\x79\x28\x09\x71\xf9\xc4\xbc\x82\xc8\x10\x13\x69\x60\x8b\x22\x8b\x16\xcc\x11\xb1\x62\x44\x2c\x3f\x64\x1a\xf2\x3b\x38\x23\x56\x4c\x70\x84\x2c\x3c\x63\xdf\xf0\x57\x3f\x3f\x61\xe9\x79\x1e\xe6\x55\x0c\x2e\x50\xc4\x9e\x24\x11\x0c\xe3\xa5\x4f\x48\x0a\xad\x2e\x13\xfb\x9e\x9f\xf0\x1a\x07\xab\x80\x65\xc2\x7a\xb2\x78\x01\x26\x0b\x14\x59\xcf\x4f\xf2\xe4\xa6\x11\xa1\xa9\x22\xd6\x16\xcb\xd5\x82\x04\xf5\x31\x93\xcc\x61\x19\x8c\x7f\x76\x1f\x14\x89\xde\xea\xbd\x11\xcf\x3b\x25\x0b\x4c\xdf\x08\x23\x04\xd3\x93\x97\x85\xc5\x67\x87\x49\x92\xfa\x5a\x67\x29\xcd\x22\x38\xe8\x00\x2b\x3f\x77\x9d\x0f\xc0\x88\x2b\x07\xf9\x9a\xfd\x66\xbb\xf8\x3b\xa3\x45\xc9\x56\x32\x68\xb9\x1b\x4c\x11\x34\xb4\xac\x59\x35\x9b\x92\xc7\x3a\x02\x05\xf6\xfb\x20\x8d\xe5\x30\x66\xd0\xd6\x9a\x8e\x86\x81\x50\x3d\xa3\x1c\xc2\x74\x66\x52\x02\xd8\x76\xdb\x69\xbd\x55\xd0\x0a\xaa\x66\x56\xca\x29\x39\x35\xcb\x32\xc6\x34\x0c\x8a\x33\x52\x35\x02\xbb\x03\x4e\xd8\x09\x0b\xbc\x03\xf9\xe5\x9f\xa2\x00\x3f\xfa\xc7\xea\x4d\x9b\xfc\xf2\x86\x79\xe5\x29\x7f\x1c\x17\xe8\xc1\xfb\x99\xa0\xc6\x62\x8d\xb7\x4e\x48\x94\x12\x66\x21\x56\x5c\x95\x39\x5a\x47\x45\x95\x74\x9b\xda\xb1\x1a\x66\x22\x54\xa4\x40\x4b\x15\xf7\xf1\xae\x33\xa0\xc7\x39\x5f\x51\x3e\x33\x3a\xb7\x49\x40\x6a\x3f\x5a\x9e\x74\xfe\xc7\x34\x51\xb8\x79\x22\xf4\x68\x6a\x4e\x84\x1e\xde\x6a\x22\xb4\x6a\x7a\x68\x99\x08\xad\x4e\x4c\x4d\x84\x6e\x3f\xb1\x96\x89\xd0\xda\x0a\x2b\x89\xd0\x86\x81\x54\x24\x42\x8f\x0b\x0e\xce\xa3\xcc\x29\xce\xa2\x15\x67\x2a\xee\x66\x89\x00\xd0\xd1\x00\xf9\xaa\xf3\x30\x31\x1c\x31\x75\x90\x8d\xf7\x28\xfb\xed\x76\xc6\x33\x7b\x07\x69\xd8\x2c\xd5\xf1\x0f\x98\x87\x3d\xca\xa6\xc7\xe9\x79\xd8\x86\x93\xd4\x22\x0f\xbb\x38\x51\xae\xc6\xe2\x34\xcb\xc3\xce\x2f\xcd\x0d\x24\xcb\x95\xcf\xfe\x4e\x24\xc4\x15\xe0\xf4\xa7\x1e\x2d\x2a\x88\x31\xde\xb8\xe7\xa7\x3c\x91\xa5\xb9\x89\xac\x38\x9e\xf7\x96\x88\x68\xac\x2d\xff\xba\xcf\x6c\x1c\xc9\xc3\x30\xc4\xe1\x66\x89\xd7\x6d\x8a\x44\xa9\x62\x56\x07\xe2\xda\x5d\x48\x91\xfb\xfa\xd9\x77\xe7\x07\x2f\xde\xc5\xa5\x85\x15\x41\x3d\xb1\xad\x5d\xa0\x7a\x02\x6c\x31\xda\x22\x69\x65\xbc\x7d\x32\x1d\x63\x13\x2c\xe9\x8d\x51\xd3\x0e\xb3\xe9\x78\xcf\x2c\xb7\xa5\x7e\xd7\xad\x13\xea\xf8\xdb\x6e\x2e\xa3\x8e\x21\x93\xd0\x7f\xc7\x77\x34\xa7\x8e\x5f\xfd\x9b\x82\xc8\xcf\x2f\x6c\x11\x40\x7e\x8d\x25\xb8\x33\x49\x75\x3c\x4e\x55\x06\x64\x13\x89\xac\x60\x4a\xab\xcb\xc0\x2e\xfc\xa1\xf2\xea\x6e\x9e\x46\xc9\xff\x12\xba\xb4\x4d\x66\x5d\x59\x07\x7f\x84\xd4\xba\x86\x61\x6a\xd9\xfd\xd5\xb5\xd1\x71\x1b\x8c\xf1\x69\x16\x62\xbc\x9d\x52\x51\x57\x9b\xe8\x4a\x97\x58\xc7\x42\x91\x78\x76\xf2\x8a\x1b\xac\x1b\x2b\x13\x3b\x55\x24\x8a\x34\xce\xac\xbe\xf0\x78\x9a\xc3\x6d\x5a\xc7\xc5\xca\x42\x31\x40\x4f\x5d\xb4\xa6\x1d\x6a\x08\x92\x2c\x95\x23\xc2\x48\xde\xcf\xb1\x43\xcc\x9d\x98\x03\xed\xb6\x50\xcb\x32\xcb\x6c\x42\x36\xe3\x27\xb2\x14\x02\xa9\x74\x08\x55\xc0\x29\x99\x21\xec\x37\x04\x4e\x31\x44\xf6\x19\x13\xdf\xdb\x6b\x41\x45\x84\x45\x07\xbc\xab\xb6\x4b\x56\x96\x70\x6b\x76\x2d\x6c\x37\xc0\x61\x89\xfa\xbc\x16\x6e\xa4\x7a\x66\xa1\xad\xea\xb7\xd5\xbc\x3f\xed\xb3\x6e\xaa\xd7\xbb\x49\xc8\x93\x18\x6a\x52\x50\x5e\x11\x20\xe9\x30\xfd\x70\x86\xdb\x1b\x60\x3a\x29\x20\x9f\xa7\x1d\x7a\x29\xf9\x8f\xdc\x1a\xd8\xc4\x36\x52\x61\x1a\xe9\xa0\xb4\x7c\x53\x82\x67\x59\xff\x42\x3c\x7a\x7e\xbd\x9a\x47\xd0\x43\x1e\x2b\xc8\x4e\x19\x17\xaf\x25\x6f\x9d\x6d\x2c\x28\x41\xc3\x28\x93\x23\xd8\xe2\x76\x01\x2b\x42\x6b\x66\x44\x55\xa1\xe8\x7d\x77\xc1\x01\xca\x20\x73\xcc\x26\x15\xe8\x71\x52\xfd\xfd\x39\x0f\xeb\xbf\xc4\x51\xb4\x01\x16\xba\x40\xb4\x21\x5e\xcf\x17\xaa\xf7\xf8\x12\xc6\xd6\x65\xe4\x13\x82\x42\xe9\xe2\xc5\x81\x67\xc5\x64\x23\x10\xce\xfc\xd8\x8a\x89\x1f\x04\xdc\x5f\x3a\xb0\x7e\xc0\x97\xe8\x02\x45\xc0\xba\x44\x96\x87\xad\x08\xb9\x78\xb9\x44\xa1\x27\xa6\x25\x06\x1f\xb1\x5e\x84\x0b\x59\x38\x7e\x43\x74\xc9\xfb\x95\x85\xe9\x39\xf4\x6b\x9d\xba\xf4\x8f\xea\xc6\x58\xf5\x97\xfe\x3c\x82\x04\xf5\xc5\x22\xe8\x31\xe2\x3b\xad\x4a\x5f\x83\x79\x35\x4a\x6e\xa8\xaa\x59\xdf\x90\x7e\x37\x15\x0c\x75\x62\xdd\xb8\x3a\x7e\xf6\x72\x18\xab\xe4\xe7\x1a\x69\x81\x24\xaa\x98\x59\x99\x8b\xa0\xd4\x8f\x2f\x31\x59\xba\x78\xb5\xe9\x0b\x2e\x53\x18\xc3\xbb\xc2\xb1\x2f\x37\x59\x06\x59\xe9\x82\xb0\xfa\x27\xb0\x09\x5e\xf5\x63\x02\x23\xa2\xc7\xf1\x26\x22\x8e\x41\x94\x2e\x9e\x4a\xc5\x2c\xb5\x05\x92\x46\x99\x5b\x5e\x9b\xf7\xc8\x8d\x10\x11\x2b\xf3\x41\x18\x30\xcb\x16\xe5\x08\xd8\x31\x7b\x46\x7f\x5d\x1d\xfa\x9b\xae\xa7\xf2\xd6\x66\xd4\xdf\xe8\xa9\x19\x15\xb8\xfb\xea\xc8\x3e\xb9\x38\xe9\x71\x07\x61\xca\xe6\x1d\x7f\xef\xe2\x55\x65\x7e\x4a\xbd\x1d\xcf\x86\x2f\xf3\x55\x15\xf1\x50\x53\x60\x07\x22\x96\x60\x1e\xe0\x33\x16\x1b\xa3\xdb\xe1\x4a\x57\xb5\x4e\x06\x98\x71\x16\x2d\x7a\xb2\x0b\x3c\xd1\x37\x03\x31\x23\x71\x64\x66\x79\x2c\xbb\x22\xb3\x3f\x8f\x44\x4c\x5c\x04\x39\x8b\xff\xee\x2b\xf8\x2a\x66\xfc\x0e\xbc\x01\x77\x02\xa2\x66\xef\x62\xf9\xd3\xfa\xe2\xcd\x77\xdd\x54\xef\x4d\xdc\x07\x6d\xfc\x02\x12\xc5\xa5\x83\x32\xbe\xfb\x0a\xae\x7c\x57\x08\x36\xbc\xd3\xee\x10\x6c\xca\xcb\xf9\x4e\xf5\xdc\xbe\x5c\x21\xde\x03\xe5\xcb\xee\x0b\xf1\xca\xa8\x04\x56\x26\x98\xe3\x6a\x7c\xf0\x97\xe8\xd8\x43\xf7\xf5\x78\xed\xae\x7d\x0d\x47\x12\x5e\x47\x38\x19\xb8\x92\x35\xac\x8d\x49\xc0\x9c\x0d\xf4\x81\xfb\x82\xbc\x6d\xa1\x78\x4a\x49\xcf\x7d\x41\xde\x4c\x41\x5e\xa1\x22\xfe\x91\xca\xf1\xe6\x53\xec\x0e\xc1\xe1\x0e\xca\xf1\x72\x72\xb1\xeb\x6a\xbc\x07\xd3\x1c\xde\xce\x28\x21\xe9\x2d\xab\xf1\x96\xf6\x59\xb3\x7c\x6d\x55\x35\xde\x6c\x21\xde\xd2\x77\x36\x2d\xc4\xfb\x65\x96\xcc\x55\x0f\xe6\x48\x7a\x98\x0e\xb7\x80\x09\xea\xce\x9c\x99\x5a\x04\x1f\x75\x61\xc8\x6c\x6c\xc2\x6c\xb0\x37\x72\x90\x5b\x9a\x2d\x8d\x06\xcb\x42\xeb\xe4\x7b\x6e\x9d\x24\x98\x5b\x27\x79\x05\x26\x4a\x03\x19\x90\xc4\xcc\x60\x9c\x64\x00\x27\x2e\x0c\x19\x92\x08\x2f\xb1\xa4\xda\x25\x19\xda\xc2\x12\x47\xc8\x82\x67\x78\x4d\x78\x87\x2c\xbb\x21\x66\x39\x24\x0b\xfa\x12\x2c\x07\x62\x71\xf5\x49\xda\x12\xeb\xd9\x0b\x59\x6c\xc7\x9d\x35\x18\xb6\x3d\x06\x86\x10\x8d\x46\x36\x41\x4d\x36\x56\x2d\x1e\xac\x86\xb5\xd4\x44\xf3\x70\x5e\xcd\xee\x69\x9d\xaa\xd5\xca\xab\xee\x4c\xd1\x6a\x65\x4c\x5f\x4c\xcd\x6a\xce\x87\x0b\xca\x7a\x08\xc3\xc2\xb7\x38\x64\xbe\x64\x05\x59\x8c\x7d\x0e\xf0\x1c\xaf\x05\x5b\xe6\xce\xb5\xa9\x82\x9a\x79\x50\xc8\x34\x0f\xc1\xbe\x70\x4f\x67\xed\x5f\x86\x66\x3a\x3c\x59\x59\x4b\x31\x9c\x1a\x2d\xe5\x60\x4b\xd3\x7f\xeb\xbb\xc2\x6b\xed\xd6\x7d\x71\xed\x52\x14\xb4\x6d\xe4\xce\x36\x25\x99\x05\x33\xe8\xb8\xb4\x36\xe5\x76\xdc\xda\x72\x97\x8b\x1d\xef\xb6\xb8\xf6\x2d\xed\x64\x67\x40\x69\xa2\xbf\x1b\x2f\xac\xcd\xdf\x5b\x6f\x98\x62\x88\xb7\x57\x54\x7b\x0b\x2f\xe4\x7d\x6d\x61\x0d\xc2\x4a\x32\xd9\x6a\x28\xab\x52\x40\x2a\x23\xce\x95\xa8\x31\xdc\xa4\xbc\x70\xde\xe7\x70\x33\x05\x87\x55\x57\x40\x4b\x97\x82\xcf\x34\x4b\x1f\xdf\x91\xfc\x82\xf9\xfc\x97\xc7\x9b\x17\xc1\x4f\xf5\xb0\x10\x32\x95\x28\x76\x50\x28\xe7\xa5\x5c\x9e\x5d\x54\xcb\x69\xd6\x79\x41\xb8\x7d\x33\x3d\xb4\x0e\xa3\xdb\x69\x10\xb9\x5d\x37\x84\x5c\x46\x90\xa7\x07\xb4\x20\x80\xfc\xa5\xda\xe0\x0f\x18\x44\xce\x8e\x75\x4c\x4f\x23\x8f\xf8\xd8\xa6\x56\xcb\x16\x37\x84\xff\xa7\x5f\x8a\x56\x8c\x5d\x3b\xf9\xdd\x45\x97\xff\xec\xd7\xeb\xf7\x66\x42\xcb\x5b\x57\x6d\x49\x95\xcc\xe4\xe0\xef\x69\x15\xd0\x8d\x95\xcf\xb9\x91\x37\xc9\xec\x65\x21\x22\x02\xe8\x40\x16\xb0\xca\x15\x3c\x4a\x2f\xd6\x40\xfa\x92\x35\x0c\xf1\x5a\xc9\x2a\x4d\x1d\xf9\x45\x28\x43\xf9\x52\x31\x29\x77\xd5\x4b\xd7\x31\x68\x13\x11\x02\xd5\xd0\x0b\x9f\xe1\x75\xdb\x73\xcc\x3b\xe1\x83\xff\xf1\xfd\xef\xeb\xe8\x67\x12\x98\x7d\xf0\x70\xe5\x2b\x72\x51\xce\x23\xff\xeb\xaf\x30\x9a\x0f\xe5\x87\x11\x95\x8c\x98\x55\x83\xff\x93\x07\x56\xc8\x54\x64\x79\x69\x22\xce\x29\x21\x3b\x02\xb6\x07\x09\xec\x07\x98\xd1\xc8\xc4\x5b\x11\xb9\x76\xd6\x30\x6d\xef\xf1\xf3\x37\x3a\x9a\x82\xe4\xf3\x63\xfa\xd9\xc0\x00\xea\x5d\x2a\x15\x32\xa4\xd4\xc8\xc0\xdd\xa9\x8d\x99\x28\x65\xc4\x02\x6f\x4d\x74\xa9\x39\x66\x47\x4a\xd7\x75\x4a\x9f\x68\x57\xa9\xee\xd8\xd9\xca\x7a\xcd\x1d\x03\xfb\xca\x20\xe9\x16\x19\x79\x42\x21\x3f\x51\xc3\xb3\x46\xc3\xf4\x41\xae\x71\x21\xcd\xc8\x27\x79\xcf\x13\xdd\x69\x93\x54\xdc\xe9\x20\xfa\x40\x1b\x8e\x0c\x6d\x38\x62\xf1\x82\xf4\xdc\x34\xae\xe7\x93\xcd\x97\xd9\x4a\xe2\xda\xa9\x18\x51\x2a\x4a\x64\xd5\xd8\xf4\xb2\x9a\x00\xa8\x94\xab\x2d\xd3\xe8\xc7\x7a\x95\x64\xe5\x7e\x5b\x04\x13\x58\x56\x65\xb6\xea\xa7\x0c\x42\x94\x3d\x63\x4a\x91\x70\xc0\x66\x01\xc7\x6a\x25\x64\xb4\xcd\xb7\xe9\x00\xab\xbc\xaa\x2a\x8d\xc2\x69\x3b\xf4\x7a\x77\xb9\x08\x0d\x3d\xdf\x85\x31\x9c\x43\xd3\xc9\x69\xed\xfc\x2e\x96\x88\x76\xe2\x02\x57\x64\xa4\xc7\x79\xd7\xf1\xa3\xbc\xf7\xb4\xda\x03\x7e\x50\xab\xcb\xa3\x86\xfe\x6f\xa5\x34\x49\x9e\xfa\xda\xb9\xd8\x2f\xe3\x3b\x6b\x56\xce\x69\xeb\xff\xde\xc9\x29\x6d\x25\x54\x97\x1d\x23\xcd\x83\xa3\x1f\x10\xe6\xcb\x49\xcf\x51\xbe\x4c\x8c\x88\xce\xf6\xbe\xa3\x03\x8e\x5f\x32\xff\x37\x5f\xed\x03\x65\x97\x0e\x64\x31\xb4\xb1\x70\x6a\x15\xec\x9d\xef\x31\xa1\x57\xf8\x3b\x28\x35\x1e\xf1\x15\x6f\x9a\x46\x7a\x90\x7a\x93\x78\xa7\x2d\xcc\xc6\xba\x88\x50\x3f\xa8\xa9\xc0\xac\xce\xa2\xd4\xc0\xa9\x7d\xb2\x8e\x09\x5e\xbe\x43\x31\x5e\x47\x2e\x7a\xcd\x23\x09\x74\x77\x7a\x21\x10\x49\xb6\xaf\x0f\x42\x17\xae\xf5\x70\xfe\x04\x1e\xd5\x55\x31\xcb\x17\x58\x6e\x57\x53\x2f\x6d\x67\x4b\xbb\x4b\x07\xd7\x0d\xb8\xb8\x6a\x39\xb9\xb6\xe1\x2f\x8d\x5d\x23\xcc\x39\x92\xf2\xeb\x4e\x5c\x5d\x9a\xb3\x2b\x15\xc2\x1a\x3a\x21\x2a\xdc\x10\x0d\x1d\x5e\x3b\x77\x79\xd5\x71\x7a\xdd\xea\xce\x76\xe6\xfa\x52\xfa\xdc\x89\xfb\xab\xdc\x01\x96\xbe\xbd\xd6\x80\xd5\xc1\x36\x77\x84\xdd\xc2\x19\xdc\x42\x3c\xd7\x8f\x61\xf3\x82\x42\xfa\xf3\x05\x42\xfe\xb8\x66\x59\x21\x3f\xb5\xf5\x4f\x6b\x85\x33\x35\xac\x2b\xe4\xe7\xad\xe0\xa5\x2b\x52\xd9\xa0\x5d\xa1\xa1\x76\x6b\xf6\xea\xc5\xb3\x77\xaf\x73\x2b\xc7\x84\xb5\x39\x22\xc4\x0f\xe7\x3c\xa9\x0d\x79\xf4\xeb\x10\xb9\xe4\x86\x0b\x10\x75\x7f\xf8\xb7\x72\x1b\x3f\x2e\xce\xa6\xaf\xf5\xe5\x21\x78\xb4\xb3\x3a\x49\xcd\xbc\xce\xdd\x16\x4c\xca\xbb\x93\x73\xf6\xe6\x6c\x91\x23\xee\x08\xee\xfb\x71\x9f\x49\xf3\x7d\x4e\x8b\xfc\xf0\x02\x8b\xfc\x0e\xc5\xeb\xcc\x1d\xc5\x89\xb3\x39\xf1\x18\x0b\xc5\x2b\xf1\x19\xcf\x58\x25\x88\x7e\xb8\x5e\x9e\x31\x4d\x33\x35\x65\x47\x68\x16\xa1\x78\xd1\x8f\x30\x47\x47\xe3\x5e\x69\xe6\xfd\xcd\x98\xbf\x75\xa3\xb7\x8b\x43\x17\x36\xf4\x10\x67\xed\xd4\x2d\xcd\xdd\xe7\x17\x77\xc2\x31\xfc\xcb\xa7\xff\x79\xef\x3d\xbf\x20\xd3\x2c\xc9\x1c\x4b\x9d\x97\x74\x9b\x99\x79\xbe\xc8\x6b\x2c\x6b\xc8\x3e\x06\xa7\xf6\x8f\x68\xd3\xc6\x2b\xa6\xfb\x75\x59\x21\x71\xee\x36\xfe\x11\x6d\xf6\x7e\x16\x3a\x75\x37\xf9\x63\xbc\xf3\xd7\xe8\xb2\x61\xdf\x1d\x78\x8d\xeb\x48\x8a\xed\x7c\xc6\x76\x95\xbf\xd8\xae\xeb\x2d\x66\x66\x5f\xdb\x73\x07\xe7\x17\x03\xb9\xed\x59\x67\xf1\x8f\x68\x63\xed\x59\x6c\xe9\x8c\xae\x62\x45\x30\x3d\x32\xc5\xcd\x3f\x4a\x0e\x0a\xb0\xf7\x5a\x68\x7d\x23\x0d\x65\xf6\xb0\xf0\x0f\x2a\x16\x0f\x41\x7f\x94\xc3\x9b\x2d\x19\x40\x07\x20\xb3\x8d\xd7\x79\x86\x03\xee\xd5\xd1\x40\xdf\xf6\xec\x6c\xb6\x85\x36\xad\x0c\xca\x2e\x33\x93\x8c\xb2\xd1\xa7\x75\x26\x0c\xec\xa2\x15\x48\xed\xd9\x3c\xcc\xd9\xb0\xd1\x06\x34\x9f\x5a\x00\x35\x3b\x28\x0e\xde\x46\x83\x2e\x34\xf9\xe7\x8e\xf0\x56\xe4\x4d\x79\x59\xae\xf2\x76\xda\x2d\xd0\x77\x6a\x9b\x38\x19\x4b\x84\x07\x28\x37\xb5\x66\x9e\xcd\x0e\x36\xa6\x3d\x90\x90\x5c\xa3\xe6\x95\xf9\x4b\x32\x6c\x2e\x61\x14\xfa\x61\x43\x60\x30\xbb\x4b\xd8\x9d\x22\x85\x3e\x2f\xf7\xc7\x24\xc2\x74\xa8\x4a\x9a\x0b\x1f\xbd\x96\x83\x61\x7d\x58\xf8\xb1\xf5\xe3\xcf\xd6\x02\xc6\xbc\x96\xca\xb9\x15\xa3\x38\xf6\x71\x38\xb0\xfe\x23\x30\x76\x10\x63\xa7\x3f\xff\xf7\x2f\xb1\x75\xe9\x93\x85\xd6\x2a\x06\xd6\xd9\x9a\x58\x97\x48\x81\xc3\xf1\x30\x55\xbb\x63\xcc\x5b\xbb\x30\x42\x4c\x2f\xa6\xfa\x70\xf2\x13\x24\x16\x0c\x82\x81\xf5\x92\x70\x5d\x19\xcd\x21\xf1\x2f\x50\xb0\xb1\xfc\xe5\x0a\xba\x3c\x35\x86\x8a\x79\x17\xc8\x0a\xb1\x87\x2c\x9f\xd0\xf7\xc3\x38\xc6\xae\xcf\x6a\xa6\xd0\xce\x07\xd6\x7b\x84\xac\x33\x14\xe0\x4b\xaa\xe6\xf3\xd4\x1a\x0f\x11\xe8\x07\x31\xd5\xc8\x68\x27\xaf\xe8\x68\xdf\xf3\xd1\xb2\x24\x9b\x18\xa1\x2a\xed\xe8\xb0\x5c\xa3\xa4\x62\x5d\x14\xc2\x20\xde\x93\xab\xd0\x61\xf2\x0c\x5e\x47\x56\x61\x02\x4d\x3a\x4b\x3f\xe4\x22\x2e\xdd\xa9\x0e\x32\x73\x5b\x83\xee\x64\x4a\xd8\x73\x8d\xf1\xfc\xa2\x61\xc0\x0c\xb0\xbf\x5d\xc1\x88\x57\x3b\x64\x8e\xa0\xc7\x32\x01\x25\x9b\x90\xa1\xc9\x05\xe3\x51\x19\x97\x02\x7a\x92\x8f\x41\x32\x31\xb6\x48\x79\xaa\x91\xa6\xa6\xd9\x31\x8f\x0c\xee\x98\x6e\x08\x90\x58\x46\x4e\x19\xf9\x11\xdb\x2a\x02\x29\xbf\x8c\x86\xc4\x4c\x43\x4d\x07\x35\x1a\xa0\x49\xe2\xe5\x0e\x82\x94\xc4\x32\xe4\xd4\xb2\x8c\x42\xc8\x35\x4a\x71\x96\x12\xd4\x8a\x00\xcd\x48\x9f\x44\xfe\x52\x51\xf5\xa0\xc7\xa0\x2f\x02\xae\xb4\xc0\xd5\x8a\xc7\x31\xff\x86\xfd\x50\xd3\x17\xcd\x45\xd5\x74\xa8\x92\x99\x86\x5b\xae\x45\x47\xb1\x82\x6d\x8d\x94\x46\xa1\xed\xb5\xd7\x15\xef\x44\x48\xd4\xbb\xfd\xf1\xf2\xe5\xd7\xfe\x81\x59\x59\x14\x8e\xbe\x04\x81\x44\x41\x25\x71\xf1\x72\x85\x43\x76\x2f\x80\xfd\x66\x45\x78\x61\x56\xf6\x51\xda\x02\x02\xe4\x12\x11\x8e\x5e\x47\xd9\x4c\x25\xa7\x7d\x76\xcd\xcb\xb4\x37\x60\x52\x14\xf6\x13\x30\xe1\xfd\x29\xb0\xfd\xf8\x7b\x46\x21\xda\xc5\xb4\xd8\x77\x3c\x82\xb8\x50\x1f\x4c\xd7\x46\x5d\x9a\xb1\x8c\x23\x1a\xb7\xd6\xcc\xda\xe8\x40\x47\x09\xb9\x6e\xa5\x64\x96\x26\x8b\x8e\xd5\x44\xa0\xf1\xa3\xc2\x3f\xc6\x5c\x47\x1c\xeb\xf6\x81\x8a\xb5\xb8\x29\x25\xf1\xa8\x58\x47\x64\xc8\x33\xaa\x8e\x38\xde\xcf\x4f\x2b\xc3\x61\x19\xaa\x49\x4e\x47\xac\x35\xe1\x7a\x4a\xe2\x51\x3d\x25\x51\x03\x65\x2f\x94\x78\xee\x78\x54\xb9\x7a\x8a\x9e\x34\xbb\x3e\xb5\x5d\x6e\xd5\xea\x5b\x95\xef\x4b\xd7\x39\x99\x80\xa4\x98\xc2\x9e\xe8\x7f\x6a\xc6\x9a\x36\xd7\xa0\xa6\x98\x59\x28\xe2\x76\x10\xd3\xd6\xcd\xa9\x69\x0d\x60\x92\xad\x05\x2e\xab\x1b\x76\x15\xc3\xa5\x15\x64\x63\xfe\x24\x91\x20\x75\x06\x23\xa6\x4c\xf5\x19\x53\x2e\xf6\x2c\x89\xc9\xcf\x22\x84\x08\xfa\x44\xfa\x32\x8a\x4b\xac\x80\x1a\xf2\x95\x80\x27\xae\x02\xe8\xa2\x05\x27\x40\xd3\x4c\x58\x5e\x16\x17\x24\x61\xb2\xf5\xa3\xbb\x98\x64\x6b\xbf\xe7\xef\x2d\x0f\x3f\x31\x20\x79\x56\xcc\x37\x99\xf1\x0a\xaf\xf0\x05\x8a\x44\xb1\x43\x1b\x9c\xaa\xa8\xd7\xbc\x13\xbe\x04\x09\x44\x24\xcf\x2c\x97\x45\x9b\xbf\x5d\xae\x03\xe2\xaf\xf8\xc9\xb3\x23\x7f\xbe\x20\x39\x03\x5d\xc1\x52\x34\x81\x65\xe1\x55\xf1\x77\x16\x66\xa2\xbc\x6b\x4b\x37\x70\xb6\xa4\x68\xb1\xe0\xa5\x1b\x65\x0f\xb2\x7f\x50\xea\xc2\xa4\x30\x60\x3f\xb3\x08\xb6\x7e\xc9\xe9\x75\x69\x33\x06\x7c\x06\xec\x5f\x58\xb6\x73\x41\xbb\x44\xb2\x13\x8d\xf9\x5f\xcc\x73\xff\x23\xda\xc4\x55\x4f\xf1\x91\xd0\x96\xf4\x09\xf1\x70\xb7\xe5\xfb\x4d\xa4\x39\x31\xe3\x3e\xce\xd4\xbc\x2f\xa1\xaa\x8f\xef\x54\x80\x01\x2f\x43\xdb\xa6\x08\xc4\x23\x19\xef\x07\x4e\x53\x5d\x41\x06\x7e\xf2\xef\xa4\xbf\xbf\xed\x82\xa7\xf6\xbb\xc3\xa9\x1c\x79\xc2\x63\xec\xd7\x6c\x0e\x6d\x6f\x84\xda\xfb\xa3\x69\x0e\x7a\x36\xbd\x72\xea\x59\x57\x45\x07\xf5\x5b\x75\xe7\x6b\x0c\x48\xde\x98\x46\x9b\xd9\x7c\xc8\xfc\x2a\xe5\xc6\x2c\xbf\x6e\x38\x68\x79\x7d\x1b\x0e\xba\xc5\x03\x65\x9b\xfe\x81\x19\x84\x6f\x62\xd3\x33\x14\x49\x5b\xc6\xdc\x6f\x0d\xd7\x32\x47\xdd\x76\x78\x12\x74\x1a\x69\x9e\x46\xbb\x63\x9c\x23\xb7\xdd\x1e\x0d\x03\x94\x8a\x1a\xb8\xb1\xd5\x41\x2b\x0a\xd3\x28\x30\xea\x57\x26\xd4\x56\xdb\x68\x6f\xb5\x62\xcf\x36\x66\x83\xfa\x5e\xb2\x62\xa3\xbe\xa2\x12\xab\xd5\x63\xc7\x39\x13\x6f\xbb\x8c\x90\xa6\x3a\x56\xfd\xd1\x46\x18\x93\x7e\x27\x59\x2b\x37\x73\x42\xda\x7b\xed\xb4\x23\xa2\x42\x67\x8d\xd9\x72\x9c\x5f\x98\x30\xba\x0e\xb6\x2b\xc4\xd4\x1e\x36\x4b\x0e\x67\xbc\x1d\x66\x56\xf7\x2b\x9a\xa5\xd0\x8a\x5b\xc6\x0c\x98\x95\xd8\xcb\xd3\xdc\x8a\x34\x34\x20\xf1\x1c\x1c\x80\xfd\xe6\x78\x60\x37\x11\x26\xbf\x33\x63\x4e\xf6\xae\x96\x84\xc8\x6f\xa3\xbe\xb7\x41\x0f\xfa\x71\xef\x67\x6b\x05\xfd\xa8\x73\x28\xa8\xc4\x3a\xfe\xe7\x45\x82\xba\xbd\xbd\xec\x2c\x22\x3e\xed\x72\x27\x01\xf1\xff\xc1\x6b\x19\x0c\xcf\x47\x10\x6e\xd2\x57\xd6\x1a\xa4\x32\xc0\xdb\x43\x83\xba\x89\xf0\x77\x7b\xab\xe0\xf7\x0a\x29\xe1\x71\x79\xa0\x02\x9c\xa3\x90\xec\x9d\x5f\xec\x28\xe0\xfd\xc7\xbd\x9f\x2b\x6d\x05\xd5\x3f\xb7\x8f\x72\x6f\xba\x38\x0d\x62\xdc\xbb\x5a\xb3\x46\xe1\xed\x5d\x1d\xeb\xda\x4d\x5b\xa7\x8f\x9a\xca\x8f\xb7\xc4\x23\xab\x2f\x7c\xee\x22\x16\xdd\x8c\x6d\x96\xc8\x43\xd9\x60\xf1\x3c\xb8\x19\x0f\x38\x48\xc3\x05\x58\x08\x00\x3f\x0d\x85\xb1\xea\x22\x94\x60\x16\xe1\x65\x1f\x85\x24\xf2\x51\x9c\x84\xc1\xcb\xf0\x84\x08\x5d\xa0\x88\x81\x97\x7a\x11\x5e\xd9\xf4\x90\x9d\xa3\xca\xb0\x85\x24\x08\xc1\x1c\xb5\x50\x80\xc4\xa6\x05\x33\xe0\xa8\x71\xb8\xc2\x36\xb1\xed\x21\xf6\xd0\x1d\x41\x71\xf9\xd9\xff\xf9\x87\x93\x1f\x1f\xcd\xba\xa8\xa4\x52\x06\xdb\xc2\x74\x99\xd7\x74\xde\x45\x88\x2d\xe8\x02\x85\xa4\xcf\x93\x74\xf3\x90\x2d\xac\x80\xb7\x29\xf4\xa8\xc6\x93\xe3\x92\x98\x25\xcd\xd8\xae\x24\x46\xf3\xea\x17\x19\x48\x11\x89\xf1\xa1\x62\x8a\x3c\x99\x76\x8a\x29\x72\x68\x72\x2a\x1e\x4d\x81\xfd\x9e\x0d\xe8\x4e\xc7\x5f\x74\x1a\x52\x2c\xe9\x30\x3b\x33\x15\xc0\x21\x09\xba\xfe\xa8\x0d\x72\x48\xf1\x97\x5f\xb0\x67\x55\x77\x1c\xed\x1b\x17\xa8\xa3\xea\x10\x94\x9a\xed\xbc\x38\x44\x09\xa4\x44\xdb\xda\x10\x1d\x22\x63\x8c\xcc\xe8\x0a\xa2\x84\xce\xf4\x2e\x20\x63\x74\x77\x26\x5b\x9b\xba\x34\xda\x96\x73\x79\xda\xf4\x1c\x99\x6c\x5d\xa3\x51\x0b\x40\x7a\xf5\x5d\xea\x55\xd8\xd7\xdf\xd4\x09\x1c\xfd\xf6\x56\xb5\x74\x40\x5b\x62\xd1\xd7\xd8\xbe\x56\x48\xf4\x86\x1b\x6f\xb6\xaa\x05\x82\x07\x00\x1d\x5b\xbe\x28\x4e\xc1\xe0\x6a\x68\x8b\xd2\xd2\x12\xb3\xbd\xd0\x52\xd7\xae\x3e\xf0\x4e\xed\x38\x45\x56\x9c\xac\x4e\x55\x96\xb8\x1f\xa1\xb9\x1f\x33\x19\x8e\xe5\x18\xd4\x33\x5c\xb0\x96\xd2\x68\x61\x18\x53\xe7\xd5\x6f\xef\x48\x9a\xf0\x0e\xf5\xb4\xba\xc0\xd4\x35\xb5\x37\x71\xef\x2a\x80\xa7\x8b\xb4\xb3\x58\xd6\x7a\x93\xe8\xd3\x12\xb7\x31\x93\x51\x9c\xaa\x80\x3b\x07\x9a\x56\x74\xa4\xad\xb4\xac\x78\x81\x2f\x6f\x5b\xc9\x7a\xfd\xdb\xeb\xf7\x4f\x3e\x1c\xbc\x2e\x83\xca\xc4\x86\xfa\x93\xaf\xb5\x82\x7f\x25\xda\xd5\x34\xc5\xd9\xa5\xf2\xb2\x31\x1d\xae\x00\x16\xb3\x3e\x99\xab\x9b\xc0\x26\x70\x1d\x9b\x6a\x16\xcd\xb5\xb8\x3a\x0f\x33\xa9\x52\xc1\xc7\x3c\x50\x45\xaf\xac\x60\x90\x48\x66\x02\xa0\x52\x70\xee\x17\x12\x4d\x53\x0f\x67\xca\x8d\xa6\x82\x06\xfc\x19\x70\x41\x3d\x3f\x16\x48\x19\x6d\xd0\x41\xf3\x3e\x08\x75\xd8\xc9\xfd\xa0\x43\x3d\x18\x1e\x6c\xe5\x39\xb7\x0d\xc1\x2e\x31\xf1\xdd\xf3\x4d\x4b\xaf\x9c\xce\x9b\x0f\xc4\x55\xd3\x4a\x76\xb2\xa8\x70\x6e\x5d\xc5\x8c\x2c\xc2\x00\x89\x68\x4c\x66\x05\x16\xa9\x96\x96\xfa\x50\x7f\x9d\x96\x12\x6b\x95\xfa\xf8\x55\x21\x83\x66\x69\x90\x2c\xcf\x30\xc4\x56\x80\xc3\x39\x8a\x2c\xf4\xc9\x8f\x09\x2b\xbb\xc5\xca\x74\x41\x02\x03\x3c\xdf\x36\xd7\xae\x99\xd3\xe5\x7e\x67\xac\x67\xa1\xc5\x8e\xbc\x75\x09\x63\x2b\x42\x64\x1d\x85\xc8\xb3\x2e\x17\x7e\x10\x13\x8b\x52\x6f\xee\x21\xf3\x63\x8b\x4e\x05\x58\xc2\x62\xcb\xaa\xae\x45\x1b\x0b\xce\xa1\xbf\x75\x82\x64\xd3\x64\xb7\xc3\x1b\xc0\x11\xce\x10\xbb\x5d\x63\xe3\x6e\x53\x6f\xb7\x34\xad\xb1\x56\xe1\xdd\x69\x06\xd5\xb1\xbe\x0a\xb5\x0f\xcc\x31\x55\x75\x74\x93\xf6\x45\x18\xac\x3a\xc0\x1a\xd9\x86\x95\x39\x3d\x8f\x45\x48\x50\x98\x31\x1d\xab\x95\x18\xa4\x59\xb9\xb0\x08\x43\xe1\x1d\x68\xa0\x7a\xdc\x3e\x92\xb2\x2d\x8c\x9e\x19\x39\xaf\xfe\x5c\xad\x2e\xec\x9a\xdd\x2e\x5a\x83\xba\xc7\xd9\x59\x1c\x01\x9b\xc0\xb3\x3e\xaf\x5c\xac\x5a\x21\xa6\x19\xf0\x8f\x4c\xcc\x78\x12\x86\x29\xa5\x06\xbe\x14\xdc\x9f\x95\xa4\x5a\x8a\x18\xce\x1f\x10\x0c\xc8\xc2\x3a\x59\x20\xf7\x3c\xb6\xcd\xa7\x72\x40\x55\x8c\xc1\x82\xb5\x74\x79\xc3\x6c\xd0\xfc\x51\xbd\xf6\xdc\x9c\xd8\x68\x80\xef\x51\x74\xe1\xbb\xc8\x7a\x19\xc6\x04\x86\x2e\x2a\x1f\x64\xcc\x5b\xd7\x1a\x60\xb6\xad\x3a\xb8\x47\x4a\x24\xa3\xe7\xcb\x37\x37\x1f\xfd\x3b\x16\xf4\xf1\x21\xf2\x57\xd6\x07\x7f\x89\x4a\xc7\x1e\x91\x7c\xb9\x40\xc3\xb0\x95\x66\x4c\x91\xce\x3d\x53\x73\x68\x2a\x84\x42\xd5\xa2\x8a\x46\xb5\x16\x55\x6f\xdb\x62\xc7\x7f\x42\x04\x32\x15\xab\x6c\x4c\x4b\xd9\xa8\xc6\x98\xb2\x6d\xa7\xd5\x9a\x4e\xd7\x64\x60\xab\x0a\xe0\x8c\xc9\xae\x36\xfd\xb3\x35\x21\x54\x96\xcb\x06\x65\xcb\xb7\x30\xe5\x0f\x9c\xda\xcf\x3c\x2f\x62\x80\xd5\x53\xa0\x7e\x2e\x7f\x71\x4a\x78\xd3\x47\xbe\x34\x1c\x6a\xbc\x26\x01\xca\xf7\xcb\x0c\xcd\xe3\xb6\x51\x8e\x23\x60\xce\x55\xda\x17\xa7\xd9\x98\xf2\xa8\x76\x51\x12\x21\xd1\x6c\x15\xeb\xa9\xb0\xad\xc2\x29\xb4\xdf\x2b\x8b\xca\x68\xa6\x2f\x82\x97\x78\x1e\xc1\xd5\x62\xa3\x5a\xde\x7e\x5f\x23\x76\x38\x59\xdc\x02\x33\xa8\xa5\xd1\x14\x7e\xdc\x17\xf7\x5e\x58\xe3\x64\x40\x03\x33\xed\xb9\x2c\x50\x02\xaf\x09\x33\x9f\xd9\xc0\xee\xcb\x6d\x4d\x51\x04\xda\x58\xda\x38\x53\xda\xd2\xd0\xb6\xa7\x71\xb5\x5b\xb6\xba\xed\x2f\x5e\x3d\x3e\x7c\x7b\xbe\xac\x57\xd3\x4d\xcf\x94\x1c\x01\x9b\x4f\xa5\x9f\x70\x68\x19\x7a\x0e\xcf\xfa\x31\x72\x13\x90\x9a\xb1\x66\x44\xc9\x66\x5c\x4a\x7d\x92\xc0\xb3\x15\x0c\x51\x31\xbe\x40\xde\x14\xc5\xa9\x8d\x94\x3c\xba\x8a\xc3\x14\xa4\x40\xd9\xa7\xbe\xc1\x91\x33\xd5\x41\x53\x55\x3b\xa3\xcd\x1e\xb2\x4d\x01\x09\x20\x33\xe8\x69\x13\x20\x95\x2a\x83\x40\x27\x1e\x9a\x9d\x79\x67\xea\x78\x66\x52\x7b\xcb\x02\xd2\x0f\x16\xdf\x04\x8b\x9f\xb0\x41\xbd\xe4\x97\x5d\x78\x40\x74\xc5\x3e\x87\x4d\xc8\x12\x72\xab\xa9\x5e\x81\xe3\x41\xba\x0c\x5a\x92\x24\x8d\xa2\x6c\x4f\x9f\x96\xa9\xf0\x74\xab\xb4\xe9\xdf\xd1\xec\x97\xc5\x2f\xff\x84\x2d\x69\x93\x22\xb2\xed\x96\x2c\x8d\x15\x52\x44\x05\xcf\xb6\x68\xa5\xa9\x21\x44\x0e\xdd\xe4\x3f\xce\x90\x1a\xe3\x8b\xb7\x20\x26\x1d\x11\x92\x9d\x10\x91\x2a\x02\x92\x23\x1e\x72\x1d\x07\x65\x71\x4c\xdd\xbb\x2d\xab\x69\x45\x33\x59\x09\xb3\xdb\xa6\x44\x84\x6e\x41\x2a\x92\x25\xd9\x9a\x4c\x50\x25\xf2\xb6\xb1\xa4\x0e\x5f\xff\xf0\x38\x7a\x74\xd1\x92\x42\x44\x54\xb3\xee\x93\xc8\x5f\xf5\x89\xcf\x4f\xe5\x0e\x08\x85\x55\x04\x33\xc1\xd6\x46\xe0\x81\xf1\x92\x29\x86\x53\x9d\x3c\x59\x5d\xb6\xd5\x2b\x07\xad\xf8\xc9\x0f\xfd\xe5\x7a\x59\x87\x85\x2a\x7d\x7a\xb5\xcc\x6d\x79\x7a\xb4\xf4\x05\x9a\xfe\xa9\xbd\x84\x9f\xe8\x8b\xbf\x8f\xb8\x64\xff\xdc\x9f\xfb\xec\xbc\x9c\x8e\xa7\xf2\x9e\x2c\xe3\x86\xc3\xaa\x98\x2a\xf2\x7c\x18\xde\xd4\x4c\xd9\xcb\x6e\x71\xb2\xfc\x8d\x37\x35\x5b\xf8\xa9\xe3\xa9\x1a\x49\xb2\xf1\xab\x94\x41\xa6\x0a\xe3\x1e\xfb\x47\x0d\x24\x93\x86\xb6\xd4\x98\xa1\x5a\xdf\x4c\x5e\xdd\x32\x0a\x5d\x4d\xa4\x35\xe5\x55\x0f\x06\x69\x4b\xa4\x23\x52\x84\xf2\xf7\xa0\x3e\x7d\x4e\x6c\x93\xb7\x4c\xa4\x97\xcf\x0f\xc6\xfb\xc1\xd1\x47\x73\x60\x87\x5e\xfd\xd4\x14\x20\xcf\x85\x2c\x15\xdb\xf8\x7d\x62\x75\xad\x17\x84\x98\x23\xfc\x8a\xd9\xf6\xa6\x35\x56\xee\xac\xdf\x2e\xbc\x58\x0e\xc8\x0f\x57\x6b\x92\xce\xca\xe0\x9b\x38\x00\x07\x80\x2b\xa3\x67\xf8\x53\x91\xb7\x42\x5c\x2d\x43\x74\xb2\x8a\xd2\xa4\xa2\x37\x25\xb1\xca\xdc\xba\x4e\x3f\x5a\x67\x1b\x8b\x8a\x76\x7b\x2b\x16\xb1\x9c\x09\x22\x31\x61\x19\x4d\x33\xa8\xa2\x15\x91\xc9\x4d\xe3\x78\xb7\x8b\x38\x4d\x82\x6d\xc5\x51\xc9\xc7\xdc\xd2\xf9\x35\x96\x5e\xbb\x0f\x3b\xd5\xe9\xa2\x18\x6d\xdf\x17\x9e\x0e\x5d\x81\x50\x2d\x62\x69\x34\x6a\x6a\xbc\xb1\x3d\x37\xf1\x68\x0c\x44\x4c\x58\x5a\x1e\x2f\x8f\x6a\x2b\x47\x50\xc7\x3a\x59\x63\xf6\xad\x82\x53\x3b\x34\x7c\xec\x34\x30\xb5\x8e\xf1\x43\x06\xa5\xc2\x88\x85\x9b\x24\x5b\x51\xd7\x73\x79\x83\x21\xa2\xb5\x9a\xd4\xd0\x7d\xda\x05\x76\xe6\xa3\x34\xd3\xa0\x4b\x2d\xf4\x53\x1a\x59\x53\xbc\xdf\xd6\x76\xdf\x84\x9f\x6e\xaf\x39\xc5\xa9\xc7\xec\x56\x39\xf3\x68\xf8\xcb\x25\xfa\x25\xfe\x50\x4f\x7d\xaa\x93\x7e\x66\x4c\x22\xcb\xb1\x5f\x35\xce\x63\xf7\x3c\x38\x9f\xe5\x70\x58\x9b\x07\x57\x1a\x8b\xed\xe2\x00\x16\x73\xec\x3f\x0e\x5f\x86\x17\x30\xf0\x65\x58\x54\x26\x85\x47\x8b\xb0\x3c\xa4\xa4\xd7\xf6\x93\xf6\xc2\xd3\x6a\x77\x60\x31\xee\x8c\x6c\xee\x88\x64\x56\x93\x4b\x8d\x54\x6a\x8e\x68\x86\x85\xcf\x22\xbf\x5e\x63\x0f\x0d\xac\xef\x0d\xd0\xf8\x80\xc7\xec\xdb\x86\x98\x9a\x51\x26\xef\x64\x0b\xb8\xff\x6d\x12\xc4\x4b\xe1\xfe\xb7\x8c\x5b\xab\xd1\x64\x87\x56\x2d\x9e\x19\x9d\x12\x41\x3b\xe6\xa9\xca\x39\x62\xde\x9e\x52\xcb\xdd\x68\x47\xa9\x19\x84\x7c\xbc\xd7\x17\xc8\xfa\xb7\x4a\xa3\x8f\xf0\xf7\x8b\x67\x17\x1f\x4e\xcc\xda\x13\xfa\x84\x5c\x9e\x80\xee\x52\x71\x8f\x9e\xb6\x25\x8a\x63\x38\x17\x85\xc9\x66\x3e\xc3\x75\x35\xe8\x43\x09\xe2\xab\x89\xca\xce\x7c\x14\x78\x4c\x18\x2d\xa0\xa9\xd2\xfb\x56\xbf\x48\xae\x7e\xad\xd3\xc8\x2a\x66\x55\xa0\x77\x8e\xe3\x55\x11\xf4\x49\xc1\x40\xdd\x57\xc8\xb5\x8c\x6f\x96\xc0\x8a\xb6\xb5\x80\x71\x5f\x46\x6f\x2b\xe0\x57\xa5\x71\xa6\x19\x84\xd1\xd7\x82\x46\x95\xda\x4a\x54\x35\xcb\x86\x6b\x82\x67\xd8\x65\x19\x08\xe9\x67\x3e\x93\x31\xcf\x47\x4b\xd1\x1f\xf9\x33\xfb\xca\x7b\x0e\x81\x8d\x43\xde\xa1\x49\x39\x12\xda\x8a\x1a\xc3\x77\x00\x6c\x5d\x0d\x4b\xfa\x62\xca\x1d\x5b\xb0\x92\x30\x34\xcb\x94\x16\x9c\x17\x3d\x7f\x5a\xc7\x84\x65\x3f\x59\x8c\xd9\x58\xcf\x5f\xbf\xb7\x16\x38\x26\x94\x88\x0f\xf8\xaf\x2e\x0e\x09\xf4\x43\x6b\xd4\x7f\x74\x60\xb9\x0b\x18\x41\x97\x52\x06\xab\xc7\x8d\x1d\x31\xb0\x02\x44\x08\xfb\x00\x43\xcf\x5a\x6c\x56\x0b\x14\xc6\x0e\xff\x6b\xc9\xfb\x9f\xfb\x21\x2f\xfe\x02\x45\xe3\x81\xf5\x26\x74\x91\xc5\x61\xca\x3c\xc0\xc9\xb6\x0b\xc3\x10\xb3\xe1\xf0\xe5\xf0\x4a\xfd\x7e\xf9\x53\x69\x38\x2e\x6d\x60\x3e\x93\x43\xa3\x07\x27\xf3\x28\x97\xdc\x3b\x80\x2d\xd8\x74\x5a\x47\xb4\x3e\xbe\x9a\x61\x52\x35\xca\x5d\x65\x42\x14\x25\xe6\x1b\x3d\x12\x96\x94\x19\xfa\x1c\x43\x15\x9a\xcd\xc7\x45\xf7\xe2\x39\x8a\xdd\xc8\x67\x4f\x5a\xbd\x37\xa2\x07\xa7\xd8\x7c\x37\xe4\x07\x11\x46\x48\xba\xdb\xf6\xb5\x4e\x5a\x9e\x7d\x7d\xb9\xb5\xfe\xa6\x35\xac\x86\x15\x07\x25\x0f\x06\xf3\xec\xe4\xd5\xfb\x5f\x5f\xbc\x7e\xf6\xdd\xab\x17\xcf\xdb\x21\x08\xe4\xa8\xa7\x70\x34\x04\xc2\xd8\x64\x76\x0b\xe8\xf0\x61\xef\x92\xd6\x86\xf9\x15\xca\x44\xdf\x6d\x2c\xe8\xb1\xa0\x77\xf6\x36\x16\xe7\xce\xfc\x61\x70\x89\x38\x43\x03\x2c\x85\xf1\xd2\x0f\x02\x0b\xae\x56\xc1\xc6\x22\x0b\x9e\xf5\x08\x83\xc0\x22\xf8\x1c\x85\xb1\xbc\x88\xec\x92\xb2\x04\x07\xb5\x87\x41\xa5\x79\x96\xbe\x5a\xc0\x61\x2b\x29\x36\xd9\x62\x34\x8a\x23\x93\xd5\xe0\x4f\xc5\x6d\x49\x3f\x9f\x9d\xbc\xa2\x04\x96\xae\xc4\x73\xfe\x5b\x2d\xdb\x6d\xd9\x1e\xac\x70\xe0\xbb\x7e\x83\x6d\x78\xab\x3e\xd0\x6e\x27\xe4\x3b\x6f\x67\x33\xd8\xdb\x37\xd5\xdb\xc1\xc0\xf6\x5e\x7a\x28\x24\x3e\xd9\x94\xef\x0f\x97\xe5\x32\xbb\xc4\x16\x6a\xd3\x64\x9f\x6a\x08\x97\x8a\xae\xd7\x54\x00\xa9\x19\xe1\x33\x1a\x01\x5b\x84\x43\xd2\xbf\x1e\xd1\x17\xc6\xf0\x2c\x40\x5e\x56\x00\xc9\xeb\x8e\x7e\xfc\x36\xf2\x63\xe2\x87\x1c\xee\x37\xf9\x56\xe8\x76\xa9\x23\x5e\xe9\x54\x89\xef\x63\x9c\x3b\x2d\xc8\x74\x00\x4e\xf7\x8f\x74\x52\xa8\xe0\x90\x2a\x46\x47\xb9\x14\xef\xe1\xc5\x76\x28\xa3\xcd\xe6\x9f\x9f\x5d\xcb\x69\x89\x6c\xa0\x2d\xa7\x65\x60\x9c\xda\x54\xf8\x38\x22\x24\xae\xbf\x61\x75\x85\xac\x5c\x30\x8c\x13\xfe\x73\x1d\xe6\x91\x0d\x97\xd7\xce\xe4\x34\x57\x98\x51\x11\x0d\x81\xc2\x4e\xda\x03\xc0\xa7\xe6\x07\x2a\xe9\xf3\x94\x2b\xcf\x87\x01\x9e\x27\xb7\x5d\xea\x03\x94\xcd\x3d\x8b\x10\x23\x3b\xf1\x5a\x7c\xb8\x84\x21\xa1\x44\x87\x63\x7b\x0a\xa5\x59\x52\x98\xa7\xad\x83\x68\xab\xc3\x98\xb7\xc8\xed\xcf\xee\xb5\x14\x7b\x52\x7c\x52\x7e\x00\xd2\x46\xb9\x13\x20\x72\x86\x6c\xf1\x88\x38\x08\x20\x53\xe4\x2c\x15\x86\x64\xc7\x35\xad\xae\x65\x68\xcd\x95\xb9\xa1\x6c\xf3\xda\xa7\x7b\xf0\x29\xf5\xd5\x13\x91\x3b\x0a\xc0\xfe\x36\x55\x1c\xbf\x75\x93\xe3\x9e\xe0\xba\x0a\xb0\x96\x71\x09\x28\x85\x69\xde\x23\x20\x6b\xb5\xee\x3c\xd8\xae\xbe\x7b\x36\x5b\xf2\x2d\xb1\x32\x30\x6b\x31\x93\xdf\x19\x43\x94\x24\x57\x98\x27\x12\xc0\xb4\x10\x33\x43\x73\xe8\x35\x34\x47\xa8\x46\x84\x2d\x0d\x11\x77\xa1\xc6\xf7\xc9\xa7\xcb\x17\x1f\x0f\x7e\x9f\x17\x94\x6d\xcb\x24\xe5\x8b\xb5\x96\xda\xb9\xd1\xa3\x2b\x79\xcb\x78\xeb\xda\xde\xb2\xfa\x76\x42\xb9\xba\xab\xec\x9d\x54\x0d\x6f\xd6\x37\x3b\xbe\x3b\xaf\xec\xdd\x36\xf7\x52\x37\x5a\xf3\x53\x56\x2f\xdf\x12\x64\xf2\xe5\xc7\x1a\xb5\x38\xa8\x95\x33\xcf\xa8\x44\x2e\xfb\xb2\x8e\x1d\xf9\xb6\x0b\x99\xcb\xfa\xda\xe2\x5e\x16\x65\x5a\x26\x32\x7e\x42\xab\xaa\x15\xd5\xdb\xa8\x55\x9d\xa8\x3d\xc5\x15\xc9\xb6\xb8\xa3\x96\xa8\x17\x9d\x2c\x47\x63\x21\x95\xdd\x3b\x7b\xaa\x25\x74\x26\x76\xb5\x06\x66\x92\xae\x57\xba\x71\x22\x56\x17\x2f\x6d\x91\xd7\xc4\x26\xff\x84\xb2\xb7\x84\x93\xc8\x5a\xb1\xf5\x57\xa4\xce\xcf\x09\xf3\x25\xd1\xba\x32\xd7\x27\xe1\xb3\x5a\x46\x4f\x2b\xde\xba\x45\x35\x54\xd9\xc5\x9d\xc0\x17\x7d\xf6\xf7\x77\x3f\xbf\xfc\xf9\xc7\x4f\x8d\x4b\xa2\xfe\xfa\x2b\x8c\xe6\x43\x03\x28\x4e\x39\xff\x1d\xe9\x85\x1a\x6d\x8d\x62\xe5\x21\x71\x4c\xf5\xb7\x12\x8d\x66\x3c\xe5\xf6\xcf\xc6\xa0\x9b\x35\xdc\xc9\xc3\x22\x30\xd3\x3f\x3a\x5b\x7d\x34\x4d\xb0\x3d\x78\x09\xcc\x1a\x6c\x95\x32\xaa\xc7\xe0\xe8\x56\x19\x87\xa0\xfa\xc9\x71\xda\x25\xbf\x6b\x95\x0e\x6b\x97\xfb\x7b\xd9\x20\x15\x0e\x3f\xe8\xa4\xb8\x4a\x37\xf3\x6d\x8d\x72\x9a\x4d\x4e\x93\xbc\xb4\x73\x88\x53\x7e\xe0\xdb\x82\x9c\xa6\xe6\xc6\x12\x1c\xd0\xa4\x00\xe2\x61\x13\x3c\xd3\x72\x88\xd4\xb4\xa8\xe2\xb8\x3e\xa2\x69\xa7\x65\xcf\x77\x21\x00\x14\x11\xee\x5c\xe1\xc4\xa4\x62\x7a\x1e\x54\x74\xd8\xc6\x28\x65\x6f\x13\x76\x99\x1b\x90\x5e\x42\xe7\xb0\xf3\x88\xcb\x96\xe9\xe2\xc6\x93\x5f\x14\xf0\x23\xad\x4c\xfc\xb5\xde\x77\x74\x38\xf1\xcb\x70\x86\x35\x9b\x8b\x6a\x29\x34\x9c\xd5\x43\xca\x14\xec\xc4\xc6\xa5\x9a\x0c\x4d\xe0\x08\x22\x96\x12\x9c\x0e\xf9\x61\xad\x03\x07\x3b\xce\x1b\x36\xb9\x99\x4c\x76\xd6\xe8\x2c\x98\xcd\x53\x7f\xf0\x62\x3f\xdb\xd0\xda\x36\x05\x62\x52\x7f\x52\xd7\xd5\x7e\x34\x26\x5e\x6d\x85\xcf\xac\xd2\x1f\xa3\xdc\xcf\x2d\xee\x66\x67\xf5\x7e\x94\x3e\x77\x52\xf0\xa7\x0c\x46\x57\xf5\x76\xd6\x01\xd0\x55\x86\x7a\x5f\xfa\xc7\x3c\x36\xab\x5a\x88\xdd\x2f\x0f\x5a\x74\xf1\x72\x09\x43\x2f\xde\x0b\x53\x8b\x66\x17\xf1\x8a\xb9\x22\x40\x61\xde\x0e\x56\xb2\x1a\xb7\x55\x0b\x28\xb7\x5a\x25\xb5\x80\xd2\x19\xed\xc5\xc8\x5d\x47\xa8\xaf\xce\xb1\x8b\x45\xfc\x22\xab\x02\xd5\x71\x7f\x19\x00\xf8\xb6\x8f\x48\x1d\x37\x90\xb1\x5b\x82\xda\x54\xa6\x67\x9b\x8a\xfe\x98\xd1\xa7\xb3\x51\xae\x12\xde\x46\x00\xd8\xf4\xfd\x98\x1d\x27\xaf\xcf\x09\x8f\x1f\x5e\xe0\x04\x79\x93\x67\x3b\x24\x50\xd4\x29\x0e\x4e\x29\x92\xf5\x56\xe5\x7b\x34\x0b\x59\x4b\x2b\x9b\x4c\x99\xb8\x1b\x66\xb6\x1f\x7e\xf9\x3d\x58\xfd\xf3\xef\x7b\x5d\x94\xf1\xc9\x9a\xdc\x4a\x6c\x6c\xe3\xd1\x54\xcb\x59\x34\x83\x4e\x57\x22\x3b\x97\x15\xe8\x51\xb5\x06\xaa\xee\x85\xd9\x02\x3d\xc0\x3e\xf7\x43\x8f\x4f\x8e\xbe\x21\xa7\x74\x31\xfd\x57\xd1\xbd\xc7\xfb\xca\x97\xe6\x9a\x3d\x20\xf7\xfc\x81\xe9\xf9\x83\xfa\xcf\xef\x9b\x9e\xdf\xef\xa6\x66\x90\xba\x44\xe3\xa1\x6a\xbd\xdc\xa6\x68\x50\x22\x2c\x6c\x09\xb5\xba\x43\xab\xa4\x55\x94\x24\xd8\x08\x61\xf5\xf1\x54\x94\xf3\xae\x9b\x03\x48\xd5\xd7\x56\x59\x80\x6d\x75\xb4\x0a\xa3\x24\xff\x4f\xde\x42\x53\x50\x74\xc6\x2a\x2e\xa1\x1b\x1b\x97\x4a\x2a\x65\xcd\xb6\x21\x6e\xb7\x21\xb4\x68\xcd\xf4\xbd\xdd\x19\x14\x4d\x30\x5c\xe3\x4e\x0c\x8a\x45\x27\xd5\x64\x53\x14\x74\x0c\x74\x51\x43\xe9\x89\xac\x24\x93\x35\x0a\xea\x86\xc2\x84\x6c\xb4\x2c\xa6\x54\xde\x69\x03\xeb\x63\xae\x9e\x52\x8e\xe6\x0b\x8a\x9f\x10\x7c\x95\xde\x97\x0f\xa3\xc2\xb2\x9a\x2b\xb1\x54\x73\x76\x07\xbb\xe9\x76\x7f\xf7\x05\xa1\xba\xbb\x71\xad\x4d\xb8\x1a\x7f\x7f\x92\xf5\xc3\xd9\x85\x39\xea\xa9\xe3\xbe\x2d\xab\x7c\xac\x7c\x7e\x94\x7b\x57\x27\x95\xa1\xb6\x34\x19\x0f\x73\xa3\xda\xb2\x3c\x54\xad\xad\x6c\x55\x20\xaa\x88\xbc\x15\xa1\x7c\x8d\xb9\xc1\xbb\x76\xfc\x9d\xb9\x2c\x54\xad\xf9\xb4\x2c\x0c\xf5\x67\xb1\xeb\x6e\xc3\xf2\xda\x58\x02\xa5\xe2\xd4\xb5\x55\x57\xca\x3f\x77\xd9\xb6\xb6\x5b\x9b\xee\xad\xed\x64\x67\x16\xdd\xa4\xc7\x1b\xb7\xe7\x2a\x65\xd1\xe4\x20\x6a\x8d\x3a\x1d\xf1\xbd\x59\xb7\xb5\xa1\xf2\xb0\xa6\x59\x37\x56\xc1\x91\xba\xb7\xea\x6a\xd0\x49\x77\xd4\xa6\x9b\x5b\xaa\x06\xf5\xdd\xbb\x5d\xbe\x2f\xd2\x9e\x9b\x8f\x8f\xdd\x45\xb5\xc0\x5a\xaf\x6f\x69\x12\xee\xac\x62\x60\x8a\xa1\x96\x33\xf2\x96\x5a\x5e\xd1\x27\x8e\x0c\xf1\x3e\xd1\x52\x0b\xab\x0a\x0a\x8b\x5f\xa2\xae\x65\xaa\x0c\x66\xab\x0b\x36\xab\x29\x28\x2d\xd4\x2d\x6a\x0b\xea\xb6\xdb\xed\x0d\xc0\x1c\x90\xea\xb6\x6d\xc0\xb3\xc5\x93\xe8\xb7\x7f\x7d\x67\x46\x0c\x65\xf5\x05\xa1\x28\x5d\xd0\xc0\xc2\xab\xfa\x86\xdf\x4b\x4d\xc4\x7e\xf9\xbc\xb8\xc4\x60\xbb\x52\x7c\x6a\x0e\x5b\x06\xf8\xc0\x18\x26\x59\x65\x53\xce\xd7\x4b\xaa\xf9\x60\x3e\xd0\xbf\x0b\x33\xe8\x4e\x8d\xa0\xdb\x9b\x40\x4b\x8b\x4c\x19\xfc\x5b\x86\x02\x53\x75\xa4\xdf\xf6\xc5\xa5\xec\xaa\x44\x07\x03\xe7\x2d\x4e\x76\x38\xcc\x00\xc2\x15\x64\x3b\xbc\xcf\xca\x03\x55\x35\x95\x9a\xbe\x97\x03\xd1\xe5\x5f\x2e\x8b\xfa\xf4\x6c\x2d\x43\x20\xbd\x7f\xf2\x93\xdc\x03\xa7\x6c\x88\x06\xde\x5b\x8b\x3d\xdd\x4e\xbd\xff\xa2\x29\x0b\x92\x93\xef\xcc\x04\xda\x90\xde\x06\xc9\xad\xb2\x37\x9e\x45\x91\x4f\x8b\x62\xb1\x4d\x3d\x71\x26\xa6\x3e\x0e\xec\x6f\x2f\x7d\xb2\x48\xc3\xdd\x18\x45\x13\xc6\x80\x1a\xd7\xa8\xcd\x9a\x37\x2e\x98\x25\x17\xbc\x10\x64\x39\x69\xa0\x41\xe2\xc8\x23\x58\x82\x22\x93\x3c\xe8\x15\x1e\xfb\xac\xe0\x6a\x02\x61\x2c\x3b\xdb\x19\xe8\x9b\xca\xab\x60\xbe\x02\x85\xc7\xa4\xc5\xba\xbc\xc6\xde\x0e\x16\x25\xad\xc6\x64\xeb\x05\xde\x40\xb6\x9e\xaf\x61\x2d\xb2\x0d\xeb\xaf\x42\x37\x47\xb2\xa1\x66\x99\xda\x2b\xb2\x06\xd8\xfc\xe6\xaa\xe5\x99\xf4\xd9\x2a\x55\x98\xb6\x0c\xf0\xae\x55\x39\x8a\xf9\x3a\x9a\x55\x8b\x12\x19\xc6\xed\xa3\x3e\xba\xda\x9f\xed\xe2\x80\xab\x6b\xec\x69\xa0\x01\x6a\x5c\xe1\x76\x35\xf6\x72\x04\x43\xca\xd9\xf5\x4a\xed\xd5\x7b\x4c\xf3\xc6\x0c\xf3\x8e\xa4\xec\x81\xfc\x91\x32\x01\xba\x2b\x4b\x14\x2f\xfa\x73\x48\xd0\x25\xdc\xb4\x2d\x31\x27\x8e\x13\xaa\x35\x69\x98\x34\xae\x3f\xe3\xdc\x33\x53\x63\x45\xbc\xc4\xe5\xb4\xdf\x78\x0a\x1f\x57\x31\x89\x10\x5c\xd6\x9a\xc2\x3a\x69\x5c\x7f\x0a\xb9\x67\x54\x27\xd7\xf6\xe3\x7f\xf1\x69\x85\x63\xe4\x59\x6f\x21\x59\xd4\x9a\x03\xe2\x0f\xac\x58\xfb\xfa\xd3\x30\x3d\x66\x98\x49\xcd\x51\x7f\x80\xf3\xd8\x7a\x68\xb1\xba\x28\x35\xc6\x5c\x59\x0c\xb0\xfa\x91\x9a\x35\x01\xed\xea\x42\x73\x07\x4d\x7d\x56\xb6\x1e\xbf\x90\xcd\xf8\x08\x2b\x8a\xcc\x15\x45\xbf\x6d\x65\x8a\xa9\x17\x3f\x97\xb5\x58\x24\x16\x92\x55\x84\x3f\x6d\xe4\xbf\x7c\x17\x95\xb8\x37\x66\xea\xe0\xb6\x96\x5c\x29\x38\x6e\xa4\xf9\x7d\xf7\x45\xe1\x72\xd6\x8d\xae\xac\x24\x7b\x50\xa1\x7a\xb7\x6b\x2f\xf9\x70\x78\x31\x1a\xfd\xf8\xc8\x6c\x2f\x21\x70\x3e\x47\xde\xb3\xc4\x62\x22\xc2\xfc\x12\x1b\x4a\x75\x09\x16\x95\xfa\xde\x04\x14\x3f\xc7\xe0\x49\x79\xd5\x07\x75\x06\x05\x15\x05\xea\x57\x8c\x23\xf0\x6c\x1d\xc0\xa8\xef\xe2\x20\x10\x33\x28\x14\x09\x0e\x1b\x8d\x67\x27\x4e\xec\xed\xab\x31\x93\x85\xba\xde\x1f\xe0\xbc\xc4\x86\x6d\x7e\x26\x11\x17\xb7\xc3\x34\xaf\x35\xdf\x08\x5f\x36\x17\xc0\x1f\x65\x62\x0d\x46\x7a\x94\x45\xf3\x10\x27\x65\x25\x9a\x14\x61\xa1\xef\x1e\x66\xdf\x5d\xe8\xd4\xd4\x0d\x86\xfb\x7a\x45\x57\x79\xec\x72\xfa\x41\xce\xd2\x48\x1f\x7c\xcb\xb2\x33\xd3\xa7\xc4\xdf\xed\x60\xab\xfe\x9f\xff\xbf\x9d\x8f\xbc\x1b\x03\xbb\x27\x1e\x93\x46\x9a\x06\xce\x8e\xea\x03\x57\x6f\x99\xb3\xcb\xc4\x9b\x1f\xeb\x3f\x27\x93\xaf\x1e\x4a\x69\xc8\x7b\xc3\x03\x6e\x44\x51\xa9\xe4\xbf\x15\xf8\x6f\xa5\x95\xd4\x14\x70\x6d\xe8\x79\x3e\x47\x00\xb5\x12\x72\x5d\x58\x51\x6d\x87\xb8\xd1\xa2\x0c\x1a\x54\xc0\x9c\x38\x97\x67\x8e\x13\x0e\xe7\x94\xad\x94\x76\xe9\x53\x72\xb3\x15\x53\x4f\x99\x71\x67\xec\x5d\x93\x74\x6f\x99\xc3\xff\x02\x4f\x86\xcf\xdf\xcc\xfe\xd7\xa6\x86\xda\xee\xb8\x75\x9e\x8a\x65\xb5\xcc\xb7\x42\x3e\xe4\xda\x09\xfd\x82\xaf\x66\x47\xb5\x75\xcc\x37\xe3\xc3\x02\x59\x33\x1c\x04\xf8\xd2\x0f\xe7\x56\xe0\xc7\xc4\x8a\x17\xf8\x32\xb6\xfc\xd0\xf3\x2f\x7c\x6f\x0d\x03\xeb\x87\x0f\x1f\xde\x5a\x6c\x6b\x2d\xb1\xcf\x16\x59\x44\x78\x3d\x5f\x58\x2f\xc2\x0b\xbc\x61\xf0\xf4\xd2\xe4\x9a\xc6\x46\x04\xfe\x39\xb2\xde\x46\x78\x89\xc8\x02\xad\xe3\x81\xc5\x7c\xc7\x0c\xb7\x1e\x9e\xe1\x35\xe1\xe0\x7c\x7e\x68\xe5\x80\xe1\xab\x91\x40\x13\x3b\x2f\x1b\x4e\x9f\x0e\xae\x20\x5b\x39\x95\xdc\x92\xea\x59\x95\x4b\x3e\x9d\xa6\x88\xa0\x6a\xdd\xef\x46\x09\xf2\x8d\x2b\xaa\x4a\xfd\x40\x50\x82\x56\x98\xf1\xe5\x37\xb3\xb3\xeb\x7e\x97\x0a\x3e\x0f\xcf\x9e\xfd\x13\x7f\xfd\xbd\x6b\x16\xe8\x13\xc3\xcf\x2d\x5d\x7b\x23\x9e\xe6\x91\x5a\x2d\x39\x83\xe4\xc0\xac\xc5\x86\x5f\xcd\x4a\x6f\xd3\x48\xd8\x6d\xca\x77\xd5\x45\xa1\x1d\x02\xbb\x68\x21\x35\xc1\xb6\xa2\x1a\x35\xc3\x74\x64\x67\x57\xb3\x3b\x66\x03\x65\x4b\x0b\x53\x67\x0b\x5c\x8d\xd3\xdb\x9f\xbb\xfa\x69\xf9\xea\x42\x23\xc7\x56\xe8\xb4\x7f\x98\x62\xd6\x92\x0a\xdc\xc9\x82\xd6\x25\x66\x9f\x2d\x85\xb5\x82\xf0\x18\xd5\x9a\x93\x46\xd4\x48\x3b\x8d\xa4\xe9\xec\x21\x89\xd7\xb9\x5a\xf1\xc4\xc9\xc6\xb5\x9b\xca\x09\x71\x67\xd4\xfd\xae\x94\xcb\xfe\x7a\x1d\x3c\x7f\xfd\x32\x1e\x6d\x51\x2e\x7b\x47\xf4\xbd\x88\xd6\x89\x37\xcd\x4d\x98\xec\x8a\x17\x7c\x3f\x63\x63\xc8\x1a\x0b\xaa\xa5\x46\xf6\x50\x3d\xc9\xb0\x89\xb1\x67\x9e\x27\xc4\x76\xa1\xbb\xfc\xcf\x4a\x02\x15\x45\x92\x6e\xf5\x6d\x53\x3c\x70\x5a\x04\x0d\x59\x72\x46\xb5\x52\xf2\xf5\xce\xe9\x4f\xf2\x3a\x95\x15\x2a\xd9\xa6\x62\x7c\x5e\xbc\xbf\xc5\xaa\xf1\x7f\xac\x23\x6b\xe0\xda\xf9\x4a\xf2\x77\xed\xf8\x6e\xc5\xad\x8b\x0a\xcd\x77\xa4\x55\x6d\x59\x74\x3e\xdf\xe1\x5a\x71\xa9\xde\x2a\xd3\xfd\xf7\xe8\x60\xf5\xe3\x93\xb7\xbf\x94\x42\x77\x0a\x98\xce\xdb\xd3\xaa\xc6\x26\xa7\xfd\xc1\x94\x95\xe8\x21\x7e\xc8\xac\x08\xad\x40\x3c\x45\xff\xd3\x1c\x70\xd8\x21\x38\x34\x9a\x0e\x14\x5f\xf8\x9d\x2c\x82\x2c\x48\xa9\x3c\x5f\x69\x21\xdd\x2d\x61\x0d\x87\x05\x25\x1e\x33\xb2\x4a\x4b\x54\xc3\x92\x2e\x6b\xe6\xdd\x9a\x30\x0d\xeb\x2c\x8b\xc6\x6a\xf2\x8b\x90\xe8\xa6\xd9\x9a\x33\x46\x24\xbc\x03\x59\x9b\x61\x24\xe0\xfe\x2a\x8e\xd0\x54\x16\x26\x66\xff\x3c\xd6\x7c\xf6\xdb\x00\xe1\x8d\x72\x46\x08\x1e\xda\xb4\x2d\x0e\x5e\x87\x1c\x72\xa7\x99\x74\x45\x5c\x52\xa1\x28\x53\x03\x1a\xda\x96\x09\x73\xaf\xb1\x95\x90\xf5\xca\x6c\xb9\x6d\xd2\xdc\x18\x83\x17\x3c\x45\xf2\xf7\xe4\xcd\x4d\xf2\xd3\x0a\x7d\x4f\xdd\x24\xd6\x94\x36\x2a\xaf\xb9\xdd\x9d\xba\x5f\xaf\x1a\x33\xd3\xe2\x8b\x52\x5c\xa4\x56\xcf\x68\x40\x42\x02\xea\xc0\x1e\x31\xf1\x23\x09\xf5\xd8\x52\x08\x49\xb7\x78\x4b\x29\x44\x84\xa0\xde\xaa\xdc\xb1\xf7\xf1\x9f\xe1\xf0\xef\xbf\x1d\x14\xe7\xb1\x54\x64\xaf\x34\x4b\x42\x61\xa0\x03\x3a\x7a\x4e\x77\x69\x28\x4f\xda\x3e\x38\x36\xd7\x9b\xae\x53\xa8\xda\x8c\xa6\xd4\x1e\x87\xa9\xce\x3b\xf3\xc9\xfc\xb6\xe6\xe1\x1f\xef\x1b\x1d\x5d\xf9\x58\xef\xee\x92\x6e\x6a\x30\x91\x6e\xd0\xd0\xdb\x24\xdc\xec\x17\xd7\x20\x32\x44\x05\xe7\x2a\x0f\xd5\x61\x90\xb7\x5d\x51\xe4\x51\x37\x49\x36\x06\x65\xf0\x36\x0a\x8a\x6c\x91\xb9\x92\x4d\xd6\xe9\x3c\x7d\x45\x79\x5b\x99\xcf\xa2\x69\x2a\x8b\xd6\x6d\x41\x5a\x4b\x17\x9b\xd1\x20\xa5\xc5\x36\xc3\xc6\x0c\x9b\xc7\x6a\xb7\xc0\x41\xab\x8e\x84\xd7\x06\xa5\x66\x37\x64\x41\xec\x04\x1c\x11\x38\xb5\x9f\x43\x02\x5d\x14\x12\x71\x1a\x55\xf4\xf2\x4c\x80\xfd\x21\x18\x99\xc1\x1c\xf2\x68\xef\x05\xeb\xe0\x87\xf3\x08\xc5\xb1\x79\x29\xf2\x51\xd5\x35\x63\x91\xf1\x0a\x07\x78\xbe\xb1\x0b\x2f\x3e\xcb\x6b\x19\x10\xd9\x2e\xfb\x1e\x63\x62\x50\xae\xb9\x39\x72\xfd\xa8\x41\xc4\x3e\x41\xd1\x92\xd9\x03\xc2\x79\x61\xe0\x7e\xcd\x39\xbf\xf2\xc3\x73\xe4\xa5\xa4\xab\x62\xea\x59\x0a\x58\x31\xf5\x1c\xc1\xdc\x7a\xea\x05\x1b\xdf\x74\xda\x86\x60\x7f\xf3\x84\x8b\x03\xfd\xcd\x33\x36\x05\xf9\x9b\xf2\x14\xea\x0d\xf3\xa5\x90\x8a\x2b\x87\xe9\x27\x0d\xeb\x0d\x33\xd7\x5e\xcd\x1e\x69\x42\x90\x3a\x3c\x8a\x2f\x59\x6e\x8f\x90\x38\x2a\x66\x9b\xb4\xac\x3b\xdd\xec\x03\x65\x27\xf1\x10\x3c\x61\xd1\x0a\xd0\x0f\x35\x4a\x56\x6f\x1a\xef\xf0\x9a\xae\x46\xd5\x1c\x22\xd1\xac\xde\x04\x32\xad\xab\xef\xd1\xe3\xb2\x6d\x6b\x4b\x1f\x99\x7f\xae\x82\x36\x72\xc7\x5f\x2d\xba\xa8\x34\xd5\x26\x54\x9e\x9e\x51\x15\xa2\x74\xe3\x35\x6b\xb2\x9c\xfc\x90\x85\xa0\xc6\x19\x7d\xa0\x6e\xec\xb1\x5d\x28\x85\x1e\x18\x7b\x37\x6d\xa2\xc2\x89\x15\x99\x4d\xa0\x28\x19\x9f\x78\x9d\xe4\xb5\x94\x88\x7c\x53\x2d\x77\xa6\x10\x54\xa5\x12\x8c\x25\x2f\x6f\xbe\x59\xa1\xd0\x7a\x0e\xe3\xc5\x19\x86\x91\xd7\x36\x68\xf5\xd6\xca\xb7\x95\xe7\x09\x8d\x1b\xe6\x09\x65\xd4\x4d\x35\xb2\x7d\x5c\x99\x25\x54\x9d\x23\xb4\xbb\x0c\x21\x61\x2b\x62\x06\xa4\x75\x14\xc4\x36\x3d\x08\xa1\x87\xa2\xbe\xb4\x8a\xe8\x79\x40\x49\x9a\x10\x2f\xde\xca\xac\x53\x2e\xa3\xba\x4a\x61\x57\xf6\x7f\xab\x08\x7f\x52\x5c\x5d\x02\x88\x55\x4a\x6b\x22\xb4\x38\x9f\x46\x24\xed\xda\x69\x31\x59\x85\xc5\xd8\x82\x5d\xa5\xa2\x8f\x9e\xe2\xb4\x9b\x1c\x24\x46\xf9\x3a\xb0\x6c\xed\xf9\x8a\x68\x70\xbb\x91\xc9\xee\xec\xf7\x8f\x3f\xfd\xf3\x9f\x5d\xe0\x75\x57\xc7\xbf\xa8\x82\xcb\x4d\x64\x22\xa5\x52\x69\x98\x47\xeb\x36\xa0\x74\x8f\x92\x04\x26\x15\x08\xf5\x48\xf9\xb2\x02\x66\x3b\xe9\xe0\x89\xe1\xf9\x27\xdd\xa0\x6c\x1f\xe4\x95\xbb\x43\xca\xbc\xda\x82\x6c\x0b\x6f\x43\x13\x4d\xef\xce\xf8\x10\xc5\xad\x2a\x77\x21\x76\x89\x62\x7c\x98\x43\x31\x36\x54\x3b\x4b\x14\xeb\x96\x18\xc6\x25\x5d\x1e\x6d\x01\x60\x9c\xbb\x06\x46\xe4\xe2\xb2\xf9\x54\xf8\x4e\x8b\x01\x86\x4b\x3a\x7d\xb2\x43\x74\x61\xc3\x85\xc9\x15\x6a\x93\xd2\xd8\xcb\x14\x3d\x2b\x87\xf0\x3b\x6a\x03\xf1\x5b\x96\x30\x66\x7e\x69\x07\x50\xbf\x76\x57\x30\xbf\xfa\xc8\xb6\x82\xfb\xad\x21\xba\xb5\x80\xfa\xad\x20\x04\x9a\xd3\x5c\x95\x06\x52\x73\x99\x31\xe3\xdc\x06\x65\x98\xc0\xf5\xf0\x80\x6b\x4c\xb8\x15\x16\xf0\x97\xee\xdb\xce\xba\x88\x95\xb0\xc5\x64\x1f\xea\xa6\x1e\xde\x80\xfb\x77\xab\xcc\xfc\x32\x7c\xc6\x26\x80\x8a\x5d\xc4\x89\x9b\x71\x17\xbb\x06\x57\xcc\xa2\x2a\xe6\x2b\xf7\x54\xe2\x2a\x6e\x03\xa1\xa8\xcb\xd5\x1d\x49\xe9\x8a\x4d\xeb\x56\xc5\xf4\x0f\x8f\xbc\xf8\xc7\x1f\x1e\xbf\x2e\x72\x45\x9b\x5c\xcf\x25\x4a\xed\xb0\x3e\x01\xcf\xe8\xb3\x53\x2d\xc6\xb5\x58\x9b\xad\xd2\x64\x2b\x4e\xec\xee\xd4\x37\x65\x53\x3b\x3e\x23\xac\x54\xfa\x6d\x1f\x94\x93\x9f\x37\x7f\xff\xfb\xdb\x7f\xfc\xbd\x5e\x82\x42\xca\x3f\x93\x69\x24\xe5\xeb\xf9\xa1\x49\x82\xc9\x78\x70\x99\x88\x5c\x80\x6b\x82\x67\x7e\x10\x08\xa9\x79\x7d\xb6\xf4\xf5\x28\xbc\x03\x19\x5e\x36\xd6\x4a\x10\x25\x26\x2e\x3d\x24\x52\xda\xae\xf6\x35\x43\x76\x95\x31\x78\xc0\x91\x30\xca\x0c\x8d\xc5\x07\x2c\x99\x18\x9b\x17\x9f\x56\x52\xe0\x40\x52\x30\x12\xc1\x30\x66\x69\xd9\x8d\xcb\xe7\x97\x1e\x92\xae\x0f\xde\x9d\xa8\xfc\x35\xfa\xb8\xbf\xff\xfb\xbb\xbf\x3f\x36\x93\x28\xb8\xf2\x15\x96\x90\xb3\x2b\x24\x45\xf6\xd9\x87\x11\x65\x43\x4c\x7e\xe3\xff\x98\xce\xad\x07\x09\xec\x07\x98\xb9\xcf\x73\x81\x20\x19\xe5\x98\x09\xfd\xb2\xce\x96\x66\x45\x9a\xe1\xa8\xaf\xd4\xb5\xd0\x6a\xa8\x74\x18\xdf\x21\x22\x78\x1a\xdb\x25\xd9\x73\x99\x8a\x0f\x5a\x11\xfb\x91\xd2\xf9\x6e\x9c\xe2\x6c\x89\xbd\xe6\xd6\xf4\xb1\x32\x42\x9e\xd6\xd1\x44\x77\x2a\x40\x6f\xe3\x98\xf7\xc8\x98\x6a\x71\xa4\x68\xba\xfb\x8a\x55\xa4\x03\x8b\x8b\xc6\xf5\x64\xd0\xef\xe3\x29\xb0\x9f\xb1\x2b\xd6\xb6\xac\x99\x2a\x2a\x67\xcc\x64\x8a\xc3\xab\x86\x9d\xac\xb8\xb3\x1a\x49\x63\x19\x7d\x80\x12\x10\x18\xa4\x51\x43\xdc\x45\xc0\x1c\x2b\x22\x04\xaa\xbf\x15\x82\x7f\xb1\x87\x84\xd9\xdc\x4a\x09\xbe\x2b\x2b\xff\x2b\x4e\x8c\x21\x0f\xbe\xeb\x27\xbf\x25\xf3\x3b\x49\xbf\x29\xc2\x2e\xa9\x90\xe9\x81\x21\x56\x59\x06\xe6\x75\x55\x8c\x2b\xab\xc8\xa6\x8c\xb8\x6d\x34\x7c\xa9\xfd\xea\x20\x6b\x80\xd1\x6c\x32\x12\x2f\xa9\x22\xa0\x5d\x37\x5c\xd5\xeb\xf2\x71\x43\xc3\x95\x19\x42\x8f\x13\x00\xf5\xfa\x97\xbc\xb2\xa6\xad\xac\x6d\xdd\xaa\xdc\xd1\x2e\xde\x4a\x3d\x82\x5f\xdb\xa4\x8c\x5d\xb2\x49\x49\xfb\x03\x65\xa5\x0e\xe4\x5f\x63\x21\x7e\x8d\x8c\xeb\xe7\x7b\x8c\x1c\x24\x01\xfb\x23\x66\xcb\x69\x11\xb2\x2f\xb3\x21\x18\x47\xf5\x02\x54\x4c\xff\x8a\xe3\xd3\x75\x46\xf1\xa8\x6d\xd5\x7b\x7d\xf1\x69\x57\x0c\xcc\x60\x1d\x13\xbc\x7c\x87\xb8\x7a\xfa\x1a\x13\xe9\x70\x4d\xed\x25\x06\xfb\x4e\x69\x8f\x0b\xe4\x9e\x77\xd1\xd1\x07\xa6\x89\xcb\x2e\x54\xeb\x54\x15\x01\x64\x1a\x46\xf5\x0b\xf3\xa7\xf6\xc8\x68\x61\x30\x84\xf2\x97\xef\x74\xf3\xe4\x8c\x9d\xec\x71\x47\x16\x30\x43\xc7\xbb\xaa\x99\xa4\xbe\xa6\xda\x32\xa6\xff\xa7\xd9\xc9\xd2\xc3\x90\xc5\xa3\xac\xcd\xa3\xa8\xd4\xbb\x0e\x3d\x4b\xaf\x92\xcb\x10\x73\x88\x92\xb5\x91\xb5\xc4\xe5\xa6\x51\x5c\x64\xa5\xe8\x14\x96\xd2\xce\x56\x8f\xe4\x1f\x78\x5c\x70\xd2\xeb\x7e\x79\x08\x1e\x69\xef\xac\x97\x8b\x5a\x11\xe9\xd0\xdc\x18\x58\x2f\x2c\x62\x4b\x2b\x4b\x6a\x99\xe3\xf6\x95\xd2\x3c\x91\x84\x47\x15\x19\x02\x05\x6f\x4e\xb4\xe7\x34\x42\x20\x42\xb3\x08\xc5\x8b\x3e\x23\x74\xba\xad\x0f\xd8\x71\xb0\x9e\xe7\x12\x57\xd6\x91\xdf\x91\xbe\xdd\x49\x65\x15\xd6\x69\x94\x84\x86\xdd\xaa\x9e\xfd\xe8\xe4\xe3\xab\xff\x79\xee\x59\x4b\x08\x8a\x34\x16\x6d\x97\x28\x14\xa9\x10\xe4\xf9\xb1\x8b\x2f\x50\xb4\xe9\x8b\xe0\x10\x41\x56\xf9\x5f\xd3\x34\xc4\x5b\x46\xec\x99\xd4\xd8\x32\xdb\x77\x0d\x98\x14\xde\x73\xfb\xe3\x24\xd6\xac\x93\x53\x94\x56\x3b\xba\xdd\x63\xf4\x06\xfb\x27\xff\xf8\x34\xdc\x4d\xe0\x47\x9d\x4c\x1d\x73\x5e\xd1\x4d\xa5\x6b\x1f\x66\xa2\x64\x13\x01\x59\x8d\x50\xc9\xd9\x13\x76\x18\xd5\x71\x58\x14\xd5\xb1\x4d\xce\xb8\x01\x11\xff\x10\x8c\xea\xa2\x6b\xdd\x72\x5e\xf8\x6e\x14\xe0\x2f\x32\x72\xc3\x70\x40\x6b\x86\x6c\xec\x32\xba\xa2\x05\x9a\x63\x82\xc4\xb8\x84\x1b\x2b\x42\x2e\xf2\x2f\x90\x45\x22\x38\x9b\xf9\xae\x35\x8b\xf0\xd2\x00\xda\x28\x81\x1d\x99\x70\x2a\xc2\xfe\x06\xd6\x2b\x04\xa3\x50\x85\x6e\x74\xe9\x4e\xcf\xd7\x11\x7d\x8d\x68\x25\xa1\x1c\x73\xa9\x53\x05\x55\x50\x58\x0c\x54\x69\xfd\xc7\x30\x44\x2e\xd9\x33\x86\xcd\x77\x11\x54\x1b\x13\xb4\xea\x9f\x51\xcd\x06\xad\xf2\xe5\x0c\x0b\x30\x28\x0b\x88\x5a\x61\xa0\x8b\x31\xc0\xa5\x19\xd6\x72\xfe\x75\xd9\x60\x97\x1d\xd4\xb0\xb6\xef\x54\x05\xeb\x1a\x0a\x63\xab\xfa\xd5\x76\xdd\xea\xd5\x29\xd4\x43\xaa\xa0\x73\x8f\x5b\x91\x81\xa0\x5e\xf0\xca\xee\xc2\x57\x3a\x57\xdf\x77\xaa\xb4\xd7\x55\xd5\x35\xf5\x3c\xe0\x09\x59\x45\xd1\x2c\xa5\x9a\x73\x03\x14\xf6\x1b\x0b\x7d\xf9\x12\xe3\x5a\x12\x25\xb2\x34\xc0\xa5\x48\x8b\x4d\xe3\xc0\xa4\x1e\x9b\x8f\x34\xcf\x96\x29\xdd\x7d\x5c\x4b\x72\xa0\xba\x50\x41\x08\xcf\x04\xba\x55\xf5\x63\xfd\xe4\xfc\xc5\xa3\xd9\x6f\xf3\xc2\x9a\x17\x75\x0a\x5b\x24\xb0\x86\xbb\xd4\x14\x54\x3e\x9a\xe5\x78\x49\x52\xd5\x61\x96\xa9\xb5\x76\x2f\x2a\x6e\xd3\x1b\x83\x52\x4c\x58\xa4\xec\x5d\x02\x40\x0a\x41\xa1\x9e\x4c\xf8\x67\x40\xad\xbb\x63\x40\x8b\xbb\x23\xad\x92\xf6\x25\x94\x4e\x0a\x1d\x4b\xb8\xe2\x64\x74\x16\x40\x42\x50\xb8\x15\x6e\x4c\x42\x8e\xba\xa1\x6b\x69\x06\xf8\xad\xd2\xb6\xf1\xe2\xe2\xdc\x1b\x3d\xf9\xbe\xa5\x85\xee\x46\xa8\x9a\xc4\xfd\x3e\x00\xa7\xf6\xf7\xc2\xb6\xf3\xdd\xe6\xd9\xc9\x2b\x73\x79\x9e\x6a\x4c\x02\xb1\xf6\xfd\x25\x22\x91\xef\xc6\x0c\x84\x84\x09\xae\x4b\x9f\x20\xaf\x2f\x8d\xc3\x45\x5e\xb3\x8a\x10\xfe\x27\x19\xc7\x74\x23\x12\x58\x30\xc4\xe2\x20\xb7\x24\x0e\xec\x5b\x25\x4d\xed\x5b\xf1\xd8\x0f\x3c\xff\xed\x5b\x1c\xa6\x21\x07\xd9\x80\xb7\x03\x96\xe6\x39\xf3\xa3\x98\xf0\x13\x27\x61\xd4\x0e\xcc\xd8\xea\x86\x84\xd0\xc3\x06\x09\xa1\x87\x86\xd7\x19\x8a\xba\xb1\x2a\x6b\x7c\xd0\x49\xb6\x76\x69\xf8\x5c\x4d\x02\xdf\x19\x79\xaf\x41\xdc\xdb\x95\x53\x92\x17\x65\x31\x2e\xa4\xee\xaf\xb1\xe5\xa1\x15\x0a\x3d\x14\xba\x3e\x8a\x8b\xbd\x3b\x8d\x88\xfa\x4e\x98\x55\x35\xab\xca\xa3\xaf\x21\x9f\x2c\x50\x64\x79\xf8\x32\x94\xf0\x6f\x21\x8e\x52\x48\x36\x60\x5d\x2e\x7c\x77\x61\x2d\x11\x0c\x63\x0e\x02\xa7\x44\xe5\x33\x9e\x27\x0d\x2c\xc8\xb3\x08\xb6\x84\x2d\xc4\xba\xf4\xc9\xc2\xf2\xc9\xc0\x7a\xe6\x79\x0a\xb6\x1c\x0c\x3d\xd5\x57\x49\xb0\x85\xc2\x78\x1d\x21\xcd\xc5\x68\xf9\xb1\xec\x07\x79\xbc\x27\xb2\x40\x56\x84\x62\x62\xe1\x99\xb5\xc1\xeb\x28\x69\xba\x44\xf1\x62\x70\x53\xbb\xd2\x32\xc2\xc9\xd6\x21\x89\x18\xfd\xf6\xb0\x1b\xf7\xa9\x5a\x58\xb8\x59\x15\x46\xa9\x61\x3d\x9b\x54\x84\xe6\x7e\x4c\x22\x28\x42\x87\x78\x36\x8c\xfa\xe5\xff\x49\x80\x25\xe5\x46\xb2\xaf\xfb\xcc\x0e\x85\xc2\xa4\x72\x71\xa5\xad\xaa\xc0\xc6\x25\xa6\xf6\x5c\xad\x9a\x62\xe1\xd0\x52\x31\x35\x6a\x56\x05\xdf\x4d\x46\x46\x67\xb2\x11\x57\xfa\xf4\x08\x62\x29\x1e\x29\x0c\x43\x88\x50\x85\xb9\xd4\xcc\x1b\xda\x4f\xb3\x9b\xdb\x22\x00\x6b\xb2\x4f\x27\x82\xd4\x9d\x41\xfe\x45\x9f\x7e\x79\xf7\xfc\x63\xf4\xee\xd6\x9c\x54\x66\x20\xba\x9b\x72\x52\x69\x26\xdc\x51\x95\x93\xca\x98\xbb\xfc\x64\x5a\x95\xbb\xdc\xcc\x4d\xa5\x0d\x49\x75\x81\xfd\x09\x93\x8f\x6f\xcc\x51\x75\x94\xf7\xef\x3c\xde\xd2\x51\x55\xd2\x65\x4d\x97\x51\x55\x8a\xb1\xc9\x51\x55\x36\x91\xa6\xb9\xc5\x2d\x3c\x55\xd5\xa2\xd3\xc7\x54\x80\x89\x90\xea\x82\x82\xa4\xd8\x65\xd5\xde\x31\x55\xe9\x90\x3a\xac\xc7\xfc\x73\xb8\x5a\x5d\x38\xa3\xb4\xfa\x67\x26\x3f\x54\x89\x27\xea\x51\xde\x9b\xad\xb8\xa5\x4a\x3d\x51\x6d\x52\xad\x4b\x6d\x74\xf7\x9e\xa8\x2e\x3c\x51\x09\xb1\x33\xbb\xa2\x34\xec\xf1\xac\x43\x8a\x6b\xc4\xf7\x7e\xa9\xdb\xf3\x4b\x69\xd0\xdb\x86\xfe\xee\x3d\x52\xbb\xf4\x48\xe9\xb1\x8d\x7f\x20\xb7\xd4\x56\x70\xdf\x3c\x6f\xed\x96\x35\x8c\x1f\xff\xfd\xf8\x1f\xaf\x7e\xdc\xfb\x50\xcf\x56\x9b\x01\xe6\xaf\xc7\x36\x04\x7a\xb4\x9c\xee\x34\x9b\xc5\x57\xb7\x90\x55\x15\x8e\x97\x78\x41\x33\x45\x92\x3d\xd4\x66\xf7\x16\x08\x7a\xb7\xbd\x79\xdf\xbf\xfd\xed\x3c\x20\x27\xff\xaa\x6f\x68\xe7\xf0\x60\x89\x74\x9f\x80\x24\x8b\xef\xa7\x8d\x2e\xfb\x12\x7b\x54\x79\xab\xbd\xd6\x74\xc9\xda\x2c\x75\x80\xa1\x77\x07\x02\x8f\xf1\xfe\xd1\x8b\xef\x67\xf0\x7d\xad\xd5\x2e\x5b\xb8\xfa\x2b\x26\x66\xde\x66\xd1\x42\x4c\x58\x9a\xc3\x6d\xaf\xda\xec\xc5\xfb\xbf\x3f\x89\x56\xde\x0d\xae\x9a\x9c\x7a\xab\x65\x13\x5c\xea\x76\x17\xed\x70\xfe\x64\x33\xfa\xf0\x9f\xe1\x17\x0f\x77\x71\x43\x20\x17\x7c\xd7\xda\xec\x77\x8c\x08\xf1\xc3\xdb\x8f\x07\xf9\xfe\xe3\x3f\xde\x7f\xf7\x12\x17\xd4\xf8\x0a\x45\xd6\x5d\x8e\xa4\x6b\xd5\x99\xec\xf7\x72\x32\xf9\xed\xb9\x81\x22\x0e\xcd\x5d\x53\x89\x5b\xca\x8c\xe4\x2f\xa7\xb3\xcb\x02\x04\xed\x31\x53\xc5\x9e\x68\xe5\x25\x68\x8f\x3e\xcb\x50\x6d\xee\xf6\x93\x51\x2f\x3f\xa4\xcb\xd8\x3e\x44\x24\x5f\x2b\xf2\x15\x76\x61\x60\xbd\x27\x38\x82\x73\x73\x52\x78\x03\xe7\x91\x1c\xeb\x77\x52\x8b\xdb\x6e\xa4\x65\x8e\x3c\x14\x23\x4b\x5e\x52\xa6\xcd\xf9\xcb\x25\xf2\x7c\x48\x50\xb0\xb1\x62\x78\xc1\xbd\x71\x01\x9b\x5d\xcc\x67\xc7\x9c\x6f\x2b\x14\xc5\x7e\x4c\x94\xc2\xf8\x67\x11\xbe\x8c\x51\x64\xad\x63\x38\x47\x5d\xb8\xd2\xaa\xd1\x6a\xd3\x29\x32\x54\x99\x22\x3b\xf7\xa8\xcc\x7c\x23\xac\x5f\x1f\x5f\xfe\xfa\xfc\xe5\xfb\x67\xdf\xbd\x7a\xf1\xeb\xbb\x17\xcf\x5e\x7d\x78\xf9\xd3\x0b\x23\xe2\x74\x13\x1b\x0e\x1b\x98\x8f\x02\x2f\xe6\x10\x07\x25\x55\x46\x74\xcf\x31\xcb\xc5\xf6\xc3\xb9\xf5\xcf\x35\x62\x55\x1c\x4b\x5c\x5b\xd9\xfd\xfd\x11\xa1\x95\xe5\x42\x02\x03\x3c\xb7\xe8\x65\xb1\xd6\xab\x3e\xc1\x7d\x0f\x12\xc4\x7c\xa0\x78\x4d\x2c\x91\x31\xc7\x0b\x72\x21\x6b\x45\x77\xcc\x7a\x16\x6e\x2c\x6e\x73\x8a\xad\x25\xf4\x10\xdd\x78\xa9\x8f\x01\x2b\xc4\x1e\xca\xf9\x5d\x2f\xf1\x3a\xf0\xac\x33\x44\x3b\xe4\xf6\x53\xcb\x0f\xad\x08\xc1\xc0\x22\xfe\x12\x0d\x2a\x06\xae\x3b\x39\x36\x2b\xa4\x5a\xcc\xcb\x7c\x99\x1c\x88\xbc\xd8\x40\x61\xb2\xcb\xef\x03\xdb\x0d\x7c\x14\x92\xd3\x33\xb1\xbc\x53\x61\x15\xe5\x76\x79\xe4\xd9\x20\x0b\xfa\x41\x65\x77\xfe\x90\x2d\xe8\x1c\xcb\x6d\x9b\xa6\x8f\x28\x60\x11\x87\xc0\xc6\x21\x5f\x40\x3b\xc3\xe2\x79\xa1\x25\xf1\x9b\x86\x2f\x51\xc3\x2b\x90\x9d\x54\xbc\x82\xa1\xa6\x63\xd4\x1d\xf3\x1b\xaa\xf2\xbf\x99\xcd\xd4\x11\x98\xb1\xef\x9a\x78\x52\x1b\xa0\x70\x37\x67\x32\x75\x7e\xae\x84\x9e\xe6\xf5\xc9\xa5\xcd\x43\xc3\x71\x16\xbe\x56\xdc\x44\x1a\x92\xe4\xb2\x81\x3c\x14\xc1\x30\xa6\x24\x2a\xde\x13\x38\xd4\xa9\x34\x04\x6c\x44\x05\x97\x3e\x03\x1c\x62\x2a\x5f\x7f\x16\xc1\x39\xa3\x28\xf9\x07\x35\xd9\x09\x90\xae\xa4\xa7\x70\x42\xe4\xd7\xca\x6c\xc2\xca\xd9\x9c\x61\x1c\x20\x18\xea\xf3\xf9\x36\x9d\xd0\x5e\x8c\x22\x1f\x06\xfe\xff\x50\xb4\xd7\x5f\x45\xfe\x05\x0f\x68\xda\x76\x0e\x85\x0f\x24\x31\x5b\x57\x28\x5c\x2f\x51\x04\xcf\x02\xfa\x08\x98\x23\x72\x9c\xbc\xd3\xb9\x8a\x10\x59\x47\xa1\x45\x06\xdf\xf1\xf1\x7f\x90\x33\xba\xbe\x76\xae\x1d\xe7\x41\xe9\x9c\x3d\x6e\xbe\xfd\x32\x27\xfc\x1c\x12\x94\x99\x6d\xf9\x0e\xcb\xb3\xd8\x6f\x7d\x70\x33\x3d\xdc\xb1\x13\x2c\x47\xb7\xcd\xcc\xee\xda\x9c\xc2\x35\x1d\xfe\x17\x7b\x46\x5f\xb3\xe1\x37\x3a\xa5\x31\x89\x32\x16\xac\x2f\x6a\xc6\xef\xd9\xf0\xab\x67\xbc\x26\x7e\x10\xef\x41\x37\x88\xfb\x12\x0d\xb5\x50\xad\x96\x9f\x2d\x42\x67\x07\xc2\xf4\x75\x54\x44\x43\x4f\x8b\x06\x4f\xe4\x14\x43\xa0\x0f\x3e\x09\xeb\x12\x7f\x5f\x46\x3e\x11\x9f\xaf\x9d\x63\x74\x4a\xa6\x93\x10\xa0\xeb\x2d\x8e\xbe\x3a\x7c\x7e\xfe\x61\x34\x67\x3e\xe2\x78\xc0\xe3\x34\xfe\x36\x7a\xf8\x90\x5f\x90\xaf\x26\xe9\x8f\xa7\xa3\xe9\x53\xf5\x8f\xe3\xb7\x11\x5e\xfa\x31\x7a\x20\x66\x9c\xf4\x1b\xf1\x7e\x31\xf0\x01\x9c\x88\x81\x9e\xa3\x4d\xdc\x8b\x9c\xd3\xe1\x14\x04\x93\xe8\x14\x4e\xe5\x53\xa4\x77\xe5\xc7\xcf\xd6\x64\x81\x23\xff\x7f\xc8\x3b\x0e\xd1\xa5\x15\xf6\xb4\x35\xc6\xe9\x90\x89\x73\x85\x7a\xc4\xb9\xa6\x1b\xe7\xc7\x2f\x42\xba\x32\xc6\x67\x7c\xe3\x33\xd7\x00\x82\x60\xe0\x42\xe2\x2e\x94\xe6\xc4\xb9\xf2\x67\x3d\x32\x60\x56\xf4\xf8\xe1\x43\xf9\xe9\x74\x38\x75\xae\xe2\x4b\x9f\xb6\x56\xbe\x1b\xf0\x43\xe1\x5c\xb9\x30\x46\xf6\xe1\x70\x68\x1f\xfb\xb3\xde\x57\xf4\x1d\x8e\x98\x94\xdf\xfb\x6a\xe4\x00\xcc\xfe\x3f\x1c\x44\x88\x2e\x41\x8f\x38\x0f\xfc\xde\x57\x43\xf1\xfd\x83\xb3\x08\xc1\xf3\x07\xac\x8f\x83\xe1\xbe\x7d\x5c\xf8\xdb\x88\xfd\x36\xd2\x7f\x13\x9b\x79\x4c\xd5\xc2\x4b\xed\x7d\xe4\x9a\x0f\xe2\x74\x7a\x6d\xfa\xd1\x71\x06\x64\x81\x32\xab\x95\x0e\x9b\x0f\x61\xe8\x00\x74\xed\x38\xce\xf5\x75\xe9\x0d\x89\x5d\xb4\x2b\xd3\xac\x4e\x33\xf8\x31\x45\x03\xe6\xea\xea\xd9\x7b\xb6\x23\x8f\x4f\x28\x8f\x2c\x79\x1a\x0e\xe2\xc0\x77\x51\x6f\x08\xfa\xc4\x19\xb8\x38\x74\x21\xe9\xd9\xb6\x33\xf8\x0d\xfb\x21\x7b\xe8\xd8\xb6\xcb\x27\x44\xf0\x99\x4e\xdd\xce\x60\x8c\x1e\x1d\xf4\x7f\x8b\x3b\x65\x3e\x9d\xdd\x40\x7b\x4d\x66\xfd\x23\x1b\x44\x29\x0b\x1b\x10\xfc\xdd\x86\xa0\x67\x54\x0a\xe8\xa1\x74\x9d\xd0\xa5\xf5\x01\x7d\x22\xcf\x91\x8b\x3d\x14\xf5\x42\x67\xe0\xb1\x8f\xbd\xc8\x29\x5d\x93\x33\x82\xe1\x17\xba\x26\x72\xce\x2f\xc2\x64\xce\x88\x7d\x54\xd6\x25\x5d\xb7\x59\x84\x97\xe9\xca\x55\xac\x8a\x0b\x03\x77\x4d\xf5\x94\xfe\x0a\x73\x6c\x59\x93\x64\x73\x06\x63\xdf\xed\x7b\x11\x5e\x79\xf8\x32\x2c\x7e\xf4\x0e\xf1\x48\xd1\xbe\x82\x37\xba\x30\x08\x58\xc4\x0c\x2f\x47\xbb\x5b\x02\x20\x47\x67\xcb\xaf\xec\xaf\x26\xf4\xbd\x78\x66\xa1\xa7\xf9\x39\xa0\xeb\x63\x54\xbe\x77\x2c\x77\xa2\x3f\xf3\xc3\x39\x8a\x56\x91\xcf\x53\x32\x6a\x72\x78\x79\x38\x55\xb6\x86\x9c\x07\xfe\xac\x27\xbe\x99\x23\xf2\xe6\x32\x94\x73\x7d\xcf\xad\xdf\xfc\xa9\x68\x52\xd6\x86\x76\x43\x1e\x3e\xec\x45\x93\x68\xc0\x1d\xfc\x3a\x8b\x12\xd3\x33\x76\xf1\x1c\xc5\x6e\xe4\xaf\x08\x8e\xd8\x18\x07\xe9\x5e\x53\x2a\x0e\xc2\xc1\x6a\x1d\x2f\x06\x70\xb5\x0a\x36\xbd\x10\x44\xce\xb5\xa4\x0a\xd7\xc9\xec\xf8\x5c\x71\xd4\xe3\xf3\x1b\x7d\x13\xfe\x35\x7b\x01\xbf\x09\xbf\xfe\x5a\xb0\xf6\x49\xb8\x0e\x82\xaf\x94\x5b\x18\xaa\xb7\x30\x9c\x1e\x5f\x5d\x3f\x08\xff\xbf\xe3\xa7\x44\x2c\x4b\x0f\x3b\xe0\xab\xa1\x33\x98\xe1\xe8\x05\xcc\x32\x5f\x36\x68\x80\x4f\xc9\x94\x1e\xba\xe3\x8a\x19\xc6\x46\x99\xca\x47\x71\x0f\x81\xaa\x47\x7b\xd8\x71\x8e\x95\x31\x15\x0c\xa8\x58\x68\xab\x5a\x7d\x0c\x88\x43\x27\x71\x9d\x1c\xc6\x64\x81\xa3\x2f\x50\x40\x94\xe7\x1d\xe7\x89\xf1\xd8\x48\x8c\xc7\xea\x31\x18\x4f\x8f\xff\xf1\xfe\xcd\xeb\x01\x57\x1b\xfc\xd9\x26\x27\x29\xfa\x54\x1e\x63\xd2\x17\x3d\x4f\x93\x49\xf0\xf9\x73\x20\x5e\xf0\xd7\x91\xc3\xc5\x17\x4a\xc5\x5f\x50\xd9\xab\x67\x7f\x64\xf2\x1e\xcb\x5b\x61\x77\xd8\x52\xee\x30\xb0\x96\x7e\x1c\xfb\xe1\xdc\x9a\xe1\x08\xf9\xf3\xf0\x47\xb4\xb1\x78\xfc\xa9\x93\x7b\xef\x9a\x4f\xcb\x05\xf1\x04\x4a\xa1\x02\xd8\xce\x60\x09\x57\x19\x31\x52\x8e\x8c\xbb\xbd\xe6\x88\xf4\xd6\x00\x39\x9f\x3f\xeb\x7f\x6f\x3d\x66\x06\x9f\x96\x8c\x53\xef\x9c\xd2\xb2\x99\x36\x00\xe2\x7c\xfe\x9c\x50\xf6\x84\xc3\xf7\xc2\xde\xd5\x35\x58\x3b\xa0\x17\xf5\xdc\xc9\xd5\x35\x20\x60\xe6\x80\xa8\xe7\x02\x04\x02\xfe\xc1\x07\xb8\x77\x3a\x03\xc1\x54\x8a\x47\x31\x25\x0f\x2e\x13\xf4\xca\x48\xa6\xe7\x27\x65\x55\x76\x2e\xeb\xa1\x09\x1a\x9c\x60\x1c\x79\x80\x4c\x08\xff\xf4\x20\xa5\x4b\x43\x10\x4d\x86\xdf\x44\x7f\x45\x83\x9f\x91\x2b\xe9\x52\x94\xd2\x25\xf6\xfd\x69\x34\xed\x13\xf1\xe1\x41\xf8\xf5\x04\xff\x5f\x7c\x4d\x7f\xf6\x27\x3f\x41\xb2\x18\xc4\xbf\x47\xa4\x17\x3a\x5f\xa3\xc1\x0f\xc8\x9f\x2f\xc8\xd7\x44\x7c\x00\x70\xe2\x7f\x8d\x06\xcf\xbc\xdf\xd6\x31\xa1\x67\xf8\x6b\xa2\xfc\xf1\x00\xfe\x6d\xf8\xf0\x61\xcf\x9f\xc0\x64\xa3\x58\x77\x11\x5e\x87\x5e\x6f\x84\x0e\xff\xaf\xef\xec\x8d\x86\xc3\xf2\x95\xc4\xcb\x3d\x37\xf0\xdd\xf3\x3e\x4b\xf4\xeb\xc3\xd0\x5d\xec\x2a\x7e\xaa\x33\x91\x8a\xe4\x2e\x10\x91\x1c\xad\xad\x90\x46\x22\x1b\xe0\x09\x19\x88\xb8\xf0\x10\x7b\xcc\x14\x3c\x20\xf8\x15\xbe\x44\xd1\x09\x8c\x51\xcf\x79\x20\x94\x2f\x2c\x74\x2d\xee\x67\x38\x66\x9f\xb9\x6f\x82\x7f\x86\xe2\xdf\xb3\x35\x21\x38\xb4\x8f\xf9\x68\xc5\x96\xa3\x5e\x04\xe4\x7b\x9c\xc1\xef\x6b\x14\x6d\xde\xb3\x28\x74\x7a\x3b\xa1\xed\x3c\xf0\x1f\x3e\x0c\x7b\xbe\x73\x7d\x2d\x3c\xdc\xea\xb2\x9d\xda\x4b\xbc\x8e\x11\x15\xdf\x6c\xc0\x3f\xaf\x57\x36\x73\x71\xb8\xe7\xf6\x34\x4f\x30\x14\x71\xfb\x27\xda\xfa\xc5\x05\x0a\xa9\xe0\x70\x75\xb6\x3e\x3b\x0b\x50\xcc\x28\x38\xbd\x4a\x81\xa4\xdf\x17\x3e\xba\x3c\xbe\xf4\x43\x0f\x5f\x32\xa1\xcb\xcc\x92\xd0\x40\x06\x24\xf3\x1e\x09\xe3\x32\xd5\x27\x0d\xc7\x28\xde\x51\x39\x0b\xfd\xda\x92\x68\x93\x4a\x91\xe2\xbd\x3d\xe4\x5c\x73\x65\x3b\x61\x7b\x15\x74\x86\x8e\x99\x8b\x67\x81\x1f\x13\x14\xb2\xc4\xa0\xda\xa2\x19\x55\xc3\x7b\xc8\x92\x51\x96\x78\x66\x11\x47\xa1\xc8\x1f\x36\x2b\x24\xa8\xf2\x09\x0c\x43\x4c\x2c\x2a\xc7\x5a\xd0\x72\x03\x18\xc7\x16\x8c\x2d\x98\x9c\x70\xdb\xd1\x44\x23\xda\xbb\x42\x84\xbe\x09\xff\x4a\x72\x42\x51\x34\x21\xa7\xe1\xf4\x41\xa4\x48\x5f\x13\xf5\x8f\xcf\x9f\xbf\x1a\x81\x68\xa0\xf2\xef\xc9\x57\x43\x20\x92\x24\xfc\xd0\x8a\xa8\xf4\x37\x90\xfc\x7c\x42\xb5\xf0\xa2\xed\x89\xa8\xe4\x49\x05\xb9\x4e\xf8\x3c\x1f\x3f\xca\x5f\xe6\xa1\xf1\x32\x0f\xd5\xcb\x3c\x9c\x1e\x9f\x4e\x55\x2d\x33\xa2\xbb\xfe\x80\x2f\x88\xf2\x86\x64\x35\x51\xaf\x90\x1a\xd5\x7e\x1d\xe9\x91\x85\x1f\x03\xe4\x00\xfa\xef\x20\x39\x2b\x13\x7e\xe9\x23\x80\x81\x2f\xc7\x14\x4d\x10\xe8\xe1\xc9\xe9\xd5\x39\xda\x1c\xdb\xd0\xf3\x6c\xc0\x57\x23\xbd\x5e\x80\xca\xc4\xd2\x66\x35\xa1\x5d\x52\x81\x3e\xd5\x37\x26\x52\xdf\x20\x0e\x9e\x90\x07\x28\x88\x91\xe5\xcf\x7a\x44\x3d\x69\x88\xfe\x34\x88\xd0\x12\x5f\xa0\xc1\x99\x1f\x7a\x3d\xe2\xb0\x96\xac\x5f\x38\xa1\x6f\x66\x57\xf7\x95\x18\xac\x0d\x82\x89\xcd\xdb\xeb\xdf\x3f\xe0\x6b\x30\x99\x4c\xc8\x29\x9c\x3e\x7c\xd8\x83\x13\x9b\xea\x97\xc1\xc4\xc6\xb3\x99\xed\xb0\xb5\x5d\x4f\xc2\x07\xb6\xb0\xc7\x26\xc3\x5b\x3f\x7c\xd8\x5b\x6b\xf7\xf2\xe6\xe4\x4d\x2a\x7b\xd0\x65\xe4\xc3\x73\x35\x05\x69\x6d\x90\xac\xb2\x1c\x05\xa9\x43\x3d\x85\x53\xf6\x05\x30\xa8\xa8\xa7\x81\xf8\x2d\xbc\xbe\xee\x21\xb0\x3e\x45\x4c\x6d\x78\x80\x27\xf9\xc6\x6e\xe1\x7b\x51\x8f\x13\x50\xd9\xab\x76\x8c\x98\xba\x44\x55\x96\xdc\x0d\xf1\x95\x46\x33\x3f\xf4\x5e\x86\x1e\xfa\x64\x7e\xc1\x64\x32\xc1\x74\x5c\xd2\xb6\xa6\x3c\x49\x25\x4e\x17\xf5\x10\x18\x39\xa7\xc3\x69\x8f\x4a\x5f\x80\x1f\x4f\x7e\x1e\x72\x27\x54\xbe\x3e\x33\xcc\xf2\xc9\x3d\x30\xcf\x4d\xbc\x7c\x98\xb9\x3a\xe2\x0e\x3a\x00\x5d\x5f\x4f\x1d\xca\x12\xa3\xc1\x2a\xc2\x04\xd3\xb3\x05\xb0\x03\x18\x9b\x8c\x80\x4f\x5b\xf4\x4a\xad\x03\x94\x8a\xab\x39\x99\x7b\x89\x7b\xbc\x11\x29\xe7\x82\x37\x12\x36\xd5\x2b\x4e\x53\x42\x10\x01\x9c\x61\x3d\xe5\x6d\xaf\xae\x81\x9f\x55\xd7\x29\x29\xe7\x72\xa4\xaf\xca\x90\xe1\xc4\x3f\x8d\xa6\x80\xf0\x9a\x44\x6f\x66\xbd\xd0\xf9\xdb\x64\xf8\xf9\x73\x0f\x9f\x86\xd3\x09\x3a\x0d\xa7\xc9\xa2\xe2\x6b\xf6\xee\x7a\x8a\xbf\x5f\xa9\xf8\x37\x1c\x90\xe8\x2e\xd9\x1f\xfa\x89\x75\xf9\x32\x7e\x91\x5c\xde\x01\xe5\x6e\xec\xaa\x3c\x7c\xa8\xcc\xe0\x3a\x99\x41\x87\xa2\x25\x6c\x2b\x08\x86\x3d\x07\x04\x69\x77\x21\xef\x2e\x60\x27\x1d\xac\xdb\xf6\x7a\x75\x0d\xdc\xc9\x7a\xe0\xae\xa3\x08\x85\x84\x91\x57\x10\x4f\xa8\xea\x74\x6a\xab\x5f\xda\x53\xe7\x01\x12\x76\x11\xf6\xc6\xd3\xec\xc4\xd6\x13\x24\x0a\x96\xf0\x5e\xdc\x09\x3d\xa0\x12\x80\x23\xe9\x24\xb1\x46\xf3\xbe\x02\x70\xea\x82\x60\xea\x08\x57\x03\xcc\xd9\xdc\x85\xcb\x41\x65\x20\x4c\x32\x91\x0e\x04\x22\x3c\x93\x26\x26\xb4\x7e\xba\x3e\xf6\x9d\x1e\x01\xc8\x79\x10\x0e\xe8\x97\x9f\x3f\xf7\xc2\xc9\x15\xfd\x74\x6c\x2f\x51\x1c\xc3\x39\xb2\x81\x07\x09\x3c\x0e\xaf\x39\x3d\x86\x8a\xfe\x18\x0e\xe8\x4f\x9f\x3f\x5f\x5d\x03\x7b\x89\x08\x15\x81\xe1\xc3\x87\x3d\x44\x97\x2b\xc6\xd1\x24\xea\x41\xf1\x11\xc8\xef\xe8\xd6\xbb\xd0\x5d\xa0\x13\x1c\x92\x08\x07\x13\xa8\xfd\x09\x10\x2b\x6f\x10\x5d\x40\xfa\x8b\xfc\xe8\x80\xfe\x68\x32\x99\xf4\xf4\x47\x3f\x7f\xb6\x6d\x27\x39\xcf\x76\x88\xfb\x31\xc1\x11\xb2\xe9\x21\x0d\xb4\x1d\x9b\x84\x0e\x08\x32\x62\x6f\x28\xd9\x0b\xa6\x07\x1b\x04\x83\x55\x84\x2e\x7c\xbc\x8e\xd9\xcf\xc9\x3e\x64\xbe\x9f\xe8\x1d\x03\x57\x88\xcf\x20\x9e\x3a\x20\x39\x4e\xee\xc3\x87\xec\x10\xe8\x83\x70\x85\x8c\x91\x65\xdf\x3d\x1b\xaf\x50\x68\xeb\x54\x8c\x2b\x10\x48\x6a\x35\x73\x44\x4e\x94\xbe\x7a\xce\x83\xe4\x65\xe4\xe1\xc3\xec\xdc\xf8\x98\xd4\x29\x88\xdb\x2d\xa9\x07\x8c\x63\x7f\x1e\x4a\x7a\xc3\x4f\x60\x0f\x29\x54\xfa\x8a\x52\x62\x12\xad\xa9\x6e\x73\x2c\x2e\x2e\x2a\x65\xe0\xd7\x0e\xb8\xca\x8c\xd2\x64\x16\xce\xae\xca\x35\x98\x23\xf2\x56\x5d\xe2\xa2\xa7\xb4\x7d\xa0\xaf\x0b\xae\x01\x1a\x5c\xc0\xc0\xf7\x20\x41\x27\xfc\xc4\x25\x57\x8c\x5e\x81\xef\xa0\x7b\x8e\x67\x33\xdd\x43\xdf\x95\xa8\xba\x8f\xf6\x01\xd9\xd2\xdf\x09\x0c\x92\x6b\x3d\x6b\x58\x8c\xc8\x07\x7f\x89\xf0\x3a\xaf\x50\x4b\xf9\x53\xb9\xa7\x91\xa8\x1c\x46\x25\x8d\x04\x13\x48\x38\x1f\x6d\xcd\x04\x15\xc9\xb2\x9d\x27\xd8\x43\x36\x63\x4a\xc9\x68\xb0\x23\x95\xe8\x09\x1e\x10\xcc\x7d\xe0\x3d\x66\x8d\x65\x4a\x35\x13\x34\x71\x7a\x21\x0f\xe9\x4d\xdc\x67\xdf\xf1\xb9\x3d\x7c\xc8\x7c\x9c\xb4\x2b\xae\x65\x0f\x6d\xfa\xeb\xb1\x22\xf2\x13\x9d\xb2\xa9\x84\xce\xb9\x22\xbd\xc8\xa1\xbc\x83\x9d\x6e\xae\x8c\x45\xd7\xd7\x0f\x8c\x7b\x1e\x66\xf5\x86\xe4\x4e\xb5\x65\x2f\x2c\xd6\x7f\xb2\x82\x51\x8c\x5e\x52\x45\x9c\x2d\xce\x57\x7e\xfc\x1a\xbe\xee\x85\x89\xbf\x96\x5b\xb3\xe9\xa5\x0c\xff\x4a\x1e\x3e\xec\x85\x93\xa1\x03\x98\x71\x67\x09\x3f\xf5\x42\x30\x72\xe8\x80\x33\xa7\x36\x7a\xc0\x77\xac\x4c\xaa\x25\x9a\x45\x40\x1c\x20\x65\x79\x42\xe7\x2a\x3d\x14\xda\xb2\x85\x8c\x1e\x28\x94\xf5\xf3\xe7\x31\xda\xe7\x42\x2b\xf0\x0d\x2f\x35\xd2\x7f\x54\xad\x6f\x6b\x92\x1a\xa3\xd4\x37\xe7\xd1\x6d\x79\x8f\x4a\x02\x0f\xb2\x5f\x61\xe0\x4b\x09\xc5\xa7\xe2\x9f\x76\x37\x22\xa6\x5f\xf9\x83\x24\xd4\x10\xf1\x80\x02\x79\x2c\x12\x45\x8c\x36\x1c\x68\x80\x3b\x54\x55\xcf\x7d\x39\xb9\xba\x76\x40\xfe\xeb\xa4\xff\x49\xfa\x2a\x80\xd8\xf3\x9c\x9d\x05\x13\x5f\xf0\x71\x02\xd6\xec\x65\xcc\x77\x19\xb0\xd1\x3f\x48\x84\xfa\xb5\x93\x0b\x5d\x48\x8f\x1c\xaf\x33\x65\xd1\x87\xd3\x90\x03\x76\xe9\x8a\xfd\xfd\xc9\xfc\x50\x66\xc0\x9c\xeb\x73\xa1\x20\xc0\x31\xea\xd1\x23\x94\xf4\xcf\x83\x03\xaa\x4c\xc6\xf9\xa3\xc5\x7d\x86\x37\x63\xeb\x34\x78\x2c\x9a\x11\x79\xbf\xed\xe1\x24\xc0\x20\x0c\xef\x1b\x1f\xdd\x57\x1f\xdd\x9f\x1e\x87\xaa\x28\x9c\x5c\x12\x26\x98\x06\xed\x45\xe1\x07\x42\x13\xa0\xfd\x08\x61\x26\x42\xd0\xdb\xbc\x27\x90\xa0\xc9\x98\x7f\xc3\x37\x69\x62\xf0\xb1\x12\x83\x8f\x95\x0b\x04\xe2\x64\xe0\x41\x84\x62\x1c\x5c\x50\xad\xf3\x98\xe4\x5e\x30\x54\x1b\x64\xcf\xa2\xb0\xd9\x85\xca\x03\x7f\x1b\xa5\x64\x59\xed\x67\x04\xc2\x8c\xc0\x24\x28\x1e\x93\xc3\xae\x1d\xe0\xf7\x42\x10\x80\x88\x1d\x79\xc3\x3d\xc9\x3e\x0d\x7b\xc8\xe1\xd1\x39\xca\x5a\x14\xbc\x82\x4d\xd5\xbe\x36\xdd\x26\xda\xb1\xda\xc5\x2e\x64\xb8\xa0\x52\x86\x63\x03\x54\x65\x30\x19\xb6\xa4\x6f\x86\x64\xf9\x8c\x91\x5b\xe3\xe3\xdc\x61\xc8\x45\x17\xe9\xbf\xef\xab\xf6\x92\x44\x9a\x13\xad\xdf\xad\xc3\x10\x45\x7a\xb6\x98\x62\xf5\x13\x56\x36\xba\xdf\x91\x12\x2a\x45\xc4\xd1\x93\x36\xb3\x5e\x08\x88\x61\x91\x13\x22\xc8\xbb\xb9\x76\x9c\x07\xa4\x62\xaf\x1e\x64\x47\x46\xb2\xc2\xa4\x6e\xaf\x67\x92\x08\xef\x4a\x66\x61\x5f\xb1\x7f\x8f\x11\x10\x5c\xf5\x18\x0d\xc4\xa7\x6b\xe7\x1a\xe8\x72\x8a\x58\x71\x94\x5f\xee\x31\x5f\xee\x7d\x21\x32\x7d\x35\x14\xab\xf8\xd5\xa8\x19\x05\xcd\x15\x08\x06\x35\x0d\xe8\x25\x5d\x73\x4d\x65\x2f\x8a\x2f\x56\xa5\xed\x74\xf9\xa0\xba\xe1\x2a\xc2\x9f\x36\x75\x1a\x0a\xd2\x10\xd5\x7b\xbb\x64\x21\xd5\x6d\x29\x55\xa8\xdb\x36\xb5\x4f\x55\xb7\x15\xd9\x59\x49\x8c\x8f\x8b\x43\xae\x19\xb9\xfa\x74\x51\x78\x91\x8d\xeb\x01\xcc\x20\x05\x98\xd3\x1b\xac\x81\x0b\x62\x30\x53\x2c\x5f\x2b\xbd\x0d\x77\xa9\x70\xf1\x00\x9d\xfa\xd3\x1e\x74\xc0\x7a\x12\x70\x30\x28\xe1\x56\x71\x75\x56\x1e\xf6\x5c\xe7\x3a\x18\x78\x38\x44\x4f\x49\x6f\xed\x48\x66\x96\xd0\xdf\xb5\xb8\x59\x11\xc0\x8a\x7f\xc3\x33\x49\xae\x52\xf0\x66\xdc\x47\x91\xd4\x1e\x94\xca\xb3\xb4\x63\x61\xf2\x4a\xec\x2a\x20\x74\x1e\x24\xef\xa2\x54\xf7\x6a\xd5\xf3\xd9\x2c\xe9\x3a\xd8\x21\xfa\x44\x6c\xaa\x1e\x24\x6d\x82\x5c\x1b\xa6\x36\xb0\x46\x50\x48\x6f\x5c\x10\xa6\x6f\x5a\x4a\x2f\x61\x0b\xe9\x01\x87\x2e\xa2\xea\x3a\x16\x33\x99\x20\x16\x06\x96\xfe\xc5\xce\xfb\x04\x49\xf6\x98\xac\xe4\x84\x91\xec\x4f\x9b\x09\x1a\x88\x64\x44\x46\x38\xde\xcb\x66\x32\xb5\x4c\xff\xf6\x8d\x38\x93\xfa\xb7\x27\xe2\x54\xab\xdf\xf2\x49\x82\xde\x10\xcc\x06\x28\xbc\x70\x7a\x4a\x02\x9d\x4c\x9c\xfb\xf5\xdd\xc7\xd7\xaf\x5f\xbc\xb3\x1d\xe1\x1d\x45\xae\x7d\xbc\x2c\xb2\xfe\x73\x65\x51\x2c\x11\xfa\x44\x50\xe8\xf5\xae\x08\x8c\xcf\x8f\x7b\x43\x10\x0f\xe8\x27\xa7\x17\xa1\x39\xa5\x18\x90\xe0\xe8\xdd\x3a\x64\xa9\x65\x4b\x18\x9d\xa7\xfb\x6b\x45\x29\x29\x36\x34\xbe\x8c\x34\x83\x74\xc4\x7d\x66\xdf\x7c\x23\x55\xd0\x88\x99\x03\x26\xd1\x80\xee\x79\xc2\x8b\xfc\x59\x8f\x12\x50\xe7\x8a\x7f\x3f\x39\xe4\x4c\x48\xb2\x1a\xf1\xed\x3e\x40\x1a\xa7\x40\x4e\x8f\x38\x0f\x24\x61\xe5\x6d\x86\x4a\xe0\xac\x75\xc8\xb5\x55\x14\x7a\xd2\x21\x6c\x45\x83\x98\xe0\x55\xcf\xa1\x9c\x8b\xf1\x10\xe7\xda\x91\x3c\xd8\x61\x9a\xb4\x4d\x17\xc2\x76\x06\x2b\x14\xcd\x70\xb4\xec\x39\xd7\x6a\x2c\x6e\x32\x61\x6d\xa1\xa5\x49\xc2\xab\xb1\x7e\x28\xe3\x6c\x02\xf0\x41\xed\xe5\x44\xd9\xe5\x44\x7c\x39\x51\x66\x39\x27\x3d\x3c\xa9\x33\x92\x06\x3b\x59\xf7\xd5\xb3\x1e\x63\xed\x57\xc8\xb8\x93\x48\xee\x64\x9e\xe7\x27\x3b\x89\xea\xed\x24\x52\x76\x92\x29\x39\x4e\xcf\x61\x4f\xf6\x44\x4f\x63\x3a\x18\x9f\x91\xc2\x64\x38\x4f\x8c\xc3\x39\x04\x3e\xa7\xa9\xf2\x65\x90\xde\x77\x14\x12\xe0\x4f\x70\xd2\x2b\x10\xad\xc7\xea\xc0\x9e\xa4\xc3\x81\x67\xd1\x7a\x45\x7a\xb6\x08\x55\x04\x50\x8c\x63\x34\xac\x33\xf8\x7c\x7c\x05\x3f\x25\x69\xf7\xa9\x89\x3a\xa1\xc4\xce\xf5\x75\x4f\x0b\x15\x87\xf1\x26\x74\x3b\x3b\x9a\x9d\x1f\x4c\x93\x83\xce\x70\x12\xae\xc5\xc2\xe5\x4e\xd3\x63\xe3\xf6\x1d\x00\x2c\xf7\xfc\xe0\xd8\x97\x5b\x27\x7e\x1c\xa9\xbb\xf5\xb8\x78\xb7\x7c\xd1\xc3\xd1\x6e\x37\x8b\xf1\xab\xcd\xa4\x37\x04\x50\x8a\xa6\x4e\x2f\x94\x1f\x81\x54\x3d\x97\xce\x03\x33\x57\xd8\x30\x01\xf6\x8c\x76\x10\xa4\x1d\x6c\x68\x73\x13\x6b\x39\x63\xcd\x17\xb4\xf9\x3a\x6d\x7e\x46\x9b\x9b\xf8\xd3\x82\x35\xbf\xa0\xcd\xdd\x92\xe1\xd1\xc7\x0d\x3c\xef\x82\x3d\x3d\xa7\x4f\xe3\xf4\x69\x95\xed\xbc\xa5\x0c\x13\xf0\x6f\x58\x90\x35\xff\x22\x89\x39\xa6\x1d\x73\xa6\x3a\x67\x7d\xbd\xa1\x7d\xf9\x69\x5f\xca\xfb\x25\x17\x7e\xc3\x1a\x5e\x9a\x24\xfa\x37\x3d\x44\xd9\x67\xda\x7b\x2f\xaf\xbb\xa5\xd6\xb9\x39\xb3\x4a\x31\xdd\x2d\x61\xf6\x97\xac\xf3\xdf\xe8\x28\xa2\xb4\x97\x4b\xb0\x50\x57\x82\x0b\x08\xbf\x3d\xd0\x05\x87\x02\x0d\x63\xa3\xa9\x34\x9a\x7c\xc5\x34\x2d\x4d\x9f\x11\x57\x82\x29\xed\x5a\x24\x05\x91\x9a\x77\xa2\x67\x22\x93\x89\xa7\xe7\x80\xb0\x57\x60\x14\x2c\xd2\x91\xf9\x43\x1d\xe9\x47\x94\xa7\x5f\x3b\x72\x51\x53\x19\xab\x43\x43\x60\x3a\x31\x43\x24\x5a\x3d\x9b\x8b\x98\x4a\xb9\x58\xab\x58\x11\xd5\xc5\xc1\x3d\xc4\x7c\x69\xce\xb5\x6a\xb8\x41\xce\x95\xdf\xfb\x7f\xd9\xfb\xd6\xe6\xb6\x71\x2c\xed\xef\xfa\x15\x32\xeb\x5d\x05\xe8\x40\xb4\xe5\xee\x9d\xda\x61\x9a\xad\x72\x3b\x9e\x89\x77\x12\xdb\x65\x3b\xb3\xb3\xa3\xd6\xba\x60\x09\xb6\x31\xa1\x00\x0d\x08\x25\xed\x91\xf4\xdf\xdf\xc2\x8d\x04\x49\xe8\x62\xc7\xc9\x24\xdd\xe9\x0f\x1d\x8b\xc4\x9d\xc0\xc1\xb9\x3c\xe7\x1c\x62\xfc\x85\xf4\xd4\x1b\xa6\x23\x86\xb0\xba\x50\x1a\xcf\x05\xca\x20\xaa\xaa\x81\x03\xf6\x3f\xab\x93\xeb\x74\x4a\xe5\x1c\x89\x03\x40\x12\xd7\x4d\xe8\x95\xea\xa9\xfc\x36\x9a\x0d\x7e\xc2\xcf\x72\xed\xaf\x66\xe5\xc0\x79\x1c\xa9\xbe\x6f\x42\xca\xc9\x15\x3a\x98\xc6\x1e\x46\xac\x38\x08\xdb\x69\x7c\x6c\x43\x76\xef\xda\xad\x5b\x6b\x67\x09\x91\xdc\x8c\xab\x5b\x21\x69\x7e\x52\xc5\xe6\x47\x5a\xbe\x3c\x5a\x8d\x1a\xad\x3e\xda\xbe\xa2\xb5\x8b\xc1\xfb\xce\xe8\x01\xab\xea\x71\xb9\x2c\xdd\x6e\x9e\x46\x33\x26\x37\x6a\xc6\xd4\xd7\xd9\x5a\x31\xf6\x7d\x43\xe3\x55\xe1\x20\xf6\x93\x2a\x58\xc0\xd3\x9c\x06\xa6\x5b\x42\x2d\x9c\xb6\x4c\x3e\x6c\x63\x59\x1d\xca\x27\x36\xc6\xf8\xbc\x4b\x49\xf0\x9c\x14\xff\xc8\x7d\x31\x18\x22\x9c\x12\x0d\x59\x33\xa9\x4c\xec\x87\x77\x90\xb5\x42\xbb\x4c\xbd\xe6\x4a\x83\x26\x45\x2e\x62\x38\xd4\xf8\x37\xa6\x5a\xb2\xae\xf1\x34\xa5\x4d\xff\x98\xe2\xa6\xda\x29\x1b\x21\x28\xa2\xf9\x4b\x92\x4b\xc1\xef\xc9\x58\xb5\xd4\x7c\x99\x11\x69\x5e\xd5\xde\xbc\xe6\x78\xac\x5e\x68\xf7\x19\x0f\x8f\x97\x0d\x3b\x1d\xa0\xfe\x49\x71\x21\x45\x53\x46\x65\x18\xaa\xd5\xaa\xa1\x13\xd5\xf5\x5a\x43\x5d\xe1\xb1\xb9\xe3\xe3\x2b\xbb\x8f\x4a\x3a\x17\xe2\x53\xcc\x30\x73\x33\x4c\x17\xf5\x49\x31\x39\xfa\x16\x82\xb6\xf9\xab\x7c\x36\x25\x62\x05\x1f\x8a\xea\xd7\x4e\x52\x03\xf2\x6e\x18\xa0\x66\x94\xd0\x1a\xd0\x80\x9e\xbf\xfd\xde\xc0\x62\xd6\x6c\x65\x58\x87\x44\xd8\x31\x92\xca\x00\x03\x17\xd6\xd6\xed\x07\xea\x06\xfb\xa8\xdc\x0c\x5b\xb7\x5e\x65\xd0\x42\xed\x36\x14\xf1\x6b\xdb\xd3\xa5\x83\xed\xd4\xc9\xd6\xda\x66\x54\xe1\x60\x2b\x1f\x68\x96\xd9\x13\xe0\x37\xb6\x71\x93\xa0\x8a\x81\xa7\xb6\x23\xcc\x12\x03\x73\x4b\xaa\xb3\xe0\x88\xf5\xdc\x6e\xc8\x84\x22\x3b\xb4\x84\xa3\x0a\x49\x4c\x78\x95\x44\x2e\x4b\xd4\xfd\xfc\x61\xb4\xb1\x54\x1b\x7f\xc9\x97\xee\x2a\x43\xb5\xe6\x83\x34\xd4\xa1\x55\xf7\x6d\x2c\xb1\xc6\xf5\xb3\xa2\x7d\x03\x03\xa0\x22\x88\x0c\x7c\x41\xf4\x4b\x45\xaf\x30\x14\x61\xb5\xe9\x57\xea\x4d\x03\x8c\x29\x57\x3b\xd0\xfb\xfc\x2e\x51\x77\x02\x33\x67\x1f\x39\x86\xa9\xc6\x5b\xb9\x6d\x80\x0a\xb8\x93\xdb\x2f\xa2\xe4\x7e\xb5\x85\xcd\x36\x13\x26\x6c\x7e\x43\xa0\x24\x64\xcb\x4d\xce\xe7\xab\x15\xf3\x5b\x61\x4c\xdd\x42\x00\x99\x06\xd6\xde\x20\x33\x3b\x1d\x1b\xbd\xb0\xfe\x22\xa6\xd2\x28\x44\xfa\xa1\x95\xb5\x5c\xfa\x32\x09\x21\x73\x3b\x9d\x35\xdd\x69\x33\xbc\x63\x71\xd2\x34\x2d\x9e\xef\xb8\xbf\x4b\x76\xa8\xef\xc6\x96\x14\x1d\x42\x40\x9a\x5e\x0b\x9f\xc8\x27\x42\x7c\xc9\x3e\x11\xc5\x28\x79\x1d\x03\xdf\xe9\x88\x0a\x4f\x29\x21\x62\xfa\x19\x62\xea\x28\x14\x15\x69\xb5\x22\xa0\x69\x34\x63\xa6\xc7\x71\xc9\xbc\x9c\x9b\x70\x6c\x9d\x8e\xfd\x43\x9d\xcd\xbe\xf7\x77\x52\x57\xc6\xd7\xd1\x4d\x6e\x09\x5f\xec\x34\x10\xbd\x77\x38\xf7\xa0\xc2\x0e\xcb\x2b\x61\xa7\x63\xc1\x4a\x80\xa4\x37\x4a\xc4\x7e\x01\x5f\x14\xce\xa6\x05\x26\xb9\x80\x93\x6d\x72\x58\x15\xa8\x44\x4d\x72\x3d\x7e\xfd\x7f\xd3\x1f\x83\x09\xb7\xf6\x26\xb5\xb9\xd4\x1c\x16\x0b\x7f\x8f\xe1\x62\x8f\x85\x80\x03\xc5\x50\x65\x78\xc3\x5d\xa8\x0b\xa8\x4d\x7e\x9d\x0a\x92\xe7\xaa\xb9\xc9\x2c\x97\x6d\x9b\xe3\xec\x9a\x68\x54\x56\x9b\x8b\xca\x0e\x6c\x91\xa6\xe4\x60\xaf\x1f\xd9\xe9\xc8\x8d\x60\x48\x4f\x3c\xa8\x8b\x0e\x9a\x43\xef\x74\xcc\x32\x57\xac\x51\xa8\x60\xc0\x40\xe6\x3a\xcd\x89\x3c\x73\x7d\x9d\xde\x2c\x16\xd5\x8f\x5a\x28\x66\xae\xae\xf4\x88\xae\xae\x52\x89\x88\x59\x44\xaf\xed\x59\x09\x70\xab\x42\x22\xbc\xdd\x96\xd6\x76\xdb\x62\xb1\xe3\xb6\x58\x31\x43\xe8\x0c\xca\xea\xdb\x37\xde\xc6\xf9\x1d\x9e\x54\x8a\x04\x68\x90\x56\xc6\xb9\x42\x7b\x2d\xcf\x9d\xeb\x25\x96\xde\xa2\x17\x18\x42\xb3\x45\x1a\x9d\x01\x55\x1c\x0d\x7c\xd2\x0b\xe7\x9a\x8d\xde\xd9\xb3\x56\xcb\x92\x59\xef\x69\x15\x76\xd8\xf4\xc8\x90\xd0\x1b\x5c\x8d\xb7\x70\x43\xbe\x31\x0a\x31\x9f\x4e\xb6\x58\xda\x1c\x84\x28\x99\x19\xc4\xe1\x52\x7b\xec\xb0\x74\x05\xb7\xe3\x06\x30\x32\x2f\x98\x4f\x41\x46\xbe\x63\xca\x0e\x5b\x2c\x9c\x40\xa3\xb6\x35\x60\xd0\xa7\xe7\xc5\xce\x67\xfd\x1c\x10\x98\x78\xde\xf5\xb9\x75\x26\x2e\x11\x57\xde\x91\x38\x77\xb9\xdb\xec\xb9\xd0\x99\x68\xee\x70\xce\x9e\xc9\xf6\x35\x21\xac\xad\x24\x0c\x8a\x33\x9a\x93\x71\xbb\xdb\xd6\x7c\x1b\x80\x95\x12\xea\x5b\x28\x79\xa5\xd5\xf4\x3b\xbf\xf1\x2e\xbb\x9b\xf0\xee\xed\x97\x54\xc2\x7b\x1a\xbc\xbf\xca\x0d\x5d\x78\x21\x54\x6b\x69\xcc\x99\xfa\xdf\x13\x82\xb9\x3e\x1a\xb1\xdb\x44\x94\xb2\xc2\xcd\xcb\xfb\x26\x8b\x05\x51\x77\x88\x92\xf4\x1a\xd2\xbc\x7a\x01\x3b\x9d\x9e\x7b\xe9\xeb\x0e\xec\x4d\x57\x6a\x03\x40\xb3\x3e\x6c\xc9\x92\x3b\x0b\xab\xbd\x42\x18\xbc\xe7\xcf\x11\x8b\xaf\x2a\x88\xf4\x15\xfa\xb0\x55\xd8\xa5\x90\xee\x77\xb9\x6c\x1c\x3a\x02\xe7\x18\x64\x88\x40\xcb\x8f\xcf\x40\xe6\x99\xed\x15\x11\x74\x3a\x81\xd2\xe1\xdc\x20\xd3\x20\x02\x34\x95\xe1\xa3\x05\xab\xf0\x2a\x6a\x59\xc5\x94\xdb\x3f\x16\x0b\xe3\xf9\x8a\x68\xcc\xf0\x84\xa4\x51\xc1\xc5\xd1\xc2\xe6\x8e\x68\x7c\x87\xd9\x38\x23\x22\x15\x46\x29\x9e\x03\x0a\x21\xa2\x35\xed\x12\xaf\x3f\x71\x0e\x0d\x3d\x44\x1d\xb7\x4b\x0b\xef\x17\x90\x21\xeb\x12\x58\x59\xb5\x80\xeb\x15\xbd\x01\xa1\xaf\xee\xfc\xba\xc0\x0d\xf0\xd8\x32\x88\xea\xed\x19\x82\xb5\xc2\x26\x64\xdd\xbe\x0c\x66\xa9\xd9\xb5\xee\xd3\x72\xd7\x21\x35\xae\x7e\xaf\x16\xce\xc8\x68\x76\x99\x02\x20\xbf\xa2\xa7\x9a\xf4\x10\xe8\xd3\x87\xf8\x55\x36\x5e\xd1\x86\x71\x7c\x58\xe7\xa2\x56\x76\xdd\x6a\x28\xd4\x50\x6f\x27\x4d\x89\xf3\xb5\xb0\x93\x6b\xa8\xc2\xd7\xce\xcc\xfe\x02\x6a\x23\x0f\x21\xca\x96\x8a\xde\x6c\x27\x2c\x58\xbc\x93\xff\xa3\x9b\xdf\x51\xfb\xfa\x69\xa5\xc9\x0f\x02\x4f\xcd\x91\x0d\x32\x07\x8c\x7c\xa8\x58\x5f\x3d\x47\x36\xb9\x58\xc8\x34\x4d\xeb\x4c\x61\xb1\xe7\x2c\x4c\x9e\x69\x85\x95\x84\x2d\x53\x4b\xf3\xca\x41\x3d\xbe\xef\xfe\x66\x18\x44\x45\xef\x5c\xec\x2c\xd7\x2c\x69\x79\xec\xbd\xe6\x57\x3d\xe4\xa8\x66\x60\x97\x62\x25\xf7\xb5\x49\x53\x2b\x36\x68\x6a\x8b\x18\x0f\x3c\xdd\x7b\xc1\x7f\x74\x63\x7b\xf1\xfc\x79\xa1\x8b\x64\x03\x3e\xd4\xf0\x7d\x40\xb5\x2f\xab\xb7\x30\xce\x59\x2b\xc0\xd8\x6c\xe2\x80\x25\xa2\xd0\x02\x00\xc2\xdf\xd8\xf7\x83\xa4\x68\xd6\xcf\x00\x85\x09\x56\x24\xa8\x70\x1f\x15\x4b\x40\x40\xf8\x3a\x94\x10\x6a\x29\x43\x2b\xed\xa4\x76\x90\x2d\x2b\xad\xac\x62\x19\x45\x44\x62\x9a\x5f\x48\x3e\x9d\x92\x71\xc8\xa8\x28\x00\x81\x71\x11\x4a\xdc\x16\x54\xb5\x72\x62\xce\xec\xd9\x1d\x6e\x58\xdc\x74\x25\x52\xbe\x95\xb6\x82\xa5\x0b\x97\x86\x42\x07\xea\x8c\x2a\x05\x5c\xb5\x33\x9c\xe7\xf4\x3d\x71\x27\x37\x54\x71\x5a\x2b\x22\x9d\xd2\x47\x71\x3f\xff\x43\xf0\xbb\x37\x78\x8a\x98\xff\xcb\xdf\x89\xe5\x8d\x6d\xf4\xb3\x25\xbf\xc6\x59\xce\x33\x12\xe3\x3c\x27\x42\x02\x23\x6c\x30\x14\x3d\x53\xfb\xf5\x59\x9b\xe6\x4a\xb6\x30\xe1\xb2\x31\x6b\xeb\xf5\x68\x1b\xee\x0d\xb5\xaf\x67\xb2\x7d\xcb\x35\xf0\x0c\xb1\x8a\xc0\x08\xe7\xd6\x99\xb4\x3e\xec\x3e\x31\xab\x16\x97\xf1\x1b\x0c\x42\x5e\xff\x24\x63\x2d\xb8\x86\xcc\x75\xa6\xd6\x54\xe8\x7f\x5f\x1a\x1e\x47\x09\xfb\xa1\xe7\x00\xc2\x24\x24\x6a\xda\xb9\x06\xd5\x07\x6e\x1d\xb4\xce\xa5\xd3\xa9\xfc\xf4\x03\xd0\x54\x7b\x6a\x53\x96\xd3\x31\x69\xdb\x59\xb6\xf5\xbb\xb6\x53\xf3\xb5\x29\x7b\xcf\x47\xe6\x1a\x8d\x50\x63\x2d\x60\x55\x54\x66\x70\x2e\xcd\x06\x57\x94\x62\xae\x9b\x32\xdb\x24\x21\x48\xff\x4a\x18\x2a\xb7\x5c\xb2\x8f\x2a\x7b\x29\x21\xc8\x2d\x62\xb2\xd3\x43\xb9\xd9\xc7\xea\xcf\xfa\xde\x56\xcf\x6a\x43\x31\x3e\x3e\x92\x4e\xc8\x85\xc4\x93\x69\xc2\xe2\xe2\xef\xc5\x42\xcb\x2e\x8c\x7f\x00\x70\x65\x90\x34\x3d\xe4\x88\xe6\x97\x62\x96\xeb\x64\xb3\x8e\x88\xf7\xaa\x8e\xf0\x1e\x89\x12\x15\x82\xca\x20\x32\x34\x4b\x04\x68\x96\xd0\x34\x4b\x91\x2b\xd5\x4f\xc1\x33\x87\xc6\x40\x91\x25\x2a\x55\xb0\xa4\xf5\xee\x09\x07\x6c\x13\x56\x1e\xd2\x6b\x3b\x20\xc3\x25\xca\xfd\x72\xfa\x00\x56\x4b\xa8\x73\x5b\xa7\xc4\xd5\x79\xd6\x80\x98\xb6\xff\xe0\x75\x2f\xd3\x4a\xf3\x85\x75\x6f\x40\x86\x05\xfa\xb3\xa2\x1d\x5f\xdf\x31\xf5\x6e\x17\x35\x61\xad\x4b\x5b\x31\x59\xed\x30\xa3\xed\x10\x6d\x73\x8d\xaf\x28\x67\x76\x98\x29\x58\xd9\x74\xcd\xf2\x95\xd7\x6a\xb0\x93\x29\xcf\xc9\xf8\x0c\xcb\xbb\x26\x9f\x13\xac\xd4\xf2\xfc\xc9\xd2\x94\xf4\x07\xc3\x44\x7f\x14\xd5\xf9\xc9\xe9\xc9\x51\xd9\xe7\x9e\x79\x78\x78\x70\x76\xf9\xf6\xfc\xf8\xe4\xcf\x57\x67\xaf\x0e\x2e\xbc\xf7\x3d\xf3\xfe\xe0\xf2\xea\xf2\xe0\xfc\xcf\x47\x97\xe5\x9b\x7d\xf3\xe6\xe7\xb7\x3f\xff\xfc\x3a\x50\xf1\x7b\xf3\xba\x3c\x6c\x2b\xd6\x45\xbf\x5b\xea\xb3\xa6\xb6\x21\xbe\x35\x0a\xfa\x55\xf3\x6c\x19\x1c\xd4\x74\x23\x99\xab\x35\x58\xd2\xb9\xda\x0b\x00\x4d\xe7\xc7\xee\x84\x3f\x7c\x14\xa4\x71\xf5\x6d\x31\xb6\x50\x7f\xd5\x41\x86\x4a\x00\x63\xf2\x6a\xdb\x28\x3e\xe5\x9a\xda\xd0\xe6\xa0\xba\x37\x6d\x31\x5b\xa9\xbc\x2f\x36\xd5\x2b\x4b\xc2\x25\xaa\x92\x6b\x7f\x4d\xb8\xab\x66\x3b\xb0\x72\xf3\x99\xa9\x40\xc6\x81\xad\x6d\xc9\xab\x1d\x90\xdd\xd9\x1b\x87\x63\xcb\xd9\x6e\x0a\xba\xda\x6c\xbf\x78\x65\x4a\xe6\x62\x74\x94\xe9\x74\x1d\xdb\x9c\x4a\x3d\xb6\x9f\xf5\x92\x35\x8b\xe7\x8e\xa9\xc9\xeb\x45\x8d\x46\x85\xd4\x28\x51\x4b\x56\x36\xaa\x0b\x9d\xef\x99\x55\xfc\xa5\x36\x4d\x29\x61\x24\xf0\x38\xdd\xd9\x53\x22\x9a\x1a\xa3\x19\xd4\x5f\x15\x0d\x2c\x86\xb8\xd3\x5c\xdc\xbc\x56\x94\xc0\x39\x59\x2c\xfc\xcf\x45\x19\x6d\x5a\x4c\x97\xcb\x15\x77\x93\x47\x10\x8d\x6f\x81\x65\xaa\x8b\x4b\x8a\xae\x0f\xcf\x82\x42\xac\x84\x91\xb8\x3d\xfd\x89\x79\x10\x3b\x23\x53\x50\x45\x54\x19\x8a\x5f\xc1\x17\x7d\x0d\x93\x1b\x7e\x8b\x28\xdc\x32\x68\x48\xc5\x25\x65\x93\xb3\xcb\x56\x52\xdd\x27\x0b\x1c\xef\x7f\xc3\x16\xdb\x12\xd3\x52\x97\xea\x82\xe2\x12\xdb\x08\x6c\x59\x61\xc1\x2e\xb8\x65\x0d\x7e\x2c\x44\x50\xe8\x22\x26\xbd\xd0\xcf\xeb\xec\x3e\x04\x4c\x5b\x11\xa1\x95\x2c\x49\x6c\xc2\xbe\xa4\xac\xe6\x6b\xec\x22\x1c\x5c\x4d\x8d\x6a\xed\x10\x67\xd9\x35\x1e\xbd\x2b\xfc\x42\xe4\x62\x01\x82\x05\xb4\x73\xac\x5c\x9a\x93\x30\x10\x5a\x92\xa3\xd0\xb1\x54\x38\xdd\x7b\x81\xcb\xe0\x27\xf8\xf9\x73\x48\x07\x78\xe8\x81\x20\x01\xdf\x12\xbb\x60\x7f\x6c\xc0\x11\x14\x41\xcb\x4c\x9d\x9b\x1b\x53\xa9\x08\x57\xb6\x54\x8b\x6c\xe0\x16\xe7\x17\x7f\x3d\x33\xdb\xd9\x2c\x56\x3c\xa1\xbf\x52\x06\xbc\xef\xed\x96\x8d\x79\x09\x04\xc4\xa6\xdd\xae\x36\x69\x91\x26\xae\x7b\x83\xd5\xe7\xff\xe4\x70\x9f\x8f\x54\xa8\x46\x3a\xf3\x5a\x57\x90\x5b\x9a\x4b\x71\x9f\x4c\x30\x65\x11\x62\x29\x89\x33\xce\xdf\xcd\xa6\x40\x36\xd5\xf9\xde\xae\xb9\x25\xf2\x40\x4a\x41\xaf\x67\x92\x80\x88\x8e\x23\xab\xdd\x77\x6c\xd3\x40\x0e\x37\x5b\x7d\x69\xde\xe5\x33\xa9\x64\x97\x2f\xde\x51\xdd\x25\x5f\x6f\x95\x17\x95\x48\x77\xe4\x62\xb1\xa3\xb5\xbd\x12\x53\x96\x03\xa9\xe4\x07\x92\x6a\xad\x0f\xf1\x1f\xb7\xdc\x3d\xd3\xe9\xec\xf0\xed\x7d\x06\x19\x17\x13\x9c\xd1\x7f\x91\xee\x26\x9d\x96\x6f\x10\xff\x16\xda\xf8\x5b\x68\xe3\xdf\x63\x68\xe3\x00\x70\x7c\xbb\xb3\x3d\x5f\x56\x62\x49\x38\x14\x4c\xa9\x4c\x75\x61\x39\x8c\x8a\xc3\x86\xe7\x15\x10\xcd\x19\x9e\x90\x84\x58\x05\xba\x5c\x6e\x01\x74\xf9\x67\x8e\x3f\xd3\x05\xf1\x91\x80\xa7\x82\xe0\x35\x10\x4f\x1f\x19\x82\x96\x94\x21\xb6\x2a\x21\x5c\x0f\xb2\x4c\xe7\xf6\x08\xe7\x93\x2a\x57\x30\xa7\xd7\xd9\x27\xcb\xbe\x1c\xba\x31\x88\xd6\x16\xbd\x60\x29\xd3\xae\x48\x17\xa6\xff\x17\xd0\x5a\x93\x98\x0e\x79\x7b\x79\x3f\x25\x9d\x0e\x5b\x11\xfe\x56\x5d\x09\xc5\xd5\xb8\x76\x8f\x90\x31\x95\x5c\xec\x66\x74\x6b\x72\x1f\x08\xc0\xa8\xc5\x29\xed\x98\x13\xd3\xdc\xe5\x8f\x28\xfa\x07\x44\x7b\x74\xf8\x40\x87\x3a\x52\x61\xa7\x8e\x67\xaa\xa1\xa5\x14\x55\xb0\xf4\xa9\x6c\xd8\x74\x78\x23\xf8\x24\xd0\x83\x03\x30\x39\xcb\x87\xc6\x2e\xd4\xa3\x5e\x12\x6f\x8c\x48\x3a\x56\xac\x01\xa8\xa9\xe2\x16\x08\xb4\xd9\x42\xfe\x0b\x75\x7b\xb0\x15\x99\xe2\x51\xaa\xad\x28\x15\x1c\x96\xbe\xb7\x2a\x4f\xb4\x5d\x4a\x5f\x8c\xd1\x1b\x3c\xd5\x75\x16\x8b\xe8\x82\x98\xea\xc1\x89\xe9\xc2\x07\x6e\x43\xdb\x2a\xbb\xff\x07\xfa\xc9\x5b\xba\x38\x86\x4c\x82\x7e\xf2\x5f\x8b\xde\x1f\x16\xdf\xef\x43\xd0\x4f\x0e\x33\x3c\x99\x92\x31\xec\xeb\x46\xfe\xdf\x6e\x2c\x49\x2e\x81\x80\xd5\x99\xd6\x56\x4b\xb1\xbf\x01\x94\xcd\x31\xd3\x71\x8b\xda\x58\x4a\x32\x99\x4a\x9d\x6e\x72\x2a\x08\x1e\xb7\x19\x67\x5d\xfd\x6d\xae\xb3\x12\x20\x16\xff\xc2\x8e\x59\x9b\x8b\x31\x11\xaa\xe8\x35\x69\xbb\x22\x48\x57\xd0\x28\x6c\xab\x46\xcf\x0d\x62\xe7\x0e\xbf\x27\x6d\xdc\x1e\xd4\x3e\xf7\x10\xc0\xf6\x84\xc8\x3b\x3e\x8e\x23\xb8\x04\x4d\x68\x9a\x67\xec\xfa\x89\x38\x5b\x94\x92\xc5\xd3\xe2\x57\x2d\xf2\xb7\x9a\x9a\xd9\x99\x12\xbe\x60\x3f\x4a\x7d\x6d\x0b\x17\xda\xb0\x34\xac\x3c\xd9\x59\x36\x00\x32\x1f\xca\xa2\x99\x58\xab\x08\x88\xa5\xa0\x13\x00\x8b\x40\x59\xc4\xf9\x0d\xbf\xa6\x4c\x1a\x77\x12\xe4\xe2\x5c\x69\x44\x79\x25\x3a\x86\x78\x72\xaa\xab\x86\x66\xf5\x2e\xf9\xcf\xf7\x97\xf8\x56\xd3\x14\x2d\x42\xb9\x22\x30\x14\xbd\x6c\x3b\x12\x7c\xc8\xc7\xe4\x0d\x55\x9b\xaa\xa4\xc5\x46\x10\x20\xe2\x15\xc9\xa6\x44\x80\xc8\x50\xa0\x48\xcc\xae\xef\x23\xd4\x8c\xdf\x31\x18\xea\x60\xf6\xee\xb1\x8e\x74\xe0\x1c\xab\x24\x20\x20\x32\xdc\x46\x04\x21\xca\x52\xac\x23\xac\x86\xd0\xab\x5d\x6d\x42\x8e\x73\x31\x2a\xe3\x96\xed\x8e\xf8\x98\x4c\xf4\xf0\x76\x27\x7c\x4c\x76\x23\x17\xe3\x9e\xa3\x68\x37\x82\xde\xaf\xf8\x1f\x79\xa4\x59\x99\x16\x8b\xf1\x4c\x91\x5c\x3c\x7e\xa3\x53\xe1\x20\x0e\x51\xd6\xa7\x00\x26\xa0\x31\x20\xa6\x04\x4b\x3c\xd8\x1b\xa2\x28\xe3\x78\x5c\x9d\x1e\x05\xc6\x9d\xbc\x8c\x6b\x66\xbf\xb7\x0b\x12\x26\xd6\x87\x4c\x35\x5c\x71\x28\xc2\xc7\x84\x91\x09\x67\x34\x97\xbb\x26\xbd\x6d\x4d\x93\x51\x65\x72\x1f\x46\xd3\xe9\x67\xa4\xe9\xfc\x6b\xa5\x55\xa2\x62\xb3\xdf\x72\x65\xc9\x8a\x8b\x2c\x04\xeb\x33\x23\x59\x2c\x76\xc0\xda\xa5\x75\x37\xa0\x21\x86\x83\x21\x12\xe9\xce\x1e\xe2\xe9\x4e\x0f\x51\x47\x55\xa4\xb8\x2f\xe4\x1c\x8c\xb2\x94\x04\xa6\xf9\x62\x07\x88\x14\xe0\x34\xb3\x8e\xed\xd0\xf8\xc8\x77\x3a\xc0\x88\x52\x00\x1b\x63\x38\x44\x4a\x4e\x75\x66\x78\x0d\xe2\x7c\xa1\xba\x84\x2f\xac\x8e\x64\x06\xe7\x5c\x0d\x81\xa6\xb3\xe5\x0d\x65\x38\xcb\xee\x4d\x10\xf8\xc5\xc2\x26\xf3\x88\xcd\x90\x17\x0b\xf7\x97\x5a\x57\x5b\x92\xde\x00\x6e\x21\x70\x74\x59\xca\x6c\x7a\xa5\xf4\x6e\xd1\xff\x3e\x62\xbf\x8c\x89\xb9\xa6\x67\x82\xfc\xfb\x36\x0d\x2f\xbe\xb8\x3d\x50\x2b\x79\x16\x5a\xf2\x2c\xec\x81\x3c\x8b\xf5\x1c\x28\x39\x17\xd6\xe4\x5c\x58\x88\x73\x41\x8e\x6d\x61\x25\xdb\xc2\xfa\x95\x43\x9b\x54\x99\x15\xf6\x70\x66\x85\xc1\xbe\x99\x5b\x62\x36\xe7\xb2\x06\xae\xfe\xc2\xae\x7f\xcc\xc6\xa7\xc5\xed\xec\x7e\xd6\x55\x58\xc1\x58\x8f\x2e\xa6\x0a\x93\x42\x4b\xea\x30\x16\x64\x3c\x1b\x55\xdd\x29\x0a\xb1\x40\x00\x89\xf6\x21\xe2\x29\x53\x37\x09\x4d\xd9\xa0\x57\x0c\x9c\x0c\xf8\x30\x14\x81\x8d\xf6\xd5\xc4\x2f\x88\x93\xee\x8d\x6a\x86\x42\x68\x4c\xdf\x64\x09\xd1\xdc\xf8\x5b\x07\xa0\xb4\xf5\x27\xb4\xcc\xf6\x97\x56\xfd\x3d\xaa\xf3\xb1\x09\x1b\x9b\x93\xf1\xae\xec\x12\x39\x39\xa0\xc3\xfe\x60\x98\xa8\x7f\xdd\x18\xb0\xc7\xc3\x58\x6c\x46\x2a\x54\x39\x3e\xa0\xc3\x94\x81\x32\xf3\x9a\x8e\x70\x99\x13\xcb\x13\x0c\xe8\x10\xb9\xf9\x62\x08\x61\x62\xcb\xfb\xcf\x10\x77\x73\xa6\xc8\x0f\xd3\x1e\x22\xd4\x15\xcd\x44\xed\x63\x49\x6d\x8e\x12\xf7\x55\x1d\x89\xbb\xb1\xf5\x97\xa2\x29\x57\x5f\x0a\xa7\x7c\xd0\x1b\xa2\x2c\x65\xe5\x14\x03\x96\xc6\xac\x9f\x01\x82\x30\x4c\x70\x9c\xf3\x09\x09\xaa\xb9\xb2\x81\x1c\x16\xe1\x06\x20\x5c\x02\x89\x28\x22\x3a\x9e\xe2\x5a\x16\x81\x8b\xc9\xee\xf5\x8c\x66\xe3\x7a\xd2\x59\x1b\x88\xca\xe4\x94\x27\x32\x60\x29\xd1\x75\xfd\x02\xb5\x2a\x5d\x1b\xda\x94\x72\x16\x32\xb4\xdc\x12\xd9\x55\x4d\x74\x15\xf9\xe8\xba\x58\xe3\xe1\xf0\x56\x5f\x84\x1a\x82\x3e\x3e\xc8\x6f\x11\xbc\x62\x15\x2c\xfd\xb1\x63\x8a\x82\x41\x0a\xb6\x8e\x67\x6e\x03\xd9\xeb\x13\x8f\xd3\xb9\x89\xee\xad\xa3\xdb\xe2\x09\x49\x18\xba\x25\x52\xe7\x52\x5f\x81\xe4\x54\xa5\xb4\x7d\xf2\xa5\xaa\x18\xd8\x95\xb4\xd3\xd9\xa9\xb2\x33\xd2\x12\x63\x8d\x90\x73\xb6\x90\x02\xe4\x13\xa9\x11\x44\x48\x1a\x48\xa6\xb6\x92\x56\x9b\xae\xf6\xaf\x4a\x6b\xf3\x4d\x08\x55\xce\x07\x5a\xaa\x52\xe3\x07\x70\x98\x12\xdb\xa4\x81\x79\xd6\xed\x5b\xce\x8f\x86\x17\x2a\x37\x44\x53\x09\xd8\x62\xc1\xed\xf5\x86\x53\x6a\xf2\xcc\x52\x75\x64\x67\xa9\x50\xd2\x37\xde\xb1\x10\xde\xa2\x23\x13\x82\xdd\xe0\x49\x73\x45\x56\xfc\xf1\xea\xe8\x4f\x18\xc6\xde\x18\x14\x7d\x9d\xa5\xb3\x01\x1e\x2e\x4d\x0c\x72\xd7\x9c\x9a\x37\x80\x28\x0f\xa1\x0f\x47\xb1\xe4\xff\x7d\x71\x7a\xd2\x77\x7f\x00\x98\x94\xbe\xc6\x23\xbb\x8c\xb0\x78\xa9\xf1\x8d\x3e\x09\xce\x61\x4c\xd9\x28\x9b\x8d\x49\x0e\x32\x8b\x73\xbc\x49\xbd\x04\x63\x85\x9c\x93\xa1\xa8\xed\xce\x66\x7b\xcc\x89\xf6\x0e\x20\xbf\xd2\x5c\x89\x2f\x2d\xc3\x3f\xdd\x14\x00\x6c\x74\xa3\x67\x31\x4d\xfd\xd1\x64\xb0\x55\xdd\x03\x53\xb8\x58\x14\xfb\x73\xa6\xdd\x9f\x9b\x59\x47\x06\xd9\x50\x9b\x0b\x3b\x1d\xeb\xa3\x9d\x9a\xb2\xb1\xe5\x61\x3c\x95\x56\xdf\x5e\xfa\xd3\x4e\x07\x4c\xd3\xc1\x10\xa2\xe9\x80\xc7\xa3\x3b\x32\x7a\x47\xc6\xfd\x48\x31\xa0\x96\x9f\x71\xb9\x30\xec\xcf\x21\xe0\x8e\x2f\x2d\x37\xe2\x08\x65\x68\x0a\x1d\x87\xa1\x63\x56\xdb\xa6\x16\x8b\x48\xdf\xa0\xa9\xad\x55\x1d\x45\xa7\xa3\x33\xa9\xac\x7a\xdd\xaf\xf6\xe0\x3a\x4e\xea\x8f\x6d\x5f\xd5\x44\x1b\x2e\x48\x34\xd0\x06\xc8\x3c\x84\xda\x0a\x39\x7b\x56\xb6\x52\x2c\xb8\x31\x9a\x16\xc6\xb2\xbc\xd3\xd9\x58\x04\xb8\xa3\x38\xca\x08\x6e\x7a\x4c\x3f\x96\x6e\xcd\x97\xab\xaf\x3b\xd2\xb7\x8e\xc2\x04\x0b\x22\x52\x62\xc2\x27\x58\x2a\x03\xfc\x77\x4a\x84\x29\x47\xbf\x44\xf9\xec\x7a\x12\x72\x9b\x7f\xfc\x20\xc3\x6e\x4d\xa4\x72\xaa\x4d\xaf\x52\x0d\xb5\x55\x7d\x00\xaa\xcb\x0b\x35\xad\xfc\xab\xf9\x96\x5c\xe4\x21\xaa\x45\x0b\x42\xe5\xbe\xf9\x0a\x34\x7c\xd1\xea\x9a\x85\x2c\xf6\x8d\xe2\xe1\xcb\x3d\x64\x3b\xc0\xe3\xb1\x3e\xed\x1b\x3b\x08\x36\xed\x6a\xab\xa6\xdd\xdf\x41\x77\x71\x45\xf4\x42\x33\x75\x70\x36\xd5\x59\xc2\x35\xa2\xed\x0e\x07\xd7\xa4\x0c\x3b\xaf\x4a\x2d\x4b\x5e\xd0\x2c\x74\xea\xfe\x30\x4a\x29\x0c\x11\x8e\xf5\x21\x49\xed\xbf\xe5\x73\xeb\x18\x5e\x61\x52\x79\xe1\xc8\xb4\x87\x64\x7c\xe8\xb8\x17\x68\x42\x3d\x79\x41\x9a\x38\x44\x1c\xcd\x0b\xf6\x26\x29\x82\x58\x2d\xd7\xfb\x09\xd4\xf9\xa4\x75\x5c\xd6\x56\xaa\x18\xc0\x7e\xab\xee\xc5\xe2\x93\xba\x17\xf3\xaf\xc2\xbd\x98\x56\x5c\x43\xe9\x93\xba\x86\xe2\x6f\xae\xa1\x6b\x5d\x43\x67\x75\xd7\xd0\xd9\xa7\x74\x0d\xcd\x02\xae\xa1\x15\xc7\xe0\x1d\x59\x71\x0d\x65\x9a\x7b\x5e\x1f\x4d\xfd\x73\x7b\x84\x02\x02\x13\x59\xf3\x3d\xb6\x5b\x77\xf6\x75\xf8\x85\x7a\xc6\x93\x51\x45\x15\x03\x9a\x9a\xd6\xc0\xd2\x7f\x9d\xfe\xe8\xd4\xea\x0a\xc0\xa8\x70\xce\x44\x0c\x65\x68\x96\x62\x30\xf2\x5c\x34\x47\x75\xec\x2c\x1a\x41\x34\x5b\xe1\x78\xe8\x2e\x93\x74\x84\x00\x73\xb9\x11\x3d\xee\xbb\xee\xdd\x57\x6a\xb0\x5e\x00\x56\xea\x7d\x4a\xd9\xc1\xc8\x84\x85\x2c\x12\x5d\xd9\x8b\x32\x42\x51\x5c\x1a\x5f\x08\x54\x12\x40\xa3\x9a\x92\x81\xe2\xc8\x2b\x04\xfb\x2c\x96\xdc\x88\x20\x30\x19\x0c\x13\xc7\xe6\x94\x3a\xd0\x3d\x08\x8d\xbe\xda\x4a\xa0\x9a\x2f\x8f\xbc\x46\xf4\x61\xad\xa4\xd5\xdb\x38\x37\x24\xd2\x8f\x9d\x5d\x51\x79\xbb\x69\x0e\x86\x89\x3f\xd3\xf0\x34\x9d\x8d\x4b\xc2\x17\xda\xf2\x25\x3a\x1d\xe6\xd2\xf8\x09\xd4\x5b\x37\xff\x21\xec\x74\x38\xf0\xb7\x21\x83\x28\xd3\xcf\x50\x06\xd1\x68\x09\x64\xac\x87\x59\x32\x53\x1e\x84\x71\xb4\x8e\x57\xba\x25\xb2\x4b\xd8\x7b\x2a\x38\x9b\x3c\x0c\x66\xf6\xcd\x96\xf2\x39\x6d\x29\xdf\xd0\x14\x5b\xa3\x29\xbe\x6a\x9b\xd3\x57\x01\xaa\xb0\x62\x6b\x08\x84\xb0\xad\xa0\xff\x78\x2d\xaa\x0d\x35\x10\x48\x0d\xf4\x30\x34\xaf\x0f\x89\x2f\x75\x98\xf1\x88\xf3\x77\x94\x68\xc2\x2c\x41\xf4\x22\x82\x6b\xc2\x14\x46\x8a\x49\x24\x4b\xb8\x3a\x31\x2e\x71\xe0\x12\xdb\x5e\x1a\x19\x3c\x09\x0e\x80\xb9\x45\x9c\xf1\x11\xce\x6c\x54\x66\x75\x81\x1c\x4b\x32\xf1\xec\x41\x66\x4f\xa4\xd2\x5e\x4f\x89\xac\x07\xac\xf5\x78\x7a\xe1\x40\x2c\x7a\xe3\xde\x12\x79\x64\x8c\x25\x3f\xdf\xab\x43\x00\x22\x41\x4c\x60\x06\x3d\xbf\x0a\x3e\xa3\x20\xed\x0e\x35\xa1\xba\x8c\x0d\xab\x2a\xb9\x30\x60\x37\x0d\x74\x36\xea\x68\x08\x17\x8b\xf9\xd2\x92\xc0\xa2\xf2\x7c\xb9\x5c\xa2\x59\xca\x83\x60\x96\x12\x90\x81\x46\xe9\x6c\x30\xb3\x1f\xb0\xdb\x1b\xc6\xb9\x18\xa1\xdc\x4b\x9f\x54\x86\x58\x73\x21\x3f\x6d\x9e\x04\x9b\x49\xe1\xe7\x83\x8b\xa3\xab\xb7\xc7\x57\x6f\xcf\x5f\x17\xc1\xbe\x47\x6e\xb5\x77\xa3\xe2\x02\x46\xdd\x7d\x18\xff\x83\x53\xa6\x9f\xb6\xfc\x26\x5e\x5d\x5e\x9e\x5d\x9d\x9d\x9f\x5e\x9e\x1e\x9e\x96\x8d\x94\x1c\x7d\xa7\x03\x48\x9a\x81\x11\x74\xe1\xe3\x5f\x69\x17\x38\xc9\x47\x3a\x0f\xe6\x9d\x94\xd3\xdd\x5e\xdc\x8b\x9a\x8d\xbe\x39\xf8\xdb\xd5\xe1\xe9\xc9\xc9\xd1\xe1\xe5\xf1\xe9\xc9\x45\x94\xb8\x0c\x0a\x29\x03\xe1\xde\x6b\x19\xfd\x44\x89\x8c\xb9\xdb\x8f\x60\x12\x7c\xf1\xcf\x15\x2f\xf2\xe9\xf8\x3e\x82\x76\x3e\x45\x32\x20\x3b\xbd\xff\x54\xdf\xe7\xa6\xb1\x0b\x8b\x65\x66\xb1\xc7\x15\xd8\x25\x1f\x93\xf7\x24\xe3\x53\xcd\x27\x98\x10\xeb\xb9\xc4\xb7\xea\xde\x31\xbf\x46\xfc\x3d\xd1\x61\x3f\xcc\x4f\x45\x9f\xa3\xc4\x47\xd7\x02\x91\x52\x10\xb4\xac\x16\x51\xb5\x24\x60\xc6\xb2\x2a\x8c\x65\x55\x0c\x7a\x43\x37\x26\x5e\xfd\xf4\x07\x87\xaf\x2f\xae\x8e\x4e\x0e\x7e\x7e\x7d\x14\x25\x24\x6e\x3e\x7d\x99\xee\xec\xfc\xf7\xc5\xe9\x49\xac\x13\x07\x02\x9b\x34\x91\xc2\xaa\x9e\xb8\x12\x7c\xdf\x36\x72\x72\x71\x76\x70\x78\x14\x68\xbd\xfa\xe2\xf1\x1d\x5c\x5c\x9c\x36\x1b\x2f\x1f\x3e\xac\x61\xf7\x69\xb5\xe5\x99\x96\xc8\x6e\x6d\x5c\x85\x03\x32\x74\x57\xa4\x18\x90\x61\xc1\x59\xa8\xbf\xeb\x92\xb9\x09\x60\x11\x3e\x69\x6f\x8f\xaf\x5e\x1e\x5f\xa8\xd1\x15\xb9\x4b\xec\x87\x6e\x16\x38\x38\x39\x7c\x75\x7a\x7e\x75\x71\xf4\xda\x6c\x7d\x77\xaa\x42\xb3\xc2\x40\xdd\xd7\x7b\xf5\xb9\x2d\x16\x37\x2e\x35\xc8\x9a\xac\x29\x6e\x3b\x9b\x46\x1a\x35\x2a\xd4\x61\xcd\x99\xdf\x7c\x72\xdd\x42\xe9\x7e\x72\x93\xb6\xb7\x76\xa4\x6e\x0c\x84\x79\x13\xb7\x1d\x30\xc1\x7e\x72\x6f\x21\x7a\x03\x2c\xda\xae\xa0\x0e\x83\xa8\xe4\xcd\xe3\x89\x26\xde\xbb\x20\xfe\x0e\xfe\x32\xd0\xff\x1f\xee\x3a\xd2\x59\x60\x54\x06\x51\x84\xc8\x70\xed\xfc\xee\x34\x80\x30\xd7\x29\x9e\xba\xf4\xa6\xab\x98\xcc\xdf\x7b\x28\xc7\x27\xfa\x84\x75\x71\x8b\x35\x1f\x89\x8f\x4c\x9a\x38\x2f\x03\x7b\x03\x45\x7e\xa1\xda\x31\x7d\xf5\x57\xc2\xf4\x03\xc4\x37\x6d\x70\x7d\x19\xe2\x51\xb6\x4b\x73\x83\x46\xe8\xe6\x44\xbc\x27\xa2\x6b\xa3\x8f\x7e\xc9\x5e\x0f\x91\x98\x8e\xda\x7a\x9c\xed\x09\x7e\x47\xd9\xad\xd6\xbe\x25\x6d\x31\x1d\x25\xed\x11\x66\xcf\x64\x5b\xb1\x4a\x96\x71\x6f\x1f\x1c\xbe\x8e\x42\x0e\x12\x8e\xd2\x19\xcd\x91\xc9\xfd\x5b\xfe\x35\xd8\x1b\x56\x7e\xc4\x63\x22\x31\xcd\x60\xa7\xa3\x0f\x68\xf3\x4d\x71\x62\xc9\x06\x0f\x13\xbd\xf4\xe6\xe1\xd3\xae\xf3\xab\xa3\x83\x97\x47\xe7\x17\x57\x17\xff\xfb\xe6\xe7\xd3\xd7\x69\xf9\xe0\xe5\xf1\x9f\x8f\x2e\x2e\xbd\x07\x97\xa7\x7f\x39\x3a\xf1\x7e\x1f\x9f\xbc\x3c\xfa\x9b\x5f\xe1\xe0\xf2\xe0\xf0\xe8\xe4\xf2\xe8\xdc\x7b\x78\x72\xf0\xe6\x48\xdf\xaa\x25\x6e\xab\xf9\x2a\xfa\x5b\xf7\xd0\xcc\x57\xf1\x8f\xf9\x14\x8f\x48\xd4\x0a\x36\x5c\x96\x7c\x89\x25\x1e\x11\x26\x89\xf0\x8b\x9a\x31\x95\xa5\x8e\x35\x58\xb7\x55\x9f\x44\x59\xe0\x92\xbf\x23\xac\xd2\x99\x99\x76\x59\xe2\xd0\x04\x4c\x7e\x85\xf3\x3b\xbf\x9c\x5d\xaf\xe8\xea\xca\x7c\x95\xab\x19\xbd\x52\x1f\xe9\xea\x8e\xe0\x31\x11\xf9\xd5\x55\xb4\xf9\x7b\x9a\x2c\x80\xb6\xc6\x03\xb4\x33\x5f\xba\x00\x19\xd0\x1e\x15\xb7\xd1\x1a\xfe\x10\xf1\x94\x39\xee\x3e\x89\x60\xcd\xad\x79\xbd\xfe\x49\xa4\xfc\x93\x83\xa4\x45\x55\x55\xc3\xb6\x42\x8f\x4a\x5d\xf2\x51\x3a\x9a\x06\x7a\x74\x5b\x4d\x0d\x0a\xa9\x69\xd6\xa2\x47\x1f\xa5\x9c\xe9\x9b\xb9\x15\xe8\xd1\xea\x02\x7d\x15\xba\x19\x0f\x88\x54\xe7\x88\xda\x99\x8f\x8e\x24\x03\x6c\xa5\xfd\x61\x9a\x59\x59\x33\x89\x9c\x7b\x09\x2c\x10\x9e\x5b\x50\x71\x73\xea\xb5\x8b\x5c\x77\x8a\x05\x9e\x6c\x7b\xf4\x7f\xb3\x5c\xd4\xd7\xa5\x20\x6b\xf2\x6b\x6d\x61\x20\xb7\x61\x04\x2b\x0f\x22\x74\x31\xb4\x89\x43\x83\xa6\xe7\x6f\x8a\xf7\x6f\x8a\xf7\x6f\x8a\xf7\x8f\x55\xbc\x03\x8c\xf6\x75\x46\x5e\x45\xe2\x47\x69\x36\xe8\x0d\x5b\xbe\x3d\x7f\xe4\x66\xc9\xf5\xa7\xcc\x53\x02\x66\x05\xf9\x2f\x84\x0a\xda\xe9\x80\x3c\x2d\xed\x76\x14\x29\xf9\xda\xfd\xca\x51\x34\x8c\x6c\x82\x07\xd5\x64\x9f\x17\x6f\x60\xe2\xe0\x06\x69\x9a\x4a\x30\x82\xe5\x3b\x01\x46\x28\x87\x30\x29\x1e\x94\xcd\xe7\x28\x4a\x3d\x83\x25\x18\xe9\x1c\xa8\x68\x30\x74\x2a\xce\x4e\xf4\x80\x6b\x66\x26\xd6\x09\x0c\xbf\x8b\xdb\xe5\x89\x72\x30\x05\x45\xf2\x32\x22\x6a\x5d\x2e\x45\xd4\xbb\x94\xf8\x4f\xbd\x3e\xef\xf6\x92\x3d\xc5\x70\xf4\x5e\xe0\x1f\xb9\x0b\x9f\xd3\xed\x0d\x3d\xa9\x15\x0f\x5b\xe6\x52\xe8\x15\x57\x56\xcd\xfa\xa0\xe1\xfb\x1a\x47\x6b\x83\x75\x28\x06\xe4\x42\x62\xa1\xb3\x8c\x18\xdb\x73\xa9\x07\xea\x47\x36\x1e\x76\xd6\xe9\x80\x2c\xdd\x6f\x96\xf8\x85\xfd\xc2\x74\x06\xa7\x2c\xfd\x21\xf4\x56\xbd\xfb\x61\xc7\x35\xf0\xbd\xa1\x79\xce\xad\x44\x1d\x8e\x01\x1f\xf6\xd5\xff\x92\x28\x72\xaa\xdc\xcc\x2a\xb9\x7b\x4e\x25\xee\xd4\xde\x0d\x82\x8a\x13\x9c\x12\x80\x7d\x25\x6a\xbb\x7a\xd7\x61\x98\xe0\x14\xd7\x16\xa1\xb4\x62\x94\xc6\x74\xa0\x43\x5f\xa0\x28\xf2\x2c\x01\xcb\x4a\x62\xb0\x47\x0c\xa6\x72\x7e\xf5\x50\x18\xc0\x95\x66\x7f\xf0\x12\x17\x1b\xc9\xc5\xac\xe8\x60\xcf\x29\x63\xcb\x31\x8a\xe2\x54\xeb\xfc\x29\x76\x9c\x05\x13\xb9\xc5\xa1\xde\xa4\x68\xf9\x5d\x9c\xe7\x0a\xb7\xf8\x88\xc0\xff\xff\x56\x74\x17\xab\xc0\x33\x9d\x75\x30\xb0\x62\x6f\xf0\x54\xfb\x94\xbd\xc1\x53\x2b\x60\xb9\xd4\x52\xa2\x2e\x16\xdb\xab\x87\x2c\x16\x80\xa5\x04\x75\xd5\x81\xff\x93\x2d\x52\x63\x46\x18\xf4\x94\xc4\x0c\x4b\xfa\x9e\xb4\x47\x7c\x4c\xd4\x15\x56\x86\x45\xd1\xbc\x5f\x2b\x0c\xd1\x22\x4f\x08\xcc\xf2\xcd\x47\x86\xff\x92\xda\xd1\xa3\x64\x70\x8b\x78\xc2\xd2\x66\x54\x13\x15\x7c\x6b\x69\xda\xf5\x61\xd2\x28\x6b\xe2\x0c\x61\x99\xab\xfc\xf1\xe1\xb1\xfd\x50\x38\xbd\x4d\xb8\x30\x0c\x04\x72\x80\xba\x2a\x68\xd6\x4b\x5a\xc3\x53\x0a\x60\xbf\x81\x80\x5c\x91\x95\x66\xa0\x56\x71\xd8\x12\x7e\x40\x25\xe1\x18\x51\xae\xee\x1b\x50\x7c\xf7\x6b\xca\xc6\x05\x82\xdc\x0b\x69\xcd\x3a\x1d\x0c\x38\xf2\x23\xa3\x21\xbe\x74\xd1\xef\x8d\xef\x52\x09\x42\xf3\x70\xb4\xbf\x33\x64\xab\x8f\xf2\xf5\x10\xc4\xf8\x49\x11\xc4\x5e\xf4\xde\x55\x69\x6b\xbe\x60\x80\xe7\xec\x77\x03\xf0\xc4\x0e\xe0\x39\x2b\x01\x9e\x02\xf1\x14\xc8\x74\x86\xb4\xdd\x1b\x35\xf0\x33\x3c\xcd\x40\x25\xd3\x13\x4d\x03\x74\xa9\x45\x02\xf8\x67\xee\xd1\x32\x6a\xf1\xcf\x24\xe5\xeb\xf1\xcf\xcc\x85\x8f\x5c\x7a\x88\xd3\x99\x07\x9d\x6c\x46\xfd\x7b\x7a\xef\x00\x33\x86\x19\x44\x80\xa5\xdc\xcf\x4c\x00\x61\x9c\x4b\x2c\x67\xf9\x21\x1f\x93\x94\x20\xe6\xe8\xf1\x6c\x09\x04\xd0\x3d\x40\x1f\xd7\x38\xdb\xc8\x0b\x6d\x56\x9b\x3f\x62\x97\x1f\x9e\x9e\x5c\x1e\x9d\x5c\x5e\x5d\xfe\xef\xd9\x51\x4a\xe2\xc3\x83\xc3\x57\x47\x57\xea\xe1\xf9\xe9\xeb\xd2\x84\x51\x7d\x1c\x1d\xe2\xd1\x1d\xd1\x86\x02\xc1\xb3\xa8\x55\x6b\x25\xb2\x16\x84\xae\x5a\xca\xcd\x46\x01\x23\xc0\x3e\xed\xac\xce\x4e\xb5\x25\xe7\xe5\xd1\xeb\xa3\x4b\x35\xad\xb3\xb7\x97\xe5\x64\xd4\x8f\xe8\xec\xed\xa5\x1a\xb8\x2d\x11\x99\x7f\xd5\x13\x5d\x35\x52\xff\xdf\x3c\x74\x41\xfe\x39\x23\xb9\x7c\x60\x44\x58\x1d\x44\xf6\x9b\xa7\xce\x6f\x38\xb8\x23\xf7\x83\x3b\xca\xb4\xf7\x42\x36\x83\x3b\x4a\xe7\x2f\xc4\x1a\xc1\x1d\xa5\x6f\xca\x95\xda\x92\x2d\xff\x63\xbf\x2f\x5c\x20\x45\xb6\x26\xb8\xa3\x4d\x12\xf8\x39\x82\x3b\x32\x08\x13\x6f\x4c\x4f\x1e\xdc\x91\xad\x0e\xee\x48\x3f\x6f\x70\xc7\x3a\x6b\xf4\x85\xbb\x80\x7d\xcb\x0e\xf8\xef\x73\x01\xcb\xeb\x2e\x60\xf9\xbf\x23\x3b\xe0\x57\xec\x02\x96\x7b\xd7\x5f\xfe\xd5\x49\x08\x37\xbf\x1b\x09\x21\x0b\xba\x80\x09\x44\xd3\x59\xcd\x05\xcc\x97\xe8\x3f\x1f\x4b\x3e\x82\x08\x88\x94\x96\x2c\x39\x84\xf1\xd5\x4c\x64\xa9\x44\x22\xbe\x32\x4c\x67\xaa\xc8\xa7\x03\xb0\xa4\xcc\xff\xc1\x01\x07\xf3\x25\x62\x10\xcd\x97\x68\xee\xd2\xda\x1b\x08\x60\x12\xa9\x43\x49\x4d\x26\xa2\xdd\x7f\xe4\x9c\x45\x4b\x97\x91\x5f\xab\x93\x5d\x2b\xf1\x35\x1f\xdf\x1b\xfd\x93\x26\xe8\xee\xf9\xa0\xda\xde\x30\x8d\x24\xf9\xd5\xa5\x0a\xc8\xa5\x20\x78\x12\x41\x24\xc2\x1e\x71\x85\x18\xb0\x3e\x4b\x9e\x2d\xb6\x3e\x41\x1e\x71\x79\xd7\x7f\xbd\x13\x36\x72\x40\x38\x61\xa3\xae\xbd\xf4\x9d\xd7\xf2\x29\x67\xe3\x95\x0d\x6e\x99\xf5\xd1\x35\x67\xd5\xbc\xcd\xc6\x34\x05\xf2\x04\x29\x0f\xfa\x66\x1c\xcc\xbc\x37\xc0\x2f\x58\x7f\x0d\xd7\x4c\xce\xf6\xae\xff\xa9\x0c\x6b\x6d\x0a\xc4\x60\x53\xa6\x86\xdf\x04\x67\xcc\x44\x91\xda\xf4\xc1\x7e\xbd\x13\x45\x2d\x7c\xcd\x45\x28\x0f\xe2\x47\x21\x02\xf7\xf4\x3d\xda\xdc\x69\x2e\x8f\xa4\xdd\x31\x00\xd6\xb7\xa7\x9d\xb0\x2f\xce\xda\x5c\x69\x2e\xa5\xa8\x9d\xa2\x09\x15\x23\xfd\x8c\x94\x0e\x7d\x5d\xc9\x4d\x6a\xf0\xfd\x89\xb5\x99\xc8\x58\x4f\x57\xdb\x03\xb4\x73\x20\xae\x3b\x07\x0a\xfd\x0c\x09\xeb\x1c\xe8\x42\x2a\x78\xd2\xf3\xcd\x46\x59\xcd\x8c\xfe\x69\xc5\xcc\xe3\x93\xcb\xa3\xf3\x93\x83\xd7\x57\x17\x47\xe7\x7f\x3d\x3a\xbf\x3a\x3a\x3f\x3f\x3d\x4f\x49\xfc\xa7\xd3\xf3\x9f\x8f\x5f\xbe\xd4\xe8\xc1\xb7\x27\x07\x6f\x2f\x5f\x9d\x9e\x1f\xff\xfd\xe8\x65\x4a\xe2\xd3\xbf\x94\x82\xe8\xe9\x5f\xd2\xfd\x3d\xf5\x47\xa5\xcc\x0f\x7b\xbd\x96\xdf\xc4\x0f\x7b\xdf\xb7\x56\x75\xf5\x9f\x7b\x7b\x1b\x27\xfe\xeb\xdd\xb6\x06\x94\x4f\x8b\x44\xa9\x63\x5e\x7e\xa3\xb2\x9f\x78\x88\xec\x27\xb6\x95\xfd\x5c\xbe\x16\x20\xd6\xc8\x7e\x46\xd7\x2e\x3e\x87\xec\x27\x20\x4c\xbc\x31\x3d\xb9\xec\x27\x56\xcb\x7e\x8d\xfc\xf9\x5f\x43\x60\xff\x80\x31\xbd\x4c\x21\x4a\x3e\x00\xb6\x58\xfc\xed\xcd\xeb\x57\x52\x4e\xcf\x8d\x4e\x09\xb6\x68\xcc\x99\x26\x9a\x8a\x72\x11\xe3\xdc\x5d\x93\xb9\x7e\x58\x95\xf8\x59\x47\x48\xb3\x7e\xdb\x07\x59\x76\xae\x6f\xeb\x9c\xbc\x72\x14\xbe\x34\xdd\x46\xd0\xd0\xec\x92\xc0\xff\xa4\x88\x92\x0d\xed\x64\x9e\xfc\xf8\xc3\xde\x9e\x3b\xaf\x1a\xbf\xf1\x9e\x08\xa9\xd9\x18\x75\x99\xb4\x35\x03\x34\x04\x76\x20\xa6\x27\xd8\xe2\x71\x3e\x1b\x8d\x48\x9e\x03\xc5\x17\x7a\xad\xf9\x7f\x5f\x92\x5f\xa5\x95\x75\xb8\xcd\x0d\x29\x51\xa5\x21\x55\x62\x5d\x6d\xf3\x5b\x57\x55\x7d\x8e\xf8\x64\x9a\x11\x49\xfc\x09\xa9\xcb\xd8\x26\x5b\xe6\xb1\x61\xfc\x10\x8f\x67\x22\x53\x27\x09\x79\x71\xba\xec\x05\xd8\xe9\x80\xe2\xef\x74\xbe\x74\x08\x00\x01\x84\xe2\x08\x8b\x57\x96\x33\xfc\x5b\xd7\x7e\x31\x32\xee\xfe\x0f\x95\x77\x51\x12\x55\xbf\x64\xb4\x2c\x84\x9d\x1a\x4e\x0e\x87\x8e\x0d\x29\x64\x49\xc4\x53\x20\xd2\x7d\xb4\x3d\x34\x8e\xa5\x9b\xc0\x71\x0f\x43\x05\xcf\x7f\xdb\x98\xb8\xa5\xa6\xe1\xdf\x20\xce\x6b\x21\xce\xb5\x25\xfa\x2a\x70\x70\x50\x87\x46\xd5\x28\x67\xee\xc5\xb2\xa5\x71\x4e\xa4\x3d\x95\x86\x14\x02\x8c\x32\x1d\x03\x9d\xc7\xd7\xe4\x86\x0b\x72\x41\xd8\x18\x50\x88\x54\x51\x36\x06\x5c\x4b\x70\x10\xd1\xf5\x50\x15\x9a\xff\x89\xd7\x43\xa0\x7e\x81\x1e\x41\xce\xc1\x27\xda\x8d\x8c\x58\xa5\xf7\x65\xb7\xb7\x3e\xfe\xd8\x3b\x72\x7f\x69\x82\x81\x7c\xe9\x79\xc0\x76\xdd\x04\x81\x76\xe8\xee\x47\x51\x42\xdc\x55\x27\xd7\x4f\x32\x23\x37\xb2\x2b\x05\x9d\x7c\xe9\x9f\xf0\xf1\x41\x64\x8b\xcf\x6f\xd4\x7a\x5e\x04\x97\x3e\x89\xf3\xd9\x75\x2e\x05\x70\xaa\x6c\x98\x90\xb5\xcb\x35\xc1\xf7\xd7\xa4\xab\xe8\xdb\xe7\x48\x5e\xb3\xda\x59\x50\xc6\xf2\x8e\xb0\x20\x7f\x2f\x3b\x1d\x02\x20\x62\x8a\x89\x5c\x3f\x17\xca\xe8\x84\xfe\x8b\xbc\xe1\x63\xf2\xc9\xa7\xb3\xfe\x06\x5f\x13\x9c\x61\xa7\x0c\xdc\x43\x50\x44\xf3\x13\xf2\x41\x07\x5f\x58\x15\xab\x61\x7e\xfc\x32\xa9\x54\x39\x7e\x19\x41\xa4\xa3\xf1\x56\x1e\xab\x27\x91\x3e\x1b\x6b\x17\x49\xd1\x63\x45\xd8\xef\xbb\xb5\x18\x84\x9f\x66\x91\x56\x3a\x22\xb6\x0b\xf1\x34\xd2\x7a\x8b\xfe\x7c\xd9\x80\x0e\x7d\x4a\x81\xc0\x53\x5b\xcf\x97\x48\x6b\x40\xd7\xae\x9b\x4d\x38\x39\xbe\xa4\x13\xc2\x67\x9f\x7a\xe5\x3e\x92\xba\x9c\x99\xc1\x3e\x9e\xc4\xe4\x44\xda\x89\x36\xf4\xbc\x6c\x65\x66\xb3\xed\x9a\xf6\x4d\x33\x05\x00\x84\x7c\x68\x93\xda\xe6\x07\x12\x54\x32\xe3\x00\x06\x97\x10\x31\x23\x4c\xae\xfd\x54\x26\x1e\x57\x57\x6d\xb0\xcf\xb6\xc1\xab\xda\x8f\xa6\xd7\x8c\x2f\xe7\x5a\x23\x01\x19\xb0\x61\xa7\x03\xa4\x53\xb0\x40\x24\x9d\x27\xd6\xba\xc9\xd1\xdb\xbb\xdf\xfe\x05\x67\x92\x7e\x9a\xe8\x2b\xee\x2a\x53\xd2\x2d\xfb\x29\xdd\x2b\x89\x6c\x86\x73\x79\x5c\x5c\x7e\x3a\xcf\x44\x71\x01\xee\x29\xde\x97\x94\xa7\x7c\xed\x9a\xf2\x99\xa4\xec\x76\x57\x90\x31\x15\x64\x24\xbb\x92\xff\x5b\x28\xa3\x11\xd2\x8c\xd4\xcc\x67\xd2\x24\x6d\xb3\x02\x7e\xec\xc7\x8c\xe9\x39\x04\x76\x1c\xc1\x96\x95\xb2\xa7\x19\x1e\x11\x25\xb7\x7a\x0e\x19\xac\x16\x41\x6e\x23\x95\x73\x2b\x21\x05\x66\x39\x55\xe3\x52\x74\xf3\x5b\xd6\xb7\xdf\x93\xbb\xd4\xd7\x99\x49\xe9\x6b\xf1\xbf\xfc\x28\xc1\x68\xbe\x0c\xc5\x36\xdb\xaf\x06\x12\xb3\x5a\x1d\x07\xad\xd7\x61\xa2\x98\xcb\xa0\x1c\x69\xc2\x92\x78\x66\xcf\x08\x9a\xed\x4d\x95\xa8\xad\x17\x11\x65\x2e\xbf\x24\x4d\xb3\x78\x8a\x05\x61\xf2\x05\xc4\x29\x2e\xb2\x9c\x01\x8a\xa4\xce\xa2\x46\xcb\x18\xdc\x82\xbc\x27\x22\x57\x9c\xba\x00\x44\x6f\xe7\xc5\xc2\x37\xaf\x46\x08\xab\xfd\x55\x4f\x4e\x47\x10\xf3\xd2\xc3\x78\xa6\x57\xa6\xa3\x29\xa8\x83\x93\x4b\x2c\x64\x6e\x48\xdb\x78\x14\x6b\x9f\x1f\x92\x46\xa6\x40\x5c\x09\x4a\x99\x0e\x5c\xc5\x61\x41\x03\x21\x44\x83\xf2\xa7\x7e\xb0\x44\xfc\x29\x3f\x4a\x21\xac\xc6\xda\x29\x5a\x87\x82\x58\x2c\x06\xc3\x3a\x4f\xcf\x9a\xf3\x54\xb7\x7f\x5f\xfd\x2f\xb1\x95\xf3\x01\x1b\x2a\x69\xa0\x58\xce\xb5\xc9\x47\x1d\xbd\xfe\x80\xb3\x77\x9f\xff\xca\x82\x73\xe9\xa3\x5a\x06\x64\x08\x97\x4b\x44\x62\x35\x1a\x1f\x4b\x51\xb6\x62\x02\x39\x95\xf7\x5c\xcb\xe7\x9b\x64\x48\x8b\x2a\xcc\x8d\x70\xc5\xa7\x52\xe7\x8f\x51\x7b\xc3\x22\x72\x10\x4d\xe5\x40\x0c\x63\xf7\xae\xda\xd8\x40\x0c\xa1\xf7\x21\x01\xf7\x59\x1b\x52\x19\xb7\x2a\x3b\xd4\xdc\xa5\xb9\x77\x81\x40\x54\xc7\x94\x81\x9e\x56\x59\x16\xe6\x7f\xfb\x57\x3a\x77\x1d\x27\xf3\x29\x96\x77\x49\x14\x2d\x97\x70\xd9\xb2\xf3\x97\xdb\xdc\xb3\x1f\x68\x36\x1e\x61\xf1\xc4\xa0\xd9\x07\xb1\x1b\x3b\x3d\xad\x00\x66\xa9\xf6\xa0\xf3\x45\x4a\x09\x8b\xa5\x8d\xd5\x04\x4b\xff\x9b\xef\x22\x97\xcb\x5e\xc0\xb9\xa7\x86\x5d\x37\xe5\x9c\x60\x31\xba\xb3\xb9\x08\x37\x70\x15\x5f\x00\xff\x1a\x4e\xce\xff\x78\x9e\xd6\x8a\x64\x21\x71\xaa\xe0\x67\x4d\xe6\x7f\x3b\xaf\x28\x42\x57\x1a\x5e\x31\x18\xae\xca\x6c\x53\xe4\xbe\x31\x3c\xa3\x2e\x5e\xa4\x8d\xb8\xa1\x6c\xfc\x64\x88\x83\xc1\xb0\x9e\x86\x64\x46\xd2\x75\x5a\x8e\x26\x47\xd5\xe9\x6c\x1f\x96\x52\xed\x23\x19\x0b\x92\xf3\xec\xbd\xb5\x00\x99\x4c\x2a\xe1\xe4\x67\x5b\x68\x5d\x34\x7f\x30\xcf\x75\x42\x6c\xed\x6d\x59\xae\x98\x49\xc7\xa1\x36\x67\x38\x01\x46\xe8\x9b\x3f\x6a\xd5\x74\x40\xcb\x7a\x16\xa4\xbe\x4c\x06\x72\x08\x57\xab\xbf\x88\xfd\xc2\x48\x2f\xce\xed\x2d\x11\x20\x32\x36\xc4\x08\xb9\xf4\xdf\x0e\xed\x65\x57\xc9\xc8\x06\xbf\xb0\x08\x1a\x80\x8e\xd4\x48\x2f\xbd\xa8\x6a\x6b\x6c\x8a\xf5\x91\x9b\x48\x9f\xbb\x3a\xec\x67\xd7\xfe\xfa\xb2\x4f\xeb\xc7\x48\x9b\x26\x70\x6b\x25\xc8\x69\x90\xcb\xda\x2a\x8a\xab\x8e\x23\x68\xf6\x3e\xbd\xb9\x0f\x45\x93\xfd\x3e\xd8\xce\xf7\x7e\x3b\xdf\xdb\x76\x74\x3c\xc2\x50\x44\xd9\x1f\x82\x6d\xfc\xe0\xb7\xf1\xc3\xb0\x42\x31\xec\x24\xab\x50\x27\x9d\xf4\xce\xcc\xd8\x3c\x88\x8a\x8f\xad\xd1\x4b\x44\xc7\x84\xa5\x5e\x00\x01\x82\xa2\xa4\x80\x7c\xce\x5d\xae\xe2\xa4\x61\xf3\x4c\x65\x11\x27\xd6\x8b\x3e\xe0\xc7\x32\x6f\x39\x0a\x51\xba\xb7\xea\x8c\x92\xcf\xa2\xe8\x19\xb4\x37\x92\x00\xcc\xdd\x33\x1c\xce\x59\x1a\x45\xe5\x5d\x63\x33\xe8\x54\x43\xad\x0b\xdf\xa9\x54\x54\x92\xf3\x18\xa5\x90\x49\xad\x4c\x4c\x07\x22\x55\xec\x85\xed\x20\x83\x73\xa1\x3b\x5f\xda\x84\xc1\x71\xbe\x76\x02\x48\x14\xc6\x60\xbe\x6a\x8e\x08\x2f\x91\xd7\x6f\x70\x99\xcc\xfb\xb5\x2b\xb5\xb1\x1b\xb6\x44\x38\xcb\xc2\xd4\xab\x15\x50\x50\xc9\x55\x0a\x2a\x7a\x03\xf6\x74\xfa\xf8\xe2\xa6\xf7\x7a\x84\x05\xd2\xc5\xe9\x58\x68\x21\x52\x29\x0e\x2a\xf5\x92\x57\x97\x80\x9a\x42\xa7\xb5\x96\xe4\x28\x31\x32\xc3\x92\xfe\xeb\x0b\xa7\x33\x25\x45\x27\xab\x2e\xb1\xc8\xce\x85\x74\x3d\xc9\x64\x93\x56\x5e\xd2\xd1\xbb\x70\x86\xe6\x6f\x4e\x48\xdb\x3a\x21\x79\xbe\xc9\x22\x0d\xa9\x90\x2c\x54\xbf\xd3\x71\x98\xfd\x5b\x22\xfb\xde\xdf\x2b\x5c\x97\x6b\x0b\xab\xe4\xe2\x9d\x86\x26\xe8\x0e\xe7\x1e\xfe\xc9\xea\x83\x90\x84\x05\x24\x1c\x90\xf4\x46\x1d\xd6\x17\xf0\x85\x07\x98\x47\x15\x37\x4b\x1e\x86\xc3\xd5\xd0\x54\x05\x3d\xd0\xe3\xd7\xff\x77\x1e\xf2\x89\xcd\x26\xb7\x34\xde\x1e\x88\x2d\x16\x0d\x17\xee\x4f\x96\x55\x89\x7e\x15\x2e\x35\xb8\x0e\x3a\xd3\x39\x50\x3c\x94\xaa\x84\x88\x99\xbc\x28\x0c\xfa\x1e\x43\xd9\x6f\x10\xfa\x3f\x6b\xfa\x04\x79\xfe\x46\x2b\xf2\xf6\x3c\xd2\xdf\x68\xf4\xcd\xdf\x68\xad\xbf\xd1\x4d\xdd\xdf\xe8\xe6\x53\xfa\x1b\xe5\x01\x7f\xa3\xfc\xeb\xf6\x37\xba\xf1\x6e\xba\x9b\x2f\xdb\xdf\xe8\xf2\x03\x21\x2c\x25\xf1\xa5\xbe\xf6\x7d\x55\xd9\xb4\xa2\xb4\xc9\x00\x2b\x7c\x72\xd2\x11\x60\x9e\x37\x4e\xe9\xad\x1f\x90\x31\xb6\x63\x66\x7a\xe4\xfb\xdd\x3f\xec\x95\xec\xa5\xdd\x11\x08\x90\x54\x56\xbc\x6d\x72\x22\xcf\x15\xd5\x11\x8a\x20\x3a\x85\x2f\x60\xc8\xfa\xb1\x28\xe6\xe5\x41\xbe\x15\xa6\x82\x95\x5d\xb5\x48\x5a\xba\x59\xd8\xbe\x42\x2e\x24\xa5\xa7\x42\x4b\xe7\xfd\x3c\x66\x92\x88\xf7\xd8\x0c\x33\xbe\xa2\xf6\xa7\x93\xed\xdd\xef\x54\x31\xf2\xae\x28\x08\x38\x6d\xc4\x6a\x3c\x00\xaa\x2f\x53\x8e\x43\x83\xde\xf8\x7d\x60\x5e\x6b\xfb\x5e\x2e\x87\x8a\x1f\xf7\x7c\x1b\xd0\x78\xfb\x4f\x4a\x6a\xce\x55\xde\x37\x11\xcd\x6f\xa2\x76\x8f\xa2\xe7\x5a\x1a\xf1\xbf\x8b\x0e\x85\x32\xd8\x34\x8f\x62\x87\x14\xf9\x2b\xcd\x76\xfc\xb3\xe0\xb3\xa9\x06\x76\x36\x1f\xc7\xb6\x39\xa0\x58\xd9\x8c\x48\xd2\x0e\x95\x32\xab\xb0\xe5\x0e\xb9\x92\x76\x1a\xee\x33\x78\x3b\xc1\xcd\x70\xc3\x6e\xa8\xb6\x93\x12\x4f\x69\x5b\xed\xe1\x96\xd8\x61\x76\x3a\x60\xd5\xab\x40\x34\x60\xe9\xf4\x45\xaa\x74\xbd\x4d\xf5\x87\x49\x2c\x5a\x7d\x51\x4e\xe4\x76\xcd\x44\x6a\xae\x43\xae\x72\x51\x97\xe6\x07\x19\x7d\xbf\xb1\x9e\x2d\x56\xae\x9d\xc4\x41\xb7\xa3\x4a\x69\xc5\x56\x39\x6c\xb9\xf7\xf5\x00\xd4\x79\x5c\xd5\x81\x7d\x4d\x73\x49\x18\x51\x04\xdb\x1c\x59\xb7\x08\xeb\x9c\xb0\x6c\xdf\x2b\x8e\xb7\xe4\xd3\xcd\xe3\xea\xad\x18\x97\x11\x96\x3f\x66\x68\xaa\xf7\xf0\xc8\xf0\x48\xd2\xf7\xe4\x90\xcf\x58\x68\xe1\xfc\xd5\x6e\x2e\x57\x59\xb5\xb9\x7f\x6d\xb1\xd5\x1e\x7b\xb7\xea\x75\x4a\xea\xdb\x65\x55\xbd\x9a\x0d\xa9\xd8\xe4\xb7\xf6\xd8\x16\x8f\x1f\x70\xac\xb5\x11\xf4\xde\x11\x4e\x33\xa0\xe0\xc1\xf6\x4b\x34\x49\x5d\xab\xb8\xd1\xc6\x9a\xc0\x4d\xd2\x39\xc1\x39\x39\x9d\xd5\x45\x2b\xcf\xe2\x47\x76\x53\x81\xd8\x77\xa0\xdb\x25\xdf\x91\xef\xc8\xf3\x1e\x7c\x2e\x97\x4b\x74\x9f\x4e\xd1\xf5\x03\x08\x27\x72\x91\x6a\x10\x7e\xac\xea\xae\xb7\x8f\xb2\xc7\xaa\xeb\x26\xb1\x9d\x68\x80\x72\xd3\x26\xe5\x7e\xa3\x4d\xd8\x20\x33\xf0\x64\xc5\x55\x4c\x73\x75\xbb\xea\x5f\xc6\xd2\xa0\x88\xba\xfe\xf9\x27\x81\x27\xda\xc5\x00\x51\x43\x7f\x68\x7c\xc3\xc5\x07\x2c\xc6\x39\xa2\x0f\xa7\xfa\xe3\x92\x84\x17\x3b\x4e\xf2\x50\xda\x42\x24\xca\x94\xc8\x75\xf5\x51\xd3\x4e\xc7\xe0\x5c\xc9\x75\x5d\x6d\x35\x5f\x42\x88\xd4\x96\x2a\xdb\x89\xa7\x19\xd6\x5d\x56\x2f\x06\xc5\x63\x8d\x48\x1e\xf2\x81\xf5\x54\x58\x95\xce\xf5\x06\x9c\xaa\x15\x5b\xe1\xab\x64\x84\x4f\xe2\x5c\x83\x01\x89\xaf\x46\x33\x21\x08\x93\x37\x6a\x29\x11\x51\xd7\xb5\xe6\x36\xb5\x3f\xce\x40\x0e\xd5\x23\xdd\xa2\xfd\x5b\x72\x89\x33\x5d\x38\x87\xad\x32\x2f\xbb\x7a\x63\xad\x40\x8a\x71\x86\xe5\x02\xba\x0f\xb2\x92\xb2\xf9\x03\xf8\xd1\xdd\x20\x65\x2f\xfd\x72\x5a\xda\xd1\xc6\x9d\x33\xbf\xda\xf3\xd4\xb1\x1a\x23\xa1\xf3\x56\xc1\x04\x34\x4b\x35\xdb\xae\x91\x52\x00\x63\x45\x05\x81\x37\xfa\x6b\x3c\x7a\xb7\xfd\xf0\xbb\xf5\x71\x04\xc6\xfa\x53\xba\xd7\xaf\xcd\xc8\x0e\x56\xcc\x2c\xc0\xa9\xd8\xc3\x81\x39\xd4\xc9\x7f\x60\xcc\xb7\x5c\xf2\x03\x36\x3e\xcb\x70\x90\xb5\x69\xa8\x3f\x6b\xc4\xd2\xdf\x00\x05\x2f\xe0\x3f\x4c\xe7\x4b\xf4\xb0\x6d\xd7\xdc\x56\x69\xb1\x61\x06\x72\xa8\xc5\x42\x01\x6e\x40\x25\x7c\x5d\x75\x1e\x46\xde\x0b\xe7\x54\xf5\x6f\x15\xdd\xe6\xea\x0b\xc5\xf4\x59\xbb\x51\xc2\x75\xea\xec\x87\x2e\xe5\xf7\xa5\x49\x53\xa8\xab\x4a\x3d\xbd\x2e\xce\xf2\xe8\xd5\x7e\x63\x23\x42\xad\x1a\xa9\x73\xde\x77\x57\x89\x37\x2e\x0f\x31\x00\xe7\xdc\x05\x08\x5b\xb3\x5b\x34\x97\x6f\xb7\x24\xe8\xc1\x92\x32\x12\x47\x6c\x68\x7e\x20\x2f\x56\x30\x46\x95\xe9\x54\x4f\x6b\xcf\x67\xc6\xe4\x51\xc0\x57\x7e\x4d\xf5\x9f\x9a\x07\xb2\xe4\x38\x6a\x5c\xd6\xaa\x8d\x5c\xfa\x42\xd4\x8f\x45\x93\x53\x0b\x65\xde\xaf\xe6\xa9\xfd\xe8\x2e\x03\xcd\xac\xeb\x75\x05\xc7\x57\x61\xa8\xcc\x21\xb8\x50\x67\xbc\xb9\x84\x65\x53\xd3\xf0\x69\x0f\x34\xa5\xce\xd3\xda\xa6\x56\x31\xc8\x8f\x69\xcb\x1b\xfe\xea\xad\x5e\xd9\xb2\x15\xaf\x7b\x6f\x71\x0b\x73\x71\x6c\x59\x61\x00\x3b\x1d\x69\x89\x5f\xf5\x74\xad\x23\x80\x1f\xdd\xe9\x62\x21\x0d\xea\xaa\xd1\xab\xab\xb6\x35\x5b\x2a\x9b\xf2\x16\x31\xa0\xbb\xb1\x65\x88\x90\xff\xc6\xa7\x1e\x86\xf3\xd9\x48\x7c\xbc\xa3\x15\x20\x41\x05\x4d\xd8\xd8\x4e\x71\xa1\x15\xad\x0c\x21\x22\x4b\xa0\x83\xfb\x19\x8d\xcd\xf5\x7a\x1b\x8e\xcc\x48\xcd\x82\x85\x22\xa2\xd8\x87\xee\x28\xa3\x5d\x63\xef\xec\xba\x5c\x64\xb5\x4a\x0d\x0b\xce\x83\xd5\x4a\x2b\x2b\x58\xf6\x3c\x42\xf3\xaa\x9b\x44\xc5\xe4\xe1\xa9\x43\x6c\xf9\xa5\x86\x4a\xac\x9e\x2e\x9f\xf0\x5b\x81\xa7\x77\x9f\xc1\x9b\xac\x01\x5e\x2a\xad\x33\x7f\x74\xff\x21\x9e\x76\xcb\x1f\x34\x1d\x0c\x5b\x2c\x70\x53\x63\x13\xac\x37\x4d\x71\x7c\xc2\xc7\xc4\xa5\xb2\xc0\xf1\x05\xb9\x55\x1f\x3f\x58\xc9\xe8\xfd\x4d\x8d\x9d\x54\xea\x7f\xd5\xc1\xb4\x75\xd2\x34\x2b\xd8\x4e\x80\xb5\x4d\xc7\x38\xc5\xce\x19\x1f\x93\xc4\x94\x47\x63\x6a\xec\x2d\x09\x43\xb9\xa9\x97\x64\x4b\x88\xd8\x8f\x06\x0e\xcc\x20\x62\x3f\x71\x0d\x54\x63\xc6\x58\x48\xe3\x9c\x0b\xb9\x12\xec\xe2\xda\xeb\xca\xe2\x4f\x6b\x66\x6c\x39\x4f\x5e\x67\xa0\x45\xb3\xf4\x0d\x96\x77\xf1\x4d\xc6\xb9\x00\xd9\xee\x7e\x99\x29\xe6\xa7\xbd\x3e\x4e\xb3\xff\xd8\xef\xd3\xc1\x6c\x58\x34\x94\x00\x3a\x98\x75\x7b\xe5\x83\xe7\x95\xd7\x70\x77\x3f\x01\x58\xc3\x67\xf7\x10\x4f\xf7\x20\x9a\xbb\x57\x79\x42\xd1\x84\xb2\x44\x63\x17\x8e\xd5\x55\xbc\xb7\xf7\x9d\x80\xbb\xbd\xbd\x3d\x34\x21\x63\x8a\x6b\xaf\xb0\x7d\x85\x7f\xad\x3e\xe7\xfa\xf9\x06\xb3\xf1\x6c\x74\x43\x45\xfe\xd9\xdc\x98\x3c\x1c\x44\xe9\x66\xd0\x83\xb1\xe4\x6f\xa7\xd3\x22\x43\x64\xa3\x4c\x6f\x83\xf1\x77\x36\x1d\x63\x49\x0c\x0a\xba\x6b\x55\xee\x9f\xdc\x19\xcf\x0a\xe1\x65\x3e\x7a\xd1\xf7\x32\xca\x23\x06\x13\x61\x63\x33\x13\x0d\x5c\xd2\x7e\x16\x41\x64\x95\x0f\x19\x64\x50\xb5\xb4\x84\x36\x97\xbc\xda\xce\xd2\x37\x34\x9a\xb2\x66\x0a\xda\x0a\xd3\xe9\x94\xf2\x95\x44\x2e\x5c\x4d\x84\x48\x6c\x16\xe2\x40\x02\xae\x13\xdc\x5a\x07\x07\xc0\x51\x0f\x0d\xe4\xb0\x84\x45\xc8\x15\x6b\xab\x11\xea\x1a\x79\x9c\xef\xe2\x51\x16\xa4\xca\x2e\x2d\x7d\xd7\x2f\x6c\xff\xe6\x22\x7f\x02\xa2\x1c\x8c\x2d\xc6\xd2\xb9\xf6\xdf\x1b\x80\x3d\x24\x63\xdb\x1f\x39\x13\x24\x27\xea\x70\x81\x9d\x3d\x88\x2a\xaf\x5e\x1b\x98\x05\x98\xab\x93\xd5\x5b\xc2\x21\xba\xbc\x9f\x92\x64\x75\xf5\xa5\x17\x51\x87\x6d\x5e\x1f\xaa\x57\x9d\x72\xd6\x9d\x12\x31\xa1\xda\x42\xd9\xbd\x93\x72\x6a\x33\xbc\x3d\x6a\xf1\x9a\x05\x47\x9c\x8d\x8d\x53\x49\xb6\xa2\xd2\x6e\xce\x27\x44\x52\x75\xed\xd7\xd6\x5e\x51\xfc\x8f\x5f\xfd\x35\x39\xdf\x36\x7e\x92\x21\x32\x28\x1e\xb0\x87\x0a\xdd\x18\x04\x6b\x2b\x34\xad\x0d\x91\x29\x61\x02\xfd\x5b\x46\x0c\x44\xc6\x87\x5d\x47\xd9\x5d\xe7\xde\xb6\xe9\x93\xfd\x96\x3f\x53\xe9\x0f\x1b\x7d\x17\x3d\xf6\x1b\x94\x7a\x01\xbb\xee\x97\x97\x67\xb1\x11\x52\xf3\x08\x2e\x16\x83\x21\x92\xf5\xd7\xe6\xdb\xd8\xb7\xac\xfe\xf6\x0c\xcb\x3b\xf3\xdd\x16\x8b\xe8\x84\xab\x9f\x11\x12\xa1\x52\xba\x84\xf3\xdc\xde\x19\xec\xe9\xb4\xb7\xf6\x7a\xd6\x9e\x00\xee\x87\x6b\x66\x27\x4d\x99\x05\xcd\x8a\x61\x4c\xd9\x28\x9b\x8d\x49\xae\x4f\x37\x84\xe8\x40\xcf\xa9\xb6\x5f\x8f\x55\x21\xb5\x13\x20\x98\x53\x96\x90\x41\x14\xdc\x26\xc3\xd8\xd4\x8e\x71\x96\xf1\x0f\x64\xac\xf7\x75\xae\xc8\x8a\x1a\x6d\x32\x57\xdd\xaf\x5d\xe2\x3f\x71\x31\xc1\x12\x82\xb9\x20\xb7\xe4\xd7\x64\xf7\xff\x7e\xd9\xdd\x5d\x6e\xb3\xd6\xe5\x72\x35\x72\x15\x91\x4e\xc7\x9b\xb9\x61\x65\x1e\x72\x0e\x7e\x33\x9b\xdf\xf0\xb5\x4f\xb9\xcd\x0f\x2c\xa0\x44\x6d\xc0\xca\x06\x3f\x2b\xf6\x84\xdd\xfe\x2e\xae\x44\x64\x3c\x87\x8c\xdf\x83\xd9\x97\xea\x53\x5c\xe8\xdc\xfc\x1f\x7b\x77\xbd\x24\xb9\xa4\x4c\xaf\xeb\xc7\x36\xe5\x4d\x40\x37\xb3\x72\xb5\x9a\x55\x9b\xb4\x79\xa7\xb9\x62\x4b\x08\x87\xfe\x5d\x2a\x36\x6f\xc8\x77\xef\xbf\x30\x56\xe3\x2f\xe4\xfe\x23\x96\xf8\x81\x9c\x84\x71\xbe\xfa\xc2\x56\x40\xef\xb2\xf5\x04\x6c\x80\xbb\xff\x3a\xe8\xfe\x7d\xaf\xfb\xc7\x21\x28\xff\xee\x0e\xe7\x7b\xe8\x0f\xfb\x4b\xef\x2d\xec\xff\xbf\xdd\xe5\x43\xf9\xab\x29\xcf\xe8\xe8\xfe\x2b\x5c\x95\x83\xee\xdf\x71\xf7\x5f\x7b\xdd\x3f\xfe\xd2\xbd\x1a\xce\x7b\xa8\xb7\xff\x5f\xcb\x47\xcc\x5f\xf0\xec\x6b\xdc\x13\xf5\xd9\xef\xff\xe7\x1f\x1e\x33\x7b\xa9\x33\x35\x7f\x12\x89\xae\xc1\x2f\xcd\x57\x5c\x99\x06\xff\xb7\x4b\xd8\x7b\x2a\x38\x33\xfa\xb0\x1a\x70\x4d\x8a\x7b\x7b\x73\x6c\xa8\x27\xd3\x31\x1f\x69\x35\x6f\xac\x53\xc1\x5e\x90\x8c\x8c\x24\x17\xe0\xd9\x84\x48\x3c\x60\x78\x42\xd2\xe8\xd9\x73\xf2\xfc\x59\x34\x7c\x06\x75\xe4\x3a\x29\x05\xbd\x9e\x49\x33\x24\x2d\xe1\x41\xc4\xd2\xb9\x1d\xb5\xe7\xed\x00\xc6\x64\xc4\xc7\xe4\xed\xf9\xf1\x21\x9f\x4c\x39\x23\x4c\xea\xf4\x68\x35\x18\x7b\x6d\xad\xd8\xea\xb5\x62\xa5\xa3\x5a\x09\x47\x33\x28\xb4\x67\x87\x7c\x96\x8d\xdb\x8c\xcb\xb6\xf6\x5d\x36\x73\x6d\xdf\x08\x3e\x69\xab\x99\xb4\x25\xbe\x6d\x7f\xa0\xf2\xae\xad\xa6\xd4\xb6\x53\x8a\x9f\x19\x69\x5e\xcc\x18\xa3\xec\xf6\x92\xe4\x32\x5f\x2c\x04\xf9\xe7\x8c\x8a\xca\x92\xe3\xe9\x34\x82\xee\xc3\x38\xe0\xe6\x5c\x35\x95\x94\xa5\x22\xf4\x9e\x08\x75\x7f\x25\xd1\x7e\xbc\x1f\xef\x3d\x1f\xff\xb1\xf7\x3d\xbe\xd9\xbf\x8e\x96\xb0\xf5\xff\x03\x00\x00\xff\xff\x41\xc3\x23\xc7\x1f\x0c\x18\x00") -func web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCssBytes() ([]byte, error) { +func web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCss, - "web_ui/assets/consul-ui-a71586e1e32d7a2cb324d8dc3082a4eb.css", + _web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJs, + "web_ui/assets/consul-ui-a4c27f15cfda80a598a26c3f3da0342a.js", ) } -func web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCss() (*asset, error) { - bytes, err := web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCssBytes() +func web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJs() (*asset, error) { + bytes, err := web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-a71586e1e32d7a2cb324d8dc3082a4eb.css", size: 312297, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-ui-a4c27f15cfda80a598a26c3f3da0342a.js", size: 1575967, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -465,7 +465,7 @@ func web_uiAssetsCssEscape851839b3ea1d0b4eb4c7089446df5e9fJs() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js", size: 753, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js", size: 753, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -485,7 +485,7 @@ func web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", size: 18615, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", size: 18615, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -505,7 +505,7 @@ func web_uiAssetsEncodingIndexes75eea16b259716db4fd162ee283d2ae5Js() (*asset, er return nil, err } - info := bindataFileInfo{name: "web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js", size: 529734, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js", size: 529734, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -525,7 +525,7 @@ func web_uiAssetsFavicon12808e1368e84f412f6ad30279d849b1df9Png() (*asset, error) return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-128-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-128-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -545,7 +545,7 @@ func web_uiAssetsFavicon16x16672c31374646b24b235b9511857cdadePng() (*asset, erro return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-16x16-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-16x16-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -565,7 +565,7 @@ func web_uiAssetsFavicon196x19657be5a82d3da06c261f9e4eb972a8a3aPng() (*asset, er return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-196x196-57be5a82d3da06c261f9e4eb972a8a3a.png", size: 37174, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-196x196-57be5a82d3da06c261f9e4eb972a8a3a.png", size: 37174, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -585,7 +585,7 @@ func web_uiAssetsFavicon32x32646753a205c6a6db7f93d0d1ba30bd93Png() (*asset, erro return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-32x32-646753a205c6a6db7f93d0d1ba30bd93.png", size: 2075, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-32x32-646753a205c6a6db7f93d0d1ba30bd93.png", size: 2075, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -605,7 +605,7 @@ func web_uiAssetsFavicon672c31374646b24b235b9511857cdadePng() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -625,7 +625,7 @@ func web_uiAssetsFavicon96x966f8f8393df02b51582417746da41b274Png() (*asset, erro return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon-96x96-6f8f8393df02b51582417746da41b274.png", size: 10171, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-96x96-6f8f8393df02b51582417746da41b274.png", size: 10171, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -645,7 +645,7 @@ func web_uiAssetsFaviconIco() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/favicon.ico", size: 34494, mode: os.FileMode(420), modTime: time.Unix(1603125142, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon.ico", size: 34494, mode: os.FileMode(420), modTime: time.Unix(1605811293, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -665,7 +665,7 @@ func web_uiAssetsLoadingCylonPinkSvg() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/loading-cylon-pink.svg", size: 983, mode: os.FileMode(420), modTime: time.Unix(1603125142, 0)} + info := bindataFileInfo{name: "web_ui/assets/loading-cylon-pink.svg", size: 983, mode: os.FileMode(420), modTime: time.Unix(1605811293, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -685,27 +685,27 @@ func web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js() (*as return nil, err } - info := bindataFileInfo{name: "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js", size: 632, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js", size: 632, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJs = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x5a\x6f\x6f\xdb\xb6\xf6\x7e\xef\x4f\xa1\x12\xf9\xb9\x64\xcd\x29\x76\xba\xf6\xb7\xba\xd1\x0c\x2c\xeb\xba\x5d\x6c\x6d\xae\xe3\x01\x03\x0c\x43\xa1\xe5\x13\x9b\xab\x4c\xb9\x24\x95\x38\x70\x74\x3f\xfb\x05\xa9\x3f\x96\x64\x39\xf6\xba\x0c\xdb\x7d\x63\xd8\xd2\xc3\x73\xc8\xe7\x3c\x3c\x3c\x24\x8d\x6f\x62\x11\x68\x1e\x09\x4c\x36\xb7\x4c\x3a\xe0\x6d\xa2\x95\xf9\xad\xfa\x9b\x84\x72\xc1\x75\xbf\x40\x00\xd9\xe8\x05\x57\x6e\x06\xf0\x20\xa1\x0a\xe4\x2d\x0f\x60\x08\x01\x08\x7d\x15\x2f\x97\x4c\xde\x5f\x81\xe4\xa0\x4a\xcd\xa8\xa6\x32\xb5\xae\xbc\xf1\x84\x0a\xf3\xc1\x3c\x2c\xe0\xce\xf9\x9e\x69\x20\xee\x1c\xf4\x88\x2f\x01\x93\xd3\x1e\xbc\x6c\x49\xd0\xb1\x14\x8e\x74\x95\x66\x52\x7b\xec\xab\x37\xdd\x2e\x95\x2e\x88\x99\xc7\xa8\xed\xc0\x82\xa9\x9f\xff\xff\x17\xd0\x92\x07\x0a\x6b\x32\xc0\xca\x5d\xc5\x6a\x81\xed\xcb\x1b\xd0\xc1\x62\x08\x9f\x63\x50\x7a\xc8\x34\xa4\xdd\xc1\x40\x25\x21\x54\xa4\x40\x94\xbd\x57\xce\x0a\xa4\xa3\x20\x88\xc4\x0c\x11\xba\x63\xe6\x9d\x94\x91\xdc\x6b\xc4\xbe\xad\x9a\x20\xfd\xdd\xbe\x5c\x65\x1c\xad\x1b\x8d\x7c\xcf\x34\x73\x24\xd3\xe0\x48\x08\x80\xdf\x42\x63\x47\x32\x1b\xa3\x43\x36\xb4\x64\x42\x2d\xb9\xd6\xc6\x0c\xa1\x97\x32\x5a\x72\x05\x2e\x0b\xc3\x2b\xd0\x3a\x84\x19\x56\xc4\xd5\x0b\x10\x18\x97\xc3\x7a\x13\x49\x6c\xe2\xa3\xbd\x8d\x4a\xa3\x37\x9e\x24\x54\x7a\xdd\xb7\xf2\x5c\xb9\x21\x88\xb9\x5e\xbc\x95\x9d\x0e\x81\xb1\x9c\xb8\xb7\x2c\x8c\x61\xa0\xdd\x14\x9a\xf6\x61\x13\xb2\x29\x84\x7d\x31\x96\x13\x3a\x63\x9a\xf5\xb7\xc8\x84\xa4\x3f\x24\x30\x15\x89\x76\x3b\x88\x84\x8a\x42\x70\xc3\x68\x8e\xd1\xbb\xe1\xf0\xe3\xd0\x59\xc9\x28\x00\xa5\xb8\x98\x3b\xa9\x51\x44\xad\xa5\x52\x3b\x92\xeb\x42\x27\x84\xec\x11\x9e\x66\x7a\xbf\xee\x8a\xf6\x47\x2a\xe8\xf2\x0a\x03\x45\x99\x1f\x64\xf9\xde\xd5\xc7\xf0\x30\xe6\x12\xa4\xe9\x23\x0f\x01\xbf\xea\xd2\x3f\x02\x7f\xf3\xa6\x0e\x6f\x92\xd7\x45\x24\x84\x91\xe8\xe1\x9e\x14\x42\x3c\x1a\x3a\x3a\x1e\xfa\x21\x1a\x46\xf1\x6e\x2f\x08\x2d\x21\x4d\x7c\xb0\x22\x09\x8d\x57\x4a\x4b\x60\xcb\x23\xc2\x57\x8e\x5a\x36\xb5\xeb\x6d\x8c\xcf\xdc\xa2\x71\x9a\xd0\x59\x74\x27\x8e\xf2\x70\xb4\xfd\xad\x45\x44\x35\x49\xe8\x1e\xe8\x41\xf5\xed\xd1\x99\x7e\x44\x5f\x7b\xde\xd5\x75\x75\x18\x66\xf5\xb4\x07\x56\x52\xd1\x1e\x44\x59\x3d\x8f\x43\x46\x87\x21\x5b\xb5\xa4\xb8\x9a\x48\xde\xcb\x28\x5e\xd9\x64\x95\xd0\xf2\x54\xad\xac\x45\x29\xa3\x68\xa1\xf5\x0a\x79\x9e\x07\x0f\x0f\xf6\xfb\x59\xfe\x63\x2e\x57\x81\xfd\x9e\x45\xab\x1e\xa0\x22\xf6\x0d\x59\x12\x76\xb2\xa4\xde\x66\x49\xe9\x6d\x94\xb5\x65\x92\xa4\xf2\xba\x6f\xd5\x39\xe4\x49\x52\x75\x3a\x44\x8f\x55\x9e\x24\xed\x22\xa6\x73\x16\x8a\xe7\xa4\x6f\xbf\x1f\x99\x11\x35\xd3\x88\x96\x1a\x14\xa9\x50\xda\x54\xb8\x43\xdb\x93\x8e\x71\x93\x34\x8e\x91\xdf\x94\x87\x93\xb7\x12\x0e\x17\x4e\xe9\xf9\xf6\xab\xc9\xb8\x1f\xef\xc4\xa5\x8c\x56\x20\xf5\x3d\x16\xa4\xdd\xc6\x19\x3b\x63\x31\x79\x78\x28\xfd\xf0\xc6\x13\x42\xb7\x3f\xeb\xe4\x8d\xc5\x84\x90\x16\x84\x0a\x9c\x27\x64\x51\xc2\x4d\x24\x97\x4c\xef\x54\x2f\x39\x85\xcf\xe0\xe1\xe1\x19\xb8\x66\x71\x2b\xbe\xb8\x12\x54\x1c\xea\x87\x87\xca\xcf\x8c\xa7\xf3\xde\x60\x3c\xe9\x57\xde\x8c\xbb\xd9\x18\x94\xbb\x64\xab\xea\x1a\x9c\x7a\x19\xe7\x55\x11\xee\xc1\xcb\x17\x30\xee\x4e\x08\x5d\x31\xa9\xe0\x87\x30\x62\x1a\xc3\xb8\x37\x21\x93\x6d\xd8\x77\xea\x9c\x5a\x76\x4b\x43\x79\xad\xe2\x25\xe6\xd2\x4e\x6f\x71\x1b\xdd\xfb\x21\x57\x1a\x04\x48\xdf\x4c\x18\x7f\x9b\xdb\x7c\xf9\xd9\x5f\xaf\x37\x61\x14\xb0\xd0\x0f\xc2\x58\x69\x90\x1e\x3a\xd9\x40\x82\x68\xda\xd2\x36\x08\x22\x21\xfc\x25\x13\x6c\x0e\xd2\x5f\x49\xb8\xe1\x6b\x0f\xad\xe2\x69\xc8\x83\xaa\x69\x94\x8c\x7b\xdd\xe5\x84\x90\xeb\xd6\x4e\x9e\xcd\x2a\x19\x49\x75\xa6\x43\xfb\xaa\x1a\x06\xda\xc0\x90\xb3\x1b\xe7\xbe\x73\xc3\x78\x08\x33\x47\x47\x8e\xb5\xed\xc8\x2d\x2f\x88\x82\x61\x7f\x15\x09\x05\x23\x58\x6b\x42\xc7\x25\x02\x6b\x15\xde\x3f\x8c\xbe\xac\x55\xde\x7d\x3f\x88\x66\xe0\x07\x21\x53\xca\x43\xaf\xfe\x36\x72\x21\xe7\xec\x71\x6a\x6b\x75\x6f\x33\xb5\xdf\x38\x2f\x9c\x3a\xbd\x3a\xa8\x90\x1a\xac\x7d\xb9\xf6\xa7\xf7\x1a\x94\xaf\x23\xcd\xc2\x66\x82\x9d\x6d\xe3\x7d\x9c\xea\xe0\x6f\x54\xe4\xda\x99\xe5\x65\xfa\x51\xbc\x8d\x9e\x80\x37\xfd\xbf\xcf\x9b\x3e\x86\xb7\x25\xfb\x04\x57\xf1\xf4\x77\x08\x74\x63\x79\xb7\x2d\x0f\x3d\x4f\x0f\xa0\x83\x9c\xb6\x64\x52\xbe\x75\x36\x9b\xf7\xc3\x8f\xbf\x5e\x26\x09\xea\x97\x4b\x3c\x83\x42\xc5\xbb\x1c\x8c\x3a\xd0\x87\xd4\xd9\x8f\xa3\xd1\xe5\x15\x84\x10\xe8\x48\xd6\x3c\xf2\x1b\x5c\x33\x45\xd2\x4e\x5c\x9b\xe1\xc6\xa1\x9f\x95\xc7\x19\xff\xd7\xad\x2c\xa2\x4d\xc1\x29\xc8\x96\x1d\xaf\x3a\x86\xe7\x87\x12\xca\x7f\x0a\xbc\xef\xbe\x40\xcf\xfb\x07\x1b\x34\x67\xa0\xe7\xe9\x78\x47\x17\xff\x8c\xe1\x96\x54\xba\x6f\x80\x87\x84\xfc\x3c\xa1\x73\x53\x27\xfd\x3b\x06\x79\x6f\xe2\x78\x50\x31\x30\xc0\xba\xe3\x21\x67\x7a\xef\xe0\xc7\x49\x24\x88\x6a\xcf\xaa\x7f\xbb\xc3\xb1\x1b\xe3\xc2\x19\xd6\x84\xd4\xa4\x06\xed\xf6\xd6\x7e\x85\x96\xad\xb9\xf2\x86\x66\x6b\xd0\x18\xa3\xba\x3c\x9e\xd1\xc5\x97\x0c\x67\x4b\xd9\xe3\x03\x18\x5d\xfc\x35\xfd\xdf\x47\x56\x43\x15\x76\x6d\x11\xbe\x84\x55\xc8\x02\xc0\x46\x36\xd4\x29\xed\xfe\x1c\x74\xd2\x33\x9f\x8f\xc7\x09\x95\xda\xf8\xd8\x7d\x41\x52\xb1\x93\xeb\xe6\xbe\x54\x59\xfd\xb2\xae\x6c\x39\xde\x75\x6e\x64\x69\x7c\x37\xb3\x74\xb4\xeb\xf2\x1e\x35\x77\x5e\x89\x87\x79\x60\x1c\x5a\x67\x56\x34\xdf\x35\x59\x2f\x36\xf0\xcf\x4c\x6c\x4d\xc6\xb3\xbb\xaf\x4b\xdb\xfb\x3d\x71\xa9\x49\x62\x90\x8d\x3a\x73\xec\x17\xe3\x95\x9f\x51\xbf\x1c\x9c\x4a\xf1\x84\xaa\xae\x9a\x69\x3f\xd6\x53\xb0\x2e\x3c\xed\x2c\x8c\x28\x2f\x9f\x2f\xaf\xca\xd3\xa5\xd8\xaf\x5b\xcd\xd6\xf3\xbc\x05\x50\xb1\x7d\x99\xad\x38\xe9\x73\x96\x96\x89\x76\x39\x3e\x49\xcf\x49\xeb\xb4\x61\x49\x12\x3f\x88\x96\xab\x10\x34\xcc\x36\x27\x1b\x95\x24\xe3\xde\xab\x7d\xab\xaa\x66\x3a\x5d\x49\xab\xe9\x0a\x4b\xca\x08\x45\xc3\xcb\x2b\x44\xaf\xcf\xa7\xdf\x9e\x6c\x44\x72\x7e\x3a\xfd\x36\xaf\x79\xd3\x83\x40\x76\x0b\x92\xcd\x61\xe6\x44\xb7\x20\x1d\xbd\x00\x27\x64\x4a\x3b\xbd\x57\xce\x92\x8b\x58\x83\xba\xa6\x9a\x6e\xad\x7f\x77\x8f\xe5\xb6\x26\x1e\x3e\x1d\x29\x08\xb5\xca\xb9\x47\x0e\xd8\xb1\x99\xb4\x96\x65\x64\xbb\x8d\xd9\x9e\x2c\x43\xec\xa2\xc2\xbd\x7d\xac\xd3\xb8\x12\x1c\x9e\x98\x2a\xdd\xd0\x7f\xb0\xbe\xb6\xc1\x39\xd9\xb0\xe4\xb4\xb1\x7d\x19\x91\x87\xb0\x3a\xdc\xf8\xc0\x72\x10\xd7\xb3\xa9\x19\x67\xfc\x68\xd2\x8c\x77\xce\x4b\x70\x4c\xd1\xbb\x21\xa2\xd7\xd9\x61\x0f\x9b\x83\x13\xdd\x38\x0d\xe2\x50\xce\xdd\x82\x07\x0b\xe7\x0e\x24\x38\xaf\xd6\x6b\xbb\x2d\x8e\xd5\x23\x2a\x69\xaa\xdb\x34\x06\xd2\x41\xff\x87\x12\xb2\x4f\x42\xdb\x53\xa7\xea\x89\x98\x4a\xc5\x24\xf6\x88\xc9\x00\x28\xdb\x15\x93\x7d\xce\x3d\x14\x42\x55\x4e\x6a\xc0\x3b\xde\xa1\xbd\x55\x5d\x49\xaa\xdd\xc6\xb6\x59\x35\x37\xa6\x22\x8a\xbd\xeb\x05\x57\x3a\x9a\x4b\xb6\xf4\x3f\xc7\x2c\x3d\x39\x3b\xd9\xc0\x69\xaf\xdb\x4d\xa8\xa9\xb9\x9d\xe9\xbd\x15\x01\x71\x1e\x9f\xed\x8a\x24\xbe\xe6\x4b\xf0\xa7\x71\xf0\x09\xf4\xc6\xc4\x22\x17\x0c\x69\x52\x8b\xfa\xe3\x6a\x51\x5f\xa8\x96\x4b\xd4\x81\x2c\x7b\xb0\x54\x20\x66\x0d\xd1\x0b\x67\x55\x04\xae\xc8\x27\xd9\x6a\xe0\x98\xb1\x3c\x22\x14\x59\xd5\x82\x2a\xb4\x90\x1f\x2d\x3e\x9e\x54\x4a\x15\xe6\x9f\x4a\xb4\xa6\x46\x31\x79\x36\xdd\xf1\x7c\x41\x8e\xb5\x06\x6c\x8a\xbd\x18\xd6\x32\x2c\x17\xd3\x28\x16\x33\x67\x74\x71\x69\xf6\x2e\x02\xec\x70\xca\x37\x40\x7f\x2a\xef\x16\x1b\xe6\xa7\x63\x2a\xdf\x26\x1e\x62\xab\xb6\xc1\xfe\x53\xb4\x0d\x7f\xdb\x59\x98\xd2\x8b\x2d\x67\xca\xf5\x53\x93\x35\xfa\x1b\xc8\xd2\x4f\x48\xd6\xa8\x4e\x56\xe9\x06\xef\xaf\xe0\x2b\x3b\x78\x7f\x32\xd2\x90\x2f\x22\x5f\x1a\x93\xa8\xd5\xb0\x60\x7b\xc8\xcf\x26\x8a\x6f\x36\xf6\xc5\x4a\x7d\xcc\x14\x36\xa9\xe9\xcb\xc9\xe5\x84\xa2\x0f\xf5\x09\x1c\x0b\xd3\x55\x36\x0d\xc1\xc1\xe9\x41\x03\xf9\x4b\x26\xb2\x66\xba\x76\x13\x44\x15\x15\x64\x23\x1e\x1e\x30\x98\x22\xe6\xe3\xd0\x89\x04\x26\xce\x6d\x4a\x72\x37\xaf\x61\x98\xb7\xf9\x6c\x6b\x7e\xa0\x26\xdd\xf6\xf7\x5d\x92\x27\xd5\xdb\x4c\xad\x57\xef\x41\x63\x74\xca\x56\xfc\xf4\xb6\x77\x6a\x6d\x20\xca\x9a\xee\x7a\xf9\x0d\x7e\x26\xd2\x90\x33\xaf\x7c\xb4\xdc\x78\x50\x3d\xee\x4d\xf2\x83\xf2\xec\x8a\x57\xd3\x19\xa8\xa0\x2f\xa9\x7d\xdf\x57\x98\x91\x24\xc9\x2f\x00\xb8\xb7\x49\x68\xec\x75\xdf\xc6\xe7\x4d\x47\xe2\x6f\xe3\x4e\x27\x75\x1d\x79\x55\x7f\xf1\x84\x06\x1e\xae\x74\x28\xda\xf6\x80\x46\x99\x40\xc6\x62\x42\x5a\x7c\x1c\x4c\xbc\x5a\x6f\xdc\x7c\x2f\xb4\x3d\xb6\x41\x34\x20\x95\x4e\x66\x94\xf1\x84\x7c\xf1\x69\x54\x76\x8b\xb0\x73\x0e\xb5\x49\x2a\xe7\x77\xfb\x8e\xed\x8a\xe0\xda\xbf\x36\xf4\x75\xfa\x17\x07\x0a\x62\xd6\xd7\x2e\x88\x19\x55\x1a\x56\x7d\xd4\xeb\x2a\x64\xe3\x1f\xc5\xba\x8f\xbe\x51\xe8\x98\x70\xfb\x92\x89\x39\xa4\xf7\x9f\x19\xa2\xb1\x0f\x46\x51\xbf\xfd\xf2\xf3\x8f\x5a\xaf\xb2\xdb\x03\x9a\x4e\xfd\xdc\x87\x01\x64\xd7\x45\x25\xe5\x08\xca\xc8\x46\xba\x91\x90\xc0\x66\xf7\x86\x07\x08\x16\xc6\xa3\x57\xfa\x07\x09\xbf\xc1\x5f\x7b\x9e\x67\xa2\xc1\x66\xf6\x46\x34\x15\xdc\x59\xb7\x6b\x9e\xa6\xc5\x66\xfe\x47\x93\x7f\x5d\x7d\xfc\xe0\xda\x78\x63\x59\xa5\xb3\x65\xc2\x92\x30\x93\x04\x92\x2c\x61\x28\x77\xca\x14\xfc\x3a\xfc\x19\x93\x0e\xb4\xb4\x29\xe1\x3c\xde\x41\x03\xd4\xf9\x68\xf3\x91\xfb\x09\xee\x15\xd6\x64\xdf\xbd\x8a\x03\xc2\x14\xf7\xbf\x0e\x7f\xba\x88\x96\xab\x48\x80\x48\x8b\x58\x0f\x75\x1a\xde\xe8\x31\x4c\x48\x42\x88\xfb\x7b\xc4\x05\x46\x6d\x44\x48\x4b\xba\xd1\x0a\x04\x46\xef\xdf\x8d\x10\xe5\xf4\x59\xd7\xde\x51\x81\x98\x61\x62\x63\x9f\xf5\xaf\x5f\xa2\x23\x2b\xf1\x4c\x88\xb8\xd0\x20\x05\x0b\x4f\x63\x7e\x9a\x4a\x59\x7d\xb5\x92\xd1\xfa\x1e\x25\x49\x2b\x6f\x62\x0b\xeb\xa2\xc3\xe7\x3d\x78\x39\xf8\x10\x2f\xa7\x20\x5d\xae\x7e\x12\x1a\xe6\x20\x31\x90\x01\x42\x1d\xe8\xa7\x2f\x30\x7c\xeb\xf5\xba\xdd\x01\xb8\x3a\xba\x94\x10\x70\x65\x3c\xbf\x24\x7d\x38\xef\xd9\x87\x3f\xf0\x35\xcc\xf0\x19\xe9\x57\x11\x67\x84\xf4\x4d\x53\x78\xd9\x6e\x1b\x47\xaf\x07\x1d\x0c\x26\xb1\x90\x9a\xa1\x0e\xfa\x84\x52\xe4\xeb\x14\xf9\x26\x43\xbe\xde\x45\x2e\x33\xe4\x9b\x14\xd9\x3b\xcb\xa0\x6f\x76\xa1\xf3\x0c\x5a\x60\x7a\x67\xa4\xe8\x6d\x97\x74\x90\x46\xfd\xdb\x88\xcf\x9c\x6e\x52\x90\x23\xb3\xec\x65\x89\xc9\x0e\x19\x9d\x5f\x98\x5e\xb8\xd2\x54\x65\x36\x9c\x4b\x85\x5a\xe9\x1f\x59\xec\x68\x5a\xfc\x06\xeb\xf3\xd7\xdd\x1c\xad\x0b\x1f\x3d\xd2\x41\x19\x56\x7a\xfa\xf4\x75\xd7\x40\x65\x09\x2a\x2b\xd0\x65\x0a\x55\x9e\x34\xd0\xfc\x2e\xff\xfc\xec\xeb\x81\xaa\xe0\x16\xa8\x8f\xd5\xe9\xd9\xd7\xa4\xf2\x74\x86\x92\x3b\x2e\x66\xd1\x9d\x9b\x9e\x89\xba\x12\xe6\xdc\x6c\x3a\xb2\x6b\xed\x4b\x19\xdd\xf2\x19\x48\x8c\x56\x32\x5a\x82\x5e\x40\xac\x10\x05\x92\x10\x4c\x5a\xff\x0d\x00\x00\xff\xff\x0b\x94\x0d\x02\xa2\x25\x00\x00") +var _web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5a\x5d\x73\xdb\x36\xd6\xbe\xd7\xaf\x40\x30\x79\x15\x22\x42\x69\x29\x69\xf2\x36\x8c\x59\xcd\xac\x9b\x76\x33\xb3\x4d\xbc\xb6\x3b\xb3\x33\x1a\x2d\x0d\x91\x47\x12\x1a\x09\x50\x00\xd0\x96\x47\xe6\xfe\xf6\x1d\x80\x1f\x22\x29\xc9\x76\x9a\xb8\xbb\x17\x7b\x25\x91\x78\x80\xf3\x81\x07\xe7\x1c\x00\xf4\xa6\xa9\x88\x0d\x97\xc2\x23\x9b\x2b\xa6\x10\x84\x9b\x54\x70\x73\x9e\x4e\xa7\x7c\x1d\x60\x4c\x17\x6c\x02\x0b\x1d\x6c\x32\x9a\x30\xc3\x82\xd1\x38\xa3\x26\xdc\xc8\x95\xed\xe3\x5e\x73\xc1\x4d\x50\x8d\x02\x64\xc3\xa7\x9e\x99\x73\xed\x17\x98\x10\xe8\x93\xfa\xb3\xbf\x04\xa3\x78\xac\xa3\x95\x92\xeb\x9b\x08\x04\x9b\x2c\x20\x21\x66\xae\xe4\x35\x12\x70\x8d\xde\x29\x25\x95\x87\x57\x4a\x2e\xc1\xcc\x21\xd5\xa8\xe8\x81\x56\x4a\x5e\xf1\x04\x14\x8a\x53\xa5\x40\x98\xc5\x0d\x52\xf0\x39\xe5\x0a\x34\x32\x73\x40\x29\x8f\x62\x29\xa6\x7c\xd6\x94\x81\x8c\x44\x13\x40\x79\x53\xaa\x20\x41\x5c\x38\xfc\x89\x14\x3a\x5d\x20\x36\x03\x61\x7c\x4c\x32\x3a\x37\x66\xf5\x0b\xd4\xcd\xa1\x86\xaa\xdc\xa4\xdc\x3f\x3a\xfc\x6e\xf0\x24\x0c\xc1\xe7\x22\x81\xf5\xc7\xa9\x87\x87\x98\x0c\x71\x17\x07\x78\x88\x3b\x10\x42\x4f\xf7\x3e\x4e\x7e\x87\xd8\xf8\x9f\xe0\x46\x7b\x86\xf8\x4b\xb6\xf2\xbc\xba\x83\x14\x98\x54\x09\x04\x22\x96\x09\xfc\x76\xf6\xfe\x44\x2e\x57\x52\x80\x30\x1e\x90\x1e\x0e\x71\x6f\x4f\x8b\x19\xc1\x98\x64\x84\xf8\xbf\x4b\x2e\x3c\xdc\xc5\x24\x2b\x86\x69\xf8\x76\x0a\x26\x9e\x7b\x40\x37\x73\x60\x09\x28\x1d\xa8\xdb\xdb\x4d\x96\x11\xdf\xcc\x41\x34\xb5\xe0\x53\x0f\x7c\xf9\x89\x94\xda\xf8\xbf\x6b\xcb\x82\x8e\xb5\xd2\x84\xb5\x89\xf8\xeb\xc5\xc5\x69\xfe\x3f\x40\xb8\x07\xbe\x36\xcc\xa4\xfa\x02\xd6\x86\x74\xf2\x59\x33\xc5\xbb\x13\x99\x40\x58\x02\xa8\xc9\x08\xc9\xa8\x06\x75\xc5\x63\x38\x83\x18\x84\x39\x4f\x97\x4b\xa6\x6e\xce\x41\x71\xd0\x2d\x2f\x53\x4d\x45\xee\x63\x16\x7a\x56\xfc\x4f\xcc\x00\xf1\x67\x60\x2e\xf8\x12\x3c\x72\x34\x80\x97\x9d\x42\x59\x61\x65\x28\x13\xb2\xef\xde\xf4\xfb\x54\xf8\x20\x92\x90\x51\xe7\x89\x39\xd3\x7f\xfb\xff\x5f\xf3\xe9\xf7\x34\x19\xba\x97\xce\x2d\x67\xf0\x39\x05\x6d\xce\x98\x81\x5c\x81\x42\xae\x20\xc1\x16\xf4\x13\x33\x6c\x0f\xe2\x80\x1d\x86\x99\xbb\xcc\x18\x8d\x3b\xf5\x49\x6a\xab\xe6\x31\x7f\x95\xea\xb9\x57\x53\xf1\xf4\xbc\x18\x05\x17\xf2\x30\x15\x84\xd0\x1d\xe0\xbb\xb3\x87\xe1\x4e\x41\x59\x7d\xf9\x02\xbc\x57\x7d\xfa\xa5\x5d\xde\xbc\xd9\xd7\x85\x04\xbb\x8a\x9f\x48\x21\xac\xdb\x1e\xa6\xd5\x79\xe1\xcb\xf5\x17\xc1\x2f\xbe\x0c\xfe\x41\x9e\xc9\x74\xbf\x46\x84\xd6\xd0\x76\x0e\x3d\x46\x32\x9a\xae\xb4\x51\xc0\x96\x0f\x98\xe2\x6a\x0d\xd7\xd9\xd5\xee\x55\x4a\x2e\xc7\xc5\x54\x93\x8c\x26\xf2\x5a\x3c\x8e\x9c\xed\xc8\xb9\xa4\x03\xf0\x07\xf1\xf5\x0e\x66\xea\x7b\x18\x79\xa0\x7d\x1f\x13\xef\x87\x56\x0c\x3c\x00\x6d\xf1\xee\x00\xaa\xcd\xb7\xbb\x61\x17\x0f\x83\x35\xf9\x95\x63\x5b\xb4\xfa\x45\xc9\x74\x05\x89\x63\x57\x7d\xf1\x07\xbb\xd9\x00\xdb\xd4\x83\xc3\x30\x84\xdb\x5b\xf7\xff\x45\xf9\x30\x53\xab\xd8\xfd\x2f\x66\xb4\x3d\x89\x15\x47\x4e\x95\x5c\x72\x0d\x3e\x5b\x2c\x3c\xd8\x89\xf8\x86\x6c\xa6\x52\x79\x76\xa2\x55\xb8\xd1\x6e\x10\x9b\xcc\x75\xd8\x7f\xab\x8f\xc1\x5f\x80\x98\x99\xf9\x5b\xdd\xeb\x11\x33\xd2\x63\xff\x8a\x2d\x52\xe8\x76\x95\x8b\xe6\xba\xf0\xc1\x48\x8f\x49\x49\x11\xe5\xc2\xfb\x8e\xb1\xdf\x46\xb3\x4d\xb6\x57\x33\x9b\x87\xad\x0e\x25\x5e\xb8\x4c\x6e\xdf\x38\x9d\xe7\x4c\x7f\xbc\x16\xa7\x4a\xae\x40\x99\x1b\x4f\x90\x6e\xd7\x2b\x0c\x18\x89\xf1\xed\x6d\xed\x21\x1c\x8d\x09\xdd\x3e\x6e\xed\x1b\x89\x31\x69\xd9\xa8\x60\x2a\xd5\x92\x99\x76\xda\x72\xa5\x41\x81\xac\x5e\x6a\x97\x59\x9f\x68\xdf\x96\x4b\xb7\xb7\xc5\x1f\x5f\x81\x4e\x17\xe6\xf6\xb6\x1f\x86\x8d\x37\x85\x75\x6d\xe0\xa8\x5f\xcc\x80\xde\xed\xb2\x6d\x2b\x3a\x57\x29\xbc\xb3\x00\x83\xc4\x41\xf4\x81\x42\x64\x63\xf8\x12\x82\x5f\x99\x99\xfb\x4a\xa6\x22\xf1\x06\xf0\xf2\x39\x8c\xfa\x63\x92\x65\x5b\x57\x34\xb5\xde\x19\x0a\xf6\x0b\x71\x2e\x12\x23\x35\x1e\x41\x51\x93\xf9\xae\xa0\x1c\x87\x2b\xa6\x34\xfc\xbc\x90\xcc\xd6\x36\x03\x57\xdb\x64\x84\xd0\x7a\xf5\x69\xca\xe2\x53\xe5\xb5\xa7\xc8\xb2\x2a\xaa\xb5\x52\xf9\x9e\xc8\xe9\xf8\x11\x5e\xea\x74\x89\x26\x37\xc8\x73\x43\x91\xe2\x37\x52\xb0\x5a\xb0\x18\x5a\x4f\x5c\xb9\x50\x22\xae\xe4\x4d\xb4\xe0\xda\x80\x00\x15\xd9\xc5\x18\x6d\x63\x6b\xa4\x3e\x47\xeb\xf5\x26\x76\xa5\x63\xa4\x65\xaa\x62\x88\x8a\xe4\x12\xe2\xa7\x1b\xc8\x30\x6d\x36\x5a\xdd\x6d\x3c\x03\x65\xdb\xcd\x4e\xbb\x60\x4b\xd0\x2b\x96\x77\x57\x19\xa6\xb9\x02\x4e\x6e\x2c\x85\x88\x96\x4c\xb0\x19\xa8\x68\xa5\x60\xca\xd7\x21\x5e\xa5\x93\x05\x8f\x2b\x0d\x71\x36\x1a\xf4\x97\x63\x42\x11\x76\xe6\x60\x8a\xf0\x79\x1a\xc7\xa0\x35\x68\xfb\x90\x8f\xa7\x40\xaf\xa4\xd0\x10\xd9\xda\x32\x8a\x17\x4c\xbb\xc6\xd1\x3f\x5f\x8d\x71\xa3\xaf\x2b\xf5\xee\xef\xf8\x0a\x13\x72\xd9\xd9\xc9\x4f\x45\xe1\x24\xa8\x2e\x16\xba\x6b\x6a\x2e\x21\x0f\x23\xb5\xd2\x98\x6e\x2e\xa4\x61\x8b\x00\xbb\x1f\xc4\xc5\xc4\xd2\xcf\x95\xf4\xa0\x8d\x46\x2b\x50\x48\x43\x2c\x45\x82\x69\x65\x50\x50\xda\x36\x4d\x17\xa8\x54\x4d\x23\xef\x9a\x9b\x39\x62\x02\xb9\x6a\xb5\x7c\x8f\xac\xca\x48\x48\x53\x56\xfc\xaf\xd6\x6b\xa4\x98\x98\x01\xa9\x8d\xee\x63\x9a\xdb\x1c\xe4\xb6\x3f\x70\xd8\xbb\x87\xdc\x46\xc7\x66\x49\x79\x98\xa9\x3f\xa0\xe7\xe8\x6e\xb6\xd6\xf9\x69\xe2\x06\x2b\xe3\x75\x64\xd6\xd1\xe4\xc6\x80\x8e\x8c\x75\xe7\x9f\xc0\x50\xab\xc2\x17\x70\xf2\x63\x6a\xdc\x04\xdb\xff\x91\x1b\x33\x8a\xec\x7f\xff\x39\x26\x48\x2a\xf4\x25\xb6\xaa\xff\x72\x5b\xdf\x8b\x83\xa6\xfe\xf1\x45\x33\xd9\x5d\x33\x13\x26\x92\x6b\x9e\x98\x39\xa6\x85\xc8\xa0\x94\x8d\xac\xa5\xc8\x7a\x11\x79\xf9\x5f\x88\x39\x5c\x41\x42\xd0\x54\xc9\xa5\xe3\xae\x00\x73\x2d\xd5\x27\x4b\xe5\x09\x6f\xac\x38\x1f\xd3\x72\xbe\x82\x6a\xe6\x76\x86\x34\x8a\x09\xbd\xe4\xc6\x3c\x78\x54\xb7\x2c\x96\xec\x13\x9c\xa7\x6e\x97\x7c\x78\x39\x58\xef\x1f\xd9\x19\x44\x9e\x9d\xa7\xca\x6d\xdb\x7a\x3a\x0c\xf5\x50\xf4\x30\xea\x2a\xa6\xd4\x5b\xb4\xd9\xfc\x72\xf6\xf1\xb7\xd3\x2c\xc3\x41\xbd\x16\xb6\x28\x5c\xb5\x95\x60\xdc\x13\x81\xc8\x35\xb1\x4b\xfb\x1c\x16\x10\x1b\xa9\xf6\xa8\xc3\xa7\x5e\x6b\xb8\x22\xdf\x5e\x16\xc4\x49\x40\x1b\x2e\x98\xed\x75\x80\x7a\x75\xc4\x41\xfe\xd5\x41\x6d\x12\x5e\x76\x0a\xa7\x3c\x22\xd1\x2b\x5a\x8a\x5e\xd8\xf4\xf1\xb3\x7b\x33\x52\x05\x7f\x16\xdc\x0f\x6e\x2f\x9f\x67\xf9\x34\x5c\x9c\xfc\x6f\x16\x1e\x32\x0b\xb5\x48\xf4\xaf\x0a\xe1\x3f\xaf\xb9\xfe\xae\x58\xf5\x2c\xa3\x33\x5b\xa8\xff\x3d\x05\x75\xd3\xf0\x73\xb5\x13\xa9\x49\x85\xa1\xe9\x85\xd8\x65\xa4\x42\xed\xb2\xb1\xb4\x9a\xb6\xdf\x6f\x0d\xde\x69\xaa\x6c\x25\xed\x15\x0a\xdd\xae\xd7\x96\xd4\xf4\xee\x41\xb7\x1e\xf2\x27\xc1\x84\x9a\xc2\xd8\xbf\xdc\xbc\x17\xb6\xa0\xdc\xb3\xed\x6a\x18\xbb\x7d\xda\xd5\x0f\xe7\x02\x70\x46\xf3\x3a\xf6\xd4\x39\xd8\xc6\x8e\x7d\xc3\x36\x7b\x0f\x8b\x4a\x2a\x5e\xa4\xda\x80\xda\x7a\x44\x7d\xc6\x01\xae\xad\x97\x46\x99\xd9\x12\x75\x71\xf2\x35\x92\xe2\x75\x25\x69\x27\x9b\xe2\xb2\xaa\x3e\x3d\x6f\xae\xbc\xda\xd1\x80\x4b\x48\xed\x68\x59\x81\x68\xbc\x05\x14\x81\x7d\xdb\xc6\x5d\x11\xee\xb9\x7c\xfe\x74\x93\xe3\x5a\x2e\xf4\x04\xc9\xa2\x58\x2e\x57\x0b\x30\x90\x6c\x9e\x6e\x58\x96\x8d\x06\xaf\x96\xe3\xfd\xd9\xd2\xd8\x4d\x83\x7d\xdc\x52\xd9\x13\x94\x13\x8a\xcf\x4e\xcf\x31\xbd\x3c\x9e\xfc\xf8\x74\x13\x67\xc7\x47\x93\x1f\xcb\x6a\x32\xcf\x5a\xec\x0a\x14\x9b\x41\x82\xe4\x15\x28\x97\xab\x16\x4c\x1b\x34\x78\x85\x96\x5c\xa4\x06\xf4\x25\x55\x74\x3b\x72\xc1\x1b\x4f\x54\xb5\xdc\xbb\xb3\xc7\xf1\x10\xc6\x9d\x3a\x15\xc5\x90\xff\x29\xeb\x4e\x74\xbb\x5e\x5b\xd2\xd7\xaf\x3b\x17\x26\xd3\xf0\xd0\x4c\x53\xd9\x20\x44\x9a\xd9\xfd\x94\x9d\x72\x7a\x70\xbf\x11\xe2\x57\xb8\x24\xc4\xd3\x0d\xcf\x8e\xf6\xf6\xaf\x23\x0e\xd1\x46\x52\xfc\xee\x0c\xd3\xcb\xe2\x8c\x89\xcd\x00\xc9\x29\xda\x43\x18\x8d\xae\xe7\x3c\x9e\xa3\x6b\x50\x79\x8d\x9f\x9f\x6a\xdf\xc1\x9c\x7d\x67\xfc\xca\x1d\xe9\xff\x1f\xce\xc8\x9d\xb4\xda\x9e\x78\xb5\x53\x9f\xa0\x2c\x27\x58\x7c\x80\x60\x25\x88\xf2\x5d\x82\x55\x6d\x69\x88\x17\xd0\xa4\x18\x1b\xa6\xbd\x10\xef\x70\xe5\x6b\xe8\xd5\x66\x17\xeb\x76\xbd\xba\x90\xaf\x64\x56\x41\x2c\x19\x5e\xce\xb9\x36\x72\xa6\xd8\x32\xfa\x9c\xb2\xfc\xa0\xf0\xe9\x06\x8e\x06\xfd\x7e\x46\x8b\x2d\x94\x23\x06\x41\x77\x47\x1d\x46\xb2\xc8\xf0\x25\x44\x93\x34\xfe\x04\x66\x63\x39\x50\x92\xe8\x60\xe0\x91\x14\x9f\xe2\x1e\x14\x51\x86\xe7\xa4\xb1\xa9\xdf\xcc\x6d\xa5\x5b\xcc\x63\x15\x77\x0a\x6b\x91\x95\x73\x07\x79\xf4\x1e\x7e\xb0\x8a\x1f\xe5\x31\xe7\xfd\xc1\xa7\x56\x45\x7d\x93\xe8\x7c\x71\x92\x07\xe7\x7c\x9f\xf5\xc7\x03\xf3\xc9\x59\x2b\x2e\x97\xbb\xfd\x8b\x93\x53\x64\xcb\x44\x70\x76\xd5\x37\x0b\x5f\x1f\xad\xab\x73\xdf\xc7\xf1\x5b\xb1\x61\xbf\xd7\x77\xad\xcd\xea\x57\x64\xb7\x7f\xec\x24\xb7\x18\xf8\x15\x24\xed\x7d\xd6\x37\x73\xdd\xc5\x7f\xd8\x75\xe6\x5b\xb9\xee\xa2\xed\xba\xda\xd6\xf5\xd1\xbc\x57\x5c\x11\x3c\x8a\x0b\x71\x24\x64\xa4\xec\xf0\xb8\xb3\x27\xa9\x87\x38\x2a\x56\x55\x34\x65\x7c\x51\x25\xe5\x87\x2c\x76\x1b\xd5\xfe\xa0\xab\x53\x42\xf1\x87\xf6\x52\x4f\x85\xd5\x93\x4d\x16\x80\x3c\xab\x0c\x24\xe4\xf1\x96\xbc\x61\xbb\x67\x0a\xd6\xe3\xe2\xf6\xd6\x03\x5b\xea\x7c\x3c\x43\x52\x78\x04\x5d\xe5\xee\xee\x97\x05\x0b\x0b\x37\x9f\xdd\xa6\x08\xa8\x3b\x10\x3f\x74\x07\x9d\x35\xef\x74\xf3\x2f\x06\x3c\x7c\xc4\x56\xfc\xe8\x6a\x70\xe4\xc6\xc0\x94\x1d\xb8\x72\x7f\x52\x4d\x7e\xed\x00\x1c\xf6\x1e\xd8\x8f\x06\xd5\x65\xcb\xc6\x1d\x2c\x05\x86\x26\xa0\xe3\x40\x51\xd7\x1e\x70\xfd\x81\x7d\xf0\x18\x19\xe2\xef\x70\xe0\xee\x30\xb3\xf2\x62\x24\x0e\x37\x19\xe5\x61\xff\x2d\x3f\x86\x3d\xd7\x0d\x6f\x79\xaf\x97\xeb\x91\x86\x4d\xe1\x7c\x4c\x65\xe8\x35\xb4\x4b\xb7\xea\xd0\xcb\xa7\x9b\xb4\xa0\xcc\x08\x17\x79\x1a\xf7\x44\x0f\x97\x59\x1d\x8f\x33\xff\x20\x66\x9b\xca\xef\x42\x6d\x2b\x01\x3c\xce\x2e\x49\x27\x1e\xc9\x71\xd8\xf2\x80\x5f\x1e\x13\x6e\x4f\x76\x30\x95\xe4\xb0\x63\x8a\x39\x8b\xb3\xfa\x1a\x6d\x1f\xc7\xe6\x2e\x51\x5b\x22\xb8\xaf\x0c\x02\x93\x7f\x6d\x40\x41\x24\x81\xf1\x41\x24\x54\x1b\x58\x05\x78\xd0\xd7\xd8\x71\x45\xa6\x26\xc0\x3f\x68\xfc\x10\x6a\x44\xee\xac\x18\x53\x45\xb2\xac\x53\x0a\x77\x75\x62\xf5\x5d\xc8\xf1\x00\x5e\x0e\x3f\xa4\xcb\x09\x28\x9f\xeb\xf7\xc2\xc0\x0c\x2c\x60\x88\x71\x0f\x82\xbc\xc1\x83\x1f\xc3\x41\xbf\x3f\x04\xdf\xc8\x53\x05\x31\xd7\xd6\x86\x97\x24\x80\xe3\x81\x7b\xf9\x33\x5f\x43\xe2\xbd\x20\x41\x13\xf1\x82\x90\xc0\x76\x85\x97\xdd\xae\x15\xf4\x7a\xd8\xf3\xc0\xd2\x9a\xb4\x06\xea\xe1\x4f\x38\x47\xbe\xce\x91\x6f\x0a\xe4\xeb\x5d\xe4\xb2\x40\xbe\xc9\x91\x83\x17\x05\xf4\xcd\x2e\x74\x56\x40\x2b\xcc\xe0\x05\xa9\xb4\xed\x93\x1e\x36\x38\xb8\x92\x3c\x41\xfd\xac\x72\x8e\x2e\x3f\x57\xb1\x8e\x29\x2f\xbb\x6a\xf7\x55\xb6\xc4\x5e\x6a\x5c\x7c\xb9\xe2\xac\xe9\xf0\xa9\x67\x8e\x5f\xf7\x4b\xb4\xa9\x64\x0c\x48\x0f\x17\x58\x15\x9a\xa3\xd7\x7d\x0b\x55\x35\xa8\x6a\x40\x97\x39\x54\x87\xca\x42\xcb\xbb\xb0\xe3\x17\xdf\x0f\x75\x03\x37\xc7\x81\xa7\x8f\x5e\x7c\x4f\x1a\x6f\x13\x9c\x5d\x73\x91\xc8\x6b\x3f\x67\xb8\xaf\x60\xc6\xed\xc6\xbc\xb8\x08\x3e\x2d\x3e\x68\xaa\x7f\xed\x84\xa9\x21\x19\xf1\x48\xe7\xdf\x01\x00\x00\xff\xff\xde\xa6\xb5\x3b\x9b\x25\x00\x00") -func web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJsBytes() ([]byte, error) { +func web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968JsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJs, - "web_ui/assets/metrics-providers/prometheus-d34e43a22a7270925b5d2ffba045d5ab.js", + _web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js, + "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js", ) } -func web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJs() (*asset, error) { - bytes, err := web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJsBytes() +func web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js() (*asset, error) { + bytes, err := web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968JsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/metrics-providers/prometheus-d34e43a22a7270925b5d2ffba045d5ab.js", size: 9634, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js", size: 9627, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -725,7 +725,7 @@ func web_uiAssetsMstile144x144Ac561ffa84c7e8ce1fe68d70f1c16d1dPng() (*asset, err return nil, err } - info := bindataFileInfo{name: "web_ui/assets/mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -745,7 +745,7 @@ func web_uiAssetsMstile150x1506b13ab220a09a9e72328a3b05d5b9eecPng() (*asset, err return nil, err } - info := bindataFileInfo{name: "web_ui/assets/mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png", size: 64646, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png", size: 64646, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -765,7 +765,7 @@ func web_uiAssetsMstile310x150Ccc673174b188a92f1e78bc25aa6f3f8Png() (*asset, err return nil, err } - info := bindataFileInfo{name: "web_ui/assets/mstile-310x150-ccc673174b188a92f1e78bc25aa6f3f8.png", size: 112362, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-310x150-ccc673174b188a92f1e78bc25aa6f3f8.png", size: 112362, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -785,7 +785,7 @@ func web_uiAssetsMstile310x31049242d1935854126c10457d1cdb1762bPng() (*asset, err return nil, err } - info := bindataFileInfo{name: "web_ui/assets/mstile-310x310-49242d1935854126c10457d1cdb1762b.png", size: 201893, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-310x310-49242d1935854126c10457d1cdb1762b.png", size: 201893, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -805,7 +805,7 @@ func web_uiAssetsMstile70x7008e1368e84f412f6ad30279d849b1df9Png() (*asset, error return nil, err } - info := bindataFileInfo{name: "web_ui/assets/mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -825,7 +825,7 @@ func web_uiAssetsSafariPinnedTabSvg() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/safari-pinned-tab.svg", size: 3798, mode: os.FileMode(420), modTime: time.Unix(1603125142, 0)} + info := bindataFileInfo{name: "web_ui/assets/safari-pinned-tab.svg", size: 3798, mode: os.FileMode(420), modTime: time.Unix(1605811293, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -845,32 +845,32 @@ func web_uiAssetsVendor992465b8b230f89d4adce5f016543c4dCss() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/vendor-992465b8b230f89d4adce5f016543c4d.css", size: 10682, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/vendor-992465b8b230f89d4adce5f016543c4d.css", size: 10682, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xbd\xd9\x9a\xdb\x46\x97\x20\x78\x9f\x4f\x41\xa2\xff\xc1\x1f\x21\x9e\x84\x10\xc1\x05\x64\x64\x46\xb2\x64\x29\xe5\x52\xfd\xd6\x52\x92\x6c\x97\x8b\x66\xb3\x40\x32\x98\x09\x8b\x09\xd0\x00\xc8\x54\x9a\x64\x7d\xee\x99\xe9\x59\xbf\x6f\x1e\x60\x6e\xa6\x6f\xe7\x6a\xde\xa1\xde\xa4\x3d\x2f\x32\x5f\x2c\xd8\x48\x30\xa5\xf2\x74\x5e\x24\x81\x40\xec\xcb\xd9\xcf\x89\xfb\x20\x9c\x47\xf7\xce\xf5\xdd\x54\xc4\xd7\x6f\x7e\xe0\x8b\x75\x38\x4b\x83\x28\x44\x02\x52\xbc\x5d\x44\x31\xda\xf8\x71\x23\x6e\x04\x61\x23\xc5\x62\x14\x8f\x79\x3a\x8a\xc7\x67\xb1\x48\xd7\x71\xd8\x10\x7b\x74\x50\xc1\x6e\xb7\xdd\xc3\xf6\xe5\xf5\xb3\x8f\xdf\xbf\xbf\xfe\xc0\xb6\x7b\xb8\xfe\xa7\x8f\xd7\x6f\x5e\x4c\xde\xbd\x7f\xfb\xf1\xed\xc7\x9f\xde\xc9\xc4\x17\x7e\x2a\x58\x93\xec\x61\xf2\xec\xdd\xbb\xef\x5e\x3d\x7f\xf6\xf1\xd5\xdb\x37\x93\x8f\xd7\xaf\xdf\x7d\xf7\xec\xe3\xf5\xe4\xc7\xf7\xcf\xde\xbd\xbb\x7e\xcf\x9a\x04\x26\x2f\xae\x5f\x3e\xfb\xfe\xbb\x8f\x93\x67\x1f\x7e\x7a\xf3\x7c\xf2\xf6\x9b\x0f\xd7\xef\x7f\xb8\x7e\xff\x81\x35\x5d\x98\xfc\xc3\x3f\x7e\x7f\xfd\xfe\xa7\xc9\xab\x37\x1f\xaf\xbf\x7d\xaf\xea\x50\x45\xf2\x7a\xde\xbe\xf9\xee\xa7\xc9\xb7\xdf\xbd\x7a\xfd\xfa\xfa\xfd\xe4\xf9\xdb\xd7\xef\xde\xbe\xb9\x7e\xf3\x51\x96\xdd\xe3\x33\x39\xac\x65\xe4\xcf\x45\x0c\x73\xb1\x08\x42\x01\xb1\xf8\x75\x1d\xc4\xe2\x75\x34\x5f\x2f\xf3\xb7\xec\xf7\x97\x04\xe2\x75\x18\x06\xe1\xcd\x47\x91\xa4\x09\x6f\x92\x0b\x54\xcc\x15\xde\x5a\xeb\x44\x34\x92\x34\x0e\x66\xa9\x75\x96\x7d\x68\xa4\x08\x6f\x65\x43\x82\xbf\x9d\xfe\x22\x66\xa9\x33\x8b\x85\x9f\x0a\x14\xae\x97\x4b\x9c\x4f\xa2\x33\x99\xf0\x4d\x14\xcc\x1b\x2e\xcc\xc5\x52\xa4\x42\x25\x81\xd8\xab\xa9\xe7\x5b\xdd\x4d\x56\xe9\x2d\xab\xeb\x34\xab\x1d\x02\x3b\x1a\x0a\xcb\x9f\xf6\x67\xf9\x23\x37\x4f\xbc\x52\x09\x2f\x0f\x32\xdb\x0e\x29\x1f\x8d\x21\xe6\x33\x24\xc0\x42\x26\x3b\xb6\x20\xc5\x10\xf2\xd4\x59\x8a\xf0\x26\xbd\x3d\x27\x17\xe1\x15\x77\x2f\xc2\xf3\x73\x9c\x8e\xc2\xb1\x23\x3e\xaf\xa2\x38\x4d\x50\x3e\xee\xd8\xb9\x53\x4d\x64\x5f\xf6\xa0\x47\xc8\xb7\x61\xf4\x3c\x0a\x17\xcb\x60\x96\xb2\xbc\xf9\x54\xcf\x64\x08\xc1\x99\xec\x46\xa8\x77\x64\xea\xdc\xfa\xc9\xdb\xfb\xf0\x5d\x1c\xad\x44\x9c\x3e\xa0\x10\xdb\x76\x5c\x97\x88\x02\x2e\xbb\x01\x62\x14\x8c\xb9\xd0\x4f\xe1\x98\xc7\xa3\x70\x8c\xf7\x70\xe7\x7f\x12\x2f\xc4\xc2\x5f\x2f\xd3\x6b\xd5\x1b\xb9\x49\xd4\x1e\x09\x79\x8a\x30\x04\x1c\xc9\x1f\x17\x17\x6b\x1b\xc9\x19\x49\x6f\xe3\xe8\xbe\x11\x8a\xfb\xc6\x75\x1c\x47\x31\xb2\xfc\xb0\xb1\x0e\x93\xf5\x4a\xd6\x21\xe6\x0d\x3d\xc2\xc6\xbd\x9f\x34\xf4\x82\xcd\xa1\x21\x3e\xaf\xc4\x4c\x7e\xfc\x17\x9d\x84\x82\x39\x34\xe6\x62\x95\x80\xc9\x8e\xff\xa5\x11\x84\x49\x2a\xfc\x79\xe3\x26\x4a\x59\xe3\x5f\xac\x96\x68\x59\xff\xd2\xf0\xe3\x9b\xf5\x9d\x08\xd3\xa4\x91\x46\xa6\xba\x7f\xb1\xb0\xda\x25\x3e\x1f\x59\x66\x21\x2c\xb0\xcc\x84\x5a\x60\xe9\x0a\xad\x71\xd1\xed\x44\x9e\x6c\x88\x21\x94\x9d\x0f\x12\x67\xbd\x0e\xe6\x3c\x68\xb5\x40\xbd\x05\x73\x2e\xf4\x93\xec\x10\x6f\x66\xab\x29\x27\x55\x3f\x0d\x7d\x96\xea\x1c\xba\x6e\xbe\x35\xad\xb1\xed\x7e\xaf\x3f\xcc\xfc\xe5\x72\xea\xcf\x3e\xf1\x58\xbf\xdf\xfa\x89\x9e\xd4\xe4\x59\xf2\x42\xac\x78\x93\x98\xc6\x92\x67\xcb\xc0\x4f\x78\xa8\x5f\x63\x11\x2c\x02\x31\xe7\x72\x36\x9f\xc5\xb1\xff\x80\xb2\xd6\xb1\xce\x90\xa4\x7e\x2a\xb8\x15\x8a\x7b\x6b\x9f\x8f\x67\x8d\xf0\xb6\x78\x5b\xea\x45\x31\x23\x29\xd2\x67\x7a\xd4\xc5\x16\x0e\x78\x38\x12\xe3\xdd\x2e\x1c\x89\x96\xf5\x34\x08\xe7\xe2\xb3\x35\xbe\x08\x6c\x3b\xc8\xba\x75\x81\x65\x9e\xc0\x09\xe6\x2a\x9b\x7c\x28\x72\x66\x7b\x38\xd8\xed\xaa\x10\xf3\x68\x43\x3c\x8f\xd6\xcb\x79\x23\x8c\xd2\xc6\x22\x08\xf3\x0d\x91\x2d\x69\x70\x67\x36\xca\x22\x8e\xee\x64\x6a\xda\xb2\xe4\x9a\xaa\xca\x20\xb6\x6d\x6b\x25\xc2\x79\x10\xde\x58\x4d\xce\x03\x3d\x03\xb6\x6d\x2d\x82\xd0\x5f\x06\xbf\x89\x79\x25\x19\x05\x8e\x6c\xe3\x85\x58\x25\x28\xc6\x10\x3b\xab\x75\x72\x8b\x02\x8c\x21\x28\x66\x62\xa1\xfb\x19\x2c\x90\xe5\xc8\xd2\xc2\x99\xdd\xfa\xf1\xb3\x14\xb9\x18\x67\x00\xe9\x2c\x87\xfb\x5c\x38\xc9\x6a\x19\xa4\xc8\x7a\x6a\xe9\xd3\x5d\xbc\x3a\xc9\x32\x98\x09\xe4\xc2\x39\x91\x07\xc4\x85\x88\x67\x9b\xe4\x22\xb8\x8c\x2e\x82\x56\x4b\x9f\x59\x9f\xc7\xa3\x60\x7c\xa6\x9a\x74\x2c\xce\xb9\xaf\xda\x77\x39\xe7\x61\xb6\xc2\xc7\xf3\xe6\x87\x72\xd2\xfc\xd9\x4c\x24\x49\x63\xe5\xc7\x22\x4c\xb3\xd9\x8b\x16\x8d\x38\x8a\x52\x0b\x9f\x85\xce\x2a\x5a\x21\xbc\x17\xcb\x44\x98\x31\xa9\xfa\x67\x51\x98\x06\xe1\x5a\xc8\x0c\x72\x12\x7c\xbc\xdf\x9b\xd1\x85\xce\x2f\x51\x10\xaa\x11\x14\xb3\x32\x97\xfb\x46\x67\x68\xa2\xa6\xdc\x1a\xb6\xdd\xac\xec\x0d\xbc\x4f\x9c\x55\x1c\xa5\x51\xfa\xb0\x12\xce\x11\xbc\x28\xe0\x64\x06\xf1\x4b\x67\x24\x83\x70\x67\x12\xee\x73\xce\xc5\x6e\x67\x45\x0a\x21\x58\x4d\x2e\xeb\x8b\x16\x0d\xb5\xac\xa6\x8e\x52\xea\x6e\xa7\x31\x83\x5a\xa9\xb9\x6e\x71\xb7\x6b\x1a\x74\x12\x24\xd7\x9f\x53\x11\x26\xc1\x74\x29\x90\xc0\xbb\x1d\xca\x33\x71\x81\xf7\x50\xee\xb2\xe9\x43\xb9\xa3\x72\xc2\x8a\xad\xc4\x39\x2f\x8e\xd9\x6e\x67\xc9\xf3\xf8\x20\xb7\x5e\xe5\x43\xb6\x49\xea\x86\xa7\xe1\xb7\x73\x1f\xfb\x2b\x8d\x3d\x12\xdb\x46\x55\x90\x70\x9c\x05\x99\xe3\x5a\x85\x1d\x18\x17\x40\xe1\x01\x69\x74\x6d\xe6\x34\xcb\xe2\xf8\xab\xd5\xf2\x41\x15\xaf\x00\x90\x1c\xc1\x94\x13\xcd\x3e\xe3\x6e\x05\x94\x14\x83\xaf\x85\x54\xb6\xad\x27\x5f\x2f\x19\xaa\x19\x32\x17\xd8\x60\xad\xe3\x2d\x61\xdb\xba\xc0\x61\x3a\xc2\x50\x53\x53\x75\xb1\xd6\x61\x22\x44\x79\xa9\x0e\x01\xe0\x49\x10\x5c\xad\x47\x4d\xdf\xe1\x92\x9b\x29\x91\xa7\xbf\xb4\xae\x95\x26\xf2\xb5\x3f\x4b\xe3\x87\x6d\x05\x3c\xab\x97\x89\x59\x17\x38\x2c\x24\xeb\xdd\xab\x69\x5d\x3e\x6c\x4f\x6c\xa1\x6c\x53\x98\x62\x42\x1e\x78\x31\xb7\xf0\x61\xe7\x27\x47\xbd\xcf\xe0\x92\xd9\x09\xd9\xda\x6a\x40\x84\x21\xe5\xee\x45\x7a\x29\x32\x20\x94\x66\x00\x28\xe6\x62\x94\x8e\xcf\xe4\x3f\x1e\x67\x13\x3e\xcc\x9f\xd8\x21\x25\x82\xf0\x3e\x27\x70\x2b\x3d\xca\xc0\x6b\x85\x2a\x92\x53\x2a\x97\x84\x9f\x9e\xce\x0c\x88\x9f\x15\x14\x54\x8e\x64\x21\xe6\xee\x45\x7c\x99\xe1\xba\x8b\x38\xeb\x75\xa8\x48\x6d\x08\x2a\x63\x95\x14\x78\xbe\xdc\x86\x68\xd4\x9d\x37\x6f\xfb\xb3\x1c\xfd\x4b\xf8\x3a\x44\xf5\x28\xd8\x85\x20\xdf\xc3\x35\xbb\x11\xb3\x9c\x9c\x50\xb5\x1c\x66\xf6\x3f\x89\xf7\xfa\x3b\xc2\x2c\xa3\x32\x6a\x73\xea\xbe\x05\xd9\x56\x9d\xa1\x05\x0a\x33\x5a\x03\x67\x0f\x20\x8e\x16\xbf\xd4\xc4\x09\xd8\x2a\x41\x06\x2f\xd3\x87\x19\x5d\x69\x3a\xb6\x40\x29\x08\x8c\xf7\x39\x38\xc8\x41\x63\x0a\xa9\xe9\xcf\x2b\x45\xef\xc8\xe9\xa9\xab\x69\x9e\xd7\x01\xe9\x1e\x90\x26\xb9\x2a\x2c\x92\x24\x29\x0a\x72\xe2\x2c\xb0\x6d\xb5\x15\x0a\xac\xbc\xdb\xa1\x9c\x6c\x33\x2b\x7c\x49\x6d\x3b\x3a\x4a\xc5\xa0\x68\x1e\x49\x7d\x68\xda\x47\x42\xf3\x58\x76\x95\x8f\xc6\x18\x64\xf5\x3c\x56\x74\xa1\x1f\xce\x24\x6a\x58\x0e\x25\xb6\x4c\x50\xac\x26\x02\x62\x68\xba\x98\xe9\x24\x4d\xe1\x35\x09\xc6\x7b\x7c\x0c\xf7\x15\xfe\xd7\xc7\x42\x77\x7a\x81\x9a\xf1\x6e\x97\xed\xe1\xb8\x02\xe7\x51\xcc\xb3\x3a\x47\x63\x58\x83\xe2\x5c\xf0\x21\x14\x4c\x21\xae\x01\xa9\xba\xcf\x10\xef\x0d\xcf\xe2\xf8\x8a\xdc\xab\x76\xc4\x4c\x35\x95\x68\xfb\x60\x4a\x86\x86\x3e\x4e\x41\x76\x41\x92\x76\x7a\x80\xf2\x69\x5f\x70\x33\x8e\x08\xd3\x38\x10\x39\x03\xf3\x4b\xe2\x4c\x84\xff\x69\x92\x08\x11\xf2\xb0\x94\x4f\xae\xf2\xbc\xf4\x7e\x00\x64\x05\xde\x6a\x8e\x46\xa5\x63\x4b\x4e\xa0\xce\x83\x2a\xcd\xcd\x96\xc2\x8f\xcb\x7b\xf2\x2b\x7b\xa2\x18\x89\x54\xd6\x65\xc6\x65\x2d\xa2\xc8\x02\x54\xaa\x69\x8f\x71\xf9\xe3\xd3\xa9\x1f\x5b\x72\xde\x1f\xcb\xe3\x27\xf3\x85\x05\xa3\xec\x10\x96\xa9\xff\xec\x08\x97\x2b\x30\x9b\x56\xf1\x48\x45\x23\x92\x6b\x2a\xbd\x1d\xf7\xe3\x37\xd5\x8f\xf2\x3a\xea\xee\x1f\x64\xfc\x75\xfd\x9b\xf5\x58\xae\x72\x22\x98\x12\x9f\xad\xba\x41\x9b\x2c\x8e\xae\xd2\x72\x74\x1f\x2c\xc7\x8c\x57\x25\xc4\xf2\xd7\x79\x2a\x73\x3e\x3e\x47\x77\x7e\x10\x9a\x3a\x55\xb1\x53\xb9\x73\x04\xa0\x72\xe6\x13\xb9\xdd\xe3\x6c\xfd\xab\x5f\x0e\x92\x55\x33\x79\x9a\xd9\x3b\xc5\xac\x1e\xee\x21\x84\x21\x23\x03\x79\x4e\xf0\xe9\x9a\x6d\xfb\xe8\x8b\x5e\x5f\xdb\xae\x1e\x3d\xdb\x46\x07\x67\x71\x7b\xc8\xf6\x57\x04\x06\x7b\xbc\xc7\x0a\x25\x60\xc8\x89\x5f\x79\xc2\x14\x43\x98\xa7\x04\xc8\x87\x44\x61\xb6\x66\x3c\xf2\xc7\xfa\x29\x55\x4f\x12\x70\xac\x79\x41\xaa\xe6\xfd\x33\xcd\xd9\xb6\x79\x50\x70\x25\xb1\xed\x75\x46\x31\xae\x91\x2f\x61\x94\x4c\x8f\xb2\xb4\xc8\xa4\x29\x69\x0c\x3f\x26\xff\xcb\x3c\xd3\x5f\xad\x96\xdf\xb2\xfe\x6a\xe1\x33\xcd\x2c\x2c\x9d\x59\x34\x17\xdc\x7a\xfd\xf6\xc5\xf7\xdf\x5d\x4f\xde\xbc\xfd\x38\x79\xf9\xf6\xfb\x37\x2f\x2c\x58\x2a\x9e\x78\xc6\x65\xdf\x2b\xc4\xd1\x99\x1c\xc3\xc8\x1d\x2b\x1a\x12\xcd\xb2\x39\x83\x8a\x28\x27\x63\xed\x90\xca\x4c\xc6\x8a\x4f\x14\x78\x8f\x61\x06\x45\x91\x8c\x8b\xce\x28\x05\xd9\x56\x4e\xcb\x65\x68\x3e\xfa\x9a\x89\x02\x9f\xbb\x17\xfe\x65\xc6\x0a\x5d\xf8\xad\x16\x0e\x50\x28\x67\x3b\x67\x33\xf7\x68\x4b\xd8\xe8\xa4\xc0\x49\x20\xaa\xe7\x30\x85\x98\xa3\x94\x0b\x44\xba\x18\xdb\x76\xea\x4c\x26\x22\xd1\x84\xf6\x30\x65\x5b\x83\x00\x59\xba\x3f\x8b\x33\x6c\xe8\x4c\xa6\xfe\x54\x2c\xdf\x45\xcb\x87\x45\xb0\x5c\xda\xb6\xb5\x0e\x8d\xac\xa2\xe0\x43\x66\x51\x98\x44\x72\xf7\x99\x07\xe7\xde\x8f\xc3\xea\x1b\xb2\xfe\x4e\x55\xf4\x74\x65\x6a\x6a\x04\x89\x96\xb0\xc9\x15\x8c\x45\x23\xbd\xf5\xc3\x46\x14\xce\x44\x23\xd2\xb4\x79\x63\xe5\xdf\x08\xa7\xf1\x51\x3e\xca\xb7\x38\x9a\xfa\xd3\xe5\x83\x62\x96\xe7\x22\x09\x62\x7f\xba\x14\x4f\x83\x30\x15\xa1\xac\xc4\x97\x5b\xc1\x7f\x68\xdc\xfa\x1b\xa1\x3a\x24\x7e\x5d\x8b\x70\x26\x92\x46\xb0\x68\xcc\x83\xc5\x42\x28\x1e\x71\x23\xe2\x24\x88\xc2\x44\x72\x89\xe9\xad\x68\x64\xdd\x49\x1a\x7e\x2c\x1a\x92\x67\x08\xc4\xbc\xa1\x0b\xa7\x81\xa4\x53\x9d\xc6\xab\x45\xe3\x21\x5a\x37\xe6\x51\x23\x14\x62\xde\x48\x23\xd5\xf1\x4a\xf1\x83\x31\x40\x43\xce\xff\xc1\x88\x9f\x16\x82\xab\x5c\x82\x93\x46\x8d\xe9\xc3\xca\x4f\x12\x55\x9b\x9c\xa8\x20\xbc\x71\x24\x30\x38\xb1\x00\xbc\xe9\xee\x61\x4b\xba\x8c\x74\x81\x32\xba\x1f\x03\x7d\x74\xe5\xdb\x18\x04\xea\xca\x7f\x1d\xf9\x8f\x10\xf5\xdf\x55\xff\xd5\x37\x42\xd5\x7f\xf5\xd5\x93\xff\xfa\xf2\x5f\x4f\xfe\x1b\xc8\x7f\x6d\xb7\xa7\x7f\x3c\x2c\x1b\x76\x19\x71\x81\x10\x46\x08\x10\xca\x08\x05\xd2\x66\xa4\x0d\xa4\xc3\x48\x07\xda\xac\x0d\x6d\xb7\xc7\xda\x6e\x0f\xda\xae\xc7\xda\xae\x07\x1d\xd6\x81\x2e\xeb\x42\x8f\xf5\xc0\x63\x1e\xf4\x59\x1f\x06\x6c\xb0\x1f\x43\xbb\xdc\x71\x89\xec\x05\xa2\x9e\x6a\x9d\xea\xee\x50\xd2\xd3\x3f\x5d\xfd\xa3\xbf\x51\x57\xff\x98\xc4\x81\xfe\xf1\x74\xa2\xf9\xd1\xe5\x28\xd5\x3f\x6d\xfd\x43\x74\x4e\xf3\xa6\x5b\xa0\xa6\x4e\x55\x0b\xe9\xeb\x79\xe9\xeb\x29\xe9\xeb\x02\x6d\xf3\xa3\x9b\x75\x4d\x2d\xe6\x47\xb7\xe0\x9a\x1f\x5d\xb5\xab\xab\x76\xbb\x58\x9e\x3c\x3d\x7d\xd4\xd5\x3d\x73\x75\x7b\xae\xe9\xb5\x69\x4f\x2f\x4d\xbf\xab\x7f\x7a\xfa\xc7\xd3\x3f\x7d\xfd\xa3\x3b\x38\xd0\x05\x06\x7a\x15\x07\xba\x9f\x03\xbd\x8e\x03\x5d\xcb\x40\xd7\x32\xd0\xb5\x0c\x74\x2d\x03\x5d\xcb\x40\x37\xeb\xea\xa1\xf4\xf4\x0c\x7a\xfa\xcd\xd3\x1d\xec\xe9\x0e\xf6\x4c\x16\x3d\xcc\x9e\x1e\x83\x47\xd4\x88\x3c\x3d\xcc\xae\x4e\xec\xea\x72\x5d\x5d\xae\xab\x5b\xe8\xe9\x09\xe9\xe9\x9c\x3d\x3d\x21\x3d\xd3\x82\xce\xe2\xe9\x2c\x9e\xfe\xe6\x99\xbe\xe8\x5e\xeb\x37\xa2\xbb\x44\xb2\x44\x3d\x05\x7a\x87\x10\x5d\x35\xd1\x1d\x24\x3d\x93\x68\xca\xe9\x44\xcf\x64\xd1\x73\xa6\x5b\x27\x5d\x53\xa7\x9e\xba\xae\x5a\x23\xe2\x99\x2c\xba\x05\xdd\x79\xa2\x07\x4d\xba\x7a\x5a\xbb\xe6\x4d\x67\xd1\xa3\x25\xba\xf3\xc4\x8c\xaf\xa3\xc7\xd7\x31\x33\x61\x12\xf5\x68\xbb\x7a\x3e\xbb\x7a\x3e\xbb\x7a\xec\x5d\x3d\x3d\x6d\xb3\xdd\xcc\xb4\xea\x99\xd0\x2b\x4d\xf5\x4a\x53\x3d\x76\xaa\xf7\x27\xd5\x1b\x85\xea\xad\x41\xfb\xe6\x9b\x2e\xde\xef\xa9\x35\xd2\x5b\x8a\xea\x4d\x44\xcd\x4e\xd6\xfb\x9a\xb6\x4d\xb3\x3a\x4b\x5b\x57\xd6\xd6\xab\xd9\x36\x63\xd0\x0d\xb5\x75\x0b\x6d\xdd\x42\x47\xd7\xd2\xd1\xb5\x74\x74\x2d\x1d\x33\x4c\x5d\xbc\xd3\xc5\x90\x16\xd2\x0f\xd4\xa5\x0a\x68\x74\x3b\x8c\x74\x3b\x40\xba\x12\x6c\x75\x81\x74\x7b\x8c\x74\x7b\x40\xba\x1e\x23\x5d\x0f\x48\xb7\xcf\x48\xb7\x0f\xa4\x3b\x60\xa4\x3b\x00\xd2\x73\x19\xe9\xb9\x40\x7a\x84\x91\x1e\x01\xd2\xa3\x8c\xf4\x28\x90\x5e\x9b\x91\x5e\x1b\x48\xaf\xc3\x48\xaf\x03\xa4\xd7\x65\xa4\xd7\x05\xd2\xeb\x31\xd2\xeb\x01\xe9\x79\x8c\xf4\x3c\x20\xbd\x3e\x23\xbd\x3e\x90\xde\x80\x91\xde\x00\x88\xe7\x32\xe2\xb9\x40\x3c\xc2\x88\x47\x80\x78\x94\x11\x8f\x02\xf1\xda\x8c\x78\x6d\x20\x5e\x87\x11\xaf\x03\xc4\xeb\x32\xe2\x75\x81\x78\x3d\x46\xbc\x1e\x10\xcf\x63\xc4\xf3\x80\x78\x7d\x46\xbc\x3e\x10\x6f\xc0\x88\x37\x00\xd2\x77\x19\xe9\xbb\x40\xfa\x84\x91\x3e\x01\xd2\xa7\x8c\xf4\x29\x90\x7e\x9b\x91\x7e\x1b\x48\xbf\xc3\x48\xbf\x03\xa4\xdf\x65\xa4\xdf\x05\xd2\xef\x31\xd2\xef\x01\xe9\x7b\x8c\xf4\x3d\x20\xfd\x3e\x23\xfd\x3e\x90\xfe\x80\x91\xfe\x00\xc8\xc0\x65\x64\xe0\x02\x19\x10\x46\x06\x04\xc8\x80\x32\x32\xa0\x40\x06\x6d\x46\x06\x6d\x20\x83\x0e\x23\x83\x0e\x90\x41\x97\x91\x41\x17\xc8\xa0\xc7\xc8\xa0\x07\x64\xe0\x31\x32\xf0\x80\x0c\xfa\x8c\x0c\xfa\x40\x06\x03\x46\x06\x03\xa0\xae\xcb\xa8\xeb\x02\x75\x09\xa3\x2e\x01\xea\x52\x46\x5d\x0a\xd4\x6d\x33\xea\xb6\x81\xba\x1d\x46\xdd\x0e\x50\xb7\xcb\xa8\xdb\x05\xea\xf6\x18\x75\x7b\x40\x5d\x8f\x51\xd7\x03\xea\xf6\x19\x75\xfb\x40\xdd\x01\xa3\xee\x00\x28\x71\x19\x25\x2e\x50\x42\x18\x25\x04\x28\xa1\x8c\x12\x0a\x94\xb4\x19\x25\x6d\xa0\xa4\xc3\x28\xe9\x00\x25\x5d\x46\x25\x5e\x22\x3d\x46\x49\x0f\x28\xf1\x18\x25\x1e\x50\xd2\x67\x94\xf4\x81\x92\x01\xa3\x64\x00\x94\xba\x8c\x52\x17\x28\x25\x8c\x52\x02\x94\x52\x46\x29\x05\x4a\xdb\x8c\xd2\x36\x50\xda\x61\x94\x76\x80\xd2\x2e\xa3\xb4\x0b\x94\xf6\x18\xa5\x3d\xa0\xd4\x63\x94\x7a\x40\x69\x9f\x51\xda\x07\x4a\x07\x8c\xd2\x01\xd0\xb6\xcb\x68\xdb\x05\xda\x26\x8c\xb6\x09\xd0\x36\x65\xb4\x4d\x81\xb6\xdb\x8c\xb6\xdb\x40\xdb\x1d\x46\xdb\x1d\xa0\xed\x2e\xa3\xed\x2e\xd0\x76\x8f\xd1\x76\x0f\x68\xdb\x63\xb4\xed\x01\x6d\xf7\x19\x6d\xf7\x81\xb6\x07\x8c\xb6\x07\x40\x3b\x2e\xa3\x1d\x17\x68\x87\x30\xda\x21\x40\x3b\x94\xd1\x0e\x05\xda\x69\x33\xda\x69\x03\xed\x74\x18\xed\x74\x80\x76\xba\x8c\x76\xba\x40\x3b\x3d\x46\x3b\x3d\xa0\x1d\x8f\xd1\x8e\x07\xb4\xd3\x67\xb4\xd3\x07\xda\x19\x30\xda\x19\x00\xed\xba\x8c\x76\x5d\xa0\x5d\xc2\x68\x97\x00\xed\x52\x46\xbb\x14\x68\xb7\xcd\x68\xb7\x0d\xb4\xdb\x61\xb4\xdb\x01\xda\xed\x32\xda\xed\x02\xed\xf6\x18\xed\xf6\x80\x76\x3d\x46\xbb\x1e\xd0\x6e\x9f\xd1\x6e\x1f\x68\x77\xc0\x68\x77\x00\xb4\xe7\x32\xda\x73\x81\xf6\x08\xa3\x3d\x02\xb4\x47\x19\xed\x51\xa0\xbd\x36\xa3\xbd\x36\xd0\x5e\x87\xd1\x5e\x07\x68\xaf\xcb\x68\xaf\x0b\xb4\xd7\x63\xb4\xd7\x03\xda\xf3\x18\xed\x79\x40\x7b\x7d\x46\x7b\x7d\xa0\xbd\x01\xa3\xbd\x01\x50\xcf\x65\xd4\x73\x81\x7a\x84\x51\x8f\x00\xf5\x28\xa3\x1e\x05\xea\xb5\x19\xf5\xda\x40\xbd\x0e\xa3\x5e\x07\xa8\xd7\x65\xd4\xeb\x02\xf5\x7a\x8c\x7a\x3d\xa0\x9e\xc7\xa8\xe7\x01\xf5\xfa\x8c\x7a\x7d\xa0\xde\x80\x51\x6f\x00\xb4\xef\x32\xda\x77\x81\xf6\x09\xa3\x7d\x02\xb4\x4f\x19\xed\x53\xa0\xfd\x36\xa3\xfd\x36\xd0\x7e\x87\xd1\x7e\x07\x68\xbf\xcb\x68\xbf\x0b\xb4\xdf\x63\xb4\xdf\x03\xda\xf7\x18\xed\x7b\x40\xfb\x7d\x46\xfb\x7d\xa0\xfd\x01\xa3\xfd\x01\xd0\x81\xcb\xe8\xc0\x05\x3a\x20\x8c\x0e\x08\x74\x29\xeb\x4a\xca\xa7\x53\x43\x40\x48\x9c\x78\x00\x81\x1c\x2d\x3a\x59\x2c\xfd\xf4\xb5\xbf\xda\xc3\x96\x0e\x28\xa3\x03\x9a\xd7\xd3\xad\xab\xa7\x7d\xaa\x9e\x20\x9c\x2d\xd7\x73\x91\xa8\x8a\xda\x8c\x0e\xda\x79\x45\xbd\xba\x8a\x3a\xc7\x15\x19\xf9\xbc\x91\x07\xa8\x8a\x3a\x8c\x0e\x3a\x79\x45\x5e\x5d\x45\xc7\xb0\x35\xab\xe8\x46\xa4\x25\x85\xe6\x0b\x91\xcc\xe2\x60\x95\x46\xb1\xae\xba\xcb\xe8\xa0\x9b\x57\xdd\xaf\xab\xba\x77\xb2\xea\x8d\xbf\x5c\x9b\x2e\xf6\x18\x1d\xf4\xf2\x7a\x06\x87\xf5\x1c\xb2\x1c\x1a\xad\x51\x49\x81\x1c\xd6\xfd\x2e\x8e\xee\x82\x44\x09\x4c\x25\x85\x2d\x6b\xcf\x8e\xec\xc0\x63\x74\xe0\xe5\xad\x10\xb7\xae\xbb\xfd\xe3\x2a\x3f\xa4\xb1\xa4\x9c\x57\xfe\xfc\x3a\x9c\xab\xee\xf6\x19\x1d\xf4\x8b\x8a\x48\x5d\x45\x83\xc7\x2a\xfa\x90\xfa\x71\xaa\xaa\x1a\x30\x3a\x18\x14\x55\xd1\xe3\xaa\xda\x92\x2e\x3c\x51\x55\x1a\x07\x77\xef\x83\x9b\x5b\x59\x57\xdb\x25\xac\xed\x16\x5b\x98\xd4\x10\xc1\x6d\x49\x9f\x3d\x52\xd7\x77\x62\xa1\xab\x72\x59\xdb\x75\x8b\xaa\x6a\x8e\x43\xdb\x3d\x38\x0e\xa4\x4b\xb0\xb3\x40\x96\x9f\x3c\x84\xb3\x57\xa9\x88\xfd\x34\x8a\x2d\x8d\xa4\x09\x23\x5d\x02\x6d\x97\xb2\xb6\xab\x2a\xac\x39\x17\xed\xc3\xfa\xfa\xd8\xb9\x59\x46\x53\x7f\x29\xab\x90\x68\x0d\xda\x94\xb5\x55\xf1\xa3\xd3\x90\xd6\x48\x1b\x8d\x9a\xe9\x58\xb5\x65\x74\x7e\x1f\x1f\x56\x42\x33\xfd\xa2\x65\x49\x3e\x50\xa9\xfd\x1a\x59\x81\xa6\x55\x18\x4a\xec\xf7\xb0\x95\xed\x1e\x1d\x1e\x23\xe4\x47\xb4\x8f\xcf\x4e\xf6\xa1\x19\x23\x81\x1f\x6d\x34\x6c\x68\xa1\xcb\x61\x9b\x12\x1b\xf5\x65\xc3\x47\x47\x4b\x37\x5c\x34\xb9\x35\xdc\x27\xb3\xa8\xd3\x73\x08\xb1\xf6\x67\x56\xb8\xbe\x9b\x8a\xb8\xe0\xff\x27\x13\x61\xdb\x68\x32\x11\x3c\xc6\x66\x40\x47\x47\x2d\x1b\x10\xe9\xd5\x0f\x08\x52\x08\xd5\xa0\xe4\x98\x20\xd7\x52\xa5\x85\x0a\x37\xb9\x0f\xd2\xd9\x2d\x0a\xf1\x76\xe6\x27\xa2\x41\x98\xf9\x92\xd7\x11\xe7\x92\x0e\xa1\xc5\x21\x29\xc4\x78\x7f\xa6\x72\xd3\xe3\xdc\xb2\xbd\xa3\xfc\x10\x66\x25\xda\x75\x25\x20\xa8\x2d\x03\x41\xa1\x8d\xad\x88\x51\x4d\x4e\xa3\xd7\x83\x5c\x1e\xac\x94\x03\x5b\x22\x69\x40\xc9\x0e\x1f\x41\x8c\x62\x86\x9a\x12\x2c\x61\x84\x8e\xab\xf5\x9a\x99\x0d\x8e\x16\x6e\xe4\xc6\x21\xdb\x3d\x58\xbe\x05\xdb\x1b\x51\xb2\x36\x29\x8a\xed\xf7\xd8\xf1\xf7\x18\x2b\x10\xc6\x68\x5b\x76\xe0\x08\xd2\x94\xf6\x1f\x84\xf2\xb7\x83\x9d\x79\x34\x53\xbd\x87\x80\xc7\xda\x2c\x05\x85\xc6\xfe\xe7\x7a\x29\xe4\x97\x53\x7b\x35\x13\xfa\x0c\x0f\xf2\x23\x81\xb5\x86\x6f\x2b\xc9\x27\x89\x5d\xf5\xb6\xa4\x47\xe0\x2a\xef\x4f\x47\xf7\x47\x32\xd6\x81\xfc\x1d\x60\x88\x64\x7a\x0f\x83\x2f\x7f\xbb\x18\x0e\xb6\xd5\x5a\x97\x5e\xc2\x0c\x16\x30\xe7\xc2\x4e\x9c\x97\x70\xab\x7e\xbf\x85\x95\xfa\xfd\x00\x77\xea\xf7\x1d\x6c\xd4\xef\x37\xf0\xa0\x7e\x7f\x84\x29\xbf\x1d\x86\x2c\x1c\xa5\xe3\xdd\x0e\xc9\x1f\xbe\xdd\x63\xb8\xe1\xd3\x42\xb1\x03\x13\x7e\x3b\x8c\xd9\x6a\x18\x8f\xd2\x31\x43\xb1\xca\xbb\xdd\xe3\x22\x87\x52\x92\x2d\x1b\x41\xd8\xb8\xb5\x6d\xb4\xe6\x29\x86\x35\x46\x33\xde\x9c\xdb\xf6\x24\x53\xc9\x36\x39\x9f\x8c\x96\x63\x6c\xdb\x3e\x9a\xc2\x12\xef\x76\x68\xc1\x67\x43\x99\xc6\xd6\xa3\xe5\x18\xa6\xa3\xe5\x98\xdf\xd6\x2a\xd5\x65\xa6\xa1\xcc\xc4\x36\xb6\x3d\x1b\x06\x68\x01\x31\x66\x0f\xb6\x2d\x3f\x70\xbe\x18\x96\x17\x43\x6b\xeb\x0a\xe5\x90\x96\x94\x06\x0b\x25\x44\x2d\xeb\x63\x04\xde\x9a\x33\x77\xa4\xda\xd1\x47\xd0\xcd\x8e\x48\x28\xee\x1b\xe2\xac\x7a\x2c\x55\x1a\x4a\xf1\xc1\xf9\x33\xc9\xf2\x64\x1e\xa6\x94\x64\x8f\xa2\xac\x0a\x2f\x9d\x9a\x42\xf3\x95\x4f\x2e\x17\xa5\xa5\x48\xf7\x68\x81\xd9\x5d\x79\x92\x72\x28\xb5\x18\x06\xe8\xa5\x49\x55\x67\x17\x16\x98\x2d\xe0\xce\xb6\x11\x9a\x3a\x9b\x20\x4e\xd7\xfe\x72\xb7\x2b\x9e\xe5\x52\x63\x39\x81\x0b\x90\x9b\xe1\xbd\x6d\xdf\xd8\x76\xf3\x66\xb4\x1c\xdb\x76\x84\x6e\x40\x56\x80\xf1\xfe\x2c\x71\x5e\x72\x02\x89\xf3\x2d\xa7\x90\x38\x1f\x78\x07\x12\xe7\x1d\xef\x43\xe2\x7c\xc3\x49\x0f\x12\xe7\x47\xde\x96\x5f\xbe\xe7\x3d\xf9\xe9\x3d\x27\xb4\x5f\xc2\x48\x49\x8e\x86\x88\xe4\x85\xc0\x1c\x05\x49\x57\x83\xe4\x22\x14\x84\x38\xc2\xb9\xf5\x07\x2d\x8d\x1f\x32\xa3\x8f\xa6\x40\x78\x3f\xf3\xe5\xf2\xe5\x4a\xa9\xa6\xbb\x37\x18\x87\x1e\x61\xde\x43\xc0\x5f\x27\x34\xd5\xa6\x91\xb6\x6d\x4c\x24\x5f\xfb\xe9\x2d\xe7\xf2\xff\x50\xa7\xb0\xba\x42\x89\x58\x2e\x6c\x5b\xfe\x2f\x17\x90\xef\x2c\x5b\x0e\x64\x95\x0c\x1c\x2c\x8c\x70\x1d\x8e\xb9\x51\x38\xe6\x26\xc7\x31\xf4\x08\xd7\x1b\xeb\xc2\xfd\x81\xb5\xdc\x09\x7c\x53\xa8\x57\x35\x24\x97\x49\xd9\xec\x1c\xd1\x01\x39\xfc\x19\x68\xf8\xd3\x76\xcb\xb0\x4e\x20\xea\xe2\x61\x05\xea\x04\xa5\xea\x17\x1a\xbd\x21\x02\x01\xc6\x7b\x76\xa4\xb9\x32\x7b\x5e\x29\xf3\x41\xe3\x67\xc9\x0d\x83\xe4\x15\x07\xd0\x96\x34\x93\xec\xd4\x11\x91\x50\xc5\x12\x2e\xb6\xed\x3f\x81\x2d\x04\xa2\x04\x23\x6b\x1e\x6c\x2c\xfc\xd5\x78\x43\x77\x4f\xb2\xd6\x90\xe3\x90\x23\x52\xe2\x31\x5c\x70\xac\x26\x1a\x86\xeb\xe5\xb2\xc9\xb9\x60\x35\x67\x37\x23\x94\xe8\x01\x5d\x91\x69\xab\x15\x4a\xf0\x34\x4a\xa0\x9e\x46\x09\x6d\x22\x51\x42\xed\xa0\xcf\x62\x67\x61\x16\xad\xf6\xfb\xd1\x12\x05\x0b\x24\x3b\x0f\x29\x8f\x50\x0a\x4d\x17\x83\x24\x37\x20\xc0\xc5\x81\x6b\xf8\x26\xb3\x39\x74\x09\xde\xee\x25\x9d\x78\x23\x52\x2b\x08\x1b\xf1\x6e\x67\x25\xe6\xf1\x88\x64\xb3\x9e\x29\xa3\xb0\x28\xd6\x64\x5b\x6e\x6d\x59\x90\x6d\x96\x62\x6a\x54\x69\xdb\x46\xc6\xee\x43\xa5\x61\xbd\x63\x88\xc7\x88\x07\x66\x61\x24\x8f\x0b\x6d\xc2\xda\x64\x3f\x96\xfb\xe7\x2b\x16\xa6\x38\x0f\x5b\x11\xae\xef\x84\x52\x55\xb0\x26\x22\xb6\xc0\x30\x8b\xc2\x45\x70\xb3\xce\xd2\xa8\x4c\xbb\x8f\x83\xd4\xbc\x77\xe4\xbb\xea\x0c\x4b\x33\x00\xd3\x7e\x8c\xa4\x38\x79\x22\x73\xa2\x36\xa7\xfa\x32\x13\x59\x89\x9f\xea\xc0\x3a\x0a\xb9\x70\xd2\x48\xf3\x1a\xf2\x04\xc4\x28\xe0\xa1\x39\xd1\x38\xaf\x48\x55\x70\xa2\xb4\xea\xf9\xdb\xc5\x17\x0a\x37\xff\xff\x35\x7f\xb4\xe4\xcf\xfd\xf0\xaf\x69\x63\x16\x85\x1b\x11\xa7\x86\x4c\x6f\xa4\x51\x63\x15\x07\x77\x41\x1a\x6c\x44\x43\x2f\x39\x2e\xd3\xeb\xed\x03\xcd\x89\xc6\xe5\x02\x51\x8a\xcf\x52\x94\x3a\xdf\xc2\x56\xb3\x36\x4c\x91\x4a\x7b\x75\x58\x29\xa3\x54\x63\x15\x59\x43\xfb\xf8\x04\xe5\x08\x76\xd4\x19\x8f\x48\x4f\xe9\x13\x35\xfe\x8d\xcb\xc8\xb7\x20\x58\xdb\x27\xb0\x87\x40\x9d\xc7\x17\x37\x03\xeb\x15\x23\xc1\x37\x59\x5a\x2d\x3b\x93\x66\x47\xa0\xa5\xf6\x79\xa7\xcf\x3a\x6a\x26\x4e\x40\x7f\xc9\x2f\x52\x8c\xac\x75\x98\xcc\xa2\x95\xdc\xa0\x89\xb2\xf3\xd4\x82\x90\x82\x24\xd3\x86\x8b\xe1\x28\x1e\xdb\xb6\x40\x1e\xc5\x28\x84\x58\xe9\xc5\xeb\xc1\x96\xcc\x39\x12\x63\x2e\x51\xa8\xe4\x3c\x29\x23\x5d\x0a\x1e\x65\x9e\x64\x1c\xdb\x47\x08\xa3\x22\x5a\xc8\xbb\x46\x07\x18\x35\xdd\xc7\x38\xa0\x0c\x11\xb6\x50\x38\x8c\x55\x55\x86\xe6\x62\x44\xed\x04\x42\x07\x8c\x50\xa5\x8b\x7a\x04\x1f\x54\x57\xd8\xd0\x77\x4d\x24\xca\xe4\x5d\x8a\x4b\xa6\x98\xa1\x6d\x2b\x03\xf4\x63\x1e\x36\x6e\x59\xac\x11\x84\xb3\x28\x8e\x85\xd2\x02\x6e\xa2\x99\x7f\x82\x8f\x6d\xf7\xbf\xb4\xb9\xbc\x47\x36\x97\x82\x60\x7d\xc2\xfa\x0a\x6a\x3d\x2e\xac\xc9\x67\xb4\x43\x0d\x43\xd0\x36\xe0\x9f\x74\x48\x79\x7e\x47\x63\x67\x16\xad\x1e\x7e\x0c\xd2\xdb\x20\x3c\xb4\x6d\xd6\x1a\xed\xd8\x98\x0f\xf8\x3c\x40\x51\x6e\xbc\x94\x70\x99\xc9\xc7\xb0\xe6\x92\x48\xf6\x31\x2c\x8f\xec\x79\xae\xe8\xb0\x18\x1e\x1d\x67\xe6\x6b\x33\x45\xe2\x38\x77\x41\x88\x50\xce\xc9\x2e\x87\x3e\x0b\xd1\x12\x7c\x8c\xcf\xd7\xe0\x9f\x27\x18\x16\x9c\x28\xd6\x60\x7d\x99\xd8\x76\x72\xb9\x6e\xcd\x6c\x1b\x2d\xf8\x39\x81\x75\x8b\xcf\xce\x09\x24\xea\x07\x5f\xcc\xce\xcf\x1b\x57\xee\x05\x5e\xcb\x25\x8a\x86\xd1\x28\x19\xf3\x68\xb4\x1e\x33\xe3\x5d\x21\x13\x64\xe6\x85\x2c\xb8\xc8\x56\x25\x52\xfb\xa5\xed\x31\xd2\xf6\x80\x74\x08\x23\x1d\x02\xa4\x43\x19\xe9\x28\x51\xe4\x11\x5e\xf8\x73\x33\x5c\xef\x4f\x91\x4d\x6a\xc4\x83\x92\xd5\xbb\x7f\x34\x85\x6a\x9e\xfd\x2b\x52\x9a\x48\x92\x4f\x64\x24\x67\xdf\x3f\x31\xcb\x4b\x9e\xcf\xed\x7a\x18\xb1\x10\xad\x21\xc2\x17\xcb\xab\xe4\x02\xa7\xa3\xa4\xd5\x1a\x73\x91\xb3\x0b\x5f\x98\x89\x93\xb8\x8a\x74\x5c\x33\xf8\x0e\x31\x83\x6f\x7b\x5f\xe0\x72\x4b\x9c\x55\x04\xbe\xae\x2b\x81\xb5\x9c\x11\xb9\x87\x42\xb4\xce\xa7\x63\xc6\x03\xe4\xc3\x52\x59\x90\x08\xdb\x8e\x9a\x3c\xd2\x73\x78\xb1\xbc\x9a\x5d\xe0\x60\x81\x50\xc2\xd7\xa3\x59\xab\x35\xc6\x4d\x9e\xe0\x9c\x8a\x17\xcb\x44\x34\xf2\x8c\xb3\x56\x4b\xe5\x15\xbb\xdd\x4c\xee\x90\x35\xb6\xed\xf5\x68\x36\xe6\x9c\xe7\x76\x29\xf2\xdb\x6e\xe7\x9a\x19\x69\x0a\xdb\x3e\x27\xfb\xea\xb4\xb8\x8c\x74\xdc\x6c\x7a\xe4\xb4\x9c\xe4\xc2\xbb\x86\x0b\xf7\xf2\x1d\x41\x35\xcd\xa5\xa6\x49\xf2\xe1\x9d\xee\x69\x3c\xa0\x26\x84\x13\xce\x05\xac\x39\x95\x3f\x4b\xde\x96\x3f\x33\xde\x91\x3f\x0b\xde\x93\x3f\x73\xde\x55\x56\xca\x0b\xb8\xe5\xe9\x6e\xe7\x9f\x1d\xcf\xaf\x0f\xab\x62\xcf\xdd\xc1\x06\x1e\xe4\x6e\xc3\x30\xe5\x21\x7a\x90\x6c\x7a\x8c\x7c\x58\x41\x1b\xc3\x84\x47\x68\x9a\xcf\xfb\x3d\x77\xe1\x9a\x27\xc3\x5b\x94\xc2\x04\xb3\xb5\x7a\x70\xb1\xd9\x59\x17\x93\xab\xfb\x8b\x7b\x33\xa7\xf3\xdd\xee\x5e\xce\xe9\x14\xdb\x36\xda\xf0\x1b\x74\xc7\xa7\xa3\xfb\x31\xdc\xc3\x03\x06\x81\x65\x9e\x04\x5f\x8f\xee\xc7\x7c\x73\xa6\x56\x25\x58\xa0\x0d\x36\x7c\xb3\x30\x8c\x72\x26\x4b\x6a\xba\x9a\x1b\xee\x66\xdc\xf0\x9d\x7e\xef\x65\xef\xf7\x19\xb7\x7c\xad\xad\xfc\xef\xb4\x23\x80\xac\x74\x96\xad\x3e\xc9\x27\x62\x78\x4e\xd8\x72\xb7\x9b\x0d\x67\xec\x5a\xaf\x65\x75\x6b\x43\xa7\xcb\x3a\x5d\xe8\x76\x58\xb7\x03\x9e\xc7\x3c\x4f\xae\xea\x11\x2b\x99\xad\x6a\xbb\x9d\xed\x75\xaa\x97\xd5\xf3\x8a\x55\x3d\x85\xb2\x7c\x48\x60\x8d\xb7\x0a\x4f\x1b\x9b\x27\x49\x28\xcb\x9d\xbd\x94\x10\x2e\x42\xcb\x7c\xda\xe7\x7c\x3d\x5c\x9c\x13\xe6\xc2\x2d\x5f\xcb\xce\x13\xb9\xf1\xfd\x4b\x8a\xd5\x56\xbe\x50\x58\x6a\x2e\x67\x7b\x86\xb7\x09\x9f\x8d\xe6\x63\x98\xb7\xf8\xed\xd9\x34\x16\xfe\x27\x49\x4d\xcb\x37\x58\x0f\xe7\x97\x2e\x5b\x5c\xf2\xf9\x31\x21\xfd\x5e\xcc\xd7\x33\xe5\x4f\x21\xee\x56\xe9\x43\xc3\x97\x68\xbf\x71\x1f\xa4\xb7\x8d\x30\x6a\x04\x61\x90\x06\xfe\x32\xa7\xac\x54\xb3\xeb\xe1\xfc\x8a\xbb\x6c\x71\x35\xbf\x90\xd5\x63\xdd\x01\xdb\x46\x09\x4f\x51\x02\xba\x17\xb0\xc4\x39\xb6\x4b\xea\xa6\xba\xdd\x66\xed\x76\x31\xc9\x27\x09\xa4\x3e\x31\x47\x67\x60\x8e\x8e\xa2\x56\x92\x95\x98\x05\x92\x52\x39\x01\x5a\x14\x4c\xcd\xda\x97\x29\xb6\x5d\x23\x81\x46\x29\x17\xce\x2c\x0a\x93\x34\x5e\xcf\xd2\x28\xc6\xbb\x5d\xda\xe4\x9a\xf4\xb1\xed\x66\x88\x4a\x62\x13\xbc\xdb\xa1\xd4\x40\x50\x0c\x72\xf9\x6c\xdb\x38\x73\xa0\x94\xa7\xa3\x60\x2c\xdb\xc8\x73\x94\x45\xb2\x43\x55\x21\x4b\x2b\x84\xd0\x80\x79\x83\x1c\x79\x77\x4e\x12\x67\x9d\xce\x69\xb8\x50\xc8\x83\x94\x10\x18\x23\xcd\x8f\x77\x3a\xac\x23\x29\xd7\xce\xd7\xd1\x58\xd9\x2e\xee\x1b\x80\xed\xf5\xe4\x26\x1e\x8d\xb5\x4d\x3d\xf8\x7c\xbb\x3f\x94\x10\xc6\x86\x3c\x92\xd4\x4d\xc3\xc7\x05\x48\x09\xf9\x68\x0c\x01\x77\x2f\x82\xcb\x54\x79\xff\x84\xa3\x60\xcc\x2d\x7f\x64\xb5\x82\x96\x35\xb6\xce\x7c\xc9\x88\x15\x52\x8c\x97\xe0\x2b\x23\xd5\x5c\xae\xf5\x12\x59\xad\xcc\x3d\x07\x2c\xdc\xb2\xb0\x95\xcb\xb8\x64\x59\x24\x94\x88\xba\x98\x91\x5c\x40\x35\x0d\xc2\x79\x99\x5c\xc9\x68\xfd\x82\x58\x89\x34\x97\x91\xa3\x46\x20\x12\x5b\x1e\x58\x96\xc7\xdc\x97\x3b\x62\xe6\xa7\xe8\x30\x3f\xae\xb8\x95\x94\x29\xc3\xf5\x30\x41\x29\x64\xae\x4f\x10\x63\x16\x28\xf9\x9c\x28\x04\x70\xd5\xbd\x64\xdb\x68\x5d\x92\xc8\x95\x3f\xc1\x5a\xae\xa1\x39\x1d\x3d\xe6\xf5\x8a\x4d\x72\x52\xe9\xd1\x31\x42\x67\x7d\x36\x32\xee\xea\xa3\x7f\x63\xc9\x25\xb5\x9e\x65\x23\xb0\x38\x8f\x6b\x44\x1d\xf9\x08\xf7\x08\x3f\x7a\xa0\x24\x7e\xce\x06\x54\xf8\xc5\x0c\xad\xef\x73\x21\x16\xcb\xfc\x9b\x86\xd6\x9b\xf5\x72\x69\x31\x2b\x51\x7d\x29\xf8\xbf\xe8\x60\x13\x97\x04\x02\x92\x4b\x37\xc2\x80\x18\x6f\xf7\x7b\x94\x1a\x69\x84\x04\x90\x21\xc6\xc3\x88\x05\x43\x79\xf2\x98\xf5\x36\x93\x86\x20\x5f\xd1\x09\xb8\x56\x82\x99\xaa\x15\x14\x62\x58\x9a\x02\xe6\x97\x8f\x61\xc6\x1d\x75\x4e\xe8\x75\xb6\xfb\x9c\x59\x7d\x9c\x88\xc9\x64\x62\x99\x4f\x5c\x1f\xce\x49\x26\x1d\xeb\x7c\x1d\x69\x3e\x18\x60\x67\xa1\xd6\x71\x90\x09\xeb\x89\x41\x28\x92\x7e\x90\x54\x82\xa4\x28\x13\x2e\x50\xaf\x2f\xb7\xae\x40\xfd\xae\xa4\x90\x04\xea\x7b\x12\x83\x48\x7e\xa9\x2d\x71\x88\x40\xdd\xbe\xc4\x1e\x02\x0d\x3a\xd8\x59\xf8\x49\xfa\x37\xf1\x00\xb7\x0a\x33\x0d\x30\xac\xf8\x62\x68\x4d\x12\xb9\x38\xc1\x6f\xc2\x82\xbb\x3a\xcf\x00\x08\xf9\x5c\xe2\x28\xc9\x84\xbe\xb4\x24\xc7\x83\x0b\x6f\xe5\x60\x14\x8e\x15\x25\x1e\x73\xe1\x4c\x16\x17\xf1\x45\xcc\x63\x27\x94\xc8\x3d\x76\x3e\x95\xb4\x50\x71\xf9\xac\x6e\x6f\x44\xfa\xbc\x80\xb6\x55\xa1\xd1\x1a\x96\xba\x65\x39\x8e\xb2\xb1\xba\x64\x89\x90\x80\x19\xa4\x60\x4d\x02\x0b\x83\x70\x26\x29\x4f\xe5\x4f\xc0\x43\xed\x48\x2d\x5f\x16\x99\x07\xb5\x70\x26\xcb\xfc\x79\xb4\x1a\x73\x17\xb4\xa8\x2c\xb6\xed\x04\xc5\xb0\x06\x31\x5a\x8e\xe5\xe1\x2c\x4e\x74\x80\x66\x25\xa9\xf8\x56\x19\x67\xb3\x5a\xb7\xa3\x5b\xe3\x6e\x86\x41\x8d\x3d\x90\x0b\x26\xa7\x20\xbc\x08\x79\xe8\x84\x38\x74\x62\xde\x74\x21\x74\x56\xb6\x8d\x42\x67\xc5\x43\x67\xe5\x84\x39\xe2\x30\x0c\x48\x3c\x0a\x9d\x60\x7c\xa6\xba\x7d\xdc\xdf\xbd\xc9\xc6\x0e\x4f\x60\x5c\x6a\x3e\xe4\x77\x48\x82\x18\xb9\x42\x61\xee\x83\xe2\x84\x10\xc9\x26\xcf\xb2\x86\xd4\x62\x39\xc1\x18\x4c\xc7\x22\xdb\x46\x91\x13\xf2\x00\x43\xa0\x1c\x46\x57\x3c\xc2\x10\xcb\x8e\x48\xa6\x16\xa9\xa7\x40\xa5\x2c\xf3\x94\xa5\xca\x33\x5a\x8d\xcf\xcf\xf7\x99\xb8\x3c\xdc\xc3\x22\x8a\xaf\xfd\xd9\x6d\xa5\x9b\x79\x07\x0b\x17\x52\x08\x79\x24\x59\xc3\x43\x66\xb0\x9e\x87\x69\x63\xb9\x99\x86\xb1\x13\x32\xed\x68\xb6\xb8\x50\xe4\x4e\x88\x62\x67\x03\xb1\xf3\x49\xb9\x0c\xe1\x8b\xd8\xb6\x63\x27\xbe\xc0\x72\xe7\xad\xf6\x70\xeb\x27\xec\xf8\x5c\x36\x9b\x77\xa8\x98\x32\x81\xf7\x7b\x0c\x0b\xdb\x8e\x2b\xcb\x6d\x8e\xc1\x09\x39\x6e\x5e\x7c\xb4\x1a\xcb\xe2\x33\xe5\xbd\x71\x24\xf1\x34\x72\x37\x88\xf8\x9d\x3a\x45\x39\x53\x39\x8c\x9c\x0d\x8f\x19\x52\xcb\x1c\xf1\x6d\xc0\x02\x79\xb2\x94\x50\xf4\x13\x4b\x61\xc3\x62\x58\x31\xb5\x8b\x96\x10\x66\xb3\x10\xab\xe8\x08\x72\x7f\x28\x97\xce\xc9\x42\xae\x40\xa8\xb6\x54\x28\x1f\xe5\x46\x69\xb5\x40\x1f\x4d\xb9\x90\xea\x54\x06\x63\x1e\x61\x0c\x62\x0f\x37\x22\xbd\x0e\xd3\xf8\x81\xdd\x41\x22\xd2\x0f\x69\x1c\x85\x37\x47\x7d\x5e\xab\x87\x83\xc3\xa6\x27\x3d\xe5\xb7\xda\x03\x59\xbf\xe6\x9e\xdc\xf9\x56\xdd\xe3\x8a\x07\xc5\x81\x5f\xde\xe4\x13\x18\x07\xb7\xc9\xf2\x22\xb5\xed\x54\xae\x54\x2a\x11\x5d\xc5\x35\x73\x92\x66\x9e\x80\x93\x25\x4f\x79\x3a\x4c\xf3\x55\x4f\x9d\xc9\x02\x0f\x97\xc8\x05\xeb\x93\x78\x90\xa8\x4b\x0c\x53\xe7\x13\xd3\x82\xdd\xec\x7d\xc3\x46\xa9\xdc\x11\xce\x66\x8c\x19\xca\xba\x9e\x31\xbc\x48\xf9\x3f\x41\x3c\xb4\x8c\x19\x8e\x95\x17\x87\xa6\x72\x97\x82\x99\x22\x9a\x24\x46\x20\x1e\x23\xc4\x03\x42\xdb\x8c\xd0\x36\x90\xce\x80\x91\xce\x00\xda\x1e\x6b\x7b\x86\x25\xe8\xf6\x59\xb7\x0f\xbd\x3e\xeb\xf5\xa1\xdf\x65\xfd\x2e\xf4\x3d\xd6\xf7\x60\xd0\x61\x83\x0e\x0c\xfa\x6c\xd0\x87\xc1\x80\x0d\x06\xfb\x31\x74\xbf\x52\x5a\x20\x41\x7c\x68\x20\xf5\x8d\x48\x7f\x14\xfe\x27\x05\xfb\xdb\x7d\x0d\xfa\xfb\xa4\x1e\xf4\x4b\x9e\x43\x82\x7e\x8f\x18\xd0\x2f\x21\xfb\x82\xaf\x51\x57\xf1\x0d\xa8\x87\xe1\x96\xbb\x12\xd6\x1f\x23\x2b\xb9\xd5\xf4\xb6\xd2\x1e\x17\x77\x78\x5f\x46\x02\x66\x0f\xf8\x7c\x34\xde\xc3\xa6\x9e\xe8\x5c\x20\xe1\xf8\xb5\x5e\x13\x62\xe4\x4a\x46\x3a\xdd\x63\xbc\x3f\xbb\x2b\x51\x39\xd5\xf3\x95\x13\x68\x1b\x7d\xbe\x34\x20\xcb\x11\x47\x3a\x22\xe3\xd3\x87\x3a\x2f\xb3\x97\xbb\x9b\xd5\x61\xee\xa2\xda\x78\x18\x8f\xc8\x98\xa7\x7a\x63\xf9\x9a\x51\x1c\x09\x48\xc7\xf8\x24\xa0\x4d\xe5\x11\x55\xd9\x4b\x63\x2c\x46\x9f\xea\x31\x8a\x02\x83\xfc\x6b\xe6\xec\xeb\x2b\xff\xf8\x99\x40\xa9\xa4\x2f\x9b\xcd\x7f\x95\x64\xff\x57\xe2\xc0\x20\xd3\xbd\x2f\xea\x71\xe0\xa2\x16\x07\xde\xb6\x5a\x15\x9c\x57\x41\x76\x01\x88\xd1\xfa\x00\xd9\xc5\x68\x51\x46\x76\x35\x53\x20\xa9\xfb\xa8\x50\x2b\x34\x89\xd9\xaf\xf2\x63\x26\x11\x91\xb4\x5f\x3c\x5c\xa1\x59\x06\x1f\xb1\xa3\x6b\x42\x02\xb3\xd8\xb6\x97\x28\x03\x19\x01\xb6\xed\x1c\xef\x99\xa4\x9a\xc5\xfd\x93\x8d\xde\xfa\x49\x4d\x8b\x0a\xd0\x9f\x86\xd4\x11\x0f\x91\x92\x7c\x34\xdd\x4a\xdd\xd1\x70\xa5\x68\x38\x91\x2a\x95\x3b\x8b\x46\x72\x8a\xb5\x9a\x11\xd6\x8b\x24\x8d\x62\xc1\x56\x15\x78\x51\x81\x13\xed\x3e\x6b\xf7\xa1\x43\x59\x87\x1a\x38\xe1\x11\xe6\x11\x4d\xc3\x6b\x38\x21\x61\xc3\x91\xfc\xac\x16\x36\x78\x46\x96\xd6\xa3\x19\x39\x68\x60\x82\x02\x1a\xbe\x06\x1a\x15\xa0\x20\x81\xc4\xd2\x00\x0d\x09\x14\x7a\x1d\x4d\x0e\xf6\x7b\x9a\x1c\x24\xb4\x83\x15\x1d\xe8\x9d\x14\x37\xc1\x0a\x94\x60\x48\xcf\xd3\x94\xc7\x23\x31\x86\x1b\x3e\x85\x09\xdf\x0c\x95\x46\x8e\x59\xfe\x7c\x6e\xc1\x3d\xbf\xb1\xed\x9b\xd2\x46\xba\x96\x9c\xe2\x87\x63\xae\x81\xdf\x2b\x1f\x53\x74\x0f\x02\x2c\xbd\x0f\x2c\x1d\x01\xe1\xd6\xd7\x70\xbc\xe6\x88\x23\xc9\x80\x2b\x95\x90\x44\x1e\xda\x72\x48\xae\xb8\xe6\x38\x5c\x26\xf0\x9e\x29\x55\x61\x7d\xf9\x46\x56\x7c\xa8\x0f\x05\x3b\x59\x87\x1c\xcb\x89\x3a\xea\xcb\xa8\x2d\x56\x51\x4a\xc7\x8f\x97\x80\xd8\x94\xc1\xfb\x7a\xa5\x5a\xe3\xc6\xb6\xd1\xc3\x6e\x77\xef\x18\x82\xca\xb6\x9b\xb3\x8a\x4e\x1a\x49\x28\x7d\x83\x33\x6b\x52\x84\x9d\x50\x7c\x4e\x91\x3c\xd4\x58\xcf\xf2\x5b\x05\xc8\x6f\xe0\x33\x7f\x3b\x9a\x8c\xd1\xc3\x70\xbb\x67\xe7\x2e\x10\xdc\xe4\x6f\xe1\x19\xaf\x56\xf7\x56\x1d\x1a\xa2\x9c\x3c\x3f\xf2\x05\xaa\x80\x71\x55\x0f\x52\x00\x03\x3e\xf1\xe6\x83\x6d\x57\x0b\x17\x98\x5e\xb7\x98\xf2\xee\x45\x7a\x7e\x7e\x81\x85\x6c\x38\x2d\x48\x9f\xa6\x50\xcd\x9c\xbb\x0a\xf6\x7c\xdc\xed\x10\xba\xe1\x69\xa9\x2e\x43\x83\xa4\x70\x23\xc1\xb4\x96\x1f\xdc\xaa\xa1\x4e\x21\x85\x9b\x1c\x5e\x55\x00\xda\x06\xc2\xd1\x64\x0c\x21\x86\x50\x8e\xbe\x84\x5f\xee\xe1\xbe\x2c\xcc\xe1\x37\x18\xd0\xb3\xdd\xee\x93\xe4\xb6\x3f\xa0\x6c\xe7\x61\xf8\x80\xd4\xc6\xc3\xb0\xb1\xed\x0f\x5a\xdf\x8c\x31\xa0\x4f\xbb\xdd\x67\x2c\x53\x26\x18\x1e\x6c\xfb\x5e\x7b\x68\xe6\x90\xcb\xbc\x6b\xf1\xe2\x0d\xbf\x73\xaa\x80\x1c\xa5\x20\x60\x03\x13\x0c\x11\x2a\x1f\x8a\x15\x06\xdf\x79\x73\x7d\xfd\x82\x37\x33\x59\x72\x63\x8e\xe4\x80\xe1\x7a\x24\xc6\xfc\x06\x42\x14\x3a\xdf\xb6\x42\xe7\xc7\x56\xe8\xbc\x7c\x82\x6e\x9a\x7c\x8a\xe1\x1a\xc3\xc3\x6e\x77\xe7\xe4\xb4\x9b\x2c\x02\x1b\x0c\x37\x15\xd8\x43\xfa\x8c\x90\x3e\x10\xda\x61\x84\x76\x0c\x0c\xea\x51\xd6\xa3\xd0\xeb\xb0\x5e\x27\x83\x41\x2e\xf3\x5c\xf0\xba\xcc\xeb\x1a\x48\xd4\xef\xb1\x7e\xaf\x80\x47\xf4\x4b\x6a\xa8\xfe\x23\x6a\xa8\x3e\x23\x92\x85\xee\x1e\xc9\x49\x4f\x71\xb9\x5a\x56\xf1\x88\x61\x63\x80\xb7\x4a\xb4\x24\x86\x85\x2d\x88\x0b\x01\xc6\x4c\x29\xf2\x03\x3d\x07\x3d\x46\x48\xaf\xa0\xb7\x3a\x5f\x1a\xc3\xe0\x91\x31\x28\x43\x22\x25\x74\x91\x55\x1d\x49\xe3\x6a\x47\xd2\x53\x42\xfd\x17\x7e\x5a\x32\xa8\x92\xbb\xe2\x63\x70\x27\x20\x38\xfc\x90\x46\xaf\x3e\xbc\xd5\x92\x04\x88\x6a\x89\xb2\xab\xc1\x50\x30\xcb\xb5\x5a\xa2\xcc\x34\xc7\x35\xc6\x29\x96\xdb\xee\x77\xcf\x5d\xef\x9c\x76\x3f\xba\x1e\x73\x7b\xac\x3d\x70\x06\x83\xc1\x3f\x5b\x4d\x1e\x68\x10\x24\x4f\x91\xec\x01\x3a\xef\xba\xa5\x3f\x45\x10\xe3\xdd\xae\x59\xad\xf6\xb0\xd0\x1b\xff\x8d\xca\x38\x2c\xe7\x59\xa0\x66\x90\xbc\x0c\xc2\x20\x15\x28\x2c\x00\x1d\xce\x54\xd0\xef\xfd\xf0\x26\x13\x2b\xbf\x0a\x37\xfe\x32\x98\x37\xd2\xe0\x2e\xd7\xcb\x97\x22\xb8\x40\xca\xd5\x54\x7d\xff\xf1\xf9\xcb\xf5\x72\xf9\x93\x76\x85\x8e\xf3\xc4\xd7\xc1\x72\x19\x24\x62\x16\x85\xf3\x44\xc5\xde\x4a\x2f\xdd\xa1\x75\x6e\xb1\xf4\x6a\x30\x18\x0c\x86\x56\xcb\x62\x96\x95\x33\xef\x2d\x64\xa9\xd1\x59\x2d\xa5\x47\xf4\xa7\x09\x92\x94\x81\x96\xc4\x04\xc3\xf3\x1e\x3b\xef\xe0\x96\x75\x6e\xb5\x22\x94\x37\x11\x85\xe9\x2d\xc2\x2d\x72\xf8\x41\x4d\x00\xc6\x2d\xeb\x63\x39\xf5\xef\xa3\x75\x9c\xa8\x64\x56\xa9\x25\x08\xd7\xa9\xa8\xf9\xf0\x21\xeb\x3c\x6e\x59\x8e\xd5\x42\xf1\xd5\x60\x30\x8c\xd5\xf2\x46\x28\x96\xa9\xff\x6c\xed\x59\xb0\x87\xad\x3a\xa8\x72\xd7\x7d\xa5\xb8\x36\x93\xf5\x75\xda\x8f\x58\x3a\x67\x62\xb7\x26\xe7\xc2\xb6\x0b\x2b\x02\xf5\x66\xbc\x4e\xd5\xeb\xb1\x46\xe0\x55\xae\xba\xbe\x0d\xc2\xb4\xd0\x59\x87\x28\x13\xa5\x16\xd5\x09\xad\x62\xef\xb4\x19\xe9\xb4\x35\xf1\x23\x47\xf2\x55\x8a\x76\x6d\x24\xa4\xc4\x85\x35\xbd\x30\xd6\x1e\xfe\x72\xd9\xb8\x13\xe9\x6d\x34\x6f\x44\x61\xa3\x61\xb5\xc4\x91\x0e\xbd\xfb\x25\x1d\x3a\x75\x4f\x1f\x7c\x6d\xff\x93\x2f\x41\x8d\xb5\x54\xb5\x2a\xf2\x48\x55\xca\xba\x4b\x83\xda\x4c\x64\xdb\x7b\xc4\x94\xc8\x2a\xe1\x2a\xa8\x1a\xe0\x41\x90\xbc\xcb\x00\xc7\xdb\x05\xac\x4c\xf2\xab\xe4\x3a\xb7\x34\x82\x34\xfa\x2e\x9a\xf9\x4b\x61\x40\x4a\x26\xa5\x04\x63\x9c\x63\x65\x61\xba\xc0\x32\xe6\x7f\xbd\xd3\x4a\x5b\xd7\xf0\xa0\xc4\xed\x18\x4a\xd3\x3d\x69\x46\x9f\x49\xd5\x05\x56\x82\xa6\x85\x76\xe6\xcf\x88\x02\x1f\x12\x2e\x69\x78\x58\xf3\xc0\x59\xc0\x92\xbb\x17\xb9\xb8\x67\x79\x81\xd7\x99\xe5\xa0\xcf\x93\xd1\xb2\xd5\x1a\x2b\xea\xce\xc4\xe7\xaa\x2a\x9f\xdd\x0e\x23\x6e\x07\x88\xeb\x31\xe2\x7a\x40\xdc\x3e\x23\xae\xdc\x5d\xbd\x93\x5a\xd6\x8c\x5e\xee\x66\xea\xb8\x4c\xc9\x2a\xe9\x66\xdf\x88\x51\x1f\x35\x76\x36\x66\xce\x2f\x8d\x99\xf3\xb7\xc6\xcc\xf9\x83\x31\x73\x7e\x67\xcc\x9c\xbf\x81\x29\x5f\x0d\x63\x76\x37\xd4\xc6\xcb\xca\x86\x99\x6f\xf7\xb8\xd6\x9a\x19\x6e\xf8\xaa\xc6\x26\x7a\xc2\x4b\x74\xc2\x6e\x57\xa6\x1a\xe4\xf7\xc2\x06\x7a\x55\xd8\x40\x2f\x38\x42\x33\xde\xbc\xb5\xed\x69\xc9\x0c\x7a\x3a\x5a\x8e\xf1\x70\xca\xd6\x78\xb4\x1c\xc3\x9c\x4b\x92\x6d\xe8\x6b\x9b\xe6\xcd\x09\xd3\x5e\xbf\xce\xb4\x77\x6a\xdb\x11\x9a\xc2\x12\xb4\x01\xef\xf7\x18\x6e\x46\xcb\x71\x93\x2f\x6c\x3b\x50\xf6\xbb\x73\x45\x34\x4d\xb2\x44\xa4\xcc\xa5\x17\x78\x7f\x16\x3b\xb3\x28\x16\x3c\x84\xff\x16\xb6\xbd\x86\xaa\x51\x4e\x2f\x99\x32\x56\x53\x30\xc6\x7a\xa8\x77\x52\x25\xab\x35\x20\x77\x7e\x3a\xbb\x7d\x5c\x37\xc8\x9f\x3a\x4f\x55\x64\x2b\xeb\xa9\xf3\xd4\x1a\x89\x31\x4a\x33\x43\xc4\xb0\xa2\x94\x48\x47\xf1\x98\x37\x09\x34\x8f\x33\x06\x78\x9b\x79\x31\x54\xac\x9c\x64\x0f\xbf\x44\x8d\xd0\xf6\x23\x90\xc4\x58\x88\xf6\x1e\xa7\x43\xb4\x1f\x72\x49\x92\x64\x30\x83\x67\xb6\xbf\xa4\x4f\x94\xf2\xc0\x30\x8b\x72\x6e\x14\xb7\x48\xa8\xab\xec\x44\x4a\x6a\x54\x58\xf2\x66\x50\x21\x09\x34\xb2\x96\xb3\x94\x0b\x8d\xc4\x67\x31\x3b\x8e\xc4\x34\x2a\x62\xc1\x3a\x37\x71\xb4\x5e\x25\x7c\xeb\x33\xcb\xb3\xf6\x92\x67\xb6\x3c\x89\x66\x2c\xcb\x89\xc5\x6a\xe9\xcf\x04\x12\x60\xfd\xe5\xd2\xbf\xd2\x11\x66\x6a\xaa\x7b\x8a\x86\x0c\x3f\x55\x04\x82\x6c\xef\xec\xb8\xd9\x9c\xd7\x3a\x61\xf2\xae\x27\xc4\xf2\xa7\x19\x0c\x2c\x70\x06\x55\xd1\x8d\xb2\x80\x96\x96\xaf\xa2\x1d\x8d\xdc\xb1\x6d\x5b\x53\xfd\x4c\xc6\x7b\x74\x92\x2e\x5d\xe8\x4e\xce\xb9\x2f\x41\xdc\x6d\xdd\x94\xa5\x7c\x5b\x18\xdd\x8f\xe6\xe3\x9a\x8e\x7b\x7b\xf0\x9a\xdc\xca\xf6\x12\xc6\xb0\xe2\xb7\xc3\xda\xba\x9a\x04\x62\xfe\xd4\x7f\x5a\x04\x4c\x3d\x35\x19\x4a\xe7\xb0\x5e\x2e\xf7\x60\xa9\x41\xcb\xd1\x08\x25\xbc\x2f\xb3\x44\xdb\x3d\x54\x12\x46\xeb\xba\x0e\xc6\x7b\x0c\xf1\x68\x3e\x46\x96\x85\xa1\x99\xee\x71\x66\xe8\xa1\xcc\x3a\x6f\x77\xbb\xe6\x4a\x05\x07\x54\x0b\x6a\x1a\x6a\x2e\x77\xbb\x4a\xcb\xcd\x99\x1e\xc4\x9d\xdc\x43\xa3\xf9\x18\x36\x7c\x81\x22\x98\x83\x1a\xf8\x61\x38\xa2\x8a\xa7\x50\xaa\x47\xc9\x79\x32\x94\xac\x70\x30\xdc\xce\xa3\x50\xb0\xa6\x6b\x6c\x66\xef\x2a\xde\x47\xec\xe0\xab\xf1\x33\x8a\x95\x79\x60\xfe\x95\xec\xe5\x44\x3f\xf0\xcd\xc8\x1d\xc3\x94\x6f\x46\x64\x7c\x16\xa3\xcc\x11\x30\x07\xd5\x02\x1e\x30\x84\xe8\xbd\xb8\xb9\xfe\xbc\x2a\xa5\xcf\x81\x72\x9e\x0e\x6b\x45\xa1\xd3\xdc\x1c\x5e\x8b\xa4\xf6\x35\x22\xcb\x6a\x26\xbc\xcf\x64\xce\x19\xff\xe6\x32\x42\x5d\xc8\xb4\x92\x99\x73\x71\xd7\x63\x5d\xcf\x70\x72\x39\xec\xfb\x6a\x32\xb1\x6e\x17\x67\xa7\x2c\x23\xe5\x52\x5e\x90\xd1\xc2\x78\xf9\xd9\x36\x4a\x5b\xdc\xba\x51\x62\xc6\xe0\x26\x8c\x62\xf1\xdc\x4f\x84\x49\xd6\xd2\xc7\xbb\xf5\x32\x0d\x96\x41\x98\xa5\xde\xa9\xd4\x75\x18\xcc\xa2\x79\x96\xb6\x56\x69\x49\x1a\xcc\x3e\x3d\x98\xa4\x07\x0b\x83\x42\xef\x19\xa9\xd8\x3b\x22\x15\xeb\x25\x61\x83\xaa\x8d\x82\x32\x9b\x2a\x2b\x46\x35\xdc\x0f\x92\xe7\x4a\x75\xff\x61\x15\x0b\x7f\x2e\xc9\xa4\x5a\x24\xa0\xbc\x67\x12\x58\x43\x8e\xf5\x0b\xa9\x86\x92\x7e\xf1\x19\x3c\x70\x17\xa6\xbc\xd9\x9c\x4b\x94\x38\x87\x5b\x68\xe3\x8b\x87\xcb\xa5\x36\xb9\x79\xd0\x46\x63\xf2\x71\xc5\xa7\xc3\x29\x5a\x8f\x1e\xc6\xf0\x00\x09\x66\xea\xe9\x4e\x1e\xdc\x10\xad\xb0\x6d\xa3\x3b\x9e\xe3\x69\x74\xc7\x57\x23\x7f\x8c\x87\xcd\xe6\x1d\x8b\xd1\x0a\x63\xb8\xb3\xed\xc5\x95\x8b\x37\x5c\x77\x69\x05\x01\x5a\xe5\xe6\x3f\x1b\x58\x9c\x13\x7c\x4e\xce\xb2\xd8\xa6\x9b\x2b\x3e\x70\x5d\x8f\x0c\x06\xb4\xdb\xf1\x3a\xee\x60\x40\x8e\x28\x67\x7c\x96\x8e\x36\x63\xbe\xda\x6f\x5a\xad\xfd\x43\xab\x95\x59\x4f\x6c\x2a\x46\x38\x66\xa3\x19\xe4\x5a\xb1\x45\xe9\xd5\xd0\xd3\x99\xcb\x40\xd7\xd0\x87\xfd\xb6\x9e\x7e\xcf\x10\x56\x92\x29\x49\xb2\x75\x59\xab\xf5\x68\x4b\x9c\xb2\xdd\xc3\x8c\x6f\xf7\x17\xa8\xec\x28\x73\x70\xf2\x17\x30\xd7\x0d\xdc\x66\xa2\x47\x3e\x1f\x1e\x03\x25\xb1\x67\x6b\x09\x75\xa7\x3c\x44\xb2\x50\x3a\xa4\x8c\x60\xb8\xe1\xee\x59\xbd\x77\xe9\xc3\x63\x8e\x9e\x41\xaa\xc9\xe8\xa6\xa5\xa3\x51\xa1\x07\x63\xc5\x72\xcb\x13\x94\x85\x8f\xc4\x17\xb7\x57\x37\x17\x37\xc6\xb0\x6d\xc3\xd3\xe1\x14\xf9\x68\xc5\xc5\xe8\x66\x8c\x25\x1c\x59\x8d\xc8\x18\xb3\x29\x52\x09\x98\x73\xbe\xdc\xed\x36\x9c\xf3\xcc\xf4\xac\xb1\x29\x0c\x0f\xef\xf8\x43\x66\x22\x70\xd1\x44\x2b\x7e\x67\x44\x78\xd8\x91\x00\xea\xc2\x34\x11\xa0\x3b\x98\xc2\x4a\x9b\xd8\x43\x7a\xa2\x52\xec\x7c\xf3\xfe\xfa\xd9\xdf\xf8\x12\x62\xe7\xfd\xf5\xc7\xef\xdf\xbf\xe1\xb3\xca\xea\xb6\x19\xe9\x1a\x7e\x2c\x5b\xe3\x3e\xf3\xfa\xd0\x6f\xb3\xbe\xa2\x2c\x8e\x2c\x12\x2a\x0e\xbf\xb4\x87\x91\x15\xfa\x69\xb0\x11\xe7\x59\xb6\xf3\x34\x3a\x37\x4c\x25\xe4\xa4\x63\x6e\xc8\xaf\x0c\xad\x7b\x8c\x28\xe7\x2b\xcf\xfd\x12\xf1\xd3\x79\x84\xf8\x31\x76\xf7\x1e\xf9\x52\x25\xdd\x47\x2a\xe9\x32\xda\x95\x95\x7c\x49\xb0\x45\x1f\x33\xde\x37\x12\x26\xe5\x53\x66\x74\x7f\x99\xb4\xc9\x3b\x49\x81\x7a\x6e\xe1\xf8\x59\x16\xe3\xd8\x76\x9c\xa7\x1b\x6f\xce\x3d\x6c\x15\x5d\x2b\xeb\xfb\x22\xbd\xf8\x88\x21\xb8\x76\x5f\xd1\x1d\xec\x0e\x58\x77\x90\x33\xb4\xde\x49\xbb\xb2\xcc\xac\x8e\x50\xaa\xd4\x1d\x8f\x88\xe2\x94\xbe\x04\x7c\x9e\x96\x29\x87\x0c\x69\xf8\x5a\xfd\x5c\xc3\x63\xf8\xb6\x8d\x22\xee\x97\x4c\x9b\x54\x4c\xcc\xfc\xd5\xb6\x63\x14\x61\xdb\x0e\x6d\x5b\x36\x15\x65\x7e\x39\x94\x32\x42\x69\x0e\x8e\xbc\xaf\x72\x31\x2f\x83\xa9\xdc\x32\x29\xce\x5c\xa0\xd3\x53\x6e\x98\x43\x81\x70\x4e\x30\xe0\x43\x87\xcc\xa1\x40\xe9\xc8\x1d\xe3\x12\x49\x21\x5f\x0f\x1d\x34\x4d\x36\x48\x15\x34\xa8\xe4\xd5\x69\x07\xfe\xd1\x95\x02\x90\x8e\x68\x6d\x29\xfd\x41\x17\xed\x9c\x2e\x0a\xe9\xa8\x7d\xba\xbc\xfe\x7a\xe8\x24\x1a\x17\x8e\x7b\xde\x63\x36\x65\xa5\x3d\x61\xec\xb0\xac\xdf\x2c\xc5\xd8\x1e\x89\x23\x50\xee\x19\x56\x43\xfc\x58\x1f\x32\x1b\xb0\x18\x09\x3c\xcc\x03\x8a\x5b\x98\xe5\xf6\x5d\x65\x57\x15\xef\x84\x31\x96\x40\xfd\x8a\xa1\x5b\x90\xc7\x36\x80\xe0\xc8\x5f\xe5\x51\x6b\xad\x22\xa2\xb6\x22\x91\x55\x59\x1d\xe2\x39\x18\x85\x4a\xb3\x8b\xcb\x56\x62\xfd\x3e\xeb\xab\x8e\x9d\xf4\xd2\xaf\xce\x56\x25\x8e\x6b\xd5\x28\xd1\xcc\x88\xfa\x62\x26\xa4\x3c\xf4\xfe\x91\xc0\xa8\x7a\x60\x95\x7c\x73\xb1\x8c\xa2\xf8\xd1\x01\x2a\x9f\x30\xdb\xce\xc5\xb5\xf2\x45\x7e\x56\x3a\xeb\x3d\x6c\xb3\xc3\xd5\xff\x22\x90\x7d\x44\xf0\x9f\xf9\x58\xf5\x4f\x0a\x64\x32\x20\xd3\xe9\x97\x6d\x77\xbf\x82\x3b\x2f\x34\xd5\xca\x56\xb2\xa0\xa0\x52\x2e\x46\x81\xa2\xa0\x52\x66\x69\x2a\xdd\xe2\x4a\x43\x8c\x8f\xcc\xfa\x72\x10\xd2\x3f\x6d\xc1\x7d\xd2\xfb\x4a\x33\x24\x25\x39\x40\x30\x4c\x51\x8c\x42\x85\xf7\x43\x75\xd2\x53\x14\x66\x92\x00\x3f\xd3\x2a\x0b\x47\x67\x37\xee\x6b\x79\xc7\x23\x05\xed\x72\x37\x37\xf0\xf7\x65\x2a\xb8\x7f\x64\xfd\x5c\xaf\x3a\xe9\x17\xaa\x13\x3d\x9f\x54\xb1\xf8\xdb\xfd\x99\xf6\xc8\x8a\xa0\xe6\x68\xd4\x18\x7c\x6a\x6d\x64\xbd\xe7\x16\xa4\xe0\xe3\x6d\x49\x73\xc1\x63\x14\xc1\x56\x12\x2b\x2c\x44\x04\x7c\xbc\xc7\x10\xc8\x7c\x2d\xab\x51\x8a\x2e\x52\x42\x98\x99\x3a\xaa\xe2\xf4\xa5\xcd\x63\xe4\x60\xbf\x4e\xbb\xd2\x1f\x9c\x50\x7e\x7b\x54\xd3\x9c\x7d\x43\x73\xf6\x3b\x86\xe4\x94\x93\xb1\x54\xc2\xcb\xae\x31\x89\x39\x9c\x8a\x05\x6f\xa2\xd1\xd8\xf9\x24\x1e\x12\x15\xa6\xf9\x73\x6a\x05\xa1\x49\x40\x18\xc3\xbc\x8e\xb3\x96\x73\x75\x6a\x93\xdc\x16\xda\xf2\x04\xdd\x42\x0a\x2b\x2d\x8f\x99\xc2\x0d\x4c\xe0\xfe\x28\xfe\xc8\xc2\xb6\x85\xe4\x1d\x3e\x67\xb4\xdc\xe7\x91\x18\x9f\x55\x9d\x1f\xb4\xb9\x13\x53\x8f\xc6\x58\xe9\x28\xb2\x46\xd9\xf6\x3b\x33\x50\x13\x8f\x85\xd4\x38\xc8\x07\xd7\xbc\xb2\x7c\xf0\x81\x17\x76\x55\x77\xf0\x56\xf2\x2f\x9f\x2b\x81\x02\x9e\xf1\xcf\xa3\xd9\x78\xb7\xfb\x3c\xb2\xfe\xee\xef\xf2\x29\x1d\xef\x76\x77\xb6\xfd\x79\x74\x37\x86\x8f\xfc\xd9\x6e\x77\x8f\xee\x30\x7c\xe2\x77\xc3\x0f\xc3\x7b\x94\x1b\x5d\x61\xf6\x31\x33\x6b\x7b\xcd\x73\xd0\x97\xda\xf6\xe7\x4c\xa1\xbd\xdb\x3d\x93\x64\xf8\x6b\xdb\x46\x13\xbe\x44\xaf\x0b\x75\x94\xc0\x58\xd2\x0d\xc6\xeb\xb8\x44\x3c\x4c\x14\xfd\x6c\xdb\x68\x8d\x26\x70\xad\x6c\xb9\xe2\xdd\xae\x86\x0e\x99\xa8\x7e\x47\x68\x02\x33\x98\x63\x0c\x1f\x6c\xfb\x99\x6d\x67\xc3\x6d\x72\xfe\xcc\x09\xfd\x3b\x89\x08\xde\xf2\xa6\x0b\x1f\x6b\xf6\xc0\xb3\x92\xb6\x6b\xaf\x2e\xe5\x68\x3e\xec\x76\x72\x35\x9b\x6f\xe5\xf0\x75\x03\x9f\x61\x06\x1f\x31\x28\x13\xf7\x8f\xe0\x8f\xae\xc7\x7c\x0e\x77\x92\xb0\x9f\xf2\xad\x6e\x8e\x7d\x18\x7e\x64\xf7\x28\x6b\x1c\x83\x5c\x6b\xb6\xd1\x89\x6a\xdd\x31\x98\x29\x61\x9f\xf6\xf0\xa0\xe4\xea\x37\xda\x9d\x46\xfd\x7c\xde\xed\x02\xf4\x19\x6e\x60\x2a\x59\x0e\xed\x40\x13\xa2\xd0\x79\xa7\x95\xc7\x8b\xdd\xee\x2d\x86\x14\xa6\xb9\xc4\x6b\xaa\x85\xe9\x5d\x46\xdc\xee\x91\xbe\x38\x3b\xa0\x5a\x63\xac\x8f\x69\xbf\xc3\xfa\x1d\x8d\xf1\xa0\x3f\x60\x7d\x49\xed\xf6\x4f\xba\xf7\x1f\x1d\xb1\x90\x37\x89\x92\xab\x6a\x7b\xd4\x91\x37\x1e\xc5\x63\x84\xcf\x02\x03\x18\xcb\xb3\x1b\xaa\x40\xa7\x26\x72\x57\x1c\xdd\xa1\xa0\x02\xac\x34\x08\xa5\x7b\x9c\x41\xd9\x08\x6f\xf7\x8f\x39\x42\xa7\xb6\xdd\x0c\xab\xd6\x43\x41\xb9\x3b\xbe\xec\x0e\x24\xdc\xd7\x5d\x4a\xd4\x0e\x3a\x5e\x6e\x2d\x31\x0a\xb4\xe7\xaa\xcc\x5b\xb3\x23\x92\x3d\x08\xe4\x97\x3b\x96\xa1\x89\xaa\x1c\xb8\xff\x95\x3e\xa7\x79\xdb\xc6\x2b\x1c\xb4\xd4\xaa\x29\x32\xf7\xf0\xfe\x23\xd1\x02\xb6\x59\x9e\x47\xb8\xba\x26\xd1\x79\x06\x27\x08\x0c\x45\x58\x88\xcf\xab\x3b\x52\x82\x75\xcd\x78\xb7\x8b\x11\x71\xf1\x15\xa5\x2e\xed\x3a\x9d\x5e\xd7\x1b\x74\xfa\x6e\xcf\x23\x7d\xf3\xe5\xb2\xee\xcb\x39\x15\xe7\xc4\x6b\xf2\x18\xe9\x27\x5c\x67\x5d\xe3\x72\x8e\x04\x6f\x49\x82\x90\x89\xab\x73\x22\xce\x7b\xb6\x2d\x2e\xe5\xef\x50\xb4\xc4\x13\xf1\x94\xb2\xac\x57\x48\xe0\x73\xb2\x67\xb1\x19\xc3\x49\x4d\xd6\xa0\x9d\x13\x49\xab\xe8\x1e\x02\x1e\x22\x0a\xe7\x5d\xa5\x07\x52\x8f\xb4\x2d\x91\x87\x7c\x24\xd4\xc3\x4f\x10\x3d\x8f\xb4\xe7\x2a\x85\x73\xc9\xf6\x96\x06\xaf\x49\xad\x38\x5a\xd7\xfa\x95\x40\x08\x6b\x9e\x6b\x9b\x85\xc4\x3c\x71\x49\xd0\xbc\xbe\x4c\x86\xcb\x27\x68\xfd\x34\x79\x1a\xb5\xc8\xd3\xe0\x9c\x3c\x0d\xf0\x93\xe4\x49\xc4\x50\x28\xa9\x18\x44\x5a\x91\x4c\x59\xe3\x73\x94\x9e\xaf\x31\xbe\xf2\x77\xbb\xb0\xc9\x43\x59\x8a\x3c\x75\x31\x5b\x3e\x09\xe5\xb2\x0e\xda\x6c\x20\x39\xf6\xc1\x11\x91\x75\xd0\xd3\x65\x74\x43\x56\x75\xb4\xa6\x9e\x64\x35\xc1\x7d\x33\xc1\xfd\xa1\x38\x2f\x4d\xf0\x32\xba\x41\xa4\x25\x32\x9e\x60\xf0\x48\xec\x14\x95\x3f\x09\x6e\xc2\xba\x96\x8a\x25\xdd\xed\x44\x93\x0b\xb9\xb0\x97\xae\xf2\x5b\xcb\xaa\x3e\xe9\xe6\x45\x3a\x9e\x24\x0d\x45\xea\x5b\x07\xee\x48\x46\xd2\xa7\xbd\x23\x7c\xee\x42\xc6\x8d\x54\xee\xbe\x29\xf5\xa7\x14\xbc\x05\xd6\xbc\xa9\x14\x21\x75\x11\x3e\x12\x94\x63\x15\xb1\x91\x5c\xb9\xae\x2c\x0a\x13\xb4\xdd\x2b\xf3\x07\x58\x56\x30\x78\x84\x04\xc4\x60\x8e\xe8\x36\x60\xd6\x5b\xab\xd5\x68\xb5\x7c\xb8\x57\x41\x99\xf0\x1e\x66\xe5\x40\x60\x7f\xbb\xfe\x89\xc5\xf0\xe6\xfa\xfa\x05\x6b\x12\x30\x5e\x18\xec\x18\x6c\x85\x85\xcd\xa3\x95\x3c\xdc\x4d\xa3\x65\x39\xca\x87\x60\xe8\xd0\x87\xa6\x21\x86\xd6\x07\x8b\x59\xef\x2c\xdc\xd2\x41\xd6\x03\x65\x85\xa6\xab\x4b\x4a\xd5\xbd\xb4\x74\x24\x86\xec\xfd\xda\x3a\x53\x57\x27\xe4\xa6\xba\xf1\xd8\x09\x94\xb1\xf8\x8f\xc2\xff\x54\xd3\xb7\x13\x15\x37\xdd\x4a\xbd\x4d\x72\x5c\xed\xfd\x1e\xa2\xf0\x65\x2c\xc4\x6f\xa2\x4e\x1e\xbe\xb6\xed\x99\xb2\x8b\xb2\xed\x44\x11\xf9\xa6\x29\xdb\x96\x35\x81\x30\xee\x99\x1e\x23\x9d\x5c\x02\x5e\xb6\xa4\x34\x72\x98\xc1\x49\x01\x47\xa6\x0c\x26\xed\x9e\x12\x70\x40\xc0\x63\xe7\xf5\x3a\x55\xae\xf8\x6f\xa7\x89\x88\x37\x42\x82\x37\xe7\x47\x31\xfd\x5b\x90\x1e\x7e\x51\x57\x59\xad\xe2\x68\x26\x92\x04\x7c\x1e\x67\xf1\x0c\x21\xe1\x96\x49\xb6\xb8\x66\x6d\x50\xf4\x98\xa8\x5d\xbb\xb6\x1c\xb9\x99\x41\xa8\x14\xbc\x89\xe4\x3f\x79\xe4\xcc\xa3\x3b\x3f\xd0\x37\xd7\x89\xcf\x41\x8a\xf0\x85\xb8\x90\x08\x52\x38\x8b\x10\x04\x17\x0a\x55\x29\x44\x16\xa2\x92\xfa\x51\xa3\x48\x31\x5c\x23\xcc\x72\xb3\xf7\x60\xbf\xcf\x9f\x95\xd8\x49\x84\xa9\x88\x91\xb6\x3e\x4c\x70\xc5\xe5\x2d\x52\x15\x7f\x0c\x66\x9f\xd0\x12\xef\x73\x87\xdc\x66\x20\x67\x26\xf4\x37\xc1\x8d\xc4\xeb\xb2\x92\xfc\xc5\x49\x52\x3f\x9c\xfb\xcb\x28\x14\x92\xb6\xf1\x6d\xdb\x77\x62\x91\x44\xcb\x8d\xc8\x1c\x78\xf2\x04\xc3\xb9\xe1\xb3\x4a\xa3\x33\x27\xbd\x15\xa1\x6c\x50\x8b\x47\x2b\x1f\xc3\x4c\x92\x91\xf5\xc7\x18\x44\x37\x5d\x98\xf3\x4c\x80\x66\xa2\xa2\x7d\x14\x9f\xd3\x37\xd1\x5c\x20\xcb\xc2\x67\x92\x5a\x0c\xd0\x12\x3b\x91\x5e\x42\x34\x87\xed\xec\xd6\x8f\xfd\x59\x2a\xe2\x17\x7e\xea\xab\x5b\x1f\xab\x1e\x7f\x73\x67\xee\xa7\x3e\x5f\xf0\xe6\xe2\x98\x78\xce\x05\x4a\xdb\x45\xc8\x62\x50\x1c\x50\x76\xc3\x8e\xf2\x5b\xd0\xf4\x43\x88\x41\xec\x76\x48\xf0\x10\xd6\x92\x89\x48\x79\x68\xfc\xc4\x7b\x8c\xb4\x7b\x86\x17\xcd\x04\x7d\x83\xaf\x76\xca\x2c\x2e\xec\x2b\x63\x9d\x33\x65\xe0\xbc\xd2\x9b\x91\xeb\x50\x60\x07\x96\xe2\xc1\xa2\x60\x98\xd3\x72\xc8\x8a\x63\x2b\x9b\x6f\xfc\x79\xc3\x6c\xec\x46\x49\xb8\x27\x99\x73\x2e\x20\xe4\xf1\xbe\xb8\x85\x4b\x2d\xa8\x76\xca\x37\x29\x12\x78\xaa\xc8\x76\x05\x55\xe6\x2c\xea\xc4\x2d\xb2\x9b\xa1\x91\x74\x64\x46\x76\x83\xaf\xd3\xfc\x74\x33\x9e\xd7\xcd\x5c\xe7\x5d\xa3\xd6\x26\xae\x51\x3e\x28\xf7\xeb\xc4\xb8\x5f\xaf\x33\xe4\xe0\x27\x12\x4d\x95\x89\x99\xf5\x6e\x77\x8c\x0b\xb4\x3a\x6c\xbb\x87\x54\x29\x47\xf9\x07\x05\x80\x91\x6c\xd4\xf2\xa7\xb3\xb9\x58\xdc\xdc\x06\xbf\x7c\x5a\xde\x85\xd1\xea\xd7\x38\x49\x0b\x6d\x99\x24\x0c\x3d\x08\x0b\x61\x56\x66\xbd\x5b\x35\xa7\x4d\x47\x62\xac\x1c\x05\xc0\x6b\xf2\x35\xda\xee\x41\xe0\x51\x3c\xde\xed\x4c\x3f\x15\xef\xa9\xd2\x53\x8c\x8d\xe7\xab\x85\x9b\x3c\xac\x98\xdf\x55\x42\x45\xf8\xda\xc0\xe6\x28\x32\xc4\x92\x13\x98\x29\xbb\x9b\x05\x8f\x9c\xc5\xc5\xfa\x6a\x79\x91\x5b\xe6\xcc\xe1\x96\x27\x85\x33\xab\xb6\xbe\x81\x15\x9f\x0d\x43\x74\x8b\x33\x9f\xd7\x19\xba\xc5\x98\xc9\x14\xb8\xe3\x99\x26\x0a\x36\xdc\xbd\xb8\xbb\xda\x5c\xe0\x39\x5f\x8d\x36\xad\xd6\x58\xb1\x40\x0b\x7d\x52\x6f\x61\xae\x7c\xa3\x47\xf3\x31\xbf\x1d\xcd\xc7\x25\x3b\x1e\xb6\x3e\x6d\xc9\x93\x3b\x82\x1b\xa7\x1a\x0d\xe2\x8d\x3b\xf8\xe0\xa4\x04\x30\x37\x7f\x73\x5d\x63\xe5\xe0\x9a\xed\x40\xbb\x18\x59\xaf\xae\xf5\x35\xb3\x96\xdc\x1a\xa5\x65\xae\xb8\x30\x67\x87\x49\xed\xaf\x81\xe4\x5f\x16\xb1\x7f\x27\x14\xe1\x11\x98\x31\x6b\xef\x46\x27\x49\x1f\x96\xc2\x99\x07\xc9\x6a\xe9\x3f\x70\x2b\x8c\x42\x61\x81\x40\x5e\x1b\x3b\xfe\x6a\x25\xc2\xf9\xf3\xdb\x60\x39\xd7\x77\x2d\x26\xf1\x8c\x5b\xbf\xf8\x1b\x5f\x87\xe6\x65\x16\xa0\x94\x2b\x75\x7b\x2a\xc2\xf4\x47\x1d\x02\x2e\x83\x60\xd8\x89\x56\x22\x44\x18\x52\xe7\x3e\x0e\x52\x81\xac\x4b\x5d\xec\x2a\x87\x71\x2f\xcd\x56\xbe\xfc\xf9\xa9\xf9\x64\xc9\xec\xb3\x65\x94\x08\x24\x77\x7c\xea\xbc\xbc\x08\xcf\xcf\x2f\xb0\x31\x51\x2e\x5d\x9e\x35\x0a\x46\xe1\x38\x37\xcc\x48\x50\xc5\x67\xba\x72\x13\x6d\x5d\x88\x97\xa0\x6a\x79\xcd\xc5\x10\xf9\x15\x81\x90\x90\x73\x2f\x4f\xb5\x0f\xe5\x0f\x32\x3b\x04\xa3\x68\xcc\x05\x66\x01\x4f\x50\xc5\x0b\x3e\x60\x21\x0a\x8c\xe8\x99\xb8\x2e\x23\xae\x0b\x84\x76\x19\xa1\xdd\x4c\x55\xa5\x95\x17\x2e\xeb\xb9\xe0\xb5\x99\xa7\xe0\xc4\x17\x6d\xf2\x1e\xb3\xeb\x35\x96\x89\x26\x30\x9c\x6e\x44\xed\x37\xaf\xc3\xbc\x8e\x0a\x3e\x7c\x52\xe2\x9a\x59\x2a\xb7\x33\xe9\xa5\xeb\x55\x63\xd8\x75\xfb\xf5\xe1\xd0\x24\xf7\x5e\xad\x52\xb9\xb0\xe4\x57\xc2\xa8\xc0\x39\xa9\x5c\x41\x3f\x3b\x61\x6b\xee\x5e\x24\x57\xeb\x0b\xac\x0d\x9e\x23\xee\x8f\xd6\xf2\x9c\xa5\xa3\x68\x5c\xb5\x78\xcc\x8e\x51\x79\x30\x19\x35\x44\xdc\x1a\x79\x6e\x1e\xee\xcd\xcd\xbd\x8a\x7b\x59\x98\x0a\x37\x83\xa0\x6d\x03\x41\x8d\xfa\xd6\x53\xa2\xb4\x2f\x44\x9e\x36\x41\xe1\xe4\x2c\x2c\x8f\x49\x47\xa1\xed\x00\x25\xb4\xd2\xbe\x8e\xeb\x72\xec\x37\x13\x3d\xb0\x70\xf6\x96\xa4\x89\x4a\xcb\x23\x80\xa1\x66\xe8\x2c\x8a\x48\x83\x20\x46\xe9\xd8\xec\x1d\x03\x40\x32\x71\x63\x1e\x88\x45\x2f\xb6\x59\x60\x45\x2d\x16\xcb\x7c\x52\x48\x5d\x84\xac\x71\xdb\x92\xc5\x08\xca\x4e\xdf\x10\xf1\xa3\xc8\x7b\xd5\xa0\x8e\xb6\x5d\x3b\x4d\x6f\xfc\x3b\x91\x0c\x4f\x7f\x32\xb7\x66\x63\x36\x1a\x9f\x7d\x01\x7b\x46\xb6\x6d\x8d\x4c\xbc\x33\x0d\x45\xc6\x16\xcf\xec\xbc\x45\x15\x49\x94\xa6\x58\x21\xdc\x83\x78\x96\x8d\x28\xbb\x29\x71\xbf\x47\x42\x02\xfa\x38\x17\x9d\xbb\x6d\x46\xdc\x76\x36\x9b\x6a\xce\x6a\x42\x9f\x15\xbb\xa9\x97\xc3\xdf\x0c\x79\x58\x7a\x33\x5b\x60\xe5\x20\xc1\xc2\x6a\x97\x9c\x9e\x87\x5a\x3e\x52\xb6\x16\x98\x5e\xf5\x18\x71\x7b\x1a\x26\xa8\x3e\xd5\x28\x4a\x4f\xb6\xa0\x91\x79\x62\x42\x2c\xbb\xa7\x79\x05\x72\x10\xc8\xe5\x08\x99\x44\x47\x12\xc8\x63\x78\x7a\x23\xd2\x92\xd5\x6e\xed\xc0\x84\x0e\xf6\x12\xab\xf1\x0d\xc5\x28\x18\xd7\x06\x6f\x2c\x2b\x5a\xb5\xc4\xb8\x88\x31\x5b\xfe\x36\xac\xbc\x15\x7d\x63\x95\x22\xba\x7b\xc3\x48\xc5\x66\xd0\x2a\x56\x0d\x74\x33\x0c\xac\x8e\x8a\x9a\xa1\x93\x72\xbe\x62\x86\x0c\xda\xed\x10\x8c\x9a\xa4\x1e\xf5\x3e\x1a\xc8\xc8\xd7\x81\xc2\x24\x9c\x71\x61\xc9\x47\x3a\x8e\x80\xdf\x08\xc2\x46\x82\xfd\xa6\xd6\x94\x24\xe0\x4b\x4e\x30\xb7\x0c\x56\x71\x67\x32\x2d\xae\x02\x93\x32\x0b\x4f\x15\x90\xc4\xb6\x8d\xfe\x35\x50\x91\xc2\x76\xbb\xbc\x4c\x0e\x35\x0f\x86\xac\x61\x45\x87\xb0\x0e\x29\x0d\xfc\xa4\x1a\x54\xed\xf3\x50\xef\xf3\xe3\x25\x97\xc4\x5b\xed\x42\xcb\x15\x0e\x4f\xec\xe0\x1a\xfb\x1a\xb9\x83\xb7\xfb\x5a\xcd\x6a\xb6\x79\x4f\xaa\x1e\x7b\xb4\x6a\xf5\xdc\x7b\x24\x62\x8c\x56\x52\xa1\xd0\x44\xfe\x57\x86\xca\xea\x72\x33\xfd\x3e\x12\x63\x15\xef\xe5\xcc\x97\x44\x6b\x8a\x22\xb9\x55\x63\xe7\x43\x2b\x76\x5e\x3e\xa9\xda\x27\x46\xc6\x7d\x2c\x8b\xc4\x01\xbe\x1a\xad\xb6\xd9\x2d\x79\x20\xa9\xb0\xfc\x27\x51\xec\x31\x75\xdf\x71\x0b\xea\xde\x59\x7c\x6d\xe0\xb0\x82\x3a\x96\xdb\x4b\x21\xd7\x35\x0f\x51\x22\xb1\x58\x16\x3d\x0c\x66\xdc\x85\x05\x1f\x8d\x75\xac\x30\xdf\xc4\x09\x53\xa4\xac\xd1\xcc\x25\x6a\x0b\x2d\xf4\x16\x12\xc3\x91\x0f\xc9\xc8\x1f\x8f\x59\x52\xbe\x89\x6d\xb1\x2f\xa3\xe1\x82\x9a\xd5\x1b\x4b\x21\x1f\x35\xe8\x47\xcc\xed\xdb\x07\xe6\xf6\x99\xaf\xb7\xe7\x62\xe7\xbd\x58\x2c\xc5\xac\x6c\x8f\x11\xd9\x76\xe4\x44\xf7\xe1\xdf\x8e\x36\x9b\xb1\xc5\x77\x16\x28\x50\x5a\x45\x6d\x90\x9f\x07\x1e\x48\xf3\x48\x36\xea\xe2\xcc\xb4\x02\xe6\x0d\x55\xae\xc9\x88\x8c\x3b\x25\xc7\xf7\x1e\x94\xed\x5a\x56\x7e\x9c\x88\x97\xcb\xc8\x4f\x8d\x68\xa5\x83\xd5\x6d\x05\xa5\xce\x92\xa7\x31\x92\x5f\xba\xb8\x65\x9d\xbb\x92\x91\x39\x27\x4f\xdd\x9a\x78\xda\xa1\x31\xbe\x94\xa0\xa0\x8d\x55\x88\xf4\x22\x68\x82\x24\x18\x03\xdb\xb6\xce\x25\x50\x2c\xae\x27\x1f\x9e\xbb\x2c\xd0\x62\x60\xd2\xee\x30\xd2\xee\x00\x69\x77\x19\x69\x77\x4b\x23\x78\xd4\x32\x47\x8d\xe0\x55\x78\xd0\x7f\x13\xa8\xae\x2b\x67\xf0\xe9\x7f\x1c\x9d\xb7\xc6\x43\x77\xf4\xf9\x9f\xc6\x4f\x4b\x03\xeb\x37\x39\x8f\x51\xd0\xb2\xdc\xbe\x85\x77\x3b\x4a\xf3\xf7\xcf\xa4\x67\xe1\x61\x0d\x15\x7d\x30\xc6\x42\xa9\x1d\x40\x7a\x75\x75\xe5\xee\x76\x28\x72\x52\x91\xa4\x28\xc0\x43\x49\xcc\xb8\x18\x7f\x69\x74\x47\x02\xd4\x2f\xc5\xb5\xde\x0a\xd6\x24\xb0\x61\x0a\xe7\x1f\x90\x03\x5b\x6d\x36\xab\x82\xd0\x1a\x38\x73\x7c\x21\xc4\x21\xe7\x95\x09\x66\x07\x27\xfd\xf7\x8a\x6b\x09\x42\x15\x26\xab\x62\x38\xa4\x8c\x2b\x32\x0e\xf1\x4c\x03\xa4\x40\x12\xbd\xd9\xfc\x20\x17\xa2\x5c\xa0\x24\x4f\x72\x94\x89\x3b\x72\x95\x79\x26\x04\xec\xb1\x41\x4f\x75\xba\xf7\x05\x1e\xa1\xfd\x88\x0b\x50\x16\x2e\x9a\x9c\xbe\x54\x82\x90\x47\xec\x04\x0a\xd8\x13\x48\x24\x96\x62\x85\xdd\x21\x1d\x05\x63\x08\x0f\x68\x77\xad\x7f\x53\x8d\x9d\xe4\x70\x33\xc1\x65\x66\xc6\x9f\x09\xc0\xb5\x84\x3c\x89\x67\x96\x26\xda\x7b\x03\x49\xb3\x23\xcb\x6a\xf9\x38\x13\x42\x64\x64\xab\x85\xcf\xf4\x95\x22\x41\x98\xac\xc4\x2c\xfd\x10\xad\xe3\x99\xa8\x83\xa1\x7e\x46\x46\xee\x01\x9d\x8c\x58\x97\x39\xc9\xd4\xdd\x65\xe9\x9f\x2d\x6d\x1b\x05\xc8\x07\x2b\x54\x4c\xf4\x6e\x17\xe6\x2f\x92\x9e\x57\x84\x7b\x93\x73\xdf\xb6\x51\x96\x35\x32\xb9\x22\xf5\x71\x68\x59\x2d\xf9\xcb\x12\x2d\xff\x30\x87\x26\xc5\x58\x96\x56\x1e\xff\xca\xef\xd3\x67\x6b\xf5\x90\xbd\x65\xd6\x0a\x0c\x19\x06\x58\xa6\x43\x96\x8a\xf1\x1e\x17\x4e\x2e\xa5\x68\x2f\xf9\x24\xd5\x98\x46\xd4\x05\x91\xba\x0d\x12\x1d\xdb\x61\x14\x8d\x77\x3b\xbf\xa2\x0b\xc6\x25\x29\xb5\xc1\x7d\x03\xd6\x1b\x64\xfe\x2a\x9a\x07\x31\x96\xdb\xe4\xf8\x92\x8f\x5a\x91\x57\x47\x79\x63\x1d\x9a\xa0\x6b\x6f\x88\xc7\x10\x7b\x90\xb9\x4c\xd4\x3b\x99\x67\x96\x7c\x39\xe7\x00\x26\xba\x93\xe1\x6f\x72\xc3\xd9\xc8\xc8\x09\x25\x7f\x5f\x89\x14\x28\x3b\xd4\x90\x2d\x64\x2e\x79\x7a\xce\xc4\xbc\x91\x44\x32\x25\x08\x6f\x1a\x51\x7a\x2b\x62\x7d\x49\xa6\x1f\x1a\xd2\xb3\x11\xc5\x4a\x92\x50\xf8\x12\x46\x2a\xd2\xb7\xb1\xdf\x69\xf2\x72\x20\xe3\xda\x56\xff\x83\x6a\x55\x05\xf3\x52\x8e\x80\x41\x38\x8b\xee\x56\x7e\x1a\x4c\x97\xa2\x11\x8b\x99\x08\x36\x22\x2e\xb9\x2a\x56\x03\xd4\x77\x3c\xd6\xf1\xd4\xa5\x3e\x5f\x11\x93\x05\x42\x4d\x45\x29\x1e\xb9\x76\x11\xc0\xe7\x87\x7e\x03\x99\x77\x0b\x24\x3c\x82\x35\x47\xca\x69\x03\x42\xfe\x74\xfa\xe4\xe9\x0d\x44\x99\x48\xdb\xf2\x25\x2b\x61\x8c\x1b\xf4\x9b\xdb\x54\x1e\x29\x7e\x92\xbe\x0a\xe7\xe2\xf3\x6e\xa7\x24\xb5\x45\x02\xce\xc3\xb6\x36\x39\x7f\x8a\xf0\x70\xf8\x54\x75\x02\x59\x16\x1e\x91\xf1\x05\x5a\xef\x76\x4b\xac\x82\x2f\x1e\xeb\x28\xe5\x60\x12\x98\x29\x97\xdb\x9c\x1c\x56\x1a\x07\x39\xcb\x7a\x70\xc8\xfa\x8f\x56\x6b\xe6\x24\x0a\x42\xb4\xac\xbf\xa0\x61\xf3\xe7\x9f\x13\x6c\x81\xd9\x26\x33\x79\x08\xd7\x2a\xb4\xe1\xac\xdc\xad\x30\x8b\xa7\x37\x03\xa1\x32\x84\xb6\x8d\x4a\x39\xf8\xcc\xb8\x13\x0c\x43\x27\x90\x09\xad\x50\x82\x60\x13\x9b\x39\xc5\xb0\xd4\xa6\x9f\x79\x30\x28\xdb\x36\x47\x4b\xe6\x83\xf8\x28\xba\x50\xc2\xc9\x45\x72\x79\x28\xf4\x3c\xa7\x17\x49\xab\x85\x73\x31\x53\x01\xf6\x93\xb1\x6d\xa3\x70\x94\x8c\xb3\xd8\x5b\x92\x5c\x0d\x2b\xf1\xaa\x25\x67\xd8\xeb\xb1\x9e\x42\x22\xc7\x77\xba\x1c\x91\xfb\x41\x72\x28\x2d\xcb\xf9\x3a\xce\xd3\xa1\x32\x28\xdc\xed\xc8\x53\xc1\x39\x79\x9a\x32\xd1\xe4\xc2\xb6\xd3\x26\x4f\x33\xec\x7a\xfa\x9e\x96\xcc\x54\x4e\x0b\x9b\x8e\xb0\xa9\xe2\x98\x9a\x45\xd4\xc9\x26\xe7\xe9\x71\xe4\xef\x96\xc5\x1a\x33\xe5\x38\x9b\x88\xb4\xe1\xab\x0b\x75\xf5\x06\x6d\x5a\x15\x09\xe0\x36\x11\xa9\xb1\xbd\x74\x92\x03\xb6\x15\x59\x93\x89\x2a\x37\x99\x58\x41\xb8\xdd\x17\x94\x8d\x89\x8c\x2d\x69\x0b\x64\xbc\x01\x0e\xbc\x08\x25\x4d\xab\x2e\x9f\x3a\xe4\x96\xa1\x54\xa9\x56\xc7\x51\x8c\x51\x0a\xa3\x31\x86\x98\xeb\x48\x92\x39\xc3\xaa\x2c\x42\x4a\xb6\x15\x31\x6f\xba\x47\xda\x99\xf2\xf4\x07\x5a\x42\x24\xf9\xe1\xbc\x19\x9e\x6a\xfc\xa0\x74\x89\x68\xbb\x87\x26\xc9\xdc\x98\x30\xcc\x6e\xc5\xec\x13\xd3\xb6\x1a\x2e\x61\xc4\x25\x15\x63\xf9\xcc\x70\x90\x1c\x5f\x23\xf2\x68\xa0\x96\x81\x89\x51\xda\xcd\xe2\xb4\x7c\x7d\xac\x52\x15\x67\xe5\x2c\xb0\xed\xd4\xb6\x9b\xe9\x28\x1a\xcb\xa3\xb1\x50\x21\x91\xb7\xd5\xdb\x04\x5c\xa8\x8f\x53\xa6\x0c\xd5\xf6\x15\x33\x48\x23\x09\x53\xb8\x28\x97\x11\x9e\xba\xc9\xa4\x1c\x80\xd0\x23\x65\x83\xcd\x4a\x40\xc9\x53\x74\x50\x84\xb7\x42\xc5\x4c\x15\x3c\x1a\x0a\x56\xb6\x1d\x0b\xd4\xd5\x47\x92\x28\x3a\x1a\x4a\x76\x09\x42\xa5\xdb\x1a\x6d\x16\x1d\x3e\x1d\xb9\x5e\x39\x2a\x18\xbb\xa9\xd0\xd0\x48\x5f\x88\xd3\xa8\xd8\x5d\x24\x7f\x4a\x66\xa3\xda\x75\x01\x0c\x26\x57\x8d\x9e\x14\x85\x74\x0d\xbf\xed\x29\x49\x48\x38\xb2\x26\x93\x59\x14\x8b\xf3\x5f\x92\x49\x72\xeb\xc7\x62\x3e\x99\x58\xda\xd1\xb7\xf6\x0b\xdf\xee\xf1\xc5\x09\x52\xab\xd8\xd0\xba\x97\xf2\xa7\x80\xfe\xe9\x30\x65\x5b\x75\x7b\xbb\x95\xdd\x70\x6d\xc9\x03\xa4\xd9\xd5\xfc\xde\xb1\xd8\x31\x4f\x70\x17\xcd\x05\x53\x96\x94\x43\x6b\xb5\x8e\x85\xc5\x2c\x0d\x92\x2d\x98\x45\xab\x87\x38\xb8\xb9\x4d\x99\xf5\x6f\xff\x77\x83\xba\x64\xd0\x78\x21\xc2\x20\x69\xbc\x5b\x27\xb7\x9f\xfc\x58\x6c\x1a\xe8\xb7\x65\x14\xc4\xd1\xec\x93\x13\xaf\xb1\xa5\x6e\x46\xd0\x14\x8e\x71\x71\x37\xb6\x61\xe4\xf8\x9a\x95\x43\x8e\xa1\xdd\xfe\xfa\xd0\xbd\xb9\x94\x02\x7c\x45\x15\xd4\xf9\x1c\x14\xc0\x7e\xb7\xd3\x01\x04\x50\xc4\x63\xe4\x63\x65\x1a\x2c\xcf\x7d\x54\xd9\x4f\x3a\x98\x6a\x66\x6c\x4b\x8e\x2f\x5e\x39\x15\xde\xe3\x0b\x91\x77\x9b\x4d\xe5\xc4\x50\xb1\x59\x1b\x1a\x4b\x7c\xa5\x0a\x29\x7f\xd9\x63\x20\xb9\x9d\xbe\x0a\x5a\xb9\xd7\x9b\x2f\x17\x93\x1c\xde\xd5\x52\xda\xe7\x6d\xa3\x8a\xe8\xfe\x3b\x62\xa9\x17\x9e\x1b\x90\x18\x82\x05\x49\x7e\x0c\xab\xd0\xea\x81\x24\x2c\x32\x24\x5a\x58\x2d\xb9\xbb\xdd\xfa\x8a\x2f\x87\x62\x68\x59\x06\x5a\x32\x14\xf1\x44\xf1\xe0\xcf\xa3\xb9\x78\x96\xa2\x35\xc6\x97\xdd\x2e\x1d\xf4\x76\xbb\xe8\xaa\xdb\x6b\x93\xc1\x6e\xb7\x6e\x11\xed\xa9\x84\xfc\x83\xcc\x2d\x22\xb3\xf7\xda\xd4\xdd\xed\xfc\xab\xae\xd7\xee\xb4\x87\x62\x98\x64\x4c\xfd\x1a\xb3\x88\xc9\x77\x2d\x97\x5e\xc3\xba\x45\x31\xf3\xcf\x55\x89\x16\x8a\xce\x55\x4b\x97\x97\xc4\xc5\xad\x5e\xb7\xdb\xee\x19\xdd\xfa\x80\x91\xf6\x40\x3b\x48\xaa\x2b\x16\x4f\xdb\xcd\xd3\xc7\xa7\x4e\xfb\xb8\x28\x86\x35\x3d\xbe\x4c\xc3\xb8\x2e\xfc\x07\x15\xbf\xb8\x31\x8f\x44\x22\xb1\xab\x3f\x9b\x89\x55\xda\x88\xc5\x8d\xf8\x5c\xba\xd5\x21\x9f\x64\x03\x56\xb4\xfb\x66\x9f\xb2\xbe\xbe\x06\xf2\xa4\x44\x28\x13\xe1\xf5\x8c\x3c\xa8\xab\xc2\xbe\x3e\xb5\x9e\xde\x94\xb5\x98\xf9\xd5\x14\xda\x96\xd1\xb4\xa6\x25\x3f\x09\xb7\x2e\xad\x56\x66\x37\x6f\x29\x9a\x5a\x12\x85\x2d\x6e\x35\xac\x56\xdc\xfa\x2b\xb7\xfe\xda\xca\xfa\x87\x73\x67\xec\x08\x2c\xfb\xd7\x75\x94\x5e\x58\xb8\xf5\x57\xeb\xaf\x18\x92\x96\x75\x65\xb5\xfc\x96\x75\xf9\xd4\x6a\xa5\xf2\xe5\x94\xed\x73\xc6\x73\x6c\xf7\x67\x81\x96\x16\xfa\x5a\x5a\xf8\x4e\x49\x0b\xc3\x1a\x6f\x66\xed\xf2\x2c\xdb\xc9\x55\xc4\x12\xac\x39\x69\xf4\x5d\x74\x2f\xe2\xe7\x7e\x22\x10\xde\xed\x52\xc3\xcd\xca\x8c\x19\x75\xd8\x56\xb2\xc6\x8c\x6f\x0b\x4a\xd3\x7b\x20\x6b\x6c\x3f\xa2\xe7\xc9\x64\xd8\x19\x3c\x7a\x64\x4b\x14\x17\x11\x54\xe7\x79\xcd\x4b\xda\xf6\x1c\x0e\x45\x43\xab\x61\x31\x93\x31\xc2\x30\xd3\xc2\xac\x60\x81\x66\x97\x7c\xbd\xdb\x59\x16\xe7\xcb\x4c\xe8\x91\x9c\x69\x83\x96\xd9\xf9\x1a\xe6\xd9\xd5\x37\x4b\x50\x96\x75\x33\x11\x2c\xd1\xe2\x69\x1e\x01\x3e\x9f\xa8\x79\x36\x11\x0b\xdb\x46\x73\x3e\x37\xc7\xc5\x85\x05\xc6\xe0\x0f\xe7\xad\x84\x25\xad\xb9\x3e\x1a\x6d\x46\xda\xed\xfc\xd6\x86\xe2\x88\x7c\x1d\x2d\xf3\x15\xb0\x46\xaf\x66\x01\x52\x54\x10\x20\x08\xb8\x65\x41\xa4\xad\x20\x83\x05\x8a\x24\x2c\x89\x24\x21\xec\xd6\xc4\x07\x7a\x1e\xad\xc3\xd4\xd0\xaa\x53\xd1\x08\xc5\x8d\xf2\x36\xb4\x8c\xa8\x3f\xba\x72\x2f\x50\x74\x75\x75\xc5\x09\xd6\xae\xc3\x29\xc6\xc4\x8e\x6c\x1b\x05\xf2\xf9\xac\x62\x6d\x7b\x04\x0c\x4e\x52\x38\xbd\x02\x18\x54\x42\x24\x28\xd9\x9f\xcf\xad\x91\xd5\x8a\x5a\xd6\xd8\x82\x84\x97\xb8\x23\x5f\x1e\x88\x27\x96\x5c\x7d\x93\xaa\x53\xfe\x62\x55\x2d\x04\xb5\x34\x48\x9f\x4e\x65\x71\x10\xd4\x98\x1d\x36\x9b\x91\x3c\x05\x78\xb7\xb3\xfe\xf8\xfd\x7f\xff\xb7\xff\x6c\x35\xb9\x79\x50\xc9\x7b\xb5\xc9\x94\xfc\x3d\x19\xa6\x68\xa6\x42\x10\x8e\xcf\x24\x73\xe5\x8f\xc2\x31\x5f\x97\x0f\x59\x52\x1c\x09\x5f\x59\x1f\x2e\x95\x38\xb3\x9e\xa6\x10\xbc\x0c\x9f\x80\x48\x4a\x13\x09\x9e\xf3\xae\x28\x01\xcb\xc2\x18\xe8\xd1\x87\xb5\xfe\x50\x09\x4b\xa5\xee\x82\x35\xd2\xc9\xfa\x83\x78\x44\xb5\x95\x42\xdf\xfc\x9c\xfe\x1c\xfe\xbc\xf9\x79\xf1\x73\xdc\xf8\xb7\xff\xf2\x5f\xff\xcf\xdf\xff\xeb\x7f\xf9\x3f\xfe\xf8\xfd\xf7\x3f\x7e\xff\x4f\x7f\xfc\xfe\xdf\xff\xf1\xfb\xff\xf0\xc7\xef\xff\xe3\x1f\xbf\xff\xe7\x3f\x7e\xff\x9f\xfe\xf8\xfd\x7f\xfe\xe3\xf7\xff\xe5\x8f\xdf\xff\xd7\x3f\x7e\xff\xdf\xfe\xf8\xfd\xff\xf9\xe3\x3f\xfd\x5f\xff\xef\xef\xbf\xff\xbc\xa6\x2e\xed\xab\xff\x83\x9f\xd7\x0b\xb1\x58\x58\x86\xbd\x3a\xbe\x55\x28\x67\xe9\x2b\xde\xe2\x5e\xcf\xa8\xbb\xdb\x5a\xdd\xdd\x1d\x98\x58\xaa\x92\x35\xe0\xcb\xdc\xee\x6f\xc1\x97\x92\x57\x79\x75\x77\x27\xe6\x81\x9f\x0a\x98\xf3\xa5\x0e\x03\x57\x24\xdd\xf2\xa5\xf3\x5a\x24\x89\x7f\x23\x9e\xdf\xfa\x61\x28\x96\xb0\xe2\x4b\xe7\x45\x90\xac\x24\xff\x02\x77\xdc\x85\x8d\xdc\x0e\x0f\xc7\x5e\xf8\x2d\xc5\x98\x07\x0b\xb4\x39\xb8\x81\x4f\xae\x50\x16\x1e\x55\x2e\xbf\x91\x6f\xc9\x67\x48\x91\x84\x7e\xd3\xca\x89\xcc\x5c\x8b\x95\x39\x1b\xde\x9f\x2d\x6c\x7b\xae\xee\xc3\xac\x37\x20\x1a\x8d\x21\xe4\xe4\xe2\x28\x20\x73\x78\x81\xb3\x68\x3c\x39\x1b\x1d\xb6\x5a\x85\xee\x63\x33\x6a\xb5\xee\x2a\xf6\xf0\x7e\x9d\xa8\x49\x0c\x45\x71\x55\xa1\xc0\x90\xe2\x3d\xc4\xe8\x0e\xc3\xdd\xbe\xec\x63\x23\xf0\xb6\x34\xb0\x3d\x1c\x19\x56\xce\xf0\x30\xae\x64\x9f\x15\xe6\x8a\x11\x7a\x00\x01\x04\xe3\x3d\x5b\xd9\xf6\xca\x09\xa3\xfb\x83\xcc\x2a\xad\x9c\xef\x76\x88\x02\x8e\x42\x25\xfc\xb8\xc5\x8e\xdc\x8b\x14\x42\xf5\x4b\x9c\x28\xbc\xd3\xab\xc8\xa7\x10\xf3\x08\x05\xce\x2a\x4a\x52\xb3\xb2\x10\xc8\x1a\xd8\xd2\xf1\xe7\xf3\xeb\x8d\x08\xd3\xef\x82\x24\x15\xa1\x88\x6b\x3d\x5f\x4b\x05\x6d\xbb\xb9\x74\x82\x3b\xd9\xc4\x07\x65\x36\x91\x0c\x51\xb5\x97\xcb\x72\x3b\x48\xb4\x2c\x0b\x24\xac\xd9\xc3\x71\x63\xc8\x32\x5d\xb4\x60\x2a\xd9\x59\xcc\x62\x6e\x45\x61\x2c\xfc\xf9\x43\x92\xfa\xa9\x98\xdd\x4a\x10\x6b\x05\x61\x63\x8d\x2c\x6d\xa6\x61\x55\xed\x03\x92\x8a\xd9\x52\x29\x17\x76\x8e\x2b\x2a\xaf\x73\xe2\xc4\xe2\x2e\xda\x08\x5d\x50\x07\x8f\xc8\x1d\xda\xf7\xd5\x90\x17\x89\x8e\x81\x17\xad\xd3\x7c\xf6\xc1\xc5\x15\xc9\x8b\x12\x40\x2c\x40\xc7\x59\x9f\xe7\x1e\x90\x59\x9c\x65\x65\x07\x64\x64\xa8\x6d\xe6\x99\x9b\x10\xd4\x11\x3f\x2d\xa4\xd7\x88\x4b\xdf\x24\xe5\x7f\x86\x20\xbf\x54\xea\x0b\x64\x3c\xd2\x16\x4d\xf8\xd2\x1d\x86\x48\xb4\xd4\xc5\x36\x41\x2e\x3c\x34\xd8\x45\xb5\x7d\x52\x66\x9f\x23\xcd\x47\xae\x7a\xca\xcd\x32\xcb\x1a\x10\xf7\xac\x14\x4f\x2b\xe0\xa1\x21\x1b\x24\x5d\x14\xd4\xa0\xcd\x1f\xe3\x28\xbc\x69\xe8\xd3\x5a\x22\x3c\x2b\x68\xb0\xb8\x8f\x88\x1c\xdf\x09\x56\x72\xf6\x90\xb4\xc6\xd7\x7b\x94\x36\x82\xe4\x8d\xff\xc6\x38\x6c\xb8\x0c\x89\x2b\x77\x18\xb2\x18\xa3\xdc\x6d\x80\x1c\xdf\x8f\x95\xcb\x47\xbc\xaf\x64\x5f\xe2\x43\xe2\x39\x33\x08\x24\x8f\x5c\x39\x55\x5e\xf7\x13\x8b\x5d\x0a\xb2\x28\x17\x59\xcd\xf6\x51\x24\x0d\xe6\x1e\xac\xf7\x23\xf7\x39\x7d\x69\x20\xc6\xaf\x39\xae\x8c\x46\xd5\xf9\xa5\xeb\x04\xdb\x8f\x84\x98\x53\x37\x54\x16\xd2\xa9\xe3\x4b\x73\x2a\x14\x5d\xb0\x40\x4a\x14\x55\xe2\x85\x06\x65\xd1\x45\x41\xfe\xf4\x68\x66\x07\xd6\xcb\xe2\x78\x74\x0d\x66\x34\x3e\x95\xed\xec\x82\x09\xd2\xd3\x11\x85\x3d\x6a\x22\x0a\x13\x4f\x47\x14\x56\xcb\xb0\xca\xe8\xec\x3b\x95\xd2\xc7\xb0\xc9\x2e\x42\x7b\xc8\xec\xcc\xa6\x46\xbe\x74\x63\x54\x1d\x13\x23\xfd\xbc\xcf\x0c\x70\xae\x4d\x60\x91\x0f\xc6\xe5\xf5\x6d\xe6\xd3\xf9\xb9\x30\xd2\x7a\x96\xc5\x18\xf9\x68\xa4\x3e\xf0\x29\x8b\x70\xf5\xda\x04\x47\x7f\xa7\xad\x54\xe0\x17\x25\x28\xf2\x30\x3c\x57\xb7\xa9\x77\x30\xbc\x37\xde\xa3\xaf\x4c\x64\xe4\x17\xd9\xcd\x19\x6f\x64\x11\x17\xc3\x77\x72\xc4\x03\x0c\x2f\x8d\x4c\xef\x37\xae\x05\x9b\xf0\x3d\x7f\xe9\x2c\xe0\x1b\xfe\x9b\xb3\x80\xbf\xe7\xa1\x53\x9c\x4d\xf8\x81\x87\x4e\xce\x37\xc2\xaf\x3c\x74\xbe\x0f\xc2\xb4\xaf\x64\x99\xf0\xe3\xa1\x7b\x3a\xfc\x85\x27\xda\xed\xfc\x9b\xf5\x62\x21\x62\xf8\x96\x27\xce\x0b\x3f\xf5\x7f\x08\xc4\x3d\xfc\xc4\x5f\x23\x17\xc3\xdf\xf8\x6b\x44\x31\xfc\x23\x7f\x8d\xda\x18\xfe\x81\xbf\x46\x1d\x0c\xff\xc4\x5f\xa3\x2e\x86\x7f\xe6\xaf\x51\x0f\x83\x10\xfc\x1d\x6a\xba\x18\x52\xf5\x40\x30\xc4\x82\x3f\xd7\xe1\x43\x12\x08\xe5\xf3\x27\xf1\x90\x40\x20\x9f\x8c\x67\x21\x44\x82\xff\x58\x08\xea\xdf\x2e\xc0\x97\x09\xb1\xba\x09\x0a\x92\xe2\xf9\x7d\x70\x73\x9b\xc2\x5a\x26\xfc\x12\x05\x21\x2c\xe5\x53\x12\xc5\x29\xcc\xd4\x93\xba\x1f\x68\x21\x1f\x73\x73\xb9\xb9\x7e\xab\x84\x26\xbc\x15\xfc\x53\xc5\x47\x70\xa5\x12\xaa\xd7\xd4\xdc\x09\xfe\x11\x59\x72\x6a\xe6\x93\x8a\x25\x3a\x6c\xd4\x97\xb9\x58\x1c\xa4\x3f\x08\xee\x3b\xcf\xdf\xbe\xf9\xf0\xf1\x3d\x4c\xe5\xf3\xc7\x9f\xde\x5d\xbf\x80\x1b\xf9\xf8\xc3\xab\xeb\x1f\x61\x22\xf8\x6b\x44\xaa\x91\xa6\xf2\x03\xfa\x59\xa0\x5f\x90\x00\x31\xda\x88\xb1\x22\x50\x30\x86\x7b\x51\x4b\xb1\x37\x08\xe7\x8a\x66\xf8\x55\x79\xa4\xca\x65\x25\x3d\xb5\x76\x68\x44\xc6\xd8\x99\xaa\x15\xc4\x23\x77\x2c\x2b\xb9\x16\xbc\xd9\xfc\xd5\xb6\x9b\xcd\x5f\x4b\xfa\xa1\x44\xa4\xb6\x5d\xad\x5c\xd7\x48\x74\xb0\x71\x25\xd7\xc3\xf0\x41\xd4\x5d\xc5\xc2\x6f\x0d\x4f\x15\x4b\x9e\x2a\xfe\xef\x32\xc9\xff\xdf\x67\x08\x21\x5a\x2c\x12\x91\x96\x10\x42\xbc\x87\xb7\xe2\x10\xfb\x4c\x94\x9f\xcd\x54\xe8\x6b\x2b\x33\x80\x68\x3c\xd5\x7f\x28\x47\xc7\xf1\x1b\x6a\x21\xf4\x65\x60\x4d\x49\x8c\x7c\x3e\xec\x58\xb0\x40\x4d\x59\xe1\x6e\xd7\x44\x77\xa6\x4a\x9c\x55\x65\xbd\x4a\x6b\xab\x2a\xfb\x18\x94\x7a\x9b\xdd\x7c\xbe\x87\x67\x87\xcd\x98\x1c\x1f\x0f\x57\x0b\x3e\x1e\xe6\xcc\x6f\x1b\xe1\x2e\x84\x3c\xb3\x15\x83\x80\x7f\x16\xca\x16\xeb\x22\xbc\x8a\x2f\x70\x30\x8a\xc7\x3c\x1d\xc5\xad\xd6\xb8\x40\x9e\xf0\x49\x1c\x85\x12\xf9\x5e\x3d\x9c\xb8\x12\x44\x07\x99\x9f\x8f\xe2\xb1\xf2\xfa\x7a\x2d\x4e\xe8\xde\x02\xd0\xd2\xb7\x7b\xed\x20\x78\x64\xb0\x3f\xe3\xcb\x13\x97\xa0\x2c\x0a\xb1\xef\x0c\xe6\xfc\x19\x4a\xf4\x3d\x2f\x4a\xf5\x33\xb7\xed\xe6\x35\x9a\x9b\x88\x45\x3e\x9f\x1b\xeb\x25\x09\xdc\x47\x63\x48\xb9\x7b\xd1\x54\xa1\x57\x2a\x11\x86\xd2\x56\x0b\x87\x9a\xba\x8f\xcc\x4d\xc8\x67\x09\x0f\xd5\x9d\x6e\x0b\xdb\x5e\x5e\x51\xdb\x46\x33\xbe\x46\x33\x28\xdf\x1e\x09\x54\xf9\xb4\xb8\x10\xf3\x15\xca\xef\xb3\xd7\xf3\xaa\xfc\xc9\x63\x7c\x11\x5f\xa5\xaa\xfa\x60\x94\x8e\xf9\x62\x38\x43\xc9\x28\x1d\x43\x8a\x99\xfc\x2d\xcd\xf3\xbb\x0a\x49\x59\x04\x12\x77\x21\x3d\x9e\x9c\x38\x6f\x21\xc5\x17\xe9\x95\xb8\xc0\x4a\x68\x5f\xf4\x4d\x94\x16\x31\xde\xc3\x2f\xe6\xe0\x55\x4f\xd9\x5c\x14\xbe\xe4\xbf\xea\xfb\x40\x30\x3c\x17\x35\x2e\xbd\xf3\x2c\x3c\xca\x2f\x62\x38\x33\xa5\xde\x0a\x23\xdd\x60\xd9\x53\x05\x21\xbf\x17\x7c\x5b\x5c\x96\xca\x6a\xb7\xee\x77\xd5\x9a\x40\x19\x27\x7c\xd5\xb5\xa8\x78\x0f\x62\x23\xe2\x87\x3a\xf7\xb9\x7f\x28\x57\xf8\x75\x17\xeb\xe0\x3d\x2c\x82\xe5\xb2\x66\x3b\xbf\x31\x03\xaf\x1d\xe3\x22\x58\xa6\x22\xae\xeb\xc3\x33\xb3\x3c\x7f\xfb\x13\x7d\x51\x15\x87\xf3\xba\x6a\xff\xe9\x4f\x0e\x2d\x9c\x2b\x74\x56\x57\xe5\x3f\xff\xb9\x2a\x6b\x6e\x37\xfa\xe9\x4f\xd5\x14\x68\x3c\x5b\xd7\xb5\x54\xfc\xc9\x1a\x67\xcb\xf5\x5c\xd4\xdd\x8e\xd2\x10\x7f\xae\x4a\x89\xe2\x6b\x36\xc7\x5a\x3c\xb6\x3b\x4a\x54\x44\x4d\xd9\xe8\xd1\xb2\x77\xfe\xaa\xae\xfb\x93\x3f\xd7\x7d\x4d\xb2\xd4\x74\xc2\x7f\xb4\x13\x25\x4a\xa7\xa6\x6c\xf2\x85\xb2\x1b\x11\x27\xa2\xf6\x9e\x30\x48\x79\x56\xa6\x00\x68\x05\xaf\x85\xd2\xa7\x4a\x14\xe9\x5e\x84\x97\xf1\x05\xd6\x51\xd1\x47\xe1\x18\xf4\x6f\xab\x35\xd6\x29\xe7\xe7\xa9\x49\x4b\xcb\xd7\xf3\xde\x06\xc9\x1e\x92\xe8\xae\xd6\xb5\xf6\x1f\xff\xd4\xfc\x49\xba\xae\xae\xb6\xa5\x38\x04\x60\x32\xf3\x7a\xaa\x10\x7a\xed\xcd\x3b\x79\xce\x30\x8f\xb5\x0a\x01\xdf\x28\x2c\x5c\x42\xf9\xe8\x17\x14\x43\xac\x30\x3a\x46\xb1\xa1\xa2\x20\x76\xa6\x0f\xa9\x78\xab\x08\x9a\x56\xf0\x24\x76\xbe\xf9\xe9\xe3\xf5\x87\xc9\xbb\xeb\xf7\x93\xeb\xef\xae\x5f\x5f\xbf\xf9\x08\xab\xd2\x25\xd1\xe9\x30\x64\x1b\x94\x42\x88\xf1\x79\xa0\x58\xad\x57\x27\x48\x88\x0c\x5a\x1d\x82\x76\x50\x4e\x27\x7b\x78\x51\x45\xe2\xd9\x67\xc3\x9f\x7f\x10\xa8\x3c\x6d\x20\x09\x6d\x7d\xbf\x95\x19\x60\xa8\x91\x7c\xc0\x57\x28\xcc\x91\x64\xa4\x83\x13\x06\xad\xf4\x2a\x3e\xa4\xd9\x0a\x26\x5e\x4b\xbc\x2f\x83\x0b\xac\x17\xba\x15\x8d\x79\x38\x8a\x5a\xad\xf1\x1e\xde\x08\xbe\xcd\x02\x82\x1c\x6f\xcf\xe0\x10\x4d\xed\x75\x40\x91\xe3\x9c\xe1\x71\x4e\x13\x91\xe4\x38\x6f\x7c\x94\x77\x0f\xdf\x9d\x98\x55\x4d\x53\x8a\xd1\x54\x8c\x6d\x3b\xf3\x5e\xcf\x2d\xc9\x52\xdb\xd6\xf7\x38\xd8\xb6\x91\x3d\xb7\x52\xcc\x79\x6e\xdf\xb7\x87\x97\x27\xea\xfd\x4e\x12\x6d\x29\x7f\xd0\xbe\x43\x78\x38\x43\x54\x3b\x00\xb1\x6f\xb4\x64\x06\x7e\x3b\xa6\xd9\x8c\x80\x1d\x1d\x14\xb6\xed\x09\x8a\x25\xe5\x8b\x62\xb0\xcc\x5d\x04\x78\xb7\x53\xaf\xea\xf2\x0f\xf3\x9c\xe8\x67\xe5\xb1\x97\x1b\x29\x98\x6f\xf7\x71\x90\xea\x78\xa2\xb6\xdd\x8c\x9d\xec\xd5\x7c\x15\xb9\xb5\xbe\xf9\x5e\x24\x0c\xbf\x37\xbd\x63\x48\x59\x2d\xc6\x26\xb4\xa3\xc0\xfb\xb3\x07\xb1\xdb\xa1\xdf\x9c\x05\x7f\x29\xe0\xa5\xb3\xe0\xbf\x09\x0c\x11\x8a\x9c\x0f\xad\xc8\x79\xf9\xa4\xf9\x20\x0a\xeb\xfa\xed\x29\x27\x2c\xf6\x52\x40\xc5\xf9\xec\x81\xfd\x26\x54\x84\xa6\x8a\xfd\x94\x59\x52\xcd\x66\xd8\x36\x5a\x08\x3e\xaf\x23\x82\xd6\xa2\x62\xde\xa8\x76\xff\xf7\x82\xcf\xd1\x56\x52\x3b\xf8\x6c\x8e\xbe\x17\xf0\x46\x60\x58\xc8\x87\x5b\xf9\x6c\x98\x4d\x0c\xea\xdb\x56\x71\x85\xec\x95\x50\x17\x73\xbd\x10\x30\xab\xbb\xec\x0a\x6f\xf7\x79\xc4\x7a\xb6\x38\x0c\x66\xcf\x9e\xcb\x11\x7c\x12\xb2\x3e\x4b\xc3\x05\x0b\xac\xa9\x55\xa4\xe5\x20\xc2\x02\x2b\xaa\xa6\x7f\x97\xf9\x20\x2d\x8b\xf4\xdc\x2f\x49\x58\x18\xbe\x97\x49\x2b\xf1\x18\x6d\x2f\xb7\xf3\x7e\x7f\x32\x3e\x56\x92\x19\xc4\xce\xb8\x68\x21\xb4\xe6\xcd\xe6\x1a\x0f\xad\xe7\x4b\xff\x6e\x25\xe6\x16\xb3\x2c\xdc\x32\x61\x8e\x60\xce\xd5\x1e\x6b\x09\xb8\xe5\x6a\x87\xb5\x04\x6c\x78\x38\x9a\x8d\xe1\x81\x6f\x76\xbb\xed\x1e\xa6\x7c\x63\xdb\x6f\xd1\x06\xc3\x3d\x6f\x6e\x76\xbb\xa6\xef\x3c\xfb\xe6\x07\x7d\x9d\xd2\x33\xf9\x6d\x53\x92\x1b\x7c\x2c\x77\xc5\xf0\x29\xf1\xa9\xb1\x54\xb3\x1a\xd7\x2d\x67\x32\x2f\xec\x24\x37\xa3\xf9\x18\xc5\x4f\xd2\x56\xe8\x44\x70\x2f\xf0\x3e\xa3\xe9\x0f\x2f\x56\xab\xad\x13\xc2\xc2\xf2\x74\x32\x3f\x5b\xdb\x36\x0a\x39\x32\xb2\x38\x15\x39\x05\x85\x4a\xae\xea\xb2\xf0\x8a\x76\xbb\x43\xda\xed\x32\xda\xed\xda\x21\x86\xc0\xd9\x8c\x6e\x75\xdb\x81\x13\x41\x58\x6e\x5d\xe1\x98\xe2\x0c\x29\xc7\xfd\xfd\xd9\xfd\x10\x6d\x78\x52\xf5\x76\xd7\x61\xda\x96\x48\xc0\x06\x66\x60\x4d\xe6\xe6\x9a\x91\x48\xdf\xb3\x0d\x73\xee\xc2\xad\x86\xc2\x12\x08\x98\x7b\x8b\xe3\xb2\xb5\xd9\x5f\x76\x3b\xab\x24\x89\xb1\x38\x47\x6b\x7e\x23\x33\xef\x76\xd6\x07\x65\xb7\x53\xfd\xbc\xce\x7d\x14\x35\x2f\x1d\x0f\x3f\x0a\xb4\x91\x47\xfc\xb5\x39\x3d\xf2\xe5\x2c\xe2\x31\xdc\x4a\xc4\x11\x82\xb9\xea\xfb\x81\x6b\xec\xa6\xb7\xe8\x59\x59\x20\xac\x4d\x10\x1e\x8e\x59\xfb\x02\x4d\x04\x0b\x84\x7c\xfe\x70\x7e\x8b\x2f\xdd\x93\xb9\xf2\xdb\xcf\x91\xcf\x57\x28\xc0\x4f\x52\xdc\xba\xbd\x7a\x38\x5d\x6b\xc2\xfd\xa7\xa9\x2e\x95\xf0\x3b\x14\x2b\x27\x12\x71\xdf\xf8\x0b\xf2\x79\xf2\xc4\xdc\xe2\xb9\x40\x42\xcd\x2d\x6c\xa7\x2c\x82\x88\xdd\xc2\x92\xf9\x20\x58\x02\x1b\x26\x33\x7f\x8b\x22\xbc\xc7\x17\xf3\xcb\xe4\x02\x7f\x44\x02\xe6\xad\x96\xe2\xb3\x9e\xf1\xd2\xd6\xe5\x1f\xd0\xf7\x0a\x70\x3c\x83\xf2\xd5\x17\x16\x6c\x30\x66\x07\xc1\xcf\xb5\x73\x51\x9d\xc4\x64\x83\xce\xcd\xb7\x57\xc7\xd7\x56\x6d\x40\x67\xd1\x77\xc2\xea\x67\xe2\x74\xb3\x47\x81\xf7\xea\xc2\xb7\xdd\xee\xd4\x46\x52\x5b\xe7\xac\xe4\xa3\xba\x81\x19\x06\xb9\x73\x86\x5f\xda\x33\xd1\xa3\x7b\x26\x1a\xe6\xfc\x7c\x30\x94\xbd\x79\x40\x31\x98\xbd\x01\x41\x66\x98\xd8\xe4\x3c\x3c\xfc\x8a\x99\x49\xc0\xec\xb1\xed\x66\x72\xc9\x15\x54\x53\xff\x13\x9a\x36\x39\x3f\x36\x7f\x1f\x7e\x46\x0f\xb9\xc3\xe6\x67\x34\xc5\x98\xc9\x94\xea\x4d\x8e\xaa\x9d\xcd\x6e\xb7\x40\x1b\x10\xf0\x30\x12\x63\x55\x67\x79\x31\x9f\x41\xbc\xdb\xa1\x67\x15\xcf\x8e\x0d\xd6\xfb\xfc\x13\x7f\x36\xba\x15\x63\x78\xcd\x9b\xcd\x4f\xb6\x8d\x8a\xd0\x72\x9f\x54\xa8\xb5\xcc\x6a\x4b\xbf\x61\x78\xc7\x73\x2c\x72\x26\x9b\xbc\x13\xca\x61\x58\xee\x94\xa9\x90\x0b\x20\x9f\x6e\x8a\xc4\x8d\xba\x09\x0b\xad\x87\x66\x85\xf1\x68\x25\xc6\x9c\xcf\xd8\x4a\x75\xfc\x19\xde\xed\xbe\x47\xcf\x1e\x81\xf1\x33\x09\xdc\xaf\x47\xb3\x31\xdf\x28\x84\xfb\x6d\x2b\x72\x7e\x54\x48\x17\x6d\x9a\xfc\x41\x5d\xbf\xa5\x10\x31\xcc\x60\x7b\x44\x80\xb2\x74\x5f\xc6\xd3\xd5\x3d\xfa\xe0\x44\x8b\x6c\x55\xb4\x87\xdc\x0c\xb6\x8b\x38\xba\x63\xaf\x05\x44\x0b\xf6\x4e\xa2\x36\xeb\xa8\x4e\x4b\xf6\x5b\x4e\xf8\xb3\xba\x8f\x72\x93\xc8\x06\xdf\xc1\x4c\x62\x61\x78\x81\x66\x26\x41\xf5\xe0\x5a\xc8\x46\x34\xbe\xdd\x97\x3f\x34\x5f\xc3\x4c\x61\xeb\x78\xb7\x7b\x96\x0b\x69\x39\x5f\x08\xb5\x76\x79\xc2\x42\x94\x4b\xd5\x1d\x3a\x82\x73\xc7\x61\x3d\xa4\x0c\xcd\x57\xda\x43\x75\xe2\xd3\x11\x01\x3a\x3e\x90\x09\x23\xdc\xe4\xba\x62\xf5\x15\x1f\x7d\xd6\x97\x54\x55\xab\x7b\x76\x90\x4b\x4f\xb3\xae\x60\x8f\x75\xb7\xea\x08\x89\xf7\x72\xa1\x5f\x0f\x3f\xb1\x77\x72\x1e\x5e\xeb\x59\xbe\x15\xf0\x2e\x8b\x3f\x53\x1b\xbc\xa7\x6c\x1b\x5c\x38\xcd\x65\x71\xf4\x8c\xe7\xf9\xe1\x9d\xb1\xd4\x63\x84\x7a\x4a\x4b\x49\xda\x9e\xd2\x18\x92\x76\x1f\x0e\x54\x73\xb9\xe3\x6d\xe6\xb1\x4e\x3a\x5d\x46\x3a\x5d\x20\x9d\x1e\x23\x9d\xdc\x0e\x35\x8f\xcf\x97\x05\xf4\x26\xbd\x0e\x23\xbd\xec\x9e\xb7\xf6\x80\xb5\x07\xd0\x71\x59\xee\xcf\xaa\xef\x9d\x54\xee\x0e\xd5\x1b\x6b\x4b\x37\xc2\x1d\x79\xa6\x64\xa1\xc1\x4b\xf7\xc2\x95\xa2\xff\x1d\xdc\x6a\x2b\x7b\x7a\xa4\xbf\x3a\xb2\x23\x2a\xeb\x98\x32\x5b\xe8\xfe\xe0\x40\xc7\xe4\x51\x13\xb7\x93\x98\x4b\x2b\x7b\x1d\xad\x63\x6a\x7b\x5a\xc5\xa4\x34\x4a\xf3\x4c\xa3\x74\x9b\x69\x94\x56\x85\x16\xe8\x2e\x37\x5a\xde\x18\xcd\xcd\x43\x16\x08\x74\xca\xc3\x8a\x7e\xe5\x86\x87\x85\x7e\x65\xc2\x43\x47\xd2\x28\x70\x5f\xd5\xe1\x5c\xf3\xd0\x79\x15\x2e\x82\x30\x48\x1f\xe0\x03\x9f\xc2\x5b\x3e\x71\xfc\x69\x02\x9f\xf9\x44\x05\x94\x7b\xc6\x27\x9a\x7f\x87\x8f\x7c\xe2\x2c\xa3\x1b\xf8\xc4\x27\xce\x77\x6f\x28\xbc\xe6\xc1\xd0\x9a\x4c\x2d\x96\x13\xac\xef\x54\xca\x52\xa6\x94\xc8\xd2\x5f\x54\x6a\x64\x52\x0d\x11\x5b\x84\xfa\x79\x8e\x0e\xaf\x93\x06\x5f\x9d\x14\xad\x6f\x88\xe5\xd4\xf5\x9f\xc4\xe7\xe9\x39\x81\x35\x47\xe4\xf2\x32\xc1\xe7\x04\x96\x7c\x7d\x75\x45\x60\xc6\x69\x5b\x31\xc5\x9f\x55\xac\xbb\x0e\x3e\x57\x0f\x9e\x87\x99\x0b\x0b\xee\xca\xd9\xbc\x74\x77\x3b\x57\x5f\xd1\x41\x9e\x8a\x4b\x77\x48\x98\xab\x90\x3c\x12\xfc\x2d\x12\x18\x37\xb9\xd8\xed\x04\xe7\xfc\x7a\x88\x02\xae\xe2\xb8\x11\xe6\x42\xc8\xd7\x98\xa1\x90\x3f\x43\x1f\x91\xc0\x4f\x3f\x61\x10\x4f\x50\xc4\x55\x03\x92\xc8\x23\x92\xf8\x3b\x3f\x87\xe8\x09\xa7\x18\x90\x68\xf1\xb0\xb5\xbc\xe2\x64\x38\x7b\x1a\xb1\xd9\x13\x99\x8f\x9c\x2f\x31\x7e\x12\x5d\x71\x2a\xf3\xb6\x5a\x10\x3d\x95\x79\x55\xbe\xb5\x6c\xcc\xb4\x62\x0a\xa2\x80\x23\xf1\x24\x3a\x27\x58\x95\x4e\x65\x4e\xbe\xc4\x4c\xf6\x4a\xa5\x2c\xcb\x9f\xb8\x8b\xf1\x45\x7a\xc5\xfb\x17\xfe\x68\xd1\x6a\x8d\xb9\xa4\x33\x03\x08\x9e\x72\xda\xed\x41\x7a\xce\xfb\xf8\x42\x5d\x23\xce\xc3\xcb\xcb\x74\x17\x40\xd2\xe2\xe9\x45\x72\xe5\x96\xf3\x87\x10\xea\xfc\x89\xca\x9f\x49\x90\x46\xe7\xe7\x8b\xf1\x8e\x13\xda\x7f\x32\x07\x7f\x9f\xaf\xd6\xfb\x83\xd5\xca\x97\x26\x52\x4b\x13\xc8\xa5\xf1\x79\x24\x97\x26\xe1\xc1\xb9\x07\x6b\x1e\xab\xd5\x12\xa3\xf5\xf9\xf9\x18\x66\x9c\x50\xcf\x5e\xea\xab\x9e\xae\xae\xb8\xa7\xfa\x33\x93\x3d\x78\x32\x6b\xa9\x8b\x7b\xd7\xe7\xe7\xa6\x33\xba\xf3\x33\x5b\xd6\x7c\xae\x56\x7d\x76\x75\xc5\xcf\x93\x62\x20\xa1\x2a\x18\x1e\x16\x0c\x16\xc8\x55\xf7\x07\xcc\x38\x39\xf7\xf3\xcb\x24\x66\x9c\xf3\x28\xa3\x64\xc3\xe1\x1b\xff\x0d\x5b\x0e\xcf\xaf\xd9\xf5\x59\xd8\xe2\x66\x56\x67\xe7\xdc\x37\x9e\x17\x68\xa9\x02\xf9\xe1\x27\xa1\x9a\xf2\xd9\x79\x8a\x8b\x89\x78\x55\xb9\xff\xb9\x3d\xbe\xbc\xa4\x9d\x9d\x18\xd1\xf1\xe5\x25\xe9\xed\xc4\x88\x8c\x2f\x2f\xfb\x3b\x31\x72\xc7\x45\x99\x17\x45\x99\x91\x9c\x7b\x51\xfa\xf6\xe6\xf0\x1b\x88\xab\xab\xbe\x4d\xbb\xdd\x52\xa6\xef\x4e\x66\x92\x0f\xa4\x97\x3d\xd1\xce\x41\xc1\x97\xa5\xde\xca\x03\xd7\xa5\xd0\x2f\x0d\xe6\xb7\x83\xcf\xb4\x0d\x9d\xd2\xe7\x8c\xa1\xdf\xde\xa1\xb2\x93\xc3\xa3\xca\x22\xa3\x29\xca\xeb\xf8\xa6\x6a\xcc\x1b\xf0\x5b\xd4\x8a\x71\x26\x2b\x12\xa3\x77\x63\x43\xb1\xdf\x67\x14\xbb\x12\x21\x37\x33\xee\x86\x8b\xd1\xeb\xb1\x33\x99\x82\xcf\x83\x96\x18\xfd\x32\x86\x84\x67\xa1\x3d\x7c\xf0\x5b\x85\x85\x64\x38\x4c\x58\xe2\x18\x49\x25\x2a\x75\xe1\xef\x51\x7e\xf1\x0e\x44\x99\xd5\x62\xde\x0d\xff\x4b\xdd\xc8\x04\x9d\x49\xde\x95\x35\xf7\x75\x57\x96\x3c\x44\xad\x40\xc2\x72\xf7\x62\x76\x99\x5e\xcc\x5a\x2d\x9c\x8c\xd6\xad\xd9\x98\x2f\x47\xd1\x70\xc6\xd2\xf3\xd9\x39\x19\xef\x65\x33\x92\xd3\xd5\x4c\xd9\xb2\x82\xeb\xa7\x9a\x03\xd8\xed\x0e\xd2\xd5\xe5\xb0\x86\x05\xd8\xed\x96\x75\xda\x5a\x7d\x7f\xac\xce\x98\x13\xff\x53\x75\xa5\x25\x54\x88\xf6\x26\x9f\x2a\x02\x54\xd2\x0e\xb9\xe0\xf6\x07\xf8\x95\xa3\x69\x9d\x49\x87\xb9\x72\x7a\xaa\x2b\xfc\x80\x6e\x95\x6d\x47\xf9\x02\xda\x0f\xa5\xed\xf0\x23\x5f\xa1\x0f\x18\xfe\xc2\xdd\x8b\x1f\x33\xd1\xeb\x5f\x2e\x30\xfa\x81\xff\x38\xfa\x4b\xab\x35\xc6\x41\xd8\x98\xee\x76\x09\x9a\xc2\x0f\xf0\x61\xf4\xc3\x18\x9f\x45\xbb\x1d\xfa\xb5\x42\x50\x4f\xf1\x5e\xf6\xe9\x5b\x7d\xd3\xae\xbe\x19\x17\x51\x49\xdd\x97\xef\x8e\x53\x26\x8a\x61\xda\x3f\xfb\x36\x7b\x42\x2e\x50\xd2\xf1\x3a\xfd\x76\xaf\xd3\xc7\x50\xa4\x93\x22\x7d\x80\xa1\xf9\xad\x73\x93\x15\xc0\xb6\x5d\xbc\x11\xbc\xdb\xad\x2b\xd7\xd8\x6e\x4d\x0d\x07\x02\xdf\x9f\x4a\xf7\x1d\x0b\x48\xe5\xb1\x97\xe7\x4d\x4b\x0f\x94\xfd\xc3\xd7\x16\xd8\x4b\xea\x5e\x93\x63\xd5\xd9\xcf\xa6\xbd\xba\x76\x99\x5c\x56\x69\xc6\xb5\x3a\x76\xca\x37\x85\xaa\x4f\xa3\xcb\x14\x83\xab\xa3\xd5\x8d\xde\x8d\x79\xba\x87\x9b\x23\x99\xa1\xa9\xfe\x06\xac\x8c\x3a\xb0\x30\xcc\x90\x90\x0d\x16\x29\x19\x55\x33\x7a\x37\x86\x80\x2f\x8c\x95\x56\x20\x71\x69\x70\x15\x1e\x1e\x92\x42\x1d\xaf\x0e\x34\x8a\x4b\x57\x52\x0c\xc3\xf3\x80\xcd\x25\x97\x76\x5c\xae\xe0\xca\x55\x97\x5f\x8f\xb9\xbe\x2e\x6a\xf4\xcb\x98\x07\xf9\x30\xe2\x3d\x04\xb6\x8d\xbe\x47\xd3\x03\x81\xd7\x64\xa9\xa4\x5b\x37\x25\x99\xd9\x64\x9a\x27\x9d\xc8\x59\x96\xa4\x4d\x22\x0b\x63\x38\x58\xf8\x9b\xa3\x85\xcf\x4f\xc4\x37\x7a\xee\x08\x08\x3c\x72\xc7\xd9\x5a\xaa\x70\xa2\x87\x6b\x7f\xa2\x8c\xca\xfb\x2a\x4c\x49\xaf\xe6\x06\x7e\x93\x95\x96\xb5\x18\xea\x3a\x0d\x83\x90\x52\x83\x56\xd4\xa5\x1c\x12\xd1\x48\xa0\x9f\xb7\xfe\x67\xaa\x6c\x94\xab\xcc\xfa\xd6\xa6\x75\xe3\x78\x85\x4c\x5d\x9d\xc3\xba\x70\xde\x85\x7f\x77\xc9\xab\xab\x2b\x57\x95\x56\x31\x36\xea\x8b\xbf\x3f\x59\xdc\x20\xaa\xbc\x7c\xaf\xf3\x68\xf9\xfe\x51\x79\x8d\x07\xa1\xfe\xa8\xff\x7d\xbe\x70\xf0\x42\x09\xe0\x4f\x9c\xf0\xba\x7c\x87\x2b\x5c\xca\x27\x97\xe2\x4d\x59\x25\x3e\x92\xdc\x5c\x56\xf9\xbf\xbf\xd4\xe1\x82\x95\x0a\xc9\x09\xfb\xee\x64\x53\xff\xfe\x52\xc7\x8b\x74\x50\xec\xb7\xd3\xc5\x2a\x6b\x53\x2a\x26\x17\xe5\xe5\x51\xb1\x3d\x3e\x7b\x40\x87\x10\x10\x1e\x50\x15\x6a\x25\x95\x83\x6b\x8c\xa0\x54\x5c\xfc\x32\x27\xc4\xa7\x10\xe7\x9c\x10\xbf\x29\x87\x84\xc9\xb9\x59\x13\x1d\xfe\x24\xf7\xaa\xb9\x54\xcd\x85\x6a\xfe\xb3\x12\xc4\xb1\xb8\xab\x33\xe3\x21\x73\xee\xf1\xc8\x40\x3f\x37\xdb\xa9\x18\x26\xe6\x37\xb7\x76\xd4\xdd\x95\x51\x66\x19\xa6\x94\x8e\x72\xa8\x32\x69\xa3\x87\xbd\xe6\x4d\xd4\xac\x30\x7b\xbb\x5d\xb3\x60\xf6\x54\x08\x20\x13\xfb\xc7\x7a\x95\x5b\xe4\x95\x8c\xf3\xd4\xa3\x11\xde\xeb\x94\x57\xb9\x85\x17\x94\xac\xbd\x40\xed\xad\x22\x39\x7b\x36\xfb\xa0\xf4\xd2\xeb\x68\xe9\x7f\xe9\x0e\xde\x8b\xd9\xe5\xe0\x02\xa3\x98\x87\xa3\x85\x8a\x3b\x34\xc6\x43\x14\xa0\xb8\xbc\x62\x6a\xb1\xaa\x69\x89\xd2\x60\xb1\xa5\x0a\x63\x5f\x58\x4f\x3f\xfb\xe6\x07\xb6\x06\x6d\xfc\xc6\x96\xa0\x2c\xdf\x98\x0f\x72\xc5\x59\x52\x8e\x9c\x5c\xbd\x37\x55\xa6\xd6\x5a\xb4\xba\xff\x1f\x71\xff\xbe\xdf\x36\x8e\xe4\x0f\xa0\xff\xeb\x29\x24\x9e\x59\x2e\x10\xc1\xb4\xa8\x8b\x2f\x74\x10\x6d\x3a\x71\x7a\x3c\x93\xc4\xd9\xd8\xdd\x33\xbd\x1a\xad\x97\x96\x20\x8b\x1d\x8a\xd4\x90\x90\x1d\xb7\xa5\xf3\xec\xe7\x83\xc2\x85\x20\x45\xf9\xd2\xd3\xf3\x3b\xbd\x3b\xb1\x08\x82\xb8\x16\x0a\x85\x42\xd5\xb7\xb4\x01\x6d\x16\x26\xd3\x74\xb1\x23\x02\x66\x11\xcf\x47\x82\xa4\x3a\x5a\x8f\x58\xd8\x35\x0f\x1d\x27\x60\xc4\xc1\x57\x0e\x41\xed\x76\xd6\x4e\xb0\xd1\x32\xa1\xde\x01\x2e\x6c\x85\x1f\x83\x3f\x29\xb0\x86\xab\x01\xb4\x56\x39\xcb\xde\xde\xb0\x84\xaf\xd7\x8e\x63\x85\xcf\xf2\xfb\x3b\x7d\x27\x8f\x76\x18\x64\x6b\x23\xb6\x0c\x8c\xd8\x98\x77\xc5\x6b\x7d\xea\x21\x1c\xf6\x16\xd4\x04\x69\x82\x77\x5c\x33\x63\xff\x5c\x45\x19\x9b\x5a\xc6\x6c\xa5\xf8\x3a\xfe\x60\xb7\x4d\x74\x25\x58\xf1\xd1\xb1\xf6\x19\xf7\xa5\xa2\x04\x14\x1b\x8f\x7a\x60\x25\x9e\x9c\x88\xf5\x1a\xe9\x9f\x34\x1a\x3e\x6c\x82\xcc\xbc\x78\xd8\xe0\x86\x73\xe5\x50\xca\x0a\x14\xa5\xf5\x1a\xd4\xa4\x7c\xbd\x0e\x11\x27\x4c\x03\x9a\xa7\x00\xc2\xa3\x3d\xb1\xfd\xc0\x1f\xf8\x64\xcb\xe1\xb7\x58\xca\x83\x1a\xa8\x49\x09\x08\xe9\x0f\xba\xb8\x14\x04\x41\xfc\x7a\xd4\x83\xfb\xee\x9b\xed\xc0\x2d\x39\x40\x07\xab\x4e\x90\xb4\x0e\x76\x26\xaa\xf7\xa1\xae\xf5\xf3\x4e\x5d\x57\x39\x54\xa7\xc3\x28\x48\x30\x52\x04\xec\x39\x6d\x29\xc2\xe7\x3c\xcd\x18\xcd\xb6\x3d\xc1\x0b\xe0\xa5\xc1\x4e\x58\xa9\xfe\xe1\xce\x98\x54\x60\x66\x5c\x86\x0c\xed\x62\x90\xb2\x55\xae\x4f\x80\xa3\x52\x17\x14\xbd\x55\xf8\x08\xb0\x51\x32\x5e\xaf\x59\x35\xf0\x4a\x34\x12\xa4\x3b\x2e\x85\x3d\x92\x9a\x3f\x98\x34\x1d\xb3\xca\x1f\x94\xac\xc4\x35\xed\x80\xd1\x77\x83\x23\xee\x7d\x21\xfa\xae\xd2\xb6\x65\x03\x03\xe8\x0d\x26\x0c\xf5\x06\x18\x39\xc5\x1b\x08\x27\xde\x1b\x04\xbd\x81\x52\x40\x82\x72\x11\x2a\x1a\x94\x2b\xda\x52\x0b\xaa\x5a\x01\x77\xb7\xdf\xc5\xa8\xaf\x1a\xd0\xe6\xde\x87\x57\x2d\x41\x0c\x47\x18\x8d\xc6\x1e\x58\xbd\x01\x33\x34\x2d\xdb\x69\x08\x97\xe9\xb3\x44\x49\x94\x01\xb3\xcc\x07\xbf\x7b\x14\xf8\xdd\x23\xa5\x16\x2d\xda\x79\xf0\xec\x01\x01\x83\x39\xd0\x2c\x16\x43\x21\xd2\xac\x41\x90\xfb\x5f\x51\xf8\xe1\x0b\x07\xa1\xbb\x63\x10\xa4\xdd\x5d\x79\x14\x76\xdb\xe2\xfd\x9e\x61\x38\x7a\x61\x4b\x01\x08\xd1\x31\x86\x76\x0e\x89\x68\xab\xd3\x48\x9a\x51\x32\x1a\xbb\xae\x3c\x71\xf9\x78\x94\x8c\x4b\xa7\xf2\x88\xb6\x7c\x40\x11\x37\x9d\x8c\xec\x0e\x3d\x62\xb5\xb7\xdd\xa7\x27\x6c\x98\xcc\x1c\x25\xd6\xf4\x54\x3a\x7d\xfc\xc2\x4e\x0f\x20\xa4\x4d\xa7\x01\xfd\x76\xca\x5d\xf5\x44\x5a\x59\x3d\xb1\xd5\xd9\xa4\xdc\xd9\x3f\xb6\x9f\xb2\x51\x3b\x3b\x7b\xd0\x79\x61\x67\x35\x10\xae\x26\x41\x69\x00\x29\x68\xd0\xa6\x51\xbb\x4b\x35\x26\x92\xbf\x9f\x22\x0f\xfc\x67\xb4\x77\xd0\x97\xed\xd5\xae\xbc\x06\xb3\xb5\x1a\x93\x16\x6e\x0d\x80\xe7\xf6\x8a\x98\xb4\x8d\x02\xcf\xb2\x05\xce\x1f\xe5\x4b\x64\x2b\x16\x11\x93\xf0\x96\xa6\xa7\x59\xba\xd8\x3a\x50\x66\x3a\x82\xb0\x44\x34\x9d\xd7\x6d\x54\x62\x14\x86\xe2\x9f\x40\x0a\x88\xcb\x6d\x4b\xe7\x05\x5d\xee\x30\x03\xbf\x2d\xcc\xc0\x17\x2a\x24\xf1\x0a\x4d\x41\xaf\x70\x0b\xb1\x85\x39\x5a\x90\x65\xbd\xf9\x30\x18\x6e\xcb\x8b\xd6\xeb\xf5\x7a\x4e\xa5\x0b\x0a\x44\xf8\xc7\x80\x0a\x1f\x4b\x47\x48\x94\xd1\x10\x4d\x8d\xc7\xf9\x49\xf6\xe6\xfe\xe4\xbe\xdd\xc6\x39\x8a\xc9\x3d\xb9\x1d\x2e\xd0\x14\xa2\x1b\xe3\x40\xfc\x55\x31\xa7\xc0\x2a\x80\xaa\xa0\xd6\x53\x21\x63\x43\x59\x27\x2d\x34\xa1\xb3\xb2\xdd\xb9\x5d\x56\x84\x66\x64\x41\x46\x13\x65\x04\x75\x3f\x16\xb4\x15\x4c\xb4\x39\xba\xbe\x78\x57\x8d\xa1\xf7\x24\x56\x04\x53\xbd\x38\x53\x17\x62\x83\x5e\x20\xfe\x85\xab\x2e\x15\xc4\xaa\x88\x73\x2b\x2f\xb3\x80\xb0\xba\x2f\x59\x08\x0a\xd9\x36\xa1\xa3\xb1\xa7\x2c\x77\x05\xab\x6b\x25\xae\xeb\xef\x8f\x7c\x93\x88\x7c\xb2\xd7\xc1\xaf\x3b\xd6\xda\x40\xd1\x7a\xad\x79\x78\x62\x93\xcf\x23\x16\xc0\xd1\x30\xa9\x8f\x64\xbf\x5e\x77\x82\x67\xad\x22\xb8\xfb\x2b\x56\x51\xef\xf1\xed\xed\xc2\x6a\x95\x8c\x50\x19\x40\x80\x6d\x28\x53\x0d\xe2\x71\x70\x08\x42\xde\xc1\xf3\x02\x13\xf6\x06\x0a\x1a\xf2\xd0\x48\x3d\x06\x60\xbc\x24\xfe\x1c\x0d\x30\x92\xcb\x40\xb7\xa1\xe2\x9d\x23\x55\x79\x5c\x61\x87\xc3\x43\x44\x3b\xea\xd7\x37\xca\x37\xe5\x78\x86\xd2\x7d\x40\x7d\x44\xb8\xfa\xf5\x4d\xdb\x66\x5e\x45\xed\xb6\x22\xaa\x16\x5b\xaf\xb3\x37\x54\x87\x76\x1e\x22\x5d\x93\x5a\x2c\x09\xf2\x21\xf0\x41\x87\x48\x3c\x21\x4a\xf9\x30\x0b\x0a\xcb\x05\x3e\x64\xa3\x6c\x1c\x8c\x32\x22\xfe\x8e\x85\x3c\x50\x44\x71\x8b\xbc\xb7\x7a\x7a\x68\x24\x4f\xa2\x24\x33\xc0\x44\x99\x15\xef\x2d\xb3\xa2\xe2\x01\x5d\x4b\xd4\x58\xc9\xbe\x8f\x06\xc1\xd1\x80\x1c\x1d\x06\x47\x87\x85\xf8\x76\xf0\x12\xa9\x4a\x61\x99\x8f\xc6\xe0\xb0\x65\x13\x26\x38\x61\xb6\xa8\xc6\xfd\xad\x25\xd2\xb2\x05\xb8\x05\xc7\xad\xf0\xeb\x94\xc1\xac\x7d\xda\x23\x4e\xc0\x2a\xe4\xa8\xfb\xa4\x48\x49\x3b\x70\x1e\x1c\xbc\xbc\x1f\xea\x0e\xd8\x8a\xf8\x3e\x1a\x97\x1d\xd7\x68\xab\x95\xea\x65\x69\xbd\xa8\x5b\x9a\x61\xd1\xeb\xd4\xee\x75\xad\x09\xbb\x14\xc4\x43\x6c\x60\xd3\x77\xad\x50\xe3\xbf\x2b\xc7\x06\xc0\x87\x8d\xfd\xef\x8a\xe6\x7b\xbe\xc4\xb7\xde\xda\xda\x5d\x17\xad\x8c\xd3\x2a\x5a\x91\x04\x95\x75\x81\x98\xac\x5e\x77\x20\x53\xde\x5e\xe1\x93\xd5\x1b\xda\x39\x59\xed\xed\xe1\x68\x86\x56\x70\x7c\x73\x5d\x3e\x5a\x8d\x6d\x67\xe2\x95\x68\x8f\xfc\xbd\xe7\x57\x26\xc5\xe8\x70\x34\x56\xbe\x64\xa8\x05\xd7\x78\xa9\xdc\xea\xef\x90\x5b\x17\xe1\xb2\x2c\xb4\xee\x30\xf3\xff\x3d\xf2\xc1\x4b\x24\x56\xb1\xd9\x03\xbb\x83\x06\x6e\x07\x7e\x31\x17\x61\x0c\x99\xe8\x7d\x2d\xc9\x9c\x8c\x09\x0f\xc3\x36\xf2\x7a\x59\x20\x48\x67\xb5\x76\xff\xf5\xbe\x4c\x80\x39\x50\x87\x94\x50\x91\x0e\x30\x32\xbe\x4e\x28\x29\x8d\x0d\xb3\x61\x18\xb4\x85\x39\xe5\x24\x91\x23\x26\x37\xc2\x0a\x04\xc7\xc1\x8b\x84\xdd\xde\x8e\x09\xb5\x7d\x41\x4b\x13\x5b\xeb\x3a\xf1\x0c\xb1\xb6\x34\xe3\x70\xed\x53\x9e\xf4\x5e\xd0\xef\x15\x93\x7e\xf8\x22\x21\xf6\xf1\x4e\xd4\xb5\xff\x5f\x69\xba\xff\x44\xd3\x9f\x23\xcf\xea\xa6\x1f\xf6\x2a\xb1\x92\x7b\x87\x7a\x13\x05\x85\xd0\x68\x2c\xef\x77\xad\xfe\xd5\x44\xb6\x33\x20\x9a\x59\x99\x5a\xa5\xb9\x56\x9d\x02\x23\x45\x96\x1b\x83\x8c\x85\x28\x1d\x1f\xa2\x19\xe2\xd4\x72\xb4\xc8\x02\x4e\x4c\xf0\xd6\x1c\x97\xf1\x83\xf5\x85\x5e\x71\x31\xbc\xa2\x32\xa0\x1b\x89\x05\x4b\x14\x3f\x26\x34\x45\xf1\xde\x0a\x93\x99\x65\xd1\x32\xc1\x64\x4a\x3b\x27\xd3\xd7\x93\x93\x69\xbb\x8d\x67\xa3\xe9\x98\x16\xf1\xc2\xe5\xda\x30\x58\x61\xed\x29\x0e\xe0\x1a\x6c\xd5\x9e\x8e\x2d\x3c\x76\x98\x03\x6d\x73\xa5\x38\x9b\xc4\x93\x28\x59\x3e\xa9\x88\x32\xfe\xe1\x8b\xc4\xc1\x2e\x46\xbb\xa8\x2a\x4f\x17\x15\x9a\xda\xe5\x93\xf3\x3b\xb8\xdd\x61\xef\x05\xad\xec\xf5\x2a\xa7\x21\xe9\xda\x0f\x6d\xcc\xb8\x20\x1f\x9f\x74\x49\x6f\x5c\x92\x55\x4b\xa4\x13\x42\x4e\x54\x60\xa5\x6e\xd9\xdf\xa9\x1c\x1a\xbb\x6e\xc7\x76\xba\xcb\x8f\xc8\x92\x1a\x34\x02\xae\xf6\xad\x2c\x3f\x13\x05\x9a\x50\x96\x29\xa4\xdc\x2f\x91\xfc\x2a\x6c\xee\xb0\xa2\xe0\x92\xce\xfc\x48\xb5\x48\x16\x03\xf6\x79\x90\x79\xf0\xa4\x74\xfc\x3e\xe4\xcc\x21\x0f\x49\x7a\xb7\x6d\xcd\x01\x97\xcb\x22\x03\xa8\xf1\x2e\xa3\x05\xc0\xaa\x1b\xc9\x19\x6a\xd8\xad\x5e\x92\x1b\xd3\xc0\xa6\x26\x24\x0a\xb3\xee\xf2\x79\x7a\x76\x71\x2e\xe9\xbf\x45\x69\x86\x4d\x73\xac\x17\x41\x26\x79\xfe\x20\x18\x0c\x2c\x7a\x79\xc9\x0e\x0e\x74\x92\x28\x48\x86\xc7\x59\x8a\xda\x72\x24\xe8\xac\xee\x3e\x98\x53\x78\x3c\xfd\xcb\xc5\xf9\x67\x84\xd7\x6b\xbf\x45\xe9\x56\x4f\xc4\x4b\xe5\x77\x62\xb7\x7e\xbb\x70\x10\x56\xb0\xdd\x57\xf1\x69\xb0\x25\xe8\x6b\x29\x8b\xc3\x79\x5b\x83\xdd\x25\xab\xc5\x35\x98\x73\xe8\x3d\x75\xbd\x36\x81\xef\x39\x1e\x96\xc6\x14\x61\x15\x05\x45\x4a\xdf\x65\x33\xcc\x2a\x5d\x1d\xd5\x4f\xa4\x06\x45\xfd\x92\x45\x8b\x48\xa2\x96\x91\xac\xd2\xfb\x06\xf8\x3d\x65\xeb\xb5\x0c\xcc\x9e\x11\x4e\x18\x1a\x1c\x60\x6c\xa3\xb3\x1e\x04\x83\x83\xe2\x6e\xe6\xf0\xb8\xae\xba\x72\xb1\xe2\x60\x53\x80\x2d\x24\x94\x6b\x2a\x6c\x94\x26\xa6\xed\x38\x2d\xea\x9c\x25\xb7\x61\x1c\x4d\x21\xd9\x71\x5d\x09\x63\x8f\xf8\x2e\x00\x74\x39\xc4\x89\xe5\xff\xd3\x28\xd0\x8d\xd9\x30\xb3\x5e\x04\xe5\xb2\x15\x0c\x7a\x01\x6e\x7f\xd4\x79\x52\xc3\xaa\x2d\xd3\x1d\xf2\x70\x1d\x25\xd3\x80\xa1\xfe\x81\x3c\x82\xf6\x0f\x82\xfe\x41\x41\xd6\x47\xcf\xd9\x44\x8f\x7c\x45\xd6\x9d\x81\xad\x8c\x9f\x87\xf9\x99\x12\xe0\x40\x1f\xbf\x6d\x0e\x0f\xea\xcb\x66\x24\xe6\x09\xee\x5b\x50\x44\x12\x7d\x21\x52\x39\x0c\x14\xd2\x5b\xcb\x96\xde\xd6\xeb\x16\xb7\x02\xa3\xfa\x32\x30\x2a\xd2\x61\x1a\x65\x35\xc6\x63\xa4\x14\x98\x07\xd0\xbf\xc0\xfb\x4f\x22\x10\x9d\x08\xe1\xbe\xfc\xa1\x25\xde\xb7\xb4\x6c\xdf\xd2\xb2\xbd\xb6\x46\x56\xf4\x54\x8e\x8c\xea\x1f\x75\xeb\x27\x41\x1a\xcc\x66\x35\x83\x41\x12\xba\xff\xbf\xff\xc8\x5f\x19\xd1\x18\x8d\xfe\xb7\x89\xc6\xaf\xf0\x7e\x43\xc2\xf9\x6b\x92\x1e\x1c\x61\xd7\xe5\x28\xd3\x28\xff\x4f\x21\x14\x17\xd1\x28\x90\xe3\xb4\xa5\x53\xec\x02\xd0\x9d\x13\x3c\xf2\xc7\x0a\xe9\xb9\xb8\x5f\x74\x36\x4a\xaa\x2d\x47\x37\x3b\x7a\x1e\x82\x61\xdf\x60\x31\x1d\x57\x2e\x5f\x7c\x8c\x9c\x4f\xe1\xd2\x29\x7b\x3b\x54\x1d\x9b\x0a\x4b\xc6\xca\x79\x4f\x9f\xdd\x3a\x96\xba\xad\x53\x52\xcb\x96\x4d\x00\xad\x08\x2d\x37\x8c\x9f\x26\x3c\xbb\x57\x9b\x1c\x81\x66\x60\x52\xe8\xbc\xc4\x71\xce\xbb\xad\x7a\x5d\x59\x1e\x91\x99\x37\x65\xb3\xca\xe7\x72\x3b\xed\x04\x0a\xab\x0a\x6e\x0b\x80\xaf\x1d\x07\x7e\xff\x98\xf4\x8f\x83\xfe\x31\x19\xf8\xc1\x00\xee\x22\x8f\x76\x5f\x04\xc1\xe2\x39\xee\x1a\x1c\xa5\xfc\x9f\x19\xd7\x00\x5a\xe1\x24\xcd\xe7\xd6\x51\xaa\x85\x22\xd7\x3d\xf4\x3b\xd4\x76\x67\x8e\xd0\x67\xe0\xc2\xde\xa7\xb7\x7f\xbf\xfa\xf9\xed\xc7\x9f\x4e\xa5\xfb\x8e\xbf\xdf\xc1\x12\x03\x52\xb4\x99\xcf\x1d\xf2\x00\xe5\xd5\x48\x08\x12\x5b\xea\xb5\x0f\x96\xa8\xec\xcd\x71\xff\xb8\x73\xd0\x3d\x18\x78\x07\xdd\x7e\x77\xe0\x0f\x0e\x86\x26\x56\x35\xc3\x6d\xf8\xfd\xf1\x73\x37\xc8\x10\xdb\xf3\xdb\x89\xf8\x17\xbf\x4a\x10\x6b\xfb\xd8\xde\x90\xc9\x71\x37\x38\x96\x7c\x64\xf7\xc6\xaf\x3d\xb3\xc3\x3c\x4a\xca\x3d\xcd\x5c\xd7\xdf\xcf\x50\x07\xbf\xb1\x3b\x20\xb2\x05\xd6\xf9\xd1\xc2\x6d\x36\xfb\x0e\x6d\x73\xec\xba\x9d\x16\xe5\x43\xfe\xba\x33\xdc\x63\x68\x8f\xe3\x22\xdc\x36\x6f\x9b\x71\x46\xfc\x15\x17\xad\x0e\x78\x45\x90\x38\x7a\x54\x90\x90\x2d\xe6\x61\x7d\x8b\x41\xfb\x61\x35\x59\xe4\xab\x93\xca\xec\x20\xec\xa6\x71\x10\x0c\x7c\x1f\xf9\x7b\x0c\xe3\xfd\x6e\xb5\x55\x87\x4f\x50\x51\xcf\x08\x52\xaa\xf2\xc9\x75\xbd\x44\x98\xc9\x9a\x5f\xe9\x70\xed\xc8\x0e\xa7\xee\xef\xf7\xca\xf3\xa8\xe2\xa0\xfb\x47\x3b\x76\x65\x4b\x80\xd3\xf5\xc6\xbf\xd5\x9a\x50\x21\xf6\xe6\xcd\x1b\xda\xc1\xc3\x9e\xbf\x67\x91\x70\x41\x5e\x6d\x6f\xa0\x5a\xf5\xf1\xfc\xc7\xee\x29\x0e\x7a\x5b\x83\x50\xbb\x57\x97\xa6\x86\x7d\x5f\x56\xdb\xb3\x83\xee\xd5\x38\xb4\x33\x54\x3b\xe0\xc7\xbb\x37\x53\x39\xe0\x1d\x5b\xd1\x81\xb2\x96\x15\xcb\xbf\xa0\x00\x78\x54\x82\xa3\x1a\xd1\x4e\x70\x0c\x57\xdb\xc7\xfe\x73\x47\x54\x46\xc3\x0f\x18\x3a\xf6\x6d\x75\xf1\xb1\x1f\x1c\x03\x87\x39\xde\xb1\xe5\xd8\x14\x7b\x9d\x57\x0a\x9d\xdf\x2f\xd3\x2a\xcf\xd3\x87\x48\x09\xdc\xd9\x51\x61\xdf\xb7\x4e\xe3\x2b\xda\x39\x09\x5f\xe7\x27\x78\xf5\x1a\x25\xd4\xd2\xb2\x8d\xc2\x76\x7b\x8c\xf1\x10\xa5\x34\x7d\x85\x22\xba\xda\x4f\xf0\xab\xa8\xed\x93\x15\x4d\x70\x90\xb6\x69\xf2\xa6\x33\x44\x11\x4d\xf6\x57\xf8\x55\x14\x24\x06\x00\x9b\x02\xb3\x1a\xfa\xfb\x9d\x60\xf5\xaa\x58\xa2\x69\x55\xc8\x3f\xde\xad\x64\xd7\x3d\x8d\x16\xab\xf8\x51\x0d\x94\xd2\xd4\x0d\x5a\x34\x43\xfd\xee\x71\xff\xf8\xe0\xb0\x7b\x3c\x20\x03\xbc\x5e\x77\x5b\x06\x3a\x01\xe4\x62\x35\x54\xa2\xc8\xda\x43\x7c\x5b\xec\xdd\x6d\xc1\xb2\x0f\x06\x83\xde\xc0\xcd\x48\xaa\x7e\x99\xae\x75\xd6\xd1\xab\xb4\x8d\x90\xca\xf0\xe6\xcd\x1b\xff\x00\xbf\x4a\xdb\xd1\x2b\x95\x94\xc8\x24\x69\x48\xf9\xa6\x53\x5a\x7d\x46\x26\x3e\x7e\xc2\x98\xa0\x98\xd6\x38\xbd\xf1\x3b\x75\xcb\xde\x62\xe3\x66\x91\xf9\x9d\xd3\xea\x00\x3f\x7d\x4e\xb3\x2a\x5a\x06\xb0\x7d\xd5\xf1\xfd\xe3\x27\x6e\xfb\x4b\x05\xd5\x5a\x5c\x5a\x0d\xde\xd7\xfb\x4e\xb5\xb5\xbb\x99\x62\xa5\x92\x3c\xba\x49\x02\xe0\x92\x75\xcc\xed\x78\x37\x73\xd3\x6b\x5d\x6f\xd1\x86\xbf\x3c\x4e\x5d\x5d\xb6\xe7\x1f\xb6\x68\x4b\xd2\x72\x94\xcc\x91\x4c\xc2\x36\x5d\x95\x36\xb4\x6a\xcf\x81\x21\xab\xad\x19\x00\x0d\xf7\x34\xa3\x0a\x90\xdc\x77\xf7\x12\xb4\x27\xfe\xe2\x57\x92\x89\x9e\xee\x77\xb7\xa9\xc7\xe2\x37\x8f\x32\xcf\xfa\x4e\x9a\xa6\x6e\x6d\x64\x06\x3f\x53\x34\x11\xc2\xc8\xed\x59\x52\x95\x5a\xce\x41\x24\x7f\xec\xf9\x01\xe2\x7b\x11\xde\x07\x9c\xc9\x76\x02\x1d\xd9\xd4\x30\xc5\x6e\xe7\x89\x23\x8c\xd5\xa2\x6c\x95\x4c\xea\xb7\x99\xce\xb0\xd8\x5f\x02\x03\xba\x29\x31\x33\x6d\xfa\xe9\x76\x9e\x73\xc8\x39\xec\x28\x4d\xa1\x5f\xd6\x14\x1e\x0e\xb4\xa2\xb0\xa7\x22\x83\xf5\x15\x8a\xa3\xf4\x92\x5b\x51\x1d\x96\x05\xdc\xec\xa4\xfc\x3f\x29\xc5\xbf\x9b\x51\xee\x49\x01\x8e\x4c\xe9\x8c\xcc\xe9\xcc\x3a\x15\x2c\xa9\x23\xdf\x39\x54\x9c\xbb\xd1\xf1\x11\x46\x73\x8c\xc9\x82\x3a\xe2\x63\x71\x2a\xa8\xc6\x43\x22\xb7\x35\xe6\x6a\x29\x62\xa4\xe5\xcb\x98\x53\xb9\xd6\xf0\x59\x48\x21\x06\x0c\xcb\x86\x6d\x0e\x29\xe2\x74\x31\xe4\xd0\x4e\x84\x83\x09\xe2\xa4\x87\xb1\x1d\x62\xa0\x03\x45\xf6\x7b\x32\x20\x44\x7f\x20\xfe\xc2\x89\xed\xe8\x88\x52\x8a\x32\x15\x41\x50\xe5\xee\x62\xbc\x5e\xfb\x5d\x30\xc6\xd7\xa7\xb2\xcf\xe1\x67\xe3\x38\xdf\x3f\x92\xdf\xe7\x77\x11\xc4\xca\xb3\xbf\xf5\x31\x7e\x98\x84\x39\x6b\x1e\x1c\x04\xf0\xf7\xf8\x28\x48\x68\x97\x44\xb4\x7f\xdc\xb8\xce\x58\xf8\xad\x01\xc9\x87\xc7\xf2\xb5\xef\xfb\x41\x42\x8f\x48\x44\x07\x03\xf5\x7e\xca\x66\xe1\x2a\xe6\x81\xac\xb9\xcd\x37\xc6\x91\x86\xac\x28\x57\x2e\x3c\x5d\x4c\x62\x30\x58\xd5\xb1\x2b\x4f\xe2\xd7\xb3\x93\xb8\xdd\x16\x07\x44\x94\xd3\x95\xdd\xa8\x18\xe3\xd7\xfd\xa3\xf5\x3a\x7f\x13\x59\xfd\xd1\x2b\x40\x07\x3c\x44\x2b\x88\x47\x6a\xaa\x85\x63\xea\x0c\x39\xcd\x4e\xea\x3b\x78\xbd\x16\xbf\x3b\xd7\xf0\x73\x86\x9c\x76\xe7\xbb\xef\x60\xfc\x30\xab\x99\xc6\xea\x2e\xfc\xda\x87\x13\x48\x56\x8a\x32\x55\xf2\x96\x9f\xb9\x2e\x5a\x0e\xc3\x12\x7b\x9a\xcb\x3b\xff\xf3\x99\xa5\xae\x0e\x34\x9d\xb5\x68\x82\x32\x8c\x87\x11\xa8\xdb\xa6\xe8\x16\xc2\x56\x64\x64\x86\x03\xf1\x73\x63\x94\xcc\xf7\x80\x26\x3a\x38\xc2\xc3\x1c\x4d\x71\xe0\x98\xd3\x07\xf9\x74\xf6\x59\xfd\xfa\x1c\x7e\x26\x9f\x4f\x7f\x7c\x7b\x79\xf6\xf3\xe9\xd5\xd9\xe7\x0f\x67\x9f\xcf\x2e\x7f\x21\x5f\xce\x2f\xce\xca\x29\xa7\x5f\x2e\xce\x3e\x9e\x7f\x26\x5a\x86\x27\x51\x7e\x96\x70\x76\xc3\x32\x02\xd8\xb7\x24\xca\x2f\xc2\x19\xd3\x69\xa2\xaa\x8b\xb7\x1f\x44\x01\x97\xa7\x3f\x9e\x7e\x85\x1a\x4b\x09\x56\xb4\x4c\x13\x76\xd2\x94\x69\xdb\x06\x93\x1b\xda\x39\xb9\xd6\xe4\x7f\x73\x72\xd3\x6e\xe3\x0c\x4d\xc9\x3d\xbd\x1e\xdd\x8c\x01\x51\x06\xcd\xc8\x3d\x76\xdd\x58\xfc\x25\x2b\xf1\x0e\xe3\x86\xb5\x48\xe9\x9c\xcc\x4b\xae\x43\x33\x52\xe8\x7b\xd4\xa8\x92\x19\xae\x75\x6a\x96\x7a\x1b\x62\x62\x4e\x2a\x6d\x98\x02\x64\xde\x36\xec\x96\xae\xc3\x83\xe0\x70\x50\x71\x0e\xee\x76\x76\xcb\x7f\x9a\x69\xea\xb6\x3c\xa8\xe1\x0e\x8c\xf4\xdf\x25\x7b\x03\x7b\x0b\x87\x02\x1f\x15\xb3\xa4\x95\xa8\x9e\xaf\xad\x1a\xf4\x8b\x1a\xde\xac\x75\x86\x05\x62\x39\x44\x28\x2a\x6d\x05\xda\xf4\xb3\xdb\x79\x5a\xe6\xb1\xea\x54\xf3\x1b\x30\x74\xd4\xb1\xf7\xf8\xa3\x4e\x70\x24\x8b\x7b\x5a\xb2\xb1\x8a\x13\x87\xe1\x9a\x9d\x99\xb5\x28\xab\xee\x21\x4f\xe8\x9d\x8f\x8a\x6d\xd5\x12\xc2\xad\xaa\x2c\xea\xde\x71\x5c\xc3\xae\x2b\x52\x5e\xd3\x2a\x76\xf2\xa6\xb6\xa3\x4f\x0b\x45\xa6\xf6\xea\x6a\x0a\xb6\x6a\x28\xf7\xf5\xe9\x43\x60\x51\x74\x65\x5d\x06\x7b\x4f\x94\xfd\x84\x78\xe2\xfb\xdd\xd2\x81\x4b\x29\x3e\x8a\xd5\xde\x02\xb5\xbd\xa9\xbf\x78\xa1\x8e\x5f\xbe\xdf\x0d\x7c\xbf\xb8\xe9\xe9\xfa\x4f\x9c\xf0\x7c\xbf\xb7\xb3\xc6\xb3\xa4\xb6\xbe\xb3\xa4\xa8\xad\x17\xf8\x7e\xcf\xaa\xed\x25\xb7\x92\x06\xd8\xbc\xd7\xd7\xd7\x92\x60\x66\xe7\x7b\x1e\x4f\x3f\x44\xdf\xd9\x94\x84\x96\x1e\x88\xe4\x74\xd4\x21\xe6\xff\xc6\x64\xa5\x65\x07\x9d\x3d\x80\xd8\x8d\x59\xc6\x26\xbc\x19\x25\xb7\xe9\x24\x14\xed\x68\x39\x95\x40\x1a\x36\x9e\xeb\x9e\x4f\x12\xca\x4f\xda\xed\xec\xf5\xc1\x09\x4e\xda\x94\xbd\xca\x47\xd9\x98\x88\x7f\x68\xf2\x1f\x3e\x3b\x24\x09\x0d\x51\xb2\xef\xb3\x43\x88\x82\x61\xf7\xae\x08\x7a\x70\x40\x32\xda\x39\xd9\xdb\xe3\x6f\x68\xe7\x04\x67\x6d\x0a\x20\xa5\x00\xac\x17\xa2\x6c\x9f\x89\x0e\x67\xff\xc1\x5e\xf9\xec\x70\x43\x66\xf5\x40\xa5\x07\x84\x53\xc7\x39\xd9\xdb\x63\x50\x88\x90\x64\x9c\x16\xa5\x5c\xb9\xd4\xcb\xe8\x8d\xf9\x88\x8d\xf5\xc1\x4c\xdd\x3a\x40\x52\x43\x7c\xab\xaf\x52\xdb\x2a\xbc\xa2\xd3\x71\xc8\xe1\x9e\x3e\xec\xe1\x76\xa6\x03\xdd\xf1\x72\xa8\x04\x1b\xe1\xac\xb8\x90\xfd\x8f\x2e\xa5\xfe\x70\x2a\x5e\xef\xf9\x24\x7b\xc5\x70\x30\x45\xec\x15\x23\x7c\xbf\x4b\x32\xbc\xb1\x2f\x9a\xc0\x52\x06\x39\x1d\xaf\xd3\xe9\x88\x46\x1f\xb1\xbd\x81\x9e\x15\xd4\xc3\xeb\xb5\xe3\x8b\x64\xef\xd8\x24\x76\x20\xd1\xeb\x0e\x44\xba\xf8\x5b\xe4\xef\xc2\xab\x4e\xf9\x3f\xbf\x7b\x24\x72\xa2\xce\xf7\x29\xeb\x5c\x1f\x5c\xf7\xc2\xc3\x83\x7e\xa7\x73\xd4\xc1\x56\x91\xf2\xde\xb0\x7a\x5a\x49\x6d\x7c\x32\x9b\x9a\x35\xd9\x6c\xad\x0f\x09\xad\x4b\xe6\xea\xbe\x9a\xac\x30\x59\x4a\x18\xfd\x05\x75\x1c\x72\x4b\x9d\x0e\x40\xa0\x2f\x5f\x77\xd6\xeb\xe5\x9b\x6e\x4d\x14\x9a\x15\x08\x8e\xf3\x16\x9d\x2b\xc1\xc9\xf9\x1c\x7e\x86\x8f\xe6\xaf\xe9\x9e\xcf\xba\xfe\x7a\x3d\x7f\x43\xc5\x0f\x2d\x59\xa9\xf9\x9c\xcb\x2f\xc1\x40\x67\x41\x9d\x3d\x87\xcc\xe9\xde\x1c\x93\xf9\x1b\x9f\xed\x75\x7d\x41\x18\xa9\x10\x5c\xeb\x29\xb1\x23\x96\xd6\x49\xf6\x86\xf6\x3b\xc7\x07\x27\x98\xb7\xa9\xdf\x25\xd9\x3e\x3c\xca\xfb\x80\xec\x0d\xed\xca\x17\x22\xbd\x6b\x8e\x33\x1b\x34\x7f\x35\x45\x5d\x72\x70\x4c\x7c\x8c\xf7\x0e\x8e\xf1\xeb\xce\x50\x26\xed\x71\xe2\xe3\x60\xbe\x2f\x7e\x8b\x9f\x24\x7d\x45\xfb\x83\x4e\x6f\x70\x7c\x7c\xd0\x3d\xec\x1d\x76\xfa\xc7\x07\x04\x71\x3a\xe8\xee\x71\xfc\xa6\x23\xdb\x13\xa3\x0e\x49\xc5\xa1\x61\x79\x12\xbe\xa1\x87\x27\x38\x46\x62\x39\x75\x30\x09\xf7\xe8\xa1\xc4\x25\x40\x53\xe4\x77\x48\x28\x83\x38\x90\x90\xf2\x3d\x5f\x64\xee\xf6\x4e\xf0\x04\xf9\xaf\x5f\x77\x7b\x90\xbb\xdb\x6b\xc0\x63\x88\x49\x8c\x7c\x91\x7b\x22\xe4\xd8\x5b\x3a\x43\xca\xaf\x57\x55\x16\x03\x80\x01\x17\x85\xc1\x4b\x7b\x25\x2c\x8b\x48\x23\x74\xf9\xa6\x33\x5c\xb4\x85\xb8\x7b\xab\x57\xc7\x6b\xba\x1c\x3a\x1d\xcf\x29\x7d\xb2\x97\xe3\xf6\x6d\x70\x6b\x22\x22\xe5\x7b\x4b\xdc\x76\x3c\xa7\xad\x93\x44\x02\x0e\x16\xed\x5b\x6d\x28\xa0\x02\x24\x29\x93\xa8\x5e\x3f\xe8\xf5\x2b\x77\x7f\x5d\xff\x25\x26\x02\xe2\xbc\x55\xf0\x48\x60\x8d\x5f\x32\x36\x89\xf2\x28\x2d\xd9\xe0\x65\x35\x07\x74\xb9\xe8\x54\x7f\x7c\x52\xba\x7e\x2f\xe7\x8f\x76\x2f\x11\x53\x5b\xcd\xc9\x58\xdf\x18\xc8\xec\xff\x1f\x3b\xf3\x0e\x56\x8c\xb7\xe2\xec\xb1\xa1\xaa\x9c\xe3\x40\xff\x22\x5a\x5a\xaa\x1f\xbf\xa7\x8c\x50\xc5\x88\x58\xf0\x86\x61\xae\x15\x23\x87\x25\xc5\xc8\x61\x70\x7c\x08\xe5\x3d\x2d\x83\x99\xb2\x26\x19\x0b\x39\x0b\xe0\xa0\x6a\x97\x25\x64\x55\x28\xeb\x29\x01\x4c\x9b\x79\x0c\x8e\xb0\x55\x6c\x09\x65\x31\x62\x79\x20\x4e\xd5\x4a\xc4\xf3\x3b\x9d\xc0\xef\x74\x6c\xb8\x1d\xa8\xe9\x29\xdd\xd3\x33\x6a\xba\x0f\xd4\x91\xdd\xba\x11\x53\x1d\xd2\x62\xb7\xbf\x43\xd0\xd2\xb7\xa2\xc7\x7d\xec\xa5\xc9\x87\x8c\xb1\xdf\x58\x43\xb4\xfa\x18\x23\x67\x06\x8f\x4f\x5c\x85\x25\x85\xc0\xe9\xba\x1c\x25\x78\xc8\x50\x86\x12\x8c\x83\x64\xa3\x6e\x7d\x3b\xc7\x81\xdf\x39\xd6\x97\x8f\xfd\xe0\x58\xce\xff\xae\xbb\xf3\x7e\x47\xdf\xd4\xfa\xd8\x9b\x99\xd6\xec\x82\xb7\xac\x8b\xd1\x6d\x43\x10\x26\xb6\x85\x0d\x44\x9c\xc7\xa6\x61\xfa\x98\x23\x1b\xa8\x2c\x1f\xa1\x71\xc7\x5b\x06\x23\x35\x8d\xf8\x1c\x2e\x58\x5e\x5b\xbf\xc8\xdf\x85\x19\x91\x15\x75\x03\xbf\xd3\xd5\x15\x89\x0a\xba\x3b\x04\x3a\xb0\xba\xd0\xf7\xd4\x76\xdf\xad\x00\xbc\x4f\xf4\xb8\xd2\xdf\xa2\xb7\xea\x2e\xd8\xf4\x16\x4c\x1b\xa0\x31\x3b\xd4\xfb\x47\x7e\xd1\x84\x28\x3f\xfd\xce\x59\x92\x47\xd7\xf1\x53\x24\x51\xe0\xac\xb6\x38\xc0\xaa\xa2\x16\x5b\xaf\x19\xe0\xce\xd5\x90\x04\xb4\x60\xc7\xb1\xb0\xdc\x82\x0f\x59\xfa\x1b\x4b\x9e\x5d\xbb\xa8\x7c\xbd\x86\x10\x9c\xa2\xf2\x9d\x75\xef\x60\x44\xe5\xba\x2f\x58\x18\xb3\xe9\x1f\x5e\xf7\x0b\x98\x56\x04\xfc\xa4\xab\xee\x55\xfc\xae\x1f\xf8\xdd\xc2\x3c\xb7\xdb\xdd\xc1\xb3\x2c\x8a\x3a\x2c\x3a\x04\x86\xe7\xbf\x93\x8e\x0e\x03\xbf\x73\x58\x4b\x47\x3b\x98\xd9\xa3\x5c\x66\x99\xb1\x5b\x96\x70\x45\x5d\x10\xb1\xf6\xdf\xc3\x70\xba\xbf\x87\x07\xe6\x2c\x8c\xff\x6d\x0d\x7a\xfa\x88\x6a\x26\xbf\x1c\x82\x1b\x08\xa1\x0b\x71\x41\x14\x31\x74\x03\xbf\x6b\x9d\x17\xbb\xcf\xb1\xeb\xed\x1f\x8a\x8e\x3f\x6c\x1a\xd9\xa8\x36\x8e\xf3\x98\x3a\xbf\x39\x24\x93\xa6\x42\xa3\x54\x06\xea\xff\x6d\x5c\x18\x0a\x6d\x87\xf0\xae\xb7\x1b\x52\x72\x8c\x2e\xc2\x69\x4b\xe3\x17\xdc\x76\xc6\x8e\xc4\xdb\x2c\x8c\x83\x48\xc9\x53\x55\xf4\xa5\xf7\xe4\xd9\x57\x8d\xd7\x8f\x52\x86\xaa\x1c\xb3\x9f\x71\xba\xee\xed\xbe\xde\x2c\x9f\xae\xed\x1a\xf4\xb1\xfa\xc9\xd3\x74\xef\x49\x41\x91\x14\xf1\x07\x35\x06\xde\x61\x47\x79\xa6\xf5\xa5\x67\x5a\x5f\x23\xe0\x75\x25\x02\x9e\x20\xda\x99\xb2\xea\x9c\x2a\x44\xbc\xb9\x78\xaf\xe1\xef\xba\x87\x3a\xc4\xd2\x81\x8c\xa6\x7e\x2b\x48\x7c\x80\x91\x44\xc0\x3b\x3e\x90\x61\x96\x7c\xbf\x2f\xe3\x2c\xf9\xfd\x23\x19\x68\xc9\xf7\x07\x98\xdc\xd1\xd0\x0a\x55\x74\x4a\x43\x13\xf0\xf0\x82\x9e\xba\xee\xa9\x0e\x20\x9d\x93\x73\x7a\xe1\xba\x17\xde\xed\xd1\x7a\xed\x38\xe4\x3b\x0d\xbd\x2f\x59\xba\x88\x72\x46\xde\x52\x2b\x5a\xdf\x0a\x9d\x62\x1b\x99\x18\x3f\x6c\xc8\x37\x9a\xd1\x7b\x6f\x06\x20\xa0\x15\x53\x20\x39\x03\xdf\xbd\x8c\xe5\x69\x7c\xcb\x10\x2c\x51\xc4\x4b\xfa\xcb\x87\x0d\x1e\x6d\x45\x8c\x1e\xd3\xf2\xb6\x7d\x49\x2e\xf1\x46\xc3\xc1\xbc\x5d\xaf\x6b\x0c\xec\x55\x7b\xbf\x32\x41\x9c\x51\x9a\x40\x40\x3d\xec\xba\xdc\xe3\x73\x96\xa0\x4b\xdb\xc2\x3f\x03\x83\x0d\x7a\x6e\x1c\xbc\x9c\x03\xef\xc0\xc1\xae\xbb\xe7\x53\x4a\x6f\x8a\xe4\x77\xf3\x2c\x5d\xb0\xfd\x83\x03\x47\x47\xa9\x4f\xf0\xc3\x66\x83\x30\xf9\xb2\xad\x30\xd7\x56\x5b\xa8\x35\x01\xa8\x81\x6d\x3b\x32\xc4\x29\x83\xe6\x60\xd1\xb0\x0d\xf9\xb5\x06\xa6\x80\x79\x57\x09\x7e\x10\xff\xd2\x56\x47\x9b\x3a\x79\x57\x93\xc6\x6d\xd9\xab\x41\x5f\x9c\x8b\x97\xb7\xe2\x34\x42\xc5\xaf\x5c\xdd\xa2\x9b\x9c\x26\x34\xa6\x0c\x50\x13\x0d\xb9\x97\x7e\x0b\xb8\x37\x0b\xa3\x18\x2e\x22\xd4\xdc\x90\x18\x7e\x8b\xc1\x23\x13\xca\xbd\x69\xba\x08\xa3\xa4\x21\x66\x31\x1f\xa2\x68\xbd\x46\x5d\xa8\x60\xee\xba\x67\x42\xfc\x12\x3f\xa9\x2f\x56\x3d\xa5\x34\x1f\x66\x34\x09\xd0\xc4\x75\x27\x1e\x4b\x38\xcb\x90\x98\xe8\x1c\x25\x98\x4c\x5c\x17\x4d\x3c\xf6\x3d\xe2\x48\x2c\x89\x56\x07\x8b\x57\x94\x02\xbf\x11\x13\x36\x8c\xd1\x1d\x72\xd4\xec\xed\x4d\xe6\x61\x94\x34\x27\xf7\x93\x98\x39\x18\x07\x28\xa5\x5f\xe0\x82\x40\xa9\x0d\x32\xb2\x22\x31\x0e\x56\x22\x2d\x88\x51\xa2\x67\x65\x86\x1f\x26\xae\xdb\x0a\xa1\x01\xb2\xae\x18\xcd\xf0\x66\x73\xa2\x15\x2e\x6f\xd2\x13\x1c\xa2\x0c\xd0\xf6\x71\x43\x0c\x28\x1d\x8d\x89\x1c\x66\x9f\x70\xd7\x6d\xc9\xce\xbd\x93\xfe\xa0\x9b\x0d\x79\x57\x9a\xe1\x85\x6c\x40\xb8\x65\x49\xa9\x96\xbd\x9c\x86\x94\x7e\xd5\x51\x71\x5d\x17\x71\x7a\x5d\xc6\x35\x1d\x9e\x7a\x6c\x11\x71\xe4\xac\x92\x79\x98\x4c\x63\x36\x35\xe4\xea\x90\x88\x30\x1c\xa0\x8c\x86\x5e\x9a\x98\xf7\x99\x7e\x8f\x87\x19\x7a\x50\x43\x16\x30\x92\xb1\x30\x4f\x93\x20\xda\x00\x54\x63\x08\x2b\x2a\x8d\x41\x6f\xeb\x31\xb1\xda\xcd\x0f\xe4\xfc\xa4\x0b\x6b\xaa\xef\x9b\x99\x55\x2b\xdc\x0f\xc3\x6c\xbe\x5d\xaf\x45\xeb\x87\xdd\xc0\x87\x94\x50\xbb\xcc\xa5\x62\x15\x31\xa5\x56\xe1\xde\x2d\x6c\x87\x5f\xeb\xc0\x18\xfc\x96\x26\x12\x41\x16\x48\x14\x02\x90\x1b\x13\x1d\x1b\x63\x43\xce\x9e\x39\xac\x8d\x62\xb4\x4c\x73\xff\x2c\xfb\xe1\xc0\x48\x71\x18\x29\xf3\x4e\xf5\x11\xec\x15\xb7\x07\x4a\xcc\x0e\x9c\xa7\x37\xe4\x7d\xcd\x55\x17\xdc\x68\x71\xef\x6a\xba\x5e\x23\xf1\x87\xb6\x3a\x04\x71\xca\xbd\xab\xbb\xf5\x9a\x63\xef\xea\x96\x32\xc2\xbd\xab\x9c\x76\xc5\x9f\x50\x66\x0b\x45\x86\x89\xc6\xcb\xc5\xe4\x57\x15\x87\x60\x43\x3e\xd7\xc5\x89\xa2\x3a\x08\x6c\x2b\xf3\xae\xa6\xf8\x21\x53\x15\x65\x34\x83\x7a\x32\x58\x6d\xd1\x0c\x65\x60\x0c\x6a\x30\xc3\xd4\xda\x28\x82\x28\xab\x25\x3b\x6d\x46\x3c\x67\xf1\xcc\xc1\x27\x88\xd3\x2f\x42\xb8\x1b\xde\x6e\x45\xe3\x4e\xe8\xc3\xd5\x5d\x90\x91\xab\x69\xd0\xf2\x37\x50\x05\x57\x4e\x4f\x24\x47\x9f\x49\x42\x7c\x4c\x72\xf4\x1e\x7e\xe8\xf5\x14\xe1\x87\xf7\xca\x56\x1f\x62\x70\x8b\xa5\x98\xc9\x51\xc8\xc4\x28\xf8\xe4\x57\x94\x41\x64\xd2\x82\x2d\xaa\x0f\xec\xda\xe0\x90\xb6\x69\x7c\x5a\xaf\xd1\xf7\x72\x34\x58\xa9\xab\xf8\x4e\x74\xe7\x1c\xe2\x5c\xcd\x1d\x4c\x66\xe0\x0e\x6a\x9b\x26\x8b\x06\x33\x24\x5a\x2a\xe1\xa6\x64\x63\xd5\x6f\x5d\x7d\x66\xaa\xd7\xa8\xf6\x1b\x62\x6b\xe5\xb4\xbf\x29\x2c\x7a\xf9\xd3\x50\xb7\x7c\xcc\x8d\xf3\xe9\x14\x18\x02\xfc\xbc\x2d\xe7\x99\x9b\x3c\xd2\xfd\xdf\xba\x95\x93\xe8\xb6\xe8\xbb\x0d\xa8\x26\x18\x7d\xad\x11\xcf\x37\xb4\x54\xfd\x2f\xe2\x7e\x67\x5e\xfa\x8d\xd6\x58\x1e\x8b\x23\x17\xc9\x80\x5d\xd7\x3a\x9d\xbb\x2e\x27\x99\xe2\xd6\x54\x2c\x19\xf9\x33\x28\x35\x7c\x22\xa3\x81\x65\xda\xd3\x36\x74\x5d\xf5\xa3\xf2\x22\x77\xdd\x5f\x65\xd3\x20\xc2\xa0\xe6\xd1\x1b\x02\xc3\x5c\x1b\xd6\x48\x7c\x07\x3b\xac\xaa\x11\xb4\x45\x24\xd9\x8e\x81\x9c\xb0\xbb\x26\x6f\x68\xab\x67\x51\xac\x42\xbd\xd3\x5b\x10\x15\x93\x0c\x31\x64\x55\xaa\x58\xd9\x54\xcc\xb6\x48\xdc\x90\x7b\x6f\x46\xbf\xd5\xc6\xfa\xa4\x94\x7e\x97\x50\xb6\x12\x73\x5d\xbc\x0c\x32\x09\x03\x1f\xa3\xd8\xfb\xb1\x1d\x7b\x7f\x6b\xc7\x12\x28\xfb\x41\x91\x5c\xf0\x1d\xe0\x15\xfc\x6e\x1f\x23\x8b\x10\x65\x5a\x0f\x23\x2b\x25\x52\x80\x2e\x5a\x26\x12\x65\x5e\xe8\xf2\x0a\x12\x7e\x90\x4d\xae\xd1\xcd\x7d\x2b\xd9\xd9\xa3\x0e\xd1\x7b\x2d\x96\xf4\xae\xc7\x59\xb5\x57\x96\x8d\xd2\xf5\xba\xf5\x09\x97\x2b\x80\x91\xaa\x8d\xa6\x24\xb6\x1c\x51\x0b\x8c\xc2\xf7\x40\xba\x21\xe1\x72\x91\x2d\xf4\x49\x88\xfd\x5b\x70\x08\xdf\x3d\xe9\x05\xe9\xc9\xe5\x74\xa9\x34\x8f\x45\xc5\xa1\x1d\x4f\xac\xc4\x36\x89\xa0\x67\x2e\x63\x00\x69\x59\x22\x82\xdf\x20\x4b\xa4\x95\x3d\x50\xae\x80\xd1\x58\xc9\x29\x7e\x63\x0e\xc6\x22\xe5\xb3\x19\x98\x49\xd0\xb4\xdd\x26\x2b\xda\xf2\x1b\x99\xa4\x52\xa5\x32\x25\x61\xbb\x4d\x8c\xdc\x22\x1a\x0d\xe4\x57\x2a\x60\xb5\x5e\xa3\x15\xf0\xd6\x51\x3e\xa6\x8c\xec\xed\x85\xeb\x75\x22\x21\xf3\xd5\x96\x67\x92\x36\xc5\x22\x4c\x3d\xe6\xba\x11\x4a\xbd\xdb\x12\xf1\x67\x61\xc5\x7b\x70\x57\xef\xa1\xc7\x51\xa5\xc7\x75\x1d\xdc\x6e\x7e\x31\x78\x09\x6c\x53\x45\xa3\x22\xd1\xa8\x04\x45\xe5\x46\xa9\x43\x4a\x3f\xf0\xfd\x3e\xf1\xfd\x41\xe0\xfb\x83\x1a\x98\x72\x05\xf0\x66\xe0\xca\x0f\x02\xbf\x77\x00\xa8\x5c\x7e\xbf\x38\xa4\x49\x6f\x2b\x05\xf3\x66\x41\x0b\xd9\x78\x0b\x07\x47\xc1\xc1\x91\x46\x88\xb2\x21\xc4\x25\x5a\xd4\x20\x38\x1e\x90\xe3\x83\xe0\xf8\x00\x0e\x4b\x4f\x5c\xe7\x6b\x2f\xb6\x1e\x58\x36\x21\x79\xbf\xff\x95\xcd\x62\xf0\x59\x7f\xd8\x60\xe9\x86\x4d\xd2\xc2\x79\x01\x12\xca\xca\xd4\xea\xdd\x52\xd9\x8b\x4d\x8e\x22\x71\x54\xb1\x82\x88\x45\x11\x25\x8e\x4c\x42\x4d\x6c\x70\xa1\xb4\xa2\x09\x0a\x8b\x81\x1f\x46\x28\x27\x9c\xac\x8c\xe3\x9a\x7c\x52\xda\x70\x39\x66\x47\x41\xaf\x06\x76\x1d\xc6\xe0\x29\x2b\xfc\x23\x35\x06\x3d\xc9\x60\x7a\x1a\x3f\xdd\x2f\x1b\x77\xf5\x0f\x44\xc3\xea\xc6\xc8\x1c\xa3\x48\x4c\xc3\x67\xf8\x3c\xaf\x2a\xe3\x43\x84\x04\xbc\xed\xf9\x3c\xa1\xad\x72\x69\xd5\xef\x80\x3a\xad\x6b\xea\x78\xbd\x9e\x94\x06\xda\x34\xac\xb2\xfd\x25\x10\x39\x0b\xa9\x28\x29\xe1\xb6\x85\x51\x6f\xc8\x02\xdb\x3f\xbe\x3b\x06\x61\x5a\xc8\xf6\xb1\x71\x7e\x57\x13\x07\x61\x8f\xcb\x16\x5c\xea\xf6\x48\x9a\x6e\x75\x02\x0b\x27\x98\x49\x7b\x2d\xbf\x94\x86\x00\x50\x54\xbe\xe9\x6e\xbf\x21\x1c\x10\x43\xe1\x75\x6f\xc7\x6b\xc2\xa1\x8d\x90\xa7\xff\x58\x1e\xc2\x47\xbd\xb1\x44\xf9\x9d\xd1\x51\xb2\x8a\xe3\xc2\xaf\x15\xd8\x9b\x02\x1e\x98\x01\xc6\x39\xbb\x43\xb9\x4a\x60\x64\x86\xe5\x77\x53\x79\x7e\x57\xe2\xc5\x9c\x66\x28\x45\x53\x3c\x9c\x06\x55\x05\x0e\x26\xcb\xca\xba\xd1\x02\xdf\x9c\x14\x80\xd1\x29\x5a\xe2\xe1\x32\x98\x6f\x93\xb3\xe5\x98\x55\x32\x08\x52\x8a\x2f\x7d\xbd\xd2\xdb\xa1\xaa\x3c\x3e\x2e\x03\xf7\xf4\xb4\xa3\x73\xbf\x04\xcb\xb3\xbd\x7e\x15\x01\x79\xe5\x6b\x11\xc4\xbd\x19\x7a\xd8\x10\x5f\xbb\x6b\xf9\x1b\x5c\x3c\x74\x37\xd5\x55\x5e\xb9\x54\xb1\x28\x30\x23\xa9\xa2\xc1\x8c\x46\x48\x42\x6e\x25\x28\x95\x32\xa6\x96\x67\xbc\x99\xca\x49\x5a\x1d\x25\x5d\x86\x46\x1f\xec\x6f\xb4\x43\xa1\x34\x9d\xda\x5e\xfe\xe6\xae\xa6\xf7\x84\x95\x8e\x32\xd4\x54\x03\xa4\x35\x85\x76\x37\x62\xc6\x6b\xbb\xc1\x35\x96\xb8\x0c\xa2\x5e\x4c\x29\x38\xec\xb4\xa2\x52\x58\x33\xec\xba\xb2\xa4\x26\x1b\xf1\xb1\xf6\x27\x93\x37\x26\x56\xeb\xa1\xc5\x2f\xf1\x2b\xed\x1d\x95\x84\x3c\x56\x20\xba\x64\x25\x44\x17\xa5\x1a\x4b\x34\x62\x0b\x1d\x8d\xe1\xb6\x59\x86\x8b\xd3\x71\x6a\x39\xde\x34\x18\x3a\xea\x63\x94\x14\xda\xd2\x2d\x9f\xc5\x02\xf7\xa5\x31\x4d\x1f\xb4\x0b\xdd\x55\xf4\xc6\x44\x01\x56\x3c\x42\xd1\x86\x92\x48\xa7\x69\x02\x91\xa5\x36\x77\xf3\x28\x66\xa8\x85\x10\xa3\x7c\x64\x70\x63\x00\xa1\x5b\x35\xde\xec\xba\xaa\x04\xa6\x3e\xf6\x37\x1a\xec\xab\x34\x47\x2a\x72\x55\xad\xe5\x59\x53\x0b\xa2\x6a\x7d\x59\x94\x72\xd4\x0f\x8e\x40\x75\xdc\xdb\x75\x79\xd6\xf1\xb7\x96\x90\x5c\x39\x76\xed\x3b\x23\xc5\xd9\x24\x8f\x6d\xc2\x96\xb4\x8f\x1f\xa7\x82\xa7\xac\xa2\xb4\xe7\x65\x2d\xd5\x96\xaf\xb8\xea\xad\xcb\x12\xcb\xed\x5b\xdd\x66\x55\xda\xd0\xdf\x75\xad\xd6\xa9\xba\x7f\x1e\xfa\xca\x0b\xbe\x5b\xde\x3c\x45\xe3\x22\x14\x6d\x35\xce\xf6\xe6\x8a\x48\x2e\x8b\x5e\x91\x98\x4c\xea\x36\xa3\x28\xb0\xb7\x22\xcd\x38\x43\x14\x61\x4a\xe9\x64\x18\x8d\xf2\x71\x80\x56\x94\x83\x3b\x69\x8e\xf1\x30\x41\x2b\x13\x79\x70\xb8\xf2\x6c\x32\x6c\x51\xba\xf2\x6e\x18\x1f\xc2\xbf\x92\x21\x4f\x74\x3c\xa8\x20\x45\x31\xcd\x50\x84\xf1\x90\xa1\x98\xe4\xc4\xbc\x29\xcf\x55\xcd\x78\x29\x33\x4d\x73\x17\xd5\x7f\xda\xc9\xa7\x18\x91\x79\x98\xd7\x3b\x21\xca\xe5\x59\x31\x3c\xec\x3f\xea\xf5\xa3\x79\x82\xda\x8d\xec\x9b\xc6\xed\x8a\xed\xb7\xbb\x6c\x10\x49\x2b\x11\x12\x7a\xcd\x0a\x82\xc6\x3c\x8d\x7e\x55\x54\x97\xde\x25\x7f\x65\xf7\x70\xf3\xe6\xeb\x9b\x37\xdf\x0f\x7c\xdf\xba\x79\xeb\x3f\x21\xaf\x95\x7a\xb7\x75\xdd\xb5\x5d\xe7\x56\x96\x72\x3f\x01\xcf\xbe\xd8\x77\x12\x69\x71\x59\x6c\x3a\x7c\x6b\xd3\xa9\x0e\xc0\xa3\x7e\x8e\xf2\x6a\xa9\x91\xb9\xee\x56\xc3\xf2\x5d\x6b\x14\xe6\xdf\x9b\xcc\xd9\xe4\x1b\x3c\xd8\xed\xcb\x20\x7a\xbd\x48\x2d\x9a\x98\x6c\xef\x8b\xd5\x1b\xac\xfe\x8e\x5d\x50\xcb\x08\xb0\xa2\x13\xbd\xa2\x23\xb5\xa2\x53\xd5\x0d\x40\xf7\xf3\x55\x18\x21\x31\xfe\x2b\x75\xa1\x2b\x63\x76\x95\xfb\x64\x2f\xed\x54\xac\x68\x59\xdb\x8c\x4c\xc9\x7c\x7b\x71\xf7\x87\xa9\xb5\xb8\x7b\x63\xb2\xa4\x99\x37\x43\x39\x4a\x31\x89\x41\xb6\x6c\x2d\x41\x21\xbf\x42\x53\x2a\x84\x84\xc2\xb3\x1b\x4d\x01\x0d\x70\x8e\x1b\x4b\x1a\xa2\x0e\xde\x44\x33\x14\xa1\x65\x11\x72\x14\xf4\xf8\x3e\xa5\x74\x69\xc5\x0f\x6d\xad\xd0\xbc\xec\x3c\x3e\x83\x1a\xe7\x24\x96\x5f\xcc\x04\x5f\x58\xaf\x67\x62\xa0\xd7\x6b\xf8\x7e\x66\xbe\x2f\x3e\x9c\x49\xae\x42\x27\x84\xcb\xaf\xc9\x0c\xeb\xe8\x56\xf2\x39\x44\x1d\x32\x31\x3b\x59\xab\xb3\x29\x59\xf9\xb4\x44\xb3\x72\xc6\x5d\x17\xc1\x5f\xc9\x89\xe6\x64\x82\x2d\x84\x9e\x0a\xbb\xd1\x61\xb0\x76\xb0\x9d\x42\xe8\xe9\xef\xb8\x9c\x35\x1e\x2d\x8a\x6d\x4b\xd7\x94\xa8\x70\x5d\x01\xde\xad\x66\xfc\x00\x26\x9c\x7b\x5f\xd9\xcd\xe9\xf7\x25\x59\xd1\x9c\xc4\xd4\x72\x95\x27\x13\xba\x1f\xee\xdf\x90\x99\xfc\x33\x05\xcd\x52\x8e\x26\xb8\x45\xe9\x04\x4e\x05\xd2\x6f\x1d\xb5\xa6\xeb\xf5\x4e\x9c\x8b\x99\xb9\x75\x02\x07\x75\x07\x8f\x69\xcb\x27\xb2\x98\xc9\x7a\x9d\xa3\x19\xa6\x74\xb6\x5e\x3b\xfb\xe1\x7e\xe4\xb4\x68\x8e\x26\xc4\x89\x1c\xd0\x8c\xe0\x87\x2a\xc0\xb4\xd4\xb4\x0a\x29\xc2\xf6\x87\xc8\x49\x24\x01\xee\x26\x16\xbe\x8e\x9e\x97\xc4\x75\x23\xd7\x65\xa5\xcb\x30\x4a\x73\xd7\x9d\x0c\x59\x90\xa1\x29\x68\xb2\x56\x20\xd2\x4d\x86\xcc\xcb\xd3\x55\x36\x61\xe0\x01\x1e\xac\x10\x8a\x68\x09\x61\x20\xc7\x76\x96\x48\x14\x12\x6a\x68\xab\x40\x9c\x28\x24\xf6\x54\x4c\x72\xcb\xa9\x62\x5e\xbe\x65\x13\x2c\x3f\x17\x1c\x37\x27\xec\x49\x4f\x7f\x7d\x18\x1b\xb1\x71\xc5\x97\x9d\xe3\x07\x91\x4a\xa5\x97\xf3\x92\x46\x68\x85\xc9\x82\x76\x4e\x96\xfa\x2a\x66\x71\x82\xe7\x68\x39\x5a\xc0\x55\x4c\x5c\x1a\x80\x9c\xd8\x98\x08\xb1\xe5\xdb\x20\xa9\xc1\x11\x1d\xd0\x0a\x3a\x95\x84\x4b\xd0\xf6\xea\xfa\x59\x6b\x40\x34\x04\x87\xe5\xdd\x70\x70\x10\x1c\x1c\x68\x1f\x07\xf0\x6e\x38\xea\x06\x47\x96\x99\x55\xff\x39\xf0\x63\x7e\xb7\x83\x1b\xc0\xa6\xd0\x03\x0f\x33\x31\x3c\xa6\x8d\xd0\x03\x31\x68\xb3\x34\x9b\xb0\x69\xc0\x5b\x94\xee\x7b\xfb\x1e\xfb\xce\x26\x1b\xf2\x20\xfe\x04\xfa\xca\xbf\x13\xf8\xdd\x8e\xc5\x30\xb7\x4c\x96\x80\x96\x9d\x1b\xa7\x25\x8a\xb8\xf1\x66\x71\x78\x93\xbb\xae\x86\xb1\x90\x55\xda\x97\xf7\x90\x61\x07\x54\x03\x2c\x2e\xdb\xbe\x0c\x86\xc2\x74\x7c\xf0\x1c\x08\x2e\xc1\x87\x33\x0d\x57\x05\x82\xe0\x81\x3a\xdf\xf9\xc7\x30\x22\x03\xb3\xa6\x48\x49\xed\x25\xaf\x20\x4d\x24\xa7\xad\x2b\x4a\x5a\x84\x13\x97\x68\xa6\x5c\xc5\xd2\x0c\xf8\x28\x1d\x37\xaa\x5c\x2c\x19\x6a\x08\x13\x1d\x15\x53\x8e\x05\xe2\x78\x94\x8e\x91\x32\xe0\xcd\x30\xde\x90\x2a\x4b\x4a\x69\x8e\x42\x22\xb5\xcf\xf2\xb6\x0e\x10\x4c\x0b\x10\x40\x60\xb1\x0d\x89\x6e\x05\xd6\x66\xb1\x89\x65\xad\x3f\x69\xad\xbc\x9b\x38\xbd\x0e\x8d\x5e\x22\x42\x2b\xb1\x73\xdc\x42\xb8\xe0\x95\xb7\x4a\xa2\x49\x3a\x65\x8d\x55\x01\x57\x48\x3b\x66\xe9\xcd\xc8\x94\x8e\xc6\x64\x4e\x3b\x27\x0a\x70\x07\xcd\xa8\x2c\x01\x9f\xc8\x46\x2e\x75\x95\x33\xd0\x52\x4c\x47\xf3\x31\x5d\x12\x30\x2c\x5f\xba\x2e\xb2\xcb\x4d\x50\x4c\x32\x3b\x05\x8b\x0d\x80\xcc\xdb\xed\x8d\x65\x48\x3e\x1f\x8a\xaa\x82\xe9\x66\xac\x71\x5c\x8e\x03\xdf\x2f\xc2\x3d\xf4\x0e\x82\x9e\xe1\xf1\x83\xe0\x60\x00\x24\xf1\x1c\x27\x82\x82\x24\x0c\xd8\x90\xaf\xbd\x08\x14\xda\xbd\x20\x92\x50\x11\x09\xc9\x15\x1e\x62\xf8\x9d\x14\xd0\x88\x24\xb6\xfd\x0b\x26\x74\xff\x1f\x7f\x42\xa3\x3f\xb9\xff\xf7\x9f\xe3\xf5\x3f\xa6\xff\x98\x0e\xd7\xaf\x47\xff\xfb\x66\xfc\xea\x0d\x96\xac\xbf\xf2\x16\xef\xdf\x68\xda\xcb\xd8\x32\x0e\x27\xcc\x21\xdd\x12\xf5\x4d\xc9\x9c\x2c\x6b\xa8\xcf\x8a\x98\xac\xe8\x2f\xda\xa6\xbf\xe9\x36\xfd\x45\xc6\x56\x96\x24\x82\x02\xe7\xf2\x49\x4d\x5a\x82\xc1\x90\xdf\xa6\x3d\x5d\x51\x4c\x97\x68\xae\xa8\x8f\xc8\x28\x5c\x71\x89\xfe\x62\x8b\xfe\x26\x92\xfe\x66\x25\xfa\x23\xd3\xba\xbb\xa0\xac\x31\x5d\xaf\x91\x71\x45\xc8\x54\x90\xd6\x5b\x3a\x51\x94\x0a\x68\xc2\xb2\x0d\xf7\x74\x62\x28\x74\x62\x53\xa8\x71\x53\xbc\xa6\xa3\xf1\x89\x22\xc5\x1b\x1a\xa2\x09\x99\x41\x53\xe5\xd0\xd0\x1b\x2c\xdd\x1c\xa3\x19\xba\x96\x67\xf8\x1b\x4c\x5a\xb7\x2a\x15\xa8\x54\xb5\xe3\x46\x90\x2f\x58\x01\x14\xd5\xa4\x68\x46\x12\x3b\x05\x93\x7b\x8c\x4d\xdd\x57\xe4\x8e\x3a\x0e\x39\xa5\x1d\x72\x41\x3b\x27\x17\xaf\xb5\xcf\xdc\xc9\x45\xbb\x8d\x1f\x6e\xe8\xf5\xe8\x62\x6c\xd6\xd2\x79\xa9\x26\xf2\x9d\xe6\x68\x85\x22\xa4\xcc\x38\x30\x99\x19\xcc\xbb\x0e\x26\x6f\xc5\xb2\xbb\xa4\xfe\xc9\xe5\xeb\x1b\x5d\xe8\x65\xbb\x8d\xdf\xda\x77\x0c\x94\x52\x74\x45\x6f\x46\x97\x63\x3c\xbc\x0a\x54\xe9\x57\x26\xe8\xed\x8d\x77\x93\xa5\xab\x25\xdc\xe5\x4e\xe5\x08\x7d\xa2\xa3\xf3\xb1\x8e\x92\xf1\x96\x7c\x17\x83\x65\x28\xe5\x9b\xeb\x7e\x92\xc5\x7f\x93\x45\x7c\x31\x73\xa4\x94\x7c\x4a\x53\xf1\x09\x2b\x51\xee\x0b\x5d\xa0\x73\x32\x23\xdf\xc9\x5b\xf2\x4d\xd0\xc8\xf7\x37\xf4\xd4\x75\xd1\x5d\x9b\xce\xd4\x7d\xf3\x29\xf9\x8e\xdb\x5f\xc8\x29\xfd\xde\x3e\xd7\x1d\xd4\xab\xfd\xae\x6d\x72\xe1\xcd\xb8\x08\x3a\xb9\x00\xd5\xa9\x8a\x36\xa9\x35\xdf\x49\x9b\x15\x30\x0b\x91\xfe\x39\xa5\xb3\x2d\x8a\x4f\x5d\x17\xa5\x34\x13\x22\xf2\x94\x4e\x30\x99\xeb\xcb\xfb\xa9\xb5\xd0\x32\x5d\xf2\xa4\xa1\xf4\xb2\x61\x11\x91\x42\xaa\x66\x9d\x3f\x39\x4a\x55\xea\xfc\xc9\x01\xdd\xa9\xe3\xea\x14\xa5\xa9\x75\xfe\xcf\x24\x70\x63\xf0\x9f\x48\x45\xab\xf3\x9f\x5b\xef\x72\xf5\xe6\xb5\x13\x4c\x68\x3a\x0a\x55\xb2\x4f\xf6\x7c\x3c\xae\x38\xe4\x4a\x15\x6c\x3b\x6c\xa8\x70\x89\x33\xbd\xec\x32\x10\xca\xdf\xa8\x90\xef\x53\x1a\xa3\xd9\xbe\xdf\x31\xfa\x52\x91\x77\x3a\xcc\x82\xe9\x6b\xba\x1a\x16\xf1\xbc\x47\xd3\x3d\x7f\x3c\x34\x7d\xf4\x71\x20\x93\xda\x76\x52\xb6\x99\xd0\x68\x34\xdb\xf3\xc7\x9b\xaa\xc9\xfd\x64\xe8\x38\xc1\x64\x53\x18\x66\x6a\xae\xbc\x23\x94\x6c\x3d\x97\x7e\x8e\x17\x83\xe1\xd2\x5d\x7d\xe6\xb2\x36\xec\x9c\x85\xd9\xf6\x8e\xad\x08\xe5\xf7\xec\xd8\xd1\xcb\x76\xec\xe8\xf1\x1d\x3b\xa2\x21\x4a\xed\x1d\x3b\x2a\x71\xcc\xc8\xe2\x98\xb9\xe4\x98\xab\x32\xc7\x14\x27\x08\xc3\x6d\x1a\x19\x8a\x09\x84\x07\xcf\x6d\xde\xa7\x37\x6f\x21\x01\xaf\x8a\x9b\x79\x3b\x13\x89\xab\x5f\xc5\x1a\x7b\x9d\x4e\x86\x7b\x7e\x30\x91\x5c\x67\x6b\x8f\x55\x76\xbe\xd5\x79\x7b\x0e\xf4\xe3\x51\x49\x01\xa1\x8c\x02\x23\xb5\xa7\x5a\xc0\xa1\x66\x73\x95\xc2\x29\x1c\x96\x0f\xfa\x58\xef\xab\x62\x8b\x9d\xd0\xd1\x18\x38\x11\x99\x51\x27\x56\x51\xe2\xa6\xb4\xb5\xaa\xe8\xe1\x61\x56\x2c\xa8\x12\xe7\x1e\x0e\x3e\x86\x58\x96\x71\xc4\xab\xfb\xeb\x4a\xee\xaf\xa2\xd5\x0b\x3d\x76\x0b\xea\x4c\x1c\x4a\x9d\xf0\xfa\x7a\xa2\x1d\xa1\xf7\xd1\x35\x7e\xb5\x8f\x47\xfe\x78\xbd\xee\xb7\xa8\xc3\x59\xce\x8b\x77\xc3\x00\xef\x8b\x55\x3b\x9a\x8d\x01\x1d\xc5\x09\xaf\xed\x97\xa1\xfc\x76\xa6\xbe\xf5\x8a\x77\xde\x10\x8b\xff\xa9\x97\xf6\x1b\x8c\x64\xea\x1b\x7f\xbd\x76\x4c\xb2\x37\x84\xc4\xe1\xf6\xfe\x9c\x6c\xc9\x7a\x85\x7f\x8c\x34\x6c\xd2\x78\x02\xa3\xb1\x02\x81\x2b\x70\xdf\xe6\xda\x6c\x46\x14\x67\xb6\x28\x58\x47\x64\x25\xf6\x9e\x98\x22\xe6\x45\x37\x49\x9a\xb1\x77\x61\xce\x86\x4e\xe4\x04\x8e\x83\xdb\x88\x79\x8b\x55\xcc\xa3\x38\x4a\xd8\xd0\x59\x98\x44\xb5\x4b\x0f\x9d\x95\x49\xca\x79\x34\xf9\x76\x3f\x74\xee\x21\x85\x4c\x69\x87\x2c\xed\xc8\x83\xc5\xc4\x05\xd9\x9b\x37\x6f\x3a\x64\x41\xad\xc5\xa6\xcf\x89\x24\x6e\x3b\x37\x0e\x3e\x41\x11\xcd\x65\xa3\x17\x04\x0c\x13\x5b\x08\xa5\x74\x61\xed\xcd\x6f\xa6\x20\x6f\xc2\x0e\x96\x28\xd6\x3a\x25\x91\xda\x5f\x31\x89\x60\x70\x5d\x57\xa5\xbc\x4e\x46\xb3\xb1\xeb\x4e\xd4\xde\xb6\x22\x91\x66\xc7\x58\x90\x69\x34\xea\x8c\x47\xb3\x31\x99\xd2\x94\xac\xc4\x97\x74\x29\x64\x5e\xab\x42\xc1\x56\x65\x51\xae\x6b\x25\x1b\x88\xf7\xe6\x94\x52\x2a\x2a\x19\xb6\x42\x91\x43\x50\x10\x72\x1c\xbc\x5e\xab\x46\x3a\x0e\x0e\xaa\xed\xc5\x58\xd6\xb6\x1c\xae\xcc\x86\xb2\xc4\xc1\x6a\x13\x38\x1d\x4d\x14\x6a\x1b\xee\x54\x09\x83\xd7\x80\x9b\x4a\x4a\xe0\xc3\xd1\x58\x4b\x7e\x06\x1a\x77\x13\xcc\xc9\x4b\x05\xcc\xd5\xd3\x02\xe6\xe2\x49\x01\x93\xeb\x3d\x7d\x89\x16\x5a\xc0\xe4\x64\xd1\xa2\x54\xfa\x31\xe6\x25\xa6\x99\x97\x8e\x39\x99\xd4\x53\x94\x98\xe6\x8c\x26\x68\x45\x24\xdd\x60\x72\x5b\x9c\x6a\xc8\x3d\x45\xab\x5a\x2a\x5e\xd5\x51\xf1\x6a\x9b\x8a\xa7\x92\x7c\x6f\x1c\x88\xe0\xcd\xee\x9a\x33\x34\x1d\xae\x02\xe7\x7f\xd1\x30\x70\xda\x2b\x45\xa3\x6d\x07\x3b\xe4\x1e\x93\x1b\x1b\x9f\xd8\x22\x6f\x2e\xc8\x5b\x6f\xe4\x37\xa5\x55\x09\x7b\x6b\xf9\x5a\xa8\xa9\x18\x75\x88\xae\xc9\x04\x0f\x47\x93\x71\x30\x2a\xc4\xc8\x2b\xda\x21\x77\xb4\x43\x4e\x85\xe0\x7b\xf7\x5a\x7f\x7b\x82\x1f\xae\x2d\xd2\x9c\x0e\xef\x02\x79\xa9\x75\x41\xce\xa1\xa4\xe9\x70\x12\x68\x23\xc0\x3b\x6c\xcb\xc8\xe7\xeb\x35\xba\xa0\x31\x4a\x91\x55\x82\xe8\x7a\x27\xb8\xc3\x98\x98\xd6\x61\x4a\xe9\x15\xbe\xa3\x11\x9a\x90\x3b\x72\x8b\x4d\xe4\xe6\x53\x49\xc3\xba\xf4\x2b\x22\x3e\x3b\xd5\x98\xe0\x45\x8f\x9b\xa7\xa6\x17\xdf\xa9\x7f\xf2\xfd\x35\xd5\x22\xe1\x9e\x7f\xf2\x5d\xa2\x89\xa8\xb2\xce\x47\xdf\xc7\xbb\xca\xb8\xa3\x57\xf4\x42\x43\x87\x34\xab\x95\x8b\xaa\xb7\xb7\x35\xa9\xbe\x30\x06\x26\x75\x47\x49\xa9\x74\x11\x5b\x9e\x54\xb4\xc0\xc6\xd7\x7f\x64\xe3\x63\xa8\xdb\x3f\xc6\x5b\x72\xcb\xc1\x81\x0a\xa4\x06\xf7\xc9\xfb\xde\x7e\x01\x90\x9a\x96\x0c\x9e\x95\xd2\x68\x5b\x35\x52\xf8\x35\x80\xa1\xe6\xa6\xb1\x4b\x3b\xe8\xec\x87\xfb\xd7\x4e\x4b\xbb\x6b\x3e\x28\xcd\x9a\x13\x3a\x04\xd4\x2b\x81\x73\xed\xc0\xc5\xf3\x30\xdd\xb2\x6e\x62\x94\x97\xac\xbd\x9c\x7d\x13\x3e\xcf\xb0\x5e\x67\xdf\xd1\x8a\x9a\x28\x69\xb2\x21\x93\x6a\x9d\xa0\x95\xb8\x6e\x49\xaf\x27\xfb\xa0\x31\x59\x19\x0e\x0a\xbf\xd1\xa0\xe8\x8e\x68\x68\x12\x2e\x98\xeb\xa6\x75\xaa\xce\xc8\xb2\xa7\x2c\x41\xb8\x82\xba\xa9\xdb\x3f\x56\x33\xb5\xa5\x24\x83\x99\x1a\xfc\x01\x58\x9c\x17\x8c\xff\x1b\xb1\x38\xc3\x69\x7d\xb8\xa5\x12\x90\xa6\x68\x02\x26\x8c\x16\x50\x9a\x0c\xa0\x34\x77\xe3\x68\x76\xab\xf1\xc3\x2a\x44\xea\xf7\x44\xd7\xc2\x64\x32\x2f\xbb\x2f\xd6\xf4\x8e\x57\xbb\x27\x28\x49\x61\xaa\x72\x23\xf9\xf7\xfc\xc0\xef\xc9\x9a\x1f\xbb\x8a\xd7\x35\x5f\x47\x37\x2f\x1c\x54\xf9\x89\x23\xfe\xbf\xae\xd2\xc7\xd4\x9e\xa6\xd2\x38\x4a\xbe\xbd\xb8\x5a\xf9\xd1\xce\x8a\x1f\x73\x73\x32\x15\xa7\xf1\x53\x7e\x7b\xdb\xf5\xee\xae\xf3\x45\x21\xb3\xfc\xee\x31\x84\x0a\xd2\x98\xc6\x9a\x8b\x3c\x88\x3d\xed\x4b\x1a\x25\xfc\xed\xa3\x91\x11\x0c\xc8\xf9\x71\xe0\x77\x8b\x40\x7a\xdd\x67\xc5\xc1\x2a\x90\xbc\xf5\xb1\xad\x07\xc1\x53\x1d\xc7\x63\xc9\x34\xff\x5b\xc4\xe7\x65\x5c\xef\x1e\x46\x8e\x7e\xe3\x60\xab\xb5\x3a\x71\xb7\xf3\x38\x23\xf6\x97\xe9\xd6\xb5\xd9\x8e\xe8\x55\x21\xcd\xac\x60\x28\x79\xb1\x59\xa7\xc3\x30\x30\xa1\x4f\x40\x71\x10\x5a\x27\x33\x66\x9b\xda\x69\x51\x67\x45\x72\x1c\x98\x73\xfd\x9e\x06\xc6\x22\xb9\xd8\x25\x57\xda\xb3\xbf\x13\xf8\xbd\x4a\x70\x13\x72\xd0\x0b\x0e\x7a\x30\xac\x8f\x9d\x86\x35\x3d\xcd\xa2\xef\x4f\x3a\x82\x6e\x11\x14\xe7\x8f\x50\xd4\x63\x67\x39\x53\x6b\x9a\xf0\x49\x1a\xff\x0e\x86\x21\xbe\x74\x88\xa3\x3e\xae\x63\x1a\x07\x8f\xef\xa9\x45\x03\xf2\xe8\x49\x7f\xf0\x9d\xf5\xcb\x6f\x6b\xab\x7f\xea\x3e\xba\x07\xf1\x33\x15\x82\xdc\x2c\x4b\x17\xef\x14\xb6\x19\x89\x4a\xa9\x7a\x4d\xd9\x26\x86\xad\x56\xe4\xba\x7e\xcb\xe8\xa7\x6c\xb2\x2e\x7d\x54\xa2\x6d\x83\xc4\x41\x22\x69\x72\xbc\x1d\xe6\x83\x76\x4e\xd2\x37\xe1\x09\xdc\xc0\x72\xda\x2e\x03\x8b\x92\x0c\x71\xe2\xfb\x7e\xdf\xf7\x7d\x6c\x45\x8d\xb5\xa0\x45\x78\xdb\x69\x46\x79\x33\x49\x79\x33\x6c\x4a\xa8\x74\xc1\x14\x9a\x4b\xd1\x18\x07\x37\x22\x65\xe0\xf4\xfa\x60\x30\xe8\x1d\x0c\xc5\xc8\x06\x09\x1a\x0c\xba\xc7\x07\x6d\x84\xf8\x1e\xa0\x77\x1e\xe0\x37\x6f\xfc\x0e\x26\xfc\x3f\xfc\x4e\xb7\xdf\x1e\x1c\xf4\xba\x1d\x6c\xb4\x79\x11\xc4\x78\x42\x92\xe8\xac\x00\x18\x05\x1b\x79\x51\xc4\xa5\x5e\x07\x6f\xf3\x8b\x28\x99\xc4\xab\x29\x44\xae\x2a\x06\x56\x27\xd6\xb0\xb6\x56\xeb\xff\x6b\x22\x5d\x58\x1f\x1b\xcf\xb9\x97\xc4\x38\xb4\x16\x74\x75\x21\x3f\x67\x1b\x8c\x78\x18\x47\x93\xa7\xfc\x8d\xb7\xe8\x39\x7a\x64\x25\x3f\xef\xfe\x4f\xec\x09\x70\x07\x78\x34\xc0\xea\x54\x56\x0c\x1e\xaa\x33\x8d\x33\x7c\xaf\xb0\x8f\xab\x8b\x73\x66\xa2\x9a\x15\x76\x73\x91\x89\x08\xf4\xc6\x00\xc6\x0e\xeb\xcd\xdc\x02\x24\x24\xd0\x8c\x24\xa6\x96\xb6\x89\x86\x46\xb6\xec\xda\xb4\x40\xa8\xb6\x26\x88\x4c\x06\x63\xf0\x9c\x3d\xf9\x19\xb2\x40\xbd\xe4\x33\xcf\xd8\xac\x9e\x8b\x54\xa3\x00\x6d\xef\x82\x9d\xe2\x8a\x49\x1b\xdd\x18\x8a\xcd\xc2\xbb\x7a\x06\x20\x8e\xb7\x5e\x16\xde\xc1\xd9\xdb\xda\xab\x6a\x59\xc2\x68\x4c\x72\xda\x39\x89\xde\xe4\x27\x58\x79\xc8\xe8\x63\xf1\x28\x07\xbc\x61\x92\xbf\x4e\x5d\xb7\xfc\xae\xa0\xee\x7c\x5c\x58\xef\x87\xd5\xc5\xbb\x23\x2e\x57\xb7\x1a\x43\xa8\x6a\xcf\x64\x8b\x1d\x19\x5b\xb2\x90\x07\x12\xa4\xab\x84\x75\x53\x14\xf7\x9c\x3d\x30\x5f\x84\xf1\x53\x7e\xf1\x5b\xf3\xa7\x3e\xda\xb5\x78\x5e\x14\xcd\xa6\x46\xa6\xc9\x79\x98\xf1\x1d\x52\x4d\xf1\xae\xc4\xa7\x8a\xe4\x47\x25\x9b\xd2\xd7\x29\x55\x40\xe0\x42\x32\x79\xa6\x98\x63\xc8\x06\x93\xf0\x51\x19\x26\x24\x69\x21\xc3\xa4\x24\x6d\x87\xfa\x4b\x4a\x69\xf8\x2c\x19\xa6\x1a\xeb\xa6\x7e\xfe\x78\x16\x7d\x7b\x6a\x2b\xdf\x9e\x40\xf5\xd5\xce\x19\x7c\x2c\x10\xa1\xa9\x7a\x75\xfd\xe2\x7a\x57\x8f\xc8\xe3\xd5\x60\x3a\x3b\x2a\x7d\x69\x48\x07\xf9\xc9\xce\x4a\x9f\xda\x5f\xfa\x18\x49\xe8\xdb\x97\xd5\xda\x2b\xea\x02\xa8\x4d\xa8\xeb\x39\x9b\x4a\x15\xf9\x77\x70\x54\x36\x6f\xf5\x7d\x15\xf3\xf6\xb8\x8f\xbd\xbf\x9e\xfe\x02\xca\xfe\x03\x05\x2e\xe0\x77\x0f\x24\xba\x80\xdf\xed\x4b\x78\x01\x08\xb2\xae\x23\xb5\x03\xc0\x00\x04\x9d\x9f\xc3\x8f\x8e\x84\x18\x38\xf0\x25\xc2\xc0\xe1\x31\x06\x70\x81\xde\x91\x84\x16\x38\xf2\x15\xb4\x40\xbf\xab\xa1\x05\x3a\x0a\x5a\xa0\xdf\xc3\xe4\x4e\x9b\xe6\x9d\x2a\x57\x96\x0b\x2a\xd1\x72\xc8\xb9\x36\xeb\xfb\x0e\x3f\xfa\x98\xbc\x55\x06\x7f\x97\x0a\xbe\x84\x7c\xa3\xe7\x00\x18\xf0\xd6\x9b\x91\x2f\xf4\xc2\x9b\x91\x5f\x29\xd7\x51\xe0\xdf\x51\xee\xfd\xe5\xe2\xfc\x33\xf9\x4a\xdf\xb9\xee\x3b\x4f\x22\x08\x47\xb3\x7b\x72\x46\x67\xc8\xb9\x9a\x47\xd3\x29\x4b\x1c\x4c\xde\x8b\xc7\x72\x74\x9e\xcf\xf4\x61\xe3\x2d\x95\x45\xf4\x59\x7e\x2a\xed\xb3\xaf\x63\x46\x3e\xd2\x15\x72\x72\xa8\x61\x2f\x63\x37\x51\xce\xb3\x7b\x07\x93\x0f\x45\xb2\x90\x7d\x7e\x13\x8f\xe9\x72\xaf\x48\xf9\x89\x6e\xc1\x63\xfc\x50\x77\xf9\xfe\xab\xeb\xb6\x5a\xdf\xbd\x19\xf9\x33\xe5\xde\x7f\xcb\x6f\xc8\xcf\xb4\xf5\xe7\xf5\xba\xf5\xe7\xe2\xe3\xf2\x13\xc4\x95\x7e\x37\x8f\xe2\x29\xf9\x27\x4d\x5c\x37\xaf\xd3\xde\x1c\xb6\xe8\x29\xfa\x84\x1e\x36\xb0\x75\x3e\xd4\xdb\x61\x7d\x2a\x36\x57\xb5\xc5\x1f\x6e\xb0\x27\x58\x8d\xf8\x17\xe3\x92\x36\xbb\x50\x48\x7f\x43\x3f\x11\x8e\x1b\x89\x71\x12\xf8\x69\xc4\xc7\xe4\x93\xca\x44\x12\xd7\x65\x2d\x4a\x7f\x72\xdd\x4f\x22\x23\x49\xf0\x26\xf8\x44\xfe\x56\xe3\x40\xfd\x61\xc4\xc6\xf4\x14\xfd\x6a\x39\xa1\x18\x2c\x3b\xef\xea\x1b\x65\x84\x6f\xc8\x9f\xe8\x0f\xae\xab\x46\xdb\x1a\x39\x4f\x07\xbb\x1f\x6e\xaf\xb1\xad\xdc\x6c\x53\x8b\x92\x6a\xeb\xcc\x7e\xdd\x90\x1f\xcb\x80\x8a\x49\xc9\x55\xf4\x27\xd7\xfd\x11\xfd\x06\xc9\xe4\x16\x84\x31\x7a\x25\x3d\xb7\xc9\x2d\x4a\x30\xc9\xd0\x07\xc2\xf1\x10\x25\x1e\x33\xf4\x03\x80\xe8\xe4\x0c\xbb\x2e\x1b\x9d\x8d\x47\x7c\xec\xba\x48\xfd\xa2\x32\x86\xf0\x29\x4a\x8c\x43\xc0\x75\xcc\x82\x3b\xd4\x81\xb8\x81\xe0\x3a\x0d\xdf\xae\xd7\x62\x60\xcf\xc8\x1d\xf2\xc9\x03\x78\xdd\xeb\x02\x3a\x98\xfc\x53\x35\x14\x07\x9f\xd4\xaf\x0d\xf9\xa5\x6a\x64\x28\x76\x1b\x03\x97\x49\x12\xba\x44\x9c\xde\x00\x64\x72\x44\x3b\x24\xa5\x3a\x5c\xe4\x49\xfa\x26\x3a\xc1\x3f\x22\x21\x49\x26\xa3\x48\x9c\x64\xf8\x28\x2b\xc2\x4a\xb2\x0d\xf9\x6b\xcd\x24\x7e\xb6\xef\x31\xe8\x15\x82\x90\x77\x85\x73\x89\x72\x2e\xfd\xc9\x75\xc5\x08\x31\x09\x57\xfc\x1b\x61\x18\x6c\x2d\x11\x07\x20\x3b\xa5\xf0\x80\xdf\x1f\xe0\x87\x4a\x13\x63\x07\x21\xfd\xce\xc6\x23\x36\xc6\xeb\x35\xc7\x1b\xf2\xdf\xdb\x00\x18\x8c\xde\x94\xe7\x04\x28\x50\x95\xc7\xa1\xbc\xdf\x08\xc7\x05\x05\x33\xcb\x01\x26\x29\xe5\x2b\x4d\xd8\x7a\x5d\x9a\x50\x18\xf4\x64\xb3\x21\x7f\xa9\xc7\x6e\x24\x09\xfd\x82\x44\x4b\xb0\x3e\x3b\x76\x4e\x12\x0b\x4b\x02\x6a\xa1\x89\xc4\x93\x58\xaf\x39\xa5\x67\xf0\x6f\xb8\x5e\xeb\x23\x5f\x21\x19\x6c\xc8\xdf\x77\xd6\x02\x14\x49\x22\xfa\x05\x25\xc3\xdf\x02\x59\x63\x2a\x6a\x14\x47\x53\x7d\xdc\x15\x27\x54\xd9\x31\x1a\xc9\x90\x17\xeb\x75\x02\xe3\xff\x13\xf4\x35\x95\x55\x7e\x18\xf1\x62\x92\xd3\x4d\xe3\x87\xf5\x1a\xa5\x08\xfd\x6a\x3b\x63\x2b\xb7\x99\xd2\x82\x51\xc7\x5a\x03\x15\x83\x1c\xc9\x8b\x8b\x93\xad\x65\xa3\xd9\x72\xa4\x6a\x9e\xd1\xc9\xb6\xe0\x54\xaf\xa5\x25\x96\x2b\x7e\x22\x8f\x43\x92\x90\x94\xf5\xf1\x6f\x04\x96\x9d\xa1\x13\xf9\x73\x74\x36\x06\x2a\x43\x05\xd9\xc0\x5a\xfb\xa7\x96\xe8\xc4\x42\x4a\xb0\x01\x86\x69\x26\xae\xfb\xb3\xeb\xfe\x13\xfd\x54\x67\xbf\x9a\x33\x1e\xf0\x0d\x26\x7f\x03\xb7\xf0\xe7\xa2\x1d\x29\xc7\xa0\x6f\x62\xb9\x9e\x7b\x33\xfa\xdf\xe4\xad\x37\xa3\x3f\x12\x6d\xb8\x2c\x36\x2f\xfa\x17\x78\x3c\x12\x8f\x7f\x25\xdf\xbd\x19\xfd\xbb\xe0\x9c\x2d\x80\x01\x72\xdd\x14\xfd\x44\x9c\xba\x3d\xc9\x21\x7f\x05\x02\x9f\x7a\xb3\x3a\xaf\xf6\xbf\xa1\x19\x38\xca\x60\x12\xa1\xc8\xfb\xb1\x1d\x79\x7f\x6b\x47\xde\x87\x57\xad\x1f\xc8\x83\x9c\x9e\xe0\xd7\x4d\xc1\x0f\xfe\x87\xda\x51\xd0\x48\x94\xbf\x83\x3b\x87\x8b\x65\xc6\xc2\x29\x6c\x81\x9a\xcd\x12\x30\xce\x24\xca\x4c\x8e\x48\xcb\x0f\xa2\xb0\x77\x08\xdc\x84\x12\x6b\x5b\x25\x16\x9a\x14\x59\x25\xf9\x24\x5d\x8a\xe2\xf2\x12\xb0\x39\x63\xb4\x73\xf2\x3f\x9a\x0a\x18\x3b\xc1\x33\xf4\x3f\x23\x26\x83\xd9\x1a\x72\x67\xf4\x12\xcd\xbc\x9c\xa7\x19\xc3\x24\x13\x9f\x70\x7d\x32\x7d\x93\xb1\x13\x3c\x47\x9c\x8d\x32\xf9\x11\x78\xef\xe8\x0e\x2b\x7a\x74\x88\x58\x3a\xf5\x9a\xd6\x8f\x84\xb5\xa9\xe3\xe0\xe1\xc7\x11\x1b\x07\xe2\x1f\xfa\xab\x98\x6a\xf2\x8d\xdd\x7f\xa8\x7c\x14\xcd\x50\xeb\x4f\x62\x70\xab\x74\xcf\x6c\x6d\x8e\xdc\x7a\x04\xb9\x9b\x0e\x34\xa3\xa4\xf9\x11\x47\x33\xf4\x51\xf0\x6d\x2b\x22\x33\xdf\x90\x55\xce\x2e\x18\xe7\x36\xa6\x36\x7e\xf8\x99\xb6\x3a\xf2\x55\xb4\x58\xda\xae\x2e\xf0\xca\xdf\xa8\xd9\x2d\x3a\x5a\x05\xb7\x7c\xfc\x16\x9a\x0f\x4f\x11\xc3\xc1\x2f\xe8\x54\x3a\x02\x6e\x48\xc5\xfb\xf1\x47\xb2\x85\x66\xf9\x0b\xd9\xe9\x38\xf6\xdf\xa4\x06\x19\x31\xf8\x4b\x25\x55\xce\x45\x1e\xfc\x7d\x23\x19\x41\xc2\x68\x59\x70\xf9\xee\xcd\x10\xec\x7c\xd6\x24\x26\xcc\xea\x5b\x7d\x79\x35\xd3\x2a\x4a\xba\x56\xee\x62\xe4\x9d\xeb\x16\xe5\xa1\xd6\x0f\xeb\x75\x5e\x73\xf9\xf6\x2b\x32\x17\x6f\xd2\xcd\xd6\x69\xd1\xaf\x48\x6e\x39\xce\xc3\x06\x9e\x1e\xc2\x80\x6d\xac\x67\xd9\x30\xb9\xda\x30\x26\x8e\x10\x3f\xe1\x5c\xa9\x24\xcf\x1d\x4a\x45\xb1\x05\x8f\xd8\x98\x44\xd4\x3f\xd9\xe2\x84\xd1\x89\x76\x6e\x2c\x38\x62\x24\x29\x7b\x86\x32\x2a\xf6\x0e\x7f\x4c\xd0\x3d\x12\xfc\xdb\xdc\xf9\xc3\xae\xfa\x27\xcb\x9e\x64\x01\xef\x4b\x08\xc3\x6a\xa3\xac\xb3\x00\x05\xd0\xa1\xac\x62\x8e\x80\x49\xeb\x4f\x42\x48\x30\xa4\x8a\x89\xa8\x9b\x72\xf2\x55\x99\x68\xbc\x93\x68\x9a\xc4\x12\xdf\x46\xef\xc7\x3a\xa6\xa5\x95\x4a\xde\xdb\x79\x74\x64\x07\x4c\x62\xf4\xab\x59\xa3\xe2\x49\x9c\xac\x75\xdc\x14\xc1\xe2\x62\xa4\x64\x7a\x35\xb4\x0a\x2b\xce\xb8\x99\x68\x60\x4d\x65\xc4\xdf\xe9\x07\x7e\xa7\x4f\x0a\x8c\xc2\xa3\xc0\xef\x1c\x19\x37\x94\xc2\xc8\x5f\xc3\x1b\x1c\x04\x7e\xf7\xc0\x8a\x79\x5e\x0e\xf7\xe9\xf7\x0f\x03\xbf\x7f\x48\xfc\x41\x27\xf0\x07\x1d\xe2\x0f\xfc\xc0\x1f\xf8\x05\xfc\x81\x7d\xfb\xe9\x07\x07\x7e\x8d\xef\xb3\x0a\x86\xd0\x0d\x0e\xbb\xe4\xf0\x38\x38\xd4\x30\x80\x0a\xfe\xa0\x1f\x1c\xf7\xab\x41\x12\xaa\x71\x3e\x9f\xd0\x84\x1c\x68\xbd\xd6\xa0\x8c\x07\x00\x7a\xf3\x50\x2b\x4b\x72\x75\x34\x5b\xa9\xa0\x08\x10\xfb\xf6\x87\xd5\x6c\xc6\x32\x75\xf6\x3b\x14\x67\xbf\xa4\xf4\x62\x46\x13\xef\x7d\xc8\xc3\x9f\x23\x76\x47\xa6\x34\xf3\xde\xfe\xf0\xb3\xeb\xae\xbc\x28\x87\x94\x39\x9d\x58\x93\x0a\x5a\x0b\x70\x87\xfa\xf9\xec\xf4\x6f\x06\x30\xef\x6f\x52\x11\xbf\x6a\x51\x3a\xc1\xe4\xc1\x2a\x3e\x98\x6c\x94\x6f\xac\x04\x66\xc8\xbc\x77\xe7\x9f\x2f\x2e\xbf\xaa\x50\xc1\x32\x13\xf8\xfc\x89\xda\xea\x96\xf9\xd4\x75\xa7\x00\x99\x96\x43\xe8\x81\xa5\x76\x3e\x24\x5a\x03\xf4\xd3\xa3\xb1\x8f\x5a\x09\xbb\x6b\x4e\x50\x17\x1b\xb3\x4f\x25\x77\x78\xd7\xf7\x9c\x7d\x2c\xa2\x6b\x95\xdb\x53\x17\x2a\xdb\x18\x7b\xb5\x28\x9d\xbb\x6e\xc1\x68\x2b\xf6\x5d\x91\xb2\x90\xb1\x05\x72\xaa\x12\xad\x5a\x49\x02\xc1\x70\x32\x31\x6f\x29\xaa\xc4\xd8\xce\x00\x70\x82\xdd\x21\xb5\x56\x27\x18\xa3\x10\xe5\x7b\x09\xc6\xca\xa9\x69\xa6\x6a\x59\xaa\x27\xe5\x48\x93\xbc\xce\x4f\x30\x38\x6f\xfd\x14\x25\xfc\x08\x2d\xda\x6d\x32\xf5\x6e\xf4\x63\xd2\x6e\x17\xfa\xc7\xd5\x66\x53\x20\xda\xd8\xfd\xb7\xc2\x25\x5b\xf8\x20\xe5\xd0\xda\x7e\x7f\x10\xf8\xfd\x01\xf1\xfb\x07\x81\xdf\x3f\xd8\x85\x76\x51\x38\x9f\x3e\x15\x0f\xb6\x20\xa4\x96\x24\x79\x41\x89\xe4\x41\xd3\x66\x20\xc9\xdf\xd0\xaa\xd2\x98\x96\x1b\x61\x54\x9c\xd5\x80\xb1\xe2\xe3\x3e\x46\x0e\x80\x44\xf6\xba\x0e\xe9\x3f\xa1\x9a\x16\x0c\xbc\xaa\xba\x91\x89\x5a\x7d\xd3\xef\x07\x7e\x1f\xd4\x37\xd5\x20\xab\xa5\xca\x0e\xfa\x0e\x39\xfa\x23\x2b\xeb\xd5\x57\x76\x96\x70\xff\xa0\x62\x77\xf9\xaf\x56\xb5\x1d\x53\x5b\x57\xf5\x87\x0f\xe1\x60\x67\x55\x47\x15\xc3\xe3\x7f\xb5\xa6\x83\xfa\x9a\xc4\xfa\xf8\xc3\x07\xf0\x70\x77\x5d\x7f\xf8\x08\x1e\xed\xae\xeb\x8f\x1e\xc2\x6d\xe8\xec\x3f\xac\x2a\x13\xbd\xd6\xd4\x56\x0e\x7d\x59\x6f\x64\x24\xfd\xfd\x3b\x72\x73\xec\x77\x31\xea\x6c\xeb\x44\x61\x7b\x3c\x3e\x94\xdb\xe3\xa0\x23\xd5\xa1\x62\xbb\x9c\x28\xd3\x24\xa9\x0d\x15\x3f\xa6\xb4\x95\x78\x6f\x27\xe2\x84\xf3\x77\x29\xff\xb9\xae\x53\x7a\x76\xa2\xa4\x99\x90\x39\x0d\x05\x6b\xfd\x1b\x0b\xbf\x91\x65\x9d\x73\x3b\x59\xd0\x95\xb7\x9a\xc1\xa9\xa6\x12\x0e\xed\x0f\x33\x72\x22\xf7\x74\x2b\xe2\x70\x34\x43\xb1\x10\x14\x15\x93\x9d\x17\x57\x11\x2d\xb9\xc7\x2c\xd0\x44\x69\x05\x45\xe3\x21\x90\x30\x04\xb3\x07\x97\xd0\xa1\x41\xc0\x18\x1b\xa4\x81\xdd\x31\x89\x57\x60\x4a\xb5\x55\x1c\x51\xf1\x88\xaf\xe9\x96\xc5\x97\xce\x43\x6e\xc9\x3d\x59\x91\x56\x47\x4c\x7a\x63\xe6\xba\x53\xd7\x45\x39\x42\x99\x44\x43\x78\x57\xe8\x15\xd0\x6d\xa9\xa1\x85\xcc\x79\x8f\x49\xe8\x7d\x3e\x3d\x7d\x4f\x5b\x1d\x12\xa1\x91\x23\x75\x95\x0e\x11\x07\x5e\x87\x38\x37\x0c\x0c\x13\x18\x77\xc6\xdb\x30\x62\x9c\x5e\x97\xe2\x5e\xf3\x11\x1b\x37\x52\xc4\x09\xb3\xf2\x72\x12\xa9\xf1\xe4\x42\xfe\x5e\x0a\x69\x59\x5d\xda\xce\x84\xf0\x2d\x7f\xc1\x26\x9c\xc9\x33\x4f\xaa\xee\x65\x67\x23\x36\x86\xcf\xf5\x99\x43\x34\x83\x52\x26\xdd\x6d\x53\x7d\x85\x6f\x05\x5b\x27\x5c\x02\x90\x89\x93\x86\x8d\x97\xac\x4d\xd0\xba\x41\xbf\x4b\x06\x9d\x60\xd0\x91\x86\x68\x65\xec\x1d\x29\x67\xea\x60\x09\xd5\x80\xae\xb5\x12\xe6\x40\x03\xf1\xf7\xc1\xdb\xc3\xcc\xce\xff\x5f\x6c\xf2\x00\xdc\x07\x65\x16\x21\x29\xbb\x3c\xe9\x7c\x4e\x38\x69\xf9\x95\xe0\xd6\xd6\x58\x40\x9f\x5f\x14\xb0\xe3\x50\x0b\xd5\x5d\x8d\x41\xa4\xe0\x05\x7a\x2a\x84\x62\x7f\x60\xae\x57\x41\x3a\x72\xc8\xc3\x2c\x0e\xf9\xa7\x70\x59\x13\x89\x26\x07\x84\x30\xdb\xb8\xb3\x99\x4a\x65\x65\x84\x56\x96\xfd\x53\x88\x56\x44\x8c\x3a\xca\xc9\x8a\xac\x08\x27\x1d\xe2\x13\xcb\x24\x62\xe4\x8f\x31\xc9\xa5\x64\xd6\x1b\x60\xe4\xa8\x2a\xa5\x50\x56\x75\xf8\x91\xc8\x4c\x83\xa0\x37\x20\xfd\x41\xd0\x1f\x68\x01\xec\x30\x38\x90\x54\xf0\x92\x1b\xd7\xbe\x2f\xad\x16\x2a\x7d\x7e\xc4\xd4\xc3\x58\xb1\xbd\xc0\xa4\x43\xf7\xab\xb0\x0c\xd9\x90\x07\xd5\x05\x3f\xb0\xaf\xbd\x1f\x89\x33\xab\x40\xbb\x3b\x45\x83\x6d\x28\x75\x96\xf0\x2c\xda\xd5\x60\x63\x71\xe7\x77\x02\xdf\xb7\xdc\xab\x8f\x9f\x32\x52\xf2\xf5\x85\x74\x5f\xed\x34\x70\x95\x25\x28\x66\xd0\xdb\x6e\xc4\x2e\x4d\x4a\xbe\x43\x63\x10\x92\x9c\x26\xd2\x3b\x29\x82\x28\x9d\x19\xca\xc5\xe6\xf4\xb0\x21\x33\xda\x39\x89\xf5\xc0\xce\x4e\xb0\x39\x86\xa0\x90\xae\x50\x4e\x38\x8d\x47\x33\x30\x3e\x70\xdd\x14\x4d\x24\x04\x9a\xea\xf0\xa4\x02\xdb\xa0\xa0\x4d\xf4\x79\x78\xd0\x0b\x06\x96\x69\xc0\x23\x81\x72\xad\x21\xf7\xb7\x7b\x0b\xc7\xfd\x17\x8f\xf8\x4b\x50\xa5\x06\xca\x7f\x58\x6f\xf3\x70\x9a\x4d\x15\x9c\xb9\xb1\x07\xf8\x6a\x23\x53\xce\xa2\x24\x8c\xe3\xfb\x9a\x9b\xff\x48\x81\xc1\x6a\xd8\xce\xf5\x3a\xd1\x3f\xc5\xda\xaf\xd1\x9f\xb0\x86\xad\xf5\x05\x5c\xc6\xb0\xb8\x94\x2a\xb0\x94\x60\xff\x40\x78\x0b\x79\xb2\x18\x0f\xc1\xe0\x03\x46\x5e\xf8\xb5\x54\x47\xaa\x8f\xcd\x80\x2a\x6c\x47\x75\x46\x93\xc8\x8c\x95\xc8\x85\xd5\x70\xc2\x4f\x58\x80\x19\x2f\x6d\x69\x49\xff\xb3\x44\x81\xff\xc7\xbe\xdf\xf9\x87\xf7\x8f\x69\x1b\xc1\xbf\x78\x88\x9a\x9f\xd2\xeb\x28\x66\xff\xd8\xff\xc7\x5d\x1b\x0f\x9b\x17\xe1\x2c\xcc\xa2\x7f\xec\xef\x4b\x8f\x9b\xc4\xb6\x23\x8b\x2c\x7b\x8c\x65\x38\x3d\x4d\xea\x4d\xb2\x5f\xc6\x4a\xe0\x02\x4d\x59\x4b\x74\x03\xbf\xd7\x35\xc8\x95\x05\x79\xbd\x48\xc9\xf2\xff\xa0\xe7\x17\x3c\xdc\x15\x05\xff\x85\x7d\xef\x3c\xd1\xf7\x5e\x35\x74\xf1\x4e\xf3\x85\x8f\x6c\xf6\xd2\xbd\x1e\x06\x9e\xc0\xd7\xd0\x23\xa7\x6c\xce\xd0\x7b\x34\x90\xb1\x5d\xf7\xd7\xe8\x66\xfe\xd2\xca\xbb\x45\xe5\xa7\xc9\x74\xab\xea\xed\xa3\xf8\xa0\x83\x91\x13\xe6\xf7\xc9\xe4\x4c\x5d\x72\xc8\x8f\xa4\xc2\x0f\x3e\xaa\x6c\x92\x85\x65\x18\x43\xfe\x41\xbf\x88\xad\xa2\x3c\x63\x75\xc8\x65\x75\xc8\x38\x54\xd8\x34\x47\x47\xca\xc1\x52\x70\xaa\x15\xcd\x91\x13\x99\x0a\x49\x2c\x9e\x4b\xb1\x37\xc8\x84\x86\x52\x13\x47\x66\xf4\xe1\xdd\xc5\xc5\xd7\x55\xcc\x3e\x46\x39\x0f\x5a\x1d\xf2\xee\xe2\xe2\x82\xdf\xc7\xec\x3d\x9b\xc4\x61\x06\x31\xb9\x82\x96\x2f\x92\x7f\x16\x8c\x56\x66\xf3\xc9\xbb\x38\x62\x09\xff\xca\x26\x5c\xa7\xbc\x3f\xff\x54\x79\x94\x55\x5a\x09\x97\xe9\x37\x96\xe8\x8a\xde\x87\x3c\xbc\xcc\xc2\x24\x9f\xb1\xec\x8c\xb3\x85\xce\xf7\x21\x8a\x4d\x2d\x7f\xbe\xfc\xf4\xf1\x6d\x1c\xbf\x4b\xe3\x58\xe2\xa9\xeb\xc4\xed\x94\x0f\x69\xb6\x38\x8d\x99\xa0\x57\x9d\x74\xc1\x44\x1e\x2b\xf1\x13\x9b\x46\xa1\xae\xff\x53\xb4\x60\x97\xf7\x4b\x06\x03\x21\xde\x7e\x0e\x17\x6c\xfa\x39\x9d\x32\x21\x66\x89\xe7\x74\x6a\x46\xe5\x4b\x18\x89\xde\xfe\x73\xc5\x72\xd3\xc3\x2f\xf1\xea\x26\x4a\x8a\x5f\xa6\xa0\x8b\x9f\x7f\x94\x8a\x36\x9d\xf3\xe2\xe7\x1f\x65\xfc\x33\x2b\xe1\x4b\xc8\xe7\x17\xec\xc6\x4e\x49\xa3\x84\x5b\xcf\xe5\xe1\xbb\xf8\xf9\x47\x39\x5a\x69\x66\x86\xea\x02\xfc\x76\xa4\xea\xcc\xa4\x89\xc9\xbb\x98\x33\xc6\x75\xdb\x2f\xd9\x77\x7e\x99\x85\x93\x6f\xef\x8a\xe9\x33\x69\x26\x21\x5d\x4d\x74\x7b\x37\x64\x4a\x33\x34\xc3\x00\x04\x32\x7f\x3d\xd5\xf7\xf7\xf3\x76\x5b\x81\x80\x90\x05\x9d\x8e\xe6\x63\x71\xb0\x1c\x2d\xc6\xe4\x9e\x46\xe2\xcf\x35\xbd\x77\xdd\xfb\xe2\x60\x03\x30\x0c\xae\x8b\xae\x47\xab\xf1\x7a\x9d\xa2\x6b\xb2\x22\x13\x4c\xae\x47\xb1\x7a\x8c\xc9\x02\x93\x70\xb4\x18\xd3\x09\xb9\xc5\x58\x50\x3f\x68\x59\x39\xbe\x1e\x2d\xc7\xeb\x75\x82\xae\xc9\x92\xf0\xd1\x72\xac\x04\xf1\x22\x40\x50\x25\xa0\x8b\x7f\xd0\x0f\xfc\x42\x2d\x0e\x0a\xf1\xa3\xa3\xe0\xe8\x08\x56\xd9\x53\xd2\x5c\xef\xa0\x50\x04\xfe\x00\xb0\x5d\x67\x8b\x85\xa0\x15\xce\x02\x80\x18\x23\x93\x98\x85\x99\x9d\x08\x09\x8a\x11\x4a\xf8\xe2\x82\x01\xee\x90\xe6\xb4\x19\xd5\x41\x99\xdd\x8f\xc6\x4a\xb9\x9d\xd2\xfd\x4f\x17\x67\xa7\x4d\xef\x1f\x9e\xe1\xe8\x76\xd0\x8c\x7a\x8d\x86\x36\x39\xd8\xe2\xdf\x5d\x92\xd2\x16\xe0\x39\x29\x40\x04\x9d\x81\x74\x0b\x93\x0b\x94\x0c\x2d\x7e\x57\x77\x7b\xc3\x87\x3c\xf8\x50\xd8\xcd\x2a\x0c\x64\xc9\x11\x53\xbc\x01\x8d\xf1\x66\x03\x38\x90\x3f\xb6\x33\xef\x07\x40\x51\x4d\x61\x10\x2f\xa3\x05\x4b\x57\x3c\x08\x11\xf7\x8a\x47\x2c\x0e\xf4\x67\x09\x67\xd9\x6d\x18\xeb\x77\xfa\x59\xd9\x8d\xda\x7b\x8a\x91\x27\x7a\xe5\x10\xc3\x04\x7c\xea\x7a\x9d\x01\xc8\xf5\x9d\xbe\xfc\xd3\xc3\xa4\x74\xea\xef\x82\x8c\xdf\xe9\x05\xbd\x4e\x0f\x28\xa1\xd7\xe9\xc3\x14\xf5\x3a\x03\x29\xb5\x40\xc9\x87\xd5\x92\xa5\xee\xfc\x89\x3d\x7c\xcb\x08\x2b\xa3\xdc\x9b\x87\xb9\x25\x7d\x93\xa4\x4e\xa4\x93\x97\x52\x43\x75\x61\xfe\xb0\x21\x11\x4d\x8c\xc1\xd1\x7a\xed\xfc\xd7\x7f\x19\x06\x0e\x06\x34\xa5\x4d\x04\xde\x97\xb7\x15\x12\xd2\xc4\xb3\x78\x3c\x64\xb1\x79\x7e\x81\xb6\x91\x4b\x33\x2a\x92\x68\x08\x03\x88\x7d\x6f\xba\x60\x5b\x60\x4c\x86\x3c\x98\x90\x54\x77\x53\xde\xfd\xa2\xc8\x86\xf4\x0d\x41\xfd\x70\x8a\x92\xf5\x7a\x64\x19\x79\x78\x57\x51\x72\x9b\x7e\x63\x5b\x11\x64\x25\xad\x3a\xf9\x2a\x5f\xb2\x64\xca\xa4\x5c\xe2\x34\xaa\x74\x1d\x91\x54\xde\x26\xb2\xef\x6c\xb2\xe2\x32\x56\x3f\x4d\xd4\xcd\x38\x54\x29\x2d\x42\x7e\x64\x89\x1c\x82\x66\x94\x37\xc3\x38\x63\xe1\xf4\xbe\x99\xad\x92\x44\x7c\x22\x63\xfd\x4f\xd2\xc5\x32\x66\x9c\x4d\x65\x11\x50\x2c\x94\x23\x9e\x23\x55\x64\xaa\x9b\x70\x8e\x24\xe0\x4b\xe6\x2d\x18\x9f\xa7\x53\x1a\x91\xcc\x0b\xb3\x1b\x9a\x6a\xd8\x99\x90\x66\xde\x94\xc5\xec\x26\xe4\xc0\xe1\x0c\x64\xc9\x0d\x0a\x15\x70\x4e\x0e\xb5\xe4\x94\xd2\x18\x4f\xd2\x84\x47\xc9\xca\x08\xf1\xf9\x66\x23\x5a\x90\xb0\xef\x5c\x34\x40\xd7\x83\x05\x9f\x49\x38\xcd\xbc\x2b\xf5\x37\xcc\x6e\xc0\xe5\xb6\x59\x6a\xb0\xc9\x0f\xfd\xa8\x8c\xa3\x3d\x46\xd4\xea\xb8\xec\x42\x23\xf3\xa6\x51\xbe\x0c\xf9\x64\x7e\xfa\x7d\xc2\x96\xf2\x00\x20\xde\x48\x7c\x17\x47\x29\x8b\xac\x5a\x5c\x37\xf3\xc2\xeb\x6c\xb5\x84\x78\x27\xf0\x56\x96\x85\x1b\x09\xb5\x26\x47\xe3\x4b\xa9\x69\x86\x71\x4f\xd2\x6c\x11\xc6\x0e\x38\x3c\x03\xb1\x88\x16\x27\x62\xf0\xd2\x84\x0d\xad\xd6\x05\x45\x37\x7e\x89\x58\x3c\x75\xc8\x04\x46\xbc\x66\xf4\x94\x15\x21\xbc\x97\xce\x02\xb2\xb8\xcd\xa6\x18\x21\x59\x9b\xeb\xa2\xea\x10\xa8\x09\x55\x39\xd5\xb4\x4e\x64\xff\x37\x1b\xc0\x57\x0e\x31\x49\x37\x66\xa9\xe8\xee\x3c\x14\x88\x93\x0f\xa2\xec\x40\xf7\x4d\x08\xcd\x01\x2b\xd0\x43\x36\x55\x08\x4a\x95\x5d\xd5\x28\x72\x27\x9b\xcd\x86\x79\x77\x59\xb8\xa4\x79\x43\xe2\x2e\x3d\x6c\x8a\xd5\x39\x41\xf8\xa1\x68\xc0\xac\xf4\x34\x15\x4f\x12\x21\xef\x61\xd3\x98\x8f\xa2\x31\xad\xb7\x0c\xda\x34\x24\x52\x97\x5a\xb7\x65\xf4\x5b\xb2\xa0\x4b\xd7\x5d\xa2\x25\xba\x40\xa3\x31\xc6\xb8\xb1\x70\xdd\x45\x8b\x0a\x3e\x90\x69\xc4\x85\x08\xbb\x2e\x9a\xd3\x85\xc6\x6a\x9a\x5a\xf0\x77\xd6\xad\x6c\x85\x33\xcc\x71\xd1\x91\x7b\xc1\x32\x47\x92\xcc\x89\x1e\x00\x4d\x43\x63\x6f\x96\x66\xa7\xe1\x64\x6e\x9d\x33\x05\x37\x1f\xf1\x71\xdd\x76\xa7\x54\xc2\xc0\x51\x74\xe4\x57\x5c\x8c\xcb\xb5\x05\x76\xd8\xb0\xf3\xd2\x32\x3f\x31\x1f\x84\xa8\x04\x87\xcc\xad\x56\x24\x24\xc4\x0f\xe6\xb1\x09\x5f\x4a\x7c\x38\x39\x57\x2b\xc4\x46\xd1\x98\x30\x92\x4a\x22\x97\x1d\x6b\x51\x1a\x2b\x1a\x97\x0b\x21\x06\x02\x9d\xd1\x89\x02\x33\xd0\xfc\xcd\x75\x1d\x19\xa7\xae\xd8\x0a\x66\x66\xd8\x67\xc4\xb9\xba\x0a\xef\xc2\x88\x3b\x78\x58\xc4\x62\x98\x79\x2a\xb5\x2e\xa4\x44\xa2\x38\x89\x38\xc0\x91\x1c\x97\xfc\x76\xe4\x6b\x35\xf4\xfa\x3d\x0e\xac\x92\xeb\x4a\x54\x4d\xa6\x8c\x84\x68\xb2\x55\xa0\x1e\xb6\xed\x72\x37\x39\x8a\xe5\x5a\xc2\x30\x68\x62\x24\x37\x85\xbb\x58\x02\x38\x3b\x52\x79\x41\x42\x1c\x84\x08\x6f\x8a\x29\xbc\xb1\x37\x5d\x66\x76\xc2\x11\x57\x8b\x76\x5c\xc2\x3b\xc9\xa4\xbd\xa0\xe1\xc2\x80\x5b\x41\x0a\x0e\xc0\x6d\x1e\x59\x94\xe6\xc9\xa6\xb8\x2e\xe2\x86\x17\x68\xa6\xc6\x81\x19\xa8\x33\xae\x6c\x4d\x5d\x81\x06\x0b\xad\xc1\xab\xec\x44\x96\x20\xe8\xc9\x32\x58\xbc\x9c\xb3\xa6\xae\xbe\x39\x4d\x99\x34\xe2\x5a\x66\xe9\x6d\x34\x65\xcd\xb0\xf9\x9f\xf0\xf1\x7f\x36\x65\x59\x8e\x19\xad\x78\x23\x37\xca\x15\xca\x48\xd1\x01\x59\x87\x4d\x78\x82\xe1\x4b\xc2\x33\x9a\xec\xfa\x66\x01\x3d\x56\x47\x2c\x6e\x48\x09\x20\x91\xbb\x43\xe1\x30\x02\x1c\x1a\xf1\x11\x13\xa4\xb2\x8a\xb9\x38\x19\x8d\xa9\x82\x33\x22\xdc\x13\x24\x47\x19\xfc\xf9\x98\x4e\xcc\xb2\x6e\x15\x23\x55\x1a\x64\x49\xa1\xf6\x10\xe3\xed\xb6\xe0\x20\x0a\xd0\xf3\x46\xd5\x8c\xa8\x6c\x9d\xb1\x8d\x4b\x9a\x6a\x71\xd5\x15\x5f\x10\xdb\x55\x21\x94\x0b\xce\xfe\x31\x9d\x04\x6c\xd4\x19\x6f\x1a\x3e\x58\x78\x40\xd3\x81\x8f\x7f\x4c\x27\x94\x81\x56\xbc\x5b\xbc\x51\x9a\x3d\xf9\xae\x3b\x16\x2d\x9c\x71\x96\xc9\xe7\xde\x58\xb9\xb7\xf1\xec\xfe\x54\xaa\x82\x0d\x94\xbc\xa9\xff\xce\x3a\x14\x78\x6a\x87\x8a\xd2\x64\xbd\x7e\xd8\x34\x38\xcc\x26\x35\x1b\x8c\x32\x80\x87\x61\x20\x76\x6e\xca\x8b\x02\x4f\x8d\x37\x5f\x51\x2d\x1d\xe9\xbe\x39\x59\x9a\x72\x67\x33\x26\xcc\x70\xdd\x2b\x89\x58\x65\xe2\x1c\x31\x8e\xc4\xf9\xca\x14\x78\xa1\x6e\xf2\x8a\x76\x8e\x22\x58\x82\xbc\xa0\x33\x05\xfd\xd0\xa8\xb7\xf9\x92\xc4\x61\xc0\x89\x01\x90\x28\xca\x3f\x87\x9f\x11\x33\xee\x4a\x4a\x18\xdc\xf3\x2d\xa0\x8c\x26\x57\x51\x04\x4f\xda\xed\xe4\x35\x33\x68\x27\xd1\x0c\x69\xb4\x09\x92\x14\x46\x63\x9a\x57\x8d\x12\x31\x11\x82\x6c\x21\x4c\x56\xa3\xf2\xde\x78\x4a\xc9\x1c\x1d\xc2\x37\x85\xa8\x0a\xc4\x9c\x6a\x80\x91\x07\xf1\x18\x9c\x5b\xbc\xe9\xdc\xec\x16\x3b\x00\xfc\x35\x73\xb7\xf6\xc5\xdb\x12\x7c\xec\x94\x4c\x4b\xcf\x33\x32\x1d\x85\x63\x3a\x03\x71\x2c\x0e\xc1\xa0\x91\x16\xa2\xac\x3e\x6d\x39\x62\xe9\xe7\x5b\xc9\x35\x26\xf2\x75\x13\x50\x01\xf1\xd5\x97\xb0\x2d\x0e\xd6\x78\x12\x44\x78\xbb\x4a\x4a\xa9\x60\xac\x45\xbb\xd6\x6b\x0e\x20\x1e\x18\x6f\x08\xf3\x16\x61\x56\x1b\xeb\x4a\xc9\x01\x65\x0c\xef\x61\x6d\x2a\x62\x64\x8a\x03\xc4\xbc\xab\x2b\x18\xaf\xab\x2b\x3a\x25\x21\xac\xaf\xf5\x1a\x31\x31\x30\x35\xed\x82\x68\x80\xbb\xe4\x8e\x5b\x4c\x98\x68\x5d\x08\x62\xd5\x76\xf3\x1e\xd4\x06\x1a\xb0\xcd\x86\xdc\xa3\x6b\xfb\x00\x63\x3d\x8c\xd2\x9d\x02\x15\x61\xde\x5b\xfb\xc0\x45\xaf\x45\x75\x22\x85\x96\xad\x0b\x08\x48\x1a\x05\xd2\x00\x60\x13\x6a\xf5\xbe\x8a\x2f\x23\xb8\xd9\x35\xca\xf5\x07\x58\xc8\x12\x7a\xa1\xd4\x4d\x38\xca\xf0\x30\x0c\x42\x20\x54\x54\xb7\x65\x9b\x8f\x81\x6f\x2b\x03\x48\xf3\x01\x18\x51\xdc\x8b\x41\xba\x2d\x0f\xae\x43\x6e\x1f\x91\x21\xc9\xad\x39\x50\x6e\x67\x31\xe1\x76\x4d\x61\x63\x47\x0c\xd2\x37\x76\x9f\xd7\xd0\xa7\x85\x67\x94\xc9\x08\x1b\x5c\x87\x78\x2b\x96\x6a\xc6\x6e\x59\x96\x33\x84\x0d\x76\x54\x33\xd3\xcc\x80\x17\xb0\x47\x0a\xd3\xda\x5b\xa6\x4b\x24\x61\x8d\x64\x89\x5a\x9f\xad\x96\x7c\x42\x32\xc3\x0f\xb2\x8d\x79\xa9\x19\x40\xb6\x11\xcd\x95\x57\x47\xf4\x82\x9c\x5a\xb4\xf5\x60\xad\x9a\xe0\x94\x00\x7b\xac\x9a\x38\xa8\x78\x71\xec\x56\xc7\xde\x03\x26\xa2\x7e\xc3\xf9\x4d\x45\xae\x13\x3f\xed\xa0\x77\x86\x45\xc1\x43\x69\x8b\x82\xa4\xca\x96\x29\x92\x2c\xc1\xa4\xba\xb5\x68\x7e\x7e\x87\x49\x8b\xe1\x92\x3d\x38\x30\x78\x87\x4b\xe9\xc5\x20\x5d\x1a\x59\x53\xde\xf9\x63\xd7\x55\x5c\xb9\xcd\x0b\x34\x34\xed\xdb\xc0\xc7\x7a\xb7\xde\x90\x9c\xa7\xcb\xa0\x74\x27\x64\x3a\xd3\x51\x7e\x17\x95\xc6\x8d\x3a\x63\x6b\xbb\x2a\xcb\x2c\x4c\xca\x2c\xf2\xa4\xca\x6c\xe9\x43\xee\x48\xb7\x61\xbc\x21\x5b\x67\xd5\xda\x49\x00\xe8\x30\x55\x90\xd2\xca\x88\xf4\x86\x25\xc2\xdb\x46\x3f\xa1\xda\x5f\xf5\x89\x0c\x46\xd7\x88\x34\x19\x49\x9e\x14\x5c\x5a\xad\xc4\x20\xc2\x46\xd5\x4e\x17\xf8\x56\xd1\x1b\xda\x39\xd9\xdb\x8b\x34\xb4\x73\x75\x74\xa2\x31\x09\x69\x5a\x1d\x21\xd8\xaa\x05\xdf\xf0\xe4\xe6\x8d\x0b\x79\x9b\x25\x53\x47\xa1\x42\xcb\x77\xaf\xa9\xa1\x42\x13\x2e\x4c\x4e\x6e\x4a\x1c\x2d\xbf\x38\x98\xac\xac\xe4\x42\x78\x91\x65\xe5\xae\xbb\x2a\x13\xf4\xeb\xd4\xc8\x3e\x45\xe5\x45\x1a\xd8\xcb\x54\xf2\x17\x85\xda\x5f\x58\xa9\x1b\xad\xc6\xc8\x5f\x5c\xd7\x46\x83\x8e\xb5\x56\xdb\xca\x1f\x9e\xdd\x37\x73\x1e\x72\xd0\xef\x37\xef\x22\x3e\x4f\x57\xbc\x09\x9f\x37\xd3\xac\xa9\x5a\xe0\xfc\x8e\x06\x6f\x36\x1b\x22\xf5\x1e\x15\xcb\xa3\x22\xc0\xf1\xce\x99\x4f\xe4\xcc\x17\xfa\xb5\xca\xcc\x27\x63\x89\x14\xba\x35\x8b\x66\x71\x46\xe5\x89\x52\x61\x31\xa1\xf1\x91\xdd\x4c\x45\x5a\x91\x84\x92\xdd\x6c\xc4\x6e\xe3\xc0\x6f\x58\x64\xeb\xb5\xa3\xd5\x27\xf0\x8c\x5d\xd7\xa2\x1d\xd7\xe5\xaf\xa9\xdd\x6b\xd8\xaa\x04\x27\xd2\xfb\x54\x3a\xb4\xe9\x33\x78\xd8\x34\xca\x8b\x88\xa9\xe5\xc3\x49\x3a\x44\xbb\xb8\x97\x94\xae\xac\x6a\x84\xa4\x0f\x6f\xb4\x6e\x06\x85\x78\x43\xf4\xc3\xb6\xe1\xf3\x33\xb8\x86\xd5\x67\x4f\xba\xb3\x96\x3b\x0e\x89\xc3\xa2\x39\xf0\x6d\x60\xa9\xbb\x54\x0e\x64\xb8\x0f\x35\x9c\x97\xc9\x93\x93\xdd\x3b\x73\x66\x34\x05\xca\xc5\x19\x58\x2a\x2f\xa6\x94\x50\x5c\x31\x53\x99\x8f\x63\x12\x6f\xc8\x2c\x4a\xa2\x7c\xbe\x03\x11\x62\x27\x59\x71\x49\x56\xe6\x94\x5c\x25\x2b\x0e\x64\x95\xd9\xe7\x13\xdb\x13\xa8\x34\xe2\x99\x35\xaf\x24\x33\x07\x18\x4c\xee\x50\x26\x9a\x58\x17\x59\xf5\x0f\x6c\xa2\xa4\x41\x68\x9e\xda\xce\xb3\x9d\x5b\x45\x62\xe9\x55\xf4\x49\x55\xb4\xd2\xc0\xd0\x6c\x36\x5b\x7c\x21\x8a\xc5\xbe\x1a\x2b\x4e\x10\x72\xce\x16\x4b\xb8\x2a\xd6\x1b\x2e\xa8\x19\x83\xaa\x6e\xda\x1e\x2a\xb3\x35\x3f\xe8\xc3\x66\x70\x01\x61\xaa\xcc\x79\x38\xe0\x44\x9d\x7f\x83\x6c\x43\x8c\x3e\xd7\xa2\x14\x3d\xf5\xf6\xee\x21\xc6\x96\x6d\xd0\x96\x16\x88\x0f\xcd\xad\x45\xf0\xb0\xd1\x31\x6e\x6e\xb4\x74\xf5\x75\x95\xf0\x68\xc1\x68\x56\x28\x18\x8d\x74\xe8\x64\xa0\x58\xab\xe6\x6d\xd2\x66\xe6\x60\x04\x41\x87\x1f\x36\x63\xf1\x0f\x81\xb3\xac\xb5\x8b\x37\xf6\x5f\xb5\x1a\xcd\x57\xcd\xff\x4a\x6f\x59\x76\x1b\xb1\xbb\x66\xf3\x74\x71\xcd\xb2\xe6\x5e\xf3\x2f\xe1\x6d\x78\x01\x76\x43\xcd\xb7\xcb\x65\x1c\x4d\xe0\x26\xb8\xf9\x21\x0b\x17\xec\x2e\xcd\xbe\xc1\x67\x93\x74\x79\x9f\x45\x37\x73\xde\x7c\x67\x7e\x75\x3b\xbe\xbf\xd7\xed\x74\x3b\xcd\xcb\x28\x9e\xb2\xe6\x59\x32\xf1\x9a\x61\x32\x6d\x8a\x25\x99\x45\xd7\x2b\x9e\x66\xb9\xf8\xda\xfa\xef\x4b\x9a\x89\xd2\xf3\x52\x31\x9d\x83\x3d\x51\x56\xf3\x82\x67\xe9\xb5\x2c\xe7\x59\x9f\x1d\xc9\xcf\x44\xab\x55\xed\x6f\xe3\xb8\x09\xaf\xf3\xa6\x90\xe6\xb2\x5b\x36\x85\xa2\xfe\x4b\x48\x3c\x49\xce\x9a\xcd\xe6\x47\xf9\x6b\xda\x5c\x25\x53\x96\x35\x3f\x9d\x5d\x36\xd5\xcb\x4a\x9d\x17\x8c\x35\xe7\x9c\x2f\xf3\x60\x7f\x3f\x0b\xef\xbc\x9b\x88\xcf\x57\xd7\x82\x7c\xf7\x99\x18\xba\x5f\x73\xf9\xd7\xfb\x35\xdf\x5f\x84\x39\x67\xd9\xfe\xc7\xb3\x77\xa7\x9f\x2f\x4e\xa1\xc6\x5b\x69\xda\xd1\x6c\x36\x7b\x5e\xb7\xe3\x0d\x1a\xcd\x57\xfb\x52\x7e\x12\x34\xd8\x58\x84\x51\xf2\x2e\x4d\x38\x30\x0b\x21\xa2\x59\x93\x05\x2b\x85\x44\x85\x64\x93\x16\xe0\xc0\x21\x65\x24\xa7\xc9\x28\x1c\x37\xf2\xf5\x1a\xc1\xcf\x36\x75\xf6\x01\xf8\xc8\x19\x63\x85\xa6\x1a\x89\x0c\xb6\x33\xc9\xca\x84\xaf\x6c\xc8\xb7\xf4\x61\x43\xf2\xf5\xba\xcc\x85\x55\x88\xf5\xa1\xb5\xc4\xde\xa5\xab\x78\x0a\x5a\x97\x59\x94\x4c\x9b\x8b\x74\xba\x8a\x59\xd3\x69\xb3\xb6\xd3\xcc\xd8\x3f\x57\x51\xc6\xa6\xcd\xeb\xfb\xa0\xe9\xb4\xb9\x04\xd5\x7e\xea\x43\x0c\x1a\xf8\xc2\x71\x25\xa6\x62\x15\x2e\x73\x32\x51\x40\xc0\xd7\xe1\xe4\x1b\x91\xe6\xae\x70\xd3\x8e\x62\x63\xdb\x38\xa5\x9d\x93\xe9\x6b\xfd\x7c\x32\x6d\xb7\xb1\xa3\x56\x93\x58\x93\xf1\x68\x3a\x1e\xce\x46\xd3\x31\x5d\x09\xae\x0f\xad\x2b\xa7\xf3\x00\xfe\xa4\x48\x24\xd9\x26\x6c\xf6\x6d\xe7\x0c\x93\xd5\xc6\x11\x04\x32\x8b\x12\xb8\x4e\x52\x8b\xf7\x2e\x4a\xa6\xe9\x9d\xeb\x5a\xef\x4c\xa4\xec\x65\x96\x4e\x58\x9e\xbb\xae\x39\x32\xa9\x94\xb1\x68\xc1\xc3\xc6\x1c\xb2\xe4\xd6\xaf\x5e\x62\x08\x99\x00\xdc\x03\x16\xa4\xf5\x13\x82\xac\x92\x42\x17\xea\xba\x28\xa3\xe5\x24\xef\xea\x2a\x4e\xc3\x29\xcb\x86\x28\xa9\x1c\x95\x61\x7f\x27\x51\x6d\x6a\xfd\x6d\x5d\x44\xc5\xc6\x3f\x44\x11\xcc\x06\xe5\x24\x32\xb3\x41\x33\x1c\xe8\xf4\xd1\xd8\x7e\xc1\x31\x49\x46\x6c\x4c\xa3\x72\xc0\x73\x66\x59\x9b\x31\x00\x28\xc7\x1b\xec\x29\x08\x7c\xca\x09\x5c\x9e\xd6\x65\xff\x21\x4d\x63\x16\x26\x28\x91\x1e\x93\xd6\x63\xbb\x20\xf2\x0d\xe1\xde\x15\x0b\xbf\x5d\xe5\x8c\x25\x70\x00\xd4\xe3\x40\x55\xf8\x4d\x88\xbc\x0f\xd3\x1f\x70\xa2\xf1\x36\x82\x64\x83\x03\xc4\xac\x61\x53\xa1\x3e\x09\xb7\xd3\xd4\x87\x78\x83\x30\x61\xc8\xf9\x2f\x58\xe5\xfb\x7b\x51\xc2\x59\x96\x84\x71\xbe\x7f\x9d\xa5\x77\x39\xcb\xf6\x58\x72\x1b\x65\x69\x22\x64\x52\xd5\x34\x32\x32\xd4\x58\xb1\x05\x2f\xdd\x29\xab\x39\xa9\xc4\x19\x65\xc4\xb9\xba\x62\xf9\x27\x58\x28\x06\x47\xa3\xd5\xd9\x60\xc2\xc4\x70\xbd\x3f\xff\x44\x99\x17\xe5\x1f\xa2\x8c\xcd\xd2\xef\xf0\xfb\xdd\x3c\x4b\x17\x8c\x32\x6f\x95\xb3\xec\xed\x8d\x38\x84\x32\x6f\x1e\xe5\x3c\xcd\xee\x29\xf3\xe2\x54\x72\x73\xca\x3c\x49\xba\x6a\x7b\x52\xe7\xa7\xad\xcd\x29\x67\xf1\xcc\x75\x55\x44\x18\xf9\x20\xfe\xf5\x64\x83\x29\xa5\xc6\x53\xa1\x66\x01\xfc\x4d\x2d\x0e\xf8\xa2\x1c\x55\x4a\xbf\xda\xaa\x70\x9a\x4e\xc0\x54\xc1\x54\x5a\x24\x40\x31\xfa\x91\xda\x6f\xb6\x4a\xd1\xdd\x34\xa5\x14\x09\x50\x8a\x19\x06\xfb\xcd\x56\x29\x6a\xd8\x4c\x21\xe6\x19\xca\xd0\x83\x6a\xa5\x6f\x95\x90\x84\xb7\xd1\x8d\xd8\x99\x4d\x19\x56\x0a\x94\x62\x9e\x69\xe9\x9d\x23\x5d\x7d\x6b\x4a\x2a\x26\xb6\x61\x88\x80\x2b\xd4\x5b\x3e\x14\x65\x06\xa2\xaa\x86\x99\xe0\xac\xa1\x4e\x2d\xc3\x52\xd7\x75\x2e\x33\x14\x89\xba\x12\x50\xf9\x54\xa7\x74\x36\xdd\xdb\x48\x7b\x1b\x0c\xcb\xcd\x2f\x9a\x15\x38\x1f\xef\x93\xef\x4d\x24\x76\xb2\x45\x3a\x65\xd8\x69\xd8\xd4\x98\xaa\x23\x86\x54\x47\xea\xe5\x9c\x79\x13\x20\x5c\xc0\xf0\xf0\x04\xfd\x87\xb8\x61\xd1\x73\xa8\x22\x29\xc0\x57\x75\xb4\x06\x38\x03\x71\x7c\x99\x45\x37\x37\x2c\x6b\xd8\xcb\x22\x07\x68\x93\xba\x75\x2b\x68\x32\x8d\xd9\xf6\x5a\x25\x3a\xf3\x94\x5d\xaf\x6e\xec\xc7\x65\xc6\x26\x21\x67\xd3\xbd\x19\x0b\xf9\x2a\x63\x95\x75\x2d\x99\xe7\xbf\xba\xb6\x35\x5b\xb4\xd6\x66\xd2\xc8\xbc\x8f\xe7\x3f\xfe\x78\xfa\x15\xae\xb7\x1f\xe2\xf4\x26\xa8\x48\x08\xfa\xae\x11\x31\xaa\x3a\x86\xbd\x38\xbd\x31\x61\x9b\x8d\x15\x10\xde\x90\xbb\x30\x4b\x9e\xf3\xbd\xc8\x57\x5b\x00\x13\x7b\xfa\x73\x4a\x80\x8c\xb5\x45\x44\xc9\x2c\x7d\x4e\x09\x22\x5f\x6d\x01\x30\x39\x5b\x25\x14\x77\x00\xaa\x04\x0f\xf2\x0d\x11\x2f\x8a\x84\x14\xbd\xc1\x5b\x65\x06\xcf\xaa\x37\xcc\x73\x96\xf1\xe7\x34\x5d\xe6\xac\x2b\x44\x41\x15\x44\x34\x69\x14\xf3\x1d\x3d\x46\xa9\x3c\x8c\x12\x96\x3d\x42\xab\x56\xf6\xf4\x2e\x61\x59\xed\x9b\x15\x8f\xe2\xdd\xf4\xbd\x4c\xe3\xfb\x59\x14\xc7\x35\x54\x0d\xfa\xea\x7f\x99\xb2\x97\x59\x74\x1b\xf2\xe8\x37\x56\xa3\x2a\x66\xa3\xce\x98\x24\xf4\x4a\x1d\x16\x13\xa3\xa1\xd1\x8c\x49\xe3\x7b\x04\x00\x97\x17\x89\xec\x21\x8d\x46\xbe\x89\x54\x20\x3e\xa5\xa8\x43\x32\x4f\x76\x18\xa3\xb4\xed\x04\x4e\x3b\x6c\x3b\x7b\x4e\xfb\x0e\xee\x31\x6e\x18\xff\x10\x8a\x5d\xe8\xfe\x43\x9a\xd5\x09\x1c\x6c\xb4\x1c\x8b\x8c\x79\x29\xe3\x82\x30\xef\xec\xf3\xd9\xe5\xd5\x87\xb7\xef\x2e\xcf\xbf\xfe\x42\x99\xf7\x4e\xcf\x09\x65\xde\x57\x25\x51\xd8\x4b\x36\xb5\x95\xe7\x46\x74\x67\xea\xbe\xdb\xb8\x5e\xc3\xa5\x8c\x90\xe2\xd4\x95\x9c\x2a\x48\x46\x4b\xf0\x60\x26\x29\x97\x7f\xd7\xeb\x42\x5d\x3c\x09\x27\x73\x26\x3b\x3b\x8d\xa0\xe8\x30\xbb\xc7\x70\x7f\x39\x99\x33\x99\x53\x95\x39\x93\xdd\xf8\x14\x26\xe1\x0d\xcb\xde\xed\xfa\xb0\x26\x5b\xa9\x98\x28\x7f\xcf\x72\x9e\xa5\xf7\x6c\x6a\xf4\xd8\x26\x2d\x4a\x6e\x68\xcb\x57\x77\xd7\xd6\x7d\x8d\x81\xc2\xf1\xe2\x34\xfd\xb6\x5a\x6e\xc3\x46\x54\xcb\xde\x56\xf6\xbd\x0b\x13\x38\x36\x08\x19\xb3\xf9\x7f\xaa\xa0\xff\x6b\x82\xee\xa2\xc9\xe7\xac\x09\x83\xd3\x9c\x87\x79\xf3\x9a\xb1\xa4\x39\xd5\x45\x39\x85\xd7\xb9\x52\x7b\xdb\x43\xec\x49\x9d\x4d\xf4\x1b\xd3\x58\x25\x89\xa7\x3e\xa5\x55\x7d\x77\xb9\x9f\x1d\x32\x55\xe0\xf5\x24\x91\x5a\x97\xe8\x37\xf6\x7e\xfb\xd3\x39\xb2\x2e\x5b\x4b\xc3\xd7\x11\x5f\xc2\xfd\xc2\x76\xc8\x72\x2b\xe3\x7a\x6d\x85\x7a\x19\x22\x55\x2b\x51\xe5\xe2\x9a\x20\xec\x82\x18\x81\x02\xc4\x2a\xd2\x81\xd6\xeb\xa6\x76\xc4\xc7\x44\x9c\x20\x4c\x9e\x89\x49\xd5\xa3\xe0\xba\xe6\x27\xc2\x78\xf3\xd4\x10\x62\x18\x0e\x98\x8b\xb3\xe4\x57\x56\xb9\xb1\xd4\x70\x28\x46\x97\x88\x3a\x04\x2e\x08\xcf\xc5\x07\x18\xd9\xf4\x0e\x97\x7a\x89\x6e\x75\x79\x9d\x96\x40\x11\xb6\xd7\xcf\x4b\x08\xa9\x28\xff\x99\xc4\x64\xe9\xb6\x6a\x47\x40\x06\xdf\x51\x31\x15\x5c\xb7\x25\xef\x4f\xf3\x65\x38\x61\xc5\xa9\xce\x7c\xc9\xbe\x2f\xc3\x64\xfa\x31\x9d\x84\xf1\x47\x20\x69\xe8\x5c\x61\x68\xa2\xbc\x85\x08\xc3\xa0\x38\xb2\x2c\xac\x42\xdb\x17\xb6\xe5\xb7\x28\x65\x45\xb1\x37\x8c\x9f\x2f\xd5\xb5\xa4\x93\x47\xc9\x4d\xcc\x78\x9a\x38\xd6\x1d\x7f\xfe\xec\xcf\xa5\x45\x28\x8f\x42\xce\xec\x02\x8c\x75\xdc\xf6\x59\x54\x0b\x9b\x30\x14\x59\x31\x14\x59\x69\x28\x12\xbb\xc6\xed\x71\x10\x65\xeb\xa8\xc5\x2d\x71\xaa\x35\xdd\xd0\x07\x53\x4d\xae\x49\x59\xa9\x11\x99\xf8\x5b\x9b\xaa\x5d\x69\xc5\xf4\x35\xb6\xec\x15\x8b\xd8\x69\xea\x73\x88\xbb\x56\x6b\xbe\x2a\x76\x16\x33\x24\x0d\x6b\x04\xad\x36\xba\x2e\xa4\x24\xae\x2b\xe7\xc9\x75\xe5\x80\x4b\x3b\xc3\x04\x6b\xe5\x7d\xb1\xe4\x68\xa4\x8f\xe3\xa5\xeb\xe0\x82\xe5\xb8\x6e\xcd\x3d\x7f\x5a\xac\xd3\xb4\x58\xa7\x24\xdd\x3c\xaf\xf5\x24\xb2\x1b\x6d\xf7\x25\x71\x5d\x39\xf0\xd1\x7a\x2d\xbb\xb0\xdd\x07\x3d\xce\x45\xc3\xff\xd5\x31\xb3\xc6\xab\x55\xae\xac\xac\x94\x7a\x51\x77\x64\x3f\x92\xf5\x5a\xf6\x47\x57\x01\xc0\x2e\xa2\x5f\x35\xfd\x89\xc3\x3c\x6f\x6c\xb3\x0e\xa3\xbc\x92\x1d\x6e\x2a\xe6\xe1\x40\x11\x89\x0c\x7d\x54\xac\x90\xb8\xdc\xd2\x5d\x1c\xb8\x44\xbc\x5b\x02\x8f\xb5\x46\xb4\xdd\x1e\xc7\x15\x7a\x7f\xd0\xb2\x86\x68\xeb\x2d\x44\xc8\xcb\x0a\xfc\xc1\x9d\xac\x9f\xa6\x24\xb5\x9a\x3b\xd1\xcd\x2d\x2e\xb9\xc4\xe0\x2a\x26\x9e\x93\x88\x76\x4e\xa2\xd7\xe6\x2a\x3e\xd2\xde\x20\x29\xe5\xa3\x68\x4c\x72\x9a\x1a\x90\x53\x12\xd3\xd4\x03\xec\xb6\x59\xc4\x32\x32\x11\x4f\xc0\x04\x1a\xc9\x28\x1f\xd3\xc9\x50\x30\x8f\x98\xe8\x08\x36\x93\x0d\x0e\x20\x05\x0b\xa9\x2d\x7f\x7f\x9f\x84\x8b\x68\x22\xb8\x65\xf1\x44\x5b\x21\xe4\xb0\x07\x78\x66\x87\x47\x2b\x06\x4a\x52\x81\x11\x13\x47\x9d\xf1\x96\x81\x39\xb3\xd9\xc0\xc3\xe6\xa4\xb2\x0f\x45\x84\xa9\x4d\x48\x0d\xec\x43\x31\x0e\x41\x44\x4c\xa3\x82\x96\xbf\xd9\x8a\x90\x95\xb9\xee\x04\x2a\x48\xb5\x52\x4e\x2e\xa7\x09\xd0\x48\x2a\x16\xa7\xf8\x25\x98\xec\xe5\xfd\x92\x99\x6d\x32\x47\x11\x96\xc9\x56\x52\x66\x5b\xba\x4e\x2b\x3e\x62\x92\x77\x90\x4c\xab\xf3\xbe\xb1\xfb\x1c\x71\x4c\x12\x80\xe3\xd1\x88\xec\x27\x89\x9e\xa9\x88\xf2\x51\x36\x4a\xc6\xe3\x46\x54\xb0\x8d\xa8\x60\x1b\xd6\xd0\xce\xc1\x87\x6d\x97\x80\xa9\x14\x86\xcf\x13\x2a\xa5\x9e\xcf\x16\x95\x53\x65\xa0\x0c\x59\x25\xa0\x1d\x46\x8e\x2d\x59\x3b\xb8\x12\x1f\x14\x3f\x08\x91\x9c\xf2\x4d\x45\x02\x5f\x2a\x0b\xe5\x9d\x52\xb6\x9c\x68\x75\xff\x65\x64\x75\x5b\xae\x56\x53\xad\x24\x6a\xb1\xf2\x29\x57\x32\xf3\x2a\x8e\xc1\x38\x4b\xbd\x34\xdb\xfc\x14\x52\x13\x75\x2f\x18\x4e\xd9\xa5\x36\x95\xb1\x2d\x35\x0a\x9a\xd1\xc9\x8b\x42\x7c\xc2\x1b\x3d\x89\x5b\x62\x32\x7f\xc4\xf2\xc6\x42\xd9\xab\xd6\xad\xef\x9b\x4a\xed\x29\x77\xbc\xe0\x25\x8b\xf0\x9b\xc9\x84\x8a\x9e\x97\xfb\x8d\xf1\x76\x0f\x37\x44\xab\x8d\x69\x9d\x3d\x46\x51\xd5\xf3\x84\x30\xc9\x47\xc5\x1b\xed\x78\x92\x3f\x43\x0c\x6b\xa2\xfb\x74\xa5\x6f\xf6\xd8\xb4\xc9\x53\x5d\x92\xd3\x2e\xf5\xa0\xed\x60\x07\x5b\x76\x21\xd6\x9c\x94\x36\xfd\xc2\xe3\xa7\xd2\x8d\xba\x89\x17\x0b\xac\xc4\x19\x53\x6a\x31\xaa\xc6\x02\x25\xda\xbe\x92\x26\x24\xd5\x50\x1d\x16\x35\x24\x78\x53\x65\x1a\x60\x5c\x2a\x16\x44\xe4\x85\x79\x1e\xdd\x24\x18\x3d\x6c\x08\x27\x66\x0e\x60\x7a\xf4\x46\xcb\x95\x34\x48\xee\xe9\xfe\xff\x8e\xfe\x37\x18\xb7\x03\xf8\xf7\x4f\xfb\xe4\x7a\xd7\x52\xb0\x04\x35\x51\x19\x2b\xc4\xe5\x99\x56\xdb\x33\xf3\xd3\x3e\x64\xaa\x6d\x27\x03\x0e\x2b\x7f\x96\x5f\x03\x49\x85\xb2\x6b\x5b\xab\x9f\x95\x33\x94\x0e\x93\x57\xbc\xc4\xff\x76\xf1\x19\x6d\xd3\xff\xbc\x7c\x71\x21\x43\x4a\x86\x54\x77\xd7\x21\xb3\x9a\x69\x7d\x8c\x73\xa9\xbc\xaa\xeb\xcf\xc8\x39\x0b\xa3\xf8\x82\x71\xd8\x8c\x2f\x98\x62\x25\x57\xe9\xf2\x19\x6d\x07\x13\xc9\x47\x33\x3e\xc6\x35\x0a\xfe\x56\x67\xb2\xcf\xee\x9a\xa9\x89\xfc\x44\xb8\x9a\x16\x96\x6d\xdf\xfa\xec\x94\xe7\x4b\x4b\x41\x1c\x75\x4a\x1d\xf6\xe4\x29\x12\x25\xb8\x86\x30\x46\xc9\x98\x56\x86\x42\x24\x65\xa2\x25\xab\xa4\xa6\x2d\x5a\x21\xb4\xab\xd2\x67\x4d\xb3\x36\x9f\xde\x6e\x0e\x1f\x97\x5e\x96\xa6\x77\xeb\xa5\x6e\x30\x1f\x93\xda\x1e\x73\x35\xa0\x50\x44\x15\x1e\x5b\xa1\x44\xdd\x58\x27\xe7\x8a\xce\xa1\x61\x46\xbc\xb8\xab\x28\x2d\x4c\xd0\xf6\xea\xa3\xa3\x4e\xc4\xba\x42\xa5\x59\xcc\x2c\xcd\xa2\x11\xfd\x92\x0d\x98\xc2\xe7\x93\x2c\xba\x66\xb5\x64\x61\x55\xa7\x57\xb7\x32\x38\xd2\x8f\x4a\xd7\xa2\x71\x44\xa2\x34\x19\x3e\xf1\x1e\x31\x1c\xd4\xf5\x63\x58\x7a\x32\xed\x12\xd9\x99\x68\xa8\x19\x97\x0f\x7a\xe3\xfd\x9d\x2d\x36\x05\x0d\x77\xa4\x3f\xb3\x85\x5b\x0d\xda\x6e\xea\x6e\x87\xa5\x32\x77\x19\xb1\xb1\x01\x6d\xda\x7a\x53\xa1\x72\xab\x36\xa0\x2c\x7b\xb3\xae\x90\xd7\x0b\x06\xc5\x2e\x65\xb8\xfb\x15\x94\xfb\x9c\xc1\xd9\xfe\x88\x19\xc1\x05\x41\xbb\xcb\xb7\xb9\x4a\x69\xd3\x52\x2a\x9a\x9f\xc3\x38\x9a\xda\x3d\xd5\x87\x42\xad\x61\x71\xdd\x42\x8b\x52\x59\x36\xfa\x85\xd8\x89\x21\x9f\xa5\x57\x50\xca\xd7\x9d\x47\xff\xad\x9d\xb7\x38\x57\x99\x03\x49\x46\x4c\x81\x41\xb2\x29\x69\xbd\x4a\x6b\x17\xa0\xe3\x08\xf7\x14\x83\xf8\x90\x66\x42\xa2\xa7\x55\xf3\x89\x0a\x6b\x87\x09\x17\x9f\x19\x35\x4b\xcd\x97\x25\xfe\x57\xf9\xba\xb1\x25\x0b\xee\xe4\x1b\xbc\x9c\xb2\x5d\x25\x40\xbb\x73\xab\x13\x75\xfc\x6b\x27\x17\xd6\x9c\x31\xdb\xea\xd1\x73\x58\xb9\x09\x29\x55\x30\xd8\xad\xae\x65\x3b\xbb\x96\xed\xec\x1a\xf4\x29\x2b\xb5\x67\x77\xaf\x4c\xe5\xac\x7c\x12\xcf\x34\xd0\xaa\xf8\x3d\xe2\x63\x63\x61\x2e\x5a\xa9\x8f\x9c\x75\xa7\x4c\x94\xd5\x4c\x5a\x32\xc6\x95\xf2\x86\xe2\x9f\xe7\xac\xb3\x42\x19\x07\x8b\x4c\xe1\xe2\x11\xe9\x2a\x54\xa3\x64\xd5\xe6\x6c\xe5\xc6\x9d\xa0\x3a\x91\xcb\xe6\x4a\x5b\x6f\xe8\x68\x8c\xb1\x34\xd4\x7f\xd0\x27\xfb\x80\x13\x73\xae\x0f\x00\x00\x81\x17\x92\xed\x0e\x77\xef\xca\xbc\x4b\x7d\xdb\x9e\x0f\x66\x92\x3a\x34\x9b\x68\x65\xc9\x58\xb1\xd4\x1a\x15\x7c\xa2\x61\x59\xd4\xda\x74\xa4\xfb\x56\x88\x88\xa3\xa8\xe8\x57\x29\xf5\xc9\x3e\x25\xb2\x4f\xdf\x92\xf4\x2e\xa9\x5b\x95\x56\x94\x04\x92\xee\x92\xe6\xc2\xf2\x89\x7c\x4b\xfc\xc0\x10\xca\x2b\x7f\xad\x23\x30\x9d\xe4\xfa\x88\xbe\xa2\xe1\x28\x1f\x37\x56\xe5\xc9\x53\x32\x7b\x3a\x5a\x41\x5c\x8e\x4d\x0d\xd7\x7f\x64\xcd\xdb\x7d\x81\xa5\xf1\x9c\xdd\xc2\xfe\x08\xe4\x8f\xdd\xaf\xa1\xcc\xed\xa3\x4b\xaa\x98\x63\x85\xd5\xd7\x6d\x98\xf7\x12\xef\x42\x0a\xa6\x25\x05\xc8\x4e\x8e\x18\xd9\x94\xaa\xc3\x5b\x57\x07\xa3\xb4\xd0\xed\x05\x65\x69\x58\x98\x96\xbf\xe4\x9a\x47\x9c\x96\x11\x91\x75\x98\xe4\xac\x70\x66\xd5\xac\xae\xac\xbe\x79\x94\x79\x9f\xfd\x4b\xcd\xad\xe8\x89\x7e\x6f\x93\xb7\x94\xec\xbf\x5f\x98\xd8\x2a\x6a\xb8\x4b\xc9\xce\xb6\x65\x75\xb8\xb8\xe5\xe3\x86\x38\x1b\xcb\x9f\x75\xd2\xbb\xf1\x97\x5a\xaf\x33\x92\xd3\xb4\x6a\xbc\x98\x9b\x90\xf1\xca\xbc\x91\x3d\xd2\x3c\x05\xfe\x6a\xdc\xfe\x46\xe1\x98\xae\x76\xee\xeb\x3b\xc5\x0d\x4b\xd2\x78\x96\x8c\x54\x7f\xbd\x03\x5f\x56\xef\x73\x6e\x2a\x4c\xb3\xec\xf2\xbc\x5e\x3f\x7e\x91\xb2\xf3\xfe\x04\x26\x81\xa4\x62\x1a\x4a\x67\x9c\xca\xa5\x49\xaa\x07\x33\x85\x4b\x1b\x56\x9c\x71\xe6\x61\x8e\x0a\xdd\x38\xb3\x28\x02\x45\xf6\x90\x6b\x29\x2a\xc1\x96\x2d\x62\x64\x72\x95\xcf\x82\x76\x96\xa1\x55\x59\x38\x9d\xa2\x44\x08\x92\xd5\xc6\xd2\x88\x44\x9b\x8d\x75\xc7\x7e\x0d\x93\x7e\xb5\x8b\x03\xdf\x51\xe4\x38\x6d\x88\xa5\x97\x85\xc9\x34\x5d\x20\xdc\x7e\x1f\x72\xe6\x25\xe9\x1d\xc2\xe2\xec\x04\x71\x46\x90\xe3\xc9\x28\x6c\xbb\x6c\x2e\x1e\xb5\xe6\x7b\x89\x49\x50\xc5\x6c\xc2\xf2\x71\xb3\xac\x0e\x5c\x97\x55\xad\xea\x86\xda\xe1\x74\xf3\x3b\x2c\x2d\x6e\x18\xaf\x2e\xf4\xc2\x04\x53\x9d\xdb\x94\x99\xc3\x16\x43\xc0\x0f\x3a\x07\x65\xca\x66\xe2\xf4\xf3\xcf\x35\x05\x85\xe2\xad\x78\x05\x0e\xa7\x5c\x7a\x58\xdc\xc4\xe9\x75\x18\x97\x8c\x97\x48\x44\x33\x84\x92\x6d\xfb\x42\x99\xd7\x75\xe5\x5f\x6c\x01\xdc\x27\x5e\x92\x4e\x01\xa5\x6b\x98\x68\x20\xcf\xf5\x3a\xdb\xb6\x9f\x2f\xac\x12\xeb\xdf\x6b\x13\x5d\xf9\x17\xaf\xd7\x75\xe6\x63\x96\xf5\xb5\xeb\x5a\x0f\xeb\x75\xc2\xee\x9a\x96\xc1\x7d\x21\xa6\x38\x18\xe1\x86\xe9\x6d\x54\x35\xf9\xd8\x11\x1e\xe5\x21\x5a\x48\x53\x7f\x46\xb4\xd1\x3f\x23\x72\xac\x03\xb6\x09\xcc\x6b\xee\xa9\x5f\xeb\x75\x91\xd3\x38\x0a\x88\x44\xf5\x11\x57\x33\xb5\x5e\xb3\xcd\x06\x45\x24\x92\xb6\xc2\xa2\x69\x7a\x4a\xb4\xc9\xdd\xc3\xe9\xe7\xb7\x3f\x7c\x3c\xbd\x3a\xff\x72\x79\x76\xfe\xf9\xed\xc7\xab\x0f\xa7\x6f\x2f\x7f\xfa\x7a\x7a\x11\xb4\x7c\x72\xfa\xf7\xcb\xd3\xcf\xef\xaf\xbe\x7c\x3d\xbf\x3c\xbf\xfc\xe5\xcb\xe9\x45\xf0\xa0\x50\xcd\x3a\x44\xf7\x5f\xfc\x96\x87\x3c\x41\x65\xe4\xe3\xf9\x8f\x57\x17\x97\x6f\xdf\xfd\xf5\xf2\xeb\xdb\x77\xa7\x57\xe7\x9f\xaf\xde\x9f\x7e\xf9\x7a\xfa\xee\xad\x28\x5e\xe4\x15\x19\x7e\x3e\xfd\x7a\xa1\x1e\xbf\xbe\x3d\xbb\xd8\xce\xe6\x93\x8b\xcb\xaf\x3f\xbd\x13\x0d\x81\xea\x3f\x9c\x7d\x3c\x15\xa9\x57\x6f\xbf\x7c\xf9\x78\x26\x73\x5d\x5d\x9e\x7e\xfa\xf2\xf1\xed\xe5\xe9\xd5\xdf\xbe\xbe\xfd\xf2\xe5\xf4\xab\x28\xae\x48\x3c\xff\xfc\xf1\x97\xab\x1f\x3f\x9e\x7d\xfa\x74\xfa\xf5\xea\xdd\xf9\xa7\x2f\xe7\x9f\x4f\x3f\x5f\x42\xb7\xae\xde\x9f\xfe\xf0\xd3\x8f\x57\x5f\x4f\x3f\xbf\x3f\xfd\x7a\x75\xf9\xf5\x54\x96\xfd\x97\xff\xfe\xe9\xf4\xeb\x2f\x57\x67\x9f\x2f\x4f\x7f\xfc\x6a\xda\x7b\xf5\xfe\xf4\xc3\xdb\x9f\x3e\x5e\x5e\xbd\xbd\xf8\xe5\xf3\xbb\xab\xf3\x1f\x2e\x4e\xbf\x8a\xf6\xc3\x27\x5f\x4f\x55\x21\x1f\xcf\xcf\xbf\x5c\x7d\x3c\xfb\x74\x76\x19\xf8\xac\x47\x4e\x3f\xfd\x00\x89\x6f\xdf\x5f\xfd\xf9\xfc\xfc\xaf\x17\xc1\xc3\x86\x98\x81\x7d\xd8\x6c\x1a\x72\x85\x84\xa4\xa2\x33\xdf\x22\x54\x66\x8e\x3b\x96\xac\xa9\x9c\x66\xa3\x19\xaa\x22\x4e\x55\xd0\xa6\xb4\x8b\x7c\x86\x5d\xd7\xd9\x9a\x4c\x47\x8a\x0b\x4e\xb5\xb1\x90\x6e\x70\xc4\x46\xd9\xb8\x01\x58\xdd\xc9\x50\xfc\xa6\xd2\x36\x60\x94\x8d\x83\x96\x2f\x55\x54\x48\xa6\x83\x26\x79\x94\x8d\xa5\x4e\x52\x70\xf9\xad\x1a\x2b\xf7\x94\x75\x1d\x8e\x4c\x87\x23\x1c\x6e\x97\xe0\x29\xad\x87\xbc\xba\x55\x4f\x84\x7b\x1f\x7e\xfa\xfc\x0e\x88\xc2\x64\xbd\x82\x6f\x05\x99\x5d\x88\x26\xd6\x14\x65\x3c\xe8\x55\x61\xfa\x19\x93\xba\xdc\x40\xf8\x3a\x2b\x3c\x00\x1c\x93\xba\xf2\x94\xe9\x8d\x47\x5a\x9c\xfe\xab\xad\x4c\x1f\x6b\x57\xba\x91\xb6\xb0\xcc\xab\xce\x66\xa3\x6e\x94\xf3\xc2\x7e\xdb\xf8\x09\xaf\x04\x55\xe5\xcf\xa6\xaa\x9c\xac\xb0\x86\xc1\xc9\x47\xab\x71\x03\x1a\xe2\x45\xb9\xf2\xc6\xc0\xb2\x3f\x95\xd6\x88\x13\x4b\xec\xcd\xa2\x98\xb3\xac\xce\x6b\xbd\x0e\xba\x00\x40\xc8\x25\x90\x0e\xf3\xf4\x2a\xaa\xed\xd6\xc4\x74\x6b\x62\xba\x35\x13\xdd\x9a\xe0\x67\xf5\x69\x42\x66\xb2\xd9\xba\x96\xd1\x4c\x11\xf6\x64\x34\x1b\xe3\x46\x47\x70\x53\xc9\x4b\x4f\x3f\xff\xfc\x88\x94\x90\x65\x69\xb6\x37\x0f\x93\x69\x1c\x25\x37\x2f\x33\xfb\x87\x93\xc2\xef\x31\xa3\xbc\x61\xfc\x3c\x81\x9a\xeb\x7c\xf8\xd5\xb6\xbe\x95\x83\xe1\x07\x6e\x36\xf4\xf7\xca\xc7\xfa\xfc\x96\x65\x59\x34\x65\x35\x05\x65\xaa\xa0\xdd\x59\xc5\x5c\xca\x12\xd3\x04\xae\xf7\x2e\xc3\xec\x86\x95\x0c\x97\x33\x92\x40\xa8\x80\x66\x2a\x9b\x63\xb7\x53\xf0\xc6\xf2\x87\xc9\xee\x71\x96\xf1\x0d\xd2\x64\x2f\x5f\x2d\xc5\xd0\x3e\xcf\x12\x76\xfb\xb3\x38\xba\xde\x9f\x86\x3c\xbc\x0a\xa7\xe1\x92\xef\x30\x93\xad\xff\xcc\xdc\xb2\x5c\x81\xdd\xac\x29\xe1\x0f\x37\x01\xdf\xf9\xc1\xfb\x90\x87\x6f\x75\xbb\xed\xe8\x9e\xad\x0e\xa9\x0f\xc4\xca\xb5\x75\xf1\xe6\xb1\x72\xcd\x05\xfd\x7b\xd1\xb1\x97\xd5\x90\x59\x35\xbc\x60\xfa\x1e\x1b\xd0\xba\x49\x55\x1e\x11\x75\xb3\x95\x49\xbf\xc7\xff\x57\xa6\xf8\x34\x53\x92\xba\x07\xbd\x9a\xa2\x07\x7d\x12\x82\xd3\x1d\x99\x84\xc9\xbb\x90\x87\x71\x7a\xa3\xdc\x5f\x7f\xb8\x17\x72\x6c\x0d\x06\xb3\xb3\x48\xa7\x2c\x76\xe4\x25\xb0\xc3\xd9\x62\x19\x87\x9c\xc1\x33\x38\xe2\x3e\x5e\x86\x6c\x0c\x9c\x82\xde\x62\x94\x79\x9f\xf5\xc1\xd0\xfb\xfc\xf6\xd3\xe9\xc5\x97\xb7\xef\x4e\x2f\x30\x89\x4c\x0e\x4c\xa4\x99\xd0\x57\x76\x73\xfa\x7d\x89\xc0\xf0\x05\xee\x96\xa3\xd9\x3d\x46\x0c\xb7\x9d\x3f\x15\x16\xb3\x49\x0d\x50\x9b\x25\x97\x24\x2f\x95\x4b\x12\xe9\x83\x2e\xb1\x4d\x8d\xeb\xa2\x38\x8b\x3a\xd0\x06\xc0\x9f\x11\x0d\x95\x58\x31\x18\x85\xd8\x75\x55\xe4\x52\x68\xe9\x34\xcc\xe7\x2c\x8b\x7e\x63\x18\x25\xe6\x0c\x97\x8a\x13\x1c\x44\xe3\xc3\xe2\x90\x88\x2d\x63\xfa\x97\xb0\x92\x6d\x9e\xf0\x22\xfb\xfa\x6c\x95\xc4\x69\xba\xac\xcd\xba\x60\x3c\x8c\xff\x35\x2a\xd6\xd8\x32\xff\x06\x5a\x0e\x69\x5a\xa5\xe5\x28\x89\xf8\x16\xde\xc7\x55\xbe\x5a\xb2\xcc\x76\x89\x2c\x6e\x1c\xf5\x95\x6f\xcc\xc2\x9c\x7d\x02\xff\x67\xb8\xc2\x4e\x81\xe6\x36\x64\x52\xc7\x5b\x34\x94\x52\xc8\xa5\x67\x30\xfb\x18\x2d\x22\x1e\xf4\x48\x38\x99\xb0\x25\x17\x3d\x60\xa0\x33\x14\x7c\xa7\x5c\x76\x60\xca\x16\x0c\xe9\x03\xc8\x17\xf9\x36\x5f\xb2\x5a\x70\x27\x76\x2f\x28\x51\xac\xa1\xbc\xd6\x6c\x1a\x3a\xa5\x54\x9d\x37\x8c\x17\xb9\x91\x5a\x42\xb2\xb0\x06\x43\x89\xb7\x08\x97\x68\x2b\xb0\x4b\x42\x99\xf7\x0d\x0c\x69\x52\x9a\x01\xcc\xa3\x29\x03\x25\x84\x49\x28\x25\x03\xb5\xa6\x40\x70\xbc\xf4\x1a\xbc\x92\x8b\xac\x32\x23\x44\x49\x4c\x85\x34\xa4\xa6\xc9\x32\xe7\xc0\x0f\x51\xfd\xda\xd4\xaa\x04\x00\xfe\x21\x59\x65\x4a\xbc\x8c\x2d\xd2\x5b\x66\x42\x4b\x6e\xca\xc0\x2b\xe5\xbc\xa2\x75\x2a\x67\x88\x49\xb8\x21\x57\xa2\x55\x97\xe9\x3b\xd1\xc1\x2a\x1a\xcb\x96\xb3\x1a\xd3\x83\x0a\x0b\xf7\xc6\xd8\xd6\x81\x69\x8c\x65\x76\x8d\x24\xff\x0b\x9c\x36\xc3\x0d\x26\x0e\x28\x99\x64\x48\x5a\x75\xc9\xd4\xdc\x7d\x65\x93\x34\x9b\xe6\x15\xbf\x7d\xa2\x20\x56\x42\x92\xcb\xe9\x5b\x15\xf3\x44\x14\x90\x83\xdd\x6e\xc4\x30\x99\x98\x19\x56\x65\xa2\x18\x62\xe6\x59\x76\x85\xf8\x21\x83\xf0\x9c\x20\x87\x4e\xe9\x64\x7b\xba\xb5\x53\x81\x9c\xc4\x5c\x4f\xa2\x2c\x11\x31\x32\xc3\x98\xe4\x40\x02\x3a\x09\x66\x64\x4e\x1f\xa6\xd1\xf4\xdd\x3c\x4c\x6e\x4a\x68\x17\x19\x49\x49\x58\xb0\xd6\x98\x66\x27\xf1\xeb\xac\x1d\x9e\xc4\xfa\x6a\x60\x22\x3a\x96\x78\x52\x06\x7e\xcb\xb1\x34\x98\x9c\xd2\x52\x25\x13\xdc\xd8\xd1\xa2\x09\xb4\x88\xa3\xd1\x74\x8c\x37\xa9\xeb\x46\x28\x23\xa9\x58\x17\x51\x1c\x57\x9b\x53\x86\x82\xb2\x8c\xf5\x13\x2f\x9c\x4e\x41\xe0\x3f\x97\x85\x67\x18\x4d\x60\xed\x93\x79\x09\xac\x1a\x3f\xac\x9e\x43\x9f\x50\xa4\xa4\xc9\xad\x52\xa1\xc8\x2d\xa2\x2c\x11\x70\x88\x37\x84\xa3\x69\x2d\xf7\xd9\x26\x5f\xd1\x53\x65\x93\xf6\x2f\xf3\xb6\x67\x74\x6e\x43\xa6\x8c\xb3\x49\x8d\xb4\xd4\xf2\x05\x43\x8c\x57\x0b\x73\x0b\xfb\x28\xe7\xaa\xb2\x87\x1a\xd6\x25\x2f\xc5\x48\x5a\x4f\xef\xe1\x16\xbd\xa7\x25\x7a\xcf\xc5\x28\x20\x19\x7a\xab\xcc\xb3\x44\x3e\xb5\x08\x56\x3b\x08\x97\x4b\xa7\x30\x94\xbc\xe9\xac\xd7\xd1\x9b\x8e\x38\x50\x81\x5d\xe7\x64\xce\xc4\x06\x74\x9e\x4c\x18\x46\x4e\x28\xef\x2e\x24\x6c\x0a\xc9\x9f\x47\x78\x27\x3b\x48\x2e\x94\xa5\xac\xf0\xd6\x35\xbf\x35\x7c\x3b\x08\x2b\x24\x11\x59\xe1\xcd\x86\x94\x7a\xba\x73\x3b\xb0\x47\xcd\x0a\xea\xfe\x90\x48\x0c\x90\x49\xba\x4a\x78\x00\xb5\xdd\x30\x8e\x51\x46\x1c\x79\xa5\xe7\x60\x3d\xc5\x1a\xee\xc6\x9e\x6f\x31\x2b\x72\x21\x03\x28\x5d\x69\xaf\xa9\x71\x66\x94\xb3\x5b\x34\x08\x39\xb5\xfb\x69\x21\xb8\x31\x00\x7d\xaa\x95\x40\x15\xbf\x75\xf0\x50\x64\x79\xe4\xbd\x6c\xf7\x95\xe0\xdc\xd0\xd2\xfc\x3c\x31\xc2\xa5\xd8\x10\x99\x61\xb4\x0c\xef\x62\x8f\x0f\xb0\x19\x06\x7c\x8b\x24\x61\xf8\x18\x88\x6c\xa5\x72\x76\x6b\x0a\xe0\x10\xc3\x61\xdb\x92\x5b\xac\x66\x20\xea\xd3\x0d\xd9\xd1\xd4\xad\xf1\x94\xa3\xc9\x4d\xb5\xe9\x0e\xa1\x39\xb3\x76\x7c\xd3\x86\x5a\xe4\xe2\x92\x40\xcc\x9f\x2d\x10\x73\x10\x88\x99\xee\x17\x1f\x25\x63\xe3\x18\x02\xf7\xa9\xb6\xb8\x8b\x1b\x99\x64\xec\xa9\x94\x74\x33\x20\x9b\xad\x4d\xb1\x4e\xf2\x31\xdb\x43\x4d\x3c\xa2\x07\x43\x86\xb6\x21\xa1\xa0\xd5\x9f\x25\x3a\x5e\x79\x11\xbc\xb3\x5e\xc1\x4d\x99\x27\x23\xb5\xff\x95\xdd\xdf\x89\x86\x54\xb2\xeb\x64\x99\x55\x4e\x6e\x6d\xb9\x1f\xac\x57\x32\xf3\x24\x8d\xd3\xea\x12\x7c\x27\xd2\xe0\xb5\xd5\x79\xbb\x49\xdb\xe3\xf0\xb0\xb1\xb2\xea\xe6\x3c\x3a\x5c\xb5\x6d\x7a\xa2\x60\x68\x58\x0d\x1b\x93\x17\x7d\xa5\x8d\xb8\x26\x97\x95\xb2\x29\x9f\x5f\xc2\x9d\xe7\x97\x9b\x38\x5a\x2c\xea\x5d\x81\x21\xef\xde\x75\x78\xcd\xe2\x3a\xaf\x5e\xe2\xfc\x97\xfe\x38\x5d\x4e\xd2\x29\xdb\x9b\xa4\x8b\x65\x14\xef\xd0\x82\x54\xce\x2e\xcf\x72\x30\xd6\xa7\x98\x67\x38\x1f\x5b\x6f\x6e\x23\x76\x57\xe7\x96\xac\x5b\x9b\xb1\x19\xcb\x58\x32\x61\xa5\xc4\xa2\x2a\x9d\x74\x1b\xc6\xd1\x54\x22\x5c\x3e\x0f\xa7\xa3\xc8\x17\x01\x3e\x85\x48\x83\xab\x4a\xeb\xc8\xc6\xb2\xdb\x68\xc2\x9e\x77\xdc\xab\x14\xad\xdb\x25\x7a\xfe\xf8\x9d\xe1\x73\x4e\x88\x86\xf3\xdb\x45\x27\xe9\xb4\x7e\xb4\xb3\x54\x22\xf4\x9b\x77\x62\xae\xd3\x84\x25\x7c\x5f\x6b\x1a\xf6\xd2\x24\xbe\x2f\x32\x80\x82\xce\x21\x4e\x96\xdf\x2e\x77\x1d\x43\x49\x48\x72\xb2\x22\x31\x99\x90\x19\x99\x92\x39\x59\x92\x05\xc4\xd4\xbc\x26\x37\xe4\x8a\xdc\x91\x53\x72\x41\xce\xc9\x77\xf2\xb6\x46\xd9\x79\x59\x08\x1e\xdf\x0c\x4b\x86\x43\x02\x0f\x6f\x6e\xd8\xf4\x52\xb5\xeb\x23\x40\x6f\xc5\x1f\xd3\x34\x67\x18\x8d\x1c\xd3\xf2\x60\x4f\x2d\x0f\xa7\x08\x39\xf1\xad\x46\x75\xc9\x36\x84\x15\x1e\x2d\x9f\x5e\x52\x97\x1e\x9b\xc0\x54\x9a\xef\xd7\xd4\xfa\xe9\xc9\x5a\xbf\xfc\xae\x5a\xf7\x00\x08\xb2\xa8\xe7\xcb\x93\xf5\xfc\xfa\x87\xd4\xf3\xeb\x93\xf5\xbc\xfb\xc3\x66\xec\xdd\x93\x75\x7d\xfd\x37\xcc\xd8\xd7\x27\x6b\x3d\xfb\x37\xd4\x7a\xf6\x64\xad\xef\x9f\xb8\x12\xf9\x1d\x9a\x1e\xdd\x36\xfa\x91\x30\x6f\xce\xe2\x25\xcb\x68\xc4\x08\xf3\x58\x3e\x09\x97\xec\xf4\xfb\x32\x63\x79\x5e\x45\x94\xb6\x8e\xf2\x2d\xeb\x28\x1f\xcd\x10\x58\x27\xf0\xf4\xcf\x97\x9f\x3e\x16\xd6\x20\xf2\x59\x21\xf1\xae\xe2\xb8\xc0\x1c\x74\x1c\x69\x49\xa2\xf3\x6a\x43\x61\x71\xc8\x37\xbf\x37\x22\x4b\xce\xb4\xf9\x57\x01\x18\x6e\x99\x9b\x48\x25\xdf\x8a\x91\x18\x9c\xa0\xbd\x39\x5f\xc4\x17\xe1\x8c\xd1\x09\x03\x84\x6c\x08\xf5\x25\x9e\x67\xe2\xf9\x0a\x1c\xea\xbf\xb2\x64\xca\x32\x96\xe5\xf6\xc0\xff\x5d\x7b\xc4\xd1\x8e\x28\x27\x83\x3c\x17\x8c\xf3\x98\x4d\xed\x7c\xb2\x1f\x94\x03\x18\x6c\x42\xdf\xea\xdd\x58\xfc\x65\x19\x02\xa1\xf3\x16\xe2\x04\xaf\xb2\x8c\x25\xfc\xeb\x2a\xf9\x98\xa6\x4b\x8c\xf0\x7a\x7d\xeb\x5d\x87\x93\x6f\xd7\xab\x2c\x61\xc5\x11\xc8\x3a\xfd\x80\x6e\x98\x25\x85\x85\x3e\x4f\x84\x90\xb8\x88\x72\x7d\x27\xa3\x49\xad\x3a\x2b\xcf\xbb\xa4\x4b\x48\x31\x8a\x79\x32\x62\x1a\xc5\xa2\xa6\x54\xcb\x36\x01\x72\x52\xb8\x33\x9a\x87\x79\x6d\x0b\x54\xce\xe7\xb7\xa2\xd2\x9d\xbc\x66\x09\xe4\x49\xa5\x75\x65\x1b\xba\x3c\x91\xd7\x4a\x39\xe3\xab\xe5\x69\x72\x13\x25\xcc\x98\xff\xd8\xf9\x58\xc5\xfe\x1a\x15\x4a\x74\xf2\x60\x79\x07\x07\x2d\x1f\x16\x86\xf6\x36\x41\x8e\x90\x38\x82\xbd\x74\xc5\x63\xc6\x1d\x72\x9b\x94\xdf\x16\x6c\x52\xe7\x58\x40\x0e\x63\x7a\x58\x2d\xc0\xaa\x77\xfb\xe3\x52\xd9\xa8\x43\xee\x0a\x1c\x14\x8c\x3e\x21\x8c\xc9\x1c\x4a\xaf\xf6\x45\xae\xdc\xa7\x7a\x22\x73\x05\x71\x3a\x71\xc8\xb4\xd2\x0f\x8b\x0d\x73\xf6\x9d\xef\xcd\x64\x94\x9d\x5f\x76\xe6\x9a\xcc\xd9\xe4\xdb\x75\xfa\xdd\x21\x7f\xda\x95\x27\x8e\x92\x6f\x7b\x3c\x75\xc8\xff\xec\xca\x11\x25\xcb\x15\x77\xc8\x6c\xd7\xa0\x5a\x1c\x53\x65\x5d\xee\x6c\xb7\x68\x76\x98\xb1\xd0\x21\x7f\xc5\xe4\xde\x3b\xfd\xfc\xb3\xf7\xa4\xe1\xc7\x7a\xfd\xc8\x78\x7f\x13\xe3\xfd\x4f\x6c\xa8\xcb\xc2\xb8\xdc\x41\x62\xd6\xa4\x67\x8a\xb9\x08\x51\x3b\xb9\x75\x88\x63\xcb\x92\xc1\x22\x8c\x92\xf2\x64\x3b\x4a\x78\x0c\xf6\xa6\xe9\x62\xef\x7a\x15\xc5\x53\x98\x50\x69\xec\x58\x3a\x93\xe5\x77\x11\x9f\xcc\x11\xf3\xae\xd3\x54\x5b\xb3\x0b\x96\x26\x2a\xfc\x94\x4e\x19\x7e\x98\x84\x39\x13\x05\x46\x60\x9a\xe8\x04\x6a\x29\x9d\x7a\x26\xed\x07\x59\x81\x77\x1d\x25\x53\x69\x0d\xd7\x80\x8f\x32\x36\xbf\x9f\x66\x82\x3a\xf5\x47\x33\x4f\xa7\x45\x69\x52\xf3\x99\xe2\x7b\x45\xf6\x09\x44\x7d\xdc\xce\xb9\x81\xe8\xca\xf6\x18\xd5\x77\xd9\xb1\xba\xb5\x73\xdc\xea\x47\xba\x28\xa3\xb6\xe8\x47\x57\xd7\xaf\x62\xb6\x3f\xec\x2e\x5b\x48\x41\x97\x66\xe9\x56\xbf\xfe\x82\x30\x2e\xcf\xa7\xfe\x14\x9a\xe0\x90\x30\xd9\xf5\x5a\x88\xe9\xdc\x21\x69\x95\x6d\x58\x75\x6b\x00\xbb\x72\xc7\x54\x1a\x10\xe8\x95\x2e\xf9\x53\x38\xc9\xd2\x32\x8b\xfc\x51\xe9\x04\x24\xbb\x9d\x84\xcb\xf0\x3a\x8a\x23\x1e\xb1\x2d\x37\x8e\x2d\xa8\x14\x79\x31\xaf\xb7\xa1\x8c\x3a\x3d\xcf\xef\xc1\xad\x63\x01\xb0\xc8\xbd\xd5\x72\x1a\x72\xf6\xe7\x34\xfd\x86\xc9\x03\x44\x3c\xf8\x18\xcd\xd8\xbb\xfb\x49\xcc\xde\x29\x23\xd7\x3c\x28\xb2\x9b\x1c\x93\x52\x0e\x4c\xc0\x75\x57\x62\xea\x17\xb9\x8b\x44\x4c\x8a\x8a\x02\x09\xce\x9f\x33\xfe\x4e\x33\x00\xe5\x60\x5e\xe7\xc4\xd1\xc8\xe8\xcd\xff\x8f\xbc\x7f\xed\x6b\x23\xd7\xf6\x45\xe1\xf7\xfe\x14\xa6\x76\xff\x3c\x4b\x0f\xc2\x31\xe9\xfd\xac\xb5\x8e\x89\x9a\x49\x80\xa4\x49\x13\x48\x03\x49\x5f\xbc\x7c\xbc\x0a\x5b\xc6\x9a\x29\xab\xdc\x2a\x99\x84\xe0\xfa\xee\xe7\xa7\xa1\x6b\x5d\x6c\x20\x49\xef\xb5\xcf\x3e\x6f\x12\x5c\x55\xba\x0f\x0d\x0d\x8d\xcb\x7f\x74\xdd\xae\x1f\xbd\x3d\x38\x3b\x78\x7d\x7c\x31\xba\xbc\xba\x38\x39\x7b\x3d\x3a\x3d\x3f\xff\xe5\xfd\xbb\x06\x28\x3d\xba\x1f\xea\x6f\x9c\xe6\x43\xbb\xd1\x05\xac\x67\x67\xae\x9b\x06\xf3\x44\xd1\x77\x82\xc9\x2b\x11\xdf\x1b\x1b\x46\x5f\x60\x7b\xdf\xea\x6f\xed\x62\x9d\xf2\xcb\x55\x10\x15\x80\x2a\x04\x67\xe1\x86\xf1\x58\x75\xcc\x17\x11\x7b\x03\x91\x04\xf8\x18\x5b\x79\xa7\x13\xd4\x0a\xb8\xfe\x1a\xd7\xda\xda\x52\x5c\x64\x08\xcc\xdd\xdb\x6c\x02\x01\x0d\xcd\x53\xd7\x30\x0a\xda\x30\x8a\xb9\xa9\x24\x1c\x44\xb5\xe2\xf7\x02\xd3\xae\xfd\xf0\xf0\x49\x14\x68\x14\x29\x13\x96\x27\xd7\x29\x3d\x58\xca\x0c\x72\x92\x32\x7e\x13\x12\x49\xfd\x2d\xaa\x11\xc8\x66\xf1\xe6\x1d\x24\xf1\x84\xd4\x61\x58\x56\xd7\xc2\x15\x3d\x14\x1b\x5c\x2e\xce\xdf\x6a\x55\x75\xfe\x48\x7f\x88\x69\xd7\x17\xd9\xe8\x74\x71\x74\xfe\xf6\x4a\x50\x7a\x68\x91\x31\x41\xeb\xf0\xf8\x26\xaa\x65\x37\xb6\xc5\xf2\x4b\x73\x48\x00\xc7\x7f\xc5\x44\x2e\xcf\x40\x73\xf0\xc8\x06\xd7\x55\xb0\xb1\x55\xf5\xc1\xd7\x8f\xf2\xb8\xbb\xa6\xbc\x3e\x72\xce\x41\xb8\xfa\xc0\xe8\x27\x42\xbb\x27\x67\x1f\xce\x7f\x39\x26\xb4\x7b\x70\x9d\x4b\x91\x8c\xeb\x1b\x8e\x76\x47\xf4\xf3\x82\x0a\x06\x2a\x9e\xd4\x70\x54\xda\x85\xfc\xa3\x4a\x48\xbf\xa5\xf6\xea\x00\x4f\xa9\x90\xc1\xef\xe0\x4f\x75\xe1\x30\x8e\x7e\xb4\xfb\xb3\xbe\x5c\xd1\xae\x6b\x8f\xd0\xee\x29\xe3\x1f\xc3\xdf\x57\xf4\xb3\x3c\x10\x34\x31\x7f\xbe\x52\x42\x98\x2a\x62\x64\x2d\xe2\x2f\x6c\xe0\xf3\x7e\x98\x2d\x55\x9f\x54\xe7\x2e\x82\xe3\x29\xb4\xdb\x9f\x91\x7b\xc0\xe7\xf8\x99\xc9\x7e\x0f\xc3\x9f\x6f\x59\x9e\xf7\x7b\x41\x42\xc1\x53\xcf\x5a\xc0\x48\x61\xdb\x30\xa8\x76\x28\xa6\x08\x33\x70\x08\xf9\x8d\x26\x1f\xdf\x26\x0b\x9c\xe9\x24\x5e\x49\x25\xf5\xac\xb6\x6e\x33\xb0\x3e\x78\x0e\xe5\x3d\xb5\xf7\xe3\xb3\xae\xeb\xc2\xf6\x36\xe6\xc4\x45\x73\x80\x39\xc8\x85\x06\x81\xd6\xb0\x4f\x0b\x9c\x21\x84\x19\x6c\x4c\xc8\xe9\xd4\x37\xe5\x7f\x66\x52\x15\x0f\xb2\x0d\x8c\x46\x6c\x42\x64\x97\x4d\xb0\xfa\x5b\xf5\x8d\x64\x38\x29\xd6\x4d\xd8\x19\x4c\xce\x2b\x72\x1a\xdf\xb3\x49\x3f\xca\xff\xff\xd9\xff\x75\xfd\xf9\x92\x47\xf8\x3a\xcd\xc6\x1f\xfb\xff\xb8\x8f\x34\xe4\x48\x1e\xf5\x07\x43\x1c\xb9\x0c\x12\xea\xf7\x60\x17\x0f\x7e\xec\xe1\xc1\x8f\xff\x86\x7b\x43\x3c\x18\xfc\xf8\x1c\xf7\x86\x43\xb8\xb5\x0d\x87\x43\x1c\xcd\x92\xfc\xf8\x36\x49\xa3\xfe\x34\x49\x73\x8a\xa3\xe5\xe2\x36\x11\xaa\x60\xc0\x9a\x87\xc5\x3f\xb0\xea\x64\xff\x5e\xa3\x5b\x83\x03\x43\xb4\x48\xc6\x1f\x93\x1b\x9a\x3f\x5b\xaf\xca\x4d\xd9\xb5\x53\xca\xe5\xcf\x94\x50\xd2\x9d\x5d\xe7\x91\xd6\x08\x97\x88\xe0\x15\x0c\xf1\x8b\x5a\xd2\xbc\xeb\x77\xd1\xa5\x85\x52\x39\xb8\x78\x7d\x19\x21\xfc\x7e\xed\x07\x3f\x1f\x5c\x8e\x5e\x9e\x9e\x1f\xfe\x12\x21\xfc\x52\x7f\xe5\x70\x58\x8e\x4e\x2e\xae\xfe\x18\x5d\x1d\xbc\x8e\x10\xfe\xb9\xf2\xee\xe4\x72\x74\x74\x72\xf9\xee\xe0\xea\xf0\x67\x75\xbc\x1e\x5c\x5d\x5d\xa8\x86\x3e\x54\x3e\x7b\x79\xfe\xfe\xec\x48\xbd\xf8\x8b\x2c\xbb\x87\x99\xa0\x6a\x83\x5a\xe7\x92\x65\xf7\x70\xc6\xd2\x89\x7a\x94\x5f\x6a\xdf\x1b\xbc\xec\xaa\x9f\x97\x6a\x29\xfc\x23\x30\x16\x81\x69\xc6\x3e\x4b\xba\xda\x45\xf0\x00\xc8\xd2\x7f\x59\xfd\xad\x2a\x7b\xcb\x3e\x33\x8e\xe3\xf8\x8a\xdc\xb3\xdc\x6d\x44\xc5\x68\xbe\xce\xb9\x65\xf0\xf3\xd0\x22\x1e\x0e\x5e\x02\xc2\xe4\xc4\x10\xf8\x55\x72\x83\x62\xf3\xd1\x87\x21\xd1\x3a\x7f\x41\xb5\x90\x17\x36\x04\x65\x26\x4c\xc8\x3b\x28\x62\xaa\xb2\xe0\x0f\xd0\x81\x18\x15\x05\x1a\xb0\xee\xbb\x8b\xf3\x77\xc7\x6a\x1d\x8e\x4e\x8e\x46\x87\x3f\x1f\x9c\xbd\x3e\x1e\xae\x89\xa5\x1e\xfc\x3c\x0c\x0d\x96\x83\x2f\x43\xcc\x89\x8f\x0f\xdb\x17\x03\x6a\xd3\xf7\xb7\x42\x3c\x22\xff\xf7\x60\xdc\x7d\xff\xee\x48\xdd\xa5\x2e\x8e\x5f\x1d\x5f\x1c\x9f\x1d\x1e\x1f\x8d\x3e\x1c\x9c\xbe\x3f\x1e\x76\x3a\x9b\xde\xc6\xcf\x09\xa9\x65\x9e\xde\x07\x7b\x28\xd3\xf6\x50\x03\x38\xa1\x4e\xec\x2b\xf5\xe4\x40\xca\x46\x78\x0a\x67\xd9\x54\x92\xec\x55\x57\xd0\x64\x72\x74\xfe\xb6\xf6\xb5\xe3\x64\x4b\xf5\xb1\x5a\x66\x93\xde\xdd\xf8\x95\x60\x41\x24\xe6\x24\x9a\x49\xb9\xe8\x3f\x7b\xf6\xe9\xd3\xa7\xee\xa7\x1f\xbb\x99\xb8\x79\xf6\xbc\xd7\xeb\x3d\xcb\x6f\x6f\x74\x7a\x5b\x17\x3e\xf5\xfe\xe2\x44\x7b\xf6\x4c\x7d\xbc\x97\x3d\xbc\x50\x2c\x94\xc4\x90\x11\x06\x92\x16\x4e\x08\x0b\x90\x60\x9c\x8f\xdc\x6a\x15\x25\x52\x0a\xc8\xdb\xb3\x2f\xec\x20\xc1\x9f\x29\x4e\x50\x5f\x0c\x92\xa1\x1a\xd2\x84\x4d\x2e\xe8\x98\xb2\x5b\xaa\x5e\x97\xd4\x21\xee\xb5\x22\x98\xea\x8b\x4f\x2c\x4d\x9b\xdf\x4c\xd8\xe4\x3d\x48\xcd\x8d\x15\xaa\x72\xfa\xf5\xda\x72\x95\x17\x48\xf1\x19\x7f\x64\xfd\x85\xff\xda\x94\x02\xac\x6a\x4f\x88\x0a\xfc\x57\x57\xd0\x6c\x41\xb9\xb6\xf2\x86\xdb\xce\x1c\x37\x6a\xf7\x2d\xb2\x9c\xa9\x9a\x92\xf4\x5d\x22\x92\x79\xde\x1f\x0c\xcd\x65\xe4\x37\xcb\xb2\x2f\x7f\xbb\xfe\x2b\x3f\x9d\x7d\x78\x14\xcb\xde\xc4\x95\xbf\x13\x2b\xa6\xf3\x85\xbc\xb3\xbc\x18\xff\x40\xfe\x72\x7e\x72\x69\x72\x97\x2d\x65\xff\x37\x3c\x76\xbc\xaa\x3f\x30\x06\x38\xa7\x45\x19\x62\x99\xdc\xe8\xa6\x8d\xa6\xc3\x39\xbc\xbd\x64\x7c\xc2\xf8\x8d\x2a\xa4\x48\x2c\xc2\x11\x94\xa2\x93\x08\x47\x8c\x4f\xa8\xa4\x62\xce\xb8\xd6\x28\x19\x41\x58\xbd\x92\xc9\xb5\xb1\xfb\x45\x8a\x92\x23\x1c\x25\x4b\x99\x4d\xb3\xf1\x32\x87\x64\x20\x3a\x01\x43\x84\xa3\x69\x26\xe6\xaa\x7d\x7d\x27\x71\x6a\x1d\x5b\x95\x92\xf4\x4b\xcd\xa8\x07\x13\x36\x39\xe1\x39\x15\xd2\x6c\xad\xaf\xf0\x95\xa1\xba\x64\xb7\x54\x37\x71\x32\xbd\x86\x43\x0a\x5e\xa1\x02\x8f\x6b\x9e\x20\xc0\x44\x72\xc7\x44\xfc\xcc\x94\x9a\x30\x4f\x91\x3e\x25\x9d\x34\xf5\x03\xfe\xe1\x29\xc4\xfb\xcc\xcd\x8d\x4e\x9e\xfc\x9a\xcc\x0c\xae\xfa\x7e\x43\x64\xaa\xc6\x43\x57\xdf\xfd\xe1\x69\x61\x09\x62\x9d\x3d\x83\x36\x52\x46\xa0\x85\x7b\x1c\x6d\x68\x7f\x48\xb3\xcc\x36\x8d\x8f\xf9\x99\x27\xb7\x9a\x3a\x84\x59\xef\xc4\x88\xd7\xf0\x83\xf2\xb1\x21\x2c\xf5\xcb\xe4\x99\xd5\x3f\x78\x66\x0c\xa5\xf6\xad\x84\xb3\x35\xc2\xd1\x8c\xb2\x9b\x99\x04\x12\x5c\x2c\x01\xbf\x3d\xc2\x51\x9a\x80\x19\x31\x65\x39\x68\x3a\x75\xa5\xf3\x44\xd1\xe0\x9c\xa9\xe6\xe6\xcb\x54\xb2\x45\x4a\x3d\x51\x2e\x12\xa9\x36\x56\x84\xa3\x9c\x7d\x51\x0f\x72\x49\x17\x11\x8e\xc0\x4c\x11\xe1\xe8\x13\x9b\xc8\x59\x34\xc4\xda\x6c\x11\x45\x9a\x4e\x61\xdd\xd5\x20\x97\x92\x4e\x50\x7c\xdf\x78\x2f\x88\xd4\x1c\x46\x05\x2e\x27\xe7\xf3\xae\x3b\xfa\x7d\x1d\x05\x44\x1f\x9b\x76\x71\xad\xa6\xdc\x52\xa6\x46\x6f\xa5\x6d\xc6\xdb\xaf\xed\xbb\xd7\x03\x3a\x34\x08\x62\x56\x2f\x63\x88\xc1\xec\x8f\xd8\xac\x9c\xce\xda\x63\x32\xb8\x52\x93\xa9\x47\xa0\xfb\x22\xa8\xc8\x5c\xda\x09\x21\xb4\x88\x25\xd2\x28\x16\x08\x0b\xc5\x57\xd4\x1c\x69\xdf\x71\x33\x6f\xfa\xc7\x9c\xd9\x3f\x92\xcf\x3a\x70\x58\x11\xba\xbf\x42\xfc\x81\xff\x78\x12\xa5\x07\xc4\xa7\x69\xfd\x97\xb5\x34\xbc\x8e\x74\x41\x15\x3b\xc4\x8e\xc4\x1d\x09\x7b\x3d\x6d\x13\x15\x8b\x0c\xcc\xfb\xe3\x0c\xec\xff\x86\x46\x72\x9a\x6a\xad\xd8\x31\x9f\x84\x3f\x75\x46\xfb\x1a\xc5\x7f\x12\xc9\xc2\x13\xa3\x26\x7a\x4d\x4e\x43\xac\xea\x37\xce\xf7\x59\x9a\x97\xe7\x0a\x6e\x5e\xbf\xe0\x5f\x9e\x3e\x55\x30\x1e\x3d\x53\xbf\xda\x03\x6a\x79\xf4\xcb\xe7\xf4\x3f\x38\x6d\x3c\xa0\xa2\x8e\x33\x00\x56\x6f\x17\xff\x86\x07\x3f\xfe\xbb\xbe\x59\x3c\xff\x77\xac\x6e\x17\xbb\x43\x73\xbd\xc0\x83\x41\x64\xcb\xe1\x08\xf2\xf1\x0f\xf1\xe0\xbe\x7a\x3d\xf9\x0f\xbc\x6b\x6e\x23\x6a\x7b\x89\x64\xae\x98\xa8\x3e\xea\x70\xed\x63\x68\xa1\x87\x07\x51\xca\xf8\xc7\x2b\x26\x53\x1a\x0d\x87\x0d\x25\x87\x0f\xdc\x6d\xd8\xf4\x7b\x5d\x6a\x8c\xd9\xc0\x9d\xa5\x6f\x6c\xe0\xff\x54\x50\xfa\x85\xc6\xf7\x76\x79\x1a\x76\xfc\xfb\xb3\xa3\xe3\x57\x27\x67\xc7\x47\x50\xf2\xf7\x6a\xc9\x02\xe1\x3f\xeb\x27\xf3\xaf\x9e\x38\x93\x08\x8b\x6c\x29\x69\xff\x0d\xd6\x1e\xc7\xe6\xff\xbc\xff\x06\xff\xb5\xa4\xe2\xae\xff\x06\x47\x63\x6d\xd2\xdb\xf9\x34\xa3\x3c\xd2\xc4\x24\xd5\xc4\xe9\x3f\x05\x4d\xcd\x33\x73\x00\xdb\x5f\x8a\x71\xea\xbf\xb5\x12\x41\xbb\x48\x47\xfa\x47\x84\xd3\x2c\x51\x9b\xc0\x3c\x35\xbf\xfc\x31\x6c\x9e\xfb\x03\xde\x18\x3d\xd5\x69\xdc\xb4\x91\x66\x82\x4e\x15\x0f\x86\x15\x55\xe7\x7d\x5a\x96\x09\x0c\x23\x1f\xfa\xb3\xa7\x74\x96\xe8\x3e\xf9\x6e\x94\x24\x0b\x91\x70\x2d\x9f\x31\x7e\x73\xc2\xab\x4f\xce\x97\xaa\x5a\x7a\x4b\xb9\x4e\x82\x16\x8d\x53\x36\xfe\x18\x3d\xfd\x4a\x15\x26\x0d\x75\xd5\x69\x50\x21\xcd\xc8\x1d\x30\x83\x49\xe6\x8f\x0a\x3c\x32\xce\x2c\xea\x84\x98\x1b\x75\x3a\x8a\xa3\x1d\xeb\xe3\x82\xf0\xc8\x2c\xdf\x05\xac\xb3\x86\x24\x49\x59\x92\xa3\x38\xb2\x85\xbb\xe1\x27\xaa\xd1\x6a\x31\x01\xb7\xd0\xcd\x85\xe1\x13\x55\x50\xcf\xf4\xc3\xe5\xf4\x77\xae\x98\xf0\xfd\xf3\x07\x5d\x04\x4f\x23\x1c\x35\x74\x27\x0a\xfc\x70\x42\x2f\xc6\x2e\x94\xf1\x5e\x9f\x84\xbc\xd1\x08\x14\xe5\x99\xa0\x05\x42\x78\x64\xa8\xbd\xda\xac\x76\xf7\xc4\xfa\xff\x7c\x6d\x4b\xf0\xda\xb8\xa2\xea\x1f\xb9\x6b\x77\x4b\xb5\xab\xae\x99\x12\xfe\x92\x20\xd3\x23\x3c\xd2\xdb\xaa\xda\x20\x3c\x5d\xdb\x0e\xbc\x2d\x8f\xe8\xf7\x7e\x59\x85\x54\x60\xed\x4b\xef\xc4\xd8\x47\x89\x0c\x5b\xbb\x4d\xe2\x42\x09\xb2\x8d\xe5\x47\xa6\x4a\x22\x31\xa4\x99\x81\xe7\xa5\x7d\xaa\x98\x8f\xde\x43\xb5\x81\x05\x7b\x5f\x2d\xa3\xdd\x69\x71\xbd\x2b\x1a\x04\xcd\x7c\x61\x5a\x09\x4a\xc3\xe4\xad\x69\xa4\x91\x3a\x34\xa5\xc1\x1f\x76\x19\xa3\x91\x99\xe7\x60\xa3\x97\xb8\xdb\xba\x05\x68\x68\xc0\x65\x0f\xb7\x7d\x1d\xb1\xfc\x00\xba\x67\xa2\x1a\xd4\x65\xf3\x25\x3d\x78\x52\x8f\x6b\x7b\xe7\x6f\x1f\x06\x76\x88\x3c\xd5\xa6\x41\xec\xdb\x22\x44\xa2\x0a\x3d\x98\x51\x4a\x18\xa5\xfb\xdd\x98\x8a\xd8\xf4\xaf\x8c\x63\xa7\x5b\x1c\x94\xbb\x0c\xd0\x2b\xd1\xb5\x16\x3a\x83\x24\x90\xae\x71\x03\x81\xe7\x2e\x4c\xa8\x25\x89\xd8\x77\xb9\x4f\xda\x11\xea\x6b\x6f\x7d\x3d\x5f\x3e\xbd\xb6\x89\x5d\x32\xb3\x87\x0d\x56\x96\x9e\x42\x17\x1d\x60\x98\x12\x4e\x48\x6f\x2f\xf1\x80\xde\xc9\xf6\x36\x82\xfc\xc2\x76\x94\xaf\x32\x01\x53\x14\x73\xcc\xb0\x1c\x24\x43\x4c\xb1\x70\x38\x7d\xbd\x96\xdf\x56\x95\x53\xa3\x4e\x01\xee\xd0\x09\x09\xa5\x71\x67\x38\x68\xe3\xf0\xcb\x4e\xa7\xb2\x61\xac\x34\x1a\xb6\xbb\xc3\x78\xa4\x56\xa9\x7a\x60\x7d\x4b\x6f\x34\x74\x7c\xad\x3f\xab\x55\xa9\x3f\x68\x4d\x87\xb2\xa5\x8c\x34\xdd\xc0\x11\x56\xa5\x9a\x2d\xd0\x63\xb1\xfc\x92\x29\xf1\xf6\x50\x9d\xa4\x28\x00\x42\xec\x85\xb8\xc5\xd7\xcb\xeb\xeb\x94\xba\x18\x80\x85\x80\x43\xf3\x48\x0b\x8c\x36\x64\xcd\xde\x89\x35\x79\x63\x46\xb6\xf8\x6a\x15\x8d\x72\x9a\x4e\x21\x97\x6a\xcb\x25\x53\xe8\x74\x58\xa7\x43\x2b\xd5\xc4\x08\x03\xc4\x83\x54\xaf\x72\x99\x2d\xde\x89\x6c\x91\xdc\x24\x7a\x4a\x70\x95\x45\x7a\x42\x5f\xbb\x03\x54\x7b\xac\xbc\x21\x42\x22\xa4\x36\x32\xc5\xd2\x6b\x5e\xa2\xd7\xd4\x42\x50\x81\x30\x84\xc7\xe4\x1e\x9e\x1b\xb5\x51\xae\xa5\x39\x10\x43\xb2\x20\x44\x69\xd1\x9d\xa6\xe0\xb3\x77\xe2\x7c\x79\x91\xba\xa2\x19\x03\x4f\xc6\xbb\xce\x77\x65\x8c\x6d\x88\x03\xe4\x4e\xa5\x57\x6e\xf5\xe2\xb1\x71\x72\x4d\x91\x9a\x14\x88\x2d\xa8\x7e\x53\x0d\x44\xe3\xb8\x9c\xed\xdb\xee\xb3\x86\x18\x15\xda\xf5\x84\x02\xc9\xbe\xed\x8f\xab\x2c\xb6\x55\x15\x05\x56\x72\xde\x77\xe0\xff\x46\x02\x2e\xb1\x50\xf3\xd7\xcf\x20\x49\x86\x84\xaf\x38\x53\xe2\x32\xd9\x9a\xa2\xeb\x98\x5c\x3b\x7c\xa6\xea\x0a\xc5\x3a\xb3\xc4\xb2\xbc\xc4\xa2\xb4\xc4\xbc\x79\xaa\x78\xd7\x4e\xf7\xfb\x8b\x53\x13\xc5\x0d\x41\x0f\xa6\xa9\xfa\xa4\x54\x86\x7f\x20\xe8\x69\x96\x4c\x40\xa4\x0d\x85\xef\xf5\xa7\x85\x16\xa4\x1c\x3e\x69\xb5\x1e\x8d\x5b\x5d\xcd\xa8\x1c\x56\x1d\x88\x58\xae\x54\xbd\x9f\x4d\x42\x96\x65\xde\xb4\x3c\x53\x92\xf4\xf6\xe4\x0b\x6a\xd9\xb3\xb4\x71\x80\x82\xd8\xac\x11\xba\x4b\xc2\x6d\xb0\xc2\x72\x8e\x60\xaa\xd4\xaa\xf4\xa3\xff\xa1\x2e\x1b\x25\xfd\x73\x73\x54\x8c\x13\x75\x7e\x9b\x51\xde\x0a\xd1\xc9\xe1\x6d\x4e\x65\x1c\xdc\x16\x68\x09\x5a\x1d\x2e\x95\x00\xab\x2e\x3b\x1d\x55\xca\x9e\x2c\xe8\x5e\x12\xd9\xcd\x53\x36\xa6\xd6\x4c\xf2\x7e\xb8\x5a\xf9\x1a\xfd\xf5\x14\xcb\x6e\x3e\x63\x53\x19\x23\x97\x68\x67\x20\x5d\x86\xe9\x61\x0b\xa2\x43\x59\xfe\xab\xe7\x03\xfb\xbe\x1a\x43\xef\xb2\xbb\xc8\x16\x31\xea\x82\x5a\x20\x37\x61\x4c\xe1\x07\x6f\x10\x86\x53\xc6\xd9\x2b\xdc\x07\x86\x8a\xde\x84\x85\xcc\x33\xdf\x31\xec\xdf\x19\xd1\xf9\x4d\xed\x59\x1e\x61\x69\x92\xd7\xd7\x8f\x65\x58\x3a\xd3\xf8\x4f\x3d\x97\xdb\x7a\xc0\x83\x81\x6e\xc2\xc9\xe9\x74\x58\x79\x0e\x2c\xf2\x3f\x8c\x8f\x30\x33\x72\xcc\xf5\x44\x40\x3a\x7b\xd4\xaa\x5a\xa4\xff\xc4\x7f\x3e\x42\x19\x62\x36\xa6\xbe\xb8\x87\xba\xfe\x3f\xcb\xba\xfe\x9a\x56\x5f\xeb\x18\xf2\xc8\xe8\xf6\x29\xad\x98\x08\x2f\x8e\x0f\xcf\xdf\xbe\x7b\x7f\x75\xac\x2d\x8d\xde\x62\x2d\x69\x60\x16\x0a\x50\x7a\x0d\xf8\x3f\xc4\x22\x0a\x4a\x92\xae\xcb\x45\xfd\x5d\x62\xd7\x07\x94\x36\x18\xf5\x0a\x2c\xa8\xd9\xbe\xcd\x1b\x66\x0f\x7c\x81\xff\x95\x31\x8e\xe2\xba\xfc\x50\x31\xf8\x51\xd5\x08\x84\x86\xc2\x7a\x18\xb7\x01\x41\xb1\x00\x3f\x66\xf8\x69\x2c\x25\xc4\x1c\xff\x9c\xae\xc7\xf3\x37\x71\x85\xd0\x3b\x9b\xd2\xa2\x5e\x8d\x0b\xa3\x0e\x9c\x76\xab\x09\x1c\x5c\x4c\x93\x1d\x6b\x58\x75\x51\x45\x2a\x64\xb4\x82\x2b\xcf\xe1\x1a\x00\x47\xdf\x43\xdd\xcd\x8d\xcf\xc4\xd7\x65\xbf\x88\x4c\x7a\x87\xdc\xa5\xa2\xd0\xfe\xe7\x4d\x00\x38\x70\x7c\x05\x70\xd4\x30\x86\x92\xe3\x46\x46\x75\x5c\x3d\x25\xf7\x51\x27\xea\x47\x9d\x64\xbe\xd8\x8b\x70\xf4\x42\xfd\x9d\x4a\xf5\xe7\x4f\xea\xcf\x1b\xf5\xe7\x3f\xa2\x7f\xf4\xa3\xce\x5f\xcb\x0c\x9e\xff\x43\x3d\xff\x1f\x9f\x9f\xff\xbb\xfa\xf1\x5f\xfa\xc7\xbf\xf5\xd4\x0f\xa2\x7f\xfc\x78\xb4\x07\xda\x69\xf2\x6c\xd0\x79\xf1\x53\xf4\x8f\xff\x22\xc3\x67\x78\x59\xfa\x79\xe3\x67\x34\x0d\x67\x34\xa1\x03\x3a\x0c\xd2\xf2\xd0\x0a\xf8\x39\x21\x74\x9f\x92\x28\xea\xd7\xfd\xf4\x21\xaf\x83\x73\xae\x47\x18\x40\xff\x61\x71\x7c\x6c\x7b\xb5\x3a\x83\x3b\xd2\x00\x44\xd6\x14\x88\x60\x26\x5c\x87\xc5\x3f\xb4\xd8\x3e\x73\xc4\xa6\xe5\xd6\x3e\x77\x66\x33\xac\xbf\x9c\x57\xe0\xe6\xf5\xf7\x3a\x45\x14\xb6\x95\x58\xdf\xb4\xc7\x57\x63\x4b\x54\x2a\xf2\x6c\x72\x6d\x5c\x70\xa5\x22\x57\xe2\xe7\x84\x4f\x52\x9d\xe0\xd1\x9f\xd1\xee\x90\x6e\x3b\xd3\x51\x15\x51\xd7\xe2\x67\x0a\x70\xc8\xe9\x1a\xbf\x43\x9c\x11\xde\x05\xb5\x2e\x98\x9f\x6f\xa8\x0c\x5d\xec\xe2\xac\x1e\x01\x1d\xa6\x75\x93\xdd\x89\x4e\x4a\x72\x0a\xda\xd0\x22\xee\xe1\x04\xed\xdf\x03\x50\x15\xed\x0b\x1c\x3a\x8c\xf6\x13\xac\xe3\x00\xc1\x1f\x0b\x9a\x7a\xc3\x40\x65\x65\x8b\xc7\x59\x39\x21\x08\x2a\xfa\x8f\xa9\x0a\xf4\xf0\x7e\x6a\xdf\x25\x42\xb2\x24\x7d\xfc\x12\x99\x02\x6e\x85\xea\x79\x16\xd6\x14\xb7\x33\x6a\x73\xe7\xe1\xd9\x3a\x82\x45\xf7\x9b\x08\x74\x21\xe8\x22\x11\xf4\x40\xdc\x34\x05\x31\x68\x77\x0f\xd9\x9d\xb0\xc9\x61\x68\x16\x2a\x1b\xd7\xa5\x37\xf0\xeb\xc9\x6c\x78\x7d\x58\xe3\xca\x90\x1d\xa3\xc1\x54\x2f\xbd\x0d\x7f\x6d\x6d\x4d\x26\xfe\x32\x1f\x5f\x04\xac\xc0\x85\x01\x83\x6b\x04\x24\x4c\xa5\x5d\x1d\xb9\x50\x14\x1b\x1c\xea\x66\x9a\x87\xce\x29\xb9\x2f\x91\x1a\x18\x92\xf5\x83\xab\xe4\x46\xfd\x0a\x66\x51\xfd\xd4\x47\x10\xfc\x32\x0e\xfd\x35\x90\x46\xaf\xfb\x06\xb7\xe0\xad\x5d\x6c\x2e\xb8\xf6\xa7\xae\xe3\x30\x49\x53\x2a\x82\x06\x2f\xc7\xd9\x02\x3c\x0a\x03\x9f\xe2\xb5\x6d\xe8\x3a\x4e\x4c\xf2\x21\x55\xea\x93\x48\x16\x0b\x6d\x1b\x0f\x11\x23\xd4\x2d\xb0\x42\x75\x6e\x26\x03\x40\x33\xda\x2c\x63\x68\x71\xb7\x80\x90\x32\xc6\x67\x54\x30\x99\x9b\x28\x32\x61\xe5\x68\x4e\x44\x53\xce\xd4\x5a\xb6\xa5\x32\xbe\x32\x37\xcb\xa4\x35\x5c\x19\x51\x1b\x64\xda\x2a\x3d\xf5\xe0\x9f\x3a\x35\x38\xfd\xd4\x1e\x7b\x47\x8f\x8b\x2c\x93\x17\x36\xb4\x36\xd6\x69\x64\x44\xa6\xe6\x14\x53\x84\x43\x17\x7d\x8a\x6d\x9e\xd3\x3e\x5c\xb4\x47\x3e\x5c\x16\xcc\x75\xc8\x7a\xb6\x77\x6d\x44\xcc\x02\x36\xad\xe2\x83\xeb\x16\x00\xdd\x27\xe6\x6b\x62\x30\x15\x2c\xd9\x61\xaa\x44\x3a\x91\xe8\x44\xcd\x7a\xef\x5c\x09\x6a\xa5\x97\xd8\x96\xc3\xf7\xda\xbd\xc1\xb6\x09\xb5\xd8\x97\x1a\x48\x27\x51\x64\x36\xed\x1e\xbf\x7d\x77\xf5\xc7\xe8\xe0\xe2\xf5\x25\xb6\xd9\xa6\x2c\x04\x91\x0b\x4b\x31\x4e\xd4\xc8\xe4\x1a\x37\xc2\x74\x8c\xf0\x92\xe4\x9d\x4e\x6e\xa2\xc6\xfc\x5f\x26\x79\x58\x4a\x32\xfb\x65\xe9\x85\x1a\xfa\xb2\xd3\x59\x6e\x11\x92\xea\x15\x9b\x90\x14\xcf\xc8\xa4\x3b\xcf\x96\x5c\xbe\xcb\x18\x97\xad\xa4\x4b\x21\xba\x89\xdc\xfb\x87\xfd\xd9\x23\x26\x40\x17\xb3\x13\xa0\x7f\x99\x09\x98\x6d\x1a\xf4\xa4\x3e\xde\xe2\xa1\xc6\x6c\x2b\x70\x1f\xda\xf1\x91\x4e\x66\xd1\xfc\x3c\x8b\xee\x38\x59\xc8\xa5\x50\x93\xe6\x5a\x2c\x91\x95\x6b\x5c\x3a\x17\xce\x02\xa2\xea\xa6\x2e\x8a\xe2\xc8\x87\x06\xc4\x49\xe9\xb6\xac\x46\xed\x48\x72\x4d\x9f\x83\x7d\x0b\xd8\x2f\x66\xa2\x3a\x9d\x27\x17\x36\x25\x75\x1d\x4f\x2b\xa9\x09\x10\xc4\x7d\x2b\xd9\x15\x1a\x26\xa4\x72\xae\x36\xa5\xc1\x76\x13\xe3\x15\x5b\xd7\xdd\x25\x57\xbc\xc9\x7a\x81\xa2\x58\xa2\x6e\x92\x9b\xb3\x19\x99\xba\x9b\x3d\xf0\x1d\x7b\x9a\x53\xf3\xdd\x25\x4d\xa7\x8d\x99\xaf\xbb\x8a\x47\x98\x8f\xae\x92\xa6\x14\x74\xeb\xb6\xf2\x7e\xed\xfa\xd4\x9f\x74\x0f\xcf\xcf\x2e\xaf\x0e\xce\xae\xd4\x35\x0f\x92\x2b\xaf\x3b\x06\x75\x92\x3f\x97\x49\x39\x76\x81\x5e\xb5\x76\x94\x94\xfb\x88\xd5\x70\x2d\x41\xd5\x6a\x33\x19\x22\x78\x62\x61\xbb\xcb\x4c\x1d\x4f\x29\x69\x18\x94\xd4\x59\x91\xab\x27\x39\x45\xf7\xdf\x38\x44\x5d\xa3\x6b\xe8\xa9\x83\x74\xc5\x2d\x91\x3f\xa5\x90\x1e\xd3\x5a\x39\x04\x96\xf3\xff\xb4\x15\xbc\xa1\xd2\xec\x6f\x25\xd9\x36\x67\xb2\x58\xb3\x37\x8c\x1c\x8c\x45\x11\xcf\x28\xc2\x77\x54\x27\x6b\xa5\xf8\xba\x96\x31\xac\x1c\x28\x73\x67\xf3\x11\xc0\x2d\xc0\xde\xf3\xcd\xf5\x80\xc8\xc0\xd7\xff\xc6\x09\xb2\xa3\xb5\x37\xb3\x26\x4d\xb5\x36\xbb\x07\xf3\x62\x1b\x71\xfa\x1e\x9b\xba\x4d\xf1\x77\x9b\x0c\xd3\x6e\x54\x61\xf3\x60\xce\x92\xfc\x37\x2d\x3a\x59\x09\x98\x05\xa9\x0b\x2f\xe8\x94\x04\x89\xeb\xeb\x8f\x54\xdd\x17\xf4\x96\x41\x44\xba\xbd\x35\xed\xf7\xfa\xc0\x54\xe0\x68\x7d\x95\x09\x60\x2b\xa2\x2b\x93\x1b\x8b\xca\xa5\x85\x17\xb2\x59\xa6\x51\x82\xcc\xda\xe3\x05\x24\xb5\xba\xee\xa6\x9d\x95\xf8\x39\x2a\x10\xde\xea\x7d\x55\x35\x6e\x1a\x83\x4c\xab\x68\x63\x26\xbf\xa0\xe1\x7a\xf2\xf4\xf2\xd2\x38\xe3\x4b\x48\xd7\x2c\x0f\x02\x5a\xb4\xb9\x81\xdd\xdc\x50\x11\x47\x41\xcd\x66\x95\x20\x74\xb2\xf4\xfe\x30\xa5\x89\xd0\x3b\xc0\x25\xcf\x6c\x74\xb9\xa6\xa8\xa5\x68\x14\xde\x8d\x55\x21\xf3\x46\x7d\xa4\x4e\x27\xec\xdf\x54\xca\x29\x71\xc3\x06\x41\x06\xf9\xff\x4c\x06\x18\x4b\x5a\xa4\xec\x0d\x5a\x26\x3b\xeb\x72\x1f\x10\xe2\x0d\x35\x17\xbd\x4f\x6b\xe5\xf4\x90\xf8\x1b\x22\x5c\x24\xe6\x6a\x45\x9c\x32\x13\x33\xa2\x6f\x44\x13\xb8\x88\x5b\x59\x30\xf1\x72\xa1\x5b\x34\x22\xac\xc2\x2c\xce\x70\x82\xb0\x18\x50\x3a\x04\x2c\xb4\x89\x92\x7d\xf2\xe5\x5c\x1f\x8a\xf0\x1c\x61\xe9\x02\x5c\x74\x12\xf0\xd4\xa4\x7a\x4f\xa0\x83\xfa\xba\x80\xe1\xba\x90\xe4\x39\x15\xf2\x6a\xa6\x16\x95\x49\x1d\xe3\x3b\x41\x71\x66\xc5\x8a\x75\x77\x0a\xc5\x6a\xc6\x46\xc9\x58\xda\x0f\x08\x1f\xaf\x9d\x1f\x9f\x81\xc4\x0a\x1e\xbc\xd4\x3d\x61\xba\x86\xba\x8c\x73\x0a\xde\xf6\x8a\xf2\x88\xc0\xfc\xab\x2e\x37\x30\x8b\xeb\xd4\x77\xd0\x84\xe1\xbb\xeb\xb2\xeb\x94\x97\x01\x74\xcc\x2c\xd7\x1a\x61\x45\x82\xfb\x3a\x0b\x67\x2c\x07\xd4\x24\x6f\xa4\xfc\x16\x9b\xa8\x84\xfe\xb4\xfb\x4e\xb0\x39\xd3\x61\x5f\x66\x76\xc2\x1c\xab\x30\x83\x95\xb9\xbb\xfc\xd6\x3b\xe0\xc3\xab\x76\x1c\x82\xf3\x9d\x6b\x5d\x92\x4f\x06\x40\xa8\x49\xf0\x2c\xc3\x04\xcf\x82\x40\xe8\x81\x06\x11\x73\x51\xbd\x5e\xef\xf7\x99\x96\x14\x2d\x54\x7f\x1c\x28\x06\x0f\x4a\x1f\x40\x48\x03\xe0\xf1\xca\x41\x4f\x91\xb1\xb3\x7f\xe0\xdd\xc0\x76\x82\xf6\x75\xbd\x83\xde\x10\xf5\x4d\x4f\x81\xb1\x5d\x51\xfc\x91\xe2\xb7\x4d\x19\xed\xca\x49\xbf\x5c\x2e\x30\xeb\xfd\x30\xa0\x98\xe2\xad\xde\xd0\xd8\x7f\x68\x37\x5f\x5e\x6b\x45\xa7\x9a\x32\x04\x1b\xd4\x3f\x92\xdb\xbb\x76\xb4\x03\xb5\xb7\xb7\x76\x87\x05\x7e\x57\xbf\x2d\xe3\xcc\xc2\x0d\x8b\x41\x6f\x88\x73\x22\x06\xbb\xc3\x96\x18\x3c\xd7\xbe\x18\x6c\xa2\x86\x9a\xdb\x1c\x5c\x3e\x7e\x85\xe2\xc4\xa3\x21\xc3\xa1\xb4\xec\x74\xe2\x25\xa1\xd6\xd8\x7e\x32\x51\x57\xc3\x4d\x84\xb4\x34\xc9\x6e\x78\x37\x0f\x43\x43\x54\x9b\x78\x89\xb7\x7a\xd8\x27\x76\x4d\x49\xe2\x27\xa7\x1b\xa1\x9f\x76\x76\xf1\x98\xa4\xfb\x07\xea\x0c\x4b\xac\xfb\x47\x37\x42\xa8\xff\x19\x1e\xa1\xd6\x8d\x81\xdc\xf7\x21\xd0\x27\x97\xa3\x0f\x27\x97\x27\x2f\x4f\x8f\x21\xee\xf9\x2e\xa5\x30\xb6\x20\xe0\xe7\x8a\x76\x3a\xf1\x18\xce\xcc\x2b\x55\xcd\x18\x43\x6d\x11\xcb\x3f\xb0\x9c\x5d\xa7\x34\x42\x10\x9d\x57\xe9\x71\x8e\xc7\x78\x6b\xd7\x74\x17\xff\x8b\x92\x31\x05\x6b\xe0\x22\x4d\xee\xfa\x6d\x9e\x71\xba\x17\x3d\xd4\xa1\xf8\xea\x01\xd1\xc4\xa8\x8e\x2d\x77\x31\x46\x0d\xd3\x2f\x2b\x7b\x28\x8e\x63\xa4\x0e\x99\xdc\x18\xb3\x4d\x36\xbf\x56\x42\x6c\x3c\x00\xd0\x1e\x0c\x52\xc2\x70\xe3\x31\x5b\x63\x3e\xc1\x01\x0b\x1d\x70\x0c\xdf\x66\x8f\xb6\x1d\x71\x6c\xc7\x7a\x54\x48\x0f\x5d\xc3\xa6\xb1\xc3\xbe\xa5\xdb\x51\xbb\x32\x43\x4e\x61\xab\x64\xe8\xfd\x31\x8d\x05\xea\x0b\x7b\x43\xfc\x17\x35\xa9\xc5\x1a\x58\xe2\xb4\xeb\x3c\x60\x7d\x24\x96\x39\xf0\x3e\x56\x29\x1e\xdd\xcb\x0a\xb9\x69\x4a\xc0\x66\xd1\x29\x6e\xac\x4e\xc7\x46\xc7\x25\x4a\x10\xc8\xaf\xba\xe6\xe5\x87\xeb\xb5\x51\x61\xd6\x41\x48\xf3\xd5\x1b\xaa\xd3\x72\xb0\xab\xf6\x1c\xb3\xdb\x0d\x62\xa5\x50\x75\x43\x68\x08\x70\xbc\x69\x2f\x25\xc8\x6d\x18\x9f\x8d\x63\x09\xda\x97\xa6\x7d\x93\x05\x5b\xa6\x3f\x18\xe2\x89\xdd\x4b\x63\xb3\x81\x32\xd4\x5a\xfa\xe4\x69\xc9\xbe\x46\x46\x8f\x27\x38\xdd\x1f\x0f\xc6\xde\x1e\xdb\xcf\x10\xa8\xcd\x4e\xd4\xbb\x04\xe7\xb5\xbd\x61\x3b\xbf\xf4\x73\x55\xe0\x8b\x0d\xb4\x5e\xa2\x73\x23\x6f\x2f\x12\x39\xb3\x34\xaf\xe8\x9a\x02\x21\x6b\xbb\xbc\x45\x82\x9c\xbc\x53\x1f\xc1\x5d\xa2\xc1\xb0\xf7\x68\x8a\x06\xc2\x85\x0c\x2e\xa5\xd3\x54\xf5\xa0\x04\x09\x5d\x6e\xd7\xe6\x54\xac\xf4\x26\xee\xe1\x51\x88\x55\x29\xbd\xca\x83\xae\x56\xd0\xca\xbe\xb3\x4a\x05\xc9\xcf\xf0\xc9\x46\x66\x50\xbb\x0a\xe9\xd4\x5e\x95\xfc\xd4\x41\xfe\xec\xd2\x64\x4a\xb1\x94\xb3\x3b\x97\xca\x3f\x49\xf3\x3b\xcb\x3e\xdc\xdc\x7e\xd5\x14\x5a\x66\xa0\x1b\xc0\x3e\x5d\x5f\xee\xdd\x56\xed\x34\xef\xcb\xbe\x30\x63\x3d\xaa\x5a\xc0\x75\xb4\x7a\x84\x5a\x2e\x70\xfd\x48\x2b\xd3\xcf\xaa\x5f\x5e\x9e\xbf\xbf\x38\x3c\x8e\x10\x3e\xfd\xae\x72\x9b\x9a\x06\xcd\x2b\xf9\xe0\x8c\x0e\xd5\xb3\xbf\x49\x86\xb3\xd3\xd1\x24\xcb\xd5\x3f\xb6\x61\xa0\x9b\x22\x4f\x37\x57\xb1\x29\x64\x55\xd7\x7c\x44\xbf\xb1\x8a\x06\xd1\x50\xc7\x9d\x57\x17\xef\x00\x32\x00\x85\x1e\x0e\x5f\x42\x13\x6c\x80\x01\xf7\x9e\x56\xb8\x29\x86\x64\x7c\x0d\x66\x58\xa1\xfa\x8f\x18\x11\x38\x23\xf0\xb7\x67\x86\x89\xfb\xa6\xe5\x41\x4f\x48\xb2\x1f\x33\x22\xc1\x3a\x60\xa0\xc8\x3a\x1d\xf7\xe7\x40\x0c\x51\x3f\x6c\x85\x24\x3a\x6d\x9f\xaa\xdd\xed\xe4\x46\x87\xa5\x6a\xec\x2f\xd6\x69\xef\x75\x4a\x20\x48\xf0\xdb\xdb\x13\x2f\xe8\x9e\xd8\xde\x46\x72\x20\x86\xbe\xc0\x40\x0c\xad\x51\xc2\x84\x4f\x30\xad\x3e\x96\x38\x4d\xae\x69\xda\xf7\xe0\x96\xe3\x34\xcb\x97\x82\xee\x98\xc0\xb6\x27\xf9\xfa\x69\xb7\x4c\x1b\x12\x97\x34\x5d\xd0\xb5\xfb\x86\x11\xd9\x8d\x39\x60\xc0\x70\x36\xb4\x69\x34\xb9\x62\x68\xda\x6d\xc3\xad\xd5\x4b\x1a\x0a\xb4\x10\x4e\x8c\x95\xb0\x6a\x05\x06\xde\x98\x8f\x9e\x35\x3d\x6d\xf1\xc1\x97\x21\x61\xce\x87\x37\x23\xbd\xbd\xcc\x0b\xf7\x99\xf5\xfb\x4a\x88\x1c\x64\xea\x18\xd5\x67\x74\xa2\xe4\x4e\x31\x48\x86\xad\x06\x02\x59\x76\x3a\xcb\xc1\x2b\x3a\xdc\x17\x90\xe8\xb2\x9f\x6f\x0c\xf1\x8e\xe1\x2b\xb5\x70\x1f\xa8\xce\xf3\x84\x99\x7a\x92\x63\xae\xf3\x64\xba\xad\x0e\xb7\x02\xb8\xec\xa9\x1e\xfd\x5c\x77\xea\x79\x15\x21\xfc\xe1\xc1\x63\x6f\xb0\xec\xbe\x7d\x7f\x05\x79\xe8\x0e\x8f\x4f\x4f\x87\x64\xab\x67\x62\xec\xe9\xd0\xf2\x6f\xcd\x55\x64\x13\x8b\x6e\x50\xa4\xda\xd2\x0f\x6d\x5b\x60\xc5\x7f\x35\x26\xe9\x27\xf7\x45\xab\x92\xd9\xe4\x09\x69\x4d\xa4\x13\x40\x38\x7a\xd1\x83\x39\xe5\x43\xc8\x6d\x82\x7c\xba\xd7\x66\xa7\x0a\xd3\x8a\x4e\x91\x60\xeb\xd6\x50\x0d\xb9\x95\xab\x7a\xd0\x35\x47\x55\x8d\xdf\xc6\x14\xed\xb1\x17\xd6\x8b\x6c\x8f\xa9\x3d\xe7\x7b\x35\x60\x43\xe8\x58\x6d\x4c\x36\x0d\xf2\x49\x7e\xec\x80\x22\xdc\xc8\x54\x29\x3d\x98\x01\x1b\xc2\x78\xd4\xff\x8e\x29\x08\x1d\x18\xf7\x1b\x10\x42\x09\x35\xeb\x24\x46\x08\xff\x40\xc9\x60\xb8\x17\xf7\x70\xaa\x95\xac\xaf\x20\x56\x0b\xc5\x3f\x18\x66\xf9\x7a\xcd\x79\xc6\xbf\xc5\x9e\xca\xed\x71\xc5\x08\xaf\x1f\x57\xcc\x43\xa0\x64\x0d\xd8\x02\xb0\x89\x75\xec\x18\xdc\x34\xf5\x9f\x67\xc9\x9c\xda\x04\x20\x3e\x93\x85\x8e\x16\xf5\xe2\x08\x0a\xb3\xdd\x71\xbb\x69\x99\x03\x95\x72\x66\xaf\x68\x9b\xa3\x96\x24\x09\x38\x08\xb6\xa5\xff\xe4\x37\x6a\xc4\x5a\x25\x9d\x1d\xc5\xce\xd9\xbe\x2d\x5a\x92\xb8\x4b\x82\x8c\x19\x2a\x70\x93\x87\x46\xc3\x91\xd6\x68\x38\xf2\xe6\xa5\xb2\x05\xc9\xd6\x79\x14\x9a\xf2\x1b\xaf\xf0\x4e\xff\x68\xe5\x9f\x60\x56\x63\x87\x92\xbf\x56\x1d\xfe\x38\x15\x7e\x80\x0c\x09\x49\x0d\xb1\x30\x5d\xbc\xd2\x6e\xc9\x9b\x7b\xe6\x85\xb1\x9a\x66\x7a\x5f\xaa\x0d\x6b\x9c\x9b\x57\xab\x68\xc2\x6e\x23\x23\x97\xd6\x7c\x6c\x9a\x8d\x64\xa1\xbb\x8b\x2a\xd4\xe8\x23\x62\x61\x3a\xb4\x75\x74\x02\xa9\x74\xa3\x11\xd8\x62\x47\xa3\x08\xb9\x54\xbf\xe6\xb5\x33\x9b\x76\xe7\xc9\x02\x9c\x80\xec\xb7\x38\x23\x7f\xd1\x98\xe3\x81\x2f\xed\x94\x3c\x81\xeb\x65\xff\x07\x0a\xe6\xd8\x49\x2d\x5e\x2a\xc3\x4e\x61\x89\x8a\xc2\xe6\x4b\x09\xd0\x1e\xc0\x8d\x53\xab\xe5\xbb\x55\x5f\x4e\xef\xc6\x94\x6b\x69\x5e\x06\x9f\x58\x45\x50\xe8\xde\xd4\x94\x0e\xc6\xea\x56\xf6\xe2\x25\xb9\x2f\xd0\x20\x1f\x96\xab\xf1\x36\xe3\x84\x2c\x71\xa9\xff\x09\x6e\x9c\x21\xe3\x5f\x0b\x81\x14\xe5\x5c\x84\x39\xea\x74\x72\xef\x60\x5b\x73\xbd\x4a\x09\x24\x06\x9e\x33\x1e\x7b\xc1\xa5\x61\x4c\xad\x84\xdc\x17\x8f\xeb\x8b\x3b\x39\xc6\xa4\xb7\x37\x7e\x91\xee\x8d\xed\xb1\x3d\x25\xf9\x60\x3c\x6c\x25\x83\x69\x65\xc4\x89\x8c\xc7\xa8\x28\xea\xab\x78\xed\x6c\xf6\x17\x07\x7f\x98\x05\x4d\x0a\x45\x65\x6b\x5c\x41\x74\x66\x28\xcd\x6e\x78\xf7\x96\xd1\x4f\x38\x27\xb2\xb2\xb8\x38\x35\xb8\x27\x41\xd7\xf1\x98\xbc\xa4\x71\x8a\xf6\xe2\xaa\x19\x36\x20\x58\x36\x89\x10\x28\x00\x9d\xc6\x0b\xc0\x98\x50\xa1\x6e\x06\x63\x84\xc7\x5d\x45\xf9\x5a\xeb\x4f\x12\x3c\x1e\xbc\x1f\x92\x0c\x8f\x6d\x94\x55\xe0\x42\xe1\xcd\xfd\x9d\x4e\x3c\x36\xbc\x95\xf8\xa7\x9a\x6d\x4f\x48\x6e\xe5\xa3\x31\xc2\x70\xbb\xdc\xe4\x6a\xe2\x9d\x92\xf1\x1f\x14\x4f\x50\x4b\xcf\x00\x99\x98\x34\xf7\x09\xe8\xe0\x97\xdd\x64\x32\x71\xb8\x43\x6a\x1d\x27\x08\x4f\xbc\xdd\xa3\xe2\x1d\x6f\xec\x1e\x73\x12\x45\x5b\x84\x4c\x2c\xab\x68\xcd\x57\xab\x98\x96\xcd\x2b\x9d\xce\xa4\x6c\x3e\xb1\x96\x13\x3c\xe9\x8e\x4a\x91\x1d\x10\x61\x1d\x18\x5d\x36\x57\x53\xc2\xe0\x88\x8c\x3f\xfc\x2d\x48\x69\x23\xc5\x0e\x27\x38\xc5\x33\x3c\xf7\xba\xde\x70\xcd\xb4\x36\x42\x2d\xdb\xad\xb7\xb5\xd9\x2f\x74\x02\x11\xfd\x45\x43\x3f\xe6\xeb\x47\xb4\xd9\x9e\xbb\xc9\x7d\xe4\xd6\xba\x8f\x04\xcb\xf5\x38\xcf\x91\xc9\x53\xdd\x45\x6e\x4b\x42\xfe\xba\x7e\x85\xb6\xbd\x5b\x25\xdc\x23\x7c\x6b\xb8\xff\x7a\xd7\x08\x63\x6d\x54\xdf\xad\x77\xf7\x2b\xa5\x71\x0f\x4f\x4a\xa6\x7e\x99\xc5\x80\x8c\xec\xc1\x09\x88\x13\xe2\xaa\xdf\x03\x7a\xcd\x2b\xc6\x36\x8e\xad\x41\x2d\xa7\xb2\x6c\x68\xc3\x1c\x19\xbe\xa6\x25\xf4\x52\xbc\x38\x1e\x13\xde\xf5\x48\x0e\x78\x12\xfe\xb4\x1f\x29\x96\x9d\x76\x3a\x8e\xf3\x35\xa0\xfe\xfb\x6b\x5f\x46\x06\x43\xe8\xaf\x55\x8f\xed\xed\xec\x6e\x11\x92\xec\x59\xf5\x39\x1d\x24\x43\x9c\x92\xb7\xa0\xfb\x1e\x93\x74\xb0\x3b\xdc\x03\x1d\xbf\xd7\xd2\x8d\x15\x6d\x66\x1a\xbc\x74\x8c\xf0\x3b\x0a\x71\x4f\x29\x34\x84\x70\xb2\xb3\x53\x58\xbb\x40\xa0\xd9\x53\x9c\xc8\x3a\x51\x05\xec\x68\x3f\xf8\xbb\x0f\x17\x92\x9b\x25\x9b\xbc\x02\xa3\xac\x62\x07\x75\xb5\xfb\x26\x15\xe3\x24\x50\x77\x6e\xd6\x65\x3b\x59\xef\x23\xed\x74\xaa\x7d\xd5\xea\x56\xd4\xe9\x7c\xa4\xc6\xe8\x58\xa0\x58\x8d\x2f\xc1\x02\x67\x81\xf6\x72\x46\x78\x30\x14\xbe\x76\x28\x90\x00\xe6\x69\x43\x99\xf9\xa1\xe0\xcd\x43\xf9\x48\x63\xdd\x2f\x35\xed\xc6\x3e\xba\x30\x79\x22\x21\x9f\xb8\xbd\x24\xfc\x42\xef\xea\xfd\x30\xba\xcf\x85\x9f\xb8\x71\xa7\x63\xb5\xa7\xea\xaf\xe6\x64\x59\x4f\x57\xff\xd2\x50\x15\x8d\xf0\x44\x71\x2a\xdb\xca\xa4\xb9\x95\x43\xb0\x93\x40\xe4\xaa\x4e\x88\xf7\xe4\x46\x4d\x68\xa7\x3a\x54\xa2\x60\x42\xa3\x44\xb0\xe4\x22\x4b\x69\xc4\x78\x9b\x77\x3a\xd5\x9a\x85\x7a\x85\x3f\xab\x89\xf5\x9f\x06\xe5\xf9\xc6\xd3\x21\xab\x72\x65\xbe\xf1\x74\x30\x1c\x69\xa3\x67\x95\x63\x44\x83\x0f\x43\x22\xf1\x23\x5d\xad\x9e\xee\xa7\xe3\x65\xf4\x46\xf9\x5c\x71\x7a\xb8\x65\xd5\x04\x75\xb9\xdf\x6c\xc8\x19\xbc\x1c\x0e\x51\x5f\xfd\x57\x62\xbc\x0f\x48\xff\x74\xbd\x47\x04\x48\x33\x95\xd9\x67\xfc\xe8\xfc\x6d\x04\x32\x4a\x20\x13\x54\xa6\xb9\xf2\xd6\x9e\x8b\x30\xe4\x06\xa5\x44\xd3\x65\xc9\x4c\x00\x37\x7f\x58\x8f\x17\x38\x1c\x82\x0e\x6f\x72\x99\xed\x74\xd8\x43\xbe\x59\xc1\xea\x8a\x27\x08\x50\xbf\x80\x8f\x94\xe8\x74\xb6\xac\xd7\x0d\xe0\x43\x79\xaf\x1b\xcc\x5d\x82\xaa\x97\x34\x16\xa8\x55\x1e\x05\x59\xef\xac\x03\xf0\x89\x3d\xc8\x17\x25\x8d\xde\x42\x07\x30\x98\x57\xbb\x95\xb9\x0d\x90\xed\x1a\xe6\x3d\x94\xd4\x0a\xd6\xb0\xba\xa5\xcd\xa2\xeb\x2a\x57\x13\xca\x35\x76\xfb\x6c\xf0\x64\xfb\x5b\x77\x4b\x83\xb7\xfe\x57\x91\x74\x7d\xfe\x36\x93\xec\xc3\xee\x6c\xb4\xc0\x1c\x1c\xd6\xbc\xf6\xfa\x8f\x92\xf6\xba\xeb\xc9\xea\x88\xca\x84\xa5\xb9\x0e\xc0\x63\x89\x99\x5d\xc8\x46\xe2\xf5\xa6\xbf\x3c\xb5\xf4\x6e\xa1\x4d\xb8\xbf\x52\xfc\x86\xe2\xdf\xeb\x71\x06\xbd\x52\x9c\x41\xaf\x1c\x67\xd0\x0b\xe3\x0c\xb6\x7a\xd5\x88\x82\x5e\x39\xa2\xa0\x57\x89\x28\xe8\x6d\x8a\x28\x70\x5f\x37\xc6\x0e\xf4\xca\xb1\x03\xbd\x02\xff\xa9\x3d\xfe\x5e\x53\x4c\xab\xc2\xa2\xb3\x7a\x2b\x51\xd8\xea\x3f\xcb\xb7\x37\x67\x16\xb4\x10\xb0\x22\xf0\xc8\xe3\x65\x9f\xc0\x3f\x69\xe8\x30\xa8\xbd\xea\x29\x2e\xd7\xd7\x97\x5e\xac\xae\x04\xef\xfc\x4e\x8b\x02\x4b\xb9\xd6\xd2\xe4\x80\xd7\xb5\x7e\x49\x84\x76\x26\x67\x65\x0a\x5d\x07\xc5\x57\x59\x95\x36\x69\xb7\x4a\x46\xb9\x92\xe6\xa9\xe4\x1b\x87\x36\x39\x4f\x83\xea\xcb\xa8\x85\x42\x1f\xea\x07\xc2\x2d\xca\x2d\xe0\xec\x69\xd7\x53\xe6\xae\xa7\xcc\x58\x3f\xe0\x82\xc9\xdc\x05\x33\x69\xba\x60\xb2\x35\xd7\x31\xf6\xb4\x0b\x26\x7b\xc4\x05\x33\xf7\x17\x4c\xa6\x71\xc9\xb2\xc0\x03\x66\x23\xe3\xdb\x74\xfd\xcb\x1f\x73\xfd\x6b\x8e\x55\x60\x6b\xee\x7f\x39\xd8\xe0\x5e\x53\x84\x85\x7c\x20\xf8\xa8\xb7\x21\xf8\x28\x84\xd8\xfa\x5f\xcc\x14\x76\x0b\x5c\x0e\x13\x5b\x13\xde\x6b\x10\xc4\x8d\x27\xa6\x5a\x1f\x09\x18\xdc\x65\x47\x60\xe3\x2f\x05\x7a\xf8\x1b\x6a\x11\x57\xe1\xea\x60\xbf\x0d\x19\x82\xe8\x4e\x97\x29\x24\xd7\x36\x91\xf9\xbb\x3d\x54\xe6\x03\x42\x56\x79\x86\x28\x9a\xac\x31\x0d\xb2\x9e\x57\x93\x3a\x99\x53\x09\x6f\x95\x30\x62\x19\x7c\xfa\x86\xae\x56\xf1\x1b\xba\x16\x62\x31\x89\x10\xc2\x6f\x68\x77\x26\xe8\x94\xa8\xa3\x40\x77\x60\x9c\xa5\xfe\x6c\xc9\xa4\x3f\x36\x41\xd7\x67\x5c\xd9\x6a\xb9\x1f\xc0\x99\xe0\x57\xda\x5d\x24\x22\x57\x53\xed\xea\x42\xd8\xe6\x7e\xda\x8f\xfa\x51\x5f\x6a\x4d\xa9\x24\xbd\x20\x57\x6e\xd0\x6b\x48\x1c\x12\x11\x42\x28\xa0\x3a\xae\x56\x91\x35\x50\x94\x1e\xda\xbb\x53\xe9\x21\x24\x12\x93\x99\xf0\x0f\x75\x96\xdd\x87\x08\x82\x4d\x48\x22\xb7\xb7\x43\x1b\xd9\xc6\xe8\xda\x66\x5f\x22\x5f\x5a\x47\x54\x42\x6a\xe3\xf0\xbb\xa0\x7a\x1b\xe0\xd8\x14\x96\xad\xd9\x70\x74\x41\xa7\x6d\x13\x9a\xcd\x26\x41\xd4\xab\xaf\xc5\xb9\x47\x6d\x47\xed\xd8\xb4\x37\x41\x11\x40\x66\xfa\x57\x7d\x5b\x8b\xee\x9a\x86\xd0\x0c\x9c\x16\x4d\x28\x3a\x4e\xa5\x89\x72\x0e\xc8\x50\xd0\x05\x4d\xe4\x6a\xd5\x40\x87\x81\x49\x7a\x7b\x17\x81\xb9\x57\x9f\x56\xda\x7a\x35\x5e\x37\xe7\x2e\x66\x3d\x19\x7f\x84\x7d\x77\xdd\xbd\x54\x7f\xdb\x30\xd8\x69\x5e\x42\xce\x77\x0e\xe9\xfa\xf1\x25\x35\x67\x36\xcf\x26\xb4\xe1\xcb\x45\x22\x67\x67\xd5\x57\x9b\x96\xf2\x9a\xde\x30\x5e\x5b\x24\xc8\x77\x16\x83\xdf\x74\xc3\xd1\x65\xf5\x50\x55\x83\x80\xc4\xf7\xd7\xd9\x92\x4f\x72\x0b\x6c\x38\xcd\xfb\xb6\xd3\xaa\x63\xee\x57\x61\x78\x07\x0c\xc2\xa1\xf5\x1b\xe1\x63\xb1\xa0\x5c\x6b\x55\xc1\xea\x66\x9d\xf3\xbc\x27\xf7\x1a\x4b\x6d\xe9\x9b\xf5\xd9\xc9\x5c\xc3\xaf\x20\xeb\xab\x17\x7e\x64\x29\xa0\xf6\x81\x52\x7a\x9c\x56\x80\xa2\x9f\x99\x99\xad\x46\x27\x7b\x0a\x9e\xe6\xd7\x5d\xfa\x79\xa1\x3d\x88\xed\x4a\x1b\xaf\x14\x1c\xbd\x7c\xff\xba\xdf\x9e\xb3\x3c\x67\xfc\xa6\x2d\xe8\x34\x42\x76\xff\x98\x45\xc8\xe6\x73\x26\x37\x2e\x93\x56\x72\xae\xdb\x96\xe6\xf5\x05\x9d\xe6\xb1\x27\xa9\x60\x81\xc1\xe7\x6a\xa3\x7c\x02\x14\x6b\xc1\x0a\xbd\xf9\x99\x04\x9e\xef\xf5\x51\xea\x15\x56\xc3\x64\x76\x98\x07\x52\x4d\xb9\xa4\x93\xb6\xcc\xda\xba\xf1\x76\xd2\x56\xf4\x81\xdb\xd7\x4b\xd9\x96\x33\x2a\x68\x9b\xe5\x6d\x9e\xb5\x4d\x6b\x6d\x2d\xf7\xb4\x21\x23\x69\x18\x01\xcf\x51\x46\x12\xaf\xf6\xca\x49\x02\xc2\xab\xf1\xae\x5f\x12\x98\x66\xad\x79\xc9\x03\x5b\xba\xd6\x2d\x2e\xf7\x33\x72\xaf\xcd\x0c\xfd\xc4\xc0\x59\x3b\x5e\xab\x25\x89\xe8\x9f\xd1\xb6\xae\x2d\x1f\x2c\x87\x15\x22\xee\xc7\xe5\x2d\x07\x5a\x72\x6e\xa4\xd5\x60\x5a\x63\x8e\x23\xf5\xc8\x24\x85\x8a\x8c\xae\x26\x23\x95\xe2\x6a\x96\x38\xb2\x4e\xbb\x36\x19\x38\xf4\x4b\x60\xd3\xcf\xac\xd2\x87\x56\x06\x15\xe4\xdd\x64\x32\x89\xad\xcb\x9a\xaf\x52\x6f\x2d\xf0\x1b\x94\xdd\x34\x33\x42\x14\xf0\x9b\x57\x99\xa8\xac\xb9\x57\xc6\xca\x86\x95\x2c\xf7\x93\x6e\x5e\xcd\x34\xbb\x69\x4f\x33\x61\xd6\xb5\xed\x16\x41\xaf\x30\xcf\x60\x25\xdb\xf4\x33\xcb\x25\x7c\x27\x67\x89\xf4\x5f\x45\x08\x0b\x32\x18\xee\x39\x5d\xa8\xec\x74\x72\x19\x4b\xb4\xa7\xa1\xa4\xc2\x63\x4e\x63\x1f\x7b\xab\xa7\x9e\x27\x13\x70\x3e\x88\xb6\xed\x9f\xc3\xc8\xa6\xba\xe6\xe0\x79\x6b\x3e\xd4\xd6\x72\xd1\x5d\x72\xed\x89\xae\x3f\x47\xad\xe0\x0b\x3b\x29\x8c\x0c\x84\x66\xf3\x51\x37\x42\x61\xef\xf6\x90\x8d\x13\xde\xb2\x1d\xea\x74\xa2\x1d\x99\x2d\x76\x52\x7a\x4b\x53\xfd\x58\x55\xbc\x1f\xb3\x6a\x53\x41\x67\x50\xdf\xff\xed\x5d\x0b\x2a\x59\xd0\x03\x77\xfa\x68\x3b\x16\x24\x6a\x47\x98\x93\xe7\xff\x3f\x89\x53\xa9\xef\x4c\x6a\xe3\xa2\x6d\x2d\xda\x09\xcc\x0b\x64\x4e\xa7\xe8\x3f\x79\x64\xc1\x0e\xca\x07\x38\x9b\xc6\x3d\x0b\x49\xa7\xb7\x79\xce\xbe\x50\xa4\x46\xbe\xb7\x15\x3c\x65\xf9\xf1\x7c\x21\xef\x62\xb4\x87\x82\xa7\x00\x08\xa4\xea\x05\x06\x5c\xe7\xcb\xe6\x2b\x9b\x52\x4c\x02\xbb\xac\xf1\xb2\x4a\x5d\x86\xd7\xae\x73\x3e\x58\xc3\x64\x6a\xbc\x54\x73\x0c\x55\x61\x70\xae\xac\xc7\xdf\x28\xf1\x38\xcc\xe1\x10\x5d\x2a\xca\x73\x11\x51\xc0\xb6\x75\xe2\x27\x8e\xac\x49\xc6\x70\x48\x7b\x3e\x08\xd4\x62\xfa\x43\xb5\x2b\x21\x4f\x9b\x5e\x54\xc2\x8c\x77\x86\xe3\xc0\xe6\x8b\x80\x83\x2b\x16\xbd\x26\x2e\x05\x76\x85\xf7\x40\xa8\xab\xa6\x83\xf8\x7d\x35\x1b\xa8\xc5\xf6\x0d\xd1\xbb\xea\xd5\x16\xb6\xf7\xc8\x1d\xd5\xe1\x7e\xb4\xcd\xbb\x6c\x82\x19\x42\x7d\xda\x9d\xd0\x94\x4a\xaa\x7a\xa4\xb3\xc1\x97\xca\xad\x9f\x37\x3b\x72\x08\xa5\x10\x3a\xb3\x05\x33\xb6\x41\x9c\x11\xa1\xf5\x93\x09\x11\x5d\x7b\x05\xc3\x39\x11\x30\x47\x78\x49\xc2\x13\xca\xf9\x66\x08\x64\xb1\xfa\xcc\x9b\x97\x70\xe4\xaa\xe7\x63\x52\x3b\xd3\x72\xe7\xb9\xc0\x26\x7d\xaa\x99\x26\xd7\x3c\xdc\xb8\x00\xba\x50\x7a\x7f\x0b\x4c\xfc\x2d\x70\x89\x8d\xe4\x92\xe2\xb1\x22\x11\x41\x79\x7f\x5c\x04\xe3\x6f\xcc\x5f\xba\x26\xae\xba\x2d\xc1\x3c\xdc\x18\x5b\x0d\x4c\x4e\x50\xd1\xf5\x90\xd7\x1a\x06\x2e\x68\x4b\x8f\xb4\x39\x47\x89\x27\x7d\x6a\x84\x90\x0a\xc5\xeb\x87\x91\xf7\xe4\x00\xca\xb3\x69\x17\x2c\x7b\xb1\x77\x20\x84\xa7\x36\xdf\x56\x5f\x76\xdd\xdf\x4a\x1c\x4e\xdc\x63\xfb\x67\x8c\xac\xac\x3c\x7d\xf0\x46\x11\x7a\x4d\xc3\xc4\x5f\xb9\x98\x0a\x38\x24\x40\x95\x98\x5c\xa7\x61\xa2\x9b\xa6\xb8\x8b\xc0\x5d\xdd\x56\xf3\xfd\xe2\x2f\x20\x24\x47\x26\x37\xaf\x32\x61\xa3\xbb\x68\x25\xea\xeb\x9d\xc8\x3e\x43\x46\x2b\x80\x41\x8a\x7b\x38\xe9\x8e\xc6\x19\x97\x94\x4b\x73\x0d\x06\x03\xea\xc4\x48\xa5\x2e\x07\x8f\xeb\x2d\x84\x17\xd1\x4f\xed\x89\x34\xdc\xef\xf1\xbe\xca\x30\xd5\x13\x59\xe7\xa8\x66\x76\x83\x30\xdd\x59\x78\xef\xa5\x6d\x4b\xe2\xd9\xb4\x3d\x91\xfb\x61\x79\xc5\xc7\x08\x75\x57\xd2\xd5\xca\x82\x34\x39\xc0\x27\x19\xfa\x13\x6e\xd5\x70\x64\x9d\xc3\x8b\x3b\xa2\xca\x7e\x32\x14\xad\x56\x66\xee\x8e\xe7\xd7\x54\xc0\x53\x35\x4f\xfb\x77\xb2\x3b\x15\xd9\xfc\x44\x89\x61\x6a\xe5\x63\x8a\xfa\x79\xf7\xe7\x83\xcb\xd1\xd9\xc1\xd5\xc9\x87\xe3\xd1\xe5\x1f\x6f\x5f\x9e\x9f\x76\x3a\xc7\x6a\x30\xfb\x23\xfd\xb9\xfa\xea\x93\x0c\xca\xbf\xd2\x6c\xcf\xd6\xd0\x50\x6b\x11\x53\x3d\x45\xa8\x09\x1d\x35\x8c\xe5\xa3\x65\x3f\x9e\x35\x03\xda\x9f\xfb\xae\x34\x0f\xed\xd6\x7f\xb0\x61\x44\x37\xd5\x11\xcd\x1b\x47\x04\xdc\xc0\x82\x9f\x2d\x1e\xda\x69\x26\xfb\xb4\x8d\xf6\x30\x1e\x3f\xa4\xb7\x69\x8f\x98\x73\xbc\x7e\x59\x00\xdc\xdd\xee\x9c\xce\xb3\xe6\xb3\xb7\x0d\x57\x7b\x4e\x3f\xaf\xd3\x9b\x3a\x8f\xed\x52\x6f\xe0\xf4\xfc\xc9\xe3\x5c\x3a\x1a\x12\xc1\x6d\xde\x9d\x1f\x5a\x05\xa5\xfb\x10\xb8\xfd\x95\x6a\xdc\xde\xb6\x89\xc9\x05\x56\x9f\xf6\xb9\x65\x4d\xf3\xaf\x53\x32\x63\x17\x7d\x68\xb5\xcd\x89\x5a\x5d\xd0\x34\x3f\x14\x5c\x09\x8b\xd8\xac\xab\xb2\xfe\x62\x10\x04\xa4\xea\xf5\xc1\x2a\xa2\xba\xf6\x0d\x0c\x7f\xf3\x71\x1f\x30\x0f\x27\x5e\x59\x28\x49\x20\x34\x08\x37\xad\x86\xa1\xac\x59\x59\xa3\xf9\x17\xc9\x1d\x24\xf8\x16\x45\xbc\x90\x08\xdf\xfe\xbf\x67\x36\x1f\x35\x4c\xe0\xf8\x9a\xe3\x1d\x58\xf1\x11\xba\x86\x4d\xfc\x85\x1a\xf4\xdd\xfa\x41\x3f\x14\x11\x53\x1d\xf6\x47\x7a\x97\x43\x5c\x8c\x86\xcf\xdc\x18\xd2\x6c\x86\xee\x38\x59\x03\x3d\x18\x3f\x6b\x55\xab\x8e\x84\xb0\xf3\xac\x76\x58\xaf\x06\x09\xe7\x11\xbc\x07\x43\xcc\x48\x6f\x8f\xbd\x10\xe0\xc2\xed\x6e\xec\x72\xc0\x86\xad\x4c\x3b\xd7\xc0\x31\xc6\x72\x97\x10\x35\x46\x3a\x0e\xbf\x1c\x6a\x0e\x0f\xf4\x99\xa9\x23\x59\x11\x2e\xf3\xcb\x0c\x35\x04\xa8\x97\x4a\x65\x38\x1a\x0c\x23\x04\xc1\xa0\x40\xb7\x2e\xec\xbc\xed\x16\x56\x89\xd7\x8f\xdd\x23\x20\x17\x63\x4e\x7a\x98\x91\xad\xdd\x8d\x3b\x06\x67\xe8\x3e\x66\x84\xad\x56\xd5\x28\x93\x9f\xc8\x73\xf0\xb8\x37\x1d\xc2\x2e\x09\x32\xe6\xdb\xdb\x6a\x5b\xe9\x8c\x94\x6a\x5e\xfb\x6c\x3f\xe8\xa7\xd0\x51\x7c\x73\x19\x0b\xa3\xfb\xdb\x14\xd2\xb4\x69\xf7\x69\x1a\x81\xed\xc7\x37\x31\x61\xf8\x58\xd1\x40\xb8\x53\xaf\xd7\x1e\x14\x3e\x2e\x50\x6a\x47\x7c\x7b\x58\x08\x9a\x2f\x53\x87\xc3\x11\x1c\x1d\xb4\xbe\x07\xcd\x69\x32\xd0\x61\x01\x5d\x7b\x05\x1f\xc6\x9a\x0a\xd5\x91\x10\x07\x6e\x83\x93\x8c\x53\x3d\x57\xa5\x99\x2a\x5a\x5f\x7f\x2a\x6d\x38\x75\xec\xc0\xec\xb9\xa3\x07\xe6\x70\xcd\xc3\x53\x08\x7a\xb6\x0e\x37\xd1\x9f\x43\x18\x10\x13\xcb\x27\x11\x16\x6b\xcf\xa2\x70\x3a\xa9\x99\x0c\x7b\x40\x71\x7d\x40\x31\x7b\x40\xdd\xac\xe5\x2e\x7f\x23\xde\xdb\x26\xda\xa3\x56\x69\xdf\x44\x74\x21\x8e\x22\xd0\xda\xb5\x44\x78\xf4\xbf\xe9\x10\x06\xbb\x0f\x6d\x1d\xfb\x61\x6f\x68\x07\xe3\x65\xe8\x4f\xa1\x15\xa6\x1e\x51\xe3\xf8\x89\x37\x0e\x1d\x3f\x50\xa2\xb6\x5b\x7c\xd1\x4b\x59\x3a\x94\x4a\x57\x8d\xfd\x46\xae\x6b\x6f\x2a\x3e\x93\x24\xc5\x91\xb9\x8a\x44\x08\x61\x9b\xd8\x21\xc4\x19\x88\x14\x3b\x5f\xca\xd9\x9d\xe2\xb6\x7d\xb8\xbd\x18\x36\xfd\xc4\x76\x80\x5f\x63\x0d\x9a\x6c\x8e\xb8\xbe\x4f\x70\x56\x40\x3d\xde\x09\xe7\xee\x88\x4d\x74\x9e\xea\x26\x00\xe3\xf6\x6d\xf7\x3a\x19\x7f\xbc\x5e\x0a\x75\xd9\xa1\x3c\x5f\x0a\x67\xda\x04\x14\x1b\xed\x86\x9b\x53\x79\x39\x9e\x51\x75\x4b\x36\x1a\x75\x54\xd5\x83\x01\x4e\x72\x6e\x3e\x32\xb9\x52\x32\x9e\x6b\x0d\x2b\x96\x26\xa3\xcb\x9a\xda\xe8\x04\x95\x65\xa9\x6a\x6d\x06\x58\xc7\xd4\x06\x75\x01\x7d\x9e\x3f\x24\x92\x03\x48\x1f\xa1\x9b\x3c\x9b\xe1\xbb\x51\xc5\xb0\xad\x01\x87\x0c\xd8\x85\x68\x62\x92\xa2\x6e\xaf\x59\xdf\x08\xb4\x51\xb5\x9d\x43\x79\xc0\xa0\x6e\x30\x2a\x3c\xb1\x2e\x5d\x81\xaa\x0c\xf6\xb3\x31\x69\xa7\x49\x9e\x2b\x9a\x19\xdc\x7f\xa4\x77\xfd\xa8\x52\x28\xaa\xa6\xe4\xde\x04\xe3\x18\x72\xdb\xea\x64\xb5\xe4\x4c\x64\x9f\x40\x60\x38\x16\x22\x13\x71\x74\x98\xf0\x7f\xc8\x76\x32\x1e\xd3\x3c\x6f\xc3\xd7\xd6\x6e\x20\x05\xa5\xed\x6c\x29\x73\x36\xa1\x6d\x75\x99\x9d\xc1\x15\x79\x41\xc7\x32\x13\xed\xb8\xde\x72\x7b\x9a\x26\x37\x6d\x96\xb7\x2d\x2e\x3d\x8a\x50\x51\x0c\x91\xe6\xe0\x9f\x1f\x3e\x6a\x65\xa6\x76\x07\xb9\xb4\x1e\x36\xd9\x89\x61\x01\x64\x66\x1e\xdd\xe8\xdd\x42\x58\x77\x64\xfe\xf4\xcf\x13\x39\xd3\xb8\xbc\x0e\x02\xde\x3c\xca\xa9\xb3\x38\x49\x91\x00\xbd\x9c\x83\xd6\x53\x1f\x83\xa1\x6b\x06\x91\xb8\x76\x7e\xab\x13\xd0\xa6\x29\x04\x7b\x35\x93\x36\x28\x2f\x9a\x66\xd9\x75\x22\xfa\xd7\xc9\x17\xb5\xd3\xed\x4f\x50\xb1\x23\x6f\x18\x7f\x95\x89\xf7\x17\xa7\x84\x49\x30\xba\xb4\xd9\x34\xae\x81\x3c\xbf\xbf\x38\x45\xbf\x52\xf2\xfe\xe2\x14\xd7\xca\x65\xd2\x85\xa2\x45\x4b\xae\xd3\xba\x4f\x7c\x51\xad\x13\x5b\xad\x1a\xf4\x0f\xfa\x55\xd7\xa4\x21\x45\xf5\xc5\xcf\x96\xe9\xa4\xcd\x33\xd9\x9e\x32\x3e\x69\x83\x97\xa1\xea\x4a\x7b\x91\x08\xd0\x8b\xcd\xe9\x78\x96\x70\x96\xcf\xc1\xe0\xa0\xde\x5c\x26\x9c\x49\x93\x75\x3e\x42\xad\x5f\x29\x29\x37\x12\x47\x4b\x91\x82\xcf\x4b\x6d\x14\x45\x61\x6c\xbd\x1b\xc4\x99\x4a\xa1\x75\x97\xe9\x1b\x6f\xa9\x54\x8b\x7c\xa4\xe8\xf6\x50\x71\xf5\xcf\x4d\x6a\xa2\xe8\xb7\x19\x4b\xa9\xa1\x6b\xc6\x6f\xfa\xff\xc9\xff\x93\x1b\xfb\x76\xb3\xb3\x4c\xa3\xd5\xa7\x6e\x25\xdd\xd0\x76\x18\x7a\xa0\x2d\x58\xad\x92\x86\x69\xdc\xd5\xc4\xcd\x32\x7e\x22\xe9\xdc\xf9\x3a\xef\x73\xe2\x4d\x35\xfd\x4a\x11\x7b\x52\xb8\xaf\x3b\x9d\x98\x13\xef\xd6\x80\xf0\x86\x31\x05\xb6\x35\xd5\x3b\xae\x24\x4b\x2c\xbb\x19\x87\x44\x2a\xfa\x14\x78\xd9\x68\xd8\xd6\xf5\x39\x26\x58\x29\x73\xd8\x6c\x66\xd5\x85\x3c\xb7\x03\x26\x70\xf0\x90\x83\xd0\x26\x74\xe2\xba\xd7\xe0\xb7\xe0\x10\x6f\x76\x10\xaa\x21\x0e\x7b\x89\xe7\x4a\xae\x8d\x3f\xec\x26\xf9\x1d\x1f\x9f\xb2\x29\x3d\xbc\x1b\xa7\xd0\x0f\x75\x68\xe7\x5e\x82\xf9\xb8\xa1\xb0\xef\x1c\xec\x90\xb7\xe0\x61\x14\x37\xca\x8c\xdf\x27\x2c\x37\x6b\x0a\xcb\xcd\x9a\xfd\xee\x0c\x2d\x03\x70\xc1\x84\xa6\xf4\x46\x03\xa1\x87\x81\x42\x4b\x92\x18\x1b\x72\x4a\xee\x0b\x3c\x6e\xda\xbd\x4b\xa3\xa7\x05\xcc\x0f\xc5\x59\x4b\x9a\xbf\x77\x17\xe7\xbf\xff\x81\x4c\x30\x46\x39\x77\x9c\x8d\xe0\x5c\x82\xc1\x58\x22\x6b\x49\x59\x1a\xf8\x2c\xaf\x80\xae\x80\xbc\x69\xaf\x67\x0f\x7c\x01\xba\x5c\x42\x58\xf7\xf0\xfd\xe5\xd5\xf9\xdb\xd1\xd5\xc1\xeb\xd1\xab\xf3\x0b\x7b\x6c\x8e\x0b\x3c\x4b\xf2\xe6\xd4\x74\xb6\xed\x02\x67\x9f\xf8\x2f\xf4\x2e\xaf\xa7\xb6\x6b\x2f\xb5\xe1\xbb\xc0\xe5\xc0\xf0\x23\x9a\x8f\x05\x5b\xc8\x4c\xd4\xcb\xdc\x53\x17\xed\x0d\x54\x99\xf1\x29\xbb\x59\xda\xdf\x45\x51\xb4\x7a\x38\x85\x63\x0b\x84\xdd\x38\xc5\x33\x1d\x71\x69\xe3\xd5\xf5\x91\x60\x9b\x8a\x53\x5c\x1d\x1c\xbe\x2f\x57\xba\x8b\xc3\x26\x77\x4d\xda\xdf\x71\x81\xb0\xe9\x7e\xb3\xde\x6c\x5d\x73\x14\x6f\x1e\x42\x55\x7a\xd1\xfc\xdf\x92\xc2\xba\x95\x93\xc6\x5f\xdd\xad\x5c\x01\xc2\x24\xd7\x46\xfe\x49\x3f\x0d\x12\x98\xf7\x93\x30\x9e\xd3\x16\x68\xe9\xe0\x19\x4b\xd1\xce\x87\x2e\xae\x46\x64\xea\x30\x2c\xcc\x11\x9e\xeb\x79\x96\x71\x86\x17\x10\xac\x92\x3e\xc2\xe5\xf2\xa1\x90\xbb\xf9\x57\x87\xdc\x2d\x9e\x1a\x72\x37\x7f\x72\xc8\xdd\x5c\x87\xdc\xcd\x0b\x9c\x3d\x0d\x17\x17\x7c\xe0\x1f\x0a\x7f\x68\xf9\x58\x7e\xc7\x35\xea\xb1\x78\x6a\x02\x5a\xd2\x2e\xac\x89\x79\x55\x3c\x1f\x08\x3e\x5c\x67\xd6\xb4\xce\xf8\xa3\x8c\x05\xea\x74\x84\x69\xd7\x2f\x34\x07\xbf\xfe\xec\x81\x50\x15\xd7\xb3\x72\x30\xcc\x95\x84\xc4\xd0\x41\x46\x00\x5f\xb1\xb0\xd5\x6e\x08\x17\x68\xae\x76\xaf\x49\x15\x0d\x67\x4a\xa7\x03\xa7\x43\x81\x7c\xb3\xef\x2b\xe3\xd1\xcd\xde\x50\xd9\x24\xec\x3c\x30\x1c\x19\x94\xf3\x15\xd5\x42\x2c\x6d\x2d\x94\xdf\x6e\x58\xb6\x56\xa0\x7a\x5c\x8b\xf6\x2a\xc2\x16\x39\x32\x6b\xf1\xa8\x58\x87\x6c\x63\xf0\x7f\x75\xa4\x9e\x85\x94\x5c\xeb\x0e\x24\xbe\x7f\x44\xe6\x81\xd5\x4a\xae\x3d\x88\x6d\x8f\x37\xc5\x50\x85\x0c\x8c\xe5\x87\x19\xcf\xd5\xe7\x37\xea\xaa\x2c\x51\x03\x14\x37\x30\x36\x43\x3e\x1b\xe2\xc4\xbe\x6e\xe7\x55\x63\x5a\xb2\xaf\x06\x86\x7e\x5a\x2b\xdf\x1f\x02\x43\x87\xbb\x20\xfc\xae\x1e\xa4\x81\x99\x11\x32\x2d\x01\x3c\x0a\x27\x39\xc0\x2a\x2c\x33\x18\xc2\x70\xb3\xcf\x74\x48\x14\x13\xc7\x65\x0b\x6d\xd8\x7e\x2a\xfc\xb0\x4b\x9c\x15\x9c\x43\x80\x65\x84\xff\xf5\x0d\x61\x28\x6e\x06\x44\x25\x2c\xa5\x12\x8a\xf2\x56\x3e\x2d\x14\x85\x63\x5b\x73\x5f\x14\x05\x3e\xac\xdf\x6d\x4a\xd5\x97\x03\x5d\x6a\xd5\x9a\x1c\xe0\xaa\xa6\x8b\x6f\x8c\x67\xd1\x7a\xa2\x47\xd9\xc4\x4a\x9e\xf1\x8f\x81\xfa\xd7\xdd\x7c\x02\xd0\xbf\xc1\x10\x3f\xf9\x96\x6b\xcd\xdf\x94\x74\x65\xf7\xfb\x27\x5d\x39\xda\x70\x23\xf9\x5b\xb5\xd8\xff\xbd\x99\x1a\x4e\xe4\xda\x68\xa4\x32\x70\x0c\x66\x01\x84\xc6\xe6\x54\x2b\xfa\xfa\x75\x5f\xca\xe9\x52\x78\x23\xdc\x46\x71\x32\x5b\x27\x4e\xf2\x0d\x92\xa4\x56\xee\xda\xdd\xcd\x36\xc9\x90\x59\x89\x7b\x65\x4f\x4c\xb7\x91\x81\xfa\x38\x2b\x02\x6b\x51\x63\xa2\x8b\x00\x4d\xf5\xec\xfd\xe9\x69\x08\xa4\xfa\x77\x65\xbc\xf8\x0e\x49\x03\x1e\x4a\x9b\xf1\x7d\x03\x52\x9f\x98\xa9\xe2\x49\x49\x23\xbe\x25\x67\xc4\xd7\x8c\x45\x98\xe3\xfc\xec\x61\x3d\x70\x78\xea\xf9\x48\x83\xf2\x79\x76\x24\x43\xfe\xdf\xac\x45\xcf\x75\x4a\xde\xc6\x1c\xf4\xa0\x1f\xf7\xda\xe9\xd3\x46\xf7\x32\x5a\x41\x09\xea\xa1\x02\xbf\x7a\xec\x97\x01\xcc\x64\x68\xf1\x1a\xcf\xe8\xf8\xe3\x75\xf6\x59\x87\x1b\x55\x4b\x39\xb8\xd2\x68\xc7\x7d\xd8\x8f\x76\x94\x04\xbd\x33\x65\x34\x9d\x44\x01\x4a\xa5\x0c\x99\x5f\x00\x95\x2f\x88\x2c\xd7\x16\x80\xef\x62\x4e\xc4\x40\x78\x3c\x5d\xe0\x59\x89\x8c\x77\x51\x05\xc0\x1d\x30\x69\xd9\x7e\x15\x51\x96\xa3\x3e\xd3\xd8\x53\xcc\x22\xc9\x32\xd4\x8f\x22\x50\x59\xbd\xfc\x3f\xc6\xc3\xb1\xec\xef\xb6\xbf\xc9\xc2\x57\x61\x34\xe1\x6d\x60\x93\x7b\x63\x1d\x5f\xfa\x41\xb7\x46\x38\x22\x7f\x6e\x2c\xd1\xf0\xc8\x64\xa8\x6c\x34\x0c\x50\x17\x43\xa6\x84\xd9\xfd\x28\xea\x3b\x54\xe0\x80\x6e\x3f\xc8\x75\x14\x6e\xe9\x6a\x9e\x2c\xe2\x9f\xa5\x75\x95\x8f\x82\xf0\xf2\xbf\xa4\x9b\xe3\xd0\x4b\x50\x47\xc8\xfd\x26\x89\x7a\xef\x5b\xfa\xe1\x41\x52\x6e\xc8\xdd\x1d\x64\x6b\x0e\xd0\x3e\xe9\xa0\x37\x04\xa5\x82\x09\xa6\x44\x38\xab\x83\xa3\x26\x01\x38\x6a\x86\x70\x4e\x7a\x7b\xf9\x8b\x6c\x2f\xdf\xde\x46\xc9\x20\x0f\xc1\x51\x73\xeb\x4c\xb6\x0e\xfc\x75\x1f\xfe\x35\x22\x8f\x80\x24\xd3\x80\x55\x9a\x20\xd4\xe7\x20\xbf\x9a\x77\x1c\x0f\x7e\x93\x0e\xca\x94\xe1\xa4\x04\x63\xfa\xfa\xd1\x9b\x59\x09\x16\x15\x0a\x15\x01\x82\x5d\xd3\x5e\xf6\xd6\x6d\x81\xcd\x42\x73\x0b\x3f\xf7\xc7\x57\xfb\x6d\xbd\x96\x20\x02\x59\xc1\x3c\xcf\x96\x62\xec\x41\x5b\x6a\x10\x6b\x3d\xf0\x5c\x4a\xe4\x6c\xfd\x27\xbb\x08\xf3\x27\x88\xf5\x8f\x45\x25\xf6\xc1\x00\xd5\x4e\x6e\x98\x53\xaf\x62\x36\x33\xe6\x02\x7a\x6a\xa5\xd1\x1e\x4c\x70\xae\x26\x58\xdd\xde\x28\x2a\x8a\xf5\x39\x3f\x3c\xd5\xff\x52\xde\x5f\x15\x48\x38\x4f\x1b\xbf\x3e\x48\x1b\xd8\xad\xbc\xe5\xe7\xcf\x4b\x7c\xfc\x52\xc6\x8e\xc1\xa1\x7d\x97\x3e\xa5\xef\xc2\x71\xd8\x3e\xab\x3c\xf4\xcd\xbf\x79\x74\xf3\xcf\x91\x3f\x4e\xd6\x37\xef\x91\x39\x6b\x3d\xe9\xbb\x5e\xf8\xe6\x7f\x97\x65\x4c\x50\xdf\x81\xbd\x58\x92\x71\xc6\xf3\x2c\xa5\xa8\x9b\x66\x37\xf6\xde\xe1\xb5\xfd\x41\x35\x7f\x42\x35\x61\x71\xe7\x56\x05\x13\x1f\x6a\xb4\x2e\xbb\x41\x4e\xef\xb8\x16\xb1\xe9\x6a\xd7\x27\x4e\x25\x7c\xe7\x29\x9e\x8f\x9b\xb1\xc0\xff\xb7\xc2\x00\xaf\xcb\x59\xc2\xc8\x59\x47\x74\x83\x88\x65\x30\xbc\x8f\xe8\x10\x84\xad\x75\x60\xdd\x52\x90\x41\x94\xa4\x32\xc2\x11\x04\x7a\x45\x38\x9a\x53\x99\x44\x38\x1a\x4b\x91\x46\x43\x2c\x04\x79\xf6\x7f\x8f\x53\x36\xfe\xb8\x9a\x67\xcb\x9c\xae\x64\xb6\x1c\xcf\x9e\xb5\x96\xdd\x03\x68\xd5\xa4\x41\x75\x17\x1a\x3a\xd1\xcf\x73\x3d\x57\x0d\x00\xb3\x84\x1a\xd8\xed\x13\xb7\xf6\x0f\x56\x36\x90\x80\x8a\x5c\x60\xf6\x40\x85\x3a\x24\xe8\x51\x15\x16\x38\xf4\xba\x6a\x4e\x12\x86\x33\x9c\xe0\x1c\x2f\x75\x4b\x69\x98\x2c\xcc\x80\xde\x19\x99\xca\x76\xc0\xe9\xbf\xe0\x37\x40\xb4\x8a\xf0\xc9\x41\x80\x56\xe2\x94\x61\x36\x4d\x98\xdf\x22\xc4\x24\x1a\x66\xf3\x45\xca\xc6\x4c\x5e\x69\x20\xc9\xc4\xe8\x9e\xb2\x39\xc9\x8d\x6e\xed\x96\x72\x00\xe7\x25\xd6\x1f\xe3\xd8\x3e\x09\xa5\xb8\xe5\xd3\xb3\x76\x31\x11\xa7\x0f\x65\xe9\x0a\x9b\x5b\x47\xfa\x6e\x94\x1a\x75\x31\xe3\x91\x3b\x25\x57\xab\x08\x28\x2b\x32\x22\xd9\x81\x9f\xa2\x46\x71\xc3\xcb\x0e\x95\x19\xb5\x5e\x5e\x58\x92\xde\x9e\x7c\xd1\xfc\x76\x4f\x6e\x6f\x23\xaa\x28\xa9\xf2\x7e\x20\x87\xd5\x5c\x56\xce\xd9\x41\xcf\xfb\x1a\xf1\xb5\xb4\x38\xd6\x9d\xd3\x8d\xd7\x4f\x13\x00\x52\x6a\x2c\xd0\x08\xed\x4b\x3d\x11\xf6\xb7\xe3\xc4\xd4\xf3\x07\x55\x84\x4f\x52\xda\x44\xec\x26\xb6\xae\x42\x65\x36\x12\xc1\xb5\x8e\x6d\x5c\x5d\x74\xbd\xbc\xbe\x4e\x69\x0e\xd9\x48\xcc\xa3\x85\x00\xba\x39\xa2\xd3\x64\x99\xca\x08\x29\xb9\x4c\xbf\x49\xd2\x34\xfb\x44\x27\xbf\xd0\x3b\x55\x20\x77\x54\xa5\xc7\x18\x23\x9c\x12\xc8\xf6\x52\xcd\xfe\xb5\x55\x33\x18\x6b\x31\x58\xff\x2d\x44\x57\xd2\x5c\xc6\x1a\xe6\xc1\x86\xb1\x00\x94\x23\xcb\x2f\xd5\x3c\xd2\x43\x45\x08\x1a\xa8\x83\x44\x11\x58\x8b\x3d\x94\x60\xc2\xef\x22\xf4\x13\xe9\x21\x7b\xb6\xb5\x7c\x2e\xa8\xde\x9e\x78\x21\xed\xc5\x0a\x60\xf6\xd9\x34\xa6\x03\x29\x06\x62\xb8\x1d\xfd\x42\xef\xa2\xa1\xc1\x26\xf4\x15\xc2\x4b\xdb\x0d\xe7\x84\xbd\xd5\x2b\x62\x8a\x13\x77\xca\xac\x56\x3a\xb3\x8d\x0b\xc6\x53\x17\xf0\xf2\xd4\xa9\x09\x59\xad\x68\x37\x97\xd9\x42\x5d\x50\x92\x9b\x44\xd3\x09\x06\xff\x3c\x25\x9e\x97\x9d\x0a\xad\xdc\x5c\xa2\x76\x90\x9f\xef\x41\x87\x44\xb1\xc9\x05\x90\x1b\xd5\xd2\x32\x4d\x8b\x56\xc3\x4d\x42\xcb\xc0\x4d\x2f\xf6\x63\xae\x6f\xf2\x02\xe7\xdd\x9c\xf2\xc9\xfe\x57\xe4\x09\xe0\x25\x96\xa0\xeb\x31\xc7\x7c\x8e\x07\xc2\x89\xd3\x14\xd2\x02\xf4\xbf\xbd\x05\x55\xa7\xad\x1f\xbc\x17\xbf\x43\xa5\xa2\x5c\xe3\x77\xa8\xb0\x74\xe5\x80\x4a\x0b\x84\x70\x6a\xdd\x6c\x92\x75\x07\xca\xe6\xf4\xea\x6b\x41\x8d\x5d\xe8\x03\x5e\x02\x78\x71\x08\x5b\x9c\x1a\x9f\x8f\x29\x49\x43\xd9\x70\x42\x52\xc5\xf1\x95\x60\x3d\xb5\xc1\x02\xbb\x6a\x4b\x64\x64\x6a\x84\xc6\x78\xa9\xff\xdc\x45\x08\xb2\x68\x24\x64\xa9\x1d\xdd\x96\x21\xc8\x65\x2b\x21\x4b\x2f\x14\x9a\xed\x36\x23\x83\x21\x5e\x90\xe7\x7b\x8b\x17\xb6\xf6\xbd\xc5\xf6\x36\x9a\xe9\xf8\x03\xa8\x76\x81\x2c\x74\x30\x48\xf6\xcb\x25\x9b\xa0\x18\x61\x0d\xdc\x9b\x89\x98\xe2\x39\x4e\xf0\x0c\x8f\xf1\x14\x67\x98\xe1\x89\xe3\xba\xb7\x05\x88\x5d\xb9\x4c\xd2\xb4\xd9\xee\x98\xcd\x41\x14\x35\x87\xaf\xc6\x10\xb4\x47\x3f\x17\xe0\x5b\x58\x06\xa1\x14\x38\x9a\x24\x32\xd9\x29\xaf\x6a\x14\x3d\xea\xc3\x9d\x68\x9b\x63\xbe\x0e\xc6\xa3\x2e\x98\x1b\x01\x5c\xaa\x59\x05\x14\xab\x40\x0a\xf0\xc2\x2b\xa6\xc1\xa9\x4d\x2b\x47\xb6\x3b\x77\xd6\xc0\x09\x81\x05\x53\x3e\xce\x96\xeb\x54\x17\xb9\x78\x8c\x9d\xeb\x6d\x36\x61\x53\x46\xc5\x46\x33\x97\x31\x34\x95\xbe\xed\x4b\x6c\xcc\x5a\x81\xe9\xaa\xac\x35\xe4\xfb\x53\xd1\x9f\x88\x02\x2f\xd7\x76\xa5\x22\x50\xb9\x86\xad\xfe\xd1\xb4\xd8\x04\xfb\x26\x37\xeb\xb2\x9e\x2c\xfa\xb8\x34\xa5\x76\x98\xb1\xc0\xdc\x5f\x6d\x10\x2a\x70\xfa\x1d\x77\xba\xd7\x21\x38\x9b\xbf\xba\xcd\x95\xe6\x18\xe2\xd2\x43\x84\x78\xff\xb1\xa9\xd4\xf5\x95\x61\x77\x60\xa1\xf0\x72\xb5\x54\x5b\x8f\xe3\x04\x67\xeb\xa8\xac\x06\x50\xaa\x18\x49\xc9\x4b\xc8\xaa\x01\x05\x96\x26\xb9\xdc\x03\x3b\xd6\xee\xd4\x12\xec\x67\x30\x4c\xea\x16\x16\xf0\xa0\x0d\xe7\x82\xcb\x2b\xaf\xd8\x81\xb5\x73\xf3\xc1\x52\x66\x3e\xe8\x0b\x94\x7d\x5c\xaa\xdf\x8d\xce\xfb\xdc\x76\x2e\x98\x9d\xd2\x35\x15\xa1\x30\x71\x90\x0e\xfc\xfa\x86\xda\xf0\xd6\x2e\x28\x25\x4a\x2a\xc8\x0c\x27\x1a\xd3\x64\x03\x13\x71\x53\x5e\x72\xfb\x70\x73\xc3\x2a\x73\x23\xbe\xc3\xdc\x58\xaf\x1d\x37\x18\x1e\xdc\xb0\x4b\x13\x93\x3d\x34\x31\x0f\x54\xd5\x38\x2b\x4c\xd1\xe1\x93\x78\x19\x1e\x7f\x9f\x4d\x57\xd2\xd4\x36\x6d\x05\xf7\x41\xd5\x94\xd5\x40\xeb\xe8\xbe\x69\x65\xf5\xd3\x75\x23\xab\x74\x40\x83\x14\x08\x38\x1f\x53\x81\x27\xfa\xaf\xb1\xc0\x33\x01\xea\x5a\xbc\x28\x8d\x5b\x8a\x3b\x2d\x46\x62\xb9\x16\x2c\x6e\xc2\x6e\x01\x97\xa6\xe7\x67\x21\x99\x4c\xe0\x9c\x39\x55\x6c\x90\x53\x11\x9b\xbb\x57\x13\x03\x14\xdb\xdb\x05\xc2\xf7\x99\x36\x4d\x17\x08\x37\x28\x61\xa1\xb2\x7d\x7d\x29\x83\xbf\x6d\x85\xa8\x1f\xd7\x51\xec\xf4\x07\xf0\x5f\x84\x50\x97\x71\x26\x4b\x85\xf0\x56\x0f\x92\x4b\x4b\x45\xcb\x8b\x44\x8e\x67\xfa\x35\x6d\x7c\xa4\xa4\x79\x61\xc0\xd1\x78\x10\x78\x07\x21\xd5\x1b\x2f\xf5\x16\xbf\x65\x96\x2d\x53\xeb\x43\x66\x52\x2f\xb9\x48\x98\xd2\x71\xd4\xe0\xcf\xa2\x8e\x1b\xb1\x2e\x79\x9e\xa6\x84\x57\x22\x9b\x57\xef\xb1\x76\xcd\x5c\x7d\x3a\x16\x11\x94\x8f\x5e\x8d\x2e\xba\x6a\xd6\x01\x8f\x64\x91\xe4\x39\xbb\xa5\x21\xeb\x6f\x71\x8b\x7c\x93\x69\x2f\x74\xf7\xb7\x3d\x0b\x2b\x23\x43\x98\xd9\x12\xa6\x3a\x5b\xc8\xfc\xb4\xba\x87\x5a\xb9\xcc\x96\x33\x4d\xdb\x72\x16\xbb\x2b\x5b\x53\x8e\xaf\x56\x6c\xb5\xca\xf6\xcd\x25\x39\x5b\x80\xbe\x85\x68\x62\xe2\xd8\x34\xdb\x67\xd8\x54\xd4\xcf\x8a\x7e\xe9\x4b\xad\x91\x34\xe0\xa0\x75\x65\xb6\xbb\x78\x26\xb6\x83\x4e\x9a\xb2\x5d\xf4\xe2\x55\xd2\xdc\x49\x03\xf4\xd9\xa0\x06\x5f\x12\x9f\x50\x79\x69\x1b\x58\xe6\x54\xbc\x13\xd9\x2d\x9b\xd0\x89\xf5\x2d\xb7\x6d\x35\xbd\x23\xcb\x0d\xcd\xaa\x0b\x34\x21\x64\x21\x3a\x1d\xbe\x5a\x6d\xed\x3a\xb0\x9e\xf0\x6b\x25\xb0\xa7\x08\xa0\xf9\xec\x22\x98\xaa\x1d\x41\x39\xf7\xe8\x2d\xa8\xaa\xd3\xb9\x16\x36\x7f\xf6\x18\x53\x84\x97\x5a\xdf\x39\x13\x58\xa2\xa2\xe5\x91\x7c\x5c\x4d\x4b\xc3\x79\x6e\x05\xe9\xe1\x3b\x11\x42\x3c\x5e\x0b\x2f\x9c\xdd\x89\xed\x6d\xbc\x10\xfb\xb4\x2b\xe8\x3c\xbb\xa5\x65\x26\xa2\x3f\xf2\xfa\x6c\xde\xe9\x70\x4b\x22\x1b\x8a\x6c\xf5\x50\x7f\xed\xdb\x40\x79\x7c\x13\x74\xe4\xd6\x75\xa4\xc6\xca\x1e\xe8\x45\xe3\xf7\xba\x0b\x4d\xaf\xb4\xca\x6b\xb4\x81\x8f\x18\x2e\x72\xf9\xfe\xdd\xbb\xf3\x8b\xab\xcb\xd1\xf1\x87\xe3\xb3\xab\xd1\xf9\xbb\xab\x93\xf3\xb3\x4b\xb2\x10\xcd\x11\x4e\x21\x93\xd9\x14\x35\xb7\x46\x48\x54\x67\x7f\xbd\xde\x86\xe8\xe0\x40\x50\x0c\xe5\xbf\xb9\x01\x07\x86\x1e\x60\x6a\x42\xd6\xd7\x5f\x36\x0c\xea\x0a\xdd\x2f\x9f\x82\x7d\x73\x09\x11\x8d\x72\x9f\x47\xda\x03\xa5\x7f\x99\x1b\xc6\xa8\xd5\x24\x17\xba\xed\x8a\xad\x96\x5e\xd1\x27\xc8\x3c\x86\x27\xb4\x6e\xcc\x1a\x63\xb6\x41\x9c\xa7\x4d\x47\xd9\xb5\x2f\x59\xc0\xdd\xab\xbc\x29\x77\x0b\x35\x92\x06\xc1\xac\x34\x90\xaf\xec\x75\x7d\xfc\x95\xf6\x3b\x9d\x38\xe8\x1f\x56\xd4\xee\xda\x08\x5b\x08\xea\x77\xb5\x37\x8c\x05\xcc\x5f\x8f\x93\xa7\x36\x78\x6f\x8c\xb3\xa5\x22\xaf\x7c\x8d\x03\xc7\x7d\x32\x99\xe4\xfd\x5b\x81\xf5\xee\xcd\xfb\x77\xa2\xf0\xfe\x1c\x9f\xc4\x03\xf0\xe4\xdf\x35\xd0\xe8\x1b\x90\x88\xeb\x5e\x76\xc7\xe2\xbf\xd5\xcb\xee\xe1\x8c\x73\x94\xdf\x30\x4e\xeb\xc9\xf4\x54\x7f\xd8\xd8\x44\x06\xc6\xf6\xbb\xbf\x23\x03\x5d\x77\x9c\x71\x29\x32\x35\xf9\x58\x22\x2c\x1f\xe7\xc7\xf7\x49\x3c\xde\x8f\xcf\xba\xe0\x01\x93\xea\x5e\x2f\x59\xaa\x51\xf0\x8e\x61\x4c\x2e\xf0\x9a\xa3\x16\xeb\x5e\x67\x99\x34\x2c\xc5\x98\x69\x70\x4a\x58\x77\xea\x70\x9f\xe3\xc8\xf7\xb7\x3c\x4b\x80\xfa\x74\xd9\xbd\x51\x2c\x1f\x1c\xfd\xed\x67\x06\x34\x5a\x5d\x4f\xa2\x52\x09\x75\x4c\x97\x12\x4c\xcd\xb3\x09\x4d\x21\xc1\xd4\xb2\x9c\x57\xca\xbc\x08\xd2\x34\x2f\x51\x46\x52\xeb\x45\x88\x8c\x13\xc4\x5a\xef\xfd\x4c\x9d\xde\x39\xb9\xd7\xcb\xa8\x04\x25\x3f\x88\x0c\xe7\x34\x9d\xf6\x13\x5c\x71\x60\x74\x57\xb5\x89\x57\xda\xb5\x82\x46\xef\xa1\x53\xfd\x49\xf1\x7d\x5a\x87\xda\x2e\xe8\xb4\xbf\xac\x74\xa4\xf8\xe6\x98\x1d\x87\x93\xae\x3b\xf0\x08\x0f\xcb\x00\x1e\xdd\x58\xd0\x41\xc5\xf6\x28\x4f\x4e\x91\x2d\x25\xdd\xb1\xe5\x2d\x8e\x6a\xb8\xf0\x1b\x1a\xce\x1a\x1a\x5e\x7b\x38\xb1\x27\x07\x08\x65\xeb\x87\x11\x7e\x96\xeb\x38\xa2\xbc\xd1\xd9\x33\x54\x1d\xaa\xb5\x6b\xf2\xf1\x74\x1c\xa6\xd1\x9f\xaa\x0d\x5a\x08\x58\x6d\x08\xc2\xf6\x3f\x75\x98\xd8\x86\x95\x2e\xc7\x65\xe8\xe8\x9a\x58\x92\x9a\xc7\xa8\x67\x24\x0f\x9d\x5b\x86\xb5\x7d\x8b\x3b\x68\xfc\x44\x1f\xca\x0a\xcb\x7b\xba\x07\xe6\x3a\x77\xd2\x5b\x97\xdc\xc4\xd5\x2f\x2a\x19\xd1\x78\x30\xdb\xad\x50\xb8\x05\xdd\xb5\xe5\x34\x81\x6a\x72\xd3\x6a\x88\x07\x33\xe6\x3c\xf4\x45\xd0\x55\xf4\x4d\x6e\xac\xff\x1d\x6b\x60\xdd\x60\x2f\x1b\x30\x5f\xad\x96\xfa\x58\x34\xc4\x6a\x14\x3a\x9c\xf1\xfc\x31\x6a\x05\x55\xe2\x02\xe0\xf9\x5d\xe0\x4b\x83\xfe\x60\x04\x10\x95\xea\x7a\xaa\x9d\xc3\xdd\xb3\x23\x3a\x0d\x1e\xf9\x1c\xfd\x5f\xe9\x5e\x49\xf9\x6d\x68\x94\xbe\xa0\x53\x67\x37\xd6\x9a\x58\x59\x31\xe2\xd6\xf2\x04\xf0\xfd\x4a\x87\x09\x09\x1f\x1d\xd1\x69\xbf\x7c\x60\xcf\x92\xfc\x02\x98\x9f\x8e\xb0\x8f\x0d\x17\x87\x7c\xbf\xfb\x71\x75\xf4\x95\xa1\x03\xef\x1c\x2f\x85\x3a\x7e\xc1\x1b\x48\xc4\x80\x5a\x5b\xfe\x4c\x63\xa8\xf5\xe3\x75\xd3\x56\x99\x5d\x9d\x2a\xad\xea\xf2\x19\x38\xc1\xbf\x3f\x3b\x3a\x7e\x75\x72\x76\x7c\x14\x7a\xc2\x6b\xe4\x8c\xb5\x4b\x6e\xa1\x53\x00\x47\xf9\x52\x06\x81\x50\x15\x53\x84\x66\x70\x8f\xce\x4e\x50\x06\xec\xbf\x32\x17\x7a\x0d\x7f\xb0\xd1\xbf\x28\xe8\xc9\x26\xd0\xf9\xe0\x33\xf3\xb7\x22\x7e\xc6\x09\xd5\x78\x6a\x13\x26\xe4\x9d\x77\x9b\x55\x0c\xde\x02\x08\x3c\x7c\x1b\xd6\x58\xad\x50\x79\xb0\x07\x74\x33\x67\x66\x63\xc8\x87\x1c\x8b\x8d\x55\xe1\x2b\x29\xbe\xdc\x85\xc0\xb3\xd8\x89\x62\xd4\x78\xc1\xf5\xdd\x04\x38\xe3\xa3\xfd\x44\xda\x4f\xe4\xa0\x3e\x02\x5b\xe7\x70\x83\x17\x71\x75\xed\x60\x02\xaf\x1e\x3b\x81\x76\xe2\x3e\xd2\xbb\x70\xba\x1e\xe4\x04\xa5\xce\xc8\x52\x67\xa8\x81\x39\x6c\xa6\xa3\xda\xfc\xd5\x9c\x61\x3a\x1d\x3a\xb0\x7d\x1a\x06\x76\xc5\x8f\xdf\xc1\x01\xcf\x0c\xba\xea\x81\xf7\x84\x18\xb3\x27\x0c\x28\x4c\x4f\x1e\x1c\xc1\x1a\xa0\xa4\xf4\xd6\x21\xc8\x4a\x7d\x02\x5b\xc7\xd2\x06\x17\xba\xb7\x0f\xaf\xac\x26\xa1\xe6\x93\x01\xa2\xfa\x35\x96\x9d\x67\x62\x8a\x87\x69\xbe\xf2\x7d\xce\x83\x26\xc1\xa3\x36\x29\x24\x18\x76\x08\x7a\x5a\x9b\x9f\x1a\x74\xa3\xbd\xdc\x86\x31\x58\xee\x53\x5e\xfa\xf4\x28\xe6\x08\xd0\x53\x78\x2c\xf4\xa1\xe1\xac\x94\xf7\x42\x9d\x27\xd8\x24\xe7\xd1\x68\xdc\x30\x71\x7d\x61\x66\x30\x0c\x93\x0c\xee\x25\x22\x14\x10\xf4\x4d\x47\xd8\x65\x8b\xcb\x0b\x00\xc3\x5d\xe3\xab\x54\x86\x7c\x55\xb3\x11\x26\x72\xa9\x7a\x0b\xb5\x7d\xdc\x9b\x46\xf6\x77\x89\x9d\x43\x79\x05\x5e\xf9\x9f\x45\x4c\x2b\x0b\x8c\x4a\xb8\x51\x9e\x18\x5a\x15\x3a\xa0\x36\xa2\xdf\xba\x25\x12\x9b\x68\xbc\xac\xa6\xca\x49\x6c\xce\x7c\x37\x66\x7b\xea\x2b\x79\x80\x9b\x1d\xc6\xe0\x16\xf8\xd1\x80\x07\xc6\x99\x46\xeb\x9e\xb0\xb1\x54\x02\xb9\x9e\x3c\xc2\xf0\xbd\x4c\x6e\xfa\x3c\x04\x02\x08\x53\x54\x85\x7e\x27\x1a\x42\xc0\x7c\x3f\x4f\x16\xfd\x0c\x1e\xe5\xfd\x81\x11\x53\x87\xd8\x67\xb7\xe8\x0f\xd8\x10\x6b\xf7\x91\xfe\x6e\x05\xf7\xc3\x05\xec\xe8\x62\x6a\x59\x8a\xb2\x26\xaa\xe9\x93\x7d\xd6\x5f\x73\x94\x6b\x8c\x8d\xba\x1a\x4b\xd3\x89\xf7\x7b\x2e\x0a\xdf\xa3\x75\x65\xf4\x20\xbd\xa3\x9d\x3b\x61\x82\x09\xaa\x78\x72\x06\xf5\xa3\x56\x52\x93\x71\xae\x41\xf2\xce\x1d\xa4\x68\x95\x25\x24\x5f\x25\xba\x00\xad\xbc\x13\xa5\x8c\x3b\xff\x12\x16\x90\x55\x23\x78\x69\xce\x71\x3e\xf5\x5a\xff\x43\x51\x4e\xab\x41\xf7\x34\x69\xc9\x3d\xeb\x91\xff\x4e\x58\xd4\x97\x90\x57\x3a\x5e\x20\x5a\x92\xfc\x4b\xc4\x12\x95\x82\x10\x55\xd1\x0b\x81\x4f\x04\x3e\x12\xf8\xac\xdc\xa9\xd3\x07\x3b\xf5\x4a\x94\xa0\x60\xce\x84\xc9\x67\x40\xd5\xad\xd1\x7d\xf5\xe5\xc1\xae\x9f\x3d\xdc\xf5\xd3\x5a\xd7\x5d\xfd\xef\x85\xe7\x9c\xd0\x56\x00\x9e\xbf\xa5\x8e\x28\x49\x05\x4f\xd2\x4e\x27\xb2\x26\x7b\x9f\xee\x63\x5f\x5a\x95\x54\xcd\xc3\xff\xa5\xf0\xc4\x7c\xaf\xa1\xc9\x82\xe8\xd2\x7e\xb4\x4d\x83\x48\x95\x9f\x4b\x33\x71\xaf\x23\x2a\xbc\xcd\x83\xee\x7b\x8d\x60\xb4\x6d\x5f\xe8\x4d\xb8\x48\xc6\xb4\x2f\x83\xba\x3e\x88\xb2\xfe\xad\x59\x2b\x57\xee\x8a\x3f\x64\x02\x0d\x1b\x87\xa3\x5c\x83\x80\x4b\xc8\x31\x1c\xb0\x24\x1e\x64\x88\x36\x29\xb7\x6d\xce\x87\x43\x11\xdb\x27\xa5\xec\x3c\x66\x70\xbe\x61\x6e\x63\xd8\x99\x0e\x9b\xc9\xd6\xf5\xd5\x0d\xde\x95\xcd\x9f\x95\x7a\x6d\xf4\xa6\x0d\x3d\x2e\x73\x7d\xde\xe9\x98\xbf\x32\x0d\x0a\xdb\xd4\x9b\xac\x28\x6e\xba\xef\x0e\x2e\xae\x4e\x0e\x4e\x2f\x3b\x9d\xf8\xa2\x0a\x43\x5a\x63\xcc\x82\x9c\x28\x6e\x7b\x04\x5e\x6a\x9e\x80\x44\x51\xe0\x93\xaa\x53\x14\x14\xf7\xf5\x6b\xdb\x8f\xa5\x55\x70\x02\x09\x41\xe5\x3e\x2b\x86\x01\xde\xa8\xd1\x61\xc6\x65\xc2\x38\x15\xed\x4f\x49\xae\x01\xe6\xb2\x25\x9f\xb4\x3f\xcd\x28\x6f\xab\x09\x60\xfc\xa6\xbd\x5c\xb4\x93\xf6\x2d\xa3\x9f\xf2\xb6\x9d\xb4\x6e\xfb\x6a\xc6\xf2\x36\xcb\xdb\xf3\x2c\x97\xed\x94\x7d\xa4\xe9\x5d\x7b\xb2\xa4\x6d\x99\xb5\xe7\x09\x5f\x26\x69\x7a\x67\x30\xd1\x24\x4b\xa4\xaa\x26\xe1\x6d\x00\x96\xef\x7e\x60\xf4\x53\xb7\x7d\x49\x69\xbf\x3d\x93\x72\xd1\x7f\xf6\xec\x86\xc9\x2e\xcb\x9e\x1d\xff\xf2\x6e\xc1\x0f\x22\x2f\x48\xd6\x75\xd7\xd1\xb6\x44\xab\x55\xe3\x0b\x81\x8a\x02\x1f\x35\xfb\xfb\x9b\xb8\xca\x67\xe0\xe4\x20\x07\xd2\xc7\x55\xba\xf5\x0e\x1f\x92\x68\x14\x6d\x0b\x2c\x4d\xbc\xdc\xb3\x08\x15\x9a\x47\xfe\x25\xc8\x3d\x9b\x36\xa3\x4e\x69\x35\x69\x43\x24\x51\xfc\xab\x04\x8b\x8c\x55\x08\x4a\x75\xb2\xa2\x02\x6b\x6f\xbf\x4a\x65\xb7\x3a\xaf\x8d\x8d\x76\x01\x2f\xa7\xe0\x74\x70\xb5\x04\xb9\x9f\x70\x42\xb2\x41\x6f\x88\x73\x92\x0d\x76\x87\x78\x49\x32\x13\x53\xf7\x1c\xe1\x94\xe4\xa1\x93\x26\xa4\xb6\x2f\xbb\x97\xf3\xb2\x7b\x79\x3f\xc1\x53\xd2\xd8\xa5\x96\x74\x10\xe5\x9d\x4e\xdc\x8c\xdd\x5c\xcd\xe7\x53\x85\xa6\x05\x04\x54\xef\x0b\x5c\xa0\x96\x86\xc6\x0b\x2f\x22\xd6\xd2\x59\xb9\x55\x88\x4e\xa7\xd4\x01\x39\xe8\x0d\x89\x0f\x98\x53\x3f\xb1\x00\xdd\x60\x58\x84\xef\x37\x5d\xb8\x62\x01\x8e\xc8\x7d\xb1\x5a\xf1\xd5\xea\x0b\x2d\x62\x33\x2b\xd0\x66\x84\x3a\x1d\x33\x2b\xe6\x37\x5e\x22\x0f\x76\xd1\xe0\xdb\x92\x83\x73\xf5\x7b\x1a\xe7\x38\xc7\xf0\x03\x4f\x71\x0a\x0e\xc4\x35\xa8\x99\x31\xaa\xa9\x3a\xe1\x79\x8e\x54\x05\xce\x9b\x1c\x8f\xdd\x5f\xce\xc3\x40\x57\xda\xe4\xf6\xdb\x6b\x08\xbb\x34\x4f\xde\xc3\xc5\xc2\x55\xe1\xe3\x67\x55\x41\x63\x9b\x32\xbc\xdf\x5b\xa7\x8a\x22\xec\x09\xce\xa1\x65\x34\x78\x45\x21\x25\x35\xb8\xf0\xd0\x58\x78\x4a\x16\x22\xb9\x6b\x10\xb8\xda\xcd\xb4\x5b\x60\x4d\x01\x4f\xdd\x47\x1f\x9a\xf7\xd1\xb4\x71\x0f\x91\x1f\x2a\xe0\x47\x4d\x35\x8a\xc6\x0a\xeb\x80\x76\xce\xfa\x5e\x8b\x94\x6c\x72\xe8\xd5\x41\x8a\xb5\x15\xb6\x99\xc0\x19\xe1\x55\xe2\xd6\x07\x08\x5b\xad\xa2\x08\x22\xb6\xab\x58\x0b\xfd\x9a\xaa\x8d\x75\x3a\xcc\x07\x3c\x74\x23\xf4\xd3\xce\xee\xfe\x39\x85\xc8\x56\x1f\x45\x8e\xfa\x5a\x8c\x71\x11\xe0\x25\x2c\xfa\x3f\x64\xdc\x34\xfc\x59\x92\xcf\xfa\xbf\x48\x9c\x66\x37\x4f\x5d\xa1\xdf\x9b\x57\x68\xbe\x7c\xec\x84\x3e\x18\xc4\x0b\x90\xeb\xa7\x21\xf1\x45\x7f\x2d\xa9\xb8\xdb\x59\x40\x10\x60\xf4\xd4\x1e\xff\xd9\xdc\x63\x41\x93\x49\xc6\xd3\xbb\xc6\x6e\x37\x11\xfa\xe0\x8c\x0e\x57\x2b\x5a\xc4\xf5\x31\x95\xbc\x2a\xc0\x39\xd8\xb6\xb2\xe4\x90\xd0\x68\x7d\x9f\x8f\x69\x43\x7d\x5e\x4f\xe5\xaa\x49\x69\xbe\x06\x0b\x71\xfd\xc8\xdf\x34\x8f\x3c\xda\x51\xeb\x1f\x29\x02\x88\x76\x68\x32\x9e\xed\x30\x1e\x35\xed\x6d\x55\xf3\x54\x36\x8d\x57\x55\xc2\xf8\x62\x29\x77\xd4\xda\x3d\x79\x49\xbe\xac\xeb\x18\xcf\xc4\x3c\x49\xd9\x17\xba\x03\x92\xe0\x93\x2b\x7e\xbf\xae\x62\xf0\x54\xdd\x01\x2e\xb6\x76\xa8\x2f\xd7\x0e\xf5\x86\xca\x1d\xe3\x57\xb0\x73\x9b\x88\xa8\x3f\x05\xdb\x94\x7e\xf2\x21\x11\x38\xda\x99\x67\x4b\x2e\xab\xfd\xb5\xea\x12\x7d\xcf\x6e\x60\x2e\xcc\xdd\xd9\x69\x83\x25\xd9\x82\xd3\xd4\x02\x92\x5b\x3d\xcc\x08\xdc\xac\x33\xb8\xbb\x3f\xfa\x36\x9e\xfd\xdd\x37\xda\x90\xf9\x9c\xc3\x65\x00\x33\x98\x42\x93\x61\x70\x8d\x2c\x24\xbb\xa1\xdb\x46\x20\x12\x90\x5e\x15\x9c\x43\x0f\x60\xdf\x9a\xac\x79\x1e\x2c\x7f\x34\x4f\x18\x8f\x50\xbf\x89\x8d\xd3\x4f\xed\xb7\x22\xd6\x01\x83\x31\x0f\x15\xdf\x60\x50\x70\x94\x92\xe4\x39\x15\x72\xc7\x86\xf2\xed\x38\x51\x7f\x67\x06\x04\xb7\xe3\x72\x6c\xf6\x4f\x25\x6c\x83\x1d\x9a\xee\xa8\x65\x8c\xfa\xaf\x64\x81\x7f\x7b\x58\xf9\xa7\x43\xf9\x72\x32\xd0\xa7\xf2\xd0\xe8\xc5\xaf\xff\x75\x95\xfd\x0c\xaf\xea\x89\x71\xaf\x97\x2c\x95\x27\x5c\xd3\x7c\x4e\xfe\x12\x15\x94\xb5\x23\xa7\x20\x38\x4c\xc6\x33\x5d\x81\x2b\xdc\xf4\x95\x22\x57\x62\xdc\x5c\xf5\xc0\xd6\xbc\x6c\xf4\x59\x33\xdd\xb1\xde\xdd\x39\xb9\x37\xa2\xee\xbd\xb1\x9c\x01\x13\x4f\x04\x06\xc3\x99\x41\xec\xa9\xbe\x1e\xe9\xeb\x6b\xf8\x4d\xb1\x49\x93\xa9\x6f\x04\xce\x4b\xa1\x49\x86\x35\x59\x9c\xca\x1f\xea\x39\x85\xaf\x2a\x17\x3b\xa1\xaf\x73\x50\x48\xd0\x3c\x4b\x6f\x69\xac\xb1\x98\x1b\xab\x58\xdf\xa2\x59\x51\x0b\x6a\xc1\xc3\xa7\xd6\x2e\x55\xae\xd1\xcf\xb6\xb6\x47\x7a\x8a\xd7\xf6\xdc\x4d\xeb\xb6\xbd\x8d\xb9\x49\x84\xa9\xba\xbc\x36\x6c\xdc\xf4\x0a\xd2\xac\xd8\x21\x69\x0a\x7a\xea\x48\x46\x61\x61\x3d\x93\xc1\xa5\xbe\x94\x45\xd2\x0c\x9a\x97\x46\xc4\xcc\x88\x1a\x29\x6d\x7b\x1b\xb3\xa2\xe2\x80\xaf\xdb\xb3\xf4\x45\x1a\x8f\x81\x75\x73\xec\x62\x0e\x8c\xa1\xd7\xd6\xf6\x2e\x11\x92\x25\x69\xfd\x5a\x1e\xde\xab\x83\xa9\x18\x95\x8a\x95\xe8\x27\x6c\x5a\xa0\x6a\xe7\xd5\xba\xb1\xb4\xea\xe1\xef\x83\x78\x9b\xdc\x0a\x49\x43\x7a\x31\xab\xb6\xf5\x8c\xa1\x0c\xd4\x1b\x58\xa8\xc0\x8f\xa2\xb4\x80\x26\xfd\xcf\xce\x6e\x8d\xbb\x98\xb4\xba\x52\xbb\x59\xc8\xf2\xe2\xae\xa7\x8c\x32\x0b\x1a\xd0\xe1\x3a\xbd\x99\x75\xe0\xf2\x29\x22\x21\x7a\x49\x7b\x99\x66\x84\xe2\x84\xfc\xac\x8e\x06\x5d\x16\xe1\xbc\xe2\xa2\xa5\x89\xa4\x1f\x6d\x67\x38\x41\xab\xd5\xba\x97\x75\x20\x1a\xaf\x06\xae\x82\xfa\x53\xad\xc1\xd9\x22\x44\x6b\xe3\x95\x70\xe1\xfe\xe8\xb2\x5c\x0f\xca\xb8\x7a\x15\xea\xa6\xd6\x34\x0d\xb9\xf3\xd8\x02\x17\x6d\x1a\xa0\xbd\xdc\x17\x7b\x6b\x1d\x7d\x78\x63\x40\x85\x8d\x28\x8b\x21\x1c\x06\x02\x1d\x92\x3c\xcf\xc6\x2c\x91\x34\xf0\x7a\x89\xb9\x41\x98\xee\x85\x32\xe6\xa7\x35\x17\x9b\xbe\x25\xc1\xd1\x26\x92\xb7\x62\x89\x5e\x11\x46\x2e\xd4\x56\x11\x28\x16\x25\x39\x96\x77\x4d\x69\xbf\x5d\x4f\xe6\x0b\xb5\x0f\x18\x0a\x9a\x58\xb3\x47\xeb\x84\xe3\x0e\x8b\x12\xe9\x80\xe5\xc8\xf9\xfc\xd9\x1e\xf1\xd2\x9a\x5b\x0d\x6a\x3f\xda\xa6\x65\x6d\xad\x8d\x87\x25\xef\x45\xcc\x8c\xf6\x30\x60\x3d\x6a\x18\xb9\x1a\x1c\xc3\x59\xc3\x69\x86\x9c\xb8\x02\xa9\x62\x47\x8b\x44\xe4\x40\xaf\xaf\x32\x71\x66\xb5\xa4\x4d\xda\x26\x2c\x88\x55\xa6\x12\xea\xef\x68\xfd\xbe\xd3\x6c\x41\x86\x6e\x6e\xfc\xa3\xb4\xae\x86\x6f\x3f\x47\xe0\xd0\xa3\x7f\xf6\x30\x47\x08\xdb\x34\xd9\x5e\x29\x2b\x8a\x60\x72\x1b\x8e\x8b\x66\xd5\x0d\x66\x84\x02\x22\xbc\x9e\xc1\xa4\x49\x7d\x28\x0c\xe6\xce\x6a\xa5\x6d\x69\xd0\x9e\x9d\x7b\xa7\xff\x2d\x31\x76\x3b\x8f\x76\x9e\x3e\x18\x0c\xb9\x38\xc3\x0c\xff\x2c\xe2\xd2\x26\x37\xfb\x39\x4c\x70\x9e\x94\x78\x9a\xb6\x67\xaa\xc7\xfe\x68\xdb\x17\x24\x31\x68\x9f\x71\x86\xfa\xc1\x1b\x1b\x92\xb1\x49\xce\x31\x49\xc7\x4b\x34\x91\xdb\x36\xf3\x96\x27\x31\xb7\xff\x6d\x63\xa0\xe0\x0a\x5a\xd6\xda\xbf\x25\x81\x88\xf0\x11\x73\xb1\xe0\x97\x32\x11\x12\xd9\x94\xc3\x1a\x46\xb9\xd6\x97\x08\xbf\x54\x72\x2e\x4e\x4b\x26\xb8\xca\x40\x8d\xf7\xd3\xd5\xf1\xdb\x77\xa7\x07\x57\xc7\xa3\xf3\xb3\xd3\x3f\x46\xaf\x4f\x4f\xde\xbe\x3d\xbe\x18\x1d\x9e\xbf\x7d\x77\x7e\x76\x7c\x76\x75\xd9\xe9\xc4\x1a\x62\xfe\x4c\xc6\x0c\x0b\x1d\xa4\x7e\xde\x65\xb9\x75\xba\x3d\xe7\xa9\x07\xae\x45\x71\xd0\x84\xd9\x00\xb5\x1a\xb0\x1b\xbb\xfb\x54\x2f\xfb\x98\xd4\x4a\xe3\x29\xf9\x22\xe2\x71\x48\x06\xd3\x4e\x27\x00\xb8\x24\x84\x4c\x83\xa4\xe5\x13\x32\xb5\x7b\xb5\x95\x92\xa9\x33\x7c\x80\x80\x7e\x28\xe3\x49\x9c\x21\x3c\xb6\x59\xe6\xfe\x05\x70\x5b\x01\xe6\x38\xbc\xf6\x87\xc8\xbe\xe8\x67\x56\xf3\x1b\xf7\xf0\xa7\xee\x42\xb0\xdb\x44\x02\xde\xdd\x45\x8c\x10\x52\x2b\x55\x14\x65\x29\x2e\x75\x03\xa6\x95\xea\x57\xab\x2c\x64\x24\xd5\x1a\x0f\x55\x8d\x30\x41\x4b\x0b\x8d\xb2\x96\xd0\xd4\x99\xc9\x71\x8a\xb0\x09\xcf\x0b\x10\xd3\x44\x53\x88\x04\x08\x96\x03\x3a\xe8\x0d\xd7\x69\x4c\xa3\x7f\x46\xdb\x14\x22\x10\x06\xbb\xc3\x21\x08\xbe\xaf\x21\x43\xb6\xab\xf9\x0f\x1b\xeb\xe2\xd8\x1c\xb3\x32\x9f\xa8\x4a\xa8\x8a\xc9\x75\xe7\x54\x26\x2e\x45\x73\x49\xd8\xdd\x22\x24\xdb\x57\x3c\x07\x5c\xd9\xd8\x38\x20\xa0\x0c\x0f\xac\x45\x7b\x7f\x30\xec\x4b\xfc\x83\x88\x05\xc2\xdc\x5c\x24\x5f\x9e\x9e\x1f\xfe\x72\x39\x44\x7d\xde\x7d\x7f\xf6\xf3\xc1\xd9\xd1\xe9\xf1\x91\x37\x1b\xfd\xe2\xba\x88\x33\x64\x62\x66\xb3\x4d\x9d\xcc\x36\x77\x32\x59\xd3\xc9\x04\x0f\x6c\xc7\x18\xf4\xe5\xec\xfc\xec\xb8\xa0\xdd\x11\xfd\xbc\xa0\x82\xa9\x9d\x9a\xa4\x6f\x93\xb1\xc8\x72\xf2\x5a\x8b\x20\xbf\x3e\x7c\x11\xbb\x65\xf4\x53\xd9\x2d\x49\x9b\xd6\xe5\xc6\xe0\xd1\x72\x0e\xf6\x06\xbf\x1a\xa8\xb7\x56\xeb\x06\x9f\xb3\x26\x8f\xad\x52\x8e\xfb\x9a\xd8\x5b\xea\xad\x12\xe3\xc0\xa5\xe8\xcd\x23\xe1\x8b\xea\xe0\x45\x22\xcb\x9c\x9f\x91\x58\x72\xc9\xe6\xee\xae\xc7\x26\x04\x70\x59\x6e\xa8\xfc\xc0\xe8\xa7\x93\x09\x72\x19\x9b\x4c\xca\x40\x73\x16\x1a\x4b\xb5\xc9\x4e\x46\xb6\x76\xed\x47\x8a\x73\xd6\xe3\x1e\x97\xa4\x11\x16\x98\x87\xb0\xc0\x46\x94\xa6\x3a\x6d\xba\x91\xb0\x54\x75\x6f\x98\x7c\x9b\x30\xae\x51\xde\x18\xce\x63\xad\x64\xb9\x37\xc1\x21\xfd\x0c\x73\xfa\x59\x5e\xb2\xeb\x94\xf1\x1b\x2d\x15\x81\x2b\xb6\x6d\x4f\x4b\xc2\x28\x5e\x22\x9c\xa0\xd6\x24\xbb\xa7\x64\x6c\x12\x1f\x16\x9f\x66\xaa\xc5\x2d\xaa\x73\x2d\xb6\x34\x97\x4b\x7d\x7e\x44\xd0\x76\xb4\xd2\x86\x81\x99\x15\x9a\x74\x05\xd5\x2f\xe3\xfb\x24\xfd\x94\xdc\xe5\x17\x14\x32\x3a\xa9\x7b\xee\xd6\x6e\x81\x36\xdf\x73\x59\xbe\x29\x71\x26\xac\x14\xb8\x40\x38\x50\x82\x35\xae\x4e\x26\x8d\xa4\x4d\x2a\xa9\x57\x55\x4d\x53\xab\xba\x52\xbd\xf2\xc2\x87\xeb\x09\xcd\x79\x97\xa3\x86\x15\x37\xd3\x60\x1e\x79\xeb\xb3\x01\x66\x67\x61\x86\x22\xb5\x5e\x75\x61\x18\xbe\x9b\xd8\x24\x79\x1a\x44\x45\x13\xf4\xef\x65\x86\xf8\x67\x60\x74\xff\x5d\x38\xc1\x8b\xa2\xd6\xef\x02\x74\xe2\x63\x1a\x4b\xbc\x1b\x84\x0b\x52\xee\x42\xc1\xb5\xf4\xa1\x5d\x98\x38\xe9\xb5\x4a\x69\xfc\x32\x1e\x47\x90\x56\xa9\x1c\xfd\xec\x91\xa6\x7a\x7b\xf4\xc5\xef\x0e\x54\x88\x6e\x6f\xa3\xdf\xc5\x80\x0e\xbb\x23\x9b\x71\xcf\x2f\xb1\x4e\x02\x58\xab\x9e\xf2\xc9\xe3\x2b\x67\xd3\x78\xcb\x34\xc0\xf2\x0f\xaa\xe2\x18\x69\x21\x8e\xff\x64\x04\x89\x8b\x63\xe3\x42\x7d\x7a\x7e\xfe\x6e\x74\x7a\xf2\xf6\xe4\xca\x98\x80\xd5\xf0\xb0\x2e\xed\x2e\x19\x38\x48\x36\xc6\x38\x9c\x6d\x41\x1e\xae\x36\xe3\xa6\xf7\x6a\xd2\x26\x54\xd2\xb1\xa4\x13\x6f\xa7\x15\x7c\x7b\xbb\x3c\x22\xb0\x9b\xea\xcc\x82\x1c\x15\xd0\x62\x30\x34\x2f\x3c\x48\xee\x68\x92\xdb\x73\xa1\x65\xd6\x62\x6d\x8d\xa8\x28\x62\x97\xaf\x90\xf3\x8d\x4c\xcd\xb3\x34\x2b\xec\x25\x9d\x4e\x9c\x90\xad\xdd\x20\xde\x26\xef\x74\xe2\x9c\x4c\xbb\xe3\x94\x51\x2e\x5f\x2e\x59\x3a\xa1\xce\x8d\x98\x71\xeb\x26\xee\xe8\xd4\x31\x2f\xf0\x1d\xbe\xa0\xb7\x2c\x57\x4f\xed\x65\x7a\x54\xe7\x72\x23\xb5\x51\x2c\x17\x23\xcc\xb1\xc8\x91\x3a\x0b\x8c\x07\xf4\x9d\x0d\x91\x86\xf2\x8c\xd3\xc9\xab\x4c\x1c\x9d\xbf\xb5\x41\xc9\x50\x47\x4e\x06\x43\xfb\x13\xe2\xe9\x26\x17\xe5\xa7\xd7\xba\xf7\x24\x37\x12\xab\xf9\x56\xef\xdd\x0b\x73\xf2\x6a\x0d\x22\xdc\xeb\x2a\x77\x1e\x93\xc0\x68\x42\x15\xef\x33\xb1\xc4\xa3\xb1\x49\x62\x02\x87\xef\x1b\x66\x53\x85\xa0\x38\x45\xe5\x2c\x29\x96\x6d\x31\x9e\x32\x4e\x35\x40\xc5\x75\x9a\x8d\x3f\xe6\x2d\x00\x14\x78\xcb\xf2\x9c\xf1\x9b\xf8\x0f\x81\xb0\x08\x1f\xfc\x22\x50\x90\xcf\xb9\xb7\xc7\x5f\xbc\x76\x04\xcf\xb7\xb7\x21\x7d\xe5\x6b\x31\xe0\x43\x14\x43\x7c\x72\x81\xe2\x71\x77\x0e\x07\xba\x65\xc1\xe0\xd9\x20\x1b\x86\xd4\x2a\x4d\x81\x3e\x26\xde\x30\x79\xa1\x7f\xa3\xf8\x3e\x59\x2c\x28\x9f\x9c\x2f\x4c\x9a\xb7\xbc\x2f\x4c\x16\x41\x90\x52\xa7\xdd\xa3\xf3\xb7\x57\x82\x52\xd0\x26\xab\x5b\xbb\xb6\x53\x83\xc4\x7a\xdc\x3d\xcb\x26\xb4\xf9\x03\x13\x5b\x18\xd4\xeb\xaa\xd3\xe9\x43\x75\x8a\xaa\x09\x1e\xe3\xa5\xf6\x60\x66\x4d\x1c\x9f\x75\x4d\xff\xe0\x4c\x57\x67\x6c\x78\xf0\x3b\xed\x5a\x45\x69\x64\xb8\xc0\xc1\xbb\x77\xa7\x27\x87\x07\x57\x27\xe7\x67\xfe\x6a\xf1\xdb\xc5\xc1\xbb\x77\xc7\x17\xf6\x6e\x57\x85\xcd\x9c\x53\x7c\x1f\x46\x60\xf6\xca\x31\x95\x41\x4c\x64\xaf\x40\xda\x31\xf0\xef\x0c\x82\x64\x4d\x41\x90\xcc\x44\x25\x35\x03\x09\x02\x9c\x45\xa1\x3d\x03\xbe\x6b\x3e\x82\xdf\xf4\xc8\x7d\x5a\x02\xf6\x88\x70\x46\xae\x3e\x73\xa9\x89\x0c\xe4\x46\x45\x78\xab\x80\x4b\x45\xda\xbe\x85\x23\x8d\x2e\xa5\x98\x44\x1d\x81\x2a\x62\xea\xc4\xe8\xe1\xbc\x7b\xb3\x64\x13\x9d\xb1\xdc\x44\xae\xdc\xd2\xb2\xd1\xf1\x9a\xc6\x54\x47\xa9\x60\x56\xb2\x00\xfb\x17\xa8\x88\xdd\x56\xd1\x04\x57\xd2\x41\x87\x7e\x88\x0c\x41\x2c\xb8\x25\xcc\xab\xac\x51\xb9\x03\x4a\x22\xf9\xe8\x4a\x85\x4e\x3b\xc4\xea\x1f\xae\x71\xe0\x32\xe6\x51\x89\x4b\xdb\x1b\x14\x5d\xc6\x5b\xf5\x57\xa1\x0f\x8c\x46\xc7\x47\x40\x37\xa4\x9f\xda\x6f\x84\x75\xb1\xb5\x55\xe0\x12\xd3\x6b\xe0\xdf\x18\xec\x56\x65\x7e\xeb\xb8\x0c\x9c\x15\x8a\x27\xc7\x19\x0c\xc7\xca\x7a\x25\x44\x16\xf8\xb4\x51\x34\x80\x12\x5a\x49\xd8\x40\xaa\x75\x49\xbb\x55\x3f\x46\x00\xfb\x54\x55\xb4\xe4\x8d\x55\x19\xc8\xd3\x86\x82\xf5\xea\x87\xba\x43\xea\xa0\x29\xd5\x41\xbb\x23\xa9\xce\x43\x58\xa0\xab\xcc\xa5\x13\x66\xfc\xc6\x26\xb7\x1c\xa7\x34\xe1\xcb\x85\x9a\x0a\x75\xbb\x76\x27\x5e\xf9\x70\xeb\x74\x68\x57\x0a\x76\x73\x43\x45\x1c\x4d\xd8\xc4\xe8\x36\xcd\x2e\x89\x60\x42\xca\x35\x55\x39\xdd\x56\xe5\xcc\x45\xde\xab\x33\x38\x36\xad\x4f\xb3\xfe\xe5\xd0\x1f\x77\x76\xf6\x9c\x7a\x71\x20\x86\x2d\xae\xc5\x6b\x9d\x38\x88\x07\xf2\x91\xb4\x02\xa4\xc0\xbb\x08\x15\xb0\xa5\xeb\xe2\x75\xa5\x2b\xab\x55\x5c\x13\x08\x7a\x96\xbc\x52\x9a\x88\x83\x34\x85\xe3\x3b\x46\x96\x97\xbc\xcc\x96\x7c\xd2\x98\x44\x6b\xf0\xc1\xfa\xaa\xdd\xeb\x28\x05\x33\x47\x7d\xd9\x2d\xfd\x8e\x11\x9e\x32\x91\x4b\x75\x30\xf5\x65\xd7\xfd\x1d\x23\x0c\x91\x4e\xfa\xb1\xfd\x33\xd6\x63\x19\xaf\xe1\x4d\xe5\xcb\x45\xb8\xc9\x00\x91\xb2\x72\x70\xaa\x1b\x59\x09\x57\x88\xea\x1d\xed\x37\x45\x7d\x60\xe5\x85\x69\x09\x6b\x99\xd0\x98\x3d\x66\xa1\x9c\xfd\x02\xff\x6e\x3e\x00\xf3\x44\x65\xc7\xe5\x81\x88\x16\x57\x5b\x5e\x0b\xad\x53\xee\x80\x33\x69\x59\x66\xc0\x48\x5d\xda\xd2\x37\x42\xdb\x39\xdc\x74\x91\xe1\x70\xe1\x6c\x92\xe7\xb5\x78\x53\x96\x6e\xb4\xfa\x46\xc9\x37\xad\xcc\xdf\xbc\xf6\x99\x1e\x6b\x86\xfa\xfc\x27\x42\x57\xab\xcc\xdc\xa6\x62\x54\xc8\x8a\xec\x09\xfe\x46\x36\x89\x3c\x44\x64\x4d\xba\x87\xef\x2f\x2e\x8e\x75\x70\x2e\x5c\x9a\xf4\xcd\xd5\xb6\xfc\x13\xd5\x22\xd7\x1e\xb3\x5d\xf1\x6a\xa4\x45\xb6\x80\xb8\x73\x7f\x89\xca\x50\xcb\xdd\xa1\x12\x75\x87\x02\xbb\x52\x6d\x47\x75\x3a\x7f\x0a\x93\x3c\xb8\x32\xfd\xa1\xf8\x5c\xbe\x0a\x6c\xad\x95\xb3\xed\x86\x6a\x14\xc1\x35\xe2\x0f\x25\x5b\xbb\x2d\x29\xee\xee\x6b\xc4\x10\x23\x4c\xc9\x56\xaf\x98\x32\x9e\xa4\xe9\xdd\x3d\x75\xbb\xf1\x49\x13\xb7\xf9\x1a\x50\xc0\xee\x29\x6f\xe6\x66\x2c\xe2\x90\xc6\x34\xea\x30\x0d\x71\x86\xef\xe9\x40\x06\xf7\xb1\xa2\x4e\x74\xe6\x6b\x6b\x78\xf7\xb7\x01\xda\x3c\xf7\xf5\xe3\xa5\xb4\x03\xc2\xbb\x95\xfd\xf4\x1c\xbc\x24\xf4\x1c\x46\x58\xc7\x80\x99\x7e\xd8\x3a\x74\xdd\xe6\xd2\xb9\x4e\x57\x15\x72\xc0\x66\x3a\x01\x3c\x05\x98\x77\xe6\x00\xde\x4a\xf3\xde\x70\xbf\xb2\x24\xd5\x34\x1c\xb3\x46\xf6\x2e\xac\xe5\xca\x4d\xbc\xe1\x1b\x72\xba\xaf\xe5\x88\x8d\x91\xc5\x0e\xea\xa4\x45\xbb\xfa\xa9\xba\x7e\x71\x8d\x42\xc1\xd7\xc5\xc3\x3d\x52\x70\x7e\x30\xea\xad\x06\xa2\x11\x62\xa3\x6a\xc4\x35\x1b\x45\x0e\xc6\xaa\x92\x98\xa3\xae\x23\x25\x01\x01\x27\xea\x3e\xa7\x05\x9e\x50\xbc\x54\x7d\x89\xe3\x9e\xce\x2e\x78\x0e\x31\x5a\x70\xde\x1b\xa5\xe2\xd6\x2e\x4e\x00\x3b\xa8\x94\xe7\xad\x76\xd8\xa8\x55\xac\xe4\x3d\x3f\x80\x74\xf7\x8c\xdf\xb4\xff\x4b\x47\x24\xe9\x32\xff\xd5\x66\xda\x59\xdd\xa0\x4f\xb7\x19\x6f\xf3\x8c\xef\x30\x7f\xeb\x6b\x07\x21\xdf\x79\x3b\xce\x97\xe3\x59\x3b\xc9\xdb\xaf\x92\x5c\xbe\xcc\x32\x89\xba\x91\x96\x94\x39\x57\x0b\x73\xc2\xa9\x90\x6e\x75\x32\xbd\x3a\xc9\xff\x47\x56\xa7\xf7\xa8\xd5\x09\x73\x43\x3a\x21\xd1\x7c\x05\x5a\xb9\x70\x36\xdd\x32\xb8\x39\x4d\xf4\x9c\xe6\x9c\xdc\xeb\xf8\xf8\x25\x7f\x5a\x2a\xbe\xde\x77\x05\xfe\xd9\xfd\x16\xe0\x9f\x94\x93\xc1\x70\x2f\xee\xe1\x54\x6f\xf6\x57\x82\xd2\x2f\x14\xc5\x29\xd7\x37\xd6\xf1\xb7\x12\xce\x57\x82\x02\x3d\x70\x0f\x5d\xf2\x02\xf3\x6e\x30\xa9\x6b\xec\xfe\x15\x6f\xc2\xee\x3c\x59\x38\xc1\xd3\x3b\xf9\xa5\xdc\x86\xf0\x8d\xc0\x9b\x70\x34\xea\x37\x3a\xdd\xa9\x7b\xdd\xdd\xc2\xa6\x50\x36\x90\x37\xe0\x16\x0a\x21\x74\x6b\x70\x7e\x02\x30\x6b\x52\x4d\x02\x0d\x60\xb6\xda\x32\x8b\xf3\x32\x94\x8e\xae\x17\x22\x20\x2c\x90\xcd\x58\x53\x00\xf3\x4e\xb3\xaa\x37\xb9\x0f\x47\xc0\x29\xa4\xf7\xeb\x53\xf3\xc6\xe3\xb5\x2c\x8b\x6f\x4f\x29\x9d\xae\xcb\x01\x18\x81\x83\xec\x26\xb8\x98\xa5\x8f\x5e\x4d\x36\x21\xc5\x2c\x9b\x93\x98\x3e\x8c\x04\x93\x6a\x24\x98\xe6\xb4\x7f\x0d\x19\x86\x6d\xcf\x1e\x97\x53\xd8\x24\xc6\xfb\x7b\x32\x04\xfe\xaf\xc8\xc8\xdb\x88\xc2\xe2\x13\x08\xf9\xf9\xc0\x9a\xee\xb0\xce\x56\xf0\x18\x70\x95\x47\xa5\xe4\xfe\xe6\xc4\x7f\x8f\x1e\xe7\x63\x90\x74\xec\x60\x81\xcf\x5f\x48\x84\xa7\x9c\x24\x5d\x13\x8c\x49\x3f\x4b\xca\x27\xf1\x3d\xcb\x0f\x4d\x32\xbc\x3e\x4c\x94\x22\xfa\xa5\xa4\x13\x64\xb6\x66\x03\xa5\x96\xf2\xec\xc1\x21\xaf\xbe\x04\xa0\xfc\xd6\x2b\x11\xdf\xdb\x50\xc8\x35\x5e\xd9\x63\xae\x2f\x99\xc6\xaf\x40\x71\xee\xea\x7e\x2b\xf0\x94\xab\xee\xba\x54\x6a\x0d\x0a\xc3\x7f\x82\xa2\xed\x99\x2b\xf4\x4c\xef\x4e\x7d\x54\x4d\x38\x61\xb4\x31\xaa\x69\xd4\x4d\xb3\xb1\x4d\x1b\x66\x6c\x13\x08\xe1\x19\x27\xa7\xf1\x3d\x9b\xf4\xa3\x8b\xd3\xe9\xee\x82\x1e\x4f\x23\x0c\x6a\xf0\xfe\x3f\xee\xa3\xfc\x6e\x7e\x9d\xa5\x79\xd4\x1f\x44\x1d\x13\x87\x17\x0d\xb1\xce\x81\x08\xa7\x40\xd4\x1f\x0c\x76\xff\x03\xef\x82\x5f\xc6\x70\x88\xa3\x59\x92\x1f\xdf\x26\x69\xd4\x9f\x26\x69\x4e\x71\xb4\x5c\xdc\x26\x42\x7d\x36\x2c\xfe\x81\xe7\x54\x26\xfd\x7b\xef\x67\xd3\x8f\x16\xc9\xf8\x63\x72\x43\xf3\x67\x66\x50\x3b\x76\x72\xf2\x67\x37\x29\x9b\xcf\xa9\x78\x96\xb2\xeb\x67\x96\xb9\xe4\x7e\xd4\xdd\xd9\x75\x1e\x15\x05\xc2\x0b\x37\x80\xe3\xcf\xfc\xcb\xf1\x8f\xe7\x97\xcd\x03\xb0\xab\x1d\xe1\xe8\x8a\x7e\x96\xaf\x20\xf1\x21\x8e\xfe\x69\x8f\x84\x08\x47\x1d\x75\x50\xe7\xf5\x11\xfe\x1b\x1e\xfc\xf8\xef\xf8\xf9\x10\x0f\x06\x3f\xf6\xf0\xe0\xc7\x7f\xc3\xbb\x43\x3c\x08\xb2\x29\x0e\xf5\xf8\x71\xf9\x75\x90\x60\x71\x68\x27\x08\x66\x7e\x30\x88\xfc\x6c\x0e\xee\x1b\x5b\xeb\x41\x6b\xcf\x71\x0f\x0f\x22\x4f\xaa\xd1\xb0\xa1\x0e\x1c\xd1\x34\xa7\x4d\x55\xfd\x07\x56\x55\xa8\xde\x0c\x76\xff\x1d\xff\xcf\xa1\xfa\x23\xfa\xa7\x09\x9f\x0b\xc7\x1e\x34\xa6\x0f\xa1\x48\x7d\xfb\xe3\x73\xfc\xa3\x6d\x50\x2d\x2e\x84\xad\x50\xc0\x4f\x54\x0b\x8a\x9b\x9b\x7b\xfe\x37\x35\x37\x1c\xd6\x1e\xee\xe2\xe7\xf6\xf9\x5a\xc2\x8b\xd8\x34\xc2\xe1\x91\x16\xa5\x54\x46\xdf\x89\x1c\x61\xeb\x39\x52\x9c\x3b\x52\xbc\x3d\xd8\x3e\xec\xfd\x36\xa1\x8d\xa4\x58\xdf\x41\x25\xc2\xb1\x7f\xf7\xcc\x4a\x07\x94\xf3\xc0\x48\x6d\x68\x42\x38\xdc\xef\x34\x50\x5d\xb3\x1b\xe9\xed\x66\x4b\xa6\xd3\x86\x04\x37\x1b\xe7\x93\x61\xc5\xec\x12\x68\x6c\x2d\xd3\x78\x2b\x70\xc4\x16\x74\xaa\x4d\x66\x22\xbe\x37\xc8\x36\xfd\xfb\x79\xc2\xb8\x0d\x3a\xc7\xba\xd2\xfe\x3d\x54\xd6\x17\x8a\xc7\x66\x36\x4a\xdc\xe0\x6c\xe8\x88\x0a\x23\xd0\xec\xc8\x6c\xb1\x93\xd2\x5b\x9a\x46\x21\xd8\x86\x29\xa1\xe1\x13\xac\x67\x80\x83\xe5\x28\x0a\xa3\xc2\x36\x18\x5a\x82\x4e\xfb\xac\xa1\xc2\x72\x83\xcd\xb0\x1e\x0d\x2d\x15\x05\x35\x87\x93\x9f\x5b\xde\x98\x8c\xd3\xcd\x37\xfb\xf6\xeb\x1d\x53\xd7\x3b\x56\x93\x6c\x03\x27\x9d\x7d\x2b\x20\x06\x18\x37\x55\x3b\x1c\xc7\x12\xa1\x7e\xc3\x87\xa0\x09\x29\x74\xb6\xd1\xae\xa0\xd9\x82\x72\x9d\x83\xa3\x22\xa8\xf8\xda\xa4\x83\x16\x6a\xea\x94\x15\xfc\x47\x65\x2c\x39\xe9\xc8\xaa\x94\x2f\x1b\x03\x28\x45\x78\x99\x94\xe5\x00\xb7\x58\x40\xd6\x08\x16\x27\x08\x15\xe6\xca\xd2\x60\xd7\xe4\x4d\xe6\x23\x23\x74\xb6\xac\xee\x3e\x04\x6e\xd3\x36\xd9\x4e\xa7\x16\x0a\x49\xf7\x1d\x7a\x3c\x84\x02\x5e\xd2\x94\x2a\xa1\x21\xa6\xa8\x4f\x75\x62\x25\xab\xe1\x42\x65\xf5\x96\x1f\x61\x54\x35\xb2\x5a\xfd\x17\x08\x48\x4d\x46\x1c\xf5\x3c\xa7\xf2\x3c\x70\xb5\x0a\xc7\x61\x37\x59\x45\x9e\xab\xdb\x0c\x0a\xab\x1d\x0a\x0c\xbc\xb7\x1c\x3c\xff\xe2\xa8\xce\x4a\x14\xdf\x79\x06\x5a\xd9\x08\x0f\x22\xfa\x79\x91\x09\x99\xab\x83\xa0\xf9\x4b\xc5\x71\x20\x41\xdf\x10\x57\x60\x6c\xa2\x65\x4e\xdb\x6a\x2a\xc7\x32\x6a\x19\x39\x0e\x80\x44\xa8\xcd\x9c\x1b\x53\x1c\x8d\x46\x34\x7f\x0b\x4c\x2e\xc2\xf7\x3a\x28\x0c\xcc\xbe\x6b\x0b\x78\x34\xe0\x7b\xca\x97\x73\x2a\x94\x48\xa9\xc4\xb2\x35\x5a\xb4\xae\x2d\x50\x6c\xaa\xf5\x2d\xe4\x18\x7c\x64\x8d\xea\xe3\x8d\xb5\xcd\x9f\x52\xdb\xfc\xa1\xda\x16\x94\x7e\x7c\x52\xff\x6c\x81\x8d\xb5\xe6\x54\x3e\xa9\x52\xf3\xfd\xc6\x3a\x9d\x19\xf4\xd1\xb5\xba\x12\x45\x81\x36\x93\xa4\x23\xb4\x12\x55\x6a\xfb\xf5\x75\x72\xad\x78\x78\x43\xd1\xa5\x64\x69\x40\xbd\x70\x55\x51\x3f\xed\x81\x69\xd4\xab\x55\xea\xb5\x0a\x82\x6f\xa3\x61\x6a\x27\x8d\x4c\x30\x75\xab\x42\x66\x8a\x4b\x1a\xa2\x24\x14\xd6\x9f\x50\x20\x2a\x42\xfd\x84\x84\x69\x07\x32\x9c\x58\x58\x1a\xcf\xe6\x82\x4a\x32\xe3\xac\x0e\x3c\x59\xcb\x2c\x28\x8e\x96\x5c\x77\x75\x12\xa9\xdd\xef\x2b\xb6\x9e\x3b\xbb\x38\x7d\x00\x4f\x70\x94\x1a\x14\xfa\xfc\x03\x15\x60\xcd\xd8\x75\xd6\x0a\x38\x90\xe8\xe4\x98\x4f\xbc\x5f\xd2\x34\x4d\xa4\xfa\x7e\x62\x3f\xb7\xb6\x04\x03\xaa\x16\xfa\xed\x8d\x26\x34\x1f\x0b\xb6\x90\x99\xc8\xcb\x2f\xe6\xec\x33\xe3\x95\x67\x69\xf2\xe5\xee\x70\x96\xd4\x9e\xc3\x6c\x57\x9e\xc9\xe4\xa6\xf2\x44\x18\x0d\x7f\xe5\x31\xcb\x4f\x38\x93\xce\x87\x4a\x87\x27\x58\x91\x07\x26\x3a\xc0\xe9\xeb\x8e\xad\xf7\x4d\x26\x3c\x66\x5f\xf0\xd0\x2f\x0d\xae\x4c\x9e\xa9\x65\x13\xc4\x7e\x4e\xe5\x25\x34\x7f\xe4\xec\xdc\x65\x1e\x5e\xff\x84\x4e\xaa\x5f\xb0\x7c\x53\x1d\x4e\x9c\x60\x5d\x96\xfb\x4f\x0c\xb4\xa2\x1e\x3c\x6a\xa8\x86\x36\x98\x61\xca\xb5\xa8\xfb\x77\xb5\x92\x9c\x4a\x35\xb9\x2c\x49\xd9\x97\x4a\x47\xca\x93\xdf\x03\xbc\x7b\xfe\xe8\xef\x77\x0b\xe3\x80\xd5\xfc\x71\xc9\x78\xa2\x3f\xd3\x05\x1c\x98\x13\x6c\xb4\x75\x16\x68\xbd\xea\x24\xcc\x11\x6d\x62\x07\x0d\x75\x80\xeb\xab\xe8\x8e\x94\x74\x22\xb4\xc7\xcd\xf9\x27\xfe\x36\x59\xac\xab\x72\x00\xa9\xd7\xcc\x5f\x76\x17\x1b\xe5\x1d\x60\x81\xa2\x86\xfa\x2e\xd7\x67\xe3\x2d\xd7\x07\xb0\xa4\x54\xea\x3a\xa6\x8c\x4f\x4e\xec\xc6\x2c\x77\x49\x1d\xc8\x3e\x45\xa5\x2a\x6d\x00\xa9\x88\x70\x0e\x0a\xa2\x1a\x54\xc7\x3d\x9c\x44\x03\x54\x95\xc5\x46\x6a\xb3\x42\x40\x72\x18\xb5\xc5\x01\xf0\x7f\x34\x4b\xf2\x13\xee\x7a\x72\x59\x73\x25\x7f\x7a\x4f\x3a\x1d\x0d\xa0\x22\x91\x4f\xb9\x19\xb4\x6a\x9e\x01\x6d\x58\x5b\x6b\x83\xaa\x31\xe4\x19\xe5\x20\xc6\x2d\x42\xe4\xbe\x1c\xd0\xa1\xbf\x9d\x28\x12\xfe\x50\xaf\xcb\x79\xef\xd7\x49\x20\x8e\x4c\xdd\x11\x52\x6b\x03\x84\x67\x59\xcf\xa6\x0e\x39\xf6\xf4\xa8\x3e\x5d\x34\xd6\xb8\xb9\x5b\xae\x85\xa0\x67\x9f\x04\x83\xa4\x74\xa7\x8e\xb5\x6e\xea\x63\x53\xad\x9e\x29\x1b\xd8\x23\x3a\xac\x85\x86\x0a\x88\x74\x52\xaf\xc8\x00\xd2\x3e\xc3\x9c\x24\x93\xc7\xb7\xec\x5b\x59\x03\x88\x09\x01\xc6\xc6\xdb\xf3\x33\xe3\x75\x29\xb9\xbe\xb9\xe2\xc8\x9c\x32\x11\x52\xe5\xb4\x79\x49\x11\x58\xbd\x86\x12\x43\xa9\x11\xb6\xaf\x08\xeb\x3a\xa6\x99\x38\x4e\xc6\xb3\xb7\xfa\x0c\x2b\x5d\x00\xad\xdb\x10\x5e\x4b\xf6\xf6\xec\x2b\x61\x6b\xc7\x01\x5a\xac\xdc\x37\x1b\xbe\x2f\x31\xb7\x6d\x05\x9a\x43\x81\xee\x75\x76\x5f\x81\x14\x93\x80\xb1\x09\x25\x55\x09\xa4\x75\xf1\x95\x9d\xaa\x68\x40\xf1\x79\x77\x10\x97\x09\x2a\xae\x9d\xd4\xa1\xc7\x91\x2b\x64\xa2\xfd\x11\x72\xa1\xbd\x60\xee\xa3\xf4\x63\x73\xd5\xe5\xf5\xad\x72\xad\x38\x0a\x2b\x8f\x02\x68\x32\x49\x08\xc9\x1d\x18\xae\xa6\xa4\x79\x76\xbb\x66\x00\x66\xf1\xab\x43\x8c\x29\xce\xc3\x95\x5a\x57\xf8\x51\xcb\x15\x74\xf4\xeb\xd7\x0c\x34\x2f\xb0\x6a\xdc\xaf\x1a\x47\x58\x6c\x81\xe7\x38\x05\x84\xb8\xc6\xe5\x4b\x26\x93\xab\xec\xd4\x89\x19\x4d\x12\xac\x3e\xd5\x96\xf9\xcc\x25\x14\x32\x2f\xf7\x77\xfb\x3d\x08\xa5\xb5\xb3\xf8\x4a\x64\xf3\x75\x75\xad\xaf\xe7\xb9\x5e\xeb\xe0\x45\xb3\xa5\xcd\xce\x06\xeb\x74\x62\x46\xb6\x76\x4d\x9a\x0c\xe2\xd6\x08\x18\x82\x6d\x1e\x9c\x83\xe6\x71\x86\x7d\x50\x28\x84\xb4\x26\x9d\x4e\xf2\xa2\x2e\x81\x76\x3a\x71\x16\x3a\x0f\x35\x08\xa9\x3b\x3b\x38\x21\x3b\xbb\x08\x43\xe6\xe5\x04\x65\xda\xf5\xe9\x1e\x72\xda\xf8\x2c\xc7\x12\xcf\xa9\x9c\x65\x93\xbe\xc0\x1f\x19\x9f\xf4\x39\xce\xef\xf8\xb8\xcf\x8a\x20\xfb\x60\x4e\xb2\x41\x32\x6c\x3d\xd7\x50\x09\xcf\xd5\x2a\x75\xd5\xc7\xfb\xa5\x3e\xf4\x63\xfd\x94\x70\x9c\x77\x55\x25\x84\xa1\xa2\xc4\x77\xeb\x73\x5d\xe1\x36\x55\x71\x7a\x8b\x90\xa5\xf1\x3c\xd1\xd2\x88\xcb\xa4\xa6\xa4\x96\x4e\x07\xa6\xa8\x3e\xf4\xd5\x6a\xb9\xbd\xad\xc7\xdd\x38\x75\x0d\x12\x7d\xaf\x26\xc2\x2a\xe6\x5d\x79\x06\x9b\xc8\x76\xb1\x71\x34\x36\x93\x58\x6d\x24\x2f\x96\xe8\xde\xfa\x57\xe9\x11\x00\x51\xd7\xd1\x63\x25\xa1\x0d\x6d\x54\x90\x93\x25\x2a\x41\x06\x97\x7b\x89\xaa\x23\x91\x7e\x25\x45\xf5\xe3\x56\x7d\x2e\x34\x18\x9d\x5d\xd9\x5e\x03\x69\x35\x91\x1b\xe9\x55\xe3\x0d\x64\xcd\x21\x8f\x11\x39\xe0\xc3\x3d\x58\x98\x39\xe0\x6a\x01\x31\x62\xd6\xd5\xc4\xa8\x23\x2a\x67\xd9\x04\x41\x0f\x96\x3c\x9f\xb1\xa9\x8c\x59\x53\x7b\xdb\xdb\xa8\x28\x8a\x35\xb7\xb0\x65\x09\xcc\xb5\xbc\x80\xf3\x44\x8e\x67\x8c\xdf\x34\xed\xfc\x8a\x07\xe5\x83\xeb\x20\xd0\x43\x3e\x88\x4c\xfb\x20\x9a\x91\xaa\x65\x5e\xad\x40\x96\x84\xad\xd2\xe9\xec\xba\xbf\x57\xab\xb8\x02\x2f\x01\x14\xa8\x77\x6d\x6d\x86\xc0\x99\x53\x17\xf4\x08\x64\x70\x42\x64\xd7\x39\x15\xb7\x54\x40\x52\xb5\xf5\xe9\x0f\x1f\x41\x63\x95\x0c\xef\x61\x82\xf7\xd0\xc3\x57\x63\x8b\xfa\xe1\x70\x33\x1c\x58\x66\xae\x07\x1e\xc4\xec\x8f\x21\x52\x03\x12\x00\xf9\xbb\x66\xa7\x13\x53\x18\x2f\xd5\xe3\xe5\x7e\x50\x9b\x53\x65\xe9\x6d\x54\xf3\x28\x0b\x3d\x04\xfd\x4e\xf3\xed\xd9\xbd\x36\x2e\x5d\xe3\x5a\xa5\xbb\x3b\xb5\xd1\xf3\x72\xb5\x52\x07\x71\xa2\x63\x8c\x17\x01\x44\x6d\xc9\x17\x0d\xae\x59\x3a\xde\x6d\xdc\x8c\xa9\x8b\xa7\x21\xd0\x90\x0f\xb3\x9b\x98\x4b\x82\x97\x26\xdc\xab\x99\x17\x1e\xa6\x16\x8c\xa4\x59\x28\x0c\x12\xf2\x8f\x63\x8a\xc2\xd3\x3b\x2c\x10\xdb\x8a\x04\xf2\xc0\xd7\x9a\x9f\x6e\x69\xe1\xd5\xfc\x22\x02\x61\xd9\x52\x95\x89\x3a\x9a\xf0\xa2\x41\xb8\x99\x99\xbe\xd9\x40\x34\x48\x92\xe2\xee\x90\xbe\x9f\x3e\x98\x21\x0d\xa0\x55\x26\x00\x89\x81\x45\xe1\xa7\x65\xee\xed\x34\x76\x6c\x8c\x50\x87\x29\xba\xc7\x7e\x22\xbd\x3d\xb6\xb3\xe3\x60\xbb\x06\x0c\x2e\x51\x99\xa6\x39\xbd\x8f\x32\xb3\x73\xb4\x64\x9e\x99\xed\x13\x82\xa2\x5b\x2c\x9c\x9d\xdd\xc2\xe8\xa6\x16\x1b\x15\x73\x69\x93\xb2\xf8\x21\xb5\x9c\x56\xe4\x3d\x41\x5f\x57\xfb\x30\x50\xdc\xfb\xf7\x62\xc9\xd3\x2c\x5b\x34\x29\xf8\x82\x47\xc6\xbf\x33\x13\xbe\xe0\x22\x4b\xef\xa6\x2c\x0d\x9b\xa6\x42\xc0\x17\xfa\xd7\xad\x66\xa5\x61\xcf\x16\x82\x8e\x13\x49\x27\x3b\x53\x9a\xc8\xa5\xa0\xcd\x4a\x72\x30\x6e\x35\xab\x17\xb1\x4b\x12\x06\xa9\xe7\x27\x78\xf6\xed\x0a\x47\xeb\x10\x41\x3e\x52\x4c\xbb\xc9\x52\x66\x87\xf6\x49\xa3\xd7\xb0\x33\x3a\x59\x5f\x73\x49\x34\x46\x99\x48\xee\x20\x05\x0f\x30\x3b\x0a\x5c\x4e\xb1\x37\x5f\x40\xf1\x3a\x4b\x32\x54\x03\x9b\xd1\x58\x22\x7c\xa5\xcd\x40\x2c\xaf\x37\x1c\x86\x91\xbf\xcc\xb2\x94\x26\x3c\x4e\xa8\xc5\x49\xa2\xda\xc5\x6c\x3c\xa3\x93\x35\xd7\xee\x20\x9c\xcc\x2a\x53\x91\xdd\x65\x0e\xe9\xc3\xdd\xff\x21\xf8\x8d\x76\x93\x94\x25\x79\xd3\x8d\xce\xf4\xfa\x5f\x00\x78\xfe\x4e\xf7\xda\xad\xaa\x9d\xed\x9a\x1c\xbc\x6e\x4d\x24\xbe\x1f\x67\x7c\xca\x6e\x96\x4e\xe7\x1d\x6a\xc0\x77\x71\x5e\x41\x8c\x3f\x36\x49\x30\x04\x5c\x1c\x9b\xf5\xe3\xd7\xf6\x1b\x54\x14\xd0\x3f\x75\x93\x7d\x97\xc8\x19\x19\x51\x3d\x5f\xe4\xda\xfc\xf1\x1b\x93\xb3\x23\xed\x5b\xb0\x26\x9e\xe9\x9a\x3a\xe4\xac\x7a\x2a\x04\xef\xd0\xe9\x9a\x11\xd9\x82\xdc\x50\xad\xc4\x26\xc7\xea\x0f\x29\xee\xaa\xba\x1c\x55\xbd\x29\x79\x6c\x0d\xc9\x5b\x3d\xe8\xab\x06\x41\x3a\x90\xe4\x37\xb0\x22\x2e\xd2\x32\x9a\x8d\xcb\xa2\xea\xfa\x02\x40\xbd\x7f\xa1\x16\x10\x5f\x97\xe5\x96\x08\xf7\x7f\x70\x5f\xf7\x5d\x4d\x26\xc5\x6a\xe1\xeb\x3e\xe1\x67\x89\x64\xb7\x14\x8a\x91\x1f\x30\xe4\x52\x85\x1f\xe7\x46\x06\x58\xd7\xf3\xd7\xa6\xfe\x05\xde\xda\x35\x35\xaa\x0b\xd1\x93\xca\xce\xed\xb0\x01\xe4\x11\x02\x58\xb9\xfc\x8d\xa5\xa9\x0e\xc5\x24\x3f\x57\x5e\x1d\xb1\x89\x79\xf3\x01\xd3\x2e\x4d\xc6\xb3\x77\x22\xfb\x7c\x07\x6d\x06\xc5\x1a\xe6\x0b\xf8\xfe\x89\xc3\xe2\xf2\xfa\xb8\x4e\x87\xe9\x26\x7c\x79\x57\xac\xa8\x35\xe2\x3b\xf0\x55\x6d\xb8\xe2\xa5\x26\x92\x89\x13\xa0\xc8\x02\x53\x75\xa9\x6d\xbe\x52\x6e\xde\xcc\x06\xf7\xdc\x67\xb8\xb0\x6a\xc8\x9a\xb4\x1a\xd8\x86\xcb\x9d\xb4\x40\xce\x40\x89\xfc\xef\x60\x7e\x46\x84\x37\xb1\x2c\x19\x91\x3e\xba\x13\x0c\xb7\xae\x8f\x3a\xb5\x3c\x66\x9e\xb2\xdc\x1c\xcd\x61\x7b\x71\x9d\xf2\x97\xdc\x02\xdf\x3c\xcb\x78\xa3\x8b\x9c\x81\x69\xd3\xcc\xf5\x78\xbe\x90\x77\xe4\x88\xc2\x8f\x97\x69\xc2\x3f\x92\x33\xea\x65\x85\x05\xac\x8a\x39\x63\xea\xb1\xe9\x3d\x84\xd9\x6a\xe5\x31\x70\xb7\x5c\x7e\xad\xd5\x2a\x66\x84\x63\x1d\x20\x8f\xb4\xcb\xc0\xdc\x2c\x4d\x45\xdd\x10\x4b\xe3\xde\x4d\x08\x51\xad\x14\x15\x49\xc5\x7b\xd8\xe2\xa4\x55\x83\x44\xe3\xfb\x71\x46\x38\x4e\x08\x43\x7d\xf5\xd7\x32\x4d\x71\x42\x78\xb5\xc9\x06\xd5\x44\x2c\x71\xb9\xb9\x5b\x3f\xd8\x40\xb8\x23\x0e\x9e\x2b\xf1\xba\x18\x00\xa1\x29\x13\x5c\x3f\x6b\x69\x18\x54\x80\x7f\x49\x1a\x49\xcc\x2a\x60\x4b\x95\xeb\xd0\x13\x4b\x69\x9e\x56\x2d\x7d\xe5\xee\xdd\xce\x8f\x7b\xb9\x12\xce\xf2\x1d\xf2\xa3\xee\xd2\x92\xb0\x41\x3e\xc4\xa9\xfa\x6f\x7b\x77\x88\xc7\xf0\xc7\x73\x90\xd7\x52\x74\x3f\xee\x74\xf4\x1c\x2e\x71\x8a\xf0\x72\xb5\x8a\x97\xc4\x78\x67\x4f\xed\x04\xa6\x2d\xeb\xa7\x60\x30\x92\xb4\xdd\x0f\x7e\xad\x56\x71\x4a\x96\x83\x74\x88\x70\x6a\x5c\x4c\x96\x6a\x87\x5a\x3d\x79\xaf\xa0\x60\x11\xa1\x79\xb3\x0b\xfe\xd6\x19\x35\xde\x1f\x00\x4a\x61\x8f\x39\x13\x55\x4e\xbe\x28\x41\x03\xfe\x36\x6f\x18\xcd\xc9\x4b\x48\x83\x37\xa9\x7e\xfb\x1e\xd3\x2e\xcf\x24\x9b\xde\x95\xdf\x90\x57\x70\xdc\x86\xa7\x28\x99\x68\x72\x36\x4e\xff\x5e\x31\x47\x7e\x57\x95\x00\x73\x57\x0f\x8f\xe8\x38\x13\x4a\x7e\x23\x7f\x42\x1d\xf6\xb3\x57\x99\xf0\xaf\x72\x5a\x7d\xe7\x9a\x49\x74\x33\x70\x77\x62\x41\x6d\x4b\x73\xd8\xd5\x5e\xa4\xe6\x8c\x0d\x46\xdb\xe4\xd9\x7e\x5f\x60\xee\x59\x04\x66\x64\x17\x74\x44\x55\x2e\xd3\xe9\x94\x0f\x38\xc8\x42\xc9\x48\x2f\x2c\x3c\xd8\x1d\xda\xe0\xb9\x17\xdc\xde\x34\xd9\xf6\x36\x12\x03\x3e\x60\xc3\xa1\x3e\xcc\xd5\x9f\x41\xde\x06\xdd\xfb\xb5\x9d\x0c\x52\x07\xad\x56\x76\x3f\xba\x9d\x1f\xdc\x9c\xac\x84\x16\x37\x45\x17\x0a\xcc\xed\x6d\xee\x23\xbd\x53\x9b\x03\x33\x75\xef\xa8\x74\x93\xa8\xbe\x61\x10\x09\x04\x56\xbc\x13\xac\xfb\x12\x8e\xa1\xcf\x8b\xc4\xd1\x09\x74\x93\xea\x93\xc3\x1d\xb5\x9f\xd4\xef\xb1\x64\xb7\x89\xa4\xee\xe1\xb9\xe3\x9e\xee\xd1\x31\xa6\xdd\x69\xba\xcc\x67\x07\xf9\x1d\x1f\xdb\xc7\x15\x0d\x46\xf9\x52\x6d\x93\xde\x9b\x50\xe7\x52\x5c\xde\xb2\x14\x97\xa7\xb6\xe2\xdb\x20\xcf\x52\xeb\x2d\x91\x78\xd4\xa0\xbf\x95\xfe\xc4\xac\x30\x17\x8e\x5a\xb2\xb1\x80\xe6\x53\x5b\xb6\x0b\x3e\x44\x4d\x9a\xa4\x73\xa5\xb0\x34\x9b\x47\x29\x34\x89\x8a\xbb\xfb\xdb\x98\xe3\x0c\x0f\x38\x96\xdd\x45\x22\x67\x43\x03\x37\x82\x19\x72\x21\x89\x50\x1d\xf9\x35\xb6\xdf\x60\x68\x51\x26\x37\xaa\x7f\x10\xd0\x6f\x19\x6e\xd8\x69\x54\xe9\x40\xc3\x54\x49\x9d\x8a\xaf\x68\x51\xc5\x50\x93\xd0\xfd\x49\x87\xc0\xe5\x11\xce\x51\x3f\x8f\x95\xe0\x6a\x00\x75\xba\xf3\x9a\x6d\xc5\x47\x52\xd7\x8e\x62\x11\x1c\xc5\xf2\xa7\xdd\x7d\xb9\xb3\xdb\x07\x38\xfc\xdd\x3d\xfe\x42\x82\x46\x49\x0c\xf8\xce\x6e\x78\x28\x73\x77\x23\x49\xa4\xbe\x3f\x53\x2d\x88\x56\x45\xb8\xef\x2c\x04\xe8\x6b\x9c\x15\x05\x5a\x0d\xd8\xf2\xcb\xfd\x98\x91\x25\x4e\x88\xc4\x39\xd9\xca\xac\x5b\xfd\xab\x83\xf7\xa7\x57\xa3\x83\xcb\x3f\xce\x0e\x47\xe7\x2f\x2f\x8f\x2f\x3e\x1c\x5f\x5c\xa2\xbe\xfa\xb6\x3b\x55\x87\xe3\x52\xdd\x48\x28\x9f\x50\x2e\x7f\xa1\x77\x39\xce\xc9\x12\x74\xc9\x5e\xb9\x98\x92\x81\x3a\x3e\x7a\x7b\xe3\x17\x89\xdd\x81\xdb\xdb\x63\x34\xa5\x71\x32\x18\x97\xee\x9d\x4e\x92\x48\x6d\x0c\x74\xe1\x50\x1c\xac\xd0\xe2\x36\x91\x12\x5a\xee\x15\xcd\xe4\xfd\x54\xeb\xc0\xf3\xc2\xc8\x30\x70\xa0\x68\x43\x59\x22\x15\x2b\xe5\x8a\x1d\xfc\xcd\x0b\xab\x27\x3a\xc3\x09\xf9\x3d\x16\x08\xe7\x24\xb1\x86\x20\x31\xe8\x0d\xf1\x92\xc4\xc9\x6a\x25\x06\xbb\x43\x5c\xf7\x3c\x8c\x7b\x78\x16\xba\x13\xce\x98\xf5\xb1\x84\x4c\x68\x90\x9f\xc6\xbb\x62\x18\xfc\x3f\xba\x1d\xf5\xa3\xed\x38\x5f\xad\x24\xc2\x36\xb9\x11\x0b\x90\x32\xb3\x02\x15\xa8\xa5\xb5\xd8\x29\xf9\x48\xe3\x7b\x75\x89\x5b\x56\x2e\x7a\x8a\xf3\x4e\xcc\x35\x8e\x6a\xdf\x60\x80\x97\x71\x94\xba\x9f\xc6\x30\x02\xe8\xbb\x18\x3c\x1f\xa2\x7e\xaa\x66\x59\x26\x37\xe1\xa1\x75\xe2\x1e\x69\xee\x5b\x45\x29\x80\x05\x64\xb9\x7e\x09\x40\x1d\x41\x34\x9d\x2e\x88\x62\x8a\x2f\x5c\xc3\xcb\x4a\xcc\x0b\xed\xce\x13\xf1\x51\x97\x3f\xc8\x8f\x98\x6a\xf4\x08\x2e\x7d\xc9\xf8\x23\x9d\x90\xb9\xd4\x5c\xba\x19\x99\xf4\x25\xed\x2e\xf9\x42\x64\x63\x9a\xe7\xd4\x7f\x93\x93\xad\x1e\xfe\x40\x1d\xbd\x61\x83\x79\x7b\x65\x23\x25\xfe\x50\xbc\x7f\xca\xf8\x9a\x6a\xdf\xd3\xd5\xea\x75\x00\xc8\xfe\x17\x1d\xd0\x61\xd1\xaa\x14\xc9\xc9\x6f\xaa\x1a\xd3\xbc\xaf\xe9\x87\xe0\xe9\x41\x9a\x06\xdf\xbf\xa6\xee\x34\xd9\x84\xb4\x0a\x93\x7a\xa3\x73\x6d\xc2\xe5\xc4\x40\x5b\xfc\x45\x07\x72\xa8\xc6\x65\xac\x02\x1f\x68\x00\x06\x06\xf6\xa7\x36\xe3\xed\xac\x6b\x20\x3e\x0c\x49\x75\x3a\x54\x89\xa0\x95\xa7\x03\x39\x04\xf3\x55\xed\xa9\x91\x5a\x8d\x36\xc5\x75\xf3\x92\x26\x62\x3c\x3b\x62\x79\x72\x9d\x36\xb9\xe6\xb4\xdf\x53\x23\x09\x3c\x58\x04\x26\x98\x58\x4d\x8c\x5a\x9e\xf5\x5e\x97\x26\xda\x71\x3c\xa3\x8f\xf4\xed\x5b\x76\x83\x32\x1b\xbd\x06\x6f\x8c\x9f\xc5\xa3\x2b\xb6\x05\x36\xd6\x6a\x72\xa3\x3c\xba\x52\xf3\x7d\x01\x6a\xb4\xb3\x83\xb7\xc7\x97\xef\x0e\x0e\x8f\x2f\x47\x2f\xff\x18\x9d\x1c\x91\xf0\x11\xa1\xdd\xc3\xf7\x97\x57\xe7\x6f\xd5\xc6\x19\xbd\x3a\xbf\x20\xb4\xab\x43\xa4\x4e\xce\xde\x1c\x1f\x02\x16\xd2\xab\xf7\x67\xf0\x87\xfa\x18\x34\x50\x6f\xb5\xa2\x95\x76\x35\xe3\xa4\xdd\x32\xd3\x27\xb4\x7b\x50\x7b\x72\xca\xae\x45\x22\x94\x88\x44\xbb\x69\xf0\xf7\xbb\x8b\xf3\x77\xc7\x17\x57\x7f\x8c\x8e\x4e\x8e\x46\x87\x3f\x1f\x9c\xbd\x3e\xd6\x4f\x7f\xff\x63\x74\x78\x7e\x76\x75\x7c\x76\xa5\xfa\x68\xf4\x6f\x8e\x85\xd0\xee\xe8\x26\xcd\xae\x93\xd4\xab\xe6\x8c\x8f\xa1\xbb\x4a\xdd\x85\x21\x59\xdb\xce\x3a\x01\x4a\xee\xeb\x87\x0e\x2e\x7c\x63\x3d\x01\x5a\xb5\xe1\xdd\x00\x9b\x1c\xb9\x0f\x5c\x8b\x9f\xc2\xcb\x9b\xbf\xa7\xa9\x2d\x41\xae\xb5\xac\x96\x10\x25\x24\xb7\xd4\x9d\x36\xb1\xf1\xde\x19\x0a\x5d\x1e\x4b\x0a\x04\x73\x97\x03\xcc\xb5\xaa\xdf\x57\x4c\xd1\x6a\x95\x57\xdc\xc7\x62\x84\x56\xab\x73\xa8\x3d\x0b\xae\x95\xc7\x8f\xed\x19\xfe\x7e\xbd\xb8\x32\xbd\xc0\x73\x3b\xd8\xa0\x43\x97\xe1\x65\x63\x4b\xbb\x16\xdc\xf4\x47\xfe\xe4\x9a\x25\x39\x54\x1d\x0b\x63\x3a\xb1\x8e\x19\x1a\xc5\xa9\x29\xb6\x93\x36\xc5\x76\x86\x0c\xe2\xa6\x9b\xb3\x2f\xf4\xa7\x5e\xa7\x73\xd3\xd5\xdc\x4f\x8d\x6e\xe4\x9e\x8e\xfc\x53\x88\x18\x00\x30\x71\x84\x85\x51\x1d\xf9\xde\x9f\xeb\xe9\xac\x29\xfc\xac\x2b\x00\x23\x97\x00\x37\xa6\xe4\x6e\x66\x7d\xbd\x98\x71\x3c\xd3\xae\xae\xdb\xdb\xde\x74\x9b\x11\x69\xd3\x10\xf5\x23\xa4\x0e\xd0\x84\xfc\x1a\x53\x9c\xd5\x65\x5c\x5a\x93\x71\x29\x42\x2d\x66\xf2\x36\xde\x43\xd5\xfd\x5d\xac\x84\x9d\x7e\x86\x65\x72\xd3\x4f\x70\x28\xff\xf6\xeb\xf2\x6f\x82\x70\xbe\xcc\x41\x32\x9b\x18\x48\xcd\xfa\x06\x1e\xc1\xb8\x3e\x93\xad\x5d\x7c\x50\xc2\x91\xbc\x0a\x50\xb1\x2b\x8e\x52\x5b\xbb\x6a\x02\xb7\x08\xf9\x6c\x35\x64\xb0\xd0\x42\x2d\x34\xb6\x8e\x78\xeb\x50\xc8\xed\x6c\xb5\x32\x3d\x5f\x3b\x3b\xb8\x67\x4e\x9c\x25\x97\xea\x96\x69\x17\x4b\x22\xac\x95\x17\x6a\x19\x3b\x1d\xee\x17\x51\x8d\x24\xcd\x69\xfb\x40\x9f\xd9\x03\xe8\xe9\x30\x58\xc7\x8f\x8a\x2a\x46\x86\xd6\xd4\xfa\xeb\x1e\x35\xdd\x73\x90\xbb\x80\xd0\xb5\x17\x90\xc6\xc5\x79\xf4\x05\x04\x21\x7c\xe3\xba\x72\xf3\xdf\xdc\x15\xe0\x92\x6f\x49\xc0\x4e\xdf\xc5\x6a\x03\xd5\xbb\xb3\x5e\x01\x2a\x91\x12\x6e\x1a\x0a\x30\x7d\x65\xa4\x5d\x47\x77\x9d\x4e\xc3\x05\x52\x67\x2d\xa7\x95\x0b\xa4\xba\x2e\x06\x25\x95\x50\x76\x1b\x4b\xcc\xf0\x40\x09\x75\xa5\xdb\x23\xf7\xb7\x47\x6a\x66\xcc\x7e\x53\x9f\x31\x59\x9b\x31\x89\x50\xa5\xf5\x86\x19\x83\x8a\xc1\x3d\xde\xf7\x68\xd7\x5e\x14\xdd\xe4\xfd\xab\x6c\xbe\xb8\x09\x48\xbf\xe2\x98\xaa\x98\x30\x6a\x81\x67\x51\x50\xa5\x40\x1a\xe6\xf6\x50\x8b\x71\x5e\x0a\xb8\xb4\x0e\xf2\xe5\x53\x1c\xbc\xe4\x2b\x07\xfb\x21\x6c\xe1\x0b\x5d\x83\x73\xac\xbf\x3c\x3e\x7d\xa5\x3e\x89\x02\x18\xee\x13\xaf\x3d\x6f\xde\xd5\x0d\xb7\x42\x3a\x38\x1c\x5a\xb5\x8b\xfa\x1b\x72\x1f\xb7\x9c\x2a\x21\x94\xdb\x15\xe7\x74\xe6\x36\x3f\x47\x47\xc6\x4f\x4f\x7d\x6c\x73\xe5\xdb\x12\x08\x37\x3d\xbe\xd0\x64\x7a\xb6\x76\x52\x1a\x84\x0b\x98\x99\x26\xa1\xe3\x0c\x3a\x7b\x1a\x92\xfc\xab\x8a\xee\xd7\xeb\x5e\x79\x83\xee\x95\xdb\x73\x12\x8e\xd5\xda\x89\xb8\x5a\x65\x0d\x67\xa7\x3a\xe1\xf4\xc0\xf1\xe9\x0b\xd2\xeb\x74\xde\xc5\x08\x9f\x29\x89\x9b\x76\x3a\xf1\xff\x6c\x50\xb9\xed\xd3\xc1\x99\x9a\x5d\x86\xfa\xfa\x2f\x14\x12\xda\x97\x18\xdd\x9f\x6e\x6f\xe3\xcf\x80\xe6\x64\x9f\xbe\x8f\xd1\xfd\xce\x8e\x6e\x20\x56\x2d\x04\xe7\xa4\xe2\xe9\xee\x06\x4e\x31\xdc\x30\xad\x4b\x86\xba\xa1\x4d\x4f\x24\x05\xd5\xa1\x4e\xec\x61\xa2\xf6\x0e\xd0\xde\x56\x4c\x89\x88\x11\x02\x6c\x67\xe7\x48\x68\x31\x9d\xaf\x62\xae\x0e\x32\xae\x6e\x82\x5c\xdd\x04\x0b\x75\x6e\x14\x71\xd8\xd9\x97\x8a\xfd\x7e\x89\x11\x60\x52\xd1\xd8\xef\xd6\xf7\x31\x0a\x73\xf3\x7a\x72\xac\x7a\xe4\xca\xfd\x58\x92\x9e\xba\x87\x93\x9d\x5d\xd4\xaf\xd2\xea\x4e\x08\x5c\xab\x8f\xe8\x9d\x5d\x84\xf0\xad\x12\xaa\xff\xa9\x13\x31\x5e\xd3\x69\x26\x68\x84\x07\xa6\x11\xf0\xfa\x70\x6d\x7f\xd8\x20\x38\x6d\xf5\x82\xda\x4d\x4f\x38\x61\x95\x9e\xb8\x66\x71\xc5\x6f\x50\xf5\xc4\x48\x5e\x8d\x96\x23\xd5\x48\xcc\x5e\xf4\x56\x2b\xae\xfe\x61\x3b\x7c\x8b\xf4\x50\xa7\xa3\xa8\x32\xd2\xb4\x10\xe1\x04\x61\xf8\x3d\x18\xaa\xbf\xcb\x23\x33\x02\xaf\x1e\x19\xc7\x6c\xe8\xb3\x17\x58\x35\x9c\x76\xe4\xd9\xef\xf5\x39\x5e\x7a\xff\x8b\x38\x86\xe7\x6c\xbf\xd7\x67\x68\x27\x47\x38\x25\xf2\x45\x6f\x7f\xb9\x2d\xfb\xb2\x74\x5a\x27\xa1\x4b\x78\x1c\x01\x7c\x9e\xbe\xc4\x44\xa8\xd3\xe9\xe9\x84\x02\xd0\xbf\xf0\x95\xea\xf4\xba\x2a\x14\xb7\xb5\x35\xa0\xe5\xce\xee\x8b\x74\x3b\xb7\x43\x4e\xc2\x1a\xbc\x9f\x8e\x1a\xc9\x5f\x56\x8f\x3b\x05\x78\x99\x78\x30\x0c\xd8\xd9\x6f\x25\x63\x7d\xcd\x22\xab\xee\xbf\x7d\x6f\xe2\x8d\x43\x1f\x9d\x1f\x4a\x9c\xd0\x11\xa2\xb5\x93\xb8\xbf\x5e\x90\x7f\xa3\xff\x13\xd9\x3b\xb4\x31\x53\x50\x75\x24\x89\xa1\xcd\xe0\xca\x91\xf1\xbb\xa4\x1e\x5f\x3b\x40\xf2\xad\x69\x9e\xa1\x4a\xc3\x78\xb8\xc9\x74\xc2\x30\xdb\x56\x8f\x5b\x0d\x4d\x6d\x33\xdc\x73\x8d\x41\x6e\x87\x0f\xd5\xfe\xfa\x81\xbd\xae\x43\xc7\x88\x4e\x47\x00\xe4\x89\x36\x6a\xac\x56\x51\xc5\x00\x1b\xe1\x44\x7f\x34\xb1\xf6\x52\xfb\x8d\x33\xa0\x46\x58\xdd\xe9\x66\x49\x5e\xb2\x37\xbb\x58\x00\xde\xb0\xef\xa4\xba\x22\xf0\x06\xb2\x95\x8a\x4e\x72\xbd\x5d\x80\x00\x6a\xd5\x46\xa5\xad\xfa\x07\x0c\x89\xf9\x4c\x7f\x8d\xae\xf9\xd5\xc8\x8f\xac\x49\xe3\xc4\x90\xf3\x90\x4b\x48\x6f\x2f\x79\x91\xd9\x65\x49\xac\x87\x9c\x76\x9c\xc5\x29\xc9\x15\x9b\x1b\x93\x7c\xb0\x0b\x30\x47\x4b\x13\xc3\x0a\xc2\x41\x8a\x7f\x8d\x19\x1e\xd7\x85\x0d\x56\x13\x36\x98\x62\xe3\x99\xc3\xad\x0b\xd8\xdf\x2f\x4d\xbe\x52\x83\x21\xce\x48\x6f\x2f\xf3\xbe\x7b\xd9\xf6\x36\x7a\x13\x33\x4c\xb1\x1c\x64\x43\xf8\xbe\x15\xa8\xcd\xc6\xd9\xfc\x9a\x71\xaa\x1a\xf2\x55\xff\x5a\xe5\xac\xe5\x4f\xdf\xc4\x83\x21\xb6\x5f\x04\xc5\xde\xe8\x99\xd6\xf6\x58\x67\x22\xc4\x29\x1e\x13\x89\xa7\x24\xc3\x13\x92\xe0\x99\x33\x19\xe2\x05\xd9\xd9\xdd\x33\x27\xc4\x9c\x2c\xb6\x77\xb5\x0f\x34\x21\x24\x5e\x90\x52\x62\x56\x3c\x47\xa8\xd3\x89\x17\x64\x86\x70\xf4\x4f\x9a\x8c\x67\x91\xfa\x2a\x57\xd2\x3d\x6c\x80\x39\x5e\xa8\x2f\x16\x5b\x84\xcc\xd0\x3d\x54\x86\xeb\x75\x00\x5b\xbd\x25\x63\xd3\x01\xd5\x5c\xc4\x97\xf3\x6b\x2a\xbc\x91\xe8\x76\xb5\xda\x2a\xf3\x82\x31\x52\x62\x68\x64\x19\x41\xc4\x78\x7b\x8c\xd0\xb5\xa0\xc9\x47\x55\x83\x62\x67\xb7\xe8\xde\x28\x00\x4f\xe2\x31\x70\x5d\x84\x5a\xf0\x45\x61\x98\xe9\x62\xdf\x75\x15\xf5\xc3\x5e\xbb\x8d\x7e\x47\x7a\x7b\x77\x2f\x6e\xf7\xee\x2c\x29\x5d\x93\xdf\xe2\x31\xbe\x43\xad\xeb\x4e\xc7\xd5\x7e\x8d\x73\xb8\x7d\x16\x95\xf6\xf0\x56\x0f\x4f\x5d\xa3\xaa\xf8\x0d\x51\xef\x72\xfd\x02\x8c\xae\xd6\x04\x3c\xd9\x9f\x54\x23\x17\xe2\xdc\x1a\x80\xad\x3f\xe6\x0d\xc2\x0b\x02\xb3\xe9\xf6\x44\xda\x10\x37\x9e\x76\x93\x54\xfe\x42\xef\x3a\x9d\xf1\x20\x1f\x9a\xe6\x43\xe9\x30\x45\x63\x92\x2b\xc1\x65\xdc\x68\x8d\x1f\x77\x97\xfc\x23\xcf\x3e\x39\x03\xec\xbe\xaa\xa7\x5f\x7b\x1c\xe7\x9a\x4b\xb6\xd5\x9a\xad\xeb\x04\x1a\x13\xe8\x85\xbb\x41\x8f\xc8\xc4\x3b\x24\x8e\xf7\x27\xfd\xc0\xf2\x3e\x46\xf8\x13\x19\x95\x8e\x99\xbc\xec\x39\xf4\x69\xb5\x6a\xb8\x7e\xdc\xe0\x4f\xc6\x5c\x75\x4c\x46\xcd\x11\x46\x71\x8e\xf0\xa5\xa2\xcd\xe5\x75\x2e\x45\xbc\xd8\xde\x45\xf8\x5c\x8b\xbb\x5a\x80\x02\x3c\x22\x55\x4c\x83\x33\xb5\x8e\xcd\x4d\xf4\x1c\x5f\x7a\x8f\xd8\x73\xbb\x9a\x63\x32\xf2\x1e\x5f\x39\x2a\x8c\x5d\x2d\xe4\x4c\x8e\x20\xa7\xa4\xc6\x54\xc6\x08\x4f\xaa\xa2\xc4\x38\x38\x28\xdd\xfe\xfd\x3d\x44\xca\xed\x0d\xb1\x20\x14\xc4\x34\x42\x07\xcf\x9d\xd9\xe9\x47\x08\x14\x75\x90\xb2\x0d\x22\x7f\x60\x7a\xf5\xcf\x5c\x76\x28\x89\x1a\xa8\x48\x89\x65\x75\xf7\x09\x57\x86\xaf\x56\x81\x3b\x97\xef\xf0\x9f\x81\xab\x6c\x4d\xc3\x43\x1d\xf2\x58\x0a\xca\x00\x9d\x71\x86\xd2\x35\xf1\xc0\x26\xfc\xc3\xdf\x16\x1c\xcc\x70\xe8\xf3\xe6\xb1\x87\x4b\x46\xab\x4a\x70\x2f\x95\x49\x18\x0f\xbb\x26\x09\x49\x4e\xe5\x72\xd1\xe0\x99\xc4\xeb\xf1\x3c\x1a\x92\x04\xd2\xdb\x48\x9a\xfc\x3f\xe4\xfd\x7d\x77\xdb\x38\x96\x27\x8e\xff\xaf\x57\x61\x73\xe6\xb0\x89\x15\xa2\xc8\x3d\xbb\xb3\xbb\x72\x50\xfe\xb9\x53\xce\x74\x66\x93\x4a\x3a\x4e\x75\x4f\xad\x46\xab\xa1\x25\xc8\xc2\x44\x22\x55\x20\xe8\xc4\x6d\xf1\xbd\xff\x0e\x2e\x9e\x49\x50\x96\x53\x49\xf7\x9c\xf3\xad\x3f\x2a\x16\x89\x67\x02\x17\xf7\xf1\x73\xf9\xb2\xfc\xdc\x45\xf4\x8e\x44\x0a\x29\xf7\xc0\x20\x95\x92\xa0\x01\xd7\x13\x09\xcb\x50\x0a\x16\x0d\x76\xe1\xd6\x9a\xd3\x68\xf6\x66\x1e\x86\xcf\x1b\x23\x10\x47\x8d\xc3\xb3\x30\x21\x5a\x1c\x56\xa3\x50\xa9\x53\x37\xa3\xf9\x5f\x68\xfe\xe9\x9a\x0a\x37\x38\x46\x7d\xb5\x81\x6f\x7d\xf6\x93\x1f\xfd\x53\x4c\xfa\xf1\x0e\xb6\x40\x93\x72\x40\xd5\xf2\xea\xba\xb9\x51\xa5\xfa\x8a\x72\xea\x7d\x6c\x1c\x38\x36\xd2\xe0\x9b\x83\x3a\x5d\xd0\xac\xc0\x14\x81\xe5\x8b\xab\xbf\xed\x0c\x2b\x7f\xa7\x41\x29\xcd\x75\x56\x81\x2f\xb8\x32\x51\x9b\xdf\x08\x17\xb0\x1c\x25\x8d\x7b\x88\x2b\xa7\x51\x67\x77\x7f\x44\xc6\x74\x5e\xd8\x2e\x66\xb5\x43\xe4\x7d\x16\xb6\xa2\x9e\x1e\xbc\xa4\x1d\x5d\x66\xed\xbd\x8f\xc9\xf5\x69\x5a\x52\xad\x96\x72\x95\x36\xe6\x03\x86\x61\x0d\x52\x22\x2a\x5d\x52\x4c\x98\xf7\x82\x92\xe7\xff\x3e\x82\xbb\xfc\x1f\x9f\xbb\x69\xaf\x68\x98\xdb\xdc\x5e\xe0\x0f\x09\x1a\xf0\x17\xe3\x0b\x91\x39\xff\xc8\x05\xc5\xc9\x08\x2e\xdb\x89\x77\x92\x43\xfe\x15\xe7\x00\x70\x68\xdb\x69\x00\xdb\x70\x8c\x37\x84\x6b\xfa\x2c\xc5\xf0\x62\x78\x86\x2b\x64\xb4\xad\x38\x41\x78\x11\xbc\xaf\x86\x67\x68\x20\x86\xc1\xb3\x31\x2e\x10\xce\x89\xc9\x97\xac\x7c\x59\xea\x17\xf9\x39\xca\x4a\xb2\x08\x46\x8e\x5e\x8c\x2f\x58\x96\x89\xe1\x66\x5a\x0f\x87\xb3\xe1\x02\xc5\xe6\x40\x6d\x01\xbc\xc0\x25\x66\xa8\xc9\x92\x04\x83\x77\x89\xb7\xc6\x4b\x1a\xc8\x9e\x51\xe7\xaf\xad\x75\xfc\xc2\x15\xd1\x3b\x29\x97\xf3\x76\x29\xfc\x06\x75\x9a\x56\x96\x9a\xd8\x12\x34\x2b\xd0\xc5\xda\x74\x91\xa3\x89\xf2\xa7\x29\x2e\x76\x54\x73\x77\xb5\xe4\x3f\x26\xfd\x3e\xc2\x72\x51\xa2\xd6\x80\x4f\xc1\x56\x59\xd3\x96\x2f\xa6\x55\xfd\x10\x15\x77\x67\x95\x75\xbd\xf6\x2f\xc9\xd5\x63\xee\x9a\xdc\x51\x5f\x7a\x69\xeb\x04\x74\x54\xde\x18\x29\x77\xbe\x62\xbf\x3f\x55\xd2\xec\xd7\xb9\x3b\x33\x6c\xae\x7e\xf9\x42\x39\xa8\xf3\x06\x4d\xa4\xd8\x48\xb8\xa6\x75\x5b\x75\xb8\x8b\x11\x58\x08\xb3\x33\xfa\x4f\x51\x67\x05\xea\xf3\xa9\xe0\xb1\xe0\x1c\xff\xfc\x63\xd8\x01\xed\xd1\xf1\x70\x5b\x7b\x7c\x81\x91\xa4\x2d\x5d\x5e\x60\x35\xf3\x15\x7a\x37\xe1\x65\x70\x27\xef\xc9\x8b\xb9\x7a\x38\x51\x6e\xaf\xde\x17\xbb\xa5\x59\x98\x51\x5c\x0f\x02\x33\xe2\xee\x6e\x52\xd8\xef\xe8\xf3\x7b\x8a\x6e\xd9\x6f\x91\x49\xd6\x42\xcc\x50\x9a\x32\xc9\x5b\x83\x29\x99\x4a\xc6\x20\x42\x68\xda\x9c\x20\x68\x70\x3a\x4f\x41\x2b\x0b\xac\x0f\xab\x3e\xf2\x7c\xf1\x09\x60\x1f\xa4\xd0\xa0\x65\x97\xa2\xaa\xb7\x8a\xdd\x6a\xab\x1d\x11\xc2\x21\xc3\xcf\x11\x24\xd6\x3a\x50\x8b\x6b\x1e\x1f\xa1\x89\x9a\x89\xbf\x0d\xf5\x02\x7a\x08\x00\x14\x17\xa4\xf3\xf1\xc4\x85\xb5\xee\x8c\x12\x34\x11\x31\x1f\x33\xe7\xd0\xc6\xf7\x7b\x1e\xa0\x51\x68\x8f\x2d\x4e\x6e\x01\x2c\x6a\xca\x66\xc8\xa5\x5a\x6d\x5b\x4a\xef\xe5\x25\x96\x25\xab\xb2\x4c\x70\x92\x27\xc8\xfd\x3a\x83\xbf\x1f\x1a\xfb\xf8\xa1\x31\xcf\xea\xe2\x53\x59\xb8\x15\xf6\x2d\xca\x8d\x57\xfe\x70\xb1\x33\x84\x6f\x54\xfb\xb2\x3b\xff\xc7\xe8\x26\xe7\x89\xba\x97\x3f\x53\xf2\xe0\x45\x01\x59\x2f\x7b\x6b\x10\xf0\x27\x0e\xba\x67\xea\x50\x12\x4e\xae\x5d\x71\x8b\x24\x03\x07\x40\xb9\x19\xb8\x0b\x50\xab\x8c\x2b\x9b\x23\xd5\xb8\xd7\xe4\xf2\x6a\xea\xf8\x58\x57\x69\x5a\xa8\x2b\xae\x42\x17\x99\x39\xd7\x56\x87\x77\x4a\x48\x56\xaa\x6d\x1c\xf1\x35\xa4\xfb\xbd\xda\xd5\x51\xa9\x07\xee\xc2\x9f\x5b\x82\x8f\xe9\x42\x47\x65\xbd\x52\x7b\x73\x12\x2b\x0b\x2a\x22\x08\x99\x70\x96\xd3\x36\x3d\x25\xfe\xf6\xc2\x7e\x46\x02\xd8\xa0\xcc\x8b\xdc\xb2\x39\x64\xaf\x68\x96\xe3\x52\x47\x23\x9f\x16\xc8\x81\x89\x2f\x46\x1a\xd5\x31\xfb\x9d\x19\xc4\x49\x45\xc5\xc9\x2a\x67\x1b\xba\x9c\x9c\xa8\xf9\xcb\x19\xef\x72\xb1\x3e\x49\x7e\x37\x64\x2a\xdd\x98\xec\x7d\xf8\xbb\xe4\x64\x51\xd6\x9b\x25\x00\x8e\xdf\xd0\x93\x55\x59\x17\xcb\xd1\xef\x50\x63\x7c\xb2\xc0\x67\x1f\x65\x9f\xa9\x3e\xc4\xe0\x91\x83\xb2\x88\xe1\xd6\xed\xd6\x06\x1d\x59\xf8\xec\xd8\xa2\x39\xa0\x47\x3e\xa1\xed\x7c\xf2\x99\xda\x0a\x6e\x03\xbf\xa3\x26\x25\xde\x17\x1a\x87\xb1\x66\xd6\x73\xeb\x1c\xa8\x99\x05\xa6\xd3\x4e\x5b\x68\x34\xbf\x2b\x37\xb9\x60\x52\xe4\x38\xc3\x7c\x34\xe7\x34\x5f\xbe\x2b\x36\xf7\xfa\xe7\x3a\xaf\x5e\xc2\xe5\xa4\x7f\xdf\x52\x21\x5c\x8a\x40\x3e\x9a\x57\xfe\x03\x85\x20\x87\x19\x11\x53\x61\xa3\xe9\xc0\x13\x3b\x42\x71\xd9\x7e\x6f\x58\xc9\x34\xed\x48\x65\xf2\x66\x0d\xba\x1f\x9b\x28\x77\xed\x1a\x18\x6f\xb4\x44\x6e\x90\xa5\x13\xd0\x73\x52\x0e\xdc\x8b\x5c\x5e\x63\xfb\xfd\x3b\xea\x4d\x00\xce\x66\xd3\x08\x1b\xed\x00\x7a\x73\x8e\x46\xf3\x9d\xde\x87\x06\x3b\xd6\x4b\x1e\xcf\xa3\xf0\xdf\xcc\xc0\x7f\xc3\x61\x68\x0b\x64\x65\x5b\x20\xb3\x9c\x04\x5b\x65\x9e\x00\xa7\x8a\x79\x50\x82\xa6\x1c\x3e\x75\xe1\xe7\x76\x7d\x9c\xa6\xf6\x96\x0a\x9c\x13\xd8\xed\x2e\xd8\xa4\xb4\xb1\xe9\x66\x6d\x7c\x1d\xb8\x7d\xa9\xd7\x22\xe6\x91\x9d\xfb\x23\xe9\x06\x8a\x94\x69\xea\x8c\x1f\x17\xa5\xb7\xd1\x24\xb7\xd2\x34\xb8\x74\x0b\xd9\x4d\x72\xe9\x5b\xf4\x85\xdc\xb2\xd4\x64\x8e\x69\xc2\x50\xe1\xb6\x3c\x06\xae\xa4\x2b\x9a\xf1\x17\xe3\xfd\xbe\xfd\xf2\x05\xb1\xe8\x52\xbe\xa3\xa9\x1c\x7e\x4c\xb6\xa6\x8d\x42\x4a\xec\xfa\x7a\x6b\xac\x1b\x7d\x50\x50\x10\x01\xae\xd6\x53\xcd\x17\x62\xc2\xcc\x11\x08\x18\x64\x5c\x76\xf5\x25\x14\xa9\x0b\x24\xb4\x4d\x96\x2a\x8b\xbe\xaf\x2e\x6a\xa9\x8c\x2b\xcd\x35\x04\xda\xa2\x1c\x57\x08\x15\x84\xf9\x21\x7b\x6e\xfb\x6f\x88\x3f\x58\x9b\x2b\x30\x98\xbf\xd6\x1e\x17\x11\x4a\x54\x90\x8d\x9b\x20\x64\xc4\x34\x63\x59\xe8\xb1\x78\x4a\xe7\x1c\xff\x9f\x8c\x6a\xc1\x02\x29\x00\xee\x3f\xdb\x31\x49\x36\x9b\xb5\x90\x77\x32\x81\x63\x5e\x21\x08\xff\x92\x31\xe0\xf3\x9b\x40\x39\xec\x58\xa5\xbc\xcd\x50\x15\x8f\x32\x54\x85\x66\xa8\x70\x21\x3f\x76\x3b\x31\xaf\xb6\xb3\x18\x24\x21\x45\x08\x35\x66\xd5\x1c\xee\xa8\x0f\xfa\xa1\xca\x79\x01\xd7\xfc\xa9\x7f\x74\x82\xbd\xb1\xd8\x94\x37\x37\x94\x5f\x2b\x71\x54\xfb\xe3\x1c\xd8\x4b\xe6\xa1\x57\x41\xbb\xea\x86\x9b\x69\xd0\xb5\xee\x9a\xd3\x67\x41\x2b\x82\x4f\x6b\xa6\x10\x3c\xf4\x08\x5d\xd4\x9e\xfe\xd3\x2c\x4d\x4d\xec\x29\x40\xe9\xa6\xa9\x72\x30\xf3\x77\x86\x36\x01\x37\x66\x4b\x48\x99\x0d\xcc\xa9\x7f\xcd\x90\x4d\xc7\x54\x99\xf9\xc8\xcd\xfd\x4b\x56\x82\x40\xe5\x4c\x8f\x9d\x53\x51\x75\x4f\x45\x0e\x46\xc0\xee\x24\x06\xbe\xd2\xb8\xbd\x13\x2b\xd8\x89\x1b\xf0\x02\x43\xea\x73\x3f\xb6\xed\x2a\x14\x5a\x81\xad\x9b\x80\xa4\x5f\xdd\x1d\xd0\x01\x8d\x8a\xb0\x31\x2f\xf3\x42\x72\x23\x92\x89\x91\x5b\xea\x59\x59\x6c\xee\x4f\x0c\x29\x94\x0c\x8c\x90\x6c\x4b\x59\x68\xd6\x66\x72\xf2\xbb\xa1\x52\xba\x16\xd5\xce\xf8\x1f\xcb\xee\xdd\x6e\xea\xec\x59\x13\xe8\xae\xc5\xe9\x7a\xb3\x69\x85\x7e\x79\x44\x01\xe1\x2b\xa3\xf1\x51\x87\xc0\xdb\x75\x7d\x81\x99\xfe\x0e\xb7\x84\x40\xb2\x85\x72\x55\x3a\x87\xc8\xb1\x86\xb8\x74\x8a\x80\xa2\x45\xd2\xe0\x8e\xf2\xc6\x85\x2b\xe2\x77\x33\x50\x2e\x2b\x66\x3b\x31\x52\x79\x1d\x43\xc8\x9a\xfe\x4a\xba\xdc\x99\xfd\x56\x65\x9a\xe6\x2a\xa6\x2c\x2b\x5a\xc4\x87\x29\x6b\xb5\xdc\x89\x1c\x81\x07\x7e\x19\xd1\x73\x06\x00\xce\x66\x75\x8c\x66\xb8\x33\x13\xae\xb2\xcf\xb5\xf6\x16\xd7\xe7\x01\xe1\x70\x0c\xf6\x39\xc2\xfe\x55\x6f\x06\xd1\xbe\xed\x35\x78\x30\x05\x77\x9a\xb6\x0f\xea\x17\x0a\x67\xe8\xb2\x87\xf5\x2b\x7e\x3b\x36\x32\xe8\x18\x8b\x30\xd9\xcc\xff\x17\x6e\xc7\x3e\x8e\xbc\x7d\x0f\x76\x0c\xae\x39\x5e\xfc\x17\xbd\xf2\x80\x04\x16\x0d\x2e\x9a\xec\x0b\x45\xf8\x63\xcf\xa6\xf9\xae\x69\x6f\xac\x68\xd1\xe1\xff\x2a\x15\xd5\x61\xd9\x4a\xea\xcb\x21\xca\xdc\xd1\xe0\xc2\x92\xaa\x88\x15\xc6\xb4\xe0\xcb\x33\xae\x62\x2f\xe7\x69\x4c\xd4\x6e\x08\x5d\x86\x9f\x7a\xb3\xb7\x2d\x6e\xdb\xc8\x97\xca\x00\xd3\x9e\xc8\x38\x66\x43\x10\xca\x74\xb3\xdf\x3f\x34\x93\x4c\xff\xd0\x50\xa9\xd1\x6c\x67\xdc\x40\xd2\xe8\x1d\xda\x97\xe5\xcc\xad\x81\x2a\xd7\x34\x58\xd5\x73\xea\xc4\xa4\x83\x9d\x60\x2b\x79\x16\x29\x05\x3e\xc3\x9b\x0c\xc6\xf2\x99\xe7\x3b\x05\x07\x70\x5d\xef\x28\x47\xd9\x2b\x5d\xdd\x17\x45\x3f\xd1\x6f\x18\x09\xc6\x56\xd9\xbf\xc9\xab\x4a\x1b\x68\x34\xba\xc4\x17\xf0\xab\xc1\x1f\x1d\xb2\x4b\x91\x89\xe9\x78\x86\xc5\xf4\x4c\xfe\xef\xf7\x4e\x33\xe5\x6a\x68\x14\x0d\x70\x27\xa5\xe4\x13\x1d\xdd\xb0\x62\xa9\xc0\x42\x07\x11\x27\xfe\xb7\x8a\xa6\xbe\xff\xaf\x72\x3c\xda\x5f\xd6\x94\xc9\xdc\x4e\x2c\x0b\xfa\x97\xfc\x60\x25\x55\x22\x3b\x7e\xf3\x6a\x6f\x83\xf6\x47\x74\xa0\x3e\x76\xff\x0e\xec\xf6\x6d\x8e\xd9\x2f\xf8\x3f\x7b\x2f\x2b\x23\x68\x9a\x13\x19\xd7\x56\x28\xfb\x3b\x11\x38\x2e\x79\x17\x2e\x11\x75\x11\x4b\x44\xdd\x27\x79\x1f\x23\x76\xeb\xa4\xaf\x31\xe8\x05\xcd\xe9\xb6\xf9\x74\xfc\x04\xf6\xf6\xa0\xf4\x05\xfa\x73\x66\x9c\x0f\x4c\x36\xfd\x0d\x29\xdb\x17\x61\x5b\x2a\xdf\xc4\x2e\xc3\x0a\x6f\xd0\x7e\x9f\x75\xb9\x65\x70\xc7\x91\x37\xa1\xea\xe8\x89\x7c\xb3\xe6\xec\x0b\xa3\xd1\xf2\x2f\xa4\x0a\xee\x1e\xd6\x15\xb8\xda\x90\x27\x5e\xef\x5c\x27\x58\xee\x1e\x0a\x05\xac\x45\x05\x79\x09\xa9\x93\xbb\x07\xc0\x16\xf8\x40\xe1\xc6\x93\x0c\x94\xdd\x6a\x2f\x69\x3f\xb3\x9e\x1c\x66\xd6\x7f\x97\x0c\xc5\x30\xf9\x9d\xcf\xac\x27\x11\x66\xdd\x76\xf5\x81\xb6\x26\xe9\x71\xe8\x96\x0f\xe7\x8a\x3a\xbd\xee\xb1\xcf\xfe\x48\xdd\x01\xd5\xb0\x15\x20\x46\xba\x18\x73\xcf\xbb\xc8\xb3\x66\x54\xec\xaf\x86\x17\x3b\x55\xbf\x34\x3c\x96\x29\x01\xf5\x9c\x3d\x25\xc4\xb6\x49\x64\x85\x04\x45\xdb\xb6\x58\x22\x45\x13\xef\xda\x38\x6d\xf8\x0a\x69\xc2\xdd\x60\x3c\xaf\xa8\x4e\xff\x4c\xf7\xaf\x1d\x4c\xe3\x23\x30\xa6\xe7\x53\xe6\xd0\x8a\xed\x82\xfd\xe4\x1b\x9c\x61\xf5\xf6\xfb\x98\x45\x0b\xb4\x68\xcf\xff\xfd\xfa\xf9\x48\xd0\xca\x1a\xb5\xde\x3c\xe2\xb7\x31\xe7\x3a\x83\x23\x99\xce\x6c\xf2\x71\x4e\xdf\xb0\x9b\xd7\xc5\x92\x7e\x21\x07\x3d\x31\xe4\xbd\xac\x02\xd1\xee\xff\x70\x1f\xa6\xc3\x0f\x02\x7d\xc3\x9e\x30\x27\x46\x2b\x89\x35\x18\x20\x84\xf6\xca\x5d\x30\x2d\x66\x90\x53\x2f\xc0\x41\x9b\x16\xb3\x06\x8b\x58\x6e\x72\x3f\x08\x20\xec\xc4\x7c\x14\xcb\x09\x07\xe3\xd4\xa1\x50\xa0\x12\xed\x4e\x7a\x38\x74\xf9\x9d\x75\x6b\xda\xc3\xb4\xc0\x63\xfc\x00\x09\x62\x28\xd6\xb0\x5f\x13\x01\x21\xec\x6e\x78\x2f\x55\x4b\xb2\xb3\x18\x06\xb3\x29\x66\xc4\x41\x59\x75\x49\x3f\xf4\xe6\x5d\xb7\x29\xa2\x23\x73\x18\x70\x9b\x9c\xda\x1b\xab\xb1\x89\xf2\xbe\x59\x08\x48\x23\x6e\xc0\xf8\x5c\x24\xe1\x1b\x75\xa4\x5e\xa9\x93\xfb\x86\x0e\xfc\xd0\xc2\x57\x14\xbf\xa2\xb1\x49\x66\xc9\x15\xec\x66\xbc\x32\x64\x47\x91\xf3\xbf\xd2\x4e\x5e\x82\xd1\x3a\xaf\xde\x39\x6b\x0c\xfe\x19\x94\xf4\x7f\xa0\xe4\x41\x4a\xc9\x93\x31\x9e\x47\x03\x85\x27\xa7\x67\x92\x43\x3c\x89\xbe\x6c\x03\xa3\x46\x0b\x35\x92\x4d\xec\xa9\x6f\x91\xa0\x2b\x2a\x86\x43\x7c\xa0\x15\xc9\x47\xe2\x3f\xc2\x98\xff\x0c\x3a\xde\x20\xf2\xf3\xcf\x6a\xf5\x7e\xa5\x31\x20\x77\xcf\x7b\x9a\x2a\xf0\xd3\xbe\xa8\x68\xe4\x62\x07\x44\x27\x20\x18\xf3\x38\xc0\x06\x0f\x8c\x9f\x4a\x13\xc5\x35\xc6\x5f\x46\x49\x3e\x5a\xac\x73\xfe\xb2\x5c\xd2\x4b\x91\x8d\x11\xfa\x81\xfc\xf3\xff\x48\x53\xfa\x82\xfc\xef\xb1\xf1\xbe\xfd\x93\xdc\x16\x39\x1a\x28\x71\xb3\x30\x31\xc2\xf2\x1a\xcd\x51\xe3\xd9\xcb\xfe\x11\xc8\x51\xd6\xf2\x1b\xf1\x12\x66\xea\x93\x9d\x13\xe1\x0c\x59\x0e\xf8\xe6\x84\x41\xa4\x76\x3e\x23\x1c\x87\x1d\x71\x9c\x23\xcc\x25\x15\xf8\xab\xe6\x94\xb8\x94\x72\x35\x26\x0e\x9f\x56\x30\x1b\x31\x2d\x67\xa4\xc2\x75\x9a\xd6\x2e\xa7\x1e\x21\xbf\x50\x4f\x5f\x1f\x86\x66\xd7\x08\x85\x1d\xd5\xd8\x1b\x99\xf3\x8e\x84\x26\xbd\x60\x6a\xf8\x4a\x2a\xda\xb0\x46\x48\x7e\x07\x56\xd4\x74\xc0\xc0\x2b\xab\x46\x58\x4e\xbc\x96\x7c\x94\xb5\xb1\x90\xb2\x41\xd9\x94\xda\x71\x65\x68\x86\x55\xa0\x25\xc0\xf0\x3b\x67\x71\x6a\x05\xc5\xbe\x5d\x20\xa7\x4a\xd3\x34\x93\xbb\x05\xf7\x07\xd0\x9f\x21\x4c\xf7\xfb\x3f\x06\xc4\xf6\xcf\x14\x47\x60\x48\xff\x91\x66\x00\xb5\x32\x80\xfd\xeb\x7d\xcf\x5f\xdc\x60\xc2\x75\x0b\xe4\x3e\xcb\x81\xd1\xfd\x3e\x8b\x84\xc3\x83\xdd\xf3\x67\xb5\x66\x72\x7a\xd8\x47\xd1\x6c\x87\xca\xa3\x36\xc2\x25\x1d\x2c\x4b\x70\x1b\xe7\x71\x34\xd0\x8c\x23\x44\x08\x31\x7c\xb7\x23\x28\xfb\x3d\x27\xa4\x43\x66\x9c\x8f\xf1\xe1\x51\x3c\x08\x92\x64\x55\x7d\x03\xb0\x03\x27\xe5\xea\x04\xd8\x21\x94\x68\xf7\x51\x9d\xb3\xde\xf9\x64\x39\xf4\xd8\xfd\x3e\xc9\xb4\x23\x05\x4a\x1a\xb5\x54\xad\xed\xac\x3d\x01\x03\x97\xfa\xff\x23\xd7\xfa\x8f\x34\x88\x25\xfa\x93\x61\xdf\xf8\xbd\x71\xde\x9a\x0a\xe3\x35\x6a\x7c\xd3\x78\xc4\xa0\xc8\x43\x3f\x11\xf3\x14\xa5\x29\xf7\xb7\x71\x9a\xf2\x66\x91\x8b\xc5\x3a\x2b\xd0\x43\xd3\x44\xe2\xd7\x7f\x55\x84\xeb\x5f\x29\xfe\x37\x4a\x94\x36\xc6\x51\x6c\x15\xff\x10\xe2\xee\x39\x62\xf6\x7f\x3b\xc6\x73\x0e\x39\x28\x0a\x0f\xee\x5f\x4c\xe9\x0c\x5c\x88\xd8\xc5\xbf\xe9\x83\xcd\xb0\x7c\x88\x26\xf0\x7f\xec\xc5\xac\x69\xc5\xba\xf5\x60\x00\xeb\x5b\xb8\x5b\x4a\x62\xed\x9e\x81\xd3\x71\x19\x16\xcb\x09\x9b\xd2\x19\xae\x48\x64\x8d\xf2\x8b\x8a\x66\x39\x9a\xe4\x41\x03\xd5\x7e\x0f\xfd\x55\x61\x43\x35\xa9\xa2\xfd\xd5\x61\xb1\x8d\x52\xb3\x15\x20\x2d\xa2\xac\xc4\x35\xc2\x2b\x62\xcd\xb1\x78\x49\x9c\x2a\x18\x7c\xca\xed\xd6\x5c\x5e\xd8\x3f\x57\x17\x5e\x13\x2b\xbc\x44\x93\xe5\x64\x85\x17\xa7\x84\x94\xfb\xbd\xdc\x07\x2b\xb5\xcc\x6b\x85\x2f\xef\xd9\x0d\xf6\xfb\xe9\x0c\xef\x88\x55\x2b\x98\xb8\x95\x35\x9e\x02\xf4\xc8\x02\xf4\x24\x9b\x66\x66\x51\x5d\x4e\x76\x9e\x4e\xca\xb3\x93\xe3\x9d\xa7\x72\xe2\xee\x6f\xf9\x1c\x24\x63\xae\xfe\xc5\x3b\x5f\xc3\xc2\x7d\x9f\x50\x46\xb3\x1d\xfe\x42\x3d\xb0\x65\x67\x0c\x0d\x3f\xb0\x8b\x53\x96\x3b\xa1\xfd\x9d\xdd\x26\x8a\x19\xc6\xfd\xb5\x12\xb8\x44\x13\xaf\x1b\x2e\x7c\xde\x50\xed\x4a\x25\xcd\x16\xa3\x6d\xfe\x49\xc1\x37\xa2\x8c\x21\xb3\x4e\xed\x37\xc2\xad\x53\xe9\x9a\x2d\x22\xcd\x02\xe5\x63\x5d\x6c\x61\xe8\x6d\xe3\xe7\xd4\x63\x52\x80\x3e\x3d\xc3\x55\xfb\x0e\xaf\xc9\xf8\xbc\x7e\x61\x4d\xc0\xb5\xb9\xc3\x17\xa4\x9a\xd6\x33\xbc\x22\x62\xba\x98\xc5\xa0\x83\x56\x17\x80\xd8\x87\xcb\xe9\x62\x46\x84\xc8\x16\x78\x85\x19\x7e\x68\x10\x9a\xc0\xa3\x95\xf9\x02\x39\x84\x50\xce\xab\x7a\x47\x39\x29\x46\x1f\xde\xbd\xfb\x88\xb0\x37\x31\x26\xb2\x00\x7a\xd6\x0b\x43\x21\xff\x97\x66\x89\x5a\x25\x5a\xe4\x4e\x5f\xcf\x68\x95\xe8\x68\x4e\x5c\x43\xa1\x2d\xe5\xb7\xd1\xd7\x9b\xf6\x84\x15\x26\x91\x71\x00\x3d\x5f\x98\x09\xaf\xc8\x66\xba\x98\xe1\x25\x11\xd3\x55\x98\xe4\x45\xb9\x2f\x41\x44\x48\x69\x19\xdc\x15\x42\x0f\x1a\xab\x7f\xa5\x78\xce\x35\xa1\x1d\xe7\xdd\x55\x18\x9c\xb0\x56\x5d\xed\x48\x31\x5d\xcd\x08\x93\x1d\x45\x56\x76\x97\xa6\xa5\xc8\x18\x5e\x69\xe0\x4f\x60\x12\xb8\xac\xb1\xc6\xb9\xe9\x12\xaf\x9d\x1f\xa8\x2c\xaa\x45\xae\x6d\x8c\xe6\x2c\xe5\x20\xb6\xaa\xef\x3b\x52\xd1\x6c\x19\xaa\xf9\xef\xd0\x03\x34\x4f\x85\x3c\xf8\xf8\x0e\x73\x84\x61\x84\xda\x11\xc5\xf0\x1f\x4d\x53\xa5\x69\xe5\x2d\xc1\x0f\x64\xbc\xdf\xf7\x7d\x20\x02\x80\x7f\xdd\x2f\x23\x9f\x5f\x2c\x09\x57\x9d\x15\x68\xa2\x98\x1f\xd7\xe8\xb3\xb3\x8b\x25\x29\xec\xeb\x6d\x9a\x66\x4b\xb9\xc3\xe0\x37\x18\x9b\x60\x70\x4b\xcc\xdd\x18\x7d\x2e\xb1\xf4\xce\xb9\x3d\x0d\x85\x85\xdb\x32\x00\x8a\x56\x8d\xc4\x3b\x51\x64\xda\xcb\xc5\x56\xa9\x70\x45\xca\x91\x43\xe3\x0f\xe2\x26\x2d\xd3\x5c\x13\x76\xf1\x79\x72\x85\x37\x64\x7c\xbe\x79\x91\x43\x6c\xba\x3d\x58\x9b\xe1\x10\xd5\x19\xc5\xfa\xf1\x74\xa3\x13\xb2\x0a\x9c\x6b\xe4\xac\xc0\xf0\x62\x1b\x5d\x10\x76\xb1\x9b\x6c\xf1\x8a\x8c\xcf\x57\xee\x9c\xae\x86\x43\xb4\xc8\x28\xae\xa6\xab\x99\x43\x6f\x72\x8e\xe8\xc2\x06\xd0\xf5\x25\xb8\x88\x08\x0a\x2e\x9b\x5b\xf0\xb4\x6a\x69\xe2\x6a\x29\xae\x6f\x94\x0c\x12\x1c\x6b\xdc\x75\xe8\x56\x58\xd2\xee\x48\xd7\x7a\x75\x84\xbf\x2e\x92\x01\x26\x42\x2e\xc9\x4a\x18\x9e\x57\x1e\x39\x97\xf9\x26\xe0\x82\x5d\x4a\x9d\xac\x46\x1a\xc8\xbd\xc6\x2b\xb2\x30\xa6\x09\x46\x2b\xbc\x24\x8b\x51\x3b\x69\xcd\xea\x82\x89\x8c\xe3\x95\x37\xb0\x89\x3b\xe5\x69\x9a\xd1\x6c\x19\x0c\xdb\x71\x92\xf5\x68\xfe\x99\x89\x75\x59\x0b\xb9\x59\xcd\xdf\x31\x44\x04\xa3\x5f\xca\x3d\xe8\xa5\x73\x95\x01\x23\x4d\x73\x5f\x0c\x6e\x10\xd2\x87\x1b\x86\x55\x7b\x1d\x37\x99\xc0\x15\xfc\x4d\x01\x6b\x73\xe0\xb6\x83\xa4\x5e\x75\x84\x7a\xd5\x92\x7a\xad\x49\x2e\x37\xc4\x8e\x94\x9a\x88\x2d\x47\x97\x6f\x5e\x5f\x5e\xcf\xdf\x5e\x7d\xfc\xe3\xbb\x1f\x61\x57\x9d\xdb\x49\xad\xd3\xb4\x16\xd9\x1a\xd9\x70\xbe\x7f\x95\x2c\xd5\x1a\x88\xf0\x60\x47\xb6\x80\x53\x89\xd7\x64\xab\xf4\x93\x8d\xab\x78\x11\x73\x17\x5b\x03\xdd\xa2\x78\x85\xd7\xf8\x74\x8c\x30\xb8\x76\xcb\x1f\x30\xfb\x8d\x77\xc4\xf1\x29\x43\xde\xd2\xef\xd2\x74\xad\xca\xee\xe4\xdc\x8d\xca\xbd\xd7\x21\x1d\xd3\x26\x9c\x57\x9a\x66\xff\xda\x8b\x17\x8c\xa5\x60\xa8\xf0\xe4\x25\x63\x8a\xa5\x74\x5a\x4a\xee\xac\x98\x96\xb3\x8e\x8c\x91\x7b\xc6\xe9\xca\x26\x3f\x90\x5c\x3c\x53\x4e\xf9\x25\x42\xf2\xe6\x63\xd8\x04\x10\xa1\x49\x66\x9c\xf9\x71\x45\xe8\xb4\x9c\x21\x84\x1f\xe4\xd2\x4d\x72\xed\x63\x5e\x35\x8d\x0e\x66\x11\xb8\x16\x78\x23\xf0\x42\xe0\x95\x68\xc5\xd4\xe0\xa5\xe8\x4f\x84\x8c\x1e\x56\x2a\x01\x8f\xe2\xf7\x4d\x7a\x95\x2e\xa4\x66\xc8\xdb\x50\xe4\x84\x33\xff\x22\xb4\x66\xa3\xbe\x7c\x11\x98\x79\xe2\x90\xa7\x37\x71\xb7\x9b\x42\xc5\x71\xf4\x45\x16\xf4\x04\x61\x50\x50\xef\xf7\x7d\x8e\xfa\x85\x01\x88\xff\xbf\x19\x43\x8d\x17\xd9\x06\x61\x5f\x72\x76\x3a\xdd\xe2\x5a\xc8\xc1\x0a\x9b\xdd\xf9\xa5\xcb\x6c\x18\x46\x70\xe9\x33\x69\x2e\x84\x6e\xc6\x5f\xf4\x20\x65\x20\x87\x8f\xa0\xec\x0c\x8f\x41\x01\x22\xad\x27\xb4\x10\x80\x71\x64\x47\x93\x01\xd8\x03\x47\xdb\x76\x73\x6d\xdd\x19\xf8\xb6\x30\x16\x08\x17\x92\x9a\x06\x78\xca\x90\xce\x22\xcc\xda\x15\x52\x19\xea\x7d\xfe\xfd\xbe\xf0\xa0\x13\x71\xd1\x0c\x0e\x28\x4e\x55\xe2\xe4\x18\xe8\xe4\x6f\x5d\x0a\xb6\xca\x20\xdd\x8a\x31\x71\x59\x87\x06\x37\x52\x0b\x90\x02\xcb\xe5\x7f\x3f\xaf\xcc\xa0\xbd\xbb\xfd\x72\x7a\x55\xa7\x6c\xa6\x68\xa7\xf7\xd0\x24\x01\x33\x45\x1c\x08\xad\xff\xd8\xfb\xdb\x4a\x2a\x90\x67\x43\x99\xf4\x1a\x2c\x94\x35\x32\x9e\x1f\xa0\x1d\x25\x75\x86\x30\x5c\xb6\x53\x59\x79\x06\x29\xc6\x74\xfd\xf7\x39\x17\x2c\xdf\xc4\x20\xb3\xbd\x1a\x5a\x07\x2b\x22\xd0\x89\x31\xff\x74\xbd\x39\xa8\x83\x75\x66\xab\x4c\xdf\x9a\x16\x5b\xf1\xa4\x7d\x0f\x77\xc0\xad\x8c\x5e\x08\xdc\xc9\x5b\x09\x0c\xcf\xd4\x43\xa0\x35\x08\x0b\x4f\x0a\xd6\x6e\xc3\x4c\xd2\x53\x75\xb5\xb2\x55\xe6\x85\xae\x55\xe5\x96\x86\xe0\x46\xe6\x54\x1b\x54\x7c\x2b\xd9\x9c\x9e\x35\xda\x44\xe5\xe1\xde\xb6\x70\x33\xbc\xf3\x60\x12\x95\x58\x7e\xc0\x86\x56\x9a\x53\x1f\xdd\xce\x6a\x97\xe9\x85\xc6\xbc\xbb\xbd\x0b\x6f\x7b\x73\xab\xd0\x04\x4d\x66\x31\x65\xfe\xf6\x66\x33\xcf\xf4\x60\x3a\x2d\xb0\x90\x63\x90\x14\x35\x62\x33\x3e\xf0\x15\x14\xa4\x89\xfd\x0a\xc7\x7f\x9d\xf0\xdb\xf8\x87\xc6\xe1\x09\x04\x02\x8f\x5f\x44\xc3\x0c\x30\x1f\x66\x00\x98\xa9\x8c\xc9\x5b\x4b\x69\x23\xcd\xb7\x95\xcb\xad\x4f\x49\x14\xb7\xaa\xf7\xd3\x9e\xf0\xc6\x7d\x1e\xab\x26\xed\x2c\x8f\x55\x62\x9d\x40\x2f\x28\x69\x47\xbd\x02\xe1\x37\xa1\xcd\x69\x6a\x4c\x5d\xfb\xfd\x18\x5b\x17\x79\x49\x60\x7e\x18\xa3\x87\x90\x4c\xb5\x33\x5c\xf9\x79\x9e\xa8\x24\x54\xfa\xc0\x30\x74\x01\x44\x8c\x4d\xe0\x1f\xd9\xc4\x52\x64\x0e\xae\xd8\xc5\xe6\x80\x37\xb9\x42\x48\x5c\xca\x7b\xda\x77\x37\xf3\x20\x43\x5b\xdc\x96\x12\xf6\xda\xd7\xfc\xa0\x8e\xe6\x50\xdd\x99\x43\xdc\xe0\x4a\x74\xd3\x05\x3a\x06\x86\x50\xbc\xf3\x58\x01\x8f\xeb\xdf\x8a\x6f\xeb\x37\x72\xea\x3b\x8e\x80\x77\x08\x23\xc5\x45\x31\x62\xc6\x5d\x96\x72\x03\x40\x50\xc2\x0b\x75\xa3\xeb\x47\x79\x0f\x01\x15\x0a\xbc\xed\xc1\x6f\x85\xed\xf7\xdd\xf3\x53\x36\xcd\x0c\xf9\x61\xba\x39\xc2\x79\xe3\x9a\xf1\xd5\xda\x77\xb0\x59\xe8\x74\x3c\x33\x57\x1f\xc0\xd6\x42\x14\x3c\x2e\x3c\x27\x34\xba\xfc\x31\x87\x80\x63\xcc\x2f\x78\x64\x26\xc8\xa0\xd9\x09\xca\x71\xa9\x5c\xff\x85\x85\xe1\x6d\x61\x76\xb6\x43\x0d\xa3\xe9\xad\x58\xa8\xcd\x6e\x63\xd6\x3c\xe6\x72\x46\x8d\x97\x35\x6d\x3a\xfe\x46\xa5\xd1\xf4\x46\x20\xb5\xe0\xcd\x07\xd4\x34\x4d\x88\xf4\xb9\x11\xb8\xc3\x3c\xb7\x4b\x44\xd3\x3c\xd0\xcf\x27\xca\xb4\x8b\xf0\x21\x5c\xd1\x85\xe8\x4d\xcb\x04\xfc\xdb\x71\x39\xfc\xa3\xf9\x96\xbe\x71\x2a\x7f\x6a\xb1\x97\x23\x3c\x1a\xd0\x89\xd6\x65\x4f\xc1\x88\x61\x15\x8b\x0a\xcd\xb6\xdd\x80\x1c\x97\xac\x4c\x04\x96\xe5\x09\x94\x7b\xf7\x97\x9f\xae\x3e\x10\x3a\x7a\x73\xf5\x2f\x97\x2f\x7f\x99\xab\x9f\x5e\x98\x8f\x46\xea\x8a\xc0\x9e\xf9\x35\x00\xef\x2c\x68\x82\x6b\x1f\x28\xa8\x6d\x63\x47\x5d\x61\x55\xaa\xe8\xfd\x22\xbc\xac\x05\x2b\x6e\x8f\xfb\x26\xa6\xf0\x86\xdd\x3c\xa7\x5f\xc4\x73\x29\x90\xf3\x72\xb3\xa1\xfc\xd1\xe2\x9b\x72\x91\xcb\xe5\x79\x9e\xef\xd8\xf1\x85\x8b\xb2\xa0\x73\xf3\xeb\xf8\x6a\xeb\xbc\x5a\x7f\x4d\x35\x56\x89\x92\xdf\x7f\x45\xcd\xbc\x16\xe5\xf1\xd5\xaa\xfb\x4a\xd0\xed\xf3\x5b\x5a\x50\x9e\x0b\x3a\x7f\xc2\x32\xea\xaa\xae\xc6\x7c\x55\x1e\x5d\x6b\x59\xc5\x73\x9e\x45\x8a\xca\x47\xc7\x0f\x07\x4a\x1f\x5b\xf8\xd7\x9a\xf2\xfb\xf9\x2e\xe7\xf9\xf6\xf1\x5d\x56\x51\x7e\xc7\x16\xd4\x3e\x7c\x5a\x85\x27\x2c\x28\xe0\x47\x1f\x99\x0c\x0d\xef\xf0\xf6\xb7\x92\x9e\xde\x0a\x6f\xec\x2e\x3a\x0a\x1e\x9a\x1b\xb7\x87\x83\x90\xd3\x3f\x95\x05\x7d\x62\xc3\xc5\x51\x0d\xff\x31\xaf\xd6\x4f\x6c\x98\x1d\xd7\xb0\x3a\x8b\x4f\x6c\xbb\x3c\xaa\xed\xcb\x5a\x94\x4f\x6c\x38\x3f\xaa\x61\x73\xa2\x5f\x7a\x07\xfa\xa8\xe6\xab\xaf\x6c\xfe\x55\xbe\x90\xab\x74\x74\x2f\xbd\x2d\x1c\xec\xd7\x51\x9b\x57\xe5\xb1\x33\xaa\x8f\x9a\xd1\x07\x38\xa4\x3f\x5e\xbf\x39\xb2\xd5\xcd\x13\x5a\x3d\xb2\xc9\xc5\xf1\x4d\x1e\xd9\xe2\xea\xa8\x16\xff\x24\xc9\xe0\x7b\x4d\x05\x8f\x6a\x77\x79\xf4\x48\x59\x71\x7b\xad\xe8\xe0\x91\x4d\xaf\x9f\xb0\xae\x4f\x6b\x79\x77\x54\xcb\x7f\xa8\x17\x9f\x74\x8a\xc5\x23\xdb\xdd\x7a\xed\x3e\xca\xdc\xc4\xf8\x95\xc3\x9c\x0e\xe4\x0f\x75\x6f\x5c\x45\x68\xcb\xbb\x7e\x41\x74\x7d\xf4\x96\x51\xcc\x6c\xe4\x7a\xf9\xed\x1c\xac\x5e\x06\x17\x43\xae\x1f\x68\x2d\x5f\xf6\x10\x37\xce\x4d\xa6\xc9\xaf\xde\x0e\x9c\x61\xef\x17\xa0\xc7\xe0\xf9\xaf\xbb\x1f\xe9\x86\xde\xe6\x82\xda\x07\x0a\x17\x72\xe9\x67\x11\xe1\x2e\xe9\xbc\x83\x43\x91\xf2\x0a\x66\x06\x90\x94\x4f\xb8\x86\xce\x1b\xe3\x02\x7c\xb3\xe9\xc8\x6b\x1d\x65\x4c\x85\x69\xdc\x52\x81\x00\xe3\x00\x35\x58\xf0\xbc\xa8\x98\xec\xe3\x63\x09\xfb\x6e\x12\xd1\xef\x50\xe2\xea\x81\xb4\x93\xa8\x1c\xb2\x89\x14\x6d\x21\x41\x48\xd8\xc6\x7e\x1f\x3e\xc4\xac\x2b\x22\x97\x9e\x88\x0c\x36\xf3\xf1\x79\xfe\x82\x01\x54\x64\x39\xcd\x7d\x11\x39\x9f\x39\x80\x7b\x13\xdb\x02\x76\xc6\x1d\xa7\x2b\xf6\x05\x7a\x94\xe2\xfa\x25\xbf\xd5\xc3\x2b\xe5\xcc\x34\x84\xd0\xd7\x4e\xca\xaf\x2e\xe7\xa3\x7f\xff\x85\x89\xf5\xdf\x63\x3a\x8d\x89\x10\xb0\x1b\x6f\xe0\xf6\x24\x3b\xea\x64\x86\xa2\x41\xe4\x5c\x46\x64\xbf\x6f\x7d\x6e\xb4\xce\xe0\x41\x59\x0c\x26\x11\x69\x10\xc2\x77\xb7\x3b\x95\x01\x0e\xc6\x6b\x7c\x63\xc3\xa7\x95\xf3\x9f\x3a\xe1\xda\x02\xa1\xd7\x93\x7b\x91\x2d\x0d\x6e\x55\x9b\x3c\x34\x8d\xb7\x74\xfd\x32\xf4\x31\x02\xc8\x53\x32\x1e\xdf\xf0\xf2\x73\x45\xf9\xb3\x68\xde\xe2\x7e\x92\xd8\xc9\x24\x1c\xa5\x81\x2e\xc7\xf1\xd7\x27\x54\x8e\x4e\x58\xd6\x3e\xcc\xaf\x7f\x13\xe5\x80\x66\x43\x21\xb3\xed\x4a\x3f\xca\xab\x35\xfc\x5e\xc6\x77\xd1\xa6\x3f\xd8\x49\x39\x2b\x6a\xe7\x3a\x41\x0e\x06\x3d\xa1\xd6\xbe\x22\x89\xfc\xc6\x09\x16\x87\xa3\xa1\xca\x58\x34\x54\xd9\xb1\x2f\x04\x99\xd7\x79\x59\x8a\x9f\x3f\xbc\xc1\x22\xa6\x05\x19\x99\x25\x07\xea\x53\x57\x94\x5f\xde\xd2\x42\xe0\x82\xd0\x91\x16\x98\x31\x23\x74\xb4\x2c\x17\x30\xfe\xb7\xe5\x92\xe2\x92\xd0\x91\x0a\x06\xc3\xb9\xa4\x59\xba\x83\x8a\x24\x52\xa2\x4f\xf0\x86\x9c\x9e\x99\xc8\xd0\x5b\x2a\x5e\xd5\x9b\x8d\x5c\x52\xa4\xc3\x4f\xe1\x79\x55\xef\x60\x0b\xeb\x4f\x20\xe7\x68\x32\xce\xad\xc9\x2a\xcb\xb1\x40\x83\x05\x21\x64\x7d\x51\x91\x44\x8f\x24\x99\x24\xcf\xff\x21\x21\x84\x2c\x0c\x8a\xe7\x18\xff\x1e\x5d\x64\x85\x21\x93\xd7\x22\x17\x34\x83\xf4\x61\x93\x75\x83\x93\x04\xaf\x11\xf6\xea\xa3\x49\xb6\x21\xa7\x63\xa5\x4d\xd3\x75\xf4\xc8\xf0\xda\x1a\xeb\xdb\x23\xcc\xab\xb5\xba\x19\x55\x42\x55\xe3\xe3\xb3\x74\x83\xdc\xed\xf7\xc9\x73\x18\x58\x9a\x26\xcf\xff\x01\xfe\xdc\xc1\xc0\xf3\x6a\x9d\x1c\xe8\x74\x87\x00\x39\x74\xe3\x6c\x33\x86\x99\x6f\xb2\x07\xf3\x69\x26\xf0\x19\xed\x87\xd2\x93\x51\x4f\xcd\x37\xb2\x5f\x4e\x3d\x76\x1f\x52\x7f\x9c\x09\xc5\xfe\x27\x54\xa5\x82\x8f\xaa\x3e\xa8\x7a\xa1\xfe\x6e\xd0\x40\xa1\xa7\x28\xc0\x2e\x50\x95\x9a\x4b\x6b\x91\x17\x0b\xba\x31\x2c\xa3\xa8\x77\x09\xb8\x04\x08\xbd\x05\x90\xd3\x7a\xb1\x76\x06\x34\x93\xe8\x2c\xb1\xf3\x4b\x86\x02\xf8\x06\xdd\x03\xc7\x89\x1e\x75\xa2\x55\x9f\x61\xd7\x65\xb1\xe0\x54\xd0\xd7\xc1\x01\x4a\x74\x88\xfd\x67\xb6\xd9\x68\x5c\xaa\x9e\xf3\x10\xaf\x3f\x80\x2b\x60\xa9\x6a\x66\x08\x22\xf4\xca\x91\x86\x72\x75\x46\x8b\x85\xa7\x31\x8d\x9a\xa4\x0e\x74\xf1\x8d\x0c\x54\x90\xf8\x50\xf0\xfb\xd7\xc5\x5d\xf9\x89\xca\x5d\x44\x21\xc7\xaa\x1d\xe3\x2a\x80\x84\xc3\xcc\x1e\x44\x73\x08\x4d\x08\xb9\x26\x77\x48\x21\x0c\x98\x47\x20\xba\xa8\xb3\xea\xb9\xb8\x18\x67\x49\xb5\xb9\xcb\xf0\x00\x72\x92\x15\xee\xd9\x99\xc5\x6c\xfc\x87\x04\xa1\x51\xb5\x66\x2b\x91\x21\xac\x4e\x08\x83\x70\x81\x4b\x91\xd9\x24\xb5\x67\x08\x8c\x65\xdc\x55\x47\x98\x0d\x09\x1f\xe6\x16\x0c\x3d\x4d\x33\x36\x24\xc9\x3f\x24\xc3\x42\x7b\xd7\xcb\x96\xd1\x84\x0d\x49\x3e\x2c\x7d\x27\xdf\x65\x80\x54\x89\x0b\xa2\x16\xc3\xb4\x6d\x8c\x4c\x76\x3a\xc9\xa9\x32\xca\x25\xcf\xe1\xaf\xe9\x78\x06\x16\xba\xe4\x79\x32\x2c\x10\xe6\xba\x53\x84\x79\xe3\x6e\x83\x0d\xde\x58\xf6\xdb\x1c\xaf\xe4\x79\x82\x59\xc1\x04\x50\xa0\xc9\x22\x4b\xec\x0f\x40\x64\x83\x32\x8b\x2c\x51\x7f\x25\x00\x59\xaa\x1f\x55\xe6\x91\x26\x0d\xfa\xb1\xfb\x95\x20\x5c\x16\x00\x4e\x6c\xde\x79\x3f\x13\x84\x57\x25\xdf\xe6\xa6\x35\xfb\x23\x41\xd8\x9e\x2f\xde\x25\x1e\xdc\x52\x0e\x7d\xee\xf9\xe8\x33\x2b\x96\xe5\x67\x8f\x92\x70\x8f\x8c\x74\xce\xbb\xca\x3e\xf4\x24\x2e\xa6\xa5\xb7\x7d\x0a\x17\xd3\xcf\x9d\x74\x78\x10\x5e\x17\x9b\xb2\xdc\x7d\x1b\x5e\xe3\xbb\x30\xa2\x79\x3f\x06\xc5\x6f\x63\x21\xe0\xb6\xe9\x61\x21\x6c\xb4\x6f\x1e\x8b\xf6\xcd\xc1\x52\xe6\x13\x4c\x30\xd7\x7b\x54\xd7\x7d\x37\xe5\x8d\x63\x7e\xef\xf7\x6a\xdf\xd8\x2d\x66\x02\xc3\xe4\x60\x54\x7a\x80\x3f\xe6\xc5\x72\x63\x61\xcf\x1a\x9c\x1b\xc2\xd3\x35\x1a\x67\x63\x05\x2b\xa5\xc9\x92\x7f\xef\x21\x5d\xf1\xe7\x0f\x6f\x7a\x08\xbb\xae\x97\x21\x47\x49\xb0\x20\x66\x8e\xea\x84\x0b\x75\xc2\x85\x3c\xe1\x98\xca\xbf\xd4\x11\xa7\x2a\x4b\x30\x00\x9b\x05\x3d\x18\xfb\xac\x19\xc6\x48\xce\x8b\x50\xdc\x59\x9f\xbc\x12\xd7\xd4\x5c\x5a\xb2\x25\x77\x82\x0f\xb4\x66\x10\x67\xd5\x18\x8e\x68\xd5\x3b\xfb\xdd\x66\xe7\x0a\x6d\x1a\xb2\xba\x1b\x37\xd8\xac\xff\x83\xc0\xed\x7c\xc3\x8a\xa5\xee\x2e\x6b\xad\xab\xb0\xeb\xfa\xf3\x87\x37\x99\x76\xdb\x71\x43\x3a\xb5\xac\x41\xef\x98\x95\x83\x29\x00\x43\x4a\x5a\xa1\xb7\x4a\xbe\x5c\x86\x43\x4c\xdc\xd8\x92\xbe\xd1\xc2\xec\x2d\x79\x8b\x58\x30\x61\x09\x65\xa1\x1e\x16\xe0\xc0\x0a\xc9\x5a\xb1\x37\xdd\xea\x9d\x61\xa5\xa9\x9e\x54\xac\xe1\x23\xe7\x55\x34\x59\x61\x59\x0d\x47\x32\xf2\x27\x92\xd7\x8e\x7d\xeb\x3b\x51\xd8\xaf\x27\xa8\xdf\x85\x9c\x96\x90\x14\xc9\x7a\x46\x3b\x07\x94\x2f\xfa\xbf\x67\xf0\xbf\xff\x2e\xff\x77\x6f\x7e\x9a\xff\x12\x7b\x02\x9f\x4f\xbf\xdc\xcf\x9e\xdf\xe2\xae\xab\xaf\xb5\x08\x93\xb3\x7f\xfe\x6f\x6f\x73\xb1\x1e\xf1\xbc\x58\x96\xdb\x0c\xed\xc7\x38\x4b\xbe\x48\xb6\x86\x5e\x88\xc9\x3f\xa5\x62\xff\xbf\x90\x8b\xd0\x3b\xfb\x67\x9b\x9d\xad\xfa\x6e\x24\x5f\x4b\x36\x58\x18\x31\x0c\x28\xdb\x23\x77\x40\x15\xbb\x03\xaa\x83\x64\x99\xf5\x93\xe5\xaa\x73\x79\xe8\x98\xd7\x7a\x47\x79\x7c\x3a\x03\x45\xb6\x8d\x00\x32\x02\xf5\xe4\x35\xdd\xd0\x85\x28\x79\x96\xdc\xe4\x95\xe4\x9b\x04\x49\x12\x93\xa8\x0b\xd8\xf3\x75\x5e\x5d\x0a\xc1\xd9\x4d\x2d\x68\x96\xac\x39\x5d\x25\x48\x59\xee\xe5\xe8\x3a\xaf\xba\xf4\x54\x36\x0c\x84\x49\x44\x68\x6d\x78\xc3\x3d\x7a\xc1\xed\xca\x5d\x25\x19\xbc\xf6\xf5\xa6\x96\x03\x78\xbf\x9e\x8b\x4a\x7f\x34\xdb\xb2\xfe\x7d\xde\x1e\x91\xfd\xb8\x14\x59\x87\x4f\xe8\x12\xeb\xc8\x72\x4b\x0e\xb3\x80\x50\xa3\x01\x38\xd3\x49\x31\x18\x34\xb4\x7a\xbc\x9c\xde\xb1\xb2\xae\xe4\x1e\x09\x8a\x4f\x74\xec\xb8\x27\x42\xab\xcf\x7a\xf0\xb6\xb5\x2c\xa5\x08\xd5\x0c\x5a\x6d\xa6\x57\x1a\x14\x09\x72\x20\x45\xbe\xa5\x03\x41\x84\x3b\x6f\xff\xfe\xfc\x1f\x9f\xe3\x04\xf4\x9e\xbc\xfb\xd4\x22\x93\x98\x37\x52\x4e\xfa\x40\x6f\xaf\xbe\xec\xb2\xe4\xff\x25\x43\x3e\x4c\xb2\x0b\xf2\x7c\xff\x8f\x28\x41\xb2\x7c\x5f\x39\xd1\x57\xee\xf9\xbf\x3f\xff\xf7\xe7\xcf\x6f\xa5\x58\xe2\x32\xdc\x0d\x49\x46\x47\x15\xa4\x2d\xde\xef\x93\x04\x0d\x43\xc6\x42\x2e\x4a\x84\x41\xf0\xee\x4a\xfd\xc9\xd4\x67\x1a\xd0\xf6\x67\xa2\x08\xfb\x9f\x86\xea\x6c\xe0\xbb\xba\x5a\xab\x85\x07\xf7\xb0\x3e\xd6\xe1\x37\xf7\x13\x7c\x63\xd5\x95\xed\x3a\xd2\x93\x52\xa4\x50\x5c\xd7\x6c\x39\xc9\x33\xd4\x0c\x82\xbe\xdd\xa8\x35\x8e\x1e\xb5\x47\xa3\x6f\xab\x79\x93\xfb\xca\x4e\x83\x29\x3c\xa9\xdf\x3e\xce\xc9\xad\xea\xe0\x71\x26\xaa\x7d\xe8\x7d\x8e\xb9\xdc\xef\x21\xd3\x9c\x52\xef\x43\xbf\x92\x45\x0a\x86\x85\x50\x9a\xd2\xcc\x15\x40\x4d\x3f\x53\x64\xfa\x4a\xe2\x7d\xc3\xa4\xe2\x0c\x91\xb7\x51\xe2\xc7\xd2\x17\x7f\xe9\x45\xf6\x84\x73\x89\x26\x4a\x8e\xe7\xc0\x48\xab\xbf\x35\x53\x1d\x2f\x8f\xf9\x50\x48\xbe\xac\xfa\x2a\xbe\x2c\xfe\xa6\x5b\xbd\xb5\x36\x87\xb9\xb2\xc7\x17\xb6\x87\x23\xab\x9e\xc6\x91\xb5\xfc\x9b\xbe\x13\x3b\x16\xf5\x9d\xfb\x1e\xd6\x47\x4d\x92\xbf\x13\x27\xa3\x54\xc7\x8f\x30\x2e\x3d\x50\x55\x5d\xfd\xb7\xbf\xf7\x35\x18\x55\xff\x55\x06\x49\x66\xc3\xf3\xe2\x78\xbe\xd8\xc9\xa0\xc7\xde\x36\x1a\xc7\xa9\x7d\x3e\xdb\x17\xbd\x1c\x80\x12\xf0\xd8\x61\x01\x4f\x41\x50\xbd\xcc\x37\x9b\x9b\x7c\xf1\x89\x00\xa4\xd3\x1a\x76\xed\xb1\x5d\xe0\x48\x3b\x99\xea\xf9\x58\x5a\x12\x10\x0f\x05\x12\x13\x3b\xf7\x70\xea\x7b\x0e\x12\x03\xb4\x2a\xa5\x42\x03\x7a\x9f\x24\xd8\x53\xa5\x3d\x55\xb3\x04\x12\x87\x77\xbe\x0e\x19\x13\x5d\xb8\xb8\x6f\x06\xb1\x2c\x4a\x9f\xb2\x60\x08\xd9\xaa\x3c\x7b\x8f\x9f\x29\x44\x71\x0c\x5e\x2c\xb7\xf7\xd6\x85\x6a\x81\xea\xe0\x42\xfd\x63\xf5\xa7\x68\x92\x24\x5e\xac\xb4\x3f\xa6\x92\xb3\x5b\x66\x53\x77\x88\xfd\x3e\xb3\x11\x3f\x8b\x72\x33\x4c\x9e\x3f\x4f\x86\x74\xb4\x2e\x2b\x21\x47\x8e\xe9\x48\x4e\x5e\xab\x34\x26\xf2\x95\xfc\x0d\x7a\x8d\xaf\xb3\x8e\x81\x19\x4c\xa8\xbf\x41\x29\x4c\xb8\xb3\x91\x91\x42\xfd\x6d\x8c\x3b\x31\x97\x62\xb9\xc2\x43\xb9\x52\xc3\x02\xb6\x98\x72\xc8\x85\x59\x11\x06\x69\x98\xdb\x16\x96\xb8\x4b\xb9\x48\xd3\xa4\x2c\x3c\x59\x9a\xc1\x33\x17\x77\x4d\xf7\x7b\xfa\xc3\xff\x84\x1e\x5a\x76\xa5\x2e\x02\x6b\x06\xd1\x8a\x5e\x76\x97\xcb\x62\xc9\x65\x43\xbf\x1f\x25\x68\xbf\xef\x7b\xfb\xdf\x47\xe3\x44\x5e\xde\xed\xf7\x6f\xcb\x1b\xb6\xa1\x27\xd7\xf9\x2a\xe7\x2c\x81\x02\x24\x28\xf0\x72\xcd\xcb\x2d\x8d\xbd\xf9\x0b\x5c\x51\xd5\xc9\xfb\x35\x98\x4c\x3a\x36\xa0\x3f\x94\xe5\x86\xe6\x45\x26\xa7\x6f\x79\x2d\x98\x3b\xcc\xd4\x33\x25\xb5\xdd\x93\xed\x71\x94\xfb\x69\x28\x50\x73\xd4\x71\xea\x38\x57\x3e\xe5\xc2\xea\xb9\x96\xec\x4f\x15\xeb\xf4\x7c\xa1\xc1\x23\xdd\x8b\xca\x38\x1c\x7d\xad\x93\x8d\x41\x15\x88\x9f\xf2\xca\xdf\x49\x9a\x5d\xb9\xa0\x13\x6a\x0e\xa0\xc5\x14\xb2\xa6\x81\xaf\x39\x2d\x91\x8b\xb2\xfe\x3b\xa0\x62\xb6\xe5\x70\x8f\xb5\xf5\x51\x1b\x65\xb1\x78\xdf\x06\xd4\x0b\x36\xc0\xa8\x2c\xb2\x04\xfe\xf4\xf3\xca\x06\x94\x55\x8c\x04\x67\xb7\xb7\x92\xa9\xea\x14\x54\xb1\x8a\xf1\x06\xbd\x24\xb4\x07\xdb\xf3\xca\x41\x73\x0d\x2e\x02\x17\x9f\x58\x58\xd8\x37\x08\x8c\x01\x13\x1b\xa7\x15\xdd\xde\x6c\x28\xb0\xed\x00\x9e\x8a\x42\xbc\x66\x3d\xa9\xf9\xb2\xfc\xf9\xc3\x9b\x8f\x76\x54\x59\xe2\x8f\x30\xc1\x50\xd3\xf9\xf1\xe7\x23\xfa\x45\xf0\x7c\x21\xc0\x98\x72\xc9\x6f\x2b\xa4\xb0\xb6\x8a\x11\x37\x4e\x38\x10\x98\xb2\x2d\x97\x74\x53\xe1\x8a\x14\x23\xcf\x7b\x0b\xd7\xa4\xdd\xbb\xd7\xb5\x3c\x0a\x90\x8b\x74\x60\x1d\x35\xe7\x9f\x28\xdd\xfd\xa8\xf6\xa7\xf3\x4a\x04\xc8\xe5\x4a\x0a\x2b\xb5\x5c\x53\xcf\xcd\x28\x12\xe8\x06\x1d\xfa\x93\x8a\x6f\x1e\x1d\xc3\x64\x6d\x57\x09\x7c\xae\x9a\x6f\x5e\x95\x3c\x0e\xde\xf7\xa8\x45\xf4\x87\xb3\x0b\xfe\xec\x6c\x02\x51\x3b\x67\xbe\x65\xf4\xd9\x59\xdc\x36\x2a\x82\xd5\x41\xd6\x25\xd6\x8c\x18\x4f\xa9\x9f\xe4\xb9\x81\x84\x9d\x97\x0b\xc1\xee\xe8\xf7\xd8\x4b\xdf\xed\xab\xab\x7f\xdf\xb2\x05\x2f\x37\xec\x06\x82\xb9\x6a\x3b\x93\xd7\x85\xa0\x85\x50\xce\x0a\xf6\x52\x51\xce\x2b\x7e\xec\x60\x85\x6c\x5a\x03\x13\xb5\xb9\x31\x21\xb6\xb6\xa3\x1d\xa7\xbb\x9c\x53\xcf\x9f\xd5\x6d\x32\x0c\x13\xab\xd6\xf9\x66\x53\x7e\xbe\xfa\xb5\xce\x37\x28\xab\x70\xad\x94\x12\xfe\xf0\xd5\x42\x73\xba\x28\x6f\x0b\xf6\xd7\x98\xd4\x5f\x19\x40\x53\xcd\x05\x86\x91\xbd\x3d\xd3\x76\x2d\x42\x52\x4d\xaf\x87\xcb\x62\xf9\xa6\xcc\x97\xdf\xbe\x23\xdd\x30\xf4\x07\x1e\x02\x16\x96\xd0\x5d\x02\x35\xf8\x79\x00\x73\xcb\x47\x20\x7a\xd2\x25\x7e\x58\xd4\x9c\xd3\x42\x58\x47\xbb\x09\x28\x55\x0d\x32\x12\xca\x12\xd3\x77\xbb\x60\x82\xb0\x7e\x24\xb9\xe3\x47\x6a\xb5\x2c\xbf\x7d\xa5\xad\x50\x8a\x2c\xdb\xdd\x57\xd4\xb8\x62\xd8\x51\x28\xd7\xc6\x63\x46\x9f\xa0\x23\x19\xf9\x6e\x1c\xc8\xa3\xac\x47\x2f\x3f\xb1\x2b\x37\xf7\x2b\xb6\xf1\x9d\xcf\x0c\x8b\xf1\xb7\xb4\x49\x7c\xc7\xcb\x9f\xc5\x2e\x7f\x00\x13\x84\x55\x8f\x72\xe2\x6a\xc7\xc3\x17\x32\xe5\xb4\xd4\x17\xbf\x4e\xdb\x69\xcb\xbc\xfa\xe1\x8d\xa3\x30\xab\x2c\x0b\x92\xa6\xac\x7b\x0d\x60\x26\x3b\x2a\xa4\x78\xb9\x61\x7f\xf5\x69\x49\x07\x6e\x35\xe8\x28\x42\x7b\x4c\x2e\x0d\x66\x29\x7b\x28\xaf\xfa\x08\x5a\x5e\x5b\x10\xc8\xde\x3e\xd5\x06\x3d\xe8\xc1\xc6\xa0\x72\xe3\xe9\x64\x90\xb5\x4a\x6c\x80\x4e\x63\xa3\xd7\x59\x16\x90\x37\x1a\xfd\x55\x99\x7f\xcf\x08\x3c\x7d\xf0\xfd\xaf\xcb\x66\x86\x50\x23\xe7\x60\x08\xf6\xab\x92\xb7\x3f\x5d\x3b\xe3\x7f\xb0\x30\x7d\xd4\x89\x6b\x65\x00\xaf\x54\xb6\x0d\x9c\x93\x72\x5a\xba\xe4\x62\xe6\x35\xae\x5a\x12\x83\x97\x38\xca\x60\x40\x38\xd7\x1b\x3e\x24\x16\x3b\xd7\x5d\x83\xf2\x89\x6e\x0e\x70\x48\x20\x08\xfb\xdc\x85\x88\x73\x5c\x7a\x29\x0a\xf4\x45\x53\x81\x9a\x30\x47\xde\xb5\xab\x2f\x2b\x0e\xc9\xeb\x4f\x99\xa2\xab\x2c\x46\x57\x4b\x5c\x5a\xa5\x81\x72\x9a\x56\xde\x36\xa0\xea\xf0\x48\x91\x5e\x25\xaf\x88\x23\x5e\x07\x6b\xf8\x65\x5a\xf4\xce\x50\xec\x03\xd5\x22\x04\x5b\xca\x66\x8f\xd4\x92\x45\x8e\xa7\x93\x7e\x38\xdb\x91\xfa\x8e\x6f\xe5\x3c\xed\x73\x47\x0e\xf8\x40\x9f\x58\x18\x11\x30\x46\x6f\xf3\xdd\x21\x54\xe7\x75\x5e\xf5\xd2\x27\x68\xc4\x06\xc9\x0b\xc9\x46\x54\xeb\x43\x80\xcc\xaa\x82\xca\xb2\x1a\xc3\x58\x78\x9b\xef\xb0\x57\x50\xa5\x56\x2a\x90\xce\x33\x93\x29\x4a\x62\xe0\x6f\x3b\x1d\x49\x9e\x4a\x99\x1e\x02\xec\x0d\x13\x92\xdb\x1d\x81\x15\xc3\x14\xa2\xc3\x45\xa1\xb2\x76\xa3\x09\xb7\x78\xc8\x4f\xf3\xff\xee\x09\x07\xfd\xee\xdf\xbd\xbd\x12\xee\x14\x6b\xcf\x4d\x37\xa2\x49\x32\x84\x65\x7c\xca\x7c\x20\x50\xb5\x37\x10\x20\x72\x91\x77\xee\xed\xef\xb2\xc5\x0b\x32\x1e\x84\x8a\xb8\x5e\x7c\x48\xda\xb4\x2e\xf9\x2e\x9a\x93\xd3\x4d\xa5\x69\x46\x89\x72\x84\x81\x3d\x43\xbf\xec\x36\x6c\xc1\x84\xc2\x40\x3f\x3d\xd3\xf0\x38\xb9\xa4\x06\x3a\xb3\xc9\x88\x16\xf9\xcd\x86\x4a\x4e\x93\x15\xb7\xd7\xf5\x0d\x70\xd4\x15\xf1\x34\x42\xa2\xa7\x8c\x01\x57\xca\xc5\x62\x4d\x2b\x0b\xbc\x5e\xee\xe4\xe0\x2a\x22\x0e\x1d\x4e\x1e\xde\x41\x1e\x07\x50\xe2\x1a\xa6\x80\x37\x24\x79\x3e\xaf\x8b\xba\xa2\xcb\xf9\xb2\xde\x6e\xef\xe7\x94\xf3\x92\xcf\x77\xb9\x58\xab\x6b\x69\x0e\x5a\xf0\xe7\x13\x78\x9e\xc0\xc5\x9b\x71\x74\x91\xc9\x7b\x16\xd7\x84\xa3\x09\xcb\x0a\xf8\xcd\x65\xa3\x68\x52\x12\xbe\xdf\x3f\x34\x87\x26\x9e\xa6\x59\xa5\x13\x4c\x0c\x93\xf9\x46\xbd\x4d\xf0\x83\x14\xd1\x85\x45\xa3\x9d\x94\xa3\xf0\x41\x83\xb0\x57\x4d\x0d\xe8\xd1\x4a\x18\xf4\xd1\x1b\xb9\xa1\x6b\x03\x95\x99\x9b\xec\x16\xed\xc2\x08\xaf\x34\x08\xcd\x22\x58\x67\x34\xa8\xb2\x15\x4e\xcc\x48\xe5\x38\x56\x38\x31\x23\x30\x3d\xe0\x5a\x41\xd6\xae\xdc\x38\x71\x89\x57\x96\x99\xc8\x8c\x4b\xba\x7b\x0b\x04\x6b\x57\xb7\xe9\xa2\xcf\x28\x78\x19\x66\x6d\x0e\x3d\x3d\xac\x11\x2d\x6e\x59\x41\x5f\x17\x2b\x0b\x82\x28\x74\xec\x56\x4f\xb1\xd1\xaa\xde\x6c\xe4\x74\xf5\x0d\x3e\x3c\xb3\x78\x81\x16\x7d\x54\x0a\x13\x9b\x57\xba\xdc\x24\x6f\x70\x5f\x97\x03\x26\x3f\xe4\xa8\xa2\x5c\x61\x72\x68\x3c\x0a\x86\xc2\x1a\xf9\x72\x09\x77\xe9\xab\x92\x5f\x41\xe5\x4c\xe0\xca\x39\xe7\x33\x2f\x03\xae\x4a\x2d\x98\xfc\x28\x4f\x3e\x2b\x6e\x4f\xf2\x13\xd8\x83\x27\xb6\x0b\x7e\x22\xd9\x6e\x78\x66\x13\x52\xd4\xa2\x62\x4b\x7a\x92\x17\x27\xaa\xf9\x13\x56\x41\x0e\x5c\x10\x63\xe9\x52\xae\x9b\xb1\x6d\x28\x3b\x80\xfc\x43\x21\x28\x9c\x92\x90\xa1\x32\xe2\x72\xeb\x4c\x8f\xc3\x53\xa8\xb1\xbb\x54\xb2\x2a\xb0\x0e\xab\xef\xdb\x63\x8e\xd2\xb5\x02\xc1\x34\xe8\xc0\x58\xf3\x81\x8b\xd7\x23\xd3\xbb\x0a\x8c\x27\xd8\x1d\xe1\x80\xb5\x3b\xe7\x2f\xa8\x83\x83\x23\xff\x84\x44\x06\x90\x17\x23\x51\xca\x3f\x86\x67\x33\x2c\xff\xf9\xfd\x0c\x01\x4a\xd6\xb6\xac\x0b\xe1\x93\x83\x2e\xdc\xe4\x43\x63\xe2\x52\x82\x2f\xc8\x69\x55\x6e\xee\x54\x14\xdb\xdb\x7c\xa7\x70\x68\xc5\x80\x8d\x72\x79\x94\x6b\x22\xff\x40\x16\xda\x58\x9f\xae\x1a\x04\xca\xf6\xe9\x52\x19\x11\x04\x66\x45\x25\xf2\x62\x41\x5f\x2f\x27\xc5\x70\x88\x61\x6c\xef\x4b\x56\x88\xc9\x02\x9b\x3d\x3a\x59\x34\x78\x49\x18\x18\x73\x06\x26\x8d\x85\x45\xd7\x5a\x02\xce\x68\xf2\x3c\x19\xd6\x06\xd0\xf5\x08\x5a\x56\x87\xb4\xac\x34\xd1\x1f\xa7\x67\x78\x4b\x7a\x36\xfa\x60\x9b\xa6\xd9\xce\xe4\xd4\x8a\x14\x20\x1a\x52\xf6\xce\x12\x8f\xf0\x44\xb9\x92\x93\x55\x78\x9c\x90\xa4\x2c\x77\x21\x65\xb9\x6b\x51\x96\x75\x83\x20\x05\x62\x5e\xe9\x3c\x80\x77\x08\x6f\xc8\x9d\x47\x56\xf0\xce\x64\xb1\x8d\x8c\x6d\xab\x33\xd6\x1f\x3c\xe5\x89\x94\x73\x98\x56\x22\x34\x78\xe5\x48\x4d\xcf\xb5\x04\xcb\x76\x43\x6a\x9f\x7e\xdf\x12\xbf\x19\xf7\x7c\x7e\xb0\xeb\x5b\xe8\x4e\x93\xc4\x9b\x0e\x3d\x6f\x6f\xa2\xe6\x51\xea\x72\x83\xe7\x08\xab\xa1\xe9\x75\x6c\x0d\x4c\x3f\x3d\x62\x58\xf8\xe8\x61\x61\xfb\xa9\x8e\x18\x5d\xf3\x48\x99\x05\xbe\x37\x90\x91\x92\xd2\x2c\xf1\x02\x6f\x50\x1b\x6f\x2b\x6f\xb1\x73\x11\x0f\x5a\xff\xa3\x82\x99\x4b\x71\x25\x0d\xc0\x18\x9d\x02\xf6\xdf\x85\x79\x38\x4c\x46\xc9\x50\xf8\xc0\xd8\x95\xa7\x35\x08\x81\xd0\x1e\x6c\x1c\xa9\x1e\x44\xfb\xa0\x77\x4f\x2b\x87\x53\x2c\x6b\x2b\x27\x26\x6d\x82\xd5\xb9\x8e\xd5\x43\xcc\x70\x01\x56\x6e\x4d\xec\x91\x17\xa4\x51\x3e\x85\x23\x55\xbb\xbf\x4a\xf0\x74\x16\x38\x41\x3f\xa5\x8d\x28\xde\xcb\x93\xc2\xd0\x1f\x0f\x84\xf5\x6d\xd7\x5e\x98\xcb\x68\xa5\x60\x1e\xa4\xd0\xef\xf3\xe6\x37\x79\xc5\x16\x09\x52\xa4\x60\xc0\x09\x1f\xd1\x2f\x82\x16\xcb\xec\xc1\xf8\xa8\x76\x43\xef\x93\xcc\x4c\x64\xa9\x52\x16\x9c\xb8\x06\x51\x62\x02\x82\x0b\xd2\x92\x01\x9c\xa4\x6f\x73\xd0\x14\x98\xcb\xef\xe5\x8d\xad\xf8\x2a\xdb\x5a\x2f\xaa\x05\xd8\xa6\x23\x32\x0b\x47\x0f\x02\xfe\x89\x0e\x95\x43\x3c\xa3\x96\x64\x0a\x34\x18\x5b\x0d\x9a\x14\x62\x06\xc7\x7e\xee\x10\xe7\xe6\x6f\x25\x8a\xc7\xe6\x7b\x48\xd6\x60\x95\xaf\x6c\x33\x17\xd2\x9d\x32\xfe\xd0\x27\x49\x6d\x70\x21\x3e\x63\xc5\xaa\xfc\x4d\xc7\x44\x83\x09\x45\x0e\x86\xaf\xb8\xfd\x7a\xf7\xa8\xef\x11\xad\xbc\xa4\x3b\x4e\x17\xf2\x48\x3c\x5b\xd1\x5c\xd4\x9c\x56\x51\x45\x74\x2e\x0e\x84\x21\x69\x02\x87\xb5\xfe\x67\xfe\x9f\x8f\xc3\x23\xb5\x46\xf5\x74\xfa\x73\x34\xe2\xd1\x37\xdb\xa8\xd7\x86\x16\x93\x3b\x0c\xba\x9c\x1f\xdb\xcf\x23\xda\x1f\xea\x48\x38\x21\xe4\xae\xf1\xf6\x3d\x1d\x7d\x78\xf7\xf3\xc7\xab\x0f\xf3\xab\x3f\x5f\xfd\xf4\x71\xfe\xe3\xd5\xfb\x0f\x57\x2f\x2f\x15\x12\x9d\x7e\x37\x7f\xf9\xee\xa7\x9f\xae\x34\x3a\x9d\x27\xcf\x6f\xe3\x39\xe2\xee\xac\x27\xc8\xa9\x35\xfe\xbf\x38\x43\x69\x4a\x0d\x3d\x7d\x68\x24\x33\x03\x91\xaf\x16\xe9\x56\x6b\x94\xa7\xe3\xd9\x80\x9d\xb0\xe2\x84\x5e\xf0\x29\x9b\xd9\xbc\x2f\x0a\xd8\x62\xf2\x7c\xce\x96\xff\xa8\x73\xa4\x31\x08\x6b\x6c\x17\x4a\xd8\x32\x31\x52\x1d\xb7\x6f\x1c\x70\x07\x52\x99\x7f\xad\x1a\xb5\x89\x4d\x72\x0b\xf3\xbb\xc7\x37\x71\x2b\x43\xf9\x64\x5f\x3c\x9d\x08\x4a\x4a\xe8\xe0\x80\xc7\xdb\xb6\x87\xd2\x45\x0e\x94\xb1\xc8\x81\x79\x45\x9d\xfe\xb3\xeb\xb6\x66\x4d\x9c\x46\xbf\x21\x39\x76\x57\xfe\x2a\x8b\xc5\x09\x63\xe5\xa0\x3c\x07\x35\x20\xb0\x0a\x5d\x67\x1e\x9d\x4f\x1e\x34\xd3\xe6\xf3\x79\x8f\x08\xd5\x7f\x0c\xb8\x45\x17\xcd\x38\xc9\x28\x11\xf2\x83\xeb\x97\xfb\xfd\x74\xe6\x30\x45\x99\xf7\xbd\x94\xeb\xdc\xfc\xd7\xdd\xe8\xd7\x5d\x95\xa0\x00\x6e\xc3\xa2\x20\x6b\xd4\x0d\x9b\x26\x6b\x38\xcc\x15\xf8\x06\x05\x8d\x39\xf0\x49\x7c\x9a\xcf\x5c\x9e\x2a\x32\x3e\xaf\x1c\x4a\xeb\x70\x58\x99\x44\x54\x6c\x5a\xcd\x06\x09\x98\x80\x13\x42\x48\x3d\xaa\x16\xe5\x4e\x12\xf5\x5a\x32\x5d\xa2\x22\x25\x6a\x1a\x58\x94\x1c\x74\xe7\x7f\x7a\xaf\x21\x5b\x62\xc9\xe0\xac\x2d\xb3\x55\x36\xa3\xaa\x59\x9b\x1c\x1b\x6c\xcf\x42\x2d\x36\x38\x06\xb2\xe2\x36\xd6\x72\xbb\xdd\x4e\xd9\x8c\x8e\x6a\xbe\x81\xb4\x9b\x18\x34\x5a\xf9\xb6\x6a\xdb\xfe\x8f\x88\x0b\x87\xf6\x27\xc9\x90\x86\xc9\x35\x0c\x4a\xf1\x43\xe3\x6b\x60\xfb\x2c\xb6\x6a\xd2\xce\x50\xa5\x10\x4c\xa7\xcb\xd1\xf5\xc7\xcb\x8f\x57\xf3\xeb\x5f\xde\xfe\xe1\xdd\x9b\xd9\xe4\x60\x1b\x2a\xd6\x22\x27\x3c\xdc\xaf\x4a\x01\x22\xfc\xf4\x2b\xa5\x9e\xed\x34\x9f\x49\x51\x77\x1e\x58\x3f\x7c\x9b\x7b\x8d\x46\x9c\x2e\xeb\x85\x8f\xa3\xec\xbb\xba\xd1\xa9\x98\x91\x7a\x2a\x66\x18\xb4\x57\x3a\xe2\x40\x13\x47\x77\x97\xff\x1f\x7a\x1f\x25\xa4\x3d\xc5\x0f\xe7\xaa\x37\xb3\x8f\x54\x04\x36\x4a\x36\xba\xa4\x5f\xdd\x6c\xb4\xaa\x6d\x78\xae\xa5\x9a\x57\x25\x8f\x36\xec\x85\x20\x05\x87\xd2\x33\xa8\x8d\x92\xa1\xdd\x78\xfb\xfd\x63\x05\x77\xbc\xdc\xa1\xfd\xfe\xa1\x51\xb1\x08\x15\x15\x8e\xb1\xec\xf1\x7d\x91\x25\xe9\x97\x48\x88\xd3\x92\xc2\x36\x53\x32\xb5\xf6\x92\xd1\xee\x4b\xee\x55\x62\x5e\xe9\x74\x2e\x7f\x66\xf4\x73\xa5\x7d\xdb\xcd\x8d\xfe\x81\xb6\xb3\xbd\x06\xd4\xcc\x5d\xe9\x03\xee\x63\x2b\x45\x49\x95\x12\xb8\x47\xac\x50\x47\xc0\x74\xdf\x9a\xaa\x32\xb8\xc1\x28\x68\x21\xc2\xa9\x6f\x95\x79\x44\xb6\x38\x9d\xe9\xea\xbd\x13\x75\xd3\x54\xfb\xc4\xfc\xf6\x1b\x94\x6f\xfa\x9e\x3f\xea\xce\xf5\x8d\x10\xfc\x33\xda\x72\x0d\x8a\x38\x34\x41\x58\xef\xba\x1f\x12\x89\x23\x1d\xee\x26\x28\xdf\xd2\x25\xcb\x85\x47\x61\xbe\xd7\xf0\xed\xa5\x74\x70\x60\xb8\x24\x6c\x3a\x9e\xe1\x9c\x30\xad\xd1\x3d\x43\xe7\x9d\x39\xf7\x8d\xdc\xce\x7f\x5a\x5a\xb3\x75\x8e\x74\xb8\xce\x8a\xd3\x58\x50\xe0\x63\x1e\x33\x50\xcd\x20\x85\x57\x7d\x2e\x66\xdf\xfd\x33\x7b\xfd\x3e\xed\x2b\xb7\xf2\x5f\x7b\x98\x1a\xac\x7d\x2a\x65\x7d\x5f\x29\xab\xbd\xb9\x5a\xa5\xa4\x08\xcc\xc0\x39\x8f\xad\x32\x4e\x4a\x5d\xa3\x2b\xdf\x66\x0c\xe1\xd3\x56\x65\x93\x4b\x33\x72\xe2\x13\x79\xe5\xb8\xa4\x26\x17\xae\x48\x85\x93\x9d\x77\xc9\x57\x09\x9a\x4c\x67\xe7\xad\x9b\x27\x96\xe5\x46\x78\x59\x46\x4c\xd2\xcb\xa5\xcd\x0c\xf2\xaa\xe4\x86\x77\x50\xfc\xaa\x77\xad\xe7\xfa\x1a\x77\x79\x44\x34\x4b\xab\x33\x1b\x04\x99\x05\x3d\x6d\x0f\x24\x17\x89\xbe\x81\x34\x23\x7a\x04\xbe\x3c\xa2\xb2\x81\x43\x22\x34\x3f\x5d\xdd\x4b\x10\xc4\x50\x06\xa9\xe9\xa0\x5d\x80\xd5\x86\x76\x1a\x84\x1a\xe5\xdf\xb1\x5c\xbe\xd3\xb9\x9f\xa0\x99\x21\x80\xda\x61\xaa\xa0\xeb\x34\x3b\x03\xc9\xb9\x10\x6a\x50\xc6\x71\xad\xc9\x9e\xfb\x20\x84\x37\xca\x38\x14\xff\x22\x2b\xb2\xd0\x94\x18\xbe\x76\x40\xb5\x57\x23\x30\x35\xbc\xbb\xa3\x9c\xb3\x25\xad\xe4\x57\x80\x2d\x09\xac\x2e\xdc\x55\xf0\xb9\x50\xe0\x8b\x87\x45\x9b\x7b\x51\x9b\xed\x75\xb1\x2a\xb5\x36\x7d\xa7\xf7\xfe\x8d\x03\x5c\xc4\x5b\x22\xeb\xbd\xbf\xfc\x70\xf9\xf6\xda\x54\x1c\xd8\x54\x4a\x6a\x5f\x1c\xca\x73\xb4\x18\x6d\xf3\xdd\x94\xce\x06\xc2\xe8\x0d\xb6\x3e\x49\x5a\xe4\x9b\x45\xbd\x81\x60\x92\xc5\x9a\xca\x2b\x38\xd3\x86\xc4\x16\xd3\x24\x14\x0b\x8b\x4d\x33\x92\x62\xed\x0c\xcf\xc7\xe4\x65\x34\xaa\x8b\x25\x5d\x94\xa0\x7b\xd2\x62\x23\xb8\xa9\x86\xd8\x40\x14\x97\x36\xab\xfb\x1d\x99\x6b\xcb\x58\x7b\x69\x5c\x1d\x5f\xb6\xe2\xf8\x4e\xeb\x52\xe1\x70\x77\x6e\x43\xed\xad\xec\x61\xa5\x59\xa5\x6b\xb5\x2e\xeb\xcd\xf2\x83\xdc\x66\x3c\x4d\xf5\x8d\x2a\x7f\x7c\xa4\xdb\x9d\x9c\x3f\xf8\x67\x29\xb0\xa2\xd5\xa6\xae\xd6\x97\xd5\x7d\xb1\x30\x9b\xac\x42\x99\xdc\x4c\xf2\xca\xb7\xdb\x2b\xe6\x70\xd0\x4a\x38\xed\x7f\xc7\xfe\xf5\xe6\xd1\xf5\xe6\x7a\xbd\xb9\x59\xef\x41\xa1\xf6\x97\x5a\x6c\x04\xfc\xcf\x0d\x5d\x95\x9c\xbe\x95\x02\x47\xe7\xbe\x5e\x49\x72\x1e\x7b\xc3\xe9\x92\xf1\x56\xbc\x95\x7c\xae\xa5\x48\xeb\xb3\xdd\x61\x97\xb4\xcb\x8b\x6a\xd4\x1e\x27\xfa\x45\xc8\xda\xdb\xb0\x2b\x0b\x3d\xa9\xf5\x15\x51\x56\x67\x9b\xef\xbc\xfc\xbf\x35\x08\xe6\x08\x24\xfb\x00\xfe\x52\x8a\x52\xfb\x7d\x95\xa6\x50\xc2\xe4\xfd\xdd\x90\x5a\x99\xda\xb2\xe7\xff\x2f\x1b\xfd\x37\x04\xb2\x3b\x32\xf1\xe6\x1b\xb0\x6f\x6d\xa6\x67\xf2\x4a\xa5\xd3\x7a\x26\xf7\xeb\xe9\xb8\x51\x19\x19\x1f\xc0\x14\x64\x39\xd3\x40\x16\x50\x62\x0b\x37\x46\x30\xb0\xd8\xbd\x38\x33\xf9\x3d\x8c\x64\x7f\xe0\x2c\x4f\xc3\xba\xcf\xce\x66\x76\x9d\xfc\x9b\x77\xc5\x8a\x25\x2c\x65\xc6\x70\xde\x66\xd2\x7b\x02\x69\xc0\xbc\x08\x75\xd4\x06\xb3\x32\x5a\xd6\xba\xbc\x28\xd2\xcc\xa1\xed\xa5\x63\xac\x74\x17\x6e\xfb\xd3\x54\xa2\xe4\x34\x41\x08\x2a\xdb\x4b\xd7\x47\x47\xec\x1c\xc0\x76\x04\x8b\x49\x34\xa5\x31\x46\xec\xf9\xa7\x58\x8b\xc7\x7a\x78\xc1\xed\x1a\x4f\xc5\xd4\x55\x2c\x40\x8e\xf8\xae\xb0\xc9\xd3\x94\xb7\x2e\x75\xd0\xa7\xb6\x1f\x1a\xbd\xb2\x88\xfb\xc3\x78\x9e\x40\x2a\x88\xbe\x7d\xbd\x1f\x39\x4c\x07\xf7\x65\x51\x76\x01\xec\x0b\xd9\xd3\x12\x9d\x32\x8e\x4b\xd7\x38\x94\x97\x35\x09\xeb\xe1\xde\x2e\x9e\x24\x5a\xeb\xcc\x1a\x03\x41\x14\x25\xca\x6f\x36\xfe\xf7\x2b\x2e\xae\x80\x36\x4e\xa8\x85\x30\x6c\x2f\xbe\x4e\x85\x03\x27\xaf\xb0\xe9\x19\xd3\xb4\x74\x3b\x72\xbf\x87\x3c\xd0\x8f\x64\x7d\x57\xf6\xce\xc2\x9c\x1f\xb5\x73\x2b\x9c\x5b\xef\xad\xf6\xab\x69\x3e\x33\x87\x0a\xfa\xf3\x49\x94\xa2\x75\x3e\x8d\xef\x46\x98\xc2\x6b\x13\xd7\x2e\xff\x8e\x0a\x71\x51\x1f\x36\x49\x4f\x44\x9a\x9e\xf2\x41\xb9\xdf\x77\x93\x41\x89\xfd\x9e\x5f\x14\x44\x4c\xb2\x82\xd0\x91\xd0\x23\x50\x4b\x41\xbd\x93\xca\x89\xd0\xb7\xa1\xa7\xd5\x6d\x6f\x01\x8a\xf0\xd2\xe8\x46\x39\x98\xe0\xb9\x94\x05\x4a\xc8\xe7\x5c\x88\xd2\x8f\xdf\x7c\x7e\x8b\x93\x51\x82\xf0\x86\xf0\x51\x59\x8b\x0d\x15\x78\x19\x9c\x01\xbc\x20\x5c\x6d\x40\x34\xd8\x90\xcd\x7e\x9f\x6c\x73\x56\x24\xb8\xbc\xc8\x14\x1c\xa4\xd3\x93\xb4\x07\x9e\x43\x32\xbd\x22\xd6\x5d\x45\x72\xcf\x89\x4f\x19\xeb\xcb\x0b\xda\xe1\xb2\x57\xf1\x53\x97\xa3\x49\xef\x1b\xb9\x60\xed\x66\xbc\x71\xc2\xe6\x33\x06\x48\x97\x54\xd5\x80\x51\x2e\x07\x4b\xd2\xd3\xf4\x1a\x35\x76\xc4\x8b\x8b\x05\xa1\xc1\xfe\x99\x2c\x41\x8e\x36\x04\x6b\xa1\x79\x34\xbc\xf5\x9a\x33\xcb\x33\x49\x86\x15\x1a\xd4\xe0\x37\x70\x9b\x51\x84\xd2\xb4\x26\x84\xec\xdc\x28\xe1\xab\xe9\x1c\x36\x9a\xf9\x79\x00\x63\xc7\x64\x85\xe5\x27\x9c\xd4\x58\x7d\xad\xc9\x06\x83\xcf\x44\x8e\xbd\xb1\x2e\x31\x8c\x62\xb2\xc0\xb6\x47\x7b\x40\xb7\x17\xdb\x6c\x85\x26\x74\x34\x17\xe5\xee\x0d\xbd\xa3\x9b\x3f\x33\xfa\xd9\xf2\x35\x2b\x97\xa3\xe7\xae\xd1\x09\x69\x24\x43\xbf\x55\xee\x8d\xa0\xba\x53\x46\x59\x60\x7f\x16\xa3\xb2\x58\xd0\x16\xeb\x9a\xcc\x2b\x2a\xde\xc1\xf0\x2a\xad\x28\x60\xd5\xa2\x2c\x0a\xba\xd0\x8f\x63\x84\x6c\x20\x27\xdd\xf9\x30\xf4\x42\x10\x3a\x01\xa5\xb6\xde\x9e\xdc\x5a\xaa\xe5\xc0\x2f\xfc\x1f\x91\x9d\x66\x12\x01\x21\x2c\x88\xb0\x9b\x57\x0d\xb7\x3d\x2a\xf0\x11\xf5\xd2\x4d\x1d\xa4\x8b\xbe\x1f\x30\x5c\xe4\x1a\xce\xd1\xa0\x18\x5a\x54\x47\xcd\xaf\xc5\x7b\x03\x26\xf1\xc0\xea\x38\xaa\x72\x6b\xee\x89\x34\x85\x2c\x6e\xc1\x5e\x11\x76\xaf\xb8\xd1\x7b\x5f\x2c\x36\x34\xed\x40\x26\x47\x38\x28\xf5\xda\x2a\xa3\x62\x09\x44\x42\x43\x81\x02\x2e\xa5\xde\x7a\xa5\xca\xd9\xa8\x36\xa0\x2a\x65\x76\xa1\x69\x41\x6d\xc6\x12\x74\xe1\xfe\x8e\x34\x39\xff\xc2\xed\xa8\xb7\xa9\xc1\xd2\x39\x6e\x3f\x29\x5e\xf6\x10\xbc\x44\x44\xf7\x16\x3c\xea\x7a\x62\x79\x6b\xe5\x12\xcc\x7a\x69\xca\x7e\x18\xa7\x69\xd6\x52\x94\x1d\x3b\x5a\xc9\x78\xd7\x6c\xb3\xb4\x3b\xe5\x2d\x15\xf9\x32\x17\x79\xc8\x51\x97\x51\x04\xd2\x5b\xc7\x35\x74\xae\x95\xd0\xeb\x42\x29\x1a\x4e\x85\x61\x3d\x5b\x59\xd3\xcc\xa7\x2f\x54\x86\x5e\x70\xe8\x57\x1e\xa0\x2e\xff\xe0\x89\x98\x16\x43\x6e\x74\x2b\x4d\x06\x02\xf2\x21\x6d\xb9\xc7\xc6\xe2\x67\x67\x2e\xb8\x2a\x4d\xb5\x54\xe8\xdc\x45\xe6\x8a\xc7\xe7\x7e\xa0\x98\xe4\x68\xda\x0f\xf6\x7b\xad\xf1\x67\xa4\x25\xe3\x28\x3e\x3b\x2c\x3d\x65\x36\xd7\x7b\xe4\x95\x97\x41\x3d\x94\x34\x6c\x15\xd9\x81\x67\x33\xdf\xef\xb3\xce\x33\xf2\xd0\xe0\x80\xe9\xef\x94\xc0\x41\xd7\x48\x2e\x5a\x54\x0b\x5e\x19\xd9\x4d\x2d\x58\xa7\x1d\x84\xba\xcf\x9a\xcc\x7e\x02\x0c\x11\x1e\x91\x69\xca\x11\x56\xa1\xdd\xd1\x19\xb1\x5a\x19\xe1\x87\xc3\xda\xc8\x43\x90\x11\x7e\x41\x36\xa0\x1c\x90\xa2\x52\x39\xc8\xa7\xea\xd7\x8c\x2c\x2e\x4a\xf3\xf7\xe4\x73\x66\x53\x75\x28\x09\xdd\xe6\x82\x77\x9f\xf7\xb3\x67\x97\x68\xe7\x44\xbb\x00\x9c\xc7\x4b\x94\x51\xad\xab\x44\x68\xe2\xed\x8c\x2b\x6b\xdf\xa3\x96\xa1\x74\xce\x2e\xce\xf5\x6f\x10\x71\x5b\x82\xf8\x6e\x3e\xe1\xca\x3d\xc9\x0a\x4c\xcd\x8d\x0e\x1d\x79\xb9\xc9\xab\x2a\x7b\x60\x2a\x06\x4a\x7b\x92\x28\x23\xf6\x8d\xc7\x56\x56\x9e\x1d\xdb\x54\xcd\xca\xd1\x25\x0c\x50\xe3\xc4\xe0\xd2\x45\xf7\xb5\xb3\xa0\x1f\x4c\xc0\xf0\xd0\x60\x9f\x2d\xd2\xf9\x17\xc0\x16\xa9\xfe\x0e\x99\x15\xf5\x0c\x84\xaa\x09\x7c\x53\x13\xf4\xa6\x95\x5c\x1d\xda\x15\x95\x26\x5a\x02\x5e\x47\x9c\xd6\xa7\xba\x30\x3e\x59\x16\x15\xeb\x41\x4a\x71\x13\xdf\x2b\xdc\x28\x29\x42\xc7\x23\x45\xb9\x2d\x33\x6f\xa4\xe3\x82\x14\xca\x01\x49\x89\x83\x19\x57\x26\xcc\x20\xd3\x9d\x56\x80\x75\x35\x7c\x9a\xdb\xb0\x09\xd0\x11\x9e\xff\xba\x6b\x2f\x42\x1b\xb6\x92\x6a\xb0\x23\x9c\x1f\xa5\xa7\xad\xe2\xf2\x52\x4d\xaa\x3e\x7e\x12\x6f\x3a\x22\xaf\xff\xb1\x11\x5e\x04\x71\xb6\x1b\x2f\xce\x96\xad\xb2\xda\x64\xf4\x76\x6d\xd4\xad\x06\x80\xe4\xd1\x88\x32\xa4\x90\x27\x9b\x91\x07\xff\xf0\x4d\x4e\xc7\x58\xee\x59\xf9\x2f\x18\x76\xe5\x1f\x79\x25\xf7\xb4\x23\x77\x56\x35\x72\x94\x00\x45\x2d\xcc\x79\x4e\x1e\x9a\xf3\x80\xd8\xe5\x98\x4e\xcb\x19\xe6\xd3\x72\x86\x70\x31\x2d\x67\x24\xc7\x4c\xfe\x73\x3a\x6e\xac\x85\x5b\x76\xc7\x8f\xee\x8e\xe3\x0a\xa5\xe9\x29\x9b\x56\x33\x63\x09\x6f\xf7\x5a\x63\x3e\xad\x66\x98\xca\x22\xb8\x98\x56\x33\x52\x37\x56\xca\xce\x40\x33\x66\x23\xf4\x9c\xa4\xed\x93\xd2\x6c\x85\xf0\x46\x7b\x5e\x2c\x80\x99\x0e\x25\x6b\x29\x25\x62\x4a\x36\x8a\xb9\x5e\x92\xe9\x0c\x6f\xe5\x6a\xdf\x91\xa9\xbb\x36\xee\x9f\xba\x8e\xf7\x28\x4d\x13\x9d\x08\xd5\xbc\x4b\x4e\x09\xb9\x4f\xd3\x44\x01\x24\xc2\x2f\xe3\x1e\x4b\xa7\xf7\x33\x7c\x4b\x6e\x94\x85\x5e\x32\xa7\x4a\x76\x98\x1b\xe1\xcd\xdb\x8a\x92\xd4\xdd\xa6\x69\x36\x87\x44\xc8\xb2\xfe\x15\xb9\x19\xe5\x95\xde\xe0\x71\xab\x71\x76\x8f\xf0\x75\xb0\xf3\xee\xd1\xe0\x9a\x7c\xce\xae\x55\x13\xef\xc8\xcd\x48\x4e\x07\x34\xee\x25\xfc\xf9\x6e\x85\xb2\x6b\x84\xbf\x90\xbe\x66\xb3\x6b\x7c\x85\xdf\x21\x7c\x49\xf2\x61\x32\x49\x86\xf7\xf8\x23\x79\xe8\xd1\xe5\x4e\xc2\xae\x71\xb0\x91\xaf\xb1\x6d\x3d\xac\xf4\xc5\x7b\x61\x9e\xc0\x96\x7f\x87\x95\xdd\x77\x72\x85\xe5\xcd\x34\xb9\xc7\x5d\xd7\x86\xc9\x65\x9b\x9e\xe6\x58\x29\x1e\xe0\xe8\x82\x96\x74\x32\x57\x99\xdc\x35\xfd\x55\xc7\xe8\xb6\x19\x6c\xa7\xf7\x33\xb2\x9d\x5e\xc9\xff\x5d\xce\xc8\x47\xbc\x54\xa2\xce\x47\x84\xef\xd4\x5f\xf7\xe6\xee\x7b\xf8\x75\x57\x49\x31\x2b\xdf\x4d\xb6\x38\xd0\xae\x4f\xee\xb0\xb2\x04\x4c\x1e\x8c\x51\x76\xd2\xe5\xe7\x0b\xb2\x9d\xd2\x99\xb2\xef\x5a\x7f\x0a\x1d\x32\xf0\x68\x25\xc3\xbd\x74\xea\xe2\x88\xff\x47\x01\xba\xb3\xd0\x04\xf1\xb5\x6d\x77\x7d\x40\x0a\x49\xdf\x1b\x84\x70\x45\xfd\x6b\xe3\x9b\xe2\x73\x1c\xaf\xc9\xda\xef\x4f\xb3\x31\xae\x46\xac\xfa\x48\x2b\x39\x50\x94\x99\x8c\xb7\xe7\x59\xd1\x32\x15\xca\x11\x6b\x75\x25\xac\x91\xa4\x15\xc6\xf3\xcb\xc2\xd8\x6b\xb3\x5e\x0e\xd3\x02\xe8\x09\x4f\x17\x7c\x12\x40\x63\x80\x92\x5d\x17\x9c\xf8\x21\xc0\x56\x45\x3e\x69\xb3\xf0\x07\xbd\x90\x12\x34\xda\xe6\x3b\x5c\xb6\x32\xfd\x1b\x83\xad\xff\x94\x23\xe3\x97\x54\xfa\x7e\x49\xda\x88\xc8\xa6\xe5\x34\x9f\xc1\xc8\x2b\xad\x5d\xb5\x3d\xc5\x3d\x32\xb2\x0a\xe1\x44\xdb\x74\x41\xb9\x91\xa0\xd6\xc2\xfb\xc1\xb3\x56\x3b\xa6\x6c\xc0\x68\x70\xc3\x69\xfe\xc9\xe4\x5b\x3e\x1d\x37\x78\xc5\x8a\x16\x15\xe9\x59\x10\xb6\xca\xda\x6e\xe9\x5d\x0f\x32\x97\xbf\xdc\xd9\x50\x18\x2e\xc9\x21\x2d\xbb\xe1\x0e\x0c\x2f\x5d\x91\x7c\x34\x0f\x39\xe9\xac\x94\x6c\x80\x7c\xbc\x53\x98\x6c\x15\xa4\x36\x39\x8f\xdb\xea\x72\x5c\x3a\x61\x7b\x41\xc6\xe7\x8b\x17\x95\x64\xb9\xdd\xfa\x2f\xcc\xcd\x0f\xcf\xa7\x8b\x19\xde\x91\x95\x1a\x12\xde\x92\x9d\xaf\x62\xbb\x23\x2b\xed\xd2\x02\x37\x4e\x9a\x9a\x9f\xf8\xde\xe4\x02\xbb\xf1\x92\x64\xd7\x10\x73\x6a\xca\xa0\x8b\xec\xde\xdb\x3f\x5b\xbc\x52\x5e\x2f\xf8\x86\xec\xa2\x04\xfc\x1e\xdb\xe6\x57\x40\xf3\x11\x9a\xdc\x5d\x58\xb1\x37\x93\x17\xd3\xdd\x0c\xa5\x69\x76\x4f\x76\x71\x5f\xa0\xec\x26\xd2\x46\x76\x43\x56\xa3\x38\x4d\xc7\xf7\xe4\x73\xb6\x0a\xa5\x08\x84\xb7\x3d\xde\x2d\xbb\x3e\xd7\x96\x9b\x53\x12\x74\xa1\x1a\x7a\x68\x0b\x86\xef\x8a\xcd\x7d\x9a\x9e\x9e\x9d\x12\xa2\x03\xe5\x6e\xc9\xae\x67\xa7\xaf\x90\x8a\xf4\xd0\x5d\xdf\x62\x07\x64\x30\x98\x5f\x30\x72\x3a\x9e\x40\x5a\x94\x39\x58\x88\x4e\xcf\xb4\x49\xb9\xf2\x97\x5a\x5e\x6d\x1b\xe0\x88\xda\x63\x23\x72\x9d\xe2\x4b\x42\x08\xb9\x49\xd3\x53\x7e\x10\xb2\x67\xbf\x57\xf1\x7f\x99\x76\xbf\xbd\xc1\x77\xac\x62\x3a\x99\xde\x27\x7a\x3f\xb9\xdb\xef\xcd\x87\x68\x50\x73\x3a\x26\xca\x96\x75\xc8\x2e\x89\x59\x9a\xf2\x08\x6c\x83\xda\xbe\x07\x6c\xc3\x9e\x84\xa9\xb7\xb1\x22\x53\x03\xfd\xd3\xdb\xd1\x7d\x6e\x4b\x38\xd1\x1f\xd5\x7c\x52\x79\x75\xf8\x47\x6e\xb4\xd8\xd0\x9c\x67\xea\x56\xc1\x87\xfc\x81\xef\x71\x1d\xbc\xbd\x86\xcc\xd7\x07\xca\x93\x87\xb2\x98\xb4\x55\x45\x87\x60\xab\x9b\xc6\x09\x83\xf7\xf8\xc1\x99\xcf\x26\x51\x73\x9b\x33\x61\x3d\xc5\x9c\xa2\x8c\x2f\xce\x32\x47\xd1\x44\x34\xc6\xe2\x7d\x4d\x6e\xbc\x20\x80\xeb\x27\x7b\xde\x3f\x11\xd5\xed\x9b\xf8\xd9\x3f\xc5\x9b\x5e\x87\x5a\x1d\x00\x73\x79\x72\x7e\x8f\x63\x52\x52\x3f\xc9\xd3\xfe\xa9\x89\x96\x9f\x96\x95\x79\xae\xa1\x69\xbd\x38\x81\xaf\x4f\x5c\xec\x79\xbd\xa3\x87\x4f\x5a\xb2\x55\xbb\x51\x65\x74\xb9\xde\x94\x9f\x3d\x47\x30\xb6\x75\x58\xc7\x45\x29\xd8\xea\xde\x70\xd2\xea\x7a\xce\x92\x9a\x6f\x8c\x47\x21\x18\x37\x02\xcc\x0c\xed\x1a\xe8\x80\x37\x90\xf2\xcf\x71\x3a\xd1\xc0\x79\x10\x27\x4b\xb6\x74\xbd\x27\x5e\xbe\xff\x7b\x73\xff\x1f\xae\xff\x99\x6d\x36\x5e\x03\x98\x7b\x4d\xdc\xb4\x9c\x38\xbf\x22\xa8\x41\xf7\x03\x5a\x1e\x72\x19\x87\x0d\xb8\x25\x4a\xbb\xe5\xe9\x8e\x36\x6c\x41\xf1\xfc\x9b\x39\xe7\x5b\x64\x27\x15\x82\x2f\x3a\x80\x23\xad\xe7\x80\x08\x19\x29\x6a\x9e\x49\x46\x1e\xf0\x3a\xf4\x8a\xa8\x2c\x86\x99\x0e\x1b\xf2\x48\x2f\x70\xe5\xd7\x54\xc0\xc3\x9a\xd6\x74\x69\xd8\x7c\xd0\x81\x0a\x30\x18\x6d\x8c\xc1\xc8\x36\xaf\x50\x61\x96\x10\x9b\x1d\xb4\x61\x82\x4c\x55\x24\x6f\xd5\xd7\xbf\x8b\x45\xfd\xc3\xbd\x1a\x78\xbc\xa0\xbf\xf5\x4c\xe7\xde\xde\xb3\xe3\x01\xcf\xd7\x3f\xa9\xf1\xdb\xdb\x94\x0a\xca\xf5\x5c\xe4\x86\x8f\x22\x2e\x3d\x1a\xf5\xc0\x0a\xa6\x96\x96\xff\x6b\xc4\x84\x00\x81\x14\xb7\x91\x04\x03\x48\x7b\x10\xaa\x3c\x5c\x45\x47\xf5\x14\x5f\x19\x0f\x50\xb2\xf0\x36\x54\xed\x27\xf5\x7e\x2a\xa6\x54\x8d\x0b\x35\xc3\x05\xa9\xbb\x33\x5c\xc8\x91\x75\x31\xa5\x34\x82\x04\xe6\xa4\xc4\x05\x61\x91\x0f\x36\x15\xb3\x41\x01\x36\x08\x36\x9a\xdf\x52\x71\x15\x7c\xf8\xac\x40\x52\xe2\x1b\x05\xf1\xb3\x26\x39\x91\xf3\x09\xc0\xb5\xf3\x14\xc8\x41\xa7\x58\x4d\xa9\x55\xee\xd7\xe6\x01\x39\x1d\xe3\x53\xab\xc2\xe6\x81\x4a\x52\xb5\xd5\x0a\x83\x74\x11\x8a\x39\xde\x98\x88\x48\x84\xc2\xee\x1a\x60\xaa\x83\xb0\x16\xf0\x40\x4d\xd3\x53\xe0\xfe\x23\x91\x4d\x28\xab\xd1\x41\x68\x82\x45\x5d\x89\x72\xeb\xb0\x09\x4e\x14\xc7\x75\x52\x16\x1e\x16\x81\xc2\x2a\xd0\x88\x04\x1a\xcc\x56\x61\x12\x98\x89\x37\x18\xbe\x8b\xed\x37\xe6\x4f\x12\xfd\x28\x54\xc9\xce\xd6\xb4\xd3\x06\x62\xd8\xef\xd7\x9d\x30\x2e\xd9\x59\xdd\xc5\xa3\x16\x01\x61\xf6\x15\xb0\x54\xe3\x5d\x67\x41\x86\x0d\x86\x13\x0f\xa0\x4e\x0a\xc6\x08\xc9\xa6\x03\xfa\x1f\xcc\x23\x6f\xb3\x72\x2c\x2c\x8c\x5b\xbf\x01\x33\x68\x31\x0a\x2f\x84\x8e\x85\x2c\xd2\x6a\x58\x03\xb7\x1f\x58\xc4\xb1\x45\x78\x1b\x74\x91\xd2\x8c\xad\x03\x32\x2a\x65\x0c\xd9\x37\xb2\x2e\x7c\x56\x87\x8e\x1a\x4c\x95\x1d\x06\x51\x35\xb5\x23\x7e\x75\x50\xd9\xbf\x86\x75\x22\x73\x3a\x12\x65\x70\xf5\xfa\x5f\xa8\xdd\x5d\x17\x63\x75\xe1\xf9\xc6\xff\xc8\x14\x21\x8f\x3b\x94\xd1\xd1\xe7\xbc\xba\xbc\x81\x3d\x2a\x25\x13\x66\x7e\x5c\x64\x63\xbc\x1d\x6d\xca\x5b\xf8\x8d\x32\x81\x26\x99\x03\x77\x3d\x3d\xb3\x90\x05\x74\x04\x7f\x60\x81\xb5\xcc\x80\x30\x1b\xcd\x59\x05\x9d\x2a\x43\xcb\x32\xd3\x85\xd0\x05\xf8\x96\x6a\xd0\x72\x13\xd7\x10\xcc\x21\x83\x18\x71\x55\x5a\xf6\x98\xcb\xee\x33\xf7\x4c\x2d\x67\x24\xbd\x86\xb5\x37\xd9\x77\x07\xb6\xb8\x2b\x74\xc4\x36\x07\x8d\xb3\x70\xa8\xeb\xaa\x56\x83\xeb\x26\xb3\x69\xce\x11\x5e\x04\x42\x82\x11\x0e\xe0\xf6\xac\xf1\xca\x1a\x32\x2a\xc1\x6b\x49\xdf\x46\xcb\x6a\x63\xe0\xdb\xab\xfd\x7e\x7a\x33\xc3\x4b\xeb\x34\xca\x36\xcb\x1f\xaf\xdf\x64\x68\xb0\x34\x18\x21\xbe\x06\xc5\x21\x85\xe0\x16\x46\xc1\xe9\x18\x97\x5a\x21\x08\x1e\xf1\x55\x45\x39\x38\x78\x9d\x8e\x9b\x20\xe0\xd7\xa9\xf2\xc6\xe7\xf4\xc5\xca\x68\x38\xe8\x70\x88\x56\x00\x7c\x97\x6f\x36\xda\xf3\x1f\x21\x0c\x1e\xc4\xd9\x32\x80\xb5\xc1\xde\x40\x7b\x60\x50\xe6\xeb\x5c\xb3\x65\x7f\xc8\x2b\xba\xfc\xa0\xfc\xb6\x80\x3d\x55\xb7\x27\x8f\xdf\x9e\x8c\x3c\xc4\x31\x28\x26\x14\xb7\x80\x49\x26\x91\x18\xaa\xc8\x0d\xf2\x6c\x9b\xef\xc0\xb1\xaf\xc1\x1d\xec\x85\x56\xb2\xf4\x18\xfb\x32\xa5\x80\x13\x13\x7f\x43\x38\x6a\xac\x7f\x8d\xfc\xda\x4b\xb3\x27\xe0\xda\xc7\xcc\x24\xc1\x38\xcc\xc3\x74\x33\x62\x74\x19\x36\x68\x28\xbe\xa8\x51\xe6\xa5\xb3\xb4\xe0\x4e\x40\x43\x48\x59\xe1\xb1\x39\x14\xfb\x1b\x6d\x34\x9f\xab\x9b\x96\xdf\xcf\xe7\xc6\xed\x0e\x1c\xc7\xda\xbd\xbb\xcb\xcd\x02\x5c\x29\x1f\x51\x91\x73\x20\x69\xac\xb8\x7d\x9c\xbd\x92\xcc\x18\xcb\x37\x80\x55\x6a\x95\xc4\xe0\x66\xaa\x58\x34\x50\xfc\x86\x91\xf2\xfd\x1c\x9a\x97\x4b\xe9\xce\xcb\xba\x63\x52\x2d\x64\xca\x69\x4c\xe1\x70\x01\x61\x51\x17\xbf\xfe\xd5\x58\x0f\x57\xd5\x75\x7c\x87\xeb\x74\x33\x50\xee\x8d\xee\x39\x43\x9d\x55\x6d\x0f\xcd\x60\xf5\x7a\x25\x62\xf9\x78\x91\x81\x78\x09\xb8\x54\x79\x7a\xfc\x14\x13\x61\xcc\x07\xf5\x66\x08\xc4\x0b\x9f\x8e\x75\x10\xae\x75\x60\xf1\xe7\x62\x23\x70\x59\xa5\x3d\x6f\x58\x71\x9b\xa6\xad\x67\x74\x19\x9e\xeb\xc7\xdc\xa6\xe4\xca\xb6\x50\xa2\xd5\x51\x00\x97\x25\x1a\x71\x59\xa2\xd6\xa9\x0a\xe7\x64\xdd\x8d\x98\x06\x5f\x9e\x52\x32\xd6\x4e\x65\x2a\x77\x41\x6e\x62\x78\x2b\xf2\x21\xe3\x80\xaf\x35\x00\x72\x6d\x5d\xca\xc1\x57\xc2\x14\x3b\xaf\x4d\x97\x1b\xf2\x12\xca\xe7\xd3\x7a\x86\x06\x9c\x6c\x46\x1b\xa6\xc9\x4a\xa5\xf9\xe9\xcd\xa8\xfc\x5c\x5c\x2b\x9f\x18\xf0\x0c\x85\x90\x10\xf0\x82\x5a\x92\x85\x76\x8e\x1a\xac\x4e\x09\x29\x7d\xc7\x2d\xe5\x8e\x76\x4a\xc8\x72\xbf\xcf\x2a\xaf\x15\xd4\x08\x52\x35\xa0\xdf\xb6\x16\x10\x5f\xfc\x42\xdd\x47\x23\xfb\xd5\x54\xba\x24\xae\x66\xa7\x11\x8c\xa2\xc4\x73\x4b\x76\x01\xfd\xbb\x63\xf4\xf3\xe4\x99\x1a\x6c\xa2\x9d\x08\x42\xa9\x6f\x6b\xa4\x14\xa3\x58\x38\x3c\x02\x6c\x63\x3e\x92\x67\x1e\xb1\x78\x66\xf0\x9d\x26\x30\x7f\x24\x99\xbb\x97\xd0\xee\x87\xb2\x04\x4f\xbe\xd8\x94\x1b\x15\x0d\x1d\xcf\x80\x62\x80\xee\x14\x1c\xda\xf3\x7f\xc8\x46\x43\x74\xf1\x1c\x4d\xc7\xb3\x10\xf2\xb9\x03\xdf\x6e\x9b\x33\x4e\xe6\xed\x22\xfd\x81\x9a\xad\xbd\x3d\xa5\xb3\x4c\x40\x6e\x70\x4b\xe1\xde\xca\x7d\xa3\xbc\xd0\x8f\x8a\x7e\xfc\x26\x60\xf6\xab\xc7\xc1\xec\x9f\x06\x62\xbf\x7a\x22\x9c\x79\x1e\xc2\x99\xb7\x3f\x40\x0b\xc1\x3e\x3f\x32\xca\xf2\xfb\x40\xc9\x9f\xb7\x40\xe4\x2d\x5c\xf0\x63\xd1\x93\x6d\x70\x79\xfc\xe9\xd1\xe8\xc7\xdf\x0e\xb0\x5f\x45\xd0\xe4\xbe\x13\xc4\xbe\xa2\xb5\xbd\xab\xf3\x08\xd4\x7e\xf0\xcd\x6d\xfe\x5b\x97\xb2\xae\x54\x1f\xbd\x03\xc6\x4f\xa3\xf1\xa6\xf6\xf6\x30\x15\x74\x3a\xbb\x10\x55\xf8\x60\x80\xba\xaf\x3e\x6a\xa3\x11\x1b\xa1\xaf\x02\x9b\xf0\xdf\x6f\xc7\x69\x81\xa9\x37\x7b\x41\xf5\x38\xea\x77\x7b\xc1\x02\xf8\x6f\x1d\x16\x1e\x49\xc7\x16\x54\x0a\x4d\xbd\x5e\x8c\xaf\x94\x3d\xd1\xa3\xb9\xdd\x7c\x9a\x6d\xb9\x92\xe0\x9a\xb0\x79\xf7\x23\x77\x88\x8f\x67\x74\xc8\x38\xe3\x85\xb9\x67\x26\xc1\xa8\x89\xe7\x0b\xf4\x8e\xd6\x48\x2b\x94\x37\x8f\x45\x48\x84\x9f\x53\x31\x43\x20\xf8\xf1\xba\x40\x99\xfc\x39\xe5\x33\x9c\xe8\x11\xaa\x23\x77\x14\xfc\x46\x8b\x01\x97\xbc\xbe\x88\xab\xc3\xe7\x2b\xe6\xa3\x9c\x3b\xd2\x72\x3c\x26\x87\x33\x97\xe5\xcb\xa5\xfe\xb4\xbd\xcd\x76\xdd\xa3\x3d\xd2\x93\x05\x58\xe5\xd1\xa9\x34\x36\xad\xcb\xa3\x9a\x55\xc3\x3c\x3a\x0e\xf7\x89\xe9\x44\x59\xaf\x24\xd2\x0d\x0c\x48\x53\x8b\x82\xca\x2c\x97\x61\x73\x21\x84\x80\x22\x92\xef\x42\x5a\x02\x88\x26\x81\x2d\x3d\x66\x29\x27\x0f\x61\xba\xba\x09\x6d\x06\x87\x2a\x2f\x8c\x10\x67\x98\xa3\x1c\xa1\xa6\x71\xa9\x6c\x4d\xb4\x8f\x3f\xf6\x4c\x05\xba\x71\x1b\xe8\x66\x32\x2f\x60\x81\x70\x0c\x84\x58\xa7\xbd\x4b\x53\xf3\x57\xd6\x53\xce\xe6\xa3\x95\x45\xed\x0f\x23\x86\xc7\xfc\x92\x7b\x39\x9c\xc1\x7b\x1b\x01\x12\x18\xa5\x0a\x5c\xea\xa0\xc8\x25\xdd\x50\x41\x4f\xc4\x94\xce\xb0\x98\x96\xda\x14\x3d\x33\x5c\x6e\xd4\xff\xa0\xc0\xa6\x9c\xf6\x39\xd3\x6b\xef\xc7\xa0\x1b\x87\xd2\x81\x00\xa9\x39\x0e\x57\x52\x60\xf0\xe5\x34\x6e\x6b\x92\x46\x36\xfd\xd3\x8c\xeb\xb4\x54\xa0\x3a\xbd\xa0\x93\x24\x97\x84\x5c\xb9\x14\xff\xeb\xf5\xbb\x9f\x46\x6a\xc7\xb1\x95\x64\xbc\x26\x49\xa2\xd2\x5a\xf6\xb8\x76\xb7\x1a\xef\x59\x37\xd0\x1c\x16\x69\x9a\x85\xcb\x56\x68\xa7\x6b\xcd\x4e\xf5\xb8\x5c\x70\x95\x5e\x47\x2e\x5b\xa1\x5d\x2e\xcc\x6c\x1f\xc7\x6b\x89\xcd\xf7\x46\x89\xdf\x6a\xc6\x89\xe0\x35\x85\xdc\xd6\x93\xa4\xa8\xb7\x37\xca\xe3\x50\x5c\xfc\x04\x7f\x67\x14\xa9\xc0\xe2\x77\xab\x0c\x05\x2b\x05\x5f\xe0\x12\x65\xb0\x62\xbb\x9c\x57\xf2\xaa\x41\x13\xb5\x56\x3b\x5e\x17\xb4\x2f\x1b\x51\x3f\x5b\xdd\xf2\xcb\xa1\x5e\x54\xcb\x09\x24\x44\xd3\x6e\x5a\x1c\x82\xd5\x8b\xd9\x80\xa5\x29\xeb\x77\xb3\x10\xd3\x62\x96\xa6\x76\xc9\x8b\x59\xa3\xd9\xfc\x5e\xd5\xb1\x4d\x85\x81\x4b\xa2\x9c\x23\x57\x90\x72\x5a\xd9\xee\xc1\xe8\x04\x56\x8c\x2c\x7a\x8f\xe3\x9c\x3c\xe8\x3c\xb6\xf3\x1d\x2f\x17\xb4\xd2\xec\x86\xeb\xcf\x0f\x0a\x28\xa5\x64\x89\x55\x38\x55\xed\x39\xde\x72\x2f\xcf\x6d\x3b\x31\x86\xaa\x63\xf4\x27\x05\x32\x86\xab\x8c\xf5\xb2\x16\x1d\x76\x93\xf9\xf0\x1f\xed\xac\x15\x79\x33\x43\x9e\x14\x53\x69\x29\xa6\xd2\x9f\xf5\xb1\x49\x45\xd6\xb3\xe5\xc8\xd7\xeb\x10\x61\x3e\xee\x43\x63\x9c\xef\x3c\x87\xac\x3c\xae\x54\x68\xb7\x31\xdd\x8e\xfe\xf4\xf3\xd5\x87\x5f\xe6\x2d\x20\x84\xc0\x63\x39\x47\x25\xf8\x51\x55\x68\xbf\xcf\xd8\xb4\x9a\x91\x7c\x5a\xcd\x8c\xd4\xbb\xaa\x37\x9b\xfb\xeb\x45\xb9\xeb\xa4\x00\xb1\x29\xc1\xfb\x8b\xb0\xd6\xc7\xe4\x98\xa9\xa8\xa5\xc8\xb7\xec\xcd\xc2\xf2\xd1\x8b\xbe\xd3\x2a\xd2\xfb\x25\xe4\x40\x29\xaa\x5a\xca\xd2\xfe\x35\x5c\x65\x0c\x73\x7f\x43\x18\x0e\x2a\x16\x86\xc2\x82\x30\x14\x84\x0b\xed\x44\x7c\xf0\xbc\xb6\x6b\xc1\x74\x6e\xa9\xf8\xd3\xfb\xb7\xd4\x8f\x65\xf2\x64\x71\x28\xef\x05\x05\x05\x3a\x2c\x70\x1d\x52\x18\x09\x61\x44\x50\xac\x25\x8b\x10\x43\xa7\xe2\xd9\x99\x4a\x4e\x62\x63\x9c\xb5\x81\x5b\x0b\xc0\x2e\x12\xd9\x46\x01\x3b\xb4\x37\x29\x6e\x92\xd3\x31\x06\x8b\xf6\x86\x4c\x67\x58\xb9\xee\x09\xf0\xd7\x63\x2b\x7b\x7e\xec\xc4\x32\x3a\x5d\xcc\x90\x13\x04\x56\x64\x7c\xbe\x7a\xc1\x7c\x57\xbf\xd5\x70\x88\x24\x0f\xf2\xeb\xae\x9a\xae\x66\x78\xa3\x3c\xb6\x4a\x00\xa5\x70\x7b\xa0\xc2\x4c\x92\x2b\x6d\x21\xc8\x89\xd6\xa8\x2e\x09\xb8\x12\x6f\xc0\x95\xb8\xb2\xba\xe1\xdc\x72\xce\x6e\x76\x64\x89\xf0\x52\xb1\x7a\xb1\x9d\xd7\x11\x7f\x2c\xd1\xc4\xc1\x66\xf2\x3f\x63\x49\xc6\x80\x21\xa4\x67\x52\xbe\xc8\xcf\x87\xc3\x52\x2e\x44\xd1\x59\x08\x36\x2d\x67\x08\x39\x58\x3b\xed\x98\x68\xc2\x54\xf1\x86\x8c\xf1\x42\x4a\xfe\x6e\x65\x36\x2f\x16\xe7\xc3\xe1\x06\x65\x35\xc9\x2a\xf5\x6a\xba\x99\x21\x1b\x71\xc4\xd3\xb4\x82\x1f\xfb\x7d\x15\x81\xa9\xb3\x45\xba\xaf\x64\x05\xe7\x31\x09\x85\xb4\x37\x64\x9a\xd6\xa7\x84\xc4\xea\x00\x42\x63\xec\xc5\x8c\xf0\x69\x3d\xc3\xfa\x86\x90\x7f\xab\x8d\x79\xe8\xbc\xf5\xa5\xd4\x51\xce\x3a\x84\xc6\x7c\x4f\x7d\x80\x0f\x05\x0b\x58\xfa\xb0\x80\x80\x13\xd4\x5e\xf5\x52\xd2\x24\xe4\x69\x28\x21\x52\xdb\x5b\xe3\xfa\xc5\x06\xa2\xba\xe0\x9b\xc1\x1b\x39\x17\x9d\x3a\x19\x56\x59\xa4\x69\xa1\x57\xb9\xe8\x59\x65\x28\x12\x5b\xe5\xc2\x5b\x65\x28\xa4\x57\x99\xc9\x03\x16\x5f\x63\xc9\xcf\xc4\xd6\x58\x4c\x99\x5d\x63\xf9\xb7\xc7\x71\x2f\x94\x96\x29\x82\x76\x52\x44\xd1\x4e\x0a\x8d\x76\x42\xb5\xe3\x1c\x1a\xf4\x75\x6a\x00\x8a\xb2\x05\x56\x6b\xa0\xc2\x8e\xbc\x58\x36\xc5\x2e\x2e\xd6\x74\x59\x5b\x23\x52\xd7\xe8\x6b\x24\xaf\x47\xfd\xa8\xe6\x55\xf7\x1d\x01\x39\xd0\xf4\xf1\x0e\xe4\x41\xed\xf0\xe5\x4a\x56\xca\x9f\x0a\x27\xda\xa3\x26\xec\x23\xb1\xf8\x6d\xd1\xd7\x5d\xac\xcc\x27\xdc\xb5\x0a\x77\xcb\x06\xc7\xf8\xa2\x6a\x58\x3f\xfa\x30\x76\xf9\x86\xe0\x3c\x03\xe7\x3f\xe6\x67\x69\x52\x80\xd1\xd6\x48\x3c\x76\x30\xf7\x0e\xb1\xa6\x7f\xbd\xbb\x7a\x87\xc8\xc2\xc3\x95\xb3\x19\xa9\x46\x0c\xb7\x16\x29\x77\xe8\xdb\x49\x86\x19\x86\xb2\xcd\xf9\x27\xb0\x53\x5f\x56\xda\x52\x1d\x91\xcc\x03\x6f\x28\x5f\x3a\x0f\x6d\xdc\xfd\xfa\x9b\xb0\x01\x93\x1e\x49\xae\xc4\x86\xe6\xa6\x7a\xdb\x46\x1f\xef\x5d\x9d\x35\x53\xbf\xe3\x98\x13\xbd\x68\x0b\x05\x32\x21\x05\x47\x93\x81\x01\x10\xb4\x5d\x18\xa6\xe5\xca\xda\x7a\x96\x72\x2a\x66\xfb\x7d\x26\xff\x89\x79\x34\x19\x97\x9f\x52\xe9\x58\xc0\xba\x98\xb7\x71\xce\x7c\xa9\xff\x3c\xcb\x89\x0e\x9d\x7e\xb9\x66\x9b\x65\xcb\xad\x48\xe0\x07\x13\x2d\x3a\x39\x1d\xfb\x29\x22\x58\x83\xd0\xe8\xa6\x2c\x21\x7e\x43\xf5\x46\x72\x17\xb3\x8a\xcb\x26\x63\xdd\x48\xeb\xcf\xed\xdc\x68\xd4\x26\xfe\x38\xe7\x3f\x90\xf1\xf9\xb3\x67\x2e\x14\x72\xca\x67\x4e\xfd\x1d\x70\x1d\x4c\x43\xe7\x8b\x8c\xe1\xc2\x68\xdd\x9b\x46\x05\x6c\x3d\x7c\x66\x9b\x8d\xb6\x83\x2a\xd0\x88\xf6\x9d\xad\xf7\x61\x84\x1c\x69\xb8\x00\xb0\x38\x76\xaa\x39\xbc\x02\xf9\xb5\xa6\x6e\xe8\xb3\x81\x9c\x57\x16\x9a\xad\xe5\x45\xe3\x7c\xe3\x4b\xf2\x2e\xa3\xc6\x43\x03\x05\xf1\x2d\x45\x6c\xd7\x83\x67\x54\xaf\x76\x5c\x8a\x26\x08\x9f\x9e\x35\xea\x6b\x5f\xfb\x4d\x6b\x53\x66\xbe\xdf\x67\x5f\xd3\x72\xae\x5a\x06\x4b\x65\x0c\xa8\x4f\xf2\x39\xd3\xd9\xa0\xe8\x53\xb9\x74\x9f\x29\xfb\xed\xc7\x35\x2f\x3f\x17\x17\xc1\xaf\x09\x1d\x08\x29\x54\x02\x2b\x27\x10\xf8\xb7\x15\xa3\x2d\xad\xaa\xfc\x96\xda\x17\xf6\x09\x24\x19\x13\xf9\xe2\x93\xf7\x0a\x7e\x23\xdc\x51\x5c\x15\xae\x0c\x42\xe7\x19\x27\x8b\xb2\xa8\xca\x0d\x45\xaa\x7f\x2d\x9d\x81\xc8\x20\xf9\x64\x58\xa2\x93\xcf\x6b\xb6\xa1\x27\x5a\xf0\x62\xc5\xad\xf2\x1c\x9b\x9c\x24\x43\x93\xfa\x0e\x04\xd2\x06\x6b\x1a\x1a\x89\xf0\xd2\x61\xb2\xc5\x23\xfb\x43\xc1\x5d\xc1\xfd\x1e\xec\x0f\x9b\x83\x24\xd8\x21\xfc\xc0\x46\x68\x6f\x03\xd7\x82\x39\x8b\x17\xd9\x81\xfa\x39\x7c\xec\x89\x18\xed\xd8\x5d\x29\xfe\xe8\x92\x0f\x36\x08\x35\x8d\x3b\xb8\xd7\xfe\x14\x5b\x84\x84\x22\xa0\x5e\xbe\x95\xaa\xc5\x4b\x0c\x93\xb9\x97\xd0\xe0\x4b\xc6\x1d\xe6\x01\x66\xea\x25\x2e\xd1\x45\x19\x24\xee\x7f\xf7\x9b\xba\xc4\x39\x69\x07\xb1\x97\x17\x62\x52\xaa\x20\xf6\xf8\x50\xda\x15\xd8\x85\x98\x30\x55\x01\xe7\xe8\x22\x0f\x86\xf7\xa5\x93\xd0\xd3\xd9\x01\x0a\x04\x03\x92\xbf\x95\xbb\x46\xae\x0d\x80\x0e\x9a\x86\x03\x84\x4e\xa7\x84\x71\xd5\x74\xf9\x3f\x59\x9a\x96\xae\xd7\xcb\x40\xd6\x3f\x55\x71\x39\x16\x8e\xc2\xb9\x4a\x56\x96\xd1\x48\x5e\xe6\xc5\xef\xc4\x89\x66\x01\x4e\x54\xec\xdc\xc9\xef\x92\x21\x1f\x26\xbf\x3b\xb9\xa1\x8b\xbc\xae\xe8\xc9\x7d\x59\xf3\x93\x7c\xb7\x3b\x59\xe7\x95\x2c\xbe\x62\x05\xab\xd6\x74\x79\xe2\x74\x1a\xf2\x40\xb0\x42\x94\x27\x4c\x54\x27\x2b\xc6\x2b\xa1\xce\xc7\xe8\xe4\x63\xe9\x9a\x2f\x4c\x0f\x65\x71\xb2\x84\xf8\x40\x98\x99\x2a\x5a\x9d\x2c\x6b\xae\x3c\x37\x5d\xbb\x58\x76\x7e\xb2\xc8\x8b\x93\x45\xbe\xd9\x9c\xfc\x07\xd8\x87\x32\xf4\x1f\xb2\x05\xb1\xa6\x27\xff\xe1\x36\xec\x7f\x9c\x28\xea\x72\xb2\xcb\xab\x4a\x0e\xae\x54\x25\xc0\x24\xfa\xdc\x43\xde\x7b\xee\xa0\xf6\xfe\xe3\x64\x5d\x96\x9f\xaa\x51\x82\x9a\x96\x84\x7a\x86\x6b\xff\xfe\xa9\xe5\xfd\x53\x3f\x7b\x26\x99\xfc\x92\x64\x0c\x20\xea\xb4\x03\x9d\xa4\x26\x3a\xea\xd0\xfb\x73\xca\x67\xea\x33\x80\xea\xdb\x6a\x7c\xec\x8d\x04\xd1\x2a\x99\xa6\xcc\x0a\x43\x84\xb9\x98\x95\x08\x69\x2e\xc0\x88\x3c\x90\xd2\x73\xa3\x7c\x22\xae\xf4\x2d\xbe\x41\x1b\xdf\x44\xd3\xb2\x03\x9a\x3c\x5e\xa7\x79\x9a\x9e\x0a\x14\xdd\x06\x3f\x95\x62\x2d\x97\x5e\xb3\x2f\xb0\x70\xe1\x66\x18\x9d\xbc\x5e\xc1\xb7\x58\xb2\xa5\x2e\xe6\x95\xc2\xc0\x3b\x9d\xc0\x64\xe0\x6b\xdd\xd0\x13\xd8\x3b\xcb\x93\x9b\xfb\x13\x35\x61\xd9\xbe\xe0\x35\x3d\x59\xf1\x72\xeb\xed\x05\x9d\xd4\x14\x14\x42\x5e\xf2\x13\x0c\x0d\x40\x25\x37\x18\x51\x9e\xdc\xd4\x37\x37\x1b\x3a\xf2\x83\x17\x3e\x76\xe4\x6d\x42\xbb\x4c\xb2\x5c\x20\x6d\x6e\x94\x85\x1d\xf7\x60\x04\xf1\x42\xcb\x32\x3a\x90\x93\x45\x03\x39\xf3\xd9\xa0\x1a\xb1\x4a\xb3\x10\xcb\x8b\x72\x5a\x01\xcb\x36\x23\x26\x86\x68\xe2\x3f\xb2\xda\x9f\xcc\x82\x2f\x22\x17\x48\x6f\x67\xf0\xc9\xe7\x00\x8f\x72\xd8\x01\x0e\xa7\x95\x2e\x61\xae\xab\xbe\xcf\x85\xbc\x32\x25\x9f\x38\x15\x5e\x36\xda\xc2\x80\x84\xdd\x4a\x49\x20\xe2\x7c\x75\x1e\xd8\x43\xfc\x8c\xa9\x5a\xa1\xd6\x79\xe9\x92\xb0\xe2\x32\x5e\x02\x2c\x2a\x1a\x2f\xb5\xee\x92\xea\x18\xe6\x83\x4f\x69\x01\xa4\x2b\x1f\x5d\xbe\x7f\x3f\x7f\xf9\xf1\xc3\x9b\xb9\xf6\x27\x7e\xff\xe1\xdd\xfb\xeb\x34\xcd\x82\x41\xb2\xe2\xa4\xde\xef\xe3\x71\x27\x75\x6b\x3e\x6d\x24\x0f\x0b\xfe\xe7\x7c\xeb\xc2\x8c\xb1\x8d\x9e\x5e\x2c\x4c\x07\xb5\x9b\x47\x91\x05\x3a\x6e\x74\xde\x82\x1e\x3f\x44\x2f\x15\xee\xd1\xe3\xf4\xea\xa0\xc6\xed\xc4\xb7\xfe\xc5\xda\x92\x4a\x21\xb8\x23\x94\x47\x69\x44\xd6\x0c\x2c\xfd\xfb\xbd\x88\x05\x2e\x49\x81\xaf\x4f\x20\xdd\xf1\x72\xcb\x2a\x4a\xe8\x68\x01\x70\xa1\x41\x20\x24\xb8\xc0\x75\x1d\x96\x4d\x24\x00\x1d\x88\x88\xa0\x26\x25\x30\x84\x13\x77\x57\xa8\x68\x01\x9f\x86\xbc\x6f\xdf\xd8\xb4\x63\x05\x11\x28\xc4\xf7\x50\x7c\xfc\x91\x88\x1b\x25\x42\x45\x56\x02\x8c\x87\x52\x43\x4e\xcb\x99\xbf\xee\xff\xe9\x30\x78\x9c\x81\x9c\x4c\xe9\xec\x9c\x5b\x34\x93\x73\x23\x66\x70\x13\x1d\x0f\xc8\x2f\xda\xdf\x0d\x8e\x37\x21\x44\x38\xad\xab\x9a\x49\xa1\x9d\xdf\xaa\x70\xf8\x0c\x71\xc5\x04\xb3\xd6\x50\x5e\x6a\x25\xbb\x35\xc0\x3c\xa8\x0e\x26\x85\xc6\x1a\xab\x26\xb1\x78\x99\xcf\x79\xf5\x73\x45\x97\x93\xd3\x33\xa3\x43\xcd\x64\xdf\x92\x2b\xb8\x90\xb3\x53\x7f\xa2\x89\x00\x38\x22\xe3\xc1\x6d\xc6\x86\xcd\x28\x71\x89\x26\x94\x94\xf8\xc1\x79\xf8\x4d\x28\x36\x5e\x79\x93\xd2\x1b\xe8\x87\x50\xf8\xf2\x00\xd9\x30\x23\xd0\xa5\x63\x94\xc0\x23\x58\xf7\x35\xda\xe6\xac\xb0\xb3\x52\x19\x0f\xcd\xdc\x26\xca\x21\xb0\xb1\x53\x7d\x68\x1a\x2c\x50\x33\x0f\xf1\x8c\xb6\x71\x67\x66\x10\x1e\x43\x57\xf1\xac\xf3\xcc\x26\x89\x0d\x5a\xf4\x4b\x4c\x3a\x75\x1a\x63\x4f\xf0\x1f\xea\x3c\x97\xea\x4d\x83\x1d\xf1\x9f\x44\xc0\xfd\x70\x01\xc0\x2a\x66\xed\x58\x27\x11\xb9\x9f\xad\x72\x38\x04\xaf\x47\x29\x65\xcb\x7b\x46\xf2\x32\xd6\x0b\xd9\x82\x0a\x38\x6c\xaf\xb3\xf3\xd2\xd5\x2d\x87\x43\xd5\xae\x20\x74\x5a\xaa\x5b\xc7\xcb\x91\x8a\x39\xb9\xd5\xb0\xa1\xc8\xee\xed\x34\x3d\x65\x19\xc7\x02\x9d\x23\xb7\xb7\x0b\x98\x9f\x03\x88\xd0\xd8\x55\x36\x11\x8c\xbb\x48\x47\xff\x59\xb2\x02\x5a\x07\xc8\x22\x13\x32\xcc\x1c\x5e\x54\x10\xbb\x32\xb9\xc3\x61\xd0\xc9\xe4\x1e\x6b\xe3\x3f\xb8\xe9\x3b\x17\x86\x75\x5e\xad\x13\x5c\xf3\x8d\xca\x2a\x7e\x00\x03\xe9\x90\x03\xb1\xe7\x3c\x61\xe1\x46\x2d\xe2\x1b\xb5\xb7\x2f\x60\x9f\xe3\x4e\xc8\x8c\x9d\xce\xba\x3f\xb6\x5a\x5d\xaf\xaf\xc9\xdc\x0b\x56\x7e\xfd\xf4\x60\x65\x13\x0b\xfb\x48\xb6\xb0\x63\x62\x7b\xff\x56\x39\xa4\x7d\x1f\x4e\xb3\xb7\x69\xa0\xcb\x81\xc1\x6a\xbf\x70\xea\xc5\xb0\x70\x22\xfc\x5f\xff\x5a\xa9\x28\x46\xde\xd8\x0f\xe3\x68\x7a\xbf\x9b\x1b\x18\x1b\x6c\x72\xdf\x4e\x73\x03\xeb\xb2\xad\x39\xfb\x8e\xe3\x5b\x81\xb5\xf5\xc6\x82\xe6\x9e\x9e\x81\x80\x9f\xa6\x3e\xc0\x08\x73\xa0\x56\x9e\xca\x2e\x00\xc2\x66\xa1\xcf\x9f\x37\xef\xa8\x05\x5b\x76\x5d\x19\x9e\x6d\x0d\xf0\x34\x57\xbf\xd6\xf9\x06\xa0\x99\x02\x3c\x3d\x0f\x47\xa4\x95\x57\xbd\x78\xca\x1e\x13\x9e\x2e\xfd\x6b\x32\xda\xe9\xa0\xf1\x27\xe5\x78\xec\x8f\xa0\x3f\x10\xf9\xfe\x68\x24\xf8\x6f\xdf\xcb\x6d\x77\xde\x38\xae\xb4\xe4\x81\x0c\x60\x5f\xa0\x32\x12\x52\x5c\x3c\x92\xf3\x08\xa1\xce\x2e\xe8\x68\x57\xee\x32\x34\x0a\x01\xf2\x0c\xf6\x9c\xbd\x41\x27\xd4\x22\xf0\x28\x9f\xe2\x09\x0d\x30\xf5\x44\xd3\x40\xae\xc8\x8e\x4b\x46\x54\xa9\xdd\xc1\x5c\xe8\x3e\x9a\x96\xbd\xd0\x31\x72\x2c\x2d\xb0\x4b\xbb\xd3\x3b\x02\x8e\x1c\x56\x0b\x2b\x26\x62\x9b\xd1\xa9\xc8\xae\x65\x41\xba\x6c\x23\x76\xca\xcb\x32\x22\x3a\xb1\x88\x70\xc6\xe9\xa2\xbc\x2d\xd8\x5f\x29\xd7\x6e\xf1\xbc\x52\xa9\x37\x71\x49\xc6\xe7\xa5\x83\xfd\x1c\x0e\x1d\x99\x90\x4c\x20\xa0\x02\xa9\x86\xab\x41\x65\xef\xc1\x8c\x93\x1c\x00\x39\x54\x42\x35\x79\x14\x35\x7a\xad\xcb\xcb\x06\xae\x29\x4d\x6b\x0e\x04\x8e\x67\xd7\x82\x47\xda\xde\x4f\x2d\xd4\xd2\x30\x17\x5b\x92\xe8\x71\xf3\xce\xb8\x6b\x02\xcc\xeb\x86\x48\xd2\x51\x23\xbc\xf0\x82\x3b\x0a\xc9\x2d\x6c\xd2\x74\x23\x19\xcb\xc2\xc0\xee\x8c\x21\xa7\x1a\xe4\xcb\x7e\xb7\xca\x36\xe8\xa2\x1e\x55\xf5\x4d\x25\x78\xb6\x71\xe9\xcd\x27\xf5\x60\xa1\x48\x19\x5c\x9e\xc5\x74\x33\xc3\x2b\x83\x1b\xe7\xbf\xc0\x35\x1a\xb0\x21\x49\x26\x13\xc8\x12\x3d\x49\x86\x0b\x4b\xaa\x87\xcc\x02\x0f\xe7\x38\x79\x96\x20\xb9\x14\x87\x01\xea\xe2\x4e\xc6\xe4\xa1\xc1\x11\x5e\xa8\x06\x56\xc8\xcb\x14\x28\x64\x07\xbe\x93\x3f\xd9\x80\xe4\xd2\x4e\x71\x13\xf1\xb1\x52\x69\x0d\x55\x2c\x3a\x0f\xd5\x96\x39\x29\x7d\xb8\x4d\x79\x0b\x78\x08\xef\x1d\x3d\xb6\x52\x14\x6f\x32\xe6\xc7\x41\x17\x4e\xab\xf3\x9e\x97\xb7\x3c\xdf\x6e\x73\xc1\x16\x9e\x4e\xad\x3a\xb9\xb9\x3f\xf9\xf9\xc3\x9b\x93\x45\x5e\x14\xa5\x38\xb9\xa1\x27\xa0\xa9\xf9\xcc\xc4\x9a\x79\xb1\xd1\xa3\x93\xf7\x1b\x9a\x57\xf0\x16\x94\x30\x2a\x56\xba\x50\x16\xeb\x4a\xd0\x1c\xe2\xa4\x19\xc9\x41\x0d\xca\x20\x68\x81\xb0\xc6\x5f\x22\xff\x62\x89\xe6\xf6\x29\xc8\x18\x33\x32\x86\x2d\xc8\x9f\x8a\xf6\xc7\x91\x92\x98\x62\x6c\x6a\x31\x1c\x36\xb6\x51\x81\x8e\x6a\x51\x32\x0d\x69\xca\x86\x43\x1b\x20\x48\x08\x61\x8d\xb6\x9b\x3d\xff\xf7\xd1\xf3\x5b\xc7\x41\x57\x5d\x73\x95\xc7\xe5\x16\xf2\x28\xa9\x08\x2a\x1e\x89\xa0\xe2\x9a\xae\x8f\x31\x1b\x9e\x21\xc7\xbf\x3a\xd5\x8e\x39\x36\x25\x42\x80\xe6\x35\x28\x48\x19\xd1\x1c\xd5\xe1\x62\xd2\x40\xc6\x8b\x59\x3e\x32\x95\x1f\x7a\x5a\xcc\xc8\x43\xae\xf0\xf7\x1a\x5c\x10\x8e\x8c\xda\xf8\x38\xc8\x7f\x29\xd0\x6a\xaa\xa9\x56\xa7\x98\x96\xb3\x41\xa7\xc3\x3c\x4d\xb3\x1c\x3a\xca\x1b\x48\x04\x31\x2d\x67\xfb\xbd\xe9\x58\x03\xff\x69\xd4\xc5\x46\x39\x93\x3a\x97\xad\x1c\x61\x59\x9e\x70\x4f\xe6\xdb\x78\xe9\xb3\x23\x0e\xc9\x59\x02\x1e\x94\x10\x03\x24\xff\x98\x8e\x67\xe8\x40\xda\x5d\x05\x9d\xf3\x5c\xa7\xf4\x3f\xcc\x59\x98\xc2\x1e\x47\xa3\xcd\x59\x8f\x95\xde\xb2\x2f\xac\xa8\x9e\xdb\xe8\xcc\x1d\x2f\xbf\xdc\x1f\x5b\x6b\x51\x16\x22\x67\x05\xe5\x47\x56\x5b\x94\xbb\x63\x0a\x6d\x25\x3b\xf8\x68\x39\x56\x3d\xa3\xf2\xe8\x1e\x3b\x58\xe5\x96\x7a\xf4\xcc\xe4\x20\x24\x6d\x3b\x76\xbd\x1d\x58\xee\x91\x15\x60\x3c\x47\x2e\x5c\xf0\x4d\x9f\x56\x67\x51\x72\x3a\x7f\xda\x66\x50\x0a\x6d\xed\x2f\x70\x10\xd8\x29\x5c\xb2\xdd\xfd\x51\x0b\xa6\xcb\xd3\xa2\xde\xd2\xe3\x96\x58\xd7\x78\xf6\xa4\xcd\x59\x02\xae\xd9\x53\xda\xdf\xaa\xdb\x6c\xfe\xf4\x91\x29\x45\xe1\x5c\x2f\x9c\x86\xea\x38\x7a\x21\x94\x22\xe0\xd8\xe2\x5a\x05\x79\xe4\x2e\xa0\x5f\xc4\x73\x5e\xdd\xf5\x60\x64\x79\x05\x25\x9d\x7a\x56\xae\x8e\x6a\xd0\x06\x16\x3c\x01\x8d\x0a\xdf\xe1\x7b\x7c\x83\x6f\xf1\x1c\x7f\xc6\x57\xf8\xfa\xb7\xca\x29\xbd\x15\xde\xe9\xbd\xfe\xe0\x3e\xe3\xe4\x74\x8c\xa3\x0a\xeb\x13\x61\x38\x92\xe6\x50\x93\xaf\x78\xbe\xa5\x9f\x4b\xfe\xe9\x89\x6d\xb7\xea\x1d\xec\x43\x9b\x53\xef\xdf\xcb\xcf\xfa\x56\x7e\xea\x23\xbb\xe1\x47\x4d\xe1\xa5\x21\xd5\x4f\x6e\xbf\x38\xaa\x7d\x45\xda\x8f\x6a\x90\x1d\xd9\xa0\xbe\x06\x8e\x6a\xb3\x3c\xaa\x4d\x56\x5d\xa9\x1b\xe3\xa8\x36\xf3\xa3\xda\xbc\x54\xd7\xca\x51\x2d\x56\x47\xb5\xf8\x53\x2e\xa5\xcf\xa7\xb5\xeb\xd5\x39\x3c\xda\xa3\x5b\xbc\x3c\xd8\xce\x5b\x45\x2a\x9f\x36\x48\xbf\xd2\xc1\xd6\x39\xdd\x96\x77\xf4\xf2\xd8\x83\x56\x8d\x4c\x85\x83\xad\xd6\x05\xfb\xf5\x0f\xc7\x8f\x56\x15\x7f\x64\x3f\x3d\x6d\x01\x74\xf9\x47\x0e\xaa\xe3\x3c\x8e\x6a\xb6\x3e\x72\x53\x59\xf6\xe4\xa8\x56\x37\xc7\x6f\xfe\xf7\xea\x22\x3a\xaa\xd9\xc5\x51\xcd\xaa\x17\x4f\x69\x77\x75\x24\x11\xe4\xf4\x49\x24\x7c\x79\xdc\x2a\x40\xad\x3f\x1a\x76\xe9\xa8\x96\xd7\x47\x0e\xd8\xf0\x54\x47\x35\xba\x3b\xaa\xd1\x2b\x8f\xbd\x39\xaa\xd9\xed\x51\xcd\xce\x9f\x7c\xb3\xdc\x1d\xd7\x2e\xf8\x26\x14\xe2\x55\x79\xec\xda\xde\x8d\x5c\x95\x47\xf6\x99\x63\x11\x8f\x6a\xf9\xfe\xa8\x11\x6b\x3a\xf7\xe4\x75\xbe\x39\xaa\x75\xa5\xce\x54\x7b\xee\xda\x70\x9a\x47\xb5\x7f\x7b\xdc\xf6\x30\xec\xe8\x51\x6d\xce\x8f\x6a\xf3\xbd\xe2\x59\x9f\xbc\x43\x3e\x7b\xad\xf7\xb3\x88\x1f\xae\xff\xfc\xfe\xc8\x06\xaf\x8e\x1a\x6e\x59\x80\x06\x5e\xc7\x3a\x1d\xdd\x74\x58\xed\x60\x0f\x2a\x2a\xf5\xc8\x96\xaf\x75\x10\x6b\xd3\xa0\x47\xd5\x05\x81\x04\x7d\xbc\xd2\xe0\x58\xee\xbf\x2b\x1e\x7f\x47\x63\x9a\x67\x34\x2b\x71\xae\x62\x8a\x09\x21\xb9\x31\x4f\x8e\x07\x9e\xb1\xc9\xc4\xf9\x02\x4e\x7b\xf0\x44\x01\x46\x26\xc6\x67\x3d\x21\x84\x54\x69\x6a\xd9\x66\x13\x30\x5d\x22\x48\xfa\xe8\xe1\xaa\xe9\x75\x74\x78\xfe\x91\x97\x30\xb2\x4e\xfb\x75\xa4\xfd\x1c\xa5\x69\x7e\xa0\xfd\x67\x67\xff\x2d\xfa\x5a\x81\xc9\x2b\xaf\x3a\x96\x15\xd3\x6a\x86\x0b\x80\x1a\xd2\xea\xb8\x8d\x19\xdf\x66\x50\x7d\x66\x62\xb1\xce\x2a\xf4\xb0\xc8\x2b\x6a\x43\x78\x27\xf0\x4b\xc7\xed\x4e\x0c\x17\xae\x46\x0e\xaf\xb4\xb2\xca\x7b\xa5\x00\x39\xe9\x4b\x33\x04\x84\xc7\xba\xac\x52\xa3\x4c\x1c\xb8\xbd\x89\x52\xc2\x2b\x8b\xa1\x84\x97\xe4\x6d\x2e\xd6\xa3\x2d\x2b\xb2\x05\x5e\x21\xbc\x26\xe3\xf3\xf5\x8b\xe5\xf9\xda\x68\x19\x77\x84\x66\xe5\x74\x3d\xc3\xf9\x74\xed\xa6\xb2\x33\x53\xd9\x35\x76\x28\xb2\xbe\xea\xd9\x2e\xf0\xa4\x2d\xf9\xb8\x4f\x78\x51\x06\x1f\x66\x32\x56\x55\x97\xb9\xa0\xc1\xf4\x6e\xa9\xf8\xc8\xb6\x34\x43\x38\x77\x7f\xa3\x81\x6e\xcf\x94\x1c\x37\x8d\x36\xe5\x42\x0e\x13\xb9\x83\x97\x93\x31\xa4\x20\x9a\x9c\x61\xbd\xbc\x93\xdf\x63\xb5\xb4\x93\x7f\xc2\x6a\x21\x27\xff\x1d\xc3\x2a\x4d\xfe\x07\x56\x8a\x97\xc9\x3f\x63\x8b\x69\xf4\x3f\xad\x77\xfa\xe4\x7f\x61\x80\x21\x9d\xfc\x6f\x2c\xc7\x37\x39\x1b\x37\x1d\x1f\x08\xad\xbd\x7d\x66\x21\x82\xf9\x0f\x63\xf4\x2c\xe3\x2f\xc6\x47\xa8\x0e\x9d\xca\x2d\x42\x08\x5a\x48\xdc\xdf\x52\x99\x68\x35\x41\x11\xf5\xc0\xb7\xa7\x0e\xd6\x70\xd6\x49\x9b\x4a\xf7\x7b\x9d\x69\xde\x79\x34\x80\xd1\xbb\x9d\x83\x2c\x4d\x8b\xf6\x56\xa2\xc8\x39\x41\xc8\xf9\x64\xce\xbe\xe2\x91\x25\x39\x25\xa6\xe1\x0e\x62\x59\x5b\x75\xf7\x0e\x67\xd5\x24\x67\x85\xe4\x14\x69\x9a\x55\x84\x59\x6d\xba\x40\xe8\x07\x32\xb6\xd4\x66\x5a\xcd\x06\xdc\x8f\x32\x60\xab\x2c\x1c\xb8\x50\x26\x86\x9c\x18\xf7\x13\x84\x39\x38\x68\x95\xaa\x4e\x0e\x99\x54\x8d\x86\xff\xd9\xb3\xea\x07\x32\x3e\x47\xf9\xb4\x9a\x11\x9a\xc9\x7f\xf4\xe8\x1b\xe3\x86\xdb\x59\x05\x81\x90\x6c\x1d\x16\x40\x95\xc5\x5c\x52\x49\xdd\xbc\xf5\xdf\x15\x27\x66\x7f\x97\xab\x93\x1f\x73\x41\x51\x0e\x0e\x7a\xf2\xcf\x4c\x78\x27\xac\x5b\x5d\xd9\xef\xc0\x34\x00\x29\xb9\x73\x30\x73\x79\xa5\xf0\xd1\x06\x92\x1a\xa5\x69\x32\x9f\x27\xa7\x84\x18\x6b\x1e\x2b\x6e\xb3\x31\xfe\x3d\x4a\xd3\x2c\x9f\xd6\x33\xc2\x2f\x68\x26\xa6\xb5\x99\xf9\x44\x40\x38\xa7\x8d\xfe\x81\x5d\x2a\x2e\xa6\x33\x65\x02\xb0\x7f\x1d\x79\xd8\x02\xdd\x18\x9e\x46\x4a\x7b\xe9\xe4\x8f\x71\x11\x38\x02\x2e\xff\xf1\x33\x56\x8c\x5e\xfd\xfc\x13\x80\xdf\xcd\xdf\x7f\x78\xf7\xf1\xdd\xc7\x5f\xde\x5f\xcd\xaf\xfe\xed\xe3\xd5\x4f\xd7\xaf\xdf\xfd\x74\x9d\xa6\x74\x74\xf5\xd3\x9f\x47\xf0\xe4\x47\x57\xe4\x7a\xf4\x4a\xb7\x6b\xcd\xf9\xc1\x31\x65\xb4\xca\x4c\x09\xf7\x69\xf0\x83\xc9\x77\x34\x79\x58\x94\xc5\x8a\xdd\xd6\x96\xbb\xf1\x79\x9d\x33\xfc\x99\x33\x1b\x9f\xa5\x0e\x78\x4c\x85\x66\xdc\x9a\xb4\xab\x95\xf6\x47\x89\xc2\xac\xab\x6d\xe0\x41\x64\x69\x47\xf3\xa9\x58\xb3\x6a\x06\x99\x41\x95\x4e\x98\x56\xdf\x66\x6c\xba\x35\xfe\x8d\xc6\x56\x7c\xa3\x51\x15\xdf\x64\x3c\x47\xf2\x9a\x4e\xbf\xec\xdf\x31\xa1\xc6\xf9\x50\x9a\x06\xe0\x98\x9f\x81\xa9\x01\x82\x3b\xc3\x9d\xff\xf8\xe6\xf6\x2f\xcc\x6e\x2e\x54\x13\x6c\xa2\xad\x81\x80\xea\xeb\xc5\x71\xa1\x16\x45\xf7\xdd\x42\xbc\x62\x5d\xd3\xa1\x80\xac\xba\x0e\xda\x5b\x38\x38\x8c\xf8\x8d\x26\xe4\x8d\xc6\x69\x5e\x95\xc5\xfc\x33\x13\xeb\x39\x34\x3f\x07\xd3\x78\x31\x9f\xdb\x3b\x8e\x86\x9f\xbc\x01\x38\x7a\x9d\x95\xfa\xe7\xc2\x3a\x74\x2c\x7f\xfe\xf0\xe6\xca\x44\x67\xa8\xb8\x4c\x6f\x8e\x9e\x33\xb1\x86\x60\xee\x16\x33\x97\x9b\x69\xbd\x13\xb0\xf4\x23\xab\x76\xb9\x58\xac\x4d\x5a\x30\xa4\x3c\x7a\x4f\x2d\xbc\xe9\x40\x4e\xbb\xf9\x9a\x54\x0a\xa1\x9c\x44\x58\xc7\x7f\x0e\xcb\x73\xaf\x4e\x02\xcd\x92\xbc\xba\x2f\x16\x49\xb8\x13\xd0\x03\x1f\xdd\xe4\x8b\x4f\x37\x35\x2f\x28\xb7\xd1\xd3\x59\xa2\x23\x5c\x12\x95\x27\x92\x2a\xdc\xe5\x56\x7b\x2b\xc8\x7d\x12\xb8\x6e\xc7\x5b\xe3\xa3\xb9\xdc\xc9\xb0\xd2\x00\x6d\xa5\x5b\xd5\x6d\x96\x85\x89\x91\xc1\x0c\x69\x48\x3c\xe1\x79\xa0\x95\x47\x9d\x20\x67\xc7\x74\x27\x68\x16\x8e\xee\xbb\xb1\x4c\x34\x4d\xe3\x28\x51\x4a\x51\xee\x58\x20\xfd\x40\xb3\x21\xb4\x7d\xdd\xa7\x69\x97\x03\xf0\x7d\x48\xd5\xed\x2f\x39\x21\xf7\xcb\x6e\x41\xf9\xf8\xb8\xfb\xb5\x65\x07\x7c\xdc\xdb\xee\x89\x6e\x78\xad\xd4\x2f\xf6\xf6\xbd\xdd\xb0\xed\x96\xf2\xe7\x77\xf9\x86\x2d\x73\x51\xf2\x23\x9d\xef\x80\xd9\x0b\xbc\x32\xbc\x6c\x49\x5e\xa4\x84\xd2\x56\xd9\xd0\x47\x48\xb7\xa8\x00\xc2\x3f\xe6\xb7\x28\x83\xc2\x22\xbf\x7d\x55\x72\x1d\x98\x9c\x51\xed\x1c\x19\x3e\x15\x72\x5b\x7e\xcd\x89\x74\xfa\x32\x52\xc5\xbd\x59\x6b\xc2\x47\xa0\xb9\x31\x8e\xf5\x59\x96\x93\x07\x5d\x4f\x71\x4b\xac\x60\xe2\x49\x29\x94\xb0\x49\x96\x05\x7a\x21\x03\x3b\x1b\x9b\x97\x82\xce\xf4\x80\x05\x3b\xfd\xa8\x38\x0e\xbd\x90\xf8\x48\x98\xc0\x06\xb3\xea\x23\xaf\xc5\xfa\xbe\xed\x43\xed\x9a\xca\xba\x77\xac\x01\xd2\x69\xbb\x55\xdb\xef\xa8\xdc\xa5\xa7\x7c\xf4\xf2\xe7\xeb\x8f\xef\xde\xce\x3f\x5e\xfe\xcb\xfc\xd5\xbb\x0f\xb3\xa8\xc7\x95\x4a\xae\x99\xdf\xbe\xa5\x22\x7f\x55\x5a\xf4\xdd\xdc\xbe\xb0\x0f\x31\x95\x74\x46\x9f\x3f\x70\xa4\x35\x87\x2c\xd7\xdf\x68\x9a\xe3\x6e\x2d\x37\x17\x86\x94\x8f\x9c\xc2\xcd\xb3\x9b\xad\x18\xb1\xca\x2c\xf5\x06\xa5\x69\xad\x58\x6f\xef\x43\xb8\x2c\xbc\x8a\xa6\x22\xd5\xcd\xa2\xdc\xde\xb0\x02\xb2\x5d\x34\x38\x1f\xb5\x72\x9b\x46\xbc\x2d\x2b\x07\xd9\x67\x64\x22\x1f\xf6\x07\x50\xd5\x21\x69\x44\x6f\x4b\x2e\x08\x06\x74\x3c\xf2\x2c\x7b\x38\x80\x6c\xc4\xaa\xd7\x0a\xfb\x9b\xfd\x55\xf2\xfe\x68\xbf\x97\xcf\xde\x1b\xee\x07\x50\x53\xa0\xb8\xdf\xfd\xa1\x54\xc3\x05\xc2\x85\xa6\xed\x9d\x85\xd3\x81\x22\xa5\x2c\x2b\x87\x8e\x7c\xff\xe3\xfa\x29\x24\xad\xed\x72\xf1\x24\x47\xe2\x28\xaf\xf4\x5d\x7c\xda\x39\x11\x21\x15\x88\x25\xbb\x36\x57\xf0\xac\x95\xf6\x93\xfa\x0e\x69\xdf\x0a\x88\xd6\x80\x99\xd8\x20\x57\xff\xd7\x94\xce\x8c\x53\x1b\x24\xbf\x6b\xbd\xf3\x89\x42\xa1\xb8\x1b\x13\xba\xae\x23\xd3\x9d\x8b\xa7\x3a\x49\xca\xcf\x23\x41\x83\x3c\x4d\x73\x3f\x47\x68\x1e\x64\x86\xf3\xb7\x01\x7f\xd2\x36\x50\xe6\xc4\xaf\x75\x23\xef\xbb\xbf\xbe\xb1\x3b\xce\x21\x0f\xad\xc7\x04\xdc\xbf\x97\xa3\x8e\x51\x70\x3f\xe2\xb1\x12\xb9\xc0\x17\x78\xf5\x35\xa7\x47\x99\x8f\xc9\x0e\x7c\x71\x95\x75\x9a\x7c\xc6\xd4\x28\x6f\xc8\xb5\x77\xc2\x68\x60\x1a\x27\xd4\x37\xe7\x13\x3a\xba\xf4\x8f\xe0\xd2\xc0\xa7\xac\x38\xa5\x7f\xa5\xd9\x74\x86\xf0\x3a\x86\x18\x43\x3d\x6d\xe2\x4e\xa7\x0d\x0f\xdd\xab\xd7\x06\xc5\xfb\x6d\x06\x21\xc7\x3a\x3b\x57\x49\x22\x3c\x21\xbf\xe0\x91\xa0\x32\x77\x3e\x64\xfb\x16\x9f\x8c\x1e\x4a\x14\x59\x82\xc4\x01\xe0\x35\x02\xc0\xf5\x00\x08\x07\xc0\x3d\x74\xcc\x18\xb0\xd7\x9e\x1f\xe9\xd6\x4f\x7a\xfe\x7b\x42\x3a\xc4\xc3\xba\xc4\x5e\xd8\xee\x5c\x12\x1e\x4e\x48\xe0\xaa\x4d\x51\xe3\x66\xc2\x63\x97\xba\x2e\xca\x31\x0d\xc2\x4f\xef\x8c\x97\xba\x73\x49\xb7\xd8\x73\x25\x29\xce\xcb\x17\x4c\x05\x98\xb1\x55\xc6\x55\x3b\x4a\x25\x78\x09\xeb\x53\x22\x5c\x62\xa7\x56\x34\x0e\xb3\xcf\xce\xc2\x4c\x77\x5e\x98\x27\x74\xa8\x52\x08\x15\xa0\x80\x37\x35\x00\xe2\x41\x7d\xcc\x49\xa7\x1f\x16\xe4\xbd\x0b\xc0\xae\x9f\x9d\x9d\x12\x68\x55\xa8\x56\xb9\x6c\xd5\x95\xbe\x6d\x01\xc6\x98\x42\x7e\xbf\x77\x2d\x40\x10\xaf\xf5\x53\x9b\x20\x29\x6c\x76\xee\x85\xaf\x86\x1b\x70\x8c\x06\xe1\x3a\xda\x0c\xd3\x2f\xc6\xb2\xc0\x90\x30\x84\x65\x8f\x45\x9a\x8a\x53\x22\x2e\x62\xdb\xfc\x94\xd0\x26\x16\xef\xa8\xe4\x8a\x20\x0d\xe0\x67\xb3\xbe\x1e\xcc\x81\x02\x94\x4d\xd3\xac\x20\x67\xc0\xd6\x08\xe3\xae\x8f\x54\x69\xbc\x44\x98\xba\x36\xae\xc2\x36\xba\x15\xc6\x78\x5a\xcc\x82\xfd\x7b\xed\xe9\x15\x54\xd0\x95\x8e\x3c\x7e\x2d\x49\xd5\x9d\x95\xb3\x54\x70\x55\x5b\xc7\xbb\xdf\x5f\x7a\xea\x58\x13\xee\x34\xb0\xd2\xfa\xc6\x1a\xba\x94\x70\xe6\xf0\x57\x79\x58\xba\xb0\x41\xf9\x7a\x99\x1d\x94\xab\x73\xc1\x2e\x60\x31\x1c\x18\x0e\xe1\x3e\xb0\x89\x85\x69\xee\xd1\xcb\xb9\x4b\xd0\x91\x02\x47\xa4\xc9\xe9\x99\xbf\x92\x5f\xda\xc1\xa9\xdb\x7c\xe7\x11\x0c\xde\x25\x32\x5c\x67\xa5\x92\x83\xb8\x6c\xb3\x22\xd6\xad\x0c\x67\xd9\x02\xdc\xc8\xf9\xe8\xea\xed\x1f\xae\x3e\xcc\x2f\x3f\x7c\xb8\xfc\x05\x92\xc3\x2d\xf4\x49\xa9\x2e\x45\x87\x3b\xd5\xa0\xc6\x76\xdc\xe1\x68\x42\x92\xe7\xce\x1b\xb7\x89\xb2\xa6\xc9\x74\x96\xcc\xc8\xbb\x2c\x1e\x1b\xaf\x12\x4f\xe2\xca\x7f\xe7\x43\xef\xea\xa8\x5b\x15\x28\x32\x56\xb2\x8b\xc9\xf2\xa0\xa3\x68\x1b\x84\x17\x23\x00\x30\x51\x57\x00\x79\x97\x75\xa5\x93\xd6\xf8\x80\x6f\x19\xcb\x21\x8e\x38\xcd\x97\xef\x8a\xcd\x7d\x26\x9b\xd9\xe4\x4f\x6e\xc5\x1b\xd2\xb3\xb3\x6e\x8b\xa0\x57\x0c\x22\x7a\x3a\x39\x76\xc6\xe1\x85\xe3\x35\x08\xfa\x7f\x0a\xa7\x9e\x12\x36\xa4\x08\x3b\x52\xb1\xdf\xf3\x1f\xd8\x05\x27\x6c\xa2\xc9\x02\x61\x43\x8e\xce\xe9\x0b\x7e\x8e\x8a\x69\xa1\x5b\x98\x91\xd8\x98\xe9\x70\x68\xb7\x62\xd1\xe0\x85\x31\xb6\xc4\xe1\x8f\xe7\x0e\x98\xf9\xf4\x0c\xd2\x83\xc9\x65\x7a\xdd\xad\x12\x80\x6a\x19\x03\x4b\x16\x0e\x99\x14\x08\x06\x5b\x3c\x3b\x43\xd8\x12\xb4\xc2\x8f\x68\xe2\xe7\xec\x07\x32\x3e\x67\x0a\xbb\x25\x36\x7e\x86\x7c\xeb\x15\xb3\x94\x58\x8e\x2d\x5f\x2e\x81\x46\x98\x04\xce\xad\x01\x7a\x1f\xb2\x5d\xd2\x4a\x38\x5c\xe7\x40\x03\xfe\xe4\xb8\xb6\x22\x85\x5b\xcd\xad\xf3\x2a\x78\xad\x0d\xf4\x05\xf0\x34\x3f\xd2\x6a\xf1\x23\x5d\x94\x3c\x17\x52\x40\x7d\x44\xe3\xdd\x87\x32\x01\x90\x45\x6f\x58\x25\x68\x01\x89\xab\x15\x77\xfe\xff\x53\x56\xd7\x85\xca\x60\x87\x00\x9a\xf9\x60\x49\x05\xbc\xa3\x22\xb3\x17\x23\x78\xf6\x52\xc9\xca\xd1\xf4\x7c\x1d\xba\x1f\xaf\xe1\x96\x43\x27\xfc\xf3\x8b\xc5\x32\xf7\x1d\x6c\xd7\x56\xe8\x34\xab\x79\xac\xb6\x52\xc1\x6c\x42\xad\xa3\xae\x37\x1b\xb7\xe5\xb8\xbf\x61\x71\x41\xc6\xe7\xc5\x0b\x7e\x5e\x18\xab\xbc\x3e\x92\x66\x0f\x66\x85\x14\x64\xb4\x71\x8d\xe1\x42\xc1\x3c\x37\x01\x3d\x83\xfc\x93\x30\x8c\x2f\x92\x06\xe8\xbf\x63\xbb\x47\x51\xb8\x2e\x63\x18\x4e\xbd\xd2\x4c\x1a\xb0\x11\x30\xcd\x6d\xbe\x3b\x66\x8a\x6a\x7a\x6f\xb3\x30\xd0\x38\xd2\x9d\xd2\xd3\x19\x46\x63\xca\x66\xc4\xce\x51\xbd\x93\xdc\x27\xd7\x3d\xff\xe1\x1e\xe6\xb5\x62\x1b\x41\xdb\x79\x0f\xbf\xc5\x30\x5a\x5d\xa7\x29\x37\xe0\x6f\x76\x14\x9c\x02\x95\x8e\x12\xac\xd8\x10\x14\x9d\x56\x23\x8e\x50\xf6\x53\x97\x94\xc5\x13\x59\xd5\x52\xab\x4a\x7f\xb8\xef\x4b\x4b\xa3\x1b\xdd\xf6\x5d\xfa\xc8\x8d\xb7\xbf\x11\xf5\xfe\x91\x46\x56\xac\x68\x67\xd2\x38\x34\xe5\x7b\x07\x60\x6c\x6a\x47\x07\xa0\xcb\x1d\xee\x9b\xde\x51\x7e\xff\x84\xce\x6f\xc3\xce\x59\x75\x15\x36\xe0\xfc\xef\x8e\xe9\x3d\x2f\x9e\xd2\xf7\x4d\xbb\xef\xcb\x22\xd6\xf3\xcd\x31\x3d\x73\xba\xac\xc3\x1b\xdc\x61\x03\x3e\xb2\x9b\x01\x92\x85\x13\x0a\x89\xd0\x0c\x9d\x40\x2e\xb9\x95\xbc\x77\xef\xca\x4f\x3d\x79\x89\x0e\x2b\x83\xc4\x0f\x67\x17\xc2\x57\x06\x89\x47\xb2\x12\x3d\x7e\xf8\x84\x17\x37\xe0\xa9\x3a\xf9\xfd\x6b\x18\x25\xa8\x22\x71\xa1\xe4\xd0\x12\x72\xa0\x96\x4a\x16\xef\xd9\xd2\x3d\xac\xe2\x09\xd5\xe7\x0a\x14\x26\x0b\xf1\xc8\xb1\x8a\xb5\xa0\xd2\x84\x98\x76\x58\xb1\xd8\xd4\xcb\x4e\xd0\xb8\x27\xdc\xf9\x1c\xcc\x18\xea\x54\x25\x6f\x1d\xc6\xbb\x30\x97\x58\xb0\x56\x7a\xa2\x19\x82\x7a\x3e\x37\x1e\x0a\xbe\xf1\xec\x7b\x39\x64\xdf\xc3\x15\xf1\x59\xf6\xdc\x3a\xe4\x69\x01\x3c\x47\x78\xa3\x94\xdb\x26\xe3\x69\x56\x41\x00\xf5\x2a\x73\xbe\x6c\x8d\x75\xc1\x52\x53\xaf\x0b\xf6\x6b\x64\xfd\x76\xc6\x36\xb0\x30\x0a\x97\xc8\x22\xee\xf4\xa2\xe8\xac\xc0\x62\x5d\xd6\x5d\x23\x31\x4c\xdf\x2c\xb0\xe7\xfe\x03\x42\x81\x16\xde\x08\xa1\x17\x91\x4d\x24\x00\x77\xb2\x47\x06\xa5\xcd\x20\xf2\xad\xe1\xb8\x22\x84\x3f\xb6\xa5\x98\x4b\x6c\xfd\xf9\xf1\x03\x80\x45\x4d\x3a\x9f\xce\xe7\x9b\xcd\x32\xa9\xc8\xd2\x96\x10\x41\xa5\xec\xaa\xee\x69\x56\x54\x94\x8b\xcb\x1e\xe1\xe3\xca\x91\x11\x5d\xde\xe8\xac\xe2\xe5\x3f\xfb\x64\x47\x9e\x20\x25\x4a\xc4\x96\xe0\xaa\x23\x3c\xc0\x87\x70\x95\xaa\x5e\xb0\x22\x33\x11\xbf\xee\x18\x5b\x4c\xa1\x5d\xb9\x6b\x77\x1b\x5b\x21\x9d\xdf\xd1\x32\xd1\xf2\x48\x39\xe9\xb9\x2b\x31\x3c\x3b\x0b\xc9\x87\x59\x89\x8c\x3e\x3b\xc3\x67\x2a\x57\xdf\x9a\xad\x44\xb7\x6f\xdd\x93\xd7\x79\xa7\x4f\x1a\xed\x73\xdc\xd3\xe3\x18\x61\xda\xe0\xba\x88\xf6\xd7\x59\xe2\x31\x2c\x6c\x50\xfa\xf1\xb5\x1d\xfb\x2b\xca\xe5\xd5\x57\xd1\x4e\xdd\x63\x96\xd5\x3b\x27\x2d\x4a\xa2\x5b\xcd\xda\x93\x74\xbb\xd4\xee\xba\x8a\x46\x07\x6e\xfa\x6a\xad\x2a\xb4\x03\x67\x24\x0b\x52\xb3\x86\x47\xa3\x2d\x58\xfb\xd3\x95\xeb\x1c\x59\xd7\x28\xbb\xbc\xdf\x03\xca\x33\xf8\xd0\x3d\xc4\xbe\x22\x47\x4a\xd0\x0d\xbf\x21\x6f\x31\xcc\x7e\xa7\xe1\x2c\xa1\xcd\x1b\x7a\xcb\x8a\x10\x19\xaf\x42\x99\xcf\xc1\xb7\x91\xa7\xf9\xb3\x67\xc8\xeb\x52\xb5\x0c\xb8\x03\x9e\xa5\x4a\x8c\x68\xb1\xec\x36\xab\x17\x22\x5f\x2e\xfb\x77\x57\x9b\x30\x6a\x2a\xe3\x0e\xb0\x43\xf9\xb2\xed\x54\x1d\x94\xaf\x40\xbb\x72\x68\xa6\xb8\x47\x79\x6c\x7d\x7e\x6d\x27\x99\xf2\xc3\x78\x6c\x76\x60\x8d\x09\xf4\xeb\x1f\x61\xb3\x7c\x6a\x93\xde\x8f\xb8\x72\xa4\xd7\x7c\xdb\xbe\x15\x99\xd2\x99\xfc\x96\xb0\xab\x26\x71\x51\xae\xad\x5e\x5c\x86\xea\xc5\xd7\x85\xa7\xe5\x0f\x84\x3b\x6f\xdc\xbe\x21\xe0\x13\x0c\xfb\x2d\x7e\x4f\xa6\x89\xda\x02\xc9\x6c\xf0\x49\x41\x30\xa1\xf8\xa2\xb5\x7c\xbf\xa6\x74\x96\xa6\xef\x8d\x9a\x1d\x0c\x53\x61\x0f\x24\x5b\x91\x4f\xc8\xdc\x91\x9a\x5b\x5c\xe1\xf7\xb2\xe0\x25\x79\x8b\xf3\x1e\x4f\x41\xa8\x7e\x91\x7d\xd2\x35\x5a\xdd\x4a\x56\x44\x35\x10\xb5\x53\xec\xf7\xd3\x59\x83\x26\x87\x0a\x64\x94\x4c\x67\x08\x5f\x3a\xef\xdc\x0b\x3a\x31\xbd\x51\xa4\xbc\xb4\xff\x93\x5c\x7a\x76\xb7\xff\x7c\x8a\xdd\xcd\x0f\xf7\x3f\xc6\xf8\xf6\xf7\xb1\xb5\x6a\xbb\x9b\xc2\xc5\xf8\x6a\x1b\x63\x07\xb4\x21\x32\xe1\x43\x1e\x7b\xd1\x15\xf8\x6e\x18\x6a\x0f\xf3\xb9\x1b\xf0\x5c\x39\x9a\x00\x5a\xd6\xeb\x42\x76\xc0\xca\xa2\x47\xd5\x3a\x0a\x2a\x8e\xc2\x3a\x19\x60\xa1\x97\x9f\xea\xdd\x01\x65\x6c\xd8\x80\xc6\x82\x55\x2c\xcf\xb2\xeb\x85\xe2\xdd\x90\x41\xc5\x01\x85\x3c\x13\x02\x70\x54\x42\x70\x3e\xea\xe5\xba\x54\xca\x0f\xed\x78\x86\x32\x9b\x63\x12\x53\x9c\xac\x58\x91\x6f\xd8\x5f\xe9\x8f\x36\xef\x24\x0a\x9c\x5b\xe4\x6c\x5c\xa2\xe6\xf8\x8c\x5a\xd2\xe3\x83\xcd\xdb\x18\x4c\xd2\x4b\xf7\xac\xb3\x6c\xb0\xb6\xdf\x4f\xe1\x6f\x3c\xf6\xb4\x8d\x67\x82\x19\xff\x2b\x1f\xb1\xdd\xfd\x6f\x3c\x5f\xbe\x51\xfa\xbf\xec\x44\xbf\x7e\x76\x26\x3a\xf0\xbf\xec\xd4\x1e\x7c\x92\x10\xd1\xad\x2e\x97\x46\x1d\x1c\xb9\x74\x71\x59\xf4\x5d\xe7\x87\x6a\xc3\x0d\xa7\x1a\xd0\x80\xf2\xdf\xd7\xed\xe5\x5c\xeb\x4a\x8b\x25\x44\x6b\x3a\x8f\x25\xd4\xe0\x72\xb5\x3a\x34\x03\xc5\x25\x1e\x5a\x82\x75\x1e\x13\x1b\xfa\x74\xe9\xf4\xb7\xf8\xbb\xc4\x1c\x39\x8e\x0f\x5a\x3c\xce\x73\xe5\x6f\x7b\x5f\xb5\xa8\xa5\xc5\x17\x39\x12\x99\xf2\xb0\x77\xcc\xb7\x71\x78\xed\x71\xad\xff\xdb\x2c\x48\x68\x1c\xa5\x5d\xe4\x70\xab\xaa\xb9\x05\xbf\x50\xe3\x56\xe6\x5d\x9b\xc7\xe7\xc3\x57\x06\x0e\x0a\x06\x0e\x31\x2d\xfc\x33\x54\xd8\xcc\xff\xd0\xaf\xeb\x29\x54\x91\xaa\x78\x08\x9b\x07\x13\x32\xaa\xf6\x58\x70\x5b\x19\x80\x75\x46\xae\xf8\x24\x68\xbb\x92\x2b\xe4\xad\x40\x4c\x42\xea\x01\x5d\xef\x13\xa6\xd4\x89\xee\x4a\x47\x3d\xcd\x1c\x12\x12\x63\xa0\xed\x7d\x33\x8a\x03\xbc\xeb\x89\xf9\xc2\xa2\xb2\x10\x86\x19\x8b\x0a\xcc\x82\xc6\xbc\x82\x6e\x6d\xa1\x54\x4b\x8e\x3f\xa6\xb1\xb0\x6c\xbc\xbd\x75\x5e\x99\x02\x21\x3f\x15\xb4\x14\xa3\x85\xc3\xc4\x5a\x1f\x61\x03\xff\x85\x89\xb5\x0e\x73\xe8\xdf\x33\x61\xb9\x60\xfb\xb0\x62\xc1\x21\xd3\xb4\x59\xca\xa3\x98\xbb\x33\x3f\xdb\x81\x6e\x2d\x83\xec\xbb\xaf\x36\x65\x2e\xda\x7e\xcb\x14\xa1\xfd\x7e\x8c\x86\x8a\xb1\xfd\x66\x1d\x76\x7a\x91\x9d\x3c\x93\x9d\x88\xf2\xf6\x76\x43\x23\x3d\xf4\x1e\xa5\xd3\xee\x90\x1b\xbc\xc8\x17\x6b\xda\xfe\x40\x9e\x62\x6f\x47\xe9\xa7\xb7\xa1\x7f\xb0\xce\xba\xcd\x5d\x82\x22\x20\x60\x2a\x8f\x70\x78\x8f\x3d\x89\x48\xb7\x30\xb9\x9e\xe4\xbf\xa9\x22\x48\xfe\x56\xe4\xb8\xcd\x2c\xa9\x98\x24\xed\xc0\x5f\xbd\xa7\x05\xe4\x87\xca\x54\x08\x8e\xf5\x86\x67\xd5\x35\x15\x62\x23\xf9\xbe\x88\x45\xb1\xed\x25\xeb\x4a\xb7\xbd\x44\xec\x9b\x48\x0f\x1f\xc0\x2e\x08\x38\x68\xac\x7a\x55\x6f\x56\x6c\xd3\xd3\x61\xb7\x3f\x5b\xd7\x18\xfd\x83\xb7\xae\xb1\xee\x78\x4c\xcd\xc9\xe9\x19\xf6\x4a\xca\x9f\xfa\xa3\xb6\x87\xda\x76\xef\x71\xf0\xa6\x3c\x80\x37\xb5\x80\x17\xbf\xab\x4e\x74\x53\x27\xdb\xba\x02\x4c\xd3\x8a\x8a\xa4\x7b\x95\x38\x53\x79\xaf\xf7\x45\xeb\xaa\xa0\xf8\xa1\x35\xe8\x60\x46\x0d\xc2\x7c\x24\xd6\xb4\x88\xb9\x55\x41\x54\x8f\x16\x29\xe9\x72\xbf\xf7\x7e\xb2\xe2\x56\xaf\x63\xb7\x3f\x13\xf2\xc1\xc3\xe5\x92\x5b\x8e\x37\x08\x07\x1d\xe9\xbc\x17\x5f\xd5\x8f\xde\x98\x3c\x98\x91\xe9\x25\xb9\x82\x80\xfb\x13\x7f\x99\x13\xd4\x18\x3d\x6c\x03\xd2\x2d\x2d\x26\x2c\x4b\xe4\xbf\x09\xc2\x90\xae\x43\xfe\x86\x3f\x12\x84\x41\xa8\xde\xdc\xcb\x47\xfa\x4f\xb9\x3b\x5a\xf1\x84\xed\xcf\x11\xd0\x17\x6f\x8f\xe9\xef\xeb\x92\x97\x71\xe7\x5e\xce\x03\xd7\xf0\xaf\x24\x30\x6d\x7c\xce\x27\x05\xf4\xff\x5d\x39\xe0\x87\xf9\xdc\x0e\x5e\xeb\x6f\xb8\x4a\x50\xe4\x27\x10\x3b\xa8\x86\x71\xf5\x47\xba\xaa\x56\xc3\xa8\x17\x94\xcb\x8f\x68\xfe\x4e\x10\xae\x0b\xff\x85\xfb\x95\x20\xdc\xca\x5b\x26\xdf\xaf\xf3\x2a\x41\xb6\x29\xba\x7c\xb7\x33\x6f\x6e\xa9\x50\x3f\xbc\xf7\xea\x41\x25\x5f\x97\xea\xcf\x48\xe5\x2a\xa8\x5d\x75\xab\xbf\x2a\xf9\xc7\xfb\x1d\xf5\x5a\xd1\x4f\x62\x8d\x79\x85\x5d\x9b\xae\x3c\x03\xa5\x96\x7c\xcb\x8c\x7a\xeb\xe8\x9d\x6c\x61\x25\x04\xe9\xac\x35\xf2\x22\x24\xbe\xc5\x16\xee\xc1\xc8\x3c\x7c\x57\x7e\x55\xbc\xfc\xdf\x6b\xa7\xab\x19\xaa\x3d\xae\xa6\xe9\xff\xfd\x52\xa5\xd8\x8a\x3c\xd2\xb6\x97\x76\x08\x5a\x50\x26\xbc\x07\xe3\x69\x3d\xc2\x0a\x41\x6e\x0f\x17\xdb\x69\x3c\x17\x3b\x1c\xd5\x20\x6e\xb5\xf0\xca\x99\x2c\x61\x5a\x17\x2a\xb9\x30\x5c\x34\x9e\xaf\x83\x51\x7e\x5c\xb6\x14\xb3\xb4\xe3\x09\xfa\xd0\x18\x57\x50\x0a\xc9\xce\x74\xaa\xb6\x92\x14\x3a\x61\x25\xce\xed\x53\x3d\x21\x88\xef\x22\x0c\x2e\x8c\xc8\xb4\x13\x84\x4b\x52\xee\xf7\x6d\x66\xb0\x08\x63\x2d\x6d\x04\x0f\x20\xc3\x3f\xc4\x96\xc8\x8f\x30\xb3\x15\x8b\xee\xfa\xb0\x34\xcd\xd8\xa1\xf5\x29\x10\xc2\xcc\xe1\x62\x43\xf4\xf9\x5c\x0d\xc0\x45\xc7\xea\x07\x03\xcf\x52\xdc\xe8\x10\x40\xdb\x93\x42\xaa\x3e\xf8\xb9\x35\xac\x9d\xb6\xce\x21\x5c\xa6\xa9\xce\xe0\x0a\x71\x2d\x0a\xaf\xbd\xa2\xc5\x12\x55\x24\xab\x49\x89\xfc\xe8\xa5\x1a\x4f\x99\x15\x72\x73\x93\x97\xaf\x22\xd9\x86\x94\x48\xbe\x52\xc5\x36\x78\x1a\x94\x62\xab\xec\xf4\xec\x94\x90\xca\xfa\x99\x9b\x6c\x1c\x67\x5f\xc3\x4b\xc7\x70\x91\x7d\xea\x00\x95\x9f\xdd\xe4\x37\x34\x1e\xfd\x74\x74\x5c\xd4\xb7\xc4\xba\x69\xa1\x4a\x3f\x3d\x64\x18\xe7\xb8\xfa\x2e\xf4\xa9\x56\x09\x85\xb5\xa0\x9e\xcc\xe5\x48\x8b\x5b\xba\xd4\x7e\xa5\xa0\x24\x71\x4e\xab\x09\x5e\x1a\x47\xd3\x9e\xb2\xd6\x11\x35\x69\xf0\x26\x74\xe4\x72\x37\x8d\xc7\x5c\x46\x23\x6e\xd5\xf6\x6c\x80\x7f\x62\xc5\x9a\x72\x26\xaa\x37\x65\x59\x51\x94\x31\x49\x83\x94\x07\x17\x73\xb6\xc3\x81\x75\xd4\x62\x05\x0b\x3c\xa8\x82\x1c\x38\x05\x13\x3d\x31\xc6\xea\x5e\xd3\x6e\xff\x3f\x32\x2e\xee\xc1\x9f\x9b\x8c\xc3\x37\x44\x01\xbe\xc0\x23\xa5\x4c\x82\xb2\xe4\x74\x1c\x3c\xb4\xd5\x5a\x2b\xe4\x57\x6f\xbd\x7a\x5d\xfd\xbc\x5b\xe6\x82\x15\xb7\xe4\xf4\x2c\x5e\xe4\x63\x7e\x7b\xa0\x81\x0f\xf4\x8e\x55\xac\x2c\xba\x43\xec\xd6\x33\x4f\x1a\x5c\x4e\xf9\xe8\xfd\x87\x77\xef\xaf\x3e\x7c\xfc\x65\xfe\xe3\xeb\x1f\xe7\x2f\xff\x78\xf9\xd3\xbf\x5c\xcd\xba\xa9\xd1\x39\xd5\x9b\x94\x66\x48\xd5\xeb\x0f\x5b\xb6\xf8\xf6\xd3\x19\x60\x4a\x5c\x64\xdd\x36\x82\xd1\xa0\x89\xb1\x55\x3f\x52\xdc\xce\x08\xc9\x8b\xb0\x6a\x05\x3e\xcb\x81\x8d\xbc\xf8\xef\xd8\x2c\x8c\x5f\x7a\x7b\xe3\x1a\x5d\x0e\xcc\xce\x3a\x6d\x98\x0f\xd7\xa3\x7d\x70\xbe\x1d\x1d\xb2\x1b\x76\x91\x20\x3d\x3a\x6d\xd6\x27\x6d\xd6\xc3\xf7\x3f\xd1\x75\x4c\x9c\x94\xab\xd5\x1d\x8d\x4a\x73\xd7\x1b\x62\x6e\x3d\x5a\x54\x41\x7f\x66\x6d\xd7\xb6\xc8\x92\x1b\x5c\x2a\xff\x04\xa4\x69\x16\x9e\x88\xe9\x0c\x61\x70\x2a\xec\x39\x42\x69\x4a\x7f\xe8\x7b\xd7\xc5\x39\xe8\x59\x3c\x15\x0a\xee\x92\xa3\x06\xed\x69\xb5\xae\xdf\x0a\x36\xdb\xc9\x06\x90\x74\x3b\x3f\x67\x2f\x0a\xb0\x9c\x04\xef\xa7\x6c\x16\xba\xb7\x9b\x8f\xc1\xf4\x7d\x17\xed\x7a\x3c\xe8\x23\x20\xcf\xce\x9a\x40\x4c\x31\xdd\xd0\x99\xfc\x18\x73\x85\xdf\x10\xdb\x8f\x91\xb8\xf8\xd8\xf7\xb8\x18\x4f\x62\x23\xc2\x85\x3c\x46\x3e\x4b\x63\x16\x64\x62\xc6\x7a\xcc\x51\x50\xa7\x2e\x1e\xc0\x00\x5e\x52\x85\x39\x98\xac\x68\x9f\xd5\x68\x78\x42\x58\x49\x47\x9c\xf4\xf6\xaf\x8e\xcc\x63\xc5\x82\x95\xa2\x69\x7a\x1a\xa8\x12\xd2\x34\x33\xfa\xe1\x56\x38\x8a\x4a\xa5\x86\x6b\xd4\x43\xac\x75\xef\x8f\xaf\x53\x97\xcc\xb4\x9a\x02\xdb\x3e\xef\x0f\x8a\xe9\x54\x30\x23\x53\xd3\x3f\x78\x25\xfb\x9d\xf7\x16\x8f\xc6\x93\x68\xb5\xf7\xa1\x4f\xac\x8a\x58\xd0\x9a\x12\xe2\x93\xca\x61\xeb\xc0\x76\x87\x6f\x77\xdb\xb0\x78\xc6\xd0\x79\x06\x41\xa1\x3d\x47\x44\x7b\x8a\x75\x5f\xfc\x50\xa2\x36\xb5\xf1\x0e\x56\x89\x0e\xdc\xc3\xf1\xbd\xa7\x66\x03\x8b\xe4\xb6\x6b\xf7\xe3\xf5\x73\x01\x61\x57\x7a\x77\xc4\x1a\x32\x59\xb3\x1f\xb9\xea\xa5\xe8\xe4\x9f\xe9\xee\x85\xbf\xdf\x9f\xc2\x3d\x67\x3a\x01\xa4\x97\xbe\xc2\x87\x19\x03\x84\x02\xf7\x13\xc8\xa0\xdc\x25\xb4\x8f\x8c\xe7\xe2\xd8\x83\x3b\x89\x8f\xd2\x67\x73\xcc\xaa\xf6\xd3\x40\xe3\x33\x78\x98\x5b\x0a\xbc\x3a\x63\x4c\x53\x97\x53\x88\x4c\xfc\x30\x53\x65\x3e\x02\x58\x01\x0e\x7e\x04\x8d\x57\xe3\xb0\x52\x28\x32\xfc\x8c\x63\xc7\xa0\x39\x8b\x8b\x32\x15\x38\x8a\xa2\xe2\x51\xed\x59\xc8\x2f\x1d\xdf\xc0\x74\x26\x2b\xa3\x49\x7b\x04\x41\x6b\xa2\x69\x94\x6b\x91\xd2\x51\x40\x3e\x57\xc9\x6a\x4f\x1f\x3e\xd1\x7b\xcb\x9a\xb5\xe3\xec\xe2\x4c\x43\xe7\xa4\xf4\xea\x21\x7a\x3e\x81\xbe\x52\x7b\xaf\xaf\xd8\x59\x34\x97\xac\x5e\x96\xa2\xaa\xb7\xfe\x51\x71\x5c\x63\x50\xb9\xad\x5a\x37\x79\x0b\x83\x80\xcd\x67\xd4\xe0\xce\x16\xe8\xa1\x00\x02\xe8\xdb\x8f\x9f\x15\x60\x40\x36\x21\xea\xbd\x9c\xd8\x80\x99\x8b\xc8\x86\x81\x33\x4c\x71\x61\xbc\x9a\xc3\x1b\x14\x35\x4d\x33\x43\x98\x35\x2e\x5e\xd9\x97\x94\x37\x78\x63\x52\xaa\x96\x81\xd3\x2a\x7e\x68\xad\xaa\x52\x17\xe5\x1b\x96\x57\x1e\x5c\x11\xc2\x51\x02\x39\x69\xf3\x95\xbe\x79\xf5\x60\xb0\xa1\xa4\xac\xa7\x67\xe8\x58\x38\xc0\x58\xd2\xa1\xa7\xc8\xf0\xd6\x19\xed\x98\x34\x99\x87\xf3\xbe\xf6\x0b\xfd\x5f\x81\x0c\xf6\x84\x2c\x49\x1d\x15\x80\xae\xfb\x78\xb2\x9c\xef\xa2\x06\x58\x91\x4a\xab\x29\x9d\xb8\xac\x76\x18\x5e\xc2\x6e\x67\xa3\xf9\x5f\x68\xfe\xe9\x9a\x0a\xbc\x86\x07\xf2\xd7\xdb\x7c\x87\x77\x06\x11\xc4\xa9\x92\xb7\xf2\x28\xed\x00\xbb\x83\xa2\xfd\xde\x73\x60\x0c\x61\x32\x7c\x34\xc1\x5c\x83\x34\x29\x9c\x41\x35\x32\x79\x81\x7a\x4c\x3f\xd5\x5a\x25\x5a\xe4\xc2\x07\x13\xc2\x35\xa1\xa3\x36\xc2\x10\xde\x10\xdb\x48\x91\xa6\x85\xcd\x3d\x6b\xb3\x3e\x9e\x02\x00\x77\xed\x5e\xac\x88\x9f\xae\x56\x20\xbc\x24\xe3\xf3\xe5\x8b\x95\x09\x60\x5a\x9a\x00\xa6\x35\x59\x4d\x97\x33\xbc\x23\x62\xba\x9e\xe1\xad\x22\xc6\x4b\x5a\x2d\x38\xdb\x89\x92\xb7\x48\xf0\x1a\x73\x84\xef\x5c\xa7\x5b\xd0\x88\xdd\xa9\xcc\x87\x72\x64\x06\xd9\x77\x8d\x7e\x78\x76\xa6\x7a\xb8\x27\x74\xba\x9e\x0d\x76\xe4\xfe\x02\x42\xa0\xb6\xf9\x27\xe3\x01\x7e\x6f\x51\x38\x77\x20\x03\x07\x2f\x77\xa8\x61\xab\x6c\x21\xa7\x15\x69\xf5\xc6\xb4\x1a\x64\xa9\x7b\x68\xf0\x0d\xde\xa1\xa6\xb9\xbb\xd8\x02\x40\x9a\x1c\xf2\x0e\x4d\x1c\xbc\x8b\x83\x4a\x8e\xa0\x6e\xed\xf7\x6b\x48\x7a\x78\x21\xdb\x26\xbb\x49\xac\x4c\x26\x1b\x6c\x94\x02\x46\x2e\x2c\x1f\xd5\x05\x00\x5b\xf8\x18\x5c\xb0\x0f\x6f\x09\xb7\x80\xa9\xe0\xb4\x56\x65\xe1\x86\xb8\xb5\x1b\x62\x4e\xc6\xe7\xf3\x17\xb7\xe6\xeb\xcc\x87\x43\x04\x1f\x02\xd2\xb2\xe6\x82\xfa\x8c\xfe\xed\x74\x3e\x1b\x81\x53\xa2\xfa\xb3\xba\x2f\x16\xe8\x1c\x8a\x7b\xee\x71\x14\x27\x72\x84\x89\xc9\x67\x1c\xfe\xc3\x15\xa2\xc4\x7d\x5f\xc2\x66\xc5\x3e\x4e\x8b\xd1\xbb\xbf\xfc\x74\xf5\x61\x66\x32\x35\xfb\x58\xed\x70\xb6\x82\x28\x14\x39\x86\xc5\xc8\x18\x73\x40\x68\x81\xa2\x52\x86\xdd\x82\xbf\xe0\x81\x02\x11\xd0\x39\xe1\xab\x3f\x32\x13\xf9\x60\x0e\x97\x40\xa3\xce\xb2\x37\x06\x5b\xa5\xa3\x4c\x63\x9a\x02\x90\xaf\xf2\xaa\xd2\x39\x48\xcf\x39\x78\x55\x71\xdf\xab\x8a\xcf\x06\xde\x75\x0d\x0a\x39\xa0\x3d\x06\x41\xc2\x46\xa3\x75\xb4\x79\xf2\xd9\xb2\xab\xdb\xd9\x29\x70\x20\xf0\xdf\x10\xfc\xfe\x01\xd6\x4c\x97\x33\xb8\x80\xda\x7c\xfb\xb0\x1b\x2d\xe9\x86\x0a\xaa\x1f\x07\x51\x37\xac\x4f\x79\x24\x5f\x89\xf2\x1a\x4c\x00\xdd\x20\xc9\x08\x10\x92\x50\xc1\x4d\xaa\xc6\xd5\x17\x41\x0b\xc9\x46\x5e\x24\x93\x64\x18\x7f\x95\xa1\x49\x92\x18\xc4\x95\x17\xc9\x30\x83\xa3\xad\x33\x12\xeb\x39\x38\xa3\xc6\x2b\xeb\x81\x6d\x5f\x75\x36\x9b\xe9\x22\x43\x08\x72\xcd\xaa\x06\x6b\xb6\x74\xb5\x86\x74\x98\xfc\x90\x34\x2a\x9b\x33\xf5\x63\xa9\xcd\xd4\xa2\x0a\x5c\x7e\xac\x02\xd7\x73\x49\x68\xa9\x71\x39\x96\x5b\xa4\x09\xa0\xf2\x4e\x56\x26\x54\x63\xe4\x90\xf8\xe4\xbe\xf0\x15\xb5\x90\x1d\x59\xb1\xa9\x31\x9c\xc4\xd0\xfc\x72\x0a\xca\x44\x85\x59\x25\x7b\xca\x0c\x6c\xad\x4d\x58\xeb\x5c\x92\xfc\x25\x65\x38\xb6\xd0\x14\x21\x34\x71\x8d\xe1\xbb\x8c\x39\xe3\x8b\xb8\xa0\x93\x9b\xf8\x62\x48\x3e\x0e\xd3\xc8\x61\xf2\x15\x43\x72\xe3\x7d\x50\x2c\x1d\xc2\x2b\xaf\xa1\x03\x6b\xa1\x36\x2d\xf5\xea\x76\x3f\x20\x34\xe1\x8e\xf6\x52\xdf\xca\x69\x9a\x2d\xcd\x41\xa0\x08\xaf\x15\xd0\x96\xfc\x18\x69\xba\x86\x5b\x00\x26\x51\xb5\xfc\x54\xbb\xe3\x41\x08\xb9\xc9\x81\xe0\xd0\x9d\x61\xfc\x98\x47\x26\xa2\xe2\x76\xda\x9a\xc9\xd8\x45\xe4\xb0\x90\x24\x45\x3a\xa7\xe7\x0a\xa8\x56\x4b\xae\x0e\xd1\x08\xf2\x8f\xd7\x3b\xca\x21\x87\x82\x33\x3c\xd9\xce\x5e\x6b\x3c\xda\x68\x48\x91\x8f\x56\x6b\xc6\xb8\x55\x00\x9c\x07\xe0\x2b\xdd\x92\x67\x92\x0c\x1e\xe2\x0e\x84\x67\x51\xe5\xa3\xb9\x6c\x7b\xbf\x7f\x80\xc4\xe4\x34\x5f\xac\x5f\x6a\x33\x6f\x0c\xe1\xb2\x0b\x2d\xa1\x4c\x7a\x7e\xef\xda\xf5\xfd\xa1\x39\xf7\x2f\x81\x60\x47\xd8\x90\xb0\x1f\xed\x08\xab\x10\x80\x02\x56\x96\x79\x00\x4d\x06\x2c\x91\x99\x01\xf3\x81\x07\x50\x51\x02\x0a\x7e\x83\xf5\x85\xf2\xe8\x8e\x94\xcc\x90\xd9\x95\xe8\x61\x09\x94\x9c\x06\x22\xbd\xfb\x7e\x03\x91\xa6\xc2\x2e\x6d\xb0\x69\x23\x5b\xd3\x05\x7e\x59\xe3\x73\x44\xca\xa5\x5a\xca\x2d\x46\x6f\xae\xfe\xe5\xf2\xe5\x2f\x73\xb8\xbe\x43\xc9\x10\xc9\x4f\xa2\x64\x61\x4f\xb3\xd8\x11\x88\xed\x6e\x5f\xf8\x0a\x48\x0b\x4c\xfb\x68\x93\x00\x6d\x7e\x44\x9b\xac\xb8\xed\x6f\x74\x66\xa4\xf6\x70\x31\x3a\x0d\xab\x8f\xb1\x06\x3d\x50\x40\x85\x03\x1b\x7c\x46\x49\x8b\x06\x20\xa4\xa2\xa4\x5e\xba\xab\x06\x3e\x13\xf6\xc8\x86\xa4\xab\xd4\xce\xcf\x7d\xbf\x9e\x41\x68\xb6\x5b\x39\x58\xab\x31\xbf\x5b\x85\x83\xa2\xa7\x84\x74\xd3\x08\x5c\xd0\x89\x1a\x2d\x48\xcb\xb4\xc9\x3c\x7f\x96\x9b\x80\x5b\x31\xb7\x63\x4c\x7c\xd0\xdb\xac\x23\x41\x70\xc7\xb3\xd3\x34\xa5\x4e\x50\x28\xdc\x0b\xd8\x90\xf6\x05\x64\xa5\xa8\xc8\xf8\xbc\x7a\xd1\x66\x8f\xce\xab\xe1\xd0\xb2\xae\x35\xa9\x5e\x8c\xf7\xfb\x76\x99\x17\xa4\x32\x78\x7d\x8e\x59\xaa\x66\x78\x13\x08\x26\x90\xb8\x5e\x4a\x2b\x26\x05\xfd\xf9\xe2\xc5\xea\x7c\x61\x84\x93\x25\xd9\x4c\x17\x33\xbc\x26\xf5\x74\x39\xd3\x09\x44\xa8\x95\x06\x96\x4e\x1a\xd8\x91\x5c\x96\x58\x93\x5d\x47\xc6\xd8\x59\x19\x63\xdd\x95\x31\xd6\x20\x63\x14\x72\xe2\x91\x56\xb7\xa6\xd5\xb6\x8c\xb1\xc5\x6b\xd4\xc8\x77\x64\xed\x32\x69\xb0\x55\x76\xef\x18\xab\x6a\x04\xbb\xe4\xa3\xfe\xad\xd0\x83\x2b\xc3\x02\xdd\x6b\x7f\xbe\x91\x97\x9f\x0f\xe1\xfb\x11\xab\xd4\xb5\x73\x3a\x86\x1f\x6f\xa9\x58\x97\x4b\x72\x7a\x86\x4f\xcb\xd1\x1f\x2f\xaf\xe7\x3f\x5d\x7e\x7c\xfd\xe7\xab\xf9\xf5\x2f\x6f\xff\xf0\xee\x8d\x1a\xe4\x6d\x20\xc1\xce\xfd\x5f\x3d\xf2\xb4\x1f\xa7\xaa\x39\x7c\xdc\x83\xe0\x76\xeb\x8e\x54\x57\xc1\x74\xeb\x1f\x92\xfe\xdc\x5f\x7e\x77\x7c\xf4\xfa\xa7\xd7\x1f\xff\xff\xe4\xfd\x7b\x77\xdb\x36\xb6\x30\x0e\xff\xaf\x4f\x21\xf3\xe9\x68\x88\x11\xac\xd8\x49\xaf\x4a\x59\x3f\x8e\xad\xb4\x9e\xf1\x25\xc7\x76\xda\xe9\xa3\xea\x78\x68\x09\xb2\xd1\x50\x84\x06\x04\xed\x78\x2c\x7d\xf7\x77\x61\xe3\xca\x9b\x2c\xa5\x4e\xcf\x59\xef\x6f\xad\xac\x98\x22\x71\xdd\xd8\x00\xf6\x7d\x5f\xbd\xdd\x3f\xb8\x3c\x3b\xff\xb5\xa9\xd7\xab\x55\xbd\x5e\x95\x7a\x05\x9a\xff\x3e\x7a\xf0\x44\x4a\xf7\x9b\x08\x6e\xbc\x2c\xd6\xff\x73\xa6\x17\xb5\x82\x92\xcf\x22\x1c\x61\xff\x0b\xec\x18\x8c\x0e\xcb\x66\xe8\xb4\x37\x00\x5b\xc1\x99\x94\xc5\x91\x72\xe1\x02\x54\x35\x8e\x9a\x01\x28\xde\x71\x32\xa5\x1f\x9d\x79\x2a\x59\x2c\x94\xc8\x72\x4a\x53\xd7\x31\x38\x7b\xd8\x4b\x22\x24\x36\x17\x84\xc7\xa9\x20\x30\xdf\x52\x1f\x0a\x1c\x87\x0d\xe6\xee\x0a\xab\xdb\x02\x26\x22\x87\x07\x9b\x99\x64\x95\xb9\xcf\x39\x1b\x93\x2c\xab\x9b\x7f\x0d\x47\xe8\xe9\xdb\xca\x35\xb0\x6f\x12\xa2\xab\x6a\xf2\x45\x35\xd8\x24\x75\x65\x98\xf9\xc6\x24\x6e\x28\xf2\xe8\x61\xbd\xd3\xfd\x93\xc1\xc5\xbb\xfd\x83\xc1\x45\xc4\xbd\x1f\x85\x2f\x57\x6f\x7e\xbd\x3a\x3a\x2c\x7c\x57\xaf\x54\xd3\x72\x82\xfb\x49\x12\x71\xef\x87\x83\x3b\x66\xbd\xeb\x07\xf9\x33\x2a\xad\xc8\x26\x5b\xf7\xf9\xc5\xad\xab\x25\xa8\x4f\x0b\x4a\x3f\x3d\x03\x7d\x5d\x48\xe8\xc6\x8c\x30\x4a\x88\xfa\xc7\xcf\x87\x52\xb6\xee\xa8\xf6\xc4\xc8\x70\x5e\x7f\x66\xa4\x7f\x9c\x75\x4e\x31\x41\x35\x74\x6c\x6a\xe8\xbe\x2b\x00\x81\xcd\xe4\xfd\x0f\xf2\xd0\x40\x76\x35\x0a\x13\xaa\x4c\xb4\x24\x21\xa6\xb9\x42\x46\xa0\xb5\xd2\x65\xc8\xea\xf6\x48\x5e\xda\xe0\xb9\xb9\xb4\xed\x85\x6d\xf3\x65\x1b\xab\x42\x8f\x17\xa9\x01\x6f\x56\xf7\xee\xff\x43\xb0\xad\xc0\xcb\xe7\xdd\x96\x08\xb5\x36\xdb\xf8\x9f\x62\x31\xf9\x87\xad\x1f\x75\x26\x96\xcf\x9a\xe7\xcf\xdb\x7c\xf4\xb3\x4b\xad\x78\x1d\xea\x53\x4c\xcb\x0c\xa8\xd6\xd1\xd9\x84\x79\xeb\x69\xc7\x6c\x96\xd5\xf5\x7d\x9c\x6b\xce\xd0\x67\xf7\xaa\x57\x6c\x59\x59\x38\x53\x4a\x9d\x18\xc8\xdf\x81\x93\xd8\xfb\x9f\x6c\x72\xcc\x40\x2f\x13\x1f\xa6\xea\xe2\x25\x68\xb4\x58\x98\x68\xd2\x2d\x5f\x9c\x1a\xd1\x3d\x51\x4d\xba\x08\x26\xd5\x81\x62\x29\x51\xdf\x0b\x43\x4d\x25\xdd\xe1\x4b\x6d\x20\x29\xd3\x1e\x8d\x74\x06\xa6\x7e\x51\xa4\x63\x5a\x96\x05\x5c\xde\xd0\x9a\xbc\x45\xb2\x3b\xc8\x0e\xea\x32\x78\xd1\xa5\x91\xae\x04\x43\x35\x00\x13\x1c\x7e\x14\xf4\x6d\x52\x55\x6c\x3f\x9e\x42\x14\x6d\xf9\x4d\xc7\xd3\x76\x9f\x14\xf5\x26\x3f\x69\x23\x73\xf7\xc9\xf0\xbc\xf2\xa3\x05\x8b\xfb\xbc\x9f\x3d\xa4\xe3\xa7\xca\x48\xb6\x4d\x7e\x33\x46\xc8\xe6\x83\x9c\x9a\x7c\x0f\x13\x73\xaf\xcf\xc9\xcd\xe0\xe3\x5c\x7e\xe0\xe4\x86\x7c\x9c\x7b\x9f\x14\xd6\xc8\x4f\xf6\x00\xb0\x03\xa5\x09\x84\x0b\x80\x41\xd0\x84\x24\x34\x13\xc1\x12\xa7\x51\x25\x2b\xa3\xa1\x56\x1b\xf7\x02\x10\x14\x2f\x80\xb7\xac\xdd\x03\x35\x0a\xdd\x75\x72\x9b\x78\x07\x81\x15\xd5\x3d\x2e\x5d\xc8\x2c\xc8\x96\x33\x24\xa3\x68\x17\x0b\x24\xf9\x66\x3f\x6e\x19\x77\xa9\xd0\xbc\xfb\xa6\x1c\x81\x11\x44\x26\x0e\x1d\x5d\x82\xd1\xba\xf4\x59\xe8\x53\x52\x30\x39\x29\xdc\xc5\xc3\xec\x9a\x25\xd1\x14\x92\x45\x1c\x69\xe0\x99\x97\x15\x59\x26\x58\x68\xda\xb8\xd6\x60\x58\x47\x7a\x13\x0a\xa5\x62\x5e\x27\xc5\xd4\x83\xd3\x52\x1f\x27\xa6\x14\xbd\x2b\x59\x4f\x59\x14\x2b\x09\xb2\x79\x87\x85\x6c\x35\xcf\xe9\x24\x62\x98\xf4\x6e\x48\x4a\x78\x2c\xc8\x8f\xf2\xc5\x4a\xc9\xa5\xba\x82\x02\x23\xaf\x14\x5d\x16\xa2\x56\x0a\x1b\x3d\xd6\x2a\x49\xee\xe4\xa4\xb2\x13\xcd\x55\x54\xc7\x0d\x1e\x1b\x21\x41\xc8\x71\x28\x22\x82\xec\xbd\xf2\xa5\xdf\x9b\xec\x04\x9b\xe6\x05\x72\x69\x4a\xfd\x9a\x99\xa9\x69\xe3\x93\xe9\xd5\x6b\x89\xc8\xb9\x84\x44\x7c\x2f\xc8\x04\xb4\xd8\x77\xe1\xf2\xe5\xdb\x34\xd7\x6f\x33\x58\x19\x53\xf6\x41\xbf\x0d\x83\x2e\xe9\x06\x28\xc0\x99\x1d\x87\xd5\x48\xc9\x69\xaa\x4d\x11\x71\x4c\x7a\xf7\xbc\x12\xe1\x98\x4e\xc3\xad\x2b\x3f\x07\x2d\x08\x53\xcf\x74\xd2\x8c\x4e\xe7\xca\xa5\x02\x68\x7f\x0c\x09\xfe\x18\x0a\x7c\xe3\x4e\xb0\x8f\xda\x3f\x8e\x58\x8d\xab\xf1\x54\xd7\x49\xa6\xea\x64\xe2\x03\x0d\x10\x59\x0d\xe2\xf0\x99\xe8\xdd\xc5\xa1\x5d\x84\x04\xd9\x66\xb3\x48\xe8\xe2\xd6\x15\xbe\xae\x78\x62\x3f\xea\xb9\x67\xf3\x3a\x6d\x40\x39\x1d\x01\xe9\x74\xea\xb2\x7d\x14\x22\x0e\xea\xe7\x83\x90\xe0\x1d\x18\xba\xf2\xbd\x71\x32\xef\xe8\x08\x93\xde\x38\x4e\x55\x68\xd7\xe8\x50\xde\x77\x26\xd0\x6b\xc5\x56\x9b\x4e\xc3\x43\x85\x33\x96\xa0\x18\x0a\xe3\xfe\x02\x31\xa9\x41\x51\x60\x44\x66\xf5\x57\xa6\x39\x5a\x86\x36\xc4\xc4\xa9\x0a\x58\x06\xa6\xc1\xc4\x30\xd4\x75\x6b\x70\x5c\x5c\x83\x52\x31\x09\x4f\xb5\x77\x8e\x1d\x52\x61\x52\x95\x12\xb4\x49\x28\xea\x7d\x9b\xbc\x4c\xc4\xee\x8a\x17\xcd\x57\xbc\xa8\xb9\xe2\x6b\xf3\x10\xbb\x10\x37\x41\xa0\xe3\x6e\x18\xf1\x29\x84\xdf\x48\x7f\xd0\x01\xf0\x03\x1c\x20\xfc\x9f\x50\x0c\xd3\x11\x5a\x2c\xe4\x1b\xa2\x7e\x78\xc7\x40\x41\x35\xe4\xc6\x6e\x27\x6a\x27\xe1\xa9\x42\x4d\xed\xb7\x9a\xe3\x07\xc8\x18\x5b\xbd\x28\x85\x1f\xe0\x27\x5c\x59\x34\x6f\x9f\xbd\xd1\xea\x8a\x96\xaf\x4e\x32\x09\xea\x0a\x15\xd5\x3a\xbc\xd1\x4a\x0d\xd5\x17\xf0\x43\x55\xc4\x30\x98\xd4\xe9\x90\xe1\x17\x23\xdd\xe2\x2f\x54\xdc\x9e\xc4\x29\xb8\x06\x3d\x5c\x10\x21\x08\x8f\x48\x4f\x90\x98\x4f\xd8\x7d\x5a\xfd\x92\x11\x91\xcf\xab\xaf\xbd\x04\x17\x11\xe9\x1d\xc4\xe3\x5b\x12\x11\x5f\x38\xfa\xee\xfc\xec\x9f\xbf\x16\x5f\x29\x79\x69\x44\x7a\xe7\x67\x67\x97\x11\xe9\x8d\x6f\xc9\xf8\xc3\x4f\x71\x76\x91\xcf\xa1\xcd\x1f\xdf\x1f\x1d\x5e\xfd\x63\x20\x6b\xdd\x10\x71\x28\x2f\x60\x40\x44\xd2\x53\x47\x5d\x91\x22\xdf\x71\xd7\x2f\xb3\x74\x78\xb7\x4b\x75\x06\x2d\x5f\x1c\x9b\xc1\x2f\xf9\x94\x47\x3c\x94\x77\xa1\x3a\xae\x25\xb9\xd2\x4b\xd9\x7d\x08\xf9\xd3\x6c\xf7\xb9\x4e\x7a\x5f\x83\x0a\xea\x36\xec\x74\xdc\xe1\x5b\xf8\x00\xe1\xad\xaa\x33\x56\x21\x58\xc7\xd1\x70\xe4\xc6\x3c\x75\xf7\x22\x0c\x49\x1e\xdb\x61\xde\x85\xf4\xf5\xd3\x84\x31\x1e\xc2\x23\x8f\xd3\x09\x9b\x85\xe8\x6f\xde\x58\x51\x57\x96\x77\xd7\x27\xcc\x78\x82\x6f\xa3\x64\x4f\x0d\xa3\x3f\x6d\x59\x98\xdd\xb6\x94\x64\x7e\xd2\x2a\x41\x75\xde\x52\xc2\xf5\x17\xbf\xf5\x42\x15\xce\x6d\x21\x11\xf8\x37\x60\x61\x16\x70\xf2\xa8\x67\xf4\x02\xdf\xd5\x68\x4a\xec\x16\xc0\x0f\xd1\x9d\xc2\xfd\x3a\xeb\x11\xc9\xfe\x20\x64\xc9\x84\xc0\x7b\x1f\xa0\x1f\xb6\x77\xeb\x52\xeb\xcc\x7a\x82\x64\x22\xbc\x33\xa4\xbc\x9f\x38\xc9\x06\x7f\xd8\x59\xb6\xca\x28\xf4\xd0\x52\x36\x49\xfe\xda\xdf\x94\xd2\x56\xf9\x63\x94\xcc\xae\x5d\x90\x2b\xb7\x20\xd7\xfa\x34\xac\xe8\xaf\x14\x6d\x01\xc6\x28\xd7\xee\x9a\xc7\x62\xa9\x71\xfa\x46\xbf\xbe\xc1\xc6\x86\xf8\xbe\x62\x0c\xee\xee\x24\x93\x73\x56\xf9\x86\x98\x8b\x4d\xab\x9f\xf0\xa0\xa0\x43\xb0\xc3\xf4\x72\xfa\x0c\x56\x0f\x53\x56\xbf\xc7\x83\xc2\x38\x65\xc5\x33\x65\x6f\x60\xad\xef\x5c\xdb\xea\xfa\x2e\xf2\xb7\x5e\x38\x5a\x85\x25\x2d\xef\x39\x12\xc6\x99\xb6\x9e\xfd\x2d\x84\xc2\xd5\x55\x38\x4e\x97\x67\x70\x7c\x71\xe3\x8a\x5b\x3f\x11\x65\x66\xa7\xc6\x0f\x51\xc2\xb8\xce\xbf\xd3\x48\xff\xe3\xcb\x95\x78\xfa\x21\x2a\x5c\x1f\xf8\xc4\x57\x82\xe1\x77\xd1\xdf\x2f\xce\x4e\x7b\xea\xe2\xa2\xd3\x07\xfc\x7b\xf4\xe2\xbf\x87\xbf\xdd\x7f\x31\xea\x7e\xf1\xc2\xc1\xe8\xa0\x98\x2a\x6b\x6b\xb7\x95\xdd\x53\x31\xbe\x0d\x9d\x9f\xf3\x38\xce\x88\x77\x6f\xf5\xab\x37\x19\x94\xd0\x44\x7d\x7f\x15\xcb\xfb\x01\x54\xd8\x34\xda\xda\x69\x5d\x73\x12\x7f\x50\xbe\xbc\xf6\xde\x8d\xa2\xfd\xc5\xc2\xb1\xc5\xee\x9e\x82\xc2\x2e\xa5\x90\x77\x5b\x41\xd7\xf6\x60\xeb\x57\x8a\x44\x51\x74\xb9\xa7\x52\x36\xef\x05\x43\x03\xce\x7e\xd0\x55\xef\xba\x81\x64\xc7\x86\x1e\x83\x58\x6d\x5d\xdf\xfd\xa6\xed\x77\x72\x65\xd5\x07\x75\x68\xf6\xe1\x87\xe1\x67\xd5\x2f\x4d\x82\xf5\x35\xfb\x5c\x1d\x57\x08\x3a\x42\xe7\x23\x8e\xd2\x32\x1a\x1b\x62\x3b\x35\xaa\x7f\xe3\x31\x78\x40\xf9\x38\x4f\x62\x3e\x0a\xac\xb3\xb3\xbe\x3e\x31\xdd\xab\xa1\xc4\xc4\x0f\x5f\xda\xba\x9a\xd5\x6d\x39\x9b\xd1\x60\x18\xe0\xba\x38\xf4\xb2\xe7\x6e\x04\xfe\xd9\x7b\x41\x3b\xe8\x07\xb8\x1d\x60\xfa\x43\xb4\xbb\xb3\x83\x1e\xd3\x6e\x14\xf4\x7a\xbd\x76\xd0\x0d\x5d\x18\xe5\x9d\x1d\xd4\x0d\xda\x33\xc6\x49\x9b\x0a\x32\xcb\x02\xbd\xc6\x69\x37\x3a\x08\x21\xa0\x3d\x38\xeb\x99\x31\x77\xa3\xa0\x3d\x0a\x96\x12\xff\xba\xbb\x38\x45\xfd\x27\x86\x6e\x58\x6b\x7f\xec\x8f\x72\xec\x27\x72\xe6\x2c\xda\x79\xcd\xbe\xa7\x66\x0a\xac\x38\x05\xe6\xa6\xc0\xaa\x53\xa0\x75\x53\x90\x9b\xc8\xcc\x40\x5d\xc1\x74\xc8\x46\xad\xb4\x1b\x9d\x87\x31\xea\x06\xfd\x76\xd0\x95\xd3\x8a\x6b\xa6\xb5\xf4\xa6\xe5\xb8\xe1\x73\xef\x4a\xf8\x5d\x5d\x09\x40\xce\x4a\x84\x72\xa5\x8e\x7c\xb3\x5f\xd2\x9a\x30\xed\x7d\xef\x4c\x00\xce\x9c\xd9\xa8\x23\xcf\x43\x8e\x45\xd1\x0e\xd4\x66\x65\x4f\x5b\xbc\xc1\x80\x80\xa3\xe5\xfd\x2d\x4d\x88\x8b\xe7\x54\x70\x9f\xb7\x63\x3a\x2c\x44\x13\xd1\xb9\x14\xea\x53\x5e\x0f\xc5\x08\xc0\x75\x5a\x3c\x9c\xe0\x64\x3c\x2e\x5c\x01\xf2\xcd\xdb\xe6\xc3\xcf\x1d\x51\xff\x29\x49\x11\xa2\x88\x40\x17\xef\xeb\x28\x1a\xa0\x30\x5b\x35\xa4\xdb\x7b\xe8\xf0\x4d\x79\x97\xc9\x97\x3f\x35\x19\xac\x7a\x8e\xa7\x09\x9d\x51\x61\x2c\x56\x65\x99\x48\xb9\xa0\xf5\x32\xc1\x38\x89\xb8\xfe\x41\xff\x43\x8c\x2f\xd4\x8c\x82\x96\x4e\xff\xba\xa5\xc2\x3e\xeb\x2a\x8b\x85\x26\xe3\x96\x3a\x2d\x42\x55\xcb\x09\x2b\x56\x47\x04\xbb\x76\xf4\xe9\xa0\x3d\x68\x64\x37\xdd\xae\xd7\x8d\xe1\xce\xb5\xb7\x91\x1a\x94\x2d\xa1\xae\x52\x33\x25\xe0\xe2\x97\x2a\x8a\x50\x7d\xee\x14\x07\x8a\x1f\xec\x7c\x8d\x07\x9a\x7c\x2e\x76\xed\xdf\xd4\x58\xf4\xe6\x39\xbf\xa9\x3a\x93\xa9\xa2\x3a\xfa\x7c\x15\x8a\x3e\xdc\x0c\x44\x97\xca\x90\xc5\xd0\xe9\x3f\xc1\x22\xfe\x8c\xff\x8d\x7f\xc1\x5f\x44\xb7\x61\xe0\x11\xf3\x81\x2c\xe6\x13\xf7\x5f\xe0\x06\x1e\xe0\x67\xdc\xcc\x36\xfc\xbb\x99\xd7\xf8\xa5\x51\x48\x77\x47\xc9\xfd\x2a\x21\x5d\xa5\xa8\x27\xa6\xfe\xfd\xdf\x39\xe1\x0f\xeb\x95\x6d\xd6\x2e\x56\x8a\x82\x7d\xf7\xd5\x84\x66\xf3\x58\x8c\x6f\x1b\xb4\x95\xae\xd6\x98\xcd\xe6\x2c\x95\x55\x94\x30\xe0\x89\xe2\x26\x3e\x0d\xf9\x28\x5c\x58\x9a\x95\x35\xd4\x13\xc8\xe4\xe5\xe3\x7a\xed\x83\x50\xfb\x0a\x0c\x2c\xd6\xec\xc6\x54\xbc\xa5\xc9\x04\x3a\xda\xb0\xa2\x7c\x71\x95\x89\x58\x90\x4f\xa9\xb7\x49\x8d\x72\x50\x9f\x27\x97\x27\x16\x2f\x62\x21\xf8\x9a\xeb\xaf\x9b\x9f\xc5\x69\x7c\x43\x56\x46\xd2\x50\x8e\x34\x78\x8a\x27\xf8\xf6\x8f\x2a\x46\x1a\x2b\xfc\xfe\x5f\x0a\xcb\x1f\xfd\x64\x75\x3b\xf5\xf6\x7d\x6d\xd1\x53\xc5\x9b\x4d\x82\x6c\x8b\x87\x34\x93\x6d\x4d\x36\x6c\xd9\x54\x5b\xd9\x43\x3c\x99\x1c\x48\x3c\xfa\x19\xf0\x75\xad\xf6\xc1\x2a\xc5\x56\x5a\xd9\x3a\xcd\x2e\xe8\x6c\x9e\x90\x83\x84\x8e\x3f\xac\xdd\x7c\xa1\xd6\xca\xf6\x6f\x88\x90\x63\x78\xc3\xf2\x74\x92\xad\xdd\x7e\xa1\xd6\x3a\xed\x1f\x24\x14\x5c\x43\xc7\x62\xe3\x4e\xbc\xaa\x6b\xcf\x84\xa6\x37\xae\xda\x27\xcd\xaa\xd0\xc2\x53\xfd\x9e\x33\x06\x35\x37\x9a\x9b\xad\xf4\x54\xeb\x16\x51\x36\x6a\xde\xd5\x5a\x07\x6a\x47\xeb\x6e\x0d\x0b\xa5\xa3\xd5\xbb\xe2\x86\x88\x41\x02\xf1\x4e\x37\xda\x17\xc5\x6a\xeb\x8c\x5c\x17\xdf\x74\xf8\xba\xda\xca\x1e\xb2\x4f\x9b\x43\xb6\xfe\x1c\xb2\x4f\x9b\x43\xb6\xfe\x1c\x80\x8c\xfa\x94\x59\x94\x2b\x3e\xdd\xcb\xa7\xcc\xa4\x5c\x71\x75\x2f\xc6\x7c\xfa\x42\x3c\x24\xe4\x90\xcc\x39\x19\x43\xb0\xc1\x13\x92\x65\xf1\x0d\x59\xbf\xd7\x27\x1a\x5a\x39\x0a\x70\x7c\x3b\xf4\x28\xa6\xb5\x3a\xb5\xf6\x0c\x2b\xdb\x3e\x30\xf4\xd5\xb1\x26\xaf\xd6\x6a\x9b\xae\xd5\xf6\x25\xf9\x28\x2e\x0c\x19\xb1\x56\xbb\x6c\xcd\x31\x73\xb2\x01\x66\xc5\xeb\x35\x2a\x49\x3a\x30\xd6\xdb\x6c\xc8\xd9\x7a\xad\xdb\xb3\x71\xb3\xd6\xf3\xb5\x5a\x97\x0d\x5f\x48\xda\x70\xb3\xc6\x93\xb5\x1b\xd7\xce\x09\x6b\xb5\x3a\x5e\xab\x55\x15\x56\x70\xb3\xf1\x4e\xd7\x6a\xf9\xe4\xfd\xe5\xfe\x9b\xe3\xc1\xd5\xc1\xe0\xf8\x78\xcd\x86\x27\x3d\xbf\xd2\x1a\xe3\x3e\xd1\xd4\xeb\x7a\xcd\xdf\x7a\xe3\x7e\x82\x55\xab\xd2\xd4\xab\xb9\x36\xc5\x78\x3d\xbb\x15\x91\x0f\x8e\x62\x82\x0e\x15\xe1\x17\x84\x8e\x28\x2c\xc2\x1a\x72\x73\xf9\x15\x9b\xd3\x47\x54\x26\x3b\x8d\x93\xe4\x3a\x1e\x7f\xd8\x96\x5f\xb6\x4d\xe0\xd2\xff\xa1\xd9\xd7\x66\x26\x81\x89\x3b\x5b\x0c\x14\xaa\x1c\xc1\xeb\x24\xcb\x58\xc5\xcd\xae\x65\x3d\xf6\xa7\x25\x5f\xd1\x2d\x29\x3f\x53\x95\xa4\x0a\x86\x5b\x4e\x45\xe4\x92\xa6\x07\xb6\x4c\x3f\xe8\x7a\x32\x23\x2f\xfb\x50\x0a\xe1\xd1\x92\xf8\x81\xe5\xab\x1a\x12\x64\x36\x4f\x62\x41\xfa\xb6\xc5\xec\x45\xa1\x49\x9d\xb5\x29\x55\x41\xa1\x37\x84\x7c\x03\x73\xbb\x0e\x7e\xad\x1d\xab\xf6\x53\x58\xe5\x89\x26\x05\xc8\x64\x7b\x4a\x62\x91\x73\x52\x41\x68\xc3\x13\x7f\x96\x55\x8f\xa3\xc7\x8c\xa4\x93\xda\x14\x37\xcf\x9d\xcc\x17\x04\x68\x6a\x05\x32\xed\x0b\xa8\x7f\x0d\x09\x38\x41\x31\x93\x7a\x76\x0b\x04\xe6\xbe\x02\x2c\x55\x21\x4a\x63\x2d\x50\x06\x71\x65\x56\xf1\x9c\xb0\x11\x61\xb3\x4e\x27\xf3\xa3\xa2\x66\x85\xa8\xc7\x2a\x82\xea\xc5\xe0\xf4\xf0\x6a\xff\xe0\xf2\xe8\xec\x54\x47\x57\x6d\x10\x38\x76\x3a\x62\x48\x0b\x47\xdb\x48\xb9\x72\xaa\x58\x43\x08\x8b\x65\x2b\x86\xde\xd4\xed\x50\x6f\xef\x54\x8a\x9a\xeb\x42\xdd\xd6\x44\xd6\x93\x38\xd2\x0b\xba\xa4\xea\x04\x42\x8c\x57\xc7\x96\xb2\x7c\x32\xce\xf8\x9e\xd9\x46\x5a\x5d\x36\xea\x2d\x5b\xfa\xc3\xee\x5e\xaa\x96\x8d\x45\xbb\xaf\xd9\xf7\x29\x68\x2a\xe8\x90\x15\x97\x8d\x8d\x5a\x75\x86\x1b\x7b\xa2\x98\x55\x85\xea\xa8\x45\x85\x70\xc1\xe1\xa3\x8e\x99\x2c\x4a\x01\x93\xe9\x12\x2d\x97\x4b\xe5\x5d\x57\x0a\xb9\x1c\x17\x2c\xd4\xd7\xdf\xd2\xb5\x22\xb5\x8d\xb2\x36\x3c\x2d\xd9\xfc\x9f\xca\xe8\x30\xb6\x64\xa3\xca\x5c\x90\x42\x82\xc7\x43\x92\x8d\x0f\xc9\x98\xf1\x18\x42\x4c\x3c\x8e\x59\x3a\xa5\x37\xb9\xa6\x42\x76\xb1\x4f\x93\xec\x36\xba\xaa\x96\x78\x76\xe3\xa9\xb3\x44\x38\x9e\xcf\x49\xaa\xa4\x45\xe5\xa4\xa6\x45\x39\x52\x43\xda\xa8\xe6\x10\xc1\xeb\x09\x52\x37\x5a\xbc\x75\x8c\x4a\x9f\xeb\x82\x2c\x9a\x3d\x0c\x47\x08\xd7\x2c\x59\xad\xfb\x6a\x7f\xa8\x0c\xa1\x81\xc1\x08\xb0\xfb\xf1\x86\x82\xe4\x47\xa2\x18\x4d\x69\x29\x19\x85\xd5\xf0\xd7\x9b\x02\x2c\xb1\x6b\xb3\xcf\x71\xa5\xcd\x3e\xff\xd4\x65\x29\xca\xcf\x3f\x75\x33\x19\xea\xa5\xe9\x9a\xac\xbb\xfb\x1a\x37\xe5\x9f\x7d\x2b\xee\xbe\xea\x07\x2a\xd1\xf6\x29\xb9\x4f\x68\x4a\x02\xfc\xf2\x9b\x7e\x30\x8e\xd3\x31\x49\x82\x25\xce\xca\x2b\xcf\x7b\x97\x70\xfb\x14\x38\x1b\xd3\x55\x10\x60\x79\xa8\xd3\xeb\x5c\xb8\xe5\x19\x06\x71\x2e\xd8\x38\x9e\x53\x11\x27\xf4\x3f\x12\x50\xf0\x82\x71\xae\xcc\xb6\xe5\xaf\x29\x1b\xe7\x12\x2c\x13\x2b\x50\x0e\xa6\x8c\xcf\x02\x1c\xcc\xe2\x8f\x26\xe6\x5b\x30\xa3\xa9\x7d\x86\xc0\x65\xb7\x2c\x99\x80\x72\x85\x93\x78\xc2\xd2\xe4\x01\x1e\xff\x9d\x53\x0e\x4d\x64\x24\x51\xe9\x05\x0e\x29\x27\xc6\x16\x3d\x9b\x93\x24\x01\xf3\x9f\x40\x5e\xa5\xd7\x5a\x6f\x14\x08\x2a\x12\x49\x83\x7a\x0d\xab\xc8\xf7\x66\x4c\xf2\x98\xb1\xa3\xd1\xf9\x67\x36\x45\x66\x6d\xb3\x93\x86\xc1\x3c\xce\x04\x09\x54\x70\x4d\x55\x8d\x68\xa1\x90\x04\xa5\x0b\x6b\xe6\x6a\x8c\x73\xb1\x51\x79\x9a\xce\xd7\xaa\xb1\xc4\xd7\xf9\xf5\x75\x42\x32\xc8\xc6\x22\xf1\x71\xce\x89\xf8\x07\x79\x50\x41\x8f\xaa\x41\xe9\xa2\x78\x48\x7a\x1f\xc8\xc3\x01\x9b\x28\x8a\x66\x45\xeb\x21\xc2\xc2\x37\x7f\x1d\x8a\x11\x58\x1f\xd6\x97\xee\x17\xdd\x26\x85\x97\x52\x29\x00\x14\x53\xd3\xe9\xe9\xca\x9a\x32\x59\xe2\x71\x35\xb7\xd7\xaa\x31\x11\x64\xd2\xcb\x6b\xac\x2f\xd4\xcc\xc3\x80\x48\x28\x68\xd0\x11\x84\xf3\x50\x6f\x92\xed\xd4\xec\x12\x61\xf3\xf3\xc3\x56\xa9\x34\x90\x8d\xe3\x39\xd9\x9e\x73\x92\x65\x5e\x61\x40\xf3\xa3\xb4\x5c\x1a\x5e\x6f\xd3\xb4\x5c\xf2\x2c\x17\x1b\xcc\x09\xdb\x96\x98\x5d\x77\xd9\xd4\x07\xf2\xf0\x4e\x8e\xa3\xdc\xeb\x07\xf2\x50\x19\xe0\x07\xf2\xf0\x7e\x5e\xed\xb3\x8a\x15\xba\x3f\xd9\x86\x64\xf0\xfc\x06\x0e\xd9\x7d\x65\x86\xb2\xdc\x84\xdd\x7b\x33\xf4\xf3\x7d\xe4\xbe\x69\x54\xec\xe5\xaa\xe1\x3e\x95\xd8\xd2\xb6\x13\x71\xa7\x53\xf1\x6b\x88\x3b\x1d\xa0\xa6\xe3\x21\xab\x90\xb0\x71\x14\x1b\x12\xb6\x9a\x9f\xc0\x76\x44\x90\x32\x2a\xcb\x8a\xdd\x2b\xac\x03\xb2\x9c\xfa\xb4\x74\xa7\x53\xb1\x54\x8e\xd1\x23\x6f\x20\x10\xe3\x12\x81\x38\xcc\x70\x3a\x5a\xa2\x25\x49\x7c\x9b\x2a\x7f\x36\x71\x08\xdc\x80\x9c\x57\x61\x3c\x7a\xab\x06\xa8\xd3\x49\x7b\x99\x60\x73\x79\xfa\xc7\x37\xb1\xda\x34\x5e\xa6\x93\x6c\xfd\x7b\xb0\x4e\xeb\xfa\xbf\x37\x59\xea\x95\xe0\x71\x9a\x51\xd9\xeb\x25\xab\x39\x9c\xd4\x26\x19\xe7\x9c\x93\x54\x80\xbc\x10\xf3\x9a\x97\xc6\x32\x51\x3e\x03\x67\xe6\xfd\x8e\x08\x86\x60\x1a\xe4\x23\xb5\x7f\xb5\xc3\x36\xef\xc1\xd9\xd0\xe9\xe8\x07\x4b\x4f\x7e\x1a\xa7\x5e\x54\x5c\x7f\x76\x3e\xfd\x9a\xb3\xfb\x8c\xf0\xed\xa7\x92\xd4\xfc\x11\xd3\x87\xb2\x45\xc5\x06\xbc\x7f\x4d\x66\x09\xef\x8c\x28\x9a\x06\x3f\x0f\x7a\x25\x51\x33\x29\x5b\x21\x65\x82\x11\x4e\x49\xcc\x49\x26\xce\xa6\x90\xdf\xa8\x5e\x9c\xa0\x82\x0a\xc5\x5c\x2b\x78\x70\x1a\x15\xbc\xf8\x34\x43\xe8\xec\x07\x85\xe7\x0b\xaa\xdd\x0a\x85\x6f\xb8\x5c\xf7\xdd\x8f\xae\x86\x96\xaf\xc5\x6b\xed\x18\xe0\x9c\x6c\x44\x4b\xb2\xee\x6e\x18\xcb\xa5\x19\xfc\x2f\x54\xdc\xd6\xa6\x32\x6c\x9c\x82\x69\x9f\x80\x5f\xda\x8a\x1e\x38\xe1\x24\x9d\xf8\x19\x2d\x4b\x99\xb1\xfc\x1d\xd8\x33\xa5\x4d\xb0\x03\x7d\xb1\xa9\x38\xb1\xcf\xc6\x04\xaa\x9e\x55\x4f\xc4\xd7\x84\x96\x59\xc1\xba\xd3\xc4\xca\xe5\x22\xda\xbb\x8d\xb3\xc3\xb3\x93\x9a\x83\x9f\xec\x4d\xd8\x18\x08\xbc\x1e\xe0\xfe\x05\x90\x9d\x90\xa1\xb1\xaf\x8d\xbe\x6c\xf7\xa6\xab\x52\x78\x41\xf5\xba\x69\xf0\xb6\x92\xed\xe7\x9a\x4d\x1e\x1c\xc4\x8e\x26\x8a\x1c\xbd\xa7\x49\x72\x04\x84\x8a\x9e\x62\x3f\xc7\x13\x3a\x29\xbf\x82\x24\x2b\x09\x89\xf9\xb9\x5a\xac\xbc\x2e\x3b\xfc\x9a\xa4\x6c\x71\x45\x4d\x70\x55\xbd\xa0\x5e\x04\xc3\xc2\x80\x2a\xef\x1c\x12\x39\x52\x30\xc7\x22\x06\x87\x83\x3f\x44\x6a\x5b\x08\x2d\x16\x41\x60\x82\x89\xeb\x86\x17\x8b\xb0\x58\x46\x5f\xfd\x85\x28\x21\x68\x89\x55\xc0\x5c\xa0\x7b\x56\x65\x7d\x2b\x40\xc2\xab\xe3\xa5\x47\x5d\xb6\xb2\xde\xdf\xff\xeb\xfd\xe0\xfc\xd7\xab\xa3\xd3\xcb\xc1\x8f\xe7\xfb\x8a\x96\x08\x93\xde\x17\xb5\x49\x30\xf4\xd0\xac\x57\xdd\x1e\x04\x4f\x53\x56\x34\x26\x6b\x80\x2d\xd4\x2f\x7c\x2c\x7c\xd2\xc9\xab\xc6\x65\x71\x54\x41\xb6\x3f\x5e\xe3\xde\xaa\xb7\x6f\xf2\x6e\xae\xc2\xd1\xde\x74\x98\x8b\x10\x3d\xfe\x91\x13\x5c\x40\x5a\x70\x93\x75\x4e\x11\x5b\x59\xf4\xb8\x5c\x7f\x02\x55\x03\xbd\xd5\x97\xef\xd3\x81\x9c\x9f\xca\x66\xb8\x96\xec\xa0\x22\x0f\x78\x76\x23\xc6\xf2\xca\xad\xdf\xfe\x95\x86\x99\x53\xeb\x7f\x12\xed\xb0\x21\x3d\x60\xec\xe3\x3e\x0b\x75\x39\x89\x1e\x67\x2c\xcf\x08\x90\x72\xfd\x00\x9e\xd9\x9d\x04\x0b\x3c\x26\x24\xbe\x23\xe6\x75\x2e\x82\x25\xbe\x8d\x58\x59\x7d\x44\x14\x97\xac\xc4\x86\x26\xc6\x98\x60\xf9\xf8\x36\x13\x31\x17\xfd\x00\x9e\x2f\xe4\x73\x80\xe1\x79\xc6\x64\xab\xf0\x78\xc2\xee\x88\x7e\x2b\xcf\x7f\xf5\x72\x90\x4e\xf4\x3b\xcd\x5c\xaa\xd7\x07\x4a\x28\x23\x59\x2c\xc9\x4a\xf5\x03\xcd\x6b\xc1\x9b\x7c\x0e\xbf\xdf\xcf\xe1\x17\xb0\x75\xf0\xe2\x9d\x62\xf0\x60\x0a\xaa\x16\x3c\xaa\x7a\xf0\x28\x6b\xc2\x83\xac\xab\xf3\xc1\xcd\x48\x9a\xf7\x03\xfd\xe3\x84\xa4\x79\x80\xc7\x09\x1d\x7f\xe8\x07\x63\x65\x2f\x37\xb9\x4e\xf4\x8b\x09\xcb\xaf\xad\x19\x1d\xb0\x9f\x34\xed\x07\x9a\xd1\xd5\x6f\x58\x2e\xf4\xab\x33\xc9\x99\x66\xf9\xf5\x8c\x8a\x7e\xa0\xfe\x06\x18\x04\x15\x7d\x23\xaf\xd0\xbc\x7c\x30\x36\x59\xbe\x78\x7c\xa3\x21\x29\x1f\x35\x20\xe5\xa3\x7a\xa1\x9e\xf5\x0a\xca\xc7\x81\x62\xde\xe5\xa3\x5e\x40\xf9\x78\x2c\x1f\xd5\x5b\xb9\xc2\xea\xe5\xd9\x9d\x2a\xc9\xe6\xf2\x37\x9b\x9b\xb6\x26\xa6\xa5\x49\xb0\xc4\xd3\xde\xc9\xd9\xfb\x8b\xc1\xd5\xe0\xf4\x72\x70\x7e\x75\x3c\xd8\xff\x79\x70\x75\x72\xf6\xf3\xe0\x6a\xf0\xf3\xe0\xf4\xf2\x62\xaf\x8a\x42\x7a\x04\x15\x1c\xd2\x63\x80\x67\x85\x04\xf0\x08\x48\xb0\xec\x3f\x2e\x11\xe6\x8c\xd9\x8b\x3a\x90\x97\x7c\xb0\xea\xe2\xb3\x29\x0e\x00\x07\x7f\x52\x71\xdd\xb3\x92\xbb\x3c\x68\x70\x21\x0e\x5b\x3e\x2f\x5d\x5f\x7e\x02\x23\x88\x49\xac\x78\xfb\xa8\x88\xcb\x10\xa9\x92\xfa\x9a\x1b\x85\xf2\x90\x47\x4a\x33\xe5\x2a\xad\x0c\xf5\xe5\x35\xde\x54\x02\x2c\x74\x80\x31\x1c\x47\xe5\xc6\xfc\x72\x4a\xfd\x35\xad\xb9\x23\x17\x8b\xac\x64\x3c\x8a\x42\x66\xdd\xde\x6d\x30\xd6\x78\x2f\xee\x37\x10\x63\x31\x42\x2a\xa6\xdf\x31\xcd\x04\xb8\xf1\xe8\x68\x33\x92\x7a\xa0\xfa\x40\x73\x9e\xf7\x21\x53\xd1\x52\xcd\x75\x2a\xab\xc7\x93\x09\x18\xd0\xd4\xd6\xc4\x5b\xac\x47\xb3\x30\xe8\xd5\x7c\x43\x2e\xe5\xb2\x64\x1c\x20\x12\x48\x18\xbc\x4f\xe5\x44\xda\x82\xb5\xe3\xc9\xa4\xfd\xd7\x4a\xbd\xbf\xb6\x61\xbc\xb2\x80\x04\x52\x5b\x5f\xe6\xed\x30\xe8\x42\x6a\x44\x35\xb1\xc5\x82\x0d\x77\x46\x86\xa6\x41\xdd\x00\xf5\xda\x27\xf1\x07\xd2\xce\x72\x4e\xda\x0f\x2c\x6f\x67\x44\xb4\x3d\x28\xcb\xf6\xc4\x2d\x69\x4b\xf4\x6a\x33\xde\x8e\x53\xdb\xb2\x24\xef\xf5\x97\x5e\x80\xac\xff\x4f\x2e\x3f\xa4\xa8\xe2\x41\x72\x1b\x67\x9e\x8b\x8c\x72\xba\x4c\x71\x6e\x42\xa0\x02\xca\x69\xac\x0c\x19\xce\x71\x3a\xcc\x47\x06\x15\xf5\xfb\x3a\x5f\x24\xeb\x23\xb3\x01\x32\x68\x5c\xae\xc3\x6f\xa0\x8a\x8a\x06\x90\x08\x5c\xb8\xa2\xad\x1d\xeb\x85\x03\x71\x55\xd2\x02\xd9\xc6\xc1\xa1\x82\x2e\x31\xad\x6d\x16\x1c\x3e\xf6\x0d\x8f\x18\x06\x93\x58\xc4\xdb\x7a\x0d\x8d\xd2\x93\x46\xd6\xb4\xa9\x4a\xaf\x0c\x53\x10\x9e\x02\x59\x9a\x9a\x40\xb6\xa4\x67\xd9\xce\x0c\xc7\x11\xd3\xba\xcd\x16\x05\x1f\x60\xbd\x1e\x3a\xac\x27\xc4\xf1\x7c\x54\x6c\x2c\xeb\x51\x41\x66\x61\x86\x5a\x3b\x51\x14\x25\xe0\x72\xe7\x7c\x67\x2b\x63\xdb\x0e\x54\xe0\x1a\x6a\x82\x6b\xae\x1a\x67\xa2\xc4\x67\x23\x84\x96\x4b\x3a\x0d\xa9\xe3\x14\xc7\xd1\xd6\x0e\x9e\x46\x3b\xaf\xa7\xce\x21\x6c\xea\xa2\x7f\xd2\xe1\x74\xd4\x9a\x74\x3a\x13\x15\xef\x1e\xbc\x87\xa3\x88\x77\x3a\xe1\x38\x9a\x68\x58\x73\x08\x0f\x31\xb6\x6e\x5d\x63\xa5\xb8\x7e\xe2\xd0\xed\x74\xac\x7e\x78\x32\x14\x23\x03\x3d\xf9\x8c\x6f\x23\x81\xcb\xe1\x29\x94\x28\xc9\x9e\x0c\xea\x68\x54\xcb\x1c\x9c\xc0\x91\x7d\xa7\xce\x1f\x67\xea\x9d\x52\xe1\xbe\x84\x04\x6f\xed\xca\x7f\xa2\x27\xe9\x1b\x0c\x01\x80\x62\x9a\x60\xd1\xcb\xc6\x9c\x90\xf4\x9f\xf6\xe9\x57\x2c\x7a\x63\x30\x71\xfe\xa7\x7d\x82\x77\x82\x27\xff\x20\x0f\x58\xf4\xe2\x44\xa8\x87\xec\x96\x4e\xf5\xa3\xa4\x11\xd5\xd3\x75\x2e\x04\x4b\x81\xc0\x4d\x24\x95\xa4\xf4\x2d\x4d\xc6\x5a\xdc\x9a\x03\x18\x6a\x47\x98\x7c\xb4\x05\xa3\x2d\x48\x43\x8e\x67\x51\xcd\x7d\x31\x64\xc5\x7c\x89\x4e\x0c\x40\x4c\x53\x3c\x22\xc5\xe1\xbc\x16\x9d\x0e\xe4\xd1\xea\xa5\x6c\x42\xe4\x99\xe6\xf2\x47\xf1\xc5\x82\xab\x70\xb4\x5b\x10\x2b\x58\x87\xec\xcb\x50\x28\x37\x38\x7a\x8d\x6a\x37\xa4\x40\x7b\x69\x28\xf0\x3c\xbc\xc5\x04\xa1\xbe\x90\x87\xcb\xea\xdd\xd5\xe9\x50\x57\x01\x3b\x59\xc4\x29\x9b\x90\x65\x8b\xc8\xd3\x1a\xd6\xce\x04\xfa\x08\x19\x9e\x29\x91\x2b\xa0\xc3\x5d\x2d\x2c\xc4\xa8\x26\xfe\x8c\x81\x43\x6b\xc2\xe4\xf9\xd4\x30\x7e\x15\x04\x45\x42\x25\x85\x60\xda\x2a\xe1\x27\x34\x7f\xa8\xb3\xec\x4b\x32\xb4\x22\xb4\x75\x0e\xba\x5b\xca\x19\x57\x51\x7d\x6f\x40\xd2\xab\x1c\x72\x97\xe6\x56\xaa\x0d\x32\xe1\x43\xaa\xd3\x59\x0b\x72\x30\x4c\xaa\x86\xa9\x5c\x7e\x4b\xf0\x53\xde\x8a\x95\x55\x46\xb5\x80\x15\xf8\x0e\x2d\xd5\x18\x49\x8f\xa5\xa1\xe8\xea\x5b\x30\xc0\xe6\x3a\x54\x5e\x47\x61\x15\xb6\xf5\xc0\x04\x59\x6b\xea\x1d\xd0\x02\x52\x3b\x8b\xd2\x01\x1d\xee\x60\x6b\xde\xa9\x82\xe2\x63\xa5\xff\x2d\x8f\x62\x58\x81\xc2\xa8\x76\x34\xa4\xa7\xb9\x78\x85\xe6\xfe\x61\x9c\xca\x13\x18\xa2\xe9\x15\xba\xb4\x87\xb2\x72\xed\x15\x05\xd7\x5e\x6d\x11\xa4\xce\x66\x0a\xd4\x0d\x44\x3f\x52\xe1\x45\x7b\x49\x9c\x89\xa3\x15\x67\x34\xde\x41\x46\x27\xb2\xea\x7c\x66\xfa\x7c\x6e\xc5\x9d\x4e\x5c\x3e\x6a\x21\xdd\x9d\x4b\xec\x12\xcb\x73\x3f\xb6\x67\x2f\x41\x38\xed\xcd\xf3\xec\x56\xd2\x37\x4b\x15\x2d\xbd\x46\x18\x04\x81\x04\x95\x09\xcf\x6a\xda\x8d\x78\xb8\xb2\x27\x9a\x48\x31\xb3\x57\xd6\xbc\xdb\x8b\x61\xb1\xaa\x9b\x16\x11\x1d\x5e\xb5\x88\x95\xbc\x8e\x38\x1e\xf2\x91\xa2\xf1\x0a\xc4\x9d\x40\x3d\x36\x9d\x86\x0e\x5f\xfe\xf6\x37\x2f\xf4\xac\x47\x36\xaa\x7e\xea\xe9\xbf\xa7\x2d\x19\x96\xd8\xf8\xdc\x56\x25\x7d\x41\x58\x32\x80\x47\x41\x51\xab\x70\xbb\xbe\x70\xc3\xc8\x03\xfe\x58\xa6\xfa\x95\xca\x82\x35\xb9\xf8\x12\xd7\xae\xf2\x62\x7c\x02\xef\x5e\xc4\x88\xc8\xbc\x30\x91\x30\xec\x6f\xaa\x8d\xf0\xb6\xd2\x5a\xd4\xda\x52\xa7\xd9\xe0\xf4\xe7\xde\x55\xf5\x7b\xab\xd2\x0f\xc3\x75\xed\x74\x3a\xdc\x0a\x83\x43\xd7\x75\xe4\xd2\xa9\xd3\x19\x80\x5d\x7f\xc2\x5b\xac\xd3\xa1\x7b\x54\x6d\x4d\x79\x7c\xca\x49\x97\x7f\xab\x13\xe0\x92\xc7\x69\x36\x25\x3c\x40\xfd\x61\x60\x59\xdf\x00\x6b\x56\x37\xb0\xbc\xae\x7e\x4e\x14\x4b\x19\x18\xbe\x16\x1e\x25\x23\xab\x4b\x4e\x82\x91\xc9\xaa\x10\x16\xce\x3b\xd3\xfb\x94\x7e\xfc\x89\xb1\x0f\xd9\x90\x8c\xa2\xc7\x39\x67\xf3\x4c\x76\xec\x8f\x64\x24\x8f\x85\xbe\x3f\xd1\x12\xd4\x1d\xb8\xa2\xad\x1d\xb4\x8e\xf1\xf7\x93\x72\xa5\x1a\xcc\x6d\x96\xaf\x3d\x85\xc8\x9b\x0a\xa0\x9e\x4f\xd4\x54\x17\x54\x69\x03\x21\xa5\x1e\xf8\x46\x92\xc9\x55\xf3\xae\x0d\x47\xdc\x24\xa3\xf5\x73\x67\x07\x5b\x10\x24\x44\xb1\x98\x9d\x0e\x71\x22\xf3\x3d\xef\x59\xc9\xc0\xac\xf8\xfc\xd3\xa2\x0a\x16\x5c\x2c\x6b\x69\x31\x43\x35\x2f\x16\xc4\x90\xcd\xf2\x51\x51\xd5\xf2\xc9\x50\xda\x92\x6a\xbd\xbf\xa5\xe3\xdb\x1f\x76\x4d\x78\x2c\x49\x94\x42\xd0\xbe\xa7\x5c\x95\x6a\x96\xee\xaf\x5a\x0f\xd8\xce\x64\x95\xb6\x23\x0d\xda\xb3\xf8\xa1\x4d\x53\xc1\xd9\x24\x1f\x93\xf6\x98\xb3\x2c\xdb\xce\xa8\x20\x6d\x15\x33\x42\xd6\xb9\xcb\x93\x54\x12\xe3\x34\xa1\x82\x92\xec\x75\x7b\x9e\x90\x58\xd2\x4b\x29\xb0\xe9\xe2\x36\x16\x6d\x80\x43\xd6\xbe\x26\xb2\xc2\x35\xcb\xd3\x49\x3b\xe6\xa4\x3d\x07\xb8\x25\x0f\x6d\x65\x54\x32\xe9\xb5\xdf\x32\xae\xa3\x7f\xa4\x53\xc6\x67\x30\x6e\xdc\xa6\xe9\x38\xc9\x61\x80\xb7\xec\x5e\x32\xf9\xda\x70\x09\xae\xcc\xf6\x7d\xcc\x53\x9a\xde\xe0\x76\x46\x48\xfb\x56\x88\x79\xd6\x7f\xf1\x02\x10\xe3\x77\xc8\xde\xf9\xc2\xdb\x7f\xd9\x8b\xbb\xdd\xde\xc7\x17\xff\x47\xb0\xf1\xd5\xb5\x9a\xf4\x36\x4c\x7a\xdb\x4d\xba\xd7\xbe\x50\x60\x98\x4e\xc9\x58\x90\x49\xbf\x1d\xfc\xb5\x4b\xba\x7f\x0d\xfe\xaa\x23\xc6\x59\x3f\xcc\xda\x45\xd4\x66\xee\x41\xd1\x15\xa2\x3f\x8b\xa9\xbc\x4a\x79\xe4\x42\xd1\x15\x13\xe1\xd5\x1f\x66\x5a\x90\x35\x24\x23\x93\x34\x36\xf5\x14\x93\xf2\xbc\x06\x1a\x27\x85\xb3\x89\xeb\x01\x2a\x6f\x4b\x08\xb4\x56\xa4\x3f\xeb\xb6\x2d\xd5\xe1\x1d\x16\x0b\x95\xac\x9e\x94\x1c\x1e\xeb\xea\xb0\x4a\x9d\xac\xa9\x1f\x08\xa1\x58\x08\x91\x97\x35\x35\x2f\x8b\xb2\x42\xd1\xb2\x4b\x61\x51\x93\xe4\x52\x2b\xd9\xb2\x4d\xe3\x66\xc5\xb2\x05\xcb\xd9\xca\x2a\x72\x6b\x28\x63\x33\x58\xad\x5e\x55\xb3\xa0\xb9\x8a\x4b\x88\x55\x0e\x3e\xaf\x87\x0c\x93\x82\xe1\x6d\x2d\x0f\x6f\xe2\x67\xb6\xac\x2d\x0f\xef\x74\x42\x1e\x41\xe0\x9e\x16\x58\xee\x2a\x3d\xb8\xda\xe5\x89\x24\x39\xbd\x3e\x72\xb7\x72\xca\xcb\x3a\x4a\xdc\x9b\x73\x48\x4b\x3d\x76\x2f\x3c\x1f\xe9\xba\x05\x1e\xcb\x39\x4b\x28\xb9\x62\x21\x5a\x96\x7a\x28\x78\x3c\xaf\x6a\xa5\x5a\x5a\x35\x36\x03\x7a\xb0\xc1\x6c\x7f\xaa\x43\x9d\x19\x54\xd0\xbc\x76\x35\x3a\xa7\x0b\xf2\xed\x18\x72\x47\xe0\xea\x37\xa1\xb0\x71\x4f\x3d\x66\x50\xe5\xb5\x52\x60\xe6\xde\x7b\xf4\xba\x1c\x9b\xd6\xf2\x6b\x2a\x0e\x21\x49\x4e\xf4\xd8\x0b\x01\xf8\xfc\x28\x6b\xac\x12\xa9\x26\xae\x0f\x5f\x96\x79\xb9\xe7\x75\x92\x4f\xeb\xf9\x68\x36\x03\x16\xcb\x82\x4d\x99\x45\x9a\xe1\x08\xa7\x0e\x73\x6a\x82\x85\xa5\x4f\x9e\x2b\x5b\xe9\x62\x91\x16\xf2\x1e\x15\x7e\x93\xc9\x62\x51\x3a\x65\xec\x50\x12\xff\xfa\x2f\x58\x22\x28\x14\x2c\x44\x25\x1a\xbb\x79\x26\x2a\x77\x61\x49\x6a\x75\xae\xcc\x2a\x5b\xbe\xd7\x32\x28\x45\xde\x90\x29\xe3\x24\x94\x24\x1d\xcf\xd4\x02\xa9\x74\x72\x83\x74\xb2\x3f\x05\x5b\x25\xe0\x38\xf5\x17\xf0\x4f\x98\x46\x5e\x74\x31\x2b\x45\xd7\x67\xc3\x9e\xfe\xeb\x49\x7c\x35\x2e\x2e\x16\x8d\x9f\x2e\xac\x58\xba\xa6\x08\xfb\xcf\xc9\x1a\xa5\xb2\x35\x0a\xb1\x35\xca\xdc\x93\xeb\x0f\x54\x94\x0a\xea\x2c\x4d\x2d\x1f\x3b\xa7\x6b\x90\x64\x95\x08\x2a\xeb\xf9\xb4\xad\x13\x96\x45\xd9\xa0\xfd\x89\xee\x17\xa5\x24\x06\x46\x95\x29\x7a\xc0\x82\x92\x09\x16\x3d\x25\x5b\xd0\x5c\x33\x7e\xa4\x99\x3c\xcf\xfa\x5b\x3b\x58\x5b\xcc\xf5\x6d\xdc\xf9\x8a\x82\xca\x1a\x04\x3f\x6d\x3c\xa2\xac\xed\x82\x39\x27\xca\x14\x25\xa8\x31\x2a\x29\x18\xea\xf5\x6c\x51\xbc\x55\x30\xac\xf1\x34\x2c\x5a\xbb\x72\x10\xa7\x29\x13\xda\xf2\x4a\xd0\x58\x90\x76\xdc\xb6\x5e\x77\xed\x7b\x2a\x6e\x59\x2e\xda\x71\xdb\x6e\xc8\xf6\xbb\x2a\x4d\xf6\xc0\x72\x20\xc2\x60\xef\x49\xda\x4a\x25\xcd\xec\x06\xd0\x40\x3b\xd6\xd4\x59\xdb\xe6\x25\x79\x61\x6e\xbd\x5e\x80\x96\x9e\x61\x8b\xb1\x62\x91\x54\xe7\x0c\x44\x82\x22\xa6\x49\xd1\x28\xd7\x9e\x11\xca\xbc\x55\x1b\xab\xd8\x38\x76\xee\x7c\x87\x74\x0f\x1a\x30\x95\x34\x10\x98\x80\x8c\x5a\x65\x42\x23\x4b\xac\x4d\x52\xd7\x75\x7e\xe3\xf5\xce\x6f\x69\xb4\xfb\x3a\xfd\x5e\x40\x68\x5c\x3e\x4c\x8b\x5e\x54\xe9\xa8\xf5\xe4\x92\xeb\xc3\x1f\x8c\xc0\x95\xd9\x78\x8d\x30\x93\x22\x4b\x6f\x79\x8d\x70\x30\xc2\xa9\x83\x55\x43\xba\xd3\x21\x19\xe9\x2c\xa4\x5a\x51\xaa\x0c\x8e\x53\x3f\x37\x64\xa8\x91\x5a\xa7\xc5\x80\x2d\x63\x2e\x28\x3f\x95\xc2\xda\x67\x83\xde\xc6\x6b\x47\xa0\xf2\x6b\xbd\x98\x73\x72\xc5\xf5\x1e\x58\xbf\xd6\x6d\x9c\x19\x73\xf0\x4d\xaa\xd1\xf4\x6a\xc2\x66\x9b\xd4\x98\xb8\xac\x80\x7f\x66\xae\xab\xa2\x2b\xd2\xa3\xdd\xfc\x7d\xe1\x9d\x3e\x87\x67\x27\x7d\x1b\x06\x42\xe2\x89\x51\xa0\xbb\x23\xca\x0d\xbf\xef\x82\x3a\x14\xf2\x29\x6d\xb8\xca\x2f\x74\xc5\xda\xd5\x56\xf9\x1d\xfe\x1c\xeb\xe8\xc7\x5a\x37\x36\xf4\xe8\x8e\x43\x0b\xaa\x30\xf8\x95\xe5\xed\x71\x9c\xfe\x55\xb4\xe5\x50\xbc\x9a\x6d\x96\x8b\x8c\x4e\x48\x1b\xf6\x0f\xd1\x47\xa2\x3c\xee\x74\xf2\xa7\xa0\xc9\x0c\xce\x8b\xaa\x5b\x6b\xfd\x59\x2b\x4e\x5e\x7a\xc9\x18\xf4\xda\xf2\x4d\x7d\xb8\x9a\xd0\x73\xcd\x2c\x0d\x6a\x8d\x36\xda\x01\x6a\xc1\xff\xbc\xcc\x31\xc0\x5e\x79\x56\x18\x0e\xc7\x9f\x5e\x74\x5e\xb7\xe8\x92\x53\x28\xae\x7a\xda\x8e\xdb\x72\x96\x5a\xe6\x30\xb1\xe9\x44\x51\xfd\x6a\xae\xd3\x81\xa9\xb7\xb2\xf5\x25\xc2\xe5\xdd\x4d\xff\xd0\x7e\x2c\x9c\x84\xeb\xa1\xc0\x06\x9b\xdc\x54\xe1\x79\x9a\x30\xe6\x85\xe7\x73\xf7\xb9\x12\x5c\xfe\x99\x87\x63\x19\x3f\xdc\x71\xf7\x58\x5d\x3b\x82\x1e\x3d\xd6\xc3\x5a\x5e\x93\x3a\x7d\x4f\xb9\x2c\xa8\x3c\xc8\x0a\x43\x58\x49\xaa\xea\x63\x80\xe8\x8c\x0f\xe0\xd2\x4d\x7b\xd3\x24\xbe\xb9\x21\x93\x23\x0b\x26\x14\x06\x00\x76\xa5\xe2\xea\x05\x5d\x81\x95\x05\x5d\x9f\x63\x09\xfb\x3e\x59\xd6\xe4\x92\x87\x44\x5e\xbf\x33\x9a\xa2\x90\x40\x3a\x04\xa0\x68\x54\x38\x58\xa4\x4c\xb8\x4b\xd8\xc4\x7c\x6c\x8a\x37\xc5\x26\x73\x41\x6e\xe4\x90\xf1\x1c\xa7\x8c\x8f\xc6\x7f\x32\x2e\x15\x2c\xbe\xa8\xc3\x25\x65\xd8\xd6\x88\x1c\x4a\x19\xa9\x08\xac\x67\x5e\x05\x9f\x26\xfa\x24\xa2\xaa\xb2\x7f\xdd\x12\xfd\x59\xcc\x56\x19\xb0\xc2\x65\x53\xa3\x25\x60\xa5\xa8\x99\xec\xf4\x34\x8d\x2f\x6e\x12\x76\x1d\x27\xd9\x36\x27\x19\x4b\xee\xca\xc0\x51\x9a\xc9\xe6\x0c\x6a\x9f\xea\x45\x64\xd3\x41\x6d\xc6\xeb\xde\x24\x74\x36\xf3\x89\xda\x8d\xcd\x7f\x6b\x54\x88\xc9\x1f\x5f\x1e\x9c\xf7\x7e\x3c\x3e\x7b\xb3\x7f\x7c\x71\x75\x3e\xb8\x38\x3b\xfe\x79\x70\xde\xe9\x84\xc9\x67\xca\xae\x8a\xa9\x16\xde\x44\xb5\x5e\x3d\xea\x9b\x4b\xfc\x89\x05\x5a\x6a\x59\x58\x4d\x42\xd6\xb8\x92\x90\x55\x71\x3a\xf3\x98\x67\x90\x61\x54\x05\xeb\x05\xcc\xab\x84\xf2\x59\xe2\xb8\x97\x32\x3e\x03\x57\xec\x7a\xf5\xca\x3c\xa1\x22\x0c\xfa\x20\x86\x17\xc3\x9d\x11\x4e\x23\x31\xdc\x35\xf2\x78\x1b\xc1\x26\xd8\x8a\x22\xbe\xc7\xbb\x41\x3f\xe8\x4a\xc6\x0a\xfc\xa6\xc3\x17\xe1\x6f\xbd\xc5\xd5\x62\x1b\xf5\x5e\xdc\x14\x75\x6a\x6e\xb6\xb7\x31\xdf\x17\xe1\x2e\xea\x09\xf6\x7e\x3e\x27\xfc\x20\xce\x48\x28\x0f\x72\x79\xf8\xc7\x3d\x8d\xd7\xd5\xc1\x19\x3f\x3e\x3b\x51\x30\x5f\x88\xb8\xa9\xa1\xd2\x2d\xcb\x0f\x7e\xfa\x80\x61\x3a\xb2\x29\xe9\x87\xe9\x28\xe4\xca\x58\x48\xf3\x87\xba\xea\x99\xb8\x25\x3c\xe4\x00\x1e\xdb\x7c\x63\x38\xe8\x12\xa8\x81\xdb\x0c\x1b\xbe\x44\xa5\xf7\x90\x95\x02\xc7\xde\x9b\x35\x57\x81\xc2\x2a\xe0\x38\xa2\x38\xb3\x79\x6e\xfd\x64\xba\x2a\x0b\x32\xc2\x79\x14\x17\x2d\x4b\x5e\x04\x08\x27\x11\x18\x9e\xe4\x7b\x71\x2f\x4b\xe8\x98\x84\x3b\x38\x47\x20\x93\x00\x4e\xbc\xb0\xa8\x9d\x8e\x2a\xab\x46\x33\x8e\x62\x33\x9a\x17\x01\x6a\xc5\xd1\x78\x38\xb6\x61\xdc\x55\xd0\x9b\x69\x04\xe9\xb1\x9d\x8f\x3f\x0a\xc7\xb6\x9b\xed\x5d\x04\x57\x77\x18\xf4\x02\x84\x5a\x7a\xec\x85\xa4\xb1\x28\x9c\xaa\x3c\xd0\x93\x28\x00\x5d\x81\x8a\x85\x7f\x22\x1f\x55\xce\x6f\xb0\xc0\xa0\xd3\x07\x24\x19\x05\x08\x91\xb3\x58\x6c\xf1\x7a\xb3\xda\xa3\xf4\x2e\x4e\xe8\xa4\x6d\x12\x59\xf6\xdb\xff\x82\xd4\x56\xff\xc2\xed\x59\x9e\x89\xf6\xb5\x65\x73\xa6\x8c\xcf\xda\xff\x92\x7b\xab\x2f\x01\xf8\xaf\xb6\x55\x52\x3c\xda\xca\x04\xc3\x77\x8e\xcd\x9b\x5f\x94\xe0\x08\x1c\x00\x29\x9e\x50\x2e\xab\xf6\x13\x0c\x7f\x62\xb0\xe0\xee\x67\xb8\x82\x92\xfd\x40\xbf\x0a\xba\x93\xa5\x44\x80\x62\xda\xa7\xda\x80\x3a\x75\x08\x5f\xd9\x86\x51\x14\x71\x48\x88\xb8\x67\xdf\xb5\x63\xd1\x0e\xba\xbc\x57\x33\x64\xb7\x51\x7f\x93\x3b\x54\x2e\x69\x3f\x14\x72\x0f\x31\x26\xba\x41\x2f\xe8\x96\xe1\x0d\xa6\x4a\xa8\x5c\x2f\x40\x90\xa9\x99\x24\x80\x31\xd0\xbf\xdc\x65\xdd\xa8\x52\x1d\xb2\x83\x22\xd0\x4f\xc4\x90\x88\xea\xb2\x92\x22\xda\x3f\x1d\xbc\xb4\x0d\x38\xee\xe5\x19\x39\x67\xb9\x20\xfc\x34\x9e\x95\xab\x04\xd7\x71\x46\xc7\x01\x98\xcc\x41\xd6\x09\xf5\x27\x0a\x82\xbe\x7e\x52\x7f\xca\x43\xbf\x0a\x90\x77\xcc\x5c\x6a\x98\xd5\xee\xc2\xf5\x00\xd8\xb2\x44\x2a\xa4\x68\x33\x2d\x22\x43\x06\x97\xde\x02\x84\x26\x64\x1c\xcf\x88\xda\x2b\x02\xf9\x03\x6a\xd2\x40\x02\x26\x94\xe0\x11\x9a\x78\x0f\x85\x63\x8c\xf8\xcd\x1d\xb0\x54\x70\x96\x24\xa4\x36\x85\xda\x27\x36\x0a\xc5\x9f\xb1\xbd\x13\x89\x49\x35\x2b\x50\x42\x26\xb5\x9e\x1e\xbc\xf5\x19\x48\x00\x7b\x35\x8a\xe9\x26\x7f\x22\xc9\x7c\xc5\x9c\x9b\xc7\x02\xaf\xd6\x1e\x4b\x79\xbb\xa8\xdc\xa4\xeb\x0d\x51\x9e\x6f\xeb\x74\xb4\x46\x8b\x1f\x52\x76\x9f\xbe\x65\x5c\x62\x68\x83\x31\xef\xaa\x2b\x83\x56\x3a\x95\xb4\xbc\x3c\x57\x55\x06\xce\x90\x76\x83\x2f\x02\x84\xb3\x06\xaa\x02\xe7\x51\x51\x4d\x8f\x93\x68\xe7\x75\xf2\x7d\x6e\xac\x21\x13\x63\x0d\x39\x8e\xf2\x61\x02\xd2\xdf\x58\x25\xe6\x18\x23\x94\x0d\x75\x6c\xad\x38\xcd\xe4\x16\xb9\x64\x56\x9c\xfd\x36\x4f\x92\x14\x0e\x3e\x3c\x46\xa3\x68\x6b\xc7\x98\x89\x67\x72\xd6\xab\x6a\xd4\x2a\x8f\xab\xb3\x4c\x23\xe1\xdd\x54\x7f\xe3\x26\x63\x9f\x35\xfe\x03\xfa\x46\x6d\xd9\x38\x93\x84\x9d\xdc\xb1\xa9\x4a\xcd\x1e\x6b\x5f\x30\x64\xbc\x2b\x93\x66\x6f\x4a\x9f\x82\x5f\x2b\x55\x41\xc9\xae\xc7\xaf\x2f\x19\x9d\x24\xfe\xcf\xc3\x55\xc2\xe2\x49\x73\x11\xdf\x3c\xf1\x33\x88\xad\x56\x45\x90\x3e\x53\x83\x5f\x33\x2a\xbc\xa9\xf0\x54\x4c\xe7\xcd\x5a\xcd\xd6\x69\x95\xa5\xc7\x00\xc3\x35\x23\x1c\xab\xe2\x2b\x5b\xe4\x39\x94\x01\xa3\xba\xb5\xdb\xf5\x2b\xad\x6c\x1d\x96\x7c\xed\x80\xfb\xbc\xa7\xcb\xaf\x6c\xd3\xb2\xc9\x1b\x47\x5c\x5e\x85\xe2\x3a\x85\xf1\xe6\xc2\xb8\x66\x77\xd9\x8d\xc2\x57\x78\x52\x98\xf4\x86\xa6\xc4\x1b\xd2\x0a\x3e\xf5\x33\x66\xeb\xaf\xcb\xcd\x1f\xd9\x58\xd0\xd6\x9f\xd4\x83\xa2\xd2\x19\x8e\xf3\x4c\xb0\x99\x0e\xc6\x04\x6f\x7c\x2f\xc1\x3f\xe2\x1c\xef\x75\xd5\xbb\xba\x8f\xc5\xf8\xf6\x48\xc3\x48\x5b\xe0\xeb\xab\x52\xcb\x78\x02\xdf\xe0\x79\xdb\x80\x53\x59\xf7\xa8\xb8\x3e\x8f\x9e\xb6\xb5\xbf\xb5\xbb\x44\x4b\x7c\x75\xcd\x98\xb8\x78\x48\xc7\x75\x9a\x4e\x35\x4e\x59\x82\x4c\x16\x8b\x90\xc0\x95\x93\x5b\x82\x01\x1c\xc5\xce\xb5\x3e\x35\x84\x9c\xfc\xde\xd4\xf7\xd4\xe8\xdc\x8b\xa8\xf0\xb9\x5f\xf9\x5c\x99\xb3\xf7\x11\xf2\xb0\xaa\xd7\xe0\xca\xc8\x9d\x2b\x63\x8f\x03\x31\x83\x03\x53\x20\xf0\x0a\xd7\x40\x92\xe7\xa9\x01\xe3\x51\x4a\x05\x05\x8e\x88\x67\x1a\xa4\x36\x45\x72\x3c\x16\xf4\x8e\xf8\xae\x72\x25\x03\x70\xeb\xdd\xa9\xe0\x13\x6d\xed\x98\x68\x11\x05\xb8\x54\xa3\x35\x79\xb1\x41\x4a\x20\x54\xed\x5d\x19\x15\xf5\xd5\x15\xc4\x6c\x52\xf3\x53\xd6\x9b\x63\x36\x9b\xe7\x82\x4c\x50\x53\x4e\x46\x6b\xe3\xa5\x6b\x29\xdb\xae\x25\x92\x1c\x42\x3c\x39\x4b\x93\x87\x10\xe1\x09\x9d\x1c\x28\x63\x15\x6d\x04\x58\x92\x1f\x16\xa2\x60\xf8\xcb\x80\x96\x18\x0c\x9e\x25\xfd\x58\x32\x93\xf7\x96\xa2\xe7\x97\xb1\x60\x9a\xd0\xc9\x05\xcc\x16\xca\x48\x5a\x41\x03\x4a\x0d\xb4\xb2\x3d\x8a\xe5\x2d\x07\x5f\x69\x06\x17\x7a\x76\x9f\x42\x17\x1b\xe2\xfd\xf9\x71\x23\x7a\x17\x6a\x14\xda\xb2\x75\x81\x00\xad\x43\x81\x8a\x0f\x46\x54\x58\x82\x72\x10\x03\x63\x3e\x99\x96\x62\xad\xfa\xe8\x89\x03\xff\x3c\x31\xb4\x5f\x21\x30\x6b\xa9\x40\x55\xd3\x90\x62\xea\x79\x47\xc0\xc0\x43\x86\x2b\x6b\x89\xc9\x52\xde\x21\x05\xe0\x94\xa8\x70\x05\x88\x9c\x27\x4b\x7c\x47\x33\x2a\x1a\xe2\x39\xb5\xaa\x90\x6c\xf9\xce\xcb\x57\xd6\x2e\xe2\xea\xca\x19\x21\x7a\xd7\x84\x81\x8c\xb2\x3f\x30\x3b\x9a\x45\x75\xd7\x1b\x03\x6e\x3c\xeb\x65\xb7\x2c\x4f\x26\x4a\xe1\xac\xe2\x6e\x28\x61\xf4\x05\x11\x02\xfc\x8f\x51\x4f\xdc\x92\xb4\x76\xa3\x2c\x11\xea\x8b\x25\xf6\x63\xf7\x52\xef\x00\xb1\xd0\x83\x49\x29\x0c\xc0\xd4\x43\x08\x60\x19\xe5\x03\xd2\x9d\x30\x77\x2f\xd9\x5c\xc9\xa2\x07\xfa\x05\x2d\x05\xd1\xbf\x40\x9c\x73\x69\x43\x64\xed\x5f\x33\x2e\xc8\x24\x50\x5e\x5c\x60\xbd\x4d\x7b\x57\x6a\xfe\x27\x74\xcc\x59\x42\xaf\x7b\xea\x28\x72\x95\x9c\x11\xc6\x53\x25\xcd\xe0\x08\x6a\xc1\x28\x56\xf5\xbc\xe7\x8c\x73\x44\x6f\xa6\xcc\xac\x25\x94\x50\x31\x52\xcc\x1f\xbd\xc7\xf2\xb4\xe6\x26\x5b\x2e\x51\x2b\x2b\x5a\x7f\x34\x1d\xa2\x35\x39\xe1\x1f\x97\x08\x8b\x9e\x60\x03\x87\x50\xf2\xb8\xd0\xb7\x95\x00\x87\x33\xef\x96\xac\xe0\x5d\xb9\x72\x88\xaa\x37\x65\xa1\x89\x8c\xf0\x3b\x3a\x26\xfd\x6d\x63\xfb\x27\x9b\x30\xcf\x35\x75\x0b\xa6\x2e\x10\x68\x46\xed\x8f\xbc\x29\xdf\x9e\x37\x45\x15\xa8\xf9\xd1\xb4\x62\x9c\x3c\x8c\xef\x0a\xbc\x2c\x5c\x59\xe0\x26\x9d\x1d\x9e\x9d\xe8\x6e\xd5\xae\x90\x2c\x7c\x44\xfc\x5f\xd8\x33\x39\xa5\xd9\x1b\x45\xbb\xed\xe9\xf6\xf4\xcf\xe8\x8d\x4a\xe6\x19\x7a\x45\x74\xa8\x65\x57\xa6\xd8\x9f\x7d\x6f\x4e\x6c\x3d\x62\x20\x84\x6a\x46\xbb\xb5\x8b\xf5\xa1\xa9\x30\x24\x0a\x52\x96\x4a\xa6\xd7\x1b\x5e\x61\xab\xab\xb3\xc6\x7b\xe3\x0d\xd2\x7f\xad\xc7\x59\x28\x69\x6e\x0b\xff\xe5\xda\xe3\x04\x22\x51\x2f\xb2\x1a\x85\xf9\x15\xb9\x0f\xfd\xe2\x87\x3a\xf3\x4d\xdb\x86\xad\x03\x7d\x16\xa8\x23\x93\x4b\xb0\x91\x7c\x2a\xc0\xc7\x23\x8d\x8a\xb0\xf4\x09\x21\xaf\xbc\x9a\xaa\x29\xad\x27\x6e\x5e\xa3\x22\x62\x14\x88\xa1\xb0\x06\x30\x3e\x8a\x78\xef\x91\x75\x19\x27\x85\xa4\x96\xde\x3e\x8b\x2a\xd7\x67\xe5\x26\xf3\xee\x31\x85\x64\x51\x11\xc9\xca\xf4\x5a\x54\x1d\x20\x2e\x60\x7d\x54\xde\x14\x98\x98\x1b\xc5\x5a\xe4\x91\x65\x88\x70\x12\x65\x9e\xb4\x20\x69\x66\xa5\xca\xac\xfc\x33\xa9\xfb\xfe\xa0\xfb\x5f\x41\x39\x58\xb1\x8b\x68\x66\xe7\xd6\x90\x63\xfc\xe1\x00\x49\x5c\x51\x86\xf5\x9d\x56\xd9\x40\xc5\x1f\xd6\xb6\x64\xe9\x8a\xcf\xa4\xdc\x74\xb9\xff\xf0\x1c\xcf\xf0\x5d\x93\x33\xd6\x43\x11\x83\x05\x58\x55\x18\x91\xf2\x31\x95\xb8\x98\x68\x7d\xe3\x30\xd8\xbe\xce\xc7\x1f\x88\xd8\x1e\xc7\xe3\x5b\xcd\x9e\x8d\x2c\x9e\x3f\xd4\xd0\x3c\x80\x92\xcf\xc3\xd1\x5e\xcb\xf3\xf6\x26\xba\xad\xb0\xb5\x35\x91\x6d\x48\x89\xd8\x6d\xe0\x76\xe3\x5c\x30\xc9\x02\x81\xf5\xb1\x56\x7e\xcb\x8d\x05\xbf\xbd\x95\x35\x37\x7e\xf6\x87\x78\xe2\x2f\xcc\x71\xfd\x45\x34\xb6\x07\xd6\xbd\x65\x32\x24\x93\x43\x53\x92\x65\x87\x64\x4a\x38\x8f\x93\x2c\xda\x2d\xb1\x69\xe6\x77\xdd\xd0\x8c\xef\x82\xa6\x5b\xf4\xcc\xf4\x99\xe1\xcd\xcd\x1e\x7a\x85\x72\x66\x10\x5e\x41\xcd\x3f\x5e\xcd\x39\x99\xc7\x9c\xbc\x65\xfc\x47\xf7\xd1\x8c\xda\xd4\xd7\x85\xef\x63\x2a\xde\x32\x7e\x78\x76\x72\x4e\xe2\xc9\x43\x08\x11\xa0\x69\x32\x31\xa3\xac\x63\x65\x6a\xc8\x05\xd2\xbb\x8e\x33\xa2\x0f\x35\x9f\x06\x53\xaf\x26\x16\x05\x74\x20\x22\x08\xfb\x5c\xa0\xcd\x6a\x82\x1b\xd7\x01\x4d\xe7\xdc\x5e\xe2\x32\x6d\xd7\x2c\x52\xa8\x6d\xc6\x73\x6e\xaa\x87\x57\x05\x5d\x34\x0f\x18\x7a\x3f\x16\x8b\xa9\x7e\x42\x06\xb7\x2d\x9f\x2e\x81\x78\x68\x8f\x00\x4b\x81\x82\x14\xa4\xfe\x5b\x03\x83\x57\x58\x8e\x10\x69\xe3\xea\xab\x49\xa5\xfe\xd5\x95\xc9\x94\x5c\xe0\x81\x24\x21\xe6\xff\x5e\xe2\xd2\x9a\xfb\xfd\x6e\x19\xbc\x57\x7f\x7b\x34\x83\x22\x8a\xe5\xc9\xc6\xb7\x44\x6e\x7d\x14\xea\x54\x1e\x26\x5a\x74\x30\x61\x33\x28\x17\x68\x3a\xe8\x8b\x50\x89\x00\x1e\x54\x7c\x8c\x6b\x9a\x4e\x0c\x43\xe9\x8a\xa2\x25\x36\x3f\x2a\xc0\x2e\xfa\xd6\x14\x5f\x91\x89\xb1\xe7\x36\xe2\xa4\x10\x2c\xd7\xa6\x84\x9f\x9b\x1d\x59\xdd\xec\xd5\xcd\xda\xed\x2e\x71\x3c\xb9\x93\xa0\xdb\xa8\xde\xf6\x36\xde\x31\xd1\x23\x6b\x3e\x83\xc8\x28\xee\xb1\x74\x4c\xf4\x9c\x15\x95\x46\x27\x6f\xc8\x98\xcd\xa0\xaf\x07\xb9\xcd\xe4\x31\x56\xe7\x2a\x21\x3f\xbc\xe3\x6c\x46\x33\x82\x2a\xb2\x31\xfd\xa1\x25\xf8\xc3\x63\x05\x08\x63\xb9\x21\x24\xfe\x2f\x9b\xea\xd5\xca\xe0\x54\x00\x86\xb0\x28\x80\x5b\x63\x19\x50\x01\x4f\xa1\xe6\xb9\xb6\x43\x8a\x92\xde\xf9\xc5\xcf\xef\x7a\xb0\x2a\x16\x69\xbd\x81\xa8\xbc\xdb\xc5\xa9\x80\xb0\xcc\x13\x92\x21\x1c\xee\xe0\xbc\x20\x0f\x97\xa8\xe7\x93\x3f\x9e\x68\xb2\xbc\x94\x16\x1e\xc2\xd8\xaa\x4a\xae\xea\x77\x15\x52\x17\x8b\x25\x84\xa8\xcd\x8a\x62\x6d\x7f\x3a\xb5\x3b\xac\xb5\xd6\xc9\x6f\xe6\xe8\xc8\xfb\x22\x70\x4a\xef\xd5\x45\xa1\x02\x76\x82\x5d\x23\x60\x8d\x2f\x4a\x50\x12\x87\x1c\x4c\x1e\x03\x6d\xa3\x19\x3c\x79\xd4\xe0\x27\x76\xad\x45\x05\x90\xd9\x2d\x71\x11\x45\xcb\xf8\x51\x41\x88\x4e\x67\xab\x82\x11\x72\x2d\x01\x88\x2d\x15\x1b\x87\xf5\x68\x76\x49\x32\x49\x81\xa1\x10\x2d\x16\x21\xa8\xc0\xb5\x21\xf9\xbe\x52\xa8\x83\xe2\x31\x43\x6a\xbc\x20\x04\xb1\x6f\x2f\x48\xcc\xc7\xb7\x2e\xca\xdb\xd6\x0e\x2a\x5d\x63\x28\x24\xd5\x1b\x73\x6f\xc5\x0a\xf6\xeb\x0e\x55\xe4\x6f\x23\x23\xe9\x86\xeb\x10\x82\xf4\xf8\x02\xc6\x56\x75\x3d\x8d\x0e\xd7\x17\x94\x3b\x41\x6d\x19\x0b\x6b\xeb\x7b\x68\x89\x79\x19\xfa\x7e\xa8\xeb\x4f\x97\x8e\x3c\x0d\xdc\x5d\x84\x73\xa3\x24\x2a\xdc\xe1\xea\xb0\xeb\x74\xc2\xfa\xcf\x8a\x1e\x40\x2b\x48\x9d\x42\xca\xfa\xfa\x12\xb5\x3e\x97\x5e\xac\x6b\x15\x4c\x18\xb4\x4c\x2b\x5a\xd1\x19\xed\x51\x55\x84\xe8\x14\xbf\x20\x44\xf4\x0f\x48\xb9\x16\x75\x02\x3c\x25\x55\xe4\x95\x1b\xd8\x4a\x07\xa1\xa2\x68\x16\xfd\xa5\x3d\x18\x85\xa4\x32\x10\xea\x29\x3c\x08\x8b\x74\x0e\x67\xf7\x6e\x73\xa7\xfe\xe6\x26\x4b\xa4\x0d\x9a\x1d\xe9\x7f\x65\x4c\x6e\x8d\x70\xc8\x17\xbc\x63\x43\x8c\x58\x5a\xa4\x24\x8b\xaa\x71\xc4\xc6\x8f\x8a\x20\x6b\xc8\x97\x54\x35\x19\x2c\x09\xa7\xa0\xff\xbe\x32\xbe\x31\xfd\x17\x4b\xd4\xcb\xa5\xf1\xb8\x57\x0e\x71\x03\x3e\xe0\xbf\xab\xd4\x2c\xa5\x89\x79\xf6\x09\xd8\x3f\xff\x8d\x24\xd7\xef\xcf\xc8\x20\xfa\xf2\x84\x90\x63\xda\xcf\x05\x3b\xb6\x82\x89\xda\xa2\xb7\x71\x76\x2b\x8b\xfe\x14\x67\xb7\x4f\x15\xa5\x99\x60\xfc\x01\x4a\xab\xc7\x27\x2a\x80\x80\x09\x4f\x7b\xa7\x2c\x25\xb5\x45\xc3\x1d\x3c\xef\xcd\x39\xbd\x8b\x05\xd8\x13\x3c\xc8\x75\x6b\x5c\x16\x30\x70\x9b\xf6\xde\x00\x57\x07\x76\x85\xe5\x25\x31\xf2\x42\x05\x41\x87\x15\x17\xea\x7d\x09\xce\xe5\xd2\xc1\x95\x7d\x2a\x2a\x75\x2c\x0e\xde\x87\xe8\xf1\x7a\xb1\x08\xaf\xa3\xad\x1d\x7c\x57\x1b\x12\xc7\xc5\x47\xdf\x1a\x97\xe2\xc2\x74\x3a\x59\x2f\xa1\xd7\x3c\xe6\x94\x38\x75\xe2\x01\xe3\xe4\x18\xde\x3e\x84\x36\x41\x3d\x04\x8c\x33\x51\x99\x50\x4f\x05\x88\x41\x68\x79\x53\x94\xdd\xc2\xee\xac\xca\x6e\x8b\x97\xf9\x2a\x5f\x44\x0d\x58\xb9\xb7\x64\x9f\x33\xa5\x5b\xd8\x77\x68\x66\x1a\x07\x23\x11\x62\xe4\xa9\x83\xe8\xc6\x93\xd9\x0c\x56\xcb\x6c\x3c\xc9\xc6\xf3\x07\x62\xfa\x0c\xf6\xeb\xca\xb6\xa1\xd6\x6e\x86\x42\x64\x8d\x21\x19\x45\x29\x18\xbb\x0e\x47\x58\x3e\x28\x7f\x77\x81\x30\xef\x74\x44\xa8\x62\x3a\xf8\x94\x5b\x35\x0a\x01\x05\x8b\x58\xcc\x7b\xf7\x34\x9d\xb0\xfb\x4e\xa7\xc6\x81\xf3\xc0\x49\x00\x4c\x04\x35\xb9\x01\xbc\xd7\x21\xc1\x8f\x2a\xfe\x62\x5f\x28\xbb\x4b\xb2\x44\x2d\xd3\x68\xcf\x1c\x3c\xaa\x2c\x43\x4b\x39\xd6\x4e\x07\x46\xbc\xf2\xca\x09\x85\x22\x8a\x88\xb9\xf2\xca\x8e\xd3\x83\xd3\x9f\x7b\x83\x93\x37\x83\xf3\xab\xe3\xb3\xfd\xc3\xab\x9f\xce\xce\xfe\x71\xb1\x58\x3c\x2e\x31\x8d\x1e\x97\x98\x45\xb4\xe5\xaa\xb2\x25\x42\x2d\x87\x1d\xe3\x58\x1e\xa9\x56\x2c\xb4\x9e\x0d\x50\x2d\x66\x7c\x56\x27\x06\x9a\x0d\x52\x15\xcc\xa9\x1a\xef\x03\xb0\xc0\xb8\xfb\xa9\x40\x8f\x10\x50\x8b\xef\xf1\xfe\xd6\x96\x86\xce\x29\xe4\xde\x39\x7b\x27\x4f\x85\xfd\xe3\xab\xb7\x83\xfd\xcb\xf7\xe7\x83\x0b\x09\x54\x05\xb9\x83\xfd\x83\x9f\x06\x57\xfb\xef\x8e\x22\xf3\xe6\xc7\xe3\xa3\x93\x93\xc1\xf9\xd5\xd1\xe9\xd5\xe0\x78\x70\x32\x38\xbd\xb4\x9f\xce\xcf\xde\x5f\x1e\x9d\xfe\x78\x75\x72\x76\x38\x38\xbe\xda\x3f\xff\xb1\x52\xe9\x62\x70\x79\x75\x70\x76\xf2\xee\xec\x74\x70\x7a\x79\x75\x39\x38\x79\x77\xbc\x7f\x39\xb0\xc5\x0e\xde\x5f\x5c\x9e\x9d\x78\x25\xf6\xcf\x7f\xbc\x7a\x77\x7e\xf6\xcf\x5f\x6d\x91\x93\xb3\xc3\xf7\xc7\x83\xab\xf7\xa7\x47\x6f\x8f\x0e\xe0\x34\xb3\x9f\x4e\xf7\x4f\x06\x87\x57\x6f\x8e\xcf\x0e\xfe\x71\x61\x5f\x1e\x9d\xbc\x3b\x3f\xfb\x79\x70\x78\x75\x74\x7a\x71\x79\xfe\x5e\x8e\xb7\x58\xeb\xf8\xe8\xcd\xf9\xfe\xf9\xd1\xe0\xe2\xea\xe8\xe2\x7c\xf0\xe3\xd1\xc5\xe5\xe0\x7c\x70\x18\x91\x9e\x01\x46\x44\x7a\x87\x83\xb7\xfb\xef\x8f\x2f\x2d\x7c\x8a\x98\xf6\xb8\xaa\xa1\xfe\xd6\x2e\x5e\x3d\x12\x57\xc2\x9f\x80\x7b\x5b\x9d\xb1\xfb\xd6\x0c\xb0\xfe\xd6\x0e\x5e\x07\xf6\xae\x5c\x65\xf5\xaa\x4d\xb8\x35\x77\xdf\x2c\x86\xf4\xb7\x76\x97\xad\x1a\x58\xa5\xce\x43\xd2\x39\xd7\xa4\x58\x61\xa0\x29\xe5\x91\x50\xcc\x6d\xf2\xad\xf0\x09\x44\x55\xc1\x7a\xb6\xa2\x88\xa0\xc5\x82\x2c\xbd\x45\xa3\xda\x25\x83\x85\x74\xe5\x42\xa3\xd6\x13\x88\x10\x1b\xdb\x1f\xdb\x50\xd3\x42\xba\xa6\x1a\x91\x2e\xd3\x8a\x3e\xd7\x98\xbf\xe6\xae\x81\x02\x2a\xe7\x3a\xf9\x8d\xab\x54\x45\x09\x57\xb5\x66\x83\x24\xda\xe0\xd1\x35\xd0\x8c\x37\xae\xa1\x15\x9b\x71\xac\x1d\x09\x5c\x83\xab\x91\xcc\x35\xfa\xc4\x41\x30\xd5\x81\xfe\x5d\xc3\x15\xac\x74\x6d\x55\x8f\x9b\x09\x54\xbf\xad\x19\x97\xc3\xdc\xea\x58\xbc\x93\xec\x16\x1a\x98\xfb\x90\x32\xe8\xed\x01\xc6\x9e\x89\xf3\x22\x4d\x61\xe3\x55\xac\x77\x5f\x34\x58\xb1\x7d\x36\x4b\xcf\x03\x33\xbc\xb5\x8d\x32\x6d\x8d\x8a\xf5\xa0\x9b\xaa\x71\x63\xd8\x56\x19\x1d\xd7\xcb\x2d\xf2\xbc\x51\xfa\xc0\x71\x5e\x87\xc1\xa2\x99\x51\xb4\x9c\xa5\xc9\x83\x9d\x40\xad\xfb\x82\x9f\xe8\x49\xc8\xca\xf5\x55\xbd\xc3\x5e\xac\xad\xa2\x7f\x0a\x50\x9a\x49\x9e\xc1\x5c\xc1\xb1\x88\xd4\x6b\x48\xcb\xee\x17\x45\xd9\xb9\xab\xaf\x14\x95\xad\xa6\x49\x88\xf2\xfa\x19\x47\x83\xf5\x70\x75\x95\x6a\xaf\xa4\x33\xf4\x9a\x56\x39\xc6\xcd\xcf\x2b\x48\xa3\xf6\x79\x7c\xf2\x15\xc3\x54\x03\x25\xae\x3f\x15\x33\x44\x0f\x03\x37\xac\x60\x64\xc2\xaa\x43\x18\x15\x0f\xf8\x60\x6a\xae\x1c\xfd\x1c\x37\xa2\x48\xce\xda\x18\x00\x8d\xb1\x7a\xac\x15\xee\x0a\xa7\xd1\xa7\xc0\xf6\x7c\x29\x6f\x2b\x0a\xe7\x3f\x35\x4a\x42\xda\xcb\x1e\x66\xd7\x2c\x41\x61\x00\x07\x37\xd8\xac\x55\xf2\xd6\x56\x22\x1a\x39\xcf\x18\x79\x60\xa9\x08\xdf\x4a\x75\x28\x79\x7c\x9d\x76\x0a\x7c\x9c\x54\x5a\x6a\x67\x1a\xf9\xd8\x9c\x68\x6c\x48\x47\x60\xca\xd7\x9c\x28\x6a\x48\x47\x91\x3a\xfd\x9a\xe3\x1d\x80\x7a\x7d\xbd\x6d\xb4\x52\x4d\x5f\xf2\x3f\x57\xcd\x4a\x5c\xb0\x52\xd2\xba\x8f\x42\x09\x6f\xeb\x3e\xdd\xc7\x3c\xad\x7b\x3f\x8e\xe7\x92\xad\xd9\x56\x66\x0f\xdb\x82\x13\xf2\xf9\x4c\xa9\x9b\x4d\xef\xb5\x68\xc1\x0b\xe7\xa9\xd7\x7b\x6d\xdb\x76\xd3\x84\xae\xb7\xd2\x6e\xde\x8a\xb9\xd7\x6c\x9d\x3a\xc1\xf8\x53\x9e\x0e\x9b\x36\xec\xaa\xac\xf6\x4d\xd0\xb3\xfb\x25\xe6\x1b\x42\x86\x6d\x04\x19\x8d\x0e\xca\xfe\xe9\x52\x22\xc3\x7a\xbd\xc4\x9e\x6f\x81\xe4\xc2\x25\xba\x1d\x4d\xdf\x67\x34\xbd\x91\x97\xd6\x7c\x4e\x26\x6f\x15\x03\xfd\x36\x89\x6f\x32\x95\x83\xe3\x50\x62\xe1\x5b\xdd\x56\x04\xf6\xa8\xe5\x57\x16\xdd\xe5\xbb\x88\x28\xad\x13\x14\x82\x8f\xb2\x30\xf8\xe0\x9b\x5f\x17\x24\x4e\xfc\x6a\xe6\x7d\x44\x7a\x72\x48\x91\xbc\x1d\xa6\x90\xac\x23\xcb\x08\x2f\x99\xf4\x17\xa2\xdf\xe4\x60\xe5\xa3\x8b\x19\xb2\x5b\xbe\x82\x06\x0c\x19\x2d\x5f\x40\xc3\x86\x0c\x56\xa6\x41\xb2\x47\x43\xbf\xaa\x37\x66\x3c\x86\x2c\xb5\xe5\x60\xc4\x86\xd6\xb4\x6f\xf5\xac\x54\x60\xc5\x19\xbc\xf7\xa6\x3e\x6b\xa9\x3c\x08\xf2\x75\x05\x68\x77\xf0\xf1\x01\x3e\x56\x80\xfc\xa0\x6d\x3d\x6a\x56\xd0\xc6\x04\x2b\x07\x16\xdb\xde\x1d\x2d\x5b\xe5\xa5\xb8\x5e\x67\x95\x15\x74\xeb\x4e\xc8\xa6\xa3\xa7\x78\x66\x6a\xaa\x18\xae\xa6\xcf\x17\x96\xa9\x2a\x2f\x81\x5b\x83\x7c\x9c\x93\x31\xb8\xeb\xad\xb2\x4b\x0e\xde\xbc\xff\xb1\xdf\x06\x97\xaf\x36\xcd\xda\x33\x9a\x49\x68\xb4\x6b\x8a\x16\x6d\xcf\xf6\x02\x13\x8a\xa3\xbf\x3d\x61\xb3\xa0\xef\xfd\xa6\x29\xe1\x22\x70\x7e\x83\x35\x63\xe1\x8d\x3d\x07\x5d\x8e\x14\x0e\xb9\x4d\xdc\xd3\xa0\x0e\xd1\xb2\x69\x31\xbc\x7b\xe5\x13\x24\x5b\x85\x6b\xaf\xda\xb8\x4e\x5a\xf0\xec\x7c\x80\x9e\xf3\x99\xb2\xd2\x7b\x9f\x0a\x9a\x78\x37\x48\x54\x2e\x70\x34\x59\xf5\xb5\xf8\xad\x74\x68\x46\xb5\x44\x8c\xbe\x1a\x0b\x07\x47\xab\x5a\x97\x56\x86\xea\xf7\x25\x2a\x5f\x8b\xe3\xe4\x4f\x4f\x34\xd5\xc1\x60\x0a\x07\x58\x1c\xb1\xe6\x18\x2e\x35\x6b\xf3\xf9\xd8\x35\x9a\xde\xb1\x0f\xa4\x16\xa8\x3f\xed\x9f\x1e\x1e\x0f\xce\x2f\x8a\x8c\x15\x40\xd1\x7e\x12\x3a\x62\xda\x13\x50\xe6\xad\x52\x26\x29\x55\x4c\x77\x9e\x36\xcd\xdf\xd2\x4c\x9f\x6f\xfa\x86\x76\xa8\x63\xdc\x74\xc4\xe8\x4a\x09\x82\x1e\x85\x33\xa0\xd5\x51\x45\x44\xb4\xb5\xdb\x34\x0f\x45\xe0\x35\x85\xdf\xff\x9f\xde\x9b\x9b\x6c\xcb\xf5\xb6\xde\x53\xe8\xa0\xb1\xa6\x6e\x7f\x36\x0f\xad\xba\xd7\x8a\x83\x33\x1b\x8d\xae\xe2\x00\x2a\x96\xa4\x55\x7e\xe0\x99\x61\x5d\x0e\x88\x13\x91\xde\xbb\xfd\xf3\xcb\xa3\xfd\x63\x27\xfc\x76\x12\xb6\xa3\x8b\xab\x9f\x8f\x2e\x8e\xde\x1c\x0f\x22\xb2\x3a\x59\x57\x44\x7a\x6f\xdf\x9f\x42\xda\xfc\xab\x77\xe7\x67\x97\x67\x97\xbf\xbe\x1b\x5c\x0d\xfe\x79\x39\x38\xbd\x38\x3a\x3b\x95\xdf\xf7\xdf\xbd\xbb\x3a\xb8\x3c\x3f\x06\x09\xdc\xe0\x5c\x16\x7b\x07\xef\x8f\x8f\xf6\x2f\xae\x4e\x06\x97\x3f\x9d\x1d\x46\xa4\x46\xf1\x18\x91\x9e\x1b\xd2\xc9\xfe\xe9\xfe\x8f\x83\xf3\xab\x8b\xcb\xf3\xa3\xd3\x1f\xaf\x8e\xcf\xce\xfe\xf1\xfe\x5d\x44\x7a\xba\x51\x3b\x9a\x93\xc1\xf9\x8f\x72\xd4\xc7\x67\x3f\xfe\x08\xd3\x54\x73\x83\x11\x1d\xba\x21\xca\xa2\x5e\xca\xff\xc8\x46\x0e\xf6\x5f\x6e\xed\xb4\x9a\xeb\xc3\x47\xdd\x0b\x3c\xab\x9e\xe1\xb1\x38\x28\x78\xf5\xd4\x4c\xa0\x50\x0d\x0c\xe0\x7d\x01\x54\xea\x4d\x2d\x50\xe1\xd3\xea\xf5\x50\x43\x5d\xb9\xa4\xde\xb4\x6b\x51\x02\xbe\x5b\xec\x81\x5f\x15\xf4\xda\x2a\xd1\x74\xd6\x4f\xb7\xc2\xf6\xd6\x5a\xb9\xeb\xe2\xf2\xf4\x51\x8f\xdb\x2a\xda\xee\x3a\x76\xf0\x9e\xac\x66\x53\x01\x87\x6f\x12\x3e\x89\x6f\xb6\x67\xf1\xfc\x13\x92\x00\xaf\x0e\xe8\xb5\x89\xe7\x72\xc5\xd8\xdd\xa7\xb2\x3e\x0a\x92\x66\x94\xa5\xdb\x59\x3e\x97\xc0\xdc\xd0\x90\xfe\x49\xaf\xe8\xaa\x0d\x7b\x93\x05\xfb\xdd\xb3\x59\xb0\xdf\x35\x59\xb0\xff\xaf\xb6\x96\x5f\x15\x2d\x61\x00\xcb\xfc\x4e\x63\xef\x9a\x9e\xfd\xa5\x7a\x4f\x49\x14\x3e\xa9\x8f\xac\xda\x47\x83\xd5\x3f\xeb\x59\x1b\x33\x23\xa2\x64\x3d\x63\x44\xf1\x8e\xb3\x8f\x0f\x20\x8e\xc3\x8f\x9f\x68\x96\x5f\xb0\xf8\x00\x8b\x6a\xea\x99\x8d\x9e\xc7\x69\x7f\x6b\x17\xab\xc0\xdd\xbe\x3d\x69\xb5\xa7\x52\x35\x63\xed\x5f\xb5\x43\xad\x2d\x1e\x6d\xed\x7c\xa2\xb5\x3c\x34\x57\x1d\x60\x58\xb4\xa3\x9f\xd6\x19\xcd\x37\x5a\xbb\x14\x2c\x7e\x3d\xaf\x6e\x65\x00\xe3\xbb\x81\x17\xc1\xa7\x5c\x22\xb1\x37\xb7\xd5\x4e\xe4\x5e\x41\x18\x10\xad\xba\xb7\x3f\xd5\x40\xa5\x02\x34\x54\x82\x7a\xbd\x25\x8f\xb1\xbf\x2d\x94\x0d\x03\x7f\x65\xfc\x5c\x7e\x2a\x1a\xa9\x37\x66\x65\x8a\xa7\x3b\xab\xfa\xe5\xd7\x38\x21\x54\xbb\xaa\x56\x5b\xab\xcb\x52\x4b\x25\xa1\xb0\xcd\x6b\xa7\x1c\xb6\x13\xcf\x61\xdb\x03\x1e\x84\x0f\xac\x09\x13\xe4\xe5\x83\x85\xc4\x78\x04\x09\x65\x8f\xc3\xed\xe9\x25\x96\x61\x8a\x74\x8a\x8d\xcc\x46\xf4\x8c\xa3\x9d\xd7\xb1\xcb\xd7\x1a\x77\xbb\x88\x47\xe9\x90\x0e\xe3\xd1\x08\x33\x70\xb6\x50\x41\xbf\x30\xc7\xbc\x77\x0d\x59\x25\x30\xef\xc5\x53\x41\x38\x6a\xb1\x9e\x60\xf3\x8c\x71\x11\x8a\xa2\x9d\xe2\x8d\x1b\xda\xa3\xb5\xdd\xeb\x93\xa5\x11\x40\xb8\x19\x12\x1c\x18\x33\xd8\x00\x2d\x16\x63\xab\xca\x30\x48\x2f\x3c\xd3\xb3\x2b\x6f\x5b\x39\x80\x17\x53\x9a\x28\x97\x4b\x79\x84\x40\x6c\x1f\xb0\xf6\xa9\xbe\xd3\x26\xad\x43\x32\x32\x02\x9a\xc7\x65\x8b\xcb\x0f\xc5\x84\xd9\xa6\x90\xb1\x09\x76\x76\x67\x1c\x2d\xf5\xc7\xa1\x72\x69\x06\x49\xfe\x75\x29\xaa\xbc\x8f\x5b\x35\xa9\xb8\xeb\x76\x4f\x53\x41\x87\x39\x57\x65\x84\xf7\x7f\x06\xb5\x8d\xaa\x3a\x75\x98\x6b\x5f\xb7\x8b\x8d\x34\x1c\x34\x85\xc4\x2b\xb1\x3d\xd5\xc3\x47\x43\xb0\xf4\x6f\x00\xe1\x5b\x7e\xe8\x9d\x28\x91\xff\x63\xe1\x59\x29\x56\xac\x38\x31\xa9\xf1\x65\x2e\x46\x8a\xd0\xae\x93\x3a\xb4\x55\x18\x8c\x3d\x8d\xb3\xe4\xaf\x12\x22\x58\x6a\x1c\xa8\xcb\x85\x55\xa2\x8e\x6a\x39\x37\x24\x47\x07\x1a\x83\x56\x2f\xf2\x6d\x8d\x8b\xb6\x67\x45\xa9\x1a\x0f\x20\x1b\x88\x01\x49\x80\x1b\x12\x5a\x15\xed\x5c\xb5\x88\xee\x13\x6b\xb3\x1c\xd4\x36\x57\x82\xcd\x8f\xc9\x1d\x49\x7e\xa6\xe4\xde\x10\x37\x01\xb6\x41\x00\xfb\xdb\x2c\x17\x09\x11\xe5\xfa\x10\x65\xd9\x7c\x5b\xc3\xcc\xd6\xab\x5a\xa0\x9a\x4d\xda\xe1\xa2\xcd\xe8\x8a\x0a\x9b\xf4\xe4\x4c\x53\xaf\x9d\xd5\x6b\xa0\x9c\x1b\x4a\x76\xb3\x4d\xe0\x59\x59\xf1\x6e\x45\xc5\x7a\x63\xd8\x7a\xff\x7c\x4b\x7c\x4f\x7a\xda\x5b\x60\xb5\xc9\xad\xab\x10\xac\xd1\x8d\xd9\x5f\xdb\x53\xc6\xb7\x81\xb5\xb8\xa1\xe9\x8d\xd9\x3b\xc6\x05\x81\x3f\x85\xa9\x96\x63\x51\x6d\x6c\xc7\x93\x78\xee\x19\x5a\x7b\x6c\xc7\xaa\x0e\x4b\x8d\x42\xba\xda\x52\x4b\xb6\x23\xd0\x16\xec\xab\x8f\xfe\xfb\xba\x01\x54\x37\x64\xf3\x58\x6f\x7b\x07\x75\x5d\x94\x9b\xd0\x47\xc4\xb6\x92\x72\xeb\xba\x73\x67\x7b\x72\x0c\xef\xd1\x32\x14\xbe\xf5\xaf\xa2\x74\x9d\xe1\x2f\xb8\x66\x60\x7b\xc6\x81\x3a\xf8\xdc\xff\xa5\x8d\x82\xef\xa3\x6b\x4f\x8e\x73\xdf\xc0\xd3\xd6\x85\xc3\x7a\xca\x79\xbb\xc2\x86\x96\xd8\xcb\xe6\xf0\xe2\xab\xfd\x96\x4b\xcc\x70\x23\x23\xbd\x82\xed\x6b\x62\xf3\xf2\x67\x63\xbd\xf2\xcf\xeb\xa8\x9c\x44\xbc\x57\x34\xa9\xe0\x75\xfc\x0a\x77\x18\xe7\x73\x31\x92\x62\xff\x54\x37\x63\x95\xf1\xda\x64\xc9\x04\x5a\xbc\xe5\xfb\x7e\xc6\x19\x69\x11\x88\x86\x25\xca\xb1\x7b\x6c\x81\x88\xa0\x96\x0b\x8f\x53\x24\xfe\xe5\x2d\xcd\xbc\x5b\x7a\x1a\x27\xc9\x75\x3c\xfe\xd0\x27\x85\x72\x4b\xeb\x56\xea\x3b\x8e\x0a\x97\x62\x28\x7c\x04\xad\x10\x38\x4f\x2d\xcb\x2e\x4e\xbb\x65\x67\xc6\x62\xbc\x9e\x26\x5f\x44\x1b\x65\xa9\xe0\x32\x07\xf9\x24\xc0\x77\x50\xbf\xf2\xcc\xb3\xb9\x63\x47\x43\xe1\xb9\x6c\x11\xf0\x94\x41\x55\x0f\xbc\xcd\x42\x8e\x29\x6a\x3b\x61\x86\xc5\x3d\x24\x73\x79\x3b\xa7\x63\x4a\x2c\x13\x58\x09\x43\x66\x97\xe1\x89\x58\x5f\x25\xaf\xb0\xa7\xc3\x77\x95\xf8\xc6\xea\xfa\xac\x52\x22\xea\xfe\x36\x8d\xfe\x95\xa7\xe6\xe8\xac\xe1\x84\x0a\x7d\x83\xeb\xa4\x9d\xff\xca\x4c\xd7\x8a\x94\x84\x2c\x23\xea\x58\xad\xe1\x96\xeb\x03\xed\xb4\x9c\xc3\x96\x8b\x73\x05\x4d\xf4\x83\x2e\x51\xc1\x9f\xfd\xc0\xcf\xb4\x98\x88\x24\x16\x92\xfe\x11\x64\xd2\x16\xac\x3d\x63\x79\x2a\x20\xd2\xb3\x6a\xa1\xfd\x57\x08\x04\xfd\x57\xdc\xbe\xce\x45\x9b\x8a\x36\xcd\xda\x29\x13\x6d\x97\x52\x5d\x65\xf5\xa2\x22\x6b\xab\x23\xb0\x17\x98\x40\x53\x65\x97\x30\x51\x08\xfb\x5b\x12\x94\x80\x35\xb2\xca\x61\xbf\xc4\x0d\xd8\x55\xcf\xec\xaa\x24\xeb\x59\x59\xba\xa3\xcf\x89\xd7\xc3\xa2\xf7\x55\x95\xae\xa8\xf3\x70\xe0\x85\xec\x83\xfa\x9a\xe4\x40\x9a\xab\x68\xbe\x0a\x21\x62\x5d\x58\xee\x2b\x9b\x05\x72\x05\xbe\xb5\x34\x7f\xb4\x22\xee\x51\x0d\x69\xa2\xc1\x39\x2c\x7a\x7b\x81\xdb\xa8\x47\x9f\xe5\x21\x42\xf5\xd4\x30\xf6\x34\xdc\x41\x37\xe4\x65\x7d\xb8\xd2\x82\x2b\xdd\x37\xc2\x35\x91\x94\x46\x2d\x5e\x8e\x3a\xa3\x53\xe0\x37\xc7\x53\xdb\x04\xa8\x4e\xb5\x5e\x8d\x86\x68\xf6\xa8\xa2\xa3\x1c\x0f\x51\xd4\x86\xd7\x19\x08\x14\xaa\x59\x52\xf5\xc9\x7a\x92\x43\x4f\xd6\x8f\x7b\x25\x20\xa1\x79\x0d\x93\xf3\xf4\x00\xeb\x69\xe9\x35\x26\x56\x5a\xc0\xda\xfe\x3d\x8e\xa9\x68\xef\x50\xa1\x74\x2d\x77\xb8\xa2\x0e\x24\x33\x5f\xb3\x13\x83\x48\x9b\x75\xa3\x6b\x21\x1b\x88\x6b\x65\x68\xe0\x66\x45\xc6\x3a\xf9\x67\x9e\xdd\xa0\xa5\x74\xf4\xd4\xda\x39\x0f\xf9\xc8\xe4\x33\xae\x2f\x2a\x07\x22\x4b\x45\x62\xd9\xf2\xac\x61\xac\xa1\xe6\xe0\xf4\xc7\xa3\xd3\xc1\xd5\xbb\xfd\xf3\xc1\xe9\x65\x50\x32\x05\x07\xba\xf6\xb3\xab\x3b\x6b\xd5\xc1\x10\x9f\xce\x5b\xaa\x92\x91\x73\x29\xdf\xd3\xe6\x5e\x5c\xcf\xbe\x5a\x6e\x44\x90\xc9\xf8\xca\xfd\x86\xa4\xb0\xd1\x44\x2e\x53\x7e\x9d\x8d\x39\xbd\x2e\x07\xc5\x36\xf2\x43\x8a\x99\x4b\x39\xd1\x0b\x10\x8e\xa3\xe1\x08\x67\xd1\xce\xeb\xec\x7b\x66\xe4\x84\x59\xb7\x8b\x82\xbf\x05\x51\x14\x85\x34\x62\xc3\x6c\x84\xf6\x62\x7d\x6e\x0e\xff\xfb\xb7\xdf\x7a\xa3\xbf\x05\xa8\xaf\xdf\x50\x13\x7e\x2e\xd6\xa9\x1f\x7e\xfb\x4d\xde\xa4\x79\x37\x0a\xc2\xdf\x7e\xeb\xf5\xfe\x86\xf6\x74\x26\x97\xe8\x71\x2e\xaf\x6c\x9e\xf6\x09\xe6\xe4\x86\x7c\xec\x7b\x51\xc7\x83\xff\x0e\xba\xb9\x8a\x3c\xae\x32\x62\xf6\xc5\xd2\xe5\xbd\x85\x9e\x12\x84\xd3\xe8\x71\x89\x21\xbd\x76\x9e\xd6\xcd\xd4\x0f\x82\xbe\x83\x69\xb4\xf3\x9a\x7e\x6f\xe2\x7c\xbf\xa6\x90\xce\x92\x8e\x34\xcd\x25\x22\x8a\x5a\x1c\x40\x21\xef\x78\xbc\xab\x9a\x5f\x2a\x6e\x9b\x14\xcd\xc1\x75\x1b\xd1\x8e\x2d\x53\x49\x77\x15\x79\xc0\xe7\x59\x31\x75\xdf\x70\xd4\x2a\x7e\x35\xa6\x27\x8f\x6a\xcb\x68\x4e\x4b\x82\xbb\x2e\xca\x9b\xf1\xa0\xd4\x4e\x8f\x73\xc2\x21\x17\x7c\x3a\x26\xe0\x91\x18\xb2\x88\xf6\x52\x76\xbf\x58\xd0\xde\x8c\xfd\xe7\x54\x3d\xa9\x94\xb8\xfa\xc7\x2c\xd3\x0f\xec\x94\xdd\xa3\x3d\x06\x31\x5b\x42\x8a\xfa\x87\xb1\x20\xb2\x2e\xf2\xf9\xba\x55\x39\x37\x49\x21\xd9\x31\x16\x2a\x53\x15\x18\x39\xc8\x29\x40\xb8\xf7\x92\x39\xe0\xf7\xd1\xab\x4e\x27\x0f\x05\xda\x0b\xe3\x48\xe0\x2c\x4a\x51\x3f\x64\x91\xc0\x71\x94\xe2\x2c\xa2\x08\x02\xae\xd8\x78\xec\xd6\x40\x14\x6c\xe7\x35\xc7\x94\x44\x0c\xe6\x7a\x1b\x4d\x42\x52\x93\x36\xac\x9d\x48\x52\x46\x3f\xdf\x46\x51\x34\xdd\xb3\x0d\xf4\xc7\x61\x8c\x6f\x71\x82\xb3\x62\xf2\x65\x63\xac\x2e\xf8\x83\x97\xb2\x46\xd6\x49\x4d\x70\x11\x6a\xc2\x3a\xf0\x1e\xf9\x38\x26\x2a\x79\x07\xc5\x74\x39\xa5\x69\x9c\x24\x0f\x8f\x22\x44\x4b\xd7\xe8\x34\x44\x8f\xee\x97\x1c\x29\xc5\x0c\x04\xd8\x75\x33\x9c\x9a\x24\xd8\x3a\x49\x6a\xbc\x58\x84\x71\x3d\x36\x63\x2a\xb7\x29\x8b\x76\x5e\x33\x87\xd0\xac\xdb\x45\xa1\x88\xf8\x90\x8d\x50\x0f\x76\x94\x8a\xb3\x4f\x50\xa7\x43\xb5\xc3\xae\xce\x2f\xeb\xa2\x1a\x0c\xc9\x08\x26\x20\xb9\x2a\x80\x7b\x5c\x3b\xaa\x1c\x27\x11\x0d\x19\xc2\x63\xed\x0b\x7b\x71\x79\xfe\xfe\xe0\xf2\xfd\xf9\x00\xac\x1e\xde\x1e\x1d\x0f\x5a\xe3\x4e\x27\xcc\x23\xd2\x0d\xfa\xed\xa0\x9b\xe8\x9e\xb0\x64\x4a\x58\x42\x7a\x82\xce\x48\x98\x23\x64\x55\x17\x13\x39\x85\xdb\x48\xf2\x5a\xf3\x68\xe7\xf5\xfc\x7b\xd3\xf3\xeb\xb9\x49\x19\x30\x8b\xe2\xe1\x7c\xd4\x9a\xa8\xc1\xcf\xb4\x46\x22\x24\x72\xf5\x5c\x10\x40\xdf\x8b\xc6\x6e\x77\xd9\x2c\x8f\x76\x5e\x73\xd7\x2c\x37\xcd\xa6\x51\x3c\xe4\xa3\x56\x0d\x36\xa7\x4a\xd7\x21\xe9\x42\x78\x00\xa4\x48\xf0\x64\xc8\x47\x68\x39\xee\x74\xfc\xc9\x0c\xd2\x49\x98\xa3\xe5\xb2\x6e\xef\xc7\xb5\x27\x42\x1c\x95\x7d\x76\x2d\x7f\x5b\xb6\xab\x9c\xb1\x09\x9d\xd2\x75\x1d\x6a\xfe\x6c\xe7\xaf\x8c\x88\x13\x3d\xc0\x93\x38\x8d\x6f\x36\x0b\xcd\x5f\xaa\xfa\x94\x39\x79\x7c\x4d\x13\x41\xc9\xba\x11\xf5\x45\xcf\xc0\xee\x40\xd5\xa5\xb2\x72\xc5\xe7\x4c\x61\x27\x78\x54\xc5\x4f\x92\x5b\x4d\xf9\xd1\x8c\x79\x31\x64\x1d\x8a\x45\x35\xf5\xeb\x73\x79\xbf\x28\xde\x51\xfc\x83\x80\x13\x56\x2c\x22\xa6\x7d\x60\xca\x08\xa5\xde\x82\x89\x40\x25\xd9\x3d\xed\x74\x42\xf8\x52\x09\x8e\xa9\xb3\x0d\xa9\x78\xcf\x69\x4f\xc4\x37\x56\x40\x85\x85\xa4\x09\xd4\x6b\x1e\x8f\x3f\x14\xa3\x83\x93\x88\xaa\x13\x12\xb2\x31\xfa\x89\x4a\xf2\xf9\x24\x16\xe4\x32\xbe\x41\x21\xc3\x31\x88\xbe\x52\x10\x50\xe4\x33\xf5\x36\x86\x98\x27\x98\x2f\x0b\xce\xba\x0a\x60\x10\xa0\x0a\x12\xaa\x99\x8c\xbe\x26\x59\x92\x1c\xd6\x10\x4a\x8d\x10\x7a\x4c\x23\x52\x36\x5c\xf5\x7d\x6e\xa8\x6c\x03\xa7\x68\xe9\x5b\x42\x67\x44\x00\x3b\x44\xc7\x87\x64\xcc\x78\x0c\x4d\x32\x84\xd9\xd2\xab\x25\x47\xb1\x5c\x55\xbc\x11\x99\x72\x41\xea\xa3\x3e\xe8\x32\xca\x1d\x4b\x95\xb3\x0f\x57\xb3\x78\xcc\xd9\x13\x85\x39\x99\xe4\x63\x72\x55\xae\xf3\xec\x91\x00\x1a\x2b\x90\xd9\x5c\x3c\xac\xbd\x0b\xa1\xf4\xca\xbd\x9d\x32\x31\xd8\xa8\x49\x53\xe1\x89\x56\xd3\x75\x7d\x4e\x64\x8b\x29\x79\x6a\x8c\x9b\x0c\x6f\x65\x5b\xd7\x8c\x25\x6b\x37\x26\x0b\xaf\x6c\x6d\x26\x09\x92\xf5\xcf\x44\x59\x7a\x65\x7b\xe4\xdf\x79\xbc\xfe\xf0\xa0\xf4\xca\xf6\x6e\xd6\x07\xdc\xcd\x6a\xb8\xdd\x88\xf5\x17\xf4\x46\xac\x5e\xcf\xb5\x73\x9d\x88\x5e\xb2\x7a\x54\xc9\x06\xa3\x4a\x9e\x18\x15\x4b\xc9\x2f\xf1\xfa\xfb\x40\x15\x7f\xc2\xdd\x4b\x65\x64\x58\xbb\x4d\x53\xe1\x89\x74\x31\xda\x92\x39\xbd\xd9\x4f\x68\xbc\xfe\x95\x5c\xae\xb8\xb2\x97\x38\x5d\x37\xc9\x8d\xe8\xc5\xe9\xea\x04\x37\x6c\x7d\xca\x84\x3d\x91\x84\x28\x9f\xad\x6f\x3c\x97\xcf\x56\xef\x5d\x88\xc5\xb5\x5e\x5b\x33\x9a\x3e\x71\x0e\x7c\x5c\xbf\xad\xf8\xe3\x13\x6d\xcd\x37\x68\x6b\xbe\x1a\x5e\x60\x73\xba\x2e\xc0\x18\x7f\xd2\x8c\xf1\x90\x4e\xa7\x9b\x98\x2f\xca\xf2\x4f\xcd\xf6\xcd\xba\x1b\x04\xe6\xfb\x66\xf5\xee\x98\xd2\x44\xac\x4d\x09\xf3\x9e\x2a\xbe\x46\x8b\x1b\x0c\xd2\x54\x58\xd9\x6a\x9e\xd2\x7f\xaf\xdd\xa2\x2c\xfc\x64\x6b\x1b\x8c\x50\x15\x7f\xaa\x45\xb6\xfe\xfe\x80\xd2\xab\x9d\x75\x25\x1d\x9f\x91\xf1\xfa\xe8\x68\x6b\x2c\x97\xa8\x99\x80\x1a\xb3\x24\xd9\xa4\x55\x5d\xbe\x89\x15\x69\xe6\xf4\x4a\xba\xff\x75\x72\x68\x7d\x16\x3e\x44\x05\x14\xd5\x41\x6c\x28\x28\x6f\x7f\x21\xf1\x87\x93\x78\x5e\xa4\xe1\x85\xa6\xe1\xbd\x60\xff\x9e\x6a\xb2\x36\xf2\x57\xa1\x84\x8a\x9a\xd0\xe9\xd4\xbc\x0c\x11\xde\xd2\x23\x77\xa1\x15\x6e\xe3\xec\xec\x3e\x35\x73\x50\x0c\x89\xbc\x47\xa0\x8f\x2c\x40\x26\x96\x98\x99\x01\xf8\xe5\xaa\xa7\x88\xed\x95\xf3\x74\x33\xd4\x7f\x5c\xba\xf0\x19\xba\xe0\x50\x8c\xa2\x14\x97\xdd\xff\x95\xf6\x8e\x4a\xa6\xca\xa8\xf3\x8b\x7a\x5c\x09\xa3\x93\x78\x8e\xc1\x4f\x5b\x31\x54\x04\x19\x05\x3e\x08\xdc\x43\x97\x88\xa0\xa4\x12\x4d\x95\x54\x4e\xe8\xe4\x51\xb2\x81\x14\x0b\xa4\xa2\xd9\x5a\x80\xc7\x05\xd6\xaf\xa5\x59\xa7\xb4\x91\x75\x12\x98\x4b\xd6\x89\x6a\xd6\x29\xae\x67\x9d\xd4\x32\x52\x9f\x75\x4a\xeb\x79\xa1\x18\xe1\x78\x59\xac\x15\xf1\x1e\xe0\x0d\xb0\x50\x8d\xd5\x6a\x37\xc1\x6a\xf6\xe8\x13\xb8\xf4\xd5\x22\x11\x0b\x45\x2e\x59\x4f\x23\x1d\x1a\x8e\xdc\x07\x1a\x12\xf4\xa8\xb5\x84\x04\x2d\x8d\x80\xa9\x46\xf4\xf6\xa8\xc0\xc9\x87\x6c\xf4\xda\xf8\xdc\xc6\xe9\x44\xa3\x25\x25\x19\x0a\x63\x09\x51\x23\x79\x73\x4b\x28\x47\x96\x56\x4d\x5d\x9d\x38\x8b\x44\x65\x19\x2a\x56\xdb\x0f\x82\x8c\x84\x04\x69\x51\x20\x81\x81\xd0\x21\x1b\xb9\x0a\x43\x36\xd2\x0b\xcd\xc3\x1d\x4c\x11\xce\x22\x17\xd0\xa2\x18\xc8\x24\x36\xb1\x4b\x86\xf5\x63\xb0\xee\xdc\x5a\xb2\x46\x9c\x48\x8d\x2a\x25\x8f\x4b\x25\x15\x0f\xf9\x48\xa9\xec\xd3\x90\x22\x9b\x56\x68\xe9\x71\xe2\x7e\x61\x32\x42\xcb\x91\x93\xd8\x66\xcb\x4f\xb1\xf5\x01\x96\xb3\x46\x69\x55\x8a\xe1\x41\xba\x81\x9e\x49\x50\x23\x39\x36\x72\x07\xd9\x16\x64\xec\xf5\x07\xaa\x4c\x4f\x96\x98\x58\x5e\xf4\x8f\x76\xb7\xb5\x76\x7f\x69\x5d\xda\xdd\x72\x5f\xcd\x13\x3a\x65\x29\x59\x3d\x9f\x4f\x6b\x7e\xab\xd2\xa4\x6e\x51\x72\xb0\x9f\xd6\x64\xdb\xb8\xad\x36\x8e\x16\xd8\x59\xff\xe4\xe2\x6b\x35\xaf\xb6\x77\xa5\x55\xa7\x58\x02\x79\x79\x6a\x7a\x01\x26\x77\xf3\x5e\x6a\x51\x9c\xa0\x28\x8a\xb8\x6e\xf8\x46\x3c\x5b\xab\x3f\xb8\x36\xc9\xf3\x35\x6a\x47\x9a\x3c\xdf\x48\xbf\x77\x6d\x3e\xdf\x48\xbf\xb7\x23\x55\x4c\x71\x13\xc2\xc5\x92\xeb\x44\x21\x41\xba\x5c\xa8\x22\x96\x6a\xa6\xf7\xe9\x5a\x2e\xc3\xa1\x0a\xd8\x54\x64\x67\xd7\x41\xf3\xfa\xc8\x41\xd5\xcd\x53\x0c\x21\xc4\xdd\xc5\x60\xc4\x91\xa6\x28\x4e\x11\x96\x84\x2f\x4c\x9e\x4b\xe2\x26\x9d\x14\x03\x24\xc9\x2a\xb5\xd1\x4e\x21\x3e\x29\x94\xa7\x5a\x7e\xda\x50\x74\x4b\x17\x65\xbc\xec\xa5\xbc\x81\x84\x72\x0d\x92\x76\xa3\xd8\x53\x4f\xd3\xb6\xfe\xed\xad\xa8\x51\x0b\x42\x5e\x3a\x99\x87\xa3\xa0\x72\x44\x54\xf2\x22\xba\x23\x22\xcd\x93\x24\x8a\x22\xba\x58\x04\x0a\x02\x4e\x2b\x4b\xf7\xd2\x3e\xed\x29\x18\x84\x02\x6b\x33\xb0\x62\x7a\xcc\x65\x89\x4e\x36\xaa\x52\xdd\xfc\x8b\xff\x4b\xe2\xf1\xed\x0b\xa3\xb6\xdb\x63\x51\x21\xe9\x3c\x7c\xed\xfd\xed\x8b\x17\x38\x08\x40\x65\x4a\x30\xe9\x46\x30\x07\xe4\x4d\xac\x14\x9d\x8c\xd8\x90\x64\x02\x0f\x2b\xb4\x6b\x69\xa6\xac\x20\xc4\xa7\x19\x10\x18\x72\x07\xec\xc1\x8b\x7d\x14\x6a\x81\xbf\x39\x90\xfb\xe6\x3d\xdc\xdf\xb5\x53\x8d\x5d\x3c\x61\x1a\xc9\xb3\x7b\x5e\x1f\x83\x57\xad\x86\xa7\xb7\x6d\x9a\x12\xad\xa3\x53\xbc\x61\xef\xa3\x50\x14\x47\xd9\x38\xb6\xac\xa4\x89\xb3\x24\x78\x3d\x9b\x22\x09\x73\x1e\x09\x2c\xa2\xe1\x08\x61\xb5\x86\xf5\x21\xec\xe5\x2c\xb9\x45\x81\xa5\xaf\x4d\xff\x3c\x1d\x2a\xd6\xbf\xb6\xcf\x64\x35\x29\x29\x8a\xa4\xa4\x32\x93\x20\x60\x1f\x21\x86\xd4\x27\x25\xa9\x09\x02\xdc\x8e\xc3\xd2\x38\x9c\x05\x30\xd6\x91\xd9\x24\x4e\x68\x0f\xb4\x0b\xa7\x8d\x22\xf5\x71\x98\x15\x85\xea\x21\x23\x26\xe8\x75\x11\x07\x63\xd4\xe9\xc4\xf5\xb5\x99\x64\x01\x43\x82\x16\x8b\x90\xe9\x94\x41\x98\x1a\x9a\x1d\xa9\xc8\xfa\x98\xca\xbf\x9f\x40\x55\x66\xf9\xac\xce\x10\x8a\x16\x2e\x28\x9f\x77\x22\x5d\xb1\x44\x78\x47\x89\x0c\x35\xb9\xf2\x71\xb3\x26\x4e\x62\x71\x2b\x6b\xa9\x94\x8e\x08\x6f\xef\xbe\xd8\x51\xa2\x3e\xd5\x1e\x4d\x3f\xa5\x3d\x9a\x9a\xf6\x54\x73\x60\x26\x08\xc3\x9b\x47\x99\xfa\xfb\xe6\xa1\x9e\x1f\xcc\xe0\xb0\x54\x07\x50\xd0\xad\xc5\x41\xb7\x78\xaa\x13\x68\x5a\x61\x65\x94\xdb\xc7\x52\x07\xf2\x6c\xd6\x8c\x6b\xf4\x32\x8a\x2a\xc8\xb9\xf7\x64\x3f\x35\x96\xde\xc5\x12\x51\x14\xa5\xd6\x76\x28\x2f\xcd\x83\x22\x65\x3d\x44\xff\x0d\x36\x54\x4a\x3a\x55\x0b\x82\x3f\x7c\x77\x14\xb1\x99\xea\x13\x55\xf5\x88\x42\x8a\x85\x7f\x96\xa2\x32\xc9\x61\x45\x52\xd1\x7a\xfc\xe1\xf3\x6f\xea\x9a\x93\xbb\x32\xe1\x15\xb3\xa5\xfd\xe1\x48\x6e\x43\x16\xd1\xde\x9c\xcd\x43\x64\x4e\xac\xb0\xc1\x5e\xeb\xb5\x70\x9e\xaa\x42\xf2\x99\xd6\xe7\x35\xda\xda\xc5\x69\x44\x87\xc2\x98\xc0\xa4\x3e\x1f\x4e\xa7\x61\x2a\x39\xe0\x28\x92\x08\x11\x6d\xed\xb4\xae\x39\x89\x3f\x2c\x25\x2f\x0a\x31\xcb\x35\x33\xba\xb5\xab\x99\x51\x08\x46\xd1\x2a\xde\x1f\x4c\xee\x12\x4f\x72\x88\xb4\xcd\xe3\x21\x9d\x4e\x37\x41\x0f\xb1\x3e\x9a\x28\xed\xbb\xff\x4e\xac\x46\x1d\xfb\x82\xa1\x3d\x5a\x0b\x4d\x55\x7b\x5b\xce\x9a\xf5\x40\xbe\x78\x36\x55\x0e\xca\x16\xd5\xe8\x4a\xac\xd3\x22\xcb\x3f\x0d\xe7\x0a\xf6\xf0\x34\x12\x25\x94\x13\x1e\x0b\xe7\xed\xf0\x8a\xfc\x2c\xdd\x93\x74\x5a\x3f\xad\xae\x2b\x85\x75\x35\x92\x5b\xb5\xaa\x8c\x8b\xaa\x1d\x85\x11\x5d\xf2\xc5\x42\x45\x72\xd5\xd0\x0e\x85\xbc\x65\xec\x95\xdc\x6a\x34\x8c\xe3\x7b\x53\xdd\x58\x7f\x02\x5c\x8e\x3e\x68\x6c\x06\x1d\x6b\x1d\x6c\xef\xe9\x69\x89\x36\xa8\xb9\xee\xab\x8e\x36\x3a\xb2\x6c\x88\x60\x22\xfe\xfa\x7b\x32\x25\xae\xc9\x21\xe0\x1a\x74\xa6\x19\xdb\xed\xa4\x82\xc7\x71\x2e\xd8\x41\x6d\x3a\xf8\x5a\xdc\x15\x12\x77\x83\xff\x2b\x9f\x03\xb9\xed\x70\x5c\x6b\x39\x5c\x7f\x7e\x08\x67\x7f\xda\x97\x64\x6c\x24\x86\x3b\x23\x9c\x46\x62\xb8\x6b\x90\x64\xc8\x71\x1a\xa5\x8b\x45\x10\x67\xe3\x40\x1e\x22\xcb\x10\xe4\x58\x0c\x32\x3f\xf5\xd7\x3b\x70\x33\xb4\xe7\x9b\xb7\x59\x7a\x36\x33\xf0\x43\xb5\x81\x5b\x4d\xb1\x15\x60\xa6\x6e\x53\xa8\xe3\x48\xd4\x88\x05\xc5\x90\x8d\x70\x16\xc5\x72\x72\x79\x14\x0f\x77\x47\x38\x89\xb4\x51\xcc\x6c\x1e\x73\x25\x9b\xb1\x48\xad\x9c\xc5\x6c\xfe\xf0\x0c\x81\x2c\x4d\x22\x64\xa2\x8f\xaf\x60\x42\xb2\xb1\x04\x77\xbe\xb7\xbd\xfb\xb7\xa4\x9f\x18\xc1\xa2\x3c\xcd\xd0\x32\xcc\x70\xdc\xbc\xb5\x0d\x26\x96\xcc\xd1\xad\x66\x61\xa5\x32\xa2\x9a\xe8\xb4\xaa\x9a\x00\xc6\x70\x46\xf8\x0d\x69\xfa\xa8\x24\xee\x4d\x5f\xef\x49\xfc\xe1\x2a\x23\x0d\x8e\x88\x9f\xcd\xc4\xc5\x0c\x6a\xcd\x90\xb1\x5e\xc8\xd2\x27\x9a\x7c\xa7\x67\xb7\x76\xd3\xaa\xda\xca\x96\xaf\x7e\x21\xf1\x87\x0b\xb2\xae\x02\x8a\x16\x23\xac\xc2\xe2\xf8\x47\x11\x04\x4e\x1e\x9c\xff\x38\xd8\xe3\xa6\x64\xdf\xc6\xbd\x52\xa5\x59\x13\xba\xf8\x0b\xba\x9e\xd5\xbe\x3d\x7d\x44\xf1\xda\xdf\x7d\x2d\xbe\x2f\x5f\x2c\xea\xfa\x57\x57\xbf\xbb\x43\x04\x18\xc9\x72\x64\xea\xa6\x26\x98\xc3\x07\xf2\x90\x85\xdc\xdc\x3f\xa9\x6f\xef\x6d\x92\xca\xc8\x0b\x88\x48\x22\x81\x0f\xd9\xc8\x29\x7b\x3e\x85\x3d\x50\xd3\x86\x20\x8c\x35\x6e\x05\xdc\x0c\x4a\x15\x5b\x2c\x84\xe7\x61\xc0\x57\x81\x53\x6f\x9e\x46\xd9\xc9\x67\x8f\x88\xaf\xf3\xf6\x68\x89\x87\xa8\x91\x78\x08\x23\xd6\x27\x2d\x3f\xa0\x89\xbf\x0c\xa2\x76\x19\x20\xe8\xc8\x08\x2b\x2f\x91\x21\xb7\xc4\x00\x59\xae\x82\x88\x3d\x13\xfe\x64\xc7\x90\x9a\xcb\x5d\xef\xbc\x3d\xfd\xd7\xdf\x6d\x16\xb1\x89\x75\x09\x96\xfc\x95\xa7\x2c\x5d\x9a\x6b\xcf\x6a\x30\x5d\xf8\x8c\x78\x32\xa9\xbb\x3b\x6d\x3b\xa0\x05\x24\xd8\x79\x94\x0a\x9d\xdb\x76\x75\x2d\x2f\xff\xad\x90\xbc\xf2\xea\xd2\x8a\x99\xb6\x39\x00\x1a\x1c\x62\x74\xe6\xef\xf5\xf5\xd6\xbe\x5f\x0c\xe7\x8c\x6f\x43\xe4\xc8\xa6\x00\x66\x46\x0e\x78\x1d\x8f\x3f\x5c\xe7\x3c\x6d\x8a\x45\xf6\x2c\x5e\x4f\x07\x39\xe7\x24\x15\xe7\x79\x7a\xcc\xd8\xbc\xc6\xfd\x9c\xe9\x04\x57\xc0\x25\xfe\xce\x24\xff\x8d\x49\xef\x9a\xdc\xd0\x42\xbc\xd0\x5c\xbd\x52\xc4\x33\x49\x27\xc5\x6f\x90\xa5\x0f\x48\x4e\x9d\xa4\xb3\xa6\xa3\xdc\x7e\xd4\x32\xaf\xbc\xe0\x5c\x0b\xca\xee\x0b\x5d\x62\x72\x49\x67\x84\x67\xb5\xad\xdc\xc6\x99\xfa\xaa\x09\xf9\x38\x1d\x93\xa4\x5a\x3e\x2f\x7c\x51\x65\x93\x58\xb2\xec\x75\x8d\xc2\x97\x86\x71\xb1\x74\x4c\x3e\x8d\x4f\xf0\x95\x89\xf2\x34\xf0\xce\x78\x77\x34\x88\x5e\x9e\x66\xb7\x74\x2a\x5c\x5e\x53\x84\x1d\xb0\xce\xd2\xb1\x03\x98\x28\x00\xf9\xac\x34\xb0\x0a\xa0\x0b\x75\x8b\x93\x4a\xc9\xc7\x4f\x64\x7e\xd6\x9c\x14\xc8\xa8\x20\x13\x67\x11\xb6\xc2\x5b\xb5\xba\xcd\x6a\xd6\x4d\x27\x2a\x99\x90\x6b\x96\x37\xcd\xd3\x7c\x6c\x98\xa3\xb8\xe5\x4c\x88\x06\x64\x34\x1f\x1b\xea\x5e\xd3\x74\x12\x11\x9b\x8d\xf5\x3c\x4f\x23\xd2\x73\x3b\x36\x22\xbd\x7f\xe7\x24\x27\x99\x2c\xc3\xb3\xbb\x39\xf8\xd8\xfd\x97\x7c\x55\xa4\x3c\xe4\x25\xa3\xb5\xd4\x61\x10\x74\x41\x5c\xc5\xe3\x74\xc2\x66\x21\xea\x1a\x9f\xa4\x10\x68\x58\x25\x0d\x0f\x7a\x01\x0e\x02\x79\x3a\x95\xdb\x35\x29\x96\x86\x2e\xff\xad\x76\x38\xbe\xe4\x71\x9a\x51\xfb\x0e\x5c\x36\x03\x1c\x80\xa3\xc7\xb9\xf9\x65\x32\x72\xe2\x78\xd4\xb2\xa3\x37\x99\x96\x8a\x5e\xe7\x19\x7e\xd4\x8f\xd0\x73\xdf\x75\xc8\xd2\x37\xf2\x18\x28\x88\xa6\x58\x44\x96\x98\xa5\x83\x74\x52\xe2\x33\x58\x24\x94\x75\xfc\x34\xc9\xb3\xdb\xfd\xec\x21\x1d\x9f\x5d\x67\x84\xdf\x11\x9e\x49\xca\x5d\x56\x92\xd3\xbb\x54\x69\x2a\x78\xaf\xf0\xdb\x7c\x3d\x21\xe2\x96\x4d\xfa\x01\x4b\x75\x68\x10\x68\xad\xd4\x95\x99\xf4\x16\x98\xa7\x90\xad\x28\x8a\x17\x8b\x15\x7d\x63\x70\x67\xf2\x7c\xc1\x12\x1f\x37\x78\x9e\xd6\xa1\x45\x01\x01\x72\xc3\xe5\x2a\x5b\x16\x88\x6e\xe5\x33\xbc\x5e\x73\xf2\x54\xad\x6f\xcf\x47\xaf\x71\x4b\x63\xdd\xe7\xdb\x95\xeb\xb5\xcc\x8b\x2d\xa7\xd1\xce\xeb\xf4\x7b\xf2\x3a\x05\xaf\xc2\xd4\x6f\x39\x75\x2d\x17\xf5\x18\xc2\xe8\x31\x38\x42\xcb\x12\xe9\xa3\xbd\xd7\x9f\x2b\xa1\xce\xe7\xc8\x17\xb8\x69\x96\x1c\x3d\xa5\xe7\x4a\x91\x93\x36\xa7\xc8\x41\xad\xb4\x14\x99\x2d\xd3\xc1\x99\xde\xc6\x63\xc1\xf8\x03\xcc\xc1\x68\x49\x9b\xd3\xe8\x64\x90\x2e\x69\xc5\x1a\xe8\x02\x92\x3a\x55\x8f\x36\xc4\xc6\x27\xa5\xfb\xfc\x8c\x19\x74\x12\x36\x8e\xee\x31\xe9\xdd\x47\x03\x00\xe7\x38\x9e\x91\x84\xfe\x87\x44\x17\xf2\x67\x9c\xdd\x12\x2e\x7f\x9d\xc1\xad\xa3\x3f\x7d\x94\x3f\xc0\x72\x6b\xfa\x10\xed\x83\xf8\x6a\x42\x78\x36\x66\x9c\x44\x97\x50\x70\x4e\x45\x0c\x45\x3f\xac\x60\x53\x6f\x88\x50\x79\xa7\xd6\xb7\x17\x77\x55\x56\x73\xc0\xd9\xe6\x4d\x67\x7e\xd3\x1a\x05\x5e\x0c\xdb\x57\xa3\x17\x37\x5a\x5b\x95\xf6\x20\x74\x58\xb8\x4b\x5e\xd5\xea\xda\x2e\x94\x41\x80\xba\x88\x28\x0e\xb6\x95\x13\x7b\x1c\xbd\x08\xb7\x17\x57\x8b\xdf\x7a\x8b\xdf\x32\xd4\x0d\x7b\x68\xef\xc5\x0d\xce\xa2\x17\xe1\x7f\x2f\x7e\x7b\x81\xc2\xe1\xfe\xf6\xff\x1b\xa1\x17\x37\x38\x5f\xab\x17\xa7\xf9\x8d\xab\x7b\xd7\xec\xb4\x3d\xde\x13\xec\xfd\x7c\x4e\xf8\x41\x9c\x91\x10\xf5\x83\x60\xe9\xdd\x92\x59\x43\xcb\x82\x1d\xb3\x7b\x53\x47\xab\xc7\x92\xe8\xc5\x7f\xcb\xf1\xeb\x91\xe3\x71\xf4\x22\xec\xa1\x9a\x19\x4d\xf5\x8c\x16\xbf\xf5\x50\x38\x8c\xb7\xff\x03\x93\x9a\xac\x9e\x94\x63\xf0\x1b\xa7\x12\x5c\x05\xdd\x9a\xe9\x60\x1e\x55\x77\x83\x59\xcd\x6e\x98\xee\xa5\x95\x3a\x68\x89\x53\x27\x55\x7c\x11\xd4\xf2\xa0\x92\x03\x05\x36\xd4\x42\x2b\xc1\xc2\x81\x6e\x8c\xb9\x97\xfa\x5b\xb9\xb2\xbf\x08\xdc\xf7\x69\x23\x68\xbd\xb1\x68\xd0\xde\x46\x2f\x00\x50\xbf\x4d\x46\x1a\x0d\xba\x12\x64\xf3\xe8\xc5\xf6\xe2\xb7\xac\xfb\xe2\x06\xcf\x36\x44\x89\x5b\x1c\x7c\xb1\x7b\xf5\xc5\x4b\x6f\x40\x73\x1c\x5c\x05\xa8\xb2\xb4\xf8\xce\x21\xa0\x1c\x42\xbe\xb3\x73\xb0\xb3\xfd\x5b\xbe\xf3\xf2\xcb\xb7\xb0\x70\x0f\x1b\x76\x7d\xb7\xc1\xc4\xaf\x2b\x13\x97\x3d\xde\x6c\xd8\xe3\xb5\x9b\x6c\x79\x76\x85\x5c\xe9\x2e\x69\xf1\x4e\xab\xd2\xc8\x8b\xbf\xfc\xdf\x70\xb8\xb3\xfd\xdd\xa8\x0b\x48\x5c\x12\x93\xeb\x9b\x60\x6f\x1e\xf3\x8c\x1c\xa5\x22\x4c\xf1\xee\x0e\xda\xde\xed\xf3\x6e\x17\xb3\x88\x5a\x91\xee\x9e\x18\xd2\x91\x11\x8b\x69\x41\xac\x3a\xf9\x9d\x70\x80\xed\xb1\xbe\x96\x9a\xb0\xbd\x40\xd1\x3c\x41\xdf\x2a\x27\xd8\x5e\x10\xf4\xd5\x11\xa4\x1c\x09\xfd\x64\xdb\xbe\x39\xd4\x56\x51\xf1\xc0\xd1\x62\x51\xa6\x42\x7e\x78\x89\xc0\x40\x60\x9d\x9b\x14\xef\x22\x84\xaf\x42\x62\xed\xdf\xd4\x18\x10\xe8\xcd\x41\x41\x61\xc7\x31\x28\xac\x83\xda\x47\x2f\x24\xa6\x7a\x65\x2e\xbc\x32\x37\x60\xc8\x4c\xbc\xaf\x67\xde\x57\x56\xf9\xfa\xb1\xc0\xc9\x94\xbf\xee\x7b\x5f\x27\x95\xaf\x97\xde\xd7\x59\xe5\xeb\x07\xef\xeb\x83\xf9\xca\x55\xda\xd7\x72\x8c\xfe\x9e\x02\x40\xa7\x53\x77\xbf\x50\x92\x85\xea\xbb\x03\x2b\x7e\xbc\xef\x3f\x8e\x59\x3a\xa5\x37\xb9\xbd\x67\xfc\x5b\x67\x17\xdf\x73\x2a\x88\xf9\xa4\x2e\xe0\xea\x25\x34\xd0\x61\x98\x97\x38\x61\xe3\x3f\xd6\xe2\x33\x93\xbe\xf7\x46\xa1\xb3\x5c\x62\x43\x06\x3c\xcb\x94\x3f\xda\x29\x3b\xd2\xe3\x59\x1a\xbe\x70\x0d\x1b\x22\xe6\x59\xda\x3d\xb3\xed\x3a\xa2\xe7\x59\x1a\xbe\xb4\x0d\x1b\xd2\xea\x59\x9a\xdd\x77\xcd\x5a\xaa\xec\x59\x1a\xfe\x60\x1a\x06\xb7\x95\x56\x85\x38\xae\xa5\x7d\x3f\x9b\x80\xd6\x51\x6f\xa5\x4c\x37\x64\xa9\x24\x79\x95\xaf\x8e\x58\x28\x94\xa8\x95\x80\x0e\xc9\x68\x69\x33\x08\x19\x56\xc0\x38\xf9\x93\x74\xcc\x40\x46\xf0\xd9\x26\x77\xa4\x9d\x5d\x28\x4b\x07\xaa\xb3\xa3\xd9\x3c\x59\x33\x65\xac\x8e\x95\x3f\x9d\x12\x1e\x11\x1d\xbd\x50\x52\xe6\x3b\xab\xc4\xcd\x6a\x4e\x55\xa1\x3f\xf9\xe1\xe5\x57\x5f\x79\xa1\xf6\x40\xc4\x10\x06\x67\x73\x59\xbc\x2d\xdb\x68\xb3\x3b\xc2\xdb\xdf\x6e\x5f\x53\x91\xf5\xda\x3f\x32\xd1\x86\x00\x7b\x26\x6a\x1e\x8f\xc8\x42\x54\xae\xab\xed\x97\xdf\x7f\xff\x6d\xcb\x1b\xa9\x0d\x5b\xee\x94\x38\x2f\x5f\xa7\x55\x05\x50\xea\xfc\x0c\x0a\x7c\x35\x9d\x86\x41\x9a\x4b\x74\x74\xd7\x2f\xed\x74\xe8\x0f\x2f\x77\xbf\xfc\xe6\xcb\x6f\x5f\x7d\xfd\xe5\x37\x75\xb3\x20\x3c\x4e\x27\x6a\x06\xaf\x5e\x16\xa6\x40\xd5\x14\x2a\x43\xa4\x2a\xfe\xb7\x02\xa9\xff\x55\x0d\x70\x89\x45\x6f\x5e\xb6\x49\x57\xa0\xdc\xde\x35\x61\xca\x55\x8d\x21\xe9\xee\x8e\xaa\x83\xba\xe4\x0f\x34\xbd\x69\x0b\xd6\x86\x76\xda\x4c\x0f\x92\xa6\xed\x39\x9b\xe7\x49\x2c\xc8\xa4\x9d\x25\x4c\x40\x9e\x61\x12\x4f\xda\x6c\xda\x8e\xdb\x9c\x80\xb4\x46\x7d\x2a\x8d\x1c\x7a\x8a\x84\x95\xe3\x37\xa0\x97\xa8\x22\xfa\xdd\x67\x44\xf2\x83\x23\xc8\x81\xff\xe6\xfd\x8f\x2e\xab\x8e\xfa\xb9\xb5\xdb\x82\xcf\x2e\x45\x95\x19\x51\xc2\xee\xb7\x13\x72\x47\x92\xcf\x38\xae\x0b\x11\x8f\x3f\x44\xf2\x2f\xe3\x71\x51\x33\xda\xb4\xeb\xf4\xa6\x8b\xe5\x15\x1b\x0d\x47\x6a\xd3\x81\xc8\x78\xe5\xa6\x2b\xeb\x78\xbc\x68\xae\xb2\xb2\x0e\xc6\xa1\x9a\x95\x18\x2e\xfc\x58\x41\xb6\x58\xb7\xdb\x22\x49\x46\xb4\x41\x0c\x1f\x8a\x51\xcb\xf5\x9f\x2e\x7d\xa5\x0e\xb4\x34\x14\x23\x79\x2e\x28\x8d\x11\x27\xd3\x46\x15\x90\x2a\x4d\x46\x50\x92\xfb\xda\x10\xe2\x4f\x78\x48\x46\xde\x98\x5d\xd7\x2e\x77\xb4\x81\x64\x4d\xfa\xb5\xe2\xd1\x55\xf2\x99\x1b\x9a\x00\xfc\x77\x64\x1c\x91\x55\x90\x84\xf8\x9a\x35\x47\xbd\xdc\x57\x2a\x9a\xbf\x6c\xc3\x1a\x78\xc8\x19\xc1\xf3\x5b\xce\x3c\x9b\x4e\xb1\xba\x9e\xf0\x2a\x7a\x95\x3c\xde\xb5\xbe\x1a\xe6\xaa\xe2\x98\xcd\xcb\x16\x85\xa6\xa8\x5c\x13\xfb\xac\x20\x0e\x77\xf2\x79\x7c\xdf\x54\x03\x12\x0f\x28\xfa\xbd\x58\xaa\xb8\x88\xae\xc1\x4a\xf0\x32\x3b\x4e\x13\xc3\x4c\x96\x4a\x48\xda\x94\x15\xdc\x15\xf5\x56\x56\xee\x15\x5e\xde\xa6\x29\x9b\xac\x0e\x73\x6d\x0a\x7a\xf2\xca\x8c\xce\xe6\x09\xd9\x9e\xb0\xd9\x0b\x17\xa7\xf3\x73\x08\xc0\x32\xc2\x55\x8c\xde\x37\x39\x4d\x26\x84\xd7\xdb\xb9\x82\x81\xb1\x8e\xe7\xab\x74\x02\xca\xca\x14\x93\xde\x29\x9b\x90\xc3\xb3\x93\x4b\x4e\xc8\x01\x73\x47\x69\xd1\xe5\xa2\x20\xf3\x30\x48\x4e\x3d\x14\x23\x9e\x61\xba\xd0\xc2\x77\x93\x04\x23\x44\x68\xb1\x00\xb5\xae\xf2\xd9\x4a\x25\x3d\x2b\x32\x1d\x34\x9b\x62\x1d\xf9\x19\x2c\x28\xcb\x9b\x81\xa9\x88\xbf\xef\x33\x92\x90\xcc\xb8\x7e\x16\xf3\x39\xb2\x1e\x4d\x33\xc2\xc5\x4f\x97\x27\xc7\x6f\x20\x92\x56\xbd\x29\xae\x42\x49\xb3\x1a\x3a\x31\xc5\x79\x7c\x2f\xeb\x5d\xe8\x40\x98\xce\x69\x95\xe8\x56\x55\x8b\x60\xc7\x8a\x55\x58\xe7\x03\x96\x8e\x39\x11\xe4\x0d\xcb\xd3\x49\x06\xc1\xcf\x28\x92\xc3\x50\x2d\x56\xc6\x58\x42\xe1\xd2\x00\x74\x71\x50\x78\xc1\x64\xf7\x85\xe0\xf4\x3a\x17\xa4\x22\x52\x22\x85\xcf\xb0\x13\x97\x98\x2e\x43\xde\xab\x59\x3f\x89\xcf\x4d\x4b\x6b\xbd\x63\x3c\x4f\xe7\xb2\xd3\xac\xb7\xce\xc6\x40\xce\x18\xbb\x87\xf2\xd8\xaa\x8d\x92\xac\x96\x19\x79\x48\x99\xb0\xf1\x87\x43\x32\x87\x98\x82\xa2\x76\xfd\x53\xb3\xfe\x34\x4a\xab\xeb\x4f\x7b\x57\x57\x6c\x4e\x52\x68\xa8\x1c\xe0\x49\xdf\x2e\x44\x81\xb0\x27\xe2\x9b\xd3\x78\x46\x80\x7a\xba\x3c\xba\x3c\x1e\x04\x5b\xe0\x73\x1c\x5c\x1c\x9c\x1f\xbd\xbb\xb4\xbf\x2e\x7f\xd5\x9f\x8c\x5c\x45\xc7\xc4\xae\x8c\xb9\xdb\x35\x01\xc5\xe3\xf9\x9c\xa4\x93\x03\x36\x83\xb5\x0a\xfe\xd2\xbd\xee\x07\x5d\xde\x0d\xfe\x12\xa0\xa5\x77\x84\xfb\x83\x75\x1b\x42\xae\x52\xef\xea\x6a\x9c\xb0\x8c\x6c\x38\x8f\x62\xdb\xae\x05\xaf\x71\xbc\xd9\x5c\xb7\xb7\x9b\x66\xdb\x34\xd7\x6d\x6f\xae\x6a\x26\xaa\x84\xdc\x37\x51\xd5\x86\xf5\x89\x25\x89\x22\x30\x79\xd4\xc3\x34\xbf\x60\x98\xf2\x87\x35\xbd\x29\x4c\xdc\x75\xe8\x1f\x33\x06\x6d\x1a\xc6\x7d\x93\xcc\xf8\x5f\x02\xa4\xfa\xde\x7f\x63\x3a\x78\x34\x46\x61\xc6\x70\x38\xf8\x5e\x15\x62\x3f\x6c\xef\xa2\x40\x48\x92\x3b\xd2\xf7\x62\xc8\xba\xbb\x98\x75\x5f\x21\x70\x5c\x0f\xbe\x17\xd7\x6c\xf2\xf0\x43\xd0\x15\xdd\xe0\xfb\x17\xfa\x07\x5a\x06\x50\x63\xaf\x61\x18\xed\xbf\x04\xa8\xbf\xfe\x74\xe2\xa7\xa6\xe3\x5d\xce\x95\xb3\xc8\x87\x3d\xa6\x38\x46\xfe\x7a\x5d\x16\x94\xfe\x06\x21\x54\x02\x84\xda\x55\xc3\x71\x14\xa6\x51\xa8\xf6\x07\xb2\xed\x6a\x19\x60\x48\x23\x0e\xa4\xd1\x05\xbd\x4e\x68\x7a\x83\xf6\xd2\x5e\x12\x67\x02\x42\xa4\xf7\xe5\x51\x4e\xee\x28\xcb\x33\xf3\xd9\x88\x15\x2d\x1a\xb0\x02\x1a\x30\x1f\x0d\xd8\x5e\x1d\xc0\xe4\x04\x0a\x00\xeb\xaf\x01\xf9\x30\xee\x74\x5e\x81\x81\xac\xbc\xc6\x2f\x1f\xe6\x44\x67\x52\xaa\x96\x5f\xfc\x05\xc2\x22\xaf\xd1\x31\xc0\x15\x76\x63\xcd\x8d\x64\x6f\xae\xdb\xb8\xb8\x22\x12\x8b\x98\xb1\x59\x2a\x7c\x28\xf4\xea\xb7\xeb\xed\xf3\xb5\x0a\xc9\x71\xc9\x13\xa8\x32\x2c\x7b\x53\x1b\x04\xef\x74\x82\xcb\x37\x67\x87\xbf\x06\x86\x8d\x2b\x2d\xbe\xfc\xfe\xd3\x60\xff\x70\xd5\xf7\xb7\x67\x67\x97\xcd\xdf\xd5\x14\xbd\xd1\x84\x01\x6c\x99\x00\xa9\x8b\xae\x94\x17\x8c\xa6\x37\xd6\xfe\x4b\xe9\xed\x4d\x35\x90\x34\x17\xa7\xef\xb5\x5a\x58\x98\xa5\xf6\x8f\x3a\x27\x33\x56\x73\x15\x6b\x9a\xcb\x19\xd4\x77\x3a\x61\x1a\x29\xed\x7d\x81\x46\x98\x81\x3f\x47\xf1\x86\x0e\x54\xbc\x09\xb7\x05\x8b\xd7\x75\x18\xc8\x1d\x1a\x60\x8e\x30\x2d\xd2\x0e\x02\x33\x9c\x16\xc7\x5f\x19\xa3\x3f\x0b\x15\xa6\x0f\xa7\xf2\x66\x3f\x25\xf7\xba\x84\xa6\xef\x50\x99\x3a\x65\x20\xbc\xd8\x1e\xb3\xd9\x9c\x26\x45\x39\x4e\x23\xa1\x7a\x37\xab\x64\x91\xf7\x7e\xcf\x39\xbb\xe1\x71\xa1\x88\x11\x12\x35\xe4\x4f\x69\x32\x82\x8d\x1d\xf1\xf3\x28\xe7\xdd\x0f\x80\xc7\x0a\xb4\x54\x8e\x2c\x0b\x1e\x8b\xa5\xa2\x4a\xfa\xb6\xdd\x58\x23\xaf\xd4\x30\x89\xa2\xb6\x67\x44\xc4\x75\x55\x92\x4a\x15\x26\x6e\x25\xcc\xaa\x45\xc7\x95\xa2\x89\x82\xa2\x2d\xfa\x09\xc4\xba\x5e\xa4\x0b\x11\x0b\x58\xd3\x2c\xfa\xa7\x7d\x1b\x5f\x27\x24\xfa\xbb\xa4\xe8\x45\x2c\xe8\xd8\xa6\xf6\x29\x11\xf4\x9a\x62\x71\xce\x04\x98\x46\x62\xf8\x12\x64\x46\xfa\x64\x26\xe6\x12\x3d\x6f\x99\x00\x31\xae\x0b\x1c\x47\xa0\xe1\xb6\x21\x44\x71\x16\x91\x9e\x4a\x76\x6d\x11\x7b\x6f\x98\x93\xf0\xdb\x1d\x9c\x21\x3c\x27\xe1\xa3\x5f\xbc\x1f\x2f\x16\x53\x9c\xc4\x0f\x2c\x17\x7d\x86\x63\x21\x78\xa6\xf2\xc6\xcc\x63\x1e\xcf\xb2\x3e\xc7\xb7\x71\x76\xdb\x4f\xf1\xb5\xa4\x2c\xb2\x3e\x5d\xa2\x51\xdf\xb5\x77\x57\xdb\xde\x8a\x66\x62\x01\x79\x38\xfb\x5b\x3b\x7e\x8b\x4b\x9b\x3e\xfd\x02\xc0\x05\x64\xcc\x2f\x54\xdc\x2a\x1e\xee\xbe\xee\x73\x74\xe5\x2f\xc1\x24\x1a\x10\xb0\x17\x17\x71\x34\x95\x4f\x06\x7b\xb4\x2d\x45\xf4\x4e\xbe\x5c\xbd\x0c\xef\x48\xf8\xf7\x8b\xb3\xd3\x1e\xe8\xd7\x42\x52\x0a\x15\x9a\xde\xf3\x78\x6e\x32\x05\xa1\x90\xbb\x64\x80\xa8\x17\x67\xc7\x00\x42\xe3\xb0\x0f\x69\x2b\xd4\xab\xb7\x8c\x5f\xc6\x37\xd1\xad\x44\x85\x87\x54\xc4\x1f\x0f\xd4\xe2\xc9\xce\x0f\x58\x2a\x0a\xd7\xb8\xc7\xe4\x3d\xea\x7d\xdb\x27\x58\x79\xa8\xf7\x05\x84\xf0\xae\xab\xe3\x7c\x81\xfc\x94\x9e\xad\x52\xa4\x9e\x20\x66\xf2\xb8\xf3\x7d\x79\x43\x65\x1f\xf4\xde\xcc\xd4\x76\x2a\xdf\x7e\x24\xa1\xfc\x03\x7e\xaa\x02\x99\x51\x70\x18\xc5\xdf\xa9\xa8\x1f\xfc\xd3\xc3\x68\xee\x70\xdf\x75\x88\x8a\x93\xde\x67\x9f\xa1\x3b\x7f\x7e\x0a\x36\xc5\x4e\x0d\x06\xd5\x2c\xd8\xcf\x98\xf4\x0e\x15\x3f\xac\xbe\x92\x4b\x3a\x23\x26\xf9\xd6\x21\x49\xc8\x4d\x2c\x48\x44\x7a\x27\x47\xa7\x47\x27\xfb\xc7\x57\x07\xfb\xef\xf6\xdf\x1c\x1d\x1f\x5d\x1e\x41\xd6\xee\xc3\xc1\xdb\xfd\xf7\xc7\x97\xe5\xd7\x7f\xa7\xe2\x9d\x1a\x60\x4d\x9f\xa4\xb7\xea\xdb\xe0\xe4\xdd\xe5\xaf\x57\x6f\x8e\xcf\x0e\xfe\x21\x5b\xfa\x85\x4b\x5a\x67\x62\xa4\x08\xa4\xf7\x2e\xe6\x82\xc6\xc9\xa1\x3c\xde\xc0\xba\x10\xa4\xaa\xa4\x77\x21\x26\xc7\xf4\x1a\x92\xcf\x5f\xe7\x37\x7a\x32\xb2\xc2\xe9\xd9\xe9\x20\x22\xbd\xf7\xa7\x3f\xed\x9f\x1e\x1e\x0f\x0e\xe5\x64\x00\x3a\xbe\xb4\xbf\x61\x26\x8f\x93\x87\x34\x9e\xd1\xb1\xda\x01\x72\xaf\xeb\x17\x97\xf1\x8d\xfc\x35\xe7\x64\x1e\x73\xb2\xcf\x6f\xe0\x20\x50\x1b\xc9\xfc\x8a\xcd\x15\xfc\x13\x63\x1f\x20\x6b\xae\xba\x31\xcd\x4f\xdd\xd4\xc5\x98\xcd\x89\xab\x7d\x10\x43\x92\xc4\xad\x5d\xac\x62\xfa\xaa\xd2\xe6\xab\xcd\xee\xb3\xb5\x83\xef\x15\x68\x40\xb5\x44\x93\xe4\x50\x99\x52\xf6\xb7\x76\x95\x52\x65\x5a\x19\xfd\x6e\x61\xf4\xbb\xc5\xd1\xef\x16\x46\xbf\xbb\xe1\xe8\x77\x57\x8e\x7e\xb7\x32\xfa\xdd\x55\xa3\x6f\xc0\x36\x15\x1a\x7d\xf2\x84\x4e\x86\xa6\x60\x09\xbb\x4a\x8e\xa9\x12\xc7\xfc\x44\x92\x79\x45\x2e\x45\xa7\xa1\x6b\xa5\x50\xb0\xc0\x94\x57\x3f\x2b\xcf\x48\x1b\x85\x0d\x1c\x5f\x2b\x5a\x87\xf7\x29\xf9\x38\x27\x63\x41\x26\xed\x5b\xa8\xd5\x0e\x41\x8d\xd3\x9e\x72\x36\x6b\x07\x5d\x38\xb4\x15\x7d\x41\xa7\x0f\xa1\x40\xdd\x00\xb5\x43\xbf\x9b\xb6\x9a\x04\x99\xb4\x6d\xa2\x02\xe4\x28\x3f\xbe\xac\x74\x79\x10\xa7\x7f\x15\x6d\x7d\xbb\xb4\x95\x65\xa7\xe9\x5c\xde\x44\x2a\xdf\x59\x06\xe9\x98\x58\x2e\xda\x71\xda\x06\x11\xa1\xcd\xbc\xd1\x66\xd3\xb6\x3f\x82\x00\xa4\xac\xea\x8d\x09\x2d\xbe\x06\x10\x4d\xd1\x46\x30\x9a\x02\x9b\x02\xd2\x84\x1f\xdf\x00\x94\xa6\xab\xe7\x01\xa6\x1d\xc0\x86\xe0\x34\xa3\xf0\x01\xda\x74\xad\xd7\x41\xd4\x96\x6d\x04\xa9\x2d\xb1\x29\x4c\x6d\xda\x9d\x0d\x80\x6a\x3b\x7b\x1e\xa8\xba\x21\x6c\x08\x56\x3b\x0e\x1f\xae\xfa\xd2\x58\x03\xaa\xba\x64\x23\x4c\xf5\xf7\x4d\x21\x3a\x57\xd5\x36\x80\xa7\xee\xe8\x79\xa0\x69\xba\xdf\x10\x96\x7a\x0c\x0a\x92\x9a\x18\x2c\xc8\x62\x8b\x10\xd4\x25\x90\x2f\x56\x2e\x7c\x09\x09\x6a\x55\x07\xac\x86\xba\x2d\xe8\x8c\xb4\x6d\x2a\xd4\x36\x27\xff\xce\x29\x27\x59\xfd\xf8\x74\x83\x81\x71\x9b\xb2\x17\xc1\x6d\x81\x1d\x71\x99\x5b\xd3\x48\x00\x4d\xdd\xe3\x64\x4a\x38\x27\x1c\xe2\x26\x56\xf7\x49\x5a\x89\x3d\xb4\x47\xfb\x8f\x8a\x0f\xe9\x53\xcd\x90\x60\xc7\xb7\xf4\xa9\xcf\xc4\x14\x38\x08\x5a\xe0\x67\x16\x8b\xa9\xc7\xc6\xcd\x1d\x1b\x37\x9c\x49\xba\x2d\x27\xe1\xab\x5d\x34\x72\x25\x66\xbe\xd1\x16\x09\x5f\xed\xe0\x8a\xea\x5d\x92\x8a\xca\xe9\xfa\x62\x16\x27\xc9\x51\x2a\x20\x74\x90\xe6\x0b\x25\x87\x3c\xa1\x90\xaa\xd8\xf0\x86\x35\xc1\x3b\x74\xe1\x39\xa7\x33\x2a\xe8\x9d\x57\x18\x72\x94\xb8\xf1\xdc\xf9\x1e\xe4\x1a\x0c\xa9\xbc\x5f\x81\x2f\x82\x80\x15\x92\x33\x32\x3e\xe4\x39\x09\x77\x60\x56\xc1\x05\xac\x9e\x24\x2b\x02\xfc\xa8\xb9\xa8\x54\x71\x51\xd4\x71\x51\xbb\x4b\x28\xbd\xfb\xb5\xa4\xd0\xe5\x83\x02\xc9\xd7\x98\xf7\xbe\xb8\xdb\xf1\x01\xf3\xe0\x33\x17\xb2\x9f\xaf\xbe\x83\xb2\x5f\x7d\x8b\x33\x20\xb8\x45\x08\xbf\xbf\x2e\xd4\xba\x2e\xd7\xaa\x1d\x97\xd0\xdc\x9d\x64\xf8\x1c\x83\xa7\x86\xf6\xf2\x4b\xac\xd6\xe9\xe5\x57\x6a\x62\x67\x90\x8f\x26\x80\x67\x60\x23\x00\x8f\x81\xa5\x0b\x90\x1a\xc2\x97\xf0\xe7\xcb\x1d\x3d\x25\x6f\x3c\x37\x1e\x02\x0c\x42\xd2\xe9\x10\x9d\xb2\xeb\x52\x22\x92\xaa\xfd\x52\xf5\xf3\x2e\xcf\x6e\x0f\x2c\x8e\x05\x98\xf8\xed\x78\x59\xdb\x3d\x98\x57\xab\xd4\x8f\x12\xa6\x53\x1d\xdc\xbd\xdb\x44\x60\xd9\xeb\x06\xa6\x96\x9b\x08\xc2\xe5\x92\x1b\x0b\x5f\xcc\x22\x1b\xf2\x46\x60\xaa\x9c\xe7\xa3\x28\x62\xe6\x28\x90\xa3\xd4\x62\xe4\xa1\x4a\xb6\xa3\xec\x3c\x60\xc4\x08\x33\xf4\xe8\x5e\xbc\xfa\xce\xcb\x5a\xa3\x53\x63\x41\x4e\x2c\xaf\xc8\x2b\x89\x16\xd3\x39\x16\xdb\x19\x42\xd8\x7d\xd8\xfd\x0e\xa7\xc3\x6c\xe4\x92\xd5\xb8\x4f\x35\x30\xf1\x6b\xd6\xad\xa0\xfb\xfa\x52\x0e\xb2\xd3\x71\x2f\xbe\xdc\x29\xf6\x2b\x7f\x35\x18\x74\xee\xc9\xa5\x7c\x85\x8d\xf4\x48\x2b\x38\xd4\x18\xcc\x5e\x43\xfd\x99\x12\x27\x96\x0c\x3e\x4d\xfe\x2a\x9c\x46\x3b\x2d\x12\x96\xa3\x0d\xa9\xfe\x1f\x21\x3c\x63\x5f\x9e\x3e\x3a\xff\xac\xc0\x20\x14\xea\x07\x07\xc7\xfb\xef\x2f\x06\x41\x37\xed\x76\x95\x3d\x99\x9f\x88\x4c\xe2\xcb\xd7\xdf\x61\xb5\xfe\x5f\x7f\xab\x36\x9c\xc6\x39\x48\x69\x76\x2c\x1b\xc9\x02\x34\x52\x29\x49\x8c\x6a\xf0\x2d\xe3\x67\xd3\x23\x41\x20\xb4\xac\x22\x0a\xb5\xce\x8c\x6b\xf5\xc4\x0e\xde\xde\x45\xe8\xf5\x56\x48\xa3\x38\x44\xa8\x37\x61\x29\x79\xad\x66\x93\x45\x54\x45\xab\x6d\x31\x0b\xbd\xaf\xbf\xc1\xe3\x30\xeb\xc1\x98\x11\xce\x54\xb8\x49\xe4\xa2\xbf\xe6\xd6\x1e\x63\x7b\xf7\x75\xfe\x43\xb4\xf3\x3a\xdf\xde\x56\xcd\x25\x11\x1f\xe6\x23\xaf\xad\xe0\x58\x89\xc3\x12\xd3\x9c\x9c\xd4\x97\x72\x92\x49\xcf\xc0\x27\x44\x08\xef\x6c\x45\x51\xde\xe9\xb8\x8a\x5f\xe2\x71\x18\x0c\x4e\x0f\x21\x99\xa0\x95\xa4\x96\x9b\x55\x25\x34\x88\xd8\xdc\x40\x48\xbe\xf8\x06\x30\xb9\x64\x93\x6b\x0e\xcc\x98\xdf\x64\x58\x72\xa3\xd7\x6c\xf2\x20\x2f\xa3\x10\xc1\xfe\x19\xb3\x3c\x15\x98\x45\xa9\x8d\x95\xec\x9f\x50\xfe\x22\x60\xbb\xbb\xbf\xd6\x23\x3d\x3a\x3d\xba\x3c\xda\x3f\x96\x98\xca\xb0\x5a\x4b\x8a\x30\x57\xa7\x9f\x1d\xf0\xdb\xa3\xd3\xfd\xe3\xe3\x5f\xed\x18\xe1\xa8\x2c\x16\xf1\xdb\x72\x67\x6f\x61\x82\xa3\x92\x35\x71\x65\x5e\x74\x7a\xc9\x73\x75\x23\xd0\xe9\xdb\x38\xc9\x2c\xbf\x75\x16\x3e\xca\x52\x7d\x81\xe5\xdc\xab\xe1\x9c\x01\x0d\xd5\x9c\x8e\x2f\x06\x72\x36\x7a\x0a\xb0\x22\x76\xf8\xa5\x21\x43\x51\x6b\x48\x9b\xca\xf3\x13\xd6\x2a\x95\x8b\x4b\x96\xcb\xa2\x81\xb3\x23\x09\x88\x36\xc2\xe3\x70\x63\x29\x41\x56\x4f\x0b\x53\x40\xb8\x3e\x63\x13\x82\xe3\x88\x2a\x0d\x40\x9c\x8a\xac\x95\xdd\x53\x31\x86\x6c\x5e\x73\xf4\x38\x8e\x33\x62\x8e\xfe\xbe\xee\xfe\x38\x24\xb8\x6a\x62\x44\x7a\x6c\xbe\x5b\xa2\x26\xc4\xde\x79\x5f\x2c\x43\x81\x50\x0b\x1a\x52\xf3\xe9\x5b\x57\x2e\x40\x5a\xe8\x69\x57\x97\xf0\x91\xc0\x95\xcb\xdc\xdb\xd0\x16\xb4\xcb\xe5\x97\x33\x2f\x4d\xb1\xf2\x39\xd7\x34\x07\xad\x96\xf9\x9d\x0a\x08\x32\x03\xa7\xd8\x2e\xea\x9f\x2f\x43\x66\x06\xff\x23\x11\x2e\xd3\x3b\xc8\x18\xbc\x9e\x61\x35\xe2\xba\x26\x63\xa6\x9b\xfc\xee\xcb\xfe\x77\x5f\xc9\xf6\x70\x61\xc2\x44\x14\x47\xb6\x56\x5b\x2f\x77\xfa\x2f\x77\xfd\xb6\x4c\x4c\x0d\x4f\xf2\x49\x3e\xde\xc6\x79\x06\x41\x76\x84\x9f\x37\xee\x52\x21\xc8\x7f\x0a\x10\x90\x6f\xaa\x0b\x5f\x0b\xba\x5a\xd3\x96\x3a\xb9\x2c\x19\xee\xca\xa3\x9c\x0c\x5f\x8e\x24\xfa\x0d\x5f\x8d\x30\x8b\x38\x09\xc9\xf0\xcb\x11\x56\xf4\x29\xc2\x71\x94\x12\xc8\x6f\x2b\x7f\xe2\x60\x60\x58\x08\x90\x32\xb7\x6f\x49\x0c\x19\x97\xaf\x49\x3b\x6e\x6b\x57\x08\xa5\x4b\xd6\x3f\x6c\xb8\x88\xd8\xa6\xf2\x73\x92\x0f\x8d\xef\x4a\x3a\xd8\x53\x72\x6b\x23\x7a\x0e\x63\x9c\x2e\x16\xc3\x11\x24\x9e\x17\x68\xa9\xb0\x10\x13\xb4\x54\xcc\x8e\x3f\xff\xa3\x34\xa1\x29\x69\x00\x80\xa1\xbd\x65\xed\x34\xe2\x3d\x0a\x85\x81\xde\xa6\xd3\xf7\xa9\xa2\x1d\x27\xb8\x21\x8b\x54\x79\x90\xaa\xb6\x1b\x25\xd8\x07\x29\xeb\x0c\x5d\xe3\x34\x64\x68\x8f\xf5\x69\x98\x16\x86\x7a\xe4\xc9\xd9\x9f\x1e\x29\x80\xd0\x60\x93\x39\x10\xe0\x30\x30\x74\x10\x77\x43\xb0\x4a\x63\x4d\x91\x5b\x98\xa7\x72\x9b\x04\x03\xe5\x12\xfc\x38\xe7\xec\x3a\x21\xb3\xbe\x1c\x4a\x9c\x50\xbd\x84\x01\x86\xcd\xdb\xdf\xc1\x24\x9d\xf4\x77\x96\xa8\x2f\xaf\x28\x9c\x46\x51\xf4\x8f\xbd\x3a\xf7\x4e\xd7\xed\xb2\x9f\x9a\xbb\x49\x9e\x9a\x2f\xbf\xc3\xe6\xac\x50\x17\xc3\xae\x26\xe8\x46\xcb\xd0\x9c\x6d\x16\x1c\x40\xe8\x56\xc1\xe0\xfb\x8a\x59\x62\x9e\x6b\x62\x1e\xce\x48\x85\x25\x90\xb8\x54\x93\xc4\x2a\x6b\x69\x1e\xd1\x5e\x0a\x3f\x93\x68\xe7\x75\xf2\x7d\x6e\xac\x87\x13\x47\xab\xdd\x84\x2a\x58\x7f\x3e\x4c\x46\x08\x99\x0c\xbd\x60\xe5\x87\xa7\xd1\x58\x5f\x7f\x93\x68\x6c\xaf\x3f\x5d\x71\xa2\xca\xde\x46\xd3\xef\xbf\xff\xb2\xc5\x3a\x9d\xf0\x76\x11\x7d\x8b\x5a\x54\x3d\x7d\xa3\x3e\xcf\xa3\x54\xcb\x8b\xf7\xcf\xcf\xf7\x7f\x55\x01\x6a\x1e\xe7\x11\x1f\xee\x8c\x2c\xa9\x33\x8b\xb8\xdc\x76\x77\xd1\xce\xeb\xbb\xef\x67\x66\x90\x77\x05\x82\x52\xee\x32\x1e\xe0\xd9\xf0\xae\x96\x76\xfc\xf6\x4b\x9c\x85\x73\x84\xb3\x30\x47\xf8\x16\x68\xbd\xc2\x19\x5d\x22\x2d\xeb\x91\xad\x46\x11\xa6\x89\x3e\x1f\xf7\x44\x0d\xee\x71\xab\x29\xf3\xb2\xa1\x57\x70\x8f\xd7\xe3\x9e\xde\xb1\x8a\xdb\x6e\x87\x97\x67\x87\x67\xfd\xb6\xb8\xe5\xf2\x1c\xb9\x26\x42\x10\x8e\xaa\x18\x39\x0b\xb9\x05\x83\x41\x34\xc9\x0d\x9a\x33\x41\x23\x97\x9e\xfe\xa1\x12\x05\x3b\xc9\xcb\x7a\xe7\xc2\xc4\x8a\xf0\xe1\x6c\x00\x5d\x9b\x3c\x0f\x0d\x16\xc6\xf2\xa5\xa4\x2f\xb2\x88\x1b\x2c\xcc\xa1\xe0\xa9\x46\x3b\xda\xe9\x98\x98\x85\x3f\xec\xec\xfd\xbf\x90\x6a\xc5\x19\x52\x1c\xdc\x38\x2a\xba\x74\x65\x68\xb1\xd0\x4b\x90\xed\x71\x12\x66\xb6\xb8\x0d\xef\x36\x23\xa1\x7a\x07\xc1\x06\xf4\xf0\x40\xdb\x27\x78\xd6\xb7\x5a\x40\xa6\xf8\xc4\xd8\x32\x89\xb9\x51\x02\x8e\x97\xc5\x43\x68\xaa\x75\x29\x93\x4d\xa1\x23\xb7\x56\x09\x2e\x1a\x06\x12\x2e\x4a\x19\x6b\x94\x78\x00\x21\x23\xdb\x37\xef\x24\xa8\x18\x1f\x24\x19\xc1\x49\x74\x1b\xa6\xf8\xd1\x08\x43\xfa\x65\xc2\xc7\x8a\x49\x8c\xc2\x07\x4b\x10\xf4\x15\x24\x96\x08\x8f\x23\xf5\x68\x94\xb9\x10\x17\xed\x51\x29\x19\x12\x23\x0c\x98\x44\x49\x51\x81\x3b\x97\x2f\x9c\x6c\x64\x16\xc9\x05\x1a\x23\x7c\x27\xaf\x3c\x86\xc7\x05\x49\xcb\x56\x14\xcd\xf7\xe2\x70\x8a\x27\x78\x8e\x1f\x15\xb8\x67\x06\xa8\x77\x4b\xd4\xcf\xe0\x5b\xcd\x97\x25\x9d\x86\xb9\xd9\x51\x79\xd8\x2c\x61\x52\x3f\xfb\xed\x83\x38\x4d\x99\x68\x4f\x69\xea\x4b\x3a\x83\xae\xbd\x3e\x9e\x26\x1d\xa0\x5c\xd1\x0f\xae\x1c\xc8\xb0\xc7\xe6\xaf\xf6\x34\x51\x2a\xb0\xfc\x09\xff\xed\xc2\xff\x2f\xe1\xff\x57\xa8\x5f\x28\xff\xb2\xb9\x7c\xa9\xe4\x6e\x5d\x49\x30\xe7\x72\x2f\xd1\x72\x2d\xd5\xde\x04\x4e\xd2\x93\xd5\x36\xf7\x70\xce\x47\x8f\x4b\x6d\x05\x93\xa7\xe3\x2c\x1a\x8e\xd6\xb7\xba\xb7\x36\xd5\xd0\x90\xb5\x65\x87\x86\xf4\x98\xd1\xf6\xee\x52\xc7\x70\xa7\x49\xd9\x47\xc6\x90\x4f\xca\xba\xc0\x35\x64\x5d\xe9\x24\x7b\x6a\x5b\x1c\xa6\x23\x64\xec\x88\x97\x21\xc2\xef\x54\x5e\x18\x27\x24\xfc\xdd\x9e\xc8\x4e\xc7\xba\x58\xc0\x9f\x52\x3a\x5e\xd2\x2a\x1e\x21\x10\xf4\x98\x44\x43\x32\x72\xbc\xb4\x72\xf5\x13\x7e\xde\x5b\xe2\x24\x07\xaf\xb0\x18\x72\x2f\xd7\x86\x97\xc1\xf9\x40\xdb\xaa\x50\x4b\x69\x72\x47\x69\x7a\xe2\xa9\xfe\x5b\x28\x58\x51\x94\x83\x65\x10\x24\x26\x1e\x4b\xea\x00\xc7\x11\xd3\x37\x6a\x1e\x31\x7b\xa3\xea\xc8\xcc\xb9\xc9\xe4\x1c\xcb\x1b\x95\x77\x3a\x61\x02\x37\xaa\xba\x92\x2b\xf7\xa8\x40\x8f\x63\x30\xe7\xb0\xd3\x9c\x2a\xb3\x8e\x49\xb4\xf3\x7a\xf2\xfd\xd4\xcc\x76\xd2\xed\x22\x5a\xbe\x47\xa7\xc3\x89\x77\x8f\xd2\xe2\x3d\x3a\x96\xf7\x68\xa1\x3f\x84\x13\x08\x18\x0d\xd3\xdf\xb5\x44\x08\xfc\x00\x32\x44\x3d\xea\xb3\x16\x61\x8a\x54\x8c\x59\x75\xc4\x42\x97\x1a\x44\xe1\xad\xda\x1e\x78\xae\xc5\xbd\xb8\xb8\x7c\xb7\x68\xef\x9d\xbd\x4a\x6f\xf1\x1c\xf5\x87\xb3\xf0\xd6\x4a\x5f\xcb\x4d\xbb\xd3\xbb\x6e\x0d\xaa\x67\xf6\x07\x9a\x4e\xe0\xcc\x86\xc3\x5b\x1e\xd9\x71\x3a\xb9\xbc\x25\x29\x9c\xd9\xfa\x30\x96\x67\x75\x36\x8f\x53\x9c\xd7\x78\xda\x1b\x8e\x43\x23\x81\xd5\x11\xf5\xad\xfd\x69\x49\x5b\x26\x6b\xa9\xc1\x6a\xf5\x5c\xb9\xa4\x56\x4f\xba\x72\xf6\x22\x72\x2a\xf4\xa0\x6f\xa2\xc5\x97\x05\xe2\xdc\x13\x88\xc3\x6d\xab\x0e\xfb\xa5\x23\x30\x9b\xef\x90\x14\x9b\xfb\xd8\x0a\xdd\xcb\x47\x7e\xbe\xc7\xc2\x1c\xf5\xe3\xbd\x38\x44\xfd\x8c\x14\x54\x26\x41\x37\xed\x06\xed\xa0\x4b\x71\xa6\xd8\x5d\x9c\xf5\x48\x3a\x91\x44\x08\x18\xb3\x15\x56\x4a\xaf\xd3\x5b\x4e\x48\xd0\xaf\x51\xc4\x58\x0d\x02\x99\xb4\x7f\xa2\x37\xb7\xc7\xe4\x8e\x24\x50\x29\x97\x00\x50\x9e\x76\x3d\xbf\x15\x54\x68\x58\xdb\x27\xe4\x71\xa2\xba\x50\x06\x4c\x0a\xd7\xe4\xb6\x9b\x72\x42\x7e\x8e\x39\x6c\xbc\xb1\x2a\x0b\xbb\x48\x4d\x3f\xce\xac\x5a\x49\xa1\x91\xa4\xde\x77\x77\xbe\xd2\x4c\x5e\x2f\x9f\xdf\xc5\x3c\x1b\xc6\x23\x34\xb2\xf3\x5a\x6a\x54\xc8\x15\x2a\xb4\x77\xfb\x6a\xfb\x96\xab\xb4\x5c\x8b\x2f\x5f\x62\x25\xdf\x79\xf9\x0a\x27\x5e\x53\x30\x93\xf6\x4e\x5f\x6d\x75\xf1\xe4\xc2\x4d\x2b\x9d\x00\x89\x5e\xc0\xa7\x29\x16\xe5\xa5\x55\x03\x99\xec\xdd\x85\x46\x5f\x32\x31\xf4\x12\x90\x63\x56\xb4\xbe\x44\xfd\xf2\x70\xa7\xfe\x70\xcd\xfd\x5b\x59\xc7\xdc\x5f\x47\xb8\xc8\xff\x2a\xda\xe4\x2e\x4e\xf2\x58\x90\x36\xf9\x38\xe7\x24\xcb\xc0\x05\x24\x6d\xeb\x55\x68\x07\xdd\x1c\x2d\x8b\xed\xd6\xdf\xeb\x1c\xc1\x7d\x76\x8b\xe7\xcb\x77\x10\xd5\xfe\xd5\x6e\x7d\x50\x0d\x0e\x2c\x3c\x58\xb8\xc1\xe1\xbb\x96\x68\x34\x45\xaf\xb7\x42\x1e\xb1\x92\x38\x34\x36\xc9\xbb\x5a\x95\x43\x34\xae\x3b\x41\x5f\x7e\x8b\x8d\xd0\x5d\xc7\xd8\xc7\x7a\xb0\x3b\xe5\x58\xf4\x5a\x7a\xaf\x06\x0a\x22\x07\x06\x22\x07\x89\x97\x15\xce\x64\xab\x7c\xcd\xd9\xa8\xdd\x40\xf3\x45\x04\xa7\xc3\x9d\xd1\x0f\xd1\xab\x2f\x7d\x59\x86\xde\xcd\x5b\xe1\x96\xd0\xb8\xb2\x58\x04\x96\xa4\x02\x13\x5c\x83\x43\x7c\xa4\xc0\x9b\x9a\x3a\xbb\x4b\x95\x5e\xcd\x1d\x2e\x90\x34\xbb\x1a\x88\xde\xd7\x44\x14\x58\x06\xcb\xae\x32\xc3\xae\xc6\x8e\x47\x5d\x4f\x0f\x45\x15\x52\x32\x4b\xc7\xc7\x4a\xd7\xf3\xad\x92\x86\xeb\x95\x48\x95\xec\xf4\x3b\x9c\x87\x02\xd5\x6b\xa7\x42\x9f\x5d\xa0\x92\x4e\x31\x3d\x68\x91\xf8\x2e\x2a\x77\xb5\xb5\xab\xb4\xaa\x7a\xfb\xf4\x6b\xb9\x37\x47\x9f\xde\x1a\xfb\x0f\xa3\x16\x15\xed\x84\xc4\x99\x68\xb3\x94\xb4\x8d\xab\x4b\x85\x93\xd3\x4a\x97\x94\x48\x60\x7b\xc2\xa4\x71\x9c\x24\x0d\xb2\x24\xcd\x5e\x56\xc4\x49\x7b\x31\x0c\xd1\xbb\x13\xf1\xa3\xbc\xf0\xfa\xe6\xe6\xc1\xf2\xd6\x93\x3c\x91\xba\xf3\x6a\x94\x8d\x6d\x77\x34\x10\x5c\x5a\x82\x25\x5a\x62\x79\x2d\xf6\x1f\x8b\x53\x50\xe9\x1b\x35\x92\xbf\xac\x0b\xcf\x0d\x28\xce\x01\xc5\xcd\xf5\xf2\x7b\xa8\xce\x17\x81\x30\xf7\xeb\xbf\xda\xa4\x7e\xe1\x52\xa9\x34\xf5\xe5\xa7\x34\x55\xba\x46\xf0\xa3\xbe\x37\xfa\x02\xeb\xf3\x4a\x2e\x5a\xb1\xa3\xaf\x3e\x53\x47\xbb\xe5\x8e\xbe\xfe\x4c\x1d\xbd\x2c\x77\xf4\xcd\x67\xea\xe8\x55\xb9\xa3\x6f\x3f\x53\x47\x5f\x96\x3b\xfa\xee\x33\x75\xf4\x55\xa9\xa3\x97\xdf\xd5\xe5\x6f\x9b\x6b\x36\xc6\x2f\xf8\x4d\x5d\x94\x9f\xa1\x3b\xd3\xe4\xe0\xd4\xe5\xfb\x35\x1a\x79\xf5\xbe\x5d\xbb\xde\x57\xab\x74\xca\xdf\x40\xa3\x70\xfa\x9c\x47\x8f\x41\xca\xb6\x15\x3b\x12\xf4\xb7\x76\x96\x2d\x6d\x94\xa9\xec\xc0\x8f\xe0\xbb\xd8\xd6\x72\x61\x55\xc2\xf2\x48\x87\xbe\x2a\xb5\xd3\xd9\xda\x22\x43\xaf\x35\x4f\x2d\x75\xea\xa7\xd1\x5a\x2c\x54\x39\xd7\xaa\x57\xf2\x58\x85\xfd\x91\xb7\xde\x61\xc8\x11\xa2\xd3\xb0\x1c\xfa\xc7\x45\xb9\xc6\x74\x4d\xd5\xa7\xbc\xdf\xd3\x88\x7a\xf7\xbb\xec\x27\x35\xa9\x39\x49\x62\x79\xba\x00\x1c\xcc\xe5\xb1\xba\xb7\x0f\x43\xe9\x7f\x08\x9d\x5a\xaa\x42\x57\x5b\x3d\x54\x21\x66\x90\x24\xb6\xb8\xf2\x71\x50\x13\xa1\x35\x13\xa1\x6e\x22\x31\xce\xd6\x9b\x08\x95\x13\x89\xa3\xcc\x9b\x88\xea\x2b\x56\x53\xc1\x4c\x4d\xa6\x4d\xa7\x61\x70\x6a\x2c\x52\x22\x0a\x13\x42\x1f\x42\x82\x99\xa4\xe4\x6c\x11\x47\x64\x7b\xc5\x0e\xec\xe8\x5d\x41\x07\x1c\x5d\x68\x3f\xe4\xa6\x25\x39\x47\x7d\x39\x6e\xd9\xef\x40\x1e\x02\x15\x17\x67\x19\xe1\xe2\x94\xdc\x11\x8e\x42\x8a\x83\xdc\x71\x11\xb1\x16\xd0\xd0\x74\x02\xf1\x4b\x21\x5c\x67\x68\x2f\x58\xaa\x38\x4e\xf5\xab\x70\xff\xa8\x2f\x8a\xf1\x90\x37\x91\xfa\x4d\x20\x01\xba\xa7\x3b\xfa\xcf\x06\xc8\x44\xd7\x25\x16\xb9\xd2\x9d\xfb\xc4\xa2\xec\x87\xfa\xc8\x54\x82\x3f\xb7\xf0\x5f\x0f\x93\x1c\xdc\xf5\xee\xf5\x1a\xb9\x84\x39\x35\x2d\x21\xb7\x4b\xe8\x7a\xc2\xab\x7a\xab\x5d\x63\x6e\xd6\xb8\xd8\x95\x5d\x63\xbe\x72\x8d\x79\xdd\x1a\xcb\x0a\xe0\xf7\xea\x4c\xbd\x8f\xe0\x84\x79\x5f\x76\x6c\x2d\x8b\x97\x2c\xcb\x2c\x8f\xc0\x80\x4e\x83\x6a\x08\x40\xb9\xc0\x64\xb1\xd8\x85\xf4\xca\x36\x38\x44\x89\x3f\xb9\xf8\xf5\xf4\x72\xff\x9f\xed\xc1\xf9\xf9\xd9\x79\xbf\xfd\x7f\xe8\xd4\x23\xd7\xda\x19\x4d\x6f\x12\x8f\x54\xb3\xbc\xf0\x47\xad\x20\xaf\x1c\xec\x8f\x20\xcc\xe9\xef\x62\x2d\xca\xe9\x17\xce\xe1\x1d\x75\x0e\x7f\xb3\x8b\x46\xcb\x25\x56\xfa\xf7\x9a\x80\x42\x57\x21\xa4\xb5\x08\x03\xcd\xfd\x04\xe0\x25\xa8\x54\xf4\xb5\x79\xb3\x6f\xe3\x2c\x0c\xe0\xb8\x42\x7b\xb6\xb2\xfa\x8d\xfa\xe7\x26\x9d\xb6\x02\x55\x9e\x26\x24\xcb\x9e\x09\x5c\xaa\xb1\xff\x05\x20\x7b\x12\x06\x2b\xe0\x57\x07\xee\x02\xc8\xee\x69\x31\x33\xad\xcb\xdf\xbd\x31\xc0\x64\x53\xcf\x02\xae\x97\x2b\xc1\xa5\xac\xad\xb2\xb9\xe6\xd6\x9f\x82\xde\x7d\x98\x96\x20\x80\x77\x57\xa2\x5c\x5a\x02\x77\xba\x12\xe5\x12\x22\x9a\xf0\xcd\xf0\x92\x19\x81\x62\x1e\x68\x4c\x24\x80\x00\xef\xe0\x1d\xa4\xe3\xd9\x2a\xa1\xa9\xb5\xc2\x31\x1c\xa3\x35\xc5\xc1\xf7\x95\xb5\xc4\x54\x11\x4b\x7a\x2c\x24\x1e\xd7\xad\x65\xc9\xf0\xa5\x74\xf8\x70\x23\xb2\xe6\xe0\xed\xfa\x81\x3c\x80\xde\x6f\xb8\x33\x1a\xee\x8c\xf6\xbc\x05\x10\xc3\x5d\xf9\x0a\x8d\xfa\xc3\xb9\x52\x14\x8e\x50\x59\x48\x00\x8b\x84\x70\x65\x1d\xf9\x72\xb9\xc2\xdc\xe6\x1b\x65\x97\x58\xb4\xba\xb1\x9c\xb2\xb5\xae\xdb\x75\xe6\x46\x47\x97\x83\x73\x5d\xe8\x9b\x97\xf2\x05\xf8\xe8\x96\x8c\x72\x54\x21\x28\xf3\x15\x94\x39\x1f\xec\xff\xa3\x5c\x48\x55\xc4\x35\x58\xf2\xd2\x33\xd6\x7a\xc2\xfc\x47\xb7\x0c\x5d\xbd\xf2\x38\xf2\x4d\x4c\x86\x7c\xac\xb3\xe6\x43\x65\xec\xd3\xb6\x44\x6e\xc9\x69\xba\xad\x1d\x61\x9e\x69\x13\xbb\x06\x3f\x75\x2b\xbb\x60\x5e\xe0\x7e\x49\x95\x9c\x9e\x45\xc3\x11\x8e\xa3\x9d\xd7\xb1\x0b\xc4\x1a\x9b\xb8\x5e\x59\x94\x0e\x63\x15\xcf\xeb\x26\xa7\x13\x79\xe1\x66\x9d\x4e\xe0\xbb\x07\xc3\xbb\x4d\x46\x3f\x61\x24\x6b\xa7\x4c\xb4\x45\xfc\x81\xb4\xe3\xf6\xbf\x82\x6e\x3a\xdc\x19\x75\x83\x7f\xb5\x99\x32\x97\x42\xbe\x9d\x9e\xc2\x5f\x3a\x8c\x47\xb5\xf6\x76\xcd\x67\x90\xc5\xf6\x2f\x2d\xb6\xb3\x15\xe7\x11\x58\x08\xef\x20\x7c\x55\x41\x38\x65\x0a\x27\xd9\x9f\xc2\x0a\x6f\xcb\x63\x75\x5b\x6b\x53\xb7\xef\x62\xde\x70\xbf\xb9\xc8\x12\xc3\x1d\x9b\x3a\x6b\x4c\x42\x09\x7d\x64\xcf\x90\x87\x30\xad\x63\xd9\xea\xae\x09\x84\x46\xcb\x95\x9f\xcd\x08\x9d\x84\xad\x2e\x72\x8f\x67\x0b\xe4\x2c\xc5\x25\x1c\xb5\xc2\xe8\x96\x84\x29\x00\x56\x56\x28\xf7\x22\x51\xe2\xb4\x26\x83\x7c\x5b\xae\x49\x45\xcf\x5f\x50\x92\x43\x93\x55\x87\x59\xe2\x04\x60\xda\x0c\xd0\x09\xc0\x8c\x16\x97\xab\x05\x10\xeb\x4c\x4f\xfb\xc3\x77\x3a\x00\xf6\xba\xc9\x9a\x2c\xbf\x6a\xa6\x54\x56\x33\x56\x16\x6c\x2b\x8a\x8e\xcc\xdc\xd8\x52\x07\xb6\x90\x03\xcf\x6c\x6c\x8d\x5d\xe4\x19\x03\xa4\x55\x63\x80\xb8\x66\x92\x99\x12\x62\xf1\x9a\xb9\x09\xa2\x26\xf7\xa8\x7f\x13\xac\x2d\x9a\xfa\x62\xb9\x04\xbf\xcd\x37\x10\xc0\xe7\x27\x84\x85\xb3\xb6\x01\x3b\x4a\x55\x4e\xc7\x98\x83\xf7\x91\x0e\xfd\xa5\x3f\x45\x29\x38\xcb\x39\x6f\xc6\xf7\x70\xb5\xbd\x59\x47\x99\xab\x42\x21\xd1\xb1\x80\xc4\x03\x7f\x50\xad\x5b\x50\xe4\xe2\x46\x4d\xaf\x31\xe2\x5d\xaa\xa5\x3e\xa1\x59\x56\x8e\x0d\x09\xa5\x67\xfa\x03\x69\xd2\x08\x9b\x5c\x34\x3a\x66\x8a\xdf\x1f\x8e\x23\x67\xe8\x40\xd7\x33\x74\xa0\xca\xd0\xa1\x92\xd8\x90\xed\x19\xbd\xb2\x1e\x11\xb2\x9d\xab\x6c\x6f\x9e\xce\x99\x8d\x50\x68\x3e\x69\xbd\xf3\x4f\xff\x7f\xbf\x0e\xc5\x60\x2d\xa0\x12\xa8\x2a\x13\x98\x3d\x4d\x8e\xe4\xd7\x57\x00\x59\x7b\x20\x81\x70\x9a\xc9\x1b\xab\x62\xf1\x78\xab\xe3\x2e\x82\xb0\x7a\x63\x9b\xc7\x28\xc6\x69\xc4\x94\xa9\x25\x1b\xbe\x1a\x2d\x8d\x20\x61\x8b\x91\xc2\x98\xb4\x59\x3a\x09\x99\xb1\xc1\xf4\x82\x16\x64\xae\x1c\x8f\xe4\xbe\x84\x6d\x4f\xe1\xcf\x52\x19\xa7\x17\xec\x11\x70\xe2\xa1\xdf\xd3\xaa\x36\x40\x3f\xd1\x80\x7e\xb9\x0e\x09\xa3\x97\xa1\x8a\x8c\x0a\xf0\x89\x67\x1c\x92\xef\x15\xb1\x32\x1f\x79\xa5\x8e\xca\xce\x52\x3f\x17\xfc\xf4\xd5\x58\xfb\x04\x6b\xb6\x1e\x7c\xcb\x13\x33\xc6\x25\xcc\xf6\xdf\xca\x94\x02\xff\x12\x0d\x03\x08\xa8\x1b\xe0\x80\x4e\x02\x1c\x80\x64\x22\xc0\x81\x84\x43\x80\x03\xe0\xc5\x71\x90\x89\x87\x44\xfe\xbd\xe5\x64\x1a\x8c\xf0\x17\xd1\x30\x98\xd0\x3b\xf9\x61\x1e\xa7\x01\x0e\xe6\x01\x0e\xe2\x60\xe4\x46\xf4\xa3\x67\xdb\x5b\xb9\xc4\xf6\x48\xff\x8b\x21\xf1\x24\x79\xbf\x3e\x51\xfa\x17\x59\xfa\xdf\x4a\x44\x5b\x1b\xf5\x5c\x92\x8c\x2f\x95\x4c\x53\x9e\xd1\xaa\xe8\xee\xab\xba\x1b\x5b\xd2\x0a\x5f\xf9\xa5\x5e\x36\x95\xfa\xd2\x2b\xf5\x65\x9d\x56\xae\xc1\x10\x58\x99\xfd\x7a\xf8\x6f\x3d\x4b\x37\x52\xd4\xb0\x3d\xd6\xa4\xa8\xb1\xe6\x04\x4a\x55\xc3\x56\xa8\x6a\x3e\xd5\x81\xeb\xab\x6f\xb4\xb3\x91\xe4\x12\x57\x28\x74\x34\x10\x9f\xd2\xa2\x00\x90\x5e\x59\xa2\x5d\x76\xb0\x8b\x7f\x95\x87\x9b\xba\xd5\xb7\xa2\x74\x2f\xed\x2b\xd7\x19\xdb\xea\xcb\xcd\x5b\xdd\xdd\xf9\xf6\xc9\x66\x77\x9f\xd2\xc4\x14\x9b\xf5\x38\x39\xae\x40\xf3\x52\x75\xb1\xb5\x5b\xee\x63\xe4\x8d\xfd\x29\x15\xd7\xba\x9d\xec\xac\xe8\x64\xf7\x29\x55\xcf\x53\x9d\xbc\x5a\x67\x26\x4f\x29\xdb\xd6\xed\x64\xe5\x4c\x76\x1a\xf7\xf5\xb7\xf8\xc7\x10\x76\xb6\xbf\x84\xbb\x4d\x63\xf2\x46\xf1\x9d\xe6\x25\x65\x03\x02\xf9\xbd\x3d\xa5\x4f\xd2\x33\x82\x2d\xfd\xe5\xa8\x29\x61\x81\xd8\x2b\x6e\x4f\x9f\x9e\x86\x7d\x29\x34\x85\xc9\x6d\x64\x19\x5c\xb4\xf7\xec\x97\x68\x21\x4b\x09\x51\x67\x23\x4a\x95\xe1\xa8\x37\xaf\x6f\x77\xe4\xd6\xac\x04\xce\x11\x26\x6a\x0e\xd7\xdd\xc6\x35\x56\x1b\x66\x24\x0c\x62\xdc\x94\x4c\x4d\xfb\xf5\x96\x69\x55\xd3\xd5\xca\x60\x2a\x51\x77\xcc\xd4\x69\xdd\x18\xaa\x21\x77\x60\x38\xca\x82\xfe\x09\xee\xc4\xc1\xd4\x6f\x18\x38\x12\x17\x12\xa8\xe0\xf3\xe9\x61\xcd\x77\x4f\xda\x56\xfc\x21\x49\x5b\x5a\x66\x71\x57\xc9\xd7\x94\xe9\xd0\x97\x38\x0f\x3d\xe3\x01\x9c\x85\xa2\x47\xee\xe2\xe4\x02\x5c\x35\x33\x84\x63\xc9\xc4\x95\x9c\x4f\x0b\x73\xaa\x55\xf4\xb5\xaf\x61\xcb\x60\x39\x25\xbf\x70\xad\x36\xd1\x14\x2e\xda\xf2\x79\x07\xc0\xd7\xcd\x97\x5f\xe1\xe8\xfd\xba\x6e\xf8\xbc\xb0\x6f\x9f\xd8\xb6\xc0\x9e\x16\x7d\x53\xf0\xa3\x62\x92\x24\xc3\xe5\xbc\x4e\xea\xe1\xb9\xe3\x5b\x7b\x28\xff\x63\xe7\xb0\x29\x26\x09\xbd\x36\xae\x9a\xc1\x38\xce\x05\xfd\xff\xb1\xf7\xa6\x5d\x6d\x1c\xd9\xc3\xf8\x7b\x7d\x0a\xd0\x99\xa3\xd3\x35\x14\x8a\x84\xb3\x38\xc2\x65\x86\xd8\x38\x21\xc1\xcb\x00\xce\x32\x1a\xfd\xf9\x35\x52\x09\x3a\x6e\xba\x35\xdd\x25\x30\x01\x7d\xf7\xff\xa9\x7b\x6b\xef\x45\xb2\x93\xf9\x3d\xcf\x8b\xe7\x9c\x04\xab\xbb\x6b\xb9\xb5\xdd\xba\xfb\xcd\x97\xe5\x2e\x86\xe0\xeb\xae\x6a\x67\xb7\x11\x89\xb7\xe2\x84\x2f\x87\x54\xa0\x69\xd4\x27\x00\x24\x8a\x65\x29\x20\x20\x59\x08\x90\x81\xe6\xeb\x26\x1c\xe9\xbb\x33\x51\x48\x55\x0f\xe4\xf0\x4f\x6c\x77\x48\xff\xd9\x14\x69\x05\x0f\x39\xc6\xeb\xb4\x21\xc3\x54\x14\x7c\x08\x5c\xa5\xd8\x54\xc7\x71\x98\x15\x54\xc5\xd5\x83\x1e\x67\x48\x40\x1b\xc5\x8b\x13\x41\xb0\xc2\x66\x34\xb8\x54\x59\x5b\x74\x53\x69\x66\xc3\x74\xea\x37\x1d\xfb\x93\xfd\xa4\x63\xe5\x3b\x60\x03\xa7\x0d\x7c\x47\xce\x7e\x05\x52\x59\x38\xd1\xb2\x12\x0c\x33\x7f\x06\x53\x5e\x92\xc8\x78\x67\x38\x51\xd3\x66\x2c\xa7\xf9\x4a\x27\x43\x0f\x49\xec\x1f\x5d\x7f\x40\xc0\x33\x6e\xa4\xcc\x7f\x46\xc2\x85\x65\x0e\x12\xe9\x07\x9c\xb6\x12\xd8\x07\xf8\x25\x11\xe0\xd1\x6d\x9c\x8e\x20\x9b\xac\xfc\xe5\xfa\x37\xfe\xaa\x57\xc4\x0a\x02\xff\x43\x13\xf6\xb3\xa4\x26\x09\xc5\x1c\xe9\xdc\xcd\x91\xfe\x47\x94\xa8\x44\xe8\xe0\x56\x34\xce\x27\x14\x39\x60\x6b\xa5\x9c\x68\xdd\x9e\x2c\x76\x93\x88\xa8\x30\x3c\xcc\x35\x8f\x17\x54\x40\x68\x7e\x07\x88\x7f\xb9\x27\x3c\x34\x26\x3b\x78\xb0\x83\xd4\x96\x3f\xe0\x43\x3e\xf2\x70\xc7\x6a\xc4\xfd\xc9\x29\xdc\xc9\x11\x8a\xf8\xc4\x8a\x85\xe3\x89\xbe\x42\xd3\x32\xce\xd7\xa5\x6b\x40\x19\x0a\x77\x18\x63\xc6\x0f\xdc\xfc\xc9\x9c\x8c\x14\xdf\x5d\xd4\xf1\xdd\x20\x2e\x6b\x8c\xa0\x8c\xcd\x2b\x9e\x0d\x1f\xc6\x7c\x82\x2e\x27\x2b\x5a\x54\x12\x01\x3b\x21\x76\xbd\xeb\x51\x1b\xc7\x8a\x5e\x8f\x6f\x25\x90\x49\xa3\xe8\xdf\x25\xe2\x3a\x08\x87\xae\x54\xca\x34\xae\x6d\x03\x82\xa4\xc7\x07\x5a\x77\x9a\x5c\x65\x24\x7a\x58\xd1\x98\x46\x51\xc2\x1e\x56\x64\x2c\x26\x4c\x52\x0e\x64\x14\x45\xb9\x7d\x91\x13\xb2\xa2\x8e\x92\x1a\x32\xfa\x91\x88\xd3\xf1\xc3\x07\x7e\x3f\xea\x5e\xc7\xe5\x61\x76\xdf\x6d\x4a\xa4\xae\x20\xb7\xf0\xac\x56\x13\x82\xd2\x10\xc1\x81\x77\xe4\x3c\x4c\x4b\x59\xf0\x46\x07\x29\xe1\xa4\xba\xf6\x25\x25\x09\x7a\x03\xa0\xd0\x41\xc9\xb9\x13\x57\xce\x5d\x8c\x93\x71\x3c\x99\xb0\x7f\x45\xf9\x38\x9e\xd8\x53\xbd\xa5\x80\x70\x8d\x29\x32\xee\xea\x91\xb4\xcd\xa2\xa3\x4e\x2a\x76\xba\x74\xeb\x72\x29\xb6\xc4\x35\x2f\xf8\xd6\x9d\xfc\x93\xe5\x5b\xf3\x82\xf3\xad\xdb\xb8\x48\x24\x86\x2b\x61\xad\xae\xf9\x96\x0e\xb7\xa6\x94\x4d\xb5\xd6\x95\xa1\x5c\x1d\x3a\xb8\x82\x9c\x18\x41\x50\x18\x8e\x42\xd9\x1c\xe2\xf8\x29\xc2\x23\xe1\x26\xfe\x8c\x9a\x71\x13\xa0\x38\xab\x44\x84\x69\x6d\xda\xce\x81\x6a\x53\xaf\xe4\x13\x66\x75\x18\xbd\x9e\xa4\x07\xac\xa3\x95\xec\xb3\xce\xba\x8f\xa3\x89\xe8\x93\x95\x3c\xf2\xc6\xf2\x53\x2e\xd0\x04\xed\x7e\x4d\x67\x30\x1a\xab\x76\x57\x2d\xb3\x3d\xd9\x13\xb4\xb1\xb7\x0a\x22\xc1\x09\x4e\xc3\xd0\x6e\x4e\x24\xf8\xb8\xe9\xe8\xab\x93\x0f\x6e\xd5\x75\xb2\x36\x01\x59\x5d\xd7\x49\xdb\xa0\x7a\x9d\xbc\x0d\xdb\x35\x59\x02\xb0\xb5\xba\x82\xaa\x1f\x15\xb0\x21\x16\x23\x4e\xf1\xd5\x48\xac\x48\x5d\x3a\x13\xd7\x2f\xd3\x6d\x41\xa7\xab\xc0\x9e\x55\x1e\x54\x51\x93\xb8\x45\x8c\xb3\x09\x38\xb4\xc7\x82\xc6\xac\x18\x27\xaa\x85\xc9\x6e\xde\xe1\xd8\x5d\x94\xd3\x98\xac\xc2\x1b\xab\xe4\x41\xae\xc0\x3a\xc3\x54\xae\x0c\x4d\xd1\x36\xa6\x70\xaf\xa3\x25\xf7\x75\x11\x95\xa8\x35\xc4\x93\x73\xc9\xcd\xab\x43\xd6\x28\x73\x16\x9a\x2f\x46\x9c\xe6\x8b\xe1\x48\xd0\x7c\xb1\x37\x2a\x68\xbe\x78\x32\xca\x56\x8e\x0f\xd4\xba\x1a\x4e\x59\xd1\x5c\x76\x35\xaa\xf9\x84\xd1\xf3\x12\xdf\x4c\xda\x88\x99\x7c\x22\x53\x1e\x92\xc7\x47\x9f\x8c\x52\xef\x3c\xf7\x63\xf5\x2e\xf0\x13\x55\x6f\x41\xb2\xa2\x6b\xd5\x70\x85\xea\x53\x85\xbf\x91\xef\x21\x48\x4f\xc2\x8c\x11\x8f\xb1\xa4\xa9\x01\xdd\x11\x08\xa9\x26\x81\xbe\x54\xbf\x1d\x29\x8f\x7a\xe3\x9a\xbf\xfa\xaf\x02\xcb\x45\x17\x10\xc7\x56\xa8\x0d\x16\x54\xca\xaa\x56\x55\x34\x05\xf5\x54\x13\x55\x40\x83\xe8\x84\x42\x30\xaf\x4c\xd0\x83\xc6\x71\x84\x16\x8a\xba\xa0\x8e\x33\xe0\x82\xaf\x0c\x94\x8c\xd1\xd9\x76\x0d\xec\x78\x16\x4c\xad\x8a\x8a\xf4\x48\xfb\x14\x6c\x75\x77\x38\xe9\x24\x4c\xd5\x58\x85\xf2\x5d\xbd\x33\x13\xbb\x25\xf1\x9b\xde\x97\x89\xbb\x57\x01\x41\xa5\x1b\x21\x3a\x0c\x36\x8b\x69\x1f\xe1\x37\x22\x3b\x45\xd2\xc1\x87\xbc\x21\x3f\x51\x64\xd2\xc1\x80\xa5\x9c\xc1\x8c\x49\x1d\x66\x4c\xb0\x50\x55\x71\xa0\x89\x47\xfc\x37\x7a\x22\x2f\x42\xb7\x55\xc4\x83\x1c\xe3\x95\x03\x81\x59\x87\x34\x83\x56\xbe\xa2\xc3\xc1\xde\x97\x24\x4c\x6f\x53\x21\x7e\x79\xff\x26\x4e\xd3\x7c\x1a\xe9\x44\xa4\x85\x9b\x88\x54\x49\x4a\x8a\x71\x32\xe9\x74\x75\x23\x6e\x36\x49\xb4\x04\x78\x97\xc6\x53\x7e\x9d\xa7\x33\x5e\x44\x39\x19\x75\x73\xa0\x12\xab\xe5\x90\x35\x90\x45\x94\x05\x41\x4e\x2c\x57\x33\x4f\xb2\xa4\xbc\x7e\x8d\xd0\x64\x90\xaa\x03\x5c\x47\xbd\xe5\x50\xe9\xa3\x0c\x7d\xe2\x4e\x93\x72\x86\x78\xc0\xc7\x91\xf3\x89\x2a\x3b\xfa\x62\x35\x2a\x74\x74\xf1\x60\x0e\x1d\xbb\x00\xc9\x9b\x24\xd5\x9c\x85\xb9\x93\xb3\x30\x79\xbe\x77\x90\xec\xee\x8d\x06\x84\xc6\x6c\x4f\x52\x53\x40\x46\xe5\xe3\x78\x77\xcf\xcd\x5e\x88\x66\x03\xd1\x80\x16\xfd\xa4\x7c\x1d\x4f\xaf\x93\x8c\xbf\x5d\x90\x48\x28\xea\xa4\x04\x1f\xa8\x9b\x78\xe1\x44\x2b\xf2\xb2\xf7\xf4\x55\xae\x2d\xb5\x70\x2b\x1b\x9d\xb8\x64\xee\xbc\x10\xf5\x43\xa5\xf4\x28\xe9\x58\xc0\x06\x30\xf9\xac\x97\x04\xe9\xfe\x94\x4e\x3f\xb7\xc7\xb4\xad\xc7\x54\xf6\x38\x30\xdd\x4d\x89\x0e\x63\x2f\xdb\x6a\x4a\xac\x2b\x7a\xbd\xca\x5e\x91\xef\x52\x8d\xf0\x04\x5a\xfe\xaa\x28\xf3\xcb\xa2\x00\x34\x27\x4f\xad\xba\xa0\x23\x6f\x73\x48\x36\x6b\xa7\xa0\x42\x99\x7e\xd2\xdd\x21\x19\x55\xf8\xe0\xca\x1d\x2b\x1e\x1f\x6b\xf6\xb6\x30\x64\x35\x28\xcf\x2e\xf3\x3c\xe5\x71\xcd\xf7\x6d\x44\x4e\xc3\xd1\xa0\x56\xbf\x2e\x2c\x97\x0d\x40\x45\xc2\x55\x98\x99\xaf\x03\x1b\x37\x07\x4c\x39\xd1\xa3\xd1\x8b\x9e\x6e\x7d\x15\xe1\x39\xd2\xa3\x44\xd7\x3b\x2f\x54\x96\x2d\xea\xbe\x0e\x6b\xa0\x68\x64\x64\x86\x09\x6f\x6d\x20\x3c\xcf\xf3\x0b\x26\xf8\x58\x7f\x23\x41\x53\x36\x20\xde\x08\x9e\xfd\x18\xee\xf8\x4e\x0d\x02\x7e\x63\xc0\xf6\x6a\x07\x3f\xc0\x31\x25\x91\x99\x2b\xd5\x8b\xea\x06\x7d\xea\x94\xcb\xa2\x0a\xcf\x5d\xf0\x78\x7a\x0d\x51\xe0\x22\xf5\x1d\xcc\x6a\xcc\xeb\xee\xc6\x1e\xea\x72\xbf\x86\xb4\xab\xc2\xad\xfe\xce\xc3\xb0\x43\x9c\x56\xb6\x1e\x34\xe1\x04\x1b\xaa\x64\xb6\x72\x2e\x1c\x15\x80\x89\xdf\x6d\xc5\xba\x9e\xbe\x9c\xdb\xab\xe5\x8b\x88\x28\x8a\xd4\x3b\x8e\xad\x8c\xa8\x37\x80\x26\x7e\xb4\xd2\x97\xaa\x65\xb8\x52\x4b\xf6\x82\x35\xa0\x67\x47\xa8\x44\xb6\x03\x23\xb2\x3d\x5d\x75\x2c\x51\x3e\x9e\xe8\x1c\xaf\xae\xe3\xb7\xa8\x5a\x30\x39\xce\xdf\xaa\x45\x5d\xc3\x34\x2c\x1c\x83\xf2\xb9\xc3\x1a\x3d\x18\xc7\xd1\x11\xb7\x4e\xa4\x8f\x8f\xdb\x43\xea\x48\x4b\x47\x33\x10\x1b\x21\xbb\x35\x52\x52\x26\xc5\x7d\x51\x2d\x22\x1e\x71\x1b\xf9\x52\x2e\xac\x29\xa7\x44\x4c\x3a\xe7\x98\x05\x64\xc6\x1b\x45\x57\x46\x0c\x75\x60\x44\x54\x01\x83\x77\xcd\x43\x8b\x9d\xeb\x48\x50\xee\xb2\xac\x8e\xd2\xc2\x4b\x03\x60\x82\x6c\x96\xcc\x8f\xa0\x09\x6c\x30\x2c\x51\x41\x6c\x68\xb8\xc1\xfe\xd2\x5e\xf0\xcb\x1d\xb6\x47\x8a\xf1\x72\x32\x1e\x4c\x58\xf7\x1f\xdd\x1d\xf5\x5b\xb9\xbe\x2b\xc5\x43\x6c\xad\x00\x53\x5c\xaf\x8a\x52\xa4\x6c\x4b\x25\x60\x75\x12\x46\x43\xa3\x84\x0a\x0f\xfa\x60\x66\x28\x0d\x4e\x57\x9a\x18\x38\x76\x62\x7f\x7a\x13\xeb\x85\xcc\x90\xc4\x0b\x76\x0c\xfe\x8d\x5a\x7f\xc2\x6d\x48\x14\xe5\xe9\x58\x5a\x53\xa1\x25\xcb\x5c\x41\xab\x9c\xa5\xa5\x5e\x9f\xc7\x47\xd1\x77\xa2\x7c\x1b\xce\x6b\xad\xda\xa5\x12\xe0\xc4\xea\x5c\xcc\xd4\x64\x2b\xe2\xcc\x2b\x3a\x43\x96\x03\x5f\x97\xa1\x1c\x25\xbf\x52\xdf\x26\x74\xca\x96\x7a\xcb\x74\xf4\xd1\x96\xa0\xf5\x7a\xa9\x13\x12\xb2\x51\xef\x5c\x03\x17\xcc\xb3\x8d\xc4\x38\x18\x80\x25\x99\x1b\x9e\xdc\x6d\xfb\xab\x6f\xe1\xb3\x1f\x8f\xdc\x2d\xf0\xf4\x5b\x3a\x78\x2c\xd1\x38\xd4\xda\xa6\x22\xf8\xb6\x66\x08\xf2\xd0\x03\x02\x07\xf0\xed\x40\x57\x53\xf1\xd8\xc7\x93\x8e\x2d\xf3\xed\x9e\x69\x74\xae\xc4\x02\x38\x2f\xa3\x01\x4d\x4a\xe0\x4c\x40\xa9\x6e\x50\x0e\x06\x5e\x98\xba\x81\x17\x1e\x30\x46\xd2\x74\x3c\x9b\xe8\xcb\xf6\xba\x3f\xbd\x8e\x8b\x43\x11\x0d\x88\xba\x71\x7b\xe8\xad\xbe\x50\xf2\x92\xfd\x68\xc1\xba\x3d\x58\x6e\x49\x8e\x5c\x1f\x24\xa3\x12\xac\x00\xaf\x8d\xfd\x1b\x21\x07\x51\xaa\x03\x38\x2d\xaa\x00\xce\x76\x86\x16\x44\x39\xff\x23\x5b\x5c\x25\xc5\x59\x57\xc3\xf5\xdd\xff\x47\x77\x24\xd1\x6e\x4c\xf0\x1d\xc6\x6c\x8a\xc7\x83\x09\xbd\x65\xf1\x78\x38\xa1\xf7\xec\x9a\x5e\xb2\x1b\x93\x19\xeb\x9e\xec\x43\x9a\xd7\xcb\x5e\x2f\x4a\x43\x84\x7b\x3b\xbe\x9c\xac\x01\x60\xb8\x22\x64\xb5\xb2\x35\x9f\x7c\x43\xf5\xb4\xee\x0c\xa9\x2b\x0f\x2e\x89\x95\x7a\x0d\x47\x03\x27\x80\xe6\x05\x9b\xdb\x98\x94\x17\xcf\xd9\x60\xff\x42\xc7\xa4\xbc\x63\xf3\xf1\xc5\x84\x1e\xb1\x3b\xb5\xd3\x3b\x77\x7d\xd5\xf7\x81\x03\xae\xe1\x3f\xe9\x11\x21\xa3\xd4\x8d\x61\x7a\x64\x4d\x62\x9d\x0a\x9e\x44\x81\x66\x6b\xf6\xf1\x70\xf0\xc4\x6c\x30\x77\x9f\x52\x1d\xbd\xb4\xf9\x8c\x7c\x1d\xd4\x19\x04\xa7\x58\xe2\x35\x83\xcd\x6e\xb8\xab\x12\x15\xbe\x8b\xb6\x30\x28\x4c\x58\x14\x26\x34\x0a\x13\x4e\x28\x27\x11\xc8\xaf\x6b\x8c\xe7\x3f\x53\x91\x1a\x9a\xc1\x5b\xb5\x5f\xc5\xfe\xfd\xe9\x13\xba\x8c\xec\x45\xa9\x5e\x0e\x6b\xf4\xd4\x2a\xbd\x43\x1b\xc6\x2c\x35\xc2\x4c\x57\xb5\x86\xe8\x5e\x8c\xca\xdb\xf6\x3b\x01\x67\x71\x8d\xcb\xbb\x7f\x29\x98\x8b\x24\x65\xdb\xdb\x25\x9d\xb2\x6d\x15\xe6\xc6\xbb\x11\x1e\x1f\xb7\xa3\xed\x1c\x63\xdf\xe4\xe3\x81\x16\xf2\x12\x3a\x67\x25\xe8\x1c\xa2\x2e\xa2\x0a\x1b\x07\x64\x63\x64\x6f\x3d\x0a\xba\x0d\x5e\xf7\x6a\x82\xe6\x15\xf7\xfb\x6f\x74\x13\xf7\x3c\x9a\x87\xb8\x38\xa5\x53\xcf\xf4\x0a\x74\x3f\x9a\xa3\xe3\x6c\x79\x30\x3e\x8a\x96\x95\x68\xca\x95\xf8\xbf\xcb\x06\xff\x55\xcc\x0a\x54\x27\x86\xd2\x97\x98\xf5\xc2\xf8\xf6\xa9\x39\x12\x7c\x45\x82\xbb\xce\x09\x59\x8d\xd4\x10\x9a\xac\x6a\xe9\x4f\xd2\xeb\x45\x89\x93\xe4\x0b\x03\xf2\xca\xfb\x8b\xda\xa0\xd6\x70\x1b\x71\xdd\xa2\x13\x89\x45\x99\xca\x27\x11\x21\xd4\x9a\xcd\x9b\x2b\x87\xba\x37\x0c\x80\xf5\xd4\x79\x18\x7e\xab\x7c\x79\xbe\x35\x13\x0d\x91\x0b\x87\xfa\x71\x74\x4a\x41\x23\x3d\x7c\x6a\x5f\xa0\x6f\x06\xae\xf1\xb7\xdf\xba\xad\x19\x4c\x43\x5d\x0c\xa3\x62\x70\x53\x85\x41\xbc\xd8\xb8\x97\xae\xfc\xff\x5f\x91\xa1\x45\x03\x55\x28\xf2\xf7\x57\x8d\x7a\x3d\x47\x11\x7d\x13\x27\x99\xd6\xec\x69\x95\xf8\xf7\xcb\xb8\x98\xf1\xd9\x21\x28\xc6\xb5\x4e\x5a\x2b\xf0\xfd\x8f\x45\x9d\x2a\xfa\x8a\x0b\xf5\xb9\x4e\xd9\x71\xd0\xdc\xd7\xa8\xb9\xa7\x56\x9e\x26\xd4\xe5\xb7\x71\x35\xb5\x1d\xaf\x56\x54\x71\x47\x81\x99\x42\x5b\x4b\xf5\x70\x56\x39\xa4\x0b\xee\x61\xcf\x6f\xbe\x76\x0e\xe9\xf6\x90\xca\xff\xbc\x5d\x7f\xc7\x7d\x73\xc2\x6f\x9e\x12\x7a\xe6\xca\x68\xc8\x83\xf0\x2c\x3b\x9c\xb9\x1d\xdb\x90\xd4\x5f\x3e\x21\x93\x91\xfc\xf7\x1b\x74\x12\x88\x06\x35\x55\x80\xb2\xdf\x33\xf8\xfa\x33\x70\xd4\xd3\xaf\xaa\xa8\x47\x8f\xaa\xa1\xc3\x16\x1c\x41\x5d\xe4\x30\xa9\xa0\x86\x09\x8e\xa4\xce\xd0\xd4\x1d\xf9\x97\x44\x15\xfc\x72\x4d\xc1\xaf\x74\xc1\xaf\xd6\x14\x44\x67\x7f\x70\x35\x31\xeb\x74\xe4\xdc\x3d\x6f\xe5\xa9\xba\xe0\x84\x16\xf8\xb3\x66\x71\xee\x78\xb4\x8d\xa1\x06\xb2\xd6\x32\x43\x47\xd0\x06\xe2\xf1\x2b\xae\x12\x1d\xae\x4c\xb6\xa6\x2b\x0e\xa8\xef\x8c\x33\x87\xd5\x0d\xb8\x5b\xe0\xb6\x14\x73\x0b\xbf\x0d\x4b\xfb\xb0\x42\x56\xd6\x8d\x17\xf0\x96\xbb\x86\x08\xca\x82\x39\xc3\xe4\x59\x9d\x93\xe8\x41\xdb\x36\x17\x68\xd6\x7c\xc6\xa9\x32\x7b\x7e\x50\x29\xb3\x32\x6a\xf2\x95\xad\x56\x54\x44\x44\xa7\x60\x34\xa6\x10\x1c\x4d\x20\x50\xb5\x5b\x09\xc3\x99\xb4\xe6\x01\x41\xe1\xad\x4a\xcf\x91\x64\x57\x5b\xa5\x98\x59\xe7\xae\x04\xf0\xdd\xc7\xd0\xc6\x1e\x11\x5c\x3e\xe3\x06\x87\x69\xd7\x6a\x18\x57\xd2\xff\xa5\x48\x04\x7f\x9b\xa5\xf7\x2f\x8c\x87\x37\x94\x93\x70\xaa\x22\x3f\xf0\x78\x71\x7c\xb3\x48\xf1\x43\x68\x87\xae\x31\x27\x0a\xd0\xd8\x11\x57\x69\x3b\x3b\x6d\xb9\xba\x3e\xe2\xe2\x1d\xf2\x1a\xe9\x52\x00\x20\x66\x59\xdb\x08\x34\x18\x27\x84\x9d\xfe\x64\x50\x5b\xb3\x8e\x1d\x22\xb4\xe7\x2d\x97\x89\xe3\x97\x61\xae\x12\x25\xf6\x63\xa2\xe1\x82\xa8\x66\x96\xd1\x47\xa9\x36\xd9\x9e\xd7\x28\xb1\x32\x9d\x48\x9e\x38\x51\x8d\x30\xfc\xe0\x90\x31\xc6\x1e\x08\x9e\xac\x02\xc0\xe4\x89\xaf\x4f\x8d\x76\x8e\x03\xff\xb0\xce\x3a\x06\xc9\x45\x3d\x70\xcf\x4e\xab\xe3\x49\x81\x00\x52\x2d\x36\x52\xc9\xfe\x55\xa0\x67\x95\xb9\x58\xb1\x97\x04\x5d\x97\xe0\x01\x88\x2b\x54\xb3\xb2\xdd\x21\x63\x2c\x3b\x50\x71\xbd\x4d\xe9\x51\xb6\x33\xac\xda\x8d\x3d\x54\x6c\x9f\xa8\x16\x39\x15\xab\x4d\x0d\xc8\xac\xd4\xc9\x1b\x9c\x97\xa9\xc6\x58\x8c\xc1\x60\x69\x4e\x63\x2a\xe9\xe8\xb9\xca\x89\x8b\xd3\x43\x68\xca\x7e\x8e\x38\x5d\x92\xce\x1f\x51\x4a\x23\xc1\x9c\x8f\x3a\x5f\x71\x38\x60\x5a\x13\xcd\x3f\x8a\x99\xbc\x0b\x86\xb4\xac\xe6\xe8\x05\x23\x64\x97\xa6\x7a\x32\xac\x32\x36\xfa\x8e\x8b\x09\x2d\x23\x7d\xbd\xc4\x64\xe2\x78\xf6\x3a\x3e\xba\xea\x32\x54\xd4\x9b\xa2\xd1\xbe\x55\xc4\x99\xa1\x13\x2f\xa3\x3c\xb0\xe6\xa4\xe8\xd0\x50\xe7\xc1\x7b\x11\x5d\x72\x1d\x0f\xcb\x6b\xfe\xeb\xaf\x6d\x2a\x05\x8a\x6e\x13\x61\xba\x81\xae\x7b\x1f\xd6\xa5\x1b\x30\x32\x93\x34\x34\x44\x4b\x43\x9f\x1a\x40\xc6\x4b\x94\x56\x37\xc5\x46\x9e\x3f\x3e\x46\xfe\xb6\x9e\xd3\x1a\xf3\xbe\xb0\x6d\x42\xe8\xdc\x9c\xae\x20\x13\xe1\x07\x3c\x56\xaf\x39\x1b\xd8\xdb\xe7\x9d\xbd\x4a\x31\x2b\xc2\x0c\x98\x36\x65\x5f\xa8\xcf\x4f\xcc\x8a\xc7\xc7\xee\x34\x4d\x78\x26\x76\xbb\x3b\xaf\xf9\xce\x8e\x3e\xee\xc9\x6c\x14\x2b\x9f\x34\x95\x33\x6f\x14\x62\x96\x82\xf1\x8a\x55\x17\xa7\x09\x19\x25\x46\x3c\x2b\x47\xcb\x9c\x0c\xa0\xb9\xbc\xac\xf9\xdd\xd6\xef\x3c\xc2\x1e\x00\x8e\x91\xb0\x57\x69\xb1\x22\x2b\xd4\x30\xff\xbe\x0e\x4f\x40\x93\xb3\x13\x0f\x5b\x14\xbc\x5c\xa6\x82\x75\xf3\x0f\x0a\x6b\x2b\x64\x02\xf7\xb5\xae\x05\x78\xd2\xbe\x51\x09\x00\x4f\x6c\x49\x1f\xcd\x74\x1c\x54\x50\x5a\x8c\xa3\xae\x0f\x44\x05\xcc\x22\x05\x05\x07\x8e\x87\x39\xd2\x6e\x74\x98\x9c\xc1\x6a\x84\xd3\xde\xea\x62\xa7\x52\xa1\xd6\xe4\xd0\x76\x86\x78\xe0\xfc\x1e\xb9\x43\xff\x31\x0a\x17\xa9\x32\x7b\xd4\x23\x7a\x24\x5d\x46\x85\xbd\x12\x9a\xfa\x55\x33\x79\xe0\x3e\xfc\xa9\x9e\x07\xa6\xe7\x5f\xbc\x25\x69\xe8\xdf\x5b\xb7\x83\xea\xab\x51\xdd\xea\xf2\xbb\xad\x0f\xfc\xb3\x66\x44\x9e\xbe\x30\xb7\xb4\xc9\x04\xbd\x41\x4e\x69\xc8\x22\x5d\xc9\x0f\x1d\x64\x86\xfe\x8c\x9c\xc9\xd7\xf7\xb3\x22\x16\x5c\x12\x2f\x75\xec\xa1\x4e\xc8\xba\xb2\x45\x15\x6d\x52\x43\x2a\xa8\xc2\x80\xca\x24\x21\x20\x9f\xcb\x88\xbb\x21\x74\x9c\x66\x17\x60\xd8\x2b\x1b\x76\xb1\x97\xd7\x2c\x36\xe5\x7d\x8f\xb8\x22\x99\xb0\x26\xc2\x72\x58\x88\x64\x1e\x4f\x45\xc9\x2e\x29\xef\xc7\xe6\xa9\xde\xd8\xdf\xa0\x45\xd9\xc2\xe9\x32\x13\xc9\x0d\x7f\xbb\x50\xf9\x57\xd5\xb3\x1a\xa4\x7a\xa9\x49\x3b\xfb\xdd\x79\xe3\x12\x85\xb6\x80\x79\xa5\x4a\x55\x69\x5b\xd7\xf0\x2f\x63\x6a\xe9\xe6\x05\xe7\x7f\x70\xb0\x5e\x81\x88\x5d\x85\x33\x79\x51\x46\xc0\x12\x4e\xd3\x27\x19\xa1\x71\xbb\x19\x0d\xac\x74\xc9\x12\x43\xde\x28\xaf\xeb\x19\xff\xf8\x5a\xd1\xad\xaf\xe3\x45\xe4\x94\x0d\xec\x0f\xdc\x64\x63\x9c\x0a\xc9\x74\x91\x36\x64\x03\x8d\x34\x59\x07\xeb\x7e\x81\xf0\xba\xe2\xc2\x92\x87\x5b\x41\x0e\x64\x17\x20\x65\x62\xb3\x3b\xa4\x02\xd2\xda\x73\x5a\x10\x42\x0b\x38\xe9\x45\x11\xdf\x87\x04\xd2\xc0\xb1\xf8\x34\x2e\xf2\x8e\xc2\xd3\x9a\x8a\x98\x52\xb5\x1a\xd0\x71\x31\x71\xe0\x88\x40\x01\xea\xd9\xb6\x68\xa3\x81\x15\x00\x66\x95\xf9\x35\xc3\xaf\x18\xac\x36\x36\x24\xf2\x77\x79\xde\x88\x33\x71\x4a\x9c\xab\xbc\xb2\xa7\x62\xe5\x06\xdc\x7e\xf7\xa9\x7d\xd1\x9a\x5d\xf6\x8a\x8b\x9f\x2b\xab\x59\x05\x66\xcc\x27\x12\xee\x2b\x2e\x0e\x2b\xab\x11\x98\x7e\xea\x16\x23\xae\x91\xc3\xa1\x32\x97\xd0\xeb\xd0\x6e\x06\xda\x29\xc6\xd9\x24\x68\x2a\x31\x1a\x86\x42\x81\x71\xd6\xb4\x14\xaa\x9c\x43\x4f\xf8\xc3\x20\x66\x5e\x6b\x8f\x70\xd9\x41\x45\xad\x37\x40\x63\xfb\x1d\x19\x72\xc9\x86\xc5\xd1\x06\x38\x60\xb6\x64\x2c\x8f\xc8\xe3\x23\x70\x7a\xfd\x82\x27\xf3\x84\xcf\x0e\x8b\xa2\x64\x51\x24\xc0\x76\x3d\x9f\x30\xb0\xaf\x2a\x56\x20\x5e\x4b\xb2\x6b\x5e\x24\xa2\xd4\xf1\xd4\x28\xb7\x5c\x7c\x8d\x15\x9b\x66\xc8\x5e\x43\xd2\xf5\xb6\x65\x53\x36\x6b\x9f\xb2\xc6\x49\xfd\x1a\x3b\xeb\xeb\x0c\x48\x1e\xf1\x31\x9f\x04\x99\x45\x1f\xac\x19\x97\xbb\x19\x3a\xee\x66\x30\x61\x81\x6d\x8e\x37\x30\x7e\xcb\x5c\xe3\xb7\x62\x9c\x84\x1b\x21\x1b\x27\x13\xd2\x91\x9d\x5a\x21\x68\xa1\xa0\xfe\xd4\x2d\xe1\xc0\x46\x56\x72\x2d\x62\xd2\x09\xf0\xfc\x52\xa9\x8c\xdb\xcf\x19\x48\x07\x14\x6d\x99\xcf\xe7\x25\x17\x6c\xb0\x32\xc6\x2e\x4d\xe2\x53\xc9\x02\x34\x49\x3a\x87\x3b\x51\xf4\xcd\xd7\x4f\x7b\xa6\x79\x09\xec\xe5\x7d\x3c\x9b\x15\x91\xd3\x0d\x21\xcf\x9f\x3f\x25\x46\x8c\x6a\x2c\xdc\x1a\x9b\x1d\xec\x7d\xb9\xb6\xcd\x83\xe1\x68\x60\x9a\x44\xcf\xf8\xfa\xd6\xf6\xbe\xfa\x6a\x6d\x63\xa6\xa1\x7c\x31\x6c\x15\xeb\x36\xb7\xb1\x33\x74\x5b\xd9\xfb\xdc\x56\xf6\xdc\x56\x9e\x7c\x6e\x2b\x4f\x48\x9d\x31\x8e\x9f\x12\xea\x91\x3f\x7b\xb6\xe7\x98\xc8\xf8\x51\xfb\x1e\xc5\xb3\x67\x4f\x06\xab\x90\x24\x49\xd7\xa5\x0b\x37\xdc\x06\xd8\x5f\x02\xbf\x26\xc0\x82\xc2\x17\x50\x1d\x67\xe2\xc9\x9e\x42\xb8\xc6\x6b\x00\x3c\xda\xd6\xdc\x02\x72\xa8\x8d\x08\x02\x9a\xb0\x77\x00\x4e\x4c\x63\x69\x09\x8c\x2a\x2c\x37\x79\x3e\xaf\x2b\x79\x1b\xd9\x96\xc1\x13\x4d\xf4\xcb\x69\xbe\xe0\xcd\x35\xee\xc3\x1a\x3e\x1e\x37\xb4\xda\x4c\x27\x63\x6a\xa3\x99\x16\xd6\x62\xb6\x64\xe3\x89\x2b\xa5\xb3\xcf\xfa\x30\x6b\x2e\x2e\x9b\xa5\x5c\x3f\x4d\xe3\x45\x3c\x4d\xc4\x3d\x1b\x0e\xbe\x7c\xfa\xd5\x37\x5f\xd3\xc6\x75\x50\x05\xbc\xd5\x68\xf7\xe0\x08\xcc\x63\xb5\xf7\x62\xf2\x07\x7f\x71\xcd\xa7\x1f\x34\x85\x07\xf3\xec\xee\xce\x9d\x09\x06\x3f\x31\x25\xdd\x39\x50\x44\x93\x07\xbc\x0e\xb3\x76\x13\x99\x06\xe9\xc0\x1d\x3b\x69\xde\x5e\xdc\x18\x21\x78\xe3\x83\xc3\x83\x14\x9c\xb6\xa2\x0e\xa7\x6a\xe5\xbd\xdd\xdd\xfd\xf4\x5d\x55\x53\xd8\x08\x44\x55\x39\xf4\x71\x41\xdb\xea\x8a\x41\x9f\xc0\xec\xb0\x10\x79\xc6\x0e\xd6\x86\xdb\xe3\xcc\x59\x71\x8f\x8a\xc3\x57\x3b\xec\x09\x85\x99\x76\x6d\xa6\xeb\x3d\x69\xe0\xe0\xec\x0c\x27\x6c\x1a\x09\x3a\x20\x7a\x79\x9a\x68\x3f\x84\x44\xcd\xc8\xa7\x9c\x49\xb5\x3b\x2b\xbb\xc6\x19\x2a\xa7\xd3\x68\x40\x9f\x10\x3d\x4a\xb1\xc1\x28\xc5\x7f\xfd\x14\x23\x37\xd4\x44\x6d\xd8\x09\xec\x84\x13\x3a\x8f\x04\xc4\x6a\x44\x41\x74\x3c\xf5\x64\x00\x9a\xac\x80\xf3\xea\x34\xa5\x3d\x92\x70\x5a\x94\x65\xa3\x22\x56\x60\xfb\x2b\x23\xfc\xfd\x64\x87\x3d\x31\x21\x9b\xc6\xc9\x84\xc6\xf2\x9f\x9d\xe1\x84\x96\x2c\xee\x9d\x25\x7f\xf0\xfe\xd9\xf1\xbf\x8e\x2e\x5e\x1f\x9e\xfd\x44\x97\x6c\xd0\x83\x7c\x53\x7b\xdb\x8c\x2d\x49\x32\x8f\x86\x4c\xfe\xc0\x1a\x6c\x1e\xc5\x74\x8f\x50\xbe\xc3\x4a\xe3\x66\x02\x21\x73\x2c\x9c\x29\xcb\xf7\xd3\x67\x2c\xd9\x29\x21\x23\x5d\x36\x4e\x77\xf9\x84\x65\xe3\x74\xd2\x91\xbd\xb3\x7c\x97\x63\x20\xdd\x27\x18\x6a\x27\xd2\x6f\xc9\xca\x45\x55\xce\xef\x5d\xd8\xa0\x81\x77\x40\x2b\x56\x71\x37\x85\xc6\x28\x1d\x07\xd3\x4c\xd8\xde\xf0\xcb\x6f\xbe\x7c\xfa\xe4\xeb\x2f\xbf\xa1\x15\x2c\x8a\x7b\x6c\x2c\x28\xd0\xd8\xc2\xf1\x37\xf8\x8b\x3b\x55\x58\xba\xd2\x5f\x2c\xa6\xee\x50\xcb\xfa\xed\x50\x81\x9b\x0a\x36\xd8\x17\x96\x2d\x14\x9a\x1d\x29\x18\x1f\x8b\x09\xcd\x20\x41\x1f\x4d\x20\x31\x9f\x12\xf3\x19\xda\x20\xa3\x49\x44\x24\x65\x21\x9a\xc5\x1b\x01\x7f\xa4\xc0\xa7\x35\x89\x98\x4c\x88\xbe\x42\xf6\x97\xa1\xcb\x68\x36\x1e\x4e\x54\xd6\x8d\xa0\xf3\x84\xf2\x71\x3e\x51\x1b\xc0\xde\x5d\x70\x22\xe2\x85\x58\x16\x95\xf0\x57\xc6\x97\x47\x6e\x20\x77\xce\x89\x96\x6e\x05\x73\x18\xb9\x1f\x8c\x6c\x46\x7b\xb5\x04\xd7\x06\x51\xc4\x89\x16\x0f\x2b\x9d\x8f\x83\x51\xa8\x40\xd5\x90\x3d\x8e\x58\xc3\xd5\x0b\x99\x7b\xfc\x5a\x65\x4d\x5c\xa7\x01\xb3\xea\x3b\xee\x5c\xc2\x4a\xf9\x78\x91\x43\xb2\x1c\xd4\xad\x5a\x70\x1d\xb7\x17\x25\xef\x62\xae\xa6\xdf\xea\x63\x67\x91\xc0\x0a\xbe\xab\x32\xca\xbc\x84\x23\xb6\xa1\x85\x16\x55\x29\xcd\x8e\xea\xb8\x09\x7d\x2b\xc0\xf4\xc1\xe5\x1e\xb8\xa1\x97\xe3\x8d\xe3\xf1\x6b\x5c\x05\x55\xac\x42\xeb\xdf\x80\xe2\x1f\x59\xae\x63\xbd\x69\x82\x5b\xbb\x20\xfb\xe2\x59\x01\x9b\x3c\x93\x87\x4b\x6e\x71\x33\x34\x37\x7f\xbe\x86\x76\x77\xd8\x90\xcc\x7e\x8b\x8f\xc5\xce\x70\xf2\xfc\xf9\x9e\x97\xb7\xde\x58\xbe\xc9\x59\x1b\x29\xd1\x9e\xda\x8e\x56\xaa\x47\xcd\xc4\x8d\x1c\xc1\xa1\x92\x8b\x44\x64\xb5\xaa\x15\xd1\x2d\x42\xd1\x2a\x88\xcd\x79\x36\xe5\x9b\x0b\x57\x9d\x67\x48\x73\x1a\x8b\xbc\xa8\x4a\x5c\x69\xf6\xe7\x65\xae\x49\xa9\x22\x58\xd5\x5b\xe4\x6c\x33\x16\xcb\x1d\x83\x31\xd5\x93\x3c\x3b\x16\xfc\xe6\x54\x0f\x88\x81\x2e\x1b\x7a\x71\xdf\x61\xe0\xf5\xd3\x3c\x17\xee\x5b\x63\xd6\x11\x7e\x08\x9f\xdf\xbf\x7b\x79\x78\x7e\x74\x71\x7a\xf4\xea\xe8\xf4\xe8\xcd\x8b\xa3\x97\x17\x3f\x1f\x9e\xbc\x3f\x62\x0a\x8a\xcb\x94\xfb\xcd\x66\xa5\xdf\x9c\xfe\xfd\x22\x9e\x5e\x43\x09\xf9\xef\xcc\x16\x71\x64\x9d\xc9\x3a\xd7\x3f\xd9\xf4\x6d\x52\x26\x79\xe6\xa8\x59\xe4\x6b\x94\x55\x98\x90\x75\x9b\xc9\x20\x35\x25\xab\x50\xcb\x15\x35\xba\x4e\xdb\x8f\xf5\x46\x56\x9d\x54\x43\x18\x80\xcc\x5f\xed\x0b\x7e\x1e\x63\x08\x45\xf2\xf8\x18\x85\x55\xad\x6a\x76\x29\x8c\xc8\xd5\x1b\x94\x6e\x6a\xc9\x5f\xe5\x05\x36\xa5\x25\x9a\x49\xa6\xbb\xa8\x71\x35\x09\xe6\xc5\xe0\xc5\x70\xae\x13\x65\x87\xb7\x4e\x4f\xee\x4e\x68\x0d\x98\xf6\x35\xa8\xe1\xe3\x34\xf9\x83\xcf\xd8\xf6\x50\x73\x2b\x57\xc0\x68\x5e\x39\x1a\x2b\xdc\x0c\xad\xfc\x0b\xe7\x1f\x9a\x08\x5c\xa7\x97\x03\x1f\xc2\x51\xf0\x3d\x22\x98\x72\xa8\x6e\xae\x20\xf2\x41\xd0\x1c\xa9\xef\x26\xf2\x48\x7a\x33\x82\x86\x0d\x02\x83\x55\x3e\x83\xc1\x4e\x28\x9c\x04\x50\xb1\xda\xe3\xfe\x08\x40\x6b\x8a\x92\x37\x5f\xf6\xbb\x66\x63\x14\x84\xe6\x8c\xb1\xe4\x20\x1e\x45\xc1\xaa\xe5\x34\x27\xb8\x65\xf4\x78\x1a\xf6\x7c\xed\xc0\xb0\x8d\xcf\x82\x09\x26\x82\xd4\xec\x8c\x81\xe4\x09\x34\xeb\xed\x23\x84\x5c\x25\x70\x02\x8d\x06\x6a\x40\x49\xd4\x7d\xf3\xf6\xfc\xe2\xf5\xdb\x97\xc7\xaf\x8e\x8f\x5e\x76\x89\x92\x5c\x67\xfc\x2e\x6a\xdf\xb9\x49\x96\xf1\xc2\x58\xb6\xc4\x57\x2c\xeb\xbf\x78\xfb\xe6\xec\xfc\xf0\xcd\xf9\xc5\xf9\xe1\xf7\x9f\x84\x1b\xfc\x9d\x91\x71\x2d\x45\xae\x29\xa3\xe4\xee\x44\x67\xa9\x71\x13\x1f\xfe\x5f\x08\x67\xa7\x82\xa6\xb5\xcc\xd2\x5f\x84\x06\xcc\x0f\x59\x46\x9a\x6e\x85\x54\xa5\xdb\x6c\x1f\x3f\xcf\x6e\x8d\x19\xce\x75\x92\xce\x0a\x9e\x61\xdf\x41\xe8\x8a\xca\xc4\xd4\x9b\x28\x35\x31\x82\xba\xed\x31\x9f\x54\xd4\x49\x0e\x39\xeb\x14\x03\xd2\xe7\x5a\x85\x3a\xd2\xce\x82\xb7\x84\xb8\xfb\xd7\xbb\x1f\xa7\xca\x8a\xa3\x41\xf6\x6f\xc2\xd8\xe8\xac\x70\x51\x06\xd6\xef\x29\xd2\x95\xb4\x30\x32\x7f\xdc\x12\x82\x66\xae\x14\xb8\x46\xca\x4f\x1d\xf9\xfe\x46\x9b\xa1\x58\x45\x53\x5c\xf2\xda\x0b\x7f\x1e\x0a\x11\xfd\x01\xa8\x0c\x3c\x70\x46\xf7\xa3\xd8\x03\x3e\x37\xc0\xcf\x33\x56\xd0\x18\x72\x59\xb3\x84\xc6\xfa\x8e\xf3\x2f\x0c\xf3\xfa\x5c\xae\xab\x7c\x03\x18\x24\x29\x61\x33\x9e\xc7\x57\x57\x7c\x46\xa2\x84\xf4\x7a\xb1\xbd\x24\xd5\xd1\x87\xd9\xc0\x04\x29\xe7\xd7\x49\x79\xec\x60\xf0\x28\x96\xe7\x0d\x2f\xf0\x94\x95\x4e\x27\x6e\x32\x67\x75\x4d\xdb\xce\x48\x94\x12\xb2\x64\x71\xcd\x2e\xab\x19\x40\x15\xd7\x2d\x55\xde\x1e\xdc\xee\x2a\x75\x90\x1c\x19\x14\x45\xf1\xfd\xfb\xc5\x2c\x06\x96\x05\x6a\x90\x8e\xee\x0e\x8b\xe4\x37\x97\x49\xc6\x49\x04\x81\x4b\xae\xe8\x74\x42\xa8\x03\x2d\x1a\xd7\x2d\xcc\x4d\x32\xa5\x29\xd9\x10\x30\x9b\xdf\xfd\xb3\x74\x45\xaa\x8b\xfa\x3b\xa3\xe3\xd2\x30\x66\xb8\xa2\x88\xa7\x1f\x48\xe4\x62\x67\xae\x0b\xe9\xfb\x64\x9e\x45\x1c\x76\x08\x59\x11\xba\x0d\x09\x33\x36\x25\xc8\x82\x41\x7f\x02\x09\x16\x50\x5c\xe1\xa4\xc2\x67\xbd\x72\x34\x18\x1a\xa1\x75\x9d\x37\xd0\x68\x6e\x51\x18\xb1\x3d\x78\x75\xf4\x77\xbb\xbc\x59\xb2\x13\x89\x35\x46\x92\x67\xd6\x12\x51\x8a\xb9\x56\x84\xfe\x4f\xfc\x9e\x99\x68\x0b\xb7\x2c\x59\x8b\x54\x2b\x84\x9c\x22\x09\xbd\xa9\x68\xd9\xc4\xe0\x8f\x23\xe9\x1d\x83\xa2\x83\xdd\x1c\xd3\x7c\xf2\x29\x96\x00\xee\xa2\x5b\xb1\xdb\x15\x4d\x6a\x68\xad\x3c\x24\x9e\x54\x64\xb0\x60\x92\x68\xe9\x0f\x87\xaa\x10\xd6\xce\xa4\x39\xfe\xfc\xc9\xe3\xe3\x76\x75\x03\xc9\x15\x40\xd0\x52\x7d\xba\x23\xe2\x04\x86\x78\x09\x93\x9a\xaa\x32\xd3\xc6\x73\x20\xc9\x3b\x9e\xdd\xa2\x25\xad\xb8\x8e\x52\xba\x54\x07\x60\x3f\xdc\x8d\x25\x9d\xaa\xcc\x57\xb9\xe6\x8a\x2a\x94\xdd\x26\x64\x98\xb0\xe9\x26\x2a\xb4\x80\xcd\xe9\xec\xdd\x7c\xa2\x7a\x41\x3a\xf6\x16\x4e\x31\x8c\x70\x86\xf8\x5f\xb8\x17\xa4\x24\x3b\xc6\xe9\xa4\xe9\x2a\x0e\x57\xa8\xa8\xac\x08\xcd\x98\x30\xf3\xac\x1b\xee\x97\x6a\xda\x32\x5a\xb8\xfa\x9b\x2a\x9f\xbb\x56\xf2\x83\x17\x59\xdb\x99\x4a\x04\xbf\x51\x8c\x9a\x3d\x51\x39\x0d\x36\x7a\xed\xa1\x68\x3e\x75\x9f\x4f\xcb\x69\x68\xe4\x1a\xe2\x2e\xf1\x2d\xa0\xb4\xad\xaf\x29\xa8\x6f\x8d\x59\x52\x88\x7b\x8b\xdf\x1c\x9a\xdc\x0c\x10\x85\xe8\xff\xdb\xa4\x53\x83\xd8\x62\xa1\x3c\x62\x1f\x56\xf4\xb6\x3e\x6f\x99\x58\xd1\xfb\xfa\x2f\x67\x60\x3a\x03\x26\x32\x97\xb5\x56\x6a\x2a\xde\xde\xc1\xcd\x88\x3b\x4e\x14\x57\xd8\x88\x72\x29\xd6\xa1\x3b\xfe\xf1\x81\xdb\x90\x1d\x47\xd1\xad\x0a\x61\xf1\x0f\x30\x4f\x72\x3e\xdc\x9b\x0f\x33\x9e\x89\x44\xb8\x95\x2e\xc3\xd8\x15\x5b\xb5\x70\x1f\x39\x48\xc2\x89\xad\x02\x97\xf3\x8a\x10\x15\xdd\x62\xa5\x1c\x71\x1b\xa4\x22\x2b\x1d\x0e\xa8\xb2\xb7\x32\x79\x70\x82\x19\x53\x88\x0b\xa5\x52\x04\x12\xfd\xd7\x84\x50\x51\x5e\x5f\x77\x3c\xfe\xf0\xda\x68\xe5\x04\x19\xa9\xe3\xaa\x62\x86\xb8\x9f\x56\x34\x6b\x88\x1a\xf9\x59\x3d\xa2\xf9\x57\x4d\x7f\xf8\xa1\xd5\xbd\x4c\xb5\xd1\xa4\xa9\xb7\x3b\x18\xe4\xa6\xaa\xb4\xdc\xcd\xee\x33\x6c\xe4\x5f\xf0\xb7\x3a\x38\xfa\x93\x31\x07\x70\x01\xdb\xb0\x37\xb7\x8a\xe9\xd2\x7d\xa9\x8d\xee\x74\x9f\xee\x37\x1b\x64\xf2\x0e\x8a\x5d\xd8\xad\x7c\xe4\x5b\x59\x5e\x74\xc2\x6d\xe7\x84\xa8\xe0\xf0\x00\xce\xca\x72\x36\x13\xf2\xf8\x38\xb0\xe8\x48\x2e\x68\x42\xf3\x9d\x21\xa1\x98\x1b\x24\x09\x02\xf1\xe0\xcd\x71\xa7\x2d\xf4\x82\xab\x62\x3c\xa1\x77\xd6\x0e\x4f\x19\x2f\x16\x75\x57\x4b\xd6\xeb\x45\x19\x53\x92\x4f\x4e\xd1\xdf\x59\xac\x68\x01\x17\x0c\xc4\x90\x92\xc8\x1a\xb7\xff\xd9\x06\xbe\x91\x06\xa1\x6b\x54\xfe\xc1\x27\x8b\x0a\x83\xff\x20\x15\xa5\x23\xc0\x32\xc2\xaa\xcf\xc0\xd3\x4a\x9a\x54\x1e\xdd\x2c\xc4\x3d\x4a\x9e\xd4\x43\xb5\x6c\xe4\x03\x80\xc8\x13\x5d\xdb\xd5\xbb\x88\x10\xbf\xad\x8c\x7f\x14\x0d\xb4\xb1\x6e\x07\xca\x58\x19\x8d\x46\x76\x7a\x7b\x79\xe3\x25\xa8\x7d\xf6\x3b\x6d\x68\xdf\xcc\xa7\x26\xc8\x3e\xe0\xfd\xac\xe6\x13\x4c\xfe\xd5\x55\x4d\x73\x76\x15\x09\x44\x01\xf2\xa6\x06\x1a\xa9\x92\xa4\xd5\x51\x84\x7c\x84\xb5\xd5\x69\xbb\xfb\x22\x37\x13\x90\x84\x03\x89\x0f\xb0\x42\xe1\x7a\x6c\xd4\x79\xe3\x61\xce\x7d\x02\x41\x4a\xde\x46\xb1\x92\x7f\xc1\xe5\x74\xca\xe7\xaf\xf2\x50\xe9\xef\x90\x40\x76\xa8\x76\x7c\x15\x5b\x64\xda\xed\xd2\x8c\xf8\xf7\x98\x27\xf8\x3e\x83\xf1\xbc\x5d\xab\x77\xf2\x04\x3f\x1f\xf8\xbd\x04\x4d\xb4\x6d\xbd\xc6\x0d\xe5\xf0\xf8\x9b\x6f\x1b\x28\x5d\xdd\x33\xdb\xb8\x67\x38\x1e\x1b\x0b\x9a\x8e\xe9\x44\x79\xff\x86\xdf\xe4\xe0\x03\x8e\x58\xe8\xe3\xfa\x91\xea\x1d\x16\x0c\x56\xb1\x2f\x79\xc9\x06\xd4\x35\xc8\xc5\x4b\x40\x45\x2f\x62\x2a\x9d\x07\x97\xc3\xea\xae\x46\x75\xdf\xe6\x49\x51\x0a\x1d\x24\x9c\x8f\x75\xb3\x93\xd5\x67\x4d\xa7\xea\xca\x18\xbb\x60\x5f\x7d\xd9\x55\xe3\xa4\x1a\xf6\x14\x0b\x83\xb3\x24\x42\x05\x51\xd0\x64\x5d\x52\x07\x39\x18\x99\xf3\xb2\xec\xae\x28\xd7\x34\xaf\x89\xc7\xa8\xc7\xf1\x3c\x38\xe9\x3a\x14\x07\x71\xd6\xad\x13\xa0\x83\xf1\xce\x8e\x9d\x06\xa5\x52\x93\xd7\x95\xce\x98\x83\x6b\x40\x74\x18\xac\x45\x5e\x12\x3d\x7f\x54\x2e\xf0\x48\xbf\x5e\xd5\x7b\x25\x14\xa8\x5e\xfb\x2c\xc5\x99\xa3\x76\xab\xd3\xa6\xd1\x1a\xdf\x07\xa7\x9c\xf7\x94\xe6\x77\xbb\x29\xbf\xe5\x35\x5e\x0f\x98\xa7\x89\xc6\xb4\xfc\xf3\xba\xb8\x69\xca\xe3\x82\x5d\x51\x27\x5a\xc5\xfd\xab\x34\xbe\x2a\x5f\x15\xf9\x0d\xcb\x04\x85\x00\x15\x2f\xcc\x37\x96\xcb\x57\x05\x2f\xb9\x78\xc9\x2f\x97\x57\x57\xbc\x78\x11\xa7\xe9\x65\xec\xdb\x54\xbd\x16\xec\x83\x24\x89\xfb\xad\xe5\x38\x14\x94\xc7\x0d\x76\x4f\x48\xfd\x06\xb4\x38\xc6\x58\x70\xb0\xd6\x52\x93\x66\xbc\x9f\x94\x2f\x96\x45\x91\x38\xf1\x56\xad\xfb\x24\x2b\x05\x94\xf8\xe5\x3a\x11\xbc\x5c\xc4\xd3\x5a\xdd\xf3\x4f\x7d\xc1\x4b\xa1\x5c\x3d\xb2\xbc\xb8\x01\xc9\x9b\x9e\x44\x76\x23\xf1\xc3\x61\x2e\x94\xf2\x95\x55\xb5\xa2\x01\xa1\xf0\xb0\x72\x68\x07\x45\x0b\xac\x8c\x3f\x28\xcf\x6e\x01\x8f\xff\x20\xb1\x49\x46\xa8\xc9\x35\x25\x5f\xfe\xc4\xa3\x82\x18\xff\xe5\xbc\x46\xe1\xab\x75\xf3\x10\x23\x8e\x82\x6d\xee\x06\x80\xe1\x34\x7e\x02\x60\xc2\x42\x81\xc1\x46\xab\x90\x38\x11\xe5\x9d\xbc\xd4\x9e\x57\x5f\x75\x74\x19\x42\x9d\x64\xe7\x45\x9c\x95\x18\x01\x26\x58\xfb\x64\x1e\xf1\xf1\x1f\x7c\x42\x24\x16\x07\xb4\xc1\xfb\x97\xfc\x2a\xc9\x24\xdf\x5c\xdc\x3f\x88\x88\xac\xe6\x49\x16\xa7\xe9\x3d\x4a\xe1\x6e\x12\xf9\x0a\xda\xbd\xe2\x42\x45\xd9\xfd\x39\x6e\xb8\x14\xbd\xa0\x39\xe0\xf7\xca\x25\x4a\x80\xfd\x12\xa7\xfd\x58\x44\x03\x6f\xab\xbd\x14\x40\x54\xae\x60\xef\x67\x33\x5e\x1c\xe6\xa2\x6d\xaa\x71\x5e\x13\x23\x83\x7c\xd5\x9f\xe7\x85\x12\xe8\x9e\x42\x03\x90\x77\xfb\x96\x82\x86\x0b\x4c\x11\x04\x8d\xd9\xb4\xd0\x2a\xa5\x88\xd3\x87\x92\xa7\xf3\x51\x46\x5d\x50\x47\x39\x15\x05\xe7\xca\x7b\x11\x42\xb0\xa0\x29\xc9\xca\xf7\x2d\x2a\xa2\xd8\x07\xd6\x9c\x8b\x0a\xd4\x4a\xf6\xed\xc7\x33\xf1\x36\x49\xde\xeb\x45\x1a\x48\x45\xd3\xd0\x52\xc2\x0a\xd7\x89\x84\xd4\x85\x49\x18\x97\xe6\x00\xf2\x15\xa1\x4b\x96\x8a\xa8\xec\x2b\x14\x6b\x9c\xc2\xe5\x09\x48\xd9\xb2\x7f\x13\x67\xf1\x15\x2f\x30\xba\x98\x88\x05\x44\x41\xdb\x3e\x13\x51\x26\xa2\x54\x2e\xeb\x0b\x27\xa2\x4e\x34\x25\x84\xa6\x35\x81\x7b\x5f\xc4\x59\x96\x8b\xad\x04\xe2\x2c\x6d\x99\x34\x94\xe5\x16\x24\x5a\x56\x30\x6d\xa1\x97\x5d\xb9\x15\x97\x5b\xf1\x56\x91\xe7\xc2\x96\xec\x77\x49\x27\x66\xd0\xe1\x61\x2e\x30\x52\x13\x3a\xb6\x45\x53\x5a\x85\xde\x7a\xf1\x14\x51\x49\x63\xba\xa4\x89\x3f\xf7\xaf\xe3\x24\xab\x99\xf6\x6a\x10\x19\x67\x86\xf3\xba\xbd\x20\xfc\x19\x4d\xbc\xbd\x50\xe8\x79\xcf\x2a\x7b\x21\x77\xe0\x51\x81\x72\x6a\xf6\x82\x73\xab\x18\xc0\xe2\x5e\x2f\x8a\xfd\xdd\x50\xf6\x7a\x51\xe9\xc1\xba\xa4\x29\xbb\x5e\xb7\x1b\x12\x1f\xf6\x72\x25\x17\x7d\x2a\xf7\x43\x5a\xdd\x0f\x39\xa1\x73\x36\x35\xfb\x61\xc6\xa6\x95\xfd\x30\xaf\xec\x87\x19\x21\x74\xfe\xdf\xda\x0f\x4a\x92\x2d\x3b\xfd\x31\xf1\xf7\xc4\x8c\x56\x47\x40\xe8\x02\x05\x64\x18\x39\x40\x87\x0f\xbd\x36\xa1\x01\x32\x52\xc3\x43\x2c\x94\xa0\xf5\x86\x2d\xc6\x83\x49\xa7\x3a\x12\xac\x8c\x8f\xa3\xad\xee\xce\x4d\x5f\x45\x72\xdf\xe9\xc2\x53\xb9\x88\x33\x8c\xf3\xb9\xd3\xed\xf7\xcd\x1b\x9e\xcd\x76\xba\x5b\xa3\xd1\xd6\xf9\xdb\x97\x6f\xb7\x22\x71\x5d\xf0\x78\xb6\x75\xc9\x85\xe0\x05\xe9\x92\xd5\x92\x69\x93\xb4\x05\x75\x23\x15\x5c\xbb\x2e\xfc\x2b\x67\x9b\xa7\x74\x49\xa7\x34\xf6\xb7\x55\xc3\x36\xf7\xb0\x4b\x0d\x2a\x91\x5b\xc7\x6e\x74\xa1\xb6\x7a\x88\x3c\xbc\xad\x9e\x99\x4d\xd5\x8a\xf6\xce\xee\xb3\x29\xbb\x29\x28\xd7\xd8\xfe\x50\x88\x22\xb9\x5c\x0a\xce\xce\x39\xd0\x3e\x09\xcf\x84\xf6\x04\xaf\x95\x60\xd5\xe1\x6d\x43\x72\x18\xbf\x1a\x59\xed\x95\xa4\x89\xdf\xe4\x33\xce\xee\x0b\x80\x00\xaf\xe8\x24\xcf\x5a\x3b\xb8\x2a\x9a\x7b\x98\xf1\x52\x14\xf9\x3d\x7b\x01\xed\x5d\x25\xa5\xe0\xc5\x4b\x8e\xe1\xbe\xf3\x82\x1d\x52\x0e\x61\x66\x2b\x1f\xfc\x35\xa8\x50\x26\xdb\x43\xd2\x31\x6e\x97\x98\x3b\x1d\x82\x8a\x15\x07\x5d\x2e\x8f\x9b\x6d\xa9\xec\x8e\xba\x33\xe7\xa9\x93\x8d\x93\x09\x3b\x03\x67\x23\x2a\x50\xbf\xc5\xfb\x71\x59\xe6\xd3\x24\x16\xfc\x25\xc2\x2b\x37\xcb\x0b\xc9\x95\xb2\x8f\x30\x4d\xea\x75\x92\x5d\xb1\x63\xf7\x45\x60\xfe\x85\x0c\xcd\x45\xad\x67\x24\x2a\xc0\x54\x92\x9d\xe7\x6c\x6f\xd5\x01\xca\xf2\x6c\x7a\xcd\x25\x51\xab\x1a\xf4\x14\x00\xbc\x7f\x51\x06\x9f\xcf\x99\x26\x49\x83\x8a\x2e\x24\xb5\x55\xf9\x8c\xfd\x8e\x95\x2f\xd4\xa2\xbc\xd0\x62\xf0\x53\xca\xfb\xe7\x47\xaf\xdf\x9d\x1c\x9e\x1f\x5d\xbc\x7d\x73\xf2\xdb\xc5\x8b\xb7\xaf\xdf\xbd\x7d\x73\xf4\xe6\x9c\xf1\x3e\x06\xbf\x34\x08\xf7\x35\x22\x34\x56\xdb\x43\x0d\xc4\x5c\xa9\x83\x9d\x99\x2d\xdd\x0a\x3c\x93\xaf\x9c\xaf\xe7\x45\x3c\xfd\x00\xb9\x5e\xfb\x67\x47\xa7\xc7\x87\x27\xc7\xff\x3a\x3c\x3f\x7e\xfb\xe6\xe2\xd5\xf1\xe9\xd9\xf9\xc5\x9b\xb7\x2f\x8f\x2e\xce\xce\x4f\x8f\xdf\x7c\x0f\x56\x6b\x8a\x8c\xd4\x3b\x54\xbe\xba\xc9\x05\x3f\x49\x6e\x31\x8c\x1a\xe3\x7d\xa3\x04\x80\x17\xca\x9b\xf7\x0d\xbf\x3b\xc2\x7c\xe1\xb6\x2a\x0e\xf5\x65\x78\xd2\x78\xbf\xe6\xd5\x0b\x34\x7b\x9c\xbd\x33\x24\xd7\xa1\xf6\x0f\x54\x3d\xe8\x12\x6f\xe2\x1b\x3e\x6b\xfa\x18\xbe\xd7\x02\x94\xef\xcf\x18\xef\x9f\xe4\x77\x27\x92\x7f\xfa\xf9\xb5\x1e\x45\x92\x5d\xe1\xc3\x9b\x97\x47\xaf\x8e\xdf\x1c\xbd\xb4\x96\x1d\x60\x55\xa8\x24\x91\xae\x61\xdf\x9b\xf7\x27\x27\x5e\xa9\x17\x79\x36\x53\x20\xbb\xe5\x00\x4b\x69\x28\xb2\xdb\xa4\xc8\x33\x09\x98\x7a\xf3\x12\x65\xe5\x2f\x1d\x8c\x26\xdf\xbe\x7d\x7d\x5e\x70\x74\xb3\x54\x11\xfc\x19\xef\x1f\xbf\x7c\xfb\xfa\xc5\x75\x9c\x5d\xf1\x12\xcb\xd8\x87\xd7\xc7\x6f\x8e\x5f\x1f\x9e\x5c\xbc\x38\x7c\x77\xf8\xdd\xf1\xc9\xf1\xf9\xf1\x91\x1c\xe8\xcb\xa3\x57\x87\xef\x4f\xce\xc3\xd7\x2d\x0c\x11\x7c\x2c\xf3\x42\x4f\x67\x9e\x4d\x0b\x2e\xf8\x77\xf9\x32\x9b\x79\x7e\xd9\xcb\xc0\x58\xe6\xf8\xcd\x9b\xa3\xd3\x8b\x9f\x5f\x77\x25\xbd\xe6\x7f\x7a\x79\x74\x76\x7e\xfa\xf6\xb7\xc3\xef\x4e\xe4\x0e\x3b\x7c\xf1\x53\x57\x5e\xef\x7e\x19\x78\x7f\xd6\x95\x97\xbb\xff\xe1\xf4\xe8\xfb\xe3\xb3\xf3\xa3\x53\xf9\x6d\x16\x7c\xfb\xe1\xe8\xf0\x5d\x97\xd0\xeb\xe0\xb5\xb6\x65\x90\x55\x16\xc1\x37\xb9\x03\xba\x84\xde\xb0\xc8\x7f\xff\xee\x85\xec\xbb\xea\x8c\xa2\x72\xdf\x9b\x94\x52\xfc\xa3\x38\x4b\x2e\x53\x79\x8e\x24\x61\xed\x4d\xd7\x0d\x4c\xcc\xed\xc6\xf2\x5a\xb8\x12\x54\xc3\x20\x37\xd1\xd2\xa1\x34\x2e\x45\xbb\xf3\x19\x36\xa0\x0e\x5a\x4b\x1c\x09\xd5\x0b\xba\xdd\xe8\x5b\xa8\xa1\x38\x14\x90\x25\x65\xf7\x6d\x05\xe5\x77\xd7\x92\xca\xdb\x21\x30\x07\xf7\x6b\xc5\x63\xd5\x19\xc8\x20\xfc\xd5\xff\xf6\xa0\x33\x55\x70\xdd\x98\xb3\x1a\x0b\xf3\x4b\x3f\x0b\x43\x81\xc1\x3b\x2d\x88\x8a\x79\x34\x30\x60\x52\x2b\xd3\x15\xc8\x8e\xb3\xfd\x7d\x9d\x25\x3b\x77\x77\x97\xa4\x00\x25\xf1\x23\x51\xfc\x77\x7c\x9e\x17\x90\xbc\x5a\xd9\x3c\x5a\x8b\xca\x9c\xc5\x4e\x40\xef\x2b\xdf\x75\xa2\x0a\x4e\x11\x80\x93\xf9\xe0\x24\xac\xd0\xe0\xe4\x2c\x09\xc1\x11\xfd\x82\xdf\xe4\xb7\x78\x81\x47\x89\x2c\xee\xa4\xa5\xca\x3b\x09\xcb\xb5\xc2\xce\xd1\x20\xd9\xe9\xba\xf3\xa8\x1b\xa3\x98\x14\xa3\x4a\x32\xb9\x88\x9b\x0c\xe7\x9c\x8c\x30\xbc\x82\xab\xef\x51\x52\x80\x4a\xce\x2d\xbb\x12\xd5\xa0\x05\x2a\x4c\x01\x98\x17\x58\x99\x2f\x48\x75\x4c\xd3\x67\x8d\x4d\xf7\x7a\x26\x87\xd5\xd0\x78\xba\x98\x70\x13\x36\xf5\x18\xef\x97\x0b\xf0\x28\x28\xe8\x90\x50\xbe\x72\xe5\xf3\xa6\x9b\xb7\xeb\x68\x1a\x2b\x90\xc1\x05\x54\x61\xf1\xb4\xb2\x19\x9f\x42\x82\x0c\xdf\xce\xc2\x17\x40\x17\x8d\x06\x2b\x7a\x61\x14\x96\x84\x0a\x0b\xcc\x47\x57\xf8\x01\x34\x9f\x24\xfd\xec\x88\x0a\xab\xd6\xbf\x8b\xec\x03\xa4\x3a\x51\xfb\xab\x64\x77\x91\xf9\x4d\xb9\xd7\xfc\x61\x0b\xa5\xf9\x59\x74\xa6\x9e\x51\x49\x6e\xde\x29\x72\x53\xf6\x28\x1b\x3b\x77\x4f\xaf\x24\x04\xab\x74\x1e\x46\x4a\xa3\xaf\xe9\x3b\xfa\xbb\x5f\xda\x80\xfc\xc2\x09\x96\x18\x61\x40\xfb\xed\xc8\x10\x98\x43\x62\x25\x45\x7a\xc8\x19\x13\x76\x62\x12\x26\xfa\xe1\x20\x40\xe3\xe8\x0c\xa3\xa3\x9a\x63\x43\x7a\x14\x65\xf4\x05\xa1\x47\x51\x42\xbd\xc0\x99\x46\x23\x0e\xfa\x70\x7a\x14\xe5\xb5\xdf\xcf\x91\x25\x20\x84\xfe\xee\x99\xdd\x1c\x45\x45\x6d\xf9\x3a\x91\x17\x2c\x37\x4c\x3f\x42\x25\x17\xc8\xae\xfa\x99\xbb\xea\xdc\xa8\xe6\x21\xbe\x34\x0e\x62\x0f\xa2\x6d\x9b\xf9\x3b\x95\xf3\x77\x14\xc9\xb9\xb3\x15\x5f\x38\xc7\xec\xf8\x13\x69\xfa\xe1\xaa\x9e\xec\xa6\x6d\x54\xee\x07\xda\x4e\x21\xbf\x86\x9d\xf0\x72\x8d\xa1\x2e\x5c\x4a\xbc\xce\xec\x76\xc3\x9b\x05\xb4\x45\x6f\x3e\xbb\x97\xcd\xaf\x25\x7a\x12\x52\x41\xef\x4f\xcf\xde\x9e\x1a\x82\xeb\x55\x0b\x59\x92\xb9\x5e\x61\x40\x6f\x66\x57\x8e\x8e\x18\x12\xe2\xc8\xe2\xa5\x7d\x39\x7e\x87\x06\x2f\x85\x9b\x7e\x4a\xa7\xb3\xb7\xd9\xa9\xbc\xcf\x10\xf4\xab\xe1\x9b\xc4\xf7\xfa\x9e\x92\x00\xd1\xd0\x4e\x7a\x96\xdf\x30\x27\x60\xef\x5b\x03\x93\xb6\x3e\x42\x13\x21\xfb\x1e\x4b\xbf\x7c\xfb\x3a\x22\x2b\x5e\xe1\xa4\xeb\x59\x6e\x09\x96\x6c\x4c\xbe\xd4\xa4\x9f\xd2\x7e\xa9\x8b\x90\x04\xce\x16\x20\xd7\x59\xde\x54\xbc\x06\x8d\x33\x9c\x69\x2e\xbc\x8b\x05\xaa\x4a\xe4\xbd\xe5\x7b\x5e\x18\xc4\x2b\xe7\xc4\xf0\x5b\x90\xba\x7e\xd5\x69\xb1\x78\xa9\x77\x77\xf0\x68\xa3\x65\x79\x8d\xbc\x18\x36\x89\x33\xb7\xa2\x19\xe6\x5d\xfc\x0e\xb3\xa7\x36\x54\xb6\xab\xd7\x17\x39\xde\x8b\x60\xfa\x02\xef\x37\xa8\xa4\x13\xb3\xc8\x6b\x23\x5f\xd4\x50\x71\xb0\xad\x4e\x26\x98\x2d\x86\xea\x27\xb7\x9a\x0f\x7e\xdb\x28\xed\xb4\xc9\x35\xf8\x23\x72\x69\x79\x42\x74\x63\x3e\x03\xbb\x79\x7b\xdf\x35\xb4\x07\x25\x4e\x92\xb2\x39\x83\x6c\xb5\xad\x1f\xbc\xb6\x00\xc1\xaa\xd6\x2c\xab\xdd\xaa\xfb\xd2\x37\x69\xc1\x1a\x66\x3c\xd0\x74\xcb\xfb\x57\x3c\x3e\x16\xfd\x59\xa2\x22\x41\x23\xe9\x6e\xcd\x78\x2f\x2e\xf2\x05\xcf\xdc\x2d\xe2\xb6\xaa\xa2\x4e\x51\xae\x56\xb2\x75\xee\x2e\xb1\x91\x3e\xe8\x63\xe4\xf6\x96\x6f\x4d\x37\xd3\x34\x2f\x79\x63\x3f\x72\x1b\xc8\x3e\x1c\x70\xbc\x1b\x1b\x3e\xd9\x26\xc2\x6f\xb2\x52\x65\x97\xf9\x46\x7e\xd8\xb2\x3e\x92\x41\xec\x29\x0f\x19\x0a\x2a\x2c\x28\x75\xad\xba\x35\x67\xf9\x8d\x32\x33\x31\x4d\x53\x6f\xc3\xc8\xa6\xe6\xa9\xc5\x78\x4d\xf0\xe9\x4d\xa1\xed\x65\x1c\x88\x3a\x6a\x00\x6e\x33\xe0\x6d\x41\x3f\x15\x93\xc3\x82\x2a\xaf\xcb\x42\xee\x82\x2a\x42\x2e\x28\x1a\xd0\xe0\xe8\x12\x89\x7c\xcd\xac\x15\x6a\x8d\x1a\xc6\x63\x18\x3e\x39\x29\x1e\x3b\x63\xb2\xe4\xb9\xd8\x55\xb6\x05\x4b\xba\x86\xcb\xbb\x4b\xd2\xf4\x85\x53\xce\xf8\x5c\x1b\xcc\xe2\xbc\xb1\x83\x33\x67\x0b\x85\x59\x75\xe0\xba\x99\xde\x70\x8a\x2b\xe5\x75\x96\x39\x18\xf7\xfa\xd6\x8c\x51\x83\x33\xa3\x5c\xae\x94\x13\xff\x49\x72\x2e\xfb\x78\xdd\x03\x7b\xb5\x4f\xb8\xc7\x6d\x39\x9f\x34\xdd\x0c\x01\xaf\xc3\x4d\x1b\xe0\x17\xba\x3d\x20\xea\x98\x36\xc0\xa8\xd9\x71\x75\x8e\xeb\xe6\x51\xcf\x59\xfd\xe2\xd6\x69\xe2\x0d\xf2\x36\xf9\xc2\x6e\x90\xf1\xd0\x4d\x99\x15\xa9\x86\x39\xf0\x68\x08\x9b\x45\x32\xf3\x16\xb2\x69\x5b\x04\x95\x35\x06\x09\x30\x5d\xe3\xc1\xd5\xd8\xaa\x8a\x19\x11\xdb\x99\xf7\x6f\xda\xbc\xd4\x2b\xad\x00\x77\xed\xb4\xf1\x76\x03\x1c\xa2\x1b\xf1\x11\x14\x36\x11\x6e\xfe\xca\x6a\xea\xca\x53\xef\x84\xc8\xaa\x98\x2c\xe0\xdc\xb3\xe6\x09\xb1\x97\x07\xb6\x3a\x03\xb6\x5e\xa4\x6e\x28\xf7\x5d\x13\xfe\x9a\xe5\x37\x1a\x77\x69\x54\xa6\x8c\xcc\x9c\x33\x0f\x0c\x13\xa2\x4b\xd9\x96\x9a\x2c\xc7\x64\xc9\x45\x1a\x05\x4d\x24\x71\x98\xb8\x10\xb4\x2e\x46\x05\xed\xf8\xb7\x6d\x15\x03\xe1\x14\xeb\xb6\x5f\x15\xf1\x55\x03\x86\x56\x2c\x00\x9c\x49\x10\x8f\xb8\x54\xdf\xad\xdf\x8f\xa0\xde\x01\xfe\x73\x00\x9a\x20\x6e\xb2\xa3\xfb\xa0\x23\x77\xb9\x5e\xe4\x37\xb0\xf2\xdd\xae\xbf\x64\x3f\x9c\xbf\x3e\xd9\x60\xc2\x64\xb1\x3a\x98\x2a\x0b\xc8\x9d\xad\xa5\x04\xd9\x95\x2e\xdc\xf0\x34\x05\x64\x31\x84\xb0\xed\x78\xed\xfa\xfb\x4e\x1d\x3a\x51\x6d\xb5\x6d\xaf\x2d\xb3\x6a\xbb\x2d\xdb\x9a\xe0\x85\xee\x35\xdf\xb2\xd8\xde\xbc\xea\x72\x9f\x02\x7a\x65\x93\xd6\xb4\xab\xf1\x04\x6e\xa1\x70\x65\x1b\xfa\xc2\x7b\xc8\x1f\x7b\x73\x00\x0d\x67\x07\x28\xb4\x1a\xce\xdb\xda\xba\x0a\x09\xd8\x11\xaa\x6d\xf6\x39\x08\x45\xef\xd0\x00\xa7\xd4\xb5\xf8\x27\xd0\x8a\xed\x65\x23\xac\x52\x72\x61\x15\x52\xe1\x65\x6e\xce\x88\x5b\x2a\xaa\xd0\x5c\xd4\x25\x11\x4a\x2e\x8c\xb1\x58\x0d\x65\xe4\xd6\x53\x41\xb8\xc0\x7d\x01\x2d\x09\xd6\x80\xe2\x83\xeb\x50\x26\xa5\xb1\x74\x6a\x6a\xc1\x9a\xc5\x57\xc1\xcf\x8d\x2d\x30\xc4\xba\x87\xea\xaf\x72\x08\x9f\x03\x15\xf5\x44\xe6\x20\x54\x14\x81\x37\x14\xcd\x5b\xbd\x14\xd4\xa2\xb5\xc5\x13\x74\x38\x3f\xbd\xc6\xc6\xf7\xc0\x59\xe4\x4d\x9b\x70\xaa\x98\x66\xae\x63\x8c\xe0\xdf\x9e\x5a\xd4\x61\x48\xca\xe4\x0f\xfe\x7c\x60\x63\x19\xd6\xe9\x3a\x5f\xd1\x77\xec\x04\x08\xb4\x3f\xd6\xc8\x7c\x50\x1c\xe0\xab\x7f\xfc\x70\x13\xce\x63\xc6\x21\x13\x10\x1b\xfc\x45\xea\x91\xcd\xf5\x41\xae\xba\x60\x53\xdd\x90\xa3\x52\x90\x55\x9a\x58\xa6\x1a\xe4\xa0\x99\x0f\x35\xde\x9d\x1d\x30\x63\x6f\x23\x75\x54\x49\x0c\x88\xd7\x4c\x9f\x19\x37\x14\x55\x5e\x7b\x08\xc0\xe8\xb4\x9f\xac\x5a\x04\x7e\xb7\xf5\xd2\x32\xc3\xb8\x12\xfc\x6e\xeb\x0d\x62\x29\xd1\x4a\x4d\x7e\x42\x3f\xdc\xed\x40\x05\x75\x53\x5c\xb2\xd7\xa4\xce\xba\x6c\x6a\xf6\x7a\xbc\x5f\xb9\xe0\x95\x10\xf0\x7d\xa3\x1f\xbb\xef\x86\xbf\x55\xef\x86\x4f\x0f\xa3\x36\x4f\xf3\x8c\x78\xce\x07\x59\x28\xd3\x62\x8c\x65\xee\x86\x71\x94\x71\xbd\xde\xd5\x9a\xa6\x31\xe1\xd0\x5a\xef\xff\x55\xf4\x07\x46\xd1\xf0\xad\x11\xde\xc3\xa1\xfb\xae\x69\xf8\x36\x84\x50\x5b\xe4\xe1\x4f\x09\x3d\x00\xc2\x3b\x77\x3b\xbe\x40\xd9\x86\x0a\x9c\x72\xa5\x9e\x2a\x07\x6a\x83\x43\x4e\xd1\x79\x1a\xc6\x59\x63\x63\xf1\x1d\x74\xf1\xc3\x86\x2a\x56\x8d\x61\x2e\xe5\x66\x05\xd9\x94\xa0\xed\x9f\xff\x37\x71\x8c\xe9\x76\x3c\x98\x6c\x82\x6a\x1c\x67\x0e\x53\xd5\xe8\xde\xc6\xdc\x78\x09\x4c\x36\xc1\x41\xe4\xa1\x0d\xbd\xb4\x20\x94\xe0\x63\x88\x07\xf0\x73\xf5\x30\xcb\xf7\x70\x73\xc8\x51\xfc\xcc\x1e\x24\xed\x91\x5c\x65\x68\x9a\x3f\x1a\xd2\x19\x2f\xa7\xa3\x21\x15\x89\x48\xf9\x68\xb8\xa2\xff\xd1\xa1\xef\xf1\x1a\xc5\xcc\xab\xf4\x97\x35\x17\xcb\x2c\x9f\x2e\x5d\x93\x85\x92\x8b\xe5\xe2\x7d\xc9\x53\x5e\x96\x96\x17\x6c\x59\xe3\x9a\x0a\x15\xb4\xbb\xf4\x3f\x7b\x1d\x07\xb2\xaf\xee\x2c\xb9\xed\x12\xeb\x7a\xd5\x20\x46\x90\xac\x13\xcd\x80\x91\x3a\x88\x0a\xd6\xbd\x16\x62\x31\xfa\xe2\x8b\xbb\xbb\xbb\xfe\xdd\x93\x7e\x5e\x5c\x7d\xb1\x37\x18\x0c\xbe\x28\x6f\xaf\xd0\xbb\x24\x8b\x6f\xd0\x62\xff\xfd\xe9\xf1\xe3\x63\x57\xbd\xe7\x34\x63\xdb\xdb\x3f\x8f\x45\x5f\xc4\x57\x6f\xe2\x1b\x3e\x21\x23\xd9\x9a\xfb\x79\x48\x68\xd1\xeb\x6d\x67\x20\x99\xf9\xcf\x98\x4f\x1a\xed\x42\x11\xe0\xad\x78\xab\xbb\xc3\x77\xba\x5b\x49\x56\x26\x33\xbe\x15\x67\x5b\x67\x3f\x7f\xbf\x35\xc5\xb4\x53\xdd\x90\x9d\xab\x9b\x84\x37\x67\x51\xdb\x80\x24\x07\xb5\xbe\x91\x88\xab\xa8\x46\x96\x72\xad\xd0\x84\x3c\xe0\x25\x81\x18\x14\x15\x86\xae\x4e\x46\xd5\xed\x56\x22\x91\xfb\xe4\x73\xb7\xeb\xa8\xb9\xbd\x6e\x50\x1b\x0c\x6c\x2f\xa7\x19\xcd\x70\x7b\x25\x92\x8a\x3c\x80\x64\xa4\xb7\x49\xbe\x2c\x15\x01\x36\x72\x58\x61\x27\x0a\x81\x20\xba\xd1\xc3\xd9\xef\xf1\x94\x67\x00\x6e\xd4\xbd\x84\x2e\x20\xc3\x61\x61\xed\x27\xb0\xb6\x8e\x0b\x2a\xe4\xd2\x40\x7e\xdc\x7c\xbe\x25\xab\xa9\x19\x23\xa2\xa5\x49\x70\x19\x50\x8d\x56\x80\xb4\xb1\x4d\x54\x84\x05\x7f\xc3\x77\x82\x09\x88\xe5\x04\xc4\x1b\x76\x16\x87\x9d\x51\x5f\xd6\x17\xe3\xf4\x95\x2c\x3f\xf0\x4c\x42\x46\x9e\xc4\xc1\x91\x01\xc8\x59\x2f\xc1\xb2\x3c\x14\xa4\xb4\x70\xf9\xde\x0e\x73\x04\x2f\xb6\x91\xb5\x7c\x9d\xdf\x86\xe5\xb2\x42\x3b\x99\xbf\xc1\xae\x48\xfc\xdc\xfb\x5b\x70\xd6\xb7\xeb\xd4\x66\xbc\x72\x78\x04\x85\x13\x8c\xfe\x1d\xc5\xba\x7d\xd2\x7d\x36\x4d\x8a\x69\xca\x9f\x3f\xfb\x42\xfd\xe8\x92\xd5\x34\x16\xd3\xeb\x28\x23\x0f\xc6\x37\x44\xc1\x31\xdc\x66\x4c\x69\xb8\xe5\x14\xe8\x3c\xf9\x8f\x8f\x6d\x27\x16\xea\xd8\xd5\xf0\xb0\xd1\x6a\x15\x71\xea\xf8\x7c\x2a\xa3\x7d\x5e\x8b\x17\x2b\xde\xca\x2e\xdd\x92\xfd\x79\xba\x25\x93\x74\x4b\xe6\xd0\x2d\xcd\xa8\x40\xd0\x8c\xc6\xc6\x1f\x50\x62\x83\xf8\xf1\xd1\x47\xb4\xdb\x8c\x25\x07\xbc\xa5\x35\x87\xa6\xc4\xe6\x3c\x0f\x6a\xe5\xda\x20\xa7\x03\x9c\x05\x5f\xbd\x3d\x3d\x3a\xfe\xfe\xcd\xdb\xef\x7e\x3c\x7a\x71\x0e\xf8\x59\xa3\xed\xbe\xc8\xdf\x2f\x16\xbc\x78\x11\x97\x3c\x22\xda\x42\xaa\xfb\xac\xbc\xbd\x7a\xfe\xcc\xbb\x37\x9f\x77\x77\xb2\x9d\xee\xb3\x2f\xfc\x97\xcf\xe4\x2a\x3d\xef\xee\x63\x9e\x98\x94\xc7\x85\x46\x09\x20\xfa\xa9\xdd\x41\xf1\x5c\xf0\x42\x1d\xd4\x18\x9d\xc4\x9d\x15\xb6\x3f\x57\x06\x37\x94\x0a\x22\x05\xc2\x9f\xeb\xb2\x0c\xbb\x5c\xd5\x98\x6c\x48\x5c\x6d\xe3\x94\xba\x08\x81\x26\x2c\x03\x7b\xb2\xbc\xc1\xa0\x4c\x84\xd6\x64\x80\x8c\x72\x9a\xb3\x78\xe5\x21\x13\x5c\xa6\x55\x94\x43\xd2\xb1\x55\x84\x99\xf2\x32\xb2\xa2\xd9\x2a\xca\x1c\x3b\x8e\xef\x41\x8d\x61\x76\x68\xaf\x57\x27\x24\xad\xdd\xf4\x60\x4d\xa6\x78\x18\xa5\xdf\x08\x10\x91\x72\x24\x25\x4d\x33\xe7\x1e\xf7\x92\x4f\xf3\x6c\xd6\x25\x74\x0f\x28\x83\xca\x51\x56\x27\x71\x7b\xa8\x0e\xdb\xf6\x60\x15\x71\x72\xd0\xc0\x2a\x68\x34\xe4\x66\x2b\x71\x76\xb5\x89\xf9\xa5\x6e\x04\x8d\x25\x43\x34\xd8\xed\x5a\x49\xed\x46\x0c\x45\xdb\xc1\x04\x59\x8d\xbe\xa3\x33\x52\x63\x28\xd2\x7a\x10\x41\x62\x83\xa2\x9e\xed\x21\xcd\x59\x71\x50\x54\x6e\x65\xe1\xdc\xab\x79\xaf\x97\xbb\x57\xaa\x5c\x15\x70\x43\xda\x1e\x04\x04\x48\xe4\x5e\x8e\x6a\xe8\x26\xfa\x41\xcc\x3e\x0d\x42\x35\xac\xa4\xd7\xf3\x4d\x0d\x6b\xfa\x20\x34\x06\x1e\xa9\x20\xa3\x62\x35\xee\x5e\x76\x69\xf7\x32\xb9\x92\x7f\x25\x9b\xf4\x9f\x65\x2e\xb8\x7c\xc8\x67\xf7\xf2\x9f\xa2\x4b\xbb\x72\xeb\x70\xf8\x91\xcf\xe4\xb7\x99\xdc\x39\x72\x37\xd2\xee\x2c\x95\x7f\x04\xf8\xf2\x2a\x87\x5e\xf9\xf1\x7a\x28\xff\xec\xc9\x3f\x4f\xe4\x9f\x2f\xe5\x9f\xaf\xe4\x9f\xaf\xe5\x1f\x1e\x43\x21\xd9\x64\x22\xff\xbf\x91\xdd\xa7\x09\xfc\x01\x46\xae\x4b\xbb\x37\xb1\x3c\xd9\xdd\x1b\x2e\xe2\x2e\xed\x66\x39\x40\x92\xcb\xee\x16\xf2\xff\x42\x02\x52\x2c\x2f\x25\x90\xa5\xfc\xff\x26\x4e\xe5\xc7\x72\x11\xcb\x6a\xa5\x28\x72\x68\xa6\x14\x45\xf2\x41\x96\x2d\x97\x97\xf0\x57\xd6\x16\x98\xe4\xbc\x2b\x24\xe0\x4b\xf9\xbf\xac\x7a\x1b\x17\xdd\x49\x7f\x9e\x17\x47\xf1\xf4\xda\x4d\x57\x65\xce\xa9\xa4\x78\xd9\x70\xa5\xd6\xe8\x37\xfa\x13\xfb\x62\xfc\x6f\xb1\xfb\xef\x62\xeb\xdf\x1f\x0f\x07\xff\x5e\x0e\xbf\x7e\x2a\xff\x3e\x1d\x1c\xfd\x7b\x29\xef\xbb\x5d\xf8\xe7\x50\xfe\xdd\x7b\x0a\x7f\xbf\x85\xbf\xaf\xe4\xdf\xaf\x5e\xfd\x7b\xf9\x64\x30\x18\xfc\x7b\xf9\xea\xe8\xd5\xab\xc9\x17\xf4\x9f\xac\xbb\xcc\xd0\xcb\x78\x66\x43\x9c\x68\x52\xe1\x40\x12\x7b\x23\xfd\xb4\x1f\x85\x08\xa3\xf8\x93\xfc\x7b\x6b\xb8\xb7\xac\x2e\xdc\x5b\x16\xd2\x1a\x0d\x01\x78\x5a\x69\x7b\x1d\x05\xa6\x45\x72\x5c\xe3\x02\x8a\xec\x5c\x76\xc0\xbd\x7a\x6f\xce\x24\x39\x4d\x0b\x32\xe2\x81\x8c\x19\x68\xf9\x62\x15\xfd\x42\x3a\xbc\x5f\x71\x0f\x28\xf4\x18\x3b\x19\xfb\x3e\xfa\x27\xcd\x08\xcd\xd8\xdf\xe4\x0f\xda\x46\xc8\x10\x5a\xef\x6d\x90\xad\x48\xf4\xdb\xe3\x63\xf4\x1b\x7b\xd0\x5b\xe5\xc7\xa6\xc5\xd9\x14\x63\x1a\xce\x54\xd0\xc2\x92\x15\x28\x01\x59\x93\xd6\xa9\x61\xed\x5a\x45\xf5\xb5\xf3\x97\x29\xcc\x52\x5f\x4d\x56\x0a\xbe\x2b\x65\x8e\xba\x83\xe4\x7d\x5d\x2f\x88\xaf\xd8\x36\x14\x81\x61\x83\x5e\x39\xd7\x8b\xe3\x47\x18\xdc\xaf\xec\xc7\xce\xaf\xb0\x68\xbf\xe2\x68\xff\xc5\x7e\x85\xa5\xfb\xb5\x7d\xe9\x3a\x9e\x13\xc8\xbf\x50\xf2\xc4\xd9\x6f\x75\x0b\xda\x69\x70\x2a\xc1\x1c\xa7\x41\x68\x2d\x7f\x6d\xcd\xc9\xab\xae\xe9\xfa\xfb\x0d\x8f\x4a\x1d\x0f\x61\x4e\x03\x3f\x48\xf8\xc8\x98\x83\xe7\x7c\xb4\x8d\x6f\x63\x3e\xda\x1e\xc2\xaf\x92\x8f\x74\xc2\x57\x27\x6a\x92\xa4\x56\x32\xc9\xb2\x80\xef\x78\x81\xcc\x4b\xd1\x14\x19\xd5\xf4\x9b\xa0\x74\x2d\x0b\x62\xc0\x62\x54\xb5\x8a\x9f\x8f\xc0\x09\x2a\x1a\x27\x48\x51\x3a\x7a\xef\x8b\x75\xb9\xcd\x90\x24\xb1\x1d\xa0\xfc\xef\x53\x08\x85\x30\x9e\x9d\xa4\x0b\xb0\x55\x90\x8c\x78\xd1\x5d\x82\xde\x82\xf8\x32\x4e\x88\xbb\x0a\x58\x38\xb9\x6a\x6b\x67\x5c\x07\xe0\x20\x8e\xfe\x39\x88\x42\xeb\xed\x0f\x98\x63\x21\x79\x8f\xff\xd6\xd6\xc2\xe6\x13\x03\xaa\x8a\x3d\xdc\xa9\x77\xe2\x4a\x70\x1d\x73\x53\x1c\x43\x46\x54\xdc\xb8\x72\x2c\x17\x9b\x72\xdb\x03\x42\x4b\xfb\x04\xa9\x8c\xdb\x44\xaf\x81\x3d\x4c\xca\x4d\x3c\x68\x37\xe4\x71\xfe\x5d\x9e\xa7\x26\xdf\x82\x0a\xae\x97\xb4\x05\xd7\xb3\x65\x4c\xa4\x49\x27\xc8\xb8\x6c\x62\x42\xea\x16\xa6\x3e\xda\xa4\x09\x34\x09\x80\x68\x6d\x2a\xc0\x48\x33\xec\xa7\x26\x96\xa3\x6e\x9e\x89\xa8\xd0\xf1\x8f\x88\xbc\x1e\xcc\x5a\x25\x95\xe8\xa2\x12\x32\x79\x19\x55\xbc\x67\x20\x09\xba\x8e\x24\xb5\xcd\x2d\x5b\x31\x75\x3e\x6c\xcd\xe5\xc3\x41\xb7\x3b\x52\x81\xee\x5c\x77\x8d\x39\xaf\x04\xba\xe3\x6e\x84\x35\x93\x1c\x5a\xb2\x93\x58\xdf\x56\x9e\x39\x95\xbb\x39\x70\x8d\x0e\x72\xe9\xf5\xac\x8f\x48\x5d\xc8\xb6\xbe\xc8\x25\x25\x6b\x9b\xbb\xde\xbc\xb9\x0a\x26\x03\x2b\xee\xf3\xfb\x85\x33\x07\x0b\xb7\x39\x4c\x8f\xe9\x54\xb0\xe5\x6e\xb8\x27\x3e\x45\x37\xfd\x8e\x12\x89\x6d\x71\x92\xc9\xbb\x96\x75\x17\x45\xbe\xe8\x76\x1c\xbe\x55\xf4\x45\x7e\x92\xdf\x69\x06\xbb\x53\x42\x71\x10\xbc\x42\x59\x9a\xb1\x12\x25\xa7\xb1\x10\x85\x7c\x34\x41\x35\xb1\x80\xc2\x1e\xdd\x52\xdc\xa7\x1c\xb8\x12\xbf\xc5\xc7\xc7\x28\xb1\xec\xbc\x64\x4c\x69\x14\xb3\x5b\x3e\x4e\x7c\xd6\x7e\x42\x7a\xbd\x78\x9c\xfb\x95\x27\x84\x00\x66\xc2\xce\x09\x7d\x30\x41\x57\x66\xa3\x8c\xca\x59\x18\x15\xab\x55\x83\xc7\xe5\x12\x4f\xf0\x2d\x67\x0f\xc7\x6f\xde\xbd\x3f\x1f\x49\x86\xf9\x66\xb4\x3d\xa0\xf1\x52\xe4\xd3\xbc\x28\xf8\x54\xc8\x47\x49\xa6\x8f\xb6\x07\x2b\x7a\x76\x74\x72\xf4\xc2\x96\x5b\xd1\xb7\xef\xce\x8f\xdf\xbe\x71\x5e\x9c\x1f\xfd\x7a\x7e\x78\x7a\x74\xe8\xbc\x3a\x39\xfc\xee\xe8\xc4\x79\x7e\x75\x7c\x74\xf2\xf2\xec\xc8\x6d\xe6\xe4\xe8\xfb\xa3\x37\x2f\xdd\x76\x41\xd0\xe1\xbc\xf8\xee\xfd\xf9\xb9\xdb\x11\xda\x77\xdf\x73\x36\xee\xfe\x1e\xdf\xc6\xe5\xb4\x48\x16\x62\x24\xc9\xfa\x4b\xfd\x7b\x42\x2f\xe5\xe7\x43\x9d\xa6\x9d\x76\x4f\x8e\xdf\xfc\xd4\xa5\xdd\xe3\xd7\xdf\xcb\xbf\xaf\x4e\x0f\x5f\x1f\xc9\x8f\x87\x67\xf2\x9f\x57\x6f\x4f\x5f\x77\x27\xf4\x4a\xd6\x39\x7a\xfd\xdd\xd1\xcb\xee\x84\x5e\xc8\x87\xeb\x82\xcf\x25\x2f\x51\x4c\x25\x87\x14\x4f\x3f\x5c\x15\xf9\x12\xd8\x69\x0c\xba\xd2\x9d\xd0\x3b\x59\x4e\x16\x98\x38\xd1\xf6\xb8\x4b\x17\xef\x0e\x21\xa7\x8a\xf5\x83\x72\x7c\xa9\xbc\x82\x5a\xca\xcb\x1f\x1f\x8f\x78\x74\xc9\x29\x97\x4b\x7c\xc4\xa3\x0b\xa0\x9d\x4d\xad\xb7\xbc\xe2\x24\xa6\x82\x73\x1d\xf1\xe8\x4a\x56\x83\x5a\x77\x68\x4d\x68\xaa\x7d\xf4\xab\xa9\xbe\x1f\x1f\x55\x73\x8e\x3b\x12\x0f\x6d\x1f\x20\x8e\x94\x11\x43\x67\x9e\x74\x72\x06\xc1\x18\x0c\xb5\x89\x67\x3e\x22\x9d\x04\xe4\xda\xb5\xa2\xaa\x91\x13\x52\x78\x2a\xab\xcb\x76\xce\x78\x94\x48\xae\xf8\xc1\xe3\x8a\xa7\x79\xfa\x2a\x2f\xde\x9f\x9e\x44\x39\x94\x3a\xe2\xd1\x3d\xa7\xb1\xee\xb0\xbb\xcc\xca\x78\xce\x47\xdd\x9d\x5c\xe3\xf5\xb7\xd8\xce\x81\xf3\x69\x94\xdb\xc1\x9d\x1b\x27\x53\x2d\x1e\xd2\xc7\x2f\x61\x0f\xca\x8a\x62\xc4\xa9\xa4\xbc\x47\x82\x1a\x02\x7c\x54\xac\x40\x1a\xd7\xae\x71\xe1\x9e\x20\x50\x4f\xca\x07\x10\xfe\xd3\x44\x47\x26\x51\xf8\x88\xc6\x2c\xef\xcb\x73\x4a\x4b\x96\xdb\x90\x49\x5a\x6a\x8d\xe7\x1a\x02\xdc\x41\x03\x25\x4d\x02\x41\x21\xaa\x24\xd4\xb2\xba\xd1\xf3\x4e\x55\xb2\x9e\x64\x5e\x9b\x8a\x39\xea\xc2\x99\xef\xe2\x56\xeb\xea\x73\x0b\xcf\xa4\xd7\xeb\xc2\xa5\x05\x64\xd2\xaa\xd2\xf4\xcb\xf6\xa6\xbb\x88\x15\xba\x18\x60\xb0\x5b\xf2\x94\x4f\x05\x30\xb9\x75\x8d\xbd\x51\x8d\x39\xaf\x5e\x28\x1e\x44\x0d\xd8\xae\xdb\x07\x1e\x18\x1e\xab\x71\x03\x85\x7b\xcc\xa3\x02\x29\xdc\x77\xf2\x17\xa8\x06\x5e\xd7\xe4\xac\x8b\xad\x0f\xfd\xaa\x53\xe3\x59\xff\x1a\xd1\xe2\xbb\x16\x42\xf6\xbf\xc6\x62\x57\x63\xb1\x22\x89\x7a\x22\xb9\x2b\x27\x4a\xbd\xaf\x7d\x32\x23\xa2\x09\xcb\x60\xf7\xc9\x6b\xc4\x6e\xc3\x0e\x0f\xad\x9f\x12\x5a\x40\xd8\x4c\x13\x56\xba\xc6\x82\xec\x44\x99\xd8\x05\x5d\x48\xc8\xb5\x31\x59\xc2\x90\x3d\xed\x68\xd5\xd4\x41\x85\x6b\x8c\x12\x32\xf2\xd9\xcf\x28\xd1\x54\xef\x6b\xe0\x25\x1a\x62\x1e\xbc\xc3\x65\xf8\x9d\xd3\x17\xcd\x84\xf1\xc6\x49\x13\xec\xc9\x92\xc7\x1c\xb2\x27\xfc\x35\xeb\x83\x0b\x22\xb4\xf9\xca\xad\x8a\x0a\xcd\x7d\x6b\x36\xfc\xe8\x03\xa1\xcd\xbc\x1b\x17\xc0\x9f\x78\x3d\xe9\x1d\xdb\x8f\x42\xf8\x62\x5c\xd3\xba\x9b\x78\x9c\x71\xaa\x88\xbe\x1e\xe6\xd4\x0d\xd7\x88\xb4\xf3\xfb\x9e\x35\x81\xdd\x09\x92\x83\xb3\x8e\x17\x0e\xda\xeb\x14\x07\x22\x6c\xed\xcd\x59\x54\xd0\x1a\x38\xc9\xa8\x52\xb4\x6e\xb2\xcc\x86\xa1\xa7\xff\xc7\xcf\x65\xd5\x22\xd0\xce\x49\xce\x0e\x25\x9e\x4e\xec\x11\xc1\xf3\x58\xc8\x9d\x6e\x79\x8d\xd2\x67\x02\x69\x8e\x5a\x83\xca\x5e\x70\xee\xa8\xca\x49\x3f\x84\x18\xbd\xd6\xb0\x13\x3b\x12\x7e\x47\xd8\xa0\xd3\x57\xa2\x85\x63\x2f\x38\xa1\xc7\xff\x6f\x2e\xff\x92\xb9\x7c\xc7\x09\x7d\xf9\x7f\x7c\x2e\x95\x58\xce\x47\x3c\xea\x22\xa7\x53\x79\x83\x7c\x0e\xbe\x91\x37\x80\x0a\xee\x9a\xb1\x29\x7a\x1c\x6c\xa3\x64\x56\xc7\x3b\xce\xec\x8e\x7a\xf3\x7f\xc7\x2c\x18\xac\xbc\x3d\x44\x17\xe9\xca\xb4\x18\xaa\x44\x7b\xfe\x7c\x32\x1a\xee\xeb\x26\x98\x64\xca\xd5\x04\x58\xfa\xff\xc4\xe5\xda\x87\x48\x66\x19\xd6\xdb\x8a\xf4\x0c\xc3\x8d\x12\x7f\x25\xd1\xeb\x76\x47\xb5\xf1\xcf\xa1\x8c\x65\xf0\x25\x80\xaf\x5a\x84\x2c\x78\xb8\xd0\xb8\x29\xcd\x6d\x0e\x4b\xb9\x85\x79\x81\x31\x74\xb4\x35\xf2\x6d\x9c\xe2\x8b\xc2\x58\xbd\x89\x24\x4e\x21\xdc\xf8\x8a\xf7\x8b\x3c\x17\xe1\x59\xf2\x03\x15\x0c\xc2\xc4\x90\x2a\x27\xe4\xce\x90\xa8\xbc\xb7\xac\x80\xcc\xfb\x10\x91\x20\xe1\x41\xce\x4b\xb8\xa2\xec\x1f\x74\xf5\x8d\x54\xcc\xbe\x15\x38\x10\x97\x90\x23\xcc\x95\xe8\x05\x32\x24\x07\x84\xc2\x01\x41\x48\x10\x32\x36\xd8\xcf\x9e\x31\xb1\x9f\x41\xf2\xff\xac\x0a\x42\x11\x82\xb0\xea\xb4\x05\x08\xce\x92\x7a\x67\x17\x09\xb1\x67\xe9\x04\x53\x3f\x1e\x4c\xd4\x54\xab\x7c\x0a\x67\x3c\x9d\x37\x19\xfb\x5d\x71\x11\x0d\x74\xe2\x85\x33\xf0\x53\x6f\x34\x2e\xd1\xc1\xee\xa1\x6c\xe8\x05\xeb\xed\x61\x3f\x80\x80\x60\x8c\x25\x6a\x47\xe9\x94\xd0\x47\x66\x13\x34\x00\x66\x76\x89\xaa\xf0\xce\x6e\x92\x66\x13\x47\x55\x42\x56\xb9\x4c\xb2\x59\x9d\x65\xbf\xcd\x10\x80\x65\xfc\xc9\xe1\x4e\xa9\x81\x4a\xeb\x0c\xa5\xc2\x99\x69\x6c\xaf\xce\x3b\xb8\xb6\x60\xcd\x0c\x98\x54\x64\xe6\x13\xd7\xa5\xeb\x86\xef\x98\xad\xeb\x6f\xa6\xfc\x0b\xe7\xdc\x55\x2a\xb8\x87\x52\xcf\x6f\x6d\x05\x7f\x82\x9d\x6a\x26\x94\x79\x4d\x59\x9b\x8d\x05\xf7\xa3\xca\xe7\x4a\x2a\x08\x21\x40\x07\x21\x32\xa8\x4d\x07\x92\xcc\x23\xae\xc2\x50\x63\xe3\x4a\x04\x6e\xcd\x05\x4f\xe3\xec\x8a\x2b\x9b\xc1\xef\xde\x7f\x3f\xda\x9a\xa2\xe1\xe0\x15\x17\x5b\x7f\x43\xa3\xc1\x79\x91\xdf\x6c\x41\x7e\xef\xfd\x2d\xac\xcf\xba\x3b\xd5\x36\x6b\x8e\x96\xc9\xdb\x1e\xac\xf0\xff\x2a\x58\x1e\x3c\xcc\x86\x7d\xb2\x51\xcd\x5e\x21\x47\xf3\x07\x0f\xe2\x4f\x9c\x9f\x1e\xbe\x39\x3b\x7c\x01\x3c\x33\xa1\xef\x9b\xf0\xb9\xde\xb1\x2a\xbc\xc7\xec\x38\x2b\x45\x9c\xa6\x2a\x1c\x5e\xc9\xc6\x13\x5a\x5f\xc0\xf8\x82\x56\x4a\x80\xfc\x9c\xeb\x02\xcd\x2d\xf9\xe5\x6c\x01\x94\xc2\xdb\xf0\x68\x95\x2f\x95\x26\xf1\x96\xad\xab\xa1\xbe\x38\x35\xda\x4c\x6f\x67\xc9\xec\x45\xa8\x30\xb3\x7e\x42\x21\x58\xc6\x15\xbf\x0e\x36\x1d\x41\x49\x59\x2a\xbf\x0f\xe9\x00\xd3\x6c\x05\x76\xbf\xd9\x60\x00\x6e\xb3\x7a\x22\x83\x15\xa9\x45\x48\x4d\xab\xe7\x77\xd6\xb4\x0b\xea\x7a\xf5\x57\xaf\xb5\xd3\x60\xa1\x1b\xfa\xac\xdf\x36\x6e\xd7\x18\x4b\xda\xdb\xc8\x7e\x8e\xf4\xca\x12\x99\x10\xf9\xfe\xe2\xd0\x9a\x08\x55\x5a\x68\x37\x2e\x26\x1d\x31\x2e\x26\x76\x33\x80\xd1\x95\xea\x48\xb1\x13\x95\x45\xd3\x1e\x5b\xc1\x72\xd1\x98\x0d\xf6\xe3\x67\x89\xee\x28\xd6\x1d\x95\x2c\x19\xc7\x93\x4e\x3e\x8e\x27\x76\x7b\x44\xa5\xed\x48\xa5\x0c\x6b\x5a\x11\x9a\x36\x7c\xd7\x93\x4c\xa7\x6c\xb0\x3f\x7d\xb6\xd4\x3d\x4f\x75\xcf\x73\x96\x8e\xa7\x93\xce\x72\x3c\x9d\xf4\x13\xac\x14\xcd\x6d\xbf\x33\xb6\xc9\xaa\xd0\xeb\xd6\x62\x25\x5d\xb0\xc1\xfe\xe2\xd9\x4c\xf7\xbe\xd0\xbd\xdf\xb0\xeb\xf1\x62\xd2\x99\x8d\x17\x13\x35\x57\xd1\x0d\x59\x85\xba\xa9\xef\x5c\xb5\x0a\xb3\xd9\xc3\x0f\xf8\xc8\xb8\x1b\x60\x7c\xbe\x1f\x5a\x95\x81\x68\x36\xc2\x53\x7e\x25\x0f\x1f\x12\x4a\xe3\xdf\xf9\xc4\xf1\xfa\xe0\x1f\x45\xa1\x6c\x8c\x75\x41\x7c\xa7\xd4\x86\xe5\x71\x26\x78\x11\x4f\x45\x72\xcb\x59\xf7\x32\xcf\x53\x1e\x3b\xaa\x2d\xbf\xa2\x57\x1a\x59\x8f\x86\x8f\x26\x8b\x9e\x23\x87\x66\xdf\xa9\xab\xd4\x54\xf1\xbf\xd3\x9f\xf5\x99\x71\x7d\x02\xab\xb5\xdc\xaf\xf4\x3f\xba\xce\x15\xf2\x29\xd5\xe2\xea\x03\xfd\xc5\x2d\x19\x8b\xeb\xfa\x92\xb1\xb8\xb6\x25\xcb\xa6\x92\xea\x03\xfd\x9b\x2e\xa9\x34\xae\x95\x82\x4a\x01\xfa\xbd\x2d\x67\x52\xc3\xd4\x94\xd5\xdf\xe8\x6f\x9c\x50\xed\x85\x65\x43\x0e\x1d\x60\x85\xf0\x35\xab\x96\x6c\x0c\x59\x14\xbe\x22\x23\x6e\xec\x66\xb4\x34\xae\xd2\x3e\x50\x41\x3c\xb2\x25\x9b\x42\x22\xc9\x82\x3f\xba\xe5\x90\xd9\x2a\xea\x6e\xa3\x42\x4e\xf7\x39\xbf\x59\xa4\xb1\xe0\x72\x32\x21\x59\xc3\x0b\xf4\x7a\x68\x36\xe8\xd0\x59\xd9\xdc\x45\x6b\x6a\xe5\x60\xe3\x92\x11\x27\xa3\x6e\x77\x25\xe9\x8b\x8d\x80\x72\x63\xce\x55\x20\x6a\x69\x42\x49\x12\x37\x29\x6a\x7c\x6d\x8b\xbe\xc8\x6b\x35\x91\x35\x73\x04\xb9\x29\xb8\x8e\x07\x13\xec\x42\x68\xab\x26\xc2\x55\x13\x8d\x1c\xee\x03\x55\xfd\xe5\xdb\xd7\x4d\x35\xc2\x0d\x21\x6b\x80\xf9\xb1\x27\x15\xad\x9f\xb5\xdc\x4d\xc9\xf0\x9d\xac\x14\x4e\x56\xb5\x84\x8e\xe3\xf4\x87\x4a\x8f\xf7\x9e\xaf\x20\x33\x60\x0b\x95\x23\x6c\x13\xce\x0d\x88\xcc\x4c\xd1\x4e\xc9\x04\x55\xd5\x9d\xa6\xab\x7e\x02\xb5\xe2\x61\x4a\x35\x4a\xb7\xf1\x86\xa6\x2a\x5d\xad\x27\x51\x36\xed\xc9\x6f\xc9\x74\x54\x25\x48\x1c\x62\xc4\x69\xa7\x63\x57\x01\x42\x47\x9a\xac\x18\x74\x93\xc5\x7e\x01\x85\x5b\x57\xfb\x85\xce\xb2\xd1\xe6\xf7\xed\x00\xd4\xea\xb8\xfd\x07\x9f\x58\x2f\x6b\x73\xa5\xfe\xdc\x66\x61\xf1\xfe\xf4\xe4\xf1\xb1\xce\xf2\xf4\xfd\xe9\xc9\x41\xc0\xd3\xd5\x15\xbb\x4b\xb2\x59\x7e\xa7\xe5\x0a\x5f\xfc\x7f\xd1\x38\xde\xfd\x63\x22\xff\x0c\x76\xbf\xed\xef\xec\x4e\xfe\x3e\x22\x07\xd1\xbf\xbf\xf8\xf7\x17\xe4\x20\x1a\xff\xfb\xec\xdf\xe5\xe4\xef\xe4\x8b\xa4\xcf\x3f\xf2\xa9\x2b\x7d\xe8\xf5\xc4\x78\x38\x39\x90\x7f\x7c\x93\x06\x89\xbd\x10\xd5\x62\x57\x8d\xde\x72\x71\xd7\x89\x00\x77\x5d\x40\x4a\xb7\xc2\x5c\xc4\x2b\x40\x84\x76\x00\xdb\x55\x0b\x5b\x79\xcc\x4e\x4f\x22\x4e\x4d\x0f\x97\x71\x09\x3a\x5b\xd3\xca\xc8\x16\x02\xad\x6f\xa9\xd4\xbe\xfc\x63\x7c\xb3\x48\x61\x77\x74\x6d\x69\xab\xa8\xfc\x8f\x23\x7e\x53\x30\x9e\xeb\x08\x82\xb6\xd4\x2f\xbe\x32\x9e\x8f\xdd\xe8\xad\x7f\x0b\x75\x9d\xf2\x33\x2b\x1c\xa7\x02\xd7\xa8\xe7\x3b\x24\x77\x3c\xab\x9f\xdf\xdc\x02\xbc\xd7\xe3\x63\x14\x98\x98\x2c\x50\x93\x83\xea\x2b\xa5\x98\x5f\x55\x43\x70\xff\xc0\xe9\xef\x9c\xfd\x81\x4c\xec\x4f\x8d\xd4\x9c\x9f\xbf\xac\x8d\x87\x4b\xf3\xfc\xc3\x72\x51\x9f\x48\xc3\x06\x83\x52\x36\x75\x7e\x59\xcf\x74\xaf\xb6\x04\x34\xd2\x49\xe6\x91\x13\x3b\xaa\xe2\xbd\xf8\x3e\xe3\x1f\x17\x20\xc3\xb5\x89\x2a\x94\x0b\x63\x04\x7c\x7f\x77\x47\xec\x74\xc9\x56\x14\x34\xbe\x85\x63\xe0\xb3\x2d\xb3\xc1\x88\xb3\x1b\x57\x95\x8e\xc2\xfa\x90\x4b\x43\xee\x20\x39\xbb\x7c\xb6\x95\x67\x5b\x2a\x2d\xd0\xa9\x4a\x7e\xd1\x47\x4f\x50\xac\xa8\xe4\x4c\x1b\xcc\x90\x2a\xd9\x38\x3f\xea\xfb\xa7\xce\x8e\x92\xff\xb4\xcc\x8d\x6a\xf8\x33\x67\x46\xd7\xde\x78\x5e\x54\x8e\x90\x50\x0a\xe5\x8c\x57\x95\xf0\x24\xa0\xde\x17\x15\xb1\xd6\x8a\x90\x5b\x67\x00\x93\x65\xe8\x09\x50\x4d\xb4\x8f\x56\x54\x47\xab\xeb\x6d\x3c\x4e\x4c\x75\x12\x5f\xa6\x6d\x43\xb5\x85\x6a\x46\x6b\x3f\x6e\x34\x60\x59\x70\x4b\xe4\x5b\x2a\xc7\xca\x56\x77\x27\x8b\x6f\x60\xcc\xb6\xa1\x4f\x1e\xb6\x53\x75\xe3\x91\x5f\x71\x71\x9c\xdd\xe6\x53\xa0\xbf\x5a\x06\xef\x95\xab\x19\xbf\xf7\xfd\x93\xa6\xe0\x8a\x63\xc2\x1b\xac\xba\x35\xcf\x8b\xad\xee\xce\x8f\x67\x6f\xdf\xf4\xd1\xce\x30\x99\xdf\x47\x9c\xc8\xa9\xf1\xfa\xf8\xe4\xd9\xf1\x6b\x6f\x38\x41\xc6\x3d\xfe\x9f\x60\x72\x1b\xb5\xca\x0c\xf9\x6d\x9c\x2e\x81\x9e\x9d\xe6\x33\x25\x7e\x9c\x27\x69\xfa\x66\x99\xa6\x25\x89\x86\x83\x6f\x88\x96\x07\xb7\x21\xec\x78\x36\x6b\xe0\x1c\x8c\x12\xa8\x5b\xde\x97\xd3\x38\x4d\xbb\x84\xd6\xf4\x3c\xe6\x13\xf6\xa0\x4a\x8c\xba\x37\xf1\xf4\x3a\xc9\x38\xb8\x88\x52\x5d\x70\x24\x56\x20\x88\x83\x30\xab\x55\x17\x6c\x7d\x9f\x3d\x94\x8b\x11\x76\x4d\x17\xd3\x11\xef\xcf\xb9\x98\x5e\x43\xc6\xea\x28\xee\xff\x6d\x31\x25\x68\xbc\xa5\x8b\xc4\x45\x7c\x53\xea\x27\x30\x8b\x14\x68\x75\x95\x94\xaf\x11\x8a\x91\xe8\x9b\xdf\xb4\x4c\xfe\x90\x2f\xe4\x3f\x2a\x2c\x38\x56\xb5\xa0\x05\xfe\x0d\x18\xc8\x40\x8f\xa1\x3a\x49\x56\xeb\x1c\x4c\x48\x31\xe9\x64\x7d\x35\x23\x07\x99\xf9\x0a\x43\x1d\xb9\xcf\xe3\xe5\x04\x33\xda\xac\x22\x42\xe8\x8f\x7f\x56\xcd\xba\xde\x66\xdc\xdd\x51\x98\x9e\xd9\x44\x21\xf9\x7e\x99\xcc\xd0\x68\x19\x6c\x9a\x4d\xef\xbf\x72\x3f\xac\xfe\x78\xb2\x46\x7c\xd7\x17\xf1\x55\x27\xdb\x66\x2c\xe9\xeb\x54\x14\x17\xe7\x87\xdf\xf7\x7a\x42\x05\x44\x24\x2b\xc7\x60\xda\xb8\x0d\x5e\x26\x99\xa4\x55\x74\x0a\x7b\x70\x04\xe1\x34\xd0\x49\xf8\xf6\xf3\xcd\x6e\x37\xc6\x44\x48\xde\x71\x25\x78\xdc\x88\xf8\x8a\xfd\xca\x31\x8e\xf0\x27\xb8\x1b\x48\x2c\x17\xd8\xcd\x58\xa9\xa7\xd1\x46\x52\xc1\x06\xfb\xe2\x99\x51\xab\x68\x0d\xc2\xbe\xd0\x73\x63\xf3\xcd\x8a\x72\x2c\x26\x26\xd5\x3d\x2a\xb5\xe5\x39\x03\x52\x50\x88\xa8\x20\x8e\x25\xbb\x8a\xba\x3f\x38\xe0\xfd\xdf\xf3\x24\x8b\xba\x5d\x45\xca\x29\x27\x8e\x58\x72\x48\x8e\x17\x87\x99\x20\x21\x1c\x7e\xa1\xcd\x26\xbc\xc1\xba\xbc\x10\x2e\x9d\x09\x6a\x45\xfb\x31\x73\x3f\x0e\x1e\x23\x93\x47\x0a\x13\x7f\x1d\x0c\x47\x03\xe2\xbc\x3d\x8f\xaf\x0e\xf6\xd4\xab\x45\xc1\x17\x71\xc1\x0f\x8b\xab\xf2\xe0\x4b\xf5\x0e\xf7\x00\xbc\x7a\xaa\x5e\x19\x21\xda\x0f\x79\xfe\xe1\x60\xf8\xb5\x7a\xad\xf4\xf4\xf0\xf2\xc9\x9e\xdf\x0b\xe8\x64\x0e\xbe\xf6\x1b\x45\x5d\xdb\xc1\x70\x4f\x37\x8c\x32\x00\x68\x60\xef\xab\xaf\xbd\xb2\xc7\xca\xe5\xf3\xe0\xab\xa1\x6e\xfa\xae\x88\x17\x0b\x3e\x3b\x18\x0e\xf6\x74\xbb\x77\x49\x9a\xaa\x38\xea\x07\x7b\x83\x2f\x65\xbb\x76\x62\x12\xe1\xd3\xf7\xdb\xdb\x91\xe8\x15\x4e\x81\x5c\xb8\x08\x6f\x7b\x3b\xe2\x3d\x41\x56\xff\xe4\x12\x0d\x47\xc3\xaf\x69\x54\x67\x28\x28\xfa\xf9\x62\x08\xd9\x2a\x4a\x08\x19\x9e\x30\x5e\xc9\xab\x66\x08\xa0\x82\x44\x10\x2d\xf4\xc7\x32\x22\x14\x6c\xf1\xd2\x3c\x9e\x19\x2c\x7a\x3b\xa0\x09\xc4\x1a\x52\x7d\xee\xed\xad\xeb\xd3\xa4\x6e\x7d\x95\x17\xc8\x58\x44\x60\xac\x53\x9a\x10\xa5\x3f\x96\xf2\x50\xdb\x36\x87\xdf\x6e\x34\x0e\x8c\x50\x2a\x5b\xc2\x5c\x93\x8e\xfa\x17\x73\x4a\x3a\x50\x0e\x37\x6e\x11\xc6\x9d\x54\xde\xe4\x95\x37\x31\xcb\x0f\xc6\xe0\x33\x30\x41\xb3\x65\x1f\x10\x0c\x08\x5b\xd0\x98\xac\x08\xed\xfe\x9e\x88\xae\x85\x66\xb0\x31\x34\x67\x37\x71\x9a\x1e\x43\x3c\xde\xbf\x18\x26\x3b\xdb\x83\xaf\xd6\x80\x33\xbe\x9e\x48\x8a\x09\xf7\x80\x0a\x23\xa2\x9b\xf5\xf4\xfd\x11\x19\x67\x93\x4e\x90\x7c\x91\x6b\xc3\x06\x2c\x1d\x65\x84\xd0\x60\xf5\xbd\x1d\xf5\xe4\x9b\x16\x70\x3a\x98\xdb\xe4\x34\xcf\x05\x66\x18\x2d\xbc\x65\x7e\xf2\x39\x23\x71\x67\x30\xdc\x97\x89\x06\xd9\xed\xe5\xcb\xcd\x8f\x99\x33\x4d\x6a\xf2\x89\xb6\x8b\x4d\x0e\x30\x9a\xaf\xa4\xb7\x24\x83\x5d\x3b\x19\x7b\xde\xda\x38\xf6\x24\xd0\x03\x64\xd1\x50\x80\x27\xf3\xa8\xe8\xf5\xb6\x0b\xb8\x00\xd4\x75\x5a\x8c\x07\x13\x9a\xb0\x62\x3c\x9c\xd0\x9c\x15\xe3\xbd\x49\x47\xe8\x6e\x72\x42\x85\xed\x92\x56\xfc\x6a\xb2\x03\xfc\x6c\x76\x60\x46\x46\xc2\x39\xae\x10\x3d\x46\x38\x23\xa0\x8d\x0f\xee\x78\xbe\xde\x60\x3c\x11\xe9\x98\xa1\x1c\x98\x3e\x63\xee\x00\x50\x72\xaf\xd5\x6f\xfc\x56\x3d\x04\x41\xc3\x25\xf6\xfa\x34\x47\xa7\xc0\xa4\x19\x40\x15\x72\xc1\x0b\x7d\x05\x87\x3b\xa2\x38\x88\xf9\x28\xe8\xfe\x69\xb8\x21\xac\xc1\x91\xde\x14\x8e\xed\x13\x66\x0a\x4a\x9e\x0f\xf6\x93\xdd\x5d\xf2\x90\x8d\x93\xdd\xe1\xc4\x47\x6a\xab\x10\x3d\xf2\xbb\x2d\xb3\x0f\xd1\xc5\x4e\x54\x13\x56\x9c\x1e\x1f\xbd\xdc\x32\x49\xf2\xb6\xc0\x8d\xef\x18\x2d\x08\xec\xc5\x5e\x3a\x77\xef\x76\xb4\xcd\x1f\x1f\xb7\xf9\x38\x16\x13\x24\x99\x96\x62\xad\x42\xce\x73\xc5\x8b\x8b\xab\x52\x6b\xe6\xfe\xc5\x27\x6c\x7b\x50\xe7\x45\x87\xb9\x3a\x99\xbf\x44\x05\x8f\xd3\x34\x9f\x22\xdb\x96\xcf\xe7\x25\x17\xd6\x52\x0b\xb9\x35\x9d\x4e\xa9\x60\x02\x4c\xcc\x65\x6f\x60\x5f\x0e\x30\x80\xe9\x3b\x24\x9e\x77\x12\x0c\x4b\xfa\x80\x67\x33\xb8\xc3\xf4\x4b\xb9\x05\x24\xe5\x3f\xeb\xdf\xf0\xe2\x8a\x47\x68\xc9\x39\x23\x84\x6e\x97\x22\xb2\xb1\x66\x92\x8e\x60\xc9\xaa\x55\x08\x8b\x70\x56\xe4\xaf\xb7\x41\x96\x7c\xad\xb8\x06\x80\x0b\x8c\xe3\x64\x61\xc4\x8d\x35\x1a\x68\x26\x0a\x96\xe4\xa0\xd8\xe1\x6a\x1a\x46\x45\x8d\x00\x37\x15\xa1\xe8\xaf\x22\xdd\x02\x85\x4a\x6b\x7e\xba\xa5\xa0\xff\xe2\x2c\x16\xb0\x85\xa6\x8d\x6b\xad\x56\x3a\x4d\x4a\x13\x07\x4d\x91\xbf\x26\xec\x22\x7c\xda\xc8\x63\xd2\x92\xbb\xe3\x89\x9e\x17\x59\x5d\xb1\x01\xa2\x86\x0d\x98\xf2\x08\x74\xf8\xda\x49\xb2\x93\xf5\x7a\x3c\xa0\xfe\xb7\xbc\xf4\xff\x60\xb1\xa6\x69\xdc\x2d\x13\xd0\x71\xde\xb2\x9d\x1d\x3b\x48\x6f\x4b\x6b\x8a\x48\x1b\x41\xde\x70\x11\x6b\xfb\x47\xd8\xee\x99\x9d\x11\xc7\x87\x34\x8d\x4b\xbc\x57\x82\x10\x85\xce\xec\x03\xe1\xdd\xc2\x4a\xd7\x3b\x9b\xd6\x6c\x2b\xd3\x17\x98\xd8\x6b\x56\x40\xde\x00\x20\xbe\x70\x75\x56\x3e\x08\x3a\xf8\xbd\xf2\xda\x2a\xe1\xb2\xc8\x58\x61\x62\x81\x55\xbc\x25\x8b\x5e\xaf\x20\x0f\x19\x4b\x31\x4e\xad\xcd\x24\x5c\xd8\xd9\x31\x4b\xa2\x03\x9f\x2d\x8b\xe2\x3e\xca\x48\x38\x31\x45\xfd\xac\xd0\xac\x62\x3e\xe6\xb9\x9b\x8b\x4a\x0e\x7b\xdf\x0a\xb7\xb8\x2a\x75\x68\x1a\xd1\xeb\xe1\x61\xe2\x23\xf4\x70\x57\x99\xec\x15\xcf\x03\x7b\x62\xd6\xcc\x12\x5a\xbb\xf3\x5c\xb3\x85\x79\x2d\x5b\x88\xd9\xf6\x68\x6e\x89\x5b\x56\xd0\xdc\xdd\x03\x14\x3d\xb8\x58\x57\x71\x17\xbb\x10\xed\x4e\xbe\x8d\xaf\x18\x70\x93\xaa\xfc\x29\xbf\x4d\x4a\x39\x0f\xc0\xce\xc2\x5a\xbe\x52\x6c\x2c\x14\x26\x34\xff\x2c\xfb\xe7\xaa\xdc\xc1\xdb\x4f\x06\x70\xe3\xcb\x1c\x5f\xed\x6b\x10\x12\xeb\x84\x6c\x97\x4c\x03\x4a\x74\x20\xd6\x35\xd0\xfb\x6a\xf4\xc8\xec\xd3\x76\x83\x73\xed\x5b\x64\xa6\xb2\xc3\x55\xd6\x95\x48\x30\xe3\xce\x0c\x0e\xbe\x07\xdc\x32\x9e\x44\xa7\x66\xb9\x56\x69\x9d\xe0\x0f\xae\x45\xb0\x0b\xc1\xe2\xbd\x58\x45\x3f\x72\x42\xaf\xd7\xa1\x40\xdf\xef\x5c\x9f\xf8\x4f\xf7\x14\x47\xb1\xa3\x3e\xa9\xda\x3b\xbb\xaa\xe1\x86\x81\x3d\x3e\xce\xf1\x1f\x63\xb0\x62\xad\xbd\x1f\x1f\xab\x1e\xd0\xab\x48\x90\x83\xe1\x28\x92\x63\xeb\xf5\xe0\x36\x3f\x18\x8c\x20\x4e\xfb\xc1\x93\x51\x4d\x2f\xe0\x6e\xdd\xeb\x0d\x87\xe8\x99\xa8\xfd\xa7\x65\xf9\x2f\x47\xd7\x50\xef\xab\xd1\x50\xc9\x13\x15\x91\xf3\xe5\x93\x16\xca\x4d\x53\x51\x7a\x84\xb4\x90\x6b\x25\x5c\xd7\x73\xf0\x9b\x50\xfc\xb7\x2c\x59\x09\x78\xef\x93\xf2\x5f\x7e\xf9\x09\xdd\x19\xdf\x52\xb7\x5f\xf1\x69\xfd\x7d\xb3\x41\x7f\xd6\xed\x01\xb2\x3f\xce\x25\x0f\xe1\x0c\xb1\x40\x96\xac\xa9\x53\x08\xfd\x9e\x11\x3c\x65\x49\x09\x01\x34\xce\xe3\xab\x2b\x3e\x93\x87\xe5\xf1\x51\x0b\x17\x7e\x49\x04\xa6\xfd\x98\x89\x28\x07\xed\xa0\x07\x68\x1b\x47\x10\x4e\x4c\xcb\x14\x98\x30\xfc\xc2\x6b\xbd\x8d\x3e\xff\x84\xd6\x55\x9a\x00\x97\xad\xfb\x96\xd6\xc5\x53\xc2\x6b\x1d\x22\x55\x21\x43\xe7\x41\x33\x68\xaa\x93\x2f\xaa\xa5\xbf\x6a\xeb\xc1\x4d\x11\xec\xd5\xfa\xba\xa5\x8f\xc6\x4a\x7b\xb5\x12\x8a\xcc\xf0\xa8\x1e\xf1\xee\x73\x9d\x40\xb5\xcf\xf8\x34\x9f\x71\x9d\xbc\x3e\x23\xde\x0a\x3f\xa9\x15\x0f\xa8\xc6\x2d\xcb\x2a\x2f\x70\x94\xc1\x96\x6f\xf2\xcc\x04\x5f\x71\x1a\x55\xa9\x48\x37\xe9\xbf\x93\x58\xbe\x10\x59\x3b\x7c\x71\x1a\xdf\xf9\xb2\x99\x27\xc3\x96\x0d\x62\xb9\x4b\xa1\x85\x62\x91\xe2\xe8\xfc\x11\xee\xad\x6f\xc4\xf0\x9d\xa2\xbf\xe0\xfc\x83\xbb\xef\xbc\xa6\xd6\xb0\xfc\xf2\xdf\x3d\x98\x34\x47\x1b\x50\x90\xdd\xcc\xac\xd2\x6c\xb9\x08\x04\x10\x6d\xfc\x7d\xc7\xe5\xd3\x3c\x0c\xf2\xa4\x4d\x8c\xa2\xc4\x68\x41\x8d\x36\x79\x5d\x47\x41\xec\x57\xf9\xaa\xc2\x6a\xd6\x4b\x38\x34\xab\xd9\xe1\x20\xf8\xf1\x36\xb2\xb7\x9e\x5f\xb7\xc9\xda\xe4\x01\xcf\x04\x2f\x7c\x18\xbe\x19\x84\xdc\x36\xff\x08\xd6\x2b\x4e\xab\x6d\xab\xd2\x74\x3e\x4c\xd6\xff\xcb\x94\x83\x14\xdb\x69\x6f\xaf\x81\xc1\x57\x2d\x68\x39\x8b\x57\xa7\x6d\xa7\xba\xa2\x86\x50\xd0\xc1\x95\x7a\x14\x80\x18\xf9\x82\x8c\x40\x92\xf7\x75\xdb\x2d\x65\xfb\x80\x7d\x68\x65\x8b\xc2\x91\xe0\x69\x28\x6c\x28\xdf\x84\x78\x88\xeb\x55\x11\xdf\x70\x6d\x6a\x84\xaf\xf4\x32\xaa\x30\x81\x19\x2d\x59\xe2\x08\x2e\xe8\x92\x19\xe1\x45\x32\x8f\x96\xcf\x07\xe4\x21\x66\x31\x7a\x81\x44\x96\xc7\x4e\xd9\x60\x3f\x7d\xb6\xdc\x4f\x77\x76\x48\xec\x0a\x4f\xcb\x71\x3a\xa1\x79\x3f\x16\x51\x4a\x24\x43\xe9\x82\xe1\x42\x10\xcb\x47\x20\x8e\xbd\xfd\xf1\x75\xab\x3c\xb1\x22\xb4\x54\x78\xac\x72\x25\xe6\x84\xe4\xfa\xc4\x4b\xf6\xef\x2a\x17\x39\xec\x68\x1b\x5b\x18\xc2\x0a\xf5\x8d\xfa\x02\xb4\x19\x51\x4e\x3a\x31\xa0\x0c\xaf\x1a\xad\xdc\xae\x0b\x11\xc5\x84\xac\x5c\xc0\x5b\xe5\xe7\x9f\x05\xb8\xbc\xd5\x3f\x03\x70\xa7\xda\x46\x80\xb7\x89\x4c\x35\x12\xb4\xc7\x8e\xf3\x0f\x56\xae\x8c\x01\xf5\x4c\x77\x6e\xab\x4f\x5b\x69\x01\x85\x94\x37\x23\x67\x16\xc2\xcd\xd2\x59\x3b\x7c\xe1\xdf\x11\xdf\x34\x1c\x5f\x9e\xdd\x02\xd7\x8b\x77\x45\x61\x2e\x9c\x06\x33\xd2\xa8\xd0\xcb\x65\x65\x67\x8b\x3f\xa9\x14\x44\xc6\x0e\x53\x31\x74\x95\x6a\x10\x02\x9a\xd0\xa2\x3f\x95\x63\x61\x62\x13\x25\x61\x5d\xc6\x51\x33\x50\x08\xca\xe6\xd8\xc6\x71\xb5\x33\xa8\xf0\xa3\xb4\xd5\xa8\x97\x3d\xee\x18\xe0\x91\x6b\x94\xf5\x93\x52\x59\x40\xca\x05\xea\x17\x5c\x33\x7a\x11\x81\x83\x02\x26\x08\x91\xe5\x8d\x6e\xfe\xe4\x2c\x41\x58\x1b\x54\x9d\xc2\x7c\xfd\xbe\xbc\x59\xec\x26\xf3\xdd\x2c\x17\xbb\x2a\xd3\xdc\x4c\xcf\x9e\xaf\xea\xa5\x85\xcf\x5b\x26\x7d\x90\x63\x1e\x9e\x7c\x66\x9c\xc3\x9a\xc4\x20\xd6\xea\x55\xf2\x74\x9a\xbd\x2b\xae\xb8\xc0\x04\x42\xeb\xa6\x15\x16\x9b\x39\xd5\x74\x0e\x25\x17\xf0\xce\x36\xef\xc7\xe9\x5d\x7c\x5f\x9e\x9a\xc9\xee\xf5\xea\x98\xec\xcc\x45\x55\x2a\xcf\x1d\x2c\xd6\x7d\x25\x77\xc0\x3a\xae\x5b\x41\x67\xd7\xf1\xf6\xcf\xee\x76\x35\x2d\x66\x21\x67\xc9\x0c\x17\xf0\xbe\x69\xf9\x3e\x45\x41\x5e\x27\xa7\x70\xe6\xd5\xce\x84\xdd\x9a\x86\x25\x6d\xd3\xea\xd5\x31\x27\x98\x7c\x2b\x50\x02\x79\x0c\x47\x9b\x36\xb3\xae\x45\x13\xb6\xbd\xad\xd1\x36\x9a\xcd\x6f\xd4\xcb\x57\xd8\xd6\xe4\xb7\x9f\xcd\xa6\xb9\x5d\x78\x0c\xda\x57\x83\x9a\x36\x69\x51\xab\x65\x0c\xdf\x94\x8d\x7d\x37\xdf\x91\x82\xe5\x16\x42\x7d\x35\x2e\x1b\xaf\x46\xc1\x96\x1a\x05\xd6\xdd\x88\x4b\x42\x56\xc6\x88\x6b\x9b\xb1\xd8\x30\x0b\x0d\x10\xc4\x84\x14\xb6\x94\x85\x20\xad\x87\x20\x26\x9d\x82\xa5\x6d\x10\xa4\xca\x1d\x64\xea\x8b\x00\xaa\xf9\x4f\x05\x2d\x69\x41\x3a\x53\xc8\x44\x54\x96\xf9\x34\x89\x85\x9b\x84\x3d\x9a\x7a\xcb\xf2\x75\x85\xda\x76\x1a\x0f\x32\x93\xfa\xfc\x70\x03\x71\xea\x9b\x45\x89\x01\xa4\xcc\x5b\xa6\x69\x47\x60\x40\x4b\x4c\xae\x0b\xf9\x32\x7d\xdd\xbf\x18\xa0\x0b\xbc\xfc\xe0\x00\xe1\x25\xd1\xf5\xb9\x95\x06\x59\x85\x53\xd9\x4f\xb2\xd9\x01\x1d\x5c\x35\xfe\xb2\x3d\x33\xe3\xc1\x44\xa2\xda\xf1\x70\x02\xcc\xc9\x6d\xa3\x37\x41\x26\xe7\x18\x7d\xfe\xd0\xaf\xc3\x99\xe0\x8c\x74\x92\xc6\xd9\x07\x5e\xd0\x1d\xc4\x1a\xe2\xaa\xd5\x96\x02\x62\x2e\xdd\xa0\xdb\x1d\x2d\x59\x86\x49\xf9\xe9\xb2\x72\x82\x52\x6f\x5a\xe8\x94\xa5\x7e\x4a\xb9\x39\x4b\x2b\xfe\x27\x74\xc6\x7c\xeb\x95\x88\xd0\x6b\x96\x6b\xce\x7b\x4a\x4b\xba\xa4\x33\x3a\x27\x9d\x9a\x45\x97\x63\x33\x93\x95\xd3\x6b\x45\x1a\xb1\x1c\x1c\x89\xe2\xab\xe8\xba\x42\xda\x91\x68\x51\x27\xa6\xba\x17\xd1\x82\xca\x16\x0c\x81\x75\xff\x17\x88\xd8\x81\xa8\xa2\xb9\x9e\x3c\x90\xaf\xeb\x04\xb5\x8e\x78\x1d\x61\xd1\x04\x45\xd1\x55\x52\x75\xf4\xf8\x98\xd5\x8b\xa5\xf3\x3f\x77\x3f\xf9\x94\x80\x5e\x5c\x45\x0d\x68\x40\x34\x3d\x00\x82\x7e\x4b\x1a\x28\xb8\x6a\x24\xed\x19\xcd\xc9\x23\xd8\x28\x39\x9b\x3a\x70\x5c\x29\xa8\x70\x94\x2a\xcd\x63\xcc\x48\xe5\xae\xfc\x6a\x8d\x05\x8c\x96\x93\xc8\x7f\x9f\xd0\x50\x68\x54\x00\xd2\xf7\x5e\x65\x12\xeb\x27\x07\xfe\xcb\x84\x68\xb3\x13\xe7\x88\x57\x93\x31\x46\x39\x8d\x69\xe9\x1d\xb2\x35\x66\x44\x08\x5e\xae\xc0\x0b\x61\x29\x6a\x6e\x20\xe0\x82\xb5\xac\x36\x65\x79\x00\x69\x8e\x90\xd2\x00\x5b\xd7\xe4\x7d\x8c\x62\xba\xa4\xdb\xdb\x19\x4d\xeb\x79\x9d\xb2\xee\x4c\x5c\x8a\xa8\xa4\x53\x7b\x22\x2e\xdb\x4e\x84\x12\xf0\xed\xfb\x81\xca\xcc\x49\xb0\x3a\x26\x41\x33\x27\x52\x5d\x41\x33\x75\x08\x16\xb1\x98\x5e\xef\xea\xc4\x90\x2a\x98\x20\x70\x24\x96\x08\x96\xe7\x29\xa7\xd9\x5a\x9d\xd3\x26\x59\xe4\x3e\xe1\x78\xd8\x80\x4a\x45\xa8\x78\xca\xda\x14\x4f\x59\x83\xe2\x49\xab\x93\x8c\x32\x85\x72\x4c\x9a\xb9\x09\x71\xec\x9c\x0b\x7a\x55\x31\xa0\xd0\x86\x13\x17\xc7\x40\xcb\xbe\x38\xea\x9a\xd3\xf3\x4d\x9b\x76\xc0\x33\xc3\x11\xae\xc9\x86\xdc\x9a\xb4\x14\x3e\x5f\xdb\xc6\x55\x63\x53\x8a\xb3\xf6\xdb\xba\x16\x01\x0d\xf8\x4d\x9b\x0c\xda\x8a\x89\x69\xce\x12\x87\x4e\x4b\x9c\xf3\xb1\x89\x60\x18\x2e\xa6\xf0\x82\xab\x31\x0a\x94\x20\xce\x45\x94\xd3\x94\x2e\x69\xe9\x01\xfa\xb4\xde\xdc\x8d\xba\xa0\x36\x5e\xa1\x19\x81\x01\x68\x2c\x1b\xb3\x4c\x44\x39\x46\x41\x59\xc4\x97\x49\x9a\x88\x84\x97\x51\x82\xf7\x2a\x91\x23\x8c\xa2\x82\x3d\xac\xc8\xf8\x4a\x4c\xd8\x36\x8e\xc9\xe8\x9a\x13\x5a\x98\x0b\x25\x07\x6e\xdd\x36\xc2\x62\xb9\x1b\x64\x33\x2a\xa6\x7e\x1f\xdd\x3b\xf4\x13\xc4\x94\xd6\x0f\x68\x7a\xa1\x9e\x2a\x56\x63\x1e\x6a\x7b\x5a\x2b\x0b\xcd\x14\xae\x75\xe4\x4a\x10\xed\x33\x54\xa4\x6d\xb0\x4a\x09\x01\x32\x3b\x24\xd6\x86\x48\xac\xd1\x8a\x4a\xbf\x54\xfa\xfc\xea\xac\x4b\x82\x01\xc5\xff\x90\x6c\xaa\x14\x51\x49\xd0\x19\x02\xba\x5d\x66\x05\x8f\xa7\xd7\xe0\x53\x12\x91\x4e\xc6\xca\x55\x5e\x6b\xc0\xf9\xb4\x4e\x76\x23\x6f\x7e\xc7\x36\x2e\x53\x82\x4f\xb0\xc0\x39\x28\x18\xe6\x72\x1c\x09\xb9\xc0\x51\x61\x97\x9c\xb4\x2c\xb6\xb1\x99\x7b\xb0\x6b\x3c\x4a\xa8\xbb\xaa\x23\x41\x55\x43\xa3\x42\x99\xed\xc3\xa2\xe1\xda\xe2\x6f\x58\x59\x34\x11\xf0\x46\x51\xa7\xa5\xa8\x8e\x21\x64\x77\x94\x4d\x51\xe3\xb4\x09\x96\x58\xc0\x3d\x0e\xec\x69\xad\xe2\xc1\x1e\x93\xca\x25\x68\xf6\x8d\x2f\xf6\xcf\xe4\xb6\xc9\x9f\x3f\xff\x92\xa6\xec\x69\x2f\xa7\x53\xf6\x4d\xcf\xde\x7f\x58\x26\x21\xa3\xa2\x7f\xf4\xfa\xdd\xf9\x6f\x17\x87\xa7\xa7\x87\xbf\x75\xf8\x78\x31\xc1\xe4\x85\x51\x4c\x4b\x3a\x85\x4b\x2f\x25\x34\xb6\x62\xfa\xc5\xc4\x83\xb6\x4d\x11\x69\x71\x17\xb4\xcb\x6f\x16\xe2\x3e\xf2\x11\xe1\xd3\xf5\x88\x50\x4d\xee\x34\x5e\x88\x65\xc1\x5d\x8c\xe8\xb1\x19\x4f\xd7\x52\xe8\xd6\x20\xd3\xd3\x02\x01\x75\x6e\xb9\xda\xc4\x41\x15\x72\x5f\xc6\xa4\xd7\x8b\xe2\x06\xc7\x0d\xee\xe2\x15\xa1\x4c\xdc\xd0\xb8\xcf\x52\xfc\xb9\xa6\xf8\xad\x18\x4f\xa3\x9f\x04\x64\xe7\x0e\xfa\xc9\x04\x5a\x9b\x7a\x7b\x3d\x87\xac\xae\x51\x42\x63\x9a\x2b\x52\x42\x22\x2a\x49\xdb\xe8\x3e\x52\x56\xaa\x3e\x92\x79\x94\x08\xf4\x8a\x70\xda\xa0\x5f\x2a\x4d\xe0\x94\xe5\x98\x90\x59\xd1\x45\x25\x9d\xdb\x37\x10\xa7\x93\xce\x24\x93\x6d\x2d\xec\xa3\x94\x62\x70\xe5\x19\x79\xc8\x31\x2b\x97\xa3\x3f\xb8\x66\x83\xfd\xeb\x67\x53\x6d\xbf\x75\xad\xed\xb7\x16\x6c\x3a\xbe\x9e\x74\x2a\x76\x0a\x0b\x65\xf0\x6a\x64\xcf\x0b\xc7\xea\x75\x61\x63\x98\xdc\xb0\x99\x63\x2d\x47\x6f\x19\x26\x88\x9b\xd1\x7b\x76\xa3\x3a\xa3\x97\x6c\xb0\x7f\xf9\xec\x7e\xff\x72\x67\x87\x98\x36\x6e\xc6\x97\x13\x0b\xde\x95\xce\xff\xf9\x81\xdf\x97\xd1\x2d\xa1\x17\x6c\xb0\x7f\xf1\xec\x4a\xc3\x7b\xe1\x56\xbd\x1d\x5f\x8d\x2f\x26\x13\xd2\xc9\xd5\x19\xc8\xe8\x15\x9d\xd3\x7b\xba\x3d\x24\xab\x2c\xd4\x8d\xba\x2f\x9c\x6d\xb8\xc6\x6c\x5d\x1f\x5f\x6f\x13\x66\x18\xed\xd9\xee\x25\xb8\x05\xf4\xda\x2e\x25\x37\x17\x6c\x92\xb2\xb2\x49\x62\x8d\x10\x01\xfd\xc0\x16\x58\xd2\xaf\x86\x7b\xa4\xea\xc8\xf6\xdd\xfb\xef\xbb\xb8\x8d\x52\x65\x05\x86\xa5\xbf\xfe\x52\xee\xf5\xb4\xc2\x4f\x62\xd9\x29\x1b\xf6\x0a\x3a\xf7\x6a\x3c\x95\x15\xe6\x15\x75\x00\x56\x98\x79\x45\x87\x7b\x50\x78\xe6\x9a\x82\x63\xb9\x6b\xa6\x83\xfb\x20\xe3\x43\xd5\x50\xe8\x9c\xa6\x74\x46\xb7\xb7\xa7\xb0\x22\x70\x29\x5f\x2b\x06\xb5\xb4\x0c\xaa\xee\x60\xef\xab\xaf\x49\xaf\xb7\x5d\xc3\xae\x4a\x2e\x3f\x20\xcd\x0f\x25\xbb\x7a\x4d\x4b\x9a\x7a\xe8\xe8\xdb\xb5\x46\xf9\x3e\xea\xa8\x3d\xe6\x34\x66\x51\xe6\x9f\xbe\x24\x14\x3e\xc8\x73\x1c\x37\x4a\x1f\x02\xd3\xfc\x8a\xaa\x15\xe2\x4d\x80\x48\xea\xfb\x22\x5f\xa2\x79\x73\x20\x6d\xc2\xd8\xc9\x68\x6e\xee\x8d\x70\x18\x36\x56\x91\xee\xf0\xbb\xad\x0b\x5f\x28\xb8\xa1\x7a\xbd\x91\x6d\xac\xe3\xcb\x9a\xb9\xc6\xaa\x94\xc2\x0b\x12\x9d\xd3\x12\x38\xb1\xa5\x3f\x49\x6b\x74\xe2\x9b\xc0\x18\xb2\xb6\x9f\x0c\x64\x95\xc3\x2d\x11\x4c\xd8\xb5\x17\x4d\x76\x66\x61\xf8\xf1\x12\x99\x92\x59\x32\x15\x26\x77\xc9\x34\x8d\xcb\x92\xdb\xa0\x68\x37\x4e\xc8\xb5\x35\x99\x88\x5b\xf3\x69\x81\x6c\xec\x01\xae\x02\x2f\xa0\x7d\x46\x45\xb1\x84\x1c\x6c\xa3\x62\xd5\xe9\x42\xf7\x2a\x6e\xbb\x0b\x8f\x0e\xed\x15\xc4\x34\x82\x48\x77\x89\x8a\xbd\x17\xcc\x4a\xc3\x55\x5a\x03\xc3\xe7\x76\x0c\xa6\xa4\x8e\x64\xab\x4e\xe5\x73\xe3\x47\x32\x1b\x73\x2a\x26\x98\x40\x3e\x5d\x96\xd7\xcd\x26\x89\xb6\x27\x1b\xd3\x74\x2b\xd1\xd1\x64\xcc\x47\x92\xcc\xa3\xae\x5c\x89\xee\x36\x63\x0d\x61\x8c\xcb\x71\x36\x71\x06\x98\x1d\x1c\x89\x88\x53\xf5\x82\xde\x29\x5b\x5b\x35\x5e\xa2\x62\x1c\xc3\xcc\x40\x6a\x19\x5c\x1d\x32\x82\x5a\x99\xe6\x72\x9b\x8a\x29\x57\x0d\x56\xc8\x4e\x2b\xd1\x86\x7a\x3d\xec\x1b\x20\xa6\x3a\xaa\xaf\x93\xb8\x94\x0a\xdb\x54\xb0\x01\xc3\xc0\x5f\x77\x9e\x5f\x9f\x6b\x9f\xdd\xed\x8e\x86\xee\x33\x1f\x0f\x26\x9e\x65\xa2\x35\xfc\x1f\xec\x0b\xeb\x1b\x2a\x76\x76\x88\x63\x96\x6c\xfd\x0f\xc7\x62\xd2\x90\x98\xd2\xb1\x02\xdf\xb4\x07\x85\x30\x64\xa3\x9d\x3a\x0b\x68\xe5\x5b\x69\x6c\x9a\x1c\x17\x4b\x89\x32\xa7\x10\x6c\xd5\x73\x7f\x3c\x12\xfa\xa0\xd1\x1c\x9c\xd3\x8d\x53\x54\xde\xeb\x45\x39\xa4\xd1\xae\xf6\x44\xd6\xc9\xcd\x54\xaa\x47\xc7\x92\x60\xad\xf4\x4a\x50\x2b\x2a\xc9\x69\x83\xf9\x61\xd1\x20\xc3\x2a\x28\x58\x1a\x98\x61\x9d\x89\x20\x7e\x31\x5c\xc0\x9c\x0e\xdd\x24\x24\x6e\x99\x41\x7d\x99\x8f\x76\x7a\x74\x4a\x5b\xa6\x38\x6c\x25\x90\x29\x4d\x5a\x14\x2e\x29\xa4\x0c\xfc\xb0\x04\xd9\x87\x9c\x29\x79\xaf\x97\xd4\x38\xb6\xe5\x3b\x43\x1a\x13\xc3\x9d\xf7\x7a\x91\xfe\x29\x51\x43\x6c\xfd\x24\x07\x6b\x9d\x16\xab\x77\xbd\x43\xa1\xd9\xeb\xbe\x74\x44\x13\xcb\x3a\xd5\x4a\xa7\xb4\x61\x98\xb4\x96\x23\xf7\xaf\x6c\x4f\xcc\xef\xdd\x6c\xdf\xfe\x55\x60\xc6\x16\xcc\x50\x54\x11\x1b\x92\x2c\xf7\xc9\xa1\x75\xae\x74\x9f\xd1\xb7\x22\xdc\xde\xc4\x37\xa0\xd1\x0b\x21\xf1\xba\xaf\xb5\x21\xf2\x85\x26\x0e\x00\x09\x52\xd1\x56\xd1\xe2\x51\xd4\x46\xdb\x42\xd3\x80\x9e\x86\xf4\x32\x22\x4a\xe5\x36\xcf\x18\xcc\xc5\x8f\x89\x3a\x75\xe8\x8b\x1c\x29\xe6\x8a\x56\xa5\x25\xea\x1c\x4a\x9a\xfb\xad\x6a\xa3\x91\xe9\x47\x2a\x5a\x7d\x91\x9c\xa2\x8e\x8b\x46\x22\xdd\xeb\x4b\xd7\x05\x3a\xca\x9b\xbb\x25\x9d\x8c\xe5\xb2\xc3\xe1\x60\xef\x4b\x72\x30\xed\xc7\xe5\x2f\xe8\x67\xac\xea\x92\x91\x7c\xa7\x1f\x80\x44\x98\xb3\xcc\x58\xb5\xf1\xbe\x4a\xbe\x4f\x3a\x4b\x23\xbe\x51\xc7\xee\x1c\x00\xa6\x4b\x9f\x51\x9b\x57\x2d\xdf\xbe\xad\x97\x55\xfc\x15\x0b\x84\x03\x9f\x06\x4b\x45\xe7\x2e\x9f\x7b\x26\xa2\xa9\xb3\x68\x87\xb9\xbf\x68\xf3\xb5\xcb\x35\x6d\x5d\x2e\xdb\xac\xbf\x2a\x69\x5d\xbb\xab\x0d\x67\x31\x53\x02\x45\x4f\x88\x5b\x6f\x72\x46\x2b\x62\xdc\x56\xa7\xdf\xc4\x55\x31\x0a\xdc\x51\x0d\x22\xb3\xe5\xc6\xf2\xd1\x38\x94\x8f\x96\x0d\xf2\xd1\x5c\xfd\x30\x32\xd2\xdc\x9d\x86\x3a\x61\xa9\xe5\x3b\x02\x5a\xfe\xdb\x75\xe6\xad\xbe\xe8\xcd\xf1\x8e\xf6\x25\x39\x01\x76\xea\xc4\x1a\xd6\x84\xc6\x1a\x48\xd7\x10\x77\x6d\xb7\x5e\x73\xfe\x45\x55\x71\x49\xce\x14\x69\xb1\x33\xf4\x86\x56\x2b\xa4\x72\xd7\xd9\x93\x0a\x80\x30\x47\x75\x74\x1d\x97\x47\xb7\x3a\x7e\x53\xce\x12\x3d\xa1\x2e\xab\x10\x78\x7a\x9b\x90\xe5\x51\xee\x59\x0a\x0e\x2b\x50\x54\x5d\x55\xab\xa8\xdd\xb4\xed\xee\x3e\xc5\xf0\xc3\xb9\x46\xef\xca\x58\xbc\x01\x29\x52\xc9\x62\x35\x05\xbb\xc3\xfd\xf2\x39\x1b\xec\x97\xbb\xbb\x44\xd9\x77\xc4\xe3\x72\x42\x53\x96\x35\xdc\xf6\xf2\x33\x81\xc3\x8f\x6d\xca\x6b\x7f\x49\xb7\x07\xea\xe6\x4f\xe5\xcd\xef\x98\xaa\xa6\x3b\x43\x3a\x25\x34\xb3\x57\xbe\xfe\x39\x5e\x4e\xd8\xd4\x1f\xfb\x06\x6e\xba\xb5\x63\xf7\xc6\xab\x04\x66\x34\x67\x83\xfd\xfc\x99\x22\xb9\x35\x31\x99\xef\xec\x90\x8f\x42\x1e\x37\x00\x0f\xa6\x63\x9c\x4f\x34\x65\x2e\x7f\x66\x34\xa1\x1e\x0a\xf8\x76\x6d\xb4\x03\x7f\x2f\x2b\x15\x61\x1d\x36\x19\x0e\x3e\xe3\xd6\xae\x13\x62\x04\x32\x8c\x92\x85\x56\x27\x4a\xba\x60\x05\x4e\x71\xab\xc0\x29\x91\x54\xd0\x29\xcf\x66\xbc\xd0\xf7\x1b\x2d\x95\xea\xce\x89\x53\x99\xd3\xa4\xc6\xb6\xe6\x5c\x44\x09\xcd\x03\xa5\xd2\x70\x50\x91\x66\x60\x54\x46\x57\x36\xa2\xd9\xef\xc3\x76\x7b\x04\x43\x83\x6e\x66\x91\x60\xa2\xc2\xa1\x4d\x82\x42\x97\x19\xcd\x3d\xd9\x19\x4b\x42\x1b\x05\x53\xaf\xfb\x67\x2d\x10\x3c\x4f\x3e\xd3\x2c\xad\xb7\x48\x70\x81\xea\x18\xfd\x29\xd7\x69\x6a\x7e\xe4\x84\x9e\xff\x05\xf6\x1a\x7a\x1e\xaa\x33\x74\x99\x2f\xb3\x59\xe9\xba\x44\x26\xb3\x5d\x35\x27\x29\xec\x06\xed\x17\x19\xd8\x11\xfe\x37\xed\x34\xec\xac\x29\x35\x34\x42\xd9\x71\xc2\xbd\xab\x9d\x5a\x40\xfe\x55\xbd\x53\x55\x58\xd4\x42\xa7\x2b\xfb\xd1\x0d\x9a\xf3\x41\x45\x67\x91\x24\x7d\x9e\xf2\x7e\x92\xcd\xf3\xa8\xfb\xbe\xe4\x5b\xff\xa3\x48\xae\xff\xa1\x5b\x71\x36\xdb\xfa\x1f\x89\xd6\x9e\x2d\x62\x71\xfd\x9c\xfc\xcf\x96\xc8\xb7\x20\x7e\x14\x48\x12\xb6\x84\xa2\x0c\xfb\x5d\x42\x45\xd4\x95\xef\xba\x2a\x71\x9d\x60\x1f\xd0\x75\xfb\x5d\x9b\x5f\xb3\xc9\xee\x82\x59\x23\x94\x66\x3c\x9f\xc6\xa9\x2f\x5d\xea\xd8\xa8\xe8\x83\xfd\xe4\x99\xbe\xb6\x20\x1d\x8b\xba\x6a\xb2\x71\x32\xa1\x31\x13\xe3\x7c\x77\x38\x01\x34\x60\x72\x8f\x80\x4d\x9e\x6d\x79\x1c\x4f\x58\xb9\x6a\xc8\x6d\xdc\x2c\x53\x01\x18\x8d\xed\x2c\xb4\x84\x38\x77\x91\x26\x22\xea\xca\x39\xc8\xfd\xc7\x98\xe5\xe3\xc1\x04\x28\x48\x8c\x4e\x36\x94\x44\x4d\xe1\x65\x2a\x31\x2e\x96\x38\x7b\x90\x2a\x51\x60\x19\x94\x3e\x8f\xb2\x71\x3c\x39\x10\x4c\xfe\x33\x92\x3c\x6a\x6c\x2e\xa0\xee\x3f\xba\xa4\xd7\x5b\xe2\x77\xf9\xcf\x28\x12\x0e\xac\xb6\x0d\xc9\xfc\x11\x5a\xf6\x0b\x3e\x5b\x4e\x79\x54\x9b\xf5\x70\x8b\x2b\xbe\x75\x45\x4c\xa0\xae\x8e\xc1\x60\xb5\xb4\x5f\x55\xdd\x57\x51\xee\x85\xe6\x2f\xf5\x3a\x61\x8a\x01\xab\xdf\x89\xc8\xb9\xbe\x69\x4c\x3a\xaf\xe5\x1b\x1b\x93\x45\x0b\x07\xea\xbc\xe0\x74\x7e\x18\x5d\x68\x15\xe0\xe0\x4f\x55\x58\x8e\xaf\x27\xcd\xb6\xa2\x74\x89\x54\xf7\x1a\x73\x84\xd8\x55\x62\xd2\xe9\x9a\x3a\x39\x21\x74\x5e\x67\x60\xe0\x87\xbe\x2c\xe9\x92\x80\x39\x5d\xa3\x21\xc2\xdc\x8d\x75\xe3\xf0\x50\x74\xc1\x66\x1e\xbd\x7b\xc3\x66\x9a\x20\xbe\x65\x0b\x4d\xe0\xd0\x7b\x87\x8a\xba\x64\x21\xcd\x78\xab\x53\x86\xd0\x2b\x76\x1f\xee\xe5\xcb\x80\xa4\xbb\x22\xf4\xd2\x64\xc4\x89\xee\x5d\xa5\x8a\x3e\xd2\x17\x5a\xf9\xa5\x24\x56\xf7\x61\xa0\x1e\x42\xef\xd8\x60\xff\xce\xaa\xef\xee\xf4\xa9\x3f\x62\xd3\xf1\xdd\x84\x9e\xb1\x74\x7c\x24\x4f\xfd\x5b\x04\x48\x9d\xfa\x23\xd2\xb9\x18\x9f\x4d\xd8\xdb\x55\x32\x8f\xae\x88\xee\xef\x23\x1b\xec\x7f\x7c\xa6\x47\xb1\xff\x51\x37\x76\xc8\x3e\xee\x0c\xe9\x39\xbb\x1a\xdf\x8e\x3f\x4e\x74\x6c\xa0\x6d\xc6\xce\x7b\x3d\x1c\x43\x74\x48\xcf\xc9\xea\x32\x48\x9d\x13\x5d\x68\x57\x23\xeb\x78\x04\x77\x8e\xc3\x42\xeb\x25\xbe\x21\x55\xf6\xf4\x9b\x4d\x1c\xb3\x42\x77\x2c\x2b\x27\x63\x26\x46\x4f\xf7\x1f\xc9\x8c\x67\x22\x11\xf7\xc6\xcd\x17\x78\x59\x34\x12\x86\x88\xf6\x97\x29\x77\xdc\x4d\x68\xae\x2c\x92\xac\xb2\x3a\x76\x42\xed\x78\x52\x8e\x6f\xd6\x99\x9b\x67\x82\x17\x27\x49\x19\x98\xd5\x7e\xf3\xa4\xce\x01\x0f\xca\x79\xc5\xd6\xc5\x75\x0a\x29\x79\x48\x14\xca\x3f\x0a\xa4\xeb\x8c\x60\x4e\xc1\x71\x2c\xf8\x4d\x24\x69\xa5\x8e\x3c\x1d\x57\x49\xa9\xdf\x69\xad\xa8\xeb\x43\xd4\xe1\xfd\x97\x47\xaf\x0e\xdf\x9f\x9c\x5f\xbc\x38\x7c\x77\xf8\xdd\xf1\xc9\xf1\xf9\xf1\xd1\x19\x7b\xf0\x02\xbd\x8d\xb6\x07\xd4\xc6\x78\x93\x4f\x8e\xf2\x59\x3e\xda\xc8\x6e\x90\x81\xda\x0d\xea\x36\xda\x1e\x52\x27\x9c\x9b\x7c\x74\x29\x1d\x5b\x1b\x43\xb8\xc9\xef\x36\x76\x9b\xfd\xaa\x83\xb6\xc9\x37\x2a\x5a\x9b\x2c\xea\x44\x69\x1b\x6d\x0f\x31\xe7\xd7\xef\xa2\x02\xfe\xd0\x03\x7f\xe8\x83\x3f\xf4\xc0\x1f\x7e\x22\xf8\xc3\x56\xf0\x87\x15\xf0\x87\x6d\xe0\xf3\xfe\xeb\xe3\x37\xc7\xaf\x0f\x4f\xfc\xd5\xf8\x1d\xa9\x89\x17\xcd\xda\xa9\x36\xfd\x52\x20\x64\xa8\x89\xde\xf1\x3b\xe4\x10\x73\x26\xc5\x77\xf2\xa8\x04\x59\x75\x43\x9c\x3a\xb5\xb6\x92\x6c\x0b\x95\x9a\x26\xa6\x8d\xca\x64\xa2\xe2\xe1\x06\xe1\xf0\xd7\xb6\x8d\x15\xd6\x35\xdb\x9c\x8f\x2d\xd1\xa9\xb8\xce\xe3\xab\x4f\xe8\x16\x2b\xac\xeb\x36\xe0\x94\x3e\xa1\xfd\xa0\xe6\x06\x1d\x85\x89\x04\x36\xe9\xe2\xc5\x46\x93\x17\xc6\xf7\x58\xdb\x32\x56\xd8\x00\x66\x97\x38\xff\x34\xc8\xdd\x9a\x1b\x77\xf4\x39\x5d\x6c\xb0\xb3\x1c\x9d\x7f\x5d\x62\x36\x13\xae\xc6\xe4\x42\x0e\x5b\x62\x2f\xf0\xf0\x9e\x0a\xf6\xe0\xd8\xb5\x69\x63\x37\x48\x99\x2d\xe4\xc9\x3f\x3f\x7a\xfd\xee\xe4\xf0\xfc\xe8\xe2\xed\x9b\x93\xdf\x2e\x8c\x95\x2b\x3b\xc5\xfa\xc7\xeb\x42\xa0\x5c\x2e\xa7\x1f\xb8\x60\xfc\x00\xae\xde\xb8\x2c\x93\xab\x8c\x44\x0f\x2b\xca\xc9\xe8\x61\xb5\x06\x41\x34\x66\x28\xc4\x56\x1b\xb3\xb4\xd5\x16\x65\x62\xc3\x64\x76\x58\x83\x98\x19\x7c\xc9\xe7\xf1\x32\x15\xae\x17\x3c\x3b\xc6\xe1\xbf\x5c\x1f\xf0\xcc\xe3\xa3\xb2\xf8\x46\xde\xf6\x0c\x6b\x17\x3a\xa1\x72\x21\x31\x81\x13\x90\x16\xf6\x81\x5c\x5c\xb0\x43\x51\x9c\x92\x30\x65\x20\x5c\x2d\x27\xd1\x58\xb9\x8d\x4e\x5a\x43\x2c\x57\x42\xcb\x04\xa9\x1e\x7f\x8e\x0b\x4b\xbc\xd4\xa5\xe2\xab\x2d\xef\xe5\x88\xfc\x39\x2e\xaa\xe2\x05\x1d\xb9\xc5\x19\xb7\xf1\xaa\xa2\x21\x53\x64\x7d\x55\x61\x88\x78\x9c\xad\x4b\x22\x4e\x11\x15\x18\xd2\x48\x38\xb1\xaa\xdf\xac\xb1\x8d\x00\x22\xc5\x09\xaa\x65\x4d\xc3\x80\x08\x3b\x11\x76\x61\x66\xf0\xe6\x0f\xf5\x06\x05\x75\xf0\xea\x07\xd1\x96\xa9\x07\xac\x13\xeb\xd2\x76\x8e\xe7\x93\x71\xdc\xff\x5b\xb9\x98\xec\x0c\xbd\x14\x83\x28\x9b\x44\xab\x46\x6e\x9c\x32\x9c\x10\x6f\xe1\x27\x65\x65\x17\xbc\x56\x19\x79\x96\x8b\x8a\x79\x06\x4d\xbc\xd1\x73\x6d\xd3\x6f\x3a\xa7\x25\xd3\x91\xd3\xc0\x46\xd8\x40\xba\x5b\xee\x0c\x8d\x15\x1b\xa7\x4b\x5a\x52\x21\x89\x36\xb4\xf9\x5a\xee\x62\x36\x13\x17\x56\x5d\x34\xa5\x99\x56\x54\x39\x30\xd3\x19\x2b\x74\x47\xd7\x2c\xdd\x7d\xf2\xf7\x59\x67\x6a\xea\x5c\xd3\x99\xca\xe2\x13\x37\x6f\x39\xa7\xaf\x18\xf7\x5c\xa1\xa3\xff\x35\x49\x6b\x4c\x84\x13\xfe\x7c\xd0\xeb\xa9\x04\xf7\xbe\xc4\xd6\x6f\x59\xcb\x10\x70\x72\x12\x56\x40\xde\x8e\x1d\x4e\x73\x03\xfe\x4e\x66\xa5\xd2\xf9\x73\x36\xd8\xcf\x77\x77\x89\xe8\x4f\xf3\xc5\x7d\x94\xef\x60\x05\x9a\xef\x24\xa4\xa3\x2a\x33\x4e\x33\xf3\x4b\x38\x9b\x81\xf1\xd5\x0a\xb5\x23\x62\x59\xd4\xc8\xe5\x20\x8a\x7c\x30\x72\x65\xf8\xf0\x37\x31\x0a\xbf\x18\xf3\x56\x2a\x6c\x4d\xdc\x61\xaa\xd2\x2f\xaa\x12\xbe\xb4\xe6\xb0\x0e\xe6\xfb\x8f\x30\xae\xbf\x54\xee\x21\x14\xa8\x20\x4f\x09\xb0\xa6\xbc\xee\x88\xdb\xc9\x36\xb1\xe5\x30\x70\x84\x70\xe6\x9d\x43\xf4\xbd\x7c\x01\x79\xfc\xda\x32\xd4\xc4\x57\x4d\x99\x69\x7e\xe5\xd1\x38\x5c\x31\x3b\xa4\x09\x59\xad\x28\xb6\x21\xa7\xbb\x2d\xbd\x8d\x3e\x49\xb2\x9c\xa9\x84\x30\xb7\x56\xab\xac\xc4\x4e\x65\x9a\x77\x9e\xfc\xdd\xed\x01\x5f\x9a\x48\x8c\xf4\x64\x0d\x9e\x92\x10\xb1\x81\x3b\xf1\xfa\x29\xc4\x60\x17\xf2\x22\x70\x1e\x8d\x4b\x4c\x69\x43\x04\x66\x75\xa8\x2a\xab\xa0\x2a\x7b\x49\x21\x9e\xa0\x16\x14\x51\x07\xca\x45\x8d\x98\xb5\x02\x84\x67\x18\xbe\xa2\x59\x1d\x8e\xca\x36\xec\x37\xa3\x03\x30\x70\x8a\x3e\xb3\x7b\x32\x8a\x36\x99\x33\x70\x9a\x8f\xeb\x72\x2f\x1b\xc0\x4c\x64\x39\xc4\x65\x99\x8b\x68\xb4\xb4\xee\xd9\xe0\xf1\x91\x3f\x67\xc5\x41\xc2\x47\x68\x72\x82\xb9\xa2\xb2\xba\xb3\xee\x9c\xbe\x57\xce\xe9\xf3\xbd\x9c\x4a\xa8\xad\xa2\x92\xd6\xa6\x86\xb6\x91\x5a\xc4\xf3\x81\x17\xec\x1d\xa0\xce\x3c\xa8\x13\x17\x6a\x3b\xe7\xc5\x6e\x38\xed\x3b\xc2\xc8\x82\x50\x53\x25\x40\x39\x95\x60\x72\x63\x89\x87\x73\x42\x73\x5a\x28\xd2\x64\xdd\x96\xfc\xe4\x73\xef\xa0\x97\x0b\xc7\x0f\x8d\x3f\x3e\x46\xce\x6b\x88\xa8\x1f\xcc\x97\x3c\x6e\xfa\x60\xdb\xd7\xad\x1d\xd8\x62\xa0\x90\xaa\xb9\x4a\x68\xe3\x94\x76\xaa\x8d\x30\xa1\x44\xcb\x05\x2d\x76\x6c\xc0\x51\x6e\x71\xc1\xab\xd6\xb8\xa2\x95\x04\x18\xc2\x48\xf7\x44\x10\x73\xc2\xed\xd4\x5b\xc0\x62\xc5\xc3\xc3\x1e\x50\xba\x95\x98\x19\xce\xa9\xa1\x83\xf6\x3c\xe5\x2d\x97\xb5\x85\x48\x11\xe7\xad\xd4\xa7\x2d\xdd\xbf\x89\x17\x9a\xd4\x4b\x97\xfc\xed\xbc\x96\x12\x75\xd6\xc5\x56\xf5\x4f\xa6\x5c\x42\x8d\xd1\x19\x63\xdc\x84\x33\x75\xcc\xef\x54\xb4\x8f\x45\x5c\x94\x1c\x42\x36\xd1\xe1\xc0\x5e\x87\xf2\x14\x67\xea\x14\x8b\x71\x66\x47\xf1\x76\x5e\x37\x6c\x6e\x49\x67\xc5\x2f\xbc\xc0\xc3\x3e\x7b\x67\x2e\x8d\x43\x9d\x2b\x03\x93\x36\x23\xf5\xff\xc7\x67\xdf\x08\xe1\xf9\x52\x6f\x41\x49\xec\xe3\x3f\xf5\x45\xa9\xd6\x03\xd4\xfc\xdf\xbc\x28\x9a\x10\xf2\x67\x82\xda\x70\x8b\xd0\x84\xe6\x9f\x77\x93\xfc\xb5\xf0\x99\x6b\x26\x5c\x98\x5c\xf7\x87\x0d\x3a\x8b\xa5\xdb\x49\x4c\x5d\x2c\x92\x04\xdf\x31\x64\x82\x9c\x80\xeb\xb8\xac\xd9\x7f\x60\xd7\x60\x88\x11\xd7\xee\x51\xd6\xb9\xaa\xb0\xc6\x36\x4f\x51\xaf\x17\x09\xb6\x3d\x24\x9d\x86\x3b\x43\xdb\xca\x44\x2a\x55\xa8\x82\xc8\xd2\x92\x3a\x4a\x0f\xf4\xd6\xd1\xe0\x80\xdc\xdb\x5c\x80\x09\x2d\x36\xb8\x00\xdf\x87\x17\x20\xfa\x13\xd5\xdd\x85\x10\x83\x7b\x93\x9b\x30\xa0\xf5\xb1\xc5\xe6\xeb\x10\x14\x85\x58\x28\x66\x85\x49\x65\x5f\xb2\xc1\x7e\xf9\x4c\xec\x97\x5a\x25\xb1\x64\xf9\xb8\x9c\xec\xc3\x38\xad\xda\x6f\x49\x7a\xbd\x28\x63\xe8\xed\x16\x2d\x09\x4d\x6c\x70\x39\x07\x25\x96\x13\x42\x56\xfe\xae\x5c\x7f\xa0\xe3\x9a\x1d\xb1\x92\x53\x21\xf2\xb3\xfb\x4c\x5c\x73\x91\x4c\xe5\x97\x7a\xe4\xa4\xb5\x9c\x58\xe1\x50\x34\x94\xec\xfe\xa3\xbb\xc3\xff\x04\x79\x5e\x59\x2a\x7d\x07\xc3\x18\x5a\xaf\x5f\x28\x51\x77\xc3\xe3\xf0\xbd\xc1\xdb\x6b\x22\x18\xbc\x77\xef\xab\xc2\xad\xbd\xaa\x32\x75\xfd\xea\x89\x76\xa0\x70\xfb\xc5\x39\xfc\xcb\x09\x8d\x75\x44\x66\x0d\xa1\x91\xa9\xd5\x15\x54\xec\x14\x75\x84\xc6\xfb\x35\x84\x46\x48\x4f\xa8\x19\xaf\x10\x17\x85\x87\x4a\x8d\xe4\x00\x01\xba\x89\x17\x6b\x19\x8f\x3f\x8f\xbb\xbc\xb9\xc2\x73\x1a\x86\x04\x80\xe3\xdd\x80\x92\x32\x89\x92\x0a\xb8\xcd\xb3\xb6\x20\xf3\x2e\xf6\xa9\x69\xde\x73\xaf\x41\xc3\x07\xee\x19\x3e\x64\x63\x3e\x4e\x26\x13\x26\xc6\x89\x09\x40\x6f\x8c\xfd\x5b\xcf\xd7\x4d\xbc\x68\xdd\x3c\x37\xf1\xa2\x66\xd7\x78\x68\xcd\xd9\x5f\x4e\xad\x36\xab\x0d\xe1\x01\xcf\xc7\x02\x80\xcf\xc6\xc9\x64\x55\xdd\x4e\x4e\x8a\x76\x37\xbd\x53\x4f\x62\x0e\x4b\xf5\xc8\xc3\x31\xf3\x09\x9e\xf7\x48\xf0\xfc\xb0\x86\xe0\x49\x32\xc1\x8b\x2c\x4e\x41\x1b\xef\x21\x42\xc7\x1e\xce\x79\xad\xcb\x9f\x7b\xcc\x47\xe3\xd5\xed\x53\x28\x48\x5d\xfd\x79\x1a\xa8\xb1\xbb\x16\xe2\x68\xfd\x70\xea\x98\xdc\x60\x7a\x36\x23\x90\x6a\xc9\x23\x84\x39\x6f\xa1\x95\x1a\xe0\x74\x49\xa8\x3f\x03\xae\xa6\x79\xea\x57\xb0\x66\x1f\xfc\x45\x04\x50\xf5\xe8\xb8\xe8\x22\x99\x47\x80\x2b\x4c\x0a\x04\xf0\xd8\x5b\x43\x1d\x21\x99\xf3\xe4\xef\x12\x9f\x82\x11\xa4\x7a\xdc\x19\xd2\xc2\xba\x9e\xc8\x17\x7b\x92\x5d\x76\x5a\x06\xbb\x22\x88\x5a\x30\x8e\x69\x4e\x93\xc9\x7a\x3a\xe9\x67\x11\x85\xe4\x11\xfa\x62\xb7\x4b\xd6\xb0\x4c\x7b\xda\x11\x77\xca\x3f\xff\x76\x0a\x97\xce\xb9\xa0\x9e\xfc\xdd\xbb\xa2\xd4\xcd\xe9\x6c\xb1\x56\xec\xe7\x94\x0b\xe6\x90\xf7\x7a\x51\x4d\x29\x77\x8d\xe5\xe5\xfd\x9d\xc0\x1b\x5b\x5f\x8d\x3f\xaf\xd7\xdc\xe0\x31\xe1\xee\x3c\x07\x07\x45\xe3\xfe\x36\xf5\xcb\xa7\xef\xda\x56\xbe\xb7\xb2\x6b\x9d\x4b\x4e\xa8\xed\xe4\x00\x3c\x86\x9d\x37\xa1\xe1\xab\x61\xe5\xd5\x64\xa2\x32\x5c\xfc\x67\xb3\xac\x27\x0e\xd9\xe0\xe8\x54\x3c\x75\x8a\x4f\x36\x64\x1b\xe5\x3d\x50\xb9\x38\xa1\x01\x57\x6c\xad\x8d\x6b\x6c\x5f\x15\x49\xb8\xbe\x6e\x2b\x8c\xb8\x7f\x1b\xfd\x07\x6f\xa3\x5f\x30\x4a\xea\x7b\xd1\x2e\x0a\xf1\xf1\x16\xfd\x1b\xd6\x7a\xd5\x5e\x8b\xd0\xef\xb1\xdc\x7f\x2a\xe5\xfe\x26\xe8\x2f\x82\x0e\x24\x78\xba\xc2\xf7\x67\xec\x7b\x84\xe9\xb7\x35\x53\x1f\xea\x75\x70\x7e\xaf\x79\xbc\xd0\x13\xbf\x28\xf2\xab\x22\xbe\xd1\x53\xcf\x3f\xca\xf3\x68\x92\xce\x68\xc3\x1b\xc3\x66\x4e\x97\x45\xc1\x33\xf1\x76\x71\x96\xfc\xa1\xaf\xc3\x86\x7d\x0c\xa6\xdf\xa7\xaa\x81\x16\xf9\x8f\xea\x41\x89\x7f\xd2\x3c\x9e\xd5\x54\x32\x67\xcc\x2d\x8f\x0a\xda\x92\x8b\x77\xbe\x62\x27\x28\x08\xc9\x58\x27\x0c\x8c\x28\x8c\x89\x57\x25\xfe\xa7\x75\x0e\xb3\xa1\xe0\x2b\xed\x14\xf1\x84\xd0\xcd\x8b\xcf\x17\xba\x78\xf8\x9a\x55\xdf\x96\x8b\xc9\xee\x10\x60\xcc\x17\xf5\x20\x86\xc5\x6b\x1a\x99\xcb\x46\x6a\xba\x2c\xe2\x89\x83\x7d\xe1\x8a\x19\xb4\x82\x66\xcb\x0d\x89\x9e\x38\x18\xe9\x9f\x9c\x3d\x35\xc0\x96\xa6\xda\xe0\xf6\x9c\x70\x00\xf1\xe5\x22\xaf\xae\x3d\x6c\x09\x2d\x21\x28\x50\x5b\x0c\xc5\x55\x70\xd9\xf5\x9b\x11\xf7\xcc\x0e\xdf\xad\xee\x7a\x30\x0a\x88\xd3\x74\xcd\x96\x33\x90\x87\x8d\xd2\x10\x44\x79\x1c\xe5\x4c\xc7\xb3\x59\xa1\x01\x45\xa8\xce\x6b\xc6\x56\xdf\x89\x19\xa6\xad\x5c\x5d\x23\xdb\x65\xed\xb2\x64\xfc\x23\xb8\xb5\x81\x7d\x49\x63\x1e\x1f\x55\x51\x73\x3b\x0a\x7f\xd0\x82\x71\x35\x3e\x43\x16\x15\x15\xb2\x08\x4d\x75\xa7\xf9\x4c\x79\x83\xd4\xa0\x94\x0c\x32\x1e\x77\x5a\x57\x85\x25\x98\xc3\xc9\xe4\x31\x5e\x36\x20\x0b\x5d\xe0\x38\xcb\x78\xa1\x74\x2b\xc2\x7f\x1b\x54\xe3\x36\x03\xf3\x81\xd7\x84\x7a\x19\x71\x32\xf2\xde\x9f\x61\xde\xe4\x4a\xe3\xaa\xbc\xb7\x7e\xe5\x5d\x22\xa6\xd7\x11\x07\xbf\x04\xf2\x30\x8d\x4b\xbe\x35\x18\x79\x6a\x43\x6b\x81\xda\x81\xcf\x43\xff\xb3\xc2\x0c\xfa\xeb\x13\xef\x2b\xc2\xd1\xcf\x17\x43\xf5\x79\xaf\xfa\xb9\xe9\x2c\xa9\x1a\x5f\x7a\x35\xc0\xbe\xd2\x6d\xf0\xab\x91\xbf\x2e\x60\x7e\xa1\xbe\x7d\x5d\xf3\xed\x5c\x57\x5f\xb9\x53\xa3\xa6\x2c\x98\xf9\x7f\x5a\x9f\x8a\x48\x50\x4e\xd5\x2c\x29\x1a\xe3\xa7\x56\xea\x4b\xef\xad\x30\xfa\x35\x4d\x98\xb1\x00\xce\x7a\x3d\x65\x8b\x30\x97\x53\x78\x86\x4a\x52\x7e\xb7\x55\xf4\xcf\x50\x21\x0d\xcb\x9a\xdd\xea\x5b\x72\x96\xdf\xa0\x03\xc2\xcb\xb7\xaf\x75\x6c\x8c\xb0\x03\x96\xb4\x32\x84\x1f\xf9\x34\x0c\x43\xe1\x69\xdc\x2c\x24\xc0\x66\xe3\x49\x2e\xd0\x62\x63\x7f\xbb\xe8\x27\xe5\x11\x58\x70\x90\x7d\x33\x46\x53\xcd\x3f\xae\x11\xb1\xb6\xce\x99\x9b\xc4\x5b\x56\x20\xa3\x42\xe5\x79\x04\x0e\xa7\x16\x65\x62\x9b\xb8\xe2\x28\xfb\x2b\x6a\x79\x59\x0b\xb2\x4a\x90\xc7\xef\xb6\x32\x3c\x5b\x58\xed\xba\xc8\xef\x2a\xa8\x07\x5b\x47\x33\xf5\xa3\x8f\x53\xbe\xc0\x8f\xb4\xd2\x24\x40\xd9\xc6\x9a\x40\xe1\x56\xd5\xbb\xd3\x9c\x42\x2d\x56\x20\xc1\xfb\x60\x29\x95\x64\x57\x3f\xbf\x66\x3f\x21\x0d\xf5\x4f\x41\x7f\x14\xf4\xd7\x0d\x0c\xb3\xc0\x19\xd5\xa6\xed\x5b\xde\x80\xb5\xec\xa5\xdc\x48\xa2\x8e\x56\xc5\x32\x2d\xa6\x66\x7e\x23\x11\xa7\xb6\x1f\xe3\xbf\x41\xff\xf5\x97\x78\x93\x21\xf0\x90\x43\x0e\x5d\x0e\xc0\x57\x0a\x1d\xa4\xc0\x02\xa1\x4b\x73\xb4\x75\x2b\x78\x06\xce\x64\xd6\x8f\xea\xb3\xa2\xe0\x2f\x62\x39\xf5\x2a\x08\x41\x93\x3e\x0f\xfb\xf0\xcb\x46\xb0\x8f\xe6\x49\x51\x8a\x37\xf9\xac\x51\x15\xa8\xaa\x9a\x72\x58\x2d\x8d\x37\xaa\xa5\x8b\x61\xa5\x5a\x5f\x2e\x0e\x27\x11\x31\xa7\x9a\x16\xaa\x24\x0b\xca\x8d\x2d\xa0\x6a\x2b\x0b\x93\xe3\xc2\xc4\x7a\x61\x62\x77\x61\x4c\xb4\x0e\x3f\xcb\x83\x28\xee\xbb\xe0\x33\x7c\xc5\x62\x54\x59\x37\x5b\xf9\xd1\xf8\xb3\x16\x66\x96\xcc\x8e\x4d\x2a\x88\x17\x7a\xc5\x9d\xf9\xaa\x35\xa8\x93\xb0\x50\x2d\xb7\xd7\x13\x42\x3e\x6d\xfa\x60\xa0\x28\x98\xf1\x10\x41\x3d\xad\x41\xad\x42\xdd\x86\x73\xc5\xf5\x33\xf2\x4b\xdc\xca\x9d\x53\xdc\xeb\x2a\xfe\xf6\x2b\x75\xae\xa2\x0c\xb3\x77\x60\xde\x1b\xfd\x8e\x82\x3f\xc5\x78\x42\x15\xc7\x6f\xf6\xfc\x78\xd2\xf9\x88\x4b\x93\x6b\xcc\xed\x87\x04\x47\x22\x58\x23\x10\x74\xb3\x70\x7c\x47\xb9\x76\xbb\x30\x25\x20\x2e\x67\x7f\x56\xe4\x0b\xdc\x34\xff\x12\x84\x8a\x35\x9b\x26\x01\xa7\x29\x98\x06\x2d\xb8\x88\xca\x9a\x8d\x33\x9e\x98\x9d\xf3\x81\xdf\xb3\x84\x96\xfd\x1b\x7e\x93\xb3\x9c\x2a\x1e\x9d\xc5\xe0\x2c\x26\xe2\x24\xe3\x33\xb6\x3d\xa4\x4a\x08\xc0\x76\x87\xb4\xfc\xac\x8d\x83\x63\x3d\xb5\x52\xfe\x1a\xda\x54\x77\x37\x70\xa4\x05\x41\x4a\x46\x1d\xd5\x87\xdf\xe4\xf6\x8b\x7c\x82\xad\x51\x5e\xe7\xcb\x74\x76\xca\x6f\xf2\xdb\x9a\x43\xbc\xed\x75\x23\xcb\x17\xbc\xe4\xa2\x86\x87\x30\xe3\x86\x99\xe7\x05\xa1\xc5\xba\xe3\x6a\xe6\x7d\xbf\x76\xc6\xed\x51\x4d\xac\x1b\x0e\xcc\x32\x1e\xdd\x34\x29\xc5\xae\x42\xa5\x88\x61\xc0\x5d\x47\xf0\x99\x93\x51\xa4\x54\xf4\xef\xeb\x78\x01\xc4\xc7\xeb\x78\x21\x57\x2e\x2e\x3e\x70\x15\x15\x1f\x75\x86\xe5\xba\xc3\x6f\x92\xf9\xd6\x99\xf9\x02\x02\xa1\xcb\x09\xf9\xcc\x95\x4e\x7c\xfc\x10\x1c\x6c\x95\x69\xc5\x3d\x3c\xc6\xd2\x11\xd7\xd6\x8c\x51\x99\xff\x7c\xe0\xf7\x94\xeb\x44\x23\xed\xc8\x07\x05\x40\xee\xe4\xb5\x24\x1d\xa1\x7f\x1e\x55\xf9\x04\x99\xb3\xb2\x6e\x86\x15\x0d\x0b\xc8\x39\xab\xc1\xa3\x31\xbf\xaa\xcd\x80\xe7\x62\xaa\x98\x09\x49\x49\x6a\x6c\xa3\x56\x3a\xd6\xd4\x8d\xca\xe7\xd1\xed\x92\x4e\xdc\x4f\xb2\x92\x17\xe2\x70\x2e\x78\x11\xe5\xe1\xa5\x48\x4b\x15\x6b\x1e\xef\x2d\xa2\x36\x0a\xa2\xc8\xfb\x6c\xaa\xad\xbe\x83\x6a\xfd\x02\x8e\x12\x4c\x75\x54\xea\xb3\x67\xf7\x1b\x5d\xaa\x14\x31\x1b\xce\x22\xdd\x78\x81\x9c\xb9\xc4\x0c\x31\xbc\xc6\x7d\xda\x3d\x65\x78\xfe\xef\xb3\x69\x03\xef\xe9\x2e\x8e\xba\x1b\xcc\x46\x33\x7e\xd6\xe6\xaa\x66\x03\x9a\xb0\x01\xcd\xd9\xf6\xd0\x12\xd7\x06\xd9\xbb\xc4\x00\xfc\x73\x92\x94\x82\x8d\x27\x3a\x05\xb8\xbc\xab\xad\x6f\x9a\x96\xbe\x93\xcb\x82\xc7\x1f\x8c\x4a\xac\x84\x18\x67\xe0\x47\xfa\x81\xdf\xef\x1b\x02\xbc\xec\xf5\x20\x12\x95\xc5\x43\xfb\x44\x96\xdd\xd9\xc9\x80\x3b\x76\x0b\x96\x80\xbe\x19\x5b\x12\x07\x71\x81\x9f\x5b\x49\x63\x42\xb3\x9d\x1d\x93\x2c\x19\x44\xc3\xd1\x52\x6d\xb3\x94\x09\x8c\x56\x01\x10\xa6\x78\x2a\x9f\x25\xd8\x8c\x5c\x72\x68\x24\x85\xc8\xf7\x2a\x14\x0d\x53\xa5\xcc\x00\xa6\xf2\x5e\x98\xb3\x6c\x67\xb8\x3f\x7f\x96\xec\xcf\x31\xfa\x19\x44\xda\x2a\xc6\xf3\x89\x01\x9f\x3c\x4c\xd9\xf6\xa0\x03\xa3\x5f\xc1\xe7\xe9\x41\x14\xc2\x9b\x02\xbc\x2c\xd9\x19\x6a\x6d\x4d\x00\x85\x1c\x0c\x59\xa1\xf3\x5e\x6e\xae\x08\xdc\xf4\x50\x0c\x82\xf4\x6b\xd8\x66\x6c\xb0\x3f\x7b\xa6\x8d\xa9\xf7\x67\xda\x9e\xe2\x9a\x15\xe3\xd9\xa4\x03\x50\x5c\x1b\x08\x0f\x22\xdb\xe2\x8c\xa7\x5c\x60\xc7\xd7\x84\x8c\xae\xf1\x8e\xb0\x6a\xd5\x1c\xef\x0d\x0d\x78\x33\x7b\xa6\x77\x4b\x87\x7b\xb7\x95\xc0\xdb\x8a\x72\xff\x7a\x13\xfa\x7a\xe3\xde\x3d\xa8\xf1\xa5\xb1\x6a\xc7\x1c\x62\x8a\xcb\xb2\xa3\x6f\x04\x43\x23\x22\xbb\xd7\x13\x0f\xc3\xe4\x2e\x99\x14\x7b\x84\x91\xc6\x3a\xee\xc9\x59\x06\x07\x25\x65\x88\x9f\xa7\xcc\x5a\xfa\x1c\x38\x58\x62\x24\x5c\x1a\x9b\xce\xd9\xab\xfe\x3c\x2f\x14\x12\x47\xff\xaf\x28\x06\x42\xeb\x41\x39\x18\x8e\x92\x0a\xee\x02\x5e\x35\xb9\x4c\x93\xec\x6a\x34\x5d\x91\x4e\xae\xc9\xb1\x98\xce\xc9\x46\xd4\x96\x26\xee\x84\xe3\x1d\x5a\xca\x6b\x2c\x51\xf3\xbb\x34\xee\x09\x38\xbf\x09\x41\x15\x67\x94\x4a\x8a\xef\x63\x54\x50\xcc\xb4\x42\x33\xb3\x2f\xeb\xe3\x43\x1a\xb9\xd4\x5f\xb1\xfa\xd6\x32\xf3\xe0\x52\xf3\x77\x38\xaf\x64\xc4\x1d\x74\xde\x77\x66\x68\x9b\xb1\x48\x5e\xcc\xce\xb4\x93\x5e\x4f\x56\x87\xc8\x10\x38\xdc\xc4\xd8\x24\xb9\xdb\xc9\x6e\x7d\xef\xce\x7e\x21\x89\xd3\x2b\x93\x4d\xdf\x5e\xcf\x58\x1e\x6f\x68\x4b\xa3\x66\xc5\x5a\x5e\x38\x5f\x18\x45\x17\xd7\x64\x3c\x3a\x48\x9b\x44\xf6\x8a\xf9\x6e\x57\x12\xd4\x0b\x23\x74\x55\xde\x2a\x96\x74\xf9\xba\x7c\x51\x8e\xdd\xaa\x3b\x3b\xa0\x4d\x68\x61\x34\x6a\x61\x57\x91\x3f\xc3\xd7\x55\xc9\x85\xe2\xcd\x93\x96\x99\x72\xc3\x9e\xca\x56\x3b\xa1\x80\x69\xa9\xf6\xb6\x9e\x30\xc5\x70\x2b\x4d\x8c\x64\x1b\x58\x46\x15\x4b\x92\x11\x7a\x88\xbf\xa2\xea\x0c\x5c\x45\x89\xaa\x0c\x3b\xbc\x65\xba\x0b\x49\xba\xcf\x02\xc6\x15\xcb\xdb\x90\x91\xfc\xe0\x21\x94\x73\x8d\xb6\x87\xab\x11\x27\x55\x01\x5b\xc1\xdc\xd0\x9e\x26\xba\x89\x44\x07\xea\x18\xe9\x51\x76\x24\xb9\xfb\x93\x88\x32\x5a\x6d\xbd\x58\x59\x24\x90\x68\x36\x51\xfc\x39\x11\x82\xf8\x3c\x11\x82\xf8\x1c\x11\xc2\x9a\x8d\x56\xe4\x77\x10\x19\x64\x0b\x99\x9b\xad\x8c\xdf\xf2\x62\xeb\x1a\x52\xba\x75\xd5\x4e\xca\x5b\xcf\x9c\x5d\x1b\x50\x5e\xcb\xa9\x2c\x51\x6c\x49\xf4\x2d\xea\x24\x8e\xff\x5d\x05\x5e\x81\x50\x8f\x71\x26\x4a\xa2\x13\xba\xaa\x75\x8a\x74\x31\xf5\xaf\x2c\x39\x8d\x05\x44\xcc\x6f\x91\x67\x82\x6e\xbe\xf6\x9e\x1a\x5b\xa9\xbf\x31\xa0\x2e\x6c\xd8\x5a\xc6\xf7\xb3\x67\x62\x5f\xde\xff\xea\xf6\x43\xf9\x32\x17\x90\x0c\x5a\x57\x00\x7b\x86\x7c\x51\x2b\x77\xc4\x8c\xf6\xe0\x3c\xa5\x7d\x24\xee\x8a\x44\xf0\x1f\xcb\x1a\x80\x32\x33\x30\xed\x5e\xa4\x1e\xbd\x50\xbe\xd8\x24\xb4\x72\x1a\xdf\x45\x9c\xc2\xa4\xf1\x2c\x88\x01\x62\xba\xd2\xd2\xf2\x66\xf0\xea\xdb\x3a\xbe\xb9\xe1\xb3\x04\x82\x2f\x0a\xa7\xb9\xf3\x62\xc9\xab\xa8\xaf\xd2\xd0\xd0\xd6\x78\x15\xa7\xe5\x26\x55\x06\xb6\xca\x9b\x65\x9d\xa2\xaa\x52\x63\xcf\xd6\x78\x9f\x41\x80\x3e\x3e\xdb\xa0\xda\x13\x5b\xed\x34\xbe\xdb\x68\x5e\x84\xb6\xb2\xf9\xb1\x6c\xb2\x58\xc0\x3a\x57\x5c\x40\x0d\xe2\xe9\x82\x7e\x2f\xc7\x35\x51\x57\x04\x99\xa8\x56\x6b\xd6\x68\x83\xb6\x9d\x26\xbd\xc5\x6a\x36\x08\x1a\x3c\xae\x6b\x2e\x29\x2d\x74\x07\xed\xb0\x8f\xda\xfa\xaf\x17\x70\x60\xc7\x8a\xb0\xa5\xfe\x6e\x67\x83\x56\x09\xfa\x06\xde\x6b\xd8\x7a\xca\xe5\x45\x67\x0c\x60\xe2\xf5\x54\x81\x6b\x65\x30\x9e\x4f\x98\x58\x81\x10\x5c\xe4\x85\xbf\x6d\x6d\x6c\x64\x89\xc9\xf2\x42\x72\x6b\xfb\x99\xb5\x8c\xcc\x34\xb1\x9f\x30\x0e\xa1\xab\xc3\xdc\x0e\x09\x30\xad\x72\x92\xf5\x82\x93\x28\x21\x07\xc2\xee\xb4\xac\xe1\x04\x26\x84\x8c\x30\x4c\xb0\x2e\x2d\xcf\x61\x94\x91\x11\x06\x18\xd6\x6f\xe1\xac\xc9\xd7\x26\x34\x8b\xb0\x27\x4a\xbe\x37\x28\xd9\x7c\x31\x27\x47\x7e\x16\x1a\x3d\x81\xc4\xd1\x0d\xdf\x2c\x27\x27\x12\x74\x3c\xa0\xbb\x43\xca\xad\xe4\x64\x30\x69\x77\xa2\x41\xfb\xf0\x1a\x65\x37\xa8\x3a\x74\x6f\x3b\x3b\x6a\xf2\x95\x8d\x00\xe5\xbe\xfa\x3e\x3c\x1b\x61\x13\x46\x25\xd8\xd2\x90\x8f\xb9\xaa\x6d\xc0\x8c\x86\xf5\x4d\xed\x00\x8b\x55\xab\xe3\xd4\x37\xd6\xf7\x51\x5a\xb5\x3a\x2c\x50\x63\xed\x1a\xf4\x56\x6d\xc2\xae\x64\x63\x3b\x3e\xbe\xab\x36\x21\xf7\x60\xc3\x14\xce\x3c\xab\xcb\xca\xe5\x1e\x74\xe8\x9a\x9b\xa8\xeb\xaf\x16\xa8\xa6\x8b\xd3\xab\x29\xb4\xfd\x45\x88\x7d\x7d\x10\x94\x8f\x87\x08\x4c\x41\x7e\x2c\xa3\xa0\x63\x17\x37\x3b\x3e\xe1\x12\x05\xb8\x86\x1e\x15\x84\xbc\x51\x77\x9e\x25\xc9\x27\x75\xfa\x19\x9d\x7d\x6a\x27\x10\xc4\xa8\xce\x90\x24\xe8\x6e\xe0\x2d\x60\xdd\x24\xee\xaa\x83\xe5\xa4\x49\xff\x9c\x76\x1b\x66\xcb\x69\xfd\x73\x5a\xad\x6f\xad\xea\x25\x14\x36\x87\xce\x42\x4e\xe5\x79\xb0\x95\xa1\xed\x1d\x6c\x2e\x8c\xc7\x51\xe7\xd2\xd8\xdc\x92\xc6\x7c\xc5\x8e\x50\x07\xac\x8e\x4e\x75\xaf\x37\xac\x87\x96\xa6\xfa\x4c\x54\xec\x68\x3d\xba\xc1\x8d\xcc\x40\x0b\x26\x76\x7d\x0b\x15\xb7\xc1\x42\x35\x58\x7f\x6f\x63\x49\x2d\x90\xa2\xa2\x2f\x72\x88\x2d\x57\xc3\x6c\xe8\xa8\x8e\x69\x7e\xa5\x57\xc1\x1b\xb7\xb2\x94\xf5\x26\x86\x86\xc0\x6a\x46\xb5\x2c\xaa\xa0\x40\x9c\x91\x8a\x05\x84\x17\x54\xb4\xf2\xd5\xf0\xac\x95\x2f\x98\x89\xbe\xf2\x3a\x4d\x4a\xe1\xbe\x5d\xd1\x65\x1b\xcf\xec\x71\xcc\xa0\xb7\x5b\x4c\x21\xf6\x04\x46\x6e\xbc\x61\xc2\x03\x90\xde\xca\x4f\xd6\x3b\x59\xeb\xb6\xb5\x68\x02\xd9\x41\x65\xeb\x81\x93\xf3\x4f\x31\x41\xfe\x09\xf9\xec\xf1\x8f\xea\xd9\x83\xba\x1c\x38\xe6\xe5\xe5\xd0\x79\x10\xee\x17\xe1\x7e\xb9\x1d\x58\x05\xce\x3d\x8b\x0b\x4d\xf9\x44\xb7\xa4\x73\xaf\xd6\x64\x31\x9d\xb0\x9c\xde\xdb\x15\x62\xb7\x96\x00\xb8\xb7\xeb\xc8\x94\x26\x65\x3c\x9b\x78\x66\x56\x60\x2b\x86\x5f\xae\x83\x2f\x86\xd9\x6b\x1e\xfa\x74\xa2\xe2\xa7\x00\x1b\xa4\x94\x01\xf2\xad\x3b\xa5\xf8\xf1\x46\x7d\x5c\xe0\xe4\xbc\x41\x11\xc5\x78\x89\x8f\xbf\x89\xe8\x5e\xc3\x47\xb9\xb1\x01\x7b\x80\xb0\xa2\xdf\xf1\x79\x5e\xf0\x51\x0d\xb2\xf9\x27\xef\x3b\x25\x22\x08\x4c\x4c\xe1\x0d\xe8\x3c\xbc\x2a\xba\x2c\x6a\x43\xa0\xe8\x0a\x66\x88\x68\x21\x2f\x66\x31\xc8\x0b\xf6\xb0\x42\x58\xd2\x89\xc3\x5b\xda\xef\xad\x2c\x2d\x18\xa9\x36\x31\x0b\x4e\xf0\x62\xae\xb4\x2b\x5e\x0a\x01\x24\xd0\xd3\x3c\xae\xf3\xb4\x77\x8b\x43\xe6\x41\x3c\x0e\x26\x14\xb9\x66\x85\x6c\x27\x5e\x23\x98\x46\x3c\xee\x27\xe5\x49\x7e\x77\xc2\x6f\x79\xaa\xad\x62\x49\xc4\x09\x71\x6f\xa7\xe5\xc4\xb7\xb5\x95\xc0\x6a\x53\x33\x65\x65\x26\x37\x9b\x6f\x69\x56\x0e\x3a\xe6\x8b\x6f\x64\x56\x0e\xcd\x17\xe1\xd7\x11\xb6\x8e\xf0\xeb\x08\x5b\xe7\xd6\xaf\x73\x3b\x58\xe9\x49\x0a\x07\x29\xd1\xb2\x82\xb3\x65\xa8\x28\x92\x93\x83\x74\x4d\x83\x31\xa8\x8d\x3f\x3c\x7d\x72\x05\x2a\x2a\xdc\xf1\xe9\x73\x1c\x7e\x12\xaa\x96\xa8\xd6\x12\xaa\x96\xa8\xd6\xba\x55\xb5\x6e\x07\x4c\xc0\xe8\x1a\xad\x8a\x25\xd8\x8e\x4d\x1f\x94\x6d\xb0\xee\x85\xa2\xc6\xbe\xaf\xd1\x50\x4b\x16\x73\xac\xb4\x6a\x0d\x51\x65\x19\x34\x06\x54\x1c\x64\x83\x2d\xa9\x2c\x67\x0d\xf5\x9c\xb2\x75\xb0\x69\x6b\x3f\xc7\xe9\x04\xa4\xb2\x9b\x13\x02\x95\x7d\x0a\x08\x91\x10\xfa\xb0\x98\x8e\x84\x1f\x8f\xb0\x72\x15\xc9\x3b\xcc\x7e\xd1\x91\x4d\xe1\x7c\x8d\x5c\x3a\x57\x05\xab\xe1\x68\xeb\x16\xa4\x2f\x6b\x50\x2c\x2e\x8d\x92\x81\xe2\x5d\x75\x23\x22\xcd\x98\x11\x15\x6f\x5f\x4b\x8d\x24\xba\x84\xab\x4e\xbf\x45\xa1\x95\x1f\x0a\x7c\x93\x7e\x82\xc6\x24\x8a\xa0\xa1\x35\xaa\x75\x49\x1e\x43\x1a\xfa\x5a\x1e\x39\x07\x1e\x19\xb2\x2f\xe7\xdb\x2c\x70\xad\xea\xf5\x94\xc0\x2d\x27\x2b\x27\x5c\x96\xd1\x3e\x5f\x26\x59\x2c\x94\xd6\xb6\x20\x2b\xd9\x2d\x2a\x18\xcc\xb8\xe5\x7c\xdc\x82\x68\x10\x44\xaa\x19\x68\xee\xa3\xc2\x70\xae\xa8\x57\xcf\x42\x1b\x7f\x07\x09\xda\x35\xd1\x5a\xda\x20\x83\x9c\x31\x6d\x50\x61\xde\x69\x06\xab\xc0\x8b\x48\x7b\x96\x2a\x75\x56\x41\xc7\x13\x85\x48\x67\xc9\xec\x48\x76\x1a\x65\x16\x80\x66\x35\x1a\x68\xb8\x32\xa6\xd3\x4d\x25\x0c\xb5\x38\x8e\xee\x6c\xfa\x01\xf2\x38\x80\xd2\xe7\x94\xcf\x5f\xe5\x05\x46\xe2\x2e\x2b\x2f\x13\xd2\xc9\x9d\x50\xab\xb9\xcd\xc2\xeb\xaa\xe4\xf5\xa0\xf7\x08\x4d\x37\x1b\xf4\x14\x06\x2d\x8a\x68\xe9\x0f\x3a\xa5\x05\x2d\x69\xec\xcb\xc1\xcc\xf0\xa7\x84\x4e\xf1\xe0\xda\x10\xa9\x55\xc6\x54\x52\x61\xaa\x9f\xd0\xb8\x43\x1d\x7c\x13\xfb\xb5\x66\x15\xc7\x13\xb5\x70\xf2\x08\x1b\x4b\x73\x2d\xeb\xd7\x23\x1d\x50\x6b\xd3\x1d\x8c\x15\xba\x86\x80\xb1\x82\x78\x73\xee\xa6\x75\x00\x22\xac\xd0\x99\xb8\xf5\xe8\x13\x2a\xa8\x0a\xfd\x2d\x4f\x8b\x1c\x08\xee\xcb\x58\x13\x02\x7a\x26\x62\x6d\x60\x72\x54\xd9\x8c\x50\xb0\x36\xff\xa1\x52\x89\x19\xda\x41\xab\xc8\x02\xbb\xae\x6b\x65\x9b\x6d\xd4\x91\xdc\x9a\x44\xc0\xec\x7d\x4c\x2a\xb4\x3e\xb4\x09\xc7\xba\x32\x25\x26\xa1\x81\x76\x87\x5a\x04\x7a\xce\x0a\xc2\xe8\xf0\xb1\x15\x15\x4d\xea\xcd\x68\x22\x03\x8a\xbf\x8e\x46\xd7\x95\x68\x59\xa1\x9d\x49\xb4\xb7\xcd\xbc\xc1\xb5\x71\xcf\xe3\x89\x6d\x41\x43\xe7\x2a\x20\x9d\xa1\x34\xe8\x4f\xfc\x9a\xba\x7f\x3b\xdf\xd5\x85\xb3\xb3\xe0\xf6\x64\xb6\x74\x4b\x3f\x30\x46\x6d\x04\x4c\xb3\xda\x2d\xe0\xf5\x87\xda\x36\xb9\x72\xaa\x16\x35\xc6\xd0\x9f\x32\x2c\xa7\xcb\xe5\xe7\x55\xd3\xbb\xa5\x49\x09\xe5\x92\xf7\x60\x36\x03\xec\x5a\x73\x1f\x48\xf7\x3b\x1d\x78\x6c\x5e\x73\x3d\x8f\x33\x70\xaa\xcb\x85\x80\x7d\x57\x69\xa0\x86\xd3\x70\xaf\x6c\x3c\x37\x11\x31\xbb\xee\x65\x03\x20\xce\x31\xf0\xe9\x00\xdd\x42\xa7\x0d\x54\x7d\x98\xb9\xee\xc6\xc4\x3e\xaf\xc1\x6f\xaf\x38\x38\x9d\xcc\x02\x65\x43\x38\x0a\x88\x23\xa9\x72\x0a\x57\x5a\xaa\xa9\x60\x4e\xc4\xba\x39\x32\x87\x30\x5f\x34\xcd\x46\xfd\x20\x75\xc5\xe6\xd0\xc1\xde\xd4\x9b\xc0\xed\x78\x61\x28\x3b\xce\x57\x79\x81\xc1\xd6\x1b\xdd\xa2\xdc\xfa\x18\x96\x5d\xdd\x19\x15\xff\x06\x35\xa3\x1d\xde\xeb\x29\xd7\x83\x8e\x28\xee\x81\x8e\xd9\xdf\xd6\x89\x0d\xd0\xae\x8a\xf4\x67\xf9\xff\xcf\xdd\xdb\xb6\xb7\x8d\x23\x89\xa2\xdf\xf5\x2b\x64\xee\x8c\x86\x5c\xc1\x8c\xe4\x64\x7a\x7b\xe4\x20\x3e\x4e\xec\x74\xe7\xac\x13\x67\x6c\xa7\xe7\xf4\x55\x6b\x3d\xb4\x04\x59\xe8\x50\x84\x1a\x04\xed\xd8\x96\xce\x6f\xbf\x0f\x0a\xef\x24\xa5\xa4\x77\x66\xe7\xb9\xcf\xfd\x22\x91\x20\xde\x51\x28\x54\x15\xea\xa5\x20\x87\xc9\xe1\x06\x88\x8a\xfc\xa1\xee\x80\xc5\x21\xcc\x43\x9e\x2e\xb2\x12\x36\x7b\x79\x98\x70\x0f\x7f\x6e\xac\x74\x1c\x0e\x76\xd9\x29\x59\x7b\x03\x8e\x8c\xbe\x18\xe8\x03\xe3\xc6\x0e\xd2\x47\x99\x3c\xde\xea\x56\x15\x9e\x09\xd3\x9e\xb5\x65\x97\x19\x03\xe3\x23\x7d\x6a\x25\x88\xe0\x27\x39\xac\xd1\xde\x10\xa9\x28\xa3\x2a\xcc\xfb\x28\x6e\x4a\x7f\x5c\xde\x81\xc9\x4b\xee\xbb\xd4\x12\x3d\xc1\xa9\x80\x78\xe3\xd4\xf0\x39\x5c\x0d\xe8\x37\xb4\x98\xb5\x43\x50\x70\xe9\xd2\x46\x5c\x73\xec\xce\x97\x43\xfe\x0a\x0f\x0e\xb9\x09\xa2\x54\x60\x32\xe6\x93\x0e\xc8\xe9\xcc\xf1\x1c\x44\x54\x48\x76\xfb\x6b\x83\xbc\xbb\xee\x9b\xe4\x74\x42\x26\x6b\xe5\xbd\x9a\x7e\x2d\x7f\x1b\x27\xe1\x8a\x2b\x81\xc4\xce\x3b\x2e\x13\x79\x41\xe7\xb5\x65\x49\x71\xf7\x4d\xe5\x48\x71\xd7\xe2\xe8\x22\xe7\x46\x80\xd9\xce\x08\xbd\x25\x29\x67\x4c\xc4\x94\xa0\x81\xe6\x7c\x88\x61\x6c\x42\x0e\x88\x6b\xe6\x66\x3c\xd9\x6c\x48\x6a\x38\xe3\x9f\xde\xe3\x8a\xa3\xbf\x0a\x3c\x45\xff\x5b\x60\x25\x6c\x9a\x6e\x55\x6c\xf6\xdc\xfa\x64\xab\x55\xae\xf4\xf1\x51\x66\xac\x9b\xb5\x42\xf3\xd7\xc3\xde\xb4\x79\xb6\x30\x94\xb5\x8e\x3d\x21\x89\x6b\xc1\x09\x79\x5d\xd1\x7c\x46\x38\x90\xd8\x81\xa4\x8e\xe1\xb9\x9c\x1b\x39\x41\x81\x34\xcb\x5a\x3e\xf2\x04\x05\xb3\x83\x68\x82\x0a\xbb\x01\x59\x4d\x1d\x0c\xb1\x0d\xe2\x86\x96\xfd\x7a\xd7\x4a\x92\xcf\xa1\x4f\x7e\x1f\x59\xbd\x8f\x19\xae\xf5\x0d\x56\x46\x9e\x0d\x6c\xae\x22\x37\x9b\x1e\x16\x28\x4b\x20\x8e\xe0\xb6\xa1\xe4\x76\xb8\x15\x2a\x11\x93\xa3\x31\x43\xc9\xeb\x43\xc9\x37\x41\x68\xa1\xa6\x28\xfa\xbf\xcb\x58\x4b\x84\xf2\x7f\x4c\x74\x5f\x8f\x67\x57\xd2\x93\xb9\x0e\xc9\x54\x71\x0f\x80\xe7\x75\x00\x86\x88\xb3\x26\xd1\x85\x54\x05\x53\x55\x93\xc7\xe9\xed\x29\xa5\x27\xaf\xe8\xc2\xa8\xd7\x4b\x8e\x1c\xf4\x37\xb7\x40\x6b\xf1\x2d\xe6\x4c\x5a\xab\xca\x28\xe2\xeb\xa0\x28\x60\xae\xa4\x8d\xad\x66\x3c\x66\x2e\x58\x4a\xbb\xe9\x92\xec\x0c\x2a\x5a\x81\xc7\x45\x89\x36\x4a\x5f\xe0\xdc\x17\xc0\x87\x61\x5e\x07\x17\x1e\xc0\x53\xb9\x0b\x7c\x20\xca\xb7\x05\x70\x54\x4a\x10\xd9\xbe\x19\x64\x6e\x09\x35\x53\x39\x20\x91\x80\xbb\x64\xc7\x02\x4e\xeb\x10\x04\x2c\x60\x73\x97\xba\xd1\x08\x37\x9a\xaf\xee\x01\x00\xe0\x9d\x5b\xb5\xa8\x6f\xd5\x00\xbe\xb3\x7a\xef\xb2\x8d\x56\xde\x2c\x9a\x22\x58\xfa\x2f\x03\x77\x85\xbd\x01\x4a\x92\x8d\x32\x97\x58\xd1\xbc\xcd\xb7\x59\x4b\xd0\x17\x62\xc3\x99\xaa\xda\x35\x80\x49\x32\x08\x36\x10\x5a\x6d\xbd\xd5\xd0\x5c\xcc\xdd\x12\x93\x5d\xaa\x79\x75\xba\x25\x10\xa2\x2e\x35\xd1\x04\xb7\x5b\x35\x0d\x79\x9d\x71\xa9\x55\xdc\xef\x96\xfe\x11\x65\x94\xe9\xc2\x53\x6a\xc9\xf5\x05\x31\x7f\x50\xc8\xb2\xa3\x23\xfd\xc7\x49\x67\xc6\x9e\x24\xee\xd4\xed\xdd\x2f\xe4\x98\xf7\x38\x10\x6b\x4e\x53\x4b\x93\x5b\x86\x72\x33\xc1\xf0\x62\x3f\x78\xf3\x1d\xaf\x6b\x41\xea\x18\x41\x9f\xc9\x43\x19\x17\x09\x78\x59\x69\x89\x02\x35\x26\xa8\x18\x93\xc9\x64\x93\x24\x88\xe1\x71\xb4\xcc\x68\x11\xa1\x88\xe4\x25\x89\x50\x94\x09\xc1\xcb\x68\xa2\xa3\x90\xb6\x56\x00\xae\xe9\xc6\x83\x89\x8a\x0b\xe3\x9b\x54\x3b\xc5\xfd\xc1\x61\xf9\xf2\xf9\xbf\x33\x23\x4c\x2b\xfb\xfd\xc4\x8f\x0f\x0c\x3a\x04\x76\xb8\xcd\x2f\x88\xa6\x73\xc6\x4f\xb3\xe9\x22\x54\x5a\xd6\x27\xcf\x78\x38\xa9\x87\x1b\x56\x11\x75\xc8\x78\x35\x31\xce\xcc\x8d\xd4\x09\x31\x34\x40\x7b\x83\x04\xd5\x4a\xc8\xbc\x8d\x44\xd1\x48\xe1\x0a\xee\x57\x3c\x08\x08\xfe\xe0\xa1\xe7\xe8\x8f\xfd\x9b\xd1\xe0\x8f\xe0\xdd\x34\x2d\xd8\x8c\x80\x20\x7e\x43\xd2\xcb\xd3\x8b\x77\xc7\x67\xef\xfe\x9f\xe3\xab\x77\xe7\x1f\xae\xdf\xbe\xbb\xb8\xbc\xba\xfe\x70\x7e\x72\x7a\x7d\x79\x75\xf1\xee\xc3\x0f\xd8\x14\x84\xdd\x7b\xb3\xdb\x7c\x4a\xaf\xb1\xc1\xda\xb4\x8e\xb5\x7d\x43\x54\x2e\xf1\x02\xd0\xb2\x27\x64\x05\xee\xa3\x24\x16\x28\x66\xca\xa4\x1a\x6e\xd4\x68\x4a\x0b\x09\x2c\x64\x76\xbe\xa4\x42\x90\x19\x68\x64\xee\x0d\x11\x4d\xd9\x8a\x14\x7e\xe1\xfd\x21\xa2\x5f\x25\x61\x36\xf1\x32\x41\xb7\xdf\x36\x04\x3a\x8f\x9b\xfd\xf7\x4e\x9d\xaa\x58\x66\x62\xba\x20\x33\x1b\xf5\xbc\x34\x9d\xbe\x71\xfd\x1a\xa0\xa2\x19\x9e\xf2\x82\x2c\x1e\x66\x3c\x83\x56\xef\xa9\x58\x74\x3d\xb5\xef\x6e\xc1\x44\xb7\xac\x56\x2b\xc6\x05\x99\x45\x89\xe7\x50\x99\x1a\xd6\xfb\x4d\xc5\x4b\xc6\x0d\xef\xa2\x34\x57\x81\x0d\x3f\xdc\x33\x46\x2a\x6c\xbd\xbe\xe6\x31\x4b\x7a\xbd\x07\xf9\x97\x1c\x26\x0c\x33\x5f\xbd\xdc\xc7\xbc\x66\xce\x19\xa2\xff\x4d\x5b\xd2\x52\xd9\x15\xd8\x61\x6d\x15\x02\xfb\x03\xe8\x88\xfa\x7a\x0b\xbf\x87\x98\x28\x89\xe4\x3f\x5c\x35\xa9\xd5\xab\xe2\x9c\x28\x16\xbe\xa1\x56\xdc\xe6\xed\x14\x0c\x7e\xb5\x47\x2f\x88\x51\xaf\x70\x1a\x34\xeb\xd6\x7a\xbd\x1e\x24\x1d\x13\x34\x40\x1d\x3e\xba\x07\x10\x13\xde\xeb\x8f\xb7\x62\x28\xcc\xa9\xed\x8d\x74\x4f\xb5\x90\xed\x4c\x4b\x25\xb5\x4b\xd4\x9c\x64\xfc\x3d\x2d\x01\xfa\x5a\x26\xc3\x1a\xc9\x86\x13\xa2\xed\x97\xf6\x30\xf6\x68\x9b\x70\x13\x41\x9e\x57\x98\xb7\x6c\x4e\x08\xb9\x76\x28\x0e\xe1\x46\xf2\x5e\xd2\x22\x89\xca\x7c\x0a\xcf\xea\x62\xcc\x7a\x3e\x5c\xb2\x3b\x12\x0b\x1d\xa0\x0b\x4a\x9a\x69\x39\x4c\xea\x99\x8c\x1c\xbf\x0e\x41\xb2\xbc\x1c\xee\xf5\xb5\xed\xe4\x16\xb9\xd0\xb6\x71\xd6\x3c\x91\xb9\x61\xd6\xde\xfb\x7d\xbd\xb4\xc4\xad\x43\xcb\x74\x41\x84\x48\xb3\xe5\x84\x0a\x28\xdf\xf9\x1e\x2b\x2b\x8d\x04\x30\xea\xd5\xc3\x8a\xf4\x7a\xe0\xed\xce\x61\x58\x65\x25\x67\xe2\x3c\x4a\x5c\x1a\xa1\x41\xd2\xeb\x9d\x4a\xfa\x0a\xcc\x6c\xe2\x1a\x0c\xf8\x13\xc4\x25\xa6\xaf\xe1\x3a\x91\x8c\xa2\xab\x77\x57\x67\xa7\xd1\x1e\xc6\xb4\xd7\x8b\x2e\xdf\x5c\xbc\xfb\x78\x65\xdf\xae\x7e\xb6\x9f\x54\xcd\x3e\xc4\x48\x28\xd2\x13\x3b\xcd\x59\x49\xfe\xa1\x99\xad\x77\xad\x3e\xb5\xfb\xfb\xcd\xa9\x45\x05\xde\x1b\x06\xf3\x2b\x9f\x31\x44\x42\x8b\xb9\x3f\x31\xbe\x12\x88\x9b\x8f\x4e\x6d\xb6\x68\x63\x82\xf6\xf7\x15\xe4\xb5\x0e\xde\x36\x0f\x8a\x9e\x85\x0b\x37\xe7\xe3\x46\xd7\x3b\xd6\xeb\xdd\x2b\x3c\x7a\x2a\xff\x4c\xa0\x0c\x37\x44\x63\x28\xe8\x77\xd2\x04\x29\x6d\xe0\xae\x38\x6b\x2e\xe7\xfe\xfe\xc6\x2c\x08\x98\x02\xcc\x42\xab\x83\x9a\x2d\x9a\x05\x50\x43\x83\xad\xd7\xbe\x41\xa5\x5f\x47\xc3\xa8\xd2\x7c\xfc\xf1\xea\xfd\xd9\xb6\x06\x94\x55\xd2\x6b\x30\x6e\x50\x56\x8f\x1e\xba\xf0\x2d\xc0\x24\x3f\xe4\x8c\x1f\x10\x03\xc4\x78\x17\xfb\x42\x35\x2d\x86\xd3\x93\x8a\x68\xba\xe2\xe4\x8e\xb2\xaa\xb4\xe8\x2d\x9c\xb6\x22\xa9\x39\xfc\x81\x54\xc9\xff\xab\xb5\xc8\x7a\xbd\x2f\x3c\xce\x12\x63\xb9\xd0\xbe\x63\x32\x9b\xbf\x8e\x84\x5b\xe0\x21\xcc\x22\x49\xcd\x36\x0f\x1e\xfe\xc4\x35\x66\x95\xd7\x8c\xd4\xbd\xcd\xa1\xac\x51\xe4\x0c\x81\x60\xad\xe5\xf4\x15\x81\x61\x2e\x90\x28\xa8\x08\x16\x61\xdb\xd6\xf4\x31\x15\xe9\xf5\xce\xc1\x67\x94\x27\xdd\x83\x63\xc0\x6f\xf2\x90\xf7\x7a\x7b\xe7\x72\x6f\x1d\x26\x1c\xf3\xb6\xde\xb4\x2c\x21\xb0\xfb\x9e\xf4\xd3\x87\xa3\xab\x80\x57\xf9\x1a\xa0\x1e\x3d\xc7\x58\x36\xab\xf1\xe4\x51\xcc\x1d\x8e\xd4\xf6\x28\x5e\x0a\x36\xac\x9a\x5b\xe4\xa0\xcb\x88\x27\x6d\xba\x45\xdf\x5b\xea\x56\xe1\xe2\xe8\x8f\xeb\x06\xc5\x1b\x4b\x2a\xf4\x8b\xc2\x35\x51\xf4\x2d\x18\x18\x5e\xfd\x51\xcb\x33\x4f\x0b\x73\x1b\xf8\xa5\x0d\x70\x64\x99\x00\x70\x92\xd1\x37\x65\xf3\x67\x5b\x1b\x89\x7f\xfb\x84\xf7\x7a\xd7\x72\x90\xff\x84\x89\x8e\xf9\x96\x93\xa4\x75\xb0\xba\xa3\xe1\x78\xdd\x51\xde\xa0\xb8\xb6\x8d\x43\xe2\x9e\x5e\xef\x52\x2d\x54\x48\x9f\xd1\x79\x1c\x2d\x84\x58\x8d\x9e\x3d\xbb\xbf\xbf\x4f\xef\x9f\xa7\x8c\xdf\x3e\x3b\x18\x0c\x06\xcf\xca\xbb\x5b\xbd\xe0\xd9\x92\x94\xab\x6c\x4a\x3e\x5d\xbc\x4b\xec\xa6\xd6\x07\xb7\x5c\xf5\x4e\x5b\x62\x2a\xd8\xa7\xd5\x8a\xf0\x37\x59\x49\xe2\x64\x03\x7a\x9c\xbe\x9a\x55\x2b\xd9\x3f\x9e\x28\x35\x4c\x35\x64\x9e\xda\x98\x9b\x65\x82\xb8\xc6\xa1\x74\x1e\xeb\xa1\x44\x57\xaf\xcf\x4f\x7e\x8e\x60\x37\xe8\x96\x93\xba\xf7\x2f\x63\xc1\xc6\x95\xb3\x19\xd4\x3c\x8e\xdb\x39\x23\xe3\x2a\xd8\x9f\x69\x4b\x64\x35\xe8\x80\x56\x54\xe7\x95\x6c\x81\xc5\x92\x08\x3b\x70\x5c\x17\xf8\x79\xc7\x75\xcb\x34\x05\xe1\x5d\x8f\x79\x4c\x91\x80\x03\x86\x25\x56\xb8\x7b\xa7\x61\x94\xf7\x7a\xb1\x7e\xc3\x5c\x1b\xad\x51\x88\xc7\x3d\x25\x31\xb5\x6e\x4c\x59\x82\x86\x5b\x46\xe1\xf7\xb3\xc1\xc2\xd9\xa1\x7c\xe4\x6c\x45\xb8\x2f\x2e\xf3\x85\x65\x3b\xc6\x61\x07\x7b\x0c\x97\x3e\x3a\x74\xad\x65\xa9\xfc\x71\xd0\xda\x38\x0a\x33\x8e\xc2\x8e\x83\xee\x1c\x87\xe9\x64\x8d\x93\x56\x83\x98\xe7\x6d\x4c\xcc\xb7\x8f\x62\x47\x34\x76\x23\xe2\x52\xf7\x4b\xb4\xb8\xd5\x18\xd1\xd6\x11\x17\x63\x3a\x81\x7d\xa6\x01\x6c\x1b\x4b\x6c\x22\xf5\xfa\x03\xf3\x3b\xde\x32\xb2\x7b\x9a\xe7\x6f\x24\x7d\xda\x62\xf7\x19\x28\x15\x19\xaa\xb2\x95\xe9\x31\x84\x40\xfb\xd9\x9f\x20\xde\xeb\xb5\x6e\x24\x9d\x7f\xc5\x56\xce\x78\xdd\xef\x7e\xbd\x77\x9e\xa7\x2d\x7d\x11\xfb\x5e\xf9\xd6\x68\xbb\x91\x20\xe9\x6f\x15\xe1\x0f\x97\x24\x27\x53\xc1\x78\xfc\xa7\x72\xca\xe9\x4a\x8c\x6f\xf3\x25\xc7\xd1\x9f\xfa\xa2\xff\xa7\x68\xf2\xa7\xc4\xa3\xf0\xdc\xc1\x0b\x77\xd8\x64\xc9\x44\x73\x5e\x42\x41\xef\x42\x19\x56\xaa\x6e\x40\xeb\xce\xe5\x04\x38\x65\x7c\xf2\xf9\x32\x9f\x23\xed\xf5\xfc\xb7\x3d\x8c\x8b\xc3\xc4\x3f\x0f\xfd\xaf\x49\x87\x3b\x1f\xfe\xd4\xf1\xc6\x4e\x1d\xda\x23\x94\x3b\x01\x33\xab\xc9\x3a\xf0\x0c\xbe\x8d\x05\xe4\xda\xcb\x62\xfb\xc1\xac\xe3\x06\x2a\xca\xf3\x53\xdd\x44\x50\x36\x72\x46\xef\xb4\x5e\x15\x43\x7b\x03\xa3\x18\x74\x0c\xa7\x54\x9d\xba\x52\xa7\x8a\xbf\xc8\xb5\xac\x01\x32\xac\x1d\x99\xee\xb2\xc9\x91\xc4\x75\x3e\x05\x60\xcd\x3b\x58\xed\xa5\x75\xdb\xad\x29\x37\xb7\xa6\x01\x3c\xef\xbc\x0d\x3d\x9b\x38\x47\x77\xfa\x12\xd3\x36\xbe\xf3\x2a\x33\x68\xe2\xa8\xe5\xa4\xb1\xd5\xa8\x6b\x6c\x54\xfa\x75\xd5\x8c\xf5\xeb\x45\xb0\xf2\x9d\xcd\x37\xf1\x5b\x4f\xf2\x7c\xcd\xb7\xd2\x6c\x4e\x78\x79\xbf\x3d\x93\x62\xb2\xc9\x56\x26\x7b\x5f\x31\xd9\xae\xae\x53\xbf\x2e\x17\xc0\xc9\xab\x40\xd9\x51\xbc\x48\xd0\xd0\x2f\x77\xe9\x97\x1b\x6e\xe9\xe8\xf9\xae\x8e\x46\x7f\x94\xfb\xba\x41\x84\xda\xc2\x5f\x76\x17\xee\x6e\x2f\x79\xcc\xeb\xea\xa1\x83\x43\xee\x34\x43\xb9\xd1\x0c\xd5\x17\xf7\x12\xdf\x03\xb2\x0e\x5c\xd5\x6f\x36\x24\x35\x5b\xce\xdc\x06\xe1\x5b\x0e\x52\xea\x38\xfa\x5f\xb7\x39\x5d\x2e\x09\x7f\x56\x09\x9a\x47\x68\x1c\x91\x2f\x2b\xc6\x45\x19\xa1\x88\x2c\x6f\x08\xdf\xbf\xc9\x6e\x48\x1e\x4d\xea\x21\xdf\xa3\xaa\x24\xdd\x52\x70\x3a\x15\x51\x47\xcb\xfb\x95\x2d\x9d\x39\xcc\x62\x82\xa2\xeb\x6b\x52\xbe\x67\xb3\x2a\x27\x11\x7a\x52\xba\x0f\x7b\x83\x8d\xc4\xb4\x59\x59\x12\x2e\x3e\x90\xbb\x26\x0a\x0d\x25\x73\x51\x55\x90\x2f\x2b\x40\xdf\xdd\xaa\xe0\x24\x9b\x2e\x24\x12\xe9\xde\xf0\xac\x98\x2e\xa2\xa4\xe3\x9b\xcf\x44\x5e\x8e\x08\x91\x04\x99\x8f\x82\x67\x53\x12\x8b\x7e\xd4\x1d\x8d\xba\x51\xff\x7f\x5f\x9e\x7f\x48\x4b\x08\x43\x4b\xe7\x0f\x31\x49\xfa\x51\x37\x8e\xfa\xa4\x1f\x25\x51\xb2\xb1\xdd\xc3\x0d\x9a\x74\x8f\x34\x64\xbd\x62\xbd\x8e\x54\x76\xb8\x56\xcd\x68\x5e\x71\xa2\x6a\x99\x91\x15\x27\xd3\xba\xc7\x3c\xd3\xa7\xfb\x8c\x17\x71\x74\x72\xfa\xf1\xe2\xf4\x0d\x48\xe6\x65\xcf\x88\x2a\x48\xa7\x02\x67\x88\xa4\xb4\x3c\x91\x8f\x2d\x7c\x90\xc2\xeb\x64\x03\x99\xd4\x02\xb4\x64\x8b\x18\x7c\x71\x06\xb5\xc4\x45\xdf\x94\x45\x49\x51\x56\x9c\xfc\x50\xd1\x19\x66\xe0\x72\xc4\xe8\x1a\x42\x12\x85\xca\x2f\x09\x87\x34\xc0\xd8\x6f\x9b\xbe\x16\xbe\x76\xff\xa0\xa6\x93\xde\x16\x5b\xb4\x54\x86\x87\xe2\xa5\x55\x55\x30\xb0\x2d\x0c\x6c\x73\x6c\xbf\x8d\xc5\xc4\x97\x2a\xf5\x7a\x8d\xd1\xf1\xc4\xb9\x22\xc8\x95\xeb\xe1\x06\xd1\xa3\xc9\x53\x49\xd9\x74\xc8\x98\x4d\x30\x1f\x33\x3f\xa8\x09\x92\xc7\x5f\x9e\x7f\xa8\xf2\xbc\xdc\x61\xcc\x0c\xd6\x5c\x4a\xd5\x19\x36\x25\xec\x46\x31\xe6\x13\x65\x1c\xe4\x50\x3f\x31\x11\x02\xda\xf4\x6d\xad\xec\x9f\x77\x69\xd1\x25\x89\xd6\x79\x95\xdb\x39\x09\xea\x00\xc2\xa6\x49\x11\x38\x49\x84\x3b\xb2\x3b\x56\x92\x6b\x8e\x2c\x5f\x10\x40\x02\x79\x84\x3c\xe7\x30\xdf\xc8\x16\x3e\x93\x87\x56\x3b\x47\xff\x32\x4f\x41\xa7\xba\x31\xad\x5b\xb1\xa8\xb3\xbe\xb9\x3f\xa2\x53\xb3\x7d\x61\x1e\xba\x82\x75\x6f\x48\x77\xc5\x49\x49\x0a\x11\xb9\xbb\x37\x00\x47\xc8\xda\xdc\x76\xdb\xea\x16\x61\x71\x6f\xf7\xef\xd2\x6d\x0d\xb0\x44\x10\xed\x56\xd5\xaa\x46\x49\xbe\x2c\xb2\xaa\x14\x0d\xff\x08\x8d\xd1\xe9\x6c\x76\xf3\x4a\xbc\xb2\x6a\x85\x1c\x8e\xa3\x08\x15\xb8\x0e\xec\x88\x7a\x10\x55\xbc\x1a\x1e\x15\xfb\xc3\xd1\x20\x41\x0c\x0f\x0f\xd9\xcb\x42\x05\xd8\x1c\xb3\xfd\xe1\xc4\xdb\x0b\xcc\xc1\x4e\x86\x07\x87\x99\x3b\x16\x32\x03\xe4\x25\x26\xe3\x6c\x82\x2a\xe7\xba\x85\x8e\xb3\xc9\x91\x0e\xbf\x2d\x9f\x93\x51\x14\x75\x78\x1f\x47\x51\xbf\xec\x57\x1b\xe5\x6e\x8c\x03\xfb\x22\xe2\xe8\x97\x42\x5f\x4e\x1d\x9a\xe0\xb6\xbd\x5e\x3e\x1e\x4c\x52\x45\x5d\x3f\xfb\xaf\x5f\xca\x7f\xff\xc3\xb3\xe4\x30\xc9\xd3\x72\x41\xe7\x22\x6e\xc9\x9d\x7b\xca\xcc\xcd\x62\xca\x60\xca\x7a\x29\x43\x73\x3c\x7c\x36\x40\xe0\x69\xce\x90\x4b\x6f\x19\x3f\x9f\x2b\x17\x74\x8c\xff\x48\xf2\x15\xe1\xfa\xce\x2a\x4f\x0e\xf7\xe2\x29\x9e\x39\x15\x43\xed\x37\x6c\xaa\xb5\xff\x57\x78\xe1\xb7\xf9\x2c\x91\x7d\xd7\x8e\x42\xe6\xf8\x7d\x26\x16\xe9\x92\x16\xf1\x1c\xad\x9c\x37\xb2\x25\xba\xc3\xe3\x09\x7a\xf8\x1d\x5d\x58\xe2\x87\x5a\x17\x6e\xf0\x52\x75\xa1\x73\xa7\xf6\xf3\x8d\x26\x3e\xe6\x89\x65\x02\xef\xd2\x5f\x19\x2d\xd4\x24\x2b\x24\xae\x54\x10\xda\xb6\x20\x79\x85\x07\x2a\xcf\x07\x56\x7c\xe4\x74\x49\x05\xbd\x23\xbb\xf2\x3f\x07\x9c\x61\x2c\x05\x03\x8d\x05\x1b\xd1\xaa\x01\x86\x5f\x43\x6c\x0e\xf8\xf8\x44\xef\x9a\xf1\xde\x10\xed\x0d\x14\x37\xa0\xa0\x6c\xe2\x7c\xcc\xa8\x2e\xef\xb2\x75\x26\x7f\x1c\x62\x3c\xe8\xf5\xc8\x4b\xfc\xe7\xe7\xdf\x7d\xff\x1f\x83\xbf\x0c\x87\xbd\x1e\x79\x85\xf7\xcd\xeb\x81\x3a\xa5\xa6\x6c\x46\x3e\x90\xdb\x4c\x8e\x1b\xcf\xe0\x68\x0d\x92\x16\x36\x97\x8a\xad\x79\x47\xf0\xca\xe6\xb2\x49\x4b\x9b\x6b\xc7\xdc\x6d\x6c\xb9\x5d\x99\x3a\xa4\xee\x72\x02\xdf\xd9\x82\x2e\xed\xc1\xa2\xcb\x96\xca\xe8\x3c\x6e\x38\xbc\xb0\x82\x22\x62\x5d\x44\x10\x89\x68\xca\xf1\x60\xd2\x69\x20\x9f\x37\x4a\x57\x45\xbd\x4a\xf2\x41\x48\xee\xe6\x26\x27\xcb\x7e\xd4\xfd\x5f\xf0\x5e\xae\xb2\x42\x5d\xf7\xf5\xa3\x34\xb5\x29\xa4\x98\x79\xb8\xfc\x8a\x2c\x57\x79\x9d\x4e\x91\xdd\x83\xb6\xd5\x81\xce\x49\x59\xe5\xa2\x89\xde\x1b\x7d\x20\xb5\x3e\x90\x46\x1f\x88\xeb\x43\x0d\xfd\x4b\x3a\x4d\x6c\x9d\xf7\xe6\x6c\x1d\x91\x91\x71\x37\xae\x29\xa1\xcf\xbf\xa3\xb4\x2a\x72\xca\xf9\xef\x2c\xa3\xa2\x09\x61\x92\x8a\x6a\x95\x13\x4c\xd2\x3b\xc2\xe9\xfc\xe1\x52\x90\x55\x89\x81\x12\x95\x8f\x72\xe9\x8a\xd9\x15\x29\x85\xf9\x00\xaa\x37\x7e\x02\x58\xbe\x5e\x31\x85\x91\xf1\xd7\x15\x35\x88\xb2\x5d\xc6\x24\x95\x64\xe1\x25\x91\xe0\xe1\x45\x97\xd1\x88\x5e\xdf\xc8\xe9\x83\x7b\xce\x09\x79\x24\xf1\x78\xe2\x47\x96\x91\x99\xb9\xbe\xf0\x1f\x38\xae\x8d\x06\x11\x22\xaf\x6f\x25\x11\xd8\xef\x17\x8e\x23\x61\xcd\x0c\xeb\x35\x0d\x34\x52\xb2\xb8\x4e\x3a\xe8\xf0\xba\xca\xa9\xb6\x3a\x98\xda\x55\xa8\x34\xa3\xa9\xa8\xdf\x78\xa7\x83\xb3\x6c\x36\x6b\x5b\x2e\x45\xd3\xfb\x00\x62\x6b\x1c\x93\x09\x36\xf6\x86\xf2\x55\x0e\x65\xa2\x0d\xc8\xc1\x5b\x07\xb8\xc8\x0b\x2a\x6d\xa9\x4e\xe5\xea\xfa\xb5\x8e\xf4\x44\xf4\x7a\xcd\x8f\xea\xcb\xc4\x06\x1e\x32\xcb\x56\x6a\x13\xb2\x9d\xf3\xa0\xbc\xec\x8c\x27\xa1\x9b\x3d\x2b\x8d\xe1\x6d\x33\xa3\xac\x00\x9b\xb6\x35\xd6\xd3\x5e\x3d\xaa\x0d\x50\x3b\x3c\x74\xa6\xd1\x8c\xe2\x6f\x0c\x9c\xfc\x24\x7d\x92\xb6\x08\x1a\xf0\xc0\xc5\x9c\x72\x05\xc6\x62\x7f\x38\x41\x9e\xf7\x39\xf8\x4e\x64\xeb\x85\xd8\x6a\x9b\xdd\xda\xd6\x4b\xd2\x52\x39\x99\x80\xa6\xb0\x0a\xa5\xd0\xa2\x38\x37\x30\x57\xbb\x7e\x95\xb2\xc8\x76\xd7\x0c\x2e\xfb\x6e\xc5\x77\xfa\xb8\x5b\x00\x13\xb4\xe8\x05\x29\x50\xbb\xb9\xea\xfc\x4e\x15\xad\xdc\xd7\xb0\xeb\x18\x34\xf4\x3f\x76\xc8\x77\x85\xd2\xeb\x94\xf4\x59\x54\x19\x97\x39\xd1\x9e\xd9\x15\xca\x56\xe4\x48\xfd\xb5\xdc\xd9\x45\xd7\xd7\x92\xb7\x06\x82\x6b\x9e\x33\xc6\x63\x78\xe4\x59\x31\x63\xcb\x38\xf9\xf7\x93\x4c\x48\x7e\xf1\x3e\x4e\x92\xbe\xcc\xbb\x71\x08\x69\xe6\x05\x46\x33\x24\xc1\xf3\x9e\x27\x22\x59\x78\x08\xc9\xd2\x0c\x6b\x2f\xc3\xca\x65\xf8\xbf\x5e\xf2\xb2\x3d\xf9\xce\x53\x0e\x25\x6b\x3c\x48\x5e\x0e\x8e\x64\x1f\x46\xab\x50\xeb\xae\x9e\xed\x95\xeb\xdd\x91\xac\x7a\x04\xfb\xca\x9e\x14\x73\x34\x1e\x22\x49\x02\x37\x95\x09\x5d\xf7\x1f\xe2\x3b\x88\x0a\xa4\x5d\x3e\xdf\xe0\x69\xa7\x7e\x42\xdc\xa0\xc6\x21\xa2\xf6\x13\xaa\x9d\x35\x36\xd5\x3f\x99\x6c\xa2\x39\xa0\x54\x42\x5d\x12\xa4\xbd\x35\x32\x1e\x8a\x83\xfe\x17\xc8\x83\x9e\xad\x58\xfe\x20\xf9\xe3\x32\x94\x09\xfd\xe3\x12\xa1\x9b\x6a\x19\xa0\xa0\xac\xdf\x57\x44\x2c\x38\x3b\xc7\xa7\x88\xb4\x59\x33\xe3\x4b\x9b\x2e\xdf\x9a\xfb\x4f\x42\xfb\x2c\x1e\x00\xb1\xd3\x74\xb0\x0e\x24\x21\x2d\xdf\x48\x4a\xf9\x2a\xbb\xbd\x25\x6d\xa7\x8a\xba\x3f\xc4\x18\xdf\x6d\x82\xdc\x40\xdd\x79\x0e\xc2\x71\x6e\x98\x7d\xe5\x1f\x1b\x57\x20\xca\xe1\xe2\xe1\x2a\xbb\x7d\xcb\x38\x7e\x8f\xa0\x26\xf9\xf8\xab\x7a\x7c\x4f\x44\x26\x5f\x3f\x4a\xaa\xc2\x5d\x04\x9d\xd0\xd9\x9b\x45\x56\xd4\xe2\x59\x5f\x29\x99\x8d\x02\x00\x9e\x4d\x3f\x2b\xff\x02\x27\x7a\xf1\x5d\xca\x07\x4d\xfc\x57\x4b\xe8\xd6\x19\xf4\x1a\xbe\xb7\x1b\x28\x6a\x89\xca\x85\xac\x5d\x52\x60\x9f\x5b\x2c\xbd\x4e\x62\x65\xe2\x45\xe2\xc4\xaa\x03\x0b\xfc\xc1\x33\xcd\x92\xa5\x21\x34\x41\xdb\x95\xc8\x4f\x4a\x37\xbb\x68\x69\xfd\xb7\x98\x27\x1b\xcb\x85\x8f\xdf\x4e\x30\x47\x85\xa2\x4d\x9b\x9d\x79\xa7\x0e\xad\x8b\x04\x5d\x28\x41\x4b\xbd\x4f\x17\xf8\x9d\x8d\x81\x63\x17\xeb\x7d\xd8\x2d\x1b\x65\x60\xaf\x65\xb1\xdf\x82\x24\x66\x03\x1e\x29\xfe\x16\x93\xf1\xdb\x89\x07\x3b\x60\xfa\x8f\x7f\x72\x35\xe3\xbf\x21\x88\x1d\xa4\x6e\xda\x7f\x33\x13\x48\x66\x27\x99\xc8\x5a\x67\x42\x02\xe4\xdf\x48\xf6\xf9\x7d\xb6\x42\x05\x8e\x4c\x16\x47\x64\x98\x6b\xeb\xa7\x5b\x22\x02\x6f\x29\x35\x8b\x89\xee\x59\xfc\x2b\x38\x4c\x49\x50\xd1\xeb\xed\x81\xed\x5c\x4c\x93\xa3\x98\x61\x7d\x5d\x45\x13\xc4\xc1\x98\x8b\x22\x96\x24\x23\x86\xb9\x0a\xbd\x0e\x46\x35\x65\xad\x76\xf0\xc9\xf3\x3e\x16\xca\x12\x48\x96\x92\x29\x9b\x4d\x20\xc8\x7c\x5f\x09\x10\x03\x96\xef\x8a\xe3\x4a\x30\xa1\x61\xea\x8a\x67\x45\x99\x41\x3d\x92\x53\xa8\x8a\x5d\x9f\x4b\x22\xb6\x7c\x3c\x2d\xee\x30\x49\x7f\x3a\x3f\x3b\xbe\x7a\x77\x76\xea\x3d\x5e\x5f\x1d\x4b\xe2\xf7\x27\x96\x67\x82\xaa\x8d\x4b\x9c\x23\x7b\x4c\x4c\xd8\x05\xec\xf6\x1b\x26\xe9\x9b\x4f\x17\x17\xa7\xca\x3d\x82\x7c\x53\xb4\x89\xfe\xa4\x5d\x27\x78\x8f\x26\xdb\xf9\xfb\x8f\x9f\xae\x64\xe3\xc7\x67\x67\xe7\x7f\xbb\x7e\xf3\xf3\x9b\xb3\xd3\x4b\x9f\xb2\xd6\xe6\x2b\xff\x9a\xa3\x10\xb1\xaf\xb7\x23\x4f\x95\xf6\xb6\x7e\x38\x7b\xf7\xfe\xfd\xe9\xc5\xf5\x4f\xc7\x67\xef\x4e\x8e\xaf\xce\x2f\xae\x2f\x7f\x7e\xff\xfa\xfc\xec\xfa\xed\xf9\x85\xec\x88\x64\x63\x77\xae\x96\xf8\x9d\x8b\xcf\xd1\xd7\xd6\xb7\xe8\x78\xb3\x3f\xe8\xb8\xa5\x1b\x76\xbc\xa5\xff\x90\x7d\xe8\x28\xd1\xd6\xb0\xa3\x38\x06\x1a\x47\x57\xc7\x3f\x5c\xeb\xe5\x89\xbc\xab\xa6\xca\xc7\xd4\xe3\x72\x12\x7b\x07\x75\x1e\x3a\x05\x7b\x85\x75\x06\xb7\xce\xa5\x25\x6d\x74\x0b\x57\x3f\x7f\x94\xd5\xd7\xd6\x7f\x0a\xd9\x66\x5f\xb1\xfd\xe0\xe4\x8e\x96\x72\x1e\x86\x2e\x7c\xc2\x9b\x05\x91\xf8\xc0\x4f\x52\xc8\x42\x27\xd0\xd2\x5a\x9c\xef\xe9\xa4\xb2\xba\x11\x41\xe0\x63\x95\xf0\xba\x9a\xcf\x09\x57\x28\xc8\x7e\x1b\xcf\x27\x98\xb4\x68\x16\x8c\xcb\xc9\x16\x82\xde\xeb\x14\x68\x49\x5a\xba\xd8\xf5\x24\x69\xf4\xbe\xdf\xcf\x6c\x7c\x02\xb2\x87\x71\x66\xfc\x93\x7a\xbd\x1f\x34\x07\x9d\x75\x8c\xe9\x89\x21\xe7\x61\x24\x2e\x42\xbb\x9a\x2f\x4f\xac\x2f\x12\x3a\x8f\x81\x3c\x4d\x69\xa9\xc8\x54\x91\x78\x62\xfd\xc1\x61\xe1\x82\x93\x7b\xfe\x43\xc5\xb8\x98\xc0\xda\x76\xb8\x16\xed\x65\x5f\x62\x8a\xb8\xd2\x51\x36\x01\x3b\x54\x0e\x66\x39\x81\xfa\xbc\x1e\x79\x85\x79\x6d\xc1\xac\x71\x6f\xfb\x62\x04\x25\x59\x92\x6c\x6a\xcb\xcd\xdd\xb1\xd9\x58\x76\x7b\xfd\x10\x96\x81\x43\xd0\x62\xb9\x56\x4d\x03\x54\x60\xd1\x29\x24\x6d\x72\xc4\x7d\xb8\x19\xc5\xbc\xad\xa3\x30\x7e\xe4\x72\xea\xdb\x26\x8d\x32\x7d\x1c\x42\x1c\x30\xf7\xfb\x99\xf6\x2e\xb7\xc0\x33\x9b\xbb\xe3\x15\x5c\xc0\xee\x58\xe1\x99\xeb\xae\x67\x84\x54\x27\xc6\x86\x72\xff\xb9\x71\xad\xa0\xf0\x1d\x56\x1f\x9f\x7b\x3b\xfb\xc1\xdf\xd9\x40\x7f\xd5\xd0\xf5\x9d\xa6\x94\xb7\xb1\xd1\x5f\xdf\x17\x3a\xc3\x87\xec\x83\xe5\xd1\xfd\x53\xe6\x06\x1a\x50\x5e\xf0\x6e\x3a\xb5\x03\xe9\x16\x3e\x5e\xff\xe3\xad\x67\x2e\x30\xb1\x3b\xa4\xae\xa1\xf6\x7b\x68\xfa\xda\xcd\xc9\x69\x78\x15\x05\x2e\x5b\x06\xa8\xc0\xee\x56\xf8\x65\xe1\x6e\x86\xa9\xbe\x19\xde\xc3\xf8\xae\xd7\x13\x46\x31\xc3\xf4\xec\x32\x16\xfe\x55\x78\x10\xbb\x52\x7b\xfd\xa9\x45\xaf\xbc\xab\x85\xab\x24\xe3\xc1\xa4\x33\x23\xf3\xac\xca\xc5\xc8\xdd\x8e\xcd\xe2\x03\x77\x7f\x65\xa0\x8d\x20\xb1\xd9\x84\xc7\xf2\x3d\x0c\xf2\x1c\x2f\xe3\x04\x7d\x81\xdf\x63\xf9\xdb\xa9\xe2\xf3\x04\x2d\xe4\x0f\x3c\xad\xe2\x73\x74\x1a\x8f\xbf\xa0\xe3\x49\xa2\x93\x16\xf1\x17\xfb\x74\xec\x65\x3b\xae\xa7\x42\x0b\x57\xfe\xac\x2b\x6e\xf6\xb3\x4f\x89\xb9\xf9\x7d\xef\x6f\x2f\xe5\xbe\x92\x24\x41\x30\x17\x4f\x5d\x1a\x9c\x5b\xfa\x11\x19\x7b\xbd\x78\x11\x17\x09\xba\x02\x63\x79\x5b\xe9\x47\x27\xd4\xb0\x55\xb6\x1b\x3e\x9a\x58\x51\x9f\x55\x44\x25\x04\xee\x98\x5c\x45\xbf\x86\x4a\x40\x5e\xd4\x09\xd9\xc4\x88\xdb\xb8\xf3\xa2\xd9\x00\xed\xf5\x62\x0a\x73\x5c\x68\xf2\x8e\x26\x09\x52\x81\x2d\xdf\xec\x96\x44\x89\xec\xb6\x84\xae\x5d\x12\xe1\xb0\xa2\x13\x45\x7d\xa3\x90\xce\xd6\x25\xbf\x58\x7f\x3b\x50\x95\x8a\xb6\xab\x79\xbd\xf6\x73\x4b\x16\x94\x0b\xa1\x14\x43\x4a\xfa\x68\x65\xe5\x77\x32\x79\xd8\x48\xb6\xb5\x77\xec\x75\xab\xdd\x91\xbb\x18\x71\x61\x05\x63\x49\x82\x4e\x63\x1b\xa0\x51\x71\x1c\xe8\x1d\xdc\xdb\x9a\x39\x3a\x89\x6b\x4c\x09\xb9\xef\xbe\x71\x0b\xf6\xc1\x8e\xe1\xc2\x34\x6e\x39\x14\xc7\xdd\xfa\x24\xcb\x99\xec\x89\xe1\xc8\x7a\xbd\x0b\x3d\x57\x30\xcf\x6f\x25\x91\xf2\xe6\xf8\xcd\x8f\xa7\xd7\xff\x79\xfa\x73\xa4\x60\xfb\x51\x26\xbe\xfd\x10\x25\xe8\x93\x7c\x3a\x3b\xbe\xbc\x92\x04\xdf\xa7\xd3\x28\x41\xaf\x35\x55\x13\x25\xe8\x47\xf9\x78\xf9\xe1\xf8\xe3\xe5\x8f\xe7\x57\x51\xd2\xa1\x71\x74\x72\xfa\xfa\xd3\x0f\xd7\x67\xc7\xaf\x4f\xcf\x7c\x82\xea\x27\xc7\xf5\xa9\x6d\x10\xc7\x02\x3f\x6d\x92\xf1\x23\xc8\x4b\xc7\x9f\x26\x46\x94\x20\xc6\xaf\xbd\xe7\x1f\x95\x3b\x4b\xcf\xcf\xbf\xad\xf2\x37\x59\xe5\x1f\x62\x82\x22\xc3\x2b\x45\xc6\x3d\x2f\x19\x3f\x4e\x20\xaa\xf0\xeb\x89\x44\x63\xe3\x1f\xc3\xd0\x49\xbc\xd7\xcb\xc1\x43\x57\x72\x16\x73\x1d\xe0\xc8\xf2\xa2\xb2\x2b\xc2\x63\xfe\xb8\x64\x48\x91\xac\x4a\x52\xa2\xb2\x43\x55\xcc\x13\x74\x06\x26\x31\x16\x63\x7d\x9a\xb8\x8e\xfd\xcd\x76\x4c\x33\x74\x5e\xbf\x5e\x5b\x78\x79\x08\xf0\xe4\x1f\xe2\xe4\x49\x05\x3b\xf9\xc1\x07\x55\x3a\x8f\xdb\x48\xf5\xdb\x9c\xdd\x64\xf9\xd5\x82\x96\x06\x2e\x5d\x4a\x67\x4b\x99\x92\xe4\x73\x93\x5b\x3e\x6f\xcb\x77\x4f\x8b\x19\xbb\x37\x39\xd5\xdb\xb6\xbc\xaa\xd5\xb0\x0f\xcd\x1b\xa5\x0a\x0c\x5a\xba\x82\x75\x73\x26\x69\x7e\x9d\xb1\xab\x35\x2d\x12\xb9\x0f\x7e\xc6\x2c\x8e\x9a\xac\xc5\xc5\xe9\x0f\xef\x2e\xaf\x2e\x40\x82\x19\x25\x96\xb4\xfc\x61\xfc\xf3\xa4\x79\x6b\x74\xb5\x20\xdd\xbf\x37\x45\x4e\x7f\xef\xe6\xf4\x86\x67\xfc\xa1\xbb\xc8\xca\xee\x0d\x21\x45\x97\x16\xd3\xbc\x9a\x91\x59\x57\xdc\xd3\x29\x91\xcc\xb9\xdc\xd7\xdd\x6c\xb5\xca\xe9\x14\xf8\x91\xb4\xfb\x4e\x74\xa7\x10\x71\xe3\x86\x74\x67\x74\x0e\x0e\x6f\x44\xf7\x8e\x70\x49\xbf\x94\x5d\xc9\x54\x2f\x48\x77\x95\x4d\x3f\x67\xb7\x04\x75\x19\x87\xf7\x32\x5b\x12\x93\xa9\xde\xcc\xcd\x43\x77\x49\x4b\x91\x7d\x26\x69\x7b\x3f\x67\x64\x45\x8a\x59\xd9\x65\x45\x77\x91\xdd\xd1\xe2\xb6\x9b\x75\x4b\x5a\xdc\xe6\xa4\x3b\x65\xab\x87\x5a\x9b\xb2\xdb\x55\x49\xba\x99\xe8\x66\xc5\x43\x57\xd0\x25\x24\x65\x85\x3f\x0e\xd4\x25\x77\x72\xc0\x50\xf2\xa1\x9b\x71\xd2\xe8\x66\xda\xfd\x99\x55\xdd\x65\x55\x8a\xee\x8c\xcc\xaa\x15\xe9\x3e\xb0\x8a\x77\x6f\x2a\x9a\xcf\xe4\xa2\x29\xdd\x0e\x28\x36\xab\x54\xc5\xb6\x0f\xa5\x6c\x91\xf1\x19\xe1\x32\xe7\x8a\xcb\xc6\x84\x9a\x4c\xb8\xe6\x4b\xa3\xa4\x23\x17\x0b\xef\x35\x45\x82\x4b\x5f\x16\xf8\x4f\x16\xfc\xd9\x40\xdc\xe7\xab\x6d\x97\xdf\x70\x43\x3c\xfc\xb3\xbe\xe2\xdb\x96\x6d\xf8\x9d\xca\x50\xf7\x2e\xda\x9a\xfd\x25\x86\x3b\xf2\x3f\xdc\x0d\x30\x49\xff\x20\x86\xf0\x0b\xcf\x25\x3c\x97\xea\x79\x25\x7f\x79\x26\x7f\xe7\xf0\xbc\x9a\x62\x92\x5e\x91\xe5\x8a\x49\x30\xb5\x4d\x90\xf4\x32\xbb\x23\xd6\x6d\xa9\x91\x17\xa8\x02\xf0\xcf\x33\x60\x71\x65\x35\x07\x1d\x55\xf5\xf3\x8e\x6a\xe8\x45\x47\x35\xfb\xe7\x8e\xea\xc4\x77\x1d\xd5\xa5\xff\x30\xf2\x86\x8e\xea\xe8\xf7\xa8\xde\x8c\x40\x01\xcd\x3e\x26\xa9\xac\x6e\x82\xa3\x72\x10\x21\x78\x1d\xe2\x3f\xcb\xd7\x61\xb4\x89\xc5\x7a\x1d\x37\x2a\x90\x88\x5d\xae\x42\x73\x48\xbc\x51\xb7\xec\xda\x04\x47\x42\xd7\x2d\x7b\x28\x5f\x65\xdd\x1c\xea\x6e\xa9\x04\xea\xaf\xc3\xd3\x3d\xe5\x64\x7f\xce\xf8\x32\x13\xdf\x0a\x58\x16\xfb\x8a\x56\x7f\x24\x36\xa9\xce\x3a\xf6\x7a\x62\x3c\x98\x48\xda\x60\xb3\xf9\x6f\x01\x27\xc8\x40\x68\xd9\x62\x13\xe1\xe9\x8d\xbe\x90\x0d\x8c\x07\x93\xf5\x7a\xf8\x67\xfb\x78\x70\xe0\x52\xbf\x73\xa9\x2e\xef\xc1\x73\x97\xe1\x3f\xec\xa3\xf9\xae\x80\xf9\x58\xdf\xc7\xb4\x35\x7b\x30\x74\x55\x0d\x82\x52\x4a\x4b\xa5\xad\x4c\x38\x3f\x24\xe9\xf5\x9e\x87\x45\x7f\x80\x5b\x65\x5a\xbe\xf5\xed\x0e\x82\x8b\x65\x11\x0f\x0f\x24\xb3\x52\xcb\x63\xee\x93\x45\xfc\x5c\x7f\x96\x55\x15\x66\xed\x4b\xba\x5c\xe5\x64\x7f\xc6\x96\xcf\x66\x6c\x0a\x63\xfa\x17\xea\x9b\x6a\x16\x25\x1c\x88\x4f\xc7\x59\xf5\xfa\x50\xd4\xb0\x35\x54\x09\x9d\xc7\x34\xb0\x40\x52\x24\x3c\x4d\xe5\xb9\x99\x6b\x63\x23\xee\xb4\x70\xf5\x25\xd6\x70\xe3\x5f\xb6\x3b\xd9\x54\x8b\xb1\xd3\xf0\x2f\x7f\xf9\xcb\xb3\x2f\x0b\xb1\xcc\x41\x01\xe3\x48\xa4\x82\x9d\xb1\x7b\x63\xb9\x34\x12\xc1\xb5\xbc\x63\x0b\x28\x36\x63\xe9\x98\x46\x21\x7a\x89\xba\x6e\x1d\xd3\x89\x71\xea\xe1\x6e\xec\x5b\x4b\x1f\xee\x0f\x95\x89\x31\xb1\x76\x39\x68\xe8\x91\x41\x25\xe4\xd3\x71\x8c\xcd\x55\xb9\x25\x37\xb2\x5e\x2f\xce\x70\x14\xf5\xb3\x44\x4b\xf0\x88\x67\x35\x25\xa7\xaf\x84\x09\x0a\xd3\xe5\x92\x58\x79\x4d\x85\x8b\xb8\x54\x6e\x41\x21\xe8\xd4\x1e\xc6\x55\xe2\x71\x35\x31\xb8\x88\xd1\x41\x90\x93\x8d\x8e\xfa\xf4\x64\x17\x60\xc4\x90\x5c\x20\x17\xd9\x85\x8d\x68\x3f\x1a\x45\x7d\x95\x6e\x16\x6e\x24\xd0\x8a\x93\x39\xfd\x32\xa2\xa8\x5c\x91\x29\x9d\x53\x32\x73\xce\xda\xb2\x8d\xa2\xbd\xb7\x5d\xd6\x1b\xbe\xa6\x60\x33\xe2\x5d\xaf\xe7\x9e\xad\x96\x0d\xd7\xd3\x62\x00\x44\xeb\x7e\x5c\xed\x01\xa5\xd8\x17\x28\x0a\x5a\x0c\x63\x32\xd1\xea\xf9\xbf\x3f\xe8\x0f\x9d\xc7\xae\x63\x4e\xbd\x40\x76\x72\xd8\x71\xb7\xc5\x03\x73\xc3\x2f\x07\xe3\x7b\x9d\xb0\xd6\xfd\x44\x9b\x0d\x8d\xc9\x04\x0b\x99\x3b\x50\x2e\xf5\xac\xfc\xae\x8d\xa2\x9d\x09\xc9\x6a\x66\x81\x1c\x92\x97\x1c\xea\xf1\xd4\x25\xc6\x64\x12\x88\xc0\xae\xeb\x77\xe5\x75\x89\xae\xda\xa1\xcd\x6b\xaa\x61\x4d\xbf\x3e\x16\x75\x43\x41\x8d\xa5\xc0\x67\x55\x4c\x52\x76\x5f\x10\x7e\xa2\x11\x12\x72\x45\xf5\xa3\x84\x23\xe4\x69\x33\x4b\xf6\xa6\xd1\x46\xe1\x43\x70\x4d\x85\x2a\x40\x03\x2e\x54\x9a\x50\x9e\x9e\x77\xa2\x18\xd1\x00\x68\x0f\xbb\x28\xd0\x56\x28\x28\x04\xe7\x10\x2d\x59\xd8\x4e\xd5\x43\x1b\x88\x6b\x03\xb6\x8d\x77\x97\x17\xfb\xbb\xd2\x85\x6e\x2b\x36\x5a\x1a\x22\x12\x67\x57\x16\x78\xbb\x60\x98\x1a\x68\xa1\x87\x09\xc3\x34\x30\x35\x2d\x52\x6d\x41\x0a\xda\xc7\x34\x9d\xe6\xac\x20\x60\x4d\xb3\x37\x48\x12\x44\x31\x73\x2d\xd9\x25\x9f\x1a\xfc\x04\x32\x03\xff\x5c\x50\x46\x89\x92\xf9\x1f\x82\x69\xa7\x59\x13\x1f\x4b\x74\x9b\x05\x9a\xdd\xf6\x82\xff\x1a\x23\xbf\x8e\xff\x5d\x71\xfe\x44\xcb\xb6\x4d\x82\xb6\x4e\xa2\x28\xc3\xb4\xd3\x30\x7e\xc7\xdc\xd8\x3f\xf1\x23\xdf\x85\x0b\xa6\xa3\xc0\x4c\x08\xd3\x8e\x6f\xa9\x95\x1d\x26\x99\x67\x57\x8e\x05\x62\x38\x43\x19\xce\x82\x9d\xc6\x42\x7f\x27\x9e\xa5\x95\xd7\x47\x36\x2a\x1a\x9d\x62\x9b\x58\x20\x02\xf3\x60\x8d\xe7\xbc\xe6\x7a\xbd\x79\xec\xbf\x4b\x78\xf7\xdf\xc1\xd5\x4a\x73\xa0\xa2\xbd\x3b\xfc\x28\x98\x44\x51\x1b\xb8\xe8\xd8\x6e\xfb\x53\x2b\x5a\xba\x2d\x36\x2a\x6c\x88\xab\xd7\xe6\x1f\xf1\x7a\xee\xc0\x81\xdd\x5c\x21\x8c\x2d\xb0\x13\x8c\x4d\x7b\xa8\xa9\xb7\xdd\xe2\xb8\x06\x92\xda\x07\x59\xd4\x06\x59\xb4\x0f\x92\xb7\x0c\x92\xab\x41\x36\x7a\x10\x36\xee\x3b\xe7\xf3\x2d\x00\xae\xc1\x5f\xae\x1c\x48\xd9\x09\x83\x40\xda\xf3\x48\x9d\x64\x8b\x6d\x27\x99\x9c\x60\x79\xa0\x9b\xd8\xaf\x3e\x6a\x34\x47\x9b\xd9\x62\x26\x98\xa9\x41\x92\x3a\xf6\x88\x67\x76\x4e\x75\x82\x4f\x23\x31\xed\xf2\xb4\x3e\xe7\x90\xd8\x3a\xed\x0b\xed\x48\xb6\x99\x5a\xdf\x9d\xde\xe5\x53\x98\xe6\x21\x67\x7d\xa7\xe3\x4d\x95\x51\x82\xb9\xdb\x1e\x3b\xc4\x22\xa9\xb6\x73\x5a\x1b\x0c\x82\xa8\x43\x79\xcb\xf5\x30\x5c\x5b\x81\xa9\x2a\x40\xb4\xdd\x37\x71\xd1\xa1\x55\xb8\x94\x76\xff\x78\xb6\x94\xd0\x45\x3c\x2b\x8e\xb6\x56\xe6\x3a\x7f\xd0\xc0\xf1\xec\xd7\x6c\x4a\x0a\x51\x73\x0f\xe2\x45\x44\xd6\x5e\x3e\xb4\xf7\xbb\xf0\x6c\xdc\x1f\xa2\xe8\xdf\x78\x76\x1f\x21\xae\xb5\xf8\x6c\xf8\x11\xa1\xae\x09\xa2\x1b\x18\x01\x28\xa8\x44\x23\x6d\xa3\xea\xe1\x12\x1d\x1f\xd7\x05\xd9\x88\xb2\xb9\x20\x3c\xc8\x6f\x3c\xcb\x7b\xb8\xd9\xcb\xaf\x1a\x20\xc5\xcc\xcb\x0e\x98\xb8\x5e\xa7\x97\xa5\xd9\x83\x00\x93\xaa\x92\xe6\x0a\xa3\x21\xa8\xa2\x05\x08\x7d\xba\x2b\x50\x22\x67\x45\x94\x6c\xdc\x59\xd1\xf4\xfc\x25\xfa\x51\x97\x93\xdf\x2a\xca\x49\xd9\xcd\xba\xae\xe9\x28\xe9\x4c\xe3\x02\x31\x44\x8d\x01\x71\x3b\x47\xa9\x76\x33\x8d\x1b\x7b\x07\xb9\x3b\x03\x16\xd7\xe0\x5a\x9b\xe3\x36\x6a\xfe\x70\xd9\x0e\x4d\xcd\x0a\x4c\x94\x9a\x76\xeb\x7f\x15\xc2\x45\x47\x28\x36\xa8\x0f\xb5\x77\xb2\xa5\xa2\x5a\x37\xdc\xfd\x45\x73\xe0\x04\x71\x8d\x5c\x31\xb1\xd6\xf3\xd1\x28\x72\xbc\x8c\xbe\x66\xe1\xd8\x58\x74\x0e\x50\x91\x20\x61\x5f\x8b\xfe\x30\x49\xd0\x98\x23\x31\xd9\xc4\x22\xe9\x94\x76\xbf\x8d\x07\x13\x54\x8c\x87\x13\x6d\x80\x5e\xb3\x75\xff\xf6\x55\xc8\x76\x4d\x7f\xad\xd6\xc6\x0a\x34\x0b\x9b\xa9\x57\x04\x7d\x9b\xf3\x0c\xef\xf6\x54\xed\x4c\x34\x44\x35\x3f\x16\xaa\x0b\xbb\xb9\xc8\x66\x2b\x7e\xef\xea\xbe\x60\x6d\x4b\x5f\x65\x4d\xc5\x11\x0f\x3b\x33\xe2\xfe\x8c\x68\xed\x3c\xf2\x45\x34\xfc\x1e\x35\x9b\x7b\x8e\xa2\x7f\x13\xe4\x8b\x88\x90\x30\x48\xc6\xd5\xd1\xe6\x20\xa5\x59\xc5\xf7\x28\xfa\xb7\xa9\xca\xd9\x5a\xcb\x45\x76\x2f\x11\xe0\x25\x51\x2a\x2b\xbb\x2b\x73\x48\xaf\xa5\x26\x83\x1a\xdf\xf2\xec\x76\x4b\xe8\x6a\x7f\x26\x65\x55\x46\xf4\xb1\x3f\xd7\x65\x22\xdf\x78\x26\xd9\xc9\xdb\x69\x57\x22\x3b\x35\x8d\xcd\x71\xec\x2c\xc4\xed\x49\xd7\x28\xe7\xdd\xad\xf9\xb4\x43\xfd\xde\xd0\x45\xab\x0c\xce\x4d\x39\xb2\x4a\x79\x44\x90\x87\x8c\x69\x6f\xc6\xa6\xf2\xf4\xdc\xd9\x49\x87\xdb\xfd\x62\x30\x2f\x1a\x30\x77\x16\xb7\x67\xbc\x2d\xbd\x20\xd9\x6c\x67\x91\x5a\xf5\x6d\x3d\xb8\x61\xb3\x87\xdf\x55\x87\xd7\x0d\xc3\xa5\x2a\x2d\x88\xc6\x14\x2b\x5e\x13\xd6\xf9\x2f\x1e\x0c\x44\xdf\xb4\x69\xb5\xc6\xf6\x22\x26\x68\x38\x90\x99\x97\xf9\x37\x16\xe4\xae\x20\x8a\x24\xc8\x7f\x63\xb9\x22\x28\x77\x7a\x7c\xf2\x8d\xe5\xa8\x5f\x0e\x3c\xe0\x7c\x53\x39\x67\xba\xe0\xf3\x86\x45\x82\xc2\x04\x0a\x66\xe3\x5e\x82\xa8\x27\x70\xb9\x0a\x1d\x27\xeb\x5b\x69\xd1\xe3\x4d\x36\xfd\x7c\x53\xf1\x82\xf0\x7f\xa1\xc0\x11\xae\x64\x3e\xe6\x99\x98\x33\xbe\x04\xe3\xea\x56\x11\x64\x49\xc4\x15\x5d\x12\x56\x89\x50\x37\x76\x53\x33\xca\xa1\xf3\xb8\x45\x55\xf4\x23\x67\x4b\x5a\xda\xf3\x4a\xbf\xa6\x9c\x94\x2c\xbf\x23\xce\xb1\x6d\x0b\x44\xa7\x62\x41\x0a\x08\x9f\xd5\x5e\xb5\x51\xf6\x3b\xbf\x29\x09\xbf\x23\xf6\xc8\x1e\xe8\x65\xae\x7f\x97\xec\x15\xc3\x06\xb4\x6b\x48\x3f\x8e\xdc\x32\xd3\x94\xa9\x22\x31\x43\x4f\xd3\x45\xc6\xb3\xa9\x20\xfc\x24\x13\x99\x9a\xba\x16\x1c\x8a\xfb\xfd\xe2\x8f\x07\x88\xa5\xb3\x4c\x80\x4c\xb1\x40\x85\xbd\xcf\x6d\xe6\xe7\x2a\x34\x7a\xcd\x6a\x49\x2b\xa7\x18\xe5\x5a\x37\xf1\x81\xea\xa4\x77\xcd\xe0\x1f\x88\x5b\xfc\xea\xbb\xb0\x14\xc2\xa8\xe8\x37\xbb\x43\xec\x47\xf0\xeb\xbc\x89\xe3\x56\x9a\xcc\x75\x48\x85\x0c\x4c\x12\x04\x46\xdf\x5f\xeb\xe5\xff\x78\x1f\x1d\x0f\xe2\x75\x47\x6b\x47\x14\xec\xbe\x05\x5d\x3a\x2d\xd6\x0d\x92\xa4\xf6\x48\x82\xb0\x1a\xcd\x07\xf9\x2a\x94\x87\xf8\x0c\x3f\xfb\x65\xd6\x7f\xd6\xf1\x25\xca\xd6\xf6\x47\x1b\x5c\x75\xea\x76\x78\x92\xa3\x25\x18\x93\xf5\xda\x59\x67\xc9\xb4\x2c\x15\xa4\x14\x81\x95\x46\xa0\x18\x9a\xb2\x02\x28\xf4\xf5\xda\x3e\x5e\x41\x84\xab\x5e\xaf\x96\x30\xb6\xef\xef\x89\x58\xb0\xd9\xa4\xa6\x4e\x1a\x5e\x12\xec\x0f\x11\xc5\x03\xf0\x19\x6f\x9c\x0c\xbc\x64\x87\xb4\x8f\x5f\x24\x74\x1e\xf3\x31\x9d\xa8\x23\x94\x8f\x69\x7f\x38\x51\x4e\x2f\x0b\x4c\x15\xdb\xb1\xd9\x21\xec\xaa\x35\x71\xd0\xd2\xc4\x77\x3b\x9b\xd8\x3f\xd8\xda\xc8\x7c\x4b\xf4\xdd\x81\x33\xc6\x2e\xf0\x78\xa2\xdd\x27\x10\xe7\x3e\xc1\xb8\xec\x64\x98\x8c\x69\xff\x79\x9f\x4f\x50\x86\x9f\x54\xa8\xb0\x91\x4c\x1a\xc8\xa4\x25\xcc\x1b\xbc\x0f\x21\x0b\xbf\x2d\xe1\xed\x40\xbe\xa9\x70\x17\x56\x42\xc1\x7a\x3d\x1d\x39\x84\x16\x5d\x76\xc4\x94\xb1\xd4\x28\x8a\x36\x9d\xc2\x44\x00\x6b\x19\xc2\xac\xe6\x1a\x05\x54\xb2\x07\xe0\xe6\x5e\x5b\x9c\x7f\x07\xd3\x94\x90\x57\x58\x8c\x39\xa6\xfd\xb8\xc0\x31\xdb\xa7\xc9\xb3\xef\x92\xfd\xe2\x8f\xdf\x4d\x8e\x28\xe6\xfd\xef\x46\x0c\xf3\x8e\xbb\x43\x16\x63\x3a\x39\xa2\xfd\xef\x46\xf4\xab\xa2\x12\xde\xf0\x55\xf2\xb4\x49\x50\x6d\x46\x65\x92\x22\x9d\x7e\xab\x48\x45\x5e\x13\x5a\xdc\xc2\xad\x19\x99\x59\xcb\x3e\x35\x7d\x7f\x95\xdf\x4b\xab\x00\xa6\x94\x44\x25\x03\x84\x07\x7e\x0d\xb6\x14\x38\x7a\xd1\x42\x19\xb6\x02\xbd\x6c\x23\x93\x51\x3a\x1b\xe7\x3a\x91\xef\x52\xd1\x82\xc9\x7e\xcb\x78\x43\x6c\xfd\xd2\x6b\xd3\xea\x02\x7a\x8a\xbc\xea\xcb\xf8\xf9\xbf\x93\xfe\x0b\x67\x28\x76\xa4\x6b\x54\x17\x15\x1b\x24\x52\xf0\x02\xd6\xe4\xad\x10\x37\x61\xe5\x74\xdf\x41\x73\x4d\xb1\xf7\x88\xe1\x22\x05\x2e\xbe\xd3\x98\x1f\xe5\x08\x23\x4e\x90\xd5\x5a\x6e\x4e\xac\x75\x3f\x10\x6f\x9b\x79\x2f\xbd\x36\xb7\x66\x01\xd5\xcd\x17\xd5\x34\x5d\xb6\xad\xa9\x0e\x9d\xc7\x99\x6e\xef\xd5\xc0\xb8\x5d\x50\x64\x71\xb8\x0c\x49\x87\xe3\xf2\x48\xaf\xea\x1d\xfb\x0c\x31\xd0\xce\x15\x9e\x19\x79\xc9\x76\x03\xea\x68\x82\x00\x02\x87\xf9\x4b\xd3\xca\x61\xae\x51\x8b\xfb\xda\xc7\x2f\x8c\x43\xd4\x58\xe0\x6c\x9c\xf7\x87\x93\xa4\xd7\xe3\x71\x36\xce\x27\x48\x20\x99\x72\x30\x41\x25\x3c\x3c\x37\x81\x75\xa1\xe8\xde\xd7\x27\xb1\x39\x94\x74\x59\x95\xe2\x67\x4a\xf2\xd9\xee\xaf\xb1\xf5\xab\x38\xdc\xf8\xdb\x9d\xc5\x5b\xf7\x44\x6a\xae\xca\x42\xf8\xdf\x93\x5c\xbf\xf1\xd9\x16\xc0\xe4\xab\x81\x4e\x05\x38\x8b\xc1\x07\x98\x48\x17\x59\xf9\x37\xc6\xb7\x45\x8c\xdb\xde\xee\xab\x81\xf2\xfd\x5e\x6f\x43\x05\x0e\x2f\xa6\x24\x6f\xf5\xbd\xa2\x00\x14\x3c\xc0\x2a\xd4\x67\x60\x5b\x83\x18\xc5\x4d\x38\xae\xab\x8e\x4a\x68\xd3\x36\xc8\x31\x37\x7e\xcf\x72\xed\x77\xd1\x0a\x7e\x5e\xed\x0f\x8f\x62\xeb\x5f\x90\xa1\x17\x09\xda\x1b\x24\xa3\xd8\x66\xdd\xb6\x9c\x49\xf2\x6a\x7f\xd8\xeb\xc5\xc5\x98\xc9\x33\x02\xe8\x72\x3d\x59\x35\x83\x61\x14\xc6\x76\xf1\xa7\x43\xa9\x45\xea\x0c\xe8\x09\x12\x01\x76\x91\x39\x01\x0c\xea\x17\x1b\x53\xf3\xa7\x82\xfe\x56\x8b\x06\xdc\x70\x25\xd9\x98\x18\x62\x26\xc6\xaa\xad\x06\x68\x31\xc8\xaf\xf4\x64\x69\x62\xe6\x8c\x9a\xa9\xf5\xbd\xe1\xb1\xc0\x89\x73\xdb\x70\xf6\x5f\x74\xa8\x56\x8b\xcd\x3c\x9b\x81\xd2\x2f\xd1\x29\xc7\xac\x7f\x30\xc1\x1c\xc9\x87\xe7\x13\x6c\xae\xf5\xbf\x3e\x15\xd7\xb7\x44\x9c\x90\x9b\xea\xf6\x5d\x31\x67\x0d\x64\x9b\x04\x52\x5b\x03\x36\x2f\x60\x79\x14\x5a\x68\x0a\xd0\x9c\xea\xaf\x30\x41\x80\x47\x42\x93\x80\x04\x44\x5c\xa2\x89\x69\x1a\xeb\x80\xa8\x8e\x0e\xf2\xd5\xea\xa6\xe0\x49\x85\x25\x4f\x45\x0c\x42\x4c\xad\x14\xbb\xda\x7e\x42\x6e\x0d\x2a\x99\xfe\xa6\xce\x3a\x1d\xd0\x5b\xbd\x7e\xc8\x96\xe4\x9d\x7f\xde\xd9\xd4\x12\x13\x24\x99\x9a\x59\x35\x25\x01\xf1\xec\xd1\xe7\xe0\x78\x09\xb8\x4f\x8e\xc4\x98\x4f\x94\x9c\x3c\x68\x6e\xa7\x3f\x81\x72\xba\x20\x92\x8d\x6b\x99\x20\x14\x02\x8f\xaa\x6c\x4c\x26\x01\x80\x65\x4d\x15\xc7\x9f\x59\xd5\xcd\x84\x20\xcb\x95\x20\xa0\x9c\x67\xda\x00\xb5\x3f\xcd\xdb\x15\xdd\xac\x0b\x35\x1a\xff\x63\x5d\xb1\xc8\x44\x77\xc6\x48\x59\xfc\x49\x74\xc9\x17\x0a\x2a\xa9\x56\xe4\xcc\xff\x69\xed\xcc\x19\xef\x66\x5d\x05\xa4\xed\x8d\xfa\x18\xa0\xb1\x44\xf4\x28\xf3\xf6\xb7\x8e\xe9\xc4\x92\x51\xa6\x83\x28\xea\xf7\x9d\x24\x40\xa7\x06\x1f\x7b\x43\x9f\xfe\xac\x01\x81\xf5\x0c\xd6\xec\xce\xcb\xe2\x10\x28\xe1\x7a\x91\x71\x4b\xde\x09\x02\xb7\xf0\x26\x46\xa1\x5e\x4d\x3e\x49\xcc\xa1\x11\x27\x4e\x5d\x22\x2c\xda\xef\x23\x73\x06\xd5\xdb\x77\x07\x9d\x31\x92\x52\x17\xd2\xfa\x54\x1a\x7a\x27\xe1\xd7\x91\x81\x33\xef\x00\x8c\xfe\xb4\x31\x07\x48\x63\x32\x10\xc3\x83\x43\xf6\x92\x1e\x26\xcd\xb1\xb3\x09\xaa\x8f\x11\x15\x72\x9b\xd4\xda\x07\xc6\xbd\xdf\x77\xf7\xee\x8d\x20\x42\xa1\xc5\x89\x0a\x22\x68\x02\x07\x1d\xc2\x6c\x72\xed\xfd\x48\xc7\x0b\x0a\x72\x6c\x94\x75\x8f\x2f\xdb\x40\x0f\x2d\xce\x49\x6c\x7b\x37\x2e\x98\x23\x8c\xbf\xee\xc2\xc0\xd8\x00\x14\xc9\xa1\x3f\xd9\x45\xa2\x6f\x0e\x84\xe7\xc3\x60\xe0\xa9\x13\x29\x1e\xca\xff\x86\x32\xef\x75\x38\x41\xa5\x55\x5e\xea\xd4\x84\x22\xb8\x3c\x8a\x39\x66\xb2\xee\x64\xe4\x02\x07\x78\x2c\x68\xd9\xeb\x65\xa0\x60\x7b\x24\xb0\xcc\x9a\x8c\xb3\xc9\xa8\x45\xae\xc2\xe0\x38\x1b\x22\xdb\x59\x96\xa0\xe2\x95\x36\xed\xad\x70\xb1\x4f\x3b\xc4\x73\xd1\x50\x25\x1e\x41\x38\x38\xcc\x5f\x56\x87\x79\xbf\x9f\x90\x71\xee\xbb\x6a\xc8\xfb\xd4\xba\xb0\x1b\x73\x24\x10\xf1\x98\xd6\x5b\x2b\x87\xbc\xd1\xf8\x5c\x6b\xec\x3b\x19\x01\x12\xa0\x00\x08\x6a\xf8\x43\xa5\x86\x7f\x30\xd1\xfc\x94\x33\x6e\x39\x32\x7e\xf4\x46\x03\xf0\xea\x6c\x08\xde\x0c\x17\xe0\x9d\xac\x53\x2a\xd7\xfd\x14\x5b\xff\x9b\x85\xb6\x74\x18\x0e\xac\xe7\xab\xb1\x46\xab\x5e\x0f\xaf\xc3\x15\x47\x10\x9a\xe7\x40\x62\xd5\xda\xd2\x27\xe1\xda\x22\x1a\xae\x9f\xba\x4d\xee\x78\x06\x7f\x5b\x47\xdc\x21\x98\xc9\x1a\x04\x66\x63\xdf\x2b\x49\x5c\x60\x36\x3e\x98\x24\x47\x14\x0f\x46\x65\x0c\xa1\xcc\xe4\x08\x92\xf5\x3a\xe6\x18\x6e\x79\x29\x72\xa9\x66\x4c\xfa\xea\xdc\x0d\x9c\xca\x21\x23\x3e\xd9\x28\x23\xae\x01\x3a\xc5\x03\x74\x89\x07\xe8\x1c\x0f\x90\xc4\x9f\xc7\x78\x80\xae\xf0\x00\x7d\xc6\x03\xf4\x1e\x0f\xd0\x47\x3c\x40\xbf\xe2\x01\x7a\x83\x07\xe8\x02\x0f\xd0\x3b\x3c\x40\x27\x78\x80\x3e\xe0\x01\x3a\xc3\x03\xf4\x16\x0f\xd0\x23\x1e\xa0\x4f\x78\x80\x5e\xe3\x01\xfa\x71\xe7\xb9\x6b\xf5\xb0\x14\x07\x05\x86\x1e\xd6\xbc\x54\x7b\x69\x79\x07\xde\xc1\xa6\xfe\x15\x3c\xd5\x49\x97\x81\xe7\x99\x6b\xd0\x14\x7f\x93\xe5\xf9\x4d\x36\xfd\x5c\xe2\x27\x52\xcc\x46\xe3\x09\x82\x7b\xdb\xd1\x78\xa2\x4f\xf1\x6b\x41\x97\xc4\xc8\x87\xde\xf9\x17\xf0\xea\x4b\xe9\x2a\xcc\x2a\xc1\x78\x55\xd8\x1e\x99\x04\xd5\xae\x2b\x18\x90\x00\x21\xa7\xbb\x5e\x3f\x6d\x50\xc3\x41\x8f\x9f\xc7\x08\x5c\x81\x4e\x54\x9c\xd7\xb5\x9f\x84\xb7\x66\x1e\x6d\xcb\xec\xa1\xd7\x81\x19\x0b\x2b\x5e\xcb\x79\x08\x6b\xd3\x89\xeb\xf5\x9d\xcd\x75\x5a\xcc\xea\x79\x4e\x8b\x99\xcb\x71\xc3\xaa\x62\x76\x51\x15\xa7\x5f\x56\x94\x93\xd9\x95\x9a\x32\xf5\x8d\xd7\x92\x21\x00\xac\xba\x7b\xf1\x4b\x1f\xab\x59\x94\x2d\x79\xc0\xf1\xd8\xef\x2b\x06\x8a\xdb\x79\x86\x00\x01\xfe\x2a\xf0\xb6\x25\xe0\xe9\x35\x29\x66\xa0\x99\xb5\xe9\x78\x67\xb2\x19\xc0\x75\x20\xe3\x5e\xaf\x99\x02\xb6\xeb\x95\x91\x7a\x17\x71\x6b\xe7\x92\x5d\xee\x8b\x00\xa8\xfc\xee\x9f\xea\xe8\x3d\x36\xb6\xaf\x11\x18\x84\xfe\xc0\x0d\x34\xeb\x9a\x60\xc0\x01\x6c\x1d\xc5\xc4\xa9\x7f\x00\x2f\xa7\x7b\x14\x27\xc9\xc8\x73\x2a\x1a\xbf\xee\xf7\x5b\x76\x83\x09\xd0\x94\xa0\x4f\x92\x0e\x68\x6d\x1b\xf0\xf6\xaa\x46\x3a\x80\x33\xe9\x73\x53\xe7\xb5\xe0\xf4\xf6\x96\xf0\x38\x52\x5a\x0f\x48\x52\xb1\x49\x08\x4a\x40\xd9\x22\x70\x8c\x44\xc2\xa5\xbc\xb4\xd5\xc0\xc2\x0c\xc1\x75\x53\x10\x30\xcb\xc4\x4e\xb0\x07\x8f\x55\xc8\xf5\x5d\xb7\x5d\x3d\xac\x88\x71\xdf\xa6\xb7\xb5\x32\x2a\xb9\x21\xdd\xcc\x4a\xd4\xa3\x24\x50\xe8\x0c\xb1\x40\x9d\x00\xe6\xdb\xaa\x2f\x0a\x26\xba\xb2\xf7\x5d\x65\x70\x02\xe4\x67\xf7\x86\x4c\xb3\x4a\x1e\xde\x8a\xec\x84\x98\x68\x96\xee\x34\x71\xb8\x61\x74\xf3\x79\xab\xe5\xf3\x8e\x3e\xed\x91\xf5\xfa\x5b\xfb\x35\x9f\xff\x8e\x8e\xa9\x3d\xa0\x82\x0b\xf9\x0a\x90\x83\x43\xfa\x92\xfb\x3e\x66\xb5\x4c\x56\x48\x86\x1b\xef\x0d\x10\xf7\x35\xa8\x11\xdd\xdf\x57\xe6\x51\xc5\x37\xf4\x6d\x6a\xd6\xc7\x92\xe8\x7e\x97\xe4\x0c\xc9\x2d\xec\xc1\xc8\x17\xb3\x5f\x7e\xe7\x71\x1f\x90\xfb\x12\xe3\xc4\x26\x94\x02\x07\x57\x95\x7e\x1b\xc7\xff\x94\x36\xc0\x01\xa6\x6b\x64\x46\xe6\xa4\xce\xa0\x26\x4f\x57\xfd\xbe\xc7\x13\x7c\xc5\x75\xea\xf3\xa3\x62\xff\xb9\x72\x9d\xfa\x3c\x70\x9d\xfa\xbc\xe6\x3a\xd5\xef\x87\x61\x97\xfc\xeb\x13\x38\xd0\xb9\xf5\x65\x49\x13\xe8\x61\x0b\x93\x98\x3c\x7d\xf6\x3a\x28\x9a\x1d\xe4\x5e\x07\xc5\xab\xe1\x91\x50\xbe\x5d\x0b\x3c\x3c\x2c\x5e\x0a\xd0\xf9\xe5\xe3\x22\xf4\xed\x5a\x4c\x74\x1c\xd5\xda\xec\x72\x39\x30\xaa\x08\x57\xaa\x08\x56\x2a\x09\xb5\x0a\xbb\x53\xfe\xc8\x72\x86\x5a\xc4\x1e\xce\xb9\x72\xf8\x6c\x10\x56\x9c\xd8\x31\xc5\x04\x31\x94\xa1\x12\xed\x0d\x51\x15\x8c\x16\x3c\x9f\xde\xe4\x75\x75\xa0\xf7\x36\xaa\xda\x3f\xa5\x71\x38\x71\x96\x68\x2c\x24\x83\x06\xe2\x0b\x0d\x11\xe7\x12\xb1\xd6\xa1\xe2\xe3\xbf\x0c\x2a\x64\xf3\xdf\x0e\x19\xb5\xce\x26\x4f\xbf\xfe\xff\x0d\x3a\x06\x06\x3a\xec\x75\x65\x8b\x94\xf5\x8d\x39\xa7\xf2\x4c\x10\xbe\xe5\x5e\x12\x71\xf5\xd9\x2f\x7f\x61\x11\xcb\xed\xef\xe5\x55\xc8\xf8\x79\x0d\xbf\x40\xed\x36\xda\x34\x78\xfa\x5b\x70\x26\x44\xe8\x2b\xef\x9d\x47\x5f\x5c\x6f\x6d\x94\x63\x01\xea\x63\x10\xf3\x55\xf2\xe3\xb2\x51\x86\xc5\xf8\xb9\x9c\x6e\x31\x7e\x21\xa7\xdb\x49\x83\xd6\xeb\x0c\x55\x78\x1a\xcb\xa6\x7d\x12\x58\x5b\xb2\x60\x8c\xab\xc4\xe8\xd4\xa8\x6e\xca\x9c\xe5\xd1\xc3\x88\x22\x96\xa0\xd2\x88\xba\x01\x45\xaa\xfe\x2b\xb6\xc6\x14\x52\xd5\x8d\xab\xfe\x70\xa2\x5d\x02\x56\xfd\x17\x9d\xe0\x5b\x3e\xd9\xc3\xf8\xc1\xde\x82\xd8\x54\xec\xfc\x3f\x10\xb5\xcb\x24\x7d\x36\x0d\x26\xe5\xe4\x9f\x3d\x29\x2a\xb8\x5b\x66\x80\x51\xf7\x06\xe5\x7a\x8e\x2a\x37\x31\xf9\x7f\x6f\x62\x64\x6f\xe7\x38\x24\x40\xd5\x1d\x74\x9f\xa1\x05\xce\xfb\x2f\x3a\xd5\x78\x21\x4f\xe5\x07\x60\x51\x1f\x12\x44\x70\x05\x77\x25\xc6\x79\x49\x3c\xd7\xfd\xc8\xfb\xdf\x61\x8c\x57\x49\x25\x67\x6b\x8e\xa0\x1c\x75\xcd\x2c\xc3\x35\xc8\xfb\x7f\x9e\x04\x33\x6f\x0e\xfb\x15\x1a\xa0\xb9\xd2\xb5\x47\x14\x2d\x13\xd4\x96\x29\x47\xdf\x25\x1b\x09\x33\xb9\x19\x1a\x27\x40\x78\xe6\xf9\x95\xc7\x4f\xc5\xe1\x9a\x29\x02\x56\xf3\x08\xde\xba\x7d\xb0\x04\xa2\xbd\xac\x77\x35\x6c\x61\xc6\x6a\xc4\xb0\xac\x7e\x91\x95\xcd\xba\x83\xbd\xa5\x07\x51\xbf\x36\xd1\xb4\xb6\xeb\x62\x5d\xba\x75\xd6\xef\x23\xe3\xcd\xdd\x50\xea\x9d\xaf\x5e\xf9\x1f\xf9\x3d\x3d\x93\x60\x01\xdd\x8b\x49\x32\xda\x8b\x4d\x14\x00\x49\xf0\xaf\xd7\x7b\x44\x91\xde\xf0\xa4\xa4\x9b\x49\xaf\xa7\x13\x75\xa7\xb4\xcf\xd3\x10\xdb\xf9\x43\x6d\xc7\x86\xb2\x4c\xbb\xe4\xce\xd7\xa5\xeb\x18\xe1\x21\x20\x5c\x3d\xc8\x27\x3d\x31\xa3\x26\xbb\x8b\xa6\xac\x2a\x04\xe1\xa5\x8e\x84\xa3\xdf\x90\x9a\xe1\xd1\x3c\xd8\xbe\xe8\x3b\x74\x90\xa0\x80\x31\x19\x8d\xdb\x58\x11\xe7\x86\xbb\xc1\xc9\xd4\x03\x72\x7b\xfe\xb1\x7a\xbd\x86\x70\x50\x0f\x63\x93\x24\x9b\x8d\xe6\x08\xb7\xb9\x6a\xad\x75\x41\x8b\xb8\x3c\xd3\x9a\x16\xef\xd1\xa4\x98\x01\x89\x4b\x66\x10\x27\x99\x55\x92\x07\x91\x8c\x91\xa6\xb6\x11\x95\xf4\xb6\xe0\x0f\x4f\x85\x15\xa7\x12\xe7\xf0\x41\x52\xd1\x34\xa1\xf3\x98\x4a\x32\x3b\x88\xf7\xd9\x90\x05\xd7\x05\xc1\x7a\xcf\x9a\x23\xce\x6c\x00\x96\xf8\xb1\x45\xbf\x4d\x54\xe2\x5d\x46\x1a\x29\x74\x8d\x79\x54\xee\x73\xdb\xaa\xb4\xd1\x07\x2d\x67\x48\x8a\x59\x04\x64\x8e\x2f\x3b\x00\x75\x24\xb5\x04\x21\x35\xae\x29\x22\x23\xbe\xd5\x33\xdd\xd2\xd2\x91\xa3\xec\x55\x99\x91\x2f\x7e\xf7\x2f\x80\xe2\xfa\x4d\x12\x87\x62\x5b\x94\xb8\xf5\x6d\x37\x33\xf7\xdc\x06\xfe\x75\xa0\x79\x54\x24\x72\xf9\x9c\x53\x98\xfa\x95\x12\x4d\x9e\x8a\x98\x26\xa1\x7b\x2c\xc9\xdf\x9a\x85\xd8\x52\xba\x25\x3f\xf4\x34\xc0\x67\xcd\x5d\xed\x44\x20\xb5\xc3\xc2\xea\x27\x59\x4c\xf9\x75\x31\x95\x9a\x9b\x1a\x19\xd3\x76\xc5\xd9\x4e\x7d\x21\xd6\x7e\x62\x15\x28\xc3\xf7\xfd\xbe\x91\x74\xb7\xa0\xdc\x24\x48\x03\x7e\x59\x12\x68\xaa\x69\x6a\x06\xd0\x7a\x90\x74\xbc\xcb\xcd\x59\xcc\x6a\xf4\x49\xdb\x19\x55\xa2\x01\x6a\xa9\xfd\x2b\x07\x55\xe6\xad\x86\xc3\xd9\xad\x81\x31\x54\x10\x98\x96\x61\x1e\x0a\xad\xe5\x14\x9c\xb8\x02\x14\x9e\x92\xb6\x03\x49\xf7\x58\xec\x0f\xd1\x77\x09\x20\x04\xf1\x95\x73\x15\xed\x0d\xac\xcc\x08\x7a\xac\xf7\xe1\x16\x68\xff\xaa\x2c\x64\x4f\xe2\xa0\x1d\x41\xf7\x8a\x31\x9d\xa8\xcd\xac\xb7\x55\x28\xf0\x6b\xc0\xeb\xd7\xa4\xaa\x3e\xee\x09\xf6\x5d\x88\xde\x82\x56\xcc\x57\xd8\x35\xaa\x23\xad\xf9\xda\x7d\x4a\x07\x07\x92\xc0\x03\x50\x7c\xd0\x0c\x8d\x99\x20\x5f\x76\x6a\xae\xaf\x6a\x50\x7e\x28\x5e\x72\xb5\xbe\x70\xed\x35\x16\x93\x57\x54\xc7\x19\x37\x2a\x66\xa2\xff\x02\x66\x96\x49\x4a\xd6\x5c\x36\xc8\xe4\x03\x49\x59\xca\x87\xe7\x92\xbf\x91\x0f\x86\x06\xab\x21\x3d\xc7\xc1\x14\xc0\xbf\x30\xcd\xdf\x6e\xac\x51\xfb\xc0\x06\x7b\x6b\xdf\x2e\x6a\x99\xda\x60\xa7\xb9\x56\xdb\x89\xae\xed\x55\x37\xca\xf8\xd5\xfa\x71\x8e\x6b\x90\xb0\x05\x81\x99\xca\xdb\x8a\x24\xdb\x05\xf5\xaa\x2f\x5f\x19\xa4\x44\x47\x7b\xed\xe8\xe8\xa9\x09\x1a\xea\x7a\xa5\x6d\xe5\x7d\x5f\x89\x03\x44\xf6\x45\x80\x76\x5c\xc7\x6a\x65\x3d\x0d\xd9\x1d\x22\x73\x7b\x4c\x6e\x27\xef\xee\x1a\x01\xd0\x6b\xd2\x63\x73\x8c\x12\x3b\xc9\x01\xe6\xdf\x85\xd1\x75\xbd\xed\x9b\xd0\xd0\x18\xcd\xcb\x84\x44\x0b\x7c\xeb\x59\x03\x74\xf9\x56\x73\x65\xcd\x59\x25\x5f\x84\x91\x87\x1b\xe9\x3c\xd0\x4a\x1d\x7e\xa4\x62\xc8\x8d\x5a\x4e\xb5\xc1\x4e\x6b\x13\x43\x88\x6e\xb1\x89\x78\x52\xb7\x3f\xa7\x88\x14\xb3\xd1\x25\x02\x84\x58\x8e\x74\xea\x39\xa4\x0e\x36\x48\xb7\x55\x8e\x9e\x54\x23\xb3\xd1\x5b\x34\x65\xcb\x55\x4e\xe4\xf3\xe3\x06\x49\x9a\xf8\x0b\x92\x14\xcd\xe8\x18\x81\xbc\x67\x74\x85\xcc\x1c\x8c\x3e\xa3\xba\x10\x6a\xf4\x1e\x59\xa9\xd0\xe8\x23\xf2\xe5\x2e\xa3\x5f\x91\xa7\xd4\xfd\x06\xc1\xa9\x3c\xba\x40\x86\xe9\x1f\xbd\x43\x86\xd5\x1d\x9d\x20\x9f\x83\x1a\x7d\xd0\xaf\xa3\x33\x94\x33\xb6\x2a\x47\x4f\x82\x89\x2c\x1f\x7d\x42\x05\x29\x65\x4f\x5f\x43\x04\x77\x6d\xaa\xe2\xa1\xb6\x9d\x06\x23\x01\x12\x74\x46\x22\x3f\xa6\xea\x46\x69\x81\x7e\x6c\x58\x09\xe8\x14\x49\x85\x60\x0a\x6b\xfd\x13\xfe\xd1\x33\x69\xf8\x49\x9b\x34\xcc\xb2\xdb\xfd\x65\xb6\xfa\x1f\xf4\xca\xd4\x62\xad\x20\x76\x3b\x09\xbc\xbe\x23\x5c\xd0\xa9\xd6\x61\xe5\x6d\xce\x2e\x42\x87\x80\x9e\xfd\x7e\x4b\x5c\xbd\xc8\x08\x1a\xba\x7f\xff\x4c\x1e\xfe\xde\xa5\xa5\x31\xac\x9c\x69\xe6\xc0\x1c\x2b\xa6\x5d\xc4\x30\xd5\xde\xf2\xe0\xd0\x48\xef\xb2\x1c\xcb\x93\x96\xce\xe3\xc6\x4d\x21\x4f\x20\xef\xe9\xec\x96\xc4\x0c\xa9\x72\x3c\x51\xc4\x51\x37\x8c\xac\xc5\xfd\xc8\x5a\x2d\xa5\xc6\xd9\x24\x51\x2a\x3a\xad\x2d\x15\x5e\x19\x55\xa2\x48\x10\xf3\x5a\x52\xad\x14\xed\xad\xe8\x12\xb2\x0d\x50\xa7\xa9\x4d\xa7\xcc\x53\xb6\xcc\x29\xcc\x0c\xcc\x85\x8d\x88\xec\x97\x24\xd9\xb4\x25\x48\x88\x9d\xc9\xf4\x3e\xcb\x3f\xeb\x38\x68\xae\x90\x60\xab\x92\x71\xd1\x2c\x27\x6b\x53\xb9\x95\x17\x53\x03\x3b\xc6\x7f\xe0\x4e\xb0\x09\x35\x3e\x55\xcc\x13\x09\x05\x85\x31\x15\x17\x0b\xff\x5d\x85\x21\x52\x29\x5f\x07\xb1\xad\xc0\xb5\xa4\x65\x49\x8b\xdb\xee\x67\xf2\x10\x39\x15\x0b\x89\x44\x07\x6b\xaf\x5b\xda\x45\x07\x07\x49\x2c\x9d\xc7\x5a\x6d\x68\x5c\x4c\x92\xf4\x33\x79\x08\xc8\xd0\x40\xf8\xa8\x47\xc5\xfb\x8a\x75\x18\xf3\x09\x7e\xa2\xb3\x2f\x23\x8e\x24\x0e\x21\xe8\x2e\xcb\x2d\x0f\x50\x89\xd1\xde\x10\xcd\xf3\xec\x56\xfe\x1b\x15\x8b\x4d\xeb\x5a\xd7\x84\xf0\xea\x0c\x5b\x90\xe9\x67\xf9\x2e\xbb\xe4\x06\x03\x43\xd9\x32\x0e\x31\x2e\x80\x86\x4e\xe9\xec\x8b\xf1\x77\x21\x82\x4e\xcb\x1e\xc3\x67\x44\x52\x49\x06\xec\x0d\xc2\xfe\x48\x08\x69\x42\x02\x27\x25\x11\x5e\x48\x37\x81\x07\x86\xb0\x6f\x06\x76\x84\x89\x11\x93\x0e\x97\x0d\x68\x09\xd2\x1d\x2d\xa9\x88\x39\x8a\x22\xed\x40\x19\x60\xcb\x5b\x79\x54\x87\x4a\x18\x7d\xf3\x06\x94\xe8\xf5\x69\x91\x39\x4c\x1f\xa6\x39\xe9\xce\x88\x80\xb0\x84\x10\x36\xab\x1f\x75\x5f\xee\xcb\x07\xd8\xc7\x03\x08\x98\x6c\x28\x9b\x5d\xd1\x57\x35\x67\x32\x26\x63\x3e\x99\xfc\xb7\x5a\x84\x7e\xba\xe6\x37\x86\xd7\xd1\x33\x89\xbc\x59\x21\x96\x52\x95\x9b\xa2\xa6\x75\x5e\xe0\xb6\x56\xb4\x83\xc7\xda\x4c\xca\xe2\xe1\x69\x51\xf4\xb1\xe9\x0f\x98\xf5\xd8\xae\x9b\x08\x00\x6e\xbe\xa1\x63\x0d\xd2\xd7\x8f\x70\x63\xf6\xb2\xd7\x4b\x93\xa4\xd6\xd0\x26\xb6\xb9\x1e\xd2\xd3\x4b\x5e\x06\xce\x86\x52\xb9\x3d\xb0\xe4\xd0\xfc\xbe\xc0\xbc\x6c\xbf\x1e\x86\x4e\x21\xeb\x05\x00\x2e\x86\xbc\x6e\x40\xeb\xfa\xb2\x59\xed\x84\x43\x8b\xea\x8d\x14\x69\xb0\xe6\x3a\x4a\x21\x68\x3c\xe1\x81\xaf\x0b\x3a\x66\x13\x65\x00\x20\x3b\x97\x4c\x59\x21\x68\x51\x11\x97\x84\xf7\x06\x48\xdb\xb0\xb0\x04\x09\x8c\x71\x06\x5b\x54\x31\x39\xba\xe5\xff\xcb\xcc\xa2\x56\xe5\xe2\x5d\x31\x65\x4b\x5a\xdc\xc6\x5a\x07\xb9\x6b\x14\xa8\xa8\xcd\x5c\x5b\x0e\xbf\xd4\x16\xde\xda\x9b\x0b\xc7\xa9\xed\x0f\x0f\xf9\x2b\x09\xd1\xfb\xfb\x41\x10\x61\x8d\xde\xa0\xff\xeb\xb5\x76\x41\x54\xd4\x5b\xad\x9d\x1f\xb5\x20\xc5\x3b\xdc\x51\xbb\xdd\xd2\x11\x31\x95\xb3\x81\xc0\xfb\x90\xd5\x27\x2e\xbe\xed\xb4\x68\x43\xfd\xad\x91\xaf\xc6\x5e\xb1\x7e\x7f\x82\x07\x6b\x52\x9b\xc0\x30\xf2\x95\xae\x57\x9d\x02\xe3\xfd\x7d\xaf\xb8\x0e\xe3\xa5\x49\x30\xdf\x7a\xf4\x7f\x8e\x0c\xbb\xe7\xd9\xea\x03\xc4\x38\xbc\xac\xea\x1e\xfd\xc0\x05\xdd\x22\x2b\x63\x62\xd5\x4b\xa9\x51\x9f\xb7\x33\xc7\x3d\x47\xe4\xdc\x0d\x1b\x87\xb1\xd9\xbc\x09\x41\x10\xa0\x58\xf0\x6a\x2a\x18\x1f\xe9\xde\x70\x44\x8a\x6a\xa9\x49\xf0\xbd\x21\xba\xe7\x54\xa8\xe7\x01\x9a\xb2\x62\x4e\x6f\x2b\xfd\x6d\xb0\xd9\x48\x68\x55\x5a\xf9\x3c\x41\x12\x99\x2b\x94\x3d\x95\x0c\xc6\x9b\x2c\xcf\xdf\x84\x18\x3b\x79\x52\xc1\x2d\x8b\x05\xe1\x54\x94\x10\x5a\x13\x87\x5a\xde\x83\x0e\xd9\xda\x75\xeb\x85\x07\xfc\xdb\xf1\xaf\x0c\x84\x7c\xad\xeb\x4e\x11\x48\x68\xe1\x27\x04\xea\xb9\x25\x33\x13\x24\xf1\x8c\x4a\x5e\x24\x6f\xf4\x53\x1e\xc7\xeb\x75\xec\x3c\x51\x0c\x9c\xdf\x2c\x92\xf2\xec\x1e\x0b\x44\xbc\x50\x32\x72\x3a\x1a\x42\x26\xd5\xbc\xe8\xf5\x58\xb0\x26\xc2\x38\x6b\xe2\xf0\xc5\xf9\xf6\xeb\x12\x17\xae\xfa\x6a\x41\xcb\x77\x36\x82\xf3\x0c\x02\x48\xaf\x58\x59\xd2\x9b\x9c\xbc\x71\x53\x71\x01\x05\x71\x29\x0f\x76\x98\xc9\x13\xa2\x3e\x55\x92\x6e\x6d\x44\x4f\x1b\xb8\x2e\x37\x41\xb0\x69\x83\xab\xc8\x28\x8a\xb9\xa6\xc2\xad\x3c\x5e\xb9\x81\x4b\x52\x6f\x51\x3a\x02\x5f\x90\x79\x0e\x8b\x69\x52\x63\xea\x6e\x18\x91\x95\xc5\x4b\xc2\xbe\xed\x12\xd9\xcc\x42\x69\xc2\xf6\x6f\x5c\x6f\xb7\x85\x6d\x6d\xb9\xbe\x18\xd4\x9c\x26\xe3\x30\xce\xca\x7a\xad\xaf\xac\xc6\x3a\xe0\x0a\xd5\xb5\x4e\x60\x13\xd6\x5d\x6a\xae\xd7\x71\x1d\x30\x14\x15\xaa\x09\xad\x36\x26\xc1\x92\x91\x15\x14\x08\x43\x38\xfa\x24\xb8\xb2\xd2\x35\x26\x1a\x1a\xd2\xbe\x47\xfb\xc3\xa4\x13\x9d\x9b\x70\xd8\x12\x4c\x88\x3f\xd3\xda\x61\x8a\x97\x02\xf6\x83\xb0\x42\xd1\xfb\x6c\x05\x65\xd6\xeb\xe8\x92\xa8\xe2\x49\xe0\x2d\x74\xce\xd9\x32\xe6\x2a\xb3\xf1\x47\x5a\xea\x22\xcf\xfe\x2b\x3e\x1a\x7d\xa2\xeb\x77\x49\x21\xe2\xa3\xd1\xf7\xeb\xe1\x77\xeb\xe7\x07\x49\x7c\x34\x7a\x93\x67\xcb\x15\x99\x25\x47\x50\xc9\x1f\x9e\x29\x03\x5d\x9e\x84\x23\xdd\x48\xec\x95\x6c\xb7\x53\x7f\x65\x8f\x92\xa3\xa7\x19\x2b\x60\x9b\x8e\xf4\xd3\x50\xfb\xaf\x23\x63\xd1\xef\x4f\x36\x9b\x4e\xab\x3a\xd5\x3b\xed\xc1\x47\xdb\x48\x74\x05\xeb\xaa\xf5\x23\xdd\x82\x15\xfb\x54\x4b\x16\xba\xe6\xc6\x26\xfd\xe5\x97\xe2\x9d\xe7\x29\xf9\x86\x74\x4d\x1e\x04\x25\x32\x39\x1e\xed\x11\xbb\x54\x7a\x73\x8b\xec\x8e\x74\xb3\x6e\x03\x3e\xe2\x44\x5b\x58\xa4\x91\x91\x8b\x4b\x04\xd1\x92\x2f\x01\x21\x8e\x56\xec\xd4\xfa\x96\xc2\x00\x80\x0a\x0d\xa6\x60\xe0\x7c\x8e\x2c\x60\xdc\x86\xe9\x05\x6e\x44\x44\xd7\xfb\xab\xd7\x6b\x51\x45\x6f\xec\x3d\x64\xed\xac\x3a\xbe\xed\x7c\xed\x74\x3f\xe4\x2e\x00\x8b\x3d\xd9\x0b\x2c\x39\x86\x4e\x91\xba\x73\x02\xfb\x2f\xeb\xf5\xde\x10\x15\xa9\x8f\x70\x25\x75\x14\xc1\x02\x46\xb4\xe8\x16\xe0\x47\xd1\x20\x67\xbc\x37\x48\xd0\xb6\xe3\xb2\x00\xb2\xa1\xf0\x2d\xfc\xb3\x20\x38\xaf\x6f\x50\xee\xb9\x58\xad\xcf\x8d\xb0\xb1\xf0\xc5\x7a\xdd\x16\x88\xeb\x48\x8c\x48\x60\x4e\x2e\x2b\xd3\x07\x8e\x64\x58\x5e\x59\x26\x41\x3b\x9a\xd4\x6f\x1e\x0b\xe6\xa9\xf7\x24\x9a\x09\xb3\x6a\x3d\x13\xe5\xe6\xd1\x1c\xce\x1b\x9f\xb0\x78\x06\xa6\x8f\xa1\xbf\x0a\x2d\xfe\x70\xb1\xf8\xf6\x69\x21\x08\x2f\xb2\xbc\x7c\x46\x8a\x3b\xca\x59\xa1\xdc\x8a\x44\x05\x9b\x91\xfd\xa5\x26\x28\x5a\x72\x57\x82\xe6\x65\xeb\x17\x49\xc4\x66\x14\x5c\x65\x98\xaf\x14\xa0\x43\xd6\x0c\x0e\x1f\x5a\x8b\x2d\x89\xc8\xb6\x7e\xc8\xdd\x97\x69\x56\x64\xfc\x61\x7f\x4e\x32\x51\x71\xe2\x75\x01\xe2\x1c\x46\x28\xf0\xd5\xd1\xde\xbd\x92\xf9\x83\x92\xfd\xe5\x2c\xcf\xfd\xfc\x2e\xed\x59\x4e\x6f\xbc\xd7\xeb\x25\xfd\x42\xbd\x01\x68\x24\xec\xde\x09\xbf\xa3\x53\xaf\x76\x0d\x31\xb5\xf7\x67\x53\xb6\x5c\x65\xed\xc9\x95\x20\xb3\xd6\x9e\xf3\xaa\x10\x74\xd9\xbe\x1c\xda\x2d\xb6\x71\x49\xf2\x4c\x3b\x7b\x6f\xcd\x7b\x47\xc9\x7d\xfb\xd2\x71\x56\x89\x60\x38\x3e\x78\x7c\x11\xa4\x90\x75\xee\x97\xd5\x4a\xc2\x93\xcb\xa5\x42\x3c\xdb\x57\x5e\x15\x39\x63\xab\xf6\x5a\x64\xd6\x7d\x08\xb7\xbc\xad\x21\x70\x19\xe7\xbe\x78\xde\xed\x5b\x13\x9f\x29\xd3\xe1\x72\x5f\xbb\x2c\x69\x2f\xfa\xcc\xa0\x66\xaf\xd7\xc5\x2d\x2d\x1a\xef\x2d\x19\x5d\xbc\x4a\x0f\xd6\x74\x40\xb3\x59\x0b\x20\xca\x45\x64\x05\x29\xc4\x33\xa1\xe9\xbd\x7d\x56\xe4\x0f\x32\x83\xf1\x5e\x6e\x96\xb2\xe6\x33\xc6\x58\x0b\xc2\x3d\x53\x85\x72\x34\x45\x73\x34\x43\x0b\xb4\x42\x4b\x74\x87\x1e\xd0\x0d\xba\x45\xd7\xe8\x1e\x9d\xa2\x4b\x74\x8e\xbe\xa0\x63\x74\x85\x3e\xa3\xf7\xe8\x23\xfa\x15\xbd\x41\x17\xe8\x1d\x3a\x41\x1f\xd0\x19\x7a\xfb\x3f\x22\xbd\x7d\x6c\x1e\x0e\x5c\xe2\x63\x21\x8f\x1d\xba\x04\x24\x93\x9e\xca\x39\xe8\xf5\xb6\x7c\x58\xaf\x9f\x36\x9d\xc7\x94\x96\x1f\x8c\x47\x34\x89\xc3\x1f\x77\x38\x16\x89\xa0\x5c\xb4\xd9\x82\xcb\x1f\x51\x74\xfa\xe1\xa7\x08\x3d\xdd\x12\x31\x02\xe5\x9a\xd3\x0f\x3f\x85\xac\xc6\x66\xdb\x39\xf0\x88\xa2\x9c\xb1\xcf\xd5\xca\x2f\x7e\x06\x29\xa8\x84\xf7\xd2\xbe\xd7\x6b\xfc\x90\x9e\xbe\x7f\x7d\x7a\x71\x7d\xfa\x7f\xae\x4e\x3f\x9c\x5c\x7f\xbc\x38\xbf\x3a\xbf\xfa\xf9\xe3\xe9\x65\xaf\xb7\xbd\xa3\xf5\xbc\x11\x7a\x0a\x99\xa2\xf6\xab\x00\x9e\x9e\x7e\xf8\x29\x6d\x94\x96\xbc\xc6\xa3\xec\xf2\xb9\xdc\x31\xf8\xbd\x7d\x44\x8f\xb2\xe3\x26\xb5\x74\xa9\xc7\x6e\x43\xe0\x8f\x66\x85\xc3\x74\x7b\xd9\xf5\xc6\x7e\xdf\x3a\x9e\x0b\xbb\xe3\x9e\xda\x3b\xfe\xab\xa9\x63\xb3\x6b\x0d\x4e\x54\x9e\xaf\xd6\xf6\x98\x9a\x2c\x6a\xe4\xa7\xb0\x61\xf1\x85\x37\x10\x95\x64\xc7\xf0\xce\xfb\x94\x95\x25\xbd\x2d\xf0\x89\x7e\x40\x8f\xe9\x92\xf0\x5b\x82\x4f\xd4\x3f\xcc\x64\x01\x34\xdd\x0f\x15\x9d\x81\x0d\xb8\x7b\x45\x8f\xe9\x0f\x9f\xde\x9d\x5c\xff\xe7\xe9\xcf\x98\xda\x47\x59\xa6\xa2\xb3\xb7\x8c\xcb\xec\xea\x09\x3d\xa6\xb4\x28\x57\x64\x2a\x19\x0e\xfd\x24\xdb\xca\x3e\x13\x15\x22\x9a\xba\x67\xf4\x98\x4e\xb3\xe2\x9d\xb2\xce\xa6\xee\x59\xee\x07\xfe\x60\xd3\xed\x33\x7a\x04\x66\x1e\x53\xf8\x43\x8f\x69\xa5\x7a\x5a\xa9\x1e\xbe\x31\x07\x2f\x66\xee\x19\xc9\x59\xbb\xa5\xa5\xe0\x0f\x98\xd9\x47\x35\x1f\x84\x0b\x3c\xd5\x0f\xb2\xee\x8c\x17\x78\x0a\x7f\xe8\x51\x85\x0d\xc6\x53\xf5\x0f\xef\x1a\xe5\x41\x9a\x7e\xee\x78\xe9\x6f\xab\x62\xea\x7f\x93\xef\xe8\x51\x05\x87\x3c\xd1\x95\xb9\x17\xb9\x58\x60\x4e\x7e\xec\xad\x91\xca\xf6\xc4\x75\xe8\x87\x13\x5d\x15\x65\x85\x0a\xaf\xcf\x47\xd3\x74\xfb\x47\x64\x3e\xfd\x2d\xe3\x2d\x05\xbc\x54\x44\xcb\x37\xfa\xa4\x1d\x55\xa9\x7b\xd9\xa8\xd5\xd3\xb4\x0a\xce\xbc\x17\xb9\xa7\xaa\x9b\x72\xca\xe9\x0d\xc1\x99\x7b\x46\x8f\xe9\xbb\x90\xba\xc1\x4f\xae\xd4\x28\xa8\xc2\x16\x1a\xf9\x15\x54\x85\x9f\xee\xbd\x21\x90\x93\x8e\x32\x25\x2f\xdd\xa8\xb9\xc4\x57\xe9\xb5\x3e\xf1\x2e\xaa\x42\xa5\xa5\x8e\xe4\xc1\x57\xde\x8b\xf9\x0a\xf6\x50\x57\xea\xdf\xa4\xd1\x62\x26\x93\x68\x31\xd3\x29\x5a\xd9\xf2\x4a\x3f\xe8\x54\xab\xd9\x7b\x65\x1f\xf5\x17\x02\x15\x10\x5b\x7e\x91\x95\x97\xfa\x2a\xd5\xa8\x7e\x5c\xb5\x24\xea\xdc\xa0\x80\x76\x05\x7f\x3a\x45\x69\x40\x5d\xa9\x7f\x9d\x26\xf9\x19\x7c\xa5\xee\xa6\x55\x0a\x53\x7d\x61\xae\x1f\xd6\xa2\xe2\xca\x3e\xd6\xbe\x9c\xab\x32\xfe\xab\xce\x61\x95\xb9\xaf\xec\x63\x30\x1b\x76\x1c\xfe\xeb\x36\x44\x26\xcb\xa1\x48\x6b\x03\x5c\x54\xc5\x19\xd0\x40\x80\xcb\xae\x24\x6a\x7e\x13\x7c\xa9\x1f\x28\x70\xc0\x7e\xc2\x95\x5d\x5d\x03\x93\x92\x65\x7e\x4c\x0d\x61\x88\x3f\xa1\xc7\xf4\x7a\x46\x24\x84\xac\x04\xe3\xb8\x4a\x0b\x90\xed\x9d\x90\x72\x7a\x42\xa6\x0c\x98\x41\x99\x47\x07\x11\xc6\x95\x09\x27\x8c\x3e\xa5\x59\x4e\xb3\x12\x57\xea\x1f\xb0\xcf\x74\x41\xde\x42\x2d\xb2\x83\xf2\x6d\xf6\x93\x8e\x3e\x0d\x08\x45\x35\x6a\xc6\x88\xab\x46\x92\x6c\xa9\x24\x02\x24\x51\xd4\x75\x00\x57\x69\x4b\x2a\xe0\x5c\x91\xe1\x12\xfe\xd4\xd9\xa5\x9a\x56\xcf\x7f\xa3\x62\xa1\x0f\x03\x95\xec\x25\xc8\x86\x24\xaf\x9a\x89\x05\x4c\x92\x7a\x54\x27\x9d\x6a\x4d\x61\xcd\x4b\x78\x55\x0f\xe8\x31\x7d\x7b\x7a\x7c\xf5\xe9\xe2\xf4\x12\xc7\x03\x64\x50\x7f\x12\x3f\xd1\xf2\x14\xa2\x54\xcd\x46\x79\x6a\x9f\x37\x28\xb7\xf9\xe5\xf9\x72\xad\x22\x5e\xd2\x14\xfe\xd1\x63\xca\x0a\x5c\xa5\x4c\x02\x6c\x36\x9b\x9d\x49\xa4\x22\x77\x5c\xe5\xbf\x49\xf0\x01\xf7\xad\xde\xe7\x30\x01\xba\x5c\xcc\x4e\xef\x24\x86\xa9\xdc\x33\x7a\x94\xbb\xc5\xe4\x92\xab\xe4\xbf\x22\xa0\x99\x58\x41\x70\xa5\x1f\x20\x45\x89\xda\x2a\xf3\x04\x69\xaf\xf3\xac\xf8\x0c\x69\xf0\x04\x69\x1f\x25\x0a\x81\xf6\xec\x33\x7a\x4c\x0b\x26\xe8\xfc\xc1\x2c\xa5\x0e\x17\x5e\xb5\x26\xa3\x47\x85\x3e\xc2\x54\xd9\xcb\xb6\x64\xf4\x28\x11\x43\x33\x6f\x33\x51\x02\x21\x3c\xe9\x74\x0a\xf9\xea\x49\xe8\x31\xb5\x16\xa1\x4f\xe1\xbe\x1b\xed\x0d\xd0\x22\x2b\xcd\xeb\xf1\x74\x4a\xca\x92\xf1\x52\x92\xb1\x70\x6a\xf9\x99\x71\x55\x4b\x80\x1c\xa5\xe0\xec\x01\xbf\x35\x4f\xe8\x31\x55\x11\xc4\x54\x5f\xec\xb3\x82\xd1\xa0\x9f\xc1\xbb\x82\xc5\xe0\x7b\x59\xfb\x4e\xbe\xac\x32\x3b\x05\x2a\x4b\x3d\x49\x01\x97\x71\x89\xa8\x80\xcb\xbc\x59\xe0\xf2\x3e\x87\x09\xb2\xb4\xdc\xdb\xca\xed\x9c\xd9\xe9\xea\x4d\x02\xb0\x2b\xc7\x5c\x09\x60\x69\x71\xa5\xfe\xd1\x63\xfa\x5e\xbf\xc3\xff\x76\xb2\x8d\x15\x9a\xef\x03\x14\x07\x41\x29\xcf\x55\x12\x10\xcf\x10\x7e\xd2\x24\x7c\x33\x3d\x2e\x48\xa9\x38\x50\xa8\x74\x9a\xd2\xf2\x4a\xa5\x40\x9d\x53\x50\xe0\xd2\x09\xf5\x3a\x1f\xd3\xeb\xd7\xee\x1c\x9c\x5b\xb2\xe2\x43\x7a\x76\xfe\xc3\x0f\xa7\x17\xbd\x5e\xfc\x98\x9e\x31\x50\xcc\x9c\x99\xaf\xb2\xd8\x31\xbe\x4e\x8f\xd1\x63\xaa\x39\x90\xa7\x9c\x4d\x47\xcb\x34\x67\x53\x74\x3f\x5a\xa6\xf7\x68\x96\x95\x0b\xc2\xe9\x23\x19\x2d\x53\xfb\x8c\x66\x64\x9a\x2d\x49\xae\x93\xed\x0b\xf2\x52\x5d\x1a\x20\xc2\xf9\x83\x4c\xd3\x8f\xa8\x2a\x66\x84\x97\x53\xc6\x65\x4e\xf7\x82\xa6\xd9\x8a\x8a\xcc\xd6\x60\x5e\x24\x30\xab\x59\xc3\xd7\xfa\x41\x8e\xd8\x10\x74\x1f\x39\xfb\xf2\xa0\x16\xee\x3a\x6d\x26\x02\x36\x33\x24\x61\x90\xb7\x25\x15\xa9\xe3\x26\xe3\x04\x5f\x9b\x27\x48\x5b\x3d\x40\xc2\x4a\xe1\x99\xd3\xdf\xaa\x2c\xc7\xd7\xe6\x09\x48\x27\xe8\x5f\xe0\xa7\xc3\xa4\xa6\x5a\x32\x82\xef\x74\x82\xfb\xe2\xa4\x2b\x78\xe1\x3e\x2a\x6a\xf9\x3a\x35\x94\xf2\x1b\xe8\x08\x48\xf6\xae\xbd\x17\x20\xfa\xad\xbc\xf0\xda\x7b\x31\x75\xc0\xc0\x4c\x45\xf0\x62\xa7\xd2\x7c\xf2\xde\x64\xa9\xa9\x47\x54\xca\x82\xfe\x3b\xf4\x84\x13\xbb\x14\xee\x05\x3d\xa6\xea\x9a\xcd\xf4\xdc\x7b\x83\x52\xab\x07\xdb\x7b\xf5\x28\xf7\x5a\x05\xc2\xca\x60\x08\x8d\x34\x97\xcf\x54\xed\xbf\xa2\xc7\x54\x79\x9d\x54\xfd\xbc\x54\xd2\x19\x7c\xdd\x96\x2a\x67\x4b\x1e\x36\x64\x26\xa7\x4a\x3d\xa1\xc7\x54\x7b\x7d\x0d\x00\xa3\x91\x06\xb3\x26\x57\x51\x77\xd3\xbd\xc8\x93\x17\xc4\xc7\xf8\x5a\x3f\x00\x80\x98\xce\xea\xa7\x56\x00\x66\xc5\x19\xcb\x66\xf8\xa3\x7e\x50\xd4\x97\x7c\xfa\x91\xb1\xcf\x25\xfe\x18\xbc\x6a\x1e\xc7\xc2\x8a\x63\x1c\x5c\xb2\xea\xfe\xca\xfb\x76\x69\x01\xcf\xa5\x5d\x07\x43\xbd\x0e\x06\x79\x71\xf9\xd3\x47\xb9\x89\x2e\x7f\xfa\x08\x4b\x6a\xe4\x14\xd7\xee\x59\xd6\xa0\xc3\xd5\x3f\xa4\xea\x41\x91\x65\x2b\x52\xcc\x48\x21\xfe\x93\x3c\x00\x84\x0a\x7c\x93\x36\x13\xd1\xa7\x94\xc0\xb9\x7d\xab\xfe\xd1\x27\x79\xe4\x9e\xea\x24\xf3\x08\xa9\x05\x81\x94\x82\xa8\x3c\xea\x33\xfa\x94\xde\x30\x96\xe3\x5b\xf8\x43\x9f\xd2\x65\x26\xa6\x0b\x7c\xab\xfe\x65\xed\xb0\x33\x6f\xd5\x3f\xfa\x94\xde\xca\x82\xb7\x02\x9e\x08\x3c\xca\xfa\x72\x99\x9a\x0b\x78\x22\xf0\x28\x53\x59\x41\xfe\x96\xc9\x7e\xa8\x07\xf4\x29\xe5\x24\x9b\x95\xf5\x84\xf3\x22\x97\x99\xcc\x23\xfa\x64\xf9\x3e\x5a\xdc\x1e\x03\x99\x79\xdb\x48\x92\x14\x68\x31\xc3\xb7\xf2\x57\x36\xc5\x65\xad\x1c\x7d\x4a\xcb\x6a\x89\x6f\xe5\xaf\x1c\x0c\x2d\xe4\x50\x68\x01\x03\xfb\x02\xc3\xfa\x02\xcf\x2b\x78\x5e\xc9\xfc\x12\xc0\x6f\xe1\x4f\xbe\x11\x71\x42\xe7\x73\x99\xa0\x9e\x54\xee\xd7\x0f\x2a\xff\x6b\xd9\xbb\x39\xcd\x25\x7b\x71\xab\x1f\x6c\x0a\x64\x32\x8f\xe8\x53\x5a\x15\xf4\x37\x7c\x0b\x7f\xfa\x0d\x72\xa8\x07\x95\xc2\x0a\x95\xc0\x64\x0f\x41\x6c\x59\x4a\xa0\xbe\x75\xcf\xe8\x53\x3a\x95\xc0\x08\xa9\xfa\x69\xfb\x91\x77\x79\x75\xf1\xee\xc3\x0f\x97\x11\x5c\x36\x7b\x77\xc9\x4a\x1a\xb4\x04\x5a\x57\x1d\x4d\x25\x1c\x82\x4b\xa0\xb8\x75\xca\xae\xb3\xf4\xf5\xf9\xf9\xd5\xe9\x49\x4b\xbd\x4d\x99\x53\xe5\x4b\xe4\x2e\x49\xc6\xa7\x8b\x13\x5a\x02\x55\x0c\x6d\x02\x29\xb3\x25\x03\x1c\xbd\x6f\x8c\xcc\x13\xdf\xbb\x67\x74\x9f\xaa\x4b\xd3\x74\xa1\x82\x09\xde\xeb\x07\xf4\xa8\x3f\x60\x93\x43\x56\xb1\x20\xd3\xcf\x37\xec\x8b\xac\x41\x3f\x4a\xd4\x46\xbe\x88\xb7\x94\xe4\x33\x7c\xef\x9e\x75\xfa\x31\x27\x99\x4e\x96\x8f\xe8\x31\x3d\xa3\xc5\x67\xbf\x2b\xc1\xbb\xe1\x55\xcc\xfb\xfb\xac\xc8\x6e\xa1\x0f\x2d\xa9\x32\xf3\xb4\x96\xf6\x26\x5b\x65\x37\x34\xa7\x40\xba\xdd\xcb\xc3\xd9\xbe\xea\xba\xdf\xb3\x19\x9d\x53\xc2\x83\xaa\x6b\x89\x32\xeb\x32\x4c\xaa\x55\x6c\xbe\xbe\xa9\x35\x70\xeb\x75\xd3\xa8\x12\xe0\xfb\xb4\x2d\xb9\x3e\x56\x2f\x7b\x5b\x32\x30\x8c\xfa\x59\xee\x67\x37\x87\x67\x3e\xd6\x9c\x66\x2b\x51\x71\x72\x21\x11\x1a\xbf\xe2\x84\xe0\x69\xda\x48\x93\x8b\x0b\x67\xe5\x4d\xc6\x4b\xfc\x64\xaa\x1d\xdd\xa7\xe6\x11\x7d\x12\x34\x2f\x47\x4f\xa4\x9c\x66\x2b\x72\xfa\x65\xc5\x49\x59\x52\x56\x8c\xee\xd3\x7a\xd2\x46\x52\x10\x3f\x5e\xbd\x3f\x7b\xbd\xad\xb2\x0d\xda\x22\x1e\xd5\xf4\x5c\xaf\x17\xeb\x0b\x6f\x77\x07\xbe\x10\xcb\xfc\x32\x9b\x93\xa6\xb4\x39\x1e\xa0\x7b\xfb\x39\x51\xfa\x06\x00\xe0\xba\x0e\x5b\xd2\xe5\x72\x1f\x69\x09\x51\x21\xd4\x67\xf7\xb2\x7d\x87\x5e\x9d\xbe\xff\x78\x76\x7c\x05\x82\x60\xb9\x0d\x61\x2d\xcd\x9a\xa8\xdd\x7e\xaf\x48\x5e\x93\xb4\x73\x2b\x43\x47\x7f\x3a\xbd\xb8\x7c\x77\xfe\x01\x9f\x7a\x04\xf0\xff\xfe\xeb\xa7\xd3\x8b\x9f\xaf\xdf\x7d\xb8\x3a\xfd\x41\x45\x57\xee\xf5\xf6\x2e\xd3\x5f\xff\x5a\x11\xfe\x60\xf6\xf1\x0e\xc1\xf5\x1f\xb6\xca\x64\x4d\x25\x9b\xba\x22\x4c\xd0\xb3\x81\xea\x19\x25\xf7\xb0\xf2\xf8\x89\x96\x97\x10\xcb\xf3\x4d\x4e\xa7\x9f\x47\x97\x69\xf0\x2e\x31\x92\x8e\x90\x20\x8b\x8c\x2e\xd3\x30\x41\x7e\x97\xff\x3a\x49\x7d\xf7\x12\xcc\xf7\xd7\xac\x2a\x66\xa5\xfb\xac\xde\xcd\xd7\x37\x39\x25\x85\xb8\x20\x53\xe1\x65\xf1\x12\x83\x5a\x68\x71\xeb\x3e\xd5\x6a\x0c\xbe\xc9\x52\x17\x8c\xc1\x57\x5d\xaf\x7d\x95\xdf\x20\xcc\x80\xf7\xd1\xbd\x23\x5a\x5e\x12\x0e\x8a\x37\x20\x46\x7c\x4b\x79\x09\x9e\xef\x47\x12\x96\xda\x3f\x6d\x34\x22\x34\x34\xdf\xa5\xff\xe6\x63\x65\x75\x89\x81\x2f\xeb\x29\x86\x1e\x3c\xa1\xe5\x4a\x12\x0f\x84\xe3\xcb\x7a\x8a\x44\xab\x4c\x5f\x1a\x9c\xdb\x47\x49\x27\x57\x82\x79\x5f\xfc\x57\xc0\x01\xe5\xc2\xfb\xea\xbf\xca\xaf\xb4\x14\x8c\x3f\xf8\x19\xc2\x14\x49\x7a\xb1\x82\x78\x19\xfc\x57\x60\x47\x0c\xc9\xf7\x96\x71\x7c\x1e\xbe\x7b\xd2\x7c\x47\x1a\xbe\xcd\xa6\xb2\x05\x7c\xbe\xfd\x5b\x6b\xb9\xd6\x02\x92\x50\x64\x95\x20\xfc\xe4\xf2\x0c\x9f\xbb\x67\x9b\x6e\x13\x4d\x8a\x49\x40\xf1\x00\x85\x74\x6d\x12\xab\x4b\x2e\xff\x1e\x26\x42\x1f\x7d\x1e\xf5\x24\x13\xd9\xf1\x2c\x5b\xc9\x8a\xbf\xf8\x6f\xbe\xdc\x1f\xc4\xe7\x2e\x57\x6b\xba\xb2\xd7\x59\x64\xb2\x51\xa5\x7f\x68\x2f\x29\xe5\x71\x47\x73\xc2\xa3\xa4\xd7\x83\x5c\xa6\xfd\x1d\x39\xdb\xaa\x53\x1c\x7c\xa2\xb4\x3a\x5e\xe3\x2d\x55\xe9\x5c\x1d\x09\xc1\xa5\xc0\xaf\xe1\x0f\xa9\xb7\xd4\x0c\xe2\x75\xea\x86\x09\x1f\xfe\xfa\xa9\xa0\xc2\x7d\xf5\x5f\x95\xfc\xa5\x5a\xbd\x65\x5c\x8b\x08\xf0\xeb\x7a\xca\x66\xeb\xdc\x6b\x83\x90\x1f\xf1\xa3\x67\x7d\xf0\x23\x2a\xd2\x77\x97\xd7\x1f\xce\x4f\x4e\x8f\x8a\x54\x69\x43\xa4\x5a\x9b\x02\x3f\x8e\xdc\x1d\xa7\x4e\x53\x77\x9c\xb8\x2d\x1d\x3f\x06\xba\x19\xf6\x7e\xfe\x5f\x65\x7d\xe3\x12\xa2\xe7\xe9\xc1\x20\xfd\x73\xa4\xfb\xe3\x29\x7a\x34\x35\x46\xfe\xc9\x7d\xd2\xea\x27\x98\xe8\xb9\xc4\xc4\x4c\x6f\x60\x24\x04\x3e\x3b\x1b\x57\xcd\xaa\x48\xab\x1a\x92\x5e\x19\x5d\x7d\xc7\xd5\x5a\x20\xdb\x94\xf0\xda\xe7\xa8\x38\x8a\xdd\x17\xac\x1e\xfc\x0c\x38\xac\x32\x19\xf9\xd9\x75\x24\x4f\x97\x59\x99\x3f\xaa\xf9\xe4\x72\x8f\xef\x73\x32\x65\xb7\x05\x7d\x0c\x03\xc6\xfc\x2b\x0c\xac\x02\xd5\xd6\x50\x89\x57\x1b\x2d\x82\xfa\x91\xa7\x57\x7a\x7d\xad\x6b\x40\x3a\x9c\xae\x4c\x42\x64\x53\x0f\xb0\xa6\xd4\x4b\x9d\x49\x8d\xf6\xa7\xb8\xd4\x07\x87\x8e\x1c\x20\xeb\xb8\x95\x94\x26\x87\xe8\x0b\x9e\xde\xe1\x76\x2d\x7b\x53\xa6\x43\xe7\x31\xe8\x0e\xdc\xd3\x3c\x3f\x9e\xcd\x00\x5f\x82\x5f\xdf\x30\x29\xf6\x1b\x36\xbe\xd3\x89\x71\x82\x67\xd2\xb3\xd9\xcc\x33\x56\x80\xb0\x72\x4f\xc6\x1c\xde\xd9\xc0\xb7\xb8\x42\xf6\xf4\xf1\x8a\xae\xb5\x21\xa3\x45\x57\x2c\x88\x55\x30\xec\xae\xb2\xb2\x54\xde\x92\xff\x2e\xd8\xdf\x23\x6d\x80\xea\x35\xae\x63\x0c\xb9\x1e\xa0\xda\x14\x25\x9b\x8d\xb6\x42\x6b\x5a\xc1\x30\x15\x6c\xd2\xba\x7c\x90\x75\x71\x52\xb8\x14\x35\x6a\x4c\x36\x35\x45\x3b\xcf\x93\x83\xad\x95\xa2\xcc\x04\x16\x20\x7d\x70\x8d\xba\x97\x25\x5e\x78\x31\x15\x24\x9b\x27\x9d\x2c\x66\xfa\xb1\xa6\x1a\xd7\x08\x6c\xde\x0c\xec\xd1\x4f\x8a\x3e\x86\xe0\xe0\x9e\xd5\x86\xb6\xc3\x7e\x92\x49\x23\x81\x05\xdc\x7b\x0a\x1e\x17\x09\x5a\xe8\x1b\x5a\xbe\xe9\x10\x63\xe1\xb0\xa1\x3b\x4c\xfd\x82\xa9\x81\xe8\xd1\x1b\x54\xcb\x5f\x0f\x66\xe9\xbb\x51\xc8\x40\x93\x8e\xc6\xc6\x54\xd8\x4c\xa9\xac\x29\xd3\x01\xc6\xe5\x0c\x66\x10\xd7\xb6\xd7\x2b\x0c\x16\x3f\x95\x7c\xbd\xa4\x8f\xeb\x29\xb1\x40\x65\x82\x78\x5c\x26\x9b\x5a\x04\x1a\xbb\xb7\xca\x55\x4e\x45\x1c\x3d\x8b\x94\xcb\x94\x3c\x81\x2b\x4f\x48\xd0\x21\xc1\x9f\xfd\x71\xfd\xcb\xb3\x67\xb7\x41\x78\x6a\xaf\x02\x35\x8d\x2f\x9f\xaf\xd7\xfb\x2a\x68\xb4\x8d\x68\xf8\xc7\x28\x39\x22\xa3\x19\x99\xb2\x19\xf9\x74\xf1\xce\x52\x76\x31\x49\x52\x4e\x56\x79\x36\x25\x71\x85\x48\x51\xff\xae\x1a\x9e\xe2\x67\x7f\x8c\x8f\x46\x07\xf1\xd1\xe8\xc5\xfa\xbb\xf5\xeb\xf5\x9b\x64\xfd\x3c\x3e\x1a\xbd\x5e\x9f\xac\x8f\x93\xf5\x8b\x41\xe2\xf7\x69\xee\xf7\xa9\x51\xa3\xdf\xe2\x14\x35\x7b\xa4\x5a\x9c\xe1\x67\xf1\x2f\xcf\xd6\xbf\xa4\xeb\x5f\xfe\x7d\xfd\x4b\x7f\xfd\xcb\xd1\xfa\x97\xf5\xfa\x97\x78\xfd\x4b\xb2\xfe\x65\xbc\xfe\x65\xb2\xfe\xe5\x69\xfd\xcb\x66\xfd\xcb\x2f\xc9\xb3\x5b\xb4\xc0\x81\x4e\x34\x5a\x35\x35\x99\x17\x59\x79\x7e\x6f\xaf\x9e\x02\x6f\xd3\xc6\x87\xa5\xf5\xeb\x63\x74\xa4\x8d\x1e\x36\x6e\x31\xe8\xb3\x5b\x5f\xee\x6c\xb9\xf5\x55\xe9\x6e\x56\xc2\xc6\x2f\xc9\x94\x15\x33\x87\x0f\xe4\xc6\x37\x74\xe1\xdf\x53\xe5\x61\x7d\x6f\xa5\xd5\xaa\x91\x48\x76\x35\xc0\xd9\x1d\x9d\x91\xee\x2a\xe3\xd9\xb2\xfb\x77\xb0\xe5\xfa\x7b\xb3\x42\xed\xe3\x74\x2c\x26\xf2\x3c\x6c\x98\x9f\x1e\xf1\x51\x14\xf5\xb9\x75\x66\xfd\x75\x9c\x66\xda\xcd\xc2\x96\xd3\xc8\x8b\xce\xad\x7c\x6d\x8f\x27\x9d\xbb\xf1\x60\xb2\xd5\x40\x47\x80\x81\x0e\x9c\x46\xa8\xc5\x43\x85\x56\xd8\x2f\xd2\xe9\x22\xe3\x6f\xd8\x8c\x1c\x8b\x98\x26\x1d\x49\x1a\xad\x2a\x11\x83\x0b\x85\xbd\xa1\xf5\xf3\xc1\x37\xe8\x6e\x3c\xac\xb7\x66\x3d\xb6\xc8\x22\x2f\xfe\x03\xed\x0d\x54\xbc\x89\xbb\xf1\xc1\xce\xac\xfb\x43\xa8\x5e\x65\x7d\xb1\x2d\xab\x42\xbd\x0f\x72\xa4\x0f\xe1\x48\xbd\xdd\x07\x03\xb4\xb0\x3d\x43\xd1\x2f\xbf\xfc\x61\x18\x25\x1b\xf4\x10\x74\xd7\xea\xaa\xc5\xe3\xff\x7a\x36\xe9\x27\x91\xcc\x70\xd0\x9a\x21\xd5\x5f\x5f\xb4\x7d\x8d\x54\xa7\x6e\x64\xa7\x6e\x76\x77\x6a\x83\x6e\x9a\x33\xa6\xd6\x66\x19\x4b\x5a\x07\x72\xd9\x75\xfd\x9c\x9e\x7e\x78\x73\x7e\x72\x7a\x7d\xfc\xe1\xe4\xfa\xe4\x14\x1e\x3f\x1e\x5f\xfd\x78\x7d\x79\xfa\xc3\xfb\xd3\x0f\x57\x97\x47\xf3\x98\x27\x23\x2e\xab\xdd\x36\xbb\x7e\xbd\x32\xdf\xae\x21\xdc\xd6\xdc\xb3\x3f\x6d\x12\x74\xbd\xcb\x65\xfb\xbd\xa5\x2f\x3c\x6f\x24\x2f\xfe\x03\xce\x6a\x0f\x88\x06\x4a\x4f\xda\x9e\x23\xc3\x24\xf0\xf7\xef\xe1\x5b\x44\xb1\xf5\x90\x63\xfc\xce\x35\xad\xa4\xd5\xa9\x88\x2a\x5c\x8c\xb3\x09\x9a\xe2\x41\x67\x78\xd0\x8b\x4b\x7c\xf0\xf2\x65\x3c\xc5\x51\x84\x31\xae\x8e\x5e\x8c\xfe\xfc\xbd\x7c\x08\x3b\x72\x34\x1c\xbd\x38\x68\x49\x3e\x18\x0d\x12\xd9\xcb\x0a\x57\xda\xb6\x62\x98\xa0\x98\x62\xba\x5e\x8f\x27\x89\x3a\xe9\xaa\x04\xc5\x0c\x33\x2f\x65\xb0\x87\xe3\x17\xbd\x32\x49\x12\x34\x7c\xd1\x2b\x7b\x3d\x3e\x9e\x4e\xfa\x7d\xa4\x8f\xc6\x27\xb9\xe9\x47\x53\x6d\xad\x90\xc7\x55\x62\x43\xed\x3f\x41\x70\xd9\x11\x5d\xaf\xaf\x51\xb9\x60\x55\x3e\x3b\x01\x0c\x5c\x8e\xd8\x7a\x7d\xed\x1d\xe3\xa7\x35\xf2\x80\x40\xc7\x75\x3c\xb4\xb4\x50\x54\x1b\xd6\xc1\x9e\xea\xf1\x76\x75\x9c\x0f\x6d\x07\x28\x9c\x3b\x6d\x3a\x33\x94\x1f\xd4\xc6\x4d\xbc\x6d\xa8\xad\xf0\xa2\x6f\xab\x52\xf4\x48\x8c\xbc\x80\xdd\x99\x10\x84\x17\x38\x8a\xac\x43\xa0\x5b\xf2\xc5\xac\x17\x24\x69\x32\xa1\x0c\x12\xe5\x6c\xd8\xb8\xdb\x0e\x88\xce\x03\x78\x35\x63\x3a\x52\x03\x55\xa1\xcc\x21\xfa\xaf\x4a\x18\xb9\x09\xb0\xa7\xab\x4c\x70\x33\xf6\xa5\x8e\xf6\xc6\x12\x13\x4b\xda\xc7\xd2\x3d\xc5\x4b\x0a\xca\xf8\x36\xa6\x59\x31\xe9\x68\x0e\x70\x9a\x89\x98\x29\x82\x30\x16\x89\x87\xec\x2e\x03\x5b\x58\x39\xe0\x6d\xee\x1f\xe0\xeb\x7a\x1d\xfb\x93\x23\x11\xfb\x05\xb9\x3d\xfd\xb2\x8a\xfd\x39\x4c\x12\x7f\x0a\x37\xc8\x6f\xe4\x96\xec\x30\x71\x75\x8b\x63\xfc\xac\xed\x61\x0c\x1e\x0f\xc0\x59\xb5\x47\xf3\x1d\x16\xce\x91\x41\x11\x1a\x64\x6a\xa0\x18\xf3\x71\x31\x01\x8b\xd6\xd3\x98\x42\x58\x62\x6b\x56\xb8\xf1\x7c\xea\x07\x25\x74\x76\x16\x64\x67\x9b\x70\x04\xab\x4a\xb4\x7b\x53\x82\x3e\xab\x0a\xc1\x6e\xd1\xab\xa3\xe8\x34\xfa\x67\x8f\x39\x98\xc5\xcb\x98\x22\x6a\xcc\xdb\x55\xa5\x88\x8e\x4d\xca\x04\x17\xda\xcf\x60\x6d\x9a\x8e\xea\x30\x5d\xa4\x74\x36\xd2\x86\xd1\x2e\x39\xa9\xe7\xd3\x86\xb0\x29\x9d\x25\xa3\x7a\x15\xe3\x5a\x02\x92\xd9\x26\xa8\x08\x67\x41\x5d\xf4\x6d\xf1\x9d\x17\xae\xe3\x9e\xd0\xd3\x30\x9e\x74\x0c\xec\x76\x60\x4d\x45\x7d\x4d\xc5\x57\xd6\x54\xc0\x9a\x9e\xcb\x05\x4d\x24\x73\x06\xc3\xa0\xc9\xb6\x05\x15\x32\x2f\xf3\xf3\x32\x0f\xf6\xa1\x33\xc7\x4d\x86\x27\x34\xf2\xfe\xad\x22\xfc\xe1\xa3\xa4\x51\x4a\x4c\xd6\xeb\xa7\x8d\xb7\xc9\xaf\xec\xb8\x3b\x04\xbb\xc3\xf9\xd9\x2f\xfd\x67\xb7\x4b\x14\xfd\xf1\x60\x20\x79\x31\xfe\xf0\x24\x70\x2b\x71\xac\x7d\xc6\xc9\xa3\x06\x47\x91\x8d\x6d\xb9\x39\xf6\x26\x5a\x39\x76\xd2\x24\x68\x3d\x19\x05\x39\xdb\x33\x36\xf2\x81\x65\x71\x3d\x9b\x4c\x84\x09\xf9\xdc\xb0\x86\x07\xa4\x2e\xb9\x3d\xed\xcc\x76\x3c\xd1\x51\x7c\x2f\x63\x82\x06\x48\xd2\x38\x03\x49\x42\x75\x88\xa4\x13\x04\x6a\xc1\xcc\x9c\x31\x05\x10\x58\x6c\x3a\x9f\x77\x32\x56\x5e\x0c\x44\x1c\x96\x45\x14\x47\xff\x15\x21\x86\xc7\x03\x34\x40\xe0\x19\xd8\x19\x24\x59\x73\x25\x04\xce\x40\x2b\xbc\x37\x40\x39\x1e\xc8\x73\xf4\x70\xea\x78\xc3\xa9\x84\x2b\xd3\xc4\x1c\x93\xf1\x74\x82\x66\xf8\x3e\x2e\xd1\x5c\x71\xc6\x2c\x41\x0b\x3c\x53\x63\x46\x2b\x3c\x4b\x83\x73\xec\x30\x7f\x59\xba\xd0\x75\x1a\x44\x97\xb8\x1c\xe7\x93\xce\x8b\x3d\x8c\x97\x70\x1c\xc0\x89\xbb\x37\x44\x05\x2e\x2c\xc1\x08\x44\x26\xa2\x7d\x1c\x3d\x8b\x50\x81\xef\xc6\x2a\xeb\x24\x5e\xa2\x02\xd2\x1f\x5c\x4a\x92\x6c\xb2\xf1\x74\x82\x9f\x0c\x5f\x3a\x37\x47\x0f\x52\x07\xec\xa2\x76\xba\xae\x36\x9b\x0a\xbc\xb3\xb7\xb7\x97\xa0\xc2\x9d\x5d\x19\x2a\xec\x59\x47\xfb\xd1\x1f\x22\x54\xe8\x33\x8c\xa1\x5d\x46\x65\xbd\x9e\x48\xb3\x52\xb9\x84\x4c\x33\xc9\x6c\x1a\x77\x52\xd0\x27\xf0\x09\x52\x12\x88\x02\x5e\x8e\x4a\xc3\x52\x97\xa3\x6c\x93\x6c\xd0\xe7\x80\x57\x52\x5f\xea\x71\x1a\x7d\xfc\x01\x35\x6a\xff\xf7\x2d\x1e\x28\xae\x16\x84\x93\x2e\x2d\xbb\x05\xeb\x02\x0f\xde\x95\x25\x66\xdd\xa8\x4f\xb6\x98\xab\xd9\x56\x2d\x98\x18\x84\x53\xfb\x10\x60\x1e\xfb\x11\x8e\xd2\x71\x31\xc1\xd4\xe3\x13\xc2\x41\x95\x4a\xb2\xde\x24\x93\xf7\xf6\x82\x31\x85\xe5\x0c\x93\xb5\xe3\x4c\xd4\xe5\x24\xdf\x15\xc1\x84\xb4\x44\xcd\xfa\xa6\x09\xa1\x98\xa7\x66\x85\x4c\xac\x25\x33\x6a\x66\x46\x9d\x61\x3a\x66\x0a\x98\x33\x03\xcc\x85\x86\xda\x3e\xbe\x19\x67\x1a\x48\x33\xe4\xe8\x88\xe8\x59\xb4\x87\x35\x87\x65\x08\xe3\x42\x16\xe9\x17\x09\x02\xc0\xf1\x90\xa8\xaa\x4f\x9f\x92\x6a\xf0\x70\x6d\xa7\x03\xf6\x06\x79\x93\x44\x1e\x3b\x6d\xf3\xe5\x15\x69\x01\xa2\xf1\xc4\x59\x95\x7e\x26\x0f\x65\x2c\xb9\x0f\xd0\xd1\x88\x7d\x1a\x7d\x1b\x15\x21\x57\x1a\x41\x50\xd8\x89\xa3\x43\x6c\xdc\xb4\x16\xa1\x03\x4d\xd4\x79\xc6\xdc\x79\x56\xe2\xc1\x61\xf9\x92\x99\xda\x4b\x53\x7b\x25\x37\xdd\x78\x82\xa3\x7e\x4b\x3d\x6c\x5c\x4e\x92\x8e\x30\x84\xb9\x32\x17\xcf\xfa\x38\xda\x92\x3d\xd1\x61\x09\xe3\x2c\xb1\x11\xa4\x7d\x99\xe2\x51\x14\x8d\xa2\xa3\xa8\x2f\xb4\xa8\xa7\x17\xd5\xf6\x22\x44\xf8\xd9\x36\x97\x5e\x94\x2c\xc3\xcc\xf4\x20\x10\xfb\xd3\x06\xed\x38\xae\xc7\xc5\xc4\x64\xc7\x51\x82\x18\xbe\x8a\xe9\x78\x30\x49\x50\x86\xcd\x74\xa0\x52\xa2\xc7\xca\x48\x8b\x25\xbd\x6b\x20\xf1\xa8\xc2\x91\xe0\x15\x89\x46\x71\xf6\xea\xa0\xd7\x8b\xc6\x13\xc9\xf9\x30\xcd\xbf\x64\xfb\x07\x12\xba\x4a\x88\x43\x31\x66\x36\x7d\x80\xe4\x97\xc9\x7a\x1d\xf3\x31\x9b\xe0\xf1\x24\x49\x50\x05\x8e\xe3\x8f\x64\xf3\xc3\x49\x32\x8a\xa2\x04\x95\x47\xf2\xb3\x99\xdf\x11\xe4\xad\xb6\x6c\x69\x2b\x37\x6f\x0b\xf6\xa6\xa9\x24\x7b\x36\x4d\x4c\x68\xb3\xbd\xa1\x84\x1c\x27\x1a\xfb\xb7\x28\x39\x04\x42\x9f\x81\xf0\x98\x18\x6e\x71\x80\x58\x62\xc2\xb1\x7a\xd9\x8f\x22\xed\x3b\x5c\xee\x3f\x03\x31\xb6\x50\xd6\x1f\x22\x67\x97\x1b\xd4\x96\x25\xce\x35\x4c\xb8\xa6\x12\x90\xd4\x0e\x25\xc1\x0e\x25\xb0\x43\x49\xa2\x3d\xae\x93\xce\xd7\x19\x73\x82\xe5\x56\x1a\xc5\xc4\x91\x33\x31\x49\x50\xee\xbd\xe6\x7a\x54\x53\xcb\x97\x74\xa6\xaf\x86\xbd\x5e\xf4\x2c\xc2\x5e\x0f\xa6\xfb\xc3\xa4\x3e\x21\x32\x0d\xe5\x38\x77\x29\xb9\x75\xef\x22\x79\xe8\x3d\x2f\xa0\xf3\x1c\x0f\x0e\xe7\xf6\x58\x87\x53\xe9\x4b\xcc\x11\xf1\x19\xe0\x79\x92\x24\x06\x40\xe7\xfd\x7e\x72\x68\x0a\x43\xb0\xe2\x05\x1e\x1c\x2e\xdc\xf6\x5f\x80\x15\xf3\x62\x62\x51\x7e\xaf\x37\xd3\x51\x72\xc6\x8b\x49\xd2\x69\xf5\x14\x41\x14\x4e\x89\xdb\x90\x37\x51\xa7\xea\x7a\x6d\xa8\x95\x02\x73\x15\xe5\x8b\x8f\x87\x12\xbd\xf0\xf1\x01\x38\x96\xaf\xe7\x2b\x71\x26\xf3\x55\x38\x93\xf9\x72\x9c\x8d\x0f\xac\xdb\xd0\xdc\x32\x25\xfb\xe0\x8a\x9a\x81\x6c\xb1\xd8\xc3\xb8\x34\x5f\xca\x7d\x60\x44\xe8\x1e\xc6\x95\x75\x4e\xb0\x6f\xcf\x2d\x48\x3f\xa2\xfb\xd5\x08\x4a\x1d\x95\xfb\xc5\x68\xb0\x49\x92\x4d\x3c\x4b\x8c\xeb\xf8\xf1\xc0\xda\x71\xaf\x7a\xbd\x95\x37\x25\x31\x95\xef\x9a\x7c\xe8\xf5\x40\x86\xf4\x07\xb9\xb0\x36\x51\xef\xc7\xfd\x3f\xcb\xe5\xcd\x35\xf9\xb1\x85\x61\xc2\x8e\x18\x00\x3e\x16\xd8\x45\xe5\x9c\x68\x8f\xae\xd7\x41\x44\x19\x7d\xd0\x01\x59\x09\x31\x63\xa8\xf3\x0d\x12\x99\x68\xa9\x42\xb3\xb8\x54\x22\x9b\x21\x52\xbe\xfb\x8e\x63\x9e\x74\x2c\x55\x6f\x44\x2e\x16\x92\x2a\x3c\x38\xac\x9c\x24\xa6\x32\x98\x2c\xc7\xc5\xb8\x9a\xa0\x29\xce\x35\x31\x38\x97\x90\xe9\x93\x5d\x68\x86\x6f\xd1\x42\x47\xd0\x99\xee\x61\x7c\xdd\xeb\xcd\xe5\x9f\x3d\x04\x56\x78\x70\xb8\x7a\x39\x35\x75\xaf\x64\xdd\x0b\xbc\xa7\xee\xc7\x96\x78\x3a\x5e\x4d\xd0\x1d\x04\x11\x1e\x67\xfd\xfe\xa4\x33\xc3\x18\xdf\xf6\x7a\xf1\x0c\x22\x6d\x7f\x75\x3f\xf6\x7a\xf3\xf1\x6a\x72\x34\x1b\x2f\x27\xf8\xae\xd7\x6b\x61\x31\xee\x92\x91\xfa\xba\x29\xc7\x95\x47\x50\xe6\x96\xa0\x04\xe9\x6b\x39\x9a\x21\x5a\x9e\x3c\x14\xd9\x92\x4e\x47\x0b\x7b\x96\x94\x9b\x78\x85\x72\x04\x0c\xbd\x44\x8e\x46\xa1\x27\x1a\xa4\xcf\xd3\x17\xd1\xd7\x7b\x28\xd1\xf4\xe7\xf4\x03\xe3\x4b\x58\x29\x8e\x9f\x0a\xf3\x7c\xa9\x28\x91\x51\x8e\x6c\xd2\xc7\x4c\x2c\x46\xa5\xbe\x27\x90\x2f\x26\xcf\x3c\xc4\xcc\xcb\x6c\xd5\x4a\x2f\xc1\xa5\x4a\x87\xc4\x2c\x8e\x22\xc4\x6b\x17\x5c\x09\xf2\xfc\x2f\x59\x29\x92\x59\x29\x86\xb9\xbe\xcd\x41\x65\x40\x39\x30\x79\x8e\x48\x08\x29\x5b\x20\xa4\x54\x10\x22\x34\xd0\x27\x9d\x2c\x9e\xa2\x1c\xb1\x71\x3e\x51\x20\x39\xc7\xdc\x5d\xee\xe4\x93\xce\xfc\x88\xc4\x53\x34\x87\xb6\x47\x85\x12\xd0\x53\x34\x4d\x36\x9b\x58\xd2\x2c\xe1\x9d\xac\x38\x52\xae\x61\x11\xd1\x4c\xba\xf2\x06\xa9\xe3\xc0\x6a\xaf\x1a\xef\xf1\x67\xef\x42\xfd\xbd\x7f\xf3\xcb\xaf\x7f\x2d\x43\x9f\x0b\x2d\x56\xe4\x81\xe3\xa7\x88\x97\x77\x2b\xf9\x57\xbf\x38\x6e\x35\x0e\xff\xc7\x6f\x8d\x73\x76\x7b\x7c\xc3\xb8\xc0\xf7\x88\xa4\xef\xb4\xd9\x3d\xd0\xd1\x10\x91\x80\xa4\x57\x3c\x2b\x4a\x2a\x9b\x55\x16\x9a\x7e\x8a\xe2\x27\x49\xaa\x14\xca\x3e\x1e\x5f\x1c\xbf\xbf\xbc\xbe\xfc\xf9\xfd\xeb\xf3\x33\x4c\xd2\xfa\xfb\xe5\xd5\xf1\xd5\xa9\x7b\x35\x8d\xb9\xea\x70\xeb\x25\x36\xdb\xe2\xc0\xcb\xc2\x1c\xf4\x4b\x2d\xa4\x76\xda\xd3\xb1\x64\x3b\x8e\x5c\xf5\x30\x4e\x32\xd3\xc2\xc5\x25\x29\xcb\xec\x96\x80\xab\x8e\x96\x3c\xa6\x52\x50\x67\x04\x2f\xbd\x57\x3c\x9b\x92\xa3\x2d\xe9\x21\x94\x28\xa7\x93\x5c\xfd\xb7\x78\x16\xab\x79\x9c\x52\x75\xda\xaf\x49\xe8\x8e\xd0\xb9\xd8\xc1\x44\xb9\x34\xcb\xb6\x48\x18\xca\x6f\xbf\x15\xab\x6a\x9c\x3e\xdc\x67\x27\xa5\x9e\x45\xc4\x81\x32\x80\xe0\xae\x63\x3e\x49\x36\xe1\x75\xa4\x21\xc0\x48\xaf\x47\xbc\x18\xaa\xbc\xd7\xe3\xce\x7b\x20\x19\xf3\xfd\x21\x9c\x9a\x6d\xa7\x76\xaf\x57\x9a\xbb\xb1\xc8\xe3\x36\xa2\x64\x13\x17\x56\x64\x27\x70\xe1\xb3\x22\x68\x9c\x99\x32\x03\xc4\x25\x41\x22\x26\x2e\x5e\xa6\x64\x11\xbc\x10\xa0\xd3\x80\x7c\x96\xc3\x23\x96\x2c\x18\x0b\xe8\x97\x0b\x08\x62\x5d\xb8\xca\x4f\x18\xae\xd1\x4c\x24\xd8\xd0\x17\x53\x28\x01\x95\x84\x44\x5d\xf2\x0b\x2c\xaa\xac\x61\x5c\x4c\x3c\x69\xfb\xdc\x04\xe3\x95\x1b\xce\xa7\xeb\xff\x59\x11\x9c\x74\x80\x53\x1e\xf8\xcf\xa6\x8a\xde\x61\x40\xef\x74\xa0\xed\xd8\x03\xf6\xee\xbf\x45\x7d\xda\x8f\x46\xdd\xa8\xcf\x3c\x01\x5e\x06\xa5\x74\x76\xc9\xd6\xb8\x61\xcc\xdc\x1a\x36\x3d\x4e\xad\xd7\xce\xe7\x11\x9b\x77\x15\xe9\xbb\x5e\x37\xa6\xb9\x9e\xf1\x03\x7c\x77\x8d\x2c\xbe\xe6\xff\xaf\xd7\x53\xd1\x18\x01\x42\x13\xf0\x19\x74\xe8\x8a\xaf\xbc\xf3\x48\xb2\x04\x59\x9e\x8f\x9e\x36\x48\x59\x11\xce\xe4\xa3\xb2\x92\x93\x8f\x9b\x4e\x15\x17\x69\x96\xe7\xc6\x45\x16\x44\x07\x01\x37\x8e\x12\x64\x24\x10\xa1\x69\x2c\x12\x44\x12\x0b\xaf\xb0\x37\xbc\x9d\xb2\x5e\xab\x60\x21\x85\xb6\xbe\x9b\x81\xa7\x53\xd9\xb3\xc4\xd5\x24\x12\x3a\xf7\x0b\xb9\x1b\x02\xae\x42\x1b\x29\xc1\xf7\x32\x66\x49\xaf\xb7\x8c\xb3\x24\x01\x87\xc3\x6a\xcc\x20\x08\xd0\xeb\x5a\x68\x73\xc8\x99\xd9\x9c\x40\x95\x87\x5e\x86\x73\x3c\x40\x73\xcb\xe9\x1d\xe6\x2f\xe7\x20\x29\x63\x2a\x82\x53\x36\xce\x27\xe0\x1b\xa9\xad\x22\xed\x45\x58\x76\x4b\xce\xf0\x98\xef\xc8\x6a\xe9\xd9\xa3\x42\xbb\x9e\xdd\xf8\xb7\xee\x76\xb3\xd7\xdd\x99\xb9\x5c\x77\x1e\x38\x29\xf5\xc8\x11\x78\x0c\x55\x77\xb1\xd1\xf5\xb5\x3a\x32\xae\xf7\x0f\xbe\x1b\xfe\xe5\xfb\xef\x06\x83\xc1\xf0\xf9\x8b\x3f\xff\xe5\x60\xb0\xff\xfc\xf9\xc1\xc1\xfd\xf3\xa8\x53\x3b\x55\x1e\xf4\x8d\x69\x74\x6d\x4e\x23\x53\xf6\xe0\xf9\xc1\x5f\xfe\x72\xf0\xfd\xf3\xc1\xc1\xe0\xf9\xfe\xc1\xf3\xe7\x07\x50\x38\x3c\xa2\x6e\xf4\x65\x65\x74\x7d\xfd\xd7\x8f\xae\xe8\xf3\xbf\x1c\xfc\xe5\xfb\x83\x17\xdf\xbf\x78\xb1\xff\xfc\x40\x17\x6c\x3b\xf1\x6e\xa1\xf8\xf5\xf6\x38\xba\x88\xd7\x83\xbf\x07\x11\x2f\x29\xc4\x91\x52\xaf\x89\x8b\x20\x2c\xb9\x56\x66\x93\xe1\x7c\x99\x73\xb6\xf4\x02\x37\x08\x16\x5c\x87\xd1\x52\x9f\x62\x36\xce\x08\x2d\x8f\xa7\x82\xde\x81\x77\x15\x48\xa8\x78\xae\x8d\x42\xa3\x6a\x35\xcb\x04\x89\xac\x3b\x55\x96\xdf\x35\xc2\xe6\x1b\x0c\x0c\x76\x3e\xae\x52\xef\xe4\xde\xb3\x6d\xbf\xc9\xaa\x92\xcc\x5e\x3f\x40\x1f\x68\x71\xeb\x67\x1a\xd6\x33\x69\xef\x82\x3b\xf3\x98\x8a\x2e\x94\x68\xbf\x25\xef\xf5\x1d\x05\x9f\x84\x7f\xf5\xee\x09\x9e\x54\x10\xe1\xf1\xc3\x04\xf3\xf5\x9a\x28\x61\xb8\x89\xb4\x23\x48\x21\x8c\x94\x5c\xd1\x69\x46\x4a\x3e\xcb\x44\xa6\x04\xad\xf2\x09\x62\x02\xfb\x13\x33\x7b\xcf\x66\x24\x77\xb5\xdf\x4e\xcc\xa3\x3c\x73\x97\xb4\x24\xc1\x4a\x80\xb9\xab\x9f\x32\xbe\x71\x05\xb8\x21\xb2\x5c\xe8\x2c\xa5\xc5\xf5\x41\xd2\x2d\x7e\x35\x2b\x7a\xc7\x84\xb1\x40\xf4\x3f\x94\xe4\xb7\x8a\x14\x53\x82\xf7\x87\x88\x06\xe1\x4b\x4c\x6f\x0a\x63\xb9\x97\x72\x22\x49\x03\xc9\x97\xc9\x1a\x62\xaf\x7f\xd4\x85\xd8\xd9\xbd\x7c\x7b\xec\x1b\xd6\x6f\x0f\xe0\x75\x57\x9e\xf5\x7a\xa0\xc4\x49\xba\xf7\xc9\xef\x58\x71\x59\x7b\xa4\x2f\x79\x94\x50\xca\x82\x72\xaf\x17\xef\xb1\x9d\x23\x58\xaf\xdb\xbe\x37\x5a\x49\x8c\x62\xa3\x5c\x2d\x9e\x2a\xf6\xcc\xae\x37\x0f\x48\x92\xfa\x4a\x72\xef\x45\x6b\x91\xf9\x49\x86\x5a\x2a\x8d\xe0\xde\x5b\x71\x3f\xdf\xb8\xdc\x1f\x4e\xb4\x47\xc5\x90\x4b\x2e\x0f\xfb\xfd\xca\x30\x3f\x41\x91\x4a\xc9\xea\xf3\x94\x96\xda\x33\xce\x4c\x3b\x06\x6e\x02\x51\xae\x0a\x6e\x42\x28\x22\x26\x7a\xc5\xa5\x4e\x31\xc1\xdf\x0c\x34\x71\xb3\x0f\x3c\x79\x8b\x45\xf3\x99\x43\x3c\x47\x0d\xb0\xdb\x1b\xa2\xbb\x80\xf4\xc8\x54\xce\xee\x7e\x57\xe5\x88\x12\xc9\x8d\xb9\x52\xaa\x19\x79\xca\x68\x5e\x2b\x55\x17\x75\x6d\xd4\x64\xa3\xb5\x4c\xef\xea\x54\xd8\x06\x4f\xe8\x4c\xc9\x2f\x08\xca\x12\x59\xe9\x5d\x1c\xa9\xd9\xe8\x42\xa7\xa3\xc4\x0f\xd3\xd5\xb6\x7d\x54\x8f\x34\x52\x49\xbc\xed\xbc\x31\x12\xda\x46\xf4\x69\x91\x8a\x05\xd9\x1a\x5a\xcb\x6f\x09\x32\xea\xef\x1b\x24\xd4\x60\xb7\xe8\x2a\xf9\xc5\xd4\xa4\x80\xdf\x4b\x24\x52\x1d\xc1\xea\x1b\xca\xe9\x9c\xb6\x24\x2c\x47\xe3\xda\x91\x33\x15\x90\x48\xdf\x3b\xaa\x2b\x47\xad\x6f\xab\x66\x58\x1f\x53\xe1\x5f\xe2\x8d\x5f\xdf\x06\xcb\x13\x4b\x76\x50\x1e\x5c\x7e\x82\x77\x56\x0d\x7c\x7c\xac\xfe\xfe\x46\xf3\x5c\xb9\x86\x88\x8d\xa7\x72\xff\xf3\x09\x9d\x85\x5f\xe5\x48\x4c\x9f\x1b\x83\xb1\x4d\xad\xd7\xf1\x3c\x18\x43\xb0\x0b\xea\x98\x58\xd2\xc7\x0e\x8c\xba\xf7\x59\x69\x60\x37\x32\x87\xb4\x09\x61\xa3\x0e\x16\x77\x5f\xe7\xa7\xc5\xde\x5b\xba\xe2\xa4\xce\x44\xfb\x83\x83\xb3\x2a\x69\x1c\xe6\x83\xfa\x61\x3e\x0c\xa6\x24\x83\x54\x0f\x59\xea\xc5\x80\x49\x21\x33\xca\x03\x6b\x7c\xd2\x58\xe2\x9d\xd3\x4f\x74\x35\x82\x3f\x34\x26\x16\xa6\xc3\x5e\x4d\xfb\xb5\xb8\x79\x93\xc7\x80\x1c\xba\x3f\x0d\x70\x61\xed\xc5\xc7\x31\x53\xe6\x61\x74\x13\x71\x31\x0e\x3f\x40\x6c\x1b\xa1\xbf\xb5\x49\x85\x6b\x44\x0e\xb1\xd0\x51\x86\xe1\x06\x9d\x1c\xc5\x0f\x5d\x17\xcb\xb9\x35\x8a\xd5\x3a\x88\x9e\xcb\x2a\xab\x69\x0b\xe9\xd5\x5a\x47\x93\x4b\x52\x9e\x3d\x11\x7c\xf6\x2e\x4a\x1b\x7c\x60\xe1\xf1\x81\xfc\xd5\xc1\x11\xdf\x3f\x90\x7c\x20\xc5\x07\x87\xf4\x25\x37\x91\xbf\xf6\x0f\x7c\x3e\x90\xea\x98\x55\x76\xfa\xa1\x97\x60\xc1\x65\x10\x97\x7f\x18\x99\x7b\x9b\x06\xe9\xd7\x1f\x26\xa0\x01\x53\x28\xac\xc2\xf2\x9c\xdd\x5f\x68\x10\x2a\xb7\x04\x3e\x52\x6d\x76\xb6\x23\xa9\xb6\x00\x91\xa4\x01\xb5\x47\xcd\xa4\x7a\x07\xe2\xf0\xa4\x00\x8c\x2f\x20\xa0\xa4\x5c\x99\xed\xae\x03\xbd\xd3\x27\x36\xbb\xbd\x1b\xf5\x83\xdd\xdf\x8f\x92\x48\x56\x93\xb3\xda\x45\xdc\x0e\x84\x61\x03\x95\xf8\xea\x8b\x4e\xed\x3e\x26\xa6\x18\x71\x65\x22\x13\x55\x41\x21\x93\x34\x52\x31\x12\x58\xa0\x9f\xb7\xd5\xd1\x2c\xe9\xf5\x02\x0e\xfa\x5a\xee\x14\x9f\x1e\xdf\xb4\x8a\xd7\xae\x3b\x4a\x97\x4f\xb6\xf4\x37\x92\x7d\x0e\xfc\xf2\x9e\xc7\x44\x69\xc7\xeb\x7e\xbb\xf8\x8d\x70\xb5\xf3\xb4\xf1\x58\x92\x42\xc5\xa1\x97\x50\x52\x8b\xfd\xe9\xf1\x37\x14\xe8\x17\x54\x62\x6a\x48\xa8\xca\x3c\x82\xed\x38\xca\x31\x35\x2a\xf4\x68\x8a\xa9\x9a\x25\x49\xc3\x5c\x82\x13\x7a\x9a\xf4\x7a\x5a\x59\x7f\x8e\xc1\x3c\x52\x12\xaf\x33\xfc\x25\x9e\xd7\xbc\xb9\x2b\x71\xcc\xd3\x2d\x11\xdd\x25\x11\x99\xa4\xdc\x1d\x59\x72\x1c\x83\x65\x85\x24\x8d\xb4\x74\x8c\x96\xa7\xca\x7b\xe9\x4d\x4e\x62\xc9\xbf\xf3\x9a\x98\x2c\x8e\x4c\x35\x91\x95\x45\x85\xca\xaa\x60\xc5\x66\xfd\x47\x6d\x60\xe2\x0c\x2e\x0b\xbe\x41\xa4\x9c\x78\x8a\xe6\x09\x72\x46\x36\x97\xe0\xcd\x9e\xa2\x59\x82\x66\x40\x3c\x2c\xf0\xd3\x9c\x16\x33\x67\x51\xeb\x2e\x68\x10\xc5\xe3\x49\xe7\xb9\x77\xa3\x0c\x5c\x62\x7d\xde\x89\x67\x83\xab\x3c\xf6\x6f\x12\x4f\x19\x96\xe1\xc1\xa1\x91\xa0\xbc\x62\x2a\x5e\xf9\x3c\x2e\xf4\xb4\x92\x31\x93\x04\x8d\x92\x4e\x48\x24\xc7\x10\x75\x7a\x73\x1b\x24\x27\x56\xae\xa5\x47\xeb\xa9\x44\xb7\x98\xee\x53\xa5\x3e\xb5\x2d\x84\x5e\xe2\xc4\x16\x96\x78\xc9\x28\x0c\x90\x31\xdb\x1f\xda\x4b\x2f\x0b\x6a\x42\xb9\xe1\x57\x1d\x15\xba\x28\xc8\xf3\xfd\x92\xfd\x6f\x2d\x99\xb3\x69\x96\x7f\x50\x63\xf1\x90\x97\x1c\x9d\xb9\x31\xf7\xf4\xdf\xc9\xd8\x45\xb7\x98\x78\x43\xf6\x86\x5b\xaa\x64\x8f\x27\xf0\x3c\x75\x6e\x36\xf6\x7c\xeb\xf5\xe2\x05\xfe\x12\x2f\x50\x9e\x24\xc8\x00\xc0\x22\x41\x0b\x89\xb7\x02\x15\xd3\x10\xa0\x33\x21\x38\xbd\xa9\x04\x69\xad\xb7\x15\xa4\x49\x22\x19\xde\x3a\x48\xbb\x8a\xa2\xe4\x68\x37\x34\x13\x09\xcd\xa3\x20\x55\x26\xb9\x6e\x1e\xfb\xc4\x37\x9c\xdc\x36\xe0\x2b\xdc\x71\x43\xcc\x31\x7b\x89\xf0\x5e\x83\xc2\xd1\xb6\x0f\x12\xa1\x57\x79\x0e\x5b\xe1\x6a\xa7\xf8\xc4\x04\xa2\xba\x06\x40\xfa\xd8\xc2\x72\xab\x2f\xd8\x57\x2a\xf6\xe5\x01\x1e\x73\x64\xe9\x27\xb8\x27\x10\x5e\xee\x0f\x4a\xdb\xae\x26\x1f\x28\x4c\xdc\xcf\x15\x67\x53\x52\x2a\x65\xa3\xb8\x48\x76\x91\xff\xb7\xe0\xef\xc1\x8f\x5a\xdd\xca\xb4\x38\xd6\xc2\x20\xc4\x44\x11\x2b\xca\xcc\xbb\xc5\x33\x41\xd7\x1b\x1b\x68\x44\x02\x75\x06\xf5\x6c\xd5\x63\xea\xec\x6e\xd9\x9f\xd2\x44\xf1\x23\x6d\x47\x36\x57\x01\x92\xde\x32\x0e\x84\xa9\xe2\x20\x92\x46\x01\x2f\x3f\xaf\x8a\xd7\x64\xce\x38\x81\xa9\xf8\x91\xb1\xcf\xf1\xd7\x8a\xd4\x9b\x30\x26\x95\x3b\x8a\x98\xa9\x6e\xaf\xfb\x77\xf7\x9f\x84\x03\x38\x9e\x0b\xc2\xbd\xfe\x23\xf2\xb5\x42\x37\x64\xca\x96\xc4\x00\x9b\x29\x21\xd7\x29\xfc\xd2\xb6\x5c\x46\x8f\xc4\x02\x40\x2c\x92\x8e\x8d\x1d\x59\x8a\xac\x5c\x5c\xf8\x02\x29\x15\xc9\x89\x48\x76\x54\xfe\x80\xd8\x4a\x3e\x8c\x2d\x7c\x4f\x70\x61\x63\xdc\xd9\x70\xce\x0a\xd4\x3a\x7b\x71\xa4\x1f\x23\xaa\x00\x2b\xe9\xf5\xe8\x7a\x1d\x73\x2c\xcc\xb5\xbe\xc6\xa2\xf2\x9b\xd6\xf9\xfc\xdc\xa4\x88\xe0\xbc\xaf\x6d\x23\x54\x78\xdb\xc8\x0b\x33\x62\xb1\x05\xeb\xf5\x14\x3a\xcc\x10\x4b\x50\x06\x70\x0f\x57\xfc\x10\x1c\x64\x4a\x66\xa4\x25\xfc\x9a\xc6\x7e\xc6\xca\x95\x98\xb1\xd4\x87\xe6\x74\xff\xb3\x25\x31\xfc\x85\x7c\x5e\xaf\xeb\x63\xee\xf5\xf6\x4c\xcc\xb0\x3a\xea\x5c\xe9\xbb\xa9\x5e\x6f\xaf\x25\x0a\xc7\x1e\xb6\xda\xd5\x4a\x0f\xc1\xef\x5f\x70\xc1\x46\x12\xb8\x01\xaa\x55\xcf\x93\x5e\xcf\x93\xb7\xbb\xaa\x4c\x25\x9b\xd8\xdb\xec\x88\xe8\x87\xa4\x49\xa6\xca\x2e\xc1\xad\x0d\xdc\xcb\xb1\x5b\xa7\x1b\xaa\x2e\x79\x14\x56\x51\x02\xdf\x6d\xaa\x92\x5d\x92\x5e\x1b\xef\xeb\x20\x96\xaa\xad\xac\x42\xaf\xc0\x7e\x35\xf7\x75\x53\x4d\xcb\xad\x80\x66\x46\x64\xd7\x0c\x4f\xb5\x37\x40\xd1\x3d\xcd\x73\x0d\xcb\x50\x4d\x84\xfc\x86\x7c\xa6\xd4\x3b\x61\x5c\x62\x7a\xe3\x7a\xa0\x6c\x81\x5a\x3f\xc5\x24\x49\xd0\x69\x2c\x94\xbd\x10\x60\x13\xd4\x82\x06\x13\x3d\xac\x70\xb7\xb7\xee\x50\x6a\x42\x6d\xcb\xa9\x09\xb8\x9e\x6d\xdb\xb3\xa5\xf7\xed\x43\xca\x6c\xeb\x2e\xfa\x7b\xfd\x4b\xac\x2c\x9c\x39\x3e\x8d\x29\xe6\x89\x22\x75\x68\xcb\x98\xf8\x76\x9c\x49\x6a\x52\xed\x31\x9b\x68\x0c\x15\x60\xc8\x76\x69\x52\xb3\x25\x12\xef\xc0\xcf\x42\x47\x42\x52\xe7\x5a\x63\x86\x1a\x40\x5c\x93\xb7\xd7\x13\x14\x86\xab\xf7\xdf\xc3\x76\x02\x18\x57\x22\xa6\x8b\x1a\xa0\xb7\xf0\xac\xca\x2d\x8b\x35\x24\x57\x52\xd7\xc0\xf0\x26\x38\xf1\x95\x28\x24\x48\x6b\x55\x4f\xf4\x8f\xdc\xc6\x01\xdb\x22\x59\x24\x36\x56\x54\x2c\x30\x49\x7a\xbd\x36\x55\xf0\xb6\xa8\x22\x30\xe9\x47\xcd\x43\x1c\x37\x52\x76\x9d\x57\x1e\x5a\x50\xdc\x83\xbf\xdf\xb5\x28\x69\xa4\x63\xfe\x87\x79\xcd\xe5\x1f\x8a\x07\x88\x6f\x09\xfe\x0b\xd5\x6c\x0b\x6e\x1b\x04\xa5\x86\x9c\x47\xde\xb3\x52\xa9\x70\x6b\x19\x27\x1b\xf0\x85\xd4\x10\x65\x5d\x1b\xdc\x64\x02\xeb\xfa\x43\xdf\x1d\x58\xd7\xcf\xa9\x0f\x01\xbf\x41\xd4\xcc\xb5\xb3\x0f\x66\x01\xbc\x20\xbd\x6d\xca\x35\x57\x75\x6b\x0f\xe2\x91\xbc\x22\xf6\x02\x40\x68\xcb\x44\xc3\x61\xca\x0d\xe1\xe9\xbb\x40\x3e\x96\xa8\x8e\x27\x86\xe2\xa5\x28\xa4\x76\x07\xc8\x9e\x8b\x38\x43\xe5\xc6\x72\xab\x3c\x0c\x95\x96\x00\x6e\x41\x22\x0c\xd1\xd8\x42\x59\x9a\x19\xec\xf5\x44\x6d\x27\x4a\x2c\xbb\x6b\x73\xfa\x84\x6e\x1b\x1e\x06\xdd\x2a\x24\x36\xf1\x55\x82\xde\x7f\x75\x7a\xb4\xc0\xc1\x4c\x4e\xf6\x2d\x93\xf3\xb4\x41\x99\x9b\xa8\xec\xf7\x4c\x46\x93\xa6\x0f\x2d\x27\x54\xad\x92\x5c\x23\xe3\xdb\x49\xaf\x17\x57\xb1\x70\xb7\x84\xea\xec\x46\x22\x34\x6a\x1a\xdf\x4e\x8c\x81\xb7\x47\x2d\x99\xcb\x60\x1b\xd1\x27\x9d\x11\x4b\x12\x1e\x51\x1c\xbc\x43\x47\x47\x3c\x5d\xea\x83\x43\x7e\x5e\x7a\x47\x05\xed\xf5\x4e\x41\xa6\xe2\xdd\x31\x37\xa7\x9e\xda\x79\xff\xf8\x95\x79\xd7\x1a\x0c\x66\xd6\x59\x73\xd6\xed\x9c\x1b\xa8\xa3\x88\x39\x92\x96\x63\xe6\xe1\xdf\x4b\x9b\x1c\xf3\x04\xb1\xcd\xb6\x95\xe8\x18\xd3\xde\x06\xb3\x55\xb4\x2c\x8c\xa8\x49\xb3\x82\x73\x96\x2b\x4a\xa9\x96\x10\xd2\x4c\x6a\x5a\x68\x71\x6b\x8c\xe5\x67\x5d\x98\xd3\x28\xd4\xd1\x32\x2d\x07\x4a\x68\x1b\x54\xb4\x71\x70\x2d\xc0\xa2\x08\x65\x1e\x92\xae\x04\xa2\xbe\x71\x33\xe2\x27\x10\x61\xcd\xbc\xd0\x8c\xc5\x58\x8c\x07\x93\x89\xe4\x4c\xed\xfd\xad\x9b\xdd\xe0\x36\xd8\x25\xab\x1e\x2a\x97\x35\x48\x05\xa7\x6d\xa5\x4b\x3c\xa2\xc3\x16\x4e\x1a\x87\x99\xc7\xa0\x98\xda\x86\xbe\x3f\x15\x6b\x8f\x60\xb5\x99\x9f\x5d\xd3\x99\x89\xdc\x46\x93\xa3\x62\x4c\x55\x54\xe0\x91\x7a\x42\xc5\x46\xc3\x1f\x0c\xfb\xd7\x6d\x02\x76\xb8\x50\x01\x99\xa4\xd8\x76\x87\xbf\x41\x6f\x76\x47\xfe\x6c\xb9\x7f\xff\xad\xa9\x40\xe0\x10\xc6\x2e\x3e\x5f\x4b\xba\xcf\xb2\x9b\x56\xbc\x10\x45\x26\xeb\x22\xae\xb5\x8d\x5a\x4e\xe3\x28\xda\xd3\x43\xec\xe3\x28\x8d\x12\x24\xfa\x58\xb1\x30\x68\x6f\x20\x4f\xe6\xbb\x38\xfa\x13\x38\x6b\xf8\x13\xe8\xcb\x24\xdf\xc2\xfd\x1b\xbc\xf4\x4d\x3d\xe8\xf2\x31\xd1\xc8\x9a\x78\x52\x06\xdd\xbc\xa8\xe9\x89\x78\x96\xb5\x88\x61\xcb\xb9\xb4\xd0\x88\x9e\x58\xc6\x9b\xb1\x38\xba\x14\x19\x17\xde\x35\x5b\x64\x48\xc9\x0a\x6d\x2b\xa2\x0f\x36\x65\x6b\x25\xf3\xb7\xdc\x0f\xab\xd1\x53\x7f\xb0\x19\x0e\x7b\xff\xca\xaa\xcc\x1d\x71\x2b\xeb\x1b\x85\x79\xda\xc6\x03\xb7\x0e\x60\x7c\x1d\x13\xe4\xb7\x30\xce\xf4\x1d\x8b\x92\xa2\x1a\x10\x0d\x3b\xaf\x6f\x9e\x95\xcb\xf4\xc4\xbb\x39\xc8\x76\x09\x88\x88\x8a\xdb\x1b\xd4\x04\xce\x51\xbb\x74\xde\x55\x4c\x73\xd7\x04\x0d\xde\x32\x23\xc6\x76\x41\x29\xac\xd5\x86\x03\x8a\xcd\xf5\x06\x74\x57\x33\x73\x49\x6e\xbb\x5a\xb6\xcf\xf0\x38\x9c\xbb\x89\x47\x83\x80\x51\xc4\xf6\xac\xfd\xbe\xc4\x00\x7b\x9e\x69\x82\xba\x11\xb0\x08\x0a\xdc\xf0\x98\xab\x4c\xff\x39\xb6\x02\x00\x89\x77\x8d\x8c\x3a\x0e\x61\xa8\x3e\xb0\x3a\x00\xf9\x81\xf9\x3c\x1f\x22\x01\xa8\xe3\x60\xa8\x06\x70\xe8\x68\xe7\x04\x98\xe5\xcb\x90\xd0\x3d\x2a\xdb\x7b\xf4\x51\xb2\x14\x64\x26\xfb\x62\x43\xdf\xd7\xef\x89\xdf\xc0\x66\xbb\xd8\x16\xa1\x5f\x69\xf4\x04\xbc\xba\x96\x6c\xde\x67\xf6\x26\x99\x7b\xf6\xc1\xb8\xd8\x74\x9a\x4a\xde\x17\xd0\xca\xbb\xdf\x4d\x99\x76\x6b\xca\x6c\xe3\x49\x43\x91\x4d\x22\xed\x06\x01\x9b\x39\xfa\xac\x79\x35\xae\xc5\xbb\x5a\x50\xcb\x51\x4d\x97\xa5\x70\x74\xad\x22\x7a\x7d\x2c\xce\x50\xf9\xdf\xa2\x25\x20\x38\xec\x15\x53\x1d\x68\x43\xa9\x79\xec\x51\xb4\xc6\xbf\x83\x7f\x80\x97\x49\x32\x06\x93\xa3\xe0\x5a\xdd\xea\xf3\xfb\x36\xb8\x31\x07\xe3\x3c\x8a\x8b\x71\xe1\xee\x1b\x4c\x8e\x80\x87\xd4\xfd\xd2\x63\x2f\x63\x02\xeb\x00\x57\xe9\x92\xde\xa8\x7d\x6e\xbf\xe9\x96\x64\x1b\xca\xb4\x69\xce\x1b\x94\x07\x74\x87\xbd\x15\x4e\xc0\xaa\xc2\x69\x77\x8b\xba\x12\x11\x68\x42\x33\x3c\x00\x94\x6a\x6c\x58\x5f\x66\x87\xfd\x3e\x4b\x64\xfe\x31\xb3\x43\x30\x62\x39\xbf\x78\x28\x66\x4a\x9e\xa6\x98\x75\x40\x5d\x69\xa3\xea\x15\x2e\xae\x38\x7b\x85\x07\x87\xfb\xfb\xcc\x5c\x06\xca\xaa\xd1\x0c\x3b\x93\xec\x85\xc1\x15\x6a\x03\xb2\x09\x5a\x81\x90\x47\xf6\x7b\x85\xe7\xca\x7a\xc8\x7a\x92\x39\x62\xaf\xf0\x54\x71\x98\x8a\x59\x05\x58\xd1\xdd\x92\x35\xc4\x33\xa4\xcb\xa0\x1c\x2d\xb4\x4e\xff\x2d\x11\x5e\x96\xb7\x8c\x6b\x5b\x1d\x6d\x20\x13\x96\x41\x1c\x31\x5d\xee\x9b\x9a\x90\xeb\xb2\xc2\xab\xba\xd0\x18\xb0\xc4\xca\xb2\x4a\xda\x66\x69\xd1\xeb\x2d\x2c\x99\x58\x1f\x9c\x27\x52\xb2\x99\x7a\xbd\x95\x27\x20\x5d\xf6\x7a\xf1\xca\x90\x35\x50\x97\x61\x4a\x5c\xae\xa5\x76\xfc\xb4\x38\x8c\xe5\x64\xad\xd7\xab\xba\x50\x36\x5e\x80\x5b\x9b\x29\x7e\x9f\x89\x45\xba\xa4\x45\xcc\xd0\x34\x41\x77\x78\x95\xa0\xa2\xd7\xdb\x93\xfb\xff\x0e\xdf\xb5\x8e\xe8\xce\x8e\x28\x41\x3e\x25\x92\x56\x45\xb9\xa0\x73\x11\xdf\x25\x1b\x3a\x8f\x73\x3b\xa8\xa6\x11\xda\x7b\xc6\x49\x57\xd7\x62\x23\xe7\xde\x13\x4e\xac\x23\xbe\x45\x06\x1e\xfa\x38\xe9\x66\x9c\x74\x67\x6a\xb1\xba\xc6\xf8\xba\x3b\x67\x1c\xfc\x78\x29\x11\x43\x37\xea\x3b\xd1\x74\xa1\x25\x00\x54\xc5\xf9\xcd\x04\x79\xa3\xed\x87\xe2\x80\x6e\x9a\x26\xa8\x8a\xcb\xa6\x3a\xa0\x97\x20\x89\xa6\x04\x95\x72\x6b\x36\x6b\xfb\x8a\x3b\x2d\x2f\xde\x7d\xbf\xcf\x95\xf5\xc0\x98\xfb\xe7\xa9\xa1\xaf\x41\x89\x9c\x99\x0b\xf7\xcc\x5d\xb8\x97\xe6\xb8\xaa\x5d\xbd\x77\xc0\xb4\x03\x42\xf3\x06\x52\x7c\x86\x2a\x89\x18\x92\xcd\x46\xf6\xf8\x2b\x10\xdf\x82\x5c\x1c\x2f\x4e\xe7\x31\x77\xcb\xf7\x04\xac\x4b\x86\xf9\xd8\xd1\x58\x93\x24\xe0\x27\xb6\x6c\x13\x73\xba\x75\x78\xba\x62\xab\x58\x5b\x29\xd0\x79\x0c\xb4\x00\x1c\x08\x18\x13\xe7\xe3\x05\xbc\x15\x28\x7a\xab\x7e\x8e\x84\x8e\x60\x4a\xbc\x25\x5b\x88\x48\x3a\x19\x2e\xc1\x56\x45\x81\x9a\xa1\x2d\xe4\xd4\x7d\x0c\xa6\x8e\xc0\x29\x26\xa7\xad\x7d\x24\x2d\x07\xb6\x73\x0a\xf0\xb4\x41\x0e\xe1\xa1\x0c\x8f\x27\x87\x6c\x7f\xff\xd0\x78\x69\x2c\x7a\x3d\x02\x2e\xdd\xe4\x78\xe5\xb8\x3d\x8a\xbc\x0a\x27\x55\x62\x73\xd9\xed\x59\x5c\x25\x47\x74\x9c\x2b\x5b\x14\x35\x77\xa3\xc6\xcd\x46\xae\xf3\x94\xe3\x7c\x32\xca\x94\xad\x6d\x0e\x7b\x2f\xdb\xb1\xf7\x7e\x66\x55\x77\x46\x67\xc5\x9f\x9c\x0b\x39\x52\xb0\xea\x76\xd1\x55\xca\x4e\xcf\xc0\xd7\x37\x9d\xaa\xbb\x72\x22\x08\x2f\xbb\x82\x75\xcb\x4c\xd0\x72\xfe\xd0\xcd\xf2\xbc\xcb\xe6\xb0\xf9\x5a\x77\xa5\x72\x9e\x10\xf5\x49\x3f\x4a\xbb\xef\x69\x59\x02\xfb\xad\x6c\x24\xbb\x51\x3f\x73\xfb\xb4\x01\xbf\x72\x6a\xb5\x04\xe3\xd7\x04\x9d\xfc\x63\x86\x63\x9f\x0a\x7b\x5a\xcf\x3e\x5d\x9c\x9d\xaa\xf0\x46\x90\xc1\xb7\x1d\xab\x65\xfb\xff\xb6\xe5\xd8\x87\x9d\x14\x9d\xc6\x27\x46\xa4\x43\x6b\x44\x9a\x13\xe8\x54\x3c\xc7\x1c\xc8\xd7\x6d\xc4\x1a\xfd\x3d\x12\xb5\x2d\xc4\x96\x15\xa5\x6b\x5d\xb8\x37\x88\x6e\x23\xa6\xec\xa3\x55\x14\xd4\x26\xcc\x1e\xf4\x9e\x78\xdf\xd4\xa5\xe6\xde\x10\x65\x56\xe5\xb0\xe6\xb3\x53\x62\x5b\xd0\xaa\x2a\x32\x08\x22\x46\x6f\x72\xf2\xfa\xe1\xd3\xc5\x59\x50\xa3\x03\x46\x02\x64\x8b\xc0\x03\xc4\xad\x23\x85\x43\xf1\x92\x1f\xf6\xfb\xc2\xa8\x6b\xd3\xb1\x50\xd6\xcc\x86\x6e\x99\xe3\x71\xa8\xb1\x17\xd0\x87\xfa\xbe\x61\x2a\xcf\xd9\xf9\xb7\x90\x91\xd3\x64\x2c\x94\xd6\x78\xa9\x86\x38\x6b\xc1\xf1\x53\x34\x47\xb9\x3d\xf2\x17\x78\xa6\xb9\xac\xc5\x51\x19\x2f\x92\xd1\x2c\xbc\x42\x98\xb5\xdc\x1f\x94\xc6\x4a\x3d\xc0\x95\x62\xd2\x61\xeb\xf5\xac\x41\x27\xac\x92\xa3\x58\xb3\x9b\x41\x6e\x3c\x4b\x46\xf5\xa4\x95\x81\xf8\x2a\x0e\x2d\xff\x68\xe0\x92\x04\x15\x7a\x8b\xbb\x35\x3b\xb3\x17\xb2\xc4\x19\x4d\x59\x39\x94\xbd\x52\xdd\x6e\x53\x06\x67\xac\x3e\x62\xb7\xdf\xc4\xda\xf6\xde\x7a\x17\xc0\xbd\x9e\xbb\x00\x1e\x74\x74\x92\x58\xaf\x83\x0f\x43\x2d\xde\x0d\x5d\xa2\xa0\x22\x48\x50\x22\x34\xee\x46\x50\x6c\x1d\x01\xc5\x03\xc4\x9c\xf9\x21\x7d\xc9\x0e\xfb\x7d\x9a\x58\x03\x3e\xe5\x37\x85\x8c\x33\x35\x9a\xcc\x8d\x66\x63\x47\x73\x07\x51\x9c\xb7\xe8\xdb\x98\x0b\x8d\x3c\x2b\x45\x8b\x61\x8d\xe6\x1e\x7d\xd5\x1b\x96\xcf\x2e\x1b\x89\x5b\xb4\x92\xb5\x8f\x40\x1d\x04\xd3\x49\xe2\x02\x55\x1e\x6d\x75\xe6\xb7\xde\x52\xda\x18\x2b\x18\x7b\xa5\x9c\xdd\x5a\x06\xd8\xee\x13\x65\x98\x6e\x83\x60\xe8\xaf\x25\x11\xb1\xd2\xdf\xe1\x6d\x72\x3d\x5e\x33\x73\x37\x82\x43\xb7\xfb\x96\xd9\x2a\x26\x28\xde\x4a\xc8\xd9\x83\x19\x15\x78\x6f\x70\xc8\x5f\xe1\x41\xaf\x57\x1c\xee\xef\x73\x27\x1b\xd5\xb4\x9b\xe1\xf6\x88\xf2\x54\x8d\x9e\xb2\x72\xc4\x36\x12\x42\x94\xdf\x0e\x0a\xce\xb1\xd6\xeb\x28\x78\x51\x6e\x4b\x7c\xf7\x2c\xfb\xdf\x25\x1b\xb8\xc6\xe5\xbb\x3c\x22\x75\xeb\x23\xb1\xe8\x86\x40\x51\x6f\xbb\x79\x6b\xd7\xa4\x61\x9c\xe4\xcf\xf2\x88\x73\xca\x3d\x4b\x2c\xa7\xa3\x5f\x48\xb4\xbf\x27\xb4\x6c\xb9\x0e\x17\x01\x31\x58\xff\xa8\xf1\xb5\x5c\xc3\x6b\x75\x1a\xb5\xdb\x1b\xb0\xa6\xb1\xda\x20\x1c\x8c\x36\x3e\xa0\x05\x48\xad\x5d\x37\x4d\x1f\x7d\xfa\x3e\x44\x41\x2c\x41\x6c\x7c\x3b\xa9\x99\x24\x43\x75\x82\x5d\xe8\xc8\x57\x50\x30\x66\xa8\xf0\x05\xd3\x9e\x1a\xbd\xac\xc4\x1a\x97\xb0\xd0\xf8\xa3\x55\x4e\x17\x58\x2d\xd0\xf4\x5a\xdd\xbc\x7e\xba\x38\x8b\x19\xf8\x27\x4c\x67\x74\xe6\xe6\x29\xa6\xcd\x2d\x25\x33\x09\x66\x3b\xe6\x0f\x70\x6f\x90\x18\xd1\xa5\x5b\x26\x96\x24\x88\xe8\xdb\xfa\x9a\xcd\xce\x94\x2d\x57\x39\x01\x61\x19\x62\x12\x4a\x9a\xfa\xfd\x75\x17\xdd\xfc\x21\x00\xb8\x5b\x22\xae\x9a\x36\x01\xa0\x82\x65\xfd\xf0\x79\xd4\x9d\x5e\x6c\x62\x96\xdb\x98\x9b\x24\x1b\xd9\xfa\x0e\xef\x40\x00\x2a\x1f\x0c\x69\x65\xae\x56\x8c\xe7\xaa\x0f\xe4\x1e\x10\x95\xc6\xb7\xda\x07\xb4\xbd\x32\xe1\x5a\x30\x74\x1e\xfb\xf6\x55\x21\x1c\x39\x22\xd4\x17\xd9\x04\xbd\x3a\x2e\x66\x10\xcd\xee\x9f\xdb\xb9\x86\xd0\x36\xfa\x74\x71\xa6\xa8\x65\xb0\x4d\x29\x98\xe8\x3a\x82\x34\x32\x4a\x5f\xde\x6c\x0a\x37\x8d\x66\x10\xb4\xa9\xb7\xa1\xb4\x24\x6a\x53\x40\xc7\xb7\x13\x09\x35\xed\xfa\xb1\x0a\xe9\xd4\xc7\x11\xe2\x4f\x07\x0f\x21\xd9\x17\xbb\x33\x05\x64\x59\x53\xed\x27\xd5\x57\x11\xd8\xa8\xea\x5b\x20\x68\x87\x0e\x1d\xa2\x58\x7b\x7f\xab\x23\x15\x89\x75\x8f\x5a\xbf\x8c\x1f\x26\x23\xaf\x3f\x19\xae\xf5\x95\x21\x91\xa0\x12\xaf\xe2\x00\xdf\xa0\x2c\x04\x10\x3a\x8f\xcf\x8c\x25\x9a\x9a\x3e\xe6\xbd\x24\x40\x3c\x94\xc6\xbf\x54\x5d\x70\xe0\xed\xe9\x52\x0b\x5a\xcd\xa4\x57\x6d\x48\xce\x7a\xd0\x6a\x1d\xd0\x7a\xbd\x15\x75\x4a\x66\xef\xff\x65\xef\x5d\xdb\xdb\xc6\xad\x85\xd1\xef\xfa\x15\x12\x4f\xcb\x12\x11\x24\x4b\x99\xb6\x6f\x37\x1d\x44\xc7\x49\x9c\x89\x3b\x89\x9d\xda\xce\x64\x66\x14\xbd\x29\x2d\x42\x16\x26\x14\xa9\x82\x90\x1d\x8f\xa5\xff\x7e\x1e\x2c\x5c\x08\x90\x94\x9d\x76\x77\xef\x73\x9e\xf3\xee\x7c\x88\x45\xdc\xaf\x0b\xeb\xbe\x2c\x82\xfa\x28\x80\x6d\x05\x77\x19\x4e\x90\x31\x89\x10\x9b\xf5\x4b\xcd\x48\x8c\x92\x3d\x40\x30\x43\xed\xa8\x81\x75\x02\x46\xbc\xbb\x9f\xe0\x87\xf0\x89\xca\xa7\xcc\xbf\x05\x03\xb4\x5c\x16\xa3\x30\x68\x7e\xfb\x1a\x7e\xaf\x55\x21\x63\x1a\x5a\xfd\x46\x2d\x68\xd6\x03\x87\x20\x0c\x23\xde\xb2\x9d\xa8\xfd\x5d\xe1\x76\xa1\xeb\xab\xb0\xe7\x51\xad\x04\x24\x7c\x4f\x45\xc2\x31\x77\xcc\x3b\x1f\x7d\x90\x72\xfb\x76\x3a\x27\x94\x83\x6e\xab\x7d\x31\x2e\xa8\x10\x19\x75\x8d\xe6\x74\xb3\xdd\xdb\x25\xcd\xdd\x74\x56\x76\x4d\x73\xa9\x7c\x54\x98\xe6\xbc\xa9\x98\xd3\xc7\x5f\x19\x84\xe9\xb1\xcc\xee\x04\x9b\x69\xec\xc3\x31\x12\x08\xc1\x20\xe1\x44\x5a\xec\xc5\x5b\x1a\x72\x64\x4f\x4a\xa1\xcc\x5d\x7a\x63\x2d\x1e\x90\x34\xe7\x54\x38\x0c\x96\x42\x8b\xe2\x2d\x9b\x95\x85\x21\x6b\xa8\x8c\x7a\x3e\x4d\x40\xee\x21\x14\x13\xc6\x27\x64\x2a\x8b\x31\x63\x62\x84\x83\x0f\xf2\x89\x67\xf9\xb5\xb2\x29\xe8\x1a\xe5\xd3\x4e\xe5\x35\x40\xc1\x25\xd7\xd2\x58\x11\xc8\x27\xaa\x85\x64\x9a\x38\x52\x04\xe0\x09\xea\x1b\x34\x9d\x61\xed\xe8\xa3\xe6\x0b\x6e\x84\x26\x91\xe9\xff\x48\x08\xba\x5a\xc3\x08\xe4\xd3\xe2\x6c\x97\x28\x40\xda\xac\xc9\x71\xfb\x82\xa1\xb8\xad\xee\xde\x7a\x27\xb5\x47\x5d\x80\x1b\x3e\x0f\xc0\x34\x51\x84\x1c\xec\x62\x79\xcb\xe9\x6b\xc1\x38\xf6\x98\x5c\x19\xb6\x29\x70\xa0\x40\x8d\xa3\xec\x16\x79\x37\x85\x60\x50\x10\x66\x4b\xf1\x9e\x0e\xcd\xa1\xf4\xa7\x51\xc5\x60\x10\xee\xd2\xfb\x7a\x16\x2e\xfc\x03\x3e\x07\x75\xac\xa2\xa3\xd6\xcd\x23\xed\xa4\x50\x53\x3c\x7b\x1b\x51\x24\x17\x5b\x11\x47\x15\x26\xa8\x94\xbf\x9b\x76\xa1\x0f\x92\x5e\x0d\xdb\xc0\x96\x11\xf4\x46\x38\xf0\xf0\xcb\x00\x4f\xb5\xe5\x73\x0d\xef\x6c\x6f\xc0\x82\x31\x05\xbe\x28\x16\x75\xec\xb3\x7a\x1f\xaa\x3b\x4c\x11\xd6\xc7\xc9\xdd\xbc\xcb\xf3\xa3\xd3\x8b\x93\xcb\x93\xb3\xd3\xee\xcb\xb3\x77\xef\xdf\x1e\x5f\x1e\x0f\x03\x84\x3d\xe6\xa7\x31\x2f\x52\xc8\x43\xa2\xc8\xf3\x28\x71\x2d\xe5\x0a\x54\x31\xcd\x3d\x63\xc8\x8e\xaf\x96\xac\x83\x99\x27\x98\x3a\x3e\xc0\xab\x2e\x30\x35\x56\xaf\x3b\xc5\x0e\x4a\x00\x39\xf1\xf6\xbf\x1d\x29\xa9\x14\x87\xd7\x09\x17\xb0\x7a\xb0\x60\xa5\x8b\x01\x69\xab\x7f\xf5\x46\x15\x43\xfa\x95\x09\x9a\xba\x4f\x15\xef\xf7\x91\x0a\xcf\x14\x31\x5b\x40\xbe\x42\x6a\x78\x56\x1a\xee\x02\x29\x07\x62\x55\xb2\xb7\x73\x49\x03\x4b\x00\xe6\xa7\xc8\x35\x70\x55\x96\x19\x74\x21\xcb\xc9\xbf\x91\x40\x1e\x38\xb2\x84\x7f\x35\x85\x8e\xc3\x23\xa0\x2e\xc3\xbd\x49\xf2\x17\xc3\x4d\xae\x29\x7d\xeb\xc4\x0d\x6e\xb1\xb3\x02\x40\xaa\xd7\x17\xc0\x8e\x0e\xd6\x00\x8a\x54\x4b\xe0\xc8\xc1\xbe\x65\xba\x63\x2c\xfc\x35\x57\xd7\x2b\xd5\x9b\x59\xef\xba\x3a\xb7\x3a\xf8\xcf\x19\xff\xa0\x2a\x44\xf2\x85\xf7\x2b\x4b\x0a\xbf\xd9\x01\x55\x15\xff\xc9\x96\x75\x2d\x68\x72\x54\x91\x4d\x1b\x74\xaf\xce\xa1\xb3\xec\xc9\x3e\x1e\x8b\x87\x8e\x6c\x76\x0e\x50\xfa\x76\x42\x59\x5e\x4e\x8f\x0e\xd6\xd0\xb9\xf5\x59\xae\x83\x68\x63\xc8\xd2\xc6\xe0\x11\xca\x1b\x53\x03\x44\x51\x1f\x74\x78\x5e\xc3\x6c\x47\x01\x9e\x0a\xe3\xab\x08\xeb\x96\x8c\x57\x26\x03\xb8\xf6\x73\x95\x60\x0a\xad\x4b\xbf\x9f\xf1\xa1\xc5\x6b\x09\x11\x95\x44\xb6\xe2\x23\x33\x00\x41\xdc\x3b\x8b\xb0\x83\x70\x93\xe4\x8f\x28\x07\x71\x69\x5e\xbd\x12\x0e\x7f\xb9\x50\x0a\x33\x95\xd2\xae\xd3\x8c\x4e\xb4\x53\x97\x2d\xd6\xd3\x22\xef\x06\x03\x70\x92\xc5\xe0\x47\x94\xe0\x87\xbb\xae\x64\x0f\x9b\x52\x52\x62\x96\xa5\xef\xe8\x78\x4c\x44\x4d\xe1\xbc\x95\x5b\x1c\xcb\x85\xc0\xbd\x91\x5c\xde\x1a\xd0\x7b\x00\x46\xd2\x86\xd6\x56\xf5\x59\x92\x7b\xff\x8a\xc5\xd3\x19\x56\x40\x10\x7e\xa9\xed\x93\x3f\x2d\x68\x91\x1f\x00\x22\xe2\xe9\x6c\x87\x37\xc6\xcd\x97\xf2\xe2\x96\xb4\xc6\xef\xc8\x48\x31\xcd\x67\x78\x4e\x92\x69\x3e\xeb\x64\x61\xa8\xbd\xa6\x10\x42\xe6\xea\x17\xd8\x48\xc9\x77\x8c\x4f\xa2\xd2\xde\x68\x58\xb0\x39\xc2\x59\x18\x96\x06\x76\x1b\xc9\x76\x86\x50\xbc\xd9\x6e\x33\xb3\x57\x3d\xd9\x96\xfe\x3d\x89\x36\x4a\x4b\xbb\x06\x7b\x74\x7b\x28\x2e\x1d\x48\x69\x64\x75\x6a\x12\x66\x02\x98\x55\x6e\xbf\xcc\x5c\x1a\x63\x90\xb3\xb2\x08\x97\x66\x83\x92\x46\xaf\x1a\x14\x63\x5d\x60\xc8\xe9\x0d\xe5\x25\xa4\xc8\x8d\xac\xf0\x8f\x56\xf5\x18\x5a\x79\x5f\x00\x96\xb6\x1b\x2d\xce\xdb\xca\xba\xd2\x0b\xa0\xab\x05\xe8\x67\x93\x2a\xfd\x30\x51\x2a\x20\x36\x70\x5d\x3e\x4d\x66\x9d\x4d\x54\xe0\x4a\xa5\xda\xe8\xa4\x36\x24\x36\x80\xd0\x2b\xe3\x13\x35\x94\xc2\x57\xbe\x6e\xf3\x1f\xb5\xdd\x7a\x1a\xda\xda\x41\x73\x9d\x69\x6a\x78\x1d\x60\xf6\x8e\xe7\x84\x3e\xe4\xf6\x08\x2f\x88\xeb\xb9\x88\x87\x61\x8f\x3e\xe8\xae\x08\xa7\x84\xd6\x89\x43\xdf\xfb\x11\xc7\xcb\x7a\x9b\x6d\x4d\x36\x3c\x1c\x75\xe6\xdb\xed\x62\xbb\x4d\xb7\xdb\xe5\x44\xcf\x09\x4a\x48\x6c\x32\xd3\x92\xc8\x0a\xbf\xcc\x40\x1f\x80\xef\x7d\x0c\x1a\xe4\x95\xdd\x6a\xe5\xf9\x4e\xd4\xa9\xa3\x1c\x29\x1f\x29\x92\x00\x9b\xe6\xb3\x30\xd4\x91\x26\xe5\x87\xe6\x57\x19\xb9\x98\xff\x06\x00\xe0\xdf\x37\x0c\x09\xfc\x31\xc3\x7c\xa6\xe2\x22\xf0\x3d\x6e\xc1\x5c\xa3\x78\x38\x65\x23\x50\x93\x30\x51\xa0\xc0\xc1\x92\x75\xfb\xcd\xe4\x31\x2b\xa6\x9b\xe1\x17\x7a\x37\x23\x1b\x1d\xe2\x8c\x6b\x07\x84\x9b\xa1\xee\x61\x5f\x77\xb5\x8a\x56\x35\x51\x31\x4f\x7d\xea\x7e\xbf\xe2\x6e\x83\xda\x53\x4f\x33\x2f\x56\x06\xaf\xe6\x0f\x62\xda\xe6\xe1\xab\x4b\x72\xbc\x13\x0e\x1b\x6c\x9a\xac\xf9\x57\x70\xa9\x5d\x1a\x86\xae\x62\x87\xe5\x94\xe2\xba\x11\x79\x6b\x9f\x08\xb8\x87\x54\x3b\xb0\x73\x2f\xbe\x0a\xc5\xb7\x53\x0b\xd3\x1c\x84\x7c\x72\x5d\x5f\x79\x95\x07\x8a\x87\x46\xc6\x5a\x47\x06\xd6\x16\x38\x97\xe3\x10\x05\xf1\xd0\x7b\x67\x14\xed\x3c\x88\xfd\x0f\x16\xde\x47\x9b\xd7\x20\x34\x27\x23\xe5\xc3\x32\x62\x24\x91\x78\x5c\xe4\xbf\x75\x53\x3e\x43\xf2\x95\xd6\xba\x2d\x85\xe2\x3e\x01\x6e\x58\xb8\xba\xb4\xcd\xeb\x91\x60\x63\x50\xe9\x51\x6c\x62\xb6\x87\x0f\x67\x5c\x2a\xf9\x35\xa2\x04\x7b\x4f\xaf\xc2\xec\xd4\x23\x51\xf7\xfc\x03\x73\x0d\xc3\x65\x3b\x61\x6b\x9e\x10\xe7\xe9\x68\x68\x67\x0b\xab\xe5\xdb\x30\xd4\x70\x8d\x23\x35\xf9\xa1\xfe\x46\xc8\xe8\xa1\xef\x95\x3a\x6a\xd5\x56\x50\x1a\x78\x50\xd2\xa8\xc4\x64\x72\x6f\xfd\x97\xcc\xaa\xe2\x3f\xe0\xb5\x5f\x13\xc2\x0e\xa3\x29\xa2\xc8\x38\x2c\xd2\xc6\x8e\xae\x8c\xe4\xb2\xd8\x13\xdb\xe1\xdf\xe5\x03\x76\x9f\xb7\x98\x49\xa4\x43\x2f\xb5\x8e\xd9\xca\x56\x7a\x63\xa4\x61\xbf\x3f\x27\xcd\x7a\x01\x8a\x69\x45\x53\x96\x08\xe7\x29\xf9\x6f\x9a\x54\xb7\x75\x5c\x2a\xac\xa3\x3c\x9d\x0b\x4e\xcb\xbd\xb1\xb0\x1a\x9c\x7f\x4e\xc4\x44\xd4\xb8\xfc\x79\xcd\x77\x9f\xef\xcb\x29\x9f\x8e\x2c\xed\x6f\x98\x5d\x60\xb4\xc0\xf2\xeb\x6e\xd2\xd5\x03\xf0\x2c\x18\x8c\xe4\xa5\x0d\xbd\x71\xf8\x60\x0c\x53\x6c\xec\x4f\x5a\x68\x93\xed\xd6\x97\x3b\x19\x30\xd3\xc2\x23\x2b\x5c\x87\x5a\xc2\xc7\x14\x84\xeb\x55\x2b\xb1\x5e\xb5\x5c\x97\x5a\x89\x5a\x49\xa8\xf2\x91\x89\xe5\x5e\xa9\xf1\x9e\x13\x6f\xbb\xf3\xc4\x40\xff\xc5\xa7\xa3\x52\x87\xc8\xc0\x70\x8c\xb0\x29\x44\xa5\x62\xd3\xf1\x4c\x6b\x38\xd7\xf9\x8d\x80\xa9\x95\x0f\x49\x9f\xf0\x42\x62\x06\x29\x19\xe1\xa5\xc1\xf4\x5d\x7d\xff\xc3\xf4\xd9\xf2\xb0\xdf\xd7\xea\x97\x6b\xaf\xc8\x34\x9d\xe1\x15\x59\x3b\x86\x51\xa8\xb3\x89\x16\x78\x65\xdf\xfe\x85\x87\x7c\x26\x75\x45\x85\x0a\xa7\xa4\x78\x01\x2b\x09\x03\xdd\x2f\xe7\x6a\xe7\xa9\xda\x50\x24\xdf\x28\x29\x98\xde\xcd\x34\xef\x5d\xb1\x6f\xac\x06\x84\xb7\x4c\xb9\xd2\x33\xe7\x96\xd7\xd8\x32\x2c\x87\x3c\x96\x07\xdd\x6d\x15\xc2\xcf\x38\x77\x0c\x22\x4f\x37\x24\x34\x0a\xc1\x6f\x61\x62\x37\xf1\x6f\x57\xf9\xa9\x44\x10\xb0\x53\x1e\x08\x46\x32\x1b\x6c\xec\x19\x0b\xc3\x64\x3a\xb7\x02\x1d\x7a\xd8\xef\xcf\xd1\x21\x5b\x44\x73\x42\x6c\x39\xbf\xf7\x85\x7a\x39\x3a\x0b\x97\x4b\x9b\x58\x77\x69\xf3\xbe\x09\x92\xe2\x24\x68\x7d\xab\xb7\x91\xb3\x1d\x65\xb5\x1d\x0d\xc5\xfd\x05\xce\x70\xa9\x83\xd8\xba\xcf\xad\xdb\xa7\xd2\x61\xe3\xdb\x6d\x2f\x35\xe2\xdf\xb4\xa3\xfd\x45\xed\x3a\x9b\x68\x89\xb9\xd1\x09\xf7\x48\x1a\x7b\x2b\x6e\x24\x02\xbe\x42\xab\x3a\x02\x7e\x83\xc2\x70\xd9\x96\x18\x2d\xa7\x37\x33\xb2\x9a\xde\x54\x04\x62\x1a\x86\xbd\x35\x74\xe5\x6e\xfc\x7f\xf1\xb5\xae\xae\xb4\x07\xff\xfd\x63\x17\x51\x0c\xb7\x1d\x62\x0b\xa9\xa7\xb6\xee\x95\xef\xbf\x62\x6c\xdf\xce\x3e\x1f\x63\xf5\x76\x6a\x53\x1e\x13\xdb\xe0\x37\x13\x21\x02\x22\x3d\xb8\xc1\x21\xdc\x48\x10\x7e\xbc\x07\x5e\x8b\xf4\x60\x99\x4c\x1e\x26\xf5\x59\x0b\xda\x5e\x26\xca\xa9\x63\x25\x9d\xd8\x6e\xa3\xd6\x02\xca\x86\x72\xf7\x2f\x04\x8e\x48\xca\x64\x4d\xfe\x26\x7f\x64\x19\xf9\x55\xfd\x55\x92\xbf\x94\x9c\x4b\x14\x32\x99\x53\x72\x82\xc1\xdd\xc9\x92\x9c\xea\x1f\xa6\xc4\x6b\xf0\xde\x00\xfc\x26\xf2\x1b\x86\xb5\xa1\x9c\x7c\x80\x5f\x79\x91\x52\xb6\xb8\x23\x5f\x30\xe8\xb0\x2e\xd8\xf5\x86\x53\x22\xd1\xd2\x22\x27\x6b\x2a\xff\x2e\x16\x64\x45\x2b\x07\x10\xe4\x47\x6c\xa4\x24\xe4\x1f\xca\x27\x1d\x79\x83\xe9\x70\xc1\x32\x41\x39\xf9\x1e\x86\x7b\x97\x4b\x02\x1d\x76\xec\x52\x47\xcb\x1f\x5a\x43\xfd\xe1\x3c\x29\x45\x7b\xfc\x09\x46\xee\x57\xec\x2b\xcb\xe3\x56\x67\x29\x85\x86\xb3\x45\xae\xc7\xa5\xbe\x16\x0b\x6c\x05\x0a\xc4\x3d\x31\xb8\x6d\x13\x34\x98\xa0\x3b\x5c\xb8\xdd\x98\xb8\xe5\xd6\xe7\x83\x8d\x5c\xee\x06\xe4\xbb\xbc\x5b\x53\xad\x99\x6d\x5a\x54\xf1\xbd\xaf\x68\x37\xb1\x51\xff\xad\xf0\x2a\xd7\x5e\x7c\x18\xe1\x10\xde\x0f\xdc\xd7\xcb\x9f\x20\x06\x1d\xa8\x40\x60\x26\x18\x96\x00\x52\x44\x73\x00\x77\xb8\x58\x2c\xe2\xd6\x27\x48\xb5\xd9\xa9\x74\x09\x54\x93\xa0\xd8\x56\xb5\x65\xa3\x70\x31\x1d\x3b\x33\x2a\xf0\x58\xbb\xdd\xd5\x23\xd8\x61\xbd\x4e\x71\x43\x66\xab\xb0\x29\xd5\x93\x0e\x4c\xc8\x90\xeb\xe0\xae\x16\x4b\x2f\x1a\x61\x36\x2d\x66\x08\x9c\xe9\xed\x76\x1d\x7f\xef\x99\xd6\x29\xbb\x67\xa0\x24\x0d\x31\x6e\x7a\xe3\x9d\x6b\x89\x69\xd6\xff\x69\x8f\x34\x80\x87\x0d\x02\x25\x47\x22\xff\x23\x62\xc7\x86\x70\x4e\xa2\x02\xe9\x37\x6c\x3a\xab\x05\xdc\x90\xf3\x90\x0b\xac\x83\xbf\x42\xac\xe6\x98\xe2\x75\x72\x97\x15\x49\x1a\x83\xd7\x0a\x31\xfc\x7c\xbd\x61\xe9\x0f\xf4\x0e\xb3\x54\x7e\xb1\x14\x53\x39\xf0\x53\x55\x38\xa5\x22\x61\x99\xcc\xe0\xb4\xdc\x64\x02\x83\x33\xbc\x93\x34\xe6\x92\xfe\x95\xa5\x33\x09\x3f\x64\x01\xf8\x81\x05\x5b\xd1\x0b\x91\xac\xd6\xf1\x2b\x49\x9f\xe5\xc5\x6d\x84\x30\xc8\xb7\xe2\x62\x1a\x54\xd3\x1f\xdc\x32\xb1\x1c\x80\xe2\x79\x30\x9b\x54\xfa\xfe\xa6\x21\xed\xa4\x6d\x87\xc2\xb0\xa4\xe2\x92\xad\x68\xb1\x11\x9e\xce\x90\xd9\x0c\x4a\x46\x87\xb4\x8a\xd6\x43\x0d\x43\x55\x10\x88\xa2\xc8\x89\x18\xea\x29\x77\xf8\x50\x4e\x96\xf0\xe1\x17\x7a\xd7\xe7\x43\x96\x62\x1d\xad\xe7\x7b\x37\x59\x4f\x11\x73\x65\xdf\x08\xec\x16\xa3\x29\x0f\x29\xea\x0b\xe1\xc2\x0a\xf1\x84\xf6\x59\x64\x7a\x42\xbb\x2a\xaa\xec\x0e\xe1\x3f\x8d\xfc\xa0\x26\x46\x75\xa4\xc5\xeb\x0a\xa8\x81\xbb\xba\xf4\xca\x98\xcd\x9c\x00\xda\xa9\xd0\x30\x99\x1e\xcd\xb1\xa8\x1e\x4f\xd0\x8d\xc0\xdc\x8d\x4b\x82\xee\xbd\xb0\x20\x26\xce\xb9\xdf\x83\xd7\x63\x18\x72\x15\x95\xca\x4b\xb5\xc0\x8f\x90\x6c\xe2\xdf\x4a\x65\x84\xff\x19\x90\xae\x09\xc4\xc3\x30\xa7\x05\xc5\x4f\xdd\x3c\xb9\xb9\xc6\xe6\x13\xd4\x37\x56\x5e\x61\x14\xdf\x44\x46\x88\xe8\x3c\x47\x10\x2c\x97\x10\x0e\x4d\x73\x14\xa7\x8a\x46\x74\xc9\x7b\x37\x4e\xbc\xf6\xb0\xb6\x83\x1f\x71\x8b\x07\x1b\x3e\xa9\x5f\xf6\x42\xc1\xeb\xa6\x35\x37\x38\xfd\x67\x6d\xd6\xaf\xfc\xee\x9e\xda\xf8\x1a\x38\x37\x92\x31\x66\x07\xc2\x76\xbb\x88\x63\xe1\xcf\x23\xdf\x6e\x23\x15\xbd\xa0\x39\xa1\xc6\x8c\x6c\x61\x35\x27\x04\xef\xa0\xbe\x1c\x9d\x5e\x1e\x86\x4c\x71\xa5\x54\x01\x65\xfc\x4d\xd5\xbc\x65\xab\x2a\x30\x89\x17\x4c\xc5\x1c\x3b\xb9\x27\x48\xe5\xdb\xc8\x33\x4c\x2f\x4f\x94\x13\x81\x74\xec\x69\x89\x4f\x9b\x03\xaa\xa4\xba\xee\xe3\x40\x98\xdb\x86\x82\xcd\x20\x4a\x95\x37\x4e\x2c\x69\xae\xd7\xa4\xf0\xdd\x62\xc8\xc1\x16\x68\x67\xce\xe2\x4e\xeb\xbd\x78\x01\x59\xd0\x3d\xb5\x27\x45\x9e\x43\xf3\x3b\xa2\xf6\xb0\x60\x3f\xb6\xc7\xba\xee\x13\x59\x9f\x39\x49\x4e\x9b\x3a\x44\x60\x93\x4c\xc6\xd8\x94\xda\x5c\x95\x73\xce\xae\xaa\x80\xb0\x93\x62\x58\x81\xa9\x30\xdc\xc8\x17\x31\x5b\xb0\x2c\xa3\x69\x80\x29\x8a\xcd\x69\xb9\xc3\xd4\x35\xe3\x5e\x3d\x38\x02\xd5\xeb\x53\xec\x0e\xc6\x34\xb4\xf4\x1b\xba\xa9\x8b\xfd\xfc\x51\x82\xc5\x9d\x36\x94\xa5\xb5\xfb\xc4\xa6\xc9\x8c\x08\xf9\xa7\x3f\x9e\x11\x0e\x3f\x9e\xce\x48\x0e\x93\x4d\x60\x25\xf5\x98\xdc\x49\x54\x5d\xdf\x79\xe8\x9d\xdb\x29\xb7\xf3\x81\x28\x84\xb5\x15\x1a\xc3\x71\x76\xd6\x29\x0e\x14\x7e\xa4\x96\x0c\x8f\x5c\xe5\xb8\x8a\x61\x8f\x19\x68\x3b\x9a\xa7\x45\x45\x50\x15\x55\x04\x55\xf2\x1d\xca\x89\x98\x96\x33\x50\x8b\x2a\xfb\x7c\x86\xf3\xc9\x55\xa4\x58\xa0\x09\x8a\x59\x94\x48\x4c\xb7\x65\x0f\xc9\xc8\x09\x23\x74\xd5\x20\x14\x71\x42\xda\x00\x03\x2e\x89\x32\xa9\x48\x90\x3c\xc7\x8c\xf0\x28\x77\x64\xde\xa5\x8a\xf5\xb9\x51\x28\x04\x23\x79\xc7\x61\x19\xaa\xc5\x01\xf4\x86\x10\x31\x59\x45\x02\xd7\xd0\xa5\x23\xa3\x98\x56\x76\xe7\x06\x73\x9a\x27\xb9\x52\xa1\xd5\x54\x47\x22\xba\x65\xb2\xa2\xa6\xe4\x30\x40\x28\xee\xc1\x1b\x0e\x2d\x16\x28\x4e\x26\x69\x24\x30\x43\xb1\x4c\x95\xe0\x16\x3e\x9e\x2a\xd6\xd1\x0a\xbe\x9c\x0d\xbd\xf6\xc3\x2f\x2a\xb6\x8f\xdd\xc6\xb1\x62\x6d\xf7\xe8\x76\xfb\x54\xff\x14\xa8\xd2\x05\xf7\x2f\xc1\x7c\x99\xb0\xdc\xc4\x33\x53\x41\x12\xe0\x7f\x45\xa1\x78\xe7\xd0\xd1\x02\x56\xc4\x4a\xf5\x8c\x44\x73\xcc\x2d\x57\x49\x6f\x7c\xdb\x89\xaa\x75\xc7\x5c\x77\xd0\xe8\xa6\xe2\x65\xb9\xd0\xa7\x24\x30\xa1\x09\x8d\x45\xa7\x09\xd2\x2d\x14\xba\x8a\xe4\xf1\x29\x71\x02\xcf\x84\x05\xd7\x37\x8f\x46\xd3\xb1\xee\x60\x8d\x86\xcf\x4b\xcf\xe4\x4d\xa9\xd9\x18\x87\x6b\x10\xba\x60\x6e\x55\xf3\x3f\x83\x02\xcf\x59\x7e\xae\xc8\x06\xed\x13\xe1\x33\x2b\x3f\x94\x2c\xbf\x56\x84\xb1\xa2\x0d\x08\x21\x67\x8d\x5c\xcd\x87\xaf\x3c\xd3\xc9\x67\xd8\x94\xca\x99\x50\x04\xbf\x56\xc8\x33\xc8\xe3\x83\xbe\x62\xa1\x5a\xbb\x14\x48\xdf\xa1\xed\x76\xa4\xf6\x56\x5f\x29\x33\x66\x4e\x57\x09\xcb\x59\x7e\xed\xa4\x00\x44\x73\x3c\xc8\x9b\x59\x53\x30\xce\x54\xfa\xe5\xe0\xc7\xce\x26\xec\x21\x9b\x9d\x0e\x8d\xaa\xba\x5e\x52\x88\x40\x5c\xe9\x4d\x5a\x48\x66\x88\x67\xdd\x61\x32\x5f\x1e\xe7\x82\xdf\x45\x74\x9a\xcf\x70\x0e\x12\x20\xc3\xed\xa4\xf3\x2f\xaf\x37\x19\xc0\x28\x30\xa2\x57\x43\x6a\xa4\xbb\x87\x80\x2d\xa2\x11\xb1\xce\xe2\xcc\xcc\x3d\xb7\x7e\xe6\x14\xaf\x23\x6f\xb8\x14\xd5\x56\x47\x89\x7a\x24\xa4\x00\xaa\xf4\x5d\x72\x77\x45\x2f\x97\x34\x4f\xae\xb2\xa6\x50\xd3\xbd\xaf\x2d\xc7\xcd\x9a\xbf\x34\xcf\x88\x0b\xe4\x7a\xa3\x8e\x02\x64\xd4\x7d\x90\x37\xe8\x3e\x31\xa0\x0c\x5e\x7e\xc0\xf6\x1c\x87\xca\x6a\x69\x51\xfd\x75\xd1\xd0\x43\xd1\xd4\x47\xc2\x3e\x6b\x58\x54\xcf\x1a\xe6\x15\x4a\xd1\x42\x49\x32\x54\x6f\x64\x2c\x6b\xbb\xb5\xf6\x5c\x0c\x2b\x8a\xa7\xb7\xdd\x3c\x9a\xa3\x0e\x80\xc5\x64\xb2\x8a\x4a\x09\x16\xa3\x45\x54\x62\x89\x05\xe9\x51\xde\x32\xc3\x1f\x38\x12\x11\x58\x21\x78\x11\x57\xfc\x7c\xd5\x66\x1b\x3a\x29\x8c\x73\x42\x89\xa9\xec\xad\xee\x3a\x55\x34\x21\x55\xaa\x93\xd8\xd8\x5b\xed\x80\xb0\x15\xfb\x9f\xb8\xeb\xe3\x1d\x11\x83\xd7\xd9\x02\xe7\xb0\xe0\xce\x12\x3a\x87\x2b\x3d\xda\xcb\x26\xf5\x2e\x55\x25\x78\x60\x15\xba\xd2\x02\xb0\xc2\x10\x5e\x98\xc9\x2a\x62\x72\x0c\x51\x73\x10\xa6\x13\xbc\xf7\xb2\x21\x3b\x40\x53\xa9\xb1\x32\xb5\x6b\x36\x18\x78\x57\x68\x2a\x66\x84\x43\x1b\xee\xf2\x3f\x70\x75\x3a\x12\x95\x6a\xd0\x13\xae\x7a\x79\xcb\x41\xdc\xa1\xc7\xcb\x3e\xb5\x65\xdb\x82\x31\x7c\xeb\x5c\xd4\x0b\x7e\x0f\xcb\x1e\xbb\x48\xa6\xe2\x7c\xf1\x5d\x6c\xf2\x2a\x64\x8a\xd3\xa4\x2c\xf2\x98\x2b\xff\x60\xc7\x04\xd8\x7a\x9f\x83\x7e\x45\x6c\xf7\x83\x41\x80\x2f\xb4\x9b\xac\xb3\x7d\x46\xe9\xd5\x08\x59\x4a\x2e\x4c\xe4\x25\x45\x5d\x58\xb8\xde\x34\xba\x34\xc0\xcc\x4b\x73\xd0\x2f\x32\x9d\xe1\xe6\x53\x0e\xd6\xe3\xfa\x29\x47\x78\xae\xdd\x8d\xb5\x31\x9a\xc2\xd0\x13\xfa\xb6\x30\x9d\x7e\x2e\x36\x8a\xdf\xb4\x4e\xca\x12\x64\x61\x70\xf5\x78\xb7\x62\xa5\x94\x60\xed\xbf\x60\xbc\x14\x5d\xf3\x18\x76\x45\x01\xa9\xc6\x36\xc0\x41\x49\x02\xb4\xd3\x3e\x37\x5d\xd5\x5d\x3a\x69\x7b\x1b\x7b\x63\x00\xa8\xa2\x06\x2c\xb4\x66\x16\x4e\x2d\xa5\xd6\x9e\x6f\x29\x39\x83\x55\xe6\xe8\x7e\xa5\xbc\xdd\xef\x8c\x53\x80\xf8\xb1\x15\x78\x9d\xb0\x8c\xa6\x72\x42\x76\x12\xdd\x3f\x68\x28\xf9\x87\xb8\xfb\x3e\xa3\x49\x49\xbb\x1b\x80\x55\xb4\xfb\x87\x9c\xde\xfe\xa1\x5b\xac\xe5\xa3\x5b\x70\x0c\xf0\x4b\xbb\x30\x71\x17\xc1\x60\xa2\x57\x14\x90\x53\x9a\xca\x65\xac\xf8\x79\x43\x58\xa4\x87\x11\x0a\xf3\x56\xb4\x8b\x45\x25\x46\xb6\x10\x94\x7b\x18\x99\x70\xa8\xbc\x8a\x99\x62\xd4\xa1\x81\x37\xa0\xe8\x5d\xe3\x29\xf8\x91\x38\x55\xa0\x02\x68\xd8\x9b\x7b\xa3\x54\x79\xd2\x5a\x67\x0d\x8c\x44\xbb\x49\x19\x68\xb0\x5c\xb3\x53\xe1\x4d\xbf\x5d\x0f\xbb\x25\xe6\xbb\xda\xd9\xf8\xf6\x16\xd4\x49\x50\x0d\xe8\x37\x40\xc7\xf0\x6a\xc6\x83\xf9\x5a\x37\x0c\xbe\xdf\x39\xc6\x47\x98\x39\x88\x5a\x8e\xb0\xe2\x65\xe6\x2a\x4a\xc7\xb4\x98\x11\x3a\x2d\x2a\x49\x67\x42\x46\x87\x49\x45\x93\x25\xfd\x3e\xba\xe7\x53\x31\x4d\x66\x33\xa2\xc8\x4c\x6b\x47\x55\x0b\xd8\x50\xe1\x74\xb4\x55\x04\x32\x18\xb7\x0a\x3f\xa8\x23\x85\x77\x9a\xbc\x74\x37\xfb\x5e\x4e\xbd\xba\x27\x6e\x1c\x19\x9f\x29\xe3\x10\x81\x5f\xdc\x6b\xdc\xc2\x45\x7c\x2c\x26\x52\x7f\x8c\x30\x53\x58\x93\x5c\x2f\x0e\x8e\xa7\xb4\xfd\x7b\x25\xb0\x29\x66\xda\x11\xc4\xbd\x36\xa6\xec\x01\xdd\xdd\x78\xe7\x13\x04\x5e\x4f\x7c\x2e\xdc\x19\xaa\x82\xab\x2a\xb4\x2d\x71\xd1\xb6\xcc\x45\x81\xce\x24\x0a\x64\x79\x5e\x25\xce\x10\x2e\x0d\x5d\xda\x1b\x77\x58\x18\xf6\x8c\x22\x7e\x42\x2e\x23\x06\x61\xe8\x72\xb9\xbd\xc9\x4e\x29\x9b\xd5\x5b\xc9\xa7\x7c\x56\xd3\xc4\x92\xef\xfd\x06\x5b\x97\xcb\x40\xd8\xa6\xd1\x46\x62\x00\xbd\xea\xeb\x28\xaa\x28\x0e\x14\xfb\xe1\x57\x05\x82\x22\x5f\xab\x22\x12\xfe\xc5\xaa\x91\x1d\x66\x93\xf7\xd1\x06\xe7\xda\x09\x3b\x8a\xdf\xb9\x5f\xbb\x4a\x2c\xfc\xf9\x33\x00\x9c\xcf\x9f\x09\x75\xb9\x9b\xef\x7c\x86\x9c\x16\x1f\x47\x79\xa5\xa9\xce\x14\x7c\x65\x96\xce\xa3\x55\xed\xf7\x55\x6d\x9d\x79\x36\x84\xb3\xf3\x40\x38\x87\xaa\x47\x2f\x90\xca\xaf\x1e\x28\x52\xcd\x00\xfc\xa9\x64\x3e\x67\xf8\x4c\x49\x7d\x32\x0c\xf9\xed\x50\xac\x1e\xbc\x76\xe2\xd9\x26\x82\x0e\xbe\x41\xdd\x62\x2d\x9e\xb6\xae\x21\x9d\x27\xc2\xa8\x44\x83\xe9\x91\x16\xce\x68\xb0\x7e\xcb\xc4\xb2\x9b\xe4\xdd\x44\xf6\x10\x20\x00\x92\x67\x4a\x7c\xb6\x4f\xdc\x5f\xf1\x99\xe5\xd9\xae\x0f\x11\xd9\x53\xc8\xeb\x1c\x0f\x6b\x51\x94\xcc\xe9\x23\xe3\x40\x98\x77\x9c\x58\xd7\xed\x84\x9e\xb5\x9f\x94\xf0\xe2\x46\xfb\x19\x31\x60\x73\x9a\x5b\xbb\xba\x56\x04\x2e\x35\x86\x83\x6d\x99\x2b\x9d\x89\x2a\xd0\x23\x57\x45\xd3\xda\x19\xfc\xfe\xd5\x8f\x68\xb7\x6f\x8d\xbc\x16\x31\xb4\x53\xf9\x9e\x31\xc2\x16\x72\xec\x25\x43\xdc\x46\x15\xd0\xf7\xe5\x23\x3e\x73\x6a\x70\xce\x98\x58\xf7\xc6\xd6\x61\xce\xa3\xbe\x70\x76\xd1\x67\xe7\xb5\x38\x7f\xfc\x00\xbe\x8c\xce\xe0\x39\xb5\x47\xef\xec\xf1\x73\xa7\x45\xaf\xdf\x70\xfc\xec\x48\x4e\x6a\xb7\x08\xfc\x15\xc1\x35\x7a\xe9\x2e\xa1\x4b\x40\xdc\xc2\x9a\xbd\x7a\xd4\x79\x74\xdd\x96\x40\x2b\x74\x8e\x10\x6e\x7a\xef\x66\x66\x1d\xff\x15\x4f\x8e\x6d\x6c\x15\x0f\x73\xb6\xba\xaa\x3e\x6b\x24\xdf\xc7\x1a\xa9\x9c\x12\xd5\x7c\xb9\x30\xab\xb0\x6e\x4d\xbc\x34\x4d\x57\x67\xd3\x30\xef\x35\xaf\x1c\x64\xda\x9b\x95\x3c\x63\xf0\xb2\x43\xb0\x7a\x50\x76\x37\x1a\x62\x15\x3b\x85\x63\xf1\x28\x2f\xc5\x3f\x58\xa7\xf5\xed\x34\x37\x15\x37\x21\x2c\xb5\x0f\xa6\xa4\x89\x5c\xa9\x83\xc1\xc0\xda\x45\xd0\xe6\xc0\x2d\x93\x72\xb9\xef\xa8\xe9\xa6\x3c\x47\x5e\xaf\x6a\x27\x7a\xa7\x71\xdb\xb7\xff\x1d\xb7\xef\x95\xb3\x48\xaf\xff\x1b\x16\xc9\xd1\x84\xf8\x67\xd6\xe8\x2d\xac\x11\x98\x92\xb9\xcb\x64\x87\xfe\x9b\x72\x51\x23\x3b\xdc\x23\xa1\x55\x99\x14\x14\x50\xaa\x7a\x1f\x2a\x0c\xfc\x5e\x4f\x37\x36\x5a\xa1\x00\x55\x4c\x84\x87\x86\xc3\x6b\x8d\xb3\xd4\x34\x55\x2a\x67\xd4\xa0\x88\xae\x19\xac\x20\x0c\xc3\x62\xf7\xf6\x61\xd0\xf1\xe2\x5b\x41\x47\x63\xcb\x47\x98\x55\x9b\xfe\xef\x01\x15\x9e\xcf\xd4\xbd\x7c\xd8\xa2\xc1\x87\x2d\xf6\xf1\x61\x0b\xc3\x8e\x59\x25\xeb\xd7\x39\x61\xfb\x40\xcf\x7e\x9e\x8c\xd6\x84\xcf\x41\x20\x52\x87\x09\x4e\xdb\x12\x3e\x20\xed\x19\xd6\xa2\x5e\x75\x5e\xdf\x53\x2c\x30\x83\x22\x0e\x2b\xed\x31\x6e\x8f\x0f\x54\xde\xf8\x51\x8d\xdb\x78\x08\x93\x7d\xaf\xd3\x2a\x59\x77\xe9\xd7\x35\x38\xef\x4c\x3c\x7e\x41\xd2\x2d\xe9\xbc\xc8\x53\xcb\x2e\x08\x90\x44\x72\xdd\xeb\xd8\x8c\x6c\xa3\xc3\x43\x35\xf0\xa1\xd6\x3b\x28\xfb\x7e\xf8\x29\x74\xaf\xde\x0b\x05\x9e\x64\xa7\x6d\x37\xef\xc7\x07\x80\x46\x55\xea\x1f\x8d\x52\xca\xed\xb6\x2c\x24\x4f\xd8\x47\xf9\x16\xfd\x6e\xdf\xf9\x47\x35\xcf\x29\x75\xd9\xc2\x7f\xe6\xe0\xff\x0b\x1c\x77\x3f\xcc\xb1\x11\x02\xb7\xb0\xe1\xb5\x16\x56\xab\x3b\x09\xda\x23\xe4\xa3\x44\xf2\xbe\x8d\x55\xff\x6d\x17\xe3\xbe\x71\x68\x3b\x46\x1d\xd5\xb2\xdf\xeb\x17\xa5\xb2\x19\x2f\xac\xfd\x7c\xed\x9e\x24\x70\x4f\x0a\x13\x05\xb0\xba\x74\xc6\xff\xf2\x9e\x2b\xc4\xb7\xdb\xa8\x3e\xa2\x8f\xea\x71\x7e\xe1\xdc\xa3\xef\xff\x13\xf7\x48\xad\xb0\xbd\x4a\xff\xbd\x17\x49\x77\xfe\xed\x77\xe9\x77\xad\x77\x49\x6e\xd1\xcf\xf8\x07\x32\xaa\x96\xe4\x6f\xea\xbe\xcc\xe9\xf4\x87\x19\xa1\x58\xfe\xed\x8f\x67\x44\xe0\xa7\x84\x90\xe8\x87\x3e\x79\x8a\xc2\x30\xa7\xda\x85\xdb\x5f\x49\xb0\xc9\x95\x06\x63\x5a\x2d\xda\x2d\xcb\xd3\xe2\x76\xa2\xfe\x98\x57\xed\x27\xf2\x57\x70\x9e\xfa\x0b\xf9\x69\xf8\x6e\x23\xc0\xf7\xc3\xd9\x55\x49\xf9\x0d\xe5\xdb\xed\x4f\xc3\x8f\xf4\xea\x07\x26\xea\x39\x98\x52\xb7\x0b\xcb\x3a\x28\x69\xb6\x08\xc3\xb6\xce\x75\x8c\xa8\x30\x0c\xa6\x9a\xc1\xa7\x53\x66\x01\x21\xe4\x7e\x67\xa3\x15\xab\xa7\x4c\x67\x22\x2c\x68\xeb\x5c\x3e\xb0\x5c\xfc\xe5\x65\x96\xac\xd6\x34\x85\x3d\x69\xef\x95\xad\xd6\x05\x17\x17\x73\xce\xd6\xa2\x6c\x2f\xf2\x4e\x39\x30\x7d\xb9\x4c\xf2\x9c\x3a\xae\x2f\xb9\x13\xe3\xb5\xc9\x2d\x73\x90\x8a\x05\xc5\x63\xa4\x58\xde\x39\xc5\x8c\xe2\x82\xe2\x84\xe2\x92\xe2\x0d\xc5\x99\xdc\x2b\xe7\xd1\x1b\xd3\xef\x9c\x83\xbe\xa0\x0d\x55\xb1\x1f\x0e\xa9\xdc\xcc\xfb\x68\x24\x37\x99\xce\x50\x24\xff\xf4\xc7\x33\xa4\xbe\x0d\x77\x5b\xa7\x1a\xdb\x9d\x1f\xc8\x68\x47\xe9\x24\xda\x50\xa2\x97\x6e\x98\xd3\xaf\xe2\x92\xcd\xbf\xe0\xac\x4a\xbb\xa1\xbc\x64\x45\x5e\x0e\xf3\x22\xa5\xc3\x15\x5c\xf4\x83\xff\x1d\x4d\xe2\xe8\x53\xda\x47\x9f\x86\x68\xe2\xfd\xfe\xf4\x64\x2b\x7f\xff\xee\x00\x61\xff\x02\x64\x10\x94\x6b\x24\xb7\x2e\xa3\xd3\xf1\x2c\x0c\x83\xb1\xf9\x7a\x0a\x81\x7e\x28\x29\xa9\x38\x59\x69\x23\x19\x84\xf3\xb6\xc8\x9d\x1b\x1a\x2d\x24\x65\x1b\xff\x32\x89\x0a\x4a\x46\x38\x51\x6b\xf5\x8b\x4c\xc6\x25\x25\x69\x31\x87\x9b\xaa\x9d\xbc\x5e\xd2\xaf\xe2\xb4\x48\x69\x14\x04\x08\x27\x74\x58\xa8\xe3\x18\x95\x14\xdf\xcf\x97\x09\x4f\xe6\x82\xf2\x57\x89\x48\x94\x66\x6e\x6b\x9f\x25\x55\x51\x51\x0a\x4a\xfa\xfd\x82\xfe\xfe\xe9\x0e\xc5\x82\x4e\xa2\x88\xa9\xbe\xfd\xf3\x80\x86\xf2\x00\x8d\x87\x45\x6e\x1c\xdd\x2e\x68\x7b\xbb\x8c\x42\xd1\xa7\xc3\x75\x51\x0a\xdd\x48\x34\x92\x93\xcb\x8d\x98\x82\x10\xf2\xd7\xf6\xb8\x65\x13\x17\x31\xe5\x77\xfa\xe9\x78\x6d\x12\x03\x87\x8f\x1c\x20\x30\x23\xfb\xc7\x86\x71\x1a\x05\x37\x94\x8b\xaf\x41\x33\x94\x64\xf4\x33\xa1\x43\xbe\xc9\xcf\xf2\xb7\x45\xb1\xde\x6e\xf5\x87\xb6\x68\x46\x6e\x7f\x3f\xc3\x1e\xc4\xf2\xbc\x37\x7c\x8d\x41\xe2\x2e\x42\x90\x6b\x74\x82\xc8\xdf\xb0\xe6\x97\xb7\xd9\xc5\x38\x37\x83\xe2\x11\xda\x29\x6b\x00\x4a\x7e\xec\x68\xcd\xe2\x54\xa9\x09\x2e\xf7\xc4\xd0\x32\xca\x11\x80\x0a\x54\x57\x65\x2d\xaf\x4a\x31\x2c\xb4\x63\xff\xa8\x70\x55\x09\x2a\x3d\x27\x5d\x6a\xb1\x68\x2b\x06\x0e\xb1\xd4\x14\x96\x14\xef\x07\x91\x2d\x3c\x51\x95\x31\xfc\xfc\xf9\xfd\xf9\xd9\xbb\x93\x8b\xe3\xcf\x27\xa7\x17\x97\xe7\x1f\xde\x1d\x9f\x5e\x1e\x5d\x9e\x9c\x9d\x7e\xfe\xac\xde\xfb\x1b\x4a\x1e\x2f\x6a\x49\xde\x3b\xda\x65\x79\x37\x89\x1c\xd5\xd3\x00\x9c\xc1\xdc\x50\x74\xd3\x88\x8e\x79\x27\x2f\xdd\x9a\x46\x77\x14\xdf\xd0\xe9\x1d\x9d\x29\x60\x7f\x45\xc9\x7d\x52\x26\xeb\xf8\x6f\x58\xae\x6f\x9c\x52\xfc\xde\xb0\x42\xb0\xa3\xe7\x1b\x33\x9c\x64\x59\xfc\x2b\xae\x18\x20\xf1\x39\xe6\xc9\x9c\xc6\x27\x58\x92\x61\xf1\x29\x76\xa8\xb1\xf8\x35\xd6\x5a\xe9\xf1\x6f\x18\x74\xd2\xe3\x0f\xd8\x6a\xa4\xc7\x5f\xb0\xd5\x47\x8f\x13\x5c\xe4\xf1\x9a\x82\x4e\xf4\x8a\x62\x43\x37\xfd\x68\x48\xa6\x7f\xe0\x55\xb2\x8e\xdf\x60\x58\xfa\x78\x49\xb1\x7a\x27\xe3\xef\x77\x8e\x29\xc0\x15\x90\x62\x22\x52\x9a\xff\x4a\xee\xe5\x1e\xaf\xce\xc1\x93\x27\xbd\x4e\xf7\x49\xf7\xff\x5e\xb0\x8c\x9e\xdd\x50\x7e\xc3\xe8\x6d\xf7\x07\x36\xff\x92\x94\x65\x37\x63\x57\x3c\xe1\x77\x20\x79\x02\x58\xd1\x4d\xf2\xb4\x0b\x56\x58\xdd\x75\xb1\x5e\x53\x5e\x76\x73\x9a\x80\xa7\x7b\xc6\xbb\x5c\x4e\x08\xa2\xde\xd3\x8c\x2a\xc6\x3a\xb4\xad\x01\x64\x77\x3c\x1c\xff\x79\x38\x86\xa4\x8c\xcd\x69\x5e\x52\xf9\xfb\x65\xb1\xbe\xe3\xec\x7a\x29\xba\xd1\x1c\x75\x9f\x8e\xc6\x7f\xee\xbe\xa6\x29\xe5\x6c\x5e\x74\x7f\x61\x37\x45\x56\x40\xaf\xf3\x22\x57\x01\xa6\x0b\x5e\x76\xba\x4f\x64\xcd\xf7\x94\xaf\x58\x59\x6a\x4f\x5f\x4b\xca\xe9\xd5\x5d\xf7\x9a\x27\xb9\xa0\x29\xee\x2e\x38\xa5\xdd\x62\xd1\x95\x30\xec\x9a\x62\x39\x89\x24\xbf\xeb\xca\x41\x17\x92\xfe\x15\x0a\x83\xea\x26\xdd\x79\xb1\xbe\x93\xed\x81\xd7\x70\x56\x76\xcb\x62\x21\x6e\x13\xae\x66\x9b\x94\x65\x31\x97\xe0\x36\xed\x1a\xc0\xa9\x7c\x39\xc9\x15\x2b\xbb\x91\x58\xd2\x6e\x70\xa1\x6b\x04\x08\xfa\x49\x69\x92\xc9\x06\x21\xf4\x2b\xed\x9a\x5c\x40\x5a\x8a\x8d\xe8\x72\xaa\xec\x2c\x58\x91\xe3\x2e\xcb\xe7\xd9\x26\x95\x23\x31\xd9\x19\x5b\x31\xdd\x09\x84\x10\x90\x8b\x23\xe7\x2c\x9b\xde\x94\x14\xc3\x80\x71\x77\x55\xa4\x6c\x21\xff\x52\x98\xdf\x7a\x73\x95\xb1\x72\x89\xbb\x29\x2b\x75\x28\x6e\xdc\x2d\x65\x22\x2c\x35\x96\xb3\x39\x28\xb8\x44\x27\x60\x70\xf3\x62\xcd\x68\x69\x5c\xa5\x9b\x31\x42\x31\xd9\xd1\x5a\x2e\xae\xd0\xcb\x05\x0e\xd6\x6f\x97\xc5\xca\x9f\x0f\x83\x51\x2d\x36\x3c\x67\xe5\x52\x49\x28\xd3\xa2\x5b\x16\xd0\x2f\xe0\x23\x5a\x08\xbb\x28\xb2\xac\xb8\x95\x73\x94\xb8\x22\x58\x84\x95\xb1\xde\xc5\xcb\x25\x44\xff\xb9\xa1\x30\x2d\x75\x12\xf2\x42\xb0\xb9\x5a\x7f\xd8\x91\x75\xb5\xd3\x3a\xab\x5c\x26\x59\x26\xf1\x41\xb5\x7c\x34\x85\x4b\xef\xcf\x8c\xcb\x61\x94\x22\xc9\x05\x4b\xb2\xae\x7c\x48\x64\xbf\xf5\x19\x0f\xcd\x38\xde\x1c\x77\x2f\xce\x5e\x5f\x7e\x3c\x3a\x3f\xee\x9e\x5c\x74\xdf\x9f\x9f\xfd\x78\xf2\xea\xf8\x55\x37\x38\xba\xe8\x9e\x5c\x04\xb8\xfb\xf1\xe4\xf2\xcd\xd9\x87\xcb\xee\xc7\xa3\xf3\xf3\xa3\xd3\xcb\x9f\xbb\x67\xaf\xbb\x47\xa7\x3f\x77\x7f\x38\x39\x7d\x85\xbb\xc7\x3f\xbd\x3f\x3f\xbe\xb8\xe8\x9e\x9d\xcb\xd6\x4e\xde\xbd\x7f\x7b\x72\xfc\x0a\x77\x4f\x4e\x5f\xbe\xfd\xf0\xea\xe4\xf4\xfb\xee\x8b\x0f\x97\xdd\xd3\xb3\xcb\xee\xdb\x93\x77\x27\x97\xc7\xaf\xba\x97\x67\xd0\xa7\x6e\xed\xe4\xf8\x42\xb6\xf7\xee\xf8\xfc\xe5\x9b\xa3\xd3\xcb\xa3\x17\x27\x6f\x4f\x2e\x7f\xc6\xb2\xad\xd7\x27\x97\xa7\xb2\xe5\xd7\x67\xe7\xdd\xa3\xee\xfb\xa3\xf3\xcb\x93\x97\x1f\xde\x1e\x9d\x77\xdf\x7f\x38\x7f\x7f\x76\x71\xdc\x3d\x3a\x7d\xd5\x3d\x3d\x3b\x3d\x39\x7d\x7d\x7e\x72\xfa\xfd\xb1\x84\x8a\xc3\xee\xc9\x69\xf7\xf4\xac\x7b\xfc\xe3\xf1\xe9\x65\xf7\xe2\xcd\xd1\xdb\xb7\xb2\x37\xd9\xdc\xd1\x87\xcb\x37\x67\xe7\x72\xa0\xdd\x97\x67\xef\x7f\x3e\x3f\xf9\xfe\xcd\x65\xf7\xcd\xd9\xdb\x57\xc7\xe7\x17\xdd\x17\xc7\xdd\xb7\x27\x47\x2f\xde\x1e\xab\xde\x4e\x7f\xee\xbe\x7c\x7b\x74\xf2\x0e\x77\x5f\x1d\xbd\x3b\xfa\xfe\x18\x6a\x9d\x5d\xbe\x39\x86\x49\xca\x92\x6a\x98\xdd\x8f\x6f\x8e\x65\xaa\xec\xf5\xe8\xb4\x7b\xf4\x12\x3c\x69\x9d\xbd\xee\xbe\x3c\x3b\xbd\x3c\x3f\x7a\x79\x89\xbb\x97\x67\xe7\x97\xb6\xf6\xc7\x93\x8b\x63\xdc\x3d\x3a\x3f\xb9\x90\x2b\xf3\xfa\xfc\xec\x1d\xcc\x54\xae\xee\xd9\x6b\x59\xea\xe4\x54\x56\x3d\x3d\x56\x0d\xc9\x95\xf7\x37\xe8\xec\x1c\xbe\x3f\x5c\x1c\xdb\x36\xbb\xaf\x8e\x8f\xde\x9e\x9c\x7e\x7f\x21\x2b\xeb\xb9\x9a\xf2\x72\x93\x0f\x3a\x8e\x80\x07\x2c\x9e\x1a\xca\x38\xca\x52\xaa\x1d\xa7\x5d\x81\x99\xd2\x44\xfd\x19\xea\xa2\x84\x47\xad\x2a\xe7\xa0\xd4\x9f\xac\xd2\x09\x8d\x38\x8a\xc5\xf0\x3d\x40\x4b\x59\x7a\x87\x14\x61\xed\xb2\xcd\x3c\xd3\x2b\x85\xa6\x3c\xf8\x90\xb6\xe4\x19\xd8\xd4\x9e\x9b\x27\x37\xec\x1a\xd4\x01\x44\x9b\x28\x54\x90\x69\x70\x9c\x5e\xd3\x00\x07\x97\x9c\xa5\xf0\x62\x06\xaf\x19\xa7\x8b\xe2\x6b\x30\xd3\x2e\x05\x2a\x27\x55\x7d\x32\x46\xca\x98\xc1\xb6\x3b\xdc\x94\x94\x1f\x5d\x4b\xac\xd2\xda\xe3\x4c\xf9\x0c\x3d\x27\x23\x23\x2e\xb2\x61\xdb\x46\xbb\xc8\x18\x0b\xd1\x30\xd4\x2f\xbb\x7e\x5d\x27\x4d\xa1\x7d\x15\xef\xcd\xc5\xe7\xc0\xe0\xac\x37\xc2\x7e\x75\x4b\x75\xb6\x09\xd4\x25\xe1\x2d\x51\x2f\x84\xd0\x6e\x17\xd7\x3b\xe2\xed\x1d\x59\x4d\x8e\x3d\x1c\x4f\x6e\x5b\x05\x3d\x8f\x5d\xcd\x72\xce\xf0\x21\x1c\x12\xcd\x20\xa0\xed\x34\x9a\xab\x9c\xcd\xac\x02\xff\x18\xb4\xf4\x24\x9a\x20\x09\x63\xbd\xa2\xd3\x99\x59\xc5\x61\x71\x9b\x53\xfe\xca\xe0\xf5\xfa\xf5\xff\x91\xd1\xdb\xe1\x35\x15\x2f\x8b\xd5\x7a\x23\x68\x7a\x21\xee\x40\xa9\x0c\x5c\x07\x58\x56\xeb\x84\x4f\xc5\x2c\x76\x64\xac\x85\xe3\x9d\xe0\xcd\xe5\xbb\xb7\xca\x91\xa3\xec\xfb\x34\x59\xd1\x09\x8d\x21\x62\x1f\xcd\x81\x68\x90\x48\xf0\xb2\x28\x45\x55\x3d\xa9\x47\x51\xb7\x47\x73\x78\x55\xa4\x77\x9d\xf2\x96\x49\x74\xb8\x6a\x11\xdd\xcf\x93\x92\xaa\xae\x62\xf8\xf9\xe2\xec\xd5\xcf\x41\x5c\x99\xc0\x79\x93\x83\x46\xa0\xd8\xff\x65\x1a\x76\xca\xca\x5c\xad\xb3\xc2\x22\xe5\xfc\x78\x58\xdc\x50\xbe\xc8\x8a\x5b\x9c\x3b\x1f\x3f\xe1\xd2\xf9\xfa\xd9\x84\x8f\x8c\x92\x8d\x28\xb6\xe5\x9c\x17\x59\xb6\x95\xb9\x59\x72\x87\x74\x3c\x49\xde\x2f\xfb\x39\x9a\xd0\x38\x89\xe4\x1a\xd5\x43\xd5\x55\x5b\x2d\x8f\xa1\xc6\x84\xe4\x1a\x4d\x6a\xdf\x31\xd5\x02\x79\x1a\x86\xbd\xa8\xa7\x4f\xf0\xbb\x8b\x93\x7c\xbd\x11\xca\x5a\x5e\x93\x14\xdb\x6d\xcf\x2e\x9e\xf9\xf1\xae\x48\x29\xc2\x99\xac\x7c\xf0\xee\xe2\xe4\xb8\x3b\x1e\xe9\xf1\xb5\x5c\x46\x87\x2c\x9e\x3b\x63\x1c\x2b\x45\xb4\x4d\x3c\x06\xbb\x85\x49\x06\x3e\xa3\x3c\xb3\xa1\x7d\x7b\x68\x7e\x1c\x2b\x0c\xaf\x53\x81\x90\x79\x34\x1e\xa1\x89\xb7\xd9\x60\xd1\x05\x96\x04\xc5\x62\x51\x52\xf1\x1e\xce\x8d\x72\x82\x72\xc8\x95\x7f\x54\x0a\x34\xb5\x6e\xee\x82\x5d\x65\x2c\xbf\x3e\x44\x9c\x44\x94\xb4\x65\x21\xaf\x29\xcd\x74\x04\xd3\x34\x73\x9e\x2c\x2b\x28\x0c\xd5\x49\x52\x91\xfd\xd4\x01\x93\xbf\x27\x60\x26\x38\x0d\x2e\xdf\x48\x78\xf7\x4a\xfe\x27\x1f\xbc\x60\x66\x41\x57\xd5\x98\xa4\xc8\x4b\x89\x8b\xcd\xc1\x2d\x7e\xc4\x71\xb0\x2e\x8c\x07\x86\xc9\x42\x02\x77\x1e\xcb\x1d\xae\xdd\x40\x7f\x95\xe2\x7d\xcb\xe7\x19\xeb\xd4\xe3\x55\xbb\xf7\x6c\x92\x46\xee\x27\x8a\xa9\x67\x3e\x63\x62\x45\xa8\x98\x22\x06\x4e\x84\x21\xf8\x34\xb1\x60\xe3\xd1\xcd\x34\xe0\x64\x5e\xac\x64\x5f\x66\x3a\xef\x0b\xe3\x86\x13\x85\xb2\xf7\xe1\xab\xb3\x97\x40\x7a\x7d\x7e\x7f\xa6\x7c\x66\x7e\x7e\x7d\xf6\xf6\xed\xd9\xc7\x93\xd3\xef\x71\x4e\xf8\x84\xc6\x02\x33\xc2\x27\x22\xa6\xb8\xa8\xf3\x1b\xce\x95\xeb\xb8\x4e\x31\x2c\xa9\x00\x1f\x17\x51\x8e\x47\x08\x62\xf7\x8a\xe3\x3c\x8d\x18\x1e\x69\xf7\x8f\xb8\xc4\x1b\x52\xc8\xe1\xac\x8a\xfc\x28\x9f\xd3\x52\x14\x5c\xde\x8d\x84\xe5\x14\x54\xa2\x69\x8f\x90\x4d\x18\x0a\xf9\x67\xbb\xcd\xc1\xd5\x59\xc2\xf2\x32\x62\x66\xb6\xea\x0c\x10\x42\xa2\x92\x44\x09\xd9\xa0\x6a\x6f\xb7\x5b\x7b\x28\xca\x30\x5c\x44\xc9\x10\x54\x08\xf5\x6a\x40\x18\x2d\xd4\x23\x24\x99\x2c\xa2\x0d\x8a\x37\xda\x49\x97\xdc\x29\x73\xc6\x32\x00\x7e\x93\x65\xa4\x7e\x60\x81\x62\xb9\x1b\x69\x24\x10\x24\xf8\xf6\x4a\xe6\x45\xab\xeb\x1d\x3d\x1f\x3b\xca\xd8\x95\x6a\xd1\x78\x36\x71\x3f\xe2\x40\x14\xeb\x00\x73\x02\x7f\x41\x19\x27\x50\x80\xea\xb2\x58\x07\xb1\xfe\xfd\x96\x2e\x44\x00\xca\x5f\xf6\x3e\xb0\x45\x64\x17\x21\x37\x73\x06\xb3\x0a\x6b\x6e\xf4\xe0\xe9\x05\x67\x79\x7e\x09\xd5\x17\xcb\xaf\x75\x91\xed\x96\xd9\x18\x09\x53\x6e\x35\xc4\xa8\xfc\x5d\xf1\x11\x5c\x15\x8a\xc6\x1a\x3c\x6d\x5d\x83\xa7\xb3\x30\x74\xbf\x70\x4e\xd6\x91\xc0\xb0\x04\x08\x33\xf5\x91\xc9\x39\x23\x5c\x10\x3e\x19\x8c\xe3\x71\xe5\x5a\x50\x14\xeb\x3e\xc9\x9f\x14\x58\x3e\x0c\x42\x14\x2b\xf3\x25\x6b\xf4\x09\x83\xdf\x40\x71\xe8\x8f\x9a\x4d\x96\x19\x6c\xf0\x55\xaf\x37\xac\x6e\x1c\xc8\x05\xc7\x39\x51\x9f\xca\x12\xea\x5c\xb6\x12\xc4\xc1\x0b\xe8\xc7\xc6\xe3\x5d\x27\xbc\xa4\xaf\xb3\x22\x11\x11\x9d\x06\x57\x05\x4f\x29\x0f\xfa\xbc\x1f\x7c\x64\xa9\x58\x06\x33\xd4\x6f\x2f\x91\x57\x25\x3c\x63\xad\x9a\xfe\x92\x0a\x8e\x97\x7c\x8d\xc4\x34\x50\x70\x31\xe8\xd3\x19\x16\x53\x7d\x1a\xe0\x8b\x4f\x83\x79\xc6\xe4\x3b\xa9\xbf\x9c\x92\xdc\x2b\xa9\x40\x38\x8c\xe8\x24\x17\x91\x57\x54\x8f\x54\xa6\xe7\xd3\x60\x95\xf0\x6b\x96\x07\xfd\x28\x78\x43\x61\xe6\xf0\x8e\x04\xea\x24\xc2\xb2\xa0\x6f\xab\xa1\xd7\x2b\xd6\x0b\x88\x66\x28\x76\x4d\x67\xaf\x5c\xfb\x34\xf9\xa4\xc0\x6b\x52\x3f\xa0\xb9\x7a\x7c\xc2\xb0\x81\xed\x58\x07\x0f\xf7\x4b\xe8\x35\xbe\xb3\xfd\x1b\xf5\xf5\x5b\xb9\xce\x32\x5d\x2d\xb8\xd1\xf6\x82\x37\xfa\xba\xc6\x4e\x53\x30\xd6\xd5\x1a\x16\x7b\xa4\x16\x2f\x95\x76\xad\xc4\xe9\xba\x49\x77\x9e\x81\xee\x72\xe9\x19\xcc\xef\xf0\x03\xd6\x47\xae\x9e\x62\x0d\xfb\xee\x5b\x8d\xf7\x29\x9f\x75\xf2\xa1\x16\xee\x5e\x65\x94\xb8\x1f\xdb\x6d\x6f\x8c\x73\xeb\xe1\x00\xf2\x7b\x23\x1c\x80\xae\x79\xc0\xe0\x81\x8c\xf2\xe1\x2d\x67\x42\xe7\x21\xbc\xcf\x4f\x43\x3e\xfc\x42\xef\x60\x55\xea\x18\xb2\x7f\x1e\x79\x18\xd2\xc8\x11\x01\x62\x0e\x3e\x40\x69\x24\xc0\x50\x60\xb7\x8b\x10\xbe\x6d\xe8\xef\x1b\x54\x54\x92\xf0\x74\xb2\x6f\x0c\xc2\x38\x88\xe0\xb8\x9a\x64\xdc\x1b\x61\x77\x86\xf2\xdb\xcc\x08\xf8\xd5\x31\x05\x09\x1d\xa6\x3b\x7c\x6c\x14\x6a\x94\xaf\xb6\xed\xd6\x13\x84\x5a\x3c\x66\x7c\x28\x9e\xd5\xa1\xd3\xa1\x30\xab\xee\x40\xae\xa9\xa8\xb4\x66\xc1\x15\x21\x47\xba\x83\x4a\x01\xc1\xe7\x36\x2a\x14\x5f\x2e\x58\x18\x82\xfe\x1a\xe1\xd3\x7c\xe6\xa8\x2a\x56\xe8\xda\x85\x83\x0f\x1c\x83\x57\x39\x7c\x0f\x90\x2a\xd6\xd0\x8b\x0e\xe1\xe0\x62\x05\xd8\x62\x05\xec\xe8\x50\x1d\xf3\x9d\x73\x85\xce\x1c\xed\x8b\x9d\x12\x4f\x2e\x22\xb8\x2f\x92\x26\x82\xe0\xf2\x2f\x8a\x4d\x9e\xb2\xfc\xfa\x25\x80\x89\x73\x3a\x17\x96\x42\x5b\x47\xd4\x40\xdb\x5c\x7d\x28\x68\xdb\x11\x0a\xba\x72\x2c\x34\x34\xcd\xb1\xb0\x50\x56\xa6\x6a\xb8\x9a\x6b\xb9\xe5\xfe\x9e\x34\x83\x7c\x89\xee\x77\xda\x67\x82\x6c\x30\x56\xed\x62\x51\xac\x63\xe8\x4b\x5f\x54\xdd\xf0\x40\x67\xeb\x6b\x6d\xba\x1e\x40\xd1\x1d\x4e\x48\x1b\xed\x72\x15\xd5\x1e\x32\x14\xdf\xef\x70\x49\x12\xb5\x96\x92\x98\x51\x90\xf2\xa3\xfa\x2c\xf4\x1a\x6f\x48\xa2\x17\xb6\x2a\xf2\x46\x7f\x17\x3a\x47\xa2\xe4\x1a\x37\x85\xda\x83\x12\x2f\x6c\x8a\x2a\x3c\xd8\xc8\xb7\x38\xdb\x6e\x17\x6a\x43\x52\xa0\x51\x3a\xd9\x80\xdc\x44\x29\x0e\xbe\x06\x08\x2f\xf4\xef\x3b\xf9\x9e\xa9\xde\x07\x24\xc3\xa6\x93\x01\x59\x98\xc3\x72\x11\x15\xce\x26\x7f\xfd\xf7\xbc\xad\x70\x2c\x70\x51\x2d\x9e\xb0\x8b\x87\x4b\x22\x4f\x12\xde\x90\xb3\x48\x48\x02\x24\x01\x4f\xea\x84\xc9\xaf\x94\x38\xcf\xd8\x62\xa8\x5e\xb1\xcb\x62\x0d\x2b\x81\xf0\xb2\x2d\x5b\xbe\x12\x2a\xbf\xc3\xc3\xb0\x08\xc3\x68\x23\xf7\x8e\xd8\x37\x0d\x3e\x25\x66\xb8\x81\xad\x76\x33\x60\xeb\x47\xc8\x04\x8a\xbb\x88\xee\xe5\x31\x29\x65\x85\x01\x54\x1b\xa4\x18\x0e\x51\x09\x45\x07\xaa\xc6\x60\xa9\xcf\x50\xa9\xf7\x55\x1f\x9e\xd2\xde\x1a\x08\xe8\x3b\x54\x4f\xd5\x65\xb1\x26\x23\x6c\xbe\xe4\x68\xc9\x08\xf7\xf2\x30\xd4\x5a\xe0\x37\xfe\xa4\x6c\x25\x84\xef\xda\x72\x64\x03\xa8\xb3\x86\xc1\x91\x74\x70\x83\xd7\xe6\xc8\xea\x2f\x18\x21\x59\x0e\xee\xf0\x5a\x1f\x71\xfd\x51\x0d\xe7\xc6\x1f\xce\x9d\x51\x3d\xcb\xc3\xb0\xc7\x27\xa2\xc2\x7e\x33\x14\x0b\x42\x48\xe6\x90\x40\x99\x4b\xd3\x44\x6b\xb2\x8a\xd6\x58\x20\x84\xd7\x35\x2d\xfe\x7f\x12\x45\x75\x8f\xd0\x78\x86\x5b\x98\x11\x8d\xb7\xfa\xab\xf2\x28\xca\xaa\x0d\xe5\xee\xb5\x33\x2c\x1d\x96\xe7\x94\xeb\x8b\x08\x87\xb2\x51\x5c\xdd\x2a\xaf\xbc\xb9\x95\x23\x30\x39\x9e\x8c\xe2\x75\xc4\x91\x24\xf5\xd5\x4f\x8b\x2b\x6e\x08\x9c\x98\x64\x90\x03\x18\xcb\xab\x45\xd6\xe7\x66\x90\x2b\xb0\x96\x3b\x0b\xae\x4f\x0f\x33\xe7\xa6\xb0\x0a\x6b\x17\xd1\x06\x79\xa6\x0b\x15\xd2\xd2\x8a\x86\x0b\x07\x0d\x17\x5e\xe8\x97\x60\xc1\xbe\x82\xf0\x5f\xc2\x06\x97\xd8\xac\x22\x00\xaa\x4b\x5e\x54\x64\x48\xaf\xc7\xc3\xf0\x32\xe2\xc8\x33\x7e\xd0\x14\xfc\x76\xdb\x33\x94\xa3\x45\xd6\xe7\xd1\xe3\xb4\xa0\x6b\xcd\xe1\x55\x3f\x14\x61\x18\xe4\x45\x4e\xd5\x20\x25\x32\xce\x93\xbc\x5c\x14\x7c\x15\xa0\x43\x24\xc0\xfb\x8a\x53\xde\xf1\x11\xf5\x38\x19\xfc\xae\x6e\xbb\xd8\x38\x88\x7f\x6c\x3d\x88\x7f\xf4\x0e\xe2\x1f\x67\x66\x83\x47\x6a\x3b\x47\x3b\x9c\x11\x36\x91\xab\x02\x04\x5a\x09\x21\x06\xe4\x72\xdf\x30\x7a\xbb\x2e\xb8\x50\x04\xd1\x86\x1c\x45\x19\x66\x8e\x89\xf9\xdc\xb8\x6a\xd2\x78\xb2\xe2\x3b\x40\xe9\x49\x45\x5a\xce\x49\x12\x15\xb2\xcd\x8a\xba\x84\xe0\xd5\x8f\x5c\x06\x14\xcf\x49\xa0\x8e\xaf\x6a\xf1\x31\x3e\x42\xae\xfd\xc7\x7d\x8d\xe6\x18\xc6\x29\xa7\x60\x68\xd8\xb9\xed\x7b\xbb\xbd\x8c\x32\x84\x36\x64\x51\x4d\x24\x25\xcd\xd7\x0f\xaf\x49\x6a\x9e\xaf\x15\x49\x15\x54\xec\x6c\xd4\xcb\xbe\x00\x50\xe5\x00\x36\xbc\xd1\x10\x8b\xac\xfb\x90\xa9\x01\xb3\x2c\x0a\xc0\xcb\x05\x75\x78\xa3\x80\x18\x59\xf5\x55\xee\x4e\x87\xfc\x0e\xf2\x0d\xc8\x22\x0d\xab\x3c\xe2\x84\xcb\xfb\x5a\x85\x9f\x52\x6d\xde\x4c\x78\xcc\xe1\xf7\x76\x3b\xc2\x7a\x4c\x2a\x51\x14\x6b\x95\xa6\xc1\xa4\x4a\xe5\xfa\xe6\xdb\x61\x9a\x0c\xf5\x05\x39\x9e\x2d\x88\xa3\xf0\x06\x13\x7f\x62\xb1\x27\xdf\xcc\xc3\x57\xd2\x6c\x1c\xc8\x3f\xb5\x1e\xc8\x3f\xb9\xc4\xfb\x9f\x66\x31\x78\x99\x00\xef\x57\xd4\xb2\x99\x82\x64\x23\x0a\x7b\xb3\xb5\xa7\x9f\x84\xbc\x03\x7f\x17\x05\x66\x12\x70\xc1\x29\xbe\x57\x80\x27\xf1\x9f\x2d\x40\x75\x06\x89\x42\x78\x14\x6e\x68\x0b\x1a\x1c\x09\xfe\x9a\x0a\x06\x89\xd9\x19\xa4\xb1\xbd\xdd\xa4\xc2\xa5\xd4\x8f\x9d\xba\x44\xf7\x06\x01\x83\xcd\x4e\x3c\xfc\xcb\x36\xbd\x93\x08\x82\xa3\xb7\x5e\x22\x08\x62\xd9\xa6\x9c\x77\x1c\x81\x43\x2a\xba\xc3\xe0\xb6\xe9\x3e\xe1\x34\x89\xdf\x47\xf2\x03\xed\xd0\x0e\xa1\x61\x59\x70\x11\x45\xed\xd6\x7f\x43\x59\x7c\x40\xe1\xcf\x0e\x49\x84\x64\xd3\xaa\x09\x68\x60\x98\x9a\x62\x4e\xcc\x26\x5b\xb0\xf4\x9c\x78\xcf\x4f\x18\xe6\x55\xca\x1b\x8d\x17\x20\x08\xab\x6b\x03\xfc\x67\xd3\xd1\x4c\x4e\x2f\xde\xe8\x1f\x80\xea\x95\xeb\x8c\x89\x28\x18\x04\x68\x3a\xb6\x16\x6d\xf3\x7e\xb4\x98\x04\x83\xa0\xbf\x88\x83\xc0\x01\xd0\x2f\x7d\xe3\xe5\xc6\xa9\xfa\xae\xf5\x54\x7d\xe7\x9e\xaa\xef\x66\x8a\xbf\xca\x48\x3e\xf9\x12\x01\xeb\x49\xe0\x32\xe2\x95\x4d\xcb\xd7\x88\x83\xce\xf2\xce\xb5\xfd\xa8\x96\xe4\x9f\x91\x1a\x20\xcc\x5d\xac\x46\x54\x60\x41\x5e\xde\x7e\x4b\xd6\x0b\x73\xed\x80\x72\x68\xe6\xbf\x55\x57\xbb\xb5\xee\xb9\x79\xc5\x0d\xf5\xae\x8e\x9e\x87\x60\xf7\x73\x73\xf8\x7c\x2c\xbb\xcf\x77\x9e\x85\x89\x25\x7e\xe0\x10\x07\x5c\x11\xff\xea\xbe\x28\x74\xc0\x5c\x07\xc5\x60\x93\x17\x2e\x50\x29\xc1\xae\xe2\x25\x69\xef\xb3\xd1\x01\x80\x24\x05\x6c\x34\x64\x11\xc5\xfa\xe0\xba\xd5\xca\x48\x4c\xe9\xcc\x53\xe4\x7d\x65\x69\x5e\xc2\xdd\x03\x33\x9a\x69\x56\xf6\xb9\xb2\xf4\xd0\x13\xce\xfd\x9b\x99\xdb\x0b\x5c\x10\xcd\xc4\xd6\xd3\x51\x13\x71\x38\xd8\x12\xff\x29\x26\x30\x23\x33\xcb\x52\x26\x64\x8a\x83\x05\x33\xdd\xc8\x04\xd5\x62\x10\x07\xb7\x8a\xfd\x91\xc9\x44\xf5\x3b\x36\x99\x36\x8e\x23\x78\x1b\x9a\x26\xb3\xbe\x98\x6e\x66\x07\x4f\x07\x39\xfc\xc1\x6c\x5a\xce\x08\x07\xa7\x35\x62\x5a\xce\x06\xf9\x34\x9b\xc5\x62\x7a\x12\x95\x68\xe6\x3a\x7a\x3a\x6d\xb1\x3c\xaa\x68\xe5\x05\xcb\xd3\x89\xfa\x23\x4f\xb3\x71\xaf\x18\x09\xb9\x3c\x55\x23\x6f\x7d\xb6\x41\xe5\xb3\x9d\x83\x6c\xca\x38\x4d\xad\x33\x19\xd8\x22\x6a\xeb\xf0\x44\x2e\x98\x85\xc0\x55\x52\xbb\x3a\xf1\x54\xcc\x64\x47\x3b\x64\xd4\x9d\x4f\xfd\xf0\xbc\xad\x25\x6d\xe3\x66\x73\x72\xf0\xd9\x15\xe4\xc9\x8a\x06\x98\x4b\xa4\x61\x51\xf0\xe3\x64\xbe\xf4\x3b\xa5\x43\xf3\x15\x86\xf3\x22\x2f\x8b\x8c\x0e\x6f\x13\x9e\x47\xc1\xdf\x41\xf5\x83\x51\x6e\x4b\xfc\xbd\xcb\xca\x6e\x4a\xd7\x9c\xce\x13\xd0\x7e\xd9\x94\xb4\xeb\x14\xcb\xff\xde\xb3\x1e\x1a\xab\x76\x25\x35\xbb\xc8\x3b\x74\xa8\x1c\x4e\xa4\x61\x98\x47\x5c\x92\x07\x42\xdf\xa8\x72\xa8\xd4\x7c\xc8\x45\x23\x09\xe1\x2a\xc5\x8a\xb7\xbc\x72\x36\x15\x61\x41\x38\x28\x89\x2b\xd7\x1a\x6e\x98\x6b\x85\xa5\x56\x3e\x7c\x87\xac\x7c\x45\x4b\xc1\x8b\x3b\x9a\x1a\x6d\xef\x7b\xc3\x6f\x8b\x95\xdb\x5b\x09\x91\x4a\x49\xb9\x27\x9c\x17\xb7\x17\xd5\xa7\xd0\x7a\x2f\xf0\xb5\xc8\xd8\x7a\x4d\xd3\xb8\x37\xc6\x7a\x44\xf1\x3d\xb8\x69\x6c\x8e\xfa\xa5\xeb\xa0\x59\x29\x8a\xc3\x1c\x8d\xf3\x64\x5d\x4e\x3b\x84\x5f\x83\x1a\xc9\xd0\xa0\xe6\xaf\x25\xc2\x0e\x91\xf1\x25\x7c\x00\xe5\xf6\x5f\x23\xbf\xa4\xc9\xc0\x2d\x9d\x7f\x73\x7f\x66\x33\xcb\xa1\x9c\xd9\xf0\xaa\xd8\xe4\x69\xc2\x19\x2d\x0d\x65\xf5\x50\xe9\x75\x92\xa6\x2c\xbf\x96\xc3\x2c\x38\xbb\x66\x79\x92\xbd\xb7\xc3\xa5\xde\x08\xbd\x79\x91\xfd\x53\x76\x26\xa3\x0f\x89\x8e\x80\xaf\xe7\xd2\x36\x57\xa7\x27\xd4\xa8\x6f\x9b\x7f\xa0\xd3\x89\xa6\x8f\xe2\x20\xb9\x2a\x8b\x6c\x23\x68\x80\x29\x79\xab\x3a\xb6\x73\xb6\xfa\xfd\xe6\x48\xbd\x54\x0e\x29\x26\x5e\xc3\x45\xae\xc2\x2f\x49\xa2\x20\x6a\x2b\x0e\x7e\xfb\xfc\x1a\x2a\x07\xa4\xbf\x9e\x5d\x94\x03\xd6\xe8\xb0\x2c\x56\xb4\x89\x84\xc8\x8b\x97\x3b\xf2\x49\xe7\xd6\x81\x28\xd4\x7b\x27\x3e\xf8\x3c\xc9\x69\x6f\x8c\x83\x55\x19\xe0\xe0\x23\xbd\xfa\xc2\x24\xc0\x7f\x57\xfc\x16\xe0\xe0\x2c\x50\x34\xb7\x8d\x1f\x30\x14\xc5\x07\xb9\x98\x2f\x93\x92\x46\xa8\x6f\xe0\x21\x98\xde\x8f\x0e\xf3\x8a\x8f\x6c\xc3\x10\x31\x08\x92\x02\xd1\x6a\x83\xa0\xcf\xfa\x3c\xa6\x5e\xfc\x49\x4f\xa2\x3b\x84\xcb\x37\x2d\x66\xd6\x6b\xd8\xce\x11\x5a\x56\xe3\x7f\x11\xf9\x7e\x1a\x1a\x77\x5b\xae\xed\x6f\xf5\x6d\x0b\x40\xbf\x14\x2e\x34\x44\xb5\x74\x8e\x93\x0e\xb3\x75\x64\xae\x78\x14\x7c\x1d\xd8\xb3\x14\x20\xf7\x16\xa9\x31\x56\xa7\x29\x08\x5a\x72\x45\xb1\x6e\xcf\x00\x56\x53\x6b\x8e\xa2\x67\x5a\xb3\x34\x5d\xd4\x9a\x77\x6b\x23\x62\xb4\xe6\x4f\x3f\x44\x2e\x01\x3d\x23\x41\x60\x43\x20\x96\xf2\x7c\x80\xb6\xe9\x5b\x56\x0a\x9a\x53\x5e\x46\xc8\x3f\x92\x6a\x59\xce\x72\xbd\xb0\xda\x7a\xc4\x5c\x28\x2b\x30\xd6\xe5\x40\xa6\xe9\x2e\xab\x6a\x6d\xe7\x5a\x5b\xed\xc1\x0f\x2b\x85\x11\x0f\x55\x8c\x15\xf9\x5a\x33\x55\xd2\x42\x01\x1d\xe4\x07\x98\xbe\x24\xc7\xb2\xf1\x61\x92\xa6\xde\x8c\xa2\x80\xd3\x92\xfd\x26\x5f\x42\xb7\x38\xbe\x5f\x27\x65\xc9\x6e\x14\x17\x5f\xfb\x97\x4b\x1c\xd1\xab\x23\x2e\xa9\x51\x68\x15\x97\xc5\x65\x5e\x16\x13\xb1\x1f\xe1\x8d\x45\xa7\x6c\x8e\x4c\xb6\xea\x0d\x03\x17\xdb\x2d\x8d\x92\xa8\x74\x45\xf1\xba\x73\xac\xfd\x18\x97\x68\x17\x31\x6c\xa4\x6a\xb5\x49\xf1\xa1\xcb\x45\x28\x91\x4d\xd0\x30\x9c\x30\xcc\x87\xe0\x8d\xb7\x3c\x56\xc0\x01\x22\xcc\xbb\x26\x5e\x6e\x68\x14\xbf\xa8\xb1\x03\x52\x4e\x7c\x7e\x8c\x1e\x78\x4c\x70\xfd\xbd\x2b\xe7\x4b\x9a\x6e\x32\xaa\x20\xa2\x0b\x89\x3e\x9a\x60\xdd\x58\x74\xf6\xf5\x1c\x86\xd1\x5c\xbe\xcf\xd9\x51\xce\x56\xa0\xb8\xfa\x9a\x27\x2b\x13\xf6\xc0\x6f\xda\x0d\xa0\x12\x51\x52\x1f\xa4\x13\xe4\x46\x9d\x17\x75\x70\xf7\x1c\x19\xe1\xae\xae\xc4\x48\xbc\xe5\xdd\x87\x56\xb5\x36\x69\x36\xcc\x6f\x12\xf0\x15\xff\x18\x83\x63\x34\xbf\x23\x32\x9d\xd9\x24\xb3\x93\xba\x5c\x6d\x33\xc7\xa0\x25\x66\x17\xf7\x77\x8e\xae\x55\xa0\x3c\x84\xf5\x58\x79\x9a\x9c\x46\xae\x58\x18\xa1\x30\x64\xe5\x6b\x96\x33\x78\x7a\x76\xbe\x4d\x17\xba\x77\xe9\x6d\xd1\x86\x4c\x5a\x32\x33\x08\x0e\x35\xdd\xa0\xb1\x7d\x83\xe1\x2b\x19\x0f\xb6\xe4\x84\xa6\x7f\x5a\xe8\x8a\x30\xfc\x9d\x52\xed\x03\x83\xfa\x60\xfd\x35\x90\x2f\xb9\x02\x65\x7c\x06\x32\xc9\x7e\x6e\x0d\xae\x40\x4d\x49\x6b\x12\x1e\xb0\x6f\xd1\x53\xfa\xc1\x27\x8c\xf7\x22\xd8\x26\x80\x11\x50\xe7\x8c\xf4\x7a\x79\x18\xb6\x3d\xbd\xf5\xf2\xe0\x5e\xd6\xbe\xbc\x12\x1d\x4a\x29\x7f\x96\xab\xbf\x3b\xc5\x15\xec\x55\xb0\xe4\xef\x41\x5f\xf4\x83\xbf\x07\x38\x81\xdf\x5c\xfe\xee\x78\xd8\x78\xd2\x0f\xba\xe6\x09\x93\x58\xb8\x36\x23\x49\xbb\x57\x77\xdd\xa0\x5f\x78\xb9\x79\x17\xba\x01\x6d\xea\x82\x7f\xc1\xdd\x2b\xda\x2d\x37\x9c\xca\x04\xad\xc8\xdc\x65\xa2\x7b\x45\x17\x05\xa7\xaa\x76\x2f\xa8\xb9\xac\xfc\x1b\x99\x02\xe3\x68\x50\x8a\x84\xcb\xbd\x02\x2e\x92\xfa\x33\xa0\x79\xaa\xf6\xd2\xe6\xaa\x7d\x95\x29\x2a\x4f\x71\x86\x4c\xae\xd9\x6f\x95\xaa\x4a\x68\xee\x8f\xfb\x51\xa5\x9a\x8a\xc0\x03\x52\x45\x14\x75\xa9\x52\x54\xf6\x0c\xff\x95\xfc\x4d\x63\x1e\xae\x69\xd6\x4f\xff\x0e\x01\xc3\x5f\xed\x61\x84\x90\xcf\x7f\xd5\xfd\xf0\xfe\x18\xe2\xd2\xce\x13\x11\xfd\xd5\x52\x81\x0e\x33\x44\x4c\xf2\x2a\x52\x54\x9c\xc3\x5a\xfe\x42\x02\x89\x1e\x07\x60\x7a\x37\xcf\x8a\xf9\x97\x5b\x56\x4a\xb8\x22\x3f\x8b\x4d\x2e\x28\xaf\x52\x3d\x33\xb6\x1a\x9b\x7a\x3a\xc2\xa3\xd9\xa3\x54\x79\x8e\xc0\xfd\xad\xa2\xfb\x0f\xa2\x4f\xfd\xed\xa7\x01\x3a\xd8\xcf\x21\x03\x17\xff\x2b\x50\x59\x05\x29\xa5\x69\xe7\x34\x4a\xda\x2e\xc5\x40\xa9\x89\x96\x34\xe1\xf3\x65\x74\x80\xb7\x9f\xca\x03\x50\x77\xed\x24\xd3\x72\x16\x86\xc0\x7e\x94\x3f\x2b\x0e\x24\x96\x78\x96\x4f\x5c\x9e\x29\xa4\xbc\x5b\xd2\x75\xc2\xc1\xee\xe1\xea\xae\x7b\xbb\x64\x82\x76\xcb\x75\x32\xa7\x51\x89\xba\x09\xa7\x0d\x6a\x33\xe9\xce\x8b\xd5\x2a\xe9\x46\x18\x81\x82\x04\x4d\x52\x13\xd2\x7a\x43\x0e\x3e\x95\x4f\xf0\xa7\xf2\xc9\xf6\x53\xd9\x3f\xc0\x99\x5a\xa7\x72\x32\xad\xa2\x9e\x94\x76\xf7\xa6\x30\x44\xb5\x48\x1b\x49\xfb\xcf\x10\xae\xa5\x8d\x67\x33\x53\xda\xb4\x50\xf6\xc7\x08\xcd\xe2\x69\x62\x58\x6f\x51\x46\xb2\xfa\xca\x56\x1b\xa6\x5c\xe1\x4e\x7a\x45\x5c\xa0\x26\x13\x24\x71\x94\x81\xe5\x7b\x91\x6e\xe6\xb4\x9d\x11\x19\x80\x88\x79\x4a\xab\x60\x32\x72\x9d\xe1\x10\xf4\x03\x1c\x0c\x9c\xdd\x17\x68\x12\x79\x25\x89\x00\x8f\x9d\x98\xa2\x38\xa9\x65\xf5\x55\xde\x58\xe6\x51\x33\x55\x81\x76\x08\x4f\x67\xfb\xcf\x4b\xd3\x60\xd9\x28\x78\x69\xab\xc4\x28\x9a\xc4\x9f\x06\xdb\x4f\x7d\x34\xf9\x94\x3e\xf9\x34\x94\xff\xa3\x68\xf8\x04\x1d\x20\x5c\x90\x3e\x44\x35\x4a\x08\x9b\x3e\x55\x5e\xad\x8a\x8a\x35\xad\x8d\xb4\xab\x33\x18\xfc\x3e\x40\xc6\x3f\x95\x16\x91\x68\xd5\xde\x44\x6b\xf4\xfe\x7e\x1d\xc4\x25\xe1\x9d\x2b\x4e\x93\x2f\x4a\x65\xf7\xf7\x5a\xc3\xf7\xf7\x3c\x88\x35\xfa\x15\x97\x24\xaf\x64\xda\x25\x9a\x8a\xd9\xc1\x78\x34\x7a\x52\xec\x40\x3c\xb3\x94\xeb\x9b\x6c\xb7\xc1\x0d\x88\x48\x12\xcb\xf6\x31\x59\x13\x2b\x16\xdc\x27\x5d\xfa\x16\x69\x61\xfc\xad\xad\x3c\x20\xa2\x44\x7a\xdc\x96\x32\x8a\x28\x66\xca\x3d\x28\x30\x3e\x5a\xd9\x3c\xf2\x24\xd1\xb6\x27\x5b\xee\xde\xef\x14\x37\x86\x4d\xc5\xac\x4f\xf8\x93\x28\x18\xa8\xd3\x96\x0f\xc6\x33\x50\x75\x43\xba\x69\xcc\xb4\xa9\x2c\xb9\xb7\x44\x91\x65\x62\x62\x8f\x82\x8e\xe5\xa1\x72\x91\x92\x58\x62\x98\x3e\x15\x01\x3c\x13\x4d\xeb\xba\xde\x09\x77\xd8\xd0\xcc\x7e\xaa\xa5\xe0\xe2\x7b\x08\x01\x1b\xdf\xc3\x33\x17\x8f\x47\x23\x4c\xab\x5e\x16\x79\x43\xeb\xde\x67\x3e\x70\x22\x7c\xa6\x28\xa8\x6c\xfb\x7c\x75\x65\x82\x6f\x15\x17\x15\xb0\x82\x40\x20\x15\x16\x99\x10\x66\xb8\x10\xa5\x01\xc9\xf6\x21\x93\x0f\xa2\xc7\x28\xdd\x90\xd2\xe7\x8b\x66\x32\xa1\xc6\x02\xc5\x73\x72\x0f\x8f\x5b\x7c\x1b\xdd\xef\xf0\x06\x17\xd3\xcd\x0c\x61\x9a\xa7\x6e\x42\xbf\x98\x66\xb3\x41\x32\xcd\x66\xc8\xe5\x34\x69\xfe\x08\xe8\xf1\x24\x78\xee\xeb\xfc\xec\x34\x7b\xca\x2c\xda\xd3\x07\x16\xcd\xf5\xd9\xac\x6a\x81\x44\xa3\x5a\xc1\xfa\x9a\xe8\x55\x48\xbc\xe5\x29\x49\x5e\x5b\xe6\x8d\xb9\xc2\x46\x08\x47\x7e\x17\xf5\x39\x9a\x4c\xfb\x1c\x8f\x66\x31\xa7\x11\xc7\x05\x4e\x70\x89\xf4\x9b\x06\xbc\xde\xa8\x50\x52\xb9\x8d\x6c\xa2\xd0\x0a\x0c\x9b\xe9\x78\x86\x0c\x9b\x7d\x5f\xb1\xbe\x29\xa6\x55\x59\xa1\x90\xc9\x80\x52\xa0\x26\xa1\x0b\xe9\xad\x23\xa0\xa6\xdb\x52\x50\xb7\x06\xbc\x2b\x58\xe8\x02\x42\xdd\xa8\x55\x1d\xed\xf0\x9a\xc3\x81\x3f\xd3\xca\xfe\x66\xa1\xbf\xfb\xc6\x85\x6e\x70\xda\xb6\xdb\x45\x44\x87\x86\x29\x69\x28\xe9\x8e\x93\x54\xb1\x16\x01\xe1\x8c\x38\x59\x80\x5c\x46\xe1\xb4\x3e\xc5\x0f\x7b\x56\x6b\x4c\xe1\xd3\xb0\x83\xa2\x58\xeb\x00\x00\x0b\x81\x4b\xc2\xa6\xf9\xac\xc3\x0c\xfb\x82\x59\x76\x85\x4c\x27\x41\xa0\x9f\xdb\x77\xcd\xf1\xe1\xb6\xe1\x41\xfc\x12\xe0\x0c\x62\x5e\x67\xfd\x21\xdd\x4d\x61\x7a\x49\x54\x27\x25\x76\x97\x84\x18\xb5\x68\x31\x5c\x73\x56\x70\x26\xee\x20\x50\xb1\x7f\xf4\x71\x4a\xee\xd7\x9c\xad\x12\x7e\xd7\x62\x78\x33\x9f\xd2\x4a\x5e\x36\xa5\xb3\x67\x9b\x29\x9d\x85\x61\x4f\x0c\x69\x39\x4f\xd6\x10\x2d\xf0\xdc\x0c\x19\x56\xd3\x42\x6b\x59\x1c\xcb\xe2\x08\xe1\x5b\xa5\x26\xc7\xd1\x0e\x2b\x9f\x14\xed\xbd\x55\x47\x93\xfa\xd7\x3e\x27\xf3\x29\xf7\x06\xf2\xfc\x91\x81\xe4\x7a\x20\x2c\x8f\x64\x55\x18\xc8\x20\x72\x3b\x98\x2b\x01\x4e\x3c\xd7\x92\x1b\x64\xc6\xa9\x74\x4c\x2b\x3d\xf2\x56\x52\x55\x41\x48\x0d\xc0\x34\x9a\xed\x83\x2f\x8a\x26\x81\x5e\xd8\x20\x0e\xec\xb4\x83\xce\x5c\x41\x9b\x39\x4e\xa7\x62\x16\x69\xce\x7b\x03\x22\xcd\xe5\x45\x31\xfb\x16\xdb\x3e\xb8\x47\x13\xea\xeb\x37\xc3\xfa\xa8\xc4\x7f\xc2\x8d\x2b\x11\xfb\xea\x11\x3b\xfc\x85\xd2\xf5\x65\x71\x4d\xc5\x92\x72\x73\xe1\xfe\xf8\x4d\xcf\x81\x01\x5f\x10\xc6\x47\x9d\x1e\x88\xe9\x6d\xcf\x2c\x73\x21\x5e\x0d\x90\x69\x2d\xa1\x45\x56\x14\x12\xea\xe9\xa5\xf3\xe7\x61\x17\x0f\x04\xec\xc9\x44\x4f\xb7\x7a\x2f\x37\x32\xd1\x7f\x10\x92\xbd\x32\x31\x3e\x2d\x67\xcf\x8a\x28\x97\xcf\x01\x44\xfe\xf0\x97\x78\xba\x99\x11\x9d\x3b\xe0\xf2\x5d\xc0\x32\xe9\xb9\x4c\x2a\x1f\xac\x50\xce\xc0\x89\x96\x16\x72\x98\x25\xfc\xd3\xb7\xc0\x2c\xc0\xdd\x7e\x70\x41\x80\xcb\x62\x95\xcd\x05\x38\x70\x37\xa8\xae\x83\x20\xd7\x5b\x9b\x70\x83\x86\x49\x09\x06\x6a\x95\x75\x63\xae\x35\xa1\xf3\x16\xc8\x05\x71\x02\x2f\x68\x46\x21\xf8\x43\x8e\xaa\xa6\x77\xc6\xe1\x7b\xaf\x59\xcb\x6a\xae\xe5\xb6\xbc\x4f\x95\x7c\x3c\x3a\x3f\x3d\x39\xfd\x3e\xee\xfe\x1d\x26\x60\x86\xf7\xf7\xca\x2f\xcc\x92\x65\x69\xb7\x58\x74\x99\x28\xb5\x71\xba\x31\x43\xef\x05\x08\x53\x1d\x8f\x6b\xff\xd1\x49\x9c\xb3\x27\x89\x2d\x7d\xf6\x36\x24\x71\xce\x5e\x56\xbb\x8d\xea\xe8\x54\x47\x0a\x82\x7f\x66\x4d\x82\x62\x21\x13\x1d\xed\x78\x9c\x82\x7e\xcd\xdb\xe2\xd6\xb0\xea\xf1\x52\x16\x71\x4f\xdd\x5a\x26\x5c\x19\xfd\x78\x7d\x27\x57\xe4\x3c\xca\xd1\x74\x3e\xeb\x6c\xa6\xeb\xd9\x60\xf5\xac\x9c\xa6\xb3\xb6\x63\x94\xce\x06\x44\xe6\x0d\x22\x55\x10\x21\xbc\x99\xa6\xb3\xfe\xea\x79\x39\x5d\xef\xa9\x21\x1f\x52\x59\x64\x20\x8b\xb4\x80\x8b\x8b\x46\x25\xf5\xa4\xdd\xa8\x7a\x9b\xe9\x7c\x76\xf0\x74\xb0\x3a\x78\x8a\xef\x08\x6b\x79\x22\xf1\x95\xab\x08\x70\x57\x19\x05\x2c\x66\x08\x5f\xd7\xf2\x8c\x29\xc4\xa2\x32\x85\xc0\x9f\xc9\xcd\xa0\x6d\xa6\x57\x83\x6b\x73\x1f\x3f\x57\x8f\x83\x05\xce\xe5\x74\x3e\x1b\xac\xf0\x67\x84\xc1\xff\x23\x9c\x20\xcb\xa7\x73\xa6\x09\x19\x24\xba\x8d\xc0\x83\x72\x8a\xa1\x01\x2e\x61\x5d\xf4\x19\x00\x37\xc7\x4b\x1c\x80\x87\x23\x09\x38\xa9\x81\x7d\xd3\xaf\x03\xa8\x3a\x0b\x94\xd8\xd1\xdc\xd6\x3f\x3f\x72\x5b\xd9\x22\xfa\x6d\xcf\x35\x05\xd2\xc2\xbd\x97\xe0\x67\x43\xcb\x34\xc3\xd0\x95\x36\x4a\x9a\xbf\x21\xd4\xab\x87\x0f\xfb\x17\x30\x82\x16\xcc\xa7\x81\x23\xf8\xe8\x67\xed\x46\x31\x72\xa2\xfc\x4d\xef\x29\x32\x9e\x6d\xb7\x81\x24\xb6\xa7\x33\x43\x3b\x8a\xe1\x15\x5d\x26\x37\xac\xe0\x8a\x88\xec\xfe\x12\x27\x64\x9a\x63\x36\x73\xc8\xc8\x2e\xa5\x71\x42\x7e\x8a\x72\xe4\x26\x0a\x9d\x08\x4e\x2b\x55\xba\x21\x31\x13\x52\xb5\x6b\x10\xef\xa4\xe5\xc9\x2d\xf1\x46\xf9\xf8\xea\x11\x52\x6e\xb7\x26\x42\x2c\x21\x64\xd3\x1f\x57\x2b\xfa\xf8\x9c\x35\x4e\xd4\x40\x83\x5c\xcc\xa8\x5a\xf2\x85\xfb\x68\xa5\xc4\x62\xd8\x79\x18\x2e\xa2\x4c\xc9\x9d\xd0\xf3\x45\x34\x07\x3c\x0c\x6d\xb7\x15\x86\xa1\x8b\x40\xfa\x33\x59\x42\x15\xde\x6e\x0d\x66\xad\x0b\x28\x30\xa2\x1a\x11\xc5\x5a\x16\xa8\xb0\x6a\x5d\x46\xa6\x43\x1b\xba\x30\x5e\x12\xb7\x6d\xa5\x8c\x87\xf0\x9a\x78\x83\xd2\x8a\x77\x08\xaf\x88\xd3\x08\x28\xe9\x21\x7c\x43\xfc\xce\xb9\x6d\xfb\xce\x9b\xe6\xb2\x36\xa7\xb5\x37\x81\x55\x7d\xb4\x37\xf8\xea\x91\xa7\x3d\x97\xf0\xa4\xd7\x13\x70\x63\x7e\x4c\x38\x03\xa9\x84\x24\x1f\xae\x94\x45\xa7\xd2\xf8\x2c\xa0\x6b\x99\x44\xf3\x54\x27\xac\xb7\xdb\x5e\xbd\xd0\x4a\xa7\x55\xa5\x6e\x24\x30\x6a\x76\xf0\xe2\x0e\x4c\x77\x73\xd1\xd2\xd3\xba\xde\xd3\xb2\xa5\xa7\x9b\x46\x4f\x2b\x84\x6f\xc9\xf5\x76\xfb\xf9\x30\x4a\xb7\xdb\xbb\xed\xf6\x56\xa1\x0d\x1a\x16\x90\xde\x08\x43\x86\x62\xc8\x27\xd3\x0d\xf8\xb5\xba\x95\x94\x52\x5b\xc0\x79\xdd\x30\x9d\xe8\x6e\xe3\xaa\x7b\x3a\x81\xdc\x98\xee\xa2\x02\xf9\x1a\x0d\x79\x3f\x2a\x40\x8d\xad\x88\x83\xa0\xe5\x65\x50\x26\x2a\xf5\xe3\xfe\xaa\x15\xe8\x3c\xac\x16\x80\x40\x9e\xdf\x0a\x14\x29\x56\xdc\x5a\x8d\xcc\xee\xb0\xb9\xd3\xb1\xe6\xe2\x3e\x88\xa0\x5a\x4d\x5f\xec\x6f\x59\xdc\x1b\xe3\x3d\x9b\x18\xf7\xc6\x3b\x0c\x90\xd8\x40\xf4\xff\xe5\x42\xf4\xf1\xbf\xc6\xd1\xa8\xd0\x0c\x46\x72\xb3\x2c\x05\xc9\x3d\x06\xc6\xc3\x68\x06\xe8\xb4\x03\x3b\xd7\xdc\x80\x86\x9c\xc6\xd1\xd9\xf2\xd0\x8a\x19\x29\xa6\x7c\x36\x88\xca\x09\xe4\xd4\xb0\xda\x59\x3c\xf2\x37\xfe\x24\x6a\xd1\xd4\x20\x17\x12\x77\x96\xc8\xe9\x92\xa5\xd4\xac\xcd\x5f\x1e\x44\xef\x1f\xc2\x49\x65\x2b\x01\x0e\x6a\x74\x7a\x1d\x2b\x15\xad\xc0\x93\x93\xd3\xf6\x56\x5b\x18\xa4\x8d\x1e\x94\x79\x50\xb2\xa2\x3b\x84\x9c\xd7\x0e\x82\x2d\x69\x50\xf5\x4c\xeb\x1b\x2b\xb5\xd7\xe7\x56\xcf\x18\xb4\x6f\x9f\x57\xda\xc5\x5a\xd7\xf6\x99\x06\x93\x30\x5f\x15\x15\x50\xce\xae\x9a\x89\xfa\x06\xb6\xef\xb0\x52\x58\x9a\x06\x5f\x07\xc5\x46\x0c\x8a\xc5\xa0\x1a\x46\x20\x29\x7a\xc0\x9a\xa1\xb5\xf1\x03\xad\x8d\xbf\xa9\xb5\xde\xd8\x65\x3b\xcd\x95\x86\x27\xa8\x5b\xd8\x3d\xfc\xd3\xb7\xf1\x44\xbe\x02\x4d\x76\xe7\xf2\x9b\xaa\x93\xfc\x4f\x6c\x88\xa3\xf0\xe1\xed\xc5\xf5\x7a\x73\x34\x9f\xd3\x8c\x72\xb8\x92\x55\xdc\xbd\xa2\x2e\xae\xa8\x08\x83\x5a\x9d\xbf\x77\x95\xb0\xbb\xbb\x2a\x6e\x94\x6f\xa2\xbf\xbb\x33\xfe\x7b\x25\x96\x4b\xf2\xb4\x7b\xcb\xb2\xac\xab\xe3\xa1\x94\x9b\xb5\x04\x14\xca\xa7\xd0\x62\x23\x36\x9c\x76\x8d\x93\x3f\x49\x61\x28\x67\x2e\xc3\x5f\x4b\xa3\x53\x97\x90\x6a\x7c\x93\x22\x16\xf5\xe1\xe3\x92\xb4\x71\x8c\xc0\x96\xaa\x44\x38\x23\xf7\x06\xab\x8a\x99\x45\xb0\x76\x78\xde\xea\x7c\xbe\x02\x1f\x39\xe1\x66\xd1\x19\xe1\xce\x9d\xd0\x54\x30\x60\xae\x38\x71\xb1\x8b\xb2\xcd\xbb\x1c\xdd\xe1\x0d\x29\x22\xa6\x78\x15\x72\x3c\x45\x94\x9b\x8f\xf9\x23\xa0\xc8\x53\xe9\x5a\x10\x2d\x83\xaa\xd0\x23\x2b\x2f\x18\x04\x08\xa7\x44\x4c\xe6\xdb\xed\x62\xbb\xdd\xfc\xfe\x29\x21\xd9\xef\x9f\x4e\x8a\x38\x89\x4b\xbc\x24\x62\x52\xc4\x26\x9e\xb8\x52\xd5\x4d\x23\x28\x34\x0e\xc3\x4c\xff\xed\x2d\xc2\x50\x4c\x94\x65\xce\x60\x1c\xe7\x1a\x23\x11\xc5\x3a\x5e\x46\xb9\x42\x39\xb4\x2e\xaf\xfc\x36\xb8\x86\xd2\xf5\x4d\xa3\x5c\xa3\x2a\xbb\x5d\x44\x0d\x0b\x3f\xa5\x37\x6c\x4e\xdf\xb3\xaf\x34\x3b\x97\x7b\xf5\xec\xe9\x76\xdb\xfb\x59\x8e\xd4\x41\x39\xb8\x51\xa4\x35\x1c\x82\xa5\xc3\x45\xca\x2d\x78\xd5\x24\xda\xba\xce\xe0\x5b\x19\xff\x92\x37\x86\xcd\xca\x16\xd1\x8d\xdb\x41\x3a\xb1\xe6\x40\x65\x65\xae\x38\x28\x3d\xd1\x45\xdf\x60\x66\xf1\x60\xa3\xd9\x49\x55\x12\xa0\x75\x78\xe5\x8c\x6b\xf9\x70\x9b\x4a\x87\x5a\x23\x8c\xb2\xc5\x5b\x2f\x41\xe1\x9a\x38\x09\xc3\x35\xca\xa6\xeb\x19\x51\x33\xca\x12\x41\xbf\x4b\xa3\xa0\xbf\xea\x07\xeb\xaf\xb8\x1b\xf4\x6f\xd4\x8f\x11\x0a\x70\x36\x4d\x67\x64\x84\xb3\xe9\x12\xfe\x78\x9a\x4f\xd5\x7a\x54\x26\x29\x77\xfe\x12\x0c\xc6\xf1\x18\x5f\x79\x33\x00\x73\x7e\x68\xf6\xe6\xc9\x9d\x6a\x78\xf5\xe4\xca\x6f\x3a\xed\x07\x72\x1c\x4b\x6d\xb0\x7d\xef\x29\x86\xc5\xce\x51\x74\x94\xb9\x2b\x50\xa9\x30\x97\x6b\x0f\x7c\x5a\x85\x06\x9d\x9b\xd9\x6f\x4b\x3d\x5e\x38\xd9\x35\xfa\xd1\x2f\x02\x78\x4a\x0d\x1c\x48\xc8\xfa\xb5\x3a\x4c\x77\xe6\xe4\xec\x70\x05\x0e\x0d\x40\xfe\x8f\xc7\x79\x66\xd8\xc4\x31\xea\x7e\xdf\x8a\x6f\x99\xa1\x8b\x26\xb7\x06\x74\x07\xab\x89\x63\x57\x93\x84\xef\x51\x4b\xee\xc9\x1b\xce\xa7\x74\x36\x11\xc3\x92\x8a\x4a\x23\x8f\x62\x99\x8a\x62\xd1\xd0\xd5\xa3\x9a\xfb\xe8\x12\xde\x61\xe8\x85\x37\xf0\xd6\x4c\xd3\x5d\x61\xf8\x7d\xe4\x57\x6a\x59\xdb\x22\x7f\x5b\x24\x69\x5c\x17\x7d\x56\xea\x60\x2f\xc1\x81\x32\xc5\xbc\x4e\xba\x26\xe4\xd7\x88\x3b\xb8\x5a\xa1\x8b\x3d\xaa\x68\xdb\x28\x62\xb4\x6b\x2b\xff\xf5\xde\xc2\x78\x27\x12\x27\x08\x7f\x1f\x09\x5c\x81\x7c\xfe\xa8\x8a\xeb\x0e\xc2\x8a\xd4\x4f\x91\xf6\x52\xbb\xdb\x61\x46\xf7\x46\x7d\xab\x9c\xcb\x83\x37\xef\x6f\xb7\x0d\x9e\xb8\x1f\xf1\xfd\xae\x73\xad\x83\xd2\xa0\x36\x8d\xb1\x16\xdf\xad\x9c\xfe\x63\x43\x4b\x51\x53\x09\x2b\xb4\x32\x15\xd2\x51\x31\xd4\x17\xe1\x91\xf3\x35\xbc\x02\x13\x80\x25\x2b\x91\xaf\xed\x68\xee\xdb\x2b\x45\xd7\x97\x72\x2d\x1d\x75\xb2\x7b\x47\xbf\x54\x62\xe7\x56\x91\x57\x7e\x78\x0a\x5b\xf1\x74\xb6\xab\x29\x5b\x13\xf0\x95\xf3\x2b\xb0\x2f\x27\x62\x3a\x9a\xc5\xc2\x55\xd6\x24\x2c\x0c\x99\xc9\x66\x32\x9b\xed\x51\xb8\x26\xf7\x3b\xef\x1e\xd5\xc6\xec\x20\x44\x49\xf5\xbb\x55\x38\x2c\xc0\xed\x6a\xbd\xfd\xa9\x98\xd5\xd7\xc1\xcb\x04\xcf\xd3\x4e\xd3\x93\xc4\xcb\x8e\xef\x77\x4a\xab\xcd\x53\xbd\xf5\x6c\xb6\xda\xe7\xf5\xa0\x21\x97\xc4\xdb\x62\x79\x1b\x5b\xc6\x0b\xe6\x5c\x0f\x1a\x73\x69\x2d\xac\x81\xb0\x5a\x58\xb5\xe1\xed\xd3\xe4\x73\xec\x16\xe8\x50\x41\x02\x04\x4a\x5d\xf0\x33\x2a\x5c\x9c\xc8\xe2\xa7\x56\x09\x52\x26\xaa\xc0\xa7\xb6\x47\x75\x00\xb5\xf7\x83\xd2\x57\x44\xf7\xa4\xe6\x9d\x52\xab\xda\xaa\x21\xb4\x2b\xe9\xb6\xa8\x4a\x12\x13\x2f\xa4\xfb\x39\xa2\x78\x0a\x16\x70\x81\xea\xd5\x84\x81\x6c\x5e\xa5\xd7\x55\x28\x0a\xb4\xdb\x61\x55\x29\x55\x47\x7d\x7f\xad\x17\x6d\xb5\xda\x86\xbb\xbf\x89\x7f\xb4\x76\xdc\xa6\x97\xbc\xbf\x8d\x8f\x5e\x1b\x33\xa4\x62\xd7\x55\x0e\x9e\x3f\x08\x96\x95\x24\x7a\xdc\xb9\xfa\x75\x56\x5c\x25\x19\xd2\xbe\x14\xa1\x1a\x66\xce\xfb\x5e\x92\xbf\xc9\x6f\x73\x29\x08\x38\x0e\xdf\x21\xb4\x8b\xda\x81\xa3\x31\x2f\xa9\x9b\x05\x81\x3e\x91\x1a\x74\xe5\xe7\xb8\xc2\x1d\x36\x39\xe8\x38\x44\xc1\xda\x90\x01\x12\xb1\x85\xa1\x9b\x70\x64\x9b\x2c\xc3\xb4\x12\xf1\x0f\x93\x15\xb0\x69\xe4\xc4\xff\xdf\xf5\xbf\xfb\xdd\xf0\xbb\xff\x71\xbf\xfb\x3f\xee\x77\xff\xc7\xfd\xee\xff\xb8\xdf\xfd\xff\x8b\xfb\x5d\xeb\xb5\xdf\x01\xc7\x8f\xb9\xe4\x9d\x3a\x85\x67\x10\x62\x7b\x78\x59\x14\x99\x60\x6b\x89\x88\xea\x07\xa6\xc5\x53\x2f\xad\xb9\xea\xa5\x04\x1a\xad\xb9\x94\x0f\xb4\xd8\x29\x40\x13\xeb\x89\x3d\x36\x2c\xcc\xff\x03\x1d\x7e\xf1\xff\xef\xfb\xdd\xc2\x39\xb9\x9f\x1b\xbf\x92\x92\x5a\x48\x69\x96\xdc\xc5\x23\xbc\x14\xab\x4c\x7e\x3b\x5a\x95\xca\x48\x9c\x89\x8c\xc6\x41\x80\x05\x5d\xad\xb3\x44\xd0\xf8\x0f\xcf\x52\x76\xa3\x1c\xbd\x91\x40\xa8\xd3\x14\x74\x79\x91\xd1\xea\xf3\x79\x4b\x19\x25\x39\x0e\x9e\x3f\x3b\x48\xd9\x4d\x6b\x01\x25\x0a\x36\x05\xe0\xff\x3f\x60\x1d\x3a\x39\x0e\x96\x05\xc4\xc2\x2e\xe6\x9b\x32\xb0\x3a\x6f\xda\x32\x56\x6b\x61\xc4\xc1\xd0\xeb\x0c\x77\xcd\xf7\xe7\xcf\x5a\x1d\x04\xfa\x68\x29\x0f\xe9\x6e\x79\x35\x98\x1d\x66\xad\x27\x59\x7b\x2c\x8e\xfe\x2b\xbd\xe6\xe9\x5b\xc9\x10\x2e\x1c\xcc\x12\x4c\x8c\xef\x77\x38\xc7\x20\xaf\x50\x84\x9a\xdc\x6d\x42\xa7\xa3\x19\xaa\x13\x7b\xbe\x39\x14\x11\x9a\x8d\xdb\xd0\x74\x11\x26\x46\xf5\xc4\xfe\x32\xf2\x9c\x6e\x80\x1e\x08\x3d\xa5\x99\xa6\xf3\x8c\xcd\xbf\x04\x58\xed\x52\x80\x03\xb5\x4f\xae\xfe\xd6\x0e\xa1\x78\x3a\xd3\x51\x16\x59\x79\xb6\xa6\x79\x15\x21\x4a\x81\xa9\x33\x3d\x4a\x1b\x49\xb2\xa4\xa2\x46\x70\x50\x9c\x60\x61\x0f\xb4\x88\x98\x21\x2d\x3e\x2b\xc4\xb1\x81\x9e\xd7\x34\xc4\x0d\x37\xd4\x77\xd5\xaa\x19\x1e\x51\x90\xb2\x9b\x00\x75\x98\xd6\x9a\xbe\x7c\xf7\x96\x08\x6d\x9a\xa0\xd5\x6a\xd8\x10\xf4\x6f\x4e\x8b\x94\x96\xd3\xd1\xac\x53\x0c\x59\x6a\x4f\xf0\xe7\xa0\xaf\xf8\xd1\x49\x9e\x16\xab\x08\x59\x97\xd7\xd1\x77\x7f\x46\x43\x40\x12\x78\xf4\x14\x8f\x8d\x13\x58\x87\x73\x92\x70\x96\x0c\x96\x2c\x4d\x69\x2e\x57\x2f\xc9\x4a\x6a\x79\xee\xac\xa6\x6b\xe4\x11\x6b\xde\x81\xae\x18\x33\xb0\x7c\x49\x9a\x5e\xca\xfb\xab\xa5\x7c\x11\x05\x86\x51\x82\x70\x61\x69\x9c\x7a\x99\x47\xd6\xaf\x33\xb6\xe6\x86\xf2\x34\x6f\xb7\x63\x3f\x61\xc2\xc3\x10\x82\xac\xd0\x3c\xd5\x36\x98\x28\x8e\x18\x11\xe8\x9b\x1d\x83\x33\x34\xd9\x37\x7a\x61\x5c\x87\xc3\x88\x62\x3e\xc9\xdd\x8d\x8a\xf3\xa1\xa0\x5f\x85\x2e\x4e\x44\x35\xc7\x72\x29\xaf\x7e\x6d\x62\x42\xc7\x39\x73\x0f\x64\x18\xf6\xdc\x4f\x96\x5f\x23\x67\x41\x3b\xb5\xd2\xd6\x6c\xfa\xb3\xde\x7f\x30\x93\xf4\x76\xc0\xc9\xd0\x56\xb2\x37\xac\x64\x57\x2c\x63\xe2\x8e\x04\xf0\x3b\xa3\x41\xb3\x95\x6f\x39\x1d\x2e\xd7\xe6\xc4\xb0\x3b\x0d\x5d\x0f\x99\xda\x9a\x54\x0c\xaf\xbd\xd6\x00\xa6\x07\x68\xbb\xcd\x87\xf0\x53\x5b\x82\xb9\x33\xad\x58\x69\x43\x7d\xb1\xe4\x7a\x0d\xcd\x23\x80\x19\xce\x87\xf2\xc9\x40\x9d\x3a\x0b\x10\x86\x9a\xd2\x72\xce\xd9\x15\x4d\xaf\xee\x02\x2c\xaf\x88\x39\xca\xaa\xc5\x05\xcb\x53\xeb\xdd\x38\xb2\xce\x8c\x29\x77\xa2\x0c\xeb\x33\x00\x27\x29\x2a\x2c\x03\xac\x06\x29\x14\x28\x1c\x7a\x89\xd8\x31\x0d\xc8\x1d\xae\x78\x6b\x0b\x0e\x67\x08\xda\x7a\xb0\x08\xbe\x57\x3a\x8a\x8f\x97\x34\xc1\xed\xf6\x64\x6b\x06\xfa\xbd\x51\xac\xca\x87\xde\x3b\xb6\x43\xe6\x81\xfb\xcf\xf7\xa4\xb5\xe7\xef\x75\x83\xb9\x4e\x50\x41\x0e\xff\x93\xad\x7e\x5b\x29\xdb\xa3\xe9\x7b\x87\x76\x08\xe7\x4d\x7e\xb3\x31\x84\xdf\xdb\x5e\x4d\xaa\x4d\xee\x9b\xda\x0f\x2d\xcd\xee\x5a\x6f\x0a\x84\xeb\x92\xa7\xba\x68\x5b\x5f\xd4\xbc\x92\x3a\x16\x69\x05\x55\x94\x30\x7f\x1f\x37\xc8\x05\x14\x93\xa8\xfd\xd5\x7b\x18\x3a\x98\xfb\xfe\xcf\x01\x07\xc1\x37\x06\x36\xa0\xd8\x1f\x70\xca\xca\x75\x51\xb6\x8d\xb9\x0a\x36\xe9\x5f\x3f\xc5\xd1\x6b\xe7\xd8\x1a\x09\xb9\x4c\x03\x21\x39\x14\xee\x38\x2a\x76\xad\xf6\xc7\xb9\x32\x13\xc2\x6e\x07\x60\x56\x5c\x9f\xa5\x3d\x0d\x72\x9d\xa3\x76\x68\xa7\x59\x83\x7b\x72\xf7\xb8\x0e\xb0\x61\x24\xdd\x25\x7d\xc8\x83\x80\x07\xde\x5b\x0e\x06\xc4\x99\x40\xb5\xd3\xe1\xc1\xb8\xb6\x57\xd5\xaa\x06\xd4\x51\x31\x3a\xa1\x0d\x34\xc5\x47\x00\x28\x8a\x95\x92\x04\xe0\x7d\xc2\x33\xd2\xa7\xce\xd3\x0e\xc0\xb3\xbd\x6f\xe1\x3d\xd2\x14\x39\x8f\x65\x1d\xe7\x6a\x47\x09\x2c\xa9\x06\x38\xaa\xdc\xc1\x82\x48\xf4\xae\x9d\x83\x6d\x82\x61\x68\x8b\x39\x85\x25\xc6\xda\x93\x40\xb0\x2a\x36\x25\xa5\xb9\xa0\x1c\xbc\xc1\x3a\x89\x19\x4d\x6e\x24\x22\xe4\x98\xd6\x29\xcc\xd2\xd6\x55\x9f\x55\xb5\xab\x6c\xc3\xfd\x0a\x0a\x35\xb5\x15\xd4\x67\x55\x41\x7f\xef\xc0\xba\x6c\xff\x51\x77\xe8\x00\x81\xee\x7b\xa3\x1e\x21\xb9\x83\x27\x80\x2f\xa1\x4d\x49\xd3\x17\x77\x86\xc2\xee\x8d\x20\xce\xaa\x16\x1f\x5d\x2c\x8b\x5b\x89\x80\x0d\x81\xe2\xc2\x1c\xec\xe3\x3b\xb9\xbd\x63\x30\x98\x7b\xf8\x88\x05\xf0\x4e\x63\xb6\x03\x59\x62\xdd\x5b\x83\xc0\x0c\x6e\x50\xf1\x4f\x0d\xb6\x36\x3a\x89\xa6\xd9\xb1\xbd\x91\x37\xcc\x1f\xdb\xbf\x3e\x34\xac\x57\x54\x45\xbd\xe0\xc3\x79\x56\x94\xf4\x2c\x7f\x29\x13\xcf\x36\xa2\x64\xf2\x6a\xdb\x83\xdd\xf4\x92\x01\xfb\x9e\x16\xb7\x79\x80\xbd\x79\xb1\x45\xe4\x2e\xb8\x01\x40\x79\xfd\xd6\xab\xcf\x0e\xad\x54\xed\xc5\x50\x40\x0c\x3b\xb4\xdd\xf2\xd6\x54\x16\x09\xb9\xff\xb8\x37\x02\x33\xc3\xea\x2a\x38\x7b\xf7\xf8\x2d\xe8\xd4\x50\x47\xa2\x5d\x98\x32\x25\x71\x93\x48\xe8\x76\x2b\x6c\xcc\x6b\xc0\x4a\x75\xa4\x1d\x73\xdf\xf7\xc5\xde\xd1\x9e\x67\x54\x1d\xf0\x2a\xbb\x43\xf2\x14\x34\x46\xfa\xa6\xed\x4d\xaa\x91\x40\xed\x63\x1d\x1b\x9c\x4f\x8e\x55\x82\x5c\x3d\x56\x3d\xb2\x79\x46\x13\x6e\xc6\xd6\x18\x3f\xc2\x0f\x4f\x00\xb4\xba\x7a\x84\xb0\x0a\xd1\xf6\xbd\xed\x54\xe1\x2c\x7c\x68\x0b\x55\x5d\x50\x40\xe4\xb5\x93\x80\x12\xb1\x85\x2c\x2c\x3b\xac\xca\xc3\x51\x8a\x72\x1d\x15\x57\x63\xb4\x1d\xa6\xdf\x10\x58\x37\x89\x5b\x39\x0b\xa7\xf0\xe5\x87\x29\x20\x18\x84\x95\x1d\x37\x9f\x04\xad\x0e\xd9\x7c\x54\xbe\x9d\x6c\xd3\x98\xb6\x5a\x64\x87\xe6\xa9\x39\xbb\x92\x28\x77\x8d\xc2\xdf\x87\xdb\x7b\xf5\x20\xd5\x3c\x5d\x75\xba\xaa\xe6\x99\x84\xb6\x75\x59\x73\xc6\x03\xed\x11\xfa\x20\x05\xa2\xac\x60\xfc\x65\xf3\xea\x9b\x07\xbe\xd6\xa8\xb3\x39\x8d\xf5\xd8\x77\x09\xe5\x63\xc8\xeb\x54\x69\x95\x30\x11\x2a\x56\x51\xf5\xae\x73\x14\x8b\x09\x75\xa8\xc7\x20\x88\xa9\x47\x3e\x06\x01\xc8\xf0\xd8\x2e\x42\xb8\x20\xed\xb8\x92\x92\x7d\x2e\x8b\xdb\x16\xad\x00\x6a\x2e\xab\xa7\xfe\xab\xe7\x6a\x94\x02\x40\xa7\xb1\xb5\xae\x42\x7a\x76\xd6\x41\x92\x44\xdc\xda\x4b\xea\x4c\x5b\x58\x14\xd7\xd7\xd9\x9e\xb2\x1a\x1d\x55\xca\x94\x11\x8a\x29\x8c\x3e\xf2\x75\x14\xdc\x05\xf7\xde\x91\xaa\x9d\x66\x41\x88\xb7\xdf\x8e\xd3\xb5\x5c\x51\xe2\x73\x59\x1d\xe5\x8d\x21\xa7\x92\xc0\x4c\xed\xa2\x29\x05\x54\x6b\x90\x6a\x0b\xa8\xb0\xa4\xd6\x31\x34\xf5\x6f\x9e\x85\x27\x85\xd2\x21\xf7\x32\x9b\xcf\x16\x40\x94\xea\xb9\xe9\xe6\x91\xf6\x7d\x9e\x90\xa2\x65\x44\x85\x3b\xa2\xa2\x36\xa2\x5a\x67\x6d\x38\xb0\xee\x2f\x47\xd8\x79\x8f\x12\xb4\xdd\xd2\xda\x9b\xcc\x31\xd3\x6f\x32\x93\x50\x0b\xa9\x27\xca\xea\x77\xb1\xff\x42\xa1\xaf\x9e\xc3\x7f\x4a\xea\x2b\x61\xf7\x7e\xd9\x47\x3d\x47\x49\x3c\x50\x4d\xf0\x41\x23\xed\xa4\x1a\x7c\x86\x37\x84\x1d\x6a\x64\x61\x68\x46\xb8\x4a\xad\xc3\x6f\x48\x89\xa6\x33\x4c\xd1\x21\x40\x9a\xed\x56\xbd\x52\x68\xf8\xb2\x48\xe9\x3b\xc6\x79\xc1\x89\x8a\x51\xfc\x48\x90\xc2\x16\x4f\x3e\x58\x38\xa9\xeb\x2c\x11\x8b\x82\xaf\x30\x27\x07\xd7\x74\xfe\xa5\xf8\x74\xf0\x29\x35\x6e\x80\xc0\x7b\x8b\x0a\x61\xf6\x29\x3d\xb0\x69\x8c\x1c\xe8\x18\x84\x9f\x0e\xa2\x49\x3c\xfd\x5f\x83\xff\x98\x6d\x3f\xa5\xf7\x4f\xf1\x0e\x7d\x1a\x0e\x9f\xf0\x1b\x15\x4b\xfb\x60\x48\xbf\xd2\xb9\xac\x51\x90\x7c\xbb\x65\x38\x21\x45\x18\x46\xf9\xa4\x35\x62\xda\x76\xfb\xe7\x98\x81\x91\x78\x49\x0e\x54\xf8\xf5\x4f\x07\x55\xa7\x1b\x52\x86\xe1\xc1\xdf\x84\x1c\x5f\xff\xd3\xf0\x53\xda\xaf\xf2\x32\x72\xf0\x72\xc9\x8b\x15\x75\x2b\xcc\xc9\xc1\xd9\x9a\xf2\xc4\x4d\x5b\x90\x83\xa3\xf5\x3a\xa3\x5d\xed\x3a\x97\x37\xe2\xb2\xdd\xd0\x3c\x2d\x38\xc2\x29\x39\x78\x97\xcc\xbb\x67\x17\xdd\x9f\xba\xe3\x4f\xe9\xa7\x57\xd1\xf4\x2f\x6a\x9a\x9f\x52\xf4\xe9\x55\xd5\xe4\x92\x1c\xbc\x5f\x26\xb9\x28\x56\x7f\xbd\xa8\x52\xd7\xba\x23\x35\x0f\x9b\x1e\x86\x07\xef\x8a\x2b\x96\xd1\x4f\x07\x9f\x6e\x9d\x09\xac\xc8\x7a\xbb\x3d\x38\xca\x53\x5e\xb0\x74\x7b\x4b\xaf\xce\x2e\xb6\x2f\xb2\x64\xfe\xe5\x05\xe5\xfc\x6e\x0b\xf3\xe8\xbe\x63\x39\x33\x3f\x8b\x2b\xb6\x3d\x39\x56\x6d\x39\xbb\x75\x03\xed\xbc\x4b\xe6\xba\x69\x81\xf0\x1d\x39\xf8\x74\xf5\x92\x9f\x5d\x7c\xba\xaa\xfa\xbb\x22\x07\xb7\x2c\x37\x15\x05\xc2\xd7\x64\x2e\x1f\x1a\xed\x83\xe4\x47\xa5\x8d\xf0\xe9\x20\x02\x17\x24\x9f\xd2\x27\xe8\x00\x75\x24\xa5\x70\x4d\x4e\xc1\x37\x78\x74\x2d\x77\x0a\xe1\xeb\x30\xbc\x7e\x4e\xc6\x7f\x02\x57\xea\xbd\x31\x2e\x49\x4f\x47\x06\xfb\x4c\x6e\xc2\x30\xda\x6c\xb7\x73\xb9\xe5\x9b\x2c\x23\xe4\x7a\xbb\xbd\x7e\x36\x7e\x3a\x1c\x8f\x11\xc2\xb7\x84\x6f\xb7\x45\x18\x26\xcf\xc9\x7f\xe0\x63\x59\xf7\x42\xa2\x72\x16\x0e\x9c\x39\x82\x09\x90\x70\x3b\xb2\x89\x33\x6b\x76\x90\xd3\x5b\x5d\xb2\xe3\x4b\x0b\x88\x98\x1c\x17\x91\x8a\x1e\x72\x5c\x44\x3f\x71\x2c\x70\x6f\x8c\xf0\x69\x24\x8c\x93\x55\x31\x84\x27\xb9\xd3\x20\x63\x95\x3b\x00\xd9\xf4\x1d\x8b\x38\x16\xc3\x55\x91\xaa\x98\x8c\x58\x0c\x33\x96\xd3\x0b\xe5\x77\xa7\xe0\x86\x1b\x90\x16\x73\xc2\xb5\x5d\x2e\x0c\x69\xc8\xf2\xf5\x46\x28\x1d\xc8\xa9\x70\xbe\x66\x5a\x16\xa2\x90\x59\x78\x1f\xb3\xe4\x0e\x2a\x7d\x55\x5c\x6e\xd4\x61\xc3\x5b\x9e\x80\xf0\xd3\xb9\xed\x40\xad\xbe\xd4\xb5\xdf\x1b\x89\x0a\x0c\xe7\xa3\x2c\xad\x29\x39\xa7\x51\xdb\x0a\x08\x69\x4e\x93\x15\xed\x93\xa0\x5b\x35\x39\x90\xf9\x81\x6c\x24\xd9\x88\x02\xa8\xd1\x30\xec\xad\xc2\x90\xa9\xf1\x0e\x21\x29\x42\xf8\x83\xe9\xcd\xd1\xe3\xfb\x42\xef\xde\x25\xeb\x32\x96\xd4\xb3\x8a\xc1\x08\xbf\xe5\x4a\x7d\x4f\xf3\x78\x04\xa9\xb7\x9c\x09\x6a\x65\x75\x2c\xbf\x7e\x91\x6d\x38\x3c\x28\x60\x99\x23\x9b\xd7\x9a\x7f\x9b\xf5\x9a\xd3\xb2\x3c\x4e\x99\x00\x6b\x9f\x75\x52\x0a\x7a\x92\xcf\x8b\x15\xcb\xaf\x65\xc2\x7c\x23\xdc\xcf\x12\xf0\x4f\x96\x5f\x5f\xd2\xaf\xd0\x58\xca\x93\xeb\x6b\xe7\x7b\xc9\xae\x97\x99\xf2\xc8\x4c\x6f\xbb\xf3\x02\x7f\xa1\x77\x17\xf4\x1f\xca\x1d\x77\xb9\xa6\x73\x96\x64\x2f\x97\x09\x2f\x21\x65\xa7\x9d\x32\x00\x6e\x64\x04\x97\x19\x38\x03\x0b\xc3\xe4\xd9\x78\x1c\x86\x7b\xe8\x83\x8d\x5d\x6d\xb5\x66\x9c\x96\x54\x44\x40\x8e\xe1\xa7\x23\xff\x51\x31\x16\x32\xba\x46\xe7\x7b\x16\x19\x97\x74\x94\x63\x97\x7c\xfc\x41\x44\x14\x67\xf2\x78\xd5\xca\xa4\x57\x99\x96\x57\xe9\x81\x4d\xa0\x68\x9d\xdc\xec\x89\x02\x2e\x85\x21\x35\x37\x5c\xdd\x11\xb6\x88\x78\x18\xf6\x16\xea\x33\x0c\x7b\x25\x8f\xec\x78\xa0\xfc\x0b\x66\x2e\x48\x4e\x94\xaf\xe5\x8f\x05\x4f\x8f\x44\xc4\x51\xe7\x05\x8d\x20\xb0\x17\xce\x87\x49\x3e\x5f\x16\x1c\xe7\xc3\x25\x4d\x52\xb4\xdb\xed\x10\x8a\xdd\x31\xe8\xfe\xb7\x5b\x68\x6f\x87\x3a\xb7\xdb\x6d\x6d\x2a\x73\x15\x40\x73\x45\xf3\x4d\x8d\x5e\xfe\x55\x0d\xcf\xb8\x70\xe6\x38\x27\xf7\x34\x4f\xe3\x91\x13\x7c\x89\x45\xc0\x09\x9a\x0b\x76\x43\x2f\x8b\xcd\x7c\x09\x77\x76\xcf\x26\x79\x05\x81\xe9\xb5\x43\x78\x4c\xbf\x43\x38\xca\x89\x97\x89\x86\x34\x4f\x49\x5f\x9e\x99\x57\xa0\x75\x68\x3b\x2c\x2d\x3c\x52\xc0\x4c\x19\x1b\xd5\x43\x7e\x68\xcf\xfb\xca\x47\x29\xf0\x16\xc1\xad\x9b\xfc\xdf\x7a\x23\x78\xc2\xfb\xf9\x93\xfc\xf9\x1f\x47\xa3\x5d\x6d\x49\x84\x1c\x82\x76\xdf\x56\x8d\x9f\x39\x5b\xca\xe4\xa6\xd5\x10\x95\x71\x8f\xc8\x0e\x36\xf3\x25\x35\x42\xf9\x2a\x5e\x89\x39\x73\x3a\x7f\x3a\x9a\x55\x1a\xd0\x3c\x49\xd9\xa6\xfc\xe9\x19\x19\x4b\xca\x59\x7d\xfd\xfc\x8c\x8c\x77\x11\x43\xe8\xde\xa3\x9b\xb9\x91\x22\xda\xa5\xe9\xf8\x8b\xaa\x3d\xef\x14\x18\x4c\x79\xe0\x0a\x73\x7a\x13\x17\x83\x5c\xae\xe8\x33\xf2\xdd\x68\x34\xc9\xd5\x5d\xc3\x63\x02\x4e\x53\xdc\x01\x03\x13\xca\x69\x4f\xb9\x33\x61\xce\xb0\x87\xeb\xe4\x9a\xfe\x84\xfd\x52\xa2\x58\x37\x0b\xfd\xac\x38\x62\x6d\x6b\x2b\x07\x17\xe0\xbd\x47\xa3\x31\x0a\x98\x0c\x51\xcc\x95\xd6\x06\x81\x4b\xd9\xe2\xc5\xd1\x6b\x06\x1c\x22\xa9\xcb\x26\x69\xbe\x30\x54\xd1\x43\x95\x6d\x4c\x18\xf6\x72\xd5\x4f\x18\x9a\xb5\x1d\xe4\x43\x58\xce\x67\xdf\x8d\x46\x9a\xbe\x00\xdf\x07\xf3\xa2\xe0\x69\x29\xc1\x96\x3f\x4e\x1c\xc8\x79\x07\xa8\x53\x90\x5e\x0e\xb2\x86\xed\xb6\x8c\x72\xac\x7e\xa3\x89\x6c\xf7\x9c\x46\x09\x4e\x50\xac\x0b\x34\x4a\xe9\xa2\xde\x9d\x4f\x50\xac\xab\x2e\x69\x94\xc0\x5b\x83\x47\x08\xbf\x35\x70\xc0\xa6\xf6\xc7\x78\x84\xc0\x7e\xa0\xa4\x42\xf1\x06\xe4\x72\x14\x06\x4e\x14\x0a\x4e\x60\x6a\xdf\x94\x17\x2c\xe2\x68\xc7\xa2\xbd\x2b\xab\xbc\x95\x06\x98\x35\xb2\x8d\x1b\x50\x7f\x1b\x4d\xbe\x67\x8f\x13\x86\xd1\x0a\x80\x49\x95\x6d\xe3\x71\x22\x7c\xd3\x9a\x05\xa1\x51\x7a\x23\x84\xff\x0a\xe1\x7d\x4c\x6f\xda\x3f\x4b\x1b\xcc\xbe\x5d\x52\x9a\xd5\x60\xd8\x67\x0b\xc3\xea\x55\x5e\x9d\xbd\x7b\x27\x6b\x5d\x34\xa6\xd1\x52\x4d\x3f\xe1\xfb\x26\x6d\x5e\x78\x3b\x29\x52\x4f\x53\x41\xb1\x94\x8f\x54\xf9\x46\x1a\x09\x76\x29\x41\xaa\xa0\xbc\x1d\x6a\xff\x03\xa0\x36\xbc\xe1\xed\x05\xa2\x36\xb3\x37\xe7\x95\xe9\x71\xc3\xc2\x52\xf7\xa1\xa6\xb5\x60\x1c\xfc\xbe\xe6\xc9\x35\xa8\x2f\xa0\x0e\xd7\x42\x7e\x79\x48\xcc\x93\x2a\x07\xfc\x72\xc3\xcb\x82\x6f\xb7\x51\x5b\x32\xf9\xb5\x50\x9a\x0f\x0a\x3b\x0b\x1c\xe4\x66\x0e\x05\x4a\x17\xdf\x91\xf5\x74\x72\xe0\x76\x03\x28\xdd\x3a\x99\x83\xed\x0d\xe5\xe2\x05\xf8\xf6\x6c\xed\xd0\xa9\xa5\x5a\x7a\xc5\x6e\x10\xea\x9c\x17\xed\xa5\x55\x18\x01\x81\x30\x2c\x28\xda\x61\x05\x25\xdd\x25\x6d\x2a\xe2\x48\x1a\xa9\x47\xb5\x66\xba\x8b\xd7\x6c\xb7\x16\xfa\x0e\x52\xfe\x6c\x3c\x1a\x59\x3c\x18\x98\x55\xd0\x09\x88\xfa\xcd\x36\xd5\x9f\x77\xc3\x56\x5c\x44\x62\x98\x26\x22\xb9\x04\x93\x2f\x79\x58\xa8\x78\x95\x88\x24\x0a\x64\x3f\x01\x06\xde\x5c\x75\x8f\xd5\xe9\x71\xcb\xd3\xc5\x82\xce\xc5\x51\x96\x15\xb7\x34\x25\xc1\xbc\x58\xdf\xbd\x03\xd8\xda\xd2\x2e\x4f\xae\x4f\x56\xc9\x35\x95\x2f\x97\x39\x2a\x72\xdf\xd8\xea\x5a\xef\x9b\xda\x3c\x6b\x6d\xd3\x05\xeb\x9a\xc3\x2e\x98\x18\x76\x47\x87\x5d\x51\xac\xe5\xdf\x00\x75\xf8\xb0\xe4\x73\x12\xc8\x3e\x62\x26\x1b\x3d\xb8\x66\x8b\xc3\xab\xa4\xa4\x7f\xfe\x23\x3e\x1f\x65\xdf\x9f\xbd\xca\x96\x47\x7f\x3b\x7a\x71\x24\xff\xbd\x7c\xf3\xa7\x17\x47\xc7\x3f\x1c\x1d\x1d\x1f\xbd\x85\x04\x99\x7e\x7c\x74\x74\x74\xf2\xf2\xf2\xe8\xf8\xe8\xec\x96\x90\x00\x4b\xfa\x84\x2b\xd3\x3a\xc2\xb5\xd1\x1e\x19\x3b\x1b\x6d\x2e\x94\x2b\x76\xe2\x08\xf3\xe1\x67\xf9\xfc\x70\x2d\x1a\x06\x88\xf2\xc0\xec\x23\x8e\x47\x12\x78\xce\xc3\x70\xaf\xd7\x6f\x60\xf2\x2a\x00\x80\x53\x5e\xac\x63\x40\xee\x96\x1c\x61\x60\x21\xb7\x5f\xc5\x35\x07\x21\x98\xc1\x60\x35\x1e\x7a\x4d\xc5\x6b\x46\xb3\x34\x42\x12\xcd\xdc\xe0\xe0\x0b\xbd\xdb\xac\x6b\xd0\xe6\x92\x6b\xb5\x94\x0a\xe4\xa8\x92\x0e\x16\x7a\xc4\xdd\x0c\xc0\xd2\x75\xce\x97\x2a\x47\xeb\xb6\x5d\x14\xd1\x3b\x2e\x21\xa5\x4e\x06\x89\x96\x4c\x7d\x0f\xa9\x3b\x4d\x47\xf8\xec\xf5\x17\xc6\x85\xa5\x1c\xa8\x62\x73\x60\xeb\x3d\xda\x05\x77\x0a\xef\x52\x92\xc3\x3d\x88\x9e\x92\x68\xe2\x0f\x45\x94\x80\xa0\x01\xae\x88\x9e\x99\x69\x5a\x0d\xca\xad\xf5\x41\x0e\x10\x8a\xbd\x28\x8c\xe8\x83\xee\xe4\x23\x25\x5c\xca\x67\xbe\xe1\x67\xeb\xe1\xa2\xe0\x73\x63\x51\xd5\x1b\xe1\x5b\xa6\x74\xdd\x78\x83\x8e\xda\x6e\x37\xc3\x65\x52\xbe\x56\x0f\xde\xc4\x19\xb1\x5a\x26\xd5\xf2\xd3\x11\x8a\xdf\x73\xdd\xcd\x2f\x1c\xfd\xc2\xeb\xba\xaa\x19\x0a\xc3\x5f\xf8\x34\x53\x94\x23\x16\xd3\x6c\x86\x45\x8e\x3a\x1f\x2d\x0d\xb8\x60\x39\x2b\x97\x27\x39\x03\x09\x48\xf5\xa5\x0a\x58\x7a\x26\x25\xa3\xc3\xf4\x59\x92\x1b\xc5\xcd\x7e\x3f\x45\x49\x3e\x4d\x35\x49\xda\x79\x63\x66\x5b\xca\x66\x7c\xc2\x32\x90\x84\xf5\x8a\xfd\x46\x33\x7a\xad\xc5\xfc\x01\x21\x8d\x18\x44\x0c\xaa\x49\x98\x08\x1c\xe9\x73\x9a\xa7\x94\x2b\xca\xd4\x66\x19\xef\xfe\x6e\x3e\xd1\x71\xb6\x6a\xd1\x32\xdb\x24\x3f\x70\xbc\x49\x8e\x99\x7e\xe0\xae\x12\xfe\x9a\xc9\x97\xf5\x81\xb7\xc0\x96\x1c\x2c\xa0\x68\x80\x9a\xd5\x6b\xaa\x09\xf3\xd5\x20\x2f\xc4\x60\x6e\xb8\xf7\x46\x3b\x81\x0d\xaf\x37\x42\xd0\xc7\xfb\x54\xc5\xdc\x0e\xdd\x8a\xdf\xdc\x9b\x5e\xb4\x87\x1e\xba\x22\x55\x45\x4b\x03\xaf\x9b\xe5\xeb\x00\x16\xf8\xbe\xec\x86\x1e\x76\x7f\x1b\x80\x9e\x63\xdc\x1d\x43\x1b\xf6\x51\x7b\xfc\x65\x85\xf2\x2b\x9a\x94\x1b\x4e\x1f\x28\xad\x4b\xd8\xc9\xbc\xfb\xa7\x6b\xc0\xd3\x5c\x95\x9f\xda\x5e\xfd\x16\x6b\x2b\xe0\x4e\xa6\x5a\xc7\xd9\x03\x4b\x51\x6c\x84\x2c\x15\x77\x21\x72\x22\xcc\x4e\x22\x40\x4e\xcf\xee\x18\xec\xc8\x66\xde\xe0\x65\x72\x19\xa0\xfd\xfd\xa8\xad\x62\xbf\x79\x0d\xeb\xae\xfc\xa6\xa0\x50\x55\x1c\xac\xc1\x15\x7c\x63\xfa\x99\x7a\x2d\x61\x51\xfd\x10\xd6\x3b\x36\x26\xaa\x87\x5d\x1d\xa2\xaa\x1b\xf4\x8b\xa2\x1f\xac\xbf\x1e\x76\x95\xe7\xc3\xee\x78\xfd\xf5\xd0\x39\xa2\xe5\xa3\xc7\xba\xb4\x9b\xf3\x3d\x7c\x9b\x61\x19\x2c\xd7\x9b\x1a\x8c\xbe\x36\xe6\xaa\xaf\x59\xcb\x4d\x75\xee\x67\xe3\xaa\x88\xe4\x0a\xa2\x3f\x05\x38\x18\xa8\x33\xab\xdf\x67\xbf\x4f\xff\x72\xd7\x6e\x9f\xd3\xba\xd7\x7d\x80\x14\x5b\xe5\x2f\x00\xaf\xf4\x00\x35\xbc\xfa\x0d\x7a\x25\x83\xb1\x37\x34\x15\xc6\x44\xd9\x16\x43\x44\x34\x32\x42\xb8\xdc\x6e\x39\x38\x24\x8a\x9c\xa2\x80\xc8\x59\xa5\x7e\x78\xc5\x5c\x8c\x62\xe2\x7d\x45\x76\x56\x28\xa6\xce\x87\x9c\xee\x0d\xa3\xb7\xaf\x79\xb1\x22\xea\xe7\x65\x41\x24\xcc\xe7\xa5\xc0\x6c\xc8\xa9\xf2\x8a\xf1\x63\x55\xc6\x4d\xf2\xca\xca\xca\x64\x3a\x83\x5a\x12\x0c\xab\x22\x66\x27\xe9\x57\x41\x79\x9e\x64\xfa\x72\xa5\x26\x5d\xd6\x52\xee\xc7\xc9\x48\x1e\x81\xa4\x14\xf2\x95\x50\xe4\x16\xa9\x12\xd4\x69\x1d\x75\x98\x16\xcd\xbd\x65\x39\x55\xac\xe3\xd2\x34\x95\xc3\x7d\x78\x91\xe8\x93\xcd\x86\x57\x09\xb7\xed\x5c\x99\xe4\x91\x0b\xaa\xcb\x97\xc6\xa3\xd2\x58\x9f\xbf\xd3\xcd\xca\x54\xd7\x9f\x27\xd6\xe3\x73\x95\x06\x9c\x3e\xd3\x6f\x92\xb1\xeb\xfc\x23\x4b\xaf\xa9\x28\x55\x43\xf3\x64\xbe\xa4\xa9\x2c\x64\xea\xa9\x14\x89\x0c\xdb\x11\xa9\xa4\xf7\x6a\xaf\xdf\x98\xc6\x56\xc9\x57\x39\xb5\xda\xe7\x5b\xe5\x94\x6c\x54\xa5\x28\x4f\x08\x7a\xe0\x40\x30\xbe\xfa\x89\x98\x5f\x3f\x9b\x5f\x17\x92\x3c\xf8\xc9\xfb\xfa\xd9\xde\xad\x25\x5b\x08\x55\xbf\xa4\xd9\xeb\x82\xbf\x54\x0c\xb4\x77\x34\xdf\xd8\xa9\xd5\xd8\x5c\x38\x1f\x32\x89\x08\x30\x54\x0b\x21\x0c\xf4\x3b\xf0\xb5\xc9\x99\xc4\x15\xdf\x15\xa9\x24\x78\xac\xd9\xad\xcd\x56\x5a\x85\x08\x5f\x7a\x51\x2d\x2e\xab\x36\x58\x43\xbb\x5e\x93\x2e\x47\x0b\x41\x39\x1c\xf3\xea\x53\x29\x9c\x59\x87\x07\x3a\x17\xfc\x34\x40\x8e\xf2\x41\x20\x9b\x5d\xf0\x22\x17\x8c\x72\xa2\x3f\xe1\xd0\x16\x12\xed\x94\x38\x1d\x36\xe4\x91\xe6\x37\xf7\xfb\x98\x2a\xfc\x2c\x0c\x29\xf7\x86\xfa\xa5\xe2\xbc\xbe\x12\x15\x35\x84\x54\x1c\x64\x2d\xc0\x77\x91\x1d\x9c\x13\x1e\x86\xd6\x43\xe1\x9f\x1c\x4a\xa0\xc6\x63\x80\xc3\x72\x70\xea\xb6\x3a\xf8\xae\x11\xfd\x46\xf3\xef\xde\xe4\x9a\x69\xc2\x2c\xd1\x36\xd2\x3c\x35\x70\x36\x02\xae\x5d\xe4\x91\x44\x06\x5f\x4b\xc8\xe8\x30\x79\x66\xd3\x0d\xda\x96\xf4\xfb\xc8\x26\x4e\x93\x99\x86\xab\x61\x18\x15\x7d\xd2\x92\x61\x07\xc4\x27\x45\x5f\x39\x5c\x9c\x53\x96\x45\x0c\x50\x30\xdd\xea\x41\x8e\xb6\xdb\x31\x7a\x22\xe2\xa2\x2f\x76\x5e\xb0\x5f\x87\x6f\x5d\xcc\x31\x27\x72\x41\x3b\xa2\x65\xdf\x55\x31\x0e\xd9\x3d\x1b\xc4\x33\x0c\xbf\x32\x43\x60\xd4\x62\xbb\x36\x49\x2c\x2b\xa9\x20\x0f\xe4\x55\x71\x1e\x3f\x95\x4f\xe6\xab\x41\x39\xf8\x74\xd1\x3f\xb8\xc6\x41\x80\xfa\xd5\x96\x8a\x25\x75\x8b\x46\xff\x7b\xfb\xa9\x44\x9f\xca\x27\xb2\x60\x17\x6a\x05\x08\x9f\x09\xef\xac\xfc\x2a\x47\xf5\x32\xa2\x08\xc3\x21\xc2\x7b\xa8\x8c\x7f\x80\x4d\x88\x44\xdd\xbd\x60\xa1\x0d\x06\xbf\x79\x41\xbc\xa3\xa6\xd3\x3a\x2f\x0b\x49\xac\x5b\x23\x29\x88\xfc\xc5\x2b\xd4\xdc\x62\xbe\x5c\x45\xfe\xf2\xb5\x1e\x1f\x7b\x9f\xbb\x41\x9f\x21\xd4\xa9\x23\x26\x2a\xae\x6f\x19\x10\xc2\xe0\xea\xb9\x0c\x10\xfd\x90\x17\x60\x70\xaf\x82\x62\x49\x50\x58\x2b\x65\xc0\xad\x3c\x2c\x7d\x88\x2c\xb3\x13\xba\xbc\x15\x65\x4d\x82\x20\x56\xd1\xa7\xf1\xb9\xb7\xbc\xe7\x0f\xac\x91\x1b\x36\xb4\xe3\xdc\x38\x89\x3b\xe8\x0e\x9c\xb0\xea\x02\xfa\xae\xc5\x10\x55\xf1\x0f\xcc\xb9\xab\x2e\x99\xb5\x5f\x83\x7d\x70\x0e\x3d\xce\x09\x3d\x14\xe4\x34\x8f\x72\x74\x88\xee\x73\x12\x31\x78\x1f\xf3\x34\x1a\xe1\xde\x08\x21\x09\x85\x56\x8a\xed\xc9\xe5\xdd\x82\xcf\xf9\x72\xc0\x86\xa2\x18\xce\x97\x3b\xd9\xb2\x6a\xe3\xad\x6e\xc3\x98\x2d\x54\x8d\x74\xf8\x80\xe4\x6e\xaf\x03\xdb\x8e\x6c\x34\xca\x81\x81\x0d\x9d\xa0\x5a\x31\xd5\x89\xb9\xbd\x5e\x84\xd2\xc6\x3a\x62\x0d\x29\x3b\xc2\x3e\x49\xc7\x2c\xe2\x98\x2b\xd0\x29\xc9\x44\xff\x6d\x3a\x89\x6c\x8a\x93\x69\x9f\xa9\x11\xe6\x7b\xae\x38\x27\x27\x10\xe3\xeb\x79\xad\x45\x60\x9e\xfb\x7d\xf0\xaa\x61\x42\x7d\x00\x70\x5a\xcd\xe1\xaa\x88\xa8\xbd\x2a\xfb\x8e\x2c\x3a\x1c\x8c\x41\x2d\x93\x9a\x73\x28\x93\x27\xb6\x22\xb1\xbf\x6c\x8c\x92\x7d\x4d\xcd\x50\x2c\x9e\x0f\xc6\x61\xd8\xf3\xda\x82\x1b\xd1\x6c\x4d\x07\x3f\x91\x4f\x8e\x4d\x5a\x43\x9a\xc0\x63\x77\x46\x6f\xdb\x77\x45\xb4\x9d\x70\x9c\x3b\xee\xbf\xd4\xbb\x60\xdc\x45\x65\xee\x73\x62\x83\xeb\xba\x4c\xed\x78\x0f\xb3\x1b\x4b\xdc\xcc\x16\xa9\xc0\xa6\x53\x42\xd5\xfb\xa8\x83\x44\xd7\x18\xdf\x6a\x64\xce\xd3\xd6\xec\x48\x15\x91\xfd\x98\x02\x7e\x37\x2a\xff\x2a\xe1\xf2\x96\xc6\x15\xd0\x03\x86\x9e\x82\x30\x13\x1e\x8f\x70\x5a\xcc\xf5\x40\x73\x3d\x26\xf3\xd9\x5f\x48\x90\xdc\x17\x15\x32\x88\x7d\x3c\x31\x16\x35\xc4\x11\xab\xf5\x55\x99\x6e\x60\xe1\xd7\x46\xc7\x4e\x71\x6f\x56\x56\x42\x0f\xdf\x37\x94\x8b\x36\xd2\xce\xa1\xa1\x56\x2c\x1f\x54\x14\x92\x24\xea\xdc\x23\x75\x63\xb1\xd2\xc0\x8a\xf3\x97\x05\x67\xbf\x3d\xd2\xaa\xa1\xc2\xc6\xa3\xd1\xef\x0f\xbb\xb2\x0f\x9b\xd2\xec\x64\xe9\x74\xd2\xa1\x51\x8e\x30\x8d\x94\x44\x24\x6f\x97\x09\xe4\x35\xf9\x87\x88\xf2\x4a\x3a\x80\x03\x39\x6b\x36\x4f\xb2\xc0\x70\xc5\x58\x7b\x33\xcc\x8f\xb7\x2d\x2c\x25\x03\xd2\x91\x00\xe6\x59\xe4\xc2\x34\xa4\x56\x78\x49\xe7\x5f\x68\xfa\x0b\xe5\x85\x42\xa3\x7b\xe3\x8a\x9c\xaa\x96\xc7\x40\x73\x96\x6b\xd4\xda\x6e\x47\x95\xa3\xea\x07\xe3\xbf\xc0\x0b\x63\x77\xf4\xb7\x08\xdd\xd7\x02\x70\xd6\x91\x33\x49\x24\x78\x6f\x5b\x95\xac\x34\x81\x23\xd4\x40\xe8\x20\x33\x49\xd3\x97\x12\xc3\x08\xc3\xb7\x2e\x33\xdf\x08\x60\x1e\xac\x83\xda\xdb\xd4\xaa\x20\x36\x41\x22\xd9\xd9\xb4\xba\x15\x36\x43\x6b\x86\x78\xbc\xd9\x26\x02\xe4\x09\x27\x44\x5b\x8f\x8a\xba\x55\xa2\x23\xdc\xae\x8e\x6e\xd1\xf3\xa1\x56\xbf\xd8\xab\xd9\x40\x6b\x9a\x0d\x5a\x72\xb7\x43\x78\xa4\x63\xee\x7d\x13\x0f\x6b\x87\x70\xdd\xa9\x80\x73\x7a\x08\xe1\x13\x25\x86\x43\xf1\xca\xc8\xbe\x30\x7d\x74\x8f\x5e\xff\xf3\x7b\xe4\x46\x3e\x55\x86\x24\xdb\x6d\x24\x88\x04\xdb\x55\xd8\x65\xd3\x80\x21\x3f\xc1\x17\xac\x93\xa8\x8e\x6c\xe7\x8d\x12\x74\x19\xcc\x82\x91\xd1\x21\x7b\xf6\xc7\x30\xe4\xbd\x96\x36\xb6\xdb\xbc\xd7\xd6\xca\x21\xeb\xf7\x51\x6b\x0d\xf0\x8f\xd4\x42\x9a\x84\xe1\x2f\x12\x2d\x95\xbd\xc3\xb0\xf1\xb7\x0f\xd9\x8b\x1f\xea\x7a\xaa\x34\x2f\x55\x4e\xb8\xbb\x6c\x5a\x17\x5a\x80\xc8\xc5\x41\xc2\x3c\x5e\x47\xc4\x2b\x3a\xdd\x78\x6e\x04\xcc\x0c\xb7\x56\x52\xe1\xe6\x75\x2d\x7d\xf9\xad\x0b\x48\x53\xcf\xe5\x12\xd9\xd0\xad\x3c\xa5\x5c\xd7\x36\x15\x64\xf9\x6e\x59\x64\x2c\xed\x82\xe3\x42\x25\x52\x09\xb0\x1e\x47\x18\x9a\x82\x93\x88\x37\x79\xbd\x1e\xc6\x1a\x5c\x65\xc5\xfc\x4b\x80\xf7\x95\x5b\xfa\x43\xb5\x33\x6c\x2d\x7c\xeb\xae\x86\x42\x91\xe3\x47\x07\x10\x60\xd3\xb8\xbb\xf5\xf3\xe2\x86\x72\xf5\x6a\x9e\xd2\xaf\xe2\xb2\xb8\x30\xad\xb8\xa5\xdc\xb7\x35\xe2\x35\x2e\xf3\x9e\x79\xb6\x14\xda\x33\xc9\x96\x92\x6a\x86\x06\xaf\x51\x4e\x2a\xcd\x3c\x1f\xea\x3d\x68\x44\xa0\x35\xda\x12\xdc\xa8\x44\x80\x23\xdf\x2a\x5c\x98\x44\x42\x45\xb1\x06\x6d\xef\x86\xfc\xbe\x93\x3b\x5e\x53\xa3\x7c\xb0\x11\xf6\x26\x33\xb7\x45\x7d\x0a\xcc\x8f\x38\xef\xd3\x76\xe4\xa8\x20\x97\x4c\x39\xc5\x48\xd4\x2f\x66\x14\xa6\xf8\x90\xe6\xe5\x86\x53\x13\x4c\xcd\x7c\x3b\xf4\xc1\xa6\x4a\xd4\xd8\x7c\xa7\x7c\x56\x4c\xa2\x82\x94\xa6\xb9\x2f\x2c\x3a\x96\x7f\x4b\x84\xf6\x0c\x01\x99\x20\x67\x2c\x8f\x36\x58\x00\x33\x4d\x22\xcf\x11\x42\xcf\x49\x02\xee\xc2\xbd\x96\x36\x08\x0d\xf6\xb4\x84\x13\xb2\x31\x8a\xce\xf7\x72\x98\x71\x81\x45\x51\xc5\x50\x4b\x70\xd1\x1f\xbb\x11\xb2\xff\xb1\x0f\x7d\x95\xd8\x9e\x92\x18\xbb\x8c\xb3\xed\xb6\x42\x6c\x81\xc2\x00\xc2\x74\xcf\xb9\xac\x7c\x88\xe4\xe4\xfb\x48\xa0\x41\xab\xd2\x45\x5f\xe1\xc1\x0e\x9e\xc1\xf6\x60\xcf\x05\xc9\xd5\xf9\x54\x2c\x12\xee\xb1\x46\x16\x51\x8f\x03\xf7\x03\xec\x4a\xe5\x3b\xd6\x32\xa2\x30\x84\x32\xd7\xfa\x23\x72\xbe\xdc\x20\xd3\x85\xf1\x32\x07\xf9\x30\xff\xe4\x4a\x99\x9d\x57\x7c\x9a\x0d\x19\x1d\x6e\x9e\x59\xfe\xcc\xa6\xdf\x47\xe5\x74\x33\xf3\xda\xd9\xed\x19\x45\x24\x6a\x6c\x66\x28\x9e\xf7\x99\x26\xae\xdd\x20\xbf\xda\x43\xb7\xff\x34\x68\xe2\xa5\xa9\xf0\xa5\x98\x35\xbf\x73\x98\x7a\x9a\xf5\xdb\x17\x00\x9b\x07\x63\xe4\xbe\x14\x70\xd2\xf5\x14\x40\x35\xc9\x61\x9c\x1a\xb2\x36\x37\x82\x97\x76\x5e\x44\x85\xed\x72\xd4\x14\x8a\x28\xea\xab\xdb\x94\x90\xd1\x4c\x04\x08\x41\x20\xad\xea\x20\x79\xdb\x9d\x10\xe6\x7e\x0f\x8a\x8e\x35\x2b\xab\x38\x17\x1e\x70\x02\x80\xda\xe4\x07\xdb\xd3\x5f\x60\xaf\xaa\xdb\x78\x82\xfa\xe3\xaa\xb2\x79\xdb\x1a\x6d\xf5\x13\x9c\xd7\xb8\xcb\xcd\x42\x13\xb3\xa2\xf1\x60\x8c\xf7\x0e\xd6\xef\x4c\x1d\xec\x73\xf9\xce\xf7\x46\x3b\xb3\xad\x5e\x3c\x62\xc7\x2d\xa3\x76\xd2\xe1\x12\xb2\xaf\x0b\xbe\x4a\x64\x27\x91\xbc\x51\xb0\xa4\x15\xf3\x1d\xf9\xa1\x89\xdd\x88\xf8\xe6\x42\x5e\x53\x01\x61\x94\x59\x7e\xfd\x12\x20\xca\x39\x9d\x8b\x08\x19\xc5\x46\xf5\xae\x3f\x54\xa8\xea\xe1\x67\x1f\xcc\x57\x87\x4d\xa1\xfc\xda\xdb\x3f\xd1\xa6\x62\xda\xa7\x04\xf9\x31\xca\x15\x13\xd8\x1a\x6f\xd1\x94\x89\x82\x9f\x94\x6f\xe0\x4a\x93\x5e\x6e\x61\x9e\x7b\x4c\xa0\xa8\xce\xb0\xd8\x45\x2b\xa4\x77\x4b\x9a\x1d\x6e\x23\x64\x95\x4a\x79\x96\xbe\x52\xc3\x56\x45\x53\xd0\xa0\x87\x2c\xd0\x05\x20\xdc\x98\x3a\xad\x4a\x02\x9e\x74\xf5\xa0\x8d\x31\x51\xb5\x1e\x3f\xec\x43\xbd\x14\xeb\x06\x80\xac\x3f\x57\xc3\xc5\xe2\xc0\x8f\xec\x8d\x41\xb7\x4a\xa8\x8e\xc3\x50\x98\x35\x83\x87\xe8\x39\xe1\x56\x38\xe4\xe6\x89\xe2\x99\xce\xb9\x2c\xac\x2e\x3e\x6f\xca\x65\xb6\xdb\x96\xc4\xe7\xb6\x2a\x92\xef\xa0\x27\x2a\xd2\x59\x61\x38\x22\x04\x6c\xbb\x2b\x28\xf4\x11\x8c\x1d\x22\x35\x6c\xe1\xac\x8d\x79\xa0\x73\x0d\x8c\x72\x38\x50\xc6\x1d\xba\xbc\x9b\xfe\xa4\x06\x15\xb8\x33\xe7\xe5\x1d\xf0\x01\x71\x6e\x38\x5b\x49\x15\xe2\x8d\x61\x77\xda\xfd\x7d\x75\x25\x52\x6b\x56\xea\x59\x11\x86\xc5\xc0\xf9\x7e\x3a\x82\x87\xd6\x8e\x47\xf7\x83\xab\x22\x12\xf1\xd6\x8b\xf2\x3c\x91\xab\xa2\x7e\x0f\x12\x55\xd7\x1b\x8f\x5d\x3d\x84\x2f\xa0\xdd\x0f\x46\x0e\x50\xc8\x91\xbf\x30\x5f\x09\x32\x71\x78\x8b\x9e\xb3\x8f\xdb\x6d\xd2\xb3\x3b\x20\x37\xc8\x17\xb8\xf5\x2a\x7d\x3f\x13\x28\x95\xfb\x22\x38\xa7\x04\x7c\x1f\x46\xed\x66\xc0\xd5\xdd\x1c\x11\x92\x43\x87\x1a\x76\x6d\xb7\xe2\xb9\x4e\x81\x21\x3c\xd3\x1f\x72\x78\x93\x48\xfd\x26\xbf\x08\xdd\x1c\xae\x32\x89\x40\x71\x54\x7d\x3e\x17\x13\xbf\x70\x95\x65\xe3\x0a\xab\x24\x14\x57\x59\xcf\x04\x78\x44\x83\x7a\x7a\x58\x8a\x23\x97\x2b\x6a\x11\xf9\x3d\x62\x33\xd0\x67\x7c\xe2\xd7\xd2\x3d\x40\xdf\xa6\x10\xe6\xc8\xf4\x75\x59\x3c\xe7\x7b\x7a\x1a\x61\xe8\x8b\x23\x84\x50\xc7\x94\x26\x1c\x34\xb5\xc0\xbd\x0b\x77\xa5\xa2\x0a\x37\xd3\xef\xaf\x7b\x64\x2a\xa2\x0c\x64\xfd\x46\x0d\x06\x54\xc8\xaa\xfa\x00\xfe\x75\x6c\x22\xb8\x53\x70\xe3\x37\x70\xc7\x32\x88\x73\xa8\xef\xfe\xbe\xbb\xf8\xaf\xdf\x6f\x1f\x87\x98\x93\x57\x45\xe5\x04\x36\x7b\xfe\x47\x50\x93\xf3\x75\x78\x2c\x6a\xaf\x35\x26\x1e\x39\x5a\x2a\x14\x45\x13\x79\x81\xc8\x2a\xba\x65\x9c\x90\xc2\xc1\x03\x2a\x85\xff\x8d\xeb\xb9\x23\xa7\x5f\xc5\x05\xbb\xca\x58\x6e\x83\x8a\x95\x61\x78\x23\xd1\x4f\x47\x3d\x53\x12\x84\x1f\x97\x94\x66\xca\xbe\x91\x10\x31\xa9\x0b\x2b\xd4\xc8\x63\xb1\xd7\x8b\x06\xc2\x7c\x67\x0d\x42\xf4\xb9\xc0\x73\xe7\x0a\xe0\x05\x19\x1d\x2e\x9e\x65\x06\xfd\x5b\x18\x77\x78\x29\xc9\xa6\x0b\x08\x86\x9b\x1a\x5c\xf4\xd0\x84\xd7\x4b\xc1\xc0\x37\x0c\xd5\x5f\xa7\x73\x42\x0a\x85\x2c\x1f\x26\x3d\xa2\x72\x0f\x51\x42\x36\x51\xa2\xc0\xc3\x92\x30\x43\xd9\x88\x30\x14\xcf\xc8\x5c\x36\x52\xad\x65\x27\x1d\xce\x81\x85\x0f\x71\x94\x8a\xc8\x7e\xe2\x40\xa1\x5b\x01\x02\xd6\x77\xb4\x24\xbd\x31\xc2\x10\x25\x3d\xc5\x73\x79\xb8\xf1\x32\x0c\xa3\x97\xb2\x4a\xd5\x1c\xc2\xee\x97\x87\xf6\xd5\x34\x7a\x2f\xe9\x57\x98\x40\xe4\x62\x9c\x73\x79\x65\x70\xa2\x27\xe2\xee\xda\xce\x46\x18\x58\x93\xac\x1a\x44\xa7\xf0\xb9\x5c\x6b\x9c\xa0\xdd\xbc\x4f\x52\x78\x25\x76\x6a\x61\xcc\x82\xec\xc0\xf1\x43\xe3\x44\xeb\xe7\x06\xe1\x47\xce\x6c\x20\x2f\xae\x77\x87\xb8\xde\xdd\x30\x94\x47\xbf\x27\xd7\x76\xae\x31\x0c\xc3\x4e\x9d\x5b\x05\xf6\x97\x45\xc4\x1d\x1d\x60\xf5\xed\x2a\x20\x21\x4b\x3d\x97\x3e\x89\xed\xf3\x46\x2a\x3e\xe8\x08\x6f\xd4\x78\x7d\x9d\x8a\x1a\x84\xc7\x35\x00\x5f\x83\xef\x4a\x46\xfe\xc7\xd1\x08\x1e\xa9\x3d\xba\x17\xbd\x51\x85\x93\xfc\xad\xee\xd9\x52\xd8\xc7\x12\xe7\xa4\x37\x3a\x8c\xf2\xfd\xec\x28\x51\xc7\x8e\x7a\x0a\x3d\xda\x6e\x23\x9f\xa6\x07\xeb\x9c\x7b\x51\xac\x2b\x02\x77\xbf\xd4\x63\xb0\x04\x14\x4b\xd1\xfe\x3b\x54\xbd\xe9\xe4\x47\x47\x9d\x59\x83\x58\x84\x7b\x51\x1d\x0f\xaa\xa0\xc0\x3e\x7c\xc8\x2f\x21\x81\x1f\x0a\x43\x85\x9e\x1d\xe6\xf2\x6a\xdc\xff\x22\x61\xaf\xc2\x55\xde\xca\x9f\x14\xc6\xf4\x02\x6c\x70\xf0\x4f\xf0\x67\x27\x29\xa9\xeb\x3c\xc9\x22\x8a\xad\x83\x70\x8f\x77\x69\x1f\x26\xa7\xc3\xba\x8e\x8e\x0b\xb4\xf4\xdb\xb2\xa7\xb4\x7c\x7e\x23\xb7\x4f\xb3\x51\x4a\x6a\x17\x60\xda\xd2\x35\x6e\x4c\x15\xef\x1f\x4b\xcb\xca\xed\x29\x7d\x59\x34\xd7\xb0\x3a\x54\x7f\x75\x11\xdd\x9c\xde\x2a\x4a\x00\xde\xb2\x1f\xd4\x53\x0a\xeb\x8b\xff\x06\x1f\x5a\x2c\x53\x5b\xe6\x5c\x2d\x33\x98\x9a\x2b\x9d\xd6\xc8\xa5\x87\x7f\x32\x81\xd9\x5b\x45\xc5\x95\x70\x61\x68\x65\x4d\x8a\xb2\xaa\x2a\xb4\x70\x1a\x05\x58\x50\xec\xad\xd1\x7a\x9d\xdd\xf2\x2d\x8c\x57\x2d\xd0\xf2\xe5\xd5\xbf\xf8\x7e\x55\x7d\x86\x8b\x81\x57\x56\xaf\x1c\x2b\xed\x00\xe1\x62\x65\x87\xb9\x79\x67\x18\x2e\xf5\x9d\x85\xb8\xd3\x8b\xa8\x57\x5a\xde\x87\xb2\x26\x48\x9e\xfd\x45\x15\xdd\xe8\x30\x33\x55\xd3\x7d\x2f\x41\x73\xb7\x19\xd9\x0c\x38\xe6\x64\x53\x41\xe9\xcc\xd4\xdc\x43\xf8\x75\x18\x31\x41\x04\x07\x10\x61\x70\xa7\x70\x08\x05\x30\xf4\x52\x0d\x18\x28\xba\x3c\x7b\x1a\x86\x11\x23\xaf\x44\x24\x10\xc2\xd1\xfc\xf9\x70\x34\x1a\x6f\xb7\xf3\x67\x03\xf9\x43\x92\x0d\x5f\x59\xa4\x2a\xca\xbb\x46\xa9\xfe\x40\xb8\x1c\x72\x5a\x0a\x64\x39\x2f\xea\xe9\x55\xa9\xee\xfb\x0b\x55\x64\xe2\x74\x31\x43\x3b\xe7\xd0\x50\xaa\xb9\x28\xb4\xa1\x6d\x23\xc8\xe8\x50\x3c\xa3\x75\x6d\x9b\x7e\x5f\x20\x9b\x38\x15\x46\xa9\x86\x78\x69\xb5\x47\xdc\x5b\xcd\xaa\x73\xa0\x7f\xf6\xec\xfa\x3d\xf8\xb7\xdd\x79\x1c\x2f\x45\x89\x02\x23\xac\x20\x6d\xdc\x36\x60\x7f\x15\x87\x05\x29\xdc\xa7\x15\xf7\xfb\x09\xe2\xd3\x86\xc6\xc9\x34\x99\xcd\x48\xa1\xc7\x06\xfc\xb6\xc2\xe9\xa2\xcf\x70\xbe\xb7\x8e\x43\x13\x1b\x81\x34\x70\xb1\xde\x17\x65\xfc\x3d\x98\x8f\x43\xf1\xcb\x42\x24\x56\xb8\xdc\xc6\xb7\x53\x69\x20\x1b\xe6\x9e\xd8\x36\xc7\xee\x1b\xd6\x2e\x56\x76\xb6\x11\xd0\x16\xed\x19\xc8\x97\xc1\x08\x83\xef\x98\xfd\x63\xe6\x9a\xc8\x25\xd4\x79\x53\x36\xeb\x04\x82\x7e\x15\x01\x04\x03\x53\xbe\x9d\x63\x83\x20\xc9\xb4\xb2\xea\x20\x0e\x40\xf1\x08\x92\x13\x1a\xc9\x82\x6a\xe7\x03\x88\x74\xb6\xa1\x5a\x51\x7d\x67\x9b\x57\x06\xa6\x95\x47\x0e\xea\xf1\x59\x72\xc0\xf2\x94\x1e\x0a\x08\x2a\x21\xe1\xdb\xd4\xb5\xc1\x6a\x09\x74\x44\xaa\xc3\x26\x9f\x8f\x5a\x92\xd1\x7a\xd2\x1e\xd2\xa0\x07\x5d\x51\x36\x00\xa7\xd5\xf3\xa1\xa6\xb3\xac\xb0\x56\x97\xf1\x14\x5f\x9f\x22\x53\xb7\x9a\x1a\xa3\xad\x0c\x8d\x86\xf2\x68\xa7\x72\x45\xad\xd0\x31\xa2\xc1\xdc\x24\xda\x5f\x89\x68\x83\x7b\xa3\x62\xce\xad\xda\x37\x1f\x5e\x6d\x58\x26\x50\x9c\x68\xcd\x32\x3b\xa0\x82\xfa\x31\xf0\x60\x61\xac\xe2\x18\xce\x89\x1e\x71\x47\x65\x19\xff\xaf\xc0\x87\x85\x7d\x00\x5b\x48\x89\x71\x3c\xb8\xa4\x50\x4a\x17\x32\x85\x55\x55\x9c\x0f\xaf\xae\x41\xde\x28\x09\x6f\xfd\x13\xdc\x95\xd2\xaf\xc2\xa6\xdb\x8f\x49\x64\x0b\x11\x5b\x13\x3b\x05\x88\x53\x13\xc3\xf1\x43\xb1\x62\x1b\xfb\x53\x23\xdc\x59\x85\x04\x4e\x5c\x8b\x6e\x1e\x35\x5d\x4c\xec\xaf\x7e\xd0\x0d\xfa\x9a\x7f\x58\x8d\x37\x08\x50\xec\xa7\x01\x73\x4a\x76\x5c\xf3\x21\x20\xcb\x5c\x25\xf3\x2f\xd7\xa0\xca\x02\x07\xb4\xfa\x44\x62\xe2\x7e\x3a\xc3\x15\x71\xe4\xe5\xec\x21\xbf\xbc\xc6\xbc\xa6\x95\xbe\x68\xc7\x10\x54\x0e\xb2\x01\x58\x84\x5b\xb2\x26\x39\xf7\xaf\x9a\x40\x46\x45\x0a\x7a\x54\x06\x58\xb2\x2b\x98\xbc\x04\x43\x6a\xc1\xa0\x5d\x4f\x3f\xd1\x2f\x10\xab\xbb\xd1\xab\xdf\x6c\xa7\x4a\xa0\xdd\x22\x0b\x5d\xc6\xec\x84\xfd\xed\xed\x85\x4d\xf5\x76\xc3\xa6\x76\x68\xfd\x04\x08\x59\xd0\xb1\x57\x77\x60\x24\x30\x16\xaf\x2b\x91\x43\xde\x20\x73\x75\xae\x3c\xcc\xd7\x95\x46\x7f\xf5\xf9\xc2\x2e\xe7\xc3\x0d\xbc\x70\xb6\xab\x99\x66\x1b\x85\xb9\xa8\x5c\x25\x9c\x37\x12\x06\x90\x38\xb7\x54\x7c\xd4\xce\xa6\xda\xef\x6e\xd0\x6f\x76\xa0\xa2\xaf\xc6\x6a\x7d\xdb\x24\xa7\xf9\xd0\xbe\x68\x83\x7c\x58\x7f\xcf\x90\x67\x2e\x11\xf4\x9b\x25\x94\xbc\x06\xb3\x9a\x96\x46\x63\x26\x06\x6a\xec\xcc\x9b\xe4\x8c\xf4\x5d\xc2\xbf\x50\x5e\xaa\x38\xe2\x2d\x7c\x92\xed\xb6\x40\xf7\x66\x91\xb4\x57\x62\xb3\x5d\x8f\x2e\x90\x7e\x51\x83\x7f\xc7\x4a\x04\x48\x8d\xd1\x57\x10\x29\xa9\xf8\x90\xd3\x54\x85\x2e\x88\x92\xc6\x62\x24\x0e\xc4\xac\xef\x4f\x18\x46\x89\xef\xa7\xa4\x6d\x17\x11\x6e\x97\x7e\x81\x23\x99\x62\xbf\xc2\x1f\x90\x4d\x55\x79\x92\xb4\x0b\xb0\x5c\xd6\x05\x47\xff\x9c\x04\xab\x5a\x56\xb3\x66\x12\xcd\xd9\x3f\xa4\xda\x81\x6a\x68\xd9\x3a\x92\x26\x58\x70\x84\x70\x61\x71\xd5\x92\x8c\x0e\xcb\x67\x0d\x6c\xad\xc2\x59\x4b\x83\xef\x37\x31\xba\x72\x86\x33\x52\xd4\x8d\x0c\x37\x48\x2e\xe0\x66\xd6\xc9\xc2\x70\xcf\xea\x4c\xb3\x59\xdb\xb9\x7a\x60\xf2\x9b\xfa\x2c\x73\x57\x67\x40\x67\x07\xc8\xc3\xd0\x35\x3e\xc5\xc1\x33\x83\x91\xb7\x2a\xbf\x0c\xe6\x4b\x83\xfe\x4a\xa4\xac\xe1\x51\x05\xc5\x0f\xf3\xc3\x9c\xb0\x4a\x6c\xe9\xb2\x0b\xeb\x3b\x62\x91\xb9\xbc\x3a\x7f\x61\xd8\x02\xe2\x72\xb4\x9b\x9b\xc1\x55\xe3\xcd\x68\xdd\x49\xa5\x41\x31\xac\x9b\x0d\xc0\x0e\x34\x7e\xc1\x00\x49\x60\xe6\x55\x85\x89\x19\x04\xc0\xa6\xca\x9b\x63\x01\xbd\x7d\xec\x4d\x21\xfb\x1b\x29\x84\x00\x3b\x90\x1e\xcf\x0d\x3a\x8a\x45\x0d\x57\xb3\x63\x97\xaf\xc1\x02\x3e\x14\x89\x25\x6b\xf6\x46\xb2\x02\x10\x57\xbe\x46\xba\xf0\x68\x2b\x49\x73\xea\xaa\x40\x5d\xe5\x33\x55\x7b\xec\x2c\xc8\x82\xba\xf1\x1d\xe1\xe5\xa9\x93\x5a\x85\x04\x61\x1c\x49\xf2\x05\x68\x57\x9d\x7f\x98\x3c\x73\x8e\x70\x62\x49\xd6\x69\x22\x8f\x6c\x75\x0e\x37\x30\xb3\xa6\x84\x59\xef\x24\xea\x6c\x86\xcb\x24\x4f\x33\x0a\x6e\x16\xc0\xdd\x50\xb9\xdd\x66\x4d\x75\x35\x76\x9d\x17\x9c\x0e\x94\xa0\xae\x32\xba\x4c\x69\xb4\xc1\x59\xdd\x17\x41\x1b\x8c\xcb\x10\x66\x61\xb8\x19\x42\x70\xa6\x49\x8d\x77\x99\x59\xfe\xdf\x76\xcb\x15\xe0\x8b\x0b\xef\x6a\x65\x08\xff\x02\x76\xd2\x9c\xa6\x3c\xb9\xf5\xc4\xfd\xa9\xff\x7c\x4b\x64\xe2\x8d\x52\xff\x41\xf7\x11\xaf\x2e\xc3\x76\xeb\x7e\x91\xe9\x0c\x21\xe5\xf5\x56\x54\x92\x36\x97\xb6\xea\x08\x4f\xd1\xc0\xc2\x7a\xc3\xea\x70\x74\x8e\xb6\xdb\x88\x0d\x48\xf3\x09\xc0\xc2\x57\xeb\x7a\xab\x5a\xda\xf3\x22\x0a\x4f\xd6\xad\xf4\x1a\x76\x5e\x3f\x70\xc2\x3d\x5a\xe3\x4f\x55\x17\x9a\x06\x22\x81\xa5\x81\xb0\xb3\x16\x8a\x1f\x56\xb7\x0e\x68\x79\xb6\x0c\xa4\x79\x5d\xf9\x13\x24\xc7\x45\x74\xaf\xb8\x76\xad\x11\xe2\x1d\xa5\xe8\xe7\xd4\x8b\xc8\x3b\x06\xbd\x3b\x57\x6f\xd9\x16\xd0\x3c\x9f\x31\xc8\x74\x7d\x3d\x65\xd0\xb0\xd0\xca\xc8\x8e\xb6\x6b\x5d\x39\xab\x9e\xaf\x98\x2a\x44\x4c\x94\xca\x4b\x1c\x8c\x02\xbd\xb1\x74\x58\x29\x7c\x0f\x22\x31\xc9\xe3\x91\xf6\x82\x06\xd5\x1d\x65\x0a\x8f\x5f\xe5\x68\x57\xf9\x93\x18\xd4\x26\xc1\x34\xd7\x0a\x70\xec\xbd\xc3\x76\x47\xbc\xaf\x4b\x39\x66\x85\xa4\x37\xd4\x80\x5b\xa7\xef\x16\xe0\x8a\x67\xee\x4c\xbf\x59\x06\xce\xb2\xc4\xf9\xe1\xdd\xa9\x44\x68\x85\x5e\x23\xa5\xd9\x61\x0b\x0c\x22\xee\x2c\x96\x6a\xa8\x31\x74\x75\x5e\xbd\x63\x30\xf0\x8f\x41\x51\x5f\x9e\xd6\x79\x79\xc3\xdd\xd3\x8b\x5c\x1f\x2d\x7c\x6b\xd5\xa4\x96\x34\xbe\xbb\x35\xcf\x47\x61\x18\x8d\x08\xc9\x75\x18\x83\xdf\x4c\xc1\x37\xc9\xfc\x4b\xb4\x57\x1d\x7b\x84\xf0\xbd\x0a\x1d\x0d\xf3\x37\x71\xb8\xe1\xe4\xec\x76\xb8\xa4\xe2\xc2\xea\x5e\x79\x57\xc2\x9d\x9d\x2d\xd1\x23\xb4\xa6\xd7\x5d\x39\x9c\x31\x3a\x10\x3a\x0e\xe5\x1b\x99\xef\x05\xe3\xb4\xa3\x7a\x91\x70\xa7\x8d\x66\x2d\xe4\x8c\xeb\xb2\x58\x37\x87\xa5\xce\xa4\xc9\x77\x06\xe5\x67\xd4\x87\xf4\x23\xe5\xe2\x91\x11\xc9\x06\x1a\x75\xd0\x0e\x7b\xab\xdd\x8c\x45\x70\x13\x86\xbd\x74\x12\x8c\x9f\xc2\x71\x05\x15\xf6\x4e\xe3\x78\x2c\xdb\x55\xdf\xf5\xa1\x6b\x9e\xf0\x75\xc1\x72\x41\x95\xef\xbc\xb2\x51\xcd\xcf\xd5\xb6\x57\x8d\xa5\x24\xda\x13\x5e\x7d\x4a\x3a\x7d\x87\x9b\x0b\x51\x73\xbd\x4f\xdb\xfb\x03\xdf\x0d\x4a\x1f\x3c\x1a\xd3\xef\x1c\x6f\xb4\x3c\xaa\x84\xc0\xfb\x38\xc7\x56\x90\xa8\x43\x8a\xbc\xe6\xc5\xea\xbd\xec\x20\x52\x0e\xb2\x40\x1d\x4b\xb3\x96\xc7\xa8\x47\xe8\x64\xcf\x30\x8c\x28\xd7\x0c\x03\x5c\x7a\xec\x30\x68\xfd\xb7\x87\x8c\xd0\x4b\x5c\x31\x1f\x3a\x2d\x31\x14\xa0\x8c\xc4\x04\x1a\x39\x37\x70\x1e\x76\xd8\x79\x54\x10\xfe\xed\x91\x17\xc6\xb0\x02\xef\xf5\xed\x1b\xe9\xd8\xf7\x0f\xdc\x40\x74\xbf\xef\x12\xc8\x9c\xc6\xfc\x76\x3b\x77\x10\x08\xd7\x2d\x10\xc8\xbd\x7a\x98\xe2\xd7\x40\x2c\xc6\xbf\xed\xf0\xcf\xae\x9b\x5d\x10\x2f\x11\x7f\xe7\xf3\x42\x7b\x0c\x74\x54\x9b\x14\x9e\x51\xb9\xe2\xf5\x9b\x51\x22\x1b\x2f\x04\x99\x46\xff\x28\x19\x1d\xd2\x67\x6e\x43\x1a\xe9\xa3\xfd\x3e\xfa\x2b\x73\x7d\xf5\x3a\x85\x20\x46\xb1\x92\x81\x53\x72\x36\x7c\x5f\x94\xa4\xe1\x39\xa9\xe9\x29\x74\x49\x3d\x57\xa1\x4b\xea\xf8\x0a\x05\x46\x24\x35\xc0\x92\x88\x1d\x5e\xcb\x96\xe7\xab\x75\xb3\x71\xcb\xbe\x95\x95\x06\x0a\x73\xde\x6e\xe9\x70\xbe\x1c\x88\xe1\x7c\xe9\x38\x26\x5c\xb9\xec\x5e\xd9\x9f\xc2\xb2\x65\x51\x07\x4b\xbe\xa1\x5e\xbb\x6b\xf5\xf9\x6c\x34\x11\xb1\x83\xb3\xdf\xed\x2b\x45\x63\x47\xae\x70\x45\x1d\xab\x6b\x63\xd6\xe1\x39\xcc\xf2\xdd\x79\xbe\x03\x55\x2d\x15\x8b\x5f\x11\x53\xd5\xe8\x3f\xd3\x66\x74\x76\xa5\x9c\xe6\x08\xda\x8c\x21\x7a\xbe\xdd\x46\x39\x29\x86\x25\xcd\x0c\x3f\xc2\x8c\xc2\xf3\xdf\xb9\xdd\x06\xf0\x1d\x10\xc2\x70\x29\x2b\xac\x33\x06\x4a\x89\xa5\xa4\x5f\x94\xf5\xba\x44\x10\x92\x30\xcc\x87\xdc\xe5\xdf\x3f\x1f\x23\xb6\x88\xae\x69\x18\x5e\x6b\x86\xd7\xaf\x05\xcb\xa3\xe0\x53\x1e\x20\x42\x4c\x6c\x05\xaf\xca\xef\xaf\x3d\x23\x4f\x42\x46\xe8\x7e\x43\xa6\x55\x40\xc2\x8c\x8c\x0e\xb3\x67\x7e\xa9\xc3\xac\xdf\x47\x1b\x75\xa2\xbd\xf1\xe9\x62\xd3\x6c\x26\xe9\x54\x78\xeb\x4b\xdb\x72\xad\xe7\x30\x8c\x36\xe4\xba\x88\x6a\xf1\x28\xd5\xee\x4d\xe9\x6c\x87\x90\x22\x5b\xb3\x7a\xcd\xc1\xf8\x30\x7b\x2e\x87\x35\x18\xa8\x55\x9f\xdb\x12\x92\xec\x5e\x10\x30\x88\x5f\x45\x08\xa7\x64\x3e\x14\x45\x84\x3a\xf3\x21\x5d\xad\xc5\x5d\x04\x6a\x76\x61\xc8\x9f\x8f\x26\x0b\xb2\xa4\xd1\x42\x9d\xb7\x85\x3c\x9a\x1c\x34\xe7\x61\x43\xac\x3b\xd6\x30\xec\x25\x93\x54\x96\x54\xaa\x1d\xd8\x0a\xe4\x8f\x59\x54\x68\x7d\x0f\xcf\x12\x15\xa7\xc3\xf9\xb2\x7f\x53\x44\x36\xea\x3f\x42\xb1\xde\x12\x50\x07\x60\xe5\xbe\xfd\x09\xc3\x68\x41\x52\x67\x58\x23\x84\x8c\x22\x8b\x36\xd8\xd7\x3a\x0a\x27\xf2\x88\xe2\x35\x51\xba\xea\x0b\x2c\x8a\x38\xc5\xb2\xc1\x78\x33\xd9\x4c\xb3\xdf\x6f\x74\xd7\xb3\xb8\xc4\x05\x67\xd7\x2c\x8f\xd9\x76\x1b\x25\x13\x7d\xb4\xec\x44\x1d\x47\xb1\x93\x60\xbe\x11\x41\x1c\xf4\xe1\xfc\x07\x68\xd7\x79\xcb\xb5\x66\xd6\x1a\x48\x2f\x8a\x03\xc8\x3a\xa7\x49\x1a\x60\x8a\xd7\x68\x27\xe4\xfa\x84\xe1\xb1\xba\x6a\xf8\x23\x57\xdc\xe0\xc6\x50\xc9\xd2\xa6\xfe\x3f\xac\xbd\xdb\x92\x1b\x37\xb6\x36\x78\xcf\xa7\x10\x19\xfe\xf3\x4f\x98\x20\x45\xca\x5b\xfb\xdf\x3b\xab\x50\x0c\x59\x96\x0f\x6d\xd9\x52\x5b\x6a\x1f\x9a\xe6\x56\x64\x91\x60\x31\xdb\xc9\x04\x1b\x09\x56\xa9\x5c\xc9\x88\xb9\x9b\x8b\x79\x83\xb9\x9a\x67\x99\x47\xf9\x9f\x64\x02\x6b\xe1\x98\x99\x2c\xbb\x77\x8c\x2f\xac\x22\x80\xc4\xf9\xb0\xb0\xb0\xd6\xf7\xa9\xfb\x03\x72\x66\xd0\xde\xd9\xcf\x7a\x6a\xc6\x42\x8b\xde\xbb\xd6\x2b\xca\xba\x2c\x0e\xd7\x22\x97\x9b\x2f\x72\x95\x1b\xd1\xcf\x07\xe8\x73\x14\xa1\xda\x74\xef\x3c\x3d\x94\x79\x51\xa1\x3e\xce\x42\xee\x3d\xe1\x96\x6e\xca\xf0\x6c\x6b\x89\x70\x5a\xd4\xba\x95\x6f\xaa\xf2\x3e\x25\x4d\xa3\x9c\x5e\xc8\x08\x02\xd0\xa8\xa6\xf9\x45\xa5\x2a\xf2\x16\xfb\xc0\x01\xe8\x7e\x66\xdf\xa4\xa0\xb3\x0d\x9e\xbb\x6f\x82\xe9\xae\x87\x48\x73\x09\xb6\x30\xb2\x58\x83\x79\x74\x68\x43\x52\xef\x73\xa9\xf4\x4d\xaf\xf2\xea\x06\x0b\xf4\x50\xf3\x12\x5c\x91\xda\xcb\xa3\xd2\xcb\xa3\xb2\xcb\xa3\x70\x29\xec\x9b\x77\x5a\x00\xc4\xe4\x74\xbd\xbb\x9a\xcf\x66\x4d\x53\x81\x85\x9c\x49\x32\x99\xaf\x30\x16\xdf\x9e\x0a\xff\x83\xf8\x4d\xce\xa0\x60\xbc\x50\x26\x2b\x42\x73\x86\x06\xb7\x22\x6e\x8a\x3f\xc9\x50\x0f\xd7\x8a\xb6\x3b\x4a\x8d\xce\x08\xca\x11\x49\xb6\xd3\xad\x77\xb9\x7c\xa1\xd2\x9a\x90\xab\xc9\x9c\x3c\xe4\xec\x2b\x99\x72\x1a\x54\x8e\x8e\xa0\xa7\x2c\x27\x90\xd9\x7e\x7c\x36\x30\x66\x49\xd2\x0a\x40\x4c\x6f\x67\x83\x18\x36\x16\x57\xa8\xb5\x6a\x74\x3d\x46\x08\x58\xad\x9e\x2d\x9e\x0c\xf2\x24\xc1\xe5\x12\x95\xa4\x97\x4c\x98\x7d\xa8\xc7\x7b\xd7\x7a\xec\x5e\xae\xa8\xd4\xff\x43\xb5\x92\x1b\xeb\x78\x9c\x03\xa3\x06\xd6\x4e\xb2\xac\x82\x31\xa4\x82\x3d\x20\xb4\x68\xb6\xe3\x69\x41\x67\x84\xea\x38\xf8\x01\x58\xa4\xa7\x81\x34\x9b\xb9\x9e\xfb\xf0\x17\x8c\xf0\x0f\x3a\xaf\x0e\x2e\xa9\x73\x94\x81\x0d\x47\x51\x2c\x31\x72\x26\x7e\x63\x0f\xd9\x98\xc0\xec\xa8\xc4\x5a\x48\xc9\xd7\x6a\x44\x47\x62\xbb\x1d\x19\x0c\xd4\x76\x9a\xfc\x50\xa8\xbc\x04\x48\xbb\x33\xc9\xea\x03\x2f\x4b\xb8\xb3\x79\x9e\xc4\x00\x0e\x8d\xbb\x0b\xcf\x7a\xef\xe8\x4b\x24\xbf\xc5\xcd\xc8\xde\x32\x0f\xa2\x2c\x8b\xea\xe6\xcb\xbc\x56\x8e\xab\xcd\x84\x45\xd2\x7f\x51\xe5\xeb\xf5\x51\xe6\x8a\x3b\x90\x47\x97\x7e\x97\xd7\xdd\xc0\xb5\xd8\x1f\x44\x0d\xd9\x44\x8f\xdb\x2f\x3c\x5d\xc3\x3f\x04\x6e\x49\xb9\xe4\xf9\x1f\x42\x51\x19\xd5\x11\xa0\x3b\x06\x20\x54\x0e\xa2\x6a\xce\xf7\x5d\x40\xae\xd0\x5f\x9b\x5b\x84\x2d\x61\x28\xf5\xb2\x27\x68\xf4\x72\xf1\xa4\x0f\xdb\xcb\x94\xf1\x59\x58\xc6\x0c\x50\xaf\x9c\xfd\xa8\xbb\x56\x98\x3b\xf9\x7c\x36\x9b\xe9\x2b\x5c\x7b\xa0\x00\x35\xdd\x8e\xe2\xc1\x43\xd8\x18\x37\x45\x36\x9a\x3b\xc7\xc4\xeb\x32\x07\xc2\xae\x37\xe8\x15\x10\xe0\xe7\xf4\x0d\x67\x99\xd7\xea\x05\xcc\x4b\xb0\x04\x6d\x85\x19\xf3\x62\x17\x0a\xb8\x82\x71\x42\x08\x32\xe9\xbc\xf8\xdc\x37\xfe\x37\x32\x5f\xf3\xb7\x5c\x16\x62\x13\x1d\x45\xbf\x45\x47\xd1\xad\x72\x5a\x62\x03\xea\xda\x34\xd2\xda\x16\x59\xa9\x5a\x8b\x6e\x78\xc5\x73\x5b\x8e\xf9\x84\x16\xec\xa0\x52\x2d\x4a\xda\x00\xc1\xbe\x2b\x52\xf0\xaf\x83\x07\x83\xd1\x40\xc0\xc6\x53\xe7\xa9\xa0\x5a\x8c\x26\xff\xe3\xd9\x62\x04\xd7\xa1\x51\x86\x29\xac\xff\xd5\x9d\xde\x95\xf7\xf9\x01\x92\xd1\xdc\x8f\x9a\xb1\x2f\x61\xe6\x33\xc6\xf4\x5c\x2d\xcb\xfc\x50\xf3\x85\xbe\xda\x6f\xb2\x1a\xb1\x94\x69\x1d\xa0\xda\xc4\x72\x35\xbe\xd6\x5e\xe7\x1b\x84\xe6\x0a\x50\x6a\x78\x64\xc9\x0c\x3a\xac\xd0\x38\xcf\x82\x1d\xe2\xdd\xa3\xea\xc6\x84\x94\xbb\x72\xe5\xae\x22\xba\x7c\x38\xd5\xdf\x8a\x3a\xdd\x85\x48\xb3\xc6\x93\x60\x8e\x7c\x29\x03\x33\x8e\x92\xcd\x70\xef\x47\xc0\x11\x75\x71\x51\xb1\x2a\xe4\xce\x83\x0a\x54\x4d\x53\xf5\xd5\x2e\x1c\x29\x10\x97\x43\xe3\x91\x2a\x32\x3e\xee\x7e\x8c\x27\x4f\x6c\x64\x13\x57\xb7\xc7\xd2\x26\x4e\xb0\x2c\x56\x78\x8a\xa2\xe9\x8b\x9b\x3a\xff\xe0\x7a\xd8\x81\xd9\xca\x23\xf0\xf0\xb6\xed\x38\x1c\x59\x81\xcd\x53\xc1\xac\x17\x4c\xd3\x0c\xbf\x11\x69\xe5\x71\x6d\x75\xbf\xee\x78\xfa\xa2\x30\x97\x2e\xa2\xcf\x05\xdd\x8d\x38\x6e\x15\x98\x9d\x0d\x67\x54\xb1\x2a\x1e\x18\xdd\xc1\x74\xa8\x02\x61\x40\xf2\x5a\x2d\x6e\x45\x8a\x7f\xd9\xe7\xf7\x41\xbb\x1c\x41\xa8\x08\x45\x65\xa0\x36\xc3\x9b\xd0\x67\x11\xb9\xb0\x32\xc4\x03\x4c\xc1\x05\x20\x6f\x9a\xf9\x10\x0c\x92\x6c\x2d\x9c\xb3\xc5\x67\x43\x16\x29\x52\x3d\x35\x54\x9a\x47\x31\x14\x69\x2a\x72\x48\xf1\x63\x5e\x1e\xb9\x93\xce\x2f\xea\x60\x54\x87\xac\xba\x20\x35\x0b\x83\x06\xf6\x71\xd0\x5a\xd4\x94\xec\xa8\x57\x57\xed\x2f\x82\xeb\xb4\x63\x5f\x35\x99\x5f\x14\x97\x69\xb9\xb0\xa6\xee\xd9\x8c\xc0\xa0\xfb\x67\x9d\xe2\x72\xb6\x80\x8c\xb2\x72\x59\xac\x8c\x77\xa6\xf0\xde\x99\xec\x33\xeb\x41\x2b\x96\xf9\xf8\x19\x4c\x8b\x9a\x31\xd5\x34\x35\x63\xd2\xde\x7c\x5e\x14\xa9\xce\x08\xbb\x3c\xc3\x11\x58\x16\x2b\x42\xb7\xfa\xb3\xd5\xb8\x32\xc3\x90\x56\x97\xb3\xa6\xa9\x87\x40\xd1\x9c\x42\xe4\x38\xad\x16\xf3\x6c\x46\x56\x5a\x1e\x48\xd7\x74\xab\x65\x12\xb4\x14\x5c\xa7\x39\xad\xa9\x84\xc9\xb0\x0d\x26\xcc\x96\x16\x21\x44\x6a\x1d\x99\xd2\xed\x58\xbe\xe8\x76\xf0\x44\x66\xb3\x8b\xcd\xc5\x86\x6d\xc2\xc4\xf8\xb0\xc6\xd6\xe9\x86\x6e\xc2\x61\x9a\xb5\xa6\x67\x78\x41\x83\x09\x33\xd8\x8d\xd9\x26\x64\xf0\x32\xc5\x9c\xd0\x3c\x1e\xcf\xf9\x42\x1c\x6b\xfb\x84\xa9\x6b\xbb\x63\xf2\xe2\x70\x71\x60\x87\x76\xac\xab\xc6\x81\x1e\xc2\x6a\xe8\x3d\xe5\x5c\x3d\xc6\x8f\xd7\x23\x40\xb9\x32\x1b\x27\x12\xaf\xa1\xb5\x9b\x13\x46\x8a\x3d\xbe\xde\x04\xe7\xdc\x0f\x61\x7a\x94\xb9\x9c\x76\x93\xe7\x9b\x30\xe9\x37\xf1\x2d\x68\xa9\x56\x03\x3e\xad\x85\x0c\x41\x29\xda\xca\x10\x7b\x29\x56\xe6\x0f\xc4\xa5\x00\x40\x21\x3d\xd2\xfe\x29\x73\x0e\x32\x67\x8f\x90\x89\xe0\x5a\x1c\xae\x08\x7a\x66\x1c\xb4\x70\xa8\xef\xd7\xb4\xb0\x79\x5e\xb1\x99\x65\xd4\xba\xd7\xb1\xa6\x4c\x17\x4f\x6b\x76\x1b\x7c\xa5\xff\x21\xf4\xc8\x84\xbd\x9f\x2f\x6c\x4a\x7b\xf1\xc8\x84\x0b\x40\xf9\x73\x50\x5d\xea\xab\xf2\x64\xa2\xb4\x54\x88\xe0\x42\x93\x49\x45\x9f\x51\x83\xbe\x7f\x5c\xd4\x59\x4e\x8f\x8b\x3c\xab\x09\x39\x9d\x02\x85\x96\x19\x90\x00\x1b\x2a\x3e\xda\x4c\x9a\xa5\xc9\x88\x53\xd5\x34\x9c\xac\x68\x08\x5d\xf6\x7d\xfc\x89\x7b\x1f\x32\x2f\xea\x5e\x41\xa0\xab\x87\x5e\x7b\xdc\xba\x10\x87\xf8\x47\xfe\x0e\x88\xe7\xfd\xa5\x49\x4d\x42\x65\x18\x66\x39\xf3\x88\x1b\x71\x86\xfe\xd5\x5c\xe7\x70\x25\x17\x3b\x9e\x4a\xaa\x25\x0b\x2a\x23\xa5\x04\xc9\xfa\x10\xe8\xf9\x74\xbd\x1b\x04\xe7\x1d\x63\x5a\x64\xb9\x52\x0b\xaf\x88\x53\x24\x93\x97\xb3\x20\x60\x46\x32\x7e\x4a\x15\x16\xa2\xba\xea\x8f\xa0\x89\x5f\xb6\xe4\x86\x2b\x5b\xff\x24\x51\x97\x71\x53\x02\xd0\x1a\xde\xf6\xb0\x70\xd7\xa0\xe8\x61\x5d\x2e\xab\x15\xc3\x4e\x5c\x56\x2b\x8f\xda\x17\x00\xde\xb4\xdf\x84\xd7\xe0\x3c\xb0\xde\xc7\xaa\xb9\xa6\xe1\x60\x4c\x59\x6d\x3c\x1e\x19\xae\x3d\x38\xfe\xed\x21\x77\x00\x92\x36\x72\x39\x1b\x88\xa1\xfe\x51\xc1\x8f\x45\x5a\x30\x49\x25\xab\x48\x86\xc1\xba\xb4\xcb\x19\x32\x22\x91\x70\xea\xfd\xa0\x2f\x5e\xb2\x1d\x54\x35\x8d\x8c\x0c\x24\x3e\x0f\x2a\xfd\x89\xfe\xdb\x4e\x49\x68\x0d\x87\x1b\x9e\xde\x3b\x72\x09\x64\xc8\xe0\x3b\x3e\x23\xb4\x0a\xb2\xf8\xda\x09\x05\x7e\x45\x2f\x57\xd4\x0a\x23\xdd\x6b\xa4\x3e\x95\xaa\x65\xb1\x62\x41\x19\xd2\x9a\xfe\x52\x7d\x98\x50\xb4\x21\x81\x0a\x7d\xc3\xc1\xe1\xd8\x56\x04\x36\x31\x12\xb5\xe1\xc7\x8e\x91\x47\x54\xaa\x85\x08\x1b\x14\x4b\xb5\x62\x92\xda\x5c\x8b\x6e\xae\x61\xb3\xfe\xd9\xee\x99\x2f\x40\xd7\x12\x27\xfa\xa9\x23\x10\xed\x8a\x5a\x09\x79\x3f\xdd\x88\x8a\xd3\x82\xdd\x8a\xb4\x22\x83\x22\x49\x0a\x53\x9d\x45\x5a\x2d\x2b\xa7\x38\x59\x31\x45\xbf\xb2\x79\x90\xec\x93\xae\x05\x8b\x0b\x7a\x70\xe9\x5a\x8e\x7c\x61\xb3\x4d\xe9\x54\x68\x71\xaa\x9a\xa2\x2a\x6e\x20\x99\x81\x7e\x7d\xc7\xcb\x37\x07\x30\xc7\xf2\xbf\x21\x09\x18\x4b\xa7\x18\xf8\x9d\xd8\xbc\x2f\xf6\x3c\xf8\x46\xff\xb4\x9f\xb8\xf4\x4d\x73\xae\x1a\xca\xea\x4e\x66\x76\x99\x8c\x3e\x1d\x31\x56\x34\xcd\x68\x8c\xe0\x86\x2d\x05\x52\x8f\xaa\x56\x4e\x6b\xb1\xe7\x6a\x57\x54\x37\x78\xdd\xe5\x1b\xbd\x23\x57\x7d\xc1\x01\x33\x8b\xef\xff\xa0\xea\x97\x0c\x16\xe3\x02\xd6\xa2\xa3\x1f\xc5\x74\xaf\x50\x11\x57\xe6\xf7\xd9\xf3\xd9\x0c\x9c\xd6\x04\xbd\x15\x69\x01\x03\x48\xb4\xf4\xba\xc0\xbf\x97\xf8\x4f\x38\x74\xd9\x37\x80\x43\x82\x49\x07\x51\x77\x79\x26\x1e\xda\xee\x6a\x11\x84\x1c\x98\xa4\x55\x92\x00\x87\x6d\x85\x08\x58\x3f\xf0\x8d\x48\x92\x97\x45\x5a\x4c\x8f\x15\xe4\x7c\xb2\xab\x84\xfa\x66\xa0\x6e\xb3\xd8\x64\xdf\xe7\xdf\x47\xf3\xc5\xcd\x92\x87\x14\x5e\x85\x46\xd7\x60\xef\xe2\x74\x06\xc6\x19\x09\x38\x21\xf5\x06\xa5\x13\x4d\xd7\xfb\xb3\xe9\xb4\xf0\xa6\x58\xbf\xeb\xe8\x83\xd1\xc4\x28\x33\x7a\xb4\xfd\x9a\xd6\x92\x45\x02\x2d\xbf\x64\xb3\x0b\xe9\x77\x58\x39\x1e\x93\x20\xe5\x52\xae\x98\xd9\xb1\xcc\x96\x2b\x57\x66\x93\x44\x7e\x1b\x0c\x31\xda\x21\xab\x71\x06\xfb\x75\xfc\xdb\x31\x59\x22\x4b\x4c\x7f\xdb\x28\x47\x1b\x22\xdd\x0d\x3a\xdd\x23\xdd\x00\xa9\x74\x6a\x3b\x51\xf5\x35\xc0\x2c\x68\xbd\x41\xd9\x0e\xe8\x3c\x1c\x90\x4c\x9d\xec\xf2\x1e\x38\x38\x1d\x39\xbd\x2e\xf2\xba\x69\xb4\x40\xa3\xfc\xfe\x0a\x0d\x6a\x6f\xba\xd8\xca\xcb\xd9\x62\x32\xcf\xe6\x64\xf0\x8b\x6e\xfd\x5f\x8d\x1d\x19\xc0\x60\xea\x9b\xc6\x10\x79\x69\x6b\x63\x76\x33\xd4\xd5\x6d\x9a\x9f\x24\x34\x2a\x98\x1d\xbf\x58\x89\x6f\xca\xff\x79\xcc\xcb\x3a\x85\xc2\x08\x3c\x47\xd5\xbc\x64\xca\x74\x47\x1a\x4c\xb2\x50\xad\x1e\x04\xd7\x71\x17\x21\x28\x25\x4e\x26\x62\xd5\xf7\xe8\x80\xf9\x62\xad\x8a\xdb\x42\xdd\x23\x4b\x8f\x87\x5b\x00\x2d\x8b\x6f\x0f\x4e\x71\xf4\x80\x8c\x44\x97\xbf\xf6\xf9\x93\x50\xc1\x66\x17\xe2\x52\xb5\xce\x16\x61\xa5\xc7\xdc\x0d\xd0\x52\xac\xc0\x8e\xad\xb5\xe5\xf4\x9c\x4c\xfa\xb8\x0e\x0e\x23\xb1\xa2\x47\xf6\xb3\x2e\x3c\xb7\x1a\xc9\x3a\x49\xac\xa4\x8c\x16\x68\xa5\x4d\x00\x43\x07\xd1\xf0\x97\x8e\xbc\x48\x8b\xa6\x39\x0e\x99\xfd\xba\x69\x4a\xfd\x03\xc6\x53\xef\xb6\x4d\x03\x88\xa6\xf1\x31\x45\x05\x21\xb4\x58\x0a\xb7\x00\x8e\xb4\x74\x1a\xd0\x27\xc5\x02\x0e\x2e\x15\x1c\x5a\xe1\x5b\xe3\x5f\x7a\xde\x07\x43\xc1\x09\x2f\xfa\xfb\x5c\xfe\xc6\x37\xef\x0e\x79\xd5\x46\x33\x8e\xe2\x3a\xc6\x7e\x35\x8b\xe2\x97\xb9\xee\x9f\x1a\x83\x40\x78\x31\xce\xed\x35\x08\xd0\x4d\x93\x1e\xa7\x45\xb5\x2e\x8f\x75\x71\xcb\x5f\xf3\xad\x5a\x60\xc4\x25\x1c\x10\x99\xf9\xa1\xac\x86\xdb\x7e\xab\x44\xfc\x25\x60\x99\x2d\x74\xf8\x95\xfd\x50\x89\x2b\xfc\x0c\x04\xad\x22\x49\xd2\xbf\x20\xa1\x09\xac\x5d\x24\xf7\x79\x65\x58\xff\x8f\x53\xfe\x51\xcb\xec\x85\x2a\xef\x5f\xea\xfd\x95\x6f\xf0\xb3\xb8\x1f\x1e\x26\x93\x7c\xb0\x16\x95\x2a\xaa\x23\x3f\xa1\x5a\x05\x5c\xfb\xa7\xb9\x12\xfb\x62\x4d\x6c\x9c\xb1\x13\x83\x97\x4a\xba\x66\x47\xc4\x92\xad\x2e\x67\x8b\x79\x36\x99\x13\xec\x06\xb8\x68\xc7\x2d\xc8\x5a\x9d\x41\x80\x93\xf3\xef\x7a\xc0\xd6\x74\x52\x51\xf0\x66\x8e\x9c\x6f\x04\x28\x25\x08\xe9\x46\x25\x49\x5a\x6a\xe1\x0f\x1c\xc3\x75\xd7\x5d\xce\x16\xe5\xe5\x2c\x2b\xaf\xfc\x6d\xf6\x2f\x98\xb3\x82\xa9\x60\x2e\xd9\x41\x65\x71\x33\xf1\x37\xf5\x45\xab\x7a\x59\xbb\xfe\x78\x89\x87\xfa\x6e\x69\x45\xb7\x67\xea\xba\x5d\xfc\x05\x93\x60\xc1\x48\x29\x67\x67\x6f\x30\x53\x7f\xee\x99\xa9\x55\xd3\xcc\x69\xce\xdc\x24\x16\xb4\x20\x4d\x33\x2c\x92\x24\x08\x1a\xce\x48\xd3\xb8\xdf\x93\x9e\x34\x13\x81\xc0\xbe\x58\x66\x0e\x7b\xdb\x3a\xaf\xd4\xab\x4d\xa1\xf4\x26\x15\x5d\x74\x82\x6d\xe6\xef\xc1\x36\x63\xa5\x7b\x2d\x5a\xcf\x18\xcc\xbb\x85\xb9\xf4\x98\x6f\x17\x70\x0c\xed\xb8\xb9\x4d\xe9\xcb\x16\x34\x36\x93\x57\xb3\x24\xd1\x1f\x30\xa6\xc5\xed\x70\xf9\x45\x17\x97\x45\x7c\x0d\x73\x77\xac\x85\xcb\x13\x9e\x4a\x30\x53\x63\x1d\x61\x6d\x82\xa7\xeb\xdd\x38\x3c\xf4\xc1\x2d\xb7\x03\x09\x59\xef\xc4\x9d\x67\x89\x6a\xc7\x1e\x24\x3f\xe4\xc1\x49\x97\x86\x7d\xa1\x54\xfb\x56\x64\xa8\x25\xd1\x0b\xb2\x32\xae\xf5\xf5\x1f\x33\x87\x01\x7a\x84\x3b\x2b\xfe\x44\x7a\x0b\x1a\xd6\xbd\x37\x58\xfc\x30\x2d\x2c\x29\x03\xbd\x12\x0b\xf0\x0e\x00\x2e\xd8\xc5\x73\xf3\x02\x59\x9b\x6b\x3d\x8e\x62\xc7\x3d\xba\x69\x6a\x50\x0e\xd8\x41\x69\x3b\x5a\x13\xef\xa3\x6b\x34\x07\x17\xe9\x51\x0b\x51\xee\xd9\x74\x27\xee\x70\xeb\xf9\x69\xc7\xab\x77\x96\x01\x95\x24\x09\x70\xa7\x99\x73\xa1\x20\xf4\xd8\x34\x15\x84\x50\x11\x68\x0b\x02\xf7\x49\x15\x4b\x59\x6f\xf1\x77\xdb\x01\x31\xf0\xb5\xa8\x8b\xea\xa6\x34\xfb\x1e\x9a\x20\xbe\xe5\xf2\xb5\x51\xf2\xcb\x7e\x7f\x81\xd1\xff\xfb\xff\x8c\x7a\x78\x63\x46\x84\x20\xdc\x7d\x64\x86\x5c\x5a\xbb\x4d\x5a\x04\xae\xd8\x95\xfe\x7f\x1c\xdc\x35\x62\x75\xc6\x61\x90\x9a\x7c\x1a\xe0\x27\x06\xf5\xc5\x5c\xaa\xa9\x50\x3b\x2e\xed\x7e\xf0\xaf\xd5\x3c\xf4\xfc\xa8\xf9\x5a\x54\x9b\x5c\xde\xfb\x46\x89\xae\xe5\xa7\x88\x1b\x09\x65\x07\x4d\x15\x51\x53\x31\xd6\x35\x58\xc4\x0d\x9e\xfe\xc7\xf3\x4f\x53\x9b\xc8\x35\xd8\x7d\x63\x4c\x75\x03\xaf\x53\xf5\x18\x08\x0b\xe0\x0f\xfd\xa9\xa5\xb2\x8e\x38\x13\x6a\x96\x23\xb3\xe9\x31\xc4\x47\xf2\xf4\x34\x14\xd0\x1f\x26\x26\x28\xf0\x35\x26\x93\x1c\x2d\x79\xbd\x86\xb9\xf4\x9b\xa1\x02\x05\x03\x70\xa7\xa8\x10\x18\x5b\x91\x18\x28\xbb\x22\x54\xfc\x49\x1c\xfc\xda\x5c\xde\x46\xfd\xef\x8f\xd6\x5f\x85\xa3\x87\x0a\x10\xcc\x8d\xc6\xaa\xe5\xaf\x62\xb1\x74\x16\xc7\x09\xcf\xa4\x71\x02\xf3\x2c\x3a\x69\x35\x31\x78\xa7\xe1\xce\xe6\x34\xe7\xb7\xc8\xdb\x49\xd7\x5a\x42\x2a\xa8\x22\x60\xc7\x13\x6c\xd0\xbe\x2f\x36\x69\x78\x28\x7c\xa7\xcc\xc6\x0f\x5e\x48\xd0\xbe\x35\xf5\xca\x97\xee\xad\x18\x60\x01\xdd\x3b\x0f\x94\x3f\x2a\x95\x1c\x85\x08\xb5\xc3\xb9\x11\x68\xb9\x17\xbb\x84\x95\x64\xf9\x52\xac\x2e\xd2\x1c\x05\x26\x99\x24\x39\x48\x40\x4d\xa3\x18\x33\xbf\x18\x6a\xd9\xab\xd4\x23\x48\x42\x6a\xdd\x2c\xa7\x20\xd4\x09\x75\x9d\xe7\x0c\xe6\xc9\x2d\x2f\x17\x23\xa9\xca\x51\x86\xb5\xa1\x05\x50\xa9\x16\x4d\x13\xd6\xf1\x94\x7e\x57\xa4\x6b\x42\x65\xd3\xa0\x95\x09\x63\xd5\x62\x9b\x55\x34\x46\xaa\x32\x87\xf8\x9a\xee\xe8\x81\xee\xd9\x46\x4b\xff\xe6\x89\xb0\xd8\xa6\x5a\x50\x20\x6b\xb6\xa7\x3b\x76\x60\x7b\x98\xa3\x8e\x7b\x7f\xcd\x36\xa9\x9a\xcc\xa9\x79\x22\x24\x14\xea\xc4\xac\x83\xd0\x2d\xdb\x0f\xf6\x6c\x4d\xd7\xec\xf6\xb4\x33\xdf\xd2\x03\x5b\xe3\x7c\x3d\x99\x29\x00\xa7\x34\x07\xe0\x9c\x9a\xd0\x35\xd0\xfa\xee\xf5\xff\xaf\x3e\xd3\xc2\x52\xba\xa3\xf0\x0b\x27\xe2\xde\x82\xda\xd2\x1d\xab\xdd\xaf\xcb\x35\x22\xa1\x60\x62\x0c\xc3\xf4\x10\x41\x88\x6d\x7d\x92\x28\xc6\xb6\x49\x92\x1e\xd8\x91\xd0\x74\x28\x9a\x06\x32\xbf\x14\xfa\xff\xe6\x07\x63\x02\xb3\xc3\x1a\xc3\x33\x0b\x0a\x7d\x82\xed\xf5\x57\x79\xd3\xac\x4d\x29\x57\xb9\xf9\xc3\x07\xe9\x11\xb2\x88\xb3\xa6\xa9\x57\x66\x89\xa2\x35\xc8\x9a\xd0\xdd\x65\x3d\x9e\xdb\x26\xeb\x5a\x43\x3d\xe9\x61\xa2\xff\x32\x2d\x3c\x11\x42\x1d\xf7\x2f\xaf\x36\x59\x6e\x1f\x5c\x94\x37\x59\x53\x68\xb2\x56\x6c\x53\x2b\xd5\x19\x8b\x91\x75\xf8\x0a\x01\x76\x66\xe8\xd2\xfb\x80\x26\x62\xb0\x6e\xb6\xe6\x2d\xef\x80\x3f\xcd\x97\x74\xcf\x7e\xaf\xd2\x1d\x61\xfa\x9f\x03\xa1\xb7\x2c\xce\x6b\xbf\xd8\x85\x4b\x6d\x3c\x47\xf9\x71\xca\xab\x0d\xbd\x67\x6b\x6b\xfc\xb6\x5f\xcc\xf0\x65\x0e\xca\xc6\x97\xe2\x81\xbe\x9e\xde\x42\x87\xdf\xc3\x38\x3f\x5b\xa4\x65\x7a\x8b\x9d\x43\x6f\xfd\x30\xdf\xba\x61\x2e\xd3\x9a\x42\x5a\x7a\x8f\xf3\xe7\xde\x46\x91\xac\xfd\x29\xa6\x98\xf8\x40\x9b\xd2\xfd\x89\xc5\xea\x89\x52\xbb\x30\x2c\xf1\x1e\x21\x71\xe2\x73\x2b\x04\x5e\x29\x94\x03\xb8\x88\xcc\x41\xbb\xe4\xe3\xa0\x0a\xfa\x46\xdf\x61\x6e\xf3\x32\x55\xd3\xeb\xb2\xa8\x7e\xe3\xd2\x2a\xe6\x87\xb3\x81\xf2\xf0\x46\xe6\x2c\x02\x04\x1d\x20\xff\xd3\xa7\x5b\xfb\xa0\xfd\x5c\xe7\xf0\x43\xae\xf8\xd5\x6c\xe1\xf2\x63\x35\x57\xae\x94\x98\xbc\xf6\x91\xdc\x53\xc9\x86\x92\x00\x91\x08\x9a\x1b\x8c\x4e\xe4\x7c\x79\x24\x3b\x1b\x85\x07\xcb\xa3\x0d\x31\x05\x84\xaf\xd0\x42\x39\x70\x19\x43\x83\x84\x33\xe3\x9d\xee\x52\xc0\xeb\x09\x18\x8a\x2e\xdb\x82\x1e\x5c\xf2\xa1\xf3\x1d\x09\x3d\xd8\xa4\x2b\xfa\x4e\xa4\xb9\x8a\x75\x14\xb9\x6a\x31\xec\x20\x0a\xa4\xcb\x5c\xd9\x07\x86\x20\xd0\x3e\x03\x23\xf4\x91\x0d\xed\x4a\x9c\x8e\xfe\xdd\xa9\x0a\x03\x44\xc4\x3b\x21\x7f\x7b\x5f\x00\x28\xc2\xb1\x4a\x15\xb4\x92\xd6\x68\xf1\x61\xb3\x24\x7a\xcb\x5e\xae\x2c\xdb\x8f\x8f\x08\xde\x84\x22\x50\xd9\x0e\xd8\xd0\xf8\xf9\x6c\x16\x02\xc0\x0b\xf3\x3e\x74\xae\xd2\x20\x08\x9b\x43\xc9\x48\x40\x35\x98\x0c\x07\x6b\xf9\xca\x37\x62\x9f\x7f\xfc\xda\xf6\x31\x72\x8e\xd0\x23\xe3\x05\xe8\x58\xeb\x85\x6f\x57\x45\x32\x50\x65\x59\x21\xad\x66\x47\xf3\x87\x85\xda\xc3\x9f\xe0\x57\xc9\x6b\xb8\x76\xaf\xf1\xef\xc1\x7a\x11\x47\xb2\x75\x56\xea\x5d\x36\x0e\x8c\x7d\x52\xb7\x4c\x6f\xbf\xb9\xc3\xd3\xb5\xc5\xba\x57\xfe\x12\xd0\xc5\xd2\x61\xd9\x34\xc3\x75\xd3\x94\x1e\x35\x62\xed\x51\x18\xca\x10\x35\x62\x1d\x3a\x7e\x6e\xd8\xec\x62\xb8\x4d\x92\xcd\x65\x1e\xb2\x79\x6e\x59\xbe\xdc\xac\x7c\x71\xcb\xcd\x6a\xb0\x4d\x92\xc2\x78\x04\xfa\x71\x05\xe9\xd2\x91\x72\xd5\x8b\x2a\x0b\xfb\xca\xda\x19\x06\x7d\x7e\xc9\x1e\xeb\xf4\x24\x91\xd0\xe7\xf0\x05\xad\x5a\xd9\xfb\x72\xff\xc7\x73\xc6\x66\xad\x61\x31\x56\x29\xe3\x71\x30\xbb\xdc\x7c\xbd\x72\x36\xad\xb0\x24\xe3\xd9\x0b\x4a\x75\xb0\x43\x05\x5e\x3c\xab\x61\xfb\x45\xa7\x4c\x7b\xfc\x0e\x10\xe1\xc7\x26\xbc\x50\xe3\x31\x51\x60\xf2\xb8\x54\x2b\x8a\x78\x30\xe0\x31\x12\x60\x28\x74\x85\x68\xb1\x46\x01\xda\xa3\x26\x03\x7d\x7b\xb4\x43\x58\x20\x45\xcb\xef\xd5\xd6\x6d\xbb\x57\x2c\x5a\x50\x63\x5e\x4f\x73\x26\x17\x93\x79\xa6\x26\x69\xb0\xe9\x14\x55\xc5\xc1\x67\x63\x31\xe7\x9f\x65\x40\x7c\x56\x33\x75\x51\x5f\xe5\x17\x93\x49\x0d\x4b\xa9\xbe\xb4\x78\x89\xae\xa7\xf0\xa7\xb1\xf1\x00\xa3\xee\xda\xe8\x8d\x8e\x31\x33\xdb\x50\x36\x0d\x7e\xef\xd6\xbb\x35\xab\x32\xcb\x62\x2b\xd2\xa3\x19\x54\x7d\xfc\x04\xec\x5a\xf9\xf5\xbb\xe2\x77\x4e\x2e\x8c\x88\xac\x65\xba\xab\x12\x94\x8e\xac\x9e\xcc\x69\xc5\x4a\xaf\x52\xb4\xfa\x69\x9a\x33\x71\x55\xd9\x0d\xed\x55\x91\x56\x54\x4c\xe6\x24\xa8\x94\xd3\xa9\xb0\x5c\x4f\x13\xec\x59\x9a\x93\xac\xb4\x3f\x08\xad\x70\x33\x12\x54\xc5\xc4\xfb\x30\x05\xd1\xd1\x96\xe6\xd6\x6e\x4c\xcb\xad\x93\x79\xd3\x08\x98\x7a\x4d\x23\xae\x58\x11\x80\xc2\x89\x4b\x4b\xa2\x38\x90\xf1\x8a\x88\x4a\x87\xc6\x8f\xc7\xe2\x84\xba\xf0\xb4\xf2\x5b\xb1\x20\x34\x0f\xbc\xd7\x55\x84\xf5\xe3\x38\x42\x3d\xe0\x56\xe0\x39\x1e\xa7\x45\x50\xd0\x10\x39\x6a\xd2\xcd\xa0\x0d\x29\xb5\xf6\xc7\x7d\x4c\x4f\xe8\x4d\xc1\xe3\x70\x03\x40\x02\x7c\xe5\xd6\xf8\x47\x5f\xa2\x0e\x92\x8f\xe8\x48\x5f\x64\xa8\x64\xc8\x94\x3c\x6d\xb3\xfb\x2e\xce\x84\xa7\x8a\x64\xca\xe2\x6d\x42\x08\xad\xd8\x03\xdc\xb0\x0e\xb9\xac\xf9\x37\x95\x4a\x65\xe8\x2c\x4c\x8c\xcb\x53\x37\x16\x15\x81\xee\x6d\xa5\xa8\xbf\xcf\xbf\x37\x6e\x60\xa4\x69\xec\x4f\x94\x52\x8d\xda\x2d\x26\x65\x24\x34\xd0\x73\x6c\xc3\x1e\x16\x62\xe2\x8f\x9a\xd8\x33\x37\xf0\xba\x8e\xc7\xe4\x31\xde\xbf\x09\xe4\x3e\xe9\xf2\x6f\xf8\xdc\x76\x7f\x2a\x37\x33\xd8\x3d\xd9\xb5\x47\xfb\xa0\x02\x17\x7e\x6e\xf5\xa3\x66\xa8\x1f\xf6\xf9\x21\x73\x83\x0a\xb6\x92\xd0\x39\x41\x18\xfc\x3e\xb5\x38\xe7\x78\xc7\xc3\x1f\x32\x37\xfe\xfd\x8f\xe5\x5f\x2f\xab\x55\x7f\x19\x3a\x06\xcb\x79\xa4\x0c\x30\xd3\x33\xc5\x10\xb7\xd1\xff\xab\xc5\x50\x54\xc9\x67\xc3\x59\xb0\x6f\xef\x55\x47\xd1\x7a\xad\x83\xee\x51\xae\x83\x88\xc0\x17\x4b\x79\xc3\x95\x33\xd8\x91\x1d\x19\x8f\x74\x46\x15\x01\xf8\x10\x94\x78\xd5\xe1\x93\x79\x04\x11\x4b\x5d\x31\x04\xc5\xfa\x5e\x17\x64\xfe\x1c\x23\x48\xe8\x42\x66\xc0\xec\x1f\xb8\x5a\x98\x36\x18\xc9\xee\x45\x81\x4a\x12\x68\x83\x24\x83\x2a\x49\x86\x08\x19\xb5\xa8\x18\x2a\x76\x93\xa4\x0a\x30\x61\x01\x3a\xad\xa2\x92\x22\x1a\xb7\x73\x62\x89\x69\xcd\x89\xf1\xed\xea\xb3\xb1\xd1\x45\xea\x4b\x97\x22\x11\x81\x40\x0f\x7e\x17\xbf\x7b\xf2\xb3\xb2\x36\xc1\x50\x3b\x6c\x9c\x21\xe2\x2a\x58\x85\x40\x5e\x0c\x70\xbc\x2a\xe2\x61\xfd\x01\x32\x03\xb1\x32\x7e\x10\x2d\x0a\x42\x4f\xf7\x0c\x50\x5d\xd5\x09\x71\xa0\x4d\x96\x07\x95\x56\x58\x98\x99\x4f\x60\x44\x88\xdc\x68\x59\x45\x25\x5f\x1b\x53\x4c\x3d\xcf\x8a\x60\x99\x18\x82\x57\x3b\x9f\x8a\x29\xfe\x41\x77\x79\x8d\xeb\xb0\xce\x86\xf3\x60\x8e\x5d\xab\xf0\x7d\x41\x99\xe4\x60\x27\xa3\x4f\x5b\x38\x7e\xe8\x91\xc9\x71\x5a\x01\x82\x93\xb7\x6c\x82\x72\xba\x00\x2c\x8b\x9a\x99\xb8\xe5\x71\x95\xa5\x6a\xaa\xeb\x0a\x00\x07\xfa\x0f\x03\xf1\x88\x32\xd9\x19\x57\x5a\x42\xd5\xd4\x57\xb7\x69\xce\x42\x7d\xf7\xd2\x9e\x16\xac\x4a\x12\xd8\x00\x0d\xc8\xbc\x5d\x6b\x3b\x9b\x5f\x95\x24\x3e\xf4\x0e\xe1\x5e\x0b\x8f\xae\xd7\x4a\xaf\x2f\x0e\x68\x6f\xd4\xfa\x88\x15\x03\xff\x28\xa8\xda\x06\xbe\x70\xbc\xb8\x46\xd5\xa9\x16\x79\x66\x17\xb5\x13\x74\x27\x73\xf0\xac\x31\xba\xf2\x1c\xf1\x6c\xf2\x65\x3d\x9e\xaf\x06\x70\x2b\xc9\xaf\xeb\xf4\xe8\xb1\x28\xcd\xed\xfa\xea\x59\x92\x08\x94\x83\x5d\xec\x18\x90\x2a\xc9\xd3\x67\x13\x03\x35\x7b\x32\x29\x9c\x86\xd5\x86\xc3\xad\x08\xc0\x81\x71\x34\xe2\x9e\x86\x05\x93\xd6\xec\x8c\xb9\x0a\x05\xf3\x75\x05\x73\x0d\x9e\x74\x2d\x0c\x27\x2d\x99\x35\x4e\x5f\x33\x30\x56\xa7\xdb\xc0\x7e\x5d\xf7\xde\x67\x8c\x1d\x9d\x09\xb0\x97\x1c\x91\xca\xff\xdf\x2e\x36\xba\x27\x00\x15\xb9\x4c\x92\xb7\xc2\x3c\xdf\x18\x64\x30\xe3\x5e\x84\x50\x1b\xc0\x25\x3c\x2e\x09\xb9\x20\x93\x49\x09\x03\x70\x11\x45\xad\x2f\xcd\xcf\x57\xd5\xe6\x4f\xe5\xb5\xd6\x79\x8d\xc7\x70\x61\x05\xe4\xc0\xff\xb4\x20\xe5\x6b\xb4\xc2\xc7\xbc\x26\xe1\x47\xa4\x60\xc7\x10\xeb\xed\x9c\x4f\xb8\x85\x75\x13\xe7\xa0\x87\x89\xd1\x10\xfd\x26\x00\xab\x65\x4d\x3a\xd3\x66\x50\xb0\x9d\x7d\x08\xdb\x2d\x9d\x7b\x40\xb5\xd8\xb9\x89\x94\xcd\x56\xd9\x07\x85\xb7\x9d\x22\xce\xaa\xaf\x56\x4d\xf3\x41\xe1\xd3\x85\x96\x47\x9a\xa6\x40\x41\xa4\x69\x74\xab\xd1\x50\x7e\xb0\x66\x25\x2d\x27\x6c\x4e\xb7\xd6\x23\xe1\x04\x7d\x33\x9f\x83\x68\xdc\xf5\x58\x36\x32\x55\xbd\x96\x9c\x57\x4d\x63\xde\xa8\xe1\xd7\xb4\x14\x37\xc5\x3a\x2f\x7f\xfe\xe2\xed\x37\x4d\xd3\x0d\x73\xe9\x36\xfc\xb6\x58\x73\x4c\x36\x0c\x3d\x4f\xf5\xf2\x03\x0c\xe6\xbf\xb8\x03\xeb\x2f\x22\x10\x01\x41\xf4\xab\x0f\x79\xe5\x65\xbf\xb3\x9b\x0b\xad\x74\x0f\x29\x3a\xa3\xf3\xb3\x3d\xe4\x6c\x62\x0c\x7d\x82\x5e\x8a\xf8\xe0\x31\x31\x42\xdc\xd5\xfc\xe4\x79\x22\x9e\x28\x73\x4e\x76\xdb\xf6\xb4\xd3\x34\x5a\xb5\x92\xfd\xd2\x49\xa6\x43\xdc\xb6\xaf\xc5\x4f\x05\x85\x7e\x2a\x8d\xbc\xa9\x70\xc0\x3e\x95\x54\x89\x43\xa6\xf4\xda\xfe\xb4\x72\x28\x18\x66\xcd\x7f\x5a\xe9\xe5\xee\xb1\xfa\xed\x69\x43\xf0\x5a\xfc\x50\x02\xf8\xc6\x96\x55\xcc\xe9\x93\xdb\xb0\xf6\x1e\x1f\x3b\xdd\xb1\x63\x67\x66\x12\xe7\xdb\xfc\xd8\xc4\x3c\x9e\xeb\xe4\x53\xb0\xde\x86\xa5\xbe\xc6\x15\x4d\x33\xc4\x49\x99\x24\x43\x33\x2b\x8d\xee\xe7\xd0\x59\x6f\x51\x55\x96\xb3\xd5\xa0\x60\x87\x85\x91\xd6\x51\x77\x69\x84\x73\x7c\xa8\x8a\xd8\xad\xa1\xdf\x0e\xa0\xc5\x34\xbd\x76\x30\xbd\x76\xd2\x0b\x49\x17\xb8\x07\x3a\xdb\xc3\x04\xf7\x49\x48\x7a\xcb\x0a\xbb\x9f\x06\xa1\xf7\x2c\xdd\x8f\x6f\xc9\xd3\x67\xf4\xda\x9e\x6d\xad\x03\x04\x36\x29\xdc\xe9\xae\x5d\xd7\x24\xc9\x30\xbd\xbf\xbc\x5e\x6e\x56\x04\x76\xbf\x0b\x70\x63\x67\x9b\xc5\xf5\x72\x33\x99\xaf\xb2\x19\xfd\xc0\x74\x2c\xbd\x33\x57\x90\xd4\xf5\xf0\x76\x61\xfa\x26\xc3\xce\x22\xb6\x3a\x41\xab\x53\x7c\x53\xc0\xc4\xf0\xbd\xed\xcf\x28\xb1\xee\x87\x1b\xdb\x07\x1f\x4e\x83\xce\x96\x90\xde\x4d\xaf\xc5\xcd\x11\x8e\x86\xc1\x9f\x78\x47\x85\x2f\xa4\x12\x07\xb6\xa7\x77\x53\x69\x74\xf4\xb7\x6e\x45\xdd\x9d\xdc\xa1\x42\x30\x67\x90\x0c\xac\xb8\xc0\x6a\x42\x28\xb6\xb7\x0e\x9b\x53\x1b\x25\xb3\xae\x6f\xb1\xa8\xa1\x04\x30\x6f\x71\x03\x08\xa1\xe6\xef\xda\x0e\xe6\xe9\x23\x6f\xa1\x58\x14\x55\xa1\x7a\x50\x92\xd4\xae\xa8\xf5\xa6\x81\x8e\x6c\xd4\x50\xab\x1a\xbc\x29\xf6\x82\xa7\x8e\x19\xd5\x7a\x06\x5a\xe2\x97\x16\xbb\x43\x6d\xd9\xad\x94\x48\x25\xe5\x68\x40\xd3\x6b\xa2\x49\x6e\x38\x7b\xb0\x6e\xe7\xd9\x70\x8e\x4e\xe2\xc0\x48\xe4\x2c\x0d\xea\x94\x9c\xa8\xea\xf3\x72\x04\x3d\x6a\xec\x37\x79\xce\x19\xb2\x98\xde\xe6\xe5\x91\xb3\xae\x63\x3b\xbd\x17\x69\x41\x88\x7b\x60\x1a\xca\x78\xf9\x17\x35\x7f\x29\x0e\xf7\x2f\x8f\xf6\xee\x64\xec\xf2\xde\xf1\x54\x92\x41\x5c\xff\x19\xd6\x1f\x45\xde\x13\x05\x8f\x75\x80\x07\xbe\x3f\xf0\x85\x9c\xd6\x51\xab\xbc\x15\x20\x38\x13\x09\x92\xb5\x5b\x63\x2b\x5d\x9d\xa9\xf3\x29\x2a\x00\xe8\x06\x7a\x9c\xd3\x67\xe4\x74\xe2\xfd\xbc\xa3\x15\xf5\x11\x01\x6c\x2a\x38\x42\x16\x2d\x50\x23\xc0\xff\x42\x8e\x59\xf4\xc0\x8f\xd4\x72\x7a\x0f\xbb\x62\xff\xa9\x65\xca\xd0\xe5\x14\x46\x28\xf2\x41\xb5\xa0\xa1\x07\x51\x96\x69\xc0\x5b\x8b\xbe\xe8\x31\xd6\x82\x99\x3e\x4d\x03\x4e\xf5\x12\x88\x08\x7a\x9d\xf2\x75\xc7\x4f\xb7\x79\xad\xde\x42\xae\x41\xb6\xba\x83\x68\xed\x7e\x89\xc3\xbd\xfd\xe9\x49\xb2\x7a\x0a\xaf\xc8\x43\x2d\xe1\x1a\xd3\x34\x50\x8b\xea\x8f\x0a\x47\x38\x0e\x5b\x72\xa0\xec\xa1\x23\x7c\xbd\x06\xd1\x30\x2c\x43\x99\x32\x14\x69\x9a\xcf\xf5\xcd\x2f\xa8\x35\x3a\xe8\xc2\x3c\x69\x7f\x66\x3d\x74\x61\x91\xe0\xe6\x93\x8e\xb6\x52\xec\x47\x64\xa0\xbc\x6b\x2f\x18\x15\xd9\x1f\x38\xd3\x1c\x65\x6e\x10\xc3\xcc\x73\x1f\x47\x37\xe9\x4c\x82\x99\xdb\x7b\xfe\x11\xae\xa0\x61\x11\x4a\x8c\x08\x7d\x70\xa8\x8a\x59\x64\x52\x61\xb3\x1b\x9d\xc8\xa9\xb7\x19\xbc\xda\xc4\x8d\x88\xaa\x9a\xda\xf9\x40\xff\x5c\xa5\x61\x12\x01\x1e\x50\xdb\x2c\xe9\x0c\x34\xd0\x7a\x4f\x7b\xe8\xd5\xf5\x16\x67\xaf\x48\x81\x46\x5c\xdc\xa2\xf9\xea\x4f\x85\xda\x61\xeb\xad\xa9\xfa\x5b\xec\x95\xae\xc1\x2d\x3e\xec\x13\x80\x76\xb7\x0b\xea\x9c\xe8\x95\x07\xac\x00\xe7\x44\x2f\xbd\xe2\xdf\x8b\x43\x68\x19\x13\x3c\xd2\xf4\xd1\xa0\x4d\xe6\x33\xf0\x57\x3a\x8c\x73\x38\xb2\x85\x7d\x85\x9e\x2a\xb0\xd0\xfb\x53\x59\xa1\x2e\x0c\x72\x02\x79\x01\xed\x43\x26\xe6\x35\xda\x7b\x87\x9c\x68\x64\x2c\x76\xe6\x2c\x09\x7c\x59\x06\x3f\x88\xf0\xe1\x0e\x15\x15\xb5\x90\x35\xa1\x10\x13\x52\xad\xa0\x65\x2f\xfe\xc4\x57\x74\xc4\x61\x7e\x0f\xc4\x23\xe1\x99\x14\x58\xdc\x98\x04\x68\x6d\xd3\x93\xc6\x80\xca\x61\x5f\x18\x3a\x46\x2a\x79\xcd\xe3\x83\x10\x0e\x2d\x74\x91\xaf\xf4\x9e\xfb\x1d\xaf\x8e\x6f\x39\x8c\x8f\x69\x99\x3e\xb5\xdd\x9c\x2a\x58\x65\x5f\xf9\x7a\x5d\x0d\x8c\x3d\x7b\xb8\xa9\x1b\x55\x76\xd1\x72\x95\x39\xb2\x54\xb1\xbf\x8a\x24\x49\x03\xbb\xb2\x49\x6c\x84\x06\x50\x18\xa9\x64\x55\x74\x3c\x86\x22\x28\xff\x8c\x90\xc5\x68\x32\xca\x64\xd3\xb4\x53\x0d\xa2\x93\xdb\x9c\x2c\x47\x5a\xb5\x09\xa4\xef\x45\x1a\xa5\x44\x24\x79\xd8\xdb\xd3\x2e\xa4\xc0\xd1\xbc\x2f\x69\x99\xa7\xd5\xd6\xbe\xf2\x46\xa3\x47\x73\x43\xab\xd0\xc1\x59\x54\x03\x75\x3a\xd1\x1b\xae\xbe\x2c\x78\xb9\xe9\x82\x70\x3d\x89\x4a\x3c\xd1\xfa\x78\x38\x08\xa9\xea\xf7\xe2\xb8\xde\x75\x93\x0f\xe7\x27\x0a\xad\x0e\xa3\x8a\x6d\x3a\xaa\x84\xb1\x03\x1b\xba\x69\x6c\xf7\x06\x69\x50\x57\xb4\xa0\xbe\x6f\x1a\x64\x16\x8a\xbb\x8b\x28\x79\xff\x10\xb7\xdd\x92\x6d\xaf\x73\xb5\xde\xa5\x5f\x09\x40\xf5\xba\x2e\x8f\x11\xd0\x57\xfc\x89\x8e\x4d\xed\x14\x7d\x6b\x6d\x9e\xda\xc9\xbb\xeb\xe0\xdc\xd4\x9f\xe9\xac\xd6\xbc\xb8\xe5\x9b\x2f\xdb\x6d\x86\x6f\xea\x52\xdc\xe1\xe9\x79\xa2\xf6\xef\xfe\xcd\x74\xc0\x43\x64\x8a\xa6\x71\x3f\xf1\x5d\xbc\xd5\x63\x3a\xce\x9a\x0c\xb4\x98\xcb\xcd\x96\x0f\x4e\x02\xad\x49\xc8\xc3\xfa\xe8\x7d\xde\x1e\xee\xdd\x2a\x69\xa1\x11\xeb\xa5\x62\xc4\x8c\x19\x55\x51\xcd\x9e\xcd\x5a\x58\x76\xf6\xd0\x69\x1a\xbe\x48\x55\x07\x6e\x23\xa8\x02\xc9\x52\xde\xcd\xf0\xdf\x67\x54\x12\x73\x0c\x9d\xed\x2d\x3c\x7a\xa2\xc1\xb5\x32\xb6\x5b\x2a\x60\x25\xd0\xbf\xeb\x80\x73\x46\x0b\x0b\xec\x5b\x91\x2a\x92\x24\x43\x99\x24\xc3\x18\xcf\x43\x0f\x46\x0c\x0d\xc4\xcf\x40\x03\xd9\x4c\x7f\xe3\xf7\xef\xf8\x3f\x63\xb2\xb8\x4a\x5f\xe1\xf4\x72\x85\x7d\x0d\xcc\xa5\x74\x25\x7a\xb6\x37\xf7\x99\xb9\xc5\xa2\x04\xd8\x59\xd6\x8c\x55\x4d\x73\x9b\x24\x4f\x97\xbf\x1e\xb7\xff\x6b\x36\x9b\xe8\x7f\xb6\xdb\xd5\x53\x44\xb7\xa9\x48\x57\x01\x8f\x46\xc7\x30\xfb\x53\x4b\x95\xe9\x40\x64\x42\x68\x83\x9a\x97\x5f\x0a\xf9\xd2\x77\x9c\x07\x8a\x5e\xef\x72\xf9\x12\x41\x80\x10\x36\xe0\x3f\x9e\xcd\x3e\x1b\xb2\xa2\x69\x24\xec\xa3\xa3\xff\xfd\x7f\xfc\x5f\x23\x42\xff\xe3\xdf\xff\xfd\xdf\x19\x2b\x48\xb8\x89\xd8\x82\xed\x6c\xe6\x1f\xf9\xfa\xa5\xd8\xef\xf3\x6a\x93\x8e\x8e\xd5\x46\x8c\xc8\x29\xc0\x0d\x72\x16\x94\x45\xe5\x78\x77\xa9\x75\xdb\x23\x17\xf5\xe5\x31\x49\x64\x58\x9f\x1a\x9c\xd3\xa2\x80\x0b\x32\x1e\xdb\x97\x5a\x98\xce\xa6\x3e\x9d\x17\x70\x40\x75\xab\x8c\x03\x48\x4d\xa8\x2d\x70\x62\x6e\x12\xa5\x9f\x0f\x8b\xd1\xa7\xf8\x37\x1f\xa1\xc5\x94\xab\x94\x3e\x2b\xf4\x19\x61\xe1\x8c\xe0\x5a\x71\x35\x99\x2f\xcc\xd0\xb3\x32\x3a\xb5\xb2\xf0\x67\x15\x16\x91\x24\x69\x79\x56\x66\xeb\xc4\x30\xee\xe5\xcb\x30\x12\xf5\xa6\xfc\xbf\x23\x6f\x5a\xf8\x2a\x8a\x84\xdd\x7a\xc1\xf2\x4d\x67\x7b\x0b\x16\xb7\x99\xa1\xb8\xf6\xed\x31\x14\x2f\x7e\x72\xa2\xa2\xfa\x96\xdf\xbf\x95\xbc\x8e\xb6\xca\x3f\x3c\xbc\x0c\x95\xac\xbb\x8a\xe8\x8c\x82\xc9\xf9\xc8\xad\x1b\xaf\xdc\x32\xb0\xec\x55\x7e\xc7\x38\xb2\xa3\x84\xbb\x10\x2d\x59\xd5\x47\x9f\x5e\x6c\xd3\x63\x92\x0c\xd7\xe4\x41\x06\x87\x55\x78\xe1\x7c\x13\xd6\x23\x49\x26\x73\xa6\x0b\x33\xa8\x4c\x7a\xe3\xc9\x8b\xaa\x06\xe8\xf8\x6f\x55\x2a\xe9\x27\x9c\xa4\x10\x4f\xbf\xe0\xe9\x91\xe8\xfb\xe9\x00\x8d\x61\xec\xc5\x70\x5d\xd7\x7a\x1c\xc1\x22\x30\x3e\x71\x4c\xcc\xe0\x4c\x38\xeb\x31\xe2\x1d\x19\x1c\xb9\x3f\x14\x9f\x43\x73\xf3\x47\xf2\xf3\x20\x41\xb3\xd0\xcc\x17\x7f\x19\x03\xe1\xd4\xe2\xf0\xfe\x32\xd9\x81\xcc\xfc\xdc\x18\x05\x07\x9c\x0a\x98\xe0\xe7\xc9\x0e\x25\x61\x9b\xe2\xf7\x09\x2c\x9c\xec\xc9\x7c\x36\x9b\x5d\x3c\xf1\x7c\x15\xf0\x99\x58\x8c\xe4\xcd\x75\x9e\x3e\x7b\xfe\x9c\x3e\xf1\xff\x9b\xce\x9e\x93\x51\x36\x52\x32\xaf\x6a\x54\xe3\x8d\xc8\x78\xd4\x42\x46\xba\x78\x82\xc8\x43\x13\x53\xff\x59\x27\xbe\x8b\x91\x24\x0e\xf9\xba\x50\xf7\x99\x2e\xe1\xe2\xc9\xb6\x28\x15\x97\xd9\x93\xbc\x3c\xec\xf2\xd4\xc4\xb1\xe7\xe4\x42\xdf\x7c\x51\x8d\xe8\xf5\xd4\xa2\x2c\x7f\x41\xf1\x35\x86\x95\xac\x93\x24\x4a\xf4\x5e\x20\x86\xe7\x01\x4c\x36\xa2\xcd\xb9\x57\xb1\xd3\x34\xa9\xd5\x5e\x44\x4a\x8d\x27\x23\xbc\xc9\xb5\xcf\x39\x7d\xba\x56\xdd\xcd\xdc\x4f\x51\x44\x46\x7d\x5f\xec\xb9\x38\xaa\xb4\x9a\x6e\xb8\x42\x8f\x09\x2c\xf3\x85\x5e\x7b\x6e\x75\xde\xa6\x84\xde\x91\x87\x7f\x16\x96\xf6\x6f\x1f\x42\x97\xfe\xb5\x48\xb1\x6d\x74\xb4\x17\xc7\x9a\x1f\x0f\x23\xba\x27\xb4\xe6\xca\x66\x7f\x4f\x9f\xcd\xc8\x69\xf0\x55\x6f\x42\x83\x1b\x19\xa6\x7e\x1e\x22\x30\xdc\xa6\x81\xae\xbe\xf0\x77\x19\x7c\x33\x71\xb7\xf7\x9e\x4e\xa3\x02\xcf\xa4\x71\xca\x17\xa6\xf7\xb2\xd1\x88\x0c\x6c\x4f\x8e\xfe\xf7\xff\xf9\x7f\x7b\xad\x90\xa0\x61\xcf\x72\xb0\xaf\xd4\x5f\xd3\x76\x99\x6c\x1e\x06\xbd\xaa\x36\x4c\xf8\x33\xea\x91\x2e\x0f\xde\x47\xef\x53\x63\xea\xd7\x37\x72\x5a\x56\xea\x5f\xe8\x1b\xda\x5e\xaa\x5b\x6a\xb5\xdd\x95\x07\xb2\xad\xa7\x21\x20\x6e\xda\xb7\xc1\xb1\xd2\x5e\x05\xbb\x3d\x0a\x36\xd5\x98\x2d\x81\xb1\x1f\x18\x60\x5a\x5a\x87\xc3\xde\xd7\x56\xdf\x58\x78\xee\x6a\xe7\x9d\x24\x71\xc7\x5d\xcd\x92\x04\xfa\x98\x85\xb3\x7a\x01\x1b\xe6\xda\xfa\x2d\xe9\xa9\x98\x4a\x92\xf1\xf1\xf8\x72\x3e\x5b\xf4\x4d\x55\x16\xcc\x9e\x9a\x3e\x9f\xcd\x48\xd6\x5a\x55\xa7\xc1\x1f\x7f\xf7\x6c\x36\x23\xa7\x93\x16\xec\x51\xde\x33\x9e\xb5\xd1\x19\xc3\x9b\x26\x14\x68\x00\x7a\xd8\x73\x1e\x64\x1f\x04\xad\x38\xdf\xd4\x06\x23\xc6\x01\xa3\x65\xfa\x72\x14\xea\x8d\x09\x7d\xff\x2f\x6a\x91\x8d\x0a\x79\xba\x29\x6e\x0d\xbf\xd2\x17\xc5\xad\xd7\x11\x17\xff\xff\xeb\x88\x5b\xda\x50\x69\x69\xbe\xfc\x25\x78\x64\x7d\x4b\x74\xca\x7f\x55\xe5\xab\x1e\x53\xf9\xaa\x3e\x95\x2f\x38\x98\x1f\xb8\xcc\xa1\xf0\x50\x86\x6b\xeb\x82\x9d\x4b\xfc\x4c\x1f\xb4\xf4\x0f\xab\xae\xc5\x1e\x34\x14\x8b\xe1\x45\x87\x07\xd2\x83\x17\xda\x06\x1d\x85\xad\x14\x60\x47\xbb\x71\x75\x0f\x20\x29\xed\x6a\xcd\x03\xcb\xfe\xca\x3e\x0d\x44\x8f\x01\x32\x32\xf3\x40\xb3\xb7\x96\xee\xb9\x2f\x49\xa8\x85\x3e\xaf\xb3\x37\xa6\x98\xce\xe5\x29\x5f\xab\xe2\x96\xbf\x42\xc8\xf1\x01\x28\xc7\xc3\xed\x3c\xee\xf9\x6e\xa1\x31\x31\x0c\x15\xee\xc2\x4e\x60\x67\x3f\x9d\xde\x70\x1d\xfe\x55\x91\x56\x7f\x4e\x51\x6d\x54\xa0\xd5\xe3\x9a\x5c\x1e\x58\xa2\xe6\x2a\x1f\x98\x0d\xd6\x6b\x66\x79\x99\xf9\xf3\x4f\x27\xc9\x2a\x0a\xb9\x7c\x01\x7f\x9f\x3c\x86\x86\x97\xe4\xbc\x4a\x49\xa0\x8a\xf8\x75\x51\xf1\x34\xc2\x0d\xb5\x32\x7f\x45\x03\x9d\xa0\xc3\x0f\x9d\xb8\x7b\x0b\x19\x08\xa0\x97\x16\x97\xcc\xc5\xa2\x01\xbe\x97\xdb\x79\xc9\xbe\x00\x00\xaa\x10\x6a\x54\x00\x60\x57\x14\x32\xf6\xb9\x3a\x0d\x71\xdc\x3d\x96\x72\x37\xee\xd8\xa0\x2c\xdd\x01\xa6\xab\x7a\x33\x68\xa9\x98\xb9\x27\x0e\x74\x79\x0c\x24\x60\x15\x40\x4e\x4c\x4e\x5d\x5f\x36\xcd\xd3\x5f\x8f\xcf\x66\xb3\x6b\x73\x23\xc5\x24\xa8\xf2\x0f\x8a\x7d\x64\x52\x21\x47\xcd\xa6\x69\x14\x22\x9e\xbf\xf4\xf5\x4a\x65\xac\xbc\x66\x32\xee\x44\xab\xcd\xd6\x73\x2d\x98\x39\x4a\x1c\xd7\xbb\x1e\xed\xbf\xe1\x8c\x0f\x0a\x78\x55\x6d\xd2\xe0\xc3\x9e\xd7\x19\x15\xaa\x08\x86\x32\xd2\x11\x24\x09\x6a\x35\xcc\x11\xa0\x45\xb7\x5f\x54\x0a\xdb\x77\xa4\xae\x91\x29\x42\xf0\x07\x5d\x7f\xb8\x1f\xd1\xc2\xfd\xd4\x85\x16\x7f\x4e\x25\xef\xd4\x44\x74\xe8\xdc\xca\x9f\x18\x0d\x87\xd3\xb9\x45\x5a\x0f\xca\xcf\xeb\x9c\xc1\xb9\xc3\xdc\xea\x02\xf8\xa4\x00\xce\x30\x49\xd2\xd4\x64\xd5\x34\x0e\xf8\x5e\xe7\xf7\x16\x97\x4b\xa0\x27\xa5\x2e\xee\xbb\x63\xa9\x8a\x43\xc9\x83\x7d\x9a\x13\x82\xf5\x68\x7f\xd7\x6d\xa4\xb7\xaf\x8d\x32\xf7\x9a\xf1\xce\x82\xad\xd8\x5b\xee\x3a\x86\x1b\x14\x88\xef\x91\xee\x33\x0f\x60\x43\xf5\x5e\x1b\xa5\xdc\x5a\xf4\x50\xfb\xb7\x49\x37\xb0\x40\x92\xd3\xeb\x7c\xd3\x34\xc3\xa2\x69\x0a\xfc\x73\x06\x68\x50\xf7\x88\x13\xe5\x11\xd7\x6c\xc4\xad\x8b\x00\x00\x34\x6b\x15\xf6\x9b\x2f\xd4\x7d\x42\xf3\x38\x18\x3e\x00\x7d\x50\xd3\x38\x20\x88\xbe\xa1\xa1\x47\xc6\xf1\xd4\x7b\x29\x8e\x95\x4a\x12\x0f\xe9\xeb\x14\x36\xe8\x60\x32\x34\xf9\x94\xac\x5e\x7a\xa8\x94\x95\xb3\xe6\x58\xb3\x12\x4c\x4b\x17\xf8\xcf\x12\xff\xf1\x09\x33\x08\x18\xe4\xec\xa1\x12\x1b\x9e\xad\x97\x6b\x1f\x47\xd1\x14\x3b\x0c\x7c\xb6\x9a\x04\xbf\x3e\x5b\x9d\x2c\x54\xb3\xf9\xbe\x5e\xce\x56\xa1\x49\xeb\xf2\x99\xcb\x65\x76\x1a\x28\x79\xff\x80\xf7\xe4\xdf\x84\x41\xc9\xa4\x96\xa7\x97\xe6\xfe\x0f\x1d\x11\x69\x84\xb7\x60\xc3\xef\xa7\x71\x34\xfd\x17\xfa\xa8\x37\x96\x64\xed\x5c\x09\xdd\xba\xb8\x4d\xd3\xf0\x69\xbe\xd9\x20\x32\xf2\x16\x14\x97\xe6\x78\x7b\x51\x96\x10\x5a\xc3\xa1\x1f\xa6\xa1\x47\x64\x77\xd7\x62\x8b\x9f\x74\x8b\x20\xd1\x11\x78\x4a\x71\x61\xe8\x1d\xe9\x2b\x8f\x38\x0b\x86\x8a\x28\x61\xee\xf9\xfe\x9a\xcb\x60\xb6\x6b\xe1\xb4\x9d\xfe\x8c\x4e\x39\xba\xdd\xb5\x51\x6d\x49\x17\xe7\xf6\xcc\x46\xcc\x5b\x60\xb8\xe1\x5b\x92\x11\x8f\xf5\x8e\x67\xa0\x9d\xfa\x24\xb3\xc7\x21\x6b\x60\x03\x84\xcb\x21\xed\xdf\x21\x22\x81\xf8\x07\x91\xb6\x67\xfe\xd9\x27\xb0\x56\xba\xb3\x0f\x62\x5a\xdc\x6f\x75\xf4\x9f\xdc\x7b\x06\x7d\xb8\xc4\xd1\x36\xd3\x0f\x52\x1c\x6f\x3e\xb4\x07\xb3\x38\xdc\x81\x7a\xf1\x8b\xa3\x6d\x49\xdf\x41\x4c\xa5\xbe\xa9\x5e\x6d\x0a\x25\x7a\x08\x5d\xfa\x5b\x00\xae\xd1\xc1\xa6\x11\xeb\xad\x15\x6b\x6d\x21\xfa\xd4\xdb\x8b\xea\x45\xb5\xe6\xb5\xc2\x8b\x5f\x5e\x54\xde\x31\xe5\x1b\xd3\xef\x9b\xe2\x96\x2a\xd2\xf3\x1a\xf4\xe7\x9e\x82\x6c\x1e\x4e\x6c\xec\x7f\xdb\xd1\x29\xec\xb3\xce\x1f\x3d\x62\x6d\x8a\xdb\x3f\x7e\xbf\x7a\xec\x4d\x27\x58\x5a\xb8\x6c\xdb\x5d\x9e\x92\x85\x53\x7c\x06\x5d\x9c\xfd\xe2\xcf\xe6\x7f\x69\x59\x44\xf0\xd4\xff\xc2\x4b\xd0\x13\x65\x73\x6f\x3d\x01\xa5\xbc\x5d\x37\x1a\xbf\x34\xf1\xb3\x99\x2b\xf3\x2a\xd3\xae\xe9\x9f\x9d\x66\x4e\x20\xf1\x6b\x63\xd8\x46\xf0\xd6\x81\xb0\xd9\x06\x6b\xa3\x93\x08\x83\x75\x32\xb7\x40\x86\x3d\xa0\xdf\x2e\x41\x27\x9b\x2f\xc3\x65\x13\x75\x47\xeb\xd1\xb2\xf5\x10\x64\x5f\x86\x82\xdd\xd0\xee\xdf\x9d\xed\xf0\x4f\x0a\x2c\x83\x73\xbb\xbc\x31\xfb\xd4\x12\xc9\xe3\x52\x4b\x65\xd3\x9c\x95\x57\x64\x92\x54\xe0\xf3\x17\xd3\x56\x7c\xc2\x53\x65\x55\xd1\x60\x73\xad\xef\xc8\xa9\x44\x51\x06\x84\x1b\x62\x1d\x83\xfb\xe7\x27\x7a\x02\xd2\x40\xcc\xed\x4c\x05\xdf\x50\x50\x5e\x58\x2d\x3c\x68\x30\x3a\x92\x1a\xdc\x75\xd1\x1f\x5e\x00\xae\x89\xd5\x4b\x03\x1a\x8c\x74\xce\x26\x4d\x23\x0c\xf4\xa9\xc7\x02\x0f\xdf\xcc\x0a\xe3\xf6\x13\x7e\x31\x63\x2c\xe5\xac\x92\x00\x15\x88\x38\x40\x04\xad\xeb\x5f\x14\x29\x26\xd4\x02\x08\xfa\xcd\xd7\xcc\x87\x54\x40\x79\xa5\x25\x95\x30\x29\xef\x24\xe5\x5a\x76\x02\x42\xd4\x90\x49\x15\x2d\xf0\xa1\x58\xe1\xd1\xbf\x8e\xb6\x6e\x1e\xa1\x0e\x25\x31\xdf\x20\xba\x36\x1e\x2f\x5f\x14\xb7\x30\x67\xf1\xfe\x0f\x15\x29\x83\x8a\x1c\xc7\x73\x53\x15\xf3\x8d\x0f\x85\xca\xf4\xe1\x22\x5b\xec\x01\x18\x01\x4f\xe3\xd3\x36\xcd\xf7\x98\x50\xa3\x11\xf0\x7c\xd0\xda\x30\x4e\xc0\x1d\x5f\x5f\x47\x72\xd8\xf2\xbc\xfa\xe9\x98\xa2\xc9\xf6\x3c\x04\xf6\xf6\x37\xc6\x9b\x36\xbb\x28\x3a\x94\x0e\x9c\x5e\xd7\x7a\x38\x8d\x46\x78\x9f\xb3\xfc\xf4\x16\x6c\xd9\xe8\x6f\x52\x7b\xaf\xbc\xa1\xa3\x11\x21\xf4\x56\x14\x9b\x54\x8c\x99\xf1\xcc\x2f\xe9\xba\xaf\x30\x84\x48\xc3\xe2\xd6\xc4\x88\x93\x40\xc2\xb5\xf9\x2e\x97\xbf\x01\xca\x7c\x85\x34\x19\x86\x21\x83\xa6\x07\x36\x5e\xd3\x50\xf8\x70\x9b\x58\xb1\x61\xec\x70\x22\x6e\x5b\x83\x3a\x6c\xfd\xcd\xa8\x64\x5b\x3d\x7d\x00\xeb\x0b\xf0\xc1\xc4\x98\xbd\xb3\xe8\xff\x25\xe2\x82\x94\x53\x25\x08\x2a\x60\x6a\x82\xba\x27\x43\x6b\xc1\xba\x0d\xc0\x2e\xb0\x3a\xc6\x91\x7d\xdd\x1d\xc4\xfe\x0e\x3d\x78\xe9\x60\x03\x7c\x4c\xc3\x18\x30\x0d\x7e\xfa\x5f\xe9\x41\xf2\x66\x53\xdc\x36\x07\xf2\xc9\xd3\x02\x2f\xe9\x38\x6e\xdf\xe7\x7b\x8e\x18\x17\x7a\x99\x5b\x57\x83\xcf\xba\xc3\xba\x33\x21\x3f\xda\x97\xed\xe1\xce\x56\x2c\xc7\x46\xd7\x30\x77\x08\x15\x63\x66\xe0\xba\xe1\x8d\xf7\x42\xcf\x15\xaa\x86\x4c\x5e\x10\xa0\xfe\x0d\x56\x8d\x75\x47\x3c\xa5\x8a\xd6\x74\x4d\x73\x5a\x12\x42\x37\xba\xff\x70\xc7\xda\xf1\x34\x37\x23\x55\xd2\x57\x36\xb4\x8c\x31\x89\xc9\xc5\xd6\x3d\xcb\x26\xc9\xc6\xfd\x7d\x41\x8a\x6d\x7a\x2b\xd2\x2d\x61\xec\x56\xa4\x1b\x42\xb6\xd3\x83\x38\xa4\x84\x6e\xcc\xbf\xe5\x64\xe2\xb4\x98\x7a\x14\x87\x6c\xb3\x9c\xad\x8c\xfb\xc2\x16\x11\x84\x21\xb9\xfd\x2b\x1f\x8f\xdd\xc3\xf5\x8e\xcd\xe8\x81\xcd\xe8\x1e\x26\x00\xbd\x85\x6f\xe9\xbd\x7f\xca\xde\xdb\x67\x82\x5b\xf7\x94\xbd\xbb\xbc\x4f\x92\x7d\xf8\x72\xbd\xd3\x95\x8b\x03\x2e\xc8\x78\xbc\x73\xc3\x7d\xcd\xa0\x09\xf4\x06\xdb\x40\x3f\xf8\x02\x9c\x25\xb8\x5e\x87\x5b\xe7\xe0\x91\xcd\x08\xbd\x09\xa3\x36\x61\x14\xb9\x38\x5c\x7e\x48\x92\xeb\xb0\x4c\x97\xd1\x61\x32\x27\x8c\xdd\x84\x71\x37\x61\x9c\xae\xda\x61\xb0\x5d\x6e\x03\x60\xd6\x6b\x07\xa6\xe8\xb3\x21\x54\xf7\x09\xae\x0c\x8c\xdd\xe1\x92\xbd\x63\x30\xa4\x3b\x42\x5f\x31\x18\x54\x57\x37\x68\x9d\xcb\x20\xf3\x98\x72\x7e\x70\x9b\x46\x67\xd8\x34\x07\x9e\xde\xd1\x57\x64\x91\x7e\x2d\xcd\x8c\xd8\xd2\x3b\xfa\x8a\x3a\x72\x2b\x3a\x9c\x11\xeb\x2c\xf8\xf8\xc3\x76\xbf\x32\xa8\x6d\xda\xf6\x78\xe2\x9e\xe0\xce\xa7\x1d\xd1\xc2\x2b\xe6\x8c\xee\xcb\x3e\x8a\x77\xf4\x5f\x71\x72\x42\xfb\x3f\x07\xfb\x9a\x58\x4e\xa6\x6d\xc9\x9a\x9c\x68\x3b\xf7\x2e\x87\xe8\x7a\x1f\xe9\xb7\x16\xdf\x7a\x89\x96\x4b\x62\xff\x26\x19\xea\xf4\x00\x00\x24\x57\xf9\x90\x71\xaf\x0f\x84\x37\x70\xfb\xd1\x07\x4e\x02\x5d\x8b\x4e\x4b\x67\x78\x25\xeb\x3c\xa7\x44\x2f\x2f\x53\xb3\x11\xbe\x32\xb1\xcc\xec\x98\xfd\xb6\x05\xf0\x45\x97\xe9\xab\xa7\x41\x4d\x73\xa6\x72\xef\x94\xd4\xfd\xa9\x37\xec\x97\x66\xfa\xa7\xf6\x5e\x6f\xd7\xc3\x02\x4c\x7e\xf4\x5f\x99\x0f\x24\x74\x46\x1e\x7f\x46\x72\x03\xd1\x6e\x13\x96\x19\xd9\xcc\xf1\x8e\xd1\xc3\x07\xd1\xb2\x63\x3b\xff\xec\x34\x3b\x45\x0f\x4d\x84\xbe\xc1\x77\xb1\x77\x08\xf4\xf1\x60\x2d\x22\xb2\x8f\x9c\xb6\x0e\x9a\xec\x3d\x3f\xd1\x97\xe1\x2b\xd5\x83\x91\xd8\xce\xdd\xb2\x0c\xe4\x5f\xcc\x78\xb0\x3a\x51\x04\xbb\x6d\x1b\x86\x72\x06\x12\xa2\xc7\x83\x80\x07\x18\xf7\xdd\x90\xc5\xf9\x68\xa1\x3e\x02\x24\x34\x09\xa2\x30\x2f\x0d\xc6\xb8\x16\xdd\x94\x80\x70\x61\xe5\x93\xb0\xf2\x2b\xf0\xdb\x75\xbf\x74\xad\x50\x89\x27\x2d\xf2\x6c\x65\xb1\x90\xad\x7a\x4f\xa2\xcd\x72\x65\x10\x91\x9d\x39\xa4\xbf\x57\x6e\x38\x3f\xbc\x14\x87\xa8\xe7\x3c\xe3\xe7\x72\x45\x1f\xad\x26\x5f\x2a\x87\x47\xbb\x37\xca\x41\x57\x41\x07\xcc\xdc\x8d\xc1\xea\x0c\x3a\x8c\x08\x51\xbf\xea\x45\xd7\x7e\x24\xec\xaf\xa6\x23\x26\x8d\x6b\xc8\x0d\x2e\x64\x58\x38\x5f\x59\x98\x46\x3f\xbc\xde\x4a\xd4\x5a\xc7\xb4\x74\xce\xe0\xcf\xcb\x38\x69\xa3\x54\x77\x8b\x94\x76\xec\x2a\x16\xc3\x56\x1b\x96\x0a\x45\xab\x80\xa0\x22\x49\x0e\x68\xe2\x05\xba\xd4\x4b\x36\x23\x8e\x3d\x00\xff\x98\xcc\x4f\x27\xfa\x43\x34\xd3\x91\x68\xb1\x33\xcd\xef\x4d\x1f\x9b\x99\xe0\xb8\x3a\xc8\x89\x2a\xd1\x93\xfe\xf6\x7c\x7a\xe8\x9f\x73\x2b\x29\xe0\xe3\x0b\xbe\x37\xe8\xb3\x3e\xc5\x7a\x17\xc7\xaf\x77\x27\x64\x81\xbd\x51\xf4\x83\x32\x3e\x5e\x8e\x43\x17\x1c\x9d\x1c\xb1\xf5\x2c\xa0\x65\xbd\x53\xbd\xe8\x2b\x34\x37\xee\xc5\xdc\xd3\xf6\x59\x96\x9a\x23\xe3\xe8\x5d\xcc\xd1\xbb\xb8\xd8\xa6\xea\xf2\xb8\x48\x0b\x36\xa3\x82\xcd\x1d\x8b\x15\xc9\xd4\x65\xb9\x10\x2c\x2d\x98\x9a\x1c\xc9\x78\x9e\xa5\xb5\xde\x40\xad\x3a\x18\x60\xf4\xca\x24\xd1\xd9\x7c\xb6\xba\x52\x88\x92\x92\x0a\x56\x4e\x8e\xfa\x66\xa3\xae\x74\x6c\x9a\x3b\x87\x42\x67\xb7\x80\x56\x21\x50\xfe\xb3\x15\x3d\x42\x2e\x92\x31\x30\xbd\xa9\xb9\x04\x64\xc5\x05\x56\x22\xb3\x1f\x43\x4e\x92\x50\xeb\xc8\x86\xc8\x75\x05\x41\x8f\x5f\xa8\xc5\xe4\xd9\x8a\xe9\x4c\x27\x9f\xad\xf0\xf7\x7c\x15\x64\x78\x41\x74\x89\xcf\xc6\x69\x3d\x61\x9f\x91\x95\x27\xeb\xd2\x12\xbc\xf5\xa5\x93\x49\x52\x30\x68\x00\xe6\x7b\xe9\x9b\x6b\x1b\x0a\x45\x8c\xff\x6d\x95\x24\x43\xfd\xc7\xf3\x6e\x19\x29\xf4\xb5\x6e\x9a\x6b\xbb\x65\x3a\x34\x5e\x9c\xa0\x3d\x37\x2f\x98\x59\x01\xf8\x72\x82\x5a\xcd\x75\x96\x53\xef\x59\x9c\x1d\xa9\xf5\x38\xce\x42\x33\x94\x57\x1e\x21\xc5\x28\xe0\x41\x4f\x14\xe1\x48\xb0\x87\x13\xe5\x1d\xf7\x75\x83\x78\x03\xfc\x4f\x24\xde\x6b\x63\x3c\x0b\xd8\xbf\xda\xc8\x14\x6a\xc5\x1e\x42\x3a\xc4\x16\x7e\x6e\x0b\x2c\x01\x0b\x7b\x79\x06\xea\x80\x0c\xda\xc5\xf7\xf1\x6f\xe9\x6a\xbc\x52\x2d\x2e\xb1\xa5\x5a\x05\x76\x46\x6f\xa0\x16\x50\x97\x00\xa9\x0b\x31\x54\xf4\xf9\xff\x93\xe1\xbc\x8f\x63\xde\xf3\x8f\xc6\x63\xa4\x13\xe5\x81\x57\x62\x78\xa0\xd0\x0b\x36\x62\x22\xde\xe7\x1f\xf5\x85\x3c\xd0\xb3\xd0\xb8\xc9\xdf\x1f\x41\x12\xa9\x5b\x3c\x83\x1f\x95\xdf\x3e\x8c\xd6\xe9\x90\xdf\xf0\x9f\xad\xba\x2c\x75\x0f\xfb\xf6\x0f\xf3\xb4\xdf\x34\x2e\xe6\x5a\x6c\xee\x49\xc0\x52\x1f\xb0\x18\xf6\xe7\xfe\xcb\x7f\x37\xf7\x08\xe7\xe7\xbd\x8a\x80\x3a\xd5\xf4\xae\xd8\xdc\x70\xe5\x91\xd1\x91\xc7\xc4\x85\x7b\x40\xaf\x82\x84\xe9\x97\xc5\x6a\x9a\x5f\x8b\x5b\x6e\x35\x17\x9f\x54\x51\x24\x19\x20\x7a\x2c\x13\xd4\xe2\x17\x8c\x99\x80\x7b\xb7\xee\xd8\x51\xc0\xbc\x26\x07\x08\xef\x31\x2a\xc5\x3a\x2f\x47\x96\xbc\xf9\xb7\x22\xc5\x17\x40\x13\xce\x58\xb5\xc8\xc7\xec\x18\xba\x00\x67\xf9\xa4\x05\x91\x62\x94\xfc\x23\xdd\x63\x23\xb0\xdb\x1e\x61\x1f\x42\x89\xe6\x39\x8f\xf7\xd8\x50\x9c\x33\xd7\xcc\xc7\x00\xd2\x7e\x18\xa7\x41\x46\x8b\x59\xa6\x47\x89\x0c\x2c\x46\x32\x78\x1b\xb5\x52\x7c\x84\x14\x06\x62\x97\x1d\xa9\x44\xf7\xd7\x31\x3b\x5a\x3f\x24\xd3\x45\x79\xd0\x45\x39\x0d\x28\x76\x7e\x0b\x21\x76\xc0\x43\x8b\x39\xc5\x8d\x71\x57\xaf\x98\x71\x02\x06\x73\x5b\x34\xa4\xb5\x8d\x97\xa4\x9a\x30\x5d\x0b\x5a\x4c\xd8\x8b\x10\xc9\xc0\x75\xa9\x6c\x9a\xa1\xec\x12\xe5\x21\x60\xee\x59\xe7\xae\x31\x13\xa6\xd0\x31\xe2\x7e\x1a\x96\xb9\x7f\xa5\x5f\x43\xcf\xf8\x6a\x92\x7b\x4f\xe6\x62\x02\x0e\x60\xc1\x76\xf5\x5d\x04\x6e\x62\xa5\x2b\x98\x33\x6d\x96\x47\x42\x61\x82\x57\x74\x8f\xff\x00\x41\x63\x11\xf3\xe7\xbc\x0d\xb2\xa3\x82\x3c\x78\xf4\xc3\x54\x51\xf7\xe4\x0b\x88\x2a\x05\x55\x34\x6f\x91\x40\x52\xe1\xc1\xd6\x17\x38\xf2\xcc\x78\x36\x5b\x0f\x67\x33\x21\x6c\x5d\xea\xa8\xf8\x3a\x84\xaf\x39\xa2\xfc\x2b\x11\x9f\xf6\x7f\x3c\x73\xaa\x7b\xc6\x78\x9e\x4a\x92\x24\x2a\x49\x4c\xec\xe5\x71\xa9\xf4\xe1\x88\x50\xb6\x29\x67\x2a\x4f\x75\x0e\x93\x89\x5a\x91\x49\xea\xf2\x58\xcc\xb2\x39\xa1\x95\xde\xce\x32\x2d\xcf\x98\x7c\x2e\x8f\x81\xdb\x7a\x90\xe5\xd8\x66\xa9\x8f\x22\x28\x95\x1d\x97\xe3\xb1\xce\xd3\x65\xa9\x73\xd3\x79\x26\x09\x28\x7b\x95\x48\x12\x7e\x25\x41\xe4\x5b\xe4\x29\x9f\xcc\x49\x96\x83\xb7\xe9\xa9\x62\x06\x04\x3e\xe6\xde\x04\xee\x07\x00\x0b\xaa\xdc\xaa\x41\xf6\xcd\x12\xd0\xe6\x41\x9f\x75\xb4\x53\x3b\x4f\x0d\x85\xfb\x9a\xd5\x69\x49\xeb\x1c\x59\x21\x42\x2e\xad\x21\xfb\x59\x24\x49\xba\x46\xd0\x69\x48\xf6\xb3\x20\x84\xae\x03\xf6\xc6\x08\x9b\x68\x36\x50\xc0\x67\x85\xf5\x0a\xdd\xe0\x5b\xc7\x83\x64\x11\xca\xc0\xa7\x40\xbd\x70\x9e\x54\xf4\x37\xdd\x8a\x71\xb4\x2b\x45\x73\xdb\xc2\x3d\x20\xcc\x43\xe1\x3c\xdd\xc7\x95\x39\xdb\x43\x42\x3b\xd5\xe6\x16\xda\x21\x81\x89\x83\x20\x9b\x7e\xfc\x81\x97\xac\x02\xdc\xb7\x62\x2a\x8e\xaa\x2e\x36\x08\x91\x54\x04\x3c\x77\x7d\x40\x81\xc0\xd4\x20\xc7\xbd\xdb\x25\xb9\x74\x22\xfa\x4b\x95\x56\x96\x2d\x80\x0e\x67\xd4\xa2\x07\x15\xec\x7d\x91\x56\x54\xe2\x83\x01\xa2\x6c\x56\x96\x26\xad\xd8\xa6\xc5\x95\xe8\x66\xe1\x52\x50\x84\xd7\x8b\x89\xdc\x87\x33\x3a\x27\x03\x8f\xb6\x1d\xe0\xf0\x40\xf2\x82\x5c\x5c\xd8\xd5\xf8\x8d\x6e\x52\x0e\xeb\x51\x12\x7a\x64\xaf\xab\x34\xd7\x73\xe7\x98\x24\x86\xe5\x61\x66\xb9\x35\x87\xc7\xa6\x19\xa6\xf5\x74\xbd\xbb\x42\xe5\xef\x74\xbd\x6b\x9a\x1a\x64\x77\x17\x90\x24\x35\x74\x65\xc0\x20\x51\x0f\x0a\xf6\xa2\x48\x73\x56\x4e\x95\xb0\x14\xd2\xae\x4f\xbf\x51\x5d\x65\x7d\x31\x81\x33\xca\x6a\xec\x9f\x7d\xea\xfb\xb6\xc7\x2d\x95\x1e\x99\x41\xcb\x0a\x51\xc7\xab\xc8\x35\x77\x67\xde\x87\xf0\x8c\xa4\x8a\x1e\xfd\x5e\xc3\x86\x33\x2a\xae\x2c\x78\x85\x01\x84\x98\xd4\x99\xb8\x04\xb7\x59\x13\x30\xae\xb3\x34\x47\xc0\x00\xf0\x79\x3d\xe1\x32\xfa\x0e\x2a\xba\xb5\x00\x47\x96\x4a\x9f\xc9\x5c\x87\xef\x58\x05\xff\x1e\x58\x99\x6e\x08\xdd\xb3\x9c\xde\xb2\x32\xdd\x11\x7a\xcf\xc0\xac\xaf\xba\xba\x0d\x46\x57\xd2\x1d\xbd\xd7\x63\x07\xd2\xf6\x05\x9c\x4e\xeb\xc5\x8e\xb1\x4d\xd3\xe8\x4e\xd6\xfb\xe8\x86\xce\x49\xb6\x9b\x6c\x2e\xd9\xdc\x5f\x72\xae\x59\x75\x79\x68\x9a\x6a\x72\xb8\x64\xb7\x93\x6a\xb1\xc9\x76\xf4\x86\x55\x93\xf4\x9a\xb1\xcd\xe2\x90\xdd\x92\x0b\x80\xfa\x09\x51\x7e\xae\x11\xd8\xe7\x7a\x10\x96\x7f\x4d\xe1\x8b\x7d\x76\x4f\x6f\x2e\x27\xf3\xc5\x64\x9e\xdd\x5c\xcd\x81\x6c\x13\x1a\x6c\x54\xb4\x6b\x5e\x94\xe9\xf6\xe9\x33\x42\xef\xd8\x66\xfc\xc1\x3c\x47\xdc\xb1\x8d\x9b\x6a\xaf\xd8\xec\xe2\xd5\xe5\x87\x8b\xf1\xf8\x15\xb9\xc3\x9a\xdf\xd1\x39\x66\xf2\x8e\x95\xe9\x1d\x19\xbc\xbb\xaa\x16\xe9\x8e\xdd\xd1\x5b\xf6\x8e\xa6\xf7\x2c\xd7\x97\x9a\xdb\x31\x9b\xf3\xcf\x74\x8f\x7e\x20\x59\xba\x61\x77\xf4\xc0\xde\x41\xc7\x6d\x27\xec\x43\x38\x71\xbe\x50\x11\xf6\x0d\xef\x88\xb1\x6d\x70\x44\x1f\x63\x5f\x6b\x18\xbb\x51\xe4\xe1\x06\x09\xa7\x0f\x92\x8f\xda\x22\xf8\xbf\xfd\xe7\xc5\x78\xac\xc8\x8d\x8a\x90\x98\x5b\x80\xfa\x3a\xdf\xef\xc5\x86\xa7\x08\xae\xd3\x4a\xac\xb3\xbe\x06\xe6\x80\x7f\x25\x97\x53\x04\xdd\x78\xa3\xec\x5b\xea\x8d\x8a\x20\x22\x9f\x3e\x9f\x39\x88\x39\x40\x28\xef\xb6\x55\x5f\x12\x5f\x06\x99\x01\x02\x7b\xc0\x05\xfd\x7d\x7f\x37\xba\x7b\x42\xbb\x17\x5d\x84\xb1\xac\x08\xb1\x85\xdc\x7f\x23\x42\xa5\xeb\x54\xaa\x6f\x27\x83\xa8\x41\x92\x38\x19\xeb\x9c\x33\x7c\xc1\x2c\x04\xa4\x05\x15\x7a\x3a\x77\x8d\x2d\xae\x9e\x05\x8d\xf5\x77\x9a\x02\x4e\xc4\xf9\x0c\xa6\xd9\x6b\x45\xbf\x54\xf4\x77\x43\xae\xfc\x37\xc5\x66\x7e\x7f\xf8\xdc\x5c\xd4\xe0\x61\x98\x3d\xac\xf7\x19\x07\xec\x38\xab\xe2\xd4\xfb\x8e\xbe\x6f\x62\x1f\x66\xf8\x66\x88\xc7\x0a\x0d\x30\xf4\x74\xba\x80\xd6\x0a\x21\xe7\xd4\xbd\x3e\xf0\x74\x14\xe2\xf1\xbd\xb9\xfe\x47\x8d\x31\x31\x8d\xd5\xd7\xa0\xde\x96\xbd\x71\x2f\x73\xd0\xe9\xcf\xba\x96\x0a\xae\xc4\xef\xf0\x8e\x05\x55\x75\x97\x1d\xc3\x3f\x6c\xaf\x27\xf1\xcf\xb7\xc2\x94\x85\xe6\x2c\x7a\x2f\xdb\x64\xe3\xf1\xdf\xd4\x89\xfe\xae\x16\xbf\xab\xa9\x38\xd4\x96\x44\x1f\x3a\x86\x64\x16\x37\x50\xdc\x55\xf5\x57\x52\x1c\x0f\xec\x77\xc5\x1e\xc4\xa1\xce\x96\x26\x6a\x45\x37\xbc\xcc\xef\xf9\x46\x57\xf9\x3a\x5f\xff\x56\x67\xcb\x55\xb0\x4c\xbf\x8e\x90\xaf\x5b\xb9\x81\xb2\x05\xfc\xa2\x3b\xe6\xb9\x70\x0b\x6d\xe5\x4c\xb5\xb4\xb1\x11\x08\x85\xd6\x66\x7d\x5b\xca\xd5\x74\x9d\x97\x65\x1a\x63\x34\x5b\x68\x4a\xe1\x0c\xff\x22\x66\x58\x1d\xbe\xac\x56\xf8\xe6\xde\x3f\x3e\xa8\xfb\x68\xc7\xe2\x08\x5d\x9e\xfb\xc8\x96\x45\xce\x25\x58\xf6\x67\x38\x1e\x07\xad\xa0\x05\xb0\xae\x9d\xee\x76\x45\xc9\x53\xdf\x60\x72\x22\xa9\x22\xa7\x6d\x51\xe5\x65\x79\xff\x60\xa6\x78\x87\x13\x2f\x68\x32\xf4\x10\xb4\x55\xf7\x92\x31\xd8\x81\xaf\x2e\xa2\x9e\xf7\xdb\x1f\xf4\x0c\xed\xa1\xd7\xfb\x51\xa5\xba\xaf\xb1\x87\x7b\xe2\xff\xf9\x07\xf1\x3f\xfd\x41\xfc\x27\x7f\x10\xff\x95\x89\xc7\x3e\x08\xd8\x3b\xe3\x89\x16\x59\x6b\x5c\xf4\x4f\x2f\x03\x41\x31\x54\x81\xc7\xd1\xcb\xb2\x38\x1c\xf8\x26\x49\x94\x77\x36\xc2\x2d\x17\xb6\x18\x30\x27\x89\x71\x65\x59\x7f\xca\x89\xea\x05\x94\xa5\xca\xec\x23\x5f\xea\x6d\x44\xc6\xf4\x2f\x80\x0e\x6b\xa0\x2a\xcc\x5d\x11\xe3\xf7\xb9\xbc\x29\xaa\xcf\x11\x2f\x6a\xd2\xae\x41\xdf\x17\xe8\x2c\x08\x48\xbb\x58\xcb\x38\xef\x76\x7b\xd1\x16\x46\xcb\x2a\x7c\x1a\xed\x2f\x49\xf2\x05\x86\xee\x8f\xb5\x32\xc8\xa1\x7c\x1a\xec\x95\x68\xa3\xe4\xb6\x44\x04\xb7\x83\x47\x33\xbb\x0b\x81\x53\xb9\xdf\x83\x60\xe7\x0e\x7e\xa3\xe8\xd8\x31\x90\x89\xd3\x18\xc9\xf1\xca\xd9\x97\x90\xa6\x91\x2d\x3d\x93\x1e\xb3\x5e\xcc\x4b\xdb\x24\x16\xb6\x02\xd9\x3e\x7f\x01\xbb\xa3\x30\xf4\x41\x5f\x27\x82\xda\x9b\x57\xd6\x2c\xaa\xcf\x89\x46\x8d\x0e\xe9\x5e\xcd\xc9\x82\x25\x6e\xbe\x30\x34\x41\x71\x19\xdf\x22\x49\xa4\x4d\x15\x12\xc1\x3e\x32\x8b\x07\xed\x5c\x93\xe4\xef\x38\x36\xd7\xb9\xb4\x2a\xc6\xd7\x3a\xa4\xdb\x33\xc3\xfe\xae\x81\xb1\xc8\x37\xff\x38\xd6\x38\x4b\xde\x0b\xb6\x57\xa9\xf2\x19\xf8\xbf\x22\xc3\x04\x14\x89\x3f\xa3\x2a\xd6\x6c\x58\xcd\x62\x94\x63\x54\x3f\xd3\x89\x98\xd0\x79\x99\xc8\xfe\xa5\x22\x3b\x04\x43\xe3\x56\xde\xe3\xad\x4a\x15\x19\xab\x0e\x3c\x33\xcc\xd8\xfc\xe3\x3b\x77\x32\x86\x30\x37\x7f\x9c\xef\x64\xa3\xf3\x25\x84\xa6\xed\x3e\x87\x89\xd9\x3a\x94\x09\x1a\x25\xa2\x7b\xc3\xc6\x3b\x7e\xcb\x73\x14\x69\xc6\xba\x2d\x64\x88\xf8\xa4\x35\xf0\x03\xbb\x8c\xa2\x7a\xc1\xf6\x13\x2b\x93\xcc\x06\x51\x54\xbd\x9d\x8f\x0b\xbe\xd5\x17\x97\xc6\x70\xca\x05\x24\xc9\xad\x4c\x43\x0a\xf0\x2e\x8a\xb5\x4f\xdc\xce\x0d\x6c\x12\x82\x99\xd0\x56\xfe\xce\x03\x16\x70\xdd\xea\x24\xb1\x0e\x1d\xec\x0b\x01\x8e\xf6\x43\x27\x0b\xef\xf2\xfa\x4b\x74\xc6\xe8\x04\xa5\x84\x0c\x7a\x3a\x59\x2f\xfa\xc7\xe9\xea\x3a\x9f\xe8\x9b\x6e\xff\xb8\x7a\x91\x6f\x68\x8c\xcb\x70\x63\x26\x49\xf2\x39\x6c\x14\x7e\x22\xfb\x8d\xd2\xaf\xc6\x9f\x7b\xd2\xb4\xe7\x4a\x92\x14\x0a\xcc\x86\xba\xc8\x26\x81\x24\xd9\x6d\x15\xfa\x69\x82\xfb\x20\xd8\x4a\xc8\x24\xb9\xe6\x6d\x5a\xd6\xaf\x1e\xd9\x3d\xac\xc5\x22\xbe\x4e\xb7\xab\xfe\x57\xa8\xba\xd9\x8e\x0c\x43\x91\x9c\xde\xed\x38\x2f\xe1\xe1\xe5\x67\x0b\x5a\x1a\xec\x8c\xde\x39\x20\x9c\x49\xc3\x68\xa3\x04\x4f\xa9\x20\x9b\x28\xd3\x5f\x0c\x34\x42\x27\x67\xbd\xb7\xf7\xb8\xfa\xc6\x85\x0f\xcd\x16\xfc\xce\x90\xd5\x3a\xf7\xe0\x73\xf8\x58\x9d\x3c\x0d\x40\x56\x67\xf7\xc1\x70\x1a\x94\x46\xc0\x9b\xfd\x0f\xdc\x92\x75\x3a\xda\x5b\xf1\x28\x45\xb7\xd3\x7a\x9a\x0b\x5b\x56\xb7\x67\xfb\x1b\x7c\x16\xc6\xab\x93\x2d\x4a\x26\x67\xb6\xdb\xb0\xb4\xb3\x0d\xd6\x91\x51\xc1\x3d\x4d\x7e\x8d\x44\x78\xc1\x96\xf1\x4f\xc0\x11\x8f\x66\x86\x15\xc1\xbb\x70\xca\x8e\x1f\x2b\xad\x42\xed\x15\x3e\xa0\x3c\x07\xda\x77\xa3\x28\x1a\xce\x69\x6e\x78\x0d\xc1\x8e\x35\x49\xe4\x90\xa9\x05\xa2\xb1\x91\x2c\xa7\x47\xf6\xa3\x4c\x79\x48\x5d\x06\xfa\x63\x54\x23\xb7\x28\xcd\x0e\x14\xde\x23\xc8\x24\x70\x7f\xec\x4d\x0f\xe1\x86\xaf\xc9\x82\x69\x92\x31\xa8\x5c\x79\xb0\xb1\x6a\xd9\x61\x1d\x85\xe8\xae\xf0\x96\xa2\xc7\x70\x32\xa7\x7b\x5d\xcf\x63\x38\x4f\x1c\xb6\x6e\x2b\xd3\x49\x49\xae\xe6\x40\x00\x06\xac\xcd\x71\x66\x38\x53\xd2\xdb\x30\xb7\xd7\xbe\xee\xed\xec\x74\xd4\x64\x1d\xe5\x37\x14\x68\x25\x68\xdf\x52\xf2\x53\xaa\xe8\x6b\x43\x9e\xdf\x92\xda\x48\x5f\x84\x12\xad\x91\x36\xd2\xab\xde\xbe\xc3\xd0\xa2\x46\x44\x17\x10\xb5\xe3\xbd\xb0\x03\xa0\xac\x80\x82\x1c\xbf\xc6\xaf\xbe\xa9\x94\xf8\xb1\xe0\x77\xde\x8a\xf4\x36\x06\xe3\x07\xed\xff\xa3\xef\x2d\xb4\xc0\x7b\x13\xbc\xef\x8c\x81\x57\xf2\x72\xb6\x28\xd8\x70\xe6\x60\x82\x31\xf4\xca\xa0\x3d\x20\x53\x0b\xee\x0e\xc1\x09\xd5\x7a\x2d\x8c\x36\x11\xb4\x02\x18\xce\x03\x0b\xe1\x22\x49\x86\x3b\x3b\x83\x3d\x1b\x25\x20\x34\xa0\x27\x77\x1f\x6a\x89\x85\x26\x81\xca\x4e\x64\xa0\x64\x9e\x44\x3a\xf2\x2e\x7d\xa1\xf2\xb0\xbc\xba\x9d\x78\x0f\x90\x9e\x79\xa2\x85\x6d\xa2\x1c\x75\xa5\x83\x4a\x79\x76\xf8\x78\x31\xd2\xc3\xd7\x7d\x85\x8a\x19\xca\xa8\x30\x23\x6c\x47\x27\x2d\xda\x2f\xbf\x5d\xc7\x6a\x41\x4e\x7a\x8a\x19\x76\x61\x01\x48\x40\xf7\xd7\xfc\x6b\xc0\x30\xf9\x0e\x2c\x9e\x6b\x9a\xdb\xe0\xbf\x55\xbb\x30\x02\x9d\x01\x03\xc4\xa5\x8b\xfa\x52\xf8\xb7\xd5\x9a\x88\x65\x8d\xd6\xe5\x9e\x95\xe9\x2f\x45\xaa\x43\xe9\x68\x57\x6c\x38\x1a\x53\xe7\x90\x45\x0c\x41\x0f\x9f\xe7\xed\xcf\x81\xe2\x1d\xf0\xe8\x47\xc7\xca\x64\x20\x9d\x5a\x3a\x54\xce\x01\x83\x8c\x3f\x03\xce\xca\x54\xb0\xd8\xf9\xd4\x2b\x8b\xa0\x08\x45\x47\x86\xce\x61\x44\x55\x14\xed\x25\x0f\x2f\x34\x4c\xb7\x45\x55\xd4\xbb\x34\xa4\x68\xf7\x7c\x17\x56\x9d\x63\x1f\x38\x53\x32\x00\x05\x18\xf8\x24\xfa\x40\xa7\x50\x00\x9d\x4d\x70\xb5\xfe\xd6\x64\xd5\x66\xa6\xec\xcd\x1c\xcd\x3c\x53\x4e\x73\x79\x03\xcb\xa2\xee\x2b\xad\x27\x55\xbb\xf8\x80\xb8\x3d\x64\x58\x89\x4b\x47\x13\xc7\xb0\x02\xdc\x64\x0d\x70\x13\x71\x1d\xc0\x4a\x2f\xac\xc6\x99\xb4\x61\x4d\xe0\x9b\xb0\x32\x7f\x39\x53\x99\x08\xde\x12\xb9\x15\x9a\x46\xfd\xf9\xba\xfd\xcb\x15\x8b\x6a\xf5\xb3\x7b\x9a\x42\x17\xa1\xa2\xe2\x4c\x59\xff\xcb\x5a\xb1\x8e\xfe\x83\x4a\x7c\x65\x50\xec\xb5\x0e\xbc\x20\x1c\xf8\xe6\xaa\x4d\x3a\xd7\xf2\x3c\x7a\xe7\xa7\x88\x87\xb6\x5c\x11\x62\x14\x83\xee\xd9\x44\x9e\x40\x8a\x05\xcf\xa1\xe2\x77\x03\x69\xa7\x8b\x5a\xbc\x28\xd2\x5b\xe3\x3f\x87\x56\x35\x13\x39\x9e\x67\x73\x4c\x5b\x89\x0d\xf7\xa0\x77\xa8\x9a\x45\x33\x30\x58\xd5\xec\x6b\xdc\xf3\x03\x36\xed\x3e\x8b\x2e\xb6\x5c\x51\xc1\xd4\x85\xb8\x94\x17\xc2\x9a\x1f\xe4\x31\x15\x89\x7b\x52\xd4\xdb\x12\x19\x54\x4c\x8c\x73\x64\xaf\x33\x44\x69\x79\x40\x5d\xe5\x8a\xe3\xb2\x2d\x87\x00\x29\x9f\x39\xc6\x0d\x1f\x9f\x23\x0b\x4d\x65\x18\x31\x36\x27\x6b\xf1\x3b\xb7\xcc\x2a\x33\xfb\xc8\x17\x71\x89\x55\x49\x22\x1d\x25\x95\xa3\xac\x2f\xcc\x5a\x7e\x8d\xf6\x31\xd7\x5c\xd6\x4d\xd3\x13\x68\x4c\xcb\xba\x11\x4c\x79\xa2\x97\x40\x41\x03\xf6\xd3\x96\x10\xeb\xbd\x20\xef\x92\xe4\x6f\x95\x7b\xaf\x0d\xea\x21\xa5\x1e\x5f\x6b\xca\x20\x2f\x03\x0e\x2d\xfd\xd1\xe7\xf6\x23\x39\xae\xc8\x95\x8f\x5b\xc0\x77\x59\xea\x43\xc6\xac\xa2\x36\xdb\x31\xab\x7c\x9e\xea\x32\xe2\xe5\x92\x41\xad\xe2\xc2\xa3\x84\xe4\x21\x15\xac\xd0\x03\x23\x75\xd9\x74\x4e\xc8\xc2\x94\x66\x52\x19\x4b\x7c\x81\x08\x16\x84\xfa\x6f\x19\xea\x8d\xbe\x8f\xea\x93\x41\x61\xce\x27\x24\xac\x06\x1e\xcb\x17\xb6\x40\x45\x15\x9d\x9c\x2d\x6f\x46\x5b\x25\xbe\x17\xb6\xbc\xb0\x0c\x33\x3b\xc3\x0c\x69\x1d\x37\x68\x90\x27\x49\x7d\xae\x90\xdc\x14\x32\x5d\x8b\x6a\x9d\xab\x14\x96\x44\x6e\xda\x55\x9b\xf2\x5c\x6c\xf4\x71\x6d\x3e\x25\x7d\xed\x47\x6b\x81\xa2\xcb\x5a\x74\xd4\x33\xfb\xf2\x88\x39\x2f\xcc\xbf\x63\x56\x65\xca\x06\x8e\x8f\x30\xcd\x61\x1e\x76\x19\x81\x00\xac\x35\x20\x81\x97\x76\x09\xf7\xcf\xce\xc1\x6d\x1f\x77\xf5\x39\x4a\xa5\x62\x9b\x16\x40\xa7\x54\x78\x3a\x25\xf3\xe7\xb8\xb0\xb5\xaa\xce\xd4\x8a\x0e\x53\x75\x59\x05\x5a\x46\x75\xc5\xaa\x98\x47\x53\x98\x00\xcf\xf2\xe4\x24\x37\xf4\xaf\xf7\xc4\x95\xe6\x80\x6e\x9a\xd4\xfd\xad\xf7\xca\x8b\xc9\x9c\xb1\x6b\x91\xe6\x54\x92\x24\xc9\x0d\xd9\x4c\xb4\x5d\xc3\x00\x3c\x74\x49\xa8\x3a\xe4\x9e\xe1\xfe\xd2\xa2\xdd\xd4\x9b\x60\x9f\xd1\x01\x0b\x68\xa4\x4c\x1b\x7a\x49\xaf\x3c\xbd\x95\x65\x67\x4c\x55\xdb\xea\x0b\x96\x9f\x37\x62\x68\x3d\x33\xc4\x69\x29\x3e\xb5\xc8\x16\x01\x98\xce\x54\x2e\xab\x15\xee\x8b\x41\x5e\x01\x9d\xad\x6c\x73\xe9\x08\x66\x6a\x4e\xf3\x56\x29\x70\xb2\xbe\x6b\x1a\xc9\xce\x6d\xbd\xc6\x48\x04\x71\xf8\x04\x85\x99\x91\x49\x4f\x88\x86\xb0\x9c\xdd\x76\x6a\xc9\x11\x48\x87\x8e\x63\x20\x1c\x82\xdc\xc0\xd7\x71\xc8\xb0\x0b\xab\xab\x19\xfc\x2b\x90\xf8\xda\xf8\x3d\x46\x9d\xc8\x8e\xe3\x7c\x29\xf0\xdb\x89\xa2\x62\x3c\xb6\xc4\x33\xc7\x89\x1a\xa8\x31\x2b\xa8\x1c\xb3\x02\xfd\xc7\xdc\x36\x2c\x09\x38\x91\x99\xbc\xd3\xea\x72\xb6\x98\x65\x41\x11\x51\x19\x72\xcc\xaa\x4f\xf3\xa5\x98\x40\xba\x79\x36\x23\x58\x1c\xd5\x6b\xfb\x74\xa6\xf5\x01\xeb\xad\x6c\x3f\xf4\x44\x83\x28\xd9\xcc\x0c\xa4\xea\x79\x2f\x53\xf0\x56\x66\x0e\x6b\x7d\x3a\xe9\x05\x01\x74\x24\x6e\x2d\x8c\xc7\xd2\x99\xe1\x05\x04\xb8\xb2\xef\xe5\x45\x81\x5f\xe8\x4f\x32\x3f\x98\xc7\x6a\xd6\x8f\x61\xae\xaf\x88\x36\x25\xaa\x39\x3b\x09\x21\xd8\xb3\x65\x04\x8f\xc2\xaa\xfb\x26\xae\x7a\x0d\x5b\x7b\x9f\x45\x10\x29\x42\xbd\x2b\x7e\xe7\x69\xb8\xa9\x19\x84\xfe\x07\xbf\x1a\x7e\x2a\x52\x45\x2e\xe4\x90\x39\xea\x84\x0b\xc9\x64\xc0\xcb\x02\xce\x05\xb2\x69\x00\x60\xd3\xfa\x20\x26\xc9\x48\xc9\x23\x58\x15\x76\xfd\x3d\x8b\x9b\x4a\x48\x3e\x01\xdf\x9f\x7a\x04\x4f\x1e\x3e\x3b\x50\x0f\xe9\xfb\x2d\x68\x3d\x0c\xb5\xa4\xf3\x52\x08\xd8\x2a\xdb\xab\xab\x45\x6c\x2a\x7d\x15\xa0\x09\xdd\x6a\x54\x42\x4d\x8c\x4f\xcd\x28\x9e\x8b\xb7\x86\xfc\xbe\x36\xbb\xf1\xe3\xa6\x89\x5a\xc0\x15\x4c\x39\xec\x4c\x63\xcd\x97\xbb\xa0\x5f\x26\xa0\x82\x31\xe8\x27\xfe\xc6\x01\x56\xc2\x70\x5c\xd1\x92\x81\x15\x96\xa0\x39\x31\xa2\xd4\x9c\xb1\x12\x6c\x8e\x92\x24\x3d\x7a\x4b\xb2\xd2\x80\x5a\x69\x39\xd3\x7a\xdf\xe9\x94\x6b\x73\xf7\x5e\x03\xed\x29\xb5\xc6\x7b\x3d\xac\xa7\x13\x1b\x37\x28\xc1\xa3\x0f\x65\xe2\xb6\x9e\x0d\xd0\x3d\xd3\x54\x4c\xd6\xe1\x35\xdc\x98\x2c\x44\x16\x6f\x64\xb2\xf6\x50\xf9\x81\xd5\x73\x29\x7b\x40\xf2\xc2\x11\x4a\x95\x48\x15\xc0\x88\x49\x83\x68\x06\xc8\x0f\x49\x62\x1f\x18\x22\x40\x88\x94\x10\x82\x90\x79\xbb\x02\xb0\xed\xe1\xdf\x6f\xf9\x3d\xad\x11\x2a\x96\xa0\x56\xd6\x5d\x43\x37\x32\xbf\xb9\x01\xa7\xad\xe1\xfc\x3c\x90\x55\x5f\xf2\xd9\x89\xd0\xf9\x6c\x46\xbc\xe0\x36\xdc\x4a\xa8\xaa\x35\x91\x3b\xe2\xcf\x41\x7d\x57\xe8\x21\x35\x7a\x14\x0b\x26\xfa\x49\x91\xea\xa4\xeb\xbc\xe6\x4f\xe6\x99\x55\x03\x19\x95\x79\x75\xa3\x57\xec\xa2\x37\x54\x0b\x9c\xd5\x22\x56\x1d\x92\x07\xb1\x08\x6a\xff\x4e\xa4\xd7\x9c\x82\x0b\x5b\xe6\xe9\x0f\xd7\xc7\x1a\x5e\x1d\x06\xf6\x26\xe1\x48\x88\x07\x5f\xaa\x24\xf9\x52\x4d\x55\xb1\xe7\x57\xc5\xe4\xdf\x66\x33\x70\xa9\x38\xf0\xf4\x4b\x35\x3d\x88\x9a\x4a\xb2\xa8\xd8\x48\xc9\xe2\x50\xf2\x51\xf6\x5a\x25\xc9\xeb\xbe\xd4\xaf\x5d\xea\xb4\x62\xa3\x8d\x38\x5e\x97\x7c\x44\xbf\x54\xec\x41\xa7\xcd\x0a\x7a\x10\x75\x26\x4f\x24\xd3\xd1\xc8\x14\x34\xa2\xaf\x3b\xd1\x03\x3b\xdd\xb9\x07\x3a\x65\xb7\x0b\x35\xdd\x73\x95\x7f\xcb\xef\x33\x35\x5d\x2b\x59\x7e\xcb\xef\x03\x8b\x4b\x3d\x34\x5f\x48\x71\x48\x92\x7f\x0a\xd0\x17\xc7\x78\x5e\xb6\x38\x54\xae\x1e\x59\x00\xef\x2b\x09\x01\x48\xb7\xf4\xc0\x53\x88\x31\x9e\x48\xc7\x15\xb1\x80\x06\x92\x5c\xce\xf4\x0c\x34\xe6\x7d\x98\xf6\x08\xbe\x48\x54\x92\x2b\x17\x77\x39\x23\x8b\xae\x52\xb7\xb5\xf3\xd0\xa3\xef\x79\x5a\xb2\x6f\x63\x2c\xeb\x35\x79\xa8\x91\x69\xa6\x6f\x8e\x82\x7a\x11\xe6\x04\x84\x9a\x29\xa1\x27\xef\x5f\x0b\x67\x56\x15\x20\xb3\x96\x44\x47\x14\x01\xad\xcb\x46\x0a\x0c\x77\x4a\x51\xbf\x29\xad\xed\x5f\x64\xdc\x89\xfd\xc5\xc5\xfe\x42\x2e\xe7\xb3\x24\x49\x3f\x2f\xd2\x35\xa1\xc3\x2a\x49\x5c\x73\x26\xcf\x66\xb3\xcb\x63\x92\x7c\xce\xdd\xe9\x4e\x6b\xc0\x21\xfd\x4f\xc6\xf2\xc5\x99\x05\x16\x79\x18\xb8\x05\x52\xc4\xe8\xbb\x08\x31\x94\xb5\x42\xc9\x89\x90\xc1\xf9\xfe\x02\x6a\xaa\x9e\xfe\x2a\x69\x2b\x3d\xce\x9c\x9e\xc0\x94\x0c\xbe\x3a\xd7\xb3\x5f\xf5\xf7\xac\x25\xb2\x5a\x93\xec\x3c\x28\x83\x9f\x0d\xb9\xb1\xa5\x05\xba\x1b\xcb\xaa\x49\x4b\x96\x9b\x89\x6f\xe7\xe3\xa0\x80\xa7\x6c\xbb\xa3\x2d\xd2\x23\x26\x09\x27\x32\xad\xd9\xf1\x6a\x32\x5f\xac\x97\xc7\x55\x66\x9c\x0d\x25\x95\x84\x64\x69\x6d\x52\x87\xf4\x1a\x3e\x04\xbd\x08\xf5\x8e\x7b\xbf\xf0\x65\x20\x1b\xa6\x5d\x73\x79\xa9\xc3\x48\xc5\x46\x92\xaf\xd5\x08\x0c\xb0\x6b\x16\x96\x42\x25\x33\x27\xee\x10\x4c\x67\xe9\x91\x4d\xe6\xde\x41\xc0\x6c\x08\xce\x69\xc2\xe2\x37\xfc\x24\xe4\xe6\x85\x4a\x25\x19\x84\x6e\x14\x50\x89\xa6\xc9\xe1\x3a\x53\x6d\x16\x7f\xe3\x69\x4e\x6b\xba\xb5\x7e\x78\x5b\x74\xc2\xcb\xb6\xee\x32\x6b\x37\x28\x57\xc0\xc6\xd6\x6e\xc7\x53\x74\xbc\xa3\x33\xd0\xdb\xe7\xd4\x85\x00\x54\x04\xf9\x53\x45\x6f\x6c\xd1\x1b\x53\xf4\xc6\xc0\x1e\x33\x93\x40\x92\x41\xb1\xd0\x37\xa0\xa3\x1e\x1d\x0b\x97\x46\x3f\xd1\xb1\xdf\xf0\x74\x6d\xef\xa9\xcb\x7a\x45\xe8\x91\xd0\x07\x9c\x3c\xd9\x70\x4e\x85\x2c\x6e\x8a\x2a\x1b\x7d\x0a\x13\x6c\x74\x22\x24\x5b\x07\xf8\x07\x7a\x40\xad\x37\x66\x6b\x33\x8b\xe6\x84\x2f\xca\xde\xa0\x8f\xee\x76\x6c\xc3\x8e\xe3\x39\xd1\x47\xc3\xa3\xc5\xdb\x09\x48\xb2\x1f\x75\x96\x47\x5a\xd3\xa3\x20\x59\x7a\x64\x33\x6c\x8f\xf1\x44\x5d\xd6\x2b\x9d\xd5\x51\xf8\x2f\x0c\x6a\x39\x52\xe0\x1e\x98\xf8\x43\xf2\x9f\x7d\x68\x9e\x78\x9b\x2a\xbb\x63\x8e\xc7\x7b\xba\x0e\x66\x14\xce\x3b\x3d\xba\x68\x75\xeb\xbc\x7a\xd7\x74\x47\xfc\x0d\xdb\x9f\x74\x1e\xfb\x03\x2f\x31\x98\x7a\x47\x15\x48\x09\x3b\xa6\x82\x2c\x1f\xfc\x5b\x1b\x68\xd8\x3a\x32\x11\x05\xa9\xe9\x55\xa1\xef\xb6\x81\x7c\x45\xe5\x74\xbd\xa3\x82\xd0\xad\x8b\x56\x61\xb4\x32\xd1\x1b\x8f\xf0\xb0\xa6\x5b\x42\x83\x77\x5a\xf8\xbd\x8f\xd8\x12\xf4\x54\xb5\xfe\x00\xb7\x3e\x86\xc3\x55\x00\xd0\x4b\x83\x17\xb9\x38\x3d\xb9\xd8\x5f\xb2\xdb\x8b\xbd\xbd\xb9\xdc\x33\xa8\xd4\xde\xd4\xe7\x9a\xed\x44\x7a\x4f\x37\x54\x90\xc1\x86\xb1\xc3\xc2\xa8\x04\xfd\x4a\xd9\xd3\x6b\xc0\xe6\xd0\xff\x12\x92\xdd\xdb\x69\x78\xad\x37\xc8\xb3\x69\x21\xd7\x03\x15\x04\xa0\x50\xdc\x83\x43\xfc\x05\xee\x12\x76\x92\xda\x9d\xad\x67\xae\x16\xb8\x3e\x5a\xd3\x92\xba\x09\x7b\xf2\xef\x6c\xee\xbd\x45\x05\x2a\xa7\x1b\x56\xd3\x0f\xec\xc6\x2e\xd8\x3b\x06\x8f\x8f\x76\xdd\x0c\x59\x65\xdc\x9f\xfc\x8e\x84\x96\xdb\xd1\x86\xa4\x8c\x6c\xf7\x2a\xd8\x46\x54\x67\x1b\x51\xd1\x36\x72\xe0\xe9\x2b\x5b\xea\x07\x72\x35\x5b\xa4\x77\xec\x15\xba\x96\x7f\x60\xf7\x3c\xbd\xb1\x22\x85\x4d\xa5\xf7\x66\x9d\xc4\x7e\xc3\x6e\x75\x22\x90\x2c\x5e\x19\xe7\xef\x53\x5a\xb0\x76\x5f\x11\xb2\x3c\x3a\x7f\x72\xa8\xca\x07\x42\xef\x7c\xdf\x16\xba\xff\x8e\xf0\xbe\xb4\xb6\x24\x05\x3f\xa6\xfa\xea\x70\x91\xae\x8d\x3d\xd9\x76\xaa\x44\xd3\xe0\xaf\xcb\x2d\xbe\x6a\x26\x49\x70\x48\x7f\xdb\xa6\xd9\xd8\x33\x56\x24\xc9\xad\xe1\x65\x9b\x3f\x9f\x05\x5d\xbe\xf1\x57\x99\x4b\x60\xd0\x5c\x4c\x9e\xcd\x32\x17\x76\x65\x89\x34\x17\xcf\x66\xd9\x6c\xb0\xf9\x33\x05\xa5\xa2\xe7\xc1\x68\xcc\x36\x54\xd7\x00\xaa\x00\x50\xc4\x6e\xef\xb8\xd6\xeb\x9c\xf7\x09\xcd\x5a\x42\xda\xb3\xf9\xd3\x19\x85\x63\x16\x94\x97\x21\xb4\x7f\x57\x7a\xd2\x57\xca\x11\xbd\xe9\x8b\xd2\xc7\xff\x07\x42\xf3\xe9\xae\xa8\x95\x90\xf7\xb0\x28\xdf\xf1\xf2\x0d\xcc\x56\xe6\x6e\x6c\x37\x6d\xd9\x8e\x93\x07\x10\xfb\x17\xb7\x5a\x88\xbf\x4e\x39\xb4\xe1\x03\x26\xbb\xf6\xb2\x4a\x5c\xf5\x0f\xb4\x2b\x81\xb8\xda\xf5\x0b\x27\x1f\x9c\x10\x52\xd1\x35\x39\xe9\x7b\x08\xad\x48\xf6\x93\x2e\x1c\x40\x7e\x4d\xaf\x26\xc9\xe7\x40\x07\x60\xa8\x7d\xf5\x5d\xe4\x59\x56\x83\xa5\x15\xd6\x44\xb7\xec\xbb\x62\xb3\x29\xf9\x17\xe2\xae\xf2\x72\x2b\xf8\x6d\x7d\x6e\x21\xc8\xaa\x47\x40\x80\x7b\x84\x38\xda\x29\xf4\xb3\xec\x6e\xf1\x0f\xbc\x2e\xb5\xd0\x3f\x8c\xf0\xc6\xcb\xfc\xbe\xa8\x6e\x3e\x2f\x8f\xf2\xd5\x2d\xaf\x80\xc9\xe8\x2c\xdc\xe5\x99\x6f\xd0\xf8\xf2\x5c\x7e\x73\xfa\x56\x02\x94\x2d\x5e\xeb\x4e\xad\x47\xa6\x75\xa0\x49\xb0\x70\xa6\x85\xbf\xcf\x53\x7f\xb7\xff\xa5\x7d\x85\x1f\xce\x4f\xe0\xcc\x84\xdb\xf8\xb6\x14\x42\x06\xfe\xc2\x37\x47\xa5\xb8\xac\xcf\x1d\x8e\x96\xeb\xd6\x61\x62\x54\x30\x66\xca\x7a\xb4\x7a\x39\x52\x0b\x78\x7f\x44\xa1\x57\x6c\x53\x71\x65\xed\x36\x9a\x66\x58\x09\xb0\x16\xb1\x7a\x8d\x1f\x21\x63\x31\x41\xef\xd4\x49\x1e\x68\x56\x9d\x0a\xf1\xc8\x66\x17\xc7\x4b\x7f\x3a\xda\xfa\xbb\x87\xe3\xa3\x05\xa6\xcd\x5d\x5c\x00\x5d\x75\x04\x9d\x72\x99\x24\xe5\xe3\x2d\xbe\xb2\xbc\xeb\x6b\xf6\x3e\x78\xcd\xda\xb2\x4e\xc9\x3a\x4b\xcb\xca\x5c\xc0\xbb\x02\xa7\x6b\xba\xa5\x8a\x50\x68\x4f\x38\x8a\x5b\x19\xbd\xe6\x9a\x41\x1d\x61\x4e\x2f\xcb\x62\xfd\xdb\x48\xcb\xad\xb0\x7a\x37\x32\x14\x4b\x76\x2d\x45\x05\x80\x54\x48\xbd\x95\x0c\x8d\x86\x22\x49\x86\xb5\xf4\xe6\x83\xa0\x08\x80\x89\x4e\x45\x92\xa4\x1b\x19\x2c\x1e\x63\xaf\x81\x0a\x02\x10\x94\x2d\xde\xf9\x7b\x99\x57\xf5\x16\x98\x47\x4b\x0e\x85\x00\xa1\x55\x74\x99\x25\xa8\xfb\xa9\xdc\xab\xbc\xd1\x2c\x7c\x59\x94\x5c\xa7\xd2\xcb\x3a\x08\x0a\xbc\xb0\xed\x27\x34\x67\x2f\xa4\xcc\xef\x01\x12\x1e\x54\xc2\xc1\x45\xa5\x32\xd8\x89\xae\x9f\xf3\xb2\x14\x77\xfa\x2e\xa4\x73\x7b\x7f\x7f\xe0\x75\xd3\x4c\xe6\x43\x76\x2d\xd2\xc7\x12\x51\xc4\xfb\xf7\x4f\x0b\xfc\xee\x89\xaf\xe2\x40\x4c\x45\x55\x8a\x7c\xa3\x37\x3f\xd5\x43\xe5\x29\xa6\x92\xd7\xc7\x12\xce\xed\xa7\xcb\x5f\x3f\xce\x66\x93\x5f\x3f\xce\xfe\xe3\xd7\x8f\x33\x3e\xf9\xf5\xe3\x7c\xbb\x7a\x78\x76\xb2\xc8\xe4\x60\x84\xca\x46\x23\x42\xf3\x65\xb5\x62\x9c\x8e\xc7\x35\xb3\x13\xe8\x68\x80\x40\x24\x7b\x6d\xf7\x2b\x49\xa8\x12\x99\xb4\x2c\x05\x2d\x24\xbd\x1c\x31\xdd\x54\x1f\x58\x1e\x21\x4e\x54\x46\xcc\xfb\xd3\xe0\xb5\x85\xab\x3a\x12\xfa\x53\x04\xca\xf8\x52\xa6\x47\x0b\xed\x2e\x00\x1b\xf5\x45\x6d\x34\x38\xa7\x13\x2d\xd9\xec\xa2\xbc\x2c\x2e\xc6\xe3\x92\x1c\xd3\x6a\x59\xae\x68\xe9\xe9\x17\x54\xcf\xb5\x15\x2c\x23\xdb\xe4\x44\x92\x5c\x79\x45\x7c\xdf\x57\x7a\x06\x02\x6a\xd6\x99\xfd\xb2\x6d\x6d\x19\x6d\xd5\xa0\xb7\x2c\xb6\x69\xde\x9e\x9f\x37\x96\x12\xe1\x3d\x80\x00\x92\xf3\x75\x1e\xa6\xb7\x0b\x6e\x2e\x8f\x19\xb7\x9a\x1b\xc4\x6f\x5c\x03\xed\x67\x1d\x71\x56\xe8\x01\xff\x2a\xea\x47\x2d\x33\xae\x61\x1a\x63\x9f\xad\xfd\x66\x53\x12\x87\x16\x36\x1a\xd1\xf5\xb2\xb4\x50\x3a\xf8\xb7\xa1\x21\x95\xf9\x0d\x10\xc1\x76\x08\x24\x72\x3a\xca\x41\x89\x39\xb2\x1c\x06\xa1\x35\x6f\xdc\x1f\x66\x5b\xe7\xe4\xe1\x14\x6e\x29\x87\xd6\x73\x96\x2e\xcc\x1a\x77\xa5\x7f\x64\xff\xd3\xf7\x59\x68\x35\xe4\x43\x0d\x20\xbe\x2b\x76\x6f\x76\xb2\xb3\x96\x72\x8a\x5c\x3e\x43\x60\x8a\x30\x98\x29\x2a\x9b\xe6\x2f\x29\xa7\x60\xeb\xaf\x4e\x61\x69\x5d\x59\x6b\xc8\x54\xd4\x8a\x1e\xfb\x4e\xd5\xcd\xa1\x6b\x26\xaa\xc0\x68\xf7\x2f\xb0\x19\x6a\x59\x07\x14\xa7\x01\x3b\x90\x7b\x25\x4d\xe5\x42\xb1\x8e\xe1\x60\x76\xde\x80\x4f\x37\x93\x00\xe6\x90\xb7\xe0\x3e\xdf\x24\xb4\x01\xed\x89\x0e\x1e\x52\xa0\x3d\x51\x21\x4c\xd1\x7f\xc6\x80\x22\x3d\x46\x9f\x7f\xd0\x55\x98\xcf\x1f\xf5\x15\x58\x98\x6a\xd1\x16\x2e\x6e\x92\xcd\xe8\x35\x8e\xfc\x40\x2c\xae\x25\x9b\x4c\x9f\x7f\x96\x49\xfd\xd7\xfc\x79\x56\x62\xc8\xff\xca\xb6\x49\x92\xea\x3f\xe7\x4f\x3f\xc3\x93\xe5\x46\x76\x6d\x5e\x18\x47\xe3\xe3\x2f\x78\xa9\xf2\x9f\x81\xec\xd7\xff\xfe\x25\xf4\x82\x07\xb3\x0f\x2d\x22\xa9\xbc\x28\xf5\x5f\xf9\xc7\x02\xd0\x7e\xbe\x7e\xf3\xc3\x37\x7f\x7f\xf3\xfd\xfb\x17\xaf\x3f\xbc\xf8\xf9\x9b\x77\xd6\x36\x04\xd2\x05\x86\x21\x7d\x9f\xfe\xf8\xea\x87\xf7\xdf\xbc\x34\x1f\x2e\xa4\xfb\x2c\x8b\xcd\x49\x7c\x8d\x08\x7d\xf8\x98\x29\x7a\x9f\xc9\x53\x00\x71\xf4\x41\x7a\xef\xfb\x8a\xdd\xc0\xf1\xab\x4f\xb5\x8f\xe0\x40\x7e\x1f\x3e\x98\xa2\x76\xcb\xea\xe6\x4a\x67\x24\x0a\x43\x7c\x75\x8c\x8c\x7f\xb7\x2e\x16\xdf\xc8\x5c\xb4\x77\x99\x2d\x92\xa4\x04\x3d\xe6\x16\x5f\x2a\x93\xe4\x36\x49\x6a\xc2\x33\x8f\xdf\xa9\xa6\x2a\x97\x37\x5c\xd1\x1d\x43\xc1\xe9\x62\x33\x64\xc7\x8b\x0d\xdb\x84\xef\x60\x36\xfd\x81\xcd\x2e\x0e\x97\x3b\xbb\x93\x1d\xf0\xc1\x78\xb7\x3c\x20\xf2\x2b\x63\x9b\x70\x53\x59\x1f\xa5\xce\xe1\x27\xdd\x3f\xef\xa1\x14\xb6\x41\xf9\xf9\x09\x3f\x61\xf5\x80\xf9\x72\x8d\x76\xe9\x43\x76\xed\x20\x3d\x74\x9d\x93\x64\xef\x4d\x81\x63\x33\xe9\xc0\xec\x76\x2c\x3e\xbd\x96\x34\xee\x8a\x49\xdc\x15\xfa\xfc\xbb\xfd\xa3\xac\xc0\xa9\xa4\x08\xf3\xc2\x65\x17\x75\x3a\x38\x98\x18\x8e\xaa\x2d\x31\x32\x2d\x42\xc1\xe6\x91\xd1\x3c\xba\x34\x62\x9f\xbb\xb6\xc1\x0c\xd8\x33\xa8\xf0\x7d\xc7\xf2\xf8\x9a\xdd\x8f\xf3\xde\xc7\xd4\xc1\xfe\x72\xb6\xb8\x0f\xed\xc5\xef\xc7\xfb\xc9\xf3\x19\xc9\xae\x43\x25\x4b\xe0\xf1\x7a\x3d\xde\x8f\x9f\xcf\x08\x75\x5b\xe6\xbd\x45\x5b\xb8\x3e\x91\xd3\xbd\xbc\x7c\x36\x73\x56\x4c\x51\xc5\x17\xad\x76\x84\xbd\x43\xf3\xc8\x13\x20\x18\x03\x1b\xf3\xc5\xcf\xac\x70\x7f\xff\xc2\xc4\xb9\xcb\x8e\xb3\xcf\x88\x0a\xb3\x32\x54\x58\xe6\x24\x4a\x41\x55\x58\x6a\x14\xf7\x0b\x95\x7a\x07\x70\x85\x27\x89\x7a\xea\x7e\x34\x0d\xf7\x51\x3f\x27\x09\x77\x51\x3f\x0f\xe2\xf6\xe6\x1d\x67\x07\x00\x98\xb8\x96\x2c\xbd\x96\x9f\xde\xcb\xb1\x24\x4f\xd3\x7b\x39\x9e\x13\x3a\x1e\xdf\x4b\x2d\x25\x01\x79\x17\xc9\x52\x97\xe5\x38\xec\x84\x31\x13\x24\xbc\xec\xdf\xc9\x10\xc8\xa6\x06\xcc\xc5\x11\x63\x5a\xe6\x14\xdb\x27\x20\x78\x28\xb6\xae\x96\x6a\x15\xdc\x9e\xda\x64\xaa\x21\x8c\xa8\x7d\x19\x6b\x2b\x82\x69\xc1\x86\x73\x10\x84\xda\x8f\x4a\xee\x3e\x59\x1f\x0f\x07\xc9\xeb\xfa\xd5\xa6\x50\x35\x40\x67\xc4\xa7\x3f\x3e\x47\x0e\xe7\x7a\xbb\xd2\x02\xd9\x90\xe5\xc2\x19\x34\xb6\x93\x55\xf4\x4c\xb6\x73\x6f\xb4\xf7\x06\x7b\x05\xee\xae\x6f\x8b\x8f\xbc\xac\x7b\xb6\xfc\x1b\x19\x18\x2d\xaa\xe9\xc7\x4f\xd9\xb5\xa4\x6a\x7a\x8f\xff\x22\xc8\xdc\x2b\x09\x82\xf9\x5a\xf8\x5d\xf6\x5d\xcf\xa3\x79\x48\x8c\x0b\xfb\x21\xf4\xfa\xa1\x4a\xdd\xd5\x74\x64\x20\x4b\x47\x83\x57\x40\xe4\x95\x3e\x9f\xd1\xbe\x6b\x39\xe6\x81\xea\x9d\x56\x98\x81\xd8\xea\xa5\xbb\x05\x4d\x89\x62\xc5\x78\xf4\x64\x34\x56\xc6\x5c\xba\xfd\x08\xda\x76\x7c\x76\xb9\x7f\x97\xf7\xba\x40\xef\x50\x58\x88\x92\x2d\xab\x95\xbe\x42\x22\x76\x39\x71\x1d\xee\x8c\x53\xed\x85\x87\x7f\x54\x32\xff\x96\xdf\xd7\x49\x62\xb2\xe9\xc4\x50\xe4\xbf\x6a\x45\x63\x39\x10\x87\x4a\x9a\xca\x8e\xd1\x68\x7f\x2c\x55\x31\x62\x4c\x74\xfb\x46\x11\xea\x7a\x18\x12\xfc\x5d\xdf\x75\x47\xbf\x71\xe3\x55\xbd\x19\x51\xec\x04\x9f\x6c\xa8\x93\x99\x3c\x87\x4c\x34\x4d\xfa\x79\x91\x4a\x42\x0b\x3d\x03\x09\xd5\x67\x86\x48\x92\xa7\xbf\xfe\xcf\x4f\xcc\x3d\x4a\x91\x85\x49\x32\x9c\x91\x6c\x38\x14\x01\xae\x9a\x0c\x71\x6f\xf6\xba\x45\x43\x07\xe6\x3b\x1c\x22\x7b\x93\x7f\x36\x1a\xc6\xb5\x5f\xc0\x94\x1a\xbd\xd3\xf1\x93\xd1\x58\xd2\xf0\xc2\xe7\xaf\xe3\x77\x56\xd3\xaf\x07\xbb\x69\xde\xa1\x95\x60\x2b\x6d\xef\x62\x5f\x3c\xfd\xaf\x1b\xb1\x7c\x31\xf9\xfb\xca\x35\x25\x53\xd3\xbd\xd0\x1f\x91\x28\x77\x9d\x75\xd6\x9f\x73\x27\x1d\x8a\x61\x1f\x8d\x04\xe6\xb1\xd4\x7a\x54\x01\xaa\xfb\xf6\x60\xf5\x02\x48\x90\x7b\x39\x9f\x27\xc9\xb3\xff\xa5\x85\x21\x83\x35\x0b\x63\x8c\x65\x02\xfc\x76\xe4\x2d\x68\xd2\x0c\x54\x6b\x6f\x98\xff\x3b\xe0\x6b\x79\xc3\x06\xb3\x65\xbd\x31\xb6\x06\xeb\x24\x49\x75\x85\x17\x12\xe1\x0e\xaa\xa6\xf9\x8f\xff\x18\xea\x4f\xfe\x2a\x9a\x06\xaf\x62\xf6\x45\xcf\xdf\xc5\x9a\xa6\xe7\x6e\x14\x93\xeb\x11\x3a\xc7\x7c\x9e\xfe\x7a\x1d\x92\x0e\x4b\x51\xd7\xbb\xbc\x90\xbf\x5a\x9a\x30\x15\x5d\x79\xbe\x28\x6e\xa7\x8e\xae\x98\x34\xcd\x23\xbe\xe8\x5d\x3a\x44\xe8\x67\x5d\x6c\xd0\x67\xf6\x26\xd9\x34\xe9\x6b\xdd\xbf\xa3\xbe\xca\x8c\x5a\x5a\xdb\xdf\xf8\xfd\xf1\x30\xd2\x8b\xa3\xab\xcc\x15\xb7\x5c\x8e\x80\xb3\xfc\xcb\xc7\xf2\xfb\xaa\x3f\xbf\xae\xfa\xd5\xe6\x77\x8a\x5d\xf4\xdf\x63\x63\xfe\x3d\x9e\x00\x08\x21\x6c\xae\xf4\xfe\x90\x50\x68\x43\x4e\x43\xef\xe8\xdf\x7a\x66\xdd\x30\x6d\x69\x9c\x9a\xc6\x99\xcb\xb8\xd1\x85\xd5\x68\x3b\xed\x56\xf7\xa0\x99\x00\xc4\x2e\x67\x57\x23\x50\x43\x59\x00\x64\x78\x63\x03\x34\xce\x8f\x4e\x98\x34\x6b\x01\xf5\x09\xa8\xc5\xd5\xd5\x58\xeb\xe2\xee\x76\xc5\x7a\xa7\x4f\x5d\xf3\xe7\xe5\x7c\x46\x9a\x66\x68\x66\x26\x49\xdb\x9b\xb5\xc9\x12\xb7\x86\xff\x39\x1a\xcb\xf1\xe8\x7f\x8e\xfe\xcc\xce\x70\x22\xa0\x36\x3b\x8f\xec\x0c\xb3\x9f\xc0\xac\x8e\xcf\x12\x8f\x31\x1d\x3b\x79\x7c\x27\x1f\x55\x36\xff\x81\xe2\x98\xd0\x08\xe9\xb9\x87\x0c\x27\xed\xd0\xd5\xa7\xa0\xaa\x1c\xc1\xef\x11\xe5\xde\xac\xc3\xa4\x60\xc3\x19\xfd\x32\x04\xcb\x34\xd2\x6c\x34\x3f\x4d\xda\x91\x33\x7d\xd7\xc3\x70\x96\x03\x9e\x79\x73\x9a\x08\xb0\x32\x26\x2e\xae\xa3\x77\x99\xf8\x00\xef\xfb\x02\x86\x84\x3e\x9b\x11\xd2\x73\x72\x07\x3c\x3c\x29\xb1\x07\x4f\x00\x9a\xf7\x78\xb7\x43\x2d\xdb\x04\x38\xd8\x6f\xd7\xe5\x51\xf6\x77\xdb\x9c\xbe\xfe\xd3\xdd\x46\x90\x3f\xd9\x52\xe4\x04\x9f\x5d\x97\x45\xf5\x1b\x97\x67\x9f\x35\xba\xe3\xd9\x23\xeb\x9d\xf0\x85\x2c\x68\xf0\x3f\xcc\x29\x5a\x07\x0f\x00\x54\x45\xdb\xa2\xd7\x4e\x0f\x51\x3b\x6f\x95\xd3\x7e\x20\x47\x24\x49\x5a\x9a\xeb\x20\x92\xea\x92\x21\x1f\xd8\x0c\x20\x95\x21\x28\xde\xc3\xc7\xe1\x24\xb1\xcb\x22\xc8\x20\x35\xf8\x5e\x2f\x25\x7b\x63\x2c\x5b\x5f\x55\x1b\xd6\xcb\xa2\xa1\xbf\x59\xec\x78\xca\x3d\x8e\xc5\x38\x02\x4b\x98\xcc\xe9\xad\x1e\x8e\xd0\x10\x71\x9c\xce\x81\x0b\xd6\xa7\x5a\x70\x0b\xa1\x96\x69\xf9\x9f\x4f\x95\x08\x2e\xfd\x3f\x78\x3b\x6e\x80\x80\x46\x96\xbd\xc0\x9a\x9a\x0f\x7c\x94\x12\x21\x36\xf4\x4b\x99\x2a\x7f\xa6\x42\xf5\x22\xb0\xb2\x09\xb8\x14\x42\xc4\x44\xf9\x36\x90\xc9\xdc\xec\x84\x9e\xf5\xc8\xe0\x38\xdb\xe4\xfa\xce\x37\x66\x90\xff\x74\xbd\x03\xf7\xc2\xe9\x7a\x47\x2c\xd8\x5a\x80\xf1\xd6\xb1\x95\x5d\xae\xa8\x93\x4f\x79\xd9\x02\xc5\x8e\xf0\x79\x7c\xf4\xb2\x5a\x0d\x64\xf4\x92\xfe\x83\x4c\x0b\x87\x48\x4d\x28\xfc\x04\x6d\xa7\xbe\xa3\x5b\x69\xf5\x1b\x5d\x1b\xde\x32\xf2\x09\x60\xc4\x64\x6b\x2f\xf6\xcd\xd4\xff\x2e\xbc\xd5\x0c\xc7\x46\xae\x77\x63\xa9\x9b\x99\x79\xeb\x99\x94\xdb\xee\x43\x63\x05\x9d\x32\x28\xe2\x7b\x19\xc3\x06\x3e\xac\xf3\x6a\xcd\x4b\x04\x73\x02\xb5\x3c\xf6\x3b\x55\x22\xd3\x9d\x18\x12\x07\x5b\x4d\xbb\x9a\xe2\x1f\x14\xbf\xed\xb2\x30\x98\x2c\xd9\x70\x76\x3a\x39\x1f\x2d\xf0\x84\x30\xd8\x27\xfe\x44\xb1\x46\x58\xca\x1e\xbe\xba\x70\xc0\x70\xa4\xe0\xf7\x6d\x83\x95\xc0\x40\x49\xe0\xa5\x33\x0d\xdc\xb6\x8c\x36\x7d\x36\xc4\x3b\x0c\xc4\x60\x05\x59\xa1\xd7\xbc\xd9\xa1\x80\xd0\x17\x1d\x3d\x46\xf0\xfa\xaa\xbb\x66\x0f\xfe\x8d\x00\x4f\xd0\x4e\x01\xd4\xd0\x84\x56\xae\x39\x0b\x7d\x98\x65\xf8\x76\x51\xb9\x4e\xaa\x5c\x27\x55\x51\x27\x55\xa6\x0e\xc1\xa9\xf6\x3a\xbc\x20\x03\x5a\xc2\x03\x72\xc5\x59\x10\x24\xbb\x4c\xbe\x45\xde\x30\xfa\x5a\x12\xf3\xc5\xc0\x7c\xd1\x77\x0f\x35\x5f\x9d\x40\xfe\xc0\x2d\x2a\x6a\x0a\xca\x1e\xfb\x24\xd1\x71\xdd\x96\x12\xd4\xd6\x7e\xef\x4e\x74\x67\x2f\xfb\x0a\x95\x58\x6d\x39\x01\x23\xad\x9f\x06\x9f\x16\x8a\x4b\x6b\x86\xe1\x4c\xb8\xd2\x36\x2f\xc1\x14\xf8\x82\x36\xef\x0e\x79\x55\x77\xb0\xad\x83\x38\xff\x94\xa0\xbc\x38\x14\xc4\x2f\xd5\x0a\x7f\xca\xc1\x50\xba\x23\xbd\x69\xaa\x24\x31\x6f\x60\x15\x95\xba\x49\xe8\xf4\xe6\xdd\x05\x25\xbe\xfb\x0c\xab\x5e\x07\x92\x82\x2d\x71\x64\x15\xbc\x44\x9d\x56\x54\xb0\xd9\x85\xb8\xac\x7c\x7d\xbc\x6b\x6f\xce\xaa\xa5\x58\xc1\x03\x2f\xc2\x52\x12\x8a\xaf\xb0\x45\xcf\xab\x6b\x61\x9e\x58\x87\x7a\x4b\x2c\xf5\x6c\xa9\xed\x86\x09\x1c\x2b\x86\xbc\x08\x7c\xd5\xaf\x66\xc4\x3e\xb2\x2e\x8f\x74\xbe\xa2\x5b\x16\xa6\x40\x37\xf7\x0d\xf3\x19\x29\x41\x2e\xd2\xad\xce\x69\x98\x4f\x8b\x6a\x5d\x1e\xeb\xe2\x96\x1b\x88\x86\xad\x3e\x97\xb0\xf1\xd8\xb6\xd2\xcd\x5a\xcc\xeb\x44\x68\xba\xb9\x6a\x7d\xfc\x03\x3a\x39\x0c\x37\xed\xaf\x6b\x98\xe9\x22\xd3\x45\x9f\x08\x2d\xe0\x89\x6e\x6d\xbd\x43\x0b\xba\x26\xf4\x38\x66\x9e\xb6\xf4\xe4\xb5\x23\xee\x94\xc0\x13\x01\x8c\xe5\x7b\x9e\x41\x27\xf3\x8b\xe2\x8a\xcd\x2e\x26\x93\x82\x7c\xa9\xe7\xa3\x59\x6c\xcb\x62\xe5\xd7\x9b\xfe\x61\x97\x5c\xb1\x58\x8e\x46\x2b\xcb\x6b\x6e\xac\x83\xbe\x34\xf7\x45\xbf\xf0\xbe\xf4\x27\xd6\x7c\x18\xc3\x63\x36\xcd\x68\x64\x83\x80\xf5\x06\x4d\xd2\xc2\xda\xda\x69\x68\x4e\x8e\xc1\x0f\x85\x51\xc7\xe8\xc5\xb4\x08\x38\x07\x8b\x4d\xf6\x7d\xfe\x3d\xa1\x9f\x5b\x7d\xcd\x7b\x94\x1f\xac\x1a\x6b\xb9\x1a\x7c\x28\x62\xfb\x13\xd8\xeb\xdd\xeb\x6d\x45\xb9\x35\x61\xd1\x33\xf8\x6f\x7a\x67\x32\xbf\xf5\x99\x52\x59\x40\x3c\x9b\xc6\x15\x05\x77\x00\x5b\xda\x29\xd2\xca\xfd\x1e\x6e\x3a\xb0\xd7\x34\xcd\xf0\xec\x56\x12\x39\xb6\xfa\xc2\x05\x1e\x7e\x34\x67\xa3\x63\xb5\x11\xfa\xa2\xbf\x28\xa6\x1b\x51\xf1\xac\x98\xea\x90\x8a\xd3\x3a\x8a\xc3\xc0\x0c\x13\x99\xd5\x91\x7b\x3a\xaf\x8a\xe5\xcb\xe3\x8a\xca\xc5\xb0\x32\x27\x6a\xd3\x54\x53\xa4\x34\x49\x91\xb6\x26\xb3\x31\xe4\xe2\x38\x1e\x93\x0b\x74\x7e\xb2\x79\x60\x4d\x0b\xb0\x87\x31\x66\x3e\x45\x8f\xd9\xcf\x85\x2e\x09\x69\xa8\x88\xc9\x0e\x5d\x9b\xbe\x29\xd2\x8a\xd6\x70\xc0\x0c\x5b\x05\x93\x80\x82\xec\xc9\x27\x40\x72\x41\x1f\x40\x30\xfd\x81\x6f\x04\xd8\xba\x0d\x04\xab\x4e\xb8\xbc\x97\xab\xc1\x37\x45\x2a\x74\x5e\x06\xb0\xf0\xc1\xb8\x1f\x65\x25\xbd\xe1\x95\xa1\x6f\xcd\x8a\xa9\xff\x01\xab\xc7\xff\x64\x55\xf0\xa3\x69\xc6\xe3\x62\xba\xcf\x3f\x7e\xe5\x82\x0c\x4a\xf2\x7f\x63\x6b\x87\xed\xed\xc8\x2a\xeb\x11\xe5\xd7\xd9\x11\xd7\xd9\xd1\x1a\xfe\xba\x24\x66\xb7\xda\xda\x23\x54\xd1\x75\x92\x0c\xe1\x74\xd8\x6a\x51\x36\xec\x9d\xd4\x8e\x06\x9b\x91\x41\x89\xad\xff\x87\x9e\xe1\x5b\x33\xe7\x37\xec\xb8\x80\x65\xb3\x25\xd9\xad\x48\x73\x32\xf8\x1c\x33\xda\xd0\xef\x2a\x4c\x47\x87\x47\xa4\xba\x35\x84\xb7\x2d\x1b\x42\xc3\x19\xe2\x96\xff\x4b\x99\x6e\xc9\xc9\x9a\xb4\xf6\xad\x28\xe4\x3c\x31\x2b\x6a\xf7\xc8\x8a\xda\x12\xba\x3b\xb3\xa2\xb6\xb8\xa2\x6c\x1d\x61\x45\x05\x6b\xea\x6f\x7e\x3f\x99\xd9\x67\x46\x74\xfd\x63\x0a\xc5\x3b\x66\xac\x71\x6f\x44\x1a\x8a\x8d\xf1\xb1\x18\x50\xc8\xa0\x2d\x23\x0f\x29\x49\xc6\x9e\xa8\xd2\x4a\xb2\xdc\x53\x98\x40\xac\xa1\x2b\x41\x5d\x6c\x5b\xac\x84\xed\x89\x00\x27\xba\x01\x78\xb3\x8e\x9b\xf0\xef\x44\x01\x48\x71\xe0\x3f\xe9\x89\x7d\x01\xae\xc4\xb9\x22\x56\x97\x16\xe7\x0e\xa4\x61\x65\xf2\xab\xec\x65\x67\x14\x6e\x37\x9f\xcb\x88\x7a\x00\x07\xf6\x11\x11\xe7\x73\x2b\xe2\x50\x34\x22\x76\x02\xfd\xa5\xa9\x27\xc1\xce\x8e\x2f\x31\xe7\xee\x09\x81\xef\x4f\x1a\x84\x5f\x85\x66\xba\xd6\x34\xc2\x23\xfd\xd9\x92\x9c\x0d\x59\xab\x2c\xd7\x63\x41\x49\x03\xa8\x56\x41\xa8\x32\xd6\x2c\x78\xeb\x42\x4c\x6d\xb0\x66\x01\x4b\x54\x53\xc9\x71\x41\xdd\x8d\x04\x0e\xae\xe5\xad\x85\x40\x26\xab\xb6\x58\x7d\x72\xd8\x23\xbe\xd2\x03\x97\xd5\x15\xe0\xae\x99\x42\xbd\xac\xbe\xe3\xa9\x00\x98\x81\x16\x00\xb7\x2d\xcf\x9d\x70\xdd\xe2\x08\x55\xc6\x06\x02\x28\x01\xe3\xa3\x9a\x22\xea\x82\x39\xfb\x70\x52\x75\x7c\x9d\x6e\x3d\x02\x79\xe8\x2f\x0d\x36\x78\x90\x55\x0e\x17\x35\x5a\xb3\xe1\x9c\x1e\x8d\x5b\xfa\x79\x70\xf6\x23\x7b\x51\xa4\xbf\x57\x29\xe2\x89\x5b\x7a\x51\x5a\xa1\xa4\x79\x34\xee\xe6\x7d\x42\x26\x63\x85\x85\x7c\x73\x88\xdf\x0c\x5c\x1f\x4e\x84\x90\x41\x15\x5b\xea\x84\xed\x04\x87\x23\x29\x52\x4e\x06\x3b\x5d\xac\x9e\x91\xbf\x81\x5a\xfe\x6c\x35\x5d\x7d\x44\xcf\x4d\x96\xf6\xa0\x7c\x7e\x03\xc0\x23\x57\xae\x8a\xaf\xed\x69\xe8\x42\x18\xa7\xad\x58\xa6\x7c\x48\x80\xa1\x50\xa3\x3e\x03\xd4\x43\x16\xf5\x24\xc6\xca\x04\x00\xa5\x01\xdc\x53\x2a\x55\x70\xe9\x9f\x53\x7d\x98\xed\x5c\xb4\x01\xf9\xb7\x99\x41\x88\x28\x5b\x4b\x20\xc5\x0e\x9f\x08\x7b\x19\x1f\xa8\xe9\xf6\x58\x96\x0b\x0e\x60\x0b\x18\x3c\x34\xd6\x8e\x4d\xd3\x15\xb1\x36\x0e\x51\x9f\xc0\x37\xa6\x5c\x3f\x90\x25\xc9\x54\x10\x3e\x32\x44\xa6\xe1\xb9\x67\x01\x68\x08\xdd\x46\x21\x88\x99\xb3\x6d\x9a\xb5\x75\x31\xc1\xa5\x01\xa2\x6a\x1e\x5d\x5f\xcd\x24\xcf\xdc\x74\xef\x2c\x85\xc1\xd6\xbe\xe3\xac\xdd\x45\x71\x43\xf4\x09\xe8\x3a\xd9\x63\xdf\x80\x92\xa9\x1d\x18\x5c\x38\x36\xe4\xf4\x98\xf6\x0f\xac\x92\x71\x13\x54\xb4\x22\xd9\xae\x30\x8f\x4f\xf4\x2b\xb8\xe8\xd2\x5a\x84\x1b\xeb\xd7\x32\xf4\x59\xd2\x02\x34\xdc\x6f\x24\xa1\x07\x0e\x57\x9e\xcb\x99\x33\xec\x1b\x54\x4c\x52\xc9\xc4\xa9\xef\x15\x16\x8c\x44\x02\xeb\x3a\xbd\xaa\x5f\x7b\x61\x5b\x82\x90\x6d\xfa\xcd\x76\x50\x71\x0a\x54\x08\x3f\xca\xc7\xbd\xa7\xbe\x88\x69\x12\x00\xfa\x5f\x5a\xf4\x91\xda\x02\x2f\x5b\xe3\x01\xdb\x85\xee\xed\x7b\xd1\x09\xc9\xfa\xac\xce\xe9\x91\xed\xc0\x94\xae\x64\x0f\xa7\x41\x31\x91\x57\x47\x80\xb7\x92\xe3\xa3\x9d\x38\xa1\xdd\xc0\xb8\x54\x29\x98\xab\xca\xcb\x9c\x6e\x58\x71\xb5\x9e\x00\xe8\xbd\xbc\xac\x49\x19\x58\x4f\x6d\x17\xb3\x4c\xba\x53\xa4\xb8\xaa\xed\x45\x6e\x17\xb8\x83\xd0\x74\xb3\x58\x67\x05\x99\x1c\xc9\x60\x37\x64\x7a\x0d\x86\x79\xec\x50\x61\x77\x78\xbc\xa9\xc0\xa4\xd5\x0d\xea\x36\x16\x0c\x14\xf6\x6c\xa3\x5b\xab\x0f\x23\xbb\x1d\x6d\x8b\x8f\x7c\xf3\x15\x1c\xc1\x0b\xe1\x4c\x7b\x03\xd4\xdf\x6c\x46\xe8\x2d\xab\x26\xea\x6a\xef\x68\x75\x41\xf6\x56\xe3\x3d\xa1\xea\x72\x3e\x5b\x94\xa1\x35\xd4\x2c\x53\x97\x87\x38\x28\x30\xcc\x50\x93\xf4\x76\x31\xcb\xe6\x33\x42\xb2\xea\x6a\x3f\x3e\x4c\x3e\x0b\xda\x8d\x30\x7b\x63\x9b\x64\xb2\x27\x34\xf0\x2a\xfe\xa7\xbb\x84\x38\x83\x26\x63\x68\xd4\x34\x9f\xe8\x4d\xc4\x20\xc7\xa9\x60\xa1\x05\xf9\x7a\x82\xc8\x6e\xff\xb5\x0c\xd3\xba\x69\xc8\x58\xd9\xec\x65\x27\x7b\x3d\x5c\xbd\xb9\xe3\x44\x8c\xcc\x58\xb2\x4e\x0a\x32\x0e\x39\x5f\x7e\x02\xed\x39\x34\x27\x64\xfa\x47\x73\xc1\x94\x50\xc9\x14\xad\x98\x7a\x8c\x94\x44\x4d\xd7\xbb\x85\x77\x6a\xd1\x3f\x27\x73\x92\xe9\xef\xe2\x50\xf0\x18\x6b\xd7\xe7\xad\xa8\x59\xb4\x88\x11\xeb\x2e\xf3\x05\xe2\xa3\x08\x9a\xb6\x7d\x07\x91\xd4\x22\xdf\x65\xc3\x59\xb0\xdb\x7c\x22\xbb\x48\xe9\x41\x31\x88\x95\xfe\xd0\x57\x01\xe7\x8a\x2f\x19\x72\xb3\x18\xad\x45\x65\x7f\x6a\xa1\xa2\x68\x41\x21\x22\x7f\x12\xad\xda\x50\x88\xc0\x9d\x04\x1c\x83\x07\x32\x51\x06\xbb\x2f\xf4\xb3\x02\xd3\x74\x6a\xc0\xf9\x23\x0f\x2c\x83\x89\x58\x39\x4c\x44\xd5\x03\xfd\xe7\xdc\x45\x61\x8d\x15\xc1\xc8\x06\x7d\xf1\x55\x0f\x22\x08\x7a\x88\x86\xc6\x72\xa3\x7c\xb3\x19\x11\x3a\xaa\xf7\xb9\x34\x74\x75\xa9\x98\xee\xc5\x86\x03\xec\x4d\xa5\x16\x05\xab\x11\xbb\x2c\x93\x6c\x74\x90\xfc\x76\xe4\x7d\x06\xda\xae\x6d\x35\x7b\xa5\x2f\x95\x8a\xd0\x23\xdb\x8a\x14\x55\x9d\x78\x29\xc9\xc9\xa0\xc6\xbb\xfb\x8b\xad\xe2\xba\x98\xf0\xa7\x31\xcf\xba\x35\xbc\xdd\xf8\xe1\x74\x0f\x96\xb2\x4f\xff\xeb\xd7\xfa\xd3\xa7\x64\x39\x43\x18\x99\xa6\x79\xfa\xeb\x3b\xf3\x48\x8c\xe9\x88\x79\xcd\x0f\x9a\x90\x96\x2c\x6a\x45\x5a\x50\x93\x27\xfa\x3d\xad\x9d\x9c\x69\xb3\x60\x2c\x17\x4d\x53\x5e\xc1\x53\x0b\x28\x1d\xac\xc6\x6d\x60\xdb\x7d\x3a\x19\xe2\xf5\x19\x95\x6c\x54\x09\x35\x1a\x60\x04\x63\x72\x51\x32\x75\x25\x50\x92\x5e\xa0\x03\x9f\xa0\x6a\x32\x27\x51\x17\x64\xb3\x0c\x3a\x1c\x3f\x38\x8e\x7d\x0f\x62\x35\xff\x56\x15\x2a\x1b\xd5\xc7\x6b\x25\x73\xf0\x27\x84\x64\x93\xfe\x64\x15\x40\x56\xf9\x43\x52\x02\xdf\xf8\x71\x2c\xf5\xe1\x12\xec\x80\xa5\xf5\xdb\x1a\x8d\xe8\x86\x19\x6a\xd5\x38\xc3\x9f\x0a\xb5\x7b\x9f\x5f\x7b\x0d\xe7\x2e\x74\x32\x29\x9f\xe6\xe4\x62\x77\x31\x99\xec\xc8\x66\xcc\x72\xba\x1d\xb3\xd1\xaf\x48\x73\xb8\xb9\x2c\x93\x24\xdd\x8e\xd9\x5e\xa4\xe5\x64\x43\x08\xdd\x0e\xd9\xda\x0a\xb1\x5f\xcb\x54\xd0\x2d\x38\xb7\x19\x9e\x6e\x45\x7d\xcf\x7b\x42\xe6\xce\x4c\xa0\xc3\x19\xdc\xf1\x76\x6c\x76\xb1\xbb\x14\x3d\x0f\x1c\x3b\xfb\xc0\x71\x60\x61\xf4\x72\x87\xb4\x9f\x11\x69\x66\x92\x1c\xec\x9d\xd3\xd9\x7c\x93\x87\x1f\xf5\xd5\x63\x47\xcd\x35\x76\xc3\x5a\xb5\xdb\x10\x62\x29\x16\x03\x40\xc0\x8e\x49\x93\xd2\xb7\x05\x6b\x77\xd3\x1e\x11\xb5\x10\x00\xa6\x41\xbf\x37\x0f\x03\x19\xd0\xf8\x38\xf8\xb3\x02\x75\xf3\x69\x95\x0a\x5a\x10\xab\x4f\xb0\x37\xd5\x02\x18\x8d\x82\x9d\xfa\xdb\xce\x1b\x90\x7b\x89\xb5\x17\xf5\x8a\x2d\x57\x14\x51\x5e\x1d\x88\x10\x80\xbd\xda\x6f\x04\x53\xa9\x5c\x16\x2b\x72\xe1\xfd\x3e\x0e\x3c\x15\x78\xa7\xb8\x15\x69\x45\xcc\xe3\xd7\x85\x83\x84\x43\x45\x94\x79\x1d\xcb\x31\xa5\x70\xaf\x67\x0f\xf8\x27\xc3\x08\xdb\x67\x46\xe9\x27\xc8\xe9\x97\xb6\x4f\x9e\xd7\xa2\x07\x0a\x54\x75\xc5\x66\x17\x6a\x32\x21\x5f\x4b\x23\x74\x8f\x46\xb4\x5a\x2a\xa3\x41\x85\xbf\x94\xa0\xa3\xf1\x86\x97\x5c\x69\xf1\x19\xce\xad\x53\xf8\x2c\xfa\xd7\x1e\x09\xcf\x1c\x3e\x80\x8f\xb2\xa3\x35\x93\x14\xf1\x4d\xa8\x88\xa8\x8e\xac\x31\x30\xad\x59\x5a\x2c\xca\x3c\x5b\xe7\x44\x5f\xd9\xa8\xb4\xd4\x4d\x38\x62\x35\xde\xc2\x41\x86\x15\x63\x49\xec\x25\xbc\x69\xaa\x2b\xc6\x1d\x90\x52\x5d\xfc\xce\x9b\x26\x15\xac\xa2\x43\x03\xa8\x42\x2b\x42\x02\x03\xc2\x9c\x15\x8b\x54\x5e\xce\x16\x55\x9e\x49\x5d\x16\xc9\xf4\xaf\x63\x78\x03\xc9\x66\xb8\xe1\xe4\xac\x1e\x38\x4c\x1a\xbd\xd3\xad\x77\xb9\x04\x67\xd3\x32\xe4\xcd\x5b\x8b\xf2\xb8\xaf\x4c\x38\x40\x16\xd8\x98\x3b\x21\x37\x86\x70\xf0\x46\x8a\xe3\x01\xd2\xd8\x61\x58\xe3\x8a\xdb\x32\x1f\x47\x37\x2c\x50\x6d\xdd\x70\xf5\x35\x2f\x0f\x5c\xa6\x8a\x42\x56\x40\x3b\x39\x22\x74\xc7\x86\xb3\x8b\xa1\x6e\x05\x69\x9a\x32\x1d\xee\xc8\xc5\x4e\x5f\xf0\xcc\xba\x3c\x46\x5c\x49\x39\x69\x9a\xd1\xaf\xd5\x88\xee\xd9\x0b\x91\x1e\xe8\x86\x2c\x46\x77\xa3\x6c\x9b\x24\x3a\x94\xb1\xc3\x62\x54\x8d\xb2\xe1\x56\x6f\xef\xb5\xd9\xde\x0f\x04\x17\xc8\xe8\x00\x9b\x8d\x8e\xdc\x35\xcd\xbe\x69\xd2\x3d\x1b\xe9\x1a\xac\x93\x64\x3d\x64\x7b\xf2\x60\xc5\xf5\x39\x2d\x53\xb7\x70\x8b\x6d\xba\x4f\x92\x74\xcd\xf6\x84\xca\xab\x59\x92\x0c\xa1\x92\x06\x9b\x57\x57\xf2\x96\xfd\xcc\x91\xda\x4a\xd0\x9c\x50\x45\xeb\xc0\x1c\xed\x09\x90\x07\xdf\x92\xa6\x49\x6f\xa7\xbb\x42\xbd\xb3\x74\x66\xb7\x01\x92\xe5\xb9\x43\x16\x66\x5c\x69\xc0\x8a\x1d\xe3\xa3\xa5\x0c\x0b\x6d\x84\x7b\x59\xb9\x0c\x7c\xf6\x7f\x1f\x33\x77\x60\x38\x17\xc7\xf2\xd3\xb4\x9e\xc0\x4c\x9b\x4f\x9f\x67\xd3\xe7\xe4\xd3\xe8\xa2\x83\x8e\xb7\x8e\xf7\x12\xef\x22\x57\xb3\x85\x43\xef\xfd\x2c\x43\xb8\xdc\xcf\x3c\xa5\x16\x7a\x43\xfd\x60\x68\xcf\x0c\xb1\x99\x25\x7c\xc3\xde\xc5\x3b\xca\x6c\x51\x5c\xb2\x59\x56\x5c\x31\x61\x51\xe0\x1f\x8e\x41\x57\xda\x71\x1a\xb3\xe7\x9f\x3a\xc4\xab\xe3\xe9\x4d\x48\xbe\xbc\x16\x55\xad\xe4\x71\xad\x84\xcc\xde\x18\xda\x9d\x60\x33\x69\xa1\xe1\x18\x2e\xf5\x3e\xbf\x1b\x5a\x73\xf5\x06\x4e\xbd\x16\xd5\xf4\xad\xe7\xfd\x36\xa7\x22\xad\x98\x5c\xf2\xd5\x40\xff\x0f\xce\x8f\x91\x16\x25\x46\x43\xa6\x17\x35\x04\x2a\xfa\x77\x39\xdd\xe5\xf5\x9b\xbb\xea\xad\x14\x07\x2e\xd5\x3d\xb8\x8f\x19\xf6\x78\xfa\x77\x9d\x0a\xd9\xe3\xe1\x72\x4c\x4e\xf4\xa6\xa7\xf8\x98\xe8\xd9\x94\xbe\xe4\x2b\x48\xfd\x85\x58\x9f\xa3\x84\xde\x88\xf5\x89\xe6\x9b\xcd\xb7\x60\x03\xda\xa6\xce\x06\x40\xd1\xc8\x16\x55\x2d\x46\x7a\x3b\x1e\x65\xa3\x63\x05\x76\x25\xa3\x55\x7a\x5b\x81\x15\x8d\x51\x2f\x74\x72\x0a\xf7\xe9\x6e\x8e\x6d\x56\x9b\xf1\x58\x02\x05\xeb\x52\xae\x98\xee\x25\xa0\x12\xaa\xf2\x3d\x67\x8c\x07\x4e\x65\xf0\xf2\x96\x4a\x3a\x27\x74\x38\x83\x16\xbc\xb9\xe5\xb2\xcc\xef\xb3\xbf\x86\x86\x31\xc1\xb0\xf0\xa9\x12\xbf\xf1\x6a\xc1\xb3\x37\x7a\x23\xfa\x4e\x6c\x0c\x8b\xb6\x1d\x2a\x34\x1d\x93\x48\x3c\xf0\x4e\xd7\x91\xa8\x9d\x14\x77\xa0\x9f\x7e\x25\xa5\x90\xe9\xc8\x14\x52\x3f\xd9\xe7\xf7\x4f\x2a\xa1\x9e\x5c\xf3\x27\xd0\x9c\xed\xb1\x9c\x8e\xc8\x20\x68\x9f\x30\x49\xcd\x9b\x88\x1e\xf7\x4c\x52\xfd\xcf\xbb\x03\x5f\x67\x9c\x8a\x43\xfe\xcf\x23\xcf\x14\x32\xa5\xe8\xbf\x4f\x16\xc3\x15\x32\xd0\x49\xbf\xe2\xd5\x78\x4c\xf5\x86\x09\xc8\xb7\x84\x98\x4e\xee\x6f\xec\x99\x9e\xb6\x35\xe9\xeb\x6a\xcb\x77\xae\x7b\xd9\xd6\x0d\x0e\x29\xe8\xfc\x8e\xfa\x84\x27\x49\xf5\xf8\x68\xf4\x36\x00\x5e\x92\x5c\x2b\x74\x33\x50\x5a\x04\xce\xac\xf6\x80\xe9\x5b\xb2\x2d\x78\x18\xe8\x6d\xac\x50\x34\x8c\x75\x39\xe6\x42\xbd\x08\xc7\x72\x0a\x12\xfc\x37\x78\xed\x30\xe2\x7c\x86\x12\x76\xa6\x16\x20\x38\x07\xc2\x31\xa1\x5f\x72\x67\xf8\x08\x7e\xb3\x5f\x49\x63\xee\x08\xb5\xf1\xf5\x75\xb6\xa8\x7f\xd4\xf1\x2d\x61\x4a\x32\x30\xe0\x79\x1c\xc8\x6f\x9b\x16\x8e\xde\xbe\xf0\x62\xe7\x95\x96\xc6\x6d\x85\x82\x70\xe3\xa7\x2b\x59\x18\x56\xb1\xb8\x7c\xf7\x1a\x92\x24\x3f\x99\xee\x37\x1e\x9d\x28\xd4\x14\x16\xfc\x21\x67\x05\x42\x3c\xd4\x01\x11\x8c\x55\x8f\x0e\x02\xe5\x29\x22\x1a\x7b\xcc\x0f\xa3\x1a\x4d\x73\x7d\x73\x9f\x65\x73\x42\xc6\xf3\xc0\x35\xbb\xbe\x38\x5e\x4a\xb0\x06\xb0\x4d\x38\x52\xee\xb4\xac\xdd\xae\x1a\xcc\x18\x60\x79\x02\xc8\xa0\x83\x89\xb3\xf2\x65\xb9\xac\x56\xa6\xc6\xd3\xf5\x4e\x1f\xc4\x3f\x06\x23\x57\x59\x11\x5c\x50\x48\x08\xc4\xfc\xa8\x45\xd4\x43\x78\xc3\xd5\x7b\xbd\x03\xbc\x50\x59\x9f\x75\xdb\x93\x9f\x2b\x37\xe8\xb8\xc9\xea\x16\xc2\x17\xf5\xe3\x1f\xec\x78\xca\x89\x31\x06\x75\xa5\xbc\xbf\x3f\xf0\xa8\x24\xf2\xc0\xc1\xdf\xd7\xcf\x33\x54\x92\x50\xc9\x54\x81\x19\xbd\x2a\x82\x68\x4b\xf5\x5b\xb1\x19\x2d\x58\x2a\x3d\x00\xe5\xd3\x67\x20\x1b\x20\x9f\xac\xee\x2f\xa2\x98\x5c\x3e\x5b\xa1\x98\x16\x9e\xad\x39\xab\xc6\xc5\xd5\x15\x70\x97\xa6\xf9\x42\x2e\x9f\x7d\x9a\x4f\xe6\xab\x6c\x46\xae\x98\x20\x05\xcb\x9d\x77\xef\x30\x85\xc8\xf1\x7c\x75\x29\x08\x79\x80\x0c\x3f\xcd\xc7\xcf\x56\xe6\x64\xad\x58\x3e\x9e\xe3\xc3\x4c\xad\x17\x1b\x42\xd9\xbe\xd9\x02\x24\xa1\xd9\x60\x9e\x8c\x48\x36\x99\x5b\x99\xa7\xbe\x9c\x2d\x54\x36\x63\xac\x46\xd1\x4b\x39\x50\x95\x7a\x32\xc7\x8e\xd2\x7b\x70\xab\x8f\x5a\x6b\x48\x6f\x21\xde\x5f\x04\xa4\x17\xfd\xd1\xe2\x8d\xff\x3b\x35\xc8\xda\x7e\x78\x53\x4e\x70\x07\x22\xf0\x7d\xa6\xa0\x30\x94\x3c\xfb\x47\xd2\x66\x80\x69\x90\xbb\x78\x39\x5b\x05\xdf\xb5\xa7\x80\xb5\x9c\x03\x91\xa5\xae\xda\x27\xb8\x73\x42\x79\x22\x8d\xed\x43\xad\x2f\x1e\xb4\x60\xb6\x28\x6c\xbb\xb1\x57\xee\xec\xb3\xc5\x52\xad\x48\xb5\xd4\xff\xac\x92\xc4\x1a\xda\xe1\x6f\x2f\x8e\x43\x2a\x7f\x1f\x9b\x5d\x88\x4b\x1d\x64\x77\x18\x61\x77\x98\x9c\xe1\xa7\x4b\xb1\x5a\x0d\x72\x97\x5f\x6e\x51\x97\xa7\x3b\x68\x23\x22\x60\x56\xcb\xf0\xf7\x6a\xe1\x0b\x0f\x83\x49\xa6\x03\xf4\x49\x10\xd5\x0f\x43\x50\xc0\xb3\xf6\x43\x1f\x6e\x4a\x71\x9d\x97\x9d\x5a\xd5\xcc\xc5\x2d\xc5\x6a\x50\x4f\x0f\x92\x6f\xd2\x02\x46\x93\x24\x89\xc1\xed\x95\xb4\x9e\xde\xe6\x25\x71\xa5\xe0\x4f\x8f\x6a\xaa\xc7\xe8\x9d\xbb\xf4\x9f\x97\xc8\x36\x62\xed\xa6\xa6\x91\xad\x52\xce\xbe\x07\xf3\x48\xd4\x7f\x2e\xa4\xb9\x76\x49\x43\xe8\x9b\x71\xbd\x9b\xc1\x76\x80\x8a\xc3\x97\x42\xc8\x4d\xff\x54\xe8\x6c\xbb\x00\x69\x66\x4b\x7c\x6b\x4a\xf4\x25\xe9\x3d\x3b\x1b\x89\xeb\x7f\x20\xdc\x93\x3d\x5f\x17\xf1\x16\x91\x41\xa5\x60\xc3\xcb\x24\x6e\xd0\xaa\x69\xf0\x16\xa0\x6b\x05\x66\xe6\x3d\x75\x32\xc5\x7e\x67\x8a\x8d\x33\x8d\xb3\x80\xcf\xf5\x45\xac\x3f\x8b\x1f\x7c\x5f\xfd\xa6\xdc\x06\xe9\x32\x40\x6c\x4d\xca\x41\x43\x79\x02\x84\xdb\x17\x96\xa8\xb3\x37\x3f\x9f\x0d\x72\xbb\x51\xa0\xba\x98\x9d\x82\x3c\x41\xe7\xf9\x3e\xdc\x0b\xc7\x91\x34\x1e\x50\x3a\x9f\x28\xde\x06\x5e\xa0\x28\xd1\x33\x30\x40\xea\x0d\x6b\xac\xad\x53\xe1\xee\xf8\xb5\x43\x87\xa3\xef\x47\x12\x79\x9f\xf9\x65\x9c\x60\xc1\x5b\x5f\x64\xfc\x0a\x7c\xc7\x58\x81\x7c\xe4\x54\xb2\x68\x27\x37\xcb\x4c\x32\xb7\x95\xbd\x37\x5d\x20\xb1\x13\x66\x67\x3a\x61\x9c\x56\x0b\x57\x14\x36\x74\xf2\x5b\x91\x4a\x92\xe9\x93\x66\xc3\xb7\xf9\xb1\x54\x1e\x49\xb7\x47\xc6\xff\x42\xa5\x61\xd7\xf9\xaf\x1c\x22\x6f\xcf\x47\xdf\x77\x3e\xaa\xb9\xc2\x77\x16\x24\xfa\xe8\x15\xd9\xcc\xc7\xbf\xc8\xa0\xe5\xce\x42\xa2\xfb\x1a\x5c\x31\x6e\x9e\x6c\x0c\x79\x08\xbc\x26\x46\x21\xec\xe1\xe4\xd9\xd0\x97\x6a\xc5\x24\x1d\xca\x24\x79\x2f\xd2\x0a\x5d\x1d\xe3\xd4\x06\x53\x7c\x76\x42\x73\x10\x30\x58\xc2\x5a\x77\xa4\xb5\xdb\x16\xbc\xab\x16\x1e\x98\x59\xfd\x03\x89\xcf\xda\xfe\x03\xdd\xb8\xb8\x2c\xbd\x19\x45\x01\x4b\xbd\x0d\xa6\xdd\x40\x83\x65\x2c\x53\x15\x9a\x8b\xd0\xf7\xa2\x9d\x96\x74\x3f\x37\xd0\xed\x74\x3c\xae\x4c\x93\xf4\xea\xfa\xa6\xda\x8a\xac\xf5\xec\xdf\x37\xb5\xf5\xb9\x14\x8b\xb5\x1d\xac\x60\xc5\x38\xda\x65\xf2\xd6\x7c\x8d\x92\x9e\xac\x88\x80\x7b\x57\xaa\xd8\x0b\x00\x8a\x8d\xd2\x58\x2e\x78\xbd\x08\x15\x45\x7f\xbf\x8c\xe3\x23\x2a\x5a\xd6\xd3\xa8\x6d\x59\x6b\xf0\x20\xe5\xcb\x32\xaf\x6b\x93\x1c\xfe\xa6\xd7\x37\x36\xcc\xfc\x45\xef\x64\x7e\xb0\x61\xee\x6f\x7a\x57\x6c\x6e\xb8\x82\x30\xfc\xeb\x04\xc7\xc2\x8f\x05\xbf\x3b\x08\xd9\xb3\x30\x8c\xf5\x48\x7b\x57\xf9\xd2\x1a\x7e\xb7\x23\xde\x8b\x13\x5c\x32\x7f\x82\xec\xcf\xa3\x68\xd2\x9c\x02\x56\x26\x5d\xd3\x2d\x0b\x73\xa1\x1b\x96\x72\xf6\xb6\x77\x3f\x26\xc4\x3e\xd6\xec\x18\x77\xaa\x1e\x65\xc8\x04\x2d\xff\x10\x1b\x59\xfe\x21\xe0\x0c\x7d\x1c\x9d\x9a\x22\x88\x74\xaf\x1a\xa3\xe6\xea\x6f\x15\xdf\x14\x2a\xbf\x2e\x39\x10\xa6\x1b\x66\xa6\x90\x3e\x48\x11\x3a\x02\xc7\x31\xc6\x2a\xb2\x81\xcb\xf3\xc1\xab\x01\xf3\x6b\x71\xcb\x8d\x1e\xb0\xe2\x46\x85\x68\x94\x75\xee\xfa\xb0\xed\xd7\x44\xb5\x36\x34\x8f\x33\x08\x9f\x60\x4d\x22\x2c\x84\x00\xa9\x24\x74\xd7\xbf\x88\xaa\xc1\xad\x96\x29\xe6\xe4\xbe\x3a\x80\x32\x5c\x89\xc3\x55\x1c\xb1\x30\x6d\x9a\xc4\xc1\xd9\x99\x7c\x2e\xd9\x21\x49\x52\xfd\x8d\x79\x4d\xa3\x3b\x97\x02\x01\x1c\xf6\x49\x92\xee\xd8\x7e\x12\x85\x92\x93\x1d\x45\x25\x0e\x6c\xe3\x08\x5f\x21\xa8\x04\x00\x0e\xf3\x03\xde\xef\xd8\x68\x44\x47\xf0\xd7\x88\xb1\x62\x91\xee\x58\x4f\x87\xc4\x25\xd0\x56\x06\xb3\xc3\xc7\x11\xc9\xd2\x91\xce\x1c\x32\xd9\xb1\x59\x36\xda\x03\x60\xda\x08\xfd\x03\x76\xac\xaf\x9f\x5b\x15\x7f\xfa\x8c\xc4\x15\x45\x5e\x5b\x74\x48\x10\xb8\x75\xe6\x6c\x47\x6b\xb6\xa1\x47\xd6\xea\x0c\x5a\xb2\x4d\xab\x03\xcd\x03\x74\xba\x66\x3f\xca\xd4\x2d\x13\x42\x42\xda\xb5\xbd\x8e\x59\xb7\xd9\xf9\x86\xac\x43\x8e\xe9\x53\x21\x3b\xde\x89\x2a\x59\xdc\xdc\x70\xf9\xa6\xfa\x96\xdf\x7f\x21\xee\xe0\x7e\xfe\x42\x92\x28\x1c\xdc\xec\x74\xc4\x6f\xad\x88\xbf\x1d\xb2\xf7\x92\xf2\x8f\x7c\xfd\x52\xec\xf7\x79\xb5\x69\xef\xaf\xeb\x8e\x7c\xef\x77\xd3\x75\xb5\xe4\x21\x4b\x34\xaa\x38\x6c\xfe\xaf\x4a\xbe\x56\xb2\x58\x77\x4e\xa0\x57\xdc\x39\x54\x12\x42\xb7\x45\xb5\x79\x2b\xea\xaf\x3b\x1b\x8b\x15\x51\xe6\x03\x05\x7a\xe9\x82\x4d\xe6\x54\xb1\x49\x60\xb9\x28\xd8\x8c\xe6\xad\x9b\xe5\x85\xb8\x04\xb8\x81\x9c\xfd\x35\x38\x8e\x73\x5a\x40\x9e\xc4\x2a\x4e\xc1\xa6\xff\xc2\x51\xcb\xd1\xbd\xb8\xe5\x5f\x9f\x55\xa0\x81\x8f\xa7\x34\x08\xb4\x1e\x1f\xe9\xf3\xfb\x20\x79\xe5\xe4\x00\xd9\xc6\xae\x95\xb0\xe8\xf1\x6b\xb0\x75\x46\x55\xc7\xe2\xaf\x32\x95\x78\x02\xa3\xbb\x10\xb4\xdc\xbb\x2c\xaa\xf2\x3b\x71\xcb\x7f\x2c\xea\x63\x5e\x96\xf7\x24\xe3\x97\xb3\x45\x65\x45\xe2\x0a\x44\xe2\x13\xa1\xa5\x80\x7e\xc4\x27\x9d\xc7\x9b\xe0\x10\xbc\xab\xe0\x5e\x30\xad\xc5\x9e\xab\x5d\x51\xdd\x60\xc3\xf8\x26\x25\x8b\xea\x11\x17\x64\xf7\x7a\x94\x7d\x6b\xf4\x1a\x91\xbc\x80\xa3\xf6\x57\x99\x56\x54\xfa\x66\x0d\xe7\x4e\x9e\xd1\xcd\xc0\x43\xa8\x00\x7f\x0b\x48\x74\x32\xce\x35\xe6\x13\x25\xb2\xe2\x64\x8e\x7e\x33\x43\x7e\x3c\x3f\x43\xa8\x60\xd5\xf9\x59\x92\xb3\x19\xad\xdb\xb3\x24\xbf\x54\x17\xe3\x71\x6e\xf5\xf0\xf6\x74\xaa\x29\xb0\xe0\x05\x8f\x55\x62\x21\xd8\x11\xf6\x81\x0c\xff\x61\x82\xa6\x35\xfb\x8b\x53\xe9\x14\x54\xfa\x69\x15\x53\x16\xd6\x38\xaf\x7e\x7c\x74\x50\x82\xc1\xb0\x84\x52\xc3\xd6\x0c\x42\x3b\x75\x98\x3e\x49\x82\x86\x8c\x3d\x83\x06\x75\x7e\x7c\x8e\xe6\x08\x98\x43\x82\x91\xc8\xed\x84\xca\x61\x42\x19\x43\xad\xb7\x2a\x95\x34\xb7\x90\x5d\xd0\x23\x16\xda\xe4\x46\xe4\xe5\x4b\x78\x25\x03\xf3\x03\xe8\x92\x30\x94\x58\x5e\x2b\x43\x56\x89\x00\xf2\xba\xc3\x24\x45\x0d\x93\x7d\xe9\x35\x0f\x3a\x2a\x49\x72\xc6\xaa\xf8\xf6\x98\x24\xff\x94\xe6\x7a\x4a\xbf\xd3\x95\x39\x9a\x7a\xc0\xc9\x85\x04\x99\xf4\x88\xd3\x9f\x5a\xd7\x9b\xc0\x49\x67\x76\x91\x5f\x56\x3d\x4f\xde\xf9\x78\x4c\xc2\xf0\x65\xbe\x0a\xea\xce\x8a\x65\xbe\xb2\x73\x0e\x81\x67\x7b\x54\x34\x3d\xba\x2a\x63\x64\x08\xaa\x29\xeb\xae\x88\x76\x32\xc1\x3d\xcb\xbf\x01\xf2\xe8\x0d\xf0\x22\xe5\x06\xb0\xbe\x69\x2a\x70\xf8\xc3\xd6\x24\x89\x5c\x4c\x26\x32\x1b\x8f\xab\x60\xcb\x73\x8f\x81\x92\xd0\x9c\xbd\x10\xf0\xec\xbd\xe8\x79\x0e\x79\x21\xc0\x4a\xf9\x94\xf9\xb7\x40\xd1\x97\xd0\x47\x73\x72\xea\x79\x57\x19\x86\x09\x92\x64\xa8\xf3\x25\xa7\x0b\x78\x0c\xcc\x53\x5f\x9d\xc9\x9c\x90\x0b\x32\x99\x18\x42\x37\xaf\xef\x8d\x92\x55\x3a\x91\x96\xeb\x7b\x2c\xe0\xd1\x8d\xcc\x98\xbb\xa3\x52\x17\x4e\x38\x71\x73\x53\x82\xde\xff\x4e\x16\x8a\x47\x55\x34\xd6\x75\x49\xc2\x59\x5b\xef\x0f\x89\x9b\x26\x4d\xfb\xc2\xd9\xb0\x2f\x94\x2c\xbe\x14\xd1\x05\xd0\x58\x4d\x7d\x51\xdc\x46\x5e\xcb\xee\x83\x11\xc9\x5e\xff\xab\x5f\xd0\xbf\x18\x9d\xe7\xc8\x05\xbe\x87\x16\x8e\x28\x3e\x75\xf5\x55\x4c\x5f\xf7\x0d\x01\xf5\xd9\xf7\xac\x48\xd4\xbd\xe1\xea\xcb\x82\x97\x9b\x94\x20\xbd\xf5\x89\x7a\xb8\x9c\x6e\x0e\xc3\x74\x18\x3d\x22\x78\x77\xf9\xa1\x3b\x38\xd6\x79\xa5\x5e\x6d\x0a\xa5\x2f\xc5\x46\x4e\xe9\xd9\xd8\x8c\x9a\xc7\x1a\xf9\x29\x30\xf2\x03\xc9\x80\xba\xb1\x0a\xd8\x12\x43\x53\xbf\xc8\x14\xb0\x93\x04\xf1\xed\x8c\x36\xfb\x9d\xf1\x14\x09\x2f\x84\x16\x68\x29\xea\x0c\x6b\x4f\x39\xb0\xd7\x34\x34\x14\x0c\x2c\xbf\xda\x34\xfb\x3b\x2b\x0d\x47\xd0\x5b\x5b\xc3\xc0\x38\x89\x72\x77\xdc\xa5\x14\x19\x4a\x23\x5a\xf9\xf3\xdf\xa0\xa4\x18\x5e\x0d\xb2\x9d\x49\x4b\x03\xb9\x34\xdb\x38\xda\x47\x1a\xbb\xc6\xf4\xf4\xbb\x3b\xb0\xf8\x22\xe5\x2c\xbc\xe4\xb5\x15\x73\xee\x84\x85\xeb\x2b\x0d\xd9\x05\xa3\x39\xd0\x35\x18\x24\xa4\x6b\x30\xc5\x17\x3c\xf0\x82\x30\xfe\x0f\x90\x73\x66\x6d\x2b\xb7\x40\xb2\xe7\x6a\xc5\x5d\x0a\x02\xca\x33\xd0\x7e\x28\x61\x12\x22\x61\xbe\x04\xf7\xa3\xa6\x99\xd9\x49\x13\xb8\x5f\xb8\xf9\xd4\x33\x45\xde\x8a\x9a\x71\xff\xca\x23\xb5\xc8\x0d\x8b\x2a\x30\x16\xc0\x9c\xac\xea\xae\x6d\x76\x68\xe2\x95\x38\x60\x34\x98\x1f\xf2\x8e\xf9\xa1\x49\x26\x0d\x41\xb7\x12\x1d\x33\x44\x93\xc2\x5c\x6f\x21\x89\x35\x47\xe4\xce\x1c\x11\xd7\xba\xb5\x48\x8c\xac\x7e\x65\x64\x91\x48\x00\xfe\xe0\x5d\xf1\x7b\xf7\xd1\x30\x12\x52\x9d\x51\x45\xb0\x81\x77\xc7\xac\x69\x9e\xfe\xd7\xaf\x9b\xb1\xc5\x1a\x42\xf4\x0e\x2d\xd9\x2f\x38\xdc\x75\x32\x7e\xf2\x8b\x55\x76\xcc\x2b\xf0\x6e\x04\x53\x9e\xc1\x03\x78\xb0\x6e\xcf\xa5\xc6\x65\xc5\x00\xa4\x2a\x10\x72\x43\x33\xd8\x24\x79\x67\xb9\x51\xf1\xd4\x94\x1d\x0d\xc5\x00\x45\x69\xd0\x52\x15\x54\xb6\x14\x15\x3d\x9e\xc7\x46\x29\xd2\xf1\x3a\x36\xe1\x56\x2c\x50\x08\xf9\xe7\xc2\x97\x6a\x35\xad\xc4\xd7\x38\xf9\xc9\x83\xd2\xb2\x48\x41\x47\x18\x3b\xb2\xb6\x31\xe3\x71\x01\xef\xd2\x0e\x6f\x48\xae\xf9\xdf\xd0\xcb\x7d\x38\xd3\xdb\xbc\xa4\x23\xc9\xb7\x92\xd7\xbb\x11\x75\xcf\xd8\xfa\x1e\x95\x9f\xb3\x61\xf8\x45\xb9\xcb\x11\x35\x9f\xc6\x03\xde\xbb\xcb\xb5\x89\xc5\x06\xbc\x67\x8d\xb4\xaa\xf7\x46\x85\x49\xdc\x1c\xf4\x7b\x46\xb0\x45\xc6\x61\x70\x3f\xfd\xc1\x7c\x6d\x77\x9d\xa6\xf1\xb8\xa0\x93\xb6\xee\x95\x5c\x4d\x9f\x93\x24\xf9\xce\x7c\xe3\x0e\xc0\x6e\xe7\xd4\x77\xf9\xe1\x0b\xd1\xbd\x34\xc6\x8f\x63\xfe\x5d\x6c\xbd\x47\x3d\xe3\x5d\x61\xfb\xad\xd5\xb0\x7e\x64\x95\xb8\xcd\xd1\x79\x10\xb2\xed\x77\xba\x0f\x27\x84\xee\xbe\xbf\xdb\x36\x98\x1a\xdb\xc3\x9b\x50\x65\xce\xa8\x6f\x74\x89\x70\x06\xff\xab\x27\x36\x68\xf0\x7e\xc2\xe5\x63\x0c\x93\xfe\x28\x0b\xb3\xd8\x4e\xfe\x70\xfc\xd3\x9f\xda\x23\x12\xbe\x45\xad\xf1\x9f\xfc\xd2\xf8\x1d\x9c\x4e\xb4\x10\xe9\x1b\x5c\xb5\x3f\x4b\xf6\x66\x6a\x34\xed\x35\x7b\x38\xd1\xbf\xeb\x00\x5c\xee\x88\x8e\x06\xda\x6d\xbf\x51\xf1\xe0\x3e\xe7\xbf\x44\xfb\x20\x99\x24\x29\x58\x01\xb1\x16\xc9\x56\x45\x1e\xaa\xe1\xff\x47\xde\xbf\x2d\xb7\x91\x63\xfd\x82\xf8\x3d\x9f\x42\xcc\xa8\xca\x7f\xe2\x23\x48\x93\x92\x6d\x59\x29\xc1\x0c\x97\xed\x3a\x74\xfb\x50\x5d\xae\xea\xea\x6a\x8a\xed\x7f\x32\x13\x14\xd1\x4e\x02\xac\x4c\x50\xb6\x4a\x64\xc4\xbe\x9f\x98\x88\xfd\x08\x3b\x26\xe6\x7a\x1e\x62\x3f\xc5\x5c\xef\x27\x99\xc0\xc2\x21\x81\x64\x4a\xf6\xd7\xdf\x37\x3b\x62\x66\x74\x91\x62\x02\x48\x9c\xb1\xb0\x80\xb5\xd6\x6f\x11\xc9\xe3\xd8\x18\x41\xa3\x7d\x5a\x69\xd3\x0b\xc9\xc9\xdb\xd1\x0f\x9c\x49\x72\x2b\x85\xa6\x6c\x87\xed\xf0\x58\x33\x48\x1b\xed\xf7\x3d\xca\x93\xe8\x3a\x2b\xb7\x34\xc2\x51\xd4\x36\x2b\x05\xe7\x7b\x00\x0d\x06\xfe\x16\x40\xff\x40\x7d\x00\x3a\x4d\xfa\x98\x72\xf0\x85\x95\xe2\x6a\x8d\x25\x22\xf1\x33\x50\xb6\x74\xdf\x36\x7a\xc8\x11\x3e\xc6\xcf\x5a\xe1\x56\x9d\x18\x40\x64\x20\xdc\xd3\xec\x88\x5c\x62\xa3\x35\x1e\xe1\x87\x21\xf5\xfb\x39\xd1\x4b\x81\x22\x4c\xab\xb0\xdc\x00\x46\xbb\xbb\xf2\x40\x0b\x3d\xc8\x6d\x22\x7d\xc9\x2f\xe6\xbe\xcf\xcb\x1e\x6d\x68\x72\xa7\x62\x08\x23\x63\x2b\x95\x17\x16\x6c\xc6\xca\xd0\xa5\xd1\x7d\x1b\x4e\x08\x11\x56\xed\x8d\x88\x81\xb3\xa5\x33\xa2\xcf\x15\x4d\x38\x16\x08\xed\xf9\x60\xb0\x47\xc8\xc3\x6e\xa8\x5a\x00\x02\xcc\xd7\x7f\x95\xb8\x9a\xb1\x39\x20\xc1\xcc\xd8\xdc\x1c\x30\xd4\xaf\x7c\xe5\x8a\x30\xa0\xe0\xd0\xc3\x1b\x9a\xb3\xac\xd4\xe7\x32\xfc\x60\x76\xb9\x1d\x8f\xc7\xe3\xa1\xfa\x37\x59\xaa\xe7\x29\x3c\xb3\xe2\x72\x7b\x3c\x1e\x2f\x86\xf0\x6f\xa9\x9e\xc7\x4f\xe0\x79\x76\xb9\x5d\xd2\xe5\x72\xfe\xe0\x0a\x1f\x48\x89\x1c\x90\xa4\x57\x88\x71\x1a\x72\xf5\xf2\xd3\x26\x91\xa3\x5a\x6c\xab\x9c\x82\x6f\x7d\xb5\x2d\x47\x97\x32\x42\xd3\x28\x4a\xa3\x9d\xfa\x85\xa3\xab\x08\xe1\xaa\x6f\xa6\x77\x1c\xd3\x91\xa1\x9f\x09\xea\x68\xc0\x8f\x65\x96\xd3\x95\x28\x8b\x4e\x19\x94\x04\x8f\xff\xf5\x26\xe3\xe0\xf2\xff\x7f\x8b\x30\xdc\xa4\xf3\xeb\xac\x64\x05\xa8\xc6\x7a\x60\x95\x92\xc9\x92\x92\xe8\xf2\x72\x1b\x0d\x1a\x4c\xb2\x67\x32\x19\xab\xe3\xb8\xe1\x1e\x26\x8f\xd1\xc1\xe5\x7c\x56\xb1\x6c\x58\x66\x0b\x5a\x46\xd8\x64\x03\xf4\x31\xac\x4f\xd0\x0e\x37\x4b\xa9\xb9\x3f\x34\x83\xd1\x2c\x8e\xcd\x56\xbe\x53\x2c\x45\x84\xd7\xd3\xc8\xb8\x83\xb4\x77\xfa\x51\x0a\xf6\x83\x59\x45\xb3\x28\xd0\x97\x3e\x50\x67\x6b\xf2\x39\xca\x33\x0e\x0a\x6d\xc9\x0d\x95\xe8\x68\x41\x8f\xb4\x49\x5f\x71\xc4\xf8\x51\x76\x54\x6d\x39\x67\xfc\xea\x48\x15\x21\xaa\xc8\xaf\x62\xeb\x86\x2e\xc2\xfd\x85\x8e\xf8\xb8\x12\x25\x78\xc4\xd6\xdb\xed\x37\x60\x98\xef\xad\xd9\x15\x5d\x2b\x2a\x63\x88\x5d\x6b\x78\x7e\x54\x6b\xf6\x9f\xe1\x92\xd5\x1a\x83\x77\x7c\xe2\x1b\xe2\x5e\x73\x8d\xc3\xec\x4d\x93\x6b\x9e\x54\xa8\xc7\xe2\x98\x01\xd0\x73\xbe\x6a\x7e\x81\x46\x35\xe6\xa3\x4c\xea\x70\xfb\x2b\xa1\x98\xed\x76\x1a\xe5\xdc\xcc\x2c\x07\xa4\xa9\x09\x46\x43\x49\x2c\xf7\xa6\xe8\x54\x7b\x5c\xbb\xb8\xbc\x69\xf2\x59\x2c\x35\x15\x16\x05\xf0\xdc\x70\x65\xaf\x19\xc9\x35\xe3\xda\x9f\x6a\x14\xb5\x53\xe8\x70\xa8\x5e\x9a\x7c\x16\x7a\xcc\x94\xf2\x02\x18\xd8\xd7\x8e\x50\x1a\xa2\x79\x07\xd8\xd8\x37\x7a\x5c\xc0\x2b\x49\x33\x3c\x66\x23\x8c\xf0\x6c\x1e\x76\xc1\x9b\xc6\x4a\xe4\x60\x4c\x3d\x1b\x3e\x35\x35\x3a\xf6\x8f\x96\x57\x12\x5f\x76\x32\xfd\xce\xd3\x3f\xd6\x3c\x7b\x34\x56\x1d\xd2\xb5\x94\x72\x71\x4d\x8d\x3c\xf8\x0d\xfd\x24\x7f\x16\xef\x2c\xdc\xf9\xe1\xa0\x7d\x13\x56\xd2\x01\xa3\x9b\x25\x17\xf1\x4c\xb2\x6b\xda\x9a\xb2\xbf\xa8\x1e\xfb\xa6\x0b\x96\xfd\x10\x7e\x9e\xb6\x39\xc9\x2f\x40\x61\x6f\x9b\xfa\xb5\x77\x33\xe3\x78\xfe\xb0\x35\xf7\xf7\x7f\xa5\x55\xf9\xf4\xd7\x11\x9e\xe0\x7f\x76\xe4\xfa\xad\xa8\xd6\x59\x87\x24\xdf\xde\xa1\xee\x91\xf7\x59\xbd\x12\x1f\xb5\x4d\xdd\xaf\x2b\xca\xdf\x59\xd7\x41\x50\x31\x2a\x1b\xc2\xa1\xd8\x50\x77\x47\xfb\x96\x87\x98\x71\x5e\x15\x7e\x65\x35\x7d\x2e\x36\x37\xcf\xb7\xde\x96\x6f\x2f\x67\xda\xcd\x55\xb3\xa6\x41\x3f\x24\x44\x4e\x13\x40\xf5\x3b\x00\x03\x5c\x94\xdb\x2a\x09\x5c\x1b\xb0\x5a\x51\xcf\x82\xf4\xc1\x49\xe9\x61\xf0\xa4\x03\x50\x50\x57\xc2\x18\xa6\x1b\x2f\x54\xaa\x7a\xe6\x2b\x60\x7f\xbb\xaa\x28\x0f\x41\xef\x0c\x5b\xee\x0d\x8e\x75\xf9\x78\xb8\x32\x2c\x9c\x8d\xec\x93\x7e\xa2\x7d\x0e\x6b\x4a\x87\x3c\x30\x02\xcf\x65\xc3\xb7\xe6\xdb\x1a\x33\xb5\x6c\x58\xfa\x17\xd6\x63\x1d\xbe\x01\xb4\x6b\x0a\xd0\x80\x8e\x30\xd7\xaa\xd0\x08\xdf\x9d\x52\xed\x3a\x8a\x7b\x1a\xc1\x8f\xfb\x52\x6a\x14\x52\x0e\xb7\x79\xf7\xa5\x2b\x69\xa6\x56\x16\x1f\xc1\x8f\xbb\x53\xaa\x5e\xe1\x23\xf5\x1f\x38\x17\x60\x5c\x0f\x5d\xbe\xf8\x74\x5a\x4f\x89\x6f\x4a\xc6\x3f\xfc\x94\x49\x1a\xe1\x47\x27\x63\x3f\xc6\xbf\xe4\x89\x70\x10\xa5\x0f\x94\x6a\x71\x78\xf3\x57\xbb\x6e\x7b\xee\x25\xf8\x91\x56\x6a\x29\xc1\x70\x79\x09\x3f\x8a\xea\x83\x22\xa3\x11\x50\x4c\x17\xf4\x82\x96\xd9\x8d\x17\xb6\x2c\xd5\x0a\xe3\x00\xf2\x05\x59\xfc\xec\x72\xc8\x8a\xe2\xb5\x28\x28\x28\x3b\xc0\x6c\x6a\xa2\x36\xfa\x46\x0c\xf0\x22\xbd\xcc\xb6\xbc\x10\x2f\xe8\x46\xae\x22\x7c\x3c\xee\x22\xab\x22\x77\xce\xc2\x5c\x5a\x22\xed\xf4\x35\x51\x80\x7a\x69\xeb\x79\xfc\xc8\xe4\x7d\x6d\xd4\x2a\x6c\x57\x4d\xc6\x5f\xc2\xca\xac\xb3\x4f\xdf\xb3\xab\x55\xa9\x3a\x4a\x43\x3b\x44\x78\x42\x1f\x7a\x4d\x59\x8b\x6b\xbd\x60\x14\xd7\xaf\xfb\xb5\x6b\x4f\xb8\x6b\xe9\xfc\x68\x14\x25\x1a\x46\x50\x66\x0b\x60\xb1\xef\x3c\x9b\xdc\x71\xf4\x1c\xc9\x6c\x01\x5a\xd3\x44\xee\x76\x51\x64\xb3\xcb\xb6\x52\x18\x7c\xd4\xc6\xc8\xb4\x52\x27\x2d\x75\xc0\x81\x73\x1e\x87\x37\xb6\xa6\xaf\x4d\x48\x0f\x4e\x73\x8c\x43\x00\x09\x2b\xd0\x1c\xf4\x20\x83\xdd\x2e\x52\xd9\x46\x70\x8f\x90\xb4\x22\x09\x45\x38\xab\xae\xc0\x4c\xc7\x5e\xd8\x3c\x3d\x06\x90\xeb\x82\x6e\xa8\x3a\x0f\xe5\x8c\xd6\xda\x8b\x52\x63\xf5\xa2\x75\x6e\xb5\x78\xda\x7d\x8e\x8f\x11\xc2\x15\x87\xd3\xe5\x1e\xbb\x0a\xfe\xf0\xfa\x65\xab\x82\xbc\x49\x53\xd1\x5a\x94\xd7\xed\x56\x74\x83\x5f\xd3\x38\xe6\x5d\x12\x73\x4a\x20\x43\xa7\x46\x42\xe3\xf8\xf0\x5b\xd0\x20\xed\xcc\x00\x62\x90\xe5\xdc\x55\x56\x5a\xdb\xb4\x77\x07\xc8\xc3\xad\x8a\x05\x87\x32\x09\x25\x1f\x0d\xf4\xb5\x36\x5e\x90\xf0\xaf\x71\xd3\xda\xd1\x82\x07\xff\x98\x5d\x7e\xbc\x1c\xce\x07\x97\x0f\xec\x8f\xc1\xa7\x75\xf9\x95\x13\x02\x59\xf9\x61\xd0\x37\x49\x94\x6d\x36\x25\xcb\xe1\x6a\xeb\xc1\xa7\x75\xe9\x4e\x10\x87\x65\x4c\x75\x05\xe9\x3e\xa5\xbb\x9d\xfe\xad\x27\xc0\x5e\x75\xb8\x51\x11\x6e\x8d\x88\x24\x61\x71\x0e\x4c\xb4\xe2\x33\x69\xba\x03\xdc\xc8\x37\xb5\xb3\xb6\x2e\x06\x55\xe4\xc1\xa6\xcc\x18\x8f\x2c\x24\x9b\x81\x74\x63\xcb\x44\x1c\x2a\x31\xfb\x3d\xce\x88\x68\x8a\x70\x82\x38\x75\x3a\x60\x88\xb5\xbf\x14\x08\xc0\x2e\x3b\x43\x67\xd1\xfb\x68\x20\xe6\x80\x20\x88\xb0\x7a\x12\xa6\x7e\xee\x41\x72\xeb\x0d\x0f\x96\x81\x5e\xb2\xca\xcf\xbd\x12\x3f\x4e\x1d\xb9\xd4\x1a\x51\x05\x35\x97\x9c\x50\x37\x3f\x02\x8a\xf2\x02\x66\xc2\xb9\x69\xe3\xde\x32\x80\x51\x84\x71\x08\xce\x4e\x46\x74\x02\x36\x44\x6d\x8f\x80\x1f\xd8\xe6\x67\xf1\x92\x17\x89\xb1\x34\xf0\x97\x54\xe2\xf7\x3a\xd6\x19\xeb\xce\x17\x96\x72\xbc\xfc\x24\x29\xaf\xd5\xee\xac\x09\x86\x96\x5e\x77\x8c\xfe\x4b\x35\x89\x0f\xc7\x89\xa2\xa9\x50\x0b\x2b\x85\x27\xb9\xdd\xa3\xa6\x39\x2e\xef\x03\xda\xe3\x68\x44\x8b\x0e\xbc\x10\xf9\x5d\x1f\xdd\xb0\x3b\xbf\x32\xd7\x3b\x54\x63\xb5\x65\x80\xf5\x67\xe3\x14\x5f\xf2\xbd\x10\x1f\x02\xc2\x91\x59\x30\x3f\xa4\xdd\x3e\xd4\xaa\x37\xf4\x98\x9a\x6e\xa8\xe8\x15\xab\x25\xad\xb4\xb8\xf8\xc0\xb5\xc2\xa1\xd2\x3d\x45\xbb\x5d\x52\x43\x1f\xbc\x85\x8e\x30\xda\xe5\xe9\x6c\xbe\x47\x18\x22\x40\x8b\x54\xd3\x33\x9d\xf9\x77\x90\xa2\xb3\x08\x7d\x17\x17\xd6\xc2\x22\xd4\x40\x66\x4e\xb3\x5d\x5b\x78\x6d\x2a\x5a\xa4\x15\xbe\xce\xca\x94\xef\x4d\xab\xb6\xaa\x55\xb9\xd8\xdc\x80\x86\x3a\x39\xb8\x5f\xea\x8f\x09\x21\xd2\x59\x52\x19\x94\x53\x9b\xde\xa9\x28\x34\x41\xcd\x8a\xbf\xdd\xbb\x65\xc8\x61\xaa\x87\xd6\x44\x47\x8c\xd7\x32\xe3\xb9\x22\x35\xb0\x29\x80\x5e\x08\x73\x0e\x9f\xe7\x6a\x0f\x98\xf1\x39\x61\x9e\x2a\x7d\xa9\xaa\xdb\xd8\xbf\x1d\xf4\xb9\x91\x93\x52\x2f\x0d\x40\xff\xbb\xb7\x04\xec\xa5\x7a\x9e\x79\x46\xab\xcd\x20\x15\xa7\x4d\xf4\x79\x63\x9e\xe7\x59\x74\x68\x4b\xd0\x6a\xb7\xab\xf4\xe6\x47\xac\x31\xa8\x24\x95\xbe\x40\xc2\x94\xe8\x38\x57\xfb\xdd\x4e\xdb\xd8\x51\x0c\x09\x52\xb9\xd7\x43\x90\xeb\x21\x00\xc5\xae\x9a\xdc\x6a\x4f\xa6\xcf\xca\xb2\xbd\x88\xbd\xb3\x48\xd2\x60\x99\x19\x2b\xa7\xb1\x95\xc7\x37\x28\x6a\x60\x58\x84\x35\x13\xd8\xd8\x85\xdd\x93\xa9\x0f\x86\x12\x69\x5c\x3b\x38\xdf\x7b\xa1\x2b\x9a\x15\x91\xc9\xf9\x03\x2b\xcb\x96\x52\x3b\xba\x05\xc3\xfd\xb6\xf7\x09\xe9\xcc\xc6\x4c\x5f\xbe\x74\x70\x53\x8d\x69\x58\x00\x8a\xd6\xdc\x6a\x19\x34\x03\xc0\xba\xf0\x52\x5f\xf8\x4d\x9d\x5a\xac\x35\x2b\x33\x05\x28\x96\x06\x89\x6f\x82\xc7\xc8\xaa\x2e\xdd\x95\x48\x4d\x8b\x7d\xa0\x7b\x6b\x2d\xcf\x0c\xce\x72\x02\x6c\xfc\xde\xa8\x70\x7d\x41\xc3\xfd\xcc\x56\x16\xb0\x34\x41\xce\x1b\xb2\x14\xe9\x2b\xeb\xf4\xdf\x40\xd1\x99\x58\xed\x19\xd9\x15\xa7\xb1\xc6\x96\xf2\xbe\xf2\xe8\x41\x79\xb4\xa3\x3c\x1b\xe6\xb2\xd6\xe2\x8b\xe2\x4b\x4a\xf0\xec\x54\x1b\xab\x0e\xd3\x83\x9e\xd6\xcf\xe0\x51\xcf\xaf\x88\xa2\x0c\xd6\x7e\x23\xd1\x72\xfd\x31\x08\xf3\xab\xbd\xf9\x48\xf7\xef\xdd\xf5\xfa\xa9\x65\xaa\xf1\xaf\x57\x4c\xab\xfc\xb4\xab\x73\xe0\x4d\xc3\x57\x14\x1d\x4c\xc6\xad\xea\xf6\xee\x9a\x23\x5c\x57\x5e\x9d\x55\x5a\x8b\x4c\x05\x25\x20\x29\x3c\x88\x52\x41\x89\xf9\xea\xae\x35\x1a\xc4\xd9\x7c\xee\x4a\x1c\xc4\x81\x8c\x4a\xbc\x10\x39\xb8\x94\x6a\xa5\x6c\xa9\xa0\x75\x91\x14\xfb\xf9\xcb\x96\xc6\xe9\x1d\x1f\xfb\x08\x8e\xea\x4b\xf5\xfb\x0b\x4a\x0e\x95\xdf\x1a\x43\x1c\x96\x25\x34\x20\x10\x7b\xcf\xbd\xf9\x40\xbb\x73\x5e\xb0\xac\x4e\x27\xfb\xb0\xb8\x77\xeb\x7f\xb9\x4c\xd1\x94\xf9\x25\xc5\x7d\xb6\x63\xee\x2a\xa7\xdb\x0e\xa8\x21\x8b\x06\x81\xa0\x22\xaf\x78\xc2\xd1\x39\xd2\xc6\x1f\xbc\x48\x26\xea\x30\x6a\x50\xa6\x1a\x24\x27\x46\x5e\xb3\x84\x23\x2c\x08\x9b\xb2\xd9\x78\x3e\x2a\xe9\x35\x2d\xbf\x3e\x9e\x56\x59\xc2\x51\xca\xf5\xb3\x8b\xc0\xae\xac\x07\x10\x39\x7d\xa6\xb2\x48\x25\x16\xda\x19\xc2\x17\x74\xfc\xd0\xeb\x8a\xc3\x65\xfa\xf9\xce\xf8\x77\xd1\x93\xa3\xff\xf8\xda\x35\x7a\xb8\xa6\xc6\x07\x04\xef\x7f\x42\x85\x3f\x5b\xa1\x7f\x65\xee\xfe\x47\xa8\x5f\x37\x75\x3b\xe2\xa3\x7c\x75\x01\x3b\x3f\x2c\x68\x6e\x76\xe8\x9a\x66\x55\xbe\x4a\x1e\x5c\xbe\x7b\x80\xa6\xfe\x5a\x51\x0c\xa5\xdf\x94\x5f\x36\xad\x36\x80\x86\x6d\x32\x9c\x60\x8d\xbf\xe1\x12\x82\x2e\x7c\x57\xd2\x20\xe5\x8f\xd9\xd5\x7d\x59\x5a\x53\x41\x9d\xf0\xbe\x2c\x9b\x94\xaa\x0f\x3a\x66\x00\x68\x98\x43\xa6\x5a\xbc\x66\x93\x76\x4d\x6f\x9d\x36\x4c\x0a\x0a\xaa\xf7\xe7\xab\xb1\x6b\xbc\xe4\xf7\xe7\xed\x25\xff\x55\x54\xc5\xbd\x79\x03\xfa\x0d\x24\xfd\xae\x12\xdb\xcd\xbd\x19\x6b\x08\x9c\x26\xf1\xbd\x19\x7b\x89\x55\x25\xee\xcd\xd8\x56\xa2\xa0\x20\xe1\xd4\x62\xb5\x56\x62\xa3\x07\x1f\x74\xb4\x49\xdf\xb6\x92\xf5\x93\x87\xa9\x55\x4d\x3e\x9b\xbb\x57\x1b\x50\x15\xbe\x3f\x77\x2f\x35\x74\xca\x67\xb3\x77\x1d\x63\xbf\xf8\x4c\x01\x2e\xbd\x56\x1f\x78\xb6\x95\x6d\x96\xa0\x05\xe4\x60\xc1\xde\xdc\x27\xaf\x0f\x2b\x74\xf0\x09\x20\xdd\xd9\x0f\x5e\xd1\xba\xfe\x6c\x19\x0e\x6a\x42\x7d\x55\xd3\x4a\xfe\x9c\x2d\x0e\x58\x8b\xb6\xad\xc1\xa5\x97\xfe\x9d\x58\x1e\x7c\xd3\xa8\x73\xcd\xe6\x58\xfb\x93\x09\x1d\x57\x03\x4d\x6a\x23\xeb\x75\x61\x7a\x69\xad\x84\xca\xba\x19\x00\x3c\x88\xa5\x48\x1a\x0a\xe5\x70\x72\x41\xb5\x1b\xf5\xa4\x3e\xf3\xae\x45\xc2\x87\xd9\xd7\x1c\xa1\xfd\x61\x03\xea\x44\x7a\x56\xaa\x07\xed\xed\xb2\xb8\xb8\xab\xaf\x53\x45\xa5\x9d\x79\x4e\x12\xb9\x3e\x8c\xc0\xd4\x26\xe3\xf5\x46\xd4\x14\x84\xe4\x41\x29\xf7\x20\x86\x75\xf4\x96\xe7\x09\xe7\x2e\x94\x0e\x4d\xf7\x45\xc3\x4a\x30\xef\x70\x05\xb7\x68\x08\x70\x3c\xd4\x89\x4a\x34\x68\xff\x0c\x54\x1c\x56\x34\xd1\xc9\x31\xd3\xb8\x96\x08\x7e\x3c\x1d\xa3\xae\xf8\xc1\x04\x61\xd7\xa9\x3f\x65\xfc\x4a\x8d\x82\xd1\x1f\x37\xdf\x0f\xc2\x80\x63\x38\xa4\xfa\x45\x1c\x23\xcc\x70\x34\x70\x3d\x14\x79\xd8\x01\x16\x18\xdc\xa9\xb0\x58\xac\x80\x56\xdb\x2c\xf2\x60\x2f\xd3\xca\x16\x5d\xf5\x19\xa3\x01\xed\x72\x4e\x3f\xc8\x1c\x68\x57\x03\x5f\xd1\x54\x72\x38\xc1\x9d\xe1\x78\x82\xc2\x5a\xef\x43\x57\x43\x0c\x33\x98\x71\xfe\xf1\xba\x4e\x00\xa8\x65\x8f\x39\xfd\x08\x56\xe8\xbc\xd0\x5a\x42\xff\xfa\x84\x70\xda\x37\x1a\x36\xe7\xbc\xb2\x73\x81\x77\x24\x9e\x55\xf3\x5e\xab\x7b\x3a\xbb\x04\x73\xeb\x24\xc9\xd8\x3b\x35\xe0\x85\x76\xf6\x1b\x9e\xc0\x3b\x5f\x0e\x26\xd8\x80\x19\xa2\xbd\x43\xab\xc3\x62\x43\xf9\xc1\x41\xb9\x93\x90\xf0\x08\x47\x5a\xa8\xf7\x19\x4b\x02\x3a\x6a\xc5\xaa\x43\x23\x5e\x72\xf2\xd6\xe0\x35\x05\x5a\x6b\x45\x48\x86\xb4\x25\xac\xf6\x95\xb1\x29\x99\x4c\x1e\x0c\x93\x69\xff\x2b\xf4\x40\x91\x93\x84\x12\x31\x13\x6e\xb4\xe7\x78\x8c\xce\xb3\x8b\x26\x00\x8c\x52\x0c\x2e\x84\x98\x65\x70\x8d\xfd\xe0\x1f\x49\xbe\x2e\x76\x6b\x2a\xb3\xdd\x1a\x7d\xf5\x80\x19\xac\x4e\x84\x18\xe9\x8f\xdd\x54\x7e\xf0\x8f\x2c\x29\x25\x9a\xfa\x09\x64\x98\x20\xc9\x77\xb9\xac\xca\x5d\x2e\xb8\xac\x44\x19\xe4\x55\xd9\xa4\x70\x21\xf7\xe0\x1f\x75\xb2\x62\x4b\x19\x24\x39\x50\x9c\xf9\x85\x57\x34\x17\x57\x9c\xfd\x41\x8b\xa3\xb5\x28\xd8\x92\xd1\xea\x08\xee\xf0\x8f\xa2\x41\x8d\x7a\x1c\x7c\x3f\xd9\x6b\x16\x50\xfc\x8e\x9e\x95\x72\x18\x0d\xa8\x71\xc5\x4b\xa2\xe7\xb2\x2a\x75\x00\x33\x01\xeb\x42\xbf\x73\xfd\x6e\xdd\x93\x52\x84\xe9\x7e\xc9\x47\x8b\xac\x66\x39\xb9\x05\x56\x22\x6a\x78\xac\x08\x6b\x86\x21\xf2\x78\xa9\x08\xff\xb2\x51\x01\x9a\x5b\x8c\x30\x70\x6d\x51\xc3\x14\x46\x58\x1d\xae\x22\x77\xce\x8a\xf0\xf7\x62\x4d\x6d\x40\x73\xce\x8b\xb0\x61\x0e\x23\xcb\x26\xea\x10\x9b\x9f\xfd\x1d\xe1\x17\xb0\x0b\xa7\x91\xcf\x67\x44\xf8\x9b\x2c\xff\x50\x6f\xb2\xbc\x89\xb0\x7a\x40\xa6\x75\x2e\x41\x74\x90\x42\xed\x19\x51\xb3\x7f\xb8\x4f\xd4\xef\x34\x6a\x76\x78\xd5\x16\xc5\x15\x44\xed\xa5\x1f\xe1\x1f\x60\xa3\x48\xa3\xd6\xac\x8e\xf0\xcb\x3a\x4f\xa3\xd6\xe5\x5d\xa4\x66\xfa\x68\x93\xbf\xd0\x45\x92\x5b\x3d\x42\xcf\xa2\x34\x72\xb7\x86\x11\xd6\x81\x2f\x74\x75\xcd\x55\x95\x0d\xfd\x3b\xe0\xa2\x15\xc2\x55\xd5\x85\x56\x14\x42\xe1\xfd\xb7\xd6\xbb\xea\xf9\x48\x75\xa6\xbd\x4a\xb0\x11\x6a\x5c\x4c\x38\x0c\x91\x0e\xfd\x65\x13\xf9\x23\x6b\xea\xa3\xc6\x20\x1c\x60\x1d\x01\x13\x44\x45\x38\x2e\xd4\xc6\xe8\x79\xe2\xa2\xcc\xb4\x81\x59\xea\x3e\x72\x93\xc1\x44\x34\xdf\xb8\x79\xa3\x33\x6b\x0d\xa3\xc7\xdd\xb9\x1a\x6a\x83\xc9\x26\xda\xcc\x10\x1d\xfb\x4e\x75\x32\x48\xfe\xf5\xfb\xb7\x51\x1a\xa9\x13\xb9\x7d\xff\xce\xbc\xbf\xa1\x9f\x64\xd8\xbb\x36\xe6\xc7\x8a\x5e\x87\x31\xdf\x42\x3f\x03\x31\x0c\x23\x7e\x6a\x22\xbc\x21\x9d\xb9\x49\xa5\x58\x3a\x1b\x3a\x77\xa1\xaf\xbd\xc6\xfc\x62\x06\xba\x99\x3b\x41\x01\xbf\x98\x11\xf6\xa3\x55\xf7\x75\x84\x2f\xb3\xb2\x54\xe4\x65\x7b\xb5\x4a\x23\x58\xe0\x7a\x1a\xd2\x75\x96\xd7\x37\x76\x0e\x7e\x1b\xb5\x56\xb7\xe9\xf5\x28\xa4\x03\x3a\xf4\xc7\x8e\xf9\xf1\xa6\x3d\x39\x54\x75\x74\xae\xee\xc4\x61\x42\xbf\x71\xa1\x7e\xa6\xcf\x0e\xe6\x83\x9e\xa2\x5d\x93\xe1\xaf\x51\x48\x1a\xfc\xae\x69\xe2\xbc\xc9\x1b\xb5\xc9\x86\x59\x18\x87\x34\x01\x6a\x68\xd2\xbb\x03\x87\xad\x78\x38\x07\x9b\xf3\x8b\xcd\xef\xcf\x51\x1a\xd9\x6b\x75\x1b\xf6\x73\x94\x46\x21\x07\x69\x63\xde\x46\x69\x64\xb7\x58\x3d\x26\xeb\xcc\xa7\x0d\xeb\xe2\x90\x34\xac\x8b\x0e\xca\xb0\x2e\x3a\x08\x83\x09\xb4\x74\x60\x5d\x04\x64\x61\x5d\x74\x53\x85\x75\x61\x97\x7f\x2b\xf4\x90\x54\xa8\xaa\x58\xa2\xe0\x42\x83\xc5\xed\x53\x84\x70\x71\x07\x04\x41\xe5\x14\x10\x04\x3b\x2d\xd6\x45\x8b\x1e\x04\xb3\xe8\xb3\x04\xe1\xae\x54\xfe\x90\xde\x4d\x34\xd6\x45\x40\x33\xd6\x45\x40\x32\xd6\xc5\x1d\x14\xc3\x8b\x30\x04\x03\xc6\xd1\x2c\x86\x03\x6a\x71\x18\xd7\x0c\xf4\x21\xbd\x58\x17\x1d\xe4\x62\x5d\x1c\x4c\xcc\x50\x2a\x60\x07\xcb\x6b\x6a\xfb\x7e\xde\x0e\xfd\xdd\x54\xc7\xc4\xb6\x89\x8e\xbf\x61\xb4\x77\x97\x83\xd9\xe1\x93\xa2\x99\xa1\x45\x38\xd2\x84\x28\x9a\xc3\x0a\x30\xbb\x31\xb9\x9e\x06\xcb\x21\xf5\xf7\x4d\xfc\x76\xc4\x45\xb5\xce\x4a\xf6\x87\x01\x03\x25\x87\x8a\xd7\x9e\xf4\xb2\x3a\x62\xfc\x88\x6a\xcb\xa3\x96\x44\xb7\x6a\xd4\xd9\x14\x7f\xad\x59\x39\xc5\x65\xed\xbc\xba\xee\x92\x82\xee\x32\x89\x64\x96\xaf\x90\xd5\xcf\xa8\x10\x52\xbc\x1e\xe3\x5b\xc0\xb8\x89\x46\xa3\x91\x06\x29\xd1\x4b\xf3\x08\xf2\xb3\x29\xf6\x8d\x22\xfd\x15\x18\xa0\x01\xf7\x1a\x1d\x45\x08\x17\x70\xed\x0b\xc8\x6a\x87\xb0\x6a\xb8\xee\x09\x42\x98\xe3\x61\xa7\x49\x4d\xd8\xe8\x9f\x82\x71\xfd\x71\x46\x38\x4a\x21\xcc\x42\xdf\x89\xc1\x04\x05\x09\xa0\x62\xd6\x3c\x5c\xce\x6a\x68\xe4\x16\xc4\x7a\xdb\x3e\xc9\x0e\x39\xcf\x1f\x78\x2e\x78\xcd\x6a\x49\xb9\x3c\x5a\x30\x5e\x30\x7e\x55\x1f\x2d\x45\x05\x7c\xa7\x56\x69\x51\xf9\x90\x6c\xef\x35\xd5\xb5\xb0\xd4\xa2\x62\x3a\x2b\xe7\x44\xce\x4a\xa7\x01\x41\xb5\xb0\x74\xa5\x38\xfd\x52\x88\x0f\xdb\xcd\x9f\xe9\x4d\x87\x40\x5c\xf7\x52\x22\xb5\x8e\x35\x02\xcd\xa2\xa9\xd4\x0a\x46\x14\x73\x94\xca\x99\x51\x41\x99\x10\x42\x18\xb2\xc6\x77\x02\x8e\xfa\x91\x37\x16\x4d\xe4\x7a\x5b\x4a\x16\x59\xb4\x81\x3e\x61\x71\x5c\x25\xcc\x2a\xd8\x44\x1a\x4d\xa8\x88\x34\x28\x8e\x37\xf0\x5a\xfb\x68\xa6\x31\xd4\xb4\x90\x7b\x1e\xf5\xc9\x5b\x78\xf7\x74\xa0\xac\x76\xbe\xae\x65\x98\x85\x15\xb1\xaf\xb8\x76\xd5\xd0\x44\x69\x8f\x5c\x21\xba\x5e\x90\xa0\x03\x66\xef\x30\x97\x99\x98\x3b\xd7\x5e\x19\x72\x50\x1b\xfb\x3d\xde\xa8\xae\x66\xf5\x6b\x73\x78\x08\xbb\xdb\x2e\x93\x0e\xad\x21\x9a\xfe\x5d\xcc\x9c\x83\x74\x3b\x80\xb0\xa4\x23\x30\x35\x56\x84\xd3\xfc\x02\xe2\x60\x7e\xbf\x16\x85\xfa\xb5\xc7\x6b\x73\x9a\x7b\x93\xad\x3b\x34\x12\xf2\x38\x3e\x79\x48\x42\x07\xf7\xea\x0c\xdf\x00\x8e\xeb\xfb\xf0\xa0\x12\x98\x93\xaa\xe7\xe1\x41\xf5\x09\xb7\x4e\xde\xbf\xab\xb2\xcd\x0a\x9c\xbe\x27\xd6\xe9\x7b\x1c\x43\x15\xb5\x3b\x12\x6e\xcf\x45\x1c\xe1\xe4\xfd\xd4\xf9\x82\x4f\x9d\xbb\x78\x14\xc7\xba\x75\xee\x03\x73\x70\xb2\x5f\x98\x74\x69\xe3\x47\x5e\x7d\xb1\x2e\xbc\x0f\xe0\x60\xc5\x11\xee\x83\xc5\x08\xe0\x49\xe8\x8a\xe8\x1e\x72\x09\xed\x89\x8b\x23\xcc\x91\x77\xd2\xbd\xf6\x2d\x49\x0f\xc7\x64\x09\xea\x37\x74\xff\x16\x0e\xed\x3f\xd3\x4f\xf2\x59\x45\xb3\xc3\xce\x4d\x24\x91\xd3\x97\x22\x91\x28\xbd\xdd\xa3\x11\x18\x5a\x11\xaa\xff\xe3\xbe\x1c\x59\x85\x45\xc0\x2c\x32\x3a\x88\xa0\xe3\x67\x23\x48\x13\xae\x1a\x33\xda\x34\xf6\x2d\xea\x9b\xe0\x35\x09\xa2\x49\x10\x6b\xfd\x06\xc8\x91\x53\x6a\xb4\x82\x8e\x17\x02\xbc\xad\xb9\x70\x52\x81\x42\xa2\x35\x41\xbe\x0a\x6d\x5b\x9c\x4a\x24\x02\xc7\xfc\x0e\x52\x7c\x21\x8a\x9b\xbd\x67\x87\x8b\x6e\x4d\x33\x09\x40\x40\x68\x23\x32\xd0\xf9\xa2\xa3\xa5\xa8\xd6\x71\x9c\x7c\xc7\xcc\x6f\x1c\xd5\xdb\xc5\x9a\xc9\x08\xc3\x88\x69\x4d\xe0\x77\x10\xf4\x9a\xca\x95\x28\x9e\x95\x82\x37\x7a\x69\xe6\x23\xa1\xc8\x2c\x24\xea\xc9\xea\xc6\x2c\x48\x1b\x44\xbc\x2b\x1f\x9e\x80\xef\x56\x1d\x2e\xdc\x4f\x3f\x34\xdb\xef\x73\xf0\x18\xf2\x9d\x40\xb7\xfb\xbd\x1c\x2d\x19\x67\xf5\x0a\x0c\xea\x7c\xd1\x90\x1c\x29\xfe\x83\x70\x0c\xda\xa3\x87\xe3\xee\x29\xc8\x83\xe3\x97\xae\x14\x41\x38\xab\xdf\x64\x6f\x30\x07\xbd\xf4\x4d\x56\x51\x2e\xdf\x88\x82\x1a\x77\x5d\x06\x99\x6b\x74\x60\x17\x99\x68\xef\x87\x60\x19\x61\x24\x76\xda\x30\xc4\xf4\xec\x5f\x3a\x7b\x36\xb2\x95\xf0\xb5\x2f\x55\x2a\xd3\x0b\xda\xab\x63\xf3\x4e\x04\x42\xfb\xfd\x61\x41\x5c\x70\x1a\x19\xc8\x94\xb7\xa1\xe8\x2c\x68\x84\xbe\xb4\xd5\x3c\x60\x22\x31\x1d\x71\xfa\x49\xbe\x63\x8b\x92\xf1\x2b\xb4\x47\x0d\x26\xca\x51\xad\x37\xa3\x1b\x45\xa8\x34\xe9\x7e\x27\x2b\x9a\xad\xdb\xca\x90\x2b\x56\x8f\x36\xa2\x76\x98\x17\x95\x24\x63\x8b\x1c\xa1\xbe\x22\x54\xbf\x99\xab\x6f\x45\x06\x9f\x60\x07\x60\xac\xa5\x43\x3f\xda\xef\x9b\x20\x98\x9c\x36\xa7\xd2\x9e\x78\xc8\x78\xdf\xbb\xe1\x3e\xa0\x3c\x15\xe5\x5d\xc6\xa1\x1b\x51\x3f\x25\x5e\x4d\xcc\x5e\xb1\xc7\xf5\xbd\xdf\x18\xf8\x0e\x57\xe6\x1e\x6f\x28\xfd\x70\xd7\x07\x26\x6b\x73\xc3\x6a\xf3\x40\xbb\x9d\x76\x07\xbe\xc7\xaa\x83\xfd\x8f\xd5\x06\x6a\x52\x5d\x1c\x56\x0e\x7d\x3e\xef\xc1\x00\xed\x31\xcd\xee\x84\xec\xbd\xa3\x46\x9d\x10\xb7\x14\x19\x8b\x7d\x62\xc0\x0a\xd4\x6f\x98\x73\x8a\x81\x9b\xea\x7f\x8a\x52\x52\xc5\x68\x00\x34\xbb\xa9\xe1\x60\x60\x73\xc6\x12\xaa\xf3\xeb\x8a\x95\xf4\x3e\xc4\xf9\x8d\xa8\xcf\xe1\x07\xcd\x64\x42\xd1\xb9\x03\xbd\x72\x83\xa5\x33\x02\x94\xb9\xb4\xe3\x7a\x98\x36\xf9\x3c\x98\x5d\xd6\x60\xff\x38\x9e\x1b\x5e\xf3\xbe\xa6\x03\xce\x8b\x7d\xeb\xb5\x4b\xa5\x7b\xec\x94\x47\x0f\xbc\xc8\x7b\x33\x3b\x9c\x42\xf0\xc5\x67\x86\xc0\x9a\x96\x9a\x15\x60\x47\x41\x3e\x1d\x4e\x50\x7b\xd2\x49\x80\xd0\x5f\x64\xf9\x87\x96\x10\xd8\xa6\x18\x12\xba\xc7\x5a\x52\x7a\xd7\x5c\x0c\x16\xd4\x45\xb3\x20\x2d\x88\x49\x7b\x75\x2d\x85\xdf\x6d\xb8\xf9\x20\x58\xb1\x1d\x8b\xb5\x1d\x04\xd9\xa1\x3b\x57\xb5\xb1\x60\xe9\xfa\x68\x98\x84\x8b\x6d\xda\x55\x27\x17\x1b\xd4\x4b\x03\xb0\xea\x73\x5e\x0b\xc5\xa0\xd1\x41\x09\x73\x73\xe0\x70\x2e\x8f\xff\x70\xf9\xe0\xd4\x2a\xed\x30\x0b\x3a\x40\xcf\x77\x98\xab\xfe\x14\xd1\x67\x12\x37\x3d\x8c\x8f\x2c\xda\x28\x29\xc4\x31\xd7\xf3\xe8\xe9\xd8\xba\x17\x8a\xe3\xfe\xa4\x4f\x1a\x6c\x1a\x45\x13\x08\xd7\x2a\x31\xda\xdb\x11\xd7\x06\xe8\x8c\x74\x98\x89\x55\x6a\x55\x8b\x57\xe2\x23\xad\x9e\x67\x35\x4d\x50\x4a\xf7\x80\x7b\x1f\x2c\xa1\x7a\xbb\xa8\x65\xe5\xf2\xc7\xd4\x99\x28\x13\xc2\x1a\xc5\xfb\x8e\x8a\xb8\x94\x30\xa1\xf3\x6d\x55\xdd\x63\xbf\x7f\xd8\x0b\xde\xfc\x53\x1d\xb2\xc7\x2b\x56\xd0\x6f\x59\x55\xcb\xb6\x64\xd1\xed\x3e\x6e\x78\x06\x84\x02\xdb\x61\x4b\x48\xd0\x7e\xc9\x78\x56\x96\x37\xad\x84\x6a\x2d\x19\xcd\xd4\x05\x27\x63\x7c\xa5\x36\x39\xb5\xff\x6b\x24\xd4\xae\x2d\x4e\x7d\x5b\x93\xd9\xdc\x4c\x01\x50\x7f\x77\x70\x14\x76\x8f\x63\x05\x19\x0c\x16\x7c\xdf\x63\x22\xb9\xe2\x08\x5f\x79\x5b\xd5\x08\xb0\x70\x49\xb8\x13\x68\x4c\x23\xfa\x69\x53\xb2\x9c\xc9\xf2\xe6\xb9\x4a\x43\x8b\x10\x5a\x43\xe4\xe0\x9e\x93\x50\xed\xc3\x78\x5b\xbd\xdd\x00\x19\x89\xe3\x6f\xc0\x40\x94\x0b\x03\x00\x01\x25\x44\x28\x00\xda\x03\x8d\x2a\xd4\xab\xc0\xa5\xa8\x9f\x0c\x6b\x4c\x6b\x5c\x8d\xa4\x40\xee\x68\xaa\x1d\x96\x63\xa6\xff\x99\x03\x97\x6b\x7f\xe3\xb4\x42\xd8\xd3\x56\x13\xa9\x4e\x59\x35\xf9\xc4\x93\x6c\xb4\x56\xdd\x58\x80\x11\x95\x06\xd4\xe8\x51\x8b\xdf\x94\x8b\xb2\xcc\x36\x35\x2d\xa6\xe0\x6b\xf5\x19\x4b\x32\x64\x5d\xad\xa6\x60\x61\x00\x3c\x6e\x3d\x92\x02\x64\xb6\x90\xc0\xc2\xba\xd4\x16\xc1\x87\x9b\x70\x84\x83\xc2\xc8\xb3\x76\xe9\xb5\x65\xb2\xed\xa7\x61\x25\xe2\xb8\xff\x3d\xf7\xc0\x19\x51\x1c\xd3\x38\xfe\xc4\x92\x0c\xb7\xfc\xea\x68\x53\x99\x83\xaf\xbb\x2d\x8b\x51\x03\xbd\x7e\x4f\xe7\x6d\xc9\x1f\x3c\x09\xfa\x0f\xe1\x92\xfc\x90\x6c\x51\xaf\x7c\xda\xa8\x7d\xb5\xfd\xf4\x1e\xc4\x90\x2d\xbe\x23\x35\x29\x0f\x63\x1a\xff\xbd\x68\xef\x8e\x89\x1d\x4d\x03\x3d\x7b\x8e\xd9\xc0\xfa\x13\xf1\x1b\x61\x19\xb3\x83\x99\x4b\xfa\x26\x26\x93\x62\xcd\x72\x93\xad\x0f\xda\x65\x89\x85\x1f\x06\x66\x9d\x71\xfc\x67\x23\xae\x55\x9c\xb4\x75\x81\x0b\x83\x59\x99\xdc\x23\xac\x17\x1a\xc2\x32\x8e\xbf\x87\xc9\xaf\x29\x05\x30\xb8\xa6\x30\xfd\xa2\x97\x1b\x48\x4e\x83\x55\xa8\xd6\x03\xe9\x54\x4d\xec\x39\xc0\xb0\x68\x21\xc4\x07\x55\x70\x64\x78\x41\xa9\x8d\x5f\x28\x99\xf8\x78\x0f\xe3\x73\xd6\x39\xbc\x8d\xb7\xb2\x66\x6c\xd9\x1c\x67\x6a\x6d\x88\x8e\xb5\xe1\xee\x5c\x32\x3b\xbd\x2b\x70\x5f\x37\x15\xe9\x33\x96\x08\x35\xc7\x35\x1e\xd5\x70\x42\x08\xf5\x9c\x1a\x78\x1f\xc2\x6a\xe1\xed\xcf\xa4\x40\x38\xf8\xc6\x81\xdd\x55\x71\xec\x3b\xe9\x6c\xf7\x92\xc1\x1d\xf0\xa9\x95\x47\x91\x80\xa6\x0c\x41\x4d\x13\x37\x08\xde\x0d\xad\x52\xab\xbd\x8a\xe3\xdf\x64\x52\xe1\x36\x5e\x90\x16\xdb\x73\x8a\x61\x69\x53\xab\xd2\x42\xae\x55\x62\x8d\xc0\xa1\x9a\xf2\x12\x1c\xe5\x5a\x3c\xa3\xda\xde\xa6\xda\xc9\xdb\x0d\x74\xd4\x7c\xd0\x76\x42\x8d\x61\x99\x6b\x84\x53\x64\x3d\xe1\x4a\xe7\xc5\xca\x90\x32\xf3\xde\x93\x0e\x23\xca\x2a\x9f\xd6\xe4\x2b\x75\x96\x1a\x66\xbd\x1a\xc8\x03\x07\xc5\x01\x70\xe9\x5b\x1b\x8d\xee\xa0\xff\x34\x78\x01\x14\xde\x32\xd4\xeb\x1f\xcc\x18\x7f\x8d\xac\x0f\x9c\x6f\x58\x97\xf5\x3d\x39\x5a\x67\x37\x0b\xfa\x3d\x2b\x0a\xca\x1d\x04\xfa\x70\xd2\x27\x0b\x91\x74\x45\xea\xd9\xb5\xdb\xd9\xc8\x5f\xf8\xca\x8f\xbe\x33\xc2\x73\x1e\xad\xc1\x90\xbc\x1a\x5b\x6b\xa1\xb0\xb5\x1a\xc2\xa1\xab\xb5\xde\xa7\xc6\x3f\xd1\x42\x78\x81\x98\x22\x70\x1e\xf5\x2f\xf6\xc9\x79\x67\xbb\x9b\x86\x7d\x7f\x6f\xb3\xf6\x3d\xb5\xf7\x37\xd7\x4b\xef\x79\xdb\xb7\x35\x40\x9c\xae\x60\x43\xee\xd0\x69\xb6\x29\x13\x4e\x5e\x8a\x84\x23\x64\xd2\x12\x73\x3d\x27\xc8\x2c\xc8\x52\x51\x00\x31\x1b\xab\x4d\x92\x1b\x74\xaf\x37\x9e\x67\x95\xf7\xac\x6d\xec\x50\x83\xbd\x5d\x93\x92\xd4\xa3\xbc\x14\x9c\xaa\xdf\x49\x7f\x8c\x10\x16\xba\x3d\x50\xcc\x2b\xed\x94\x52\xff\xaf\x10\x14\x89\x3c\x27\x40\xe3\xf3\xed\x05\x2c\xb7\x0f\xb4\x68\x68\xd5\x56\x5f\xf9\xeb\xe0\xd9\x76\x3e\x62\xf5\x8f\x40\x3f\xad\xb7\xd4\x8c\x5c\x8b\x44\x03\xfb\x72\xfa\xf1\xe8\x23\x07\xdf\x7a\x7b\xaf\x5d\xc6\x5e\x6a\xad\xb9\x13\x33\x34\xb6\xc3\xfe\x2c\xb5\xf7\xcb\xf7\x1c\xf9\x9f\xe8\xfe\x51\x19\x5e\x71\xc0\x06\xc5\x19\xd9\x68\xc3\xa5\x9e\xee\x79\xd5\xa5\x58\x00\xe2\x50\xf6\x74\xbc\xdb\x8d\x09\xc9\x0c\xe3\x2b\x34\x6d\xff\x75\x45\xf9\xcb\xf5\x46\xde\xd8\xb2\x04\x10\x0f\xab\x7a\x53\xfc\xca\x60\xbb\x14\xcd\xa6\xa6\x08\x81\xf0\x3b\xb4\x41\x9e\x99\x85\xdf\xcd\x43\x7c\x0e\x03\xb6\xa6\x16\x3d\xdc\x83\xbf\x16\xdb\x9a\x82\x5d\x76\xbd\xdb\xf9\x39\x7e\x31\x24\x3c\x37\x37\x31\x1a\x4e\x3b\x09\xf2\x68\x62\x88\x19\x65\xd7\x02\x98\x97\xdf\xea\x0b\x6e\xad\x20\x8f\x2b\x2c\xd0\x6e\x27\x8d\xfb\xfb\x0a\xfe\xc7\x31\xa4\xa9\xfc\x34\x5d\x52\x0c\x55\x0e\xe3\x57\x47\x2e\xff\x23\xbd\xdd\x1e\x6d\xb2\x4a\x32\xc5\x38\x1f\x69\xb7\x42\xc0\xd5\x1c\x65\xfc\x88\x7e\x62\x35\x7c\x22\x38\x8d\x50\xef\x1d\xe9\x8f\xf7\x62\x94\x15\xc5\xcf\xe2\x7b\x6d\xae\x1e\xc7\x3f\x31\xe7\xc7\x5d\x02\xae\xb2\x75\xe0\x0e\x9b\xb9\x62\xb3\x23\xb8\xc1\xa2\x25\x7e\x93\xbd\x31\x40\xbf\x78\x6b\x9d\x7b\x96\xe0\xad\x52\xcf\x2a\x80\x72\xda\x9a\x86\x0c\x5a\x90\x1a\x65\x1c\x8b\x80\x19\x2b\xef\x00\xf3\xfb\x43\x25\x27\xa4\x6c\xb3\x42\x71\x9c\xd4\xb0\x6d\x04\xd9\x6c\xfb\xa6\x26\x40\xe9\xc1\xac\xa8\x6d\xb3\xee\xb3\x9c\xc1\xdb\x34\x78\x73\x76\x7e\x72\x8e\xd2\x99\x9c\x63\xa9\x63\x2b\x6f\x7f\x50\xd4\x54\x31\x5a\xf4\xe3\xd1\x5b\xb5\xb6\xb6\xc4\x94\x3e\x95\xa3\x7c\x05\xe8\x94\x2a\x4c\xf7\xc0\xb4\xb2\x61\xe0\x92\x62\xbb\x47\xad\xba\x9b\x1e\x33\x3d\xd9\xd1\x6d\x12\xdd\x7e\xaf\x9b\x01\xad\x93\x78\x8c\x4c\x26\x6a\x49\xbd\xe5\xa0\xc4\x13\xc7\xdf\xb1\x44\xe0\x68\x01\xd7\x84\xda\x2e\xee\x25\x6f\x01\x8f\xa0\x5b\xe1\x78\x2c\xc8\xa1\x41\x6a\x4d\x5e\xaa\x95\x96\x50\x07\x6e\x50\x08\x6e\x8f\x85\xbb\x1d\x0d\x30\x0f\x5c\x84\x76\x98\xab\x32\x34\x13\x29\x69\x37\x2e\x11\xf6\x80\x85\x85\xe1\x2f\x61\xf4\x4a\x58\x15\xda\xff\x7d\xf7\xf6\x1f\xae\x21\x5a\x25\x25\x6e\x75\x51\xa3\x93\xa9\x5a\x95\xd5\xf5\x9b\x6c\x4d\xd5\xda\x06\xa8\x28\xf5\xc3\xd8\x57\xde\xe8\x37\xca\x0b\xf7\x3b\xaf\x6b\xcf\xfd\xaa\xce\xf8\x3c\xbf\x30\x63\x76\x9e\x0f\x06\x48\xaa\x22\x73\x7b\xce\xe9\x09\xc7\x1e\xff\x99\x26\x25\xb0\xbc\xf8\xef\x2c\x29\x2d\xbb\xfb\xac\x28\x14\xb3\x5b\x62\xe1\x7c\x2c\x09\x38\xd1\x7f\x84\xdb\x58\xd8\x66\xee\x3f\xae\xae\xcd\xa6\x67\xaf\x9e\x34\xe4\x2a\x91\x8d\xc0\x17\xf4\x29\xa9\xef\x86\x90\xce\xaa\xb9\xe1\x9e\x61\xaf\xf5\x44\x2f\x2f\x03\xa0\x19\x60\x00\x55\xd9\xb5\x67\x51\x05\x60\x1d\xa3\xbc\x64\x9b\x1f\x45\x7d\x68\x2c\xd5\x0d\x59\x63\x8a\x0b\xfc\xfe\xbe\x6b\x5d\x1e\x6a\x98\x4c\x0f\x1e\xd3\x1a\x83\xa8\x15\xc5\xc9\xac\xb2\xad\x53\xfd\x38\xef\xbd\x67\x49\x10\x12\x16\xdc\x18\x3c\xa3\x36\x2b\x5f\xd9\x4e\xeb\xd2\xca\xb6\x71\x33\x36\x3f\x37\x4e\xb1\xd4\x2c\x54\x23\x07\x13\xd3\x74\x1b\x2c\xd7\x26\x23\xc3\xf3\xb0\xe1\x10\x4f\x10\xf2\x5d\x4f\xbf\x75\x57\x45\xde\x70\xd9\xd1\x02\x07\xcc\xf6\xb2\x49\x90\xaa\xf9\xec\x93\x87\x8a\x87\xee\x19\xca\x96\xc0\x9e\xdb\x02\x1a\x33\x67\xee\x55\xe6\x19\x6f\x79\xa2\x36\x0a\xd8\x5e\x96\x1c\xd1\x19\x9f\x1b\x60\xd5\xdd\x2e\xa9\x3c\x76\x4a\xc5\xb8\x0b\x2b\xaf\xb2\x3f\x37\x95\x95\xa3\xa5\x22\x5a\x6d\xe7\x37\x15\xf9\x96\x3a\xef\xfc\xfa\x28\x10\xc7\xe0\x5e\xd9\x0f\x0a\x8e\x4c\xdc\x7e\x22\x45\xeb\x03\x1b\xe0\x27\xd7\x26\xcc\x71\xec\xbc\xbf\x1f\x79\xf6\x64\xa6\x8c\x7c\x85\x05\x78\xd7\x55\xbf\x32\x32\x26\xc0\x89\xe8\xcb\x11\x09\x47\xa8\xfa\xc0\x06\x3b\xe8\x7f\x6e\xd4\xf9\x69\xc7\x11\x90\xea\x93\x9f\x39\xf6\x55\x1e\x9a\x3f\x14\xb0\xdb\x25\xd9\x88\xf1\xbc\xdc\xd6\xec\x1a\x14\x51\xa6\x3a\xe2\x82\xc8\xd4\xfc\x92\x48\x11\x19\x98\x13\xe0\xbc\xd6\x3b\x9c\x66\xf6\x64\xda\xaf\x76\xbb\xbe\x2d\xc4\x63\x20\x90\xf3\xf2\x66\x0a\x05\x90\x63\xaf\x48\xd0\x6c\x99\xaa\xf0\xa7\x50\xa2\x14\x4f\x25\x3a\x4f\x38\xb8\xc4\x6e\x86\xd8\x6c\x4f\x99\x71\x14\x8e\x8d\x3b\x41\x95\x1e\x39\x9b\xe2\x23\xbe\x07\x70\xda\x0c\xe1\xed\xff\x2d\x3d\xf6\x45\x95\xff\xb2\xce\xfa\x92\xbe\xfa\xf2\x01\xba\xa7\xc3\x5c\x4f\xa9\xa4\x43\x89\x9b\xb6\x34\x5d\x38\x94\x61\x27\x2a\xc6\x37\x43\xb8\x24\x13\xc5\x0c\x78\x16\x8d\x38\x57\xdc\xb8\x0e\xb2\x9a\xf1\x83\xa4\x9c\xb2\x54\x7b\x35\x6f\xf6\xa1\x25\x19\x9f\x2f\x2f\xbc\x4b\x89\xa5\x07\xcc\x9d\x14\xa4\x9e\x2d\xe7\xe0\x1a\x3e\x59\x91\x4f\x3c\xd9\xe2\xc2\x74\x08\x42\xd3\x32\x8e\x93\x42\x11\x1e\x9d\x7a\xe5\xea\xaa\x7e\x0d\x72\x94\x42\x24\xdb\x83\x92\x8c\x2a\x50\x17\xb6\x0d\x0a\x53\x95\x28\xf0\xaa\xb9\xa3\x48\x0a\xb2\x35\x85\x9a\xfc\x07\x24\xb7\xb7\x73\x85\xbe\xe1\xd0\x95\xa9\xbd\xca\xec\x76\x89\x8e\x23\x39\x56\xf5\x52\xa7\x3b\xff\x28\x57\x18\x57\xaa\x47\x3a\xd5\xe0\xce\x64\xfb\x1a\xb8\xbd\x0f\x3c\xa9\x11\xc2\x5b\x60\xf3\x54\xd0\x56\x05\x6d\x91\xe6\x42\x37\xc4\x28\xff\xf4\x4b\xdd\x82\x35\xbe\x0e\x47\x60\x78\xac\xa2\xaf\x9f\x8e\xe3\xb8\xf6\xda\x1e\x74\xb4\xb9\x70\x9c\x2d\xe7\xba\xad\xda\xc3\xf9\xc1\xdc\x80\x04\xba\x9d\x5a\x30\xa1\xf9\xba\x5e\x93\xeb\x35\x64\xb7\x31\x66\x3e\xa8\x67\x7e\x6d\x1d\x53\xb0\x69\x88\xed\x87\xfb\x76\xcd\xc1\x40\xfa\xbb\xa6\xf1\xa0\x51\x99\xeb\xa6\xca\xac\x97\x0a\xaa\x0b\x47\x2c\xbb\x85\xb5\x4e\x5a\xa0\xb7\xa1\xf7\x34\x09\x7b\xda\xde\x6d\xe4\xba\xa4\x29\xd5\x78\xea\xae\x5a\xaf\x03\x60\xf0\x8e\x7b\x37\x22\x67\x70\x04\xab\xdf\x47\x03\x3a\x62\x45\x0b\x3a\x07\xc8\x75\x73\x39\x3d\x06\xc7\x24\x60\x1b\xe4\x0d\x0a\xec\x4f\xc6\xd7\xc7\x1b\x96\x54\x6a\x3f\x72\x1b\x12\xdb\xeb\x73\x31\x27\x66\x3f\x6a\x15\x00\xaf\xbc\xb9\x54\x6b\x33\x05\x87\x14\xaa\xd2\x14\x8a\xcf\xd8\xdc\x5c\x57\x65\x88\xa6\xf6\xbb\x9a\x8c\xcf\xeb\x8b\xac\xf9\xae\x6e\x86\x65\x4b\xb2\x59\x3d\xc7\x25\x19\x9f\x97\xce\xec\xe2\x7c\x30\x28\xd5\x29\x5c\xcc\xca\xb9\xdb\xa7\xb7\x76\x05\x58\xf5\xb8\x23\xda\x13\x6e\xf8\x61\xc6\x67\x6a\x2b\x9e\xb1\x39\xc9\x3c\x47\x9c\xae\xe3\x7f\xf4\x64\x92\xb4\xbd\x25\xfa\x7b\xfd\xa1\x3b\x6a\xed\x87\x5a\x8f\x7f\x73\xb5\x93\x50\xd4\x0b\x4f\x3e\x30\xd2\x4d\x89\xff\xf4\xb6\xfb\x2f\xce\x3f\x38\x08\xb5\xf2\x97\x5e\xe6\xcf\x43\xb6\x31\xa4\xc8\xc3\x49\x3a\x6e\x92\xfe\x74\x47\x52\xbd\x5b\x04\x49\x7f\x68\x39\x27\xf7\xaf\xa0\x86\x32\x78\x05\x37\xbf\x7d\x52\xb5\x5d\xca\x52\x23\x61\xc1\xc0\x4f\xe8\x9f\x42\x71\x10\xda\x76\x08\x6b\xe7\xce\x68\xb7\x83\x16\x0c\x9f\x73\x03\xac\x62\x5d\xdf\x0c\x85\x06\xeb\xd1\x9f\x48\x81\x99\xa2\xca\xbb\x1d\xb4\x62\xf8\x13\x24\xb7\x1a\x6b\xea\x98\xcf\x8a\xa1\x5a\x26\x4d\x1b\x5e\xb4\x0c\xec\xdf\xa9\x45\xda\x1a\x6f\xee\xf6\x05\x86\xad\x47\x58\x4f\x1a\x91\x30\x0d\x04\xe5\x16\x7d\x73\xe6\xb2\xfe\x06\xa7\xba\x1d\x29\xd4\xce\xec\xa1\x3f\x70\xb5\xdd\xdb\x89\x7a\x31\x06\xf7\x89\xc4\x05\x74\x70\x84\x6f\xfc\xa1\x81\x8a\xf7\xc7\x1e\xe7\xff\xea\x30\x7a\xe2\x45\x7f\x7b\xe8\xea\x8f\x68\xde\x0f\xe1\x4c\xb5\x5b\xb4\xdb\x9d\xa1\xfb\x56\x65\xb3\x22\x41\xdf\xf3\xa0\xf5\x3a\x45\xe9\xd6\xa2\x1e\xde\x31\xc2\xb9\x1a\xac\xd2\x88\xcf\xf4\xd0\xba\xf5\xaa\x46\x98\x21\xbc\xd4\x49\xa4\xc0\x5c\x0f\x66\x93\xe0\x27\x95\x40\xfb\x7c\xcc\x9f\x92\x71\x1c\x2f\x2f\xc8\x78\xb7\xcb\x2f\xe0\xf7\x53\x02\xfd\xa8\xdf\x9a\x4a\x85\xb3\x38\x8e\x59\x6b\x09\xd8\xd2\x2a\xf4\x94\x8c\x53\xef\x6d\x8c\x76\x3b\x5d\xcc\xbf\x33\x33\x68\x1d\x47\x17\x36\x3b\xfb\x3e\x76\x5e\x27\xfb\x63\xff\x44\xf3\x47\xb8\x01\x9d\x4b\x02\xa3\x7d\x8e\xa8\x5d\x18\xc3\x06\xd8\xa1\xd1\x78\x75\xdf\xff\x12\xac\x45\x3b\xae\x9c\xfc\x01\xa0\xc1\x76\x2e\x11\xc2\xa7\x32\x05\x18\x87\xe6\xd3\x6f\x3c\xca\xf3\x34\x38\x76\x3a\x4c\x27\x1f\x7e\xc2\xee\x01\x70\x11\xc2\xbd\x44\x9f\xc5\xa3\xb0\xd5\x80\xf2\x07\x93\xa6\x06\xdf\x07\x95\x7f\x17\xc7\xb2\x3d\x15\xab\x03\xe6\x37\xd8\x5a\xd8\x32\x49\x38\xec\x2c\x87\xab\xd0\xe3\xdc\x34\x51\x71\xfd\xaf\xf7\x2e\xfb\x41\x73\x85\x18\xc7\x63\x9b\x36\x8e\xf9\xc1\xb0\xeb\x4b\xc7\xbf\x5a\x00\x7b\x6f\x38\x5d\x83\xfe\xea\x33\xee\xba\x6c\x10\x14\x9b\x83\x65\x15\x2c\x09\xe8\x20\xdb\x37\xf0\xa5\x06\x53\xc0\x9f\xb8\x81\x55\x08\x8e\x70\x95\xe3\xee\x14\x0b\x59\xdd\x35\x2b\x55\x79\x2d\xfe\xb7\x69\x78\x9b\x9e\x05\xfd\xed\xd3\x36\xd5\xb1\x8a\x34\x7b\xd1\x77\x90\xba\x3e\xeb\xea\x48\x16\x30\x47\xa6\x2b\x18\x1c\x45\xd4\xd3\x72\x51\x6a\xcd\xb2\xce\x8e\x06\xfc\xac\xae\x16\x22\x37\x04\xcc\x1b\x02\x26\x92\x8f\x1c\xe1\x8f\xff\xb2\xe6\xc0\x9d\x72\xd9\x5e\xa3\x47\x35\x3e\x37\xfe\x94\x5b\x37\x1e\x83\x01\x45\x7e\x38\x78\x55\xd4\x77\x7c\xbd\x96\xfa\x00\xda\xef\xc3\x4a\x76\x08\x56\x03\x1d\x27\x73\x23\x03\x13\x06\xbc\xfb\xc3\x9a\xfc\x9d\x93\xb7\xa3\x57\x80\x2f\xac\xfa\xbc\xeb\xd8\xe8\xad\x9c\x23\xc6\x8f\x2a\x54\xb5\x2d\x14\xc0\x13\xb1\x2a\x65\xc6\xe7\x04\xb8\xbf\x5e\x5b\x33\x83\x8b\x82\x12\xe9\xdd\x68\xfd\xea\x8a\xf8\xc0\x12\x89\x2e\x12\xa3\x59\x01\xb7\x90\xa1\xb3\x27\x80\x3a\x0d\x90\xa2\xc1\x27\x1c\xd5\x5c\x7b\xe5\x11\xa2\xaf\xac\xdc\xcb\x2a\xea\x1a\x01\xa3\x63\x46\x8c\x80\xd1\xb2\x65\x46\x5c\x0a\xc3\x69\x13\xe9\x45\xfd\x83\x48\x02\x35\x5e\x4c\xa1\x09\x4e\xb7\x23\xb2\x1e\x69\xd3\xa3\x8a\x96\x80\x84\x7d\x1e\xf5\xe8\xc8\x03\xd8\x56\xbb\xf1\x80\x44\xda\xc1\xcf\x10\x90\x50\x8e\x86\xd1\x40\x1e\xa0\x79\xfb\x78\x32\xd1\xe6\xd3\x39\x58\x41\x3b\x9f\x33\x26\x1b\xed\x56\xea\xc8\xff\x3e\xf4\x2c\x1b\x7c\xff\x93\x3a\xa5\xba\xdb\x76\x9a\xd5\xdb\x8a\xe2\x7f\x8a\x04\x10\x58\xf0\x4c\x37\x66\x6e\x3b\xd0\x3b\x46\x18\xc1\xab\x4e\xe0\x2b\xae\xfa\x7e\x4c\xd5\x22\xf9\x9d\x23\xfc\xfb\xbd\x8b\xa4\x4b\x85\xc6\x09\x1a\xad\x7b\x1d\x2b\xb8\xd6\x3e\xde\xc8\x33\x96\x54\x9e\x40\x9e\xc7\xb1\x0c\xbd\x47\x30\x9f\x95\x65\x48\x2a\xfe\x1b\x72\x50\x24\x3f\xb8\xee\xeb\x49\x77\xe3\x9d\x58\x92\x62\xdc\x49\x1b\xf1\xd7\x57\xdc\xf8\x18\xfa\xc4\x92\xaa\x71\xd7\x34\x06\x6f\x95\xe0\xeb\x4b\x68\x4d\x88\x03\x83\x79\x98\xbc\x15\x1e\x0a\x84\xa5\x56\xd3\x70\x0e\x81\xf6\xa0\x1f\xfc\xfb\x97\x0b\xf3\x57\xc6\x23\x70\xd0\x53\x5e\xaf\xf4\xbc\x54\x8d\x40\x9c\xbb\xda\x0f\x69\x8f\xc7\x71\x02\x6d\xb0\x15\x1f\x70\xd0\xd0\xf8\x4d\x26\x32\xf4\x7d\xd0\xed\x00\xe8\x57\x9e\x68\xcb\x96\x3d\x42\x86\x2e\x7c\x67\xe9\xc2\x01\x45\xd0\xb7\xa2\xf4\x93\x24\x14\xff\x53\xd7\x01\x5b\xe5\x42\x53\xcb\x6a\x6a\x9c\x0e\xa5\x13\x6f\xc5\xff\x66\x8c\xeb\xfd\xab\x5a\x38\x25\x35\xeb\xf7\xcf\xed\xeb\xd5\x73\x0f\x1a\x51\xab\xe6\x3d\x48\xa6\xe9\x3f\x76\x97\xf5\x00\x01\x78\x42\xb2\xc8\xf2\x0f\x57\x95\xd8\xf2\x62\x88\xa6\xc9\xe5\xbb\x01\x7a\x60\x4f\x98\x1a\x2d\x91\x12\xea\x2c\x8f\x2a\xad\xca\x87\x06\x36\xc8\x04\x0c\x2a\x4f\x7b\xcf\x82\xc2\xce\x26\xf3\x69\x64\x5c\x6e\x1b\x6f\x12\xfa\xb7\x51\x54\x91\x33\x3e\x9f\x4a\x4d\xf2\x8e\xe7\xa9\xe7\xbf\x23\x82\x3a\xd6\x28\x1a\xa8\x98\x81\x7a\xfd\x4a\xbd\x22\xa3\x2a\xab\x28\xe4\x6e\x07\xff\x07\x24\x3a\xd2\xc9\x9a\x45\xd8\xf4\xc7\x5f\x7c\x27\x2c\x8b\x32\xe3\x1f\xd4\x90\x34\xe4\xcc\x05\x99\x43\x8d\x87\x1f\x69\xfb\xcd\x43\xa1\x4c\x3c\x97\x9b\x47\x1a\x38\xb2\xc9\x61\xda\x0e\x48\x0c\xc8\x24\x4a\x8d\x26\x75\x53\xad\x3f\x79\xb6\x50\xe1\xe2\x9c\x8c\xf5\xad\x3d\x07\x90\xdb\xf1\xbc\x55\x7c\x85\xa0\x10\xbb\x00\xe9\x08\x90\x64\x9d\xd8\x59\x6a\x2d\x64\xa3\xaf\xea\x04\x2f\x07\x82\x53\x95\xdb\x51\x34\xd0\xd0\xc7\x83\xe8\x68\x99\xb1\x92\x16\x47\x52\x1c\x65\xc5\x75\xc6\x73\x7a\x54\x83\xaa\xfc\x28\xf2\xe6\xd6\xdf\xfc\x4a\xdb\x40\xe6\x81\x1a\xd6\x1a\x46\xce\x68\x40\x52\x5e\xa4\x4b\x50\xbd\xac\x8d\xe7\xa0\x91\xd1\xa5\x4c\x10\x56\xcb\x3a\x15\xda\x1e\xc4\x20\x6d\xd2\xe9\x16\x74\xdf\x44\x41\x71\x8e\xd2\x7c\x0f\xf2\x22\x81\x33\xbd\xcd\xe0\x9a\xe8\xc8\x9e\x24\xaf\x68\x92\x61\xeb\x0e\x15\x97\x8a\x27\xce\x8c\x3c\x4c\x9d\x6d\x6a\xd9\x88\x97\x2b\x75\x92\x51\x2d\xbf\xe1\xea\x44\x41\x3f\x49\x7c\x00\x66\xa3\x6f\xac\x38\xdc\xa5\xcd\xe6\xfa\x2e\x74\xa9\xd5\xdb\x47\xf9\x0a\xc5\x71\x7f\x39\xa2\xa2\x4c\xd0\x39\x32\x8d\x23\xba\x61\x82\xfc\x89\x27\x35\x5e\xe2\x1c\xc0\x16\xb6\xfa\x7a\x83\x81\x6a\x83\xd3\x7f\x9d\x6e\x53\x96\x78\xdd\xf8\x77\xef\x10\x08\xd7\xa4\xe6\xd2\xb6\x1a\xf9\xd0\xed\x66\x89\xe8\x3b\xbf\xa6\xc6\x7e\x92\xa6\xfd\x63\x9c\x6b\x6a\xe0\x9a\xda\xd5\x4a\x5c\x78\x19\xf9\x58\xf0\x71\x3c\x53\x5f\x6b\x40\xe6\x48\xbb\x91\xfd\x33\x4f\xfe\xa2\x4e\xc7\x1c\x61\x81\xce\x9b\x0e\x50\x2b\x69\xa9\xb5\xce\x5d\x5e\x87\x98\xec\xd3\xa4\x26\xfd\x09\xce\xe2\xb8\x62\x9a\x47\xc7\xf0\x11\xd2\xff\x9c\x5f\x56\xbc\x35\x2e\x46\xb6\xe4\xcf\x3c\xf9\x93\x2a\x70\x89\x39\x2e\x54\xa1\xd8\x1c\x5f\x57\xa4\x50\xb4\x45\xcd\xd4\xde\x0a\xc6\x28\x5a\x0f\xa3\x41\xb2\x9d\xae\x06\x6a\xe9\x6f\xd3\x95\xe6\xc3\xfb\xf5\x6e\x97\xf7\xc9\xd6\xc0\xc3\x96\x17\x66\xb0\xce\x11\x4b\x4a\xe2\xbc\x12\xda\xf9\x59\x0e\x1e\xd1\x87\x08\xe7\xa8\x97\x93\xed\x3e\x18\xd8\xbd\xcb\x60\x23\xea\xf3\xd0\x25\x3d\xe4\xa0\x06\x5f\x7f\xdf\x63\xc9\x46\x0d\x7f\x49\x36\xde\xfa\xa6\xac\x6d\xeb\x38\xb3\x2e\x8b\xd4\x14\xfe\x8e\xf2\x39\x16\xe4\x76\xdf\xd3\x93\xc1\xce\x4b\xeb\xe5\x0a\x57\x07\x4e\xa4\x8c\xa0\x0a\x83\xbf\x0e\xe1\xdb\x14\x6a\x07\xbd\xd4\x73\x73\x5a\x66\x37\x1e\x43\xec\x26\x58\x3b\xc9\x2c\x9b\xe3\x2d\x99\xa8\xf9\x13\xd4\x43\x43\xc5\x77\x40\xe6\x37\x37\x62\xdb\xf3\xf2\xc2\x82\xee\x72\xc2\x66\xdb\x79\x8f\x3f\x85\xb3\x86\xe1\x20\xb6\x78\x82\x29\x66\xb3\xed\x60\x32\x57\x73\x68\x3b\x20\xc7\xd8\x1b\x04\x75\x6c\xdd\xc3\x3d\x1b\x5b\x26\xf5\x48\x6c\xb2\xdf\xb7\x14\xb9\xcf\x2b\xbc\x1d\x56\x98\x82\x23\x25\x53\x5d\xc5\xb8\x21\xbc\x25\xd5\xe0\x58\xdf\x97\xeb\xb3\xee\xc5\xf6\xbc\x1a\x90\x63\x7b\x9b\xc2\x66\xd5\x60\x32\xef\xe9\x7f\x24\x11\x53\xa1\xe6\x48\x1a\x45\x68\xd0\xca\x6b\xaf\xfa\xd1\x6e\x19\xb7\x60\x8c\x54\xa7\x0c\x83\xe8\x9c\xd6\xa9\x18\x99\x8d\x0b\x44\xe8\x76\xe7\x9a\x1a\x6f\x9b\xcd\x48\x4b\x16\x38\xd2\xd0\x56\x4d\xf5\x6e\x67\x7f\xcd\xc6\xf3\x3e\x69\x8d\xbd\xed\x37\xa0\x53\xcf\x18\xb8\x71\x64\xc4\xcc\x99\xe0\xb8\x78\xff\x22\xdb\xf2\xc4\x9b\x33\x1c\xa5\x00\xa9\x05\x45\x81\x81\x3b\x58\x94\xe9\x6a\x10\x66\x7e\x60\x36\x32\x4d\x9c\x9a\xb8\xe7\xfa\x95\xb8\x88\x34\x8c\x00\x13\xc0\x20\xa5\x76\x86\x51\x11\x62\x5d\x97\x55\x82\x4b\xa6\x6d\x07\xfd\xf7\xc1\xc0\x41\xd7\x98\xd2\x9b\x7e\xab\x0e\x56\x88\xd7\x14\x71\x1f\x19\x83\x89\x6f\xb4\x19\x88\x00\x72\xc2\x77\xbb\x31\x36\x84\xeb\x2f\x3c\x61\xb8\x42\xe7\x7d\x61\x49\xd6\x9f\x54\x88\x50\x3b\x41\xf0\x95\xe2\xc1\xbf\xe3\x08\x7f\xe7\x73\x9a\xe0\xab\x46\x74\x98\xde\x3d\x63\x46\xe9\x4e\x33\x37\x8c\xdc\xee\x31\x63\x01\x8e\x91\x60\x0d\x20\xb7\x76\x0b\x5a\xff\xdb\x21\xd0\xbf\x27\x3a\x96\x01\x15\x9e\x32\x96\x72\xe6\xb8\x8b\x19\x9d\x2b\xbe\x7b\x46\xe7\xc4\x81\x31\x25\x0f\x2e\xdf\x0d\x1e\x5c\xc1\xb2\xf8\x2a\x8e\x7c\x9d\x83\x8c\xf9\xf7\x37\x8d\x5a\x98\x93\xcb\xe0\x7a\x1a\x6d\xb2\xa2\x60\xfc\x6a\x08\xfe\x55\xd3\xa3\xd1\x64\xf3\x29\xd2\xca\x38\x98\x93\xdb\x4d\x45\x53\xf5\xe1\xa6\xa2\x11\x9e\x55\xa1\x06\x99\x86\x79\xc4\xc6\x47\x58\x5a\xe1\x5c\x94\xe9\x18\x6f\x44\x9d\x8e\x71\xbe\x4e\x29\x06\x73\x77\x30\x7d\xaa\xd3\x44\xec\x76\x35\xe8\xc3\x5c\x51\xa9\x41\xdd\x5b\x1e\xae\xd0\xbe\x27\xed\xb9\xca\x37\xe3\xd7\x5c\x10\x49\xc0\x1b\x87\x9c\xea\x7f\x66\x35\xa4\x63\xd4\xa8\x34\x64\x78\x4b\x98\x89\x9f\xb1\xe1\x64\x9e\xea\x1d\xbf\xc7\x61\x4a\x8c\x31\xd7\x4a\x5d\x1f\x28\x27\x35\xc3\x5f\xf9\x2e\xac\x4c\xb9\xea\xd0\x9d\x91\xd7\x2c\xd9\x22\xed\x69\xc0\x7d\x50\x32\xef\x0d\x83\xfa\xfe\x68\x9d\x6d\xc8\x6c\x8e\x97\x2c\xd9\x62\x8e\x61\xdd\x6f\xb1\xec\x7b\x2e\x72\xe8\x27\x49\x2b\x9e\x95\xaf\x75\xf6\x45\x1c\x3f\x83\xbc\x11\xde\xb6\x57\x54\x18\x60\x69\x0d\x54\xc2\xfc\x26\x7f\x88\x3b\x52\x61\xde\xd0\xa6\x28\x3a\xc8\xbd\xa1\x56\x90\x9d\x7b\xeb\xc8\xd0\xc5\x61\x2f\x9d\xce\x14\x61\xb8\x80\x5b\x67\x1b\xa7\xd0\xaa\xdf\x60\x1f\x1a\x63\xd5\xbf\x66\x32\x8c\xd4\x21\x9a\x17\xda\xae\xf4\xd7\xae\x7e\xd6\xb9\xb1\x69\xe2\x86\x1c\x7a\x13\x32\xc4\x4d\x18\xb8\x5e\x25\xb7\x7b\x94\x26\x61\x4a\xa3\x11\xeb\x05\xf8\xc2\x48\x15\x80\x70\xd2\xca\x27\xfc\x46\x07\x79\x5f\xdd\xee\x35\xd3\x50\xdb\x3b\xf2\xa6\x39\x60\xe0\xa5\x1a\x73\x9e\x3c\xb8\x5c\xe4\xeb\xa1\xcc\x16\x97\x0b\xb3\x90\xcb\x46\xb9\x0a\xed\x76\xe5\xe8\xf7\x2d\xad\x6e\x34\x56\x86\xa8\xe2\xb8\x15\x90\x44\x23\xfd\x7d\x64\x66\x98\x2d\xc3\x65\x42\x22\x9d\x00\x5c\xa8\x0d\x57\x59\xfe\x21\x72\xe7\x98\x3f\x81\xfd\x40\x45\x79\x61\x3d\x02\x39\xb6\x56\xd1\x2c\x8a\xf4\xbf\x26\xb3\xc3\x01\x6f\x25\x38\x1c\x67\xcc\x1b\x1a\x52\x33\x8f\x33\xad\xf1\xd6\x4a\xc2\x74\x07\x19\x38\x36\xbd\xc2\x61\xe1\x19\x9a\x74\x74\x7b\x82\xf7\x0f\xae\xf0\x96\xa1\x54\xe2\x1c\x94\x1f\x3b\xfc\x33\xe2\x25\xe9\x4f\xd4\x21\x25\xb7\x36\x99\xe8\x76\xd1\x98\x7a\xe7\x15\xcd\x24\x7d\x61\x5e\xbf\xad\xb2\x2b\x6d\x93\xec\x28\x43\xa1\x5d\x5f\xe6\x30\x3e\xda\xaf\x4e\xa1\xd1\x26\x48\x0e\xb8\x8e\x89\x44\x78\x43\x56\xd3\x95\x3e\x92\x0e\x8b\xd4\xc9\xbc\x0b\x55\xee\xc6\x48\xc4\xdb\x65\xfe\x4c\x3f\xc1\x0d\x4d\x52\x9a\x33\x6d\x81\x8b\xc1\x06\xa1\x9e\x88\xe3\xec\xe2\x6c\xba\x08\x26\xb8\xa7\x71\xbb\x9e\x23\x94\x86\xb1\xc6\xe7\xb6\x59\x26\xd4\x58\x9e\x6d\x44\x3d\xd8\x60\x88\xcb\x45\x39\x20\x1b\x13\x46\x36\xc0\xb7\xae\xac\xb3\xce\x65\x52\x0c\xc8\x66\x30\xc1\xd1\xa5\x8c\x08\x59\xcd\xc6\x73\x5d\xe7\x6b\xdd\xa9\x6d\x10\xce\x1b\x72\x3d\x84\x2c\xbf\xbe\x3e\x4f\xd6\xe4\xae\x8a\xae\x45\x72\x83\x70\xe4\x66\x22\x6a\x29\xf9\x56\x02\xdc\xd1\x6d\x2a\x5a\x5b\x4b\xc4\x08\xe1\xf5\xa1\x2a\xb0\xd4\x20\x38\x97\x1a\x66\x10\x9a\x72\xd3\xb8\xbf\xb9\xac\x4c\x9d\x77\xbb\xe8\x92\xbb\xfa\xdf\x53\xb1\xe6\x93\x69\xf4\x3f\xfe\xeb\xff\x1a\xa5\xd1\xff\xf8\xaf\xff\x7b\x87\xfb\xcc\x83\x1a\xbb\xba\x40\x11\xb6\x2e\x13\xa8\x8b\x2a\x30\xe8\xad\x6e\x47\x9e\x09\x7c\xfa\x99\x8c\xff\xd5\x19\x60\xab\xd3\x3d\x15\x26\x7a\x2a\x80\x25\xf4\x5e\xd7\xd9\x7c\xe2\x80\xbf\xc1\xb0\xef\xee\x89\xaa\x05\xcd\x1d\x59\xbb\x83\xd5\xc2\x56\x3e\x8e\x93\x25\x28\x90\x9a\x29\x67\x53\x80\xe4\x62\xb7\xe3\xbb\x1d\xdb\xed\x96\xbb\xdd\x56\xcf\xb4\x2b\x52\x29\xc2\x00\x37\x62\x57\x03\xc2\x35\xaa\xe0\xd5\x80\x18\x9d\xf7\xf7\xbe\xca\xf9\x62\x8e\xaf\xf0\xb6\x31\xb8\x8f\xe3\xe4\xbd\xf1\x70\x5a\xeb\x6e\x38\xdc\x20\xde\xa3\x7d\x77\xc4\x02\x79\x6c\xf5\x96\x85\xca\x20\xd1\x51\x84\x43\x2d\xc1\xe1\xb1\x16\xc5\x0f\x48\xf5\xf5\xf1\x14\x98\xfc\xff\xfe\xdf\x22\x67\x1b\x0d\xd7\x42\x4d\x7e\x25\x0b\x2e\xf4\x1d\x7f\xe7\x4e\xe1\x86\xde\x11\x36\x65\x83\xe8\x28\x5f\x0f\xe1\x86\x6f\xb8\x10\x55\x41\xab\x28\x8d\xda\x21\x8e\x2c\x95\xa4\x82\xfe\xcf\x49\x39\x70\x32\xe9\xf3\xa6\xee\x5a\x11\xc6\xdd\xb9\x2e\x2d\xff\x52\x10\x39\x5b\x82\xdc\xb6\x18\x49\xf1\xb4\x8c\xe3\xc2\xa8\x65\x95\x9a\x1c\xec\x6d\x14\xc9\xdd\x7d\x55\xab\xbe\x3d\x08\x70\x97\x73\x2a\xf5\xb0\x44\x90\x40\xb3\x7c\x78\x8b\xb0\xd6\x82\xc2\x9c\xd8\x84\x36\x59\x49\xd4\x2f\x5f\x02\x9a\x1f\x30\xe5\x7d\x1e\xc7\xbe\x38\xa9\xc7\xb4\x70\xbe\x6b\xea\x61\x86\xb0\x4a\x0f\x8b\x2f\x74\x8a\xc6\x29\x2d\xea\xe7\x7a\xd0\xdd\x6a\x8b\xe3\x84\xed\x76\x09\x23\xdd\xf3\xa1\x35\xf9\x2d\x48\x85\x9e\x7b\x08\x50\x6f\x0f\xd6\xae\x96\xfa\x44\xb8\x1a\xb1\x02\x19\x40\xcc\xc3\xda\xd4\x54\xfe\xc2\xad\x9b\xdb\x84\xdd\x35\x53\x19\x6a\x16\x4d\xd3\x47\x4b\x16\x7a\x89\x0d\x25\x83\xcc\x38\x65\xc6\x82\x8c\x43\xbd\x05\x18\x31\x5c\xe2\x1c\x2f\x71\x81\x57\x0e\xef\x09\x6f\xc8\x18\xaf\x49\xf2\x89\x4c\x70\x14\x21\x7c\xad\xb7\x39\xb6\x4c\xae\x09\xd9\xa0\xdb\x2d\x29\x49\x4e\x96\xa4\x26\x51\x84\x0b\x3d\x96\xd7\x64\xf2\xa0\x91\x86\xdd\xe0\x85\x62\x4c\xaf\xc8\xf8\xfc\xca\x57\x8b\xb8\xd2\x55\x7c\x4f\xf8\xec\x6a\x8e\x3f\x92\xf7\x56\x21\xd1\xd7\x29\xfc\x68\x74\x0a\xdf\x1b\x29\xe1\x26\x8e\x3f\x7a\xe3\x3d\x5d\xe8\x81\xfe\x88\xd2\xf7\x66\x7a\x6e\x9c\x10\xf1\x3d\x08\x11\xd5\xf3\xe9\x66\xb7\xfb\xe8\x8b\x22\xdf\x83\xe8\x73\xe3\xe5\x8b\xa6\x46\x24\xf1\x1e\xe4\x90\xef\x41\xf4\xb8\x89\xe3\xeb\xa7\x3a\x20\xb9\x86\x18\x5c\x12\xd5\x0b\x1f\x03\xa6\x66\xab\x2f\x79\xbd\x40\x48\x51\xeb\xdb\xb1\xa4\x9e\xd6\x83\xe8\x5c\x9f\xf2\x21\x58\xc5\x36\xda\xee\x41\xe3\x92\xdc\xe6\xd5\x24\x50\xc9\xad\x3a\xbc\xad\xfa\x75\x1c\x27\x37\xbb\x5d\x72\xe3\xf1\x8c\x4d\x2a\xfc\x1e\xd4\x6a\x3f\x6a\x62\x17\xc7\xfd\x25\x90\xd9\x8f\xd6\x2f\x73\xd0\x17\x49\xbf\x00\x55\x13\xab\x13\x88\x3f\x1a\x55\x93\x82\xbc\x47\xb6\x5f\x9f\x9a\xae\x30\xf6\x93\xaa\x33\x40\x2a\xab\xa8\xc0\x0d\x4c\x22\x3d\xbe\x37\x76\x7c\xaf\x06\xe4\x18\xdd\xcc\xae\x06\x93\xb9\xae\x6d\xa9\x1b\x76\x33\xbb\x9a\xeb\xfb\xfb\x62\xb7\x2b\x5c\xef\x37\x39\x2c\xfc\x19\x92\x83\x05\x05\x5e\xd8\x8f\x0a\xd0\x6c\xd4\x7a\xa3\x63\x04\x13\x50\x71\x6c\x2a\x55\x62\x15\x1d\xa5\x98\xae\x06\x13\xd0\xa1\x44\xc3\x8d\x53\x75\x0c\x15\x21\x71\x93\xda\x1a\x62\x15\x76\x4e\x24\x05\xe9\x4f\xd0\x5e\x35\x6d\xf3\x94\x58\xee\xc7\x4e\xe7\x97\xcd\x2d\xd1\x0a\x5f\x23\xb3\x18\x8c\x0d\xdd\x3b\xb2\x19\xac\x3d\x85\xa6\xbe\xb9\x24\x7c\x4b\xde\x3d\x7d\x39\x5d\x3b\x52\xf8\x72\xb8\x41\xe9\xba\x27\xdd\x21\x2e\x91\xf8\x2d\xce\xa6\xd9\x60\x9b\x6e\x71\x8e\x37\x83\xb7\xd6\x10\x98\x5c\x4f\xcb\x34\x8a\xf0\x12\xd7\xd0\xdb\xef\x9e\x92\x97\xe8\x76\x4d\x6c\x66\x2a\x2b\xbc\x21\x2f\x7b\x9a\x2a\x6f\xc8\x3b\x9c\x93\x28\xda\xaf\x1d\x20\x9b\xc0\x82\x54\xb3\x4f\x83\xc1\x1c\xe1\x8c\x08\x96\xe8\x17\x2c\x3d\x2e\x04\xe9\x8d\xfe\xc8\xb6\xf2\x13\x99\x9c\x7f\x6a\x34\x28\x3e\xa9\xd1\x0c\x6a\xdb\xca\x5c\x31\x23\x3a\xe3\x49\x2b\x63\xef\x12\xa0\x08\x77\xb9\x31\x69\x34\xc4\x41\xa1\xc2\xe8\x88\xc7\x71\x14\x11\x4f\x0f\x57\x4d\x51\x45\x26\x77\xbb\x80\x6f\xea\xf4\xbc\xed\x95\xb6\x62\xf7\xcb\x03\x8e\xaa\x69\x35\xa3\xf3\x96\x3e\xa5\x00\xc1\x1f\x43\xb7\xc9\x21\x2c\x9c\xa6\x9d\x44\x62\xea\xdd\x62\x01\x0d\xf7\x2f\xb5\xb4\x2b\x56\x73\xa3\x64\x62\xe1\x8e\xcb\xdc\x64\x18\xc9\x35\xec\xd3\x10\x0d\xbf\x4c\x2c\xc8\xcb\x30\x68\xfa\x55\xc8\xa8\xd1\xf3\xa9\x0a\x4c\x27\x3d\xd6\x48\xbc\x8d\xe9\x14\x43\x7b\xa4\x2b\x8c\x39\x58\xb8\x50\x70\x6e\xc0\xaf\xf4\x61\xcc\xbf\x80\x69\xdf\x91\x52\x2c\xc8\x6c\x0e\x90\xdf\x8a\x51\x11\x8d\xea\xec\x77\x3c\x29\x67\xd5\x1c\xb3\xa4\x42\x98\x37\xa2\x02\x6d\x21\x53\x9b\x41\x03\x7b\x32\x20\x88\xe6\x5e\x36\xd7\xba\x3f\xb5\x91\x73\x2c\xf5\xeb\xd6\xbc\x16\x6a\x40\x4b\xa4\x76\x96\xa4\xf4\xe0\xd0\x37\x44\xa7\x18\x1a\x61\x68\x63\xcb\x60\xed\xf4\x92\x31\xce\x92\x31\x2e\x1d\x40\x06\xb6\x50\x51\x2e\x23\xd5\xdd\xec\x0f\x3a\x74\x69\x9c\xb1\x91\x99\x72\xf6\x68\xe5\x67\x34\x9c\xa0\x9e\x48\x96\x78\xa9\xab\xbf\x42\x78\xa3\xb1\xdf\x21\x6b\x23\xb1\xde\xa8\x83\x86\xbd\x61\x70\x35\x32\x91\x6b\xe4\x4e\x17\x39\x21\x5a\x01\x7c\x42\x88\xab\x85\x48\x72\x9c\xeb\xfb\x52\xbb\xf0\xeb\x51\xbe\x42\x83\x62\x10\x04\x6f\x55\x20\x36\xb5\x4e\x54\x2d\x27\x7e\x2d\x51\x30\x34\xdd\xdf\xaa\x71\xc2\x77\x96\x57\xce\xc6\x6a\x38\xc7\x48\xc3\xaf\x7b\x6d\x00\x66\xdf\xb5\xe2\x8b\x2a\xaf\x32\x1b\x2c\x0f\xeb\x60\xf3\x0f\x3a\x70\x30\xc1\x1b\xdd\xae\xdb\x2f\xa9\x9d\x1a\x8f\xa2\x2b\xf3\x15\xea\x1d\xf4\x4b\x6f\xf3\x74\x72\x30\x62\xaa\xc0\xe1\xe4\x8e\x76\xde\xb7\x40\x36\xcc\x81\x01\x69\x28\x12\xea\x43\x1f\x90\x40\x4f\x5a\x92\x31\xb0\xfb\x2d\x0d\x70\x3a\x93\x81\x7d\x17\xae\x06\xa0\x0e\xee\xcc\xde\x7d\x11\x7a\x53\xf2\xba\x29\x39\x57\x9c\x5d\x45\x39\xa1\xed\xb2\xba\x2c\x86\xec\xcd\xf4\x8c\xcf\x7b\x72\x40\xd8\x28\x5f\x6d\xf9\x07\x75\xf4\x4e\x90\x2a\x9b\x59\xdd\x03\x16\x58\x9d\x69\x18\x18\x80\x0a\x0b\xa5\xfa\x07\x0d\xde\x6f\x98\x0f\x05\xe6\xb2\xbf\x13\x1f\xc9\xd3\xe7\xdd\x63\x3d\x2e\x3f\x70\x1e\xf8\x32\x69\x53\x21\x4e\xe8\x40\x9e\x57\x17\xbc\xb1\xab\x62\x3e\xb0\x43\x35\xf7\xfb\x6d\xd8\x34\xea\x37\xd0\x03\xfd\x3b\x4b\x18\x36\x50\xc4\x51\x60\x4a\x6f\x64\x35\x30\xca\xd8\xf2\x3b\x2d\x3f\x00\x6a\x61\x29\xa6\xba\xbc\xb1\x18\x52\xf0\xad\x73\x48\x72\x58\x79\xa7\x21\x61\x14\x31\x6c\xaf\xe9\x39\xe3\x17\x6f\xe6\x38\x45\xd6\x4a\x55\x36\xbf\xda\xc9\xa8\x67\x2c\xd7\xf2\xcd\xa1\x06\x1a\x9c\x72\xf8\x43\x88\x99\xa4\xd5\x9b\x83\x8a\x35\x59\xa8\x3e\xa5\xd0\xa7\x80\x39\x5b\xf9\x30\x28\x74\xee\x6b\x24\xe2\xf5\xbf\x6f\x8c\xd5\xc4\xb9\x6f\x6c\x5d\xa2\xe1\x81\x31\x64\x30\xc5\x3b\xac\xe9\x82\x78\xd8\x81\x08\xf7\xe7\x34\x68\x40\x5c\x38\xd5\x64\xc7\x87\x49\xcc\x86\x14\x80\x68\xed\x4a\x03\x93\x3c\xaf\x8e\x09\xc5\x22\x50\x61\x19\x92\x6c\xc8\xdd\xf2\x20\x44\x58\xd4\x14\x57\x3d\x2b\xea\x03\x5d\x23\xcc\xfd\x65\x01\xd7\xc5\x89\x1c\x12\x81\x9c\x0e\xca\x58\x13\x51\x3a\xd4\x76\x3b\x4d\x2f\xc8\x8b\xe3\x47\x07\x99\x1b\xf1\xd9\x64\xb7\xeb\x87\x31\xb3\xf1\xdc\x73\x69\xba\x61\xc8\x19\x4d\xcd\xcc\x3a\xb0\x33\x39\xa9\x4d\x83\x1c\xcd\x98\xa9\x1d\x62\xc3\x92\x1a\xcd\x71\x3b\xd3\x60\xf6\xdc\xb1\x1c\x42\xdb\x96\x3b\x06\x4b\xa2\x30\x6b\x39\x6f\x6a\x44\xbf\x64\xdd\xa8\x4e\x69\xae\x79\x70\xb8\x96\xda\x8b\xa0\xbb\x0e\x3c\x20\x13\xae\x2a\x20\xb4\x66\x87\x13\x86\x08\xd8\x99\xd9\xc8\xab\x9b\xa9\x92\xf1\xfe\x52\xc7\x31\x0b\x88\xd7\xd3\x47\xe3\xa6\x3f\x32\x12\x46\x7e\x7d\xfc\x68\x70\xfc\x08\xd7\x24\x3b\xaf\x2f\xc2\xa8\x73\xab\xf4\x6e\x86\x82\x05\xab\xbc\xc6\xf5\x80\x1c\x3f\x42\xa8\xc7\xdc\x34\xdc\x3a\xfd\xb0\xae\xd9\x37\x18\x70\x3c\xc6\x5b\x84\xb7\xc1\x00\x9a\x6c\x09\x6b\xd1\x9a\xcc\x4c\x09\x00\xe7\x78\xb7\x61\x65\x99\xa0\xbd\x3e\x17\xd0\x21\x11\x6a\xb1\xbb\x98\x16\x64\x62\xbf\x73\x86\x5e\x90\xc9\x18\xf9\xda\x6c\xbd\x42\x58\xd7\xe4\xf4\x23\xec\x5c\x07\x75\xa6\xed\x4c\x86\x8f\xf0\x23\x64\xd4\x97\x74\x2b\xc0\x33\x92\x26\x11\xf0\x1f\x53\xd7\x1f\xd2\x57\xe1\xac\xc8\x42\xb8\x8f\x5c\xb6\x18\x0c\x59\x5a\x81\x6e\xbd\x0e\x26\x78\xac\x48\x3e\xf0\x1c\x7a\x2a\x1d\x54\x15\xf5\xdc\x7a\x56\x65\x7b\x2b\x08\xcb\x39\xa6\x84\xef\xa5\x8b\xb7\x16\xd4\x1f\x57\xac\xec\x68\xdc\xd3\xc9\xd8\xab\x4d\xd0\xf1\x9f\xa7\xd2\xff\x79\x73\xdc\xc1\x85\x79\x44\x51\x0c\x29\xc4\x32\xc0\x2c\x78\x93\x50\x9c\xe1\x0a\x05\xba\xed\x86\x8e\x65\x5d\x74\x4c\x58\x04\xb7\x6b\x46\xc6\xf8\x86\x91\xb7\xa3\x17\x22\xef\x40\xcb\x76\xb3\xc7\xf7\xc6\x7c\xc3\x1a\x91\x32\xfd\x78\x74\xd3\x1c\xc6\x8c\xea\x10\xa8\xcf\x92\x31\x52\xfb\x8f\x86\xac\x56\x1c\x93\xa5\x61\x33\xc3\xed\x46\x5a\x44\x8c\xe6\x68\x6e\xe6\x36\xd8\xc2\xdb\x5d\xd7\x69\x0c\x13\xef\x15\x80\x3d\x0c\x4a\x96\x0f\x80\xa5\x03\x4a\x9a\xf1\xef\x28\xa7\x15\x08\x12\xc8\xc4\x59\x84\x83\x4e\x00\xa9\xcc\xa1\x6b\x45\x93\x0a\x8f\x8d\x9e\x73\x4d\x4b\xf2\x02\xae\xe2\x34\xb9\xd2\xf8\x09\x30\xaf\x7e\x64\x89\xde\x12\xa4\xc3\xa7\xbb\x66\x66\x15\x8a\xc2\x7a\x0c\x97\x1e\xce\x21\xdd\x10\x6e\xc1\xbd\x24\xe5\x85\xaa\x5a\x97\x6f\xfe\xc4\xe8\x8f\x82\x58\x4b\x9d\x73\x6b\xc5\x26\xe0\x95\x51\x13\xd7\xf8\x1f\x0c\x4b\xa1\x1e\xf4\x93\x4c\xe9\x1e\xe1\xaf\x34\xca\x1f\xd6\xb5\xad\x05\xda\xf7\x7c\x7f\xe6\xe4\xa3\x48\xfc\xfd\x1e\xdf\xe6\x82\xd7\xb2\xda\xe6\x52\x54\xe9\x0d\x83\x19\x7b\x30\x61\xab\xa9\x6e\x9c\x9e\x45\xc3\x66\x18\xb0\x1c\xaa\x73\x6a\xea\x45\xfb\x91\xee\xe7\xc0\x51\x7e\xdc\xec\x11\x77\xf2\x84\xe3\xb6\x7b\x32\xb5\x1a\xaa\x81\x75\x4d\xd6\xb0\xd2\x01\x3d\x0f\xaa\x85\x2b\x64\x79\x94\x2e\xf6\x24\xe0\x0c\x82\x0f\xd1\x1e\x5b\xe0\xe6\x0e\xec\xd1\xb7\xa6\xef\x3f\xd3\x48\x7b\x62\x06\x74\x78\x3a\x95\xa9\xd4\x68\xf8\x74\xb7\xf3\xa7\x81\x75\x96\x85\xf6\xb8\xb6\x65\xfe\x49\x26\xc9\x61\xb9\x2b\xea\xf7\xeb\x18\x61\x87\x3d\x18\x94\x3b\x9c\xf4\x5e\x55\xfe\xec\x90\xc6\x45\x75\x85\x5f\x9a\x9a\x57\x81\x87\x6c\xa4\x27\xce\xe1\x34\x73\x80\x32\xb6\x62\x11\x56\x67\xf2\xb4\x3f\xde\x03\x28\x99\x37\xcd\x24\x02\x78\x12\xdf\x27\x58\x7a\x48\x23\xbe\x37\xf5\xa2\x18\xd4\x23\xad\x52\x71\x45\xaa\xa9\x7d\x55\xf3\x08\x73\x3d\x00\x5d\xd9\x58\x2e\xf1\x9d\x69\x8a\xfd\x8e\x22\xdc\xe4\x18\x74\x7d\x35\xe5\x29\xd7\x5d\x5f\xdd\xd9\xf5\xc6\xf9\xdf\x5d\x48\xb3\x26\xfa\x7b\x80\x25\xf2\x70\x43\x65\x1c\xeb\x7b\x0f\x97\x83\x4e\x92\xb6\x00\xba\xbe\x75\xb5\xb4\xe4\xd0\x0e\x05\x6d\x0a\x7f\xb3\x5d\x2f\x5a\x0e\x1f\x1b\xbd\x1e\x2f\x9d\x2e\xe2\xaf\xac\xde\x66\xe5\xa1\x53\x64\xeb\x85\x00\x32\x6b\x93\x92\xa6\x54\x84\xc1\x92\x6c\x8f\x55\x5f\x3c\x17\xdb\x7b\xc0\x43\x81\xd5\x77\xee\x9c\xef\x4a\x06\x09\xf6\xd8\x5a\x85\xdd\x9b\xcc\x9f\xac\x7b\x6c\xc0\x4c\xba\x1a\xde\x8c\x2e\xb4\x5e\x63\xe4\xdc\x09\x07\x4c\x4b\x6b\xff\x92\x20\x1f\xa2\x1f\x40\xdd\xb5\xc3\x79\x58\x89\xe0\x8c\x2e\xb5\x7e\xe9\x75\x90\x7e\x49\x23\xca\x21\xd1\x6e\x17\x49\xa1\x7f\xd8\xf5\x0b\x4e\xd5\x1b\xff\xe2\x38\xf4\x8a\x77\x67\xef\xd1\x72\x54\xa9\x79\x5c\xef\xf1\x81\x1b\xc8\xfb\x3e\xea\xf0\x19\x09\x14\xc2\xf4\x41\x48\x22\xf4\xca\xf8\x9d\x86\x6b\xe2\x70\x12\x4c\x57\x70\x14\xde\xed\xc6\x28\xa5\xc8\x59\xd6\x20\x84\x7d\xff\x82\x5f\x94\xb9\xbf\xe0\x76\x3b\x8a\x4c\x3e\x2d\x0f\xc3\x9d\x59\x7d\x73\x98\x95\x8c\x63\x9f\x20\x74\x65\x55\x1f\xe4\x85\x6e\xbf\x37\xdf\xfc\xe1\xe5\xd4\xf9\xed\x37\x37\x5f\xf0\xf5\x95\x05\x25\x76\x63\x06\x0b\x45\x1e\x74\xd0\x61\x55\x2c\xf6\x86\x25\xa9\xb7\x1d\xc6\xf4\xd4\x77\xb4\xc9\x66\x7c\x4e\x8c\x8f\x47\xd7\x0f\x6a\x6b\xd3\x13\xb1\xe9\x5c\x6a\x5d\x71\x22\xcb\x33\x01\xb6\xa7\xa7\xa5\xea\xee\xc2\x70\xb0\x0c\xb4\xe7\x84\x86\x4a\xff\x40\x13\x66\x3a\x57\xb5\x27\x2b\x3e\x33\x4a\xde\x69\xbc\xe9\x10\x7b\xc8\x00\xde\xd9\x73\x53\x79\xd7\xac\x08\xcb\xe7\x98\x7b\x97\xbe\x7a\x94\xaf\xfc\x89\xd7\x79\x10\xb5\xfb\x9c\x37\x2c\x9a\x35\xa8\x3a\x3c\x97\xda\x7d\xa1\x52\xdd\x66\x1c\xbc\xc2\x6f\xb5\x7a\x51\x4f\x12\x39\x95\xf6\x02\x86\xa1\x94\xed\xff\xbd\x9b\xf4\x15\xed\x5c\xf5\x87\x3e\x6a\xff\xd3\xea\x0c\x50\x11\x20\x88\xb6\x1e\x77\xee\xaa\x1d\xc2\x60\xa8\xc2\x9c\x46\xeb\x1e\xb7\x3d\x64\xde\x73\x0e\x99\xcd\xb1\x87\xb6\xea\x8d\xb9\x07\xd4\xc4\x67\x6c\x4e\x8c\xb1\xd2\xa1\x13\x5c\xae\xb2\xdc\xed\x9c\x9b\xcf\xc3\xe2\xbb\x57\x4e\xab\x0e\xb6\x7c\xe7\x8d\x28\xac\x87\xe7\x84\xc6\x46\xcd\xc4\xbc\xc7\x67\x62\x4e\x34\xc7\x93\xd9\x5e\x94\x22\xcd\xa0\x17\xef\x60\x71\x00\x0c\xd8\x70\x39\xd5\xde\x4a\x36\xe2\x18\xb6\x01\x80\x61\xfa\x4c\x55\x43\x60\x2e\x41\x18\xd6\x9a\xee\x8e\x6b\xf5\x5c\x7d\x4a\xad\xcb\xfe\xa2\x4a\x6a\x03\x5a\x80\x05\xc2\xa5\x0a\x78\x5e\x25\x35\xa8\x44\xe8\xa3\x1a\xe0\x32\x63\x41\x4a\x1c\x65\x60\xf4\x14\x11\x62\x56\x64\x4e\xa8\x37\x34\x2a\x47\xb0\x81\xcf\xb5\x83\xd5\xdc\x92\x8f\x8b\x71\x8f\xcf\x32\x47\x61\x96\xd3\x32\xdd\xe2\xe5\x74\x9b\x96\xe6\x9e\xdf\x8f\xdd\xe2\x06\xeb\x44\x05\x3d\x57\x2b\x95\xb6\x08\xc9\x5e\xcf\x51\x8e\xa5\x51\x6e\x26\xcd\x5a\x3e\x17\x4f\xd5\x48\x0d\x87\xc8\x72\x9e\x00\x74\xd0\xab\xa7\xbf\x9a\xc5\x5f\x9b\xe3\x41\xbe\x8e\xe3\x5f\xcd\x3d\x64\xbe\x06\x02\xb0\xe5\x85\x08\x67\x05\xba\xfd\xc3\x64\xa3\x1d\xc9\x19\xd6\xf2\x9e\x64\xe0\x4b\xce\xe5\x76\x07\x5d\x6b\x67\x0b\xa8\x08\x26\xe7\xcf\x7f\xa2\xdd\xd5\x99\x4f\x6a\x2a\x5f\xc2\x0e\x03\x26\x43\x1e\x0d\xf0\x4f\x74\x14\x88\x45\x47\xba\x70\xb3\xd7\xa9\xf7\xd8\x9c\x27\xdb\xb7\xae\x2d\xb7\x0c\x26\x15\x6e\x0b\x04\x3c\x88\x3f\x20\x2d\x3a\x44\x11\x11\x3d\x53\x76\xbb\xc1\x40\xdf\xc4\xda\x2f\x02\x58\x40\xf3\x8d\x0e\x0b\xbf\xb2\xde\x8e\x6e\x61\xa0\xa4\x1e\x88\x6a\xaf\xf8\xb6\x06\x45\xf0\xc0\xa3\x43\xeb\x74\xec\x87\x8d\xd6\xd9\xa7\xe6\xec\x0d\xe0\xfe\xd5\x87\xe7\xea\x44\x7e\x90\x4b\xfb\x9c\x6e\xae\x41\x54\xdd\x9a\xd0\x44\x0d\x0a\x6e\x87\x76\xb1\x93\xd4\x5e\xc1\xda\x9a\x28\x6e\xf5\xed\x86\x1c\x84\xbd\xa3\x65\x57\xf0\x5b\xa0\x14\xc4\x3b\xea\xdb\xd8\x2b\x57\xee\x1e\xb3\xba\xd5\x18\x1a\x0e\xf8\xe1\x37\x84\x38\x92\xde\x6a\xb1\xde\x70\x3a\x3a\xd9\x8c\x89\x1a\xae\xf4\x55\xab\x7f\x55\xa0\x5e\x09\x1d\x91\x3a\x18\xed\x81\x99\x3c\xc8\x38\xe4\xa8\xbf\x7c\x10\x7b\x12\x4a\x25\xaf\xb4\x43\x6d\xee\x8c\x31\x91\xf3\xe6\x8c\xa5\x29\x5b\x27\x32\xd3\xef\x20\xd9\x5e\x71\x26\x80\xa0\x5e\x66\x75\xf7\x76\x61\x3a\xf3\x37\x77\x9a\x8c\xb4\x8d\xb5\x62\x74\xa7\xf6\x77\x1a\x81\x1e\x4e\x84\x0f\x4e\xd2\x9c\x68\x80\x48\x48\xdd\xd8\x7b\xa6\x51\x63\x64\xaa\xe3\x1a\xab\xd0\xc3\xfc\x6d\xcc\xc7\x2a\xdb\x18\x7b\x51\xc5\xff\xcd\xf8\x1c\x18\xc1\x37\x22\xa9\x8c\x1d\x28\x84\x35\x2e\xc5\x68\x63\x0e\x6a\x2e\xd9\xc0\xb6\xb4\xe7\x64\x31\xf6\x24\xbd\x16\xd7\xf4\xff\x89\xfd\x80\x8d\x2c\x92\x2d\x93\x3e\x6b\xda\xdd\x00\x5c\x00\xc6\xa1\x16\xa5\xba\xeb\x59\x01\x80\x36\x32\x5f\xe9\x9e\xd3\xba\x41\x22\x74\xc4\x96\x11\x61\xec\x78\x45\x63\xc7\x0b\xfd\xe9\x7b\x1d\xb4\xb6\xbf\x89\xf9\x15\xc7\x59\xdf\xe9\xb1\x4d\xad\x9d\x95\xfd\x20\x43\xda\xbc\x73\xdf\xea\x7e\x33\x07\x35\x5c\xc2\x7d\x9d\x7f\x78\xc9\x61\xd4\x35\xe8\xc7\xa3\xdf\xb5\xfd\x38\xb8\x55\x04\xb0\x5d\xab\x42\x11\xc7\x2c\xb0\xfc\x17\x4e\xf7\x2f\x2b\xd9\x15\xff\xd5\x58\xb1\xab\x45\xf3\x9b\x16\x52\x58\xc3\xf3\x10\x63\xd6\x5a\xe8\x18\xb3\x77\x30\x26\xb0\x26\xf0\xb3\x39\x6a\xfa\xdc\x4a\x3d\x9e\xc9\xa9\x71\x2f\xcf\x50\x5a\xd9\xdb\x72\x77\x94\xa8\x9a\xa3\x84\x67\x27\xdf\x7c\x8c\x10\x1e\x63\x66\xe5\x25\x44\x62\xa1\x3d\x3b\x34\xca\x15\x9c\x68\x9c\x07\xda\x5c\xca\xf6\x00\x00\xd7\xde\xe8\x0f\xbe\xe2\xa0\xb3\xc8\x01\xdc\xc1\xa8\x80\x5a\x41\x08\x00\xc8\x76\x98\xae\xfb\xa3\x83\xd9\xde\x5d\x22\x99\x23\x44\xb3\x56\xcc\x78\x85\xe2\x5d\x0b\x9f\x8b\x2d\x2e\xf2\xe1\xd5\xa6\xc1\x06\xe7\xf7\xdc\x29\xe1\x0a\x57\x80\x96\x72\xb3\xa1\xbb\x5d\x04\xfb\x63\xa4\x8f\xe4\xdf\x18\x4d\xc5\xb4\x0b\x78\xed\xd6\x07\xbc\x4e\xa5\xd3\x4b\x94\x80\xbd\xf0\xf3\xcd\x86\x4e\xed\xa0\xa5\x12\xe1\x06\x28\x31\x85\xcb\xa5\xe6\x1d\x87\x20\x71\x69\x7f\x82\x35\x12\xba\x4e\xa8\x7f\xe3\x03\xe4\x6c\x1d\x7b\x10\xbc\xef\xb5\x1a\x4d\x89\xd7\x6c\x35\x6d\x1b\x05\x4c\xb4\xc7\x0e\x8a\xf6\x59\x97\x43\x2c\x38\xef\xd8\xbb\xa5\xc4\xcf\x09\x75\x83\x85\x7a\x60\x23\xe1\xa9\xc8\x13\x79\xa8\x13\xd0\xb9\x9b\xbf\x5a\xdb\x8f\x19\xf5\x4e\xaa\x4d\x9e\x0f\x70\x62\x9e\xda\x18\x69\x66\xb9\xc5\x84\xd1\x92\x19\x95\xc8\x80\xe2\x78\x47\x24\xd7\xb6\x83\x79\x11\xf4\x89\x7f\x65\xd9\xf3\x8e\x00\x34\xc0\x2c\x72\x97\xe0\xc6\xe9\x82\xb1\x85\x09\xd0\xa1\x9d\x98\xe6\xcb\x91\xb4\x6a\x7b\x8c\x30\x48\x5a\x5a\x7f\x6c\x0b\x4a\xa9\x8c\x98\x3a\x68\xff\x95\x4f\x21\x58\x93\x35\x42\xb6\x46\x59\x13\xb4\xc6\x54\x22\xeb\xde\xd0\x45\x10\x87\xc3\xad\x83\x9e\x12\x39\xca\x57\xbb\x5d\x15\xc7\xfd\xaa\x01\xd4\xda\xed\xcc\x89\x7f\xdb\xee\x53\x97\x64\x3f\x18\x30\x40\xb0\x07\xa6\xe5\x59\x59\xb6\x7a\xd5\x8a\x10\x67\xf3\xc3\xde\xea\xa4\x6b\xff\x9e\x59\x63\xc0\x16\xed\x11\x1a\x5c\x44\xaa\xea\x42\x88\xad\x20\x42\x98\xee\xf1\x46\xd4\xdf\x56\x42\x9f\x6b\x0e\x67\x73\x70\xad\x8e\x39\xe9\x3a\x69\xdb\xcd\xe7\x9e\x66\x38\x05\x05\xe6\xdf\xb5\x0f\x00\x08\x51\x3c\x75\xe8\x0e\x92\x50\xdc\x1f\xf7\xe8\x90\x08\x3c\x18\x54\xaa\x86\x76\x9a\xc1\x95\xbd\x44\xc6\xfb\xd6\x27\x55\xe5\xf6\x35\xa9\x5e\x7e\xad\x15\x97\xaf\x7a\xd6\xdb\x80\xc1\x1f\x82\xa6\x80\xe2\xe4\xea\x62\xdc\x20\xe0\x5c\x37\xfe\x8b\xbe\xb4\x7d\x5e\xcf\x98\xf9\x1d\xb0\x15\x72\x60\x54\xcb\x6d\x73\xa1\x41\x72\x8f\x73\xb1\xe9\xe2\x32\x8d\x50\xf0\x4b\x25\x2a\x6d\x89\xda\xc1\x07\xa6\x19\xcd\xfd\x7c\xb7\x6c\xf0\x67\xb1\xc1\xd2\x97\x13\xca\x50\x6e\xa8\x22\x69\xd9\xdc\x43\x48\x4f\x48\x07\x67\x88\x80\x9b\x7e\x41\x37\x72\x45\x0e\x98\x6c\x08\x86\x9c\x2c\x9b\x9d\x58\x59\x42\x03\xbd\x0e\x9d\xa3\xdd\x42\xbc\x10\x79\xb8\x71\xed\x76\x09\x18\x1a\xf6\x3c\x8e\x5c\xb7\xb5\x5b\xf0\xd3\xb3\x4a\xa5\x76\xfe\xc3\x6a\xd6\xb7\x85\xd4\x53\x78\xee\x03\x22\x07\xf8\x5d\x15\x17\x5a\x00\xab\x7e\x5a\xa2\xd6\x1e\x13\x5c\x81\xb9\x98\x28\xec\x11\xc5\xef\xff\xee\x6e\xa7\x66\x37\x52\xed\x04\x73\x3f\x7b\x90\xf0\x3b\x09\x61\xa7\x8e\xf4\x81\x16\x8a\x77\x69\xde\x7c\x1b\xc8\x42\xe4\x29\xc7\x4d\x86\xa9\x9f\xfb\x1e\x69\x10\x34\xf8\x06\x92\x42\xa5\xad\x7b\x8d\xb4\x3f\xbe\xf3\xcb\x39\xbe\x53\xf4\xe8\x43\x69\x56\x96\xf2\x72\x22\xad\x36\x92\x03\xa0\x6c\x90\xd8\x0d\x00\x25\x00\x81\x34\x61\x52\x5f\xe8\x6c\x28\xb8\xf3\xb0\x17\x41\xe0\x48\x44\xe0\x0c\x2c\x23\x41\x5e\xd1\xfc\x02\xfe\x02\xf5\xb8\xc3\x0c\x83\x4e\xa8\x11\x6e\x54\xf2\xf6\xfb\x7d\xc2\xf1\x4b\x03\x0c\x04\xe4\x76\xcb\x55\x1f\xb4\x67\x90\xa2\x02\xbe\x34\xfe\x2d\xc8\x80\xb4\xef\x27\xec\xf5\x36\xea\xd0\xf9\x69\x7b\x30\x91\x81\xa3\x99\x0f\xb4\x98\xc9\x39\x20\x7f\x11\x4f\x5f\x52\x7d\x61\x81\x6b\x31\xa8\x5f\xba\x8a\xe9\xca\xe2\x77\x3c\x71\x15\x37\xba\xea\xda\x31\xae\x9d\x21\xe1\x14\x31\x3b\xc1\x4c\x43\xd6\x1e\xfa\x6e\xa9\xac\x85\x0f\x2b\xd0\x1e\x61\x6d\x41\xd6\x29\x98\x0f\xbd\x24\x90\xae\x23\xb3\x9e\xe8\xe1\x39\xf9\x20\xa1\x0e\x86\x4b\x74\x10\x93\xbf\xb2\x6b\x37\x24\xcc\xef\x43\xf1\xde\x6b\x51\xdc\x29\x11\x53\xcb\x49\xdf\x14\x15\x4c\xfa\xd2\xad\x30\x59\xbe\xde\xe3\xe6\xea\xf2\xce\xcb\x05\xb3\x14\xa7\xc6\x10\x36\x09\xd6\x67\xfa\x9b\x70\x32\x3f\x47\xed\xef\x53\xe3\x7c\x47\x37\xda\x4e\x72\xbf\x47\xd8\x57\x21\x18\x51\xeb\x8a\x28\x08\x55\x3d\xa2\xcd\x02\x19\x89\xd4\xcb\x91\xe6\x5f\x8f\x34\x8b\x7e\xa4\xb6\x81\x23\xd7\xd4\x23\x4f\xed\x20\xf2\x3c\xd1\x3b\xfd\xaf\x2b\x76\xc4\xf8\x91\x5f\x02\x0a\x8a\x6b\x01\xd4\x5d\x31\x14\xc7\x0b\x91\x2c\x18\xbe\x62\xe8\x62\x1c\xc7\xc9\xdb\x26\xf5\xec\x8a\xcd\xbb\x3c\x35\x1e\x36\x9f\x1a\x65\x50\xe8\x06\x70\x58\x57\x5d\x81\x95\x57\x8d\xf6\xfb\xc4\xaf\x81\xca\x13\x21\xcf\xb9\x91\xb3\xbb\x4a\x1a\x98\x95\x04\xac\xe1\x34\x60\x5d\x7b\xc5\xe9\xdb\x62\x7e\xb0\xdc\x1c\x1e\x8a\x8d\x9a\x65\x70\xa2\x86\xfa\xf4\x09\xb3\xcc\xa0\x88\xe3\xda\x23\x6a\x3d\xc5\xb4\x6d\x15\x2d\xd5\x29\xf1\x16\x61\x6a\x7e\x72\xbc\x05\xe7\x08\xc8\x42\xea\x05\xa0\xb0\x1f\x99\xe7\x45\x20\x5f\x1f\xba\xb1\xf9\x79\xc5\xea\x23\x6b\xee\x76\xc4\xea\xa3\xac\xac\x68\x56\xdc\xa8\x11\xda\xd6\x74\x14\xa1\x1e\x50\x16\x22\xc1\xf2\x83\x50\xfc\x3a\xa1\x08\x3f\x53\x8f\x6e\xf7\x7d\xbb\xdd\x8b\x30\x72\x0d\xe8\x81\xfe\xfe\xa2\xd8\x68\xaf\x92\x2f\x99\xe7\x5e\x7c\x48\xcc\xcd\x3b\xba\x18\xef\x76\x52\xb1\xfe\xc0\x24\x74\xd4\x9c\x56\x54\xd5\x98\x8b\x23\x55\xfe\x51\x34\x48\xe4\xc0\x7e\x3c\x88\x54\x0b\xe4\x8a\xba\xc6\x8d\xbc\x19\x58\x11\x7a\xde\xd7\x1e\x46\xea\xf3\x80\xfd\x0c\x8e\x2a\x9f\x53\xcd\x92\x17\x02\xdd\x56\x84\x19\x92\x27\x87\x44\x38\x30\x69\xa3\x8f\x2b\xe7\x9e\x6f\x8e\x96\xf9\x9e\x96\x8a\x84\x90\xae\x9f\x73\x41\x43\x1d\xd2\x3f\x30\x64\x3d\x46\x9c\xd7\xa2\x44\x10\xe1\x81\xa5\xe5\x2b\x80\x76\x71\xc7\x00\x2f\x5a\xea\x48\xc3\xf9\x0b\x84\x1d\x87\xef\xea\xfa\xf6\xa0\xae\xed\x2a\x86\x40\x41\x8d\x73\x10\x6d\xd7\xd3\xca\xee\x53\x00\x11\x22\x87\xd4\x53\xe6\xf5\xf9\x7f\x7a\xce\xcf\x39\xb1\x0a\x7c\x88\x37\xda\xa3\x9e\xc3\x0d\xe6\xe1\x44\x12\xa7\xc4\xd7\x09\x7a\xde\xe8\xf8\xe1\x4a\xbb\x7a\x73\xae\xd3\x38\xb1\x7a\x80\xe7\xfc\x5c\x12\x8e\xbd\x72\x7d\x44\x10\xde\xcc\x02\x36\xef\x13\x09\xd0\x85\xd5\x80\x04\xe1\xc1\xcc\xb0\x53\x60\x20\x8d\xfa\x84\xab\xfa\xcf\x2c\x84\xcc\x86\xe8\x1e\x4d\x0b\xd1\x52\x1c\x3c\x50\x45\x0c\x6c\x02\x0e\xe6\x65\xd3\x99\x30\x25\x29\x61\xbd\x06\xfa\x1c\xe6\xa5\x36\x19\xf0\x6a\xd9\xa0\x9e\x6b\xe5\xc7\xbe\x01\xf0\x46\x81\x34\xa1\xe5\x9c\x91\xdb\x23\xae\x89\xf1\x94\xb6\xa0\xec\xcc\xa8\x1a\xca\x21\xc9\x5c\x01\x03\x6f\x1e\x7c\x68\xd9\x56\x8f\x71\xa5\xce\x39\xa0\xb4\x82\xec\x48\xb9\x63\x60\x67\xe1\x8c\x54\xae\x70\x2d\x56\x23\xd4\x16\xdb\x98\x45\x38\x9f\xac\x82\xd8\x23\xed\xb9\x38\x17\x24\xa9\x88\x40\xfe\x30\xeb\xc2\xc4\xdd\xfd\xad\xce\xf3\x5e\x7f\xc3\x79\x9e\x90\xaa\x29\x32\xb3\x45\xba\xbb\x07\xd7\xdc\xd7\xcc\xc7\x91\x07\x5b\xb0\x50\x83\xc5\xb2\xf1\xda\x4c\x6c\x99\xd9\xe5\xa3\x0e\x10\x2e\x97\x1f\x1b\x1b\x12\x60\x5e\xac\x1f\x5d\xc3\xcb\xf8\xaf\xfa\xd0\x32\x79\x30\x6e\xfc\x45\xbf\x16\xc5\xcf\x6c\x4d\x1b\x17\xf1\xef\x68\x09\x01\x5e\x1a\x2b\x15\x69\x84\x24\x8d\xb3\x67\x4f\x42\x12\xa4\x69\x84\x26\xd8\x1c\x80\x42\x79\x4e\x20\x49\x20\x74\xb7\xf3\x10\x9f\xff\x19\xac\x03\x2d\xdd\x5d\x5b\xbf\x31\x20\xdf\x7d\x5e\x25\xd2\x88\x77\xdf\x35\x2e\x6d\xb4\x4b\x19\x77\xc9\xf5\x82\xc1\x4d\xac\xe7\xee\xa6\xf1\x64\x33\x98\x20\x7c\xc8\x59\x7e\xe6\x0b\xc3\x6c\x7a\xc4\xe6\xb9\x9b\xb0\xe7\xb4\xd1\x03\x67\xcb\xa4\x7f\xad\x98\x2e\x23\x50\xb3\x1a\xb6\xa3\x8d\xd8\x24\x3e\x96\xc0\x4f\x1d\x50\x53\x86\xe7\xec\xb1\x50\x56\x47\xf4\xc9\x5d\xe0\x8c\x0c\xd4\x36\xf7\x22\x93\x60\x31\x97\x30\x3b\x44\x84\xef\x76\xcc\x1f\x0f\x22\x47\x5a\xca\x1d\xc7\xcd\xaf\x24\x1a\x44\x4d\x8c\x75\xe7\x3e\xd6\x1e\xc2\xd6\xa0\x0c\xdf\xcc\x8a\xa7\xd9\x30\xb0\xbb\x34\x75\x83\xcb\xc4\x17\xb4\xcc\x6e\x76\xbb\xe8\xdf\x3a\xb3\x03\x50\x19\x71\x07\x66\xf1\x34\x79\x6e\x25\x46\x08\x5f\x0b\xfb\x13\xa5\x81\x44\x33\x8e\xfb\x4d\x9c\xe9\xc9\x69\x13\x12\x26\x7e\x3a\x01\x17\x89\x20\xc8\x0c\x22\x86\xc7\x56\xac\x39\xb5\x42\x2a\x18\x85\xa0\x5c\x83\x82\x99\x30\xec\xf5\x66\x63\x7f\x71\x2d\x12\x61\x04\x90\x35\xea\x1d\x3a\x31\x02\x0b\xd6\x26\xac\x56\x61\x53\x70\x2f\x05\xf3\x34\x75\x1f\xeb\x3d\xd0\x4c\x6f\x4f\x4f\x7d\xab\x8a\x60\xba\x36\x40\x60\xb7\x71\xbc\x75\xd2\xd8\x1f\x54\x67\xd5\xb4\xc4\x26\x05\x16\xe4\xd6\x64\x98\xce\x4c\x66\x73\xdc\x2c\xb0\x94\x85\x92\x49\xd3\x6a\xbd\x99\x9f\xb3\xa0\xdb\x58\x43\x17\xce\x91\x89\xaa\x57\x6c\x29\x13\x64\x3e\x9c\x8d\x1b\xb9\x70\x98\x60\xef\xe7\x0c\x06\x15\xde\x22\x1f\x0c\x58\xb8\xc6\x71\x30\xb3\x08\x0b\x88\x4d\xd6\x74\x3c\xf3\xc9\x0c\x0e\x26\x34\x6b\x51\x17\x3b\xed\x70\xbd\xdb\x69\x44\x22\x33\x41\xb5\x8f\x37\x8f\x87\xfc\x21\xa0\x28\xd7\x02\x3c\x3f\xc4\x71\x65\x5a\xa6\x7e\xd1\xdf\xb7\x59\x59\x27\x14\x1c\x3e\x5a\x47\x66\x2e\x83\x17\x07\x2b\xb5\xed\x5b\x05\x70\x15\x0c\xf7\xe3\xe4\x28\x56\x4d\xa4\x42\xd8\x53\xdd\xd2\x57\x38\x9a\x73\xc5\xdc\x77\xdf\x56\xa9\xd3\xad\x77\x01\x1a\xc7\x89\x41\xa2\x68\x17\x47\x6e\xf7\x08\xcd\xc4\x9c\x04\xe9\x15\xaf\x26\x02\x8f\x6f\x6f\x2c\x3b\xd4\xa7\xdd\x2c\x10\xbe\xcb\x5b\x9d\xb9\xf0\x3d\x80\x3b\x9f\x4a\x75\xd4\xf0\x91\x77\x11\xd2\xf2\x06\xe3\xb1\xac\x6a\x3c\x96\xc9\xa9\xbd\x52\x99\x4a\xb0\xb6\x4e\x3d\x04\xdc\x57\xac\xc3\x2c\xe2\x40\x6f\xce\xed\xb4\xc2\x49\x18\x85\xa5\xab\x06\x7b\xb2\x9a\x3e\xa7\x81\xcb\x5c\xba\x79\x2e\x36\x37\xda\xb6\x40\xa0\x54\xa0\x46\xe6\xa8\xf7\x6b\xad\x9c\x05\x96\x55\x26\x0f\xb7\xa2\xea\x7d\xdb\xb3\x6b\xe6\xbb\x74\xd5\x90\x53\x38\x27\xd9\x6c\x6b\x0e\x67\xfa\x7b\xd8\xa5\x72\x43\x15\x44\x9a\x8f\xa4\xd0\x1b\x94\x36\x7c\xdd\x23\xdc\x30\x8e\x4b\x75\xfa\xc8\x51\x52\x92\xa5\x85\x3e\xfe\x87\x1e\xdd\xe4\xb2\x18\xa0\xaf\x1e\x20\x7d\xa6\x95\x58\xab\x07\x27\xe5\x6c\x32\x47\xe8\xe9\x70\x12\xc7\xc9\xb5\x48\x6a\x34\x5b\xce\x49\x3e\x5b\xce\xb1\x36\x7f\x3c\x52\xbf\xd5\x39\xcf\x39\xe6\x71\xbd\xfc\xad\x37\x73\x2b\xc3\xb3\x4d\xf5\xbf\x01\xe1\xa9\xbc\xb0\x62\x04\x73\x79\x0c\x36\xee\xf9\x8a\xf8\xe7\xc4\x3f\xd8\x5d\xa0\xc0\xf7\x78\x19\xd3\x66\x26\x6e\xac\x6e\xc5\x28\x17\x1b\x06\x97\x7e\x89\x4e\x44\x84\x1b\xab\x04\x21\x13\x4d\xfa\xe3\x66\x00\xb4\x40\x44\xb4\x74\xc1\xea\xc1\x00\x7d\xcb\x5c\xd6\xb3\xda\x2a\x50\x9a\x3a\xe2\x56\x24\x68\x49\x19\x14\x6c\x98\x08\x2a\x7b\x9b\xb5\x25\xcd\x87\xde\x4b\x5c\x9c\xf1\x62\x52\x5d\x6c\x3d\xcf\x79\xfa\x37\x59\xd1\xc4\x0b\x1d\x70\xbc\xb5\xb8\x06\x08\x6f\xd5\x16\x00\x09\x2c\x0f\xc1\x21\x4c\x45\x3a\x33\x75\x79\x41\x5c\x3c\xba\xcd\x48\x7f\x62\xaf\xc8\xb2\xdd\x2e\x71\x3e\xa1\xc6\xda\x5b\x3c\x53\xe3\xe2\x71\x10\xbf\x84\x27\x27\x8f\x71\xe1\xc4\xb1\x2e\x70\x8e\xf4\x1d\x6d\x25\x7c\x58\xa1\xe1\xa4\xf7\x87\xdd\x86\x8d\xe3\x17\xfc\x47\xa3\xa4\x61\x82\xf6\x4c\x24\x37\x06\x61\xe9\x1b\x46\xde\x8e\xe8\xfb\x4d\x45\x35\x03\xb0\xcc\xb6\xa5\x24\x2d\xb3\xda\x20\x72\xda\x0e\x48\xd4\xbe\xad\x27\x29\x18\x17\x90\xfe\x64\x8f\xbf\xd7\xf9\xd6\x52\x6c\x7e\xac\xc4\x26\xbb\xd2\x5b\x48\x98\x71\x2b\x76\x7a\x10\x02\x59\xe7\x19\xcf\x69\xf9\xcd\x76\xb1\x28\x41\x86\xdc\xdc\xd2\xfc\xd5\xc7\x7f\xb0\x37\xe2\x85\xae\xd5\x8f\xba\x8e\xb4\x98\x1e\x06\xa5\x63\x42\x82\x2a\x83\xc2\xe0\xef\x4d\x95\x83\x7a\x7e\xa3\x4a\xc1\xdf\x83\xea\xbe\xe7\x10\x81\x05\x6e\x93\x64\x56\x5d\x51\x10\xcd\xd4\x55\x6e\xd0\x83\x3c\x47\x07\xc1\xa9\xe0\xe3\x8a\xe5\xab\xc3\x53\xc1\x24\xa6\xa3\xc5\x56\x4a\xc1\xa7\x92\x4c\xd2\x63\xff\xf5\x24\x7d\xe8\x5e\xe1\x00\x71\x8c\x10\xbe\x06\x06\x4f\x56\xe5\x9f\xe9\x4d\x1c\x4f\xec\xd9\xe2\x44\x1d\x25\x54\x59\xdf\xa9\x06\x05\x9d\xee\xe9\x37\x67\x45\x01\x3c\xdf\x2b\x56\x4b\xb5\xa1\xa3\xc3\x20\x38\xf1\xf7\x3d\x5f\xaf\xd6\x51\x3b\xa4\x42\xc1\x5b\x12\x09\x1e\x0d\x00\x19\xdc\x33\xd5\xa3\xa3\xf7\x5a\x60\x0d\x6e\xc6\xbd\x37\xb5\xd5\x9d\x27\x7c\x26\xe7\xbb\x1d\xfc\xf3\x04\x05\x70\x25\xfb\x9b\xda\x33\x9a\xde\xfe\xf3\x01\x0e\x92\xcb\x4a\x75\x82\x7b\x99\x49\x77\x6b\x51\x4d\xc1\x21\xb9\x61\x8a\xc6\x53\x0b\x48\x85\xd2\xdf\x58\xca\x77\xbb\xdf\x18\x74\xd2\x5f\xa0\x93\x96\xcb\xee\x5e\xd2\xd7\x9d\xed\x8e\xea\x08\xed\xe8\x2b\xed\x0b\xcc\xf6\x95\xf7\xd6\xea\xab\xa3\x66\xab\x34\xcd\xec\x6b\xaa\x70\xce\x7c\x80\x25\x70\x7a\x03\x6a\xbb\xa4\x42\xb7\xce\x42\x92\xe1\x89\xbb\x80\xc7\x7f\x52\x8d\xa9\xd9\x15\xcf\xca\x4e\xe7\x71\x36\x7f\xed\xfe\xd0\x8a\x5d\xbd\xdb\x98\x67\x55\x95\xdd\x78\xfb\x2e\x74\x99\xde\x74\xdd\xdd\x29\x3e\x46\x5d\x2e\x79\xaa\x19\x9b\x9b\xfb\x56\x0d\x01\x86\xf6\xf8\x6f\xcc\x20\x2d\xd8\x71\xfc\x3b\xeb\xaa\xce\x24\xac\x8e\x1e\x63\xcc\xbe\xb4\x36\xbd\x3f\xe4\x94\x93\x3f\xe4\xa8\x50\xe7\x17\x5a\x3c\xcf\xca\x72\x91\xe5\x1f\xea\xf4\x6f\x6c\xca\xc9\xdf\x58\x9a\xa8\xa7\x3a\x36\xd7\x54\x2a\xe6\x54\x6c\x65\x42\x05\x1e\x7b\x76\xfa\x5a\x45\xb9\xf2\x7d\xe1\x98\xfb\xad\x2c\xa9\x66\x62\x8e\x42\xf4\x95\xae\x5b\x67\xea\x37\x9f\x05\x34\x9d\x0a\x27\x34\xff\x1b\xeb\xb9\x6e\xb9\xdb\xfd\x20\x9d\xc9\xb9\x8f\xe3\x2e\x45\xa8\xe3\x72\x60\x62\xa8\xd7\xfe\x2d\x40\xdd\x4b\x1c\x52\xe8\x03\x75\xcc\x36\x41\x54\x64\x75\x8f\x30\x30\xdc\x95\x62\x96\xc1\x9a\x10\x3c\x4a\xfd\x95\x25\x12\xf8\xe7\x5c\x14\x74\x0d\xf0\xbc\x3f\x80\x8f\x76\x0f\x5d\x59\xf8\xd4\xad\x7b\x61\x8e\x72\x30\x77\x79\x96\x4b\x76\xcd\xe4\x8d\xf6\xaa\xe7\x5d\xce\x1a\x75\xa1\x30\xd5\xf7\x3e\xed\xb8\x2f\x81\xa2\x1e\x5d\x66\x86\xc6\xf5\x70\x05\xea\xf4\x48\x1d\x09\x60\x44\xe1\xad\xa9\x3f\x17\xc1\x59\x56\xcf\x4a\xe4\x28\x47\x93\x90\x09\xbb\x21\xda\x19\xd9\xa2\xae\xe8\xf6\x3b\xe6\x94\x9a\xd0\x1e\x07\x49\x5b\x34\x06\xdd\xfe\xc5\x4f\xab\xfd\x0f\x08\x72\x32\xc6\x99\x20\x6f\x47\x3f\x66\x75\x4d\x6e\xa5\x78\x67\xdc\x19\xb4\x85\x1b\x1e\x5c\x32\xa4\x8d\xf6\x7b\x5c\x0b\x72\xab\x85\xdf\xa9\xda\x83\xb7\x82\xdc\x5a\xcb\xbf\x7f\x5b\x8b\x6d\x4d\xa3\x3d\x2e\xbd\xc0\x81\x22\x63\x91\xb7\xa9\xe5\xc2\xce\x10\xa6\xc1\xdf\xf6\xb9\xf0\xd7\x5f\xcb\xe3\x10\xba\x05\x55\x26\xbb\xa2\xcc\x87\x8d\xf1\xac\xb7\xda\x24\xa6\x06\xcd\x7a\xa9\x5a\x97\x8b\x2d\x97\xcf\x45\xb9\x5d\xb7\xb7\x27\xed\xad\xce\xed\x8a\x6a\x04\xf5\xc9\x84\x66\x95\x62\xaa\x67\xff\xb8\xac\x2f\xb7\xe3\x71\x36\x9e\x03\x4b\x0d\x91\x16\x27\xa8\x59\xcc\x00\xd2\x9d\x11\xb6\xdb\x8d\xad\x53\x92\x9a\x50\xad\x49\xf8\x76\x99\x44\x97\x32\x32\x4a\xfa\xf5\xc5\x78\xb7\xab\x9f\x36\xae\x9e\xb3\x41\x22\x87\x02\xf5\xb2\x01\xa9\x87\x02\x67\x03\x52\x0d\xb3\xaf\x2b\x2c\x48\x3d\x98\xec\xf7\x78\xa5\x1a\xb0\x64\xbc\xe8\xac\x7f\xfb\xe4\xe3\x8a\x17\xed\xe2\x39\x02\xd7\xd8\x02\x6e\x55\x68\xe0\xce\x24\x23\x62\xa8\x15\x4c\x08\x69\x3c\xc1\xb3\x41\xe6\x55\x93\x0f\xdc\xf1\x33\xc3\x72\xa8\x7d\xe4\xb1\x81\xfa\x12\x73\x22\x06\x13\xac\xde\xaa\x21\xfb\xba\x42\x4f\x03\x47\xd6\x78\x23\xc8\x2c\x8a\xbc\xed\x75\x2d\xdc\x9d\xd7\x46\x38\xb0\x00\x7a\x8e\x36\x06\x48\xea\x5a\x24\x1b\x81\x06\x20\xd4\x33\x19\x6d\xc4\x8c\x7a\xa2\x0e\xb8\x1c\x73\xfc\xd0\xac\x31\x66\x9a\xc3\xcc\xbe\x11\x6d\xde\x0f\x14\xf5\x13\x9f\xa5\x5a\x88\x2e\x01\x7e\x70\x8a\x05\xd5\xdc\x6a\xee\x39\xe6\xb6\xd7\xab\x43\xef\xb2\xf1\xea\x20\xa3\xd9\xbc\x8d\xb8\xc3\x07\x03\x54\xcd\xf8\x9c\x68\xc5\x5e\xcc\xbb\x1c\x30\xbe\x57\xeb\xc1\x93\xad\x09\x6f\xf7\xb2\xc9\xdf\x2e\xfe\x49\x73\x8b\x1b\x39\xad\x48\xf0\x9e\x50\x94\x26\xef\xbd\x35\x44\x28\xae\x40\xa0\xfd\x5e\x80\xb1\xdc\x4b\x01\xee\x54\xfc\x0b\xc8\x97\xe2\x60\x26\x81\x64\x0b\x8e\xe8\xb7\x7b\x84\x29\xea\x1f\x88\x4c\x39\x32\x06\x8e\x95\xd6\x12\x3c\x88\x04\xa2\x47\x02\xdf\xe3\x1e\x83\xfa\xce\x23\xe1\x5f\xb4\xeb\x4e\x5c\x2e\x77\x8b\x5d\xf5\x4d\x31\xda\xef\x37\xd3\x3b\x86\x9f\x09\x0e\x86\xaf\x64\x8c\xbd\xa0\x97\xbc\x20\x74\x74\xad\x18\x73\x8b\x3e\x94\xaa\x55\xd2\xca\x44\x56\x37\xfe\x3c\xca\xe1\xd0\x2d\xd1\xed\xde\x68\xda\xbc\x15\xe4\xc1\x4c\x91\x8a\x62\x79\xb9\x1d\x3f\x7a\x72\xaa\x9e\x67\xe3\xa1\xfa\xb7\x7c\x78\xb9\x1d\x3f\x1e\xc3\xcb\xe3\xe5\xf2\x72\x7b\x32\x7e\xa8\x5e\x4e\xc6\x67\xf0\x92\xe9\x17\x88\x79\x08\xc9\x1e\x16\x8b\x47\x97\xdb\x87\x14\x5e\xce\x96\x79\x7e\xb9\xcd\x72\x78\x29\x4e\xb3\xe5\xfc\x01\xfe\xa4\xc8\x02\xab\x7f\x15\x55\xf1\x7c\xe5\xbb\xd6\x72\xcb\xe2\xc1\xe5\x47\x07\xd0\xbf\xdb\xd1\xa7\xd1\x7f\xff\x2f\x11\x9c\xd1\xa5\xf8\x65\xb3\xa1\xd5\xf3\xac\xa6\x09\xd2\x5a\x3d\xaf\xc4\x47\x1b\xb0\xdb\xbd\x15\x0e\xd7\xdf\x5b\x2e\xcf\x44\xeb\x0a\xb6\xdf\x4f\xe4\xa8\x16\xdb\x2a\xf7\x29\xcd\xe5\xc7\x48\xdf\x32\x7c\x52\x63\x0c\x5b\xb9\xc9\x2c\x85\x10\x4f\x56\x25\x02\x51\x8d\x9a\x74\x00\x37\x74\x30\xd9\x24\x8a\x63\xc5\xa0\x34\x6a\xdd\x4e\xaf\x57\x7d\xf9\x41\xe0\xd7\xa6\xef\x4f\x74\x17\x9f\x3c\x56\x43\xf0\xf0\xc9\xc9\x10\xfe\x9d\xc1\x48\x4c\x60\x24\x16\x05\x3c\x61\x88\xf2\x09\x3c\x8f\xe1\xf9\x10\x9e\x8f\xe0\xa9\x86\xee\xf1\x44\x8f\xd6\x24\x53\xcf\x87\x0b\x78\x79\x44\xd5\xf3\x74\xac\x9e\xc5\x63\x08\x2a\x72\x78\x52\x78\xa1\x30\xce\x14\xbe\xa7\x4f\xe0\x99\xe9\x08\x55\xec\xe9\x44\x15\x78\x7a\x02\x19\x9f\x3e\x54\x19\x9f\x66\x90\xcb\xe9\x42\x65\x79\x4a\xa1\x94\xd3\xe5\xc9\xe5\x76\xfc\x64\x02\x31\x4f\x26\x67\xf0\x84\x98\x27\xc7\x10\x73\xfc\x48\xbf\x9c\xc2\xf3\x4c\xbf\xa8\x02\xce\x74\xf3\xcf\xc6\xaa\x49\x67\x27\xaa\x66\x67\x0f\xa1\xdd\x67\x0f\x9f\xc0\x13\x52\x3d\xd2\x41\x8f\x54\x63\xcf\x1e\x43\xda\xc7\x2a\xe3\xb3\x27\xaa\x7e\x67\x0b\xf8\x6e\xa1\x9a\x7a\x96\xeb\xa4\xd0\x3b\x67\x39\x7c\x5d\xa8\x62\xcf\x28\x7c\x46\xd5\x67\xd9\x78\x02\x4f\x15\x92\x41\xa1\xd9\x43\x08\x79\x08\x21\x0f\x4f\xe1\xf9\x04\x9e\xd0\x8c\x0c\xaa\x91\x3d\x82\x44\xd0\x99\xd9\xa9\xfe\xad\x6a\x94\x41\x2d\xb2\x27\xf0\x31\xd4\x25\xd3\xb5\xc8\x60\x74\x32\x18\x9d\x2c\x87\xfc\xa0\x46\x19\xd4\x25\x83\xba\x2c\xa0\x2e\x0b\xa8\xc5\xe2\x84\xc2\x53\x8d\xf5\x42\x77\xc3\xe2\xe1\x43\x78\xaa\xcf\x16\x8f\x1e\xc3\x53\x65\xb7\x80\x5e\x58\x40\x2f\x2c\xa0\xe4\x05\xb4\x7f\x91\x8f\xe1\x09\xe9\xa1\xe1\xf9\x09\x8c\x74\xfe\x70\x0c\xcf\xc7\xfa\xe5\x09\x3c\x33\xfd\xa2\x12\xe7\xd0\xb9\x39\x14\x91\x43\xe6\x39\x64\x9e\x43\x83\x72\x98\x7f\x39\xcc\xbc\x3c\x87\x34\x39\x84\x43\x41\x79\x01\xdf\x16\x10\x0e\x6d\xcb\xa1\x6d\x05\xb4\xa7\xd0\x2d\x29\xa0\x25\x05\x14\x56\x40\x1b\x0a\x28\xa6\x80\x62\x8a\x3c\x83\xa7\x2a\xa6\x28\x8e\xe1\x83\x02\x3e\x80\x5c\x0b\x20\x51\xf4\x64\x02\xcf\x87\x43\xf8\xa7\xbe\xa0\x0f\x4f\xe1\xe5\xa1\x2a\x89\x2e\x20\x7e\xa1\xe3\x17\x67\xf0\x5c\xc0\x53\x55\x96\xe6\x4f\x20\x02\xea\xbc\x9c\x3c\x81\xa7\x4a\xb4\x3c\x79\x04\xcf\x53\x78\x42\xc8\x29\xd4\x79\x79\xaa\xb2\x5d\x3e\x81\x49\xba\x7c\xf2\x10\x9e\x8f\xe1\x09\x69\x35\xb1\x5c\x9e\xe9\x17\x98\xd7\x4b\x28\x6a\xa9\xfa\x68\x32\x3e\x2e\x86\xea\xdf\xc9\x18\x9e\xc7\xfa\xe5\x14\x9e\x67\xf0\xcc\xe0\x59\xc0\x93\xaa\xe7\xa3\x27\xf0\x84\xd8\x47\x14\x3e\x78\x0c\x5f\x43\x85\x26\xe3\xd3\x87\xea\xa9\x06\x7c\x32\x7e\xf2\x08\x9e\x50\xd2\x13\xc8\xe3\x4c\x3d\x4f\x1e\x2d\x2f\xb7\x93\xd3\x09\x14\x77\x3a\x51\x1f\x9c\xea\xb2\x4f\x4f\xe0\xe5\xd1\x31\x3c\x4f\xd4\xf3\x14\x7e\x9f\xc2\xef\xc5\x29\x24\x52\x04\x67\x72\x0a\x0d\x38\xcd\xcf\x20\xa8\x80\xf8\x42\x45\x3c\x19\xab\x15\x31\x79\x32\x86\x97\x4c\x55\xf4\xec\x58\x75\xc3\xe4\xec\xf8\x18\x9e\xa7\xf0\x54\xed\x38\x3b\x81\x90\x13\xc8\xe4\xec\x64\x71\xb9\x9d\x64\x93\x53\x78\xaa\xe8\x4c\x4d\xb6\x49\xf6\x48\x8d\xca\x24\x53\x94\x6a\x92\x41\x63\x33\x35\x31\x26\xd9\xe3\x47\x10\xf1\x38\x57\xcf\xd3\x13\x78\x39\xd5\x2f\xaa\x85\x0b\xa0\x1d\x93\xc5\x58\x55\x6e\x01\x4d\x5b\x9c\x3c\x86\x20\xe8\x57\x58\x53\x93\x85\x5a\xd3\x93\xc5\x63\xa8\xf5\x02\x1a\xba\x78\x32\x86\xe7\x44\x3d\x33\xe8\x99\x45\xf6\x08\x9e\x4f\xe0\xa9\x1a\x95\x1f\xe7\x2a\x22\x3f\x39\x81\xe7\x63\x78\xaa\xba\xe7\x05\x14\x9b\x17\xc7\xf0\x7c\x08\x2f\x74\x0c\xcf\x63\xfd\xf2\x04\x9e\xaa\x83\x8a\x1c\x12\x17\x54\x7d\x5f\x2c\x61\x3a\x14\x6a\xd3\x3c\x1e\x8f\x73\x78\x16\xea\x09\x59\x1e\x8f\x97\xe3\xcb\xed\x71\x4e\x97\xea\x25\x5f\x4e\x2e\xb7\xc7\x05\x85\x98\x42\xef\xc0\xc7\x19\x6c\xba\xc7\xf0\x72\x76\x06\xcf\xec\x72\x9b\x3d\x7e\xac\x3e\xc9\x1e\xab\xc1\xcc\x1e\xab\x2e\xca\x1e\x9f\x16\xea\xa9\x72\xcc\x1e\xab\xac\xb2\x27\x8a\xdc\x65\x4f\xc6\x8f\xe1\xb9\x50\xcf\xe3\x47\xf0\x84\x10\x45\x30\xb3\x27\x50\x5c\xf6\x04\x3e\x38\x3b\x56\x9d\x99\x9d\x29\x42\x9d\x9d\xc1\x3a\xcb\xce\x1e\x41\x0c\x2c\x88\xec\x4c\x4d\xc3\xec\x6c\x71\x02\x4f\x9d\x58\x2d\xba\x0c\x08\x72\x96\x01\xa1\xcf\xb2\x63\xaa\x9e\x6a\xe9\x66\x99\x9a\x10\x59\xa6\x96\x5b\x96\xa9\x3e\xcd\xb2\x87\x27\xf0\x84\x0f\xd4\x9e\x92\x65\x8b\x63\xf8\x6c\xf1\x10\x9e\xa7\xf0\x7c\x02\x4f\xc8\x48\x51\xa2\x2c\x53\x3b\x61\xb6\xa0\x8f\xe0\xf9\x04\x9e\xc5\xe5\xb6\x30\x0c\xc7\x52\xf5\xd7\x72\x31\xa1\x97\xdb\xa5\x66\x48\x96\x74\xac\x82\xe8\xb1\x7e\x51\x6d\x5e\x2e\xcf\x28\x3c\x97\xf3\x07\x0d\xd3\xf0\x63\xc0\xa6\x83\x70\x57\x1d\x24\x41\xc0\xfb\x94\x9c\x3e\x7e\x12\xc7\xaf\x1d\xb7\xe1\x89\xef\x45\x5b\x56\x76\x07\x60\xba\xc6\xa8\xaa\xc0\xbd\x6f\xe3\x76\xa4\x02\x3b\xa1\xc4\xb8\x85\x1a\xe5\x75\xfd\x33\xfd\x24\x09\x47\x87\x50\x49\x12\xb1\xfb\x80\xd9\x9d\x57\x02\x89\xbc\xfb\x76\x14\xde\xe2\xc8\xc0\xa3\x71\x90\x9d\x04\x7b\xe6\x43\x91\xca\xf3\x90\xf7\xb1\x1a\x37\xaa\x28\x27\x47\x90\x4f\xc7\xe7\xc3\xa1\x74\x17\x80\x3a\x47\x23\xfb\x83\x17\xd4\xe1\xa8\xfb\xa7\x90\x4d\x83\x82\xc2\x2a\xa1\xfd\x07\xd1\xee\x4f\x80\xcc\x99\xde\x65\x94\xd6\x95\xb8\x51\x43\x02\xa8\xfa\x97\xbc\x48\xf8\x6e\x47\x35\x2c\x5e\x4d\x25\x30\xda\xda\x4b\x38\xdb\xdf\x01\xc6\x13\xf8\xd0\xf5\x7a\xdc\x16\xa0\x58\x6e\x3e\x52\x6d\xff\x59\x98\x11\x57\xd1\x89\xef\x7a\xd6\x72\xe2\xdf\x89\xe6\x6a\xde\x19\xa5\x37\xe8\x82\xfd\x31\xb8\x39\x12\xd7\x54\xd5\x34\x52\x13\x31\xcb\x25\xc0\xe9\xdb\x08\x5d\x63\x3f\x4a\x22\xcc\xf5\x2d\xc2\x0f\xfa\x16\x81\xcb\x8c\xf1\xba\x75\x29\xc1\x96\xc9\x89\x6f\x97\x05\x97\x04\xd2\xaf\xa2\xc1\xe0\x57\xdf\x36\xde\x39\x6d\x48\x22\x51\xaf\x10\x80\xfe\x3b\xe9\xc8\x66\x25\x6a\x89\xb0\x24\x84\x36\xb0\x9b\x5a\xa1\xaa\x55\x88\xc7\xaa\xbf\x10\x81\x01\xb8\xeb\xe6\x2c\x97\xec\xda\xae\x9d\x73\xb0\xfb\xa9\x84\x90\xf6\x7f\x2b\x1e\x51\xd2\x15\xde\x31\xe7\xde\xf8\xab\x3c\xf0\x74\xfa\x8f\xdd\xe5\x65\x8d\xa2\x01\x35\x6e\x4e\xd5\xdb\xe5\x65\xfd\x6f\x11\xda\x83\x07\x8f\xc9\x24\x8e\x93\x17\x81\x4f\x32\x35\xe8\x26\xab\xee\x8a\x1f\x0e\x78\x30\x8f\xec\x79\xec\x95\x1a\xb2\x6a\xad\xbd\x05\x75\xdd\x4e\x07\xae\x83\xc8\x1b\x91\x48\xa4\x5d\xed\x18\x1f\xc3\x8d\x36\x98\xbe\xc9\xe7\xc6\x8a\x94\xfb\xde\x60\xa9\x4f\x76\x9c\x3c\x9b\x3b\x6b\x52\x36\xe5\xb3\xc9\x7c\xc0\xd2\x08\x7c\x72\x7f\xab\x2a\x95\x15\xc5\x17\xd5\xaa\xa7\xeb\x04\xd4\xb1\x42\xfa\x56\xd2\xc6\x0d\x48\x52\x39\xab\x54\xe9\x0f\xfe\x1f\x07\xb7\x11\xd4\xd3\x91\xee\x82\x13\xa9\x66\x7c\x1e\xc7\xfd\x37\x02\x8c\x9e\xac\x1b\x5a\xb8\xec\xb2\x0e\x68\xbb\x8f\xf1\xbf\x08\xa3\x19\x10\x2e\xe4\x2b\x2a\xcd\x50\xd5\xdf\xdc\x3c\x77\x5e\x0d\x1a\x6a\xf7\x25\xc9\x13\xef\xc6\x31\x42\xf8\x7e\xeb\x8a\x51\x93\xb6\xc7\xe3\x98\x26\xdc\xdc\x70\x7e\x23\x88\xb1\x02\xfe\x5e\xe0\xbf\x0a\xfc\xbb\x68\x39\x6a\xd7\x7e\x64\x42\x83\x61\x4a\xac\x2f\x6c\xdb\xe8\xa8\xa8\xb2\xab\xab\x6c\x51\xd2\x48\x9d\x52\x77\x3b\x08\x78\x51\x89\x0d\xbc\xef\x13\x4f\x97\xfb\x57\x11\x68\x8f\x7e\x2f\xec\x45\x87\xe7\x1a\xe8\x7f\xfc\x97\xff\x25\x42\x3d\x20\xd5\x9e\xc7\x19\x89\xef\xda\x7d\xa2\x4f\x11\x9a\x23\x84\xc7\x7d\xe2\xd3\xff\xc0\xed\x76\x1c\x27\xdf\x0b\x22\x7d\x7f\xe1\x17\x64\x02\x8a\x5b\x5e\xaa\xa7\xc7\x71\xdc\xd7\xad\x7e\x82\xd0\x5e\x4f\x90\xef\xc5\xb4\x5d\xb9\xd4\x0b\xf8\xef\xff\xcd\xb8\xda\x8b\x8c\xb9\x71\x7a\xc4\x38\xc0\xae\x2f\x4a\x91\x7f\x38\x3f\x32\xde\xc7\x27\x9b\x4f\xe7\x47\xc6\xa1\xb9\xf1\xc2\x37\x9c\x6c\x3e\x45\x9e\x57\xe1\xbb\xbc\x2e\x45\xc1\x95\xd4\x57\x22\x70\xd4\xfe\x57\x6b\xd0\x7d\xf4\x57\x61\x8c\x9a\xa0\xeb\xee\xec\xad\x67\xff\xe7\xff\xf1\x2c\x42\x6a\xd2\x7c\x10\xe0\x02\x62\x82\xd4\x2c\xfb\x46\x6c\x01\x51\xe3\x39\x78\x44\xff\x09\xee\x71\xb4\x33\xe8\xdd\x4e\x2d\x88\xa5\x24\xa4\x1a\x55\x9e\x4f\x78\x33\x21\xb8\xce\x67\x82\x8f\xef\xce\xc7\xd5\x90\x70\x9d\xc5\xd0\x64\x75\x71\xa2\xa5\xa3\x02\xff\xa6\x16\x7f\x63\x8b\x41\x4e\xfa\x24\xba\xe4\x97\x7c\x61\x8d\x18\x1e\x5c\xf2\x07\x56\x10\x30\xf5\x2f\x74\x42\x7d\x56\xb8\x5d\x74\x37\x8b\xf2\x82\xf0\xf3\x46\xf9\xaf\xb9\x89\xe1\x6a\x03\x83\x3b\x5f\x06\x20\x40\xe1\x9d\xaf\x70\xea\x37\xd2\xb8\xaa\xa2\x56\xf7\x8e\x0d\x27\x68\xca\x86\x93\x94\x81\xcb\x07\x2f\xcb\x2a\x52\x19\xf6\x49\x36\x4d\x8c\x6c\x43\x78\xf0\xb1\x08\xcb\x01\xc9\x06\x13\x94\xba\x58\xb5\x73\xb1\xc1\xc4\x53\x06\xee\xc4\xd7\x70\xed\xaf\x2e\xf9\x74\xa7\x7a\x61\x8f\xff\x2c\xc8\x47\xc6\x0b\xf1\x71\xe4\x43\x27\x4d\xdb\x57\x72\x4d\x16\xc1\x15\x5f\x9f\x84\x37\x7c\x07\x9b\x46\x7f\xb2\x0f\xeb\xa2\x32\x73\x8a\xb4\x1f\x39\xad\xac\xbb\xb6\x26\x9f\x90\xff\xf1\xb2\xb4\x86\xe6\x49\x5f\x82\xee\x17\xec\xca\x96\x47\x45\x7d\x42\x51\x1c\x8f\xfb\x44\x8e\x72\xb1\x56\x91\x2f\x79\xf1\xa3\x60\x5c\xd6\x49\x04\xb5\xfd\x59\xbc\xe4\x45\x04\x32\x9c\xbf\x08\x12\x09\x9e\x8b\xcd\x4d\xc4\x78\xf2\x9d\x68\x68\x91\xda\x01\xbe\x13\xad\x25\x64\x92\xe2\x48\xd7\xe0\x3c\x42\x38\xb2\xad\x6a\xb8\xdc\xef\xc4\x48\x27\x44\xf8\x4f\xa2\x71\x13\xff\x37\x81\xff\xae\xe6\xe4\x07\x7a\xa3\x48\x6e\x4d\x6e\x4f\xd2\xe8\x25\x07\xde\xe7\x49\x1a\x7d\x93\xe5\x1f\xea\x4d\x96\xd3\x08\x9f\xa5\xd1\xcf\xd9\x22\xc2\x93\x26\xc1\xe4\x71\x1a\xbd\x5b\xb1\xa5\x8c\xf0\xe4\x34\x8d\x9e\xcb\xaa\x8c\xf0\xe4\x49\x1a\x3d\x2b\x55\xd0\x59\x1a\xfd\x98\x6d\x6b\x1a\xe1\xe3\x71\x1a\x3d\xcf\x36\xf5\x2b\x91\x7f\x88\xf0\xf1\x69\x1a\xbd\xac\xf3\x08\x9f\x1c\xa7\xd1\x3b\x9d\xfb\xc9\x89\x4a\x7c\x45\x7f\xd9\x44\xf8\xe4\xa1\xfe\xfd\x42\x7c\xe4\x11\x3e\x79\xa4\xca\x2b\x22\x7c\xf2\x38\x8d\xbe\x17\x6b\x95\xf8\x34\x8d\x5e\x51\x55\xec\xc9\x93\x34\x82\x4f\xce\xd2\xe8\x27\xb5\xd4\x22\xfc\x70\x9c\x46\xfa\xcb\x87\x2a\x9f\x8a\x71\xf9\x2e\xaf\xd4\xeb\xa3\x34\xfa\x01\x6c\x8a\x22\xfc\xf0\x71\x1a\xbd\xd0\x98\xef\xf8\xd1\x59\x1a\x9d\x47\xf8\xf1\x24\x8d\x48\x84\xcf\x26\x69\xf4\x5a\x14\x11\x3e\x3b\xb6\x3f\x4e\xcc\x8f\xc9\xf8\x71\x1a\xfd\x9b\xfa\x7f\x0a\x49\x27\xe3\xb3\x34\x1a\x46\x78\x32\x19\xa7\xd1\x48\xfd\x9f\xa4\xd1\x83\x08\x4f\x54\x03\x6d\xee\x93\xd3\x13\x9d\xe8\xc9\x63\x28\x66\xf2\xc4\x7c\xfc\xe4\x49\x1a\x61\xf5\xdf\x64\x72\x66\x32\x39\x33\x99\xa8\xf2\xff\xff\x11\x3e\x56\xdd\x38\x8b\xf0\xb1\xea\xc3\xcb\x4b\xf5\x63\x92\x46\x73\xf5\xff\x38\x8d\xfe\x7f\x11\x7e\x7c\x72\xac\xfa\x51\xf5\x82\xfa\x79\x62\x5b\xaf\x5e\x1e\xda\x7e\x52\x2f\x8f\x5c\x17\x3d\x3e\x39\x3e\x3d\x6e\xaa\xa8\x5e\x4f\x6c\xdf\xaa\x17\xdb\xe3\xea\xf7\xe3\x66\x5c\xd4\xeb\xa9\x3f\x34\x8f\x4f\x4e\xc6\xc7\xae\x53\x3d\x06\x84\x66\xc1\xd2\x2e\xe9\x35\x2d\xbf\x3e\x9e\xd2\x91\x14\xa9\xb6\x27\xf5\xe4\xcc\x77\xa5\x05\x5d\x38\xf5\x89\x27\xf7\xcd\x1a\xa1\x01\xe8\xbd\x37\x2a\x82\x34\x4b\xe4\x6c\x3c\x47\xa9\x27\x3d\xe5\x77\x27\x97\x59\x02\x0a\x9c\x28\x0d\xac\x8e\x3d\xc9\x6b\xe6\xb3\x64\x2f\xb5\x8e\x53\x0e\xe7\x01\xf2\x07\x57\x0c\x22\xef\x03\x06\xb1\x24\xcf\x58\xc2\x91\x75\xb6\xf2\x5a\xbd\x60\x41\xd8\x94\x69\x26\x51\x37\x87\x67\x09\x47\x69\x05\xcf\xb1\xad\xc6\x4a\x51\x5e\xe1\x1d\x7a\x45\x50\xa8\xae\x82\xf1\x7f\xc2\x9b\x3a\x54\x26\xc8\x14\xa6\xe1\x52\x76\xbb\x31\x21\x4d\x91\x21\xc6\x3d\x80\x71\x70\xe3\x15\xc3\x88\x35\x2f\xdf\x3d\x40\x8a\xb8\xeb\x02\x1a\x13\x1f\x39\xca\x57\x17\x44\xe8\x1f\x5e\x4d\x75\x3c\xce\xa6\xe3\x54\x78\xc4\xbc\x51\x51\xc8\x5a\x0a\x33\xae\x2e\xae\xd7\x41\xbb\xbc\xea\x13\x1e\xc7\xf2\xc2\xfb\xb4\x36\xcd\xfe\x9b\x08\xb5\x14\xaa\xcf\x39\xad\x00\x70\x6a\xc0\x75\x90\x71\x0c\x28\x0e\x8d\xd4\xb1\x89\x24\x44\x6a\x8c\x07\x42\xa4\xc7\x53\x54\x4e\xfc\xaa\x8a\x67\xba\xae\x18\xb4\x56\x75\x17\x4e\xcd\xf7\x7d\x80\x89\x88\xe3\xe4\x6f\x02\xee\x15\x50\xda\x11\xc1\x11\xae\x50\xaf\x22\x7c\xdf\xd1\x37\xdb\x2c\x44\xbb\xe6\xce\x86\x7f\x50\xa9\x93\x1f\x18\x1f\x99\x23\xdd\xd3\x71\x1c\xff\x28\x8c\x91\x86\xdd\x8f\x25\x42\x5d\xdc\x77\x99\xb5\xcf\xe9\x7a\x9a\xfb\x00\x3a\x47\x79\x93\xc8\x13\x57\xd7\x99\xc6\x74\xcc\x08\x9b\x89\x39\xae\x89\xa9\x63\xe6\xa6\xec\xb0\x4a\xd5\x37\xc6\x41\x55\xfd\x34\x33\xd6\xe1\xf5\x45\xd6\x78\xbd\x3a\x02\x78\x85\x9a\x90\xcc\xe0\x6c\xc0\x4f\x2f\x5a\x15\x53\x23\x42\xc4\xb4\x4e\xab\xa7\x63\x42\x12\x28\x71\x40\xaa\x39\x72\x45\xa9\x2f\x0c\xf4\x1e\xd4\xdd\x4b\x13\xe8\x1b\xd7\x04\xb2\x68\xea\x08\x95\x56\x5f\xe3\xe1\x44\x0d\x8c\x79\x07\xfd\x59\x15\xe0\x3b\xff\x3b\xe8\x2b\xd5\xf9\xce\x87\xdd\x39\xeb\xec\x78\x86\xd0\x39\x62\x03\x87\xb2\x74\xc4\x2e\xc6\xbb\x1d\x7b\x1a\x50\x8d\x29\x28\x25\xb3\xbd\x8f\xfe\xd6\x9c\xbd\xc7\xe7\xf4\x62\x32\x3e\xa7\x83\x01\xfa\xbb\x98\xd1\xc1\xc3\x27\x73\x02\x3f\xce\x1e\xcf\x89\x56\xb6\x48\x8c\xc6\x3e\x25\x8f\x1f\x9d\xd3\x0b\x72\xd6\x24\xb7\x49\xa0\x4d\xcf\xcd\xe5\x59\x93\x7e\xa2\x92\x4f\x8e\x9b\xdc\x27\x93\x89\xc9\x1e\x68\xfe\x9c\x44\xdf\x46\x03\xba\x47\x89\x26\x50\xcb\x8c\x1c\x80\x6a\x80\xdc\xec\x4e\x39\xe5\xf8\x54\xbf\x3c\xc9\xf2\xf9\x03\x2c\xc9\x83\x59\x2d\x3f\xbe\x99\x3f\xc0\x15\x79\x30\x7b\xf5\x53\x35\x7f\x80\xb9\xfa\xb5\x98\xf0\xf9\x03\xcc\xc8\x83\x99\xfa\xe1\xb9\x0d\x0f\xbc\x37\xc0\xc0\x59\xd7\x38\xb0\x38\x0d\x10\x80\x14\xa4\xda\xb7\x05\xbc\x99\x51\x3a\xd7\xe7\xd1\xcc\xc3\xc2\x72\xba\xbd\x78\x4b\xac\x6a\x35\x2e\x15\x5f\x9c\x93\xf1\x79\x7e\xb1\x3d\x1f\x0c\x72\x54\x1a\x5d\x02\x92\xd4\x24\xf3\xaf\x1e\x73\x84\x2e\xc8\xf1\xc3\xd3\x69\xb4\xb0\x7f\xb2\x96\x1f\xeb\x45\xf0\x57\xd7\xaa\xa9\x6f\xbe\xfe\xfa\xeb\x37\xf0\x87\xdf\xe0\x37\x13\xf7\xa7\xc3\xde\xbc\xba\xf3\xef\x4b\xe2\x4d\x41\x8b\x3b\xff\xb0\x2a\x1e\xca\xd7\xf9\x7d\xfd\xf5\x64\x02\x3f\x27\xaf\xee\xcb\xfe\x9e\x62\x75\x7c\x64\x67\x78\x8d\xd2\xc9\xc3\xe3\x87\x17\xa4\x56\x4b\x9b\x4c\x1e\x1d\x3f\x9c\x46\x3f\x45\xe9\xe4\xd1\xc9\x63\x17\x78\x7a\x7a\x32\x8d\x2a\xef\x0f\x57\x6f\xde\xac\xe1\xaf\xfa\x57\xfe\xd6\xc1\x9f\x09\xe4\xee\xef\x6b\xce\x55\xa2\x7f\x29\xeb\xff\x58\x55\xe0\x0f\x5a\xd6\x74\xd0\x50\x75\x05\x4a\x27\xa7\xa7\xae\x97\x8e\x8f\x8f\xc7\xd3\xa8\x8a\xd2\x27\x93\xb3\x63\x1b\xf8\xe4\x78\x7c\x32\x8d\x3e\x46\xe9\x93\xe3\xf1\x43\x42\xea\x69\xb4\x88\xd2\xe8\x55\x84\x7a\x39\x69\xdc\x59\x2e\x49\xf4\x2a\x72\x33\xf4\x36\x5a\x47\x84\x24\xd7\xa4\x9c\xe5\x73\x34\x55\x4f\xb2\x4c\x97\xe4\x7a\xef\x7f\x53\xb4\xbe\x99\x78\xdf\xc4\x71\xa4\x8e\x6e\x85\xfe\x36\xe2\x51\x5a\xe9\xe5\x72\xad\x7d\x30\x5e\x63\x88\x07\x17\x8a\x90\xe2\x27\x70\xac\x2f\xaa\x24\x27\x13\xbc\x24\xe5\x6c\x3c\x57\x59\x0f\x27\x26\xf3\x41\x98\xb9\x2a\x6b\x69\xfe\x97\xb3\x7c\x30\x99\x9b\x92\x26\x91\x62\x60\xfb\xe4\x7a\xb7\x5b\xf6\x4d\xd4\x6e\x17\x4d\xa2\x3e\xa4\xe7\xea\xff\x6e\xa7\x0b\x5d\x22\xac\xda\xa4\x4b\x6d\xd6\xa7\x5a\xdd\x11\xf6\xca\x43\x3a\xeb\x37\x91\xbb\x69\x8f\xbe\x56\x95\x6f\xe8\xe9\x8a\xe4\x83\xc9\xf9\xea\x62\x1b\xc7\x10\x55\xce\x56\xf3\xf3\xc1\x60\x85\xce\x6d\x8a\x0d\xc9\xe3\x38\xea\xeb\xea\x0e\x55\x9d\x74\xea\x89\x49\x3d\x85\x9a\xbf\x89\xf0\x9a\xe4\xe7\xeb\x0b\xc5\x55\xac\x51\x39\x5b\xcf\xc9\xa6\x97\x93\xd5\x70\xb2\xb7\xf5\xc4\xad\x7e\xbf\x06\x57\xd5\xaa\x8a\xbd\xe8\x95\xea\x73\x93\xeb\xb5\xe9\x91\x57\x07\x7d\x8f\x0e\x9a\x0c\x56\xf2\xda\xd5\x3a\x34\x18\x1a\xe6\x35\xca\x45\xae\xe6\x48\xb7\x0b\x94\x99\x08\x14\x98\xe4\x53\xdd\x26\x98\x56\x78\x61\x42\x57\x17\xdb\xa9\xfa\x40\x4f\x36\x95\xe1\x86\xdc\xec\x76\x8b\xa9\xaa\x51\xf4\xd3\x3d\x2d\x05\xa8\x04\xfc\x1e\x34\x9f\xbd\x8a\x82\xe2\x6f\x50\x4b\x95\xf0\x23\xc9\x21\xd5\x60\x90\xab\x54\x71\xec\x27\x81\xc6\x9d\xbf\x6f\xa0\x9d\x45\x32\xc6\x1f\x71\xee\x5b\xa8\xbd\x24\x39\x7e\x47\xde\x5b\x88\xa0\x20\xaf\xe8\x55\x04\x93\x68\xae\x33\x52\x71\x6b\xf2\xf2\x7c\x7d\x91\x43\x6d\x98\x2d\x6a\xad\x6a\xf3\xf2\x62\x1d\xc7\xef\xad\x42\xf2\x3b\x3c\xc6\xba\xc4\x09\x7e\x89\xd7\x86\x15\x7f\x4b\xd6\xa6\x84\xb5\xca\x05\xf8\x43\x97\x05\xf4\xc4\x79\x47\x0e\xc7\xf8\xad\xca\x01\xbf\x24\x6b\xa8\xf7\x60\xb0\xee\xbd\x54\x5f\xdf\x51\x9a\x6a\x9f\xd9\xb5\x26\x84\xbc\x77\x3c\x6f\x1c\x27\x57\x24\x73\x76\x39\x97\xf5\x40\xeb\x0e\x42\x0a\xd8\xf7\xae\x9a\x3b\x64\xfc\x7e\xb4\xe5\xda\x1e\xce\xf6\xdc\x18\x7b\xf1\x08\x21\x3c\x01\x8f\x96\xef\x51\x57\xf6\x97\xf5\x40\x5b\xfb\x24\x3a\x89\x14\xc3\x56\xf6\xc1\xa8\x6c\x87\x7e\xe4\x56\xe5\x7e\x1c\xd6\xbd\x5d\x9f\x09\x86\x58\x29\xec\x7f\x84\x70\x93\xbe\x1f\xd6\x2c\x28\xad\x49\x85\xb7\xaa\x28\xfc\x7e\xbf\x6f\xae\xca\xde\x8e\xae\x69\x55\x33\xc1\x49\xf4\x68\x34\x79\x34\x3a\x8e\xf0\xdb\x3d\x42\xd8\xbf\x94\x89\x04\xa8\xb7\x79\x50\xf4\x9f\x36\xa2\x92\x75\x1c\x1f\xc4\xac\x45\xb1\x2d\xe9\x94\x26\x15\xfd\x7d\xcb\x2a\x9a\x44\xa3\xd1\x83\xd1\xe8\x41\xc9\x16\x0f\x1a\x65\xe2\x08\xa1\xb4\xe3\x82\xa4\xa0\x4b\x38\xff\xe8\xff\xa3\x6c\x5d\x4c\xf5\xcf\x64\xd6\x9d\xcd\x1c\x53\x94\xd2\xa4\xb9\x77\x46\xfb\xd0\xf7\x46\xb4\xad\xe9\x51\x2d\x2b\x96\xcb\xc8\x5c\x5a\x7a\x37\xda\xc3\x92\x71\x69\x3c\x3a\xd7\x51\xc3\x2f\x55\x46\xe3\xd7\x89\x75\x00\x8f\xcc\xbd\x85\x92\x40\x5f\xa7\x38\x91\x5a\x93\x55\xf3\xf7\x0d\x28\x5a\x87\xb0\xad\xe5\x72\x5a\xdf\x73\x37\x47\xdf\x44\x9a\x63\x8a\x2f\x5c\x72\x27\x74\xb1\x6c\x6e\xfb\x71\x04\x5a\xbe\xa0\xd5\x8b\x19\xea\x71\x23\x6f\x95\x62\xe3\x1f\x3d\xe5\x28\x87\x8b\xd2\xdf\x86\x3c\xb8\x8a\x1e\x3e\x42\x83\x68\xf3\x29\xc2\xf6\x3b\xb8\x81\xb5\xa9\xff\x36\x78\x04\xb1\x9e\x2c\xcf\x09\x5a\x0e\x3a\x52\x0a\x51\x4a\xb6\x51\x59\xf9\xa2\xce\x6a\x94\x97\x82\x53\xb8\x14\xee\x8f\x11\xc2\xa1\xe0\xc1\x4f\xca\x01\x50\x84\xdf\xd5\x36\xac\xba\xc5\xa0\x60\xd9\xea\x8a\x4d\x96\x33\x79\x03\x40\x55\x41\x08\x99\x20\xcc\xf7\x6a\x44\xbc\x7e\xcd\x0c\xc7\x2d\x7b\xba\x13\x99\x29\x41\x6c\x65\x84\x33\x70\x68\x9f\x24\xb2\xc1\x0e\xd0\x83\xef\x40\x1f\x5b\x45\x6a\xe3\xf5\x56\xb1\x63\xdf\xde\xc0\x3f\x8e\xa8\xd4\x7b\x84\x1f\x8f\xc1\x4b\xa6\xc6\x21\x36\xa0\xe5\x35\x95\x3f\x70\x49\xab\xeb\xac\x0c\x3e\x61\xcb\x44\xa0\xe6\x18\xc3\xce\xcf\x29\x09\xc4\xae\x60\xb0\x12\xc7\x93\x09\x21\xd4\x97\x59\xaa\x64\x5a\x66\x49\x49\x28\xe8\xb1\xae\x92\xb5\x25\xe9\x6d\x96\xf8\x48\x4e\x0e\xb4\xf5\x08\x74\xbc\x5d\x9d\x6a\x55\xf1\x87\x63\x70\x93\x25\x78\xbb\xd7\xbc\x1b\x9b\xe0\xa0\xa1\xed\x59\x1d\x70\x81\x31\x3e\x77\xa7\x0d\xdd\x45\x1e\xb4\xc0\x2a\xab\xbf\x03\x58\x5a\xeb\x1a\x4a\x70\xc0\xbc\x7c\x7b\x4d\x3d\xcd\x4a\xd9\xf2\xeb\xdb\xd8\xcc\x59\x73\x2c\xe9\x99\x63\x41\x3b\x1f\x5c\x2e\xba\x16\xfd\xd0\x28\x66\x56\x9e\xd3\x6f\xdb\x3d\x8d\x75\x64\x75\x97\xb0\x01\x0b\x92\x30\x58\x2e\x03\x66\xe4\x15\x0f\x8e\x71\x46\x00\x39\x6c\x33\x60\xa3\x85\x90\x52\xac\x55\xe0\x16\x04\x46\x0e\x84\x33\xa1\xa3\x5c\x88\xaa\xa8\xd5\x61\x32\xb9\x55\x59\xa4\x02\x4b\xb1\x49\xb3\x3d\x8e\xf4\xca\x8b\x10\x0a\x0e\x53\xcd\xfd\x8b\xe1\x82\x96\x64\x3b\xcb\xe7\xa3\xf7\xef\x33\xce\x85\x04\xcb\xb9\xde\x32\x8e\xcd\x79\x6b\x89\xf6\xa5\xb3\xbf\xbf\x0b\x2a\xad\xbb\xcb\xf0\x81\xaa\x81\xbd\x83\xff\xb6\xca\xae\xf4\x65\xba\x01\xf7\xa7\x1d\xa8\xfe\x74\x26\xe6\xbd\x50\xff\xa2\x56\xe7\xc6\x3d\x38\x79\xc4\x8a\x44\x83\x82\x30\x32\x6e\x3d\x61\xa4\x3f\x66\x4c\x32\x7e\xf5\xad\xa8\xc8\x38\x70\xe4\xdc\x08\x64\xc1\x3f\xf3\x48\x0d\x5e\xaf\x6a\xa6\x0a\x58\xc3\xa9\xb9\xaa\x5f\x13\xd9\x76\xc2\x69\xcd\xaa\x03\x47\x54\x26\x6c\xc6\xe7\x16\x5f\xb6\xd7\x4a\xe7\x57\x23\x03\x3b\x2f\x40\x81\xd2\x4d\xbc\x97\x88\xe3\x9a\x64\x76\x73\xcd\xee\x23\x97\x7a\xdf\x19\x46\x83\x0a\x33\x45\x76\xd4\xf9\xf8\x1e\x25\x98\xb0\x14\x84\xbe\x20\xeb\xf5\x56\xd1\xe3\x92\x46\x20\xb3\x04\xd0\x40\xc1\x93\xda\xae\xde\x6b\x5a\xb5\x80\xa5\xb5\x66\x48\xad\x41\x94\xbd\xcb\x41\xdf\xd4\xa7\xa6\xd7\xb4\x62\xf2\xa6\xa7\x75\xd3\x23\xaa\x37\x74\x83\x47\x79\xff\xfe\xe6\x24\x90\xf7\xd5\x9d\xd6\x75\x76\x45\x87\x60\x2c\xf7\x45\x5a\x41\x74\x64\xbe\x41\x81\xfc\x72\xeb\x83\x91\x36\xb3\xc7\xd2\x21\xcc\x49\x65\x7f\xef\x76\x15\x36\x2b\xfd\x99\x5b\x4d\xb5\x5a\x16\x57\x6a\x9f\x2c\x37\x80\x08\xfb\xa3\xa8\x15\x5b\x88\x70\xa4\xf2\x89\x50\x4f\x0d\x5b\x35\xca\xea\x1b\x9e\xef\x76\x4c\xff\x98\xfa\xbb\xbe\x77\xd1\xe5\xd5\x00\x0b\x40\x55\x68\xe6\x7c\xb8\x3f\x09\x32\x9c\x60\x90\x17\x27\xce\xcf\x71\x86\xf6\x52\x8d\x9d\x17\x80\xab\x04\xaa\x07\xb6\xac\x49\x00\x3e\xa0\x8a\x3d\xc8\x00\xfb\x25\x6a\x0b\x14\x1e\xc7\x95\x0f\x31\x48\x01\x4e\x92\x23\x5c\x02\xcb\xa2\x88\x3e\x57\x6b\x14\x16\x2e\x47\xa9\x0a\x66\x61\xa9\x2a\xde\xb7\x92\x2b\xc1\xeb\xf9\xad\xb0\xd7\x63\xc6\xaa\x0f\x28\xa0\xd7\x03\x25\xd9\xba\x71\xc8\x49\xb7\x90\x15\x70\x89\x0f\x8c\x41\xdc\xd5\xb6\x45\x73\xb4\x86\xd2\xe7\x89\x9c\xb1\x39\xd8\x3c\x30\xdf\xb2\x94\x7b\x68\xc1\x49\xa5\x0e\xc1\xe3\xf3\xe5\x45\xde\xe4\xb9\xd4\x79\x16\x60\x87\xaf\xf6\x8b\xc2\x3f\xea\xc2\xf6\xb4\x21\x5b\x9f\xe4\x7c\x9e\x3c\xae\xc9\xf8\x7c\x7d\xe1\x11\x9d\xb5\x3d\xba\x16\xb3\xf5\x1c\xdf\x90\xeb\x66\x1d\xdd\xec\x76\xc9\x8d\x5b\x47\x98\x91\x1b\xbc\xb2\xaf\x84\x24\x9c\xac\xd0\x94\xa7\x0c\x97\xa3\xa5\xa8\xd6\x99\x37\x43\xd5\x69\x83\x1c\x06\x27\xd7\x08\xe1\xa0\xc2\x9b\x16\x39\x56\x09\xae\xe1\xde\x7c\x6b\xc9\x9e\x41\xf5\xb2\x28\xdb\xc9\xb5\xbe\xc1\x55\xa9\xf0\xad\x5b\xae\x69\x27\xa9\x19\x46\x83\x1b\xec\x6f\x44\xe9\xf5\x1e\xa1\xfd\x36\x24\xd3\x35\x95\xfa\xe5\x35\x50\xa7\x64\x89\x25\xce\x92\x0d\x5e\xe1\xc2\x81\xbf\x60\x37\x2d\x46\x86\x9b\xac\x11\xda\xef\xcb\x91\xe0\x1a\x4f\xfc\x15\xe3\x6a\x0a\xab\x7d\xae\x15\x94\x54\x38\xc7\x3e\x37\x9e\x07\x54\xab\xd9\x3d\x64\x1c\x27\xa1\x09\x9b\xe5\x45\x14\x33\x67\xd9\x92\x3b\x98\xb8\xad\x62\xf8\x55\x3a\x5b\xcd\x42\xc3\xe7\x3c\x52\x5c\xdd\x1e\xac\xce\x19\x37\x00\x78\x89\xa6\x13\xb8\x3f\x09\x17\x27\xd6\x77\xaa\x19\x80\xdb\xd3\xd1\x0f\x9c\xa9\x2a\x09\x35\x39\xc1\x5b\x50\xd5\x41\xad\xe0\xe5\x2d\x7f\x0e\xcb\x39\x8e\xab\x70\x75\xe7\xc0\x37\x2f\x97\x09\x90\x30\x80\xe8\xa3\x95\x93\x7c\x07\xf4\x3e\xcc\xbc\x61\xb0\x10\x0e\xfa\x24\x48\xe6\xba\xc7\x80\x54\xf8\x91\xc8\xc7\x92\xa8\x35\x0d\xb5\xcd\xd7\x4e\x06\xea\x48\x71\x32\xfd\x89\x59\x79\xb5\xbf\xf2\xea\xd9\x72\xae\x4d\xd8\x4b\xc0\x8b\xd0\x0b\xd1\xcf\x1f\xec\xa6\x58\x52\xe1\x64\x45\x38\xf2\x88\xd5\xb7\xa6\x47\xa7\xb7\x21\xd5\x4e\x57\xfb\x34\x59\xc5\x71\x7f\xdc\x27\x64\xb5\xdb\x25\x2b\xb0\x9f\x5a\x21\x5c\x1a\x6f\x4c\xc5\xdd\x9d\xca\x83\x3e\x1d\xf7\xbd\xb4\x76\x3e\x9a\x5d\xf4\xf3\x3d\x5d\x84\xdd\xbb\x4d\x2a\xcd\xee\xaf\x00\xc8\xda\xcc\x14\x70\x30\x53\x43\x6f\x6d\x68\xa5\x56\xf2\x2b\x98\x33\x49\xdb\x7a\xb7\xe9\x91\x38\xde\x6a\x0c\x56\xe3\xed\xe0\xff\x85\x27\x75\x75\xc4\xbe\x62\xb5\xa4\x95\xd9\x7c\xcd\x4a\x8a\xfe\x59\x0b\xde\xe9\x46\x61\x36\xef\xa9\x38\x98\xae\x9b\xac\xaa\x29\xc0\x47\xfa\x47\xf0\xc6\xb9\xc3\xa8\x14\x79\xaf\xf2\xe1\x5e\xf4\xde\xce\xb4\x52\xd7\x7b\x50\xaa\x9a\x60\xfb\x9a\x83\xc5\x27\xc0\x95\xd9\x74\x65\xe6\x27\x83\x37\x9b\xca\xb0\x22\xa9\xdc\xa3\x3d\xa8\xce\x86\xd5\x52\x67\x40\xad\xb1\xc2\x9d\xc2\xca\x51\xf5\xff\xc1\x91\xbc\xc9\xd6\xe5\x5d\x23\xa9\xbb\x4d\xa5\x18\x95\x22\x2b\x9a\x3e\x63\x76\xfb\xd7\x9e\x00\xba\x06\x91\x1b\xd4\x94\xd1\xc1\xb0\x1d\xc4\xd8\xa1\x62\x96\x7f\xdc\xa3\xff\xc9\x23\x82\xa3\xfc\x9f\x75\xf4\x9f\x35\x2e\x41\x67\x82\x46\x59\xb6\x2e\xc0\xb1\x56\x30\x5e\x38\xda\x94\x19\xe3\x51\x38\x6e\x18\x3c\x7a\xaf\x45\x41\x7f\xf9\xe9\x15\x68\xb9\x9a\xdf\x44\x15\xa7\x7e\x3f\xf8\xfa\xcd\x83\xaf\xdf\x8c\x54\x85\x0d\xb3\x7f\xeb\xe9\x9b\x04\xb7\x5c\xfa\xe3\x1a\x50\xa6\xa9\x62\x3c\x28\xcf\x19\x05\x39\x75\x23\x78\x57\xa7\xae\xe6\x98\x3d\x9b\x9b\x33\x25\xf7\xf5\xf8\x4d\x46\x07\xb6\xad\x33\x31\x47\x8a\xe5\xfe\xbf\xb8\xfb\xdb\x2e\xb7\x6d\x2c\x41\x1c\x7f\xaf\x4f\x51\xc5\xdd\xd5\x21\x56\x28\x59\x95\xee\x3e\x67\x57\x65\x5a\x7f\xc7\x8e\x27\x9e\x8e\xe3\x4c\xec\x74\xfe\x73\x14\x4d\x0d\x2d\x42\x55\x68\x53\xa0\x06\x04\x6d\xd7\x94\xf8\xdd\x7f\x07\x17\xcf\x24\xc8\x92\x1d\xa7\x67\x77\xfd\xc2\x25\x92\x78\xc6\xc5\xc5\x7d\xbe\x8a\xc2\x03\xf3\x7e\x50\xb8\x1b\x69\xad\xd7\x85\x62\xd9\xa2\x12\x83\x88\x37\xeb\x22\xcb\x2e\x2e\x24\xb9\x92\xa2\xb6\x4d\x39\xa6\x81\x9b\xb9\x49\x69\x17\x8c\x50\xef\xf1\x2b\xc9\x8a\x80\x22\x3f\x97\x84\x80\xf7\xd6\x75\x6e\x22\x09\x1b\x07\x88\x73\xb3\xdb\x54\x27\x08\x64\xf9\x9e\x98\x80\xed\xbd\x59\x7b\xe9\xb8\x53\x93\x6d\x8e\x0f\x17\x82\xd8\x1c\xda\x00\x50\xaf\x82\xdd\x54\x93\xfe\x2f\x95\x9b\x7a\x83\x95\x1f\xb9\x86\x0b\x30\xd1\x50\xb7\xf9\x10\x37\x57\x6f\x39\x3d\x48\x0e\xa8\x9e\xd7\x7c\x9b\xe5\x13\x15\x68\xc9\x16\x0f\x8c\x89\xdf\xe6\x37\xca\x94\xd8\xd4\x5a\x2f\x36\xb8\xcc\x38\x90\xe9\xd5\x66\x62\x98\x52\x79\xd4\xc3\x8b\x4f\x4e\x73\x58\xa1\x5f\xba\x6d\x20\xa8\x5c\x93\x4d\x6a\x6e\xc4\xc6\x17\xd6\xaa\x18\xd6\xdf\x92\x5d\xc5\x49\x5a\xe3\x46\x29\x43\xe0\xe0\x65\x99\x58\xd9\x23\x9a\x23\x5c\xa5\x12\x47\xca\x43\x03\x34\x89\xfe\xf2\xf7\x3a\x5d\xe7\x1b\x5c\x41\x68\x87\xbc\x11\xd5\x0f\x55\x5e\x84\xfb\xaa\xf2\x8d\xc4\x77\x8d\xa3\xe3\x31\x04\x12\x1e\xde\xee\x92\x30\x36\x14\x93\x6c\x21\xc1\xc2\x27\xa2\xe0\x15\xcc\xab\xfd\x7f\xf4\x8e\x70\x76\x68\xd6\x95\xa3\xef\xeb\x2e\x50\x3f\x36\xf4\x2f\x4c\x0d\xa3\x38\x03\xea\xe8\x2c\x99\x09\x15\x10\xba\xa6\xfb\x43\x49\xce\xd4\xd2\xb5\xbe\x5c\xdf\xb6\xaf\x4f\xc9\xa3\x74\xb5\x44\x8f\x34\x3e\x4b\x12\xeb\x56\xe1\xb3\xc5\xca\x8f\x62\x95\x92\x39\x85\x20\x28\xcf\xf2\x5a\x71\xca\x09\x4d\x10\x26\x92\xbb\x00\xff\x6b\xb4\x24\xce\x98\x04\x7b\x1e\x18\x29\x38\xe9\x8b\x55\x92\x2c\x93\x7f\x4b\x10\x78\x61\x80\x37\x06\x4a\x30\x0f\xf4\x07\x44\x92\x29\x29\x99\x33\xf2\x09\xe2\x4a\xc9\xe3\x8b\xa6\x53\x01\x29\x1d\x83\x97\x58\x67\xf1\xbc\x21\x9f\x32\x0e\x41\x8b\x6e\xc8\x27\x64\x0c\x39\xde\x93\x30\xec\x56\x3f\x6e\xa0\x87\x85\x1c\xf8\x38\x0d\x83\xc5\x0f\xbf\xcd\x1f\xdd\xe0\x20\xae\x7b\x8c\x33\xe7\xb3\x19\xf2\xe2\x06\x4e\xa7\x60\xc3\xd5\x6f\xc4\xb3\xa0\x02\x17\xf8\xf7\x84\xe9\x31\x17\xb9\xc8\x33\xd2\x11\x25\xf7\x03\xee\x18\xfb\x2d\x36\x3f\xa8\xc4\x8c\x8e\xaa\xd3\x2f\x4c\x54\x4b\xd3\xd3\x22\xf3\xbe\x19\x89\xa8\xab\xaf\xf3\x01\xf2\xf9\xa1\xaa\x67\x61\xba\x17\x4c\xd5\x08\x5b\x15\xfb\xbd\xda\xe6\xa5\x89\x03\x2f\x7f\xcf\x09\x2b\x24\xd3\xa0\x34\x80\xde\x4b\x64\x14\x40\xde\xbb\xb7\xb2\x21\x95\xbd\xc7\x06\x01\x53\x5f\x4d\xa9\x37\x12\x84\x95\xb8\xa1\x52\x6a\x81\x89\x6b\x41\x42\xb2\x1a\x8c\x5c\x01\xaf\x02\xea\xb4\x26\xfb\x7a\xb3\xcd\xd9\x74\x9a\xd6\x59\xe7\x9d\xf6\xab\x99\x6f\x1b\xce\x81\x5d\x01\x7d\x25\xcc\x5c\xb1\x5c\x5c\xcc\x6a\xed\x33\x83\xab\xd6\x05\x4f\x24\x6b\xa6\xf8\x0f\x89\xb7\x17\x57\xa5\x93\x46\x97\x46\xee\xbb\xcd\x9a\x75\xb9\xc1\xbb\x2c\x3d\xdf\xc2\x5e\xce\xeb\xaa\x3c\x1e\xb9\xfc\x93\x22\xe4\xd6\x69\xab\x21\x55\x02\xe0\x0e\x96\x53\x97\x97\xd0\xbd\xd2\xfd\x64\xde\xbb\xa5\xfe\x2d\x81\x6b\x95\x82\x96\x27\xdf\xbe\x3f\x1e\xcd\x2f\x5f\xd4\xa3\x6a\x23\xdc\x69\x06\x0e\x8c\x6d\xa7\x3a\x4c\xa7\xba\xae\xfd\xe1\x03\x86\xaa\x6a\x3e\x40\x90\x59\x84\x75\xe5\x3d\xe8\x83\x72\xd0\xf3\x79\xaf\xf0\xd6\xc0\xb2\x7e\x29\x17\x51\x72\x6a\x4c\xff\xd2\x41\xce\xf4\x93\x0e\x73\x37\x13\xfa\xf9\x17\x46\x85\xad\x5a\x90\x6e\x55\x08\x73\xbb\x33\x32\x92\x6f\x20\x06\xbb\x06\x5e\x6d\x34\xa0\xd8\xe6\x6f\xae\x8a\xc7\xa6\xd8\x55\x31\x9b\xa1\xdd\xba\xd8\xc8\x86\x0c\xf4\x2b\x62\x19\x82\x59\xca\x4f\x18\xc6\xbc\xd4\x63\x5f\x17\x17\x97\x9b\xd6\x93\xd1\xbe\xcb\xb7\xef\x7f\x39\xa4\x3b\xa7\xa8\xbe\x48\x77\xeb\xcb\xcd\x4a\xfe\xa7\xdf\x2c\x17\xb0\x36\xaa\x81\xc5\xc6\x90\xcf\xfa\xcd\x74\xaa\x7f\x40\xe2\xe3\x95\x2b\x67\xfa\x74\x86\x9a\xb0\xd5\xa9\x52\xee\xb5\x6d\x68\xb9\xa6\xb4\x5c\x99\x8b\xff\xa2\x22\x52\x9e\x93\xe3\xd1\xdc\x73\x96\x90\x22\xc7\xe3\xb9\x88\xbc\xef\xf8\x92\x70\xcf\xb2\x87\x0d\xc7\xbc\x60\x48\xa1\xce\x68\x70\x95\xf3\x4a\x05\x91\x11\x61\x8a\x48\x3e\x9b\xb5\x61\x0c\x17\x14\xa9\x3e\x9d\xf2\x8b\x0b\x0f\x45\xf1\x50\xdd\xc0\x30\xc5\x26\x8b\x84\xb2\xa2\x3d\x10\x5e\x43\xd8\x39\xe7\xf7\xda\x00\x62\x33\xaf\x01\x1d\xd4\x57\xcd\x74\x7a\x5e\x5f\x35\x59\x03\x2b\x8a\x52\x3a\xaf\x0f\x64\xbb\xaa\xf4\x0f\xdc\xc0\x1f\x24\x99\x1e\x49\xc2\x64\x0d\xfc\x45\x80\x2f\x1a\x45\x27\x96\x59\xbd\x52\xf9\x1c\x74\x29\x79\xe9\xe8\x3c\x28\xa9\xc0\xaa\x21\x84\xb7\x50\x0c\x4e\xcb\x92\x28\xf4\x01\x63\x48\x4b\x34\xf1\xc7\x2b\x07\xa4\x31\x6e\x38\xd6\xec\x1e\xfa\x28\xb1\x6c\x6f\xa9\xc7\xa7\xda\xdb\x62\x38\xfa\xfd\x3a\x2a\x65\x90\xc3\x97\x5b\xf3\x68\x1b\x23\xac\x58\x52\x8d\x9b\x53\xf8\x81\xb0\x46\x80\xe6\x3d\x48\x81\xa8\x4a\x53\xf8\x9d\x57\x10\x62\xf0\x19\x64\xbd\xcc\xa7\xd3\x5c\x01\x6e\xbe\xce\x5d\x64\xa3\x65\xde\xfa\x9a\x91\x68\x3a\xc9\x20\x67\x88\x1c\x1d\x04\x25\x74\x98\x5c\x9d\x6c\xd4\x41\xdd\xde\xa7\xd4\x9f\xa4\x4d\x2d\xad\xd4\xd0\x06\x31\x1c\x8f\xba\x90\x44\xb3\x45\xc5\xc4\x4b\x78\xad\xd6\x69\x58\xe9\xd7\xf3\xe0\xa3\xbb\x54\x40\x78\x25\xdf\xb9\xd5\xe0\x41\xdc\x6f\x1a\x3d\xb9\xb8\x74\x84\xc2\x4f\x79\x5d\x6b\xee\xc2\x62\x2c\x9b\x87\xb2\xce\x84\xbd\x3a\x26\x64\x09\x46\xbe\x57\x6e\x30\x2a\x2c\xaf\x15\x08\x36\xe6\x32\x29\xb3\x5a\x07\xe5\x2d\x43\x9c\x08\x1b\x17\xbc\x7b\xb9\xfb\x81\x32\xe5\x34\x6c\x2e\xa2\x52\xdd\x30\xea\xb6\x53\x9c\xcd\x76\x3a\xdd\xae\x17\x1b\x74\x9f\x5f\x5c\xe0\xb4\xd4\x94\x54\x69\xc8\xab\x54\x8e\x33\x7c\xbb\x41\x98\xda\xc4\xa4\x5b\xdf\xd7\xd4\xcb\xb8\xd0\xb6\x4a\x75\x6e\xb4\x7d\x8f\x17\xab\xc5\xd2\xac\xc2\x3a\xdf\xb4\x56\x20\xfc\x06\x08\xd2\x28\xd3\xa0\x0a\xe8\xb3\x15\xb0\xf0\xce\xa9\xca\xd6\x4e\x75\xd6\x4c\xc9\x8a\xd4\x91\x36\xb9\x04\x3b\x91\x56\x38\x81\xf3\x98\x18\xc6\xef\xbe\xc5\x4d\x56\xcd\xf7\x44\xe4\xc7\xe3\x7d\x0b\xf2\x58\x8b\x00\xb7\x12\x4b\x55\x12\x0e\xb6\xe7\x59\x33\x9d\x56\x5d\x74\xb5\x45\x2e\xe2\x71\x96\xaf\xb7\x1b\x49\x01\x16\x59\xb5\xde\x6e\xf0\x6d\xb6\xb8\xba\x75\x9a\x8e\x5b\xb3\x87\x87\xac\x58\xdf\x6e\x26\x3b\x67\x89\xc4\xd2\x03\xae\x10\xc2\xe9\xc1\x02\xf0\x41\xef\x22\x32\x02\x60\x20\x7c\xf6\xd9\xbd\xc3\x26\x91\xb4\xc9\x0a\x45\xe8\x19\x62\x7d\xb9\x41\x54\x6a\x0c\xe7\xc1\xfb\xa9\x9a\x50\xb1\x19\xa1\xcf\x65\xb9\x5a\x6f\x96\xea\x96\x81\xbc\x76\x9d\x4e\x5c\xb6\x02\xd5\x8b\xd6\xdb\xd9\x5e\x84\xb9\x4c\x75\x57\x42\x1d\xc1\xa1\xde\x84\xa5\x04\xcc\x2f\x9b\x33\xb9\x9d\x08\xef\x8c\x03\x21\xe6\xe1\x35\x32\xb7\x83\x4b\x85\x87\x1f\xb0\x5f\x09\x29\xeb\x13\x20\x64\x94\xc4\x7e\xfb\x3e\xd3\x6f\x6c\x3f\xbe\x42\x5c\xf4\xef\x0b\x95\x88\x05\xee\x0a\x3e\x84\xa1\x99\xea\x1a\xd0\x34\xf3\xd1\xb4\x21\x96\x32\x7f\x54\x2b\x7f\x22\x4b\x7f\x22\xba\x1d\x47\xa6\x49\x1c\xdf\xef\xb5\x75\x41\xd9\x34\x89\x42\xd3\x1c\x42\x1a\x30\x46\x78\x98\x8d\x2b\xf0\x5b\x52\x98\x56\x8d\x99\xf8\x8b\x66\x2e\x29\x37\xae\xb6\x35\x5b\x54\xa7\x39\x6e\x50\x2b\xd1\x44\x63\xc1\xfc\x03\x24\x46\x42\x4d\xf7\x24\x80\x51\xe9\x7e\xfd\x61\x93\x35\xeb\x0f\xce\x1b\x7b\xff\xff\x2a\x6b\x4e\xe6\xc6\x86\xe0\x13\x65\x37\x1d\xfc\x65\x8e\xca\xa9\xb1\xe3\x02\x3e\xd7\xb9\xe2\x44\xa2\x81\xf4\xfc\x68\x21\x6e\xae\xb9\x2e\xa7\x53\xfa\xe4\xe2\x72\x45\x67\xe6\xa6\x59\xaa\xa8\xbe\x55\x26\x34\x8b\xb3\x32\x5e\xb5\x1c\x2d\x1d\x8b\x54\xad\x4c\x0a\x6a\x3e\x4b\xd9\xca\xcb\x43\xbd\x5c\xa0\xe5\xc5\x65\xeb\xf0\xcb\x30\xf2\xa9\x1a\x41\x78\x48\xef\x08\x0d\x99\x10\xa0\xd4\x9e\x7f\x46\xf8\x08\x9e\xe1\xbd\x06\xbd\xf3\x8e\xf9\x1c\xde\x86\xed\x4a\xee\xc1\x3e\xe9\x0e\x82\x77\x60\x0b\x63\x5b\x09\x3e\xa9\x63\xa0\x5f\xa1\xd6\x9c\xab\x9e\x60\xb2\xf2\x2b\xb9\xc4\x38\xde\xcb\x49\x29\xaf\x45\xd8\x31\x20\xc2\xf3\xf9\xb6\xac\x6a\x32\x9d\x52\xcd\xea\x99\xc5\xf6\x2b\x99\x26\x3c\x63\x2f\xc5\xcc\x1a\xca\x26\xdd\x65\xba\xa1\x15\x4b\x4b\xac\x7f\x63\x2a\x79\x53\x9c\x2b\xd5\xc9\x73\x52\xd2\x3d\x15\x84\xd7\x72\xb3\x90\xa4\xe0\x0e\x55\x3d\x9d\x9e\xf7\xbf\xdb\x98\x28\x8a\xe7\xd4\xcd\x21\x3c\x32\x28\x49\x50\x94\x74\xff\x46\xdc\x95\x92\xc3\xf3\x9e\x66\xc9\x59\x32\x0b\x5f\x5c\x40\x7b\xc9\x64\xa7\x22\xf9\x9b\x05\xc9\x4a\xeb\x87\xbd\xd3\x26\xd0\x75\x96\xfb\xcc\x3b\x35\x43\x70\x91\x14\xbb\x4d\x20\xbc\xb3\x53\xeb\xcd\x0c\xd2\x8d\x0f\xcd\x01\xe1\x5c\x3d\xe9\x49\xa4\xb5\xa4\xd0\xf5\xf0\xdd\x87\xa5\xff\x80\x70\xed\x31\xfa\x97\x8f\x16\xd8\xed\xaf\x36\x3d\xe3\x7d\xd3\x33\x5c\x64\x7c\xbd\xdd\xe8\x9d\x93\x3b\x56\xcc\xab\x03\x61\x6a\xc3\x90\xd9\x1b\xb3\x0f\x45\x77\x1a\x2a\x95\xb3\xdc\x1a\x55\xaf\xbb\x33\x85\x79\xce\x82\x83\x56\x98\x2b\x50\xa1\xee\x95\xf9\x91\x56\xea\xbc\xe0\x24\x41\xcb\x05\xc2\x45\xb0\x97\x45\x77\x2f\xc3\x17\x17\x72\x00\x09\x38\xd4\xef\xa6\xd3\xdd\xe3\x66\x3a\x4d\x9b\x6c\x87\xda\xe6\x5c\xae\x47\x7c\x7b\x1b\xbd\xbd\xb7\x10\x9c\xdf\xec\xac\x3a\xb4\x66\x67\x23\xf5\x11\xbe\xb5\xf7\x4e\x28\xd2\x32\xb6\x86\xde\x2a\xac\xfa\x27\x78\x29\x5c\xb8\x1f\xbd\x06\xe6\x47\x1a\xad\xbb\xd4\x98\x04\x33\xb4\x54\xb4\x7a\x8b\xdf\x95\x39\x7b\x2f\xa9\x66\x37\x04\x4f\x37\xea\x37\xc2\x62\x03\x00\x6e\xd4\xb6\x21\xcf\xbd\x7d\x48\xa3\xd5\x97\xcc\x60\xb3\xe0\x33\x4a\x7e\x93\xf7\x58\xd8\xa5\x41\x26\x61\x4b\xa6\x8c\x82\xf2\x30\x7e\x7a\x24\x84\xb7\x46\x5b\x7c\x5d\x6d\x26\xba\x93\x1c\xc0\xac\xd7\x6e\x6e\x86\x14\xc2\x99\x16\xea\xf4\xd7\x98\x05\x70\x26\xf1\x28\x04\x25\xe0\x74\xfb\xec\x36\xe7\xf5\x52\xcc\x83\xe7\x87\x08\x16\xf8\xbc\xba\x37\xd4\x09\x3c\x62\x4d\xbd\x74\x57\xbe\x5d\xda\x72\x6a\x0c\x6a\x3b\x5a\xf9\xef\x6b\xd2\x1e\xef\xaa\x8f\x84\x5f\x6f\xab\xfd\xa1\x62\xf2\xe2\xf6\x68\x87\xbe\xfa\xf2\xa4\x5a\x79\x51\x54\x4c\x69\x10\x15\xcb\xf2\x05\xa4\xcc\x67\x8c\x0a\x7f\xe6\x60\x3e\x97\x20\xf2\xf8\xb5\xe4\x56\xec\x4b\x15\xec\xfc\x5d\xce\xeb\x64\x80\x7d\xeb\x92\x50\xa9\x2f\x4d\x49\x04\xf9\x24\x1e\xc9\x86\x12\x84\xef\x25\x94\x2e\x93\xfb\xfb\x04\xc3\x41\x58\x26\x6d\x9b\x18\x88\xf0\xea\x78\x7d\x22\xdc\xc1\xad\xcb\xf3\x45\x8b\x7c\x13\x93\x57\x2f\x5f\x7d\x97\xaa\x6e\x3e\x5d\xb8\x9a\x17\x82\xec\x0f\x65\x2e\x48\x82\xbb\xf3\xf8\xea\xaa\xef\x61\xc0\x99\xcf\xf5\x96\x28\x9f\x78\xfd\x47\x05\x7c\x8f\x96\x23\x05\x15\x8f\xe0\xee\x78\xc7\xf3\xed\x7b\x22\xea\x2f\xa3\x8c\x7b\x50\x33\x3a\x12\x3c\x3a\x80\x2f\x71\x43\x21\xf3\xf7\xe4\xee\x55\x7e\x98\xd7\xcd\xbb\x92\xee\x49\x76\xbf\xcb\xcb\x52\xdc\xf2\xaa\xb9\xb9\x5d\x26\x3a\x58\x7f\xd2\x62\x08\x46\x55\xed\xf7\x39\x2b\x6a\x88\x38\xf3\x53\x55\x63\xea\xea\xeb\x92\x99\x7b\xb3\xcf\xb7\x3a\x07\x00\x04\x41\x48\x9e\xed\x8b\x8b\x44\xc5\x06\xb9\x48\x26\xa1\x59\x33\xba\x37\xe9\xd1\x6d\x70\x97\xfa\xdb\xbb\x30\x13\xbe\x51\xd9\xcc\x75\xe0\x21\xa5\x61\x39\x1e\xc5\xbc\xa8\xb6\xba\xb6\xbc\xd1\xc9\xfe\x20\xee\x52\x14\x5a\xc0\x52\xa0\x2b\xe9\xe3\x05\x24\x57\x83\x7c\xa5\xb6\x3d\x93\x6a\x9b\xe9\xc8\x06\x17\x97\xc8\x84\xc5\x01\x15\x28\xdc\x29\x3a\xd4\x02\xdc\x3b\x4f\x16\xd3\xa9\x6c\xe2\x49\x56\x75\x34\xfd\xfd\xc6\x66\x97\x41\xaa\x87\x1c\xd7\x99\x11\x19\x34\x30\x0e\x49\xe9\x80\xc4\xc6\xb4\x05\xf4\x4e\x73\x9e\x95\x57\xcd\x2c\xa3\x78\x6b\x44\x19\x3b\x95\x41\x08\x7c\xd1\x1f\x2f\x56\xcd\xc5\xe5\xb2\x41\xb8\xc8\x92\x6b\xe5\x67\x49\xbc\x08\xd0\xe9\x0e\x81\xff\x69\x52\x25\xa0\x62\xfb\xa8\x7c\x14\x77\x61\xb8\x67\x70\xe7\x4c\x8b\x2c\xf9\x35\x41\x46\x54\x93\x65\x35\x4a\xaa\xe4\x5c\x16\x4f\xeb\x2c\xa1\x2c\xc1\x79\x56\xb8\x80\x87\x09\xe8\xe6\x6b\xb0\x1a\x2c\x14\xe7\x24\x5b\xcf\xa7\xd3\xe4\x57\xd5\x0b\xac\x72\x73\x71\x81\xe1\x85\xfc\xa0\xbb\xa7\x4f\x16\xe8\x3e\xcf\x92\x8f\x89\x15\x5f\x69\xd1\x95\x75\xec\x31\xc1\x25\x1a\xd4\xa6\xb0\xb1\x98\xaa\x7c\x4b\x1c\x2d\xf9\xe3\xc5\x4a\x85\x5b\x48\xd1\x92\xce\x45\xa5\x34\xed\x7c\x2d\xd6\xc9\xd3\x52\x5c\x40\x80\x93\x4d\x96\xdc\x54\x6f\x9a\x77\x1f\x2b\x5e\xe8\x17\xfe\x11\xc8\x53\x82\x2f\x2e\x51\x8b\x6d\x2d\x15\x09\xc5\xaf\x66\xde\x74\xeb\xc9\x6a\x74\x3a\x4d\xc5\x1a\x60\xd9\x75\x67\x65\x7f\x6f\xf6\x4e\xda\x55\x03\xcc\x4b\x60\x97\xbd\x44\x00\xbf\x49\x4d\xae\x17\x31\xa7\xf5\xcf\x24\x2f\x5e\xb3\xf2\xce\xb1\x2e\x5a\xa8\x29\x24\xcd\xa0\x72\xde\xa5\x71\x2b\x04\x31\x2f\x69\xed\xa2\x22\xd5\x29\xb2\x9a\x43\x65\xcf\x72\x71\x89\x55\x8e\x68\x72\x95\x1b\x68\xaa\x23\xd5\xd6\xb9\x4a\x6e\xa5\x22\x2f\xa8\x44\xcb\x8f\xb3\x0a\x99\x0c\x56\x4c\xbf\x9b\xa5\x7c\xb5\x58\x5e\x22\xbc\x40\x13\x61\xd4\xab\x2a\x10\x12\x44\x9a\x6a\x74\x84\xb0\x99\x32\x7a\x90\xcb\x93\x20\x4b\x2f\xc3\x71\x6a\xb4\x15\x94\xce\x21\x8d\x4d\xda\x34\xd9\xfd\xb2\xc1\x2a\xff\xd6\xb2\x69\x11\xae\x32\xdd\xe9\x65\xdb\x82\x91\x82\x37\x62\x0a\x57\x84\x62\xb7\x9f\x29\xe4\x24\xe1\x53\xf6\xf2\xb4\x11\x55\x12\x58\x84\x07\x61\xed\x55\xbe\x65\x89\x98\x20\xf0\x49\xe7\x94\x5f\xd1\xce\x71\xca\xfd\x70\x58\xe8\x0a\x5d\x5c\x50\x38\xd2\x57\x95\x4d\xe7\x36\x54\xa3\x92\xe5\x67\xb3\x4a\x93\xcc\xca\x48\xcc\xc2\x39\x05\xcb\x30\xfb\x58\x21\x2c\x21\x70\x99\x6b\x12\x5f\x32\xa6\x2d\x40\x78\x3d\x4b\x7e\x39\x48\x70\x53\x49\x36\xe4\x68\xe1\xd9\x07\x52\x83\xd2\x6f\x88\x78\x03\xa5\x5e\xb2\x5d\xa5\xc3\x9a\x91\x79\x5d\xed\x89\xb8\xa5\xec\x46\x2d\x20\x29\x52\xe4\xdc\x5a\x64\xef\x4f\xb5\x2f\x5e\x2a\xc0\x73\xc8\x38\xdf\xa9\x97\x38\x01\xa9\x15\x64\xe8\xbe\x21\xe2\x19\x5c\x48\x12\xd2\x28\x23\x4f\x32\xb0\xac\x0e\x76\x41\x9d\x8a\x5f\x0e\x09\x6a\xc9\x5c\x8d\xf9\x6d\xa5\xc3\xf2\xcb\xe6\x2f\x6c\x6a\xac\xb7\xe4\x93\xe9\x18\xe9\x83\x59\xcf\x54\xe8\xa2\x60\xba\xfa\xcd\x1f\x36\x61\x3b\xc3\xd9\x65\x64\x8e\x8f\x07\xe7\x08\xe3\x1a\x98\xe5\x6c\x6c\x96\x2a\x62\xd6\x45\x32\xab\x66\xc9\x0f\x30\xd7\x43\x49\x1d\x78\x7f\x7b\x07\x07\x67\x33\xe0\x97\x40\x7a\xc7\x57\x45\x83\x53\xe9\x91\xac\x6a\x85\xce\x66\x5e\x84\x5a\xb1\xa6\x1b\x8d\x41\x25\xdc\xcb\x27\x89\x46\x71\x9d\xa9\xd4\x6e\x57\xf5\xe3\x2c\x57\xbf\x66\xb3\x1a\xa9\x9f\x4f\x2a\x1d\x10\x08\x22\xba\xa8\x9f\x10\x7b\x65\x7b\x7b\x3c\x1a\xdb\x47\x7d\x62\xeb\x4c\xb7\xb4\x92\x50\x5d\xe3\x05\xc2\x70\xa4\x6d\xd5\x55\x2e\xdf\xa3\x56\xc2\x51\x78\x98\x39\x5e\xa0\x16\xdb\x65\x79\x9b\xbf\x93\x6b\xa2\x71\x06\xa9\xeb\x44\x2e\xda\xfc\xbb\x7a\x9b\x25\x35\x65\x37\x25\xb1\x75\xdf\x56\x43\x27\xa1\x87\xe1\x16\x9b\x4e\xbf\xa9\xb0\xc9\xfe\xd4\x45\xe3\x65\xb1\xd1\xfb\x64\xb7\x07\xea\x7c\xad\x4d\xb9\x77\x3b\x32\xe9\x2c\x22\x4b\x2b\xbd\x49\x0a\x2b\x98\x45\x94\xef\xe5\x76\x39\xc2\xa2\x05\xb8\x0b\x97\xd1\x5f\x44\xb8\x73\xfe\x2a\x07\xaf\x6c\xe6\x61\xf0\x66\x52\x2a\x76\x1b\xac\xb1\x41\xd3\x4f\x77\xea\x55\x84\x4f\x6c\x52\x82\xcf\x2f\x23\xa0\x1b\x69\x46\x99\xb9\x8d\xb4\xb3\x70\x4b\xfb\xdc\x2d\xed\x8f\xe4\x93\x78\xbd\x55\x76\x21\xdb\xa0\xba\xe7\x42\xe5\x0e\x66\x22\xd7\x08\x5c\x55\x82\xb7\x12\xef\xe3\xca\xba\x3a\x69\xc2\xf6\x05\x65\xc5\x8b\xa6\x2c\x25\x82\xce\x32\x45\x33\xd6\x04\x0c\x90\x20\x23\xdf\x76\x0f\x64\x9b\xa4\x14\x0d\xe7\xae\xae\x0c\x2d\x5e\x94\x68\xd9\x78\x65\x86\xd7\x50\xaa\xa3\x0c\x41\xb0\x23\x5c\x65\xe7\x0b\x17\xe7\xa0\x56\x43\x53\x77\xa3\x6c\x1b\x37\x59\xb5\xf2\xa3\xe2\xfe\xf6\xdb\xbb\x64\x56\xcf\xe0\x2f\x5a\xd6\x78\xab\x6a\xbc\x01\xb2\x5f\x4f\xa9\xc1\x14\x5d\xa5\x5b\xf0\xdd\xfc\x11\x0c\x14\x8e\xc7\x34\x5e\x50\xc2\x33\xd8\x8b\xc3\x75\x26\x6f\x68\x84\xbc\x7a\x68\x3a\x15\xf3\xbc\x70\x54\x76\xba\x35\xe8\x60\x0b\xa0\x05\xa1\x78\xd3\xb1\xb5\xb3\x4b\xe7\xc7\x99\xdd\x76\xb0\xb1\x41\x9d\xc0\x36\xd4\xdb\x9c\xbd\xa8\xf8\xb7\x8a\x4f\x49\x85\x24\xc0\x5c\x2a\xfe\x2b\x2f\x5e\x65\xaf\xe4\x65\x18\xc1\x4a\x49\x7d\xb6\xb7\x59\x96\xa4\xe8\xbe\x5d\x6f\x6c\x68\x16\xfb\x6c\x44\xf5\x40\xe2\xcf\x2e\x3d\x6a\x2a\xd8\x33\xa6\x0c\x8e\xd4\xf9\x52\x3f\xb7\xb7\x90\x11\x13\x64\xbd\xe7\x97\x08\x9f\x2f\x26\x22\x63\x29\x75\xe5\xa8\x2b\xa7\x2e\x65\xff\x18\xa8\xf0\x85\x16\x96\xdf\x6c\xab\x43\xf7\x04\x6c\x55\xf2\x95\xf0\x12\x51\xc5\x9f\x96\x65\x12\x39\x5b\xaf\x5c\x83\xdf\x12\xf1\x91\x10\xf6\xad\xe5\xf6\x82\xd3\x21\x57\x69\x9b\x8a\x0e\xf1\x68\x0f\xd9\x2b\x45\xa8\xbe\xad\x74\xf5\x4e\xed\x07\x98\x2f\xee\xb9\x0f\x86\x3b\xc4\x15\xce\x54\xdb\x44\x21\xae\xa5\x3d\x4a\x6a\x25\x55\x09\xe4\x64\xe1\x87\xaa\xb6\xcc\x55\xbc\xb5\x0b\x97\xe0\xa7\x9a\x4e\x25\xd2\xb3\x3b\x50\xb9\x1d\x90\x57\x8f\x2c\x2e\x59\x00\x15\xd0\xca\x30\x99\x8a\xd0\x5e\xfa\x28\xd0\x23\xbb\x8b\xd3\xc8\x6e\x4b\x28\x02\x2a\xe9\x61\xf5\x1c\x32\xfa\xe9\x9c\xaf\x5e\x1e\x59\x93\xeb\x55\xe7\x78\x3d\x6f\x0c\x3b\xea\x6e\x89\x32\x6b\x02\xec\xbe\x85\x84\xad\xfa\xc9\x6b\xef\xe2\x72\x3a\xad\xd6\xf5\xec\x72\xe3\x17\xcf\xb2\xed\x15\xda\x66\xcd\x7a\x36\xab\x37\xae\xde\x44\x99\x97\xa5\x25\xde\xa2\xb6\x35\x34\xe9\x8a\x66\xe7\x8b\xa5\xfe\x14\x22\x06\x01\xfe\x22\xea\x41\x39\x92\x8d\x33\x19\xd6\x30\x3e\x77\xce\xd6\xd9\x37\x86\x97\xc8\xd7\xd5\x06\x37\xf2\xcf\xec\x72\x83\xcb\x4c\x5f\xfd\xdb\x8c\xa5\x0d\xc2\x3b\x1f\x0b\x96\x78\x0b\x59\x17\xf9\x6a\x37\xaf\x2b\x2e\x52\xb4\xd4\x3f\xa2\xfe\xf4\x9d\x0c\x45\x3a\x0f\xad\xf7\xc6\x6a\x69\x21\x9a\x60\x4a\x32\x8e\x21\xba\x3f\x79\x2c\x56\x17\x97\x4b\x92\x65\x42\x32\x2b\x8a\x51\x08\x78\x95\x1d\x96\xab\x85\x81\xd6\x0f\xee\xdf\x52\x5d\xb7\xdb\x16\xb5\x54\x22\xcc\xf0\x82\x25\x70\xef\x2a\xbe\x73\x67\xa9\xf2\x8f\xf9\xa1\x4f\x93\x8b\xd3\xe1\x8c\xc7\xa0\x4c\xf3\x6f\xc1\xce\x01\x33\x67\x81\x8f\x47\x80\x8f\xaf\xeb\x0d\xee\x40\xd9\xc5\x65\x08\x67\x06\x5e\x1c\xc9\xd1\x68\x3a\xc8\x14\xb7\xcf\xdb\x5b\x4b\x7e\x34\x70\xe2\x5c\x09\x78\xda\xde\xa2\x16\x9c\xd4\x74\xf3\x92\x2a\xb4\x60\x7f\x3c\x5e\x5c\x6c\x71\xf9\xa4\x5a\x51\x07\xa0\x4b\xea\x0c\x1d\xe9\x9a\x3a\xa3\xa6\x6c\x2b\x2f\xd0\x6d\xfb\x30\x38\x2e\xae\x88\x73\x80\x20\x16\x12\x79\x46\xd7\x44\x2e\x19\x5d\x13\x09\x89\xb5\xcf\xdb\xf5\x99\xd5\x04\x33\x20\x3b\xe5\x1f\xa0\xa7\x70\x32\x33\x3b\x29\x89\x88\x27\xfe\x29\x59\x45\x58\xdd\x59\x0d\x37\xae\x7f\x94\x34\xeb\xeb\x9a\x59\x76\xea\xc9\xcb\x9e\xc9\x9e\x2b\xe8\xb9\x5b\xbc\xc7\xe4\xe6\x60\x5e\xa1\xd9\x1b\x51\xfd\x8d\x92\x8f\x4a\xf0\x81\x35\x04\x5a\x56\x49\xb7\xd1\x65\x94\xbe\x1a\x14\xba\x69\xce\x24\x10\x72\xbb\x71\x57\xf9\x93\x6c\x71\x95\x5f\x5c\x18\x7c\xc0\xd7\xb9\xc4\x07\x75\x40\xae\x96\x59\xed\x83\xe4\x64\x71\x6e\x0a\x48\x90\xa9\x1d\xc8\x34\x17\x17\xb8\x79\x6c\x41\xa6\xc1\xe5\x08\xc8\x94\x12\x64\xca\x13\x40\xc6\x56\xfa\xe6\x8a\xc8\xe1\x92\x8b\x21\xa8\xc9\x43\xa8\xe1\x59\x36\x0a\x07\x00\x45\x17\x97\x00\x45\x68\x74\xeb\x1f\x02\xb8\x4e\xf1\xfc\x61\x48\x19\x02\x8b\x6a\x96\x3c\x92\x30\x21\xaa\x9b\x9b\x92\x48\x62\x83\x18\xf3\x39\x52\x74\xc8\x12\x89\x62\xbd\x52\xe9\xbd\x56\x0d\x82\x04\xdf\xb4\xf6\xcf\xb2\xb5\xbf\x57\x94\x41\xb8\xf2\xaf\xc2\x00\x85\x6c\x29\x44\x17\xd7\xb4\x68\xad\x99\x45\xb0\x16\x73\x77\xa3\x6b\x40\xde\x8d\x62\x4d\x7b\x77\x63\x73\x85\x9a\x4c\xac\x67\x33\xea\xdf\x8d\x86\xbd\x02\x09\xe7\xb2\x06\xdb\x4c\x2b\x63\x3a\xaf\x0c\xe0\x4d\xa7\x39\xf0\x53\xe3\x80\x24\x20\xb5\xa6\xbd\x0e\x79\x10\x7b\xc4\x17\xf3\x72\x75\x27\xd6\x1a\x8f\x4a\x4a\xa6\x0e\x70\xac\xc0\xb5\x8f\x63\xe5\xf1\x80\x11\x5e\x95\x8f\xb3\x7a\x4e\x58\xe1\xdb\xb5\x97\x17\x62\x52\x66\xea\xfd\x74\x9a\xe6\x19\x4b\xb7\x98\x58\x30\xdd\x1a\x99\x9f\x24\x79\xf1\xf6\x31\xf1\x00\x16\xf2\xfc\x85\x70\x78\x26\xa1\x6a\x2b\xc1\x70\x3b\xbb\xc4\x8f\xfe\xed\xb7\xfa\x7f\x3e\x52\x46\x2b\x5e\x93\xb2\x29\x3f\xf4\x18\x9e\xcd\x04\x6a\x69\x78\x71\x34\xc7\x63\xae\xae\x87\x3c\xc2\x8c\x52\x7d\x57\xf6\x08\x5b\xe0\xfa\x8a\xe6\x50\xd2\x6d\xae\xd9\xd2\x2e\x50\x3e\xb4\x0d\x7d\x50\x33\x62\x4f\x6d\x5d\xea\x12\x43\xd0\x98\x28\x80\x6f\x26\x4e\x59\xd0\x59\x20\xb7\x0a\xd4\x5d\x79\xc8\x1c\x47\xef\x9d\x64\xb0\x96\xb1\xca\xea\xa7\x11\x57\x63\x25\xae\x96\x7f\xd5\x0b\x27\x2f\xea\x1c\x5e\x38\x6c\x6f\xe1\xe8\xf2\x9c\xd5\x87\xaa\x26\xa0\xc4\x55\xd2\x8f\x17\xff\x3b\x4b\x24\xad\x14\x3b\x84\x45\x87\xb1\x7e\xf1\xbf\xe1\x52\x30\xa5\x5f\xb2\x9a\xb0\x9a\x0a\xfa\xa1\xbb\xd4\x85\xc7\xd9\xcf\x5f\x7c\x93\x25\x8c\x7c\x12\xdf\x56\xd5\xfb\x7d\xce\xdf\x0f\x08\x56\x02\xfe\xd0\x94\xad\x5d\x6a\xe5\x2b\x7b\xd4\xbd\xe0\x27\xca\x23\x06\x22\x9e\x48\x96\x34\xd5\xa9\x55\xac\xee\x44\xa7\x60\xc7\x5d\x5e\x4d\xf1\xd7\x4c\xf2\xd7\x6d\x00\x4a\x2f\xbe\x91\x53\x3c\x70\xf2\xe1\x2b\x0e\x57\xd8\x90\x77\xda\xe9\xc1\xf8\x99\x8a\xb5\x43\x3f\x1b\x6f\x06\x7c\x80\xc7\xe4\x6a\xdc\x5c\x8e\x7b\xa2\xdb\x6a\xdd\xf6\x7c\xe3\xf0\xf3\xc0\xe8\x1f\x40\xab\x43\xd3\x02\xb7\xd9\xf8\xa7\x58\xb2\x6a\xe6\x23\x2e\x9a\x89\x35\xb3\x22\xc2\x4a\x3d\x81\x88\x30\xf7\x83\x47\x81\x60\x5a\x93\xa0\xb9\x4f\x82\xd2\x5d\x9a\xaf\xeb\x4d\xb7\x63\x74\x0f\x6f\x4d\x94\xa3\xd0\xf2\x9a\xfb\x96\xd7\x7c\xdd\x6c\xb2\x4c\x96\x9e\x4e\xb9\x89\xb4\x28\x09\x02\x9b\x6a\x5e\x89\x12\x35\x31\xc0\x7b\x11\x43\x28\xae\xf0\x7d\xa7\xfb\xe5\xf9\x42\xc5\x95\xf8\xf5\x96\xb0\xef\xe4\x91\x07\xf1\x5e\x07\x9a\x00\x31\xa9\x6d\x81\xc2\x76\xd5\xbe\x10\xa8\x06\x0c\xdd\x21\x47\x8d\x59\x09\xe1\x02\x3d\x39\x95\x94\x1a\x83\x66\xfb\xbf\x68\x10\x70\xe9\x86\x23\x89\xed\xba\xbf\xe3\x1a\x9c\x57\x1d\x59\xa4\x42\x58\x0a\xc3\x4b\x24\xd6\x4a\xa2\x46\x6f\x0b\xbb\xb8\x90\xf8\x9d\x7b\x1a\x90\x01\x91\xae\x9c\xd5\xbf\xc8\x49\x7d\xe4\x8a\x7a\xa9\x13\x6d\xb8\x54\xcd\x92\xbf\x9e\x79\xec\xf9\xc1\xa8\x83\xc7\xd1\x3f\x1b\x21\x54\xd7\x1b\xad\xee\xb2\x3e\xdc\xa0\xf5\x4a\x9b\x8c\xad\xf3\x0d\xb2\x38\x3f\xd5\x57\x59\x8e\xb0\x4e\x35\x9d\x24\x08\x2d\xf5\x6f\x1d\xd7\x48\xe1\x71\xc3\x4b\x61\xc5\xe3\x20\x24\x89\x2f\x8d\xf4\xbd\x21\x54\x38\xc9\x79\xd5\xb0\x22\xc1\xc9\x36\xaf\x89\x51\x05\x02\xc0\xe7\x8e\x02\xed\x12\xcc\x72\x64\x74\x9d\x6f\x36\x5a\xf3\x06\x26\x94\x4a\x8a\xa2\x98\x2c\x5c\xa3\x27\x0b\x64\x69\x81\x54\x68\xe6\x0b\x4d\xea\x4c\x49\xf0\xba\xb4\x23\x4f\xb7\x4a\x66\x89\xf5\xf7\xad\x42\x9f\xad\x1f\x26\x69\x3f\x2e\x58\x65\x7d\xc1\x6a\x5f\x5e\xca\x90\x81\x23\x4f\x5e\x4a\x03\x79\x29\xcf\x34\x14\x31\x08\x93\xdf\xfa\x9a\x30\x0e\xfa\x2f\xfc\x1f\x0d\xe1\x77\xcb\x40\x58\xca\xb4\x2e\x8c\x7a\x8e\x2e\x1f\x7c\xd1\xc0\xde\x64\xfc\x73\x76\x6b\xd0\x0c\xae\xb4\x4a\xc8\x17\x8d\x52\x2c\x56\x12\x13\x2f\x15\x56\x46\x57\xa9\x58\x55\x9e\x64\x74\xa9\x1e\x7e\xe2\xe4\x03\xad\x9a\x3a\x45\x92\x26\x08\xd0\xb9\xa5\x4e\x15\x49\x8a\x96\xe9\x50\x3f\xcc\x24\xe6\xb3\x42\xd8\x25\xf1\x0c\x03\x7c\xda\x0c\x21\x84\x7f\xff\x48\x38\x2c\x77\xf7\xfc\x05\x17\x10\x6a\x5b\xb1\xbe\x95\x18\xce\x65\x72\x51\x6a\x01\x39\x10\x95\x1b\x44\x22\x20\x28\xf2\x57\xef\x53\x4c\x1b\xfe\x25\xc4\x19\x06\xde\xd2\xc0\x3f\x97\xf0\xcf\x2f\x2e\x50\x97\x32\x4d\x30\xe0\x47\xad\x93\x61\xe0\x13\xe4\x48\x79\xc9\x2f\x29\x4d\x06\x28\x22\x07\xd9\x1f\x98\xc5\x2f\x72\x16\xcd\x41\x1e\xc4\xa7\x1a\x88\x3b\xf3\x38\xa4\x24\x8c\x3c\x67\x2f\xf2\x40\xc4\x14\x36\x0b\xba\xa0\xa2\xfa\xc8\xbe\xb0\x61\x2f\xbd\x76\xd8\xb0\x27\x41\x16\x6f\x14\x42\x7f\xd5\x27\x0a\x3a\x28\x5f\x96\x80\x8d\xef\xbe\x34\x57\x0c\x8e\x7c\x83\xf8\x79\xf6\x6a\x49\x03\x91\xbd\x3f\xa2\xa7\xee\x1e\x7a\x5b\x0d\x0f\x29\x7a\x17\x0d\x0f\x4c\x5f\x35\xa2\x07\xaf\xa1\xea\x40\xf8\x23\xf9\xd5\xe9\xb0\x06\x47\xd2\x8b\xb3\x17\x8c\x24\xf2\x32\xa0\xe1\x4c\x06\xb9\x60\x0c\x34\x83\xc4\x10\x16\xdd\x31\x4c\x25\x22\xd6\xba\x3b\x3a\xa1\x19\xc3\x2c\xab\xda\x4e\xe3\x7f\xa5\x65\x49\x0a\x5f\xea\xc9\x40\xd3\xdf\x97\x06\x60\x6a\x88\x10\x98\xe6\xff\xdf\xc8\x71\x7e\xa5\xe2\xf6\x0f\x58\xf0\x2e\x61\xf8\xbb\x00\x45\xd1\xe9\xfa\x51\x04\x80\xf3\xaf\x30\x0f\xd5\xce\xbf\xe6\xac\x3b\x7e\x15\x3b\x97\xc4\x16\x0d\xf2\x4f\x76\x2e\xd6\xee\xa8\x55\x49\x2d\x10\x39\xe4\xb5\xc4\x06\x92\xcc\x80\xae\xff\x29\x42\xbf\xb9\x81\x3d\x83\x81\xdd\x56\x1f\x5f\xb2\x67\x84\xf5\x95\x9d\x66\x65\x95\xc1\xdd\x33\x08\x8f\xaa\xf4\xf9\x9e\xfd\x43\xa8\xe8\xb7\xe6\x12\x36\xd0\xea\x45\xcf\x22\x21\x30\xa5\x78\xf4\x4d\xc8\x10\x4b\xe2\x48\x4b\x91\xad\x86\xb9\xfe\xe5\xf0\x31\xe7\x7d\x49\xcd\x17\xe1\xdd\x78\xb6\x44\x0a\xd9\x12\x27\x1e\x33\xfb\x24\xb8\xb6\xe4\x4e\x04\xaa\xc2\x80\xf1\x85\x90\x53\x46\xfe\x0b\x31\x41\x7a\x73\xb2\x72\x49\x37\x2b\xf9\xea\x1f\x3f\xaf\x8e\x34\x64\x6c\x5a\xb3\x81\x69\x49\xce\xe0\x4f\x72\x32\xf2\x2c\xfd\xc2\x8a\x3e\xe0\xf8\xdc\x77\xc0\x50\x84\xd5\xcc\xb5\x1e\xab\x1e\xd8\xa5\xb9\x7a\x4f\xcb\x32\xda\x23\x2c\x8c\x21\x82\x3a\x49\x3e\xbb\x64\x89\x50\xa4\x91\xa4\xe9\x40\x1a\x27\xaf\x60\x8f\xe6\xb8\x42\x2c\x24\xfb\xb9\x21\x31\x80\xf0\xe7\xda\xd8\x0e\x73\x5f\xdc\xf6\x38\x13\x2e\xee\xa5\x64\xc5\xf4\xb7\xed\xad\xfd\xb2\xbd\x9d\x4e\xe9\x6c\xd6\xb3\xf5\xd0\x78\x2f\x5c\xa9\x35\x4c\xb8\x2a\x8b\xa4\xf3\x61\x03\x17\x39\x33\x9f\xe0\x20\x2f\x92\x4d\xa6\x7f\xfe\xdd\x7d\x7e\x5a\x96\x89\x12\xa1\xbc\x34\xab\xf7\x92\x6d\x39\xc4\x00\xca\xcb\x6e\xbb\xb1\x32\x3f\x93\x0f\x84\xd7\x44\xb7\xf2\xbd\x2c\xa1\xd1\x51\x82\xc5\xfc\xc5\x9f\x54\x85\x1f\x21\x53\xa5\x93\x43\xd8\xbd\x92\xdb\x9b\x60\x32\x67\x15\xdf\xe7\x25\xfd\x4f\xf2\x57\x30\x86\x85\x98\xdb\x08\x6b\xcb\xdf\xc4\xb7\xf8\x5d\x6f\x82\x38\x3c\x81\x8d\xae\x26\x94\xb5\x09\xd1\xd2\x59\xf6\xb6\x7e\x6b\xff\x3f\xb2\x7f\x47\xf8\x45\x91\x8b\xfc\x51\x5e\xe4\x07\x41\xf8\xa3\x8b\x03\xa7\x1f\xc0\xaa\x7a\x9d\x68\x2b\x69\xc8\x0b\x08\x76\xcc\x09\x4e\x54\x15\xca\x76\x72\x4b\x3a\x61\xbb\x74\xf0\xec\x9e\xb5\x30\xcb\xac\x3d\x30\x85\xcc\x69\xc6\xb6\x69\x29\x30\xcd\x1e\xfd\xc6\x57\xbf\xb1\x47\x5a\xb7\xfb\xe8\xb7\xf5\x6f\x9b\xff\xfe\xc8\x37\xf3\x35\x39\xc1\x2a\x5a\x9c\x2d\xce\x33\x48\x99\xa6\x5c\xc9\xe1\x27\xcf\x20\xf1\x67\x16\xb1\xa1\xe6\x2b\x9e\xa2\x25\xc7\x64\x6d\x22\xbd\x6c\x32\xc2\xb6\x10\x43\xea\xe5\x33\x63\x60\x9f\x0a\x34\x4b\xb2\x64\x16\xf9\xc2\x91\x09\x71\x6e\xd3\x1d\x36\xd9\x77\x72\x09\xe6\xaf\xe8\x27\x6a\x72\x39\xa6\xf7\xef\x1a\x5a\x16\xbf\xfc\xfc\x43\x27\x47\xb5\x0a\xa7\x5f\x7f\xa4\x3a\x62\x1e\xf0\x76\x72\xbb\x7f\x26\xdb\x8a\x17\xc9\xd2\x88\xb0\x6e\x69\x3d\x6f\x78\xf9\xa2\xe2\x2f\xec\xd7\x54\x60\x22\xf9\x22\x5b\x49\x02\xe9\x40\x8d\xa7\xa5\x8a\x5c\xab\x0a\xc3\x91\x8d\x15\xfd\x17\xf9\x21\xa5\x98\xf8\x05\x87\xc7\xf2\x2f\xee\xb3\x57\x49\x09\x73\x58\xb4\x83\x17\xfa\x5b\x6f\xec\xdf\xe7\xf5\x58\x1d\xfd\xb9\x57\xed\x5b\x52\x56\xec\xa6\x7e\x5b\x0d\x55\xb4\x05\x82\xaa\x3a\xc5\xe6\xe0\xc4\x9e\x79\xdf\xbd\x75\x6b\x20\x20\xeb\x70\xb5\x5f\xbc\xef\x41\x7f\x8a\xc0\x1c\xae\xf8\xdc\xfb\x6e\x2a\x9a\x33\xe0\x97\xbe\x36\x70\xa4\x82\x8b\xb7\xf8\x3a\x0a\x58\x9a\x5e\x35\x38\x59\x01\xe4\x0d\x11\x10\x57\x13\x27\xb7\x55\x2d\x94\x29\x93\x1e\xc1\x4f\x9c\xec\xe8\x27\xa7\xf2\x56\xe1\x9f\xe0\xeb\x21\x17\xb7\x2f\x2a\xfe\xf6\xee\x40\x52\x82\x10\x84\x5b\xd1\xd2\x54\x61\x1f\xa2\x67\x06\xb2\x0d\x30\x2b\xf3\xac\xe4\x15\xa1\x22\xa5\xa4\xc9\xa3\x04\xe1\x73\x3a\x9d\xb2\xe9\x34\x79\x94\x9c\x67\x19\x33\xf6\x36\x0b\x24\x4f\x6f\x96\x3c\x4a\x66\x0c\x61\xd6\xe2\x2e\xd4\x77\x26\x1a\x5f\x1d\x81\x09\xf2\xab\x3e\x2d\xcb\x98\x8b\x52\x77\x4d\x6d\x1d\x00\xec\xd3\x7a\x0a\xeb\x7c\xce\x18\x83\x11\x4a\xe8\xfe\x82\x6a\xfa\x5c\x7c\xd1\xa2\xd8\xa3\xf1\xd9\xb5\xfd\xe3\xf1\x59\xeb\xea\x1f\x90\xcf\xee\xd5\x3f\x24\x9f\x57\x59\xc1\x77\xec\x88\x0c\x9d\x0d\xd6\xfb\xc0\xf2\x3d\x51\xd2\x0d\xc5\xd7\x19\xc8\xe5\xc7\xa3\xbe\x62\x6c\xcc\xb5\x7f\xfb\xed\xd1\x6f\x8f\x74\xf2\x05\x82\x8e\xc7\x47\xb7\x42\x1c\xd2\x1a\xad\x96\xc1\x87\x15\x59\x26\x8f\x92\xcc\xcb\x89\xbc\x40\xab\x24\x99\xf1\x19\x59\x8a\x99\x3c\x01\x44\x67\xfc\x5c\x6f\xac\x31\xca\x74\x4a\xed\x01\x64\xf6\x81\x21\x4c\xdd\xd1\x6a\xb1\x77\x6a\x97\x7d\xd2\x4e\x4d\x4d\x27\xfd\xdb\xe6\x7b\x22\xe9\x09\x2f\x77\x29\x9f\x1f\xca\x86\x03\x95\x21\xc1\x0d\x4c\x6a\xbf\xd5\x8b\x0a\xd7\x5a\xd6\x80\xf7\x95\x20\x7c\x4f\x19\xf9\xb6\x2a\xee\x7e\xe2\xd5\x9e\xd6\x24\x8b\x6d\x4b\x0a\xc6\x36\x2a\xfe\x91\xea\xfa\xe7\x37\x7f\xfb\x69\xce\x49\x5d\x95\x1f\x48\xca\xd1\x5c\x45\x3f\x8d\xca\x35\x5a\x84\xd0\x5c\xdc\x12\x16\x9a\x8d\x75\x23\xd2\xf8\x79\x41\x0d\x73\x7d\x4e\xe6\xd5\x7b\x1b\x2d\x12\xa2\xae\xd2\xec\x9f\xdf\xbc\xfe\x51\x87\xaa\xe5\x26\xec\xaa\xce\x01\x98\xe6\x7e\x54\xbc\x37\x77\x4c\xe4\x9f\x20\x12\x9f\x35\x6a\xc8\x27\xf9\xfc\x90\xdf\x95\x55\x5e\x64\x12\xbb\xe6\xda\x2f\x5f\xb1\x91\x4d\xad\x17\x10\x3a\x3e\x1e\xbf\x59\xfc\xf9\x1c\x02\xd1\x7f\xb3\xf8\x8b\xfa\x91\x7c\xff\xdd\xd3\xe7\x12\x68\xc4\x7c\x4f\xc4\x6d\x55\xac\xd8\xf1\x48\x97\x8a\x72\x69\xf5\x24\x5a\xa3\x17\x6a\x31\x99\xef\x88\xd8\xde\x76\xb2\xc9\x2b\x26\x37\xb3\xee\xc7\xb5\x92\x34\x40\x14\xa6\x34\x81\x1a\x09\x32\x99\x17\x99\x7d\x63\x88\xaa\x49\x9d\xf5\xdc\xfe\xcf\x48\xab\x6c\x4b\xe9\x2e\x75\x74\x92\x8d\x2e\x05\x2d\xf4\xe3\x13\x6e\x21\x22\xfa\x99\xbc\x87\xcf\xc4\x2d\x39\xfb\x77\x28\xf7\xef\xda\x47\xee\xac\xe2\xc1\xdb\x9b\xb2\x7a\x97\x97\xf3\xb3\xe7\xb4\x38\xbb\xab\x9a\xb3\x3d\xc9\xd9\x99\xa8\xd4\x9a\x97\xa5\x2a\xab\xc8\x47\x5d\x03\x1c\xd2\x56\x09\x8a\x8e\x18\xca\x58\xff\x9e\x3a\x85\x98\x31\xb0\xb1\x3f\x93\xfa\x50\xb1\x9a\x7c\x4f\xf2\x82\xf0\x3a\xc2\xdb\xbc\x06\xa7\x3e\x43\x9c\x29\xaf\xdb\x20\x84\xa0\x98\xf8\x3c\x8f\xca\x1b\x4e\x8d\x82\x8b\x47\x15\x5c\x55\xc6\xd7\x0c\x14\x04\xb8\xce\xce\x2f\xaf\x72\x67\xbf\x97\x2b\xfd\xd5\x5f\xfe\x57\x96\x69\x57\x2b\x9d\x23\x32\x47\xe8\xbe\xce\xce\x17\x5a\x01\x25\x87\x70\x09\x3b\x6b\xac\xfd\xe6\x75\xf3\x4e\x39\x57\x43\xee\xf3\xb9\xe0\x54\xf2\x4e\x65\xf0\x25\x9f\x5d\x62\xeb\x2f\xa6\x8b\x40\x70\x21\x24\xd6\x4d\x28\x17\xdc\x64\x25\x16\xeb\x66\x93\x95\xad\xcb\x1a\x00\xe2\x16\x4e\xe1\xbc\xbf\x64\xa2\xfa\x3e\xaf\x6f\xb3\x2e\x9d\x6a\xe8\xeb\x2c\x03\x6b\x38\x96\xdd\x53\xb6\x2d\x9b\x82\xbc\x2c\xc0\x9e\x63\x62\x4d\x6d\x4d\x53\xfc\x05\xb0\x87\xfb\xaa\x20\x25\xe4\x9e\x99\x04\xc0\x65\x89\x70\xda\xef\xdd\xc8\xc1\xee\x5b\xe7\x0f\xde\x2b\x94\x56\x7a\x64\xd8\x08\xfe\xfd\x52\x20\xe7\x0f\xa6\x06\xf7\xf3\x4f\x39\xcf\xf7\x31\x90\x70\x28\xd6\x72\x16\xc4\x73\x5d\xc7\x35\x6e\x94\x38\x8f\xee\x52\x15\x10\x84\xd6\xf0\x37\x65\x2a\x7a\x10\x85\x8d\xb7\x9a\x21\xfa\xb8\x06\x63\x94\x4a\xe7\xe0\x41\x2b\x95\x66\x85\xad\xe9\x06\x2d\x49\xca\x25\x5b\x3a\x4b\x7b\xfe\xa5\xf2\xfb\x8a\x2e\x93\x04\x49\xf6\x54\x15\xb7\x2e\x72\x7d\x04\x99\xac\x55\x03\x67\x0a\xa4\x37\xf2\x3a\xd1\xd0\xed\x02\x96\x88\xca\xe2\x7a\xc9\x06\xa0\xd6\x8c\xb9\x39\xa3\xec\x8c\x21\x33\x9a\x46\x77\xd9\x98\x2e\xf5\x90\xdd\x00\x3e\x67\xe6\x10\xe7\x6d\x4d\x37\x10\xf4\x57\xfd\xfa\x90\x97\x0d\xf1\x1c\xdc\x6d\xff\x8d\xee\xd5\x45\xcf\x4c\x12\x4c\x90\xbe\xd2\xa6\x09\xf2\x02\xfa\x7e\xb3\x78\x74\x83\x93\x99\xbc\xe6\xf4\x4c\x15\xbf\x6a\x83\xd8\x10\x9c\x5c\x5f\x93\xfa\x15\x60\xa1\x04\xdf\x43\xaf\xd6\x6d\x78\x8c\xb9\x25\x9a\x73\xf6\x38\x5b\xbf\x58\x2d\x2a\x4e\x1c\x07\xdc\x61\x6d\x87\xa2\xbe\xea\xa8\xac\xf6\xf8\x08\xc8\xe8\x9d\x3c\x55\x7d\x9e\x59\x01\xd5\xd9\x2e\xa7\x25\x29\x12\x1d\x30\x94\xd6\xba\x84\x8a\xf4\x7e\xbe\x98\xf8\x04\x0b\xbc\x54\xfb\x09\xe4\x89\x40\x13\xc8\x14\xae\x43\xe9\x6f\xdf\x67\x3a\x5e\x92\x8e\x3e\x4a\x54\x70\x62\x5a\xb1\x8c\xfb\x4f\x3a\x4b\x2e\x2d\x09\x64\xab\xe1\xf6\xa7\xfa\x50\x52\x46\x7e\x6c\x64\x8f\x3a\x79\xb7\x7a\x50\x1f\x75\x54\xf1\x8c\x9b\x5f\xea\x35\x53\x0d\x31\xdb\x08\x33\x0d\xa8\x1f\x7a\x7e\xb0\xd6\x75\x46\x8e\xc7\xf5\xbd\xa0\xa2\x24\x4b\xbb\x24\xdf\xa9\x6d\x28\x88\xc8\x69\xb9\x14\xed\xa6\xfd\xdc\x8d\x1e\x86\x0c\xd5\xad\xc4\x1f\x6f\x2b\x80\xe2\x04\xdf\x13\xd6\xec\x09\xcf\xdf\x95\xb2\x32\xbe\x21\xa2\x1f\x17\xe7\x4c\xcc\x7b\x35\xdb\x87\xfb\x81\x72\x6f\x01\x5d\x7d\x66\x3f\x5e\x4d\xd9\x0f\x99\xbf\x21\xfc\x83\x01\x06\x32\x7f\x56\xb1\x5d\x49\xb7\xc2\x3c\xff\x58\x89\x17\x55\xc3\x0a\xf3\xfc\xa2\xe2\xef\x68\x51\x10\x66\x5e\xfc\xc2\xf2\x46\xdc\x56\x9c\xfe\x27\xb1\x85\x9e\xbe\xab\xb8\x6d\x41\x67\xc6\x30\x8f\x2f\xd9\x87\xbc\xa4\xb6\xa8\xf1\xc2\x56\x50\xac\xa5\x36\xdc\x4f\xe8\x47\xfa\x44\x99\x25\xb2\x53\x07\xfc\xab\xfb\x76\x29\x90\x81\x18\x6b\x8e\x0f\x4c\x76\x3f\x30\xa6\xaa\x1e\x86\x12\x21\x1e\xd8\x73\xcc\x8e\x47\x81\x5a\x8f\x72\x35\x58\xaf\x73\xc9\x13\xf7\x05\x61\xae\xdd\x12\x32\x2a\xc9\x68\xde\xba\xf9\x31\x3c\xdc\x84\x7f\xf2\x82\xc6\x1c\xa6\x95\x6c\xb0\x3d\xda\x1a\x8c\x83\xce\x74\xbc\xba\x2a\xe5\x38\x79\x7b\x4b\xce\x34\xe6\x39\xe3\xe4\xef\xe0\x49\x08\x54\xd0\xb6\xda\xef\xa9\x38\x7b\x47\xb6\xb9\xc4\x28\x54\x9c\x7d\xcc\xeb\x33\xaa\x76\x04\x14\x05\xc1\xee\xe4\x38\xef\x0d\xc1\x2f\x90\x68\xb7\xe1\x5e\xa7\x0e\xf5\x08\xba\x27\xc5\x59\xd5\x08\x68\x3d\x00\x85\x1a\xd7\xbd\xd6\xfd\x02\x89\x96\x7a\x8d\xb4\x2e\x47\x9f\x4b\x58\x23\x6a\xf4\x1e\xdc\x35\xb8\xe9\x2f\x9f\xfd\x9c\xe8\x78\x9d\x23\x6d\xd3\xfa\xac\xf1\x40\x1b\xda\xef\xc3\x7a\x89\xcb\x5e\x37\xbd\x52\xaa\xb7\xed\x03\xbd\xed\xcc\xc9\x82\xae\x3a\xe7\x6c\x8b\xb7\xbd\x7e\xc2\x22\x89\x76\x29\xe9\x75\xb2\xad\x9a\xb2\x38\x0b\xe8\x69\xc9\x21\x35\x7c\xab\x54\xd2\xe1\x09\xdf\xe1\x5d\xaf\xa3\xa0\x44\xa2\x73\xcd\x8c\x4c\x46\xdd\x37\x67\x45\x43\x24\x19\x9e\x9f\x6d\x35\x4e\x81\xee\x42\x04\x53\xe0\xa2\xd7\x5d\x50\xc2\x5a\xdd\x9c\xde\x5d\x0d\x08\xed\xcc\xe4\x57\x0b\x31\xdc\x2d\xbe\xed\x75\xe8\x7d\x4f\x1e\xba\xc9\xc1\x5b\x6b\xf8\x26\xef\x49\xb3\xc7\xef\xf2\xaf\x77\xfd\x04\x6c\xf4\xc9\x57\x42\x50\x4b\x5d\x07\x11\x84\x6c\x68\x03\xdd\xb9\xc2\x3a\xa9\x11\xf2\xbf\xb1\x74\xf9\x32\xb9\x30\xe2\x76\xec\x64\xcd\x2a\xae\x9b\x16\x23\xab\x07\x65\x3b\xe3\x7e\xfa\x05\x6f\x08\x93\x1b\x4b\x5e\x16\x2f\x2a\xee\x7f\xb0\xf4\x76\x5c\x44\xe3\x11\xe4\x20\xca\xf2\x25\xb1\xaa\x01\x5f\xc8\xaa\xde\xf8\xd2\x53\xf5\x66\x5b\xe5\x25\xa9\xb7\x44\x89\x05\xff\xa3\x21\xb5\xa8\xe5\x02\x1a\xd1\xb3\x1e\x23\xaf\x9a\x83\xaa\x56\x3f\x24\x66\x5b\x8b\x4d\x8b\xeb\x5b\x79\x08\x7f\x26\x92\xc1\xef\xca\x99\x4c\xc1\xf3\xcb\xb0\x5c\x28\x5a\x74\x0d\x9e\x1b\x05\xa2\x29\xfe\x6d\xbe\x7d\x7f\x03\x46\x5c\x0f\x74\xb0\x18\xaa\x11\x74\xe5\x15\x07\x01\x8d\x01\x08\xfe\xd0\xd1\xf8\x7b\x5d\xb1\x8b\xfc\x40\xc3\xd3\xd1\xd5\xdb\x3c\x70\x5e\xe2\x9f\x39\xa9\x45\x5f\xe3\x23\x2f\xed\xdf\x77\x9c\xa2\xe0\x4e\x33\x66\x5e\x8f\xc2\xba\x9b\xef\xb5\xfe\xfc\xac\x62\x82\x30\x01\xd2\xb1\x24\x3f\x28\x5b\x71\x5a\xb1\x47\x1f\x58\x31\xcf\x0f\x74\xa6\xd2\x30\xe5\x7f\xcf\x3f\xa9\x2c\x15\xf5\xb2\x27\x68\x32\x04\x8d\xd2\x30\xdd\x6b\x06\x98\x29\xa1\xf9\x75\xdd\x40\x4a\x45\x1c\xc4\x75\x04\xf5\x2f\xe1\xf5\xfc\xe9\x76\x4b\x0e\x22\xeb\xbe\x38\x1e\x47\x06\xc3\xda\x01\xa0\xbf\x74\x40\x1f\xe1\xd9\x95\xda\x5a\x8e\xc9\x49\x45\x1d\x4b\x0e\x0a\x28\xa7\xaf\x71\xfc\x97\xac\x20\xa7\x9f\x52\x9c\xfc\xd3\x77\x6f\x13\x7c\x2f\xf7\x79\x79\xbf\xa3\xa5\x20\x7c\x79\x4f\x8b\x25\xd7\xcc\x19\x4e\xc0\xf8\x6f\x5c\xe6\xc8\x43\x99\x63\x91\xd7\xb7\x84\x07\x42\x47\x48\xe1\x6c\xc5\x8e\x08\xbc\xcd\x9b\x21\x69\xb1\x9b\x5a\xba\xc0\x3c\x22\x3f\xd0\x85\x8c\x8a\x23\x3a\x77\x36\xa7\x85\x9c\x7e\xa0\xd4\x89\x2c\x41\x85\x93\x9f\x9e\xbe\x7d\xf6\xbd\x59\x04\xda\xa2\xf0\xc4\xd1\x87\x4e\x1c\x1c\x8b\x87\xee\xa2\x81\x23\xa5\x59\xd2\xcf\xba\xbd\xbe\xce\x91\x03\x01\x9b\x86\xff\x6c\x37\x74\x06\x93\xc6\x24\x29\x71\xe2\xc2\xbf\xff\x8b\xb6\x96\x8c\x7d\x64\x72\x51\x7b\xea\x5b\xbb\xa3\x5a\x4c\x4b\xe6\x2a\x5e\x97\x91\xe5\xe9\x78\xdd\x4d\x8d\xed\xa9\x51\xc2\x52\x25\xc1\xad\xec\xfd\xe2\x09\x98\xb5\x4c\x7a\xae\x68\xeb\xb4\xb2\xd9\xaf\xe8\x74\x4a\x3b\xfc\xf5\x6a\xb8\x1e\x45\x4b\x1a\xe4\x8a\xc5\x7e\x16\x74\xe5\x39\x0e\xbb\xf4\xf6\x96\x57\x1f\x99\x2f\x43\x86\xa6\xa7\xd3\x04\x44\xbe\xa8\xca\x82\x82\x2e\xf0\x91\xce\x3f\x98\x64\x99\x4e\xd0\xf1\x06\xa6\x8a\x2a\x48\x0e\xc8\x03\x7a\xdc\xd5\x02\x8a\xba\x5b\xe7\x78\x5c\xc0\x9b\xda\xb4\xd0\xd7\x79\x40\xfa\x2a\x90\x3e\x43\x98\xad\x86\x97\x60\xd7\xea\x8d\x0c\xfc\xd4\xf4\x72\xd7\xd9\x03\xec\x79\x9a\x68\x5c\xa4\x09\xbc\xe5\x59\x32\x63\x10\x87\x92\xc2\xff\x69\x75\x3c\x26\x09\xb2\xb2\x4b\xd5\xee\x32\x6f\xad\xc0\x4d\x4d\xd2\x51\xfd\x69\x8d\x5a\x30\xe4\x50\x73\x95\x00\x51\xf5\x01\xc2\xcc\x51\x9b\xd5\x00\x40\x40\x94\x2e\x6f\x1e\xcc\x93\xf0\x57\x59\x6e\xf6\xbf\xf2\x93\xe8\x92\x20\xee\x76\x53\x2f\x8d\x30\x1f\xbb\x55\x5d\x12\x6f\x89\xb1\xee\x6e\xb9\x4d\x89\xe9\xda\x67\x5d\xcb\x53\x9b\x54\xef\xde\x92\x4f\xc2\x36\x99\x2e\x30\x8b\x0a\xb1\x91\x32\x91\x7b\x5a\x96\x9d\x0f\x29\xf2\xfb\xf6\xc2\x25\x38\xd9\x29\x04\xce\xdd\x55\xfc\xbb\x3c\x54\xb2\x78\x91\xfd\x21\x40\x3e\x01\x57\x66\xd7\xd8\x4e\x67\xd6\x21\x92\x01\x2e\x08\x13\x34\x2f\xeb\x2c\xa9\xf3\x3d\xb9\xa8\x38\xbd\x91\x04\x2c\x81\x60\xf5\x48\xc2\xa3\xbc\x27\x40\x99\xa5\x80\xeb\x78\x54\xda\x0e\xef\x15\xb4\xa6\x31\xd1\x7b\x72\x57\xa7\xba\xb6\x91\x5d\x5b\x23\xb9\x86\x97\x36\xde\x42\xb2\x4a\xd0\x93\x8b\xcb\x55\x32\x4d\x96\xc9\x2a\x99\xc0\xd7\x59\x96\x24\x33\x31\x83\xe5\x8a\x09\x78\x91\x69\x5a\xa9\x35\xbe\x44\x4a\xaa\xea\xaf\x08\x64\x95\x57\x6a\x23\x25\x6f\xa7\xbb\x3b\xf3\x75\xa9\xbf\xaa\x47\xbb\xde\xad\x62\xbd\x44\x97\x3c\xe9\x10\xf2\x38\x4a\xae\xa8\xcb\xe2\x41\x52\x45\x52\x05\x57\x67\xdb\x5b\x09\x2b\x22\x6b\xc4\xee\xe2\x7f\x25\x78\x97\xd7\xe2\x5d\x55\x89\xa5\xc2\x66\xdb\x6a\x7f\x68\x04\x29\xd2\xfb\x01\xc6\x02\x68\x15\x53\x69\x15\x3e\x2e\xc3\x47\xa7\x0f\x7d\xfd\x91\x11\xae\x32\x74\xce\xcb\xaa\x7a\xdf\x1c\xd2\x44\xf2\x72\x74\x4b\x96\xa6\x74\x82\x5a\x5c\xfb\x7d\xf6\xb5\xb4\xb6\x61\x21\x19\x9a\xa6\x26\x2f\xe4\x7d\xd3\x1d\xb9\x6f\xc1\xa4\x14\x5a\xd1\x71\x68\x5d\xe2\xcf\x90\x8b\x51\xdb\xfb\x25\x92\x9f\xa5\x37\x4b\xc2\x3e\x50\x5e\xb1\x3d\x24\x9d\x37\x1a\xba\xf3\x14\x4e\x05\x34\xf6\xdd\x8f\x7f\x9b\x4e\x21\x85\x95\x7b\x31\xbf\xfe\xe7\x7f\xf9\xe5\xbb\x9f\xff\xf5\xfa\xe5\x8f\x6f\xbf\xfb\xa7\x9f\x9f\xbe\x7d\xf9\xfa\x47\xc8\x89\x32\x9d\x9e\xc3\x7d\x5f\x57\x5c\x78\x00\x17\xd1\xb2\x06\x80\xee\x5b\xa9\x83\x1e\xe1\xf1\x37\xd6\xb9\xcb\x0b\x60\x7f\xdf\x42\xd0\x19\x15\xbe\xc0\x38\x82\x82\x07\x28\x5b\xd3\x75\xb5\xd9\x64\x44\xfd\xb5\xb8\x73\x9c\x2c\x8c\xd1\x4e\x9f\x47\x18\x1a\xba\x28\x20\xa5\x94\x99\x10\x7b\x90\x5e\xac\x24\x5d\xb8\xeb\xd9\x5f\x0c\x0d\xc2\x34\x3b\x4e\xb6\x49\xce\x4e\x0f\x0e\x82\x9b\x78\xaa\x71\x79\x29\x50\xb6\x25\x99\x11\x32\x1b\x02\xce\x1b\x93\x24\xdf\x34\x67\x1b\xd5\x1e\x3f\xd8\x35\xd8\xec\x2a\x0b\x2a\x8f\xba\x57\x92\xf7\x10\x28\x9c\x15\x4d\xe7\x43\xca\x91\x3f\x40\x16\x0c\x90\xdb\x01\x46\x77\xef\xf3\x87\xa9\xb7\xf0\x8f\x1b\xec\x3f\x90\x01\xa1\x45\xbd\xe4\xad\xe9\x34\x66\xfd\xe2\xad\x90\x24\xf0\xe5\x71\xb2\xdd\x59\x50\xe9\x5a\x3e\x69\x8d\x86\x1d\x22\xc5\x0c\x0b\x1c\x18\xa6\x05\x8b\xc0\xd5\xa8\xf4\x30\xe2\x86\x34\x5f\x7b\x20\xce\xd4\x6d\x60\x28\xdb\xb8\x55\x8e\x1b\xc9\xd8\x46\x00\xbc\x70\x1c\x5a\xc6\xc9\x93\x18\xde\xb1\x21\x87\xc5\xe3\x1b\xf6\xd3\xeb\x37\x21\x0a\x18\x66\xe4\xb8\xc7\xc8\x0d\x77\x83\xef\x21\x5e\x23\x97\xeb\x98\x8f\x4c\xa2\x92\x33\x78\x88\x9f\xcb\x71\xf2\xd3\x2f\x21\x3a\x28\x86\x2c\x8b\xdc\x1e\xca\xbe\xfb\x6d\x8d\xac\xa7\x1c\x4a\x60\xf6\x87\x70\xf2\xfc\xbb\x1f\xbe\x7b\xfb\x9d\xdc\xab\x6b\x49\x4b\x1c\x5e\x3e\x7f\xc1\xab\xfd\xa0\xf5\x1e\x1e\xdb\x30\x00\x2a\x81\xb4\x71\x02\x58\xd4\x55\x59\x10\xc1\x02\xc8\x78\x37\xea\x82\xf4\x8c\xf4\x2a\x94\x65\x59\xbe\x0a\xe3\x5e\x24\xc9\x32\xe5\x59\x85\x59\x96\xac\x68\x91\x25\xb3\x1c\xc7\x6c\x42\x34\xb1\xe4\xe8\x27\xc2\x8a\xfa\x57\x2a\x6e\x57\x17\x2a\xc9\xbb\x21\xe0\x18\xb6\xf1\x3c\x8c\x8e\x18\x2d\xb9\x2d\x9e\x32\x48\xd3\x17\x8e\x21\x34\x7c\xb0\x81\x8b\x5c\x9a\x2a\x84\x3a\x16\x4f\xfb\xfc\xd3\x2f\x3f\xff\xf0\x83\x4a\x77\xf1\xcd\xe2\xcf\xff\xeb\x44\xe9\x9f\x92\x4e\x48\x16\xe4\x55\x7e\xc0\x0a\xad\x9a\x75\xf7\xdb\x9c\x88\x08\x09\x2d\x5c\x5c\xf9\xce\x86\x42\xe3\x13\xc8\x5e\x9b\x52\x08\x29\x55\x13\x91\x52\xbc\xde\x20\xac\xac\xca\xa8\x4e\xea\x27\xac\xc1\x4f\xe5\xdb\x79\xc5\x7b\xf3\x1e\x54\xec\x61\x55\x6f\x81\xf3\xf8\x10\xd6\x8b\x0d\x92\x2c\xdc\xda\x51\x0c\xb1\x79\x38\xff\x94\xbe\x21\x27\x99\xd3\xc2\xc6\x80\xa0\x13\xb3\x05\xb3\x6a\x26\x20\x3c\x67\x2a\xbb\xaf\xd5\x5c\xd6\x1b\x84\x70\x35\xcb\x84\x16\x86\xd5\x76\xbf\x26\xf5\x9a\xe9\x6c\xbd\x04\xd4\xf0\x75\x8b\x52\x81\x29\x4e\xa6\xb4\xa8\xff\xc7\x5f\xbe\xfd\x1f\x7f\x79\x9e\x25\xd6\x88\x25\x3a\x44\x9b\x79\xc3\x35\x23\x5b\xaa\x5a\x1c\xb2\x86\x1d\x51\x91\x0e\xd1\xac\x95\xea\x6f\x9a\xed\x96\xd4\x9a\x8b\x77\x09\x87\x27\xae\x84\x56\x9d\x75\x4b\x00\x93\xea\xab\xd5\x52\xa6\x55\xb5\x36\xa6\x33\x28\xbb\x8d\x7d\x3e\x94\xb1\xdc\xaa\x96\x47\x69\xe4\x65\x84\xe7\xc5\x73\xe0\xa1\x49\xf1\x4a\xa9\x43\xed\x80\x27\xda\x24\x9c\x28\x93\xf0\xb3\x3f\x2f\x2e\x97\xc1\x40\x7a\xca\xab\xb4\xc2\xb9\x32\x36\x3e\xfb\xf3\xe2\x4f\x61\xe1\x50\x03\x15\x94\xfc\x73\x58\x32\x50\x21\x05\x05\xff\x77\x58\x30\x50\xfe\xa8\x82\xc6\x5e\x59\x72\x8c\x4f\xb2\xbf\x2c\x16\xe1\xd2\x79\xda\x1b\x28\xdf\x06\x5f\x75\x65\xf5\x05\xdb\x6d\x8a\xe6\x15\x78\x92\x7d\xb3\x58\x4c\xa7\xe4\xf1\x9f\x16\x8b\xe3\xf1\x4f\x8b\x3f\x4b\xca\x5d\x56\xd2\xbb\x13\xab\xf4\xe7\x6f\xbe\x51\xa5\x24\xda\x8e\x5f\x41\x9a\xea\xc4\xdb\x9e\xe9\xa7\x61\x4e\x12\x84\x77\xd9\x7d\xc3\xcb\x25\xc1\x8a\xa3\x5d\x8a\x16\x17\x59\x35\xf7\x44\xc5\x9d\x8b\x71\x6b\xd8\x2a\xd9\x80\x26\xcf\xd3\xa2\x67\xd2\xe8\x46\x4a\x33\x82\xe1\x32\x8c\xd9\x57\xca\xfb\x70\x27\xa1\x3e\x52\x5f\xb9\x47\x57\xef\x8f\x47\xd2\x93\x41\x69\xdb\xbd\x98\xf3\x81\x82\xdd\x26\xe5\x68\xf2\xcd\x62\x01\x16\x6a\x4a\x30\x31\x9d\x8a\x5e\x3b\xab\xb4\xf2\x05\x2c\x99\xc0\x22\x0b\xde\x18\xf3\x48\xb4\xec\x94\x64\x58\x32\xf6\x20\xda\x08\x4f\x86\x70\x49\x73\xd5\xda\x41\x68\xe2\xb4\xc2\x04\x53\x45\x95\xec\x50\x2f\x91\x79\x87\xbe\x84\xd1\x1b\x1b\x4d\x7b\x88\x4c\x23\xb0\x60\x4b\xb0\x5b\xec\x09\xf9\xba\xb1\xe1\x8a\x79\xad\x20\x2f\xc8\x63\xe7\x7a\x1a\x1a\x41\x39\x38\x02\xf9\x6b\x87\x26\xaa\x6b\xde\x68\x0b\x78\x98\x18\x91\x45\x70\xa1\xd6\xc9\x6f\xfa\xa4\x0e\x05\x9a\x04\xd2\xae\x8c\x4f\x8c\x35\x6a\x6c\x99\x25\x8f\x0c\x3f\xdf\x92\x4f\x22\x58\xf2\xca\x5b\xad\xc1\xb1\x0a\x18\x6b\x35\xbf\x06\xba\xa7\x40\xad\x24\x67\xde\x2c\xcf\x7e\xfe\xee\xcd\x5b\x2d\x18\xfc\x6f\xf2\x93\x4e\x52\x2d\xaa\xb3\x64\x46\x24\xa1\x23\x5f\x6a\xb8\x0f\x0e\xa6\x12\x12\x2b\x32\x0a\x0a\xb2\xa1\x92\x12\xb0\xab\xbe\xf5\x29\x94\x3f\x2b\x2a\x52\x83\xd6\xbc\x26\x64\x2f\xbb\x7d\x47\xce\x4c\xd6\x6c\xca\xce\xee\xaa\x86\x9f\xe5\x87\x83\x33\x3b\xad\x3e\x10\xce\x69\x01\x66\x15\x1f\x68\x7e\xf6\xef\x79\x51\xbc\xe6\xaf\xf5\xdb\x37\x39\x2b\xde\x55\x9f\xfe\x09\x6c\x55\xeb\x7f\x87\xfc\xa6\xb7\xe4\xcc\x08\x2b\xb4\xd2\x7a\x95\xa0\x09\x73\x23\xf7\xcf\x76\x44\x10\x00\xa7\x59\x99\xd0\x6a\x4b\x5d\x6b\x66\x9a\x2a\xf9\x2b\x41\x93\xff\x32\xe3\x5a\xbd\x45\xc1\xb8\x87\x11\x60\x0c\x9b\x11\xb4\xec\x56\x30\xeb\x35\xa7\xf5\x8b\xbc\x16\xdf\x82\x48\x48\xd7\xf5\xf7\x59\xd6\x55\x6f\xc3\x97\xed\xa8\xf2\xcd\x68\x93\xf2\xba\xa6\x37\x2c\xed\x60\x64\x2c\xa9\x51\x89\x98\xb9\xd1\xc9\xf5\x6c\xfc\x95\xe8\x34\x41\x13\xeb\x33\xc6\x56\xdc\xc8\x72\x3b\x8d\xb7\x92\x94\xb7\x72\xde\xa5\xfd\x79\x3c\xa6\xae\xca\xbd\x35\x80\xe5\xf3\xad\x13\xd9\x1d\x8f\x6a\x72\x7d\x61\xde\x24\x50\x57\x44\x57\x3a\xe5\x20\x55\x9c\x4e\x81\xbf\x03\x92\x5a\xce\x0c\x52\x21\xea\x7e\xd7\x89\x6e\xf2\x42\xb6\x99\x6c\x4c\xe8\x52\xf8\xa4\xc7\x71\x21\xf4\xa7\x74\xf0\x5b\x46\x11\xc2\x3c\xdb\x69\xee\x13\xa1\xe5\x48\xdf\xe1\xf2\x70\x7c\xef\xcd\x77\x09\xa2\x31\xde\x51\x3a\x28\xe9\xa8\xfc\x9e\x25\x4a\x99\x49\xd4\x22\x7d\x12\x99\xd0\x12\x64\xd7\x13\x31\x3d\xa9\x0f\x03\x92\x57\xe7\xaa\x34\x7f\x07\x31\xa1\xdf\x10\x56\x04\x1e\xfb\xa1\x9c\xd9\xec\x5f\x84\xb2\xf4\xa4\xe0\x92\x48\xd7\x40\xa8\xc4\xeb\x29\xc7\xb6\xee\x9a\x6f\x74\x6a\xd2\xd6\x2e\x14\xe6\xf2\xfc\x66\x0e\x84\x25\xdd\x0d\xef\x10\xe6\xfa\x64\x85\xec\x1d\xa0\xb3\x93\x8e\x4b\xe8\xad\x11\x29\xcc\xd5\x48\x15\x0b\xb6\xad\x4a\xf0\x72\x7c\xb0\xb4\x72\x70\x91\x68\xa8\xe3\xa7\xa2\x91\x12\x08\xd6\x09\x98\xc3\x3f\xfa\xb7\x5b\x21\x0e\x75\xc7\x6d\x05\x09\x7e\x67\x57\x6c\x96\x3c\x7a\x04\x1e\x2b\x5a\xd1\xc2\xd0\x7d\x0f\x93\xfd\x6b\xd5\x9c\xe5\x9c\x9c\x35\x35\x65\x37\x0a\xe2\xcf\x9e\xe7\x22\x3f\xfb\x48\xc5\xed\x19\xab\xce\xe4\x90\xfa\x48\x5b\x5d\x2a\xf3\xb3\xb7\xb7\xb4\x3e\xfb\x48\xcb\xf2\x2c\x17\x82\xec\x0f\x42\xe2\xb5\xa6\x26\x80\xd3\xa0\x6a\xb5\x83\xdf\x66\xe9\xce\xf4\x54\xf1\xd9\xc7\x5b\xba\xbd\x3d\xa3\xea\x82\x50\xe2\xe0\x86\x93\xe2\x6c\xa7\xb1\xa7\xce\x14\xef\xb5\x42\x6b\x53\x7b\x7e\xf6\x53\x49\x24\xed\x5b\x13\x61\xbb\xfa\xf5\x96\x0a\x52\xd2\x5a\x9c\x1d\xb4\x0e\x15\xda\x32\x63\xf6\x44\xcd\xf3\xbf\xd7\x73\x37\x22\x58\x09\xd0\x8c\x19\xcb\x47\x64\x0d\xf0\x49\x8b\xfb\xf7\x75\xe4\x1a\x21\xa0\x1a\x15\xbe\x07\x0b\x31\xfa\x2d\x8e\xee\x3d\x7b\xfe\x38\x0f\xd2\x47\xa3\x56\x6e\xda\xb3\x42\xe7\xd3\x29\xd7\xdc\xcd\xca\xfc\x58\xae\x8d\x3a\x2b\x49\x66\x04\x6b\xa5\xe0\xdb\x5b\x72\xf6\x2e\xdf\xbe\x27\xac\x38\x53\x14\x46\x41\x0a\xb5\xb3\x39\xd3\xc6\x5d\x46\x55\x98\x24\x33\xde\x6e\x5a\x3c\xc4\xfe\x0c\xc9\x0f\x21\x5c\x58\x0f\x9f\x25\x10\x6f\xeb\x2c\xc0\x80\xd6\x5d\x20\xf3\xf2\x4e\x65\xe0\x7b\xc3\x6d\x82\xf9\xbf\x2c\x56\xc9\xfa\xf5\x9e\x0a\x41\x8a\x33\xc5\xdd\xdf\x9d\x7d\xff\xf6\xd5\x0f\x9b\x64\xc9\xf1\x3a\xf1\x20\xd4\xa8\x36\x93\x59\xca\xb4\x12\x0b\x94\x9a\x0c\x8e\xf8\x2c\x39\x53\xfd\x91\xe2\x2c\x97\xf4\x0e\x4e\x7e\x52\xe4\xef\x59\x0a\x7e\xe0\x28\xc1\x74\xa3\xa5\x14\xbf\x31\x79\xd7\x3a\x39\x77\x64\x87\xef\x21\x4b\x2b\x71\x11\x8a\xb5\x8b\x85\x32\xed\x36\x4f\x19\x47\x6e\xaf\x03\x43\x84\x62\xc8\x10\xa1\x20\xef\x9a\x9b\x87\x6c\xe2\x54\xa1\x9a\x88\xe6\xf0\xb5\xcd\xe1\x46\xcd\xd5\xe4\x42\x6b\x0a\xd2\xda\xf1\x80\xa5\xbd\xa6\x2a\x28\x83\xde\xb4\x8a\x29\x4d\xe0\x5b\x82\xf0\x0d\x11\x2f\xc0\x1c\xa5\xee\xab\xb6\xd6\xf7\x2c\xdf\x93\x65\x42\xeb\x1f\xc9\x47\x09\x7f\xf5\x76\x99\xc8\x9f\x2d\xb6\x5f\x5e\x55\x05\xdd\x51\x52\x98\xcf\xf6\xd9\x2b\xf3\xac\x24\x39\x33\x05\xd4\x83\x04\xe0\x6b\xf9\xfd\x6d\xf5\xac\xcc\xe3\x2c\x6a\x17\x09\xeb\x21\x2b\xe9\xdd\x8b\x8a\x03\x85\xf3\x51\x9e\xdc\x57\xf2\x8d\x04\xdd\x80\xca\x09\x84\xfc\x11\x07\x5e\xb3\x04\x55\x46\xe7\xd7\xbe\xc4\x56\xae\xa5\x89\xe2\x0c\x16\x35\xf2\xb0\xd4\xaf\xf2\xc3\x8b\x8a\xa3\x94\xa2\x49\x1d\x93\x2b\xe1\x0a\xdd\xb3\x39\x8c\x47\x0e\xe5\xe5\xee\x17\x56\x13\xc8\xf9\x58\x63\xc9\x14\x70\xc9\x94\x83\xc0\xad\xd7\x59\x70\xe5\x5a\x43\xa7\x78\x53\x6a\x34\xba\x3d\x5c\x29\x3d\x2b\xc5\x42\x87\x59\x6f\x32\xcf\xf3\x06\xdd\xe7\xa3\x42\x20\x15\xe3\x28\x3a\xa2\x0a\xc7\x26\x09\x50\x5c\x83\x14\x4e\x40\x40\x0c\x84\x30\x9b\x73\x02\x38\xfe\x15\x9c\xec\x7a\xce\xc9\xbe\xfa\x40\x14\x78\xcb\x3d\x0a\x04\xbe\x9d\xb2\x87\xa6\xbe\xd5\x25\x1b\x84\x1b\xbd\x9f\xfe\xa4\x23\xbe\xfe\x3a\x0d\xed\xf9\x02\x7c\x00\xe5\x86\x72\x9b\x15\x82\x38\xf0\xe0\x08\xd7\x8a\xa8\xf8\xc8\xf3\x83\x85\x11\xc8\x12\x3d\xd1\xf2\x2f\xf8\x5c\xbd\x03\x86\xc4\x95\x80\x34\x13\x98\xa5\xeb\x7a\x03\xd1\x9d\x65\x0f\x10\x3e\xa4\xc5\xdb\xaa\x6c\xf6\xec\x47\x80\xdc\xe7\x12\xa0\x07\x01\xd7\xea\xc1\x0f\x54\x28\x4b\xcd\xe0\x7d\xc3\x24\x39\xb4\xad\xb8\xbc\x80\x9c\x63\xce\xf5\xa3\x1b\x9c\x9c\x25\xc6\xd0\x03\x99\x1e\xeb\x61\x47\x54\x65\xc3\x9f\xd9\xd3\x6a\xcf\xe2\xcb\x22\x69\x37\x98\x41\x44\x5c\x59\xa8\x4f\x2e\x13\x9c\xe4\x42\x70\xfa\xae\x11\xa4\x4e\xa2\x12\x43\xbd\xd8\x6c\x36\x7b\x42\xe7\xb6\xf0\x0f\x74\x4f\x0d\x03\x76\x7e\xa9\xed\xf1\xc5\xbc\xbb\x3a\x69\x85\x6c\x78\x5f\x18\x5d\xa5\x86\x96\x2b\x2f\x22\x2e\x6f\x31\xa1\xa5\xcb\x1d\x91\x32\xdd\xb9\xbc\xd0\xfa\xd2\x79\xfc\x8d\x43\xea\xd7\x80\x68\xe5\xb5\x95\x53\x46\xf8\x5f\xc9\x5d\x10\x27\x8a\xeb\xcc\xb1\x90\xc4\xb1\x5c\xa6\xf3\xff\x89\x1e\xa1\x89\xf6\xf9\x64\xe0\x3b\xc4\xd6\x97\x1b\x47\x3f\x68\x89\xa2\xb0\x98\x71\x7e\x20\xe4\xfd\xd3\xb2\x04\xfb\x5a\x3b\xca\x67\x30\xc1\xbf\x49\xa4\x1c\xd3\x56\xeb\xad\x58\x60\x96\xdd\xd3\x62\x19\x2c\x34\x2d\x12\x77\x16\xc8\x9c\xe4\xdb\xdb\xa7\x66\x39\xc3\x54\x7a\x72\x22\xb3\xd9\x13\x31\xb8\xdc\x6c\x4d\x37\x99\xdf\xb8\xca\xb4\xc5\xbc\x81\xfe\x95\xdc\x7d\xec\xac\xaa\x73\xd2\xb3\x14\xee\xd3\x74\x2d\xc7\xb5\x41\x0f\x8f\xcb\x81\x37\xf7\x25\xd0\x31\x11\xbb\xcf\x0b\x40\x51\x7f\xa8\x5c\xc9\x9b\x85\x37\x56\x75\x01\x45\x16\x55\xdb\xff\xc0\xfd\xa3\x72\x5b\xa6\xfa\x32\x42\xd8\x5d\x3d\xe6\xcb\x6d\x5e\x3f\xa7\x5c\xdc\x3d\xf5\x20\x7a\x3a\x3d\xef\xd5\x83\x1b\x68\x79\x3e\x52\xab\x0d\x77\xbc\xe2\x91\x55\x4c\xde\x95\xf9\xf6\x7d\xe2\x16\xce\xef\x65\x25\xb2\xe4\x86\x13\xc2\x92\xf1\xc1\xa5\xd0\x4e\x03\xc1\xc5\x5b\xac\xf1\x50\xd4\x37\xdf\xbf\xeb\x9f\xa6\xce\xb5\x5e\xef\x20\x36\x97\x74\xac\xa3\x8d\x24\x6f\x1e\xde\x57\xe6\xed\xeb\xc4\x69\x3a\x27\x2c\xb2\xc5\xcc\x88\x3c\x3d\xa2\x41\xa4\x14\x30\xad\x09\xf8\x81\x50\xab\x85\x60\x79\x51\xbc\x56\x73\xe3\x29\xc1\x0c\x57\xe0\xef\x23\x3b\xf3\x2d\x53\xb4\xc0\x4c\xdf\x1e\x41\x71\xa5\xa4\xe8\x09\x30\xd1\x7d\x0c\xfc\xba\xf7\x5b\x7b\xa2\x69\xb7\x4f\xba\x8d\x7b\x2f\x7e\x7d\xca\xce\xa3\x30\x32\x36\x44\xe9\x49\x6e\xf0\x57\x92\xbf\x7f\x95\x1f\x82\x34\xf9\x06\x24\xf5\x11\xb3\xeb\xd4\x71\x96\x34\xea\x39\xa5\x45\x93\xc3\x96\x50\xa7\x37\xda\x5a\x59\x39\x55\x64\x8f\x28\x98\x9c\x54\x2a\xe2\x16\xcc\x94\x81\x91\x53\x9e\xdd\xe6\x75\xaa\x26\x8d\x8e\x47\x75\xc1\xaa\x47\x48\xed\x43\x3d\xdf\x34\x49\x3f\xb8\xe5\xd0\x57\x5c\xb0\x6b\xb9\xc8\x2f\xac\xf5\x2f\x65\x54\x74\x1d\x27\xd0\x7d\x3b\x18\x90\x09\xae\x87\x81\x70\x4c\x23\x4e\xab\x27\xc0\x44\x2f\x46\x53\x6c\xc7\xc8\x7a\x21\x91\x31\x59\x5f\xca\x7b\x9a\xac\xbf\xb1\x0a\xc6\x3f\x81\x21\x95\x4d\xaa\x10\xf1\xf8\x16\xc7\x63\x8f\xe3\x14\xd3\xa9\xbe\xe3\x04\x9a\x4e\x13\x25\xf0\x09\x18\xd2\x88\xaf\xb4\xad\xc3\xa6\xd3\xc4\xb9\xd2\x24\x94\xc9\x6f\x89\xe1\xf8\xed\xbb\xe3\xd1\x39\xb1\x7b\xd1\x6a\xa3\xce\x8b\x7e\x90\xb8\xee\x75\x8e\x15\x44\x2b\x2f\x68\x81\x4c\x12\x02\x70\x7b\xe6\xf2\x86\xb3\x15\x20\x09\x9b\x46\x52\x29\x47\x2b\x92\xa2\x79\x7e\x38\x94\x77\xda\x25\x12\x73\xb4\x24\xdd\x37\xad\x0e\x2b\x41\xbb\xd6\x9a\xfd\x3c\xc5\xab\x94\x67\x04\x13\x7d\xda\xd0\x92\x67\xfc\x78\xbc\x6f\xb5\xe0\xf3\x1e\x44\xa1\x04\xd3\xda\xe2\xcf\xe5\xf9\x02\xbf\xa7\xac\x58\x3a\xf2\x29\xc1\x95\x16\xb4\xf2\x36\x24\xb4\x06\x0c\x08\x49\x60\x83\x74\x4d\x99\x20\x9c\xe5\x25\x50\xa1\x11\x55\x8d\x7f\xa9\x72\x7b\xd8\x14\x1b\x24\xcf\x93\x1c\x5b\xca\xc1\xe6\x97\xa0\x15\x03\x3b\x57\x33\x36\xb8\x5a\x53\x82\x7a\xc2\x8b\x78\x2c\x01\x7b\xcc\xa1\x9e\x0b\x00\xef\xbf\xd5\xab\x0d\x5a\x0d\xbb\x4f\xd6\x7d\x23\x28\xea\xac\xec\x8c\xbb\x29\x79\xd8\xb0\x31\x58\x0e\x89\x20\xc2\x4b\x4d\x47\x6e\x42\xf3\x3d\x11\x79\xca\xec\x95\x95\x77\xb6\x5b\xd8\x68\x26\x93\xd8\xb6\xb3\x8c\x60\x6a\xb7\x3d\x65\x99\xc0\x34\x23\x90\x6d\x37\x3c\x39\x74\x3a\x4d\x69\xc6\x9d\x62\xfa\x95\x31\x21\x49\xa9\x35\x3c\x50\x80\x42\x31\xad\x7f\x26\x25\x98\x4f\xd6\xb7\xf4\x20\x61\xc5\x80\x06\xcb\x98\x04\x2c\x0d\x3b\xef\xac\x2d\x12\x56\x78\x4d\x1b\x27\x9d\xc9\x37\xef\x89\xf2\xbf\x3a\x19\x98\x46\x96\xef\x86\x08\x17\xc1\xeb\x8b\x17\xdf\x6b\x02\x0b\x6d\x3c\xf5\x40\x47\x66\x83\x2a\xbb\x41\x75\x7f\x83\xfa\x1b\x03\xd7\x95\x77\x20\xb1\xc8\x04\xac\x5b\x6f\x5f\x88\xca\x29\x15\xdb\x17\x82\x50\xe7\x00\x9b\x5d\x10\x91\x1d\x52\x3b\x72\xab\xcd\xd4\xf4\x7e\x7c\x9f\xd7\x67\xea\xf9\x2b\xef\x86\x09\xc4\x16\xdf\x0b\x1d\x26\x77\x18\x2d\x70\xbb\x27\xb6\x21\xb9\x23\xbc\xd3\x74\x70\x3c\xb0\x09\xa9\x07\xf8\xf6\x27\x5e\x7d\xba\x73\x16\xd5\xcf\xc9\x81\x93\x6d\x2e\x48\xf1\xdd\x07\xc8\x41\x83\xef\xaf\x39\x98\x01\x13\xfe\x3d\x98\x85\xf0\x2e\x7f\xa6\x86\x67\x0a\x91\xc2\x14\xcb\xee\xdf\x91\x6d\xbe\x27\xc6\x8c\x80\x60\xf5\xfc\x37\x78\x12\x6d\x8b\x95\x20\xf4\x5b\x77\x98\xe5\x76\x8d\x99\x2c\x7b\x36\x0e\xaf\xf2\x03\x64\xad\x87\x26\x5e\x44\x09\xf3\xae\x98\x27\xda\x5d\xa2\x4c\x89\x07\xe8\x25\xee\xa9\x68\x9e\xa6\x46\x04\x00\xbc\x0b\x76\xcd\x73\x9c\xac\x37\x09\x70\xb1\x5a\x1c\x5d\x77\x66\x31\xdf\xe7\x87\x6f\xef\x52\x23\x74\x4d\x70\xa2\x0b\x26\x08\xeb\x77\x27\xcc\xdb\x8e\x03\x76\x91\xbd\x67\xd5\x47\x66\xa8\xca\x01\x1e\x74\x6e\x17\x48\xc7\x1f\x55\xa2\x92\x4e\x36\xf4\x16\xd3\x5a\xa5\x5b\xe8\x0c\x9b\x55\x22\x4d\x54\x61\x08\x1a\x62\xd2\x52\xe1\xbc\x18\xe3\x4b\xdc\x9a\xeb\x76\x13\x34\xd1\x4a\x9d\xa2\xd0\x20\x3a\x9d\x9e\x0f\x16\x9e\x4e\x87\x80\x6a\xf8\xcb\x3c\x80\xb6\x14\x14\xb1\xbd\x41\xea\x45\xb9\xde\x51\x56\xbc\xd6\x71\xd7\xb4\xb4\xbc\xf6\x90\x19\xb0\x29\x12\x15\xd5\xa9\x08\xe2\x6b\xe8\x5b\x36\xf2\x9d\x55\x82\xee\xee\xcc\x6e\x3c\xbb\x55\x19\x66\x40\x9d\x1d\xe9\xab\x33\x2c\x2f\xad\x57\xb7\x2f\xcb\xdf\xed\xf3\xf7\xc4\xa3\x90\x1c\xc1\x64\xad\x00\xb5\x81\x3b\x0b\x32\x1d\xa9\xbb\x90\xad\xab\x0d\xae\x75\x3e\x17\x09\x88\x06\xfc\x70\x8e\x26\x74\x5d\x6d\xb2\xfa\x78\xbc\xb7\x24\x0c\xa8\x7f\x95\x0e\x21\xb7\x82\x11\xda\x62\xc5\x92\x8d\xea\xb6\xed\x1e\x1e\x8f\xa9\xd9\x2a\x59\x49\x4e\xe5\x8f\xd8\xef\xbf\xa9\xdd\x96\x0b\x1d\x19\x1d\xdd\xa5\xc3\x50\x16\x9c\x13\xe5\x9d\x26\x97\xc6\x23\xe4\x88\x31\xde\x70\xb5\xcd\x09\x46\x12\x13\x38\x20\x98\x8c\x6f\x61\x2f\xce\x15\x5f\xb3\x8d\x93\xea\x48\x12\x7f\x3a\xe5\x56\xf8\xc7\xf0\x65\xbf\xe7\x01\xf4\x35\x57\x56\xb1\xb2\x9f\x31\x40\x1c\xf9\x68\x0f\x78\xdb\xaa\xec\x2b\xcb\x1e\x2f\x3e\xb6\xbf\x26\x2c\xf9\xd7\xd8\xc2\x5e\xf7\xca\x49\x05\xa4\x0f\x27\xed\xe5\xe9\x38\x7f\xbd\x89\xda\xa0\x2a\x1a\xc8\xb3\x25\xc5\xc2\x06\x5e\x1f\xb0\x22\x25\xf1\x65\x55\xb5\x7b\x57\xad\x17\x86\x41\x36\xeb\x38\x5c\xb9\xfc\xb7\x79\x54\x01\xd2\xc7\x40\x5a\xf9\xb6\x68\x5b\x84\xcb\xec\x41\x2f\x1f\x7d\x63\x0e\x99\x49\x70\x8f\x06\xaa\xbf\xbd\xd3\x80\x35\x68\xa0\x2b\x2f\x4c\x39\x83\x09\x01\xfe\x9d\x43\xb2\x5c\x25\x1b\x5f\x6f\x90\xca\x76\x96\x72\xdf\x20\x17\x93\x16\x05\xf7\xc7\x76\x6c\xcc\xca\x5a\xd8\x1a\xf7\xfb\x8e\x4a\x4f\xd3\xd0\x04\x9d\xe4\xdb\xdb\x67\xba\x0d\x2b\x60\xf1\x04\x90\x98\x29\xa1\xf5\x3c\x24\xf4\xd0\x3d\x9b\xbf\x27\x77\xda\xc6\x8b\xea\xf9\x40\xe8\x05\x57\xe8\x95\x22\x99\x26\x56\x71\xa8\x6c\x8f\x75\x12\x52\x0a\x51\xc7\x7b\x13\xdb\x3d\xbc\x19\x91\x70\x79\x58\xa3\x8d\x9e\x47\xc3\x29\x93\x54\x26\xb9\x9d\x19\x82\xf7\x8e\x9c\x22\xc3\x54\xc5\x90\x92\x3f\x0e\x39\x27\x4c\x58\xd2\x38\xe3\x98\xac\xd9\x26\x93\x8c\xa4\xab\xfa\x82\x57\x7b\x98\x3b\x45\x76\xef\x70\x31\x36\x2f\x97\xbc\xd1\x88\x96\xfa\x27\x31\x80\x31\xb5\x04\x70\x0e\x7d\xc3\x12\x11\x8f\x09\xf8\xc1\x44\x8b\x5f\xb3\x8d\xce\x0b\xaf\x26\x87\x29\x72\x6a\xff\x70\x1f\x6e\xcd\x78\xe1\x30\xea\x55\xa3\x44\xe5\x34\x3e\xe0\x3d\xfe\xd0\x9d\x50\xa2\xcd\x17\xde\x08\x10\xec\xc4\xc4\x88\xe1\x9c\xba\xe4\xbc\x5f\x1f\x83\xf0\xd4\x1f\xd0\x5d\x96\x76\x3b\x54\x27\x5a\x4f\x35\xc1\x7d\x8a\xef\x3c\x75\xda\x88\xb0\x30\x7a\xb2\xe8\x76\xf0\x01\x4d\x0e\xd9\x07\xbc\xcf\x3e\xc0\x1c\xdf\x45\xc3\x97\x44\x29\x7c\xca\x68\xe0\xcf\xe8\x05\x5d\xd0\xdc\x3d\x6c\xa1\xe3\xee\x5b\x7c\xad\x50\xde\x8f\x44\x7c\xac\xf8\x7b\x85\xf1\xea\x38\xe2\xbe\x5a\x27\xb4\x06\x1c\x9f\x6c\xe2\x38\xc5\x4a\xce\x87\xf1\xa8\xa3\x50\x3f\x60\x5a\xff\x50\xe5\x05\x65\x37\xf6\x37\x29\x96\x1f\x70\x5f\xde\xdd\x25\xa9\x83\x1d\x9e\x53\x55\x3c\xb6\xee\x9e\x12\x28\x5a\x45\x29\x4b\xeb\x37\xf9\x07\x33\x0a\x15\x4c\xb7\x58\x1e\xb0\xd2\x51\xec\xb1\x9e\xf3\xf2\x0e\x5f\xef\x73\xfe\x5e\xd3\xa5\xda\x02\xe2\xa9\xd6\x3d\xf8\xa2\x49\x5c\xc8\xb6\x41\xb5\x27\x5b\x54\x36\x2e\xe7\x97\xaa\xba\x36\x3d\x19\xaa\xac\x76\x8c\x78\x85\xea\x6c\xbd\xd1\x57\x72\x99\xd7\x3a\xee\x90\x32\x3d\x55\x66\x83\x91\xfd\x4b\x61\x99\x55\x70\x14\x39\xb1\xf3\x4b\xec\x4f\x7f\x29\xe6\x3f\x57\x95\x5e\x0a\x48\xce\x85\xc3\x13\xa0\x23\xd6\x80\xb1\x81\xb2\xc8\x55\x96\x2e\x0f\x62\x44\x00\x2f\x91\x35\x06\x27\x7a\x02\xe2\x1e\xf7\x19\x54\x97\xb8\x80\x15\x69\x12\xd0\xfe\x72\x7b\xf0\x70\xa9\xbf\x99\x32\x08\x8b\xce\x11\xa2\x9e\x3f\x42\xad\x16\xa5\x08\xf7\x48\xf2\x14\xf0\x59\x53\xf2\x6f\x2b\x27\x0a\x8c\xb0\xc5\xde\xc9\x4d\x90\xe3\x7e\x0c\xa5\xe3\xb7\x54\xf7\xf6\xb3\x53\x59\x53\x21\x2d\xce\xbd\x40\x0b\xc3\x41\x82\x46\x25\x0f\x6a\x9d\xdf\xb0\xfc\x50\xdf\x56\x22\x45\x5e\x14\x21\xc9\xb3\xc8\x25\xd1\x41\x7f\x0a\x5a\xc8\x13\x66\x1f\x54\xc8\x69\xfb\xa8\xd8\x1a\xfb\xa8\x8e\x81\x7a\x0c\xb9\x7f\xef\x95\x37\x70\x5e\x95\x25\x81\xc0\x3c\x66\x22\x6c\x34\x16\x75\x57\x1e\xc5\xcc\x7a\x42\x12\x4e\x2a\x6b\x05\x6e\x83\xa3\xd5\xfd\x3a\x30\xed\xb8\xdf\x9a\x39\x5d\x61\x65\xbf\x6c\x0a\x75\x6b\xc1\xab\xbe\x8f\x69\x38\x82\xb0\x96\x3a\x8a\x75\xfe\x41\xad\x7a\xc3\xe2\x71\x8c\xb4\x23\xcd\x73\xd5\x03\x29\x8c\x19\x6c\x38\x20\xbf\x76\xea\x30\xb4\xbb\xf9\x06\x24\x04\x93\xdb\xe8\x55\xce\xb5\xb9\x00\xb1\x37\xf1\x63\xaa\x38\x97\x4c\x92\x0c\x58\xc4\x91\x35\x57\xc8\x5a\xdd\xba\x85\x87\x8a\x07\x70\x6c\x17\x2e\xbb\xf5\xe4\x4c\x24\x90\xbc\xcb\xb7\xef\xe3\xad\xc5\x9a\xe9\xd7\x80\x15\x09\xa1\xfe\xd4\x21\x75\x8e\x4a\x8b\x4d\x64\x83\xef\xe4\x95\x5a\xd3\x8a\x9d\xd6\x92\xe1\x83\xc2\xe6\x69\xd1\x62\x09\x01\x91\x18\x3f\xbe\xa5\x86\x30\x1e\x16\x21\xf1\x78\x7f\x50\x6f\x97\xd1\xe3\xa1\x00\xab\xeb\xdb\xe2\xd4\xf7\xa0\x4c\x95\xa7\x5d\x42\x4e\x7f\x00\xda\x7d\x4f\x0f\x21\x26\x9c\xd5\xea\x22\xa2\x72\xf5\x00\x56\xd2\x46\xe6\x2a\x8c\x53\xf8\x6e\xd9\x2d\xd4\x4a\xe6\xea\xf3\xe7\xa5\xc6\x2b\x19\x8c\xa1\x99\x31\x3d\x33\xc9\x60\x87\xf8\xfb\x5d\xc4\xb7\x78\x74\xfb\x39\xd9\x11\x4e\xd8\x56\x32\x07\xa9\x2f\xa8\x97\x27\xf6\xb6\xe7\x30\xfd\x19\x6d\x59\x11\x33\x48\x89\x40\xe7\xfc\x92\xed\xaa\x3e\x11\xa5\x2c\x33\xb0\xc8\xee\x5b\xcd\xb7\x1a\xa6\x20\xa6\xc6\xf7\xe9\xa9\x8e\x47\x24\xb3\xa6\x41\x9e\x4d\x00\x3e\x38\x0c\x41\x30\xf9\x74\xc8\x19\x84\xa0\xde\xf4\x58\x10\x9f\xbd\x08\x38\x66\xeb\xf6\x24\xd6\x74\xfe\x9e\xb2\x62\x33\xb1\x12\xd4\x0a\x5c\x1a\xed\x07\x49\x95\x30\xdf\x0e\x48\xbd\xf7\x07\x51\x79\x83\x40\x36\xe5\x27\xb1\x96\x02\x44\x1b\x9b\x79\x8d\x24\x2f\xca\xfc\x26\x9c\x8a\x24\x3a\x15\x69\x18\x37\x85\xc0\x89\xa1\xdf\xe0\xa7\xa6\xdf\xe0\xb7\x0e\xc8\x63\x0d\x29\x2c\xf5\xda\x22\x7c\x6f\x0c\x95\x61\xab\x4c\xd0\xee\xd7\xe2\x96\x70\x0f\xd3\x9e\x2f\x94\xbb\x6c\xbd\x64\x72\x32\x12\x4b\x7c\xf0\x78\x90\x25\x6f\xdb\x16\x2b\xfc\x69\xb5\x24\x0a\x81\x06\xa0\x34\x2e\x58\xec\x6e\x49\x8c\xfe\xd8\x56\xac\x16\xbc\xd9\x8a\x8a\xf7\xb7\x50\xdd\x9c\x01\xe7\xd7\x91\xa3\xc7\xd9\x1e\xaf\xd1\x21\xd1\x81\x12\xa7\xb7\x92\xa0\x22\xbc\x26\x03\xed\xf6\x86\xe8\x8a\xa7\x24\xaa\x56\x02\xda\x12\x99\xb5\xd3\x1a\x8e\xa7\x45\x41\x8a\xcf\x5c\xb8\x51\xaa\xad\xbb\x6a\x3d\x65\xe3\xe4\xdd\x9c\x93\xea\x40\x58\x7a\x2f\x38\xbd\xb9\x21\x31\xf5\x83\x6c\x6a\x4d\x36\x03\x61\xda\x03\xa9\x6f\x4f\x21\xce\x3c\xf9\x2e\xbf\xb8\x44\x98\x66\x97\x57\xf4\x31\x07\x95\x38\x5b\xd3\x8b\xcb\x8e\x52\x5c\xf8\x8c\x1a\x43\xad\xe7\x42\x0b\x26\x16\x68\x52\x99\xfb\x67\x8c\xaf\x1b\x8c\xb5\xf9\xce\xc9\xad\x70\x52\xe4\x22\x4f\xc0\x53\xc5\xda\x03\x48\x5e\x61\x28\xdc\x66\xa8\xa4\x06\x51\xd7\xfc\x5a\xb6\x21\xbb\xf3\x56\xb2\xfa\xe7\x37\xaf\x7f\x1c\xd2\x63\xc4\x00\xa1\x13\x1c\xdf\xc5\xe1\xb4\xf2\x94\x07\xee\xf2\x89\xe7\xa9\xe2\x02\xdd\x83\xc2\x0c\x10\xe6\x4d\xd6\x9b\x64\x1d\xd1\xdc\x73\x30\x78\x24\x7c\x4b\x5e\x16\x72\xa9\xf5\xb5\xc8\xe3\x37\x7e\x4d\xc4\xcb\x02\x02\xf2\xc5\x17\x6c\x54\xc8\x80\x93\x6b\x91\xdf\x24\x71\xa5\x2b\x2d\xda\x76\xc0\xe6\x28\xd8\x3f\x5a\x24\xf8\xc6\x2d\x3d\xd8\x5d\xa7\xf7\x60\x47\x47\x4a\x89\xbc\xac\x18\x4a\x51\xe5\x11\xd9\xd8\x49\xca\x9f\x31\xdc\xe0\x85\x99\x11\x9e\xa5\xae\x32\x05\xb2\x88\xe3\x55\x7e\x38\x41\x2f\x16\x11\xa8\x01\x83\x1e\x43\x3e\x23\xaa\x2a\xdb\xa5\x4e\x49\xb3\x26\x1b\x9b\xee\x44\x1e\x64\xdf\x48\x43\x65\xa3\xf3\xb1\x95\x9b\xd1\x9a\x6c\x32\x86\x99\x56\xfd\xbc\x1c\x1f\x05\x34\x17\x59\x60\xd5\x24\xdd\xa5\xe7\x36\x6d\xbd\xcd\x89\x06\x96\xcf\x38\x37\x46\xcd\x7b\x02\x27\xcb\xd9\x97\x21\xdc\x64\xf5\x5c\x2b\xb9\x27\x3a\xc5\x49\x96\x65\x8d\x41\xb0\x41\x8b\x74\x97\xba\x0f\xcc\x15\xc2\x34\x4b\xab\x2c\xd0\x72\x0e\x6f\x28\x43\x48\x5d\xe4\x79\x56\xd9\x9e\x21\x05\x8a\x9a\x1d\xae\xbb\xb2\x47\x1d\x8b\xda\x33\x52\xef\xf8\x50\xd3\xe3\x11\x32\x84\x0f\x8f\x40\xed\xd3\x79\x6e\xa6\x53\x69\xc3\x82\x5c\xed\xaa\x97\x2b\x03\x37\x59\x98\x6b\xa1\x46\x2b\x88\xd3\x2f\x08\x8f\x05\x6e\xe0\xfd\x45\x05\x21\x2a\xb2\x73\xd3\x02\x3a\x61\x56\xcb\xd9\x5b\x99\x37\xc7\x23\xcb\xbc\x47\x70\x9a\x96\xeb\xad\x07\xdb\x4c\xa7\x8a\xb4\xd1\xa8\xb8\xc2\x0d\xe8\x97\x25\x76\xde\xca\x13\x39\x9d\x92\xd4\x7f\x86\xd5\xa9\x10\xae\x3c\xeb\x19\x9d\xe6\x3b\x2b\x3b\x1a\x5d\x0b\x2a\xdb\xac\xec\x4f\x53\x78\xc6\xd1\x9d\x69\x8a\xe8\x34\xcf\x48\x96\x65\xcc\x9b\xc9\xe4\x32\xcb\xb2\xad\xb3\x4a\x2b\xb3\x2d\xc2\x2c\x2b\xd7\x0b\x9d\x9f\x82\xaa\xdf\x1a\x24\xe0\xb7\x6e\xd2\x64\x15\x07\x53\x0c\xae\xec\x2b\x98\xb2\xba\xa0\xd6\x30\x23\x6f\x43\xc2\xa4\x5e\x96\xc1\xb3\xdc\xd4\x13\xe4\x4a\xf7\x86\x40\x5f\x6f\x3c\xca\x7f\xbd\x69\x3f\x47\xbc\xae\x9c\xbb\x7a\xe2\x75\xb2\xe6\x8a\xa4\xed\xaa\x39\xd4\x40\x49\xa1\xdc\x50\xb6\x38\x72\x68\x96\x05\x8e\x88\xc3\x97\x3b\xbc\xa3\xa4\x2c\x4e\x98\x58\x47\x9f\xf3\xc5\xd3\x50\x19\xcb\xe5\x37\x98\x0b\x5a\xca\x02\x96\xdc\xd1\x89\x9f\x53\xe1\x39\x07\x24\x51\x75\xce\x03\xb4\xe8\x97\xea\x9b\x82\x04\x05\x98\x61\x2d\x5d\xb0\xbd\xa9\x45\x1e\x54\xa6\x47\xbb\xd5\x1b\x93\x8c\xa9\x1a\xf8\x9a\x6d\x26\xb6\x5f\x48\x81\x6a\xc3\x47\xf8\xd3\x8c\xf4\x6e\xdc\x12\xde\x93\x3b\xcc\xe4\x5f\x79\x02\x74\x00\x1c\x8f\xbc\xe5\xde\x85\x41\x57\x1e\x5f\x09\xe1\x46\x65\xa5\xce\x4b\xb6\x4a\x2a\x46\xde\x56\xaf\x19\x49\x96\xc9\x3e\x67\x77\xe6\x77\xb4\x98\x4a\xfe\xa8\xcb\xe9\x87\x68\xc1\x1f\x2b\xaf\x41\x78\x50\x6c\x73\x5c\x82\xfe\x75\x21\xd1\x03\xb4\x54\x65\x38\x01\x07\x66\x0d\x91\x28\x0a\x69\x20\xb4\xdb\x55\x7c\x1f\x48\x97\xbe\x78\x98\x51\x0e\x5a\x8d\x4f\xf9\x4d\xbb\x03\xa2\x28\x93\x01\xe0\x1f\xe2\x27\xba\x20\xf8\x80\x93\xcd\x08\xc0\xbf\x8d\x4c\xfc\x81\xce\xa2\x6b\xf5\x39\xfd\x1a\x49\x57\x9f\x4a\x4d\x94\x3b\x4d\x32\xeb\xf6\x69\xef\xdc\xc4\x52\xd1\xd7\x51\x4d\x94\x4e\xeb\xda\x08\x49\x59\xc3\xa5\x8c\xe3\xe6\x67\xfa\xd4\xbc\xac\x9f\xd6\x77\x6c\x2b\x69\x70\xab\xf4\x91\xbf\x3f\x57\x77\x65\xd2\x01\xa9\x26\xb2\xe0\xe9\x78\x3c\xbf\xd4\x99\x7a\x00\x27\x64\x0b\xf5\xa4\xa5\x51\x9e\xfe\x44\xde\x9b\x8e\xfa\x3a\x1e\xdd\x17\x5a\xff\x54\x95\x77\xfb\x8a\x1f\x6e\xe9\x36\xeb\xbf\x72\x7d\xf8\xba\x15\xab\xad\xd9\x95\x4d\x7d\xfb\x2c\x67\x15\xa3\xdb\xbc\xd4\x41\x94\x94\x2d\xbb\x52\x2c\x9e\x5f\x9a\x29\x78\x6f\xb5\x7d\x64\x8b\x73\x76\xf7\x0b\x08\x82\x49\x2c\x14\xfe\x79\xaf\xdf\x28\x0d\x64\xe5\x47\xd7\xb4\x7e\x4e\xf6\xb9\xd0\xcc\x11\x65\x37\xc7\xe3\x39\xb1\xcb\x05\x86\x68\xeb\xc5\xc6\x18\x06\x99\x9e\x5f\x06\x4a\xa1\xa8\x9e\x78\x71\x45\x1e\xf7\x07\xa3\x31\xf1\x6c\x16\xf2\x7e\x7e\x19\xcd\x51\x8b\xf8\xd8\x84\x37\x36\x14\x84\x97\x93\x00\xa6\x7d\x9b\x7f\xa5\x65\x69\xc4\x01\xf8\x12\x2f\x50\x7f\x3b\x20\x0c\xdc\x16\xbe\x1b\x29\x3d\x71\x96\x70\x91\xf2\xc6\x04\xab\xd7\xd9\x73\x5a\x84\x7d\x9d\x2f\x5a\xe3\xbe\xd5\x62\x25\x53\x7d\x1a\x0b\x73\x32\x34\x73\x1b\x63\xc3\x85\x3d\x99\x5b\x1f\xa5\x14\xb5\x38\x84\xa0\x8e\x1f\xac\x6d\xc0\x1a\x37\x9e\xcb\xf9\xcf\xaf\xd5\x48\x5e\xd6\x4f\x4b\xfa\x81\x28\x26\xdd\xc5\x5b\x2c\xe8\x6e\xa7\x6d\xcf\xba\xa3\xc2\x8e\xdf\x65\x2a\x2b\xbd\x9a\xee\x4b\x56\x90\x4f\x26\x85\xd6\xc0\xea\xf7\x2b\x80\x0f\xa9\x04\xa5\xe2\x59\xd5\x30\x81\xd9\x3c\x2f\x0a\xfd\x10\xdb\x88\xce\xc2\x07\x27\x8a\xcc\x6b\xd8\xc3\xd1\x4d\xf9\xdc\x21\xf0\xe9\xd4\x7f\xf1\x64\xa1\x79\xfc\x90\x11\x97\xb7\x29\xac\x97\xda\x15\x10\x50\x79\xaa\xfc\xf7\xe4\x2e\x41\x08\x01\x8d\x0b\x06\x5f\xc1\x26\xb9\xd8\xed\x5c\x36\x9f\xd2\x3e\x28\xe8\x99\x11\x4c\x66\x26\x34\x2b\x34\xec\x24\x2d\x60\xad\x29\x67\xf1\x82\x57\x7b\x9b\xed\x39\x1c\x01\xa6\xf3\x7d\x7e\x88\x1e\xfd\xbe\x67\x41\x8b\x10\x82\x14\xa9\x03\xbd\xe5\x45\x01\xe9\xb5\xa2\x1d\xb1\xcf\xeb\x08\x1b\x73\x35\x4e\x04\xa7\xe4\x03\xf9\x21\x87\x60\x19\x20\xad\xf4\xdf\xc4\x0d\x0e\x22\xa3\xf3\xcc\xa1\xbb\xdb\x80\xf5\x51\x53\x12\xa5\x6b\x57\xf2\xdb\xbb\x7f\xae\x2b\xf6\xf4\x40\x7f\xd6\x79\x83\x52\x82\x26\x10\x7b\x3b\xd7\xab\x00\xa0\x28\x9f\x25\x20\xca\xbf\x48\x02\x24\x65\xef\x6b\xbf\x00\xbc\x48\xcc\x17\x14\x47\xf3\xe0\x54\x1c\xd3\xc4\x0c\x7a\xa5\xaa\xb2\xaf\x0c\xa4\xe9\xbc\x75\xb6\x58\x00\x90\x89\x0f\x24\x6a\x4b\xc0\xe0\x3c\xd0\x3b\x05\xca\x78\x9e\x41\x38\x2a\xdb\xfc\x7f\x93\x65\xcf\xfa\xd7\x3d\x44\x8f\x70\x46\xaa\x10\x0b\xcc\x18\xb4\x49\x7a\xb7\x7a\x4f\xd2\x44\xd6\x4d\x10\x1e\x51\xd8\x90\x16\xe9\x10\xbb\x91\x5e\x75\x19\xfb\xd6\x8b\x42\x6a\xb4\x47\x8a\xb9\xef\x2a\x8f\x58\x3b\x1c\xc6\x75\xc8\x60\xd0\xc4\x02\xe8\x73\x0f\x76\xaa\x46\xd2\xa4\x51\x2e\xf7\xa2\x88\x92\xd0\x3a\xcd\x73\x6a\x87\xec\xdb\x2d\xc2\x1f\xb3\xae\xca\xcb\x04\x69\x90\x00\x34\x46\xc8\x6a\xd6\x32\xa6\xaa\xb3\xfe\xc6\x8a\xfa\xb1\x84\xbe\xc2\xd0\x92\xcf\x07\x63\x29\x48\x62\x58\x71\x02\xb1\x5f\x55\xc8\xf9\x5c\x50\x76\xf3\x32\xe6\x5a\x40\x35\x84\x79\x19\xdf\x65\x1f\x15\x66\x78\x44\xa7\x28\xc0\xcd\x12\xe1\xef\xb2\xce\xde\x98\x59\xc2\x21\xe8\x9a\x99\x4b\x62\xba\xb6\xd6\xf1\xea\xa0\x24\xd1\xd9\xfa\xab\x0b\xa7\x4b\xef\x75\xe2\x01\xb8\x33\xd1\xd5\x9a\x42\xa2\x23\xfc\x76\x80\xe1\x4d\xda\x0b\xcf\xcb\xe4\xcb\x8a\xc1\x4f\xa2\x7e\x83\x4b\xae\x16\xf2\xbf\x49\x13\xfd\x53\x96\xd8\xed\xa0\xc4\x6e\x97\x20\x30\xdc\x7c\x03\x3a\x3d\xc9\x20\x3b\x17\xbf\x37\x71\x5f\x38\xd8\x34\x93\xaa\xa5\x0f\x84\x76\x06\x68\x4d\x36\x86\x8c\x0d\xe4\xf4\x44\x25\xce\xab\x21\x75\xb4\x3d\x19\xd9\xb5\x7c\x92\xbb\x98\xbd\xc3\xc4\x6c\x80\xdd\xc1\xec\xa3\x7b\xe9\xea\x7c\x87\xc9\xfc\xda\x48\x60\x55\x3e\xea\x51\x71\xa9\x0a\x14\x0f\x66\xcd\x7c\xbe\xcb\xb7\xa2\xe2\x77\x20\x7e\xdf\xcb\xba\xcb\x64\xa6\xec\xd3\xe5\x45\x09\x72\x2b\x48\xe9\x61\x84\x7a\xef\x0c\x20\x50\x34\xa9\x42\xf9\xf3\xf5\x35\xad\xa1\xfb\xe5\xf9\x02\x5f\x5f\xab\xd6\x68\x8b\x30\x9f\x1b\x1b\xa0\xd4\xb2\x1d\x02\xbb\xfc\x23\x9d\x51\x98\x12\x90\xae\x56\xf2\x5b\x59\x85\xc9\xdc\x9e\x89\x2c\xc7\x60\xb6\x2a\x17\x20\xab\xbf\x5a\xce\x53\xe5\x3f\xfa\x40\x4c\x98\x8e\x93\xe9\x3f\x2a\x4b\x9a\x4d\x4f\x76\x62\x7e\x34\x80\xa0\xd1\x74\x9c\x72\x59\x4f\x6e\x4e\x16\x1e\x6d\xcd\xd3\xaa\x9f\xd8\xa4\xad\x31\xda\xae\xd5\xb0\x9f\xd8\xaa\x2e\xdf\x0e\xef\xb2\x22\x2a\xd4\xef\x2f\xf6\x15\x7e\x54\xf1\x82\x70\x52\x5c\xd4\x24\x92\xde\x6b\xd4\x59\xd8\x13\xef\x66\x19\x39\x1e\x13\xc8\x07\xb2\x92\xcf\xcb\xbe\x4b\xdc\x8a\x2c\x93\xfa\x6e\xff\xae\x2a\x83\x97\x36\x35\x47\x8a\x20\xf6\x54\xc7\x73\x57\xc7\xca\x35\xe5\x55\xc8\x5c\x63\xfd\x61\xc2\xd6\x12\x08\x64\x6b\xba\xd4\x6f\xef\x6f\x39\xd9\x2d\x89\xf5\x18\x01\x3f\xb9\x4e\x74\x00\x73\x63\x61\xee\x4f\xcd\xe3\x39\xa3\x4c\xbb\x32\x79\x6a\x79\x46\x70\x2a\x32\x86\x06\x93\x8a\x06\xa9\x44\x45\x90\xf3\xd0\xea\x74\x33\x21\x19\x9e\x6b\xf8\x76\x7d\x9d\x71\xcc\x74\xed\x48\x5a\x74\x46\x3e\xc2\x65\xd3\xda\x1c\x69\xb6\x49\x77\x51\xe6\x45\xf1\x2b\x15\xb7\xc0\x3e\x8c\xe1\xce\x86\x16\xd6\x23\x44\xcb\x15\x48\x4d\xd8\x96\xbc\x21\xc2\xc8\x08\x4b\x5a\x8b\x89\x89\x69\xc3\xd6\xdc\xaa\xa0\xe4\xef\xec\x7c\x81\xd5\xde\x8b\x15\x35\xd6\x10\x4b\x6a\xb8\x55\x81\x17\x96\x74\xae\xe9\x7f\x92\x59\x76\xa9\xef\x3d\xaa\x2d\xcf\xfe\x80\x61\x66\x7a\x98\xf7\xaa\x07\x18\xa7\x76\x83\x75\xac\xea\x4a\x2c\xa9\x8d\x60\xee\x88\xa4\xea\xc9\xc5\xe5\x74\x6a\xc7\x5f\x39\x6e\x9b\xfe\x27\xc9\x4c\x04\xf3\x90\x65\x66\x6d\xca\x25\xeb\xda\x4b\x38\x73\x9b\xd7\xaf\x9d\x3f\x9c\x92\x65\x71\x87\xfc\xd0\xca\x86\x45\x5e\x72\x14\x64\xcc\x32\xbb\x9d\xf6\xb9\x91\xe3\x91\xa0\xf9\x75\x20\xaf\xee\x24\xaf\xb2\xa0\x22\x1b\x52\x77\x38\x0a\x12\x22\x79\x0e\xdb\x7d\x4a\x66\xb0\x4b\xba\x97\x6b\x42\xc5\xcf\x41\xd7\x29\x41\x6b\xbe\x09\x92\x23\x85\x22\xef\xc5\x15\x7f\x6c\xdc\xfb\xae\xb8\x91\x68\xb3\x4c\xc8\x5d\x61\x73\x87\x07\x33\xff\x01\x64\x52\x6c\xee\xeb\xba\x25\xa8\x25\x70\xb9\x68\xf7\xff\x94\xcd\x3f\x72\x2a\xf4\xb7\x61\xac\xcb\x94\xe8\x5b\x7b\xdd\x6f\xfd\x33\xe5\xe9\xfa\xbc\x88\xc9\xbe\x68\x5c\x0b\xf9\x34\xe4\x28\x58\x78\x4f\x59\x11\xbc\x70\x0b\x16\xbc\xde\x03\x72\xad\x83\x77\x5b\xc3\x61\xbd\x8a\x7c\x04\xf4\x1c\x76\x45\xee\x82\x67\x3d\xaa\xbf\x76\x5f\x47\x46\x19\x8a\xfd\xc2\xe1\x86\x2e\x25\x03\x3d\xbc\xa8\xf8\x4b\xbd\xe7\x9d\x69\x75\xaa\x5c\x1b\x89\x68\xaf\xb1\x6b\x41\xf6\x07\xe7\xdc\x11\xcc\x15\x32\x60\xbe\xa8\xf8\x96\x28\xfb\xee\xcc\x48\x21\xfd\xe1\xbd\xac\xdf\x88\xbc\x0c\x6b\xde\xe6\x81\x9c\x8d\x18\x85\x76\xb7\xd0\x53\x76\xe7\xc3\x6a\x6f\x7b\xc2\x7e\xc0\x96\xbf\xdb\xc4\x0b\x88\x5e\xf8\x43\x95\x17\x4f\x55\x68\x4a\x3b\x48\xe0\x08\x82\xe2\x1f\x69\x59\xbe\xe9\x6d\x42\x08\x45\xd4\x03\x20\xa5\xe0\xd2\xa1\x01\xb8\x51\x46\xce\x73\x59\x10\x3c\x23\xcd\x9b\x83\xdb\xc6\x49\x17\xdc\x58\x08\x69\xf2\x72\xa8\x06\x00\xcd\xfb\xa6\xe0\x8c\x38\x10\x03\x76\x2c\x90\x19\x3b\x38\x13\x31\x10\xcb\xb2\x2c\x3f\x1e\xf3\x61\x48\x3b\xcf\xb2\x7a\x3a\xad\x07\x00\x8e\x8f\xc1\x5a\x04\x72\x66\x66\xa4\x1e\x04\x7a\xae\x03\x83\xf0\x17\x03\x25\xb3\x83\x83\x60\xe4\x15\x88\x81\x50\x1c\x4c\x15\xf8\x9c\x2f\x5a\x4d\x4b\x60\x86\xf3\x8c\xf4\xef\xe6\x7c\xde\x51\x1f\xf4\xaf\x78\x2d\x14\x0f\x8b\xb5\xd8\xaf\xf9\x26\x5e\x31\x3d\xef\x2c\xab\x36\xcc\x0e\x9b\x42\xd0\xd6\x6d\x5e\xbf\x69\x0e\x92\x48\xf4\xd6\x3e\xc0\xed\x59\x84\xcd\xb5\x9b\x4b\x06\x2e\x04\x67\x82\x3b\x74\x63\xf4\x3a\xff\xac\x4e\xf9\x50\x67\xbc\xdb\x89\x3b\x25\xcf\x69\x11\xec\x74\x36\xe4\xee\xd1\x59\xbd\x89\xd0\x52\xb3\x5d\xc5\x9f\x96\xe6\x20\x85\xd1\xc4\x20\x7d\xde\xc8\x7c\x6c\xfc\x3f\x96\xd5\xa0\x63\x05\xa1\x47\x10\x8c\x42\x74\xee\xf3\x89\x4a\x5f\xa9\x86\xe1\x82\x17\x4d\xa7\xc4\x9b\xd3\x79\x96\x45\xca\x1c\x8f\xd6\x26\xa2\x3b\xe9\xd4\xaf\x0d\x9e\x82\x72\x91\x82\x99\x05\x6b\xef\x82\xe3\xc4\xbd\x03\xe1\x5e\xf7\x70\x0f\x10\x60\xb1\x7b\xbe\x5b\x66\xcd\x37\x2e\xe2\xa5\xa6\xec\x18\x9a\x88\x35\xdd\x1c\x8f\xa9\xfc\x23\x6f\x7a\x92\x32\x84\x5a\x33\x08\xe5\x47\x1e\xc5\x6b\x41\xbf\x9e\x83\xf9\x70\x61\xe5\x79\x1e\x0e\x20\x97\x03\xa8\xd5\x00\x6a\x3d\x80\x1c\x04\xe2\xf9\xd0\x82\x06\xab\x75\xee\xe3\xc8\xe3\x11\xd4\xb4\x60\xad\x9b\xa2\x55\xaa\xd1\xc5\xbe\xfa\xe0\x6d\xd5\x0b\x5e\xed\x5f\x7f\x64\xa9\x93\x2c\xcb\xef\x56\x00\x3b\x5c\x10\x42\x58\xf7\x50\x4f\x7a\xbe\x40\x3a\xd4\x7a\x0d\x02\xe3\x28\x6e\x4b\x41\xa8\x9b\xcf\x55\x0a\x25\x40\x97\x3d\x2b\x55\x40\xae\x44\x96\x02\xff\x9e\x2c\xaa\x2d\xeb\xed\xea\x15\xb1\x1e\xc0\x57\x7e\x08\xa9\x49\x74\xf2\x40\x91\x86\xfe\xe9\xd1\xad\xba\xe2\xdd\x56\x59\xc6\x3b\xad\x46\x96\x2c\x65\x6a\xe7\x54\x01\xc8\xa9\x69\x3e\xd5\x7a\x39\xb3\xae\x86\xb6\xb7\xac\x70\x5b\xa4\xe7\x46\x19\x67\x26\xeb\x9c\x9e\x5c\xf3\x91\x21\x0c\xf6\xd3\x9b\x67\xe0\xad\x1e\x4a\xe1\x7f\x90\x3b\xe8\xf7\xe5\xb5\x1f\x89\x65\x26\x5b\x98\x44\x33\x81\x06\xda\x8d\xce\x56\xa8\x3c\x3b\x38\x97\x4c\x63\xbc\xfd\xd0\x36\x70\xb0\x87\xb0\x01\x15\xbc\xc2\x31\x5c\xd3\xa9\x98\xcd\x5c\x4f\xb1\x25\xcb\x86\xcc\x66\x24\xae\x21\x3e\x6e\xf1\xf9\xb8\x5b\x15\x1e\x23\x06\x06\x44\xe2\x1a\x3e\x13\xfa\x60\x8c\x94\x1a\x19\x56\xff\x84\xf4\xb6\x50\x19\x34\x9b\xf8\x03\xbd\xcf\xe0\x64\xe7\x4e\x6f\x73\x78\x69\xf0\xb6\x6f\x5d\x89\xc6\x40\x00\x7b\x27\x3b\x42\x94\x98\x73\x3d\xd4\x7a\x10\xc5\xd7\x66\x42\xb2\x17\x9d\x0a\x4b\xa1\x68\xa9\x91\xab\x4c\x18\x0d\xf6\xa4\x4e\x45\x97\x82\x43\x43\xcb\xdb\x21\x59\x11\x24\x6c\x1d\xea\x30\x4a\x88\x78\x1d\x1b\xe3\xe6\x38\x6d\x81\x25\x76\x18\xa6\x2c\x37\x13\x76\x3c\xa6\x0f\x94\x01\x3a\x59\xe9\x9b\xb5\x6e\xc2\xd2\x9e\xf7\xc6\x18\xf0\x1e\x88\xf4\xa5\x8f\xf3\xdb\x16\x82\x16\xb2\x93\x57\xc1\x1d\xea\xaf\x7b\x14\x86\x91\x62\xe7\x34\x8c\x17\x44\xa3\xe3\xcb\x62\x3e\x0a\xf1\x53\x61\x34\xee\x0f\xdf\x6f\x36\xd8\x8d\xdb\x98\x07\xa6\x24\xab\x9a\x9b\xcd\x26\x1a\x39\x01\x9e\xe4\xa8\x86\xe8\xd3\x31\xd8\xf8\xb2\x5a\x23\x2b\xdd\x85\x8a\x87\x6e\x81\x00\xc3\x66\xa1\x7d\x58\x70\x4b\xc9\xb5\x17\x16\x23\xed\x1d\x22\xb2\xf2\x36\xa8\xe4\xc7\x60\x51\x0d\xfb\xb3\xd2\x56\x02\xb6\xdc\x38\x6e\xb0\x76\x07\x76\xf3\x86\xb0\xc4\xc8\x02\x9c\xbe\x87\x02\x20\xeb\x0b\xb6\x43\x2e\xca\x17\x54\xfb\x1d\x78\x21\x60\xa0\x21\x7e\xcb\x17\x00\xd1\xf8\xba\xa1\x53\x6f\x88\xee\xf5\x1f\xa3\xff\x86\x8f\xef\x30\x55\x1a\x3f\xb3\xff\x97\x1e\xd5\xb1\x85\x8e\x2d\xa2\x37\xb9\x60\x3d\xcd\x4d\x3b\x76\x70\x48\xff\xe0\x18\x7a\xae\x36\x3e\x67\xde\x27\xe0\x49\x07\x77\x63\xe4\x96\xe9\x15\x1e\xde\x79\x1b\xbf\x69\xf4\x0e\xf8\x2f\x9a\xf4\xc8\x0d\xf2\x79\x77\x6c\x7f\x19\x86\xaf\xb2\x8e\xae\xc2\xbb\xab\x1e\x20\xd8\x9f\x55\xfb\x83\xac\x5a\xde\x45\x97\xab\x1b\x4e\x6a\x54\x7c\x13\xc2\xaa\xd5\x5a\x45\xf9\x73\x96\x75\x16\x63\xd2\x93\x6e\xac\xba\xde\x17\x5d\xa6\x5c\x79\xfb\x8c\x4b\x37\x24\x16\x76\xe6\x7b\x6b\xba\xd1\x12\x11\x6f\xf3\xe4\x2d\x10\xbc\x88\x2e\x8d\xdc\x3f\x86\x26\x5c\xb1\xff\x6d\xbb\x3c\x61\x74\xdd\xa1\x0d\x5f\x14\xc1\x10\xa7\xd3\xb4\xe9\x8c\xc9\x5f\xd7\x91\xe1\x61\x3d\x3c\xd4\x86\x3c\xa1\xe1\x87\x0c\x50\xf4\xe0\xa7\x5b\xc0\x0a\x0a\x54\x71\xcd\x52\x0e\x81\x4d\xf4\xb0\x0e\xc0\xa8\x45\xc8\xd1\xc3\x1c\x42\x6b\x1c\x0e\x03\xb6\x7e\x12\x8a\xb6\xcf\x2f\x27\x4e\x2e\x04\xc1\xfa\x7b\xf4\xa8\x24\x1e\x8d\xe8\x43\x9e\x5a\xa5\x13\x94\x14\xe5\x24\x10\x55\x0f\x30\xc3\xd5\xe1\x2e\x45\x5e\xc2\xfc\xc5\x15\x73\xea\x23\x36\x9b\xa1\x2e\x41\x93\x8a\x35\xdb\x44\x26\x07\x47\xb1\xc7\x7d\x9b\x99\x18\xca\xc8\xcd\xcc\x57\xc1\xcc\xaf\x4d\x8e\x69\x07\x48\x60\xb9\xa4\xcd\x50\x9d\x08\xe5\x07\x50\x03\xf4\x36\x47\x69\x07\x88\x2b\xd7\x11\x0c\xe8\x74\x38\xfd\x8a\xa3\xf7\xb7\x06\x2e\x65\xa3\x64\x22\xe4\xa8\x8d\x0d\x5f\x66\x41\x84\x81\x7c\x9c\xc0\xeb\x16\x1e\x1c\x42\x7f\xb4\x03\x12\x72\xe2\x9a\x89\x4b\xd8\x63\x0d\xc5\x4b\x9a\xa6\x22\xa2\x99\x7e\x2b\x31\x69\x7f\xbc\x01\x25\xad\x7f\xa0\x01\x55\xc8\x34\xf0\xa6\xa7\xaf\xea\x6f\x5e\xaf\x88\xb7\x12\x7d\x55\x52\x6c\x15\xfa\xa5\xa0\x09\x79\x88\xa2\x02\x99\xf3\x4b\xcc\xe4\xa9\x04\xa4\xeb\x19\x82\x3a\x01\x5f\x6a\x0c\x41\x3d\x29\x3a\x64\xd8\xe3\x16\xe6\x55\x61\xc5\xfa\xc1\x37\x2c\x91\x6b\x59\x93\x33\xc9\xa5\x5f\x66\x59\xe6\x23\xad\xe9\xf4\x7c\x64\xf3\xd1\xbd\x6c\x57\xab\xdb\xad\xbd\x8b\x69\x02\xdc\x88\xd6\x1b\xe5\x76\xd8\xed\xbb\xc2\x02\xb5\x30\x11\x65\x97\xea\x0b\x72\xe1\x8d\xbd\x21\xbd\xb3\x67\x4b\x1b\x73\xd6\xb9\xf6\xa9\x52\xd5\xeb\x8c\xa6\xdd\x0f\xb8\xc9\xf2\xe9\x34\x37\xcf\x2b\x9a\xda\xdf\xca\x21\x12\x97\x59\xb3\x6a\xe6\x60\x3b\x02\x23\xad\xa7\xd3\x1a\x1e\xcd\xdf\xf3\x2c\x2b\xa7\xd3\x94\xc1\x5d\xd0\x9a\x61\x0d\x6c\x74\x7a\x7e\x89\x4c\xc6\xa7\x6d\xa6\x3d\x5f\xd5\x42\x1f\x8f\xa1\x13\xa8\xde\x9a\xe9\x74\x61\x8b\x68\xdc\x37\x39\x15\x3d\x0c\xc9\x31\x2f\x03\x0e\x61\x40\x3a\x7c\x39\x2e\x63\xde\x2a\xe1\x8d\x04\x0b\x66\x18\x83\x11\xb9\xe9\xb9\xd0\xba\x8f\x5d\x9f\x1a\x09\x9f\x15\xda\xfd\x95\xe7\x87\x03\xe1\xf1\x38\x09\x3b\xcf\xa8\x75\x37\xa7\x05\xde\xcd\xb7\x25\x25\x4c\xbc\x2c\x2c\x27\xa6\xae\xd0\xb2\xda\x6a\x27\x94\xde\x41\x57\x18\xce\xc1\x5c\xf7\x8b\x8e\x99\x14\xbe\x16\x19\xc1\x29\xcf\xd6\xf7\xef\xc9\x9d\xcd\x38\x36\x60\xb1\xd5\x99\x96\xbe\x07\xdb\x16\xab\xca\xbe\xa2\xb2\xd7\x86\xef\x09\xa1\x28\x68\xbf\xb8\xf5\x1b\xd3\x1e\xd2\x03\xe4\x73\x0f\x8f\xc9\xba\xca\xe1\x99\xfb\x66\xe5\xd6\xc1\x5d\x1e\xf5\x53\x7d\xaa\xbb\x7d\xb6\xfd\x61\x66\x24\x48\x5b\x14\x7c\x6b\xdb\x0d\x9a\x4e\xcb\xd4\xb3\x91\xc1\x1c\x4c\xf8\xc1\xc7\x0b\x61\xd2\xa6\xca\x41\x6b\xf7\x90\x79\x96\x97\x6e\x0b\xb0\x84\xb1\x5c\xcd\x33\xe2\x65\xe8\x70\xa5\x14\xa5\x85\xfa\x1a\x33\xa3\x2e\xce\x1d\x2d\xe2\xfb\x2f\xe1\xdc\x37\xc1\x50\x0f\xca\x9e\x24\x8f\xb4\xa5\x52\x0e\x74\x5b\xd2\x6f\xbd\xaa\x7f\x90\xd9\xd8\x98\x45\x58\x6d\x1c\x72\x7a\x37\x39\xb1\x22\xf4\x40\x29\xb0\xf4\x37\xdb\xd7\x42\x46\xd9\xfb\x34\x5e\xfa\x14\xa9\xc4\xc9\x68\x2b\xaa\xf5\xba\x44\x2d\x86\xd9\x3d\x24\xb9\x27\xe3\x9a\x02\x3d\xdf\x70\xeb\x82\xc9\x0e\xca\xef\xc2\x3a\xe3\x7c\x21\x0c\xf5\xa5\xf2\x93\x7b\x70\xc4\x06\xc5\x8e\x2a\x14\xf6\x91\x77\x7d\xc8\x8c\x0c\xd4\xd8\x7f\x8c\x69\x24\xe4\x80\x1f\xd2\x8a\x8c\xca\x7f\x45\x5f\x2b\xf2\x7b\x57\xb6\x33\x0b\xc9\xc8\xb9\xd3\x11\x1f\xac\x8f\x12\x7e\x07\x48\x5a\x90\x83\x75\x79\x50\x2d\x8c\xee\xfd\x91\x0d\x14\xf7\x87\x36\x76\x84\xa2\xb1\x99\x14\x44\x3d\xc8\x32\x8a\x70\x24\x03\xe5\x23\x8b\xd4\x59\x6a\x9d\xad\x29\xf2\x45\x09\x1d\x06\x60\xcf\xab\x36\x80\x32\xc7\x66\x38\x38\xc5\x88\x30\xe5\xa1\x59\xea\x2a\x5e\x84\xeb\xa1\x31\x83\xa1\x30\xa6\x23\x0c\xf3\x28\x7a\xec\xbd\x77\x1c\xf1\x79\x64\xfd\x56\x5d\x2e\x7b\x39\xb0\x5c\xe7\x59\xec\x24\x0f\xaf\x6e\xa4\xf0\xf8\x62\x07\x87\x29\x9c\xbc\xb7\x6a\x06\x2f\x8c\xa1\x83\xb8\x26\xe2\xeb\xdc\x27\x91\x89\x76\xb1\xc0\xe8\xe1\x7f\x18\xd4\x46\xc4\x84\xf1\x09\x3e\x00\xe1\x7d\xc8\xec\xf5\xf0\x45\xe3\x7c\xd0\xb6\xa1\xdf\x71\xb4\xca\x89\x47\xe2\x41\x5c\x14\xfd\x34\x20\x67\xfa\x3c\x76\xa0\xdb\x1d\xf1\x9d\xdc\x24\x3f\x40\x62\xfc\x80\xc3\x1d\x27\x08\x80\x9d\x1a\x6d\xe0\x2e\x1b\xc1\x7e\xbf\xfb\x56\x59\xa0\x08\x90\x0c\x8f\x3a\xa4\x72\x3b\x20\x71\xa2\x3d\x4a\x14\x36\x46\xea\xf6\x80\x24\xb2\x0e\x72\x1c\x37\x44\x74\x99\x2b\xd8\x76\x08\x18\x19\xb8\x23\x46\xd0\x41\x4a\xb2\x01\x14\x0a\x3e\xe5\xca\xf1\xf5\x65\x41\x98\xa0\x3b\x2a\x89\x2a\xa4\x1d\x10\x06\xaa\x69\x04\x13\x97\x56\x40\x77\xde\xe5\xa5\x5d\x65\x53\xed\xf1\xe7\xc9\x1e\x7c\xf9\x09\x14\x28\x40\xd2\x85\x9c\x41\x2a\xbc\x0d\xa3\x30\x80\xaa\xcf\x67\xa7\xb4\xa1\xa1\x5c\xa4\x18\x13\xea\x04\x3b\x3a\xd7\x06\xad\x7f\xac\x18\x51\x6a\x38\xae\x07\xea\x62\xb9\xa5\xbc\x7b\x90\xc2\x83\xd3\xb1\xe3\xd7\xd9\x99\xe7\xb4\x40\x08\x6b\x6b\x81\x51\x6a\x34\xe5\xce\xa2\x2c\xfe\x19\x9c\x1f\xb6\x8a\x67\x2b\xfe\x28\x9e\x6d\x88\x31\x0b\x7c\xeb\xed\xdb\x6b\x79\x8d\xaa\x98\xd0\xce\xa3\xd0\x7d\x3d\x10\x56\x50\x76\x63\x3f\xa9\x92\xf5\x00\xbb\xd7\xe9\x7a\xbd\xe9\x76\x0b\x6f\xa2\x5d\x9e\x5f\x8e\x75\xf7\x7f\x04\x4f\xf8\x20\x65\xff\x10\x3e\x3c\x1e\x5d\xf0\x07\xbe\x8a\xa0\x04\xe3\x47\xc3\xf1\x02\x8b\x28\x8b\x65\x62\x55\x7d\x26\x15\x6f\x50\xde\x83\x44\xb8\xf8\x6c\x2a\x3c\x54\xd1\x68\xf4\xa1\xee\x20\xbb\x8d\x86\x3d\x1d\x25\x84\x86\x8d\x32\x4e\xa2\x55\x30\x37\x38\x27\x0b\x4e\xfb\x70\x94\x8f\x58\xbc\x10\xb5\xf2\xfe\xbd\xad\x83\x09\xc4\xe8\xeb\x53\xef\x48\x6d\x88\x39\x79\xe0\xae\x74\xb9\x38\x41\x56\x1a\xdb\x7d\xe3\x81\x05\xb6\x53\xe0\x7b\x35\x02\x45\x0c\x5f\xfe\xdf\x7c\x49\x46\x0d\x3e\xe3\x33\xed\x3a\x0b\x85\x9b\xfd\x3b\x86\xf4\x47\xf1\x8b\x93\x98\x25\x6f\x77\x8b\xaf\x2e\x2e\xbd\x20\xa4\x43\x98\xe2\x32\x30\x88\x8e\x68\xf9\xd1\x38\x63\xe6\x07\xab\x09\x39\x9f\xd8\x01\x1a\x8d\x36\x64\x99\xb6\x8b\x4b\x1d\x38\xd1\xf8\x0b\xb6\x08\x4d\x04\x04\x59\x65\xdb\x5c\xa4\x3c\x16\xee\x45\x9c\xc6\x4c\x8d\x9c\xcd\xd3\xf8\x11\x79\x22\x3f\x93\xbf\xc0\xdc\xc4\xdf\xe6\x46\x07\x1d\x64\x15\xe9\x6c\x99\x15\xf6\xc7\x30\x0c\xb3\x3b\x36\x8c\x5f\x4e\x56\x40\x8e\xaf\xc5\x90\x96\x53\xd2\x1b\x06\xd7\xa8\xb4\x9b\xeb\x0d\xf2\x34\xd5\xf1\x73\x28\x2a\xa5\x74\x51\xf9\x16\xd5\xe1\xba\xb8\xbc\xe2\x4f\xb2\xc5\x15\xbf\xb8\x40\x0f\x49\xa8\xc0\x9c\x32\xd0\x55\xc7\xb2\x13\x8c\x4a\x1d\xd7\x6c\x83\x59\x47\x2c\x38\x64\xe3\x0d\xba\xb8\xf3\xac\x13\x36\x14\xec\xa3\xa6\x53\xa5\xd7\xd3\x08\xc2\xf3\xdd\x58\x5c\x09\xa7\x9e\x17\xc6\x3b\x82\x67\x64\x2d\x36\x23\xe8\x9b\x8f\x1b\x33\xf3\x88\xec\x91\x3f\x64\xe0\x2c\xf1\x6f\x54\x80\x37\xbe\x39\xad\x83\x9f\xee\xf5\xfb\x30\x5f\x49\x4e\x50\x2c\x9d\xcc\x48\x46\xc0\xf2\x0b\x47\x10\x82\xf6\xc9\x03\x18\xe2\xab\xba\x5c\xd5\x30\xaf\xa3\xb8\x96\xfe\x51\x1e\x0a\x86\x44\x86\x98\xae\xd6\x5a\x1c\x1a\x96\x89\x44\x58\x26\x9f\x37\x22\x3d\xde\x88\xc4\x78\x23\x72\x02\x6f\x44\x77\x69\x87\x3d\x42\xdc\xa4\xa3\x07\xe3\x72\x3f\x7b\xb7\x3d\x15\x1d\xa3\x12\xd2\x4d\x7e\xf8\x59\xbc\xd4\x9a\x6d\x34\x3b\x25\x7f\xd1\x02\xb5\x3d\x86\xca\x3b\xc7\x96\x91\x1a\x33\x06\xe9\xb0\x53\xb7\x43\x7e\xca\xd6\x56\xc1\x92\x9c\x26\x32\x7d\xdf\x7d\xf8\xda\x9f\x43\xc7\x31\xd5\x64\xa3\x2f\x42\xff\xbb\x93\x0a\xc5\x4c\xce\x22\x1d\x8a\x79\x73\xb8\xe1\x79\x41\x5e\x54\xdc\x84\xf4\x49\xc3\x13\x11\xd4\xcb\xfa\x6d\xe8\xa7\xd6\x44\x31\xed\xb1\x31\x5c\x82\x7b\xc4\x6b\xd0\x7a\x51\xc6\xa7\xb0\x26\x9b\xd6\xa5\x4f\x1c\x70\xa6\x19\xac\x3d\x09\x73\xc4\xc5\xe2\x57\xa2\x7b\x49\xcc\x08\x30\xa5\x97\x97\x20\xa8\x57\x3f\xb7\x1f\x79\x33\xe9\x28\x7b\xe7\x3c\xf0\xa8\x73\xdb\x6f\x02\x20\x0c\x43\xae\xd7\xe0\x73\xb2\x83\xbe\x2a\x66\x22\xdf\xfb\xf5\x5c\x78\x6a\xe8\x54\xf1\x1c\x6b\xb2\xc9\xc2\x80\x20\x36\x1e\x9c\x09\xdf\x64\xba\x72\xe1\x64\x43\xcc\xef\x21\x38\x86\x20\xd6\x53\xac\x9a\x76\x4f\x1d\xaf\x6d\x72\xbf\x78\x96\x25\x2a\xa4\xed\x4a\x1e\xf9\x22\x15\x98\x62\x82\x39\xae\xd0\x52\xbe\xd8\x79\x2f\xda\x94\xfa\xc0\x06\x61\xa3\x5c\xc8\x9e\x56\x69\x9f\xed\x49\x3b\xfc\x9f\x1e\xc8\x60\x9f\x5d\xe2\x0f\xc3\xc1\x0c\x02\x97\x2d\x05\x64\x16\x7f\x5b\xd5\x5f\x70\x58\xf5\xe2\xa8\xfc\x5e\x1d\x07\x7f\x3e\x88\x23\xae\xe3\x56\xd6\x61\xc4\x80\x68\x04\x00\x73\xc9\x85\x28\xa7\xf3\xe8\x92\x4c\x85\xbd\x02\x69\x1e\xbe\x7a\xb7\xab\x3b\x8d\x5d\x5f\xbb\xe8\xb6\xbd\x88\x05\x2f\x4a\x7a\x73\x2b\x9e\x0e\x15\x28\xba\xe1\x02\xae\xeb\xed\x2d\x29\x9a\x92\x14\x7a\x48\xdd\x01\xe9\x8c\x2d\xd1\xd7\xb4\x62\xcf\xaa\xfd\x9e\xf6\xbe\x17\x94\x93\xad\x28\xef\x74\xf4\x68\xef\x6a\x78\x29\x34\x38\xf5\xae\x7b\xde\xf1\x76\x1e\x46\x1f\x22\x48\x66\x49\x50\xe7\xa2\xf7\x32\xf3\xac\xc5\x06\x92\xd8\x00\x11\xbb\xc0\x55\xb6\xd0\x27\xed\x9e\xca\x71\x88\x8a\xf7\xcd\x5d\xee\x19\xf9\x14\x89\x78\xd8\x71\x18\xf5\x0d\x38\xf5\x1b\xfa\xf8\x9b\xab\x20\xf6\x6a\x96\x65\x74\x25\xe4\x55\xea\x1b\x9f\x2e\xe1\x4d\xdc\x31\xb4\x72\x17\x38\xb2\x73\xa8\x66\xb3\xcd\xa4\x92\x53\x98\xcd\x5a\x39\x0d\x36\x9b\xb5\xad\xcd\xaa\xa1\x43\x53\x11\x5c\x54\x8c\x2c\x1d\xc7\xd0\xc2\xbf\x2e\xa8\x6a\x79\x69\x08\xaa\x92\xca\x29\x2c\xa4\x02\xb5\x16\x3d\x21\x41\x70\x82\xe8\xf9\xf0\xe3\xf3\x3a\x18\x37\xc1\x05\x34\x7c\x7b\x8f\x06\xba\xec\x2b\x05\xee\x36\xd0\x41\x4d\x44\x8a\x6c\xf4\x01\x8a\xab\xd8\x65\x59\xc5\xe9\xb9\x48\x98\xa1\x0e\xc6\x68\x75\xd6\xa3\x41\x9a\x2c\x4c\x32\x25\x07\x6f\x78\xc6\xce\x54\x14\x05\x0c\x64\xa7\xd3\x3a\x0a\x27\xde\xba\xd6\x19\xd7\xfe\x0a\x10\xeb\x32\x52\xd7\x36\x75\x71\x5e\xd7\xf4\x46\x5b\xfb\xc3\x31\xc5\x41\xb1\xfe\xd1\x37\x59\x4f\x14\xf5\xf5\xac\x9f\xd1\x0d\x93\x79\x27\xae\x80\x3e\xf1\x92\x97\xe9\x7a\x2e\x00\x8d\x6e\xd5\x7d\x45\xc6\x52\x2d\x52\x87\x45\xfa\x48\xcb\x52\x9d\xf4\x1e\x5b\x1b\xc3\x39\xea\x83\x1b\x2a\xee\xbe\xd0\x4a\x95\x4a\x52\x39\xbd\x91\xc7\xc2\x43\xe9\x9c\x0f\xfd\x35\x08\x48\x96\xee\x67\x2f\x7f\x33\xae\xe6\x5e\x2e\xc8\x8e\x2d\x31\x00\x50\xff\x83\xea\x7c\xbd\x91\x05\x68\xdf\xe8\x2e\x08\x12\x16\x1b\x5b\xf8\xa5\xbf\x4e\xdd\x12\x90\xab\x07\x57\x41\xf6\xc2\xc8\x7a\xbb\x43\xb3\x18\x04\x3e\x35\x64\x53\x70\xe0\x20\xb8\xa6\x64\x71\x49\xe3\xf7\x6b\x90\x7e\xb7\x04\x07\xe7\x41\x43\xac\xbd\x0f\xd8\x8e\xf2\x3d\xb1\x69\x17\xc7\x07\x67\x6f\x90\x13\x86\xe9\xdd\x36\xb2\x05\x40\x0e\xfd\xe5\xe9\x42\xd9\xc8\xd5\xe8\x7f\x2e\x42\x65\x70\x48\x2f\x00\xf4\xf4\x8f\xcd\x40\x64\x89\x1e\x11\xf2\x20\xb1\xea\x25\x50\xf9\x8c\x44\xcd\x90\x3d\x01\x2c\x8b\x83\xf6\xc1\x5d\x45\x59\x2a\xf7\xbf\x28\x9a\xa9\x73\xd1\xde\x10\x91\x52\x9d\x46\xbc\x42\xf2\xd2\xa8\x06\xd1\xca\x48\xe0\x84\x48\x52\xc9\xde\x55\x6d\x63\xa7\x7a\xc8\x41\xdd\xce\xa2\x2b\x62\xb2\xb9\xee\xd8\x06\xe7\x19\x59\x57\x9b\x49\xbe\x5e\x6c\xb2\x2c\xcb\xd7\x97\x9b\xe9\x54\xc7\x41\xe3\xeb\x6a\x03\x23\xee\x75\x3f\x32\x54\x85\x60\x45\x7f\x2c\x2e\x9f\x55\x17\x5a\x6c\xec\x5d\x8d\xa8\xef\x5b\xac\x03\x9f\xc4\xd8\xc6\x2a\x98\x37\x43\x38\xcf\x16\xb8\xce\x2a\x33\xc9\xfc\x71\x7d\x95\x9b\x49\x36\x59\xb5\xce\x37\x13\xba\x6e\x36\xd9\x9a\xac\x9b\x0d\x66\xeb\x66\xb3\x31\x44\x3c\x55\xe7\x45\x5e\x37\xc3\x27\xe4\x47\xf2\x11\x0e\x45\x2f\x23\x67\x8f\xd0\xea\x5e\x6a\xdd\x2b\x38\x86\x92\x53\x04\xf2\xc7\x3e\xb2\xed\xdf\x50\x9d\xe3\x67\xf5\x4e\x5a\xe6\xec\xfb\x5d\x7a\xc6\x4b\xe1\x75\x64\xcd\x0a\x22\xc8\xce\x5e\xbc\x2e\x37\xd7\xd8\xc1\xf6\x70\xfe\x08\x46\xc2\x04\x60\xbe\x87\xc4\x7a\xe8\xe5\x81\x81\x03\x6a\x2b\x68\xd1\xbd\x2b\xfb\x58\xd4\xd2\x11\x83\x88\x33\x46\x64\xfb\x0b\xa3\x56\x61\xa2\x70\x0e\xd8\x4f\x83\x90\xf8\x4b\xef\xfc\x00\x61\x59\xbb\xda\x97\x45\x07\x43\x61\x47\x1d\x1a\xf2\x11\xe1\x1e\xd1\x20\x32\x9f\x78\x51\x21\xb8\x02\x6d\x4a\x40\x0f\xb9\x14\x2d\x43\xa4\xd0\x20\x0e\xb7\x5a\xc0\x07\xc0\x60\x98\x48\xfa\x2c\x30\x01\x62\xa8\xf7\x21\x42\x4c\x68\x59\x68\x2c\xee\xd3\x10\x06\x56\x51\x0d\x41\x82\x8e\xf4\x7d\x0c\xc9\x34\xfb\x4d\x75\xb2\x9a\x45\xdb\x9a\x70\xab\x91\xeb\x84\x30\xa9\x41\xd7\x54\x05\x91\xe4\x3b\xa2\x10\x03\xad\xd1\x41\x76\x1b\xc3\x1c\xa9\xeb\xb8\x13\x06\x3f\xe6\x82\x1a\x6f\xb1\x17\x05\x46\x8f\x70\x0b\x60\xff\x6b\x5e\xff\x4c\x24\xde\x09\x8f\xa3\xc2\xe6\x7d\x8c\xd4\x87\x03\xed\xf0\x69\x48\x41\xd4\xb9\xa9\x43\xf4\x3f\x10\x89\x42\x12\x69\x6b\xb2\xe6\x9b\x8d\x3c\x2f\xea\xd7\xe0\x55\xa1\x3e\x6b\xcf\xc0\x21\xc0\xd4\x80\xe2\x82\x46\x7f\x05\x50\x89\x35\xf6\xc0\xda\x07\x16\xf4\x7a\xdd\x4d\x73\x76\xc4\xd1\xe6\x72\x6f\xbe\x9b\x4c\x60\x91\x65\x59\x4a\xce\xa8\xcb\xc9\xdb\x9d\xf7\x6a\x78\xc1\x36\x4b\x77\xda\xd7\x64\x83\xec\xf5\x1e\xe9\x0b\x50\xf5\x35\xa4\x77\xec\x63\x58\x5a\x18\x5b\x26\xc3\xcd\x22\xbd\xd2\xb2\xbb\xd8\x22\x7b\x43\xce\xbb\x43\x0d\xfa\x5d\x7e\xa5\xc9\x69\xbe\xe7\xb3\xc6\x73\x3c\x8e\x76\x1e\x7c\x36\x6c\x84\x9f\xa9\xbc\x6f\xe3\xeb\xe7\x39\xb7\x57\x91\xce\xad\x1e\x5c\x69\x01\x2b\x3e\x20\x34\xb2\x4d\xf4\xa4\x49\x0a\xa3\xf3\x86\xcd\x25\x59\xf2\xae\xe1\x4c\x5e\x2f\xba\x54\x9a\xe8\x2e\x55\x58\x79\x9c\x00\x1e\x66\xcd\xe1\x35\x3f\xdc\xe6\x2c\x10\x1c\x41\x26\x0f\xc3\xc5\xc5\x8b\x0c\xe8\xad\xae\xf3\xb2\xec\x0b\xa2\x52\x40\x0b\x71\x0a\x3e\xd0\x2f\xce\x66\x02\x49\x04\xb2\x16\x1b\xc8\xea\x06\xd7\x22\xfb\xa5\x26\x36\xf5\xcd\xf9\xa5\x49\x53\xb8\x68\x53\x82\xd0\x48\x43\xbe\xa2\x92\x87\x9b\xc0\x8d\x9f\x56\x6a\x3c\x90\x7a\x8b\x69\xf0\x46\xc4\xa1\x2b\x76\xc4\x23\x01\xad\xfc\x4c\xff\x5e\x7f\x08\x45\x84\x36\x8b\xbe\x38\x75\x5e\xd0\x7a\x5b\x31\x46\xb6\x26\x11\x4e\x87\x3a\xd0\xa7\xae\x43\x20\x28\x02\xd6\x5b\xba\x21\x42\x36\x14\xa0\x07\x8b\x7d\x72\x47\xf1\xed\xee\xdb\x52\x80\xa3\xf7\x7a\x83\x59\xb6\x9f\xcd\x40\x8d\xa6\x13\x5f\x0b\x67\xbf\xa0\xc5\x51\xac\x1f\xb1\x0d\xb4\x04\xb7\x74\x27\x52\x34\xd1\xee\xe0\xd4\x29\xe3\xaa\xec\x54\x39\x68\x8a\xe6\x46\x14\x99\x22\xc8\xea\xc9\xc8\x27\x91\xa2\xab\xf3\x7c\x5e\x54\x8c\x5c\xb9\x57\xc6\xf7\x33\x9f\x83\xc4\x6f\x52\x9f\x51\x56\x8b\x9c\x6d\x75\x96\x78\x33\xdc\xc7\x0c\xf2\xbc\xc1\x98\x6a\x84\xdd\x2c\x90\x8d\x18\x2e\xd4\x8e\x48\x04\x02\x98\x7e\x34\x3e\x65\x04\x15\x5a\x33\x28\xfb\x39\x8a\xf7\x3e\x03\xe1\xc7\xfb\x81\xfd\x94\xdc\xb2\x5a\xb9\x67\xc0\x62\xe9\xac\xf6\x11\xad\xd3\x7d\x1b\x64\x6e\x22\xa8\x13\x8d\xcf\x53\xb9\xf4\xb9\x74\x4c\x33\xe6\x11\xad\x21\x9b\xce\x25\x4b\xc7\xc6\x18\x79\x2e\x77\x2f\x72\x0a\x71\xdd\x65\x81\x9b\x6c\x71\xd5\x3c\x36\xb9\xcf\xae\x1a\xc3\x06\x96\x59\x2d\x79\xbf\x6d\x46\xd6\xa5\x4a\x67\x4d\x8b\xe4\x3c\xcb\x4a\xe3\x6e\x5a\xad\xcb\xcd\xf1\x48\xd7\xe5\x06\x1b\x79\xfb\x44\x47\x91\xb7\x73\xde\xad\x76\xa0\x38\x02\x17\x5f\x1d\x53\xde\x25\x95\xb4\x86\xaf\xe1\xfd\x9e\x96\x78\x8b\x26\xef\x38\xc9\xdf\xab\x78\xf3\x2e\x53\x40\x58\xc3\x85\xf7\x94\x35\x70\x5a\xe8\x1c\xb0\x25\x42\x0f\x58\x89\x17\x23\x8e\x47\x7e\xcf\x46\x03\x16\xf6\x6b\x92\x0a\xfd\x01\xbd\x9a\x58\xe5\x62\x5d\x6e\xb2\x6d\xab\x5c\x81\x0d\xf1\xb0\x0d\x0e\xcc\x38\xf3\x37\x66\xb8\xe3\xb8\xd5\x87\x30\xb4\x4e\x8a\x38\xe2\xe7\x93\x22\x7c\xae\x5b\xb6\x34\xbe\x45\xe0\x31\x89\xfd\xc4\x27\x76\xa3\x62\xfb\x89\xe1\xaf\x86\x65\xfa\xa7\xa8\x86\x03\xcd\xe1\x69\x33\x60\xde\x0c\x34\x0b\xde\xa7\x41\x7e\xdf\x3d\x77\xa7\x72\xc6\x4e\x7c\x8a\xe0\x6b\xac\x02\x89\xad\x82\x40\xf7\x77\x40\x2a\x98\x09\xa9\xab\xe9\x39\xd5\xb8\x2b\x26\xce\x05\x46\x5e\x4b\xa8\x1d\x57\x1c\x41\x6f\x6b\x25\xee\xd3\x44\x04\x76\xe9\xa9\x7b\x08\xc6\x26\xb8\x2f\xb3\x11\x99\x0e\x5c\x57\xe5\x74\x9a\xe6\x3d\xdc\xeb\x12\x33\x69\x66\x7c\xd8\x36\x62\x9c\x41\x37\x02\xcc\x06\x64\x7a\x34\x23\xeb\x2a\xab\xd7\x6c\xb3\x51\x20\x50\x9a\x28\x36\xe7\x59\x96\xaf\xab\xcd\xf1\x68\x6c\x60\xbe\xfb\x8f\x26\x2f\x53\xbe\xae\x36\x98\xa2\xe3\x51\x58\xf1\xa4\x7f\x22\x4d\x86\x8d\x3e\x3d\x91\x3c\x4e\x66\x21\xce\x9f\x25\x4b\xfd\x8a\x16\xb3\xe4\x49\xd2\x75\x81\xf7\x66\x3f\xe4\x08\x3f\x2c\xea\xef\xeb\x1e\x62\x62\xc1\x88\x16\xa7\xed\x65\xba\xef\xb7\x44\x9c\xa7\x7d\x98\x97\xfb\xa4\x61\x76\xe4\x41\x69\x1c\x4f\x90\x8f\x67\x9a\xf2\x89\x63\x12\x37\x04\xb9\xdf\xa7\xf5\x5c\x28\xfb\x2c\x5f\xc2\x3e\xb6\x28\x8a\x6f\x19\x58\x0e\xe5\x98\xe2\x85\x1c\x88\x1d\xd2\x58\xf0\x81\x8e\x12\x26\x56\xad\x23\x4c\xf0\x07\x37\xe9\xb8\xfd\x47\x51\x03\xc1\xbd\xf0\x00\xd1\x18\xe1\x5e\xbc\x84\xee\x31\x39\x6d\x41\x63\x2a\xa4\x74\x58\xbf\x31\xb6\xd8\xfd\xe2\x83\x4b\x1f\x69\x99\xa8\xa0\x07\x87\x6e\xd0\x03\x0a\xef\x30\x45\x1d\xb3\x93\x3b\xf0\xfc\x1e\x09\x5e\x0e\xda\xca\x30\x12\xbc\x92\x39\x8f\xb9\xf7\x69\x15\xe7\xc3\xa6\xe2\x29\x42\x2d\x99\x5b\xe2\x25\x8c\x21\xab\x13\x7b\x05\x2f\x0b\x4c\xe6\x7e\x34\x05\x78\xf4\xbe\x6f\x3b\xba\x55\x10\x06\xbe\xa8\x78\x56\x77\x95\xae\xf2\x65\xfe\xd5\xb2\x5f\xd5\x66\xbd\x78\x34\x2d\x52\x90\xe4\xa8\x93\xe0\xc8\x4f\xc3\x07\xe9\xbf\x6c\x1a\x3f\x56\xf1\x3d\x34\xba\xec\x4a\x01\x3d\xcb\x2c\x95\xea\x57\x7f\x08\x4f\x05\xf9\x24\x78\xbe\x15\xb2\xe9\xa2\x30\x4c\x4e\xed\x79\x7f\x2b\xc3\x24\x02\x36\xc1\xef\x21\x2c\xd9\x60\x0e\x73\x97\xc4\x25\xb1\x73\x4d\x32\x67\x5e\x7f\x9b\xd7\x6f\xcc\x7b\xdd\x91\x62\x07\x20\x52\x71\x52\x90\xa1\x5a\xcf\xdd\x97\x6e\x3d\xc5\xa5\xa8\x81\x39\x92\x58\xc2\xf3\xb2\x3f\xf5\xe3\x91\xc8\x83\xa2\x9b\xb2\x20\x35\xb0\x74\x90\x81\xc2\xc6\x35\x61\x95\x1d\xbb\xea\xfc\xcd\x81\x6c\xe9\x8e\x92\x22\x65\x08\x45\x96\x19\xcc\x3e\x15\xb7\xd9\x9b\xfd\x4b\x3b\x03\x30\x3e\x7b\x60\x75\x40\x03\xe5\x65\x67\x4b\x19\xf2\xf2\xc5\x19\x8d\xfd\x0d\x11\xaf\x24\x2f\x24\x09\x90\x54\x25\x33\x54\xf6\x22\x68\x52\xcb\xe5\x94\x6f\xf4\x92\xf6\xf7\x71\x3a\x4d\x75\x3b\xfd\x6f\xba\x31\x95\x1c\x04\x7b\x5b\x8b\x10\xce\x57\x2a\x3a\x7d\x2e\xd9\xf9\x68\x7e\x10\x9b\xe5\x53\xd7\xf2\xf2\x72\xbc\xbd\x3b\xe8\x24\x37\x08\x2d\xa1\x19\x90\x91\x00\x11\x5f\x39\xe5\x87\xae\x68\x40\xd4\xb1\x31\xaa\x6a\xdb\xe2\x91\x42\x03\x7b\xeb\xaf\x26\x4c\x0f\x19\x9b\xc5\xb1\x75\xa4\xa7\xac\x23\xfd\x92\x75\x64\x2b\x95\x66\x80\xb9\x85\x4a\xef\x29\xdb\x96\x4d\x41\x5e\x16\x2a\x75\x9d\xa7\xc3\x32\xd3\x7c\x51\x71\x42\x6f\x98\x1c\x29\xc1\x0c\x73\x2c\x1b\x41\xbf\x77\x23\xa8\xde\x08\x77\x54\x34\x0b\xf7\xc7\x1d\x94\x33\x53\x7b\xe8\x94\x20\xff\x28\xfd\xd7\xec\x11\x2c\x8c\x4d\x8b\x98\x32\x7c\x4f\x8b\x5a\x61\x7c\xc7\x77\x8e\x9d\xe2\xd5\x00\x44\x1b\x06\x59\xad\xc7\x32\xb6\x0e\x4f\x59\x21\x37\xc9\xb5\xd5\x3b\x1e\xba\x91\xa7\xb5\x57\xda\x9c\x10\x3c\x5e\x6c\xec\xea\xe8\x62\x56\xb5\x3e\xfe\xc2\x80\x87\x89\x59\x14\x75\x96\x26\x62\xcd\x36\xfa\xba\x7a\x9a\xd2\xae\x8d\x9f\x15\x53\xdd\xd3\x62\xa9\x54\x92\x77\x07\xb2\xf4\x9c\x0e\x54\x2e\x90\xc1\x95\x1a\xbd\xeb\x46\x60\x83\x9d\x02\x1b\xec\xcb\x60\xc3\x58\xeb\x5f\xdf\x10\x46\x78\x2e\x88\xdd\x3e\x6f\x7f\x61\x2f\x06\x0b\x2c\x43\x16\xd8\xc9\xbf\xdc\xfa\x0a\x85\xab\x98\x5d\x5c\x0e\x79\x44\xad\x6b\x01\xb3\x1e\x79\x2a\x3f\x09\x8b\xa4\x21\x61\x2a\xdb\x48\x3e\x8c\x6a\x26\x0f\xa1\x9a\x1c\x0b\x5c\x23\x4c\xd7\xd5\x26\xab\x3d\x53\x87\xa1\x2a\xcb\xbe\xb5\x36\xdd\xa5\x9e\xa4\x4a\x6d\x0c\x65\x85\x39\xe7\x6a\xcb\x3c\xf3\x6d\xbd\xfa\x8e\x26\x41\x41\xce\x54\x3a\x67\xf9\x9e\x18\x29\x9e\x0a\x28\xe6\x08\x2e\x30\xd6\xf1\x2c\x75\x62\xbb\x5b\x61\xaa\x77\xd6\x27\x44\xd0\x24\xb7\xea\x2c\xb6\xce\x37\x6d\xdb\xe2\xdb\xbc\x36\x53\x7c\x5a\x7e\xcc\xef\xf4\xa9\x1c\xca\x4f\x2f\x99\x41\x47\xb0\x58\xf2\x6b\x3a\x4d\x72\xa8\x0d\xa1\x08\xe7\x44\xb7\x08\xcd\xc7\x51\xc8\x50\x07\x03\xe3\xf1\x2c\x76\x06\x86\x70\x3c\xf2\xe9\x54\x27\x01\xaf\xd5\x1e\xd8\x99\x87\xe3\x78\xf9\xd0\x18\x06\x27\x99\x26\xb4\xd0\x53\xb4\x6d\x1f\x8f\x09\x2d\x3a\xef\x50\xaf\xc3\x10\xe7\x7d\x59\xc7\x17\x39\x2b\x2e\x24\x24\x45\x87\x60\xbf\xf6\xc7\x32\x7c\x8b\x7d\xd6\x40\xce\x53\x08\x34\xe4\xf7\xeb\xb6\x1a\xa9\x39\x0f\x51\xb7\xff\x88\xed\xf6\x40\xbd\xc5\x5e\xb5\xa1\xbe\x21\x77\x34\x94\x4b\x82\xb5\x16\x6b\x85\x90\x94\x44\x67\xbe\xcd\xf7\x44\x65\x78\x42\x9b\xe3\x51\xac\xc9\x46\x22\xbe\x38\xaf\x11\xc1\x0d\xee\xaa\x77\x2e\x35\x24\xdf\xde\x06\xe7\xd5\x93\x5e\xe2\x4a\x32\xa8\x63\x8c\x02\x97\xfc\xa8\xef\xa1\x51\xc1\x59\x9f\x4e\x69\x8f\x05\xb2\x39\xf0\x21\xea\x43\x85\x70\x88\xa6\x86\x2b\x7a\xe9\xb3\x74\x55\x60\x05\x59\x7f\xe6\xf1\x6b\xcc\xcd\x3c\x88\x7d\x08\x11\x37\x43\x99\x69\x32\x13\xb3\x04\x1c\xe7\x12\x83\x05\x9d\xf2\xca\x5d\x06\xd4\x5e\x06\x79\xb6\xb8\xca\x1f\x53\x6b\xc0\x66\x2e\x83\x1a\x37\x19\x5d\xe7\x1b\x23\x6a\xbc\xb6\xec\xa4\xdb\x24\x3f\xfc\x1a\x66\xb8\x41\x78\x9b\x95\x2a\x26\xeb\x2e\x2b\xe7\xfa\xe6\x28\xe4\x38\xb8\x7d\xca\xdc\xcf\xe3\x71\xbd\xc1\xee\x51\x89\x02\xb7\x08\xef\x50\x5a\x7b\xc5\x94\x09\xa3\xce\x6c\x5b\xe3\x1d\x9a\x54\xeb\x7c\x93\x49\x12\x61\x6b\x49\x84\x2d\xdc\x0a\xca\xd9\xa4\xc8\xee\xe5\x20\x96\x55\xab\x23\x93\xd4\x63\xeb\x85\x0b\x60\x14\x86\xb6\xec\x6b\x6e\x05\x6c\x83\xd5\x27\x3d\xbc\xa2\x14\xc1\x6d\x0c\x2b\xda\x48\x4e\xea\x8b\x56\xb4\x46\xb8\x41\x69\x35\xb4\xa2\x15\x6e\x94\x14\xbd\xd4\xcb\x26\x17\xb6\xb6\x0b\x5b\xeb\x85\x3d\x69\x29\x4b\x58\xca\xd1\x89\x0d\x51\x68\xd0\xcd\x44\xc4\xf9\x93\x54\xb2\x12\x8a\x52\x33\x44\x80\x8d\x09\x6a\xdd\xac\xce\xba\xf7\x3a\x43\x73\x3b\x94\x94\xca\xbd\x6b\xca\x12\xb5\x98\xd6\x1d\x44\x63\xf2\xa6\xb7\xc6\x98\x4d\xcd\x55\x8b\x77\x4c\xee\x7d\xdb\xb8\x8a\xbb\xeb\x21\x48\x78\xd1\xaa\x94\xee\xa6\xb4\xff\x39\xa4\xde\xfa\x1e\xa1\xd3\x29\x48\xcd\xc5\x3c\x2f\xcb\xea\xe3\x8f\x72\x94\x9e\xa0\xd0\x18\xd8\xe9\x8c\xd2\xc6\xa9\xec\x5d\x55\x95\x24\x67\x80\xad\x21\x55\xb5\xc9\x5f\x9d\xf1\xd5\xa3\x7f\x4b\x05\x6f\xc8\x51\x1c\x2f\xd1\x7f\x7f\x44\xe7\x82\xd4\x22\x25\x68\x99\xb0\x46\xf6\xac\x85\x28\x97\xe0\x4f\x82\x87\xc6\x19\x18\xef\x8d\x8c\x55\xe5\xcf\xfe\x56\x0d\x27\x25\xa8\x6d\x55\xde\xc0\xf1\x95\xb0\x97\x87\x99\x96\x24\xfb\xdc\x1c\x9c\x4d\x85\x75\xf0\x4f\x66\xf6\x66\x31\xb1\x19\x8c\x11\xc6\xc5\x5f\x60\xda\x29\x9f\x65\x7f\xc2\x12\xcd\x3d\xcf\x05\x49\xc9\xbc\xd6\x01\x2a\x38\x02\x35\x81\x79\xc1\x11\x52\x1e\x77\xaa\x98\x51\x3e\x78\xab\x23\x56\xde\xe7\xa5\x4e\x18\xbe\xd2\x1b\x1d\x5d\xb1\xc0\xd0\xc7\xea\xef\x9f\x43\xc4\xbb\x73\x5a\xff\x98\xff\x98\x12\x04\xd9\xc3\x5f\xbe\x79\x6d\x13\x88\x43\x7b\xad\x27\x52\xad\xfc\x96\x40\x97\x46\xce\xb3\xec\xf2\xd1\x42\xfd\xb8\xb8\x7c\xa4\xb2\x76\xe6\xa7\x2e\xb0\x01\x17\x70\x3e\x54\x26\x9b\x36\xe7\x79\x95\x8a\xec\x47\x98\x73\x4a\x10\x5a\x89\xd1\xe9\x7d\x61\x6b\x2d\x82\xfc\xb0\x0f\x8d\x35\x0e\x6c\xaa\x61\xbd\x5a\x92\xf8\xfa\x3d\x95\x5b\x34\x21\x73\x0d\xa6\x6f\x79\xce\xea\x5d\xc5\xf7\x19\xc3\x64\x2e\x77\xc9\xbd\xa1\x98\xcc\x63\x08\x02\x62\x64\xa8\x09\xba\xc2\x39\x26\x9a\xb4\x71\xef\x6a\x4c\xe6\xee\x89\x63\x8d\xac\xbe\x57\xc6\x61\xc0\x2d\xbf\x0e\x38\x0c\xc9\x79\x00\x45\x1b\x33\xd8\x70\xf7\x0c\xc1\x89\xa7\xcc\x42\x10\xfc\x20\x01\x22\x15\x19\x05\x9b\x2e\x16\x8f\x8a\xec\x95\x6f\xff\x08\xd9\x35\x1c\xd4\x53\x05\xd7\x9f\xdb\x3f\x26\x26\xff\xb8\xb1\x91\xf0\x45\xdf\x1d\x54\x6d\xd1\xfe\xcf\xa4\x3e\x54\xac\xd6\x28\xbb\x83\xc1\xe3\x12\x72\x67\xba\xa4\x20\xc6\xf4\x2a\x4e\x58\x81\xbf\xd7\x15\xbb\xc8\x0f\xd4\x5f\x04\x9c\xa8\xb2\x94\xed\x4a\xb2\x15\x15\x4f\xf0\x58\xf5\xee\x57\xc9\xaf\x86\x0b\x69\xc8\x90\x3f\x60\x39\x69\x66\xb3\xbc\xdb\xb5\x74\xd7\xf9\xf3\x6a\xdb\xec\x09\x13\xdf\x93\xf2\x40\xf8\xb2\x13\xef\x23\xa9\x60\x08\x12\x33\xa8\x3d\x91\x90\xf6\x7a\x67\xc2\xc4\x23\x3f\x9e\xc3\xb5\xbf\x41\xe0\xdf\xa7\xda\x34\x85\xad\xe4\x2f\x1a\x71\xde\xb7\xe9\xf3\x63\x27\x78\x11\xe8\x91\xb5\xf9\xf5\x5e\xfa\x8e\xd0\xea\xc3\x9a\x6f\x26\x62\xcd\x37\x0f\x8c\x8a\xa1\xd6\x8c\xbe\x8d\x0c\xca\x92\x55\x6e\x60\x9e\xe4\x45\xcb\x5b\x5c\xb1\x88\xe0\xc5\x7d\x54\x12\x98\xf1\xe1\xe4\x68\xa2\x3d\xe7\x6a\xc9\x6d\x68\x22\xaf\x75\x8d\x64\xd4\x48\x5e\x88\x4f\x8e\x75\x6d\x69\x22\xfb\x68\x29\x29\x88\xe8\x16\x6a\xda\x5f\xf0\x6a\xff\x53\x7e\x57\x56\x39\x08\xd0\xb4\xe8\x0c\x77\xba\xf0\x47\x1a\xb9\x3f\xe8\x2e\x15\xa7\xb5\x9b\x0c\x14\x48\xf0\xb9\x27\xc9\xb9\x96\x9c\x9b\x0b\x0f\x1f\xa3\x9b\x6e\xa3\x71\xe4\x7b\xf6\x89\x5d\xa1\x90\x4f\x3c\x72\x4c\xd0\x5c\x29\xb2\xe5\x6a\xeb\xc1\x2c\x87\x6d\xf7\x07\xce\x8c\x4a\x04\x04\x1b\x06\x02\xbf\x3e\x9e\x8a\x6b\xcd\xce\xc6\x5b\x85\x60\x1c\xe6\xdb\xbf\x34\x84\xdb\xe8\x45\xdd\x56\x43\x0b\x5a\x10\xb6\x6b\x36\x00\xf4\x7a\x39\xbf\x81\x76\x6b\x47\x53\xb7\x58\x73\x46\x4e\x4f\x3c\x38\x6f\xcc\xfc\xe8\x2e\x73\xdf\x92\x82\x00\x9b\xee\xa4\xc5\x69\x17\x34\xa8\x92\xbf\x76\x94\x75\x1d\x89\x9b\xb3\x4e\xf4\x1a\x57\x59\x92\x18\x98\xab\x87\xaf\x0d\x97\xad\x67\x30\xc0\x86\x9c\x82\xbd\x3a\xf1\x68\x1e\x3a\x53\x16\x53\xe1\xff\x32\x04\x16\x1d\x96\x8f\xc8\x7a\x1b\x1c\x58\x35\x9c\xba\xc7\x1d\x33\x14\x32\x26\x8d\x21\xd8\x0a\x65\x79\x4c\xce\x4a\x06\xe4\xac\xbe\xf1\x67\xa7\xc7\x75\xb5\xb1\xa9\x57\x7a\x5f\x26\x00\x13\x40\x7b\x76\xe7\x97\xaa\xac\xe2\xbe\x08\x46\xd2\x5f\x03\x84\xc0\x18\xba\x52\x8c\x2b\x6a\xf1\x40\x81\x08\x7a\x4d\x17\x58\xcc\x6b\xca\x6e\x9a\x32\xe7\xf4\x3f\x09\x4a\xd3\x05\x66\x0e\xdd\xbc\xb2\xd2\x68\x15\xd6\xfe\x60\x1b\x93\x4d\xdb\xaf\x43\x2d\x1f\xca\x86\x2b\x61\x65\x4a\x7c\xc4\xd0\x99\x5c\x78\x3e\xb5\x82\x4e\x17\xfd\x45\x8e\xee\x39\xd9\x96\x39\x27\xc5\xab\xfc\x70\x00\x12\x1a\x8b\xd0\x75\x3d\xea\x93\xf6\x70\x1b\x41\x2d\xc3\x71\xdf\xd3\x42\xa9\xb7\xf4\x6e\xbc\x2c\x74\xde\x3a\xb9\x2b\x81\x41\x82\x51\x49\x22\xec\x06\x13\x54\xf5\x6c\xe1\xa0\x58\xd0\x5f\x50\xb2\xe3\x39\x87\x05\x0a\x63\x53\x01\x66\xb4\x94\xbc\x2c\xc1\x83\x15\x50\xf2\x12\xde\x1a\xfb\x07\xdb\xf3\x30\x77\xa2\xc5\xa0\x45\x5e\xdf\x12\xae\xe4\xa0\x0f\x58\x4f\x9c\xd2\xc0\x28\x83\x7d\x2a\xaa\x17\xde\xa5\x3f\x00\x72\x7e\xf8\x2f\x33\x7d\xd1\x7a\xfd\xc7\x56\x20\x14\x9b\x31\x25\xe8\xb1\x89\x17\xb7\x39\xb3\xf2\x74\xc9\x98\x07\x70\x19\x20\xf4\xe3\xf1\xbe\x9d\x18\x0f\x68\xf9\x3a\xe5\x5a\xb0\xa6\xed\x24\x84\xd9\x29\x79\x7f\x53\xe4\x69\xb1\x2a\xcc\x8c\x60\x49\x01\x5c\x1e\x55\x09\x5a\x75\x60\xae\xa3\x98\xe6\x03\xaa\xce\xae\x8e\xcf\xbf\x76\xf2\x4d\x56\xb5\x5f\x6c\x4c\x12\xae\x87\xd5\x6e\x43\x84\x8c\x9e\x99\x47\x56\x4d\xa7\x95\x36\xbf\x9a\x4e\xcf\xcd\x4f\x25\x8b\x57\xb9\x7f\x6c\xc0\xe9\xea\x78\xa4\x72\x71\x43\x03\xc1\xce\xb3\x5d\xe2\xe8\xfa\xb0\x60\x7d\x58\x77\x7d\x02\xfc\xca\x7c\xe1\x78\xb8\x5c\x13\x65\x9b\x62\x72\x03\x55\xa8\xce\xee\xdd\x31\x1f\x82\xbc\xca\x87\x3c\x5a\x2c\xab\x39\x2d\xda\x49\x17\xe9\xe7\x1b\x2d\xc4\xac\x21\x4a\xca\x17\x99\x29\xa8\xcc\x68\x6f\x3a\x55\x95\x19\x05\x72\x5a\x48\xab\xed\x0f\x2f\xa8\xcf\x58\xe4\x6a\x7c\x91\x2b\xb5\xc8\xc3\xfa\xe8\x6a\x6c\xf5\x8d\x46\xa3\xb3\xf6\x86\xf0\xc8\x33\x3a\x1e\x4e\xd4\x42\x15\x89\x41\x95\xbc\x3b\x6b\x8f\x76\x71\x64\x8b\x72\x83\xc8\x23\x6e\x10\x54\xb9\x41\x8c\xee\x72\xe9\xed\xf2\xa4\x5e\x37\x1b\x0d\x1a\x5b\xb9\xe5\xa5\xdc\xf2\xb6\x7f\xcf\xfb\x5b\xae\x45\xb8\x55\x46\x3d\xd6\xbd\x3a\x91\x75\x0f\xd9\xf6\x78\xc1\x28\x7f\x1e\x79\xe7\x59\xf2\x3d\x68\xeb\x17\x61\xef\x25\xa9\xf4\x07\x30\xf8\x55\x26\x7a\x0c\xfe\x81\xd3\x7d\xce\xef\xfe\x0a\x09\xc3\x8a\x04\xef\x09\xbf\x21\x85\xee\x82\x92\x7a\xb9\xd6\x7a\xbd\x0d\xee\x5c\x88\x63\x44\xe2\xa0\xd8\xca\x49\xeb\x25\xa9\x68\x1b\xf3\x6c\xd8\xbb\x24\x63\x40\xff\xad\xc9\xc6\x11\x91\x1d\x8c\x8f\xf3\x8c\x19\x47\x69\x08\x05\x57\xf9\x6a\xcc\x54\xbe\xc2\xb9\xbd\x08\x80\x00\x14\x1e\x81\x34\xc0\x84\xa9\xcd\xd0\x1e\x39\x54\x3b\xdf\xec\x28\xd3\xc2\xc1\x64\xe9\x93\x0c\xb6\xb1\x17\xb6\x80\x69\x76\xe0\xf6\x85\xe6\xfe\xc3\x31\x6d\x03\xed\x45\xd8\xba\xb1\x06\xe5\xf8\x9e\x96\xe5\xc8\xe0\xc0\xf6\xf6\xb4\x86\xbe\x75\x7e\x43\x83\xcd\x79\x66\xb8\xa7\x35\xfa\xbd\x71\x09\x1a\x6c\x52\x97\x38\xb5\xc1\x07\x5a\x3b\xb5\x29\xd8\x8a\xf1\x4d\x78\xb8\x11\x65\x84\x3b\xba\xa1\xcf\xbc\x22\xa7\x34\xe9\x87\x0f\x1a\x68\xf2\xb9\x57\xe4\x94\x26\xfd\x08\x9f\x03\x4d\xfe\xe2\x15\x19\x6f\xb2\xf5\x4e\x52\x1f\xf8\x87\xf2\x0f\xda\x2a\x6f\x28\xbb\x29\xc9\x03\x5d\x9c\x2c\xe5\xf8\x1a\x5d\x74\x0e\xc9\x83\xcd\xc3\x4d\xf8\x59\xad\xf7\xce\xcc\x1f\x31\x85\xce\x29\xfa\x03\xa6\xf1\x07\x36\x1f\x1c\xb8\xaf\xdc\x76\xec\x00\x3e\xbc\x01\xf9\x87\xd3\x97\x3f\x76\x1e\xbf\x6e\x0f\xb1\xe3\xf9\x75\x7b\xf0\x0b\x7f\x6d\xf0\x0c\x8b\x47\xaf\xdd\xb8\xfc\xd3\x54\x71\x25\x31\x24\x3a\x8f\x43\xc2\xef\x6c\xf8\xf2\x14\x49\x6d\x90\x2c\x46\x13\xa4\xa0\x64\x32\x32\xf9\xe5\x7a\xd3\x1a\xc9\xbe\x16\x3f\xa8\x8c\xc7\xca\xd4\x99\xee\xd2\x5a\x32\x54\x2a\xf0\x74\x8d\x4c\x5b\x4d\x16\xae\x30\x78\x92\xe2\x32\x6b\x94\x55\xc8\x36\x6b\x9c\x55\x88\xb2\x14\xc9\x4a\xbc\x85\x96\xac\x36\x40\x67\xc2\xb5\x42\xc7\x9d\x47\xb8\x73\x4b\xb8\x17\xd9\x02\xdf\x66\x36\x22\x59\xf1\xf8\xf6\xaa\x30\xc4\xfb\x01\xef\x33\xbe\x2e\x36\xf8\x43\x7f\x38\x7b\x84\xef\xb2\x0f\x6a\x38\xef\xb2\x0f\x81\x91\xca\x3b\x94\x1e\x3c\xbb\x95\xc0\xee\xe4\x80\xdf\xa1\xc9\x6e\x5d\x6c\xb2\xbb\x56\x8f\x7c\x67\x84\x92\xf9\xb0\xd8\x4a\x11\x99\xc0\x3c\xfa\x56\x66\x27\x89\x9e\x10\x1e\x12\xf3\xea\x1c\x4a\xe8\x64\x21\x96\x0e\x1a\xfe\x80\xe0\xca\x8f\x96\xfe\x47\x48\xab\xf0\x29\x62\x2a\x5f\x4e\x65\x07\x19\x27\xdd\xd7\x8e\x6a\x87\x53\x9b\x38\xde\x20\x41\x9b\x89\x15\x32\xb2\xf9\xb6\x22\x10\x95\x13\x81\xf2\xe1\x24\x15\x81\xf6\xce\xc7\xd4\x13\x20\x8f\xaa\x05\xb8\x4a\x37\x34\xaa\x12\xc0\x1e\x67\xc0\x37\xd3\x69\x4a\x41\x0f\xa0\x23\x59\x63\xfa\x90\xf0\x3f\x66\x90\xd3\x51\x23\x8d\x68\x07\x04\xc8\xab\x54\xb4\xad\x39\x2d\xb2\xce\xd2\x08\x08\x9b\x35\xa2\x87\x22\x1d\xe1\xdb\x74\x7a\x9e\x2e\x30\x3d\xd9\x5e\x00\x29\xf3\x45\x71\x82\xba\x4e\xcb\xa9\x25\xc7\xe3\x4c\xec\xbb\xe3\x35\x60\xeb\x20\xc5\xf3\x05\x19\x59\x41\x1f\x99\xc6\xa4\xed\x0a\x58\xbf\x5c\xcf\x70\xaa\x5a\x41\x65\xaa\xfa\x1d\xda\x85\x75\xbe\x31\xbe\x53\xd0\x56\x03\xaf\x26\x3d\x93\x74\xd5\x14\xaa\x33\x1a\x33\x58\x5b\x59\x9d\xc3\xc0\xf2\xa5\x54\xc5\xeb\x6d\x94\xeb\x28\xc1\xdc\xe8\x4d\xf3\xfa\x76\x29\x70\x37\x27\xf6\x92\xb6\x68\x19\x57\x64\x98\x96\x9c\xce\xdc\x37\x66\xa5\xda\x26\xf5\x3c\x00\xf0\x06\x21\x79\xdf\x78\xd7\x40\x63\xaf\x81\xe8\x84\x6c\xc4\x8d\x32\x5b\xc0\x9d\xa3\x2f\x89\xf2\xf1\xf6\xaa\x34\x97\xc4\x2e\x6b\xd6\xe5\x66\x52\xaf\x4b\x4f\xe9\xf2\xc0\x02\xec\x3e\x63\x01\x94\x2f\x8d\x19\x89\xba\xae\x9a\xf8\x75\x95\x35\xeb\x42\x8e\xa4\x18\x52\xff\xe8\xee\x0f\xa8\xad\x9c\xf4\x48\x05\x2a\x37\xc0\xf3\x03\x65\xef\x2d\xd0\x00\x98\x08\x93\x3f\xc2\xd3\x46\xc1\x9b\xf5\x5e\x43\xcd\x07\xef\xcd\x55\x5a\x65\xd5\xf1\x78\xdf\x22\x9d\x6c\xe2\x9e\xab\x70\x31\xcb\x0f\x6d\x5b\x19\x8d\x65\x65\x74\x94\x9f\xa5\x3e\xe2\x03\xca\xa2\x40\x98\xf1\xc0\x29\xd3\xe8\x78\x32\x28\x5f\x7c\xf8\xd0\x91\xf3\x2c\x4b\x1d\x96\x3e\xe5\xb8\x21\x7f\xf5\x14\xc6\x16\x06\x63\x63\x13\x1c\xcc\xe6\x21\x18\xbd\x87\xe3\x93\xc2\xbe\x65\xae\xba\xc4\x8c\x55\x3a\xe8\x0a\xac\x39\xf4\x19\x65\x67\x14\xf1\x2c\xea\x1d\x54\x61\x12\x5c\x2d\x4c\x0e\x74\xdc\x12\xab\x42\x2e\x2e\x74\xf7\xd6\xaa\x6c\x3c\xe8\x07\x0d\xb4\xfa\xcd\x84\xbe\x28\x12\x5a\x74\x46\x45\xa5\xf8\x5d\x33\x6f\xe1\xd8\x06\x29\x47\x22\x37\x97\xbe\x4a\xc8\x06\x81\xe8\x2f\x91\x31\xaa\x9f\x4e\xb9\x8a\x07\x94\x8a\x4c\xfe\x42\xca\x37\x2a\x15\x99\xf6\x33\x72\xa6\x9a\xda\x80\x53\xa8\x6c\x98\x48\x19\x84\xf8\x5a\x8c\x88\x4e\x6a\xbc\xfb\x73\x71\x3c\x9e\x4b\xa8\x38\x1e\x21\x89\x90\xfc\xe9\xbb\x9f\x5c\xef\x9b\x5a\x7c\x79\xf3\x72\xa8\x02\x66\x77\xae\x03\x00\x06\xad\xc7\xc5\xff\x83\xde\xa2\xe0\x8c\x54\x10\x41\xf8\x9e\xb2\xe0\xd4\x81\xa2\x92\x07\x7e\x49\x41\xb6\x8f\x70\x1a\x90\x6c\x2f\xa2\x02\x82\xe4\x74\xc9\x3e\x67\x77\x6f\x2b\x89\xbc\x25\x56\x67\xc7\xa3\x7e\x63\xf0\x3c\x1b\x50\x02\xc6\xee\x54\x89\xc9\xa6\x53\x31\xb7\x9e\x5d\x4e\xa7\x41\x0b\x48\xa4\xc1\xc6\xe9\xc0\x8c\xda\x70\x1d\xc3\xf4\x9b\x00\x26\x6b\xde\xd7\x0c\x82\x22\x45\x7e\x6d\x21\x83\xf3\x08\x8e\x81\x26\x62\xf7\xee\xca\x6b\xd7\x77\xfa\x95\x8c\xdd\x32\x76\xfd\x79\xe5\x7d\x75\x0e\x35\xc8\xd7\x7e\x7d\xc9\x44\x05\x57\x50\x5f\x7d\x19\xc4\x4d\xb1\xe9\xe8\xad\xe6\x12\x33\x84\x4e\x54\x84\x0e\xeb\x3e\x7d\x15\x29\xfe\x87\xa9\x39\x63\x28\xeb\x33\x94\x9f\x7f\x8c\xc6\x33\xd4\x77\x62\x49\xad\x82\x5a\xe3\x0f\x55\x9a\x0d\xa9\x2c\x71\x40\x3e\x51\xb4\x12\xeb\x4a\xb9\x42\x2f\xe1\x17\xfd\x3d\x8e\xd5\xff\x28\x3d\xa5\xf3\x4a\xee\x2a\x2c\xff\x8b\x94\x91\x58\xad\x5d\xa0\xa8\xed\x2c\x91\x2f\x71\xb2\x0c\x04\x10\x84\xdd\x15\xa2\xbb\x94\x7b\xb4\x05\x57\x79\xbb\xec\xc2\xc9\x27\x83\xff\x4d\x88\x71\x78\x89\x99\x63\x76\x54\xa4\xe0\xe8\xe2\x77\x9c\xce\xa6\x53\xc7\x12\xea\x0b\x50\xde\x99\x73\x15\x5f\x1e\x6e\x70\xe0\xad\xd4\x33\xd0\xd8\x10\x95\xf7\x16\xa5\xa6\x90\x8d\x47\x3c\x26\x6a\x00\x69\x8f\x78\xc8\x76\x4e\x48\x44\xf7\x90\xed\x9c\x50\x11\x54\xdd\x0a\xad\x85\xbc\xe0\x39\xd8\x48\xad\x85\x25\x22\xb8\x0e\x73\xa5\xbb\x1d\xa2\xff\xba\x3d\x77\x88\xbf\xdf\xd9\x39\xc4\x64\x3e\xc1\xa8\x86\x9c\x6a\x3c\x63\x0b\x4a\xb2\x7e\xa0\x80\x8f\x58\xc7\xa8\x8a\xd7\x1f\x19\x51\x21\xfe\xd1\xbc\xac\xaa\xf7\xcd\x21\x4d\x6c\xdd\x65\x32\xf3\xb8\xfa\xd0\x84\xfc\x14\x3d\x34\x27\xb5\xf8\xda\xe6\xe3\x7f\x84\x7a\x1a\x57\xbf\x57\x41\x3d\x58\x21\xe6\x7c\xf1\xff\xb1\xf7\xf6\xfd\x6d\xdc\xc6\xbe\xf8\xff\x7c\x15\xe4\xde\x7e\x98\xc5\x15\xcc\x48\xc9\x69\x4e\x2f\x9d\xad\x7e\x7e\x6c\xdc\xc6\x71\x4e\xe4\x34\x4d\x59\x5e\xdd\x15\x17\x94\x50\xaf\xb0\x0c\x16\x94\xac\x8a\x7c\xef\xbf\x0f\x06\xcf\x58\x2c\x49\x3b\x76\x9a\x9e\xd3\x7f\x6c\x71\x17\x4f\x0b\x0c\x06\x33\x83\x99\xef\x64\xf8\xde\xe5\xa9\x9a\x8e\x8e\x7b\x80\x95\x9a\x64\xe4\xc6\xb6\xef\x3a\xbc\x4c\xf8\xbb\x2b\x32\xe9\xe5\x43\x11\x8c\x73\x8a\xf8\xd1\x51\x26\xeb\x64\xbe\xd9\x18\x58\xc0\xce\x80\x56\x6c\x34\xd1\xd9\x3c\x34\x1a\x97\x45\xe0\xb9\x8c\xdb\xa2\xeb\xab\x1c\x22\xad\x5f\x97\x6f\x88\x36\xef\xf6\xa0\xd9\x29\x65\x69\x5d\x50\xcf\xf6\x1d\xa8\xea\x80\x02\x2b\x47\xc9\x70\x89\xdb\x1e\x8b\xf3\xc3\xbc\x51\xee\xa9\xe0\xd1\x5c\x23\xbc\x50\xca\x4b\x93\xb6\xf8\x72\xbc\x00\xc6\xd2\xf8\x13\xd3\xe9\x35\x69\xad\xd7\x2e\x2b\xb8\x2d\x18\xe4\x97\xcb\x8f\x71\xf3\x0e\x56\x32\x40\xc5\x50\x27\x99\x6f\x55\xdf\x63\x2b\x1b\x44\xee\xe5\x6b\x04\x52\x51\x3c\xfb\x6b\xb5\x24\xd7\xae\x98\x15\x8f\x4b\xcf\x52\xde\x1a\xc4\x8d\x03\xae\x12\x1a\x5c\x1a\x33\x54\xdf\x55\xc2\xba\xf7\x2a\x61\x3d\x1e\xe7\x2a\x6d\x65\xb1\x76\x0e\x3f\x75\x00\x27\xc8\x11\x5e\x14\xc7\x10\xa6\xab\x0d\x28\x8b\x2f\x97\x0f\x17\xc6\x80\x52\x15\xf5\x6c\x31\xc7\x57\x45\x85\x57\xc5\xe8\x64\x90\x9d\x4b\x69\xba\x9a\x2c\xae\x4a\xfe\x48\xe4\xc7\x72\x22\x56\xc5\xe8\x58\x96\x98\xb4\xeb\x8b\x56\xf0\xfc\x44\x5b\x3a\xaf\x77\xcf\xed\x95\xc6\x6d\x0f\x66\xf6\x1a\x19\xfb\xc9\x68\xa5\x85\x0c\xda\x7e\xab\x74\x0e\x2d\x29\x5d\x63\x81\xf0\x1d\xdc\x42\x0c\x34\xfe\xdb\xa8\x28\xee\x90\xa4\x86\x9b\xcd\x26\xf4\xb3\xbe\xd3\xed\x5d\xe0\x4b\x7c\x1e\xfb\x46\x6b\x6f\x6b\x7c\x8d\xef\x70\x85\xf0\x6d\x71\xae\x28\xfb\x59\x71\x1e\x5c\x5e\x3c\x43\xf9\x45\xd1\xa6\x49\xf9\x02\x3f\x83\xef\x28\xd1\x6d\x0a\xa7\xd2\x1c\x19\x37\xe3\x31\xd8\x73\x9d\x89\x15\x32\x29\x48\x59\x6a\x70\x33\x1e\x8f\xd8\x78\x3c\x6a\xa1\xf7\xcd\x46\x9c\xaa\xbf\x0a\x32\x6d\xa3\x08\x5e\x95\xc2\xd9\xd8\xf7\x6e\x90\x2e\x78\x6b\x1f\xdd\xa2\xfc\xb2\x6f\xa8\x97\xf8\x56\xdf\xff\xc8\x31\x9d\xe1\x57\xf1\x7c\xa4\xf6\xfd\x1d\xae\xb0\xca\xb1\x87\xf0\xdb\xe2\x95\x9a\xa0\x47\xc5\x2b\x37\x41\x7a\x0c\x6f\xf1\xa3\xf1\x38\x3f\xeb\xeb\xfc\x0c\x3f\x42\x5b\x8b\x4f\xdc\x6e\x71\xb0\xac\x3d\xd1\x0e\xbd\xde\xd0\x02\x01\x34\x81\x03\x83\xd9\x1b\x8d\x91\xe4\xa8\x2e\xb9\x2a\xa0\xab\x07\x00\x42\x7d\x64\xcb\x52\x64\x4b\x91\x4b\xc9\x73\xed\x1e\xe2\x2e\x8f\xf0\xbd\x17\x07\x31\x93\x06\xb3\xcd\x0e\x32\xc2\xb4\xf0\x19\x49\x03\x98\x6b\xb8\x2d\xa8\x89\x0c\xa7\x1e\x47\xe6\x1e\x47\x86\xc8\x6f\xb0\xda\xf4\xc4\x7e\x0b\xbc\x06\x43\xdb\xd6\x0b\x4a\xf9\x78\x7e\xec\x09\x03\x45\x74\x0f\xbb\xc3\x4b\xf9\x30\x25\x9d\xcc\x76\xba\x17\xfa\x48\x2f\x3a\x66\x22\x54\xe1\xdf\xc5\xd9\x7e\xd8\x07\x6c\x71\x88\x3a\xd3\xd5\xeb\x70\x00\x3d\x15\xab\x8a\x0c\xab\x4b\xa7\x10\x60\xa9\xe3\x15\x1c\xe8\xa9\x8d\xd4\x53\xa9\xd5\x53\xa9\x01\x5e\x8a\x47\xec\x13\xe7\x3b\x5d\xfc\x74\xbf\x80\x4f\x7c\x43\x3e\x64\x4f\x8d\x4d\xf9\x80\x86\x9e\x50\x96\x71\xbb\xfb\xfb\x3b\x3a\x85\x64\xbf\x9e\x4a\x41\x67\xed\xdc\xa9\x65\x23\x6b\x97\x3c\xe8\xc4\x97\x95\x6d\xe6\x45\x5a\x4d\x85\xba\x08\x5b\x6f\xb7\x07\xd3\xe7\xd6\x38\x36\x97\x9e\xc4\xdf\x4a\xc6\xbd\x47\xe2\xb7\xaa\xc3\x21\xee\xa7\xbd\x52\xf9\x47\x71\x17\xe5\x85\x70\x91\xcc\xde\x67\xf1\x5e\x45\x26\xd2\x2d\xfc\x0f\xe2\xe4\xa7\x35\x05\x6d\x24\xd6\x68\x3a\x0a\x46\xf4\x31\x36\x3a\xde\xdf\x7d\x3a\xf6\x7c\xb3\x51\xc1\xe8\x2a\xda\xbb\x63\x96\x26\x00\x8d\x70\x77\x7d\xd1\xd4\xc1\x43\x8b\x31\x9c\xa3\x69\x96\x1d\x91\xad\xed\x83\xba\xe3\xdb\x5e\xff\x76\x5b\x15\x85\x4b\x3d\xa3\x71\x01\x2c\xba\x82\xa5\x3d\xb2\xd9\x98\xc8\xff\xcd\x26\x17\x85\xec\xc8\x3a\xe4\x0b\x24\xae\x78\x73\x3b\x64\xe4\x76\x08\x86\x87\x3c\x7b\xf6\x76\x05\x09\x71\x86\xb4\x1a\x8a\x66\x78\x41\x86\xe5\x50\x75\x3d\x6c\xf8\x50\xb5\x8e\x87\x9c\x2c\x08\xbd\x21\xd5\x30\x3b\xb2\xc1\xed\x9e\xc6\x99\x84\x12\xe8\x8f\x1d\x11\x85\xb0\xe9\x16\x2d\xe8\xeb\xe4\xaa\x6c\x5f\xdd\x32\x43\x37\x93\x45\x59\xd7\xb9\x90\x1b\x10\xd6\x3f\x43\xa7\xd6\x8d\x78\x2a\xb4\x26\x95\xad\x99\xa2\x88\xca\x4d\xc0\x19\x4c\xfc\xa9\xfa\x2f\xc1\x42\xb3\xf3\xf3\xec\x88\x1c\xbd\x2c\xc5\xd5\x64\x59\x37\x0d\xcf\xe1\x4f\x5e\xb2\xaa\xb9\xce\xd1\xff\x7e\x5a\x0a\x32\x61\xcd\x6d\x8e\xd0\x91\x2c\xbb\x75\xa4\xd0\x7a\xad\x74\x96\xc7\x21\x43\xfc\x5e\xc1\x25\xac\xe1\xae\xf3\x07\x52\xbe\x79\x59\xae\x34\xda\x49\x27\x28\x32\xf5\x05\xb7\x94\x55\xcd\x2d\x10\x41\xe2\xed\xf3\xb2\x15\x8f\x9b\x46\x68\x7f\x81\xfb\x4b\x22\xbe\x83\xb1\xff\x59\x6e\xac\x36\x84\xdd\xe5\x77\x66\x35\x4c\xb5\x89\xde\x12\x79\xb6\xe0\x77\x2b\xd1\x64\x48\x7f\xfa\x73\x5a\xd7\x00\x96\x4b\xd0\x76\x51\x8a\xc5\x55\x0e\xf9\x79\x42\x72\xf9\x04\x2c\x46\x43\xdf\xd5\x54\xca\x33\xb2\xf1\x8b\xa6\x11\x43\xdd\x78\x3b\xbc\x6b\xd6\x92\x9c\xca\xaa\x1a\x8a\x2b\x32\x34\x9d\x0d\x57\xe5\xe2\x4d\x79\x49\xe4\xbb\x6c\xa9\x6b\x3d\x25\x2b\xc2\x2a\xc2\x16\x94\xb4\x99\x6c\xee\xae\x59\x73\x53\x72\xf2\xf7\xb6\x61\x9f\x48\x81\x0e\x84\x21\x8f\xf9\xaa\x69\x9a\xa8\x96\x8d\xf7\x44\xf0\xb0\xa7\xc6\x75\xfb\x04\x5e\x8f\xc7\x99\x99\x2c\xb7\x8e\x51\x99\x49\x34\xbd\x51\x3f\xa6\xd8\xa0\xb3\xaf\x1c\x83\x9a\x0e\x9f\x94\x8c\x35\x62\xb8\xa4\xac\x1a\x96\xc3\x9b\xb2\xa6\xd5\xf0\xb6\xbc\x93\x93\x60\xe0\xf7\x86\x75\xb3\x28\xeb\xa1\x4b\x28\xdb\x66\x68\x9b\x3b\x55\x6a\x81\x97\xb8\xc2\x57\x78\x55\xcc\xe6\xf8\xba\x38\x7e\x78\xfd\xe5\x67\xbf\xfd\xe2\xe1\xd1\xd1\x35\x5a\xcd\xae\xe7\x45\x7e\x7d\xf4\xd9\x6f\xbf\x40\x8e\xc5\x9c\x7c\x81\x9c\x96\xe4\x48\xf8\xc6\x50\x9e\x92\x5e\x8a\x9c\x00\x95\x7e\x4f\x99\xf8\x9d\x92\x0c\x4f\xbe\x40\xb8\x8e\x3f\xdb\xdf\xee\x6c\xf6\xc5\xbc\x38\xf9\xed\x58\xfe\xbf\xf9\xe2\x3f\x30\x9b\xfd\x6e\x5e\x7c\xf1\xf9\x58\xfe\xbf\x39\xf9\xec\x77\x78\x96\xf3\x62\x85\x66\xb9\x28\x18\x9a\x1d\xcf\xe7\x98\xcf\xc4\xec\x44\xff\xff\x99\xfe\xff\xf3\xf9\x1c\x67\x0f\x32\xf8\xfb\x3f\xf4\xb3\xdf\x7a\xcf\xbe\xd0\xcf\xfe\xd3\x7b\xf6\x3b\xfd\xec\xff\x78\xcf\x4e\x6c\x07\xa6\x87\x13\xd3\xc5\xc9\xe7\xe6\x0f\xd3\xc1\xc9\x6f\xe7\xf3\xf9\xe4\xef\x0d\x65\x79\x96\x21\xc7\xb6\xee\x74\x44\x6e\x9b\x43\xfe\x62\xeb\x8b\x03\xbf\x34\xe8\x83\x4e\x77\xcc\xd5\x95\x95\xd1\x2e\x72\x8e\x4e\xfd\xd3\x68\x5a\xd3\xea\x41\x76\xd4\xe4\x02\x1d\x65\x0f\xb2\x23\x3e\xbd\xd1\x59\x87\x2f\x02\x76\x60\xbb\xbe\x74\xac\xff\xc2\x26\x5c\xf3\xd3\xa6\x48\xb6\x0d\xf2\xb4\xac\x7e\x8b\x2f\x00\x0e\x49\x1e\xbe\x08\x7b\x8c\xf7\x3c\x47\xf7\xd0\xcd\x6d\x4f\xc6\x73\x83\xc1\xbd\x28\x17\x57\xa4\xb8\xaf\x69\xd5\x4e\x93\x48\xfc\x80\xc1\x99\x78\xa3\x1d\xbf\x2c\x60\x64\x98\xa6\x5b\xb9\x75\x87\xcf\x96\x0d\xbf\x24\x22\x7c\xa6\x52\xad\x06\x8f\x20\xf6\x23\x7c\x64\xfb\x58\x6e\x36\x77\x61\x0f\x57\x9b\xcd\x79\xd8\xfe\xc2\x3d\x51\xad\x57\xee\x81\x6a\xfb\x7c\x6b\x96\xb0\x93\xf0\x59\x4c\xce\xcf\x4d\xee\x79\xf2\x12\x4a\x07\x0c\xd4\x6b\x85\x6c\x36\xe7\x5b\x2c\xe0\xba\xc2\xa4\x34\xec\x26\x88\x36\xde\x5d\xd1\xe2\x8d\x4e\x10\x4e\x88\xf3\x6b\xb8\x7f\x27\x08\x92\x3d\x19\xa2\xd3\x62\x10\xd3\xc4\x88\x69\xa1\x2d\x0f\xfc\xd4\x5b\x43\xf9\xae\x9d\xf1\xb9\xce\xd3\x1d\xdd\xaf\x18\x14\x4c\x7d\x50\x36\x16\xe2\xa0\x35\xa9\x15\xc1\xa6\x05\x57\xdd\x9b\x4d\x39\x1e\xb7\x26\x64\xea\x59\xee\x77\x02\xe4\x80\x4b\xe4\xd9\x3f\x38\x40\xd6\xd6\xb2\xff\x19\x9f\x1b\x97\x85\xa2\x28\xa8\xca\x42\xac\x30\x22\xa0\x08\xad\xa4\x8c\xeb\x95\x50\x9d\x2c\x22\x70\x52\xe5\x9d\x00\x11\x01\x51\x47\x0b\xf9\x5f\x57\x68\xf9\xb1\x59\x0f\xd5\x55\xd4\x50\x32\x56\x95\xeb\x02\x0e\x9a\x2f\x6b\x5a\xfd\x7e\xd8\x2c\x87\xe5\x30\x5e\xa3\x4c\x41\x58\x14\xe1\x17\x2c\xe6\x3a\x85\x88\xb0\x99\x88\xd4\xa7\xe4\xb4\x38\xcb\x5b\x5c\xe2\x85\xcd\xec\xe8\xa6\x9d\xca\xff\xe6\x05\xc5\xaa\x11\xef\xe7\x79\x59\xd7\xae\xcf\xd6\xe4\x73\x52\x22\x98\x5c\x1a\xe5\xba\x07\x73\x23\xff\x9e\x17\xd4\xd9\xee\xe8\x56\x12\xd8\x8a\x90\x37\x3b\x08\x2c\xd2\x5f\x13\xd4\x98\x13\xe5\x41\x2c\xe0\xe6\x80\xfb\x4e\xe7\x3f\xa3\xc5\x63\x68\x51\xb1\x04\xf7\xe6\x79\xc3\xbf\x21\xb7\x71\x6a\xb8\x28\x12\x38\xb5\xd0\x98\x17\x67\x40\x89\x0a\xd2\x09\x9b\x74\xf2\x80\x27\x9b\xa0\x41\x73\x2b\x18\x0c\xd5\xdf\x09\x6a\x0d\x38\x66\xb0\x24\x42\xfd\x99\x5c\x0e\x0e\x57\x3d\x62\xe2\xc7\xa2\xf4\xee\x65\xcf\x93\x72\xc7\x6c\xe6\x44\x01\x90\xd1\x0a\x97\x05\x53\x5e\x98\xb8\x4d\x7e\x88\x46\x95\xc3\xeb\xa2\xdf\xea\x2c\xeb\x4b\xe5\x54\x3b\xda\x81\x8b\x57\xe5\x6d\x8d\x72\x3c\x2e\x47\x70\x3b\xaa\x1f\x30\xb7\x7d\x09\xd6\xb6\x64\x49\x62\x6c\x1e\x9e\x26\x23\x48\x94\x52\x6f\xd5\x36\xe4\xda\x03\xb4\xc9\x0d\xd4\x5d\xd8\x85\xba\x80\x5d\x14\xb0\xa3\x61\x82\xf5\x7f\xa3\xa2\x58\x1b\x0f\x3c\xaa\xa7\xbe\xd3\xd1\x72\x3c\x5e\x6e\x93\x0d\xaa\x8d\x1d\xb5\x59\xd8\x36\x2b\xf8\x8a\x05\x7c\x40\xd9\x6d\xb7\x1a\x8f\x2b\xbd\x63\x46\x27\xdb\xd4\x0c\x63\x81\xcb\xce\xa6\x85\x8f\x5b\x7b\x89\xf4\x81\xad\xc7\x0b\xd9\xe6\xb2\xfe\x5a\xb6\x80\xec\x92\xf6\xdc\xce\x4a\x41\x00\x56\x06\x0b\x3b\x91\xc6\x8e\xaf\x00\xc5\x1d\xb5\x3b\xde\x0c\xb8\x1e\x90\xe2\x56\xee\xfc\x9c\x6b\xa3\xa7\x39\xe1\x10\xa6\xa3\xa2\xc8\x4b\xe8\x19\xd9\x05\x2e\x77\xf1\x67\xb3\x7a\xb5\x9a\xb1\x82\x5b\x6e\x63\xe1\x82\x15\xc3\xb1\x99\xa0\x81\xfe\x7b\x66\xa0\x97\x2e\x1b\x7f\xe2\x14\xae\x28\x24\x9a\x03\xf0\x3a\x3e\x15\xc1\xde\x54\xa7\x73\x67\x9f\x94\x2a\x57\xf0\x8c\xce\x8b\x06\xef\xf8\x16\x5b\x06\xb6\x73\xd1\xc0\x34\x37\x72\xd4\xe9\x86\xfb\x78\xcf\x9e\x3d\xcb\x93\xf3\x69\x16\x51\xcf\xa2\x72\xb7\xb6\x57\xf8\x92\xbb\x48\xce\x8d\x83\xc4\xa2\x1e\x2b\x02\x9a\x70\xf7\xcb\x8a\x1f\xa9\x3d\x62\x4c\x57\x31\x5f\x32\x80\x83\x02\x0d\xba\x2f\xdb\x15\x40\x08\x32\x1c\x09\x11\x6b\x9d\xdf\x5f\x0b\x10\x81\x58\x94\x7b\xc4\x27\x67\x6d\x47\xa2\x47\x48\xc7\xb9\x8d\xf2\xac\x3c\xf3\xb9\x9f\x4a\x32\x19\x49\xa5\x1c\xb6\x92\x94\x24\x93\x82\x64\xcf\xe3\xe8\xdb\xe0\x5e\x89\x00\xb7\x96\x4c\xd9\x76\x7f\x16\xd8\xfa\x30\x55\xfd\x70\xd9\x2a\xd1\x00\x1d\xd6\x53\x9b\x15\x14\xaf\x41\x2c\x66\x38\xa3\xed\x03\xea\x1d\xf9\x98\xba\x36\x5f\x85\xdb\x97\xc9\xc9\x96\x42\x50\x0b\x46\x75\x10\xff\xb9\x91\xc2\x54\x08\x38\x91\xfd\x51\x0c\x5d\x6f\xbb\x3a\x9e\xb5\x9d\x10\x2a\xae\x08\x1f\xd2\x6a\xd8\xf0\x61\xed\x59\x52\x94\xae\xa7\x6d\x05\xf6\x98\x07\xad\x21\xd1\xc3\xd4\x7f\xa6\x7c\x83\xdf\x1a\x6c\x75\xa9\x9b\x7d\xcb\x9b\xb7\x77\xe6\xd2\x58\x3d\xff\x96\x37\xd7\xb4\x25\xf0\x06\xee\x9d\xf1\xfd\x35\x11\xe5\x54\xbd\x5d\x34\xd7\xab\xb5\x20\xd5\x84\x93\xb2\x6a\xf3\x6c\xd1\x30\x41\x98\x80\x8b\xba\x0c\x6d\x11\x7e\x14\x60\xd9\x1d\xd2\xbe\x47\x22\xaf\x03\x47\xfc\x47\x36\x0b\xcc\x4a\xd5\xd1\x63\xf8\xee\xec\xcf\xdf\x9a\x66\xc0\x52\x5b\xdf\x28\x2c\x95\xad\xa7\x80\xbd\x09\x9a\x7a\xfb\x73\x9a\x7a\x19\x34\xf5\x5a\x0a\xbe\x57\x84\xf5\x20\x0e\x58\x46\xa2\x13\xdf\x29\x55\xed\x5b\xfc\x77\xd0\xb6\x54\xaf\xe7\x8f\x6d\xba\xd9\x7c\x96\xa5\x9d\x9d\x33\x9c\xb5\x77\x6c\x11\x3f\x5b\x52\x46\xdb\x2b\x52\x65\x73\x84\x9f\x14\x9f\xfe\xdf\xbf\x7d\x7a\x2a\x95\xc4\xbf\x7d\x9a\x7b\x10\x23\x21\x36\xcd\xdf\x3e\xcd\x27\xff\x1b\x7d\x8a\xbf\x73\xc5\x3f\x75\x53\xfe\x22\xc8\x50\x19\x61\x50\x7e\x2b\xb7\x32\x13\x00\x98\x4a\xd2\x77\x3b\x70\x9f\xa4\x8c\xe5\xb2\x8c\xfa\x6b\xb2\x6a\x28\x13\x84\x3b\xf8\xd3\xf0\xf9\xe4\x1a\xcc\x41\x4f\xd0\x80\x9f\xf2\x82\xcf\x3e\x9b\x4f\x01\x0c\xb5\x53\xae\x25\x25\x5f\x5c\xe5\xdf\xa9\x1b\xf9\xec\xa2\x6c\x89\x94\xf3\x9c\xdb\x30\x9f\x03\x5a\xb0\xfc\x43\xdf\x32\x4e\x2a\x22\x4a\x5a\x6f\x36\x64\x22\xa8\xa8\x09\x32\x21\xf2\xf6\x93\x9f\x7a\x97\x3f\x90\xd8\x49\x10\xce\xca\x1a\x6e\x49\x64\xb5\xf8\x01\x92\x2c\xcd\xe4\x5b\x52\xb2\xa5\x6b\xec\x9b\x38\x99\xc1\xf1\x43\xfe\xa5\x48\x40\x5d\xe9\xd4\x83\xce\xff\xa3\xf0\x7f\x6c\x36\xa3\x13\x88\x62\x51\x8a\x23\xbc\x1f\x1d\xe3\x0c\x6c\xdb\x19\x65\x43\x36\x1e\xe7\x6c\x72\xcb\xa9\xd0\xef\xfa\x5d\x4f\xc0\x93\x1d\x33\xb4\x75\xa3\xfc\x3a\x20\xe1\x24\xe1\x86\xf3\xe0\x7f\x72\x94\xd2\x70\xab\x53\x7c\xe7\x02\x6d\x03\x52\x20\x93\x15\x61\x15\x65\x97\x45\xa6\xff\xc8\x30\x99\x2c\xd7\xf5\x92\xd6\x35\xa9\x8a\xcc\xfe\x99\x41\x26\x2a\x9d\x37\x3d\x33\x7f\x65\x5b\x94\x7f\xbb\xd9\xe4\xdf\x16\xf7\x26\x27\xe2\xf3\x1e\xdb\x43\x90\x09\x1e\xcc\xf5\x05\xef\xe6\xaf\xf3\x93\xec\x5f\xa4\x12\x6c\x25\xd3\x90\xc5\x15\x5e\x54\xbb\x8a\x5d\x99\xc0\xe4\xc3\x5a\xd5\xc5\x77\xb7\x19\xac\x44\x68\xc7\x58\xc4\x99\x12\x83\xd7\xee\x9c\x0a\x1e\xdb\xfb\xa2\xa8\x70\xf8\x53\x5d\xad\x06\xcf\xca\xaa\x5c\x09\xc2\x4d\x52\x5b\xef\x4e\x85\x15\xa9\xa1\xf2\xe8\x01\x38\x15\xa9\x2d\x2d\x8f\xc6\x68\x30\x5a\x17\x61\x93\xab\x52\x67\x53\x36\x59\x5f\xbc\xac\xf7\x66\xa8\xc2\x26\x54\x8e\x06\x45\xa2\x07\xe1\xd7\x58\x38\xc9\x78\x26\x98\x9f\x70\xd7\x1f\x41\xde\x37\xd1\x4f\x73\x86\x26\x9d\xc7\x39\x52\x1c\x5e\x8b\xb5\x29\x8b\x10\x05\x07\xe8\x22\xe6\x9a\xa9\x54\xea\x28\xd0\x45\xa3\x74\xc3\xd4\xc7\x94\xea\x5e\x3e\x07\xae\xdd\xf7\xc6\xb8\xe6\xb5\x2d\x5b\xe8\x7e\x56\xe7\x02\x21\x95\x69\x50\x0a\x35\x3d\xf3\xe2\x8c\x4c\x0e\x0e\x30\x48\xc8\xda\x53\x0d\xf3\xe2\x18\xb3\xc2\xb1\xca\x2f\x99\x63\x97\x54\xb1\x4b\x22\x05\xf6\x9e\x06\x66\x74\xae\x81\xb0\x91\x87\x02\x48\xdd\x4d\x72\x4a\xeb\x86\x25\x1a\xe5\x2a\x36\x03\x34\xea\x26\x45\xc8\x2a\xd2\x01\xbe\x5a\xdb\x6e\xbc\xd5\xf2\x19\x43\xb8\x5e\xfe\x9b\x19\x99\x2b\x7b\x58\x7f\xfd\x30\xcf\x63\xba\xa5\xa0\x8c\x6c\xb3\x09\xb9\xf1\x4b\x22\x4a\x70\x9e\xbb\x0a\x53\x48\x83\xfd\xc3\xb8\xcf\x7f\xad\xae\x79\x15\xdb\x86\xfc\xc3\x00\xc9\x3f\x1e\xab\x88\x65\xeb\x0f\x5c\xb4\xa7\xcd\x8e\x1d\xdc\x2a\xa4\x6f\xec\xdf\x57\xab\x16\x14\xb6\xfd\x78\x3c\x52\x69\xe3\xa5\x06\x51\xe5\xe8\x94\x9e\x4a\xd5\x66\xca\x35\x2d\x9d\xb1\x72\xd5\x5e\x35\x42\x23\x86\x23\x4c\x4f\x93\xf3\x56\xb0\xe9\x9e\x59\x28\x18\x66\x72\xad\x35\x37\x4d\xaf\xb4\xbf\xce\xad\xcb\x7f\xe6\x38\xf0\x8c\xcc\xed\xf2\xa7\xd8\xb8\x59\xc2\x63\x65\x63\xf0\x96\xd0\xb5\xe1\xcc\xa2\x66\xb1\x93\x25\x93\x4b\xdd\x04\xd1\x0d\x09\x02\xc4\x6d\x91\x97\xef\xb2\xde\x38\xb1\xd2\xd6\xbe\xd5\x9a\xa5\x82\xcc\xf2\xea\xd7\x2e\xb7\xaf\x72\x07\x29\x10\x34\x10\xfe\x52\x6f\x36\x39\x3b\xe5\x46\x02\xa3\x15\x9a\x9a\x7c\xf5\x9d\xb5\x47\xca\x33\x9a\x9d\x26\x96\xa3\xe0\xd3\x9d\xcb\x51\x70\xcc\xe5\xba\x07\x9e\xe4\xd1\xea\x43\x03\x1a\xec\x2b\xf4\x38\x57\xf1\xbb\xb4\xe3\x10\xbe\xa7\x81\x44\x0c\x30\x75\x0e\x37\xfd\x46\xcf\x24\x1e\x6f\xb0\x6c\x7e\xd4\x8b\x5e\xb7\x38\xf1\xaf\x56\xb8\x7b\x1c\x85\x53\x94\xe3\x2b\x20\x36\xa9\xeb\x8e\xf4\xc1\xce\x9c\xd6\x91\x9f\x42\x9e\xe4\xbd\xf0\xf3\x55\xab\x11\x62\xd1\xad\xbe\x2b\x67\x6d\xf7\x84\xd0\x48\xc8\x7d\x49\xee\xa3\x99\x33\x41\x57\xa9\x78\x02\x0f\x70\x58\x2a\x09\x7e\xc8\x22\x57\x4a\x99\x9d\x18\xc0\x91\x7f\x87\xc9\x85\x01\x3c\xa9\xcb\xd6\x25\xcc\x55\x58\x72\x71\x1b\x1d\xcd\x1e\x8a\x0d\x69\x3b\x6c\x58\x7d\x37\x2c\x6f\x4a\x5a\x4b\x41\x7e\x78\x7b\x45\xd8\x70\xb1\x6e\x45\x73\x3d\x84\xd6\x87\x0b\xd9\xfc\x70\xb9\x54\x85\x33\xa4\xd2\xd9\x7e\x13\xa7\xb3\x65\xf0\x0c\xb3\x38\x9d\xed\x3f\x24\x21\xba\xa3\xd8\xfa\xf6\x98\xac\xdb\xdc\x0b\x98\x16\xbf\x3f\x39\x15\x0f\x4e\xa6\xc7\x08\xb3\xe2\xe4\x21\xfb\x52\x40\x26\x6c\x3e\x63\x0f\x4e\xe6\xae\xaa\x67\xf3\xed\x4e\x93\x01\x48\xd1\x72\x23\xf7\xd5\x8e\xef\x03\x93\xcf\x64\x49\x59\x59\xd7\x77\xde\x52\xa1\x7b\x01\xcc\x83\x4f\xce\xdb\xf5\x45\xbb\xe0\xf4\x82\x70\x33\xd4\xe2\x18\x3c\x46\xad\x7d\xd1\x36\xfb\xd8\xed\xb5\x51\x18\xcf\x2a\x59\x12\x58\xa5\x48\xd5\x49\x27\x60\xdf\x81\xe5\xc4\xd3\xef\xbf\x8a\x60\xaa\xbf\xcf\x3d\xe3\x80\x33\x0a\x70\x14\xeb\xfd\x5e\xd8\x05\x42\x38\xf1\xfc\xb1\x4a\xef\xee\xba\xfa\x73\x18\x7a\x60\xa7\xb0\x0b\xdd\xe2\x4a\x6d\xd5\x68\xf8\x9a\x4d\x2e\xac\xdd\xc0\xad\xf7\x4f\xbf\x66\x05\x54\xf6\xfc\x43\x9f\x0e\xa7\x59\xad\x93\xc9\x89\xd1\x7f\xaa\xd7\x8d\x52\x28\xfa\x75\x24\xa8\xd5\xca\x93\xcc\x58\x90\x45\x09\xbe\xbc\xa0\x9e\xef\x95\xc8\x2f\x89\xe8\xe7\xdc\xb6\x7f\x88\xde\x55\xe9\x44\x40\xd8\x48\x54\x31\x61\xb0\x7e\x1d\x75\x40\x88\xd4\xb9\x12\x94\x2b\x04\x08\xf5\x55\x15\x97\xb4\x5a\x88\x2b\x2d\xe6\x05\x09\xbf\xdd\x7a\x55\x63\xaa\x73\x19\x46\xcd\x04\xc6\x64\xbf\x25\x1f\xcb\xc3\x34\x66\xcc\xc5\x04\x3d\x34\x79\x69\x82\xf7\xda\x62\xcc\xf1\x89\xd2\x23\x1a\x26\x4a\xca\x52\x33\x02\xd5\x7b\xda\x86\xaa\x35\x29\x79\x57\xed\xf0\x6b\x0c\xa2\x35\xf6\x54\x8b\xe3\x87\xe2\x4b\xe3\x16\xf5\x50\x48\xea\x26\x33\x31\x9f\xac\x59\xdd\x94\x95\x3d\xf8\x52\x34\x11\x9d\xac\xaa\x89\xdd\xcc\x5f\x8f\x5f\x15\xb5\x1c\x5f\x3d\x3d\xa4\xa6\xab\xa2\x47\xb2\xa7\x92\x2e\xb5\xd9\xe4\xd1\x07\xa4\xb2\xa5\xab\x73\xe1\xa7\xc4\xb9\xf0\x93\x3b\x17\xf0\x6f\xf6\x78\x6f\x5c\x97\xab\x54\xeb\xbb\xfc\x1b\x38\x11\x9c\x92\x1b\xd2\x7b\x39\x7b\x5d\xae\xa4\xec\x9c\x76\x3a\xf1\x8b\x28\x07\x96\x5c\x01\xba\x60\xd1\x25\x0d\xb3\xee\xc4\x55\xc3\xa1\x7a\x49\x0c\xc6\x7c\xc8\xf2\xc8\x4c\xb2\xbb\xb9\x6a\x11\x24\x21\x98\x8d\x3f\xf8\x2e\x33\xf8\xc7\xb4\x03\xcd\x9f\xdc\xf7\xfc\x61\xbf\x03\xcd\x7f\xc9\x21\xfc\x21\xf0\xa1\x91\x75\xff\xab\x9f\xeb\xb9\xa9\x52\x74\xae\xec\x57\x8e\xf9\x11\x26\xa8\xb8\x7b\x59\xae\x42\xd3\x0f\x23\xb7\xf5\x9d\xba\x77\xaa\x7a\xac\x3e\x4f\xc0\x15\x67\xd7\xbb\x4b\x7b\xab\x13\xbd\xe9\x78\xad\x04\x30\x19\x5e\x94\x17\x19\x48\x01\x1f\x82\x53\x69\x75\xaa\xe2\xed\xa5\xda\x23\x7f\x91\x29\x9f\xaa\x1b\x2f\x78\xaf\x6e\x30\x73\x93\xed\x14\x4a\xc9\x3f\x64\x39\x83\x70\x2b\x9f\xd2\x53\x3e\x85\xdc\xa6\xea\x2c\x78\x59\xae\x00\x56\xc8\xfa\x97\x94\xb0\x0a\x54\xf9\xae\xac\xf5\x4f\xb8\xbf\x33\x90\x63\xeb\xf1\xb8\xf5\x8d\x38\x6b\xf7\xa3\xeb\xeb\xf1\xbc\xa4\x35\x81\x1b\x15\x75\x3f\x0a\x6e\x1e\x9f\xd0\xea\x93\xe1\xb2\xe1\xf0\x23\xbe\xd7\x1b\x7e\x92\x1d\x91\xa3\xec\x13\x59\xe7\x93\xec\x48\x7e\xeb\x51\xf6\x09\x1e\x5e\x90\x45\xb9\x86\xd4\xc8\xa5\x18\xd2\x4a\x4a\x6c\x65\xcd\x49\x59\xdd\x49\x0d\x50\xbe\xb9\xb8\x93\x15\xf8\x51\xf6\x89\x43\x6e\x58\x4b\xc5\x5b\x71\xec\x7c\x8d\xd5\x77\x18\x7f\xda\x56\x5d\xcf\x16\x45\xb1\x96\x3a\x55\xf0\x70\x04\x0f\x5b\x88\xb6\xf1\xbf\x35\xfc\xdc\xf1\x58\x4e\x88\xed\xa0\xc5\x7a\xde\xf2\xb6\x58\x23\x49\x5e\xe0\x30\x82\x4b\x79\xee\xd8\xb7\x08\x53\x10\x8c\x3b\x14\x28\xa7\xed\x37\xbb\x98\x81\x0a\x1d\x8d\x35\x70\x8b\x39\x62\xe2\xa0\x22\x62\xdb\x75\x87\x2a\x02\xac\xa9\x77\xa9\x49\x90\x86\x83\x01\x87\x97\x9c\x3b\x07\xc3\xd3\x1c\x6c\x7c\x67\x8b\x2b\x52\xad\x6b\x52\x69\x49\x30\x47\xe3\x31\x9b\x2c\x4a\xb6\x20\xb5\x7d\x84\x99\xc9\xad\x7f\xb1\xa6\x75\x95\x73\xe3\xfa\x22\x1b\xed\x15\x1a\x12\x94\xab\x78\x07\xcc\xaf\xf6\x9c\x79\x7c\x67\x34\xe8\x04\xef\x7c\xa5\xeb\xc1\x6d\x36\x56\xf5\x82\xfb\x6f\x1d\xa5\x0b\x88\x69\x92\xdf\x98\xef\x2f\xd2\xd1\x0c\xde\xd5\x1f\x98\x07\xd4\x8d\xa0\xb1\x83\xbc\xcb\xbc\xba\x24\xfe\x30\xaf\xd4\x3a\x75\x14\x45\xd1\x74\xf7\x97\x76\x4e\x6d\x89\x80\xcd\x44\xab\x21\x64\x91\x1c\x36\x0c\x7e\x2b\x85\x71\x08\x3b\x6a\x0a\x7b\x63\x58\xb6\xf2\x0d\x27\x72\x03\xb1\x66\xd8\xae\x17\x57\xa6\x18\x55\x95\xd4\x5d\x78\x66\x2c\x5a\x8d\xf2\x66\xf1\x62\x3e\xbc\x21\xe9\x3b\x9a\x11\xe4\xdf\xb3\xc3\x7e\x7c\xf7\x42\xd2\xbb\xb0\x3e\x5b\xca\x6f\x2a\x39\x19\x69\x37\x9e\x9c\x62\x6f\x4e\xc5\x16\xe1\x46\x2e\xc3\x8b\x4a\x2e\x89\x21\x10\xd9\x4d\xbf\xbf\x4f\xdc\x51\xca\x31\x2b\x8f\x3a\x61\xc6\x4b\x2f\x20\x31\x45\x5d\xe0\x09\xa0\xcc\x69\x96\xd6\x25\x49\xf7\xd0\x7a\xce\xcc\xad\x3d\xf8\x65\xcb\xb6\x95\x4c\xcd\xe4\xf0\x81\xdc\xfb\xa5\x62\xb5\x1b\xac\xdb\xd6\x79\x5c\xbc\xdf\x4d\xd1\x78\xc3\x81\x65\x28\x5c\x10\x8f\xe4\xf5\xb6\x37\x5b\x38\x9a\xaa\x01\x2f\x54\x33\xa7\x6c\xa7\xc7\x58\x4e\xd0\x94\xe8\x34\x60\x92\x26\xdf\x92\xdc\x1d\xb2\x98\x87\x3b\x2a\xb5\x69\x25\x5b\xa4\x98\x6b\x47\xc9\x2d\xa4\xfa\x88\x84\xeb\x40\xda\x09\xdb\xf0\xe0\xfd\x95\x5f\xaf\x19\x23\xb8\x5b\x99\xb6\x40\x9b\x1c\x18\xf0\x1d\x57\x68\x90\x24\x92\x1e\xbf\x17\x06\xcb\xe0\x75\xbf\x4b\xa1\xb1\x1c\xdd\x4a\x6f\x20\x8d\x8b\x50\xac\x00\x05\xa1\xdd\xd9\x94\x5f\x3c\x6e\x2b\x12\xdf\x88\x39\x08\x20\xb2\xa5\x3b\x12\x2d\x9b\x4d\x53\xc4\x6d\xe4\xb6\xc8\xb8\xf1\x47\xff\xca\x12\xe2\x23\x14\x96\x99\xfe\x63\xa2\xc1\xc9\xe0\xc0\xfa\x4b\x20\xeb\xfd\xb5\xff\x26\x51\x33\x89\x40\x0c\x73\xb7\x9f\x46\x9c\xfa\x0b\x88\x78\x60\xa6\x13\x3b\xc5\xe3\x73\xde\xe1\xf1\xe8\xde\xd0\x91\x20\x61\x86\x44\xfb\x35\x7f\xcc\xad\xf3\x8c\x32\xb1\x22\x74\x9a\xc9\x8f\xca\x00\xcf\x7e\xab\xd1\x3a\x3b\x7a\x93\x35\xbc\xb9\x8a\x03\xd7\x24\x44\x8c\xeb\x39\xca\x89\xc1\x75\x33\xd3\x84\x49\x41\xc6\x63\x13\x78\x32\xf2\x03\x8b\xae\x38\x59\x4e\x09\xc2\xc4\xe8\xbf\xca\xc5\xa3\xab\xb6\xa9\x2b\xd6\xde\x31\x00\x46\x93\xac\x99\xc0\x1a\x31\x2f\x60\x60\x00\x74\x82\x89\x5e\xf0\xbf\x7a\x51\x3c\x0a\x77\xae\x47\x5f\xec\xf6\xe8\xc8\xe2\x54\xff\xaf\x13\x82\xa6\xad\x15\x5e\x4f\x38\x0b\x8c\x7d\x19\xbe\x4f\x2b\x6b\x7f\xb1\x90\x52\x36\x5e\x8e\x24\xd8\x03\xe6\x7e\xc8\x57\xe8\xf6\x66\x40\x48\x9b\x82\xe8\xb0\x24\xa0\x2b\xcc\x35\x7c\x16\x20\x95\x15\x14\x37\x93\xe4\x1d\x48\xc1\x70\xa3\x44\x6a\xd6\x89\x4c\xd4\xb0\x4b\x93\x55\xc9\x09\x13\x10\xba\xa8\x70\x95\x97\x84\x13\xb6\x70\xaf\x5e\x84\x57\xb7\xb8\xd9\x72\xa9\x20\x8b\x82\x21\x37\x27\x91\x6e\xc8\xdd\x1b\x84\xfd\x50\xab\x45\xc3\x5a\xc1\xd7\x0b\xd1\xf0\x42\x48\xb6\x72\x0e\xef\xce\xcf\x0b\x6e\x98\x71\xca\x0c\x43\xab\xf7\xa3\x28\x7d\x93\x21\x09\x07\xae\x31\x24\xaf\x86\xdb\xbf\xe4\xe6\x83\x76\x07\x41\xc4\x5d\x91\x93\xc2\x5b\x47\xb4\xd9\x78\xac\x4a\xfd\x39\x25\x81\x13\x84\x14\xdf\x5c\x06\xf4\x2b\x15\xe3\x09\x06\x8d\xd5\xba\xbd\xea\x39\x1d\x42\x87\x9a\xd0\xa0\xd8\x31\x27\xea\x9a\xdc\xdd\xc7\x25\xb8\xf0\x8f\x5a\x23\xdd\x42\x22\xde\xa9\xd0\x60\xac\xda\x16\x24\x4f\xf1\x14\xc1\x48\xde\xf5\xa4\x64\x0d\xa3\x8b\xb2\xfe\xce\x7e\x54\xfe\x34\xe7\x80\x52\x83\xe0\x43\xc0\xd6\xd7\xb3\xd3\x12\x34\xa3\xcf\xd4\xc4\x52\x19\x70\x36\xc8\x13\x67\xcd\xbf\x3b\x7c\x03\x74\xc2\x4c\x05\x7f\xc4\x27\xb4\xfd\xba\x29\x2b\x52\xe5\x36\x84\x81\x07\xf7\x1a\xde\x52\xca\x71\xd7\x4d\xd9\x2f\xb7\xa4\x06\x9e\x5c\x4b\x6c\x4c\x69\x9d\xe6\xba\xeb\xd9\xdb\xb2\xaa\x9d\x6c\xbc\xd7\x7a\x2c\xd4\xc4\xe7\x1a\x2d\x72\x9b\xff\x55\x31\x15\xf1\xd1\x98\x4a\xe2\x7a\xed\xbf\x0d\x4b\xf9\xa8\x1c\xc0\xc0\x93\x05\xfb\x3f\x7d\xae\x1f\x7a\x4a\x75\x84\x17\xef\xd8\x6f\x33\xd9\x3e\xad\x0e\x38\xfe\xb0\x28\x66\x73\x87\x34\xac\x19\xa4\xd0\x19\x16\x27\xd7\xe5\xaa\xc7\x61\x91\x56\x70\x1f\x2b\x3e\x06\x27\x2b\xc8\xa0\x73\xea\xc3\x97\xdb\x9b\x68\x93\x2a\x57\xc9\xc2\x7a\x3d\x94\x97\x7c\xdf\x90\x9f\xe6\x11\xd3\xf3\x6f\x89\x44\x8a\xb6\x8d\xd7\xea\x13\xf0\x21\x69\x73\x8a\x30\x0b\x56\x33\x59\x09\x96\x57\x31\xc6\x73\xc3\x90\xd2\xeb\x10\x22\x62\xa6\xda\xba\x2a\xdb\x47\xe1\xa3\xa7\x30\x03\xbd\x15\xae\x21\x00\xb0\x9d\x88\x46\xdd\xd4\xa1\x09\xb9\x21\xfc\x2e\xc4\x3f\xd2\xdd\x02\xc9\xf6\x33\xe8\x9d\x7c\x17\xb8\xaa\xfa\xe5\xa9\x16\x08\x79\x2c\x78\xf7\xe1\xe0\x6d\xa1\x30\x90\xc6\x35\x70\x0a\xd6\x05\xf9\x89\xfa\xd6\xd1\x6c\x9e\xe9\x3e\x06\xee\x35\x9e\xda\x7d\xfd\x1c\x3b\x51\x5f\x95\x4a\x36\xa1\x58\xae\xe5\xab\x9c\xfc\xda\xaf\xd4\xd8\xde\x93\xa1\x73\x3d\x2b\x42\xa0\x07\x75\x22\x7c\x54\xf6\x8c\x1b\x5c\xe2\x36\xc5\xa4\xdb\x48\xee\x8b\x74\xd5\x2d\x6e\x77\xea\x4a\x99\x51\x22\x33\x59\xf2\x03\xf2\x2c\xcb\x43\x02\xf6\x02\xf4\xdf\x76\xe9\x3f\x76\x9c\xa0\x55\x6a\x4f\xa8\x80\x71\x92\x10\x69\x48\xbf\x48\xd3\x46\x3b\x22\xd9\x99\x3f\x6b\x6a\xc0\x2e\x9d\x97\xa2\x6f\x15\xfe\x66\xca\x77\xa3\x0d\xbe\x67\xe0\x82\x20\x9a\xe1\x92\x08\x67\x72\x93\xaa\xd9\xdd\x8a\x0c\xb3\x23\xdb\xca\x51\x36\xbc\xa5\xe2\xaa\x59\x8b\x61\xc9\x86\x14\x22\x40\xda\xce\xc6\xfb\x10\xc3\xc4\xf7\xaa\x55\x05\xf1\xf9\x81\x87\x4c\x0b\x86\xf3\xc6\xdc\x00\xee\x72\xfe\xf0\x39\x87\x43\x6a\xb2\xfe\x34\xb4\xd7\x25\xc7\xaf\x48\x2b\x75\x47\xc7\x49\x4e\x3d\x35\xb3\x41\xb8\x54\x0f\x71\x89\x62\xe6\x43\x8d\x49\x62\x42\xdb\xa7\x94\x8b\xbb\x53\x32\x69\x09\xab\xf2\xec\x82\x2c\x9a\x6b\x02\xcf\x32\x34\x35\x4f\x57\x9a\x47\xfc\x50\xb6\xdf\x91\x96\x88\x4c\xd9\x26\x1a\x52\xdc\x83\xf7\x4c\x59\x9f\x89\x52\x90\x69\xb6\x66\x8b\xe6\xfa\x9a\x0a\x41\xaa\x0c\xeb\xb6\xa7\xa3\x63\xec\x3d\x9f\xde\x57\xb4\x3a\x23\xc2\xf0\x9d\x29\x25\x58\xae\x05\x65\x97\xf2\xb8\x0a\x61\x4c\xe3\x8e\xa7\xa1\x2b\xf8\x55\xd9\x3e\xe9\xfa\xca\x6e\x36\x66\xdc\xbc\xa9\x6b\x52\x3d\x2e\x17\x6f\xe4\xc2\xc8\xad\x46\xaa\xb0\x93\x3d\xcd\x00\xe0\x0c\xb8\x07\xbd\x6e\xf2\xac\x86\xcd\x35\x69\xcb\x1b\x02\x2b\xed\x4d\x56\x38\xec\x5b\x5a\xd7\x4f\xe0\x83\xa3\x9e\xc2\xf6\x28\x7b\x5e\xd3\xcb\x2b\x39\x9d\x58\x11\x64\x02\xd7\xcf\x9a\x76\x0d\x5b\x01\x7f\x56\x8d\x0a\x34\xe0\x39\x31\x07\xb0\xdf\x82\x64\xe6\x92\xa3\xb8\x09\xd8\x39\x90\xf0\xc3\xb0\x7c\x4d\x2f\x2f\x09\xff\xba\x14\x84\xc7\xd3\x78\x41\x16\xe5\x35\x79\xc1\x20\x48\x68\xcf\xf7\x41\x99\x4c\x0f\xe4\xa2\x3b\x0c\xf3\xd8\x9f\xf7\x6e\xf7\xa4\xac\xee\x32\xb4\xdd\x62\x33\x61\xd3\x7b\xda\x9e\x95\x37\x94\x5d\x4a\xe2\xea\xd2\x53\xef\xc2\xa4\x48\x40\x3e\xf7\x6f\xf6\xa7\x4b\x92\x5c\x40\x59\xae\xa2\xd5\x01\xeb\xea\xe6\x51\x91\x21\x65\x37\xcd\x1b\xf2\x35\x5d\x92\xc5\xdd\xa2\x26\x4f\x4a\xf5\xd1\x6d\xa6\x18\x52\x25\xc7\xf9\x5a\xa5\xc6\xde\xb1\x60\x1f\x74\x45\xf6\x8f\xcd\xb6\x0b\x4c\x71\x67\xab\xfe\xae\xef\x2e\x9f\xd7\x4a\x26\x25\x21\xb9\x8c\x6a\xa4\xf7\xb4\xfd\x33\xfc\x31\x3a\xc1\x7e\xce\xbe\x9d\x9d\xa9\x82\xd5\x24\xe8\x74\x1b\x13\x41\xb8\x83\x88\x36\x89\xc3\x20\x5e\x92\xb6\x2d\x2f\x01\xd6\xca\x39\xf6\x89\x09\x53\xe9\x72\x75\xc2\x6c\x60\x0a\x0a\xe4\x38\x37\x68\xf3\xea\x43\x60\xc4\x60\x8b\xee\x99\x76\x49\x27\xef\x4c\x80\xbd\x1c\x03\x6c\xd4\xfe\xb8\xcd\x0e\xe9\x65\x24\x7d\x14\x74\x50\x4b\xfb\x38\x81\xde\x8a\xd8\x9b\x8b\xc3\x49\x03\x56\x3e\x49\x6d\x3b\x89\x3d\x98\x67\x45\x42\x1e\xba\x51\x19\x0b\xd2\x0a\xa9\x90\x98\xd0\x2d\xab\xae\x3a\x07\xb9\x96\x78\x82\x58\x49\x72\xcf\x52\xef\x79\x76\xdf\x3b\xf4\x43\xaa\xda\xe4\x85\x98\xd1\x39\x66\x33\x3a\x2f\x92\xb8\xd6\xa7\x24\xe7\x68\x6a\x6d\x6b\x6c\x9b\x37\x04\xc9\x01\x03\xb0\x12\x29\x5a\x92\xdf\xdb\xdd\x3e\xd5\xa9\x2f\xe1\xa4\xfc\x86\xdc\x4a\x56\xd6\x12\xb1\x5e\x45\x93\xe1\xdf\x13\x82\x6e\xd3\xe6\x60\x12\x5e\x93\x89\xde\x48\x13\xb7\xe6\xc5\x21\x5b\xe7\x30\x3e\xbf\x26\xfe\x1e\xfb\x28\x7d\x28\x78\xa9\xce\xbc\xa8\x2f\xae\xb2\xad\x27\xb2\x80\x3f\xf8\x01\xbd\xed\xe5\x6a\xb6\xc5\x25\x91\x3b\x2f\xfa\x4a\x9f\x0d\x15\x0b\x82\xbd\x49\x4e\xbc\x8a\xe7\xe7\x22\x9e\x9d\x26\x5d\x26\xad\x2e\x75\x36\x63\xf4\x75\x9d\x25\x71\xcc\x64\xe7\x92\xe8\x3d\xad\x67\x75\xb2\x9b\x5b\x57\xb4\x92\x3a\x44\xaa\xb7\x48\x16\x0b\x6f\x9e\x6a\x37\x51\x1e\x6f\x38\x64\x5c\xf6\xeb\xa0\x09\xc5\xc8\x02\x57\xbb\x62\x49\xe4\xbb\xde\x65\x7a\x8f\xd3\xa2\x3e\x60\xef\x7c\x10\x7e\xd9\xa1\xf6\xca\xa9\x77\x43\x03\x46\x70\xef\xf3\x99\x5c\x14\x25\xc9\xf9\x69\xa4\x21\xa3\xe9\xfd\x16\x0b\x84\xb4\x09\x06\xe4\xed\x82\x63\xa9\x46\x96\x82\xa8\x68\x33\x2c\xd0\x81\xf0\x74\x14\x8d\xc7\x99\xd7\x52\xa6\x40\x17\x32\xdb\x98\x79\xd0\xb9\x4e\x9b\x51\x95\x88\x88\xce\x0b\x02\xff\x61\x81\xd9\x51\x36\xc9\x8e\xa8\x0f\xad\x97\xdf\xd3\xf6\xd9\xf5\x4a\x4a\xff\x27\x58\xa9\xa5\x20\xad\x99\x1f\xa4\x52\x7f\x6b\x0d\x41\xfe\x69\x04\x3a\x78\xac\x96\x4d\xfd\x00\xde\x28\xff\xd0\xc2\xc2\x71\xf2\x8c\xeb\x8a\x71\x87\x29\x12\x90\x2d\x01\x46\xea\x86\x7c\x9c\xd6\x48\xb4\x2c\x71\xbe\xf2\xa2\xcb\x0b\x91\xa4\x09\x15\x38\x8f\x15\x79\x24\x54\x8e\x24\x15\xe9\xf3\x60\xcf\x0e\xb5\x67\x70\xaf\x3e\xf3\x4e\x24\x6a\x37\x7c\x7f\x47\xac\x11\xcf\x9b\x35\x0b\xa7\x74\x6b\xe6\x48\xce\x9b\x5d\xdf\x63\x4c\xde\x76\x64\x98\x70\xc2\x94\xf5\xa1\x5f\xe5\xfb\x65\xbe\x0a\x93\x89\x14\xe6\x6b\x52\x32\xa5\xf5\xef\x91\x77\x77\x49\xb4\x89\x09\x4a\x8c\x18\x88\x0c\xd4\x18\x35\xf6\x69\xa4\x3b\xab\x4f\xf1\xf6\x47\x0f\x15\xca\x49\x82\xb2\xd3\xfb\x94\xb8\x90\x56\x66\xc7\x63\x1b\xc2\xfa\x94\x56\xb0\xeb\xf2\xae\xd4\x4c\x49\xaf\x80\x9a\x94\x68\x53\x02\x5f\xea\x94\x39\x58\x23\x36\xb5\x3f\xbe\x66\xfc\x73\xf5\x8d\x7e\x56\x93\xd0\x11\xe5\xe3\x9e\x4d\xa4\xf7\xfc\x74\x4d\xb0\xfe\xf8\x69\x4d\xcc\xf0\x3a\x34\x12\xd8\x57\x3c\x89\x49\x17\xcf\x7c\xd6\x79\x1c\x90\x92\x67\x8c\x39\x58\xc8\x0c\xcd\x36\xef\x63\xd4\xf8\x00\x5a\xff\xbb\x51\x24\x2c\x40\x72\x69\xe5\x9b\x0f\x64\x0e\xb1\x1c\x64\xc7\x61\xdf\x67\xac\xf8\x27\x59\x1a\x3e\x9a\x36\xff\x9e\xc6\x87\xbd\x1a\x9e\x61\x71\x9e\x88\x90\xa2\x5b\xa5\xd7\x4b\x5d\xfe\x05\xbb\x21\xbc\x0d\xf1\x4d\xf2\xf7\x55\x39\x2b\x5a\xa9\x7d\x24\x07\x93\x3a\x5c\xd4\xda\xa8\x19\x78\x87\x25\xdc\x61\x02\xe8\x31\x8b\xfc\x6b\x98\x35\xfa\xb7\x5c\xdf\xe4\xfc\x9a\xcd\x14\xdb\x83\xa8\x06\x80\xc4\x8d\x0a\x0f\x4e\xa3\x29\x3a\x81\xf7\x92\x4e\xa6\x89\xb7\x2a\x27\xfd\x01\x34\xb6\x55\xc1\xd7\x19\x6f\x1a\x91\x79\x5a\xf1\xd5\xaf\xfa\x16\xd1\x0e\x73\x45\xf6\x41\xc3\x3c\xcd\x15\x02\x4e\x0f\x04\x8c\xfc\x86\x6b\x82\x6f\x08\xbe\x23\xf8\x82\xe0\x4b\x7b\x83\xd8\xa7\xe9\xe0\x73\x52\x8c\x4e\x06\x17\xf1\x6d\xda\xe8\x9c\x98\x1b\x34\x0b\x29\xed\xc3\xb2\xc3\x3d\x8c\x83\x65\x47\x83\x6b\x52\x90\x89\xbd\x57\xc6\x37\xf2\xa7\x06\x73\xb2\x1e\x38\xf8\xce\x7b\xea\xca\x5e\x93\xf1\xf8\x86\x8c\xc7\x77\x64\x3c\xce\xcf\x61\xd6\xcc\x15\xdc\x39\x51\xea\xe0\x6d\x12\x0a\x03\x3f\x4b\x3f\x3e\x4b\x03\x67\xd8\x79\x7e\xe5\x1b\xb6\xce\x08\x44\x16\xe6\xf0\x7f\x41\x20\xb8\x4e\xe4\xd9\x24\xd3\x60\x22\x6f\xc9\xbb\x79\xab\x7a\xb8\x2f\xc2\xde\xa4\x85\xd1\x43\xa2\xbc\x2c\x76\xc2\xc1\x2c\x6a\x4a\x98\x78\x11\x55\x3b\xef\x3a\xc2\x9a\xeb\x7d\x1b\x69\x1b\x06\x1c\x29\x1e\x16\x16\xd6\x70\x40\x9e\x0c\xf3\xb2\x64\xe5\x25\xe1\xcf\xeb\x75\x7b\xd5\x6d\xf8\x5a\x6e\x34\x08\x8c\xa7\xec\x32\x6a\xfe\x3b\xa2\x45\xef\xb0\x5a\xd5\x7c\xd3\x08\x3d\xa4\xa8\x86\x0b\xfb\x8d\x46\xe5\xab\x3e\x11\xa6\x30\x58\x2f\x82\x67\x6d\xe4\x4f\x1f\x41\x0e\xdb\xc0\xf0\x68\xfe\x2a\xb2\x24\x9c\x93\xea\xb5\x62\x21\xf1\x6b\xee\x89\x75\xf1\x18\xb4\x77\x55\xe7\x79\xe0\x7b\x15\x0d\xc3\x10\xb8\x8a\xf6\xea\x0f\x9f\xe5\x44\x94\x94\x91\xea\xe5\xe1\x15\xdc\xfe\xd7\xbb\xa9\x7d\xc7\x3a\x6f\xf7\x75\xb2\x58\x73\x67\x40\xf1\xbf\x8b\xf8\x24\x75\x01\xde\x4e\x86\xc8\x15\x64\xe6\x55\x0a\x58\x28\x24\x6b\x0d\xab\xd9\xa1\x6a\x8b\x11\xa5\xd3\xc5\xfe\xe1\xfb\x17\x4f\xcf\xff\xf4\xec\xc7\x79\x50\xa3\xa3\x26\x87\x94\xe2\x3d\xf1\x37\xc6\xe8\x24\xdc\x14\xe6\xf7\xbe\x0d\x61\xcb\x75\x37\x83\x7d\xd5\xa1\x47\x37\x06\x00\x60\x34\x9e\x05\x5d\x02\xf5\x06\xdb\x25\x4f\xff\x65\x40\x9c\xc1\x47\x5b\xd2\xec\x4c\x85\x23\xcc\x20\x10\x9b\x42\x96\x97\x8e\x27\x48\x33\xa1\xed\x57\xb4\xaa\x08\x93\xc2\x91\xaf\xe3\x74\xdd\x3e\xb4\x7b\x95\xb6\x04\x01\x6c\x00\x29\xe0\xd8\x9d\x84\xd6\xd8\x42\x7b\x1f\xf8\xe4\xe4\x6c\x71\x7d\x33\xab\x45\xae\x64\xe4\x8c\x7e\xe7\x2d\xed\x66\xa3\xd1\x75\xc8\x16\x37\xb2\x35\x35\xf6\xe7\xeb\xba\xbe\xd3\x6a\x5e\xe2\x0b\x4e\x64\x61\x53\xf6\x05\xfb\xbe\xdd\xe1\x31\x28\x8b\x78\xde\x82\xa3\x1c\xfc\x45\xf2\x18\xe2\x20\x7e\xaa\xc1\x0d\xa0\x1f\x98\xa8\x3e\x47\x9b\x60\x76\x74\x59\x55\x4d\x5b\x8c\x0e\xac\xa8\x4b\xbb\xaa\xa9\x2f\xef\xad\x49\xaa\xad\xf2\x47\x05\xc9\x35\x0d\x4b\xd5\xdb\x44\xb7\x9a\x1a\x85\x52\xe9\x0e\x1c\x85\x2a\xac\x2a\xf6\xae\x5c\xb2\xa6\x2e\xad\xaa\x7e\x43\x6e\x0f\xac\xf6\x0d\xb9\x55\x55\x22\x33\xfc\xce\x4a\x50\x56\x56\xb3\x96\x85\x83\x2a\xda\xd2\xb2\xaa\x75\x37\x8a\xa1\xc8\x46\x3e\xcd\x8d\xc7\xa3\x9e\x1d\x12\x84\x3d\xe9\x78\xaa\xe2\x1e\xfe\x98\x0a\x1c\x7a\x19\x42\x50\x0f\xf6\xc7\x32\xed\x8c\x0e\xf2\x6f\x70\xcb\x1c\x7d\x4e\x89\xb9\x31\x89\x79\xef\xe0\x14\x70\xb0\xc7\x6a\xec\x19\xad\xa4\x10\x4c\x1c\x06\xab\x8a\x25\x73\x70\xc5\x6a\xb8\x10\xa7\x47\xb5\x73\x4c\x21\x22\x81\x76\x27\xd6\x8c\x07\x61\xdd\xd8\xcc\xfb\x25\x6e\xe3\x38\xf4\x75\x71\xfc\x70\xfd\xa5\x81\x0b\x78\xb8\x36\x12\x7e\x5d\xb4\xb3\xf5\x1c\x2f\x8a\x66\x56\xcf\x07\x76\xfc\x0b\xc8\xc3\xe8\x27\xfa\x5e\xa8\xbc\xe0\xaf\x49\x4e\x66\xf5\x1c\x4d\xdf\xe8\x3f\xb0\xfc\xb7\x28\xb5\xf3\xdf\x32\x60\x11\x0a\xa0\x51\x0e\x5e\xad\xad\xd2\x6a\x34\x16\x5e\x6e\xf3\xb4\x69\x58\x38\x8e\x97\x26\x0d\x74\x6b\x52\xc0\x72\x1c\xe7\x84\x45\x28\x3c\xdd\x84\x3e\x3e\x9e\x97\x0b\xd1\xf0\xbb\x14\x90\x91\xbd\x0b\xc1\x55\x30\x3c\x7c\x15\x47\xf3\xe1\x1f\x21\x90\xaa\xc2\x57\xa6\x17\xad\x5d\x3d\x8d\x8e\x22\x9d\xe5\xa2\xc2\x57\xa1\x63\xa9\x6a\x58\x12\xb4\x77\xce\xa5\x50\x88\xa3\x93\xd9\x17\x1d\xcd\x29\xaa\x04\x0b\x57\x26\x90\x40\x2a\x32\x21\x86\x2b\x56\xde\x56\xe8\x5c\x6e\x05\xbe\xc0\xbd\x07\x77\x52\x52\xb5\xc7\x39\x0f\xe1\x07\x35\xfe\x54\x65\x83\x92\xbb\x80\x49\x69\xe9\xaa\x27\x55\x2a\xe9\x2b\x3f\x13\x73\xd3\xcb\x78\x7c\x48\xa9\x1c\x19\x18\xea\x5d\xa5\xb7\x28\x35\xe4\x50\x3c\xdd\x95\xd5\xb5\x20\x7d\x32\x2a\x20\xa1\xc4\x4d\xcd\xc4\x7c\xe0\x46\xd5\x79\x87\x15\x36\xdd\x39\x55\x86\xa8\x17\xed\xa3\xf6\x8e\x2d\xc6\x63\x6e\xe3\x0c\x51\x44\xf3\xb0\xad\x42\x50\x91\x5e\xd9\x2a\x6d\xa0\x6d\x7a\x6e\x42\x8d\xfe\x06\x46\x41\xbf\x48\x06\x95\xa4\x08\x93\x70\x67\xcd\x9e\x9e\x4d\x87\xc0\x59\xff\x97\x2c\xa1\x1d\x1d\x31\x2f\x3c\xdf\x56\x90\xe5\xbc\x34\xba\x9e\xcb\xa5\x11\x16\xcf\xca\x1b\x0d\x35\xc6\x31\x41\x18\x9c\x7b\xa5\x5c\x0b\x3d\x8b\x92\x0b\x52\xb9\x4d\x12\x0f\x39\xd8\x40\x9a\x9a\x3d\x1c\x02\xcb\x56\x02\x12\xc6\x99\x57\x2d\x53\xc1\xc3\xcd\xc4\xc0\x18\x1f\xd8\xd9\xc9\x7b\x76\x76\x82\x14\x9b\xe8\xf8\x87\xeb\xa9\x09\x3f\x38\xd7\x61\x37\x85\x9e\x5a\x6f\xce\x55\x13\xc3\x66\xa9\x27\xde\xba\x91\x58\x4c\x67\x1f\x49\x3a\xc4\x22\x13\xc6\xe3\xd1\xbb\xea\xc8\xf0\xbd\xbe\x18\x99\x72\xac\xaf\x45\xa6\x64\x8b\xb6\x68\x17\xcc\x94\x88\xef\xc5\xb0\xd8\xfa\xb8\x53\xc4\xe0\x8e\x41\x41\x55\x86\x20\x4c\xb6\x08\x77\xbf\x65\xd1\x5c\xaf\x24\xf1\x61\x83\x82\xb1\xac\xcb\xcb\x36\x43\x69\x94\xae\xee\x8a\xe9\xc0\x80\x26\xf2\x07\xe8\x2c\xa3\x27\x32\xe7\x1e\xe5\xfb\xb5\x32\xbd\x91\x12\x4c\x36\x77\x99\xe6\x92\x5a\x8f\x65\x98\x1d\x75\x28\x85\x9a\x65\xf7\x81\xdc\x79\x50\x4c\xf9\xf9\xe1\xec\x7c\x71\x45\x16\x6f\x9e\x37\xfc\x15\x5f\x5d\x95\x8c\x54\x41\x20\x45\x9b\x21\xf5\xad\x09\xed\xa0\x57\x51\xe9\x0c\x49\x36\x10\x60\x4d\x74\x0f\xad\xf0\x6c\xe8\x37\x89\x8c\x4e\xb0\xfb\x3e\xd5\x66\xcf\x3c\xa0\x5d\xea\xa2\xe2\x52\x16\x10\xa0\x3b\x9e\x4e\xcf\x5a\x9c\x8a\x21\x33\x54\xe9\xdd\x73\x68\x8a\x05\x24\xd1\x31\xd1\xe8\x47\xf6\xb0\x01\xf5\x6a\x77\xc3\x07\x0c\xfb\x20\xb5\xd9\x1b\x98\xec\x75\x0f\x4c\x64\x07\x47\x00\x94\xeb\x3e\xc4\xc8\x66\x72\xbe\xa4\xcc\x05\x06\x76\x32\x62\xf8\xf9\x7b\x13\x0c\x3c\xac\xfd\xf8\xee\x8f\x6d\xc3\x1e\xad\xa8\x8b\xe4\xc1\x9a\xab\xb3\x0e\xfb\x70\xc0\x76\x8f\x48\x4e\x31\xc1\x91\xf0\x8b\x55\x6e\x0f\x14\xb0\x92\xbd\x95\x60\xda\xb8\xe1\x01\x7e\x40\x65\x3f\xfa\x45\x6f\x38\x2d\x00\xb7\x40\xe4\x67\x55\x8a\xf2\xf4\xd2\x83\x6c\x40\x3b\x91\x49\x54\x05\x8d\x4b\x4b\x0b\x7f\xc2\xde\x01\x35\xb5\xf1\x55\x9a\xb2\xa0\x36\xb1\x6b\x29\xc5\x04\x6c\x0c\x70\x0a\x5a\xa4\xc4\xeb\x02\xa2\x00\x08\x56\xaa\x4f\x83\x1b\x4e\x2f\x29\x2b\x05\x65\x97\x2f\xba\x4a\x90\xed\x6f\x4a\xc1\x2e\x05\x6a\x8f\x4d\x8e\x65\xb2\xed\xec\x44\xde\x65\x1a\xe2\x03\xf4\xa5\xe0\xcb\x24\x47\x52\x78\x46\x52\x9b\x7e\x24\x84\x94\x58\x51\x24\x2f\x27\x65\x34\xa2\x60\xe0\x4c\xe6\xac\x80\xbe\x00\xf1\x89\xe2\x48\x94\xd0\xe9\x64\xfc\x04\x0e\x72\x52\x33\x1b\x71\x9c\x61\x82\x6d\x82\x85\x05\xd6\xb9\x21\xa6\xf5\x69\x80\x4a\xaa\x16\xcb\x81\xfb\x2a\xed\x70\xbd\x0d\x62\x60\x0a\x39\x25\x90\x8f\x74\xf7\xbc\x04\x31\x34\x8a\x10\xad\xb8\x98\x04\x25\xf2\x81\x49\x7c\x9c\xa1\x77\xa7\x1a\x96\x24\x6a\x13\x60\x46\x1c\xe2\x70\x24\x8e\x6a\x54\xe1\x30\x03\x8e\xee\xde\x35\xd0\xdd\xe2\x90\x19\x67\x34\x62\xe1\x20\xc7\xe3\xe8\x41\x2c\xe5\xe6\x68\x40\x8b\x6b\x62\x13\x60\x68\x7d\xdd\x11\xbc\xca\x7d\xe2\x06\x61\x73\x80\x9b\xb4\x52\xee\x03\xa7\xf1\x17\x63\x48\x0d\xc2\x00\xbd\x01\x6b\xb0\x05\x15\xcd\x8a\xd5\x16\xa1\xad\x97\x03\x79\xca\x93\x29\x93\x03\x3f\x8a\xc6\x80\x7a\xe3\xe8\x3b\xa6\x25\x4e\x58\x18\x9c\x1f\x85\x14\x85\x7a\xe6\xbb\xa0\xdb\x68\x47\x24\x15\x0b\x32\xf7\xd4\xaf\x9e\x12\x5d\x2d\x68\x4f\x05\xc0\x90\x69\x26\x10\xad\x04\xdf\xf1\x55\x02\xb3\xba\x9b\x12\x09\x97\xc5\x1e\xbb\xbb\x87\xb0\x57\x6e\x36\x79\x59\xc4\xa7\x45\x2f\x21\xa9\x4c\x09\x58\x60\xda\x2f\x6a\x32\x8b\xed\xf2\x75\x29\x48\x2b\xa4\x1c\x06\xe2\x76\x66\x66\x1c\x64\x79\xcc\xb6\xa8\xd3\x88\xf0\xcf\x8e\x06\x13\x1c\xf1\x2c\x2c\x12\x07\xce\xde\x4a\xea\x9c\x46\x5b\xb4\xf7\x46\x42\xae\x78\x89\x4b\xc3\x0f\x52\x13\xbe\xeb\x58\xf2\x76\x30\x7b\x5f\xde\x40\x0b\x16\x1d\x22\x8d\x3b\x44\xe8\x66\x43\xcd\xfa\x06\x81\xb1\x04\x37\x60\x6c\x6a\xc0\xb2\xf5\xa1\x39\xbd\xce\x4c\xde\xa1\xc4\x9c\x60\x86\x39\x2e\x0f\x65\xf7\xc6\x60\xe5\x33\xfb\xd6\x32\xfb\xd2\xf1\xf1\x12\xc4\x9e\x64\x2b\x3d\x90\x65\x3b\x3f\x43\x00\xdf\x64\xc8\x1a\xd0\xf8\x44\x77\x2a\x79\x20\xd0\xa6\xfe\x9d\x61\xfb\xca\x92\xad\x1e\x69\xe6\x74\x5e\x34\x20\x75\x4b\xb4\xd8\xe5\x9b\xe1\xc8\xe9\x1d\x99\xde\x90\xc1\x9e\xd1\x14\xd4\x59\xbd\x62\xfe\xd2\x67\x15\xb1\xda\xe8\x21\x44\xb9\x63\xe3\x4b\xf2\xb0\xd0\x18\x83\x70\xf2\xd2\xb4\x3c\xe8\x9c\x1b\x79\x7c\x70\xb4\x50\xbe\x43\x63\xf9\xe8\x44\xce\x62\xa7\xec\x19\xa4\xcb\x7c\xde\xf0\x05\x51\x4a\x61\x3e\x3a\xd6\x69\x5b\x7e\xae\x24\x16\xee\x0a\x64\x36\x4b\x8a\x74\x29\x66\xb8\xe9\x90\x6e\xef\x4e\x38\x7d\x67\xd2\x2e\xb7\x68\x5a\xba\x85\x3b\x4c\xcc\xfd\x00\x4b\xe7\x4b\xc7\xff\x52\x8b\xd7\x11\x25\x59\x42\x94\x7c\xcf\x05\x4a\x8b\x9a\xcd\x16\x4d\x1b\x4f\x97\x75\x77\x89\x61\x00\x46\x4a\xcb\x3e\x4d\x1a\x65\xa7\x5d\x25\x34\x91\xee\x2e\xb6\xfa\x06\xae\x06\xa3\xe3\xa4\xcd\x36\x25\x26\xec\xb2\xd9\xf6\x98\x40\x7b\xac\xb1\x3d\xa5\xe5\xa1\xf9\xa7\x40\xa9\xd2\x38\x74\xf2\x11\x4a\x5d\x5c\x1f\x1b\x0d\xb8\x2f\xcd\xc2\x0e\xf5\x37\xce\xb8\xd0\x4c\xb4\x24\xb7\x0b\x58\xce\x6b\xc3\x95\x06\xa7\x37\x00\x59\x5c\xaf\x3a\xb1\x34\x3e\xe2\xb0\xb7\x75\x56\xeb\xf6\x0a\xb0\x8d\x48\x64\x34\xd4\xf9\x87\x3a\xc9\x86\xb4\xa9\xfd\x9c\x35\x82\x2e\xef\xb4\x93\x12\x25\x6d\x2e\xf4\xcc\x38\xaf\x40\xab\x63\xd8\x4f\xfc\x73\x88\x0a\x10\xa3\xe5\x85\x5b\x5a\xd6\x72\x9f\x04\x57\x97\xe9\x73\xa0\xaf\x8d\xa8\x56\x4e\xf0\x6b\x92\x0b\x14\xb4\xd8\xc7\xa0\xf6\xb5\xe9\xef\xd8\x37\x9d\x56\xfb\xc8\x80\x2e\x73\x4b\xfa\x3a\x17\x88\x0f\x08\x0a\x36\x2a\x1d\xba\xaf\x39\x92\x42\xde\x6d\x89\x88\x40\x75\x85\xfc\x53\x43\x84\xea\xfb\x7c\x07\x15\x2a\x0c\x96\x82\x39\x1e\xc2\x05\xc8\x09\xf2\xd0\x3e\x53\x5f\x17\xd2\xe4\xa0\x47\xfa\xa3\xad\x2c\xa7\x5c\xf0\x89\xa6\x17\x6d\xa8\x0f\x9c\x3d\x33\x7c\xcf\xa4\x42\x4f\xac\xef\x36\x77\x62\x8f\x00\x3b\x5f\x90\xf5\x24\x45\x20\x72\x7e\x9e\xe7\x64\xb3\x31\xa9\x9a\xbc\x2b\x32\x6f\xa7\xca\xc6\xbc\x58\x83\x84\x15\x1b\xc6\xe7\x15\x51\x9e\xaf\xaa\x56\x1c\x82\xd6\xa9\xa3\x0a\xa8\xab\x07\xe3\x06\xdf\x53\xdc\xbc\x56\x85\x53\x01\x6e\x41\x71\x57\x20\x33\xa6\xd3\x4e\xf0\x43\xc2\x76\x6a\xc8\xe9\x6b\x63\x65\x36\xf7\xd1\x9e\x65\x1f\x85\x5b\x17\x96\x2e\x1d\x5b\x01\x4b\xb1\xbf\xd7\xe1\x01\x9d\x9e\xde\x6f\x3b\xea\x6f\x2a\x1d\x98\xec\x52\xdf\x5d\xff\x60\x1d\x6c\xfb\xae\x27\xa1\x11\xe7\x87\x6b\x4c\xa4\x6a\x06\xdd\xf3\xcc\x6f\xd5\x04\x89\xf4\xcc\x7b\x00\x13\xa1\xb6\x30\xdb\x81\x48\xeb\xdf\x78\x5a\xe0\x39\xf0\x4e\xd4\x07\x31\xbb\x2a\x59\x55\x93\xea\xd9\x0d\x61\x22\xe7\x18\x9c\x95\x65\x09\x8b\x85\x89\x9b\x89\x55\xb9\xf5\x2d\x58\x15\x78\x81\x18\x52\xed\x63\xbd\x8a\xf3\x6a\xa6\x06\x75\x35\x97\x0c\x5e\xa8\xe5\x8d\x7d\x17\x22\x1e\x1f\xe1\xd0\xc7\x86\x17\x40\xa5\x8b\x35\xdb\xad\xeb\xca\x32\xc1\x44\x67\x07\x7c\x42\x54\xdd\x1c\x41\xba\x90\xd9\x06\x0a\xec\xe9\xba\xb9\x29\xeb\x27\x57\x24\x0a\x6e\xdc\x39\x7e\xb3\x28\xbd\xd6\x06\xcc\x8b\xd1\x89\x87\x94\x98\xab\x10\x1c\x79\xd6\x7f\xcf\xd4\x7e\x0f\x2c\x94\x79\xaf\xcd\x64\x3c\xe6\xfb\xad\x21\x7d\xe3\x0c\x6d\x23\x9d\xd7\x00\x39\x68\xe7\xdc\x30\xd5\xf7\x9b\xf2\xb0\x76\x4e\xfc\x3b\xbc\xf7\x99\x41\x38\x64\xfc\xf0\xa5\x1d\x73\x37\xf8\x67\xcc\x9d\x47\xad\xb0\x69\x0f\x98\xb6\x9c\x8c\xc7\x3a\x4f\xd1\xa8\x28\x88\x9e\x03\xcf\x72\x9a\x9e\x4b\x5d\x05\x61\x55\x5d\x1f\xf0\xef\xda\x84\xa9\x86\x82\x76\x68\xc3\x9e\x58\xb7\x7e\xaf\xc5\xde\xbb\x74\xe3\xaf\xbf\xdb\xdd\x43\x31\x65\x70\xf9\x7c\x6a\x6a\xa8\x06\xba\x81\x4d\xbb\x5d\xef\xa0\xa5\x54\x34\xd4\xc0\x25\x15\x02\x06\x98\x69\x97\xa5\xcc\x9c\x4a\x9d\x3b\x5a\xc7\x9b\xfd\x30\xa4\xc8\xef\x43\x01\x02\x82\xe7\xd0\xef\x8f\xf7\x8a\xa6\x8a\x3d\xfa\x81\x12\x29\x40\x30\x95\x40\x28\x25\x7c\x3c\xd3\x0e\xe8\xf0\x7f\x01\xbe\xe9\xb3\xe3\xb9\xca\xf9\x5d\x76\x0f\x06\xc8\xc1\x60\x3d\x28\x8f\xb2\x07\xbf\xcf\x8e\xc8\xa0\x6a\xee\xcb\x09\x79\x4b\xc5\x78\xac\xfe\xd7\xea\x44\x59\x94\x7e\x28\xf4\xf6\xf6\x8a\xd6\x24\x1f\x95\xb3\x66\xae\x76\xe7\xba\xb8\x25\xb3\x16\xb6\xda\x1a\x89\x62\xad\x04\xfc\x16\xf3\x62\x3d\x21\x72\x8b\xb5\xb8\x94\x4f\xe1\x4c\x02\x23\x8d\x28\x66\x92\xb7\xcd\x94\x25\xab\x56\x23\x06\x0c\x08\x56\x1c\x63\x5a\xd4\xc6\xe9\x8a\x7d\x49\x21\x85\x55\x5e\x16\xe5\xac\x9e\xb1\xf9\x1c\xa9\x26\xc7\x63\x9d\x91\xae\x44\xb8\x54\x1d\xca\xb3\x40\x3f\x1a\xc0\x80\x0a\x15\xb5\xd9\x4e\x05\x56\xc3\x98\x72\x0c\x83\x98\x96\xdb\xad\xeb\x8c\xc7\x9d\xf1\x19\x9b\xab\x5e\x34\xe8\xd7\xd2\x28\xc9\x81\x3f\x51\x79\xb0\x17\x83\x5f\x2d\x03\x90\x28\xe8\x58\xc4\x1d\x0b\xd9\x31\x8c\x59\xc3\x11\x83\xc1\x2d\x38\xb1\x7b\x2c\x6d\xa1\x34\xae\x2a\x0c\x89\xac\x30\xfc\x7f\x20\x8b\xff\xbf\x61\x66\xd0\xb7\x8e\x8a\xac\x61\xc3\xec\xe8\x0c\x70\xa2\x55\x4f\x47\xd9\x10\x96\x75\x48\xd9\x10\xa6\x68\x98\x61\x76\x54\x10\x9f\x4a\x26\xc3\xcc\x79\xeb\x49\x8e\x28\x5b\x7a\x52\xca\x2d\x00\xd0\x5c\xc3\xec\x48\x27\x9a\x66\xed\x8a\x2c\x44\xce\xd1\x51\x36\xc9\x10\x8e\x55\x07\xa6\xa9\xdd\x05\xe1\xa4\x73\xc4\x74\x72\x9d\x09\x2f\xd7\x99\x4d\x14\x43\x20\xf6\x06\x52\xc3\xb9\x0c\x67\x7c\x3e\x38\xb1\x4e\x06\xb1\x53\xb4\x4e\x65\x68\x36\xb8\xb6\x8c\x28\x56\x15\x1e\x09\x6e\x15\x7a\x9c\xda\xa2\x90\x97\x94\xf4\x42\x7a\x46\x81\x43\x65\x17\xcb\xe3\x49\xf7\xa2\x81\x73\x33\xd3\xb8\x87\x7b\x62\x1d\x16\x15\x09\x91\x98\x84\xf4\x9d\x03\x81\x1c\x6f\x06\xfc\x02\x37\x68\x4b\x6c\x16\xb6\xad\xb2\x7e\xed\x8a\xe6\xeb\x01\x7d\x07\x88\xe6\xd1\x49\xc2\xb5\x6a\x4f\x70\xa0\xe2\x6f\x2b\x65\x72\xdb\xa1\xf9\x63\x5e\xdc\x6f\x07\xa1\x1f\x66\xc2\x98\x62\x6f\xd7\xfd\x84\x70\x0c\x0d\x84\x6f\x76\xb8\x56\xd6\x2d\x1b\x2e\xc5\x90\x12\xff\xed\xb0\x4e\x73\x1e\x40\xe3\xb6\x90\xb8\x2e\x78\x52\xdc\x6f\x11\x8e\x9e\xcd\xd8\xbc\x10\x93\xf3\x95\xf1\xff\xf1\x7c\x03\x18\xa6\x08\x4d\x73\xee\x25\xf6\x85\x36\xbd\x1c\x8a\xaa\x41\x2f\x13\x30\x9b\x17\x34\xb8\x05\xe9\x5a\x3e\xb8\x22\xc1\x44\x8f\xbd\x7a\x80\xb9\xea\xd8\x31\x1f\xfa\x5a\xc3\x73\xdf\xbf\xaf\x4a\x51\x4e\x7d\xd3\x39\x53\x1e\xac\xa2\x17\xbc\x95\x4f\xce\x17\x8d\x5c\x71\xf1\x6d\x77\x74\xaf\x9b\x3f\x9e\xbd\xfa\x26\x27\x18\x3e\x50\x6b\x5b\x7b\x8b\x0b\x59\x5c\xb9\x89\xec\x29\x9a\xb4\x88\x18\xf8\x7b\x07\x50\xbb\xd9\x64\x6c\x2d\x09\xc5\x7b\x76\xaa\x92\x72\x08\x4c\xab\x29\xd9\x4e\xd5\xaf\xbc\x8b\x6a\x7d\x1a\x3f\x98\x12\x0f\x40\x10\x43\x36\x5c\x5a\xa9\x00\x33\x90\x81\xbb\x02\x4f\x57\xaf\x03\x7e\xc3\x3b\xb1\x22\x26\x49\x01\xad\xb4\xb4\x65\xb9\x0f\x78\x3b\x27\xb6\x0c\xf1\x80\x19\x8d\xa3\x6a\x55\x10\x1c\x9e\x43\x38\x3b\x17\xe5\x65\xe6\x02\xc7\x8e\xe4\x0e\xb6\x39\x88\x88\x91\x6d\x4d\x82\x53\x9b\x9a\x22\x36\x0c\x47\x21\x38\x09\x92\x3d\x3f\x87\xa1\x26\xf4\x79\xfd\x46\xe5\x06\x73\x40\xb9\x81\x26\xd0\x23\x72\x6a\x0b\x85\x71\x81\xeb\x8a\xc6\xca\xeb\x97\x44\xb1\x39\x5d\x8f\xc6\x40\x08\x6b\xad\xf9\x47\x0a\x60\xf7\xba\xda\x74\x74\x8c\x7d\x4f\x75\x70\xe2\xd3\xf2\xaa\x15\x02\x3b\x2b\x1a\xbb\x1d\xc7\xf1\x41\xef\x3a\x86\x93\x70\x0c\xe0\xda\x15\x99\x0c\x62\x3b\x84\x99\x8b\x48\x5a\x1d\xf4\x58\x55\x6d\xcc\x6b\xd7\x2e\x66\x4c\x14\xfd\xce\xb0\x52\xf0\xdf\x6b\x6b\x55\xc3\xad\xfc\xf0\xe2\xd7\x4d\x9f\xd9\x31\x94\xc1\x7d\x3d\x04\x67\x30\xb9\x6d\x86\x26\xe7\x65\x55\x59\x13\xf4\x9e\x70\xec\x60\x62\x0e\x6b\xdd\xa4\x72\x51\x46\xa6\x4e\x68\xb4\xbf\xe8\x87\x35\x68\x73\x9e\x34\x2e\x14\x3c\x61\xab\x3a\xa8\x31\x08\x0a\xd2\x29\x0e\xd1\xef\x8f\x43\x5a\xd0\x01\xe4\x65\x0a\x60\x5e\xc9\xae\x43\x08\xa9\xb8\xd4\x38\xf2\x72\x0e\xf5\x0a\xf6\xaf\x50\x2e\x30\x99\x89\x79\x40\x1d\x21\x78\x40\x62\xff\xab\xd0\x6e\x40\xfe\x91\x47\x38\xd1\x5e\x3c\x8a\x3c\xd4\x0c\xc4\xfa\xad\x01\x73\x4f\x19\xd8\x55\x0d\x95\x18\xa2\xf7\x75\x1e\x59\x5b\xd1\x66\x63\xb2\x88\xaa\x7e\xf5\x78\xfd\xee\x01\x65\xdc\x0e\x2c\x51\xa0\xbb\xb1\x7c\xdd\x98\x76\x2b\x18\x13\x97\x5b\x95\x1e\x66\xe5\xcf\xa4\x56\x34\x0d\x36\xa5\x73\xf1\x3d\x74\x62\x45\xa3\x84\xf8\x04\xa8\xf2\x97\x1a\x3b\xd7\xb2\x6f\xc8\xce\xa5\xe7\xea\x28\xfb\x7d\xa6\x76\x91\x8e\xee\x8b\xef\xf0\x03\x9b\xa2\x8b\x0f\xd4\x97\xf6\x23\xab\x77\xac\x88\x31\x1b\x82\x30\xd1\xc9\x34\x20\xc5\x87\x81\x77\xcd\xa7\xb2\x03\x82\x18\x4f\x82\x4c\x4e\x4a\x68\xc1\x02\x05\xf2\x07\x05\x93\x97\x2c\x2d\xd2\xa5\xad\x17\xbf\x37\xc2\x82\x1b\xd3\x3d\x8f\x93\x84\xf6\xe3\xfc\x46\x44\x34\x01\xd8\xea\x08\x05\x97\x2e\x73\xd2\x81\x87\x16\x3a\x31\x5b\xdc\x00\x84\xac\xd6\xb4\xea\xbc\xa8\x69\xa5\xa4\x8e\x41\xe8\x17\xd9\x93\xa4\xac\x73\x97\x80\x0e\x38\xde\xb7\x61\x72\x53\x10\x00\x53\x99\xc2\xbd\x73\xdf\xb8\x89\xa1\x6e\xde\x53\xa8\xee\x92\x98\xba\xc8\xd3\x44\xf5\x4e\x62\xef\xc3\x73\x73\x27\x92\x71\x47\x31\xa8\x7d\xd5\x03\x97\xf2\xa8\x4e\x14\x82\xe3\xc5\xb3\x92\xdb\x21\xeb\x50\x55\x24\x88\xdb\xe2\x0e\x2b\xda\xed\xca\xbe\xdc\xeb\x76\x28\x5e\xd9\x40\x17\xd4\x1a\xe7\xc2\xb3\x80\x81\xa0\x1f\x73\xb2\x54\xa0\x14\x68\x4f\x04\x93\xd0\x45\xc5\x7b\xd9\xa5\xdb\x4e\x91\xa2\xf3\x39\xea\x68\x3f\x68\x7e\x83\x1a\x76\x76\xa3\xe0\x62\x72\x3b\x3c\x23\xe6\xc2\x35\x7c\xe9\x2d\xae\xd9\xb4\x07\xae\xab\x29\xee\x2d\xa9\x0d\x5c\x4e\x65\xd4\xed\x84\x37\xbb\xaf\x8e\x95\xf1\xc3\xbe\x3c\xae\xe5\xbe\xbe\x13\x77\x3d\x9b\xa3\xbe\x98\x6c\x2f\xd5\xbc\x0b\xfd\xdd\x9d\xb4\xde\xf3\x64\x37\x95\xad\x4c\xd9\x53\x75\x14\x44\x81\x2a\xe0\xf2\x2b\x12\x67\x17\xa6\xea\x21\xa6\x71\xda\xf9\x47\xc4\x77\x64\xa4\xcb\xbc\x37\x48\xcc\x73\x87\x11\x73\xcc\x7b\xbc\x51\x4e\x90\x6c\x87\xf7\xfb\xb5\x1c\xdb\x0c\xb2\xbb\x3c\xc6\x94\x09\xab\x19\x8f\xc3\x33\x85\xc3\x41\x33\x1e\x37\xce\x85\xcc\xfe\x19\xb8\x71\xc8\xe7\xa1\x6b\x99\xc2\x2b\xb0\x1e\xa5\x3b\x46\x78\x82\xd4\xd7\xf9\x8a\xe8\x8b\xf6\x4c\x94\x35\x51\x6e\x39\x0e\x85\xe5\x35\x09\x72\xb2\x48\xed\xf9\x0d\xf1\x00\x51\xdf\x10\x13\xaa\x4b\x90\x47\x69\x90\x5d\x00\xdc\x2f\xad\x86\x27\xe5\x8e\xf1\x58\x47\x85\x9b\x41\x3b\xc6\x70\xfa\x34\x17\x3a\xef\x86\x07\xef\xe2\x3a\x7a\xf9\xab\x46\xad\x91\x3d\x7f\x4b\x82\xac\xcd\xf2\xd1\xdf\xf7\xc3\xa5\x9c\x9f\x07\x80\x29\x1e\x56\xc4\xfe\x5c\xf1\xbb\xdc\x60\x7c\x47\x82\x73\xcd\xa6\x9d\xb1\x66\x77\x58\xb1\x6f\xb6\xe2\x3d\x66\x2b\x93\xc9\x09\x33\xcc\x67\x6c\x6e\x92\xb1\xec\x89\x4d\x49\x8d\xea\x1d\xe2\x9d\x7f\xe6\xc0\x5e\xf3\x92\xb5\xcb\x86\x5f\x7b\x17\xe3\xbf\xfc\x00\xc1\x28\xaf\x32\x50\x27\xc7\x1a\x0a\x7a\x4b\x4a\xea\xaa\xcb\xd5\x7d\x7b\xec\x3b\x2e\xaf\x35\xd7\xbe\xfb\xf7\x61\x25\xc2\x4a\xf2\xd6\x44\xb8\xd7\xc2\xe9\x5b\xd8\x54\x2a\xf2\xcc\x8e\x33\x43\x9d\x68\xdc\xc3\x9a\x10\x33\x32\x07\x46\x09\x0d\x70\x7b\x94\xb8\x19\xf8\x90\x13\xe6\xc7\x54\xbe\x2c\x57\xb9\x1e\x30\x61\x82\xab\x2b\x2f\xe4\x49\x02\xde\x54\x3e\xbe\x03\x54\xdc\x43\x46\xf2\x0e\x24\x76\xc0\x60\xe4\x09\xf9\xb2\x73\x42\x32\xf5\xd0\x26\xe0\x7f\x42\xb4\xd5\x19\xae\x63\x48\xe5\x8e\xcc\xef\x7e\xf5\xbc\xf6\xc5\x0e\xc6\x0a\x77\x49\xc6\xd2\xcf\x41\xef\xba\xb7\x21\x18\xad\x76\x7c\x4a\x62\x17\xa9\xe0\x9c\x10\x9d\xea\x6e\x15\x22\xfe\xe8\xbb\x07\xff\x11\xe4\x1f\xf5\x1f\x68\xd5\x59\x63\x1d\x84\xa0\x4f\x6c\x51\xaf\xab\x08\x1c\xc9\x0d\xaa\x83\x5a\xa3\x86\x44\x82\xbe\x49\x68\x44\xf1\x47\xea\xea\xc3\xa0\x44\x72\x3c\x3c\x7a\x10\x8e\x8c\x9b\xbf\xdc\xf9\xe3\xb2\xb7\x39\xe4\x34\x37\xe6\xb4\xac\x69\xd5\x4b\x5b\xd0\xea\x5d\xae\x6a\xe7\x4b\xa5\xda\xf7\xc6\x7a\xa7\xe5\xa8\xb3\x6c\x31\x7b\xdc\xab\x8b\xc1\xbc\xd8\xae\x61\x92\xba\xbd\xc2\x7c\x42\x53\xde\x5e\xb6\x7b\x6e\x77\xfb\x7e\x3b\x5e\x42\x1e\xb9\x07\xbf\x4b\xed\xc1\xef\xfc\x3d\xf8\xd4\xec\x41\xa8\x0f\x12\xe2\x84\xbc\x15\x84\x55\xf9\x13\x82\x01\xc8\x75\xda\xf1\x28\x68\xd7\x2b\xc2\x7b\xe0\xe0\xb5\x65\xc6\x97\x0b\x95\xa9\x5b\xfd\x52\x49\x73\x6d\xbc\xab\x46\xc5\x09\x7e\xc1\xa6\xd5\x4f\x00\x6b\xd0\x8f\x52\x55\xb2\x8a\xfb\x53\xb5\xa7\x17\x69\xad\x4b\x6b\x51\x5a\x07\xf2\x72\xb2\xaa\xcb\x05\x09\x3f\x23\x4a\x9e\xf4\x1a\xb2\xaf\xb7\xeb\x5a\x0c\x9b\xe5\xb0\x1c\xb6\x84\xdf\x10\x3e\xfc\x69\x4d\xf8\xdd\x30\x5f\x36\x7c\x58\xd6\xf5\xb0\x6b\x07\x82\xdc\x4a\x2d\x1a\xd2\x76\x48\xaf\xaf\xd7\xc0\x45\x26\xc3\xd7\xcd\xf0\xba\xa9\xe8\xf2\x6e\xa8\xbf\xba\xc5\xc3\x75\x4b\x86\x36\x65\x5d\x26\x4f\xd9\xbb\x15\x99\xaa\xb9\xd7\x49\xf8\xaa\xdc\x5f\xf2\x54\x94\x7b\xd0\xfb\xe9\x01\x36\x03\x6d\xf0\x46\x13\x4e\xca\xea\x15\xab\xef\x72\x84\x15\x3a\xfa\x23\xf1\x44\xc7\xa5\x74\x2f\x43\x62\x3f\x0e\x2b\x2c\x4f\x4c\xdd\x9c\x84\x59\x67\x83\x58\x43\x65\x7e\x49\x9f\x38\x52\x2e\xef\xba\x89\x98\x65\xce\x10\xea\xc6\xd9\xb8\x05\x1d\x38\xe2\xf2\xea\x60\xa3\xf0\x18\xb1\x42\xf5\x9f\xa7\xe3\xf5\x49\x9a\x4c\x70\x12\x2d\xaa\x0b\x22\x65\xa0\xa5\xba\x83\x38\x09\x92\x2d\x26\xe9\x51\x60\xb1\xc5\xe7\xdd\xe9\x49\x27\x02\x7b\xa4\xf3\x94\x7a\xd7\x46\x7e\x06\xb0\x2d\x3e\x5f\xad\xdb\xab\x30\xe0\x7b\xda\x6f\xac\xf7\x97\x51\x56\x54\xe7\x9c\xba\x50\xd6\x16\xfb\xf7\x6a\x4b\x55\xf5\x5b\x6b\xcb\x9b\x9e\xd5\xc7\x1a\xae\xc3\xbb\x04\xf1\x41\x3b\xbc\x2f\x0d\xe0\x3b\xf4\xfc\x4d\x4c\xe6\xd6\x89\x02\x3a\x55\x48\xc2\xf2\xfc\xe9\x8f\xd6\x23\x5b\xa4\x51\x48\x93\xfd\xea\x52\xde\x73\xa7\x11\xbe\xb5\x81\xa1\x26\x9a\x82\xc3\xac\x57\xb4\x6d\x9b\x05\x2d\x05\xdc\x93\xbc\xba\x65\xaa\x76\xdb\x43\xf0\xc6\xe4\xed\xe9\x9c\xbb\xd0\x5d\x44\x64\xe3\x19\xa8\xe0\x6f\x30\x19\x98\x94\x7b\xe7\x6b\xc6\xc9\x25\x6d\x05\xe1\x72\x08\xfa\xd2\xb3\xc3\xa7\xaf\xf5\x65\xa8\x2b\xed\x7d\xa7\xb9\x12\xbd\xa5\xb5\x41\x2b\xe8\x32\xfa\x64\x3f\xd6\x33\xb2\x6f\x22\xf2\xae\x5d\x35\xb2\x11\xc4\xaf\xb5\x24\x81\x8f\xed\x71\xdb\x7f\xc2\x6c\xf1\x79\xe8\x42\x3e\xed\x71\x21\x7f\x61\x0c\xea\x76\x01\xa4\x48\x92\x41\x6a\x1b\x1c\x1c\xf3\x89\xbd\xd8\x4f\xef\xfd\xf9\x62\xc3\x61\x29\x14\x90\x2d\xc2\xdf\x90\xe2\x29\x31\x87\x6a\xfa\x44\x4d\x9c\x97\x21\xc5\x6c\x36\xfa\x94\xf6\x24\x92\x7d\x87\x30\x1c\x5e\x85\xfb\xd3\x3f\x2a\x55\xe6\x78\xf7\xa7\xc9\x65\xff\xf3\xcf\x4a\xf0\x87\x8a\x8f\xc9\xe8\x80\xcc\x50\x92\x0d\xaa\x4d\x13\xcf\x3c\x30\x44\xb9\xc9\x3b\x6f\xa0\x47\xb7\x5f\xc9\xe4\x1c\x9e\xc4\x4c\x53\xc9\xa0\xb2\xcb\x96\x88\x5e\x16\x67\xed\x21\xd1\x56\x6d\x89\x70\xbc\xcd\x4a\x37\xe1\x5d\xb3\x0f\x58\x6f\x4e\x84\xe9\xe8\x44\x85\x80\x07\x28\x63\xf7\x5b\x6c\x12\xfa\xab\x98\xf0\xee\x5b\x78\x8e\x8c\xbe\x60\xf6\xf0\x79\x69\xf6\xda\x0f\x54\x5c\xf9\xfb\x58\x1b\xdb\xed\xf5\xb8\x97\x46\xc2\xb8\xd1\xf1\x35\x9b\x34\x6c\xa1\xf7\x43\xa6\x5d\xa3\x32\xec\xe5\xcd\xd9\x22\xfc\x35\x49\x22\xc3\xe0\xe7\xbd\xaa\x4e\x08\xb8\xeb\x99\xfe\xa3\x78\xaf\x93\x0e\x8a\x88\x43\x1d\xa9\xe9\x4d\xe8\xe3\xd1\x0f\x9a\xaa\xa1\x41\x77\x94\xd0\x6a\xc5\xb7\xcd\x6a\x0d\x09\xa3\x83\x86\x67\xf3\xad\xb1\x04\x76\x4c\x59\x22\xf6\x18\x49\xb9\x88\x38\x9a\x82\x9b\x3b\xb2\x0f\xac\x54\x65\x11\xd9\x83\x67\x7a\x1c\x44\xdc\xe8\xd2\xe0\x71\x97\x73\xb8\x81\x9b\x89\xf9\x66\x33\x9b\x23\x93\x74\x75\x3c\xfe\x9a\x78\x68\x3d\x25\x8c\x52\x67\xe5\xd3\xd3\xb0\x84\xde\xb7\x92\x9a\xd4\xdf\xdf\xaa\x66\x43\xe2\x7f\xde\xf0\x97\xd6\xd8\x17\x6e\x04\xa7\x77\xcf\xe6\x98\x15\xc7\x0f\x99\x53\xbe\xad\x6b\x1c\x2d\xc4\x8c\xcd\x07\xf4\x10\xcc\x56\xda\x8b\x66\x9a\x23\xeb\x7f\xea\x30\x08\x93\x94\x31\x23\xf3\x41\x33\x1e\xef\x1c\xe9\x6c\x8e\x69\x71\xfc\x90\xba\xe1\x52\xe7\xc9\x07\x89\x7f\xca\xa2\x1f\x59\x35\x47\xb8\x2d\x9a\x49\x78\xfe\x96\x9b\x4d\xe3\x43\xab\xaa\x4d\x46\x10\xb8\xa3\xc1\xb8\x1b\x84\xe1\xfa\x1f\x3c\x72\x4a\xb0\x28\xb8\xe7\xf6\xe4\x46\x5b\xee\x79\x31\x4b\xca\xe8\x48\x6f\x39\x47\x03\x16\x16\x4a\x09\x66\x39\x43\xdb\xbc\x81\x60\x13\xaf\xb0\x4f\xb0\x66\x56\x44\x71\xfc\x50\x7c\x69\x3d\x1b\xc5\xd1\x11\xfa\x9e\xe4\xe0\x8c\xb0\x05\x5f\x38\x43\x20\x7d\x1e\xdf\x86\x1e\x6d\x83\x90\x53\x6e\xef\x6e\x24\xc8\x23\xc4\xbd\xc4\x67\xfc\x23\x60\x38\xed\x1d\x5b\x7c\x1d\xae\xfc\x0e\x0b\xa9\x1e\xc4\x4c\xc8\xc5\x57\x2a\x30\x6d\x15\x5f\xe4\x08\xd3\x62\xc4\x36\x1b\xb0\xc2\x18\xbf\xd7\xa6\x08\xa3\x3d\x61\x4b\xbf\x2c\x57\xa0\x3b\x21\x5c\x7a\x87\x4c\x63\xe5\x12\x54\x14\x81\x7f\xa4\x7d\xae\xe0\x4a\x36\x9b\x51\x89\xee\x99\xbd\xc2\x3a\xf8\xab\x79\x04\x95\xe1\xbe\x06\xd9\x19\x37\x36\x8a\x1b\xda\xd2\x8b\x3a\xa2\x84\xc7\x80\x60\x2a\x07\xbe\x96\xa4\x5f\x17\xc7\x0f\x6b\x07\xb3\x59\x1b\xd2\x5f\x14\xed\xac\x9e\xe3\x65\xb1\x88\x68\x7b\x24\xf9\xcc\x52\x13\xf4\x78\x9c\x2f\x35\x19\xe3\xb5\xa2\xe0\x05\x42\xdb\xb5\x6e\xae\x8f\x66\xd7\x9a\xd1\xd8\xcc\x00\x8f\xea\xba\x37\x6e\x27\xb5\xa7\x45\xe0\xed\x8d\x3b\x5a\x15\x9c\x89\x41\xb5\x38\x5a\x76\x5f\x0f\x10\xb8\xa2\xa5\xa6\x2e\x79\x49\xf2\xf3\x10\x0f\xf8\x01\x13\x4e\xd0\x40\xf7\xe7\x5f\x3c\x9b\xf3\x98\xa3\x9e\xb3\x0d\x62\x5b\xbc\x60\x48\xb1\xb3\x97\x22\xbd\xa3\xfb\xe9\x97\x20\xed\x52\xd0\xe2\x43\x18\x37\x2c\xfe\xa1\x8c\xd9\x73\x03\xe9\x7e\x73\x72\x83\x3e\x75\xc0\x3a\x0e\xe7\x89\x58\x34\x0c\x23\xcf\x0a\x38\xdc\x70\x07\x7b\xc7\x97\xaa\xb4\x10\x04\xaf\xb7\x56\xde\x0b\xb7\xbb\x40\xe3\xf1\x63\xbd\xa9\xbc\x51\x3e\xea\x97\x08\xfa\x80\xc6\xd2\xed\x73\x74\xfa\x98\xe4\x1c\xd3\xe2\x9b\xf4\x87\x81\xec\x39\x15\x9d\x0f\xe4\x89\x8f\xf3\x3f\x08\xbf\xa3\xfc\xc8\x76\xca\x8f\xcc\xca\x8f\x68\xfa\xce\x43\xdd\x33\xd2\xed\x21\x62\x96\xa1\x18\x4c\xe5\x22\x24\x55\xcf\x03\x64\xab\x14\x41\x91\x09\x65\x15\x79\xfb\x4a\x6e\x66\x59\xe8\xc1\xc9\xa8\x28\xb8\xcb\x19\xdf\xae\x00\x1e\x89\xe3\x13\x84\x47\xc7\x03\x0b\x2c\x9e\xef\x1f\x34\x26\x28\x3c\x57\x3a\x3b\x57\xcc\xa5\x22\x4e\x94\x41\x3f\x60\xda\x89\xa2\x8a\x21\xf6\x49\xec\xd1\x6e\x79\x6c\xc0\x00\xc4\xc4\xd3\xc5\x7b\xc0\x14\xba\xb8\x09\x71\xf7\x3d\xc6\x05\xa7\x23\x25\xc6\xeb\xc1\x39\xa0\x83\xd6\xd8\x74\xf1\x0f\xd2\x45\x2e\x04\x84\x04\x91\x02\x85\x48\x68\x06\xc7\x78\x9f\x30\xeb\xcd\x09\xda\x46\x9e\x15\xff\xd0\xe9\x55\xdd\xf0\xed\xab\xef\x89\x4f\x5c\xe1\xa9\x27\xd2\x53\x24\x7a\xa4\x2d\x08\x2d\x94\xf3\x62\x21\x71\x6d\x2f\x8f\xbb\xf7\x54\x98\xb9\x48\x12\xfe\x25\x53\x77\x55\x64\xc6\xe7\xe1\x20\xe0\xa0\x15\x7e\xba\x99\xaf\x3c\x37\x11\xdc\xa8\xb1\x1b\x71\xe4\x51\x4e\x0f\xb7\x3b\x34\x4a\x4a\x41\x0a\xba\xb7\x2d\x84\x87\x5b\x26\x05\x05\x65\x5d\x04\x94\x04\x81\x5b\xcc\xb0\x64\x26\xca\x2e\xf7\x95\x8a\x76\xd2\x4c\xf3\x7f\x99\x72\x52\xcf\xff\x24\x3b\xe2\x47\xd9\x27\x99\xdc\x79\xf6\x72\x6b\x8d\x3a\xd6\x01\x4d\x37\xb6\x0f\x6d\x62\x23\xd5\x70\xcd\xd4\x9d\x5a\x85\x61\xe7\x0c\x6f\xcb\x76\x78\x43\xf8\xdd\xb0\xa6\x6f\x48\x7d\x37\x2c\x87\xd7\xb4\x15\xe5\x1b\x62\x55\xfa\x7c\x5d\x7c\x95\xaf\xb1\xc0\x75\x17\x4a\x8b\x98\x1b\xc0\x3f\xe7\x62\xd2\x1a\x68\x54\xae\xbf\x52\x7e\x98\x86\x5f\xc9\xcc\x48\x3c\x5f\x0f\x25\xc8\x48\x39\xda\xb7\x0e\x3e\x7b\x2b\x78\xb9\x10\xc3\x55\x79\xe7\x30\x6d\xb9\xb7\xdc\x7f\x26\xd1\x51\x81\x7b\xa0\x24\xc2\xa3\x83\xa0\x53\xe5\xb8\x22\xd0\x54\x2e\xcc\x36\x17\x00\xce\x88\x3b\xe6\x3f\x0a\x49\x3b\x70\xa3\xf3\x74\x0c\x3a\xa9\x87\x4c\xef\x64\x42\x2b\x0d\x49\x43\x54\x51\xd2\x09\xc0\x21\xdd\x00\x1c\xeb\x17\x14\xbc\xc1\x65\xe2\x28\xec\xed\xda\xf4\xaa\x6e\x8e\x7f\xe0\xe5\x6a\x45\x38\x6e\x0a\x0e\x59\xbb\x70\x69\xe8\x0d\x6c\x2f\xad\x14\x30\x2c\x68\x49\x10\xe1\x53\x6a\x48\x2f\x8d\xf7\xb8\x2e\xe8\x64\xc7\x25\x34\x43\xb3\x76\x0e\x27\x9f\x72\x84\xd5\x61\x36\xba\xed\x3f\x91\xbb\x69\x8b\xe5\x8b\xe9\x7a\xbb\xdd\xda\xc1\x6e\x73\x8e\x05\xf8\x5d\xc9\x9e\xb4\xe7\x60\x5b\x94\x13\x57\x0f\xaf\x0b\xd5\x24\xae\x8b\x66\xd6\xce\xc7\x63\xf9\x2f\xac\xcf\xc0\xf7\x9f\x5d\x8f\xc7\x96\xec\xeb\xcd\x26\x97\xa5\xa0\x02\xc0\x54\xd8\x3a\xe9\xa0\x42\x08\x8d\x84\x85\xe5\xde\xe4\x94\xc5\x3d\xad\xa6\x54\xdd\x04\x35\xdb\xa0\x3b\x71\x9a\xb3\x82\x78\x8a\x7f\x89\xa6\xea\xc9\xfd\x16\x07\x87\xbe\xdc\xbf\xc8\x4b\xde\x5d\xe3\x35\x16\x08\x6d\xb7\x90\xa7\x97\x60\x86\x70\xd0\x8d\x64\x65\xaa\x67\x18\x12\x3c\xf5\x47\x15\x2c\xc2\x34\xa7\xc5\xfd\x16\xd3\x19\xdc\x7e\xcf\x8b\x7b\x10\x49\x84\x8f\x6a\xa8\x2d\x56\x18\x22\x9e\x9a\x2d\xa6\x68\xdb\x23\xa1\x99\x7b\xdd\x4a\xea\xce\xee\x97\x72\xf0\xb3\x3f\x6d\x2c\xaa\x70\x1b\xef\xa7\x78\xe3\x45\x4c\x4d\x6e\x98\x15\x21\x6f\x1e\xd5\xb5\xfc\x29\x75\xfc\xc8\x48\x9c\x33\xc9\x0a\x13\x77\x0a\x1a\x6c\x3a\xdf\x71\x85\xe0\x6e\x63\x30\x55\xec\xa2\xf4\xee\x7a\xf2\xb6\xf8\x2a\x6f\xb1\xc0\x7d\x1c\xf4\x51\x5d\x2b\x56\x42\xdf\x9d\x8b\xd1\x80\x8b\x3d\xaa\xeb\x14\x13\x8b\xb5\x2f\x98\x91\x7d\x9c\xcd\x8c\xec\x37\x4e\x32\xdc\x66\xca\x00\xf3\x03\x29\xca\x3c\x7b\xfa\xec\xf1\xf7\x7f\x78\x20\xda\x07\x17\xbc\x64\x95\x9f\xbf\xed\x37\x81\x4b\x9e\x5b\xa5\x3f\xfc\xea\xbd\x36\x7e\x24\xf8\x4f\xfb\xac\x99\x81\x3b\xdc\xec\x07\x32\x0f\x5d\x25\xa4\x3c\xa2\x66\xda\xe2\x16\xb4\xc9\x94\x5e\xf6\xb5\x2a\xdd\x1e\xd0\x4c\x9c\x04\xa9\xd3\x84\x31\x61\xee\xf2\xc9\x3b\x97\x5c\x44\xef\x8d\x7e\xf8\x25\xed\xf6\xe3\x95\x85\xab\x3b\xea\x60\xa0\xa3\xce\x7b\x8d\x30\x92\xb3\xe6\xbb\x87\xbd\xf3\xad\x6f\xdc\xc4\x42\x8a\xee\xd6\x73\x23\x35\x49\x66\x95\xd2\x13\x78\x1c\xc0\xc6\xe9\x8f\x74\xb6\xec\x01\x9b\xfc\xbd\xa1\xe1\x2e\x67\x9e\xfc\xd9\xde\xb1\x45\x10\x6e\x9b\x61\x8e\x79\x68\xd1\x89\xc7\xaf\xae\x79\x30\xdd\x19\x9a\x13\x44\x98\xbf\xd2\x3f\x31\x2d\x2e\x73\x6f\xa4\xbb\x01\x9d\x19\x72\xc6\x2b\x53\x5e\xf2\xbc\x9c\xa2\x41\x33\x1e\xa7\x42\x83\x72\xb5\xa2\xbb\x46\x1f\x27\x1a\x3c\xd9\x33\xf9\x09\xe3\x60\xdc\xe4\x60\x1f\x0d\xef\xde\x02\x83\x8e\xa9\x43\x7f\xad\x09\x52\x77\xfc\xa4\xf8\xcc\x4c\xa9\x14\xb0\xe5\x86\x98\xf1\xa3\x93\xb9\x3d\x0e\x72\x16\x4c\x4d\x80\x96\x93\x53\x95\x32\x73\xd2\xe3\x83\xb7\x77\xeb\xf4\xf9\xee\xa9\x6d\xd4\x2f\xca\xec\x6d\x78\x87\x14\xa4\xda\x4e\x0b\x54\x3b\xac\xa4\x91\x8f\x08\x09\xdd\x14\x76\xf6\x27\xb5\xc3\x73\x27\x2d\xf9\x0b\x82\xb9\x3f\x1a\x8d\x45\xfc\x8b\x0f\xca\x60\x39\x77\x07\xb6\x07\x43\x27\x94\x27\xec\x9e\x6c\xde\x65\x4f\x52\x29\x6b\xa4\xf6\x64\x83\x06\xe5\x78\x5c\xa6\xe3\x70\x99\x37\xbc\x3e\x04\xa7\x0f\x33\x3a\xbd\x15\x7b\x58\x7a\xde\x60\x7f\x28\xfd\x08\x4f\xbf\xe0\x54\xc5\x38\x51\xfe\x00\xd3\xa0\x3e\xbf\xe0\xe0\xbc\x01\xe8\x81\xb9\x40\xa0\x5e\xe8\x5e\x4c\x25\x53\xa3\xcb\x5c\x6c\x36\xdc\x5c\x45\x99\x61\x0e\xd8\xbb\x0c\xb3\x41\x5b\x52\xb7\x64\x48\xa5\x38\xc4\x74\xb4\x1c\xd9\x0e\x12\x5c\x24\x18\x18\xa0\x29\xc8\xe1\x7a\x11\xe9\x9d\xc1\xfa\xb5\xfd\xc8\x75\xf5\x1a\x76\x7a\x3a\x3d\xdf\x47\x3e\xdb\x4c\x0c\x0e\x30\xf2\x60\x08\xea\x78\xab\x68\xbb\x68\x18\x23\x8b\x6e\x0a\xb7\x5f\xe0\xd0\x4d\xe2\xaa\xe6\x1d\x27\x7a\x17\x89\x06\xf1\x37\x7d\x0e\x9d\xe1\xc8\x94\x0f\xe7\x1f\x52\x3e\x9c\x7f\xf0\x7c\x38\x9d\x60\xfe\x5f\xbf\x6a\x01\xdc\x0e\xf3\x8f\x26\x64\xc7\xc1\xa1\x78\x76\x24\x1b\x27\xa8\x0d\x4a\x60\x2b\xba\x2a\x5b\xf6\x89\x18\x5e\x10\xc2\x86\x1a\x14\x9f\xb6\xa4\x1a\x3e\x18\x82\x1b\x4c\x8e\x82\x12\x0b\x40\xd2\xf1\x3c\x43\x40\x6a\xfe\x0b\xc1\x7f\x25\x98\x88\xb4\x97\x83\x10\x85\x76\x4c\x7c\xf6\xcd\x9f\x71\xac\xa0\x71\x5c\xba\x69\x6e\x73\x13\x11\xae\x35\x40\x51\x90\xb4\x23\x8e\x82\xee\x42\xbe\x08\x5a\xfc\x1d\x8b\x04\x62\x05\x84\x35\x3c\xb7\x49\x08\xfe\x48\x72\x01\x3e\x20\x1a\x10\x80\x2e\xe0\x34\x34\x85\x8d\x2a\x61\xcd\xb4\x3b\xd2\xc7\x4e\xce\x9d\x5e\xb9\xbb\x98\x67\xcf\x81\xe1\xfc\x89\xe4\x30\x0e\x78\xab\xc5\xb9\xb3\xf2\x86\x80\x08\x67\xdc\x2c\xab\x10\xed\x26\x78\x15\x25\xa3\x51\xef\x74\x43\xcf\x89\x58\x5c\x99\x60\x0e\xb8\x87\x96\x0f\xba\x1f\x28\xcf\xae\xeb\xd2\x49\x00\x67\x84\xdf\x50\x2f\xb9\xef\xe4\x5c\xaa\xb6\x6f\x48\xf5\x48\x09\xef\x3f\xad\x49\xeb\x39\xd7\x4f\x5a\x08\xa0\x7b\xd4\xb6\x84\x8b\x97\x44\x5c\x35\xd5\x93\xb2\xae\xdb\x57\xcc\x1a\xac\xcf\x40\xdf\x93\xba\x97\x2e\xfc\x5a\x36\x18\x36\x07\x6f\x2f\x09\x23\xbc\x14\xe4\x4c\x94\x8b\x37\xb2\x10\x69\x9f\x37\xfc\xb5\xea\x3e\x2c\xaa\x06\xe5\xb7\x71\x26\x4a\x2e\xe2\x51\xfb\x05\x9e\xb1\xca\x7b\x7d\x0e\xd8\xf8\x3f\x94\x54\x78\xb3\xb1\x2d\x15\x53\x69\x91\x63\x08\xd1\x6a\x96\xee\x8d\x4e\x62\xa6\xdd\xe5\x17\x0d\x6b\x05\x5f\x2f\x44\xc3\x0b\xd0\x69\xce\xe1\xdd\xf9\x79\x51\x2a\xe4\x31\x5c\xe3\x05\x5e\x16\x6d\x57\xa7\x5c\x2a\xf7\x5e\xf3\x19\x82\x98\x35\xf0\x18\xd8\x16\x2f\xa5\x48\xd6\x8a\x92\x09\x9a\x04\xa3\xd3\x25\x14\x45\x3c\x4d\x26\x80\xd3\xc6\x7c\xf7\x4a\x32\xd2\x65\xaf\xa8\xdd\x03\xe3\x7b\x6a\xdc\xb8\xce\xd2\xa4\x93\xa3\x3e\x99\x1f\x0c\xb4\xef\x5d\x99\xa8\xc1\x1e\x24\xf9\xbf\xe3\x78\x77\x45\xe7\x1c\x32\xe4\x3d\x2a\xc5\x72\x62\x6e\xe9\x7a\x9a\xe8\x62\x2f\xf4\xee\x4b\x22\x9b\xeb\x1f\x4c\x87\x22\x12\x28\xea\x9d\x13\xbc\x17\x1f\xbd\xab\x19\xf0\xb9\x6c\xf5\x7a\x87\xfd\x23\xa5\x91\x7c\x4b\xf4\x9d\xc9\x20\x8a\xdb\x49\xb1\xca\x6f\x89\x0e\x02\xe3\x1a\x16\x9e\x81\x93\x96\xd9\x2d\xb6\x05\x38\x24\xe1\x15\xb0\xb9\xbf\xab\xc3\x19\x61\xa6\x6e\x24\xb1\xa6\x97\x43\xcc\x35\x3b\x17\xb7\x6a\x48\xfb\xfa\x6e\x45\x9e\xbd\xa5\xad\xd0\xeb\xb9\x48\x22\x42\xc6\x96\x1b\x73\x3c\x8a\xae\x55\xc4\x81\x52\x79\x39\xe2\x3a\xa5\x94\xcc\xdd\x28\x6c\xc4\x8e\x2b\xa3\x01\x84\xa4\xed\x37\x0d\x93\xac\x89\x56\x68\x3c\x86\xff\x0b\x3e\x39\x37\xec\xf4\x45\x95\x53\x5c\x22\x84\xe1\x05\x53\xe5\x74\x5e\x8e\x3f\xe5\x1c\x4d\x2e\xd6\xb4\xae\x72\x25\xed\x52\x4c\xab\xa9\x2c\xe1\xfc\x00\x5a\x0f\xcf\x39\x07\x97\xab\x10\x11\x13\x9e\xb9\x00\x05\xb0\xdd\x82\x1b\xf5\xd2\x1f\x43\xbf\xa6\xaa\x8f\xd8\x50\x49\x05\xaf\x6c\x57\x1b\xd4\x5e\xd9\xfc\x69\xf2\xa9\x5e\x70\x6c\x02\x8c\xf1\xb2\x27\x05\x66\x0f\x07\x4c\x27\x12\x84\xc2\x61\x26\x4e\x59\x78\x49\x3b\xa8\xc6\x3e\x2d\xc9\xd7\xba\xb8\xba\x77\x5e\x7a\x8f\x7a\x84\x67\xbd\xc2\x34\x17\x08\xb7\xc5\x2b\xb8\x73\xc0\x6b\x2d\x18\xa3\x49\xdd\x34\x6f\xd6\xab\xbc\x75\xb3\x53\x70\x87\xde\x6d\xc3\xeb\x9f\x37\xfc\x45\x05\x75\x4f\x5f\x1a\x57\x29\x37\x98\xb5\x14\x6d\xc1\x5a\x0d\x07\xf2\xff\x72\xaf\x86\xd9\x11\x3b\xca\x14\x30\x22\xad\xa6\xc3\xec\xc8\x30\x3d\x95\x50\xe1\x2e\x44\x1a\x5c\x83\xba\xb2\xf4\x1b\x4f\x40\xb3\xeb\xa4\x15\x61\xbc\x89\x51\x94\x41\x38\xf1\xf1\xd0\x3b\x97\xac\xc2\xa6\xc0\xf1\xc9\x23\x11\x26\xe9\x72\x6b\xe9\x1e\x21\x25\x0b\xc8\x19\xdf\x79\x69\x2f\xd3\x4f\x75\x42\x52\x74\xda\x37\xbc\x69\x0e\x5e\x3c\x02\x24\xd9\x4b\xde\xac\x99\xae\x0f\x37\x2c\xdd\x87\x23\xd3\xcb\xe3\xe8\x95\xea\x6f\xb3\xd9\xfd\xde\x8c\xc7\xc2\x8c\x77\x47\x84\x77\xdc\xb1\x10\xe4\x16\x26\x5a\xb5\x34\xc1\x46\x89\xc9\x20\x8a\xd2\x60\x1f\x8e\xc7\xc4\x87\x41\xcc\xed\x0b\x84\x7d\xea\x02\xbf\xcd\x90\x40\x60\x98\x7d\x94\x46\x82\xf0\x2e\x8f\xe6\x20\x79\xb6\x1d\x7e\xb7\xd9\xf4\x17\x10\xe7\x3a\xda\xbf\x88\xc4\x07\x58\x3f\x25\x93\xf3\x95\x97\xdd\x63\xba\x73\x42\xcd\xf6\x7d\x7c\xf7\xa2\x6a\x7b\xbd\x78\x1d\xd6\xa7\x51\x06\x25\xf9\x36\x0a\xb8\xb0\xe3\x2e\xcb\x67\x54\x63\x30\x7b\xdb\x93\x61\x31\xa3\x73\x4b\xd6\x6f\x72\x6f\x58\x25\xdc\x39\xa9\xbb\x2d\xed\xb0\xe0\x5d\x3e\xb9\x49\x86\x41\xaa\xbb\x30\xb9\xa1\x4d\x9e\xd5\xcc\x90\x85\x9c\x91\x1d\x67\x96\xef\x24\xd4\x73\x3d\xed\xbb\x4e\xd0\x8e\x63\x04\x82\xfb\x68\x77\xd5\xb9\xfe\x39\x17\x82\x66\x47\x40\xb7\x70\xa8\xec\xf0\xa2\xd0\xe4\xa5\xfc\x28\xda\xa3\xec\x13\x47\x59\x9f\xc0\x64\x7c\x92\xe1\x45\x41\x3d\xc4\x9a\xc3\x5d\x20\x68\xe2\xf2\xb0\x45\x58\xdf\xfe\xaa\x9b\x43\x93\x4d\xd6\x5d\x13\x55\xa5\x28\x27\x35\xad\x8a\x05\xc0\x28\x99\xdb\x44\x8a\xd2\x79\x73\xa9\xcd\x81\x90\x23\x30\x05\x69\xa2\x1e\x8f\x69\x9c\x0c\xda\x26\xd5\x4d\xdc\x3a\xea\xaf\xcf\x90\xf6\xca\xf2\x98\xa7\xf6\x9a\xc4\xca\x9f\x01\xcb\xed\x86\xcd\x01\x15\x6e\x9a\x44\x5a\x90\x14\xa9\x13\x8f\xd4\x8f\x1f\x32\x77\x71\x60\x80\x89\x8b\xe4\x86\x9c\xb1\xb9\x97\x93\xa7\x27\x0a\x8d\x27\x86\xf5\xfa\x8a\x37\xeb\xcb\xab\xe7\xbe\x1e\xdb\x2b\x7a\x75\x39\x9b\x7f\x73\x75\x90\xa6\x39\x20\x7e\xfa\x8b\x1c\x59\x7f\x90\x0e\x11\x0d\x43\x91\x81\x56\xdb\x9c\x1a\x3f\x2f\x5f\xed\x9e\x84\x53\x41\xb1\x48\x24\x4d\x05\x4f\x29\x49\x3d\xe3\xf1\x28\xbe\xe0\x87\x94\xa3\xf2\x83\x1c\x79\x51\xf9\xaf\x95\x93\x35\x95\xb9\xf9\x65\x9d\x56\x18\x3a\x65\x53\x12\x67\xc0\x53\x54\x48\x7c\x2a\x24\x3e\x15\xc6\x82\x10\x16\x46\xc4\x0b\xbe\xa9\x2b\x08\x44\xdc\xd6\xb9\x13\x06\x8f\xad\x18\x40\x2b\x70\xf0\xf2\x70\x4b\xbb\x79\xc6\x33\xe8\x8a\xb2\x4b\xc5\xe7\x3e\xf1\x4f\x11\xb0\x4c\xdf\x47\x38\xa8\x58\xf3\x1c\x3e\xa5\x36\xe5\xb5\xd8\x42\xbe\x55\x3d\x88\x68\xad\x4b\x84\x8f\x2d\x96\x92\x6f\x50\x99\xb4\xf4\x1f\x64\x3c\x26\x62\xb7\x53\x1d\xdc\x08\x3e\xaa\xeb\x6f\xbd\xaa\xa4\x45\x7e\x32\xbc\xa0\x59\xbc\x2e\x54\x60\x14\xeb\xca\x35\xeb\xf1\x38\x07\xef\x73\x15\xc6\xc6\xf0\x1a\x59\xff\xf1\x06\xe1\x12\x4e\xa8\x64\x7f\xfd\xbe\x81\x3d\xf9\x8f\xf3\xc4\x07\x1b\x57\xbe\xae\xeb\x3d\xbc\x97\xdb\x46\xb2\x13\xe1\xa5\x73\x0a\xea\x6b\x9f\x3e\x7d\x02\xf5\x54\xef\xe5\x36\x42\x01\x04\x73\x9f\x91\x01\x80\xdf\x68\xc4\xac\x0b\x9c\x94\xed\x16\x4d\x59\x93\x76\x41\x9e\x03\x33\x56\x1b\x18\x37\xd6\x55\x10\x97\x1e\xe3\x82\x73\x2a\xa5\x79\xae\x7d\x7c\x1f\xed\xed\xdf\xf8\x6e\xfe\xc4\xb8\xf9\x07\x04\x36\x28\x67\xf5\xbc\x58\x62\x40\x93\xcf\x97\x78\x61\x12\x30\x22\xdc\xce\x96\x13\x5a\xcd\x8b\x85\xb3\xce\x56\xce\x71\x92\x07\x67\x72\x4e\xc2\x66\x31\xb1\xed\x0c\xec\xb1\xc9\xed\xf9\x29\x3c\xc7\xb9\xab\x78\xde\x52\x5f\xb7\x1f\x86\x1b\x97\x45\x3b\x6b\xe4\x80\x01\xd6\x5b\xfd\x59\x34\xb8\x44\x65\xb7\xff\x06\x6d\x4d\x7f\x26\x38\x02\x2f\x1c\x50\x7c\xfd\xe5\xc2\xcd\xdc\xb2\x10\xb3\x7a\x3e\xe0\x6a\x36\x36\x1b\x4d\xbe\x4b\x3f\xfa\x61\x95\xaf\xbd\x2f\x5a\x1d\xe6\xf8\xa9\x59\xf2\x8c\xcf\x71\x53\xb4\x33\x0a\x63\x87\x8b\x03\x6f\xbc\x72\x2a\x72\xb1\xd9\x78\x5e\x94\xcf\xde\xae\x00\x9b\x12\xc4\x03\xaa\x53\x41\x5d\x90\xe1\x8a\x93\x96\x30\x1d\x85\x43\x86\x9a\xea\x86\x2b\xde\xdc\xd0\x8a\x54\xe6\xa8\xc5\xc3\x8b\xb5\x18\x52\x01\x3e\x96\xac\x11\xc3\xa5\xe4\x99\x13\x00\x97\xa0\xcb\x9c\xba\x81\x5f\xe3\x9b\x90\xf2\xee\x8a\xe3\x87\x77\x5f\x36\x0f\xef\x8e\x8e\xd0\xcd\xec\x6e\x5e\x94\xb3\xbb\x79\x2c\x49\xad\x81\x19\xbc\x45\x2e\x4c\xe5\xa2\x38\xc6\x97\x45\x7e\x5d\xb0\x89\x54\x1b\x56\x3a\x14\xf8\x79\xc3\x9f\xeb\x5d\x70\xda\xfb\x46\x69\x15\x37\x68\x3a\xbb\x99\x23\x33\x85\x17\x5f\x5e\x3e\xbc\x90\x53\x68\x7a\x38\x2f\xae\x67\x17\x73\x7c\x0b\xff\x99\x6d\xf3\xcc\x1b\xfc\x2d\xc2\x67\xe1\xcf\x57\xc5\xf1\xc3\x57\x5f\xde\x3e\x7c\x65\x96\xe2\x6d\x71\x3e\x7b\x35\x8f\x70\xa8\x07\x67\xb3\x57\xf3\xe2\x2d\x7e\x06\xff\xc9\xd3\x91\x2e\xf3\xdb\xdf\x9f\xa0\x40\x0c\xfa\x8a\xe4\x0c\x73\x2c\xf0\x33\x4c\xf0\x3a\x75\x2a\x5e\x41\x20\xc9\x16\xa1\xc9\xa2\x14\xb1\x73\xb1\xce\x76\x8e\xd0\x16\xe5\x67\x2a\xda\x64\x48\x97\xb9\x54\xde\x9e\x19\x39\xe5\xbe\xca\xdb\xd9\xd9\xec\x78\x2e\xa9\x04\x6d\xb7\xea\xb2\xcf\x7c\xff\xa3\xe2\xf8\xe1\xa3\x2f\x9b\x87\x8f\x8e\x8e\x50\x95\x93\xd9\xa3\x39\xd2\xa6\x36\x07\xc4\x98\x12\x37\x5e\xe5\x4a\xce\xcf\x85\x73\x13\x8c\x14\x77\x8e\x26\x31\x46\x23\x5e\xc2\x3d\xd7\x0e\x69\x5c\xe7\x26\xa7\xda\x1b\x3f\xa5\xea\x73\xcc\x90\x91\xc6\x5f\xc1\xaf\x9e\x01\x94\x61\xb6\x6a\x0f\xc5\xc5\xd8\x08\x53\xe6\x0f\x2c\x3c\x47\xd8\x50\x3d\xe8\x0a\x97\x83\x3d\x8a\xbe\xec\x28\x1c\x7e\xf2\xab\x95\x15\x4a\xcd\x68\x35\xa5\x80\xce\x6c\xee\x70\x91\x37\x65\x7e\x26\x76\x24\xb9\xfb\x78\xfc\x27\xaf\x90\x3b\x48\x47\x23\xb8\x60\x36\x41\x20\xb9\x36\xc7\xee\x1e\xc5\xab\x9c\xec\x5b\xd0\x00\x91\x63\x69\xcf\xa2\x0f\x28\x37\xf7\x69\xd7\xef\x20\x40\x7b\xc9\x98\x0f\x77\x41\xf6\x75\x3c\x9e\xd4\xf1\x3c\xe7\x50\xaa\x33\x75\xaf\x21\x14\xb0\x83\x68\xcf\x4e\xd9\x94\x4d\xae\x38\x59\xe2\x5a\x3b\xc6\x9b\x0c\x82\x02\x97\x78\x8d\x29\xc2\x8b\x5e\xad\x4e\x17\x35\xee\xf1\xbe\xe5\xe0\x93\xa1\x62\xdd\xd0\x3d\xf8\xcd\x6b\x7d\xae\x2e\xbe\xcf\xeb\xe2\xab\xbc\xc6\x02\x2f\x10\xfe\x47\xfe\x18\x73\xf4\x4e\x8e\xa1\xe6\x93\x62\x1f\x77\x3d\x1a\xa7\xe4\xb1\xe2\xcf\x44\x41\xbb\xc9\xcf\x38\xdc\xe9\x3d\xf5\x2d\xda\x35\x39\xfc\xa6\x84\x16\x47\x02\x9c\x37\x6d\xf5\x54\xbe\xd8\xc6\x74\xd2\x97\x7d\xbb\xd7\xa7\xc3\x78\x19\x3a\x84\x47\x8f\xa8\xcc\x71\x3f\x9b\x1b\xef\xf6\xce\xde\xd7\xf3\x55\xc6\x78\x98\x90\xbb\x87\x77\x21\x28\xc1\x25\xfc\xaa\x6c\x9f\x92\xeb\x52\x98\xa9\xaf\x74\x36\x0e\x5c\xab\x97\x8f\xd8\x9d\x7f\xf3\x09\x29\xdf\x17\x9d\xf6\x60\x7f\xe0\x65\x51\x6a\xb3\x9a\x07\xe4\x89\xab\x82\x09\x73\x13\xa0\xe0\x2a\xc1\x91\x1a\xb2\x1d\xc9\x3f\x54\x53\xa4\x1a\x8f\xf3\x44\xfa\x92\xc6\x27\xd6\xcd\xc6\x5d\xa5\x5b\x25\x6c\xb9\xd9\xac\x37\x9b\x76\xb3\x19\x55\xe3\xf1\x68\x11\x42\xeb\x84\x94\x1e\xf5\x08\x93\x0f\xb3\x79\x55\xd4\xb2\x2e\x5e\x15\xeb\xcd\x66\x31\x1e\x47\x81\x0d\xa6\x2f\xa2\xf5\x3d\x1d\x8c\xac\x42\xb8\xc6\xe3\x51\x3b\x1e\xe7\x57\x9b\xcd\x4a\x9f\x02\xd7\x7a\x74\xbd\xb1\x2c\x34\x3a\x9a\xc1\x80\xae\x73\xb3\x93\x0e\xbe\x8e\x0d\x63\xb9\x96\xe4\x45\x97\x39\x8c\x55\x76\x07\xbd\xdd\x7c\xd8\xde\xba\x36\x88\xfc\x46\xf6\xbb\x93\x24\xf5\x25\x83\x38\x80\xe6\xa3\xe4\x2d\x33\x7b\xa1\x44\xcc\xfc\xc2\x8d\xd4\x9e\x6f\x12\xfb\xbe\x09\xa2\x23\xb5\xcd\x30\x99\x0f\xf5\x9f\xc9\x7b\x5d\xa6\xd5\x03\xb8\xaf\x2d\xac\x03\x75\x02\xc3\xad\xd4\xb5\xa9\x1f\x44\xf3\x11\x19\xaf\x1d\x88\xc7\x7a\x61\x95\x4e\xf3\x3e\x16\x6c\x80\xb9\xf6\x46\x1f\xf5\x7c\xd4\x7b\x70\x5e\x49\xb5\x76\xa4\x5f\x53\xf6\x46\xf9\x2c\xf5\xf2\x5e\x9f\xfa\xd2\x8c\xe9\xd4\xee\x42\x7f\xdd\x52\xbc\x24\x31\xc9\xa6\xf9\x53\xe2\x8b\x2a\x06\xaf\x6c\x9a\xd8\x4e\xa0\x25\xba\xfb\x03\xd3\xe5\x21\xe7\xc8\xbe\xc3\x03\x9a\xb6\xf6\x33\x58\x3a\xb5\xe7\xfb\xf7\x92\x62\x7d\x30\x5e\xdc\x41\x5a\x86\x08\x94\xd4\xc9\xd2\x16\x4d\xff\xc9\xb2\x56\x2f\x53\x27\x4b\xdd\x69\x4f\x9d\x2c\x8b\xa2\x49\x9c\x2c\x4b\xef\x64\xc1\x55\xb1\xe3\x60\x59\xc0\x01\x51\x6e\x36\xc0\xae\x6b\x38\x87\xe8\x78\x4c\xfd\x0b\x09\xe4\xd8\xa5\x6f\x12\xeb\x35\x8f\xd3\x40\xf6\x44\xd0\x66\x74\xcf\xb6\x9b\x18\xed\xba\xe9\x23\x68\x3d\x1e\xc3\xe8\xf0\xaa\x68\x37\x9b\xda\xb0\x43\x7c\x5d\x44\xa7\x9e\x42\x31\xb2\x3f\xe1\x18\x5a\x8c\xc7\x52\xc2\xd6\xc7\x90\x1e\xc5\xf5\x69\x1f\x11\xec\xb8\x57\xa4\x66\x44\x37\xc5\xe8\x5a\xe5\xfc\xb1\x5d\x49\x2d\xc4\x7c\xfe\x78\x7c\x93\x6a\x3e\x98\x16\x34\xa5\xe3\xf1\xe8\x3a\x79\x25\x44\x13\x1b\xa6\x77\x72\x77\x6e\x14\x85\x00\x95\xbe\xd2\xbd\xdf\x2a\x64\xb1\x10\x89\x13\xfc\xfa\xf6\xa0\x75\x9a\x8d\xd2\xc4\x3e\xdb\x1a\x7e\x09\xcc\xc6\x72\x5b\x68\xce\x93\x1a\x85\xc7\x60\xde\xe4\xbb\x0e\x99\x20\xce\x6b\x40\x0b\xba\xd9\xa4\xdc\xe7\xf6\x47\xfb\xe7\x96\xa0\xde\x3b\x0c\x4c\xa3\x4b\xe1\x52\x0f\xf1\xc0\x18\x30\x05\x8c\xa5\x83\x49\xfb\xce\x9b\xa6\x2f\x02\xac\xb4\x47\x8d\x86\xbb\x82\x33\xf6\x5c\x9b\x57\x2d\xd1\x9d\xd2\x49\x17\xde\x2a\x6f\x71\x83\xa6\xb4\x78\xff\x19\xc3\xb2\x05\x4c\xf7\x1d\x54\xea\x13\x21\x58\xb6\x7b\x2e\x45\xa7\x91\xa3\xcc\xfd\x2e\x07\xb4\x23\xcc\x33\x08\x5e\xdc\x06\x6e\x18\x1d\x12\x2e\xf7\x92\x30\x7e\x9d\xa0\x3a\x8b\x13\x14\xc4\x16\x96\x3f\x8b\x5c\xec\x2d\x61\x03\x3d\x78\x24\x53\x16\x5f\xe5\xe5\x2e\x92\x71\x77\x86\xbb\x08\xa7\x37\x74\xb0\x09\x09\x27\xbe\x01\x3c\x5c\x1d\xf4\x07\xa3\x96\x98\xda\xac\x31\xb8\x7c\xf7\xb3\xdd\x6a\xfe\x21\x50\x4c\x68\x59\x1a\x74\xcf\x0b\x88\x6c\x54\x26\x7c\x2f\xd6\x53\x78\xe2\x4d\xdc\x60\x1a\x88\xd9\xbf\x68\x0b\x7d\x7b\xe8\x52\x65\x2d\xf4\xfc\x42\xfa\x91\x69\x8e\x11\x7e\x93\xff\x44\x72\x66\xc8\xdb\xb8\x83\xc9\xfd\x16\x47\x9f\x5a\xfb\x13\x04\x58\x71\xeb\x0a\x92\x87\x5e\x1f\x8f\xea\x3a\x76\x04\x31\x28\xa0\x98\x22\xcf\x7d\xc3\x2b\x7e\x0c\x28\x2e\xda\x64\x73\x9a\xbf\xdb\x80\x8d\x03\x09\x4f\x39\x90\xa4\x1e\xf6\x3a\x90\x3c\xaa\xeb\x7e\xef\x11\xef\x23\xa4\x66\xba\x73\x8c\xd1\x08\x71\xe0\x69\x10\xef\x3f\xa1\xc9\xa9\x1f\x7d\x48\x47\x13\x75\xd8\x5f\x18\x31\xab\x1c\x29\x34\x59\x25\x94\xb2\x0e\x49\x26\x5a\xec\x82\x14\xe5\xc2\xf3\xde\x4a\x37\xac\x0d\x77\x83\xc8\x1b\xde\x5c\x4b\xf9\xb0\x44\x30\x06\xf3\x86\xa3\xad\xda\x46\x75\x94\xf3\x55\x3e\x35\xf2\x04\x38\x6b\xa7\xd9\x6b\xc7\xa1\x89\x6b\x1b\xc4\xb9\x09\xb1\x78\xbe\xae\xeb\x3b\x9d\xa2\xda\x09\x81\xc2\xb1\x3e\x70\xc5\x31\xb7\x93\x9d\xbc\xfe\x79\x74\xdb\x26\xc7\xa2\x6e\x55\xee\x0d\x96\xf6\x94\xb9\x8b\x4f\xb1\x45\xd8\xbb\xb5\x7c\xc5\x16\x3b\x6e\x2e\xbf\x75\x4d\x22\x7b\xbd\xe8\x3d\xdc\x83\x66\x06\x43\x69\x01\x2c\x06\x0d\x3a\x6f\xa4\xe6\xed\xe1\xa7\x61\xee\xae\x75\xc4\x97\x1c\x30\xd4\x6c\xd0\xa1\x98\x43\xae\x2e\xf3\x41\xb8\x81\xc4\x5d\xea\x93\xe0\xfa\x36\x54\x20\x70\xdb\xe1\x3a\xa5\xaf\xb5\xad\xb5\x40\x3b\xc8\x78\xd3\x08\xed\x07\x58\x4d\xda\xf2\x46\xa5\x02\x2f\x83\xac\xc9\x2e\xa1\xf0\x69\xbe\x2e\xca\x09\xe4\x24\xcf\xd1\x69\xe6\x3b\x7f\x66\xd3\x72\x62\x33\x8d\xcb\x97\xbe\x73\x61\x36\xcd\xfc\x54\x59\x19\xb6\xd7\x52\x39\x17\xb9\x9a\x71\xd0\xc2\x11\x9a\xba\x57\x8a\xf2\x2a\x5a\xc9\xd9\xda\x75\x86\x0f\x04\x78\xc0\x6a\xb7\x00\xcd\x1b\xb5\xa9\x1c\x74\x26\xcf\x51\x21\x1c\x97\xca\x8a\xcc\xc0\xb9\x24\x9d\xcb\xab\x81\xe8\x97\x4e\x16\xc7\x9c\x79\xf6\xf3\x1f\xca\x56\xe7\xa3\xeb\x5c\x1a\xa4\x32\xfe\xe9\xdd\x6a\xeb\xc6\x59\xe7\xe2\x9a\xea\xaa\x4e\x55\xda\x15\x58\x65\x6c\xf3\xa9\xa0\xaa\xe5\xe4\x5c\xf2\x86\x04\x63\x80\x6b\x1b\x6d\x70\xa0\x39\x38\x9f\x61\x06\x36\xc2\x0a\x21\xcc\x63\xdf\x4b\x81\xc1\xc2\xa9\x08\x47\xbb\x0a\xa8\x74\x3e\x69\x92\xc1\x6d\xa1\x19\x7f\xf0\x5e\x7b\x54\x48\x9d\x09\xb0\x39\x36\x9b\xd2\xc0\x73\x70\x3f\x75\x5a\x6d\xaf\x3c\x7a\xd6\x67\x8d\x09\x1a\xd4\x23\xe3\x1e\x50\x77\x47\xbc\x46\x28\xc8\x14\xb4\x06\x4d\x57\x4a\x7d\xad\xbe\xfc\x3f\x20\xaf\x2b\xd7\xe6\xac\x55\x80\x61\x18\x41\xc2\x69\xe0\xcc\x3e\xdc\xb0\x1d\x39\x79\x49\xac\x6d\x99\x24\x56\xa7\xf2\x8f\xa9\x88\x6f\x59\xce\x77\x8c\x23\x94\x68\xf6\x79\x55\x9b\x00\x7f\x83\x8a\x01\x8a\x39\x64\xac\x56\x57\xcd\x34\xbe\x6a\x16\x09\x70\xbe\x9c\xce\xf8\x1c\xf8\x7a\xd2\x6e\x8b\xee\x59\x11\x58\x6e\xb5\x01\xdd\x5d\x05\x31\x75\xc1\xab\xe2\xc8\x54\x3f\xcd\x8c\xcf\x8b\x64\x67\xaa\x29\xe8\x51\x7f\x6a\xe3\xdf\xe4\x59\x5d\xd9\xcc\x5d\x6f\x13\xd6\x3b\xbb\x53\x20\xf2\x7d\x0e\x10\x5c\x15\x1a\x56\x53\x56\xe6\x30\x97\x67\x82\x92\x62\x53\x52\x26\x66\x0a\x16\xf0\x9e\x15\x22\x50\x68\x75\x72\x81\xd0\xf2\xa7\x03\x2f\x59\x41\x70\xb2\x40\x56\xae\x56\xb5\x0e\xd2\x92\x32\xb6\xdf\xbb\x92\x7c\x0c\x63\x92\x4f\x6c\x1c\x6e\xbf\x56\x6c\xbc\x85\x8d\x8d\x9e\x07\x0d\x1c\x60\xb9\x15\x71\x51\xdb\x44\xaf\x51\x2b\x15\x7e\x60\x36\xed\x25\x11\x8f\xef\x7c\x4b\x72\xaa\xa1\x04\xf3\x0b\x83\x2f\x7b\xae\x2b\x99\xe6\xa1\x7a\x46\xd3\xb1\x43\x6d\xe2\xb4\x51\x6f\x7c\xc3\xd8\x77\xc9\x34\x9c\x3a\xd6\x24\xce\x12\xd8\x1b\x6f\x11\x17\x54\xf6\x55\xcf\x2f\x51\xf9\x4c\xba\x58\x4d\x1d\x36\xd7\x89\xbd\x48\x44\x06\x1b\x55\xd3\x48\x7b\x3f\x92\xf1\x38\xff\x91\x14\x22\xcf\xfe\x3f\x22\x25\xdd\x07\x72\x0f\x7c\xaa\x38\x9d\xfa\xfb\xc1\x8a\xd3\x9b\x52\x90\x0c\x4d\x5c\xb3\xe6\xba\xeb\xd2\xad\x50\x6f\x18\xab\x8e\x14\x86\x24\xdb\x90\x49\x93\x6d\x83\x3c\x3e\x3f\x92\xbc\x81\x10\xe1\x65\x90\xdc\x30\x8d\xb3\x79\x48\x87\x49\x69\xd9\xcc\xa4\x50\xb0\x9e\xcb\x1d\xd1\xd3\x7a\x93\x1a\xa5\xe9\x58\x21\x22\xe5\xee\x10\xf1\x63\x42\xf4\xca\xc8\xcf\xd2\xd9\x2e\x82\x80\x10\xde\x0d\x08\x41\xd3\xce\x71\x44\x10\x7e\xaa\x6f\xa5\x59\xc3\xaf\x81\x10\x77\xf9\x3d\x24\x98\x00\xb7\x06\x0b\xdf\x66\x65\x6f\x04\x6c\xb3\x52\x7f\x56\x1d\x91\xdb\x27\x3a\x03\x78\x6f\xa4\x9c\x05\x8e\xdd\xb5\x3b\x43\x14\x50\x59\xdf\x89\x98\x3d\xda\x8c\xe1\x63\x41\x04\x29\xd6\xa1\x4c\x74\x99\x33\x9b\x4d\x4f\x73\x47\x0b\x80\xfb\xea\x96\xe9\x64\xaa\x9e\xda\x32\x2a\x8a\x1c\x4e\x25\x35\x9b\x06\x06\x6e\x9a\x1d\x49\x15\xad\xa3\x4c\x33\x83\xeb\xae\x1d\xf3\x54\x94\x94\xe2\xc9\x7e\x83\x0a\xe0\x5e\x33\xd6\xcd\xa6\xdb\x7e\xc0\x77\x0f\xef\x28\x68\x17\x3a\xd6\xe6\x46\x4f\x3c\xdf\x6c\xb2\x07\x7f\x6f\x1b\xf6\xa0\x5c\xd1\x2c\x74\x7b\x54\x83\x2b\x4f\xf9\xac\x9c\xa7\x46\x95\x1d\x95\x68\xaa\x8a\x06\x2a\x79\xdf\x68\x66\x25\x7c\x3d\x40\x7c\xf1\x99\xd7\x6d\xb2\x75\xf7\xda\xcf\xa4\xd0\xdb\xb6\xdf\x1c\xf4\x12\x30\xdb\x43\x48\x24\x0a\x20\xde\x41\x25\x3e\x80\xf2\x0e\x3a\x29\xed\x37\xb9\xa6\x3f\x30\xa9\x24\xbb\xf8\xa0\xd4\xd2\x55\xe6\xe2\xa8\x1f\x35\xb0\xdc\xdb\x3b\x79\x8b\xb3\x8a\x2c\xcb\x75\x2d\xce\xec\xb0\x32\x84\x4e\xf9\x8c\xce\x7b\x06\x9d\x1d\xd1\x77\x23\x26\x1a\x12\x93\xee\x2f\xeb\x6b\xdf\x16\x38\x90\x9a\x6c\x7b\x96\x98\x12\x58\x9f\x09\xc0\x70\x9f\xd1\x84\x50\x30\xfe\x1b\x49\x58\x09\x77\x07\x6e\x3a\x51\xd9\x50\x2c\xde\xa7\xee\x86\xb9\x6e\x22\x62\xf5\x9d\x48\x3a\x2f\x67\x2c\xd9\x19\x75\x9d\x51\xaf\x33\xab\x14\xb8\xa8\x6a\xfd\x52\x67\x51\x54\x69\x26\x96\x7d\x38\xae\x7e\x45\xaf\x88\x57\x19\xf7\xe9\x3d\x76\x10\xd8\x9c\xbe\xee\x09\xd4\xb1\x36\x26\xad\x88\x18\xb5\xcc\x49\x46\xa0\xe0\xf5\xe9\x26\x27\xd6\x9b\x3c\x15\xd5\xef\x52\x0f\xec\x57\x5e\x44\xf0\x7a\x27\xb4\x96\xb0\xf0\xf3\xdf\x27\x3a\xb5\x5a\x40\x6f\x89\x14\xbd\x91\x1d\x9f\x81\x7b\xcc\x39\x92\xe6\x94\x0d\xe9\x49\xc9\x1a\x46\x17\x65\x9d\xa3\x81\x29\x56\x1c\x7b\x13\xda\xaf\x8d\x74\x66\x30\xbc\x8a\x71\x53\xb8\xcf\x37\x3f\xf8\xde\xb0\x91\xee\x7c\x44\x08\x0b\xfb\x27\x24\xac\xb0\x73\x46\xce\x75\x9e\x90\xa7\x51\xd2\xe5\x68\x6e\xd6\x45\x8b\xf3\xfa\xbd\x80\x4e\x34\xc2\xc9\x7f\x91\x7c\xed\x21\x9c\xd4\x08\x2f\xd4\x43\xbc\x40\xb8\xdd\x6a\x96\xa7\x03\x9e\x91\x87\x77\xc2\x45\xec\x2a\xc6\x62\x8b\x5b\x53\xb0\x00\x71\xd3\xbb\xdb\x69\xde\x1f\x11\x72\xc6\xe7\xea\x1e\x10\xc2\xbe\xd6\x45\x7c\x01\xd3\xd8\x58\x30\x73\x9f\x52\xb2\x6a\xa8\x40\x84\x86\xe5\x45\xb3\x16\x43\x80\xd3\x35\x21\x70\xf2\x63\x14\x44\xa4\xbb\x50\xfc\xde\x5e\x2a\xd6\xca\x5b\x85\xa6\xbd\x55\xdc\x7d\xce\x3e\x9b\x42\x83\x5b\x5c\x0f\xa4\xba\x91\x37\xc5\x9f\x21\xaa\x0c\x6e\x17\xa5\x46\xc3\x11\xb2\xb6\x86\xf1\x38\xaf\x8b\xc6\xa1\x75\x82\xd7\x02\x28\xe6\x58\x84\x76\xbf\x9c\xe2\x7b\xc0\xfd\x6c\xb7\x98\x23\x5c\x8f\xc7\xe6\x5a\x49\x3d\x86\x7b\x25\xd3\xce\xb4\xde\xc2\x74\xd1\x38\xc2\x4c\x89\xfa\x64\x3c\x1e\xa9\xab\x7c\xda\xea\x7b\x30\xb0\xb0\x8d\xc7\x99\xb6\xd1\xc1\xcf\x0c\x8a\x2c\x9a\x8a\x9c\xe6\xbc\x48\x30\xef\xf5\x84\xa8\x39\x57\x48\x78\xa7\xd1\xef\xdc\x7d\x34\x9a\xbe\xc8\xc9\x84\xc0\x63\x64\x51\x59\x9c\xd5\x30\xa7\x98\x63\x82\xd0\x54\x44\x46\xc1\x9c\x62\x82\x74\x02\x6d\xb2\x45\xb8\xf6\x02\x03\x98\xf0\x95\x85\xcb\x7e\xbb\x93\x9a\xd1\xd3\x91\x8e\x95\xe2\xa4\x5a\x2f\x88\xef\x34\xee\x2b\xf3\x9b\x0d\x15\x4a\x77\x44\x2e\xea\x69\x8b\xa4\x22\x35\xd5\x2d\x6c\x36\x23\x5d\x46\x37\xed\x15\xb4\xa3\xa3\x22\x54\xcc\xc5\x4e\x2d\x8e\xfb\xb9\x95\x7a\x5d\x61\x98\xd7\x7e\x13\xb7\x3f\xe3\x20\x27\x8e\x94\x13\x4e\xce\xd2\x51\xb2\x91\xcc\x48\xd0\x64\x59\x2e\x44\xc3\xe1\x12\x45\x25\x45\x04\xf1\x70\xab\x50\x17\x36\x9b\x9c\x15\x7f\x21\xea\x07\x1e\xb1\x20\xf1\xb7\x61\x04\x8b\xba\x6c\xc1\x6d\x94\x4e\xa8\x42\x58\x40\x5e\xec\xe7\x78\xac\x43\x50\xdc\x91\x7c\x55\xb6\xaf\x6e\x99\x81\x2e\x52\xa7\x32\xc5\x5e\x4a\x46\xb4\xd9\xa4\x51\x8e\x82\x52\xf8\x1e\x60\x92\xa6\x7c\x8b\x06\xf2\xf3\x0b\x66\xad\x60\x5b\xf5\x9d\x51\x6d\xe1\xc3\x3b\x19\xe9\x50\xef\x80\x0c\xc7\x19\x22\x4b\xf3\x22\xde\xdd\x64\xbf\xf2\xd2\x95\x57\xc1\x21\xf0\x2f\x24\x91\x42\xf5\xaf\x64\xb3\xc9\xff\xda\x31\x4b\xc0\x77\xfa\x06\x89\x73\xc3\x4f\x5f\xd2\xb7\x94\x21\xfc\x57\x03\x85\xa4\x41\x6b\xbc\xc4\x6d\x4a\xc7\x12\x5d\x19\x04\x73\xc7\xd3\x03\xe1\x11\xf3\xc2\xd6\x37\x21\x1f\xcc\xb3\x4f\x72\x13\xbf\xcc\x21\x70\x99\x49\xd1\xd7\x56\x98\xd1\xb9\x0f\xd0\x24\xd7\x53\x0f\x8d\xe0\x99\x9c\x8a\xf9\x64\xd1\xb0\x45\x29\x72\x86\x1c\x52\x93\xfa\x1c\x45\x7d\x3b\xe1\x92\x62\x1c\x92\x9d\x85\x03\xcc\x98\x1d\x25\xb7\xbc\x20\x38\x17\x05\xeb\x47\xf8\xe1\x3e\xc2\x8f\xe8\x41\xf8\x01\xd1\xca\x22\xfc\x70\xbb\x29\x12\x78\xb1\x3b\x40\x7b\x12\x7e\xd8\x70\x6f\x03\x94\xaa\x95\xe5\x5d\xee\xa6\xb8\x2d\xee\x5d\x46\x09\x1c\x16\x9d\x96\xd8\xbf\x7a\x98\x86\x97\x5b\x90\x9b\xa2\xa4\x8c\x70\x65\xd4\x19\x04\xe8\x22\xad\x03\x1a\x68\x0d\xd3\x68\x71\x4a\xf3\xb4\x19\x76\x54\x06\x5a\x68\x51\xe1\x1d\xe9\xe1\xfb\xeb\xad\x8e\x6e\x33\xd1\xad\x67\xbb\x69\xd7\x17\xed\x82\xd3\x0b\xc9\x73\xf2\x24\x0b\x4b\x3a\x1d\xfa\xf9\xc0\xa5\x7c\x88\x78\x98\x32\x3f\x8c\x11\xd2\x5b\x5d\x52\x07\xd8\x8e\xb0\x40\xa3\xa2\x23\xd2\x84\x53\x3c\xf1\xcc\x75\xf2\xd3\x65\xd3\x90\x0b\x85\xa7\xb1\x27\x21\x06\xc9\x86\x1f\x85\xe9\xc2\xfd\x21\x06\x50\xed\xfe\xa1\x64\xbd\x64\x76\x8f\x6b\x90\x5d\x58\xaf\x58\x70\x50\x78\x43\x59\x75\xda\x3b\xa8\xa9\x8f\x7d\xae\x0a\x8f\xc7\x39\x35\x01\x86\x13\x40\xc3\x1a\x8f\xf3\xde\x06\x30\xb8\x4e\xca\x16\xbe\x23\xd7\xcd\x4d\x59\x3f\xb9\x22\x8b\x37\x00\x5e\xd6\x4c\xce\xaf\x8d\xc1\xdd\xa8\x98\xe3\x71\xea\xe9\x84\x13\xc1\x29\xb9\x21\x5f\x97\x82\xb4\x22\x47\xe1\x64\x29\x49\x41\xcd\x52\x8f\xbc\xb9\x7b\x71\xb4\x04\x22\x45\x82\x09\xf5\x64\x1a\x0d\xd7\x5b\x99\x7b\x86\x0c\xae\xe9\x34\x0c\x7c\xcf\x27\x67\x70\xdd\x9b\x21\xdc\xff\x5e\xdf\xfa\x66\x08\x19\xb9\x5c\x28\x6c\xf9\x5e\xea\xc8\x68\x95\x21\x05\x9f\xbf\x56\xde\x4a\x78\xbd\xc5\x74\x22\x48\xc9\xab\xc6\x24\xf8\xec\xc0\xd5\x18\x05\x19\xd3\x34\xf2\x92\x7f\x19\x17\xef\x37\x65\x66\x92\x82\x23\x1c\xd8\xa7\xfa\xff\xa9\x00\x6f\x1c\x39\x52\x73\x7a\x9b\xcb\xc2\x81\x97\x73\x42\x01\xf6\xa9\x98\xc9\x6f\x20\xeb\x32\xa9\x21\xe8\x11\x02\x1e\x87\xcb\x86\x0f\x3f\xc9\x8e\x20\x86\x45\x49\xe0\x43\x85\x5b\x35\xbc\x02\x87\xab\x16\xa2\x28\x55\xde\x6d\x80\x4a\x8e\x46\xb7\xc7\x13\xa4\x11\x5e\x86\xd1\xee\xc9\x01\x56\xde\x1d\x80\xdc\xdd\x06\x75\xde\xf2\x03\xdb\x3d\x04\x3a\xcb\xf3\x75\x4a\x40\xed\x3a\xbb\x14\xc3\x21\x2f\x78\x7c\xa7\x44\x1e\x78\xa9\xe0\x3f\x0f\x80\x61\x0b\x97\xba\x7b\xe8\xe9\x64\x5c\x0e\xfc\x20\xb0\x03\x79\x03\xc4\xcc\xb3\x99\x71\xec\xf3\x51\x34\x10\xe9\xf0\xe1\x44\x56\x17\xe2\xa3\x87\x49\x59\x8c\x78\x09\x6e\x52\xa3\x0b\xd2\x73\xd1\x03\xc1\xdc\xc2\xaf\x4e\xca\x05\x07\x7f\xf8\x40\x84\x1f\x1e\xb4\xa6\x3e\x5b\xca\xa1\x41\x9a\xfe\x74\x7f\xd1\xa7\x1c\x06\xc9\x06\x5b\x2b\xd3\x7b\xa4\x55\xef\x87\xb4\x1d\x36\xac\xbe\x1b\x96\x37\x25\xad\xcb\x8b\x9a\x0c\x6f\xaf\x08\x1b\x2e\xd6\xad\x68\xae\xf5\x9e\x83\x4d\x3b\x5c\x92\x52\xac\x39\x19\x2e\xeb\xf2\x52\x55\xcb\xb6\x80\x77\x26\x3c\xad\xbd\x15\xff\x12\x28\xa5\x6b\x61\x57\xd6\xca\xcf\x45\x03\xa2\xa4\xca\xe8\x4f\x64\x1d\x84\xfd\x93\x8b\x98\x93\x4b\x14\x7c\xd2\x52\x76\xb9\xae\x4b\x4e\xff\xa1\x41\x34\x01\x85\xb4\x16\x7b\xf2\x0f\x5c\x13\x51\xf6\x66\x1f\x00\x79\x30\xd3\x29\x82\xcf\x3d\x60\xee\xee\x43\x0d\x8c\x2d\xa7\x44\xbf\xb8\x2a\xdb\x27\x65\xbd\x50\x8e\xbe\x3a\xe8\xc0\xe6\x1c\x58\x95\x52\xf6\x72\x09\x41\xfd\x6e\x75\x8b\xa9\x67\xa6\x17\xff\x55\xdc\x14\x89\x9f\x1c\x90\xc4\xc0\xfb\xb2\x94\xb8\x35\x72\xe6\xb6\xe4\x67\x19\x4b\xe5\xc2\xbc\xd0\xcf\x15\xf6\x53\x67\xf6\x60\xaf\x47\x5f\xf4\xb1\xbb\xd5\xfd\x40\xd7\x71\xf9\x1e\x87\x85\x9d\xeb\x78\xac\x6f\x60\x1a\x5c\xe2\x16\xaf\x21\xab\xfd\xc0\xdc\x47\x12\x51\xe2\xbc\x29\xac\x40\x85\x6c\xfc\x42\x63\x56\x72\xb3\xc9\xd7\x85\xf0\xc0\xe5\x95\x27\xb7\xdc\x17\x44\xca\x01\xa7\x39\x2f\xd6\x2a\xc7\x0f\x73\x81\x17\x79\x5b\xe4\x65\xb1\x46\xa6\xe1\xf1\xb8\x0c\x85\x36\xb4\xd9\xb4\x68\x9a\x73\x95\x65\x9f\x15\xa3\x93\xc4\xfc\x17\xbc\x87\x78\x59\x0c\xa4\xfc\x86\xdc\xf5\xd9\x14\xed\x97\xca\x31\x6f\xb7\x58\x57\xa0\xac\x3a\xa0\x06\x65\x95\xad\x02\xf2\xc0\xae\x2a\xe7\x8a\x01\xe4\xde\x9e\x5c\x8b\xdc\xb6\x66\x8f\x18\xf9\xc6\xb6\xaa\x67\x65\xff\x58\x74\x41\x5b\x91\x81\x55\x61\x5f\x2d\x59\x4a\x99\x53\x5b\x91\x00\x8c\x96\x0f\x2d\x60\x34\x99\xec\x4a\x8b\xf8\x0d\xc1\x64\xf2\x94\xac\x38\x59\xc8\x57\xcf\x6e\x08\x13\xa4\x2a\x9e\xc8\xc7\xa1\xfd\xfb\xad\x7c\xa4\xcd\xa6\xaa\xee\x5b\xf7\x40\xb1\xda\xe2\x11\x26\x13\xbf\xf5\xa7\x24\x7c\x60\x90\x92\x9e\xbb\xe7\x52\x5c\x3e\xf3\xc1\x88\xff\x04\xef\x9a\x46\xa9\x86\x45\x25\x7f\x1a\xc7\xd5\xe2\xb9\xf7\xc3\xef\xe8\x05\x94\x02\x6c\xdf\x52\x60\x32\x39\xbf\xa0\xac\x2a\xfe\x21\xff\xba\x5c\x97\xbc\x2a\xbe\x97\x7f\x36\x30\xca\x17\xed\xa3\x9a\xde\x90\xe2\x31\x96\x6a\x34\xe1\x0b\xf2\xa2\x2a\x18\x26\x93\x8a\x2e\x97\xa9\xa4\x7d\xee\xec\x22\xce\x2e\x61\x8e\x30\x4c\x8b\x97\xa5\xb8\x9a\x5c\x53\x06\x4e\x37\xb8\x51\xc4\x5f\x16\xc7\x0f\xcb\x2f\xe9\xc3\xf2\xe8\x08\xd1\x65\x4e\x66\xe5\x7c\x54\x14\x62\x56\xce\xd1\x7d\x53\x94\x83\x0b\x4e\xca\x37\x5b\xb3\x2f\xc7\x63\xa6\xdc\x20\xe5\xbe\x35\x91\x2b\xc7\x78\x5d\x40\x78\xad\x91\x14\xdd\x50\xea\x82\x3e\x68\xf0\xa2\x38\x79\xb8\xf8\xb2\xa0\x0f\x17\xa6\x13\xfe\x60\xa1\xba\x61\x0f\x16\x73\x74\x5f\x17\x8b\x07\x27\xba\xab\xb6\x60\x0f\xea\x07\x0d\x5e\x17\x5c\xfe\xaf\xe5\x85\xfb\x25\xe5\xad\x50\x1a\xc1\x0b\x56\x91\xb7\xd3\x06\x97\x55\x45\xaa\x27\xcd\x9a\x89\x69\x8b\x55\x96\x3c\xfd\x73\xbd\xdd\x62\x63\x44\x85\x99\x7a\xdd\x7c\x55\xb6\x57\xc5\x0b\xfb\x54\xfe\x7c\xdd\xf4\x65\x7e\x74\x71\xae\x06\x2c\xf4\x5b\x85\x71\x02\x97\x25\x7e\xbe\x43\x92\x4a\x6d\xc8\xdd\x04\x18\x91\xf1\xba\x7c\x43\xb4\x9f\xdb\x8c\xcf\x8d\x85\x88\x25\x12\x42\x1b\xc3\xf2\xd0\x2a\xe4\x19\x2e\x8b\xec\x53\xb0\x74\x39\xf9\xf0\xd3\xec\x88\x0f\xb2\x8b\xb2\x05\x95\x4c\xad\x88\xad\xfa\xb4\x59\x80\xb9\xc9\xd5\xcc\xc0\x2c\x03\x46\x70\x41\x45\x4d\xa6\x0d\xae\x88\x28\x69\x3d\x65\x33\x3a\xc7\x4a\x3b\x9c\xde\xaf\x1a\xd0\x1c\xa7\xe5\x76\x8b\x20\x29\x97\x90\x13\x09\xa4\x19\x41\x53\x7f\x85\x7d\x57\xd9\x27\xda\x3e\x50\x5c\x62\xe2\x7c\x4a\xdc\x69\xdb\xe0\x08\xfd\xbf\x78\x6a\x9f\x38\xdb\x6e\x8f\x43\xc9\x8f\x1a\x07\x77\x8b\xc3\x1c\x71\xcf\x79\x73\x2d\x55\x8c\x54\x1d\xa9\x88\xd5\xa6\x52\x4b\x44\xd0\xc9\x25\xd1\xa8\xdb\x41\xcd\x45\x41\x3a\x85\xff\xa0\x30\xcf\x68\xc3\x12\x15\x96\x89\x0a\xdf\x91\x36\xd9\x78\x95\x28\xab\xf3\xcc\x74\x0b\x5f\xa9\xc2\x92\x53\x46\xa9\x4b\xe0\x73\xd7\x62\x40\x26\xeb\xd5\x25\x2f\x2b\xf9\xde\xb0\xbf\xe2\x37\xa4\x57\x94\xcc\xce\xcf\x89\xd4\xf7\xd6\xb5\xb3\x05\x8f\x8e\xd5\xd5\x87\x2a\x1c\x5a\x54\xc1\x40\xf6\x29\xa4\x36\xcd\xf0\x2c\x23\x6f\x57\x0d\x17\x6d\x86\x13\x85\xac\xd9\x75\x1e\x1b\xa1\xb2\x75\x4b\x86\xad\xe0\x74\x21\xb2\xc1\xbb\x8e\xac\xff\x53\xcc\x55\x3f\xbe\x77\x62\xf7\x74\x74\xdc\x77\x18\x29\x76\xbb\xdd\xd5\x62\x97\x60\x0f\x6e\xbc\x5b\x75\x67\x4f\x3b\x89\xeb\xe0\x4e\x77\xb6\x72\x78\xff\x3e\xfd\xbd\x5f\xdf\x7e\x0b\x87\xf7\xeb\xef\xc0\xf7\xeb\xd7\x6f\xe1\xf0\x7e\xbd\xbd\xf9\x7e\xdd\x7a\x0d\xec\xec\x35\xc1\xd7\x0e\xee\x30\x51\x77\x9b\xde\xa7\xb2\x60\x29\x1a\xde\x7e\xba\x68\xae\x57\x0d\x23\x4c\xec\xda\xb1\xae\xf8\x5a\xd0\x5a\x56\xaa\xeb\x72\xd5\x92\x07\x20\x95\xed\x28\x68\x1f\xc4\x3b\x1c\xf3\x68\x8f\x7b\xf7\x25\x69\x2b\x34\xd8\x9f\xe3\x3c\xa4\x16\xdd\x70\x9b\x13\xb4\xd9\x84\x3c\x84\x2e\xf3\xcc\xe6\x68\x75\xf7\xa9\x67\x77\xd7\x17\x4d\xbd\xd9\x8c\x72\xf5\xd7\x84\x0a\x02\x63\x1c\x52\x36\x54\xeb\x22\x5b\xd6\x4d\x6b\x2c\x26\xc8\x3e\x3e\x3a\x86\xdc\x37\xb8\x31\x61\x2d\x82\xdf\xd9\xd3\xba\xc4\x6d\x41\x66\x51\x93\xf3\x1c\x3d\x1c\xe5\x4c\xaa\x14\xed\x84\x91\xb7\x22\x47\x68\x52\x35\x0c\x92\xd3\xeb\x64\xe4\xe5\x04\x38\x17\xc2\x23\xb1\xd9\x98\xbc\xfe\x52\xc0\x41\x0f\x65\x97\xe8\xe1\x56\xc1\x6f\xad\xd1\x3d\xe4\xc9\x69\x8a\xf5\x76\x49\x59\x59\xd7\x77\xf7\x72\x00\xcc\x44\x89\xb7\x13\x35\xe4\xcd\xc6\xfc\x95\x23\x5b\x12\xdc\xed\x95\xa1\xb1\xd9\xba\xec\xe7\x30\x53\x9b\x4d\xa3\xff\x8f\x2d\x27\x70\x16\x02\x16\xbb\x32\x49\x1a\x21\xa1\x14\x82\x5c\xaf\xc4\x50\x34\x43\xb0\x96\xae\x17\x60\x26\x61\x0d\x7b\x00\x9f\x7e\x51\x93\xa1\xba\x87\x59\x90\xc9\xdf\xd8\x0b\x36\x6c\x78\x45\xb8\x06\x7d\x33\x45\x30\x54\x28\xe5\x5a\x0e\x95\xdc\xda\x0e\xaf\xd7\xad\x18\x5e\x95\x37\x64\x58\x0e\x13\xb3\x39\xbc\x86\x2d\x34\xc9\xd0\x36\xb8\x06\x4e\xe2\xe1\xef\x24\x99\x12\x12\xd7\x86\x54\x13\xd3\xcc\x28\xa4\x99\xf1\x78\x27\xc5\x04\xd7\xe2\x4b\xde\x5c\xdb\x1e\x9a\xb0\x9f\xc3\x27\xb7\x5d\x71\x52\x56\xff\xbc\x79\x6d\x1c\xac\xa8\x9a\x9b\x18\xf3\x84\x78\xd3\xe9\xd0\xc5\x3b\x57\xd1\xa2\x39\x83\x8a\xea\x12\x9a\x20\x1d\xad\xf6\x3b\xfc\xe0\xc4\xd8\x6e\x33\x6d\x0c\x54\x12\x69\x70\xfb\xa7\x71\x62\xbc\x27\xa0\x1d\x22\x9c\xbd\x2c\x57\x50\x61\xb3\xc9\xce\x88\xaa\x7b\x1a\xcc\xff\x34\x7b\x64\xae\x4f\x75\xc1\x4f\xff\x6f\x7e\x3a\xfd\x9e\x6e\x5e\x20\x26\xf2\xd3\xe9\xef\x36\x27\x5f\x6c\x3e\xff\x0c\xe5\xa7\xd3\x27\x75\x79\xbd\x22\x15\x52\x2d\xfc\xe6\xd3\x09\xdc\x99\x70\x74\xaa\xbe\x4d\xbb\x2c\x7a\x16\x35\xf5\xfc\x3e\x57\xdb\x4f\x6c\x36\xe2\xf7\x16\x6b\x0c\x6c\x66\xf6\xd7\x20\xc4\x55\xf4\xe0\xab\xd1\x43\xfe\xa5\x00\x1b\x21\x03\x7b\xee\x8c\xcf\x5d\xee\xdb\x77\x16\x7c\xc8\xa4\x2e\xef\x9a\x35\xd8\xf4\xca\x4b\x6d\xac\xb2\x82\xff\x63\x0a\x41\x81\xad\x9c\xcb\xba\x6c\x5b\xf9\x3e\xf5\x2c\xf8\xe1\x37\x60\xf8\x9e\xd2\xdd\xf2\x63\xcc\x27\x96\xc3\xff\x40\xc5\xd5\xb7\x25\x2f\xaf\x5b\x14\x1a\xac\xdd\x7d\x6b\x7c\xf5\xfd\xfb\xcf\x4d\x0e\xe2\x51\xe1\x5d\x73\x7f\x3e\x3f\xf5\x7f\x4c\x67\x60\x6a\xce\x8f\x21\x09\x3b\xc8\x6f\x28\x97\xec\x32\xf6\x70\xf0\x6e\x27\xcd\x57\x65\xc8\xc2\x6d\x76\xa7\x61\x90\x9a\x9a\x90\x5d\x34\xe8\xb4\x31\x91\x95\x53\x9d\xac\xb4\x2c\xe8\xec\x78\x7e\x9a\x65\xe6\xb6\x9d\xe3\x6c\x9a\x21\xf3\x4b\xbe\x44\x53\xee\x1c\x4d\x3a\x7d\xd8\x84\xc0\xca\x9e\x1b\xd9\x7b\x11\x66\x70\x49\xe7\xcd\x7a\xab\x2f\x78\x7f\x7d\x13\xde\x21\x23\x7f\xc2\x3b\x2f\x07\x29\xba\x3b\x68\xc2\x2d\x12\x57\xff\xb4\x2b\x17\x31\xf9\x28\x98\xfd\x4e\x87\x07\xcd\xbe\xdd\xe2\xb5\x3b\x58\xba\xb3\xff\x1d\xf9\x69\x4d\x39\xa9\xba\xab\x60\xee\xcb\xc3\x39\x0c\x3c\x1d\x24\x23\x1f\xfa\x4f\xf4\xbc\x79\x8f\x66\x64\x3e\x60\x93\xb5\xd4\xde\x96\x42\xbb\x7a\x30\x4c\xf3\xc6\x8f\x34\xf4\x4b\x17\x0c\x73\xc9\x05\xd0\xd6\xdf\xc0\x6b\x20\x9f\x45\x51\x7b\xeb\xd5\x66\x68\x10\xec\xf8\xc5\x40\xe1\xc6\xd6\xc9\x45\x4d\xae\xdc\x12\xaa\x54\xb2\x4a\x62\xe3\x25\x77\x57\xa5\x11\x70\xde\x65\x2e\x3d\xef\x33\x96\x0b\x7c\x82\x66\xc7\x0e\x4a\xcc\x3f\x63\x34\xc3\xe3\x0a\xb0\x5d\xff\x84\x81\x98\x57\x57\x03\xcb\x20\x93\x9e\xa5\x1d\xdf\x1c\xe1\xc3\x48\xda\x84\xad\x2a\x3e\x51\xb2\x6b\xb7\x6d\x1c\xdb\xee\x78\x02\x16\xa2\x67\xc4\x7a\x28\x72\xc0\xdb\xdd\x52\xba\x92\xa6\x8d\xba\xfc\x29\xac\xc5\x83\x25\x25\x75\xf5\xa0\x22\xed\x82\xd3\x95\x94\xb1\x3d\xd9\x7d\x1e\x7a\x24\xa6\x45\x6d\xe1\x11\xb7\x48\xb9\x1e\x1a\xb1\x27\x6b\xe1\x8f\xf8\x85\x15\x20\x4e\x53\xfe\x9b\x5a\x40\xd8\x4e\x53\x71\xa8\xe3\xf1\x8e\xee\x42\xd7\x9f\xa2\xb0\xcf\x47\xe6\x6f\x37\x89\xa7\x66\x6c\x53\xdb\xa1\x64\x56\xee\x90\xe6\xff\xd6\x27\x7e\x79\x7d\xa2\x33\x71\x16\xad\x6c\xb0\x53\x8a\x64\xef\x2f\x45\xbe\x87\xfc\x08\x63\x49\x88\x90\x49\x49\x1e\x0a\xff\x7c\x61\x32\xfc\xd2\xce\x7c\xfd\x8b\xe9\x5d\xec\x63\x4b\xc0\xa1\x86\xa7\xac\xe2\x72\x47\x7f\x8e\x30\x2d\xd8\xec\x78\x8e\x9b\x82\xcd\x4e\xe6\xb8\x2c\xd8\xec\x33\x5b\xf1\x73\xb8\xbb\x36\x48\xe7\x59\x63\x49\x43\xe4\x54\x5f\x15\x8e\x8a\x82\x4a\xce\x16\x91\x62\x33\x1e\xe7\x41\xf9\xd2\x95\x2f\xc7\xe3\xcc\x59\x62\x32\xca\x86\xf2\x89\x2f\x41\xc0\x33\x0f\xbc\xb4\x44\xef\x23\xc3\xd3\xf6\xb9\x64\xed\x4f\x2d\x67\x2f\x28\x3c\xf5\x1e\x24\x78\x2a\xed\x28\xb3\xea\x42\x42\x4e\x57\x70\x68\x9e\x84\x93\xd3\xe5\xc3\x62\x3c\xce\xec\xae\x93\x9f\x24\xc6\xe3\x91\x98\x9c\x9f\xd3\xf6\x89\xf6\xdb\x7d\x6a\xce\x26\xc9\x28\x0f\x3a\xbc\x62\x9b\xd1\x61\x67\xd5\x7b\xcc\x9e\x16\xb7\x82\x29\x4a\x7c\x64\xc8\x0f\x60\x50\x11\xdb\x50\x0f\xf3\xc3\x3e\xcf\x59\xba\x0e\xb2\xa0\xed\x3b\xca\x3f\xb0\x41\x9c\xa4\xd4\x86\x9d\xc9\x04\xfd\x2b\xc1\x0f\xe2\xb2\x2c\x25\x61\x9f\x84\x51\xce\xd0\x69\xe4\x5b\xcd\xd0\x34\x15\x72\xd7\x1d\x40\x90\x01\xca\xe6\x7c\x72\xc9\x9e\x12\x03\x18\x46\x7d\x71\xa3\x39\xcc\xd8\x1c\x41\xea\x7c\xb2\x4b\x22\x3d\x70\xb2\xf6\x8f\x55\x61\x90\x0b\x07\x3e\xee\xc6\xca\xba\x32\xe4\xce\x96\x59\xff\x2c\xf4\x2d\x43\x3c\x0b\xcc\xce\x02\x57\xb3\xd0\xa5\xf5\x4f\xe1\x08\x21\xd5\x83\x96\x24\x8c\xc4\x1f\x72\xf3\x0e\xd4\x77\x1a\x61\xa8\xc7\xaf\x08\xdd\xe7\x5d\xf1\x22\x77\xe7\x9e\x64\x60\x08\x25\x8f\xd1\x27\x25\x63\x8d\x80\x74\xca\xc3\x52\xbb\x78\x95\xed\xb0\xb4\xf3\x9d\xa1\x2d\xb2\x40\xa3\x0a\x39\x41\xe1\x56\xb9\x58\x49\xe5\xa3\x97\x08\x30\x90\x7d\xc9\x2a\x92\x90\x3c\x27\x76\x59\xbf\x93\x18\x46\xa5\xbd\x58\x90\x33\x92\xf6\xfd\x83\x42\x35\x6d\x05\xe4\x18\x86\xc8\x7c\xfa\x0f\x52\x1c\x87\x6d\x97\x55\x4f\x96\xc7\xcd\x46\xfb\xdc\xad\x69\x65\xfd\x0f\xe3\x8e\x4d\x6c\xbf\xec\xc6\xe2\x12\x8c\x8a\x42\x9e\xc2\x52\x35\x96\x87\xb1\xf1\xb5\x82\xde\xa9\x89\xf9\x53\xe3\x0b\xc7\xa2\xbc\xd2\x3f\xd4\x70\xe4\x92\x42\xca\x51\x49\x96\xf7\xda\xe3\x5d\xfe\xd0\x18\x11\x74\x02\x84\xf8\x6a\xe9\x3b\xaf\xfe\xfe\xc1\xc9\x78\x4c\x27\xed\x0a\xa4\xc2\x06\x1b\xc7\x1c\x3d\x78\xbd\x69\x46\xc7\x5b\xe3\xfb\x14\x7e\x81\x8e\x2e\x4a\xac\xac\x4d\x4d\x24\x5b\x0a\x2b\x5d\x95\x21\x67\xa0\xcb\x3c\x28\x8d\x4c\x5f\x9a\xb6\xe3\x89\x08\x00\x21\xa2\x19\x99\x89\x79\xd8\x99\xf6\x16\xe8\x74\x38\xf2\x3b\xf4\x7d\x37\xcd\x5c\x7e\x56\x14\x1d\xee\x81\x76\xb8\x2b\xaa\xe0\x92\xdc\xf1\x8f\x93\x39\x16\x00\x84\x13\x64\xf0\xd0\xac\xcc\x4f\xa7\x40\x72\x21\xf9\xe9\x36\x1c\xb8\x88\xbd\x25\x42\x7f\x1f\x39\x4c\x63\xf4\x89\x76\x4f\xb3\xba\xeb\x82\x9f\x31\x72\x9b\x6b\xc2\xf4\x8e\x6b\x27\x62\x42\x8c\x36\x39\x6c\x93\x79\x85\x10\x89\x66\x3f\xb5\x22\x8e\x8f\xc2\xf6\x84\x12\xfa\xf3\x20\x85\x17\x10\x9b\x5d\x0d\x2c\xc9\x65\x9b\xfb\x62\x89\x48\x70\x58\x4e\x58\x45\xf8\x83\xeb\xa6\x82\x7b\xbb\xf6\x53\xf7\x57\x45\xab\x07\x94\xb5\x84\x8b\x9f\xa3\xde\xbf\xb7\xde\xfb\xb1\x6e\x44\xde\x57\x41\xe4\x4e\x41\x64\xef\xaf\x20\xb2\xae\x82\xc8\xf6\x29\x88\xcc\x29\x88\xec\x40\x05\x91\xbd\xbb\x82\xc8\x50\xf8\xa5\xdb\xf7\xbd\x39\xfa\x55\xa8\x87\xfc\x57\x78\x41\x62\xf6\xa1\x77\x95\x61\x1c\xad\xce\x5b\x22\x5e\xea\x9d\xa7\xdd\xf8\x12\xd1\xd2\xf7\x8b\x72\x55\x5e\xd0\x9a\x0a\x4a\x5a\x0d\x57\x7d\x7e\x1d\x56\x7b\xe2\x15\xc9\xb3\xcf\x27\x27\x9f\x67\xf8\xbe\xa2\xad\x9c\xde\x47\x6b\xd1\x40\xe6\x43\xca\x2e\xd5\xa0\x14\x57\x32\x3d\xfb\x22\xf0\x16\xc3\x72\xd5\x75\xf7\x65\x60\xe8\x17\x39\x9b\xac\x9a\x16\xbc\xe0\xcb\x1a\x3d\xcc\x8f\x31\xdc\x43\xe4\x1c\x53\xbd\x09\x4e\x10\x66\x40\xd5\x15\xda\x62\x15\x3c\x9f\xee\x51\x87\xbf\x24\x5f\x6e\xfd\x50\xe7\x5f\x50\x16\x53\x37\x22\x66\xe9\xd8\xbb\xb3\x50\xf5\xc1\xff\x66\xa1\xff\x66\xa1\xff\x66\xa1\xff\xb3\x58\xa8\xee\x91\xd4\x44\x12\x95\x0a\xbe\xdd\xc9\x56\x01\x15\x55\x17\x2f\x44\x3f\xaf\x24\x3e\xf8\xb0\x2e\x2f\x95\x98\x9c\xa7\x59\x31\xf3\x59\x31\xb7\xac\xf8\xbf\x1d\xbb\xbd\xa5\x75\xfd\x40\x7f\xd5\xbf\x19\xee\xbf\x19\xee\xbf\x19\xee\xbf\x19\xee\x07\x61\xb8\x3b\x85\xd3\x0f\xc3\x8d\x7f\x8d\x0c\xf7\xb2\xa6\xd7\xd7\x84\x7b\x9e\xba\xf6\xf2\xe0\xa2\x6c\xc9\x03\xfb\xfc\xc1\xb5\x5a\xc8\xe8\x06\x62\x47\x7d\xfb\xe8\x60\xe6\xfc\x2f\x10\xe7\xca\x8d\x6a\x64\x98\xd2\x78\x2c\x72\xd2\x09\x20\x93\x1f\x03\xf1\x63\x1f\xe4\x8a\x09\x8b\x54\x92\x39\xcf\x6e\x4d\x73\xf1\xcb\x10\x13\x45\x38\x76\xb4\x56\xf6\xb0\xd3\xbe\x0f\x15\x16\xe1\x07\x87\x7e\xe6\xfe\x0a\xc9\xdf\x66\x45\x60\x1a\xa6\x64\x26\xe6\x05\x57\xf9\x71\x70\xe6\x33\x98\x0c\x26\x56\x87\xfc\x3b\x57\xa5\x9c\xaa\xbc\x2c\x3a\xf2\x51\x71\x90\x0c\xab\xbe\x7b\xe2\x70\x64\x1b\x39\x9c\xcb\xdb\xed\x1c\x61\xd9\x46\x50\xfd\x89\xa5\xe0\x4e\x3b\x5e\xa8\xbc\x6c\x89\xe4\x42\x63\x12\xba\xdd\xae\x03\x12\x2f\x89\x78\xd2\x30\x41\xde\x26\x5a\x71\x2e\x2b\x30\x00\xba\x8d\xef\x03\x0f\xda\x5e\x07\xef\xc8\xe6\x96\x91\x7d\xb7\x7f\xf1\x51\xf5\xeb\xdc\x8f\xef\xb1\xad\x5a\x22\x5c\x76\xfc\xd0\xca\x0d\x18\x9e\x04\x8f\x8e\x4d\x50\x96\x0d\x29\x0b\xca\x35\x61\x39\xb3\x4f\xc9\xe4\xd1\x77\x7f\x38\x3b\x3f\x7b\xf6\x3a\x38\x42\x31\x0d\xf2\xcf\x37\xfe\xaf\x81\x57\xc7\x80\xe9\xa6\xef\xa3\xac\x19\x06\xc2\x94\x1f\xfe\x42\x97\x53\x26\xb5\x06\xce\xdb\x22\x2b\xf9\x65\x9b\x21\xca\x72\x85\x61\x84\x7a\xb6\xba\x1c\xa0\x9e\xf1\xf5\x3b\x6d\xf5\x72\xd6\xce\x8b\xb5\x32\x98\xcb\xbe\x0a\x86\xe1\x3e\xd7\x60\x15\xe9\x61\x71\x84\xd5\x42\xc1\xaf\xd1\x09\xc2\x4d\xf0\x73\xab\x66\xbd\xc4\xad\xcb\xe8\x4b\x70\x5e\x9a\x58\x68\x0f\x43\xb4\xb3\x11\xa5\x36\xa4\xb7\x2b\xdc\x22\x6b\x2a\xe9\x8b\x23\x06\x7c\x08\x83\xc9\x18\xd7\x23\xbd\x01\xd4\x8d\x5f\x6d\x8e\xc6\x63\x9e\x7b\x18\x53\xb8\x44\xb8\x85\x67\xb8\xb5\x91\xc7\x86\xc6\xca\x43\xb9\x82\x16\x61\xe4\xec\xb6\x1f\xd1\x0d\xc2\xfb\xda\xc2\xfb\x25\x77\x96\xb7\x07\xcc\x8d\xd4\x39\x64\x1a\x80\x84\x14\x70\xeb\xed\x7d\x02\x5f\x33\x41\x01\x3a\xc5\x6f\x64\x10\xb5\x29\xb4\xd3\xd6\xfb\x34\x47\xaa\x41\x38\x5e\x7e\xe8\x5c\x2a\xef\x8a\x9f\x21\x01\xf5\x49\x50\xef\x23\x36\xed\x89\x6a\xb2\xae\x96\xec\xbf\xab\xab\x25\xfd\x18\x2c\x2f\x8e\x45\xf9\x75\x9e\x76\x71\x4c\x88\x5e\xea\xd2\xe8\xfb\x2d\x11\xdf\x9a\x79\x7c\xb5\x8c\x6d\x09\xf6\x4e\xd1\x41\xdc\x09\x0c\xb3\x2b\xe5\x27\xdb\x76\xeb\x9c\xba\x3c\xd6\xd5\xe3\x96\xfa\x1d\x59\xd6\x64\x21\x36\x9b\x91\xfe\xcb\xad\xb4\xbb\x94\xa6\xcb\xbc\xf3\x76\xd2\x5e\x95\xd7\x41\x91\x04\xfd\x40\xc6\x54\x53\x48\x39\xae\xea\x8f\x78\x5a\x0a\xd2\x6b\xde\xe8\x74\x96\xcb\xe2\x78\x36\x0f\xd0\x1f\x01\xc4\x71\x74\xac\xfd\x54\x89\x03\x2b\xd9\x4a\x96\xdb\x15\xb2\x35\x9c\x48\x51\x6b\x8b\x86\x45\x33\xd3\x28\xd4\x3e\x8d\x0f\x78\xd1\x1d\x04\x73\xa8\x8e\xd8\xa4\x46\xe1\x05\xd3\xae\x32\x70\x7c\x39\xd8\x47\x33\x80\xb5\x39\xf4\x7c\x8c\x9d\x00\x5c\x45\x6c\x36\xc6\x95\x70\x54\x14\x0c\x60\xec\xdc\x5c\x5a\xb3\x94\x38\x8d\x6c\x57\x7e\xe2\x34\xbb\x6d\x6c\x22\x10\xbd\x77\x64\xe7\xc3\xab\xb2\x65\x9f\x88\xe1\x05\x21\x6c\x08\x20\x48\x65\x4d\x5b\x52\x0d\x1f\x0c\xdb\xf5\x8a\xf0\x1c\x05\x25\xe4\x12\x10\x2f\x65\x22\x58\xce\xa6\xc2\x0d\xdf\x8f\x76\xa8\xd3\xa4\x6b\x44\x8b\xcb\xe0\x69\x92\xf1\x38\x6a\xb6\x38\xa3\x61\x2d\xc0\xeb\x94\xff\x7c\x18\x93\xc8\xc2\x1c\x3e\x96\x3f\xef\xb4\x6c\x10\x43\x12\x52\xde\x01\x68\x97\xaf\xe9\x92\x2c\xee\x16\x35\x79\x52\xd6\xf5\x45\xb9\x78\xd3\x4e\x47\x27\xda\x1c\xf1\x55\xd3\xbc\x99\x8e\x4e\xb6\x08\x2f\x03\x89\xb3\x2b\xee\xa5\x56\xd8\xba\x90\x8a\x34\x23\x3c\x93\xab\x35\x24\x6f\x57\x9c\xb4\xad\x5c\x09\xb0\x5d\x11\x2a\xae\x08\x1f\x5e\x10\xc0\x51\x1b\x36\x3c\xe0\x8c\x03\xd2\x0b\xa9\x09\xf0\x73\x4e\x6c\xb9\xf7\xe8\x7f\xaa\xa7\x91\xf8\x22\x5e\x2c\xfe\x6d\xb7\x08\x8b\xf1\x58\xf1\xb2\x2d\xca\x17\x98\x68\xe7\x2c\xcc\xf0\x1a\xd7\x45\x9b\x2f\xbc\x20\x99\x85\x27\x77\xa9\x4d\xb1\x40\xb8\x4e\xef\x1e\x8b\xe1\x55\x2c\x70\xce\x8c\xe4\xa7\x65\xa2\x1d\xda\x9c\x36\xb8\x06\x42\x87\x61\x86\x1a\x26\x83\x40\xb6\xad\x01\x50\xec\x19\x80\x52\xb8\xa2\x39\xc2\x10\x73\x12\xa8\x18\x10\xd5\xa4\x2a\xf3\x35\x4b\xa1\x98\x13\x1c\x20\xdb\xa7\x4b\x5b\x5b\x37\x7c\x6a\x85\x61\xd2\x94\xf8\xd8\x04\xc8\x35\x0c\xe1\x35\x3c\xc3\x6b\x84\x17\xdb\x28\x3a\x28\x84\xff\x8c\xc0\x3f\xf1\xc2\x8f\x4a\xaa\x8c\xd5\xcc\x13\x9a\x36\x9b\xdc\xa0\xf1\x2a\xf8\x42\x40\x53\x8d\xa7\x82\x54\xdd\x99\x20\x15\x02\x05\x5b\x85\xe6\x2c\x3d\x99\xf6\xea\x50\x39\x4c\xa9\xad\x1f\x4f\x98\x35\xb3\x92\x12\x5d\xcd\xbb\x81\x57\x4c\xec\x19\x78\x2a\xd6\xfd\x7d\xc4\xcc\x0f\x24\x26\x7e\x28\x93\x30\x37\x8f\x07\xce\x38\xfc\x24\x62\x86\x49\xb0\x75\x30\xb5\x98\xca\xc0\x96\x4d\x72\x69\x5a\x30\x8f\x20\xa8\x3f\xaf\x17\x75\xb3\x78\xf3\xa0\xad\x1b\xe1\xc1\x08\xb4\x9f\xba\xc7\xe1\x04\xfb\xc5\x05\xb9\x5e\xd5\xa5\x20\xbd\x15\x83\xd2\xd7\xf4\x2d\x65\xed\xa7\xf0\x23\x7a\xe5\x55\xbf\x03\x1f\x6a\xa8\xde\x99\x6f\xa9\xa2\x7f\x84\x19\x37\x89\x50\xec\x1c\x4f\xc8\x5b\x41\x58\x95\xdf\xab\xd0\xae\xa9\x9d\x53\xac\x43\xd0\xa6\x59\x86\xcf\x99\xfc\x23\xc6\xc1\x56\xa8\x58\x09\x70\x7e\xd0\xba\x01\x0d\x4b\xce\x3d\xad\x5e\x80\x37\xd8\x33\x6d\x5e\xef\x38\xc7\x29\xab\x9b\x72\x41\x63\xa4\xe4\xa4\x15\xaf\x96\xf2\xa8\xc9\x2d\x75\x80\x90\x34\x12\x2a\x35\xea\x25\x6d\x05\xe1\xa4\xd2\xe0\x5f\x70\x87\xe4\x92\xa3\x9e\x4b\x56\x28\xa9\xf9\xac\xd6\x20\x9e\xba\x08\x86\x69\xf0\x12\xdf\x82\x15\x50\xce\xbe\x20\x95\xc7\xc7\x85\xcd\x21\xdc\x1d\x10\x0b\x06\x44\x0d\x60\xb0\x6b\xee\x1c\xd6\xf4\x0c\x28\x82\x9a\xfc\x60\x0e\x4e\x92\xe2\x0c\x06\x93\x21\x8b\x62\x27\x7f\x0e\xe2\x66\x68\xfb\xba\xe4\x97\x44\xc8\x86\x7e\x94\x2d\x82\xe1\xa0\x41\xda\xac\x13\x36\x08\xd4\xa5\x7c\xbe\x33\x34\x68\xc6\xe3\x18\xc6\xa9\x44\xe3\x71\x99\x40\x6e\x82\x6d\x9d\x04\x44\x27\x38\x5b\xb9\xb0\x55\x14\x41\xa0\x4f\x38\x29\xab\x57\xac\xbe\xcb\xbd\xef\x9d\xf8\xe3\x98\x78\x95\x01\xc2\x77\xbb\xc5\xde\xa9\x94\x20\x05\xe5\x80\x18\x2d\x86\x06\xf3\x8b\x1f\x4f\xce\x2b\xd2\xb7\xca\xdb\x2d\x7a\xc7\xdd\xef\xed\xc2\x77\xdb\xfd\x7e\xc5\xfe\xdd\xff\x4b\x71\xd2\x5f\x7a\x5f\xfb\xcb\xdd\x69\x62\xa5\xa8\xb1\xb7\x11\xf5\x1e\x9a\x51\xc0\x94\x7f\xa6\xe4\x36\x6e\xa5\x77\x04\x3d\x3c\x02\x32\x5b\xb4\x8f\x24\x61\x74\x3f\xca\xeb\x67\x72\x0e\x2b\x33\x99\xcd\x33\xb3\x1d\x53\x03\x75\x9b\x4c\x6f\xed\x4e\x0b\x99\x4d\xd8\xd1\xe6\x9d\xd2\x6a\x9b\x03\xed\xf7\xde\x94\xf9\x44\x73\x45\xea\x15\xe1\xe6\x4c\x31\x13\xf8\x33\x9c\x11\xd4\x88\x1e\xe5\x36\xd1\xf2\x7b\x69\x2d\xde\x2a\x4b\x0d\x3f\x45\x7b\xc6\x84\xf6\x15\x7c\xc1\x44\x7d\x48\x2e\xfc\xaf\xe6\x7d\x5f\x9d\x10\x6b\x0e\xdd\x49\x1f\x65\x1f\xf1\xc2\x6e\x94\x43\x86\x1f\x9e\xf3\x1f\x3d\x40\x2c\x21\x4b\x42\xce\x07\xa3\x45\xdd\x2b\xba\x3c\x60\x23\x19\xe2\x80\x4d\x13\x1c\x99\x81\x06\xd3\xa1\x6a\x43\xf7\x65\x55\x59\x07\x94\x2d\x8e\xf8\xf1\x61\x4d\x28\x0c\x43\xbf\x15\xff\x70\x4f\xe9\xe7\xbd\x4d\xd9\x5d\x18\xf3\x7f\xd1\xb7\x70\x7b\xc5\xb9\x7f\xc6\x5a\x7e\xf5\xfa\xe5\xd7\x8f\x4b\xde\x4e\xcc\xe8\xf2\x7b\x5a\x4d\xb3\xef\xff\x63\xf9\xe3\x63\xf1\xe3\xab\x0c\xc3\x00\xa7\x9f\xdc\x6b\xb3\x66\x9b\x4d\x67\xd9\xd8\x26\x83\xc3\x0a\xb4\x5e\x39\xc6\x4c\x67\xb3\x2f\xf0\xec\xf3\xff\xc4\x27\x27\x73\x3c\x9b\x7d\xfe\x5b\x7c\x72\x3c\x9f\xeb\xeb\xcc\x59\xe6\x2a\xcd\xee\xa3\x6a\x9f\xe1\x6c\x38\x94\x2f\x4e\x7e\x87\x4f\x54\xd5\xff\x33\xc7\xf2\xbf\xdf\xa9\xff\xfe\x53\xfd\xf7\x85\xfa\xef\xb7\xea\xbf\xff\x50\xff\x7d\xae\xfe\xfb\x4c\xfd\x77\xa2\xfe\x3b\x9e\xcf\xe7\x58\xb6\xfb\xb7\xbf\xb1\x6c\x3e\xc7\xea\x78\x20\x82\x70\xd9\xe1\x7c\x3b\x97\xef\xb3\xab\xb2\x7d\x76\x53\xd6\xd9\x74\x59\xd6\x2d\xc1\xd9\x7a\x75\x53\x42\x81\x6c\xf5\x7f\x32\x9c\xad\x7e\x27\xff\xf9\x4f\xf9\xcf\x17\xf2\x9f\xdf\xca\x7f\xfe\x43\xfe\xf3\xb9\xfc\xe7\x33\xf9\xcf\x89\xfc\xe7\x38\xeb\x93\x9f\x32\xba\xcc\xe6\xdb\x4f\xb0\xd4\xbb\xa7\xf7\xd7\xb0\x3c\xea\x28\x7c\x07\xd2\x98\x5c\x5d\xb4\xd9\xcf\xa1\xb2\xb4\xbc\xf1\x4f\xa7\xb2\x1f\x9f\xfc\xd7\xcb\x57\x97\x4f\xfe\xd4\x43\x65\x90\x14\x01\xef\xa7\x36\x4d\x6c\x29\x5a\xc3\x19\x34\xb2\x87\xe4\x3e\x83\x7a\x3b\xe9\x05\xef\x26\xd9\xbd\xf5\xf7\xd1\x9b\x11\x22\x7e\x16\xc5\xb8\x65\xde\x47\x31\x4a\x57\x57\x79\x55\x1e\xa8\xd3\xd3\x4a\x03\xea\xe9\x2f\xe1\x94\xc8\x7f\x41\x74\xb1\x7f\xfb\x25\x7e\x64\xbf\xc4\x7f\x36\x0a\xdb\x47\x77\x49\x0c\xaf\x29\x6f\xbc\x4c\xd5\xb9\x16\x47\x91\xce\x54\xa4\x8d\xba\x1c\xcf\xee\xb7\x36\xdd\x94\xc2\x37\x79\x1f\x79\x58\x35\xaa\x90\xa9\xfb\xcd\x2b\xa1\x28\xcc\x7a\x55\x52\xb5\xf5\x2f\xca\x96\x2e\x1e\x54\xbc\x59\x55\xcd\x2d\x0b\x8e\x9d\xe0\xcd\x83\x45\xc3\xc4\x01\xce\x39\x92\xd3\xa6\x1a\xd6\xb0\x06\x06\xb8\xfe\x81\x71\x33\xdc\x5d\xbe\x5d\xf0\xa6\xae\x35\x63\x4a\xe8\xb3\x1d\x4b\x55\x00\x82\x8f\x6b\xbc\xc0\x4b\x5c\xe1\x2b\xbc\xc2\xd7\xf8\x06\xdf\x39\x2e\x75\xe1\x5d\xde\x5c\xfc\x77\xbd\x62\xbe\x7c\x77\x56\x7c\xfe\x2f\xc0\x8a\xcf\xff\xc7\xe0\xde\x9c\xff\x6b\xb3\xe2\xf3\x5f\x8c\x15\xdf\x3a\x7e\xc0\x2d\x6e\x7c\xca\x77\xd3\x73\xe4\xe2\x9e\x9f\x43\x78\xa7\xc7\x03\x87\x07\x77\xf7\xc7\xad\xa3\x83\xbe\x71\xe3\x13\x73\x8f\xfc\x0f\xc2\x4f\x83\x5f\x8a\xfc\x98\x05\xc2\xf4\xa6\xe5\xd9\x47\xf5\xfc\x38\xfb\x97\xf0\xfc\x78\x15\x78\x7e\xbc\xfa\xa0\x9e\x1f\x6f\xff\xed\xf9\xb1\xd3\xf3\xe3\x4d\xec\xf9\xf1\xe6\x63\x7a\x7e\x3c\x4a\x78\x7e\x3c\xda\xe1\xf9\x71\xd1\xef\xf9\xf1\x3a\xf2\xc0\x78\xfd\x8b\xbb\x80\xd8\xae\xdf\x78\xf2\xc3\x9b\x5f\xd0\xf9\xc3\x0e\xe0\xa5\xb1\xe8\x1b\x99\xe3\x23\xba\xad\x63\xef\xc3\xbf\x35\x9c\xd6\xe5\x82\xbc\xdf\x9a\x09\xf2\x13\x76\xb0\x54\xc2\x0e\x82\xee\x1b\x80\xde\x9c\x91\xf9\x16\xb2\x33\x7a\xec\x67\x34\xf2\x7f\xe2\x26\x62\x3e\xa3\xf0\x01\xce\x1d\x2f\x6a\x36\x9b\xc6\x67\xbe\xf2\x74\x69\x42\xde\xd4\x14\xdc\x18\xa3\x27\x9c\xa8\xbc\x4c\xa8\x9b\x77\xd9\x8f\x85\x30\x97\x26\x9b\x0d\xdf\x22\xdc\x20\x4c\x3d\x40\xd8\xa0\x3f\xe8\x0e\x46\x13\x3e\x3f\x6d\xba\x47\x02\x35\x47\x02\x0e\x5e\x6a\x51\x5e\x5f\x15\x1e\x17\xdd\x1e\xfa\x97\xb6\x31\x49\x66\x10\x6e\x3e\x90\x7b\xd0\xdf\x8b\xdc\x28\x14\xe7\x82\x97\x8b\x37\xa4\xc2\xe6\x36\xf1\x5c\x79\x7c\xe0\x32\xfa\xdd\x46\xbf\xd7\xd1\xef\x3a\xfa\xbd\x88\x7e\x2f\xa3\xdf\x55\xf4\xfb\x2a\xfa\xbd\x8a\x7e\xdf\xfd\x8f\xf1\x35\x7a\x65\x7c\x8d\x5a\xe7\x6b\x04\x6a\x4f\xf1\x36\x6f\xfd\x64\x7b\xe6\xa2\x7b\xf0\x4c\x71\xe1\xd6\xc3\x7d\xf9\x30\xe0\x5b\x2f\xf3\xd7\x39\x29\x4a\x3f\xc1\x72\x19\x25\x58\xe6\xf2\x9c\xca\x04\x2f\x99\xd2\xf9\x28\xbb\x7c\xc1\x9e\x48\x29\x26\x93\x5a\x2d\xbf\x6c\x27\xa9\x97\x9b\x4d\x52\x35\x7c\xf0\x20\x28\xfc\x80\xb2\x0c\x61\x18\x45\xd0\x09\xa9\xfa\xfb\xb0\xef\x0e\xe8\x82\x54\x7d\x3d\x50\x76\xf9\x6a\x2d\x76\x7c\x87\x79\x7b\xe0\x87\x34\x6b\xe1\xf5\x43\xdb\xd7\xcd\x7a\x71\xf5\x94\xdc\xd0\x05\xb1\xed\x07\x4f\x37\x9b\xc7\x4d\x53\x93\x92\xe5\xa3\xd1\x2d\x65\x55\x73\x3b\x1e\x67\x0d\x13\xb2\x44\x2b\x4a\x2e\x24\x6b\x54\x2f\x90\x6b\xd8\x74\xff\xa2\xea\xd1\xbd\x8d\xaa\xff\xc0\x5e\xa4\xeb\xce\x4d\x81\xc9\x9a\xd1\x9f\xd6\xe4\x45\xe5\xb5\x0a\x59\x4e\x6f\x48\x95\x41\x24\x83\x7b\xca\xaa\x9a\x7c\xd7\x34\xe2\x65\xb3\x6e\xc9\xd3\xe6\x96\x65\xd8\x30\x3a\x53\x48\x29\xf9\x10\x38\xc9\x16\xa4\x15\x0d\x6f\x33\x3c\x9b\xbb\x02\xd7\x6b\x01\x69\x57\x5e\x5d\xb4\x84\xdf\x10\xee\x9a\xb8\xd5\x25\x4a\x46\xaf\xa1\x88\x5e\x8d\x1b\xfc\x1a\x90\xb7\x88\x73\xa0\x6b\x71\x4e\x8d\x03\x1d\x6b\x9a\xd5\xae\x98\x89\x96\x88\x75\xb7\x40\x80\x16\x85\x59\x51\xe9\xdc\x4f\x93\x9f\xfe\x7f\xf6\xde\xbc\xbb\x8d\x1b\x4b\x14\xff\x5f\x9f\x82\xac\xf7\x7b\x35\x85\x11\x48\x53\x76\x92\xce\x50\x2e\x73\xbc\x76\x3c\xcf\xb6\xfc\x2c\xa7\x33\x39\x6c\x3e\x0f\xc4\x02\x45\x44\x45\x80\x8d\x02\xb5\x44\xe4\x77\xff\x1d\xac\x85\x5a\xb8\xca\x56\x62\x87\xdd\x39\x16\x0b\xcb\xc5\x7e\x71\x37\xdc\x3b\xc3\xfc\xe6\x14\x4b\x62\x49\xa2\x8c\x7e\x82\x04\x6a\xe1\xb3\xa4\x45\x92\xd8\xcd\xa1\x7b\x0e\x52\x9d\x46\x18\xb4\x04\x27\xe7\xe7\x98\x0f\x02\x00\x74\x9c\xbf\x9a\x99\xcb\xb1\x1b\x57\xe8\xcc\x20\x2e\xde\x16\x4a\xdf\x60\x89\x39\xfb\x7d\x20\xda\x76\x51\xe6\x73\x6c\xe3\x5f\x67\x11\x01\xf3\x39\x0d\x43\x5a\x4c\xf1\x9e\xe8\x78\x91\x63\x9f\x47\xda\xda\xc4\x44\x25\xa3\x45\x07\x5d\x44\x92\x7e\x2e\x4e\x16\x64\xcb\x67\x04\x71\x82\x5a\xec\x8a\x66\xf9\x7c\x90\x36\x49\xf4\x95\x09\x03\x35\xec\xbc\x19\x56\x6c\x06\xc5\xcf\x23\xe6\xe7\xa3\x62\x7e\x16\x23\xaf\x1b\x16\x2f\xa1\x30\xcc\x5c\x13\x9a\x0f\xc7\x11\x92\x64\x68\x44\xa0\x68\xe7\xa7\x00\xf4\xf2\x89\x8a\x9b\x47\x5d\x51\x5a\x25\x63\xde\xd8\x1e\xa6\x2c\xc3\x11\x57\xaf\xa5\x16\xd0\x0d\x15\x25\x3a\x46\xde\x1b\x92\x09\x6c\x03\x8f\x6b\x10\x9c\x31\xa1\xf2\xe4\x7d\x02\x97\x2d\xab\x04\x08\xf5\x29\xad\x02\x0b\x38\xce\xc8\xef\xd8\x44\xf7\xe4\x33\x9a\x32\x36\x7d\x7a\x85\x38\xfe\x80\xad\x08\x6d\x45\x6d\xc6\x09\xa6\xfa\xf0\x0c\x55\x44\xb7\x35\x80\x74\x6c\x4f\x1f\xc7\x84\x61\xb4\x7c\xa8\x81\x87\x6a\xa0\x71\xee\x35\x1b\x8e\x4f\x65\xc2\x4f\x6a\xa4\x6a\xba\x56\x4c\x96\x86\x80\x69\x12\xac\x9c\x1f\x00\xcd\x66\x97\x4c\xa7\xb6\xcb\xa9\x22\x8d\xfa\xf0\x72\x3a\x1a\x87\x7d\xeb\xac\xed\x28\xde\xb1\x04\x7b\x61\xf4\xa8\xf3\xee\x46\xb4\xaf\x75\x15\x2d\x57\xc2\x7f\xaf\x8a\x83\x88\x82\x63\x12\x86\xc1\xb3\x93\x17\xbf\x4a\x16\x85\x58\x1f\xe9\x6d\xc1\x7e\x9e\x4e\x31\x7f\x8e\x24\x35\x19\x86\xc1\x4f\x1f\xdf\xbe\x59\x51\xe2\x18\xdc\x9a\xe0\x70\xce\x40\x8b\x14\xfa\x14\xdb\x23\xd0\xd3\x28\xae\x5b\xdf\x1f\x06\x16\x79\x78\xdf\x88\xda\x90\x93\x28\x49\x74\x39\x35\xf9\x84\x9e\x2b\xa5\xb4\x8d\x6b\x69\xa2\x78\xd7\x20\x3e\xbd\x27\x94\x4e\xfc\xef\x29\x3b\x43\xa9\x5a\xa4\x2c\x32\x60\x75\x4e\x09\xb2\x75\x17\x58\xb3\x0e\xfd\x41\xbe\xe2\xba\xee\x67\x38\x21\xab\xb7\x66\x5d\x33\x5b\xef\xce\xe5\x40\xd6\x6f\x50\x37\xcd\xfa\x2a\xc2\xaf\xab\xf3\x5c\xb8\x3f\x34\x96\x77\xf7\xd6\x4b\x2a\xa7\x30\x09\xc3\x0f\x11\x2e\xf0\xf8\xa2\x5d\xbc\xdb\x62\x51\x47\xc7\x2c\xaa\x1d\x38\x99\xd5\xda\x85\x9b\xd8\xbb\x8a\xfd\xaf\xeb\x41\xf9\xa8\x18\x73\x39\xff\xb4\xd8\x23\xa8\x57\x50\xb9\x36\x79\x4d\xdf\xa7\x48\xad\x08\x8d\x69\xb1\x66\x7e\x74\x81\xbd\xa1\xb0\xc4\xa5\x14\xcb\x1d\x1f\x35\x3b\xe0\x40\x5e\x05\x71\x50\xb8\x19\x60\xd0\x6a\xa9\x42\x01\x80\x91\x88\x89\x0e\xa8\x20\x57\xc5\x1a\x6f\x58\xa1\x03\x3c\xd7\xbd\xa9\xa3\x20\x95\x77\x4b\x11\x05\x8d\x40\x52\xa0\x11\x2f\xc2\x41\x49\xe2\x14\x34\x75\x40\x2c\xf9\x56\x84\xa2\xa4\x1d\x98\x26\xcf\xc7\x24\x4d\x22\x62\x4f\x5e\x69\x91\x8a\xc0\xdc\x3a\xc1\x0f\x11\x29\x2c\x2f\x35\xa3\xb1\xd0\x16\xda\xad\xac\x4f\x87\xbc\xad\x52\x3f\x6b\xf7\x55\x99\x62\x52\x74\x7d\x19\x50\x91\x2d\xd7\xb2\xc2\xe6\xd1\x71\xc4\xe3\x88\x9b\x40\x23\xb9\x7c\x4a\xb1\xce\x46\xa4\xde\xef\x0c\xda\x2a\x24\xa8\x5c\xc1\x0c\xb4\x33\x36\xc1\x75\x86\xd2\xc1\xff\x1a\xb2\x89\x8a\x8e\xd9\x8c\x63\xdc\xa6\x2c\x51\x0a\xec\x30\x6c\x46\xc1\xff\x52\x0f\xc8\xe3\x62\x7a\x90\x27\xfc\x43\x79\xe5\x5f\x00\x00\xe6\xf3\x75\x7d\x31\x11\x49\xef\xa5\x37\x92\x7f\x53\x1b\x3f\x1b\xb3\x59\x9a\xe4\x97\xa7\x52\x1f\x2c\xc9\x93\xdc\x5a\x91\xaa\x00\x00\x72\x09\xaa\xfe\x22\xd6\xa6\x51\xb5\x2b\xd9\x66\xfa\x47\x24\x99\x47\xb9\x69\xe4\x5e\x96\x8c\x62\x36\x3b\x13\x1c\x9b\x60\x93\x65\x9c\xbf\x76\x0f\x81\x5b\x27\xd8\xa8\x6d\xd6\x9e\xf9\x4a\x77\x12\x92\x0d\x19\xa5\x78\x28\xa2\x25\x3d\xb6\x82\x8d\xbc\x53\x65\x2c\x5c\xd3\x9b\x75\x14\x83\x5c\x70\x1f\xa9\x4b\xea\xcd\xc3\xe9\xc5\xb6\xbc\xcc\x65\x97\x5f\x4e\x00\x76\x36\xb9\x0f\x36\x6d\xbe\x7e\x79\x6b\x3a\x91\xbf\x94\x51\x81\x79\x6a\x98\x05\x4b\x86\xf2\x9c\x5c\xcb\x9b\xa9\x5c\xdd\x35\x4d\x18\x22\xb1\x76\x50\xdb\x50\x99\xb5\x00\xb6\x24\x34\xf3\xcb\xaa\x4c\xb1\x2c\x7b\xcb\xe4\x5c\xfe\xaa\x59\x99\x72\x2c\xdb\xd7\x55\x2b\xb2\x7e\xe1\xb3\x47\xa2\xc0\x1e\x71\xf7\xad\x08\xc3\x9c\x07\xe2\x60\x3e\x97\x6c\x82\x28\x71\x53\x51\x07\x52\x49\x7f\x3d\xbd\x44\x44\x91\x39\xa6\xcd\x88\x43\x0c\x20\x73\xf9\x3a\xf9\x05\x4e\x05\xca\x40\x24\x00\x44\x31\x6b\x27\xf2\xf3\xbf\x61\x66\x7f\xfe\x7a\x80\x1e\x13\x93\xfa\x0e\x9f\x23\x41\x2e\x71\x2f\x42\x71\x39\x0d\x0a\x3b\xc2\x17\xe6\x91\x09\x00\x5d\xf4\xc4\x16\x7b\xaf\xa6\xb1\x58\xd5\xa6\xd5\x56\xcd\x6c\xab\xbf\xe6\xad\x66\x71\x39\xad\xbe\xaa\x6d\xf5\x57\xdb\x42\x18\x7a\x75\x57\x35\x9b\x3f\xd7\x7a\xaf\xb3\x24\x7d\x13\xa1\xf9\x3c\x03\x61\xa8\xe6\x2d\x21\x99\x61\xdb\xec\xac\x22\x98\x41\xae\x42\x32\xa5\x19\x6e\x54\x81\x2e\x16\x07\x2b\x50\xc3\xd5\x18\xe3\x34\x80\x02\xde\x0e\xd1\x54\xcc\xb8\x92\xa0\x4d\x51\x96\x91\x4b\xac\x9f\x23\x2e\xa5\x67\xe3\x3a\xe4\x53\xbb\xd5\xeb\x1a\x91\x28\x57\xf7\xb8\x40\x86\xaf\x27\xa3\xe3\x4a\x8e\xae\x53\x3a\xda\x6b\xce\x88\x27\xba\x28\xb5\x5d\x87\xe8\xdd\xc3\x97\x83\xa5\x7c\xa3\xa6\xea\x37\x61\x16\x6b\xe8\xff\xba\xd7\x1e\x8a\x90\x5d\xda\x0c\x5e\x8a\x27\x40\x19\xc9\x6d\x3d\xb8\xda\x35\xfc\x22\xe3\x5b\xd9\xd2\x46\x43\x4c\x70\x26\x08\xd5\xe4\xb8\xa6\x9e\x97\xb9\xde\x70\x5b\xf4\x1c\x5b\x42\xfb\xd9\xcd\xeb\xc4\xbf\x38\x72\x58\x65\xde\x20\xa7\xf6\x97\x80\x0f\x04\xce\x14\x99\x54\x7c\x56\x69\xb4\x84\x1c\x67\x2c\xbd\xc4\xda\x5e\x5a\x07\x44\x8e\x4c\x5c\x97\x2e\xa6\x97\x84\x33\xaa\xba\x0e\xda\xde\x57\x4e\xd3\x8a\x9b\x14\x57\xda\xd5\xeb\x16\x04\xf6\x2d\x96\x1c\x02\x54\xc8\x9a\x4d\x4d\x6c\xfd\x91\xf2\x50\xd6\xe6\xe4\x7c\x2c\x20\x8b\x45\xfb\x8a\x24\x62\x0c\x51\x2c\xda\x63\xac\x12\x25\x73\xc4\xc4\x18\xf3\x53\xd9\x46\x76\xe0\x34\x83\xcd\x38\xce\x1c\x8f\x3f\x6b\x10\xda\xc8\x74\x93\x69\x9c\xf5\x67\x83\x03\x7c\xe8\xb1\x1f\x33\x18\x74\x1b\x79\xa8\xbc\x14\x06\xc7\x41\xee\x96\x29\x0c\x23\x59\x5a\xb0\x69\xb7\xe1\x07\xd7\x3b\x0e\x80\x0e\x92\x27\x73\x65\x67\xbd\x6c\x6a\xb2\x89\xc9\x56\x43\xf0\xf2\x89\xc9\x67\x26\x5f\x0d\xcc\xcb\x67\x26\x1f\x99\x7c\x3d\x5c\xaf\x00\x02\xf6\x99\x94\x51\x22\x8f\xc5\x24\x3d\x45\x23\xac\xf8\xff\x01\x08\xc3\xd3\xc2\xd3\x5a\xa2\xda\x3a\x8d\x94\xe6\x28\x5b\x44\xf9\xbb\x5a\x78\x19\xbf\x8f\xa2\x49\x7c\x03\xbc\xe2\x15\xf1\x6a\x9f\x0c\x94\xea\xa2\xa0\x38\x2c\xaa\x15\x7d\x1d\x86\xa7\xc6\xaa\x8b\xc4\x5c\xc7\x86\xf6\x96\xf2\x74\xdd\x20\x58\x2c\x00\x7c\x1f\x4d\xfc\x1e\x1a\x89\x6d\x9f\x0d\x60\xae\x3f\xf5\x82\x2f\xe6\x91\x54\xea\xea\x01\x38\xf1\x83\x0d\x96\x60\xe7\x82\x93\x3e\xda\x12\xbc\xab\xba\xba\x05\x4f\x66\xd0\xcf\xb6\x6c\x22\xaf\xbb\x51\x1b\x4a\x2c\xd0\x9f\xed\xd6\xc8\x89\xd2\x50\xac\x6a\x65\x09\xc7\xda\x4f\x77\x59\x97\x0a\x9c\xcd\xd6\xa9\xa6\xf9\xe1\x8e\xeb\xb6\x6d\x0f\xaa\x9c\x4d\x7f\xb4\x6d\xd3\x15\x18\x1b\xb4\x59\xe0\x70\xfa\xc9\x2e\x4d\xfa\x20\x56\xb7\xb8\x8c\xa9\xe9\x8f\xb7\x6c\x77\x09\xa0\x35\xad\xd7\xf0\x3a\xfd\xe9\xb6\x2d\x57\x81\x94\x5a\x9d\x78\x5a\xd4\xe7\x92\x09\x91\xd7\xc7\xb1\x24\x7e\x9b\x38\x17\x22\xcd\xe7\xfe\x57\xce\x4d\xac\xd4\xab\x05\x00\x1c\x3b\x0e\x45\x89\x18\x8a\x02\x33\x6b\x7d\x30\x4b\xd3\x03\x5c\xce\x5d\x54\x4d\x51\x3e\x68\x05\xb7\xa3\x77\xfe\x35\xc3\x99\x78\x6a\x11\xea\x2b\x8e\x0a\xf2\x10\xcb\x07\x99\xe2\xe7\xfa\xcd\xfb\x4c\xe0\x44\xdd\x9a\xd6\x86\x91\x32\x8a\x03\xa5\x5d\x72\xa8\xd9\x48\x45\xf8\x8c\x52\x6d\x97\xe9\x67\xbe\x4f\xd1\xcd\xa9\x40\x02\x83\x5b\x5c\x43\xe9\xb9\x72\x4a\x92\x1a\x79\xc6\xda\xb2\x7c\x2d\xe5\x54\xac\xc2\x01\x14\x4a\x2c\x62\xe8\x6c\xf3\xdb\x99\x2e\xfc\x76\x07\xd3\x66\xa3\x7c\x5b\x6b\xda\xbc\xfa\x11\xa0\xb1\xae\x82\x05\xf3\xe3\x7c\x13\x8d\x3c\x83\xa1\xd1\xb7\x6a\x70\x9c\x7c\x51\xcb\xc6\xf1\x57\x61\xd9\x38\x2d\x58\x36\x4e\x3f\xab\x65\xe3\x64\x6f\xd9\xb8\xd2\xb2\xf1\xac\x6c\xd9\x78\xf6\x25\x2d\x1b\x2f\x6b\x2c\x1b\x2f\x57\x58\x36\x8e\x96\x5b\x36\xde\x94\x2c\x1b\x6f\xfe\x38\xcb\xc6\xe2\xcb\x88\x3f\xc0\xb2\xf1\xfc\x0f\xb2\x6c\xfc\xb4\xb7\x6c\xfc\x2b\x58\x36\x5e\xc5\x11\x2f\x19\x0e\xd2\xd2\x37\x29\x7d\x7f\x6e\xc3\xc7\x4f\x51\x34\xfc\xcb\xd8\x2a\x4e\xad\xad\x22\xcb\x6d\x15\xd5\x21\x8b\x27\x11\xf3\xa8\x6c\xe6\x6c\x15\xb5\x18\x0b\xb2\xcf\x6e\xab\x78\x1e\xdd\x44\x38\x26\xbe\xad\x22\xa9\xb7\x55\x64\xe7\xe7\x29\x7e\x9d\x3d\xc3\x84\x9e\x6b\xae\x28\x79\x76\xa3\x6c\x0f\x2c\xcf\xd1\x3c\x02\x50\xc1\xab\x18\xbf\x79\x46\x67\x0c\x46\x7c\x53\xa3\x33\x6d\x59\xe0\xdb\xc9\x55\x14\x21\x35\x6a\x21\x13\x72\x20\x99\xcf\x83\x89\xac\xaa\xa4\x0d\x05\x5d\x09\xb6\xf6\x15\x61\xa8\x2e\x92\xf6\xd9\x4c\x08\x56\xd4\xe2\x67\x82\x4d\xe5\x81\x42\xe7\x48\xeb\x32\x71\x39\xc9\x0a\xb1\x3f\xc9\xf4\x8f\xf8\x5a\x68\xeb\x2e\xc2\xe8\xcf\x54\x90\x54\x75\x7b\x36\xb5\xa5\xd6\xce\x5f\x6f\xb3\x62\xca\x1e\x6b\xb9\x2e\x4c\xd7\xd7\xfe\xce\x0b\xb3\xf8\x3c\x25\xc3\x8b\xba\x19\xac\x7b\xc5\x66\x65\xa9\x76\x46\x0a\x6e\xe2\x9a\xd5\xe6\xe7\xf3\x95\xeb\x50\x54\xa4\x96\x97\x20\x18\xaa\xae\xd5\x67\xcf\xe7\x9d\x66\xbe\x42\xf3\xf9\x4e\x2b\x74\xef\x73\x5f\x9e\xfc\xff\x83\x6f\x76\xda\xc0\xd1\x91\x0e\x44\x7e\x81\x6f\x9e\xb3\x04\xf7\x36\x69\xbc\xfb\xe8\x61\xa1\x8e\x0a\x5d\x50\x54\x19\xc1\x8d\x06\xd1\x7d\xf8\x37\x1f\x90\xf1\xfe\xb4\xca\x12\xb0\xba\xeb\x3e\x3a\xd1\xcd\xdd\x34\xda\x9f\xca\x02\x99\xda\x86\x5e\x4a\xb6\xb8\x56\x59\xba\xe9\xfa\x76\x60\x33\xc2\x72\x27\x95\xd5\x74\x2b\x77\x38\x28\xa9\xcc\x6b\x0b\x57\x26\x18\x96\xd4\xec\x47\x5b\xaa\xd9\xab\x73\x62\x1c\x4b\x60\xab\xcf\xb5\x77\xa3\xbc\xb5\x46\x6c\x38\xcb\x22\x00\x33\x2c\x3e\x92\x09\x66\x33\x51\x90\x80\x28\xd5\xaf\xd1\xf3\x4a\xc6\x45\x43\x72\x1d\xd2\xf7\x9f\xea\x50\x14\x28\xcc\x66\x65\x44\x07\x42\x51\x2e\x79\x5a\x64\xce\x33\x94\x93\xd9\x31\x2a\x72\xd8\x71\xff\x6f\x1e\xe5\xff\x75\xa0\x26\x64\x6c\xd3\x72\x46\xa7\x92\xc1\xd1\x90\x04\xc8\xd9\x1d\xb5\x0e\xea\x82\x2b\xb4\xb2\xb4\xae\x2a\x0f\xe4\x85\xdb\x01\xb0\x7a\x04\x16\xb5\x96\x02\x66\x22\xeb\xd4\x68\x6b\xd0\xe4\x5d\x97\x6e\xcd\xda\x4f\xf4\x65\x62\xab\x9b\x4f\xcf\xbe\x22\x3f\x0f\xa5\xcc\x55\xe7\x6e\xb7\xa6\xf2\xae\x9e\xb1\xe4\xc6\x93\xf5\x69\x70\x4b\x24\x7d\x02\x5f\x8b\x56\xa6\x6e\xc8\x96\x3d\x37\x81\xd7\xeb\x2f\x6f\x96\xb2\x02\x87\xac\xbe\xc2\xb7\x43\x5d\xbb\xcf\x1f\x4a\x92\x2d\x27\x6f\x00\xc2\x70\x5c\xd0\x63\xe9\xd8\x34\xe3\x48\x40\x2a\xf9\x03\x4f\x8f\x55\x50\x5f\x55\x28\xab\x3e\x5f\x2f\x2f\x1e\xae\x82\x00\xe0\xd0\x17\x16\x7f\xaa\x2b\x6d\x68\x90\x3e\xdd\xa9\xad\xe7\xe6\xc0\xaf\x6f\xc7\x5d\xb7\x7d\xb2\x53\x4b\xb6\xfe\x26\x6d\xf9\x37\xdc\x26\xba\xb6\xd5\x20\x36\x6e\x51\x5d\x75\x9b\x28\xdf\x56\x01\x58\xdd\x5a\x3d\x62\xdc\x44\x1b\xb7\x1e\xcc\xea\x96\x2b\x28\x6c\x13\xed\xdc\x4a\x08\x6b\xda\xab\xd1\x18\x6d\xa0\x9e\x5b\x03\xa3\xd4\xe6\xd0\x77\x3b\x72\xb5\xbb\x6c\xfe\x0b\xb8\x1b\x31\x41\x36\xd6\x3a\xc7\x34\x41\x6f\x96\x3b\x13\x81\x67\xf0\x1c\x7e\x82\x57\xf0\x25\x3c\x85\x27\xf0\x1a\x3e\x85\x1f\xe1\xc5\x81\xff\x42\xd7\x09\xd2\xde\x7e\xab\x12\xff\xf7\x5f\x93\xe3\x85\xdf\x8a\x92\xc5\xe8\xb7\xb8\x8e\xd0\x31\xd2\xe1\x30\xb4\x62\xe2\x73\x2c\x7a\xde\xef\x6e\x79\xdb\x68\xa5\x43\x51\x84\xa3\xd4\x85\xcd\x8a\x73\x92\x31\xca\xbc\xe3\x65\x6c\x98\xa1\x00\x4e\xb4\x13\xe1\xf8\x95\x64\x2d\x8e\xc1\xb1\x17\x77\x00\x9a\x67\x58\x56\xac\xbd\xee\xb0\x52\x59\xc1\x0f\xee\xd3\x53\xff\xea\xf6\x38\xe8\x12\x2d\xd2\x5b\x68\x05\x03\xe4\xf3\xb9\xbf\xa6\xcf\xbf\x0a\x3d\xcb\x87\xb2\x98\x38\x0c\x9f\x17\x22\xd7\x09\x65\x63\xfd\x5c\xc5\x36\xf3\xe5\xbc\xaf\x0b\x0a\x9a\xd7\x9f\x55\x41\xf3\x62\xaf\xa0\x59\xa9\xa0\x79\x55\x56\xd0\xbc\xfa\x92\x0a\x9a\x77\x35\x0a\x9a\x77\x2b\x14\x34\x6f\x97\x2b\x68\xde\x94\x14\x34\x6f\xfe\x38\x05\xcd\x2b\xef\x5e\x79\xf5\x47\x28\x68\x7e\xff\x83\x14\x34\x3f\xef\x15\x34\x7f\x05\x05\xcd\xb3\xf8\x76\x01\x7f\x8a\xfb\x81\x60\xd3\x00\x2a\x63\x4a\x49\xb6\x91\xf3\xb1\xfc\xab\x8c\x23\x03\x68\x8c\x20\x83\x01\xfc\x47\x1c\xd1\xb2\xa7\x8a\xe5\xae\x2b\x6c\x02\x2a\x27\x64\xe5\x84\x59\x39\x21\x2d\x27\x0c\xcb\x09\xa3\x72\x42\x52\x4e\x58\xe7\xc2\x62\x52\xfa\xbe\x2c\x7d\x5f\xfc\x65\xd4\x46\xaf\xad\xda\x88\x3a\xb5\x51\xfc\x22\xa2\xa0\x10\x25\xce\x52\x5f\xa4\x72\xe5\x7c\x01\x3b\x14\x7d\x99\x50\x00\xdf\x47\x6f\x22\x12\x1b\x6a\x4a\x25\xca\x8e\x00\x18\x8c\xdf\x3b\x36\xe3\x0c\xbe\x89\x08\x30\x65\x01\x0c\x2e\xf3\xac\xf3\x52\x96\xda\xe6\x9f\x4a\x89\x7a\xd7\x5f\x95\x52\xcd\x21\x78\x59\x4a\x36\x67\xe2\xb4\x94\x6c\x8e\x08\x3c\x29\xa5\x7b\x36\xd2\x01\xbc\x2e\x65\x92\xec\x64\x8a\x69\x00\x9f\x96\x9b\xf6\x1f\x7a\x06\xf0\xa3\xc9\xfe\xdd\x64\x4f\x39\xbe\x24\x6c\x96\xfd\x03\x73\x41\x86\x28\xcd\x87\x6b\x91\x4b\xb9\xe4\x4f\x8c\x93\xdf\x19\x15\xab\xca\xd6\x19\xc4\x97\xcb\x7c\x9a\x91\x24\xb0\x01\x80\x66\x24\x79\xc5\xb8\xca\xf1\x3a\xf7\xc9\xf7\x79\x41\x8a\xa2\xea\xd7\xc9\x32\xf7\x1c\x15\x37\x18\xa4\x2d\xdb\xf2\xe1\xda\xb1\xbc\xb0\x62\x2a\xf8\xcc\xcb\x75\x81\x91\x6e\xd9\x14\xd3\x2e\x69\xcb\x3f\x50\x69\x0f\xba\x44\x6b\x11\xa0\x16\x90\x77\x89\x91\x94\xc3\xfc\x79\x57\x97\x78\x6f\xbd\x16\xc0\xf6\x9b\xd1\xd7\x94\x88\x30\x2c\x7c\x46\xa4\x3d\x9d\x9d\xa5\x64\xf8\xf4\xfd\x6b\x57\x92\x1b\x87\xe6\x4f\xdf\xbf\x76\xc5\xbd\xb4\x52\x1d\xab\xb4\xfc\x10\x51\x1b\x34\x78\x5c\xb3\x42\xf5\xcf\x11\x72\x0d\x40\xb5\xce\x7c\x1e\xa0\x99\x60\x81\x93\x3f\x5e\x56\xb6\xc8\x3a\xa0\xe5\x1a\x15\x90\xde\x3e\x59\x0f\xcd\x2b\x6c\x74\x17\x9f\xce\x75\x78\x27\x93\xfa\x3a\x89\xbc\x37\x19\x6e\x69\x6b\x9f\x2c\x08\x2f\x80\x8c\x86\xee\xf4\x59\xcd\xa3\x03\xbf\xed\xca\x66\x69\xc6\xf1\x33\xa3\x67\xaa\xcb\x13\x36\x98\xca\x92\x68\x5b\x85\x57\xe2\x92\xab\x77\xab\xd9\xd6\x67\x38\x0c\x23\x6c\x7e\xc6\x4a\x2f\x5d\xb3\x2d\xaa\x69\x91\x07\x28\x7f\x86\x5a\xe9\x60\x2c\x60\xfe\xa6\xc3\x55\x58\x32\xf9\xb7\xd6\xd3\x89\x56\x28\xca\x53\x04\x75\xc7\xba\x46\xe3\x2a\x7f\x43\x3b\x75\x3a\xd1\x7e\x41\x33\x62\x53\xd7\x7c\xa9\x90\x61\xd0\xdb\xac\xab\xc3\xe1\xfe\x16\xbd\xf2\x63\xd3\x2a\x9c\xe9\x95\x37\x3c\x88\xc5\xe7\xbe\xce\xb0\x30\x5d\xb5\xc9\xca\x8e\x37\xdf\x30\x4c\xa1\xcf\x25\xba\xcf\x82\x6e\x59\xa5\xe4\xab\x96\xef\x9c\x52\x86\x9e\x1e\x5f\xcf\xc6\xa8\x5e\xe0\xe6\x51\x41\xd5\xaf\x93\xa3\x62\x75\x88\x81\xd5\x24\xdb\xcd\xd0\xd9\x6e\x7c\x45\x78\x9e\xf6\x45\xa1\xb0\x9a\x58\xe2\xe6\xea\x2d\x8f\x38\x0c\x9b\x4b\x86\x6c\x5a\xae\xee\xe0\x66\xe4\x8f\xee\xb9\x6c\xaf\x66\xd4\x2a\xbd\x6e\xd8\xd5\x39\xd7\xa5\xdc\x45\xad\xc1\xb8\xcb\x59\x51\xb2\x56\x8d\x3e\xd5\x99\xf2\x26\x36\xcf\xf4\xe4\x75\xaa\x7f\xaa\x1b\x57\xff\xd4\xb7\xac\x0d\x30\xad\x3b\xb1\xe4\x32\x8c\x0b\xb9\xd5\x0b\xb0\x00\xc4\x9d\xdc\x3b\x2d\x16\x14\x00\x58\x93\xef\x1d\x1c\x16\xe5\x2b\xb2\xc4\x59\x11\x0f\x43\xde\x16\xe8\xec\x35\x4d\xf0\xf5\x93\xd6\x91\xfc\x34\xda\xd7\x85\xf7\x0a\x5b\xde\x6d\x4b\x0f\x45\x79\xd9\xb5\xe6\xdf\x6a\xd9\xf5\xb9\x97\xa7\xca\xf7\x66\xc2\x57\xbd\xa6\xb6\x3a\xf0\x32\x60\x8b\xb4\x57\xbe\x9e\xf3\x88\x05\x00\xc5\x17\x99\x34\x32\x8a\x70\x18\x0a\x33\xfc\x2a\x91\x13\x2f\x49\x9f\xcf\x57\xf6\xdc\x7f\xf2\x67\x1c\xd5\xeb\x1d\x5a\xd9\x68\xd0\x44\x18\x2b\x5f\xac\x90\xad\xdb\xa2\x10\xc5\x2b\xb7\x38\xcc\xbc\x07\x7c\xb3\xb8\xe4\x20\x04\xa6\xb1\xe3\x62\x67\x61\x38\x83\xc3\x38\x6b\x4f\x90\x18\x8e\x3f\xea\xe9\xf9\x45\xbd\xe9\x1b\xe5\xa5\x86\x61\x38\x84\x49\xec\xa1\x01\x27\xd4\xcf\xa9\x81\x3c\x0e\x53\x24\xa0\xf1\x23\x53\x9d\x3d\x78\x5b\x9d\x88\x2e\x85\xe5\x39\xe8\x12\xb8\x7c\xf8\x5d\x06\x97\x8d\xbc\x8b\x60\x61\xac\xdd\x14\x56\x46\xd6\x1d\x41\xbb\xbb\xd4\xb6\x5e\x80\x02\x89\xa0\x84\x59\x9e\x1b\x08\x39\x98\xc4\x77\x08\x52\x2a\x50\x87\x7a\x73\x81\xf4\xad\xc3\x72\x5d\x5e\xb7\x07\x2e\xbd\xec\xea\x46\xc8\x79\x04\x13\xd2\x47\x7b\x9f\x8f\x6e\x17\x7a\x7e\xbd\x02\x60\x21\x77\x34\x6f\xab\xa7\x9d\x61\x98\x3f\xba\x34\x49\x12\x97\x2a\x51\xaf\xc4\xa9\xf9\x43\x4b\x2f\x17\x06\xd3\xeb\x00\x58\x01\x84\x57\x53\x22\xdf\x5e\x44\x35\x12\xae\x56\x55\xaf\x42\x55\x5d\x48\x0d\x7a\x36\x28\xb4\x02\x49\xe5\x86\x61\x54\xf8\xb6\x92\x0f\x2b\x17\xa9\x29\x6f\xe1\x56\x1b\xd7\x2f\x51\x6d\xeb\xaa\x87\x45\x41\x8a\x07\x4d\xdd\x17\x5a\xdc\xad\x6e\x8e\x2a\x34\xfd\x9a\x75\xd9\x3c\xe8\x4b\x46\x01\x30\xf7\x4d\x15\x82\x79\x05\x5b\x00\x61\x2f\x4a\xc1\xa6\xce\xfd\x4e\x7f\xe0\xec\x2a\x59\x83\xd0\x86\xa9\x0f\xca\x8d\xf6\xd9\x20\x0c\xa3\x80\xce\xe4\xf2\xe7\x72\xe5\x3c\xb7\x47\xb4\x2f\xab\xc0\x7f\xa9\xea\xbf\x9d\xcd\x8b\x9a\x5e\x75\x37\xaf\x01\x80\x09\x4e\xfb\xd4\xba\x76\x8b\xec\xdb\x61\xa2\x9d\x64\xa8\x47\xb1\x0b\x3b\x14\xe4\x0f\xa5\x25\x29\x84\x9f\xda\x2a\xc2\xd7\xc9\x48\x05\x21\x8c\xa8\xbf\x65\x61\xe1\xab\x8f\x06\x6e\xd0\x68\x50\x3c\x93\x39\xa9\x40\xf3\xdf\xb0\x4c\x36\xe4\xbf\x73\xea\x41\xed\x77\x98\xd3\x10\x7a\x8f\x40\x8f\x94\x30\x7b\x0b\x7a\x24\x85\xd9\x20\xd0\x27\x2d\xec\x9a\x57\x0e\x5e\x5c\x1c\xd3\x3a\xea\xa2\x16\x0b\xac\x26\x58\x6a\x30\x03\xcd\x0d\x49\xca\x6c\xd3\xd2\x07\xf9\x77\x7b\x47\xae\x14\x1c\xea\x49\xba\x32\xd1\xf3\xf2\xc2\xb0\x4e\xaf\xf2\x0a\x65\xe2\x19\x63\x22\x57\xa1\xf5\x6b\x39\xfc\x60\x10\x86\x4b\xb3\x8a\x6c\x62\xbd\x84\xe0\x8a\xf1\xc9\x98\xa5\x38\x50\xcc\x08\x2d\x3c\xa4\x3e\x8b\x7f\x8e\xa2\x9b\xf8\xa2\x68\x89\x92\xf3\xbc\x7d\xfa\x19\xdf\x50\x4b\xb2\x75\xb1\x00\xf0\x3c\xfe\x39\xba\xf1\x1b\xf4\xc4\x4e\x9f\xf5\xd1\xb6\x6d\xf0\x53\xb9\x41\x25\xcc\x92\x07\x7e\xc7\xa6\x14\x60\x00\xaf\xca\x70\xb5\x3c\xac\x8f\xee\x0a\xf8\x65\x19\xb0\x11\xa9\xf5\xb3\xbb\x42\x3e\x2d\x43\x36\x52\xb9\xfe\xec\xae\x90\x4f\xca\x90\xad\x60\xaf\x9f\xde\x15\xf4\x75\x19\x74\x41\x36\xd8\x1f\x7e\xbe\x2d\x73\xbb\x90\xfb\xe5\x69\xb9\x3d\x2b\x6e\xec\x8f\x3e\xbb\x4b\x01\xe5\x2f\x57\x97\x4b\x6f\x64\x2b\x5a\x28\x23\xbb\xf1\xb1\xb2\x0b\x8a\xd2\xcd\x7e\xf2\x19\x7b\x53\x63\x10\x5e\xf2\x9a\xb7\x24\x43\xf6\xb4\xbc\x3c\x7a\xb2\x36\x78\x69\x5d\xad\x06\xe0\x8d\x2f\x01\x29\x41\x36\xbc\xfc\x26\x4f\xa9\x6b\xea\xad\x86\x6d\xf9\xbf\xfe\x64\x4b\xe0\xa6\xe2\x6a\xe8\x3e\x2b\xd8\xbf\xdc\xb2\x05\xee\xbf\x3b\x2f\xb4\x72\xe3\x9b\x30\xfd\x63\xad\x09\x53\x7d\xe8\xbe\xb5\x31\x94\xfe\xf0\xd8\x7b\x6f\xbf\xff\xf5\x3f\x7e\x79\x73\x91\xd6\xc7\xde\x73\x52\xf7\xe0\x3f\x0d\x68\xe3\x02\x24\xf8\xcf\xd2\x91\x09\xfe\xd3\xbb\x6b\x82\xff\x1c\xfb\x1f\x09\xe1\x01\x0c\x42\x24\x04\x57\x55\x73\xeb\xae\xe0\x3f\x19\x7d\xc5\x86\xb3\xec\xb5\xff\xa1\x9c\x54\xc8\x2f\x6d\x68\x4d\x85\x8e\x1e\x6f\xbe\xdf\x60\x74\x59\x88\x07\x28\xb3\x2e\x31\x4f\xd1\x8d\x6a\x59\x4c\xd2\x8f\xe8\x7c\x59\x94\xc0\x8e\x8a\x12\xf8\x10\xfe\x08\xfb\x16\xf9\x0c\x76\x0c\x18\xd8\x81\x41\x42\x2e\xd5\xcf\xef\x60\x67\x8d\x33\x6d\x4b\x2b\xb4\x18\x27\xe7\x84\xaa\x5a\x0f\xbd\x50\x81\xb0\xff\x23\x0c\x26\xe8\xe6\x0c\xb7\x08\x6d\x61\x3b\xef\x7d\xd9\x5d\x39\xf9\x55\x45\x48\x79\x09\xcc\xc0\x3a\xb0\x5f\xa7\x37\x19\x0c\xa0\xcc\x7d\xa4\xe2\x61\xae\x0c\xc2\x59\x9c\xa7\xa3\xef\xb6\x08\xdd\xa9\xff\xb7\xf9\xe4\xd8\x65\xb3\x93\x71\xf4\x68\x5d\xf0\x44\x68\xba\xf7\xa3\xea\x5e\x07\xf6\x1f\xfd\xa0\x82\x82\xda\xdf\x3f\x78\xbf\x1f\xd9\x21\x7c\x3f\xb0\x9d\x51\xf1\x19\xdd\x9f\x7e\x3f\x30\x6e\x7a\x83\x4d\xaa\xd5\xed\x93\xf5\x33\xf1\xa3\x9a\x77\x15\x9c\xf2\xe8\x07\x78\x04\xdd\x1a\xe5\x3a\x29\x35\xae\xa3\x1f\x64\xf2\xa3\x23\x58\x4f\x91\xda\x8d\xd4\x58\xb9\xcb\x5a\x81\x82\x2f\x7b\xbe\x51\xc1\xef\x64\xc1\xc0\xf5\xa9\xe4\xe8\x47\xed\x19\x3d\x29\x76\x3b\x3c\x5a\x0f\x99\xd0\xd6\xd4\x6c\x48\x1d\x0e\xd3\xb6\xf0\x70\x60\x07\xfa\xbd\x6b\x51\xb3\x74\x36\x3d\x50\x98\x42\xe6\xfd\xa0\x52\xfe\xa6\xd6\xf6\x3b\xd8\x7f\xf4\xa3\x09\xef\x69\x6a\x29\xb7\x3d\x76\x3d\x2a\x45\xe4\xd9\x76\x7a\x12\x1f\xc5\x2f\xad\xe1\x80\x56\x3c\xbe\xac\xac\x92\x3b\xdf\xa9\x14\x7b\xe8\x15\x5b\xea\x4e\x66\x65\x2d\xcf\xe9\xce\x46\xd0\xab\xa5\xbe\x1f\xc0\x7e\xa0\xa4\xb1\x44\xde\x8d\x66\x29\xbf\xab\xd9\xeb\xff\x31\x70\x2b\xa2\xde\x29\x7a\xa0\xe4\x7c\x0e\x8a\x27\xa7\x0a\x9f\x29\xb7\x42\x2b\x1a\x38\xea\xec\xde\x82\x32\x6f\xc6\xfa\x16\x58\xd9\xc6\xd1\x1d\xdb\x48\xf5\xcd\xb2\xb2\x8d\x87\x5b\xb5\x21\x6b\x0d\x60\x7f\x2d\xce\xd5\x38\xaf\xd1\x28\xa0\xd0\x1f\xe1\xd1\xa3\x62\x44\xd9\x3c\x7b\x09\x72\x5c\x86\x3b\x8f\x6c\xe4\xd9\x25\x95\x4c\x8b\xab\xd1\xef\x8a\xd8\xb7\x1e\xb6\xff\x7e\x15\x8e\x5b\x7f\x4f\x2a\xd4\x31\x66\x69\x22\x8f\x87\xaa\xf1\xbd\x84\x9d\x4d\x53\x74\xd3\x6d\x50\x46\xf1\xf1\x16\xd7\xc5\xea\x58\xbb\xa3\x40\x82\x4e\x5a\x84\x66\x98\x6b\xe3\xa2\x34\x6d\x25\x56\x2b\x18\x30\x49\x76\x8c\x24\x65\xa2\xe8\x98\xfc\x56\x0e\x7c\x03\xf4\x14\x8b\x25\x81\x7a\xef\x4a\x28\x6e\x16\xbd\x77\x07\xf8\x35\x1e\x6f\xfe\x70\x42\xf4\xd9\x87\x67\xbf\xff\x9e\x5e\xbe\xdd\x9a\x10\x5d\x4e\x77\x56\x48\x54\x8f\xf0\xcc\xa9\x51\x46\xdd\x13\x1a\x47\x63\xe6\x9f\xf9\x03\x14\xf9\x65\x1e\xf5\xac\xa5\x4d\x2d\x25\xab\x7f\x3e\x4b\x67\x7c\x35\xad\xeb\xd3\xb2\x6b\x08\xd8\xff\xf0\xb0\xd2\x32\x2a\xe8\x7b\x8b\xad\xfe\x63\x2b\xca\x67\x69\xb5\x6d\x28\x9f\x2a\xcd\xb3\x92\xac\xc9\xb7\xa2\xe9\x84\xbd\x5f\x97\xd3\x30\xa6\x4a\x0d\xa5\x51\x86\xf1\x5d\x91\x80\x59\x07\xcf\xd2\x44\xe5\x7b\xa2\x04\xf5\xd1\x2e\x50\x1f\x95\xa1\x96\xa8\xa2\x87\xdf\xc1\x80\x33\x79\x90\x02\xfd\xfc\x3b\x30\x24\x91\x40\x67\x4a\x8e\x9d\xcf\x90\xbd\xfc\x7f\x90\x18\xd6\x9a\xa7\x48\x54\xd7\xc9\xd7\x59\x53\x53\xb9\x8a\x32\xd0\x6b\x60\xab\x59\xc5\xa4\xaa\xe6\xd6\xc0\x91\x61\x2e\x5e\x4b\xb0\x01\x45\x6a\x06\x58\x02\x5b\x84\x85\xaf\xa7\x88\x26\xb8\xdc\x8d\x9c\x01\x2b\x94\xce\x6d\x6e\xca\x53\x5f\x19\xb2\xe0\x33\xec\x8f\xda\xa7\x18\x1f\x79\x44\x52\xed\xc3\xac\x0a\xc1\xf4\x9d\x23\x05\xcc\xe3\x23\x53\xbb\xfc\xfe\xaf\xbe\xa2\x79\x0a\x5c\xac\xa4\x31\x46\x7d\x85\x0b\x7c\x53\xd7\x8e\x45\x47\xf5\x95\xfc\xa8\x16\xc5\x7a\xde\xd3\xba\x15\x55\x95\x3b\xb5\x9a\x8a\x12\xc7\xad\xed\x66\x95\xc9\xb2\x38\xe3\xc7\x95\x74\xd1\x0f\x4b\x68\xaf\xea\x84\x2f\x6f\x61\x35\x8d\xba\xb2\x05\x7f\xe0\xcb\x1b\x58\x43\xa3\xae\x6c\xc1\xad\xfd\x0a\xf0\xab\xc9\xd3\xf5\x53\x54\x22\x81\x6b\xdb\x58\x4d\x9e\xae\x6f\xa3\x44\x02\xd7\xb6\xf1\x68\xf7\x36\x46\xfa\x52\x5c\x09\xfe\xbb\xdd\xc1\x9f\xa9\x8b\x76\x25\xf4\xef\xef\xd8\x79\xb2\x66\x97\x1e\xfd\x70\xc7\x06\x0a\xac\x54\x6d\x0b\x7f\xdb\xaa\x85\xed\x59\x10\xcb\x7c\xfc\x58\x66\x3e\x76\x67\x3b\x96\x13\xe1\x5a\xf1\x1b\x40\x4d\x8d\xcf\x68\x8a\x15\x55\x57\xa6\xc4\x69\x81\x1c\xbf\x3f\x4a\xdc\x5c\x8d\x4b\x28\xf1\x83\xbb\x52\xe2\x7f\x2a\x0a\xfc\xb7\xd3\xff\xfa\xf5\xd5\xeb\xe1\x6f\xf5\x14\x38\x9a\x92\x22\xa1\x9a\x53\xd0\x85\x30\x4e\x32\xa1\x10\x9f\x41\x26\x18\x52\xe1\xb9\xb7\x58\xff\x69\xa6\xf6\xb9\xe7\x5f\xb3\x96\xe0\xfd\xde\x3b\x03\xdf\xe5\x74\xa8\xa3\x35\x72\x25\x92\x67\xac\xeb\xc9\x7f\x3e\x5a\x0a\x33\x78\x6e\xe4\xef\x1e\x5d\xe0\x99\xae\x16\x88\xa2\xba\x7c\x47\xad\xd4\xe6\xfa\x64\x49\x5d\xbe\xed\x90\x27\x54\x7b\xe4\x8d\xcc\x12\x75\x7f\x1b\xc0\x60\x09\x89\xec\x53\xef\x1e\x27\xe3\xb3\x3c\x65\x8e\x27\xe7\x8d\xbc\xa6\x8e\x6a\xc7\x3f\x58\x4a\xef\x2a\x42\xe1\x7d\x8d\x0c\xad\xa6\x5c\x49\x24\xbd\xb2\xec\x65\x15\xe6\x60\xcd\xec\xfc\x50\x9d\x9d\xa1\x5b\xd4\xad\x67\xa7\xbc\x4d\xcb\xfb\xd8\xe7\x2c\x0b\x26\xe6\x1b\x3d\x4d\x2a\x2a\x53\xff\x64\xf3\xff\x7d\x25\xe7\x61\xce\x33\x19\x6a\x66\xcb\xb5\xab\x2d\xe7\x4f\xdb\xea\x92\xa2\x74\x93\x55\x4b\xa8\xe9\x5e\x33\x7c\xfd\x28\x6c\x65\x19\xbd\x4c\x6b\xa6\x1b\x6f\x00\xa8\xb0\xbc\xde\x0e\xde\x94\x5d\x2e\x2a\x5a\x96\xaf\xde\x16\x7a\x29\x73\x79\x1f\x39\x71\xdc\xc3\xa5\x12\xb7\x40\xb3\x4b\x8f\x9c\x30\xed\x47\xf8\xd0\x10\x18\x9a\x1b\xdb\x45\x18\xe8\x88\x87\x02\xa8\x75\x22\xba\x6d\x69\x06\x45\x2a\x70\x8c\x12\x46\x53\x27\xa7\xf3\x09\x81\x31\xca\xc6\xea\x40\xca\x85\xfe\xac\x04\xc1\x4e\x22\xb9\xe5\xde\x28\xbe\xd8\xed\x5f\x0a\x19\x59\x13\x1b\x73\xb9\x03\x70\xc8\xe3\x00\x9d\x65\x2c\x9d\x09\xac\x7c\x09\xb6\xa7\xce\xf8\x2b\x7e\x10\xa1\x99\x60\x73\x1d\xd7\x04\x3c\xd0\x8f\xcf\xc9\xb5\xb2\xbf\xf2\x4a\x82\x72\xa0\x92\x33\x96\xdc\x1c\xe4\x71\x36\xf1\x31\x71\xa1\x2f\x8d\x6c\xef\x18\x90\x51\xb4\xbc\x5f\x04\xc0\xa8\xc9\xe7\x73\xb5\xed\xc8\x50\xb9\xd0\xcb\x9b\x0b\x43\xda\x16\x38\x13\x91\x68\xb3\x4b\xcc\x47\x29\xbb\x3a\xcc\x7f\xfe\xea\xfd\xfe\x6f\x60\xfb\xe6\x5e\x0d\x16\x3a\xb9\xf0\x68\x27\x9c\x5b\x1b\x9b\x43\xe9\x2c\xe3\xbc\xac\x5f\x8c\x6a\x37\x29\xd9\xf1\x1f\x94\x1c\x01\x38\x4f\x19\xf9\x34\xd0\x3a\x93\x3c\x16\xd3\xaa\xd9\x1d\x8a\x69\x8d\xa5\x74\x16\xd3\x55\xc6\xda\x33\x2f\xbb\x62\xa9\x9d\xda\xa9\x9e\xa2\x73\xfc\xdf\x27\xa3\x51\x86\x05\x1c\xfa\x89\xbf\x9a\xc4\x51\xac\x36\xd4\x33\x36\xa3\x09\xa1\xe7\xcf\x53\x82\xa9\xf8\xa0\x63\xbe\x25\xf1\x48\xdb\x35\x8e\xe3\x91\x32\x78\x9c\xc6\x23\x63\xc3\x38\x89\x47\xd6\x72\xf1\x32\x16\x4b\x21\xdc\xc4\x97\xb6\xd8\x59\x7c\x69\xea\x9e\xc7\x65\xc7\x51\xb2\x86\x1a\xf4\x7c\x6e\xba\x48\x28\xb5\xf3\xf0\x29\xbe\x5d\xc0\xab\x98\x7b\xc1\x54\xe1\xcb\xa5\x5b\xe9\x0a\xb8\x8d\x73\x1c\x70\x9c\xaa\xf0\x57\x2a\xde\x4d\x18\xe6\x3b\xdf\x7c\xdb\xa0\xaf\x57\xcb\x42\xba\x5e\xc5\x57\x5b\x37\xab\x8e\x8d\x6b\x39\x8e\xe3\x97\xf3\x79\xe1\xcc\xbd\xd4\xc7\xf4\x34\xbe\x5a\x36\x6f\x07\x49\x2b\x3e\x35\x53\x2f\x7f\x09\x36\x55\x1b\xee\x24\xbe\x6a\x33\xb5\x6e\xfa\xe8\x1f\x9c\x84\x61\x94\xb4\xe2\x13\x13\xcb\xe8\x8d\xa9\x61\xbf\x3f\xb2\x29\x58\x9c\xc5\xa8\x37\xed\x9e\xa9\x10\x33\x9f\x8c\x29\xea\x99\x7e\x44\x70\x1d\x27\x87\xa9\xea\xaf\x7a\x73\x17\xc7\x31\x31\xef\xef\x5a\xea\x42\x96\x09\xba\xb3\x4f\xe3\xb7\x48\x8c\xdb\x13\x42\xa3\x73\x98\x1c\x9e\x81\x96\xfe\x46\xd7\x51\x07\x26\x00\x7e\x2c\xe6\x4f\x8b\xf9\x87\xd3\xd6\x19\x38\x20\xf1\xd9\x93\xa7\x61\xf8\xf1\xc9\xd3\x9e\xb9\xcc\xbb\x67\x4f\x3e\x86\xe1\xd3\x27\x1f\x7b\x9a\x00\xe8\x66\xf3\xb9\xfe\xa5\xbd\x40\xd8\x9e\xb5\x74\xf1\xbc\x3b\x17\x6b\xba\xf3\x76\xc3\xee\xbc\x0d\xc3\x8b\x27\x6f\x6d\xeb\x67\x4f\x2e\xc2\xf0\xed\x93\x0b\xd7\x3d\xd9\x1d\xfd\x73\x11\xe4\x5d\xe8\x7d\x32\x36\xbe\xe7\xad\xe8\xfa\x70\x0a\xba\x9f\x8c\x0d\xfb\x50\x4b\x71\x54\x99\xeb\xc3\x48\xb6\xf2\xe0\x61\xf7\x5a\x4d\xf5\xfb\x78\x5c\xd9\x18\xcb\x36\x53\xe1\x78\x00\xe3\xb3\x41\x5d\x0c\x2a\x58\x65\x14\xe4\x76\x4d\xf3\x79\xf4\xfe\x30\x1e\x02\x18\xa0\x33\xa6\xa1\x32\xf0\x49\xd9\x28\xbf\x6f\xdd\x1c\xb8\x59\x3c\xc3\x29\xbb\x2a\xe4\x1e\x4e\x54\xae\x9a\xce\xdf\xe4\xe7\xe1\xcd\xe3\xe1\xa1\x7f\xfc\x7e\xd2\x07\xf7\x79\x3c\x7e\x72\x73\xc0\xe2\xdf\xe6\xf3\xe7\xbd\x1c\xd0\x2c\x0c\x9b\xbf\x85\xe1\xf3\x9e\x69\xb9\x9b\xf7\x40\x66\x3d\x0f\xc3\xdf\x6c\xe9\xee\x6c\x3e\x8f\xf2\x2f\x53\x10\x74\x4d\x02\xb4\x3d\xf2\xbb\xd9\x9b\x74\x5b\x37\x36\x36\x53\xdd\xeb\x0e\x52\x7d\xdd\xc1\xa0\x32\x39\xe8\x7e\x5a\x2c\x0e\x56\xe2\x70\xa1\x23\x3a\xd4\xa0\x6f\x85\xba\x15\x96\xae\x41\xde\xa8\x0e\x79\x67\x71\x5d\xef\x0c\xff\x50\xe9\xa2\x1d\xb2\xee\xe8\xed\x62\x51\x38\x7d\x4c\x77\x60\xb6\x1c\x27\x1f\x90\xe5\xd8\xf6\x40\x87\xbd\xaa\x62\xfe\xc3\x0a\x52\x3d\xa8\x7b\x39\x14\xcf\xd4\x3e\x3e\x24\x1a\x49\x3c\x49\xdd\x39\x28\x9f\xc9\x7c\xa3\x9b\x1e\x0f\x97\xf7\xd8\x20\xfd\xd1\xf2\x7e\xeb\x12\x07\x99\xb6\xd2\x8f\x6f\x55\x88\xad\x68\xd8\x1a\x81\x07\x0f\x17\xcb\x10\x81\x69\x38\x59\x71\x7d\x8d\x57\x4c\x55\xed\xf8\x13\x7d\xae\x9f\x8c\x75\x8f\xea\x86\x9f\xa3\x01\x16\x86\x51\x2d\x14\x53\xc4\x3e\x35\xc8\x8f\x05\xea\x45\xd5\x67\x59\x31\x82\x44\x62\xdd\xe5\x77\xa8\x9b\x17\xc1\xa6\xdd\x16\x31\xf7\xe9\x02\x74\x6b\x80\xb9\xed\x55\x38\x00\x65\xfa\x86\x1f\x54\xdc\x5a\x29\x6f\x68\xce\xac\x95\x15\x8d\x55\x7b\x5c\x95\xe8\x40\x06\xba\xc2\x15\x5e\x78\x74\x32\xdd\x90\x4e\xd6\xd7\x52\x6b\x8c\xd3\xa9\x76\xc2\xf7\xc5\x69\x64\x1d\xb6\xb3\x86\x46\xc6\x36\x84\xa7\x25\xe9\x24\x8d\xdb\xeb\x74\x05\x24\x36\xef\x57\xc8\xf2\x3c\xd2\xeb\x74\x09\x44\x36\xef\xad\xa4\x07\xb2\x3c\x1b\xf5\x3a\x5d\x24\x0f\xb3\x8e\x48\x77\xfb\x30\x8e\xe3\x2c\x0c\x23\xfa\xef\xf1\x23\xc8\xfe\x3d\x7e\xa4\x8f\xe7\x2c\xe6\xf2\xa0\x7a\x0f\xe5\x64\x89\x99\x2c\x31\x73\xd8\x4e\x77\xac\x4b\xa1\xee\x45\x97\x2d\x16\xfe\x90\xde\x10\x8a\x35\x6e\x8e\xb9\x4e\x2f\x45\x30\x2d\xf9\x2b\x73\xd1\x6b\xe2\xdb\x62\x2c\xd2\x6e\x07\x16\x23\x8c\xda\x84\x5f\xcb\x25\x7e\xcd\x4b\x2c\x14\xa5\x7f\xec\x45\x44\x52\xaf\x71\xe3\x38\xc6\xc7\xe0\x96\xc7\xd8\xd0\x1e\x0a\xcf\xb4\xb0\x4f\xdd\x41\xea\x72\x75\xff\x5d\xb6\xb9\x6a\xca\xc1\x52\x0f\xe3\x16\xf6\x49\x9b\x72\x44\xd4\xc3\x98\xd7\x16\xf8\xb5\x06\xc0\x47\x36\x85\xe5\xd0\xa6\x87\x31\xf5\xf3\x4d\xd8\x7e\x5c\x08\xdb\xef\x62\x39\x31\x70\xc6\x31\xba\x38\xc0\x31\xb3\x0e\x15\x88\x62\x28\x4a\x91\x4e\x57\x31\x05\x90\xb9\xdc\x06\x8e\x4a\x0e\x8f\xca\x7e\xf0\x9f\x7c\xe7\x39\x06\xca\x7d\xde\x7f\x37\xe8\xf9\x1f\xdd\xfe\x00\xa2\xf8\xd6\x48\xcd\xbb\x14\xe6\xd3\xd1\xed\x40\x37\xb6\x6e\x67\xa1\x38\x0a\x7f\x71\x68\x61\x71\x66\x2e\xd7\x2c\x0e\x2d\x2e\x4e\x5a\xd9\x3e\x2d\xea\xcf\x7d\x69\x2b\x65\x35\xb9\xbf\x56\xab\xca\x65\x29\x6d\xb1\x99\x9f\xb9\xc8\xd9\x96\x0a\x9d\x44\xc1\x41\x30\x26\x49\x82\xa9\x24\xe2\x87\x39\x1b\x18\x86\x11\xf2\x1a\x8f\xfd\x9e\x1c\x0a\x28\x9e\xa4\xe5\x70\xbb\xa2\x15\x97\xd3\xba\xe2\x71\x5a\x0e\xe8\xeb\x15\x73\x43\x11\x71\x67\x49\x3f\x7e\xf5\xfa\xf1\x51\xbd\x1a\x73\xbf\x0f\x39\xe4\xb6\x17\x6e\xe4\x3d\xee\xc0\xe7\xb3\xc1\x6d\x2f\xf2\x00\xbf\x5e\x31\xd7\x0b\x2e\x7b\x21\x37\x6b\x33\x8e\x49\x18\x46\x62\x3e\xe7\x8e\x1b\x36\x5b\xcd\x67\x65\x88\x76\x84\x35\x44\x22\xea\xa3\x01\x70\x0f\xe3\x0a\xa9\x0b\xb7\x85\x21\x8a\x3b\xc7\xe8\x31\xb3\x9e\x02\xd1\xe1\x21\x88\x48\xcc\x64\xa9\xb6\xd9\x7b\xfe\x8c\x93\xe2\xa9\x2c\x96\x90\x73\x41\xfc\x25\xc6\xed\x37\xaf\xdf\xbd\x3c\xfd\xf4\xfe\xe5\x87\x4f\xef\x9f\xfe\xfd\x65\x8c\xdb\x2f\x4e\xde\x7e\x7a\xf1\xf2\xcd\xc7\xa7\xd5\x04\x59\xb6\x58\xe2\xf5\x7f\xbf\x7c\x63\x19\xf3\x6a\x46\x31\x4d\xd5\x3e\x3a\xa8\xb4\xf0\xf0\xa0\xd2\x8b\x47\x86\xcb\x37\x90\x0b\x91\xcd\x7c\xff\x70\xa2\xf2\xf8\xdc\xb8\x19\xd7\xa3\x8e\x02\x32\xe2\x68\x82\x95\x6b\xa5\x8c\x0f\xe3\xe0\x7f\x05\x10\x9b\x97\x9d\x53\x77\x75\x3b\x16\xd1\xe5\x5d\x92\x8c\x9c\x91\x94\x88\x9b\xd8\xee\x2f\x97\x67\xde\x9a\x76\xa6\xd7\x79\x9a\x7d\x3e\x5a\x48\x3c\x63\x3c\xc1\x3c\xd6\x51\xdf\x4a\x2e\x9b\xd1\x74\x8a\x69\xf2\x7c\x4c\xd2\x24\x32\x9e\x98\x24\x02\x37\x62\xf7\x5f\xf4\xb1\xb3\x55\x0e\xb8\x7e\xa9\x0f\xa0\x76\xd9\x89\xa3\xe0\x71\x33\x61\x43\x71\x33\xc5\x8d\xb1\x98\xa4\x4f\x1e\x9b\x7f\x31\x4a\x9e\x3c\x7e\xa0\xff\xc8\x76\x9e\x3c\xce\xa6\x88\x3e\xf9\xef\xc7\x0f\xd4\xdf\xc7\x0f\x74\xe2\x03\x55\x3c\x90\xf0\xb4\x43\x00\xfb\xb2\x9d\x6b\x89\x92\x3c\xb7\x23\xc2\x33\x2b\x44\x52\xfd\x34\xfc\xaf\xc1\x49\xc5\xe1\x68\x43\x10\x3b\x1c\x17\xaa\x63\x51\x25\x4e\x74\x20\xf3\x0c\x8b\xd6\x90\xd1\x44\x2d\x00\x4a\x5b\x97\x28\x25\x89\x92\x67\x67\x0f\xcc\x6f\xc6\xb3\x07\x19\x9b\x60\x41\x26\xf8\x4b\xd2\x2b\x96\x90\xaa\x78\xda\x50\x51\x50\xda\x24\xd3\xd1\x50\x72\xc4\xdf\x19\x38\xdf\x0f\x7e\xa2\x3d\xc6\xbc\x3d\x41\xd3\x88\x80\x85\x9e\xd1\xba\x22\xa4\xe0\x71\x8b\x78\x8e\x03\x7d\xb7\x75\xda\x4b\xae\x6e\x2a\x8b\x6f\x8b\x3e\x52\x8d\xbb\x7d\x42\x87\xe9\x2c\xc1\x59\x14\xb4\x03\x60\xe9\x2b\xf7\x2e\x54\x07\x87\xf1\x03\xf6\xba\x38\x88\xc2\x6d\xb9\x6c\x9a\x12\xa1\xea\x43\xb9\xfe\x53\x36\x8d\x00\x24\x31\x37\xcf\x81\x65\x7a\x56\x00\x49\x1c\xc6\xca\xc2\x30\x2b\x39\x5f\xad\xa6\x44\x14\xf4\x44\x37\x07\x80\x60\xbe\x41\x58\xb9\x2c\x06\xbd\x62\xef\xcb\x15\xad\x67\xc2\xa6\x71\x14\x96\xa9\x39\x9a\xcf\xb1\x37\x63\x8b\xc5\xca\x7d\xe7\xef\x35\x43\x0e\x3f\x70\xb9\x45\xd7\xc8\xa5\xaa\x35\xc5\x57\x47\x2f\xf4\xf0\x96\xef\xef\xb4\xb4\x8c\xc5\x8d\x86\xf3\xbb\x63\xa1\x08\xbc\xaa\x3b\xba\x9a\xd7\xb9\xda\xc5\xf0\x7c\xde\x8c\x4a\x6e\x8e\x1b\xc4\x7a\x71\x54\x51\x45\x34\x68\xb3\xf8\xfd\x01\x54\x7e\x6b\x48\xdc\x3c\x72\x04\xb7\xf2\x69\xea\xde\x7f\xc3\x2c\xc6\xfd\x12\xc8\x41\x04\x8e\x9b\x11\x8d\x23\x14\x67\x6d\x8a\xaf\x45\x04\x40\x3b\x61\x14\x03\xe5\x09\x40\xbd\x45\x47\xda\x7b\x22\x80\x4d\x79\x1d\x9a\xbb\x4b\x6d\xc0\x63\xd9\x24\x38\x36\x4e\x4e\x67\xe0\x96\xc8\x2e\xb0\x78\xb6\x18\x11\x8a\xd2\xf4\xe6\x56\x76\x80\xce\xe7\x9a\xf8\xcb\xda\xba\xcb\xf3\xb9\xfd\x15\x01\x57\x92\x8c\x22\x62\x5c\xcf\xb1\x85\x8b\x26\xad\x5d\xfb\xd6\x4c\x5c\x13\xdb\xf1\xcb\x59\xcc\x94\x7f\xd6\x7c\x0a\x31\xf0\xdd\x44\x5a\x9c\x5c\x71\x36\x5c\x74\xec\x8a\x81\x71\x42\xf9\x23\x6c\x1d\x81\x83\x40\x17\x57\x61\x3c\x4b\x3e\xa1\xe5\xdc\xc4\x85\x94\x36\x45\x13\x13\x18\xf4\x2d\x9a\xaa\x3a\xf3\x79\x70\x8a\x75\x75\xdb\x1b\xbd\x3b\x46\x9c\x4d\x6c\x14\xd1\xa7\x16\xa5\x98\x2a\x0f\xfe\x5f\xd4\xeb\xfe\x4c\xe6\xaf\x01\x15\x51\xaf\xfb\xe3\xfc\xe8\x87\xf9\xa3\x87\x20\xea\x75\x9f\xa7\x68\x32\xc5\x09\xe8\x29\x20\xff\xdf\x03\x2d\xcc\xcf\xa9\x13\x3d\xd2\xca\x7c\x81\xdb\x5a\x77\x7e\xaf\xa9\x3a\x3a\x0d\x24\x04\x9e\x4c\x45\x43\xb0\x86\xb2\x25\x99\x0d\xc5\x8c\xe3\x06\x65\xb4\xa5\xb6\xc8\x59\x9a\x7b\x07\x6c\xff\x93\xbe\xa6\x0d\x75\x11\xca\xf2\x67\xb8\x61\x8b\x40\x55\x01\xc9\x8e\x35\xb4\xb3\xd8\x4c\xfb\x48\x1c\xa3\x4b\xdc\x40\x8d\x9a\x5d\xd7\x98\x60\x31\x66\x49\x3b\x00\x8b\xc8\xf3\x9c\x6a\x16\xd8\x70\x0b\x62\x3e\x17\x4f\xb0\xd9\x71\x72\x47\x4a\x86\xd3\x7c\x1d\x78\xde\x97\x21\x2d\xc4\xba\x3a\xe6\x8f\x85\xf2\xc2\x4c\xfb\x7c\x10\xe3\x3e\x77\xd8\x9a\x2e\x7c\x54\xed\x44\x55\xb1\x3c\xd3\x0f\x01\x64\x31\xe9\x77\x24\x23\x40\xfa\x47\xb6\x4e\xd4\x81\xa2\xed\x90\x04\x88\xfa\x0c\xa2\x01\xa4\x60\x17\x5f\x9e\x0e\x4c\x4c\xea\xed\x4f\xac\x17\xce\x9f\x14\x72\x6a\x6b\x1c\x15\x11\x5f\x99\xc6\x36\xc5\x87\xd6\x26\xd6\xc3\x81\x26\x1b\x27\xad\x4d\xb1\xde\xe7\x31\xab\xe1\xb1\x68\xa7\x8c\x5d\xcc\xa6\xff\xb0\x04\x81\x37\x22\xbe\xe9\x88\xb4\xf4\xe3\x1c\x8b\xd6\x04\x67\x19\x3a\x2f\xd2\x12\x16\xc5\x9f\x6b\x7a\x64\x44\xce\xab\x58\xbf\x06\x5c\x0e\x6a\x83\xc2\x57\x44\x8c\x5b\xa6\xdf\x59\xd5\x41\xbe\xdc\x50\x9f\x9d\x86\xb1\x64\x71\x85\xb1\xed\xd4\x32\xb6\x1d\x9f\xb1\xed\x0c\xba\xc6\x9b\xff\x6f\x59\x1b\x53\xc1\x09\xce\xa0\x88\x9b\x51\x05\xd8\x51\x2d\xb0\xa3\x01\x98\xcf\xfd\x4f\x98\xc5\xce\x97\x90\x72\x53\x6d\x7d\xf0\x91\xec\x3d\xc7\x99\xa4\xd3\x91\x43\x49\xc8\x08\x6b\x74\x89\xa7\x91\xa4\x8e\x40\x7b\x44\x68\x52\xf4\x3a\x6c\xef\xc8\x38\x56\xbb\xfb\xa0\x0c\x71\x26\x8f\x7e\x16\x47\x1d\x48\x73\x3f\x46\x66\x5c\x7a\x12\xa3\x19\xb0\x39\x30\xcb\xd9\x30\x14\x67\x30\x5b\x1c\x14\x5c\xc2\x5f\xe0\x9b\x0c\x32\xcf\x3b\x8c\x73\x49\xd1\xd6\xea\xef\xf7\x1c\x8f\xc8\x35\x0c\x1e\xf8\xcb\xef\x76\x89\xe4\xe1\xb4\x6b\x80\x6d\xf6\xac\xb6\x22\x6e\x4d\x66\xa9\x20\xd3\x14\xfb\x25\xee\x7a\x42\x0b\xfc\xd4\x9d\x76\x4a\x7f\x00\x85\x5b\x2b\x0c\xda\x1c\x2b\x52\xa3\x66\xa9\x82\x33\xc6\x52\x8c\x54\x1c\x3d\x5d\xc1\x79\xc2\x0e\x43\xbc\xc8\x17\xa0\xe3\x0a\x48\xaa\x4f\xc0\x40\x77\x28\x00\xf3\xb9\xb8\x8b\x33\x64\x5f\xe6\x6a\x71\xb8\xf6\x80\xcf\x62\xda\xa6\xf8\x4a\xa9\x78\x94\xaa\x81\xa5\x89\xfe\xc8\x62\x6a\x11\xb0\x92\xd2\x18\xfe\xcc\x79\x2d\x7e\x1a\x61\x45\xee\xd7\x6e\xcd\xc8\x85\xb9\x00\x0b\xa0\x1d\x94\xd9\x5a\x29\x68\x23\x7a\x13\x09\xb5\x61\xd9\x84\x64\x39\xd5\xa7\x8b\x7c\x38\xfd\xc7\xfb\xb6\x24\x30\x52\xd0\x16\x63\x4c\x23\xee\xe6\x87\x47\x29\xd8\x98\xc0\x2d\xe3\xab\x2a\xea\xf3\xd8\x2d\x57\xec\x7e\xf0\x7b\xc5\x03\x56\xee\xe7\x85\x16\x33\x39\xbc\x3d\x4b\x11\xbd\xe8\xe6\xe7\x6e\xaa\xcf\x39\x34\x7f\xbd\x1c\x55\x12\x6a\x2f\x3a\xca\x3b\x01\x61\xf4\x15\xe3\x55\xff\x39\x3b\x6e\xf9\x20\x38\x28\x2c\x95\x23\x07\xa7\x44\x28\x77\x15\x51\x21\x3d\x41\xd9\x18\x73\x99\x2c\x69\x45\xc5\x6c\x3d\xe8\xb7\x3f\xb5\x06\x0f\xce\x81\xe1\xb1\x1a\x01\x00\x45\xeb\x97\x1a\xa9\xfe\xaa\xf5\x15\xac\x25\x11\xc0\xa6\x5c\xb2\x3b\xfe\xc2\x73\x7a\x2f\xbe\xb1\x60\x2a\x9f\x05\x53\x58\x46\x7f\x2d\x17\xe0\x22\x0a\xf8\x7e\xb1\x5f\x20\x81\xf3\x50\x08\x71\x1c\x0b\x85\xec\x82\xbe\x4e\x51\xf9\x03\x45\xc4\xf7\x70\xb7\xe2\x12\x4c\x56\xb5\x25\xdf\xa9\x3c\x53\x56\x92\xad\xb2\x6a\x84\x41\xd7\xb1\x31\xce\x33\x39\xf6\x1a\xd0\x7d\x1c\x04\x4d\xcd\x5a\xd4\xf0\x8d\x72\x9e\x59\x8a\xe7\xf3\xc8\xfc\x6a\x5f\x21\x4e\xa3\xe0\x7d\x8a\x51\x86\x1b\x72\xd7\xfc\x8f\x8e\x6c\x81\x78\x86\xff\x47\xd2\xf0\xea\x57\x43\x37\x9b\xb5\x03\x00\x0b\x35\x23\x15\x5f\x4f\x32\x0c\xa0\x9d\x09\x34\xbc\x00\x00\xba\x0e\xbf\x43\xef\xc0\xb6\xb8\x2b\x4f\x69\x61\x09\xf6\x73\xd0\x6f\x05\x72\x70\x5d\xc8\xa2\xcf\x7c\xe5\x78\x57\x9b\x23\x3f\x82\xda\xce\xb6\x39\xba\x3a\x99\x89\xe9\x4c\xc8\xbb\x4f\xb1\xe8\x51\x07\x7a\x6e\x19\x25\x5d\xc1\xda\x15\x4c\x67\xf8\x44\xda\x36\x43\x74\xdc\x9e\x4d\x38\xd0\x22\x25\xaa\x6e\x60\x75\xaf\xa9\xde\xc3\xd4\xde\x70\xd7\x02\x0e\x73\x05\x5b\xda\xbb\x5d\x74\x95\xb1\xca\xd0\x81\x54\x83\x19\xc5\x2e\x61\x49\xb8\x94\x91\xd5\x15\x8f\x22\xac\xe2\x3d\x0d\xdd\x49\x49\x72\x21\xd0\x88\xf1\x09\x12\x6f\x35\xa4\x68\x04\x8b\x17\x43\x92\x0f\xae\x8b\x16\x70\x08\xb4\x68\x6d\x5c\x10\x4a\xe5\xe1\x49\x48\x2f\x1a\x56\xae\x96\x21\x2c\x81\x01\x76\xc5\x66\x50\x76\xb5\x9b\x41\x33\x90\xee\x18\x9a\x29\xe8\x0e\x17\xa0\x5b\xee\xdc\x78\x7d\xe7\xb6\xdb\xde\x45\xee\xe0\x1e\xc5\x9c\x77\xbc\x05\xe5\x7d\x5d\xad\xbb\x8c\x23\xe8\xf9\x1f\xdd\x3c\xbe\x48\x61\x32\x2b\xf4\x00\x50\x12\xbf\xed\xa6\x93\xa3\xe9\xbd\x0a\x8b\x95\x60\xc9\x32\x1f\x65\x09\x5e\x4e\x18\x1f\x94\x52\xfa\x78\xb0\xf9\xd0\x3c\x12\x4d\x21\x39\x3e\x41\x65\x43\xd7\x4d\xb0\x5e\x0d\x26\xad\xd0\x80\xf7\x82\x0d\xef\xbc\xf5\x2a\x81\x29\x4a\xc2\xf2\x1d\xf5\xb9\xb7\x0b\x17\x9f\x24\xdf\x85\x19\x44\x00\xa6\x1a\xf3\x5a\x4e\x0b\x18\x97\x8a\x6e\x21\x08\xc4\x70\x06\xa9\x5d\xe6\xa6\x42\x9b\xf3\xb9\x92\x03\x39\x74\x4d\xa1\x24\xdc\x77\x58\xf4\x32\x6d\x77\xb7\xc5\xde\x02\x1b\x6d\x41\x7a\x7e\x15\x72\x8d\x7c\xe7\xe0\xd2\x55\x8a\xe1\x2d\x4a\x53\x76\xf5\x4c\xb1\x19\xcd\x23\xa8\x26\xed\x95\xc2\xfd\xdd\xe0\xed\xdb\xb7\x8d\x17\x0c\x36\x7e\xfd\xf5\xd7\x5f\x83\x05\x80\x9e\x9a\xc6\x58\x43\xa1\x18\xb7\x73\x00\x30\x8b\xb1\xf2\xd3\x7c\x86\x47\x8c\xcb\x8b\x55\xb9\x91\xe7\xcf\xf4\xe7\x30\xce\xda\x68\x24\x30\x87\x23\x93\xf1\x54\x7d\x25\x71\x66\xef\x53\x38\x8e\x03\x35\xaf\xf2\x62\x45\x3a\xd8\x4c\x1c\xb3\x3c\xf2\x98\x6c\x74\x5a\x12\x6f\xb0\xfc\x12\x8c\xa6\xa0\x37\x0b\xc3\x68\x56\x2a\x32\x03\x30\x89\x13\x49\x59\x3e\x7b\xf9\xea\xe4\xc3\xcb\x41\x43\xb6\xd2\x20\x59\xe3\xdd\xc9\xc7\x86\xee\x6e\x23\xf7\x23\x0b\x64\x3f\x74\x6a\x00\xa7\x4f\xe2\x19\xe8\x15\xf7\x34\x87\xb7\xea\xfe\x1c\x1b\x27\xa5\xcc\xdd\x9e\xb7\xba\x5a\x77\xe6\x6e\xd6\x64\xb1\x00\xdd\x34\x0c\xa3\xb4\xd4\xa9\xd4\x75\xea\xe4\x5d\xe3\xe4\x43\xa3\xae\x6b\x8c\x36\x18\x5f\xd2\xc1\x7c\x6a\x65\x27\xd3\x2d\xfa\x98\xd7\xec\xa6\xc5\x7e\x0e\xc3\x30\x1a\x96\xfa\x39\x74\xfd\x7c\xfa\xea\xe3\xcb\x0f\xc5\x0e\xaa\x05\x2d\xf7\x4c\x25\x06\x70\xfa\x38\x1e\x6e\xd1\x2b\x55\xab\x3b\x2c\x76\xa8\x19\x8d\xc2\x30\x1a\x95\xba\x34\x2a\x4d\x5d\x4d\xc7\xf4\xcc\xd5\x76\xcf\x6d\x3d\xd9\xc5\x11\x00\x65\x8c\xb5\x66\xe6\x54\xd5\xee\xa8\xd8\xcf\xd5\x10\x02\xca\x44\x03\x35\x34\x46\x73\xc0\x2c\x74\x1f\x90\xb2\xbc\xf2\x4e\x61\xc5\x16\xc0\xd7\x9b\x56\xd8\xae\x30\x6c\x92\xec\x1d\x7a\x27\x39\xc1\x22\x98\xf2\x61\xde\x1a\x1b\xe3\xeb\x61\x3a\xcb\xfe\xda\xf7\x2f\x6e\xa7\x24\x13\x3a\x16\x0a\x8d\xf5\x57\x35\x42\xa1\x67\x61\x55\xbe\x3e\xbd\x49\x94\x77\xa7\x7a\x90\x55\xbc\x3e\x59\xf5\xfa\x64\xbb\x5d\x9f\x9a\x82\xff\xeb\xae\x16\xa4\x71\xd3\x52\xa8\x2f\x27\x53\x71\x13\xf9\x61\xfd\x30\xa8\x2e\x9c\xb2\x48\x25\xa3\xa8\x49\x8b\x17\x0e\xaa\xac\xa3\x9d\x5b\x66\x17\x91\x14\x16\x11\x95\x17\x91\x68\xfd\xfc\xf6\x8b\xa8\x2c\x1d\xf6\xa7\xee\x6e\xa7\xce\x9b\xc4\x2f\x7e\xea\x6a\x54\x89\x5b\x91\xbb\x9b\x96\xd6\x02\xe0\xe1\x16\x35\x8c\x3e\x61\xe3\xf2\x46\x30\xb7\x71\x79\x7b\x26\x76\xd8\xda\x3b\xdc\x41\x3b\x71\x8e\x35\xd4\x7a\x1e\x94\xfb\xae\x7b\x7f\x69\x05\xbb\x13\x5f\xa8\x05\xbe\x2d\xba\x7e\x5e\x12\x60\xcc\xee\xc4\xc5\x26\x80\xdf\xbb\xbd\xb0\x11\x70\xbe\x15\xf0\x37\x66\xdb\x6c\x04\x9a\x6e\x05\xfa\x9d\xd9\x61\x1b\x81\x26\x5b\x81\x7e\x65\x36\xe3\x46\xa0\xd9\x56\xa0\x5f\xe7\xfb\x76\x23\xe8\x68\x2b\xe8\x2f\xaf\xb7\x83\x9e\x6d\x05\xfd\x79\x81\x7d\xdf\xa8\x81\x99\xd7\xc0\x0e\xf8\xd0\x62\x9d\x3f\x8e\x8d\x5f\x75\xdf\x7d\x75\xdc\xfa\x2c\xc3\xcf\xb0\xb8\xc2\x98\x1a\xd1\xac\xee\x85\xc7\x99\xfb\xb7\x20\xf5\x6f\x41\xbb\x12\xee\x0a\xe4\xab\xaf\x40\xbe\xeb\x15\x68\x2f\x8e\xfd\x92\x6f\xbe\xe4\xc7\xd1\x32\xd1\x8c\x56\x66\xc9\xf3\xa9\x3e\xdf\x31\x8a\xbb\xcd\xa3\x05\x00\x9e\xe0\x45\xd1\x46\x2e\x3b\x6e\x76\xaa\xe4\xd1\x8a\x8d\x61\xd7\xeb\x8b\x6f\x8c\x9c\x66\xf9\x4a\x69\x59\xa3\x00\xa2\x07\x9e\x55\x87\xd5\x3f\xf6\x70\x7c\x6b\x07\xd8\xc5\x8b\x2e\xf6\x56\x1e\xb7\x19\x0d\xc3\x1a\xdb\xcb\x36\xa3\x3d\x1a\xf7\xe5\xdf\x41\xb7\x64\x10\xdb\x56\x9e\x08\x22\xaa\x6a\xcb\xb9\x4e\xb1\xc0\xaa\x4a\x2d\xe7\x62\x89\x18\x32\x8a\x68\x18\x36\x69\x3b\x63\x13\x5c\x6b\xa1\x91\xf5\xf1\x60\x3e\x77\x7a\x2e\xf9\x19\x86\x33\x1d\xc9\xbc\xc8\xf8\x54\xe5\xbf\xf9\x12\x56\x59\x9f\xea\xa4\xa4\xca\xc3\x42\x71\xcc\x69\x2f\xed\x5a\x38\x4a\x3b\x9c\x2a\x7d\x5c\x4f\xff\x89\x03\x65\xc7\x10\x74\xcd\x5f\x97\x1f\x86\x91\x2d\x61\xeb\x02\x58\x66\xb2\x52\xb0\x7a\x63\x56\x2d\x99\x5b\xe7\x78\xe3\x10\x0a\xbe\xfd\xc0\xde\xac\xf9\x6b\x31\x6b\xe6\xb9\x59\x33\xdd\xdd\xac\x99\x56\xcd\x9a\xe9\x3a\xb3\x66\x9a\x9b\x35\xd3\x0d\xcd\x9a\xe9\xf6\x66\xcd\x14\x14\x47\xfa\xb5\x9b\x35\xf3\x7b\x33\x6b\xf6\x0c\x5d\x84\x36\x6a\xa6\x31\xef\x77\x06\x90\xc4\x3c\x37\x6a\x6e\x50\xa5\x6b\x27\x77\xb3\x62\xfe\x3b\x16\x31\xad\xb7\x08\x23\xb5\x86\xcc\xd4\xb7\x8b\x22\xdb\xe1\xb4\xca\x83\x8e\x3b\x99\x4a\xee\x71\xdd\x57\x83\xeb\xf6\x4f\x38\xbe\x2e\x5c\x77\xaf\x4f\x38\x6c\x28\x57\xf3\x80\x83\xc4\x54\xe2\x3a\x16\x53\x89\xeb\xc8\x28\x52\xc4\x14\xc9\x9e\xe7\xef\x37\x88\x9b\xee\x1a\x2a\x92\xb4\x33\xf3\x58\x6d\x71\x27\xcc\x78\xfa\xc5\x9e\x78\x6c\xf9\xcc\x6d\x33\x3c\x59\xe1\x2b\xca\x8b\xb9\xc7\x94\x5f\x03\xa6\x24\x7f\x19\x4c\x49\xbe\x09\x4c\x49\xee\x0d\x53\x32\x8b\x29\x49\x4c\x6b\x9e\xba\xc1\x1a\x33\xab\x8d\xcd\xff\xc8\x28\xb2\xb6\x2c\x8a\xb1\x2e\x60\x5b\x06\x7a\xac\x6b\x92\xf5\x16\x03\x11\x52\xe6\x13\xdc\x7b\x2f\xa1\x8a\xe9\xb7\x11\x35\xbc\xbd\xc2\xe1\x1e\x4c\x0c\x55\xf5\xd2\x83\x32\x09\x17\x22\x98\x81\x05\x30\x86\x0b\x7e\x37\x56\x57\xe9\xd6\xf4\xc7\xfc\xb6\x41\x78\x23\x06\xb6\xe8\x20\x82\xb7\x8b\xa5\x5d\xb1\x99\x77\x7a\x40\xc8\xea\x6f\x17\x54\x7b\xbb\x30\xff\x76\x41\xab\x6e\x97\x0d\x1f\x0d\x56\x9f\x53\xdb\xc7\x29\xfc\x1c\xb7\x12\x8c\xa7\x6b\xaf\x18\x75\x6f\xe7\x8a\x2a\x98\xc2\x21\x1c\xc1\x04\x8e\xe1\x34\xbf\x7e\x26\xde\x24\x4f\xbe\xb1\x47\x0d\x6e\x90\x97\xb9\x0c\x97\x87\xe1\xb2\x5d\x21\x0a\x9a\x0d\xde\xce\x3f\x60\x21\x0e\x2b\x6f\xfb\x9f\x79\x14\x56\xed\x6e\x42\xa5\xe9\x2d\xc5\xdb\x5e\x54\xd6\x5e\xe1\x4b\x5f\x11\xd4\x06\x7d\x5f\x78\x9d\xbd\xc9\x2f\xa5\xa8\x60\xa9\x23\x00\xa8\x45\xbe\xcf\x11\xa5\x4c\x34\x24\xc4\x06\x6a\x0c\x53\x94\x65\x0d\x94\x35\x90\x23\x26\x02\x0f\xfa\x99\x86\xee\x61\x3b\x89\xde\xac\xbb\x14\x89\xe5\x0c\xbd\x27\x24\x9e\xa3\xde\x24\xc4\xfe\x87\xb2\xb0\xa7\x85\x89\x90\x77\x75\xa0\x06\x1e\x10\xda\xa0\x3a\xd2\xbc\x99\x10\x79\xaf\x2f\x55\x33\xe9\x67\x65\x14\x2c\xf2\x5e\x9e\xdb\x0d\x6d\x76\xe6\x79\xec\x51\x36\xee\xf1\xc6\x07\x3c\x4a\xf1\x50\x84\xa1\xf9\x21\x39\xee\x9e\xf7\xbb\x5b\x3e\x1e\x15\x77\x62\x66\x26\x8e\x9b\x95\xbb\xbc\xe8\x6a\xc1\xdc\xe8\x50\x00\x6d\x5c\xd8\x8c\xe3\x08\xc7\x27\x92\x6e\x3a\xce\x43\x7c\xeb\xdb\x52\xbd\x26\xb0\x77\xc1\xba\x40\xb0\x14\xe6\x36\x09\x44\xf5\x5f\xfd\xab\xdb\xe3\xa0\x4b\x34\xb1\xb4\x90\x1b\x5a\x8e\x61\x3e\xf7\xf7\xf5\x27\x9f\x76\x8c\x3e\xd9\xd6\x32\xe5\x88\x51\x0f\xe4\x64\x54\xa6\x76\x6c\x6f\xdb\x9f\x3e\xa9\xe1\x7e\xfa\x14\x0b\x88\x75\x03\x1e\xec\xab\xdc\x05\x99\x77\xfb\x2f\xa1\x31\xcd\xa4\xcf\xe7\x4d\x3b\xfd\xee\xf4\x5a\xd1\xf0\x91\x9c\x97\x4a\x6e\x3b\x1b\xa3\x49\xa1\x48\x0d\x4e\x78\xcf\xd9\xf5\x4d\x2e\x62\x96\x44\xa0\x19\x84\x7e\x6c\xb3\x84\x00\xab\x34\x16\xc9\xe2\xb0\xef\xe3\x4d\x70\xbb\x00\x00\xc0\x66\xc7\x10\x9d\x0e\x3d\x35\x8f\x16\x8b\xa8\x2a\x31\x77\x5e\xca\xd4\xe2\xab\xf7\xb9\x6e\xa9\x4d\x4c\x79\x0f\x6f\x1d\xf0\xb8\xda\x09\x0a\xdd\xfd\x0e\x09\xd0\x7e\x03\x79\x4c\xdb\x68\x3a\x4d\x6f\x14\x8c\xbc\x40\x6e\x09\xaf\x33\xb8\x7f\x48\x5e\xfa\xeb\x29\x89\x69\xfb\x76\xaa\x19\xc7\x93\x48\x6e\xd5\x7c\x2e\xdd\x99\x11\xbd\xd3\x08\x83\xae\xc8\xc1\x9c\x1a\x5e\xc3\x49\xf6\xb1\x87\x66\x3e\xe0\x11\xe6\x98\x0e\x2d\xae\x91\xbd\x68\x8c\x51\x46\xff\x4d\x34\xce\x30\xa6\x0d\x8b\xd3\x32\x9c\x34\x5a\x8d\x6c\x26\x2f\x43\x50\x28\x21\xd7\x02\x27\x41\xfe\xe8\x2b\x6f\xfa\xc4\xbb\x7c\x4e\xea\x77\x6f\x2f\x3f\x41\x5e\x6a\xed\x7d\x92\x6f\xe8\xf9\xbc\xb6\x96\xbc\x13\x8a\x17\xc3\x75\x11\xcf\x34\x84\xe4\x89\x70\x6f\xc5\x0d\x61\x30\x7b\x29\x12\x77\x39\x4e\xb7\x17\x99\x7b\x01\xba\xb8\x2f\x06\x31\x87\xde\xc0\x9f\xe6\x76\x24\x56\xbd\x96\xeb\x6f\x7d\x7b\x33\x0a\xda\x23\xc6\x5f\xa2\xe1\xb8\x48\x16\xb1\x3e\x1e\xc4\x54\x2b\x5f\x20\xf3\xb1\x74\xb3\xe9\x7f\x6a\xef\x59\x1e\x8e\x6e\x16\x13\x60\x94\xa3\x6c\x36\x9f\x33\xff\x8e\x92\x14\x32\x2b\xa2\x70\x16\x73\xc3\xd4\x80\x36\xc7\x97\x98\x67\xfa\x57\x32\x1b\xfa\x4a\x23\x7d\xd3\x7a\x22\x17\xc8\xc1\x7c\xce\x17\x00\x32\x00\x89\x47\xf6\x16\xda\x53\xcd\xa9\xde\x14\xd3\x7b\xac\x7a\x73\x12\x7b\x73\xc2\x42\xa6\x21\xd4\x00\x74\x9b\xb9\xdc\xc2\xf2\xa5\x65\x72\x78\x12\xb9\x03\xc8\xf2\x95\xfa\xe8\xf9\x26\x3c\x58\xc3\x61\x6b\x2e\xa3\xca\x14\xd7\xb2\xf2\xf3\x79\xc4\xab\x6e\x94\x36\xe4\x43\x2f\xfe\x32\x7c\xe8\x85\xe5\x43\x01\x98\xcf\x45\x18\x4a\xaa\xb1\xf2\xf6\xd3\x32\x71\x92\xba\x8b\x70\xcc\xad\xde\xa6\x03\x89\x7f\x79\xd9\x13\x76\x9b\x75\x09\xa4\x75\x76\x48\x4f\x1c\x43\xd8\xbb\x4d\x94\xca\xbc\xb3\xe8\x9a\x5f\x47\x86\xaa\xc3\x7d\x7a\x78\x38\x58\x2c\x20\x2e\x60\x21\x8d\x33\xf1\x02\x8e\xba\x64\xb1\xd8\x94\x4b\xd6\x7b\xe4\x9e\x39\x64\x85\x70\x20\x92\x04\x5b\x16\x37\x8f\xf2\x59\xf1\x67\xa4\x56\xb8\xb3\x28\x4e\x9b\xb6\x5e\xe0\x46\xd2\x93\xfb\x84\xc0\x4a\xe6\x03\x71\x79\x8e\x32\x2d\xcf\x51\x93\xe4\x8b\x14\xf8\xcd\x2d\xb2\xc7\x87\x3b\xa9\x0e\xaf\x95\xea\x64\xb9\x54\xc7\xbb\x0b\x2f\xbe\x34\xa3\xbf\x03\x2b\x79\x36\x23\x69\x72\x62\x9c\x23\x64\xf1\xfb\x02\x77\xf9\x01\xe2\x9c\x67\xad\x71\xfb\xba\xa3\xb4\xe0\x2d\xe4\xd5\xaa\x0f\x6b\xab\x3e\xf4\xab\x3e\x34\xa6\xcf\x95\xba\x8f\x6a\xeb\x3e\xf2\xeb\x3e\x52\x75\x49\xfc\xc1\x71\x59\x6e\xda\xf0\x95\x26\xde\x22\x02\x6f\xcb\x04\xb9\x77\x71\xeb\xf7\xbd\x16\x6d\x45\x00\x2c\x60\x56\x43\xbe\xbb\xf2\x59\xa9\x3c\xe4\x8a\x84\x5b\x80\x62\xe0\x04\xc5\xa8\xe7\x93\xec\x31\xf1\x6f\xe3\xca\xe1\x6f\x76\x16\x39\x57\xfc\xbe\xc0\x31\x40\x47\xc7\x6b\x7f\x89\x91\xb9\x25\xe2\x8f\x91\x00\x4e\x28\xca\xda\x99\x91\x7e\xb2\x36\xb5\x72\xcf\x63\xfb\xe0\xc9\xbc\x1a\x3e\x20\x7d\x24\x6f\xf6\x81\x92\xa7\xab\x9f\x60\x61\x68\xcf\x0c\xdc\xb2\x36\x8e\xb2\x7c\xbb\xb3\xf6\x28\x02\xb9\x13\x57\xd7\xbd\xdf\xea\x9c\xe0\xe5\xa4\x6b\xd4\x94\xfc\x59\x91\x79\xd4\x42\x0b\x3d\x0c\xb5\x24\xf3\x79\x4d\xbe\x3a\x09\x9a\xdc\x56\x38\xb7\xf7\x5b\x94\xbf\x1b\xc6\x30\xb0\x81\x8e\x00\xe8\x62\x85\x46\x9e\xc7\x91\xf5\x3e\xf1\x49\x70\x34\xbc\xc0\x09\x24\xe5\x04\x56\x4e\xb0\x32\x94\x4f\x09\x9e\x62\x9a\x60\x2a\xfe\x0f\xbe\x79\xce\x26\x53\x24\x9c\xfb\xbc\xba\xbc\xd9\x8a\xbc\x74\x45\xde\xb4\x70\xc0\xa2\xaa\xd8\xbc\x86\x4e\x76\x8c\x9e\xa8\xe7\xba\x4f\x25\xa9\xdb\xc0\xd7\x53\x8e\xb3\x4c\x49\x52\x24\xfe\xc5\x44\x8c\x31\x97\xa8\x5a\xd6\x56\x4f\x89\x3c\x36\xfc\xc0\x63\x56\x4a\x5b\x4a\x84\xa1\x77\x85\xc3\x5b\xef\x12\xb6\x2f\x7e\xb0\x4f\x56\x96\x49\xce\xc5\x02\x40\x11\x86\x9a\x23\x5c\x00\xe5\xff\x4f\xbb\x05\xd5\xc6\xca\xf1\x55\x84\x3c\x37\x8a\xc8\x62\xef\x03\xcb\x72\xe4\x88\xb1\x8a\x7c\x20\x2f\xe0\x49\x48\xe3\xce\x31\x7d\x2c\x8e\xe9\xe1\x21\xe0\x7d\x3a\xf0\x30\x03\x75\x38\xf3\x32\x3a\x8d\x24\x25\x27\x89\x10\xc3\xdc\x30\xd8\x97\x8d\x0d\xec\xbb\x2a\x2e\x79\xaf\xe0\x93\xc1\x8a\x01\x1c\x41\xc9\x8c\x00\xa8\xaa\xca\x1c\x6b\xb7\x95\x94\x33\xec\x46\x84\x63\x93\x73\x6d\x72\x26\xe8\xe6\x0c\xff\x4c\xaf\x38\x9a\xaa\x7d\x1c\xc0\xdf\xf2\x4c\xf5\xf8\x1f\x4f\x03\xe8\x36\x35\x80\xd8\xf9\xdf\x8c\x11\x8c\x68\xdc\xbf\xbd\xc0\x37\xdd\x20\x43\x23\xfc\x77\x2c\x02\x73\xe9\xd7\x22\x2e\xff\x68\x08\xb0\x58\xc0\xbc\xea\x69\x7d\x55\x0f\x8b\xe9\xca\x99\xae\xac\x18\x3b\x53\x1d\x25\x89\xda\x62\x2b\x9b\x3e\x8f\x4e\x22\x94\xef\x17\x00\xbd\x6a\x86\x0d\x95\xb4\x9f\x5a\x5a\x59\xcf\x8c\x98\x32\x41\x46\x37\xf6\xfa\xd2\xa8\xd1\x14\x02\x50\xb8\x2e\x4c\x67\xd9\xf8\xa5\x99\xfa\x72\x27\x72\xd9\x91\xa8\xb9\x6b\x0a\x37\x2a\x7f\x72\xd4\xe3\xad\xa3\x6e\x07\x40\x12\x1f\x1d\x93\xc7\xfc\x98\xa8\xdb\x95\xb4\x8e\xfc\x3d\x43\x06\x46\x6f\x17\x89\xb8\x3a\x30\xbf\x33\x6a\x68\xc0\xdf\x52\x42\x6f\x29\x88\xdd\xa6\xa2\x00\xc0\x2c\x36\x9c\x04\x9c\xe9\x5f\xc6\x10\xb0\xf8\xb0\x7c\xe5\x6c\x98\x43\x97\xc1\xbc\x76\x77\xb6\x70\x53\xf4\x29\xcb\xa3\x5d\xd4\x4d\x92\x75\xde\x7e\x81\x6f\xa0\x24\xaa\x75\x6f\x94\x55\x9e\xa1\x08\x0e\xaa\x43\x2d\x02\x2d\xaf\xa3\x6a\x58\x58\xd9\x22\xb4\x70\xba\x74\xb1\x7e\x79\xbd\xed\xf9\x49\x97\xfa\x07\xe1\x62\x86\x52\x53\x98\xe0\xda\xa5\xd6\xa3\x90\x10\x8e\xa3\x08\xd7\x2c\xce\x72\x60\x95\x5d\x28\x09\xf8\xfe\x60\x09\x3f\xbb\xc1\xba\x40\xc9\xbd\x7b\xc3\xd0\x96\x8d\xff\x07\xaf\x98\xfe\x1d\x89\xa8\x20\x80\xbc\x6e\xac\x5e\x8b\x75\x67\x6c\xd3\xcd\x25\x00\xe4\x6e\x18\xf8\x1a\x0f\x95\x33\xe5\xd2\x18\x2c\x7a\x26\x23\x55\xa9\x4d\x32\xa5\x54\x09\x43\xf3\xf5\x82\x70\x71\xe3\x2f\x50\xdb\xe2\x44\x48\xed\xb7\x46\xab\x07\x38\x7e\x1f\x09\xd5\x63\xe7\x9d\x4b\x7d\x18\x6c\x08\x60\xa1\x7a\xc9\x9e\x58\x5e\x1f\xb7\x06\x19\xe6\xee\x65\xa1\xc1\x71\x5d\x87\xc5\x16\xb9\x1f\x63\x05\xcd\x86\x7c\x32\xf1\x2e\x63\xac\x5a\x71\xc3\x36\xc3\x09\x96\xbc\x1e\xa8\x4e\xbe\xab\xa0\x66\xde\x83\x63\x98\xaa\x6d\x20\xb9\x2a\x65\x58\xef\x39\xc9\x04\xa1\x78\x1b\x60\x79\x9d\x32\x34\xb5\x44\xdb\x80\x32\x15\x8a\x70\x24\x31\x43\xe8\xf9\x0b\x24\x50\x05\x96\xe6\xbf\x8a\xab\x2f\x8a\xab\x0f\x69\x69\x41\x8b\x64\xc7\x32\x39\x19\x80\x78\xc3\x65\x3f\xf0\x14\x93\xde\x3b\x38\xb1\xe9\xae\x59\x0c\x40\x18\x9e\x45\x3e\xf1\x43\x95\x90\xe8\x2c\x12\x90\x00\x88\x16\x91\x68\x3f\x9b\x8d\x46\x98\xe3\x24\xd7\xf2\xc1\x51\xfc\x34\x8a\x86\xf1\x14\x78\x15\x3d\x52\xa2\x4f\x07\x8a\x88\x2a\x88\xe5\x8a\x42\x3b\x9f\x9a\xf2\x84\x44\x5d\xed\x7c\x10\x26\xf1\xd3\x68\x58\x00\xee\x3c\x2a\x91\xbb\xc2\x1e\x57\x60\x3b\x82\xa6\xcf\xee\x0a\xbc\x04\xda\x9d\x9c\x3e\x1a\xc0\x75\xfa\x88\xda\x9a\x00\x0e\xfd\x9d\x5a\x81\xef\xce\x53\x3f\xdb\xba\x05\x5b\x77\x5d\x1b\xf9\x31\xeb\xcf\xb6\x6e\xc4\x55\x5e\xd7\x8a\x39\x81\xfd\x74\xeb\x26\x74\xcd\x12\xfc\xa1\x47\x71\x7f\xf8\x7a\x79\x7b\xed\x1f\x2b\xf7\xd0\xeb\x71\xf7\x5e\x72\xce\xfd\x1b\x33\x08\x7c\xd5\x78\x5e\x11\x09\x90\x45\x85\x2f\x7f\x7e\x50\x7d\x33\xd1\xc0\x56\xb1\x52\x33\xe6\x4d\xa7\xab\x66\xc8\x1b\x4f\x17\xb9\xc3\x74\xdd\x58\x8a\xc7\x90\xb5\x1f\x5c\x04\x95\xaa\x60\x84\xdd\x93\x60\x64\x95\x49\x42\xc5\xb2\xe0\x33\x5a\x01\x6f\x6b\xd9\x26\xf3\xcb\xc6\x6d\x65\xb5\x63\xb3\x6c\x2c\xb0\xd2\xb0\xad\x4e\x48\xbd\xc4\x7c\x6e\x6f\x2f\xbb\xcc\x5e\x76\x37\x1b\xb0\x6c\xca\x31\x4a\xfe\x32\x86\xb2\x86\x12\x22\xdf\xaa\x19\x0d\x5b\x2d\x76\x6c\xca\xae\xe4\xee\x3b\x89\x39\x67\x61\xd8\xac\x72\x66\x9b\xba\x08\x75\xce\x39\x3f\xe0\xf3\x97\xd7\x53\xe5\xd3\x53\x78\xae\x3e\x9d\x53\x50\xb1\x28\x74\x15\xe9\x95\xf7\x4c\x05\xb4\x6a\xd7\x88\x5a\xb9\xaf\xe6\x77\x95\xb2\x22\x3e\x6d\xd6\x9b\x8f\xf0\xb6\x21\x6c\x8d\x40\xd4\x9d\xd6\x11\xc1\x69\x92\xe5\x8a\x6e\xea\xcb\x57\xdf\xa2\x69\x18\xd2\xf6\x18\x65\x91\xb0\xf1\x8a\xe4\x1e\x44\xc6\xaa\xa4\x19\x6d\x61\x82\x52\x29\x3a\x35\x85\x5e\x67\x2f\x1d\xa5\x98\x57\x00\xde\xc4\xcc\x54\x5c\xbc\xd9\x8a\x75\x6c\x14\xfd\x9d\x2c\xea\x75\xd0\x43\x85\x30\xe5\x8c\x0d\xe1\x0c\xa8\x8f\x59\xdb\xd0\xf7\xd6\xdf\xa5\x77\x99\x53\x6d\x85\x56\xdb\x46\x2d\xfc\x99\x06\x92\xc6\xb4\x3f\x1b\x1c\xa4\x35\x63\xae\x9b\x9e\xd4\x5a\x20\x81\x30\x4c\x0b\xb6\x53\x46\xd9\xd2\x43\xfd\x7e\x2e\x7e\x8c\x32\x20\xc9\x49\x90\x47\x6f\x19\xc4\x69\xdb\xf8\x5e\xf2\x77\x72\x0a\xc2\x10\x47\xa9\x1a\x44\x4d\x7d\xf5\xc2\x1d\x2d\x22\x0a\x67\xf0\x76\x01\xfb\x03\x85\x87\xfd\x31\x8e\x80\x7b\xda\x0b\x24\xaa\x19\xca\xdd\x98\xfb\xfb\xec\x0f\x07\x07\x6e\xfa\xd4\x9c\x26\x60\xa1\x63\x4a\xaa\x7b\x49\xee\x92\x21\x98\xcf\x9b\x2c\xa2\xfd\xe1\x00\xcc\xe7\xf2\x4f\xcd\xf8\x34\xc4\x71\x2c\xb3\xed\x3e\x1c\x87\xe1\xb8\x76\x2e\x8a\x2d\x8e\x8d\x5d\x76\xb7\x98\xac\xac\x2b\x29\xe3\x13\xc5\x64\x58\x0b\xd3\x31\x00\x8b\x62\xb9\xd4\xac\xbf\x3e\x18\x43\x00\xf3\x4f\xaa\x3e\x8d\xb3\x4f\xcf\x0a\x22\xf5\x74\xeb\xbb\x93\x6a\x07\xee\x40\xe6\x47\x73\x99\xcd\x53\x5f\x0c\x16\x90\xdb\x7e\xc7\xee\x57\xb1\xbc\x4f\x52\x29\xd3\x8d\x85\xd1\x27\x17\x89\x16\x01\x20\x89\xcb\x74\x0c\x64\x31\x95\x5b\x46\x6e\x80\x26\xcb\x03\x08\x29\xa3\x30\xf7\xe5\xe1\xa5\x99\x95\xff\x6a\xcc\x84\xfc\xdb\xd5\xdc\xac\x3f\x53\x75\x73\x0a\xd6\xf8\x1f\x45\xa4\xbd\xc0\x78\xfa\x3f\x8d\x2b\x22\xc6\x8d\x1b\x36\xe3\x8d\x04\x09\xd4\x6e\x3c\xe5\x58\x7e\x36\x04\xbf\x21\xf4\x5c\x96\x56\x85\x1b\xe2\x8a\x35\x34\xc5\x27\xcb\xd9\x1b\xb5\xd7\x30\x4e\x8b\x47\x24\xc5\x0d\x44\x1b\x24\xcb\x66\x58\x03\x2d\xd1\x87\xf2\x56\xbd\x8b\x83\xe8\x3a\x4f\xfe\x29\x69\xa1\xe9\xb4\x75\x89\x79\x46\x18\x7d\xe0\x71\xb1\xad\x11\x92\xd8\xf4\xe6\x7e\x83\x58\x39\xec\xee\xd4\xe1\x8d\xa2\xd5\x5b\x93\x2a\xdb\x03\x5e\x74\x4c\x6c\xef\xac\x14\x65\x19\x19\xc9\xf5\x3f\x10\x6d\x8e\xcf\x49\x26\x30\x8f\x88\x24\xbf\x69\x2c\x09\xf0\xc5\x81\x1f\x6d\x2a\x25\x67\x1c\x71\x82\xb3\xf5\x33\xa3\x69\x73\x8e\xcf\xf1\xf5\x17\x73\xd5\x7a\x80\xdb\xa6\x39\x7d\xcb\xc6\x0f\xfe\x99\x1c\xf6\xdb\x03\xf7\xef\x03\xe8\x4a\xbc\xbc\x16\x98\x26\x38\x59\x52\xb2\xd5\x47\xad\xdf\x07\xff\x1e\xe9\x2f\xd0\x93\x35\xb3\x31\xb2\xa5\x65\xee\x3f\x93\xc1\xed\x8f\x8b\xff\xef\x41\xfd\xd8\x47\x29\xca\xc6\x0f\x86\x6c\x32\x65\x54\x9e\xf1\x07\x2a\xc1\xfa\x9f\xae\x7d\x89\xe3\x6a\x49\xba\x33\x45\x02\x67\xcb\xeb\xdf\xa7\xaf\xfe\xa1\x09\x02\xa9\x22\x85\x21\x9a\xa8\x38\x61\x67\x8c\xa5\xca\x8c\x4a\x52\xc6\x27\x34\xbd\x81\x28\x56\xc2\x62\xa7\xf8\xe4\x33\xaa\xbc\x61\x52\x7c\x2d\x94\x2f\xcc\xa1\xc4\xdb\x29\xb4\x7e\x9a\x9f\xdb\xb1\xb5\xb1\x5a\x8b\xe8\x36\x45\x37\x6c\xe6\x39\xf5\x87\x68\xa8\x62\x2d\x36\x8f\xac\x8f\x40\x15\x87\xb2\x1b\x9c\x31\x26\x32\xa1\x9c\xfe\xaa\x2d\xfb\x0e\x4d\x70\xd6\xed\x07\xe5\x39\x72\x99\xcf\x88\x12\x3e\xca\x32\x28\xc5\x5c\x48\x72\x3f\x80\x81\x86\x2f\x57\xe0\x9a\x08\xc9\x23\x0d\x20\x12\x26\xb8\xa8\x5f\x85\x13\xd4\x4a\xd1\x19\x4e\x65\x1d\xf9\xa1\x1d\x40\x9f\xe1\xe4\xec\x26\x80\x01\x67\xa9\x6c\x2d\x1b\xb3\xab\xf7\x9c\x9d\x73\x9c\x65\x5d\x16\xe9\xde\xb4\xfd\xd4\x00\x40\xca\xc4\x4b\xdd\x58\x17\x45\xae\x5d\x50\xa8\xfc\x0c\xf1\x2e\x8d\x82\x42\x4d\x18\xe4\x35\x03\x00\x4d\xc5\xbc\x99\x1c\xd2\x18\x65\xcf\x52\x36\xbc\xe8\x92\x28\xb0\x3b\x29\x00\x6e\x9d\x22\x00\xdd\x14\x74\x8b\x0b\x6c\x61\x09\x35\x3b\xb7\xb5\x42\x5a\x27\x04\xfd\x85\x88\xf1\x0b\xbd\x4e\x5a\x4c\x50\xa8\x1c\x04\x00\x8a\x58\x4f\x76\x43\xfd\xdb\xb2\x01\x14\x82\x11\x9b\x51\xad\x88\x0a\xfc\xa0\x1f\x55\x80\xfe\xa2\x2b\x90\x8a\xd7\xd1\x40\x5b\x67\xec\xba\x11\x00\xe8\x45\x67\x01\xf6\x97\xf2\x1f\x0d\x55\x77\xbe\xf8\x28\xeb\xa3\x42\xe4\x78\x54\xf6\x24\x21\xc9\x6b\x9a\x61\x6e\x03\x2b\xd6\x8b\xbe\x0f\xb4\xbc\x5b\x99\x9e\x2e\x31\xa2\xd5\xb8\x77\xa6\xd3\x7d\xe3\x5f\x5f\x09\xeb\x76\x75\xb3\x03\xf2\x18\x39\x4a\xa2\xa2\x06\x60\x04\xf1\x4a\xb3\x2b\x8c\xd2\x44\xe6\x06\x9f\x26\x6c\x96\xe1\x97\x54\x60\xfe\x93\x8a\x42\x63\x74\xb0\x6d\x2f\xa3\x7d\x46\x68\xa2\x0d\x84\xab\x55\xdf\x60\x74\x89\xeb\xaa\xaa\x8c\x6a\x55\x1b\xa5\x14\x25\xc9\xcb\x4b\x4c\xc5\x1b\x79\xdd\x50\xcc\xa3\x40\xd5\xd2\x41\xcf\x2b\x5d\x30\x0d\x6c\x06\x23\x95\x2d\x57\xfb\x62\x61\x2c\xe0\x15\x49\xd3\x17\x38\x13\x9c\xdd\xd4\xac\xce\xda\x25\x29\x76\x42\x07\xc4\xbc\xf3\x58\x96\x83\x59\x3b\x9c\xa9\xc1\x17\x2f\x66\x5c\xab\x7a\xeb\xf7\x7e\x11\xb5\x94\xcf\x80\x24\x13\xbc\x80\x05\xde\xb6\x2f\x22\xb3\xdc\xde\x7d\xd3\x53\x43\x26\x98\xcd\x44\x00\x3b\xf5\xe7\x66\x2c\x26\xe9\x29\x1a\xe1\x28\x10\x1c\x51\x1d\xa8\xb5\x95\xd8\xa1\xe4\x7e\x6c\x31\x0c\x26\x99\x0e\x9f\x02\x87\x29\x19\x5e\x74\x2b\x67\x61\x45\x2f\x12\xbd\xdc\x27\xf4\xb9\xac\xaa\xce\x89\x51\x47\x7e\x32\x59\xaf\x64\x39\xeb\xfc\x1f\x2c\xa0\xb7\x62\x2b\x70\x85\xdf\x48\x50\x8d\x4d\xa5\x22\x1e\xb5\xa7\x1c\xcb\x75\x95\x98\x3c\x87\xac\x16\xf1\x6e\x90\x9b\x05\xfb\x26\x77\x1b\xc8\x26\x95\x67\x24\xdb\xa0\xb7\xdf\x77\xd8\xe8\xf5\x13\x04\xd3\xa8\xdc\x55\x0f\xc9\x00\x39\xcc\x9a\x7a\xdb\x63\xdd\x00\x36\x8f\xc0\x01\x96\x63\x32\xf0\xbc\x35\x42\x0a\x56\xd6\xbd\x55\xb1\x6d\xab\x63\xab\x5f\xda\x62\x00\x9e\xa1\xc4\x97\xcb\x68\x39\xfd\xaf\xe1\xa6\x57\xd2\x6f\x9a\xd6\xb5\x67\xee\x5e\x69\x35\x03\xcd\x50\x54\x3a\x4d\x21\x12\x9c\xc0\x5b\xb9\x2b\x3e\x92\x89\xd1\xb0\x39\x1a\xa2\x79\x04\x49\x26\xf7\x47\x55\x17\x97\xc8\xe2\xba\xf4\xa7\xf3\x19\x49\xf4\x1b\x45\xf9\xeb\x15\xe3\x20\xb2\x37\x74\x91\xbc\x90\xd5\xb7\xdb\x5b\xe5\xdd\x93\x09\x32\xbc\xb8\x09\xc0\x7c\xae\x8d\x06\x24\xde\xe0\x1f\x51\x76\x11\xd9\x7d\x98\x61\xf1\xba\xd8\x4b\xa5\x54\x28\x6e\x8b\x6a\x27\x34\x09\xaa\xe6\xc0\x44\x3f\xae\x9e\x32\x35\x4b\x28\xbb\x78\x6d\x24\x0d\x01\x38\xc0\xbd\xc8\xd1\xb4\x86\x8c\x95\x2c\xb2\x86\x29\x30\xe2\x09\xbb\xa2\x11\x00\x5d\x8d\xc6\xed\x34\xeb\x1e\x2f\xd4\x44\xd7\x74\xa9\xdc\x70\xbe\x08\x9a\xd2\xa9\x81\xa5\x9b\x14\x9c\x9c\x9f\xcb\x3b\x21\x21\xc9\xcb\x1c\xb6\x3a\x69\x4b\xce\x77\xfd\x50\x19\x35\x45\x03\x7d\xac\xdc\xf4\x16\xe6\xa9\x26\xad\x66\x92\xe0\xda\x65\x96\xb7\x93\x43\x7e\xd5\x89\xc8\xea\x26\x42\x9e\xf8\x05\x74\x18\x6c\xe3\x5a\x1d\xd7\xeb\x31\x1e\x5e\xbc\x1e\x9d\x8e\xd9\x2c\x4d\x2c\x12\x74\xfb\xa9\x9e\x12\x83\xa2\x32\x53\xf6\xe6\xf2\x9f\x4a\xf1\x9c\xd1\x69\x4b\x22\x9b\x47\x3e\x49\x86\xdb\xde\xb2\x47\x60\x01\xa0\xa8\xd2\x62\xae\x23\x6e\x1e\xb5\x05\x5d\x61\xd9\x97\x90\x8b\x75\xb7\x34\xc9\xcc\x82\xe2\x24\x00\xd5\x29\xb2\xd7\x82\x9c\x9f\x83\x72\xd8\x68\x5b\x44\xf3\xc5\x1f\x77\x18\xb0\x77\x14\xea\x87\x5b\xd9\x35\x72\xb4\xea\xe1\x58\xf9\x28\x2d\x16\xb0\xe6\x8c\x57\x67\x22\xb2\x51\xa6\x80\x1c\x83\xc6\x03\x95\x66\x4b\xf8\x2c\x80\x58\x5e\x49\xe7\x58\xbc\x4c\xd1\x34\xab\x82\x36\xfa\x8f\x1a\xd0\xad\xca\x84\x97\x40\x4b\xc0\xde\x41\xf9\x7c\xe1\xe7\x6a\x76\x4a\x65\xf1\x30\x38\x70\x51\x36\x3d\x4c\x25\x54\xa7\xca\xe7\xa0\x8a\x1c\x8b\x13\x12\x81\x27\xcb\x4f\x41\x81\xde\x28\xe2\x6c\x8b\xb9\xea\x70\x48\xe1\x44\xc8\x5e\xd9\x05\xdf\x90\xf6\x39\xc5\xfc\x92\x0c\x71\xfb\x5f\x33\x3c\xc3\x06\x67\x19\x6a\xd9\xe8\x49\x15\x7b\xa1\x1b\x33\x77\x41\x1d\xd2\x7c\x51\xb8\x26\x82\x52\x18\xbe\xba\x28\xb3\xee\x6e\xcf\x74\x17\x4a\xf2\x98\xda\xf0\x64\xcb\x48\x87\x25\xf4\x82\xce\x6e\x5d\x11\x31\x56\x34\xf2\x92\x62\x85\x76\x5b\x4c\x05\xa1\xfa\xc2\x7e\x3e\x6b\xbc\x75\xd9\x95\xb0\xa2\x1b\xe3\x63\xbe\xc4\x6e\xb4\xf1\xbf\x66\x28\x8d\x02\xb5\x5e\x6d\xeb\x81\xb5\x53\xa0\x16\x14\x5d\x91\x95\x2b\x4e\xd0\xf4\xd9\x8d\xa9\x18\xc0\x40\x15\x2a\x09\x31\x38\x47\xf4\x1c\x27\xff\x57\x16\x29\x57\xcf\x18\x17\xae\x76\xb4\xc4\x28\x61\xca\x09\xe3\x44\xdc\x3c\x16\xee\x67\xef\xa8\x9b\xa7\x3f\xf1\xd2\x5b\x47\xdd\xce\x02\xdc\x91\xcc\x71\xa4\x8b\xa1\x6d\x33\xbb\x37\x55\x47\x5d\x70\xd1\x3b\x53\xe9\xc3\x14\x23\x6e\x36\x77\xa6\x68\xe3\x24\xf9\x6c\x98\x28\x7f\xdf\xa9\x7b\x83\xa9\xea\xbd\x39\xf4\x14\x5f\x15\x28\x6c\x6c\x78\xfd\x05\x2c\x74\x6a\xfd\x79\xb7\x47\x3c\xbf\xe5\x48\xf6\x8e\x51\xec\x3b\x0f\x5a\x69\x82\x5b\xc3\x23\x00\xe5\x18\x43\xf6\x23\xb2\xbd\xb2\x32\xee\x8f\x37\xd3\xba\x5e\x19\x6a\x60\xc7\xa9\x72\x0b\xea\x66\xac\xa6\xc7\x85\x97\xec\x7e\x77\x24\xde\x76\xb3\x37\xc5\xf8\xe2\x15\xe1\x59\x9d\x09\x66\xed\xd4\xb5\x47\xb2\xb4\xb1\xd2\x00\x1a\xc0\x1b\xb4\x45\xfd\x14\xf9\xd5\xcf\xb1\x50\xeb\xaa\x53\xea\x5c\xb6\xcb\xe5\xb7\x8d\x28\xce\xb6\xb4\x15\x3e\xe3\x06\x34\x96\xc1\x90\xac\xe5\x18\x4d\xdb\x2f\x9c\x87\xe4\xdb\x05\xa8\x04\x54\x24\xb0\x1f\x08\xb9\xfe\x81\xbc\xcf\xe5\xf8\x08\xa3\xaf\x94\xf6\x46\x59\x80\x07\x86\x6c\x7d\x31\x9b\xa6\x64\x88\x04\xce\x82\x01\x70\x6f\x7f\xf2\x98\x61\x0c\xde\xfa\xb7\x54\x97\x2e\x72\x73\x8c\x4c\x69\xed\xf5\xc8\x67\xb1\xcf\xab\x67\x00\xa6\xb1\xbb\x80\x4f\x14\x3e\x3f\xe1\x76\x2c\x19\x9c\xf9\xf4\x0c\x82\x19\x4c\x73\x0b\x65\x17\xfd\xd6\x58\xc1\x22\x43\xd7\x94\xa0\x94\xac\xb2\x7c\x52\x6e\xcb\xa9\xa3\x5e\xd7\x39\xcc\xad\x1b\xfc\xc7\xc4\xc5\x38\xcf\x02\xf4\x68\x57\x2c\x60\x1d\xcc\xb2\x70\x2a\x5a\x8e\x15\x4e\xae\x28\xe6\xc6\x31\x81\xf1\xb3\xf3\x41\x9d\x15\x2d\x1b\x32\x91\xd9\xce\xbb\x98\x5e\x12\xce\xe8\x44\x3b\xc8\x15\xf5\xa3\xc4\x2b\x86\x98\x9b\x01\x7b\xf1\x96\xf4\x49\xf4\x31\xf7\xf6\xc2\x8b\xda\xc6\xdc\x13\x14\x6f\x7b\xf0\x25\x3a\x39\xf5\x5e\x29\x30\x7d\x0a\xf2\xa7\x47\x65\x72\x97\x42\xdc\x17\x03\xb0\x50\x7b\xaa\x80\xdf\xa2\x15\x7d\x34\x70\x3f\xea\x73\xe0\x30\x97\xa2\xd2\x7c\x20\x4b\x9e\x55\x28\xe1\x75\x1f\x0f\x72\x5d\xa4\xd3\x44\xee\xec\x2f\xca\x9d\xef\xfc\x88\xd1\x92\xdc\x30\x7f\x67\x42\x70\x16\x11\x78\x6b\x63\x49\x71\x1d\xe0\x13\x4b\x3e\xa4\x8d\x92\x24\x22\x8a\xa5\x18\xa3\xcc\x9d\xe2\x3a\x23\xa4\x32\x2a\xd4\xc4\x49\x00\xda\x2a\x5a\x47\x82\x95\x21\x09\xb4\x77\x5e\xcd\x5c\x14\xa4\x70\x55\xbc\xa1\xed\xda\x2a\x8e\xa2\x45\xcf\xb3\x2e\x2f\x2e\xc8\xfb\x2a\x8c\xca\x09\x56\x54\x9c\xa6\x90\xdc\x3b\x8b\xc2\x50\x73\x4b\xb8\xc5\x2a\x9c\x1f\x00\xe5\xd9\xce\x99\x1c\x16\xc9\xe2\x3a\x2f\xac\xdb\xa8\x2c\xbf\xbc\x1e\xdc\xa3\x53\xed\x4a\xfc\xf4\xf1\xed\x9b\x67\x88\x67\x6d\xdb\xc1\xe8\x96\x24\xdd\xe0\xcd\xfb\xd9\x7f\xfd\xfe\x93\x78\x18\xc0\x33\xa5\x2a\xfb\xb7\x5b\x63\x33\x96\x05\xdd\x7e\x10\xda\x43\x36\x90\x6c\x0d\x12\x58\x1b\x21\x76\xfb\xfd\x1f\x60\xff\xd1\xdf\xe0\xa3\x01\xec\xf7\x1f\xfe\x0d\xf6\x1f\x3d\x84\x47\x83\xc1\x40\x3b\x02\xef\xf7\xdd\xe1\x84\x81\x64\x6a\x83\x01\xec\xdf\x96\x00\x3c\x84\x41\xa3\x21\x33\x8e\x7e\x84\x47\xb0\x2f\x21\x74\x06\xb0\xff\xe8\x7b\x78\x24\xff\x74\x60\xff\xd1\x0f\xf0\xbb\x81\xcb\x09\x94\x34\x33\xd0\x4d\xc8\xa6\x24\x84\x7f\xfe\x93\x06\x83\x01\x0c\xa6\x88\xa3\x09\x16\x98\x4b\xd0\x83\x05\x5c\xde\x98\x6e\x01\xf6\x9d\xc0\xae\x00\x0a\xfa\xe3\x7a\xf4\x3d\x7c\x58\x33\xa4\x65\x63\x31\x0d\x74\x60\x90\x90\x4b\xf5\xf3\x3b\xd8\x81\x46\x47\x67\xb5\x11\x2a\xfd\xa1\x6b\xb1\xd1\xd8\xb0\xde\x33\xc4\x55\xd6\xf7\xf0\x7b\xd8\x7f\xf4\x1d\xec\x0c\x2c\xa0\xa3\x47\x05\x68\x41\x31\xa9\x6e\x76\x06\x83\xa5\x89\x63\x94\xbd\xbc\x44\x69\xd0\x1d\xa1\x34\xc3\x30\x98\x4d\x2f\x91\x2a\x10\x94\xd5\x29\x81\x93\x44\x07\x25\x85\xad\xa4\x1d\x46\x46\xa5\xcc\x68\x30\x58\xfc\x1b\x9c\x60\x81\xba\xb7\x13\xb5\x65\xdf\xa1\x09\xee\xee\x70\x6a\xda\xe3\xb3\x2c\x28\x9e\x43\xb1\xea\x1c\x96\x44\xcf\x5f\xee\xcc\xa1\x24\xf1\xdf\x9e\xdb\x8b\xac\x4a\xd5\x41\xe1\x59\xa1\x62\x00\xb5\xa7\x2e\xac\x2c\x51\x45\x9f\xfb\xef\x27\xf9\xc0\xd8\x27\x95\xe8\x82\x7a\x1d\xad\x42\x5c\x3c\x16\x92\x57\x2c\xd2\xd3\x55\xf4\xa8\xbd\x59\xe5\x0e\x37\x8a\x34\x4a\x6e\x27\x2c\x59\xff\x72\xd0\x5e\x0e\x54\x4f\xd0\x50\xd4\xb9\x88\x29\xb0\x94\x87\x62\xa1\x63\xfa\x5b\xcb\x49\x67\xd0\x68\xd8\x35\x0a\x85\x7a\xdb\x6f\x24\xe8\xf1\xd2\x2b\xc8\x8d\x1d\xd7\x6a\xa8\xeb\x44\x3f\x15\x4e\x49\x94\x22\x12\x9b\x46\x4b\x86\xf8\xf5\x36\xf5\x1b\x09\x1d\xee\x37\xe2\x72\x61\x2c\x96\x24\x30\x12\xa9\xee\x23\xfc\x08\x96\x44\x97\xdd\x0e\xb4\xec\x7b\xf7\xa8\xd3\x81\x5a\x40\xd5\x6d\x1e\x15\x0d\x35\x9a\x47\x9a\x54\x08\x08\x1d\xb1\x40\xfd\xce\xba\xfd\x20\x9b\x0d\x87\xda\xee\x42\xa7\x07\x57\x88\x53\x25\x3b\x0d\x12\x44\xcf\x55\x64\x30\x85\xac\x24\x2a\xc0\x43\x46\x13\xc4\x6f\x82\x01\xac\x32\x10\xdd\x7e\xc0\x99\x7a\x1a\xa9\xdc\x0e\x70\x96\x2a\xf5\x78\x70\x49\xf0\x95\x4a\x33\x27\x3f\x18\xc0\x0a\xc1\xd0\x6d\x1e\x2d\x96\x84\xc3\xae\x97\x1e\x99\x9d\x7a\xcf\x4b\xa3\xb7\xe4\xed\x22\xb7\x3e\xf7\xe8\x59\xaa\x6d\xcd\xcb\x4a\x4b\x15\xdd\x43\x21\x00\x9a\x33\x34\x9b\x0f\x94\xd1\xf4\x5e\x4d\xeb\xfe\xc0\xc0\xe9\xfd\x01\xe4\xfe\xe4\x52\x3d\xb9\xad\xa3\x66\x1c\x8b\xb6\xf2\xc3\x79\x32\xd2\xf3\xa9\x9c\x18\xe0\x3e\x1d\x38\x14\xc4\x37\x9f\x52\x27\x79\xfc\x6b\xcf\x6a\x7c\x87\x59\x1d\x63\x94\xf8\x77\xb9\xfc\x6e\x69\xb3\xb6\x65\x12\x62\x55\xa5\x96\x10\xf0\x2b\x7f\x31\x1d\xf2\x32\x5b\x3c\x81\xce\x35\xcd\x12\xc0\x8a\x59\x5e\xa6\x94\x08\x1f\x31\xe2\x2f\xd8\x15\x3d\xa1\xaf\x29\x11\xdd\x66\x07\xca\x0e\x5b\x23\x9a\x15\xac\x7d\x99\x05\xf1\x79\x7b\xed\x77\x37\x0a\x8c\x98\xbd\xdb\x4a\xd8\x70\xa6\xb9\xf9\xb6\x04\x2f\xa7\xfd\x33\xe8\x97\x6b\x06\x10\x38\x23\x10\x61\xd2\x7f\xc2\x28\x89\xac\x96\xc2\x26\x94\xed\x64\x74\x15\x92\xbd\x42\x99\x38\x63\x4c\x44\xc0\xee\x69\xdb\xf3\xf6\xbf\x66\x98\xdf\x9c\xe2\x14\xcb\x0b\x21\xfa\x37\x49\x16\xf6\x29\x9a\xe0\xb8\xb4\x0b\x5a\x99\x40\x5c\x04\x83\x7f\x03\x50\xec\x50\x1b\xd3\x44\xd6\x95\x74\x00\x0e\xc3\x82\x6f\x54\xac\x8c\x30\x4f\xc9\x59\x4a\xe8\xf9\x31\x0f\x43\x2e\x51\xc7\x31\x70\x8d\x48\x00\x46\x91\xf2\x7c\x4c\xd2\x24\xe2\x00\x96\xaa\x1d\x2c\x2f\x8c\x01\x5c\x9e\x29\xc0\x42\x72\xde\xf9\x0c\x55\x85\x87\x75\x4f\xe2\x64\xe9\x67\x8c\x2d\x09\xbb\x67\xcf\x8d\xd3\xc6\xa8\x19\x48\xd4\xdb\xf2\x2f\x8e\xbd\xea\x35\x20\x2b\xfb\xb9\xf6\x7c\xdf\x57\xaf\x97\xf0\xc3\xff\xba\xe8\xbc\x7a\x78\xf3\x8f\xeb\x5a\x7e\x78\x09\x17\xfc\xd0\x70\x8b\x47\x92\x29\xeb\x07\x4a\xfe\x20\xa9\xa5\x0c\x73\x61\xe2\xb2\x0f\x60\x3f\xf8\xdf\xc3\x19\xcf\x18\xef\x76\xfe\x77\x60\x98\xd8\x4d\xd8\x4a\xcb\x1c\xca\xed\x6e\xb8\xc3\x47\x65\xac\x69\xcf\x8b\xca\x75\x2e\x9d\x60\x10\x14\x98\xc4\x23\x8f\x73\x5c\x07\x50\x1d\xa1\xd5\xe0\xd6\x31\x98\xcb\x79\x49\xd5\x42\x0e\xd6\x43\x96\x6a\xda\x5a\xc6\xfa\x6f\x2d\xeb\xb8\xd1\x86\xb2\x7c\x63\xfd\x9e\xd4\x2f\x42\x5b\x36\x40\x44\x6b\xca\xc9\x25\x12\xf8\x81\x16\x23\x17\xb3\x77\x0d\x0f\xf6\xa7\x72\x61\xb7\x82\x9f\xa8\x08\x2c\x95\x97\xa9\x88\xc4\x47\x70\xc3\xa7\xbe\x78\x11\xd1\x98\xaf\x09\x63\xb1\xdd\x5b\xdf\xdb\x6f\x3b\x7a\xc5\x42\x85\xab\x2e\x4c\x18\x57\x13\x66\x9e\x48\x2f\x7d\xb1\x2c\x54\xc9\x9d\xa2\x99\x99\xab\x66\xfb\x98\x66\xb0\x2e\xa0\x59\xaf\xf0\x5a\xb9\xfb\x19\xc2\x98\xf5\xf4\xd8\xac\x23\xf5\xca\x14\x7d\x15\x11\x2b\x40\xbf\x33\xa8\xb5\xec\x25\x99\xbc\x79\x94\x6d\x2f\x53\xfe\x78\x63\xd6\xd6\xab\x0c\x20\x96\x5f\xf3\x79\x10\xd4\x47\x2f\xac\xe2\x2b\x17\xd8\x06\x4d\x89\x50\xc6\x37\xcb\x88\xeb\xad\x10\xdd\x17\xa3\xb1\x71\x3b\xef\x69\xd1\x68\xb3\x18\xc1\xb1\xa8\xf7\x71\x55\xc0\x41\x01\x00\x2f\x08\xc9\x8a\xe1\x1b\xb8\x2f\x28\xa4\x5b\x4d\xe6\x78\x36\x41\xb4\x34\x95\xfb\x70\x90\x7f\x3a\xd4\xb9\x0f\x07\xb9\x0f\x07\xf9\x07\x13\x53\x16\x53\x2c\x8b\x5b\x46\xe3\x07\x9f\x0e\xe7\xad\xc3\x07\xe7\x07\x45\xbf\x12\x79\xb0\xc9\x23\x75\x51\x90\x51\xb4\xec\x92\x50\x3e\x05\x78\xcc\xdd\x25\x61\x9c\x2a\x9b\xd5\x0d\x02\x63\x8d\xc6\xdb\x82\xbd\x61\x57\x98\x3f\x47\xc6\x85\xfb\x34\x45\x43\x1c\x51\x18\x34\x02\x2f\x22\xc5\x70\x8c\xf8\x53\x11\x75\x40\x5b\xb0\x9f\xa7\x53\x5b\xfe\x90\x98\x2d\x7e\x64\xbc\x49\xef\x16\x72\x6d\x39\x56\x4d\x65\xdf\x86\x28\xdb\xf4\x86\xd2\x02\x39\xaf\xd6\x67\xba\xcc\x3e\x67\x3c\x68\xdc\x76\xfd\x2b\x2e\x7b\xc9\xe3\x9e\xfb\x79\xe0\xd7\xa0\x77\x89\xfa\xb9\x7c\xa2\x05\x11\x29\xde\x9c\x12\xd0\xf3\x9c\x57\xfa\x53\x4e\xb3\xed\xde\xc6\xb3\xec\x2a\x7c\xa9\x49\xe6\x33\x3a\x44\x62\x4f\x23\xec\x69\x84\x3d\x8d\xf0\xd7\xa1\x11\x7c\x3f\x54\xfe\x2d\xfe\xa8\x14\x32\xda\x9d\xa1\x38\x8e\x49\xef\xe8\xbb\x4e\x97\x40\x14\xf3\xfe\xc3\x01\xcc\xf2\x1c\x34\x9f\x23\x38\x8b\xb3\x1e\x6b\x3d\xea\xb2\x75\xdc\xa2\x52\xc0\xd0\x98\xe6\x84\x40\x18\x52\xab\xe9\x99\xf5\xb2\x5e\xfe\x00\x9c\xb6\xb3\xd9\x99\x2e\x16\x75\xe0\x0c\xc0\xa0\xdd\x6e\x07\xa0\x5b\x4e\xef\xee\x44\xf5\x58\xdc\xf7\x99\xe3\x58\x2f\x47\xb6\x33\x49\xa6\x6c\x4d\x3a\x78\xb5\xfe\x94\x77\x9a\xeb\xdf\xc6\x97\x5a\x5e\xe3\x33\xdf\x6a\x15\x5a\x6b\xfb\x4b\xcd\xbd\x15\x12\xdf\x98\xaf\xb4\x3f\x81\x72\x37\x08\xfc\x6b\xaa\x99\x5f\x53\xb5\xc8\xf9\xe5\xf5\x14\x0f\x05\x4e\x1a\xa8\xa1\x6b\xc0\xc6\x39\x13\x0d\x94\x3f\x1a\xd7\x04\x80\x8b\xde\x55\x64\x1c\x36\x13\x3c\x95\xa9\xc6\xfd\x86\xf9\xcb\x6e\x18\xc7\x69\x3e\x88\x7a\xdd\xff\x37\xff\x67\x36\x6f\xcd\xff\xf9\x00\xfc\xf3\xf4\xc1\x39\xac\x7f\x8e\x52\x60\x3c\x17\x60\xbb\x2d\xc7\xc9\x64\xbf\xdd\xfe\x62\xdb\x8d\x93\xc9\x76\x88\xa9\x96\x62\xd8\x6f\x95\xbf\xc0\x56\x29\xa0\x96\x9a\x1d\xc3\xd2\x54\x5b\x25\xfa\xea\xe2\x72\x5e\x2d\x9d\xb9\x51\x4d\xa7\x8e\xae\xab\xa7\xf7\x26\x49\x30\x15\x44\xdc\x2c\x2f\x41\x31\x4e\xb2\x16\xc7\xd6\x4f\xf3\x3d\xbe\x69\x75\xe7\x00\x3b\x0f\xd7\x35\xd1\x95\x3e\x63\x18\x63\x90\x07\xab\x19\x93\xac\x7d\x81\x6f\x62\x13\xd9\x62\x4c\x92\x04\xd3\xb8\x79\xa4\x3f\x89\xc0\x93\x98\x9b\xdf\x34\xc1\xd7\x31\x35\x6e\x97\xc4\x4d\x8a\x63\xe2\xc5\xfa\x62\x11\xb8\x5d\x5c\x7a\x91\xbd\x37\x70\xb0\x56\x6f\x4a\x75\xa6\xa2\x14\x98\x29\xb2\x7e\x14\x70\x9a\xbe\x51\xd5\x8b\xe9\x1c\x5d\xbd\x16\x78\x92\x15\x53\x49\x35\x29\x1b\x72\x96\xa6\x6f\xf0\x48\xd4\xa5\x7f\x64\xd3\x52\x7b\x29\xc1\x54\xfc\x42\x12\x31\xae\xcb\xf8\x09\x93\xf3\x71\x09\x92\xb1\xad\x38\xcd\x25\x66\xe6\x39\xac\x4e\x37\xc6\x16\xd5\x61\x65\xf9\xcb\x5b\x2f\xf5\x2d\x9a\xd6\x46\x4b\xf3\xac\xcd\x9c\x0b\x11\x61\xc2\x90\x3c\x15\x82\x47\x81\x9e\xbe\x00\x1c\x14\x66\xb3\x1a\xed\xb1\x87\xbb\xdf\x57\x27\xa7\x33\x2f\x42\xd3\x59\xad\x14\x8f\x44\xee\x64\xc3\xcd\xd9\x92\xd2\x82\x4d\x5d\x61\x7f\x26\xcb\xc5\x71\x26\xc8\x44\xf9\x44\xbf\x92\xf9\xa5\x3a\x66\x92\x97\x57\x1a\xab\x02\xa5\x6e\x69\xa7\xac\x71\x6d\xbf\xb4\x2f\xce\x40\x3f\x0f\xc5\x49\xf6\xc1\x9d\xf6\xca\x2e\xf4\x5c\x59\xcc\xe7\xc5\x14\x42\xcf\xad\x67\x98\x4f\x24\xfb\x7b\x4a\x26\x13\xcc\x1f\x46\xa0\x67\x9e\xbc\x71\x4c\x13\xb9\x3a\xdd\xd2\x2b\x3e\xe5\x7a\x6c\x01\x13\x92\x7c\xc0\x43\x4c\x2e\xb1\xec\x5b\xb6\xc4\x94\xd0\x6e\x86\xd9\x54\x76\x4f\xed\xf1\x62\xd2\xa9\x1a\xd2\x7b\xa6\xdd\x54\x45\x1b\xfa\x12\x53\x27\xc3\x5a\x1a\xaa\x0f\x63\x2d\xa7\x04\x31\x27\x67\x19\xe6\x97\x98\xaf\x2d\x60\x22\x29\xc9\x16\xf5\x7c\x77\x99\x1c\x97\xf9\x1d\x94\x67\x37\x58\x80\x05\xf4\x46\x52\xe3\x19\x27\x3f\xdf\xc5\x95\x93\x19\xd6\x4a\xad\x7e\xbf\xab\x4e\xfa\x4f\xcf\x2c\x4e\x68\xc6\x31\xfe\xc3\xc7\x5d\xc6\x53\xb8\xf0\x3e\xec\xa9\x72\x75\x9a\xfb\xb1\xd3\x63\x51\x7e\xf1\xc2\x50\xbd\x1c\x2c\xf7\xaf\x92\xb6\xc3\x52\xd8\xb5\x28\x6e\xa1\x92\x69\x69\xf5\x4c\x15\x02\xe5\xd4\x23\x88\x03\x47\x8d\x60\x15\x42\x76\x8a\x78\x86\x5f\x53\xa5\x73\xeb\x80\x0a\xb6\xd1\xe5\xbc\xf1\xe7\x59\x01\xc4\xc0\x3a\x89\x59\x8e\x63\xf2\xf6\x84\x12\x35\xba\xf6\x44\xa5\xbd\x8f\x6c\xaa\x8b\x55\x9a\xfb\xc8\xa6\x72\xca\xf3\x79\x79\x9e\x63\xf2\xa5\x61\x82\xdc\x7e\x6d\x7b\x78\x3f\xaa\xa0\xbc\x1a\x84\xe6\x77\xba\x7c\x71\x48\x92\x53\xa1\xc2\xb8\x26\x53\xe7\xc8\x22\x1a\xf1\xd5\x96\xd1\x59\x06\x65\xe9\x51\x7a\xd9\xda\xf7\x8c\xdc\x2b\x1f\x14\x92\xaa\x1c\x44\x33\x01\xf2\x5a\x2a\xa2\x1b\x6f\x4e\x22\x77\x98\x55\xb9\xda\x7d\xa3\x36\x72\xbd\x73\x05\x93\x09\x03\xe3\x90\xc3\x5e\x54\xde\x94\x3a\x7d\x05\xce\xdd\xb9\x94\x73\x63\x2f\x30\xa3\x72\x8a\x0e\x67\x71\xe1\xfa\x84\x69\xed\x05\x3a\xac\xae\xa0\xa2\x6c\x9e\x8a\xa8\xbc\x3d\xcb\xfb\xa7\x7a\xa3\xd5\x2d\x2f\x1c\xd5\xed\x91\x19\xfd\x6c\xf0\x93\xd8\x9f\xc6\x71\xfc\x16\x89\x71\x7b\x42\x68\x34\x84\xfe\x95\x0f\x0e\x86\xad\x78\x0c\x47\x87\xf2\x9f\xbc\xd0\xe8\xd0\x2f\xe4\xd9\xa6\x27\xf9\x8a\xb4\x86\x7a\x6e\xa7\x71\x7f\xa0\x84\xf6\x22\xee\x1c\x8b\xc7\xa3\x63\x71\x78\x08\x58\x3c\x3c\x14\x10\x95\x64\xa6\x49\x5b\x6b\x11\x9e\x8a\x88\x01\x00\x67\x61\x18\x65\xf1\xac\x8f\x06\x00\x66\xbd\x88\x56\xa7\x64\xc4\xf8\x04\x09\x89\x14\x95\x83\xd5\x88\x6d\x38\xfa\xfc\xb9\xb9\xf2\xfa\xa3\x7c\xb3\xd2\x52\xb2\xa6\x62\x95\xf7\xae\x62\xc6\x05\xbe\x09\x20\x2a\x25\xaa\xe5\x0f\x20\x03\x30\xed\xa3\x41\x9c\x81\xee\x54\x6b\xd1\x18\xf0\x06\xef\x11\x6c\x66\x07\xaa\xd9\x90\x84\x79\xda\x8f\x32\x6f\x80\x59\x5f\x0c\x80\x8a\x4e\x2b\x73\xa7\x2e\xaa\x36\x8b\xa7\xed\x29\x9b\x1a\xb2\x6d\x12\x17\xa6\xec\xa0\x3c\xa1\x13\x00\xef\x79\xd6\xd6\x4c\x4e\x31\x59\xe0\x49\x00\x27\x2b\xe6\x5d\xcf\xa5\x76\xaf\x55\x5f\xa8\x53\xdf\xad\x40\xa3\xb0\x6e\xa3\x73\xdc\x48\x48\x36\x4d\xd1\x4d\xb7\x41\x19\xc5\xc7\x81\xbf\x1e\x53\x7f\x15\xe4\xdc\xf6\x85\x7e\xbf\x79\xb9\x66\x62\x2f\x3f\xeb\xc4\x66\x4a\x8d\x45\x22\x04\x2f\x21\x93\x53\xaa\xc7\xed\xd3\xf7\xfe\xab\xf6\xcc\x38\x46\x70\x34\x7e\xaa\x5f\x27\x58\x2a\xb2\xfa\x3a\xc1\x3c\xf1\xd0\x44\xe5\x3b\x96\x60\xcf\xd7\xa4\x7f\x3b\x97\xbc\x6c\x54\xaf\xef\x5e\x35\x49\x15\xed\x62\x77\x91\xe4\xa8\x29\x0c\x45\x29\xf5\x23\x9b\xce\xe7\x51\xd9\xb7\x59\xe9\xc6\x86\x4b\xf2\xcd\x15\x6b\x66\xa5\x44\x92\x28\x5f\x5c\x7a\x56\xe5\xf5\xb2\x62\x38\x3e\x2f\x91\x93\x0e\x45\x76\x41\xa9\x20\xab\xfd\xf4\xaa\xd6\x77\xd4\x07\xb2\xba\xaf\xc5\xf7\xd0\x68\x57\x79\x87\x27\xb5\xf8\x13\xb9\x26\xf8\xed\x2a\x4d\x3b\x44\x90\x7a\xd7\x04\x72\xd7\x06\x70\xad\x87\x82\xbf\xe5\x0f\xf8\x0d\xf1\xd1\xca\xb4\x9d\x8b\x4f\x2d\x42\x9f\x94\xb3\x1f\x7a\xf5\x03\x18\x94\x37\x44\x60\xde\x7b\xfc\xa0\xfd\x15\x7c\xaf\xff\x7c\x97\xbb\x2d\x78\xe4\xb9\x2d\x28\xc0\x32\xde\x0b\x6a\x0b\xd6\xb4\xe2\x5c\x1d\x6c\xfe\x4c\xc4\xfa\x10\x78\xe8\x7c\x19\xe8\xd7\x29\xba\xbd\xa3\xca\xef\xef\xd5\x83\x10\xf3\x1c\xc5\xfb\xb3\xa6\x4d\xaf\xa9\x87\x0f\x95\x4f\x82\x87\xca\xab\x82\x46\x9c\x83\xdc\x3b\xc1\x8f\xf0\xa1\x1e\xa2\xcc\x55\xa8\x5a\xe6\xd9\x6f\x85\xd1\x07\xba\xf8\xa3\xca\x4b\x92\x23\xf5\x94\xe4\xce\xcf\x4d\x34\xea\x0b\x60\xd0\x52\xd1\xca\xb5\xa5\x41\x00\x03\x8c\x86\xe3\xdc\x4f\x41\x11\x41\x14\xb1\x49\x89\x70\x35\x67\x8b\x22\x41\x2e\x71\x4b\x17\x54\xde\x36\x57\x3e\x58\xd9\xee\x24\x6e\xe8\xee\x60\x05\xd0\x6a\xf7\x56\x4b\x35\xad\x7e\x05\xd1\x6c\xb5\x00\x53\xad\x71\x6b\x9a\x47\x06\xfe\x82\x6a\xf2\xaa\x6a\x5c\xb5\x6e\x81\x80\x28\x60\x97\x98\x8f\x52\x76\xa5\x39\x48\xed\xf8\x9f\x2c\x95\xfb\xd5\x8b\xf9\x0a\x82\xa1\x5a\xc1\x4f\x8d\x74\xaa\x2a\x81\x32\x29\x88\x92\x89\xf2\x91\xf1\x4a\x6e\xd3\x92\x8c\x4f\x0b\x54\x36\x10\xbd\xf8\x32\xbc\x92\x1c\xc2\xc7\x63\x55\x4e\x76\x15\x53\x5c\xe9\xf3\x72\x7e\x76\xb1\xd2\x59\x7f\x9d\x38\x51\xa5\x59\xcf\xed\xca\xe9\x9a\xc9\x51\xcf\x1f\x75\xd3\xea\x55\xaa\x26\x6b\x80\x97\x52\x60\xe9\x8c\x58\xf7\x86\x0e\xf5\x9a\xbe\xe2\x6c\xa2\xfa\x67\x73\x04\xe2\xe2\xd4\xa0\x55\x3c\xbc\x30\xd3\xf9\xf3\xb4\x56\x7a\xb6\x0d\xfc\x8d\x04\x57\xda\x9b\x67\xa1\xfd\x15\xd2\xd5\x05\xcc\x87\xec\x83\xa2\xbd\xa8\x30\x5f\x6a\x5b\xb7\xed\x66\x8e\xcd\x52\x04\xb0\x5a\xa8\x4f\x07\x71\x20\xd8\x6c\x38\x0e\xac\x9b\xe5\x25\x30\xd0\x4c\xb0\x40\x87\x7b\x72\xc7\x1a\x14\x9a\x85\x1d\xd8\x01\x35\x6d\xb4\xa7\x46\x12\x13\x07\xe8\x2c\x63\xa9\x72\xda\x50\x53\x2c\xf5\x4e\x42\x31\x47\xe4\x07\xa2\x98\x71\xc6\x84\x60\x93\xfa\x3c\xae\x0f\x9b\x99\xb3\x25\xb2\x8f\x9a\xb9\xae\x74\x9a\xe3\x14\xe9\xd0\x0f\xcb\x4b\x6b\xe1\xc6\x12\xd1\xc6\x61\x30\xbd\x5e\x55\xd9\x88\x3d\x96\x09\x3d\x54\xf5\x05\xac\xee\xb1\xea\x39\x97\x43\x25\x38\x39\xf5\x25\x43\xc5\x43\xea\x04\x0f\xe5\xa2\xe5\x82\xe5\xd3\xfd\x24\xee\x38\xef\xd9\xb6\xf7\xcb\xea\xda\x48\x14\xc5\x46\x8c\x64\xac\x4a\x92\xd7\xf5\x28\x47\x3e\xcb\x04\x0b\x32\x61\x69\xa7\x6a\xab\xab\xf8\xa8\xa5\xf3\xbe\xc4\x0b\xb4\xa7\xc2\x05\xb7\xb8\x9d\x15\x0e\x28\x2f\x9a\x09\x82\xdb\x2b\x42\x13\x76\xd5\xe6\xf8\x5f\x33\x9c\x89\xa7\x05\x94\xdd\xc3\x15\x24\x5e\x5b\x2e\x92\x1c\x4b\xa5\x68\xa6\x5d\x24\xb3\x99\x12\xfd\xfd\x00\x16\x0a\xb1\x54\xb0\x46\xcd\x4e\x28\xc0\x09\xc3\x68\x65\x1f\x35\xc0\x72\x87\x6a\x00\x81\xae\x72\xf4\xe9\xfa\x54\x57\x64\xd5\xcd\x25\x57\x60\xdd\xe4\x3b\x7c\x22\x62\xec\x2d\xa7\x7a\x39\x9f\x6f\x4f\x15\x8b\x2b\x67\xe6\x2a\x9b\x27\x0c\x79\x7d\xa6\x66\xf8\x94\x85\xf2\xd2\x7d\x57\x97\x23\xf7\x39\xb7\xd1\x8b\x71\xdb\x67\xa0\x99\xfb\xd6\x57\x3c\x44\xb2\x73\x24\x17\x64\xe6\x65\xc3\x90\x95\x92\x7f\x32\x92\xcd\x08\xe5\x5d\xf2\x69\x08\x52\x47\x43\x30\x00\x23\x3a\x9f\x23\xe0\x3b\xa6\x56\x61\x0a\x45\x39\x88\x0d\xb5\xa2\x61\x9f\x41\x96\x74\x15\x44\x26\xa7\xcc\x2c\x44\x04\x32\x63\x4a\xb3\xc6\xfa\x2f\xa7\xe6\xb4\x2a\x23\x7b\x70\xce\x49\x52\xa4\x0d\x75\x4e\xeb\x8c\xd0\xd6\x14\x0d\x2f\x30\x7f\x30\x22\xd7\x38\x69\xe9\x92\xab\xe9\xc2\x73\x4c\xb5\x01\xc4\x7a\xba\xd0\xb7\xa6\x85\x05\x37\x0d\x9d\x63\xfe\xd8\x4a\x57\x95\x2d\xae\xf1\x9f\x23\xfa\x7c\x70\x40\xdb\x79\xf0\xf4\xd8\xff\x98\xcf\x9b\x47\x90\xb6\xfd\x50\xeb\x72\x7d\x4c\x00\x49\x42\x1b\x34\x0c\x23\xda\xb6\xc1\xd6\xe3\x66\x07\xc0\x65\xb4\x29\x6d\x5f\xe0\x1b\x48\xef\x16\x27\xaf\x56\xb5\x1e\x81\x5b\x4f\xcb\xae\x54\xf9\xf7\xa9\x61\x37\x22\x6b\xb3\x6d\xcf\x88\x36\x7e\x76\x8a\x70\x5d\x58\xf6\x4a\x69\xd0\x09\x64\x10\xb9\xc7\x43\x31\x86\x11\x8b\xfb\xb7\x17\xf8\xa6\x1b\x14\x58\x22\x3d\xfc\xaa\x55\xcb\xad\xba\x4d\xbb\x18\x1a\x49\x9a\x6d\xd4\xdc\x93\xca\xb5\xe2\x02\x6a\x80\x46\xf6\x5d\x05\x66\x2d\x1e\x7c\x07\xbb\x12\xc6\x25\xc9\xc8\x59\x8a\x4f\xe5\xfd\x40\xe8\xf9\x6b\x59\x5f\x9b\x2d\x00\x07\xd4\xd2\x04\xf5\x70\xab\x30\x6d\x79\x6d\x0f\x6f\xa1\xa8\x51\xd4\x81\xa8\x02\x30\x45\x75\x67\x70\x0e\x42\x0f\x78\x33\x18\xb6\x6c\x05\x88\x12\xde\x6f\x3e\x41\x5a\xd1\xfe\x0f\x3d\x4d\xbf\x10\x31\x96\xc8\x46\x99\x75\x34\x3b\x39\xd0\x92\xbc\xb1\x16\x3c\xb5\x51\x12\x15\xec\x7c\x52\x4d\x26\x64\x3a\xc3\x0c\xde\xa6\x22\x9d\x6a\x87\x63\x92\x73\xc7\xb2\xdc\xc8\x3a\xdf\x93\x6b\x9c\xaa\xc6\x41\xa4\x76\x1c\x58\x2c\x06\x20\x0c\x69\x44\xbc\x98\xfc\x4c\xa1\x3f\x1a\x11\x88\x00\xc4\x8b\x68\x7b\x4c\x37\xf1\xb0\xd8\x6a\x7c\x97\x8d\x71\x3a\x6a\x29\x26\x66\x8f\xf0\xbe\x6e\x84\x67\xf0\x94\xb5\x1d\xaa\x62\xbc\xbf\x0a\xb2\xf3\x82\xe0\xd6\xa2\x3b\x1d\x70\x65\x8f\xf0\xbe\x21\x84\x37\xc5\x7c\x88\xa9\x40\xe7\x58\xe6\xce\x26\x34\xdb\x23\xbe\x3f\x10\xf1\xdd\x9f\x35\xe5\x01\xdd\xc4\x41\xab\x7b\x05\xc7\xe2\xfe\x00\xa2\xb8\x03\xb3\xb8\x73\x9c\x3d\xe6\xc7\xd9\xe1\x21\x60\x5a\xf5\x6c\xb0\x1a\xed\xa3\x81\x45\x6c\x04\x9a\x8d\xa5\x52\x17\x00\x1e\x1e\xa2\x27\xb1\x7d\x8c\x16\x86\x11\x8a\x3b\xc6\x96\xc2\x9e\x9c\x2c\x66\xcb\xf0\x2f\x83\x47\x9d\xce\xfd\x60\x60\xd5\xd0\x67\xc7\xc1\x47\x9d\xce\x67\xc3\xc2\x12\xd6\xb7\x8a\x87\xd5\x3c\x7d\x4e\x4c\xac\x27\xde\xe2\x62\xb7\xd5\xfa\x78\xd0\x36\x1b\xb4\x06\x23\x9b\x4a\x99\xb6\x43\x19\xa5\x8c\xf1\x88\xb4\xaf\x1f\x1c\x75\x3a\xff\x2e\xea\x70\xb5\xc3\xa1\x06\x61\xdf\x5e\x77\x33\x78\xd3\x25\xed\x9b\xc5\x17\x40\xdd\x65\x23\xf1\xfd\xfb\x85\xcf\xfa\x7e\xc1\x3e\xdb\x85\x34\x96\x53\x75\xc0\xe3\xfc\xf9\xb7\x7a\x75\x9d\x7b\xc6\xa6\x3d\x1b\x4d\xc9\xfa\x8b\xc6\xab\xdd\x9e\xae\xb5\xe3\xbf\x5f\x5f\xc4\xd8\x37\xd5\x68\x93\xec\x05\xe1\xe2\x46\x5e\x93\xc5\x0c\x76\x45\xcd\x2f\xac\x0f\x2d\xbe\x6a\x67\xc3\x31\x96\xcd\x78\xd6\x06\x85\x4a\x10\x7b\x9e\xb3\x61\x60\x0d\x8d\x09\x3d\x6f\x5c\x12\xd4\x28\x1b\x7a\xaa\x97\x18\xe5\x70\xa2\x6b\x89\x8a\xed\xd4\x95\x9f\xdd\x67\x55\x99\x52\xf3\xe6\x56\x23\x3d\x8d\x95\x1c\xba\xef\x5a\x4d\xc9\xb1\x60\xd3\x6e\xe7\x38\xc5\x23\xd1\xed\x1c\x07\xee\x3a\x3b\x8c\x8b\xaa\x98\xe7\xa7\xa7\x20\xc2\xed\x6b\x88\xdb\x37\x00\x92\xc3\x58\x63\xfb\x6e\x70\xc8\x0f\x83\xe9\xf5\xb1\xb9\xc3\x82\x43\xaa\x3e\x83\x45\xde\xa9\x22\x4a\xba\xdf\x9e\xfd\xef\x6a\xc7\x36\x38\x0b\x15\xa5\xf1\x97\x3b\x0b\x05\x0d\x71\x9d\xa3\x43\x12\x61\x1d\x4d\x13\xb7\x87\x59\xb6\xb6\x64\x07\x2c\x8c\xb9\x4a\x3f\xb8\xc2\x67\x17\x44\x52\xc6\xbf\xd8\x1f\x13\xb9\x3b\xdf\xb2\xdf\x03\x18\x9c\x04\x03\xc8\xe3\x7e\xd0\xd2\xa5\x5a\x01\x0c\x5a\x93\x4c\xff\x61\xbf\xab\xbf\xac\x15\x0c\x20\x8d\xeb\xdc\x21\x5a\xc7\xb1\x61\xe8\x5c\xc8\xda\x1f\x46\xf7\xb4\x3c\x47\x8f\xb9\xe0\x64\x48\xd2\x9a\x9a\xb4\x23\xbd\x92\x3b\xb5\x09\x4e\xc9\xef\x38\xc2\xa0\x8b\x0f\xc8\x28\x62\x0d\x49\x30\x3b\x5f\x23\x8e\x28\x44\xf1\x12\x37\x6c\x11\x03\x86\x50\x74\x94\x7b\x66\x29\xf7\x59\x2c\xfa\xd9\xe0\x10\x49\xc0\xb3\x02\x60\xd2\xe3\x32\x07\x77\x67\xb5\xce\xed\x56\x18\x22\x6c\x80\x07\xd6\xd9\x24\xdc\x7d\x57\xb9\xfe\x58\x23\xf5\x18\xf9\xa9\x1f\xe5\x0f\x79\x3a\x1f\xbe\x88\xb3\xda\x8c\x47\x2f\xe2\x59\x1d\x9c\xe7\xa7\xa7\x71\xba\x04\x94\xcc\x1b\x2e\x81\x26\xf3\x46\x7e\x9e\x4c\xf0\x3e\x63\xdc\xce\x66\x53\x35\x6f\x0f\x5f\x78\x1f\x8f\x5e\xd4\x78\xde\xf3\xce\x01\x30\x31\xc7\x65\x2b\x01\x80\x54\x17\x28\x9b\x5d\xf8\x45\x48\xdc\x6c\xd6\x16\x9a\x62\x9e\x4d\xb1\x0a\xc2\x7f\xc2\xc9\x39\xa1\x81\xa4\x83\xbc\x8e\x90\x03\xbd\x45\x9b\x4d\x9a\x6f\x5e\x64\xc9\x64\xec\x6b\x99\xb5\x4e\xd5\x1e\x6f\xa5\x5f\xe6\x5a\xcd\xea\x2a\x66\xa5\x8a\x7d\x3a\x88\x13\xa5\x37\xc9\xcb\xcc\x6a\xca\x8c\x4b\x65\x52\x9f\x55\x0a\x14\xb6\xf4\x03\xae\x4f\xaf\x15\x1e\x0d\x80\x7b\x84\xa8\xd2\x02\x0f\xc2\xb0\x00\x21\x0f\x51\x05\x03\xaf\x5a\xa2\x0a\xc1\xa0\x50\x73\xb4\x49\xcd\x71\x5d\xcd\xa4\x50\x73\x82\x04\x27\xd7\xd1\x11\x6c\x74\xd4\x7f\x47\xb0\x10\x34\x1e\x36\x0a\xdd\x07\x3e\xa0\x71\x0d\xa0\x47\x49\x0e\xca\x01\xac\x7e\xae\x68\x42\x97\x92\x0d\x15\xf6\x25\x33\xd6\xdd\xa4\x37\xeb\xb2\x5e\xd6\x45\x07\xfe\x16\x9e\x1a\xfb\x64\xd2\x1b\x75\x59\x6f\xd8\x4d\x0f\x4a\xfb\x7d\x52\x87\x49\x26\x53\x96\x49\xb6\xbf\xc6\xcb\x47\xca\xb2\x19\xc7\x2d\x54\x79\xe6\x79\x7f\xd6\x8e\x9f\x3e\xa5\x0c\x25\x98\x43\x1e\xdf\x3e\x7d\xfe\xf1\xf5\xc9\x3b\x15\x56\x7c\x71\x60\xfa\x3f\x16\x93\xf4\x0c\xf1\xec\xc1\x05\xbe\xb9\x62\x3c\xc9\xca\xbd\x26\xb4\x21\x4c\x38\x33\x7e\xd3\xe3\xb1\x50\x1a\x62\xc2\xdd\x0c\xac\x85\x00\xac\x51\x1a\x67\x33\xa1\x5e\x4f\x6f\xd5\xa6\x72\x48\x57\x69\x75\x63\x58\xc0\x7a\x54\xe2\x6d\x3d\xfe\x35\x9e\x3a\x57\xac\xe7\x39\x16\x2d\x35\xef\xda\xa8\xaf\x85\x68\xd2\x9a\x65\xb8\x95\x60\x3c\x6d\xa9\x90\xab\xad\x11\x67\x93\x96\xb2\x18\xbc\xef\x30\x2d\xfa\x49\x08\x8f\x71\xbf\x33\xd0\xba\xef\x87\x71\xec\x5c\x10\xf5\x44\x8c\xfb\x47\x83\x6e\x44\xd5\x5f\x28\x3f\x1f\xba\xb8\x0a\xb7\xc3\x19\xe7\x98\x8a\x7f\xa8\x46\xb8\x8a\xf1\x7a\xd3\x15\x70\x96\xe1\x17\x18\x4f\x5f\xca\xa1\x75\x69\xfd\x45\x5a\x99\x2e\xfb\x17\x4d\xa7\x98\x6e\x1c\x0a\xa9\x8e\xa5\xdc\xd4\x61\x19\x91\xec\x9a\xf2\x59\xc6\xd4\xbf\xb4\xe8\xbf\x6c\x73\xb7\x52\xd9\x94\x63\x94\xfc\xa1\x1e\xa5\x76\x74\xd6\x76\xc7\x81\xff\x29\xfc\x69\xe5\x32\xca\x75\xee\xa8\x49\xee\x29\x8d\xdf\xd5\x1d\x35\xaf\xfa\x4b\xe3\x2b\xdd\x51\xf3\xdc\x59\x1a\x5f\xe9\x8e\x9a\x6f\xef\x22\x8d\x83\x9e\x1e\x9b\x73\x47\x5d\x20\xb2\xef\xc7\xdb\x18\xb3\xf3\xbf\xab\x17\xf5\x3a\x0f\x72\x0b\x9f\xe0\x72\x1e\xdf\x63\x9e\xaf\x4f\xc7\x49\xc3\x68\xdc\x1f\xd8\xcb\x3c\x0f\xe0\x15\x11\xb0\x93\x50\x46\xe3\x21\x45\x3f\xd7\xdc\x93\x59\xad\x57\x2b\xe4\x4b\xd0\xb2\xad\xd0\xde\x70\x3c\xa3\x17\x7b\x47\x8d\x7b\x47\x8d\x7b\x47\x8d\x7f\x96\x8b\xe5\xcf\xe8\xcc\x59\xa1\x89\x98\x2d\x7b\x7c\xa0\x5f\xad\xa2\x6b\x48\xf4\xcf\x21\x26\xa9\xef\x72\xc4\x0b\x28\x5d\x7a\x6a\xce\x62\x1a\x71\xd8\x01\x10\xc5\x9d\xdc\xd3\xb3\x45\x1e\x02\x28\x7d\x99\x95\xa4\x00\xd8\x44\xf3\x39\x7b\x7c\x64\x16\xdc\xbc\x7a\xd5\x88\xb1\x03\x67\x71\xeb\x08\xa6\xde\x34\x90\x08\x3d\x60\x00\x1c\x67\x8f\xd1\x31\x48\xfb\x87\x87\xb3\x41\x2c\xcc\x06\xcf\x60\x76\x18\x33\x27\xb3\x4e\x0b\x3e\x51\x8a\xe8\x35\xaa\x08\xc8\x95\x5f\xcb\x87\xae\x32\x8b\x94\x7b\x4b\xde\x3f\x1a\x80\x05\x58\xfb\xea\x6c\x39\x32\xde\x2e\x2c\xdf\x1e\x1d\xef\xd1\xf1\x1e\x1d\x7f\xf5\xe8\xd8\xe7\x28\xaa\xde\xef\xcd\xae\x2c\x9e\x62\x0e\x7a\xbc\xdb\xe7\x03\xd0\x1e\x91\x54\x94\x51\x54\xc1\x57\x6e\x1e\x4a\x13\x2b\x1b\xe8\x5d\x90\xbf\x46\x4b\x9f\xd9\xa5\xed\x6a\x34\x38\xdb\xcd\x7d\xf8\x9e\x17\xdf\xf3\xe2\x7b\x5e\xfc\xdb\xe7\xc5\x15\x27\x0e\x49\x4c\x25\xdd\xc5\x62\xea\xe2\x73\xe4\xb1\x3c\x34\x27\x6e\x1f\x98\x46\x6c\x77\xdc\x37\x13\xf8\xfe\xf8\x71\x46\x05\x22\x65\x53\xc4\xa5\xd5\x8c\x41\x0c\x1d\xa6\xb3\x64\xad\x62\xaf\x7c\xa5\xed\xe9\xc5\xaf\x81\x5e\xa4\xbb\x63\xac\x1d\x70\x95\x4f\x2f\xfa\xe8\x6a\x43\x7a\x71\x27\xc4\x55\x1c\xe9\xd7\x4e\x2f\xd2\x7b\xc3\xb6\x44\x07\x44\x74\x46\x79\x95\x18\x71\x4f\x23\x0e\xa0\x8f\x40\x99\x7f\xf0\x9b\xcd\x1a\x66\xbb\x98\x84\x41\x0f\xd7\xd9\xca\x72\xdf\xb0\x8d\x44\x5c\x2e\x1b\x80\xcd\x0e\xe8\xea\xbb\x66\x47\x54\xab\x51\xdf\x32\x31\xc3\x86\xcc\xb9\x90\x77\x43\x81\x39\x17\xf2\x92\x10\x77\x65\xce\x13\x3c\xdc\x33\xe6\xdf\x32\xa2\xdd\x33\xe6\x5f\x17\xa2\xfd\xc3\x18\xf3\x87\xa5\x80\x36\xbe\xdc\xf2\xe5\x64\x2a\x6e\x22\x22\x3b\x40\x62\x0a\xa9\x7d\x27\x0e\x49\xfc\x4e\x19\xcf\x46\x04\xc0\x26\xc9\xde\xa1\x77\x11\x71\x0b\xe2\xa2\xde\xa8\xa7\x19\xf1\x11\x80\xa4\xb5\x63\x04\xe3\xe1\xbd\xb1\xe9\x09\x67\xd3\x3d\x46\xdc\x63\xc4\x3d\x46\xdc\x63\xc4\x32\x46\xb4\x5c\xf8\x7c\x1e\x91\xb8\x3f\x00\xd0\x46\xd0\xa4\xbb\xbd\x54\xe0\x6c\x7a\x6f\x78\x0d\x53\xc1\xb7\x30\xc2\xde\xa3\xb6\x3d\x6a\xdb\xa3\xb6\x6f\x16\xb5\xf9\x5a\x98\x06\xef\x99\xad\x62\x70\x44\xc4\x41\x97\xef\x82\xd0\x2e\xf0\x4d\x76\x6f\x08\x4d\xeb\x88\x5a\x67\x37\xdb\x09\x15\x33\x6d\x24\xba\x17\x2a\x7e\x83\xe8\x6f\x2f\x54\xfc\xba\xd0\xdf\xbd\x0a\x15\x0b\xf6\x8e\xf0\x11\x80\x2c\x26\x92\xb6\x43\x31\xe9\x1f\x0d\x60\x16\x93\xfe\x43\x5b\xb5\x24\x43\xcc\x9c\x03\x2f\x9b\x82\x80\x72\x31\x8f\x20\x72\xac\x70\x91\x57\x66\x60\x3e\x2f\xa6\x64\xa0\xd7\x57\xb6\xdf\x65\x0d\x36\x02\xbd\x9a\x57\xb4\xa8\xee\x35\x2e\x8a\x72\x8f\xf9\x18\x32\x00\xea\x9e\xe5\xd6\xc9\x4c\x6d\x05\x88\x6a\xab\x58\xa1\xa9\x2d\xb6\x80\x99\xd5\xc1\xd3\xdd\xc4\x9e\xba\xf6\xb3\x9b\x65\x71\xf2\x77\x0c\x36\xbf\xee\x3a\xd8\x93\xb7\xdf\x32\x7e\xdf\x93\xb7\x5f\x17\x7e\xff\xd3\x71\xee\x45\x8c\x4c\xc1\x7c\xde\x24\x12\x2b\x93\x1c\xdb\xed\x8e\xec\xee\x91\xf2\xa5\x49\x89\xee\xdd\xe3\xba\x3d\xae\xdb\xe3\xba\xbf\x24\xae\x7b\x54\xc2\x75\x90\xc5\x3c\xa7\x64\x2b\x28\x4f\xa2\x3b\xab\x47\x67\xa0\x2d\x71\xc9\xb3\x9b\x88\x42\xb2\x23\xe6\x93\xd5\xef\x0f\xf3\xa5\x72\xd9\x37\x7e\xc5\xbb\xc7\x7c\x7b\xcc\xb7\xc7\x7c\xdf\x18\xe6\x2b\xe1\xb5\xd5\x26\x3d\x9e\xfb\x3b\xeb\x98\x80\x46\x02\x80\x05\x80\xfd\x01\xe8\xe2\x9d\x70\x9e\x46\x42\xdb\x21\xbd\x3a\x53\x76\x1a\x39\x51\x6c\xc9\x86\x67\x4b\xac\xc8\xd9\xa4\xb5\xd7\xef\xec\x51\xe3\x1e\x35\xfe\xd5\x50\xe3\xe7\x8a\xb3\xb4\xc5\x03\xc1\x7a\xd5\x91\xdc\x05\x2f\x7d\xf5\x51\x01\x9f\x6d\xe6\xe3\xc3\xfe\x3d\xe7\x6c\x36\xdd\x33\xb8\x7b\x5c\xb6\xc7\x65\x7f\x25\x5c\xb6\xa9\x30\x0f\xb2\xf8\x76\x91\xbf\x88\x19\x31\xfe\x12\x0d\xc7\x75\x26\xd3\xbe\x52\x83\x02\xc8\x63\xd6\x17\x83\x83\xf2\xa3\xc3\xf9\x3c\x52\x87\x54\x66\xc6\x1c\x40\x73\xb6\xd4\xc3\x42\xc8\x76\x41\xb1\x0a\x81\xdd\x23\x5b\x3c\x46\x59\x4b\x62\x88\x0d\x35\xe1\xf6\xaf\xae\xb2\xb1\xc6\x7c\x45\xc9\x5d\xbd\x33\x55\x9c\x88\x43\xba\x0c\xb7\x13\xb5\x86\xc6\xcf\x25\xb2\x67\xd3\x6c\xb9\x27\x0f\xc3\xd0\xc5\x35\x77\x99\xfd\x87\x83\x30\xf4\xbf\x0e\xa8\x8a\x29\xd4\x1f\x00\xa3\x83\x52\xaa\x32\x39\x0d\x40\x42\x87\x04\x40\x14\x37\x8b\x01\x7b\x19\xc4\x90\x38\xb3\x7b\x94\x2b\x02\xad\xfa\x8e\xed\x24\x38\x19\xa3\xec\x1d\xbe\x16\xdb\xa9\xc7\x6a\xb6\x78\xd4\x81\x34\xef\x6c\xee\xad\x96\x44\xa2\xed\x3b\x94\x82\xa2\xad\x56\x04\x8a\xb6\xef\x50\xaa\xc4\x77\x6c\xa7\x72\x93\xdb\x6e\xca\xf1\x25\x61\xb3\x4d\x5f\x76\xd9\xbf\x79\xb5\xbf\xfc\xf6\xb3\x53\xf1\x47\x6c\xc1\xf7\xa6\xed\xaf\x7a\x1b\x12\xba\x7f\xc2\xb2\xa7\x14\xf7\x94\xe2\x9e\x52\xbc\x97\x27\x2c\x87\x3b\x71\xdd\x84\xde\xdf\x13\x16\x42\x05\xe6\x19\xde\xcd\xe5\xce\x9d\x91\xe2\x17\x78\x2a\x5f\x8f\x76\xf7\xd8\x63\x19\xf6\xd8\xe3\x8e\xad\x71\x47\xc5\x01\x62\x83\xb7\x27\x68\xba\xd2\x05\x4d\xae\x7a\xe8\xf6\x07\x0b\x00\xda\x53\x36\x8d\xea\x9d\xd7\xd8\xbe\x8a\xb8\x73\x2c\x1e\xdb\xfb\xf7\x58\x1c\x1e\xe6\x79\x54\xde\xfa\x12\x71\x09\xc9\xe2\x76\x8e\xd9\x63\x62\xcb\xb1\xc3\x43\x20\xef\xd6\x3e\x1b\xc4\x71\x8c\xc1\xad\xbc\xb3\x0f\xce\x38\x46\x17\x0b\x79\x12\x8e\xbc\x2d\xd6\x3c\x32\x17\xaf\xc4\x3c\x3b\x11\x86\x0e\x7f\xdc\x23\xc6\xba\x64\x17\xf7\xe2\x1a\x67\x8f\xae\xf6\xe8\xea\x6b\x42\x57\x3b\x1d\x5f\x79\x98\x96\xb1\x74\x56\xd6\xff\xe1\xf4\x1f\xef\xdb\x28\x4d\x0f\xaa\x36\xd2\x1a\x21\x2a\x54\xa4\xfc\xd0\x70\xe7\x87\x06\xa2\x98\x69\x2c\x57\x36\x2f\xb1\x66\xd1\x3d\x6f\x25\x2f\x55\xb0\x68\xb4\x06\x8f\x0a\x7e\xf3\x5a\xf5\x38\xc2\xd0\x84\x34\x3e\xc8\xad\xdc\x7d\x73\xe5\xa5\x15\x91\xae\xb8\xf8\x22\x86\xc5\xbf\x31\xb2\x37\x38\xd9\xf3\x97\xdf\x16\xca\xdd\xf3\x97\x5f\xe6\x41\x70\x11\x1d\xd2\x9c\xdb\x0c\x60\x00\x20\xd1\xc1\xdf\x77\x33\x32\x96\x55\xef\x8d\x20\xbb\xc0\x37\x7b\x53\x92\x3d\xd2\xdb\x23\xbd\x3d\xd2\xab\xb7\xf7\x90\x08\xe2\xeb\x78\x27\x3c\x41\x7b\x5b\x92\x3d\x32\xdb\x23\xb3\x3d\x32\xdb\xe2\x61\x98\x7a\xaa\xeb\xfb\x79\x59\xcd\xc3\x5a\x13\x93\x05\xd8\x4d\xe2\x36\x41\xf7\x69\x2e\x32\x41\x7b\x0f\x57\x7b\x74\xb8\x47\x87\x7b\x74\xb8\x0d\x3a\xd4\x38\x70\x37\xde\x75\x82\xee\xcf\xd1\xd5\x16\x86\x70\xda\xc2\xe8\x1c\x8b\x16\xa1\x09\xbe\xbe\x17\x13\xa3\x65\x08\xd6\x38\xa0\xd5\x67\x76\x57\x03\x23\x6e\x6c\x19\x81\x99\xda\xa2\x2b\x08\x0e\xb1\x8e\x9d\x6f\xd1\x59\xeb\x48\x1e\xc7\x66\x59\x45\xee\xbc\xca\xc7\x71\xcc\x5c\x44\xf4\xa7\x11\x07\x6d\xbd\xcf\x9f\x8a\x88\x1c\x1e\xed\xb4\x13\xe4\xea\xdc\xe1\xe5\x8c\xb3\x36\xe2\x75\xd6\x46\x74\x27\x6b\xa3\x2d\xb7\x17\xdb\xc9\x3f\x64\xf5\xea\x04\xb7\x8b\x9d\x26\x90\xb1\x69\x2c\xea\x27\x90\xd7\x4e\xa0\xf0\x07\xcb\xeb\xc2\xb2\x2f\x1d\xac\x5e\xee\x16\xda\x07\xef\xd9\xd3\x0b\x7b\x7a\xe1\xaf\x49\x2f\x98\xad\x54\xf6\xaa\xee\xce\x6c\x39\xf6\x99\xbd\x2d\x84\x77\x5b\xe0\x9d\xee\x0a\x5b\xfd\x8e\xf7\x45\x39\xae\x19\x5d\x1a\xd7\x6c\xbb\x9b\x80\x4d\x65\x2b\x28\xdd\xe3\xc6\x3d\x6e\xdc\xe3\xc6\xbf\x24\x6e\x5c\x26\x27\xaf\xf1\xe7\xc6\x7b\xbc\xc6\xf1\x5a\x03\xef\x44\x04\x5a\xd4\x73\x6f\x4c\xd5\x94\x4c\xeb\x42\xe8\x6f\xf2\xd2\x83\x4c\xf1\x46\x8c\x55\x29\x64\xfc\x3a\xc6\xe9\x73\xbd\x7c\x15\x6d\xd9\xc3\x03\xc7\x4f\xc8\x93\xd9\x77\x5f\x03\x89\x9e\xbe\xdc\x94\x6e\xeb\xba\x74\xca\xd9\x84\x64\x78\x1b\xe7\xa5\x4b\x42\xa9\x28\x87\x09\x62\x8c\xa9\x52\xe2\x14\xe2\x51\x79\xa6\x3b\x65\x36\xb4\x53\xcb\x86\x76\x06\x3d\xff\xa3\xdb\x77\xa7\xc5\x43\x22\xb9\x05\x64\x19\x6a\xe9\xec\x41\x12\x77\x8e\xc9\x63\x71\x4c\xd4\xf9\x23\x03\xaf\x25\xe2\x20\xd7\x7b\x7b\x80\xc4\x1d\xac\x4e\x1c\xc7\xa4\x27\x8a\x01\xb3\xa8\x1a\xab\x8e\xeb\x62\xec\xbf\x77\x3a\x7f\xda\xc4\xea\x95\x69\x39\xe6\x10\xab\x5d\x74\x7f\xc7\x71\xbb\x57\x57\xdf\x9a\x9c\x03\xd6\x4b\x36\x56\x0a\x33\xf4\x7e\x58\x22\xcc\x68\xed\x26\xcc\xb0\xcb\xf0\x55\x0b\x34\xfe\x35\xc3\xb3\x2f\x8f\x88\xbe\x24\x4a\xe1\xab\x51\x0a\xb7\x28\x85\x2f\x41\x29\xda\x6c\xd0\x1b\xc7\x5a\x9c\x19\x55\x6d\x12\x79\x19\xd3\x2c\x00\xe8\x56\x13\xd7\xe0\x2f\x5e\xc0\x5f\xbc\x06\x7f\xb1\xcf\x81\xbf\xd4\x9a\x2b\xb4\xb5\xb1\x37\x08\xbe\xbb\x3f\x07\x8e\xe8\xf9\x76\x3b\x4c\xc5\x66\xe5\x24\xab\xd2\x01\x7b\x3f\xdd\xdf\x00\x4f\xb5\xf7\xd3\xfd\x75\xf1\x54\x7f\x84\x9f\x6e\xeb\xa5\x3b\x8f\x86\xda\x3f\x1a\x40\x14\xd3\xfe\xc3\xc1\x01\x8a\x83\x33\xc6\x52\x8c\x24\x83\x65\xd0\x95\xdc\x3b\x27\x23\xe5\x99\x1b\x99\x28\xa6\x7d\xf5\x02\x90\x3c\x66\xc0\x76\x6b\x16\xa3\x9e\x68\xa7\x02\x77\xe5\xbf\x30\x8d\xc9\xf1\x2c\x4a\x21\x03\xc7\xe9\xe1\x21\xc8\xf4\xd1\x4a\xd5\x2e\x20\x4f\xf2\x6a\x43\x55\xed\x5c\x55\x3b\x17\x70\x14\x93\xe3\x61\x34\x92\xd5\x46\xad\x96\xad\x36\xca\x5f\x3d\xc7\x71\xcc\xc2\x10\x85\xa1\xc9\x62\x00\x66\xbb\xe0\x69\x85\x39\xef\xcd\x85\xb6\xbe\x91\xf6\xe2\xac\x6f\x19\xf5\xee\xc5\x59\x5f\x17\xea\xfd\x9a\xdc\xca\x32\x4b\xd3\xee\xea\x4d\x56\x57\xbf\x37\x2e\x9a\x63\xa5\xdd\xdc\x47\x90\xd9\xa3\xc7\x3d\x65\xfa\x75\xa2\xc7\x6f\x2a\x82\x4c\x36\x9f\x47\x99\xb2\x37\xbd\x4b\x90\x98\xe6\x46\x41\x62\x9a\xbb\x44\x89\x59\x11\x24\x66\x37\x74\x2f\xab\xdc\x63\x8c\x18\x8e\xa7\x78\x6f\xcb\xf2\x6d\x63\xf0\x3d\x81\xfb\x75\x61\xf0\x3f\x9b\xed\x6b\x40\x95\x37\xa0\xa0\x59\x92\x2b\x48\x12\x97\x0c\xba\x7a\x41\xb5\x50\x56\x76\x19\xde\xea\xde\x75\xe9\x02\x94\x1e\x09\x38\x8c\x41\x76\xf4\xc3\xa1\xd1\xd5\x3d\x92\xc3\x97\x98\x67\x7b\xfe\x7f\x8f\x1e\xf7\xe8\x71\x8f\x1e\x0b\xcf\x3e\x8b\xa4\x2b\x07\x3d\x4f\x8b\x6a\xfd\x26\xb5\x0d\xfe\x88\x40\xb7\xcf\x07\xbb\xe1\x3b\x05\xe0\xde\x10\x5e\x36\x9e\x8d\x46\xe9\x1e\xe1\xed\x11\xde\x1e\xe1\xfd\x35\x11\x9e\x6c\x49\x41\x80\x92\xab\x8f\x70\x8c\x1d\x3a\x03\xa6\x19\xd5\x8a\x88\x7d\xe6\xbb\x48\x18\x0a\x10\x86\x62\x3e\x7f\x8b\xc4\xb8\xcd\x11\x4d\xd8\xe4\x98\x3c\x39\x3a\x06\x3c\x56\x49\xa3\x94\x49\x00\x11\xf8\x77\xd2\x6a\x49\x92\x13\xf7\xc9\x00\xca\x7f\x54\xbf\xa0\xfc\x27\xa6\xce\x2c\x60\x17\xbc\x69\xf0\xd8\x67\x32\x93\xf6\xfc\x3e\x79\x2f\xc2\x9c\x23\x4c\x16\x86\x11\x8b\x09\x24\x95\xc0\xb7\x7a\xf2\x19\xe8\xd1\x88\x41\x02\xba\x7d\x36\xb8\x8b\x5d\x8a\x5a\x88\xfb\x70\x09\x47\x9c\xcf\x36\xa6\xfe\xa5\xbb\x7a\x24\xcb\xa6\x1c\xa3\xe4\x0f\x3d\x3a\x3b\xde\x4a\x77\x1c\xf8\x9f\x02\x71\xe4\x37\x83\xf1\xe9\xb7\xf4\x4a\x20\xbb\x0b\x79\x0d\x8f\xb8\xbd\xa8\x17\xd6\xc9\x79\x7b\x85\xeb\xa0\xfb\x19\xa4\xbb\x3d\x3d\xb6\xae\x3e\x9b\x8b\x82\xf8\xf2\x9e\xd0\x2a\xfb\x22\x3e\x15\x1d\x78\x54\x92\xc3\xe6\x04\x28\x64\x31\x29\x3a\xa7\x63\xf3\x79\xc4\x94\x40\x35\xa2\x31\x33\x25\x2d\xf3\x0e\x45\x44\x76\xe3\xcb\x15\x98\x18\xd5\x63\xdb\xac\x16\xdb\x22\x1f\x0f\x66\xdb\xe1\x41\xc6\xcb\x3a\xaa\x3d\x95\xba\xa7\x52\xf7\x54\xea\x37\x4d\xa5\x7e\x91\xc0\x5e\xf8\x5a\x60\x9a\x44\xb7\x12\xdb\xcc\x04\xee\x56\x49\x40\x4b\xff\x2a\xd9\xa8\x46\xa6\x90\xc4\x22\xe2\x05\x79\x40\xb4\x9c\x1a\x26\x60\x3e\x2f\x12\x84\x04\xa8\x33\x1a\x13\x4b\x29\x66\x58\x44\x62\x4c\x32\x18\xa8\x95\x08\x20\xad\xe6\x48\xa4\x27\x47\x9d\x05\x90\xe7\x14\xa6\x36\x36\xe0\x4e\x97\x56\x9a\x1d\x5d\x75\xc8\xa8\xc0\x54\x04\x50\xe2\xfd\xda\x87\x38\x9b\x54\xd6\x65\xcc\x44\x25\x6d\xd9\x9f\xc8\xf6\x97\x03\xd0\xbd\x2b\x0c\x6f\x84\x00\x40\x59\xb1\x6d\xea\x2d\x16\xbb\x5b\xda\x0a\xb4\x9b\x17\xe5\xfd\x45\xb1\xbf\x28\xf6\x17\xc5\x57\x79\x51\x6c\xeb\xda\xc5\x77\x6a\x65\x28\x67\xb8\x9b\xfa\x5e\x22\x9b\x7b\x93\xd5\x0a\x76\x7e\x9e\xee\xf8\x04\x51\xd7\xfd\x73\x3f\x42\xd4\x7d\xfc\x03\x9e\x21\xda\xc9\xd9\xbb\xde\xff\x2b\xe2\xd6\x3d\x66\xdd\x3e\x52\x48\xd5\x2e\xd6\x6c\x85\xdc\xc5\x84\x37\xa7\xfa\xd9\x5b\x6e\x39\x45\xcc\x43\xc5\x6a\x0c\x37\xfb\x18\x90\xb5\xd5\x2b\xcd\x93\x91\x6c\x8b\xc7\xc5\xdd\xac\x1b\x68\x1d\xc5\x7a\xc8\x87\xf2\x07\xee\x75\xba\xe2\xf0\x68\x11\x31\xfb\xfc\x4d\x94\xfc\xf3\x67\xba\x61\xc8\xfa\x7c\x00\x16\xb5\x59\x4d\xbc\xdb\x53\x32\x8d\x3f\xee\xed\x1e\x98\xd1\x12\xfe\xdf\x4b\x85\xf7\x52\xe1\xbd\x54\x78\x2f\x15\x5e\x26\x15\xb6\x22\x0b\x15\x77\x53\xae\xc0\x10\x89\xa2\x08\xb8\x26\x60\x53\xe1\x25\x2e\xf7\xf0\xb1\x44\xbb\x3b\x5a\x73\x29\xcc\x75\x6f\x52\x63\xd5\xf4\xde\x85\xff\x5e\x16\xf0\x6d\xd1\xab\x7b\x59\xc0\xbd\x0b\x8d\x57\xdb\x0b\xd4\x47\x07\xd0\xd8\x47\xc7\x07\x00\xbb\x8b\x33\xaf\x88\x18\xb3\xd9\x76\xde\x5c\x09\x1d\xa6\xb3\x04\x57\x3c\x92\xec\x9f\x67\x7d\x03\x18\x6f\xff\x3c\xeb\xeb\xc2\x78\xf7\xfa\x3c\x2b\x27\xd9\x9a\xcd\xb2\xc1\x6a\x18\x46\xe5\xa8\x9d\x72\x13\xe8\xc6\x7b\xbc\xea\x8c\x45\x85\x82\xaf\x20\x85\x65\x9e\x61\x72\x73\x58\x28\xb9\x46\x0a\x31\xe8\xf1\x2e\x37\xe4\x66\x44\xc1\x02\xc0\xfe\x00\xf8\xce\x87\x0c\x6e\x93\x47\x7f\x17\xbc\x6d\xaa\xdf\x39\x70\x3b\x2f\xb8\xc6\x24\x91\xe8\x77\x06\x50\x54\x5d\x63\x6e\xf6\xd0\xca\xb8\x97\xda\x4a\x3a\x8b\xa6\x53\x4c\x93\x4d\x4a\x0e\xc7\x33\x7a\xb1\x51\x41\x36\x99\xa2\xa1\xd8\xb4\xe8\x4c\xac\x14\x0e\xe7\x45\xa9\x40\x84\x6e\x34\xa8\x04\x0f\x37\x2a\xc6\xd9\x74\x93\x72\x9a\x43\x51\x56\x20\x9b\x16\xde\xac\x24\x4d\x36\x05\x9a\x4a\xdc\x42\x37\x29\x7a\xce\xd9\x6c\xba\x21\xd8\x31\xca\x5a\xda\x61\xfb\x66\x65\x73\xc7\x67\x9b\x04\x95\xdd\x68\x0d\xbc\x68\xd9\x9b\x07\xaa\xdd\x34\x6c\xe4\xe6\xe1\x89\x36\x0c\xdb\xb1\xa9\xff\xfb\xad\x7c\x7b\x6f\xe3\xeb\x76\x4b\x5f\x91\x77\x77\x10\x59\xf5\x79\xb7\xb1\x4f\xb3\x8d\x5d\x53\x6d\xee\x1b\x65\x2b\xaf\x02\x9b\xbf\x48\xdd\xe2\x75\xd6\x16\xef\x1a\x36\x36\xb2\xdd\xc2\x0a\x6d\x53\x23\x84\xad\x55\x7a\x9f\x43\x8f\x57\x92\x12\x6f\xce\x61\x54\x14\x7d\x90\x42\x02\x19\x44\x30\x83\x33\x98\xc2\x21\x1c\xc1\x04\x8e\xe1\x14\x4e\xe0\x25\xbc\x81\x67\xf0\x1c\x7e\x82\x57\xf0\x25\x3c\x85\x27\xf0\x1a\x3e\x85\x1f\xe1\x05\x7c\x0b\xdf\xc3\xdf\xe0\x73\xf8\x01\xbe\x86\x2f\xe0\x3b\xf8\x06\xbe\x82\xbf\xc3\x9f\xef\xaa\x34\x5c\x5a\xe1\xa9\xba\x3a\xf5\x1d\x1f\xc0\x5b\x4c\x67\x13\x4d\xc1\x75\x9b\x1d\x78\x8e\x45\x4d\xe8\x5c\x47\xb4\x2c\x56\x01\x7e\x2e\x6f\xda\xad\xe0\xf2\xcd\xe0\xea\x8b\x79\x2b\xc8\x74\x63\xc8\x33\x81\xb7\x82\x4c\x36\x84\xac\xaf\xfd\xad\x40\xb3\x8d\x40\xbf\xc0\xc3\xad\xa0\xa2\xcd\xa0\x72\x36\xdd\x0a\x6c\xb6\x11\xd8\x57\x8a\xac\x78\x76\xb3\x15\xe8\xd9\x16\xa0\xb7\x02\x9c\x6e\x08\x98\x26\x5b\xf6\x78\xb8\x19\x60\x4d\x0e\x6d\x05\x79\xb4\x11\xe4\xbf\x4b\xea\x69\xcb\x3e\x27\x1b\x41\xfe\x09\x65\xef\xf0\xf5\x76\x87\x6f\xbc\x29\xe4\xf7\xe6\x76\xde\x0a\xfa\x74\x23\xe8\xaf\xe9\x76\xa7\x64\xb2\x21\x54\x43\xf6\x6d\x05\xfb\x72\x43\xd8\x92\x4a\xdc\x0a\xf0\xcd\x46\x80\xff\x8b\x91\xed\xf6\xdc\xd9\x46\x60\xdf\xa2\x6d\x77\xdc\xf9\xa6\x70\xb7\x82\xfa\x69\x23\xa8\x5b\x6f\xe2\xab\x8d\xc0\x9e\x18\x6f\xc0\x5b\x81\x7e\xb9\x19\x68\x43\x3d\x6f\x05\xfa\x74\x23\xd0\xef\xc9\x14\x3f\x55\x35\xb7\x02\x7e\xb2\x31\xf0\xad\xc0\x5e\x6f\x06\x76\x17\x5c\xf1\x74\x23\xd0\xff\x57\x12\xfe\x5b\xc1\xfd\xb8\x11\xdc\x0f\x92\x4f\xd8\x0a\xee\xc5\x66\x70\x15\x5b\xb1\x15\xe0\xb7\x1e\xe0\xe5\xb4\xe4\x07\xe3\x5b\x67\x2b\xd0\xef\x37\xec\xb3\xe4\x59\xb6\x02\xfc\xdb\x86\x80\x15\x8b\xb3\x15\xe4\xe7\x1b\x41\x3e\xd5\x1c\xd1\x56\x90\x3f\x6c\x06\x59\x32\x50\x5b\xc1\x7d\xbd\x19\x5c\xc6\xb7\x5d\xbd\x17\x1b\x01\xfe\x88\xb6\xbc\x99\xde\x6d\x06\x56\xf1\x66\x3b\x60\xa2\x37\x5b\x80\xdf\x0a\xf0\xab\x8d\x00\xff\x4c\xb7\xed\xf0\xef\x1b\xc1\xfd\x45\x33\x96\x5b\x41\xfe\xd9\x83\xbc\x91\xb8\xb5\xe2\x2c\x7b\x43\x75\xff\x0e\xf2\xe6\x54\xe0\x5a\x4b\xb4\x06\x7e\x1c\x8b\x85\x2a\xb0\x2c\x5f\x65\x9f\x2f\xad\xff\x24\x36\x05\x96\xe5\xcb\xe9\xd8\x78\x32\xbc\x20\x07\x9f\xdf\xa7\xe3\x1d\xf4\xab\xbe\x0e\x01\x52\x2d\x7d\x27\x31\x3f\xa0\x61\x18\x59\x23\xb9\xa7\x11\x06\xed\x11\xa1\x49\x5d\xa4\xe1\x92\x2b\x7a\x05\x65\x01\x00\x28\x88\xfb\x15\x04\x6b\xad\x42\xf2\x77\x90\x4f\xe2\x4e\x8f\x75\xe9\x2c\x4d\xb7\x99\x4b\xa7\x4a\xfd\x72\xdb\xaa\x3a\x3d\x7e\xa4\x10\xdc\xb6\x5d\x98\xcf\x95\x7e\x4e\x31\xe2\x70\x9d\xbf\xff\x27\x47\x3d\xde\x3a\xea\x76\x00\x24\xf1\x91\xef\xf7\xbf\x75\x54\x1f\x4c\xc4\x1a\x04\xa9\x10\xce\xdb\x4c\x90\xdd\x36\xf7\x39\x41\xce\x67\xc1\xee\x51\x42\xad\xb6\xfe\xbf\x4e\x4f\xde\xb5\xb5\xb2\x95\x8c\x6e\xb4\x79\x53\x29\x4d\x58\xa5\x15\xc9\x54\xa8\x09\xa3\x90\x2c\xa6\x09\x88\xb7\x9d\x37\x2d\x7d\xbe\xe7\x9d\x65\xec\xf4\x98\xd3\x04\x17\x9e\xae\x61\x30\x9f\x07\x56\x3b\x5a\x93\xbb\xe5\x08\x6d\x88\x8c\x2d\xf1\x90\xe9\xdc\x3d\x20\xa2\x65\x41\x2e\xc2\xb0\x62\xbe\xbc\x63\xd4\x8e\xdb\x45\x4d\x3c\xac\xd2\xb4\xaa\x80\x1a\x20\x0c\x57\x15\x51\x06\x09\xca\x1a\x77\xc9\x1a\xcc\x04\x4e\x5a\x99\xb8\x49\xf1\x83\xe2\xe7\x97\xda\x60\x07\x1a\x41\x99\x6a\x17\xf8\x26\xab\x58\x94\xe4\x0a\xed\xdb\x05\xa4\x71\xe7\x98\x3e\x16\x66\xfa\x8e\xe9\xe1\x21\xe0\x7d\xd1\xa7\x83\x41\xec\x3b\xd5\x94\x29\x0e\x6b\xf3\x85\xb6\xc6\xb9\x45\x94\x4c\x90\x04\xfd\x5a\x29\xdc\x09\xa3\xcf\xd9\x8c\x0a\x49\x48\x9c\xb1\xeb\x57\x29\xbe\xf6\x7e\x2a\xf9\x91\xf9\x3e\xe1\x09\xa1\x28\x75\x49\x43\x96\xce\x26\x79\xe5\x91\xa9\x39\xd2\xd5\xae\xec\xef\xf7\x2c\x23\x82\x5c\x62\xfb\x7d\x3a\xe6\x84\x5e\xd8\xaf\x77\xf8\x1c\xf9\xb9\x27\x3c\xc1\x5c\x11\x35\x9c\x24\x1f\x34\x14\xf9\xf3\xb9\x6a\x4c\x95\x62\x54\xfc\x82\xc9\xf9\x58\xb5\x9a\x12\x8a\x95\xf5\x83\xfd\xf8\xc9\x65\xb1\x29\x1a\x12\x71\xa3\x7e\x5a\xa8\x8c\x4f\xc7\x88\x66\xf2\xa7\x40\x67\xa7\xe4\x77\xd5\xf0\x15\x49\xd8\x95\x4a\xfc\xfd\xb5\xbc\xee\xd4\x2f\xc6\x26\xaa\x39\x92\xa6\x27\x39\xa4\x4c\xb0\x69\xe1\x93\xb3\x0b\xfc\x02\x65\x63\x36\x1a\x65\x58\xe4\x69\x95\x42\xbf\x90\x44\x8c\xe5\x72\x1b\x53\xf6\x7e\xf0\x0b\x3e\xbb\x20\x22\x80\xc1\x44\x1e\xe6\xb7\xec\xf7\x00\x06\x27\xc1\xe0\xa0\x68\xe6\x6a\x6f\x15\x79\x19\x17\x5d\x02\x3a\xd4\x5d\x31\x80\x29\x3e\x71\x75\xe1\x35\x83\xc0\x18\xbb\x08\xa7\xa2\xcf\xde\xa1\x77\x91\xc4\xc1\x1d\xfd\x06\x80\xb6\xc7\x28\x3b\xb9\xa2\xf9\xae\x05\x61\x48\xfb\x78\xd0\x0b\x82\x43\xd1\xad\x5a\xd3\x08\x65\xef\x22\xda\x82\x93\x49\x04\x00\xe4\x87\xc1\xf4\x3a\x00\x0b\x89\xc6\xfb\x62\x00\xea\x5d\x7c\x73\xd0\x93\xf4\x83\xb9\x0d\x8c\xa1\x4d\x82\xb2\x31\xe6\xe4\x77\x1c\x09\x70\x18\x74\x83\x43\xbe\xa8\xb5\xa7\xcd\x85\xf9\xb3\x34\x6d\xc6\x31\x96\xc5\x7e\x63\x84\x46\xc1\x71\x00\x16\x22\xa2\xa0\x3d\x62\xfc\x25\x1a\x8e\x8b\xd5\x48\x4d\xb2\x00\xb7\xb4\x5f\x4f\x2b\x1e\x8a\xf6\x70\x8c\xf8\x53\x11\x75\x40\x5b\xb0\x9f\xa7\x53\xcc\x9f\xa3\x0c\x47\xe0\x50\xb4\xb3\xd9\x99\x9e\x8a\xe8\x48\x0f\x16\x0c\x62\x39\x4f\x0b\xa0\x6c\x1d\x94\x51\xd5\x01\x76\xef\x75\x4f\x25\xfe\x88\x23\x14\x57\x0d\xdf\xfa\x83\x03\xb5\xb8\xb5\x7d\x33\x66\x56\x2c\x52\x93\xe9\x40\xd3\x98\xe7\x23\x76\x06\x2c\x16\x9f\x1e\x85\x61\x70\x1c\x34\xe3\x98\xda\x01\x50\x17\xa3\x1b\x84\x61\x44\x0f\x63\x59\x0f\x16\x66\x7f\x2c\x26\xe9\x29\x1a\xe1\x88\x82\x05\xf4\x70\xb6\xc5\x3c\x55\xbc\x0d\x45\x6c\xcd\x5f\x0c\x4a\xc2\x0a\x17\x49\xbc\xe3\xe1\x71\x3a\x28\x3c\xde\xb0\x33\x52\xe7\xdb\x12\x19\xd2\x49\x3d\x7d\xee\x73\xfd\x57\x00\x6d\x3e\xe2\xf4\x2c\xff\x3f\x7b\xef\xda\xde\x36\x6e\x2e\x8a\x7e\xf7\xaf\x90\xf9\x74\x69\x88\x1a\xa6\xe5\x64\xed\xbd\xcf\x91\xc3\xaa\x99\x5c\x76\xb3\x9b\x49\x72\x92\x4c\x7b\x7a\x54\xd5\x43\x4b\x90\x85\x15\x0a\x54\x01\xd0\x8e\xc7\xe2\x7f\x3f\x0f\xae\x04\x48\x50\x92\x9d\xc4\x6b\x2e\xfa\x62\x53\xb8\x5f\x5f\xbc\xf7\x77\xa5\xcf\xa6\x2e\x8c\x65\x04\xa3\xad\xa0\x7c\x23\x1e\xdf\x0d\xf2\xbf\xd9\xd3\xc9\xfd\xb3\x11\x1a\x3f\x51\xd1\xba\xa6\x37\xc7\x33\x34\x2d\xa4\x76\x54\x50\x2b\xe6\xcf\xaa\x82\x53\x48\x21\x00\x36\xc1\x99\xab\x6d\x33\x94\xe6\x36\x91\x67\x4c\xc7\x6c\x0b\xc9\x33\xbb\x14\x20\xb1\x8b\x52\x3a\x0f\x9a\xd6\x69\xd3\x29\x97\x88\x3b\x30\x46\x29\x80\x31\x13\xaa\x65\x53\x19\xd1\x8c\xb4\x66\x4c\x49\x1b\x30\xd4\x57\x37\xd8\xc4\x73\xc4\xa6\x14\xaf\x78\xa1\x9e\xd4\xa4\x26\xa2\x05\xe5\x03\xd5\x4d\xd3\x67\x4a\xd2\x43\xf6\xe5\xf4\x01\x72\x4d\x51\x9c\x9e\xf1\x27\xcd\x4b\x71\xc6\x8f\x8e\xcc\xfc\x15\x7c\xaa\x6f\x02\x77\x31\x1a\x2e\x31\x1a\xfe\x1f\x8f\x46\x58\x2f\x4b\x4c\x01\x3c\x1c\x74\x00\x82\x4c\xad\xbc\x80\x02\x15\x00\xc3\x2d\x33\x64\xa3\xd0\xc9\xc4\x88\xc5\x08\x6e\xab\x1a\x53\x00\x86\xce\x98\x3a\x06\xd4\x75\xf4\xf9\xb6\x0e\x62\x0a\xb9\x84\x64\x95\xd5\x7f\x75\x2d\x2f\x3c\x6b\x09\xde\xc3\xa4\x87\x82\x93\x51\x7d\xe9\xbb\x45\xa1\xcf\x12\x99\x16\x64\x8e\x2f\x4b\xfb\xfb\x9a\x62\xae\xbf\x2b\x30\x14\xb0\x34\xa5\xd0\xe9\x97\xed\xf5\x76\x7f\x3d\x7a\xbb\xe5\xef\x46\x6f\xb7\xfc\x4d\xe8\xed\x96\x0f\xa6\xb7\x9b\x3b\x74\x68\x9e\x06\xdc\xb5\x18\xe3\xb0\x88\xc9\x8f\x66\x86\x9d\x4c\x20\x12\x42\xcf\x1c\xc3\x50\x30\x83\x1e\xf2\x69\xce\x46\x77\xde\xb1\x4a\xd3\xd4\xa6\x1f\x9a\xef\xfa\x00\x8f\xcc\xd8\x86\xb6\x43\xe0\x59\xa7\x4d\x1d\xe6\x43\xbb\x4b\x07\xa8\xcd\x6b\xc5\xdc\x00\xdf\x22\x50\x35\xc1\x04\x73\x9c\xe5\xf8\x67\x44\x47\xde\x2f\x75\x99\xb4\x8f\xc6\x61\xb0\xee\x25\xe2\x23\xf9\xd7\x2f\x8b\x14\xa0\x19\xe9\xff\xc6\x6a\xd0\x09\x4b\x3a\x8d\x79\xc3\x90\xbf\xc5\x59\xc9\x15\x19\xa2\xd1\xfd\x7e\x7f\x1a\xa3\x64\x85\xe8\xbc\xa0\x4b\x81\x7c\x83\x91\x0c\x79\xca\x33\xf6\x09\xc4\xb5\x65\xa2\x5d\x88\x59\xec\x70\x27\x54\x39\x49\xc5\x02\xf7\x94\x2e\xbc\x27\x40\x83\x15\x44\x38\x95\xaf\x26\x08\x46\xd8\x34\x0f\x3d\x8b\x79\x97\x8b\x8c\x43\x1d\x2a\x76\x4c\x26\xb1\x78\x79\xc8\x24\xc6\xa0\x02\xe2\x5a\xdb\xae\x57\x35\x31\xd0\xe2\x8d\x9c\x06\x79\x23\xa7\x2e\x26\x71\xea\xf0\x46\x34\xfb\x45\x63\x71\x7f\xc7\x7c\xf1\x4e\x86\xd4\x05\xee\xe3\x0d\x09\xc4\xaa\xc3\xac\xdd\xe1\xe3\x60\x87\x8f\xdd\x0e\x1f\x4f\x86\xe3\x09\x2c\x53\x16\x67\xf0\x14\xc0\x3c\x2d\xc5\xb4\xa7\x29\x76\x8f\x0c\x9c\xa7\x58\xed\xb9\xd9\xe8\x19\xca\x11\x47\x3d\xbf\x94\x4d\x94\x45\xa1\x20\x75\x8a\xf8\xb6\x82\x14\xc0\x1c\x40\x64\x7e\x62\x00\x6f\x2b\x78\xeb\xd4\x1c\x4e\xa1\x3a\x51\x73\x81\xbe\xe9\x49\xdd\xcb\x9a\xb2\xb3\x82\x40\x81\x65\xa4\xdc\xfb\x28\x97\xa1\x04\x11\xa9\x39\xfa\xd1\x1c\xb7\x14\x25\x9f\x10\x5a\xbd\xce\x04\x94\x77\x53\x67\xb4\x58\xb9\xbf\x29\x62\x3c\xa3\x12\x61\x71\x93\xb9\xf3\xed\xb4\xdd\x6a\xd6\x69\xb1\xdd\x98\x6e\xc7\x55\xef\x5f\xa6\xab\x78\x0e\x0e\x74\xc6\x52\xa6\x5d\x89\x34\x78\xeb\x54\x56\x9c\xaa\x76\x7b\x57\xb2\xfc\x8d\x2a\x2f\xfa\x35\x05\xed\x18\x6e\x64\x89\x0b\x55\xa2\x1e\xaa\x29\xd7\x18\xfc\x85\x2c\x7d\xa9\x4a\xeb\x69\x9a\xa2\xee\xac\x2f\x65\xb9\xf3\x74\x15\xcf\xcc\xd8\xd5\xe2\x9c\xcb\x8c\x6b\x91\xb1\xcb\x04\x54\xa5\x6b\x59\xe9\x85\xaa\x14\x9a\x85\x2a\xf6\x42\x16\xfb\xa0\x8a\x6d\x9b\x8a\xaa\xf2\x41\x56\x79\xab\xaa\x74\xcf\x47\x15\x7e\x2b\x08\xdd\x9d\xc8\x40\x87\x3c\xbb\x23\x2d\xb8\x37\x65\xfb\xed\xa1\xc4\x7b\x53\xb6\x5f\x17\x4a\xfc\xcd\x4d\xd9\xbe\x8e\xf1\xae\x8d\x8c\xef\xe0\x13\xef\xd1\xbf\x4b\x4c\xd1\xac\x8d\x57\x08\x7a\xdc\x62\x16\x45\x4a\x63\xac\x0c\x7a\x61\x96\x12\xf7\xcd\x6f\xe0\x03\x5e\x5e\xc3\xcd\x61\x1c\x45\xc6\xec\xad\x80\x51\x22\x80\xde\x87\x72\x3a\x45\x8c\xcd\xcb\x3c\x02\x30\x6e\x09\x97\x6a\x01\x88\xf2\x9f\xb8\xb1\xbe\xc5\x41\xd1\xc8\x15\x9c\x44\x0a\xae\x82\x61\x36\xca\xd4\x9d\x11\x6d\x59\xbc\x12\x00\x35\xd5\x5d\x02\xe5\x5b\xd8\x7d\x72\x7c\x51\xce\xe7\x88\x1e\xaf\x8a\x1c\x4f\xef\xe5\x80\xf7\xae\xc0\x98\x06\x7c\x58\xed\xbd\x64\xfd\xb7\x7b\x1d\xf8\xd5\x3a\xfe\xf9\xe5\x41\x2c\x5a\xac\xbe\x2f\xf9\x5f\x2d\xd6\xf5\x4e\xde\x2d\xb1\xf3\x62\x59\xf2\xb7\xe4\xb2\xc0\xe4\x52\xa0\x57\xcc\x66\x89\x4a\x52\xb1\x73\xe6\xa7\x3b\xb8\x98\x49\xf4\xdc\x18\x34\x95\x4a\xce\x50\x92\x4d\x39\xbe\x92\x35\x5e\xe9\x9d\x30\x54\xd4\x13\x94\x2c\xb3\xcf\xcf\xea\xeb\x7f\x66\x28\x71\x94\xfc\xdb\x76\x5e\xd7\x62\x0b\x3c\xe7\xb1\x3c\x72\x87\x1c\x5c\x50\x94\x7d\x3a\x08\xb7\x2f\x51\x15\x0e\xaa\xca\xe3\xb9\xd7\x7c\x88\x46\xbf\xc7\xe1\xfe\xb4\x34\x68\xd3\x14\x2a\x05\xc5\x6f\xa9\x82\xf7\xec\x47\x72\x51\x08\xb8\x31\x73\x5a\x97\xd2\xcd\xe9\x02\x89\xcd\xf1\xb8\x22\xe2\x4f\x25\xa8\xa4\x37\xe8\x33\x7f\xa7\x28\xf5\x0f\x3c\xe3\x25\x0b\x31\x4f\xc4\x04\xfe\x34\x18\x45\x4c\x80\x66\x34\x8b\x86\x91\xde\x8c\xa8\xaa\x0e\x82\x3b\x53\x28\x01\x5b\x7a\xab\x36\xfa\x3d\xca\x58\x41\x86\x11\xe6\xbd\x0b\x94\x17\xe4\x92\x89\x7b\x90\xf5\xbe\x13\x9b\xfd\x5d\x4f\xd4\xec\xf1\x45\xc6\x7b\xd7\x19\xeb\x65\xb9\xb8\x49\x37\x3d\x5a\x12\x22\x80\x52\xf7\x0c\x20\x4a\xd8\x4a\x40\x1c\x6f\x7d\x62\xe5\x5f\xd7\xe9\x18\x06\x17\x19\x0e\xc2\xe9\xe6\x9e\x7c\xc9\xfa\x48\x53\x5f\xb9\x38\xe1\xe3\x6c\x62\xd6\x6f\x5b\x1f\x87\x16\x6a\x2e\x93\x61\xb0\xc4\x00\xcd\x7a\xd9\x65\x86\x49\xc7\x4a\x19\x5f\xcf\x81\xa3\x04\x49\xf8\xbc\x1f\x34\x84\x2d\x12\x4e\x42\x23\xa4\x4c\x0d\xf2\x21\x43\x9e\x2c\xb3\xcf\x92\x6b\x63\x8f\xac\x7f\xc0\xc5\x0b\xbc\xdb\x26\x51\x38\x80\xf8\x8b\x56\x5d\x35\x77\x6e\x6d\x47\xe5\x06\x74\x82\x1a\x26\x67\x51\x6e\xdd\x83\x9a\x68\xfc\x85\x9e\xd4\xe3\x53\x60\x8f\x5a\x08\xdc\x96\x5b\x10\x1f\x35\x00\xa9\xa0\xa4\xd5\x98\x8c\xa2\x52\x58\x1c\xeb\x54\x15\x54\xfd\xb1\xd5\xa2\x0a\x15\x91\xd4\xed\xb7\x70\xad\xba\xc8\xd8\x22\x45\x09\xcd\xa6\x48\x1c\xee\x3c\xff\x80\x38\xcf\xd1\x4c\xfd\xf0\xdf\x06\x8a\x2e\x11\x51\x2f\xe8\xfb\x92\x70\xbc\x14\xa7\x94\x7e\x8a\x0b\x00\x71\x3a\xd5\xea\x18\xef\x3f\xfc\xed\x5d\xf2\x4e\x2d\x00\x8c\xb2\x3c\x8f\x60\x0e\xc2\xca\x1e\x81\xf6\xae\x69\x53\xf7\x43\x3e\x42\x67\x80\x5d\x63\x41\x95\x0a\xb4\x09\x5d\xa5\x5c\x52\xb7\xe0\x76\x9a\x31\xd4\x1b\x0c\x6b\x95\xc4\x0b\x5a\xae\x78\x1c\x69\xd6\x2a\x44\xe0\x40\x16\x39\x1d\x8a\x7f\x11\x22\xb3\xa8\x2e\xcc\x78\xb1\x8a\x41\x55\x01\x81\xe3\xaa\xe9\x36\x30\xc8\x41\x9a\xd6\x0f\xbe\x79\x7a\xec\xc3\xaf\x95\x01\x8c\x44\xf4\xe8\x88\x18\x6e\x23\x1a\x93\x89\x7c\xe4\xb2\xf5\xfa\x30\x1b\xd3\xe4\x06\xa3\x7c\x26\x8e\x86\x42\x44\x26\x9e\xc3\x44\x05\xc3\x0e\x4f\x61\x99\xa2\x86\xee\x4b\xed\x36\xc8\xe0\xdf\xc9\x94\xa2\x8c\xa3\xf8\x76\x4e\x86\x05\xcc\xe8\x25\x1b\x4a\x75\x8c\xe4\x5c\x82\xb8\x3a\x8e\xc7\xe9\x61\x9a\xd2\xe4\x5c\x90\x18\x39\x12\x8d\x09\x10\x80\x64\xfc\xe4\xc3\x01\x80\xd4\xd1\x35\x60\x23\x1c\x97\x60\x58\xb6\x3b\xb7\xcf\xad\x3c\x33\x15\x00\x95\x7e\x91\xdc\xdd\x96\xbb\xac\x8f\x8d\xdc\x6c\xef\x1c\x19\x18\x1d\x3e\x1f\xe2\xdc\xe9\x3a\xf2\x08\x1a\x68\xe2\xb7\x2f\x0e\x69\x04\x43\x23\xf3\x65\xef\x6d\xcd\x21\x33\x81\x31\x37\x2a\x2b\x21\x29\x8a\x2b\x4e\x98\xc6\x48\x91\x77\x4d\x2a\xa4\x30\xbb\x8b\xc5\x81\x37\xce\xe7\xe4\x74\x66\x68\x8e\x68\x0c\x0e\x24\xdf\xbb\x00\x52\x3d\x2f\x66\x09\x45\xac\xc8\xaf\x10\x64\x3a\x6a\x33\xd0\x93\x3b\x3c\x85\xce\x51\x03\xb7\xe5\x7a\x1d\x97\xe9\xe1\x00\x66\x61\x85\x1e\xb1\x6b\x35\x1a\x5c\xcc\x6b\x83\xe4\x91\x01\xcc\x71\x58\x5c\x31\xa6\x49\x0d\x96\xf4\xd9\xeb\xf7\x83\xc9\xb1\x5c\x1e\x50\xc1\x69\xca\x12\x0d\xc0\x12\xcd\xce\x89\xf3\x5a\x8c\x11\xaa\x9b\xe6\x70\x5a\x55\x1a\x98\x6c\x83\x93\x88\x4c\xb3\x15\x2b\xf3\x8c\xa3\x99\x84\x7c\x77\x04\x8f\xdf\x4c\x55\xc5\x81\x75\xee\x85\x33\x01\x20\xce\x97\xd9\x27\xf4\x4a\x53\x10\xc3\x16\x45\x2e\x1f\x21\x8d\x4c\x58\x7a\xdb\x55\xf4\x91\x05\xc4\x85\x05\x15\xd4\xe5\x94\x76\xb9\x4b\x5d\xd3\x2d\x8b\x17\x78\x51\xf6\x74\xf5\x9e\xae\xde\xd3\xd5\xf7\xf2\xc5\xcf\xb4\xbf\x86\x67\xca\x83\x7d\xc3\xe0\xa4\xe6\xf1\x11\xc3\xde\x53\x07\xe8\xb4\xa1\xee\x49\x4b\x92\x5c\x60\x32\x53\xc1\xad\x5d\x66\x1d\x9e\xc7\x45\x50\x64\x2e\x9d\x4a\x6f\x52\x3a\x74\x67\x8e\xc4\x73\x33\x38\x63\x4f\xd0\x19\x93\xb3\x67\xae\xe2\x21\x93\xa8\x06\xee\xf7\xb5\x70\x51\x0d\xba\x4c\x89\x8e\xeb\x45\x14\x31\x5d\x73\xfe\x4a\x68\x4a\x5a\xdd\x24\x31\x1c\x0d\xab\x0a\xc8\xe3\x0c\xd4\x5e\xb8\xa4\xfa\x78\x50\x85\xdc\x01\x4b\x46\x57\xf1\x78\x59\xcc\xf0\x1c\x23\xca\x8e\x97\xf8\x33\xee\x08\x3a\xe0\x54\x34\xa8\x7e\x50\x77\xaf\xc9\x4c\xfc\x06\xe8\xaf\x7e\xa2\x3f\x98\x61\x78\x47\x40\xb9\x40\x4e\xce\xad\xd0\xed\x5d\xc6\x17\x46\x7f\xaf\x5e\x4f\x0a\x5b\x65\x6a\x5d\xd5\x73\x3b\xc3\xca\x22\x9e\x4d\x54\x4e\xcd\x52\x91\x19\x43\x94\x9c\xbb\xbf\xa1\x4f\x07\x8a\x6c\x3f\xa5\x02\x15\x44\x56\x59\xf4\x07\xb3\xfe\x3e\xe6\x7e\xeb\xb5\x39\xa4\x01\x66\x03\x6c\xb4\x3b\x3c\x3d\x19\x40\x7f\x5a\xf2\xb9\x82\xe7\x8b\x8c\xfd\xc8\xd0\xcc\x74\x35\x3c\x3c\x95\x69\x1f\x10\xff\xde\xed\x44\x27\xbf\x20\x02\x92\xcc\x5e\x5c\x89\xc3\x2a\x12\x5d\x59\x65\x5b\xb8\x8c\xd5\x63\x49\x3b\x09\x4e\x31\x5d\x2d\x5e\xdc\x50\xbb\x3d\x3f\x50\x41\x29\xf0\xdc\x50\x29\xc8\x64\x00\x15\x74\x24\xa0\x5b\x6a\x07\xe8\x46\x50\x35\xb7\x30\xa4\x74\x23\x70\x83\xe6\xc2\x0a\x8c\x50\x65\xf8\x0d\xa4\x08\x16\x8a\x55\x2f\xb3\x2b\x28\x9d\x87\x75\x37\xeb\xed\x61\xab\x32\x12\x1b\x83\x66\x21\xb7\x37\x66\x50\xde\x16\x9a\x51\x55\x70\x86\x2e\xca\xcb\xce\x7a\x32\xd7\x16\xae\x5a\xba\xb3\x16\x45\x0a\x9c\x1d\x51\x0d\x05\xd7\xa3\x71\x3b\x52\x0e\x0b\xc5\x17\x68\xae\x51\x9a\x9e\x9e\x0c\x04\xde\xdc\xca\x39\x05\xae\x4a\x64\x11\x83\xdb\x2a\x74\x7f\x82\x5e\x57\xc3\x90\xeb\x9b\xdb\x63\x39\x77\x99\xa7\x03\x4f\x78\x0d\x6e\xf9\xd1\x91\xf7\x66\x62\xfb\x96\x9e\xd1\x27\xf8\xec\xe8\x88\x9a\x67\x4c\xbe\x98\x45\x72\xce\x10\x22\xd2\x02\xe4\x09\xef\xf7\x63\x37\x21\xe5\x50\x10\x3a\xa0\x6a\x04\x72\x70\xcd\x0b\x49\xb9\x7c\xaf\x38\x35\x90\xaa\x9f\xea\xce\x40\xe2\x99\xe5\x44\xf2\x54\x46\xe0\x8c\x9c\x81\x3a\x6a\x02\x81\x51\x5d\x3f\x82\xdc\x8d\x62\xa6\xf2\x54\x63\x32\x84\x99\xdb\x20\xb1\x0d\x56\xae\x9a\xbd\x51\x60\xd2\x38\x7a\x9e\x31\xc3\xf1\x42\x33\x05\xae\xa4\x30\x4c\x00\x1c\x37\x41\x0f\xc0\x29\x61\xc5\x65\x75\xda\x33\x45\x3a\xa3\x3a\x45\xe2\x57\x6e\x3b\xcf\x24\x90\x72\x53\x5e\x91\xa9\x57\x4d\x63\xfa\xca\x7e\x68\x00\x25\x73\xf9\x2f\x19\x99\xe5\xe8\x65\x99\xcf\x71\xae\xfb\x73\xd2\x95\x17\x02\x95\x8c\x09\xf6\x60\x8e\xba\x5a\xac\x5c\x21\xea\x92\x16\x16\x19\xd0\x51\xd1\x02\x3c\xca\x74\x3c\x51\x79\x01\x06\x58\x3a\x9e\x54\x50\xc1\xdb\xa7\x79\xde\xe2\x7a\x72\x69\xbb\x21\xea\x86\x98\x6f\xa8\xb3\x4b\x38\xe8\xcc\xaa\x63\x6e\xc0\x6d\x0d\x87\x19\x79\x5d\x59\x4e\xc3\x34\xe6\xa0\x82\x81\x96\x87\x4d\x2d\x7f\x81\xe8\x99\x13\x5e\xa4\xf4\xac\x78\x42\x8f\xc8\xd9\xd1\x91\xa5\xf8\xf9\xb8\x98\x1c\x64\x82\xbc\xd5\x27\xc9\x18\x73\x8a\x63\x9b\x49\x44\xd2\x3b\xbb\x2a\xa9\xbe\x1a\xc7\xa7\x00\x66\x86\x52\x47\x00\x4a\x64\x4d\x6b\x63\x48\x75\xbe\x8a\xeb\x25\x50\x2a\xf9\x61\x0e\x68\x33\xde\x9f\x77\xd8\x23\x88\xda\x11\x01\xdd\xc3\x17\x41\x97\x42\x95\x49\x47\xa7\x6e\x15\xd4\x9e\x07\x6a\xcc\x43\x54\xe8\x5c\x79\x39\x1f\xa4\x0b\x9c\xcf\xf3\x92\x2d\x64\x2d\x16\x83\x0a\xba\xbf\x87\x41\xb3\x1b\x71\x3e\xd3\xc1\x19\x7f\xb2\xe5\xcc\x9c\x1d\x1d\x71\x80\xb4\x80\xa8\xa3\xe8\x98\x4f\xd4\xba\x1e\x74\x5e\x87\xb0\xf1\xf4\x78\x02\x15\xd9\xe1\x80\x50\x52\x83\x50\xac\x40\xe8\xe1\x69\x9a\xa6\x38\xc1\xec\x25\x26\x98\x2d\xd0\xac\xdf\xe7\x6a\x40\xd8\x62\xd4\xbc\xea\x1c\x9d\x5e\x22\xf7\x1d\x4b\xcc\x86\xab\xa7\xd9\x61\x31\x2a\x30\x90\x0e\xce\xf0\x0e\x0b\x63\x09\x96\xce\x85\xc1\xe2\x01\x70\xcf\x71\xac\x41\x8a\xf8\xed\x16\x8d\x0b\x01\x7f\x0b\xf1\x0a\x29\xd3\x2c\x7d\x50\x89\x89\x23\xe9\x9f\x43\xdd\x5e\x30\x2e\xa5\x03\x70\x45\xbe\x9d\x5c\x96\x0e\xce\xb2\x27\x5b\x6e\xf2\xd9\xd1\x51\xe6\x6d\x77\xa0\xe8\x38\x33\xdb\x2d\x1e\xc4\x56\xff\x9e\x35\xd0\x96\x45\x14\x47\xb5\xb5\x16\x01\x88\xa8\x70\x3e\xad\x65\x78\x50\xf7\x48\xfd\x37\xcc\x07\x01\xcd\x62\x76\x51\xa8\xf3\xa8\x8a\x3b\x86\x2c\x37\x37\x39\x2f\xc8\x4b\x4c\xa4\xd6\x88\x67\x4a\xb6\x53\x5b\xc7\xa7\x86\x37\x82\x5a\x9c\x60\x67\xd0\x5c\xed\x91\x79\xef\x24\x28\x11\x47\x9c\x8c\x5a\x65\x1c\xb5\x12\x88\xc0\x30\x7e\x14\x2e\xa6\x1f\x4a\x59\xe6\xb1\xe2\xb0\xb4\xbb\xd3\x6f\x67\x13\x72\xa9\xdc\xfa\x1d\x15\xf9\xa6\x80\xa0\xb4\x0b\x71\x3a\x39\xe4\x1e\x8c\x01\x8a\x48\xbd\x83\x9e\x8a\x64\x2a\x2a\x94\x62\x0b\x91\xaa\x64\x2f\xdd\x9c\x49\x26\x96\xd3\xd0\xbb\x77\xa2\x8e\xef\x6e\x71\x86\xe7\xf1\x61\x83\x17\x0c\x40\x90\x09\xf4\x2c\x23\xa4\xe0\xbd\x69\x96\xe7\xbd\xac\x37\xcd\x33\xc6\x7a\x19\xeb\x65\x96\xfd\x17\xdd\xcb\x87\xb6\x55\xe2\x34\xc5\x53\x27\xcd\xf3\xa6\x0d\xb3\x20\x8e\x66\x9d\x5e\xc2\x5b\xcc\x6c\x4d\x69\xaa\xac\xd9\x75\x6d\x92\x22\x7a\x52\x17\xb4\x9a\x4e\x0a\x70\x99\xb5\x7d\x93\x2d\x11\x8c\xfe\x14\x89\x0b\x5c\x5f\x80\xb7\xf4\x8d\xb9\x80\xc3\x46\x64\x59\xb1\x46\xee\xbd\x71\xee\x2d\x80\x98\x19\x0c\xb1\x51\xeb\xa2\x28\xf2\x38\x0a\xf7\x20\xeb\xe9\xce\x0e\x4f\xe5\x61\xac\x57\x26\x0b\xae\x5d\x11\x4e\xb5\xaf\x53\x0f\xc5\xe0\x56\x53\x98\x08\x54\x50\xea\xa9\x29\x4e\xdc\x53\xc6\xf0\x25\x01\x71\x51\x33\x3c\x21\x69\xd3\x31\x41\x8b\xd1\x6e\xd1\xe3\x2e\x37\xe1\xab\x33\xe0\x2f\x91\x79\x1f\x0c\xc4\x4d\xdb\x54\x25\x1d\x5b\xe1\xf8\xe9\xa4\x12\xc4\x11\x9e\x29\x10\x22\xe3\xa8\x5d\x16\x29\x83\x4a\x7e\xd8\x32\x3e\xe6\x5f\x6c\x6f\xd0\x0b\xa0\x2c\xdb\x3c\xaa\x00\xfd\x6c\x5b\x4f\x2a\x61\x3f\x2a\xac\x56\xbd\x83\x04\x4a\x26\x6f\xe5\x90\x7e\x28\x79\xf7\xe2\xfd\xcb\xb7\xef\x7f\x38\xff\xf8\x8f\x77\x2f\xce\x5f\xbf\x7a\xf3\xd7\x17\xcf\x9b\xa9\x3f\xbe\x09\xa7\x3f\x7f\xf1\xf2\xe9\x8f\xaf\x3f\x9a\x6b\xd9\x91\x1b\x85\x52\xa3\x66\x69\xdb\x47\x14\x4c\x6e\x95\x0f\x96\x36\x65\xad\x49\xb8\x4f\x66\x3a\x56\x46\xe2\x56\xa8\xed\xcd\x34\xe7\x54\xd0\x9a\xd9\x12\x55\x41\x85\xa0\x86\x38\xc6\x5a\xfe\x5b\x1e\xc6\x87\xf2\x82\x4d\x29\xbe\x40\xb3\xf4\x70\x00\x63\xf5\x82\x4b\xca\x32\x3a\x37\x5e\x47\x00\x18\x23\xc3\x06\xe5\x0e\x51\x55\x19\x25\x21\xc3\xe7\xd6\x8c\xb0\x19\x66\xab\x82\x21\xf3\xb3\xf1\xc0\x0e\x07\x50\x5c\x2e\x95\xa9\x04\xb5\x13\xe8\x0f\x45\xf2\xc8\x68\x49\x5e\x17\x52\x13\x1f\x2a\xa6\x49\x27\xe7\xcc\xd3\xb0\x50\x7d\x6a\x74\x5e\xc0\xfd\x61\x78\x1f\xe1\x39\xfa\xbc\x42\x53\xce\x5e\x63\xf2\x09\xcd\xfe\x81\x51\x2e\xfb\x55\x37\x50\xb6\x82\xc4\x8b\xa1\x09\x4e\xe6\x50\xc2\x87\xa7\x10\x33\xf9\x9c\xa8\x4f\x4b\xed\x36\x80\x62\x46\x66\x71\x64\xb2\x15\x30\xad\x71\x63\x09\x15\x6d\x96\x68\xa8\x46\x3f\x55\xb3\xa6\xa4\xfa\xd5\x01\x78\x49\xc1\x63\xbf\x55\xf9\xec\x0e\x9b\x8a\xb4\x98\x3d\xa7\xc5\x6a\x25\xd0\x8a\xc6\x90\xea\x6e\xfd\xf1\xc1\x80\x85\x7e\x53\xbd\xb6\x6e\x15\x8c\xa4\x56\x92\xf8\x1c\xca\x23\xe4\x74\x32\xd2\xaa\x33\x4e\x9e\xe9\x65\x14\xcd\x4d\x7f\x2a\xab\x1e\xcd\x28\x32\x8a\x2f\xc3\xe8\x3a\xc3\x5c\x7c\x09\xa0\x6d\xfb\x0c\xcc\xb1\x6b\x5e\x81\xa9\x34\x07\xd9\xef\x1f\x36\x06\x20\x3a\x3b\x97\xf6\xf6\xc3\x53\x8d\xfd\x76\x71\xf5\x5c\xca\xa1\xd9\xf0\x7a\x1d\x37\x31\x6f\x77\x68\x87\x03\x43\x1a\x1a\x5a\xe7\x1d\x2d\xa6\x08\xcd\x62\x9e\xfc\xe3\xd5\x8b\xd7\xcf\x9f\x7e\xff\xfa\xc5\xf9\xb3\xb7\x6f\x3e\xbe\x7a\xf3\xe3\x0b\xa8\x0d\xeb\x74\x15\x4e\xf1\xe5\x25\xa2\xf2\x2a\xc4\x11\x33\x6d\x4a\x62\xc9\x30\x32\x43\xe8\x83\x24\x2d\x0d\x91\x9f\x46\xd1\x91\x6c\x4e\xe2\xec\xe6\x59\x91\xe4\x5e\x54\xab\x81\x45\x30\x46\x29\xb6\xb1\xf0\x20\x4f\x8f\x4f\xc1\x51\x4c\xd6\xeb\x28\x02\x47\x26\xd6\x3f\x3f\xa2\xc0\xf0\x4c\xda\xb2\xe0\x7b\xba\xfe\x89\xac\x30\x5f\xea\x45\xa1\xcf\xab\x1c\x4f\x31\xcf\x6f\x24\x16\x87\x66\x91\x52\x9c\xec\xd8\xd0\xfa\xb0\xb5\x59\x05\xde\x89\x31\x61\x91\x69\x6a\x57\xa3\xdf\xb7\x9f\x3e\x4a\xb5\x5e\x47\x4f\x4a\xf2\x89\x14\xd7\xe4\x4f\xd1\x41\x8b\xb2\x72\x00\x52\x04\x23\x97\x66\xea\x7d\x67\x11\x35\x0a\xa3\xef\xe4\x84\xcc\xed\xe8\x5d\xa0\x69\x26\x70\x86\xc8\xca\x99\x10\x8c\x92\xde\xcb\x82\xf6\x96\x05\x15\xe8\xad\xd8\x0b\x09\xf8\x61\x8f\x21\x34\xec\x2d\x38\x5f\x0d\x4f\x4e\x5a\x28\x89\xb8\x15\x27\xb3\x62\xca\x4e\x24\x22\x33\xad\x5f\x0c\x29\x2a\x8f\xf4\xe9\x70\xaf\x9b\xc5\x1b\xc5\xe1\xfb\x50\x14\xc4\x3f\x80\x4f\xdf\x3c\x7b\xf1\x1a\x0a\x60\x08\x86\x9a\x95\x61\xe8\x2f\x09\x21\x1f\x8b\xf7\xf9\x5c\x6a\x7c\x18\x18\xac\x9e\x8f\xe6\x35\xed\xba\x8b\xaa\x6e\x40\x7d\xc4\x32\xfb\x6f\x2e\xd0\x7b\x25\x97\x7a\xee\xe5\xc8\x72\x46\x37\x43\xde\xda\x56\xd9\x36\xb3\x50\x56\xd2\xfb\x1b\xd0\x06\x92\x41\x71\x43\x79\x23\xb7\x4f\x2d\x26\x53\x38\xb7\x92\x1d\x0e\xfd\x7c\x29\xe3\x97\x49\xf2\x35\x01\xa0\x82\x7c\x81\xc8\x10\xc7\x91\xf8\x1f\x01\x28\xcd\x8a\xc4\x6f\xf9\x11\x01\xa8\x95\x4b\x44\x92\xfe\x8c\x00\xb4\xab\x3d\x0c\x59\xa0\x72\x48\x52\xa4\x98\x3a\x0a\x62\x1d\x1d\xc1\xf6\x7d\x88\x69\xfa\x58\xe3\x62\x8a\x18\x6a\x29\x08\x02\x18\x3b\x52\x0a\xc3\xcd\x7b\xf1\xe6\x6f\xc9\xf3\x17\xdf\xff\xf8\xbf\xcf\x3f\x3e\xfd\xf0\xd7\x0f\xa0\xdf\x9f\x16\x84\x15\x39\x4a\xf2\xe2\x32\xd4\x08\x91\x18\x49\xda\x42\x56\x20\x91\x57\xc9\x62\xb3\x4a\xde\xd2\xbc\x3d\xcd\x15\x97\x3c\xef\x56\x21\x8a\x58\x99\x73\xc9\x58\x39\x95\x91\x4e\x5b\x50\xd6\x7d\xb3\x15\x9c\x6d\x96\xd0\x06\x74\x04\x80\xe1\xa3\xae\x36\xe4\x4a\x85\xab\x23\x95\x25\xaa\x3f\x56\xf6\x53\x9d\x25\x5a\x75\xdd\x87\xb6\x7e\x02\x34\xe6\x64\x4f\x36\x2d\x2d\x97\xe3\x59\x96\xe7\x17\xd9\xf4\x13\x8b\xdd\xc2\xe2\xc8\x98\x12\x0a\x21\x52\x5c\xc5\x66\x25\x7d\x25\x6b\xa6\x89\xc7\xbb\xf1\xef\xb3\xad\x64\xb9\x60\xad\x1c\x19\xf3\xbf\x23\xaf\xc1\xf0\x6c\x5d\xad\x4d\x33\xab\x60\x30\x63\xe8\xab\x0e\x6c\x83\x07\xad\x21\xb9\xfc\x54\xf1\x72\x75\x8d\x5c\xb3\xd6\xd0\x13\x7e\x76\x74\x84\x40\x47\xb1\x31\x9a\xc4\x9a\x83\x1a\x58\x19\xa9\xba\xe4\x8c\xf0\xe3\x82\x16\xd7\x3f\x92\x85\x94\x61\x48\xfe\x9c\x3c\x51\xaf\x33\x2e\x46\x5c\xc1\xed\xa5\xc2\x3a\x55\x07\x01\x14\x7e\xbd\x7e\x74\xd8\x01\xb6\xcc\x5d\xa6\x25\xa9\x99\xaa\x8e\x9a\x46\x36\xfd\x74\x51\x52\x82\xa8\x62\x24\x8a\x37\x8e\x8d\xb7\xe4\xd7\x74\xa7\x87\x60\xa1\xd6\xa8\x48\x8c\x34\xf8\x33\xc3\x90\xf0\x5d\x43\x47\x93\x57\x09\xe0\xd8\x71\xaa\xdd\x35\x30\x2a\xaf\xa1\x69\x6a\xd5\xd7\xd3\x61\x10\x3f\x52\xaa\xdc\x16\x43\x3a\x50\x96\x16\xb2\xc6\xa3\x60\x0d\x64\xf8\x75\xb5\xa6\x9a\x1a\xab\x5b\xf5\x71\xb0\xaa\x45\x79\x9d\xba\x1e\x94\xac\x2a\x4b\x29\x05\xcf\xb7\xa1\xa2\x3c\x45\x3a\x9b\x7a\xe0\xff\x54\xfc\x70\x14\xcb\x56\x31\xfb\xdf\x46\x7f\xf8\x79\x41\x50\x87\x4e\xde\xb9\x55\x32\x56\x7c\x4f\xcd\x52\x7a\xfe\xf6\xcd\x0b\x49\x55\xae\xd7\xd1\x8b\xf7\xef\xdf\xbe\x7f\xf1\x5c\xfe\x14\x57\x13\xb1\x72\x89\x6c\xdb\x8d\x97\x88\xd3\x1b\xe3\xaf\x4c\xad\xae\xe2\xb0\x9a\xbe\xb8\x51\x11\x8c\xc1\x98\x4f\xa4\x27\x27\x7f\x14\xd2\xd4\x3e\x25\xda\x13\x00\x91\xf6\xb9\xa3\xd0\x48\x53\x35\xc6\x61\x38\xef\x2f\x4f\x3f\x9c\xff\xf0\xf6\xfd\x8b\xf3\xbf\x3d\x7d\xfd\xe3\x8b\x0f\x91\x36\xdb\xc5\x06\xca\x35\xfa\xc3\x30\xdc\x8c\x99\x7a\x6d\xe3\x2b\x8b\xb5\x69\xc6\x7e\x3f\x0e\x35\xdc\xef\x07\x29\x7c\x8b\x55\xf8\xa5\x13\x97\x60\x5d\xaf\xcd\xf3\x7a\x9d\x51\x12\x47\xff\x28\xca\xde\xca\xc8\xb3\x7a\x59\x2f\xc9\x65\xef\x31\xe8\x89\xc7\xb4\xa7\xc3\x0e\xf5\xf0\x72\x89\x66\x38\xe3\x28\xbf\xe9\x49\xbd\x6a\x4c\x2e\x4f\xd4\xa6\x62\x72\xd9\xc3\x3c\xe9\x7d\x5c\x60\xd6\xc3\xac\xa7\xb0\x44\x81\x40\x97\x84\x95\xab\x55\x21\x10\xc0\x5e\x7c\x51\xf2\xde\x12\x5f\x2e\x78\xef\x02\xf5\xea\x74\x4c\x7a\xf3\x52\x1a\xcc\x5e\x21\xca\xa4\x72\xc0\xbc\xd7\xc2\x38\x41\x12\x19\xf8\xdb\x5e\xa4\xf4\xf0\x54\xba\xd8\x52\x8a\xe5\xd0\x3d\x0e\x5d\x24\x95\xe1\x29\x98\x47\xc8\xfc\x4e\x0d\x6c\xad\x95\x4e\x63\x83\xcd\x9a\x32\x12\xaa\x86\x95\x52\xdd\x2e\xe6\xc4\x11\x16\x4b\x97\xc0\xe8\x33\xf7\xf4\x51\xcf\xb3\xd9\x95\xb8\xb3\xca\x2f\x64\x43\xdf\xd3\x41\xb7\xc4\x05\xd1\x1a\x89\x47\x47\x4e\x7a\x05\x5d\x84\x3a\x8c\xba\xd5\xb0\xdc\xed\xcc\x6d\xdd\xc1\x06\x5e\x17\xc5\x6a\x54\x83\x65\xe9\x04\xb0\x2d\xfe\xf0\x80\x7c\xa4\x82\x62\xb1\x08\x52\x48\x2d\x82\xaf\x38\x6a\x00\x0c\x19\xe2\x1f\xf1\x12\x15\x25\x0f\x61\xe6\x75\x05\xa5\x67\x09\xe0\x29\xa8\xa0\x4e\x1a\x36\xb5\xce\x3a\x5e\x9e\xc0\xec\x10\x30\x88\x80\x47\x70\x40\x2a\x05\x4d\x3e\x21\xbc\x6d\xd9\x5a\xfd\x69\x5a\xd0\xac\x97\xfb\xf4\xe9\x93\xff\x5e\xaf\x64\xa3\xdc\xe1\x96\x82\xee\x52\xdc\x63\xe1\x86\xb6\x79\x47\xf3\xd9\xdb\x10\x50\x1f\x98\x26\x74\xed\x98\xaa\x85\xd7\x21\x30\x36\x32\x38\x82\xd2\x9f\x90\xa8\xd2\xec\xbd\x1c\x20\x9a\x49\xc0\xa3\xa6\x12\x2a\xf6\xac\x20\x1c\x93\x12\xd5\xc5\xc4\xe0\x36\x34\x35\xf4\x55\x04\xf5\x2b\x6d\x5e\xe4\x10\x33\x63\xd8\xca\x79\xff\xe2\xe3\x8f\xef\xdf\x34\xe9\x4b\x0a\x4f\xbd\x07\xd7\xad\xf1\xf1\x2f\xef\xdf\xfe\xbd\x5d\xe1\x51\x67\x05\x45\xc8\x0e\xb7\x71\x02\x60\x37\x8d\xeb\xaf\xf1\x30\xfa\xfe\xc5\x4b\xf1\xde\x3c\x7b\xff\xe2\xe9\xc7\x17\x11\x6c\x80\x76\xab\x1c\xd8\xb9\xb8\x8d\x85\xd3\x82\xc9\x03\x22\x36\xb5\x35\x70\x1b\x7c\x76\xc3\xd0\x49\xda\x5e\xd3\x16\x85\xa1\x8d\xec\x1c\x30\xa3\xaf\x53\xe3\x95\x97\x9a\x17\x30\x70\x85\x31\xe8\xf7\x63\xfb\x4e\x1e\xee\x70\x02\xe5\x53\x60\x0e\x5e\x8b\x8b\x10\x7a\x17\xe1\x23\xe7\xd4\xb9\xd5\xdb\xcc\x2c\xc5\xca\x0a\x35\x72\x80\x47\xd8\xb7\x12\x79\x9f\x5d\xcb\x1c\xff\x5a\xff\x1d\xf3\xc5\x07\x2c\x2e\x98\x1a\xa1\xd1\x06\x1e\xc6\x66\xf6\xb3\xe7\x1a\xdd\x8a\xf1\x98\xb7\xcd\x3d\x00\x14\xc9\x4d\x9b\xa6\x91\x59\xe2\xab\xe2\x93\x9a\x83\xc8\x8c\x71\xd0\x32\x05\x4b\x1b\x99\x51\x2c\x10\x13\x05\xe4\x20\x71\xf7\x08\x2a\x1f\xd7\x0d\x6b\xa4\xc4\x80\x1a\x02\x83\x4c\x43\x24\xe0\xcf\x4e\x55\xe4\x75\x92\xe5\x81\xd9\xa0\xae\xd5\xd9\x5e\xa0\x06\x66\x8d\xbc\x36\xf1\x69\x46\xe3\x4e\xb5\x6b\x2a\xd0\xdd\x89\xe6\xa3\x1c\xb2\xf6\x71\x95\x13\xba\x31\x68\x3e\x72\x79\x44\x31\x90\xd8\xf4\x10\x49\x84\xda\xdf\x3b\x7f\xf8\xf4\xc6\xd8\xc0\x06\x36\xdf\x05\xf4\xea\x2d\x3f\x68\x1f\x26\x0a\x34\x92\x4a\xc0\xad\xe8\xce\x25\x24\xc2\x48\x47\x53\x0a\xe2\xcd\xb0\xc9\xb8\x34\x88\xcd\x2e\x7c\xcd\x03\xd1\x45\xbf\x2f\x1d\x3a\x8b\x31\xf4\xfb\xb4\x26\x9e\x49\x5b\xb2\x87\x1d\xc9\x1e\xf9\xd3\xe9\x88\xa8\x58\x09\x45\x7a\x7a\x56\x3c\x21\x67\xc5\xd1\x11\xc0\xe3\xc2\x8f\x95\x50\x4c\x0e\x6c\xfb\x56\xaa\x34\x8e\x5c\xbe\xe8\xd0\xe1\x80\x82\x89\xf9\xc4\x00\x54\x55\x55\x1d\x14\x81\x85\x4e\x43\x40\x54\x22\x09\xb5\xca\x79\x4b\xdc\x45\x3a\xd5\x48\x14\x70\x24\x6d\xed\x90\x53\xe5\xcf\xcd\x1e\x58\x1a\x3e\xa6\xc4\xc0\x8e\x47\x1b\xcb\xab\xeb\x46\x34\x51\x29\xb9\x48\xb8\xdf\xef\x6c\xdd\xe1\xc1\x56\x00\x40\x9f\x6a\xec\x90\x3f\x4a\x3f\xd0\x2e\x79\x11\x28\x6c\x64\x62\x69\xbb\xac\xd1\x6e\x55\xa7\x06\x35\x4f\x14\xd1\x19\xc4\xcb\xd0\xa7\x88\xf6\xfb\xfc\x50\xf2\xc5\x78\x82\xd9\x73\xc4\x38\x2d\x6e\x24\x27\xd2\xd3\x5f\xb5\xb2\xad\x08\x98\x85\x8f\x7e\xb2\xa7\x01\x05\x4e\x29\x8c\x7e\x8a\xc4\x21\x73\x8a\x91\xae\x62\x07\x1e\x31\xf5\x5d\x8b\x6e\xe9\xcd\x10\x47\x53\x2e\x29\xab\x55\xc1\x11\xe1\x58\xd0\x7b\xbd\x45\xf6\x73\x46\x67\x45\xc9\x7a\x11\x43\xf9\x5c\xb3\xd0\x7b\x79\x51\xac\xa2\xde\x05\xe2\xd7\x08\x91\xde\x2a\x13\x48\xa2\xa2\xc3\xbe\xb3\xc7\x14\x46\xbd\x8c\xcc\x7a\xd3\x05\xce\x67\x2a\xaf\x3e\xce\x05\x8c\x92\xde\xab\x79\xef\xa6\x28\x7b\xd7\x19\xe1\x9d\xa5\xb4\xc9\x91\x95\x0d\x5c\x2f\x1a\xfd\xd5\xa5\x45\x87\xb8\x16\x23\xc0\xde\x2a\x47\x02\xed\x99\x2e\x32\x72\x89\x7a\x3f\xd5\x42\x9c\x9f\x44\xab\x3f\x59\x02\xd2\xc9\xd8\x7d\x50\x9f\x10\x5a\x19\x9b\xf4\x5e\x36\xe7\x88\xee\x3a\x2c\x3d\x1e\xcc\xd5\x28\x4a\x12\x18\x47\x24\xee\x38\xb1\x02\x1f\x71\xdd\x95\x4e\x5c\x48\x67\xa6\x70\xcc\x56\xd9\xbd\xa2\x99\x8c\xdc\x1f\x8e\x5e\x43\x66\x8c\x50\x74\x87\x99\xd4\x2a\x89\x6f\xa5\xbc\x1a\xc1\x39\x19\x72\xa8\x0f\xbb\x7c\x05\x2b\x48\x41\x6d\x6b\x5c\x29\x4b\xa3\xcc\x51\xbb\xda\x66\xfd\x29\xc5\x34\xe6\xf0\x7e\x05\xc3\xf8\x2f\x55\xc1\xba\xa3\xc2\x57\xdb\x78\xb5\x23\x0a\x72\x97\x1e\x57\xf6\x2d\xf4\xb8\xdc\xc3\x71\x57\x33\xcf\xf2\x57\x60\xe6\xf9\x3b\x74\x85\xfc\xeb\x34\xf3\xdc\xfb\x40\xfe\x1a\x3e\x90\xef\xa9\x96\xd9\xd0\xc8\x74\x95\x31\x6d\x28\xf6\xb0\xd9\xcc\x79\xad\xa8\xe4\x69\x14\xa9\x14\xf5\x7a\xa9\x2a\x9e\x51\x4b\x58\x91\x3f\x10\x3f\xc3\x33\x65\xa5\xe9\xe0\x8c\x3e\x41\x72\x87\xb9\xd8\xe1\xfa\x69\xaa\x77\x5a\x4b\x1a\x14\xaa\xa3\x5d\xd8\x2c\x32\x2a\x28\x27\xc3\x4e\xaa\xc7\xa9\x53\xdc\x71\x4a\xb7\x1e\xcb\x2d\x0a\xa8\xf1\x34\xbd\x9d\x6b\x4d\x2a\xf3\xc8\x69\xf9\xe1\x05\x43\xf4\x0a\x19\x71\xa2\x80\xff\x37\x4f\xc5\x93\xd8\x5e\x11\x16\xb6\xd4\xb1\x24\xcc\x26\x63\x1d\xcf\xf7\xb3\x66\xd5\x82\x96\x8b\xbf\xb7\xd7\x04\x51\x8f\x77\x0b\x20\x4f\xd1\x08\x25\x85\xc8\x79\x45\x44\x1b\xb2\x57\x19\x6a\xc1\xae\x9c\x11\x3f\xbf\xcc\xc4\x59\xbc\x49\x8b\xa6\x4b\x03\xbd\x94\x73\x02\xaa\x78\x00\x71\x72\x3e\xcd\x51\x46\xca\xd5\x5b\xa2\x71\x58\xd0\xe6\x18\x1b\xa5\x8f\xa7\x79\x1e\xc1\x5b\xaa\xbd\xfd\xf0\x05\xd2\x90\x43\x60\x3d\x39\xbe\x42\xac\x57\x10\xa9\xf4\x31\x53\x4d\xa1\x59\xaf\xa0\xbd\x92\x50\x44\x66\x88\xa2\x59\x54\x09\x02\x57\x2e\x6c\xf8\x18\x69\x46\x60\x5e\x10\x29\x26\x6e\x1f\x2b\xea\x01\x0d\x13\x2d\x4a\x87\x89\x6a\x86\x66\xa9\xad\x0d\xed\x5e\xa6\x63\x4b\x70\x31\x23\x64\x33\x79\xeb\xf5\x78\x02\x20\x05\x10\x55\x50\x6d\x76\x5b\xb8\x24\x75\x71\xdb\xaa\xab\x40\xfb\x37\x43\xce\x73\xae\x01\xf6\x3f\x8a\x52\x60\x89\xbd\x82\x68\x95\x1e\x47\xc4\x21\x9e\x13\x29\xe2\xc0\xa4\x97\x49\x0c\x33\xa9\x43\xde\xac\xac\xa9\xb0\xba\xa9\x72\x23\xbc\x9b\xca\x43\xca\x97\x8d\xab\x8b\xc4\x92\x1b\x64\x34\x18\x59\xfc\x8e\xbd\x18\xda\x4b\x6d\x65\xde\x10\xc1\xe9\x56\x97\xae\xc7\x1a\x7d\xde\x3c\x94\xd2\x1e\xaf\xf3\x82\xe2\x4b\xac\x0b\xe9\x1f\x4d\x0b\xe4\xfa\x74\xdb\xb4\x9a\x8f\x4e\x75\xb6\xfd\x0d\x3d\x32\xa9\x66\xe3\xd8\x24\x31\xf2\x6d\x6a\xe7\xbb\x68\x9c\x07\xae\xdb\xd0\xda\x79\xdf\x11\x5c\x52\x1f\x5c\xba\x21\x87\x3a\xcf\xb5\x07\x12\x35\xa0\x14\x34\x75\x88\xfa\xd5\x74\x35\xf4\x8b\x0f\x7d\xdf\x07\x86\x40\x6d\xdc\x8b\xd1\x86\x3b\x03\xa0\xc0\x3e\xc1\x10\x41\x6d\x7f\x14\x5a\x95\xd0\x61\x90\xb4\x06\x0e\x9f\x09\x09\xe1\xfc\x24\xe7\x6c\x2a\x75\x59\x5e\x6b\xf2\x04\xf4\x66\xc3\x8c\x24\xef\xb0\xf9\x87\x9c\x56\x0d\xf7\x0e\xcc\x80\xe0\x02\x6e\x82\xc9\xe2\x65\x4b\xd3\xe0\x45\xec\xf7\x63\x12\x16\x17\x1a\x06\xbc\x6e\xa4\xc1\x3e\x28\x2c\x7d\xd8\x50\x9d\xa4\xb5\xd8\xab\x00\xb0\xa8\x2a\xe9\x86\xfe\xd5\x9b\xbf\xbd\xfd\xeb\x0b\x38\x0b\x68\xcf\x2b\xe6\xa3\x9a\x65\xf8\x31\xaa\xe0\x5c\xa0\xf1\xd3\x8e\x28\x34\x02\x83\xd0\x28\xc7\xec\x4e\x51\x68\xa6\xe3\xf9\x24\x9d\xc1\xa9\xeb\x7a\xe9\xca\xa7\x94\xf0\x3c\xa6\xc0\xb7\x0a\xa3\xae\xf9\xd7\xad\xf2\x20\x45\xc7\xd9\x04\x96\xa9\xc0\x82\xc4\x36\x9c\x3b\x84\x99\xe6\x9c\xd3\x73\x7b\x57\x2f\x8e\x8e\xc0\x01\x1f\x97\x93\xf4\x26\x56\xdd\x40\x14\x73\xc8\xe4\xe9\x87\xa5\x6b\xe1\x7c\xd3\x88\xc6\xd3\x80\xf4\x96\xdd\x2e\xed\x9a\xc1\x01\x1d\xc5\xc6\x30\x99\x96\x04\xd8\x9d\x78\x2b\x70\x6c\xb5\xb4\x04\x8e\x6b\x69\x24\x86\xdc\x5e\x1a\x45\x3a\xd4\xa4\x8b\xa4\x54\x14\xdd\x52\xef\x04\x00\x43\x3c\xe6\x13\x1b\xf7\xcb\x55\x44\xd7\xa8\xdd\xb2\x89\xf2\x2d\x5a\x09\xbe\x0d\x49\xe6\xd9\x90\xe0\x86\x0d\xc9\xc2\xb1\x21\xb9\x65\x88\x7b\xde\x04\xac\x54\x4e\x0c\xf3\x83\xc0\x66\x3e\x88\x12\x9a\xb5\xea\x27\x6e\x32\x4a\x0e\x5a\xe8\x1b\xa1\x69\xdb\x07\x40\x53\x3b\xe0\xe3\x02\xf5\x04\x45\x5d\xcc\x7b\x7e\x43\x31\xb0\xaa\x01\x59\x8f\xad\xd0\x54\xd0\xf7\x9a\xa9\x63\xa8\xfd\x1e\x16\x88\xc8\x8a\xa2\x69\x26\x39\x60\x64\xd6\xbb\x2e\xc8\x77\xdb\x14\x00\x58\x50\x03\x20\xe9\xbd\x53\x7c\x27\xd5\xd9\x8d\x7e\xaf\x9d\xce\x08\xe3\x28\x9b\xc1\x1e\x4a\x2e\x93\x5e\xcd\xbb\xe3\x30\x1a\xca\xa2\x71\x92\x24\xc0\xf8\xa8\x88\x41\xc3\xd7\x63\x5c\xb3\x96\x42\x0b\x07\x23\xc9\x3d\x82\x57\x5a\x40\x96\xcd\x66\xaf\x31\xe3\x88\x20\x0a\x35\x2a\x2c\x7d\x3a\x48\xd5\x25\xc8\xad\x15\x70\x04\x0f\x4f\x37\xd6\x52\xb0\xe6\x85\x57\xd7\x41\xf6\x1a\xb5\xdf\x2a\x14\xd9\xd6\xb6\x38\xb3\xdf\xe5\x00\x54\xd0\xd5\x08\xf0\x21\x52\x3d\xd0\xb4\xf1\x5b\x60\x60\xcd\xc9\xb8\xde\x34\x9b\xf3\x6c\x9c\x36\xa3\x9b\xfd\xb6\xb3\xeb\xe6\x6c\xd3\x60\x6a\x3d\x8c\x66\x4e\x6b\x30\xad\xe5\x6b\x0d\xc9\x52\x15\xdf\x9a\x6e\x32\x1d\xa5\x5c\xf7\x1c\xc0\x40\x5a\xd8\xe9\x53\xd2\x3e\xea\xea\x60\x1b\x8c\x47\xe2\xf3\xa4\xe0\x3d\x86\xb8\x40\xef\x31\x67\x06\xeb\xbf\xc2\x59\xef\x3b\xff\xc9\xf8\x2e\xe9\x7d\x40\xc8\x5e\x3b\x2c\xe9\x01\xa5\xa3\x33\x2f\x68\x6f\x86\x78\x86\x73\x96\x44\x92\x54\xdb\x02\x94\x42\x86\x6d\x3a\xdc\xc6\x60\x17\x86\xa3\xc7\x1f\x7c\x58\x77\x1d\x4d\x5b\x99\x1c\x67\x0c\x1a\xf5\xef\x1f\xc4\x88\x2c\x4e\xd4\x69\xfc\x72\xc9\x7d\x5b\xc5\x81\x63\x69\x18\x2e\x6a\x2c\x90\x65\xc9\x57\xb3\x3c\x64\x28\x53\x9b\x3e\x9a\xc6\x42\x06\x24\x87\xf6\xed\x73\x05\x18\xc6\xe8\x40\xa7\x1b\x03\x48\xb1\x17\x5d\x76\x39\xbb\x75\xd7\x0b\x76\xe7\xd8\xc8\x84\xba\x1d\x45\xca\x2a\x3c\x1a\x46\x78\x96\x23\x69\x3e\xe3\xa3\xfe\x9a\xac\x57\x38\x9f\xfc\x41\x24\x45\xa0\xac\xbf\x6c\xb9\x08\x40\xe7\xf0\x0c\xfd\x65\x07\xd2\xc1\x87\xac\x53\xe3\x61\xae\xf1\x3b\xf0\x7c\x8b\xb4\xcb\xf9\x0d\xd5\x7e\x4a\xda\x25\x6b\xb7\x0e\xa0\xe9\x9e\x24\xd0\xbd\x1b\x2a\xc0\x73\x5c\xd2\x2e\x6b\x6d\xbc\x81\xe7\xd0\xa4\x5d\xd0\x58\x70\x03\xdf\xcf\x49\xa0\x45\xa3\xff\x09\x9a\xfe\x4f\xda\x65\x1d\xa3\x6e\xe0\x7b\x46\xf1\xcb\x7a\x7e\x2b\x00\xac\xf7\x60\x38\x80\xf6\x70\x0f\x07\xb0\x76\x5c\x33\x1c\x6c\x74\x60\x82\xd6\xeb\xdb\x0a\xd2\x94\x27\x8a\x63\x21\x55\x47\x28\x62\x88\x6b\x9d\x50\xc9\xe8\x4d\x6c\x13\x5d\x16\x38\x02\xea\xf1\x05\x92\x0e\x8c\xa3\x16\x4e\x5e\x57\xa7\x00\x12\xab\x01\x6e\xbb\x89\x81\xf1\xd5\xb4\xab\xa9\x88\x47\xe8\xba\xe2\xc4\xb6\x26\x5f\xc3\x03\x99\xbc\x02\x35\x61\xac\xce\x7f\x3d\x94\x96\x9d\x08\x43\xdc\x09\x9f\x29\x1d\xe9\x6c\x72\x97\xd3\x74\xa8\x13\x72\xba\xf3\x30\x2e\x75\xaa\x86\xdd\xff\x36\x0f\x9a\xd7\x19\xe6\xc7\xf3\x82\x7e\x0d\x5b\x67\xdf\x11\x93\xe6\x46\xd3\xdf\x18\x37\xda\x35\xd1\xfd\x86\xa2\x2b\xdc\x8c\x00\x2f\xb0\x1d\x1b\xfc\x9d\x9a\x70\xb3\x24\x15\xb8\xcf\x01\x71\xe2\xda\xa6\xee\x8f\xf5\xfa\xf0\x14\x92\xc4\xa5\x49\xd3\xc3\x81\x31\x81\xc1\xa4\x47\x24\x31\x6e\x68\x54\x49\x81\x77\x3d\xf5\x24\xf9\x84\x6e\x20\x71\x69\xc5\xa2\x19\xb9\xb5\xdf\xc7\x31\x72\x30\x15\x0e\x20\x95\x69\x8a\x7b\x18\x90\xfb\xd5\xdb\x75\xe8\x44\x17\xd7\x51\xff\x78\x78\x25\x25\x85\x25\xc0\x11\x45\x4c\x6a\x26\x4b\xf1\x0c\xc2\x7c\x81\xa8\xa0\x61\x44\xed\x5e\x41\xbd\xa5\x3d\x70\x86\x65\x84\x66\x1a\xd3\x90\x9a\x2f\x0e\xc9\xe7\x1c\x92\xa1\x46\x69\x90\x4b\xc6\x37\x49\x7c\x81\xb1\xf1\x7e\x5f\x89\xa2\x3b\xc2\xcb\xc6\xcc\x74\xaa\x40\x8b\xea\xeb\xed\xbc\x29\x05\xac\x39\xb3\xe7\x72\x44\xe7\xe7\x29\x87\xf2\xe8\x79\x6d\x97\x81\x28\x8f\x9d\x31\xb7\xde\xa3\x79\x8e\xa6\x7c\xbd\x3e\xd4\x5f\xf5\x35\xd0\x82\xb6\xc3\xd3\x03\x3c\x8f\x5b\xb9\x09\x5b\x64\x4b\xaf\x48\xe0\x72\xbd\xa3\xc5\xe7\x1b\x53\x48\x45\xe5\xd2\x93\x78\x9e\x71\xd4\x29\x98\x6c\x75\x16\x8b\xe2\x70\xec\x1b\x95\xc8\x20\xcd\x87\x03\xad\x28\x65\xef\xf9\xe1\x69\x55\xd5\xbe\xbd\x1b\x1c\x0a\x0a\x49\x3a\xd5\xb2\x48\x6e\x38\x77\x53\x65\x9d\xe0\x02\x80\x03\x9a\xb6\x07\x41\x6a\x3a\x05\x62\x50\xa1\x9c\xa1\x1e\x4d\x49\x98\x92\x37\x03\xd0\xfe\x0a\xa8\x7b\x35\x72\x77\x3f\x0f\xf9\x7a\x6d\xa4\x1b\x87\x69\x4a\x63\x0e\x5c\x40\x55\x9f\xfc\x51\x43\xea\xac\x70\x67\xa9\x67\x5e\xdf\x84\xf7\x68\x8e\x04\x54\x36\xd7\x41\x74\xde\x5b\x64\x4c\x51\xf0\x88\xf4\x4c\x68\x25\x86\x66\xbd\xe3\x9e\x14\xb9\xc4\xc0\x2b\xa1\x2d\x68\xeb\x50\x48\x55\x8c\xc0\x90\x07\xe3\x8d\xc6\xd3\xf0\xd1\x1d\xd5\x21\x9f\x9d\xd4\x20\x54\xae\x4f\xf3\x7a\x1d\xac\x25\x20\xeb\x7d\x85\x7d\xe2\x09\x7b\x59\x50\x89\x06\x05\x62\x9e\xca\x25\x93\x1d\xd4\x65\x25\x59\x9a\x06\x6f\x9e\x28\xad\x95\xb7\xeb\xf2\x96\x8f\xd4\x54\x7d\x77\x2a\x2d\x74\x9a\xd2\x5c\x99\x7b\x23\xc9\x62\x0c\x91\x91\xd8\x97\x31\x06\x8d\x38\x2e\x9e\x93\x06\xad\x26\x8e\x01\x8c\x79\x4a\x9d\x50\x54\xa0\x36\xc2\x4a\x11\xe4\x09\xc7\x4b\x44\x5f\xcd\x94\x11\x10\xb7\xce\x6b\x63\x0c\xc7\xb7\x9f\xd0\xcd\xb0\xa5\x2e\x67\x62\x67\x7a\x3a\x73\xe2\xc2\x2a\xb5\x40\xdd\x5c\xc0\x98\x40\xe6\xdb\xce\x1b\x66\x5f\xdb\x74\xe2\xb4\xde\x5a\xad\xec\xb8\x45\x2d\x0e\x54\x55\x05\xf5\x04\x9a\xca\xb6\xcd\x19\xb8\xa6\x0f\x9a\x39\xec\xce\x45\xf3\xda\xdc\x85\xaa\xaa\x09\x80\xb8\x8a\x79\x62\x15\x3b\x81\xcb\x23\xde\xba\x5b\x46\xdd\xa8\x08\xec\x57\xd1\xd8\x2f\x75\xe5\x53\x04\x8b\x9a\x39\x93\x72\x58\x24\x73\xed\xca\xac\x48\x66\x78\xa6\x4c\x42\x65\x6c\xc3\xa4\x64\x88\x3d\x7f\xfb\x83\x71\x2e\x2a\x92\x4c\x2c\x9e\x67\x4a\x1c\x29\x13\xef\xbb\xd9\x8e\x82\xa4\x96\x37\xd4\x33\xc7\xe0\x96\xb8\xc3\x19\x40\x12\x52\x77\x8e\x01\xdc\xba\xe7\x18\x54\x30\xf0\x54\xc8\x2e\x0b\xad\x5a\x35\x53\xb2\x07\xc3\x76\x1b\xa9\x8d\x6b\xcc\x5f\xbb\x36\xec\xa8\xd3\x60\x7b\x59\xf9\x6d\x50\xc7\xda\x6d\xc8\xda\x98\xd5\xbf\xbb\xda\xd2\x6a\xe0\xad\x4d\xf0\x47\x56\x90\xce\xb1\xdc\xe5\x30\xeb\x4a\xc6\xb8\xcc\x5b\x0c\x6f\xc0\x14\x2d\x8b\x2b\xb4\xd3\x62\x28\x16\x81\xdd\x57\xc3\xaa\x68\x4c\x48\x73\x9e\xcd\x74\xe6\xf3\xae\xe6\xcc\x47\xaa\xee\x75\xe8\x36\x2d\xee\x73\x9b\x60\x20\x2a\xf1\x6e\xea\x7b\xdf\x17\x85\x98\xc3\xdd\xae\xe3\x27\x24\xbd\xe5\x26\x2b\x8a\x66\x78\x9a\x71\x6b\xca\x1b\x22\x57\xb2\x51\x16\x7c\xd6\xd2\x34\xcd\x2a\x58\x24\x9a\xc1\x48\xbf\x2f\x4a\x32\xfb\xaa\xf7\xd3\xb4\xfc\x92\xa4\x2d\x35\x65\x47\x9b\x56\xcf\x4c\xa1\xe8\x12\xf1\x21\xed\x99\xc5\xb8\x8e\xd8\xba\xfd\x02\x0b\xac\x0b\x36\xc6\x10\x03\xeb\xd5\xc4\x61\x79\xc7\xce\xc9\x51\x35\x24\x9d\x20\x1f\x25\xbf\x3e\xf0\x13\xf4\x72\x0d\xee\x7e\x45\xbc\x16\x34\x67\xa1\xee\xc6\x1a\xcb\xa8\x5b\xf2\xc5\xe3\x7c\xb9\xe1\xb0\x6f\x26\xaf\x75\x7c\x8a\x13\x35\xad\x63\x19\xfe\x67\x8b\x8e\xa7\x09\x69\xf1\xd5\xdd\x8a\xa9\x31\x28\x0f\xff\x29\x6d\xf3\x67\x7d\xea\xdd\xd8\x36\x0c\x6c\x48\x73\xba\x5e\x3b\x3c\x1d\xe5\x7b\xad\x15\x33\x00\x18\x0b\x68\x35\x57\x57\x60\x32\xa6\xbe\x82\xcc\x77\x75\xc1\xef\x7a\x1c\x2d\x57\x79\xc6\x51\x4f\x4d\x5f\xb2\x9b\x94\xf9\xc5\x2c\xaa\x26\x4a\xb3\xd6\x88\x19\x55\x87\x89\x2a\x19\x53\x97\xdb\xb1\xc5\x4b\xb5\xd9\x0e\x2b\x8f\xf9\x2a\x7b\xe1\x2e\x5c\x8d\x13\x76\xae\x8f\xed\xbc\xfe\x12\xd5\xee\x83\xf9\xea\x06\xba\xf7\xf4\xeb\x2e\x5b\x33\x3a\xcd\xb7\x0a\xb5\x82\xad\x86\x6c\x21\xff\x92\x5f\xab\xfe\x27\xbd\xfb\xdc\xd1\x57\x99\xf8\x2f\x29\xdc\x31\x9e\x1b\x0d\xea\x4e\x85\x66\x7c\x7f\x85\x66\xad\x9a\x74\x77\xb5\x66\x18\xd2\x69\x1e\x79\xca\xcc\xc3\xaf\xa0\xc9\x3c\x52\x73\x33\x51\x84\x5b\x0c\xbe\x07\xd0\x0d\x2e\xbe\x89\x06\xfb\xd7\x11\x08\x66\x41\xe0\xd4\x8a\xf8\x46\x52\xe9\xca\x18\xab\xd0\x33\x45\x20\xf4\x0c\xd6\xaa\x57\x56\x4d\x84\x4b\xc7\xfd\x5e\xac\xe6\x6c\x33\x98\x93\x86\x7a\x5f\xea\xfd\xb6\xb6\xe5\xf8\x12\x03\x0e\xed\x88\xf7\xae\x71\x15\x37\x33\xf8\xbf\xd4\x17\x2f\xc4\xb0\x80\x19\x64\x5f\x8e\x8a\x88\x39\x06\xdc\x92\xe6\xc1\x68\x7b\xea\x15\x7d\x29\x48\x53\xb6\xca\x33\x29\x98\x4c\x6b\xb3\x41\x04\xa3\x5e\x2c\xdd\x5d\x47\x00\x52\xa9\xf5\xe3\x69\xd5\xe9\xda\x9e\x3e\x5d\x43\xdd\xad\xa1\x53\xb9\x41\xa1\x32\x1e\x40\xd6\x0a\x92\x03\xb4\xe6\x30\xc4\xb5\xf3\xda\xa6\xc0\x15\x59\xed\xbc\x0d\xaa\x79\x6d\xbd\xbc\x0a\x38\x71\x09\xcd\x54\x52\x04\x83\xfc\xb8\x98\xeb\xf9\x9b\x4d\xa8\x61\x28\x80\xbc\xd2\xeb\xae\xfc\xef\xb6\xd4\x77\xf3\x60\xa0\x40\x67\x46\x76\x51\x77\x5e\xc8\x66\x18\xa0\x1d\x16\x12\x6d\x5d\x48\xee\x2d\x49\x78\x1d\x90\xdb\x40\x68\x31\x50\xd5\x29\xe4\x88\xb8\x72\xee\x10\xc1\x5b\x5f\xad\xef\x12\x05\xdd\x40\x26\xba\x7c\x55\x75\x0b\x4e\xa2\x79\x41\xd1\x15\xa2\x3b\xb7\xa9\xcb\x6f\x6c\x93\x66\xd7\x1f\xef\x38\xd4\xba\xca\xc6\x96\xad\x27\xe1\x1d\x1b\x26\xb5\xef\xe1\x8d\xed\x4a\x8a\x60\xa7\x16\x8b\x24\xcb\xb7\xb6\x65\x43\x6c\xee\xde\xa4\xae\xb2\xb1\x65\x15\x5c\x73\xc7\x36\x45\xe1\x2d\xbb\x24\xe0\xfc\x8e\xad\x89\xc2\x1b\x5b\x73\x39\xdd\x3b\xb6\x9a\x79\xec\xf1\x5d\x5a\x97\x90\xe7\xae\xad\xcb\x4a\xbb\xb4\xfe\xce\xbe\x8f\x77\xeb\xc0\xd4\xab\x2a\x13\x36\x54\x21\x0e\xe7\x0c\xf1\x67\x79\xc6\x18\x9e\x3e\x47\xd3\x42\xfb\x0e\x72\xf2\xb4\x52\x81\xcd\x6c\x44\x3c\xf5\x65\x68\x3d\x2e\xfd\x5e\x98\xde\x2d\xf3\x49\x82\x18\xa9\xe4\xa9\x3e\x94\x77\x8c\x86\xda\x02\x02\x1a\xf9\x50\xd5\x5c\x45\xd5\x03\x6b\xcf\xc6\x05\x28\xde\x86\x87\x28\xe9\xcd\xcf\x82\xe6\x6a\x65\x6f\x41\x50\xbe\xb1\x12\x57\x9d\x70\x2b\x35\x86\x02\x03\x80\xf5\xf8\xdd\x0d\xad\xb6\xcc\x5a\x23\x56\xf7\xa7\x2e\x63\xfe\x5b\xd5\x34\xa0\xbf\x41\x61\x39\x69\x08\xb4\x3d\x21\x5c\x4c\xbe\xaa\xb0\x1c\xef\x85\xe5\x1b\x85\xe5\x59\x53\x58\x9e\x7d\x4b\x61\x79\x11\x10\x96\x17\x2e\xe7\xec\x90\x7a\xc2\x72\x41\x45\x07\x85\xe5\xf4\xbf\x57\x58\x4e\x3d\x6d\x16\x7b\x74\xb3\x07\x14\x96\x37\x55\x4d\xbe\x91\x2e\x52\xf9\xab\xd0\x45\xca\xdb\xba\x48\x65\x40\x17\xa9\x34\xba\x48\xf7\x78\x0c\x31\x7b\xa1\xc2\x43\xaa\xba\x21\x65\x03\xd4\xef\x07\x9d\x11\x25\x05\x09\xbf\x18\x28\x29\xe6\xf3\xf5\xba\xa3\xce\x9d\xab\x34\x45\xa4\x1d\x0d\x04\xe4\x87\x52\xdf\xa1\x65\xf3\xda\xd2\x78\xd8\xd9\x2b\xd0\xe3\x11\x39\x7e\xac\xbc\x02\x3d\xf6\xbc\x02\x3d\x6e\x78\x05\x92\xe6\xa1\xc9\x35\xce\x73\x63\x67\x5b\x3b\x41\xf0\x33\x12\x63\xeb\x24\xa5\x57\x8c\x21\x76\x6e\xec\x69\x29\x3b\x3f\x37\xf1\xe9\xbc\x3a\x90\xa5\xe3\xc9\x81\x97\x94\x06\x0c\x0e\x78\x3a\x80\x34\xb5\xbe\x80\xf9\x13\x7a\xc6\x8f\x8e\x00\x1b\xf3\x49\x0c\x0e\x32\x0d\xd2\x90\x67\x21\x76\x97\xb1\xa5\xac\xba\x4b\x71\xe5\x50\xd5\x05\xee\xbc\x8e\x49\xcc\x05\xb0\x05\x72\x00\x9a\xfa\xec\x52\x7b\xb9\xd1\x6a\x2f\x34\xbb\xee\x2a\x72\x59\x17\xf9\xb8\xb9\xb1\x73\x5d\xd2\xca\x31\x3f\x16\xef\x14\x07\x2a\xbd\x86\xc8\x7a\x57\x4b\x91\xa1\x5f\x53\x54\x0b\xca\x52\x94\x9c\x1b\x5c\xdc\xb1\xcc\x6f\x7a\x39\xf2\x92\x94\x0b\x3b\x2f\x49\xaa\x88\xf8\xf5\xb4\xc8\x32\x45\x4d\x01\x6b\x8a\x5a\xe2\xc4\x14\x69\xab\xc0\x14\x79\xe6\x15\x29\x4a\x2c\xab\xd7\x73\x14\xe0\x1d\x15\x03\x69\x90\xf4\x58\x79\xcb\x8c\x11\x59\xed\x3b\x54\x5b\x98\x28\x17\xf6\xa9\x8d\x71\x2c\x40\x93\x92\x02\x47\x9a\xe7\x11\xb5\xa4\xbf\x5a\xb2\xe9\xfa\xa7\xf7\x9d\xcd\x23\x25\x7f\x44\xe2\x2d\x77\x87\x3b\xd5\xfa\x46\x9e\xcb\x9a\x96\xfb\x12\xc5\x66\x46\x9b\x5f\x83\x82\x5c\x21\xca\x7b\x16\x2b\x12\x68\xa1\x44\x0f\x79\xa1\x65\x01\x02\x35\x4c\x2d\x67\xf8\xa0\xbe\x3d\xa7\x67\xfc\x49\x13\x20\xc8\x1b\xd4\x74\xcd\x33\xe6\xf2\xc6\x2b\x9c\xb5\xb6\x73\x14\xef\x70\x8f\x82\x16\xf3\x7f\x91\xb1\xb7\xd7\xc4\x32\x71\x24\x36\x24\x88\xaf\x7e\x3f\x46\x63\x32\x49\xe9\x98\x4c\x6c\x94\x41\x54\x1d\x34\xf6\x75\x2e\x17\x67\x96\x46\xe7\xda\x9b\xdb\xb9\xc2\xb5\xcf\xcf\xa3\x03\x7b\x16\x66\x76\x1e\x8b\x74\x1c\xfd\x59\xde\xcb\x93\x63\x4c\x38\xa2\x24\xcb\xd9\xc9\x65\x8e\x97\x4b\x44\x0d\x83\xb8\xbb\x84\x25\xc8\x3a\x7e\x5b\x49\x9a\xb2\x86\xb4\xd9\x0b\xbe\xcc\x2f\x32\xca\x4e\x3e\xa1\x9b\xeb\x82\xce\xd8\xc9\x54\x89\x0b\x8f\x1b\x05\x69\x51\x72\x4c\x2e\xef\x5c\xa1\xb3\xdc\x04\xae\xd2\xc1\xd9\xea\xc9\xc2\x6c\xd9\x4a\x00\xe9\x79\xbc\x18\xaf\x26\xd8\x58\xfc\x9e\x9f\xe7\x45\x36\x93\x47\xf1\x12\x33\x4e\x6f\xc0\x6d\xbd\x76\x69\xab\x8c\xd4\x2b\x91\x2d\x00\x5d\x4a\x39\xe5\xac\x02\xf7\x51\x3c\xb6\xd3\x73\x95\xac\xf6\xa4\x79\x89\x55\x09\x9b\xaa\x0a\x05\xae\x7f\x44\xd0\x67\xee\xe7\x29\x60\x11\xc9\x23\xef\xe7\x68\xc8\x12\x69\xe9\xd1\x41\x00\x10\x69\xd1\xb5\x0a\xce\x64\x5c\x67\x34\x21\xd8\x41\x08\xaa\x2d\x65\x95\xab\x0e\xd0\xd1\x82\x1b\xcd\xf9\xa5\xc1\x54\x15\x51\x9f\xdb\x48\xd5\x89\xb7\x70\x69\x3b\xc9\xa9\x10\x00\x43\x32\x08\x45\x5b\xb9\x42\xf2\x82\x35\x9a\x1b\xa3\xf4\xda\x28\xce\x88\xe2\xa1\x27\x50\xeb\x6d\xb4\xf7\xa8\xdd\xb4\x5f\xd6\xee\x78\xa8\x60\x0d\xe5\xea\xe7\xe3\x4a\x2e\xea\x8d\xff\x36\xc5\xc4\x68\x16\xf1\x14\xc7\x04\x34\xe2\x67\x49\xc8\x63\x03\x8b\xe9\x98\x62\x00\xc6\x34\xe5\x9e\x5a\xd0\x92\xa5\x08\x52\x5f\x9d\xd2\x81\xdd\xc4\x2c\xda\xd6\x59\xd6\xc6\xc1\x6d\x5d\xca\x5c\x7a\xfe\x0f\x6b\x4e\x72\xa8\x4e\xaf\x40\xc0\x54\x80\x0b\x50\xe9\x6d\x5e\x36\x57\x79\xc3\xca\xdd\x4b\x15\x92\x54\xf1\x95\x31\x1e\x24\xe8\x3a\xde\x79\x81\x2d\x6e\x50\xaf\x2c\xef\xb0\xa5\xbf\xc7\x52\xde\xf5\xc0\xc8\x69\x88\x23\x63\x70\x8f\x0b\x39\xec\x4b\xd7\xee\x9b\xb7\xee\x9e\x6c\x2b\xe5\xe2\xd9\xb0\xe8\xcb\xa5\xac\x78\xfe\x6b\x3b\x69\x1d\x7e\xa9\xbf\xfa\x21\x13\x04\x02\x35\x3d\xed\x7e\xc0\xec\x7a\x5d\xd7\xcc\x98\x40\xcc\x1f\x9a\xde\x06\x1c\x61\xab\x40\xa0\x72\xf4\x4a\x5e\xaf\xe1\x76\x9a\xd2\x11\xb7\x08\x12\x01\x43\x6e\x82\x4b\xc8\x38\x0b\x32\xce\x6b\x63\x25\x63\x0a\x07\x8e\x44\x4d\x8b\x50\x1b\xd0\x94\xac\xd7\x8d\x24\x68\x8b\x06\xd9\x98\xab\x9b\x13\xf1\x27\xcc\x9b\xd5\x99\xa2\xff\xaf\xaf\xd5\x65\xd8\xb1\x4e\xab\x44\xf1\xb6\x6a\x0e\x8a\xc3\x18\x19\x39\x2c\xaf\x21\x8d\x11\x00\xeb\xb5\x42\x0d\xad\x27\xfb\x9e\xf4\x06\x7b\xd8\x54\x50\xe9\xf7\xad\x07\x97\x44\xf9\xce\x74\xb5\x56\x12\x31\x43\x71\x2f\x1a\x5c\xa6\x1e\x8a\xb5\xdc\xb8\x7b\x50\xa4\x31\x28\xe2\x0c\x8a\x98\x1e\xc8\x81\xf2\x7a\xa1\x79\xeb\xa5\xc1\xd2\xf1\x3c\xc6\xfd\x7e\x5c\xa6\x45\x22\xd1\xb3\xb7\x73\x51\xff\x4f\xe9\xc0\x54\xcc\xc6\xa5\x44\x38\xfd\xf9\x10\x20\xc7\xc3\xac\x26\x01\x80\x58\xe2\xa2\x65\x4d\x03\x1e\x1f\x97\x7f\x4a\x07\x67\x80\x8d\xcb\x49\x8a\x62\xf1\x4f\x4f\x45\x71\xba\xf0\x3c\x6e\x2d\x09\x01\x40\xb4\x29\x57\x43\x95\x3d\x30\x65\x89\xcb\x97\x79\x9e\x71\x24\x4a\xa2\x6b\xf9\x19\x93\xe4\x52\xdd\xdf\x18\xa8\x1a\xb7\x2c\xbd\x55\x96\x04\xb9\x55\xd0\x2b\x68\x9c\x0b\x34\x99\xec\x86\x26\x13\x98\x83\x7e\x3f\x3a\x3f\x17\xcb\x9d\x27\xac\xbc\x50\x0a\x38\xf1\x00\x3e\x12\xf8\x33\x1b\xe7\x93\x14\x8f\x50\x4c\xc6\xb9\x99\xd9\x50\x7c\x83\x4a\x2c\x69\xa1\x68\x50\x02\x60\xa6\xbe\x58\x2d\x77\x65\x95\x38\x67\x90\x8c\xc6\x13\x6d\x3e\x6c\xbe\xb4\xf9\xc3\x6f\xc8\xea\x6f\xc3\x7d\x97\x57\xfa\xdb\x1b\xd0\x87\x8c\xe3\x45\xf7\x72\xc1\xab\xa0\x0a\xea\x6a\xa3\x3a\x8b\x05\x57\xbb\xc0\x28\x41\xea\x7e\xd9\x4c\x3a\x2b\xa8\x41\xec\x28\xbd\xd6\xab\xb1\x51\xc8\xf8\xcc\x6e\xca\x4e\x8d\x52\xa7\xd1\xf6\x2a\xce\x32\x9e\x1d\x2f\x8b\x19\xca\x8f\xe7\x34\xbb\x94\xb8\xcc\x89\x54\x8c\x3b\x31\xbf\x43\xcb\xbb\xa1\x9a\xf4\x05\x20\xc3\x92\x6d\x2a\x5b\x37\xbe\xa9\x54\xc9\x71\x7e\x62\x20\xca\x71\x31\x3f\x16\x07\x76\xeb\xde\xf9\xf2\x16\x48\x20\xae\xd5\xef\x6b\x7d\x72\x04\x23\xe9\x69\x2a\x02\x90\x39\xc9\x19\x8c\x18\x2f\x28\x8a\x00\x2c\xfd\xd2\xb2\x6f\x00\xf3\x46\x1b\x2b\x2e\x7d\xfe\x00\x38\xf5\x33\x88\xf4\x2d\x50\xbb\xe8\x5e\x66\x2b\x07\x69\x21\x70\x6e\x70\x59\xaf\x79\x01\xc5\xe3\x01\xa4\x09\x66\x2f\xf5\x32\x00\x09\xc8\x8b\x94\x68\x32\x5f\x65\x6b\xb2\xfc\x07\xb1\x62\x2f\x0b\x0a\xe2\x02\x08\x94\x67\x5a\xd0\xd9\xf3\x8c\x67\xb5\xc3\x2a\x70\x30\x5b\xaf\x65\x1d\x86\xb8\x69\x53\x66\x81\xb8\x80\x19\x9c\x2a\x48\x1f\x17\x29\x1f\xcf\x27\x60\x84\x47\xcd\xc2\xa2\x3d\x51\x96\x80\x3a\xb4\x84\x63\x38\x2e\x33\x0a\x35\x2c\x75\x73\xeb\x91\x33\x58\x8a\x2e\x60\x0e\xeb\x67\xb3\xa8\xc0\xd7\xd2\xac\xc3\x29\x6f\x3a\x38\xbc\xe5\xd6\x8b\xa5\xde\x1a\x6d\x08\x4f\x0a\xba\x94\x02\x5b\x31\x9d\x10\x80\xd5\x36\x15\xcd\x38\xb0\x52\x15\x48\xfa\x24\x40\xca\xb5\xcd\xb9\x9a\xe4\x07\x92\xad\xd8\xa2\xe8\x8c\x9b\xea\xef\xb7\x27\xfa\xf0\x1b\x88\x75\x74\x30\x19\xda\xfe\x99\xf4\x23\x3d\x7b\xca\x39\xc5\x17\x25\xf7\x1d\xc7\x84\xdb\x45\x49\x47\xd5\xd8\x86\x1d\x9b\x3d\x2b\x96\x4b\xcc\x03\x81\xf1\x36\xb9\xaa\x54\x46\x30\x05\x7d\x91\x4d\x5d\x36\xad\x0a\x87\x93\xd4\xcd\xc6\xa8\xdf\x47\x63\x3a\xd1\xdd\x65\xb3\x6c\xc5\x11\x7d\x8e\x67\x2a\x8e\xf0\xd7\xe9\x54\x76\xd9\x68\x5a\xca\x88\x40\x05\x17\x19\x7b\x8e\x29\xbf\x71\x56\xad\xe9\x8b\xe4\xcf\x28\x9b\x2e\x92\x76\xc1\x08\x46\x5a\xbd\x2b\xcb\x75\x44\xc6\x4e\xcf\x0c\x1b\x86\x6d\x43\xe3\x3e\x25\x37\x71\x14\xe8\x46\x82\x5e\x5a\x28\x23\x95\x0d\xbb\xbb\x7d\x6d\x14\x8b\x2f\x8e\xda\x8d\x45\xa0\x82\x0c\xd1\xb6\x5a\x82\x3b\x0b\x53\xdd\x16\x14\xb5\x28\x5a\xe5\xd9\x14\x3d\x53\x47\xbd\x15\xfb\xa8\x69\x8a\xd3\xbc\x18\x45\x6a\xec\x91\x34\xa2\x89\x20\x3a\xe2\x00\x52\x47\x73\x55\x77\x21\x9b\x2c\x40\x05\xb3\xd9\xcc\x80\x89\xd0\x65\x54\xdc\xe6\xd9\xcc\xb2\x61\xc5\x20\x97\xc5\x15\xda\x5a\xc9\xd8\xc3\xd8\x7a\x3e\x4c\x0a\x78\x0a\x69\x4e\xcc\x3c\x0b\xd4\xcd\xa9\x9f\x05\xd2\xaa\xa0\x5f\x06\x9c\x36\x01\xa0\xa2\xa8\x3d\x7f\x7c\x25\x5b\xe8\xb1\x61\x50\x41\x47\x58\x72\x8f\xa3\xd0\xbe\x26\x12\x1c\x68\x19\x8b\xbc\xfe\xc6\x51\x97\x7b\xc4\x77\xa9\xe7\x3b\xd8\xc0\x77\x42\x1c\x6a\x0c\x20\x8c\x97\x6d\x7e\xf3\x65\xed\x96\x39\xca\x97\x23\x68\x1b\xed\x46\x24\xc1\x24\xf5\x16\xac\xa3\xdc\xc4\xe0\x59\xf0\x56\x79\xa4\xac\x5d\x08\x05\xbd\xff\xee\xb8\x67\xe7\x2b\x44\x66\x98\x5c\x8a\x57\xc8\x10\x7a\xad\x00\xb0\x0d\x88\x34\x9e\x88\x63\xac\x2f\xe7\x76\x3f\x32\x7a\x4a\x6a\xff\x25\x0e\xbd\xe1\x89\xe2\x92\x8e\x93\x90\x83\x97\xab\xd6\xdb\x68\x7d\x1a\x3b\xc3\x3e\x14\x74\xf4\x6d\x7b\x36\xe8\xc0\x8d\x45\xe3\xbd\xb7\xda\x56\x6d\x99\x7d\x42\xd6\x18\xc4\xbf\x5f\x3e\x48\x69\x85\x9d\x6e\x2e\x89\x80\x2e\x16\xa6\x0c\x9c\x47\x9b\xc2\x48\x91\xb6\x11\x10\x85\xba\xd6\xbc\xaa\x76\xc0\x08\xd0\xce\x8f\x3d\x2f\xd4\xb4\x76\x7b\xc7\x3b\xdf\x64\x6d\xb0\x6b\xb7\x22\x46\xa0\x15\xcd\xab\xb5\x12\x5e\xff\x1b\x1f\x60\xd1\xf3\x0e\x6f\xe5\x78\xb2\xdb\xab\x38\x38\x4c\x1d\x57\x67\x19\xd5\xe6\xc5\x76\x2c\x2d\x54\xaa\xd1\x26\xd8\xf5\x51\x64\x88\x6b\xc7\xdb\xf1\xf6\x26\xb7\x3f\x81\xce\x66\x49\x80\xa5\x9f\xbd\xe7\x78\xa6\x76\xed\x4e\xb7\xfa\xa0\xe1\xb9\xbb\xf1\x86\xb4\x5f\x17\x4d\x17\x34\x93\x43\x38\x83\xc2\xc4\x0d\x68\x7c\x8e\x67\xb2\x84\xd4\xfc\x52\x51\x5e\x87\xcd\x02\xef\x11\x43\x5c\xab\x86\x59\x2f\xc7\x2f\x04\x44\x63\xd8\x77\xc9\xb8\x61\xd8\x09\xae\xf5\x80\x54\x4a\xec\x5a\x22\x80\xa8\xf1\x3a\x04\x2c\xeb\xc2\xaf\x83\x83\x75\xed\x48\x52\x5a\x32\x71\xef\x94\xa9\xa1\x46\x58\x1b\x52\x47\xc7\xcb\xf9\x71\xbd\x41\x40\x47\x28\x8a\xc9\x51\x1a\xfd\xa1\x76\x44\x0a\xa4\x66\x10\x4d\x56\x45\x7e\xb3\x2c\xe8\x6a\x81\xa7\x06\xb3\xa3\x89\xe8\xe9\xaf\xe8\x66\xbd\x56\xb8\xcc\x81\x5f\x17\x5b\xe9\x06\xf1\x6d\xbb\x1c\xaf\xd1\x2d\xbb\xf6\xc7\x41\xbb\xf6\xc7\x93\x7e\xdf\xfd\x05\x8b\x76\xcd\xff\x0c\xd6\xfc\x4f\xaf\xe6\x7f\x4e\x60\x96\x2a\x5a\x0f\x41\xcc\xec\xad\x19\x1e\x0e\x60\x4d\x3a\x8b\x5f\x86\x0a\x94\xfe\xde\x6e\xab\xca\x77\xf4\x6c\xa1\xde\xad\xc7\x3d\x41\x46\xcd\x46\x5a\xb8\xb6\x89\x6d\x79\xfb\x2c\x72\x3b\xca\x9a\xa4\xb7\x19\x80\x7e\xec\xa4\x65\x91\xbc\x61\x05\x18\x76\x16\x76\xca\xa9\xf7\xd8\x45\xc4\x8d\x4b\x64\x58\xee\x38\xa6\x98\xa5\xe5\x1d\x86\x05\x9b\xc5\x59\xa3\xb8\x09\x96\xc9\x60\xa6\xea\x10\x48\x61\x01\xc0\x70\x53\x47\xee\x94\x36\xf5\x10\x6a\x1c\x00\xe8\x97\xb7\x60\x61\x8c\x26\x29\xab\x2a\x90\x2c\x11\xcf\xe2\x0c\xb4\x7c\x75\x39\xea\xed\x58\xa7\x1c\x0e\x20\xb9\x17\xdb\xc1\xf4\x1a\xf6\xa4\x83\x63\x12\x47\x35\x33\x0b\x41\x9e\x72\x71\xcc\x00\xe4\x50\x69\x12\xcd\xdd\x45\x0c\x37\xc2\xd7\xeb\x98\xa7\xa2\x52\xe1\x36\xa7\x0c\x54\x65\xa3\xb2\x39\xc5\x7e\x40\x49\x16\x68\xc9\x09\x2b\x21\x60\xe0\x28\xe6\x29\x82\x48\x23\x3b\x60\x68\x7b\xa8\x15\x54\x49\x1c\x99\xf6\x45\xeb\x12\xa7\x3d\x3c\xf5\x86\x2c\xb9\x44\x01\xcf\xe2\x5b\x51\xd0\x4d\x27\xd4\xdb\xd2\x73\xf9\xbc\x54\x40\x6f\xe5\x6d\x7d\x75\x65\xdf\x72\x0f\x12\x8a\xb2\xd9\x5b\x92\x8b\x07\x7b\xc7\x97\x46\x8a\x00\xc3\x4f\xcc\x89\x22\xe3\xbc\x24\x59\xdd\x4f\x3a\x5e\x51\x7c\x25\x11\x1f\xaf\xae\x41\x2d\x28\x3b\xf9\x2f\xe6\xa8\xa0\x6c\xa2\x64\x36\x96\x51\x6b\x21\xf3\xee\xf7\x12\x6e\x30\x5a\x6c\xea\xb6\x6a\x77\x07\x49\x5e\x14\x9f\xca\x95\xc3\x02\xa0\x43\xf7\x99\x38\x68\x1a\x86\xd0\xf5\xda\x7e\xc7\x1d\x0d\xd8\x91\x46\x00\x8c\xe8\xb0\xab\x94\x46\x19\xa2\x7b\xdc\xc4\xce\x0a\x1f\xd4\x86\x7e\x45\x0e\xfb\x0f\xea\x3c\xdc\x99\xbd\xde\xdd\xe2\xff\xf9\xf0\xf6\xcd\x07\xbb\x0e\x3b\x36\x8d\x9d\xa6\xb5\x94\x8c\x24\xaf\xdc\x5b\xe5\x28\xfe\x4e\x53\x92\xbc\xaf\x2f\x96\xcd\xd0\x88\xa6\x0e\xf2\x36\x85\xb7\x28\x9b\x2e\xcc\x25\xfb\x2b\xba\x09\xb0\xe7\xec\xa1\x4b\x1b\xbf\xad\xaa\xb6\x11\xd0\xd4\x53\xfe\x84\x6e\x4c\x74\x08\x5b\x1c\x58\x46\x83\x84\x84\x7e\xbf\xed\x60\xa9\x35\xf1\xa8\xdc\xc2\x34\x2a\x38\x60\xa6\xf6\x21\xe3\xbd\x35\x14\x1c\x90\x7e\x1f\x49\xd5\x39\xc9\x17\x34\x3c\xf0\x2e\x42\x40\x43\x1f\xc8\x5a\xe5\xec\x5a\xc8\x12\x29\x92\x65\xa4\x6d\x66\xbb\x08\x91\xae\xca\x64\x6f\x7e\x89\x46\x67\xa2\x9c\x2c\xb5\x95\x85\x75\xb7\x1d\x68\x14\x19\xa3\x89\x1c\x6d\xa0\x17\xf7\xc9\xf9\x1a\xfd\x18\x4d\xd0\x46\xe7\x9b\xf8\xcd\x98\xbd\x41\xd7\xe9\xe1\x29\x44\xa3\x18\x25\x14\xe5\xd2\x4b\x38\x5b\xe0\x15\x33\xce\x73\x25\xf5\xfb\xde\xcd\x89\x91\x54\x4c\x9f\x19\x97\x51\x12\x84\xff\x9d\x66\xab\x95\xa2\x8c\xd5\xb9\x7f\xa5\x43\xec\x4a\xc8\x29\xdd\x39\x89\x3a\xda\x93\x7b\x8e\x11\xe1\x56\x7f\x03\x4b\x29\x0a\x49\xa6\x05\xa2\x53\xf4\x6a\x06\x62\x51\x14\x00\x88\x52\x94\xd4\x64\x0a\x0c\x9d\x43\x85\xaa\x34\xd8\xe1\x16\x18\xb8\x5c\xf1\x31\x9f\x38\xc1\x86\xb7\x34\xe3\x6d\x8e\xdb\x8c\x34\x05\x76\x19\x2b\x2a\xd4\xe4\xec\xaf\xe2\xc6\xa1\x46\xdc\x12\x7d\xcd\x55\x41\xf1\x8e\x18\x3d\x3a\x4c\x5e\xe6\xf8\x72\xc1\x9f\x36\x26\x77\xee\xcc\xd6\x2a\xeb\xd5\x69\x69\xed\x39\x28\xd0\x84\x9b\x5b\xae\x66\x19\x47\x01\x19\x84\x34\x05\x84\xb5\x9c\x86\xa2\x62\x85\x48\x7c\xab\x4e\x56\x0d\xb2\x5e\x7a\xa2\x02\x83\xc5\x49\xe2\xc2\x22\xb5\xa9\xde\x3d\x44\xb8\x34\xe4\x7f\x96\x4d\x17\x48\x8a\xba\xe8\x33\xa7\xb9\x57\xb6\x40\x6c\x49\x84\xd9\x90\xc3\x1c\xcf\x86\xb4\x02\x90\xa0\xeb\x5e\x66\x06\x14\x63\x01\x2e\xba\xb9\xc4\xf6\xe5\x34\xd1\xaa\x9b\xdd\xab\x9a\x75\x9f\x2f\x0b\xfa\x06\x5d\xab\x91\x98\xfe\x2b\x70\x16\x53\x1b\xec\xda\xc7\x8b\xde\x23\x56\x94\x74\x8a\x62\x02\x80\x89\xcd\x2f\xb9\x19\x6e\xf4\xae\xe5\x8a\xdf\x40\xea\xe3\x4e\x12\xf0\x28\xf5\xaa\x00\x52\x65\x72\xa4\xca\xaa\xcc\xb0\x81\xd1\x25\xc5\xaf\x07\x58\xb3\xa7\xfb\x7d\xdc\x90\xec\x71\x00\xb1\x89\x66\x1c\x47\x02\x0d\xbb\x89\x44\xd2\x79\x8d\xa6\xa5\x82\xde\xaa\x5c\x92\xab\xc1\x3d\x8c\xb2\xd5\x2a\xc7\x2a\x18\x80\xc0\x4e\xd1\x7a\x1d\x59\x34\xc0\xd1\xc8\x39\x3c\x75\x0f\xf9\x52\xaf\x8d\x73\xc0\x59\x53\x0d\x85\xbb\xbc\x1e\xfa\xb2\x21\x69\x6a\xb0\xf6\xeb\xe0\x3d\x00\x52\x75\xf9\x2d\xfb\xef\x07\x03\x30\x40\xdc\xe0\xd6\xd7\xd3\x8a\x29\x18\x95\xf2\xae\x0f\xb7\xb2\x84\xc4\x79\xa7\xad\xf3\x7e\x5f\x56\xff\x81\x0d\x3d\xc6\x3a\x89\x3e\xe4\xed\xbf\x74\xf9\x6d\x06\xce\xe2\xe0\x78\xa4\x39\x71\x7c\x3b\xc7\x28\x9f\xb5\x38\x80\xcd\x68\xd1\x48\xea\xf0\xfc\x90\xad\xbc\xc5\x11\x00\xad\xa9\x17\xdc\x82\x8b\xce\x12\x8e\x90\xe2\x62\xc2\x9a\x5e\x02\x43\x51\xc0\x85\xf5\xb6\x10\x4d\x3e\x61\x32\x53\x05\x2c\x38\xe9\xf7\x6d\x1b\x16\x46\x29\xd1\x1a\x12\x34\x84\x43\x28\x38\x11\xa4\x3d\x66\x89\x00\xca\x07\xe2\x4f\xdb\x3b\xc4\x16\x93\x3e\xc7\xcb\x1e\xf4\xf5\x83\xe3\x1c\x46\x3e\x9b\x38\x82\x2d\xef\x2e\x3c\x45\x2e\x60\x6d\x38\x77\x50\xe8\x13\x08\x4b\x66\x14\xde\xce\xc7\x68\x72\x10\x36\x75\xa2\x4d\x91\xb2\x78\x28\xc5\xfb\xdc\xca\x88\x81\x5d\x2d\x88\x5b\x47\x94\xd3\x8c\xb0\x79\x41\x97\xcd\xcb\x84\xe7\xb1\x40\xfe\x91\x55\x3f\x53\x3c\x27\xab\x1a\xb7\xdb\x21\xee\xbc\x8e\x91\xed\x78\xd8\xe0\x63\x1d\xf2\x64\x91\xb1\xf7\x4a\x25\x3f\xd3\xc8\x9f\xdd\xcb\x64\x29\x8d\x40\x4f\xfe\x25\x46\x13\x9b\x53\xb5\xf6\xe9\xe7\xb5\xfc\x0b\xe2\xd1\xf0\x9f\x7f\x88\xc7\xff\xfa\xc3\xe4\x08\x80\x91\xfa\x95\x88\xcf\x3f\x9c\x28\x9f\x3b\xa7\xd2\xe7\xce\xf8\xd1\x04\x66\x29\x19\x3f\x9e\x40\x96\xf2\x64\xae\x42\x98\xbd\x94\x46\x95\xed\x41\x62\x00\x0e\x58\x1a\xb3\x94\xf5\xfb\x02\xc9\xc8\x18\x03\xbe\x22\x42\x01\x1d\x7e\xdb\xc7\x9b\x95\xa4\x0a\x86\x19\x94\x28\xcc\xb0\xc6\x66\xe4\x13\xa9\x4c\x0f\x10\x8d\x29\xac\x15\x8a\xb9\x21\xa4\x28\xd8\x5d\x83\x67\x93\xee\xce\x76\x11\x9c\x20\x9f\xef\xa8\x64\xe3\x98\x24\xba\x1c\x46\x19\x28\x9d\x8e\x79\x93\xc1\x38\x59\xaf\x51\xc3\x76\xb9\x56\x8f\xf0\xa0\x5c\xc0\x0f\xbb\xda\x7d\xec\x00\x6b\x12\x7a\xff\x38\x24\x81\xf7\x92\x3a\x52\x09\x8f\x2b\x5b\x83\x25\x79\x38\xeb\x67\x30\x0a\x5d\x4b\x0e\x6e\x51\x42\x0a\x8e\xe7\x37\x06\xf6\x29\xdc\x47\x3c\x4b\x20\xe8\x06\x5e\x7a\xf5\xb2\x92\x9d\xdb\x1a\x16\x48\x7f\x2f\xf7\xe0\x4c\x5d\x22\xfe\x74\xca\xcb\x2c\x37\x10\x56\x9c\xaf\x94\x08\xb4\xb7\xf1\x4e\xa4\x18\xa2\x96\xfa\x4f\x5a\xf8\x89\x52\x3a\x96\x41\xd4\x90\x61\x37\x8c\x23\x21\x86\x0c\x96\x6a\x13\xf2\x94\xc8\xf8\x6a\x25\x80\xd3\xb4\x59\x2f\xce\x1d\x66\xd3\x54\x54\x04\x30\x8b\xa7\xb2\x70\x25\xed\x4c\x03\x3d\xb8\xec\x74\xe4\xe2\x19\x55\x58\x7e\xcb\x52\x9a\x28\x4a\x58\xdf\xba\xda\x84\x25\x53\x9e\xde\x5c\x39\xae\x16\x53\x85\x29\x22\x94\xa6\x29\x1f\x0d\x86\xa7\x55\x4b\x66\x5a\x47\x27\x85\x1a\x89\x73\xcf\x0d\x69\x38\x0f\x90\x1a\xa2\x07\x54\xbe\x8f\xf6\xe5\xf2\xa9\x57\xe9\xc9\x4c\x32\xc9\xa4\xf0\x35\x76\x15\xc1\x28\xb0\x18\xbf\xc0\xd4\x2c\x35\x63\xc2\xa6\x79\x7b\x5b\x67\x7b\x4f\xb3\x04\x29\xcd\xfd\x50\x78\xee\x0e\xe2\x49\x1c\x60\xd4\x09\xec\xc5\x12\x24\x5d\xe2\x4b\x53\xb1\x16\x40\xea\x2a\xee\x61\x47\x4d\xda\x52\xfb\xce\xde\x2c\xb8\x0c\x8d\x69\x2a\x1b\xff\xbb\x78\x1f\x44\x7b\x68\x16\xef\x26\xf4\xc2\xc6\xc4\x28\x55\xa7\xac\x05\x3a\x1c\x3f\x01\x0d\x1d\x90\x0d\x92\x31\xaa\x24\x63\x3a\x33\xaa\x24\xe3\xd2\x45\xb5\xc2\xd0\x65\x3b\xee\x35\x9e\x7c\x11\xda\x25\xfb\x13\xf3\x94\xfa\xcd\x3c\x8c\x2d\x39\xd2\x3c\xb6\xe3\x13\xd3\xa9\x7a\x1b\x2c\xad\xa3\xeb\x7d\x0d\xa5\xd0\xa6\x76\xea\xa6\xb2\xf6\xcd\xde\xb5\xf1\x40\x05\xc3\x86\xdf\xb1\xda\x0e\xa5\x1d\x41\xe8\x37\x75\x41\x17\x00\x98\x46\xa7\x55\x86\xab\x5b\x65\x53\x64\x39\x3c\x7f\x7b\xf1\xfe\xc3\xab\xb7\x6f\x9c\x18\xb6\x96\xa4\xa3\xad\x24\x29\xcc\x18\x92\x56\xfa\x47\x8b\x23\xe1\x70\x9d\xba\x80\x25\x6e\x61\x23\xc3\x52\xe6\xd0\xac\xd8\x90\x59\x91\x04\xf4\xc4\x29\x4e\x86\xfc\xad\xe4\xf9\x43\xa6\x44\x24\xd0\xbb\x72\x4e\xd9\xb7\x4a\xe8\xa0\x59\xa3\x39\xbe\xa0\x19\xc5\x88\x99\x60\x4b\x36\xa1\x46\xc8\x14\x4b\xb8\x67\x89\xaa\x08\x96\x89\x5e\x30\xc3\x9a\x2d\x9d\x3b\x94\xef\x78\x87\x3c\xee\x7f\x87\xbc\xa2\x25\x89\xd8\x8e\xbf\x85\xd5\xa6\xbf\x58\x56\x71\x17\xfd\xee\xbb\x5c\xd2\x2f\x14\x6d\x58\xa1\x53\xf9\x5b\x15\xf8\xe7\x0e\x17\xea\xa0\xc3\xa5\x8f\x6a\xd4\xd8\x14\xa1\x96\x07\xdb\xa0\x43\xde\xf5\x3a\xa6\x0d\x41\xa2\x8a\x63\x5e\x3b\xa7\xe8\x76\x68\x3b\xbd\xbf\x43\xdb\x7b\xb8\xb2\x95\x63\x09\x78\xb3\x0d\x3a\x6e\x95\x85\xbf\xdc\xaf\xad\x3f\xd3\x4a\x59\x92\xf1\x7e\x5f\x6c\x3d\x29\xc5\x81\x76\xdd\x8d\x68\x4f\xb6\xb7\x62\x0a\x28\xa5\x40\x2b\x18\x0e\x20\x76\x79\x0d\x46\xff\xe0\x96\x0d\x31\x0c\x45\x2a\x25\x7f\xb2\x5e\x71\x47\xb7\xb3\x82\x48\x68\x3e\xd4\x5f\xa7\xda\x56\x11\x8d\xc9\xd1\xd1\xa4\xaa\x60\x53\x20\x41\x8b\xeb\x1e\xaa\xe0\x7c\x88\xab\x6a\x57\x47\xca\xea\x8c\x3c\xb0\x13\x65\x63\x90\x71\x38\x80\x2c\x3d\x3c\xad\x57\xc5\x5d\x91\xc0\x39\x16\x38\x5e\x00\xa7\xa3\x09\x41\x9f\x79\xcd\xcd\xcc\x52\x94\x88\x25\x83\xa8\xb9\x46\x32\xe0\x46\x91\xca\x45\x72\xf9\x70\xf4\xe6\x36\x33\xd7\x87\x26\xaa\x99\xf5\xda\x7c\xc5\xa0\x9a\x63\x92\xe5\xf9\x8d\x34\xa9\xd3\x2e\x26\x8a\xaa\xaa\xbc\x70\x42\x0f\xe4\xed\x78\xfe\xab\x70\x56\x34\xf3\x39\x03\xf1\x2c\x0d\x79\x67\xd6\x1e\xb7\xfa\x7d\xe3\x7a\xeb\x12\xf1\x91\xf3\x1d\xd4\x46\x27\x0d\xa8\x25\x56\xe2\xec\x70\x27\x8b\x41\x51\xde\xba\x93\x8b\x51\x2a\x75\x51\xcf\xc0\x99\xe3\xf7\x4a\x80\x35\x3c\x8f\xad\x6e\x53\xed\xa0\xca\x69\xed\x39\x62\x53\x8a\x57\xbc\xa0\x31\x11\x15\xac\xd0\x56\x8c\x5f\xfe\xd5\x8e\x3c\xc0\x10\x2b\x1b\xec\x4a\x39\x6d\x83\x74\xbd\x76\xa1\xfb\xc2\xf3\x0a\xb7\xf8\xaa\x5e\xe1\x56\x7b\xaf\x70\x1b\xbd\xc2\xdd\x34\xbd\xc2\xdd\x7c\x4b\xaf\x70\xcb\x80\x57\xb8\xe5\x86\x10\x6a\x65\x77\x08\xb5\xab\x46\x28\xb3\xab\x07\x77\x0f\x67\xbb\xbe\x71\x50\xb0\x9b\x5f\x76\x14\x35\x83\x69\xd6\x52\x47\x96\x06\xc9\x24\xe9\x26\xa2\xf7\x77\x94\x7d\xfa\x21\x5b\x1d\x84\x2b\x36\x9d\x2f\x88\x59\xc4\x2d\x64\xea\xb7\xe3\xcd\x52\xc1\xa9\x0a\xc4\x97\xd6\x4d\x04\x24\xb0\x84\xd3\x74\x15\x5f\x3a\xce\x0f\x2e\x1d\x6c\xf5\xac\xbd\x20\x5f\xd1\x79\x9f\x12\x7f\xc1\x4b\xe9\x84\x62\xea\xc9\x67\x38\x00\xb5\x5e\x74\xc6\xb3\x10\x8f\x4e\x5a\x39\xca\xd8\x37\x56\x0d\x22\x5c\xca\x48\xbe\xb7\x95\x9b\xef\x98\xaf\x82\xcf\x8f\x27\x07\x46\x8b\xa5\x66\x08\x3c\x17\xa7\x19\x8b\xf9\x49\xe9\xa7\xe4\x9b\x2b\x3d\x06\x94\xe4\x78\xd6\x74\x0a\x2e\xe5\x46\xa4\x43\x6e\x44\xc6\x68\xe2\x30\x82\xfa\xfd\xc6\x08\x14\x47\x48\x85\xf7\xb9\x90\x72\x35\x04\xaf\x04\xda\x0b\x97\x31\xad\xe5\x0f\xe9\x25\x8c\x49\xaa\x9d\x76\x5c\xfa\xfc\xe2\xbf\x63\xbe\x78\xae\x85\xb9\x01\xf7\x1d\xb5\x7a\xb0\xb2\x57\x72\x6a\x4a\x69\x56\x43\xd1\x0c\x8f\x70\x40\xf0\x4e\x3a\x1e\x14\x7b\x71\xa5\x2a\x45\xed\xa5\xc1\x4d\x8d\x15\x29\xe0\x26\x09\xbc\x06\x01\x92\xfa\x05\x95\x3f\x02\x29\xaf\x96\xfc\x1b\x79\x39\x0d\xe2\x55\xe6\xf9\x01\x49\xc7\x93\xca\x6a\x37\x52\xcd\xb8\x25\x52\x27\x33\xe6\x12\xf1\xd1\xce\x45\x24\x8f\xff\xa5\xa5\x7c\x03\xab\x42\x1b\xeb\xd2\xbd\xa8\xb2\xb8\x79\x11\x00\x2c\xfc\x75\x64\xce\x22\xe2\x51\x5c\xac\xd7\x71\xa1\x04\xc5\x4d\x3b\x5c\xa2\x58\xc2\x92\xa2\x16\x4d\x62\xad\xea\xd1\x38\xff\x63\x34\x49\x0b\x00\x0b\x13\x10\x2e\x90\x8d\xc5\x73\x67\xa6\xea\x0c\xfc\xae\x13\x15\x93\x2c\x4a\x2e\xd5\x36\x30\xb9\x74\x84\x39\xf6\x09\xc3\x8e\x35\x8c\xa3\x50\xac\x9a\x15\x04\x4e\xbd\xe0\x6d\x4d\xe5\xae\xf1\x40\x06\x4b\x98\x37\x54\x59\x0d\x45\x4c\xc1\x28\x56\xaa\xb2\xf9\xc8\xb2\xa1\x2c\x87\x4c\x0a\xf4\x98\x55\x28\x2f\x95\x31\x18\x82\xda\x3c\xac\x02\x35\x4f\xcb\xd6\xe9\x2e\x0c\x20\x77\x0d\x5b\x28\x00\x43\xed\x0f\x84\x4a\x62\xa1\xd6\xad\xf1\x54\xae\x14\x2c\xe9\xd8\x9d\x43\x49\x76\x78\x1c\xeb\x2e\xbb\x12\x1c\xb0\x2b\x91\x67\x43\x1a\x95\xe0\x80\x51\x09\x91\x0a\x42\xa1\x55\xdf\xbc\xe0\x85\xd1\x5d\x2f\x53\x7d\x0c\xc5\x9d\xa4\x40\x59\xba\x33\xcf\xd2\x9d\x02\xc0\xd5\x09\x6e\x1b\xab\xcb\xb3\x0b\xec\x45\xb5\xd7\x33\x64\x93\x2e\x08\x05\xc8\x0f\x78\xf8\x36\x94\xb0\x90\xf7\x20\x13\xa8\x98\x44\xdd\xd4\x72\x7b\x7c\x76\x5f\x8b\x3d\x13\x55\x80\x58\x5f\x1d\xc3\xb1\xa1\x07\xb7\x71\x45\x77\x5d\xd2\xa6\x86\x7e\xe7\x92\x1a\x87\x06\xbb\x81\x0f\x05\xd1\x00\xcc\xee\x73\x09\xb3\x91\xae\xe6\x5d\x43\x63\x40\x20\x76\x97\x4a\x78\x32\xcc\xc2\x00\x70\xcb\x44\x20\xd3\x67\xe3\xc0\x01\xb6\x87\x69\x4a\x47\x71\x99\xb2\xae\x4b\x48\xec\x25\xc4\xfe\xbd\xe2\x1b\x2f\x61\xbb\xb0\x2b\x91\xa5\x60\x58\x3a\xb7\x2e\x00\xfb\x4a\x58\x86\xf6\xaa\xb1\x8a\x21\xb7\x97\xcd\x97\xae\x75\x84\x46\xad\x94\xa1\x5f\xb8\x85\x83\xd8\x4a\xa1\x9c\x46\xe5\xf6\x5c\x46\x1d\xe9\x36\x86\x53\x68\x2f\x9f\x4b\x3e\x75\xc8\x4b\x97\x56\x51\x91\x96\x1b\x8e\xc0\xca\x55\xa6\xd4\xea\x9d\x3e\x06\xd2\xc6\x5b\xb0\xb2\x39\x75\x4c\x80\xe8\xa6\x13\x8b\x05\x2d\xaf\x10\x19\x0c\x20\xee\x61\xbf\x53\x70\x4b\x7d\xac\x03\x4f\x3c\x0d\xcf\x31\x9e\xe8\x10\x4d\x2d\x5c\x50\x64\xe1\x79\x6c\xec\x6e\xc4\xac\x32\x17\x71\xb5\xc7\x6c\x94\xb9\x06\x9b\x7e\xe3\x60\xc8\xd2\xac\x29\xb3\x75\x05\x8e\x62\xe4\x2d\x7d\x80\x46\x23\x95\xb4\xff\xe8\xf7\x3b\x0c\xbe\x0d\xc7\x2b\xac\x8e\xa0\x5c\x24\x48\x20\xa7\x9f\x97\xac\xdf\x9f\xa1\x1c\x71\xd4\x0b\xcd\x59\x9a\x58\x10\xbb\xff\x66\x7c\x9b\xb6\x1d\x41\x92\xde\x56\x07\xf4\xee\x9b\x8d\xc0\x2d\x92\x3e\x51\xbd\xaa\x31\x51\xba\x4b\xce\x22\xa0\x09\xb4\x63\xf6\x92\x1d\x59\x79\x1b\x4a\xb5\x16\x96\xc8\xa5\x2c\xd2\x59\x7c\x13\x5f\xba\xc1\x72\x9c\x79\x6a\xfa\xdf\xd2\x12\xd4\x61\xee\xf8\xe3\xf4\x54\x6e\xdd\x2c\x48\x00\xc4\x46\x2e\x5c\xd4\xe8\x52\x2d\x44\xef\x72\x4b\x09\xb9\x64\x0d\xca\x45\xf1\x21\x02\x88\x79\x1b\x6a\x48\xb6\x62\xa2\xad\xa6\x47\xf6\xab\xcb\xc0\xdf\x3f\x87\x4a\xc3\xa2\xf3\x64\x7a\x12\x7f\x00\x86\x7c\xd7\xc2\xc0\x6c\x55\x6b\xb8\xb0\x13\x5e\xa5\xfc\xa0\xbd\x27\xee\x72\x35\x76\xa5\x5e\xd3\x45\xc6\x5a\xca\x0c\x81\xd5\xf5\x5f\x17\xad\x14\xed\x6e\x66\xdb\x8e\xc1\xc9\x06\xc6\x34\xb1\x06\x8c\x52\xc9\x52\xb1\x03\x02\xdd\xb5\x27\xe3\x95\x6f\xce\x46\x2d\x4c\x5b\x6f\xd3\xed\xcb\x91\x3d\x7e\xc5\xb3\x63\x7d\x3e\x74\x6e\x1a\x68\xb4\xda\xda\x3e\xdb\x7a\x68\x63\x37\xf5\x12\x2c\xdf\xe8\xad\x01\xa0\x6c\x5f\xed\x97\x6b\x53\x4f\x81\xd2\x76\x71\xa7\x3b\x9c\x1e\xbd\xbe\x01\xb8\x11\xa8\xdd\xda\x5c\x9a\xe6\x71\x1b\x1c\x02\xc9\x02\x15\xb3\xa5\x09\x8b\xc1\xd9\x61\x2c\xa5\x18\x31\x00\x52\x70\x71\x56\x6b\x39\xca\xe1\x40\xec\x78\x03\xdc\x86\x1a\x90\x49\xbf\x1f\xe3\xee\x5c\x00\xbb\x30\x11\xb7\xe6\x3c\x5c\x03\x03\x3e\x26\x93\x74\x1c\x5c\x59\x32\x69\xd2\x2c\x64\x32\x51\x38\xbb\x7a\x67\xbb\x6a\x59\x97\xe4\x59\xbf\xdf\xf1\xce\x36\xdc\x74\x85\x28\x9b\x61\xd6\xef\xc7\x5b\x9e\xdc\x10\xc4\x10\x50\x8b\x49\xad\x59\x31\xb3\x0c\x66\xe2\x80\x68\x6e\x72\x29\x90\x08\x14\x97\xb5\x04\x88\x26\xf3\xb8\xe6\x8f\xd4\xd7\xb4\xed\x91\xa7\xe3\x28\x29\x4c\x89\x0b\x9c\xc2\xca\x70\x02\xd7\x96\x2b\xc4\x86\x76\x5d\x4e\xea\x6b\x06\x6d\x7b\x6d\x6b\x25\xe8\x4d\x18\x95\xb2\xa2\x8a\x49\xd2\x9e\x4e\x2c\x68\x56\x3d\x24\xe5\x5c\xc6\x3c\x72\x01\x78\x17\x58\x8c\xe6\xcd\xa8\x2f\xa1\xd5\x27\x0b\x21\xcf\x8a\xd5\x68\xec\x2f\xec\x8a\x49\x64\x8f\x2a\x1d\xae\x1a\x54\x8f\xdc\x1f\xc3\x10\x1f\xae\x03\x8a\x75\x02\x31\x3c\xd9\x02\xb5\xf0\x24\x4c\x31\x60\xf1\xac\xdd\x65\x83\x10\xb8\x15\x84\x7f\x18\xb8\x79\x46\x41\x54\xa4\x59\x94\x68\x8c\x26\x52\xe1\xa4\xb5\x09\xce\xb2\x36\xd1\x1a\xe4\x40\xc0\xa6\x1e\xdd\xce\x2f\xcc\x1d\x56\x11\x6d\x5b\x45\x34\x81\x96\xe8\x6c\x3d\x42\xc6\xf2\xcb\xa7\xba\x25\x56\xfc\xcd\x10\xa0\x90\x7a\xe1\x36\x3c\x28\x50\xc7\x22\x8f\x81\xc7\xa3\xbd\xf0\x9d\x78\x0e\x43\xd2\xf0\x2a\x8c\x87\x77\xf6\x60\x6b\xb5\xb6\x1f\x72\x8f\x8d\x17\x6e\x7b\x43\xcb\x97\x9d\x2d\x7b\xb8\xd9\x9d\xdb\xb5\x75\x36\xb4\x2b\x8e\xb5\xbc\xd1\xaf\x0b\x91\xdf\x66\x2f\x6c\x68\xbf\x5d\xb7\xbd\xe4\xe2\xba\xcd\x63\x57\x66\x42\x00\x2c\x65\x1a\x2c\x01\xbc\xac\x62\xee\xd8\xda\xba\xca\x93\x97\x3b\x2a\x7e\x19\x75\xab\x6d\x3a\x5f\x7b\xb7\x27\x5f\x22\xe6\x33\x7c\x38\xa9\xd5\xde\xe4\xbe\xa5\xac\xcb\x25\x58\xd0\x74\xa7\xad\x24\x8c\xda\xd6\x05\x07\xbc\xdf\xcf\xa4\x61\x1a\x4e\x6f\x31\x7b\xb1\x5c\xf1\x9b\xe1\xe1\x29\xc4\xec\x75\x91\xcd\x30\xb9\xac\x7f\xa0\x99\xfa\x96\x03\x54\x9f\x1f\xb2\x2b\x5b\xe4\xb9\x84\x95\xba\xcc\x1b\x74\xad\x3e\xfe\x96\xe5\x78\x36\x3c\x1c\xc0\x19\x9e\x7d\xb0\x0c\xcf\x9b\x21\x4f\xde\x17\x85\x32\x1a\xd4\xf6\x7e\x09\xcb\xae\xd0\x2c\xf1\xcb\x41\x13\x65\x56\x82\x1c\xe6\x1b\x9d\x57\xf0\x02\x4d\x8b\x25\x52\x03\xf2\x32\xc4\x5b\x8e\x66\xdf\x67\xd3\x4f\x7e\xba\xb4\x4a\x1c\xd6\x13\x1d\xc0\xda\xd8\xd0\xf7\x6b\x95\x48\x05\x59\x29\xd7\xfa\x58\xc4\x91\x1e\xa3\x7a\x96\x67\x11\xa8\xa0\xc0\x2a\x76\xaf\x28\x27\x17\x09\x80\xa0\x12\x86\xb7\x25\x11\x5f\xea\x52\xfa\x83\xdc\xb1\x65\xd3\x24\x94\x1f\xc3\x5b\xc9\x48\x08\x58\x14\x86\x8e\x02\xa4\xcd\x64\x75\x18\x36\xbd\x14\x1b\x31\xb0\x7e\x3f\xf6\x98\xf8\xae\x92\x79\xc8\x89\x25\x00\xeb\xb5\x62\x7a\x77\x2c\xa5\x58\x88\x80\xce\x7e\xe7\xae\x07\x16\x48\x19\xf8\xaa\x55\xd7\x1b\x27\xb6\x5e\x9f\xdf\x81\x39\xa6\x03\xe5\x48\x6e\x48\x3a\xcc\xc0\xbb\xd6\xbd\x82\xba\x03\xaf\x51\xd3\x56\xeb\xe0\x06\x4e\xbc\xae\x9f\x94\x44\xbd\xab\xe2\xbb\x59\xef\x8e\x83\x0a\x9e\xfc\x4d\x93\xa8\x94\x67\xf0\x22\xc5\x5e\x4c\x06\xc5\xb2\x37\x88\x6b\xd1\xc3\x24\x6e\xfa\x93\xf1\xe9\x00\x80\xc6\x74\xa2\xb4\xb7\x6a\xbd\x24\x32\x6a\xa0\xb3\x60\x78\x5b\x49\x49\xf7\x2a\xab\x8d\x86\x09\xe4\x89\x7c\x5e\x64\x0c\x71\x0c\x39\xe0\x0d\x3d\xa8\xb8\x00\xfd\x7e\xe4\xd4\x89\x0e\xd3\xb4\x10\x8f\x83\xa9\x66\x12\x5c\xa7\x32\x7c\x5c\x28\x1a\x7b\x5c\x4c\x52\x24\xff\x41\xf7\x68\x62\x18\x25\x11\xa8\xb9\x5e\x4e\x4c\xef\x2a\xc6\xca\xbf\x4c\x44\x8b\x82\x47\x8e\xae\x40\xa6\x56\xd3\xb5\x7a\x4e\x2c\xf0\x5b\xaf\x51\xc2\x10\x99\xc5\x91\x73\x46\xa3\x76\x44\xc0\x56\xfd\x37\xe8\xba\xae\xdb\x3c\x02\x91\xc0\x7c\x6a\xc8\x5f\xec\xf8\x62\xb7\x35\xfc\x3b\xde\x6e\x5b\xf0\xdb\xc5\x41\x70\x5e\x2b\x1a\xf0\x80\xac\x6c\x0b\xb5\x64\x93\x68\x75\x1c\x7a\xa5\x22\x00\xd4\xee\x91\x67\x28\xe0\x29\xcf\x0f\xa4\xe5\x0a\xc0\xc3\xbe\x52\xeb\xd9\xd6\xaa\x41\x69\xdb\xd9\x23\xe4\x23\xa4\xdd\x4d\x3a\xdd\x42\x0e\x86\x28\xe8\xb0\xef\xab\x0c\x03\x19\x4f\x7f\x23\x54\xfb\xfc\x1b\x22\x67\x2c\xcd\x91\xd4\x26\x9e\x4d\x9f\x88\x4a\x83\xbe\x6d\x9c\x63\x24\x6a\xb1\xe3\xbf\xfb\x70\xe3\x88\x1d\xd3\x57\xeb\x22\x27\x68\xff\xea\xdc\x1f\xe0\x9b\xe8\xd0\x0a\x80\x83\xbb\x9d\xd9\xa6\x31\xcb\x8e\x66\x3b\x21\xfb\x99\xff\xae\x63\xdd\x75\x5e\x1d\xbf\x31\xce\xb2\xa7\x29\x1a\x89\xff\x43\xd4\xe9\x89\xdb\x3b\x8b\x1f\x30\xb9\xcc\x95\xb8\xa4\xf6\xc0\xd6\x71\x2e\x83\x1b\x5c\x1b\xde\xd5\xd2\xaf\xee\x9e\x3d\xc7\x05\x31\xaa\xed\xf8\x40\x9d\xa5\x65\x37\xad\xad\xbf\x23\xb8\xda\xe6\xc7\xdf\x81\x58\x1b\x9d\x5d\x1d\x67\x2b\xfc\x4b\x87\x69\x21\x63\xeb\x8d\xc0\x2e\x74\x62\xe4\x4e\x06\x8f\x46\xc7\x91\x30\xfb\x3d\x72\x8c\x2f\x77\xdc\x60\x15\xde\x02\xda\xdc\x2d\x6e\x2c\x7c\x87\xd3\x6d\x07\xba\x81\xf9\x3b\x10\x51\x5a\x63\x0b\xcc\x42\x69\xa3\x8f\xe9\x04\x40\x5e\xc1\xd6\x54\x3b\xae\x97\xd1\x21\x72\x5c\x74\xe8\x21\x0b\x08\x4f\xd2\xe6\xa9\xa6\x00\xe2\x94\xd7\xbe\x3c\xa8\xf4\x14\x5e\xfb\xdd\x88\x31\x6c\xfa\xaf\x11\x33\x29\x60\x24\xce\x9f\xc3\xc6\x6b\x3a\x1c\xdd\xf5\x12\x74\xd8\x41\x7d\xf3\x58\x26\x41\xe6\x0c\x77\x99\xda\xa1\x88\x2b\x9b\xed\x26\xbf\xf9\xa0\x5b\xc1\xef\xa3\xff\x91\x0c\x92\xc1\xf1\x05\xe2\x59\x32\x88\xc2\xe3\x75\xac\xd3\x5c\xe0\xf2\xe7\xcd\xfe\xf6\x6a\x63\xd0\x3f\x37\xbd\xf0\xb9\xe6\x6e\xad\x56\xba\x32\x1d\x33\xba\x4e\xd6\x89\x31\x26\x6b\x2c\x18\x4f\xb9\x95\xfd\x6d\xb6\x1b\xe0\x30\xb2\xde\xeb\x46\x16\x40\x0d\x39\xa4\x29\xdd\xb1\x09\xea\x36\x61\x8d\x2a\x87\x54\xab\x20\x6c\xb3\xcc\xa4\x4a\x7d\x25\x7a\xfe\x21\xba\x8b\xf1\xe2\xb3\x82\xa2\xd7\x32\xf5\x26\x8e\x64\xa1\x9e\x92\x74\x53\xb1\xfd\xd2\x7b\x5e\xca\xbb\x5d\xd7\x49\x7d\x5c\xb6\xa3\xcb\x3a\x92\xa8\xe2\x9b\xdd\xeb\x65\xe4\x46\xab\x05\xed\xd8\xa8\xad\xb1\xb1\x5d\x1d\xa8\xf7\xee\xcd\x37\x2b\x6e\xec\xe5\xa9\x32\x52\x7f\x57\xac\xca\x5c\xd0\x9b\x8a\xe7\x70\x97\x0e\x71\xb2\xa1\x8d\x8d\x7d\x7b\xce\xff\x76\xee\xcd\xab\xb5\xcb\x0a\xde\x6d\x32\x6e\xa5\x5d\x5a\xd7\xb6\x7f\x77\x6c\x5e\xd5\xda\xd8\xfe\x7d\x76\x62\xd7\x95\x77\xca\xfd\x90\x91\xec\xf2\x0e\x4e\x1c\xdb\x55\x37\xf7\x64\xf8\x1a\xbb\x77\x60\x6a\x6c\x6c\xb7\xf6\x4d\xb4\x63\xb3\xa6\xc2\x4e\xad\xde\x67\xed\x03\x75\x37\xf6\x65\xbc\xf5\xed\xdc\x81\xa9\xb0\xb1\xd5\xb6\x1b\xb0\x9d\xdb\x6f\x57\xdd\xe1\x0c\x29\xd8\xbb\x53\x0f\x85\x23\x65\xd8\xd2\x72\xed\x41\xeb\x0e\x6d\xd7\x95\x2a\x89\x0a\x3c\xff\x90\x66\xdd\x9d\x74\xa0\x10\x1d\x88\x81\xf6\xe5\xd1\x8d\x17\x98\x02\x5f\x99\xa2\xe8\xac\x60\x5e\xde\xbb\x3b\x8a\xdd\x3c\x43\x76\x82\xf4\x0b\xb9\x65\xa6\xaa\xdc\x83\xcd\xf7\xe9\x45\x41\xb9\x7c\x8d\x77\x9e\x72\x5d\x65\x97\x17\xf0\x6e\x6d\xef\x16\xd9\x8e\xcc\x73\x3c\xbd\xe3\xa8\xbd\x5a\x1b\xdb\x7f\x59\xd0\x0b\x3c\x9b\x21\x72\xb7\x0e\xfc\x6a\x5b\x1e\x68\x69\x5d\x7d\xb7\xf6\xdd\x4a\x1b\x5b\x7f\x53\xf0\x97\x45\x49\xee\xd8\xbc\x57\x6b\x33\x30\x97\x7a\x07\x77\x6b\xdd\xa9\xb3\xb1\x6d\x1d\x4d\xf7\x6e\x8d\xbb\x95\x36\xb6\xfe\x23\xc9\x4a\xbe\x28\x28\xfe\x19\xdd\x71\x75\x5a\x35\x37\xf6\xa3\xae\xba\x72\x58\x52\xfc\x25\x63\x8b\x9d\xfb\x69\xd5\xdc\xa1\x1f\x51\xec\x63\x71\x97\x47\xd5\xf4\xe3\xd4\xdc\x01\x80\x59\xee\xce\x56\x10\xf6\xad\xf8\x40\xff\x0d\x50\x9b\x22\xc6\xb7\x4f\x58\x96\xfa\xf5\x4e\x56\x6a\x52\x74\xcd\x51\xb9\xbd\xff\xa5\x4e\x4e\x8c\xbd\x7b\x66\x9d\xde\xa7\x30\x91\xa6\xda\x02\x02\x04\xd1\x8d\x4d\x4f\xf3\x96\x33\xbf\xe1\x84\xf8\x59\x33\x74\x51\x5e\x06\x17\xbb\xc1\xd4\x70\x3c\xc2\x77\x64\x74\xf2\x43\xea\x12\x3a\x10\xc1\x86\xdc\xc0\xe8\x9d\x12\x81\x09\x38\xb9\x2e\x73\x78\x0b\x5b\x27\x1c\x33\xc1\xd8\x96\xff\x8c\x8e\x65\x9d\x63\xcd\xb7\x6d\x32\x9b\x79\xb9\x3a\x9e\x16\x84\x67\x98\xb4\xb1\x42\xd7\x15\x10\x2c\x61\x0e\xa7\x70\x0e\x67\x70\x01\x57\x70\x09\xaf\xe0\x4d\xe3\xd4\xe2\x79\xfc\xc5\x9c\x30\xed\x27\x52\x33\x5f\xac\xab\xd1\xd3\x7f\x26\xf1\x78\x70\xfc\x7f\x4f\xd6\xa7\xe3\xc1\xf1\xa3\x09\xf8\x67\x72\xe2\x9a\x30\xab\x5a\xda\x88\xb9\xe6\xb6\xf4\x28\xfa\x77\x89\x29\x62\xbd\x8c\xf7\x72\x94\x31\xae\x4a\xf6\x4e\x93\xd3\xc7\xc9\x00\xf6\x2e\x4a\xde\xbb\x29\x4a\xe5\x3c\x25\x3a\xf2\x3a\x3f\x8a\x92\xde\x3b\x51\x09\xf5\xca\xd5\x25\xcd\x66\x48\x14\xa5\x3d\xcd\x47\xeb\x15\x73\xd5\x18\xec\xf1\x05\x22\xb6\x4c\xdd\x7b\x12\x81\x83\x65\xf2\xfc\x83\xe6\xf6\xac\xac\x87\x2d\x99\xe8\x12\xf0\xe9\xd2\xfb\xe9\x15\x50\x4b\x5a\x97\x50\xbf\xbd\x22\x96\x85\x52\x97\xb2\x49\xaa\xa0\x24\x95\x52\xe6\x8f\xc0\x52\xb0\xe9\xb2\xfe\x56\x59\x02\x0c\xa4\x4c\xfe\x53\x09\x8a\xc1\x94\x2e\xf5\x87\x4a\xf4\x58\x1c\xe9\xd2\xff\xad\x8a\x18\x6a\x33\x5d\xda\x4f\x95\xa1\xd1\xd9\x94\xfa\x63\x72\xb1\xdc\x94\xf8\x79\x2e\xc6\x26\x63\x32\xd4\x3f\x55\x01\x17\x71\x49\x89\xf7\x53\xb7\x6e\x51\xed\x94\x38\x3f\x54\x66\x0b\x27\x49\x49\x3b\x4d\x15\xf5\x71\xd3\x94\x34\x12\x54\x21\x0f\x03\x4c\x89\xff\x5b\x15\xf1\x90\xe8\x94\xf8\xbf\xf5\x02\xd6\x98\x5e\x4a\xdc\x5f\x2a\xbb\x85\x78\xa4\xa4\x9d\xe6\x16\x75\x70\x21\x5b\xd4\x49\xb3\x9d\x6a\x48\x94\x96\xfe\x1e\x3c\x17\x40\xd6\xec\x5d\xd6\x38\x4f\x35\x47\x41\x9c\xa8\xfa\x97\xb7\xb5\x21\xf6\x5b\xba\xdc\x94\xab\x8f\xb0\x73\xc8\x1b\xa7\xbb\xcd\xeb\xf1\xfb\xd7\x89\xba\xf0\x8b\x0f\x1f\xcd\x04\x0a\x7f\x02\xdf\x97\x38\x9f\xfd\xf8\xfe\xb5\x8c\x87\x9e\x52\xff\xf7\x81\xad\xed\xac\xce\xcc\x6f\xc0\x0f\x38\x92\x4e\xdb\xb9\x4f\xdf\xbd\x32\x9d\xe3\x60\xae\x53\x7d\xee\x17\xb0\xbe\xfa\xd2\x45\x63\x4f\x32\x8e\xea\xcc\xdc\xff\xad\x37\x54\xfa\x76\x71\x0b\x35\x52\xf4\x91\x95\xee\xb5\xdc\x62\x8d\x14\xbd\x4e\x45\x91\xa3\x8c\xb8\xe5\x9a\x49\x1a\x6a\x2c\x2f\xd0\x6c\x66\x36\x93\xa9\x75\x9d\x05\x93\x55\x85\x0b\x94\x17\xe4\x92\x7d\x2c\x52\x56\x7f\xab\xac\x45\xc6\xc4\xb6\xa7\xcc\x7c\x99\xbd\xaf\xf9\x29\x72\xd7\xeb\x9f\xaa\x80\x8a\x6c\xf1\xcc\xbc\x71\xe9\x8d\xbf\x78\xe7\xf5\x4b\x29\xc1\xf4\x07\xf5\x4e\xa6\x57\xb6\x58\xf8\x4d\x13\x95\x77\x62\x63\xd5\x2e\x3e\x4e\x1b\x2e\x3e\x8c\x5b\xb1\x55\x88\xa5\x05\xb4\x47\x14\xd1\x8f\x23\x1e\xba\xe8\xc4\xcc\xba\xde\xfb\x07\x94\xbb\x81\xdb\xd8\x04\x20\x1a\xa1\xa1\x54\x43\x55\x8b\x0e\xdc\xb0\x44\x62\x58\x43\x1d\xd6\xb7\x43\x20\x67\xf0\xb6\x5f\x27\x0e\xbd\x95\x40\xf0\x02\xb0\xfc\x52\x66\x69\xaf\xdb\xce\xf3\xb4\x35\x36\x12\xd5\xfa\xb6\xee\xdc\xaa\x2e\xdf\xbd\x7a\x2e\xfe\xde\x29\xfe\xac\xcb\xfc\x6a\x4f\x89\xab\x09\x82\x34\xc4\x3c\x56\x42\x57\x76\xbc\x14\x30\x73\x97\xf9\xff\xb2\x69\xe9\xd0\x4b\xb0\xdb\x8a\x6c\xe7\x9e\x84\xc8\xb1\x5f\xea\x3a\xdc\xe9\x30\x28\xd2\x73\xc7\x69\xff\x36\xa6\xbc\x99\x6d\xf4\x6b\x39\xed\x3b\x4c\xd9\xa7\xc7\xb7\xa8\x77\x7c\x33\xb5\x30\xef\x49\x0f\x69\xe3\x2b\x65\xb0\xf5\xda\x7c\xe1\x82\x1c\x70\xe3\xe9\x51\x06\x14\x97\x3a\xdc\x34\x32\x01\xfc\x61\xf3\xe5\x87\x75\x71\x5a\x94\x92\x7d\xd1\x51\x52\x1a\xa4\x40\x77\x14\x83\x03\x64\xf5\x2c\xde\x2a\x2f\x23\x2f\x0b\xfa\xf1\x66\x85\xdc\xb8\x87\x11\xbc\x65\x52\xb1\x8a\x17\x64\x78\x78\x2a\x27\xd8\x55\xcb\xf2\xa9\xda\x55\x9a\x91\x50\x9a\xc3\x13\x8b\x50\x7b\xac\xf6\x33\xeb\x00\x5c\xd2\x8f\x6d\x17\xb6\xa3\x0b\x3f\xe8\x66\x3f\xdc\xa1\x76\x78\x59\x3b\x5c\xe0\x6f\xa6\xc8\xfd\x70\x13\xfe\xef\xd4\x1e\x7b\x9c\x3c\x1a\x24\xff\x19\xd0\x1b\x43\x39\x92\x9a\xc8\x0b\x94\xaf\x10\x3d\x51\xff\xd8\x89\x49\xff\x56\x83\x3d\x68\xb8\x41\x35\xfe\x08\x9b\x3e\xb1\xad\x23\xb9\x03\x3c\x8f\x1b\xe6\x71\x3d\x6c\x3c\xef\x39\x05\x43\x2e\x51\xc6\x13\x48\x64\x68\xb4\xf4\xf0\x14\x16\x66\x75\x8c\xc1\xbf\x54\xf7\x82\x2c\xe8\xdd\xf8\xec\x30\x26\x69\x9c\xa5\x4c\x3b\x34\x56\xde\x00\x40\xbf\x1f\x53\x65\x7a\x9d\x29\x7f\x00\x00\x1e\xf2\xf5\x9a\x6a\xc7\x14\xd2\x5d\xdd\x99\xe8\x12\x9c\xd5\x66\xeb\x58\xb9\x3a\x2e\xad\xe1\xba\x18\xc0\x21\xe9\xf7\x99\xf6\x6a\x5c\x7f\xf9\xfe\x8d\x71\xed\xdf\xd8\x78\x3e\xd1\x6e\x71\x77\xf5\x29\x2d\xfd\x30\x94\x53\x5e\xd2\x0e\xbf\xd2\x11\xa8\x5c\xfb\x45\x70\xeb\xd8\x64\x28\xe6\xe7\x5f\xe4\xc1\xb0\x1a\xc0\x82\xae\xbc\x53\xe0\x34\x65\x94\xcd\xb3\xcb\x37\x2a\xee\x8f\x0e\xdc\xb2\x5c\x15\x44\xdb\x60\xa7\xb4\x82\x5a\xc5\xbf\xa5\xf2\x4a\x53\x1e\x23\x78\x0a\xc6\x03\xe9\x06\x88\x1a\xab\x64\xdd\x9e\x17\xf9\xca\x6b\xd4\x75\x9a\x6e\x5d\x7e\xd6\xc1\xda\xf9\x02\xf5\xcc\x18\x7b\xab\x8c\x31\x34\x13\xeb\x25\x92\x7f\xd2\x37\xe0\xa7\x9e\xba\x13\xca\xed\xe7\x05\xea\x65\x3d\xdd\x9e\x3c\x41\xe4\x28\x8d\x7a\xf1\x4d\x51\x9a\xea\x3f\x45\x47\xf4\x28\xfa\x09\x44\x7a\xe7\x31\xb8\x75\x7c\x7f\xab\x3d\x22\xb5\xbf\x02\x7f\x55\xa2\xe3\xd9\x0d\xc9\x96\x78\x6a\xef\x9f\x99\xa9\x37\xab\x51\x60\xf5\x5a\x55\x8f\xb3\x9c\x47\xc3\x5d\x4a\x46\x41\x98\x75\x89\xf8\xb1\x62\x4c\x84\xe4\x3b\xd3\x82\xb0\x32\x3f\x2e\xf1\x89\x2e\x83\xc8\x15\xa6\x05\xf9\x16\x46\x09\x0f\x02\xa2\x17\x14\xcd\x8f\x79\x61\x21\xa0\xfe\xbd\x2b\x00\xb4\xb7\x87\x3b\x3a\xe8\x0d\x4b\x85\x2e\xe0\x46\x05\x0e\x20\x03\x00\x34\x2a\x84\x3c\x74\x1b\xab\xdd\x5d\x80\xa1\xe7\x86\xbf\xd9\xc3\xdd\xe2\x0b\xd0\x3a\xbe\x00\xb9\x7f\x7c\x01\xd2\x8e\x2f\x40\xb6\xc5\x17\x20\x75\x7c\x01\xb2\x63\x7c\x01\x72\xf7\xf8\x02\x04\xf8\x33\x6d\xac\x96\xf1\xe6\xbf\x1d\xd6\xb2\x15\x45\xd9\xec\x61\xdd\xf7\xc7\x8e\x19\x1e\x7d\x30\xbf\xf7\x44\xc6\xc7\xd2\xa0\xb4\x61\x51\x85\xda\xac\xbd\x63\x81\xcf\x8b\xc3\xe5\x04\x8a\xbb\x44\x44\x46\x3b\xf8\xf1\xfd\x6b\xfd\x6c\x10\xc8\xdb\x94\x05\xa4\x69\x8c\x52\xa4\x4f\x15\x00\x09\x5b\xe0\x39\x8f\x01\x24\x29\x1a\x9b\xf9\x1c\x9f\x4e\x0e\xb8\x38\x61\x24\xc1\xec\xff\x29\x11\xbd\x79\x97\xd1\x6c\xc9\x46\x28\x59\x15\xab\x18\xa8\x97\x9a\x0d\x6d\xd0\x87\x31\x85\x08\xf2\x49\x15\x53\x00\xee\x65\xd9\x2e\x40\xc4\xc7\x42\xc6\x78\x0b\x18\xce\xe0\xf0\xcb\xd9\x7e\xe2\xbc\x58\xc3\x2b\x35\x66\x15\x35\x18\x9a\xdf\x60\x48\x6a\xbf\x0b\xae\xf1\x05\xde\x00\xc8\xee\x0f\xc0\xbe\xbe\x73\xe8\xe6\xf1\xfc\x65\x06\x4b\xf8\x3a\x16\x53\xc4\xf5\xee\xef\x18\x1e\x3b\xfe\x77\x2d\x5e\x64\x5c\x99\x3d\x72\x5c\x2c\xda\xcc\xf1\xa3\xc9\xc8\xfd\x31\x24\x09\xcf\xe8\x25\xe2\x07\xdc\x9c\x06\x85\x47\x39\x51\x7d\x5f\xe9\xfd\x32\x28\x16\xba\x42\x84\xa7\xc4\xa0\x5f\xa2\x76\x8a\x0f\x1c\x7f\xa5\x2a\xcd\xb1\xef\x91\xc7\x5a\x05\x7d\x2f\x69\x9e\x16\xfd\x7e\xa1\x23\x26\xc8\xc9\x41\x0c\x0b\x7b\x81\x53\x04\x63\x6c\xbc\x51\x2f\xb3\x9b\x0b\xf4\x97\x8c\xcc\xf2\xb6\xfb\x59\x8d\x21\xb2\x45\x51\xe6\x33\x55\x26\x06\xda\x2f\xe1\x42\xff\xac\xbd\xab\x38\xa5\xba\xbd\x89\x28\xcf\x35\xec\x47\xb2\x2c\x66\x78\x8e\xd1\xec\x35\x9a\xf3\x67\x39\x9e\x7e\xb2\x2d\x63\xf6\xa6\xe0\xaf\x2e\x49\x41\xd1\xcc\xe9\x8e\xbd\x29\x3e\xca\x59\x7f\x9f\x67\xe4\x93\x9f\xf1\x54\xf6\xa2\xee\xac\x9f\xf3\xbc\xb8\x96\x6e\x0d\xfc\xd6\x5f\x63\xf2\xe9\x99\x41\xaf\x6c\x16\x45\xd3\xe2\x92\xe0\x9f\xd1\x8f\x34\x8f\x5d\x17\x2c\x9b\x16\xe7\xfc\x12\xf1\xf7\x45\xc9\x45\xc7\xbe\x49\xbb\xb1\x6b\xfd\x91\xe6\xda\x3d\xc1\xfb\x42\x86\x8f\x75\xf6\x38\x59\x51\xf9\xdf\x38\x9b\xad\x7b\x0d\xae\xd1\x46\x67\x58\xaa\x45\xbd\xcb\x87\xb5\x83\x33\x94\x5c\x2f\xf0\x74\xd1\xef\x9f\xd6\x3f\xd6\x6b\x94\x4c\x39\xcd\x65\x3c\x51\x94\x2c\x11\xcf\xfe\x8a\x6e\x3c\xb7\x33\xde\x72\x6f\xee\xb8\x7d\x1a\xf5\x89\xd7\x63\x41\xeb\x75\x74\x7e\x21\xdb\x91\x43\xd0\xa1\x3c\xec\x4c\xeb\xfd\xee\x3c\x38\x87\xe1\x8e\xc6\xd2\xce\xcd\x40\xcf\x63\x2c\x5b\x89\x26\xfe\x3c\xdc\xd3\x71\xcf\x0e\x14\x90\xce\x14\x60\x6c\x34\x6f\x8e\xd8\x5d\x9b\x4e\x66\xba\xa2\xbf\x12\xde\xd9\xec\x5c\xf7\xc3\x53\xc8\xbd\xc5\xc7\x33\x2f\xe4\x62\x17\x84\xb1\x0f\xfc\xf1\x15\x46\xd7\xc7\x8a\xd7\x45\x6f\x86\xcb\x0c\x93\x08\xc8\xc8\xce\x29\xed\xf7\xa9\xfb\x84\xa8\x17\xd1\x1b\x57\x65\x76\xd6\x71\xb0\x58\x5f\x9e\xcd\xa7\xa5\xa4\x39\xe4\xa9\x0a\x72\x82\xbc\xf1\xba\x77\xc9\x84\x8a\x57\x69\x05\x97\x77\x12\xe2\x54\x06\xe6\xb0\x41\x94\x89\x75\xe8\x1e\xb8\x68\x30\x4b\x69\x72\x2e\x19\x92\xf6\xff\x0f\x78\x4a\x8b\x1c\x5f\x08\xba\xdf\x64\xa9\x7f\x07\x3c\xc5\xfd\x7e\x56\x43\x01\x5a\x7f\xc6\x45\xc0\x57\x5d\xab\xc7\x5d\xa6\xdd\x9e\x53\x6d\xea\xcc\xca\x0b\xc6\x69\xcc\x2d\x6a\x54\xdf\xc7\x7a\x65\xb6\x80\xd6\x4d\x5b\x6e\x70\x3a\x35\xdf\xa8\xd9\xba\x1c\xcf\xe6\x39\x78\xc0\x4e\x9a\xec\x53\x51\xed\xfd\xeb\x3a\xa4\xe7\x89\xba\xe2\xd3\x45\x46\x9f\xf2\xb8\x46\xf3\x04\x1a\x8b\x8e\xd2\xe8\x24\x02\x10\x29\xff\x50\x34\x26\x8e\x7f\x28\x0c\x60\x21\xd3\x60\x21\x4a\xc4\x2e\xc2\x44\xda\x08\x93\x55\x52\xdc\x41\x8f\xf1\x24\xc7\x17\x27\xec\x86\x71\xb4\xec\xc8\x44\x9f\xf9\x89\xa6\xa2\xbe\x15\x1f\xfe\x7d\x99\x23\x26\xd0\x61\x4c\x2e\xcb\x3c\xa3\xf8\x67\x81\x1c\xaf\xf2\x92\x4a\x66\xa9\x51\x99\xe3\xc9\x2b\x33\x32\xbf\x26\xf7\x7e\x76\xe0\x45\x4a\x87\x2d\x7a\x55\x6b\x70\xde\x86\xc9\x6a\x75\xa7\x67\x68\x45\xd1\x34\xe3\x48\xeb\xd9\xd5\x7d\xf7\x30\xeb\xd9\xdc\x99\xd5\x9d\x43\x9f\xc5\xf1\xc2\x3c\xbf\x19\xf6\xf0\x52\x2c\x77\xaf\xae\x22\x28\xbb\xde\x77\x8d\xe5\xfd\xee\x2c\x82\x87\xa7\xf0\x16\xcf\x86\xcd\x95\x4f\x2e\xf3\xe2\x22\xcb\x59\x04\x4b\xc2\x71\x3e\x8c\x1e\x27\x03\x69\x26\xeb\x2e\x82\x38\xa4\xcd\x60\x2a\x5d\x58\xa1\x9a\x83\x22\x6a\x61\xe4\x2c\xf4\x5d\x97\x41\xd3\xc5\x4e\x0b\x31\xd8\x7d\x45\x6e\x7b\x4e\xc5\x5e\xf5\x55\xd7\xc5\x69\xf9\xfe\x2b\x63\x0f\xdd\x3d\xd7\xc5\xd6\xbf\xdb\xaa\xd8\x6a\x5f\x79\x4d\x6c\xbb\xe1\x15\xa9\xc1\x88\x73\xac\xa0\x7b\xf5\x9c\x26\xa0\x7f\x41\xbd\x05\x6f\xde\x65\xff\x46\x6e\x02\x51\x0d\x10\x23\x60\x55\x27\x84\x0a\xc2\x21\x1f\x0a\x9d\xc5\x87\xe2\x19\xd4\x7a\xb2\x6f\xfe\x96\xbc\xf8\x7f\x3f\xbe\x78\xf3\xfc\xfc\xdd\xfb\xb7\x1f\xdf\x7e\xfc\xc7\xbb\x17\x1f\x4c\x04\x8b\x60\xa6\xde\x46\x01\x91\xc3\xa7\xc5\x6c\xb3\x85\xcd\xf7\x39\x31\xcd\x46\x7e\x59\xa7\xa6\x35\x81\x78\xe0\x1e\x09\x60\xfc\x18\xde\xe1\x8e\xb5\x57\xed\x5e\x10\xa8\xb5\x6e\xbf\x38\x28\x14\x5e\x3b\xa7\xb7\x8d\xab\x17\xe0\xe2\xfa\xd7\xc0\xf0\x72\x9d\x33\xb7\xd9\x46\x21\xd4\x48\xc9\x71\xce\x4e\x96\xd9\x27\xa4\x85\x64\x6d\x75\xf8\x2e\x56\x4a\x27\xe3\xd7\xf2\x3f\x78\x3a\x80\x34\xd5\xe9\x86\x31\x77\xc6\x9f\x98\xef\x33\x7e\x74\x04\xe8\x98\x4f\x52\x24\x30\x6a\x2b\xff\x09\x32\x78\xbf\x80\x7d\x21\xa3\x28\x19\x99\xb4\xeb\x25\xc7\x70\xf8\x70\x4a\xd0\x75\xfc\x52\xa7\x3b\x67\xea\x02\x93\x99\xe6\xdd\x29\xd5\xdb\x31\x29\xf3\x7c\x62\x3c\x27\x89\x25\x70\xbc\x8f\x3d\x4a\xd3\x14\xeb\xb9\xf5\xfb\x58\x09\xd1\x6e\xaf\xb5\xcf\xbd\xa2\x24\x7c\x48\xc7\x91\xfe\x7d\x3c\x15\x09\xd1\xc4\x07\xcd\xba\x33\x8d\xe4\x90\x18\xcb\x73\xd0\x76\xc2\x14\x3e\x0a\xde\x45\x7a\x88\xc3\xf0\x2d\x36\xc5\xb9\x2d\xdc\xbf\x2d\x68\x3c\x98\x80\x1d\x6e\x86\x41\x61\x77\x43\x75\x4f\xb6\x2d\x8b\xff\xde\xec\xd2\x14\x2e\x48\x30\xde\xfa\x57\x47\x92\xeb\xb7\xb9\x89\x30\xdb\x17\xbc\x46\x98\x8d\xa3\x23\x3b\x72\xc9\x15\xb7\xe9\xb1\xb5\x3c\x10\x1d\xd5\xf5\xeb\x28\xed\x7e\x1f\xb4\xf1\xe6\xd7\x63\xa1\x1e\x9e\xe0\x0d\xd9\xf6\xb1\xdb\x1e\x7a\x0b\xfa\xed\x55\x0b\x6e\xd5\xb8\xd9\x70\x3c\x3e\xf9\xc3\x09\x8c\x44\x47\xe3\x13\xf6\x87\x13\x6c\xbe\xff\x15\x67\x9f\xd7\x1c\x31\x0e\xb0\x4a\xfe\xc3\x29\x52\x39\x71\x31\xe5\xc5\x6a\x7d\x85\x29\x28\x4d\x16\x6e\xe6\x60\x3f\x23\xcb\x71\xc6\xd6\x8c\x67\xbc\x64\xeb\x8b\x82\x94\x0c\x34\x1a\xbd\x28\x81\x69\x8c\xd5\x69\xf3\x79\x96\xaf\x79\xb1\xcc\x38\x28\x74\x6e\x61\x72\xc7\x1c\x4f\x40\xb9\xd4\xc9\x99\x93\x98\x79\x69\x4c\x4f\xc0\x36\x3b\x1a\xc6\xe3\x7f\xcd\x27\x60\x8e\xd6\xf1\x38\xa7\x13\x30\x37\x83\xf9\xc3\xa3\x2b\x53\x68\x81\xaf\x90\x49\x36\x1d\xfe\x2b\x43\xb8\x28\x6f\x26\xeb\x7f\x97\xe0\xc6\x4c\xd0\x54\xf8\xbc\x9e\x2e\xd6\x8c\xad\xd9\xa2\x39\xb5\x65\xc6\xe9\xfa\x0a\x51\xbe\xc6\x64\x06\xe2\xd1\x10\x7f\x5e\xa3\xcf\xa6\x14\x9e\x22\xb3\xe2\xcb\x75\x0e\x8a\x92\xa1\x3a\xc7\xc9\xc0\xd3\x76\x7a\x61\x5b\x41\xc4\x26\x21\x62\x12\x55\xf7\xff\x2e\xf1\xcf\x26\xe5\x67\xd1\xd7\x04\x9a\xf3\x2c\xb6\x5f\x2d\x8e\x2a\xca\x98\x5f\x95\x00\x74\x6d\x77\xff\x9a\x05\x96\xb8\x5c\xaa\xc4\x38\x03\x24\xcb\x6f\xd6\xf1\x05\xc8\xd6\xf1\x0c\xe0\xec\x92\x14\xeb\x78\x05\xa4\x47\xcc\x05\x12\x9f\xb4\x90\x69\x0c\xdc\x90\x62\xb5\x8e\x39\x58\x20\x10\x33\xcc\xd6\x0c\xd9\x7e\x19\xd6\xbd\xfc\x2b\x13\xed\x75\xe7\xcb\x1d\xbc\x42\x66\x74\x73\xe4\x6c\x1b\xf3\x26\xc1\xdb\x49\x72\xd7\x9d\xca\x81\xfd\xc5\x36\xf7\x46\xaf\x0d\x40\xb4\x4e\x94\xdf\x7a\x7b\x41\x71\x55\x67\x88\xef\xd6\x81\x40\x5e\xf7\xcd\xfd\x14\x5b\x6e\x0e\x3c\x03\x31\x62\x60\xe4\x8d\xb6\x68\xd4\x8f\xd9\xa2\x68\xce\x68\x4a\x31\x53\xd7\x35\xc6\x6c\x5d\xaf\x17\xb6\xb7\x19\x7c\x1e\x63\x34\x31\xb5\x3e\xe3\xd6\x65\x8e\x4b\xb6\xc6\xa6\x5e\xc9\x3a\x2f\x6e\x6b\x80\xf2\x1c\x22\xe2\x0e\xc7\x9e\x76\x71\xba\xcd\x92\x7d\xae\xaf\x83\x9b\x8e\x3f\x3b\xe7\xf4\xe7\xc6\x54\x67\x19\xcf\x2e\x32\xe6\x4e\x77\x02\x31\xa5\x48\x9e\xdf\x77\x19\xa6\x02\x86\x45\x02\x29\x90\x16\x9b\x2b\x54\xac\x72\xb9\x9a\xd1\x32\x13\x09\x4b\x75\x33\xa2\xe9\x02\xe7\xb3\x08\xaa\xff\x54\x27\x32\xf4\x59\x6a\x24\x7e\x56\x7b\x19\x2d\x8b\x2b\x24\xea\x14\x1a\x0c\x44\xd3\xe2\x3a\x82\xd1\x27\x4c\x54\x93\x3f\x17\xcb\x0b\x2c\x4a\xa8\x0f\x79\x97\x4a\x22\xf1\x1b\x89\xce\x8e\x23\xf4\xef\x12\xaf\x94\xca\x55\x84\xc9\xbc\xa0\x4b\xc9\x7a\x8b\x60\x44\x95\x7d\xe6\xb2\x20\xe8\x46\x74\xba\x42\x53\xd1\x82\x54\x88\x54\x1f\x73\xcc\x16\xe2\xf7\x02\xa1\x55\x04\xa3\xff\x42\x99\x78\x0b\xa2\x55\x91\xcb\x1b\x1f\xd0\x2f\xdc\xf6\xca\x7f\x53\xad\xaf\x93\x7f\xfd\x93\xfd\xf1\x0f\x27\x90\xa6\x27\xf1\xf8\x9f\xd7\x27\xc7\x93\xa3\xf1\xf9\xc9\x3f\xd9\xf1\x04\xc4\xe3\xec\xf8\xe7\x7f\xce\x26\x47\x7f\x00\x27\x90\xe8\x7c\x91\x73\x04\xe2\xf1\xd3\xe3\xff\x6f\xa2\xf3\xff\x28\xf2\x71\x7a\xe2\xa7\x9d\xd4\xa8\x77\xd1\x92\x33\x4a\x9f\x78\x46\xce\xf8\x84\x48\x59\x23\x4a\x9c\x4d\x18\xf3\x31\x9d\x24\xbc\x78\x5d\x5c\x23\xfa\x2c\x63\x28\x06\x93\xf4\x70\x50\xcb\x2e\xb3\x66\x9b\x06\x07\x4d\x07\xd2\xb7\x9e\x6e\x9c\x3c\xc1\x67\x44\xa0\xed\x29\x1f\x93\x09\x44\x89\x3d\x75\x63\x3a\x1e\xb4\x7a\xa0\xe3\xd3\x66\xa1\xd3\xad\x85\x5e\x91\x2b\x44\x19\xea\x28\x3b\xe8\x28\x1b\xea\x7c\x30\xf1\x5c\xf8\x82\xdb\x18\xa5\x68\xbd\xbe\xad\x80\xbb\x36\xa9\xb7\x52\xeb\x75\x19\x03\xb7\x0b\x79\x9d\xd2\x66\x82\x2c\xe6\x3a\xe4\xa4\x12\xc1\xb1\x28\x84\x41\x88\xd8\x7a\x3d\x76\x9e\x96\x1a\x87\x92\xe9\xb6\xcd\xa1\xe8\xb4\x39\x2b\x99\xe8\xde\xa4\x32\x06\xd5\x41\x11\x0b\x54\xcc\x49\x06\x30\x93\x49\xfe\x00\x8d\xfc\x8c\x88\x22\xcf\xb2\xe9\x02\xc5\xa0\xc2\xf3\xf8\xd0\x73\xed\xdc\xef\x1f\x06\x22\x97\x34\x7c\xca\x81\xa6\x8e\x57\xf4\x71\x81\x59\xef\x82\x16\xd7\x0c\xd1\xde\xac\x40\xac\x47\x0a\xde\x63\xe5\x4a\xd2\xd4\xa1\x58\x28\xbd\x95\x22\xc1\x57\x45\x7e\x33\xc7\x79\x4f\x90\x41\x3d\xc4\xfe\xc7\x31\x5b\x64\xcb\x61\x6f\xc1\xf9\x6a\x78\x72\x72\x89\x79\x82\x8b\x93\x9b\xef\x7f\x7c\x44\x2f\x5d\xf7\xcd\xa5\xe5\xb0\x07\x1a\xaf\x65\x03\xe7\x33\x3c\xd5\x01\x4d\x75\x0c\x10\x9d\x06\x51\xc5\x9c\xb0\xd5\xb7\xce\xb2\xb4\x64\x95\xab\x92\x5e\x9a\x15\xd3\xf1\x56\x1c\xbc\xb7\x4d\xa9\x28\x91\xc2\xf9\x54\xd4\xf8\x91\xa1\x59\x7a\x38\x80\x5a\x67\x50\xb6\x32\x46\x93\xf5\x3a\x6e\xa4\x68\x49\x81\xcb\xb5\x40\x00\x54\xaa\x62\x8d\x4b\x87\x54\x3e\xef\x29\x60\xbf\xad\x0e\xda\x03\xd5\x42\xfd\xb1\xa4\x50\x12\x97\x56\xf5\x23\xfe\x9c\xaf\xd4\xc0\x49\x3d\x15\x9b\xa2\xa7\x52\x33\xae\x14\xa9\x08\xaa\x0a\xd6\x4b\xd9\x96\x08\x3b\xc3\x38\xf5\xd6\x2b\x2d\xcd\xba\xeb\x3e\x44\x42\x05\x67\x98\x75\xef\x99\xa9\x5a\x47\xd5\x34\x75\x9d\x38\x9b\xbb\xec\xa2\xbf\x21\xdd\xfb\xd1\xa8\xd6\xa4\xe0\x1b\x1a\xa2\x62\x29\x64\x89\x86\x6a\x4c\x63\x25\xb4\x84\xbd\x7d\x00\x25\x70\x31\x10\x45\x31\x16\xc4\x96\x35\x20\x1e\xa8\x6a\x40\xf3\x25\xfd\x98\x46\x36\x75\xe4\x82\x25\x77\x31\x77\xe8\x49\xcb\xfc\x65\x5f\x70\x8c\xda\x6d\xd7\x50\xf1\xce\xb3\xc8\xbc\xb6\xc5\xd0\x27\xa2\x45\xbb\x3d\x5d\x02\xc1\xad\x1b\x08\xcf\x03\x6d\x7c\x95\x4b\xd9\x8c\x83\xcb\x4d\xb0\x55\x89\xb0\x88\x3e\x5a\x27\xc0\x4d\xb2\x8b\x05\x86\xf1\xe9\x61\x9a\xae\x32\xca\xd0\xcb\xbc\x90\x9e\xbd\xa5\x52\x9c\xd7\x1c\xdf\xb9\x39\xd0\x00\x08\x23\x3e\x44\x47\x51\x2f\x3a\xe2\xce\x39\xeb\x70\x50\x1c\xbe\x4b\xe7\xbb\xd4\x0a\xce\xdb\x54\x0c\x8e\x54\xbf\x96\xe2\xe0\xa8\xba\xee\x06\xd9\x98\xd0\xd2\x9b\x87\xc1\x6a\xa6\xe6\x63\x6e\x3e\x66\xe6\x63\x61\x3e\x56\x4e\x18\x3c\x96\x1e\xa2\xf5\x9a\x2b\x75\x4a\x04\x60\x99\x62\xfb\xcd\x3c\x3d\xfe\x79\xda\x38\xd0\x30\x9e\xa5\x34\x41\x9f\xd1\x54\x6a\x5d\x12\xf3\x29\xf6\x66\x91\xce\xc6\x8f\x1a\x78\x8b\x77\x13\x5d\x0c\x6e\x3e\x59\xaf\x3b\xb2\x16\x93\x7a\x0c\x02\x83\x5b\xf5\x30\xe9\x65\x40\x0c\x47\xbb\x13\x59\x1d\x45\x7f\x88\xac\x1a\xe8\x34\xcd\xc6\xab\x09\x2c\xfb\xfd\x6c\xbc\x98\xf4\xfb\xf1\x34\xf5\x24\x57\xd3\x6c\x85\xb9\x82\xe5\x53\x00\x57\x9d\x99\x2b\xa0\x0c\x8c\x56\x79\x36\x45\xb1\xc0\x0f\xde\xa3\xcb\x17\x9f\x57\xf1\x0a\x46\x38\x02\x70\x5a\xeb\x61\x2e\xd3\xc2\xe0\x90\xcb\x3f\x0d\xfa\xfd\xc3\x78\x95\xc6\x79\x5a\x8c\x97\xc7\xa7\x13\x30\x1e\x4c\x80\x59\xd0\xb3\xe5\xf1\x31\x38\xd3\x23\x95\x85\x72\x81\x2b\x89\x32\x70\x9a\xe6\x0a\x59\x34\x7d\xae\xe0\x54\x00\xd7\x9a\x87\xb3\x55\xc0\xd4\x60\xe7\xdd\x99\x49\xf8\xd5\x05\xdf\x5b\x24\xdd\x28\xfc\xfa\x48\x64\x48\xc3\x8e\x18\xa5\x01\xf6\x1e\x68\xb1\x95\x91\x07\xd0\xd0\xd6\x07\xb1\xdd\x66\xd2\xb8\xd2\xdb\x16\xbb\xcd\x52\x7e\x58\xdb\x7c\x3c\x8f\x5d\x45\x55\x3f\x90\xbb\x56\x5e\x55\x03\xd3\xba\xd6\x3a\xe7\xe3\x0f\xaf\xbf\xcf\x28\x6b\x94\xd7\xa9\x32\xde\xc4\xf7\x45\x49\x66\x7f\xb1\x55\xfd\x82\x52\x15\xee\x22\x5c\x34\xb0\x66\x79\x91\xcd\x8e\x6b\x6f\x06\x94\x85\x94\x35\xb4\x5b\x9f\x3b\x05\xea\x52\x4f\x53\xec\x70\x7f\x41\x8c\x54\x80\x14\xf9\xe7\x70\xa0\xc2\x48\xd0\x16\x86\x2f\x20\xbd\xd4\xd1\x56\x03\xe8\x65\xa4\xe7\x0c\x30\x89\x8c\xb6\xbc\xe5\xe1\xd7\x7a\xcf\x24\x5b\xa2\xf5\x3a\x56\x1f\x56\xb1\x19\x25\x79\xc6\xf8\x2b\xad\x90\x14\x9d\x44\xe0\xe8\x54\xc6\x7f\xf6\x54\xae\xad\xb6\xf0\xb1\xd2\xc2\x33\x0a\x4c\x82\xbc\xd1\x2a\x32\x86\x14\xfd\x22\x91\x90\xbf\x82\x36\xce\x63\xca\x8f\xa2\x13\x6f\x23\x22\x58\xe8\x44\xed\xdb\xbd\x91\x9b\xa5\x82\xba\x13\x7f\xca\xd4\x0d\xec\xab\x77\xeb\xbf\x58\x72\x8e\xb2\x4f\xe7\x0c\x21\x02\x60\x9e\x0e\xce\xf2\x27\xa5\x81\x83\xb9\x51\x08\x9e\xa6\xe5\x38\x9f\x1c\x88\xc7\x7f\xea\x2d\x13\x86\x03\x30\x22\xf1\x14\x46\xc7\x02\x38\x46\x60\xbd\x56\x81\xbc\xe3\x29\x18\xb6\x8b\x17\x70\x20\x5e\x15\xbf\x02\x33\x15\x40\x15\x87\xa7\x4d\xd2\xc1\x19\xa9\xf5\x94\x89\xe4\x1d\x38\xf3\x8c\xa9\x8c\x56\x0a\xa4\x55\x2a\xcc\x5c\xbb\xd4\x1d\x9a\x51\xeb\xf6\x2a\xd4\x5c\x8c\x20\x0b\xdd\x87\x65\xc6\x17\xc7\xd6\x56\x45\xff\xcf\x2e\x76\x16\x01\x34\xd5\xbd\xef\x66\xb1\x82\x3a\x8c\x49\x1c\x83\x95\x46\xf8\xb9\xf5\xfa\x70\xb3\xfd\x9e\xb1\x42\xf9\xc5\x9b\xec\x91\xf5\x5a\xd9\x56\x18\x6b\x3d\x71\x7e\xee\x64\xb7\xb7\xb7\xc2\xb9\x83\x15\x8e\xbf\x5e\xbb\xdb\xe1\x6c\xb5\x79\xfc\xcd\x19\xe3\xb4\x4d\x25\x75\xb1\x1f\x32\xbe\x48\xb2\x0b\x16\xd3\x7b\x3d\x08\xd9\x05\xdb\xd1\xc6\x45\xa3\x09\x64\x8b\x85\x4a\x18\x76\x4d\x8b\x3d\xf0\xda\x03\xaf\x3d\xf0\xda\x03\xaf\x00\xf0\x9a\x16\xf7\x86\x5e\xd3\xe2\xa1\xc0\xd7\x62\x0f\xbf\xf6\xf0\x6b\x0f\xbf\xf6\xf0\x2b\x08\xbf\x16\x5f\x00\xc0\x16\x0f\x01\xc1\x66\xb3\x2f\x72\x76\x80\x12\x8a\x66\xe5\x14\xc5\x71\xd0\xb4\x59\x79\x0c\x8d\x11\x38\xd2\x5f\x5c\xea\x29\xde\x67\x41\x66\xb3\x94\x77\x05\x2b\x0c\x2d\x07\xdf\x12\xae\x2e\xbc\x1c\x0c\xef\xec\xaa\x67\x0f\xcf\xf7\xf0\x7c\x0f\xcf\x7f\x4f\xf0\x9c\x61\x72\x5f\x70\xce\x30\x79\x08\x68\xce\x30\xd9\xe3\xa3\x7b\xf8\xb5\x87\x5f\x7b\xf8\x15\x86\x5f\xf7\xc6\x47\x45\xdd\x87\x80\x60\x3c\xdb\x23\x60\x7b\x00\xb6\x07\x60\x7b\x00\x16\x00\x60\x3c\xbb\x37\x02\xc6\xb3\x07\x41\xc0\x78\x46\x1e\xed\xe1\xd7\x1e\x7e\xed\xe1\xd7\xef\x1e\x7e\x3d\x02\x90\x28\xb3\x0c\x2c\x2d\x39\x5a\xa0\xec\x51\x4c\x20\xbe\x37\x34\x7b\xf4\x40\xe0\x6c\x4f\x4f\xee\xc1\xd9\x1e\x9c\xed\xc1\x59\x18\x1d\xbb\x37\x3d\x29\xea\x3e\x00\x04\x9b\x5e\xd0\x9d\xdd\xd9\xef\x01\xd8\x1e\x80\xed\x01\xd8\xef\x08\x80\x09\xe0\x70\x4f\xf8\x25\xaa\x3e\x04\xf8\x42\x38\xdf\x83\xaf\x3d\xf8\xda\x83\xaf\x3d\xf8\x6a\x83\x2f\x84\xf3\xfb\x82\x2f\x84\xf3\x87\x00\x5f\xf9\xcf\x8f\xf7\xec\xb0\x3d\xfc\xda\xc3\xaf\x3d\xfc\x0a\xc0\x2f\x01\x1d\xee\x0b\xc0\x44\xdd\x87\x80\x60\x7b\xfb\x84\x3d\xfc\xda\xc3\xaf\x3d\xfc\x0a\xc1\xaf\x7b\x9b\x27\x3c\x8c\x75\xc2\xde\x38\x61\x0f\xbc\xf6\xc0\x6b\x0f\xbc\xba\x80\xd7\x7d\x79\xf7\x0f\x64\x9a\x30\xc3\x57\x0f\x62\x9a\x70\xf2\xa5\xa6\x09\x33\x7c\xf5\x00\xa6\x09\xe8\xf3\x6a\x0f\xcc\xf7\xc0\x7c\x0f\xcc\xf7\xc0\xbc\x05\xcc\xd1\xe7\xd5\x3d\x61\x39\xfa\xbc\x7a\x00\x50\x8e\x3e\xaf\x96\xa7\x7b\xe8\xb5\x87\x5e\x7b\xe8\xb5\x87\x5e\x21\xe8\xb5\x3c\xbd\x3f\xfc\x5a\x9e\x3e\x00\x04\x9b\xe7\xc5\xee\x1e\xb2\xf7\x10\x6c\x0f\xc1\xf6\x10\xec\x77\x04\xc1\x24\x74\xb8\x27\x04\x93\x75\x1f\x02\x82\xd1\xa2\x24\xf7\x32\xf6\xdf\x83\xb0\x3d\x08\xdb\x83\xb0\xdf\x3a\x08\x93\xe0\xe1\xbe\x30\x4c\x56\x7e\x00\x20\x76\x39\xdd\x43\xb0\x3d\x04\xdb\x43\xb0\x3d\x04\x7b\x04\xa4\x59\xd5\x60\x62\x2f\x4f\x9a\xa6\x78\x34\x18\x62\x98\xa9\xc0\x39\xac\x4e\xcf\x46\x83\x61\x06\xcb\xd4\xfa\xc4\x2c\x00\xcc\xeb\x5f\xcc\xba\xa9\x16\x85\xcb\x51\x2e\x5d\x08\xe7\xa3\x72\x48\xe2\x71\x0e\xcb\xff\xc8\x27\xf7\x02\x8b\x97\xd3\x87\x80\x89\x8b\x9b\x55\x71\x2f\x1b\x87\xbb\xc2\x44\xe9\xa4\xbb\x01\x16\x9b\x40\xf1\xd0\x07\x8a\xfd\xfe\x46\x90\x18\xba\x66\x1d\x80\x77\x0f\x3f\xba\xe0\xc7\xfd\xa0\x07\x5b\x51\x94\xcd\x7e\x37\x80\xc3\x45\x75\xe4\x85\xd1\x9e\xff\x45\x02\x94\x67\xf1\x3e\x17\x5c\xb6\xf4\x00\x57\x1c\x2f\xcb\xbd\x19\xc0\x1e\xef\xf9\x6d\xc1\xad\x3d\xde\xf3\xd5\xad\xca\x05\x9c\xb8\xb7\x51\xb9\xa8\xfc\x00\xb0\x2c\x9f\x06\x23\x50\x77\x92\x7b\xbb\x87\xf5\xd8\x43\xbb\x5f\x0b\xb4\x23\x35\xb4\xa3\xf7\x87\x76\xb4\x0d\xed\xe8\x36\x68\x47\x6b\x68\x47\x77\x84\x76\xf4\xee\xd0\x8e\x02\x7f\xa6\xbf\x76\x68\x47\x1e\x0c\xda\x61\x03\xed\x48\x4a\x0d\x95\x47\x3a\xa8\x3c\x12\xa2\xf2\x5c\x4a\xae\x58\xaf\xc5\x3f\x36\x1a\x0c\x6b\xca\xef\x8f\x0c\x9c\xc8\xc0\x3f\x97\xd3\x19\x88\xc7\x05\x64\xf7\x23\xee\xf2\xe9\x32\xc5\x61\x68\x59\x04\xa1\x25\x76\xa1\x65\x51\x01\x70\xb0\x0b\xb4\x2c\x2e\x8f\xd1\x1e\xf5\xfb\x2d\x03\xc3\x3d\xea\xf7\xeb\x02\x86\xbf\x20\xa6\x7d\x5e\x5c\xde\x93\x63\x9f\x17\x97\x2f\x1e\x02\xd9\x2b\x2e\x4f\x07\x7b\xf0\xb5\x07\x5f\x7b\xf0\xb5\x07\x5f\x21\xf0\x75\x3a\xb8\x3f\x00\x3b\x1d\x3c\x10\x04\xdb\x2b\xde\xef\x21\xd8\x1e\x82\xed\x21\x58\x18\x82\xdd\x57\xf5\x5e\xd6\x7d\x18\x08\xb6\xf7\xc1\xb1\x07\x60\x7b\x00\xb6\x07\x60\x41\x00\x76\x5f\x17\x1c\xa2\xea\x03\x80\xaf\x65\xf6\x79\xaf\xdc\xf0\xbb\xbd\xe7\x7b\xe5\x86\x3b\x2a\x37\x2c\xb3\xcf\x5f\x45\xb5\x61\x99\x7d\x7e\x88\xcb\x7d\xbf\x70\x6b\xfb\xcb\xbd\xbf\xdc\xbf\xcb\xcb\x8d\xc9\xd7\xb9\xdc\x0f\x12\x8d\x6c\x59\x3c\x4c\x6c\xc9\xff\xf8\x52\x07\x0e\xcb\xe2\x21\x62\x4b\x2e\xcb\xfc\xcb\xd4\x34\x77\x5d\x8f\x3f\x7e\xf1\x7a\x88\x69\x7d\xfb\x05\x59\x15\xd7\xdf\x72\x3d\xe4\x8d\x59\x15\xd7\x0a\xda\xdc\x6f\x25\x56\xc5\xf5\x03\x2c\x04\xcd\xc8\xac\x58\xee\x69\xf4\x3d\x8d\xfe\x9b\x7a\xde\xf7\x34\xfa\x5d\x5f\xf9\x98\xa4\x91\x49\x6f\x5e\xc3\x7e\x3f\x62\xf2\xa3\x99\x61\x27\x33\x72\x41\x80\xee\xc7\x1c\xc3\x6a\x18\xc8\x44\xfd\xfe\x86\xee\xbc\x63\x95\xa6\xa9\x4d\x3f\x34\xdf\xf5\x01\x1e\x99\xb1\x0d\x6d\x87\x40\x60\xc4\xf7\x00\xb9\x0a\x18\xa6\xac\x0b\x3d\x31\x88\x10\x2c\x52\x43\xf0\xc0\x2c\xbd\x9d\xa1\x29\x5e\x66\x39\x1b\x0e\xaa\x1a\x42\xb2\x9a\xfd\x91\x99\xf3\xad\xb7\xed\x4f\xa7\xfd\xbe\x6a\xf7\x30\xad\x33\xc7\xa7\x93\x91\xfb\x63\x28\x60\x15\x4d\x4c\xe3\xf2\xa6\x14\xf5\x6d\x8c\x05\x74\x3a\x54\xef\x40\x1b\xd4\x1a\xd5\xa4\xc3\x34\x45\xb6\x89\x51\xfd\x39\xcc\xec\x27\x3c\x92\x73\x51\x73\x8f\x41\xc2\x8b\x97\xf8\x33\x9a\xc5\x45\x3c\x80\x38\x7e\x34\x80\x0c\x00\x79\x4f\x51\xbf\x7f\x9a\xa6\xf5\xe1\x93\xb3\x2b\x35\x73\x07\xe6\x69\x59\x33\x78\x8e\x62\xaf\xcd\x3f\xe6\x1d\xcd\x56\xaa\xd9\x47\xad\x66\xa7\x46\xe1\x74\x9e\x4e\xc7\x83\x09\x9c\xa5\xd3\xf1\xe9\x44\x8c\x62\xf6\x64\xae\x8a\x2c\xd2\xf1\x0c\xce\x27\x07\xf3\x74\xa1\x4a\x2c\xc6\xa7\x93\xca\xf4\x3f\xf7\x67\xf5\xc7\x78\x76\x3c\x07\x5d\xa3\xd0\x95\x76\x58\x87\x4a\xcd\x39\xf4\xfc\x32\xf7\xf9\x2d\x77\x7d\x7e\xef\x6d\x18\x4d\xed\x55\xb2\x4a\x68\x54\xea\x9c\x1d\xd1\x91\x9a\x88\x34\xaa\x44\x60\x18\xd3\xf4\x88\x42\x05\x4c\xd2\x18\xa5\x47\xe2\x11\xc6\xec\x4d\xf6\x46\x3e\xc7\x11\x91\x28\x5b\x4d\x84\xd2\xf5\x9a\xfe\xc7\xe9\x61\x3a\x18\xbd\xc9\xde\x0c\xd1\x93\xc1\xe8\x98\xc7\xc7\xa2\xc7\x61\x8c\xd2\xfa\xc1\x88\x41\xc2\x56\x39\xe6\x71\x84\x22\x00\x91\x68\xda\xe9\xf8\x28\x8a\xc4\x25\x9e\x66\x3c\x46\x62\x7f\x44\xa1\x3a\xe1\x74\x32\x3a\x12\x7f\x8f\xe9\xf0\x98\x02\xb9\x31\xa1\x46\x77\x6b\xe4\x88\x0e\x45\x1b\x3e\x00\xa5\xf2\x85\xd4\x7f\xed\x61\x37\xf7\x43\xb7\x77\xec\xe4\x1c\xc8\x82\xe8\xf3\xaa\x51\x46\xa5\x55\x2e\x66\xa7\x97\x76\x3c\xb8\x9f\xfa\x9e\xb2\x58\xa5\x61\x28\x43\x82\x87\x8b\xba\x87\x8b\xec\x78\xb8\x18\xbe\xdc\x07\x34\xdd\x63\x76\x7b\xcc\xee\xf7\x8a\xd9\x6d\x92\xbe\x08\xe0\x70\x4f\xe9\x8b\xa8\xfa\x00\x3c\x1c\x76\x3f\x06\xed\x1e\x7a\xed\xa1\xd7\x1e\x7a\xfd\xe6\xa1\xd7\xfd\x81\xd7\x83\xc0\xae\x7f\xef\x63\xff\xed\x81\xd7\x1e\x78\xed\x81\x57\x08\x78\xfd\xfb\xde\xb1\xff\x44\xd5\x87\x00\x5f\xe5\xc5\x83\x88\x8b\x8e\xbf\x54\x5c\xc4\xca\x8b\x07\x10\x92\xf0\x6c\x8f\x89\xee\x81\xf9\x1e\x98\xef\x81\x79\x1b\x98\xf3\xec\xbe\x98\x28\xcf\x1e\x02\x13\xdd\x87\xd1\xdf\x03\xaf\x3d\xf0\xda\x03\xaf\x2e\xe0\x75\xdf\x48\x3c\x0f\x14\x44\x9f\xd3\x92\x4c\xf7\xf0\x6b\x0f\xbf\xf6\xf0\x6b\x0f\xbf\xda\xf0\x4b\x40\x87\xfb\x02\x30\x51\xf7\x6b\x43\xb0\x9b\x0b\x74\x8c\xc9\x31\xca\x91\x38\x31\x27\xd3\x62\xb9\x2a\x88\x38\x3b\x27\xcd\xbc\x5d\x61\xda\x7d\x82\x82\xb5\xe7\xc3\xcd\x7c\x3e\xfe\xf0\xfa\xfb\x8c\xb2\x44\x1c\xa9\x3c\xe3\x28\xbe\xc5\xb3\x61\xf4\xfc\xd9\xbb\xff\x22\xcb\xff\xf5\x3e\x82\x17\x79\x31\xfd\x34\xfc\xee\x56\x2b\xd5\xb0\x68\x38\x8e\xfa\xba\xc1\x08\x46\x7f\x16\x27\x10\x93\x4c\x0c\xf5\x85\x99\x48\xf4\x67\x8a\xc8\x0c\xd1\x57\xe4\x5d\x9e\x4d\x51\x34\x81\x11\xe3\x19\x47\xea\xd2\x0c\xc7\xe3\xff\x09\xc7\x8f\xff\x17\x7c\x34\x81\xe3\xf1\xe3\x47\xf0\xf1\x64\x22\xb5\x11\xe0\x78\x1c\xd5\x2d\xa3\x9c\x89\x9a\xe3\xdb\x46\xdd\xd3\xff\x0b\x9e\xca\xe2\x93\x09\x8c\x56\x19\xcd\x96\x88\x23\x2a\xb2\x26\x15\x6c\x16\x56\x1d\x9d\xca\x8e\x06\x70\xfc\xf8\x7f\xc2\x81\xee\xf4\x91\xee\x74\x22\x7e\x47\x97\x25\x9e\x45\x30\xc2\x84\x21\xca\xbf\x47\xf3\x82\xca\xbe\xa3\xff\x98\x96\x94\x15\x74\x38\xf8\x8f\xc8\x29\x6d\x06\x79\xc7\xd1\x4d\x26\x9d\x89\x8b\x8c\xbd\xb8\xca\xf2\x68\x38\xcf\x72\x86\x60\x54\xae\xae\x32\x59\x20\x52\x27\xe4\x58\x34\x29\x07\x58\x1f\x97\x08\xcf\xa3\x49\xf5\x1d\x5c\x22\x9e\x0d\x6f\x97\x72\xe7\xdf\x64\x4b\x34\xbc\xc7\xe1\x4b\x16\x17\x2c\xaa\x2a\x00\x0d\x93\xe4\x9c\x21\xfe\xcc\x94\xff\x68\xce\x06\x87\x3a\xd7\x9c\x96\xb7\x24\xbf\xb1\xc5\x62\xb0\x85\x97\x22\xe0\xed\xec\x58\x9e\x28\x76\xbc\x2a\xf2\x9b\x39\xce\x73\xfb\xb2\x1f\x2f\x32\xa6\x32\x8f\xe5\x1a\xb1\x90\x6b\xb6\x60\x13\x7b\x1c\x60\x8f\x03\xec\x71\x80\xdf\x36\x0e\xf0\x75\x9e\xbd\xb0\x32\x95\x07\x3c\x6a\xf4\xe2\x71\xc3\xbd\x25\x2c\x52\x3a\x7e\x54\x8f\x69\x84\xc5\xc5\x26\xfd\x3e\x19\xe3\xc9\x9f\x06\x43\xe9\x47\x6d\xa3\x56\xd6\xae\x00\x70\x0f\xf9\xf6\x90\x6f\x0f\xf9\xf6\x90\xef\x17\x0e\xf9\xbe\x1c\xe2\x61\xe6\x96\x38\xc6\xe4\xaa\x98\x4a\x5a\xe2\x9e\x10\xb0\xe5\x93\xf7\xeb\x2c\x5e\x58\x74\x18\xb7\xcd\x18\xa4\x33\x4f\xcc\x04\x1a\x3e\xfb\x5e\x0c\xf4\x95\x9d\x11\x50\xda\xc3\x68\x7c\x3a\x01\xd5\x17\x62\xca\xbf\xbd\x35\x23\x9d\x2b\x76\xdf\xc5\xc2\x64\x86\xbe\xc8\x5b\x43\xcc\xf7\x06\x30\xa1\x6d\x49\x9b\x30\x83\x9b\x67\x6a\x4a\x91\xa0\x12\x05\x24\xb4\x51\x4c\xc2\x9d\x72\x18\x99\x97\x2c\x82\xb7\xd3\x82\xcc\xf1\x65\x29\x01\xf3\xf0\x70\x00\x11\x29\x97\x48\xff\x3a\x85\xd7\x14\x73\xf3\xad\x06\xe7\x3c\x15\xaa\x97\xe8\xf6\xf6\x06\xa3\x7c\xd6\xe3\x45\x6a\x0d\x04\xfe\xcf\x87\xb7\x6f\x12\xf5\xcc\xe2\xb9\xc0\x6c\x60\x54\x55\x11\x90\x54\x6e\xc2\x10\x8f\x39\x44\x00\xf2\x0a\xa2\x8e\x1b\xeb\x4c\x14\x12\xdb\x55\x6d\x72\xc3\xa5\xc9\x8d\x98\xed\x61\x9a\xa2\x7e\x9f\x26\x8b\x8c\xc5\x08\x8c\x48\x9a\xa6\x34\xb9\x44\xa2\xc0\xd0\x72\x0b\xc4\x73\xa9\x3a\x93\xfd\xb0\x57\x64\x5e\xa4\xed\x83\xb0\xa1\x03\x6d\xb2\xa1\x97\xf4\x12\xf1\x77\x66\xcb\xdf\xce\x65\x51\x9d\x23\x57\x49\x8c\x24\x41\x57\x88\xde\x84\x2e\x9d\x31\xf2\xa8\xf1\x8f\x0a\x80\x4a\x5f\x5c\xf1\x32\xfd\x1d\x65\x9f\x7e\xc8\x56\xed\xdb\x56\x10\xcd\x93\xb7\xe0\xa8\x20\xc7\xb3\x62\x5a\x36\x99\x58\x70\x43\x85\x3b\x78\x52\xbf\x2b\xde\x4a\x7e\x05\xfe\x15\x7e\x87\x3e\xc7\x7f\x9d\xfe\x15\xbe\xb9\xb3\xf1\xaf\xf3\xd6\xe2\x94\x9b\xe4\x04\x7d\xe6\x88\xcc\xe2\xdb\x69\xb1\x5c\x95\xdc\x01\x96\x2e\x0d\xc8\x17\x98\x25\xe7\xac\x14\x4f\xf2\xd8\x5c\xde\x89\x81\x9c\xe2\xd6\x01\xb1\x6d\xd5\x16\xfe\x76\x10\x16\x5c\x63\x32\xf3\xad\xe9\xf7\x90\x60\x0f\x09\xf6\x90\xe0\x57\x00\x09\xd4\xd5\xfd\x3a\x70\x60\x33\x00\x28\x39\xce\xd9\x09\xba\x42\x84\x1f\xe7\x98\x71\x44\x10\xdd\x87\x57\xf9\x0d\xb2\xb3\x7e\x87\x00\xee\x57\xcd\xce\xfa\x25\xc2\xb9\xf3\xf3\x69\x51\x12\xce\xd2\x16\xe1\x77\x9b\xcd\x66\x6c\x88\x21\x45\xcb\xe2\x0a\xb1\x61\x51\x55\x5d\x70\x51\x5c\x8b\x41\x0d\x44\xb2\x18\x41\x0a\x09\xc4\xe0\x56\x90\x6e\xfd\x3e\xe9\xf7\xe3\xe2\xe8\x08\x4a\x76\x84\x6a\xef\x85\x00\x4f\xaf\x35\x74\x02\xb6\x82\x32\xfa\x67\x3e\x7f\xc3\x00\x5b\x09\xd2\x3e\x66\xf4\x12\xf1\xa1\x14\x6a\xcb\x04\x29\x97\x55\xc3\x81\xe2\xa8\x5f\x64\xd3\x4f\xe6\xb7\x2c\xf0\x76\x25\x46\xc5\x6c\x99\x36\xc8\x26\x8a\xd8\x2e\x64\x2c\x9a\xc7\x00\xb2\xb4\x18\x0f\x26\xb0\x4c\x8b\xf1\xe9\x04\xe6\x69\x31\x7e\x34\x39\xc8\x62\x09\xcf\x9d\x41\xc0\x3a\x41\x0c\x42\xfd\x34\x43\x70\x32\xf5\x00\x00\x6c\x36\x90\x32\xbf\x8e\x4b\x15\x8b\xf5\x28\x2c\x24\xc6\x66\xf5\xb2\xd9\x2c\xb8\x74\x05\x80\xa4\x6a\x8f\xb0\x84\x39\x24\xa0\x31\xd0\xb4\x6c\x0f\x4e\xd0\xcf\xd7\x38\xcf\x9f\x8b\x8b\x52\xdc\x0c\xbd\x3b\x56\x3f\x63\x00\x7e\xf9\x32\xf8\x4f\x1e\xdb\xf4\xe4\x05\x9f\xb2\x6f\xa7\xcc\xd1\x5c\xdc\xb7\x64\x8a\xa4\xef\x80\x66\x86\xc7\xbe\x80\x58\x6c\x94\x7c\x85\x52\x7c\xc0\x47\xed\xe2\x31\x81\x19\x2c\xc0\xb0\xe8\xf7\x8b\xa4\x20\x53\x34\xa2\xb2\x62\x06\xbf\x2f\x8a\x1c\x65\x24\x2e\x92\x69\xb6\x12\xd0\x09\x80\x61\x47\x7d\x5b\x54\x34\x62\x4b\x8b\x3b\x19\xb8\x51\xcd\x93\x84\xc1\xad\x18\x58\xa0\x64\xac\xb2\x87\xdd\x99\xa6\x63\xdc\xef\x63\xbf\xe3\x0f\x3f\xbe\x7b\xf7\xf6\xfd\xc7\x0f\xe7\x2f\xfe\xf6\xe2\xcd\xc7\xf3\xb7\xef\x3e\xbe\x7a\xfb\xe6\x83\xaf\x0b\xe3\x1e\x24\x7a\x23\x97\x09\x41\x9e\x1a\xc2\x48\x33\xb6\xb4\x7e\x4b\x1c\xcd\xf0\x55\x04\x20\x4d\x07\x06\xaa\xb5\x8f\x7c\x1c\x4d\x73\x3c\xfd\x14\x39\x7b\x6f\xef\x09\x3d\x3a\xaa\x00\xbc\x15\x6b\xac\x36\x35\xc0\xf7\x93\x8d\x8d\x90\x84\xaa\xf2\xdb\x34\x28\x7d\x6e\x34\x07\xa6\x0a\xc8\x7f\x11\x00\x09\x26\x98\x7b\x95\xe0\xe1\x00\x1e\x0e\x00\xe4\xc9\x0c\xb3\x95\xc0\x15\x54\x36\x0a\x26\x9d\x8a\x97\x50\xa3\x14\x96\xef\x75\x78\x5a\x55\x31\x68\x20\x61\x90\x9a\x00\x59\x2d\x97\x36\x8f\x83\x2e\x6d\x1e\x4f\xfa\x7d\xf7\x57\xdd\x1e\x8e\xc1\x6d\x78\x7b\x39\xc4\x02\x3c\xd0\x18\x54\x81\x53\xa7\x72\xab\xce\x7d\xe6\xed\xab\xbb\xca\x2e\xd1\x31\xc7\x3c\x47\xb5\xfb\x37\x9b\x74\x3f\x8e\xb1\x7a\x0a\x24\x53\x71\x81\x19\x8c\x74\x53\xae\x6f\x94\x7b\xf1\x5f\xb7\xf3\xd5\xcd\xbb\x23\x66\xf0\x51\xf4\x2a\x56\x66\xa8\xdd\x00\x11\xd9\x21\x43\xf4\x4a\x60\x55\x00\x2e\x50\x36\x7b\x9e\xf1\xac\x2b\x5f\x1c\x9c\x6e\xa8\xaa\x2a\x5d\xda\x49\x7a\x5d\x46\x40\xe1\xaa\xb7\x78\xa6\x5b\xbf\x2c\xf1\xec\x65\x41\x65\x61\x50\x81\x2a\xf4\xa8\x51\x70\x4b\xfb\x7d\x9a\x9c\xcf\xd0\x8a\xa2\x69\xc6\x51\xbf\x2f\x90\xba\x22\x47\xc9\x75\x46\x49\x1c\xfd\xc8\x30\xb9\xec\xfd\x74\x7b\x2b\x97\xb4\xaa\x7e\xea\xa9\x3d\xeb\x61\xd6\xb3\x95\x66\xb0\x27\xf6\xe6\xa7\xdb\xdb\x7a\x23\x45\x51\x81\x38\xa1\x6c\x96\xf4\xa2\x23\xb7\x0f\xe0\x49\xc4\x3a\x27\x04\x8d\xd2\x5f\xc6\xa4\x73\x84\xdb\x0a\x52\xcb\xd7\xc6\x09\x9e\xa5\x81\x89\x42\x9c\xc8\xee\x53\x94\xfc\x57\x81\x49\x1c\x45\x00\x12\xb5\x34\xd8\x2c\x21\x2d\x49\xc2\xa6\x0b\x24\x76\x5c\x80\xef\x38\xca\xe6\x1c\xd1\xf7\x52\x69\x2e\x6a\xad\xb3\xd9\xb5\x08\x40\x2e\x6e\x42\x14\x55\x70\xd6\x7e\x02\x25\xd4\xda\x3a\x27\x1a\x1a\xf4\x81\xb9\x79\x31\x6d\xad\xcd\xdb\x6b\x79\xcd\x44\xb1\x24\x2f\x8a\x4f\xe5\x2a\x8e\x68\x51\x72\x44\x87\xcb\x0c\x13\xb9\x4c\x31\x49\xce\x55\xda\x0f\x78\x4a\x8b\x1c\x5f\xac\xd7\x24\x51\x29\xeb\xf5\x6d\x05\x92\x6c\xca\xf1\x15\xfa\x48\x33\xc2\xb0\x18\x2f\x2c\x5a\x23\xad\xa7\x79\x80\x47\x58\x10\x09\x4b\xcc\x50\xa2\xc9\x93\xd8\x05\xa4\x45\x82\x99\x46\x02\xd0\x6c\xbd\xde\x69\x55\x0b\xc8\x21\x02\x15\x00\xc3\xbb\x14\xaf\xb6\xc8\x9e\x1c\x58\xa2\xaf\x91\x0b\x4c\x24\x3e\x10\x22\x84\xa7\xc5\xea\xe6\x41\xa5\x70\x1f\xd4\xe0\x2c\xb8\x68\xde\x74\x75\x78\xc4\x46\x1c\x84\x2e\xbd\x03\xd9\x8a\x4f\x88\x30\x73\x48\x9f\xc6\xa0\x5d\x44\xbd\x00\x11\x1c\x68\x9c\xee\x5c\x43\xf5\xcf\x98\x71\x4c\x2e\xe5\x69\xfc\x98\x5d\xc6\xc0\xd3\x44\x6d\x1c\x35\x8a\x58\x91\x5f\xa1\xf7\xe8\x12\x33\x4e\xa5\x3c\x26\x8e\x94\xa0\x68\x88\xc8\x15\xa6\x05\x91\x02\x07\x70\xc0\x13\x7b\xc6\xfb\xfd\x71\xc4\xd0\x2a\x93\x34\x4e\x04\xa3\x15\x45\x2b\x44\x66\x11\x8c\x28\x5a\x29\x55\xd4\x64\x5e\xd0\x17\xd9\x74\xe1\x9c\x27\x6a\xe0\x37\x66\xef\x28\x62\xe2\x15\x74\xda\x1c\xd3\x09\xe8\xf7\xeb\x39\x22\x68\x25\x3a\x86\x4f\xa2\x97\xd8\x50\xb2\x2b\xcc\xb3\x1c\xff\x2c\x2e\x93\x78\x5f\xbd\x96\x2a\x81\x94\xe8\xfa\x1f\xcc\x48\x87\x51\x6f\xdd\x8b\x4c\xf2\x3b\x35\xe8\xe1\xe1\xc0\xa4\xbc\x57\x83\x57\xf4\x84\xda\x00\xf5\x2d\xfd\xef\x7e\x14\x09\xcf\x55\x49\x36\x6c\x0b\xe7\x9a\xf7\xac\xd9\xbb\x0b\x14\x9a\x85\xf4\x58\x04\x0c\xeb\x2a\xa2\x07\x17\x81\x03\x45\x32\xfe\xff\xec\xbd\x59\x7b\x1c\x47\xb9\x00\x7c\xaf\x5f\x21\xf5\x77\xce\xa4\xfb\x53\x69\x3c\x23\xc9\x8e\x33\x76\x23\x3b\x8e\x02\x06\x3b\xf6\xb1\x9d\x04\x18\xe6\xe8\x69\xcd\xd4\x68\x1a\xb7\xba\x27\xbd\x48\x56\x34\xf3\x3c\x2c\x49\x58\x02\x1c\x88\x81\xb0\xc4\x06\x42\x80\x84\xb0\xc4\x40\xc0\x0b\x49\x2e\xbc\x9f\x8b\x9c\xdf\x20\x5d\xfa\xe6\xfb\x0b\xdf\x53\x55\x6f\x55\x57\x75\x57\x8f\x46\xb2\xec\xd8\xb1\x7c\x61\xbd\x53\x5d\xcb\x5b\xdb\x5b\xef\x56\x6f\xe1\xb2\x98\x81\x52\xc9\x94\x7e\xd9\xb1\x85\x78\x16\x98\x18\x6e\xdc\x62\x39\x21\xd1\x0e\xd3\x7c\x30\x6d\x3c\x9f\x4f\xf3\x41\xa2\xed\x5b\x7d\xe4\xfa\x1d\x1c\xba\xf1\xd3\x61\xb0\x78\x3c\xc4\x4b\x6e\x90\xe8\x86\x80\xd6\x4d\x3f\x8e\xc4\xa5\x92\xb9\x21\xa2\x29\xac\x41\x59\xc2\x34\xe6\x10\x99\x55\x42\xe3\x73\x6d\x87\x74\x4f\x95\xd9\xa4\x11\x5a\xd6\x7a\x72\xc5\x34\xdc\x16\xe1\x0d\xdc\x16\x8b\x31\xc6\x79\x28\x39\x27\xb5\x5e\x1f\x23\x1f\x09\x79\x25\x42\x15\x21\x19\x96\x29\xe5\xb1\x50\x60\x87\x69\xc7\xc4\x4d\x6b\x9e\x62\x07\x08\x53\x8d\x92\x1d\xd2\x3f\x6c\x33\x6a\x06\x8c\xb2\x81\xe4\x5b\x7e\x39\x91\x4f\x2e\x0d\xc0\xd6\xc4\xa6\x8f\xaa\x08\x5b\x88\x52\x97\x8d\xc8\x02\x97\x92\x1d\xa5\x57\x4c\xbb\x33\xc1\xfc\xf6\x1d\x3e\x94\x0c\x5b\x07\x39\x0c\x5b\x3c\x08\xd1\x41\x98\x8e\x30\xb1\xbc\x60\xb4\x46\x22\x76\x0a\xe3\x8d\x69\x5a\x34\x80\xa8\x65\x77\x01\xa4\x5b\xe3\x55\xab\x0f\x6a\x88\xcd\x2c\x02\xea\x68\xc3\xa6\xc7\x95\x67\x93\xac\x74\x3f\x1d\x1c\xd7\x42\x6e\xa9\x64\xba\x6c\x84\x08\x37\x9c\x7e\x0b\x21\x31\xf1\x3c\xe5\xc5\xd7\x83\x66\xc1\x48\x58\x23\x01\x1c\xf7\xa0\xcb\x0c\x37\x1e\x92\x60\x0b\x43\x32\x41\x86\x64\xc9\x8d\xdc\x79\x0f\x9f\x62\x54\x8b\x65\x05\x46\xb0\x65\x8a\x66\x56\x17\xb0\x72\x1c\x71\xd5\x52\x9e\x9f\x81\x12\x16\x8a\x6d\x3c\xc3\x75\x51\xb5\x0a\x0a\xed\x7a\x63\x5f\x3c\x31\xb1\x8f\xef\x26\x5c\x8f\x69\x7c\x48\x9f\xd3\x0b\x6b\x35\x2c\x27\x7e\xd4\x71\xdb\xb1\xe9\x5b\x23\xf3\x21\x76\x4e\xf7\xe5\xa4\x54\xe7\xd9\xb7\x50\x14\x84\x31\x6e\x15\xa0\xad\x74\x2a\x8f\xbd\x1e\x73\xb5\x10\x21\xba\x63\x15\xe4\xdb\xf5\x86\xe0\x33\x0f\x9a\x75\xbf\x41\xb6\x75\xbd\x91\x6e\xe7\xfc\x79\xc5\x14\xdd\xb8\xdc\x0e\x03\x3f\xb6\x02\xd1\x03\x6c\x8d\x60\x2f\xc2\xa3\xf4\x23\x27\x4c\xab\x4c\x57\x3a\x56\x85\xa6\xd8\x26\xf0\x2d\xb6\x5b\x1c\xfa\xa0\x31\xdd\x8a\x26\x96\x77\x0e\xb6\x2c\x89\x20\x3a\x0a\x41\x94\x1a\xec\xd3\x06\xc3\x5e\xcf\x94\x7a\x23\x9a\xe0\x8c\x2f\x65\xbb\x50\xc0\x8f\x4b\x77\x70\x30\x08\xcc\xf3\xc5\x56\xdf\x42\xf5\x86\x45\x5d\x36\xb8\x20\x35\xdc\x2a\x91\x67\x8f\xae\x95\x7a\x03\x31\x35\x25\x5f\x32\xfb\xc2\xfd\x3e\x55\x51\xae\x32\xf5\x20\x55\x52\x02\xef\x5e\x2a\x11\x06\x80\xb2\xec\x2c\xc1\x42\xe1\x78\x75\xbf\x5f\x2a\x89\xe4\x74\x3c\xc4\xb2\x89\x05\xc3\xdf\x47\x05\x2c\x8f\x8c\xbc\xdb\x36\xc7\x18\x7b\xd4\x71\xa2\xa7\x9d\x28\x9e\x0f\x82\xd8\xb4\xac\xb4\x53\x42\xca\x5f\xc0\x31\xe8\x1e\xa2\x27\x57\x4e\x39\x0b\xcf\x38\x8b\xd8\x04\x19\x93\x74\xae\xb2\x2f\xde\x2f\xfa\x15\xf3\x3e\x85\x6c\x0b\x84\xe5\xae\x13\x62\x3f\x7e\x26\x68\x71\x2e\xff\x50\xc7\xf5\x5a\x66\x68\xf5\xfb\x48\x6e\x3c\xef\x57\x33\x36\x36\x50\x0c\x00\x8e\xb7\xd6\x86\x0a\x0c\x0d\xbf\x9c\x79\x58\xba\x1b\x2c\xe3\x70\x22\xc2\x1e\x6e\xc6\x13\xcb\x6e\xdc\x99\x60\x2a\x0c\xf9\x72\x8a\x92\x67\x31\xf1\x62\xb7\xeb\x61\x39\xb3\x8e\xa3\xde\x74\xc5\x4a\x7d\x1b\x55\xc2\xef\xbb\x44\x43\x55\x97\x61\xec\x89\x94\x7b\x0f\x58\x7b\x5f\x63\xea\xf3\x9c\x95\x20\x89\x6b\x21\xff\x80\x28\x8e\x27\x29\x8a\xe2\x9e\x0e\xbb\x24\xa4\x1d\x65\x03\x39\x4d\xa6\x88\x5e\x65\x5f\x8e\x85\x87\x68\x9f\x32\xc6\x43\x58\x5f\xe5\xb6\xeb\xc5\x7a\xaf\xbe\x51\x5c\x9e\x9b\x73\xa3\x93\xc9\xc2\x02\x8e\xc8\xa7\xb9\xb9\xbe\xc5\xee\xeb\xcd\xd0\x65\x1f\xf8\xac\x66\x33\x2c\xcf\xcd\xd1\xbe\xce\xcd\xa1\xd8\xaa\xf1\x8f\x1d\xc7\x5f\xc0\xcc\xa4\xa2\xae\x2a\x8d\x97\xe9\xdd\x4d\xfe\x26\x16\xd3\xe6\xd6\x81\xae\x3a\x50\x17\x2f\x84\x41\xd2\x9d\xa0\xf0\x7d\x5b\x2e\x6c\x2f\x8b\x65\x20\x16\x4d\xcc\x28\x4a\xcd\x30\x10\xac\x1f\xb1\xb0\xd0\xa2\x13\x37\x3b\x38\x4c\x57\xd4\x51\x96\x80\x22\x36\xb1\xb8\xc5\x34\xe6\xa2\xd6\xcc\xc2\x92\x07\x4f\x14\x99\x08\xba\xcc\x5f\x75\xb8\xd5\x69\xa0\x08\x3b\x61\xb3\x33\xeb\x3b\xf3\x1e\xa6\x82\xd1\x00\x45\x15\x3c\x4a\x42\xcf\x01\xa1\x6a\xb4\xfa\x88\xb5\xc9\xec\xc2\xb9\x03\x1d\x3e\x96\xeb\x0d\x55\x63\x9b\x8a\xc5\xf4\x70\xe1\xf9\x0c\xa1\x06\x22\x3c\x48\xdc\xc1\x3e\xfc\xd1\xee\x04\x7e\xb8\x63\xab\x1c\x07\xcc\x44\x26\xe9\x21\xd4\x74\x91\x48\x8f\xcc\xa8\x13\x24\x5e\xeb\x64\x27\x58\x66\x7b\x85\x8d\xb5\xd6\x90\x3f\x96\x22\x19\x89\xfc\xcf\x77\xb0\x6f\x58\xbd\x5e\xf1\x37\xb6\xc1\x90\xd3\x6a\x0d\x68\x81\x16\xd7\xe3\x42\x33\x94\x4a\xa6\x31\x1f\xc4\x71\xb0\x48\xbd\x16\x35\x8d\x1d\x0f\x98\xda\xc7\xb0\x66\xe0\x08\xa5\xb9\xe6\x13\xd7\x6b\xa5\x24\xe2\xe9\x20\x3c\x85\xc3\x45\xc2\x7c\xd4\x62\xc1\x65\x6c\x90\x93\x60\x9f\xd2\x2c\xb2\x4e\x0e\xfa\x3c\xa7\x96\x6a\x51\x25\x87\x32\x35\x27\x4e\x3e\x77\x9c\x2b\x1c\xcc\xdc\x64\xd3\x99\x31\x2c\x2b\x3b\xc1\x3e\x3d\xc3\x2b\x72\xa8\x72\x6e\xe4\x04\x93\x63\x08\xc3\x40\xb1\x4a\xd7\x8c\x3b\xa3\x69\xd6\xa5\x28\xe6\x1a\x91\x1c\x35\xf8\x22\xa1\x56\xd8\x38\x5d\x32\x44\x18\xc8\xcc\x1f\xad\x0b\xc5\x64\x91\x99\x44\xbe\x00\x32\xcd\xd7\x96\x6f\x11\xc1\x43\x57\xca\xb7\x90\xcf\x74\x14\x03\xc8\x3f\x21\x50\xb8\x54\xca\x13\xf8\x0c\x61\xc7\x32\x61\x47\xa1\x86\xb4\x23\xca\x83\x30\xec\x34\x73\xe5\x23\x57\x99\x2d\x10\x91\xd9\x78\x3e\xed\x62\xaf\x35\xa3\xe5\x20\xdd\x32\x90\x2d\x33\xe5\x0b\x31\x91\x63\xd3\x82\xd4\xad\x45\xef\x11\x93\x96\x66\x7b\xc3\xac\x20\x3e\x82\xdc\x3a\x68\xe2\x5e\xaf\xde\xa0\xda\xd8\x3e\xd2\x2f\x4d\x8d\x8b\xf7\x6a\x76\xbc\x08\x25\x13\x43\x54\xc3\x28\xc6\x67\xe2\x9a\x6e\xb9\x1f\x71\xe6\xb1\x47\xd8\xe8\x5c\x6b\xf4\x8b\xce\x9d\x5c\x57\xcd\x8c\x2e\xd1\xc4\x56\xed\xb1\x83\xad\xd6\xa8\xf1\x98\x88\xa4\x8e\x1e\x33\xca\xe5\xf2\x63\xd6\x3d\x3d\x78\x35\xe7\xc1\xbd\x3a\x89\xf3\x4d\xdd\x4f\xdd\xeb\xa6\x4e\xdc\x0d\x15\xce\xdb\xc4\x9a\x3c\x40\xc1\x06\xe2\xe3\x07\x9f\xfd\xea\x97\xe2\xa7\xf4\xc1\x06\x4e\x02\x0f\x60\xf0\x45\x62\xc4\x38\x5c\x34\x90\x12\x85\x80\xaa\xee\x61\x77\x8a\xe1\xa6\x1f\x3c\x2f\x58\x3e\xe4\x61\x27\xa4\xbf\x42\xd7\x79\x0a\x47\xcd\xd0\x9d\xc7\xad\x27\x57\x78\x12\xf8\xe2\xf0\x9f\x74\x4f\x29\x3f\x3c\x9e\x9b\xed\x1d\x8a\x11\xc3\xe5\x40\xd3\xf1\x9a\x89\x27\x1f\x71\x24\xd1\x73\xa2\x88\x01\x41\x84\x8f\xf9\xa2\x0f\x07\x00\xe7\xcf\xb9\x0b\x1d\xcf\x5d\xe8\xc4\xb8\x95\x09\xa2\x40\x7f\xba\x21\xfb\x13\x51\x86\x87\xc2\x61\xd0\x6d\x05\xcb\xfe\x21\x5e\x33\x3e\x13\x87\x0e\x01\x28\x27\xa9\xf4\xb9\xc3\x2b\x3f\xe6\x7f\x2e\x58\xc2\xb4\xae\x4e\x10\xba\x2f\x06\x7e\xec\x78\x32\x9e\x84\x8d\x72\x1d\xcf\x5b\x39\xd6\xc5\x3e\x6b\xc8\x0b\x9c\x96\xeb\x2f\x1c\xc5\x51\xe4\x2c\x10\x16\xf6\x00\xa5\x86\xa7\x42\x77\x61\x01\x87\xcf\xbb\xad\xb8\x43\x12\xfd\x80\x31\x82\x91\x94\x31\xf0\x9f\xf4\x92\x90\x41\x87\x48\xc7\x19\xf8\x74\xd0\x4c\x22\x06\x1e\xf6\xbb\x49\xcc\xc0\x2f\xe0\x15\xd2\x1f\xf6\x83\x34\x4f\x21\xcd\x0c\x52\xdd\x4d\x27\xf0\x5a\xac\x23\xd2\x4f\x35\x5b\x48\x3d\x30\x4e\x36\xc3\x80\x46\x4a\x38\x10\x52\xcb\x01\x0e\x0f\x1e\x3f\x9c\x8f\x48\x81\x8c\x03\x11\xcd\x79\x2a\xa0\x70\x7a\x30\xa4\x3f\xa5\x9e\x29\x09\x4a\xb3\xec\xcb\x71\x15\x47\xb6\xdf\x70\x4b\x86\x0f\xc7\x78\x51\x29\x19\x3b\xf3\x70\x45\xc9\x38\x10\xb3\xd1\x15\x93\x0b\xbf\x0f\xb7\xa4\x1f\x27\x02\x8f\xe2\x12\xaf\x74\xf1\xc1\x0e\x76\x5a\xc0\x89\x93\xb4\x25\x1c\xc6\x6e\x53\x99\xdb\x92\x13\xc7\x61\x54\x14\x7a\x63\x4a\x13\x11\xa3\x82\xea\x46\x11\x43\x6e\x34\xd2\x70\x19\xd9\x50\x1d\x9a\x28\x18\x93\xc8\x18\x1d\x25\x1f\xf6\x22\x52\x33\x8d\xbf\x51\x7d\x1c\xed\x9e\x62\xf1\x33\xee\xdf\x76\xa5\x91\x3c\x74\x0d\xed\x6c\x64\xd8\xc8\x8b\xe9\x2a\xda\x70\x4f\x53\xbe\x6d\x1b\xf6\xf7\x27\xbf\xd5\x53\x08\x84\xca\x07\x98\x0a\xa8\xf9\xef\x96\x32\xc0\x66\xdf\xdd\xa0\x3b\x73\x0f\xfb\xf3\x38\xfb\xb3\x97\xfd\x79\x82\xfd\xa9\x56\xd8\x5f\x42\x17\x0a\x36\x52\x03\x72\x56\xe1\xef\x24\xfc\x9d\x82\xbf\xd3\xf0\x17\x5a\xab\x42\x73\x55\x68\xaf\x0a\x0d\x56\xa1\xc5\x49\x68\x71\x12\xea\x9b\x84\xfa\x26\xa1\xbe\x49\xa8\x6f\x12\xea\x9b\xdc\x93\x62\xc8\xd7\x31\xa0\x34\x09\x4d\x4c\xd2\x26\x18\xa1\xab\x72\x42\x47\x88\xa2\x22\xde\x18\x40\xdc\x58\x11\xc0\x66\x0a\xb0\x99\x02\x6c\xa6\x00\x9b\xa9\xa9\xb4\x55\x45\x44\x84\xa6\xa7\x00\xcb\x29\xc0\x72\x0a\xb0\x9c\x02\x94\xa6\xa0\xd7\x53\xd0\xce\x74\xa5\x08\x45\x55\x98\x55\x90\x24\x8d\xab\x0b\x18\x5a\x9f\x06\x6c\xa7\x01\xdb\x69\xc0\x76\x1a\xb0\x9a\x06\xac\xa6\x01\xab\x69\xc0\x6a\x7a\x6f\x5a\x71\x6e\xe1\xf1\xba\x01\xe3\xdd\x30\x32\xbb\xa1\xad\xdd\x93\x8d\x0d\x03\x23\x4d\x22\xe3\x2b\x5f\xa1\xcb\x4f\x0d\xfe\x34\x89\xea\x46\x56\x2e\x12\xa7\xcd\x70\x11\xa1\xe8\x69\x43\xfe\x91\x8f\x55\xa4\x3b\xd7\x8a\xb4\x55\x06\x20\xae\xf2\x96\x22\x44\x14\x82\xf0\x54\x34\x17\xef\xc1\x10\x61\xa7\x54\x8c\xf6\xa2\xe9\x5c\x85\x83\xaa\xe3\x9f\x49\xf1\xec\x57\x52\xba\x3f\xb0\x7c\x75\xe3\x98\x52\x4d\x89\xa2\x38\xfc\x00\x74\xdb\x06\x32\x3c\x1c\x0f\x8c\x29\xb5\x3d\xd2\x07\x8f\x36\x25\x49\x3a\x3a\x37\xbd\x7b\x24\xfa\x3d\x48\xa2\xcf\x93\x9d\x53\x4f\x1d\x9d\x3a\xe3\x68\x45\x9f\x1c\xef\x46\xd6\xf6\x6e\xb6\x43\xf1\x19\x58\xbb\xd2\x32\x28\x9e\x70\x2e\xf4\xde\xf3\x99\xcd\x8d\xf6\xe6\xa7\x7a\x43\x4b\x90\xaa\x26\x38\xb0\xe0\xb9\x8b\x8b\x38\x4c\x8b\x6d\x20\xdb\x53\xc9\x9c\x39\x44\x2b\xb7\x01\xc4\xb5\x7f\xe7\x53\x76\xed\x5f\x74\x32\x4a\xef\xee\x98\xe9\xa5\x92\xa0\x3d\x1a\x5b\x96\xf6\x8e\xca\x21\xc7\xf7\x83\x78\xb4\xe9\x78\xde\xa8\x33\x4a\x79\xe1\x51\x27\x1a\x75\xc4\x9d\x2b\x43\xaa\x3d\x61\xb5\x4b\x97\x42\xf6\x85\xfb\x63\x61\x6d\xe5\x56\x49\xdf\x8e\xeb\x61\x63\xc4\x2f\xa7\x97\xfc\x6d\xf9\x47\xaf\x37\x56\x45\x7e\x59\x0e\x09\x60\x8f\x55\x90\x41\x37\x9a\xc1\xe2\x2d\x99\x7e\x99\x07\x05\xb0\xc7\x2a\x16\x2a\xda\xaa\x7e\xf9\x34\x5e\x41\xbe\xd5\x4f\xb1\xf4\x64\x55\x9f\xe9\xf1\x1b\x49\x91\x72\x97\x3e\x7b\xdb\x49\xb2\x68\xd1\xd1\x9e\x9b\xb3\x63\x44\x47\x17\xc5\xd2\x08\x34\x53\x87\x23\xd5\xce\xab\xbb\x63\x76\x02\xb7\xc9\xaa\xee\xf5\xc6\x00\x4a\x67\xda\xe2\x1e\xd7\x23\x6e\xdb\xcc\x7d\x2d\x47\x1d\x67\x51\xc9\xa2\x59\x3f\xc7\xc3\xe0\xcc\x0a\xcf\xc4\x6e\xa1\x41\x27\x9e\x22\xf4\xb7\xe8\x02\x56\xae\x31\x93\x64\x47\xf5\x86\x62\x14\xe9\x5b\x96\x85\xc6\x2a\xe0\x21\x8e\x33\x1e\xe2\xd9\x6b\x79\xa0\x76\x47\xbe\xdd\x82\x3b\x57\x31\xb7\xb9\xb7\xc0\x9e\x2c\xad\xf1\x91\xd0\xce\x23\xe1\xa7\x86\x1c\xe4\x72\x9f\x03\xdb\xd7\x5b\x7a\x04\x02\xec\x43\x28\xcf\x7e\x5b\xb5\x98\xf4\x7a\x3c\xd8\xc2\x98\x6d\x3b\x66\x6c\xc9\x7b\x51\xdc\x0c\x8e\x67\x32\x9e\x17\xe2\x7d\x4d\x2c\x6d\x9b\x13\xb8\x8d\x43\xec\x37\xf9\xde\x21\x8d\x8f\x76\x9c\xc8\x7f\x2c\x1e\x9d\xc7\xd8\x1f\x05\x11\xcd\x8d\x70\x6b\x74\x62\x14\xdc\x2b\x95\x1c\x64\x0a\x70\x4b\xb2\x2d\xf5\x4d\x6c\xd5\xe2\x14\xfd\x96\x44\xa5\x5a\xfa\xa5\x3b\xa3\x0d\x0e\xa1\x25\x3c\xe9\x6a\xee\xf5\x8a\x42\x4a\x64\x28\x48\x87\x29\xed\xd9\x5d\x0d\xe6\x6b\xb4\xda\xcf\x44\xfa\x38\x8d\x57\x22\xd3\xb7\xf4\x7e\x2b\x41\x1d\x37\x6c\xbf\x8e\x1b\xcc\x21\x44\xa2\x01\x63\x63\xf2\x4f\xe6\x2c\x22\x51\x80\x31\x35\x01\x99\x29\x41\x08\x7a\xbd\xa0\xcc\x47\xf7\x45\x1c\x5a\xa5\x92\x19\xa8\x04\x22\xb0\x43\xf0\x3d\xb3\xca\x44\x78\x0c\x23\x06\x65\xbc\x50\xc2\x34\xcc\xc7\x28\xb7\x74\xf4\x7a\x61\xdf\x42\x01\xf5\xbf\x12\x17\x1a\x94\xf6\x68\x73\x14\x1b\x35\x7d\x46\xf9\xc5\x36\x98\x6b\xf1\x1b\x5e\xca\x47\xe0\x18\xc0\xb7\x8e\x2c\xad\x6c\x0b\x45\x24\x2e\x26\xa8\x05\xd4\xf9\xcb\x42\xc1\x36\x5d\x31\xe8\xda\xa6\x88\x03\xca\xf8\x43\xe1\xfe\xc9\x7f\xbb\x99\xdf\x1d\xd3\x54\x83\x99\x98\xf9\x9b\xb6\x9a\xad\x25\xa2\x9b\xc4\xfa\x13\xe8\x24\xd9\x26\xa3\xf8\x4c\x37\xc4\x51\x44\x56\x20\xbd\xd4\x88\xdd\xb8\x83\xc3\xd1\x79\x3c\x4a\x4a\x8f\x06\xa1\x72\x24\x8d\x48\xf4\x2d\x13\x99\x26\xa6\x1e\x3c\xfc\x23\x0d\x3c\xc3\x09\x4f\x0d\x46\x05\x4b\xf1\x66\x2a\x28\x13\x99\x86\x3a\x22\x95\x4a\xec\x10\xe9\x5b\x66\x80\xc0\xeb\x10\x36\x85\xdd\x34\x03\xe9\x8e\x4c\x90\xde\xf9\x89\x18\x35\x22\xeb\xa8\xc0\x40\xcd\x99\x05\x3b\x40\x66\x68\xd7\x57\x4f\xe3\x95\x9a\xd1\x71\xfc\x96\x87\x99\xfa\x24\x13\xfb\x86\x0f\x2b\xf3\x87\x0c\x17\xa2\x32\xd3\xb3\x94\x4a\x63\x55\x6e\x85\x95\x92\x99\x79\x51\x1c\x1b\xf4\x73\x3b\x68\x26\x11\xd5\xd9\x30\xdb\x92\xdc\x26\x68\x75\x74\x8d\xca\x55\xd3\x6c\xa5\x52\x2e\x09\x2c\x90\x1b\xb5\x22\xb4\x44\xba\x76\x64\x4b\x16\xd4\x0d\xf9\x35\x7d\x84\x2f\xb4\xe4\x8c\x19\x97\xa3\x38\xe8\x92\x0d\xe0\x2c\x30\xdf\x71\x0b\x8d\x55\xad\x5a\x75\x8a\x14\x23\x34\xea\x50\xd0\xa2\x36\x4c\x37\x22\xa3\xa3\x2f\x21\x3d\x99\xdd\x49\xf5\x7c\x33\xb8\xcc\xd5\x39\xa5\xd2\x44\x75\x8c\x79\x12\xb3\x04\xe1\xb7\xab\x94\xb0\x66\x4c\x5c\x06\x23\x75\x99\x6a\x12\xcd\x98\xe1\x23\xa7\x77\x02\xf2\x41\x29\x88\x34\xd9\xa4\xe2\x9c\x98\x88\x41\x85\xbd\xfc\x64\x46\xb9\xa9\x1b\xdc\x94\x4f\x23\x5d\x07\xf4\x7b\xbd\x7a\x83\xdf\xc1\xae\x58\xc8\xb7\x27\xaa\xc8\xb5\x2b\xfb\xdc\xfd\xfc\xd6\xf9\x3e\x77\x7c\xdc\x72\xdb\x26\x77\x98\x9f\x7d\x21\x71\x3c\x33\xac\xbb\x0d\x84\x2d\x6b\xd5\xb7\x5d\xee\x58\x09\x64\xf4\x33\x13\xd5\x99\x50\xf2\x20\xb6\x6a\xa1\xf0\xc3\x0d\x05\xe2\xe9\x1a\xc9\x63\xcb\xbc\x1d\x39\x67\x25\x9c\xe2\x5e\x48\x70\xb8\xc2\x3a\x49\x28\xc5\xff\xa3\x11\x63\x40\x8f\x91\xfa\x90\xb9\xa4\x85\x89\xf4\x09\xe9\x72\xe2\xbb\x2f\x24\xf8\x70\xcb\xb2\x46\x28\x6d\xa0\x78\x98\x56\x5f\x20\xc6\x5d\x44\x4e\x39\xf3\x87\x99\x9e\x2e\xe3\xeb\x09\xfd\x14\x84\x3b\x5d\x93\x59\x2d\x8a\xbc\x4b\x14\xd5\xcd\x8c\x31\x51\x35\x6a\x52\x41\xd0\x09\xf6\x7a\x46\xc5\xe8\xf7\x1b\x56\xa9\x94\x98\x32\xdd\x0a\x2d\xe4\xd3\x34\xe4\x13\xa2\x6f\x0a\xe3\xa1\x65\x49\xb9\x14\xe2\x51\x0f\x1b\x28\x3d\xe4\x8f\x2d\xfb\xfc\x70\x60\xfa\xf5\x2e\x19\xc3\xa0\xa0\x30\x39\xa9\xc5\x17\x0b\x75\x74\x19\x81\x5c\xd4\xfd\x2d\x35\xc3\x4a\x0f\xd3\x8e\x20\x18\x64\xc5\x6d\xa1\x25\x5e\x3e\xd3\x56\x20\x0b\xa8\x9a\xa0\x57\x9b\x12\x50\x77\xc1\xcc\x6f\x9f\xa0\x8a\x1c\x14\xd1\x6b\xd2\xcd\x11\x99\x97\x15\xcc\x60\xfb\xd3\x2a\xb2\xb6\x76\x42\x7d\x3c\x3c\xa1\x3e\x3a\x8f\x4c\xa8\x8f\xce\xa7\x22\xd4\x47\xe7\xbe\xbd\xdb\xd1\xe5\x72\x23\xbd\x8e\x50\x2c\xcb\xac\x4a\x91\x1f\x43\x59\x1c\x54\xf8\xf0\x50\x15\x05\x05\xbf\x1e\x0a\xa1\x0f\x78\x88\x50\x11\xc7\xc2\xbc\x38\xe6\x0b\x0e\x4a\x1a\x96\xc5\x7b\xaa\x26\x5b\x7a\x28\xd4\x64\x2b\x8a\x9a\x6c\x65\x5b\xd5\x64\xf3\x3b\x6a\xb2\x81\x6a\xb2\xe5\xac\x9a\x6c\xf9\x5e\xaa\xc9\x16\x34\x6a\xb2\x85\x01\x6a\xb2\x76\xb1\x9a\x6c\x2e\xa3\xae\x9a\xbb\xef\xfa\x32\xd1\xf4\xb2\xc4\x1c\x2d\x7f\x12\x9a\xb2\x59\xee\x28\xcb\x19\x2a\xc2\x4f\xe0\x99\x01\xa4\x0f\x48\x96\x12\xfc\x36\xa7\x80\x90\x95\x13\x7d\xab\x86\xeb\x71\xc3\x0e\x91\xd4\xf1\x93\x3b\x1a\xba\x47\x41\x43\x77\xcc\x66\xa1\xfa\x4a\x25\xf6\xb7\xec\x3b\x4b\xee\x02\xe5\xe6\xb3\x09\xe5\x24\xc2\xe1\xc1\x05\x7a\x35\xc3\x40\x67\xec\x63\x42\x47\x61\x1c\x3d\x79\x78\x76\xd4\xb0\x3e\x33\x51\xed\xf5\xa4\xe4\x53\xa1\xdb\xc2\x7e\xbc\x8b\x7e\x41\x07\x53\x65\xa0\x1a\x2f\x64\x43\x9d\x60\x90\xf9\xed\x64\x7e\x47\x99\xdf\xcd\x47\x46\x81\xb8\x52\xa8\x40\x9c\xcf\x29\x10\xe9\x15\x94\x91\x45\xae\x3f\x14\xac\x58\x9c\x8b\xb9\x83\x42\x85\x33\x43\xbe\x5d\xd9\xe7\xef\x8f\xf7\xf9\xe3\xe3\x56\x58\xf7\x1b\x52\x1c\x1e\x5f\x70\x69\xb3\xe6\x9c\x89\x6d\x97\x2e\x7e\x38\x29\x5c\x54\x27\x8d\xa5\x61\x20\xc9\x41\x66\x50\xdd\xc9\xd3\x81\x1f\x1b\x88\xef\x05\x5a\xd6\x42\xc6\x9c\xe7\x44\xf1\xe1\x88\x69\x1a\x30\xd7\x70\xd0\xd3\x89\xa9\xd7\x2c\xd4\x85\xac\x31\x3e\x13\x1f\xc5\x4e\x94\x84\x44\x3e\xf6\xd0\x1c\xbd\xd3\x8d\xf5\xda\xcf\xa0\x8b\xc1\xe9\xac\xa5\x57\x62\x31\x0e\xaa\x65\xc6\xf0\x14\x1c\xd5\x0a\x86\xa5\xd2\x98\xd0\xc4\x48\xa8\xf1\x20\x0e\x9a\xc0\x1f\x4d\x70\x4b\x63\x01\x16\x24\x2d\x0d\xed\x03\x57\xbd\x31\xa5\x0d\x32\x0c\x1e\xd7\x22\xad\xdb\x4e\x55\x59\x51\x1c\x84\x98\xaa\xb2\x4e\xc6\x2b\x1e\xd6\xe8\x50\x39\xf7\x03\x3b\x75\x81\xbd\xb4\x95\xc4\xb8\x45\x4b\x50\xcd\x98\x1d\x97\xdb\x81\xcf\xaa\x40\x3e\xfc\x7a\xce\x09\x5d\xc7\x8f\x91\x0b\xbf\x9f\xc7\xee\x42\x27\x46\x01\xcf\xec\xbe\x88\x91\x63\xc7\x65\xcf\xf5\xf1\xe7\xd8\xb7\x08\xbe\x3d\xed\x2c\xba\xde\xca\x08\xdc\xac\x87\x99\xb4\x0d\xa1\x0a\x0b\x91\x31\x6a\x58\xfc\x97\xaf\xfc\x72\x95\x5f\x01\x32\x76\xa5\xbf\x1c\xe5\x5b\x94\xea\x77\x99\x3a\xf3\x58\x57\xaf\x81\xa4\xfb\x99\x07\x36\x2f\xc7\x34\x44\x5b\x1a\xac\x81\xfd\x26\x03\x73\x30\x8e\x43\x77\x3e\x89\xb1\x69\xb4\x9c\xd8\x99\xe0\x8a\xca\x09\xe6\x34\x27\xf3\x49\xa1\xdd\x75\xc2\x08\x1f\xf6\x63\xb2\x1c\x2a\x64\x17\xe7\x35\xba\x2c\xde\x00\xf6\x63\x08\x1b\x60\xf2\x70\x37\x70\xb1\x84\xd5\x0e\x72\x7f\x6e\x21\xf0\xef\x28\xb4\x46\x0a\x57\x09\xe8\x71\x09\x3b\x9d\x51\x76\x17\xea\x37\x65\x3d\x36\xcd\xa4\xd1\x6f\x73\x05\x3a\x5c\xe6\xd2\xb5\x1c\x50\x35\xff\xd0\x2a\x76\xfd\x1c\x64\x2c\x0a\x43\x28\xdc\x53\xbd\x8b\x56\xe9\x4e\xa6\x68\x2f\xbd\x24\x05\x5a\x77\xb8\xbd\x9e\xcf\xcb\x75\xca\x4f\x7a\x8e\x7f\xda\x14\xcb\x80\x29\x44\xf8\xea\x28\x9c\x94\x7a\xe1\x17\x20\x8f\x13\xd5\x06\x8d\xfe\x31\x60\x7f\x7b\xea\xb4\xab\x4e\xc2\x66\x9c\x23\x0d\xf4\x1e\x55\x4e\x21\x12\xcf\x6c\x40\x42\x4c\x7e\xcd\x75\x40\x16\xe9\x46\x3b\xca\xea\x8d\xd9\x0d\x26\xab\x98\x52\xc1\x4a\xb0\xfa\x54\x08\x30\xc5\xd0\x7f\xc6\x9e\xde\x5b\x2a\x89\x9f\xfb\xed\x27\x2a\xbd\xde\xd4\xa4\x32\x3b\xe4\x7b\x6e\x6e\xd2\xa5\xac\xee\x91\x41\x86\x1b\x8d\xbc\x85\xcb\x4c\x90\x38\x18\xcf\xa4\x20\x19\x0d\xf9\x9e\x56\x9c\xae\x60\x50\xa4\x1e\x05\xc5\x6a\x4a\x55\x73\x6a\x78\x61\x92\xd8\x32\x75\x0f\x71\x17\x7c\x64\x35\x03\x9b\x1a\x7c\x08\x73\xa9\x46\x1b\xd0\x93\x08\x11\x05\x83\x5f\x22\x4d\x83\x05\x2a\x34\xb8\x54\x32\xe1\x82\xa9\x7c\x34\x96\x97\xdd\x56\xdc\xd1\x55\x4f\xe6\xff\x94\x14\xcd\x05\xaa\x11\xe1\x39\x40\x4e\xed\xc4\x8b\xde\x49\xa7\x8d\x4d\x83\xd6\x54\x1b\x4d\x8d\x1e\xe3\x93\xbb\x91\xd1\x3d\x63\xa4\x91\x0b\x06\x97\xac\x56\x2a\xff\xb9\xcf\x48\x27\x85\xbe\x1d\xa9\xf8\x3a\xe7\xe7\x62\xec\x8c\x95\xb3\xde\xdd\xfd\x50\xce\x18\xb2\x99\x44\x72\x0f\xef\xf5\x0c\x30\x94\x2c\x69\x0c\x25\x4b\x1a\x43\x09\xf2\xec\x93\xa6\x99\xd8\x4d\xc5\x62\xa2\x72\x27\xf5\xb0\x31\xf8\x6d\x12\x45\x1c\x43\x92\x38\x40\xa3\x33\xf5\x2d\x74\xd2\x4c\xe4\xea\x15\x7e\x66\x18\x53\x49\x61\x69\x0b\x25\xb2\xf9\x22\xd3\x4e\x9e\x05\x19\xc6\x5a\x32\xb8\x8a\xc1\x2d\xaa\xa7\x7d\x3d\xd8\x64\x6b\x4a\xf1\xc1\x2d\x29\x47\x69\xdd\xd9\x64\x43\x72\xe9\x61\xda\x49\xcd\x4d\xd1\x96\x5a\x4a\xcd\x4d\x4a\x5b\x89\x6c\x6e\x3a\xb8\x35\x73\xd3\x86\xd6\xa5\x21\xa3\x0f\xa4\x21\xe9\xfc\x66\x12\x86\xd8\x6f\xae\x4c\xb4\x70\x33\xa0\xca\x63\xed\xe7\x7c\xc0\x02\xa6\x6e\xc8\x59\xaf\x24\xbb\x15\x6a\xa3\x16\xea\xa0\x2e\x5a\x44\x4b\x68\x05\xcd\xa3\x05\x34\x87\x96\xd1\x2c\x3a\x89\x8e\xa1\x33\xe8\x20\x3a\x85\x4e\xa3\xa3\xe8\x38\xfa\x2a\x3a\x84\x4e\xa0\xc3\xe8\x29\xf4\x0c\x3a\x82\x9e\x46\x2f\xa2\x67\xd1\x93\xe8\x73\xe8\xb9\x54\x2a\x7a\x41\x52\xee\xbc\xf0\x69\xb5\x7c\x3d\xbf\x63\xf9\x7a\x78\x2c\x5f\xff\xf1\xc8\x58\xbe\xfe\xe3\x53\x61\xf9\xfa\x8f\xfb\x66\xf9\xfa\xec\xc3\x64\xf9\xfa\xd2\x43\x61\x9b\xfa\x82\x62\x9b\xfa\xc2\xb6\xda\xa6\xfe\x6b\xc7\x36\x35\xd0\x36\xf5\xe5\xac\x6d\xea\xcb\xf7\xd2\x36\xf5\x79\x8d\x6d\xea\xf3\x03\x6c\x53\x2f\x14\xdb\xa6\xbe\x98\xb1\x4d\x7d\xf1\x93\xb3\x4d\x7d\x59\x62\x5f\xbe\xfc\x49\xd8\xa6\x30\xfe\x84\x8c\x53\x31\xde\xb1\x4e\x3d\x0a\xd6\xa9\x10\xeb\xde\xb5\xd4\xa9\x83\xe2\x0e\xf6\xfb\xc8\x1f\x3a\x7f\x93\x70\x08\x5e\x1f\xb9\xd8\x36\x85\x79\x29\x0e\x9d\xe6\x69\xdc\x4a\xed\x4b\x3c\x21\xca\x26\x24\xd9\x04\x2f\x9b\xd0\xcc\x26\xb4\xb3\x09\xad\x6c\x42\x27\x9b\xd0\xcd\x26\x2c\x66\x0c\x5d\x4b\x99\xdf\x2b\x99\xdf\xf3\x99\xdf\x0b\x99\xdf\x73\x99\xdf\xcb\x99\xdf\xb3\x99\xdf\x27\x33\xbf\x8f\x65\x7e\x9f\xc9\xfc\x3e\x98\xf9\x7d\x2a\xf3\xfb\x74\xe6\xf7\xd1\xcc\xef\xe3\x99\xdf\x5f\xcd\xfc\x7e\xee\x91\x31\xf4\x7d\x81\x1b\xfa\xa2\xd4\xd0\xe7\xa3\x00\x39\xf6\x7f\x99\x91\x64\xe8\x8b\x24\x7b\x56\xee\xf8\xbd\x07\xee\x48\xec\x60\x8d\x2c\x84\xb1\xf9\x45\x33\xb4\x1d\x46\x5e\x68\x2a\xbd\x28\x80\x8c\xb9\x6e\x32\xef\xb9\xcd\x83\xc7\x0f\x1f\xe4\x0a\x54\x88\xaf\x56\x0b\xcb\x73\x60\x0b\x13\xbe\xea\x24\x4d\xfc\x80\xe0\x61\x2c\x1f\x81\x10\x53\xf0\x90\x04\x06\x21\x1e\x92\x81\xe6\x01\xb8\x6f\xa1\xcf\x12\x6c\x48\xe3\x10\x16\x0d\xee\x6b\x47\x06\x3a\x81\xbe\x48\xe3\xa9\xe7\x72\x9c\x14\x61\x16\x0e\xe7\xb3\x74\xb1\x13\xbb\xfe\xc2\xa1\x8e\x13\x1a\xe8\xa9\xec\x77\x7c\xa6\xeb\xd2\x09\x3b\x29\xd4\xaa\x06\x7a\x26\x9b\x8b\x75\xf5\x04\x8e\xe8\x2d\xf4\x23\x99\xcf\x6e\x74\x90\x3e\x6d\x60\xa0\xa7\x33\x5f\x20\x00\x87\x81\x5e\xcc\x7c\x88\xa4\xd6\x9e\xcd\x16\x72\xa2\x98\x61\x83\x5b\x2c\xc7\x93\x99\x1c\x1d\x39\xe2\xc8\xe7\xe0\x23\x9b\x46\x0b\xf4\x76\x2d\x1a\x08\x83\x9f\x09\xe2\x1b\xb5\x57\xc2\x80\x1e\x67\xaf\x2b\x14\xe5\xe2\x83\xba\x61\x36\x1a\xf7\xa2\x38\x13\x0b\x9b\xc6\xc6\x2e\x3a\xe4\x34\x3b\xe4\xf8\x08\xd9\xcf\x5a\xbd\xc1\x83\x32\x12\x30\x1d\x95\x5a\x28\xe9\xb9\xfb\x16\x0a\x53\xeb\x70\x84\x4c\xff\x1e\xdc\x8d\x61\xd6\x3f\x3e\x74\xea\x45\x99\x52\x29\x96\x77\xdd\x17\xf0\xca\x7c\xe0\x84\xec\x15\x9a\x52\xc9\x38\x0d\x1a\x3e\x7a\xaf\x84\xd0\x8a\x52\xc9\x9c\xda\x2b\xdf\x32\xe9\xf5\xa6\x2b\xf2\x6f\x8b\x91\x16\xd5\x0c\x29\x5e\x4a\x88\xb0\x1c\x53\xc6\xcc\x5a\xf3\x20\xee\xca\x10\xfd\xa5\x39\x35\x1d\x3e\xc4\x2e\x90\x0c\xe8\x31\x0b\x4a\xcc\x91\x00\x16\x39\x8b\xc8\xa0\xcb\x1a\x7a\xc3\x2e\x0a\x6d\xd5\xa6\x37\x52\x64\xf7\x34\x63\x8d\xe9\x33\x44\x19\x9c\xb1\xc5\x8d\xa1\x39\x52\xc5\x8d\x68\x3a\xd3\x5c\x2d\xb4\xb2\x86\xd9\x01\x26\x52\xe0\xd3\xc7\x34\x96\x4f\x22\xe6\x8e\xe9\x6d\xa2\x79\x4c\xe1\xf2\x07\x7b\x25\xa5\x30\x5b\x06\x2f\x88\xd5\x33\xd8\x82\xbb\x39\x6b\x6d\x1e\x33\x66\xed\x3b\xbc\xb8\x88\x5b\xae\x13\x63\xc5\xec\x27\xc5\x13\x6f\xc6\xa1\xf7\x05\xbc\xd2\xeb\xe1\xf2\x22\x8e\x9d\x2f\xe0\x95\x61\x4b\x0e\xb2\x3d\x3a\xd8\xc4\xe4\x18\x73\xc5\x75\x99\x53\x2b\x5d\xd7\x5f\x38\xe5\x44\xa7\xcb\x5d\x1c\xb6\x03\x1a\xe4\x93\xd6\x46\x3a\x3b\x35\x39\x26\xdb\x2a\x65\x1b\xd3\x06\x43\xcb\x97\x35\x9f\xf0\x93\x5d\xa7\x99\xdb\x06\x38\xb7\x34\x0a\xae\xc1\x81\xcd\x5e\xbc\x42\xe3\xfa\x0b\xbd\x9e\x09\x69\xec\x40\xa0\x82\xc3\x50\x57\xe5\x36\x5a\x06\x2c\x02\xd3\x96\x50\xa8\xaa\x28\x90\x9a\x54\x0c\x48\xca\x00\x04\xe6\x78\xb8\xa4\x82\xd6\x53\x3a\xcd\x5e\xa8\x37\x33\xa9\xfc\x31\x07\xc9\x78\xcd\x91\xcc\x9e\x74\x3c\xab\x86\x06\x5a\x12\x42\x49\xb7\x25\x02\x96\xe6\x27\x46\x79\xc8\x46\xdd\x1c\x10\xba\xd3\x6d\x9b\x21\xd6\xa4\xa7\x7b\x49\x73\x4c\xaa\x9b\x09\x4a\x48\x8a\xf1\x38\xff\x79\xa4\xb0\x2e\x30\xdd\x02\x7b\x60\x8f\x55\x50\x51\xd6\x6c\x30\xd8\xd0\x5a\xc5\x45\xe8\xd1\xc7\x34\x44\x9d\x55\x84\xcb\x59\x1e\x8a\x3e\x12\xa8\x1b\xdd\xbe\x65\x95\x99\x22\x48\x56\x11\x0d\xdb\x12\x0d\x17\x4b\x77\xfb\x86\x06\x78\xca\x5e\xea\x27\x39\x37\xc3\x4a\x60\xb5\xdc\x2c\xab\x2b\x16\xbc\xcc\x04\x8d\x2d\x3e\x44\xa1\xf2\x94\x67\x1c\x7a\xfd\x70\x6b\xb4\xa5\xd7\xd6\xe5\x33\xd2\xc9\xcb\xac\xaa\x0c\x5b\xa5\x2c\x2b\xd1\x40\xc1\xba\xe2\xdf\x79\x60\x9a\x8e\x13\x49\x66\x48\xe0\xdf\x91\xd1\x0c\xfc\x98\xbe\x8b\xc4\x37\xa3\xae\x61\xe1\x0a\x07\xaf\x80\x44\x38\x5c\x82\xe8\xfe\xda\xfc\x69\xb5\xf2\x1c\xa6\xae\x20\xac\xfc\x21\x78\x4e\x93\xbb\x22\x38\xad\x56\x5a\xf5\x26\xab\x90\x5d\xec\xb2\xa3\x16\x17\x7f\x2b\xde\x31\x9a\xa1\xa7\x0b\x39\x27\x47\xb0\x6d\x92\xb2\x3f\xa1\x95\xae\x70\xb1\xbe\xd4\x12\xa0\x92\xc9\x32\x4e\x9a\xb9\x95\x09\xab\xbe\xe7\x45\x8b\x3d\xdf\x6a\xf1\x6c\x69\x11\xc9\x55\x20\x21\x23\xb2\xea\x08\xbd\x58\x2d\x0b\xf0\xfa\x15\x8f\x66\x68\x71\x52\x2e\x89\x24\x36\xce\xf5\x51\xcf\xad\xaa\x17\x88\x33\xfb\x59\xb8\x7e\xa8\xfe\x6e\x72\xe8\xe8\x2c\xff\x9a\xb6\xca\x24\xcc\x41\x0e\xa3\x45\x1e\x5e\x33\x85\xae\x5f\xd9\x06\xad\x1a\x70\xaf\x29\xce\x19\x2f\xb2\x90\xdd\xdd\x56\x18\x44\x25\x88\x24\x50\xab\x7c\x05\xfc\x86\xb7\x34\x8e\x22\x7e\x61\x91\x2b\xa9\x5a\x15\xa1\x5c\xfc\x9e\x74\xa9\x94\x65\x13\x79\x6d\x1a\x0f\x1d\xf8\x92\x5a\x33\xfd\xa2\xfb\xd6\x8f\xd5\x9d\xd0\x75\x26\xc8\x9e\x0e\x03\x2f\xb2\x75\x51\xa4\xf8\xf5\x6b\x11\x57\x3a\x16\xf7\xad\xd1\x63\x46\xe3\x31\x8b\x9a\x12\x7c\x6e\x4a\xa0\x71\xb6\xc1\x09\x9d\x9d\x3a\x96\x19\x97\x41\x58\x44\xcc\xee\x40\xaf\xdb\x0b\xdd\xb1\xaf\x22\x75\xd0\xf3\x4c\xa3\x4e\xfd\x44\xd9\x21\xcc\xbc\x44\x1b\x86\x55\x76\x63\xbc\x68\xba\xb4\x0a\xf1\x0c\x6e\x50\x0e\xda\xed\x08\xc7\xa7\x82\xee\x84\x9f\xc2\x28\xb2\x9d\x71\xfe\x8d\x79\xd1\x8e\x44\x9f\xf1\x95\x84\x71\x5f\x8c\x55\x77\x46\x82\xed\x68\x42\xcd\x58\x73\xf6\x4b\x9f\xa9\xd9\x2b\xcd\xec\x50\x17\xd1\x74\x9a\x95\x30\x96\xc5\xab\xf7\x79\xe1\xee\xac\xce\xba\x1d\x4a\xbc\x96\x54\xd7\xe6\xfd\x9e\xa5\xc2\x2c\x42\x3b\x20\x08\x0c\xf9\xc9\x02\x9e\x50\xdd\x60\xc8\x97\x30\xcd\x1c\xa5\xa4\x3c\xd3\xf4\x11\xb9\xd9\x57\x56\xa2\xc4\xc3\xe8\xf9\x44\x9f\xea\x19\x4c\xa1\x4c\x97\xe9\xa0\xa4\x8e\x20\x83\x8d\xcd\x82\x8f\x42\x1e\xcb\x7d\x01\x15\xb3\xa9\x1e\x40\x52\x06\xae\x6b\xb7\x20\xc8\x7f\xb6\x5f\xa6\x9f\xa5\x15\x23\x6e\xa9\x14\x62\xd3\xb5\x66\xcc\x2c\xe7\xb7\x71\x27\xee\x4d\x1f\x5c\xe4\xea\xde\xab\xd0\x65\xb5\x6d\x97\x3a\x69\x28\x7a\x30\x1b\xa3\x50\x9e\xa9\x50\x37\x4d\xe1\x26\xb8\xcd\x81\x4d\x6f\xd0\x10\xa9\xd2\xaa\x15\x48\x15\xbe\xe0\x34\x24\xec\x5d\x49\xce\x9b\x1b\x32\x68\x46\x6a\x72\x93\x76\xac\x24\x72\x0e\x8c\x61\x32\x58\x23\x34\x93\x91\x4d\x9f\xed\x3e\xc5\x43\x99\x64\x22\x96\x64\x73\xce\xfa\x31\xbc\x53\x50\x7b\x62\x50\xbe\x53\xce\x3c\xcb\x35\xf9\xf8\xc0\xea\x4e\x1e\x62\xd9\x32\x71\x45\x94\x8a\xf4\x1d\xcd\x47\x28\xd1\x94\x9e\x3d\x79\xe8\x6e\x4a\x93\xce\x16\xea\xbe\xb0\x90\x02\xf4\x61\x5b\x52\x2f\xf5\x8d\x22\xae\xc4\x03\xf4\x1a\x68\xac\xaa\xc1\x8c\x2a\x13\xf4\x98\x71\xab\x05\x68\xbe\x4a\xa5\xba\x71\x6a\xf6\x8b\xa7\x0e\x9e\x98\x3d\x68\x20\xe3\xf0\x33\xc7\x9f\x3d\x65\x34\xca\xae\xdf\xf4\x92\x16\x8e\x4c\x9e\xaf\xec\x07\x2d\x1a\x9f\xd1\x9a\x19\x84\x4e\x6d\xa3\x5e\xd3\xa7\xcc\x06\x74\x47\xa3\x89\xdc\x70\x80\x74\x73\xc3\x96\xec\x86\x93\x63\xad\xea\x54\x9f\x79\x7f\x73\x60\x3e\x32\xdb\xa4\x5a\xa3\xf1\x68\x28\xa3\xe0\xb4\x96\x08\x91\x63\x1b\x96\xf0\xa3\x9c\x65\xc0\x29\xcb\xa0\xe0\xed\x5b\x23\x69\xcf\x52\xde\xd8\x95\x3b\x2c\x18\x20\xee\xa2\x80\x55\x97\x7a\x79\x59\x66\x49\x5b\x91\x2c\x89\x64\x21\x2e\x1f\x35\xbc\xd7\x0b\x35\xa9\x23\x58\xe7\xd7\x18\xcf\xc4\xa6\xd0\x9e\xd3\x4a\x79\x57\xa5\x8e\xd6\xb2\x2c\x39\xe2\xdc\x74\x0d\x94\x33\xec\x57\xdf\xaa\xc5\x39\x49\x41\xe6\xde\x99\xee\xbe\xf8\x98\xd7\x3c\xfa\x3e\xa9\x7d\xf4\x7d\x52\x79\xf4\x7d\xb2\x81\xe4\x43\x13\xe2\x36\x4b\xc3\xc0\x5f\x98\x0a\xec\x00\x9b\x2e\xca\xa5\x67\x0f\x5c\x76\x1b\x02\xac\x66\x83\x1e\x6b\x09\xa8\x1f\x11\x8f\x38\xe4\xfa\xad\xe7\xdd\xb8\x73\x8c\x72\x6b\xba\x5e\x22\xc1\x99\x6e\xf1\x71\x7b\xd6\x83\x14\x5d\x11\x9f\x9b\x61\x76\x34\xd7\xf3\x53\x99\x00\xde\xa8\xf8\xcb\x30\x83\xe0\x43\x43\x69\x37\x95\xb1\x40\x6e\xee\xa2\x45\xaa\x7c\xe5\x03\x12\xe2\x05\xec\x33\x77\xba\x13\x89\x1f\xbb\x8b\xb8\xbc\xe8\x84\xa7\xd3\xb3\x7b\x14\x9b\xe2\xb5\x1e\xe1\xef\xcb\x4d\x98\x9a\xd2\xcb\xa1\xd3\x55\xb9\x8e\x76\x10\x9a\xfb\xf6\x59\xd1\xb2\x4b\x7d\x91\x28\x7d\xb0\xd9\xcb\xb5\xd6\x6a\xd3\x89\xf0\x68\xa5\x26\x1e\x00\xaa\xa2\xc0\xe6\xe2\xac\x64\xdc\xa3\xd7\xde\x80\x4c\x20\x07\x53\x3f\x20\xd3\x99\xb0\xa7\xf7\x5a\x28\xb1\xc1\x3f\xaa\x1d\x06\x8b\x24\x33\xc9\x64\x3a\x16\x32\x23\x3b\x11\xf7\x04\x95\xea\x66\x12\xb6\x57\x74\x16\xc2\xf1\xc4\xe2\xcb\xa0\x3a\x63\xfa\x76\x05\x05\xb6\x61\x58\xb5\xc0\x4e\xd0\x20\xb5\x54\x9a\x2c\xc7\x12\xf3\xc7\xf5\x72\x8f\x5a\x02\x74\x8a\xd9\xfa\xe5\xd3\xad\x36\x36\xb0\x71\xd8\xf4\x5b\x6a\x8f\xeb\x0b\x6a\xa4\xb3\x85\xe3\x62\x0f\x18\x31\xa4\x19\x63\x3b\x48\xb9\x5f\xd3\x63\xa5\xd5\x4d\x59\x84\x55\x84\x7c\x34\x56\xb1\x84\x86\x2b\xdb\xe7\x99\x6c\x72\x9e\xea\x7b\x56\x76\x2c\x73\x47\x80\x67\xc1\x25\xad\x42\x11\xdf\xa3\x86\x72\x78\x63\xb9\x3a\x8d\xcc\x0a\x7d\xfc\x7f\x11\x07\x49\x6c\x99\x55\x3c\x65\x8d\xd0\xe5\x5b\x9d\x2e\x5e\x4d\xb6\x61\x68\x07\xc7\x30\xa0\xec\x9e\x1a\xf9\x6b\x60\xbf\x65\xd4\x94\x7b\x76\x26\x7d\x16\x95\x29\x26\xd8\x93\x5d\x60\x33\xc8\x3d\x1a\x31\x74\xc4\xb2\x6c\x51\x59\xf7\x92\xfd\x26\x48\x87\xfe\x95\x06\x7d\x9b\x69\x75\xba\x52\xbd\x9e\xf2\xec\xdf\x2e\xf9\x39\x08\xe9\xfe\x99\xf2\x2a\xc3\xd0\x7d\x53\xca\xcd\x18\x84\xa0\x8e\xc6\xc1\x28\xd8\x37\x6a\x05\x19\x45\xb3\xf9\xb7\x31\x86\x6e\x39\x5b\x74\xc6\x78\x26\x18\x85\x83\x7b\xb4\x1d\x24\x64\x66\x8b\x73\x4b\xd7\xae\x72\xaf\x77\x0c\x8d\x42\xae\xac\x3c\xb3\xb9\x8f\x69\x93\x49\x14\x9f\xec\x04\xcb\x27\x87\x18\xf3\x31\x59\xb4\x2d\x95\x44\xfb\xa9\x2d\x08\xa8\x66\xa9\x34\x36\x96\x1d\x6d\x91\xa6\x0c\xbe\x54\x0b\x0c\xd7\xa1\x20\xf1\xe3\x1c\x7a\xcf\x04\x50\x20\xda\x24\x6e\x72\xad\xa5\x92\x99\x43\x0b\x46\x29\x2b\x53\x72\xf2\x2f\xd9\xc4\xa1\x26\xdd\x55\x38\xfd\x28\x7c\xa6\x92\xd5\xca\x31\xa5\x08\x0f\x17\xca\xa5\x7e\x59\x6c\x05\x74\xb8\xfd\x49\x28\x55\x34\x5e\x16\x3c\x13\xef\x29\xfc\xe4\x1a\x03\x4d\x01\xc9\x66\x97\x9b\x39\xd5\xce\xaa\x29\x0c\xdd\x1f\x91\x9e\xcb\x84\x6c\xa6\xdc\x3c\xca\xd6\x3b\xb2\x41\xc5\xb6\xe0\x76\xb1\x70\x15\x51\x2a\x94\x9c\x46\x32\x75\xf7\xa5\xa0\x02\x52\x09\x31\x63\xe2\x29\x9a\x01\x94\x2a\x6b\x41\x9b\x11\xd3\x92\xf9\x20\x5f\xe7\x0d\x32\x79\x15\x9b\x61\xad\xde\xc8\xae\x19\xba\xfa\x0a\xd0\xa0\x47\x75\x93\x64\x10\xcc\xac\xbc\x70\xad\xdc\xad\xdc\xe1\xba\xc3\x2d\x00\xf9\xfe\x08\xdb\x40\xee\x7e\x32\x11\x25\x75\x7e\x79\x7a\xbb\x97\xda\xfb\x94\x83\xe0\x7a\x85\x86\x55\x2a\x7d\x49\xb9\xaa\xe9\x5b\x28\xa0\x69\x28\xb0\x50\xa4\x5c\xd5\x3c\x61\xc7\xd8\x34\x0f\xd9\xcf\x29\x77\x35\xf3\x2e\x62\xf5\xe0\x6e\xef\x6b\x1e\x26\x2d\x1d\xd2\xb6\x92\x9a\x0c\xeb\xce\xdd\x36\xf3\x94\xae\x19\xc5\x55\xad\x1e\x6d\xb9\x8d\xdc\xe4\x1b\x06\x61\x14\x9e\xc9\xb7\xa9\x75\x7f\xab\x27\xdb\xdd\xf2\x91\x7c\xcb\xaa\x4b\x5d\xdd\xbb\xdb\x01\x7d\x3a\xd7\x44\xea\x96\x57\x6f\x6e\x5f\x87\xc6\xaa\xa4\x43\x2f\xe6\x5a\x13\xae\x7e\xf5\xf6\x76\x37\xf6\x6c\xae\x31\xd9\x7d\xb0\xde\xda\xee\xd9\x7a\x32\xdf\xb9\x9c\x4b\x62\xbd\xb3\xdd\xad\x7e\x2e\xd7\xaa\xe2\xe6\x58\xef\xde\xed\x0a\xc9\x55\x2f\xc7\xc6\x5d\xdc\xf8\x6e\x6f\x51\x61\x0b\x1d\x92\x2f\xf6\xea\x9b\x01\xa7\xbd\xfa\xd2\x96\xda\x61\xa5\x87\x6a\x88\x5f\x8b\x5e\xd9\x52\x43\xfc\x5a\xf4\x10\x0d\xa5\xf7\xa2\xe7\xb7\xd4\x54\x7a\x2f\x7a\x88\xc6\xb2\x6e\x70\xf5\x85\x2d\xb5\x99\xa9\x66\xa8\xa6\x79\x58\xe3\xb9\x2d\xb5\xc8\xc3\x1a\x0f\xd1\x10\xf3\xf1\xaa\x2f\x6f\xa9\x1d\x5a\x78\x83\x66\x84\x27\x57\x7d\x76\x93\x6d\xf0\x92\x1b\x35\x90\xf1\xcc\xaa\x9f\xdc\x6c\x3b\x6a\x05\xc3\x35\xa7\x28\x60\xeb\xc7\xb6\xd6\xa4\x5c\xc9\x70\xcd\x4a\xdc\xc0\x99\xad\xb5\x29\x6a\xd8\xa8\x41\xc9\x37\xa3\x7e\x70\xb3\x6d\xa5\x85\x37\x5e\x1e\x10\x54\xe0\xd4\xe6\x97\x07\x2d\xb9\x51\x03\xdc\x2d\xa3\x7e\x7a\xb3\x0d\x40\xc9\x0d\x7b\x20\xbc\x24\xea\x47\x37\xdd\x07\x5e\x76\xa3\x46\x14\x1b\x7d\xfd\xf8\x66\xdb\x91\x8b\x6f\xd4\x54\xc6\xda\x5e\xff\xea\x66\x1b\x53\x2b\xd8\xa0\x39\x8d\x06\xb8\xee\x13\x41\x23\x76\x42\x7a\xb0\x92\xb4\x4d\x62\x90\xaf\x33\x83\xc4\x21\x39\xd6\x5d\xf6\x56\x62\x58\x2a\x51\x37\xad\x34\x4a\x43\x2c\xdd\xaf\xc3\x4a\x84\xa4\x90\xbe\x5b\x5f\x93\x72\x86\x52\xce\x58\xbd\x42\x4a\x9d\x8e\xd3\x0b\x94\xc2\x3f\xf9\x89\x3d\x8a\x7f\x72\xb5\xb2\xbb\x9f\x5e\x6f\x73\x31\x95\x6e\xa3\xe1\xaf\xb6\xb1\xf7\xf9\x67\x70\xfa\x52\x7f\x0d\xf7\xb7\x16\xeb\x63\x17\x7b\x7f\x73\x42\x08\xad\x3b\x2f\xa0\xed\xbc\x80\xb6\xf3\x02\xda\x43\x77\x7d\x7e\xe7\x05\xb4\x9d\x17\xd0\x76\x6e\xb0\x3f\x04\x37\xd8\x77\x5e\x40\x7b\x50\x5e\x40\x6b\x7a\xd8\x09\x0b\x3c\x4e\xb9\x17\xf9\x06\x57\x4e\x74\xe1\x1e\xb9\x1a\xcd\x40\x86\xb1\xb9\x88\xa9\x1b\x07\x42\x1d\xab\x8e\x50\xaf\x3d\x9c\xbe\x33\x56\x84\x06\xb8\xbb\x49\x6e\x37\x83\x5f\xc2\x4a\xbd\xbd\x47\xd2\xae\x7b\x4e\x8c\x43\xc5\x9b\x92\xf9\x9d\xb3\x06\x9d\x24\x0e\xda\xec\xea\x19\x16\xef\x5b\x59\xa8\x62\xdd\xc5\xcb\x52\xca\xa4\x6c\xfa\x69\x29\xb9\xf4\xe6\xde\x7c\xda\xda\xeb\x52\x05\x6f\x3e\x65\xda\x92\x07\x7e\xd3\x8f\x4b\x49\x85\xef\xc1\xcb\x52\xbb\xb6\x99\xef\x97\xf7\x67\x7a\x9e\x06\x9f\x56\xae\xdf\xb9\xa7\x5c\x7f\xf4\x50\x70\xfd\x89\xc2\xf5\x27\xdb\xca\xf5\x7b\x3b\x5c\xff\x03\xc4\xf5\x37\x35\x5c\x7f\x73\x00\xd7\x1f\x0c\xe0\xfa\x33\xdc\x77\xfb\x93\x0b\x9a\xf5\xa0\x30\xfe\xf7\x2b\x66\xd6\x36\xb1\xb1\x68\xd1\x1e\x1b\xe3\x4f\x85\x18\x81\x1f\x07\x49\xb3\x43\x55\x7a\x84\xa4\xb0\x0f\x23\xba\x6d\xfa\xb4\x13\xc5\x4f\x06\x41\x5c\x2a\x69\xb8\x56\xb3\xcb\xdf\x2e\x98\xf5\x30\xbd\x1c\x96\x1e\x78\xe0\xd0\x1b\x95\x4a\x66\x97\xc3\x76\xb7\xbc\x18\x81\x5b\x13\xbf\xac\xd5\xeb\x75\xcb\x8b\xc1\x8b\x9a\xd4\x65\x3c\x7f\xda\x8d\x33\x1f\x2c\xa4\x59\xa1\x5d\xc6\x3e\x45\x31\x6d\x0c\x60\x3b\xeb\x5b\x9a\xf2\x4c\xfb\x38\xab\x5d\x2a\x51\x26\x8e\x3a\xd9\x13\xba\xbf\x8f\x39\xe3\x70\x7c\xa5\x88\xaa\xf1\x48\x6c\xc7\xe5\xae\x13\x62\x3f\x7e\x26\x68\x09\x9f\x12\x66\x56\x64\xac\xaf\x12\xd0\x36\x2f\x38\xb8\x8f\x8c\x54\x90\x14\x4a\x05\x5e\xc1\xb3\x26\xce\xbd\x7a\xd6\xa4\x63\xb6\x87\x7c\xd6\x24\x3a\x45\xf6\xc4\x53\x78\xc9\x6d\x62\x03\x2d\x12\xbe\xb0\x4d\x9f\x2a\xe9\x38\xd1\xd1\x60\x09\xb7\x0c\x34\x56\x2d\x7c\xa2\xc4\x69\xb5\x3e\x47\x99\xcc\x70\xc0\x43\x1f\x8c\x20\xdb\x38\xf3\xa2\x45\x18\x78\x98\x3d\x61\x61\xd0\x80\xcc\x84\x1a\x87\x9c\x5b\x90\x96\x09\x15\xca\xd3\xb0\x2a\xbe\x12\x56\xc5\x15\xbf\xf9\x06\x28\xb8\x03\x49\xda\x71\x4b\xa5\x31\x57\xca\x47\xef\x70\xf2\xfb\xbc\x76\x1c\x26\xb8\xc1\x03\xd6\x07\xb6\xab\x7b\x80\x43\xae\xd4\xb0\x46\x00\xa5\xa0\x54\xc2\x66\x5c\x9e\x63\x5f\x9f\x0e\x83\x45\xfa\x58\xae\x19\x58\x14\xf9\x7e\xbf\x3f\x42\x2f\x81\x38\x2d\x16\x37\xe7\x88\x1b\xc5\xd8\xc7\xa1\x69\x2c\x06\x49\x84\x93\xae\x81\x4c\x0d\x9d\xf6\xcd\x78\xc0\x13\x1b\x48\xf9\x88\x08\xc5\x96\xa3\x5d\x64\x1d\x56\x09\x53\x59\xd0\x3e\x73\x93\xdd\x0c\x06\x69\xa8\xab\x42\x24\x94\x85\xc5\xe7\x4a\x6c\x81\xd0\xb4\x56\xe9\x1d\x7e\xba\xc4\x08\xa7\x47\x5f\xa3\x66\x17\xf2\x33\x38\x52\xa2\x4d\xd2\x0d\x72\xaa\x8f\xe8\xba\x21\xd1\x75\xa4\x06\x71\x28\xc8\xcb\xaa\x73\x29\xba\x85\x99\xb0\xdf\xca\x0c\x4b\x51\x70\x1f\x29\xb4\xcf\xc6\xab\x10\x6a\x08\x2d\xba\x26\x34\xd7\x81\xf8\xb0\x58\xf2\x08\x55\x45\x48\x99\xb1\x70\xb8\x25\xec\xdb\xe1\xf0\x4b\xd8\x27\x24\x70\xc0\x7b\x2e\x9a\xd5\xed\x5b\x2c\x60\x8c\x65\xf5\xa5\x0d\x3c\x40\xd8\x17\xbe\xe5\xb9\x1c\x1d\x25\x12\x86\xb8\x82\x93\x69\x51\x47\x61\x52\xba\x89\xe9\x2b\xdb\xb1\x69\x94\x0d\xfa\x80\x50\xd6\xf9\xb0\x9e\xbe\x8f\x53\xaf\x34\x50\xb5\x62\x35\x90\x6f\x57\x09\x2d\xe5\xd2\x0a\x25\xa9\x76\xa8\x2b\xe1\xb3\x12\xe2\x66\x07\xd3\x1e\x44\x1a\xed\x41\xa4\x7b\x6e\x61\xc9\x36\x7d\xdb\x95\x95\x08\x2b\xb6\x4a\x3c\xe7\xed\x7a\xd8\x40\x0b\xf6\x46\x72\xb7\x2f\xcb\xdd\x72\x0d\x16\x9a\xb3\xe5\x8f\xcb\xf6\x6a\x1f\xc9\x2a\xd9\x85\x02\x95\xec\x72\x1d\x37\xec\x05\x50\xc9\x2e\xab\x2a\x59\xf9\x27\x5a\xce\xaa\x64\x97\x0b\x55\xb2\xcb\xbd\xde\x72\x56\x25\xbb\xac\x4a\x6f\xcb\xf6\xfc\x30\x2a\x59\xe5\x29\x7c\x93\xf0\x1a\xd8\xea\xf5\x70\xdf\x42\xcb\x16\x9a\x93\x54\xb2\xcb\x19\x85\xe9\x32\xa8\x64\x95\xf4\x99\xe5\xbc\x4a\x76\x4e\xa8\x64\x97\x07\xab\x64\xb3\x2d\xe8\x99\x54\x82\xe2\x32\xe9\x1e\x53\xc9\xfa\xb2\x02\x64\x76\x8b\x0a\x10\xf9\x2a\x80\xa4\x04\x69\xa8\xd4\x49\xd1\x76\x6c\x0f\x07\x1d\x03\x33\xf7\xb9\x53\x47\x8f\x3c\xe9\x84\x51\x39\xc6\x8b\x5d\x8f\xf0\x4c\xab\x6e\xab\x66\xb4\x57\xbe\xf8\xf9\x17\x26\xa7\x1d\x03\xcd\x7b\x41\xf3\x74\xed\xb1\x55\x50\x46\x44\x46\xad\x6e\x94\x9c\x38\xa6\x4f\x28\x1c\x90\xf1\x6f\x20\x23\x8a\x9d\x18\xb3\x80\xec\xb5\x7a\x7d\x0f\xaa\x4f\x3d\x8e\x2a\x0d\x54\xaf\x4f\x4d\xa2\xc9\x46\x83\xdd\xc7\xaf\xd7\xf9\x7b\xfe\x46\x03\xd5\x57\x33\x85\x26\x91\x31\x3a\x4a\x3e\x54\xab\xc8\x88\xba\x8e\x4f\xe0\xc9\x69\x54\xd1\x3d\xfb\x30\xa1\xb6\x5f\xaf\x3e\x8e\xaa\xe4\xcf\x24\xf9\x0f\xf1\x56\xeb\xd5\x29\x52\x07\x32\xbe\xf2\x15\xdf\x68\x34\x90\xd1\x75\x42\x67\x11\xc7\x64\x73\xd5\xea\x8d\x7e\xa3\x41\x12\x3b\x4e\x34\xbb\xe4\x78\x46\xad\xed\x78\x11\x46\x46\xd2\x5d\x72\x68\x06\xc3\x6d\x1b\x8d\xfe\x63\x68\x11\xc7\x4e\x6d\x75\x91\x8e\xf0\x33\xce\x22\xae\x6d\x71\xa2\xcb\x9d\xf9\x88\x3a\x07\x0a\x86\x3a\x62\x2f\xa5\xd1\x72\xa7\xf8\x3c\xc4\x88\x47\x5b\x85\x94\x63\xbe\xb7\x22\xb2\x99\x96\xbc\xfc\xc2\xad\x2e\x3f\x79\x2c\x19\xa9\x7f\x90\x56\xe1\xc2\x89\xc3\x2f\x7e\xe1\x44\xe5\xb0\x7e\x15\x1e\x00\x84\x8d\x52\xba\x9c\x32\x8b\xa9\x5a\x41\x86\xe7\xd2\x95\x51\xb4\x82\x58\x25\x24\xc7\x6e\x64\x28\x87\xae\x81\xea\x53\x15\x54\x9f\xda\x23\x96\x70\x15\xd5\xd3\x28\x31\x64\xcd\x90\x63\xd9\x60\xcb\xba\xc1\x1a\x61\xcc\x2f\x02\x37\x7c\x83\x2f\x46\xb6\xf8\x60\x61\x57\xd2\x85\x3d\x18\xad\x09\xdf\x59\xc4\x86\xba\xa0\x09\x0e\xf4\xe3\x33\xf4\x5b\x66\x79\x43\x0b\x7b\xd1\x24\x43\x2a\x5d\xf6\x34\xdb\xbd\x5f\xe6\xb9\x3e\x3c\x40\xab\x9d\x59\x46\x26\x16\xf9\x7d\x9f\x07\x68\xa5\x07\x78\x7c\xfa\xc8\x99\xd3\x95\x82\x95\xae\x5e\x0e\xd3\x2e\xf3\xc4\x1b\xb8\x9e\xb8\xa6\x5d\x5d\xa5\x9e\x1b\xc5\xf3\xc1\x99\xc2\x65\xba\xc1\xde\x61\x95\x8e\x16\x7e\x99\x98\xc8\x0c\xf9\x50\x7b\x04\x9a\x67\xab\xbd\x91\xc5\x6a\x6a\x33\x6b\xfa\xae\xd7\xb3\x8a\xff\x03\xb4\x96\xc1\x05\x6d\x7b\x2c\x27\xa9\x06\xc3\x95\xd4\x91\xee\xa7\xd5\x6e\x12\xdc\x53\xbb\x89\xf3\x50\xd8\x4d\x22\xc5\x6e\x12\x6d\xab\xdd\x24\xd9\xb1\x9b\x0c\xb4\x9b\x34\xb3\x76\x93\xe6\xbd\xb4\x9b\x78\x1a\xbb\x89\x37\xc0\x6e\xe2\x3e\xf8\xde\x52\x4d\x89\x4a\x35\xef\xa3\xd1\x64\x7b\x58\x01\xe5\xc5\x38\x9d\x3f\xce\xa3\xa2\x56\x8f\xb8\x5a\xdd\xcb\xaa\xd5\x13\xd3\x93\xd4\xea\x5e\xea\x6c\xc3\x54\x4c\xc8\x1b\xc2\xd9\xc6\xcb\x3a\xdb\x14\xf8\xbd\xe8\x5e\xec\x2d\xd6\x74\xb1\x08\x09\x4c\x03\x20\x6b\x27\xa9\x5b\x0c\x35\x14\xa5\x44\xa0\x61\x95\x4a\x8e\x46\x91\xe4\x30\x45\x92\xa7\x28\x92\xda\x8a\x8e\xa7\x65\x73\x9c\x3b\x54\x7d\xd4\xdd\x9c\xfa\x88\x95\xb5\xd0\xa2\x52\xe9\x52\x56\x71\xd4\x2d\x50\x1c\x2d\xd5\x71\xc3\xee\x82\xe2\x68\x49\x55\x1c\xc9\x3f\xd1\x52\x56\x71\xb4\x54\xa8\x38\x5a\xea\xf5\x96\xb2\x8a\xa3\x25\xf5\xf8\x5a\xb2\x3b\x9b\x57\x1c\x91\xdd\xc4\x15\x47\x4b\x16\x5a\x94\x14\x47\x4b\x19\xb5\xce\x12\x28\x8e\x94\xf4\x99\xa5\xbc\xe2\x68\x51\x28\x8e\x96\x06\x2b\x8e\xb2\x2d\xe8\x09\x04\x41\x71\x89\x74\x4f\xa3\x38\x5a\xd9\x80\xff\xeb\x60\xaf\x8b\xc3\x68\x97\x86\xc7\x76\xa3\xbc\xc8\x3e\xe4\xdb\x98\x83\xb9\x42\x49\x99\xbf\xf3\x56\xe3\x43\xf3\x56\xa3\xff\xc8\xbc\xd5\xe8\x7f\x2a\xde\x6a\xf4\xef\xdb\x5b\x8d\x2e\xe7\xc7\x7d\x9b\xec\x68\x16\xb9\x54\x04\x62\x88\xcb\x6e\xf4\x59\x42\x1b\x2c\xd3\xdf\x12\x8b\x43\x29\xce\x71\x42\x70\x98\x53\xc3\x61\x56\x9d\xed\xea\xd9\x1f\xfe\xbc\xd5\xe7\x28\x65\x2b\x33\x02\x67\xba\x32\x51\x0c\xee\x8a\x28\xa6\x31\x23\x86\x53\xf0\x88\x71\x8a\x77\xc8\xdd\xc3\x43\xee\x42\x39\x98\xf3\x96\xc9\x9d\x9f\x27\x77\xfe\x46\xe4\xce\x4f\xc9\x9d\x3f\x24\xb9\xf3\x37\x4f\xee\x7c\x4b\xed\xe9\xc3\x4e\xee\xc2\xfb\x46\xee\x84\x83\x4a\x68\x93\x1d\x3d\x69\x21\xdf\x0e\xeb\x95\x06\x72\xed\xb0\x5e\x6d\x70\x4b\xbd\x6d\xbb\x8a\xf6\x80\x07\x6e\x67\x6d\xb9\x56\xaa\xc2\x09\xec\xca\xbe\x60\xbf\xcb\x55\x38\xc1\xf8\xb8\x25\xe5\x67\x81\xde\xdd\x7a\xd0\x40\x62\xce\xc6\x2a\x23\x42\x0c\x00\x04\xd5\xec\x34\x48\xe1\xb6\xd0\x5a\x11\x36\xdf\xd7\x93\x5b\x57\x4b\x6e\x15\x1e\xd4\xdd\x80\xdc\x72\x35\x66\x54\xa4\x8d\x9c\x58\x4c\xbc\xd8\xed\x7a\x0f\x96\x4e\x3d\x7a\xf1\x85\xcf\x3e\xb1\xf7\x8b\x7b\xf5\x3a\x75\x50\x3e\x23\x83\x5f\x10\x37\x0e\x80\x4e\xf5\x04\xd3\x4e\x1f\x70\x42\xd7\x61\x02\xd6\x3c\x6e\x3d\xb9\xc2\x93\x60\x83\xf1\x9f\x47\x9c\x79\xec\x29\x3f\x3c\x91\xbb\x9d\x46\xeb\x94\x42\xc8\x19\x07\x1c\xcf\x0b\x96\x0f\x31\xf9\xce\x38\xc0\xee\xc0\xea\xf2\xcd\x67\x42\x37\x1b\x07\x9a\x8e\xd7\x4c\x48\x17\x8f\x07\x91\x2b\x12\xe5\xf0\xfb\x24\x21\x1f\x77\x95\xa5\x46\xb1\xeb\x3b\xbc\x54\x6a\xe6\x32\x0e\xb4\xc2\xa0\xdb\x0a\x96\xfd\x43\x9e\x13\x51\x45\x32\x3e\x13\x87\x0e\xd5\x28\x93\xa3\x5c\x41\xaa\x13\x84\xee\x8b\x81\x1f\x3b\x9e\x8c\x03\xc8\x41\xde\xca\xb1\x2e\xf6\x59\xa5\x10\x3c\x46\x84\x57\x33\x0e\x40\x4c\x54\x01\xaa\x51\xdf\x8c\x03\xf9\x60\x74\xc6\x01\xf6\x94\x0f\x83\xd8\x2b\x09\x00\xb3\xd8\x23\x04\x84\xcb\x0d\xc6\x01\x71\x9d\x40\x80\x0a\xe6\x8a\xb1\x5d\xf9\xa9\x66\x63\x8e\x3b\x27\xa9\x53\x0b\x49\x50\xee\xc6\x93\x9f\x7e\x0b\x87\x87\xfd\xe3\x1e\x0d\x8e\x4c\x12\x5e\x48\xdc\x90\x75\x3a\xbd\xac\xcf\xad\x36\x29\x34\xeb\x8b\x01\x97\x82\x9b\xa6\x3f\xa5\x5e\xb3\x84\xe3\x2a\xc2\x29\x63\x93\xc2\x87\x63\xbc\xa8\x60\x4f\x71\x27\xe7\x01\x5d\xd1\x6e\xcc\xd6\x32\x2c\x6d\x31\xbf\xb1\x33\xcf\xfc\x84\xa4\x6f\x72\x2d\x90\x76\x98\xb6\xb5\x84\xc3\xd8\x6d\x2a\xf3\x2d\x3c\x00\x8a\x6d\xaf\x7b\x91\x12\xf5\xd0\x40\xf5\x7a\xf5\x71\xb4\x7b\xaa\xd1\x40\xf5\xfa\xce\x66\x7b\x58\x37\x1b\x44\x8e\x51\xf7\x9d\x2f\xae\x32\x91\x1f\x2c\xfa\xd0\xce\x76\xdc\xc4\x76\xdc\xc2\x16\x4c\xf7\x30\x78\x27\x4c\x35\xa8\xc9\x74\x9a\xfd\xd9\xcd\xfe\xec\x61\x7f\x1e\x67\x7f\xf6\xb2\x3f\x4f\x34\xf2\xae\x0d\x15\x70\x63\xe0\x7e\x03\xd9\xef\x55\x56\xb4\x82\x84\xf7\x4e\xe6\x61\x81\x46\x23\x2d\x3b\x89\xa8\x45\x97\xfc\x05\xac\xaa\x80\x56\x15\xf0\xaa\x02\x62\x55\xc0\xac\x0a\xa8\x55\x9f\x60\x7f\x27\x2b\xf0\x17\xda\x9d\x84\xfa\x26\xa1\xbe\x49\xa8\x6f\x12\xea\x9b\x84\xfa\x26\xa1\xbe\xc9\xbd\x29\xbe\x72\xd0\xa2\x06\x7c\x7e\x22\xfb\x99\xaf\xe0\x46\xf6\x03\x5d\xcd\x90\x3a\x05\x58\x4d\x01\x56\x53\x80\xd5\x14\x60\x35\x05\x58\x4d\x01\x56\x53\x80\xd5\x14\x60\x35\x05\x58\x4d\x41\xf3\xd3\x50\xdf\x34\xd4\x37\x0d\xf5\x4d\xf3\xb9\x84\xfa\xa6\xa1\xbe\x69\xa8\x6f\x9a\xd6\x57\x25\xdc\x56\x5e\x04\xe6\xcc\x18\x7f\xa7\x66\xd4\x60\x65\xf6\x52\x67\x11\x98\xd7\x2a\x9d\x57\x75\x8e\x77\x57\x1a\x2a\xcd\x16\x55\x09\x73\x73\xea\xeb\x52\x37\xb2\xeb\x6f\xfa\x89\x46\x03\xc6\x69\x37\xf4\x67\xf7\x64\x3a\x9a\x84\x77\x4c\x62\xdc\x3a\xe5\xcc\x33\xa7\x4f\x96\x7b\x23\x67\x30\xd9\xa9\x65\xf7\x34\x2c\xc6\x06\xf7\xed\x1a\xe0\xd7\x55\x45\x93\xd4\xb5\x4b\xc9\x51\xec\xfd\x12\x90\x3d\x2d\xd9\xcd\x87\xf5\x1c\x18\x9e\x39\xe6\xde\x03\x12\xe7\x1d\x6f\x1b\xe7\xad\x73\x08\xf8\xc4\x39\xf0\xee\xf3\x4b\x4b\xdd\xf0\xab\x07\x0b\x39\x70\x03\x19\x6e\xeb\x4c\x4a\x40\xe9\x49\xc6\x7c\x52\x18\xdd\x93\xf9\x14\xe5\xec\xe1\xe7\x54\x37\x4b\x93\x55\xca\x2e\xd8\x13\xf9\x98\x2d\x22\xd6\xc0\xd4\xe4\xdd\x6b\xaa\xc2\xbd\x66\x0f\xaa\x0e\xb1\xf1\xe0\xb4\x9b\x60\x1b\x6f\x0a\xd5\x0d\xfe\x3e\x14\x5d\xf4\x83\x1c\x1a\xb3\x75\x70\xaf\x46\x42\x10\xa6\x51\x7d\x6a\x2f\x25\xe5\x7c\x4f\x05\x5d\x0c\xe7\x74\x4b\x90\x28\x54\x37\x58\xb8\x70\x99\x22\xb3\xa2\x64\xa3\x2b\x2e\xf5\x62\x6f\x52\x5f\xf0\x63\xdd\x2c\x21\x97\x8a\xd1\x0b\x05\x70\x5d\x79\x83\x52\x92\x37\x0f\x41\x9f\xb9\x81\x3e\x21\x11\x9c\xbd\x39\x98\xe1\x2d\x4e\x54\x51\x99\xf2\x47\x26\x16\xc8\xc0\x5e\x84\x0b\x1d\x48\x73\x2e\x4c\xbb\x09\xc6\x43\x4e\xdc\x68\xea\xf9\x37\x5d\xe4\xf9\xb7\x71\x2d\x13\xa9\x23\x21\xef\x45\xa3\x68\x70\xf6\x48\x83\x20\x35\x33\xbc\xc3\x2c\xfb\xa7\xf1\x2e\xe4\xbe\x56\xf3\x49\x1c\x07\x22\x91\xfa\x39\x7a\xc0\x4c\xb3\xbb\x19\xa3\x98\x5d\x79\x1b\xe8\xf0\x25\xba\xc8\xca\x4c\xcc\xc7\x3e\x77\x9d\xa4\x57\x10\xf8\x04\xc2\x25\x04\xc9\x03\x57\x75\xf0\x62\xff\xae\xbe\x2e\xfd\xcc\x39\x77\x69\xfd\x74\xf9\x80\x89\x79\xd1\x79\x15\x6f\xb8\x36\x64\x1f\x33\x36\xcf\xbb\xe5\xfa\xea\x84\x84\x32\x5a\x91\xd5\x12\x64\xb8\x21\xce\x06\xf0\x5d\x5d\x88\x3a\xda\x08\x93\xbd\xa8\x5a\x51\x0e\xb7\xa9\x0d\x6a\xe4\x9f\x87\x1a\x3b\x7a\x16\xe6\x70\x90\x87\x92\x0d\xc3\x14\xf4\x6f\x6f\xca\x28\x4c\x42\xd2\x13\x1b\x6e\xc9\x41\xe3\x3d\xb4\xdf\x6b\xd6\xa1\x3b\x75\x7c\xdd\x3b\xb4\x27\xf7\xc6\xcb\xe6\x89\x4d\xa1\xcf\xbd\xd1\x5d\x2a\xef\x0c\xa2\xde\xfc\x65\x40\xb1\x4f\xe4\x22\x86\x93\xc4\x01\x39\xc7\x3d\x1c\x53\xf7\xc7\x76\x5b\xfd\x12\x86\xec\x08\xcc\x7e\x70\xba\x6e\x4c\x4d\xcc\xe9\xb7\xea\x1e\x32\x96\xd8\xf3\x9a\x1d\xdc\x3c\x6d\x20\xca\xce\x6c\x78\x40\xe9\xd1\x1b\x70\x4c\x55\xf7\xa0\x49\x94\x52\x67\x11\x9f\x97\x7f\x34\x94\xc7\x12\x81\xcf\x84\x6f\xbb\xc5\x39\x01\xcd\x1e\x85\x56\xa9\xd8\x78\x32\x5e\xf1\x70\x5a\x8f\x7a\x0f\x02\xca\x2d\x3a\x2b\xf3\x58\x16\xba\x44\x76\xd9\x45\x5b\x43\x35\x69\x9e\x94\x75\x60\xe2\x10\x1b\xd1\x69\x11\x20\x45\x3d\xde\xda\x10\x10\x95\x8a\x4c\xba\xf3\x6f\x9e\x05\x32\xa5\xb2\x94\xee\xbb\x0b\x11\x36\x14\xd9\x81\x49\xc8\xfa\x03\xf5\xb4\x88\xfe\x51\x20\x87\x64\x0a\x55\xa5\x73\x9f\x3e\xdd\x91\x8e\x63\x94\x3b\x7d\x87\xa1\xa4\x59\x57\xda\x61\xb6\x27\xd9\x1f\x49\x34\xe1\x36\x25\xbf\xdd\x6c\x5b\x03\x78\x6c\x42\x49\x5b\x2e\x39\x1e\x22\x4c\xf8\x0f\xc3\x0f\xc8\xff\x8e\x4f\x78\x35\xb7\xad\x70\xe0\xc8\x48\x7c\x0f\x53\xf9\x98\x14\x61\xd1\x45\x0d\x64\x4c\xc4\xa1\xd3\x3c\xcd\x6c\x12\x84\xd4\x3b\x64\x2e\xb7\x9f\x5b\xe7\x0c\xf5\xbd\xe0\xda\x1f\x28\x26\xfd\xc8\xde\x2f\xee\xfa\xaf\x67\x92\x53\x7a\x26\x9d\x2b\xab\x0c\x64\x74\x93\x79\xcf\x6d\x32\xad\x8b\xcc\xa4\x1f\x94\x34\x6f\x06\x32\x52\x28\xaf\x62\xcf\x3c\xb8\x61\x3c\x29\x6b\xe3\x0c\x64\x9c\xe2\x42\x0c\x08\x07\x31\x0e\x17\x15\xd6\x3d\xaf\xe6\xca\xe9\xcc\x64\x96\x5f\xa7\x76\x52\x94\x3b\x9a\x2f\x92\x5a\x28\x27\x5c\x14\x28\x79\xb4\xea\xa1\x8c\xde\x31\xa7\x5d\xcc\xe8\x9c\x54\x45\x51\x46\x3f\x74\xd7\xda\x51\x59\x27\x96\xd1\xbc\x66\x95\x52\x79\xc1\x4b\x56\x5e\x4a\x3a\x3d\x59\xff\xa5\x53\x60\xe5\xf4\x9c\xc5\xba\xd7\x42\xe5\xad\x5e\xff\x99\x51\xae\x6a\xd4\xa1\x1a\xa5\x61\x46\x4b\xa8\xd3\xa8\xe9\x14\xbe\x45\x42\xe1\x5e\x64\xcc\x3b\x91\xdb\x9c\x48\x77\x08\x53\x70\x57\x41\xc1\xbd\x55\xd4\xb5\xca\xda\x5c\x7f\x14\x9d\x2c\x57\xb8\x0e\xd5\x49\x79\x36\xf3\x1d\xe6\xba\x9c\x02\xc5\x13\x3b\x96\xb3\x08\x36\xf2\xfa\xc2\xe9\xc7\x1b\x9c\x29\x49\x95\x82\xe9\x29\xc7\x90\x1f\xa8\x6b\x9b\x06\x5d\xd9\xf4\x13\xaa\x0e\x6d\x77\x65\x58\xbd\x51\x2a\x5f\x4d\x4a\x3c\x6e\x95\x1f\xa4\x55\x49\x1b\x36\x99\xf2\x83\xd2\xb2\x56\x62\xf5\xa7\x2f\xab\xa4\xaf\xe2\x64\xde\x3a\x49\xdf\x4b\x90\xde\x69\x50\xde\x35\xd0\x3c\x3a\x20\x62\xba\xc9\xe7\x7b\x2a\x08\xa7\x23\x24\x21\x23\x25\x0b\x3d\x41\x9a\xc4\xd1\xcb\x27\x31\x3c\xa5\x74\x8e\xb0\x94\x24\x30\x97\xd2\x14\xd6\x2f\x2d\x9c\xed\x8b\xac\x5f\xac\x4a\x92\xb3\xe8\x61\x5a\x76\x4e\x9c\x26\x07\xc5\xc7\x54\x4c\xce\x6a\xa1\xab\x94\x63\x2a\xbe\xd6\x04\x2c\x6c\x35\xc3\xc2\x6e\x5e\x52\x21\x9f\xf6\x8a\xba\xf8\x71\x44\xd7\x5b\x75\xcf\x20\x15\x82\xaa\x6b\x65\x5a\x68\x55\xa6\x9a\xcc\x8c\xad\xa1\xbb\x37\xc5\x39\xf4\x09\x07\xf2\xc9\x9a\x03\xce\x6f\xb7\xf8\x49\x30\xbf\x62\x70\x65\xb7\xfc\xdd\xe5\xc7\x02\x68\xba\xe5\x6f\x20\xf4\x83\x32\x3b\xf7\xc5\x4b\x2b\x9d\xaa\x2a\x9f\xd3\x13\x04\x14\xdf\xf0\x91\xe9\x17\xb2\xdb\x7f\x6a\xaa\x21\xe9\x1c\xc4\xfd\x48\xc2\x96\xb3\xe3\x06\xb4\xe5\xa9\xc8\x42\x95\xe6\x1a\xd6\x5d\x96\xcf\x55\x9d\xcc\xd4\xe3\xb9\x75\x22\x9a\xdf\xd3\x40\x46\xc5\xc8\x4a\xac\xc0\x49\xef\x91\x76\x5a\x26\x38\x7f\x43\xe8\xe9\x33\xdc\xf7\xe3\x5b\x28\xa3\x69\xe7\x64\x66\x63\x4f\x3d\x31\x44\x43\x9b\x2c\x24\xdb\xc7\x1a\x42\x53\x3e\xa0\x80\x1a\x4f\xbd\x68\xdb\x67\x6a\xd8\x3b\x40\x86\xc9\xbc\x48\xa1\x2f\x2b\x49\x5c\x79\x23\x8d\xae\x40\x2a\x81\xa5\xf9\xa9\x1a\x58\xda\xe9\xe4\xe0\x4d\x39\x29\x8d\x8d\x63\x92\xac\x8c\x54\x97\x29\xf6\xd7\xdd\x1c\x28\x9a\x66\xa6\xb3\xa6\x94\xbc\x05\x65\x0b\x5a\x14\x85\x3e\x91\xa6\x58\x87\x37\xe2\x34\xf3\x4c\xf3\x00\x4e\x96\xab\xe1\x37\xb2\x91\x6a\xb5\xf1\x29\x9f\x2e\x2b\xf1\x8b\x2c\xc5\xc3\x18\x80\xf9\xb4\x29\x66\xbf\x8c\x69\x72\xba\x81\x8c\x23\xac\x8f\xa3\x70\x20\x94\xcb\x65\x43\xe6\x3c\x84\x19\x31\x63\x65\xdc\x3d\xd0\x4a\x98\x5b\x67\x8a\x49\x73\x2a\x9b\x89\x4b\xfb\x83\x2d\x8b\xdc\xb2\x49\x32\xe8\xbb\x3c\xbc\x5d\x2c\xab\x42\xdc\x93\x51\x4f\xca\x16\xb2\x34\x6f\x4e\x3b\x58\x25\x39\x73\xb6\x32\x35\x4f\x25\xab\x72\x2c\x56\x49\x4a\xb7\x78\xd3\xb3\xf4\x50\xe0\xc7\x18\x98\x8f\x0d\xce\x52\x89\xa3\xde\xca\x19\xca\x8b\x67\x0f\x51\x64\x70\x4b\x68\x15\xd4\x5b\x64\xff\x6c\xdb\xd6\x9f\x92\xe0\x27\x38\x19\xa0\x6a\xef\x94\x5c\x1b\x83\x1f\x3f\x60\x25\xb6\x8b\x42\x3c\x21\x08\xc4\x80\x5d\x5d\xec\xc5\xb1\xb1\xb1\xad\xc8\x63\x43\x4f\x05\x36\x21\x3d\x8b\x88\x21\xca\x66\xdd\xec\x46\xdb\xd4\xa6\x1e\x62\x57\xea\x36\xbf\xe4\x9e\x90\x9e\x59\x45\x7b\xe8\x09\x45\x17\x3d\x25\x1d\xc1\xfa\x07\x49\x75\x06\xa0\x62\xdb\xc6\x70\x07\x53\x75\x6f\x76\x15\xe6\xae\xe8\xdf\xcd\xea\x93\xd7\xdf\x5e\x69\xfd\xe5\xfc\x69\x64\x6b\x4a\xca\x6a\xa4\x3d\x4f\x0d\xfc\x1b\x0c\xea\xde\x02\xad\x7f\x81\xb5\x43\x37\xea\xd2\x3b\xab\x5b\x19\x72\xb9\xca\x9c\x53\xd5\xe6\x8d\x78\xa9\xb1\x64\x5b\x43\x3a\xe4\xab\xbf\xeb\xe0\x0e\x7e\x30\x01\x81\x25\x37\x1b\xe0\x21\x83\x0c\x1a\x38\x7c\x45\x5d\x98\xd2\x7c\x1a\xce\x8a\x38\xf4\x6a\xd9\x70\x37\x3d\x9e\xdd\x4d\xe9\xa4\x6c\xd7\x36\xda\x0d\x07\x66\x95\x9b\x05\x07\xd8\x9f\x64\x65\x40\xbd\x98\xf1\xcb\x28\xf2\xa8\x0a\xf5\xb0\x70\xb3\xd0\xa8\xe1\x04\x45\xcf\x3f\xc2\x9d\xd3\xc0\xea\x86\x69\x18\x0e\x0d\xfe\xa8\xfa\x0b\xc3\x10\x63\x20\x11\x5f\x45\x1d\xc2\x31\xd1\x28\xa1\xaa\xbb\xb3\xd3\xa3\x0d\xfd\xb3\x19\x11\x20\xb7\x0a\x53\xae\x4b\xb8\xda\xe9\xd6\x6c\x7e\x25\xee\x41\x8f\x6f\xc0\x73\xed\x56\x59\xae\x42\xa6\x6b\xa0\xc9\x33\xbf\x84\xa9\x7b\xd9\x5d\x73\x17\xd3\x82\xba\x67\xfc\x6a\x84\x8d\x7c\x6a\x78\x22\x3e\xbd\x29\xe6\x32\xff\x99\xec\x0b\xdd\x48\x54\xef\xc2\x03\x0c\x19\x1e\x8e\xb9\x59\x4a\xb6\x53\x29\x06\x2c\xc5\x34\x45\xc5\x2d\xfc\x02\xad\xc6\x6f\x3a\xb4\x48\x14\xb9\x0b\x24\xb9\xe3\x44\xdb\x69\xa7\xba\x17\x66\xa9\x01\xaf\x71\x7d\xe2\x56\xaa\xf8\xb9\x2f\xec\x3e\xfd\xc4\x8b\xe3\x85\x01\x92\xb4\xee\x63\x5a\xc3\x8c\xc2\xf2\x6a\xb8\x5c\x95\x47\x2e\x88\x6a\xc7\x0f\xfd\xc7\x37\x1b\xd5\xae\x42\xd6\xcc\xd2\x60\x23\xab\x30\x50\xeb\xe2\x22\x65\x1c\x11\xee\x87\x57\xc1\x64\x7a\xa4\x37\x83\xc5\xf9\x00\xf8\x8b\xc2\x63\x08\x58\x4a\x81\xa6\x70\x23\xa8\x0e\xef\x46\x30\x59\xe8\x1a\x30\xb5\x81\x29\x5f\xb2\xc4\x4f\x6b\x2d\xef\x92\xe6\x69\xf7\x06\xb6\x7e\xbd\x2f\xc0\xdd\x98\xee\xa5\x17\x35\x72\xf9\x26\xa5\x7c\xf2\x63\x22\x03\xac\xfb\x9b\x60\x79\x36\x63\x97\x5f\x76\x3d\x6f\x82\xde\x1b\x0c\x56\x18\x0d\xdc\x3e\xd2\x95\x21\x33\xf7\x84\x92\x3d\x88\x24\x6c\xd7\x8b\x7b\xcf\x3c\xef\x1c\x7d\x5c\x4f\xc2\x3e\x0b\xc1\x0c\x15\xf3\x39\x19\x7a\xe0\xcb\x84\x31\x5d\xa2\x75\x0a\xe3\xa6\x75\x75\xd5\x31\x73\xf9\x5b\x26\x12\x2f\x98\x63\x19\x37\x76\x8a\x9d\xd4\x0b\x1f\xba\x6d\xbd\x81\x5f\x12\xec\x39\x9d\x23\xd2\xe3\xec\x06\x41\x5e\xb1\x2e\x47\xca\xdd\xc8\x07\x95\xef\xc3\x3d\x8a\xe5\x6b\x28\x02\xae\x56\x50\x9d\xda\xa2\xff\xdb\x5d\xcb\x5c\x80\xf6\x70\x02\x57\x15\x09\x64\xef\xd6\x73\x4e\x76\xd9\x7d\x3c\xf5\x82\xcc\x1a\x60\x1e\x4f\xaf\x93\x6c\x86\xc3\x64\x6d\xe4\x8d\x3c\x19\x27\xdc\x2d\xe9\xc6\xe4\x99\x53\xb5\x89\x03\xb8\xe0\xa1\x5d\x48\xf7\x0a\x3f\x50\xc6\x0c\xf3\x98\xa4\xd2\x2e\x65\x9b\x51\xbd\xa4\xb3\x87\x5f\xc4\xd9\x92\xaa\x77\xaf\x90\x98\xe4\xcd\x27\x22\x99\x0e\x2b\x1e\xe6\x7c\x39\x86\x13\x06\xf3\xf4\x43\xed\x61\xde\x28\xbd\x07\x6e\xab\xd4\xd3\x9b\x48\x44\x22\x2c\x0b\xa5\x1a\x28\xdf\xb8\xde\x7a\x0b\xc3\x22\xa4\xb1\xbd\x70\x97\x85\xb7\x3c\x9c\x30\xb6\x3b\xa7\xbd\xde\x92\x1c\x32\x84\xa3\xef\xb0\x44\xc0\x90\x43\xd2\x4a\x21\x2d\xd8\x38\x66\xcc\x9d\x0d\x41\x38\x35\x2e\xf4\x8d\xc1\xc1\x6d\xab\x7a\xdf\xf3\x7c\x70\x5b\x5e\x45\x33\x09\x43\x3a\xf1\x0a\x2e\x93\x79\x5c\x54\x8f\x85\x2c\x3a\xf9\x98\xf5\x9a\x45\xd2\x18\x2e\xac\xae\x7e\x0d\x4c\x15\xaf\x81\xad\xe9\x89\xa6\xd0\xb4\x5e\xcc\x14\x57\x8d\x36\x8a\xb1\xbb\x51\xc4\x12\x26\x6d\x52\x11\x72\x60\xc4\x27\xad\x17\x64\x86\x87\xcb\x8a\xb2\xdb\xc8\xc1\xdd\x4b\xd6\xed\x41\x0d\x89\x3e\x3d\xf9\xcc\x61\xff\x4b\x0b\x47\x76\x42\xa2\x6f\x32\x56\xf4\xa6\xa6\xfc\xde\x2c\xa9\x07\x3b\xcc\xf9\x51\xbc\xeb\x85\x93\x95\x27\x96\x77\xc2\x9c\x3f\x68\x61\xce\xb7\xb2\xb4\xee\xc9\x0a\x7e\x80\x43\x97\x1f\x7a\x62\xcf\xe3\xc9\xe7\x9f\x49\x76\x42\x97\x8f\x7e\x22\xa1\xcb\x37\xbb\x78\xee\xc9\xfa\x7c\x10\x6f\x1f\x9f\x3c\xfc\xf4\xa1\x23\xbb\x3c\xbf\x60\x61\x0e\xe9\xcc\x20\x24\xa3\x4d\x5d\x25\x96\x7d\xb2\x36\xd0\x20\x6b\x2f\xbe\x6e\xc5\xfe\xbc\x67\xcb\xd7\x64\x73\x27\xc0\x9e\x21\x6e\x41\xaa\x6c\xff\xee\x9c\x2a\x60\x72\xe0\xc5\xde\x7c\x36\xc5\xfd\x77\x0b\x12\xd6\xf0\x77\x98\xc4\x25\xd5\x18\x2f\xa6\xc7\xce\x5e\x34\xad\x45\x58\xba\x8d\x39\xfc\xfd\x54\xd9\x19\x68\x77\x43\x12\x6a\x32\x2e\xac\xba\xfb\xbe\x5b\xf5\x5b\x1e\x8a\x3b\xa4\x6a\x65\x7e\x6f\x37\xd5\x4e\x6b\xaf\x77\xb3\xd5\xab\x53\x66\xeb\x2f\x91\x67\xf3\x73\xd2\x78\xf5\xf5\x6d\x33\xcb\xa7\xac\x70\x6e\xcd\xc2\xcd\xdd\x6e\xde\x8f\xa8\xba\xe1\x9a\x62\xb3\x7b\xef\x2f\xc0\xc9\x22\x19\xdd\x50\x21\x76\x5a\x81\xef\xad\xe4\xed\x8c\xdb\x48\xff\xb7\x7e\x93\x8d\x45\x0e\xe6\x91\x3b\x26\xda\x8e\xe7\xcd\x13\xb1\xd3\x6d\x4f\xa4\xe1\x2d\xef\x3d\xcd\xd7\x44\x6d\x67\x94\x9f\x63\x66\xae\x2e\xe0\x58\x7e\x3f\x5f\x04\xe7\x44\x91\xfc\x41\x7e\xe8\x56\x04\x71\x0e\x67\x70\x2d\xec\xf7\xad\xfe\x50\x83\x21\x87\x51\xde\x42\x80\x51\x11\x74\x7f\x0c\x97\x4a\x63\x63\xac\x1b\x0b\x38\x26\x03\x91\xf2\xbb\x56\xee\x1b\x67\x82\xd4\x88\x8a\x3c\xce\x61\x25\xfb\xda\xc0\x28\x36\xe1\x6d\x4d\x8b\x47\x31\x74\xed\xca\x3e\x77\x7f\x5a\xa9\x8f\x0c\x16\xd0\xd0\xb0\xf6\xb9\xfc\x55\x8a\xc0\xf6\xcb\x2c\xce\xe3\xc1\x78\x26\x05\x4d\xd7\xaa\xf9\x75\xb7\x31\x12\x9b\x81\x35\x83\xcd\xb4\x96\x40\x42\xcd\xaa\x85\xe3\xe3\xfd\xbe\x89\x2d\x14\xaa\x71\x6e\xc5\xeb\x9f\x3a\x44\x5d\x16\xf6\x93\x47\x63\x9c\xa8\x8e\xa8\x81\x17\xd3\xc6\x5c\x09\xe5\x80\xa3\xec\xd8\x6e\x8a\x72\x0a\x9a\x81\x55\x73\xeb\x01\x0d\xf7\x18\x9b\x0e\x3c\x9d\x18\xd9\x32\xf2\x8e\x8c\x3c\xc9\x18\x7d\x66\xa2\xca\xc3\x6e\x46\xf4\x7d\x05\x82\x9a\x23\x07\x36\xf6\x47\x7c\xd2\x49\x8e\x6b\x5f\x79\x59\xc4\xdd\xb0\xaf\x28\x80\xde\xf6\x7a\xe1\xfe\x0a\x54\xba\xca\xcf\x80\xda\x58\x15\x31\x8c\x20\x00\x79\x5f\x8c\x85\x63\x57\x50\x64\xeb\xc7\xc2\xdf\x6f\x87\xa5\x92\xb3\x3f\xda\xc7\xda\x4e\x0a\x86\xc4\x21\x43\xe2\xc0\x90\x24\x30\x24\x9e\x32\x24\x89\x34\x24\x28\xe8\xf5\xe4\x65\x98\x48\x17\xaf\xd9\x78\x79\x7c\x54\x3c\x31\x58\xbe\x34\x58\x69\xbf\x06\xd5\xc4\x7b\x9c\xf4\xe9\xd0\x3a\x6c\x0d\xa1\xb1\xaa\xd5\xeb\x0d\x18\x99\xdc\x7b\x2e\x6c\x2b\xac\x8a\x5d\x54\xc3\x65\x01\x43\xd9\xa8\x16\xf7\xc5\xab\x12\xe5\x8e\x13\x49\xb1\xf4\x4d\x09\x25\x1a\x22\x57\x3c\xbe\x89\x05\xa8\x2c\x6c\xfa\xd0\x0b\x99\xcf\x74\x8a\xc8\x96\x44\x91\x7d\xd4\x89\x3b\xe5\x45\xd7\x37\x19\xe0\x9c\x31\x59\x78\xdb\xf1\x00\x55\x2c\xe4\x4c\x54\x2d\x94\xd8\x64\xad\x44\x16\xf2\xec\x44\x54\x8f\x9a\x76\x02\x6f\x54\xee\x6b\x96\x4a\x1e\x4c\x67\x9b\xe5\x1d\xb7\x03\x6b\xc4\xb3\xdb\x72\xf6\x36\x64\xe7\x51\x46\x9b\x5b\x09\x2a\x0a\xf1\x9f\xed\x18\xe1\x72\x33\x48\xfc\x18\x6c\x90\x76\x48\x3e\xfa\x2d\x7c\xe6\x58\x9b\x25\xd1\x20\xa3\xac\xc5\x83\x31\x35\x12\xd0\x28\xcf\x6d\xd7\x6f\xb1\x0c\xcf\xbb\x71\xe7\x58\xbb\x1d\xe1\x38\xf3\xd0\x2f\x72\x81\xc0\x20\x27\xf7\x10\xf2\x67\xa6\xa5\xa0\xfd\xe9\xa3\xc7\xd3\x8d\x52\x49\xfe\x85\x22\xbb\x82\x12\x7b\xac\x8a\x3c\x3b\x47\xea\xc7\xc6\x92\xbe\x66\xbf\x35\x51\x3b\x9d\x9f\x96\xb4\x7d\x9a\xe9\xf6\x41\x1d\xbb\xb2\xaf\xb3\xbf\xb5\xaf\xc3\x49\x4a\xd7\x6e\xa6\xfb\x27\x05\xcd\x8e\x55\x6b\xd6\x3b\x0d\xfa\xf8\x78\x5a\x55\x57\x5e\xcc\x64\x57\x8c\x39\xbd\xde\xd8\x22\x7b\x7a\xdb\xec\x5a\xec\x95\x09\x53\x29\x90\xee\xb1\x76\xaf\xb7\x68\x21\xcf\xe4\xa1\x63\xd9\xab\x2e\xbe\xd9\x45\xa1\xf5\x19\xbb\x32\x63\x46\xfb\xdd\x99\xa0\xd7\x33\x03\xbb\x6b\xd5\x12\xbb\x8b\xa2\xf1\x71\xab\x16\x8d\x8f\xd3\x0d\x98\x96\xe3\x9b\x06\x25\xbd\x5e\xd0\xa7\xb3\xe2\xa5\xb7\x6a\x6d\x69\x50\x60\x3a\xd2\x65\x9b\x9b\x90\x29\xed\x84\x4c\x29\x13\x32\xd5\x10\xf4\xe8\xa0\x49\x16\x74\xda\xc1\x50\x1a\x5c\xcf\xae\xec\xf3\xf6\x27\xfb\x3c\x3e\xb8\x4d\x3b\x4c\x07\x37\x05\x4d\xcf\xaa\x85\x75\xaf\x21\x06\x50\x99\x2b\x89\xee\xd0\x51\x6d\x5a\x7c\x6b\xc8\x03\xdb\x94\x07\xd6\x47\x2e\x72\xac\x91\xf4\x6b\x3b\xc5\xea\x33\x95\x52\x29\x62\x31\xb0\x03\xba\x46\xe0\x31\x1d\xd7\x6c\x22\x9f\x0c\xbb\xf8\xdc\x14\x2f\x8a\x44\xfd\x94\x23\x91\x82\x3d\xda\xf9\x67\xb1\x71\x19\x3c\x18\xe9\xdb\xd8\x92\x15\x04\xb9\x36\x2e\x73\xd1\x02\x05\x76\xd8\xeb\xb9\x23\xf2\x43\x3a\x41\xaf\x37\x51\xb5\x6d\x9b\x70\x2a\x81\x08\x00\xed\x90\x5f\xa8\x2a\xde\xc3\xa1\xb3\xeb\xb4\x96\x1c\xbf\x09\x77\xc3\xc8\xd8\xc0\x0e\x75\x10\x2e\x13\xc6\xa3\xfb\x94\xeb\x34\x43\x37\x76\x9b\x91\x9d\xa4\x98\x33\xff\xda\xd0\xd6\xbe\xa6\x91\x98\xd8\x2a\xc7\xc1\xb3\xdd\x2e\x0e\x0f\x39\xf4\xf5\x0d\xd8\xfe\x66\x62\xc6\x99\x4f\x96\x34\x1e\xa7\x56\xba\xf8\x60\x07\x3b\xad\xcd\x56\x4f\x45\x88\x88\x50\x0d\x5d\x0b\x33\xd5\xda\x44\xb5\x3f\xc2\x0e\xee\x55\x63\xfd\xb5\x7f\x1a\x35\xe3\xa0\x81\x8c\xff\xef\xdf\xbf\x01\xe8\xea\xd7\x38\xf0\x75\x0e\x7c\x03\x80\xb5\xcb\xbf\x17\xd0\x5b\x02\xfa\xa3\x80\xde\xe6\x05\xbe\x09\xc0\x35\x5e\xd7\xb5\xb4\x8a\xf7\x04\xf4\x17\x01\xfd\x43\x40\x7f\x03\xe8\x16\x6f\xe9\xe6\xaf\x79\xa5\x2f\xf1\x94\xf3\x22\xf7\x9b\xfc\xdb\xcb\xfc\xdb\x65\x0e\x7c\x9f\x57\xc4\x51\xb8\x95\xa2\xf0\x6b\x01\xfd\x49\x40\x7c\x20\xd6\x2e\x0a\x9c\x79\x83\xb7\x78\xa5\xeb\x17\xfe\x0a\xd0\x9d\x37\x28\xa2\xb4\xed\x57\x08\x34\x4b\xda\xfc\xb7\x80\xde\xe4\xd0\x9d\x37\x68\xdf\x8e\x51\x90\xb6\xf1\x2c\x05\x2f\x12\xf0\x39\x0a\x5e\x4e\x41\x5a\xc1\x97\x48\x4b\xaf\xfd\xcb\xa8\x19\x4f\xd2\x89\x79\x13\xa0\xb5\x8b\xdf\x10\xd0\x4b\x02\x7a\x05\xa0\xdb\xdf\x04\xe0\x06\xcf\x75\xe3\xeb\x00\xac\xbf\x46\x5a\x3b\x44\x2b\xfb\x2d\x40\xd7\x5e\xe1\xc0\xb7\x39\xf0\x5d\x0e\x7c\x0f\x80\xab\xdf\x02\x60\xed\x22\xcf\x74\x83\x27\xdd\xba\x02\xc0\x9d\x37\x3e\x04\x68\xfd\xb5\x4b\x46\xcd\x78\x8a\x36\xf3\x16\x40\x6b\x17\xbf\x0b\xd0\xb5\x1f\x88\xa4\xef\x09\xe8\x87\x02\x7a\x4d\x40\x3c\xdf\x35\xfe\xf1\xc6\xab\x1c\xe0\x75\xdd\xf8\x0e\x00\x77\xce\xf1\x26\x6f\x5e\x20\xc0\x97\x09\xf4\x92\x80\xc8\x1c\x3d\xf5\x22\x81\x5e\xe6\xd0\xfa\x6b\x64\xb8\x67\x29\x92\xbf\x03\xe8\xea\xb7\x39\xf0\x1d\x0e\x7c\x17\x80\xb5\x2b\x5f\xe3\xd0\xe5\x0f\x45\xda\x4b\x02\xfa\x86\xf8\xfa\x6f\x80\xae\xbd\xc6\x93\x2e\xfe\x58\x40\x3f\xe5\x1f\x79\xd2\x35\x9e\x72\xf5\x55\x51\x03\x47\xec\xda\x2f\x00\xb8\xc5\xdb\xb9\xf5\x8a\xc8\x74\x51\x34\xcd\xd3\x6e\xbd\x2d\x9a\x79\x83\xd7\xf0\x33\x91\x94\x42\xbc\xd6\x1b\x3f\xe4\xc0\x0f\x00\x58\x7f\x8d\x4c\xe6\xd3\x74\x4c\x7e\x0f\xd0\xda\xc5\xf3\x00\xdd\xf8\x11\x00\x77\xce\xf1\x6c\xeb\xaf\x91\xde\x7e\x96\x16\xf8\x03\x40\x37\xff\x01\xc0\xb5\x37\x00\x58\xbb\xf8\x6b\x9e\x74\x9e\x03\x3c\xe5\xe6\xef\x79\xca\x9b\x3c\xe5\x2d\x00\x6e\x9c\x05\xe0\xce\x79\x9e\xfb\xce\xb9\x0f\x04\xf4\x21\x40\xeb\xaf\x91\xb4\xcf\x51\x1c\xde\x06\xe8\xda\x5b\x00\xac\x5d\x7c\x53\x40\xbf\x07\xe8\xd6\x79\x91\x94\x66\x7b\x5b\x40\x7f\xe4\x75\xf0\xfc\xeb\x17\xfe\x20\xa0\xf7\x01\xba\x73\xfe\xfb\x3c\xed\x35\x82\xc8\x61\xda\xfc\x3b\x00\x5d\xfd\x1e\x07\xbe\xcf\x81\x1f\x00\x70\xed\x6d\x0e\xfc\x91\x03\x7f\xe2\xc0\x7b\x3c\xf3\xff\x00\xb0\x76\xf1\x2f\x1c\xba\xf2\x6d\x80\x6e\xf2\x8f\xb7\x78\xca\xad\xef\x8a\x4c\x1c\xba\x26\xca\x5d\xe4\xb5\xdf\x78\x1d\x80\xf5\xd7\x3e\x32\x6a\xc6\xe7\x29\xc2\x7f\x04\xe8\xda\x3f\x00\xb8\xfd\x6d\x00\xd6\xcf\x92\xf5\xfe\x05\x9a\xeb\x5d\x80\xd6\x2e\xbe\x07\xd0\xcd\xb7\x45\xd2\xdf\x00\xba\xf6\x4f\x91\xf4\x0f\x80\x6e\xfc\x0c\x80\xf5\x0b\xef\x00\x74\xe7\xdc\xd7\x04\xf4\x0d\x01\xbd\xc4\xa1\xf3\x6f\xf2\x12\x67\x09\xcd\x3a\x42\x9b\xff\x13\x40\xd7\x3e\xe2\xc0\x25\x0e\x7c\x00\xc0\xda\xc5\x7f\x0a\xe8\x22\xff\x78\x45\x24\xfd\x5b\x40\x97\x01\xba\xce\xab\xbf\xc5\xab\x58\xbf\xf0\xa6\x80\x7e\x0d\xd0\x9d\x73\xdf\x16\xd0\x2b\x1c\x3a\xff\x35\x80\x6e\x12\x12\x78\x84\x0c\xd6\x4d\x9a\xed\xab\x14\x6f\xd2\xab\xa3\x14\xef\x3f\x03\xb4\x76\xf1\x43\x0e\x5d\xfa\x9a\x80\x78\xbe\xf5\x0b\x7f\x01\xe8\xc6\x1b\x3c\xe9\x2c\x21\xe1\xcf\xd0\x4a\xfe\x02\xd0\xcd\x8b\x00\x5c\xe7\xdf\xae\xfe\x08\x80\xb5\x4b\x2f\xf1\x6f\xdf\x12\x49\xaf\xf0\xa4\x97\x45\xd2\x77\x05\xf4\x6d\x80\x6e\xfd\x1a\x80\x1b\xe7\x00\xb8\x73\xfe\x87\x02\x7a\x8b\x37\x4d\x0b\xd2\x7e\x12\x1a\xf5\x0c\xeb\x27\x69\xf3\x18\x45\xf1\xaf\x00\x5d\x7d\x8d\x03\x67\x39\xf0\x63\x00\xd6\xae\xbc\x26\xa0\x1f\x0a\xe8\xa7\x02\xe2\xf9\xae\xfe\x84\x27\x5d\xfa\x1e\x40\xb7\xfe\x24\x92\x7e\x00\xd0\xf5\xef\x89\x24\x51\xd9\x25\xde\xc0\x75\x9e\xeb\xd6\x5f\x38\xf0\x1e\xaf\x9d\x37\x78\xeb\x8f\xa2\x65\x51\x27\xaf\xe9\xe6\x8f\x78\x26\x81\x01\xcf\x73\xe3\xd7\xa2\xd8\x1b\x02\xfa\x85\x80\xd2\xaf\xe7\x05\xf4\xa6\x80\x04\xce\x57\x7e\xc6\x5b\xe2\x58\xdc\xe4\x5d\xbc\x2a\x3e\x7d\xc8\x9b\x7c\x85\x03\xbf\x02\xe0\xce\xb9\xef\x0a\x88\xd7\x79\x83\x36\x73\x98\xa6\x51\x64\x29\xda\x34\xf1\x59\x3a\x59\x64\x11\x1c\xa7\x93\xf5\x1e\x40\x6b\x97\x7e\x2c\xa0\x9f\x02\x74\xe3\x2d\x00\xd6\x2f\xfc\x16\xa0\x3b\xe7\x7e\x28\xa0\xd7\x04\xc4\x8b\xae\x9f\x25\xe8\xfd\x17\xad\xf8\x02\x40\x77\xce\xfd\x54\x40\x3f\x03\xe8\xf6\x77\x01\x58\x3f\x4b\x56\xe8\x09\x5a\xe0\x6f\x00\x5d\xff\x31\x00\x6b\x97\x7e\xc6\x93\x38\x70\xeb\x87\x1c\x78\x4d\x64\xfa\x85\x80\xde\xe0\xd9\x7f\x2a\x92\xce\x03\x74\xfb\x7b\x00\xac\x5f\x78\x0b\xa0\x3b\xe7\x78\xc9\x3b\xe7\x7f\x2f\xa0\x6f\xf0\x7c\x67\xc9\xa6\x38\x49\x31\xfb\x3b\x40\x6b\x97\xcf\x03\x74\xfd\x17\x3c\xe9\xd2\x5b\x3c\xe9\x0d\x91\xf4\x6b\x9e\xf4\x6b\x91\xf4\x7b\x01\xbd\x29\xa0\xb7\x01\xba\xf5\x33\x9e\x9f\x57\xbf\x7e\xe1\x43\x80\xee\x9c\x7f\x5b\x40\x2f\xf1\xaf\x67\x09\x37\x72\x8a\xa2\xf6\x0f\x80\xd6\x2e\xfd\x11\xa0\xeb\x6f\x89\xa4\x3f\x01\x74\xeb\x17\xfc\xdb\x9b\xe2\xdb\x7b\x02\xfa\x0b\xff\xf8\x7b\x00\x6e\xf0\x72\x37\xf8\xa7\x5b\x1f\x02\x70\xe7\xfc\x2b\x1c\x7a\x83\x20\x76\xea\xcb\x14\x1f\x32\x9d\xcf\x52\x7c\xde\x07\xe8\xea\xcf\x39\xf0\x0b\x0e\xfc\x12\x80\xeb\x6f\x03\xb0\x76\xe9\x22\x4f\xfa\xa3\x48\xba\xcc\x93\xfe\xc4\xcb\xbd\x01\xc0\x4d\x5e\xc1\xcd\xd7\x39\xf0\x13\x0e\xf0\xd6\xd6\xae\xfc\x9e\x97\xff\x0b\x07\xde\xe3\x99\xce\x02\x70\xeb\xc7\x1c\xf8\x29\x00\x37\xfe\x2a\xca\x0b\x4c\xae\x08\x34\xaf\xfc\x45\x40\x7f\x12\xd0\x7b\x02\x7a\x4b\xe0\xfe\x37\xde\xe4\xdf\x44\xd2\x3f\x05\xf4\x0f\x80\x6e\xbf\x04\xc0\xfa\x59\x42\x3d\x9f\xa3\xc3\xf6\x4f\x80\xd6\x2e\xfd\x5b\x40\x1f\x02\x74\xe3\x6f\x00\xdc\x39\x77\x1e\xa0\xdb\x2f\x8b\x24\xb2\xc4\x9e\xa3\x82\xc1\x59\xb2\xc4\x9f\xa7\xd5\xfd\x0b\xa0\xb5\xcb\x5f\x13\xd0\x37\x00\xba\xfe\x0f\x91\xf4\x8a\x80\x5e\x12\xd0\xb7\x01\x5a\xbf\xf0\x37\x0e\x9d\x25\x4c\xcb\x17\x69\xc5\x17\x01\x5a\xbb\xfc\x5d\x01\x7d\x0f\xa0\xf5\xb3\x84\xd4\x7c\x89\xe6\xbb\x04\xd0\xda\x95\xbf\x01\x74\xf5\x1c\x00\xd7\xff\x29\xbe\x5d\x04\xe8\x16\xcf\xb4\x76\x99\x57\x71\xfd\xa2\xc8\x95\xe6\xff\x07\x40\x37\xfe\x0e\xc0\xed\x1f\x88\x6f\x1f\x02\xb4\x7e\x96\xf0\x43\x5f\xa6\x58\x5c\x06\xe8\xfa\x25\x00\xd6\x2e\xff\x90\x27\x5d\xe1\xc0\x07\xe2\xdb\x6b\x02\xfa\x31\x40\x37\xde\x07\xe0\xd6\x5b\x00\xac\x5f\xf8\x48\x40\xef\x02\x74\xe7\xdc\x9b\x3c\xed\x2c\xa9\xdf\x21\x8d\x7f\xf0\x75\x80\xd6\x2e\xff\x02\xa0\xab\xbf\xe6\xc0\x6f\x38\xf0\xa6\xc8\xf4\x07\x01\xfd\x4e\x40\xef\x0a\xe8\x1d\x5e\xe0\xb7\x00\x5c\xe3\xd5\x5f\xfb\xa6\xc8\x74\x41\x40\x7f\x15\xd0\xfb\x02\xfa\x3b\x40\xb7\x78\x4b\x37\x05\x16\x6f\xf1\x94\x5f\x89\xdc\xbc\x9d\xab\x1c\x9b\x9b\x57\x38\xf0\x03\x5e\x11\x47\xe1\x56\x8a\xc2\x6f\x04\xf4\x67\x01\xfd\x8b\x43\x17\x05\xce\x2f\x03\xb0\x7e\x81\x57\x7f\x9b\x0f\xdc\x9d\x37\x28\xa2\xb4\x6d\xb2\x97\x1d\x4c\xda\xfc\x40\x40\xbf\xe5\xd0\x9d\x37\x68\xdf\x02\x0a\xd2\x36\x12\x0a\x92\xb9\x76\x96\x28\x78\x25\x05\x69\x05\x2b\x74\x8a\xc8\x79\x3e\x4f\xa7\xe8\x1b\x00\xad\x5d\xfc\xa6\x80\x5e\x16\xd0\xb7\x00\xba\xf1\x35\x0e\xf0\x5c\xb7\xcf\x02\xb0\x7e\x96\xac\x99\x26\xad\xec\x9b\x00\x5d\xfb\x16\x07\xbe\xc3\x81\x57\x39\xf0\x7d\x00\xae\xfe\x01\x80\xb5\x8b\x3c\xd3\x8d\x6f\x03\x70\xeb\xdf\x00\xdc\x79\xe3\x23\x80\xd6\x5f\x79\x89\x43\x67\x49\xd3\x2d\xda\xe0\x4b\x00\xad\x5d\x7c\x15\xa0\x6b\xff\x23\x92\xbe\x2f\xa0\x1f\x09\xe8\xac\x80\x78\xbe\x6b\xfc\xe3\x8d\xef\x01\x70\xfb\xa7\x1c\x78\x1d\x80\x3b\xe7\x2e\x03\x74\x93\xcc\x4c\x8b\x4a\xcd\xaf\x70\x68\xfd\x2c\xd9\x2b\x98\x22\xf4\x32\x40\x57\xdf\xe6\xc0\x3b\x1c\xf8\x23\x00\x6b\x57\xbe\xce\xa1\xcb\x1f\x89\xb4\x97\x05\xf4\x4d\xf1\xf5\x03\x80\xae\x9d\xe5\x49\x17\x7f\x22\xa0\xd7\xf9\x47\x9e\x74\x8d\xa7\x5c\x7d\x57\xd4\x70\x85\x7f\xfb\x25\x00\xb7\x78\x3b\xb7\xbe\x25\x32\x5d\x12\x4d\xf3\xb4\x5b\xef\x88\x66\xce\xf1\x1a\x7e\x2e\x92\x52\x88\xd7\x7a\x9b\x17\xbc\xcd\x53\x6e\xf2\x72\xeb\x67\x09\x7e\x6d\x3a\x38\xaf\x00\xb4\x76\xf1\x57\x00\xdd\x78\x0d\x80\x3b\xe7\xfe\x0d\xd0\xfa\x59\x32\xfc\x0b\xb4\xc0\xb7\x00\xba\xf9\x3e\x00\xd7\xce\x01\xb0\x76\xf1\x37\x3c\xe9\x57\x1c\xe0\x29\x37\xff\xc0\x53\x7e\xcb\x53\x7e\x07\xc0\xed\x5f\x03\x70\xe7\x3c\xcf\xbd\xf6\xfe\x25\x9e\x76\xee\x23\x80\xd6\xcf\x92\xb1\xec\x50\x1c\xbe\x0d\xd0\xb5\xdf\x01\xb0\x76\xf1\xb7\x02\xfa\x03\x40\xb7\x7e\x25\x92\xd2\x6c\xef\x08\xe8\x5d\x0e\x5d\xfe\x29\xaf\x8d\x97\x5c\xbf\xf0\xb6\x80\xfe\x09\xd0\x6d\x5e\xc7\x0d\x32\x76\x9d\x25\x8a\x11\x61\x90\x5c\x8a\xd1\x77\x00\xba\xfa\x27\x0e\xfc\x99\x03\x7f\x01\xe0\xda\x3b\x1c\x78\x97\x03\x22\xcf\x5f\x01\x58\xbb\x28\xa0\x2b\xbc\xca\x9b\x3f\x04\xe0\x16\x4f\xb9\xf5\xaa\xc8\xc4\xa1\x6b\x69\x0d\xbc\xd2\xdb\x6f\xf3\x6f\x17\x00\x58\x3f\x4b\x96\xc9\x57\x29\xc2\xdf\x05\xe8\xda\xfb\x00\xdc\x7c\x0f\x80\xdb\xdf\x01\x60\xfd\x2c\x39\x21\x4e\xd3\xec\xaf\x02\xb4\x76\xf1\x02\x40\x37\xdf\x11\x49\x7f\x07\xe8\xda\xbf\x44\xd2\xfb\x00\xdd\xf8\x39\x00\xeb\x17\xfe\x08\xd0\x9d\x73\x5f\x17\xd0\x37\x05\xf4\x32\x87\xce\xff\x96\x97\x38\x4b\x16\xae\x47\x9b\xff\x1e\x40\xd7\xbf\x06\xc0\xb5\xcb\x1c\xf8\x10\x80\xb5\x8b\xff\x12\xd0\x25\xfe\xf1\xdf\x22\xe9\x03\x01\x5d\xe1\x75\x7d\xc4\x81\x6f\x00\x70\xe3\x17\x00\xdc\x7e\x17\x80\xf5\x0b\xbf\x01\xe8\xce\xb9\xef\x70\xe8\xfc\xd7\x45\xda\xb7\x00\xba\x49\x3f\xb2\x41\x23\x7c\xe1\x22\xc5\xfa\xfb\x00\xad\x5d\xfc\x88\x43\x97\xbe\x2e\xa0\x6f\x02\x74\xfb\x02\x07\xfe\x0a\xc0\xfa\x59\xb2\xa5\x7c\x5a\xc7\x0f\x00\xba\x79\x09\x80\xeb\x2f\x01\x70\xf5\x02\x00\x6b\x97\x5e\xe6\xdf\xbe\x2d\x92\xbe\xc5\x93\x5e\x11\x49\xaf\x0a\xe8\x3b\x00\xdd\x38\x0f\xc0\xed\xbf\xf1\xec\xfc\xd3\x9d\xf3\x3f\x12\xd0\xef\x38\x0e\x64\x1a\x7c\xd6\x4b\x52\x32\xa0\x18\xfe\x0f\x40\x57\xff\xc6\x81\xbf\x73\xe0\x1f\x00\xac\x5d\x39\x2b\xa0\x1f\x09\xe8\x75\x01\xfd\x84\x17\x78\x9f\x27\x5d\xfa\x3e\x40\xb7\xfe\x2c\x92\x78\x43\xd7\xbf\x2f\x92\x44\x65\x97\x78\x03\xd7\x79\xae\x5b\x7f\xe5\xc0\x05\x5e\xfb\x3f\x79\xca\xbb\xa2\x65\x51\x27\xaf\xe9\xe6\x6b\x3c\x93\xc0\x80\xe7\xb9\xf1\x1b\x51\xec\x9c\x80\x7e\x29\xa0\xf4\xeb\xaf\x04\xf4\x5b\x01\x09\x9c\xaf\xfc\x9c\xb7\xc4\xb1\xb8\xc9\xbb\x78\xf5\x22\x4f\xf9\x08\x80\xdb\x3f\x06\xe0\xce\xb9\x57\x05\xc4\xab\xba\xcd\x47\xeb\x06\x6d\x86\x52\x06\x0a\x51\x86\xe3\x1c\x45\x3b\xa0\x93\x45\x10\xea\xd2\xc9\xfa\x21\x40\x6b\x97\x7e\x22\xa0\xd7\x01\xba\xf1\x3b\x9e\xf4\xfe\x07\x00\xdd\x39\xf7\x23\x01\x9d\x15\x10\x2f\xba\x7e\x96\x90\xee\x17\x68\xc5\x3f\x02\xe8\xf6\xab\x00\xdc\x39\xf7\xba\x80\x7e\x0e\xd0\xfa\x59\x32\x48\x21\x2d\xf0\x1a\x40\xd7\x7f\x02\xc0\xda\xa5\x9f\xf3\x24\x0e\xdc\xfa\x11\x07\xce\x8a\x4c\xbf\x14\xd0\x39\x9e\xfd\x75\x91\xf4\x2b\x80\x6e\x7f\x9f\x03\x1f\x00\x70\xe7\x1c\x2f\x78\xe7\xfc\x1f\x04\xf4\x4d\x80\xd6\xcf\x12\x8e\x37\xa2\x88\x9d\x05\xe8\xea\xaf\x00\xb8\xfe\x4b\x00\xd6\x2e\xfd\x8e\x27\x9d\x13\x49\xbf\xe1\x49\xbf\x11\x49\x7f\x10\xd0\x6f\x05\xf4\x0e\x40\xb7\x7e\xce\xf3\xf3\xea\x6f\x7d\x04\xc0\x9d\xf3\xef\x08\xe8\x65\x5e\xf0\x32\x6f\x7c\xfd\x2c\xa9\x2c\xa6\x28\xfe\x18\xa0\xb5\x4b\xef\x72\xe8\xf2\xeb\x00\x5d\xff\x9d\xf8\xf8\x67\x80\x6e\xfd\x92\x7f\xfb\xad\xf8\x76\x41\x40\x7f\xe5\x1f\xff\x00\xc0\x0d\x5e\xee\x7f\xbf\x0d\xc0\xfa\x85\xdf\x03\x74\xe7\xfc\xb7\x38\xf4\x06\xc1\x36\x66\xcc\x16\xe1\xd4\x13\x8a\xda\x4f\x00\xba\x7a\x89\x03\x97\x39\x70\x05\x80\xeb\xef\x00\xb0\x76\x89\x67\xba\xfe\xae\x48\x12\xb9\xfe\xcc\xcb\xfd\x1b\x80\x9b\x6f\x70\xe0\x67\x1c\xf8\x29\x07\x7e\xc1\xcb\x5f\xf9\x03\x2f\xff\x57\x0e\x5c\xe0\x99\x7e\x0c\xc0\x2d\x8e\xe4\xad\xd7\x01\xb8\xf1\x9e\x28\x2f\x30\xb9\x22\xd0\xbc\xf2\x57\x01\xfd\x59\x40\x17\x04\xf4\x3b\x81\xfb\xdf\x79\x93\x7f\x17\x49\xff\x12\xd0\xfb\x00\xfd\xef\x77\x00\x58\x3f\x4b\x4a\x2e\xd1\x61\xfb\x29\x40\x6b\x97\x3e\x10\xd0\x47\x00\xfd\xef\xab\x00\xdc\x39\xf7\x2b\x9e\xf4\x3d\x91\x44\x96\xdd\x12\x93\x20\xc8\x24\x2d\xd3\xea\x5e\x07\x68\xed\xf2\xd7\x05\xf4\x4d\x80\xae\xbf\x2f\x92\xbe\x25\xa0\x97\x05\xf4\x33\x01\x7d\x07\xa0\xf5\x0b\x7f\xe7\xd0\x59\x32\xba\x67\x68\x13\x3f\x03\x68\xed\xf2\xab\x02\xfa\x3e\x40\xeb\x67\x09\xef\xb1\x42\xf3\xfd\x1c\xa0\xb5\x2b\x7f\x07\xe8\xea\x07\x00\x5c\xff\x97\xf8\x76\x09\xa0\x5b\x3c\xd3\xda\xe5\xff\xe1\xd9\x3f\x12\xb9\x44\xfe\xcb\x69\xad\xef\x03\x74\xe3\x1f\x00\xdc\xfe\x1f\xf1\x8d\x97\x5c\x3f\x4b\xe6\xf2\x45\x8a\xcf\x2f\x00\xba\x7e\x19\x80\xb5\xcb\x3f\xe2\x49\xff\xe6\xc0\x87\xe2\xdb\x59\x01\xfd\x04\xa0\x1b\xff\x04\xe0\xd6\xef\x00\xb8\xfd\x35\x00\xd6\x2f\xfc\x09\xa0\x3b\xe7\x7e\x0b\xd0\xc7\xe4\x00\xfe\xf8\x47\x04\x22\xdb\xe9\xe3\x9f\x10\x88\x0c\xed\xc7\xaf\x13\x88\xf0\x61\x1f\xff\x9c\x40\x7f\x14\x10\x99\xdc\x8f\x7f\x45\x20\x72\xfa\x7f\xfc\x3b\x02\xbd\x2b\x20\xd2\xbd\x8f\xdf\x21\x10\x69\xec\xe3\x0b\x04\x22\xcb\xf2\xe3\xf7\x09\x44\xb8\xcd\x8f\xff\x45\x20\xb2\x68\x3f\xbe\x64\x20\xe3\xff\xbe\xcb\xa1\x8f\x7f\x28\xd2\x68\x1b\x1f\x11\x88\x4c\xda\xff\xbd\x4c\xa0\x57\x39\xf4\xf1\x7b\x22\x8d\x60\xfa\x7f\xdf\x21\x10\xe1\x92\xfe\xef\x9b\x46\x3f\xf5\x65\x4c\x52\x5f\x46\xc3\x28\xb3\x78\x37\x26\xb6\xca\x21\xa6\x1e\xb8\xe6\xae\xfa\x7f\x7f\x25\xa9\x54\x2a\x95\x09\xf2\xe7\xf1\xd9\xc6\xae\x05\xd5\x45\x92\xbb\x55\xd4\x71\xa3\xd7\xc3\x7d\x4b\xe7\x7f\x19\xe2\xf6\xc4\x62\xd0\x72\xdb\x2e\x0e\x77\x71\x20\xda\x15\xe2\xf6\xce\xe3\xee\x3b\x8f\xbb\xef\x3c\xee\xfe\x88\x3e\xee\x0e\xab\xd0\xb7\x0d\x9e\x9e\xdd\x86\xa5\x12\xdc\xf5\xc9\x7e\x10\x9d\x99\xd1\xd0\x22\xbe\x0c\xfb\x35\xcd\x47\x5c\x2a\x0d\x68\x4e\x59\x56\xb6\x6d\x8b\xf4\x31\x0e\xa7\x0b\x78\x86\xe3\x56\x13\x0d\x5a\x59\x37\x62\x41\x5b\x83\x74\x39\x9b\x64\x7b\x93\x21\x1e\xb3\x6d\x5c\x2a\x8d\x65\xa9\x96\xe2\x11\x2b\x2a\xc8\x6d\x32\xc5\x83\x75\xe0\x4b\xf9\x50\x43\xbe\xd7\xfe\xcc\x6a\x73\xbe\xe6\xf7\x6b\xab\xb1\x13\x2e\xe0\xb8\xe6\xa3\x6e\x18\x30\xaf\x5b\xb7\xbf\x15\x1f\x54\xcd\xf5\x2e\xee\x5d\x38\x17\xe1\xf8\x28\xd0\xfe\xa3\x8e\xef\x2c\xe0\xd0\x34\x73\x0e\xa0\xab\x73\x61\xe2\x1f\x72\x9a\x1d\x5c\x23\x8b\xea\x24\x8e\x51\xd3\xe9\x3a\xf3\xae\xe7\xc6\x2e\x8e\x6a\x50\xd7\xa2\x5a\xd1\x21\x29\xcb\xcc\xc6\x59\x4c\x63\xaa\x5c\x9d\x32\x2c\xf0\x41\x46\xcd\x10\x3b\x31\xe6\xc8\xe5\x2f\x20\xac\xc2\xa3\x7a\x3c\xbf\x18\x24\x5e\x7e\x9e\x43\x30\x8e\xdc\xb7\x19\xd1\xdd\xeb\x79\xf9\xaa\x31\x8a\x53\x17\x73\x87\x10\x7b\x78\xba\xc3\xf1\x2c\x14\xd9\x7e\x99\xb7\x81\x12\xdb\x2f\xb3\x6a\x91\x67\xfb\xe5\xe6\xbc\xe2\xb1\x8d\xcb\xcd\x79\xdb\x43\xb4\xc1\xb8\xe3\x46\x65\x32\x7e\x87\x7d\x1a\xa6\xf9\x4c\x6c\x7a\x84\xfe\x06\x66\x64\x95\x4a\xae\x99\xd0\x4d\x4c\x33\x45\x38\x4e\x33\x25\x28\x42\x31\x99\x3d\xde\xa6\x1d\x21\x0c\x6d\xda\x09\xf9\x00\xfd\xb7\xe3\x3e\x62\x51\xf2\xb4\x1d\xe2\x8b\xd0\x31\x63\xa5\x3b\xbe\x1d\xa6\xdd\x89\xec\x90\x77\x27\xb1\x43\xe8\x4e\xa2\x74\x27\x29\xec\x4e\x92\xe2\x42\xba\xe5\xd3\x6e\x91\xce\x99\x81\x99\xa2\x4f\x53\x79\x07\xac\x52\x29\xf5\x1d\x8d\x90\x6f\x8d\xd9\x92\x8b\x2b\xcf\x85\x94\xd2\x9a\x31\xd2\x64\xa4\xf7\xa3\x2c\xa4\xc9\x1c\x21\x5f\x42\x54\x1e\x58\x3f\x1d\xd8\xc8\xea\x23\xa5\x58\xc1\xe2\x60\xc8\x86\x89\xcf\x38\x04\xd2\x1c\x32\x48\xc1\xe7\xc8\xc6\x8b\x0c\xc4\x72\x8f\x88\xe1\xa2\xbb\xa7\xec\xb4\x5a\xa6\x4f\x9a\x90\x07\x50\x3b\x5d\xfa\x06\x48\x45\xf3\xb4\x72\x6d\xd5\x21\x54\x7d\x68\x3e\x53\x27\x36\x63\xe8\x18\xc3\x2f\xd7\x2b\x5c\x76\xa3\xa7\x58\x48\x32\xdc\xea\xf5\xa4\x9f\xae\xbf\xd0\xeb\x31\x6c\x22\x7a\x5d\x86\xe4\xef\x23\x88\x5f\xa6\x59\x72\xa9\xa7\x2e\x4c\x4e\x68\xcb\xd3\x43\x98\x84\xf9\x2c\xf2\xed\x20\x9c\x75\x9a\x1d\x53\xc7\xc4\xa6\x23\xd1\x24\x47\x2e\x61\x4a\x08\x33\xeb\xf7\x7a\x81\x19\xd2\x55\x15\xeb\x57\x47\x8c\x42\xb6\x1a\xfa\xfd\xbe\x95\xb2\xb1\xa3\xd8\xb4\x56\xcd\x3c\xf7\x64\xa6\xc7\x7a\xd0\x1e\x8d\x2d\x4b\xcb\x25\x1c\x72\x7c\x3f\x88\x47\x09\x77\x34\xea\x8c\x36\x3d\x27\x8a\x46\x9d\x68\xd4\x11\x5c\xaf\x61\xf5\x2d\x36\x5d\x14\x4f\xe9\x42\x58\xa4\xe3\xc1\xfd\x16\x0e\x27\x3a\xd8\xeb\x12\xde\x9b\xff\x95\x43\x8d\x6c\xfd\x1a\x94\x19\x7f\x5a\xcf\xf0\xf0\x5e\xcc\x9a\x72\xa9\x2a\x4e\x5d\xf8\x43\xbb\x42\xb8\x27\x60\xb2\x28\x13\x05\x44\x20\x26\x6c\x94\x5f\xc6\x7e\xb2\xc8\x98\x3e\x5b\xfe\xd1\xeb\x8d\x55\x91\x4f\xba\xdd\x76\x17\x12\xf6\x7d\xac\x82\x0c\x7a\x34\x1b\xae\x3f\xea\x13\x9e\xb9\xbc\x1c\xba\x31\x7c\xb3\x50\xd1\xe1\xee\x97\x4f\xe3\x15\xe4\x5b\x7d\xf5\x3a\x94\x90\xb9\x4c\x97\x73\xf2\x11\x8e\x8f\xf3\x71\x3c\xd6\xce\x4a\x09\x82\xa0\xcf\xcd\xd1\xd1\x9e\x9b\xb3\x63\x44\x47\x97\x30\xca\x2a\x8b\xc3\x76\xb1\x74\xec\x16\xc8\x66\x27\x70\xdb\xc3\xcd\xb8\xd7\x1b\x03\x28\x9d\x69\x38\x40\xc6\xaa\xe4\x38\xc9\x7d\x2d\x47\x1d\x67\x51\xc9\xa2\x59\x3f\xc7\xc3\xe0\xcc\x0a\xcf\xc4\xa4\x37\xe8\xc4\x53\x4e\x8c\x0b\x05\x97\x5c\x63\x26\xc9\x8e\xea\xf2\x1e\xb2\x56\xfb\x96\x65\xa1\xb1\x0a\x08\x6b\xe9\xfd\xc1\x6a\xbf\x6f\x5a\xd9\x1b\x2f\x26\x90\x66\xe4\xdb\x09\xc8\x2a\x40\xad\x5d\x3b\xa1\x3b\xde\x92\xd7\xf8\x48\x68\xe7\x91\xf0\x91\xb8\xe3\x81\x5c\xb8\x17\x11\xda\x7e\xd9\xe9\x76\xbd\x15\x46\x35\x44\x06\x81\x80\xc3\x3e\x84\xf2\xec\x3b\xec\x32\x1c\xe0\x1b\xf6\x7a\x9c\x97\x25\x42\x28\x25\x8b\xe9\x58\x8e\xf1\xb1\x0c\x67\x22\x13\x5b\x35\xe9\x9a\x55\x04\x32\xba\xb8\x24\x81\xa5\xfd\x73\x02\xb7\x71\x88\xfd\x26\xdf\x44\x04\x8b\xd1\x8e\x13\xf9\x8f\xc5\xa3\xf3\x18\xfb\xa3\xf0\xc0\x9a\x1b\xe1\xd6\xe8\xc4\x68\x94\x74\x71\x68\x5a\x4a\x0e\x32\x17\xf4\xe6\x8e\x90\xf9\x75\x3a\x0e\x33\xd1\xaf\xde\x19\x48\x5d\x50\x52\xb5\xb4\x27\x5d\xd0\xbd\x9e\xb6\x14\x3d\x35\x14\x22\xe2\xf1\xb3\x8f\x13\xb7\x51\xd7\x1f\xc5\x33\x45\x5b\x30\xe6\x4c\x75\x88\xd2\x3d\x5e\x1b\xab\x20\x79\x83\x93\xdf\x7c\x43\x53\xee\xbb\x86\xeb\x71\xc3\x0e\x11\xde\x26\xbe\xbd\x29\x6f\xc8\xfc\x21\xa6\x99\xf4\x58\x88\x35\xb1\x9e\x36\x9e\x24\xf3\x36\x8a\xcf\x74\x43\x1c\x45\x64\x60\xa8\x98\x8a\xdd\xb8\x83\x43\x22\xd1\x92\xd2\xa3\x41\xa8\x10\xcb\x11\x69\xe7\xf1\xb9\x63\xfc\xba\x19\x97\x4a\x92\x3e\x01\xad\x4a\x5b\xa2\x06\xdd\xc3\xf2\x18\x65\xc7\x8f\x9c\xd5\x31\xe5\x15\x09\x49\xb2\xcc\x26\x82\x40\x14\xf4\x6c\x64\x7a\x0b\x32\x1b\x0e\x4a\xec\xc0\x6c\x5a\xe9\xd1\xd7\x84\x1d\x8a\x47\x42\xb6\x63\x9a\xa9\x44\x1c\xe7\xee\x61\x65\x04\x64\xc4\xae\xf0\xc6\xf4\xba\xae\x5f\x77\x1b\xd2\xdd\x2c\x57\x08\xcb\x9e\x19\x99\xd8\x4e\x28\x8d\x81\x4d\x9b\xa0\x3a\x69\xac\xc1\xd5\x74\x3e\xa1\x29\x46\xcb\x6d\x9d\x48\x7c\x83\xde\x19\xc3\x5c\x75\x83\xed\x26\x32\x63\xbb\xbe\x7a\x1a\xaf\xd4\x0c\xb8\x5f\x6d\x20\x36\x28\x3a\x26\x10\xd7\x2b\x0d\xc6\x2a\xb1\xfa\x7a\x3d\x53\xfa\x45\x4e\x93\xd0\xc4\xa0\xa1\xa9\x5a\x28\xb6\xac\x7e\xbf\x41\xe4\x58\x53\x9a\x1f\x22\x45\x38\x34\x0d\x39\x16\x6a\x12\xca\x96\x2e\xad\xe6\xa6\x78\x12\x1e\x8c\x7b\x87\x27\xd9\xe1\x49\x76\x78\x92\x1d\x9e\x64\x87\x27\xd9\xe1\x49\x76\x78\x92\x47\x9b\x27\x99\xc9\xb0\x20\x35\x95\x43\xd9\x0a\x43\x32\x32\x14\x43\xa2\x86\xd1\xdf\x61\x49\x76\x58\x92\x42\x96\x24\xa5\xa8\xa6\x6b\x4b\xfc\xc2\x58\x86\x5f\x28\x95\xf8\xf1\xb8\x80\xe3\x19\x09\x2e\xd0\x02\xab\xfb\x83\x8c\xc4\xbe\xb1\x9c\x45\x55\x8d\x84\x02\x76\x55\x14\xa7\xe6\x26\x13\xdb\x9e\x89\x2d\x6b\x9f\xb5\x4f\x32\x8d\xa3\x98\x1e\xe7\x3e\x3f\xce\xd3\x13\x44\xaa\x8d\xbd\x5b\xdf\x8d\x83\xd0\xf4\x49\x01\x28\xef\x52\xfc\xe9\xff\xac\xbd\xd0\xaa\xb9\xcc\x64\xdd\x67\x8c\x15\x0a\x7b\xbd\x8c\x51\x4b\xe2\xdc\x82\x6d\xe5\xdc\x9c\x1d\xce\x6d\x20\xe7\xe6\x65\x39\x37\xef\x5e\x72\x6e\x91\x86\x73\x8b\xb6\xc6\xb9\x25\x19\xce\x2d\xf9\xe4\x38\x37\x4f\xa2\xe7\xde\x27\xc1\xb9\x35\x1f\x46\xce\xad\xfd\xa8\x70\x6e\x01\xe7\xdc\x5a\x05\x9c\x5b\x84\xda\xb6\x63\xb6\x24\xce\xad\x95\xe5\xdc\x5a\xdb\xce\xb9\x35\xcd\xc4\xc4\x76\x5b\xe6\xdc\xda\x5a\xce\xad\xed\x1b\xcc\xfa\x5a\xb1\x10\x2d\x64\x21\x23\xb5\xe5\xe6\xbf\xf9\xce\x22\x6e\xa5\xc9\x12\xb3\xd7\xda\x2a\xb3\xd7\xf6\xed\x90\x59\x55\xd3\x86\x6d\x99\xf1\x23\x9f\x68\xbb\x76\xdc\xef\x23\xd6\x02\x61\xd1\x9e\xe2\x1c\x5a\xa6\x15\x6b\x15\xea\x05\xdb\x5d\x5a\x2d\x24\xd0\xca\x4a\x25\xb3\x82\x20\x23\x33\xab\x49\x19\xa5\x46\x2d\xe4\x9a\x9e\xd9\x4a\x97\x8a\x85\xd4\xd6\x81\xa2\x12\x6a\x4e\xc1\x02\xbe\x34\x62\x7c\x69\x64\xa1\x96\xca\x97\xb6\x37\x54\x94\x91\x2a\x22\x43\x73\x28\xe4\x8a\xd1\xc7\xfe\x27\x58\xe8\xc9\x5d\xfc\x79\x06\xc1\xbf\x22\x03\x72\xa8\x9c\x2c\x99\x94\x7b\x11\xf3\x11\xbc\x03\xb2\x51\xaa\xaa\xda\x28\x55\xd5\xc6\x8c\xfc\xa3\x26\xa2\xa7\xd2\xf3\x8b\xd7\x4f\x58\x9e\xd4\xd1\x8f\x4c\x20\xff\x42\x68\x66\x3d\x6c\x68\xbd\x11\xa3\xc0\x5b\xc2\xe1\xae\x36\x76\xe2\x24\x1c\x72\x24\xa1\x8c\x66\x0c\x33\x39\x38\x10\xed\xa2\x5c\xad\xdb\xdc\xee\xc1\x2d\x2c\x20\xa2\x05\xaf\xaa\x84\x5e\x1f\x54\x53\x8c\x54\xbf\x6f\x0d\xe8\x30\x07\x1e\xc5\x3e\x8b\xee\xec\x6a\x06\x7e\xec\xb8\x3e\x0e\x27\x5a\x78\x3e\x59\x98\x70\x5a\x4e\x37\xde\xec\xa0\xc0\xe2\x19\x3c\x34\xaa\x48\x95\x0a\x00\x71\x99\x3e\xd2\x6b\x32\x06\x67\x61\xf6\x4c\xd7\x34\xfe\x7b\xd7\x8c\x31\x1e\x8e\x1b\xbb\xcc\xf2\xb8\xb5\xcb\x18\xc7\xe3\xc6\x7f\x40\x48\x47\x38\x3a\x85\xf3\xa3\x5f\xaf\x36\xb6\xe9\x28\xe7\x2e\x29\x87\xf8\x98\x3c\x45\x86\xe4\x20\x1b\x91\x32\x3e\x13\x63\xbf\x65\xae\xce\x31\xa2\x73\x02\x2f\xb8\x51\x1c\xae\xd4\x68\x10\x64\xc2\x78\xe5\xe8\xf2\x1c\x65\xc0\xf4\xac\x24\x78\xd7\xa8\x75\x71\xdb\x44\x26\x99\x1e\x8b\x71\xf9\xa8\x92\x68\xf5\x51\xd3\xf1\x0f\x39\xb1\xe3\x05\x0b\xb3\x7e\x1c\xba\x38\x7a\x72\x85\x70\x11\x1a\x76\xcc\x58\x0c\x5a\x98\x08\xe0\x36\xee\xf5\x36\xc4\x8d\xd4\xbc\x41\xb5\xe9\x29\xae\x43\xb8\x9c\x86\x04\x8e\x4c\x0b\xf9\x52\x18\x3e\xd7\x16\x07\x4e\xd4\x75\x9a\x18\xb2\x1e\x0f\x71\xdb\x3d\x83\x02\xbb\x82\x1c\x5b\x08\xc0\xc1\x7e\x27\x8d\xa3\x1a\xd9\x31\x84\x4b\x9d\xa8\x8e\xd9\x76\x24\x42\xbf\x61\x8b\x47\x15\x25\x2b\x2b\x42\x99\x06\xba\x41\xeb\xa8\xd4\x46\xaf\xe7\x5a\x23\x49\xaf\x67\x26\x76\x54\x8e\xba\x9e\x1b\x9b\x78\xdc\x88\x76\x19\x56\xb9\x1b\x74\x4d\xcb\x42\x7e\xd9\x69\xb5\xc0\x21\x3a\xb1\x84\xd3\xb0\xaf\x86\x26\xf6\x37\xb5\xcd\x36\xa6\xae\x10\xca\x98\xe4\x9f\x68\x3b\x84\x39\x5b\xd9\xd4\x86\x7a\x50\xb5\x08\x77\xb1\x35\x71\x66\xc9\xc3\x5e\x45\x69\x64\x64\x76\xc8\x7f\x35\x2a\x63\xb6\x52\x4b\x25\x33\x97\x26\xe5\x9a\xc3\xce\xe9\xb9\x08\x63\x9f\xbb\x6e\x4b\x3b\x56\x72\x6d\x8a\xef\x97\x6f\x13\x10\x01\x8e\x68\xdc\xeb\xe5\xb0\xef\xd3\x5d\x86\x7c\xe4\x72\x8e\x37\xb6\x31\x32\x7d\xce\x80\x4a\x3b\x4d\xc3\x1e\x42\x11\x98\x83\xd3\x78\x25\x32\x95\x26\x2d\xc1\x66\x76\x9c\x7c\x79\x49\x9a\x23\x92\x98\x52\x52\x14\x5c\xc0\xf1\x80\x82\xd0\x1f\x22\xe6\x51\x66\x31\x34\x65\x51\xc4\xb7\x90\x4b\xd3\x90\x4b\x38\x6c\xca\x2c\x66\xa6\x9c\x5d\x44\x70\x81\x82\x40\x47\x38\x29\x86\xcd\x73\x8c\x08\x46\x39\xef\xb9\x90\x51\x9a\xb6\xeb\xc3\xfe\x27\x83\x04\x6a\x82\xf4\xf0\x61\x7d\x3a\x13\x87\x4e\x33\x7e\x8a\xad\xbb\x59\xba\x45\xcd\x10\xb1\xbc\x62\xb5\xf9\xd2\x8c\xc3\x6c\x8f\xce\x9e\xe9\xd2\x60\x99\xa3\x71\x30\x4a\x5a\xaa\x8d\x3e\x96\x5e\x36\x29\xb7\x13\xcf\xa3\x1e\x7b\xc6\x63\xa3\xcb\x6e\xdc\x71\xfd\xd1\xc7\x0c\x8b\x7f\x0f\x49\xf2\x7c\x12\x8f\x2e\x04\xf1\xe8\x63\x42\x8f\xf3\x58\x79\xf4\x29\xb7\x35\xba\x12\x24\xa3\xed\x20\x5c\xc0\xd4\x8b\xfe\x31\x46\x37\x46\x61\x6b\x14\x55\x37\x43\x0e\x49\xbe\x4e\x48\xd7\xa2\x4e\x90\x78\xad\xe7\x43\xa7\x7b\xd8\x3f\x44\x16\xe3\xd3\x8c\xb4\x98\x3e\xa2\x77\x31\x7c\x5b\x65\x2d\x7d\x42\xff\xfa\x7d\xd4\x75\xc2\x88\x85\x74\x97\x87\x95\x6c\x03\xaa\x93\x28\xd3\xef\x2d\xea\x55\xca\x97\x08\x7b\xf2\x82\xc5\xd2\x25\x52\x0d\x25\xad\xc6\x01\x16\x72\x76\xca\xb6\x6d\x97\xfb\xd8\x93\x7a\x48\x35\x6e\xbd\xd2\x10\x69\xb1\x6d\x1c\x10\x43\xe7\xd6\xab\x0d\xb6\x47\x03\xdb\xad\x4f\x36\x78\x6d\x35\xc3\x1a\x09\xed\xa0\x5e\x69\x20\xdf\x0e\xc8\xc9\x4f\x15\x36\xf9\xb2\x28\x64\xb5\x33\xd9\xaa\x82\x26\xaa\xe4\x18\x22\x55\x8d\x18\x3c\x20\x7d\x2d\x8d\x47\x4f\x4e\x46\x76\xfd\xc2\x90\x82\xd4\x1b\xa9\x04\x89\x42\x5b\x94\x33\x78\x30\xd6\xb6\x39\xa9\x74\x0b\xa2\x7d\xd3\x76\x53\x7c\x21\x9b\xc3\xb3\x91\x9e\x3b\xf5\x2a\xef\xf9\x8c\x19\xda\x0e\xeb\x50\xb6\x13\x56\xcd\x8c\x69\x56\x24\xb2\xb0\x81\xa1\xb1\xac\xd9\x99\x48\x12\xe4\xd6\x62\xda\x3e\x0a\xed\x88\x15\x20\x22\x46\x3f\x45\x9d\xf5\x93\xa0\x10\x97\x3d\x27\x62\x31\x92\x8f\xb5\x4d\xa5\xdb\xa8\x62\x0d\x1c\x8b\xd8\x8e\xb9\xd0\x5a\xb5\x84\xce\xcc\x94\x66\xbd\x66\x58\x56\x8a\xf0\x08\x3b\x9d\x7d\xe4\x49\x0e\xca\xcc\x1b\x57\x1c\xd3\x42\x23\xb5\x9a\x2e\x2d\xc2\xee\xf2\x2d\x54\xc3\xa8\x4b\xcf\xef\x5a\x0c\x1c\x0c\xfb\x69\xae\x12\x4a\x52\x0b\xfb\x16\x62\x80\x28\xf1\xbc\x1b\x77\x82\x84\x86\x7e\xad\x25\x88\x34\x54\xf3\x51\x18\x04\x71\xcd\x43\x40\x38\x8e\xd2\xcb\x22\xec\xe5\x02\x48\x32\xc6\x19\x8a\x5c\x75\x49\xcf\xef\xf6\x8a\x19\x12\x52\xd9\xf5\x92\xd0\xf1\xdc\x17\x71\x8b\xd4\x1a\x31\xd6\x4f\xc7\x0e\x2e\x3a\xa7\xf1\x29\x50\x7f\xd6\xb4\x0a\xdf\x01\x5c\xd0\xb8\x71\xc0\x18\x8f\xc7\x8d\x9a\xd1\x47\x45\xfb\x37\x4f\xe4\xc7\xaa\xfd\x41\x5c\xa8\x09\x87\x0d\x6b\xe8\x49\x27\xc2\xad\x13\xc0\x7a\x90\x43\x7e\xb3\xdc\xa8\xcf\xcf\x2e\x3f\x08\x17\xe9\x90\x50\x27\xe4\x8c\xe6\x49\xf2\x23\xcf\x0c\x9d\xad\x4b\x14\x8a\xc2\x0d\x8b\x03\x93\xc2\x31\xd4\x7f\x25\xeb\x97\xfc\x35\x38\xae\x2d\xdc\x0d\x71\xd3\x89\x71\xeb\xb8\xca\x13\xda\x64\xf0\x44\x4f\x74\xe7\x98\xae\xb3\xf4\x62\xa0\x59\xf0\xc5\xce\xa4\x13\x2e\xb5\xcf\xd7\x5d\xde\xd3\x1b\xc1\x69\x25\xe8\xae\x89\xd9\xf5\x82\xdc\x4a\x2d\xbe\xf4\x42\x2a\xa8\xfb\x0d\x7a\x9f\x09\x60\x33\x24\xf4\x9c\x5d\x7a\x12\xe9\x65\xf9\xd8\xa4\x39\xe2\x3e\x9a\xd3\x77\x9f\xbb\xa1\xab\xf4\x2c\x16\x1a\x0e\x71\xd4\xd6\x2b\xe2\x3a\x4e\xfa\x88\x08\xa1\x36\xbd\x9e\xc1\xb4\x3b\xfc\x17\xbf\xbe\xc2\x7f\xeb\x68\x13\x21\x6a\xae\x8e\x34\x59\x33\x21\xd9\x18\xe3\x34\x87\xb8\xca\x39\xb7\x6b\x01\x19\x13\x86\x55\x63\x1f\x95\x1d\xdc\x72\xa2\x0e\x0e\xc9\x0c\xa8\x65\xbe\x52\x26\x85\x76\x19\x96\x08\xa0\x8d\xa5\x0d\x5e\xb8\x06\x32\x4b\x4d\x5a\x03\xf9\x2f\x36\x11\x2c\x0c\xab\x8f\xba\x41\x8b\xee\xb8\x23\x41\x70\x3a\xe9\x12\xc2\xc4\xd6\x9d\x56\x5f\x18\x97\x35\x14\x8c\x8f\xad\x3c\x58\x71\x99\x4c\x3c\x61\x79\xe9\x3a\x81\x7e\xfd\x77\x3a\x5c\x5f\xd9\xb5\x0b\x19\x86\x65\x21\x3c\x6e\xec\x62\xf2\xb4\x31\xce\x4a\xa5\x38\xa5\xbc\x91\x66\xe2\x37\x12\xa5\x06\x50\x31\x85\x0d\x29\x1a\x00\x33\x46\x58\x1a\x1f\xf1\x42\x55\x74\xd8\x3f\x99\xcc\xb7\x5c\xdd\x9d\x88\xbb\xc1\x89\xac\xdd\x71\xdb\x90\x5e\xa2\x51\xde\x21\xa5\xac\x0d\x19\x9e\x5e\x4f\x1e\x47\xb8\x14\x89\x75\x13\x23\x2e\x4a\x0e\xd3\x4f\xd8\x78\xb3\xfe\x82\xeb\xeb\xf7\x99\xa6\x85\x71\x63\x17\xa6\x05\x98\x82\x50\x27\x6e\x77\x9c\xc8\x8c\x55\x4c\xf4\x3c\x6d\x9c\x22\x71\x22\x48\x62\x7c\xd4\xe9\x0e\x8b\x06\xa1\x50\xe3\xc6\xae\x90\x14\x8b\x06\xa3\x12\x5a\xc3\xb0\xd7\x56\x7a\x7b\x52\x20\x75\x8a\xb3\x66\x05\xd3\xae\x50\x2e\x9c\xd6\x20\x51\x38\xb6\xf9\x4f\xcd\x1e\x3d\x7e\xe4\xe0\xa9\xd9\x93\x75\x6d\x67\x1a\x94\xe6\x2d\x3a\xae\x5f\xb0\xfc\xdd\xb6\x69\x90\xcf\x6c\x49\xe8\xe6\x5d\xd8\xb9\xba\x70\x68\xef\x32\xc6\x31\xec\x2d\x1e\xcb\x5e\x5f\xb7\xae\xa4\x4a\x41\x4c\x56\x91\x05\x95\x6a\x9a\xef\x23\x1f\x47\x31\xd9\x31\x5e\xd0\x74\x48\xcd\x62\xef\x0c\xe8\x91\x66\xa5\x6b\xfb\xb1\x59\x6c\xc6\x0d\x50\x70\xf4\x39\x93\xb6\xe1\xb6\x2d\x24\x15\x22\x4b\x9d\x35\x3b\x6e\xb0\x4c\x46\x7a\xb0\x0d\xc8\xc3\xe6\x55\x8c\x00\xdb\x87\xc7\x9d\x38\xc6\xa1\xcf\xef\x58\x8a\x47\x99\xf2\x97\x34\xeb\xca\x2e\x4e\x47\x12\x29\xe9\x79\x32\x05\xbc\x95\xb2\x9e\x58\x5a\x6e\x29\x80\x7a\x6a\xe3\xd9\x6b\xf4\x2d\xab\x1c\x62\xa7\x75\xcc\xf7\x56\x4c\x0b\xa9\x82\x6c\x2d\xef\x37\xc1\x6d\xe1\xb4\x01\xc2\x62\x1b\x45\x03\x61\x50\xe3\x1a\x0a\x6c\x9f\x2b\x89\xdc\xfd\x41\xfa\xc8\x92\x63\xfb\x75\xb7\x91\x1a\x7a\x40\x10\x76\x4a\x25\xd3\x61\xb5\x37\x3b\x41\x10\x61\x49\xac\x76\x10\xb6\xa8\x47\x52\x21\x51\x70\xe8\xd5\x7f\xdb\xb1\x10\x67\xe0\xe7\xbc\x60\x81\xe1\x45\x64\x6d\xe4\x58\x48\x3c\x62\x14\xf6\xfb\x28\xdb\x86\x66\x4d\x29\x07\x3d\x11\xa0\xc3\xa8\x19\x84\x5c\xc8\xc7\x63\x94\x26\x14\x62\x94\x5e\x88\xd4\x93\x53\xad\x7e\xe7\xe0\xe2\xbc\xbb\x90\x04\x49\x34\xca\x0a\x8d\xd2\xb5\xa8\x88\xfd\x44\xac\x77\xfc\x96\x2c\x9b\xc7\xc8\x78\x0c\xf4\xd7\x03\xd0\x49\x45\xe9\x21\x09\x3d\x04\x69\xc0\x12\x57\xb3\x6b\xc2\xac\xff\xf7\xae\xc6\xff\x6b\xfd\xc7\x2e\x64\xec\x9a\xfb\x8f\xaa\xa1\x2a\x04\xf4\xf4\x7a\x26\xe4\x37\x7b\x91\x47\x67\x84\x3b\xc5\xb8\x81\x5f\xb4\x97\x65\x56\x55\x69\x22\xa3\x71\x89\xd1\x58\xc5\xea\xa3\x74\xb6\x73\x8e\x40\x6e\x1b\xde\x48\x99\x7d\xe6\xb9\xf2\x91\x63\x9f\x9d\x3b\x7a\xec\xa9\x67\x8f\xcc\xce\x9d\x98\x3d\x79\xec\xc8\x73\xb3\x27\x7a\xbd\xb8\x4c\x04\x37\xfa\x8d\x27\xc2\x11\x83\x5c\x1b\xcf\x18\xf5\xf5\x37\xce\x36\x8c\x9a\x51\x1f\x6d\x18\x23\xbe\xc4\x42\x71\x46\x75\x4f\x65\xc6\x28\x1b\xb5\xd4\xbe\xbc\xa7\x32\x91\xcb\x65\x95\xbf\x1a\xb8\xbe\x69\x94\x0d\x0b\x85\xbd\x9e\x09\x3c\x79\x6e\x44\xc8\x14\xa0\x66\xe0\x47\x81\x87\x4b\x25\x00\xca\xae\xdf\x0e\xd4\x5f\xa6\x8b\xd2\x36\x90\x4f\xfd\x45\xd0\x69\x3f\x58\xf6\x9f\x0e\xc2\xbb\x53\xa9\x87\x5a\x49\xcb\xb7\x2b\xc8\x4d\xd5\xe7\xfe\x7e\x77\x9f\x9f\xbe\x9c\x16\xd7\xfd\x06\x82\x0d\x1c\x87\x8e\x1f\x91\x93\xf6\x54\x20\xac\x1d\x4f\x27\x9e\xe7\xd3\xf9\x44\x81\x35\x42\x76\x7b\x58\x77\x1a\x36\x99\x3d\xb1\x2d\xd1\xa0\x82\x7a\x76\x36\x27\xab\xe3\x3e\x15\x6d\xc8\x71\x82\x5c\x9b\x1e\x2a\x28\xb0\x63\xc1\xf0\xfb\x16\xb5\x01\xf0\x9f\x2e\xdd\x36\xf4\xf5\x99\x52\xc9\x61\x9a\x0b\xda\xbf\x09\xae\x79\x29\x95\x84\x40\xc2\x09\xda\xb8\xd0\xca\xf0\x3d\xc5\xc4\x06\xd0\x5b\x04\xe3\x3c\x23\x72\x2c\xb8\xcc\x1f\x6a\x8f\x3e\x7a\xea\xf1\xe5\xcd\xf4\x26\x1c\xb1\xc8\x92\x1a\xe6\x46\xdf\x19\xb5\x21\x9e\x6c\x89\xfd\xa5\xe5\x86\x34\x7b\x4c\x68\x4e\xd9\x2b\x9b\xf4\xbf\xb1\x4a\xba\xd3\x48\xdb\x70\xb8\xb0\x83\x51\x28\xf1\x50\xdc\xef\x5b\x23\x6e\x39\xc4\x41\x17\x33\xad\x81\xb9\xaa\x91\xfb\xa9\xba\x9d\x2b\xd9\x24\xcb\x46\x30\xc0\xb2\xa1\xb3\x52\x7c\x12\xef\x2b\xae\xb2\x75\x2f\xbd\x9c\x28\x4c\x5d\x79\xc1\x18\x83\xc2\x78\x86\x03\x66\x6c\xd5\x70\xbf\xaf\x33\xa1\x13\xf6\x36\xef\x27\xeb\x46\x13\x4e\x33\x76\x97\xb0\xd6\x84\xa3\x96\x61\x43\xd4\x71\xfc\x96\x87\x27\x5e\x48\x70\xb8\x32\x41\x5f\xf3\xdc\xa0\x00\x59\x14\xa7\xa1\x15\x96\x23\x6b\xfe\x21\xa4\x52\x19\x51\x20\x80\x28\x18\x51\xfd\x04\xc1\x67\xc0\xf9\xb4\xfa\xe4\x46\x52\xb3\x19\x16\xb7\x28\x50\x52\x42\x2a\xc8\xc4\x4a\xca\xfa\x4f\x8e\x65\x91\x1e\x18\x27\x49\x17\x7b\xa7\x20\x1a\xd3\x90\x41\x85\x92\x34\xa8\x50\xb8\xf5\xa0\x42\x61\x3e\xa8\x50\xb8\x51\x50\xa1\x30\x0d\x2a\x14\x0e\x19\x54\x28\xdc\x7c\x50\xa1\xd0\x52\x7b\x9a\x19\xad\xe1\x43\x0a\x45\x5d\xc2\x16\x7f\x72\xd1\x84\x92\xfb\x16\x4d\x08\xee\xb2\x20\xdf\x5a\x0d\x4b\xa5\x01\x8e\x90\x92\x8f\x48\x28\x99\x74\x55\x57\xbe\x50\xb1\xed\xa6\x2e\x7f\xa1\xb0\xe9\x82\x21\x2f\x2c\x73\x47\xd2\x17\x71\x38\xa3\xfc\x62\xcb\xcf\x17\xe7\x59\xd6\x7d\xf3\x9e\xb9\xca\xb7\x1f\x64\x23\xb7\xe4\xf1\x28\xfb\x80\xb7\xb6\xd5\x07\xbc\xb3\xe3\x03\x3e\xd0\x07\x7c\x29\xeb\x03\xbe\x74\x2f\x7d\xc0\xbb\x1a\x1f\xf0\xae\x3c\x9f\x63\xb1\xe2\x03\xee\xd0\x10\x2b\x3a\x77\xe0\x19\x42\x61\x6b\x71\x5a\xcd\xe2\x27\xe7\x03\xbe\x24\xf1\x0f\x4b\xf7\xd1\x07\x7c\x7b\x1c\xb8\x56\xd0\x3c\x5a\x40\x73\x68\x19\xcd\xa2\x93\xb6\xc9\xfd\x8e\x5c\x1f\xba\x11\x2e\xb9\x4d\x8c\x56\x6c\xd3\x7d\x54\x9c\xb6\x5b\xdc\x69\x3b\xd1\x3a\x6d\xd3\x37\x48\xed\x8e\x99\x58\x72\xe0\x4c\xee\xb4\xdd\x64\x4b\x3c\x19\xe8\xb4\x1d\xaa\x4e\xdb\xbe\x5d\xd9\xe7\xef\x8f\xa9\xdc\x19\xd6\x7d\xd9\x69\xdb\x97\xae\xdb\x2d\x9a\xd8\x76\x64\xa7\x6d\x27\xe3\xb4\x1d\x52\xa7\x6d\xc6\x29\x1b\x28\x40\x64\x4f\x28\x5e\xd8\x89\xe4\x04\x53\xe8\x85\x0d\x67\xc2\x3e\xb3\x82\xc2\xd4\xc9\x81\xa9\x92\x69\xd5\x16\xb8\x97\x64\x1d\x6c\x01\x53\x13\xb4\x69\x90\x99\x30\x96\x94\x41\x07\xa4\x7d\x14\x99\x2e\x0f\x18\xd0\x56\xfc\xa0\x99\x6b\x0b\x39\xb4\x5c\x0b\x25\x7d\xd3\xb2\xa4\x8f\xf3\xb6\xe8\xd9\x82\x4d\xa4\xf2\x39\x7b\x35\x7b\x69\x41\xf5\xfa\x94\x67\x5a\x3a\x8d\xa9\xb5\xb9\x8f\x66\xed\xd5\x3e\x92\x9d\x7c\xe6\x2c\x7d\x38\xa8\xd9\x3a\x6e\xd8\x73\x75\xaa\x5b\x44\xb3\xf2\x19\x39\x36\x26\xff\x44\xb3\x99\x13\x72\x4c\x4d\x40\x66\x7a\x60\xce\xf6\x7a\xb3\x32\x87\x40\x58\xa0\x59\xf5\x00\x9d\xb5\x17\x80\x5d\xb5\xca\x21\x5e\xc2\x61\xc4\xa0\x56\xd2\xc4\xa6\xa9\xb7\x8f\x9b\x64\x33\x13\x06\x11\xf7\x2d\x34\x6b\xa1\x65\xc9\x99\x5a\x69\x8f\x36\x47\xb1\x51\xd3\x67\x66\xf3\x7c\xcb\xb2\x88\x8c\xa7\x7c\xb4\xb9\x97\xbf\xa0\xb8\xd9\x16\xf4\xf4\x89\xa0\x38\x4b\xba\xc7\xd4\x2f\x81\x3d\x8b\x5c\xd9\x47\xf0\xe4\xd0\x02\x66\x18\x04\xf1\x44\x12\x7a\xc3\x0a\xd3\xc2\xd7\x66\x44\xbe\xa5\x27\xdf\xd0\xfb\x74\x8a\x7e\xc1\xc3\xc4\x10\x3b\xf7\x94\x21\x8e\x1e\x0a\x86\x38\x51\x18\xe2\x82\x80\x00\x5b\x64\x88\xbd\x1d\x86\x78\x20\x43\xdc\xca\x32\xc4\xad\x7b\xc9\x10\x37\x35\x0c\x71\x73\x00\x43\xec\x16\x33\xc4\xed\x0c\x43\xdc\xfe\xe4\x18\xe2\x96\x44\x55\x0b\xc4\xb9\x07\x98\x21\xee\xa0\x2e\x5a\x44\x4b\x88\x32\xc6\xb6\xb0\x8e\x67\x18\xe2\x8e\x6d\x86\x8f\x0a\x43\x9c\x6c\x14\x7f\x22\x44\xae\xed\x15\xc4\x9f\x70\x86\x89\x3f\x91\x61\x88\x23\xbb\xb2\x2f\xda\x1f\xef\x8b\x28\x43\x1c\xc9\x0c\x71\x24\x18\xe2\xc0\x6c\x9b\xd8\x76\x65\x86\xd8\x1d\xc8\x10\xfb\xa8\x9d\x65\x88\x87\x89\x41\xa1\xfa\x32\xb1\xca\xa8\x69\xed\xd9\x13\x47\x18\x17\x1b\x65\x6f\xf3\x85\x34\x0d\x85\x2c\xca\x84\xcc\xc5\x76\x53\x2e\x76\xd1\xae\xc7\x0d\xb4\x74\x77\x5c\xec\x7c\x96\x8b\x5d\x2a\xe0\x62\xe7\x09\x17\xbb\x04\x5c\xec\xbc\xca\xc5\xca\x3f\xd1\x7c\x96\x8b\x9d\x2f\xe4\x62\xe7\x7b\xbd\xf9\x2c\x17\x3b\xaf\x9e\x7a\xf3\xf6\xe2\xe6\xb9\x58\xb2\x03\x39\x17\x3b\x6f\xa1\x15\x89\x8b\x9d\xcf\xf0\x98\xf3\xc0\xc5\x2a\xe9\x33\xf3\x79\x66\x63\x45\x70\xb1\xf3\x83\xb9\xd8\x6c\x0b\x7a\xa2\x42\x50\x9c\x27\xdd\xe3\x46\xc4\x79\x14\xca\x5c\xec\xc2\x26\xb8\xd8\x24\xc6\xc2\xda\x31\xa4\xa5\x44\x29\x34\xf8\xc6\x0b\x1c\x6c\xc8\x1d\x91\x19\x42\x29\xe4\xc2\xa7\x94\xeb\x75\x1e\x26\xae\x37\xba\xa7\x5c\x6f\xf2\x50\x70\xbd\x9e\xc2\xf5\x16\x04\x53\xd8\x22\xd7\xdb\xdc\xe1\x7a\x07\x72\xbd\x9d\x2c\xd7\xdb\xb9\x97\x5c\x6f\x5b\xc3\xf5\xb6\x07\x70\xbd\x41\x31\xd7\xdb\xca\x70\xbd\xad\x4f\x8e\xeb\x95\xc6\xdb\xec\x3c\xd8\x5c\x6f\x84\x63\xea\xca\x7a\x9c\x1e\x20\xd4\xdb\x41\xf1\x17\xe8\xda\xb8\xaf\x67\x8e\xbb\xa9\xcf\x04\xfd\x2d\x18\x65\x34\x87\x96\x09\x4b\xac\x65\x96\x17\x6d\xd3\x7f\x54\x98\x65\x8f\x33\xcb\x41\x21\xb3\xec\xdb\x4d\x33\xb0\xe4\xf3\x98\x33\xcb\x10\x24\x27\xd8\x0c\xb3\x9c\xd8\x95\x7d\xc9\xfe\x78\x5f\x42\x99\xe5\x44\x66\x96\x93\x46\x1a\x37\xb1\x65\x12\x6a\x2e\x31\xcb\xfe\x40\x66\xd9\x45\xad\x2c\xb3\x1c\x0c\x13\xc3\x43\xac\x60\x82\x63\x57\x56\x1b\x23\x7e\x9f\x31\xd1\xb0\xcb\x09\x63\x97\x83\x0c\xbb\xbc\x94\xb2\xcb\x2b\x76\x3d\x6c\x10\x7e\xf7\x6e\xd8\xe5\xb9\x2c\xbb\x3c\x5f\xc0\x2e\xcf\x11\x76\x79\x1e\xd8\xe5\x39\x95\x5d\x96\x7f\xa2\xb9\x2c\xbb\x3c\x57\xc8\x2e\xcf\xf5\x7a\x73\x59\x76\x79\x4e\x3d\x2e\xe7\xec\x95\xcd\xb3\xcb\x64\x0f\x72\x76\x79\xce\x42\x0b\x12\xbb\x3c\x97\x61\x66\xe7\x80\x5d\x56\xd2\x67\xe6\xf2\x5c\xca\x82\x60\x97\xe7\x06\xb3\xcb\xd9\x16\xf4\xd4\x88\xa0\x38\x47\xba\xc7\xd8\x65\xd7\x9e\x43\xbe\xcc\x2e\x2f\x0f\xcd\x2e\x53\x5f\x3a\x1a\x87\x65\x22\x0e\xee\xca\xb3\x68\x87\x6d\x2e\x60\x9b\x37\xeb\x27\x14\x3d\x04\x7e\x42\xd1\x23\xe3\x27\x14\x3d\xdc\x7e\x42\xd1\x7d\xf3\x13\x4a\x1e\x26\x01\xd1\xbb\xa7\x02\x62\xf3\xa1\x10\x10\x15\x11\xc1\x6c\x6f\xab\x80\xd8\xda\x11\x10\x07\x0a\x88\x8b\x59\x01\x71\xf1\x5e\x0a\x88\x1d\x8d\x80\xd8\xd9\x9a\x80\xd8\xcd\x08\x88\xdd\x4f\x4e\x40\x5c\x94\xf8\x87\xc5\x07\x5b\x40\xd4\x48\x7e\x92\x9c\x87\x66\x0b\x25\xbd\xa5\x47\x48\xd2\x6b\x73\x49\x2f\xd2\x4a\x7a\x84\x7b\x0c\xec\x96\x19\x49\x92\x5e\x24\x24\x3d\xb8\x25\x16\x6d\xbb\x9f\x50\x62\x76\x4d\x6c\x07\xb2\xa4\x17\x6c\x20\xe9\x75\xb3\x92\x5e\x84\xcc\x70\x48\x3f\x21\x76\x59\x25\x47\x39\x78\xf8\xe0\x11\x21\x8a\xf8\x5a\x1e\xd6\x2f\x77\x89\x9c\xe3\xf3\xab\x1d\xa5\x52\x36\xc5\xe4\xd7\x2d\x8a\xdc\x8d\x5c\x3b\x14\xbe\x46\xa9\x74\x70\x2a\x10\x36\x21\xc7\x0c\x2c\xab\xcf\x64\xcf\xa6\x22\x7b\x86\x16\xf2\x69\x1a\xf2\x2d\x14\x65\x64\xcf\x95\x54\xf6\x9c\xa7\xb2\xe7\xc2\xdd\xc9\x9e\xcb\x59\xd9\x73\xa1\x40\xf6\x5c\x26\xb2\xe7\x02\xc8\x9e\xcb\xaa\xec\x29\xff\x44\xcb\x59\xd9\x73\xb9\x50\xf6\x5c\xee\xf5\x96\xb3\xb2\xe7\xb2\x7a\x12\x2f\xdb\xf3\x9b\x97\x3d\x09\x55\xe0\xb2\xe7\xb2\x85\xe6\x24\xd9\x73\x39\x23\x19\x2e\x83\xec\xa9\xa4\xcf\x2c\xe7\x19\xa0\x39\x21\x7b\x2e\x0f\x96\x3d\xb3\x2d\xe8\x09\x1d\x41\x71\x99\x74\x8f\xcb\x9e\xcb\xaa\xec\x39\x3b\xb4\xec\x99\x84\xde\x44\x3b\xd0\xc7\xf9\xdb\x91\x3a\x77\xa4\xce\x1d\xa9\x73\x47\xea\xdc\x91\x3a\x77\xa4\xce\x1d\xa9\x73\x47\xea\xdc\x91\x3a\x77\xa4\xce\x1d\xa9\xf3\x9e\x49\x9d\x28\x1b\x84\x33\x95\x07\x43\xf5\xfa\x49\x12\x7a\x4f\x07\x3c\x68\x73\x88\x1c\xd3\xe7\x97\x4f\x76\x64\xc1\x1d\x59\x70\xd3\xb2\xe0\x80\x48\x05\xf7\x35\xa4\x03\x44\x1d\xab\x73\xc6\x74\xa2\xda\x18\xa1\x14\xc6\x8d\xfe\x8b\x60\xc5\x5c\x3b\x4a\x25\xd3\xc4\xe2\xb9\x0c\xcb\x92\xb3\xdb\xab\x2f\xa4\x19\x6b\x31\x9b\x91\xa8\x2f\x9d\x21\x43\x0e\xc6\x96\x3c\x18\xef\x47\xac\x07\x41\x00\xfd\xcd\x8b\x97\xee\x43\x20\x5e\xba\x8f\x8c\x78\xe9\x3e\xdc\xe2\xa5\x7b\xdf\xc4\xcb\xe0\x41\x96\xa9\xb6\x87\x25\x74\x8a\x22\xd0\x93\xfd\x7f\x5f\x63\xd0\x33\x3a\x65\xc7\xf0\xd3\xf5\xbb\x49\xcc\xc8\x29\x7f\xb3\x68\x4e\x56\x48\xf3\x50\xfc\x50\x98\x85\x1f\x7b\xde\x8d\x3b\xea\x87\x6e\x18\x34\x71\x14\xe1\x16\x54\x05\x62\x39\x15\x80\x90\x83\x84\xae\xdd\xb5\x31\x32\x1d\xce\x30\xf1\x5b\xb6\x46\xf6\xb1\x13\x78\x4b\x8a\xf1\x46\xf9\x2b\xbd\xd0\x09\x0b\x99\xd8\x56\x12\xb2\xf7\x76\x31\xf2\xa1\x04\xa3\xd6\x56\x1a\x07\x9f\xde\xc1\x1c\xd4\x6c\xb6\x6a\x85\x27\x1b\x50\xb1\x3c\x7a\xfa\x16\x14\xeb\x83\x60\x06\xf2\x63\x4f\x76\x59\x7e\x42\x44\x6d\x3c\xf2\x96\x5a\x13\x8b\x85\xa7\x8b\x1a\x9c\xb3\x5a\x64\x53\x4c\x0b\x51\x2a\x3a\x37\xc0\x32\x11\x22\xdf\xc4\x52\xaf\x2d\xcd\x9a\x11\x43\x21\x2d\x97\xcd\x8f\x84\x54\x58\x0c\x84\xbc\xfe\x32\x75\xc5\x7c\xde\x62\xb9\x07\x52\x01\x2e\x47\x17\x74\x40\xca\x29\xf0\x9f\xe3\x67\x7c\xc1\x5b\x3c\xba\xa5\x2f\x22\x45\x67\xb7\x84\xca\xfa\xe7\x76\x9f\x65\xe9\xb7\x12\x63\xfb\x03\xd3\x95\x38\x7b\x87\xbe\xbd\x15\x98\x2e\x8a\xc4\x73\x0a\x9c\xe8\x38\x43\x32\x40\x1a\xd6\xe4\xfe\x32\x83\xb8\xdc\x4c\xc2\x10\xfb\xf1\xb3\x27\x8e\x20\xf1\x83\xba\xf8\x3e\xe3\x2c\xea\x18\xb9\x28\x76\xc2\x05\x27\xc6\x52\x54\xdf\x5d\x04\x5d\xc7\x9b\x20\x5f\x70\xac\x32\x72\x07\x16\x3c\x77\x71\x11\x87\x69\xf6\x61\x0d\x19\x28\xa0\x34\x4b\xd6\x7f\x4a\x37\x5b\x3f\xa5\xe6\x8c\x9d\x10\x44\x59\xf5\xe9\x83\xc9\x90\xc8\x8a\xd8\x9d\x10\x44\x3b\x21\x88\x34\x4a\xde\x64\x27\x04\xd1\x30\xcf\xd0\xae\x70\x8a\x87\x5c\x1e\x3a\x75\xb5\xcf\x11\x95\x15\x5d\x7e\x81\xa2\x2b\xa8\xe3\x86\xed\x83\xa2\x2b\x50\x15\x5d\xf2\x4f\x14\x64\x15\x5d\x41\xa1\xa2\x2b\xe8\xf5\x82\xac\xa2\x2b\x50\x69\x44\x60\x87\xc3\x28\xba\x18\x29\x07\x69\x0b\x74\x0d\xbd\x5e\xd8\xb7\x50\x40\x63\xd6\x08\x7e\x31\xc8\xa8\xa1\x02\x50\x74\x29\xe9\x33\x41\x9e\x34\xbb\x42\xd1\x15\x0c\x56\x74\x65\x5b\x28\x3e\x5d\x02\xd2\x3d\x88\xb2\xb2\x4d\xb2\xd7\x3c\xe8\xdf\x3f\x77\xea\xe8\x91\x27\x9d\x30\x2a\xf3\xb7\x15\xcc\x55\xb7\x55\x33\x96\x9f\xdd\x3b\xfb\xd9\xd6\x21\xc7\x40\xf3\x5e\xd0\x3c\x5d\x7b\x6c\x15\x4e\xca\xc8\xa8\xd5\x8d\x92\x13\xc7\x21\xe1\x26\x4a\xfc\x9d\xc6\x06\x32\xa2\xd8\x89\x31\x53\x12\xd4\xea\xf5\x6a\x15\x19\x2d\x77\xc9\x68\xa0\x7a\xf5\x71\x54\x6d\xa0\xfa\x34\xaa\x4f\xed\x45\x95\x06\xaa\xd7\xa7\x26\x51\x05\xd5\x8d\x90\x46\xf7\xc5\xa1\xd1\x68\x34\x68\x88\x57\x91\xab\x2a\xe5\x4a\x7c\x5d\xbe\xea\x64\x03\xd5\x27\x91\xf1\x95\xaf\xf8\xa3\xa3\xb4\x95\xbd\x68\x32\x2d\xd4\x0c\x12\xc2\xd9\x90\x02\x90\x8b\xe6\x99\x6a\x34\x90\xd1\x71\xa2\xd9\x25\xc7\x33\x6a\x6d\xc7\x8b\x30\x32\x92\xee\x92\x13\xd2\x7e\xb5\xdc\xd6\x84\xeb\x47\x38\x8c\x0d\xf6\xf8\xeb\x44\x0b\x5e\x7f\x6d\xf4\x1f\x43\x8b\x38\x76\x6a\xab\x69\x24\xe2\xda\xb0\x1c\x58\xb9\x33\x1f\x19\xfd\xbe\x85\x16\x8a\xec\x1e\xa6\x31\xc1\x4a\x18\xe9\x7b\x81\x73\x0e\x5d\xb1\xc8\xcd\xfc\x56\x2f\x78\x7d\x9a\x0d\x24\xad\xf4\x02\x16\xb6\x94\x07\xb6\x3a\x05\xb7\xae\x9a\x5b\xb8\x75\xb5\x89\x98\x5d\x43\x84\x28\x60\xd3\x78\x92\x4d\xab\x81\x9c\x6c\xe8\xae\xd8\x0e\x24\xe3\x88\x58\xd9\x05\xd6\x91\xd8\x5e\x5d\x4c\xbc\xd8\xed\x7a\xb8\x46\x05\x21\x27\x5c\x88\xca\x3c\x09\x05\xfe\xa1\x8e\xe3\x2f\xc8\xdf\x78\x52\x7f\x04\x82\xf6\x4b\xe8\x94\x79\x73\xa7\xe8\xb2\x34\xd3\x52\xbe\xb3\x88\x11\x1d\x6c\xa1\x09\xf0\x0b\x71\x83\x97\x95\xd4\xaa\xd3\xfc\xda\xca\xd3\x8a\xd9\xce\x1c\x24\x3c\xaa\x15\x93\xf3\x8a\x26\x1c\x22\x05\xf3\xd5\xb2\xe0\x63\x71\xce\xfe\xd3\x26\x42\x2d\xbd\x87\x26\xc5\x86\x76\xec\x15\xd3\x0c\xec\x48\xb6\x08\x65\xa7\xac\x1e\x36\xd0\xdd\x98\x84\x2c\xb4\x62\x06\x72\xfd\xe9\x40\xd6\xfd\x06\x4a\x8f\xe1\x63\xcb\x3e\x27\xdf\x3c\xbc\x7a\x10\x16\x14\x25\x27\xa9\xf4\x32\x75\xa6\x05\x79\xb2\xea\xee\x26\xdb\x90\x0a\x67\x5a\x09\x94\x38\x08\x60\xa4\x9c\x8b\x70\x2c\xde\x6b\xe0\x2f\x96\x98\xf3\x68\x41\xf3\xf2\x6e\x31\x65\xdc\x3e\xa1\xf4\xd1\x8b\xfe\xfc\xf0\x08\xa4\xc9\x3d\x15\x48\xbd\x87\x42\x20\x6d\x72\x83\x16\xac\xcc\xa6\xad\xb3\x3b\x81\x4c\x54\x2a\x71\xe1\x68\x01\xc7\x33\x12\x9c\x7b\x35\x22\xf3\x82\xab\x18\x89\x7d\x63\x39\xf3\x51\xc7\x89\x24\x32\x00\x46\x24\x44\x84\x21\x60\x0a\x4c\x4c\xfd\x73\xac\x7d\xd6\x3e\x21\x90\x30\x83\x94\xdb\x16\xfe\xdf\xf6\x46\x44\xc5\x27\x05\xb8\x46\x9b\xe2\x4f\xff\x67\xed\x85\x56\xcd\x65\x0c\x74\x9f\x89\xd5\x28\xec\xf5\x70\x5e\xbb\xb0\xe3\x9c\xb5\xe3\x9c\x35\x7c\xe8\xe0\x1d\xe7\xac\x7b\xe2\x9c\x35\x50\x32\x3c\xb6\xe7\x4b\xb3\x27\x0e\x7d\xfe\x70\x81\x64\x58\x28\x10\xee\x41\xf5\xa9\xc7\xd1\xa4\x22\xfe\xf9\x2d\x1c\x1e\xf6\x8f\x7b\x4e\x13\x0b\xd9\x0e\xd5\xeb\xe9\xeb\xff\x06\x59\x52\x44\x72\x5b\xcd\xd4\x36\x89\x0c\x21\xf6\x55\xb9\x4c\xc8\x05\xbd\x06\x32\xa8\x8d\x02\xc7\x98\xca\x75\x8d\x3e\xca\x96\xcf\x63\x03\xca\x72\x1d\x1a\x9a\xf6\x0b\xcb\x23\x83\x73\xe7\x9b\xec\x11\xab\x91\x09\xbe\x15\x54\x9f\xda\xa3\x88\xca\xa2\x76\xec\xd1\x22\xa9\x28\x4c\x32\x19\x0b\x89\xdb\x32\x90\xc1\x64\xd7\x27\x71\x3b\x08\x69\x1b\xc6\x7f\x36\x93\x30\x0a\xc2\x5a\xf5\x3f\x0d\x29\xf7\x80\x7e\xd1\x71\x25\xff\x86\x1f\x5b\x2a\x64\x0f\x39\xe0\xf7\xa8\x7b\x95\xff\x34\x50\x7d\xf2\x89\xc6\x7d\xeb\xde\x66\x13\x8b\x55\x0e\x13\xae\x3f\x81\xbd\x09\x82\x06\xed\xe1\x04\x1f\x01\x64\xb8\xed\x2d\xaa\x1d\x84\xbe\xe1\xe4\x30\xfa\x86\xe0\x91\xd1\x27\x08\x87\x4b\x47\xd5\x27\x04\x76\xcb\x74\x2c\x59\x90\x50\xad\xde\xa3\x09\x9c\x65\x16\x8a\xc0\x3b\x52\x7b\xc2\xe5\xc5\x7f\xee\x1b\xc9\xe6\x20\x4c\xfc\xb2\x8f\xcf\xc4\x9a\xa7\xf7\x46\x71\x81\xa8\xce\x64\x5f\x13\x33\x99\x97\xed\x13\x2a\x69\x49\x1a\x05\x47\xd2\x28\x2c\xbb\x9e\xf7\x14\x28\xad\xf2\x82\xbb\x64\x5f\x6e\x9a\x8b\xa6\x23\x4b\x7b\x6a\x51\x60\x00\xf8\x23\x78\x5b\xe9\x42\x2a\x58\x16\x75\x22\x75\x0f\x80\xfd\x3f\x40\x2b\x20\x15\x85\x87\xeb\x72\x7a\x82\x9c\xe6\x81\xb7\x94\x9a\xde\xe5\x13\x47\xdf\xda\x98\x30\xb6\xd3\x2a\x94\x22\xbd\xde\x18\x7b\x3f\x0c\xd0\x30\x5c\x9f\xda\xc7\x0d\xa5\x48\xdb\xf1\xbc\x79\xa7\x79\x9a\xe9\x26\x3c\x8d\x6e\xc2\x63\xba\x09\x47\xd1\x4d\x50\xd7\xe7\x20\xe3\xab\x9a\x59\x4f\x3b\x2e\xab\x9f\x62\x97\xd5\x93\x03\x35\x2c\xb3\xe8\xe4\x20\x0d\x0b\x10\xf6\x68\xd7\x84\x4e\xc1\x42\xfd\x1a\x70\x6b\x62\xd1\xe9\x46\x13\x8e\xdf\x9a\x88\x70\xd6\x9f\x21\xa7\x63\x11\xe4\x30\x94\x58\xdb\xf0\xd3\xaa\x57\xc9\xbe\x24\xfa\x60\x2a\x13\x5c\x45\x4a\x76\xb7\x55\x4a\x0e\x76\xa4\xe4\x81\x52\x72\x92\x95\x92\x93\x7b\x29\x25\x3b\x1a\x29\xd9\x19\x20\x25\x87\xc5\x52\x72\x94\x91\x92\xa3\x4f\x4e\x4a\x56\x7d\x86\x3e\x01\xeb\xb6\xa7\xbe\x35\x4f\xd8\x05\x36\xab\x63\xa1\x9e\x93\x05\xdf\x63\xdc\x1a\x8d\x83\xd1\x05\x1c\x8f\x76\x43\x77\xc9\x89\xf1\x68\xdb\xc5\x5e\x6b\x94\x50\x8e\xc0\x9f\xe0\xaa\xcd\xb4\xd3\x21\xd5\x80\x85\xa9\x06\x0c\x5b\xb5\x10\x34\x60\xf7\xd3\x61\x27\xd5\x3c\x8e\xc6\xa3\xae\x3f\x8a\x67\x06\xe8\x8c\x41\xd7\x9b\xe1\x26\xb2\xbc\x86\xc4\x5d\xf4\xad\x1a\xae\xc7\x0d\x3b\x44\x78\x9b\x34\x11\x2d\x5b\x75\x04\x46\x22\xfe\x44\x53\xf8\xec\x42\xd4\x51\xc3\x77\x16\xb1\x81\xf8\x69\xcc\x53\x85\x00\x95\xfd\x20\x04\xf3\xdc\x17\x6e\x34\x4b\xbf\x88\x87\xb6\xb9\x4f\x30\xd4\xca\xdd\x81\x79\x5d\x36\x57\xa1\xba\xb6\x2f\x12\x2d\x89\xf9\x70\x4b\x25\x97\x15\xe1\x8d\xd8\x7e\x6a\xa4\x43\x1d\x6a\x8b\x7c\x1e\x3b\xa7\x8f\x3a\x5d\xd4\x55\x7e\x2d\x3e\x2a\x17\xe1\x5c\x2e\x97\xb5\x81\x03\x02\x7e\x37\xbd\x09\xe7\xa0\xc4\x0e\xcc\xb6\x24\xa3\xb5\xb3\x36\xdf\xb6\xec\x71\x9f\xb3\xf9\xca\x0e\xf8\x21\x7d\xff\x7b\x9f\xbb\x3f\xa4\x8f\x7e\xfb\x75\x57\xb6\xf9\xba\xc2\xe6\x8b\xed\x44\xb6\xf7\x26\x19\x7b\xaf\x6f\x59\xa8\x43\x88\x97\x49\x08\x2a\x5a\x95\xfb\xc9\xfa\x4e\x9a\x8c\xcb\xa7\x18\xef\x75\xd4\xe9\xf6\x2d\xd4\xdd\x6c\x01\xe9\x56\x5d\x5b\x12\xf3\x84\xb4\x33\x20\x6e\x27\x5c\x11\xec\x58\x40\xe6\x84\x18\xa4\x9a\x54\x0b\x6d\xcf\xe2\x52\x02\x2c\xf1\xd8\x86\x1a\xbb\xbc\x46\x79\xa1\xc7\x33\x71\xad\x22\x49\x5a\xb2\x31\x38\xdf\x04\x23\x4c\x29\x86\x64\x54\x30\x22\xfd\x6f\xc1\x47\x9d\x29\xba\xb8\xcb\x69\x4d\x2d\xec\xe1\x18\xcb\xdd\x55\xa5\xd0\xc2\xee\xa2\xd0\x36\x37\xd1\x55\x6b\xbc\x3a\x92\x66\x62\xf8\xc3\xdd\xcd\xf4\x11\x7a\x90\x48\xb1\x35\xe2\x97\x4a\xe9\xbe\x97\x61\x33\xd4\xf5\x74\x63\x5c\x37\x81\xea\x48\x38\x31\x81\xb6\x0d\x57\x22\xd4\xfa\xd9\x0b\x97\x0e\x4d\x43\x8e\x85\xda\xaa\xe7\xf5\xa2\x4e\x66\x21\x2c\xdb\x44\xdb\x4f\xe3\xb1\x40\x52\xb3\xe3\x84\x13\x4e\x3c\xac\xcf\xb5\x20\x06\xb1\xc2\xe8\x0e\x79\x2f\x0c\x17\x5c\xd9\xd2\xb1\xbb\x4c\x9c\xe8\xf5\xc6\xcc\x81\x17\xc3\xf8\x5d\x2f\x46\x84\xea\x0d\xe4\x13\xe6\xdf\xb5\xc7\xaa\x88\xdf\x19\xa1\xcc\x2c\x27\x54\x0e\x8a\x6c\xac\xb9\x7c\xb4\x6f\xcc\xf4\x6d\xd3\xb1\x23\xa6\x6b\xb1\xac\x72\x2b\xf0\xc9\xb1\x62\x86\xe5\x6e\x12\x75\x4c\x87\x71\x12\x16\x22\x5c\x60\x08\x44\x8e\x92\xfd\x7d\xa4\x49\x6b\x1f\x70\xb7\x89\xb5\xea\x12\x14\x02\x3b\xe9\xb7\x5d\xdf\xf1\xbc\x95\x55\x82\x80\xdf\xeb\xb1\x1b\x4c\x51\x99\xa1\xdc\xeb\x71\xc8\xb4\x44\x4e\xb7\x6d\xba\x70\x8e\x04\xfd\xf4\x15\x74\x3a\x52\x5b\xbf\xeb\x16\xa6\x77\xdd\xfc\xad\xdf\x75\xf3\xf3\x77\xdd\xfc\x8d\xee\xba\xf9\xe9\x5d\x37\x7f\xc8\xbb\x6e\xfe\xe6\xef\xba\xf9\x96\xda\xd3\xdc\x78\x0d\x7f\xdb\x8d\x7a\x9f\x25\xcd\x38\x09\xf1\x27\x77\xe5\x2d\xbc\x6f\x57\xde\xe4\x50\x64\x26\x46\x93\xf4\xa1\xfc\x7a\xa5\x81\x5c\x5b\xc8\x2a\xfe\x8c\x61\xd4\x7c\x14\xd8\x61\xbd\xda\x48\xcd\xcd\x84\x72\x1c\x8c\xcd\x60\x6b\x41\xd4\xe9\x8a\x3b\x44\xab\xb0\x7d\x3d\x5f\xca\xbd\xf0\xd8\x1d\xfd\x32\x23\x5c\xa6\xa2\xbf\x71\x37\x4d\xea\x9a\x41\x0b\xef\xd0\xbb\x1d\x7a\xb7\x43\xef\x76\xe8\xdd\xe6\xe9\xdd\xa1\xa0\x85\xb7\x81\xe6\xb1\x6a\xee\x1b\xdd\x23\x24\xaf\x1b\xb8\x7e\xbc\x43\xf8\x76\x08\xdf\x0e\xe1\xdb\x21\x7c\x9b\x24\x7c\x41\x0b\x1f\x27\xe4\xe3\x6e\x29\x5f\x5a\xcf\xfd\x23\x7d\x7e\x73\x6b\x34\xef\xae\x29\xde\x83\x16\xef\xe4\x11\x24\x0d\x3b\x84\x61\x58\xc2\x20\x6c\xfa\x62\xe6\x2b\x1b\x98\xff\xf1\xb8\x1d\xf7\x2d\x64\x18\x77\x45\x10\xc8\xee\xbc\x5f\xb4\x00\xfb\xad\xff\x9f\xbd\xb7\x7f\x6f\xe3\x36\x12\xc7\x7f\xd7\x5f\x41\xee\xb5\xf4\x22\x04\x29\xca\x69\x7a\xf7\xa1\x0c\xeb\x9c\xc4\xb9\xfa\x1a\x27\x39\xdb\x69\xaf\x47\x33\x2a\xc4\x05\x45\xd4\x4b\x80\x05\xb0\x96\x54\x91\xdf\xbf\xfd\xfb\xe0\x6d\x17\xfb\x46\x51\x2f\x56\x92\x96\x7d\xfa\xc4\xd4\xe2\x6d\x30\x18\x0c\x66\x06\x83\x19\x39\xb8\x30\x21\x20\xf6\x22\xd0\x5e\x04\xfa\x27\xe2\x73\x7b\x11\xe8\x2e\x22\xd0\xe7\x81\x08\xa4\x05\x1e\x23\xf7\x3c\x9d\x42\x8c\x8a\x07\xc9\xbd\x1e\x87\x12\x59\xa7\x09\xd6\xeb\xb9\xe7\xd9\x19\x4c\x11\x73\x50\x1d\xa4\x03\x44\xfd\x95\x97\x44\x83\xa3\x2e\x42\x71\x86\xf0\x09\x1b\x2a\xfe\x2d\xbf\x20\xe2\x2b\x6c\x9c\xa9\x28\x4b\xc8\xe5\xf7\xf3\x98\x96\xbf\xc3\x14\x8c\x59\x51\x08\x53\x00\x7a\xbd\x0c\x21\x94\xfa\x1d\x21\xef\xce\x60\x5f\xb2\x44\x9a\x18\x35\x8f\xc5\x62\xff\x9e\xe1\x74\xe7\x60\x7e\x7b\x71\xeb\x9f\x8b\x0d\xed\x99\xd0\xad\x99\x50\x21\x6d\xe9\x45\xf1\x27\xed\xb3\xa7\x85\xb7\x96\x25\x20\x31\x94\x0b\x3a\x57\x71\xe0\xeb\x42\x3e\x12\x71\x55\x76\x1e\xcd\xaf\xad\x11\x62\x1b\x70\x0f\xc1\xec\xa5\xd9\xc7\x8f\xc5\x35\x34\x59\x16\xc6\xf9\xc7\xe0\x1e\x45\x7c\x4a\x6e\xfe\xcb\x7e\xad\xb1\x11\xc5\x9d\x39\xe7\x3d\x27\xfe\x8b\xd8\xb5\x05\x53\x76\xec\xff\x53\x04\xfb\xb4\x3d\xdc\x21\xe4\x27\x6c\x8a\xf7\x79\x52\xe2\xc4\xe3\x07\x88\xf2\x79\x62\xe7\xe6\x9f\x02\xff\x4c\x71\x33\x3f\xc1\xf1\x1b\xfa\x60\x7a\x4f\x60\x51\x62\x99\xae\x99\x5b\x3c\xdd\xce\x1b\xd7\x9d\xff\x90\x2d\x81\xe6\xb4\xba\x3b\x37\xfc\x26\xe8\x18\xe1\x66\x9e\x28\x1b\x79\x22\x0e\x79\xa2\xbc\x3d\x4f\xcc\x0d\xf7\x7b\xa6\xb8\x67\x8a\x7b\xa6\xb8\x67\x8a\x77\x63\x8a\xde\xee\xfe\xf0\x5c\xd1\xf7\xfc\x58\x6c\x71\xa1\x96\xe9\x40\xe2\xf9\x63\xc4\x08\x0d\xa6\xa1\x1a\xa7\xd1\x28\x7b\x6f\x40\x38\x39\x75\x9b\xc9\x51\x36\x4b\xb3\x84\xdc\x49\x7f\xde\xdb\x27\xf7\xf6\xc9\x5f\xac\x61\x60\x6f\x9f\x7c\x58\xfb\x64\xf7\x28\x6f\xdd\xeb\xd1\x5e\x2f\xae\x98\x2c\x4f\x8c\x15\x72\x47\x03\x24\x18\xbb\xda\x79\x39\x00\x10\xdf\xfd\x5c\x78\xe5\xb8\xd8\x3d\xad\x07\x07\xbb\x73\xcd\x84\x5c\x0e\xf8\x7c\xcf\x35\xf7\x5c\x73\xcf\x35\xf7\x5c\xb3\x95\x6b\x0e\x6e\xe2\x9a\x3b\x33\xcc\x07\xe4\x95\xa6\x9b\xc7\x32\xb4\xa6\x58\xaa\x3d\xbf\xdc\xf3\xcb\x3d\xbf\xdc\xf3\xcb\x4f\xc0\x2f\x35\x7b\x79\xd5\xce\x33\x4b\xc5\xf7\xe3\x9b\xdf\x16\x5d\x3d\x16\xef\x64\x5c\xed\xaf\xb7\xff\xa5\xf9\xcb\x9e\xbb\x3c\xe6\xf5\xb6\xe4\x4b\xd2\x6c\x61\xeb\xde\xf7\x76\xfb\x3b\xae\x1e\xf7\x82\x7b\x85\x93\x01\x61\xc9\x5e\xe2\xda\x4b\x5c\xff\x54\x1c\x71\x2f\x71\xdd\x57\xe2\x6a\x7e\x7a\x91\xbb\x20\x22\x84\xf8\x49\xd4\x89\xc6\x1c\x4a\x2b\x96\x65\x45\x89\x3c\x19\x8d\x25\x4c\x11\xed\x47\x91\x5e\xe1\x18\xf7\xa3\x08\x38\xa0\x9f\x8f\x5c\x6c\xea\xd4\x33\xdd\xec\x18\xa4\x7d\x84\x0f\xfc\x87\xe7\x59\xaf\x17\xa7\x28\x1d\xca\xec\xcc\x12\x75\x3c\x82\x19\x00\x7e\x43\xa4\x77\x67\xb0\x3f\xe0\xe4\x25\x4b\x1e\x93\xbb\x4a\x85\xc5\xfe\x69\xdb\x9e\xbf\xee\xf9\xeb\x9e\xbf\xfe\x8c\xfc\x15\xe1\x7e\xba\x8d\xc1\xfa\xa2\x41\x06\xfd\xcf\x87\x62\xb8\x6f\x35\x07\x7c\x2c\x96\x2b\xc8\x8a\xec\x9f\x12\xef\xf9\xed\x9e\xdf\xfe\xcb\xf2\xdb\xa2\x8f\xdd\x9e\x13\x97\x79\xee\xc8\x70\xdc\x28\x82\x19\x1a\x1d\x67\xcf\xf0\x71\xd6\xef\x03\xd9\x47\xf4\xe0\xfe\x8f\x5e\xde\x18\xe6\xf4\x88\xac\x30\xc5\x33\x32\xc0\x69\x25\xfe\xef\x8e\x0d\x6f\x11\x11\x78\xcf\x3b\x7f\x2d\xbc\x93\xdd\xdd\xb3\xf2\x0e\x3e\x95\x21\xef\x0c\xdd\x2a\x77\xe4\x9d\x77\x72\xb0\x2c\xcf\xf4\xd7\xce\x3b\xd9\xa3\xf1\x4e\x5a\x72\xdb\x84\xbf\x03\x90\x22\xa6\xf9\x26\x47\xcc\x72\x49\xa6\xc5\x50\x59\x30\x4b\xac\xb9\x28\x86\x19\x62\x93\xcf\xa7\x30\x2d\xee\x60\xb2\x5e\x2f\xf3\xb9\xe6\x47\x50\x15\xdc\x4f\xb3\x15\x10\x4f\x28\xe4\x50\xc2\x14\x76\x47\xd3\x7b\x18\x4b\x5d\x7f\x2f\xd2\x14\xd1\x66\x8e\xca\x1b\x39\x2a\x0d\x39\x2a\xbf\x03\x47\xdd\x4b\x97\xff\xcc\x1c\x72\x2f\x5d\xfe\xba\x38\xe4\xcf\xa6\xcd\x7f\xb1\x8b\x64\x29\xda\x78\xa6\x68\xe0\x99\x70\x86\xc4\xe4\x77\x53\x38\x2f\x3e\xcf\x7a\xbd\x99\x89\x48\xce\xf3\xb7\x11\x2e\x32\x36\xd7\x9f\xd3\xf5\x7a\x6e\x61\x5a\xa0\x28\x3a\x98\xf7\x7a\xf1\xa2\x8f\xa2\xf3\x08\xc0\xd4\xfd\xa6\x11\x80\x09\xb2\xd1\xdc\xcf\x5f\x5e\xae\x62\x0e\x17\xb9\x66\x4f\x87\x8e\xa7\xc5\x09\x94\xf7\xe7\xc5\x8f\x25\xda\x9a\x4d\xb7\x67\xc3\x7b\x36\xbc\x67\xc3\xff\xf2\x6c\xf8\xb6\x46\xd5\x51\x6e\x52\xf5\x7d\x07\x76\x55\xea\x08\x09\x83\x71\xfe\xf3\x5e\x8c\xf1\xad\xee\xe3\xd1\xd8\xe2\x2a\xa5\x7b\xdb\xe7\x9e\x2d\xee\xd9\xe2\x9e\x2d\xde\xd6\xee\x19\x45\x63\x5e\x04\x56\x34\x9c\x24\xc6\xf7\x61\x7c\xba\x87\x47\x63\x7c\x0a\x0b\xb5\x0f\xa1\xb6\x67\x7f\x7b\xf6\xb7\x67\x7f\xf7\x7d\xa2\x68\x18\xe5\x8e\x21\xd2\x46\x60\x6c\xab\x17\x61\xd2\x46\xf7\x73\x20\x37\xb7\xe5\x8f\x1a\x1a\x2d\x77\x02\xd8\xb3\xce\x3d\xeb\xdc\xb3\xce\x3d\xeb\x7c\x60\x85\x3a\xf7\x31\xb2\x4a\x75\xf1\xe7\xfd\x14\x6b\xdf\xcf\x63\xb1\x49\xc5\x07\x33\xbc\x24\xe9\x60\x86\xe5\xde\xf6\xb8\x67\x95\x7b\x56\xb9\x67\x95\x47\x60\x32\xf2\xd5\x8a\x0c\xba\x42\xf3\x4a\x01\x2a\x22\xa4\x55\xa9\xa3\x4e\x04\x86\x4b\xbc\x6a\x89\x5d\x6e\xd2\xcd\x9f\x90\x71\x14\xf9\xc4\x92\xc4\x67\xb3\x1a\xe9\x0e\x7f\x5c\xad\xf2\x87\x8b\x45\x0d\x4b\x80\x47\x00\x6c\x00\x18\xfe\x8d\x53\x16\xdf\x2b\xf8\xf9\x3b\xfe\x95\x66\x74\x7a\x98\x47\x64\xae\x1f\xc8\x19\x3e\xdb\x33\xd7\x3d\x73\xdd\x33\xd7\x3d\x73\xbd\x07\x73\xb5\xfc\x6f\x70\x3f\x06\xf8\x47\xcd\x8c\x1e\x99\x01\xa6\x7a\x3e\x7b\x06\xb8\x67\x80\x7b\x06\xb8\x67\x80\xb7\x64\x80\xf7\xe1\x75\x79\x37\x8f\xc8\xeb\x56\x58\xce\xf0\x5e\x95\xde\x33\xbb\x3d\xb3\xdb\x33\xbb\x07\x54\xa5\x3d\x5b\xf8\x99\xf5\xe7\x1f\x0c\x7b\x7b\x64\x9e\x2a\x09\x53\x84\xcd\xc8\x9e\xab\xee\xb9\xea\x9e\xab\xee\xb9\xea\x6d\xb9\xaa\xf7\x04\x3f\x8c\x7f\x7a\x2f\x3f\x7b\x7f\xb1\x9e\x0c\xbb\x27\x53\xf3\x13\x1c\x9e\xc3\xc6\x88\x47\x65\x96\x7a\xaf\xd8\x47\xef\xf8\x5b\xc7\xc0\x1e\x9b\x6f\x32\xfc\x61\xcf\x34\xf7\x4c\x73\xcf\x34\xf7\x4c\xf3\xfe\x86\xc7\xd3\xfb\x49\x8e\x6f\x35\x33\x7a\x64\x06\xa8\xa8\x4a\xf7\x0c\x70\xcf\x00\xf7\x0c\x70\xcf\x00\x7f\x89\xba\x78\xe7\x7e\x2c\xf5\x9d\x66\x6f\x8f\xcc\x52\x33\x3d\xb7\x3d\x4b\xdd\xb3\xd4\x3d\x4b\xdd\xb3\xd4\x5d\x58\x6a\xa8\x45\xdf\x83\xd7\xe5\xdd\x3c\x1a\xaf\x13\x74\xb9\x8f\x20\xbc\x67\x73\x7b\x36\xb7\x67\x73\x37\xb2\xb9\xdc\xc2\xf8\xbe\xbf\x9e\xbc\x97\xef\xb3\x6f\x5e\x7e\xf3\xcd\xfb\xcb\x17\xa3\x69\xff\x37\x87\xe7\xf0\x7e\x97\x2e\x82\x2e\x1f\x31\xb4\xaf\xe1\x7b\xfb\xd8\xbe\x7b\xce\xb7\xe7\x7c\x7b\xce\x77\x0b\xce\xf7\x53\x85\xef\x3d\x04\xdb\x7b\xd4\x00\xbb\x9a\xf1\xed\x59\xde\x9e\xe5\xed\x59\xde\x9e\xe5\x6d\xd7\x69\x05\x5d\xde\x4b\x99\x15\x74\xf9\xb0\x4c\x4d\xaf\xfe\xe0\x02\x6b\x8c\xca\xc3\xb3\x8c\xa6\x89\xfb\xab\x29\x3c\x6e\x58\xb9\xf1\xe3\x21\xe3\x7c\x15\x7e\xa9\xc6\xcb\x85\xe2\xe1\x32\x7e\x87\x2c\x73\x94\xaf\x0c\xb9\xe8\x08\x5f\x25\x26\x60\x73\xc3\x94\xcd\x1b\xf5\x9b\xe6\x7a\x68\xff\x1d\x2c\x31\xc3\xe7\x1a\x35\x4d\x75\xc2\x59\x37\x56\x28\x63\xb7\x6d\x98\xc1\x9c\x8b\xc1\x4a\xf0\x25\x95\xb5\x68\xc3\x50\x40\x06\xe9\x7d\x31\xd8\xda\x40\x90\x73\x2a\x0d\x70\xd7\x84\x65\x4b\xbb\x27\xc7\xdd\x11\x3c\x27\x6a\x1c\x70\x02\x87\x6a\x35\xf4\x0d\x36\xdb\x7a\xcd\xd8\xad\xfb\x2d\x9a\x6c\xed\xf9\x9c\xa8\x3f\x7b\x62\xdc\xb1\xe7\xa2\xc9\xd6\x9e\x4f\x05\x91\x44\xed\xdc\xab\xad\x7e\x13\xac\x3f\x10\x96\x50\x76\x6e\xc7\x7f\xab\xb0\x22\xb7\x01\xbb\xde\x7a\xeb\x78\x0b\x2c\x4b\x2d\x76\x47\x51\xad\xe5\xd6\x71\xde\x11\xe9\x30\xba\xe3\x00\xf9\xe6\xdc\xda\xad\xd9\x2b\xb7\xea\x97\xed\xd4\xaf\xde\x61\xdf\x70\xf1\x83\xdb\x5f\xbb\x75\x4d\x83\xae\x6f\x60\x27\x35\xfe\x77\x47\xa9\x30\x38\x94\xf4\x29\xe4\x0e\x2b\x73\x18\xb9\x78\xc4\x4a\x1f\x47\x6c\x58\xc0\x8f\xc2\x3f\xd6\xeb\xee\x11\x64\x5a\xb2\x98\xd3\xf3\xcc\x96\x77\x47\x30\x32\x6c\x20\xa2\x26\xce\x47\xcc\x86\x17\x82\x2a\x57\xd6\x8e\x34\x36\xfc\x40\xae\x20\x03\x9b\xbb\x9c\x5b\x0d\x07\x95\x40\x01\x8a\xf3\x89\x93\x58\x9f\xd7\x75\xf9\x2c\x2e\x04\x07\x3e\xef\x28\x00\x1a\xe5\x90\xaf\x30\x63\x5c\x75\xb4\xfc\xd5\xc1\x9d\x59\x8a\xa5\xec\x60\xd9\xc1\xb9\x5c\x1d\x81\x0d\x88\xd5\x82\x4a\x48\x00\xd4\xff\x1a\x49\x0b\xa9\x8d\x81\x48\xb3\xd5\x3c\x99\x1d\x22\x30\x66\x68\x72\xfd\x81\x5c\x8d\xa3\x33\x72\x4e\xd9\x0b\x79\xc5\x66\x11\xb4\x13\x6b\xd8\x33\x0b\x2a\x37\x1b\x68\x1b\x10\x96\xb4\x55\xcf\xeb\x68\xda\xf8\x91\x29\x9a\xb6\xf6\xd9\x1d\xe5\x95\x13\x72\x96\x9d\xbf\x62\x73\xde\x5a\x79\x32\xcd\x2b\x3b\xbe\xd5\x30\xf4\x14\xf4\x7a\x4a\x8b\xe2\x5e\x6a\x85\x0c\x40\x6a\xbe\x41\x0a\x20\xd9\xc4\xa1\xa4\x20\x6e\xa0\xf3\x16\x12\xdf\xe5\xf0\xdc\x3d\x82\xfe\x6d\x95\x23\xd6\x90\x27\xf3\x97\x96\x89\xf3\x5f\x30\xd6\xfc\xdd\xd4\x08\xb9\x12\x04\x27\xff\x22\x41\xe6\xff\xd9\x59\x3e\x47\xa3\x62\x67\xe3\x82\x73\xf2\x7e\xdf\x30\x60\xd9\x76\x24\x68\x7d\xe1\x31\x0f\x05\x2a\xdf\x38\xc9\x93\x24\xa8\x7b\xe4\x3e\x2a\xb2\x94\x66\x5d\x5f\xe3\x55\x78\x78\xb8\xdf\xe4\x52\xbd\xe3\x1f\x08\xd3\xfb\x05\x9b\xf9\x30\xc8\xa1\xcc\x97\x5a\x1f\x28\xdc\x1f\x28\x85\x30\x5c\x63\xd2\x35\x08\xd6\xeb\xd8\xe4\x0a\xf0\x6d\x2c\xb0\x8d\xa0\x8e\x40\x7e\x06\x6c\x3d\xb2\x34\x74\x04\x61\xbf\xcb\xf3\xfc\x58\xbd\x5e\x1e\xf0\x2b\x2f\x9c\x8c\xa6\x27\xe1\x1f\xe3\xf2\x74\x63\x00\x55\xbd\xa7\xa3\xa0\xc9\xd1\x74\xec\x88\x80\xce\x0d\xe8\xf9\x4c\x62\x10\xa0\x56\x8b\x9c\x9a\xdb\x16\x8b\xe8\x16\xb0\x98\x89\x59\x44\x92\x74\xe6\x5c\x74\x0a\xd7\x19\x18\x75\xce\x32\xd5\xa1\xaa\x43\x65\x07\xa7\x9a\x61\x5c\x75\x56\x56\x78\x1d\x46\xc0\xb3\xd9\xbc\xc7\x83\xe0\xc0\x76\x43\x4b\xa2\xfb\xb9\x3e\x27\xaa\x23\x15\x9e\x7d\x08\x05\x55\xf3\x61\x03\x53\x7c\x46\xd2\xb1\xd2\xb4\x7d\xf3\x29\x6f\x0f\x9c\xee\x0e\x93\xf3\x5d\xec\x30\x35\x43\xc5\x99\x10\x84\xa9\xb4\x3c\xc1\x60\x9c\x84\xa4\x44\x11\xa3\xf2\xee\x2c\x66\xd8\xd8\x1a\x01\x36\xe8\x3f\xc8\x2d\x04\x8f\x8e\x88\x83\xc6\xa6\x92\x8c\x01\xb8\x51\x1a\x09\x1a\xcd\x52\x82\x45\x0c\xac\x7c\x42\x63\x16\xc8\x27\x1c\x40\x69\xbe\x41\x59\x93\x4f\xe4\x4d\xf2\xc9\xd5\x8a\x14\xca\x7d\x28\x72\x80\xeb\x1b\x9a\xd6\x94\xf0\x9b\xe4\x9b\x2d\xe6\x8e\x4f\x63\xec\xd0\x54\xad\x10\x39\xc8\x8d\x1e\x6a\x73\xa0\x09\x4b\xe5\x76\x8f\xc8\xc1\xee\xc1\xba\x49\x6d\xa9\xda\x37\xee\xa6\xb4\x7c\xba\xb3\xf2\x0e\x88\xf3\x9c\xa6\x84\x39\x61\xf7\xbb\x61\xdf\x90\x80\x0d\x24\x81\xad\xa1\x52\xd3\xef\x27\x2b\x49\xe9\xaa\x85\xf1\x00\xd5\xb7\x02\x41\x22\xdf\x01\x70\x47\x81\x55\xfd\x3c\x02\xab\x30\x63\xb8\x91\x5a\x25\x55\x65\x6a\xde\xc9\xe4\xed\x7c\x1c\x6f\x6f\xf8\x86\x4d\x56\xef\x93\xd2\x6c\xc6\x0f\x60\xeb\x3e\xb1\x73\x73\x87\xd3\xe6\x57\x26\xa3\x9a\x25\x21\x9a\x20\xad\xdd\xa9\x44\x8c\x39\x43\xb5\xf4\x5a\xb7\x1a\x19\xf3\x71\xcd\xc6\x83\x68\x70\x56\xbe\xc6\xab\x83\x40\x0e\xf6\x42\xc3\xb5\x3b\x78\xc6\x23\xe8\xf8\xc6\xf8\x7a\xb3\x29\x72\xc0\xcf\xb9\x78\x89\x67\x8b\xc0\xdd\xd5\x49\x6b\x6a\x98\x9f\x44\x31\x00\xd7\x64\xe8\x3a\xea\xf7\xdd\xa0\x7a\x67\xbb\xb3\xc6\x70\x79\xd7\xfd\x44\x19\xaa\x98\x6a\xb9\x4a\x2b\xc4\x40\x1f\x03\x81\xd8\x5c\xd8\x7e\x62\xe0\xfb\x7c\x3e\xda\x58\x33\xf8\x3b\x22\x55\xaf\x57\xfc\xce\x19\x82\x9d\x71\x1c\xd7\x75\x6e\x6a\x5f\x6b\x01\x70\x50\x65\x95\x97\x6a\xb0\x24\x58\x66\x82\x88\x43\x49\xc4\x47\x3a\x23\x9a\xef\x07\x9f\x77\xe5\x99\x0f\x23\x4f\x2b\x67\xeb\x7f\x6b\x61\x19\x92\x4b\x45\x58\x12\x5f\x53\x46\x55\xed\xa0\x3d\x95\xd9\x8a\x88\x21\x5e\xad\xd2\x2b\x2b\xed\xe6\x12\x9a\x93\xc2\x66\x98\x7d\xc4\x12\x25\x7c\x66\x3e\x0f\x67\x82\x60\x45\x5e\xa6\x44\xff\x15\x47\xb6\x38\xf2\x95\xd5\x25\x0a\x5a\x69\x2a\xfb\x8a\x33\x8d\x8c\x38\x7a\x9a\x44\x60\x03\x2f\x68\xa2\x16\xe3\xfa\x89\x55\x97\x15\x1b\xa5\xce\xa3\x69\x59\x84\xd4\xa7\x4a\x7e\xd2\xe9\xe3\xc4\x41\x31\x9c\x73\xa6\x90\x2a\xc0\x1a\xba\xc5\x78\xa7\x61\x21\x60\x68\xe0\xd8\xc0\x94\x32\x22\xc7\xe5\x63\xd9\xd2\x5d\x0d\xa0\xa7\x8d\x00\x3d\x0d\x01\x7a\xea\x01\xaa\x41\x22\x8a\xd3\x4d\x33\x37\xeb\x04\x7e\xf8\x9e\x1d\x9a\xac\x61\x6e\x08\xc8\xd1\xe8\x98\x3f\xf3\x7f\x1e\x73\xaf\xde\x61\xc4\x26\x7c\x6a\x74\xf0\x48\x8f\x5e\x28\x84\x12\xe1\xc0\xa3\x1c\x66\x68\x04\x53\x34\x3a\x4e\x9f\x79\xb0\x07\x47\xc7\xa9\xef\x66\x86\x1a\xb1\x21\x27\xe9\xb4\x6f\x1c\xd2\x0d\x52\x8e\xe3\xac\x8f\x66\xe0\xb9\x46\x27\xed\xf7\x61\x86\x66\xc0\x28\x2e\xf3\xf6\xe6\x61\xd3\x79\xd8\x74\x0e\xf2\x7b\x56\xba\x81\x73\xaa\x74\x93\xb7\xf4\x1f\xe4\xa1\x71\x0e\x99\x85\xce\xc0\x61\x38\x38\xa4\xa8\xb4\x06\xc3\xa5\xb9\x41\x3e\x7c\x9f\xf4\x0f\x83\x8b\xb8\xce\x6b\xac\x16\xc3\x79\xca\xb9\x88\x57\x58\x48\xf2\x4d\xca\xb1\x8a\x29\xf8\x4c\x1d\x6a\x25\x37\x94\x2c\x55\x83\xa8\xc4\x79\xaa\xe8\x4a\x1e\xce\xf8\x72\xc5\x99\x06\xe9\xd0\x96\xac\xf8\x8a\x7f\x6c\x31\x81\xb5\x36\x72\x25\x83\x33\x5c\xbf\xe1\xf9\x24\xdc\xc2\x32\x58\xf3\x39\xe7\x14\x0e\xf2\x3f\xd0\x84\x7c\x4d\x52\x7c\x35\x7e\xfa\xc5\x08\x9e\x3a\xd0\xfe\x84\x05\xc5\x4c\x7d\xa5\x35\xe6\x71\x54\x99\xea\x29\x95\xaf\x79\x26\xc9\x2b\x26\x69\x42\xc6\xdd\x23\x88\x0d\xf8\x72\x7c\xbd\xd0\x1f\xaa\xec\x47\x4b\x5c\x51\xb9\x51\x04\xbb\x47\x6e\xdb\xea\x26\x5a\xfc\x87\x38\x49\xde\x61\x71\x4e\xd4\xcb\x8f\x84\xa9\x6f\x35\xab\x66\xfa\x88\xa9\x76\xa7\xeb\x59\x28\x9b\xaa\x7b\xbd\x12\x27\xc9\x0f\x16\xe0\xe6\x5a\x76\x3c\xdb\xcf\x97\x58\x92\xf6\x41\xed\xd9\x67\xd8\xa6\xb2\xc4\xa6\x8f\x55\xbb\x14\x94\xc8\x38\x52\x66\x80\x08\x46\x1e\x7b\x11\x80\x1a\xe3\xf6\xbb\xa6\xd9\xa1\x2f\x39\xa8\xc0\xd6\x0c\xfb\x29\x4e\x92\x52\x49\x1c\xcd\x52\x3a\xfb\x10\xc1\xd2\xc9\x6a\xef\x7c\xf3\x71\x38\xa2\x08\xb1\xe1\x8a\xaf\x56\x44\xbc\xf2\x42\x88\xfd\x13\x62\x5d\x28\x0e\x8c\x48\x10\x47\x1a\xe7\xdf\xb3\x08\xf4\x7a\x11\xe3\x8c\x68\x76\x53\x2b\xe9\xba\x2f\x95\x85\xd3\x25\xbc\xd7\xeb\x62\x2d\xd0\x99\x0a\x54\xbe\x5d\xf0\x0b\xd3\x86\xf8\xd5\x04\xd0\x1f\x25\x16\xd1\x5b\x96\xa2\x19\xd5\x07\x6d\x88\x58\x6a\x58\x08\x33\xf6\x93\xf0\x04\x27\x2d\x64\x36\x32\x9a\xcf\xd6\xde\x52\x82\x3f\x92\xdd\x7a\x3b\xda\xda\xdb\x9c\xcf\x32\xc9\x33\x55\xed\xab\x11\x8f\xeb\xb5\xc5\x3d\xaa\xe1\x7e\xbd\x2e\xf0\x58\x42\xdf\x2d\x69\x34\x0e\x08\xb2\x99\x2c\x1e\x10\xcb\x30\x6c\x53\xd0\x93\x5c\xf0\x0b\x3f\xa7\x32\xb5\xe8\x2f\xba\xd4\x50\x8b\x7a\xc8\x25\x82\x61\x9b\x3a\x7a\x6f\x20\xdc\x2d\xa0\x34\xaf\x6f\xfb\x46\xa9\x8f\xd3\xbe\xdd\x4a\x10\x6c\x60\x95\x91\x56\x77\x86\xeb\xf8\x6b\x22\x95\xe0\x57\x5a\x7f\x03\xeb\x75\x6c\x65\x42\x91\x31\x2d\x9a\xcd\x48\x1a\x07\xa4\xa0\x71\xfd\x8e\x2e\x89\x88\x00\x80\x45\xc5\x14\x57\x65\xe1\x9d\xa7\xa3\x57\xf0\x54\x03\xea\xd8\xa8\x01\xbe\x5f\x0c\x59\x3d\x61\x22\x00\x2a\x47\x6d\xd3\x25\xd3\x6e\xa7\x66\xe9\xbc\x75\x25\xc3\xbf\x35\x1c\xbe\x5a\x55\xd3\x73\xbc\xe5\x31\x5c\x73\x53\xa9\x5e\x0b\xec\xbd\xf6\x7e\x0d\x5e\x7b\xf4\x5f\xe6\xb2\x8d\xfe\x53\x78\xed\xd1\x5f\xa0\x1d\xb1\xf1\x36\xeb\x7a\x9e\xd2\xd5\xf8\x9a\x30\x3d\xff\x44\x57\x85\x2b\x41\xf4\x71\xf1\xfd\x47\x22\xe6\x29\xbf\x18\x5f\x13\x39\xc3\x2b\xf2\x67\xaa\x16\x6f\xc8\x9c\x08\xc2\x66\xa6\xcf\x4d\x78\x11\x46\xca\xd4\xdc\x31\x9a\xa5\x51\x96\x0f\xe4\x05\xd5\xdb\x8a\xc5\x5e\x93\x8c\x06\x11\xb0\xee\x85\xe0\xda\x3c\xa2\x55\x7c\x15\x8d\x15\x8a\xce\xb8\x52\x7c\x19\x1d\x9c\x09\x82\x3f\x1c\x98\x22\x41\xcf\x17\xca\x14\xa6\x64\xae\x4a\x45\xae\xb6\x2e\xd3\x1d\x84\x45\xa6\xae\x2e\xb0\xcd\x37\xb9\x75\x39\x87\x58\xe6\xca\xbc\xc7\x29\xe9\xf5\xea\xfb\xef\x24\x56\xc8\xe8\x59\xaf\x98\xf1\x89\x1c\x01\xd8\xa5\xf2\x3b\xfc\x5d\xac\x40\xaf\x47\xe5\x37\x94\x51\x45\x62\x4d\xaa\xb1\x42\x23\x00\xc6\x0a\x11\x68\x7d\x31\x32\x67\xda\xf8\xca\xf3\xeb\x5c\x65\x31\x17\x78\xdf\xe1\x25\x91\xe3\x49\xd4\xc8\xc3\x13\xa3\xc9\x8c\xec\xbf\xdf\xb3\xaf\x16\x98\x9d\x1b\xbf\x9e\x24\x13\x58\x4f\x60\x3c\x82\x64\x3e\x27\x33\x35\x8e\x64\x6a\x04\x06\xb3\x68\xe3\x68\x61\x75\x1b\xd7\x9f\x53\x7c\xbc\xf8\x04\xb1\x10\xfc\xa2\xfc\x71\x60\xbe\x45\x90\x32\x46\x44\xa5\xc8\x7c\x2b\x77\xa6\xc1\x1e\xdb\x89\xe9\x83\x28\x53\x24\x19\x26\x64\x25\xc8\x0c\x2b\xca\xce\x5f\xa4\x14\xcb\x42\x60\x0b\xf5\xaf\x08\x5e\xd3\x64\x1c\x99\xb6\x81\xc2\x32\x6c\xae\x9b\x31\x45\xd3\x71\xf4\xbb\xe1\x68\x38\x8a\x36\x00\xba\xd3\x5a\x6b\x69\x8a\x5c\x2a\xab\x46\x1b\xbd\xcd\xac\x3e\x94\x2b\x3c\xa3\xec\x7c\x7c\x34\x82\x56\x8f\x78\x95\xd8\x3a\x29\xbe\xe2\x99\x1a\xe7\xde\x5a\x30\x5b\x25\x58\x91\x6f\xb8\xb0\xe5\x56\x82\xfc\x7e\x65\x35\xbf\xe0\xd3\x57\x9c\x29\x4c\x19\x11\x46\x33\x64\x74\x69\x10\xff\xb5\x5f\x80\xa7\xa3\x11\xe4\xcc\x09\x2e\xb6\x1d\x67\x5a\x46\xf0\xbf\xdf\x10\x96\x10\xe1\xff\xd2\xd0\xdb\xdf\xa7\x56\x58\xb2\x7f\xb8\xdf\x65\x84\xc6\x91\x59\xcc\xc8\xdc\xe6\x85\xd2\x93\xbf\x7c\x74\x5d\x80\xf0\x16\xd0\x7d\xb3\x36\xd5\x92\xf4\x6c\x3b\x03\x7e\x23\x2a\xb7\xeb\x2c\xa5\x8c\x09\x0a\xc5\xcc\x70\x17\x19\x31\xd1\x54\x38\x4b\x33\x51\xde\x96\x04\x27\x57\xba\xc8\xec\x73\x5b\xe0\xf0\x3b\x26\x48\x6d\x72\x71\x01\xca\x70\x06\xa1\xc4\x11\x02\x8d\x8c\xaf\xdb\xa9\x15\xb2\xdd\xd2\xda\xdf\xb7\x45\x8c\x6d\x56\x46\x8c\xfd\x76\x67\xc4\x58\x55\xe0\x3e\x93\xb4\x00\xd8\x49\x5a\xe2\xac\xcd\xcb\xd3\x6c\x59\x24\x2f\xa4\x65\x0b\x70\x5e\x0b\xe4\x5c\xeb\x24\xb7\x75\x6a\x8d\xd4\x1a\x3a\xbf\xbc\x7a\x95\xc4\x04\xd8\x5b\x6e\x62\xbf\x0d\x57\x58\x10\xa6\xbe\xe3\x09\xd1\xc2\xea\xa9\x30\xd4\xe9\x1a\xbc\x4a\xea\x88\xf6\x25\xdb\x21\x2a\xaa\x05\x20\x45\xe1\xed\xef\x80\xa8\x81\xb3\x2c\x00\xb3\xb4\xf5\xe1\x6b\x83\x57\xa1\xdb\x0e\x43\xad\xf6\x6e\xd8\xc9\x61\x99\x63\xa9\xce\x38\xaf\x81\x51\x37\xac\x77\x6c\x8d\x73\xa2\xbe\xbf\xd0\x9a\x94\x71\x62\x18\xa6\x9c\x7f\xc8\x56\x71\xe4\xec\xe9\x63\xdf\x9f\xbd\xac\xd4\xab\x9f\xa5\x89\xe5\x06\xc6\xbe\xdc\x34\x61\xdf\x66\x48\xe5\x37\x58\xaa\x2f\x75\x73\x18\x9d\xe2\x0b\x4c\x95\x79\xfb\x6d\x58\xa4\x9b\x81\xed\x8b\x54\xd0\x12\x92\x9c\xc5\x4b\x53\xa7\x60\xbd\xee\x06\x55\x6e\x18\xc0\xce\x60\x7b\x25\x7d\x2c\x79\x1e\x6e\x14\x4d\xc7\x45\xfd\x37\xf7\x97\x63\xd0\x6f\xc8\xdf\x33\x22\x73\xee\x7c\x5a\x67\xac\x37\xae\x42\xa4\x45\x46\x2d\x68\x36\xae\x86\x20\x92\xa7\x1f\x89\x75\x29\xb1\x5d\xc6\x91\xf5\x25\x1a\x13\xf6\x91\x0a\xce\x96\x66\xdb\x0f\x83\xbf\xd6\x6b\xdb\x97\xee\x99\xb2\xf3\x93\x91\xdd\x3b\x35\xe0\x34\x3a\xee\x78\x35\x21\x43\x43\x86\xc5\x53\x04\x27\x53\xb0\x81\x09\x4d\x5e\x31\x49\x84\x27\xd0\xbb\xdc\x7b\x98\x7b\x8e\x42\x7f\xd5\x7d\xfe\x68\xce\xb9\x17\x4a\x35\xd8\x1e\x6f\xee\xb1\xac\x22\x9f\x58\xf6\x6a\xed\x1c\x50\xaf\x5c\x17\x05\x3b\x30\x3f\x52\xb5\x7a\xbd\x83\xd9\xc6\x55\x3a\xb5\xed\x7e\x30\x65\x31\x70\x0c\xcb\xd9\x0f\xe0\x05\x4d\x53\x77\xbc\xde\x05\x31\x07\x35\x36\x51\xc6\xbd\xd6\xdf\xeb\x17\x7d\xf7\xf4\x2b\xba\xde\x40\x2d\xdb\x6b\x3d\xec\x0c\xcf\x3e\x40\xad\x5e\xe5\xe6\x53\x32\x34\x07\x8e\x96\xa0\x0e\xc4\x50\x90\x25\xff\x58\x36\xd7\xc6\x4c\xab\x3e\xb9\x61\x6e\x96\x12\xcc\xb2\x95\x31\x76\xe4\x36\xd5\x2a\x62\x13\x2a\x57\xdc\x64\x2b\xb4\x8d\xf4\xdf\x5a\x8d\x7d\x61\xe7\x13\xe5\x22\x4a\x64\x2a\x80\x87\xb3\x4f\xef\x6e\x79\x0e\x6b\xee\x6e\x3a\x6d\x3c\xaa\xb5\xb2\xe9\x6d\x4f\xf9\x4d\x4c\x51\xcd\xdb\xa1\xfc\x05\x4b\xc9\x76\x77\xc0\xcc\x03\xa6\x16\xab\x18\xab\x58\xe5\x14\x3f\x3f\x4f\xad\xed\x72\x5c\x8c\xc9\x3c\xe9\xde\xd8\xde\xdb\x04\x01\xcc\x1b\x8b\xd6\xc6\xa2\xd2\x38\x37\x9b\x02\xe8\xc4\x30\x3d\xdf\x5e\xcf\x1b\xd0\xed\x5f\x5b\xed\x7b\x94\xd5\xec\x8c\x39\x44\xb7\x35\xfc\x06\xe0\xb4\x35\xfd\x40\xae\x12\xcd\x2a\x60\xf5\xd2\xfc\xe9\xbf\x23\x84\xd4\xf0\x62\x41\x67\x8b\xba\xed\x2d\x37\x2c\xb9\x31\xa0\x1a\x4a\xc5\x57\xaf\x96\x4b\x92\x50\xcd\x1b\x04\x5f\xe1\x73\xcb\xc5\x75\xa1\x53\x4e\xbf\x76\xee\x41\x00\x76\x8f\x4a\x46\xfa\x0d\x2c\xb1\xc2\x16\xca\x12\x35\x99\xaa\x42\x32\xa1\xc6\x13\xe5\x97\x73\xa6\xa8\x50\xa1\x22\x00\x65\x50\x50\x28\x50\xe6\x6e\xb3\xbe\x5b\x4b\x0a\x0e\x80\x33\x54\xc8\x49\xee\x12\xdc\x5a\x71\x2e\xe2\x2c\x4f\x74\x62\x46\xeb\x44\x00\xba\x9f\x11\x80\xf3\x5d\xda\x19\x60\x6c\x3b\xab\xc4\x01\x98\x20\x31\x34\xc1\x00\x73\xe6\xa3\xcf\x06\x7a\x96\x29\x12\x47\xa6\x20\xb2\x4c\x73\x81\xca\x3e\x58\x02\x5e\xcf\x72\x5d\xa8\x64\x16\x0d\xb5\xa4\x08\xc0\x85\x5a\xa6\x5a\x1a\x30\xaf\xa1\x0d\xc3\x0e\x36\xa1\x31\xbe\x42\x33\xce\x38\x7a\x26\x57\x98\x3d\x7f\x76\x68\xfe\x89\xa0\x12\xf4\xfc\x9c\x88\x71\xb4\xc4\x2c\xc3\xa9\xd3\x53\xdf\x92\x94\xcc\x14\x17\xe3\x68\xd8\x36\xe1\x99\x9f\xf0\x30\x32\x27\x33\x23\x62\x87\x56\xf3\x52\x2b\x6f\x59\x1d\x3f\x79\x96\xd0\x8f\xef\x59\xa7\xfe\x3f\xa3\xb0\xa3\xe8\x89\xef\x8f\x41\x73\x03\xed\xfe\xca\x60\xd4\x29\x6b\xf1\x56\x35\x1f\x14\x55\x02\x46\x66\x8a\x22\x00\x9f\x44\x8d\x43\x09\x9e\x12\x94\x2b\xec\x8d\x55\xa4\xba\xd2\x75\x96\x58\x9c\x53\x36\x1e\x1d\xdb\x1f\x83\x27\xf9\x68\x38\xae\xe2\x1d\xc0\x68\xdc\x04\x8d\x13\xca\x34\x38\xab\xcb\xe3\xa6\xe1\x9e\x37\x82\xa0\x31\x95\x63\x25\xef\x97\x96\xd0\x32\x83\x4f\xa2\xe7\xcf\x0e\x13\xfa\xf1\x36\x7d\xc8\x52\x1f\x73\xf8\x24\xea\xd0\x24\xac\xb0\x4d\xee\xdf\x3a\xa2\x2d\x78\x02\x2a\x1a\xff\xf5\x92\x27\x74\x4e\xf5\x31\x94\xc6\x1c\x56\xe9\xdb\x55\x1b\xe6\xb5\x34\x32\x39\xfb\xca\x70\x99\x90\xbd\xe4\x57\x11\x95\x4b\x88\x86\x13\xd9\x4a\xce\x11\x24\xe6\x3d\xec\x2e\x72\xb8\xb9\x0e\x22\xc3\x6d\x07\x6e\x1c\xde\x86\xc8\xd9\x82\x24\x59\x4a\xbe\x67\x33\x12\x47\x78\xae\x88\xc8\x07\x85\xa4\x2c\x78\x01\x68\x9c\x09\x6b\xcc\x00\x26\xf6\xde\x8e\x33\x2b\x49\x8e\xab\x97\x56\x6f\x2d\xf1\xc4\x60\xb3\xd9\x80\x03\x31\x34\x6b\xa9\xe1\xd1\x70\x56\xee\x41\x72\x15\x30\xbf\xd5\xde\x76\xe9\x5d\x92\x95\x23\xb8\x68\x94\x49\xdd\xf9\xe7\x4e\x35\x58\x9a\x53\x4d\x98\xb9\xe1\x1a\xd1\xb6\xd5\xdd\x14\xf3\xda\xe1\xda\x2a\x87\xa4\xdb\x76\x99\xe5\x7d\x6b\x6a\xea\x0f\x12\xf6\xd7\x0b\xaf\x62\x7c\x23\xf0\x92\x94\x68\x87\xce\x63\xd2\xd0\xd0\xe8\x4d\xf5\x2b\xb9\x2e\x69\x1a\x3f\xf7\xb1\xdd\xed\x22\x15\x0a\x84\x63\xa3\x2c\x07\xe4\x70\x39\xc8\x19\xba\x26\x7e\x86\xf4\x19\x7d\x95\x92\x03\x36\xb4\xac\xe7\x1d\x5f\xa1\x11\xf4\x7f\xbd\xa1\xe7\x0b\x15\xfc\xfd\xa5\xb1\xd3\x06\x1f\xbe\x25\x73\x5d\xee\x7a\x99\x38\x46\xd6\xcc\xac\x67\x78\x45\x15\x4e\xe9\x3f\x48\x2c\x00\x98\xa2\x30\xdc\x64\x85\x83\x45\xab\xcb\xc8\xbc\x92\x6e\xb8\x76\x7c\x88\xbb\xc6\xc2\x60\x95\xeb\x59\x9a\x5e\x16\xfc\xa2\x62\x89\x6a\x25\x86\xba\xe9\x22\xb1\xf7\x89\x25\x51\xd7\x9b\x78\x23\x70\x70\x87\x7b\xd0\x7a\x45\xad\x49\xa7\x44\x91\x3f\x68\xc8\xf3\xc9\xf8\xdd\x43\x54\xfe\x3d\x56\x00\x92\x13\xff\xf9\xad\xef\x3f\xb7\x24\xd9\x21\x73\x1d\xd3\xec\x95\xbc\x71\xf5\xe1\x00\x41\x32\x26\xdb\x01\x5b\x84\x00\xe5\xbe\x75\xd5\x2b\x5d\xab\x0a\x78\xc5\x10\x12\xf7\x54\x40\x56\xba\x80\xca\x41\x94\xc3\xdd\xe0\xb7\xa7\x5b\x1e\x7b\xd0\x2a\xab\xe0\xad\xec\x11\x00\xeb\x75\x6e\x36\xfa\x7b\x46\xc4\x95\x17\x29\x5e\xa4\x69\x1c\x48\x15\x15\x0e\xa7\xb1\x13\x01\xe0\x14\xc6\x5e\x2f\x26\x68\xe4\xaf\xec\x1a\x27\x15\xee\x75\x55\xc5\x2e\xa8\xcc\xb4\x58\x6e\x28\x34\xb7\x0b\xe8\xf0\x56\x0e\x14\xe6\x01\xcb\x16\x86\xa5\x41\xa9\x29\xeb\xcd\xcc\x22\x60\xf8\x56\x9e\x6c\xc6\x48\x0b\x0a\x1a\xae\xea\x6b\x7b\xd3\xd2\x4c\x85\x45\x36\xf0\x44\xad\x19\x38\xfd\xa1\x70\xa7\xf8\x03\x4d\x4c\xda\x7b\x7b\x74\xca\x90\x5d\xba\x6f\x0d\x47\xf3\x1f\xec\x5d\x0a\x30\xfe\x0b\x81\x99\xac\x6a\x08\xca\x9f\xac\xc8\x96\x3d\xa6\x57\x69\x03\xc3\x45\x6d\x39\x4f\x6e\x66\x18\x2d\x0b\xa9\xbc\x39\xa6\x80\xa3\x98\xdf\x28\xd8\x7a\x3b\xa1\xfa\xe6\x35\x6e\x38\xd4\xed\x02\x37\x63\x52\x43\xe2\x30\xa9\x31\x61\xd5\xe9\x36\x9e\xec\xcd\x4c\x81\x01\x68\x5c\x3e\xdd\xab\x1a\xe7\xb8\xea\xe5\x60\xbd\x55\xc5\x7a\xdd\xa0\xda\xd1\x80\xfa\xce\x28\x4b\x1c\x53\x01\x07\xed\xd6\x21\xeb\x33\x70\xed\x2d\x39\x63\xea\x2d\xf7\x0c\xe6\x56\x9c\x31\xd9\x00\xc8\x86\x35\x65\x98\x40\xaa\x41\x2e\xe3\xa4\x85\x1d\x99\xd1\xed\x2d\xba\x7b\x6b\x15\xac\x8c\xdf\xa7\xf9\x37\x92\xf4\x7a\xa5\x17\x96\x55\x3b\x55\xe9\x0a\x59\x3c\x3f\x3a\x11\x83\xa3\xf1\x48\x63\xe0\xe8\x98\x3e\x13\xc7\xd4\x5c\x27\xd3\xc1\xd1\x34\xb0\x62\xd1\xe9\x81\x72\x46\x34\x6b\xe3\x32\x0f\x26\x61\xd9\x00\xd5\x28\xeb\xde\x74\x2e\x35\x6e\xe0\x66\x81\xc8\xb8\xd4\xe4\xf7\xb3\xe9\xbd\x9d\xad\xaf\x37\x30\x77\x95\xf8\x40\xae\x0c\xcb\x67\xa5\x0f\x4a\xa3\x65\x32\xf5\xec\x5c\x40\x06\x86\x82\x24\xd9\x8c\x34\xe7\x6f\x1e\x1c\x19\x27\x2c\xf3\x16\xeb\xfb\xb9\xb9\x01\x26\x96\x4c\xf4\xc1\xb9\x01\x70\x32\x05\x90\x3b\x52\xc3\x52\xd2\x73\x16\x5f\x6f\x34\x1f\xcf\xc3\x2f\xd4\x0d\x8e\x14\x5c\x0f\x8e\xba\x08\x89\xbc\x5f\x0a\x7a\x3d\xf3\x89\x05\x9f\x4e\xf8\x84\x4e\xeb\x5d\x4f\xe8\x14\xaa\x09\x9d\x82\x71\xad\x45\xaf\x17\x9b\x36\xa6\x78\xa3\x95\x96\x4d\xe1\x03\x90\xdd\xc1\x61\xe9\x57\xe8\x1b\xbc\xcd\x0d\xd8\xcf\x6a\x67\x47\xae\x5d\x3d\xb0\x7e\x96\xf7\x13\x7f\x78\xf7\xfa\xdb\x2f\xb1\x90\x43\x0f\x65\x6c\x2e\xdb\x0f\xe7\xff\xf7\xe2\xfb\xff\x25\x87\x11\x3c\x4b\xf9\xec\xc3\xf8\xc9\x75\x24\x8d\x0f\x8b\x8c\xc6\x93\xa8\xe7\x3a\x8c\xa6\x30\x92\x0a\x2b\x62\x5d\x78\xc6\x93\xc9\xef\xe1\xe4\xf3\x7f\x87\xa3\x29\x9c\x4c\x3e\x7f\x0a\x47\x70\x72\xa3\x86\x3a\x9d\x4e\xcd\xbd\x00\x9c\x4c\x22\xdf\x2d\x8c\x48\x6a\x56\x7f\x72\x5d\xe9\xff\x29\x8c\x3a\x1d\x5d\x70\x34\x82\x51\x42\x3f\x9a\x9f\x4f\xa7\x50\x17\xbc\x7f\xcf\xf4\x9f\x0d\x20\x34\xdc\xa4\x35\x8e\xdb\x30\x60\xd0\xdb\xd3\x7f\x87\xba\xc7\xa3\x3b\x40\x6c\xff\x67\x80\xfd\x0f\x78\xe4\x20\xd3\xfd\xe4\x70\x4f\x61\xb4\xc2\x9a\xcb\x99\x48\x35\xe3\xc9\x74\x03\x6f\xea\x09\xfa\xf9\x29\x72\x69\xe7\xb3\xa5\xb7\xe9\xb4\xf9\x23\x0c\x50\xfa\xf9\xed\xe0\xb1\xa8\x39\x0a\x11\x5d\x32\xac\x58\x90\x26\xd1\x79\x46\x93\x08\x46\xd4\x5c\x55\x7d\x49\xe6\x5c\x18\x44\x45\xbf\x9d\x65\x42\x72\x31\x1e\xfd\x36\x32\xf8\xb4\xb5\xb7\xac\xc5\x7e\xf1\x7f\xb6\xc5\x6f\xeb\x61\x6a\xe2\x2c\xbd\xfc\x88\xd3\x68\x3c\xc7\xa9\x24\x30\xca\x56\x1f\xb1\xa9\x10\xd1\xb9\x59\xf6\x01\xf1\xf4\xb0\x79\x02\x97\x44\x61\x63\x3a\xcb\x52\x62\x44\xa1\x3b\x72\xcb\xe1\xe2\x4c\x46\xbb\xbf\x5b\xc9\x14\x4d\xb7\x3c\x59\xb9\x7d\xb8\xca\x6e\xd7\x3c\xc4\xd2\x07\xfb\x7a\xdd\xed\x36\x28\x7c\xc4\x6b\x74\x95\xa0\x7c\x5a\x5c\xf0\x9d\xc4\x5d\xb1\x5e\x77\x99\x3e\x73\xbb\x5d\x31\xa4\xd2\x78\xc9\xea\x9f\xed\xdd\x69\xd9\x2e\x26\x90\xdd\x2d\xab\x1a\x95\xde\xec\xc9\x9c\x53\x3d\x52\xe5\xcf\xd6\xbe\xf6\x82\x25\xdf\xf1\xa0\x92\x08\x2b\xbd\x4c\x25\xb9\x58\x10\x41\x82\x07\xc3\x36\x2e\x9b\x75\x0e\x34\x00\x52\x2f\xbe\x74\x85\x2b\xed\xf5\x78\x53\x30\x3a\x91\xa9\xc5\xc0\xc7\x13\xf5\xff\xe2\x72\xf0\x78\xd8\x58\xd9\xae\xaa\xfd\x36\xe3\xec\x23\x11\xea\x56\xc1\x75\xca\x2e\x94\x24\x0f\x38\xf2\x8c\x19\xf7\x49\x2d\x5a\x6b\xd1\xcd\x44\xa0\x70\x54\x06\x62\x32\x11\xd3\xe2\xfa\x29\x70\xae\x24\x13\x92\x3f\x47\x9b\xde\x65\x6d\x30\x4b\x0c\x9e\x3d\x41\x37\x45\x33\x14\x4d\x0f\xd9\x1b\x31\x48\xfe\x6e\x6e\x44\x6e\x4f\xe4\xc5\x83\xee\xc9\x68\xaa\x09\x7c\x72\xb7\xe9\x18\x00\x0c\x75\x6d\x9b\x90\xda\x79\x42\xe7\x3b\x07\xd5\xbe\x03\xb0\xe7\x0a\x09\x27\x18\xd5\x7c\xad\x5b\x9d\xda\xb5\xf2\xb5\xcb\x63\xf4\xa6\x57\x80\xbf\x60\x87\xf5\x2e\xeb\xf5\xbc\x87\x7a\xf1\x6b\x47\x5f\xf5\x83\x07\xf3\xb7\x8e\xc0\xe6\xa0\xcc\x39\xf3\x30\x40\x31\x81\x4f\xcd\x9b\xd2\xc9\x68\x0a\x39\x62\x93\xa3\x69\xe9\x15\xf6\x8c\x7c\x97\x69\x4a\xea\xf5\xe2\x88\x99\x5f\x45\x14\x01\xda\xeb\xc5\x14\xd9\xf2\x98\x9a\x6b\xf6\x4a\x0d\xae\x55\x20\x5f\x83\x03\x00\x20\x7d\x1e\x2a\x41\xf7\xdb\x97\xe7\xea\x53\x8a\xfa\xe7\x8a\xec\x09\x79\x4f\xc8\xed\x84\x8c\x1e\x8e\x92\xa9\xb4\x6f\x1e\xee\x76\xc8\x78\xea\x50\x68\x64\xdc\x9d\xdc\xe1\xab\x9e\x89\x63\x15\x1c\xbe\x16\xc4\x9c\x66\x27\x2a\x3f\x7c\xbb\x47\x07\x79\xa8\xc0\x3b\x49\x42\xa6\xcb\x07\x3c\xa0\xa8\x1c\x68\x9a\xd8\x19\x1f\xb7\x05\x7a\xbf\xad\x7f\x71\xdb\x7a\x3b\xe9\xc4\x55\xd3\x6d\x3d\x42\x76\xc7\xd3\xf7\x4b\x4d\x39\x76\xf3\xdd\x86\xde\x6e\x23\xe4\xdd\x4d\x5d\x30\x52\xdc\xfe\x48\xf9\xe5\xd1\x5e\x59\x97\x29\xc8\xeb\x29\x80\x0c\x09\x7d\xa0\x50\x24\x82\x03\x25\xa7\x34\xbd\xa2\xb1\x56\xc8\x1e\xec\x24\x48\x3f\xa5\x68\x9e\xee\x45\xf3\x5f\x3a\xf9\xfd\x9c\x12\xcd\xb3\x87\x13\x68\xd2\x4f\x2a\x9a\xa7\x7b\xd1\x7c\x4f\xc8\xdb\x08\xf9\x01\x45\x73\xc6\xd5\xed\x64\x83\x56\x03\x50\xf7\xee\x06\x20\xc6\x95\x39\x6b\xec\x24\x1e\x50\xd0\x66\x5c\xfd\x22\x8c\x83\xa3\xad\xc6\xc1\x7b\xea\x27\x8c\xab\x07\xb4\x06\xf2\xe6\x10\x4d\xbf\x2c\x8c\x3d\xac\x39\x95\x8b\x07\xc4\xdf\xe5\x63\x20\xd0\x31\xc1\x0a\x7e\x46\x53\xd0\xad\x63\xed\x68\x7a\x27\xfb\xff\xe5\x83\x60\xa5\x69\xa2\x9f\xfe\xfa\xba\xee\x08\x43\x7c\x7c\x43\xe3\x0c\x03\x23\x2a\xdf\x69\x98\xae\xdc\x83\x9f\x33\xce\x53\x82\x59\xf1\x2e\x5f\xe5\x0f\x7c\xab\x42\xb1\x3f\x77\x4f\x46\xdd\xe0\x7d\xa0\xee\xd3\xd2\x60\x04\xc6\xdd\x2e\x69\xb8\xbe\x30\x67\x8e\x3e\x35\xe5\xe1\x8c\xa7\x29\x31\x10\x36\x91\x4a\x50\xd1\xa2\xcf\x7d\xa0\x9c\x0d\x88\x3e\xc1\x1e\x23\x74\x6e\x71\xbe\x15\x73\x14\x30\x0a\x20\xb7\x1e\x45\x23\x1b\xb2\xb4\x5b\x45\x0f\x68\x22\xd1\xb0\x39\x34\x21\x53\xbd\xf1\x86\xf9\xf5\xb9\xa9\x07\x49\xd9\x79\x96\x62\xe1\xda\x17\x29\x20\xb6\xe3\x9b\xcd\xa9\xb0\x1e\x42\xbf\x60\x8c\x43\xe6\x43\x95\x95\x70\xee\x71\x5d\xfa\x88\xd3\x94\x5f\x7c\x99\x62\xf6\x21\x02\x05\xee\xac\x6d\x20\xc7\x5d\xd7\x44\x13\xef\x96\xf5\x39\x02\x8b\x8e\xb4\x6e\xd7\xba\x54\x21\xce\x6e\x81\xec\x04\xab\xc6\x40\xd0\x37\x23\xd9\xd7\x14\xe4\xef\x19\x15\x64\x60\x2f\x7f\x1f\x27\x2f\x96\x8b\xf4\xdb\x65\xf5\xe8\xe3\xaf\xf9\x92\x30\xf5\xdf\x6f\x3b\x54\x76\x1c\x68\x89\x96\x19\x35\x0c\x6a\x41\x3a\x5f\x63\x45\x3a\xf9\xec\x86\xce\x1f\x95\x17\x8b\xf8\x67\xaa\x16\x5f\xe7\x4f\x9d\x22\x33\xd9\x6f\xb8\xc6\x6d\x04\xa3\xd7\xaf\x5f\x77\xbe\xe6\xb0\xf3\x97\xbf\xfc\xe5\x2f\x11\x80\xb8\x68\x16\x44\xce\x13\x70\x12\xcd\x7d\x8b\x95\x20\x33\x2a\xcd\xb2\x84\x64\x30\x05\x50\x22\x3c\xb4\xd5\x60\x86\xf0\x30\xaf\x08\x53\x84\x87\x45\x55\x38\x6b\x1d\xe4\xcc\x7a\x5d\x68\xa2\xfb\x5e\x7c\xe9\xff\x30\xcf\x3b\xdc\xc7\x17\xe6\xf7\x14\xc0\x39\x9a\x0d\x6d\x75\x98\xa0\xd9\xb0\x68\x00\x17\x68\x36\x34\x4d\xe0\xca\x15\x98\x46\x70\x89\x8a\x10\xf7\xe9\x0d\x44\x2b\xcd\x72\x2c\x11\x8d\x09\x94\xc6\xdb\xb4\x6b\x7e\x82\x21\x95\x7f\xd2\xb8\x8e\x5b\xe8\xd6\x92\x5f\xce\x5c\x96\x37\xd5\xbf\x10\x9c\x9d\x7f\x6d\x1f\x17\x1b\xfc\xea\xa6\x1b\x92\x4a\xd2\x31\xe9\x13\x0c\x08\xe0\x96\xc3\xce\x7b\xbd\x78\x8e\x68\x3c\x87\x12\x40\x03\x83\x45\x4d\x3c\x87\x59\xbe\xe1\xdc\x91\x22\xed\x86\xf6\x98\x9f\xbb\x15\xd4\xb2\x3e\xac\x0c\xe2\xeb\xf8\x61\x92\x5e\x2f\x4e\x10\x8d\x93\x7c\x98\xb7\x78\x49\xfc\x3a\xc4\x49\xeb\x60\xe1\xea\x26\x5b\x06\x0c\xeb\xf9\x41\x17\xbd\x5e\xbc\x40\x34\x5e\xe4\x83\x9a\xd5\x8d\x17\xad\xa3\x39\xf2\x59\x6c\x19\xc8\x55\xf1\x63\xac\x7a\xbd\x78\x85\x68\xbc\xaa\x4c\xcc\x8e\xb4\xda\x3a\x2f\x4b\xa0\x70\x75\xc3\xb4\x5e\x04\x23\xe6\x8c\x0d\x92\xa1\x09\xc6\xa3\xe9\xc1\xc5\x79\x66\x5a\xa0\x12\x41\xe3\x25\xb7\xef\x54\x0e\xaa\xb1\x98\x6e\x19\xb4\xb5\xd7\x0b\xff\xf2\x81\xc0\x19\xbf\x88\xac\xaf\x48\x75\x7b\x9c\xb0\x18\x8c\xfd\xc7\xef\x38\x23\xb1\xd2\xdf\x34\xa3\xd2\xe0\x6a\x22\x1d\x7b\x06\x79\x03\x87\x96\x9e\xe1\xd6\xb9\x74\x85\xf7\xde\xf9\x84\xfc\x44\x5c\x5a\x41\x0e\x71\x2b\xa7\x36\xd8\x19\x7c\x8d\x15\x6e\xe5\xd5\x6f\x6d\xdd\x3a\xbf\x96\x88\xc6\x18\xc0\x0c\xc9\xe1\x0a\xab\x05\x4c\x91\x34\x99\x5d\x02\x5e\x19\x73\x98\x81\xd2\x89\x6a\x96\x61\x06\x7a\xbd\x59\x98\x64\x85\x0d\xcd\x18\xb2\xd7\x9b\x99\x94\x16\x69\xc0\x33\x42\x4a\x4a\xa4\xf5\x67\x83\x2a\x38\x92\x67\x43\x83\x4f\xf9\x0d\x17\x71\x0a\x60\x94\x62\xa9\x1c\xee\x96\x44\x4a\x6c\xde\x8f\x94\x28\x56\x73\x71\xac\x16\x2f\x58\xf2\x47\x72\x15\x52\x6d\x48\xf2\x76\x19\x13\xac\x70\x85\x72\x8b\xf7\x5b\x2e\x76\xd6\xd0\x05\x65\x5d\xf1\x55\x9c\x3b\x16\x2b\x6b\xcc\xb1\x67\x97\x8c\x00\xbc\xd6\x48\x1a\xab\xe2\x99\x2b\xfc\x40\xae\xc6\x62\xb3\x9d\xf2\xc8\xe5\x2c\xcd\xe4\x2f\x5a\x0a\x6b\x90\xc1\x18\x8c\x28\x8b\x0a\xcf\xeb\xf2\xb1\xc9\xe0\x24\x12\xe6\x5d\x4f\xf5\x38\xc6\x88\x0f\x4d\x89\xa6\x19\x1e\x1c\xc0\x37\x9c\x7d\xd4\xb9\x67\xd3\xdc\xd9\xba\x4d\x1a\x0e\xf0\xa9\x21\xd7\x8d\x71\xaf\xf7\x14\x21\x84\xbd\x4f\xd9\xb5\x25\x6e\x11\x63\xf8\xd4\x90\xf7\x64\x34\xd5\xc4\x3d\x39\x9a\x16\x42\xa5\xd6\x7a\xcc\x30\xf9\x3d\xaa\xfb\x92\xe5\xc2\x65\x6b\x95\x14\xf4\x7a\xd9\x33\xad\x61\x91\x67\x28\xdd\x09\xce\x4d\x4e\xbe\xd5\x2c\x77\x7b\x2b\xe7\xcf\x6d\xe5\xdc\xba\x7f\xbd\x0c\xfa\x8b\xd8\xbc\x82\x18\x4d\xf0\xe5\xe5\x4a\x10\xa9\x89\x4b\xba\x25\x6d\xde\xd8\xb9\xd3\x61\xd3\x26\xa6\x7a\x13\x93\x73\x72\x19\xc1\x48\xd3\xb5\xf1\x47\xfd\x48\x84\x6c\xd9\xd5\xba\x2a\x94\x88\x9b\x4d\x00\x33\xc4\x87\xae\x3a\x4c\x51\x7e\xda\x67\xbd\x5e\x76\x9b\xad\x2f\x6d\xb4\x68\x36\x91\xd3\x5e\x2f\xc6\x48\xff\x00\x07\x11\x59\x62\x9a\x6a\xa1\x40\x9a\xaf\x08\xb1\xa1\xf9\x64\xfe\xaa\x9b\x3a\x5c\xe9\x50\xf2\x4c\xcc\x08\x14\x8d\xf3\x25\x70\x62\xa7\xf5\x1d\x67\xef\xd2\x24\x82\xd1\x92\xea\x1f\xdf\x5a\x1b\xc6\x14\x40\x8a\xc4\x30\xa8\x01\x39\x12\xc3\xb0\xce\x41\xe9\x0c\xe4\x26\x4a\x73\xd5\x74\x6d\x62\x16\xaa\x3c\x7b\x7d\x34\xc1\x83\x7f\x8c\x06\xff\x6f\x1a\x9f\x8c\xdd\xcf\xc1\xf4\x33\xff\x11\x9c\xfc\x26\x82\x79\x95\xeb\xa8\xcf\xfb\x11\xdc\xb4\x56\x05\xe0\x80\x1a\xc7\xda\xa0\xff\xff\x2c\x6a\xb7\x8d\xf1\xfe\xfd\x10\x44\x70\xc7\x9a\x27\xa0\x38\x6b\xcd\xf6\x7a\x43\xce\x5f\x5e\xae\x62\x05\x23\x1a\x81\x8d\x31\xd8\x17\xf2\x27\x85\x9e\x84\x30\xb0\x62\x82\xd0\x04\x6c\xe2\xec\x47\x60\xbd\xc6\xb5\xb5\x77\x31\xf8\x31\x00\x5d\xd4\xc2\x3a\xe5\x7a\xad\x29\x51\x6f\x26\xcd\x3b\x69\x70\xf4\x97\x9e\x3d\xce\x30\x7b\xc5\x3e\xf2\x0f\xc4\x18\x54\x1b\xb6\xc6\xb5\xa1\x8a\xf1\xe1\x4f\x6e\x86\xdd\x7f\xfb\xcd\x6f\x7b\x4f\x3e\xeb\xbf\x3f\x44\x27\x3f\x9d\xfe\xf5\x7a\xbd\xf9\xff\x06\xd3\x7e\x7c\x32\x7e\x3f\xdc\x5a\x03\x7c\xb6\x0b\xee\x86\xa0\x7f\xd3\x62\x1f\x52\xb8\x5a\x70\x46\xc6\x87\x3f\xc5\x93\xf7\xfd\xe9\xc9\xd1\x7b\xf9\xd9\x64\xf0\xfe\xf0\xfd\x70\x7a\xf2\x5e\x7e\x06\x4e\xe2\xf7\x71\xfc\x3e\xb9\xfe\x7c\x03\xde\x83\xb5\xfb\x05\xca\x95\x7c\x79\xed\xe3\xef\xcc\xc7\x38\x9e\x5c\xfe\xef\x74\x3d\x21\x2f\xa7\xfa\xc7\x44\xbd\x9b\x9e\x4c\x74\xad\xb5\x79\xc0\xa3\x31\x63\xaa\x4d\xfe\xed\xb3\xf7\xc9\xb4\x0f\xc0\x67\xbf\x39\x84\x99\x48\xc7\x87\xf1\xc9\x38\x9e\xbc\x18\xfc\x1f\x1e\xfc\x63\xda\x07\x63\x0d\xcc\xe1\xf5\x08\x7e\xbe\x01\x7a\x0a\x2f\x06\xff\xa7\x67\xe1\x7e\x0e\xf4\xef\xcf\xe2\xf7\xc3\xc9\xfb\x0b\x8d\xa1\x7e\x3c\x79\x7f\x31\x84\xff\x79\xf2\x13\xfa\x6d\x0f\x2f\x57\xc7\xe3\xf7\x87\xff\x5f\xff\xdf\x06\xd7\x9b\xe9\x67\x93\xf7\x17\xc5\xf7\xfc\x33\x38\x39\x39\xdc\xce\x79\x29\xdb\x4b\x4e\x3b\x4a\x4e\x68\x17\xc9\x29\xc0\xe7\x1d\x25\xa7\xee\x83\xc8\x4e\x60\xbd\xce\x9e\x93\xf5\x9a\x3c\x6f\x11\x9d\x2a\x80\xee\x45\xa7\x5f\xa9\xe8\xd4\x9a\x3d\x7f\xbb\xb5\xf3\xfe\x3b\xd5\xc1\x40\x6a\xa2\x82\x68\xd6\x11\x03\x98\xa3\x3e\x09\x13\xf5\xd4\x9e\x02\x53\x64\x89\x8c\x3d\x3f\x3a\x61\xf6\x19\x30\x47\x47\xc7\xfc\x19\x33\xc9\x7a\xe8\x84\x97\x9f\x01\xf3\xe0\x62\xbc\xf4\x1a\x98\xde\x80\x3c\x77\xb5\xf2\x8b\x65\x7d\xf5\xcb\x92\x8a\x5d\xd5\x4b\x52\x15\x56\x07\x35\x2c\x5f\x12\x75\x41\x08\x7b\xed\xb4\x7b\x18\x51\x69\xe5\x31\xfd\x5f\x7c\x69\x85\x31\x96\x0b\x63\x24\xdf\x7f\x9a\xd1\xad\xd7\x14\x62\x5f\x6a\xad\xbb\x12\xb1\x61\xad\x5b\x98\x21\x36\xa4\x12\xa6\x88\x69\x31\x0e\xce\xf4\xbf\xf8\xb2\x50\x01\x9d\x20\x57\x30\xd4\xae\x16\xdf\xaa\xbc\x28\x17\x44\x84\x67\x99\xed\xfc\xd8\x26\x49\x6a\xbc\x22\xab\x1b\x51\x34\xb3\xcc\xba\x08\xcd\xb7\x58\x69\x9d\x70\x9a\x8f\x2e\x83\x7b\x27\xd3\x89\x56\x45\xeb\xb6\x99\x78\xfe\x2c\x5d\xaf\xe7\xcf\x67\x2d\x47\xc1\x99\x45\x54\x60\x34\xae\x75\x9a\x3e\x6f\x81\x4b\x71\xfe\x76\xc1\x85\x6a\x6b\x6c\x6c\x43\xcf\xda\x1b\x7f\xcb\xd9\xf9\xad\x6e\x57\x9c\x0d\x48\x3e\xc2\x2d\xea\xf5\xa9\x11\x67\xc7\x87\xef\xaf\xe3\xf7\x17\x7d\xf0\x7e\x73\x78\x0e\x5d\xe1\xd7\x44\xce\x04\x35\x91\xab\xc6\xd1\xbb\x05\x95\x9d\x39\x25\x5a\x8f\x38\x27\x61\xd9\x37\x5c\xec\x90\x51\x77\xd7\xe7\xf6\x07\xd5\x18\xb9\x7a\x1e\x49\x31\x9a\x16\xb2\x8b\x32\x13\x81\x21\xaa\xc3\x1b\x81\x8d\x86\xd2\xed\x8b\x12\x84\xf7\x8f\x08\x50\x4a\x9b\x6b\xb5\x65\x37\x50\x5c\x81\x8c\xd8\xf4\x25\xa5\x3a\x0f\x09\x09\x14\x88\x38\x68\xca\x3b\x5c\x68\x55\xcd\xc5\xa1\xcf\x55\x35\x61\x0e\x64\x54\xc5\x9e\xdf\xf0\x00\x40\x91\xab\x59\xd5\x4a\x96\x4c\x22\x50\xe2\xb3\xa2\x1e\xd1\xd8\xa4\xa8\xb6\x89\x7a\x66\x33\xb2\x52\x24\x19\x47\xd7\xc1\xf2\x6d\x6c\x2a\x84\x33\xd2\xf1\xe5\x11\x34\xf7\x02\xad\xd5\x74\x61\xe7\xda\xfc\xb3\x89\xa0\xbd\x1d\x69\xab\x6c\x4b\x3b\xd7\xf6\x5f\x5d\x5d\x33\xcb\x6a\xed\x19\x66\x4f\x6c\x75\xcb\x9f\x8b\x0b\xeb\x56\x20\x3a\xe1\xa5\x76\x78\x6b\x5a\x6d\x91\x70\x22\x75\xef\x46\xe9\xeb\x5c\x73\xb6\x89\xa0\x09\x7b\xd6\xda\xb3\x95\x42\xdc\xd5\x92\x51\xdf\x6e\xa8\x6a\x2a\x75\x70\x92\x68\xb5\x4f\xb7\x59\xa9\xab\xd6\x29\xba\x27\x08\xc6\xfb\xeb\x1d\x6f\xeb\xda\x14\x6b\x09\xe8\x9a\xca\x8d\x4d\x02\xd0\x5a\xf5\xa3\xe1\xa2\xde\xd6\x57\xad\x66\x4c\xf2\x92\x88\x8f\x7a\x61\xcf\x4d\x78\x3b\xf1\x6e\x81\x5b\xbb\x73\x55\x3a\x6a\x81\x59\xe7\xfa\x5c\x6d\x4a\xad\xbe\x17\x2f\xb7\x03\x5e\x6a\xce\x45\x30\x91\x73\xa5\xd7\x3f\x17\xac\x1b\xe0\x64\x5c\x75\x4c\x79\x42\x12\x2d\x23\xab\x05\xe9\xa4\x54\x2a\xdd\xca\x60\xba\xa1\x4d\x7e\x38\xa6\x44\xca\x6d\xf3\xd2\xe5\x6e\x52\xa9\x9e\x94\xaf\x7f\xe3\x8c\x8a\x86\xa5\xe9\xa4\x66\x3a\x8c\xab\x17\xec\x15\x53\xe4\x7c\xcb\x86\x61\x1d\x6a\x6b\xd8\xfa\xd6\xab\xb0\x9d\xa8\x9c\x41\x07\xf2\xa4\x75\xab\xf2\x24\x89\x60\x7e\x9f\xd6\x5a\xcb\x80\xec\xf6\x6b\x5e\x7b\x63\x5b\x7e\xb9\x75\xdf\xda\xa6\x7e\xf7\x16\xf5\x75\x63\xb5\xd8\x4e\x41\xa6\x82\x43\xb5\x39\xe2\x36\x91\xb3\x39\xdc\xb0\x8f\x4c\xa5\x7c\xfa\x2b\x2e\xa9\xa2\x1f\x5b\x5b\xf9\xf2\x08\x2e\xb3\x54\xd1\x55\x4a\xbe\x9f\xb7\x8f\xe0\xeb\x74\xf8\xbc\x73\x5d\x34\xd0\xa0\xe9\xed\xc1\x54\x2b\x07\xb3\x2c\xc9\x7b\xc0\xb4\xee\xeb\x32\x47\x72\x42\x46\x03\xc1\x2a\xce\x3b\x29\x67\xe7\x9d\x78\x89\x2f\xe9\x32\x5b\xea\x8f\xd7\x4b\x7c\xb9\xe9\xcc\x16\x58\xe0\x99\x22\x42\x02\xd3\x83\x91\x71\x5a\xba\x90\xba\xac\x13\x2f\x29\x2b\xfa\xa0\xac\xd2\x87\x93\xb1\xda\x99\xb3\x29\x76\x2d\x31\x4b\x6a\x70\x44\xc6\x2c\x73\xc3\xb2\x65\x22\x8d\x60\xe5\x42\xbf\xad\x8d\xdb\xd5\xf6\xfc\x35\x6b\x61\x7f\x6e\x5c\x0f\x56\xd8\x6c\x9a\xf3\x82\x74\x4c\x8d\x8e\x3d\x91\x3b\xb1\x0d\x1c\xa1\x3b\xd5\x3c\xb2\x34\xf1\x4d\x3d\x45\x6e\x20\xcc\x79\x02\x7b\x78\xb5\xa6\x12\x48\xa0\x6e\xfb\x8e\x85\x96\x40\x30\xa2\xfe\xe2\x99\x9a\xcc\x4a\xa4\xd7\xc3\x5d\x84\xf8\x49\x55\x35\xb4\x9c\x29\x82\x14\x0a\x30\x8e\x52\xe5\x2b\x3f\xaf\xd7\xf5\xfc\xac\xa8\x4c\xf2\xda\xad\x95\x73\xe6\xe7\x5b\x9d\xe7\x43\x3c\xab\x0f\x11\x9c\x03\x45\xfd\x7c\x94\x67\xdb\xea\xd7\x06\xca\x77\xaf\x6f\x3d\xaa\xb6\x2e\xf6\xb7\x6d\xa1\x79\x9e\xab\xfc\xdb\xa7\x08\xd5\xea\x1b\x9e\x68\xab\x9a\x23\x31\xaf\xdb\xad\xd7\xb5\x67\xa6\xa9\xdc\x8d\xa3\x82\x1d\xb8\x46\x5d\x16\xe3\x43\x0e\x40\x4d\x15\x0b\x6a\x9a\xd6\x45\xe8\x08\x56\x38\x88\x7a\x8b\x7c\x91\x6e\x28\x48\x29\x44\x40\xaf\x17\x24\x7b\x35\xc6\x29\x72\x9f\xb4\x4f\x4d\x77\x2d\xce\x6f\xdd\x90\x5a\x18\x19\x8b\x02\x28\x5b\x2f\x62\x4a\x0a\x72\x4d\x73\xb6\x71\x3b\xcd\x05\x8d\x3d\xca\xa6\xf6\xd6\x3e\xd0\x80\x53\xff\xa7\x51\x97\x67\x85\xba\x9c\xae\xd7\x29\x9c\xfb\x52\xdb\x13\x4c\x90\x1c\xba\xbe\xb4\x02\x37\x2b\x74\xda\x8a\x46\x6c\x4c\x8c\xd9\x0d\x26\xc8\x96\xc2\xca\xf2\x15\xa7\xaf\xb3\xea\x37\x26\x67\xeb\xf5\xba\x2d\xaa\x63\x53\xfb\x6e\xa8\x3d\xb4\x13\x80\x4b\x2f\x45\xc0\x26\xe6\xb7\x80\x2e\x31\xc4\xb8\xad\x85\x97\x3e\x5c\x1b\x6f\x37\x5a\xa0\xd1\xf1\xe2\x99\xb7\xaa\x1e\x2f\x7c\xfa\xe5\x15\x12\x31\x9e\x2c\xa6\x90\x42\x5e\xf6\xc2\xcd\xb5\x92\x95\x37\x49\xae\x36\xbb\x69\xc7\xf6\x04\x9d\xdd\xd3\xff\xb0\x56\x33\x63\x17\x02\xaf\x06\x2b\xc1\x2f\xaf\x1e\xc9\xd1\xa5\x6e\x4c\xaf\x18\xce\x8b\xa9\x46\xf4\x9c\x71\x41\x72\xe3\x39\x47\x74\xe8\x4b\x35\x87\x1f\x06\xe5\x50\x56\xdc\x99\x88\xde\x3c\xf8\xc4\x53\xed\x0f\x56\x04\x89\x25\x18\x77\xcb\x94\x2c\x0b\x7f\x5f\xde\xeb\x75\xb3\x16\x5b\x8a\xdd\xb5\xde\xa4\x6e\x7c\x7b\x79\xaf\xd7\x52\xdb\x09\x3c\xae\xfe\x6e\x4b\x6c\x57\x84\x4a\xbd\x1a\x4b\xfa\x28\xd1\xd0\xea\xfb\xaa\x1b\x77\xc9\x7a\x6d\xa2\xd7\x44\x6a\x41\x58\x04\xc0\xa6\x14\x2d\x2d\xbf\x8e\xdb\x61\x2e\x25\xea\xba\xc7\x2b\x1c\x07\x54\x4c\x42\x5f\x24\x0b\x8e\x9d\xfc\x0f\x7a\x84\xf5\xba\xa1\xdc\x98\x71\x4d\xf1\xdd\x82\x05\x55\x31\xd5\x21\x71\x61\x00\x50\xb1\x00\x27\x24\xae\xf8\x91\xdb\xf8\x5a\x00\x8c\xc5\xc6\x3c\x1f\x36\xa3\x37\x85\x66\xda\x61\xdf\x3e\x22\x05\xe8\x0d\x5f\xc4\x65\xba\xd6\x8c\x6a\x4c\xa0\x6d\xa4\xe0\xcc\x66\xf7\x1f\x0b\xe8\xec\x74\x63\x56\xf6\x88\xa2\x1f\xaf\x06\x33\x9e\x90\x25\xd5\x90\x87\x91\xab\xca\x25\x77\xa3\x83\xa6\xdb\x9f\x4a\xf8\x04\xf7\xdd\xdf\x71\x1d\xab\x67\x45\x40\x85\x7e\x1f\x88\x89\x9a\x22\x32\x51\x85\xa1\xde\x5f\x98\x94\x52\x72\xde\x87\x46\xda\x72\x16\x2a\x7c\x6e\xe3\x7c\x69\x0c\x62\x41\x70\x04\x35\x3e\x5e\x1b\x7c\x78\xc7\x47\x66\x86\x75\x79\xb0\x62\xf0\x10\x99\x8d\x4e\x8b\x51\x82\x30\xb8\xc5\xc7\x08\x98\x59\xbf\x23\x97\xea\x85\x20\x61\xe6\x83\x20\x35\x19\xac\x7d\xcd\x03\x7a\x4b\xa2\xb2\xd5\x57\x79\x77\x26\x90\xeb\x1f\x30\x4b\x52\x93\xad\xdc\x46\x84\x86\x45\x0c\x6a\x1f\x58\xff\x4f\x1a\x77\x36\x2e\x7e\x62\xe3\xbb\xda\xa4\x4b\x2e\xe9\xdf\xed\xe7\x69\x23\xd0\x17\x80\xb8\xbc\x03\x71\x4b\xb1\x19\x3f\x06\x1b\x48\xe5\x9f\xa8\xa4\x67\x29\xf9\x9a\x26\x2e\x4d\xa4\x5d\x0c\x7e\x66\x8c\x39\x22\x8e\xf2\x2a\xe5\xb4\x2e\x16\xb0\x0b\xec\x4b\x4b\x19\x9d\x8a\x36\xf9\x35\x69\x3d\xaf\x80\x70\x29\x05\x0a\xf4\xd8\x28\xbf\xa6\x29\x4d\xa9\xba\x32\x2f\x90\xda\x71\x56\x49\x9a\x57\x8c\xc3\x75\xff\x01\xd6\x09\x4b\xea\xad\xad\x73\xa5\xc3\x04\x34\x69\x63\xe1\x96\xe5\x6c\x89\x18\x5c\x8d\x0c\x0c\x85\x0b\x0b\x1c\x50\xde\xd0\x1d\xfa\x16\x1a\x2d\x76\x46\xf5\xec\x54\x0e\x0f\x75\x14\x87\xfd\xcc\xe7\xa6\x23\x63\x67\x6d\x9e\x55\x48\x3b\x9e\x39\xd4\xad\xf2\x05\xaf\x00\x90\xa1\xd1\x31\x7b\x46\x8e\x99\xe1\x10\x2c\xbc\xd2\x63\xd3\x83\x1c\x81\xb6\xfb\x90\x06\x27\xd1\xc7\x60\xf8\x28\x8f\x84\x6b\xf2\xf1\x02\x1f\xb3\xb9\x58\xcd\xe6\x08\xd6\x35\x82\x39\x68\xa0\x2c\x92\x27\x42\x28\x3e\x23\x02\xf3\x4c\x60\x01\x8e\x04\x99\x0b\x22\x17\x26\xba\x7e\xf3\xae\xa8\x90\x4d\xad\x87\x73\xa2\x6c\xc5\x98\x80\x30\x53\x52\x50\x45\x16\x55\x0c\xdd\xb4\x6c\xbf\x6d\x33\xe6\xb6\x4a\x04\x0e\x48\xaf\x57\x0e\x34\xdc\x10\xe7\xd7\xc3\xd9\x3c\x50\xac\xa0\x09\x89\xe3\xa2\x8e\x37\x00\x64\x08\x65\x1b\x38\x66\x29\x35\x30\x7e\x1f\x57\x30\xe2\xf6\x49\x33\x2e\x6c\x21\x59\xaf\xa3\xe8\xfe\x99\xd7\x6a\x8c\x7b\xa8\x78\xce\x9f\x43\x5e\x5c\xe2\xe2\x19\x13\x26\x65\x5f\x11\x82\xbc\x99\x97\xeb\xd3\x3a\x25\x8a\x74\xaa\xa3\x6c\x36\x60\xcb\x59\xee\x0e\x25\x79\xa8\xbf\x0d\xea\xc7\x38\x8c\x82\xe3\xfd\x36\x8f\x3d\x7f\x45\xa7\xfa\x5b\x8b\x83\xfc\x4c\xbf\x63\x26\xc3\x53\x2f\xa0\x4a\x6f\x34\xb0\x39\xb7\x4c\xb6\x6b\xb0\x81\xe1\x79\x3c\x6e\xbc\x74\x32\xdd\xd4\x96\x9b\x14\xda\x47\xf9\x4c\x17\x9a\x15\xf8\x41\xab\x57\x82\x61\x97\x05\x64\x13\x32\xdd\xc0\xea\x08\xdb\x72\xb4\x86\x2d\x91\x82\x6a\x03\x25\x3d\x67\x38\x1d\x97\xb5\x3e\xbf\xb0\xb4\xce\x91\xb9\x5b\x67\xfa\xfc\xe9\x09\x1d\x3c\x1d\x8f\x00\xc4\xe8\xe9\x31\x7e\x46\x8f\x71\xbf\x0f\xf8\x04\x0f\x9e\x86\xbc\x19\x4f\x0f\x8a\xf9\xda\xc1\x3c\xd6\xf3\x5c\xc5\x13\x02\x59\x11\xa0\xdc\x04\x18\xd8\xc0\xfa\x4e\x29\x21\xa4\xb4\x3d\x4a\x08\x29\x6f\x10\x9b\x18\x79\x70\x46\xd9\x60\x85\x67\x1f\x88\x38\x3c\xa3\x15\xff\xb5\x7a\x15\xc2\x94\xb8\xba\x55\x9c\x55\x03\xc7\x05\x4d\xd4\x02\xa9\xf5\x7a\xe4\xf2\x55\x5a\x05\x03\x91\x4d\xd3\xcb\xe9\x4e\x89\x26\x1b\x3c\x80\x5e\x67\x52\xbd\x5a\xae\x1c\x6f\xea\x44\x7d\x02\x36\xf7\xd9\x1e\x0a\x12\xeb\xd0\x66\xfa\x47\xd5\xe3\xc5\x43\xf0\x26\xaf\x12\x47\x3f\xf8\x18\xba\xb9\xc9\xfa\x82\xaa\x05\x65\xe3\xce\x64\x64\x4c\xe4\x51\x9f\xf4\x23\xd0\x39\xcb\x54\xe7\x02\x4b\x0d\xa4\x3e\x67\xc2\xb4\xfd\x36\xc5\xfc\x8b\x6a\x14\x91\xfc\xdd\xbc\x9a\x96\xeb\x5b\x43\x27\x67\x48\x78\xa3\x27\x67\x11\x28\x55\x99\xa7\x99\x5c\xe8\x72\xf3\xa3\x52\xb8\x20\x26\x33\x8f\x88\x23\xfb\xab\x52\x4c\xe5\x7f\x09\x9a\x20\x23\x30\xea\x5f\x95\x62\x4b\xe5\x28\x58\x9a\x70\xff\xb8\x05\x75\xb5\xca\x70\x2f\xf1\xa5\x0b\xd8\xfc\xfd\x7c\x2e\x49\x75\xbe\x41\x0e\x47\x0b\x57\x5c\x44\xcc\x37\x16\xd0\x25\xbe\x8c\xc5\x40\xc1\x51\x05\x7f\x1f\xad\x18\xf1\x56\x61\xa1\x28\x3b\x7f\xc5\x12\x72\xa9\xc1\x6f\xfa\x5e\x99\x8c\x35\xbc\x39\x39\xe4\xcf\x66\xe1\x74\xcb\x86\xcf\x8d\x38\x7c\xa1\xec\x60\x6d\x7c\xc8\x61\x63\x42\xa6\xae\x41\x19\x70\xb3\x1b\x6e\xd1\x87\xa9\xbf\xd9\xbe\x77\xed\xc6\xfc\x39\x74\xed\x60\xe5\x10\x81\xe1\x76\xb7\x7f\xe4\x64\x7b\x7d\x39\x16\xf0\xaa\xaa\x73\xd7\xa7\x32\xa7\x97\x24\x19\x9c\x6b\x12\xbc\x81\x1b\x69\x86\x75\x8b\x9b\x16\x23\xf5\x5b\xbe\xe8\x04\x8a\x3f\x87\x80\xfa\x8f\x7f\x70\xfb\x04\x06\xe7\xe1\x6f\x66\x9c\x59\x17\x43\x63\x8c\xbf\x0f\xb3\x11\x50\x14\xb4\x50\x39\x41\x8b\x03\x21\xaf\x01\xc2\xea\x0d\xd0\x14\x69\x0f\x4a\x15\x2d\x27\x08\x76\xeb\xa6\x54\xec\x36\x7b\x9d\xf8\xe2\xf0\xd2\xe1\xb0\x58\x4d\x47\xae\xf1\x08\x80\xf5\xfa\x08\x3c\x3f\x2a\xf7\xd7\xb8\x17\xab\x0a\x17\x41\x76\x3f\x53\xf3\x45\x77\x5d\x65\x0d\x46\xfd\x02\xee\x8d\x5c\x00\x89\x6a\x85\xa4\xc4\x29\x4a\x60\x97\xb6\xaa\xae\xfd\x19\x2b\xc3\xdc\xc4\x04\xea\xe4\x6d\x4f\x7b\xd3\x63\xd3\x24\xdd\xdc\x20\xdf\x0d\x5c\x88\x6d\x57\x96\x4f\xc6\x79\x06\xd1\x2a\xb0\x30\xb3\xfd\xcd\x08\x4d\x63\x71\x28\xc1\x67\xfc\x80\xf5\x7a\x71\xd6\x47\xdc\xe2\x27\x45\x78\x40\x6b\x7c\x32\x47\x70\x06\x53\x60\x38\xa6\xb8\x91\xf1\x54\x24\xa1\x70\x6b\x94\x9b\xb7\x30\xbf\xe6\xf6\x7f\x70\x8c\x4f\x34\x9d\x60\xad\x27\x80\xc7\xcb\x71\x3c\x42\x08\x89\xf5\x9a\x3c\x17\xa0\xd7\x2b\x0e\x67\x73\x33\xba\x1b\x81\x90\x90\x40\xae\x2f\xc7\xe4\xb7\xec\xb3\xa6\x5a\xeb\x11\xbc\x1a\x97\xe8\x87\x81\xcf\x1a\x56\x45\x0b\x19\x0d\xf8\x28\x6d\x22\x93\x9f\xb8\xf2\xd0\x86\x80\x46\x21\xc6\xb6\xee\x24\x64\x45\x58\x22\x3b\xdc\xdd\x78\x53\x21\x55\xc7\x4b\x89\x1d\x3e\xef\x7c\xf4\x04\x9a\xa8\x45\x6c\xfb\x06\x91\x0f\x22\x5a\x42\xda\x01\x9d\x1b\xb4\xe5\xe1\x51\x7c\x66\x94\x32\x79\x6c\xdb\xdc\xf0\xa8\x78\x52\x23\x90\x78\x3e\x3a\x11\xe3\x23\x58\x90\xa2\x3a\x14\x8d\xb8\x19\x81\x1b\x98\xba\x5c\x90\x74\x3e\x30\xb3\xdb\x85\xab\xef\x28\x7b\x36\x5c\xf0\x84\x37\xad\x85\x75\xa0\x81\x89\x43\xe5\xf5\x19\x4f\x96\x2f\x99\x12\x94\x48\x34\xb9\x53\x9c\x22\xcf\xdf\x19\x64\xb7\xe3\xef\x6c\x57\xfe\xce\xb6\x33\x70\x9b\x96\x9d\xf4\x7a\xb9\x09\xc0\x2c\xae\xb7\xbc\x98\x13\x41\x2f\x71\x70\x44\x07\x0e\xe4\x15\x5a\x82\x02\x8d\x8e\xc5\x33\xe5\x43\x3e\xb9\xbd\xad\x97\xe0\x85\x8a\x05\xc8\xf7\xf2\xf0\xf2\xf9\xa8\xb8\x62\xf5\x21\xb3\x36\x25\x60\x1b\x36\xca\xdd\x80\xdd\x8d\xe8\xf3\x00\x56\x90\xa1\x11\xa4\x68\x04\x39\x52\x83\xa3\x63\xfe\x1c\x8d\x7a\xbd\x6e\x4c\x9f\xc7\x8e\xdd\xe4\x13\xe2\x20\x98\xd1\x15\x38\xe6\x83\x01\x60\xcf\x84\x83\xbc\xd7\x8b\x19\xf2\x7f\xd8\xc7\x77\x45\xe5\x3c\xbb\x53\x9f\x95\x67\x5d\x39\x82\xcb\x69\xbf\xaa\x44\x77\xe0\x65\xe7\xe7\xc6\x54\xe6\xc5\x6d\x02\xca\x7d\xee\x76\x66\xa9\x9d\x71\xaa\x2c\x4e\x6f\x3e\xe0\x4a\xae\xb3\xa7\x0d\x60\xc4\xd4\x8c\x5d\x06\xd7\xe3\xb7\x86\x05\xe6\x73\x6a\xe7\xf4\xc6\x03\x88\x0f\xc8\x73\x44\x7b\x3d\x73\x1f\x59\xb0\x7e\x10\x53\xcf\xfb\x31\x94\x30\x83\x29\x9c\x35\x23\xd3\xab\xe4\x73\x34\x82\x09\x32\x17\xff\xe4\xd9\x0c\x94\xa6\x50\x69\x32\x21\x53\x43\x37\x9a\x94\x66\x27\x31\x46\x23\x28\xd1\x08\x8c\x63\x8c\x66\x83\x23\x98\xa0\x98\x35\x8f\x35\xc1\xd3\x70\x33\xf4\x99\x9d\x02\x9c\x23\xe6\x08\xc6\xb8\xfc\x17\xf4\x02\x71\xbf\x0f\x60\x8a\xf0\x71\xfa\x8c\xf4\x8f\x8e\x53\x7f\xe5\xbe\x68\x12\x05\x52\x00\x57\xa8\xce\xa9\x53\xa0\xc5\x81\x55\x3f\x79\xce\x4f\xe2\x72\xff\xfd\x7c\xdc\xcc\x4e\x1f\xce\xd1\x02\x8c\x33\x94\xc0\xc5\x73\x1b\xfa\x64\x91\x67\x3b\xaf\xcd\x26\x9d\x9a\x04\x72\xf9\x1d\x74\x3c\x87\x2b\x98\x41\x09\x60\x82\xb2\xbe\xbf\xe9\xef\x54\x48\xbd\x89\x20\x6a\xe2\x9f\x5b\x77\xc8\xa1\xc5\x6e\x79\xfd\x35\xb0\x29\x1a\x1d\xa4\x88\x3c\x1f\xf5\x7a\xe4\x99\x3c\x29\x6f\x51\x12\xee\xd0\x71\xb1\xcb\x67\x88\x1c\xcf\x9e\xc9\xe3\x99\x65\x54\x19\x42\x28\xa6\xc5\x72\xf9\xe6\xb3\x60\x87\x83\xe1\xd5\x7a\x1d\x67\x88\x0e\xaf\x06\x29\x14\xbd\x5e\xd7\xc6\x71\xf4\x98\x03\x00\x66\xcf\x14\xc0\xfd\xfe\x01\x49\x25\x31\x01\x2d\x04\x38\x13\x04\x7f\x38\x10\xa8\x7b\x04\x55\xbf\x38\x53\x39\xcc\x9b\xf5\x8f\xf4\xe2\x7a\x1c\xe1\x32\x8e\x9a\x84\x9f\x22\x4c\x65\x89\xa5\xf9\xeb\x78\x84\x10\xd3\x22\x90\xc9\x2c\x53\xdd\x0c\x0c\x6a\xdd\x60\xe7\x9d\x2e\xfc\x69\xd7\x80\xcf\x32\xa0\x3b\xc9\xf2\x66\x4b\xa1\x51\xc1\x74\x2d\x43\x57\xbd\xde\x6d\x98\x0f\xdc\x59\x25\xc8\xdf\x39\x79\xc6\xe1\x6c\x05\x39\xe3\xc8\x09\x09\x23\x0e\x25\xa2\xc7\xc7\x16\xb7\x19\x92\x87\x58\x73\x00\xa6\x09\x03\x17\xe3\x95\x64\xa1\x0c\x40\x3e\x38\x2a\xe2\xd6\x60\x27\x63\x97\x51\x86\x01\x9c\xa1\x34\x47\x9b\xed\x15\xc3\x58\xa2\xd9\xf0\xaa\x9f\x7a\x32\x78\xee\x82\x28\x1e\xcb\xe7\xe6\xe2\x43\xd7\x19\x1c\x75\xd1\x60\x80\xc1\x31\x90\x28\x9e\xa1\xb8\xde\x75\x89\x3c\xf3\xce\xf2\xf7\xcd\x1b\x93\x54\x17\x21\xe9\xfb\x7e\x86\xc8\xb1\x26\x51\x78\xb7\x0e\xb1\x7f\x6c\x37\x38\x2a\x89\x6e\x8a\x0b\x4a\x0f\x71\x82\x57\xca\x24\xf0\x59\xad\x52\x3a\xab\xc5\x66\xfb\x04\xf1\xf0\x43\x5f\x88\xdc\x44\xcd\x57\xa4\x74\x23\x16\xbc\xf6\xb6\xf5\xdf\xbc\xfd\xd3\x0f\xc3\x1f\xac\xb3\x49\x1c\x37\x1a\x0e\x9d\xbc\xfd\x6e\x41\x3a\xef\xf4\xe4\x3a\x6e\x72\xd6\x72\x47\xbd\x1d\xb1\xf3\x57\x3d\xd8\x5f\x3b\x73\x2e\x3a\xb8\x23\xed\xcb\xec\x8e\xe2\xc6\x55\x79\x45\x18\x49\x22\x7b\x6f\x37\x27\x6a\xb6\x78\x34\xa0\xcc\x68\xcd\x50\x99\xa2\x1c\xac\x59\xca\x25\x79\x34\xb0\xcc\x68\xcd\x60\x99\x22\x07\x55\x7b\x66\x2f\x4b\x67\x67\x9c\x2b\xa9\x04\x5e\x1d\x0a\x9e\x29\xe3\x39\x18\x2a\x07\xb6\x92\x2b\x0a\x69\x71\xa0\xbf\x91\xc1\x92\x5e\x1a\x65\xa1\x52\x2f\x53\x0b\xc2\x94\xae\x4a\x92\xc6\x9a\x29\x3d\x3b\x9c\x71\xa6\x30\x65\x44\x0c\x8c\xe3\x4a\x5d\xb1\xd0\x92\xd4\xa7\xf1\x1d\xe3\xba\x91\x81\x6b\x5c\xda\x5f\x85\xf7\xd5\x41\x71\xd1\x30\x3a\xa6\xcf\x98\xbf\x2f\xa2\x5e\x58\xc0\x88\x4d\xe8\xf4\x20\xe8\x29\xea\xe3\xc0\x75\x6c\xb3\x71\x82\x9d\xe6\xcb\x85\x52\xc4\x6d\x94\x26\xd7\x87\xf5\x37\x63\xc3\x94\xf3\x0f\xd9\x0a\xd8\x37\xb7\xf2\x44\x0e\x05\xd1\x14\x1f\x73\x23\xff\x04\x55\xbe\xc1\x5a\x25\xb9\x02\xc5\xa8\x67\x58\xd2\x59\x04\x20\x5d\xaf\x63\x8a\xb0\xdf\xb8\x05\x20\x26\xbc\x17\xcb\x6f\x7b\xcc\x20\x90\x02\xd0\xc0\x74\x0a\x62\x70\x04\xd5\x44\x0c\xf9\x45\x9e\xf9\x73\xe0\x6b\x3e\xea\x3b\xd2\xc8\x01\x31\x8e\xfa\xe2\x80\xe4\x73\x8b\x59\xb0\x82\x90\x38\x7f\x98\x98\x39\xd0\x23\x98\xb7\xb3\x7f\x07\x75\x2c\x36\x23\x43\x74\xc1\x57\x4d\xa3\x82\xa7\xa9\x49\x28\x6d\xb2\xf2\x6e\x41\x9a\x1b\xa4\x8e\xb2\x95\xe0\x1f\x69\x62\x22\xa3\x53\xf6\x81\x24\x03\xca\x06\x5c\x6f\x92\xa7\x0d\x55\xce\x39\x3f\x4f\xc9\x8e\xe5\x83\x33\x82\x85\x09\x3e\xb8\x4b\xb5\xc1\xc7\xa6\x0e\xe7\x78\x46\xce\x38\xff\x30\x98\x71\xc6\xc8\x4c\x6d\xab\x52\x81\xaa\xf9\x94\xaa\x35\x57\x17\x54\x29\x22\x6c\xeb\xa3\x26\x60\xa9\x5a\x64\x67\xed\x73\xc6\xff\xc8\x04\x19\xe0\xa4\xbd\x86\x26\xb4\x15\xd9\x32\x05\x92\x2c\x79\xc2\x6b\x15\xca\xd4\x5c\xff\xbc\xe2\xab\x6c\x55\xff\x4c\xe7\x02\x2f\x1b\x62\x6f\x42\x27\x5f\x7b\xf5\x08\xce\x61\x02\x17\x70\x05\x97\x9f\xc6\xdf\x32\xa0\xfd\x0a\x6d\xc3\x45\xb8\x13\x8a\x5a\x76\xd7\x7a\xbc\x8c\xeb\x04\xa9\x76\x6a\x57\xa1\x52\x71\xfb\x46\x39\xe9\xb2\x3b\xb7\x35\xf4\x4c\x77\x6a\x5e\x27\x72\x7e\xbb\x76\x7e\xa6\x78\xa7\x66\x8e\xe2\x23\x98\xed\x36\xb9\x32\xfd\xa7\x3b\x35\xaa\x6d\x8a\xd9\x4e\xcd\xaa\x3b\x65\xbe\x53\xab\xea\xf6\x49\xb6\xb5\x72\x6c\xa1\x7c\xb6\xca\x6d\x2d\x3c\xed\xba\x7d\x05\x97\xbb\x54\x76\x7b\x73\x15\x9c\xb9\x35\xee\x3c\xe3\xcb\x15\x56\x87\xe7\x44\x59\x39\x44\x0c\xf2\x88\x14\x3f\x87\x67\x74\xc7\xa5\xff\xb7\xb0\x44\x60\xbd\x26\xee\x64\xf7\xdf\xc6\x4b\x4c\x59\xb4\xdb\x54\x52\x7a\xf6\x73\xcd\xe2\xd4\x82\xf0\x9a\xce\x04\x4f\xe9\x99\x9e\x87\xfd\xd2\x02\xb8\x73\xe3\xb5\x0b\x68\x57\x79\x60\xde\x4b\x2f\x78\x9a\xec\x9e\x44\xf6\x13\x38\xd6\xce\x52\x2c\xe5\x77\x78\x49\xe4\x78\x12\xb5\xc2\x37\x2d\xfb\x6e\xf8\x89\xb1\x39\x3d\xcf\xc4\x63\x68\x67\xd7\xa5\x04\x1b\xc5\x95\xcf\x86\x0c\x73\x30\xce\x52\xd2\xec\xcb\xe0\xbc\xee\xf9\x72\x95\x29\x92\xc4\x75\x17\x49\x63\xf5\x46\xc1\xef\xf5\x7a\x9b\x7a\xe2\x9e\xf4\xe1\xf4\x02\x5f\xc9\xce\x02\x7f\x24\x1d\xdb\x2c\x02\x9b\xd8\xdf\x0e\x45\xf9\xe1\x3b\x8c\xfa\x85\x2b\x19\xd3\x1b\x1c\xf4\xa3\x61\xd4\x27\x90\x22\x11\x97\xe2\x1f\xc5\xd4\xbd\x8d\xc8\x1f\x25\x71\x63\xeb\xc8\x1f\xf5\x7b\x33\x73\xe4\xe1\x0b\xa2\xd2\x9f\xa8\xe1\x0c\xa7\xa9\x31\x78\x80\xb1\x3a\xa8\x47\x40\xbd\x5c\x91\x99\x22\x49\xa7\xb4\x72\x1d\x83\x6c\xeb\x30\xe2\x54\x28\xbb\x3a\x89\x51\xaf\xfc\x34\x3a\x1a\xf2\xa4\x53\x9f\x8b\x8f\x3a\xd4\xe1\x46\x0f\x2c\x16\xa4\x1c\x54\x46\x21\xe2\xe2\x91\x7e\x15\x8e\x5e\x4a\x23\x70\xdd\xb0\x7d\xb4\xae\x84\xa5\x7c\xec\xdc\x00\xe6\xee\x66\xbd\x9e\x71\x26\x79\x4a\x6c\xd8\x55\x73\x05\xd7\x08\x60\x55\x99\xfb\x74\x90\x2e\xb0\x7c\x63\x0e\x04\x87\xbe\x66\xe7\x9d\x5e\xaf\x56\xf3\xa4\xf6\x25\x56\x60\xec\x8f\x17\x71\x65\x82\xd1\x2a\xb3\x80\xfe\xc4\xa9\x59\xdd\xc2\xee\x83\xd3\xed\xa4\xf4\x57\x71\x60\xe9\x36\xe1\x08\xa5\x02\x3d\x50\x49\xab\xdb\x32\x95\x52\xbd\x93\xca\xdf\x66\x1a\xba\x96\x20\x92\xa7\x1f\x49\x65\xd2\x0d\x5f\xf3\x16\xed\x73\x38\x3d\xcd\x97\xf4\xf4\xb4\x61\xbc\x61\x5e\x5c\x2b\x2c\x26\x76\xe3\x8c\xf2\xa9\xdc\x11\xa2\x66\x50\x1c\x0c\xe7\x44\x7d\x7f\xc1\x4a\xab\x58\x0f\xbb\x61\x6a\x9c\x94\xff\x8c\x49\xa9\xd7\x16\x92\x4f\x39\xd6\x82\x33\x55\x14\xa7\xf4\x1f\x8f\x72\x86\x85\x7d\xba\x57\x06\xec\x5b\x8e\x13\x17\xdb\x79\xf8\x22\x14\xb8\xca\xbe\xcf\xc3\x00\x52\xbd\x8d\x1b\x0d\x00\xc1\xb4\xac\x90\xf4\xab\x9a\x9f\x05\xf9\xd5\x8e\xf3\x34\x91\xcc\x07\x26\x3f\xfc\xc0\x3d\x2d\x7d\x2c\x21\xa4\x62\x63\x6d\x74\x03\x36\xcf\xb8\xfe\x48\xae\xdc\x35\xcd\x07\x72\x25\x37\xd0\xc0\xdc\xfc\x40\xc1\x3a\xb7\x8b\x14\xba\xfb\xcd\xbc\x3d\x14\xe8\x7a\xe3\xde\x28\xf8\x6b\x4d\xf3\x54\xc1\x7b\xd6\x4c\x98\xc9\xcb\x55\xc4\xef\xa4\xfd\x08\xc5\x93\x9f\x7a\xff\x36\xfd\x0c\x44\x60\x48\x2e\xc9\x2c\x26\xe0\x80\xf7\x7a\xb1\x98\xd0\x29\xe2\x26\x69\x4e\xee\x2b\xdd\x24\x19\x19\x04\x6b\xf1\x7c\x40\x13\x2d\xaf\x7f\x62\x12\x0a\x6c\x9c\xd7\xf9\x68\x0d\x5e\xca\x5e\xab\xd1\x90\x8d\xa3\x3e\xd9\xc0\x84\x34\xd7\xa7\xf3\xb8\x4b\xfc\x65\x84\x31\xe1\xf9\x38\xe0\x36\x28\xe9\xe1\x4f\x71\xd8\x17\x88\x87\x9f\x81\xc3\xe2\x92\xf6\x44\x4d\x9e\x4e\xc7\xba\xdd\xa6\x85\xfc\xee\x42\x78\x4d\xcf\x1a\x3b\x64\xbd\x36\xef\x48\xcb\xae\xbc\xf5\x74\x29\xf6\x39\xf7\x70\x86\x97\x44\xcf\x36\x16\x65\xb9\x2b\x7f\x26\xcd\xec\xe4\x55\xcc\x41\xaf\xa7\xe2\xb0\x86\x00\xa0\x16\x55\xfe\xc9\x8f\x92\x74\x7c\xa7\x49\xe7\x23\x11\x26\xa0\x6a\x87\xcf\x3b\x99\x48\x3b\x2b\x2c\xf0\x52\x0e\x3b\xf1\xd7\x34\x31\x71\x63\xe6\x94\x25\x9d\xe8\x49\x9f\xf6\x9f\x44\x5a\xb4\x32\x4b\x6b\xbc\x74\x13\x9a\xe4\xa5\xa2\xff\x24\x1a\x3e\xb1\x00\x19\xe7\x80\xda\xb0\xaf\xa9\x94\x94\x9d\x17\x83\x8c\xf3\x76\x9d\xf8\x5b\xce\x3f\x58\xe9\x6d\x5c\x8c\xe1\xc4\x37\x3b\xf4\xf0\x49\x4e\xc1\xba\xff\x13\xc2\x66\x3c\x21\x3f\xbe\x79\x95\x2b\x08\x31\x07\x63\x2b\x75\xde\xdf\xf1\x7f\x97\x0d\xcf\xcf\xfe\x66\x77\xae\x97\x37\xa1\xdf\xd2\xc6\xd5\xd9\xc7\x03\x78\x11\x3b\xe7\x7d\x1b\xbd\xdf\x96\x0d\x65\x6a\x1e\xfc\x81\x61\xc6\xe8\xdf\xfd\x1b\x0f\xfb\x40\x06\xa7\x3f\x36\x77\xe1\x8b\x6d\xd9\x49\xc3\x37\xdf\xed\x78\x32\xbd\xa1\xe7\x86\x07\x37\x76\x13\x95\xe7\x10\xc4\x1d\x7d\x3e\x38\xaa\x67\x28\x78\xe3\x73\x12\xac\xbc\x77\xb7\xec\xcc\x30\xd3\x74\x83\x53\xe9\x6e\x82\xec\xd0\xe3\xce\x13\x23\xb0\x3f\x89\x82\x47\x3b\x8a\x5b\x2a\x6f\x79\xa7\x93\xc3\xe1\x6f\xdf\x6b\xf3\xf0\x97\x9b\xfc\xec\x6f\xf9\xee\x78\x11\x4f\xa6\xf9\xce\x26\xcd\x33\xb5\xcc\x41\x58\x07\x09\x6e\x23\x77\x4e\x08\x34\x2f\x8a\x00\x64\xed\x8d\x5a\xe4\x57\xeb\x2d\xdb\x1d\x81\x8d\xed\x52\xc5\x0c\xf4\x7a\x45\xc7\xcc\x76\xcc\x87\x4b\xbc\x2a\x77\x9a\xc3\x69\x53\x0f\x20\x73\x0d\xe4\xfe\xe8\x19\xbb\x42\x33\x3f\x12\x98\x25\x7c\x39\xc8\x44\x3a\x90\x78\xfe\xd8\xd6\x91\xc2\x09\x2a\x7a\xf1\xe5\x57\x5f\xbf\xfc\xe6\xbf\xfe\xf0\xea\xbf\xff\xf8\xed\xeb\xef\xbe\xff\xe1\x7f\xde\xbc\x7d\xf7\xe3\x9f\xfe\xfc\xbf\x7f\xf9\x3f\x7c\x36\x4b\xc8\xfc\x7c\x41\xff\xf6\x21\x5d\x32\xbe\xfa\xbb\x90\x2a\xfb\x78\x71\x79\xf5\x8f\xd1\xd1\xd3\xcf\x7f\xf7\xc5\xef\xff\xfd\x3f\xfe\x5f\x04\x05\x8a\xa2\xf2\x93\xbc\x3e\x52\xc3\xd9\x02\x8b\x17\x2a\xbc\x73\x36\x3f\xed\xac\x63\xf0\x99\x3f\x19\x03\xef\xbb\x16\xc6\xed\x77\xde\xc0\x33\x96\xc7\x44\xd5\xcd\x1a\x3d\x69\x50\xd7\xbf\xd6\x43\x52\x7b\xff\x34\x2f\x18\xa2\x55\x78\xcf\xae\x3a\xb8\x23\xb3\x33\x63\x07\x09\x13\x83\x0c\xa3\x2d\xd2\x93\x54\x58\x91\xc1\x12\xcf\x16\x94\x7d\x32\x62\x71\x67\xae\x7d\x85\x55\xf8\x47\x18\xae\x04\x45\x18\x31\xa5\xe4\x75\x58\xe4\xec\x70\xd2\xeb\x5b\x0d\xec\x81\xe7\x46\x06\x74\x89\x88\xfb\x01\xbb\xc1\xd7\x3a\x4b\x32\x6d\x5f\xdb\x79\x76\x18\x21\x89\xec\xd8\xaa\x36\x4c\x67\xd1\x16\x05\xdd\x4c\xd4\x34\xec\xb6\x21\x69\x96\x3b\xbd\x1c\x80\xb6\x4b\xff\x72\x73\x96\x09\x41\x98\x32\x23\x7f\x87\x97\x24\xf7\x8f\x97\xd9\x59\x1e\x6c\x49\xa2\x6b\x17\xe3\xd8\xde\x39\x20\xe2\xd2\x4d\xbd\x13\x98\x59\xaf\x03\xb9\x5e\x4f\xa6\x10\x23\x62\xd3\x4d\x55\x0a\xcc\x0d\xa7\xf5\xcf\xe3\xf9\xed\xe6\x73\x66\xb7\x0c\xe2\x5a\x2a\x34\xa3\x56\x7b\x2d\x4c\x2c\x50\x40\x31\x9c\x33\x10\xf4\x84\xeb\x3d\xe1\xbc\xa7\x0a\x14\xf5\x8e\x36\xee\xc6\x74\xf8\xf6\x87\x6f\x5f\xbc\x43\xd1\x67\x51\xf5\xe2\xd4\xdf\x00\x5a\xc1\xa0\x8e\x57\x17\x65\xae\x53\x8c\x62\x97\x49\x80\xeb\x66\x4e\x1b\x0b\x44\xa0\xde\x48\x85\xbf\x27\xb2\x04\x77\x22\xc6\xe2\x64\x22\xa6\xe6\xf0\x13\x24\xc9\x66\xe1\x9d\x7d\xf8\x9a\x8e\x4c\xc4\x14\x29\x48\x36\x00\x5e\x3b\xa2\x15\x1b\xab\xe2\x7b\xef\x25\x15\x8e\xd0\x45\x8e\x74\xeb\xf0\x4b\xbe\x24\x6a\xa1\x29\xe3\x82\x30\x65\x03\x69\x45\xe0\x80\x21\x55\x38\x7e\xe5\x28\xc1\xc5\x9d\x93\x0f\x28\x64\x12\x7f\x9a\xe8\xdb\xa2\xd7\x63\xbd\x1e\x07\xfe\xb6\x3a\x47\x8d\xca\x51\x63\xa9\x6e\xdc\x89\xfa\x31\xd7\x87\x4b\x95\xee\x40\x3f\xea\xcc\x05\xd7\x92\x55\x5f\x18\xd3\x98\xfe\xc5\x6a\x66\x35\x0c\x36\x7a\xdc\x89\x9a\x22\xba\x61\xc3\x62\x80\x77\xbc\x49\xf5\xae\x0a\x3e\x61\x7d\xeb\xe3\x1d\xfa\xef\x5e\xdb\x1d\x35\xbe\x6e\x3e\xdd\x9d\x5c\xff\xac\xb4\x4d\xc3\x89\x8c\x9f\x38\x83\x5d\x75\x76\xfd\xe8\x49\xe7\x79\xb4\x81\xe1\xf0\x55\x15\x20\x1a\x9a\x40\x53\xfe\xf4\x18\x81\x92\x0b\x69\xb5\xc7\x20\x45\x90\x93\x9c\x46\x70\x70\x04\x0e\x08\x1a\xe5\x9a\xd7\x49\x90\x13\xa8\x4f\xc6\x64\xa8\xf7\xb4\x99\x55\x7c\x64\xe9\x5f\x94\x18\x09\x99\x7a\x59\xa5\x3a\x9a\x4d\xa1\x50\x27\xa1\x1f\xd9\x07\xc6\x2f\x58\xc7\xce\xbe\xf3\x57\xc3\xe5\xff\xea\x79\xcb\x05\x4d\xd3\x62\x73\x58\x1f\xb6\x80\x87\x39\xa1\xb3\xc6\x81\x9c\x6f\x58\x42\x93\x4a\xe3\x0d\xac\xf2\x87\xc6\xc7\xe1\x05\x92\xed\xcb\xfd\x60\x7f\xba\xc0\x01\x15\xe6\x70\x63\x2f\x25\x50\x7c\x27\x41\x8d\xe6\x68\x03\xe1\xdd\x2c\xb2\xaf\x5c\xd7\x6b\x0a\xe7\x48\x0d\x15\x5f\xaf\xe9\xc1\x08\x21\x34\xcf\xc5\xd4\xa8\x1b\x81\x93\x98\xa1\xb9\x5b\xa6\xf8\x08\xc0\x0c\x75\x47\x60\xac\x3f\xea\x9f\x47\x00\x1a\x8f\xd5\x4a\x13\x8e\x66\x41\x93\xd4\x36\xe1\x68\xa6\x7f\x1e\x01\x93\x1a\xc5\x37\xa0\xc0\x44\xa8\x0e\xfe\x94\xc6\x4d\x3a\xe6\x88\x07\xd4\x21\xe1\x08\x00\x88\x6d\x11\x43\x2c\x28\xc2\xa6\xc8\xca\xad\x7a\xba\x71\xfd\x75\x07\x45\x0a\xce\x10\x39\x70\x5d\xcf\x10\x69\xeb\x9a\x22\x55\xeb\x9a\x22\x84\x98\xcd\xd8\x32\x43\x08\xf1\x2e\x42\x69\xaf\x27\x02\x06\x6e\xd0\x0f\xdc\xd3\xf5\x1b\x56\x91\x71\x45\xe7\x57\x6d\x74\x50\x5a\xd7\xad\xed\x9b\x29\xc0\x96\xd6\x56\xbf\x08\xd3\xde\x70\x94\x4e\xc8\xd4\x1c\x95\xd6\x53\xbd\xf0\xf5\x79\xc6\x8d\xbf\x0f\x9b\xd0\x69\x30\x57\x6b\xbb\x6d\x01\xae\xda\xef\xb6\xe1\x9a\x8b\xac\x8c\xaf\xe7\xc2\xe7\xf3\x71\xeb\x43\x9d\x7a\x3b\x4f\x41\x0a\x1c\xa8\x13\xe1\xe3\x0c\xd4\xaa\x69\x26\x35\x23\xb1\x80\x47\x60\xdc\x02\xb3\xb1\x5b\x98\xf0\x18\xb5\x90\xcb\x21\x77\x72\xcc\xc9\xa2\x26\x7f\x57\x0d\x8f\xdc\x89\x5b\x89\x65\x6f\x70\xc7\x1c\x1b\xca\xd8\xc2\x04\x05\x49\x4c\x80\x10\xcd\xf5\xa1\x12\x57\x6f\x3f\xc9\x88\x1b\x13\x95\x57\x35\xa0\x92\x86\xac\x16\x4a\x74\xdd\xc4\x3e\x6a\xa1\xa6\x27\xa3\x29\x94\xa5\xe0\xd2\x30\x43\x56\x3c\x91\xe0\x40\xc4\x59\x4b\xf8\x09\x3b\x99\x6c\xa2\xa6\x07\x58\x6b\x75\xf6\xec\x2e\x1f\x7f\x02\x58\x99\xfb\xc0\xcd\xd1\x44\xa2\x28\xe1\xaa\x21\x08\x76\xce\xf2\x6d\x05\xcf\xf2\xad\xf9\xc3\x9d\x7e\xfe\xec\x8c\x41\xed\xf8\x56\xfa\xc8\x0d\x9e\xcf\x34\x0b\xfc\x59\x46\x93\xc1\x39\x61\x36\x73\xc5\xa7\xbe\xec\x74\x03\x35\x04\xdc\xc8\x33\x3a\x82\xe1\x39\x51\xef\xe8\x92\xe4\xfe\xda\xd1\xa5\xfb\xdf\xc0\xfc\xe7\x77\xfa\x3f\x57\xfe\x4f\xff\xbf\x28\x0f\xd4\x7d\x38\xb9\xbc\x9a\x1e\x9e\xc3\x86\x45\x8a\x49\xff\xe8\xf7\x9f\x95\x34\x44\xf0\xdb\xa3\xdf\xaf\x47\xb9\x19\x00\x95\xbc\x97\x8f\x7e\x0f\x60\x1c\x5d\x6a\x61\x41\x9d\x88\xf1\xe7\x3d\xb1\xfe\x0f\x50\xe0\xfc\xe8\xf7\x6e\x55\xcb\xae\x98\x07\x15\x2c\x57\xee\x13\x64\x93\x2b\x59\xf3\xc5\xc3\x6e\xe6\x7b\x57\x2b\x1c\x22\xf8\x63\x50\xf6\x80\xda\x5a\x6b\xa0\x89\xf3\x0c\xcf\x3e\xec\x58\x3d\x77\x27\xcc\x6b\xd7\xe1\x93\x87\x26\x76\x90\xf5\x6d\x90\x37\x54\xbd\xc0\xe9\x87\xdc\x39\xa5\xd1\x75\xd4\xfb\x61\x7d\x12\x25\xbc\x1c\xa8\x2f\xf0\x40\x2a\x17\xb0\xb6\x02\x5e\x2a\x08\xe2\x0d\xca\xb6\x02\xbc\xcd\xc9\xc5\xf8\xd6\xca\xc3\x2c\x77\x8d\xf1\xde\xb6\xcd\xf4\x53\xdd\xca\x37\xd9\xec\x6f\xb8\x34\x69\xb8\xa6\x6e\xf4\x8f\x68\x59\xa4\xfb\x2f\xd0\x9f\x5f\xbc\xf9\xee\xd5\x77\xff\x75\xfa\xc7\x97\x7f\x41\x64\xf8\xd5\x8f\x6f\xde\xbc\xfc\xee\xdd\xe9\x9b\x97\xff\xf3\xe3\xcb\xb7\xef\xcc\x57\x97\x90\xc7\x6a\x42\xcd\x55\xa2\xd3\x53\x03\xf4\xa9\x20\x7f\xcf\x88\x54\x11\x94\xa8\xdc\x75\x50\x23\xa1\x82\xcc\xd4\xe9\x05\x16\x4c\xa3\xe0\xc0\xbe\x73\xb0\x36\x99\xd7\x1a\xf5\xfe\xbd\xe1\x5d\x43\xbc\x08\xb2\xe4\x8a\xbc\x4a\xfe\xcb\xaf\x12\x6a\xfe\xbc\x5e\xe7\x54\xb5\x81\x65\x5f\x7d\x8d\xe2\xcc\x32\x34\xfb\x34\xc1\x3f\xd6\xb2\x9d\xc0\xb9\xc7\xca\xae\x6e\xea\x09\x5c\x80\xeb\x59\xaf\x97\x0e\x8d\x83\xb9\xf3\xf3\x58\xa1\xb4\x0e\xd6\xd0\xf3\xef\x18\x1c\xcc\x6b\x6f\xcf\x28\xca\x09\x7b\x18\xdc\xbf\xc4\x64\xf8\x81\x5c\xd9\x04\xc7\x08\xa1\x5c\xa7\x6d\x34\x90\xe6\x5b\x2b\xc7\x74\x26\xd2\x31\x81\x1f\xc8\x95\x1c\xab\x0d\xb0\x89\x8a\x63\xb0\x89\xc9\x90\x91\x0b\x13\x5f\x09\x2a\x70\x90\xf2\x19\x4e\xdf\x2a\x2e\xf0\x39\x31\x70\x7f\x24\xaf\x14\x59\xba\xb1\x61\x1e\x8c\xac\xe4\x23\x93\xc4\xdc\x31\x70\x0d\xd1\x32\x00\xbf\x00\x7e\x55\xe9\x5b\x12\x65\x3a\xc6\x70\x09\x60\xdb\xa8\x12\xc0\x74\xa8\x97\xed\x8d\xc1\x60\x4c\xe0\x12\x66\xfa\x9b\x0f\xd9\xf6\x03\x4f\x53\x7b\x6a\xeb\x91\x3f\xa2\x0b\xca\x12\x7e\x31\xe4\xcc\x6a\x5d\x19\xd3\xec\x5e\x63\xac\xb1\x20\x64\x59\x0d\xfe\x32\x1f\x7b\xbd\x8f\xb1\x1e\xcd\xad\xe7\x06\x76\xfd\x5a\xae\xd7\xfe\x97\x2d\x4c\xbc\x6c\xd5\x36\x13\x0c\xa0\x21\xa7\x45\x1c\xa8\xa2\xb6\x87\xce\xcc\x38\x0b\x31\xae\xcc\x33\x8e\x0e\x17\x9d\x0b\x2c\xf3\x57\x0a\xe0\x20\x1f\x6a\xce\x67\x99\x34\x10\x99\x10\x6f\x09\x4d\xbe\xd2\x95\xca\x61\xf3\xe8\x3c\x2e\x01\x71\xee\x10\x2d\x01\xb8\x6e\xc7\xf3\x81\x93\x1e\x46\x90\xd7\x3c\x70\x80\x79\xee\x1e\x38\x92\xc6\xd1\xc4\x3c\xbe\x98\x76\x7e\x34\x56\x3a\xcc\x3a\xdf\xbf\xc8\xd4\xa2\xe3\x77\x7e\x47\x2d\xb0\xea\x68\x14\xcb\xce\x15\xcf\x84\xdd\x38\x9d\x17\xab\x55\x87\xca\x4e\x42\x56\x82\x98\xb7\x0f\x26\x10\x8d\xd6\x73\x3a\x67\xe4\x3d\xeb\x94\xfe\x67\xc1\x33\xf9\x13\x70\x67\x9e\x99\xd4\x59\x82\xa4\x04\x4b\x02\x3b\x58\x76\x12\xae\x87\x96\x5c\xf7\x88\x3b\x2b\xae\x08\xb3\xa6\x42\x32\xcb\x04\x55\x57\x9d\x8f\x59\xaa\x37\x99\x0d\x0d\x37\xac\x76\xff\x07\x9a\xd8\x18\x44\x1d\x17\x6b\xb3\x73\x76\xd5\x91\x44\x29\xdd\xeb\x5f\x4d\x80\xe7\x1f\x99\xc4\x73\xf2\xc6\xcd\x69\xdc\x51\x22\x23\x7f\xd5\xf0\x98\x29\xd9\xe7\x27\x25\x16\x5e\x1a\x24\x82\x64\xd8\xd0\x8d\x35\x62\x28\xd4\xb8\x46\x18\x1c\xa8\x5e\x2f\x6e\x5b\x26\xd5\xbe\x53\x30\xd0\x64\xa1\xe8\x92\xf0\x4c\x05\x31\x03\x53\xac\x88\x88\xd3\x12\x85\x34\xd1\x60\x41\x71\xb0\x83\x33\xb5\xe0\x82\xfe\xc3\x3a\x7f\xe9\x92\x84\x30\xaa\x4b\xb8\xd0\x6b\x1d\x3c\x5f\xd1\x15\x3c\xfe\x4c\xba\x84\x0b\x2a\x89\x21\x65\x41\x66\x84\xea\xf5\x73\xb9\x17\x4c\xdc\x7b\xb3\x09\xdd\x38\xc3\x48\xcb\xf2\xf0\x68\x34\x32\x37\x2e\x6e\x83\xe2\xc4\x8a\xf1\xdf\x52\xa9\x34\x8f\x8c\x23\x69\x27\x1b\xc1\xb9\xb9\xa9\x71\x69\xd9\x4a\xfc\x27\xdf\xa1\xbe\x17\x8b\x98\xad\x1d\x35\xbc\x47\x0a\xb8\xbf\x7f\x15\x68\xea\x38\xe6\x53\x3a\x7a\x90\xcd\xbc\x6d\xed\x73\xf4\xfc\x5c\x0f\x90\xef\x47\x6f\x6d\x98\xa5\x04\xb3\x1f\x57\xb1\x19\xcc\xfc\xac\x0d\xa7\xbf\x8b\x77\x76\xd9\x74\xbd\x0a\x63\xab\xd5\x5f\xd9\xef\xb5\x15\x56\x8d\xa1\x1d\x75\xed\x32\xf4\x35\xc6\xb9\x01\xf0\xf3\x2f\x1c\x80\x1e\x90\x70\xd4\x62\xa0\x99\x16\x33\xad\x8e\xef\x09\xcd\x75\xea\xc9\xce\xe9\xc5\x8a\xaf\x3c\xf8\xde\x49\xa5\x8d\x59\x35\xf7\xee\x26\x69\x96\x29\xf4\x5d\xc8\xea\xa2\x5d\xf1\x80\x61\xb0\x12\xf4\x23\x56\xe4\xf0\x53\x3b\xd8\xf1\x8f\x44\x08\x9a\x90\x6f\x39\x4e\xde\x1a\xbb\x40\x93\x1b\xa3\x20\x92\xa8\xa6\x2a\xba\x46\xf7\xc8\xfa\x80\x35\x76\x40\xe7\x71\x1e\x2b\xc0\xc4\x9a\xb2\x3a\x57\xc2\x67\x46\x04\x72\x07\xba\x0b\x7c\x18\x47\xd6\x34\x11\x01\xc8\x8a\x2a\xe7\xc4\x47\xb4\x95\x5f\x5e\xbd\xb3\x91\x71\x8b\x9a\x93\xd1\xf4\x40\x0c\xa5\x98\x21\x02\x99\x16\x04\x08\x53\xdf\xf1\x84\x0c\xa9\x89\x85\x6b\x13\xa4\xc4\xe6\x39\x8f\xd3\x37\xbb\x47\xdb\x30\x5f\x73\xb4\xdf\xf6\xc2\xc7\x3d\x50\x98\xf1\x84\xec\x2a\x07\x3f\x84\xce\xcc\x8a\x30\x15\xb9\x9b\x01\x33\xf1\x82\x6b\xd0\x9f\x61\x49\x7e\x14\xe9\x78\x8b\x53\xb0\xd3\xa7\x17\x4a\xad\xe4\xf8\xf0\x30\xe5\xe7\x94\x0d\x2d\xef\x91\x43\x46\xd4\x61\xe8\x04\xab\x08\x63\xd8\xc6\x86\xec\x47\x6e\xfe\x87\x9e\xc7\x92\x48\x63\x36\xaf\x32\x36\x5a\x4d\xe8\xb0\x0c\xc2\x0e\x60\x34\xe3\xcb\xa5\x89\xaa\xe6\x6f\x21\xf3\xab\xf9\xf1\x24\xc2\x2b\x3a\x70\x0e\x26\xba\x6a\x4a\x09\x53\xa7\x34\x89\xa6\xb0\x76\x91\x3f\x9e\x44\x72\xc6\x4d\xa6\x6a\xc6\x6d\x1c\x78\x41\xe4\x8a\x33\x49\x4e\x97\x7a\x6d\xa6\xd0\xff\xfd\x9a\x27\xa4\x11\xae\xb0\x42\x04\x4d\x70\xc5\xbc\x91\x1b\xe5\x46\x1c\x4e\x0a\x3c\xf9\xa6\xef\xae\x56\x24\x02\x30\xb2\x77\x7e\x53\x8d\x1f\xbc\xa2\x7f\xb2\xf3\x1a\x47\x47\xc3\x51\x04\xc3\xba\x5b\x61\x7b\x67\xb3\x71\x1b\x72\xd3\xd0\xd9\x43\xf8\x47\x41\x5b\x5a\xe5\xe5\x65\x3e\x55\x8a\xcc\x60\xb4\x93\xb8\xc6\x9d\x1a\x0c\x43\x05\xd9\x6b\xa2\x6a\xd3\x37\x1b\x6e\xcc\xb7\x79\x0e\xef\xaa\x3c\x3e\xc4\xb6\xa1\xcd\x0e\x3a\x66\xe7\x94\x55\x76\x60\x93\x97\x19\x56\x23\x57\x78\x46\xaa\x6b\x6f\x9d\xc1\x1b\xb0\xba\xd5\x0f\x5e\xe3\xd4\xba\x90\x55\xbb\xcb\x9d\xc8\x13\x7b\xc2\xb9\xe0\xa1\xdf\xd5\x46\xc9\x25\xdb\xc2\x81\x15\x58\x17\x78\xef\x0b\xe8\x82\xbd\xb6\xf7\x07\xd6\xeb\x42\xa1\x12\xd5\xe2\xf5\x3a\xb2\x4f\x6d\x0a\x27\x18\xff\x66\xa5\xfc\x20\xc7\x84\x58\x04\x1e\x53\x8d\x43\x8d\xcd\x63\xd4\x1a\x59\xd6\x26\x68\x43\x99\x86\xe4\x47\xb7\x91\x5f\xf5\x79\xd2\x0e\x1c\xba\xf2\x72\xf2\xd3\xf2\xe8\x30\xd6\x65\x0b\x9f\xae\x4e\xc1\xb3\xe9\x9c\x0b\xe3\x15\x1d\xda\x4a\x9a\x4a\xec\x34\x02\x3e\x5b\x65\x4d\x93\x08\xcf\x66\x44\xca\x53\xc5\x3f\x10\x66\xf8\xdd\xee\xcc\x01\x40\xc3\x3d\x1b\xeb\x79\xbe\xea\x5e\x1e\x37\x39\x14\x6d\x7b\x5c\xba\x6d\x69\x2c\x17\xb9\x51\xf4\xb9\x23\x87\x30\x1b\xbe\xe4\x51\x00\x6c\xf6\x63\x1f\x40\xc8\x49\x03\x4e\xc8\x9e\x9f\xbd\x90\x57\x6c\xf6\x8a\x51\x65\xb2\xc6\x1b\xd5\xc4\x27\x8d\xec\xb8\x28\xaf\xfe\x33\xa4\xe8\x46\x03\x8a\x4d\x40\xed\x7a\xff\xe6\xcb\x42\x06\x02\x07\xf5\x21\x43\x81\xea\x9b\x2f\x8d\x27\x4b\x4c\x42\x03\x85\x15\xd0\xc1\xc6\x1a\x0a\x0b\x59\x0b\xc4\xd1\xe1\xa1\xc3\xf6\xd0\xa3\xdf\x1d\xda\xac\x1f\x1d\xca\xe4\xc3\xf0\x6f\xd2\xba\x85\x69\x3d\xa7\x74\x68\x35\xc0\xa1\x60\xfd\x63\xaf\x17\xd7\x3f\x9a\xd7\x15\x99\xc9\x83\x5d\x2f\x8c\xed\xc5\x46\xe8\xbb\xe0\xaf\x2f\xae\x33\x49\xc4\xab\x64\x4c\x86\xe6\xc7\xd7\xd0\xd2\xed\x3b\x4d\xb6\x63\x32\x0c\xfe\x82\xe4\x72\x45\x05\x91\xaf\xf4\xf7\xfc\xf7\xa6\x60\x4b\xe7\x02\x33\x45\x92\xb7\x9a\x42\xa5\x09\xe3\x54\xfa\x82\x2a\x35\x00\x54\xb7\xf6\xed\x3c\xb0\x69\xcf\xdb\x76\x71\x9d\xde\xf3\x8d\x54\x63\x7b\x7e\x23\x99\xb4\x94\xe6\xf4\xd6\xd3\xb0\xa0\xb5\xf0\xc9\xa2\x42\x04\xbb\x47\x5a\x70\x58\x59\xa1\xaa\x56\xd7\x94\x44\x00\x3a\x79\xa9\xb1\x4e\x21\x4b\x7d\x7c\x3a\x7c\x1a\x01\x78\x39\x3f\x5b\xa6\x8d\x55\x4d\x89\x1d\x73\xb6\xc0\x8c\x11\x2d\x6a\x35\xd6\x2c\x8a\xbd\xcc\x64\x77\x48\x63\x65\x5b\xa4\x71\xc0\x4e\x7f\x7c\x1b\x01\x78\x7b\x7b\x29\x77\x3e\x58\xd6\xb4\x21\x4d\xd8\xfa\x8a\x25\x14\x5c\xe7\xaf\xc9\xb4\xe6\x4b\xd0\xf5\xa6\x14\xca\xcc\x9c\x8f\x76\x35\x00\x14\x88\x0c\x35\x57\xd5\x92\x95\xf7\xbd\x70\xf2\x5b\x80\xfd\xdc\x4d\xb0\x3e\x7c\x7d\x57\x35\x64\x8e\x0f\xdc\x87\x6e\xe4\x1b\xc6\xbf\xe7\x9b\x2f\x87\x46\x0c\x2f\xbb\xfa\x59\x50\xdf\x38\xce\x7f\x52\xe1\x0e\x0c\x96\xcb\xc1\xb8\x52\x81\x42\xeb\x05\x97\x49\xad\x27\x5f\x5b\x52\x25\x8e\x10\x4f\xa5\xa5\x44\x05\x75\x1f\xa7\x26\x97\x8b\x30\xdc\x7e\x13\x2b\xc8\x6c\xb6\x5a\x3b\x59\x6c\x33\x3f\x18\x0c\xd4\xbd\x73\xae\xed\x10\xe3\xee\x08\xce\x38\xff\x40\xf5\x46\x72\xa4\x56\x60\xd7\x12\x58\x41\xaf\x45\x89\xa7\x52\x4f\xed\x45\x89\xa7\xf1\x80\x22\x03\x79\xa7\xa0\xc3\x9c\x04\x8b\x52\x47\x78\x60\x53\x8e\x90\x22\x77\x3a\xcb\xda\xf5\xc0\xca\x8b\xd0\xad\xda\xe1\x27\x94\x31\xc4\x4d\xdc\xa9\xaa\x0b\xe6\x42\xc6\xc5\xc5\x45\x71\x68\x68\x31\x23\xa1\x38\xe5\xe7\x16\xf0\xa8\x51\x2b\x4b\xa8\x5c\xa5\xf8\x2a\xd0\xa8\xf2\x22\xa7\x05\x3b\x4d\xa7\x60\x85\xea\x26\x56\xe8\xfa\x1c\x3b\xc1\xb3\x2a\xbb\xd4\xda\xdf\x56\xb1\x81\x2d\x71\x8d\x4a\xf5\xaa\x1b\xd9\x8a\x0b\x76\x4b\xe5\xf6\xc3\xaf\x78\x42\x7a\xbd\xe8\xe9\x68\x64\x5d\xc5\x6a\x85\x0d\x1e\x5a\x92\x88\x8e\xb5\x07\x91\xa4\x6c\x8d\x2c\xf8\x0a\xb1\xbe\xb7\xdb\xe8\xb1\x12\x35\xe0\x57\x65\x95\xa8\xc0\x5e\xa3\x43\x5b\x6e\x28\xd0\xb0\xbd\x1d\xc4\xdd\x0a\xb1\xfd\x7c\xba\x70\x6b\xa8\x8a\x5f\xd7\x0a\xb5\xcd\xa2\xae\x98\xcc\x66\x3c\x63\x4a\x0e\x6d\x13\xab\x9d\x78\x43\xd0\x47\x6b\x0b\x8a\xa0\x51\x43\xfe\x94\x27\x27\xab\x71\x1d\xdb\x18\xaf\x4c\xe8\xf5\x65\xd0\xdc\x34\xa4\x6c\xce\xa3\xad\x66\x1e\x77\x6f\x7b\xea\xa2\xe7\x9d\x62\x83\x29\x19\xb2\x9d\x16\x55\xc6\x1a\x9b\x88\x54\x2e\x7c\xa2\x4d\xd4\x23\x5b\xa8\xa6\xa1\x66\x04\xa3\x08\x94\x6d\x36\x91\xd5\xba\x6e\x50\xca\xa0\xad\x66\xce\x56\xcd\xfd\xac\x48\x7b\x4a\x6f\xaf\xae\xd5\x25\x9e\x8a\x78\x63\xcd\x0d\xd0\x5d\x24\x9f\x65\x34\xd5\x4c\x3c\x06\x15\x11\x27\xec\x93\xa2\xba\xf1\xca\xce\x23\xca\xa3\xfe\x59\x0b\x60\x6d\x69\xf5\x61\x8d\xc2\x83\x9a\xfe\x91\x5c\x45\xe5\x20\xa6\xa6\xc4\xf2\x77\x60\x2e\x41\x63\xa1\x05\x92\x26\xb6\x6b\x2d\xc4\x13\xe3\xda\x4c\x5b\xbc\xab\x72\x09\x6f\xa2\xa6\xbd\x9e\xc8\xdd\xe8\x4c\x72\x7e\xf7\xb8\xa3\x31\xce\x9a\x9f\x9a\xf1\x75\x36\xf7\x38\xf9\x8b\x7f\x2a\x3b\x4b\xe7\xa9\xaf\x16\x44\x92\xfc\x6d\x44\xd1\xc8\x3e\x70\x33\x2e\xd2\xce\xb3\x17\x76\xa2\xe2\x15\xc9\x8d\xc2\x5d\x9e\x7d\x58\x1a\x05\xf2\x7f\x5f\x7f\xfb\x07\xa5\x56\x6f\x2c\x99\x1d\xc8\xdc\x1a\xff\x9a\x2e\x0d\x65\x19\xa9\xc7\x3f\x82\x3d\xfc\x9b\x34\x82\x91\x1c\xf2\xda\x85\xaf\xbd\x3c\xff\xef\xb7\xdf\x7f\xe7\xee\xc2\xe5\x30\xa7\x50\x72\xa9\xc0\x01\x1f\xe2\x2c\xa1\x84\xcd\x08\x42\x79\x8e\xcb\xea\xd5\x77\xfe\x1e\xc9\x16\x63\x29\xe9\xb9\x66\x3f\xd7\x45\xa8\x9b\x12\xa5\x32\xc3\x29\xfd\xcb\x39\x84\x50\x31\xca\xf6\x11\x68\x5c\xf2\x61\x26\x3e\x52\x43\x65\x75\x34\xa5\x75\x8a\x14\x87\x1d\x9b\x63\x6d\xd8\xd1\x0b\xf9\xc4\x8f\xf4\xa4\x33\xa7\x24\x4d\x3a\x4b\x7c\xd5\x39\x23\x7e\x09\xed\x85\x5c\x28\x03\xdf\x04\xc6\x0b\xb3\x57\xdd\xa0\x45\x0e\xfb\x0e\x17\x9d\x05\x96\x9d\x33\x42\x58\x47\x91\xe5\x8a\x68\x8a\xb8\xa0\x6a\x31\xec\xfc\x85\x67\x7e\x58\x99\x19\x86\xdc\x51\xbc\x83\x3b\x4f\xf4\xee\xcd\x24\x49\x3a\x09\x59\x65\xea\xea\x49\x07\x2b\x85\x67\x1f\x1c\x50\x1b\xb3\x84\xa4\x9c\xfd\x24\xb8\x3e\xba\x11\xd4\x77\x55\xc4\x38\x46\xd5\x99\x63\x9a\x3a\xe8\x3a\x56\x0e\xef\x3c\x89\xfa\xd2\x89\xfd\x9a\x12\xfa\xd1\x93\x4e\x6c\xf1\xa8\x8b\xb8\xfe\xdb\x54\x09\xc9\xa5\x1f\x3d\x01\x21\xac\x7a\xbb\x46\xff\xf5\xf2\x5d\x04\x79\x3f\x3a\x09\x99\x1a\x8a\xfa\x0d\x8f\x29\xbd\x1e\x6f\xeb\x00\x4d\xb2\x52\x1f\x36\xf6\x64\xad\x07\x75\x0c\x5e\xb2\x6d\xee\x77\xf2\xfe\xf2\x8c\x81\x77\x38\x78\x6f\x7b\xea\xda\x23\xf7\x2e\xc7\x25\x8c\x16\x89\x39\x7d\x1e\xf0\x44\x6c\xb3\x48\xde\x6c\x63\x2c\x4c\x23\xb7\x10\xe6\x0c\x8a\xcc\xb5\xd5\x0c\xa7\x0b\x2e\xd5\xf8\x77\x4f\x47\x23\x87\x9a\xdc\x73\x11\xc0\x45\xf3\x75\xd4\x22\x31\xd0\xdf\x91\xea\x7e\xcd\x52\xde\x63\x52\x99\x27\x05\x2b\xf9\xe0\x95\xc6\x11\x4e\x4f\x57\x82\x2f\x57\xea\x41\xa9\xd0\x19\x10\xdb\x6e\xd2\x8a\xe2\x16\xa2\x6d\x53\x62\x6f\x24\x5a\x3f\xa9\x1f\xcc\x9c\x9a\x07\x2f\x55\xd1\x88\xc8\x14\xbf\x3f\xbd\xff\xc7\xe8\x53\xd2\x7b\x3d\x66\xe0\xaf\x8a\xe4\xeb\xe0\x37\x5a\x41\x6c\x35\xca\x0c\xc9\x67\x58\x56\x6f\xb6\x9d\x89\xe7\x97\xab\x86\xfa\x68\x9b\x3b\x5f\xb8\xfc\xac\xab\xe2\xa1\x75\x1b\xd9\xc8\x33\xed\x38\x2b\xd5\x89\x00\x34\xfa\xcc\x9b\xd2\xe7\xb4\xcd\xbc\xe3\xf4\x99\x4a\x17\x4d\x46\xe3\x9b\x55\xa8\xca\x90\xf1\xcd\x1a\x8e\x23\x90\x69\xb3\xa2\x93\xdf\x64\xf8\x25\xb2\xef\x4a\xc1\x2d\x64\xa0\xdb\x0b\x3f\x4d\xd6\xc8\x87\x58\x6c\xd1\xb0\xd8\x8d\x4a\xf2\x63\x2b\xaf\xff\x72\x6a\xe8\x75\x89\x69\xb9\x9b\x35\xd8\xaa\xc2\xd5\x08\x4e\xec\x40\x70\x96\xef\xdd\x91\xd9\xc0\xd6\xc8\x38\x3b\xfb\x91\x54\x03\x58\x7c\x9a\xe7\x06\xee\x0d\x41\x9d\xb0\x6d\x8e\x50\xc2\xb0\x22\x89\xeb\x87\x9a\x90\x92\x35\x93\x79\x04\xa3\x9a\xc8\xe4\x64\x9d\xaa\x69\x3d\x77\x59\x72\x62\x52\xe1\xf2\x04\x73\x72\x3f\xcd\x8c\x0c\xe0\xcf\x9b\x76\x69\x6c\x9a\x9f\x73\x65\x67\x67\xe3\x7e\xf4\x47\x72\xd5\x22\xa0\x58\xcb\xcd\xcd\x62\x8f\xbd\xeb\xb3\x10\xb6\x38\x7a\xf9\xc2\xf6\x83\xae\x64\x2d\x32\xb9\xcb\xcd\x2b\xe6\xc6\x61\xcd\x84\xb7\xf7\x64\x69\xe2\xad\x0d\xae\xa0\xbb\x3b\x0d\xbe\x98\xf0\x4c\x30\xfc\x50\x75\xc1\x09\x6b\x37\xf9\xdc\x14\x03\x95\x6a\x16\x36\xfc\xf5\x3a\x76\x3e\xe7\x39\xb6\x8f\x7e\x5f\x24\xbe\xaf\x8e\x40\x00\x30\xdc\xbe\x62\x4a\xb4\x3b\xab\x22\x68\x54\xd7\xf0\x9e\x72\x46\x74\x18\x75\x11\x8a\x09\x9a\xb8\xbb\x7b\x2d\x4c\x1a\x9f\x6f\xf3\x14\x7f\xc6\x53\x18\x1d\x1e\x46\xb0\x5a\xaa\xc5\xcd\xda\xc7\x15\x56\x0b\xcd\xb2\xa7\x8e\x15\x45\x00\xf8\xd7\xd0\x83\x23\xd0\xeb\xc5\xa4\x8f\xa2\xc3\x08\x40\xd2\xf7\x99\x03\x1c\x74\xc3\x85\x5a\xa6\xd6\x53\xc3\x20\xc2\xb0\xfa\xff\xd1\x0c\x61\x6b\x60\x9f\xfc\x48\x2f\x6f\xb4\xb2\x03\x54\x7d\xd3\x15\x56\xba\xda\x6b\x92\x82\x37\x9a\xf8\x14\xa5\x68\x4b\x63\x02\xcb\x71\x92\xcc\x83\x93\xe2\x85\xe5\x06\xfa\x13\xaa\x2e\x82\x04\xfe\x80\x6e\x37\x46\x8e\x1e\xaa\x53\x8d\x81\x47\xdf\xc9\x5d\xa5\x93\x07\x33\xf0\x56\x5c\x17\x43\xd3\xae\x8b\x5c\x02\x25\x1a\x1c\x75\x11\xa2\xc5\x43\x78\x59\xde\x0c\xff\x02\x87\x2d\x9d\xc7\xb2\xd7\x73\x81\x65\xba\x08\xe1\x7a\xd8\xb2\x1b\x06\x5f\x60\xd9\xc1\xac\x43\xd9\x8c\x0b\xf3\xd0\xc4\x67\xf6\x30\x5d\xfa\x40\x67\x2e\xfc\xee\x19\xe9\x44\x4f\xfa\xb8\xff\x24\x82\x26\x80\x1a\x95\xfa\x6f\x37\x7c\xff\x49\xf4\xa4\xf9\xf8\xff\x8a\x27\x64\x9c\x90\xba\x89\x6e\xc2\xa7\xe0\x16\x42\x01\xde\x26\x14\x54\xa3\x8c\xff\xb2\x34\xc4\x1d\xdc\xf1\xaa\x13\xa8\xe9\x88\xde\xc5\xca\x56\x6c\x73\xc9\xab\x9d\xe9\x2d\x27\xb4\xe9\xe4\x34\xc5\x2c\xb1\x52\x8f\x0d\xad\xec\xcd\x21\xb7\xb8\x5a\x6f\xb5\x4a\x08\x82\x93\xd3\x0b\x41\xed\x6e\x35\xe3\x7d\x6b\x87\x6b\x39\x5e\x83\x1a\xce\x90\x62\x60\xda\x66\xcd\x08\x2a\x44\x30\x9a\xe3\x54\x7e\x1a\xaf\xe4\x6d\x94\x57\x4d\x36\x71\x23\xe5\x1d\x7d\xba\xdc\x25\x6d\xc4\xe5\xd3\x03\x34\xcd\xc4\x63\x63\x60\x5f\xfd\x37\xaa\x70\xad\x0f\x7e\xef\xb4\x7b\xc2\xd8\x59\xd0\x3a\x29\x76\x63\xd2\xf1\x2f\xaf\xf9\xbc\xa3\x40\x73\x0a\xd5\xaf\x6c\x6c\xbe\x19\x4e\xd3\x0e\xee\xd8\x08\x62\x9a\x83\xe5\xae\x4e\x51\xe0\xf2\x47\x8b\xde\x43\xa7\x88\x37\x64\x4e\x04\x61\x33\xdf\xa7\x79\xb3\xb6\xc0\x92\x3d\x51\xf6\x86\xc5\x3f\xfc\x96\x24\xe9\x0c\x3a\x8e\x0c\x4a\x35\xf4\xf8\x24\xc9\x8f\x9a\xae\x5a\xaf\x23\x9b\xdc\xbd\x48\x02\xab\x7a\xbd\xe2\x09\x64\xf1\xf5\x84\x8c\x6f\xef\x03\x08\xc9\xd0\xbc\x8e\xf3\x6f\xde\x6c\xd6\xfa\xe0\x91\x31\x47\x8d\x35\x02\xd2\xce\xb1\x42\x62\x70\xcd\x5c\x10\x15\xef\x94\x46\xdd\x73\x27\x32\x3c\x3d\x35\xe2\xd7\xe9\xe9\x7a\xed\x80\x3c\x27\xea\x07\x1f\x1c\xc9\x04\x52\x04\xcd\x7e\x71\xc5\xb9\x3b\xd4\x34\x87\xa2\x3a\x3c\x11\xcc\xa3\x4a\x95\xc9\x9f\xce\xe3\x26\x5c\xf5\x7a\x36\xc7\x1c\x52\xcd\xd4\xf0\x56\x2f\x4d\x87\x5c\xae\x84\x3b\xb4\x4c\xce\x2a\x42\xd5\x82\x08\x7d\x58\xe9\xd6\xe6\x89\x5d\x3e\x1c\x34\x4f\xe9\xa2\xbe\x1f\x41\x1f\x2f\xad\xa9\x5b\x7b\xbd\x20\x6b\x2b\xbc\x0e\x02\x6a\x8d\xdd\xda\x10\x48\x58\xb6\x24\x86\xaf\x8c\xbb\x47\x50\x73\x3b\xfb\x7b\x04\x43\x9e\xa3\x17\x71\x03\xa0\xea\xf5\x62\x37\x86\x2c\x61\xf5\xa4\xf1\xab\xc1\xcd\x38\x58\x13\xa4\xc0\x26\x26\xce\x25\xd7\x26\x05\x84\x64\x63\x32\xe0\x35\xbe\x2a\x10\x59\x2d\xac\x08\xf1\x99\xfa\xb4\x00\x6d\xab\xef\x7c\x73\x9c\x87\xfd\xc2\xde\x39\xb9\xfa\xdc\x52\x35\xbd\x74\x37\x62\x4a\xa5\x41\xf8\x06\xb3\xb1\x0d\xc4\xfe\x92\x9a\x14\x62\x7e\x10\x53\xa4\xd2\x9f\xcc\x01\x08\x1e\xd0\xc3\x48\x89\x8c\x98\xa4\x4b\x2d\x2f\xa5\x25\x80\x4e\x38\x44\x08\x15\x29\xac\xb6\xbc\x48\x00\x5a\xdc\xf2\xcf\x97\x49\x2a\x89\xbb\x15\xe5\x71\xf4\x1d\x57\x1d\xdc\x31\xfc\xb0\xe3\x2a\xfb\x8c\x68\xd8\xe5\xd7\xfa\x4a\x33\xac\xf8\xda\x32\xda\xa6\xbb\x47\x9c\xeb\x03\xe1\x0a\x8d\xc9\x06\x98\x4b\x59\xdd\x19\xdc\x2a\x10\xb9\x44\x1d\x89\x4c\x07\xe4\xd2\x88\x41\xdb\x72\x79\x6c\x7b\xc8\x17\xe6\xe8\x7b\x63\x9a\x7c\xfd\xf6\xdb\x60\x3f\x08\x9b\x68\x4c\x0d\x4b\xc9\xd7\x4c\x4d\x54\x7b\x03\xaa\xbf\xb6\xb8\xd3\x3a\x21\x3a\x8c\x76\x03\x36\x30\x1c\xd7\x27\x27\xbb\x3e\xd5\x9c\xd9\x7e\xfb\xef\xb2\xdb\x27\x0a\xa2\x1b\xb5\x7a\xee\xba\x29\xc5\xa3\x02\x85\xee\xdd\x4a\xe3\x2c\x24\x6a\x0e\x35\x7d\x63\x72\xba\x9b\xbc\x34\x3f\xd9\xe9\xdf\x14\x0f\xc2\xbe\x16\x7e\xcd\x13\x92\xb6\x68\x73\xb0\x94\x87\xa3\x05\x75\xde\x2d\x43\x2b\x3d\x1a\x51\x27\xa2\xd5\xeb\x58\x0d\x67\x0b\x32\xfb\xf0\xad\x71\x1e\x36\x01\xd1\xc7\xd5\x4f\xb0\xf8\xb3\x21\xe0\xce\x08\xaa\xa6\x27\xf3\x35\xbd\x4e\xef\x64\xc3\xf7\x83\x8d\x0a\x86\xe6\x5e\x3f\x06\xc3\x99\x09\x9b\x1d\xc2\xd7\xe6\xe0\xb8\x43\x16\xc1\x7f\xf9\x25\x0d\x71\x93\x2f\x6a\xf5\x23\x0c\x3f\x34\xc4\xd5\x6a\x5b\x59\x67\x31\x08\xcd\x03\xa2\x69\x6d\x43\x13\x41\x53\x85\x7e\x34\xa4\xf2\x45\xb8\x8a\xc6\x76\x90\xa7\x72\xe1\xb9\x0f\xfd\x49\x70\xd0\xb9\x74\x15\x31\x18\xc7\x74\x88\x95\x22\xcb\x95\x22\x41\xa4\x37\x44\x20\x3e\x61\xce\x9d\xe4\x6b\xf3\x70\x3f\x26\x60\x4c\xb7\x50\x5a\x6e\xe5\xa9\x34\xda\x00\xa0\xb1\x14\x7c\x1c\x97\x9d\xeb\x8d\x8b\x4a\x14\x56\x88\x20\x69\xa6\xda\x6a\x6a\xb8\x5b\x48\xed\x9f\xe4\xea\xa5\x49\x02\x71\x92\xca\x47\xc2\x14\x49\x8a\xc7\x8d\xf0\xba\x08\x41\x52\x42\x40\x18\x0f\xa0\xed\x79\xb6\x9b\x6e\x29\x78\x80\x7b\x7b\x1d\x7e\xa1\x09\x2a\x25\x57\x8a\x0e\xf2\x0e\x8d\xbd\xff\x2d\x49\x89\x16\xe5\xe2\x68\xd8\x9a\x83\xc9\x48\xba\x84\x25\x5f\x2d\x68\x9a\xc4\x41\xef\x3e\xd8\x41\x75\x0a\xa5\x19\x38\x21\x27\x06\x1b\x58\x84\x0d\x08\xeb\xea\xf3\x13\x21\xd4\x06\xd7\xbf\x95\xc0\x07\x2e\xbe\x5e\x43\x70\x84\x1b\xaf\x4e\xaa\xc9\x05\x7f\xf5\x94\x12\x04\xd8\x6c\x48\xb7\xef\x42\x0d\x9b\xc1\x3a\x94\x75\x08\x30\x02\xe8\x02\xcb\xef\x2f\x58\x0e\xa6\x00\x3e\xb4\xaf\xbc\xa0\x7a\x03\x93\x89\x98\x82\xeb\x19\x96\xa4\x3b\x1a\x33\x14\x1d\x45\x07\x36\x01\xb8\xf9\x74\xa4\x3f\x8d\xfc\x27\x07\xde\x98\x99\x00\xb8\x1b\x65\x65\x18\xd1\x8f\x50\xd4\x67\x45\xa0\x7f\x6f\xac\x8b\xc0\xa6\x21\x7a\x3b\xb1\x59\xb1\xd7\xeb\x2f\x46\x23\xf3\x0a\xc8\xe6\x6b\x36\x7f\x1f\x94\xc2\x6e\x2f\x89\x38\x27\xf1\x75\x4a\xe6\x6a\x2c\x67\x82\x10\x97\x73\xfe\xf0\xe9\x40\x1d\x3e\x85\x8a\xaf\xfc\x67\xdb\xc5\xe1\xd3\x81\x38\x7c\x0a\x4d\x9d\xb1\x82\xf6\xe3\x58\x6c\x34\x2f\x89\xc5\x7a\xad\x8f\xc2\x83\x70\xb3\xf9\x68\x3e\x5a\xcc\xd2\xd8\x65\xed\x14\xde\x46\xcd\xa5\x60\x1f\xe1\x36\xb0\xd1\x49\x1e\x82\x7c\x2b\xb1\xdd\x9a\x52\xc5\x9a\xa2\x6a\xb0\xf0\x2d\x8f\xbf\x6f\x6b\xaa\xb0\x14\x5c\x7d\x8f\xec\xf3\x0f\x46\x7d\x55\x9c\xab\xeb\x75\xdc\x5e\x33\xcc\x54\x08\x00\x14\xf7\x4f\xf9\xe0\xce\xc1\xf2\x86\x3a\xfd\x41\xf0\xcb\x2b\x23\x3e\x40\x1b\xd8\xd8\x5e\x42\xc9\x20\x7a\xf1\xcd\x31\x05\xca\x0f\xd3\x8d\xc4\x6c\xae\xca\x88\xca\x56\xe6\x26\xc9\x8c\x12\xc4\x26\xd1\x72\xfa\xf6\xfb\xab\x10\x80\xfc\xda\xe4\x80\x0c\x1b\x22\xed\x96\x82\xb0\xd8\x5b\xac\x99\xcd\x17\x1f\xb9\xd7\x64\x04\x40\x5f\x50\x89\x23\xac\x6b\xd4\xa2\x4c\x5b\x0f\x50\x0d\xbe\x8b\x63\xe9\xd1\x5d\x26\xf3\x5a\x74\x33\x1f\x4c\xac\xf1\xe5\x3b\x6f\xfc\x9c\xaf\x7e\x35\x0f\x70\xed\x46\x23\xc7\xc5\xce\xea\x38\x01\xd7\xd8\x09\x0c\x52\x61\xa1\xbe\x5f\x11\xa6\x95\xdd\xb8\xf9\xa5\xad\x17\x7d\xf2\x4d\xde\x54\x2d\x88\x77\x66\xf2\x40\xd8\xca\x8d\x55\x43\xa5\xd5\x42\x31\xa7\x8c\xca\x85\x01\x03\x12\x7b\xb1\x58\x93\x8d\x1a\x5a\x61\x9a\xe6\x6d\x4a\x62\x99\xc9\x88\x4c\x9a\xbd\x75\x6f\x5c\x8d\x87\x40\x2f\x0f\xd1\xfb\x8d\x86\xe0\x66\xfc\x3a\xbc\x59\xd9\xb0\x0d\x71\xbc\x84\x31\xdb\x33\x34\x33\xdd\x82\x30\x1e\x20\x2c\x6f\xd2\x8e\xb1\x4a\x34\xa6\x9f\x01\x63\x8e\xbf\xef\x88\x31\x6b\x54\x69\xc4\x58\x15\x61\xfe\xe0\xd8\x19\x5d\x2e\x50\xd2\x16\x74\x6d\x95\xb0\x5d\xa0\xd2\xe6\x60\x23\x37\x9c\x28\x6d\xe7\x89\x28\x45\xf4\xaf\xdb\xd8\x5a\xc2\x10\x56\xcf\x93\xfc\xf6\xcc\x84\xc2\x88\xbd\x86\x55\x5a\x5a\x9b\xdf\xb2\xcb\xeb\x37\x93\x79\x7a\x4a\x5c\x4d\x3a\xf9\xc4\xbc\xdd\x7f\xd2\x81\x26\x4b\xd2\x15\xcf\x3a\x73\x2e\xce\x89\x79\x5c\xe0\x93\x0a\x76\xa8\x3a\x89\x5c\xdf\x13\x32\x35\x66\xdc\x86\xf8\xf0\xf9\x20\xf9\x10\xbe\x73\xc5\x5d\xde\x4b\x73\x27\xe9\xd2\xeb\x74\x96\x44\x2d\x78\x32\x2c\x08\xaf\x4e\x74\xb9\xce\x76\xbd\xc9\x85\xad\x5d\xa2\x21\xa8\x58\x03\x1a\x53\x67\x98\x7b\xe8\x33\xd7\x08\xab\x63\x11\x47\xdc\xf0\xb3\xee\x08\x38\xbe\x25\xe2\x68\xee\xd8\x87\xdd\x96\x22\x8e\x66\x9e\x88\x9b\x08\xaf\x51\x8c\x69\xa6\xbf\x72\xa5\x47\xc8\x8a\xef\xe9\x53\x23\x3c\x17\x0b\x6c\xe0\x51\x9f\xfa\x64\x1c\x65\xac\x64\x4d\x89\xa0\xcf\xaa\x50\x29\x18\x5f\x9b\x37\x28\xaf\x6d\xc8\x3b\x2b\x9c\x54\x74\xf8\x71\xf7\x08\xe6\x07\xdc\x98\x5a\xec\xfa\x24\x66\x41\xe3\x68\x0a\x60\xc1\xa9\x75\x45\x83\xf3\xe6\x9a\x65\x5b\x45\x32\xbe\x76\x52\xc2\x8f\x92\x88\x16\x28\x46\xb0\xe0\x6a\x7e\x01\x75\xe7\xce\x57\x82\xb2\xf3\xf1\x35\x95\x7f\xe6\xe2\x83\xfe\xd9\x1d\x41\x2a\xbf\x77\xdf\xbb\x23\x58\x1c\x8e\x25\x8d\xd7\xac\x52\x11\x13\xbc\x6c\x86\xf4\xd1\xe0\xc2\x80\xdd\x51\x19\xaf\xfa\x68\x74\x07\x68\x5d\x93\x76\x7d\x56\x50\x3e\x0c\x51\xe1\xb5\xe6\xf2\x18\xd5\xd5\x03\x1b\x77\x02\x37\x4d\xf2\x1b\x5f\x90\xcf\xf2\x9b\xda\xd3\x9a\x07\x9a\x66\xbd\xe3\x87\x9f\xa7\x5b\xd6\xda\x34\xbf\x72\xdf\xcd\x1f\x35\xd2\x08\x0e\xa6\x9a\x52\x74\xd3\x98\x30\x3f\xa2\x3e\xed\xd4\xb4\xa2\x15\x1c\x8e\x86\xc7\x20\x02\xf9\xa6\xe6\x3c\x1b\x76\x55\x53\x81\x2a\xba\x75\x83\x62\xdd\xeb\xc5\x6a\x22\xa6\x46\x37\xae\xdf\xc7\xd6\xb3\xb2\xe4\x3d\x1e\x8b\x22\x63\xa4\xe8\xf7\x81\x9e\xd7\x44\x77\x35\x75\x97\x0d\x8d\xe9\x5b\x4a\x0c\x54\xe0\xd9\x07\x92\x0c\x96\x78\x25\x07\x98\x25\x03\x49\x54\x10\xcf\x67\x89\xab\xe6\x8f\xed\xf5\xf5\x91\x7e\x8b\x13\x3d\x48\xf2\xd3\x10\xfe\xf6\xed\xd5\xf2\x8c\xa7\xbd\x5e\x24\xcd\x8f\x6a\xc1\x90\x2a\x1b\xcc\xf8\xa4\x41\x9a\x71\x35\xc9\xa6\xf1\xc5\x5a\x78\xd5\x5c\x1b\x8e\x54\x92\x0d\xe5\xdf\xbb\xfe\x77\x71\xab\x73\xe2\x61\x1b\xe7\x03\x02\x8d\xe3\xc7\xbd\xb1\xcf\xe9\x01\x8d\xaa\x14\xe1\x8c\x3e\x9a\x26\x0e\xd8\xb0\xb8\x7d\x45\xe1\x1f\xeb\x75\xf7\xa8\x12\xfa\x05\x75\x47\x30\x32\x07\x5b\x44\x59\x87\xf5\x7a\x31\x1b\xfa\xdb\x5a\xa4\x0f\xea\xb6\xa3\x91\x0d\x3f\x90\x2b\xc8\xc0\xa6\x80\x92\x57\xe2\xa9\xa8\x5e\x8f\xc6\xc1\x3d\x32\x54\x00\x0a\xf3\x0d\x9a\x0b\xda\xbc\x21\x2e\x37\x8c\x31\x8a\x32\xe6\x32\x7f\x17\xd7\xde\x6f\xc8\x3c\x25\x33\xd5\xeb\xb9\x1f\x5a\x9e\x3b\x09\x7e\xdf\x68\x07\xf3\x28\x3c\xee\xba\x49\x15\x99\xcc\xca\x5b\xd5\xa6\x7c\xd0\xf5\xf3\x9b\xf6\x98\xa0\x55\x4c\x00\x38\x06\xc7\xf9\x73\x48\x53\x43\x8b\x79\x79\x82\xcf\xc2\x35\x20\xe8\xed\x6b\x62\xe3\x61\x72\x11\x33\x58\xd8\x41\xa8\x81\xdf\xfc\xd7\x8e\x27\xc0\x98\x0e\xcd\x52\x6c\x34\x71\xe9\x39\xac\xd7\x21\x8d\xc9\x47\x76\x0a\x88\xee\xed\x05\x70\xf3\xbd\xff\xc2\x6a\xdc\xf9\x1c\xb3\xc2\x0c\x98\x14\x57\x5b\x15\x83\x89\x80\xcc\xac\x86\xc9\xfb\xe6\x71\xbf\x72\x96\x85\x00\x90\x03\x81\x3c\x7d\xe4\x5f\x63\x56\xdc\xf5\x40\xea\xee\xaa\x05\x62\xdb\x2f\x83\x7c\x7a\xb4\x90\xdc\xd3\x90\x6d\x97\x5d\x5d\x90\x88\x35\xed\x34\xfa\xb9\x84\x7c\x2a\x4c\xaf\xff\x69\x5d\x71\x0c\xb9\x82\xb1\x2a\xc0\x9f\x05\x79\x4b\xea\x4c\xf2\x35\x5e\x9d\x68\x48\x5e\xe3\xd5\xb8\x14\x9e\x3e\x9e\x55\x63\xc8\x3a\x73\x3d\xb1\x76\x3d\x38\x38\x42\x08\x7d\xe3\xaa\xe4\xae\x09\x9e\xc4\x0b\xaf\xd4\x09\xc3\x8a\x7e\x24\x9d\x19\x4f\xc8\x34\x02\xc0\x47\x61\x23\xf6\xd4\x3d\x68\x26\x73\xf2\x80\xc4\x9d\x63\xdf\x6c\x1a\x9b\x1d\x6e\x81\xa5\xde\xe6\xb9\xa1\xda\xdc\xa7\x82\x03\x6b\x46\x23\x9a\xdf\x05\x2c\xbf\x38\xb3\x63\x12\x50\x55\x03\x25\x16\xda\x58\xeb\x86\x22\x37\xec\x26\x76\x3b\x9f\x9a\x85\xcd\x0a\x56\x3e\xa5\xe6\x85\xe9\x72\xae\xf7\xd7\x49\x6d\x7b\xb4\x30\xd1\x89\x46\xa0\x3e\x59\x56\x99\x5c\xb8\xad\x62\x98\x99\x4b\x14\x48\x2e\xe2\x7c\xc9\xcf\x28\x4b\x5c\x15\x8d\xb0\xf0\x42\x75\x11\x53\x28\x8a\x79\x02\x48\x37\xde\x6b\xca\xe8\x16\xc5\xc6\x2b\x60\x4e\x6c\xa8\xf9\xe0\x44\x40\x95\x13\x61\xbd\xee\xd6\xe6\xe1\x56\xb0\x7b\xa4\x57\xb9\x56\x3a\x94\x0b\xbc\x2c\x55\x69\xd8\x02\xc6\x78\xeb\x2b\x8d\x0e\x94\xb8\xf2\xcb\xfd\x35\x56\xc1\x6a\x55\x68\xbc\xce\x71\x74\x75\x38\x99\xc2\xca\x9d\x3b\x80\xdd\xd1\xc6\xda\x69\x72\x91\xa5\x7b\x14\x30\x98\x45\x29\x3f\xe2\x02\x35\x3a\x43\xad\xd7\x2d\xf6\x90\xc0\x3b\x0a\x12\x7b\xa0\x04\x58\x5d\x05\x42\xd9\xaa\xb9\xe7\x93\x46\x47\xb7\x46\x39\x6b\x17\xf7\x38\x4b\x8a\x77\xf1\xf0\xb3\xa2\xe8\x9f\x09\xfe\xf0\x1a\xaf\x50\xfe\x41\xff\x11\xb8\xfa\x2d\x4b\x7c\x49\xda\x74\xbd\x2e\xd5\x53\x4c\xc1\x41\x20\x4c\x05\x26\x36\x7b\xbf\x0e\x60\x8b\x33\xc0\x26\x0f\x2e\x47\xe1\xe4\xfa\x03\xb9\x1a\x47\xe7\x44\x45\xd0\x02\x58\x47\x85\x0f\x89\x25\xb3\x25\xf9\x23\xb9\x02\xde\x9f\x10\xe2\x78\x15\xd3\x90\xf2\x6d\x3f\x8e\x51\x14\xe9\xdb\xb4\xa6\x65\xc7\x59\x60\xf9\x20\xe3\x98\x7e\xb6\x8c\x43\x98\x12\x94\xd4\xc7\x6a\x1a\xea\x2b\x9e\x6a\xda\x36\xde\x09\xd6\x86\x56\x1f\x2f\xef\xaf\x32\x66\x31\xe2\x07\x72\xf5\x70\xc3\xd9\xce\x5a\xc7\x32\xa3\x3c\xdc\x68\xbe\xbb\xd6\xf1\xdc\xf3\x88\xa6\x95\xbb\xed\x58\x79\x57\x5b\x16\x4f\x36\x11\x63\x20\x49\x9b\x0b\x2a\x2a\xd4\x55\x89\x48\x8a\xcf\xbb\xc0\x21\x1b\x09\xd5\xc8\x42\x0e\x0a\x1b\x82\xf5\x06\x6a\xbd\x2f\x18\x7e\x90\x2d\xd8\x30\xa9\x05\x1a\xd6\xba\xb8\x64\xf3\x67\xd1\x2d\xb0\x1d\x46\x08\x62\x2d\x33\x32\x82\x01\xb8\xed\x8c\x1c\xb8\xad\xb4\x24\xcd\xd3\x85\x92\x66\x73\x57\xba\xb5\x5d\xb9\xee\xa7\xfa\xdc\x8d\x67\xf1\x6b\xbc\x02\xce\x09\x35\x60\xa9\x4b\x98\x0b\x45\x8d\x87\xae\x55\x8d\x4f\x82\xa2\xb1\x88\xed\x47\xe0\x5c\x07\x3e\xa2\x65\x31\xfa\xa4\xa2\xc5\x4f\x5b\xac\xad\x41\x13\x58\x69\x02\xaf\xef\x80\x84\x8f\x9b\x8d\x4d\x81\x72\xb5\x3f\x18\xee\x74\x30\xdc\x8d\xb7\x3c\x22\xff\xb8\x1d\x8f\xf0\x54\xef\xe4\x08\xa0\x95\xdb\x8a\x68\x71\x75\x0b\x8b\x99\x99\xd5\xde\x62\xb6\xb7\x98\xed\x2d\x66\x7b\x8b\xd9\xde\x62\xb6\xb7\x98\xed\x2d\x66\x7b\x8b\xd9\xde\x62\xb6\xb7\x98\xfd\xb2\x2c\x66\x6f\x89\x2a\x2c\x66\xfa\x8f\x9f\xc1\x62\xb6\xb7\x64\xed\x2d\x59\x37\x5a\xb2\x70\x92\x7c\x62\x03\x92\x19\x61\x0b\x04\x7b\x2b\xd6\xaf\xd2\x8a\xf5\x96\xa8\x8a\x15\x4b\xb3\xb9\xbd\x15\xeb\x17\xce\xac\xef\xb2\xdf\x1f\x6d\x4f\xdf\xdd\xb2\x64\xa9\xb1\x76\x04\xdf\xc6\xb2\x64\x2c\x45\x3b\x66\x95\xcd\x57\x5d\xfd\x2a\xec\x1d\xff\xcc\x86\xad\x3b\xc8\x69\x56\x8f\x79\x87\xcf\x51\x8d\x2b\x18\x75\x8d\x6e\x20\x09\xb6\x1b\x4a\x20\xc9\x89\x15\x2d\xfc\x1f\x05\xd3\x40\xa4\xce\x48\x90\xab\xa5\x47\xc9\x8b\xf5\x1f\x81\x20\x58\x36\xf9\xc0\xc2\xd7\x1e\x62\x94\x33\x0b\x47\x4b\x50\x22\xfc\xec\xf3\x13\x35\x76\x4a\x2c\x3d\xb9\xd9\x88\xa3\x20\x03\x63\x6a\x94\x06\xa7\xf0\xa3\x16\xb6\xec\x54\x81\x0a\x5f\x76\x5f\x01\x68\x5c\x44\xaf\x3e\x24\x64\xc6\x05\x56\x04\x48\x54\xfd\x94\x4f\xeb\xc0\x18\x2f\xfc\x2e\xc9\x10\x71\xb3\x1a\x1c\x1d\x67\xcf\xd1\xe8\x38\x1b\x0c\x40\xcc\x11\x99\x64\x53\xd0\xeb\xc5\x12\xc5\x7a\xb2\x3c\x96\x60\x8c\x9f\xeb\x1f\xba\x1b\x09\xc6\xe6\x07\x00\xeb\x75\x61\xf0\xc0\xcf\x3f\xef\xf5\x64\xaf\xd7\x4c\x07\xb6\x1d\x94\x1b\x48\x5b\xa3\xcf\x54\x6c\xc3\x0f\x6b\x19\xcd\x99\xdb\xc6\xd9\x83\x20\xcd\xd5\x4c\x44\x20\x45\x8e\xff\x17\x14\xd2\xc4\x35\xb5\xde\xa2\xf0\xf9\xa9\x29\x39\x3d\x2d\xf8\xac\x23\xb1\x1d\xda\x38\xc2\xdb\x6c\xa6\x30\x66\xc6\x7d\x15\xf4\x7a\x2a\x0e\x94\x5c\xc8\x00\xa4\xe6\x9b\x3e\xba\xc8\x26\x06\x07\x2c\x9e\xb8\x87\x7b\x8e\x79\x4e\x61\xc0\x9f\xf5\x1e\x0b\x46\x88\xdc\xd9\x0f\x5c\x08\x20\x1a\x90\xfd\x41\x69\x0f\x70\x17\x45\x94\xe6\x7b\xe4\x20\xd8\x2e\xd8\xa5\x18\xbc\xde\xc0\xac\x74\xfa\x26\x31\x81\x12\x6c\x0e\x9a\xb6\x5b\x66\x1a\xa5\xa5\xfa\x8b\xbc\x7e\x75\xc3\xa6\x85\x98\x62\xe6\xd7\xeb\xc5\x8d\x9d\xa2\x06\x96\x66\x11\x62\xcc\x2d\x30\x9a\x4c\x23\xb0\x69\xe0\x08\x69\x7b\x4b\xc6\x15\x9d\x5f\x79\x0a\xfd\x6a\x81\xd9\x39\xc9\xbb\xb2\xb8\x9b\x99\xc7\x0c\xee\x7a\xe4\x20\x30\x8a\x04\x6f\x3e\x67\xde\xe2\x93\xdb\xe5\xf4\x2c\x04\x72\xb6\x30\x38\x73\x86\x20\x01\x7c\xe4\x69\x0b\x74\x61\xd7\xcd\x1b\x9a\xc3\xc5\x34\xa4\x50\x98\x66\x66\x97\x41\x16\xda\x36\xcc\xd0\x3c\xb6\x30\x80\x9a\xee\x8f\xf3\x92\x0d\x00\x07\xdb\x8f\x5c\x63\x59\xbb\xd5\x2d\x8e\xf1\x93\xde\xe5\x6a\xe8\xc1\x03\xe5\xb5\x36\x28\xae\x6e\x23\x78\x1d\x1a\xbc\x46\xcd\x42\x77\x47\x05\xb7\xbd\x9b\x1d\x7a\x76\xcb\x7f\xdb\xde\x5d\xb3\x5d\x46\x78\x4b\xd4\x8e\xbd\x8b\x40\xc6\xdf\x15\xf6\x3b\xf4\xee\x9a\xd9\xd7\x6f\x86\x6a\x4f\x4f\x89\xde\x34\xa7\x38\x53\xfc\x94\x2e\x35\xb9\x9c\x9e\x96\xf6\x56\x20\x8a\x05\x82\x18\x83\x18\x4a\xa4\x26\xa3\x29\xcc\x90\x9a\x1c\x4d\x61\x8a\xd4\xe4\xe9\x14\xce\xd1\x08\x26\x68\x32\x3d\x9e\x3f\xf3\x47\xeb\xf1\xbc\xdf\x07\x18\xc9\xc9\x7c\x0a\xe9\x04\x4f\x7b\xbd\xc4\xbe\x9f\xd7\x7f\x4c\x46\x5a\xcc\x9c\xe0\x29\x1a\x99\x57\xfc\xac\x43\x59\x27\x03\x3b\xdd\xcb\x64\x90\x99\x60\xaf\x13\x36\x45\xd9\x84\x4d\x81\xe9\x61\xd6\xeb\xcd\x62\x05\x8e\x13\x3f\x3c\x48\x86\x72\x41\xe7\x2a\x0e\x82\xca\xf0\xd0\x7e\xc9\x61\xba\x5e\x4f\xa6\x00\x8a\x18\x84\x42\x5d\x31\x5d\x02\x15\x1a\x1d\xab\x67\xdc\xf7\xa9\xb4\xe4\x59\x48\xa5\x7c\xa2\xa6\xd0\x64\xa6\x95\xe8\xe8\x58\x3e\xf3\xc1\x41\x8f\xa5\x97\x50\x33\x24\x26\x72\x7a\xa0\x39\x22\x9d\x64\x53\xc3\x11\xba\x47\x60\xa3\x79\x03\x1f\xca\x55\x4a\x67\x24\x56\x83\x01\x3c\x02\x90\x20\x1c\xe3\xa1\x44\x42\x23\x27\x57\x66\xc8\xc6\xb2\x99\x6b\x7d\xd6\x5e\x8f\xc6\xa3\x0d\xe4\x26\xf6\x41\x71\x79\x66\x4f\x57\x36\x51\x53\x6f\xb7\xd6\xbf\x87\x8e\x0d\x38\xb5\x4a\x7f\x42\xd7\x74\xac\x60\x3a\xee\x1e\x41\x57\x38\xbe\xde\x14\x79\x6e\x75\x23\x6b\xa6\xf7\x6d\xa1\x80\xc5\x6f\x6c\xa2\x9f\xea\xd9\xe6\xdf\x36\x78\xb8\x44\x04\xe2\xe1\x0c\x31\x88\x87\x09\xaa\x72\x09\x3c\x34\x97\x82\x20\x37\x0b\xd6\x68\x5b\x35\x11\xb3\xd8\x80\x0d\xc4\x43\x81\xca\xaa\x42\xfd\x4e\xd0\x8b\xb6\x4e\xac\xf5\x96\xd8\x77\xf8\xbc\x4d\x74\xc9\x15\xd9\xa0\xae\x67\x4d\x91\x63\x55\xdb\xb6\x62\x0b\x47\xd3\xe0\x2a\x54\x13\x79\x8e\x7a\xca\x64\x86\xc5\x31\x01\x00\xfe\x47\x4f\x15\xb7\x1c\x74\x1e\xff\x4e\x97\x16\x42\xa4\x97\xc0\x7b\x3d\xfd\xff\x61\x31\x52\xe5\x6a\xa4\x72\x71\x60\x84\x0e\xdd\x1d\x1e\x8a\x58\xb4\x81\x2e\xb4\xd6\x67\xde\xfd\xd4\xd8\x87\xbb\xad\xdb\x00\xf8\xd4\x00\xe4\x62\xa4\x07\x77\x2e\xf9\xfe\xb7\x8f\x81\xf0\x30\x89\xb5\xcc\x95\x4f\x37\xb0\x3b\x4f\xd4\x74\x63\xae\x00\x5c\xae\xd8\xc0\xfe\xaf\x71\xd4\x14\xc9\xa3\x32\xdb\x93\x3a\x2b\xcb\x1f\x28\x6e\x1a\xf8\x1c\xc9\x29\x58\xc3\xa5\x60\x84\x23\xa8\x00\x54\x7a\xb8\x96\xf7\xb5\x3b\xdf\xff\xea\x3e\x56\x28\x8a\x9c\xec\xe4\x02\x68\x5c\x90\xb3\x15\x9e\x7d\xf8\x6f\xc9\xd9\xaa\x81\x93\xee\x58\x4d\x33\x1f\x98\x21\x69\x79\x92\x41\x99\x04\x07\xf6\x4f\xa4\xa0\x44\x72\x28\x0d\x7f\x00\x79\xa0\x93\x14\x8d\x8e\xd3\x82\xc3\xa6\xfd\x3e\x50\xb1\x9c\xa4\x53\x2f\xe0\x64\x65\x4e\x17\x4f\xbe\x18\xc1\xa7\x8e\xc5\xc5\xd7\x4f\xbf\x08\xd1\xe7\xa0\x3c\x25\x98\x9e\x0a\xe4\x62\xca\xc2\xf0\x6b\x82\x2c\x11\x6d\xe0\x17\xa3\xda\xc5\x90\x88\x9f\x7e\xa1\xd5\x3e\xc7\x0a\x90\x88\xbf\x38\x02\x1b\xf8\xc5\x51\xf3\x15\x12\xa4\x90\x1f\x34\x6d\x61\x1f\x18\x47\x8b\x59\xc3\x15\x8a\x59\x4b\xa8\x9c\x17\x69\x1a\x47\x56\x09\x8b\x00\x98\xb0\x5c\xd7\x99\x0e\xa5\x98\x0d\x05\x31\x31\x7d\xe2\xc3\xf7\x87\x93\x9f\x0e\xa7\x9f\xfd\xe6\x10\x46\x87\x11\x08\x21\x8c\x29\xb2\xd3\x82\xdc\xfe\x10\x7e\xb6\x66\x71\x5e\x64\x8a\xbf\x32\x4b\xf3\xf5\x15\xc3\x4b\x3a\x6b\x12\x36\x79\x1c\xd9\x3e\xae\xd8\x69\xd4\x27\x60\x03\x69\x1c\xfd\xe7\x79\x4a\x97\x4b\x22\x0e\x8d\x28\x65\x9f\xa2\x4e\x9b\x42\xce\x8a\xf8\x68\xf4\x7b\x63\x95\xd4\xad\x2e\xcd\xb3\xbf\xc3\xb9\x5c\xb6\xd7\xff\xe2\xa9\xaf\x7e\x86\x25\xf9\xfd\xef\x06\x7f\x93\x5b\x2a\x7f\xee\x2b\xcf\x52\xba\x3a\xe3\x58\x24\x5b\x2a\xff\xce\x57\x4e\x3e\x1f\x60\x21\xf0\x55\x7b\xdd\xcf\x83\xaa\xd2\xa6\xd6\x6e\x9f\xe0\xd3\x6a\xe5\xc1\x6c\x21\xf8\x12\x2b\x3a\xdb\xd6\xec\x8b\xb0\x19\x71\x12\xff\xb6\x06\x25\xa0\x16\x78\xb5\x15\xa8\x62\xb2\xf8\x6a\x2b\x0a\xbf\x28\x55\x3c\x5c\xa5\xd9\x39\x65\x87\x7a\x1a\x2c\xc1\x62\x4b\xc3\x7c\x5d\xe7\x29\x56\x5b\xea\xfd\xbb\xaf\xb7\x64\x64\xc9\x19\x95\xea\x70\x99\xa5\x8a\x0e\xec\xab\xc5\xb6\x66\xff\xaf\xde\xcc\x3a\x6d\xb5\x34\xf8\x7d\xbe\x0c\xec\x5c\xe0\xd5\x62\x68\xfe\xbb\xa5\x7e\x8e\x4e\x97\xed\x8f\x24\x83\x99\xd1\xa2\xb6\x0f\x63\xf1\x65\x94\x1e\x1a\x47\x57\x38\x49\xf0\x16\x3a\xfa\xdc\x06\x47\xdb\x80\xe3\xf8\xc1\x79\x29\x70\x2c\x4f\xcb\xa3\x93\x2d\x8e\x69\x6a\x88\x5b\xa2\x2e\x3c\x53\x27\x83\xa3\x31\x79\xae\x4e\xf4\x7f\x91\x3a\x19\x8d\xbf\xc3\xdf\x6d\x36\x70\xab\xf2\xe3\xd4\xc0\xf8\xe8\x08\x1c\x14\xcc\xa6\x45\x98\x2e\x0e\xbd\x93\xc9\x74\x68\xb3\x7b\xc4\x04\x8c\x27\xd3\x22\xb0\x2e\x65\xa7\x66\x3f\x22\x66\xa2\xda\x5c\xc5\x0a\x0a\x73\xa2\x0d\x09\x9e\x2d\x82\xaf\xbc\xf8\x7a\x8a\xe5\x15\x9b\x05\x65\xd8\x96\xcd\xac\xf2\x1c\x14\xc8\x52\x41\xad\x5d\x66\x8b\x35\x11\x2b\xc2\x82\x02\x6a\x0b\x28\xfb\x5b\xb9\xbf\xd4\x7e\xd7\xb8\x3f\xc5\x69\x1a\x94\xcc\x5c\x57\xb4\xf4\x75\xee\xbf\xb2\xa4\x52\x3f\x29\x4a\x82\xaf\x0b\xfb\x35\xc5\x32\x1c\x75\x65\xbf\x32\xfc\x81\x84\x95\x97\xf6\xe4\x0f\x4d\xb4\x75\x43\x32\x09\x0d\xc9\x74\x6e\x42\x82\x21\x84\x72\x9f\x81\x51\xc9\xf1\xce\x9a\xae\xea\x47\x41\x34\xb1\x82\x5b\xe7\x85\x5e\xab\x69\x84\x10\xaa\x89\x15\x65\xcf\x00\x02\x36\x85\x6f\xc9\x84\x98\x14\x04\xc6\xf3\xc7\xe7\x14\xa8\x88\x79\x34\x26\x46\x4f\x62\xfa\x97\x93\x05\x8e\x82\x08\xcc\xb1\xf0\x04\xc4\x42\xd3\x01\xaf\xcc\x19\x32\x34\x3a\x66\xc5\xac\x59\xbf\x0f\x04\x52\x46\x81\x82\x2c\x10\xcf\xea\xfe\x78\x74\x1e\x0b\x24\xd6\x6b\x36\x64\x9c\xaf\x60\xb7\x0a\xa9\x88\xbd\x07\xc8\xe8\xa0\x5b\x72\x8c\xd1\xdd\xd3\x29\xa4\x01\x1f\x50\x90\x17\x7a\xf5\x89\x88\x15\x18\xf7\xfb\xf4\x79\x3e\xfd\x13\x61\x45\x46\xee\xd2\xbc\x32\x1b\x95\x3d\xae\x78\xc0\x89\x40\x1d\x45\x2a\x06\x90\xa2\xd1\x31\x2d\xa6\x47\xfb\x7d\xc0\x5c\xa4\x36\x07\x44\x90\x37\xb7\xe4\x69\x06\xcd\xed\xa1\x9d\x80\x8a\xc1\x81\x9e\x77\xd9\xd0\xc1\xb4\x9c\xa3\x7f\xd4\xd2\xb5\xe7\xaa\x96\xf1\x43\xcb\xc9\x3f\x36\xd4\x10\x90\x80\xd5\xf1\x2c\x01\x14\x2e\x42\x47\x00\x40\x37\x3f\x70\x43\xdf\xcc\x62\x85\x9a\xca\x65\xe7\xb3\x0a\x2e\x1a\x31\x81\x44\xcc\xa0\x46\x43\x13\x0e\x66\x96\x54\x14\x52\x01\x37\x52\x86\x1b\x6d\xb9\x7b\x21\x2e\x21\xc6\x44\x4c\x03\xf7\xb2\xb2\x3d\xad\x0c\x9a\xa6\x3f\x61\x08\xcf\xb7\x6d\x6a\x98\xec\xb8\xba\xf9\xb2\xf6\x7a\x6e\xa1\xdb\xe6\xb7\xd8\x61\x2b\xd0\x79\x9c\xef\x05\x70\x2d\x90\xfe\x69\xe3\xff\x6d\xea\x3b\x63\x15\x5e\xc2\x4c\x0a\x7b\xfb\xb4\xa8\xb2\x2c\xaa\x84\x1c\x3e\x8f\x16\x68\x82\x19\xec\x76\xa2\x7c\xfe\x85\x9e\xbf\x88\x5b\x0e\x96\xc2\x6a\x69\xae\xd1\x4d\xd8\x04\x2a\x4f\x53\xcc\xce\x33\x7c\x6e\xae\xba\xcc\xb7\x94\x9e\x09\x2c\xae\x9a\xc4\x59\x61\x63\x66\x53\x49\x4e\x5d\x2d\x13\xe7\x5a\x57\x01\x1b\xd7\xba\x52\xa1\xa9\x1b\x1a\xab\xe1\xa9\x54\x64\x25\x81\x39\x8d\xca\xf1\x78\xb4\x4e\x58\xb4\x32\x36\x24\x98\x85\xf9\x86\x6b\x8d\x58\x71\x71\x84\x78\x5c\x00\x19\x2b\x00\x99\x8b\x57\x43\x19\xc9\xfb\xb2\xb1\x9d\x00\x24\x9b\x83\xa6\xa8\x4a\xce\x02\x62\x1c\x2b\xcf\x5f\x5e\xae\xe2\xe8\xa7\xc3\xf5\xe1\x6f\x22\x18\x9d\x47\x9a\xbd\x06\x25\x87\x3f\xc5\x27\xe3\xf7\x3f\x81\x93\xc3\x20\xd2\x7d\x11\x91\x3c\x57\x33\x04\x8c\xa2\xe2\x2f\x06\x23\xd3\xee\xbd\x04\x9f\x99\xf8\x46\xef\xdf\xcb\x7e\x04\x36\x07\x25\x0c\x16\x50\x89\xb2\xeb\xa7\xd9\x49\xb5\x9c\x2e\x7f\x24\x57\x17\x5c\x24\x9d\xe8\x49\x5f\xf4\x9f\x44\x26\x89\x0b\xe3\xce\xbd\xd3\x84\xc7\x48\xb5\x94\xd6\xa1\x4c\xf1\xce\x13\x3d\x6a\x10\x4d\xe9\xff\x67\xef\x5f\xb7\xdb\xc6\x95\x45\x51\xf8\xbf\x9f\x42\xe6\xea\xa9\x05\x98\x10\x4d\xea\x6e\xda\xb0\xbe\x74\xda\xe9\xce\x9a\xe9\x24\x2b\x49\xcf\x9e\xbd\x14\x4d\x0f\x98\x82\x24\x74\x28\x52\x0d\x82\x76\x3c\x2d\xfd\xdd\x4f\xb0\x5f\xe2\x7b\x8d\xf3\x28\xfb\x49\xce\x00\xc0\x0b\x28\x51\x89\xd3\x97\x8c\xec\x1c\x67\x8c\x58\x24\x58\xb8\x15\x0a\x55\x85\x42\xa1\x20\x8b\xdc\x7c\x8c\xce\xb8\x23\xb9\x70\x41\x6e\x27\x9a\xda\x5c\x88\x62\x49\x74\x03\x78\x50\x95\x08\x19\x22\x0f\xf6\x78\xe3\x69\xbb\xca\x7a\xad\xb7\xd2\x76\x7d\x0c\x54\x9f\x35\x7b\x64\x89\xfa\x05\x14\x2a\xa7\xd1\x1d\xb3\x89\xe6\x83\xb9\x21\xa2\xb4\x8c\xe4\x8c\x51\x7b\x42\x57\xad\x21\xfb\xa5\x6e\x26\x3a\x87\xa8\xe5\xe5\xf8\xb1\x5e\x14\x3b\x77\x7c\x6b\xc3\x54\x99\xfb\x2b\x29\xea\xa6\x03\x88\xac\x1f\x89\x8a\x20\xcf\xd7\x6b\xeb\x35\xd5\x79\x47\xba\x3f\x33\x1e\xcb\x69\xef\x5b\x8f\x72\x0e\x9f\x01\x2a\x72\xfa\x89\xad\x9f\xc2\x48\x80\x91\x3f\x5c\x7b\xfd\x75\xa7\x0d\xc1\xc8\x7f\x1c\x92\xe5\x8a\x4e\xa1\x2e\xe1\x9b\x63\x47\xd0\x44\x00\x0e\x47\xba\x6f\x7e\xbe\xaf\x24\x67\xe2\x7a\x2d\x94\x4d\xc8\x8a\x52\xa9\xf9\x1a\x08\xc9\xe5\xf1\x9d\xda\x6b\xc1\x3c\x1f\x4c\xb7\xba\x31\x97\x5b\x48\xee\x12\x9f\xa1\xa8\xc6\x86\x12\x19\x62\xf8\x6e\x1a\x47\xca\xa8\xe5\x67\x4f\x5e\x6e\x21\x1a\x47\xb6\x3d\xd9\x6c\xd0\x76\x04\x1b\x49\xb8\x74\x83\x66\x3e\xdb\x6c\x6a\xb7\xf4\x9e\x66\x37\x9c\x67\x71\x97\x1b\x22\x6e\x68\xb2\xa0\x8d\x28\x8e\x5a\xea\xf9\x2a\x2c\x77\x07\x9d\xb7\xd1\xd3\xa8\x11\xf3\x29\xe5\x12\xf6\x8a\x36\x72\x10\xa4\x32\x28\xf5\xb8\xa1\xf5\xaf\x44\xfb\xfa\x2e\xc8\x35\x6d\x90\xc6\x0e\xd5\x01\x58\x86\x1a\xdb\xe4\xdb\xc0\x87\x2e\x4a\xf1\xa1\x57\x62\xc5\xc4\x48\x0d\xe9\x02\xb8\x41\x35\x31\xcc\xb9\x13\xd1\xf7\xa2\x34\x2f\x13\x4c\x1d\x89\x32\x44\xb7\x71\x94\xca\x2a\x63\xac\x90\x64\x14\x23\xf8\xed\x1d\xc9\x67\x0c\x77\x74\x31\xeb\x75\xfe\x24\x55\x1f\x16\x91\x30\xbc\x95\xd3\x21\xcd\x58\x44\xbc\xd9\x6c\x76\x0e\x05\x64\x5e\xd8\x62\xbd\x16\xe7\x05\x55\x34\x9b\x40\x94\xda\xa5\x29\xd2\x33\xa6\xa7\x67\xa1\x80\x52\xc2\x2b\xd1\x1e\xe5\x01\x7d\xf6\x28\x4c\x05\x33\x75\x0f\x2a\x0c\xac\x30\xf2\x28\x4b\xa7\xf2\x95\x95\xb5\x31\x27\x01\xf0\xf4\x10\x44\x98\x39\x11\x80\x50\x61\xe7\xb4\x08\x2d\xa6\x4f\x3b\x1c\xe8\x73\x0b\x71\xb3\x09\x62\x6c\xc7\xf0\x5c\x3e\xda\x36\xdf\x94\xce\xb1\xcc\x51\x91\xc7\x0b\x64\x38\x33\x00\x37\xca\x75\x5f\x5f\x1f\x81\x52\xdc\xf2\x50\x58\xad\x3c\xcc\x2a\x4f\x70\xb8\x53\x79\x80\x93\x4a\xe5\x20\xc0\x02\x04\xc8\xb6\x53\x44\xa1\xc4\x5b\x80\xed\x00\x9e\xe3\x60\xbb\x25\x61\xb5\x25\xa1\x6e\xc9\xae\xa2\x10\x7e\xb6\x61\x09\x0c\x2f\x94\xe0\x2b\xf3\x42\x31\x75\xca\xa2\x5a\x77\x9d\xe3\xae\xa2\x3a\x16\x2e\xd4\x80\x9e\xbb\xd5\x9d\xd4\x62\xc9\x56\x1e\xd0\x08\x94\xec\xb1\x74\x39\x16\x8b\x1a\x74\x44\xfd\x0a\x33\xaf\x57\xfa\xea\x4c\xde\xd9\x7e\x92\x9e\x0d\xa8\x06\x51\x5b\xfa\xfd\xb6\x0c\x84\xc5\x21\x13\xbd\x42\x34\x5d\xba\xb7\x7d\xdf\xf7\xed\x7c\xe4\x83\xd8\x60\xb9\x75\xdb\x28\xb8\xda\xaf\xad\x1a\xee\x29\x72\xc3\xaf\x58\xe4\x86\x3b\x22\xd7\x40\x50\x2e\xe0\x3e\x2e\xd2\x92\x15\xa7\x64\xfa\x79\x25\x1a\x80\x1b\xa0\xdc\x03\x8c\xf5\x87\xb1\x81\xb9\xeb\xf0\x24\x0c\x0e\x43\x21\xca\x2c\x22\x3a\x0e\x9b\xe4\x32\xe5\x0d\x2d\x7c\x92\x29\x13\x35\x93\x5c\x8c\x45\xb9\xf6\x69\x36\x57\x40\x38\xab\x78\x05\xa0\xd4\x20\x81\xc0\xc2\x59\x92\x15\x58\x40\xa8\x7e\x67\x2a\xee\x6c\x01\x8f\x88\xd1\x84\xd8\xf6\xa0\xb2\x10\x49\xb5\x33\xc9\xee\x65\x8c\xcf\xdc\xf5\x9a\x39\x49\xbc\xa4\x60\x5a\x50\x71\xa2\x38\xe5\xe9\x29\xbc\x4b\xb2\xcb\x64\x54\xe9\xe6\x82\xdd\x38\x7b\x38\xe6\x93\x31\x9d\x6c\x20\x2c\x19\x6c\x8a\xe3\x53\xdb\x26\xe3\x74\x82\xf5\x76\xec\xa9\xa2\x79\x29\xc0\xd2\x62\xc9\x3d\x4a\x54\xa9\x11\xf4\x93\x03\x32\x4e\x5b\xad\x09\x76\x4d\x79\x7b\x5d\x91\x82\x72\x41\x99\xf3\xe4\x27\x61\x4c\x44\xbf\x6b\x92\x27\x2a\x25\x64\x1d\x77\xe5\x36\xb6\xe9\x7a\xed\x1a\xdc\x95\x55\x3e\x0a\xc0\x50\x64\xdb\x48\x12\xa4\x5b\xe3\x3a\x6b\x18\x2f\xc5\x19\x1d\xb5\x3c\x5f\x9c\xd3\x91\xfc\x8b\x69\x66\xbc\x2c\x75\xf8\xab\x2f\x4b\x87\x9f\x7f\xc5\x0c\x65\xfe\xa0\xc3\x7f\x0e\x1d\x3e\xf9\xac\x3a\x7c\xf2\x27\xe8\xf0\x49\xad\x0e\x3f\xff\x6c\xca\xe2\xa5\xc1\x03\x90\x26\x31\xd9\xa7\x5a\x6d\x9e\xa0\x04\x5f\x99\x0a\x75\x92\x29\xd4\x04\x27\x3b\x0a\x75\x8a\x49\x45\xa1\x4e\x9b\x4d\x90\x62\x3b\x85\xe7\xea\x31\xb6\x31\xe0\x38\x6d\x31\x78\x04\xd2\x16\x60\x36\xe6\xc7\xb6\x1d\xa9\xbd\xa0\x42\xb7\x4e\xaa\xba\x75\xb2\xa5\xe5\x87\x28\x90\x5a\xfe\xac\xda\xa8\x59\xd6\xa8\x10\xcf\x76\x1a\x35\xc5\x61\x55\xcb\x9f\x62\x01\xa6\xc8\xb6\x83\x4c\xcb\x9f\x62\x7b\x0a\xcf\xf1\xb4\x68\xe1\x54\xb5\x70\xba\xaf\x85\xb3\x6a\x0b\x67\xba\x85\x6c\x06\xa2\x73\x2f\xe7\x6b\xf1\x31\x88\x5a\x9e\xa1\x3e\xde\x98\x12\x43\x0f\x40\x61\x73\x1f\xfd\x48\xc4\xc2\x49\x7e\xe3\x92\x6d\xf8\xc6\xfa\xe1\xe2\xcb\x62\xd6\xaf\xbf\x62\x66\xfd\xfa\x81\x59\x3f\x30\xeb\xfb\x33\xeb\xd7\x7f\x35\xb3\x96\x39\x5e\xd4\x59\xb0\x51\x54\xc7\xa6\x19\x8a\xf1\x85\xc9\x11\xe3\x8c\x23\x32\x1c\xef\x70\x44\x82\x59\x85\x23\x92\x66\xb3\x2c\x90\x8f\xc8\xb9\x4a\xe1\x38\xc2\x04\xfa\x80\x9f\xeb\x37\x02\x51\x74\x46\x94\xf3\x22\xa9\x32\xc4\xb8\xca\x10\xe3\x7d\x86\x99\x8b\x3f\xcd\x30\x63\xb4\x36\x50\xf6\x19\xd5\xda\x40\xb5\x56\xbf\x05\xb2\xb5\x81\x6a\x6d\x50\x6d\xed\x87\x8c\x37\x63\x8e\xa2\x89\xa1\x2d\xbf\xff\xb2\x18\xf0\xa3\xaf\x98\x01\x3f\x7a\x60\xc0\x0f\x0c\xf8\xfe\x0c\xf8\xd1\x67\xd3\x96\xdf\x7c\xc9\xc7\x10\x65\xcd\xef\xf6\x9e\xbe\x3a\xdc\xe1\x30\x7f\xe2\xe9\xab\xe2\x64\xa9\xda\xde\xbc\x5c\x11\x2e\x18\x09\x13\x85\x60\xd3\x0a\x02\x3a\xed\x1c\x26\xc2\xae\x6a\xb1\x40\xbc\xd8\xa2\xc4\x14\x01\x9e\x9f\xd4\xda\x73\x82\x36\xc7\xbd\xc0\xd5\xba\x50\x66\x7c\x39\x8d\xce\xb2\x0a\x9a\xcd\xe8\xac\xd3\x56\x5b\xfa\xb9\x4b\xc7\x38\x9a\x48\x12\xb4\x19\x22\x58\x29\xda\xe4\x2a\x01\x14\x9e\x15\xcf\x0c\x8e\x68\x0b\xc4\x2d\x06\x7d\x26\x7f\x29\x3c\x20\xfa\x5a\x03\xdb\x9e\x48\xb1\x47\x71\xbc\x31\x2c\x4a\xf9\x25\x0c\x97\x11\xe6\xb6\xa7\x9e\xab\x11\x0d\x5e\xcc\xf6\x1d\x75\x47\x02\xf1\xec\x06\x54\xa3\x17\xd9\x5d\xa8\x97\x51\xbe\x08\x63\xe7\xae\xee\x74\x8c\xa3\x71\xab\xc5\x26\xa7\xec\xdc\x55\x9c\x2e\x46\x87\x80\x63\x20\xb2\x74\xd8\x02\x40\xf6\x4d\xc0\x16\x85\x2a\x2e\x95\x06\xe4\x67\x6e\xb3\x19\x8d\x59\xcb\x9b\x9c\xb9\xeb\x35\x3f\x2f\x5e\xcf\x5d\x3d\x3d\xda\x47\x1c\xaa\x80\x56\xb1\xcc\xac\xb7\x5d\x4a\xff\x84\x78\xb3\x99\xc0\x66\xf3\x0d\x30\xa3\x3b\xe5\x37\x90\xff\xb8\x77\x63\xfd\xdd\xbe\xfd\xa0\xf7\x9f\xbc\x1f\x74\xaa\xb7\x81\x9a\x4d\xee\x90\xe9\x14\xc4\xf0\xfe\x1b\x41\x72\xc9\xda\xf2\x50\x5a\xad\x35\x2d\xd6\xad\xe9\x4e\xad\x61\xbe\x6e\x3d\x05\x21\xb6\x05\x08\x91\x6d\x27\x5a\xd5\xd0\xd5\x87\x66\xf5\x69\xb5\xfa\xd4\x54\x20\x6c\xbe\x41\x2f\xeb\x9c\x23\xa8\xa1\x55\xfc\x5a\x7f\x39\xc6\x87\xf7\x05\xe8\x1e\x93\xfd\xef\xde\x16\xc8\xc6\x6d\x9c\x1d\x5e\x61\xf8\xd0\x43\x71\x7e\x84\x36\xc7\x5a\x8e\xcf\x3a\xd9\xa0\x86\x50\xdb\x01\x94\x38\xd0\x28\x85\xda\x85\x5b\x9b\x66\x15\x52\x21\x3a\x14\x92\xb9\x6b\x8e\xa9\xc2\x2c\x9d\xca\x2a\xe1\xa9\x31\xa4\xb9\xa0\xc8\xb1\x2a\x1b\x10\xe5\x22\x22\x29\x44\x44\x52\x2b\x22\x58\x29\x22\x8a\x4d\xb8\x4d\x76\xe4\xe4\x55\xf6\xfb\x3b\x4c\xf9\x53\xaa\x55\xa1\x94\x7f\x66\x79\x6d\x7a\xbb\x3d\xfe\x4b\x55\xd0\x57\x0f\x7a\xd6\x83\x9e\xf5\x21\x3d\xeb\xd5\xbd\x17\x27\x4f\xbf\xe2\xc5\xc9\xd3\xea\xe2\xa4\xc0\xce\xd3\xcf\xa6\x85\x7e\x57\xd5\x83\x76\x76\xf4\xb8\x59\xe4\xb9\x37\x12\x2d\xcf\x77\x21\x8a\xb0\x27\x95\x23\xed\xee\x3b\x8e\x5a\x9e\xb9\xb7\x17\x15\x15\xfd\x00\x28\x7a\x89\x5e\x22\x6e\x30\x9e\xe7\x7f\x79\x8d\xe5\x38\x6d\x55\xfd\x6c\x5b\xe5\xde\xa9\xdc\xc4\x20\x3f\x6f\x8f\x78\xab\x2d\x2b\x67\xb8\x7d\xca\xce\xb8\x76\x7a\x1d\xb3\x56\xdb\xac\x9c\x6d\x75\x57\x54\x02\xf9\x3d\xf9\x0c\x75\x1a\x1d\xae\x56\xfe\xef\xcf\x30\xba\xdf\x56\x50\xfc\xd3\xe7\x1c\xdd\x6a\xd5\xdf\x66\xac\xc4\x3b\x34\xbc\xde\x77\xae\x92\x9c\xa6\xfa\xd6\x64\xda\x78\x47\x6f\x8d\x08\x96\x63\xd7\x70\xb3\xfd\x01\x64\x2a\xf5\x8e\x36\xd5\xa0\x80\xa1\x58\xd5\x13\x9f\xe3\x68\xc7\x65\x9d\x69\x4e\x25\x75\x9b\xfc\x54\x7f\x8a\xa3\x71\x6c\xdb\x13\x14\x4a\xf5\x31\xc0\x8f\x25\x50\xae\x08\x05\x85\xfa\x18\xec\xa8\x8f\xb3\x5c\x7d\x44\x53\x9c\x82\x19\xb2\xed\x10\x31\x88\x16\x58\xdf\xb1\x3a\x85\x07\x8b\xd1\x42\xab\x44\x33\xe8\x27\x2a\x0a\xc0\x14\x8d\x67\x13\x53\xab\x0c\xaa\x5a\x65\xa0\xb4\x4a\x59\xfa\x0a\x2d\xf1\x63\x90\x94\x4d\x59\x66\x4d\x59\xe1\xe5\x4e\x53\xae\xf1\xaf\x60\x95\x35\xa6\x0d\xd1\x2d\xbe\x1e\xbb\x13\x74\x85\xaf\xc7\xde\xe4\x40\xd7\x7c\x8b\x28\xb8\x42\x71\xc5\x26\xb6\xac\x56\xbe\x54\x95\x17\xbe\xca\x09\x94\xca\x94\xab\x9b\xf3\x0f\xbc\xe5\xdc\x8e\x7e\xc3\xff\xd0\xdc\x1c\xfd\x8c\xc1\x3f\x9c\x25\x59\x7d\xd0\xfd\xc5\x50\x89\x37\x10\x7d\x83\x39\x30\x7d\x4c\xbf\xdf\xf1\x1b\x3f\x3d\xad\x06\xd6\x05\xdf\x38\x57\x59\x64\x5c\x75\xe0\x95\x61\x8c\xa3\xf5\x5a\xae\x38\xd8\x7a\x7d\xc8\x92\x27\x2c\x62\x82\x02\x56\x1e\xb2\x40\x62\x72\xc0\xce\xdd\x11\xa0\x7a\x05\x38\x0b\xe3\x98\x03\x7a\xcc\xe0\x11\x43\x42\xa7\x05\x94\x85\x40\xa8\x24\xe8\xb3\x33\xbd\xdc\x2a\xbf\xd0\x23\x06\x8f\x0b\x60\x5d\x80\x50\x69\xea\x68\x86\x5e\x89\xff\x52\xa7\xf9\x97\x65\xa8\xa7\x30\x9e\x83\x54\x6a\x5d\xc7\xea\xf5\xd9\xf3\x36\xb4\x3d\x63\x71\xf0\xf7\xcf\x61\x59\xfe\x6f\xbc\xa3\x6c\xbc\x44\x02\xbf\x40\x1c\xff\x62\x86\xdd\x62\xf0\xae\xaa\x36\x32\xa9\x36\x32\x6c\x48\x58\x96\x45\x13\x88\x55\x54\x00\x96\xf3\x8f\xd4\x68\x4f\xa2\x9b\x1a\x63\xf7\x34\x3e\x4b\x4e\x6d\x3b\x86\xe9\x38\x9e\x60\x0a\xd8\x38\x9e\xa0\x18\x65\x93\x31\xc4\x02\xa4\x10\x05\x38\x94\x44\x3b\xc3\xe1\xd8\x9b\xa0\x29\xe6\x20\x45\x01\x9a\xe9\xdb\x67\xab\xcd\x99\x42\x35\xc3\xa7\xd8\x9e\x22\x81\x31\x7e\xa1\x7b\xb3\xa8\xf7\x8e\x78\x58\x69\xfd\xa5\x2b\xad\x4f\x36\x67\xff\xfd\x2b\xd6\x18\xff\xbe\x6d\xce\xfe\xbf\x71\x11\x0a\xbe\x07\x01\x9a\xa1\x29\x44\x6d\x78\x10\xe0\x85\x9e\x96\x8b\xb1\x37\xd9\x80\x69\xc9\x8e\x09\xcc\xc0\xe0\x78\x5a\x3a\x84\x61\x8c\x67\x2a\xdc\x47\xbc\x92\x34\x94\x91\xf8\x0a\x17\xb1\x39\xa6\x63\x77\x72\x86\x03\x23\x46\x07\x6a\xb5\x56\xda\xbf\x6b\x3a\x5e\xb5\xbc\xc9\xf9\x4c\x7e\x54\x05\xa8\x4f\xb2\x80\x25\xba\x36\x58\xcb\xca\xf6\x4c\xe6\x82\x57\x8a\xbb\x80\x25\xbe\x96\x0c\x66\x3c\x81\xce\x7b\x17\xc7\xe7\xee\x68\x3a\x8e\x5b\xde\xc4\x0f\xd0\xd2\x79\xef\xe1\xf8\x6c\x25\x53\x26\xfe\x6c\x87\x33\x05\x67\x72\xa6\x49\xfe\x04\x9b\x4d\x72\x26\xfb\x70\x3d\xce\xba\x1a\x39\x53\x08\xa6\x88\x20\x17\xad\xe0\x24\x0f\x64\x12\x97\xa7\x8e\xae\xf3\x59\x91\x6d\xb0\xe1\x1a\x4f\xd1\x6d\x55\x4b\x4a\xa5\x3a\xe7\xba\x91\xf0\x7f\x06\x02\x22\x06\x7d\xba\x41\xcc\x99\xc6\x4b\xc2\xa2\x3a\x09\xb3\x5b\x62\x6d\x34\x6f\x3a\xa2\xfe\xcf\x60\x2c\x35\x28\x44\xc7\xde\x64\xa2\xca\x16\xb2\x6c\xb1\xe0\x34\x59\xc4\xe1\x34\xb9\x5f\xf9\xb5\x81\xee\x4a\xe7\xd9\x92\xa7\x8e\x7e\x06\xbf\xe5\x13\x18\xfa\x3f\x03\xaa\xea\xe4\x1b\xc4\x36\xe8\xbf\x30\x07\x43\x88\xfe\xb9\x13\x2f\x64\x47\x70\x02\xde\x12\xf0\x18\xb4\x8f\x40\x36\x10\xff\x25\x69\x8e\x22\x67\xd0\x83\xad\xad\xa4\x76\x0f\xc2\x23\x95\x75\x15\xdf\x28\x49\x8b\x5a\xde\x71\x07\x42\xb8\x41\xff\x73\xef\xaa\x3a\x4e\xef\xe8\x06\xd0\xbd\x25\x51\x8a\x39\xf0\x86\x86\xe2\xa2\x23\xb2\x7d\x39\x7b\x85\x9c\x7e\xc5\xdc\x35\xeb\xdc\xc3\x6e\xe1\x83\x15\xeb\x5e\x56\xac\x8c\x5e\x3e\x87\xa1\x26\xa2\x55\xef\xba\x96\x87\x18\x6e\x79\x75\x3b\x23\x12\xc9\x92\x6d\x94\x4b\x3b\x92\x2d\xed\x62\x4c\x76\x96\x76\x09\x8e\xb3\x4d\x0a\xdb\x66\x48\x3b\x46\x24\x6a\xaf\x27\x59\xaf\xcd\x40\x75\xc9\x39\x4e\x94\x6e\x88\x13\xb9\x34\x31\xd7\x79\xa4\xba\xce\x23\x5b\x3b\x27\x29\x0a\xb7\x1a\x94\x7b\x69\xa4\xb5\x5e\x1a\x69\xbd\x97\x06\xcb\xbc\x34\xf8\x59\x50\x6d\x59\x70\x8e\x03\xdd\xb2\x60\xbb\x65\x1f\x3c\x52\x63\xa0\x97\x7d\x61\x6c\x36\xfe\x9a\xd9\x6c\xfc\xc0\x66\x1f\xd8\xec\x27\xb0\xd9\xf8\xf3\xb1\x59\x42\x77\x8f\x60\xec\xf1\x8b\x63\xf4\x8f\x38\xc6\x11\x6c\x13\xa8\x3d\xe2\x6c\x9b\xa3\xc8\xc6\xe4\xf7\xf8\xbe\xb1\x5a\xb6\xfa\x07\x4f\x25\xe6\x2d\x0a\x3e\xce\x49\xd9\x0c\xf0\xe2\x78\xcb\x31\x57\xd4\x67\x1e\x46\xdf\x0d\x8c\x56\x68\xd4\x3d\x15\x02\x2d\xa5\x98\xd3\x39\x8d\x34\x15\xbe\x4a\x23\xc1\x96\xd4\x59\x12\xfe\x0e\xcc\xa8\xa1\x07\x87\x5f\x18\x83\x0e\xbe\x66\x06\x1d\x3c\x30\xe8\x07\x06\xfd\x09\x0c\x3a\xf8\x7c\x0c\x7a\x46\x8b\x30\x57\x88\xa3\xa8\x38\xec\xb0\xcb\x43\x6e\x78\xe5\x00\x1f\xcb\xee\xe7\x3b\x85\xc9\x0d\x93\x3c\x8d\x39\x2b\x4e\xaf\x31\x53\xf8\x83\x77\x01\x49\x68\xc3\xf5\x05\x96\x9c\x06\xa2\xec\xab\x87\x84\xe4\xa9\x07\xea\x6b\xc7\x67\x33\x00\x38\x16\x25\x73\x85\x77\x3a\x3f\x1e\x56\xc3\xba\x44\x98\x67\xdb\x25\xcc\x99\xd2\x90\xce\x89\xa0\xbf\x30\x1a\x4e\x41\x84\x2c\xe1\x5a\xa8\x9f\x95\xd9\xf7\xb3\x02\x3a\xba\x00\x9d\x3a\xcc\x53\xbd\x4a\xb2\xe7\xfa\x79\xbb\x5c\xc4\x1c\xe1\x61\xe6\x68\x06\xed\xa9\x58\x5d\x40\xa6\x65\x05\x7b\x1d\xbf\x30\x1a\xe9\x2c\x1d\x24\x24\xd3\x46\xcc\x99\xb1\x88\x25\x0b\xe0\x75\x72\xd8\xbe\x2f\x7f\x2d\x1a\x4d\xad\x32\x57\x22\x94\x89\x6d\x03\x51\x4a\xd5\xc2\x00\x8d\xc7\x1e\xf2\x5c\xe4\x75\x90\xd7\x9f\x4c\xcc\x7b\xb4\xa8\x61\xd7\x31\xf8\x91\x1a\x2d\x4d\xf2\x0b\x65\xda\x70\x0d\x96\xbe\xfa\xc2\x58\xfa\xf2\x6b\x66\xe9\xcb\x07\x96\xfe\xc0\xd2\x3f\x81\xa5\x2f\x3f\x1f\x4b\xbf\xfe\x34\xd3\xc6\xea\x8f\x9b\x36\xce\xff\x54\xd3\xc6\xea\x4f\x34\x6d\x9c\xff\xf9\xa6\x8d\xdb\x2f\x8c\xcd\x5e\x7d\xcd\x6c\xf6\xea\x81\xcd\x3e\xb0\xd9\x4f\x60\xb3\x57\x9f\x8f\xcd\xce\xab\x9a\xf3\x8e\x6f\xd6\xb9\xd7\x6c\x16\x57\xac\x94\xde\x57\xde\x64\x64\xbe\xf8\x97\xea\x06\x9c\x09\x8a\xf1\xa1\x87\x08\xbe\xad\xe5\xc6\xbc\x96\x1b\x67\x2a\xf1\x41\xdc\x6c\xea\xa0\x96\x20\x02\x02\x25\x10\x22\x81\x13\x59\xa0\xfb\x31\xc6\x9b\xeb\xa6\xc6\xa1\x73\x6a\xda\x18\x94\x4f\x8e\xa2\x93\x9b\x3d\x46\x08\x63\xca\x9b\x81\x37\xb7\x82\xcc\x43\xb8\x41\x17\x52\x61\x6d\x77\x21\x7a\x2d\x1f\x3a\x6d\x43\x73\x7d\xf1\x85\xb1\xd4\xf7\x5f\x33\x4b\x7d\xff\xc0\x52\x1f\x58\xea\x27\xb0\xd4\xf7\x9f\x8f\xa5\x3e\x32\x59\xea\xef\x65\xa8\xcc\x21\x28\xc2\xfa\xa6\x68\x4f\xce\x92\x82\x84\x4b\xff\xb7\x17\xf4\x93\x63\x65\xa0\x10\x73\x90\xc2\x53\x10\x65\x77\x2d\x03\xe6\x10\x08\x42\x14\xc3\x33\xd7\x77\x8b\x88\xd2\x79\x72\x08\x35\x72\x52\x14\xe3\x50\x79\x94\x7d\x42\xf8\x8c\x00\xcd\xb6\xda\x98\x87\xce\x08\x6a\x43\x67\x04\xf9\xb9\xa8\x68\xc4\xc1\x14\x89\xbc\x49\xf2\x65\x9a\x35\x64\xba\xd3\x88\xfa\x08\x19\xb9\x3f\xa9\x71\xb4\xf2\x0b\x63\xcf\xef\xbe\x66\xf6\xfc\xee\x81\x3d\x3f\xb0\xe7\x4f\x60\xcf\xef\x3e\x1f\x7b\xfe\xf1\x4f\x62\xcf\x3b\x9c\x39\x77\xcb\xa3\x2a\x2c\x9c\x26\x61\x14\x63\x15\x7e\xae\xe5\xa1\x04\xbf\xa9\xe5\xd7\x51\x2d\xbf\x8e\x0a\x1b\x05\x41\x20\x3e\x73\x47\x9a\x11\xa6\x28\x85\xbe\xfc\x91\xcc\xb1\x64\xcd\xe4\xa3\x5c\xb9\x38\x6b\x5b\xe0\xe1\xe5\x17\xc6\x0f\x7f\xfd\x9a\xf9\xe1\xaf\x0f\xfc\xf0\x81\x1f\x7e\x02\x3f\xfc\xf5\xf3\xf1\xc3\xc7\x9f\x4b\x5d\x7d\xf9\xa7\xaa\xab\xe7\x7f\x89\xba\xfa\xf2\x8f\xa8\xab\xe7\x7f\xa6\xba\xfa\xea\x0b\x63\xcf\x4f\xbf\x66\xf6\xfc\xf4\x81\x3d\x3f\xb0\xe7\x4f\x60\xcf\x4f\x3f\x1f\x7b\xfe\xee\x2f\x56\x57\xa3\xbd\xea\xea\xab\x3f\x55\x5d\x3d\xff\x83\xea\xea\xf3\x8a\x0f\xde\x8f\xb4\x1a\xd5\xf2\xcc\x1d\x69\x34\xf8\xda\xdb\xec\x19\xc5\x4f\xa8\x3e\x03\xc9\x49\x34\x8d\x97\x86\x9d\xf6\x09\xdd\x13\x5d\x7d\xff\x71\xec\x7b\xa2\xd9\xad\x33\xa0\xb7\x6b\xb3\xb6\xcd\xac\xed\x89\x9f\xc7\x78\x42\x0c\x47\x2d\xc0\xb1\xcd\xe1\x29\x2b\xe2\xd4\x50\x00\x8f\x58\xab\xb5\x76\x11\xc1\x62\xcc\x6c\x3e\x39\xd0\x3f\x58\x8c\x63\x9b\x4f\x90\xfe\xc1\xa4\x14\x24\xc6\x79\xef\x2f\x4c\x92\xfc\xf4\x35\x4b\x92\x9f\x1e\x24\xc9\x83\x24\xf9\x04\x49\xf2\xd3\xe7\x93\x24\xdf\xd2\x7b\x5d\xa7\xf2\x6f\xfa\xfb\xe3\x67\x01\x6e\xe3\xdf\x15\x3d\xab\x5a\xe9\xef\x0c\x9f\x25\x6b\xbf\x77\xf0\xac\x86\x16\x14\x3f\xd0\xca\x21\x44\x15\xb5\x8e\x95\x38\xcf\x4f\xf5\x97\xb7\xd3\x09\xd9\xe0\x9c\x6d\x81\x05\xd5\x7e\xcb\xff\xa0\xb0\x1a\xb2\x03\x9e\xda\xb6\x38\xe3\xa7\xc5\x45\xd6\x2c\x97\xad\xea\x5a\xf4\x12\x92\x49\xc8\xf8\x8c\x9d\x42\xa2\x8e\xa9\x8f\xe3\xc9\x58\x18\xc3\x57\xca\xad\x7f\x98\x72\xab\xb8\x90\x44\x96\xfd\x1b\xc5\xbb\x3c\xe1\x07\x5a\xde\xfe\x07\x8d\x62\x7e\xfe\x7c\x14\xf7\x0d\x2d\xcf\xb3\x17\x47\x38\x8b\xe3\xec\xa2\x3e\x1c\xa0\xe4\xa4\x0d\xa6\x2f\x1e\x33\x63\x00\x1e\x54\x3c\x81\xaa\x52\xe7\x4b\x11\x6d\x3f\x7f\xcd\xa2\xed\xe7\x07\xd1\xf6\x20\xda\x3e\x2e\xda\xea\xa4\x07\xaf\x4a\x0f\xc9\x65\x05\xc8\x7d\xa1\x6d\x3b\x42\x45\x40\x8c\x43\xef\x23\xc2\x23\x03\x33\x6e\xcc\xfd\xfe\xf3\x31\xb4\x5f\xfe\xbf\xc6\xd0\xbe\xff\x9a\x19\xda\xf7\x0f\x0c\xed\x81\xa1\xfd\x59\x0c\x6d\x1f\x3f\x73\xef\xc7\xcf\xbc\x92\xc9\xfc\xfd\xf3\xf1\xb3\xff\xfe\x4b\xf8\xd9\x78\xa2\x5c\xb5\x51\xed\xa5\xb8\x5f\x00\x53\xfb\xfb\xd7\xcc\xd4\xfe\xfe\xc0\xd4\x1e\x98\xda\xa7\x31\xb5\xb8\x60\x6a\x75\xa7\x94\x73\xff\x5c\x01\x48\x76\x26\xa1\xb8\x04\xfd\xe3\x87\x93\x77\x59\xce\x7f\x7d\x90\xe5\xd4\xcc\xfb\x5a\x82\x50\x4d\x4a\x72\x2e\x94\x0f\xae\xa5\xc2\xb6\xdd\x9f\x93\x2d\xc9\x6a\x45\x79\x2d\x2f\xdb\x75\x0c\x36\x2f\xea\x37\x83\x40\x0a\xf9\x86\x68\xf5\xb2\xfc\x7f\xd2\x3c\xe8\xcf\x27\x35\x88\xd3\x69\x1a\xec\x69\x51\x66\x9f\x91\x54\x50\x43\x5f\xca\x68\x2f\x7b\xbf\x6d\x7f\x3e\xeb\x94\xc7\x5e\x32\x6a\x63\x33\x65\xc5\x57\x94\xc6\xf3\x03\xe0\x28\xca\xd8\xe3\xa9\x6d\x13\x15\x41\xeb\x34\xc2\x20\x2d\x72\x69\xaa\x40\x2c\x3f\xac\x82\x0e\xa3\xdc\xfa\x7f\xc0\xb1\x44\x02\x43\xb6\x4d\x50\x19\xd7\xdd\xb8\x5b\xea\x7f\x68\xce\x94\xff\x82\x21\xaf\x19\x2a\xe8\x70\x7a\x4d\x79\x42\xcd\xe0\xd6\x54\x14\x3b\x29\x7f\x70\x1f\xe5\xb3\xf5\x22\x89\xb9\x00\xc2\xe8\x83\x10\x5f\x96\x28\xe5\xe2\x2b\x16\xa5\x59\xe7\x1e\x44\xe9\x83\x28\xbd\x5f\xe0\x27\xf1\xf9\x02\x3f\x29\x5e\x46\x55\xc6\xd7\x8a\xb1\x1d\xfc\xf9\xf1\x95\x0b\xd3\xb5\xba\xb1\x91\x9f\xb2\xb3\x38\x0f\xa7\xc8\xf2\x3b\x4f\x08\x4a\x70\x3c\x66\x13\x94\x62\x21\xcc\xc0\xc1\xf7\xb2\xe1\x1f\x50\x75\x0e\x5e\xd0\xfb\x5f\x7a\xd1\xa0\x46\x7c\xa6\xcf\x87\xf0\x58\x54\x8f\xa3\x8a\x3a\x19\xcc\xf2\xf1\xf8\x62\x97\x3e\xec\x6b\xe6\xd7\xec\x81\x5f\x3f\xf0\xeb\xbf\x62\xe9\xc3\x66\x80\x39\x0b\x92\x00\x52\x9a\xa9\x0b\x86\x92\x64\xc1\x95\x51\x9a\x3d\x9c\x26\x18\x84\x38\x2a\xf4\x66\xad\x2e\xa7\x38\xd4\x1d\x0c\x73\x26\x28\x8b\x4d\xa1\x0e\xe4\xc1\x66\x59\xb4\x51\x87\x25\x80\xa0\xc4\xa8\x87\xa9\x4b\x81\x12\xb8\xb9\xdf\x5a\xcb\xb4\x8c\x13\x61\xee\x18\x9a\x77\x71\xbd\xa6\x62\x44\xfd\x52\x7a\x94\x79\x92\x2f\x4c\xc3\x4c\xbf\x66\x8e\x95\x3e\x70\xac\x07\x8e\xf5\x09\x1a\x66\xfa\xf9\x14\x9e\x50\xfc\x35\x97\x76\x98\x3a\x2b\xe2\x98\x3b\x4b\xb2\x02\x24\x9b\xe0\x0c\xc5\x38\x11\x39\x83\xa6\xfe\x47\x63\xe8\xa9\x5b\x00\x72\x06\xab\xe6\xd4\x27\x2a\xa0\x6c\x06\x0e\x43\xc5\xdb\x13\x08\xef\x0a\x75\x34\x81\x07\x41\x1c\x09\x16\xa5\xb4\x41\x37\x1f\x55\x4d\xef\x67\x05\x33\x34\xd7\xe0\xf3\x0d\xe4\x6c\x4b\x73\xad\xb5\x1e\x7d\xf9\x9a\x6b\xf0\x35\xcb\x81\xe0\x41\x0e\x3c\xc8\x81\x7b\x68\xae\xe2\x77\x68\xae\x87\x85\xea\xfa\x27\x69\xac\xa5\x66\x2a\xd5\x62\xad\x9c\xa2\x2d\xed\x55\x87\xbd\xfb\x74\x8d\x75\x2a\xaa\x97\xa8\x08\x20\x90\xa9\x9d\x2e\xbe\x30\xed\x74\xf5\x35\x73\xa5\xd5\x03\x57\x7a\xe0\x4a\x9f\xa0\x9d\xae\x3e\x9f\x52\xb3\x14\xa0\x54\x4e\x0b\x95\x12\x7d\x4c\x4d\x85\xf9\x05\xce\xb9\x7a\xfa\xc7\x2c\x9e\x8b\xdf\x65\xf1\xfc\xa4\x3b\x7e\x1b\x74\xc3\x9d\x29\x10\xc8\xba\x62\x89\xe4\x13\xc6\x2e\x64\x39\x65\x9c\xe9\x06\x42\x54\x01\x7c\xc5\xe6\x8b\x7d\xd0\xc1\x0e\xf4\x33\x3a\xdb\x07\x7c\xb5\x03\xfc\x98\x46\x82\xf2\x3d\xe0\xc4\x00\x27\x49\x40\xa3\xa9\xe4\x9c\x75\xb0\xac\x02\xab\x8b\x8e\xeb\x8b\x8d\x2b\xa0\x41\x9c\x46\xf5\xad\x4d\x4d\x28\x1e\x27\x49\x2d\xd4\xd2\x84\x4a\x97\x49\xba\xac\x05\xbb\x36\xc0\xa6\xf4\x83\x5d\xb9\xad\x80\x5e\x33\xa2\x36\x07\xeb\x20\x6f\x0c\x48\xfa\x5e\xd0\x3d\x1d\x79\x61\x80\xcd\xf6\x35\xf0\x47\x03\xe8\xd1\x74\xba\x67\x48\xde\x19\x50\x73\x1e\xa7\xab\x5a\xa8\xef\xb6\xa1\xea\x51\xf7\xdc\x00\x63\xd1\x94\xbe\xaf\x85\xfa\xf7\x36\x14\xad\x2f\xed\x27\x03\x8e\xc7\x61\xb8\xa7\x6d\xcf\x76\xc0\xea\x8b\x7b\x52\x21\xa7\x7a\xfc\xff\xb7\x01\xb3\x60\x89\x88\xe7\x9c\xd4\x63\xd7\x84\x2c\xae\x2c\x7a\xc2\x29\x9d\x2e\x49\xf4\x1d\x23\x41\x1c\xb1\xfa\x76\xfc\xb3\x2e\xe7\xeb\x20\x16\xf5\x63\xfd\x3f\xb5\xe0\x22\xe5\xf3\x3d\x68\xfb\xc5\xc8\xb0\x24\xf5\x43\x40\x69\x65\xca\x2c\xc9\xfb\xa7\x7b\x87\x2b\xa2\x26\x24\x25\xf5\x98\x23\x55\xa8\x29\xdb\x03\x97\x54\xe1\xf8\x9c\xd6\x82\x4d\x2b\x60\x7b\x46\x6b\xb1\xd5\x0b\x16\xed\xef\xc5\xb5\x59\x60\xc4\x82\xfa\x6a\xbf\x37\x80\x56\x84\xf1\x7a\x0c\xcf\xcd\xb2\x56\x94\x2f\x53\x51\x5f\xdc\x8d\x09\xf8\x5b\x4a\x22\xc1\xc2\x7a\xc8\xff\xaa\xf4\x24\x07\x7d\x1d\x73\x41\xa7\x7b\x32\x5c\x55\x32\xb0\xe0\x5d\x42\xc3\x7d\x22\xe0\xa2\x8a\x29\x4e\xa2\x3d\x78\x7f\x5d\x05\x0c\x29\x49\xea\x4b\x7c\x44\xb7\xc1\xf6\xe3\xfe\x47\x5a\x61\x1f\x94\x48\x15\xb2\x16\xf2\x71\x1d\xe4\xfe\x82\xbf\x33\xc1\x93\x60\x0f\xc9\x3d\xaf\x40\x2d\xd2\xd9\x6c\xcf\x20\x3c\xab\x01\xac\xe7\x9a\x4f\x2a\x90\x7b\x18\xf0\xb7\x26\x90\x90\x03\x54\x0b\xf6\x4d\x05\xe3\x12\xee\x69\x14\x70\xba\xdc\xc7\xfc\xbf\xa9\x8c\xbc\x84\x7f\x2d\x68\x3d\x6b\xfc\xa6\x22\xcb\x05\x27\x51\xb2\x8a\x93\xfa\xce\xff\x60\xb6\xf6\x9a\x70\x26\xd5\xdb\x5a\xc8\x4b\x03\xf0\xdf\xac\xbe\xe6\xdf\xcc\xd2\xe8\x35\xe5\xb7\xf5\x0d\xac\xe0\x31\x5e\xd6\x57\xf8\x8b\x09\x35\x63\xe1\x3e\xf5\xe2\xbf\x2b\x4c\x83\xd4\xb7\xec\xbf\x4c\x20\xed\x51\x55\xcf\xa6\xab\x70\xca\x5f\xa8\x9e\x41\x57\xfb\xc0\xeb\x47\x8d\x0a\x53\x09\x60\xb3\x19\xe5\x74\x1f\x82\xa3\x2a\x6c\xf2\x6b\xcc\xf6\xd0\x42\x2c\x2a\xb2\x54\xc8\x46\x06\x7b\xb5\x8b\x50\x54\xa8\xf6\x2a\xa1\xf5\xa5\x4e\xab\x70\x2b\x59\x6a\x3d\xe4\xcc\x84\x4c\xa3\x7d\x15\x2f\x85\x8a\x8e\x69\xae\x9f\x11\x87\x77\x56\x9a\xd0\x86\x5c\x3c\x07\xc2\x2a\x4f\xa0\x99\x96\xc5\x7c\xcd\x1c\x28\x56\x00\x68\xb9\x78\x2e\xd7\x08\x51\x83\x45\x0d\xa1\xd5\x75\x61\x5c\xfc\xcc\x0b\xd5\xb8\x1e\xc9\xb2\xe5\xc2\x21\x3b\xf7\xf0\x19\x95\x60\x63\xb5\x8e\x39\xe2\xe6\x62\x1b\xd3\xcd\x47\x7a\x94\xeb\x90\xf5\x23\x67\x6a\x23\xf5\x12\xd5\x54\x95\xeb\x65\xe9\x06\xe6\xcb\x68\x0e\x3c\x33\xd8\x28\xab\xbf\x6c\xb6\xbc\x65\x90\xda\xfc\xc8\x3c\x05\x1e\x9b\x48\x17\x2d\x5a\x20\x71\x24\x8b\xe2\xe7\xde\xd0\x5d\xaf\xf9\x59\xcb\x1b\xba\x23\xde\xea\xf4\x5d\x7d\x1b\x21\x8f\xd3\x68\x0a\xf8\x71\xa7\xef\x42\x9f\x43\xbf\xb8\x9c\x92\x40\xc0\x92\xe7\xe4\x39\xa0\x70\x24\x7c\xd3\x46\x43\x8c\x4d\x47\x0f\x63\x40\xb1\x4d\xe1\xc8\x58\xd8\x9a\x97\x21\xf2\x96\x18\x6d\xe3\x38\xef\x01\x2e\xee\x43\xa4\x88\xc3\xfc\x3a\x64\xf9\x2e\xc1\x5a\x14\x71\xec\x1d\xf3\x72\x88\xa2\xea\x15\x8b\x2a\xa3\x1d\x1d\x49\xe0\xcd\x46\xe6\x41\xb4\xae\x03\x02\x8e\xb8\x2f\xa0\x81\xab\xe4\xc3\xb8\xfa\x10\x16\xee\x47\x31\xf5\xa3\xcd\x4c\xa6\xf0\x51\x9a\xaa\xa7\x3a\x93\xa6\x3e\xce\xdc\xeb\x57\x33\xaf\x4d\x66\xfc\xd1\xe5\x49\x3d\x6d\xbf\x37\x29\xb7\x5b\x21\x5c\x78\xa7\x8d\x1f\xd8\x19\x20\x82\xbd\xe3\x18\x25\xd8\x7a\xfb\x36\x39\x02\x63\xbb\x35\x19\xbd\x7d\x3b\xb5\xa1\x7c\xb5\x50\xba\x95\x7e\xf4\xf6\xad\xa3\xbe\x83\x91\x3f\xa6\x17\x93\x12\x7e\x94\xe5\x08\x3f\x21\xc7\xdf\x74\x96\x00\x1f\xff\xeb\x3f\xc0\xd8\x6d\x9d\x90\xd6\x6c\x72\xd7\x41\xc3\x0d\xfc\xe6\x18\xcd\x94\xdd\xe0\x15\x9d\x5f\xbc\x5f\x01\xeb\x5f\x7c\x7e\xf5\xf6\x2d\xb0\xec\x71\x82\x12\x94\x4c\x6c\xeb\xed\x5b\xf8\x8d\x05\xd1\x74\x0f\x58\x88\x42\x14\x96\x60\x8b\x1d\x30\x62\x14\x87\xd2\x12\x72\xb5\x0f\x52\x95\x68\x42\x2e\xab\x90\x8b\x24\xd4\x80\x69\xb5\xea\xeb\x1d\x30\x62\xc0\x99\x05\xde\xe2\x3b\x12\xb2\x80\x5e\x85\x29\xf5\xbd\xde\xe0\xa4\xdd\x19\x76\x90\x54\x54\x7f\x4b\xe9\xcd\x82\x09\xea\x7b\xfd\x6e\xb7\xdb\x19\xf4\x10\xf9\x2d\x25\x7e\xbf\xd7\xeb\xe8\xc7\x25\xe1\x2c\xa2\xfe\xb0\x33\x1c\xf6\xfa\x5d\x44\xfe\x9d\x72\x5d\x44\xd7\x1b\xf4\xd0\x15\x65\x73\x99\xd7\xf3\x4e\xda\x7d\x17\x5d\xb1\xe4\x37\x59\x43\x7f\x30\x70\xdb\xdd\x2e\xba\x0a\x49\xf0\xce\x77\xe5\x6f\x14\x2c\xe8\x94\x84\xcb\x38\x9a\xaa\xef\x6d\xb7\xdb\x43\xaa\x3d\xed\x9e\x7e\xb8\x66\x71\x48\x85\x7f\xe2\xf6\x7a\x6d\xb7\x8d\xae\x78\x7c\x13\xf9\x9e\x3b\x6c\x77\xdb\x9d\x2e\xba\x4a\x79\x78\x7b\x13\xc7\x53\xdf\xeb\xf6\x4e\xfa\xed\x8e\x87\x02\x32\xa5\x42\x15\xd1\x6f\xf7\xfb\xbd\xf6\x10\x05\x0b\xc2\x05\xa7\x69\xa2\x1b\xdc\xe9\xb5\x51\xb0\x88\x83\x38\x24\xb2\x87\x9d\xc1\xf0\xa4\x3b\x70\x51\x10\x73\x12\xca\x46\x74\xbb\xed\x41\x5b\xbe\x46\xb3\x30\xbe\xa1\x5c\x97\xd5\x3b\xf1\x4e\x86\x9e\x4a\x4e\x58\xf8\x4e\xb5\xb6\xd7\x19\x0e\x51\xc0\xd9\x32\x89\x23\xdf\xeb\x76\xdb\x1d\xcf\x75\x51\x70\x4b\xa2\x0c\x55\x53\xc2\xdf\x69\xec\x76\x4e\xd4\x8b\xfa\xd6\xe9\x0d\xda\x1d\xf5\x3a\x8f\xc3\x29\x8d\xb8\x6c\x7e\xdb\x3d\x69\x9f\x64\x50\x73\x4e\x6e\x7d\xcf\xf3\xbc\x13\xd7\x1b\x64\x29\x94\x46\x7e\xbb\xd7\x77\xdd\xfc\x7d\x0b\xe2\xdd\x82\xbc\x63\xbe\xd7\xee\x76\x3a\xed\x9e\x2e\x66\x49\xe6\x34\x12\xc4\x3f\xf1\xdc\x93\x7e\x57\xd7\x18\x87\xec\x9a\xea\xd2\x7a\xbd\x93\xc1\xc9\x89\x06\x8d\xd5\x02\x42\xf5\x7e\xd0\x6b\xbb\x59\x5a\xb0\x60\x53\xdf\x73\xdd\xae\xeb\x7a\x6d\x95\xc6\xe9\x54\x15\xd7\x73\xbb\xea\x3d\x51\x63\xe7\x7b\xbd\x8e\x3b\xec\x7a\x3a\x5f\x42\x89\xae\xe0\xa4\xeb\x9d\x9c\x78\xba\x82\x44\x22\x5b\xa1\xa2\x3b\xe8\x74\x3b\xdd\x41\x99\xaa\x7a\x2b\x31\xd7\x3d\xe9\x99\xa9\xb4\x9a\x2a\x52\xfe\x5b\x1a\xb3\x84\xfa\xbd\xf6\x49\x57\xa7\xe5\xc4\xd1\x3f\x39\xe9\x49\xdc\x51\xba\x5a\xb1\x48\x0d\x8e\xd7\x3f\x91\x95\x50\xba\x4a\xde\xdd\xea\x8a\x4f\xbc\x9e\x87\xa6\x6c\xa9\x2a\xec\x9f\xb8\xc3\x76\xbf\xa7\xdf\xa9\xf1\x1e\x4f\xe7\xd9\x98\xb7\x5d\xb7\xe3\x9d\x9c\xa0\x19\xe3\xf4\x8a\xb3\xe0\x9d\xef\x49\x04\x79\xdd\x3e\x9a\x85\x92\x5a\xf2\x39\x32\x18\xf4\x4e\xda\x2e\x9a\xc5\x9c\x26\x22\x1b\xaa\x76\xbf\x33\xec\xb6\xd1\x2c\x0d\x16\x09\x23\xaa\x45\xde\x49\xa7\x87\xe6\x84\x45\xc9\x55\xcc\x63\x49\x30\x83\x6e\xb7\xef\xa2\xf9\x22\x4e\x44\x5e\x56\xc7\xeb\xf7\x07\x1e\x92\x94\x21\x33\xf5\xfb\x83\xb6\x8b\x0c\x3a\xe9\x76\xda\x27\x9e\x4c\x92\x9d\x18\x76\xdb\x9e\x1c\x0a\x5d\x67\xa7\x3d\xe8\x0f\xf5\xf3\x2d\x0d\xc3\xf8\xc6\xf7\xbc\xae\xdb\x71\x7b\x3d\xa4\xba\x98\x43\x2f\xe2\x88\xde\x4e\xe9\x4d\x36\x61\xfb\x2e\x5a\xc4\x22\xc7\x5b\x67\x38\xe8\xba\x88\x45\x72\xbd\x2f\x47\xdb\xeb\x74\x7b\xc3\x5e\xbb\xab\x92\xe6\xb1\xc2\x62\xa7\xe3\x22\x76\x1d\xf3\x5b\xd5\xf7\x41\xdb\x75\x51\x46\x7e\xbd\xc1\x70\xd0\xef\xbb\x28\x24\xd7\x34\x9a\x52\xee\x7b\x3d\xaf\xd3\x96\x94\x91\xa7\x5c\x85\x69\xb2\x50\xf9\x3a\x9d\x7e\x0f\x85\xe4\x26\xd2\xad\x1f\x7a\x27\xee\xc9\xa0\x8f\x42\xba\x8c\xa3\x60\xc1\x66\x33\x49\x58\x12\xb7\xc3\x61\x0f\x85\x6c\xbe\xd0\xb3\xda\xf3\x3a\x27\x9d\x76\xaf\xab\x93\xb2\x59\xdb\x1b\xf4\xbd\x5e\xa7\x9f\xa5\xc9\x49\xe6\x75\x07\xdd\x5e\xef\xe4\x44\x27\x15\x08\xcc\x11\xd3\xef\x76\x87\x6d\xd9\x2c\xf5\x55\xcd\xb7\xce\x70\xd8\xee\xb4\x3b\x79\x92\xa6\xe0\x93\x61\xbb\xd7\x2f\x92\xb6\xa1\x72\xa4\xf5\x86\xdd\x7e\xd6\xc6\x7c\x46\xf4\x07\xbd\xf6\xa0\xdf\xce\x12\xf3\x29\xd1\xf6\xba\xed\xe1\x49\x56\x6d\x4e\x98\xc3\x13\xd7\xed\x74\xb3\x5a\xca\x29\x31\x18\x76\x3a\x83\x5e\xa7\x92\x4c\xb7\x93\x05\xa5\x61\x86\x96\xde\x50\x4e\x2d\x9d\x5e\x74\x73\x30\x18\x78\x43\x99\xb8\x94\x3c\xac\x3d\x74\xd5\x63\x46\x2f\x9d\xf6\x89\x1c\xca\x90\x45\x34\x52\x28\xe9\xf5\x07\x2e\xca\xd9\x46\x41\xb2\x4b\xc2\xe3\x38\x52\xbc\xb3\xef\x0e\xd1\x92\x4e\x59\xba\x34\xa4\x40\x7f\xd0\x19\x74\xda\xed\xec\x43\x36\x75\x7a\xd9\x6b\xce\x45\xda\x6d\x4f\x52\x76\x96\xba\x4a\xf9\x2a\xa4\xfe\x49\xbf\xdf\xee\x0f\x3b\x59\x62\x81\xa5\xce\xc9\x60\xe8\x9e\xe4\xb0\x25\xeb\x18\xba\xc3\xc1\xe0\xc4\xcd\xd3\x57\x9c\x45\x73\x9d\xa3\xdf\xf5\x7a\xdd\x2c\xbd\x64\x14\xdd\xc1\xa0\xdd\x71\x73\x78\xcd\x2c\x34\x4d\xbb\xdd\x81\x37\xe8\xa0\x25\x9b\x46\x25\x61\xf5\xbb\xdd\x13\xaf\x8d\x96\x2c\x12\x72\x79\xb2\x94\x12\xac\xed\x0d\x7b\x2e\x5a\xb2\x44\xdc\xf2\x38\xc9\x85\x98\xcc\x1a\x07\x01\x49\x58\x94\xa5\xb4\x4f\x50\x44\xae\xc9\xaf\x71\xc1\x13\xfa\xc3\xfe\xb0\x27\x13\x6f\x7d\xaf\x3d\x44\x71\x38\x0d\x49\x20\xbf\xf4\xbb\x9d\x5e\x4f\x26\xb0\x6b\xaa\xe6\x64\x67\xd0\xd7\x6f\x53\x4e\xae\xfc\x81\xdb\x1d\x0e\x3a\x27\xa8\x64\xc9\xbd\x8e\xe4\x2e\xfa\x5d\x35\xbf\x3f\x68\x9f\x74\xba\x5d\x94\xe3\xb6\xdb\xf1\x7a\x72\xe8\x57\x24\xa4\x06\xab\xe8\xf5\x7b\x03\xaf\xe3\xea\x64\x85\x26\xcf\x75\xdb\xbd\xe1\x50\x27\x95\x78\xf2\xbc\x5e\xfb\xe4\xa4\xdf\x57\xc9\x06\x9a\xba\x9d\xa1\xd7\x76\x3b\x68\x45\x56\xe4\x96\xdc\x2c\xd8\x4a\x4f\x5c\x77\x30\x40\x2b\x4a\x82\xc5\x2a\x9d\xcd\x54\x5f\x07\xfd\x41\x07\xad\x28\x4f\x25\xbf\xe8\x0f\x4f\x4e\x3c\x94\xcf\x8d\xbe\xe7\x76\x7a\x68\x15\xa6\x4b\x29\xa3\xdb\xdd\x7e\x67\x80\x56\xf1\xcd\x34\x63\xb2\x9e\x27\x25\xab\xe7\xa2\x8c\x24\x24\x95\x0d\x3a\x7d\xc4\xe9\x15\x0d\x02\x92\xa5\xf6\xfb\x27\x83\xe1\xd0\x43\x59\xf7\x3d\xaf\x3f\x74\x11\x8f\x93\xdb\x4c\x1f\x68\x77\x7a\x83\x9e\x77\x82\x78\x7c\x4b\xf4\x7c\xe8\xb6\x87\x7d\x29\x26\x12\x32\x9d\x86\x54\x83\x9d\x78\xed\x81\x37\x1c\xa0\x62\x8e\x76\xbd\xfe\x70\xd8\x46\x09\x89\xa6\x79\x49\x7d\xb7\xd3\x1e\xf6\xbb\xa8\x24\x46\xb7\xe7\x76\xda\x03\x99\x90\x2c\x68\xa8\x54\x84\x41\xb7\xdf\x19\xa2\x84\xd1\x28\x22\xbe\xe7\xf6\xdc\xfe\xe0\x64\x80\x12\x16\x5e\x4b\x96\xd7\xee\x77\xda\x92\x6b\x54\xe6\x77\xc7\x43\x25\x21\xf7\x4f\x06\xae\xdb\xcf\x52\xf4\x64\xef\x0c\xda\x27\xdd\x2e\x32\xe6\x79\x9e\x12\x65\x13\xb9\x77\xd2\x71\x51\x85\xe8\x7b\x5d\x77\x80\x4a\x16\xd0\xed\xb7\xdd\x93\xa1\x8b\x84\x64\x7f\x1d\x39\x59\xe4\x0b\x25\xa1\xdf\x69\x0f\x4f\xfa\x48\x2c\x58\x22\x42\xea\x7b\xdd\xb6\xdb\x1d\x0e\x87\x48\xc4\x4b\x22\x62\xc5\xf5\x07\xee\x49\x0f\x19\x33\xa7\xdd\xf3\x86\xbd\x3e\xca\x04\xac\xd7\xeb\x77\x3c\x77\xd8\x47\x37\x0b\x4a\x84\xd2\xec\x3a\xb2\x47\xa5\x00\x1c\xb4\xbd\x9e\x7e\x4d\x96\xf1\xbb\x5c\xf9\x1b\xf6\x90\xc1\x89\xfa\x27\x7d\x37\x7b\xcf\xc9\xd1\xeb\xf6\xdc\x41\xd7\x88\x56\x73\x55\x2e\x29\x64\x73\x1d\x3e\xbf\x02\xd0\x99\xc5\x7c\x49\xc4\x0f\xf4\xbd\x79\xbe\x6b\xfe\x01\xd0\x57\xf2\xd9\xb8\x1f\xc4\x88\xa9\x77\x50\x2c\x37\x01\xb5\x2d\x0b\x3a\x82\xb3\x25\x80\x8e\x88\x9f\x49\x6d\xef\x31\x49\x28\x80\x08\x08\x1c\x38\xf4\x3d\x0d\x00\x85\x70\x04\x38\x16\x63\x6f\x92\xef\x31\x0a\xbc\x22\x3c\xa1\x4f\x23\x01\x64\x32\xf2\xfa\x10\xf5\xd5\xa6\xfc\x0d\x10\xd0\xef\xa8\x47\xa9\x85\xbf\x07\xe2\xfc\x7c\xd8\xf4\x7a\x6b\x71\x7e\xde\x6d\xb6\xbb\x2e\x52\x0f\x5e\x6f\xdd\xee\xba\x4d\x81\x80\xd7\x6b\x0a\x78\x76\xd6\x5d\xcb\x07\xe4\x41\x7f\xa8\x32\x5f\xc8\x8c\xed\x6e\x53\x6a\xc1\xe2\xfc\xdc\xeb\xe7\x4f\x43\xf5\x00\xda\x3d\x99\xef\xb8\xdd\xeb\x41\xbf\x5b\xe6\xf0\xda\x59\x5d\xc3\xbc\xae\x0f\x56\x5e\xad\x3d\x2b\x2e\x4a\xc3\x10\xfa\x40\xe0\x59\xd9\xff\xac\x2f\xb2\xaf\x62\xdc\x96\x7f\x3a\x13\xd9\x58\x20\xf0\x74\x1b\xaa\xdd\xeb\x1d\x49\xc8\x63\xa9\x0b\xeb\x97\xb6\xf9\xd2\xd1\x2f\x3a\xf7\xa2\xcc\x7d\xb1\x5d\xbe\x18\x77\x27\x0a\x68\x65\x02\xdd\xb3\xf8\x22\xf3\xb2\xcc\xfc\x63\x59\x43\x06\x53\x69\xcb\xf5\x3d\x20\x75\xb1\xb7\xce\x82\x24\x2f\x6e\xa2\x97\x3c\x5e\x51\x2e\x6e\x01\x85\xa3\x1b\x70\x3b\xa6\x13\xe8\x67\x46\x59\xc2\x69\xa4\x1c\x35\x68\x86\x96\xe7\xe4\x39\xca\xff\xbb\x1a\xcb\x25\x7d\xde\x18\x26\x14\x0d\x4e\x8b\x41\xa7\xf9\xa0\xcb\x31\xa7\xc8\x33\xc8\xfa\x42\xdb\x1c\x8c\xc3\xa9\xd1\x19\x76\x95\x3b\x86\xc0\x1c\x3f\x27\xcf\x21\xca\x8a\xcb\xe0\xca\xbc\xaf\xf7\xb9\x8a\xb3\xf5\x1a\x50\x2c\x67\x0c\x44\x79\xe3\x01\xc5\x54\xcf\x2f\xe8\x70\x44\x9d\x39\xa2\xce\x15\xa2\x4e\xbc\x22\x01\x13\xb7\x50\x79\x96\xbf\x2f\x0b\x7f\xb1\xd3\x30\x0f\xe3\x9d\xbd\xfa\x91\x6c\x83\x5f\x69\xa0\x72\x24\x88\x46\x9e\x6f\x36\xb5\x6c\xfe\x9d\x9e\xe8\xd8\xa6\x8a\x99\x39\x73\x6c\x0b\xfd\x74\x85\x6d\xae\x9f\xb2\x36\x61\xdb\xbc\xa2\xa3\x60\x15\xd6\x7f\x58\xf6\x3b\xa0\x8b\x81\xf9\xd3\xbc\x78\xba\x32\xaa\x7d\x53\x38\x5b\x98\xe5\x66\xec\x43\xc5\xd6\x04\x14\x17\xd6\x20\xcf\x57\x46\xa8\x25\x79\x0f\x5c\xa4\x1f\x59\x04\x3c\x44\x21\x84\x23\x4b\xe2\xce\xf2\xe5\x0f\x01\x16\xb4\xeb\x40\xe5\x10\x1b\x26\xb8\xac\x89\xeb\xb5\x0b\xa1\x6d\xa1\x86\x75\xef\x4c\xf3\xdf\x93\xe9\x2a\xcb\xa4\xfa\x45\x47\x16\xb4\x7c\x95\x9f\xda\x16\xb4\x0c\xa4\xbc\x2b\xc9\x46\x52\xc5\x3d\x8a\xa7\xba\x64\x78\xe6\xf5\x47\x96\x6b\xf9\x96\x05\xed\xd2\x53\x0a\x78\x7d\xa3\xf4\x1f\x6b\x09\x7a\x54\x90\xb3\xcf\xcf\xb0\xbb\x5e\xf3\x73\xec\xa9\x44\x99\x24\x72\x92\x2f\xc8\xfd\xd7\x1a\x72\x7f\x99\xb9\x76\x55\x48\xfd\x57\x68\xcc\xb9\x5f\x01\x75\x16\x88\x3a\x09\xa2\x4e\x68\xd0\xf6\xc1\x76\x2e\x73\x82\x1c\xd2\x4a\x11\x3b\xb0\x45\x0d\xf4\x40\xbb\x55\x57\x66\x92\x64\xb8\x88\x63\xea\xcc\xd5\x53\x84\xa9\x73\xa5\x9e\x62\x5c\x60\x53\x77\x04\x91\x12\xd5\x59\x4a\x22\x3b\x8c\x52\x4c\x5a\x31\x0a\x31\x20\x76\x0c\x8f\xdb\xb9\x70\x4b\x47\x20\xc1\x42\xce\xb9\x11\xe0\xad\x08\x1e\xa7\x76\xff\x08\xf0\xb3\x08\xfa\x5c\xa7\x46\x2d\x21\x53\xdb\x3e\x10\x2d\x2e\x9f\xba\x28\x3d\xc6\xe1\x99\xd3\x1b\x11\x3b\xf6\xdb\x2d\x59\x6e\x72\x84\xfb\x2e\xf4\x53\x1c\x9e\xbb\xcd\x66\x78\xe6\x8d\x5c\x3f\xc9\x70\x9c\xa0\x14\x99\x78\x32\x82\x99\x6f\xcd\xd7\x45\x31\x5f\x93\x62\xbe\x86\x1f\x9c\xaf\x8f\xb7\x4c\xc3\x92\xb5\x03\x7a\xd6\x77\x47\xc2\x06\xbc\x25\xe0\x11\x3d\xee\xbb\x3e\x3d\x53\xd6\x6b\x9f\x9e\xb5\xbb\xe5\x27\xd0\xee\xba\x2d\x0a\x25\x80\x80\x9b\x8a\xe9\x16\x5d\xa2\xbb\x20\x5e\xdd\x56\x1c\xa4\x72\x1b\xa7\xde\x98\x20\x49\xc2\xe6\x11\x90\x7d\x54\xcd\x33\x36\x08\x54\x7b\x11\x85\x1b\x34\x65\xc9\x2a\x24\xb7\xe4\x2a\xa4\x35\x1e\x6d\x86\x36\x62\x00\x02\xb8\x41\x0b\xfa\xde\xbf\x42\x85\x36\x53\x3e\x27\x61\x4d\x39\x2f\xd5\xd4\x2c\xb4\x9f\x24\x94\x45\x14\xfa\x8d\x3f\x47\xf9\x24\xf2\xe7\x9b\xdc\x23\x53\x77\xf4\x3d\x7a\x51\xbe\x5f\xc9\x8e\xdf\x5d\x71\xb9\xd0\xa1\xbc\xae\xeb\x14\x67\xae\x93\x23\xe2\x17\xa6\x74\x82\x68\x2e\x3d\x74\x87\x8e\x72\xa6\x9b\x3f\x5c\xe5\x0f\x05\x09\x28\xa3\xcc\xc7\xea\x88\xcb\x3a\xe2\xdf\x53\x07\x9f\x5f\xed\x41\xfa\x47\x06\xa6\xe5\xf4\xce\x34\x2f\xe7\xcd\xa6\xfe\x3d\x6b\xf7\x7a\x4e\xaf\xd9\x2c\x3f\xcd\xb3\x4f\xf3\xdd\x4f\x57\xd9\xa7\xab\xfc\x93\x7b\x56\x11\x0d\xd9\xe7\xec\xed\x0c\x7b\x7a\xc0\x1f\x19\x03\xfe\xc8\x18\xbf\x37\xe5\xf8\xbd\xd9\xc0\xea\x00\xfe\x6a\xd8\xd8\xef\x25\x4a\x5f\xe6\xa2\xf4\xd7\x3a\x51\x0a\xff\x3c\x6a\xf8\x55\x8f\xd4\x22\x9b\xd0\xd9\x6c\xfe\xf3\x28\xe1\xbe\xe5\x6f\x51\x81\x21\xa8\x17\x7f\xeb\xf4\x5d\xbb\xd3\x77\x8f\xb2\xa2\xce\x5c\x88\x44\x21\xa9\xd7\xeb\x6c\x1b\x48\x95\x0f\x47\xae\x9f\xd5\xc4\x75\xf6\x10\x45\x98\xdb\x80\x4b\x4e\xc8\x7d\xaf\xc5\xe1\x91\x40\x0c\xb7\x8f\x78\xab\xb8\x68\x5c\x93\xec\x63\x40\xcf\xb1\xe4\x3c\xb4\xd5\xee\xba\x3e\xb5\xbd\xb6\x8b\x98\xe4\xcd\x92\x7f\xe5\x0f\x67\x5e\xdb\x1d\x51\x5b\x41\xb4\x0a\x88\x6d\x6c\x7d\x88\x6e\x41\x4e\x67\x49\x46\x61\xc9\x19\xf6\xb6\xba\x01\x4b\x6a\x0c\x33\xa8\xf0\x0c\x7b\xf7\xa1\xd1\x5a\x16\xf4\x67\x29\x3e\x8b\x24\x94\x8a\xcf\x22\x09\x95\xe2\x93\x8d\x88\xd4\x08\xb4\x7e\xe2\xb9\xf9\x30\x25\x3a\xf1\x6f\xd5\xd4\x30\x4b\xb5\xf6\x69\x26\x1f\xdf\x87\xbe\xf7\x9e\x6c\xfd\x0e\x9b\xb1\x27\xab\x7a\x97\xfc\xc6\x05\xe8\xb9\x10\x31\xe3\xdd\x73\x61\x2e\xb4\xd5\xbb\xb9\x75\x4b\xf2\x56\x69\x57\x7d\x20\xa4\x70\x32\x70\xc6\xa5\x2c\x57\xef\xb3\x30\x8e\xb9\x8e\x62\x1e\xc6\x73\x40\x32\xb0\x67\xcf\x65\xf1\x29\x26\xc7\xc5\x74\xf1\x5c\x94\x14\xbe\xbf\xc9\x39\x76\x47\x20\x3d\x97\xb3\xdd\xf5\xd3\x73\xcc\x46\x3d\xf9\x13\x8f\xda\xbe\x07\x8f\xaa\x99\xfc\x96\xf9\xde\x4a\xe0\xf1\xde\x9c\x5b\x1b\xa4\x65\x17\x54\x09\xe4\x2a\xf9\x40\x57\xb2\xf2\x3f\xda\x2d\xdd\xaf\xa4\xd0\x5b\x64\x53\x92\x23\x9c\xb7\x26\x39\xc2\xba\x41\xcd\x26\x48\x8e\x70\x1b\x22\x71\x46\x47\xad\xc4\x4f\x36\x75\x3b\xfd\x45\xcc\x1c\x94\xa0\x34\x0b\x90\xc3\xa5\xa6\xa1\x37\xa5\x31\x06\x02\xdb\x02\x36\x9b\xfc\xdc\xcd\x43\xfd\xd2\x89\x84\x02\x11\x16\x67\x14\x36\x9b\x80\x61\x8a\x28\x16\x92\x63\x40\xe4\x4a\x62\x4f\x70\x3e\x84\x70\xbd\x3e\x64\xc9\x13\x16\x31\x75\x66\xac\x8c\x16\xcc\x66\x20\x39\x77\xd5\x89\x8b\x4c\x29\x0e\x28\x0b\x01\x3d\x4e\x8a\x7d\x6c\x8d\x05\x21\x53\x62\x33\x1e\xb0\x01\x2e\x5a\xd4\xf6\x20\x3c\xb5\xed\xf4\x8c\x9d\xc2\x78\x9c\x4e\x30\xa0\x76\x0a\x8f\x92\x03\x1a\x26\xb4\xa1\x02\xf3\xe3\x56\x82\x2a\x95\x1c\xed\x54\x72\xf4\x7b\x2a\x29\x47\x21\x6a\x36\xe3\x32\xa2\x0e\x8a\xff\xd0\x2e\x77\xf2\xd1\xbd\xe3\xb4\xe2\xf5\x30\x94\x33\x8b\x67\x33\x4a\xdf\xbd\x4a\xe4\xfb\x89\x31\xa5\x12\x23\xda\x52\x22\xb9\xd1\x93\x30\x26\xa2\xdf\x35\xce\x44\x64\x02\x8f\x48\x81\x47\xe5\xd0\xc1\xe2\xc0\x82\x1c\x6e\x45\x07\x6a\x31\x91\x9c\xb5\x61\x45\x05\xd4\x97\xcb\x50\xa5\xf8\x8b\x73\xec\x6d\x7d\x8d\xb2\xaf\xea\x64\x0d\x4a\x31\x48\x5a\x9e\x14\x11\xa1\x39\x02\x29\x44\x01\x36\x33\x64\xcf\xb1\x0e\x1f\x1d\x42\x27\x49\xaf\xd4\x51\x02\xe0\xa2\x50\x8e\x47\x8e\xfb\xc0\x06\x95\x66\x94\x80\x0a\xac\x15\xc0\x23\x90\xb6\x42\xd3\x7d\x21\x35\xdd\x17\x7e\xe7\x7d\x04\x44\x47\x3a\x8a\x4a\x97\xfd\x2d\x34\x45\x05\x9a\x6c\x0e\xe8\xd8\x9d\x20\x17\xed\xe0\x48\x7d\x8a\x5a\xde\x04\x45\x2d\x29\x01\xf2\x20\x56\x18\x44\x1a\x49\xb1\x89\x24\x26\xb9\x85\xca\x12\x4f\x90\x52\x00\xd2\xec\xd5\xf6\x26\x28\xb6\x55\x09\x39\x15\xd9\x20\x6d\x25\xf0\x08\xb0\x56\x0c\x37\x7f\xc8\x51\xe7\x7e\x04\xf9\x61\x47\x9d\xd0\x24\x59\x37\xa3\xd8\x81\xa6\x58\xef\x44\x52\xac\x39\x88\x92\x02\x50\x82\x89\xa3\xb4\x2e\xc9\xf1\x9c\x90\xce\x24\xc9\x98\x50\x92\x36\x9c\x40\xf9\xda\x1f\x08\x67\x8a\x93\xdf\xe3\x5f\xf5\x05\x9c\x91\x62\x5f\xf1\x11\x29\xf6\xe7\x9c\x90\x8a\xf7\x9c\x90\x8a\xff\xca\x13\x52\xf1\xff\x05\x27\xa4\x08\x52\xc7\x95\xd2\xbf\xe0\x84\x54\xb2\xf7\x84\x54\x2a\xab\x24\xb5\x27\xa4\x92\xfb\x9e\x90\x4a\xb3\x13\x52\xa4\x72\x42\x8a\x7d\xbe\x78\x45\x5b\x3c\x60\xfb\xa6\x07\x26\xf5\x81\xba\x48\x28\xb5\xc7\xec\xf3\x43\xf6\x07\xb2\xe1\x87\x98\xc8\x69\x77\x4e\xd6\xeb\xa2\x54\xde\x6c\x92\x73\x4c\xd4\x25\x0c\xf8\xe3\x61\x21\xcb\x1b\x20\xb4\x5e\x86\xc2\x6a\x63\xc2\xac\x31\x09\x0e\x77\x1a\x13\xe4\x11\x0b\xb3\xc6\x80\x00\x0b\x10\x20\xdb\x4e\xf3\x5b\x20\xce\x83\x6a\xcb\x82\x73\x1c\xe8\x96\x05\x66\xcb\xc2\x6a\xcb\xc2\xad\xdb\x21\x3e\xc8\xef\xe3\xad\x65\xc6\x16\x2b\xa6\x0e\x7d\xbf\x8a\xb9\x48\xf0\x0e\x19\x6a\x1e\x54\xf2\x3f\xc5\xee\x4a\xde\x2d\x24\x03\x28\xde\x78\xc5\x57\x72\xab\x2c\x29\x9b\x15\xd3\x2c\x04\x37\xda\x16\xf6\x2d\x0f\x4a\xc9\xcc\x76\x21\xdd\x5d\xd8\x36\x3c\xe0\x0e\x59\xad\xc2\x5b\x20\x10\x83\x28\x6a\x36\xa3\x12\x23\x77\x51\x1c\xaf\x7c\x81\xa2\x98\xf0\x79\x52\xb7\x8e\xaf\x71\x89\x96\xd9\x11\x49\x6e\xa3\xe0\x52\x65\xe7\x8a\xf2\x91\x80\x3a\x71\xc1\xe3\x88\xfd\x9b\xfa\x1c\xb1\xe4\x32\xcf\x5e\x6b\x22\x68\x36\xad\xb1\xe6\x20\x8d\x27\xd9\xe7\x89\xe4\xda\x77\x9b\x1d\x01\xb2\x41\x41\xca\xf9\xed\x96\xbb\xe9\x1e\x84\xb5\x0b\x76\xb0\xdb\xfa\x12\x19\x91\x14\x30\x01\x11\x60\x3b\x3f\x84\xb2\x83\x2c\xba\x8e\xdf\x99\x2c\xa4\xea\xc6\x5a\x14\xc3\xa5\xa2\x02\xb6\x96\xa7\x5b\x94\x53\x5d\xc5\x7c\x08\xb7\x52\xe9\x41\x15\x12\xac\xa1\x3a\xf3\xc2\x90\x1b\x7a\xb5\x22\xc1\xbb\x97\x71\x78\x3b\x63\x61\xb8\x5e\x03\xea\x4c\xe9\x8a\xd3\x80\x88\xca\x05\x22\x1b\x44\x9d\x15\x11\x8b\x04\x8f\x27\x88\x3a\xc1\x82\x85\x53\x4e\x23\x95\x21\x7f\xc1\xe3\x49\x71\xe8\x5b\x2b\x17\xe5\xe6\x17\xb2\xc2\x98\x4c\xe9\xd4\x42\x77\x34\x4a\x97\x5a\x16\xf8\x87\x2e\x9a\x53\x51\x23\xce\xa8\x13\x6e\x36\x1f\x28\x8c\xdd\xbf\x20\x26\x0b\xda\xe9\x29\xf6\x20\xfa\x98\x2f\xf7\x29\x30\xe9\x05\x45\xb5\xd8\x84\x77\xc5\xcc\xa4\xc6\xc1\xa3\x5c\x9b\xe6\x86\x66\x2d\x8c\xe7\x68\x53\xf1\x7e\xcd\x94\x9a\x52\x29\x2b\x82\x88\xde\xb0\x68\x1a\xdf\x98\x4c\xfc\x43\xd0\xab\x05\x89\x44\xbc\xcc\xe7\xe7\x9c\x8a\xcb\x20\x8e\x04\x61\x91\x69\x67\x2b\xbd\x8b\x01\x1c\xe9\x0a\xfc\x18\xc0\x51\x96\xdb\xa7\x00\x8e\x44\xae\xc0\xc8\x79\x18\xc5\x53\xea\x53\xf9\x74\xc5\xe3\x9b\x84\x72\x9f\xc9\x97\x1c\x3e\x96\x2f\xef\x08\x5f\x92\xdd\x3a\xf6\xf7\xc9\xc0\x86\x4e\x70\x2e\x75\x21\x97\x97\x52\x40\x42\x3d\xaf\x94\x3d\x9d\x83\xae\x0b\x11\x07\xed\x01\x44\xd6\xb1\xf5\x31\x6b\x4e\xa9\x74\xef\xcc\x1d\xbd\xc3\x42\x11\xc7\x74\xcb\x71\x1e\x45\x88\xe9\xf3\xc3\x99\x59\xb4\xd9\x04\x11\x76\x61\x66\x25\x65\x7a\xd9\x9f\xcb\xe2\xd3\xe8\xac\xbc\x8a\x2d\xb2\xd9\xf9\xf9\xb9\x77\x90\x2d\x53\x04\x3c\x73\x47\x11\x8e\x6d\xcf\x67\x38\x2e\xe3\x1d\x1b\xb6\xd9\xbc\x1c\x25\xe0\x6b\x9d\xe0\x29\x10\xb0\xc5\x37\x88\x7f\x70\xea\x9b\x39\x2a\x6b\x4f\x20\xa0\x76\x71\xa7\x10\xa2\x3b\xb9\x92\xf0\x19\xd2\x0b\x07\x93\x29\x71\x14\xa1\x18\xde\xd5\xf6\x38\x6e\x36\x41\x6c\x68\x1f\x99\xd4\xcf\x73\x95\xba\x78\x83\x9c\x47\xcd\xa6\x00\x74\x4c\xe4\xb2\x8e\xc3\xf3\x96\x7a\x91\x8f\x23\xd2\xf2\x7c\xb2\x41\x6a\x55\x53\x65\x87\x7f\x22\xbe\xcf\xdd\x11\xc3\xb1\xaf\x70\x5e\xe2\xfb\xa3\x4b\xc0\x87\xd5\xd1\xc3\xea\xe8\x61\x75\xf4\xb0\x3a\xfa\x4c\xab\xa3\xb3\x2f\x76\x75\x74\xf6\xf9\x57\x47\xbf\x67\x13\x26\x17\xec\x74\x4e\x23\x4d\xba\xaf\xd2\x48\xb0\x25\x75\x96\x84\xbf\x03\x64\xf7\x2c\xdc\x97\xc2\xd1\xe3\xaf\x98\xa3\xc7\x0f\x11\x81\x1e\x38\xfa\xfd\x39\x7a\xfc\xd9\x38\x3a\x31\x83\x1c\xc6\x88\x20\xed\x8e\x14\x14\x47\x37\x77\xf9\xc8\x0d\x27\x2b\x50\x72\x9f\x48\x2b\xa8\xa7\xa7\x30\xb9\x61\x92\x09\x46\xce\x8a\xd3\xeb\x2c\x2c\x1a\xbc\x0b\x48\x42\x1b\xae\x5f\x48\x8b\x43\x25\x2d\xf4\x57\xdc\xf6\x0e\x74\xc8\x33\x2e\x95\x66\x88\xb2\xbc\x6d\xc4\x25\xaf\x3e\x50\x79\xbb\x32\x2f\x88\xe5\xc0\xe4\x4c\xbb\xc8\xef\xe5\xf9\xd5\x05\xa4\x19\xeb\x26\x38\xd6\xbc\x5c\xe2\x8a\x60\x9b\x40\x29\x44\x8a\x3c\x27\x79\x95\x19\x32\xb2\x54\x44\x74\x75\x27\x7e\x96\xd2\xd5\x70\x3a\xd5\xf3\xf2\x64\xaf\x5f\x49\xef\xf8\x59\x9b\xbd\x0e\x8a\x1c\xe1\xe2\xc8\xd1\xb2\xa0\x0d\x11\x77\x28\x90\x69\x59\x47\xbc\xbe\x5f\xd4\xa9\xb3\xf4\x11\x97\xf2\x01\x45\xce\x8c\x45\x2c\x59\x00\xaf\x9f\xc3\x96\xcd\x70\xcd\xfa\xda\x9e\x9f\x5d\xfd\x5a\xc1\x57\x07\xa5\x25\xc2\xda\x3d\x85\xb1\xd0\x8c\xa7\x54\xf4\xbe\xd3\x2e\x31\x16\xe0\x30\xbf\x94\x04\x6c\x89\xbd\xfc\x6a\xd8\x00\xdb\x01\x94\x92\xae\x2c\xc0\xad\xc5\x5f\xc7\x45\x81\xae\xbe\xe3\xe6\x4d\x6f\xf7\xcc\xa6\x77\xda\x79\x7a\x67\x50\x49\xef\xe6\x28\xec\x74\x25\x0a\xbd\x12\x85\x1d\x88\x52\x8d\x43\x2f\xeb\x5b\x67\xb0\x85\xc3\xce\x00\xa5\x55\x1c\x76\x06\x39\xe1\xb8\xbe\xfc\xb5\x68\x34\xb5\xca\x5c\x89\x88\x57\x52\x24\x43\x14\xa9\x65\x14\x1a\x8f\xdb\xc8\xeb\x20\xaf\x8f\xbc\x93\x09\x1a\xb7\x3b\xa8\xd3\x45\x9d\x01\xea\xba\x93\x09\xdc\xec\x31\x2c\xe9\x99\x89\xe9\xe8\x39\x79\xee\xdb\x74\xb3\x41\x9f\x62\xd5\x54\x2b\x57\xed\xd4\xb7\x7a\xf3\xe4\xa7\x1f\x16\x62\xd0\xe9\x2c\x7e\xec\xdf\xcc\x22\x9e\x7e\xff\x6c\xfe\x28\xed\xff\xf4\xdb\xf5\xed\xe0\xc7\x7f\xac\x24\x8f\xd1\x80\xda\xb4\xc3\x68\x82\xef\x36\x3a\x49\x45\x89\x31\x96\xc6\xa5\x13\x57\xb3\x29\x3e\x5a\xf2\xa8\x2c\x03\x08\xa3\x78\xed\xff\x44\xc1\x56\xad\xd0\xb9\xcc\x60\x61\x56\xfd\xe5\x56\xfd\x66\xdc\xdb\x06\x8b\x1a\x14\x6e\x15\x31\x16\x92\x0f\x95\xb7\xf4\x6a\x5f\x33\xa3\x2c\x59\xf6\xfd\xed\x4d\xa6\x9f\x82\x14\x00\x5c\x4d\x9f\x12\xdb\x80\xed\x5e\xef\x7b\x37\x4b\x7c\xae\x08\x6b\x45\xc4\x42\x3e\x0e\x21\x5a\xf1\x38\xa0\x49\xe2\x8b\xcd\xa6\xba\x68\x32\xf3\x0c\xca\x3c\x83\x6e\x99\x87\x83\x41\x4f\x59\x6b\xf7\xe5\xeb\x7a\x45\xbe\x6e\xbb\x92\xaf\x2f\xf3\x01\xcd\xb4\x13\xe8\x94\xc6\x22\x20\x15\x06\xe8\x47\x4e\x69\x4c\x02\xea\xf6\xa8\xdc\x84\x04\xe0\x88\xe4\x00\x51\x3c\xa5\x40\xae\x19\xa1\x7f\xb7\x81\x5b\x26\xa1\xf6\xa0\xa2\x51\xc2\xbb\x3f\x7a\xce\xde\xb4\x1b\x6d\x2b\x92\xa5\x28\xfa\x9d\x9b\xe7\x52\x9a\xee\x64\xed\xd4\x66\xed\x98\x59\x3b\x13\x9f\x16\x96\x7b\x94\xec\x96\xd1\xad\x2d\xa3\x6b\x96\xd1\x9d\xf8\x91\x43\x4e\xc9\x39\x3f\x55\x7a\x2a\x69\xf1\xf3\xbe\xeb\x66\x57\x35\x61\xd2\xe2\xb6\x5c\x50\x08\xf5\x1b\xe0\xc2\x0b\x27\x85\x68\x86\x9d\x9e\xf6\x0e\xa2\xef\x57\xa0\x7d\x14\x1c\x77\x20\x9a\x16\x89\xca\x91\x29\x38\x9a\x1d\x81\xb4\x35\x83\xc7\x29\x3c\x02\x61\x2b\x3d\x6e\x9f\xb9\xa3\x96\xe7\x7b\x10\x2d\x4a\x9f\x64\x6e\x7a\xfa\x88\x56\x78\x34\x3b\x4e\xed\x29\x84\x68\x55\x7a\x32\x93\x0a\x8c\xad\xbc\x18\x72\xb8\x03\x6d\xa6\x5b\xa0\x15\x4a\xb4\x66\xb4\x54\x33\x0e\x5d\x63\x8e\x6e\x31\x51\xea\x42\xac\xcc\x53\x02\xa2\x44\x5b\xa0\x96\xf0\xdc\x6d\x36\x75\x2a\x81\xa7\xd7\x67\xb7\xa7\x7a\x30\x65\xd2\x35\xba\x85\xc8\xb6\xaf\x51\xab\x75\x7b\x2a\x33\x5c\xcb\x0c\x67\xee\x29\xb4\xed\x6b\x55\x9c\x4a\xbd\xd5\xc5\x9c\xc2\x56\xeb\x76\x23\x57\x48\x32\x91\xcb\xc4\x91\x2e\xf8\x16\xfa\xf2\xc1\xb6\x6f\x11\x81\xe8\xf6\x0c\x0b\xa5\x93\xdf\xda\x1e\x44\xe2\x0c\xdf\x2a\x51\x7d\xdb\xf2\xea\xa2\x3e\xc7\x15\xbf\x24\xcd\x42\xa8\x66\x26\x7c\x82\xe4\x1f\x1c\x55\x39\xf0\x07\x0c\x9e\x5e\xe6\x65\xe0\xe5\xae\x3d\x3b\x1a\x60\x04\xe0\x81\x76\xa5\xa3\xd1\x14\x57\x2d\x81\x1f\xf6\x1e\x2d\x72\x01\x8a\xee\x36\xd0\x6f\xd7\x00\x35\x9b\xcc\x31\xb6\x6d\xe4\xea\xa0\x9a\x0d\x71\xe8\x03\xa1\x63\x77\xe8\xbd\x24\xc5\x22\x73\xae\x1b\x47\x7b\x8c\xa1\xfa\x6e\xb9\xbb\x95\xd4\xc7\x79\xe4\x0b\x24\x19\xc1\x15\x09\xde\xf9\x7c\xa3\x8b\xd8\x64\xce\xf3\xd5\xa5\x19\x97\xab\x29\x4a\x82\x85\xa1\xd4\xc9\x62\xc1\x9d\x5c\x22\xf9\x14\x4d\x89\x20\xbe\xd8\xa8\x9b\xda\x4c\x5b\xab\x30\xea\x9e\xb1\x68\x7a\x29\x19\x0f\xa8\x13\x96\x65\x20\x05\xb5\x43\x22\xdb\x07\xf5\xda\x48\xc8\x52\x9d\x20\x0e\x43\x1a\x88\xda\xcc\x7a\xef\x48\xf6\x43\xd6\xbf\x31\xf8\xfb\x5d\xbe\xb2\xa8\x59\xfb\xc4\x1b\xf4\xe2\xf9\xe5\xeb\xc7\x17\xcf\x1f\xbd\x7a\xfa\xc2\xb7\x2e\x2f\x8d\xd7\xcb\x4b\x4b\x7d\x7d\x73\xf1\x32\xff\xf2\xe6\xe2\x65\x96\x7a\xf1\xcf\x8b\xc7\x3f\xbd\xb9\xc8\x3e\x64\x6f\xd9\xb7\xef\x2e\x9e\x3c\x7d\x9e\x7f\xd2\x2f\x97\x97\xd6\xa6\xba\xa3\x99\x9d\x8f\x53\xc7\x10\x8a\xa6\x6e\xaa\x91\x3c\xca\x05\x55\xb6\x98\x4a\xa8\x78\xc3\x96\x34\x4e\xe5\xa2\x47\x5f\x72\x76\x45\x69\xd4\xc8\x17\xe4\xb0\xba\xbb\xb1\x93\x3f\x08\x29\xe1\xf7\x2d\x81\x64\x6b\x71\x21\xe7\x69\x51\x71\xbe\x0e\x2f\x53\x00\x45\xae\x72\x4d\x52\x90\x6c\xbd\x3e\x14\xb0\xd9\xdc\xcd\x21\x8c\x52\xd0\x76\x76\xb9\x1c\xca\xe1\x54\x4a\x66\x2b\xe1\x7a\xa5\x94\x7f\xd2\x62\x4b\x29\x64\x55\xa0\x2a\x80\x3e\x3a\x20\x01\x36\x9b\xc3\xad\x45\x97\xc0\xe5\x05\x73\xc5\x6a\xba\x6c\xce\xa8\x7c\xf4\x59\x69\xb0\x11\x98\x6d\x54\x43\xea\x72\x9b\x68\x1d\x99\x2f\x7e\x5c\x96\xc0\x71\xbc\xd9\x80\xd2\x93\x6d\x3c\x41\x21\x3e\x94\x52\xa2\xe5\x95\xc3\x3e\x03\xf0\x2e\x6c\x36\x93\x66\x13\xa8\xaf\x05\xd3\x48\x71\x92\xef\x93\xa6\xd0\x0f\x94\x76\x5f\xf0\x8a\x29\x30\xaf\x47\x9c\x02\x35\x6e\x87\x61\xce\xaa\x08\x98\xc1\x83\x10\x1f\xba\xc6\x35\x56\x79\xe6\x53\x91\xb1\xf1\x04\xa7\xaa\x55\xa7\xb6\x1d\x9c\x89\x53\x98\x34\x9b\xc9\x38\x98\x38\x3c\x95\x9c\x4e\x55\x58\xe6\xda\x24\xca\xad\x5c\xf7\xc0\x24\x6b\xe5\x02\x8a\xb1\x89\x84\x22\xc6\xbc\x91\x96\x39\xfc\x29\xd8\x78\xbd\x3e\xe4\xb0\xd9\xac\xcb\xc3\x2b\x25\xa1\xed\x22\xd4\x88\x00\x9a\xd3\x81\xa8\x10\x0b\x37\x89\xc5\x00\xa9\x7e\xce\x4f\x99\x28\x73\x8b\xb1\xb8\x5e\x68\xb6\xa7\x98\xe9\x2c\x8d\x70\xe6\x12\xaf\xcc\x0f\x58\x18\x61\x79\xa5\xba\xa4\x57\x2c\x6f\x58\xf0\xae\x66\x8b\xac\x5c\x6d\xd7\x38\x10\xd4\x5d\x2a\x79\xee\xc1\x52\x49\xf2\x4e\xf9\xd9\x36\x80\x5a\xaf\x8b\x31\xaf\x5e\xff\xc0\x27\x07\xa9\xe6\xee\xb2\x46\xdd\x7e\x88\xbc\x43\x5c\x8c\xda\x7a\x1d\xae\xd7\x04\x4c\xe1\x06\x2d\x0c\xa3\x19\x4f\x23\x53\x2d\xcd\xbb\x9c\xed\xac\x6b\x9f\x82\xa2\xef\x70\x23\x57\x5f\x4c\x84\x14\x5b\x99\xd6\x69\xa1\xc8\xc9\x1e\xe5\x3a\x24\x72\x68\x74\x2d\x57\x1f\x91\x43\xf8\xfc\x5a\x12\x7a\xe4\x5c\x53\x9e\xb0\x38\xc2\x96\x55\xbe\x24\x1a\x28\x8e\xf0\x4a\xc2\x4e\xa7\xcf\x58\x22\x68\x44\xb9\x7a\x8f\xa3\x80\xea\x87\xd9\x4c\xfd\x72\xba\x8c\xaf\x69\x05\x46\x27\x3d\x0a\xc3\x3c\x35\x51\xc9\x74\xc9\x84\x7a\x58\x71\xba\xa2\x51\xb5\xdc\x2c\xed\x45\x14\x54\xcb\x0a\x8b\x22\x76\xe4\xc4\x78\x22\xdb\x79\xc5\x54\x88\xda\x2a\xaa\xb6\x18\x6c\xa6\xb7\xe7\xb0\xf9\x4d\x94\x49\xba\x5a\xe9\x58\x94\x0a\x7d\xc1\xcd\x74\xb7\x12\xeb\xd8\x52\xdf\x16\x53\xc6\xef\x55\x87\x82\xdc\x53\x43\xba\x24\xc9\xbb\xdd\x3a\x1a\x6e\xcd\xc2\xa9\x22\x4e\x0d\xe7\x98\x2d\x6d\xdd\x45\xa5\xbb\x6a\xcb\x3b\x8d\xce\xb1\x7b\x1a\xb5\x5a\x99\x49\x1f\xd3\x71\x34\x39\xb0\x1c\x4b\x8a\x80\x11\x75\x92\x95\x32\xbc\x46\xc8\x83\xbe\xe5\x64\xc9\xa0\x92\x8e\x24\x15\xfb\xca\x7a\x59\x4d\x6e\xb5\xe0\x46\xca\x1d\x35\x0b\x4e\x79\xab\x75\xca\x21\x75\xd2\x28\x59\xb0\x99\x00\xb2\xb4\xc2\xec\x66\xa8\x7f\x86\x09\xd9\xd1\x41\x0e\xa1\xa1\x77\xc8\x77\x20\x4c\x43\x98\x24\x4b\x15\xae\x3a\xef\x94\x8a\x5a\x2d\x80\xec\x88\xba\x72\xb6\xd9\xe4\x7a\x3a\xc9\x14\x58\x86\xc5\x13\x0e\xa7\x49\x1c\x5e\x57\xbc\x3a\x4a\xc6\x6a\x59\x88\x49\xae\x18\xef\xe8\x74\x2d\xef\x34\x3e\xc7\x2d\xaf\xd9\x3c\x64\xa7\x71\x8e\x3a\x82\xe3\x73\xec\x1a\x6b\x8c\x58\xae\x53\x82\x9b\xa9\xbe\x4b\x36\xb7\x84\x17\x5b\xfe\xa4\xfe\xea\xd3\xc2\xfc\xdc\x10\x71\x63\xa5\x0e\x84\xea\x56\x6a\x1b\xe9\x95\x56\x71\xa3\x79\x62\xc1\x03\xa2\xac\x83\xc4\xb6\x8e\x2d\x5b\x20\x86\xad\x63\x39\x3e\xc4\x09\x16\x84\x3f\x12\xc0\x85\xb9\x7a\x0d\xd8\xc8\x3a\xd6\x87\x48\x81\xc0\x1c\x44\x40\xa8\xa1\x12\xc0\x3a\xb6\x20\xaa\x51\xc4\x0e\x0f\x55\x38\xc7\x43\x06\x9d\x5f\x63\x16\x29\x38\xb8\x5e\x5b\x8e\xb5\x41\xc2\x89\x62\xbe\x24\x21\xfb\x37\xdd\x61\x93\x31\x16\x0e\x4b\x1e\x5d\x25\x71\x98\x0a\x0a\x28\x44\x24\x6b\x96\x5c\xab\x94\xd6\x7b\x40\x55\x33\xe8\x3d\x9b\x11\x57\x9b\x11\xab\xc3\xa4\x96\x63\x41\x44\x9b\x4d\x89\x06\x6a\x63\x5d\x46\x5c\xf4\x94\xca\x96\x96\x6d\xa9\xb1\xeb\xe8\x86\xd1\x12\x5f\x32\x87\xac\xe7\x9e\x0e\x69\x3b\xee\x62\x05\x75\x19\x28\x92\xbd\xac\x76\xad\x8e\x1a\xe8\x7d\xa9\x41\x36\xaf\x86\x14\x8a\x79\x04\x4d\x4c\xc9\xfe\x70\x1a\x12\xc1\x4c\x2a\x97\x6b\x8d\x3b\x73\xbe\x99\x64\xef\x9e\x8a\xb3\xd2\x17\xc3\x52\x08\x1a\x8b\xc9\xa9\xb0\x6d\x78\x5a\xce\x3a\x83\x83\xf0\x73\xec\x16\x90\x7c\x22\x27\x3a\x3c\xcd\xf1\x70\xce\x47\x63\x39\x0f\xf4\xfe\x8d\x40\xbc\x25\x6c\x0f\x6e\x28\x2e\x66\x9f\xda\xdd\x49\xaf\x12\xa1\x16\x6b\xdc\xf8\xc0\x8d\x0f\x46\xd0\xf9\x2a\xd5\xa8\x75\x1d\xe0\x95\x14\x52\x2e\x9f\x59\x1e\x7d\x22\x0f\x51\xaf\x5c\xca\x51\x8a\xdd\xd3\xf4\x8c\x9c\xa6\xb6\x0d\xd9\x0c\xb0\x71\x3a\x39\xc4\x38\x1e\xa7\x13\x78\x97\xe0\x34\xb3\x79\xea\x98\xf4\x63\x1d\xf1\x3e\xc5\xc9\x69\x7a\x96\x97\xa7\x72\x86\x9a\xaf\x98\x9c\x0c\x84\x38\xcc\xf5\xbb\x38\xeb\x75\x02\xcd\x41\x91\x63\x92\xd0\x95\x24\x57\x24\x9c\x29\x0d\xd9\x92\x09\xca\xb1\xe5\xab\x77\xc6\xe5\x3a\x0c\x7f\x94\x5e\x32\x9a\xb7\xf4\x69\x9b\x62\x87\x20\x23\x6c\xc7\x32\x54\x44\x4d\xe0\x8f\xe3\x29\x55\x44\x8e\x38\xee\x0e\x30\xc6\x02\x45\x52\x19\x64\xd9\x4d\x07\x15\xe6\xe6\x9d\xb6\x5a\xb1\xc4\x8c\x82\x04\x5b\x65\xc4\x10\x6a\xcd\x94\xc1\xbb\x08\xc7\x19\xb6\xd4\x86\x6c\x83\x95\x9b\x32\x2d\xb9\x6a\x8e\x46\x5c\xcf\x48\xc7\x92\x32\x42\x27\xc9\x84\x9c\x26\x5c\x14\x29\x9c\x5c\x91\x84\x6e\x75\xbd\x3c\x9f\x51\xb1\xb6\xee\xc7\xc5\x41\xb6\x1a\x53\x42\x2e\xeb\x9b\x42\x84\x30\xfb\x27\xa4\xc8\x6b\xb5\x44\xd1\xbf\x4a\xe7\x44\xd9\x37\x8e\x85\xed\x99\xbd\xd3\x3d\x52\x7e\x38\x87\x1e\x8a\xe4\x67\x58\xed\xac\x55\x76\x4c\x1d\xa5\x07\xe5\x61\x0c\x21\x05\x51\x46\xd0\x2d\xef\x48\xe4\x43\x86\x71\x66\x1d\x29\xbe\xba\x88\xe7\xad\x2d\xa0\x20\xe2\x12\x4b\xf4\xbd\xd8\xa1\x8f\x0f\x21\xa4\xa4\x82\x96\x57\xc5\x0b\x8a\xb1\xda\xcf\x2a\xf1\x42\x34\x5e\x48\x7e\x15\x7a\x05\x2d\x44\x49\xb1\xee\xe0\x10\xe3\x04\x6e\xe3\x81\xd8\x1e\x44\xdd\xbe\x5c\x60\x8e\xd4\x37\x31\x12\x98\xf8\x52\x67\xd5\x3e\x53\x1e\xf4\x5b\x9e\x76\xf8\x03\x31\x96\x62\x40\x13\x4b\x8e\x67\x52\xe2\xd9\x40\xa7\x58\xaf\x75\x4d\xeb\xb5\xab\x17\x18\xf2\x2d\x6e\x36\xe5\x02\x35\x92\x02\x58\x3e\x70\xdb\x33\xd1\x2e\x24\xda\xf5\x3d\x69\xd8\xba\x92\x5c\xc9\x22\x57\x56\x89\x78\xb8\x37\x92\x6a\x0e\xa3\x7c\x50\xf7\x39\xaa\x8a\x33\xb7\xb2\x27\x67\x0b\x88\xaa\x39\x3f\x6c\x94\xad\x33\x56\x19\x96\x83\xc7\x0b\x16\xd1\x84\xfa\x1c\x0c\x06\x10\x5d\x44\xf3\x90\x25\xca\x98\xdc\x81\xe8\x09\xa7\x51\xa0\x2c\xd2\x43\x88\xbe\xa7\x7c\x49\x22\xf9\x72\x02\xd1\x77\xa9\x50\x1f\x86\x2e\x44\xcf\x63\x7e\x43\xe7\x4c\x7d\x1b\x7a\x10\xbd\x64\x9c\x08\x59\xe0\xb0\x0d\xd1\x4f\xef\x38\x61\x51\xf6\xb1\x03\xd1\xcb\x38\x2b\x7f\xd8\x85\xe8\xf5\x8a\x44\xd9\x5b\x0f\xa2\x57\x69\x92\x64\x80\x7d\x09\xc8\x45\x3a\x4f\x75\xd3\x86\x03\x88\xa6\x74\x46\xd2\x50\x64\x4d\x7b\x46\xa2\x79\x4a\xe6\xf2\x63\xfb\xa3\xe1\x5d\x73\xdb\x5c\x7f\xdb\xa8\xac\xdc\xe8\x58\xae\x48\xd0\x23\x8a\x08\x8e\x8f\xf2\xc0\xb2\x00\x78\xad\xce\x11\xb5\x3b\x47\x71\x8b\xc0\x23\x61\x83\x6e\xab\x7f\x14\xdb\x9d\x23\x02\x8f\xb8\x0d\x3c\x3b\xff\xaa\x52\x22\x9b\x1c\x31\x78\xdc\xcf\xc2\xa8\x72\xd0\xab\x9e\x2e\xad\x71\x1d\xcc\x77\x46\x19\x92\x6a\x4c\x26\x38\x88\xb1\xf0\x8b\xa5\xf4\xa8\xbc\xa6\x95\x57\x35\xdd\x38\x76\x4f\xf9\x59\x7c\x6a\xdb\x1c\xb2\xf2\x38\xdb\x0c\x02\x31\xe6\x13\x88\xc8\x98\x4f\x30\x73\xf8\x7a\xed\xa2\x44\x3f\xcf\xe5\x73\xaa\x9f\xaf\xd6\x6b\xd7\xb8\x9f\x06\xa8\x43\x50\x52\x88\xa0\x14\x53\x90\x42\xc4\x8a\xe0\x0f\xd5\x25\x7b\x6e\xb7\x77\x38\x96\xdd\x43\xcc\x99\xe3\x44\x3f\x5c\xe1\x54\x3d\xd8\x96\xb5\xd9\x7c\x38\x1e\x74\xb2\x1d\x0f\x5a\xef\x5e\x99\x7e\x1a\x20\x76\xae\xa0\x52\xc2\x6b\x7c\x4b\x18\xe6\x00\xd0\x4a\xb7\xa9\x8a\x7f\x03\x44\x15\x17\x32\x51\x1f\x52\xa4\xce\x1c\x09\x67\x0e\xd5\xa6\x0e\x75\xae\xa4\x30\x90\xbd\xad\x9c\xfe\xcb\x3b\x8d\x44\x19\x63\xa4\x66\x00\x8b\xb9\xcc\x31\x03\x6a\x6a\xce\x31\xd1\x0f\x57\x38\xd1\x0f\x39\xfa\x52\xf5\xaa\x70\x52\xe0\x6e\x4e\x96\x4b\x82\x29\x62\x1b\xa9\x74\x68\x3e\x48\xaa\x96\xca\x5c\xa8\xe6\x7c\x73\xa7\x19\x85\xe9\x9a\x9f\x61\x77\xc4\xb1\xeb\xab\xd0\x2b\x80\x63\x0f\x89\x96\x07\x7d\xc3\xa2\xcf\x8f\x84\xd4\x60\xd4\x62\x85\xc8\x1f\xdb\x9b\x48\x1a\x3b\x77\x47\xfa\x4c\xa0\xdf\x96\xe4\x2e\xe9\xec\x4c\xb4\x3c\x99\x68\xb7\x65\x22\x69\xc5\x07\x85\x73\x24\xe0\xad\xe8\x58\xc0\x23\x81\x12\xb5\x3b\x96\xaa\x13\xde\x07\x1f\x6c\xf8\xfe\x66\x1b\xcd\x03\x80\xff\x0d\x7b\xf0\xcc\x1d\xd9\x36\xf7\x39\xcc\x5b\x0b\x22\x5b\xf6\xe4\x6f\x22\x6b\xb5\x7c\x48\x74\xba\x4e\x4d\xf5\x4b\x5b\xbe\xd4\xb5\x33\x73\x3e\xc8\x4e\xa2\xdf\xdf\xd7\x3f\x8b\x4d\xae\x62\xa3\x60\x5b\x8a\x7a\xc0\x76\x16\x68\xf0\xac\x3d\x92\x2c\x1a\x51\xac\xc2\x54\xb1\xb3\xce\xc8\xf3\x6d\x5e\xc6\x4a\xd7\x42\xd0\x5d\x6f\x1f\xc2\x57\x67\x7d\xf5\x01\x6d\x0e\xb7\x4e\x03\xc3\x53\xdb\x8e\xf4\xe1\xdf\x68\x82\xa9\x1d\x1d\x15\x51\xd1\x3e\x7a\xd6\x57\x57\x7a\xf7\x0b\x99\x4e\x89\xcf\x41\xbf\x0f\xd1\xc5\x35\x8d\xc4\xb7\xa9\xda\xa0\xec\x43\xf4\x34\x12\x94\xaf\x38\x15\x94\xfb\x1c\x74\xba\x10\x3d\x8e\x23\x41\xdf\x4b\x0e\xdb\xf6\x20\x7a\xc6\xae\x38\xe1\xb7\xf2\x5b\x0f\xa2\xef\x98\xaa\x2b\x4b\x18\x40\xf4\x84\x12\x91\x72\xfa\x84\x85\xf4\x35\x25\x5c\x8b\x89\x36\x44\x95\x84\xce\x09\x44\x2f\x43\x22\x66\x31\x5f\xfa\x6a\xff\x14\x85\x71\x40\x42\x96\xa8\xab\x78\x64\x4d\x27\x10\x05\x71\x74\x4d\xb9\xa0\x5c\x36\x6d\x38\x84\x48\x85\x6d\x53\x6f\x27\x5d\x88\x56\x61\x3a\x67\x91\x7a\xeb\x43\x94\x2c\xd8\x52\x75\xa1\x0d\x91\x8e\x4e\xff\x74\xbf\x99\x3e\x72\x14\x02\x4c\x83\xd4\x3d\xd7\x55\xd5\xad\x80\xe8\xbe\x02\x66\xa0\x77\x7f\xda\x5e\x76\x2a\xba\x9f\x9d\x8a\xd6\xac\xc6\xf3\x60\xdd\x19\x24\x2a\xe9\x8b\xe4\x87\x95\x25\x89\xc5\x4e\xbe\xf7\x00\x24\x5f\x92\x82\xbd\xe4\x7d\xa1\xb1\x5a\xa5\x8e\x72\x92\x32\x6e\x30\xad\x6c\x6d\x24\x82\xae\x6c\x90\x01\x49\x9d\xc5\x6a\x9c\xb5\x5a\x0d\xcb\xa6\x0e\xa7\x24\x89\x23\xb8\xd1\x01\x56\xe8\x6f\x29\xe3\x34\xa9\xdf\x7c\x91\x6b\x0e\xb5\xf9\x22\xb2\x7d\x1e\x6d\xd5\x53\x85\x12\xb1\xbb\x24\xd7\xe2\xa0\x7e\xd7\x45\x7f\x4f\x1d\x4e\xa2\x77\x97\x4b\x12\xf0\x58\x4a\x8c\xa2\xac\xd2\x2f\x4a\x60\xee\xdc\xb0\x28\xa2\x1c\x71\xc9\x5a\xd8\x0c\x70\xb5\x0d\x04\x42\x08\x77\x4c\x5b\xaf\x03\x1a\x11\xce\xe2\x46\x40\x22\xbd\x35\xd1\x60\x05\x7d\x4f\xdf\x46\x96\xcd\x8b\xf6\x04\xf9\xda\xe8\x6d\xa4\x57\xac\xb2\x33\x05\x74\x75\xea\x47\xf0\x4e\x60\x65\x16\x65\x30\xf7\x65\x80\x88\xeb\xdd\xb4\xd8\x31\x36\x7d\xd0\x5d\x92\xb5\xc1\xa7\x28\x10\xef\x7d\xd3\xe7\x61\x93\x73\xf6\x99\xd2\x16\x0f\x48\xbe\x27\x76\xa9\x0e\x5c\x81\xa4\x50\x21\x67\x1f\x5e\x8d\x64\x87\x60\xd2\xb2\xbd\x97\x72\x8c\x81\x40\x54\x15\x91\x23\x6f\xc4\xfd\xc4\x31\x0f\x73\x69\xe2\xe7\x70\x73\x50\xed\xae\xca\x6e\xd6\x19\xa1\x42\x1d\xaf\xf6\x3b\x82\x07\x95\x7e\xbf\xb9\x78\x89\xee\x64\xee\xac\xbf\xc9\x6e\x7f\xd3\x2c\x8c\x4f\x75\xac\x95\x2d\xfe\x52\x8f\x2d\x80\x07\x02\xa7\xc8\xe8\x0f\xa0\x28\x59\xaf\xef\x36\x88\xe4\x43\x63\x64\xaf\x75\x95\xa1\x37\xca\x84\x37\x95\x0a\x87\xc8\xd0\x38\xad\xa7\x64\x16\x29\x01\x3f\x9e\x54\xe2\xf6\x98\x1a\x79\xb6\x92\xd6\xa4\x76\x19\xc4\xcb\x15\x11\xec\x2a\xa4\x79\xfb\x05\x54\xfb\x94\xf7\xd5\x38\x07\xd9\x76\x70\x27\x3f\x74\xbe\x9f\x01\xd0\xf5\x5a\xe1\x3b\xdb\x44\x8d\x01\xcc\x42\xdd\xe8\x11\xd3\xfb\x6c\x5b\x82\xc9\xd8\x30\x8e\x6b\xb6\x59\x29\xbc\x23\x65\x90\x35\x68\xee\xd2\x1a\x22\x2e\xf3\x6f\xd1\x5b\x30\xce\x9c\x0a\xdd\x57\xc0\x6a\xe6\xd9\x77\xe9\x2a\x64\x01\x11\xb4\xa1\x60\xfc\xc6\xd8\xb2\x99\x6d\x4d\x2c\x78\x20\xca\x2d\x04\x59\xa6\xea\x26\x89\xa6\x80\x41\x55\x3e\x47\x09\xcc\xa9\xaf\xa8\xa3\x6e\x3c\x85\x9e\xe5\xa0\xce\xef\xc8\x61\xc9\x25\x9b\xd2\x48\xb0\x19\xa3\xd3\xcb\xab\x5b\x40\xf5\xb6\xb1\xde\x7a\xa8\x1d\xb2\xfd\x75\x6c\x6d\x28\x8b\xca\x66\x60\x74\x69\x90\xe4\x27\x8d\xf9\xde\x31\xd6\x03\x7b\x0c\xfe\xb5\x1e\xff\xeb\xed\xdb\xb7\x6f\x27\xf0\x2d\x70\x8e\x46\x6f\xe1\xf1\x1c\xf1\x6a\xfa\x58\xa6\x4f\x8e\xe7\x88\x55\xd3\xef\x64\xfa\xe6\x78\x8e\xe2\x6a\xfa\x5b\xe7\x78\x8e\x08\x3e\x1e\xff\xeb\xed\xcd\xdb\x44\x66\x4c\xcc\xfb\x05\x68\xe6\x71\x20\x68\x22\x6a\x9a\xa4\x3f\x98\x96\x03\x2d\x14\x12\x2a\x00\x44\x22\x43\xaf\xbe\x7f\xae\xde\x1f\x0b\x47\x8a\x5c\x93\x3c\x36\xe7\x29\x3f\x2d\xb4\xf3\x6c\x99\xec\x15\x36\x86\x82\x56\x98\xce\x33\x0f\xe3\x2b\x12\x36\x9b\x45\xee\x4d\x6d\x33\x9c\x59\x48\x84\xa0\x11\x28\x18\x83\xfc\x52\xb3\x57\x91\x38\x61\x7e\x2d\x16\x76\x4d\x89\x75\xc3\xc4\x22\x4e\xc5\x25\x7d\xbf\xe2\x34\xd1\x3b\x49\x75\xd9\x93\x38\xe5\x81\x14\x91\xab\x90\xa8\x05\xbe\xf5\x8d\x67\xc1\xe2\x9d\x6f\xbd\xb3\xad\xf7\x78\xeb\x9d\x20\xcb\xca\xdb\x4c\x7f\x4b\x49\x58\x4f\x93\x6a\x80\xf2\x78\x8b\x50\x59\x89\xca\xd7\x2c\x7b\x9e\x50\xbb\x0b\x64\xe7\x2d\xb7\xad\x63\xeb\x13\xc8\x55\x73\xa8\xbe\xe6\x50\x9d\x61\x1d\xf9\x66\x1e\x85\x58\xac\xd7\xd6\x37\x56\xe6\x44\x2f\x99\xb4\xa2\x32\x06\xcc\xbb\x2c\xc0\xc8\x37\x29\xd3\xb2\x85\x6d\x81\xb7\x6f\x6f\x6c\x68\x21\x6b\x6e\x41\x58\xa5\x4d\xf9\x4d\xc1\x68\x90\x5a\x7d\xc7\x60\xd1\x41\x0d\x9f\x8b\x32\xde\xc5\xa2\x4b\x1d\x83\x25\xaa\x61\x5d\x8f\x19\x0f\xd2\x90\xf0\xc6\x77\x92\x93\x32\xa5\x7f\x4a\xf6\xc5\x33\x6d\x00\x35\x2c\xa8\x39\x99\xa6\xdb\x19\x88\x10\x2f\xed\xdc\xd8\xa0\x07\x3b\x42\x4c\xb1\x84\x5a\xb5\x8b\x64\x33\x05\x98\xb7\xef\xcc\x4a\x71\x1e\x61\x3e\xa6\x93\x91\xfc\x93\x7b\xab\xf8\x16\x70\x6c\x68\xe5\x95\xad\x40\x04\x47\x69\xce\x40\x23\x24\x8a\x83\xce\x10\x16\x59\x22\x73\xdf\xde\x54\xfa\x4a\xa2\x29\x5a\x7c\xfc\xaf\xb7\xc7\xeb\xb7\xc7\xdf\x1c\xcf\x15\x29\x9a\x7b\xd5\xe5\xc6\x87\x6c\x90\xb9\x3d\x6d\xf6\x28\xe3\x0f\xc6\x4d\xaf\xa6\x04\x2e\xec\xe3\x09\x84\xb9\x8c\x95\x0c\x01\x6c\x79\x02\xed\x28\x94\x2b\x20\x4c\xeb\x58\x75\x90\x3f\x5a\xd0\x42\xe6\x36\x4a\xe3\x63\x31\x71\xca\xc5\x04\xf4\x8d\x6f\x4b\x20\x55\xaf\xf1\x04\x6a\xf9\x0d\x04\xf4\xaf\x73\x61\x5e\x74\xea\xba\xd2\x29\xe8\xcc\x58\x18\x82\x18\x49\x29\x63\x40\xdd\xee\x71\x3d\xb2\xad\xb5\x05\x35\x0b\xb3\x2c\x58\xac\xd6\x37\x7b\xc5\x37\x53\x64\x2b\xc7\xe0\x43\x82\x56\x50\xbe\x54\x84\x4a\x35\x75\xb2\x19\x60\xcd\xa6\xc4\xdc\x6e\xae\x0b\x45\x31\xea\x58\x84\xcc\x96\xe4\xea\xb0\x9c\xf7\xc6\x2a\x6b\xa7\xb4\xc3\x5a\xfc\xd6\x29\x5b\xc6\xc0\xb8\xfb\xc6\xd7\x16\x65\xe7\xa1\xb2\x48\x63\x8c\x6f\x81\x80\x1b\xc0\x50\x5d\xb3\x7f\xe6\x71\x34\x6f\xe8\x83\x2a\x8d\x78\x66\x34\xb5\x31\x8b\xb9\xd9\xdc\x62\x82\x08\xb8\x5e\xb3\xf5\x1a\x30\xac\x86\x11\x49\xe2\xc5\x85\x73\xda\x54\x6a\xe9\x46\x87\x23\xc0\x32\x0e\x5a\xef\xda\xcc\x33\x06\x72\xb9\xe2\x74\xc6\xde\x03\x78\x88\xb5\xea\x5a\x24\xd4\xf0\x13\x8d\x5a\x55\x52\x63\x9a\x2f\x8f\x19\x4d\x1a\x52\xcc\x34\xf2\xab\xe6\x44\x43\x17\x41\x8d\x4d\xb3\xcc\x01\xba\x74\x79\x56\xf1\x43\xb3\x17\xfe\x01\xff\xe7\x62\x06\x6d\x2b\x7a\x12\xfd\x69\x46\x64\xf2\xad\x70\x83\x2b\xb4\x3e\x64\xf6\xa7\x46\xea\xe5\x52\x5e\x96\xbc\xdf\xe7\x9a\x43\xb5\xa7\x36\x16\x93\x42\xa0\x29\x92\xab\x5d\xb5\x4c\x0d\x8d\x62\x05\x38\x1c\x15\xe3\x13\x02\x8e\x22\x35\x6e\xc6\x20\x2d\x65\xd7\xfd\x02\x86\xef\x7c\xdb\x6c\x3e\x2d\xb6\x87\x49\x94\xa2\x70\xe7\xb9\xa7\x58\x6c\xb7\xa5\x5c\x8c\x54\xc4\x05\x14\xe3\xc8\x99\x25\xd9\x52\x7e\x6f\x55\x4a\x3c\x1e\x3b\x47\xc7\x7b\x30\xa9\x23\x25\xb2\x44\xe8\xf8\xf7\x17\x44\xf9\x77\x65\x78\x94\xe9\x35\xc3\x42\x8c\x09\x47\x3e\xc0\x52\xf3\x75\x8b\xa4\xaa\x42\xb7\x9d\x69\xfe\x76\xb0\xbb\xa5\x55\x94\x1e\xe9\x95\xba\xca\x2c\x25\x96\x54\xa6\xa3\x3a\xd0\x54\x02\x16\x25\x87\x70\x83\x6a\xb5\x98\x2a\x58\xf0\xa9\x6d\xd7\xda\x7c\x5a\x57\x72\xec\xd0\xf7\x2c\x11\xc9\x6b\xb9\x60\xa6\x70\x44\x40\xec\x70\x4a\xa6\x53\xc6\xb3\xa4\x3a\x93\x83\x30\xcc\xd4\x4a\xce\xcb\xaa\x37\x10\xfa\x44\xea\x54\x61\x4d\x45\x87\x81\x8e\x56\x52\xdf\x86\x44\x10\x91\x55\xe7\xb0\xe4\x3b\xc6\xd5\xed\xd8\xb7\x2a\x7c\x48\x3d\x86\xb3\x01\xa9\x6d\x93\x21\x3e\x04\x2c\x84\xec\xf6\x5a\xc3\xd8\x3b\x17\x46\x5c\xef\x5a\x7f\x44\x7d\x0a\xad\xd9\xb4\x12\xf5\xb0\xfd\xa1\x38\x9e\x56\x27\x75\xf3\xcd\xbc\xcd\xbe\x58\x2f\xfb\xab\xab\x9c\x7d\xc4\x18\x17\xe9\x87\xf9\x73\x69\x72\x1b\xe5\x6d\xf3\x8b\x0a\xa1\xec\xb6\x3e\x28\xca\xeb\x78\x93\x64\x60\x20\xf3\xda\xc3\x5c\x2f\x94\xf3\x80\x33\xc0\x32\xa0\x2c\x08\x60\xe9\x39\x69\xc5\xc5\x89\xcd\xda\xd3\xa7\x3a\xe6\xc5\xc8\xf8\xe4\x0b\xa0\x13\xf5\xa1\xdc\x2c\x2a\x06\xdc\x94\x53\x9e\xef\xf2\x8f\xda\x90\x24\x3b\x4c\x85\x62\x75\x42\xc3\x8c\x29\x54\xd9\x3e\xc8\x9d\x13\x0c\x47\x8e\xc2\x67\xe6\xed\x5b\xcb\xf4\xb2\xd0\xb8\xda\xf5\xbd\xe3\x74\xce\x12\xc1\x6f\xb5\x52\x8e\xf2\xc0\xd8\x9a\x89\xaa\xc4\x18\x58\xc7\x57\x24\xa1\xc7\x96\x0a\xe2\x91\xaf\xa3\xc8\x34\xfb\x4e\x40\x35\x13\xcc\x9a\x9e\x9d\x97\x7d\x47\x6f\x13\xb0\x1d\x29\x44\xaa\x49\x34\xc9\x56\x98\x45\x4e\x47\x19\x71\x7f\xe2\x4c\xd9\x7c\x72\x76\x57\x69\xa6\x43\xa6\xd3\x27\x2c\xa4\xa8\x92\x0a\x37\x07\x91\x71\xfb\xe7\x9d\x41\x58\x7e\x84\x6e\x62\xfe\x8e\x45\xf3\x62\xe2\xf9\xd6\xb1\x85\x4a\xc6\x50\x47\xb9\xd5\x3a\x35\xac\x9a\xe2\x06\xf7\xf8\x78\xbe\x39\x15\xca\x3e\x1e\xa9\x29\x8a\x72\x3e\x50\x93\xf1\xce\xe0\x0b\x7b\xc3\x8e\xe7\xc5\x9a\x3c\x84\xc2\x8d\xf2\xff\xd3\xfa\xc0\x46\x37\x50\xd9\xd3\xab\x15\x65\xde\x6a\x56\x2a\x66\x43\x4b\x9d\x77\xdc\x51\x4e\xde\x2c\x58\xd2\x98\xe9\xa1\xcd\x4b\x00\xb0\x91\x2c\xd8\xb2\x31\x8d\x69\xc5\xf5\xaf\x11\x8b\x05\xe5\x0d\xb1\x20\x51\x43\x16\xd9\xa0\x51\x10\x4f\x59\x34\x77\xb4\x7e\x78\xb8\xdd\x62\x59\x60\xad\xd2\x2a\x3f\x94\xc5\x2b\x4c\xfb\x0d\xcb\xde\xb1\x2b\x48\x72\x2b\x9a\xa6\xbc\x67\xf3\x35\xd7\x16\x41\xeb\x70\x47\x77\x9b\xcd\x01\xdb\x47\x12\x0c\x65\x54\xe4\x9b\xda\x1c\xc7\x02\xf0\x8c\xbc\x55\x21\x7a\xab\xf3\xcd\x2f\x2f\x2f\x2e\x9f\x3c\x7d\x76\x71\x90\x07\x9e\xca\xdc\x5f\x00\xcf\xe8\x97\x4c\xa7\xe5\x80\x44\x70\x83\xcc\x84\x7b\x57\xf1\xdd\xd3\x57\x17\x8f\xdf\xbc\x78\xf5\x4b\x5d\x3d\x91\x8e\x49\x54\x5f\x9d\xc6\x6e\x7d\x3c\x6e\xa1\x2c\x9c\x5a\xe9\xca\x88\x38\x2b\x46\xd7\x4f\x27\x18\x9b\x9d\x94\xa5\xd5\xb4\xfd\xf7\x16\x59\x74\x6a\x93\x4d\xb8\x8f\x15\xa9\x8a\xd8\xbd\x83\x65\x83\xca\xb9\xe4\x6f\xa9\xe0\x9a\xd6\xcc\x49\xc1\x6b\xe8\xec\x79\x2c\x1a\xa4\x31\x2d\xba\xd6\xb0\xec\x72\xa5\x9e\x8d\x8b\xc9\xb1\xca\xd6\xc0\xdc\xa3\xb3\xd6\xec\x77\x98\x9d\xec\xcf\x07\x4b\xc8\x85\x4b\x7e\xba\x05\x3a\xcb\xca\xc1\x64\x93\x79\xe7\xae\x44\xfa\xbc\xc9\x66\x83\x8c\x51\xc0\x2e\xda\x46\x20\xf6\x0e\xb4\x8f\xc0\x96\xfe\xa8\x6c\x54\x5b\x0c\x0e\x67\x37\x31\x6c\xa7\xbf\xd4\x6a\x32\xce\xfb\x26\x5f\x9e\xf0\x78\xf9\x2d\x49\x68\xbe\x51\xa3\xda\xf5\x13\x67\xb9\x0f\x7a\xf6\xfa\xc1\xac\x14\x6e\x0e\xe2\x7d\x93\x2d\x46\x5b\xe0\x7e\x9d\xde\x6f\xfd\x4b\x6f\x30\x65\xb6\x87\x71\xeb\xed\xf1\xdb\xb7\xff\xfa\xe6\xc8\x1e\x39\x00\xae\xc7\x6f\x27\x77\x9b\xc9\xf1\x1c\x59\x6f\xdf\x7e\xd3\xac\x2e\x8a\x32\x5d\x88\x4b\x1d\x0d\x15\x02\xa4\x96\xce\x76\x07\x72\x8b\x73\x57\x3b\x5b\x2a\x57\xb5\x83\x49\x2b\x92\x38\x33\xf3\xec\x96\x52\x3f\x14\x45\xa1\x1b\x74\x95\xb2\x70\xfa\x13\x67\xfe\x96\x3b\x5d\x36\x2d\x0e\x3f\x34\x94\x79\x13\x77\xe9\xfd\x25\x11\x8b\xdc\x5f\x9b\x45\x8d\x2c\x7f\x75\x02\x94\x4c\x76\xab\x07\x7b\x6a\xab\x50\x44\xce\x81\xc9\xee\x7a\xa5\xd4\x1f\x68\xb1\xbd\x44\xf6\xd1\x07\x29\x44\x96\xbf\x6b\x65\xde\xd2\x0f\x72\x54\x49\xbc\x68\xe5\xe3\x9f\x3f\x3e\xfb\x41\x88\xd5\x2b\xfa\x5b\x4a\x13\x51\xcc\x67\x27\x5e\xd1\x08\x58\x73\x2a\x2c\x24\xd0\xa1\x57\xec\xbf\xc9\x07\x4e\x93\x55\x1c\x25\xf4\x0d\x7d\x2f\x36\x1b\x75\x35\x41\xb4\x13\xcc\xef\x53\x94\xb4\xbb\x8d\x52\x33\xa5\xb6\xd6\x1e\x1a\xba\x64\x8d\x88\xa5\x0d\x1a\x5d\x33\x1e\x47\x4b\xb9\xcc\xdf\x11\xab\x62\x41\x95\x07\x6d\x63\x19\x4f\xd3\x90\xa2\x06\x13\xff\x99\x34\x56\x3c\xbe\x22\x57\xe1\x6d\x43\xdb\x65\xe4\x38\x66\x47\x20\xd8\xec\xd6\xb1\x94\x03\x7b\xa9\x68\x97\x1e\x76\xa5\x5a\xb8\x5e\xd7\x7e\xcf\x98\x56\x9d\x2e\x50\x69\x47\x83\x2e\xd3\x90\x68\xbb\x61\xde\xe4\x2c\x40\x5d\x83\x2d\x57\x21\x95\xbd\x51\xdf\x93\x46\x3c\x6b\x64\x5b\xc3\xd3\xc2\x1a\x94\x54\xbc\xe8\xeb\x50\x5d\xbf\x9e\x36\xd7\xcd\x7a\x93\xc8\xca\xbc\xcd\x2c\x74\x37\xd3\xde\x04\xbe\x35\x7e\x32\x9b\xe8\x67\x0b\x15\x1b\xaa\x16\x18\xf9\xe3\xd7\xc9\x24\x7b\x5f\x1b\xcf\x8d\xf1\x8b\x78\x92\x8a\x90\x45\x14\x4a\x45\x90\xc8\x1e\x24\x3a\xc7\x05\x9d\x64\xef\xeb\xf1\xcf\x37\x93\x05\xe5\x12\x66\x45\xd5\x09\x0b\x0d\xf2\x72\x35\xd1\xaf\xeb\xf1\x1b\x31\x89\xa7\x31\xb4\x50\x1c\x85\xb7\xfa\xeb\x8b\x78\x12\x85\xb7\xd0\x42\x57\x24\x78\x37\x57\xf7\x24\xf9\xd6\xf8\xdb\xab\x49\xf1\x6a\xa1\x39\xbb\xa6\x91\x06\xff\x7e\x3e\x91\x2f\xaa\x32\x26\x16\xeb\xf1\x23\x32\x89\xa6\x6b\x99\x21\x15\x6b\xd5\x9c\x80\xae\x04\xb4\xd0\xcd\x22\xcf\xa3\xda\x15\xad\xc7\x4f\xd9\x64\x56\xcd\x00\x2d\x24\x0a\xb0\x37\x42\x83\xc9\x32\x56\x34\x10\x3b\xa0\x6a\x1f\x37\xf1\xc7\x96\x6a\x8f\x85\x2c\x59\x85\x85\x2c\x59\x84\x35\xd9\xdc\x2f\x2a\xea\x9d\xe0\x6c\x59\xcf\x6d\x0d\x4b\x72\x62\xaf\xdf\x26\x76\x6e\x4b\x46\xfc\x1e\x99\x4c\x78\x96\x7c\x1b\x92\xe8\x5d\x4d\x0e\x59\xf6\xd1\x37\xc7\xf3\x82\x57\x23\x96\x3c\x8f\xc5\x3e\xf0\x5c\x57\x50\xdf\x35\x78\x34\xcd\x69\xb7\x86\xff\x1c\xff\x0b\xbc\x4d\x8e\xe0\x71\xbe\xcb\x64\xb8\xc9\x8a\xb1\x3b\x29\x8e\x3a\xb9\x9f\xba\x75\xe2\x65\xde\x1e\xdd\x2c\x06\x7e\xfb\xe4\x83\x3b\x80\x88\xa3\x04\xdf\x85\xb9\x03\x23\x71\x32\xcf\x46\x14\xd2\x99\x78\x29\x11\xb6\x88\xc3\x29\xe5\x8f\x17\x84\xfb\xd6\xd8\xd2\x81\xfb\x76\x3e\x4c\xac\x0d\x4a\xd5\x45\x55\x52\x65\x61\xc9\x65\x5e\xe2\xa8\x2c\x9b\x6e\x7c\xba\x5e\x27\xd0\xc9\x53\xd6\xeb\xa4\x78\x46\xa1\x72\xcd\xda\xa9\x53\xc1\xec\x26\xa3\x00\x53\xa7\xae\x29\x12\xbe\x2e\x7d\xfb\xae\x76\x75\xaf\xbb\x9d\x3a\x99\x07\x10\x05\x56\x36\xeb\x2d\x68\x5b\xbe\xba\x1f\xde\x39\x82\x16\xb2\xd8\xee\x05\xee\xbb\x79\x73\xe6\x50\x97\x79\xf1\xb1\xcc\xe5\x7c\xae\xcb\xbe\xfa\x58\xf6\x9c\xcd\xa8\xcc\x59\xa6\xad\x6b\xdf\x65\x71\xdf\x64\x9f\xae\x77\xcb\xfb\x0f\x75\xaf\xfb\x6e\xf2\x5d\x07\x6d\x2c\x88\xae\xb6\x0a\x93\xdf\xd4\x5d\xf0\xf3\xea\xce\x99\xca\x34\x7e\xfb\x76\xfd\x7f\xfe\xf7\xff\x9a\x8c\x5a\x32\x37\xb4\x20\xba\xdc\x2d\xf9\xff\x07\xc6\xff\xc2\x13\x5d\xc8\xcd\xfe\xcf\x58\xb7\xdb\xb0\x52\x5c\x00\x8a\xa2\x3c\xfc\x1a\xc1\x91\xed\x29\xf9\xc8\x66\x80\xe1\xdb\x42\x65\x29\x74\xef\x43\x15\xea\x2b\x3f\x41\xa5\xb6\x17\xf0\xf5\x16\x98\x4e\xbd\x2c\xee\x71\x2c\x76\xdd\x17\x24\x9a\x86\x14\x58\x8f\xa2\x28\xd6\xd3\xd8\x42\x77\xef\xe8\xad\x1f\xeb\xdb\x3f\xd9\xd8\x9b\xc0\x2c\xb0\xd4\xa1\xbb\x41\xda\x45\x9c\xe1\x9b\x3f\x56\x54\x91\xd4\x9e\xc0\xb2\xd0\xd9\xfe\x42\x9f\xe4\x12\x4a\x96\x52\x64\x98\xee\xcf\x90\xbb\x27\x6d\xe5\x58\xec\xcf\xf1\xad\x21\x62\x2a\x79\x56\xfb\xf3\x5c\xe4\x64\x59\x00\x5f\x7d\xa0\x02\xc9\x35\x65\xd9\x6e\x59\xf6\x7c\x3f\xf8\x77\x44\xca\xe9\x4a\x4b\x96\xfb\xa1\xa5\x36\x56\x40\x1b\x67\x6c\x95\x6a\x22\x9c\x25\x4d\x12\x32\xa7\xd8\x52\x1a\x4a\x43\x2a\xfa\x52\x0f\x92\x42\xbc\x61\xd9\xc4\xfe\x4f\xd4\xb0\xfe\xd3\xa6\xf6\x7f\x5a\xce\xdb\xe8\x05\x67\x73\x16\x91\xb0\x41\x15\xf0\x0d\x49\xfc\xc6\x7f\xda\x45\x21\x48\x6c\x36\xd9\x42\x86\x27\x95\x0d\x36\x56\xae\x07\x14\xc1\xbf\x40\x7c\xfb\xd0\xf1\xce\x06\xe6\xf1\x5b\xfe\x36\x5a\xbf\x8d\x8e\xf5\xbe\x95\xde\x67\xb9\x80\x88\x35\x9b\x0c\x88\x8c\xa7\x03\x15\x5d\xad\x78\xd1\xaa\xf3\xeb\x5d\x77\x9e\xbb\x8d\x69\xd9\xa2\x7c\x2b\xb0\x82\x0a\x31\xc1\x33\x98\x34\xda\x85\x82\x77\x11\xb8\x8f\xbb\x22\xdc\xd9\x10\x17\xf0\x6e\x4a\x43\x2a\x68\x43\x56\x52\xf5\x90\xa9\x78\x46\xc9\x25\x37\x1d\x8b\xea\xad\xba\x93\x1d\x1d\x52\xd8\x96\x5c\x7f\xa4\x11\x55\xda\x07\x9d\x36\x88\x50\xab\xac\x86\x60\x4b\x5a\xe8\x83\x77\x7a\xfc\xfd\xdd\x12\xa5\x48\x7d\xb1\x73\xc8\x0d\xe9\x45\x41\xa6\xfe\xbf\xcf\x02\x8c\xbd\x06\x77\xca\x0d\x95\x39\x51\x1c\xaf\xd0\x95\x12\xff\xd9\x0b\x29\xa6\xf3\xd6\xca\x33\x32\x30\x58\xe5\xef\x72\xb5\x20\x48\xb2\x00\xca\x18\x80\x44\x16\xbb\x6b\x83\x72\x9d\xd3\x18\x95\xc8\xbc\xfd\x8c\xde\x34\x1e\x81\x08\x71\x7d\xf3\x1d\xdc\x94\xfa\x68\x6c\x2a\x84\x64\x63\x70\xcb\x18\x64\x41\x75\x8b\x43\x87\x79\x31\xba\x87\x1c\x42\x47\xd7\x84\x58\x16\x5a\x0e\xc7\xda\xf2\xa4\x71\xb7\x13\x0f\x44\x60\xe1\x14\x6f\x35\x31\x3a\xaa\x87\x45\x22\xbd\xd7\x40\x61\x3e\x15\xf5\xe7\xf5\xda\xd8\x03\xd4\x74\x6b\x0e\x86\xa2\x82\xdd\x85\xc3\xa3\x46\x86\x22\x7d\xfc\x2f\x5f\x24\xc4\x11\x6d\xc4\xbc\xb1\x8c\x39\x6d\xe4\x28\x31\x4f\x04\x96\x13\x63\x83\xde\xef\x1e\x6c\xbc\xcb\x9c\xc0\xd4\xa0\x6c\x4d\x09\x36\x93\xba\xe2\x71\x1e\xbb\x63\xb7\x49\x45\x50\xc0\x92\x0e\x1a\x96\x2d\xe0\xc1\x2e\xc9\x15\x53\x6b\xb7\xbf\xc5\xea\x65\x83\x1e\xd5\x5e\x4e\x45\xf0\x78\x82\x54\x9c\x75\x7d\xdc\xe2\x1d\x0a\x2b\xa4\x59\xa5\x3d\xa2\xbd\x99\x32\x31\x22\xe4\x6c\xbb\x1f\xd1\x86\xfb\x88\x16\x59\xb2\x9a\x0f\xd0\x6e\x41\x8a\xbb\xf6\x17\x3d\x89\x7e\x04\x02\xa5\x88\xa3\xa0\x0c\x34\x98\xf9\xe7\xc1\x72\xba\x6d\x4c\x3a\xae\xdd\x9c\xd3\xdd\x7f\x03\x04\x0a\xca\x7c\xe9\x66\x03\x51\x60\xf8\x26\xee\xa7\xc7\xf0\x77\xd1\xe3\xb6\xff\x81\x22\x0c\x15\xf5\x27\xf7\x20\xdb\x35\x3d\x67\x94\x9a\x7b\x32\xef\xa3\xd2\x0d\x80\xe8\x4e\x45\x21\xf0\xa9\x31\x30\x89\x5f\xf2\x73\x34\xa5\x49\xc0\xd9\x4a\x0d\x18\x29\x50\x9d\xf8\x11\x48\x3e\x16\x4b\xa6\x20\x7d\x08\x4b\x77\x35\x27\x22\xef\xe8\x14\xa8\x5d\xbd\x37\xb5\x3b\xe5\xea\x48\xf9\x78\x82\x08\x76\x33\xe7\xa8\x9c\xd2\xd2\xbd\xa4\x74\x5d\x12\xc1\xad\xc9\x82\xb2\x6b\xa6\x4a\xb1\x03\xac\xa9\x12\xde\xa1\x24\xa7\x6d\x4a\xad\x78\x59\xa9\x6c\x26\x49\xea\x8c\x16\x31\x94\x28\x43\xf1\x46\x66\x1d\x8a\x60\x25\x95\x98\x89\x57\x5a\xc9\x98\xca\x75\x51\xec\x18\xcb\x33\x20\xaa\xce\x53\xf5\x2d\x5e\xd5\x55\x31\xdb\x57\x85\x99\x6a\xb6\xf8\xba\xfa\xa9\x68\x3f\xba\x85\x68\x09\x04\x52\x7e\xe0\x3b\x9e\x5a\x0b\x50\xfb\x75\x9a\x8b\x1b\x85\x48\x51\xf1\xa5\x92\xc9\x45\x4c\xf9\x25\x88\x0c\x37\x73\x5d\x8c\x1a\x64\x58\x0d\x01\x52\x83\xf0\xba\x5e\xa7\xb5\xbd\xd6\x54\x01\xd1\x02\x54\x5d\xb3\xb2\x1d\xa2\xd8\x29\x17\xd0\xca\xb2\x5f\x1d\x03\x0a\xcf\x48\x1d\x8b\x2d\x20\xb4\xca\x25\x59\xfb\xb8\x38\x1f\xea\x4d\x70\xe5\xcd\x16\x76\xec\x28\x1b\x00\x28\x4e\x25\x92\x2d\xa7\xaa\x8a\xa3\xf2\x95\xf2\xe5\x2c\x45\x9a\xe9\x57\x75\x3f\xc0\xab\x92\x21\xf0\xbd\x0c\xa1\x54\xa0\xf7\xf0\x04\x41\x57\x92\x1f\x7c\x84\x81\x25\x7f\x84\x81\xc9\x1e\xdc\x69\xc3\x0c\x97\x93\xff\xdd\xae\x34\x54\x73\x7d\x97\x8b\x56\x7d\xbb\x75\xfc\x2b\x20\x8a\x46\xe8\xcf\xf7\x6a\x44\x56\xff\x58\xa9\x60\x3f\xd6\xf8\x8f\xe7\xf1\x6d\x95\xb0\x53\xb1\x85\xc6\x13\x14\x60\x37\x5b\xbe\xe7\x8c\x68\xb1\x97\x11\xdd\x94\x8c\xe8\xa6\xb4\xc0\x5d\x6c\xe4\x22\xbe\xea\xc9\x99\x85\xc6\x99\xd5\x4d\xf4\x74\x3f\x6b\x5a\xe5\xd9\xee\xcd\x9a\x90\xb1\x44\x47\xb3\x9d\xc9\xb4\xac\x26\x66\x93\xe9\x56\x0a\xb5\xfd\x5c\x6a\xb9\xaf\xf1\xf3\xba\x2a\xae\xf7\x55\x31\xdb\xc3\xa5\x6e\xaa\x9f\xca\xae\x6c\x7d\x28\x3a\x86\x2e\x20\xba\xdc\x65\x50\xd7\xba\x99\x92\xf4\x6a\xbe\xde\xe6\x8a\xc7\x0e\xfb\x92\x93\x2a\x2c\xd9\xd7\x25\x08\x77\xd9\x57\x58\x65\x5f\x73\x50\x3b\x28\x75\xe8\x58\xd4\xa2\x23\x67\x5f\x57\x26\xfb\xba\xfc\x04\xf6\x15\xdc\x8f\x7d\xa5\xe3\xd4\x60\x5f\x95\xb7\x3a\xf6\x15\x98\xc4\x77\xb3\xc5\x10\x5e\xa8\x58\xb0\x05\x9f\xd8\x18\x86\x92\x0a\x8c\xf6\x8c\x7e\x09\xa6\x06\xc8\x8b\x92\x71\xa5\x7b\x19\x57\x71\x94\xe9\x8f\xb0\xad\xd9\xef\x62\x5b\x2f\x40\x1e\x80\xb3\x56\x45\xe2\xf5\x2a\x52\x82\x34\x8b\x29\x35\x28\x75\xee\xcc\x88\x3a\x56\x6e\x1c\x8d\x48\xe1\xd5\x0c\xfd\x68\xb3\x41\x2f\x6b\x8e\x23\x8c\x27\x52\xd5\x2c\x70\xf8\xbe\x54\x89\x2a\x2c\x48\x12\x9b\xe9\x5f\x51\x95\xa4\x19\x89\x65\x24\xb9\x41\xdb\x7a\x3b\xaf\x2a\x1c\xe6\x54\x4c\xef\xa1\x76\xe8\xa9\x3f\xcd\xf1\xe5\x1d\x08\x3c\x07\xfc\x03\x87\xde\x04\xd6\x7c\x34\x63\x70\x14\x2a\x73\xaf\x1f\x55\x8c\xd6\xdb\x04\x5e\x20\x2e\xb2\xcb\xf3\xff\x1e\x12\x52\xbd\x2c\x94\xca\x3a\xdd\x6f\x3f\x26\x10\xa9\x5f\x52\x54\xf5\x1f\x29\x18\x76\xbb\x7b\x5d\xab\x84\x5c\x17\x7a\xe5\x9d\x49\x2d\x04\xcd\x18\x0d\xa7\x89\x7f\x05\x04\x52\xa1\x63\xd1\xad\x5c\x7d\x64\x83\x5a\x8d\x3a\xb7\x8b\xef\x45\x1d\xbe\x97\x70\x2b\xce\xda\x76\x3b\x75\xde\x55\x7d\xde\x3f\xde\xf8\x1d\x99\x24\x3f\x73\x75\xdc\x44\xb9\x8b\xcb\x2c\x15\x91\xb1\xa7\x67\x3b\x38\xb8\xde\xa1\x5f\x0d\x5b\xa7\x10\x6e\x31\xcf\x7d\x54\x7c\xb9\x4f\xed\xbd\xdc\xf6\x65\xcf\xcf\xe9\x54\xba\x71\x20\xa5\x5f\x8d\x5d\x89\xc9\x85\x36\x7d\x2f\x6c\x4b\xd1\xea\x7b\x6b\x82\x0b\x75\x70\x82\x8c\xaf\x89\x20\x5c\x38\x21\x8b\xa8\x04\xa1\x35\xdf\x82\x38\x4c\x97\x91\xfc\x2a\xd4\x86\x83\x2d\x4c\xf2\x9f\x54\x5c\xf3\xaf\x2a\x87\x40\xe6\xca\xc7\x39\xe3\xa0\xbb\xce\xd0\xb9\xbd\x1a\x8b\x71\x34\x51\x75\x22\xa2\x9f\x8d\xf2\x51\x82\xeb\x14\xd7\x83\x3f\x57\x6f\x66\x13\x0c\xe4\xdf\xf5\x7a\x3c\x29\x1d\x6d\x95\x5b\x36\x37\x25\xa9\xb1\x18\xa4\x1a\xb1\x2f\x66\xc0\xfa\x3f\xff\xfb\x7f\x59\xf0\x1c\xbb\x23\xf5\xe4\x5b\x6b\x0b\x99\xe1\x88\xb8\x6e\xae\x79\xbb\x99\x38\xc4\x98\xed\x95\x2d\x4f\xa3\x20\xe6\x9c\x06\xc2\x70\xb6\xd7\xc3\xad\x02\x6a\x6b\xd5\xa2\x21\xc8\x55\x48\x9d\xc6\x45\x6e\xeb\x53\xa7\x73\x1a\x57\xa9\x68\xcc\x94\x3e\x6d\xd9\x45\x0d\xc5\x49\x7b\x53\x7e\x57\x95\xd7\x1b\xa0\x42\x20\xe4\x3a\xad\x29\x59\x0b\x69\x28\xf6\xb6\x38\xb7\x69\xeb\x46\xd5\xcb\xc4\x05\x25\xd3\x2c\x2a\xd5\x47\x97\x05\xf7\x29\x8f\xc7\x37\x89\xb5\x25\xd9\x0b\xdb\x55\x61\x32\xfe\xdd\x96\xd9\x22\xa6\x95\xc4\xb9\x80\x2a\xbe\xb0\x18\x73\x49\xef\x88\x9a\xca\x82\x69\x88\x51\xb3\xf1\x43\xee\xcd\x8f\x72\xcf\xe6\x42\x30\x14\x25\x3d\xda\x8a\xc8\x97\x05\x4f\x57\x81\xaf\xf4\x06\xad\xb9\x1f\xf4\xf6\xad\x65\x87\xb6\xa5\x77\xbd\xb8\x7e\x90\x69\x81\x3a\xbc\x85\x8a\x39\x33\xe6\x13\xf3\x1c\x75\xb9\x9d\xfa\x27\x2d\xa9\xaa\xa7\x0a\x2a\xe4\xc4\x3f\x84\x89\x4c\x75\x79\x04\x44\xc6\xc9\x10\xd5\x61\x27\x61\x45\x99\xb9\x00\xc2\x31\xde\x4b\xd5\x86\x9a\xc9\x55\x4d\xe7\x05\x10\x88\x3a\x46\x0a\xcc\x54\x9f\x17\x66\x65\x2a\x49\xc5\x99\x30\x0c\x3f\xf7\x0e\xc8\xb3\xab\x37\xa8\xb3\x08\xce\x2c\xd1\xe6\x71\xc0\x41\xb7\x07\x61\x71\xa4\x73\x67\xdb\x83\x17\xcc\xaf\xea\xfd\x49\x91\x76\x18\x55\x41\x26\x74\x36\xc0\x4a\xaf\xb9\x66\x93\x83\x18\xae\xd7\xf1\xbd\x77\xbf\xdb\x27\xd9\xf6\x77\x76\x72\xb0\x5b\x04\x3b\x28\xbb\xe3\xe8\x10\x0d\x7b\x82\x9b\x32\xa4\xe2\xba\x15\x7b\xd3\x51\xb1\x15\x9e\x60\xaa\x9b\x98\x39\x7b\xc7\x80\xab\x70\x34\x4e\x71\x95\xe2\x7a\x2d\x9c\xca\xdd\x8a\x00\x1e\x6c\x1b\xb3\x48\xfd\x99\xe8\x00\x64\x14\x81\xb2\x29\xb3\x65\x8a\x2a\x42\x81\x9f\x82\x29\x88\x70\x85\x4e\x90\x95\xf9\x8f\x58\x70\x94\x3a\xef\x35\x2d\x5c\x51\x7f\x0a\x22\x64\xc5\x51\x78\xab\xd2\xf3\x64\x47\xa6\xac\xd7\xa9\x33\xcb\x53\xe4\xcb\xb4\xc8\x55\x42\xc2\x4a\xcc\x3e\x78\xc7\xc1\x56\xcb\x66\xc6\x1c\x98\xca\xc1\xac\xb4\x83\x09\x5f\x25\x16\x2d\x60\xa2\xac\x9b\x09\xf9\xc3\x98\xf0\x65\xfa\x8e\x2d\xab\x34\x1a\x17\x5b\xc2\x96\xcd\xcb\xed\x6e\x01\x6d\x2b\xdb\xca\x2e\x83\xe2\x69\x1e\xc2\x66\x20\x73\x5b\x63\xf9\x2e\xe0\xa1\x9b\xdf\x7c\x39\x2b\x23\x84\x24\xdb\x16\xf3\xfa\x81\x09\x41\x46\xcf\xd9\x51\x7e\x58\xee\xd2\x24\x7e\x88\x0a\xb4\x05\x88\x09\x1d\x39\x61\x27\x68\xd6\xac\x3a\xad\xe1\x76\x28\x44\xae\xa3\x64\x09\x94\x1d\x1c\x67\xe2\xf2\xd3\xcb\x29\x8b\xc9\x0e\x6b\x6c\x10\x42\x1f\x89\x0f\x5f\x60\xdd\x60\x66\x20\xfa\xca\x8e\x70\x1c\x1c\x1f\x1d\x36\x8e\xfe\xcc\x7f\x07\x8f\xe3\xd5\xad\xf2\x2e\x69\x80\x00\x36\x7e\x64\x01\x8f\x93\x78\x26\x1a\x8f\x63\xbe\x8a\xb9\x1a\x1d\xa7\xf1\x28\x0c\x1b\x0a\x28\x69\x70\x9a\x50\x7e\x4d\xa7\xce\xc1\x33\x16\xd0\x28\xa1\xd3\x46\x1a\xa9\x3b\xa1\x16\xb4\xf1\x68\x45\x82\x05\x6d\x64\x5f\x50\xe3\x1f\x3a\x9e\x70\xa3\xed\xb8\x0d\x20\x01\xac\xec\x93\x05\x4f\x1b\xb7\x71\xda\x58\x92\xdc\x51\x8f\x2a\x76\xdb\x98\xb1\x90\x36\xa8\xf2\xe3\x92\x53\x20\x88\x97\xab\x90\x91\x28\xa0\xfa\xd4\x9f\x28\x4b\x77\x1a\xbf\x64\x05\xc4\x57\x6a\xdf\x8c\x34\x82\x78\x75\x2b\x55\x2e\xb1\xa0\x79\xeb\x1a\x44\x34\x16\x42\xac\xfc\xe3\xe3\x9b\x9b\x1b\x87\xa8\x06\x3a\x31\x9f\x1f\x87\x1a\x20\x39\x7e\xf6\xf4\xf1\xc5\xf3\xd7\x17\xad\xb6\xe3\x1e\x1c\xbc\xf9\xe1\xe9\xeb\xc6\xe3\x17\xdf\x5d\x34\x9e\xbe\x6e\xbc\x7c\xf5\xe2\x1f\x4f\xbf\xbb\xf8\xae\xf1\xe2\x79\xe3\xd1\xf3\xc6\xd1\xa3\xd7\x8d\xa7\xaf\x8f\x1a\xdf\x3e\x7a\xfd\xf4\x35\x6a\xfc\xfc\xf4\xcd\x0f\x2f\x7e\x7a\xd3\xf8\xf9\xd1\xab\x57\x8f\x9e\xbf\x79\x7a\xf1\xba\xf1\xe2\x55\xe3\xf1\x8b\xe7\xdf\x3d\x7d\xf3\xf4\xc5\xf3\xd7\x8d\x17\x4f\x1a\x8f\x9e\xff\x72\xf0\xf7\xa7\xcf\xbf\x43\x8d\x8b\xa7\x6f\x7e\xb8\x78\xd5\xb8\xf8\xe7\xcb\x57\x17\xaf\x15\xe4\xd3\x1f\x5f\x3e\x7b\x7a\xf1\x1d\x6a\x3c\x7d\xfe\xf8\xd9\x4f\xdf\x3d\x7d\xfe\x7d\x51\xe4\xb3\xa7\x3f\x3e\x7d\xf3\x48\x96\x22\x4b\xc8\x21\x0f\x3e\x54\xd3\x9b\xa7\x6f\x9e\x5d\xa0\xc6\x93\xa7\x6f\x9e\xcb\xf2\x9f\xbc\x78\xd5\x78\xd4\x78\xf9\xe8\xd5\x9b\xa7\x8f\x7f\x7a\xf6\xe8\x55\xe3\xe5\x4f\xaf\x5e\xbe\x78\x7d\x81\x0e\x7e\xbc\x78\xf5\xf8\x87\x47\xcf\xdf\x3c\xfa\xf6\xd9\xd3\x37\xbf\xc8\x82\x9e\xbf\x78\xde\x7a\xfa\xfc\xc9\xab\xa7\xcf\xbf\xbf\xf8\xf1\xe2\xf9\x1b\xe7\xe0\xe0\x35\xa5\xe6\x80\x9a\xe3\x98\x23\x76\x16\xf3\x46\xb2\xa2\x01\x9b\xb1\xa0\x91\xcb\x98\xc6\x3c\xbe\xa6\x3c\x62\xd1\xbc\xb1\xa2\x7c\xc9\x74\x10\x80\x03\x12\x4d\x1b\x2a\x2c\x66\xe6\xf7\x58\x52\x4c\x3e\x98\x07\x7f\x2a\x55\x37\x8e\x8e\x15\x17\x3d\xe0\x0e\xd7\x01\x65\x54\x80\x34\x23\x24\xd3\x6b\x41\x44\x9a\xec\xbd\x27\x25\xcf\x41\x92\x84\xcd\xa3\xfd\x71\xd5\x32\x30\x2d\x85\x7f\x24\xc1\x42\x2e\xc7\xea\xa0\xa7\x06\x74\x11\xf8\xa2\x16\x72\x25\x21\x2b\xbe\x0e\x63\xea\x3c\x8f\xc5\x6b\xb9\xa6\xa3\x53\xec\x4e\xb0\x55\xbe\x5a\x48\x7e\x7e\x95\x46\x12\xe7\xd8\x9b\x60\x2b\x7b\xd6\x1f\x5e\x8b\x78\xb5\xa2\x53\xdc\x9e\x60\x2b\x7b\xb6\x36\x40\x1f\xec\xbd\xcb\xef\x83\x89\xf1\x9d\x64\x33\xbe\xf5\x3e\x11\x44\xc8\xe5\x11\x13\xd6\xa6\x3e\xb6\x5e\x71\x85\x22\x1d\x8d\x27\xfe\x78\x52\x9e\x9c\x2f\xe5\x5e\x62\x9c\xd5\xa9\x14\x9c\x63\x53\xff\x4a\x0d\xde\xa7\x46\x64\xf7\xd4\xd4\xc8\xb7\x2f\x1a\x04\x14\xef\xde\x3d\xd8\x6c\x2a\xe7\x42\x3a\x19\xc9\x3f\x3e\x85\x23\x5d\x21\xdd\xf8\x35\x9c\x98\xe6\x5f\xd5\xe5\x81\x88\xbe\xa7\x81\xf2\xe0\xab\x6c\xd2\xd5\x46\x11\x2c\x9c\x16\x30\x16\x9b\xda\xa8\x04\xbb\x6d\x2b\x9b\x42\x77\x36\xbf\x32\xe4\x64\x57\xf8\xa1\x20\x0b\x0c\x26\x10\x09\xb4\xf6\x3c\x9e\xa0\x60\x41\xa2\x39\x9d\xfa\x87\x1e\x5a\x12\x11\x2c\xa4\x88\xae\x46\xc2\xcf\xf5\x8b\xe2\x16\x4f\x15\xc7\xf2\x6e\x93\x5f\xc2\x78\x17\xc4\xd1\x8c\xcd\x7d\x8a\x2e\xe3\x95\x2e\x57\x20\x15\x9a\x81\x84\x92\xfe\xa9\x9f\xb7\xc0\xc9\x52\x8b\xfa\x89\x5c\x03\x4b\x90\x64\x5c\x7c\x9c\x38\x34\x12\xfc\x76\xbf\x6b\xbf\x1a\x3f\x27\x2b\x42\x2d\xc1\xf3\x8e\x69\xbd\x92\xbe\x17\x66\x57\xf2\x72\xe1\x06\x09\x4e\xa2\x44\x87\x8c\x30\xb6\x68\xf2\xc0\x91\x28\x41\xd3\xdd\xc1\x17\xa3\xac\xf5\x62\xb7\x9a\x8d\x2f\xd0\x02\x4f\xb3\xdb\xd1\x56\x78\x5a\xd6\x8f\x03\xc0\x20\xba\xc6\x45\xff\x16\x13\xb5\xc6\x77\xe2\xcc\xaa\x71\x8b\x89\x7a\x1b\x2f\x1d\x59\xd3\x04\xa2\xab\x6d\x97\x1e\xe3\xde\xd4\xca\x48\xce\xc0\x02\xad\x32\x7f\xa5\xa8\xb6\xc5\x82\xf0\x39\x15\xbe\x6a\x20\xc3\x91\xa3\xdf\x51\x8c\x8b\x22\xd9\x68\xe1\x2b\x47\xc0\x1c\x91\x28\x29\x3f\x12\x39\xe9\x08\x0a\xb0\xba\x9a\x7f\x8a\xa6\x78\xa5\x6e\x6b\x28\x00\x82\xd1\x0e\x43\x39\x74\x37\x7e\x00\xc1\x0a\x2d\x61\xde\xc1\xa2\xef\xf1\x04\x5d\xe1\x43\x0f\xcd\x71\x39\x93\xaf\x1d\xfa\x9e\x09\x94\xa0\xdb\x7c\xbc\x3f\x70\x12\x44\x85\xa7\xfe\x10\x3d\x70\x27\xa7\x3d\x93\x30\x6a\x8b\x64\x33\xb0\xc5\x28\x74\x8c\x96\xdb\x15\x85\x77\x57\xf8\xd0\xcd\x22\x37\x65\x27\x8f\x34\x0c\xb8\xdb\xa0\x69\x71\x83\x68\xcd\x9c\x77\x4a\x66\x33\x12\xd8\x7c\x05\x53\xb4\x84\xbe\x79\x8e\xc9\xfc\x5a\x9e\xa9\xac\x5c\xab\x23\xc6\x7c\x52\xa7\x54\x9a\x59\xc7\x7c\x32\xda\x7a\xd7\x75\x6d\x25\xca\x19\x32\xc5\x02\x1d\xe6\x17\x7a\x1f\xba\x9b\x62\x9d\x9f\x91\x54\xf6\x13\x17\x34\x3e\x2d\xe6\xe8\xbc\x60\x11\xf1\x21\xc6\x8b\xf5\x7a\x9e\x5f\x53\xe1\xae\xd7\x57\xc6\x4c\x8b\x95\x0a\x5d\xdc\xa3\x2b\xb1\x38\xaf\x59\x31\x7e\x48\x77\xdd\xb9\x7d\x13\x71\xec\x96\xd1\xd0\x44\x7e\xad\xab\x7f\x17\x55\xf6\x01\x4c\xdd\x98\x9f\x9b\x77\xc2\xd3\x8c\xaa\x21\xca\x99\x90\xac\x86\xdb\xf6\x04\xe9\x1b\x4e\xa9\x6c\x34\xb8\x85\xe8\x12\xcf\xb3\x3b\x3d\x4f\x0f\x2f\xf5\xa5\xbf\x65\x92\x6e\xfc\x0d\xbe\x02\x97\x99\xa5\x5d\xc5\xe6\x2f\x0e\x26\x47\xe0\xa6\xf0\x9f\xbc\xd1\x10\xe6\x3d\xc4\xf8\x4e\x99\x12\x95\x18\xca\x6e\xf5\x94\x68\xba\x6c\x36\xb3\xaa\x9a\x4d\x90\xe0\x79\x76\xf7\x27\x6c\x36\x13\xdd\xd3\x79\xe5\x16\xd0\x38\xb3\x83\xc5\x8e\x2a\x6d\x53\x84\x1f\xcd\x18\xc2\xa6\xbc\xa3\x40\xb6\x76\x51\x1f\x42\x81\xe6\x33\xa4\x9e\xf2\x32\xb3\x80\x72\x0a\x2d\xac\x64\xcd\x66\x04\x4a\xe6\xaa\x97\x4b\x07\xa6\x11\xbd\x0c\x12\x6a\x32\x7e\xc4\x31\x33\x74\x8a\xdc\x31\x90\x0a\x44\xf0\xdd\xe5\x52\xeb\x31\x3e\x45\x09\x35\x1d\x97\x62\x78\xc7\xd5\x71\xc5\x4c\xc5\xc8\xc2\x26\x97\xcc\x1b\x08\x14\x43\xb4\x00\x02\x05\x20\x86\xea\x4e\xc7\x9d\x9e\x18\xbc\x43\x2f\xc1\xe1\x06\x25\xe9\x55\xb6\xf2\xac\x01\x53\x17\x90\xc8\x05\xab\x3a\x76\x77\x97\x46\x35\xd0\x06\xb0\xf6\xcb\x54\x82\x52\x9d\x22\xe6\x75\xd4\xc8\xcb\x4e\xa8\xe6\xc6\x10\x11\x09\x1d\xaf\xf6\x00\x67\xba\x13\x8a\x74\x74\x3d\xa0\xe0\xe7\x54\x34\x14\xbf\xaa\x44\xf9\xc8\x53\xd3\xc4\x28\xa2\x24\x01\xb2\x65\xfe\xd9\x09\x8e\x7a\x75\x2b\xe8\x33\x35\x4b\x6a\xe6\x68\xaa\x4f\x73\x89\xb1\x3b\x41\x11\x16\x63\xaf\x88\xc5\xda\x39\x02\xdc\x8e\xe0\x71\xb7\x15\x6d\x90\x70\x44\xfc\xed\xad\xa0\xca\x86\x5a\x7b\x42\x22\xd6\x45\x11\x1c\xcb\xa2\x12\x1c\x8f\xbd\x49\xe6\x84\xc7\xc0\x1e\xc3\x62\xe7\x08\x08\x9b\xcb\x2a\xf8\x06\xb8\x2a\xa6\x1d\xcc\x3c\x19\x92\x73\x77\x44\x5a\x5d\x9f\x18\x01\x93\x67\xa7\xdc\xc6\x5d\x28\x70\x34\xae\x04\x1e\xe7\x70\x72\x76\xe6\x0d\xd7\xdb\xc9\xb6\xa7\x3e\xb4\x77\x3f\xb4\xe5\x87\xfe\x6e\x7a\x07\x4e\x50\x38\x0e\x6c\x7b\x82\xc5\xf9\xb9\xd7\x6f\xb6\x7b\x3d\x23\x61\x68\xbe\xb7\x7b\xbd\x66\x71\xe6\xad\x8d\x31\x4e\x14\xf9\xd6\xb5\xad\xa6\x05\x1e\x9c\x9c\x9f\x77\x2b\x65\x41\xe4\x7d\xb0\x14\xcf\xdd\xd3\xc3\x6e\x6d\x07\xcf\xcf\xdb\x1f\x6c\x3a\x44\xa1\x1c\xd7\x19\x8f\x97\xf5\x23\x5b\xc4\x91\x31\xae\x83\x91\x3a\xc6\xdf\x3a\x28\x36\x7c\xdf\x5a\xec\x94\x9c\x25\xa7\xc4\xc6\x5e\xbf\x33\xec\xc0\x58\xef\xce\x85\x80\x22\x82\x88\xad\x12\xcf\x93\x51\xe2\x67\xcf\xa5\xe1\xd9\xd3\x57\xc5\x08\xac\xe3\x18\xa3\x2c\x27\x1f\x8b\xf3\xf3\xf6\xc4\xe6\x63\x71\x76\xd6\x6d\xf6\x3b\x13\xdb\xc2\xd8\x82\xfa\xfa\x3c\xa6\xf0\x03\x64\x96\xf6\xe4\xec\x6c\x08\xed\x9a\xdc\x9e\xab\xb2\x9f\x9f\xeb\xec\xaa\xa4\x76\x56\x92\xba\x10\x22\x33\x84\x5b\x92\xb9\x55\xef\x89\x19\x4f\x10\xc3\x46\x80\x89\xe2\xc0\xde\x4f\x2c\x12\x43\x85\xa5\x51\xf9\xe8\xab\xbf\x28\xc6\xd6\xa3\x6f\x1f\x7f\x77\xf1\xe4\xfb\x1f\x9e\xfe\xd7\xdf\x9f\xfd\xf8\xfc\xc5\xcb\xff\x7e\xf5\xfa\xcd\x4f\xff\xf8\xf9\x9f\xbf\xfc\x0f\xb9\x0a\xa6\x74\x36\x5f\xb0\x5f\xdf\x85\xcb\x28\x5e\xfd\xc6\x13\x91\x5e\xdf\xbc\xbf\xfd\xb7\xeb\xb5\x3b\xdd\x5e\x7f\x30\x3c\xb1\x8f\xad\x0c\x9f\xf9\x2d\x14\x0a\xa9\xb6\x4d\x20\x1f\x93\x09\x8e\xc7\x64\x82\xa2\x71\x5c\x8d\xb7\x3f\xc1\xa4\xb2\x95\xbc\x13\xc0\x99\xcd\x80\xf8\x5b\xf7\xdc\xdd\xef\x97\xab\x55\x4a\xa7\xa1\x19\x44\x71\x6d\x08\x69\x2c\xd3\x50\xb0\x55\x48\x1b\xf1\xac\xd1\xb5\xf2\x15\x80\xb1\xd5\x85\xad\xca\xc5\x06\xfa\x4a\x75\x01\xd1\x98\x23\xae\xe2\xfb\xbb\x7e\xb7\xc5\xff\xd6\x9d\x6c\xb9\x2c\xa2\xa8\x24\x2d\x15\xc9\x52\xbb\xee\x8a\xd3\xe4\x2c\x3a\x4d\x6c\xdc\x81\x4c\x0e\x6f\x22\x29\xbe\xdf\xf4\xfa\x03\xcf\xeb\x0f\x5d\x68\xcb\x34\xdb\x93\x43\xde\xec\xf7\xda\x2a\x45\xd2\xb1\x4c\x6d\x4f\x20\x22\xf9\xf0\x83\x18\x33\x78\x7e\xee\x0d\xb3\xa1\x8f\xcf\xcf\xbd\x76\xf9\xdc\xcf\x1e\xfb\x9d\x66\x5c\xde\xf5\x43\x4a\x82\x88\xc6\x56\xcb\xaa\xde\x87\x31\xc1\xfd\x36\x8a\xc6\xd6\xe5\x6e\x7a\xe7\x23\xb7\x2c\xe9\x70\xf1\xea\x4e\xda\xda\xf5\x2f\x20\x5f\xa1\x45\xf1\xa0\x71\xd4\x08\x42\xb6\xba\x8a\x09\x9f\x3a\xbf\x26\x8d\xeb\xb6\xe3\x3a\x7d\x99\xbc\x10\x62\x95\xf8\xc7\xc7\xc5\xe7\x5f\x13\x27\x88\x97\xc7\xf2\x9b\xfc\x5f\xd8\x00\x7f\x7c\xfa\xa6\xf1\xff\xfc\xff\x1b\xff\x43\xa3\xb8\xf1\x2a\x0e\x16\xe4\xa0\x71\x74\x5c\x73\x19\x6f\xa3\xc6\x6f\xc3\xd0\x58\x78\x16\x6b\x50\x8c\xa3\x49\x71\xec\x65\x1c\x4d\xf2\xfd\x8e\x83\x72\xdf\x19\xdf\x31\x3f\x42\xa1\x5c\x1f\x67\x1f\xfd\xbb\x52\xcc\x52\x99\x49\xa9\x6a\x2c\xcf\x8b\x18\x2a\x9f\x39\x44\xcc\x09\xf1\xa1\x5b\xa6\x6d\x8a\x03\xd1\x4b\x2c\x17\x2e\x01\x16\x88\x3b\xd3\x9d\x80\xc5\xdc\xd1\xf7\xbb\xaf\xd7\xd9\xda\x41\xf3\x9e\x32\x02\x03\x12\xe8\x8e\x46\xe9\x52\xdf\x8e\xef\x1f\xba\x52\x27\xf0\xa3\x0d\xdc\x20\xee\x6c\x5d\x7d\x52\xc3\xb9\xf2\x61\xcc\x86\x30\x0f\x37\xf8\x86\xcc\x9b\xcd\x7d\x35\xee\xc2\xe6\x6a\xb5\xf5\xa3\x3a\x95\x6c\x6d\x8a\x90\x0d\x3b\x99\xad\xcb\x4b\x9a\x64\x60\x79\x36\xb9\x14\x91\xcd\xdd\xbe\x6d\x94\xcd\x80\xd7\x14\x4a\x7f\xe7\x80\x42\x88\x86\xcd\xe2\x4e\x40\xaa\x2e\x14\x91\x5f\x8d\xc0\x40\x44\x6d\xf0\xab\x33\x94\x65\x35\x65\x0e\xad\xd5\x66\x2d\xd3\x66\x34\x15\x49\x2c\x0b\x48\x2d\xe9\x61\x4f\xbb\x23\x64\x65\xbb\x59\xd6\x36\xba\xb3\x05\xc5\x06\xa2\xb6\x6a\xcd\xee\xdd\x4c\x5b\xfb\x2c\xdc\x99\x02\x39\xe9\xeb\x6c\x3e\x63\x31\xc9\xc2\xc6\xa8\x08\x67\xac\x14\x88\x91\x44\x50\x54\xa3\xa5\x6d\xf5\x76\x77\x4d\xde\xa0\xf9\x4e\xdc\xa6\x6e\xad\x54\xae\x17\x8a\xfb\x9c\x85\x8a\x13\xcb\x9d\xed\x98\x16\xb9\x47\x9c\x46\x51\xb9\x5b\x5e\x8d\x0a\x92\x2d\xcf\x54\xd8\x07\xee\xac\xb0\x65\x21\x0e\xb8\x93\xe0\x3e\xdc\x80\x71\xc5\xd8\xb8\x7f\xa3\x54\x2d\xac\x5e\x5f\x3c\xbb\x78\xfc\x46\xaf\xcc\xa3\x78\x4a\x9f\x93\x25\x85\xd4\x99\xc5\x81\xd4\x77\x91\x14\x66\x0a\xfb\xc5\x75\x30\xd6\xd3\xe7\x2f\x7f\xda\xca\xb0\x5e\x5b\x6f\x2e\xfe\xf9\xe6\xd1\xab\x8b\x47\x5b\x25\x15\x2e\x1a\x0b\x92\x3c\x12\x82\xb3\xab\x54\x50\x60\x71\x4a\xa6\x7a\xeb\xed\x80\xaf\xd7\xd4\x49\xa8\xa8\xfb\x8a\x2c\x4b\xdd\xdd\x42\xd5\xde\xb5\x7e\x14\xaf\xd5\x1b\x8b\xa3\x57\x72\xb1\x0c\x5c\x94\xb5\xb0\xb8\x3e\x4a\x95\x98\x5d\x58\x58\x57\x65\xd9\x29\x75\x65\xd0\xdd\x76\xe3\x02\x1d\x6a\x85\x4e\x99\xf2\x79\xb0\x24\xb9\xe7\x08\xc9\xe8\x3b\x0b\xe9\x34\x37\x5a\x03\x20\x62\x78\x1a\x07\xca\x91\x21\xa3\x7c\xdd\x42\x78\xc0\xb2\x2e\x3c\x8f\xa7\x34\x0b\xe4\xa2\xee\xfd\x30\xee\x55\x54\xa0\x89\xf2\x95\x24\xd3\xa9\xce\xc8\x64\x53\x23\x33\xa8\x6d\xb1\x2a\xd9\x1b\xee\x0c\xde\x6d\x84\x19\x6d\x62\xeb\x0c\x4d\x79\x6b\xb3\x76\x1b\x58\xaf\x75\xd0\x0b\xaa\xcc\x8c\xf9\x2e\xdb\x98\x4e\xd6\x6b\xf5\x83\xc7\x13\x08\x33\x7f\xaf\x99\xba\xc4\x58\xbc\x2f\xef\x2f\xfe\x7f\xd9\xfb\xdb\x2e\x49\x6e\xeb\x40\x10\xfe\x5e\xbf\x22\x33\x4e\x3b\x05\x30\x51\xd9\x99\xdd\x24\x25\x46\x77\x30\xa7\xd9\xdd\x7c\x91\xd8\xcd\x16\xab\x29\x8a\x0a\x86\x4b\xa8\x4c\x64\x65\xb0\x23\x11\x49\x04\xa2\xaa\xab\x2b\xe2\x1c\x8b\x7e\x6c\x8f\xc7\x7e\xd6\xde\x9d\x59\xed\xac\xad\xb1\xd6\x33\xf6\x78\x7d\xce\x7a\xac\xb1\xad\x59\x59\xb2\xe8\x0f\x1c\x7d\xaf\xfe\x0f\xa2\xec\xfd\xb6\x3f\x61\x0f\x2e\x80\x08\x44\x64\x64\x55\x51\xa4\x3c\x7e\x21\xd9\xa7\x32\x5e\x10\xc0\x05\x70\x71\x71\xef\xc5\x7d\x21\x69\x23\x8d\xc0\x46\xfd\xcd\x24\xbb\x90\x60\x12\xfc\x0c\x89\x34\x19\x06\x04\xa9\x4d\x3f\xea\x14\x1f\xfb\x36\x86\x8b\x76\x4b\x24\x02\x97\x84\xad\x62\xe9\x77\xb2\xc7\x41\x18\x75\x27\x25\x80\x64\x65\x08\x75\x74\x14\x43\x07\xc3\x08\x9b\x50\xcb\x98\xf0\x60\x4c\xe2\xca\x0c\xe6\x06\xbf\x19\x43\x92\x42\xa1\x76\x9d\x85\x4d\xd0\x09\x77\x33\xf9\x98\x48\xdc\x4c\x99\x9f\x2e\x16\x9d\x81\x5d\x3a\x9a\x26\x3a\x9a\x2d\x89\x83\x10\xf4\x94\x7c\x30\x90\x15\xf5\xd2\x09\x9f\xac\x53\xc4\x8d\xf4\x26\xbd\x91\x0e\x87\x98\x87\xa9\x82\x42\x1b\x2c\x99\x9b\xd1\xbe\xbe\x8d\x8d\x97\x52\xe8\x70\x53\xd6\xda\x08\x42\xe6\x06\xb1\x6f\x5c\x1b\xa1\x5d\x00\xb8\x24\x35\x59\x90\xf5\xf5\xe8\x61\xcc\x4f\xee\xae\x62\x29\x99\x08\xe4\x26\x67\x65\x0d\x19\xae\x6b\x3b\x86\x67\xb7\x45\x76\x34\x9e\x69\x7d\x36\x18\xf4\xe5\x60\xd0\x17\x9b\xfc\xef\xbd\x38\x03\x17\xd6\x2a\x5a\x46\x35\x6d\x26\x86\x16\x1f\x69\x22\xdf\xf4\x6a\x73\x12\xef\xed\xb1\x59\xca\xeb\xef\x1c\xd6\x59\xaf\x96\xaa\x9e\x05\x6f\xc6\x44\x72\xea\x78\xb8\x8c\x45\x67\x15\x36\x56\x9e\xae\x84\x03\x3d\x73\x1c\x77\xb7\xc8\xd3\x4c\x2d\x5d\xc8\x1a\x62\xf3\x9d\x82\x97\x1e\x39\x9d\xb3\x4c\x8a\xb4\x11\xdc\xcc\x52\xa8\xcd\xe2\x90\x20\x17\xea\xad\xdb\x56\x05\x2e\x6e\xbf\x6d\x61\x65\x94\x35\x76\xb3\x40\xcd\x7d\xa1\x13\xd6\x12\x77\x83\xfb\xc9\xaa\xde\xda\x35\xbc\xd1\x3b\x33\xcb\x17\xf6\x2d\x46\x15\x6d\x3d\x48\xe7\x27\xc4\x58\x93\xdb\xba\x3a\xa7\xf7\xe5\x58\x64\x72\x3b\x86\x90\xde\xab\x0f\xef\xbd\x7e\x57\x07\x70\xd1\x37\xb7\xb5\x99\x54\x9c\x72\xd2\x4b\x45\xef\xbe\x19\x7a\xaf\x1d\x05\x15\x9f\x4a\x98\x97\x2e\x83\xab\xca\xba\x50\x71\x0d\x3d\x9b\x97\x24\x5d\xb8\xad\xe9\x34\x7b\x7a\x9f\x54\x00\xeb\x94\x9d\xba\xb1\x8e\xf4\x20\x1b\xdc\x80\xdd\x12\xac\x9a\x76\xa7\xa3\x6d\xe4\x85\x9a\x6b\xab\xba\x11\xa9\xcd\x59\x14\x45\xf5\xa2\xd9\x65\xfd\x1a\x0f\x06\x9e\x26\x1f\x5e\x0c\x02\x0b\x72\xd3\x17\x16\x85\x34\x8b\x21\x1c\x47\x3a\x7d\x65\xd6\x0a\xb0\x7e\xce\x11\x5a\x51\x34\x06\x44\xf7\x01\xb4\x20\x5d\x21\x54\x2b\x30\xed\x6a\x04\x00\x2f\x1c\x8b\x0e\x73\x2c\x4b\xb8\x9e\x3b\x2f\x9f\x19\x0d\x52\x43\xe7\xc1\x54\xa5\xde\x98\x76\xb6\x2f\x6f\x41\xa8\xda\xce\x2e\xbf\xc0\xf5\x07\x65\xe9\xa6\x8f\xd7\x70\xc4\x9b\x12\x95\xc2\x7e\xd0\x7f\x1e\x52\xc9\x1e\xc2\xc9\x12\x64\xd2\x34\x87\x4c\xfa\x1c\xbc\xf1\x5a\xed\x07\x66\x49\x2a\x42\xb2\x8d\x3c\x13\x4e\xd2\x6a\x94\x3b\xcf\x3e\x5a\x1d\x9d\xc6\x6e\x4a\xa0\x7a\x68\xba\x4e\x65\x55\xe1\x9a\xbd\xb6\xab\x16\x6f\xa9\x00\x75\x1d\x02\x23\x56\x73\x52\xef\xe7\x4c\x9c\x68\x2e\x2b\x15\xb7\x60\x86\xf1\x46\x52\xa2\x15\x5d\x77\x92\xa2\x8a\x78\xd4\xdd\x06\x0d\x75\xd9\x4e\xa5\xde\x25\xb7\x55\x6b\xb5\x6f\xae\x1a\x0d\xc2\x61\x8c\x15\x10\x36\x0a\xec\x48\x5b\x24\xa8\xae\x6c\x27\xd4\x1a\x5a\xa5\x4f\xee\x75\x3c\xcd\x3a\x1e\xa6\x1d\xcf\x8e\xd9\xc1\xa3\x58\xb6\x5e\x6c\x99\x6e\xcd\x2a\xdd\x60\x83\xc1\x0b\x7d\x97\xe6\xdc\xd0\x1d\xef\x9a\x7e\x03\xb0\xe2\x7b\xcd\xa5\xda\x86\x2b\x19\x8f\x69\x63\x43\xc6\x81\xa1\xbd\xd0\xfe\x51\xdb\x6c\x54\x66\x90\x63\xe0\x1e\x46\x5c\x49\x82\xe9\xe5\xb4\x2f\x01\x45\x2d\xcd\x4b\x67\x14\x7c\x25\x9a\xfe\x83\xa9\x5d\xa8\x0e\x6b\xda\x48\x4d\x6d\xd7\x34\xdb\x48\xe9\x7d\x43\xdc\x94\x6e\x4e\x79\xcb\x24\x87\x22\xda\xe1\xa3\x5a\xda\x0d\xdc\x9b\xa2\xe8\x4f\x08\x9c\x0c\x2f\xe2\xc3\x5c\xbf\xef\x8f\x89\x07\xb2\x8b\xa2\xce\x7c\x30\x40\x7c\x74\x2c\xb4\xa0\x12\xf4\xc7\xdb\x75\x02\x1c\xbc\x57\x38\xae\x8f\xb2\xea\x73\x79\xd7\xfa\x5c\x0c\x06\x0c\x39\x88\xac\xf8\x17\x0e\xcf\x08\x57\x22\x6b\x09\x09\xb6\xba\x3b\x2d\xf1\x69\x7f\x43\xbb\xd0\x47\x0d\x9a\xbf\x8d\x9d\x33\xd1\xe1\xd5\x22\xee\xd1\xde\x2c\xa1\x59\xd6\xa3\x59\x8f\x56\x70\x7a\xb8\xd4\x84\x99\x55\x51\x78\x21\x00\xf0\x1b\xfa\x34\xba\x0a\xe1\x18\xf3\xd8\x15\xca\x6c\x77\x33\xc4\x48\x08\x01\x6d\xbc\xe6\x87\x9e\xd1\x2e\x38\x5d\xd2\xb6\xeb\xed\x9c\x75\x2f\x8e\x07\x83\x6a\x7f\xad\x93\x88\x8f\xa3\xa9\x7b\xe3\xdb\x70\x0d\xfa\xec\x2f\xb0\x87\x80\x55\x70\x61\x6d\x7c\xeb\x5a\xe6\x1a\x0b\x6e\xc3\x77\x33\x7b\x65\x12\x98\x68\xb2\xcf\x2a\xa2\xaf\xd3\xd2\x3c\x86\x47\x70\x46\x08\x0f\x44\x7c\x78\x08\x1f\x9b\x2b\xfd\x58\x4b\x9d\x6c\xfe\x50\x95\xf7\xbc\xb2\xd4\x21\x7d\xbc\xc6\x18\x75\x0c\x40\xd5\xc8\xd4\xa9\xe6\x65\xfa\x88\x21\xec\x3b\x50\x99\xc8\xa7\xfa\xb5\xde\x80\x20\x88\x85\x6e\xa4\xfe\x6a\xeb\x10\x6b\x9b\xd0\xc0\x13\x52\xad\xf2\x8a\xe4\xdb\x0b\x4b\x55\x0f\x1b\xda\x81\x79\x2c\x3c\x63\xcb\xad\x77\x58\x0d\x98\x09\xd8\x42\x1f\xb1\x57\xc1\x4a\x5e\xdc\xa6\x49\x72\x40\x67\x5d\xc9\xf9\x59\xe3\xcb\x72\xe3\xd3\xa0\x39\x59\x9b\xfb\xbe\x37\x4b\xe2\xd9\x23\x6f\x6b\x9b\xb8\x28\xfa\xe3\xfa\xad\xea\x48\x5b\x37\x60\x3a\xa7\x1d\x97\xa8\x60\xd4\xc3\xcd\x0f\x46\x99\x3c\x49\x14\xa7\xcd\xe5\x5e\xfc\x84\x05\xde\xe4\xda\x5a\x7a\x9d\x65\x0e\x52\x31\x67\x22\xf0\xc6\xdd\xaf\xd7\x74\x3e\x57\x2c\xda\xb6\xf7\x2b\x2a\x0e\x63\xbe\xfd\xf3\x54\x9f\x06\x07\x1e\x35\x99\xda\x3b\xcb\x85\x72\xea\x81\x4d\xa9\xe7\x7b\x09\x5b\x48\x2f\x0a\xbc\xdd\x17\x5e\x78\xe1\x85\xf5\x63\x9b\x00\xc7\xa8\x4d\xd6\xf4\x90\xbd\xf3\xc6\x62\x91\x31\x59\x14\x5b\x67\x3d\x9b\x89\x34\x49\x1e\xa6\xeb\x9d\x2e\xa0\x64\xba\x0e\xc4\xd0\x5b\x3f\xde\x80\xe5\x1c\x55\x52\xb3\x24\x20\x65\x50\xe1\x3a\x69\x4f\xfa\x7a\xcd\xf8\xfc\xf6\x32\x4e\x74\x80\xe9\xea\x43\xdc\xb1\xb8\x62\x84\x3b\x0b\xcd\xd2\xf5\xc9\x43\x30\x6c\xa8\xd6\x45\x8d\x7a\xdb\x56\x9e\x83\x50\x83\x01\x6a\x81\xd5\xc5\x55\x5e\x88\x8e\x9b\x18\x0e\x7c\xd8\xd6\x25\x03\x1a\xdb\xe6\x70\x6d\x83\x64\xfb\x00\x55\x98\x0f\xb5\xb5\xe8\x82\x26\x17\xdb\x46\xa0\x7b\x6c\x35\xd5\xd9\x3e\xb2\xf6\xd1\x56\x7a\xa3\xc9\xb7\x89\x57\x5a\x21\x1e\x7b\xcc\x66\xb7\xd3\xd5\x8a\x9a\x48\xe2\x86\x62\x3b\x71\xb8\x58\xd0\x37\x69\x69\xb4\x07\xce\x9b\x2c\xcb\x13\xa9\x65\x0d\xdd\xb4\xfb\x7c\xa3\x79\x1b\x1a\xd6\x10\x76\xf8\x45\x8a\x95\xc8\x67\x33\x96\x65\x9e\xef\x69\xff\x37\x72\xaa\x5b\xf6\x1d\x28\xb4\x1f\xee\xc6\xa0\x10\x43\xe7\x7d\x97\xfc\x13\xb0\x65\xa8\x08\xbb\x7e\xd7\x7c\xe6\xc6\x4b\x77\x06\xae\x51\x66\xeb\x86\xa0\x5b\x31\x54\xdf\xdc\x55\x9a\xe2\x6a\x38\x15\xdc\x47\x96\xbc\x8d\x0e\x92\x5c\x20\x4c\x3a\x15\xa6\x9b\xda\xcf\x0a\x22\x23\x50\x6d\x03\xa5\x41\xbe\xed\x37\xd4\x40\x9f\x31\xf9\x99\xed\xe6\x80\x53\x1e\x1c\xe4\x42\x3a\x18\xbb\xab\x13\xfd\xa2\x4a\x7b\xa3\x9f\x0f\x06\xde\x2c\x97\xed\xa7\x1b\xda\xaf\x2f\xd8\xd3\x5f\x0b\x72\x4f\xdb\x35\x42\xda\x21\x16\x43\x74\x79\x5d\x7f\x2f\x55\x57\xb9\xf4\xbe\xa0\xa3\x80\x6f\x0b\x8f\x6f\x5a\xaa\x86\x42\x9a\xd5\xd5\x18\x0a\xe6\xd8\x3a\x2a\x49\xc0\x28\xe9\x8a\xc2\x9e\xee\xf4\x83\x00\x39\xf6\xc0\x6e\x9a\x87\x54\x89\x5d\x45\x31\x69\x48\x10\xe7\x74\xcc\x00\xe0\x76\x8c\xf6\xf4\x3b\x83\x19\x5f\xd0\x86\x5d\xd0\xcd\xc0\x0c\x98\x1d\xc5\xb6\x46\x7e\x1e\x67\x8a\xc1\x9d\x7b\x9b\x11\xae\x36\x9b\xa4\xf6\xbb\x51\xef\x41\xc2\x68\xc6\xa0\xf5\x7a\x27\x00\x6e\x94\xd1\x79\x2f\x5d\xf4\xea\x9a\xeb\xcf\x2c\x60\xb9\xdc\x80\x0b\x6d\x3f\xc7\x28\x8a\x73\x80\xfe\x64\x50\xbf\x93\xe6\xbd\x19\xe5\xef\x7e\x41\xf6\x66\xb9\xec\x29\x02\xd0\x5b\x88\x74\xd5\x63\x7a\xe4\x4c\xc2\x24\xa7\x47\x0a\x4b\x3a\x7a\x92\x7d\xc1\xf0\x49\xfb\x96\x8b\x2c\xcf\xc7\x22\x5d\xac\x2c\x23\x4c\x98\x62\xf4\x13\x1d\xb3\x75\x06\xe2\x5a\x82\xc9\x02\xe2\x12\x93\x39\xdc\x2f\x30\x59\xfe\x53\x17\xdf\xd6\xff\x12\xc5\xb7\x55\xb0\xe5\xec\x08\x7c\x21\xff\x01\x24\xb8\x4a\x19\xb0\xd9\x94\x4b\x53\xde\x64\x90\x10\x6c\x66\x1b\x00\x7f\xa2\x25\xcd\xf8\x17\x64\xef\x80\x31\xde\x33\x16\x90\x71\xc6\xe6\xbd\xdd\x5e\x96\xaf\x99\x40\xb8\x51\x42\x01\xa3\x56\xa0\x51\xe1\xf5\x65\x83\xd8\x51\x24\xb1\x8b\x5a\xfd\xda\xb0\x9b\xf9\xd2\x00\x8b\xe4\x68\x7f\x1f\xc6\x73\x7f\xbf\xb2\x10\x38\x64\xf2\x81\x1d\xe2\x37\x16\x90\x2a\x1f\xd4\x4f\xb0\xb1\xd6\xe7\xc9\x6d\x19\x55\x4d\x06\x24\xae\x62\xfc\xb6\xe2\xd8\xe0\x0c\x70\x63\x46\xab\x7c\x25\x1d\x80\x0d\x06\x8a\x99\x6a\xe5\x30\x71\x4f\x45\xd4\x20\xf4\xea\x7c\x9d\x5a\xe9\x6d\xf6\x94\x03\xd6\x53\x5f\x2b\x72\x51\xcf\x0a\x01\x7f\x2d\x6f\xa8\x06\x03\xef\x30\xe7\xec\xb0\x79\x88\xaf\xa4\x3d\x07\xaf\x1a\x61\xec\x2b\xc7\x07\xf7\xd8\x7e\x42\x2c\x66\xfb\xfd\x31\x71\x57\x81\xdf\x1f\x97\x25\x26\x72\x30\x40\xa6\x8d\xac\x31\x9e\xd3\xce\xa7\x30\x2e\x3e\xab\x67\x23\x90\x0a\xa1\x08\xc3\x64\x8d\xe4\xff\x10\xe1\xbe\x5b\x77\x0a\x4f\xa6\xf6\x42\x73\x61\xc6\x3a\xe0\x96\xa3\x0b\x30\x34\xb9\xb3\x0e\xfd\x6e\x6a\x2f\x1a\x75\x3c\x6c\x2b\x02\xba\x6b\x50\xd2\xbb\xfe\x69\x7e\xbd\x29\xe9\x04\x8e\x75\xc7\x12\x39\x8a\x09\x3c\x75\x6e\xfc\xc6\xf9\x4b\xc5\x69\x38\xd8\xdc\xc5\xf7\xd6\x99\x0c\xf4\xc0\x25\x46\x64\x09\xe6\x08\x23\xc5\x45\xe9\x0f\x3b\x93\x52\x8c\xd2\x6a\x95\xe8\x24\x21\xba\xc5\xf4\xa2\xd6\x58\x4b\x29\xae\xb6\xe6\x59\x2e\x04\xe3\x66\xec\x4c\xe6\x25\x6b\x02\x75\xcb\xee\xee\x5d\x8f\x5d\x51\x68\xe3\x15\x3b\xee\xe5\xa8\x83\x69\x07\x65\x94\x33\x73\xfa\x1a\x9e\x56\xf3\xa1\xae\x4c\xd6\x45\x33\xc0\xcd\x59\xa9\x39\x7c\x62\xe4\x06\x28\x50\xba\x3c\xb2\x83\x53\x5d\xc3\x61\x0f\x85\x50\xc5\x1a\xb3\x8d\xaf\xb7\xc8\x61\xd5\x60\x1e\xa1\x8a\x99\xd4\xa6\xf8\x95\x75\x50\xb7\x86\x1e\xc9\xcd\x26\xba\x44\xb2\x06\x78\x3a\x76\x0b\xbb\x34\xfb\x6f\xb1\x68\x64\xca\xa1\xee\x09\xda\x32\xa5\x17\x7c\x65\xc5\xd5\xc8\x92\x94\x38\xdb\xd3\x19\x2a\xd8\xfc\xb3\xa6\x27\xa1\xe6\x7f\x09\x70\x9b\x11\x91\x1d\x2e\x71\x53\x70\x84\x23\x22\xe8\xf7\x9b\x23\x6e\x44\xd6\x0a\xb6\xca\x24\x61\x8b\x91\x7e\x20\x06\x83\x8b\xea\xd0\x4b\x8d\x08\x60\x01\x65\x89\x66\x23\xea\x1c\x99\x1d\x35\x92\xd6\xcc\xa9\xa4\xbb\xd5\xd8\xed\x7a\x43\x30\x17\x93\x4d\x2e\x58\x38\xc1\xae\x1b\x6a\x3c\x81\x4b\x69\x69\x52\xb0\x2a\x23\x5c\x19\x50\x91\x86\xb1\x19\xec\xd0\x4d\xeb\xb3\x69\x7d\xce\x91\x22\xec\x23\x30\x1a\xae\xe4\x16\x14\x77\x10\x44\x24\x82\x14\x4f\x85\x3d\xdf\x23\x1c\xfb\x02\x17\x05\xaa\x6b\x8a\x31\x2e\x9d\x4d\x9c\x08\x34\x79\x0e\x43\x1e\xdb\xee\xd3\x44\x12\xbb\x41\x8c\x6b\x7b\xd2\x4b\x9e\x68\xfc\x93\xb1\x27\xad\xd9\x41\x48\x79\x5f\x4f\x45\x0a\x53\x53\x4b\x93\xce\xac\x64\x08\xfb\x17\xcc\x07\x0f\x32\x3c\xe5\x66\xbc\x89\x80\xf8\x02\x3e\x6f\x4f\x49\xd9\xc8\x99\xdb\x99\x7e\xc6\x5b\xc5\x89\xe2\x00\x67\x29\x9f\x7b\xb0\x80\xcc\xa5\x50\xaf\x38\x28\x2b\x79\xe0\x2d\xd3\x5c\x78\x24\x56\x58\x7b\xe2\x11\x1a\x78\xc7\x8c\x3d\xf2\x48\x16\x78\xab\x94\xcb\xa5\x47\xf2\xc0\x7b\x3f\xa7\x42\x32\xe1\x91\x24\xf0\x4e\x18\x15\x1e\x99\x01\x96\x33\x8f\x2c\x20\x19\xc6\xfc\xf4\xd9\x12\x87\xbb\x57\xa3\xa9\xba\x9e\x90\x6b\x25\x9e\x56\xb7\x63\x75\x1b\xfe\xf2\x78\xf7\x85\xe8\x99\xfa\xb5\x3f\xed\xbe\x1e\xa9\xeb\x21\x9e\x5e\xb9\x4a\xe6\xc1\xd5\x77\x43\x14\xfe\xf2\xbb\x51\x34\xc4\x51\xf1\xce\xe9\x35\xf2\x6c\x59\xdc\x3b\x9d\xa8\x9f\x3b\x50\xbe\x98\xeb\xbb\x57\xf5\xdd\x52\xff\xd0\xe2\x56\xb1\xd2\x97\x99\xfe\xf9\x86\xfe\xd9\xdb\xdb\xbb\x7a\x48\x96\xc1\x29\xa7\x2b\xe6\x7b\x8c\x7b\x44\x75\x77\x4e\x4f\x32\xdf\xdb\xcb\xf9\x9c\x9e\xec\xdf\x4b\xe1\xe7\x61\xce\x32\xf5\xfb\x36\x9b\x73\x7d\xf5\x70\x99\x0b\xb8\x78\x59\xc4\xea\x67\x8f\xca\x5c\xa8\x51\xb3\xb9\x15\xf7\x3d\x4c\x60\xd0\x32\xdf\xfb\x32\xe5\x39\x15\x27\xfb\x2f\xb3\x03\x01\x17\xf7\xa8\x98\x2d\xf7\x6f\xad\x45\x9c\xec\xdf\xa3\x27\xfb\x5f\xce\x39\xdb\xff\x72\x9e\x9c\xec\xdf\xca\x0f\xf3\x4c\xee\xef\xb1\xb5\x64\xab\x03\x26\xf6\xdf\x98\xc9\x54\xfd\xde\x4f\x8f\xf4\x83\x3b\x6c\x06\x17\x6e\x4b\x0d\x11\xad\x71\x9a\xbf\x67\x0d\x47\x2c\x6f\xcf\x8b\xc2\x5a\x4e\xbd\x18\x28\x0e\xde\xf3\x86\x70\x4e\x8c\xe4\x70\xb2\xcb\xab\xe8\x57\x60\x69\x2e\xf0\x90\x95\x64\x15\x9c\x66\xfe\x9a\x3c\xe9\xd8\xf7\x76\xd9\x28\x97\x33\xad\xa4\x86\x54\xfd\xf7\xa8\x5c\x8e\xe8\x01\x1c\x34\x71\x7d\xb7\x48\xd2\x54\x20\x71\xf5\x79\x7d\xa4\xf9\x4b\xcf\x5b\x0f\x3a\x24\x6f\x06\xe3\xa9\x37\xf4\x7c\x6f\xd7\xc3\xc3\x35\xe2\xe4\x1a\xf1\xc6\x3a\xfd\xc5\x70\x8d\x62\x73\x5b\x92\x3a\x11\x4c\x8f\x55\x21\xbd\xe5\x68\x0e\x4e\x48\x37\x85\xb9\x30\x34\x74\x97\x41\xa6\x2f\x1b\x42\xef\xda\x33\x48\x8c\x4e\xc0\x7b\x69\x57\x9a\x0b\x3c\x44\x62\x04\xb3\x03\x0f\xcd\x95\x02\x4f\x8e\x66\x49\xca\x19\xc2\xe0\x7e\xc5\x49\x06\x41\x68\x76\xe3\x9b\x63\x42\xdb\x2f\x87\x28\x9d\xee\x4e\xfc\x09\x26\x95\xf5\xc3\x10\xed\xaa\xe7\x62\x37\xc6\x57\x51\x3a\x8d\x77\xa9\x4f\x77\x63\x8c\x8b\x62\x8c\x4b\x42\x3b\x89\xd3\xcd\xf1\x14\xc6\x69\xc6\xe2\x04\x31\x55\xd4\x77\xc6\x0d\xe4\xef\xa6\x33\x9a\x76\x94\xbc\xe7\x67\xe4\xc4\x4f\xc8\xb1\x4f\xc9\xdc\x8f\xc9\x1d\x7f\x46\x96\x3e\x27\x2b\x5f\x90\xcc\x97\x64\x95\xf9\x8c\x7c\xd5\xcf\xcb\x30\x8d\x8a\xc2\xe0\x41\x5a\x14\x9e\x87\x9b\x21\xcd\xeb\x7c\x3a\xd9\x95\xab\x3a\x99\x4e\xde\xc9\x81\x54\x3a\xaf\xb2\x24\x47\x01\x2c\x98\x93\xe0\xb4\xdc\x39\x09\x8f\xa2\x60\x09\xe3\x7d\xd0\x99\x57\xda\x95\x8b\xef\x96\xe4\xb0\x1b\x57\x77\xb4\x64\x6b\x5b\x03\xf5\xd2\xc6\x3e\x8f\x4f\x42\x16\x0d\x06\x88\x07\x4c\x8b\x46\xea\x3e\x00\xe7\x1f\x0c\xc6\xb7\x26\x4a\x91\x76\x76\xdf\x39\x09\xe3\x28\x60\x84\x07\xb1\xf5\x35\x15\x83\x81\xe2\x78\x8e\x02\x8e\x09\x2f\x0a\x75\x7f\x54\x92\xfd\x4d\x21\xfb\xc0\xb1\xb6\x62\x76\xe2\xcd\x09\x4d\x93\xbe\x4f\xa5\x7f\xea\xda\x2e\x53\xc9\xc0\x92\x9e\x8a\xc3\xac\xe6\x6a\x20\x54\xff\x5d\xc8\xc3\x7d\x1c\xac\x76\x8e\x47\x49\x70\x48\x8e\x47\x71\x70\x40\x8e\x47\xc7\xdd\xf6\xcd\xfb\x88\x91\x53\x88\x98\xc3\x7c\x39\xba\xf2\x3a\xc9\xe5\x4c\x5d\xe4\xe4\xb1\xfa\x79\x4c\xae\xa4\xb0\xf4\xd4\x8d\xbe\x2a\x8d\x1f\xf6\xdd\x4e\x95\x4d\x5a\x29\xd9\xaf\xbc\x1e\x98\xdf\xa2\x38\x44\x4c\x87\xe5\x61\x04\xce\x3b\xfa\xe3\x2a\xd3\xa2\x0e\x9a\x63\xdc\x37\x9d\xfc\x7d\xb6\xb7\xcb\x8d\x40\x51\xb6\xfe\x79\x97\x81\x38\x8c\x0d\x44\x67\xca\xe5\x0c\x2c\xdb\xf2\x24\x71\x1c\xca\x41\x4e\xbf\xa3\x16\xf3\x7d\x7a\x1f\xf8\xe8\xe3\x51\xee\x18\x55\xd8\xd7\xc0\x42\xb9\x58\xa5\x1e\x6e\xd4\x21\x71\x27\x0e\xc9\xc1\xa0\x7f\xf5\x1b\x57\xae\xc6\x55\x3e\x00\xab\xa7\xd2\x66\x1c\x68\xa1\x8d\xee\x6c\xc0\x2b\x1e\x5e\x8b\x76\x27\x45\x31\x26\x69\x80\x78\xf8\xc5\xa8\x28\x14\x55\x32\xc1\xfd\xd4\xaa\x1a\x93\xeb\x75\xc4\xab\x69\xd5\xbe\xfa\x33\x7a\xeb\xe1\x6d\xc4\xc3\x49\x44\x62\xc2\xc3\xeb\x51\x51\x4c\x08\x0f\x9f\x8d\x54\x75\x3c\x7c\xce\xfc\x3e\x0f\xbf\x29\xc6\x7e\xf5\xf1\xa5\xbf\xa9\x74\x5d\x4e\xbf\xcb\x2a\x59\xe6\x95\xc7\x01\x1b\x3d\xae\x93\x86\xc4\x3c\x96\x08\x97\x64\x09\x57\x9b\x81\xa3\xcd\xe4\x69\xd9\xef\xca\x49\xc0\x14\x3f\xfa\x72\x9e\x24\xef\x68\xff\x4f\xfd\xfc\x9e\x7e\x7e\x4f\xd3\x4d\xf3\xf0\x8e\x7e\x08\x20\xd8\x67\x6f\xdb\x67\x95\x18\x71\xe5\x55\xfd\xe8\xd5\x34\x17\x59\xf5\x70\x65\x2a\x04\x56\xa4\x7e\x9c\xe9\xc7\xda\x88\xd5\x29\x9d\xd9\xe2\x15\x53\x93\xe9\x4e\x5d\xc9\x65\x9c\x64\x1d\x67\xd9\xc7\xd0\xe5\xec\x6b\x34\x89\xe7\x9b\xaf\xfb\xb5\xab\x99\x02\xbf\xd2\x68\x5f\x99\x3b\x66\xe5\x7a\xd4\xb2\x3d\xba\x62\x9d\xd1\xf6\xf7\x51\x2b\x23\x2d\xb8\xe1\x82\xde\xeb\xa6\x92\x2a\xc4\x4d\x63\xe9\xcc\xe7\xf0\x50\x57\x77\x6b\xd1\x48\xce\xd2\x5a\xfd\xf8\x66\xab\x26\xfd\xd1\x4b\x6c\x91\x8a\x36\x14\x6e\xd3\xb6\x8d\x9b\xfb\xb0\x81\x2c\x47\x57\x36\x89\x6e\xe5\x1e\x9e\x2b\x69\x41\x7d\x16\xca\xc8\x9e\xa1\x49\x24\x88\xfe\x32\xe7\x9d\x89\xfd\x9d\x2d\x0a\x3e\x01\x89\xef\x8d\x05\xc2\x57\x27\xec\x3a\x7c\x68\x9e\x6c\x49\xbc\xad\xc6\xf6\x90\xc9\x87\xf1\x8a\xe9\xa9\x33\x7d\x74\xc1\x4c\xf5\xd0\xe6\xda\x02\x62\x11\xf4\xfb\x0a\x58\x08\x27\x47\xe6\xc1\xf1\x68\xad\xd0\xbc\xed\x56\x6e\xce\xd0\x47\xc7\x28\x1f\x5d\xc9\xa7\xd5\x22\xcc\x47\x57\x4e\x0c\x03\x6d\x17\x4a\xf5\x88\xe4\xd5\xcc\x2d\xa6\xc2\x17\x66\xfc\xe2\x0d\xc6\xca\x19\x35\x55\xbf\x4c\x35\xb6\x87\x2c\x32\x42\x53\xf5\xcc\xcb\x3c\x4c\xd0\x62\x1a\x8e\x09\xfc\x1f\xf9\xe1\xb5\xeb\xe4\xb9\x17\xd4\xbf\x17\x5e\x78\xa1\x32\xaa\x97\x58\xb5\xae\x98\x2c\xb3\x62\xc8\x91\xb9\xba\x47\x4e\xcc\xd5\x1d\x72\xa0\x38\x76\xe9\x0d\xf5\x58\x5f\xc9\xa7\xde\x5b\x0f\x6f\x7b\xbe\xe7\xe1\x9d\xec\x38\x56\x44\x6b\x8e\x4f\x67\x34\x63\xbd\xc4\xaf\x3a\xb2\x44\x13\x32\xc6\xfe\x12\x5d\x9f\x90\xc9\x04\xef\xc0\xfb\xac\xf9\xfe\x48\xbd\x1f\x93\xa3\xa1\x7d\x4f\x7d\x1d\x28\x41\x37\xa4\xb7\x05\x84\x47\x8a\x33\x06\xb7\x79\x45\x74\xf6\x03\xb4\xba\x79\x38\x5d\x0d\xbf\xe8\xaf\xf0\xee\x61\xb5\x19\xa0\xc5\xf4\x64\x77\xdf\x3f\x19\xa2\xe7\x77\xf7\x31\x39\x32\x55\xc6\x3e\xfc\xcc\x6c\xcb\x6b\x74\x30\xf4\x60\xfd\x7b\x64\x6c\xca\xf0\xc6\x4b\x43\x07\x3c\x62\xa1\x12\x8d\xd7\x86\x1e\x78\xe4\x9a\x79\x2d\x5b\x5f\xd7\x64\xc1\x53\xa4\xd9\xc8\xcc\xbe\x8b\x7e\x66\x43\x2f\x15\xea\xc1\x6c\x77\x71\x2e\x8d\xc5\xc7\x48\x7f\xa2\xd7\x52\xc6\x1c\xca\x99\x12\x6a\xd0\x94\x2c\x00\x27\x53\x0c\x71\x5b\xba\xa7\x8b\x2c\x03\x94\x07\xa7\x25\xc9\x15\x67\x32\x1f\x7a\x40\x6f\x48\x1e\xce\x1a\x77\x19\xdc\xdd\x33\x42\x57\x98\xc0\xad\x25\xc3\xea\x09\x87\x27\x66\x10\xf3\x50\xe8\xf2\x76\xd8\xf2\x50\xc2\x83\x6a\xa0\x72\xc5\x25\xcd\xdb\x43\x93\xe3\x70\x11\x29\x0c\x07\x17\x67\x83\x6b\x43\x44\x77\x0d\x2a\x62\x9f\xaa\x9d\x50\xbd\xce\x8a\x42\xfd\x24\xba\xab\x06\x59\x2d\x37\xac\xc8\xc5\x4c\xcd\xd5\x6a\x74\x65\x1e\x2e\x23\xb4\xc6\x64\x65\xb6\x1a\x62\xd9\x81\x95\x29\x06\x84\x63\x15\x73\x64\x71\x7b\x35\x52\x22\xd7\x6b\xdc\xec\x26\x18\x8f\xae\xcc\xc1\xe5\xa8\xb7\x34\x87\xe8\xb6\xd2\x06\x75\x75\xaa\x07\xf2\xc1\xda\x3e\x7b\x1d\xb3\x0d\x53\x67\x1c\xc2\x96\x8a\xfc\x6c\x9b\xf4\x50\x13\x97\x48\x93\x26\x3a\x9f\x77\x91\x25\x9b\xac\x86\x05\xf7\x21\xec\xad\xa2\xff\xea\x85\x83\x06\xf5\xf9\x53\xbd\x4b\xd4\xb9\x73\x14\x11\x31\xc2\x8b\x95\x61\x86\x30\x3c\x90\x60\x02\xc9\x67\x18\xc6\x64\x86\xcb\x6a\x12\x70\x03\x2f\x99\x44\x99\xdd\x90\x87\x5a\xed\xa8\xe7\xa8\x5d\xca\x98\xb0\x5c\x39\x71\x4a\xc5\x95\x82\x12\x4d\xaa\x87\xb4\x7e\xf8\x45\xdd\x97\x1a\x5d\x45\x14\x3c\xcf\x9e\xd5\xa8\x77\xfd\x79\xf6\x9c\x46\xb2\x09\xbb\xae\xd1\x48\x31\x29\xeb\x60\x83\xb2\x0f\xd9\x33\x4b\xb7\xbb\x6b\x9b\xd2\x78\xa9\xf8\x27\x29\xe8\xec\xbc\x69\x53\x62\xd6\xee\xe4\x19\x3b\x61\x8b\x54\xac\xe8\xa6\xe5\xbf\xd1\x9c\x3b\x79\xbe\x61\x9b\xaf\x04\xc2\xe6\xde\x6e\x7d\xc4\x8b\xc2\x7b\xe7\x9d\x77\xde\xd9\xbd\x77\x6f\xf7\xce\x9d\x87\xaf\xbe\xea\xaf\x56\x7e\x96\x7d\xc3\x23\x3c\x38\x1e\x3d\xd1\x67\x54\x4a\x20\x6c\xd0\x41\x92\x9a\x07\xaf\x2a\x71\x50\x33\x23\x24\xab\x08\x76\x1e\xc4\x23\xab\x43\x20\x49\x10\x6b\xc9\x32\x23\x33\xb7\x8f\xe0\x66\xed\xea\xa6\x10\x0b\x79\x54\x14\x5a\xb2\xc5\x45\x11\x87\x3c\xb2\xa1\xa3\x81\xc3\x23\x9d\xc4\xe9\x78\x94\xa1\xf4\x97\x26\xd7\x8a\x62\x72\x8d\x30\x23\x29\x2f\x55\xa3\x4c\xc4\xf3\x98\xad\x8a\xa2\x5b\x27\xc0\x6e\x4e\xae\x4d\xbd\x5b\xf7\x3c\xdf\x7b\x70\xcf\x73\x18\xd7\xa6\x5c\xe8\x73\xb5\xfb\x9d\xbe\xf3\x8e\x6f\x38\x20\x83\x44\x76\xe7\xda\xbd\x86\x89\x1a\x41\xdf\x3c\x27\xf7\xfc\x6c\x38\x21\xf7\xee\xf9\x0a\x32\x75\xa9\xc5\x77\x72\xef\xde\x3d\x7f\x86\xec\x60\xec\x2d\x53\x21\x49\x46\x12\x72\x1d\x5e\xa9\x77\x89\x92\xb3\xef\xf8\x96\x22\xdc\xb9\x03\x55\xd8\x5b\x53\xcd\xbc\x09\xc7\xdb\x98\xcc\xe7\x50\xaf\x1d\xf1\x7b\x31\xb7\x6c\x27\xc9\xc9\x35\xf5\xbe\x59\x40\x37\x5d\x17\xb9\x0e\x45\xe6\x7e\x1e\x9a\x67\x11\x79\xd5\x36\x92\x62\xf2\xea\xab\x00\x46\x6a\x01\x58\xfa\x0b\x34\xc1\x64\xa9\x7e\xaf\x61\x42\xfd\xa5\x22\xfe\x20\x2e\xdd\xb2\xd7\x13\x4c\x56\xb6\x0a\x8a\xc9\x6a\x05\x55\x50\x5b\x45\xd6\xec\x43\x86\x49\x96\x39\x7d\xcd\x6c\xb9\xbd\xbd\x3d\xe7\xf1\x2a\x23\xd7\xf5\xf3\x6f\xf8\xdc\x91\x34\xad\xe0\x3e\x27\xa8\x7b\x0d\x15\xc5\x1a\x7c\xf8\x78\x55\x14\x12\x8b\x7a\x3a\x48\xe9\xb2\xd6\xdd\x74\x30\x69\x93\xe7\x9e\xd9\x75\x89\x51\x73\x65\x3f\x49\x39\xb3\x6a\x9f\xab\x93\xe7\xa0\xb6\x79\xbc\x68\xb2\x6f\x64\xa6\x51\x6e\x61\xb8\xb5\x54\x6d\x7f\x8a\x23\x25\x6b\x45\x4b\x9e\x41\x4b\x57\x7b\xa4\x77\x1d\xe7\x01\x36\x4c\xd1\xee\x92\x1c\x05\xc7\xa3\x95\x56\x39\xd7\xd1\xc1\x8f\x02\xb4\x50\xb4\x69\xa1\xf6\xc7\xa3\xab\x93\x6b\x64\xa1\x36\xce\x23\xb2\x08\x73\xf5\xe0\x3a\x59\x84\x34\x0a\xd0\x6a\x77\x8d\xaf\x3e\x3f\x7e\xf6\x4b\xec\x39\xb2\x80\xd0\xe9\xf0\xe4\x4b\xcf\x3f\x0b\x0f\x78\x14\xac\xae\x02\x45\x5b\x28\x22\xb7\xba\xaa\xc8\xdc\x42\x11\xb7\x95\xe2\x65\xc9\x02\x87\xf3\xa8\x28\x56\x64\x36\x3d\xf2\x8f\x47\x14\x1d\xe9\xde\xd6\x9b\xd6\x36\x16\x57\x73\x91\x19\x1e\x5d\xb9\x03\x7c\x83\xa6\x22\x1d\xa5\x4f\x0c\x02\xbe\x1e\xa9\x72\xed\x62\xce\xb1\x7f\x83\x81\x7e\x7d\xc7\xf1\x9f\x34\x3b\x1c\xe1\x01\x44\x7d\x57\x58\xe9\x84\x4b\x42\x42\x49\xfc\x1c\x13\xa1\x1a\x80\xb2\x5d\x42\xd2\xe8\xd8\xce\x73\x4d\xa6\x35\x3f\xdb\x51\xba\x96\x37\x1b\xfc\xbf\xf9\xe8\xcb\x7b\x6f\xdc\xdf\x36\x2e\x15\x81\xd6\x3c\x87\x4c\x5f\xdb\x7b\xc3\x4a\x59\x3e\xcf\x93\x44\x57\x51\x3d\x3d\x47\x84\x68\x7c\xab\x3f\xbb\xc4\x37\x6f\x3d\xbc\x5d\x7f\x93\x96\x08\x93\xbd\xe0\xee\xa6\x76\x63\xdf\x39\xe6\xdf\x23\x61\xe8\x5d\x59\x65\x1e\x61\x11\x09\xbd\x2b\x99\x47\x24\x5c\xac\x3c\x22\xe0\xe2\x55\x8f\x70\xb8\x78\xdb\x23\x31\x5c\xdc\xf3\x48\x06\x17\x27\x1e\x49\xe0\xe2\x8e\x47\x66\x51\xd4\x7d\xf4\xb4\x17\xb2\x70\x12\x45\x0d\x9e\xa1\x01\xf9\x21\x92\x84\x85\xe3\x88\xa8\x72\x10\x09\x9c\xec\x8f\xd8\x63\xc9\xf8\x7c\x4b\x68\x2d\x24\xc9\x5d\xb2\x8f\xc9\x7e\x49\xf6\x2d\x5a\x1d\x92\xfd\x51\x9c\xdd\xa1\x27\xef\x65\xc1\x01\xd9\x6f\xc9\x77\xcc\x91\x3e\x27\xec\xfa\x33\x4a\x06\xdc\x1f\x31\x1e\x9c\x84\x47\x11\xd9\x1f\xbd\x9e\x05\x27\x64\xbf\x3c\xe7\xc0\xe7\x5f\x4a\x08\x91\x74\x6b\xc6\xff\x2d\x2e\x9a\x26\x3c\xe2\xd2\x5f\xad\x7a\xb7\x3c\x12\x07\xa7\x09\xcd\xe4\x1d\x7a\xe2\x7b\xe1\x3b\x2c\x93\x4c\xcc\xe9\x49\x8f\xca\xa8\xe7\x0d\x39\xc9\xe8\x8a\xe9\x77\x0f\x53\xf7\x39\x67\x8f\xa5\x7d\xbe\x4a\x85\x48\x8f\x1b\xaf\xde\x66\xec\x91\xef\xa9\x5d\xad\x17\xda\xe7\xaa\x19\xfd\x3c\x7c\x9d\x66\x32\xea\x35\x5f\xab\x96\xee\x26\x19\xf3\xbd\x7b\xf7\xae\xde\xb9\x73\x55\xed\xe9\x5e\xb9\xe3\xfa\x71\x29\xc4\xe1\x73\xda\xd6\x53\x18\xb5\x99\x0e\xb1\xef\x08\x8b\xb6\x78\x51\xc4\x10\xc2\x9d\x15\x85\x89\x7a\x57\x09\x53\xde\xdc\xc3\x96\x85\x52\xfb\x06\x4a\x89\x37\xf7\x60\x2f\xcd\x02\x7a\x73\xf7\xf9\xa9\x67\xe1\xf2\x7c\x7a\x73\x77\x32\xf5\x6c\x37\xd4\xfd\x58\xdf\xde\xa1\x27\xea\x6e\xa2\x0b\x9b\xbb\x6b\x53\xcf\x0c\x92\xba\xfb\xa2\xbe\xd3\x1f\xd6\x75\x92\x3c\xe0\x61\x16\x29\x66\x2b\x8b\xb6\xc7\x51\xcc\xa7\x79\xe3\xb4\x13\x1b\xcf\x0e\xcd\x89\xa2\x1c\xc2\xad\xd5\xda\x60\xba\xfd\xb4\x2f\xbd\xcc\x69\x5f\x7a\x99\xd3\xbe\xed\x7e\x9b\x5f\x6a\x3a\x6e\x3a\x91\x35\x5c\x0d\x70\xad\x24\x41\x52\x4d\xde\x69\x89\x47\x73\x06\x71\x8a\x99\x28\x0a\x6f\xe4\x29\x2e\x77\xb4\xa2\x8f\xef\xb0\xb5\x5c\xc2\xb9\x07\x04\xbb\x53\x9d\xfe\x0a\x3b\x51\xb3\x9a\x39\x39\x2b\x9c\xa3\x99\x98\xe4\x24\xc1\xa7\x49\x90\x28\x71\xc0\x8d\x31\x19\x77\x05\x96\xb4\xec\x41\x10\x87\xb3\x88\xcc\x03\x39\xca\xe8\x82\x0d\x06\xda\x6f\x31\xce\xf4\xb9\x14\x58\x50\x5e\xe0\xcf\xba\x80\xf4\xea\xea\x67\x15\x54\x0e\xb1\xfa\x1b\x70\x87\x5d\x3a\xee\xbc\x50\xab\x7e\x4a\x8e\x82\x7c\x9a\x0f\xc5\x90\xa2\x19\xf6\xd5\x1f\x90\x22\xe6\x83\x41\x7f\x3d\x18\xac\xaa\xc0\x33\xd0\x85\x05\xae\xc3\x38\xf6\xeb\xf1\x29\x8a\xe4\x66\x5a\x9f\x14\xa0\x05\x39\x22\xc9\x70\x82\x77\xb2\xf0\x28\x0a\x16\xa5\x4e\xf9\x4c\x32\xc7\xef\x30\x25\xa9\x4d\xe3\x09\xd7\x39\xb7\x77\xed\x63\x2e\xed\x71\x8b\x44\x20\x3a\xe7\x29\x0b\xc4\x28\x3d\x62\xe2\x58\xc4\x52\x1b\x52\xe6\x81\xd8\x98\xac\x44\x4d\x56\xbc\x40\x6a\x47\x71\xc6\xc1\x0e\x4f\xff\x42\x6f\xe1\x5a\x01\x2f\x6b\x04\x9b\xd5\xe2\x57\x2d\xfe\x5a\x4f\xd2\xec\x3e\xbd\x0f\xad\xed\x6a\x5b\xe8\x2a\x1e\xd7\xc8\xc3\x45\x21\x46\x1a\x04\xb0\x1f\xb4\x35\x07\xee\x58\x4b\x3c\x12\x6c\x9e\xcf\x58\x77\x02\x9e\x8b\xe0\x0d\x79\x15\xe6\xa1\xab\xbb\xf1\x60\xd0\xc6\x06\xf5\xd4\x95\x97\x6c\xd7\x2e\xf4\xa3\x26\xa2\x13\xe1\x6c\xcc\xbd\x3e\x2b\x0a\xd4\x81\x7a\x72\xda\xb7\xce\xe2\xbe\x98\xf6\x1b\xe1\x58\x2d\x9e\x19\x7a\x81\x4b\xdd\xa1\x29\xc8\x89\x10\x04\x4a\x11\x86\x2d\xea\x5c\xb7\x26\xd1\x31\x8a\x6e\x36\x6a\x19\xb2\x21\x1d\xf2\x28\x10\xaa\x4e\x59\x42\x76\x04\xc4\x09\x23\x29\x34\xa9\xc4\xd1\x12\x93\xd3\x3a\x88\x92\x9d\x9c\xcd\xb5\xec\xc6\x4b\x0b\xb8\x39\x9b\xa6\x3a\x4a\x6e\xae\xe4\x66\x25\x88\x65\xcb\x78\x01\x8c\xfd\x42\xdd\x86\xe3\x08\x93\x79\x90\xdc\xa8\x08\xe6\xe2\x86\x1e\xf7\x0b\xd7\xfb\x3c\x4c\x23\xb5\xe4\x3f\xc1\x5a\x87\x95\x9d\xe9\x95\x5d\x35\x08\xf5\xe8\xd1\xb8\x81\xe0\x65\x51\xa8\x42\xfa\x5c\x0a\xde\x0e\x06\xd0\x5a\xe0\xe9\xdc\x46\xb5\x95\xe9\xc2\x41\xe4\xd3\xd2\x0f\xa1\x33\xaa\x28\x89\x1d\xf3\x26\xb4\xad\xe7\xb8\x84\x6a\x99\x1d\x69\xc5\xce\x25\x2d\x97\x6b\x1b\xa6\xec\x0e\x93\x4c\xac\x62\xce\x7a\xf1\xa2\x47\x79\xcf\xf4\x2e\xce\x7a\xb4\xf7\x52\xbe\x58\x30\xb1\xd3\x7b\x46\x15\xfc\x57\x34\x97\xcb\x54\xf4\x7a\xbd\x97\x99\x48\xb3\xac\x77\xeb\x20\xcd\x1f\x2d\xe9\x3c\x7e\x8f\x2d\x7b\x37\x6d\x5c\xb3\x05\xbc\x1c\xa5\xe2\xf0\x45\xf8\xca\x24\x05\xe8\xf5\xee\xbd\xf6\x70\xa7\xf7\xcc\xd5\x2d\x89\x63\x2c\xe3\x0f\xb6\xb5\xcc\x1a\xd9\x36\x98\xa9\x4e\xb6\xab\x51\x62\x14\x67\x1a\xe4\x16\x1b\x56\x3d\x3f\x3f\x38\x81\xb1\x22\x40\xcf\x4f\xf0\x4e\xc7\xb9\xe6\xed\xda\x75\xb4\x28\x74\xd8\x43\x2d\x72\x48\xb6\xd2\xf9\xfe\xee\xd1\xb5\x35\x68\xd3\x47\x5a\xdd\xc6\xe4\xf5\x57\xc4\x73\xa0\xac\x22\x85\xa5\x4d\x2b\xde\x12\x97\xa9\xcb\x30\xa9\xba\x83\xb6\x41\x5e\x16\x3f\x61\x81\x71\x78\x9c\xc7\x2b\xc6\xb3\x38\xe5\xf6\x01\xb4\x65\x81\x2a\x89\x5b\xdb\xa6\x6e\xd3\x04\xec\x0b\x9c\x2f\x0f\x99\x74\x28\x30\xb7\xe1\x74\xaa\x76\x86\x43\x13\xef\xb6\x39\x4e\x6e\xe3\x5a\x39\xca\xb1\x51\xda\xd6\x63\x19\x04\x7b\x4c\x4e\x91\x50\x0b\x3b\x7e\xc2\x74\xf4\x25\xc8\x30\x70\x53\x3f\xb1\x3e\xae\xf1\x13\x36\x1c\x62\x1f\x55\x89\x8c\x89\xfb\xdc\x86\x43\x72\xba\xa6\x83\xee\x6c\x51\xe9\x75\xf5\xac\xdf\x97\xd6\x60\x51\xd5\xba\x1b\x74\x82\x2a\xe1\xa5\x6f\xbd\x11\x5a\x43\xbe\xbb\xeb\xf6\xba\x0a\x9d\xab\xb8\xcf\x26\x74\xda\x81\xaa\x7b\xec\xad\x6e\xb0\x13\xc6\xd8\xc2\xb8\x31\x86\x48\x04\xb1\x6d\x52\x62\xec\x0c\xdc\xee\x2e\x81\x48\xe8\x66\x40\x51\x27\x88\xed\x8e\x60\x22\xb0\x0f\x9b\x2c\xe2\x41\x5c\xed\xb3\x50\x33\x72\xab\x86\x30\xa6\x36\xe2\xd1\xe5\xea\x56\xe3\xe1\x2b\xda\xb5\x06\x7d\x1f\x27\x13\x18\x22\xdc\x1a\xa4\x25\xed\xa4\x12\x4e\x13\x4b\x9a\xc1\x31\xa4\xfb\xd5\x39\xca\xf7\xc6\x90\x36\xbf\x32\xf1\x3e\xe3\x59\x2c\x3b\x02\xfc\x6e\x5f\x0e\x75\xe8\xfa\xe9\xd8\xbf\x0c\xc6\x34\x9b\x9d\xa5\x39\x97\xc1\x36\x40\x1a\x45\xcd\xce\xd8\x85\x33\x6e\xb2\x1e\x8e\x4f\x99\xe5\xf4\xb9\xa2\xfe\x72\xd3\x38\x76\x32\xd5\x46\xd0\x2e\xb2\x76\x68\x0e\x40\xe0\x87\x00\x55\xf6\x25\xd7\xfa\xbd\x0e\xb0\x6e\x65\x59\x3a\x8b\x21\x1d\x49\x0b\xc2\x4f\xd8\xbe\x56\xc9\xbb\x2d\x28\xd6\x60\xab\xc2\x07\xbe\x05\xe6\xa1\xf5\x15\x10\xd3\x6c\xc3\x0e\x41\xc7\x7a\xb1\xda\x76\xfd\xb9\x2e\x0a\xf9\x5b\xfb\x93\xc6\x51\x50\x7b\x2e\x15\x95\xe3\xf5\x10\xf5\x84\x4e\x09\xd8\xa7\xf0\x83\xd4\x4c\x9a\x30\xea\x10\xec\xdc\x66\x33\xd0\x01\xd8\xc7\xe5\x0e\x0d\xfa\x63\xc2\x02\x93\xc4\xb4\x6a\xb8\xb4\x66\x6b\x01\x6b\x7c\x3f\x45\x0a\x22\x2d\x1d\x9a\x4a\x26\xc6\x02\x5a\xda\xd8\xeb\xc6\xb4\xc3\x85\x8a\x7f\x2a\xa8\x88\x80\x58\x6c\x96\x89\xac\xa2\x78\xbe\x18\xc4\x06\x1e\xde\x01\x8f\x0e\x35\x5f\x6e\xa0\x07\xe3\x52\xc4\xe7\xcc\x83\x15\xd5\xf5\x4c\x98\xd2\x48\xc9\xea\x9f\x70\x2a\x6c\xa7\x33\xdb\x69\x7a\x7e\xa7\x33\xd5\x69\x61\x3b\x0d\xca\xaf\xea\x66\x12\x5d\x62\x6a\xb2\x6d\x43\x11\x0a\x9b\xa5\x36\x3a\x77\x7a\x3e\x1b\x48\x49\x1c\x8c\x49\xba\x31\x5d\xf1\x8b\x41\x7a\x3e\x8c\x2c\x8c\x87\xc3\xa8\x63\xca\x2a\x17\x88\x0b\x56\x5d\x35\x44\x8d\xaf\x69\x4d\x08\x2e\xf8\xbe\x9a\xec\x92\x9c\x17\xb6\x15\x39\xb5\x6f\xa4\x4d\x08\x3a\x70\x0d\x37\xe0\x89\x79\xb6\x66\xb3\xae\x73\x88\x1a\x94\x4f\x0e\x80\x92\x48\x3c\x9e\xce\xd9\x7b\xd9\x28\x97\x71\x62\x9b\x19\xcd\xf2\x4c\xa6\x2b\x0f\x37\x21\x33\x6f\x9b\x90\x5d\xa0\xca\xd6\x80\xa5\x10\xa1\xbc\xd3\x12\x45\xe7\x19\xac\x63\x21\xc6\xcd\xe8\x4b\x40\xbd\x81\xf3\x32\xc9\xe3\x88\x70\xe3\x0e\xa6\x5b\x43\x58\xd6\x9a\xd5\x73\x73\x58\xfc\x13\xd4\xac\x3a\x74\x9b\xe1\xd3\xed\xec\x39\xf1\xf6\x39\xb8\xc4\x9c\xd6\x2e\x74\x93\x96\x73\x5d\x1d\x13\x57\x73\x37\x29\x87\x28\x05\xc2\x99\x60\x55\x87\x3b\xbd\xd6\x8b\xbd\x73\x95\x3b\x56\x72\xfb\x9a\x1c\xd4\x71\xcf\x4c\xe2\x0c\xa7\xa1\x31\x26\xec\x02\xac\x15\xe7\x2d\x9b\x6e\xa4\x2b\x31\x11\xa3\x74\xb1\x69\xbc\x57\xdb\x9a\xd6\xd1\xd5\x09\xaf\x33\x96\x28\x54\x74\xb3\xcf\xd4\x12\xdd\x8b\x81\x9c\x56\x9d\xdc\xdc\x34\x78\xb5\x69\x88\x11\x5b\xad\x5d\xde\xcb\xb6\xad\xeb\xd6\x31\x8c\x1b\x23\x02\xbb\x96\xfa\x30\xee\x64\x13\x1b\xc6\xc1\xa2\x76\x3c\x55\xbc\x1a\xc4\x50\x36\x9e\x9c\xdd\x68\xa7\x67\xcf\x5d\x30\xa2\xb9\x60\x4c\x8e\x97\x8e\x19\x00\xe1\x50\x4b\x9c\x44\x74\x96\xd0\xd3\xd1\x48\xb1\x58\xa9\xa0\xd4\x96\x48\x32\x92\xef\xb4\xdd\x71\x8d\x87\x69\x7a\x90\xd8\x69\xbc\x6a\x78\x26\xbf\x17\x1b\x3b\x04\x78\x73\x90\xb0\x91\x0e\x9c\xd9\xe1\xc1\xba\x19\x0d\xa1\xbb\x46\x06\xc9\x94\x63\x7e\xd8\xa3\xe0\xc5\x7b\x40\x67\x8f\x4c\xad\x4d\x25\x2a\xc3\x45\x21\x8d\x66\x55\x77\x7a\x14\x67\x5f\x8b\xd9\x31\xbc\xe9\x8a\x41\xe8\xe8\x50\x0c\x56\x45\x26\x33\x51\x6d\x11\xa9\xe8\xab\x4e\x08\xc0\xdc\x84\x00\x74\x38\xc4\x1c\xb1\x90\x46\x84\xe2\x3a\x24\xf2\x66\x37\x2b\xbe\x14\xc7\x0b\x24\xaa\xd8\xdf\xb6\x9f\xbd\xb8\x45\x6e\xfa\xcd\x79\x87\x10\x78\x9b\xcb\x06\x61\x4c\xb6\x7e\x03\x30\xa7\x3a\xfe\x75\x3b\x5e\x34\x4a\x31\x64\x96\x09\xd3\x88\xa4\x06\x70\x55\x3c\x0e\x18\xa1\xc1\xf8\x46\x7f\xac\xe4\xac\x3c\x88\x1b\x9c\xc0\x0d\xcc\x51\x6e\x98\x32\x8a\x09\x1d\x0e\xf5\x97\x0d\x7e\xbc\xca\x09\xf3\x76\x2c\x97\xf7\xf3\x24\xf9\x4a\x83\x5d\xfe\x54\x88\xe5\x56\xf9\xd9\x23\x59\xb3\xf6\x7f\xf4\x08\xa7\x29\x90\xc5\xb9\x66\x20\x4d\x26\x31\xeb\x3e\x7b\x85\x19\x00\x87\x46\xfc\x2f\x0b\x61\xb5\xdf\x6e\x37\xce\x3a\x54\x95\x6f\x06\x76\x85\x74\x8e\x99\x0e\x52\xd3\xda\x3e\xdb\x92\xe4\xcd\x6b\x9b\x98\xb6\xe2\x6c\x95\xf2\x38\x93\x57\xf7\x58\xb3\x32\xbf\xc7\x19\x9b\x67\x3d\x2a\x7b\x09\xa3\x99\xec\xc9\xe3\xb4\x0e\x7c\x3c\x32\x59\x3e\x40\x34\xa9\xf2\x37\xf1\x60\x72\x55\x89\x43\xe0\xbf\x90\x6e\x88\xb2\x90\x3e\x45\x06\xe3\x1b\xf2\x66\x7a\x43\x0e\x87\x55\x86\x78\xe4\x6c\x9a\xa1\x8c\x30\x28\x01\xec\x61\x87\xd8\x61\x70\x7f\x93\x6b\x87\x13\xad\xfb\x8a\x03\xc5\xa2\x18\x55\x37\x2c\x55\x92\x90\x59\x10\x57\x8c\xf6\x8d\x3e\xa2\xc1\xac\x35\xe2\xa0\x1c\xcf\x02\x6a\x86\x3d\x57\xbb\xa2\x0b\x90\x12\x31\x92\x26\x2c\xfa\xa0\xa2\x9f\x80\xfa\x24\xc3\xf8\x34\x57\xc2\xd6\x81\x60\xf4\x51\x99\x0f\x06\x10\x6f\x0d\xd5\x01\xc1\x45\x49\xe4\x28\xe7\x9f\xc5\x6c\x40\x2d\x9f\x60\x1a\x9c\x44\x5a\x71\xf7\xd8\xb3\x60\x7c\x83\xdd\x8c\x6f\xb0\xe1\x10\xeb\xb9\xa8\xbb\xca\x22\x77\xe8\x94\x04\xd5\x42\x56\xe8\xa8\xb0\x79\xce\x2c\xcb\xa2\xba\x3b\x8f\x17\x26\xf8\x45\x97\xb5\x4c\x63\x32\x0d\x80\xda\x4a\xb0\xeb\x0d\x62\x75\x1e\xea\x66\x8f\x58\x13\xbe\xf6\x62\x02\x5f\xde\x0a\xbe\xa2\x38\x07\xde\xec\x64\xb5\x62\x52\xc4\xb3\x3b\xdb\x00\xff\x45\x40\xa0\x29\x82\x3c\xbf\x0e\x76\xf9\x5e\xc4\xd9\x5e\x7e\xb0\x5d\x27\x5d\x03\xab\x06\x9b\x39\xee\x3d\xfd\x31\x3c\x81\xd1\x7f\xb1\x31\x09\xfd\x09\x40\x09\x90\xf1\x16\x64\x7a\xc6\x5c\xe8\xea\x8f\x6c\xbd\x16\xac\xb5\xa2\x22\xb2\x95\xb7\xde\xb2\xce\x15\xe0\xc6\xb7\x41\xb6\x0d\x7b\x5b\xe3\xdf\x1a\xb1\x36\x5c\xac\x31\x42\x30\xbd\xdd\x16\xad\x9f\xa8\x4e\xa3\x8e\x75\xab\xad\x88\xe3\x39\xf5\xb2\xf3\xeb\x6d\x63\x48\x67\x3b\xf3\x38\x7b\x4f\x35\x70\xa9\x66\x20\x34\xff\x25\xda\xaa\x62\xef\x37\xd0\xf1\x12\x03\xd1\x06\x78\x03\xa5\xeb\x54\x00\x71\x3b\x15\x40\xd5\xbd\x38\x4c\xa3\xe6\x18\xc6\x29\x87\x38\x91\x5d\xfa\xd9\x36\x72\x42\xb2\x28\x46\x58\x20\x89\x0c\x04\x26\x3a\xc4\xb7\x4b\x3b\xc6\x6d\x14\xef\xe9\xf7\x15\x80\xbc\xb1\x7a\x49\xaa\x36\x65\xd0\xd4\x77\x8d\x19\xaf\xc6\x2c\x1d\x0e\xed\x92\x4b\x2b\xba\xde\x86\xbb\x4e\x22\xb1\xd1\x3d\x78\xbb\xd3\x00\x69\x28\xf4\x51\x00\x2c\xe1\xf7\xe8\x6c\x46\xc5\xfc\xe7\xa9\x4d\x0d\x02\x9f\x8e\x7d\x7e\x15\xb5\x2a\x86\x81\x4e\x8f\x98\x48\xe8\xfa\xd3\xd5\x5c\xf9\x08\x98\x3d\x57\xb7\xd0\x75\x2c\xd8\x7d\x50\xa9\x43\x55\xc7\xef\xe7\xec\xf5\x98\x3f\x7a\x6d\xee\xa9\xaa\x02\x06\x36\x14\x83\x01\x9a\xa5\x3c\x4b\x13\x36\x3a\xa6\x82\x23\x8f\x1f\x0a\xba\x5e\x8e\xe0\xaf\xdf\x03\x27\x17\xc5\xdf\x42\x2c\xb1\x23\x93\x01\x7c\x3c\x9a\x3c\xdb\xfb\xa6\x5b\xe5\x37\x7b\x71\xd6\x9b\xb3\xb5\x60\x33\x2a\xd9\x7c\xf4\x2e\x7f\x2b\x63\xbd\x6f\xc2\xb9\x00\x54\xf5\xcd\x9e\xce\x00\x6b\x03\xa9\xbd\xcb\x3d\xe2\xc1\x9f\xfb\xa9\x64\x7e\x4f\x2e\x99\x60\x70\x84\x9b\x64\x69\x4f\xe7\x34\x55\x5c\x9e\x71\x56\xe9\x1d\xb0\x25\x3d\x8a\x53\xe1\xf7\x5e\x56\x90\xf0\xf4\xb8\x97\xf2\x1e\xa3\xb3\x65\x0f\xea\x7f\x97\xc7\x59\x4f\xf5\x24\x9e\x33\xc1\xe6\x3d\x99\x42\xe4\xa2\x54\xda\xb4\x68\x50\xaa\x77\x70\x52\xd5\x88\xe0\x63\x36\x3f\x84\x66\x75\x67\xf0\x08\x72\xc7\xd4\x1f\x04\x6c\xe4\x76\x13\xd7\x21\x23\xdc\x52\x10\xe4\xcd\xf9\xa8\x3f\xe9\xe4\x60\xef\xd1\xf5\x26\xaf\xe1\x8e\xb7\xcd\x6c\x91\xf5\xbe\x79\x8f\xae\xbf\x69\x3a\x61\x24\xf1\x2a\x32\xdd\x3a\x4d\x4e\x16\x71\x92\xf4\x62\x35\x2c\x8b\x54\xb0\x5e\x0e\x79\x31\x74\x55\x86\x15\x91\xd5\xf1\x2e\x24\xc9\x4b\x82\xd3\xd2\xa4\x69\x74\x41\x9d\x76\x1f\x2c\xeb\x24\xdc\x24\x0e\x92\x36\x8b\xcd\x61\x1b\x8b\x8b\xe2\x16\x14\xc1\xa7\x71\x51\xa0\x24\xe4\x51\x30\xb6\x79\xc4\xbd\x7f\xe5\x0d\x7b\xc3\xa1\x7a\xb8\x03\x55\x0d\x53\x22\x87\x29\x76\x3d\x33\x33\x1b\x5c\xbd\x11\xbc\xad\x61\xba\xe1\x16\xd3\xf0\xe0\x92\xcc\x55\x5f\x96\xc1\x43\xb2\x0e\x1e\x92\x55\xf0\x90\x1c\x05\x0f\xc9\x49\x70\x4a\xe7\xf3\xfb\xe9\x9c\xf9\xfb\x84\xce\xe7\x6a\xae\x9a\xb5\x72\x7c\xba\x32\xee\xca\x71\xa0\x65\x2e\x30\xbc\x4e\x83\x63\xb0\xcb\xd9\x47\x12\x93\x2c\x58\x98\xc2\xb5\x4d\x39\xd0\xea\x0c\x13\x8a\x62\x92\x61\xc2\x74\xfe\x14\x8a\x52\x75\xb7\x44\x19\xf1\xe8\x7c\xee\x61\x72\x84\x30\xc9\x4a\xa2\x4f\x48\xa1\xfd\xc7\xe6\x06\xc0\xba\x4b\x0e\x19\xc4\x3d\xf7\x8f\xed\xd5\xed\x34\xe7\xd2\xdf\x53\xb7\xaa\xbc\xbe\x7d\xc3\xde\x66\xce\xbd\x2a\x9d\xb5\x8a\x67\x1d\xd1\x07\x8e\x5d\x8f\xcb\xa9\x1c\x25\x50\x4e\x1b\x10\x1b\x39\x06\x40\x78\x60\xef\x54\x45\x4c\x8f\x9b\x4b\x9f\x6a\xc3\x22\xa8\x51\x4d\xb7\xda\xb6\xa0\xba\x4e\xb5\x93\xa8\x78\xc7\x69\xbb\x9e\xda\x08\x66\x7c\x23\xbe\x59\x49\xa9\xc3\xa1\x4d\xeb\x1d\xb0\x30\x86\x9c\x36\x5a\x67\xfc\xda\x5c\xa7\x25\xe4\x08\x42\xbf\xa0\x74\x24\x53\xb5\xec\x2a\x93\xb2\xfe\xb8\x2c\x91\x01\x86\x28\x72\xb9\x01\xfa\xe5\x9a\x24\x34\x70\x5b\x9c\xea\x86\x7c\xfb\xcc\x18\x88\x01\x0c\xf4\xbc\xe6\x4b\x77\x30\x37\x27\x85\xf0\x9d\x2d\xf1\xf2\x0d\xe3\x3f\x26\xbc\xce\x20\x24\x6f\xf2\x1b\xc3\xa1\xc4\x0c\x09\x25\xf2\x94\xe4\x80\x1d\xc6\xfc\xad\xf5\x9c\x4a\xe6\xaf\x08\xe3\x73\x73\x7d\xa4\xa3\xb6\xba\x21\x85\x56\x08\x93\x07\x4d\x31\xfe\x2e\x62\xa3\x78\x0e\x5a\xf4\x23\x30\x07\xa7\x19\x40\x79\x4b\x5d\xd5\xd8\xa8\x9f\x55\x06\x8c\x1c\x9d\x60\xb2\xa1\xd0\x3c\x19\xa5\x7c\x47\xfd\xe9\xb2\xd7\x1f\x39\x70\x06\xab\xe0\x11\x64\x0d\x37\xb0\x06\x47\xc1\x3d\xb2\x0c\x0e\xc8\x3a\x38\x24\x50\x01\x23\xcc\xb8\x87\x9e\xb8\x99\x9c\x4a\x84\xc9\x49\xad\x5e\x3c\xd0\xac\xc8\xdc\xe4\x91\x52\x23\xee\x33\x93\xec\xfa\xe1\xc9\x9a\xf9\xb2\x74\x74\xe3\x87\xcd\xd2\x5c\x75\x6e\x7b\xe9\x7d\xbd\x0d\xbb\x49\xdc\x3b\x74\x4b\xd6\x4f\x4a\x55\xd6\x8b\xe7\x8c\xcb\x78\x11\x33\xe1\xe1\x9d\x55\x9d\xd3\xcb\x35\x32\x99\x22\x3e\x9a\x53\x49\x03\x41\xd6\x88\x13\x2f\x87\x01\xf0\x30\x84\x1b\xd2\x07\x1f\x10\x5b\x11\x5e\x02\xdd\xc0\x44\x56\x66\x26\x40\x43\x78\x0d\xe4\x71\x23\xac\x99\x39\xfe\xaf\xde\xde\xad\x13\xbd\xd8\x55\xda\x17\xb5\x24\x50\x43\x28\x34\xb2\x1a\x1f\x7e\x73\x07\x9a\x81\x9d\xe6\x4a\xe1\xee\x4a\x79\x8c\x78\x18\x47\x75\xee\x30\xc7\x2e\x62\x8d\x04\x31\xf1\xa8\x0d\xe1\xeb\x8f\x6b\xb8\xf6\x1c\xe5\x3c\xb0\x29\xf5\xab\x37\x9c\x54\xc8\xf6\xe0\xaf\x7a\xf9\x18\xb1\xa6\x57\x47\x7f\x62\xb6\xb1\x58\x73\x45\xf1\x02\xc9\x9b\xe3\x46\x0f\x15\x23\xa4\x8d\x31\x24\x99\x38\x33\x62\xd6\xb0\x26\xef\x4c\x53\x10\xd7\xfb\x43\xd7\xc9\xf5\x50\x60\xfc\x62\x30\x1e\x0c\xcc\x9d\x5b\x21\x49\xab\xb2\x69\xa3\x6c\xda\x51\x76\x89\xd8\x39\xa3\x72\xab\x29\x13\x56\x33\xc6\x8b\xa2\x6f\xe1\x70\xcc\xc9\x9c\xfc\xc9\x16\xae\x6a\x6e\x44\x15\x88\x41\xbf\x09\x05\x90\xcf\xb8\x26\x66\x4c\x51\x6b\xd5\x69\x97\x11\x8f\x4b\xa7\xfe\x1a\xb0\x87\x08\x9f\xd6\x77\x8f\x10\x3e\x9d\x0d\x83\x49\xfd\xe4\x1e\xc2\xa7\xe3\x20\x40\xb3\xdd\x60\x82\x07\x83\xb9\x6b\xca\x77\x32\x5a\xc4\x82\x21\xcf\x24\xa0\xf7\xc8\x1c\x13\x5b\x20\x18\x3b\xb8\xfa\xc0\x32\xa1\x1d\x4a\xbd\xcd\x65\xf7\x72\x65\xb3\x9d\x19\xfd\xaa\x66\xe7\xb4\x7e\x90\xf5\x14\x4b\xad\x79\x3e\x58\x99\x99\x8e\x7d\xbb\xa6\x59\xc6\xe6\x3d\x6f\xe8\xea\x2d\x1c\xb1\x0a\xc8\xac\x4d\x20\xcf\xad\x1a\x4a\x89\x2b\x95\x9c\x51\x8b\xe5\x75\xd9\xb2\x2c\xab\x1c\x24\xcf\x3f\xdb\xce\x04\xa4\x31\xd6\x8e\xf1\xee\x44\xc7\x32\x33\x56\x47\x75\x0c\x33\x6b\x86\x64\x1c\x62\xb5\xe0\xeb\xa8\x83\xcc\x4c\xdf\x10\xc3\x60\x82\x21\xef\xa9\x88\x80\x24\x55\x9a\x37\xdb\xc0\x86\xe5\xba\x3e\x75\x9d\x07\x4c\x1f\xe8\xd5\x8b\xdb\x1c\xf0\x29\x6a\x24\x4b\xd7\x03\x45\x7d\xc5\x74\xc1\xa9\xf9\xb5\xd6\x69\xbe\xb9\x0f\x42\xe9\x24\x00\xae\x59\x35\x13\x68\x5e\xe3\x99\x69\x11\xf0\x4c\x3a\xad\x59\x13\xba\x79\xe0\xd0\xb2\xbc\x95\xe3\xbe\xd6\x61\x0f\xbd\xff\xf7\xbb\xff\xf3\x6f\xf6\xbc\xa1\x74\x53\x16\x36\x4f\xad\xba\xa5\x9a\x7e\x4b\xc4\xe9\x3a\x1e\x80\x88\xf7\xf1\xe2\xa4\x37\xd3\x71\x66\xf3\x8c\xf5\x16\x34\xc9\x4e\xac\xcd\x28\xcd\x7a\xec\x08\xc2\x23\x67\xb9\x3e\x69\xab\xd1\x47\x06\xa1\x97\x2a\x09\x45\xa1\xb9\x47\xbc\x74\xb1\xf0\x22\xd2\x0a\xec\xab\x16\x24\x08\xca\x2d\x3e\x59\xcd\xe1\x66\x08\x67\x6f\x4f\xb7\x62\xe1\x39\x60\xba\x79\xb5\xb1\xcc\x49\x2f\x8b\xf9\x8c\x29\xb6\x9e\x26\x82\xd1\xf9\x49\x6f\x49\xb3\xde\xda\x54\xd9\xfb\x82\x37\x54\xb5\x0e\xbd\x2f\x78\x60\x44\x6f\xe8\xe3\x56\x2b\xed\x46\x22\x55\x73\x72\xeb\x66\x76\x34\x69\xac\x2e\x7d\x1a\x62\x0f\x38\xda\x0b\x13\xb2\xa3\x55\x35\x58\x29\x00\xc2\x1c\x5b\xa1\xbd\x28\x90\x7e\x12\x84\x11\xb6\x59\xbf\x4f\x6d\x85\x3e\x87\x0c\x91\x71\x09\xe7\xc3\x8d\xbc\x88\x80\x76\xee\x3e\x5d\xf1\x9a\x9d\xdd\x24\x3a\x16\x8e\x1a\xfb\x6d\xdd\x32\x79\x0d\x01\xbc\xea\x84\xe0\xc8\x24\x14\x16\x11\xe8\x24\xd2\x9b\x71\x3d\xbf\x29\x8e\xc3\x54\xa7\x11\x86\x34\x07\x41\xc0\x15\x81\x35\xc4\x3f\x55\x3b\x4f\xe5\x58\x42\x14\xaa\x38\xd0\x57\x6e\x60\x7a\x38\x14\x96\xc6\x75\x4a\xa4\x4d\x13\x33\xd0\xac\xb7\xf3\x54\xe9\x96\x36\x13\x55\x36\xf4\x3e\x6d\x98\x8d\xaf\x84\x02\x7d\x87\x56\xc0\x1b\xbe\x8b\x42\x42\x4a\x5e\x6d\xef\x0c\x12\xec\x39\x1a\x92\x54\x51\xa8\x94\x13\x36\x4a\x17\x0b\x75\xb9\x58\x10\x06\xe4\x3e\x90\xf0\x43\xd8\x45\x09\x9c\xdc\x73\xe2\xca\x36\xa3\x33\xfa\xed\x3f\x61\xdb\x0c\x9d\xa5\x8a\x98\x0c\xbd\xfa\x60\x8f\xcd\x6f\xc3\x86\x98\x31\xe9\x91\x0e\xeb\x82\x94\x81\x59\x8b\xfe\xe4\xf6\xab\xb7\xee\xbf\x72\x77\xef\xee\xc3\xce\xa2\x0f\xdd\x92\x50\x69\x67\xb1\x78\xa3\xd8\xb6\xb6\x73\xb7\xed\xbb\x42\x74\x16\xa2\x4e\x19\xf0\x4c\xa5\xf2\xa2\x3e\x65\x6e\xbd\x07\x79\x9c\xcc\xdf\x48\xe6\x5f\x83\xad\xb7\xb3\xfc\x7d\xa7\xf8\xec\xdc\x9a\xa9\x5b\xf3\x21\x93\x77\x18\x5b\x77\x16\x9c\x37\xcb\x7d\x85\x9d\x9c\xd3\x7e\xe2\x14\x8e\xb3\xf3\xfb\xf6\xa8\x51\x56\x13\x9d\xee\x89\x6d\x14\x7c\x20\xd2\x55\x9c\x75\x4f\xd8\xcc\x29\xf9\x88\x9d\xbc\xc6\xcf\xa9\xf5\x9e\x53\x36\x49\xd3\x47\xf9\xda\xcc\x49\xda\x3d\x7b\x4b\xa7\xfc\x8a\x89\x43\xb6\x75\xc4\x5e\x69\x97\xbc\xcf\x32\x08\x57\xdb\x51\xf6\x8e\x53\x96\xa7\x62\x45\x93\xf8\x09\x3b\x07\xea\x63\xa7\xbc\xde\x6a\xdf\x8e\xe5\x32\xcd\xbb\x4b\xbf\xe4\x94\x5e\xe7\x82\xdd\xca\xb2\xf8\x90\x77\x16\xdd\x73\x8a\x66\xe7\xa0\xc3\x9b\x4e\x39\x09\x69\x73\x3a\x0a\xbd\x5a\x62\xab\x14\x72\xc9\x47\xed\xc1\x1d\xb0\xb2\x33\x62\x6b\xcf\x31\xc3\xa9\x2d\x74\x38\x58\xe8\xb4\x22\xdf\xdf\xa1\xb2\x9d\xc2\xf2\x4d\x76\x78\xf7\xf1\x5a\x15\x6d\x1b\x09\x94\x9a\x6a\xb7\x0e\x97\x1d\x70\x88\xbd\x51\x18\x10\x2b\x32\xdd\x48\x27\xe7\x86\xda\x3d\x87\xf2\x6d\x1c\xb9\x37\xc4\x47\x9b\x90\x1d\x2c\x8e\x45\xe5\xd9\x45\x83\x30\x82\x2c\x38\x70\x34\x55\xef\xc8\xb2\x28\xe4\xee\x6e\xef\xc5\x31\xf4\x9d\xb7\xec\x76\x6f\x60\x6a\x92\x0d\xdb\xa3\x15\x9d\x20\x47\xf1\x6c\xc1\x29\xa4\xb0\xf1\x59\x59\x2e\x62\x4e\x93\xe4\xe4\x54\xd5\xcf\x07\x03\xc3\xa1\xc3\x89\x43\x3a\xd2\x60\xe1\xc1\xc0\x00\x93\xe2\xaa\xbc\x92\x7c\x0c\xa7\x12\x8f\xa0\xb6\x2a\x00\x1c\x2d\x5b\x39\xe7\xcc\x66\xc9\x82\x30\x32\x87\xcd\xed\x0d\x18\xce\x9e\x99\x76\xe1\x99\x51\x89\x32\xd4\x38\x82\x76\x36\xfa\x1a\x2b\x12\x33\xe8\xd5\x70\x80\xd0\x18\x46\x36\x38\x62\x18\xd5\xa7\x1f\xc6\x6c\x21\xe4\xd1\x60\x90\x82\xff\x1a\xae\xc3\xd9\x5f\x90\xb6\x3d\xe4\x91\xcd\x02\x81\xa7\x46\x31\x09\xa1\xa6\x73\x24\x89\xaa\x49\xc7\x28\xf5\x46\x4a\xfc\xb4\x86\x6a\xe6\x2c\xb9\xc4\xbe\xf9\xb4\x0f\xdc\x8b\xfe\xbc\x4a\xa7\x9d\x23\x53\xbf\xad\x4a\xfd\x57\xe9\x40\x6b\x2e\x7e\xe6\x2c\x80\x14\x70\x7d\x73\xd3\xed\xf7\x11\x24\xbe\x97\x4b\x06\x39\x59\x60\xb6\x21\x17\xba\x9e\xb1\x2d\x76\x6b\xba\x78\xb7\xb3\x94\xae\xa1\xf3\x9d\xa9\x14\xd8\xe1\x1a\xce\x85\x03\x67\x93\x47\x71\xbc\xfd\x38\x3b\x46\xa2\x28\x90\x08\x0c\xa5\xc6\xd8\xd1\x9e\x41\x4c\x1a\x57\x6c\xc2\x80\x9a\x39\x32\x27\x73\x0c\x3b\x88\x9c\x82\x8f\x96\x2b\x30\xd5\xa5\x01\x37\xcf\x2d\x9e\xd7\xb9\xf5\xb5\x89\xe0\x34\x46\xe6\x8c\x0c\xfb\xa8\x4a\x3b\x4f\x1a\x11\x1e\xc5\x54\xfa\x6d\xfb\x45\x25\x29\x21\x09\xb9\x4a\x61\x3c\x21\xf8\x72\x99\x23\xc4\x03\x9b\x8c\x9c\x11\x09\x29\xcc\xb1\x5d\xa3\xe0\x8f\x0b\xd6\xa3\x1a\x81\xed\x0f\x6a\x29\x00\x25\x11\x5d\x8e\xfc\x8e\xfb\x0f\x58\xc5\x9f\x26\xf4\x80\x25\xfe\x98\x64\x8c\x37\x32\xc6\xc4\x0b\x34\x19\x80\xa3\x9f\x59\xac\xe1\xa4\x92\x0e\xd4\x75\x49\xa4\x38\xc9\xfc\x30\x22\xe9\x5a\xfd\x54\xda\xc8\x34\x38\x55\xa0\xfa\x19\x82\x30\x9c\x22\x3d\xf6\x33\x34\xc1\x44\xbf\xf6\x33\x74\x0d\x97\xe4\x1c\x5a\x87\xd2\x4f\x60\x47\xea\xc4\x6a\xc8\xea\xd8\xb2\x75\x8f\xb3\xcd\x47\x29\xf4\x4d\x74\x27\xd6\x78\x85\x71\x6b\x09\x95\x55\x32\x1d\x7b\xcc\x66\xb9\x8c\xf9\xe1\xc8\xc8\x9a\x37\xe8\x0d\xac\xd0\x45\xd5\x13\x4c\x08\x1f\x0c\x50\x1c\x5c\x1b\xa4\xe1\x38\x9a\x72\x43\xfc\x7c\x73\x07\xcd\x14\x05\x42\x71\xc0\x6b\xba\x68\xf2\xf7\x72\x4c\xc6\xd8\xd7\x18\x0a\xc4\x38\x0e\xec\x1b\x92\x86\x93\xa8\x69\xab\xdf\x8b\x6d\xb0\x3c\xc8\x63\x0f\xbe\x99\xa1\x6e\x96\x18\xf3\x1d\x25\xab\xa9\x39\xd3\xb1\xf4\xc6\x3a\x70\xdd\xc4\x8f\x83\x54\x1b\xde\xe8\x70\x73\xcf\xda\x48\x72\x74\x04\xd3\x3f\x1c\x56\x5e\x81\xe1\x24\x22\xc6\x7a\xb6\xd4\x85\x9f\xf3\xeb\x52\x3c\x80\x02\x69\x10\x8e\xa3\x9d\x59\xca\x65\xcc\x73\xa6\x8b\x7d\xd1\x4f\x03\x3a\x4a\xd7\xd9\x68\x9d\xae\x11\x26\x74\xa4\xf0\x43\xdf\xd4\x45\x6d\x24\x3b\xc8\x37\x83\xe2\x00\xc5\x81\x2e\x88\x1d\x3d\x55\x1c\x5a\xc1\x68\x77\x12\xe1\xa2\x78\xbe\x1f\x04\xaa\x57\x83\xc1\x35\x73\x85\xf1\x29\x0d\xc6\x55\xb5\x65\xbc\x40\xd7\x03\x5b\x08\xf5\xe3\xa2\x50\x70\xbe\x18\xc3\xbd\xba\xbc\x19\x87\xd7\xe1\x2b\xdd\x15\xe8\x86\x31\x45\x8a\x17\xe8\xf9\xea\x5b\xf3\xfe\xa6\xc2\xf0\xba\x74\xac\x1d\x20\xd2\xfa\x8b\xd8\x2d\x7a\xad\x51\xf4\x5a\x44\xcc\x38\x28\x82\x9f\x62\xfb\x51\x78\x0d\xea\xbf\x60\x84\xca\x34\x90\x36\xc7\x31\x75\x49\x50\x10\x3e\x4f\x58\x44\x78\x30\xae\xb6\x52\x11\xc4\xc1\x58\x41\xf3\x1c\xe0\x80\xc1\xe8\xb4\x5e\xa8\xd5\xa4\x8e\xa3\xa9\x7a\x6c\x1c\xb2\x89\x35\x94\x2e\x51\x98\x92\x2c\x82\x6c\xed\x40\x52\x1a\xee\xd0\x16\xd7\x74\xcf\x2a\x94\xb2\xd4\xd8\x40\xaf\x3a\x19\x8e\xc9\x35\x42\xae\x47\x98\x84\xcf\x12\x43\x9c\x47\x9a\x09\x89\x76\x0c\x0a\x56\x4a\x00\x3e\x52\xa4\x06\x61\x12\x5e\x03\x83\x04\xb0\x98\x5a\xc4\x89\x64\x2d\xd2\xa8\xbf\xf0\x0e\xd2\x34\x61\xd4\xd5\x40\x0e\x06\x0c\x48\xa6\xcd\x55\x2e\x4c\x23\xd7\x4c\x23\xe1\x35\x62\x1b\x31\x6f\xae\x57\x6f\xb4\x19\x38\x76\xf6\x9e\xb9\xcb\x83\x81\x36\x62\x77\xa2\xb8\x82\x86\xcf\x7f\xa5\xd8\x0b\xa5\xc3\x1d\x6c\xe6\x71\x00\x3f\x3c\x1d\xd6\x7c\xe4\x61\x5f\x92\x96\xa6\x3e\x36\xb6\x7b\xda\x3f\xdb\xf2\x6f\x3b\x22\x10\x21\x0f\xe3\x28\x2a\x37\xf7\xf0\x65\xd7\xde\x58\x01\x2c\x75\xc6\x28\x30\x3a\x3b\x06\xf9\x09\x82\x80\xa7\x46\x98\xd3\x41\xbf\xb5\xb4\x44\x32\x75\x9d\x72\xc9\xb8\x24\x79\x30\x47\x60\x4f\x60\x34\xf5\xf9\x60\x90\x5b\x2e\x55\x71\x71\x79\x50\xdf\xea\x6c\x82\x39\xc6\xa4\x9f\x17\x45\xaa\xae\x5c\x7b\xa8\x26\x4b\x9c\x63\x55\x53\x96\xae\x58\xe7\x6c\x76\x28\x94\xd5\x5c\x9e\x57\x1f\xde\xbe\x8d\x5d\xd8\xfd\xd4\xe9\x3e\x75\xba\x9f\x19\x9d\xcd\x42\xa4\x2b\x04\x89\xc5\xbb\xa0\xed\x31\x54\xed\x94\xb0\x4b\xdb\x3d\x2e\xd3\x1d\x9c\xe1\xa9\x8b\xed\x99\xd9\xc5\x17\xb8\x33\x5d\xcd\xcf\x81\xe3\xae\x65\x89\xac\x73\xf3\x97\x28\xc3\x25\xca\x75\x16\x15\x41\x6c\xd7\x7d\x4e\x6c\xc7\xfd\xd8\x1c\xa5\x65\x3e\x25\xa6\xd3\x7e\x56\x6a\x16\x37\x09\x72\xd3\x2f\x5a\x47\x7e\xef\xcd\x50\x82\xa7\x89\xee\x41\xe7\x58\x94\x18\xfb\x49\x09\x02\x4f\x3b\xa8\xec\xe7\x02\x8c\x15\x60\x56\x9f\x52\x80\x59\x6f\x15\x60\xc8\xd1\x96\x2c\x76\xad\x6c\x39\x59\x10\x56\x64\x84\xb9\x1e\x73\xf3\xb9\xcd\x24\xbb\x2d\x02\xa5\xc3\x5b\xd5\xd5\xe9\xb1\x64\x8d\x13\xe6\xea\xa0\xc4\x9a\x4f\x98\x0c\xb5\x60\xe2\xc4\x36\x1c\xd0\x3b\xdb\xad\x95\xf6\x6a\x5c\x5a\x6d\x3a\x83\x63\xdd\x99\xaa\x97\xa1\x6c\x9c\xb5\x00\x56\xb4\x3e\x77\xce\xf9\x9a\xf0\xd8\x0c\xda\x3f\xcf\x24\xa9\x76\xdd\xc9\xd9\x69\x35\xba\x69\x98\xef\x04\x40\x33\xec\xbc\xd9\x80\x57\x20\x5f\x60\x05\x5c\x89\x9c\x33\xaa\x93\x96\x68\xca\x46\xfb\x70\xda\xc0\xe6\xf7\x53\x7d\x96\x9d\x81\xe5\xd2\xc6\xd3\xe0\xb4\xb4\xe2\x6b\xc7\x5b\x05\xac\xdd\x58\x40\x80\xea\x2e\x03\x27\xde\x47\x98\x08\x58\xe3\x07\x8d\x3c\x07\x95\x27\xd2\xf6\x35\xde\x5a\xe1\x44\x28\xc9\x5a\x8d\x1a\xb8\x70\x01\xcf\x5d\x1d\x26\x9b\x15\x0e\xd6\x87\x83\x81\x0d\x4d\xe2\xc8\x89\x26\x8d\x87\xe1\x63\x40\xa0\xd8\xc4\x3f\x36\x18\xf0\x17\x2b\x4f\x0a\x70\x4e\x30\x21\x67\x2c\x3f\xab\xe8\x28\x78\x7f\x19\x9e\x87\x95\x65\xb9\xd3\xc5\xf9\xcb\xa9\xf7\x46\x15\x94\x84\xa7\xd2\x71\x3f\xf1\xbd\x0d\x2f\x09\x5d\xc4\x9a\x79\x79\xb8\x91\x80\xa1\xd2\x9d\xef\xdb\x03\x0f\x0a\xda\xb1\x66\x78\x9e\x0a\xfd\x09\x88\x10\x1b\x66\xe7\xe6\x7c\x51\x9b\x9b\x83\xc6\xab\x17\x2b\xf6\xa9\xc6\x40\x11\xe1\x4b\x29\x22\x24\x89\x31\x04\x69\x8d\xa3\x40\x86\x71\xe4\xd0\x14\x6c\x53\x25\x29\xe6\xcf\xb1\xec\xd8\x69\xda\x34\x98\x04\xb2\xfd\xd4\x4d\x29\xb1\xd3\x76\x4f\xa9\xcf\x49\x34\xdd\x35\xa7\x5d\xfb\xe8\xb4\x24\xee\x19\x2f\xf4\xa3\x99\x5b\x73\x30\x48\x11\xbf\xb4\x66\x85\x57\x6a\x95\xc1\x80\x37\x20\x98\xc2\x89\x95\xa1\xfb\x3e\xdc\x1c\x23\x8e\x6b\xab\x88\x96\x39\x46\x35\x09\x5a\xcf\x03\xa7\xcb\xa1\x8c\x3a\x3a\xa5\x59\x93\x14\x5e\x63\xbb\xe1\xdd\xd5\xb7\x4d\xdc\xb6\xbb\x41\x7f\xd2\xb4\xb1\xf8\xf9\xe9\x4c\x35\xac\x1d\x21\xa5\x64\x3b\x70\x52\xc3\xcf\x34\x66\x19\x62\xe4\x00\x49\x1b\x07\xa9\x3c\x08\xaa\xd8\x41\x75\x92\x4b\x67\x84\xef\xb0\x6c\x26\xe2\xb5\x4c\x45\x36\xbd\xa8\x40\x07\x97\x53\x47\x55\x6b\x45\x84\xda\x24\x8e\x02\x9f\xc2\x04\x5d\xd0\x0a\xd8\x92\x94\x18\x13\xa9\xcf\xf5\xdf\xf8\x9c\xf5\xd8\xc2\x7a\x3c\xfe\x94\xac\xc7\x1b\x97\xd0\x9d\xde\x72\x19\xc2\xa9\xc3\x84\x80\xaa\x8e\x18\x83\x3d\x4a\xb2\x9d\x6a\xc4\x62\xd0\x8e\x84\x11\xae\x86\x53\xe7\x44\xf8\x7c\x6f\xb9\xe4\xde\x82\x38\x26\x49\x90\x57\xb6\x30\x89\x46\xb5\xfa\x91\x1e\xbf\x59\x90\x18\xbd\xe3\x22\x90\xe1\x2c\xda\xe9\x18\xce\x45\x25\xd3\x4d\x45\x38\x8b\x82\x85\x9f\xa2\x05\x9e\x32\xb4\x20\x82\x34\x63\x05\x92\xc7\x28\x26\xe1\x2c\xc2\xd8\xef\xb2\x86\x5c\x98\xe8\x54\x4e\x94\xc3\xc1\x60\x31\x62\x47\x4c\x9c\x9c\x2f\xf8\x05\x0d\xc1\x4f\x21\x7d\x68\x9b\xaa\x15\xe2\x51\xb0\xc0\x65\xbd\x78\xe8\x96\xc5\x93\x80\x7f\x99\x59\x3c\x59\x90\xd7\x8b\x27\xd3\x68\x90\x37\x16\x0f\x35\x8b\x87\xb6\x16\x8f\x28\x11\x23\xa7\x25\x69\xd2\x2c\xec\x9f\x6a\x69\xe7\x61\xe0\xed\xef\x57\xe7\xbe\xfb\xfb\xce\x51\xf9\xa3\xe6\xe1\x35\x1b\xed\xef\x57\xa7\xa3\xfb\xfb\x41\x10\x3c\x74\x2d\xb3\x1c\x82\xf5\x39\x11\xeb\x24\x62\xc8\x55\x9f\x40\xa0\xb4\x70\x1c\x41\x9f\x74\xcc\x76\x1d\xea\xbf\x1f\x17\x45\x1f\xc5\x7a\xd3\xae\x0d\x0c\xd5\x9b\xb4\xb9\xba\xfb\x7d\xb0\x56\xd6\x87\x74\x70\xd9\x3c\x0e\xa4\xad\xe3\x40\x8a\x07\x83\x7b\xc0\x2a\x91\xb4\xc6\x46\x7d\xca\xf7\xa0\x83\xc5\x7b\xf0\xcf\x80\xc5\x7b\xef\x73\xbc\xbc\x14\x5e\xea\xa4\x01\x13\x4c\x26\x58\x21\x25\x0f\xda\x2c\xce\x56\xfd\x4e\x8f\xf5\x83\x40\x94\xb8\x33\x9c\xa5\xe3\xe0\xa7\xd8\x21\x16\x0a\x1d\xca\xb2\xc3\x58\xaa\x9a\xd6\x07\x8a\xa7\xe6\x8e\x12\xf3\xb6\x43\x69\xab\xcc\xd9\x9e\x39\xef\x76\xc3\xff\x99\x47\x15\x3a\xc1\x83\xba\x9e\x37\xeb\x53\xb7\x6a\x56\xb4\xf7\xf0\x69\x46\x17\x6c\x8f\x49\xa3\x43\x36\xe2\x26\xed\x0c\x89\xe1\xac\xe1\x12\xa2\x6d\xea\x91\xb9\x8d\x49\xa6\x35\xac\x7c\x64\x6a\x0b\xaa\xab\xcd\x64\x0f\xb6\x36\xc5\x0f\x8b\x12\x02\xc0\xd1\xe6\xea\xee\x55\x5f\x9b\x6f\x48\xed\xb8\x96\x07\xe3\x1b\xf9\x4d\xfb\xc1\x8d\xdc\xa6\xf3\x4f\x02\x1a\xe6\x11\x99\x05\x8a\x97\x4f\x34\xf3\x3e\x03\xce\x7f\xa6\xd0\x39\x69\x32\xff\xa7\x86\xe9\x4f\x22\x6b\x72\x6a\x22\xfe\xbe\xe7\x3c\x24\x14\x93\x79\x20\x9a\x92\x88\x71\xf5\xf3\xc5\x8e\x2a\x08\xa2\x75\x8c\xde\x44\x0b\x42\x2d\x29\x23\xb4\x99\xac\x12\x0e\x82\xe7\x84\x63\x7b\x64\xe0\xf6\x2e\x01\xee\x5d\xa7\x95\xd9\x78\x0e\x0a\x5c\x67\x78\x76\x27\xf8\xb4\x59\x48\xd8\x3a\x59\xa0\xc0\xb1\x88\x9d\x01\x61\x7b\xcd\xc5\xe4\x9a\x2e\xdc\xf9\x54\x42\x8b\x26\x1d\xb5\x3c\xb0\x25\x70\x81\x79\xfb\x5a\xb7\x8c\x50\x4b\x37\x6f\x22\x88\x27\x0d\x4e\x16\xd8\x84\x19\xaa\x20\xbd\xbf\x11\xc2\xbd\xd3\xa2\xd2\xe5\x3f\xe9\xe7\xfc\xe7\xa5\xf9\x4f\xf0\xb4\xa2\x15\xff\xa9\x83\x03\xdd\xa8\x1f\xd9\x2c\x67\xc6\xe6\x65\x27\x0d\x73\x85\x4a\x51\xa0\x84\x37\xb8\x74\x79\x39\xbe\x85\x56\x67\x83\x81\xa9\x1a\x04\x06\xba\x71\x58\x4a\x1b\xb4\xba\x32\x77\x6d\xd1\xea\x14\x50\xfa\xf5\x8e\xbd\xfa\xf5\x7f\xb2\x7b\x35\x79\x39\x38\x3d\x64\xd2\xef\xd8\x9c\x61\xbb\x45\xb5\x21\x66\xa0\x83\x64\x33\x7b\xea\xd1\x02\x01\x0c\x3c\x3a\xdf\x38\x91\xdf\xf5\xa1\x1c\x03\x02\xf2\x8a\x22\x20\xd5\x11\x8a\xc4\x18\xeb\xe3\xf3\x4e\xc5\x8f\xa1\x79\x5a\x53\x22\xb0\x35\x69\x55\xdf\xc7\xc9\x5c\x30\xae\x08\x83\x6b\x1b\x4c\x8d\x51\xa7\x64\xdc\x74\x28\x6b\xb6\x6b\x8e\x6b\x24\xde\x69\x55\x03\x04\xf5\x2d\x24\x48\x46\xaa\x0f\x70\x09\x3c\x7e\x75\xb6\xbd\x16\xe9\xe3\x93\xb2\x6a\xaf\xef\xd8\x22\x1b\x5f\xe9\x46\xd3\x79\x50\x3d\x30\x9e\xd4\x06\x8e\x9c\x48\x27\x93\xaa\xfb\xb4\xdc\x2e\xdc\x84\x32\x52\xd3\xb0\x31\xc8\x53\xf5\xc6\x6e\xa2\x25\x49\x8f\x39\x04\xa6\xe9\xa0\x89\x6f\xb2\x45\xa2\xd0\xc9\x14\xa9\xa7\x01\x97\x64\x9b\xb6\xc4\xef\x54\x0d\xd9\x9a\xb6\xeb\x58\x9c\x19\x06\xaf\xb3\xf3\xeb\x81\x78\xa8\x8d\x4f\xb2\x16\x76\x36\xc2\x16\x40\xce\x84\xec\xed\x58\x2e\x21\xd9\xf3\xd4\x56\x93\x55\xfb\xb6\xdf\x78\x54\xd7\x4c\xf4\xb6\x29\x30\x2e\x1d\x86\xf5\x49\xd3\x37\x21\x94\x11\xac\xf9\xb7\xb6\x9c\x8f\xd8\xbd\xa1\x52\xaa\x03\x31\x3d\x2d\x1d\xd7\x60\x6d\x02\xd6\x78\x24\x80\x63\x7c\x62\x03\x00\xeb\x49\xb7\xbe\x12\x06\x40\x6b\xdd\x67\xb0\xc6\x7a\x55\x00\xde\x01\x82\x3e\x50\x57\x7a\x39\xbf\x8c\xed\xa7\x1a\x87\xbb\x76\xa8\xae\x63\x9b\x9c\x1f\x0b\xd7\x1d\xbd\x91\xe8\xd4\xc0\x61\x54\x93\x18\x9f\x32\xed\xa9\x54\x9f\xe9\xb8\x18\x9d\x3a\x81\xf0\x75\x41\xf2\x3a\x7a\x5d\xb1\x92\x12\x13\xe6\xd8\x96\xb7\x4e\x25\x5e\x6a\x1e\xd7\x84\x91\xa2\x91\x37\xc4\x26\x27\xa0\xe8\xa3\x0c\xc5\xee\x24\x6a\xd0\xc5\x1d\xe7\xb8\xe8\x1c\xf6\xb7\x15\xf9\x7d\x83\x9d\xae\xa6\x1c\xce\xe7\x99\x13\x2b\xb8\x28\xfa\x62\x73\xa5\x29\x7e\xfb\x3c\x9e\x43\x86\x2c\x0a\x44\xc8\x22\xad\x5d\xd4\xfa\xd1\xaa\xd3\xaf\xb6\x8f\x62\xb6\x61\x4d\x6d\x38\x78\x5a\xb6\x0d\x07\x21\xb0\x71\x6d\x49\xc0\xb5\xba\x83\x2b\x2e\xbf\x8e\xf0\xdf\xd3\xe7\x2d\x5f\xfb\x5c\xf6\xda\xa2\xd8\x7c\xff\x53\x2a\x36\xbf\x76\x09\xc5\xe6\xdb\xc6\x72\x57\x9c\x54\xe8\x01\x53\x58\xf7\xb3\xd2\xea\xd7\x38\x72\xa5\x45\xea\x3a\x90\xac\x25\x23\x1a\x88\xb6\x17\x6c\x92\x68\x3d\xc1\x5b\x34\xf1\xe6\x65\xa7\xe8\xe9\xba\x6e\x59\x77\xa4\xd7\xb2\xbb\x55\x68\x49\xbd\x3c\xfc\x30\x2a\xe1\x24\xb2\x3b\x25\x82\xb6\x94\xeb\xdc\x09\xf4\x70\x29\x4c\x31\xa0\x75\x5a\xc0\x42\x91\x9a\x29\xda\x80\xa2\x2e\x86\x4b\xc8\x4b\xa9\x79\x0b\x2b\xb9\x58\xfe\xa1\xa5\x66\x86\x84\xa5\x1d\xc3\xdb\xd9\x87\xac\x4a\xc1\x1b\x66\xd1\x0e\x58\xb9\xb4\x08\x45\x7d\x96\x94\x37\x25\xb8\x34\x7c\x1f\x51\x12\x66\x4d\xbd\xa4\x09\x3c\xe6\x37\xd4\x46\x39\x1e\x0c\x18\xca\x01\x38\xfb\x11\x08\x29\x69\x09\x20\x9f\x96\x24\xd4\xa2\xa6\x0b\x30\xad\x8d\xde\xea\x20\x69\xd4\xf2\x41\x34\x4c\xa3\x1d\xe1\x48\x71\x29\xc9\x70\xa9\x45\x40\x38\x91\x7b\x1b\x86\xac\x28\xfa\x1d\xd8\xd4\x65\xe6\xbb\x69\xfa\x5e\x6a\xf3\xf7\x4d\x49\xe8\xc2\xac\x21\xed\xe4\x24\xda\x40\x5e\x67\x06\x71\x22\xe1\xdd\xa1\x92\xe9\x87\x60\xef\x8b\x64\x98\x46\xb8\x28\xd4\x4f\x53\xcc\xb6\x73\x94\x56\x9b\x45\xbe\x31\x1f\xcd\xb1\xc8\xad\xc1\x6d\xf3\xf1\x31\xca\x31\x2e\x9b\xcf\x5e\x31\x28\xf5\x8a\xbe\x07\x2f\x64\x73\x2b\xe1\x16\xeb\x64\x64\x8e\x1e\xe4\x95\x0d\xae\x41\xf3\x03\xa7\xe6\x43\x6b\x49\xd7\x56\x8a\xd4\x55\x07\xd5\x55\x53\xb3\xd1\xe4\x5b\x48\x05\x69\x20\x2e\xab\x09\x31\xee\xad\x4d\xf5\x7b\x1d\x9f\x97\x07\x41\xd0\xf6\x52\x98\xf2\xa9\xf4\x2d\xb5\xf2\x25\xec\x37\xef\x04\x9f\x5b\x5a\x5f\x68\x69\x4d\xbe\xb2\x2d\x79\xc2\xe7\xd6\xd3\x9f\x5b\x4f\x7f\x6e\x3d\xfd\xb9\xf5\x34\x58\x4f\x93\xaf\x7e\xce\xbc\x6f\x61\xde\xbf\xfc\x29\x99\xf7\xaf\x6e\x37\x88\xfc\xba\xab\xb7\x26\xdf\x08\xbc\x7d\x23\xec\x7a\x84\x31\x75\xa7\xa5\x63\x8f\x48\x75\x07\x90\x65\x1e\x11\x1d\xb9\x60\xfb\xe3\x92\x70\x16\x9c\x66\x8f\x62\xeb\xac\xa9\xd7\x70\x45\x1f\x63\xd6\x30\x85\x05\x1f\x6e\x76\x9e\xc2\xa1\x71\x84\xa2\x25\x45\xc1\x36\xf4\x0b\x0d\x79\xd2\x1c\xb4\xd8\x58\xef\xf6\xa8\xfe\x65\x6e\x15\x0b\xb5\x17\xe1\x3d\xba\xb6\xba\x88\xe6\x89\xf3\x43\xf3\xb0\xc3\x40\x50\xbf\x59\xd1\x93\x03\xf6\x16\x28\x15\x40\x3b\x11\xc4\x46\x89\x61\x7c\x33\x83\x37\xf5\xad\xf1\xdc\x0d\x74\x26\xdd\xf0\x1b\x91\x55\x76\xec\xaf\x05\x3b\x8a\xd3\x3c\xbb\x6d\xb4\x1e\xfa\x79\xc8\x58\x64\x1b\x09\x65\x7d\x3d\xda\x3f\xb2\xde\xaf\xb6\x1b\xfb\x3a\xb0\x5c\x16\xec\x21\x0e\x71\x74\xf4\x53\x91\x73\x1e\xf3\xc3\xaf\x55\x9d\x54\x40\x77\xa9\x44\x36\x72\xbf\x98\x32\x46\xd3\xc2\xb0\x6b\xeb\xaa\x76\xfd\x86\x09\x68\xda\x4c\xf2\xdc\xf5\x79\xcb\xaa\xb5\x5d\xc3\x86\x11\xe9\xa7\x54\x8f\x68\x7e\xae\x6a\x7e\x87\x0f\x06\xdc\x36\x62\x98\x13\x4e\xbe\x0c\x46\x5c\x0d\x38\x2c\xa7\x79\x0e\x7b\xd9\x2e\xbe\xd7\x2a\xde\x71\xce\xd6\x9d\xaf\xc0\xa9\x88\x78\xfb\x07\x54\xb0\xdb\x76\x75\x35\x55\xd3\xae\x7e\x4a\xe1\x84\x5d\xaf\x5f\x47\xec\xb2\xc7\x9f\x96\xa9\xdb\x72\x08\x5a\xb6\x52\x24\xcc\x52\xbe\x88\x0f\x73\x73\x3f\x2e\xb7\x65\x44\x6b\x74\x61\xb6\x0d\x7a\x03\x8c\xce\x98\xaa\x3a\xf0\xd9\xb4\x67\xa9\xcf\x96\xe6\x9a\x22\xee\x86\xd8\x61\x75\x4c\xdc\x75\x4e\xd5\x27\x10\x58\x86\x31\x38\xa7\xc2\x59\xc2\x65\x4d\x28\x55\x61\xc7\x8a\x52\xdd\x3a\x1c\x34\x9d\xf2\x86\xbb\xaa\x20\xaa\xee\xa6\xbb\xaa\x59\xa3\xbe\xfa\xd4\x21\x4c\x36\x6f\x90\x79\xda\xf2\x64\x8d\x15\x66\x3b\x9e\xac\x9c\xe4\x88\x69\x60\x6c\x2b\xae\x27\x2b\xd7\x6e\x49\x8a\x9c\x7c\x96\xb3\x7e\x59\x94\xbd\x5b\xe3\xc0\x54\xc9\x29\xfe\x69\xf9\xd9\xe1\xc2\x56\x54\xb0\x3d\xfe\x4c\x9a\x9a\x53\x49\xcf\x6f\xe9\x1b\x9f\x4d\x43\x26\x25\xfa\xd6\xb6\x14\x2e\x27\xf5\x6c\x56\x59\xca\x3e\x93\xa6\x1f\x88\x38\x93\x31\xdf\x3a\xb1\x0d\x2d\x91\x9d\x52\x62\x14\xe4\x76\x37\x1a\x55\xdb\xe8\x57\xd8\x49\xe5\x0b\xd1\x96\xb2\x07\x03\xe9\x1e\xc9\x9e\xe7\xd5\x03\x71\xa4\x66\x49\x3e\x67\x90\x3d\x0e\x63\x1b\x80\xd7\xfa\xf1\xf4\xef\x7e\xc6\x44\x26\xce\x4c\x04\xbc\x6d\xd3\xd0\x77\xd3\xd7\x7f\x46\x4d\xde\x89\x85\x3c\xb9\xa8\x41\x3b\x43\x17\xb7\xc9\x9a\x79\x23\xdf\xe2\x8f\x78\x5a\x53\xaf\x4e\x36\xbb\x31\x8d\x10\x36\xac\x39\x95\x20\x2e\x35\x27\x52\x71\xb2\xbc\xd6\xbe\x15\x05\x1f\x2d\x62\x3e\xdf\xa2\x41\x5d\x01\xbb\xac\xd5\x07\x26\x96\x9b\x18\xb9\xbc\xa2\x49\xf4\x16\x7e\x23\xb2\x89\xc6\xac\x82\x29\x25\x26\x20\x27\x76\x16\xdd\x68\x3f\x63\xb2\x1a\x4f\x20\xb2\xcc\x12\xce\xda\x85\x8b\x5a\xde\x50\x7f\xb2\xa4\x7c\x9e\xb0\x9a\x3b\x42\xfd\x31\x69\x7e\x5a\xe2\x9d\x4f\x56\x7b\x83\x3f\x63\x5f\x61\xda\xfd\xa4\xe5\xc2\x63\x55\x7f\x9b\x5c\x73\x1d\x08\xc6\xf7\x86\x7b\xc8\x8e\xc0\x69\x89\xdd\xc8\x60\x8d\xca\xd6\x82\xad\xa9\xe8\xca\x97\xc9\xb4\x97\x8f\xcb\x5a\x60\x7b\x68\x45\xe0\xe4\xca\xcc\xf6\xd7\xb7\x24\x57\x76\x39\x19\x61\x0d\x6e\x20\xb0\x14\x61\xfa\x70\x67\xa7\xe2\x53\x45\xe9\x2a\x42\x1a\x10\x6a\x75\x05\xdb\x38\x70\xdb\xb1\x7e\x48\x66\xf5\x98\xc4\x97\x06\xff\x5d\x37\x2a\x35\x06\xa2\xde\x4c\x58\x70\x1f\xc9\xc6\xb1\x61\x83\xc1\xc6\x15\x7f\xfd\x0a\x6c\xfd\x2e\x64\x96\x09\x44\x9e\x81\xca\xc3\x1b\xbc\xf6\x36\x7e\xbc\xcd\xfb\x1d\xb1\x2e\x53\xad\x77\x2e\x19\x4a\x40\x6b\xbc\x2c\x51\xfc\x4a\xdb\x5b\x98\x56\xde\xc2\xb4\xe5\x2d\xec\x0e\x89\xf5\x95\x14\x2c\x4b\x93\x23\x3d\xe1\x06\x09\x4d\xff\x10\xee\xd2\x6d\x49\x00\x7f\x2a\x02\x7d\xa1\x76\xe2\xae\x52\xee\xb2\x93\xc4\x53\x45\x15\x6f\x83\x4c\x96\xd9\xb6\xe0\xa3\xd0\x08\xaa\xd3\x46\xc8\x01\xc7\xc4\xaa\x21\x26\x2d\xa7\x65\xea\xfa\x3a\x4f\xc8\x75\x42\x9e\xd5\xbe\xce\x6d\xcf\xe3\x5e\x1c\x50\xeb\xde\x0c\x8d\x8a\x54\x87\xf1\xd2\xee\xce\x71\xe5\x8e\x6c\x94\x0d\xad\xd2\xed\xa9\x34\xc9\xb8\x2c\x72\x74\x96\x21\x95\x4a\xda\x1d\x80\x4a\x31\x5d\x3d\xdc\x63\x12\x0e\x24\x9a\x3a\x2c\xc7\x21\xba\x81\x2f\x10\x5d\x68\x8b\x9b\x60\xf8\x0d\xd0\x55\x3c\x42\x0c\x13\xa6\x66\xb6\x45\xe3\x07\x03\xe6\xdc\xb9\x74\x6f\xa7\xa6\xd7\x0a\x85\x09\x0f\x18\xfc\xea\x4c\xb4\x8a\x31\x20\x69\xc0\xe0\x97\xc2\x02\xce\x58\xd5\xed\x4a\x8a\xc4\x24\x0b\x5e\x42\x5f\x47\x1c\x93\x18\x93\x1c\xae\x41\x89\x4f\x92\xe0\x0e\xca\x48\x8a\xc9\x2c\xb8\x83\x72\x27\x2a\x34\x05\x81\x34\x21\x14\x16\xce\x8c\xd0\xd1\x3e\x57\x82\xf1\xc9\xd7\x62\x21\x73\x9a\x38\xde\x32\x98\xd0\x96\x07\xa3\x99\xc1\x2d\x27\xf0\xfb\xf6\x3d\x98\x68\x60\xd7\x85\x72\xbb\x44\xbc\xad\x71\x9b\xc3\xb6\x5a\xf6\x74\x21\x99\x78\xd3\xb4\xe0\xe1\x8e\x85\x6d\x9b\x37\x1b\xff\x96\x29\x23\x40\x36\x2d\xf3\x55\xa9\x50\x4c\x1e\xdd\xad\xf0\x84\xc0\x26\x59\xf0\x75\x59\x1d\x8d\x4f\xed\x15\x92\x11\x86\x89\x70\x82\x65\xbe\xb8\x3b\xb1\x28\xcb\x3a\x3e\x60\xea\x03\x8c\xfd\x0b\x5a\xc5\x8d\x11\x13\xdd\x67\xf8\x52\xb7\xb0\x51\x3d\xb0\x59\xdb\x87\xa9\x83\x8f\x68\xb2\xc3\x5b\xe1\xbe\x68\x1c\x36\xdb\xb4\xfb\xea\x67\xe3\x6c\xfa\x09\x09\x76\xc3\xa1\x77\x83\x5e\xd7\x6c\x79\x3f\x30\x98\xd1\x54\x2e\xd5\xc1\x15\x58\x95\x73\x99\x55\xac\xeb\x8b\xe3\x29\xf3\xbf\x8e\x6e\x75\x7d\x88\x21\x77\xdf\x86\x43\xbd\xc6\x45\x11\xc2\xaa\x6f\x1c\xd7\xbc\x35\x95\xc6\xc8\x05\x61\x5f\xd6\x81\xdc\x5b\x7c\x09\xe4\x04\x56\x44\xd4\xf5\xb8\x97\x38\xc2\xbe\xf3\xcc\xee\x2c\xa0\x28\x88\xba\x08\x1b\x9d\xcf\xe1\xb0\x62\x5b\xfe\x8c\x0e\xbc\xd0\x81\x93\x36\x23\x7f\x29\x9e\xa4\x7d\xf0\x5d\x9d\x26\x17\x85\xcd\x73\xdb\x59\xc4\x0c\x98\x87\x4d\x0e\x28\x8a\xea\xe2\xf5\x6b\x9d\x11\xcb\x7a\x4a\x02\x7a\x46\x3b\xf6\x03\xae\x58\x35\x13\x06\xd3\xa0\xe6\x4e\x4b\x84\x0c\x5c\xc5\x1e\x8a\x09\x23\x82\x9c\x76\xef\x0c\x44\xb6\x18\xb5\x3c\x5b\xc2\x40\x65\x9f\xb1\x9a\xab\xa2\xf4\x26\xfd\xb8\x61\x83\x10\x27\x90\xb5\x47\x77\x2d\x4f\x12\x02\x71\x47\x75\x5a\x2a\xab\x5b\xc8\xaa\x41\x68\xcd\x46\x8a\x07\x83\x97\x74\x0c\x05\xb8\x46\xee\x67\x41\x98\x1a\xf5\x49\xde\xa8\x6e\x27\x0d\xbe\x0c\x56\x7c\x26\x28\x82\x6e\x5b\x6d\x20\xe7\x8f\x23\x27\x60\x76\xbd\x65\x1c\xcd\xa9\x41\xe6\xea\x48\xd2\x16\x4b\x9d\x71\xba\xce\x96\xa9\xec\xde\x53\x60\x4b\x94\xed\x49\x3d\xb5\xf1\x1c\x7e\x3e\x45\xda\xa9\x12\xad\x60\x3e\xfd\x73\x18\x68\xc7\x27\xd7\xe5\xa5\x4d\x9f\xcc\xf1\x81\xdb\x33\xee\x8c\x67\x69\xf9\xec\x8d\x18\x00\x99\x4c\xbb\x79\xfe\x8a\x23\x16\x01\xd3\x47\x07\x4a\x7e\xfb\xf9\x39\x7c\x92\x06\x5f\x47\xa2\xf3\xe3\xca\xe3\x58\xb8\x2e\xb5\xd6\x92\x94\xda\xb3\x11\xe2\xf6\xa8\x96\x1c\xda\x5b\x04\xaf\xb7\x83\xf4\x82\x4d\xbd\x6b\x6b\x98\xd1\xac\x15\x06\xb8\x69\x66\x66\xf5\x7d\xb2\x16\x23\x3a\x12\x14\x0e\x06\xae\x3e\xa1\x83\xd1\x7a\x15\x49\xf2\x75\xc7\x01\xa3\x5b\xba\xad\x94\x14\xb2\x11\xe3\xa4\x16\x96\x3a\x3a\x60\x84\x20\x2a\x1b\x82\x61\x33\x8f\x7d\x87\x42\x5f\xf3\x21\x0e\x03\x22\x5c\x15\x89\x2f\xaa\xfd\xa5\xd9\x9a\xbb\x15\x6c\xd5\x00\x10\x5e\x89\x1a\x1d\xa4\xc5\xa6\x62\xaf\xaa\x02\xed\x77\x8c\x2b\xb1\xae\xe2\xb9\x74\x82\x96\x1a\x68\x4f\x7d\x3d\x43\x55\x42\x89\x5a\x82\x7f\xcd\x19\x04\xc4\x48\x7f\x8c\x49\xda\x8e\x9f\xc2\x9d\x08\xfa\x5d\xdf\x4c\x14\x07\xb5\x29\xdb\xf3\x0d\xd1\xbe\xb4\x96\x0b\x5d\x93\x28\x5a\x2c\x63\x0b\x7a\x69\xa3\x66\x1a\xe5\xc4\x66\x7b\xe9\xa6\x2a\xa1\x53\x0e\xed\xaa\xbd\xc5\x30\x6f\x54\xde\x3d\x63\x55\xe0\x9e\x23\x13\xb5\xa7\x0f\xc8\xdc\x76\x2b\x55\x58\x3e\x71\xb0\x7c\x30\xd0\xe5\xc2\xf1\x96\xdd\xae\xc9\x98\x09\x4c\xe2\x29\xd7\x34\xda\x6e\xfd\x48\x58\x22\xcd\x5d\x52\xc6\x4a\xbc\x05\xeb\x36\x4e\x4c\xea\x9d\xcc\x91\x4b\xac\x14\xa3\xa5\xa3\x0e\x01\x95\xdb\x6c\x26\xdc\x2a\x65\xaa\xc0\x3d\x8e\x5e\x46\x54\x81\x7b\x1c\x95\x41\x15\xc2\x27\xae\x26\x66\x33\x66\x50\x3a\x18\xf4\xeb\x4d\xb0\x28\xd2\xb2\x3e\xdc\x6c\xf4\xcb\x51\x0f\x75\x12\x65\x35\x33\xa2\xb2\xad\xe1\x01\x6b\xc4\x53\x72\x08\x12\x07\x93\xfa\x53\x07\xb3\xec\x1e\x99\x3a\xb6\xdb\xdb\xb6\xca\x5a\x1d\x43\xb5\x5f\xd3\x3d\xf5\x19\xbe\x40\x82\xd8\x38\x05\x6b\xaf\xaa\x73\x54\x84\x1d\x04\x89\x03\x4f\x5a\x14\xe3\x1d\x59\x14\x93\x7e\x10\xf0\x69\xa3\x23\x82\x30\x22\xa7\x7c\x38\xf1\xf9\xee\x04\xfb\x26\x16\x39\x58\x0d\x37\xa1\xd8\x42\xfe\x3b\xfd\xe3\x8a\x02\x75\x8b\x8f\x10\x4e\xbd\x51\xad\xfb\xfe\x93\xb0\x0b\xbd\x2f\x23\x9b\x17\xf2\xcb\x48\xb1\x0c\xb0\x11\xe0\x8d\xc1\xab\xc6\xb6\x3d\x6c\xcd\xa3\x6b\xcf\xc3\x0d\xe1\x1d\xb8\x78\xc7\xcd\x4f\x61\x83\x5a\xa6\xbc\x5a\xa6\x1d\x06\xd9\xb8\x1a\x3d\x19\x55\x49\x6a\x45\xc8\xc3\x71\x14\xd5\x7e\x35\xc1\x57\x95\x68\x4f\x83\x38\x1c\x47\x24\x0b\xe2\xca\xf3\x97\xe4\x81\x20\x49\x20\x42\x1a\x91\x59\x40\x6f\xa4\x28\xc1\x83\xc1\xec\x86\x75\xc9\x4b\x6e\xd4\x8e\x1e\x0b\x8d\xbc\x45\xb1\x70\xb7\xf3\xc1\xc0\x40\x90\x87\xb3\x88\xe4\x41\x42\xd0\x2c\xc8\x46\xd9\x32\x5e\x48\xad\x06\x4a\x82\x24\x9c\x45\x6e\x4e\x52\x77\xb4\x0e\x59\x57\xf0\xfe\xaf\x22\xd6\x70\x5a\x16\x81\xd4\xfe\xa1\xb2\x06\x9d\xd6\x53\x95\xb9\x64\xe2\x52\x87\x75\x94\x88\xca\xc7\xaa\xb1\xb1\x51\xa3\x5c\xee\xa7\x60\x81\x5a\xf5\x3e\xb7\x5b\x55\x5e\x7e\x92\x36\x06\x83\xbb\x88\xe2\xda\x4d\x52\xa8\x71\x3e\x46\x89\xd1\xc3\xce\x2a\xe7\xc7\x2d\xfa\x34\x17\xb4\x19\xe1\x8e\xff\x34\x6e\x78\xfd\x2c\xdc\x30\xb4\xae\xe3\x5e\xba\x35\xa6\x8c\xc9\x2d\x43\x1b\x48\x07\xde\xa4\xcd\xa0\x12\x87\x88\x7e\xb2\x60\x09\x30\x7c\x59\xc3\x87\x9c\x86\xb5\x1f\x65\xd4\x0f\x82\xd9\x60\x20\x50\x46\x66\xb8\x3b\x2c\x4c\x16\xe8\xb7\x97\x70\x71\x6b\x84\x2b\x48\xdd\x70\x05\x69\x57\xb8\x82\x2d\x2e\x6e\xfd\x49\xa9\x66\xbe\xe1\x98\xd2\x34\xe3\x6d\x3b\x43\x36\x06\x8d\xb6\x06\x2d\x0b\x0e\x51\xaa\x16\x57\x56\x0d\x5a\xae\x07\xad\x7e\x64\x71\x22\x77\x06\x8d\x16\x45\xff\x92\xa8\x95\x38\x4e\xfa\x34\x10\xf0\xe4\x12\xc3\x95\x0f\x06\x06\x14\x30\x11\xcc\x36\x0c\x00\xb3\x4b\x0d\xd7\xb8\x73\xb8\x1a\xd8\x9a\x91\x2a\x8e\x80\xc6\xf5\x85\x36\x45\x5f\x74\xba\xb9\x2d\x9c\xf8\x46\xf3\xe6\x71\x4f\xa6\x38\x8e\x65\x73\x95\xce\x1b\x4b\x61\xa7\xb6\xb1\xed\xbd\x85\x16\x64\xd9\x04\xac\xc3\x69\xad\xca\x4b\xb3\x50\x8f\x93\x06\x48\x5a\x04\xe0\x2d\x11\xc0\xe0\x76\x69\x1c\xf5\x80\x43\xd2\x11\xcd\xe1\xb2\xc1\xc8\x5a\x28\xa5\x31\x3e\x39\x82\xf0\x7e\x97\x58\xe1\x30\x66\x7a\xb4\xd6\x06\x41\x56\x1d\xe4\xc9\xb4\xb5\x2a\x0a\xd4\x7a\xdd\xd8\x67\xd5\x0c\x81\x8c\x8a\x31\xd1\x43\xb3\x22\xeb\xce\xa1\x31\x15\xae\xcb\xf6\x51\x61\x57\x10\xf6\xd6\x1e\xc4\x70\x51\xdc\xb3\x5d\x9d\x9a\xad\x2c\xb0\x8c\xc9\xc6\x69\xa3\x3e\x0e\x6b\x79\x43\x51\xd6\x65\x2f\xdd\x4b\xeb\xc7\xa0\x95\xc9\xda\x6c\x63\x9d\xa4\xcf\xa9\xc1\xc5\x06\x3d\xc6\x31\xe9\x70\xf5\xac\x64\xb5\x43\x26\x91\x9b\x77\xe7\x7c\xd7\x3b\x18\x96\x46\x79\x85\x9e\xfd\x71\x59\xba\xf1\x1f\x72\xf6\x8f\x12\xc0\x0b\xb2\x95\x18\x61\x1e\x5d\x7f\x16\xc2\x84\xa0\x6b\x13\x25\xe3\x09\x34\x99\xe0\x9d\xcd\xf4\x43\xd6\xae\x06\x8e\x82\xd5\x6c\xbb\xab\xa8\x0e\x6a\xa6\x7a\xa9\x4b\xea\x93\x54\x48\xf7\xba\x16\x4c\x32\xad\x75\x53\x32\x97\x39\xd8\x31\x79\x3f\xb7\x29\x92\xdd\x4f\xab\xc2\xa8\xd2\x13\x43\x91\x13\x3a\x9f\x37\x53\x07\x38\x38\x05\xee\xb1\x2d\xd5\x1a\x60\xac\x7f\xad\xe3\x8d\xda\x41\xe2\x6c\xdf\x11\x0d\xa7\x75\x13\x3a\xb8\x8d\xb4\x8a\x77\x17\xb2\x5a\x1a\x76\xcf\x9a\xdd\x12\xd5\x35\x62\x04\x58\xca\x18\xeb\xd3\x21\x24\xec\x85\xc4\x84\xab\x89\xd6\x03\x93\x1b\xc9\x08\x9a\xb6\x29\xa7\xb6\x1e\x21\xbf\xa3\x4a\xf5\xae\x8d\x26\xa3\x71\xef\x76\xba\x3e\x11\xf1\xe1\x52\xf6\xae\x8d\x27\xe3\xde\x9e\x64\xeb\x25\xe3\xbd\xdb\x82\x65\xd9\x31\x4b\x92\xde\xd5\xde\x5d\xce\xc4\x61\xfc\x84\xcd\x7b\x6f\xa7\xe2\x51\xef\x75\x39\xf7\xca\xcb\x62\xca\xf3\x5f\xd2\x98\xf2\xfc\x0b\x1a\x53\xbe\x38\x56\x9b\xa1\x40\x9d\x08\xe3\x6e\xa2\x19\x58\x5d\xd5\x3e\x09\x8d\x39\xca\x36\x12\xe3\x25\x4e\x96\x15\x27\x4f\x50\x16\x8e\xa3\x51\x36\x4b\x05\x1b\xb1\xf7\x73\x9a\x64\x28\x0b\x27\xe6\x09\x76\x43\xf6\x3b\x5f\x2f\x62\x3e\xdf\x57\x3b\xdd\x1c\x8f\x66\x69\x92\xb0\x99\x44\x55\xb8\x08\xd2\xf3\x9a\x21\xf4\x89\x1b\x6f\x52\xb7\x34\x4b\x57\x6b\x2a\x98\xe2\x50\x5b\xed\xcc\x9b\x01\x3b\x9a\x70\x8d\x37\xe1\x5a\x36\xca\xaf\xe8\x4c\xa4\xee\x29\xbf\x7b\x12\xd0\x61\x60\xab\x46\x6d\x7a\x9a\x49\xb6\xf6\x8d\xfe\xd0\xef\x4f\x88\x60\x34\x4b\xb9\xef\xbd\xc5\x4d\xb8\x01\x98\x73\xaf\xf4\x93\xf3\x4a\xdf\x5a\x1d\xc4\x87\x79\x9a\x67\x50\xba\x87\x1e\x50\x29\x99\xe0\x59\x2f\xf4\x86\x33\x84\x87\x5e\xd4\xa3\x82\xf5\x68\x92\xf4\xa0\x43\xc9\x49\xef\x30\x4d\xe7\xbd\x19\xe5\x73\x00\x2f\xc3\x5e\xe9\xb7\xaa\x1f\x93\xe3\x98\x73\x26\xf4\x56\xa0\xaf\x21\xad\x99\x96\xc2\x13\x46\xc5\xbe\x7e\x1a\x34\xdd\x3c\x72\xd4\x91\x34\xac\xd9\x21\x5f\x41\xc6\x86\x5e\xa4\xe5\xa4\xa4\xeb\x8b\x66\xa7\xaa\x2f\x46\xbd\x8e\xde\x81\x39\x4a\xd5\x37\xb5\x32\x94\x04\xe6\x12\x9f\x0a\x7e\xe2\xdc\x76\xcc\x0a\xcc\x34\xcc\x65\x73\x0d\xe1\x53\x1d\x2b\x5a\x63\x5c\x87\xc6\xe9\x14\x3e\xf2\x25\x01\x34\xf1\x75\xaa\xcc\x50\x93\x48\x46\xe4\x28\x61\x47\x8c\x67\x4b\xc9\x62\xbe\x9f\xc5\x87\x9c\xca\x5c\x30\x64\xf6\xf6\x18\x28\x6c\x04\x4e\x57\xa3\x2c\x15\x12\x2d\xc0\xff\x8f\x82\x89\x6b\x33\x93\x5c\x63\x25\x77\x2f\x53\x7b\x7a\x23\xab\xac\x2b\x86\xea\x9c\xac\x59\xe0\xbd\x5e\x43\x72\x27\xd6\x24\x7f\x4f\xc1\xec\x39\xe7\x11\xfa\x53\xb3\x56\xba\x23\xda\x40\xbd\xbb\x75\x13\x66\x64\xf5\x8a\xe9\xf8\x04\xdc\xed\x6a\x30\x82\x80\xc1\x85\x79\xa6\x73\xc3\x04\x56\xc7\x52\xb6\xb3\xb7\xf2\x4a\xdf\x05\xe1\xac\x4d\xe6\x41\xbd\x07\x19\x03\xa6\xe1\xa4\x9d\x4d\x2c\xe0\x90\x3b\x5e\x84\x69\xe4\x14\x8c\x6d\xc1\x46\xa1\x3a\x0c\xca\xf8\x06\xbd\x19\xc4\x37\xa8\xf9\x32\xa4\x51\x30\xde\x2c\x0f\xaf\xc6\x51\x90\xc2\xab\xd6\x57\x63\xf8\x8a\x96\xa8\x11\x23\xb8\x9d\x58\xde\x28\xd8\x4d\xed\x47\x55\x16\x53\xe9\xc6\x46\x6f\xf6\xa8\x4a\x05\x9c\xea\x38\xc0\x4c\x75\x2d\xd0\x51\x33\x44\x98\x0e\x27\x51\x18\x0f\x27\x51\x00\xd0\xc5\x51\x7d\x5a\x46\xcd\xa3\xe1\x24\x1a\x4e\x48\x16\xd8\xc2\xea\x2e\xb7\xc5\x87\x93\x1d\xb7\x92\x2a\x67\x7b\x0e\x61\xb1\x4b\x0b\xaf\x08\x2d\x18\x51\x68\x61\x8d\xca\x8d\x94\x87\x97\x42\x54\x67\xf2\x99\xda\xaf\xb3\xf8\x20\x51\xf4\x53\xe2\xe9\xc4\x1f\xbb\x68\xbb\x47\x57\xec\xf5\xf8\x40\x50\x71\xa2\xd1\x95\x5c\x84\xa3\x75\xdd\xbb\xec\x17\x81\xa3\x97\xdd\x66\xb7\x6c\xa7\xa6\xf3\x40\x2f\x32\xf0\x3e\x75\xbb\x7b\x2f\x4f\x64\x7c\x51\x47\x3b\x22\x46\xeb\xea\xdc\x93\x73\x57\xe1\xa7\xdf\x86\x32\x6a\xef\x83\x59\x47\xd8\x56\xbb\xa7\xff\xdc\xa3\x06\xda\x32\x07\x76\x70\x65\xbc\xec\xa0\x4d\x34\x6f\x62\x98\xd8\x6b\x13\xcd\x9a\x5c\x7f\x1e\x2b\xec\x45\xd7\x9e\xdf\xce\xa3\x90\x9c\x24\x64\x86\x4f\x59\xb0\xb6\xa1\x1f\x16\xd5\x99\xf2\x5a\xef\x1e\x98\xcc\x03\x24\x02\x51\x14\x7c\x44\xb3\x13\x3e\xdb\xe7\x69\xba\x26\x8a\xd3\xd3\x24\x11\x61\x47\xc2\x71\xb7\xfa\xd9\x68\x95\xce\x21\x9b\x1e\x9f\x79\x41\x10\xe8\x7b\x5f\xf4\x95\xd4\x59\x57\x35\x18\xd8\xb3\x9b\x7e\xad\xab\x1f\x3a\x11\x70\xd7\x6e\x2a\x2e\x76\x6c\x1c\x86\x11\x6b\x98\x0a\xce\x82\x19\xa4\x24\x80\x51\x4c\x34\xf6\x07\x89\xb5\x2f\xda\xaf\x32\x3a\xcf\xf7\x0f\x1c\x7d\xa5\x23\x7e\x04\x41\xb0\x06\x77\x0d\x3d\x0f\x94\xef\x57\xec\x6b\xd7\x92\x59\x8c\x24\xcb\x20\x4b\x33\x69\xf2\xbd\xee\x10\x53\x92\x68\xa4\x5a\x9b\x8c\xd0\x86\x73\x28\x2d\xfb\x9b\xdb\x0b\x8a\x77\xfa\x5d\xe7\xa9\xe3\x9d\x18\x41\xea\x81\x23\x26\x24\x13\x19\x3e\x6f\x67\xad\x5d\x2d\x05\x3e\xb5\x61\xc3\xe1\x40\x9c\x19\x75\x22\x27\x7c\x58\x6d\x0a\xbb\x93\x2a\xa8\x80\x71\x63\xb6\x95\xef\xc3\xec\x34\xcf\x40\x15\x4c\x8a\x71\x2f\x95\x9c\x55\xa2\xc5\xe8\x50\xa4\xf9\x1a\xe4\x12\xf7\x28\x59\xc7\x3d\xab\x28\x77\x82\xcc\x19\x79\xba\x33\x1f\x65\x8c\xcf\x51\x36\x7a\xe3\xfe\xfe\xdd\xaf\xdf\xbd\xfd\xd6\xc3\xbb\xc4\x72\x52\x33\xf9\xd8\x5f\x5b\x3f\xff\x98\x65\xc4\x20\x9f\xbf\x70\xe5\x3b\x2a\x0e\x33\x38\xc6\x90\xe2\xe4\x34\x0d\xf8\x28\xe6\x47\xe9\x23\x86\x04\x69\x7c\xbb\x44\x31\x9e\xc6\x7e\x6c\x3b\x97\x54\x5e\xc2\x3a\x87\x6f\xd2\x00\x4e\xb3\x53\xb2\x6c\x0f\xe1\x26\x1e\xaf\x4d\x92\xbf\x1a\x95\xab\xe4\x57\x25\x4a\xf1\xd4\x1c\xe0\xf1\x11\x4f\x15\xa4\xaa\x5d\x9d\xcf\x0a\x25\xd8\x07\xa0\x92\xc1\x20\x41\xb8\xf2\xf8\xae\x70\xa7\xa2\xe6\x9d\x0c\x84\x6a\xc4\xf0\x84\xfb\x31\x47\x89\xfd\xac\x7e\xd6\xf5\x59\xa2\xc8\x8b\x5d\x0f\x5d\x2c\x55\x07\x4f\xb7\x18\x1d\xeb\xc4\x7d\xfb\xec\xf1\x5a\x89\x4e\x71\xca\xb3\x8a\x15\xdc\x2e\x8a\xf5\x58\x49\xdc\xe9\xbd\x73\xf7\xe5\xd7\xee\xab\xd9\xb5\x6d\xf9\xac\x73\x46\x3f\x81\xa8\xfe\x82\x22\x72\x1b\x5b\x82\x13\x9e\x10\x31\x72\x75\xf4\xcc\xbb\x23\x34\xf5\x17\x0c\x1a\x2d\xb2\x35\x9b\xc1\x9f\x78\x11\xcf\xb4\x1a\xff\xca\x55\x5c\xee\xc4\xb5\xf2\x47\x8b\xe6\xa4\x26\x90\xf1\xf9\x00\xdd\x68\xfa\x85\x6f\xd2\x55\xcd\xbc\x8c\x66\x49\xcc\xb8\x5d\x05\xa7\xa5\x39\x91\x17\xe8\xda\xf5\x9a\xdb\x1e\xb1\xc7\x71\x26\xb3\xbd\x13\x3e\x0b\xdc\x9b\xa2\xb0\x77\x44\x8e\x04\xa3\xf3\x79\x2c\x4c\x21\xe7\xae\x19\x83\xac\xaa\x33\x89\x81\x2a\x9d\x97\x31\x64\x64\x23\x39\x8e\xf4\x95\x46\xc4\x51\x26\xa9\x34\xcd\xd8\xcb\xae\x36\x4e\xc1\x6c\x99\xa9\x21\x3f\xe9\x72\x0c\x19\x39\xef\xcd\x36\x26\x15\xcb\x83\x8d\xf7\x10\x98\x14\xa2\xc9\x73\x18\xbc\xf7\x7f\xd1\x83\x4d\x78\x70\x5a\x02\xbd\x50\x58\x74\xed\x4b\x8e\xff\x6a\x95\x23\x1d\x64\xe2\x40\xff\x38\x3d\xae\xba\xd4\x4e\xd1\xab\xca\xb5\x13\xf4\xca\x51\xc6\xd6\x14\xbc\x71\x71\x49\xf8\x48\xb0\x84\xca\xf8\x88\x05\xf5\x65\x23\x36\x83\xa3\xc7\x1a\x3a\xdf\x0e\x45\x49\xf8\xff\xd0\xd1\xaa\x54\xc7\x7c\xca\xfd\x3a\x04\x23\x1f\xcd\x8e\xe7\x5d\xd1\x00\x46\xc7\xa9\x78\x14\xf3\xc3\x6a\xce\x3f\x59\x07\x3a\xc1\xdc\xa0\x00\x2c\x10\xe8\xd9\x2a\xf5\xf2\xe9\xec\x78\xde\x15\xf5\x70\x13\x94\x52\x41\x72\x39\x02\x73\xcd\xe5\x92\xb4\x30\xea\xdd\x5e\xc6\x9c\x65\xcc\x23\xa7\x86\xa2\xf8\x5e\xf8\xf2\x22\x32\xd4\xe5\xe3\x7f\xf3\xdd\xbf\xff\xd5\x1f\x7b\x24\x9b\x31\x4e\x45\x9c\xfa\x1e\x9a\xfa\xe1\x5e\x16\x99\xfb\xc2\xb9\xee\x85\x6f\xa4\x51\x2e\x93\x98\xb3\xe2\xe3\xef\xfc\xf0\x67\xff\xfb\x9f\x17\x1f\xff\xe6\x9f\xfc\xec\x3b\xff\x57\x81\xa6\x7e\xe3\x01\x9e\x7e\xfc\x47\x7f\xf2\x77\x3f\xfc\x0b\xec\x11\xf6\x98\xae\xd6\x09\xcb\x74\xc5\x77\x59\x64\xee\x8b\xf0\xed\xe3\x68\xc9\x04\x2b\x7e\xfa\xe1\x6f\x7d\xfc\x67\xbf\x5b\xfc\xdd\x1f\xfd\xf0\xa7\x1f\xfe\x56\xf1\xd3\x1f\x7c\xa8\x7e\x7e\xf6\x7f\xfc\xdf\x3f\xfd\xf0\xb7\xb0\x47\xd6\x8c\xcf\x63\x7e\xa8\x3f\x7f\xb0\x8e\xf4\x6d\x11\x3e\x94\x51\x3a\x4f\x8b\x8f\x3f\xfc\xb5\x8f\xff\xcb\xef\xc1\xcf\xb7\xf4\xcf\xbf\xf9\x83\xe2\x67\xbf\xf7\xc1\xc7\xdf\xfa\x8e\xfa\xf9\xbb\xbf\xf9\xb7\xd8\x23\x29\x4f\x4e\x74\x05\x6f\xa4\x11\x4f\x4e\x8a\x9f\xfe\xe8\xd7\x7e\xfa\xa3\x5f\x9b\x62\x8f\x1c\xd0\xd9\x23\xc5\x03\xf0\xb9\xef\x85\x2f\x1d\x44\xd5\x6d\xf1\xf7\xbf\xfa\xdb\xba\x43\xff\xff\x9f\xfd\xce\xef\x7a\xe4\x30\x3e\x62\x5c\x57\xf2\xca\x61\xa4\x6e\xa0\x07\xb1\x5c\x16\xe1\x2d\x1a\xf1\x79\xa1\x3e\xcf\x65\x01\x7d\x9c\xb1\xb5\x2c\x3e\xfe\xd6\x6f\x7c\xfc\x9f\x3f\x50\x3f\x7f\xff\x5f\x3e\x84\x3b\x05\xe9\x5f\xff\xb7\x9f\xfe\xe0\xdf\x15\x7f\xff\x2b\xbf\xad\x7e\x3e\xfe\xdd\xdf\xfe\xd9\xff\xf6\xdf\x8a\x9f\xfe\xf8\xd7\x7f\xf6\xef\xff\x1c\x7b\xe4\x78\x69\x1b\x81\xd1\xe1\x45\xf8\x5a\x1c\x2d\x5a\x2d\x7c\xfc\xe3\x7f\x5b\x7c\xfc\x9f\x3f\xf8\xd9\x1f\x7c\xe7\x82\xda\x64\x55\xdb\x43\xa9\x6b\x53\xb0\xad\xd9\x4c\xb6\x6a\xfc\x7f\x3e\xf8\x4f\x3f\xfd\xeb\x7f\x5d\xfc\xec\x3b\xdf\xfd\xd9\x77\x7e\xff\x82\x4a\xf7\x15\xb7\x93\xf9\xa1\x07\x23\xe2\x11\x4f\xc1\xec\x11\x4f\x35\xe6\x45\xe5\xa7\x41\xd5\x97\x05\xe3\xb3\xa5\x8b\xa9\x0a\xf6\x97\x17\x51\xaa\x2b\xe4\x34\x89\xe5\x47\x7f\x8a\xbb\xd0\xf5\xa3\x3f\x35\xf8\xfa\x60\x1d\x25\x94\xf7\xc2\x3b\xf3\x28\xef\xb9\xaf\x3a\x91\x91\x19\x64\xac\xae\x0b\x85\x23\x61\xfe\xd1\x5f\x47\x6d\xe4\xbb\xcb\x22\xde\x53\xfb\x3f\x97\xac\xd0\x77\xb3\x34\x17\x99\xc5\xc5\x06\xa2\xed\x65\x11\xcb\x13\xa6\xe8\x6a\xd4\x42\x33\xf5\xfa\xf6\x2c\x4a\xb9\x64\x8f\x25\xc3\x0d\xd4\xda\xcb\xa2\x34\x96\x45\xf8\xd1\x6f\x7e\xf4\xa7\x77\x59\x24\x29\x97\xbd\x79\xca\xf9\x47\x7f\xaa\x80\xec\x78\xda\xf5\xb0\xb3\x24\xcc\xf8\x11\x9b\x01\xe4\xb2\x08\xef\xad\x22\x1a\x67\xf0\x54\x75\x69\x2e\x58\x03\xfd\xbe\xfa\x7e\x94\x53\x85\x20\xaf\x27\x51\x2a\xb2\xf7\xf3\x2f\xd4\x97\x0c\x88\x42\xdc\xac\xa9\x81\x6e\xb7\x68\x94\xa4\xa2\x51\xfb\x46\xe9\x73\xf1\x88\x78\x59\x1a\x4b\x8f\x78\x4c\x75\x41\xf5\x80\xb1\xac\x79\xdb\xb8\xf3\x88\xf7\xbe\x82\xd7\x23\x5e\xa2\x61\xf4\x88\x47\xd5\xa5\x17\x91\x43\x26\x7b\xaa\xba\xa6\xe3\xe7\x08\xda\x85\x48\x92\x3d\xb7\x95\x4b\x95\xba\x4c\xa1\xed\x65\x00\xd4\xd6\x6b\xd5\x7b\xfd\xd6\x74\x60\xeb\x7b\xe8\x56\xeb\x2d\xb0\xef\x9f\x6a\xed\xbd\xc2\xc4\x8a\xf2\x8e\xb5\x97\xf3\x47\xaa\x42\x58\x7a\x7f\x24\x0b\x67\xef\x50\xb3\x9b\xad\xd9\x23\x59\x84\x6f\xe5\x51\xc6\x66\x34\xd3\x0f\xf9\x31\xe3\xf3\x9c\x1f\x66\x0b\x9a\x24\x5d\xab\xf5\x89\xb3\xb9\x98\x6b\xd4\x3b\x2c\x5e\xc1\x22\xe7\x73\x11\x67\x59\xa1\x88\x2c\xcb\x66\x4b\xb6\xe4\x80\x2d\xcd\x95\xfb\xd2\x41\xc4\xe2\x6c\x1d\xb3\x84\x4d\xdb\xcb\xd4\x6c\x0c\x6a\x19\x2f\x16\x8c\x37\x56\xe5\x7d\x1e\xe5\x02\x30\x31\xe6\x4f\xe2\xc3\x8e\x85\xf9\xca\x61\xa4\x60\x48\xe8\x21\x2b\xc2\x57\x97\x11\x48\xc4\x87\xea\x11\x00\xcb\x64\xbe\x2e\xc2\xaf\x1d\x45\xa9\xa0\x79\x06\xae\x7f\x4f\x64\x73\x09\xab\xfe\x1f\x32\x9e\xae\x56\x8a\xe0\xaa\x6e\x1c\xb2\x03\xc6\x51\x2f\x63\x31\x62\x1c\x4f\xf1\x14\x56\x41\xac\x87\x4d\x55\x7c\x8b\x46\x07\x4c\xc0\x6f\xfe\xd1\x77\x99\x68\x6f\x04\x8c\x73\x18\x77\x9a\x24\x59\xeb\xa3\xc6\xb2\xbb\x33\x8f\xa8\x29\x9a\x26\x87\x49\x3c\x5b\xd6\x75\x6e\x7e\xf7\x0b\x24\xe4\x77\x72\xd9\x49\xc7\x2d\xe2\x00\x5a\xcd\x2c\x5a\xb1\x58\xef\x9a\xf1\x21\xe3\xd9\x6c\x49\xd7\x9d\x04\xde\xa2\xcc\x2b\x87\x05\x3b\xa2\xc9\x06\x4e\xa8\x49\x49\xc5\x01\x63\xc9\x9c\xf1\xad\x58\x71\x6f\x15\xa5\x4c\xf6\x78\x7a\xd8\x40\x0c\x45\xb0\x12\x06\xd8\xd2\xc6\x88\x5b\x34\x9a\x2d\x01\x09\x52\x3e\xdf\xa0\xd6\x92\x25\x76\x92\x8f\x18\x47\x53\xff\xdd\x77\xb3\x39\x95\x6a\x8e\xd5\x0e\xa1\xe9\x1d\x6d\xce\xa8\x6a\x4c\xf3\x3f\x54\xd1\x12\xb1\x51\xb4\x35\xa3\x80\x70\x4c\x1c\xa5\x89\x1a\xa0\x8d\xd2\xbf\xc0\x79\xbc\x9f\x8a\x63\x76\x18\x37\xe9\x82\x6a\x5f\x01\xf2\x88\xae\xdd\x79\x72\x26\xc9\x9d\x1a\x55\xfa\x51\x06\x5b\xab\x70\xe6\x04\x76\x23\x08\xd1\x22\xec\x3c\x00\xfb\x25\x58\x07\x4f\xf6\x48\x2d\x40\xbe\xc1\x83\x49\xbd\x9d\xb0\x39\x2c\xf6\x43\x7d\xc3\x35\xa2\x73\x49\xa5\x6c\x8c\xfa\x7d\x1e\x7d\xf4\xc7\xa2\x51\xb4\x31\xd4\x7b\x59\xf4\xd1\x1f\x03\x6a\x2e\x52\xa1\x20\x6b\x17\xbd\x60\xc3\x3a\x8c\xa5\xda\xb0\xf8\x47\x7f\x2c\xd4\xf6\xf5\xd1\x1f\x9b\x9d\x47\x3d\xdf\xba\x15\xe8\xe2\xdb\x48\x3d\xd4\xf2\x99\x53\xfa\x07\xb1\xa0\x92\xb5\x57\xe7\x43\x19\x51\xc5\xfd\xbc\x73\x12\x51\xc1\x37\x56\xe0\x2d\x1a\xcd\xd5\xa0\xc0\xf2\x55\x5c\x8a\x90\x31\x6b\xac\x41\xcb\xcf\x67\xd2\x9d\xe6\x97\x0e\x22\x11\x1f\xba\x53\x9c\xd0\xd9\x23\xe0\xcb\xd6\xa9\x6c\xcd\xf5\x2d\x1a\x2d\xa4\xbe\xeb\x60\xb8\x15\xa7\x7d\x3e\xc7\xdd\xc1\x40\xcf\x58\x17\x0b\xdd\xc1\x1b\xcf\xd8\x36\xee\xf8\x32\x53\xaf\xa0\x33\x8f\x67\xcc\xbc\x98\xb1\x0a\x03\xd4\xeb\xed\xec\x80\xfe\x6a\xeb\x7e\x2f\xbb\x5e\x7f\x7a\x34\x78\xeb\x91\xa0\x31\x8f\x37\xf7\xfc\xb3\x3f\x7a\xfa\xff\x8b\x9e\xfe\xea\xd9\x8f\xcf\x7e\xf8\xf4\xd7\x9f\x7e\xfb\xe9\xef\x14\xed\x47\x67\x1f\x9e\xfd\xf8\xec\x7b\x67\x3f\x2a\xc2\xb3\xef\x9e\xfd\x6d\x74\xf6\xe1\xd3\x0f\x9e\xfe\xca\xd9\xf7\xcf\xfe\xeb\xd9\xf7\x8a\xf0\xec\x77\xcf\xbe\x17\x3d\xfd\xd6\xd9\xdf\x9e\x7d\xff\xec\x87\x4f\x3f\x28\xc2\xb3\x3f\x38\xfb\x50\x3d\xf8\xf0\xec\xbf\x9e\xfd\xe8\xec\x07\x67\x7f\xf1\xf4\xdb\x4f\xbf\xf5\xf4\x83\xa7\xbf\x5d\x84\x67\xff\xcb\xd9\x5f\x44\x67\x3f\x3a\xfb\x9e\x7a\xe0\xbe\xda\xc0\xbf\xb3\x3f\x7c\xfa\xad\xe8\xe9\xaf\x9f\x7d\x5f\xb5\xfc\xf4\x57\x9e\x7e\xfb\xec\xaf\x8b\xf0\xec\xff\x7c\xfa\xaf\xa3\xb3\xef\x41\xbd\x1f\x9e\xfd\xb8\x89\x8e\x00\xda\xd3\x5f\x39\xfb\xc1\xd9\x0f\x55\x0b\x67\x7f\x75\xf6\x83\xd6\x9e\x70\xf6\x1f\xce\x7e\x1c\x9d\x7d\x5f\x41\x0a\xe0\xab\xd6\x7f\x05\x5a\xf8\x01\xd4\xfe\x27\x4f\x7f\x43\xbd\xfe\xe1\xd9\xf7\x9e\xfe\x4f\x4f\x7f\x43\x3f\xdc\x90\x40\xab\x6d\x24\x3c\xfb\x8f\x4f\x3f\x88\x9e\x7e\xfb\xec\x47\x4f\x7f\xfb\xec\x87\xaa\xb1\x06\x6e\x9f\xfd\xde\xd9\x0f\x23\x05\xe5\xd3\x0f\x60\x60\xbe\xf5\xf4\x83\x06\x8e\x9f\xfd\xbb\xb3\xbf\x52\x7d\xf9\xf1\xd9\x87\x45\x0d\x7b\x61\x81\x7c\xfa\x6b\x67\xdf\x03\xa0\x7e\xfd\xe9\xb7\xa3\x42\xb7\x55\x8d\xf6\xd9\x8f\xce\xbe\xdf\xc0\xfd\xb3\x3f\x7f\xfa\x3b\xd1\xd9\x0f\x9f\xfe\x26\x54\x06\x35\x7f\xbf\xa8\x40\xf8\x11\xd4\x7b\x4e\x45\xf5\xda\xd0\xaf\x3f\x3c\xfb\xab\xa7\xdf\x3e\xff\x93\x5f\xe0\x26\xf4\x20\x4d\xe2\x6c\x83\x9b\x78\xfb\x38\xfa\xc9\x07\xf4\x27\xbf\x3f\x8b\x8f\xd3\x9f\xfc\xfe\x7f\xff\x0d\xc3\x54\x3c\x9a\xbd\x47\x5d\xc6\xf4\xc1\x3a\x4a\xa5\x78\xc2\x0e\x68\x4f\xad\xe6\xf8\x09\x67\x59\x7a\x4c\xb7\x73\x18\x79\xf6\x44\xb3\xa5\xf4\x20\x49\x79\xaf\xf1\x82\x36\x31\xec\xc1\x3a\x12\x4f\x4e\x1e\xfd\xe4\x03\x3a\x3f\x69\xa1\xd6\x1b\x69\x34\x7b\xc2\x1e\xe5\xef\xfd\xf7\x5f\x9b\x9d\x14\x6a\xef\x89\xd9\x93\x63\x26\x4e\x16\xf1\xa3\xf4\x98\xf2\x93\x4d\xf4\x79\x28\xa3\x93\xe4\x51\xda\x42\x9b\x6f\x3c\x89\xe8\x4f\x3e\x48\x7f\xf2\x37\x8c\xc7\xb4\x81\x30\xea\x0d\xb4\x4d\x55\x23\x9a\x1f\xd0\x57\x6f\xa4\x91\xa0\x4f\x80\xee\xc1\x50\x24\x4d\xd1\xee\xcb\xef\x45\xec\x27\x7f\xc3\x92\xb8\xd0\x97\xbf\xaf\xae\x5e\x39\x8c\xe6\x27\x45\xf8\x95\x47\x51\xcc\xd4\x45\x67\x1d\xd2\x25\xae\x72\x7b\xb9\x0b\xc8\xe5\x13\xfa\x28\x51\x60\xd3\x99\x47\xbc\x95\xf9\x7d\x8f\x3d\x61\x49\x0c\x17\x19\xfc\x1e\xaa\x41\xf5\x1e\x29\x70\x54\x0d\xaa\x39\x43\x4f\xeb\xef\xb7\xd3\xd4\xd5\xf9\xaf\x75\x6b\x5b\x49\x2e\xc0\xb0\xf5\xed\xe1\xfc\x64\xeb\x3b\x80\x77\xeb\x5b\xe8\xc5\x67\x4e\xc9\xf7\xd6\x94\x77\xac\x10\xcd\x64\x6b\x1e\x7b\x4e\xe7\x45\x78\x7b\x16\x51\x41\x67\x92\x89\x8f\xfe\x2c\x93\xf1\x6c\x73\x15\xdc\x65\x51\x56\x31\xda\xaa\x78\xd6\xa9\x35\x79\x4f\xb1\x73\xa9\xe6\x44\xf5\xb5\xcb\x6e\x5b\x1a\xa9\x98\xbb\x0a\xbb\xf7\xa2\x8f\xfe\x32\x69\x23\x37\x68\x76\xe6\x69\x9b\xa7\x66\x54\xcb\x5a\x8a\xf3\x55\x0c\xb0\xe2\xdb\xe1\x97\xda\xfb\xcc\x3e\xc8\x1a\x98\x7d\x7b\x06\x4a\x8b\xd4\xea\x27\xbe\xfa\x7e\x94\x37\xf1\x56\xb1\xce\x32\xe5\x33\x76\x19\x0d\x04\xa3\xfa\xaf\xba\x99\x53\x05\xa7\xfa\xa1\xe6\x2e\x33\xb7\xea\x77\x06\xcd\xaa\xd2\x0a\x73\x99\x69\xc2\xaa\x1e\x18\xdd\x8e\x88\xaa\xfa\xed\x6f\x55\x3b\xe7\xbe\x3d\xa7\x66\x80\xf1\xfc\x8f\xcf\x79\xad\x7b\xb4\x15\x91\xb3\xed\xab\xc3\xf6\xfe\x33\x47\xf3\x37\xf3\x2c\xbb\x88\x5d\x39\xfb\xc1\x06\xbb\x72\xf6\x03\x87\x5d\x51\x5c\xc4\xd9\x5f\x9c\x7d\x78\xf6\xd7\xc0\x71\xfc\xc5\xd9\x87\x8d\x35\x70\xf6\x87\x35\x8b\xa1\xf6\x7b\x17\xf7\xcf\xbe\x0b\xcf\xfe\x46\x31\x0b\x4f\x7f\x6b\xda\x22\xf8\x8a\x31\x5d\x6f\x10\xf5\xb3\xff\xa8\xb6\x5b\xe0\x07\x3e\xdc\x94\x2c\xed\x2e\xff\xfd\xb3\xbf\x7a\xfa\x5b\x00\xcf\x87\xaa\x09\xe8\xc1\x26\xb7\x80\x3b\xd8\x85\x0f\xcf\xfe\xf6\xe9\xaf\x1a\xde\xe9\x6f\x8a\x2e\x1e\xe2\x57\x2b\x56\xeb\xdf\x9f\xfd\x40\x6d\xde\xff\x21\x3a\xfb\x10\x6b\x39\x55\xb3\x09\x78\xda\xe0\x1c\xfe\xd7\xb3\xef\x2b\x66\x4d\xf3\x08\x06\x8a\xbf\x3c\xfb\x2b\xd8\xef\xcf\xab\x62\x83\x67\x28\x2a\xe6\xe1\x32\x9f\xff\x42\xf9\x07\x21\xf3\xc3\xbc\x75\x06\xd2\x41\x21\x99\x4b\x22\xc3\x8f\xfe\x2c\x8e\xba\xa9\xe4\xed\x59\xc4\x78\x48\x3f\xfa\xc3\xe8\x02\x3a\xf9\xd8\xa1\x93\x8f\xb7\xd1\xc9\x16\x99\x0c\x3f\xfa\xcb\x34\xda\xa4\x93\x79\x17\x9d\x7c\xcf\x10\xca\xf7\xe8\xea\x62\x4a\x09\x50\x68\x36\x21\xeb\x52\xf5\x6a\xaa\xc9\x0c\xd5\x6c\x95\x6e\x51\xd0\x90\x7e\xf4\x9f\xa2\xb4\x55\xe6\x42\x72\xfa\x1e\x35\x3f\xab\x0b\x09\xea\xfb\x15\x41\x65\x9a\xa0\xd2\xb4\xa2\xa6\xef\x9d\x4b\x4e\xdf\xa3\xab\x7f\x8c\xf4\xf4\xfd\x0b\xe8\xe9\x76\xf1\x0f\x3a\xff\x73\x11\xd3\x7a\x25\x9c\x42\x3c\x5f\x81\xbe\xf4\x02\x26\x31\x97\xec\x90\x09\x5f\xa0\x17\xc6\x98\x2c\x92\x94\x4a\x75\x3d\xc1\x24\x89\x33\xb8\xbc\x86\x89\x84\x78\x74\x02\xbd\x70\x1d\x93\x35\xcd\xb2\x7d\xb9\x14\x69\x7e\xb8\xf4\x05\xba\xfe\xa5\x9f\xdf\x44\x35\xb8\x43\x25\x1b\xad\xa9\xc8\x58\x9d\x43\xa1\x17\x67\xf7\xe9\x7d\x24\xf0\x54\x22\xc7\x20\xf8\x36\xe5\x3c\x95\x3d\x63\x35\x64\xed\x81\x7b\x32\xed\xd1\x9e\xea\x8e\x87\xb1\x2f\xb5\x61\x90\xfa\x4a\xd5\xac\x2d\x80\x7e\x5e\xd8\x00\xac\xd7\xb8\xfc\x34\x90\xf1\x9e\x19\x5e\x07\x3a\xf1\x69\x61\x7a\x59\xcd\xd1\xa7\x1a\x2f\x98\xe5\x4f\x0d\x92\xc5\xc0\xca\x1a\x0b\x7c\xea\xae\xbe\xcb\xaf\xe2\x4b\x9b\xc0\x18\x33\xbf\x67\x9f\xc5\x24\x0d\xae\x86\xef\x16\xef\xe6\xd7\x9e\x1b\x3f\x1f\x5d\x25\x34\xb8\xfa\xcb\xf5\x7d\x51\x5f\x5e\xb9\x7a\x48\x32\x78\x59\x3d\x9a\xee\x9e\x5e\x27\xe5\xd5\xf3\x07\x8f\xe4\x41\x03\x46\x92\x04\x48\x04\xb9\xf5\x76\x25\x1c\x89\x91\x60\xeb\x84\xce\x18\xa2\xc4\xf3\xb0\x29\x9c\xe2\x2e\xfb\xb4\xda\x74\x44\xb2\xc7\xd2\x8f\x47\x52\xc4\x2b\xc4\xd4\x7a\x52\x24\x5c\xbb\xd0\xc7\x23\xe7\x0e\xec\x46\x30\x1e\x71\xfa\x88\xcd\x11\xc6\x64\x16\xcc\x51\x1e\x8e\x23\x3c\x75\x6b\x8d\x17\x68\x8e\x6a\x0f\x9c\x25\xc2\x3b\x6b\xf5\xa9\xdf\x55\x68\xc3\x6c\xfe\x0e\xcd\x96\x2c\x03\x7b\xff\x9c\x33\xd0\x5e\xb1\x79\x8f\x4a\xa0\x13\x3d\x19\xaf\x98\x87\x77\x96\x08\x13\xa8\x93\x2c\x02\x8e\xb4\xe5\x19\x47\x39\x1e\x31\x3a\x5b\xa2\x19\x26\x66\x4a\x3b\x0d\xbf\x3b\x87\xe2\xc8\x26\xbb\xb7\x26\xa9\x42\xe7\x7b\xaa\x23\xaf\x68\x17\x8d\x77\xb9\x63\x98\xef\x0c\x46\x89\x16\x6e\xd6\x0b\x30\x41\xec\xf4\xcc\xc8\x2a\x0b\x45\xc7\x3a\x13\x9f\x2e\x4c\x78\x5e\x37\x61\xd5\xba\x06\x6c\x31\x4a\x68\x26\x11\xde\xe1\x88\x6d\x9d\x63\xd6\x8a\xa9\x55\xdb\x2b\x26\xaa\x03\x6a\x9a\x49\xaa\xaf\x9d\x59\x25\x34\x88\x47\x42\x4f\xfe\x28\xcb\x0f\x32\x29\x54\x6d\x10\xe2\x72\x14\x67\xf7\x53\xf9\x52\x42\xf9\x23\x88\xdb\xd0\x46\x87\x9b\xe9\xe6\x04\xbe\x56\x97\xe8\xe9\xb8\xb8\x78\x47\x86\x3c\x0a\x90\xfa\x0b\x09\x39\xac\x09\x20\x85\x68\x4e\x17\xad\x34\x87\xea\xef\x49\xb6\x7e\xa0\x28\x08\x50\xfb\xe7\x30\x79\x59\x73\x3f\xd5\xb3\x67\xeb\x67\x2f\xc7\x89\xf3\xfc\xf9\x4f\xb0\xa0\xbb\x56\xa1\xf5\xcf\xbf\x1a\xfe\xf2\xbb\x59\x74\x55\xfb\x17\x00\x31\x73\x57\x6a\xe5\x6f\x67\x8c\xbd\x8c\xaf\x8f\xa8\x9d\xee\x06\x03\x8e\x62\x5c\x14\xb1\xb5\xf0\xe9\x40\x51\x8e\x5a\xa4\x88\x88\x2e\xdb\x58\x09\x66\x8e\x0a\x99\xe4\x27\x1a\xc4\x19\xcd\xd6\x7a\x00\xbf\x88\xc9\x2a\x9d\x2d\xa9\x7f\xba\x67\xf8\xc1\xd7\xd9\x11\x4b\x1e\x24\xf9\x61\xcc\x55\x81\x2f\x61\xa2\x86\xbc\xf5\xf4\x05\x6c\x94\x0a\x34\x5b\xc5\x1b\xc7\xc2\x50\xe3\x45\xf0\xdc\x68\x05\xf2\x89\x17\xa8\x5f\xd9\x40\x9d\x56\xcc\xef\x35\x3c\x5a\x64\x3b\xe0\x8e\x3c\x63\x59\x16\x54\x57\x45\xb1\xc5\xdc\x88\x77\x99\x1b\x9d\x47\x55\xc1\x8c\xf1\x3a\x1e\xdd\x3d\x62\x5c\xbe\x94\x67\x3b\xac\xdb\x59\x0e\x98\x41\xf7\x7b\x41\x62\x1b\xfe\x43\x7b\x9c\xb4\x83\xb9\xe0\x53\x09\xd3\x33\x8a\xf9\x22\x55\x84\x95\x3b\xc6\xd9\xda\x2c\x93\x8f\xde\xb8\xbf\xbf\xf7\xf0\xee\x83\x86\xc9\xad\x28\x31\x49\x47\x82\xf2\x47\xfb\xe0\x94\xa3\xf3\x8c\x39\x0e\x4b\x08\x37\x9c\xf8\x14\x24\xc6\x5a\xb0\xe5\x80\x68\x3d\x24\xeb\xd8\x0f\x8d\x98\x42\x6c\x24\x72\x5d\xa8\x2c\x3b\x4d\xc3\x88\x40\xcf\x8e\x2f\xb2\x70\x6b\x6f\x85\x93\xe7\xb5\xc9\xfb\xb3\x5f\x74\x56\xd2\x28\xe6\x71\x13\xd9\x59\xc0\x8a\xa2\x32\x74\x03\x2f\x22\x88\x51\x32\x4b\xb9\xa4\x31\x67\xa2\x28\x20\x3f\xda\x7e\xf5\x00\x61\x42\x83\xd4\x86\x8e\x57\xec\xc3\x68\x51\xaf\xf5\x2c\x68\xdc\x06\xb4\xf1\x92\x54\x2f\x9d\x72\x75\x19\xf5\xde\xca\x44\xaa\x80\xbd\x6e\x21\x8c\x02\x7c\x83\xcc\xe2\x53\x08\x94\x61\xed\xb7\xa7\x74\x14\xcb\xfd\xec\x84\xcf\x7c\xb8\x02\xa3\x6d\x8c\xd8\x48\xc6\x32\x61\x84\x91\x06\x85\x56\x24\x43\x22\xa1\x83\xe1\x5d\x86\x1a\xfe\x8b\x1f\x6c\x3a\x9a\x43\x9a\xd3\x03\xe6\x8c\xa9\xd4\x0b\x40\x8c\x40\x64\xeb\xe4\x3c\xfb\x13\x27\xf7\x87\x7e\x51\xcf\x0f\x6a\x4f\x0c\x37\x26\xf3\xc2\x49\x13\xfb\x28\x5e\x4f\xf5\x0f\xc2\x7e\x8c\xf0\x8e\x08\xfa\x63\x22\x47\x07\x31\x57\x3b\x3c\xe2\x04\xb5\x58\x1c\x1b\x2b\x15\xc5\xa3\x05\x8d\x93\xa2\x88\x31\x0c\x65\xd0\x9f\x90\x18\xd9\x29\xaf\xc0\x4a\x1d\xb0\xba\xa1\xea\x82\x49\x6d\x03\x1a\xa8\x0d\x80\x30\x51\x4d\xa9\x36\x2e\x85\xb9\xa9\xaf\xe0\x33\x83\x59\x96\x84\x9c\x8f\x8a\x62\x24\xac\x1f\x01\x50\xd1\x6b\x78\x63\x84\x6d\x0c\xe1\x96\x73\x73\x15\x4c\xd8\x49\xc2\x34\xd1\x8e\x9a\x82\xf2\x43\xc0\x37\xfd\xca\x26\x48\x72\xde\x49\x3c\x9a\xa7\x2b\x1a\x03\x3f\xea\x90\xb3\x8d\x71\xfc\x44\x8d\x77\x65\xfc\x9d\x3a\x3e\x24\x69\x42\xc1\x9c\x1d\x5f\x0c\x66\x05\x5d\x67\xe8\xe3\x8e\x4a\x25\x6e\xf6\xaf\xbb\x57\xb4\x15\xd8\xd2\xcb\xad\x4f\x6a\x3b\x19\x51\x51\x28\xee\x37\x08\x36\x53\x12\x01\xfe\xb4\xe3\x71\x41\x5e\xb8\x8d\xfd\x58\x63\xb0\x97\x81\x53\x80\x33\x28\x16\xf9\x32\x28\x69\x62\x08\x5d\x98\x5e\xd0\x78\xba\x7c\x89\xec\x56\x06\xc3\x26\x85\xb9\xa7\x73\x62\x30\xd7\x6b\x00\xc2\x37\x37\x9e\x8c\x38\x5d\xa9\x01\xbd\x47\xd7\xf0\x41\x51\x78\x7b\x4c\x7f\x3b\xd5\xfd\x59\x88\x74\x05\x81\xa4\x6f\xd9\xf9\x36\x05\xaf\xfe\x32\x9a\xfa\x6f\xc5\xc5\x6b\x98\x4b\x34\xf5\xbf\x54\x4c\x9e\x2f\xae\x5f\xc3\x68\xea\xdf\x4e\xe8\x6a\xcd\xe6\x58\xd7\x70\xe5\xaa\xe6\xa6\x04\x9e\xea\xbe\x55\x39\x9d\x95\xa0\x52\x14\x8a\xdf\x3a\x2f\xfb\xfb\xa9\x80\x48\x7f\xc2\xae\x88\xb1\xeb\x1a\x81\x2b\xa3\xed\xd3\xcc\x8f\x09\xef\x62\x5d\xea\xe4\xf0\xd3\x53\x9b\x92\xca\x37\x57\x13\x13\xc7\x4d\xe7\x87\x2f\x4b\xc2\xfc\xa6\xdb\x85\xe2\xc2\x59\x49\x16\x7e\x5c\x96\x9d\xa9\xdc\x4c\x3c\x61\x30\xf8\x5c\xad\xa5\x92\xa3\x35\x5a\xb0\x1e\x4f\xf9\xae\xcd\x20\x5f\x85\x51\x18\xbd\xcb\x5f\xe3\xbd\x54\xcc\x99\x50\x65\x0f\x58\x95\x64\x9e\xc0\x07\x54\x8d\x59\x4f\xa7\x85\xcc\x7a\xab\x3c\x93\xbd\x25\x3d\x62\x3d\xda\xdb\xc0\x3a\x84\x7b\x2b\x26\x97\x29\x24\x9f\x07\x96\x89\x50\x45\xa9\x72\x45\x94\xab\x51\x71\x47\xa4\x03\x75\x11\x2e\x9b\xc3\x66\x4c\xd0\x4d\x40\x9b\x2a\x32\x74\xa0\xf3\x0a\x42\xdc\xad\xc6\x18\xe5\xaa\xc9\x34\x80\x41\x72\x99\x34\x71\x72\x4a\xed\x8a\x11\x26\x22\x4d\x51\xd8\x2b\xd4\x88\x48\x93\xdb\xa4\x62\x65\xd9\xcc\x81\xa8\x16\x0d\xd2\x75\xc8\xa2\x90\x2f\x56\x58\x01\xc1\xb6\xaa\xbb\x5a\xbc\x0c\xc6\x84\x3b\x4e\xbd\x12\xdf\x10\x37\x25\x44\x5a\xe5\x56\xe4\xac\x93\xa6\xe8\x50\x48\x7a\x44\x90\x17\xaf\xd6\x49\x3c\x8b\xa5\xe7\xd0\xdb\xa4\x1a\x10\x55\xe7\x3d\xba\x26\x26\xa0\x6b\x18\x11\x1e\xe4\x3b\x0e\x6d\xac\xd8\xd6\x78\xe8\x79\x44\x8d\xd7\x21\x53\x02\xa4\x8e\x01\x04\xab\x9e\xbb\x21\xa7\xf8\x8e\x0e\xea\xa1\x26\x4d\x6a\x31\x35\xc6\x75\x40\xad\x10\xd1\xdd\x09\xfe\x25\x51\x39\xd2\x9a\x17\xa9\xa1\x83\x81\xeb\xfe\x06\x4d\xb4\xe9\x71\x1d\xe1\x00\x68\x04\xde\x01\xd0\xab\x9e\xd8\xbc\x69\x01\x55\x82\x94\x0d\x74\x14\x8f\x32\x84\x6f\xf4\x11\x0f\xe2\x11\xaf\xf3\xa2\x99\xf0\x0e\x36\xf6\x67\x1e\x64\x43\x4f\x49\x3f\x4b\x9a\xa1\x1c\xd2\xe8\x67\x3a\xd3\xbb\xee\x48\x86\xdd\xb0\x45\xf1\x08\x5c\x3c\xab\xf9\x1e\x2d\x50\xd5\xcf\xb4\xd4\x3c\xf9\x61\xa7\xab\xee\x46\x5c\x0f\x24\x82\x06\x59\x22\x29\xe4\x35\xd5\x1d\x54\x55\xe5\x3a\x30\xcd\xe5\x2a\xe3\x01\x53\x15\x70\xf5\xe1\x2c\x5d\x9f\x74\xb8\x7c\x24\xc0\xc7\xdb\x6a\x11\xc7\x25\x89\x8d\xaf\x61\x4a\xaa\x1a\x31\x49\xdd\xc0\x14\xae\x16\xac\xc5\xba\xb4\x37\x89\x8a\xe7\x28\x61\xc7\xd8\xd8\x2e\x9c\xdd\xa8\xdf\x4e\x8d\xd7\x5a\xca\xbd\xd8\xa6\xf9\x85\x0c\xe7\x7a\x39\x00\x9e\xf6\x15\xcd\xec\x4f\x48\x6a\x1c\x5e\x1a\x61\xad\x28\xc9\x3a\xc9\x02\x20\x01\xa2\x75\x68\x2b\x9d\x23\x52\xed\x21\x7a\x92\xa9\x49\x92\x47\xfa\x52\xad\xeb\xca\xab\x55\xe2\x1b\xaa\x49\x7c\xc3\xcd\x9e\x67\x68\x44\x23\x75\x9e\xa5\x0e\x59\x45\x1d\xb2\x4e\xea\x10\xd7\xd4\xa1\x72\x42\x2e\x61\x84\x3a\x06\xec\xa2\xfd\x75\xf1\xcf\x78\x7f\x5d\xb4\xf7\xd7\xe6\x10\xd9\xfd\xec\xe2\x1d\x6c\xce\x74\x07\x72\xf1\x0f\xbc\x8b\xa1\xcd\x40\x2d\xbf\x38\xf2\xef\x28\x12\x0d\x95\x57\xdc\x78\x90\xa0\x7a\xbd\xeb\xa1\x04\x59\xd0\xd0\x5d\x42\xd5\x6e\x06\xb1\x46\xb3\x40\xed\xb5\x13\xb2\x50\x6b\x6b\x19\x8c\xc9\x3a\x18\x93\x55\x30\x7a\xae\xde\x16\x8e\x90\x5d\x88\x29\xc2\x75\xa4\x8a\xfc\x66\x46\x92\x20\x9e\xe6\x7e\x46\x66\x41\x3c\xcd\xfc\x7c\x87\x05\x68\xb6\x9b\xe0\xab\x3a\xbc\x02\x7d\x8c\x26\x44\xec\x2e\x87\xd7\x9e\x59\x63\xb2\x00\x16\x08\xde\x2c\x92\x14\xf8\x65\x4c\x92\x21\x7c\xb1\xcb\x9e\x41\x62\x77\x89\xf1\x33\x2b\x22\x03\xf6\x0c\x9a\xec\x2e\xf5\x17\x89\xfe\x02\x4e\x07\x51\x82\x89\x74\xef\xa5\x89\x74\x3b\x37\x8b\x00\xf1\x11\xc5\x10\xaa\xa8\x11\x91\xbe\x26\x64\xc9\x90\x3d\x03\xf1\x71\x2d\x39\x45\xf1\x74\x3e\x12\xec\x88\x89\x8c\x21\xec\xcf\x2b\x9a\x6e\xa3\x57\xda\x51\x24\x62\x63\xcf\x3a\x8f\x2a\x83\x52\xe7\x08\x61\xec\xa7\x08\x84\xcf\xcd\xed\x01\xe4\xed\x9d\xad\x35\xc8\x40\xd1\xe0\x6b\x98\x64\x3a\xc2\x64\x1e\xc8\x70\x12\x91\x2c\x18\x66\x24\x0f\x86\xb9\xae\x3d\xcc\x48\x1e\x55\xf5\xbf\xa9\x46\x65\x7b\x23\x17\x56\xb9\x50\x24\xee\x48\x03\x7c\x40\xf9\xfc\x38\x9e\xcb\x65\x97\x0f\xa1\x15\xa7\xbb\x1d\x8b\x85\x9e\x9e\xcb\x8d\xd4\x22\xe8\xf7\x99\xee\xcc\x42\x7d\xba\xa6\xf3\xf9\x16\xbf\xea\xcd\x8f\x97\x75\x20\x8f\x09\x59\x07\x43\x3b\xe8\x4b\xa7\xa6\xd7\x9a\xe1\x70\x2e\x5d\x5d\x57\x5d\x6f\xe4\xf2\xb2\x75\x29\x68\x74\x05\x6b\x55\x01\x4d\xe2\xc3\x4b\xe2\xce\x2a\xa8\x96\xcf\x98\x34\x00\x32\x10\xad\x54\x85\x5b\xf6\xfa\x39\x4a\x11\x26\x80\x16\xd8\xac\x92\x05\x6e\x0c\x05\x5a\xe2\x46\x77\xd0\x1a\x6b\xe8\xd0\xca\x61\x0c\x8e\xb4\xf7\xbe\x61\x0d\x5a\x91\xa1\xaa\x80\xee\xe9\xfa\xa4\x0a\xef\x5d\xcd\x1c\x6b\x54\x4f\xcc\x4a\x62\x0d\x20\x36\x9e\xea\xb2\x6c\x5b\xb7\x96\x08\x92\x74\xbb\x59\xdb\xd7\xee\xdb\xb9\x1b\x3b\xa1\x86\xbb\xd9\xf1\x09\xd6\x22\xc6\x2a\x10\xe8\x8b\x98\x1c\x05\x02\xbd\x80\xc9\x49\x20\xd0\xf3\x98\x1c\x04\x02\x5d\x1f\x63\xd2\x0e\x29\x2c\x8b\x02\xc9\x2a\x46\xbb\x20\x3c\x60\xd3\x6a\x52\xac\x7a\x84\x54\x64\xdc\x1f\x43\x10\x1f\xcb\xae\xb6\x19\xa8\x54\x07\x36\x11\xc1\xf8\x86\xb8\xc9\x6f\x0c\x87\x02\xc7\x96\xa8\x2b\xaa\x97\xe2\xa1\x54\x97\x55\xf6\xa5\xb8\x74\x82\xf7\xed\x37\xd2\x92\x07\x72\x6a\xdb\x87\x56\x1d\xb8\x78\x03\xa0\xd4\x8d\x10\x84\x4d\xb6\x1d\x9b\x1a\x6d\xa7\x86\x27\x06\x78\x52\x05\xcf\x03\xa4\x20\x22\x10\x6f\x5f\xe7\xf1\xb6\xe0\x52\xf5\xda\x4d\x1a\xe0\xe2\x74\xbb\x2e\x28\xac\x2a\x74\x4e\x74\x69\x09\x93\x70\xdc\xa9\x89\xb3\xa7\xdb\x15\x56\xa9\x55\x24\x83\xa1\xac\xd5\x4d\x6e\x90\xf5\x8c\xc9\x87\xf1\x8a\x21\xd8\x31\x38\x1e\xca\x67\x38\x26\xa2\x2c\xc9\xdd\x2d\x79\x52\x37\xab\x73\xfc\xba\x55\x25\x42\x55\x22\xdc\x41\xdf\xab\x17\x2b\xda\x3b\x2f\xcb\xb3\x97\xc1\x45\xfb\x45\xc5\x25\x4c\x3b\x56\xbf\xe5\xec\x9a\x27\xa0\x16\xa0\xc1\xe0\xbc\xa4\xd2\x2e\x8f\x16\x04\x41\xf5\xbc\x6f\xaf\x6b\x9e\x70\x6a\x61\xf3\xab\x06\xb1\x12\x67\xd4\xa0\xbf\xd1\x9d\xf4\x3e\x38\x2d\x49\x6c\x4f\x3d\x81\x2f\x57\x6b\xcb\xc4\x21\x48\x2b\xf6\x71\x4f\x2b\x89\x18\x64\x32\x36\x25\x64\xab\x84\x62\xe0\x90\xd4\xb9\x8e\xb1\x3e\x3c\x9d\xf2\x36\x96\xf9\xf1\x85\x88\x05\x40\xe8\xf5\xc2\x9b\x38\x15\x97\x25\x79\x1c\x5c\x0d\x77\x87\xd1\x14\x4d\xfd\x77\xe7\xc3\x77\x47\xd3\x77\xe7\xcf\x14\xf0\x33\x54\x0c\x67\xc8\xee\x46\xf0\x5e\xdd\x4f\xaf\x1e\x92\x5b\x81\x13\x9a\xe6\xf1\x28\x4b\x73\x31\x63\xc4\x3b\xf4\x30\x79\xd8\x3d\x24\x10\x5e\xf7\x31\x1c\xb7\xbe\xc6\xe7\xec\x71\x70\xcb\xb9\x1e\x13\x1a\xec\x4e\x48\xa6\xa4\x95\xdc\x66\x6e\x65\xc3\xc0\xf3\x88\x54\x7f\x6f\x20\x11\x3c\x86\xd4\x67\x8a\xf1\x81\x4c\x65\xb7\xf4\xad\xc4\xf8\x06\x86\x9c\xf7\x90\x5c\x09\xbf\x98\x42\x04\x5c\x4b\x44\x52\x12\x63\x92\x85\x34\x9a\xaa\x3f\xc3\x20\xf6\xb3\x70\x38\xa4\x51\x10\x63\x82\x44\x20\xc2\x71\x84\x83\x20\x40\x3c\xe0\x70\xde\xee\x14\xe5\xb6\x28\xf7\x91\xbd\x52\x04\x32\x37\x27\xca\xb1\x4f\xc9\x63\xff\xae\x3d\x63\x20\xa9\xdb\x23\x3b\xb6\xe9\x4d\x27\x09\xa6\x03\xd6\x56\xa0\xec\x4e\x76\xf3\xda\x34\x0f\xc7\x51\x17\xda\x77\xb0\x66\x0c\x49\x3c\xf4\xbc\xb2\x04\xb3\x81\xd1\x63\xdc\xb5\x22\xba\xd8\x8d\x12\x41\xb0\xcb\x20\xb7\xb4\xb8\x8d\x37\x16\xa1\xc7\x37\xf8\x4d\x79\x63\x38\xe4\x38\x0b\x91\x08\xf2\x90\x47\x78\x14\x47\x81\x18\x3d\x76\x50\x29\x33\xa7\xf9\x1e\x2e\x71\x49\x1e\x05\x02\x4d\x5c\xe5\xf5\x3d\x87\x1a\xdc\xfb\x67\x48\x0d\x1e\x6c\xa1\x06\xf7\x9c\x4c\x1e\x95\x30\x53\xa5\x25\x08\x82\x80\x4f\x0d\x0f\xfe\x48\xf1\xe0\x6a\x4a\x6a\x75\x68\xc0\xa7\x77\xfd\x5a\x9c\x0d\xf8\x14\x59\xb9\x15\x9d\x8c\x98\x2a\x8e\x15\xc7\x2b\xc8\xc1\x88\x62\xff\xa1\xdf\xc8\x19\x75\x32\x62\xd3\x83\x11\x6d\x3e\x54\x9b\xc4\xf4\xb8\x6b\x9c\x60\x63\x7b\x29\x5f\x2c\x98\x18\xc5\xd9\xd7\x62\x76\xac\x53\x3a\x35\x63\x8d\xdf\xa1\x92\xaa\x77\x90\xd9\x69\x7a\xe8\xb7\x53\xbf\x4e\xf7\x1d\xb5\x7f\xbf\x4e\x4e\x08\xea\x82\x37\x16\xee\x5c\x38\x6f\xad\xe8\x5d\x14\xda\x6e\x49\xe2\xe9\x1b\xfe\x5d\x73\x70\x42\xde\xfb\x39\x36\x25\x47\xda\x71\xf6\x27\xec\x6e\x50\xb7\xeb\xce\x0f\x75\xb2\xfa\x37\x83\x70\x4c\x26\x4e\x18\xd3\xd7\x1a\xf9\xec\xab\xc7\x77\x5c\x38\x90\xdc\x0d\x14\x28\x8e\xc5\x4e\x05\x06\x12\xbb\x0c\x5f\x95\xa5\x8f\x44\x50\xf5\xec\x3e\xbd\xef\x8f\x9e\x23\x9b\x6b\x52\x94\x86\x59\xaa\x5b\xba\xdf\xcc\xa6\xc1\x94\xf8\x11\x07\x4c\x89\x1f\xa9\x16\x46\x28\x08\x23\x15\x41\xbf\xc9\xa7\x88\x07\x77\x50\x4c\xb8\x3e\xc5\xa4\x24\xc5\xd8\x87\x67\x5c\x51\x44\xf5\x2c\x25\x14\xe3\x2e\x4b\x9e\x14\x71\x88\x5e\x52\x03\xf0\x7a\x13\x80\x8a\x53\xaa\x42\x2f\x5a\x22\x87\x77\x27\x24\x6e\x70\x48\x0d\xfe\x09\xb2\x15\xec\x4e\x34\x75\x0f\x79\x74\x53\x75\xc5\x64\x07\x36\x4c\x5f\x2d\x4f\x12\x59\xb3\x82\xf5\x53\x7c\x63\x38\xa4\x37\xf9\x0d\x1c\x87\x34\x0a\xee\x20\x16\xd2\x88\xb0\x90\x0e\x27\x11\x26\xa9\x7a\x26\x90\x54\xcf\xa4\x7e\xb6\xb1\x1f\x56\xdc\x92\x59\x42\x47\xa3\x39\xa0\x18\x99\x10\x8e\x77\x27\x15\xe1\x56\x7b\xa4\xda\x2d\x75\xa4\xcd\x6a\x28\x5e\x6e\x05\x8f\xb5\x67\x52\xf6\x02\x63\x7b\x84\x65\x7e\x31\x76\xce\xa4\xd4\x63\xf7\x0e\xe3\xd1\x2c\xa1\xab\x35\xc4\xa9\x51\xbf\xb8\xd6\x3c\xb0\xea\xca\x3d\xca\xfc\xff\xd8\xfb\xdb\xed\xb6\x6d\xe5\x71\x14\xfe\x9e\xab\x88\xf9\x4f\xb4\x00\x71\x28\x91\x72\x92\x76\xd3\x86\xf5\x38\x89\xdb\xa4\x79\x6d\x9c\x77\x55\xdb\x8b\x96\x20\x9b\x89\x44\x2a\x20\x64\x5b\x89\xf5\xfb\xfc\x7c\x3e\xf7\x72\x6e\xe0\x5c\xca\xb9\x92\xb3\x30\xe0\x0b\x48\x51\xb2\x9c\x76\xf7\xd7\xdd\xd5\xe5\xb5\x2c\x12\x04\x06\xc0\x60\x00\xcc\x0c\x66\x06\x5f\x4d\x4d\x85\xde\x55\x21\x60\xaf\x20\x61\xaf\x60\xc6\x5e\xc2\x98\x3d\xbe\x61\x28\x22\xcd\xcc\xb3\x62\xe0\xb2\xb0\xfd\xf9\x76\x93\xe3\x49\xb1\x20\x8f\x71\x48\x02\x45\x58\x92\x05\xbd\x99\xe3\xf5\x81\xef\x49\xad\xdc\x02\xce\x24\x48\x86\x97\x48\xae\x9a\x72\x4a\xfa\xe2\x85\xf4\xa5\x48\x87\x2a\x0e\x87\xcd\xf6\x3a\xdd\xa7\xfe\x73\x08\x59\xac\x37\xd3\x91\xa9\xed\x29\xf0\x9a\x4e\x13\x66\x4b\xda\x15\x3e\x09\x2f\x2f\xd5\x16\x4f\x02\xd4\x4d\x70\x0a\x09\xcc\x28\xa5\x84\x93\x31\x5e\xd5\x91\x47\x33\x6b\x85\x68\xd3\x58\xd7\xb0\x31\x91\x84\xc4\x97\x97\x24\x66\x11\x49\x20\x07\x75\xa0\x00\x09\xbc\xee\x63\x74\x2d\x2d\x45\x50\x52\x44\xc3\x03\x0a\x03\x25\x5f\x06\x85\x32\x7a\x74\x1d\xbd\x76\x52\xd1\x6b\x23\xb0\x64\x09\xd8\xb2\x96\x22\xdb\x7a\x2b\xe5\x67\xec\x93\x82\xa1\x0a\x22\x69\x6d\xd6\x8a\x31\xdb\xda\xe2\x97\x97\x8f\x75\xf5\x48\x0c\x0a\x82\x41\xb3\x9b\xc1\x99\x31\xae\x41\xcc\x54\xf1\x6b\xe9\xe4\x15\x8d\x8d\xa8\x2f\x0c\x7b\x0d\x33\x82\x3c\x67\x02\x24\x8b\xb0\x6f\x05\xf1\xbc\x29\x16\xd0\xaf\x84\x92\xc7\xf0\x58\xef\xc8\xf7\x19\x6a\x51\x49\x8b\x76\x49\x6f\x77\x8f\xfd\xbb\xaf\x36\xcb\x9e\xfd\x9b\x43\x6e\xf6\xd5\xd3\xad\xff\xa3\x7e\x5c\xda\x25\xc8\xda\x12\x50\x4f\x2d\xfd\xfc\x3f\x2a\x43\xe0\x7c\xbd\xdd\xa7\xdd\x5b\xed\xb0\x98\x57\x8f\x52\x25\xf3\x16\x91\xec\x7e\xce\x96\x2e\x9b\xec\x85\xa9\x62\x75\x14\x8b\x49\x20\xfd\x9b\x96\x9d\x86\x9d\x94\x66\xb0\xf8\xb7\xe4\xdb\x28\x1c\x8f\x7d\xd4\x27\xa1\x32\xc1\x97\xbd\x4e\x1f\x12\xfd\xb4\xdd\x07\xcd\x71\xf8\xb2\x77\xa7\x0f\x5f\xb9\x88\x7d\xd9\xbb\xdb\x07\x54\x30\xf9\xb2\x77\xaf\x0f\x83\x78\x32\x09\x7c\xd9\xfb\xa1\x0f\x53\xc1\x07\x61\x12\xc6\xaa\xe8\x8f\xfd\x46\x43\xfd\x2f\x6e\x57\x91\x22\x9c\xf8\xb2\xf7\xaf\x3e\xa8\x6d\x57\x55\xe9\xf6\x4d\xd3\xc8\xb7\x79\xac\x39\xd5\x24\x56\x5c\xb6\x86\xef\x5d\xeb\xa6\xe5\xeb\x47\xdb\x4a\xc3\x8f\x6a\xdd\x8c\x91\x11\x13\xba\xd6\x9e\xca\x89\xcf\x79\xd6\xa4\x92\x33\xc1\x8c\x8e\xca\x98\x94\xf2\x61\x77\x4b\x39\x31\xa5\x6b\x61\x56\x7c\xce\x33\x2b\x7c\x28\xa2\xc5\x87\x2c\x88\xf3\x50\x9e\x9a\xc5\x31\xa1\xab\x13\x7c\x3b\x7d\xcf\xa3\xa7\x4e\x02\x2c\x8f\x4f\x3a\x31\xc7\xa1\x09\x24\x4f\x34\x00\xe5\x69\xf9\x6d\xb4\x13\x84\xa5\x1e\x8c\xa0\xad\x06\x14\xcd\x42\xaa\x7e\xa8\x27\xc5\xb3\xe7\xb8\xff\x92\x1f\x61\x10\xc1\x08\x67\xb2\xcb\x5b\x32\x3e\xb8\x98\xc6\x11\x8f\x64\x18\x8c\x89\x74\x3c\xea\x57\x13\x71\x83\xd1\xf7\xca\x5a\xdc\xa2\x74\xd7\xa5\x06\xab\x59\x28\x5e\x52\x22\x70\x21\xb7\x9a\xec\xe5\xf7\xba\x7b\x5d\x25\xfe\xd8\x51\x9a\xa7\x43\xfd\x08\xec\xac\x84\xb0\x3d\xda\x5f\x3c\x32\xa2\x08\xbe\x35\xee\xb5\x7f\xbb\xd1\x05\xe8\x37\x73\x9a\xb2\x0b\xaa\xb1\x73\xaa\xb0\x8d\x71\xb7\x49\x3e\xae\x5d\xcb\xb5\x7c\xcb\xa2\xb6\x61\x68\x97\x0f\xb0\xc2\xa2\xa1\x2a\x77\x2f\x8b\x4f\x94\xa6\x40\x70\x4c\xbb\x16\xd4\x42\x29\x06\xd4\xb2\x7c\xab\x65\xd9\x86\xe6\x30\x85\x96\x67\xc9\x21\xaa\x91\xed\x5a\xff\xa3\x01\xe6\x23\xac\x0d\xc0\xde\xc1\x2d\xf8\x19\x3e\xc0\x93\x9a\x85\x8e\x70\xf6\x85\x60\x05\xc1\x71\x82\xab\x45\x57\x31\x70\xfe\xf3\xe0\xf9\x02\x7e\xad\x55\xe7\x68\x7a\xc0\xd3\xe3\xc2\x32\xc9\xb6\x72\x53\x35\xcd\x06\x8a\x12\xe3\xe7\x76\x2d\xb7\x65\xd9\x05\xcb\xe5\x84\x59\x10\x7c\xd7\xa2\x76\xe4\xe7\x43\x1e\xda\x5e\x37\xca\x69\x22\xb4\x3d\x6a\x2b\x1c\x64\x49\x2a\xc1\x8f\x0c\x40\xa1\x93\x15\xb5\x3b\x06\xc8\x05\xfc\xc2\xbe\x59\xb7\xad\xda\x5b\x2e\x88\xe7\xba\x4d\x0c\x5c\xfb\x53\x78\xc1\x87\x18\x6f\xf6\xb8\x4e\xec\x30\x19\x75\x23\xce\x6d\x87\x2e\x60\x50\x2b\xce\xa9\x89\x03\xc3\x95\xa0\x10\xc7\xac\x04\x95\xee\x31\x8f\x77\x3c\x9c\x53\x4f\xe3\x41\x30\xe6\x69\x25\x16\x8f\x2c\x9a\xdb\x7e\xb7\xa1\x7d\x02\x96\xa5\xa7\x59\x9a\xc3\x73\x69\xd9\xe6\xa1\x74\x8f\x47\x65\x8a\xd2\x92\x19\x44\x35\x6b\x81\x87\x93\xd5\x99\x5e\x66\x54\x87\x19\xe3\x6b\x20\xec\x47\xba\x80\x69\x3d\xe0\x5f\xf5\x60\xa0\x2c\x25\xfc\x5f\x21\xf1\x7f\x1f\xcd\x41\xcc\x42\x87\xbc\x63\xdb\xcd\x7c\xda\x38\x3f\x16\x3c\x5f\xfa\xa8\x0f\xab\xc2\xf6\x36\xa5\x94\xda\x1e\x04\xf9\x0d\x3c\x39\xa3\xcd\x18\x0b\xba\x91\x1f\xef\x05\x5d\x93\xde\x62\x27\xb0\x3d\x83\xd0\xfc\x78\xcf\x35\x08\x36\x2e\x93\x6b\x4c\xfd\x0a\xe1\x7b\x4e\x6c\x52\xfe\x97\x9c\x21\xc5\xf9\x2d\xed\xd8\xf1\x28\xed\xb9\xfd\x05\xbc\xbf\x06\x82\xbd\x7b\xea\xe5\xcd\x74\xca\xc5\x83\x20\x41\xc6\xec\xe2\x7a\xc5\x17\x0b\x78\x5f\x1b\xf7\x76\x01\x1f\x59\x35\xf6\xe6\x24\x98\x02\xe7\xac\x67\xcd\x2d\xb0\xbe\x5a\x60\x05\x16\x58\x23\x0b\xac\xa9\x05\x56\x64\x81\xf5\xff\xfc\xdf\x16\x58\x13\x0b\x2c\x0b\xac\xcf\x16\x58\xcf\x2c\xb0\x7e\xb6\xc0\x7a\x6d\x81\xf5\xd2\x02\xeb\xc0\x02\xeb\xa3\x05\xd6\x07\xcb\x10\x68\x65\xf5\x1a\x1b\x88\x33\x69\x68\xd2\x1a\xd0\x54\xd8\xbb\x91\x9a\xf9\x91\x88\x3d\x4a\x8f\x60\xa3\xae\x05\x23\xcb\x8f\x28\xc5\x55\x4f\x1b\xfc\x59\x89\xe5\xeb\x48\xf2\x39\x7e\x8d\x75\x0e\xf2\x67\x49\x4b\x3a\x90\x2d\x16\x15\xcb\x6b\x26\xf2\x87\xf5\x42\xbe\x31\x70\x9b\x90\xdb\x13\x22\x29\x52\x9c\xf3\xa4\xbc\xe4\x2e\xb4\xd0\x7b\x79\x49\x8c\xba\x59\x48\xe1\x03\x89\x20\xa0\x68\xb2\x68\x59\x3e\xfe\xf0\xf4\xf7\x24\xfd\x9d\xa6\xbf\xc2\xf2\xaf\xdb\xfc\x74\x25\x4a\x11\x22\x99\x81\x12\xa7\x44\x95\xaa\xe1\xce\x13\xd5\x54\xdb\x53\x6d\xbd\x12\xa1\xcb\x7d\x71\x14\x13\x80\x17\x5d\xe1\x08\x65\x76\x94\xd8\xf4\x51\xda\x85\xdb\x1b\x76\xa1\x0e\xff\x35\x28\xad\x69\x44\xa7\x49\xac\xdb\x66\x33\x32\x09\xed\x67\x12\x19\xdc\x26\x46\x7e\xcf\x0f\xc4\xb4\xf0\x55\x1c\x89\xc9\x70\xf0\x39\x59\x3a\x90\x15\xcc\x30\x4a\xcb\xa9\x36\xa0\x04\xd7\x26\xd1\x13\xc5\x8d\x74\x90\x5a\x6b\x76\x3d\xd7\xe7\x78\x9d\xa3\x02\xf9\x13\x32\xe3\x25\x8f\x83\xfc\x9e\xd2\x02\xb2\xe4\x24\xc2\xbb\x09\x73\x26\xa9\x0a\x10\x04\x82\x8c\xc2\x01\x2f\xc9\x9b\xa9\xc1\x1b\x4a\xcb\x9e\x4b\x6f\x18\x97\xcb\xa1\xed\xb7\x0b\x09\x8b\x73\x98\x30\x63\x71\x2f\xe8\xc3\x98\xc5\xbd\xa4\x0f\x03\xe6\xe9\x5b\x1f\xc6\xbb\x33\xd4\x18\xcf\xf0\xf2\xc5\x31\x0b\x21\x64\x01\x04\x2c\x81\x84\x85\x74\x67\xe0\x38\x37\xf7\xdc\x1d\xcd\x2d\x86\xc5\xec\x3d\xa6\x64\x06\x63\x25\x6f\x2b\xe4\xd3\x5c\x99\x11\xf4\xd9\x0c\x54\x0d\x6c\x0c\x99\x4d\x5a\xb8\xe7\xd2\x99\x69\x53\x30\x6b\x87\xb4\x19\x42\x6a\x35\x30\xe0\xe1\x98\x8c\x31\x49\x5f\x17\x81\x02\x4f\xb8\xeb\x52\xaa\x69\x6a\x66\xe4\x9b\x35\x43\xda\xce\x8b\x6a\x70\x63\x4c\x5b\x44\x2c\x5c\x14\x6b\x9c\xa1\x40\x43\x0f\x17\x6d\x5b\xf7\xa6\x40\xfc\xca\x53\xcc\x9f\x08\x07\x55\xc4\x38\x67\xe5\xa6\x01\x96\xbe\x46\xa0\x30\x94\x2e\x68\xab\x58\xf9\x84\x41\xd4\x9a\xde\xb5\xd2\x4e\xfa\x3c\xb7\x2c\xca\x74\x08\xa2\xb0\x5a\x58\xb2\x40\x90\x6b\xe4\x57\x6e\x0a\xe2\x12\x1e\x50\x10\x8a\x9b\xc8\x05\x79\x71\x3d\x71\x58\x32\x45\x69\xbe\x5c\x73\x6c\x8d\x5d\xcd\xb5\x45\x78\x0f\xdb\xf2\x85\x58\x15\x65\x85\x8f\x4a\x4e\x85\x34\x61\x1a\xca\xf3\xb2\xe2\xda\x85\x90\x99\xda\x39\x5a\xd0\x6d\xcc\x78\x2f\xea\x43\xc0\x78\x2f\xcc\x19\xd0\x60\x37\x46\xba\x8f\x20\x42\x8a\x15\x20\x58\x0c\x31\x52\xae\xa0\xa0\x4a\x30\x99\x92\x47\xac\xde\x43\xf5\x8e\x14\x14\x50\x93\x36\x02\x5e\x5d\x7e\xc6\xf1\x49\x69\x7c\x93\xa5\x1c\x1c\x6f\x49\x28\x72\xcc\x8c\x1c\x4e\x0e\xc3\x31\xb3\x8c\x97\xb2\x28\x20\xa5\x2c\x03\x5e\xa2\x99\x9f\xc2\x28\x44\xbf\x8d\xae\x4d\x2c\x8f\x2b\x89\xde\xe7\xbb\x6e\xd7\xf5\x8d\xd6\x8f\xf8\xda\xe3\x1a\x87\x13\x47\x9a\xda\x8b\x61\x41\xab\x80\xb2\x1a\x09\x38\x24\x9c\x42\xc8\xa2\xcc\xea\x28\xc6\x95\x21\xc7\x8f\x21\x59\xd5\x72\x13\x8c\xe9\xa9\x78\xd0\xcd\x7a\xee\x7b\xe9\xad\xe9\x59\x82\xe7\x5e\x5e\x76\xca\x49\x1d\x3c\x8d\x34\xf0\x0d\x35\x24\x9f\x7f\x96\xb4\xcd\x17\xb8\x03\x40\xad\x5d\x87\xae\xb0\x3b\xe0\x7e\xb5\x39\xfc\xc2\xe0\x52\x2b\x90\xa7\xf1\xb9\x56\xf9\x23\xe0\x90\x28\x26\x6d\xd7\x55\x13\x61\x84\x17\xa8\x09\xf5\xab\x88\x89\xcc\x38\x8c\x39\xa5\x7e\x8e\xae\xa8\x08\x72\x7e\x1c\x24\x1b\xaa\xaa\x62\x66\x73\x08\xd0\xda\x68\x01\xd1\xb5\x54\x80\xa1\xc2\x10\x16\x0d\xd1\x8a\x7a\xc5\x96\x85\xae\xa0\x84\x42\xa2\x75\xaa\x33\x56\xba\x37\x75\x87\x44\x6c\xb6\x9b\xd0\x46\x83\x0c\x71\x79\x57\x4b\xfe\x50\xef\x1b\x63\x18\xc0\x08\x86\x4c\x92\x04\x2f\xcb\x24\x33\x0a\x53\x66\xec\x42\x36\x87\x33\xd6\xc3\x0b\x72\xb7\x48\x7c\xdb\xa3\x8d\xc6\xa9\x33\xdc\x9d\x6a\x47\x60\x73\x35\x1e\x2a\x00\xc5\x82\x7d\x4a\x21\xd9\x73\xf5\x19\xdf\xce\x70\x97\x9d\xee\xd8\xf6\x10\x2f\x15\x1a\x30\x0f\xc6\x4c\x15\xd8\x19\xec\xc6\x3b\xb6\x3d\xa0\x08\x9d\x8c\xd8\xb8\x39\xa0\xbb\x49\x7a\xe1\xe7\xde\x2c\xdd\x07\xce\xf4\x81\xe8\x88\x2e\xf4\xe5\xd4\x75\x20\x63\xa7\x00\xba\xc7\xbc\x1d\xc7\xd9\x1c\x6a\xa7\x79\x96\x1d\x8a\x4e\x1b\x0d\x72\xc6\xcc\x5d\x3f\x81\x19\x4c\x29\xd5\x35\x97\x3f\x0d\xe1\xb4\x60\x10\x4f\x9d\xa1\xca\x87\x5a\x5f\xc3\x6d\xb4\x7b\x66\x18\xb0\x9d\x65\x43\xb8\xcc\x22\x68\xa7\x25\x8d\xf8\x10\x37\x66\x24\xee\xb8\x6b\xb5\x5c\x6e\xf9\x16\x58\xa6\x53\x4a\x7e\xa8\xa5\xb3\xfe\x4c\x42\x4a\x41\xcd\x01\xaf\x9d\x2b\x67\xc2\x1b\xe9\x30\xa2\xb2\x3d\x63\x14\x0c\x26\xda\x83\xb8\xc9\xdb\x29\x4d\xe5\xb6\x83\xcb\x07\x1a\x3c\x3f\x17\x6a\x0b\x62\xda\xf7\x21\x7f\x96\xf7\xb4\x19\xef\xc6\x4e\xeb\x6e\xa3\x41\xa2\x26\x8b\x29\x44\xbb\x2c\xe8\x86\x68\x78\x6a\x2d\x54\xc7\xcb\x8c\x4c\xb1\xe4\x91\x98\x13\x45\xbd\xdf\x90\x8e\xea\x84\x9d\xb4\x5a\x4d\x67\xba\xda\x05\x28\x2a\x5b\x93\x19\x89\x30\xcd\x8b\x2e\x66\x86\x35\xe6\x69\xc1\x18\x0c\x39\xf9\xaa\x2d\x8f\xf1\x74\xa5\xe7\x81\xe7\xf6\x37\xe3\x15\x4e\x71\xbf\x52\xeb\x00\xe1\xfa\x67\x25\xeb\x60\x1a\x46\xad\x5f\xba\xf5\x12\x95\x84\x27\x2a\xad\x99\xaf\xa4\xd3\x82\x29\x96\xed\xf2\xd9\xd9\xe4\xda\x00\xf9\xc5\x74\xe2\x11\x93\xcd\x6f\x72\x03\xe0\x99\xc1\x34\x7b\x20\x18\x27\x53\x5c\x17\x27\xdc\x14\xb1\x84\x3e\xd2\x0e\xa2\xda\xc3\x90\xa5\xa5\x4c\x03\x61\xb6\xc8\xe0\x20\xc3\x51\x66\x0e\xe6\xc5\xb0\x9c\xe9\x61\xd9\x68\x1c\xe6\xfa\x98\x2b\x6d\x0d\xe1\xc5\xe3\xaa\xf1\x28\xaa\x3c\xbe\x02\x79\x72\xd7\xed\x3a\xf9\xae\xe1\x48\xe0\xd4\xcf\x5f\xd5\x9b\x81\xb7\x13\x13\x16\xcf\x0b\x26\x5f\x84\x54\x3b\xbe\x5f\xbc\x99\xdb\xff\xd1\x52\x29\xde\xe4\x3e\x6f\x1a\x24\x73\x6e\x4a\x31\x78\xf4\x00\x82\x19\x4e\x91\x06\x3e\x3c\xb4\xfb\xd6\x99\xfc\xd6\xdd\xf4\xed\x84\xc3\x91\x62\x23\xc8\x31\x6e\x6c\xc7\x9c\x78\x6d\x51\xc8\x4c\x12\xdd\x4f\x23\x1e\xd5\xee\xf4\x75\x07\x28\x36\x87\x48\xed\x4a\x02\xc7\x50\x1a\xdd\x39\x28\xc6\xf0\xfc\x1a\x63\x78\x80\x63\x98\x35\x83\xf0\xe2\x71\x93\x39\x75\x68\xb8\xb2\x1f\xf0\x15\xc6\x86\x39\xc4\xd6\x5d\xa3\xbd\x2f\x96\xb8\x3c\x9c\x2a\x9c\x36\x4b\x43\x70\xb1\x32\x5b\x31\xaa\xa6\xd8\x5a\x94\xdc\xe7\xc5\x19\xa9\x12\x43\x40\xe8\xe3\x7f\x88\x4a\x8e\xad\x31\x11\x59\x08\x82\x0b\x4e\xf0\x06\xa9\x72\x90\x95\x90\x76\xb9\x1f\x75\x8d\xf5\x37\xa4\x7e\x58\xf8\xec\x54\x0f\x26\xcd\x4b\x6c\xf4\x37\x82\x7d\x45\x1f\x96\xeb\xf0\x20\xd2\x70\x8b\x8c\xa9\x9f\xbf\xd2\x6b\xfa\xd5\xc8\xf4\xbc\xba\xe2\x60\x03\x0f\xd2\x4d\xf3\x05\xa7\xcb\xce\x36\xeb\x8f\x24\xe3\xdc\x9b\x33\x45\xc9\x96\xab\x4b\x6d\x6e\xe0\x1c\xa1\x81\x73\xee\xa2\xb3\xf9\x41\xa6\xcc\x0e\xd6\x53\xac\xa4\xc7\xeb\xb5\x1e\x42\xeb\xa5\x39\xa9\x00\xf0\x35\x1e\x42\xfb\xbc\x18\x04\x25\xec\xa5\x9d\x8d\xb2\xb3\x7d\x59\x73\xb6\xbf\xca\x8b\x48\x70\x12\xd3\xc5\xad\x65\x33\x74\x94\x0b\x8c\x73\x24\xbc\x8e\x0c\x8d\x65\xcc\xc3\xa5\xd3\x78\x96\x04\xd1\x30\xe9\xbe\xf7\x89\x64\x1f\x53\x27\x96\x3c\x33\x3c\x47\xa3\x22\x8a\x2e\xea\x79\x66\xdb\xb2\x4c\x7f\xe4\xa8\x30\xfc\x0a\x8b\xcb\x35\x63\xd6\xeb\xa7\xca\x8b\xd4\xfc\xdd\xdd\x09\xf7\xdc\x46\x23\x51\xff\xc8\xcc\x4e\x6c\x6f\x2f\x6a\x34\x48\x62\x72\x30\x91\x33\x53\x54\xa3\x59\xb9\x2c\x0a\x4a\x18\x9d\x90\xd0\x61\x09\x84\x76\x42\x29\x6c\x11\x32\xb3\x59\x62\x7b\x74\x2f\xa2\x74\x87\xaa\x0a\x02\x46\x02\xdb\xa3\xb7\xf3\x5b\x24\x6f\x14\x24\x95\xb1\x6b\x5a\xb9\x8b\x37\xb4\x85\x26\x66\x06\x33\x21\x78\x34\x98\xeb\x53\xb6\xec\xad\xe7\xf6\x55\x3f\xe3\x0d\x72\x7a\x7d\xed\xbf\x67\xe4\x1c\xf2\x41\x38\x09\xc6\x5d\xab\xa5\x72\xa6\x6f\x2a\x57\x62\xe6\x8a\x66\x13\x2e\x82\xb1\xc2\xfe\x3a\xf3\x3b\xd3\x7c\x24\x3f\x76\xe8\xb9\xce\xbf\xfa\xed\x13\xa8\x73\xbc\xe0\x3d\x5b\xf6\xd1\x75\x9c\xe4\x43\x9a\xd5\x05\x5a\xb3\x4c\x29\xcc\x4a\x87\x95\x5c\x0c\x78\x24\xbb\xd6\x6d\xd5\xe0\xf4\x4d\x35\xb8\x74\xac\x3a\x09\xa3\x59\xd2\xb5\xfe\xdf\xff\xff\xff\xa5\x72\xe1\x9b\xca\x33\x28\x75\x2a\x88\xba\xd6\xf3\xe0\xb9\xca\x11\x05\x91\x6d\x59\x37\x0c\x93\x8d\x7c\xe3\x23\x9c\x3d\x52\xcb\x17\x9e\xf1\x21\x7d\xe1\x11\x1f\x8c\xd2\x73\x5e\x18\xe6\xc7\xb8\x70\xca\xd2\xd3\xda\x69\x76\x36\x0b\x13\x96\x1d\xc0\x9e\x99\x47\xad\x30\x67\xe9\x61\xea\x71\x7a\x76\x7a\xc3\x42\x83\xb9\xe3\x2e\x99\xb0\x2d\x17\x8e\x99\x75\x62\x51\xff\x97\xde\x71\xff\xf2\xb2\x38\xdf\x3b\x43\x39\xc1\xeb\x50\x98\x17\xb9\x80\x9c\x5e\x5e\x5a\xae\x2a\x2e\x1b\x0d\x8b\xa1\x9b\x95\x12\xbb\x4e\xd1\xbb\x9f\x59\xae\x05\x82\x59\xcc\xd2\xac\xf8\x09\xb3\x6e\xa9\x2c\xc3\x6e\xe8\x5b\xff\x07\x9f\x1a\x8d\x76\xef\x38\xbe\x78\xdf\x4f\x3d\xae\x8e\x69\xd7\x72\x2d\xfb\x18\x8f\x94\xce\xb3\x23\x01\xdf\xb2\xe0\x28\x2f\x1c\xfb\xed\xde\xed\xa9\x51\x62\xa6\xbe\x9f\x33\xd5\x64\x38\x60\xed\xde\x90\x8f\x4e\xa6\x22\xb9\x5d\x64\xa9\x98\x4f\xa7\x2a\x7a\x98\xc1\x90\x9d\xc0\x21\x3b\x42\x27\x75\xbc\x63\xf2\x98\x1e\xb2\x73\xc2\xa9\x7d\x08\x9c\x59\x56\x71\xad\xeb\x0b\xa6\x35\x5b\xbb\xee\xe5\xa5\xd7\xe6\xbb\xee\x0d\xbc\x64\x36\xd5\x79\xd1\xee\xc0\x3f\x2f\x29\x95\xcf\x28\xcc\x51\x10\x31\x09\x97\xfb\xf9\x3d\xa2\x38\xa2\xe9\x52\x10\x31\x0f\x42\xe6\x78\x3b\xd1\xae\xd0\x16\xa1\xfa\xa0\x80\xf7\xa2\x7e\x7a\x24\xd0\xb2\xfc\x90\x49\x16\x99\xda\x67\xd7\xf2\xd5\xd0\x68\x91\x28\xa2\x50\x7c\xce\x9c\xfc\x95\x40\x68\x23\x14\x4c\xbf\xc9\x6f\xe0\x0a\x43\x42\xe6\xe6\xcc\x50\xb8\xe7\x76\x8b\xa3\xec\x90\xe6\xa7\xd4\xd2\xf6\xd4\x32\x8d\x8e\x51\x2f\xf0\x8a\x51\x9b\x37\x1a\x96\x6d\x6d\x31\x36\x6a\x34\xc8\x0b\xb6\xe5\xe1\xe5\x9e\x2f\xba\x16\x51\xb8\x1b\x75\x47\xfe\xd8\xb7\x1c\x7c\xbe\xbc\xcc\x12\x2d\xcb\x1f\x51\x7b\x08\x87\x8c\x58\x89\x26\x35\xce\x7b\x3f\xda\xef\xda\xdb\x7d\x3c\xf4\x3d\xb4\xc9\x8b\x46\x23\xcf\x4e\xf1\x28\x18\x0e\x50\xd0\x55\x68\x81\x38\x47\xd5\x8e\x6d\x87\xbb\xf1\x8e\x92\x74\xef\xfc\xb8\x47\x66\x8a\xc8\x4f\x03\xf1\x20\x1e\xf2\x7d\xa9\x84\xc2\xcb\xcb\xd9\xde\xdd\x1f\xe8\xb7\x43\x46\xee\xdc\x63\x8c\xcd\xba\x41\xde\x21\x3c\x81\xcd\x5f\xa8\x1e\x63\xb3\xeb\x1a\x7b\x8b\xc5\xa4\xd1\xd8\x3a\xc5\xc1\x53\xcb\xb7\x12\x31\x35\x01\x5f\xb0\x61\x76\x62\x9b\xdf\x33\x7a\x98\x0d\xe2\x3e\xbb\xd8\x9d\x76\x8b\xe3\xb2\xa9\x73\x91\x1f\xb7\x49\x45\xc2\xd9\xf1\xcf\xa4\xd1\xc8\x80\xef\xdb\x1c\xf6\xb3\x9d\x71\xea\x64\xb0\x7c\x55\x25\xec\x33\x85\x06\x91\x12\xc0\xae\xe5\x73\x36\xb4\xb9\x7d\x68\xef\x9b\x44\xc0\x74\xfa\xbe\xfa\x62\xa6\xff\x5b\xa5\xef\xe7\x9d\x43\xeb\x70\x7d\x4e\xbd\xe7\x51\x3b\x05\x94\x7e\xbe\xa8\x06\x87\xe0\x6c\x5f\x67\xc9\x88\x24\x31\x22\x58\x9c\x15\x8b\xd9\x59\xf7\x9e\xdf\xee\xa9\xc9\x66\x4c\x47\x63\xb7\xca\x95\x05\x1d\x0f\xce\x28\xf5\xeb\x3c\x89\x3a\xae\xfa\x04\x87\x6b\xaf\x87\xc4\xd3\xe9\xac\x35\xdf\x52\xeb\x9f\x11\xe8\x87\x97\x82\x8f\xc2\x8b\xda\xd3\xd7\x11\x21\xf9\x3a\xaa\x6f\xfb\x1d\x59\xe8\xb9\x14\x6d\x74\xcc\x9a\x9f\x7b\x41\xc8\x72\x29\xc8\x73\xc1\x41\x33\x4c\xa4\xe2\xa8\xbd\x5d\xeb\x22\x90\x0b\xe7\x61\x93\x53\x1b\xbd\xf0\xc9\xb7\x9c\x43\xf0\x2d\xb0\x20\x63\x22\xfc\xde\x76\x1f\xb2\xcd\xd2\xef\x59\xb7\x2c\xb0\xac\xfe\x82\xc2\xcf\xec\x56\x4b\x77\x11\x3e\xe4\x8f\xba\xb7\x48\x8f\xaf\x39\x13\xe4\x47\x0a\x9f\xd5\xaf\x6b\x9a\x85\xf3\xbf\x56\x04\x8e\x97\xfc\x6f\xec\x22\x9c\x76\xee\x9f\x18\x1c\xff\xe1\x18\x1c\xc9\x9f\x1a\x83\x23\xf9\x03\x62\x70\x24\xb5\x31\x38\x52\x7a\xf9\x33\xbc\xb0\x3f\x99\xb2\x78\x11\x64\xa3\xd7\x37\xe5\xf0\x0c\x37\x6e\xb6\xc8\xa5\x9e\xd2\xa5\x46\x98\x95\x87\x8e\x47\x77\x6c\x9b\xef\x86\x3b\x34\xea\x71\xc7\xeb\x67\x5a\xe2\xd7\xbc\x75\x4c\x89\x04\xde\x0e\x0d\x07\x3b\xe3\x8c\xa5\xde\x20\x99\xfb\xa2\x67\x1a\x8f\x47\x20\x69\x1e\x9d\x23\x48\xa5\xf9\x83\x0b\x59\x55\xd8\x68\x89\x4a\xe4\xd6\x7a\x86\x07\xd6\xae\xdb\xed\x3d\x0f\x9e\xc3\xf3\xe0\x79\xdf\xef\x29\x1e\x27\xea\x85\x8e\xd7\xf7\x51\xd6\x0a\x77\xb3\x33\x68\x95\xac\x12\x8b\x3b\xad\xfb\xfd\x05\x04\x75\x0a\x83\xcd\x23\x82\xe4\x26\x82\xcf\x30\xf0\x52\x16\x1a\x22\x4a\x03\x81\x08\x16\x2d\x05\x02\x51\xdd\xc0\x39\x9b\x2a\xb1\xc3\xc2\x7c\xc0\x0e\xd5\x72\x92\x85\x33\x31\x82\x80\x44\xe5\x20\x20\x91\x19\x04\x44\xb6\x92\x58\x48\xf2\x99\xb7\x02\x0a\xe8\xf4\x1d\xfc\xae\x98\x20\xa8\xfc\x2a\x14\x15\xc1\xf5\x65\xfe\x00\x65\xfe\xa0\xf5\x65\x16\x44\x12\x03\xb3\xd5\x2c\x6a\x66\x0d\x2b\x94\x03\x8a\xa6\x33\xe5\x80\xcc\x7c\x03\x44\xbd\x26\x20\xa8\xd5\x81\x3e\xe0\xff\x84\x13\xf9\x0b\x87\x13\x79\xf5\x77\x66\x16\x5e\x2d\x31\x0b\xff\xd5\x01\x45\x5e\xfd\x79\x7b\xd9\x63\x73\x2f\x73\x41\x30\x0f\xe5\xe6\x98\xf5\x5a\x77\xfb\x10\x54\x7d\xcc\x92\xd2\xa1\x06\x93\xdd\xa0\xb4\xc5\xc4\x20\xc1\x85\x88\xf6\x4d\x2b\x83\x59\xbe\x17\xa6\x2e\x55\x65\x57\x2b\xdc\xf3\xa2\x1d\x1a\xf7\x78\x9f\x11\xc2\x6d\x8f\x36\x85\x43\xb8\x13\xd1\xa6\xa4\x6d\x12\xd9\x5e\xe1\xb7\x99\x4b\x4e\x75\x5b\x09\xb2\x7c\xab\x83\x6d\x44\x0c\x97\xa8\x0e\x8a\xf4\x68\x84\xc5\xa2\x9e\xd7\xd7\x5e\x79\x82\xd9\x02\x66\x18\x6d\x43\x82\xe8\x2f\x20\xb9\xce\xc2\x8e\x0b\x46\x89\xac\x0d\x0b\x94\x59\xc5\xdd\x26\xb9\x6a\xeb\x0d\xae\xdc\x7a\xc3\x5d\xaf\xdb\x93\x10\xf7\xdc\x7e\xdf\x0f\xf7\x58\xd4\xed\xc5\xbd\xc8\xf1\xfa\x20\xfa\x7e\x2f\xc6\x3d\x19\xe2\x5e\xd8\xc7\x8e\x5c\x7b\x53\x49\xa8\x9f\xa8\x82\xf2\x54\xf0\xe4\x34\x1e\x0f\xeb\x76\x95\xd8\xec\xd1\x8a\x5d\xe5\xb1\xb1\xab\x20\x5e\xb3\x9d\x25\xa8\xdf\x59\x04\x27\x49\x7d\x48\x8a\x87\x25\x9e\x4b\xd1\x66\x71\x00\xe2\x55\xa2\x9b\xe5\x28\x63\x61\xb7\xcc\x02\x49\x08\x73\xfa\xcc\xbb\x71\xad\x53\x8c\xca\x0e\x6e\x38\x19\xe6\x61\x22\x0a\xcb\xbe\x54\xa7\x5f\x3d\x88\xf8\x3e\x66\x61\x83\xaa\x4a\x67\x1e\x6b\x89\x2c\xaa\xe3\xef\x7a\x52\xd3\x90\xec\x45\x8a\x70\xfe\xf8\x13\x88\x87\xd7\x60\x32\xcc\xe3\x06\x94\x57\x9e\x2b\x71\xdc\xfb\x81\xc2\x53\x9e\x47\x90\x80\x9f\x8a\xe7\x82\x08\xbe\x1a\x76\xc3\x85\x9d\x5d\xd9\x0d\x9d\xb9\x8c\x2d\x1b\x9f\x65\xb0\xfc\xfc\x02\x06\x5b\x52\x0a\x32\xd7\xea\x69\x0d\x46\x1d\x42\x14\xcc\x6a\x29\x08\xd1\x7e\xa0\xee\x64\x9b\x93\x22\x0e\x06\x11\x8e\xa7\xf2\x13\x01\x1e\x05\x3c\x5b\x15\xaa\xec\xf2\xf9\x93\xd6\x61\xa3\x39\x8f\x60\x1a\xb8\xb1\x46\x70\x47\xee\x0a\x87\x77\xa5\x8f\xc5\xe3\xd1\x28\xe1\x55\x03\xd2\x6c\xed\x26\xdc\x68\x2d\xa7\xa9\xc5\xa8\xe8\x7a\xbe\xa1\xa8\x11\x94\x2a\x11\x2e\xac\x92\xad\x80\x08\x62\xdd\x9a\x00\x83\x21\xdc\x08\x47\x24\x6f\x90\x40\x67\x5a\x84\x17\x97\xe1\xc5\x14\xb6\x88\xd8\x8d\x1a\x8d\x78\xcf\xcd\x59\xc0\xe4\xc6\x30\xfe\x96\xa4\xbc\x95\xd1\x2a\x91\xe2\x24\xd6\x38\x59\x9c\x9f\x86\x63\x4e\x82\x5d\xd1\x68\x88\xdd\xc8\xd8\x13\x20\x6c\x8d\xc2\x71\x29\x68\x4f\xd1\xd3\xaf\xbc\x1c\x24\x2a\x1c\x11\xb9\xc7\x24\xaa\x41\x77\xd0\x20\x61\x4b\xa8\xcd\x92\xca\x3c\xd0\x88\x74\x3c\xba\xa0\x35\x81\x77\xf9\x1e\xe3\x34\x1c\x91\x68\xd7\xd5\xe5\x6d\x3b\xda\x65\xee\x8e\x7e\x91\x84\x2b\x6e\x49\xc1\xe3\x74\x87\xee\x14\x46\x46\x8e\x13\xed\x95\xb2\x19\xb9\x74\xdc\xe2\x46\x83\x84\xad\x41\x3c\x33\xa7\xaa\x34\xbc\x09\x9f\xf2\xbc\x75\xb6\xa4\xf0\x93\xf1\x1a\x29\xf4\x3c\xe5\xea\xff\x4f\x99\xd9\x75\x3a\x7c\xe4\xa9\x9a\x21\xfa\xe8\x9b\x9f\x71\x31\xaf\x37\xc1\x2b\x85\xeb\x02\xc3\x76\xb0\xd1\xe0\x7b\x6e\x97\xef\x79\xdd\x0c\xc3\x24\xea\xd6\xd0\xbe\x7a\xbe\xcd\x19\x73\x17\x75\xd6\x72\x69\xc7\x88\x0b\x59\x2e\xea\x87\x68\xd9\xbd\xa0\x10\xe2\xdc\x7e\xc3\x59\x69\x9c\x38\xfd\x86\x3d\x7c\x16\x47\xf2\x94\xb8\x38\x2d\xd4\xfb\xa3\x78\x26\x12\xe2\x02\xfe\x55\xc7\x48\xa6\x85\x7e\x9a\x8d\xc7\x1f\x78\x20\x08\x06\xb6\xcc\xdf\xa8\x2d\x6b\x4a\xe4\x82\x5d\x29\xab\x53\x29\x5a\x2e\x67\x38\xc1\x54\x72\xd1\x1b\x6f\xf8\x6a\x4c\x17\x98\xad\x44\x48\xd3\x78\xae\x52\xaa\x2c\x75\xc6\x34\x5d\x2a\x57\xdb\xe6\xb4\xc9\x29\xc8\x0a\xc2\xe4\x15\x08\x43\x47\xf9\x72\x1d\x15\xc0\xb6\x68\x72\xd5\x29\x3d\x56\x28\x39\xdc\xe7\xec\x0d\x87\x47\x9c\x91\x37\xa9\xe3\x38\xd4\x0e\x1c\xce\xe0\x6b\x8d\x9a\x6e\x39\x62\x54\x3f\x5e\x3d\x5e\x69\x3e\xa7\x54\xc8\xeb\x34\xab\xfd\xa8\x8e\xe6\xda\xe1\x4c\xe1\x2c\x28\xa5\xf0\x96\xb3\x47\xc6\xbe\xf2\xc5\xb4\xde\xa8\x1d\x2d\xec\x36\xd6\x8e\x4f\xd4\xc9\x5e\xe6\x84\xda\x3f\x38\x9c\xde\xfe\xe1\xea\x81\x29\x70\xf2\x50\x7b\xe2\xe7\xe0\xec\x1f\x9a\xab\x71\x42\xa4\xc3\x9d\x7b\xfc\x4e\xda\x7d\xb5\x38\x7c\x8d\x23\xfe\x02\x77\x81\x0c\x09\xd5\x54\x4a\xdb\xf7\xdc\x3b\x3f\xf2\xbb\x6a\x19\x7a\x94\x0e\xa9\x76\x12\xe4\xec\x0b\x27\x2e\x85\x5b\xf8\xe0\x51\xf8\x19\x1f\x3a\x14\x3e\xe0\xc3\x36\x85\x27\xf8\x70\x87\xc2\xaf\xf8\x70\x97\xc2\x2f\xf8\x70\x8f\xc2\x7b\xce\xc8\xbb\x8c\x44\x6e\x65\x0f\x3f\x67\x0f\x1f\xb2\x87\x27\xd9\xc3\xaf\xd9\xc3\x2f\xab\x08\x2b\x1f\xa5\x0d\xd0\x67\xe6\x5d\xc2\xe2\x1f\x8f\xc3\x1f\xef\xdd\x51\x28\x5c\x4d\x55\x29\x39\x78\x48\x56\x1f\x39\x7b\xcf\x81\x4b\x46\xde\xaf\x9d\x44\x3a\xea\x55\x4a\xde\xe1\x78\x1c\x26\x7c\x10\x47\xc3\x44\x01\xe2\xdb\x4d\x4c\x3f\xcc\x93\x54\xb3\xd3\xac\xd1\x4c\xf2\x64\x89\xce\x73\xb2\xd2\xfb\x06\xb7\xb7\xef\xf1\xbb\x57\x10\x14\x6d\xab\x4c\xeb\x7a\xa6\x47\x42\xcf\x17\x29\x19\x97\x20\x24\x23\x5c\xfe\x61\x1d\xbb\xaa\x17\xaa\xdf\x57\x75\xe2\x1e\xbf\xb3\x76\xce\x67\x18\xc3\x5e\x44\x92\x09\x09\xa1\x64\x44\x7c\x67\x2f\xae\x6a\xb2\xea\xe4\x55\x4d\xf6\xf8\xf6\xba\x26\xbf\x79\xfd\x20\xc7\x10\xb6\x3a\x96\x2c\x94\x10\x48\x46\xc2\xda\x56\xd3\x6f\x57\x34\x6a\xdd\x6a\xeb\x70\x55\xc7\x8d\x40\xfe\x4e\x36\xa2\x76\xd1\xc4\x06\x98\xdb\x9b\xde\xd0\x56\x6c\x56\x29\x0f\x94\xee\x4d\xd5\x2c\x29\x06\x85\xa3\x6d\xfe\xa9\x1f\x48\x63\xf7\x4a\x24\x0b\x0c\x2f\x9b\x99\xbc\x6a\x3d\x7f\xf3\xfa\x41\xb1\xa4\x67\x2f\xd9\xaa\x8e\xef\x4b\x0b\xfb\x9b\xd7\x0f\x36\x5a\xdb\x33\x68\xbc\x04\xfa\xca\x15\xde\x5c\xaf\x03\x69\xac\xd7\x63\xc9\x66\x52\xad\xd7\x03\x7c\xf0\x28\x8c\xf0\xa1\x43\x61\x88\x0f\xdb\x14\x4e\xf1\xe1\x0e\x85\x29\x3e\xdc\xa5\x30\xc1\x87\x7b\x14\xce\x24\x23\xe3\x8c\x70\x06\xd9\xc3\x28\x7b\x18\x66\x0f\xa7\xd9\xc3\x34\x7b\x98\xac\x9d\x24\xbf\x13\x1d\x57\x21\xe3\xca\x85\xb7\x18\x34\xbd\xf6\xce\x25\x3b\x93\x70\x2c\x19\x39\xbb\xaa\xdd\x55\xe6\xf3\x1a\x5d\x29\xb3\xa0\x66\xc2\xd5\x5c\x4d\x29\xb7\xb3\x0c\xe0\x8a\xde\x96\xd8\x51\x7a\xe3\x78\xcd\x94\xfd\x1e\x7e\xd4\xac\xa1\xca\x92\x96\x6a\x37\xb9\xd2\x32\x32\x37\x98\x26\xc5\x74\x37\x61\x2e\x57\x52\xc3\xa1\x9e\x48\x76\x6c\xcc\xf1\x23\x99\x6a\xc6\xdd\x5d\xc6\x5b\xf3\x46\x83\xb7\xe6\xbb\x9e\xeb\x66\xb2\x74\x2e\x6e\x3a\x1e\xf0\xd6\x04\x78\x6b\x08\xbc\xf5\x08\x78\xeb\x19\xf0\xd6\x21\xf0\xd6\xd3\xc2\xd7\xb2\x22\x5d\xcc\x0d\xcd\x40\x0e\x87\xb7\xe6\x2b\x01\x19\xb6\xd8\x9b\x36\x0b\xef\x97\x7c\xf3\xfa\xc1\xba\xf6\x95\x1b\x58\x26\xbf\xda\x36\xe6\x40\xd7\x35\xd6\xb4\xc6\x96\x59\x60\xad\xf4\xa0\x78\xee\x73\x98\xf8\x12\x86\xbe\x80\x47\xbe\x0b\xcf\x7c\x17\x0e\x7d\x17\x9e\xfa\xee\x62\x71\x6c\x2e\x4b\x87\x12\x5e\x48\xb8\x90\xb0\x2f\xd9\x37\xcb\xb1\xd0\xe8\xcc\xb7\x6e\x5a\xe0\xfa\x96\x6b\x2d\xe0\xb5\x64\xed\x7f\xff\x96\x34\x7f\x1b\xda\x6d\xf8\xac\x5e\x6e\xb7\xe1\x99\x64\xed\xde\x6f\xbf\xfd\xfb\x56\xd3\xee\x5e\xf6\x7e\xeb\x13\xda\xfa\xb6\xe8\xb7\x4f\x8a\x71\x7d\x29\x2b\xc1\xc6\x76\xdd\x6e\x0a\x3e\x64\x24\xea\x3a\xdc\xe7\x54\x5b\x52\x86\x15\x4f\xfe\xc8\x26\xf1\xae\x30\x6c\x8a\x84\x13\x1b\x36\x45\x76\xe8\x87\x46\xdf\x3f\xc9\xd2\x24\xcb\x0c\x21\x9f\x49\xb0\x7e\xfb\xed\x56\xc3\x32\x4f\xc0\xcc\xac\x46\xdc\x49\xeb\xdf\xa4\xeb\x5b\x36\xba\xc9\x93\x4f\x32\x73\xf7\xbf\xb4\xa8\x6d\x51\x0b\xac\xd0\x04\xf2\xaa\x0a\xe4\x59\x30\x25\xbc\x12\xec\xda\x58\x34\x7a\xbc\x6c\xd5\x07\x68\x82\x69\x00\x7c\x5c\xc1\xd4\x6b\x99\x46\xa4\xcc\xc2\xa6\x80\xb0\x3d\xc3\x01\xa7\x4b\x78\xeb\x9c\xd9\x5a\x43\x8e\x3f\x79\x94\x59\xc7\x33\x14\xb2\xdf\x01\x76\x76\x35\xd8\xe7\x1b\x80\xed\x54\xc0\xbe\xb9\x1a\xec\xd3\xef\x00\xfb\xf6\x6a\xb0\x3f\x7d\x07\xd8\x77\x57\x83\xfd\xba\x01\xd8\x3b\x15\xb0\xf3\xab\xc1\xbe\xf9\x8e\xd6\xa6\x60\x6d\x82\x3f\x7b\xf7\x7e\xec\x7a\xff\x72\x5d\xbf\xc3\xb7\xe9\xba\xaa\xee\x57\xaa\x6a\xff\x9b\x7c\xa4\x97\xa4\x67\x3b\xfd\xdf\x86\xbf\x0d\x29\xe9\xfa\x7e\x97\xe0\x23\xed\xb6\x97\x9b\x71\xaf\xd2\x8c\x8f\x78\x54\xd3\x75\x7d\x87\x44\xbd\x4e\xdf\x26\x51\x6f\xbb\x7f\x79\x69\xb9\xae\x45\xd7\x36\xe4\xd1\x77\x90\xe9\x17\xb6\xdd\x54\x00\x9d\xed\x75\x90\xdf\x7e\x07\x36\x27\x78\xf0\xe4\x78\xeb\xe0\x7e\xf9\x0e\xb8\xc3\xab\x07\xff\xdd\x06\x60\xb7\x97\x9a\xeb\xc2\x46\xc0\x6f\x7d\x47\x9b\x1f\x5d\x0d\xf6\xe7\xef\x00\xfb\xec\x6a\xb0\x1f\xbe\x03\xec\xe1\xd5\x60\x9f\x7c\x07\x86\x9f\x5e\x0d\xf6\xd7\x0d\xc0\x56\xa7\xcb\x53\x93\xa1\x53\x90\x95\x38\xb9\x76\x9e\xfc\x52\xa9\xe5\xf3\x55\xf3\xa4\x04\xab\x04\xea\xfd\x55\x0d\xae\x34\xf6\xd7\xab\x71\xf0\xf1\x9a\x20\x93\xab\x41\x72\x51\x62\xbd\x15\x3f\x51\x28\x6a\x40\x42\xc7\xd8\x42\x65\x7d\xde\x54\xf5\x51\xc9\x2c\xd6\x66\xbe\xed\x75\x2e\x2f\xbd\x4e\xa5\x4c\xb4\x54\xc6\xb3\x3f\xf2\x54\x6f\x7e\x5f\xc9\xd0\xa0\x78\x69\xd8\x36\x03\x47\xd4\xd7\x53\xd6\x44\x54\xca\xc4\xe5\x32\x29\x08\xdb\x72\x5d\xd7\x08\xf0\x16\xac\x80\x9c\x69\x58\x2b\x8d\x4f\x56\x35\x24\x55\xaa\x54\xb2\xcf\xea\xb3\x1f\x1a\x4d\x36\xb3\x8f\x85\x19\x7b\x25\x53\xa6\x66\xa3\x8d\x41\xd2\xba\x3f\xf8\xd2\x08\x84\xb0\x04\xff\x5d\x09\x93\x8e\xa7\x71\x69\x56\x32\x5a\x5b\x89\xdc\x63\x77\x2e\x2f\x75\x55\x4f\x14\x08\xff\x09\xcf\xce\xde\x8c\xe0\x08\xa2\x12\x4c\x07\x81\xc2\x4b\x49\x9e\x54\x47\xd2\x26\x77\x18\x63\xf8\x96\x57\x56\x6d\xd2\xa9\x58\xd6\x21\xce\x4d\x23\x91\xe9\x52\x3f\x6f\x5d\xd9\xcf\x49\x3d\xee\x0b\x81\xea\xb6\xe7\xba\x95\x32\x67\x4b\x65\x48\xda\x37\x7a\x65\xd9\xf9\xd5\xf5\xf1\x3b\x20\xe1\x8e\xe9\x4b\x2b\x4c\x53\xf3\xe5\xd1\xd0\x0d\x10\xf9\x98\x88\xa5\x31\x59\x6a\xd7\x52\x1d\x27\xd5\xf1\xae\xea\x74\x6f\x64\x4a\x86\x3d\x2d\x56\x10\xd9\x64\x8e\x07\x96\x6d\x51\x6a\xbf\x94\x44\xb6\xef\xb9\x97\x2e\x58\xae\x05\x1d\x9d\x70\xfb\x5e\xf6\x6a\x38\xe5\xd6\x77\x3f\xd7\x49\x54\xb0\x75\xbe\x32\x7b\xfd\x4a\x73\x70\x55\xfe\xfa\xc5\xe6\xb0\x66\xb1\x99\xcb\x94\x74\x4e\x64\xed\x62\xf3\x62\x65\x55\x6b\xd7\x9b\x8b\x72\xb1\x17\xf5\xeb\xcd\xfe\x6a\xe0\x2b\x96\x9c\xd7\x6b\x9a\x53\xbf\xea\x7c\x5e\x59\x62\xd5\xc2\xf3\xac\x4a\x23\x99\xbe\x6f\xcd\xda\xf3\x72\xa9\x96\x71\x09\xb1\x75\x73\xf2\xd3\x55\xf5\x98\xcb\xcf\xa9\x82\xe2\x9f\xca\xe5\xe5\xe7\x41\x75\xf9\xf9\x94\x2d\x3f\xa7\xd5\xb1\xd5\xcb\x0f\xbe\x99\xf5\x55\x1b\xf6\x6a\x69\x05\xca\x72\x1a\xc2\xe5\x52\x87\x07\x57\x76\xf8\xe1\xca\xa1\x58\xbb\x96\x3c\xaf\x5b\x87\x3e\xe5\xeb\xd0\x55\xc5\x9f\x6e\x54\xeb\xd2\x4a\xf1\xd3\xf2\x6a\x54\x1d\x9f\xe5\x05\xa9\x3a\x4a\x75\x0d\x5c\xaa\xe9\xab\xc8\x0d\x65\x2c\xdb\x2d\xcf\x90\x37\xc6\xb7\xdb\x46\xfa\x7d\x51\x0a\x0b\x5f\x48\x3d\xa2\xea\x67\xae\x59\x41\x9b\x23\x23\x68\x08\x31\xa2\xa2\x6d\xd0\x3a\x2c\x23\xc7\x97\x12\x15\x2c\x45\xe7\xb7\xb9\x6f\x9b\x86\x24\x86\xc0\x21\x48\x29\xf8\x37\x06\xc3\x46\x3c\x8e\xd1\x81\x7d\xc0\xc6\xa9\x8d\x12\x8c\xd8\x38\x0b\x1f\x34\x64\x33\x62\xb5\x6e\x3f\xb5\x28\x9c\xaa\x47\xff\xf6\xa1\x45\x61\xaa\x1e\x6f\x3f\xf6\x6f\x3f\xb3\x28\x9c\xe9\x97\x9b\xb7\xa7\x16\x85\x39\xbe\x04\x37\x6f\x0f\x2d\x0a\xc7\xf8\x72\xac\x5f\x4e\xf0\xe5\xbe\x45\xe1\x08\x9f\x3e\x58\x14\xce\x59\xaf\x17\x80\x07\x1e\xdf\xee\x43\x2f\x80\xbb\x70\x37\x7d\xf2\xee\x82\x97\x3d\x6f\xbb\xb0\xcd\xef\xf4\xa1\x17\x83\x07\xf7\xd2\xa7\xbb\xb0\xcd\xef\xea\xb4\xbb\xf0\xaf\xf4\x71\xdb\x05\xef\x47\x7c\x0e\xc1\x83\xed\x7b\xe9\xe3\x36\x78\x6e\x96\x7c\x0f\x3a\x5e\x96\xee\x75\xe0\xce\x76\x07\x5f\x22\xf0\x00\x95\xd7\xf8\xdc\x01\xef\x87\x8e\x2e\x21\x54\x9d\xa8\xe2\xef\x43\x4f\x82\x07\x9d\xbb\xff\xea\xf0\x7b\xf8\xb2\x0d\x3f\xfc\xf0\xc3\x3d\x7c\xe1\xaa\x3e\xef\xee\xb6\x7a\x33\xec\x33\x0f\x48\x92\x2b\xc8\x03\x92\xd0\xdd\xa4\x3b\xf4\x63\xfd\x70\xea\x87\xfa\x61\xea\x47\xfa\xe1\xcc\x97\xfa\x41\xe8\x9f\xb9\x7f\xec\x73\xfd\x78\xe2\x1f\x51\x62\x1a\xe0\x1d\x92\xd4\xa2\x2a\x8f\x2f\x23\xd1\x12\xd5\x73\x29\x2c\xf9\xe3\xc8\x22\x60\x63\xee\xbd\x19\x39\x82\xb6\x25\x04\x99\x57\xc3\x73\xde\x0a\x68\xfd\x09\x6f\xaf\xd3\x5f\x50\xda\x12\xe1\xc9\xa9\x24\xe7\x10\x1b\x8e\x25\x8c\x9d\x17\x61\x8d\x4a\xd1\x20\x45\x3b\xc5\x07\x44\xf9\x93\xa4\x20\x19\xa7\x7e\xa0\x32\x93\x80\x9d\xf7\xe2\xf6\x79\x2f\x70\xbc\x7e\xaf\xd3\xdf\x3d\xef\x05\xea\xb7\x1d\x77\x03\xc7\xf3\x83\x3e\xd5\xd6\xa0\x41\xcf\xed\x53\x9f\x18\x6e\x1b\xa5\x6a\x20\x52\x60\x3d\x05\x39\xa1\x90\xaa\xd7\x49\x58\xf8\x08\x64\x0f\xe3\x35\xc1\x14\xf2\x29\x33\xd0\xb1\x14\xc6\xd7\xb1\x42\xcc\xac\xe9\xd3\xc8\x07\x5f\x04\xa5\xfe\x88\xe8\xf0\x07\x6f\x05\x42\xab\x0f\xf0\x24\x41\xb0\x11\xa1\x60\x04\x48\x35\xc3\x10\xc6\x2c\xdc\xcd\xed\x67\x63\x1c\xdd\x2c\x40\x1a\x22\x92\x48\x76\x98\x5e\x8d\x4e\xbb\x59\x1c\x86\x08\x63\xf2\xfa\xbd\x3e\xc4\x2a\x2d\x0f\x52\x24\xb3\x66\x2c\x07\x29\x32\x0c\x87\x34\x21\x75\x0f\xfc\x19\xc6\x83\x1b\x57\xa2\xfb\xe4\x1b\xe3\xa8\x60\xc9\x38\x36\x02\x1d\x4e\x4a\x0e\x26\x94\x76\x47\x24\xe6\x18\x4e\x85\xfa\x63\x05\x6c\x65\xa4\x90\x31\xd4\xae\x4e\xaa\x05\x86\x52\x43\x18\xd1\x85\x52\xab\xc4\x77\x82\xdc\xe7\xf0\x96\xc3\x3b\x0e\x1f\x39\x48\x09\x91\x84\x58\x42\x22\xe1\x45\x71\x2f\x79\x2f\x1f\xde\x0e\xdf\x06\x3c\xf4\xa8\xa4\x74\x68\xbf\x64\xe7\x7a\xb8\x6c\xa2\x89\xa1\x26\x03\xc9\x15\x6b\x8a\x6e\xcd\xea\x05\x03\x64\x4b\x95\x12\x6a\xef\xf9\x30\x1e\x26\xe8\xc9\x3b\x0c\xe6\x09\x5e\xe6\x9b\x9c\xc6\x42\x71\xcc\x09\x24\x8c\xb7\x26\x8a\x83\x4a\x60\x96\x7d\x78\xa6\xdf\xc7\xec\x81\x24\xa1\x5a\x84\x5f\xe1\xef\x48\xbd\xc7\x14\x86\xea\x3d\x56\x6b\xef\x03\x49\x02\xb5\xf0\xbe\xc2\xdf\x89\x7a\x4f\xd4\xda\xfb\x0a\x7f\xe7\xea\x7d\xa6\x56\xdc\x57\xf8\x7b\xc2\xbe\x05\x75\xc1\x04\x82\x5e\xc1\xc0\xf7\x17\xb0\x5f\x97\x27\x2e\xe7\xa9\x0d\xbc\x3c\xeb\x99\x22\x68\x7f\x01\xf7\xeb\x72\x25\xd5\x5c\x03\x3c\x18\x82\xa1\xcf\x05\x70\xf5\x6f\xe4\xc7\x02\x4e\xfc\x33\x01\x3f\xfb\xc7\x02\x1e\xf9\x52\xc0\x63\x5f\x08\xf8\xe4\x47\x02\x9e\xfa\xa1\x80\x89\x1f\x08\x78\xe6\x27\xa2\x14\xa1\xb8\xa0\x84\x9e\x5d\x12\xe8\xf7\x98\xd7\x51\x55\x7d\xa9\xcb\xec\xd9\xff\xf3\x3f\x25\xe1\xb9\xbd\x4d\x17\xf0\xab\x7f\x5f\x40\xe2\x3f\x12\x70\xe8\xcf\x04\xcc\xfc\xb1\x80\x37\xfe\x40\xc0\x5b\x7f\x28\xe0\xdc\x3f\x15\xf0\xce\x9f\x0a\xb8\xd0\xad\x7f\xaf\x7f\xe6\xfe\x44\xc0\x07\x7f\x2e\xe0\xa3\x7f\x22\xc0\xba\x6d\xf9\x6f\xc4\x02\x8e\xd6\x63\x3e\x63\x56\xae\x40\xbe\x91\x6d\x1d\xfe\x0b\x96\xfc\x8a\x21\x28\x65\xcc\x47\xe1\x48\x8d\xc2\x91\x1a\x85\x0b\x35\x0a\xcf\xd5\x28\xfc\xa4\x46\xe1\x5c\x8d\xc2\x81\x1a\x85\x43\x35\x0a\x2f\xd4\x28\xec\xab\x51\x78\x7d\xd5\x28\x14\xc2\xce\x86\x03\x51\xb4\x6c\x69\x2c\x3e\xab\xb1\x78\xa6\xc6\xe2\xa5\x1a\x8b\x07\x6a\x2c\x5e\xa9\xb1\x78\xbc\x3c\x16\x0f\xd5\x58\x3c\x55\x63\xf1\xb5\x18\x8b\xf3\xf2\x58\x98\x1a\xab\xd3\xf5\x0a\xab\x73\x36\xc5\x5b\xb8\x51\x5d\x55\x3a\xcf\xa9\xd3\xda\x95\x86\xd2\xac\x65\x74\x55\x2d\xc3\xeb\xd4\x72\xbc\xa2\x96\xf9\xfa\x5a\x26\xec\xf8\x3a\xb5\xdc\x5f\x51\xcb\xe4\xaa\x5a\xce\xae\x53\x8b\x19\x9e\x1d\xcc\x7b\x3a\x5e\xe4\xb6\xe2\x0b\x18\xfa\x5f\x24\x70\xf5\x6f\xe4\xff\x2a\xe1\xc4\x7f\x23\xe1\x67\xff\xab\x84\x47\xfe\x2d\x09\x8f\xd5\xbf\x4f\xfe\x3b\x09\x4f\xfd\x27\x12\x26\xfe\x5b\x09\xcf\xfc\x9f\x65\x25\x92\x79\xd1\x83\xf1\xfa\x1e\x4c\xd9\xe0\x3a\x3d\xf8\xe2\x3f\x92\xf0\xab\xff\x5e\x42\xe2\x7f\x94\x70\xe8\x7f\x90\x30\xf3\x1f\x4a\x78\xe3\x3f\x97\xf0\xd6\x7f\x2a\xe1\xdc\x7f\x2c\xe1\x9d\xff\x93\x84\xb2\xdf\x7e\xa5\xbb\x02\x53\xca\x01\xc5\xcd\xe3\x5d\xcc\x14\x61\xca\x02\xe6\x0a\x09\x1f\x14\x12\x3e\xfa\xf7\x25\x92\xfa\x2f\x72\x61\x72\x9c\xb5\x5e\x7f\x19\x12\xd2\x8b\x7f\x7a\x7d\x48\x18\x46\x11\x76\x61\x9c\x7b\x2f\xe5\xd7\x0e\x96\x64\x0a\x74\x86\x2f\x99\x81\xef\xd8\x76\xb2\x3b\xde\xa1\xdb\x3f\xe8\x78\x38\x45\x6c\x0a\x0c\x47\x19\xe4\x71\x7b\x10\xcf\x33\x48\x68\x76\x4d\x21\x09\xd9\xbe\xec\x45\x69\xa1\x7d\x49\x6c\x3b\xa1\x7d\xda\xad\xa4\xf8\x21\x4b\xc3\x51\xe3\xd5\x21\x96\x6b\x01\x89\x99\xec\x45\x7d\x7d\x89\x5f\x4c\x84\x62\x7a\x20\xad\x29\xa2\x78\xb1\x7c\xe1\x97\x54\xdb\x82\xa0\xb8\x64\xce\x64\xa3\xaf\x44\x17\x3b\x90\xc4\xfb\x97\xeb\x82\xf6\x66\x03\x0f\xa3\x20\xbf\x20\x31\x70\x10\x78\xd7\xa0\x4b\xb7\x98\xa8\xf8\xca\xe2\x25\x1a\xe1\x88\x58\xbf\x5a\x61\x74\x33\xa6\x55\x46\x33\x6e\xfd\x8a\x70\xac\xa4\xfe\xbb\xc7\xb7\x9b\x71\x2b\xb1\x89\xf5\x14\x33\x74\xe3\xd6\x53\xdf\xa5\x58\x46\x36\x1a\x5b\xc4\xfa\xa8\x0b\x36\x1a\x24\x6e\x7d\x64\x8a\xed\x9f\x62\x0a\x26\x3c\x62\x71\xeb\xd1\x6d\xaf\x63\x7b\x9d\x66\xdc\x9a\x52\xc8\xa3\x59\xc4\xad\x09\xe6\x98\x30\xeb\x4b\x06\xf9\x8b\xaf\x8a\xbf\xd5\x00\x95\x44\x11\xb7\xde\xee\x7a\x97\x97\x71\xeb\xed\xde\xdd\xed\x52\x97\xac\x73\xcc\x75\x79\x49\xe2\xd6\x39\xf3\x28\xa4\xed\x40\x8e\x3e\x62\xe7\x92\x1c\x48\x12\xb7\xe6\xc8\x66\xd1\x92\x42\x43\xf1\xae\x7b\xa9\x50\x1e\x76\x07\xa9\x38\x1e\x51\x7f\x20\xd5\x10\x46\x6c\x2e\x53\x27\x09\x12\xc1\x0f\x4d\xd5\x08\x74\xc4\x88\x5b\x73\x16\x2d\x89\xec\xa0\xba\x10\x95\xb7\x10\x88\x5b\xc3\x3c\x2d\x35\x59\x52\xed\xb4\xef\xd1\xdb\x3f\xa0\x0c\x41\x22\x76\x54\xd3\xc4\x9a\xf6\xdd\xe2\x79\xfb\x6e\x71\xdd\xbe\x8f\x7c\x7d\xfb\xea\x1a\xb7\xd4\xb2\xa5\x66\x61\x0c\x52\x62\xbd\x4b\xf1\x6a\xbd\xc9\xc7\xb5\x8c\x6b\x6b\x96\x0d\xd7\xec\xf6\x0f\x7e\x9a\xbf\xeb\xa9\xa1\x0b\x59\x36\x0a\x15\xfc\x9b\xe8\xf7\x8f\x96\xbf\xe9\x7e\xc7\x78\xb2\xa8\x5a\x98\x41\xcd\x5b\x67\xff\xd0\x8c\x5b\xef\x1c\x12\xda\x77\xe9\xed\x1f\x7c\x95\xac\x52\xde\xa8\x14\x6c\x7d\xe6\x8c\xfa\x31\x2f\xf8\xc8\x66\x71\xeb\x63\xdb\x73\xdd\x4b\x05\xf4\x19\xbe\xa2\x06\xe8\x5c\xf1\xb2\xd8\x8e\xd8\x9c\x83\x2f\x0c\xf7\xa0\x2c\x82\x18\xae\x52\x18\x35\x2c\xf3\xad\x9a\xe5\x53\x6c\x27\xd8\x4d\x74\x08\xf3\x68\x8f\xcd\x52\xea\x74\x3c\x35\x33\x70\x45\xc2\x0b\x33\x8d\x45\x29\xb0\x6d\xaa\xc3\xc4\x66\x1f\xd2\x44\xd8\x22\x31\x3b\xef\x85\x37\xc3\xe8\xe6\xbe\xec\x96\xbe\xf9\x61\x1f\xe3\xd3\xb3\x38\xdd\xa0\x8a\x0b\x72\x1c\x4f\x87\x8d\x55\x00\xd5\xc4\x37\xaa\x8a\x54\x55\x79\xae\x6c\xde\x64\x0f\x27\xad\x0b\x76\x40\x04\x9c\x50\x38\x69\xbd\x67\x07\x24\xd2\x8f\x03\x76\x40\xa4\x7a\x3c\x4a\x33\x1c\xa9\x47\x9d\x01\x1f\x75\x86\x23\x0a\x79\x50\x98\x25\xe1\xe4\x20\xbd\xf7\xf4\xc4\xb0\x3e\x5a\x17\x6b\x66\x01\x72\x01\xd3\x40\x24\xbc\x06\xd8\x61\x0a\x6c\xcb\xbb\x0e\xb4\x99\x1c\xfc\x74\x55\xf3\x8e\xae\x09\xf0\xe5\x55\x2d\x74\xaf\x01\x70\xb1\x20\xdf\x32\x11\xce\xb7\x6e\x5f\xc0\xcd\xdb\xef\x2d\x50\x29\xbe\x75\xdb\x99\xb4\x6f\x3b\xc3\xf6\xed\x0f\x16\x48\xfd\xdd\x79\xec\xdf\x7e\xe6\xdf\x3e\xbc\x79\x7b\x6a\x41\x2a\xdb\xf9\x3d\x6b\xff\x99\x05\xd6\xcb\x67\x56\x1f\x94\x8c\xe7\xf7\xac\xc3\x59\x34\x0c\xe6\x16\x58\xcf\xe2\xf4\xe1\xf5\x8c\x27\xfa\xe9\x1d\x1f\x46\xd9\xf3\xeb\xd3\x99\x48\x1f\x7f\x12\xa1\x7e\x38\x0c\xe4\x4c\xa8\xc7\x3e\xe4\x82\xa2\x06\xa9\xe1\x69\x60\x1a\x90\x06\xa1\x4b\xeb\xa2\x56\x1f\xb4\x40\xe9\xf7\xac\x5f\x82\x68\x16\x08\x04\xce\x8f\x45\xfa\xf8\x2c\x10\x83\x53\x0b\xac\xfd\xa9\x08\xc7\xf8\xae\x52\x7f\x99\x45\x1c\x7f\xc6\xea\x6d\x7f\x76\x32\x4b\xa4\x02\xc8\xa7\x92\xa3\xe2\x08\xac\x17\x03\x19\xeb\xa7\xe7\xf1\x59\x96\xf8\x90\x0f\xf4\x63\xda\xd8\x67\x46\xdd\xba\x5e\x5d\xa5\xae\xd0\xac\x4e\xd7\xa6\x2b\xd3\x35\xe9\x3a\x34\x7c\x0d\x1a\x83\x01\xbd\x90\xec\x50\x66\xe1\x80\x0e\x65\x0b\x29\x14\x2e\x30\x35\xa7\x2f\xd0\x2f\x48\x1b\x68\xd5\xf6\xb3\xa8\xf7\x57\xca\x76\x81\xef\x30\x19\x35\xfc\x5f\x8c\x83\x8f\x0d\x8c\x45\x4b\x5e\x30\xe6\x99\x49\xe6\x08\x73\x95\x41\xe9\x55\x16\xa5\x85\x47\x0c\x7c\x10\xec\x67\x01\x4f\x04\x23\x3f\x8b\xab\xac\x67\xd3\x83\x98\xb5\xfd\xfe\x43\x3d\x11\x0a\x51\x10\x2d\x7d\x7f\x15\xec\x89\x80\x5f\x04\x23\x4f\xae\x6a\x6b\x76\x04\xb4\x41\x4b\xff\x00\x6f\x03\xf3\x94\x0a\x5b\xfa\x5e\xb0\x5f\x44\xc1\x51\x7f\xac\xd7\x3b\x9d\x48\xf8\x20\x60\x2c\x61\x2e\xe1\x57\x01\xef\x45\xaa\x77\xba\x30\xf4\x4e\xb9\x61\x67\xae\x77\xaa\xa4\x54\xf5\x4e\x85\x39\x44\xf4\x4f\xf4\x8e\xbf\x70\xf4\x0e\x19\xfd\x8d\xa3\x77\xa4\x9d\xfb\xbb\x44\xef\x48\xbb\xf3\x67\x44\xef\x10\xd1\xf2\x35\xbb\x78\x49\xbd\x07\x09\x7b\x0c\xb3\x52\x6c\xe8\xf1\x8a\x38\x51\xa1\x9f\x10\x7d\x6e\xd9\xba\xeb\x13\xc9\x48\x84\x17\x3e\xd1\xa6\x80\x59\xb7\x2e\xb6\xa0\x07\x18\x78\xdd\x34\x32\x1e\xac\x08\x20\x7b\x96\x5d\xaa\xbf\x2e\x2c\x87\xa2\xbe\x88\x48\xe8\xe0\x45\x67\xd9\xbd\x6d\x09\xe3\xfa\x12\xe8\x31\xf5\x7b\x09\x71\x29\x24\xc4\xa3\xfd\x45\x71\xbc\x52\x3d\x32\x09\x75\x7d\xc9\xea\xba\x12\x55\x51\x08\x1d\x0a\x31\x4b\xf4\x85\xd4\x89\xaa\x8b\xb3\x88\xc4\xcc\x8e\x31\x34\x08\x09\x98\x1d\x60\xec\x61\x3c\x72\x77\x7d\xaf\x8d\xeb\x3a\x36\x24\x86\xa0\x8f\x47\x0b\x9b\x87\x78\x9e\x61\x6c\xe8\x31\xde\x31\x3b\x36\xae\xa8\x8d\x6b\x2f\x23\xa9\x6d\xb4\x2a\x9d\xa8\xd2\xda\x11\x7f\x40\x5e\xd2\xec\x45\x47\xb5\x1e\x90\x4f\x2a\xe5\x5a\x37\xf6\x84\x1a\x6e\x68\x5c\x60\x5b\x04\xcf\x88\x58\x08\x9c\x85\x04\x51\x12\x92\x7a\x7c\x18\x32\x55\x54\x65\x4e\x6a\x2e\x9c\x36\xbb\x5e\xba\x60\x3a\x16\xdf\x71\xc3\xb4\x19\x7f\x8e\x13\x35\x13\xc8\xe3\x0d\xc2\xc4\x63\x43\x63\x04\x05\xf1\xda\xa0\xfe\x41\x64\x5e\xef\x20\xa2\xef\xb8\xdf\x01\x2b\x0b\xa2\xba\x0b\x1e\xd6\xd7\x9d\x44\xe6\x1d\x06\x58\xf7\x66\x95\x25\xd1\xba\x5b\x0c\xd6\x57\x3a\x8b\xcc\xa0\xfb\xd7\xa8\x74\x16\xad\x0b\xbb\xbf\xbe\xd2\xb1\x01\x6c\x16\x5d\x2b\xe8\xfe\x20\xfa\x6b\xc5\xe3\x1c\xfd\x9d\x37\xe9\xd1\xd2\x26\xfd\x4f\x3c\xce\x7f\xe2\x71\xae\x8e\xc7\x39\xfa\xf3\xb8\xa0\x61\xd1\xf3\x5e\x1f\x24\x7b\x6c\x5e\xa4\x27\x74\x88\x49\xcd\xf0\x08\x66\x8b\x5c\x78\x91\x84\x98\xb1\xa1\x38\x08\xf0\xa8\xe3\xd1\x36\xe1\x45\x58\x25\x5a\xdc\xb7\x57\x65\x37\xe4\xfa\xe0\x95\xf9\x65\x74\x37\x78\x16\xbc\x32\x82\x90\x0d\x54\xc1\x5c\x94\x09\xd3\xe0\x95\x11\x0b\x97\x82\x57\xc6\x2c\x2a\x05\xaf\x8c\xb3\xe0\x95\xc8\xa9\x5c\x5e\x72\x2d\xd0\xc4\x66\xf0\xca\xb0\x1c\xbc\x32\x34\x83\x57\x72\x33\x78\xa5\x58\x80\xf8\x0e\x5e\xc4\xbc\xe5\xaf\x12\x14\xc8\x10\x72\xcb\xce\x6a\xe6\x69\x9b\x24\x51\x05\xbd\x18\xfe\xa6\x2e\x7c\x65\xc1\x4c\x18\x8b\xd9\xb7\xd4\xdf\x40\xda\xde\x02\xea\xab\x28\x82\xa6\x06\x6a\x50\xa3\xb6\xcc\x2a\x59\xb1\x85\x0d\x31\x18\x55\x7e\x3b\x49\xb1\x61\x89\xda\x0d\xeb\x34\xdb\x75\xf2\x4b\xba\x35\x35\x03\x67\x2f\xab\xa4\x5c\x98\xa7\x40\xa8\xef\xa3\x28\xc5\xbe\xc3\xfb\xf8\x22\x45\xe4\x18\xff\x4e\x51\x38\x41\x6b\x9b\x9e\x6d\x8b\xfe\xca\x2b\xb4\x24\xab\xe3\xca\x23\xc7\x33\x83\xff\xf0\x26\x8b\x8c\x7b\xb5\xe2\x9e\xec\x13\x5e\xbe\xce\x6f\xfa\x8f\xcc\xff\x57\x96\xf9\x27\x7f\x67\x76\x62\xf2\xf7\x92\xf9\x27\x7f\xde\x6e\x77\x56\x23\xf3\x83\x9a\x1a\x2e\xcc\x58\xeb\x2e\x8c\x99\x07\x03\xe6\xc1\x88\x3d\x86\x61\x49\x01\x70\x4a\xea\x6f\x95\x0d\x7c\xc2\x59\xeb\xae\x4d\xd4\x7b\xac\xa6\xa4\x23\x69\x93\x0c\x9a\x7c\x77\xd0\x94\xdd\xc8\x0f\x29\x8c\xc8\x70\x85\x2e\x00\x6f\xb6\x34\x05\xb3\xe9\x55\xba\x00\x88\xaf\xd0\x06\x4c\x23\x22\x61\xbb\xa4\x0d\x88\x99\xe8\x75\xfa\x30\x62\xb8\xfc\xf6\x10\x4a\x9f\xc2\x29\xf5\x7b\x23\xe2\xaa\xf6\xb5\xee\xaa\xff\xa6\x86\xe0\x74\x69\xcb\x0e\x74\x2b\x46\xab\xeb\x1f\xa9\xca\x03\xd8\xa6\x90\xb0\x91\xbe\x40\x68\xa4\xea\x1f\xb3\x91\xaa\x9f\xb3\x98\x24\xcc\x4e\x94\x54\x1c\x93\x19\xb3\x67\x4a\x30\x8e\xc9\x98\xd9\x63\x0a\x51\x2e\x22\xb7\xee\xa6\x32\x72\xc8\x24\xce\x20\x9d\x24\x1c\x49\x61\xc0\xe4\x2e\xef\x3a\x9e\xef\x61\xf3\x13\x98\xc1\xb8\xbf\x80\xd3\xeb\xe8\x14\x86\xa8\x53\x38\xa5\xfe\x50\x15\xbc\xfe\x3e\x3e\x62\x58\x7a\xa4\x4a\xeb\x7d\x7c\x4a\x5e\xd2\xec\x45\xeb\x14\xa6\xe4\x93\x4a\xb9\x96\x4e\x21\xd0\x70\x03\x43\xa7\x10\x14\xb6\x66\x2c\x00\xce\x02\x82\xd8\x0b\x08\xa2\x2e\x20\xdf\x85\x37\x63\x17\x9b\x97\xf4\x00\x67\xd7\xd2\x03\xcc\x37\xd1\x03\x1c\x97\xf4\x00\x67\x25\x3d\x40\xcb\x83\xeb\xa8\x02\x8e\xbf\x43\x15\x70\x52\x52\x05\x9c\x6d\x2e\x95\x9f\xfc\x0e\x55\xc0\x51\x49\x15\x70\x8d\x4a\x8f\x7e\x87\x2a\xe0\xdc\x00\x76\xb4\x91\x2a\xe0\x97\xec\x64\x47\xb4\x86\x44\x82\x95\x0c\x82\x31\xbf\x1f\x44\x43\x0b\x48\x0d\xa3\xb7\xa0\xb4\x94\xf3\x65\x1c\x46\xb2\x36\xeb\xb4\x9a\xf5\xf1\x90\x47\x32\x94\xf3\xda\xdc\x21\xaf\x66\x7f\x1a\x46\x3c\x10\xb5\x99\xa3\xe5\xcc\xf1\x49\x6d\xce\xd3\xa5\x9c\x87\xf3\xc9\x78\x45\xe6\xf9\x52\xe6\x17\x62\xa8\x38\x93\xda\xdc\xe3\xa5\xfe\x4d\xa6\xe3\x70\x10\xd6\x63\x63\xb6\x8c\xb8\xf3\xda\x8c\x07\xcb\x2d\xfe\x22\xea\x61\x1e\x2e\x65\x7d\x15\x0c\xc3\x15\xcd\xdd\x5f\xca\xfc\x6b\x2a\x30\xd4\x66\xff\xb4\x22\xfb\xd7\xfa\xec\x8f\x97\xb2\xbf\xce\x02\x1f\xd7\xe6\x7f\xb8\x9c\x3f\x9c\xd4\x83\xbe\x25\xaa\x59\xdf\xc8\x41\x6d\xce\x8f\x4b\x39\x0f\xf9\x97\x99\x22\xba\x15\x38\x89\xa3\xd5\x05\x56\x51\x54\xb0\xa6\xcc\xaa\x31\x9d\xad\x29\xb3\x72\x74\xc7\xeb\x0a\xad\x26\xe2\x64\x4d\xb1\xb5\x23\x3e\x5c\x2a\xf8\x30\x3c\xe3\xe2\x44\x71\xd6\xb5\xb3\x65\x75\xfe\x55\xb8\x3b\x5e\x5d\x64\x15\xea\x8e\x56\x17\x59\x89\xb9\xf3\x35\x65\x56\x23\xee\xc4\x2c\x55\x78\x5d\xd4\xe6\x95\x1c\xe5\xe1\xaa\xed\xa7\x35\x4b\xf8\x4d\x25\x8c\x0c\xa4\x75\x43\xb4\x04\x91\x99\xd2\xce\x3a\x95\x72\xea\xb7\xdb\xe7\xe7\xe7\xad\xf3\xed\x56\x2c\x4e\xda\xde\xbf\xfe\xf5\xaf\xf6\xc5\xa9\x9c\x8c\x2d\x08\xd9\xb7\xe4\xec\xc4\xaf\xc9\xd5\x71\x5d\xb7\x9d\x9c\x9d\x58\x80\x59\xfd\x08\x2e\xc6\x61\xf4\xb9\x2e\xab\x06\xa8\xbe\x5a\x70\x31\x19\xd7\x65\x79\xff\xec\xa9\xca\xf6\x63\x5b\x09\x2a\xc9\x34\x18\x70\xcc\x1a\x25\x2b\xab\xc6\xaf\x6d\x6b\x01\x71\x9d\x77\x05\xda\xf3\x08\x26\xf3\x40\xd8\x96\x6f\x15\xf7\x12\xef\x31\xb7\xd1\xb0\x10\x82\xb5\xc5\x18\x72\xf0\xd9\xb5\x5f\x82\x52\x54\x6b\x66\x29\x18\x1a\x01\xc2\xd6\x69\x90\xbc\x38\x8f\x5e\x8a\x78\xca\x85\x54\x0c\x7d\xf7\x1b\xb6\xd3\x0f\x7b\xb2\x0f\xe3\x78\x10\x8c\x7d\xbe\xf0\xf9\xc2\xbc\x20\xbf\x86\x59\xce\x9a\x28\x4f\xc3\xa4\x15\x9f\x47\x5c\x3c\x8c\x07\xb8\x01\xaa\xf6\xaa\xc4\x1c\x05\x6f\x5e\x3d\xce\x9b\xcc\x18\x8b\x1a\x0d\xd9\x1a\xa6\x99\x0f\xc6\x5c\xfd\x94\x32\xa3\x8d\xab\x6c\x0d\x04\x0f\x24\x4f\x33\x28\x99\xae\x92\xf4\xfc\x90\x88\xf2\xb5\xc4\x49\x7d\x43\x33\x9a\x5a\x6a\xe9\x12\x3c\xde\xc2\x36\x00\x6f\x21\x22\xe8\x02\xb5\x9e\xb3\x9a\x91\x89\x8b\x98\xd6\x44\xea\xdc\xdd\xc4\x0f\x28\x91\x74\x61\x1e\x67\xd2\x6f\x08\x62\x50\xeb\x60\x95\xde\x3d\x3f\xae\x51\x2a\x63\x63\xbf\xcc\xb8\x98\x1f\xf2\x31\x1f\xe0\x69\x14\x5d\x2c\x2a\xf7\x45\xa6\x0d\x18\xb1\xe2\xbe\x74\x56\xd5\x6b\x58\xfa\xa6\xc8\xea\x87\x5c\x60\xec\xd6\xb4\x2c\x13\xf3\x17\x75\x7e\x0a\xbc\xd1\x58\x53\x5d\x49\x5e\x67\x8c\xe5\xe9\x5b\xd9\x73\xa1\x1f\xe8\x66\x6d\xf3\xf3\x0a\xa9\xea\xa6\xc2\x58\xdd\xa5\xb6\x56\x9c\xeb\x0a\x46\x18\xb3\xd1\xd2\x3c\xbd\x15\x46\x37\x79\x97\xfb\x25\x15\xc0\xc2\x14\x2a\x33\x08\xbd\x3e\x02\xaf\x95\x60\xb2\xe1\x38\xdd\x68\x38\xf6\x51\xa1\xb1\x58\xc0\xa4\x0e\xd6\x0a\x08\x93\x40\x0e\x4e\x79\x52\x19\xca\xb3\xab\x6e\x36\x35\x8b\xa9\xe6\xcf\xd3\xb0\xfb\x85\xa2\x65\x14\x46\xc3\x02\xe0\x71\xa5\xda\x51\x28\x92\x6c\xa6\x3d\x38\x0d\xc7\xc3\x85\xbe\x94\x73\x19\xca\x58\x72\xc3\xca\xe7\xa8\x02\x67\xa0\xca\x0a\x1e\x61\xf1\xf3\x55\x3e\x83\xa9\x32\x2e\xd3\x25\x2c\xdb\xe1\x2f\x4f\x44\xc6\x2b\x4b\xc8\xd2\x02\x82\xb7\xa7\x16\xaf\x3a\xc3\x51\xc4\x2f\x24\x86\x71\x4f\xdf\xa7\x81\x40\x68\xe9\xeb\xd1\x30\x90\xc1\xd1\x11\x93\x8b\x83\xa2\x97\xec\x9b\x41\xa0\xfe\x01\x04\xd3\x29\x8f\x86\x88\x96\x3a\x6a\x37\x01\xb7\xc2\x28\xe1\x42\xde\xe7\xa3\x58\x60\xfc\xfe\xbc\x11\x74\x01\xe6\xb7\xca\x8d\x84\x9b\x80\xa2\x0b\x28\xd1\xd7\x95\x6d\x59\x5a\x1c\xa0\x4a\x9f\xd7\x03\x91\x11\xb4\x0e\x89\xb7\x19\x51\x73\x93\x8c\x5f\x98\xde\x8a\xb4\xa4\x11\x75\x61\x56\x18\x2d\x8f\x59\x9c\x19\x2d\x27\xbb\xe3\x1d\xdb\x4e\x28\x09\x98\xec\x25\x7d\xda\x25\x41\x31\x6a\x71\x2f\xe9\x43\xd4\x4b\xfa\x2c\xa0\xbe\x50\xbf\x8a\xba\x14\x0d\xa9\x2f\x5a\x47\xb5\x93\xec\xce\x4a\x10\x1a\x0d\x12\xea\x22\x46\x84\x87\xb2\x1b\x65\x6a\x81\x01\x33\x18\xc3\x80\xa5\xe1\xeb\x60\x54\x34\x70\x98\x37\x10\x4e\x0d\xdd\xd7\x48\x57\x99\x30\x77\x27\xd9\x1d\xe9\x5a\x67\x79\xad\xa7\xaa\xd6\x31\x0b\xb4\xaa\x73\x06\xb3\xbc\x23\x90\x60\x3c\x09\x0b\x06\x6a\xf3\x25\x63\xda\xc5\x16\xce\xfc\x41\x2b\xe1\x92\x8c\x61\x46\x4d\xc8\x43\x84\x9c\x43\xd2\xbd\x85\x04\x62\x84\x41\x66\xa9\x47\xce\x98\xd2\x2e\x41\xec\x98\x75\x69\xa4\x0d\x5a\x43\x3e\xe6\x92\xab\x4c\xab\x30\x57\xdf\x0d\x0d\x5b\xf5\x85\x32\xc6\x66\x19\x36\x67\xe6\x2d\xef\x25\x5b\xc1\xac\x62\x23\xee\x45\x39\xc6\xc3\xae\xec\x3a\x9e\xcf\xf7\x64\x57\xfd\x47\x05\xca\xf3\xe0\xb9\x11\xf4\xe2\x4f\x53\x4a\x3e\xab\x27\x65\x9c\x11\x82\x4f\xe2\x33\xbe\x2f\xa5\x08\x8f\x67\x3a\xba\x80\x11\x31\x63\xf3\x82\xb5\x3c\x44\x0e\xe8\x53\xfd\x59\x46\x0a\x2a\xe1\xd2\x68\x00\x94\x8e\x41\x1e\x6c\x5c\x72\xb9\x05\x65\x48\xaf\x56\x41\xd2\x98\x95\xa9\x4a\x43\xc1\x35\x54\x1a\x37\xb2\xbb\x37\x56\x60\xcb\xaf\xeb\x81\x30\xeb\x7d\xfc\xc7\xd7\x5b\x83\xec\xe5\x76\xd4\xe0\x43\xa4\xdb\xe8\xc3\xda\x18\xd1\xe5\x9d\x48\x31\x34\x65\x9e\x31\xbd\x29\xf7\x6d\xc8\xcf\x2f\x2f\x79\xce\xc8\x36\x1a\x1c\x5f\x8b\xaf\xc6\xd2\xf8\x7c\x0d\x05\x25\x72\x3e\xe6\x69\xd7\x72\xb6\xbc\x44\x7f\x4f\x2b\xae\x6f\xf5\x10\x12\x2e\x8b\xe2\xda\x31\xce\x08\x11\xb2\x1a\x84\x96\x9f\xd6\xe3\x3f\xea\xae\x6b\xaa\xbf\xb2\x15\x51\xb9\x15\x5f\x49\x25\xf0\x3d\x16\x39\x29\x8a\xbc\x0d\xc6\x33\x4e\x24\xbd\xbc\x7c\x98\x06\x7e\x79\x10\x4f\xa6\x33\xc9\x87\x87\x2a\xab\x82\x38\x1b\x8f\x69\x5d\x11\x23\x10\x49\x3d\xb2\xf5\x92\x88\x1b\x60\x8f\xf7\x8d\x56\xdd\x5f\x37\xb7\x7a\xbc\xcf\xa4\x91\xf9\xd1\xef\x23\xe3\x72\x23\xfc\xac\x06\x61\xd4\xf0\xb6\x44\x8c\x52\x84\x13\x42\x5b\xc9\x74\x1c\x4a\xd2\xfe\xf7\xe5\x6f\x89\xdd\x36\x23\x9f\x94\x32\x0f\xc6\x41\x92\x3c\x0d\x13\x79\x79\xa9\x56\xc7\x77\xa5\x20\x29\xef\xb4\xbd\x09\x72\x2c\xf1\x90\xe7\x4c\x12\xb2\x55\xec\xad\x36\xeb\x2f\xa6\xaf\x85\xc0\x2c\x7a\x79\x69\x99\xa1\x5f\x6f\xe9\xfe\x17\x4b\xf1\x17\x7d\xef\x93\x3e\x3d\x2e\xee\xea\x8e\x76\xc3\x1d\x2a\x5a\xc1\x70\x48\xd0\x45\xd1\x08\x98\x78\x3d\x08\x9a\xda\xaa\x40\x3e\xd4\x8f\xf1\x2d\x8d\xf8\xd2\xec\x79\x52\x9f\xf5\xe7\x9a\xac\xbf\xae\x1a\x5c\xb2\x62\x5c\xbb\xb7\xfc\x9f\x69\x0d\xa0\x5f\xb2\xa9\x29\xf9\x85\x7c\x10\x47\x78\xbf\x95\x65\x04\xc5\x79\xbf\x66\x41\x30\xcb\x70\x03\xe8\xc7\x75\x62\x38\x5f\x41\x78\x4b\x10\xb3\x70\x16\x96\xe5\x9b\x74\xcd\x79\x56\x7d\x18\x45\x5c\x3c\x7a\xfd\xec\x69\xa9\xc1\x92\xaf\x69\x71\x51\xc4\x6c\xaf\x58\x51\x64\x83\x06\x17\x00\x57\x34\x37\xca\x9b\xab\xb8\xef\xc3\xf0\x78\x1c\x46\x27\x8d\x06\xa6\x68\xe6\xf6\x79\x3c\xc4\x2a\x32\xde\x1e\x2b\x32\x43\x13\xe6\x10\xa6\x82\x9f\x85\xf1\x2c\x59\x09\xa5\xc4\xaa\x63\x7b\xab\x39\x50\xc0\xc2\x6a\x4c\xe3\x4f\x4e\x4a\xb2\xa5\x61\xb5\x99\x5f\x14\xc7\x2a\x90\x6e\x70\xb5\xe1\x68\x9a\xaf\x6d\x76\x52\x29\x3a\x18\xc7\x11\x57\x25\xc9\x16\x86\x7b\xa9\xc2\xcb\xd8\xfe\x6e\xbd\xf0\x62\x60\x8f\x96\xee\x43\x5c\x5d\x8d\xfb\x07\x56\x33\xe6\x57\x2f\x76\xd5\xb0\xd2\x19\x01\xa1\x62\x8c\x17\x8a\xb1\x56\x55\x31\x66\xa8\xc3\x84\xed\xd1\xd2\x8d\xff\x82\x52\xf8\xa6\xa4\x41\x9f\x83\x5a\x00\x15\x71\x95\x6c\xc5\xd7\xd2\x6e\x2a\x5d\xc6\x11\x3a\x1e\x1b\x6b\x19\x68\xeb\x41\xc7\x83\xb8\x58\xca\xa2\xdd\x58\x2d\x67\x54\xa0\xb3\x36\x70\xbc\x8e\xbe\xd1\x10\xf8\xbb\xc5\x98\x4e\xb8\xbc\xd4\xd6\x0d\x98\xa0\x1e\xba\xb2\x67\xdb\x61\x9f\x09\xdf\xe0\x7d\x0e\xce\x78\x24\xd5\x0a\xcf\x23\x2e\x88\x06\x01\xa2\x35\x4e\x53\x40\xb4\xe2\xa9\x6a\x6a\x42\x77\x6c\x3b\xec\x66\x6d\x60\xa1\x6f\xec\x3c\xd8\xf4\x92\x1d\x1c\xbf\x82\x3d\x50\x2b\x73\x56\xb0\xa2\xa8\xac\xd1\x5b\x70\x2d\xb9\xe8\x99\x52\x16\xc5\xe9\x62\x41\x24\xfa\x6b\x87\x34\x17\x10\xd1\xa7\x35\x34\x1d\x59\x6d\x3b\xa0\xe1\x88\x90\x88\x85\xbd\xa0\x9f\x5e\xe0\x9f\x61\xaa\xd1\x88\x10\x41\x2c\xc3\x14\x35\x65\xdb\x3a\x3c\x45\x1a\x4f\x51\x81\xa7\x28\xc7\x93\x6e\x5f\x30\x1c\x5e\x51\x84\xc5\x45\x21\x26\xb4\xef\x38\x49\x8d\xdf\x98\x4c\xd7\xad\x25\x30\xba\xc5\x10\x83\x50\x5b\x5c\x4a\x71\x29\x68\x45\x76\xba\x03\xa9\x8d\xa8\x84\xac\x32\x3f\x86\xb4\x2a\xbc\x26\xaf\x1b\x66\x3e\xfd\x7e\x3e\x0c\xac\x17\x99\x4c\xcc\x90\x97\xe3\x3a\x3c\xc4\xfb\x4d\x58\xd4\x7a\x30\x4b\x64\x3c\xc1\x56\xdd\xa8\x51\xdb\x85\xdd\x10\x25\xa9\x10\xef\x33\xf0\x89\x2a\x32\xac\xa8\x47\x55\x59\x62\xe1\x8f\x45\x41\x74\x49\xd8\x0a\xa3\x50\xea\x74\x09\xa2\x75\x3c\x3b\x3e\x1e\xf3\x04\x44\x6b\x10\x44\x03\x3e\x0e\x8e\xc7\xaa\xf6\xd6\x90\xcb\x20\x1c\x33\x91\x3e\x50\xbf\x5c\x70\xcb\x83\x2d\x8f\x52\xe0\xad\x61\x98\x4c\x03\x39\x38\xd5\x5f\xcc\xd0\xf6\xa7\x2b\x6e\x6c\x2e\x4e\x55\xd2\x25\xb9\x22\x30\x4d\xaf\x51\xae\x7e\x27\xa2\x8b\xc5\x3b\x53\x6b\x14\x0c\x87\x15\xd3\xdd\x9c\x7b\x32\xae\xa9\xdc\xc5\x85\xc7\xf8\xa4\x83\x2e\x50\x28\x38\xaf\xb2\x98\x94\xf2\x59\x26\x33\x96\xc6\x64\xb8\x69\x51\xb4\x09\x44\x82\xae\x71\xf7\xad\x6f\xc0\x0d\x99\x2e\x7e\xc6\x57\xb5\xa0\x0e\x38\x91\x18\x11\xec\x7b\xdb\x31\x88\x23\x19\x84\x51\xb2\x5a\xab\x54\x6d\xca\x1e\x73\x53\x75\xd2\x84\x33\xc1\x4f\x14\x65\x07\x32\x16\xaf\x66\x91\x0c\x27\xbc\x35\x09\xc4\x67\x72\xc6\xa9\xa1\x09\xe5\x75\x76\x43\xf9\xb2\xbe\x0c\xe2\x5c\x94\x36\x87\x44\xaf\xc5\x3b\x3b\x34\x39\x0f\xe5\xe0\x94\xe8\xdd\x3d\xb5\xba\xa3\xdf\x06\x41\xc2\x6f\xba\x7e\xba\xa9\x1d\x9d\x88\x78\x36\x4d\xd2\x4b\x85\xf3\x80\x1f\x98\xc9\xf3\xc3\x11\xd9\x22\x72\x57\x50\xfa\x4d\x17\x67\xde\xf6\x8d\x63\xc1\x83\xcf\x8b\x88\xf1\x9e\xec\x43\xc8\x5c\x88\x59\x54\x2a\xb7\xad\xcb\x85\xbb\xb1\x51\xce\x4d\xcb\xe1\xa7\x80\x45\xbd\xb0\x5f\x7c\xfd\x21\xfd\x98\x1d\x2f\xa6\xa9\x10\x68\x80\x3f\xf8\xb6\x1d\x42\x9a\x9a\x36\x20\x6d\xa2\xeb\xdb\xb6\xcc\x3e\x79\xa5\x4f\xdb\xbe\xfa\xb5\x78\x34\xb4\xfc\x1c\x70\x22\xe3\x29\xa1\x8b\x05\x85\x89\xde\x97\xb5\xa6\x7d\xce\x59\x4f\xf1\x27\x46\x88\xbe\x63\x6e\x68\x6a\x53\x34\xe5\x02\x83\xde\xf6\x13\x66\xc4\x14\x3d\x31\x59\x1d\x7e\xae\xca\xf7\x7a\xf9\x32\x52\x39\xeb\xe9\xf7\x61\xce\xe9\xe2\x98\x1b\xb3\xeb\xc4\x7c\xa9\x9e\xfa\x65\x44\x76\x13\xd5\xfc\xa9\x91\xa1\xb6\xe3\x2c\x49\xbc\xdf\xf4\x32\x2a\x80\x47\xb3\x89\xb6\x9e\xf3\xb7\x5c\x45\xb8\xa3\xf0\x64\x96\xbf\x9f\x8b\x50\xa6\xcf\x0b\xea\xab\x91\x64\x02\xf8\x82\x94\xf4\xc2\xc7\x1c\x12\x54\x8c\x96\xc8\xbd\x58\x40\x73\xf3\x51\x8e\xa7\x6c\x18\x22\x2f\x57\x50\xc9\x32\x7d\x89\x42\xb5\x68\xaa\xad\x84\x5a\xa0\xdd\x9d\x70\x57\xa8\xbd\x3a\xdf\x0e\xb5\xa1\x9c\xec\x85\x7d\x98\xb1\xa4\x50\x9a\x2a\xaa\x31\x4a\xcf\x28\x8c\x98\xbb\x33\x42\xfd\xe7\x88\x92\x98\x25\xbd\x11\x6a\x22\x03\x96\x6e\xc0\x31\xc4\x85\x12\x72\x04\x09\x9e\x08\x5a\x59\x4a\x16\x17\xc5\xd4\xb8\x16\xfb\x34\x8c\x7b\xa3\x3e\x0b\x8a\x68\x40\x7a\x54\xa3\x32\x0d\xd0\x45\x8a\xa5\xaa\xb6\x99\xd7\x9d\x48\xf1\xba\xa3\xa6\x8d\x05\x83\xd2\x29\x8d\xec\xf6\xfa\xfe\x50\x89\xfd\x0b\xc2\xa9\x3f\x55\x0b\xdf\x26\xd8\xef\xa9\x59\xdb\xeb\x43\xcc\xdc\x9d\x18\x11\x1f\x53\x53\x51\x2d\x7b\x71\x05\xed\xee\xce\x18\x51\x3c\xa6\x24\x60\x49\x6f\xac\xa3\xed\x64\xb1\x74\x10\xcf\x01\x14\x38\x84\x31\xc6\xd5\x49\x37\xec\x80\x2e\x23\x30\xcc\x91\xb6\xfe\xcc\x41\xe7\x21\xd9\xa9\x54\x6d\xc8\xb3\x1a\xa3\x81\x82\xf7\xca\x8f\x6b\x50\x36\x25\xb5\x03\xc2\xfd\x33\x45\xb9\xe5\x26\x09\x1e\x5d\xd1\xaa\xfd\xf1\x38\x6f\xd8\xd1\x66\x0d\x3b\xf9\xde\x86\xe9\x43\xa9\xcd\xa6\xe1\xe4\x0f\x9d\x86\x7a\x12\x26\x2c\x28\xc2\xad\xe0\x24\xec\xf5\x53\xba\x48\x34\x5d\xc4\x2c\xd0\x74\x51\x37\xef\xc6\x10\xd0\x46\x63\x96\xf9\x41\x5c\x39\x9f\x54\xb1\xca\xf1\xd1\x3a\x0f\x0e\xe3\xc8\x13\x27\xcc\x7e\x66\x8b\x2d\xbb\x17\xfe\x0b\x88\x58\x09\x7e\xce\xc7\x6b\x94\xdc\x58\x89\xc8\xc3\x12\x22\x8b\xfb\x89\x20\x30\x30\x17\x53\x48\xca\xaf\xb3\xf2\xab\xc6\x52\x8c\x58\xfa\xa6\x8f\xc1\xa3\xde\xb8\x0f\x23\x16\xaa\x9f\x53\x36\xca\xc0\x4e\xd9\x30\x9b\x4d\x03\x18\x34\x1a\x03\x13\x81\x11\xa5\x30\x61\xd3\x2c\xef\x19\x4e\x43\xa3\xa6\x09\x85\x39\x0e\x41\x39\xed\x98\xcd\xca\x69\xa7\xf4\x86\x20\x03\x18\xc1\x19\xcc\xe1\x18\xa6\x20\x8b\x2e\x9e\xc0\x11\x9c\x33\x17\x0e\x98\xbb\x73\xbe\x3b\xd9\xb1\xed\x73\x25\x81\x9c\xb0\xb3\xde\x79\x5f\x73\x15\xe7\x7b\xec\xa0\xd1\x20\x07\xec\xdc\xf6\xe8\xce\x16\x39\x62\xf3\xde\x81\x1a\x76\xdb\x3e\xd8\x9d\xec\xd0\x9d\x93\xf4\x40\xf2\x48\x9b\xe2\x67\x36\xbe\xe9\x85\xd1\xc7\x9c\x04\xaa\x2b\xad\x23\x1e\x49\x2e\x58\xa2\x56\x0d\x7e\x11\x4a\x36\x83\x60\x01\x98\x58\xe7\x5d\xa6\x8b\xea\x61\xc3\x4c\x97\x97\xe6\x18\xa2\x78\x7c\x4e\x97\xe8\x48\x41\xbe\x12\xdc\x45\x28\x37\x83\xa6\x38\xc1\x15\x11\xe4\x30\x2b\x36\x8c\xd0\x94\xbe\x94\xf4\x8b\xa9\x17\xa1\xe1\xe1\x15\xd5\xef\x09\x5c\x89\x35\x51\xaa\xaa\x21\xdc\xb6\xac\x2c\x30\x9a\x6c\x34\x48\xc8\x94\x3c\x50\xdc\xfd\x1d\x67\x0a\x41\xea\xe3\x5d\xdd\x51\xa3\x11\x76\xa3\xd6\x84\x8b\x13\x4e\x42\xda\x42\x13\x7a\x82\x1e\xc3\x98\x56\x5a\x37\x90\xff\x2a\xc5\x87\x3e\xe6\x94\x16\x46\xfc\xa9\x01\x7f\x98\x1a\xf0\x23\x00\x6b\xcd\x7a\xc2\xf3\xe7\xc2\x8d\x06\xc2\x3c\x26\x53\x16\x59\x18\x3d\x5f\x20\xa4\xa5\xc9\x13\xa9\xc9\xe3\xee\x24\x38\x3d\x92\x7c\xd9\x99\xc1\x18\xcf\xe2\x60\xc0\x84\xfa\x19\xb1\x71\x71\x2c\x19\x64\x47\x79\xd9\x81\x24\x9c\x32\x77\xe7\x14\x4f\xf1\x4e\x29\x99\xb1\x71\xef\xb4\x7f\x79\x39\xe8\x9d\xe2\x2e\x35\xec\x9d\xf6\xd9\x2c\x3f\x28\x8d\xb0\x22\x84\xa1\x6a\xa8\xac\x44\xc1\x8a\x9d\x3d\x8c\xeb\x7c\x1e\x55\xde\x05\x20\xb2\xcd\xaf\x59\x2f\x96\x18\x6c\xc7\x33\x38\xec\x1d\xdb\x96\xbb\x62\x27\xef\x73\x04\xa1\x66\xa8\x8b\x75\xc6\xf1\x20\x60\x61\x2f\xee\xef\x38\x4e\x8c\xf7\x92\xa3\x2e\x20\xd6\x0c\x4e\xa3\x71\xe7\xdf\x51\x6b\x10\x4f\x54\x63\xb3\x83\x99\x97\x71\x12\x4a\x6d\xcc\xdd\x68\x04\x2b\xf5\x77\x11\x04\x38\x10\x45\x88\x24\xec\x4a\x12\x8b\x32\xab\x57\x68\x3e\x49\x89\x09\x6d\x34\x44\x97\x13\x59\xac\x4f\xa2\x60\x9a\xfc\x2d\xe9\x6c\x89\x05\xbf\xbc\x24\x9c\xbd\x36\x0f\x2c\x4b\xe8\x88\x0a\x0a\x09\xcb\x14\xa1\xd9\x92\x08\xd9\x92\xd2\x01\xba\x58\xe2\x4b\x14\x32\xca\xec\xe0\x80\xb9\x3b\x03\xe4\x55\x06\x9a\x57\x19\x20\xb6\xc6\xbd\x01\x32\x72\x63\xed\x5a\x27\xe9\xa2\x3c\xf0\x61\x65\xe0\xb3\x29\xb4\x00\xb5\x1c\x2f\x3b\x6e\xe6\x3b\x51\xcf\xed\x2f\xf9\x28\xf4\xdc\xbe\x5e\x01\x78\xbd\x69\x34\x68\x6c\x2b\xf1\x33\xa9\x21\xab\xca\x6e\x46\x75\xce\x8d\x28\xcc\x14\xe1\x76\x24\x6e\xe6\xb2\xa0\xb0\x3a\x81\x6d\x27\xc4\xb9\x97\x46\x64\xd0\x62\xd9\x8d\x70\x44\x82\x6c\x6f\x0d\x16\xa6\xf6\x16\x92\xf0\x2b\x5f\x42\x47\x5a\x73\x79\xc3\xfe\xab\x38\x7b\x7f\xfe\x1b\x3b\x67\x7d\xfe\xc7\xd5\xfb\x1f\x57\xef\x94\xc1\x5a\xed\xea\xad\x97\x91\xdc\x43\x53\xa4\xae\xcc\xd8\xa6\xc2\x95\x99\x6b\x35\x2e\xd8\xb6\x2c\xbc\x2c\x45\xd9\x4d\x59\x98\x6e\xca\x72\x01\x6a\x80\xe6\xcb\x24\xb2\xa5\xcf\x3b\xe2\x21\x57\xc8\xe0\xc1\xe0\xb4\xbc\xab\xac\x62\x25\x4c\x4f\x5c\xf4\xb5\xb5\x6d\x41\x8d\xc8\x8f\x4c\xf6\x44\x3f\x0d\xff\x18\x57\x55\xe5\x24\x64\x71\x2f\x30\x24\x90\x10\xc2\x62\x83\x0a\x8c\xcb\x09\xf4\xf2\x1b\x48\x29\xfc\x9a\x25\x4b\x5b\xb5\xaa\x25\xb0\x22\x6d\xec\x76\x4a\xdc\x9e\xee\x5e\xae\x96\x4b\xcd\x5f\xa3\xd2\x01\xf2\xf3\x43\x85\x6d\xb4\xbb\x10\x99\x71\x46\x39\x07\x11\x05\x3e\x91\x5b\x0c\x06\xa7\x24\xb3\x03\xea\x66\x50\x5f\xfa\xcf\xfc\x1a\xbe\xb1\xc8\xf0\xd8\x7f\xe5\x67\xcf\x0f\xfc\x4f\x94\x08\x90\x28\xd0\xca\xf9\x98\xaf\x8a\x1e\x5c\xed\xe0\x9e\xd7\xad\x69\xc3\xf3\xfa\x9a\x7f\xf2\x9f\x52\x1d\xb2\x38\x65\x4a\x2d\xcb\x17\x94\xfa\x5f\x89\x81\x1d\x25\xdb\xc2\x34\x55\x4f\xd5\xdb\x03\x6e\xd6\x88\x37\xf5\x8d\x78\xe4\xdf\xc7\x46\xd0\xf4\x4c\x40\xd7\xda\xe3\xfd\x05\xa0\x26\x97\x0f\x6b\x47\xf8\xad\xe6\xb0\x57\x0d\x72\xb1\x61\x7e\x31\x3b\x43\xb3\x43\x2d\x51\xb0\x70\x6a\xf7\x54\x22\xd2\x96\xe2\xc4\xb4\x6a\x98\x08\xd4\x6c\xa6\x33\x21\x5b\x37\xb6\xdc\x9a\x61\xae\xed\xd3\xaf\xbe\xec\x7e\xf0\x9f\xe4\x43\x28\xf9\x85\xac\x8d\x1b\x5f\xf5\xe9\x2b\x00\x67\x5a\x89\x5f\xfc\x7a\xbd\xc2\x47\xff\x3d\x55\x7b\x85\x89\x34\xf3\x7c\x7c\x01\xe8\x05\xf0\x7d\x95\x72\xbe\xa2\x56\xc1\x7d\xc9\x97\xeb\xcd\x8f\xb9\x17\x20\x82\x30\xe1\xab\x0c\x8f\x75\x25\x8a\xa0\xc6\xf1\x79\xad\x94\x58\x64\x0b\x55\x36\x2d\x4c\xd5\x9c\x19\xac\xd0\xb5\xcc\x0a\x6b\xf6\x92\xf2\xa9\xce\x33\x03\xcf\xb9\xcc\x73\xf5\x55\xc7\x27\x34\x37\x8a\xad\xa5\xc4\x35\x4d\x81\x28\x3f\xf7\x8f\x79\x3d\xf9\x4b\x7f\x40\xe4\xb5\xda\x5c\x92\x02\x44\x7d\xa3\x21\xaa\x4f\xd7\x7b\x4f\x1a\xa3\xa1\x72\x1e\x53\x33\x06\x81\x1a\x03\x3c\x32\xbf\x4a\xbb\xc7\xbb\x33\xee\x27\x5c\xeb\x7d\x66\x93\xcd\xe9\x2e\x5b\x59\x0c\x7d\x2e\xf0\x32\x75\xe5\xa6\x99\x10\xaf\x90\xdd\x31\x14\xdb\x98\xa7\x42\x77\x90\x6f\x2c\x37\xf4\x41\xc5\xf2\xfa\xa0\x17\x88\x84\xc9\xee\x88\xfb\x03\x0e\x11\x73\x77\xa2\xdd\x00\x8f\xb7\x8b\xee\x27\x24\xee\x45\x7d\xac\xa7\xbc\xf1\xa0\xdd\x2d\x2b\xb7\x51\x1f\xa2\x97\x05\x60\x17\x06\xb9\xa8\xb3\x33\xde\x1d\xa0\x02\x49\x65\x88\xd0\x92\x38\xe9\x8d\xfb\x79\xb5\xe1\x88\xe0\xf6\x17\x15\xc7\xc4\xb3\xf4\x98\x38\xcc\x8e\x89\x67\xa5\x63\xe2\x99\xde\xed\x17\x90\x9d\x3a\xae\xb1\xd6\x5e\xb3\x58\x4d\xb9\x7f\xca\xd3\x25\x78\xb1\x80\x0a\x2f\x04\x67\x5c\x33\x99\x47\x9c\x9d\x70\x38\xe7\x75\xee\x0c\x4b\x8c\x7b\x77\xf9\xf0\xa4\x6a\xe6\xdd\xef\xc3\xea\x93\x15\xea\xe7\x00\x78\x7a\xcc\x02\x07\x75\x55\xdf\x3c\xe7\x44\xcd\x34\xcd\x2e\xac\x82\xa7\xc8\xfd\x90\x33\xd7\xb0\xf1\xae\x1c\xf4\x5c\x18\xc6\x1c\x17\xb9\x45\xcd\x11\xb3\xfe\x7f\x96\x4d\x6c\xfb\x90\xd3\x5c\xcc\x20\xdb\xf7\xe8\xe2\xc2\x3c\xe7\x79\xc1\x57\x59\xe5\x5f\x70\x38\xe1\x72\x2d\xe7\xb4\xb3\x45\xf4\x81\x10\xd5\xbb\x10\xba\x3a\x15\x42\x7f\xb6\x0b\xe5\x1e\xc1\x3d\xd9\x5f\x40\xc2\xab\x6b\x51\xf1\x19\xa1\xf6\x99\xac\x3d\x71\x2d\x9d\x73\x62\xb5\x8d\x46\x6a\x51\x91\x17\x5d\x40\xd6\xd5\x55\x8b\xc3\x51\x7a\x1c\xba\x5f\x1e\x92\xbc\x6b\x3b\x68\xb1\x12\xcf\xc4\x40\x1f\xba\xef\x50\xce\x64\xde\x83\x05\xbc\xe6\x35\x32\x20\xdb\xc7\x1b\x3b\xab\xa1\x5e\x5a\x83\x99\x50\xc8\x78\x1d\x88\x13\x2e\x69\xb1\xee\x4a\x6d\xcf\x7a\xf8\xf6\xe7\x74\x94\x2f\x2f\xa5\x9a\x82\x22\x3d\xee\x3f\x7c\xfb\x33\xfa\x1c\x67\x1c\x5f\x35\xdd\x50\xe8\xb5\x2e\x54\x3d\xe3\x90\x47\xf2\x3d\x44\xad\x79\xfe\xf6\x01\x7a\x24\x62\x51\x6b\x12\x48\x11\x5e\xbc\x16\x41\x94\x8c\x62\x31\xd1\xb1\x7e\x0f\x07\x82\xf3\xe8\xc1\xeb\x67\xb8\x03\xa6\x77\x31\x51\xda\xba\x50\x20\xfa\x8b\x70\xa4\xb3\xdd\x8f\x67\xd1\x30\x8c\x4e\x1e\x20\xc4\x57\x7c\x90\x5d\xd8\xc5\x56\x7c\xce\x1b\xd6\xcb\x1b\xe5\x84\xad\x31\x1f\x49\x47\xa6\x09\x4f\xf9\x48\x42\xde\x48\x27\x6c\xc9\x78\x9a\x7f\x7c\x1d\x4f\xf3\xb8\x0c\x3d\x45\x4b\x27\xfc\x3d\xe8\xdf\x0f\xfd\x05\x7c\xae\x22\xbf\x30\x5b\x42\x14\xa3\x64\xb9\xd9\x58\x28\x52\x95\xf1\x6c\x70\xca\x93\xcb\xcb\x1e\xef\x53\x28\x5d\x96\x55\x17\x95\xf7\x75\x6a\x12\xae\xa6\xe4\xb3\x6b\x2e\x26\xf5\x6b\x89\xf6\xf7\xd8\x6c\x35\xc9\x18\x1c\x3c\x74\x53\x85\xd4\xca\x72\x23\x75\xe5\xd4\xe4\x71\xb5\xaf\x35\xe6\x8b\xeb\x1d\xce\x4d\xef\x6d\x64\xe5\x6b\x73\xbd\x30\xc1\x69\xa7\xa8\x7a\x70\x13\x23\x9f\xe1\x89\x59\xe7\xa1\x5c\x97\x33\xa9\xf7\xa0\x37\xb2\x4e\x63\x8c\x67\x51\x9b\xef\x35\x5f\xce\x58\x0f\xf1\x73\xc9\x49\x1b\xc7\xa5\xde\xdf\x76\x39\xdf\xfe\xb8\x1e\x45\xcf\x96\xb3\xaa\x7d\xab\xd6\xf3\x77\x39\xeb\x8a\xd1\x19\xd4\x64\x5c\xd5\x80\x52\x54\x02\x25\x82\xd5\xe6\xfa\x6a\xe4\x3a\x0f\xa3\xe1\x0a\xe7\xe4\x87\xd7\xf4\x02\x46\x75\xfb\xcb\xc7\x10\xb2\x4e\x33\x82\x98\x85\x8e\xc7\x9d\x7b\xa6\x27\x6b\xb6\x43\x5d\xb8\xe9\x3e\x32\xcf\x1e\x2e\xbc\x2c\xc5\x33\x5d\xca\x4a\x56\xb0\x49\x79\xf7\x0b\x16\x81\xb1\x83\x25\xab\x76\xb3\x00\xd4\x7e\xf2\x3a\xae\x6c\x3d\x1a\xbe\xcd\xac\x67\x96\x4d\x2a\xad\xba\xf0\x98\xcd\xa9\x6d\x41\xfe\x29\x6f\xe7\xdc\x63\xb6\xd4\xfc\x65\xc2\x5f\x06\xb2\xe4\xae\xa8\x0f\x4e\x72\x20\xb9\x1d\x50\xde\xb9\x0b\x17\x72\x30\x19\x60\xc8\x5b\xf2\xd1\x52\x32\x46\x18\xad\x69\xec\xd3\xa2\xb1\xcb\x6d\x4c\x9b\xf6\x65\x16\x0c\x45\x20\xc3\xc1\x83\x99\x58\xea\xb8\xbe\xd4\x22\x87\xf7\xab\x65\xdf\xb4\x39\x42\xb9\x69\x4b\x13\x9a\x82\x2f\x96\xe0\x47\x74\x01\xc7\xfc\x6b\xc8\xc5\x2a\xe0\xda\xfd\x2c\xaf\xe0\xc1\x72\x05\x37\x6d\x91\xfe\x46\xd5\x0a\xc3\xa5\x0a\x63\x25\x4f\x89\xc1\x72\x45\x58\x0d\x67\x36\x07\xc9\x6c\x09\x82\xd9\x02\x42\x66\x2b\x9e\xda\x8e\x6f\x68\x9d\x72\x06\x18\x92\x7c\xf4\x60\xc6\x84\xc3\x61\xcc\x42\x47\xc2\x80\x05\x0e\x87\x11\x4b\x1c\x09\x43\x36\x68\x0e\xec\x51\x73\xa4\x76\xe3\x78\xd7\x5d\x3e\x98\x8a\xf8\x49\x20\xc3\x33\x7e\x53\x04\xc3\x70\x96\xf8\x37\x2d\x3b\x46\x51\x5e\xaf\xcf\x79\x6d\xb4\x8e\xb4\x3c\xb6\x34\x58\x92\xde\xc8\x2e\xed\x18\xee\xa9\x99\xa2\x38\xa9\xfc\x32\xcc\x51\x73\xe6\x8c\x9b\x03\x8a\x5f\x1a\x8d\x58\x6f\xbf\xa7\x4c\x38\x01\x4c\x59\xe8\x24\x30\x61\xb3\xe6\xcc\x1e\x37\xc7\x70\xc6\x4e\x9b\xa7\xf6\xb4\x39\x85\xb9\x9e\x84\xc9\x17\x21\xf5\x21\x6c\xf1\x3a\xa4\x70\xc2\xe2\x26\x26\xc8\x20\x22\x24\x72\x74\x65\x83\x38\x21\x64\x62\x0f\x9d\x33\xda\x26\x9d\xe6\xbc\x79\x4c\x29\x6d\x77\x28\x1c\xb1\x93\xf6\x31\x9c\xb3\x93\xf6\xfc\x46\xde\xae\x23\xc7\xcb\xda\x44\x4a\x64\xc9\xed\xa3\xe6\x20\xeb\xa3\x7d\xd4\x1c\x51\x5a\x90\xf6\xbe\x65\xc7\xf8\x49\xfd\x77\xc1\xc5\xe1\x27\xa3\xe6\xe9\xde\xa0\x39\xa5\x15\x32\xe0\xf6\x79\x73\xb6\x84\x2d\xfb\xbc\x39\xd6\x37\xd3\xdc\xac\x9f\x0e\x35\x08\x46\xda\xa9\x52\x4e\x7a\xcf\x6c\x41\x3b\x33\xb6\xb5\x35\x43\x92\x19\x33\x1d\x00\x52\x63\x49\x21\x26\xa0\x30\x60\x42\xbf\x27\x61\xa4\xde\x47\x8c\xdb\x63\x18\x32\x69\x0f\xe0\x94\x79\xff\x9e\xc1\x94\xcd\xba\x81\x93\xf8\x89\x13\x20\x2f\xb7\x21\xf5\x88\xcc\x33\x25\x27\x9d\xae\x49\x3a\x23\xec\xce\xd0\x2f\x68\x22\xcb\xe6\x8c\xf4\x10\x5c\x5e\x56\x3e\xcd\x3d\x67\xa8\x3f\xd1\xca\xf0\xa4\xc0\x28\x88\x46\x83\x4c\xd1\x4e\x72\xca\xa6\xb7\x43\x3b\xa4\x30\xdd\x8b\xbb\xe6\x48\xe9\xe9\x29\x70\xa4\x3c\xb0\xec\x53\x8d\x57\xee\x8c\x33\x0c\x3b\x6a\xa0\x57\xe7\xcc\x87\x64\x54\x1d\x92\x21\xf5\xa7\x4b\xd4\x53\x01\x84\xa4\x31\xdd\x63\x91\x2e\x5c\x85\xc9\x6d\x51\x0c\x4f\x42\x97\xe9\xc4\x18\xad\x84\xa6\x46\x9c\x03\xb9\x6e\x15\xfc\x9e\x2d\xc0\xb6\x4e\xd3\xa5\xec\x2c\x5d\xca\x4e\x2d\xdb\x11\xb6\xf5\xd1\xda\x5c\x14\x99\xb1\x04\xc6\x1b\x3b\xfb\xc2\x20\xbf\x2b\x17\x46\xe9\xa3\x0c\xa2\x0e\x0c\x59\x86\x10\x38\xcd\x23\x3f\xc2\x34\x3f\xff\x86\x09\xcb\x50\x02\x67\xc5\x92\x90\xad\x16\x2f\x1f\xc3\x31\x9b\xb7\x3b\x70\xc2\x3a\xcd\xb9\xe9\x80\x6e\xb8\x07\xec\x79\x5d\xd7\xe7\xbb\x8e\xd7\x9d\xfb\xc5\xba\x61\xba\x38\x9d\x97\xb2\x33\xaf\x7b\xec\xf3\x5d\xe6\x78\x5d\xe7\x38\x2d\x91\xe8\xf0\x99\x79\x89\x83\x92\xff\x01\xea\xe3\x5e\xe1\xec\x28\xdd\x86\x66\x3a\x07\xce\xe4\x72\x96\x17\xa5\x2c\x89\x0c\x84\xdc\x8f\x4e\xc6\xbc\xe4\x82\x6c\xe4\xe0\xd1\xb0\xf2\x7d\xbf\x1c\x5f\x41\x49\x1d\xd5\x2c\xaf\xab\x97\xc1\xea\xf5\x38\xdb\x4d\xa2\x74\x37\x09\x71\x37\x89\x61\xc8\xd4\xfa\x3d\x68\x8e\xb5\x32\x67\xd8\x1c\xee\x7a\xdc\xf1\x3a\x99\x60\xdc\xe3\x36\x19\x32\x32\x68\x12\xe9\xc4\xd4\x19\x35\x09\x77\x42\x4a\xdb\x43\xda\x9c\x81\xb4\x87\xcd\x71\xbf\xe2\xa4\xbb\xe4\x41\xcd\xb8\x23\x60\xc6\xa4\x13\xc1\x98\x91\xa0\x1b\xfb\x4e\x4c\xdb\x67\x24\x69\x26\xf6\xac\x89\x27\xd2\xe3\xe6\x0c\x46\xcc\x19\x37\x13\x18\x32\x6e\x0f\x60\xca\xa4\x3d\x82\x09\x13\xf6\x00\xe6\x2c\xb2\x47\x70\xcc\xc8\xd0\x9e\x50\x1c\x7c\x32\xb5\xe7\xea\xe9\x88\x4d\x9c\x21\x9c\xb3\xb9\x33\x85\x03\x76\xd4\x3c\xb2\xcf\x9b\xe7\x70\xc8\x42\x27\x86\x17\x6c\xd8\x9c\x3b\x93\xe6\x14\x2e\x18\x39\xdf\x75\x31\xda\x1a\x6d\x9e\x91\x53\xe2\xc2\x61\xf3\xb0\x79\xe0\xbc\x68\xbe\xa0\x14\xf6\x19\x79\xd1\x3c\x77\x8e\x9a\x17\xb4\x7d\x00\xaf\x19\x71\x5e\x34\x8f\x9c\x73\xfd\xfa\x19\x3f\xda\xe9\xc7\x67\xfa\xa3\x9d\x7e\x7c\xc9\xf6\x9d\x63\xf8\xc4\x5e\x3b\x27\xf0\x80\x7d\x76\x8e\xe1\x15\x7b\xe6\x9c\xe4\x97\xa9\x37\x5f\xda\x9f\x9a\x9f\xf6\x1e\x34\x1f\xd8\xaf\x9a\xaf\x1a\x0d\xb2\xcf\x3e\xc3\x6b\xf6\x8c\xc2\xb7\xc1\x85\xbf\x0f\x83\xb9\xff\x1a\x2e\x5c\xcf\x77\x06\x30\x57\x3f\x23\xb8\xf0\x3c\x7f\xbf\x49\xc2\xf6\xa1\xe3\x51\x98\x7b\x9e\xff\x3a\x7b\xd3\xce\xa8\xcf\xd8\xd2\xb9\xd9\x01\x48\x76\x08\x82\x8d\x89\x9b\xa9\x44\x21\x64\x2f\x20\x66\x17\x10\xb0\x7d\x48\x30\xa9\x1c\xe6\x02\xf7\x10\x38\x85\x03\x66\xaf\x30\xa4\x84\x43\x66\xaf\xd0\xd9\xc2\x0b\x16\xd6\x7f\x71\x8e\xe1\x82\xc5\x2b\xbf\xed\xb3\x01\xb9\x70\x5e\x50\x78\xc6\x2e\xf6\x5e\xa0\x42\xef\xf2\x92\x24\x6c\xcc\x66\x84\x52\x38\xdc\x3d\x68\x34\xc8\x29\x3b\x84\x43\x76\x00\x07\xec\x94\xc2\xe1\x9e\xa6\xc6\x70\x44\xf6\xf7\x4e\x1c\xfd\x92\xb4\x34\xa3\x4c\x0e\x9b\x43\xf2\x82\xc2\x61\x73\x42\xd4\x48\x26\xad\x40\x0c\xf0\x96\x9e\x43\x78\x01\x17\xb0\xf5\x8c\xc2\x81\x06\xd0\x68\x90\xbc\xd4\x41\x73\x48\x2e\x28\x1c\x34\x27\xe4\xa2\x54\xea\x00\x2e\xe0\x05\x3c\xa3\x9a\xdd\x41\x1c\xbd\x84\x4f\xf0\x80\xbd\x80\x57\xec\x02\x1e\xb3\x17\xf0\x90\x5d\xc0\x73\xb6\x0f\x4f\xd9\x3e\xfc\xc4\x82\xfa\x9e\xb6\x3b\xf0\x95\xfd\x94\x57\x1c\x75\xed\x15\xfa\x62\xff\x8c\x1c\x34\x0f\xec\xc3\xe6\x21\xa5\xf0\x86\x4d\xc9\x80\x1c\x3a\x07\xaa\xbc\xbd\x42\xf3\x4c\xe1\x3e\x7b\x03\x8f\xd8\x1b\x85\xbc\xaf\x29\x72\xb0\xa5\x6f\xd9\x39\xf9\xda\x56\x9d\xfa\x89\x52\xf8\x82\x6f\x87\xfa\x6d\x87\x3c\x77\x58\xa7\xf9\x96\xea\xfc\x5d\xf2\xd8\x66\x6f\x9b\xec\x59\xd7\xf3\x1d\x0f\x1e\x3a\xec\x2d\xf5\xc9\x73\xe6\xc2\x63\xf6\x90\x91\x17\xf6\x05\x32\x55\xe4\xa9\x2a\xf4\x25\x2f\xf4\xc0\x66\x5f\xf2\x42\xaf\x1c\xf6\x85\xfa\xe4\x29\x73\xe1\x01\x7b\x95\x17\x42\x12\x7d\xc7\xd4\xb8\x3c\xa0\x70\x8b\xa9\x06\x3c\xa0\xf0\x33\x53\x38\x7f\x48\xe1\x03\x53\x0d\x7c\x88\xcc\xe8\x1b\xb3\xf5\x4f\xe0\x57\x2c\xf5\x8a\xc2\x2f\x58\xea\x15\x85\xf7\x58\xea\x31\x85\x8f\x58\xea\x31\x96\xda\xdf\x9d\x37\x1a\xe4\x09\x7b\x4d\xde\xc1\x2d\x78\x0f\x1f\xe1\x57\xf8\x05\x7e\x86\x0f\x34\x8d\xbe\xcb\x39\x7b\xe7\x3c\xc1\x2b\xb5\x39\xbb\xe5\x3c\xe9\x79\x7d\x10\x9c\xfd\xaa\xd3\x22\xce\x7e\xd1\x69\x21\x67\x5e\x7b\x42\x8e\x08\xe1\xbc\x29\xb8\x2d\x79\x33\xe2\xb4\x4d\xce\xd4\x3b\xc7\x77\xc9\xd5\x7a\x21\xf0\x73\x84\x9f\x35\xbb\x19\x73\x76\x46\x14\xb8\xa6\xfa\x67\x2b\x70\x4d\xf5\x8f\xde\xb8\xcf\xa6\xe4\x0d\x90\x03\x27\x56\xa0\x42\x8e\x77\x1c\x3e\xd2\x89\x87\x59\xa2\xed\x51\xba\x58\x3c\x4d\xf1\xfa\x28\xc3\xef\x4b\xf6\x99\xa8\xfe\xa8\x7e\x1d\xc2\x23\x78\x46\xe1\x13\xfb\x4c\xd2\xee\x65\x49\x39\x15\xbf\x6c\x0d\x2e\xec\x97\xad\x0b\xd7\x83\x97\xad\xc1\xdc\x7e\xd9\x9a\xbb\x1e\x85\x47\xbb\x6f\xba\x9a\xa2\x55\x06\xfc\x04\x8f\x60\x44\xf0\x33\x60\x7e\x0a\x23\xf2\x09\x5f\x3f\xe9\xd7\xad\x67\xd4\x27\x1b\x14\x7a\xd9\x9a\x7b\xf8\xea\xe9\x42\xa5\x09\xa7\x3e\xeb\x66\x60\x1e\xdd\x38\x2f\xad\x6c\x30\xb7\x3f\xe1\x87\x4f\xea\xc3\xa7\x2a\x04\x95\xaa\x3e\xe9\x5a\xb3\x9c\x79\xe9\x72\x53\x29\x36\x36\xc5\xc2\x3b\xb8\x55\x6e\xc6\x03\x78\x85\x99\xfc\x72\x96\x7c\x19\x78\x9e\xa2\xfb\xbe\x89\x76\x85\x5f\x85\xe7\x03\x70\xee\x67\x78\xcf\xc8\x2b\x4b\x4b\x5a\x5a\xe0\x5d\x85\xf8\xfb\x35\x88\xbf\xff\x3d\x88\xaf\x29\xb4\x06\xf1\x07\xdf\x81\xf8\x1a\xbc\xdf\xdf\x08\xef\x66\xb5\x0f\xe1\x31\x3c\x53\x49\x29\x5a\xd4\x14\xd4\x42\x4f\x8e\x79\x17\x5c\x9c\xb3\xe8\x17\xaa\x95\x10\x84\xc2\x38\x3b\x60\xd1\xfb\x12\x8c\x6d\xcb\x4a\x2d\x61\xd3\x0f\xa7\xad\x01\x8f\xa4\x88\xc3\x61\x75\xb3\x13\x8c\xac\xda\xaf\x94\xd4\xbe\x62\xcd\x6c\x77\x20\x62\xc4\x5e\xb1\x67\xd9\x37\xed\x15\x3b\x16\x6d\x77\x9c\x79\xbb\x93\xa9\x8b\x87\x24\xa2\x4d\x01\x13\xfc\xe9\xeb\x60\xb5\x39\x23\x58\x17\xec\x7d\x39\xa6\x6c\xad\xbf\x83\xec\x4a\x7f\x4c\x6c\x89\x21\x80\xb9\x82\x6b\x70\x8f\x9b\xc6\xb2\x5f\x71\x4c\x3a\x26\x36\x47\xb8\x12\xa3\xf2\xc6\xa2\xa6\xc1\xeb\x00\xaf\x3c\x7f\xcd\x01\x0b\x05\x78\x1a\x0c\xaf\x03\x35\x3b\xb7\xe5\x5d\xf5\x5b\x77\x72\x5b\xaa\x22\x52\x55\x14\xec\xf2\xa6\x57\x02\x5d\x05\x36\x54\x60\x33\x1e\x7b\x33\xa0\xf1\x95\x40\xe3\x14\x1d\xd7\x00\x1a\x5c\x09\x34\xd0\x83\x17\x49\x7e\x21\x37\xbd\x68\xa9\x84\x61\x8c\x64\x9c\x2c\xe0\xd4\x08\x36\x62\x84\xab\x21\x2f\xff\x86\x91\xe1\x3e\x2d\xc5\x2d\x43\xc3\x45\x78\xb0\x3e\x62\xdc\xcb\xeb\x44\x8c\x7b\x55\x78\x78\x66\xc3\xc3\x17\xaf\x4a\xee\xa0\x82\x07\x87\x8a\x74\x4b\x86\x6a\x58\x42\x2d\x9c\xcc\x5d\x80\xca\x72\x60\x9a\x61\x94\x32\x3c\x0f\x9e\x6b\x5d\xeb\x0a\x28\x78\x72\xa0\xc0\xa8\x3c\x15\x30\xa4\x80\x73\x79\xe9\xe6\x0a\x5f\xf5\xde\x68\x78\xb9\x3a\x07\x41\xd0\x34\xa0\x41\xd6\x91\xd2\x9a\x6d\xb4\xc7\x73\x8a\x97\x05\x60\xd1\x8a\x0e\x38\xf5\xa9\x2c\xd4\x56\x66\x2d\x99\x6f\xa5\xd9\x78\xcf\x80\xdf\x2d\x37\x22\xdd\x5c\xd0\x86\xb3\xfc\x25\xdd\x63\xd0\x72\xd5\x74\x69\x2c\x41\xee\xdc\x48\x03\xed\xf8\x2b\xc1\x2e\x52\x0d\xc7\xe3\x55\x71\xea\x5e\x95\x87\xfc\xa1\x49\xc8\x3d\xd7\x90\x7e\x9f\x97\xbe\x78\x3a\x84\xe0\xd3\x3a\x9b\x5f\x36\xc6\xf8\x08\xb9\xac\xf6\x18\xe2\x8a\x8c\x16\x90\x3c\xfe\xd8\x18\x06\x30\x62\x24\x60\x0f\x48\x40\x69\x61\xe5\xbf\xe5\xa1\xe1\x78\x1a\x79\xa7\xd1\x20\x31\x0b\xc9\x00\x25\xa9\xcc\x67\x80\xe9\xb8\x5d\x5b\x24\xd9\x1d\x35\x1a\x82\x8c\xd1\x35\x00\x12\x08\x28\x65\x8c\x0d\x1b\x0d\x42\x86\x6c\x6b\x48\xbb\x71\x2b\x27\x31\x42\x7d\xfd\x76\x10\x0d\x95\x54\x36\x6c\x34\xe2\x16\xa2\x93\xd8\x9c\x8c\xb1\x34\xd8\x32\x7d\xc2\x0d\x7e\x90\x6d\xe9\xba\x1b\x30\x58\xda\xd2\x57\x38\xfa\x71\x3f\x3f\x03\xe5\xdd\x87\xfe\x18\x3d\xa0\x57\xed\x91\xc5\x71\x69\xf7\xb9\x3f\x26\x92\x42\xd0\xba\xf8\x43\xf6\xdd\x00\xf7\xdd\xa0\x35\xff\x43\x76\xdb\x00\x77\xdb\x20\x75\x3d\xad\x0b\x50\x79\xbd\x8d\x76\x6b\x4b\x03\x15\x0a\xe8\x60\x26\xce\x36\xde\x01\x79\xea\x21\x93\x51\x47\x44\x11\x50\x88\x80\xae\xb3\x9d\xe4\x9b\x09\xd3\x23\xec\x23\x34\xa6\xdb\x15\x2d\x20\x58\xc0\x4f\x4b\xfe\xb8\xfa\xac\x2d\x25\x71\x4d\xf1\x29\x7d\x04\xec\xf1\x92\x56\x62\x40\x32\xe7\x2f\x18\xc1\x10\x4e\x61\x0a\x13\x46\xc6\xec\x01\x19\x17\x54\x7f\xc6\xb6\x3c\x98\x57\xfd\xb7\xcc\x57\x63\x4e\xc4\x4a\xe8\x67\x01\x99\xa6\x73\x42\x3b\x3e\xb0\x09\x7a\x3e\x68\x27\x9f\xc1\xee\xa4\xd1\x08\xc9\x29\x1b\xf7\x06\x7d\x18\xc0\x18\xe7\xc5\x19\x0d\x47\xe4\x8c\x6d\x9d\xd1\x11\x1b\x20\xab\x9c\xae\xe1\x24\x13\x03\xd2\x37\xad\x27\x40\x5b\xa7\x62\xc6\x94\xb3\xc0\x90\x0d\x1c\x6f\x67\xb8\xc7\x46\x3b\x8e\x33\xa4\x49\x3a\x95\xe6\xbd\x61\x1f\x8e\x7b\xc3\x3e\xbd\x51\x2e\x9b\xee\x06\x84\x2e\xce\x1a\x0d\x32\xef\x0d\xfa\xcc\xe6\xe4\x14\x1b\x07\xc7\xf8\x2a\xb3\xd7\x0c\x58\xd4\xb5\xa3\x34\xcd\x57\x25\x40\x74\x6d\x91\x25\xa8\x32\x94\x2e\xc2\x11\x99\x56\x38\xef\x69\x31\x4d\xf3\x61\x18\x15\x8a\xdc\xa7\x84\x66\x34\x4c\x42\xaa\x29\x8f\x04\x34\xa3\x1c\x12\xd3\xeb\xce\x6e\x7b\xdd\xf4\x1e\x13\x63\x82\xbb\xbe\x9a\x97\xb5\x93\x42\x74\x45\x01\x57\xe0\x52\x60\x0b\x0a\x83\x3f\x68\x2d\x48\x29\x76\x80\x4b\xc2\xa0\x75\xe1\xfe\x21\x50\x73\x70\xde\x1f\xcf\x21\x0f\x70\x0a\x0e\xfe\xa0\xd5\x4b\xe4\xfd\x97\x08\xd4\xfd\x43\xa0\xe6\xe0\x36\xec\xbf\xb8\x5e\xff\x85\x82\xad\x66\xd1\x7b\x97\xe9\x87\x0f\x6e\xcd\xb5\x0e\x23\x42\x5b\x17\x84\xd3\xd6\x9c\xe0\xd1\xb8\xce\xe9\xad\xcf\x29\xf2\x9c\xef\x57\xe7\x8c\x0a\x98\xd7\x5a\xf6\xd7\x48\x29\xb8\xec\x0f\x70\xb5\x1e\x5c\x67\xd9\x0f\xf2\x65\x3f\x5b\x00\x63\x8a\x80\x02\x04\xf4\x3d\xcb\x7e\xcc\xf4\x8a\xe1\x23\x34\xa6\xdb\x15\x2f\x60\xb0\x80\xaf\xf5\xd6\x4e\xe9\xf5\x26\x72\x8f\x77\xd5\x7f\xc6\xd3\x78\x9e\xf0\xa6\x36\x98\xe2\x02\xee\x2f\xeb\xb5\xdf\x80\x64\x5f\x33\x7a\x8c\xb4\x7a\x5b\x6d\x24\x27\x6a\x1f\x51\x6f\xb5\xec\xd2\x4c\x33\x4c\x30\x5c\x62\x99\x4e\x99\x0b\x53\x63\xb3\x18\x52\x98\x94\x5f\xcf\xd8\x2a\x4d\x6d\x76\x02\x35\x09\x23\x72\x02\xf9\xed\x41\xce\x09\xac\xd2\x84\x9f\xd1\xfc\x54\x5b\x15\xca\xcf\x3f\xe7\xb4\x3d\x84\x55\x0a\x07\x38\x62\xc7\x4d\x32\xcf\x4e\x2b\x96\xc2\xbd\x92\x11\x9b\xf4\xa6\xbd\xa4\xcf\x12\xdc\x16\x0a\x76\x6e\xcf\x6d\x34\xc8\xa9\xcd\x46\xc5\x0e\xb8\xc5\x64\x77\xaa\xbd\xf9\xcc\x1b\xde\x0d\x27\x45\x32\xe9\xf1\x3e\x4c\x7a\xa2\x4f\x17\x94\xfa\xba\x90\x68\x34\x6a\x4a\x15\x43\x2b\x48\xa0\x4a\x05\x3d\x89\xa5\x30\x6c\xef\x98\x9d\x76\xc9\xdc\x19\x36\x8f\x68\xfb\xd4\xcf\xdb\x0b\x67\x6c\x40\x67\x6c\xaa\x1d\x55\xcf\x6c\x82\xed\x9f\xf5\xe9\x9e\xdb\x1d\x35\xc7\xbe\x4b\xed\x23\x50\x09\xec\x1b\xfa\xb3\x07\xbd\x59\x1f\x30\x30\x8c\x9f\xa4\x5e\x52\x23\x28\x04\x7f\xff\x0c\x32\x71\xdd\x1f\x40\x26\x64\xfb\xc7\x99\x3f\xd6\xcd\x49\xb6\x21\xa5\xb7\xa4\xfd\xa1\xcc\xa1\x42\x09\x46\x91\xdc\x58\x27\xc3\x33\xe2\xcd\x38\x42\x05\x62\xd3\xf5\x4f\xc9\x4e\x59\x61\xe4\xfc\xae\xab\x00\x59\xe5\x47\x5d\x70\xa9\x8a\x71\xbb\xa6\x02\xe4\x0a\xad\x4a\xc6\x5c\x5e\x4f\x01\x72\x85\x56\x25\xc0\xb5\x26\x58\xc0\x23\xf6\x85\x3c\x36\x66\xfd\x5b\x43\xfa\xc6\xf5\x91\x57\x22\x5e\xe6\x6f\xd2\x20\x00\x35\xe3\xdf\x12\x4e\x64\x71\x21\xa6\xcc\x01\x80\xac\x44\xc2\xcc\x82\x8d\xe0\xf7\xe2\xde\xa0\x00\x7b\xc7\x5b\x17\x90\x99\xf7\xb6\x2e\x80\xb7\xb4\xc9\x04\xe3\xad\x79\x91\x3e\x07\x7e\x8d\xe5\x5b\x92\x2f\xda\xff\x83\xd0\xb4\x51\x0b\xe0\x8b\xb7\x1b\xaa\x14\xb0\x80\xc9\xaf\xae\xd1\x2e\x14\x79\x35\xbb\xb9\x4e\xc9\xa0\xf3\x1a\x6c\x6d\xad\xba\xa1\x9a\x37\x85\x5b\xa7\x23\x30\xb3\x6a\x1e\x56\x16\xc6\x10\x8a\x4b\x6c\x3a\xb9\xe9\x04\xa7\x59\xb8\xf1\x5b\x35\xfb\xef\x3b\xa2\xf8\x54\xcd\x9c\x3e\xa2\x74\x01\x3f\x2f\xef\x24\x3f\x19\x39\x20\x1f\x4d\xed\x09\x8c\x4c\x03\x44\xd9\xa3\x07\x61\xfa\xf8\x01\x5d\x0c\x53\x16\xe1\xca\x91\x37\x66\x27\x6f\x5d\xb8\xc6\x47\x17\x8a\x93\x7c\xf5\xcd\x33\xbe\x79\x6b\x68\xc6\x54\x2e\xf3\xd6\xdc\x00\x39\x57\x20\x4d\x1d\x31\x6f\xcd\x0d\xa8\x73\x05\x35\x1f\xab\xca\x3c\x34\xf0\x26\xf0\x1e\xab\xbc\x58\x8a\x89\x7c\xe8\x56\x17\x8c\x6a\x0a\x66\x75\x3e\xae\x53\x89\x1b\x65\xc3\xe5\xb2\x1f\xb2\x4a\x5f\xd4\xa9\xbd\x8d\xb2\x71\x4d\x59\xef\x0f\x98\x5d\xf0\xa1\x96\x89\xe9\x11\xc9\x6c\x69\x98\x58\x71\x27\x33\x43\x69\x77\x14\x89\x1a\x04\xdb\x37\x34\x44\x4f\xca\x66\x1e\x68\xa7\x5f\x0a\x1e\xbb\x64\x13\x6e\x46\x84\xcd\xd7\x9c\x27\x20\xd8\xaf\x10\xb1\x87\x10\xb2\xe7\x35\x0a\xa2\xd4\x1f\x1d\x12\xf6\x29\x8d\x2f\x54\x70\x2b\xe3\x72\x84\xe1\x04\x6d\xc3\xca\x29\x68\x3d\x78\x79\x49\x62\x16\xe8\xd3\x77\x4e\x62\x28\xb3\x3f\x04\xfd\xf4\x75\xa4\xa2\xf2\xe9\x49\x42\x6b\xb3\x0e\x6a\xb3\xaa\x15\xbc\xac\x1f\x0a\x96\xf4\x43\x41\x8a\xa7\xcd\xb7\xd6\x6c\x4f\xd5\x18\xdc\x7c\x57\xcd\xb6\xd3\x8b\x3f\x74\x17\xdd\x50\xf6\xda\x70\xfb\xbc\x16\x93\x1e\x57\x55\xfd\xd9\x7e\x99\xd3\xca\xfb\xc2\x2c\x87\x7e\xe3\x99\xe6\x54\x82\xa0\xc0\x5b\x25\x23\x59\x22\x19\x91\x76\x44\xdb\x1d\x10\x20\x21\xc4\x22\xa5\xd0\xc2\x1b\x03\x02\xc1\x88\xb0\x43\x3c\x7c\x4b\x8b\x94\xc2\x08\x1b\x90\x74\xec\xa0\x0f\x1a\x50\xa0\x1f\xb2\xc2\x8a\xbf\xfc\x40\x22\xf5\x65\x86\x0f\x21\xbd\x91\xd7\x1c\xe3\x35\xc4\x3d\xaf\xbf\x5c\x7f\xa0\x3e\x05\x3d\xaf\x0f\x8a\x32\x21\x51\x4f\x33\xbc\x04\x53\x65\x2f\x05\x2c\xce\x71\xfb\x0b\x79\x4f\x4b\x71\x89\x8d\x2f\x1f\x69\x25\xaa\xb0\xde\x59\x7e\x21\x9c\xd3\xef\x65\x0b\x50\x41\x1c\x72\xf6\x6d\x28\x82\xf3\x5a\xe7\xc7\xc2\x28\x56\xb6\xe7\x46\xc7\x05\xb8\xaa\xcb\xd9\x69\xac\x00\x17\x4e\xe8\x62\x01\xf1\xa6\xc0\xee\xd2\x76\xa7\x00\xe7\x6c\x37\x05\x38\x38\x8a\xa9\x66\xdc\xa9\x79\xdf\x6e\x9a\x29\x75\x09\xe6\xeb\x12\x48\x95\x50\xce\x5f\x7e\x2b\x43\x73\x6a\x12\x4a\xaf\x39\x38\xe3\x9c\x62\xb1\x80\x80\x1b\xfd\xf4\xda\xdb\x14\x12\xce\x3a\xcd\x80\xc3\x6c\x53\xdc\x24\xe8\x59\x2a\x9a\x01\x2f\x30\xe4\x96\xfb\x12\x69\xfc\xa7\x6f\x6e\xb9\x65\xe9\xc7\x72\xbb\xc6\x3c\xb7\x6c\x24\xf3\xb6\xe7\xd2\x76\xfe\xfa\x43\x13\x13\x60\x60\x64\x39\x51\x29\xcd\x31\x87\x11\x67\x05\x27\x94\xa7\x0e\x37\xeb\x4b\xeb\xc7\x7f\xb9\x3f\x7a\xdb\xee\xbf\xbc\xbb\x9d\x7f\x75\x7e\xbc\xdb\x69\xa2\x82\x6b\xc0\x9b\x02\x42\x36\xe2\x4d\xb1\xa6\x87\xa1\x19\xd8\xcb\xdb\x89\x77\xef\xea\x78\x33\xda\x62\xfd\xa4\x19\xb7\xef\x42\xc2\x4c\xfb\xe3\x19\x33\xac\x8f\x6f\xe4\xa0\x66\x8a\x12\x92\xd2\x60\x26\xcd\xc8\x99\x35\x43\x98\x35\x23\x3b\x69\x86\x74\x51\x45\xd7\xe9\x86\x83\x85\x11\xe1\x05\xd2\xb2\xc0\x30\x78\xb8\xd8\x08\x05\x62\x6a\x52\xc2\x36\x85\xc9\x3a\x90\x8e\x49\x00\x64\xbb\x39\xe5\x94\x9a\xb8\xe9\x94\x69\x71\xca\xab\xd4\x6d\xa4\x94\x7b\x72\x56\x6e\x46\xbb\x03\x73\xce\xbc\xb6\x41\xa4\x1d\x0a\xc7\x9c\x6d\x37\xc9\x9c\xb7\x3b\xb6\x47\xe1\x64\x53\x4a\x3d\xd6\x94\xda\xee\x40\xc8\x44\x73\xce\x15\x97\x00\x01\x3e\xda\x02\x12\xe6\xc4\x30\x63\x41\xd1\x0f\x8c\x2e\x95\x37\x39\x86\xc0\x1c\x12\x98\x99\x3d\x6c\xdd\x6d\x46\xce\x19\x6f\x86\x70\xc6\x9b\x91\xad\xde\xc3\xca\xf7\x58\x7d\x0f\xd4\xf7\x18\xbf\x07\x95\xef\x89\xfa\x3e\x53\xdf\x13\xfc\xbe\x04\xdf\x46\xf8\x08\x5a\x65\x8d\xaa\xf0\x6d\x84\x8f\xa0\xd5\xf7\xb8\x0a\xdf\x46\xf8\x08\x5a\x7d\x4f\x96\x91\x7f\xc4\x59\x2f\xe4\x10\xab\xd9\x0f\xa7\x6a\xde\xc0\x84\xc3\x09\xef\x97\x3d\x6d\x0b\xec\x96\x99\xac\x3c\xb0\x35\x1a\xcb\x63\x70\x9d\x28\x65\x96\xea\x15\x38\x2d\x35\x6c\x44\xc0\x4a\x53\x14\x88\x32\x56\x28\xd3\x6b\x6d\x7e\x54\x36\x26\xfc\xf2\x32\xdc\x58\x85\x7e\xef\x0e\xea\xd0\x75\x84\xea\xdf\xad\x09\x51\x90\x50\x11\x12\xb5\x92\xf0\xeb\xc6\x7c\xda\x5a\x76\x27\x42\x16\x2e\xba\x1e\xbb\x23\xaa\xec\x4e\x84\x0c\x5d\x54\xf6\x60\xa6\xdf\x0c\x86\xfc\x30\x0f\x7a\xcd\x8b\x23\xe0\x32\xbb\x40\x3a\x4d\xde\x3a\xba\x70\x6d\x8e\x8e\x31\xed\x6d\xd0\x29\x73\x4c\x99\xeb\x14\x9d\x43\xe7\xcc\x53\xe6\x69\x4a\x29\xcf\x1d\x9d\xc7\x96\xb4\x7d\x2f\xcb\x75\x47\xe7\xb2\x05\x6d\xdf\x33\x98\x89\x17\xbc\xce\x86\xa0\xec\xf3\xfc\x1f\x37\x22\xb8\x58\xf6\x6e\x33\x9c\x08\x9e\x07\xcf\xe1\x6a\x63\x83\xf4\xd8\x7f\xf9\xb0\x7f\xdb\x3f\x34\xef\x43\x38\xba\xf0\x72\xdf\x32\xaa\x0f\xed\x3b\xf5\xc7\xf3\xcb\xd9\x17\xff\x58\x34\x98\x9f\x3a\xa5\x4f\xdb\x50\x5b\x13\xb9\xdb\xcc\x06\xd9\xce\x3d\xbf\x14\x59\x66\xe9\xf3\x2c\x5d\x91\xf0\x3d\x9a\x9b\x4c\x1c\x9a\x21\xd3\x97\xe8\x04\x0a\x3f\x17\x58\x22\x19\xc3\x79\x30\x55\xdd\x5c\xd4\x2e\x19\x11\x3f\xd7\x13\xc0\x98\xad\xfb\xb5\x13\x62\x7f\xc5\x84\x38\xe0\x39\xe9\x1f\xf0\xeb\x91\xf8\x45\x27\x7b\xd8\xce\x1e\xee\xd4\x50\x7f\xfa\x90\x65\x9e\x67\x99\xe7\x77\x7e\xef\xc4\xf0\xea\x09\x20\x6b\x5d\x86\xc4\x0e\x85\x95\x74\x5c\x47\x0d\x15\x70\x39\x3c\xbb\x93\x11\xc2\x36\x2e\x55\x19\xf8\x3c\x7d\xae\xd2\xab\x95\x65\x54\x94\x15\x2d\xa0\x74\x4c\x28\x45\xfa\xbc\x53\x03\x65\x45\x93\xb7\x75\x93\x53\x0d\xe0\x8a\x7e\x97\xbe\x66\x44\x3e\xdf\xae\xfb\x7a\x27\xfb\x7a\x07\x39\xc0\x3f\x72\x2a\x5f\x74\x0a\x42\xef\x30\xb9\x66\x86\x42\x4e\x55\x79\x81\xed\x72\x81\xfa\x79\x7b\x71\xa7\x28\x70\x87\x49\x58\x3b\x9a\x6a\x3f\xc9\xe8\xd9\xe6\x38\x9f\xf3\xd9\x9c\x7d\x99\xeb\x0d\x28\xc3\xf8\x7f\x64\x5e\xbf\x5e\x39\xaf\xf7\x2b\xf3\xfa\x73\xed\xbc\xfe\xfc\xdf\xb7\xd1\xad\xdd\x83\xb6\xff\x3a\x7b\xd0\xf7\x6d\x22\x69\x18\xc8\xd5\x74\x16\xb1\x95\x94\x76\xe3\xaa\x5d\x4f\x40\xb4\x62\xd7\x53\x5f\x6a\x56\x86\xb4\x55\x77\xfe\x33\xc4\x5b\x1b\x21\x03\x89\xf7\x73\x85\x78\x5f\x96\x6e\x3a\x38\x0e\x92\x50\x87\xb4\xc6\xcd\x2b\x05\x7c\xcc\x65\xc0\xe4\xe2\x65\x89\xa2\xd7\xd1\x22\xeb\xf5\xb3\x36\x15\x8f\x08\xfb\xca\xa3\x16\x33\xb6\xe9\x45\x76\xd1\xd2\xd1\xdc\x08\x6e\xea\x78\x28\xb4\xec\xb9\x95\xf8\xb9\x6e\x1f\xa3\x04\xba\x7d\x08\xf0\x06\x4c\x27\xc4\x78\xf6\xa2\x8f\xc2\xa2\xe3\xed\xd8\xf6\x6c\x97\x89\x1d\x1a\xb1\x59\x5b\x94\x1a\x65\x2e\xb5\xaa\xb3\x4d\xde\x9b\xf5\x6d\x92\xd1\xae\x4a\xa2\x4d\x12\xda\x91\x12\x05\x8d\x6c\xb2\x2e\x5b\x6c\x47\xcd\x84\xa6\x17\xe2\x1c\x5d\x64\x3d\x30\x63\x2a\x14\xa8\xb8\xf2\x24\xe9\x42\x07\x4e\xb7\xf3\xc1\x98\xa7\x09\x32\x3b\x3b\xfa\x54\x8c\xf5\x4d\x8e\xb7\x31\xe5\x8a\x3e\x63\xec\x91\x85\xec\xe6\x23\x8b\x91\x4d\xd2\xb1\xcf\xe4\x33\xd1\xc2\x81\xae\x11\xa8\x38\x56\x07\x62\x41\x5a\x3f\xde\x35\xce\x29\x1f\x5c\x2d\x7f\x68\x71\x81\xb7\x8e\x3e\x37\xf1\xb9\xe3\xa0\x20\xa1\x04\x4d\x35\xb9\xf2\x0f\x73\xfc\x30\xd7\x1f\x2e\x3a\x46\x09\xcf\x91\x3a\xb7\x91\x38\xf7\xb4\x46\x42\x6d\xaa\xf8\xc9\x90\x3b\x5e\x95\x28\x3a\x5f\x90\x53\xf4\x7d\x66\x6a\xbc\x68\xfb\xde\xe2\xd5\xff\xf6\x02\x9d\xb3\x69\xb5\x4c\xd9\xef\x64\xc1\xd6\x4b\x1e\x06\x2b\x52\x5e\x9b\x1e\xac\x14\x68\xfe\x91\x50\x3a\x35\x8b\xb0\xb7\x96\xff\xc9\x17\xf7\x07\x1b\x2e\xee\x95\xe1\x31\x59\xb3\xda\xe5\x3e\x1d\x44\x83\x7d\xcb\x8c\xbe\x37\x5a\x14\xd0\x0a\xbc\xba\x08\x48\x1e\x25\x61\x1c\xad\x5f\x07\x4c\x1b\xa5\x87\x1b\x4e\xb8\x87\x7f\xaa\xa4\x73\x71\xf7\x7a\x22\x4f\xfa\x70\xf7\x3f\x2b\xfb\x2c\x71\xf9\xd7\x95\x7d\xca\xf3\xf8\xda\xe0\xea\xe4\x92\x8d\x25\x8f\x9a\xaf\x77\xb3\xaf\x77\xff\x78\xb9\x64\xb5\x98\x51\x3f\x2f\xeb\x31\x5e\x96\x3d\x6a\x71\x5b\x91\x56\xee\x16\x25\xee\xe6\xf5\xfe\xaf\xcd\xe4\xe7\x1b\xcf\xe4\x87\xbf\x7b\x26\x3f\xdd\x70\x26\x3f\xfd\x3b\x6c\x9d\x7f\x6f\x69\xe7\xca\x5d\x70\x99\x13\xd8\x54\x69\xb3\x89\x34\xf3\xa7\x4f\x93\x9f\x36\x9e\x26\x4f\x7f\xf7\x34\xf9\x5a\xb9\x6b\x12\xb9\x54\x34\xaf\x52\x8d\x8d\x99\xe6\x4b\x03\x7c\xef\x28\x61\x85\xb7\x8e\xc6\xae\x77\x14\x98\x81\x01\x12\x86\xda\x75\x95\xde\x09\xec\xed\xec\x39\xc0\x07\xaf\x73\x14\xd8\xe9\x43\x27\x80\x19\x33\xbe\xe7\xd0\xb2\x0c\x01\xbd\x11\x31\x12\x35\x13\xcd\x5a\x37\xf3\x72\xa8\xf3\x37\x6a\xa1\xed\x19\x84\x8c\x84\x3a\xe7\xbc\x92\x73\x5e\xce\xb9\x48\xdb\xdd\xd9\x2e\xb7\x7b\x9c\xb6\xbb\xb3\x5d\xb4\x5b\xe5\xa9\x6b\xf7\x80\x19\xdf\x73\x68\x46\xbb\x63\x46\xe2\xe6\x58\x9f\x4d\x14\x50\x1d\x59\xb4\x8c\xb6\x07\x10\x30\x12\xe8\x5c\x73\x33\x97\x28\xe5\x5a\xac\x14\x41\xb2\x80\x31\xf5\xe2\xc2\x9b\xb5\x6b\x5e\x30\x9e\x9e\x2a\xd9\xf7\xcd\x7f\xcb\x8a\x87\x94\x91\x2d\x65\x0a\xc9\xd9\xb3\xc2\x3c\x2b\xf2\x74\xcc\x4c\x1d\x33\x57\xfe\xf2\x67\xca\x1d\xcb\x9c\x85\x91\xf5\x7f\x49\xf4\xc0\xe0\xb2\xb5\xcb\xb4\x79\xa7\x8d\x92\x68\xf3\x6b\xc6\xe6\x1d\x47\xde\x30\x11\x6e\x1c\x6a\x9b\x08\xc6\xe4\x69\x7c\x4e\x44\x53\xd8\x51\x33\x32\xa9\x8d\xd2\xc5\x4a\xec\xfe\x15\x0e\x63\xf2\x35\xfe\xeb\xf2\x1a\xbf\x44\x7d\xb0\x82\x12\x61\x25\x25\xc2\x4a\xb2\x84\x3f\x63\x1f\xb9\xbf\xd1\x3e\xa2\x35\x29\xe9\xd2\xe1\xe7\x62\x94\x6b\xec\x2a\x7a\xe5\x58\xaf\x4c\x31\x75\x29\x8f\x36\x5a\x87\x1e\xfd\xb7\xc9\x50\xff\xdb\xeb\xd1\x3f\xe2\xd8\x7f\xe9\xa2\xf6\xd7\x14\xff\xfe\x96\x6b\xde\xdb\x6b\xac\x79\x8f\x8c\x35\xef\xe1\xef\x5d\xf3\xbe\x6c\xb4\xe6\x7d\xf9\x87\xf7\xfa\x0b\x08\xae\x7f\xfd\x85\xe3\xbf\x52\x50\xfe\x5b\x2e\x28\xef\xae\xb1\xa0\x7c\x31\x16\x94\xa7\xbf\x77\x41\xb9\x55\x7b\x14\x7f\xeb\xf7\x32\x4d\xeb\x66\xa3\x91\x63\xcd\x5c\xab\x9f\x53\xb5\x13\x6a\x0d\x27\x4f\xea\x36\xca\x1a\xc6\x3e\x3b\x1a\xfc\x79\xe5\x31\xf0\xad\xca\x31\xf0\x07\x6e\x7a\xef\xa4\x6e\xba\x85\x90\xfc\xa4\x4e\xe3\xa1\xd5\x0d\x10\x32\xe9\x68\x0d\x48\xcc\xd2\xb3\x39\x7d\x92\xd7\x26\xd1\xe5\x65\xb8\xeb\x36\x1a\x8e\x4b\x95\x10\x2f\x9c\xd4\x9c\x90\x84\x97\x97\x51\xf6\x21\x61\x24\x6e\x86\x76\xd0\x8c\x54\x09\x3b\xcc\xbc\x0e\xc8\x07\x4e\x62\x6a\x7f\xe0\x24\xa0\xa9\xaf\x52\xc9\xdf\x38\xa6\x90\x3f\x07\x14\x5a\x77\x9b\xf9\x6b\x42\xe9\xe5\xa5\x6b\xb8\x26\x71\xd3\x14\xd6\x68\x7c\x7e\x85\x5b\x97\x6c\x37\xcb\x8d\x17\x8e\xa4\xed\x8e\x6f\xba\x30\xd5\x20\xc1\x4d\xd5\x3e\x6e\xaa\xf6\xf1\x52\xb5\x8f\x87\xdd\x72\x22\xda\xde\xbe\xb1\x5a\x31\x61\x27\x10\xda\x49\x53\x42\xec\x24\x10\x38\x49\x53\x60\x74\x59\xc3\xc1\xa5\x96\x9e\x0b\xb7\x95\x9a\xcf\x6a\x74\xb9\x2c\x05\xf9\xc5\xd7\xd5\x50\xa4\xac\x10\xc7\x7b\x5e\x2a\x2e\xaa\xdf\x3f\x96\xbf\x47\xeb\xc1\x87\x32\x77\xfd\x02\xa1\xfd\x11\xb3\x2b\x6e\x97\x6e\x7f\x2d\xbd\x96\x6f\x0b\x46\x9b\xfd\xb0\xe7\xf6\x99\x0b\xb1\xfa\xe9\x40\xa0\x7e\x78\xcf\xed\xdb\x9d\x26\xef\x79\x7d\x90\xcc\xdb\x91\xbb\x11\x9e\xf5\x4b\x1a\xf6\x64\x9f\x79\x10\xab\x9f\x3b\xe8\xd6\xcd\xee\x34\x79\x4f\xea\xec\xd2\xf6\xfa\x29\xcc\xc8\xf1\x14\xb8\x58\x3f\xfc\x00\x81\x7e\xf8\xb1\xc9\xf1\xc1\xe6\x78\x9b\x93\x86\x8d\x90\x05\x53\xb0\xdb\x71\x4f\x3a\x5e\x1f\x2b\x70\x98\xc0\x1a\x1c\x26\x9a\x01\x26\x9b\xb0\x35\xc0\xb6\xae\x00\x24\x8b\x9c\xce\x8e\xdc\x63\xee\x8e\xe3\xa4\xcd\x24\x58\x38\xc4\x56\x51\x05\x58\x97\x4f\x9b\x44\x54\x0b\x6c\x0d\x8c\xb6\x3b\x20\x99\x6b\xf4\x13\x3b\x98\x75\x29\x85\x91\x85\xf6\x0b\x21\xee\x2f\xde\xff\x6f\x33\x50\xcb\x7c\x93\x74\xff\xb3\x07\xdc\xa6\x25\x6e\x69\x17\xfe\xa5\x74\xc0\x2d\x5d\xf8\xb5\x92\x40\xff\xb7\xd4\x4d\x7a\x71\x7a\x1e\x3c\xbf\x11\x8e\xd0\x41\x13\x90\xe1\xa2\xc6\x75\x16\x97\x97\x32\x7f\x9b\x7b\x6b\x90\xf3\x57\xd0\x13\x41\x86\xea\x0c\xc3\x82\x3d\x31\x98\x1d\x0a\xa2\x6a\xbf\xb7\x34\x36\x95\x12\xdf\x6f\x16\x95\x83\x64\x62\xb1\x58\x00\xf9\x58\xba\x86\x4b\x5f\x0c\xac\xaf\xf1\x21\xe6\x64\xa1\x54\x8b\xd7\x15\x8f\x0a\x33\x8b\xce\xa0\xfd\x54\x75\xe3\xf1\xe2\x4b\x2e\xcd\x29\xb7\xe6\xfa\x93\x2a\x13\x09\x7c\xd5\xd5\x26\x6b\x78\x8b\xf1\xea\x1b\x4b\xaa\xd3\x03\xe1\x6f\x7e\x7f\x48\xfd\xc6\x25\x81\xa3\x3b\x52\x0c\x21\x5d\x2c\x20\x92\x7f\xee\xfa\x52\x36\x2f\xfb\x4e\x33\x32\x34\x22\xa3\x6a\xaa\x5d\x35\x37\x30\xe4\x72\xcf\xed\xaf\x9a\x21\xf9\x77\xe8\x30\xc6\x04\x5d\x01\x45\xad\xfc\x18\x4b\x19\x63\xc9\x16\x17\x8d\xe2\xfe\x08\xa1\xfa\x95\x78\x03\x3a\x04\xcc\xdb\x09\xf0\x06\xef\x18\x6c\x3b\xa0\xeb\x86\x22\xea\xb9\xfd\x5e\xdc\x87\x30\xfd\x8d\x7a\x5e\xfa\xae\x7f\x79\x2f\x50\xf5\x06\x7d\xba\x73\xe5\xb2\x26\xbe\x67\x31\xcb\xa6\x60\xc9\xce\xed\xf7\x59\xb4\xc5\xb5\x1e\x33\x8a\x19\x40\x56\xc3\x60\x5b\x03\xb9\x4e\x81\x20\x99\x5c\x04\x7f\x36\x6d\x66\x68\xd8\x6c\x7b\x73\x77\xd3\xa6\x66\x98\x97\xbb\x5e\xa3\xd1\x29\xef\x31\xd5\x51\x29\x6f\x75\x19\x16\x29\xfc\x07\xf6\xad\x3d\xe6\xe6\xf7\x84\xc8\x7c\xdc\xe5\x2a\x62\x58\x21\xe7\xfc\x95\x8c\xb8\xf2\xdd\x26\x9f\xfa\x72\x97\xb9\xf5\x93\x36\xc7\xf0\x0a\xdf\x01\xac\x2a\x0f\xa9\x9f\xeb\x40\x9a\xb9\x49\xa8\xa4\x36\x4f\x2d\x89\x33\x4d\xc8\x92\xe1\x70\x3e\x7c\xab\xbe\xd3\x45\xb6\xf1\x15\xbb\x5c\x2e\x6a\x27\x2b\xe7\x0a\xce\x8d\xd6\x5d\x73\xba\xcc\xaa\x9c\x3c\xe6\x71\x0d\x5e\x7e\x5c\x9b\xc3\xd3\x81\x67\x07\xd5\x8d\x50\xdf\x3d\x9a\xdf\x2e\xbf\xe7\xe5\x26\xb9\xe9\x36\xc2\x50\x1e\xea\xa9\xd5\xb1\x0f\x09\x0b\xb2\x3b\x4d\xe3\xdd\x10\x7d\x6e\xf5\x9d\xa6\x41\x9a\x29\xee\xf7\x41\x30\x77\x47\xe0\xb5\xde\x82\x06\x3d\xd1\xef\x79\x7d\x9b\xe1\x83\xdb\x67\x61\xf2\x3c\x78\x4e\x22\x9d\x4c\xbb\x91\x4e\xf6\xd3\x84\x05\x8c\x64\xfd\xbd\x92\x79\x13\x41\x18\x32\x85\xa4\x8a\xff\x56\x6c\x38\x15\x8a\x85\xce\x6f\x9a\x14\x06\xca\x86\xd2\xe0\xce\xd4\x9e\x61\xcd\xa2\x34\x10\x5a\x35\xc2\x6f\x76\x41\xfb\xf2\xbd\xf0\x88\x29\x1d\x6a\x37\x4c\x74\xe5\x9c\xa2\xd7\xe5\xb2\x8e\x0d\xff\x2f\x5f\x66\x98\x79\x57\x9e\xea\xf6\xa4\xc6\xec\x29\xeb\x52\x70\x23\xd9\xb5\x37\x9a\x21\xe1\x54\x87\x06\x26\x3f\x82\xe3\x65\x72\xb5\xf5\x22\x0f\x09\x2c\x2a\x41\x89\x1b\x0d\xa2\x36\x48\x23\x45\x5f\x1c\x0b\xd6\xb3\x60\x8a\x05\x2e\x2f\xad\x43\xae\xcb\x76\x4b\xb1\x83\x7d\x6b\x3f\xf3\x68\x4c\x33\xb6\xff\x4d\xba\xfe\x9b\xf0\xf2\x31\x8d\x24\xe9\xfa\x3f\x5e\x7a\xf7\x2e\xb7\x3b\x94\x74\xfd\x07\xe3\x60\x32\xe5\x43\xaa\x21\xdc\x6a\xb7\x24\x4f\x24\x11\xb4\x9b\x76\x2e\x8d\x82\xb8\x58\x10\xae\x04\x79\xd9\x68\xf0\x46\xc3\x8a\x66\x93\x63\x2e\x0c\x94\x64\x64\xf7\x4d\xe0\xd5\x93\x22\xbb\x04\x4f\xc9\xe4\x25\x7f\x49\xdd\xef\x6f\x89\x1f\x96\x6f\xe7\xcf\xc8\x7c\x2f\xa7\x8f\xee\xb7\x61\x1c\x71\x7f\xcb\x5d\xf8\xe9\x93\x97\x86\xeb\xe2\xbd\xc8\xb6\xfb\x8b\xea\x85\xfd\xfa\x92\x29\xbc\xaf\x3f\x54\xd3\x34\xbb\x72\xea\xf5\x7c\xca\xd3\x6b\xa7\x1e\x47\x67\xc1\x38\x1c\xde\x0c\xa4\xe4\x93\xa9\xbc\x29\xe3\x9b\x9a\x30\xf8\xcd\x28\x8e\x1c\x7c\x3e\x1e\xf3\x9b\x61\x94\xc8\x20\x1a\xf0\xd6\x6f\xd1\xe3\xe8\x66\x2c\x86\x5c\xa8\xbc\xc7\xfc\x66\x96\x05\xb0\x40\xa0\x90\x76\x53\xc7\x75\x4e\x6e\x4e\x66\x89\xbc\x79\x1a\x9c\xf1\x9b\xc1\xcd\x25\xba\x23\xf4\xe6\x84\xcb\xd3\x78\xd8\xb2\xf4\x0c\x8e\x21\x60\x5b\x2e\x24\x2c\xbf\x9c\xfc\x5b\x52\xc2\x48\x0d\xf1\x2a\x06\x33\x5a\xe6\xad\x44\x2b\xe2\x17\xc6\x65\xa8\x01\xe3\x2d\x85\x32\xe0\x55\x1c\x25\xaa\xca\x98\x21\x92\xcc\x0d\x53\xcc\xbf\x05\xd9\x9c\x11\x2d\x0d\xe6\xf2\x32\x7b\x22\x74\x31\x0a\xa3\x60\x3c\x9e\x7f\xc3\xfb\x91\x35\x6e\xe3\xc5\x62\x51\xac\x56\x29\xbd\x7c\xcb\xee\x8a\xbf\xbc\x94\x7b\x39\x59\xa4\x57\x8f\xa6\x6f\xb9\xcb\xbf\x60\x2e\x44\xe5\x55\x40\xec\xca\x1d\x61\xdb\x54\xad\x23\xe8\x3a\x90\x5f\xf0\x5a\x54\x35\x95\xd5\xfb\x72\x8d\x00\xc9\x93\x42\xc5\xc1\x7a\x79\x69\xd9\xfa\xcc\xe7\x18\x79\x4b\x7d\x39\x93\xcb\xe1\x9b\xc6\xa4\xd7\xa7\x20\xd9\x48\x82\x60\x03\x09\x11\x9b\xca\x62\xe9\x09\x49\x16\x42\x44\x5f\x98\xc6\xcc\x09\xb7\x22\x9a\xdf\x44\x52\x18\xb3\x59\xb6\xdc\x0d\x98\xe3\xc1\x88\x0d\x25\x09\xe9\x0d\x85\x70\x85\x85\x51\x2b\x21\x74\x67\x8b\x24\x6c\xd4\x8a\x08\xa5\x38\x6c\x3b\xba\xaa\x21\x4b\x74\x84\x39\xad\x7e\x60\x2e\xd8\xf6\x60\x27\xde\x1d\xe3\x72\x4d\x66\xbd\xb8\xdf\x1b\xf4\x59\xcf\x05\x3b\x22\x43\x50\xef\xaa\x97\x30\x80\x90\xf6\x69\x6b\x18\xc8\x80\x0d\x17\x8b\x41\x80\xfb\x3d\xfd\x36\x6a\x69\x5d\x51\x3a\x92\xa3\xd6\x48\x8d\x6b\x0a\x3a\x60\x0f\x88\x24\x33\x4a\xf3\x0a\x66\xbd\x40\xed\x02\x2d\x0c\x95\xc7\xe2\x7c\x41\x26\x33\x08\x28\xcc\x32\xc5\x70\xa8\xea\xfc\xfd\x37\x13\x18\xf8\x54\xf2\x68\x88\x6e\xe0\x61\x35\xc2\xde\xef\x08\xa2\x13\x62\x10\x9d\xb0\x85\x93\x79\x53\xcf\xf2\xcc\x0b\x7c\x24\x57\x47\x07\x2d\x2d\xbd\x58\x8f\xc4\x7a\x46\xa3\x64\xf3\x90\x41\x59\x45\x03\xe9\x73\x05\x42\x2c\x20\x5c\xc0\xbc\x6e\x93\x8f\x8c\x4d\xde\x2d\x36\xd6\x6c\x97\x77\x71\x03\x77\xfb\xc5\xf6\x1e\xe8\x90\x1a\xa8\x03\x63\x7a\x4f\x8f\x70\x4f\x0f\x6d\x9c\x61\x8a\x8e\xbc\xfe\xe5\xa5\xab\xb6\xd4\x10\xf9\x00\x33\x57\x91\xa5\xcd\xc2\xc5\x40\xa6\x01\xcd\xe1\xb8\xae\x71\x49\xa9\x71\x95\xb6\xa5\x53\xc7\x85\x71\xc6\x87\x64\x8d\x9c\x21\xcd\xcd\xa8\xa6\xc6\x80\xb9\x25\xde\x83\x84\x4c\xf5\xba\x27\x7b\xa2\xdf\xef\xcd\xfa\xb4\xe7\xf5\x1d\x25\x6c\xd1\x3d\xb7\x8b\x52\x17\x8b\x51\xd8\x62\xb1\xcd\x42\xea\x87\xbb\x98\xec\xf5\x59\x00\xf8\xf5\xff\xa3\xed\xdd\x9f\x1b\xb9\x8d\x7f\xd1\xdf\xfd\x57\xac\x75\x53\x7b\x39\xd2\x88\xee\xc6\x1b\x8e\x79\x5c\x7e\xc5\xf1\x39\xb1\xd7\x5f\xaf\x9d\xc4\xc7\xb5\xe5\x6a\x00\xdd\xbb\x8c\x25\x6a\x43\x51\x5e\x6f\x12\xfd\xef\xb7\x80\x21\x29\x4a\x9a\xd1\x7a\x73\x6d\xb1\xea\x23\x72\xa6\x5f\xd3\x00\x1a\x0d\x72\x06\x4d\xed\xf0\x40\x09\x03\xe5\xb2\xbb\xee\x9f\x8f\x5d\xc1\x7a\xd2\xbd\x6d\x32\xdb\x25\x50\x17\x8b\xe5\xce\xf8\xd5\x07\x17\xad\xfa\xfb\x9e\xb6\xda\x7f\xb9\x80\xed\xba\x91\xba\xcb\xea\x67\x7a\xf6\xc3\x6a\xef\xe7\xe1\xed\xc9\xa2\xbd\x81\x67\x8b\xd3\xcb\xf7\xd4\x81\x6b\x7f\x7c\x53\x72\x57\x17\x02\xab\x45\xb5\x75\x30\xa7\x7b\x53\x8f\xa8\x8b\xd8\x55\x33\x66\x7f\xfa\xb2\xd5\xaf\xaf\x8d\x01\x7f\xbc\x6c\x39\xe0\xe5\xcd\xc9\xdc\x24\x5f\x3e\x7b\xd6\xcb\x22\x57\xdb\x9b\xe1\x7d\x59\xcc\xe4\x74\x96\x7f\xa0\x53\xdc\x1e\x6a\x85\x4f\x5e\x2c\xe0\x8f\x2f\x5a\x63\xbd\x18\x42\xd7\xcb\xc6\xfe\xe2\xd9\xb3\x77\xca\xc9\x62\xf6\x72\x2f\xa0\x3b\xad\x1f\x6e\x98\xaf\xaf\x4e\x16\xd2\x9f\x9d\x2c\xca\xb1\x5c\xaf\x77\x67\x4e\x16\xdb\xb7\xad\x61\xaf\x1e\x3f\x9e\x5d\x9c\x2e\xce\xde\xbb\xea\xa6\x48\x6e\x3c\xf7\xea\xf6\x88\xdb\x65\x9c\xe7\xf4\x72\xf6\xd9\x66\x3f\x3f\xca\xa6\xa5\x63\x0f\x6c\x5a\xfa\x03\x3f\x3b\xad\xdd\xed\xba\x3b\xcc\xd9\x3f\xdb\xdc\x4a\x65\xfb\x75\x0d\xe9\xdb\x7e\xb1\x0b\xf3\x17\x8b\x53\x7c\x0f\x6a\xbf\xfd\x60\xf9\xc7\x6e\xb6\x59\x9c\xf0\x36\x47\xfe\x5f\x17\x6d\x87\xf4\x3a\xb5\xac\x6f\xea\x96\xb7\x09\xe9\xe9\xb4\xd9\x4f\xfe\xff\x9b\xfd\xe4\x9e\xd9\x75\xda\x3d\xc5\x03\xb3\x6b\x07\xbe\xb1\xb7\xf5\xce\x3a\x69\xaf\x4f\x16\x37\xea\xd7\xcd\xd4\xf1\x2d\x34\x9e\x36\xd3\xd6\xbc\xad\xa0\x7e\xdd\x7f\x34\x72\x45\xb7\x7e\x72\x68\xca\xb7\x17\xd8\x5f\x2c\x5e\xb5\x6f\x5e\xb6\x23\xa7\xbf\x5a\xfc\xf0\xac\x3f\xab\xf3\x77\xb5\x7a\xfb\x15\xfb\xf6\xeb\xfe\x8b\x1f\x36\xcf\x7a\xfa\xe0\xf2\xc3\x59\x1d\xd6\x3f\xac\x9f\xf5\x57\xc3\x97\x16\xeb\x56\xb4\x69\x7b\xec\x6c\x7f\x6c\x67\xfe\xd9\x8d\x79\x35\xab\xce\x54\xa7\xbb\xeb\xfe\xdb\xd1\xeb\x91\x3b\xd7\xb3\xab\x2f\x4e\xeb\x3c\x5e\xea\xfa\xa0\x86\x34\xad\x99\x46\x89\xfe\x74\x58\x58\x7c\xb9\x1a\xaf\x46\xfd\x97\xc3\x82\xdd\xcb\x71\x9a\x8f\xef\x68\xfb\x86\xca\x72\xa2\x4c\xf9\xe7\x07\xa4\xeb\x46\xf6\xd1\x94\x79\x9f\xdf\x31\xef\x01\xa9\x7f\xb8\x27\xf5\x2f\x53\xd7\xf3\x87\xbb\x05\xc8\x1f\x10\xfb\xfd\x6d\x0b\x7e\xfa\xf3\xc5\x7a\xf9\xaf\x8b\xd5\x66\x82\x7c\xc3\x77\xe8\xff\xca\xeb\xcd\x72\xaa\x60\xfb\xfa\x2e\xf5\x03\x86\xac\x6e\x95\x23\x1f\xaa\xbf\xbc\xb9\x18\x7a\xa3\x1b\xaf\xae\xfe\xe3\x7d\xc2\x4f\x96\xeb\x3c\x51\x91\x7c\x39\x42\xbd\xbe\xb8\x1c\x17\x7d\x71\x9f\xf8\xd3\x25\x9d\x5f\xac\xca\x78\x75\xfb\xfb\xe4\x4f\xff\x79\x45\xeb\x71\x4b\x5e\x8c\x50\x6f\x68\xbc\x32\x7b\xb9\x4f\xfb\xed\x7a\xd9\x76\xab\x1b\x2f\x8c\x7f\x9f\xfe\x6f\xaf\xc7\x49\x9f\xdf\xaa\xdd\x7f\xb5\xfe\x99\x3f\xa6\xcb\xe5\xe5\x27\x67\x17\x97\x3c\x7e\x99\xdf\x8e\x73\x3c\x79\xc9\xe3\x05\xe8\xbf\x1c\xa7\x1f\xa5\xfd\xe5\x3e\xed\xd5\xaa\x4c\x5c\xe5\x3f\xee\x11\x7f\x42\xeb\x52\x73\xf0\x07\xac\xff\x6a\x92\x69\xf2\x02\xfe\x34\xc9\x32\x4a\xfe\xc5\x08\xf9\xe6\xfc\xea\xec\xec\x9b\x8b\xf3\x07\x0c\xfb\xeb\x03\x6c\x93\xa6\xfd\xed\x01\xa6\xf1\xf8\x76\x8f\xa1\x86\x17\x5a\x3f\x60\xd8\xe7\x13\x2c\xe3\x17\x7f\x97\xf6\xcb\x8b\xd5\xc5\xe6\x62\xc5\x7f\x1f\x8f\x33\x9b\x29\xfa\xef\xc7\x23\xcd\x3d\xfa\xaf\x68\x73\xb5\x9e\x68\x89\x8b\x7b\xd4\x4f\x37\xfc\x72\x94\xf4\x72\x94\xf4\x23\xd9\xf0\xf8\x75\x9e\x8d\xd2\x7f\xcc\x72\x31\x31\xdc\xaf\x0e\x19\x2e\x37\x94\x7f\x1a\x25\xfb\xf9\x1e\xd9\x93\xb6\xda\xf9\xec\x97\x97\x34\x11\x76\x5e\x4f\xb0\x7c\xba\xfc\x99\xd7\xcf\x97\xab\xe7\xa3\x5c\x69\x82\xeb\xab\x8b\x89\xd9\x26\x4f\x30\x3c\x5d\x9e\xbd\xb8\xb8\xe2\xcd\x66\x22\xbe\x4c\xb0\xfd\x6d\xf9\x7c\x2a\x7a\xfd\x78\x9f\xa5\xae\x2c\x3f\x7a\xf9\x92\x69\x4d\xab\x3c\xce\xf5\x6a\x82\xeb\x32\xf3\xaa\x4c\x79\xe1\xe9\x38\xd3\xa7\xfc\x20\xd7\x2f\xe3\x5c\x5f\xac\x2e\x97\x85\x9f\x5c\x6d\x46\x99\x3e\x1a\x67\x9a\xf4\xb7\x8c\xd3\x7f\x33\x24\x4e\xe3\x91\xb9\xb2\x5c\xf7\xb7\x7f\xe9\xec\xfe\x7d\x74\x75\xc9\x8f\x2e\x37\xeb\x65\xde\x1c\xbd\xb3\x9e\xaf\x67\x9b\xdd\x77\x88\x0f\x7f\x8d\xfc\x9e\xfb\x0f\xdc\xf9\x2a\xb9\xa6\xe4\x7f\x5c\x7d\xb0\xf9\x63\xb7\xfe\x61\xf5\x6c\x71\xf4\xff\x1c\x9d\x6c\xeb\xb2\xcd\xdc\xf1\xaa\x77\xc7\x75\xb5\x76\x93\xd5\xf6\xcb\xc5\x6a\x76\x84\xe2\x7d\x32\x22\x5e\x80\x55\x26\x50\xb9\x38\xe5\x55\x88\xc6\xf9\x54\x42\xb6\xce\x24\xd6\xde\x67\xe5\xa5\xbe\x52\x4e\x45\x29\xf4\x89\xb3\x1c\xb5\xfb\x65\x66\x47\x5e\x72\xf4\x92\x98\xb8\x18\x29\x19\x82\x13\x11\x89\x51\x07\x97\x13\x08\x80\xf2\x92\xc4\x26\xf4\xae\xfd\x1d\xb5\x1b\x6b\x66\x47\x98\x22\x7b\x5f\xa2\x15\x50\xde\x7a\x48\x9a\xbd\x8a\x81\x9c\x23\x87\xcc\x8e\x12\x28\x72\xde\x61\xd9\xf3\x5d\x56\x3e\x72\x99\x59\xa3\xf8\x90\x4c\x52\x45\x02\x69\x5d\x2d\x97\x14\x29\x46\xd6\x48\x98\xa5\x24\xa9\x66\x78\x01\xc8\x94\x54\x71\x8e\x74\x89\x34\x58\x96\xd0\x46\x15\x8e\xba\xfe\xaa\xca\x93\x94\x0c\x71\xd2\xb9\xb0\xce\x99\x53\xb6\x85\x73\x62\x23\x5c\x22\xb5\x6b\xc9\x99\x6d\x09\xa9\x48\x29\xc4\x59\x54\x7d\x1d\x75\xfd\x59\xe5\x4e\x9a\x55\x2e\x52\x72\xa1\x9c\x53\xb1\x1c\xc4\x64\x62\xc3\x4e\x6c\x8e\x22\xa2\x88\x05\x59\xe5\xed\xdf\x51\xd7\xe7\xca\xc7\xa6\xda\xa9\xbd\xe7\x14\x4c\x21\x31\x14\x83\x61\xd2\x83\xcd\x55\xab\xd6\xe4\xac\x53\x41\x7c\xc0\x24\xb1\xfd\x1d\x75\xbd\x54\x6e\xe7\xb2\x22\x2b\x39\x14\xa7\x42\x21\xc8\x89\x7d\xa0\xac\xc9\x95\x60\x8d\x48\x89\x4a\xd8\x66\x13\x4d\xd2\xf5\x75\xd4\xf5\xa5\xf2\x85\x52\x74\xf6\x55\x7a\xd2\x89\x13\x15\x92\x14\xc0\xab\x00\x09\x8b\x96\x92\x8c\x53\x49\x17\x76\x51\x72\x2e\x6c\x4b\xac\xaf\x94\x03\xa4\x32\xf8\x46\x84\x8b\xab\x6d\xff\xa2\xca\x33\xec\x23\x79\x51\x81\x55\x66\xb4\xde\x46\xef\x92\x4f\xca\x46\xc2\xea\xc0\x1c\x4d\x24\xf1\x44\x28\x12\x0b\xf9\x98\xbd\xb5\x92\x28\x01\xa5\xa3\xae\x7f\xb9\x58\xcf\x34\x74\xfd\xf9\xd8\x6a\x64\xf8\x95\x60\xf6\x72\x9e\xba\x19\xff\x70\x73\xd3\xd6\xb3\xee\xba\xff\xf9\xa0\xeb\xeb\xfd\xca\xe6\xa8\x84\xa4\x9d\x95\xf6\xb2\x94\x0c\xe5\xa3\xfe\x88\x9c\x43\xa4\x22\x59\xf9\x12\x20\x97\x8c\x80\xc1\x7a\xbc\x73\x6a\xe0\xba\x43\x10\xb2\x45\xa0\xad\x58\xc7\x21\xeb\xec\x99\x78\x2b\x1c\xd0\x39\xcb\xa3\x64\x83\xb4\x07\x88\x93\x04\x54\x65\xab\xfa\x40\xf2\x60\x80\xb6\xd1\x07\x79\x23\xcb\xa1\x96\x51\x46\x6b\x34\x80\x7d\x5b\x8d\x00\x3a\x6b\x78\x23\xfb\xc3\xda\xb7\x42\xba\xb6\xdc\x5d\x75\xfd\xeb\xc5\xf9\xec\xe7\xdb\x35\xc5\x0e\x5a\x8e\x24\x94\xac\x5b\x8c\xf1\x35\x5c\xf8\x74\xd4\x1f\xf9\xa4\x55\x34\xb5\xa7\x67\x21\x57\x12\x01\x40\x08\xda\xdf\x39\x35\x70\xdd\x25\x70\x8a\x82\x1e\xc4\xb2\x2f\x86\x43\x89\x02\x45\x0f\xc2\x31\xf9\x29\xb2\x41\xda\x03\xc4\x31\x7a\xa0\x34\xa8\x3e\x94\x3c\x18\x60\x89\xd8\xe1\x1b\x59\x0e\xb5\x8c\x32\x1a\x00\x30\xe9\x6d\x35\x02\x18\x83\xe9\x8d\xec\x0f\x6b\xdf\x0a\xd9\xb7\xdc\xf3\xc5\xf9\x2c\x75\xfd\x8f\xe3\x2d\xc7\x91\x74\x8e\xdb\x36\xc0\xe2\x1d\x1d\xf5\x47\x05\x30\x87\x24\x98\x5c\xa1\x14\x18\x83\x33\x85\xb2\x72\x77\x4e\x0d\x5c\x77\x08\xb2\xc5\xe4\xcb\x56\x6c\x61\x60\xa9\xb1\xb4\xc0\x20\xdc\x94\xa8\x14\x8e\x92\x0d\xd2\x1e\x20\x2e\xec\x7d\x8d\xc6\x4d\xf5\x81\xe4\xc1\x80\x3a\xbb\x19\x7c\x23\xcb\xa1\x96\x51\xc6\xc0\x80\x56\xbd\xad\x46\xe5\x9d\xc1\xf8\x46\xf6\x87\xb5\x6f\x85\xec\x5b\xee\xd5\xe2\x7c\xf6\x63\xd7\x7f\x36\xde\x72\x31\x06\xde\x8d\x39\x41\xd2\xa6\x0d\x79\xd6\x39\xc6\xa4\x28\x15\x25\x25\x05\xa7\xd9\x39\x04\xbc\x7b\x6a\xe0\xba\x43\x60\x94\x0f\x61\x10\x5b\x42\x21\x4e\xc2\x0c\xc9\x0d\xc2\x93\xb6\x01\xdc\x38\xd9\x20\x6d\x9a\x38\x80\xd7\x94\x07\xd5\xb7\x24\x0f\x06\x40\x50\x68\xde\xcc\x72\xa8\x65\x8c\x51\x95\x3a\x68\xde\x56\xa3\x17\x9d\x20\xbc\x99\xfd\x41\xed\x5b\x21\xfb\x96\x7b\xba\x38\x9f\x7d\xd6\xf5\x4f\x26\xc6\x9c\x04\x72\xdb\x36\x70\x9e\x62\x96\xda\x61\x09\x40\x81\x18\xb2\x41\x45\x55\xb3\x18\xb0\x1e\x13\xdc\x39\x35\x70\xdd\x21\x48\x0a\x83\x4a\x5b\xb1\xa5\xa4\xec\x0b\xb2\x15\x18\x84\x2b\x74\xae\x4d\xa5\xf7\xc9\xb6\x91\x64\x9a\xb8\x38\x07\xa6\x6c\x55\x1f\x48\x1e\x0c\x30\x3a\xea\xac\xdf\xc8\x72\xa8\x65\x94\xd1\x79\x00\x94\xb7\xd5\x08\x56\x83\xc3\x37\xb2\x3f\xac\x7d\x2b\x64\xdf\x72\xbf\x2c\xce\x67\x4f\xba\xfe\xa3\x07\x5b\x4e\x86\x44\xb4\xa5\x74\xb7\x9b\x27\x51\x7d\x19\xa8\xaf\xbb\x2d\xd7\xfe\xee\x10\xdc\x6f\x12\x86\xfa\x1a\x84\x9b\x52\x5f\xe3\x2d\xd7\xfe\x1e\x20\xbe\xef\x88\x81\x78\x30\x20\xf8\xfa\x7a\x23\xcb\xa1\x96\x51\xc6\x87\x5d\x3f\xc5\x88\x54\x5f\x6f\x6e\xb9\x07\xb5\x6f\x85\xec\x5b\xee\xdb\xc5\xf9\xec\xa3\xae\xff\x69\xbc\xe5\x6a\xb2\x6d\x63\x6b\x01\x89\x98\xa4\xd4\x69\xb6\x78\x8c\x75\xb5\x51\x27\x4f\x4a\x25\x72\x54\xd9\xa7\xe4\xee\x9c\x1a\xb8\xee\x11\xe8\xba\x34\x1a\xc4\x32\x43\x04\x06\xd1\x12\x06\xe1\xc6\x7a\x9b\xcc\x28\xd9\x20\xed\x21\x62\xe3\x8a\xd1\x5b\xd5\x07\x92\x07\x03\xbc\xa1\x52\xf0\x8d\x2c\x87\x5a\x46\x19\xc9\x02\x28\xf7\xb6\x1a\x35\x6a\x17\xed\x1b\xd9\x1f\xd6\xbe\x15\xb2\x6f\xb9\x2f\x17\xe7\xb3\x9f\xba\xfe\xeb\x5f\xd3\x72\x59\x1c\xdc\x6d\x39\x57\xa2\x23\xa4\xe8\x0c\x8e\xb7\xdc\x5d\x82\xdb\x4d\x12\xaa\x81\x12\xd2\x20\x1c\x29\x06\x0b\xa3\x64\x83\xb4\x87\x88\xef\x38\x62\x27\x79\x30\xc0\xb9\x54\x9c\x7e\x23\xcb\xa1\x96\x51\xc6\x87\x5c\x3f\xad\x11\xc0\x0d\xa9\xe9\xc3\xec\x0f\x6b\xdf\x0a\xd9\xb7\xdc\x3f\x16\xe7\xb3\xaf\xbb\xfe\x93\x5f\xd1\x72\xb1\xd8\x68\xee\x8f\xb9\x42\x46\xa5\xa0\x13\x4d\x8d\xb9\x5b\x04\x56\xb3\x91\xc3\x26\xa9\xa9\x54\x0c\x83\x70\xad\x42\x48\x65\x94\x6c\xdb\x1f\x1f\x20\xbe\xe7\x88\x81\x78\x30\x60\x58\xaf\xbf\x91\xe5\x50\xcb\x28\x63\x64\x40\xa3\xde\x56\xa3\x65\x23\xa4\xde\xc8\xfe\xb0\xf6\xad\x90\x7d\xcb\x7d\xb3\x38\x9f\x7d\xd2\xf5\x5f\x4c\xcc\x73\x75\x6d\x18\x63\x2c\x21\x47\x95\x49\xd9\x9a\xa1\x70\x91\x20\x29\x29\x56\xac\x9a\x68\xa3\x74\x48\xc6\x8e\x9f\x6a\x5c\x00\xae\xa8\xbc\x27\xc8\x99\x33\xbb\x41\xec\x5b\x91\x19\x24\xf6\x6e\x50\x57\x97\xb4\xaa\xf6\x24\xf1\x92\xa5\x0c\xa6\xfe\x0e\x2c\xd5\xa4\xbb\x6b\xa9\x4f\x17\xe7\xb3\x2f\xba\xfe\xab\x09\xaf\x01\x67\x31\x91\x53\x2e\x14\x82\x75\xe4\x6f\x5c\xd3\xbe\x9f\xaa\x9a\xb2\x0b\xc1\x60\x2c\x13\xa7\x2a\x57\x40\x10\x7f\xe3\x8e\x24\x45\xb3\xdb\x8a\x7d\x2b\xb2\xec\x52\xc2\x41\x9d\x63\x40\x97\x6e\x5c\xd0\x4c\xfd\xcd\x59\x06\x93\x4c\xcb\xa4\x6f\xbc\xf6\x97\xc5\xf9\xec\xab\xae\xff\xd3\x94\xd7\x44\x97\x44\xa1\x94\x64\x8d\x26\x95\xeb\x48\x17\x90\xc8\x21\x11\x9b\x94\x7d\xca\x39\xd7\x20\x90\x13\x8f\x9e\x1a\xb8\x20\xb8\xd0\xb2\xc9\x81\x60\xf8\xbe\x6b\x10\xfb\x76\x64\x9c\x74\xd1\x83\x3a\x08\x36\x44\xde\xb9\x00\x06\x53\x7f\x07\x96\x6a\x12\x04\x03\xe1\x20\x13\xfd\xd7\xe2\x7c\xf6\xa7\xae\xff\x6e\x22\xb6\x32\x87\x1c\xa4\xa4\x14\x0c\x6b\x43\x5a\x57\x95\x2c\x50\xa2\x94\x9c\x03\x0d\xe1\xaf\x86\x79\x94\xd1\x53\x03\x57\xd2\x00\x00\x07\x04\xc5\x44\x1e\xc4\xbe\x1d\x99\x38\x6b\xc2\xa0\x2e\xc6\x1d\xb1\x88\xe7\xbc\x33\xf5\x37\x66\x19\x4c\xf2\xd2\x18\xf7\x5e\xfb\x78\x71\x3e\xfb\xae\xeb\xff\x3c\xd1\xd7\x32\x2b\x01\x72\xa9\x94\x84\x39\x42\xcb\xdf\xc5\xd5\x85\x79\x2a\x39\x32\x0e\x8b\x20\x50\x01\x03\x8d\x9e\x1a\xb8\x00\x5d\xb6\x37\xbc\x05\x0a\xb2\x1b\xc4\xbe\x15\x99\x76\x11\x32\x0c\xea\x00\x9d\xb1\x3b\x17\x48\x1a\x4c\xfd\x3d\x58\xb2\x8d\x80\xc6\x69\x77\xe3\xb5\xbf\x2e\xce\x67\x7f\xee\xfa\x7f\x4e\x7a\xcd\x8b\x1a\x24\xde\x0c\x43\x64\x16\x37\xb8\xc6\x9b\xe6\x35\xeb\xa1\x2d\x47\xef\x9f\xda\xf6\x73\x53\x87\xc0\x9e\xe0\xd0\xd0\xb7\x22\xdb\x5e\x4f\x53\x07\xda\x70\xfb\xb6\x71\xef\x02\x2f\xea\xb7\x67\x69\x26\x81\xd2\xc1\x1e\xac\xf2\xff\xb6\x38\x9f\xfd\xb3\xeb\xff\x30\xe1\x35\xcf\xc8\x92\x63\x34\xd9\x97\x82\xd9\xfb\x9b\x4b\xf2\xc9\x96\x50\xc4\xd9\x04\x99\x51\x59\x37\x7a\x6a\xe0\x8a\x01\xc0\xe8\x1b\x02\x93\x62\xa1\xad\xd8\xb7\x21\x1b\x7e\x9e\x19\xd4\x45\x04\xd0\x32\x04\x29\x23\x71\x30\xf5\xb7\x67\x69\x26\x0d\x6b\xbc\x1b\xaf\x7d\xbe\x38\x9f\xfd\xa1\xeb\xbf\x9f\x88\x6b\x85\xa1\x14\xa1\x28\xc9\x66\x8b\x69\x18\x86\xcc\x89\x95\xa4\x64\x52\x14\xef\x02\x21\x31\xa0\xe7\xd1\x53\x03\x97\x27\xc0\xc1\xe3\x03\x41\xce\x36\xc3\x20\xf6\xad\xc8\x4a\xd1\x26\xfa\x41\xdd\x0d\x71\xed\x38\x7a\x6b\xea\xef\xc3\x62\x22\x80\x3b\x58\xdd\xfe\x9f\xc5\xf9\xec\xfb\xae\xff\x9f\x89\xbe\x56\x24\x24\xf4\x92\x4b\x4a\x2a\x7b\x49\x61\x50\x29\x39\x13\x16\x4a\x35\x8b\x71\xd9\x28\x65\x99\x26\x4e\x35\x2e\x65\xb5\x69\x59\xfa\x40\x90\x3d\xc7\x64\x06\xb1\x6f\x45\x86\x25\x62\x86\x41\x1d\x64\x95\xc3\x8e\xb8\xc4\xc1\xd4\xdf\x9c\x65\x30\x09\x02\x96\xc3\x11\xfa\xbf\x17\xe7\xb3\xff\xe9\xfa\xbf\x4f\xf4\x35\x2f\x39\x45\x2a\xa5\x04\xd6\x48\xda\x1e\x5c\x92\xaa\xa9\xa1\x0f\xd9\xf9\xa8\x74\x30\xc3\xc8\xba\x77\x6a\xe0\xda\x2f\xad\x06\x82\x12\x05\x48\x0f\x62\xdf\x8a\xcc\x20\x25\x5b\x06\x75\x00\x96\xb4\xda\x12\xb3\x1d\x4c\xfd\x1d\x58\xdc\xf0\x8b\x81\x55\x07\xdf\x3b\xff\xdf\xc5\xf9\xec\xef\x5d\xcf\x3c\xe1\xb6\x3a\x25\x66\xe1\x6c\x8c\xb4\xdf\x7f\x79\xd7\x52\xed\x47\xd7\xc0\xc2\x31\xaa\x98\xb3\xc9\xa0\x46\x4f\x0d\x5c\x31\x6a\x03\xe6\x80\x80\x75\xc4\x41\xec\x5b\x91\x71\xf6\x80\x66\x50\x17\xb2\x2a\x7b\x62\xb6\x3b\x53\x7f\x63\x96\xc1\x24\xe7\x94\x85\x83\x49\x74\xc3\x8b\xf3\x19\x73\xd7\xaf\x27\x1d\xc7\x85\x40\x38\x29\x93\x05\x74\x52\xdb\xa9\x5b\x92\x12\xae\x31\x41\x4a\x28\x3a\x0f\xbf\x81\x8f\x9e\x1a\xb8\x52\xa9\x2b\xf8\x03\x82\x12\xbd\xdb\x8a\x7d\x2b\xb2\x6c\x58\xd1\xa0\x2e\xe1\x01\x71\xce\x3b\x53\x7f\x6b\x96\x66\x52\x80\xc6\xb8\x77\xdc\xaa\x3a\x6e\xcd\x5d\xbf\x9c\x70\x5c\x61\x4e\xe2\x23\x67\x62\xd4\xed\xbb\xc2\xba\xea\x11\xd1\x22\xa9\x14\xcf\xde\x25\xe2\xe2\x14\x7a\x4c\x76\xf4\xd4\xc0\x05\xc1\x62\xcc\x7b\x82\xec\x4a\x62\x19\xc4\xbe\x15\x99\x51\x51\xe5\xad\x3a\x08\x66\xf8\x62\xa3\xe6\x12\x22\x83\xa9\xbf\x03\x4b\x35\x09\x82\x06\x77\xb0\xb0\xba\xa8\x8e\x5b\x72\xd7\xd3\x84\xe3\xea\x4a\x97\x81\xb0\xc4\x98\xf6\x11\xae\x86\x53\x8e\x6d\x01\xa5\xbd\xc9\x66\xb7\xe4\x1d\x3d\xb5\x0f\x5d\x37\x0b\x74\x8e\x35\x14\xe7\xad\xd8\xb7\x22\xdb\xc7\x9e\x61\x51\xbe\x0d\x57\x75\xa1\x64\x07\x53\x7f\x07\x96\xb1\x75\xfc\x65\x75\x1c\x71\xd7\x5f\x4d\x0d\x55\xa8\xaf\x54\xea\xcb\xe9\xfa\x1a\xb4\x7a\xf1\xc3\x8d\x20\xd1\xd5\x97\x55\xf5\x35\x7a\x6a\xe0\x6a\xe7\xed\x9e\x60\x7b\x43\x46\x13\xfb\x56\x64\x5e\xd7\xd7\xa0\xee\x86\x78\xf8\x6b\xa6\xfe\x4e\x2c\x00\xb7\x97\x57\x67\xd5\x71\x57\xdc\x6a\xf2\x4e\xfc\x42\xc2\x45\x6c\xca\xa9\x94\xec\xad\x4b\x09\xab\x56\x25\x20\x3e\xa7\x1c\x59\x45\x8e\x94\x83\x23\x8b\xa4\x47\x4f\x0d\x5c\xed\x77\x38\xd9\x13\x14\x2a\xc4\x69\x10\xfb\x56\x64\x01\x7c\x49\x34\xa8\x33\x84\x26\xb4\x80\x95\x25\x49\x19\x4c\xfd\xcd\x59\x06\x93\xb4\x00\xf8\x72\xe3\x38\xa9\x8e\xcb\xdc\xf5\x65\xaa\xc7\x31\x43\x51\x92\xa3\xf2\xaa\xb0\x2a\x43\x64\x65\xb6\x25\x4a\x26\x8e\x28\xc9\x91\xa1\x9c\x30\x60\x19\x3d\x35\x70\x91\x05\x41\x7b\x40\x90\x12\xe1\x20\xf6\xad\xc8\x58\x74\x52\x79\x50\xd7\x56\xe7\x65\xe8\x3e\x56\x60\x67\xea\x6f\xcc\x32\x98\x54\x97\x0b\x70\xe0\xb8\x17\xd5\x71\x85\xbb\xfe\xe5\xb4\xe3\x5c\xe6\xf6\x4d\x68\x62\x67\x2d\x6c\xbd\x53\x0a\x4b\x49\x1c\xec\x30\x0d\x95\x68\x7c\xfb\x99\xfb\xfe\xa9\x81\x8b\x9c\x76\xa0\x0f\x08\x0a\x90\x1a\xc4\xbe\x15\x99\xa0\x8b\xa8\x4b\x34\x01\xf0\x30\xb7\xb0\xed\x37\xe8\x66\xea\x6f\xcc\x32\x98\xe4\x45\x79\x30\x37\x8e\x3b\xaf\x8e\x7b\xc9\x5d\xff\xf3\xe8\xc3\x88\xdb\xea\xcb\xe7\xf4\xcb\x0c\xfa\xfd\xee\x68\xd8\x73\xd7\xf5\x47\xeb\xe7\x69\x76\x74\x32\x46\xa0\xac\x1d\x3e\xac\x2f\xae\x56\x65\x76\x6a\xe6\xd6\x9c\xf2\xf1\x4c\xdb\xb9\x6e\x6f\x94\x0e\x38\xf7\xba\xbe\x75\x06\xd4\xdc\xd7\x77\x1e\x94\x99\x7b\x75\xaa\x3c\xc2\xdc\xfa\x63\xee\x86\xbf\x93\xa3\xfe\xd1\xaf\xd2\xa3\xd5\xdc\xc4\x13\x3e\x9e\xa1\x87\xb9\xd7\xf5\x9d\x55\xf3\xa0\xaa\x70\xd4\x38\x37\xae\xbd\xf3\x6e\x6e\xc3\xa9\xf3\x73\xfd\x5f\xe8\x08\x38\x57\xa6\x4a\x36\x46\xcd\x75\x13\xa8\x4c\x50\x73\x33\x5c\x0c\x3a\x3f\x57\xed\x12\x9d\x43\x33\x8f\xe6\x54\x19\x6f\xe7\xee\x50\x53\x77\x74\xdd\xbf\xe6\xc5\x7a\x66\x5a\xe9\xea\xf5\xcc\xb5\xa2\xd5\x4d\xc9\xd7\x5f\xbc\x87\x01\xfa\x1f\x79\x81\x01\xde\xdb\x1e\xea\x5f\xf1\x02\xe7\x3e\x28\xef\xfb\xcf\x78\x71\x3a\x57\x51\x29\xdf\x3f\xad\x6f\x23\x38\x13\xfb\x27\x95\x20\x7a\x15\x4d\xff\x0b\x2f\x9e\xf0\xf1\x53\xee\x3f\x6a\x6f\x5e\x71\xff\x2d\x2f\x5e\xf1\xf1\x67\x7c\xfa\xe8\x74\x5e\x03\x15\x1e\x3f\xe5\xbb\x85\x05\x97\x32\xbb\x79\x38\xfc\x42\x1e\x7d\xbd\xdf\x0b\x60\x57\xc3\x6b\xfe\xa2\xe7\xf9\x65\xcf\xf3\xb3\x9e\xe7\x17\x2f\x29\x2f\x37\xaf\xbb\x77\x6e\x31\x25\x9e\xa7\xff\xfc\x67\xb6\xdb\xec\x68\x96\x78\xfe\xbc\x9b\x71\x37\xdc\xef\xba\x59\xf0\x7c\xfd\x5e\x75\xe7\x7a\xc1\xf3\xe7\xed\xdd\x6a\xc1\xf3\xd4\xde\x2d\x17\xb3\x6f\xf9\x78\x75\xf2\x0b\x1f\x6f\x4e\x3f\xe2\xe3\x75\xf7\xde\xec\x5b\x3e\xf9\x85\x4f\x3f\xe2\x76\x13\xea\xe9\xb2\xa7\xc5\xec\x09\x1f\xcf\xd6\xa7\xcb\xee\xf4\x33\x3e\xbe\xe8\xde\x7b\xca\xbb\x22\xea\x6d\xc3\x4f\x3a\xa6\x93\x8b\x7a\xbc\xd2\x2d\x8f\x67\x78\xba\xec\xba\xfe\x6a\x71\xf9\xe1\xb0\x6b\xdf\x86\x56\x6a\x46\xfd\x45\x77\xfc\x23\x9f\xa2\x82\xf7\xbf\xa2\xaf\xde\xb9\x7d\x9d\x57\x1f\xc0\x87\x57\x27\xda\xc1\xfb\x57\xfd\x65\xbf\x3c\xb8\xd6\x9b\x27\xb1\xbf\xe4\xdd\x2e\x46\xb7\x2a\x9f\xdd\x7b\xfc\xf5\xa7\x3b\x45\xd0\x2a\x47\x7b\x1c\x76\xf5\x21\xbe\xbf\x3a\x10\xf8\xf5\x81\xc0\xb6\xf7\xc6\x8b\xb6\x89\x49\x7d\x77\xb9\xdf\xc9\xe4\x6c\x71\xb2\xdd\xc7\x63\x6b\xd1\xe2\x64\x75\xbd\xf5\xf4\x6b\x9e\x53\x37\xfb\x9a\xfb\x2f\xb9\xbf\x39\x94\xba\xda\x04\xd4\xff\x3b\xad\x97\xcf\x5f\x6c\x78\xfd\xfe\xe8\x10\xdf\x3d\xa2\x9b\x78\x9e\xdf\xdf\x6f\x93\x5a\x3f\xf5\x5c\xf3\xee\x66\xfe\x60\xd6\xd6\xa6\xad\x41\xc7\x7c\xcb\x9e\xee\xba\x2f\xb4\xfe\xe9\x57\xa8\x29\xb7\xd4\x94\xb7\x56\xb3\x7e\x9e\xee\xef\x15\x30\xec\xdb\x31\x08\xe8\x3e\x84\xed\x3e\x96\x2f\x4e\x50\x41\x77\xfc\x7c\xd8\x13\xa6\xc9\xeb\xd7\x87\xb4\x97\x95\x76\x78\x77\xbc\x69\x9b\xaa\x74\xfd\xea\xa6\x30\x7f\xdb\x35\x69\x5f\x98\x9f\xbb\xc3\xee\x52\xfb\x7b\x8d\x0f\xc7\xb3\xcd\xc9\xfa\x78\xb6\x1b\x5d\xab\x93\x57\x7c\x5c\x3b\xde\xcd\xa9\xcf\x6a\xd7\x7e\x7a\xf7\xe8\x13\x3e\x5e\x75\xdd\x9d\x8b\xbb\xde\x0e\x97\x7f\xd4\xc8\x70\xb7\x0e\xde\xcd\xed\xe9\xfb\x7d\x15\x67\xeb\x83\x9d\x4f\x57\xb3\x4d\xed\x43\x95\x7f\xb9\xe0\xd9\x6c\xb3\xf8\x92\x67\x9b\xae\x9b\xbf\xe8\x67\xab\xfa\x7e\x55\xdf\xd7\xf1\xb4\xed\x25\xff\x68\x1d\x67\x33\xbf\xec\x57\xf3\xcb\xae\xa7\xbb\xc7\xcf\xfa\xd5\xfc\xac\xeb\x2f\xef\x1e\xdf\x9a\xdb\xaf\x6e\x42\xc1\x1d\xcb\x0e\xf7\x60\x9d\xbf\x58\x2c\x5b\xa5\xc7\xf9\xe5\xe2\x62\x78\x73\xb6\xa0\xd9\xbe\x13\x70\xbf\xae\x7e\xd8\x77\xec\xe6\xf6\xcd\xc9\xd1\xd1\xf5\x7e\x97\xd6\xda\xf9\x57\xf3\xe7\x74\x7e\x4e\x8b\x4d\xbf\xba\x9e\x61\x77\xfd\x09\x57\x7b\xf2\xe0\xaf\x6f\x78\x31\x7c\xa6\xae\xff\x82\x17\xdf\xf0\xec\x4b\x9e\x69\x80\x7e\x6e\x7b\xe8\xfa\x2f\x79\x76\xaa\x4c\xfb\x84\x5d\xd7\x7f\xba\xa3\x38\xc5\x4a\xe2\x6d\x3f\xd7\xb6\x51\x05\xe8\x71\x6e\xfb\x79\xe8\xba\xfe\xab\x1d\x95\x72\xd3\x44\x7f\xe1\xea\xd8\xae\xff\xd3\xed\x19\x74\xc6\x1f\xc0\x7f\xfe\xc3\xff\x0b\xbb\xc7\x8f\x67\x7c\x3a\xf4\x21\x39\xbb\xb8\x58\x1f\x44\xc4\xfd\x66\xa2\x7c\x3a\xb7\x7b\x17\xfe\x85\xe7\x2f\x16\xda\xc1\x31\x37\xeb\xfe\xc2\xf3\xcb\x05\xce\xed\x29\xce\xed\xf1\xa6\x7e\x3c\x5b\xcc\xc3\xe9\x3c\xb6\x0f\xd5\x4b\xfd\xbf\x0e\x63\xae\x74\xb3\xae\xff\xee\x66\x42\xd1\xfd\xc7\xbc\x50\xc7\x37\x1f\xff\xcc\xf7\x1f\x61\x7d\x67\x3f\x4e\x67\x73\x7b\xca\xdd\x8e\xbc\xff\x17\xcf\xd7\x8b\xa1\xcf\x1e\x8e\x83\xee\x78\x53\x4f\x3d\xbf\x7f\xea\xe4\xbb\xfd\xd9\x34\x72\xf6\xe3\xdd\xd9\x66\xf8\x5f\x7f\xc7\xb4\x43\x9b\xb9\xc3\x96\x0e\xa0\x57\x73\xdd\x26\x68\x04\x1f\xf5\xdc\xb6\x79\x5b\x6b\x0d\x30\xc7\x96\x1e\xe8\xa0\xa3\x99\x9b\x78\x8a\x26\x28\x3b\x07\xfb\xf6\x99\x81\xd2\x73\xdd\xd4\x59\xeb\xe7\xba\x65\x1f\xa8\x94\xdd\x2a\xd6\xd6\x9b\x79\x74\x5b\x1b\xf4\xdc\xfb\x13\x0f\x7e\x6e\xdd\x7f\xa1\xc8\xcf\x55\x95\xae\x15\xe2\x1c\x9b\x44\xab\x95\x9f\xc7\x96\x45\x29\x1f\x70\xc8\xb1\x94\x75\x71\x8e\xe1\xd4\x05\x1d\xe6\xce\xdd\xce\x40\x6e\xef\x8f\x7e\xf3\x64\xf6\x76\xdf\xba\xbb\x83\x79\x7d\xb0\x29\xc9\x98\x89\x9b\x53\xec\x0f\x7a\xf8\xfa\x78\xd3\x75\xdd\xb3\xeb\xeb\xed\x46\xcd\xff\xe4\xd9\x6a\x76\x64\x0c\xa0\x35\xc6\x80\xb2\xce\x58\x30\xd6\x1b\x0b\xd6\x46\xe3\xc0\x5b\x32\x0e\x82\xcd\xc6\x01\xd9\x62\x1c\x24\xcb\xc6\x43\x71\x60\x3c\xb0\x43\xe3\x11\x9c\x36\x1e\xd1\x19\xe3\x51\x3b\x6b\x02\x1a\xe7\x4d\x40\xe7\x82\x09\xe8\x5d\x34\x01\x83\x23\x13\x90\x5c\x36\x01\x93\x2b\x26\x60\x76\x6c\x02\x16\x27\x26\xa0\x78\x30\x41\x81\xaf\x8d\x8c\x5e\x9b\xa0\xb4\x37\x26\xd4\x14\xad\x36\xbb\x77\x26\x28\xe7\xbd\x09\x2a\xf8\x60\x82\x8a\x3e\x1a\xaf\xc8\x93\xf1\x2a\x37\x2c\x3e\x19\xaf\xd8\x67\xe3\x95\xf8\x62\x9c\x06\xcf\xc6\x69\xd5\x50\x7b\x31\x4e\x9b\x00\xc6\x6a\x1b\xd0\x58\xed\x1b\x86\xa0\x8c\xd1\x31\x68\x63\x34\x35\x4c\xc1\x18\xad\x4b\x43\x0e\xd6\x28\x2d\x15\x0d\x04\x67\x94\xc1\xe0\x0c\x1a\x15\xbc\x41\x63\x82\x37\x60\x6c\x08\x06\x8c\x0b\x41\x8b\xf1\x0d\x43\x88\x9a\x4d\x6c\x48\x0d\x73\x20\x5d\x4c\x69\xc8\x81\x74\x36\x52\xd1\x42\x48\x3a\x59\x6c\xa8\x42\xd2\x64\x75\x43\x13\xb2\x8e\xd6\x36\x74\x21\xeb\x60\x43\xc3\x18\xb2\xf6\x96\x1a\xa6\x50\xb4\xb3\xb9\x61\x5d\x52\x58\xcb\x0d\x25\x14\x5d\x1b\xac\x22\x86\xa2\xb5\x53\x0d\x75\x28\x5a\x39\x13\x58\x2b\x67\x03\xeb\xda\x38\x15\x7d\xc3\x10\x58\x83\x8b\x0d\x29\xb0\x12\x97\x1a\xe6\xc0\x8a\x5d\x69\xc8\x0d\x25\xb0\x2a\x1e\x1a\x62\x60\x95\xb7\xd8\x9e\x42\xf1\x3a\xb0\x4a\xde\x34\xb4\x81\x15\x79\xd7\xd0\x37\x0c\x81\x6b\xcb\x35\xa4\x86\x55\x4b\xf0\xb9\x61\xd5\xe2\x3d\x37\xac\x5a\x7c\xa8\x5a\x5c\xc0\x86\x6a\x8f\x36\xe8\x86\xa6\x61\xd5\x62\x82\x6b\x58\xb5\xe8\x10\x1a\xc6\x86\x14\x8a\x52\x21\x35\xcc\x0d\x4b\x28\x0a\x03\x37\x94\x8a\x11\x1a\xd6\x95\x1b\x44\x75\x80\x3a\x64\x94\x68\x1a\xda\x90\x50\xa2\x6b\xe8\x1b\x86\x86\x31\x10\x4a\xa4\x40\xc8\x31\x35\xcc\x21\x22\xc7\x12\x22\x4a\xe4\x86\x12\x02\x0a\x41\x43\xdc\xa2\x47\x21\x15\xbc\x02\xd2\xc1\x29\x20\x13\x9c\x42\xb2\xc1\x2a\x24\x17\xac\xaa\xce\xaa\x18\x82\x51\x9a\x62\xd0\xca\x10\x05\xad\x2c\xa5\xa0\x94\xa5\x1c\x94\x72\x54\x02\x2a\xdf\x30\x10\x07\x50\x91\xc4\x8b\xa2\x04\x5e\x54\x4e\xe8\x59\x95\xa4\x7c\x51\x9c\xb4\xcf\x4a\x92\xf1\x59\x63\xb2\x3e\x69\x95\x9c\x27\x6d\x92\xf3\x51\xdb\xe4\x7d\xd4\x3e\x05\x1f\x74\x48\xd1\x7b\x4d\x89\xbc\xd3\x29\x25\x6f\x75\x49\xd9\x1b\x2d\x29\x7b\x6d\x20\x15\xaf\x8c\x4a\xec\xd1\x98\x54\xc7\xac\xcb\x50\xc7\x6f\x46\xc7\x86\x32\xba\x62\x72\x56\x2e\x1b\xce\xda\x25\x0b\xd9\x38\xb2\x2a\x5b\x17\xad\xc9\xd6\x05\xeb\xb2\x73\xde\x86\xec\x9d\xad\x17\xe1\x8c\xcd\x39\x38\x6d\x39\x47\xa7\x1c\x64\x72\xe0\x74\x4e\x56\x9c\xcd\xc9\xb2\xf3\x39\xdb\xec\x62\x2e\x36\xb9\x9c\x8b\x25\xc7\x99\x6d\xf0\x90\xc5\x7a\xaf\x0b\x58\xe7\x6d\x01\x6b\xbc\x2f\x68\xb5\xa7\x82\x16\x7d\x2e\xca\x82\x97\xa2\x0d\x07\x2c\xda\x94\x60\x8a\x31\x29\xb8\x62\xeb\xb8\x2c\xd6\x84\x90\x8a\x33\x2e\x70\x71\xc6\x46\x28\xde\xe8\xa8\x8b\x37\x18\x6d\x09\x06\x62\x28\x41\x73\x4c\x25\xea\x1c\x4b\x89\x3a\x11\x14\xd2\x91\x54\x21\xed\xc9\x96\xa4\x1d\x85\x92\xb4\x21\x2a\x59\x2b\x2a\x25\x6b\x48\x50\x8a\x92\xa4\x4a\x51\x25\xd9\xc2\x2a\xa5\x50\x58\xc5\x44\x85\x55\x48\xa5\x88\x72\x19\x8a\x28\x9b\x55\x11\xa5\xb3\x65\x50\x98\x03\x83\x82\x4c\x8c\x28\xb9\x30\x62\x29\xc0\x88\xb9\x28\x56\x98\x8a\x65\x85\x54\x87\x06\xc6\x42\xac\x31\x96\xc2\x1a\x43\x91\x8a\xac\xd8\x60\x60\xcb\x06\x23\xfb\x86\xc4\x16\xa9\x3a\x09\x13\x0b\x5b\xcc\x82\x6c\xb1\x88\x61\x87\x2c\x8e\x9d\x02\x09\xec\x14\x4a\x62\xaf\xb4\x14\xf6\xca\x1e\x75\x5d\xff\x87\xdd\x64\xd0\xbe\x33\x34\x80\x00\x60\x01\x01\xc1\x35\x0c\xa0\x00\x21\x82\x02\x05\xa9\x61\x01\x0d\x1a\xa4\x22\x2a\x30\x60\xd0\x80\x05\x83\x0e\x1c\x58\x0c\x0d\x09\x3c\x38\xcc\x10\xc0\x23\x43\x04\xaf\x00\x08\x82\xaa\x32\xa2\x32\x90\x21\x2a\x07\x05\x48\x45\x60\x48\x2a\x21\x40\x52\x05\x11\xb2\x12\x54\x50\x34\xa2\x86\xa2\xab\x6c\xd6\x0e\x2d\xb0\x0e\xe8\x40\x74\xc2\x00\xa2\x0b\x46\x04\x2d\x48\x08\x46\x61\x46\x30\x06\x0b\xd6\x49\x89\x11\x4d\x54\x80\x68\x92\x42\x44\xc3\x4a\x21\x5a\x50\x06\x95\xd5\xca\xa2\xb2\x56\x79\x54\x36\xa8\x88\x68\x49\x11\xa2\xcd\x2a\x23\x5a\xa9\xfa\x1d\x2a\x41\x74\x5a\x23\xa2\xb3\x5a\x23\x38\xaf\x0d\x82\x8b\xda\x21\xb8\xa4\x03\x82\xcb\x3a\x82\x38\xd6\x09\xc4\x83\x2e\x20\x1e\xb5\x80\x78\x65\x00\xc4\x1b\xa3\x40\xbc\x35\x06\xc4\x3b\x63\x11\xbc\xaf\x93\xa5\x0f\x26\x36\xa4\x9a\xf3\x98\x8c\xe8\xc9\x30\xa2\x4f\x46\x50\xf9\x64\x11\x95\xcf\x56\xa1\xf6\xd9\x1a\xd4\xbe\xd8\x3a\xcb\x16\xeb\xd1\x7a\xb6\xb1\x21\xa1\xf3\x6c\x33\x3a\x2f\xb6\xa0\xf7\x62\x05\x83\x17\x07\x18\x02\x38\x85\x31\x80\x33\x48\x01\x9c\x6d\xe8\x31\x05\x70\x01\x73\x40\x47\x0d\x13\x96\x80\xae\x34\x64\xe4\x80\x1e\x50\x02\x7a\xd5\x50\x2b\x08\xe8\xad\xc2\x3a\x7f\x37\x0c\x4a\x05\xf4\x51\xa9\xa0\x7c\x52\x3a\x28\x9f\x1b\xd6\xc0\xab\x02\x54\x47\x86\xea\x4e\x0c\xba\x05\x6d\xd3\xd0\xd5\xac\x27\x84\x86\x51\x85\x80\x21\xa9\x18\x6a\xb0\x8d\x2d\xb0\x53\xc0\x08\x0d\x51\xa5\x80\x51\xab\x14\x20\x1a\x95\x03\x44\xd7\x30\xa8\x12\x20\xc6\x86\x49\xb1\x97\x98\x1b\xb2\x12\x2f\x04\x0d\xb1\x4e\xf6\xa4\x1b\x5a\x8d\x9e\xc9\x69\xf4\xa5\x46\x4c\x5f\x88\xb4\xf6\x85\x92\xd6\x3e\x53\xd1\xc6\x67\x62\x6d\x7c\x4a\xa0\xad\x4f\x49\x35\xd4\xda\x79\x4a\xb6\xa1\xd7\xde\xc7\x14\x1a\x92\x0e\x3e\xa4\xac\x6b\xd4\x2f\x3a\x7a\x9f\x44\x93\xf7\x19\x34\x79\x97\x95\x4e\xde\x66\xa3\xb3\xb7\xd9\xea\xec\x4d\xf6\xba\x78\x9d\x83\x66\xaf\x33\x69\xf6\x2a\x67\x2d\x1e\x73\x31\xe0\x31\x8b\x01\x0f\xa5\x0e\x11\x29\xca\x28\x57\x43\x94\x76\x5c\xac\x31\xae\xd4\x50\xe4\x72\x09\x0d\xa3\x71\x2e\x95\x64\xbc\xa3\x92\x4d\x70\xb1\xb0\x89\x2e\x14\x31\xe4\x02\x83\xc9\xae\x3a\xbe\x38\xc7\xda\xb0\xb3\x6c\x8c\x38\xc3\xd6\x82\x33\xec\xad\x72\x35\x77\xd1\x4e\x71\xb4\xc6\x29\x26\xeb\x1c\x72\xb2\xde\x01\x67\x1b\x1c\x70\xb1\x64\x85\xd9\x26\xcb\x2c\xb6\x58\x16\xb0\x62\x59\xd0\x81\xad\x71\x4a\x35\x34\x36\x8b\x76\xd6\x66\x31\xce\x37\x8c\x36\x8b\x75\xc9\x66\x71\x2e\x37\x64\x9b\xc5\x7b\x68\xa8\x6c\x96\xe0\x4d\x43\x67\x73\x9d\x2b\x6d\x91\xe8\x63\xc3\x64\x8b\x90\xaf\xba\xc8\x57\x5d\x14\xd0\x8a\xa4\xa0\x1b\x5a\x07\x92\x82\x77\x28\x39\xc4\x86\xe4\x94\xe4\x90\x9d\x96\x1c\xd8\x19\xc9\x11\x9c\x95\x12\x95\x73\x52\x1d\xe4\xa5\x44\xe7\x82\x94\x18\x5c\x94\x12\xc9\x91\x94\x98\x5c\x12\x8e\xc5\x65\xe1\x28\xae\x08\x13\x3a\x16\x26\xed\x44\x98\xac\x47\x61\xf2\x5e\x09\x53\xf4\x5a\x98\xc8\x1b\x61\xca\xde\x09\x13\x7b\x2f\x9c\xc0\x07\xe1\xa4\x3c\x09\x27\xe3\x93\x70\x72\x3e\x0b\x27\xef\x59\x38\x45\x2f\xc2\x29\x05\x14\x4e\x25\x28\xe1\x24\xc1\x08\x67\x0c\x56\x38\xab\xe0\x85\xb3\x09\x41\x38\xbb\x40\xc2\x39\x84\x2c\x9c\xa9\x46\xec\x9c\x83\x08\xe7\x12\x41\x38\x4b\x54\xc2\x05\xa3\x11\x2e\x3a\x5a\xe1\x62\xa3\x17\x2e\x3e\x46\xe1\x12\x22\x49\x29\x14\xb3\xb4\x5f\x29\xa4\x14\x26\x90\xc2\x40\x28\x85\x15\xd5\xc0\xad\xc9\x4a\x61\x4b\xbe\x06\x71\x8a\x52\x38\x12\x49\xe1\x44\x59\x32\x67\x62\xc9\xcc\x09\x24\x0b\x24\x25\x59\x54\x32\x92\xc5\x24\x27\xb9\xe6\x77\x92\xc5\xa7\x28\x59\x62\x4a\x92\x25\xa5\x22\xed\xd1\xed\x3a\x19\x7c\xfe\xab\x26\x03\x6a\xd3\x40\x6e\xc8\xa0\x41\x61\xa5\x1d\x26\x03\xbd\x9d\x0c\x3c\x38\x30\x18\xc1\x83\xc5\x04\x01\x2c\x16\x88\xe0\x50\x80\xc0\xb7\x69\xc0\xb7\x69\x20\xb4\x69\x20\xb4\x69\x20\xb6\x69\x20\xb6\x69\x80\x34\x60\x4d\x93\x14\x1a\x48\xda\xa0\x85\xa4\x3d\x3a\x48\x3a\x62\x80\xac\x33\x46\xc8\x9a\x31\x41\x36\x88\x19\xb2\xd1\xc8\x90\x8d\x45\x81\x5c\x57\x13\x90\x0d\x29\x0d\xd9\xe4\xaa\xc7\x48\x4d\x33\x2c\xaa\x00\xc9\x6a\x15\x21\x59\xab\x12\x24\xeb\x55\x81\x64\xa3\x12\x20\x9b\x34\x02\xd9\xac\x15\x90\x65\x6d\x80\xac\x68\x07\xd1\xa1\x6e\x51\x49\x47\x88\x4e\xeb\x04\xd1\x19\x5d\x20\x3a\xab\x19\xa2\x73\x06\x80\x9c\x37\x0a\xc8\x05\x63\x1a\x5a\x20\x17\x8d\x87\xe4\xc8\xc4\x86\x04\xd9\x25\x93\x1b\x16\x28\x2e\x1b\xa9\x68\x11\xd8\x65\xab\x80\x6b\x92\x02\xe2\x8a\xb5\x0d\xeb\xea\xaa\x06\xfd\x8a\x84\x58\x87\x1b\x2a\xc7\xb6\x34\x14\xd4\x8e\x1d\x36\x54\x68\x1c\x3b\x83\xd6\xb1\xb3\x0d\x3d\x3a\xc7\x2e\x36\x24\xf4\x8e\x5d\xc6\xe0\xd8\x95\x86\x82\xd1\xb1\xc7\x86\x35\xed\x64\x6f\x1a\x5a\x4c\x8e\xbd\xc7\xec\x8a\x0f\x0d\x09\x8b\x2b\x3e\x37\x2c\xc8\xae\x78\x41\x76\x39\x00\xd6\x15\x82\x52\xe0\x72\x30\x0a\x5c\xaa\xf9\xab\x4b\xc1\x37\x6c\x29\x6a\xa0\x86\x59\x69\x17\x43\x69\x28\xca\xb8\x18\xeb\x52\x33\x44\xd5\x50\x2b\xe7\x7c\xb4\x0d\xbd\xf2\xce\xc5\xd0\x90\x54\x70\x36\x26\x15\x9d\x89\xa5\xa1\x28\x72\x9a\xa0\xa1\x52\xc9\x29\xd2\x2a\x3b\xac\x49\xa6\x03\x72\xaa\x38\xa0\xa0\xd8\x0a\x45\xc5\x96\x29\x29\xb1\x4c\x45\x83\xad\xc9\x13\xd8\x9c\x40\xa3\x4d\x09\x5b\x2a\xad\x1b\x1a\xad\x6d\x4c\x4e\x1b\x1b\x92\xd7\xd6\xfa\x14\xb5\xb5\x2e\x51\x8d\x7c\xa9\xae\xb5\x4c\x2a\x3a\x58\x9d\x44\x47\xab\x6a\xe8\xb7\x98\x51\x93\x85\xac\x75\x1d\x53\x46\xd7\x8c\xd7\xd5\x35\x5e\xf6\x75\xbd\x97\xeb\x3a\x30\x65\x32\x60\x28\x27\x83\x26\xe6\x6c\x94\x09\x99\x4d\x9d\x7f\xc4\xd4\x78\x0f\xc6\x1a\x5b\x94\x71\xc6\xd4\x59\xc9\xe8\x62\x4c\x30\xaa\x58\x43\x06\x8b\x37\x49\x4b\x09\x26\x6b\x2e\xd1\x14\x5d\x0a\x19\xd6\xb9\x24\x0b\x3a\x95\x62\x51\x53\x61\xab\x74\x28\x62\xb5\xf6\x0c\xd6\x6a\xc7\x68\x6b\x32\xad\xac\xd7\x86\xb5\x8d\x5a\xb3\xb1\xa4\x91\xad\xcd\x1a\xd8\xd9\xa2\x84\xbd\x65\xc5\x1c\x1c\xa8\xc2\xd1\xa1\x4a\x75\xb6\x54\xc4\xc9\x19\x15\x39\x39\xa7\x02\x67\xe7\x95\xe3\xe2\xa2\xb2\xcc\x8e\x94\x61\xa9\xb3\x5d\x4d\x20\x15\x0a\x38\x51\x20\xe8\x11\x45\xd0\x6b\x2c\xa2\xbc\xc1\x2c\xda\x3b\x4c\x52\x97\xd6\x51\x8c\x8f\x18\xc4\xfa\x84\x5e\x6c\x4d\xce\xc5\x79\x46\x23\x2e\x00\x6a\xf1\x41\xa1\x12\x1f\x0c\x82\x84\x60\x41\x24\x04\x0f\x2c\x21\x44\xc8\x12\x43\x82\x24\x31\x64\x20\x89\x81\x21\x0a\x45\x80\x50\x1b\x15\xbc\x50\x34\xe0\x25\x45\x07\x4e\x52\xf4\x0d\x63\xc3\xd4\xb0\x80\x97\x1c\xa5\x22\x21\x04\xc9\xa4\x21\x4a\x26\x0b\x24\x75\x81\x91\x25\x53\x80\x22\x99\x08\x44\x32\xe5\x9a\x78\x13\xa3\x92\x9c\x00\x8d\xe4\xa4\xd0\x49\x6d\xb6\x20\x29\x39\x24\xa9\xd1\xbe\x48\xfb\xf1\x53\x52\xca\x35\x77\x4e\xac\xb4\x50\x06\xe5\x84\xb2\x52\x41\x28\x1b\x45\x42\xd9\xa9\x22\x31\x7b\x25\x12\x73\xd4\x4a\x62\x4e\xda\x4a\xc8\x45\x7b\x09\x59\x34\x89\x2f\xa8\x8b\xf8\xa2\x87\x61\x6e\xb4\xb8\xe2\x8d\x13\x5b\xa2\x89\x62\x4b\x32\x59\x4c\x29\x46\xc4\xd4\xb6\x15\x53\x5b\x55\x34\x6b\x4b\xa2\xd9\xd6\x89\x99\x9d\x43\x51\x1c\x9c\x15\xc5\xe4\xa2\x20\x67\x57\x04\xb9\x78\x14\x64\xf1\x56\x50\xd0\x47\x51\xa2\x7c\x11\x25\x26\x28\xd1\x62\x83\x13\x2d\x75\x5a\x32\x12\x02\xb7\x87\x44\x94\x38\xa1\xe8\x24\x48\x8a\x24\x51\x72\x2c\x42\x52\x08\x25\x8b\x90\xa9\x93\xc1\xf7\xfb\xc9\xa0\x40\x08\x1e\x01\x7c\x08\x35\xe5\x0a\x11\x1d\xf8\x40\x18\xc1\x85\x8c\x09\x5c\x28\x58\xa0\x2e\xc6\x01\x5c\x90\x1a\x19\x22\x28\x03\x2e\xa2\x72\x60\x63\x0d\xbb\x36\x2a\x45\x60\xa3\x56\x19\x6c\x34\x8a\xc1\x46\xab\x04\x6c\x74\x1a\xc1\x46\xaf\x75\x43\x0b\x26\x06\xed\xc1\xc4\xa8\x03\x98\x48\x9a\x1a\x66\x30\x31\x69\x06\x13\xb3\x96\x8a\x06\xc1\xc4\x62\x34\xe8\xc8\xc6\x34\x74\xa0\xa3\x98\xd0\x30\x42\x65\x4c\xa0\x09\x4d\x06\x45\x68\x18\x14\x29\x0b\x0d\x11\x14\x69\xab\x1b\x5a\x50\x64\xac\x03\x24\x63\x43\xc3\x08\x48\xd6\xa6\x86\x19\x90\x9c\xe5\x8a\x0e\x1a\x22\x40\x5d\x27\x37\x34\x0d\x5d\x43\x0f\x40\xc1\xc5\x86\xd4\x30\x37\xe4\x86\x52\xb1\x3a\x91\xea\xfa\x1f\x29\x78\xd3\xd0\x36\xf4\x0d\x43\xc3\x1a\xe7\x82\x4f\x0d\x0b\x68\x0a\x9e\x2b\x06\x00\x43\x21\x20\x18\xf2\x41\x83\x25\x1f\x4c\x43\x07\x8e\x5c\xf0\xe0\xc9\x85\x00\x81\x5c\x20\x88\x64\x43\x02\x22\x1b\x0a\x24\xb2\x81\x21\x93\x09\x02\x85\xea\x22\x84\x49\x47\x05\x42\x3a\x1a\xac\x4b\x30\x8b\x48\x58\xe7\x39\xc2\x18\xd0\x10\xc4\x88\x36\x4a\x24\x74\x51\x62\x46\x1f\x39\x16\x0c\xb1\x44\xc6\x18\x0b\x01\x52\xcc\x84\x98\x62\x22\x85\x25\x52\x8d\x35\x91\xc8\xa2\xc4\x48\x4e\x41\x0c\xe4\x15\x46\x4f\x41\xa9\xe8\x88\x94\x8e\x96\x92\x32\xd1\x50\x56\x2e\x1a\x2a\xca\x47\x4d\xac\x42\x54\x09\x54\x8c\x98\x50\x51\x84\xa4\x54\x0a\x92\xb4\xca\x81\x93\x51\x1c\x4a\xb2\x4a\x42\x4e\x4e\x43\x48\xc9\x6b\x0c\x94\x82\x56\xa1\x66\xe8\x3a\x84\x94\x74\x5d\xd3\x67\x6d\x83\x4f\x45\xfb\xe0\x12\xeb\x10\x6c\x0d\xd9\xc1\xd4\x90\x1d\x74\x46\x9d\x82\xca\x4a\xe7\x80\x59\xeb\x12\x6a\xae\xc0\x5e\xb2\x35\xe0\x39\x3b\x83\xbe\x64\x6f\x94\xcf\x39\x18\xed\x53\x8e\xc6\x78\xca\x64\xac\xaf\x41\xdc\xf9\x1a\xc4\xbd\x0f\x39\x9b\xe8\x7d\x2e\xa6\xae\x00\xd8\xa4\x96\x18\x67\x6f\x0a\x98\xe2\x75\x41\xc3\x5e\x15\x65\xc4\x63\xd1\x16\x3d\x16\x63\x95\x87\x52\xe3\xb3\x14\x6b\x4d\x8d\xab\xd6\xba\x52\xbc\x75\x35\xdf\xb7\xde\xa5\x12\x6d\x70\x54\xc8\x52\xc3\xe4\x62\x49\x36\xbb\x50\xb2\x2d\xce\x97\x62\xd9\xb9\xc2\x56\x9c\x2d\xec\xd0\x99\x22\xae\xe6\xf8\xe0\xb4\xd3\x8c\xae\xe6\xf8\xca\x59\x87\xac\x9c\x73\x75\xa1\x5c\x93\xd1\x9a\xad\x33\x5b\x47\xb6\x70\xcd\xd9\x0b\xb7\x9c\x9d\xbd\x63\x9b\xd8\x3b\xb1\xc4\xc1\x83\x8d\x1c\x3d\xda\xc0\xd1\x2b\xeb\x99\xbc\xb1\x9e\x93\xb7\xd6\x71\xf2\xce\x5a\xce\xde\x5b\x53\x13\x53\xab\xb9\x78\xb2\x8a\xb9\xae\x52\x59\x7c\x6e\xc8\x16\x6a\xb4\x35\x22\x10\xc0\xb0\x60\x40\x53\x04\x83\x36\x59\x54\x30\x26\x89\x0e\xb6\xa1\x37\x24\x26\x04\x53\x07\x67\x34\x41\x6c\x48\xc6\x8b\x0d\xd9\x38\x71\xa1\x18\x2b\x2e\x88\x31\xe2\x23\x34\x44\xa3\xc5\x47\x6d\x94\x84\x68\x0c\x4a\x88\x35\x37\x8a\x35\x71\x97\x18\x83\xe6\xda\xcd\x34\x0b\xc5\xa4\x8b\x50\xcc\x3a\x0b\x45\xd6\x49\x52\xac\xa1\x36\x11\xea\x28\x89\x94\x6e\xd3\x40\x43\xab\xeb\xc4\xe0\xb4\xab\xd3\x80\xb6\x92\x29\x6a\x23\x6d\x7d\x28\x85\x72\x43\xd6\x4a\x0a\x89\x46\x29\x09\x35\x48\x49\x4a\x89\x94\x64\x1a\x5a\x55\xd7\x01\x5e\x15\xe1\xda\xa1\x84\x13\x35\x4c\xaa\xae\x15\x8a\xaa\xeb\x06\xae\x98\x41\x45\x29\x59\x35\xd4\x2a\x48\xc9\x56\x79\x29\xd9\x35\x0c\x0d\xa9\x2e\x03\x73\x52\x4e\x72\x2e\xca\x4a\xce\x5c\xb1\x40\x43\xa5\xac\xa4\xa2\x95\x91\x54\x6c\x43\xaf\x8c\x50\x09\x0d\x49\x19\x89\x25\x37\xac\xbc\xa1\x48\x45\x46\x65\xc5\xb3\x6a\x68\x94\x6d\x5f\xfb\x38\x71\x1c\x94\x13\xcb\xb1\x61\x52\x5e\x0c\x17\xe5\x45\x33\x57\x14\x50\xbe\x4e\x18\xca\x0b\x4a\x5d\x9c\xa2\x58\x65\x87\xaf\x33\x04\x24\x2a\x3c\xea\xba\xdd\xae\xa4\x97\xf9\x05\x9f\xf3\x27\xb4\xe1\xe7\x17\xeb\xd7\x08\xe3\x9b\x4a\x1e\xee\xd4\xd5\x18\x3e\xca\x99\x57\xe3\xfb\x80\x5d\xdc\x23\xfe\x94\xd6\x3f\xa9\x51\x5a\xba\x47\xfb\x35\x2d\xd7\x13\xfb\xf4\x5d\x8e\x10\x5f\x6e\xf8\x0c\xc7\xf7\xa3\x9b\xa0\x1e\x37\xe4\xec\x1e\xf5\x53\xde\x8c\x0b\xce\x63\xa4\xe3\x52\x65\x8c\x54\x8f\xef\x80\x79\x8f\xf4\x5b\x4a\x67\x4c\x57\x13\x4d\xf2\xe2\x80\x7e\xb9\xda\xf0\xfa\xe5\xc5\x19\x6d\xf8\xe3\xf5\xc7\x9f\x8f\x6f\xa2\x77\x4f\xfe\x24\xe9\xcf\xe3\xa2\xbf\xfe\xe6\xf3\xf1\x3d\x1a\x9f\xdf\xf7\xf4\x14\x69\x9a\x10\xbd\xfc\x7e\xdc\x94\x57\xf7\x45\x4f\x91\xfe\x38\x21\xfa\xea\xc9\xf8\x06\x87\x4f\xef\x8b\x9e\x22\xfd\x6c\x5c\xf4\x37\xe5\xe3\xab\xf1\xed\xf3\xee\x89\x9e\x24\x7d\x32\x25\xfa\xf3\xd7\xe3\x3b\xe0\x8d\x88\x9e\x20\xfd\x68\x4a\xf4\xf7\x67\x13\xc6\x7c\x39\x22\x7c\x92\xf8\xa7\x69\xf1\x13\x8d\xff\x8f\x51\xf1\x13\xc4\x5f\x8f\x8b\x7f\xfa\x92\xf3\x66\x6a\x3b\xcc\x6f\xee\x0f\xb7\x87\xc8\x3f\x99\x18\x42\x57\x13\x26\x7d\x7a\x7f\x08\x4d\x91\x7e\x31\x25\xfa\xeb\x71\x67\xfe\x65\x44\xf4\x04\xe9\x57\xe3\xa2\x3f\x5f\x4d\xb4\xd3\xbf\xee\x89\x9e\x24\xfd\xd3\xb8\xe8\x27\xeb\x6f\xc6\x03\xf2\xc7\xf7\x44\x4f\x92\x7e\x37\x35\x3a\x27\x5d\xf8\xd7\x91\xf1\x39\x49\xfc\xe7\x69\xf1\xe3\xdb\xca\x8e\x0a\x1f\x25\xfd\xe7\x94\xe8\x89\x2b\xfd\x7c\x44\xf4\x04\xe9\x1f\xa6\x86\xd0\x44\xd3\xff\x9f\x91\x01\x34\x41\xfa\xfd\xb8\xe8\x3a\xdc\x26\xae\xf3\x7f\xdf\x13\xfe\x00\xf1\xff\x4c\x8b\x1f\xa5\xff\xbf\xa3\xc2\x47\x49\xff\x3e\x25\xfa\xc9\xfa\xe3\xf1\xf0\x7c\x6b\x2f\xef\x9d\xf4\x49\x6a\xe6\x69\x05\x13\xed\xb4\x1a\x57\x30\x41\xbd\x9e\x50\xf0\xf1\xd9\x15\xff\x9a\x6d\xb8\x87\xe1\x3f\x49\xbc\x9c\x10\xff\xf9\x9a\x79\x35\xce\x72\x79\x5f\xfe\x03\xd4\x34\xad\xe0\xf5\x38\xc7\xd9\xa8\xfc\x09\xe2\xab\x09\xf1\x5f\x5f\xad\x5f\x9e\x4d\x5c\xb3\xdc\x57\xf0\x10\x79\x9e\x50\xf1\x0d\x97\x71\x86\x17\xf7\xe5\x4f\xd2\x96\x09\xe1\x4f\xd6\xb4\x7a\x3e\x61\xd0\xf9\x7d\xf9\x0f\x91\xbf\x9c\x50\xf1\xc9\xf2\xe7\x65\x99\xd8\x58\xfc\xe7\x29\x9e\xab\xc4\x2f\xf8\x6c\xf9\xcb\xa7\x43\xbd\xbc\x37\xef\xe8\x7d\xe8\x30\x5a\xae\xd2\xc5\xab\x37\x6f\x1a\x7e\xc0\xf3\x37\x5a\x8f\xef\xcc\xfd\xe9\x94\x85\x17\x13\x3b\xe4\x7f\x35\xc1\xf0\x74\xb9\xe2\x29\xab\xfe\x3c\xc1\xf3\xed\xd5\x3a\x5d\xbc\x79\x5b\xf2\x03\x8e\xbf\x2e\xd7\x93\xce\xfe\xdb\x04\xcf\x97\xf4\xfc\x7c\xbc\x40\xc2\x1f\x26\x38\xbe\x58\x09\xaf\x57\xe3\x96\x7d\x3e\x35\x52\xce\xe8\x72\x42\xcd\xf7\xfc\xe6\x0d\x92\x0f\x6e\x65\xdd\x15\x88\x79\xf7\xf6\xad\xe9\x9b\xae\x1b\x2d\x81\xf6\x09\xad\x56\x17\x9b\x47\x99\xce\xce\x1e\xd1\xa3\x7c\x46\x97\x97\x8f\xe8\xf2\x11\xed\x6f\x62\x3b\x3a\xb8\xe3\x7a\x39\x48\x3f\xa8\xd7\xf5\xc7\xf5\x07\x9b\x5d\xcd\x90\xf5\xc9\xc9\xae\xfe\xfa\xe6\x87\xf5\xb3\x77\x56\x73\x5e\x5d\x9d\x0f\xf5\xd1\x16\x87\x1f\xfe\xf3\x9f\x77\xb1\x5f\xcd\xf3\xc5\x4a\x96\xcf\xaf\x86\xf3\xef\x42\x7f\xd4\xaa\x3b\x1d\x2d\x57\x8f\x56\x8f\x1f\xcf\x56\xf3\x57\xeb\xe5\x66\x7b\xae\xdb\xde\x9f\x3d\x1f\xea\xfb\x7d\xbd\xbe\x78\xc9\xeb\xcd\xeb\x19\xf7\xab\x56\xe3\x6a\xd5\x1d\x94\x1e\xbb\xd8\xb9\x68\x37\x97\x3c\x7e\xbc\x9c\x1d\xd4\x05\xee\x37\x5d\xbf\x6e\xc7\xfa\x75\xd7\xf3\xf5\xc1\xee\xd2\xb4\x38\xa8\x21\xf8\xee\xed\x1a\x82\x1f\x0e\xff\x46\x6e\xd3\x3e\xfa\xf1\xc7\xa3\xdd\x33\x33\xbc\x7f\x7a\xe6\xe0\xc6\xbe\xe1\x36\x44\x5a\x95\x8b\xf3\x59\x77\xfc\x29\x6d\x78\xbe\xba\x78\x35\xeb\xba\xbe\xb2\x76\xd7\xfd\xe5\x02\xfb\xab\x05\xcd\x8e\xbe\xfd\xe8\xf3\x1f\x3f\x79\xf2\xe5\xd7\xdf\x7d\xfb\x59\xdb\x47\x79\x7b\xe8\xdb\xef\xbf\xfe\xac\xed\x8f\x7c\xd0\x3d\xf6\xd7\xcb\xb3\x4d\xf7\xef\xd5\xb6\x18\xf3\xf6\xc6\xe8\x35\xff\xbc\xbc\x5c\x5e\xac\x76\xe5\x3a\xcf\xe8\x72\xf3\xc9\x0b\xce\x3f\x71\x39\x3c\xf4\xd7\x56\x4f\x6b\x7b\x60\x79\xf9\xdd\xcb\x42\x9b\xe5\xea\xf9\xe2\xdd\xed\xa1\xcb\xab\xb4\xa1\xe7\xed\x26\xf4\xc3\x03\x97\x37\x47\x7e\x38\x7b\xb6\xd8\xec\xee\x37\xae\x9e\xff\xe1\xdf\x3f\xf1\xeb\xf7\xaf\xb6\xb5\xf9\x0e\xec\xdd\x15\xf5\x3c\x30\xe5\xdd\xc5\xe2\x72\x7b\xef\xfe\xa1\x72\xb8\x6f\xf3\x65\x2b\x91\x76\x50\x3a\x78\x6b\xc8\xae\x7e\xf0\xf0\xb1\xdf\xd6\xf9\xdc\x5d\xfd\x3b\x4b\x69\xf5\xe7\xde\x5d\x2c\x36\xad\x80\xe2\xfe\x26\xcc\x75\xbf\xf9\xe1\xea\xd9\xac\xeb\xba\x7e\x4b\xc0\xdd\x4d\xdd\x5f\xf8\xe3\xea\x83\x7d\x29\x9c\xd5\xae\x5b\x2f\x17\xad\x14\x4e\x65\x7b\xe7\x40\xd4\xb2\x5f\x6f\xcb\x5f\xdf\x78\x74\xbd\x2f\xab\x76\xdf\xb3\xbb\xbb\xb3\xdf\x85\x5d\xd9\xd7\x9b\xd3\xbb\x82\xae\x87\x97\x7e\x72\x72\xd9\xdd\x69\xb1\xeb\xeb\x67\x5b\x3f\x1f\x5d\x55\x4e\x3e\xba\xeb\xee\x83\xb2\xe5\xfc\xce\x66\xb1\x58\xbc\xfc\x70\x7d\xd8\x9a\xef\xcf\xf6\x1f\x37\xfd\xfa\x96\xbe\xfd\xdd\xa9\xb7\x0e\xf7\x9b\xc3\x4f\xdd\x96\x67\xb8\xda\x1b\xaf\xde\x1c\xdc\xd2\xb7\xf7\x5d\x77\x7d\xdd\x0f\xe6\x96\xe5\x7a\xf3\xfa\xbe\xb5\xdd\xbf\xf9\xa6\xcb\x9e\x9c\x5c\x5e\x5f\x3f\xab\x23\x73\xd6\xf5\xb2\xc8\xf3\xc6\xd4\x97\x45\x9e\x0f\x57\x7b\x13\xee\x5e\x1c\x26\x74\xaf\x1e\xe5\xd9\xb6\x1c\xea\xcb\xc5\xf0\x51\x1f\x3c\x09\x70\x7e\xeb\x56\xe9\xc5\xe2\xe5\x4d\xc4\xf8\xf9\xe6\xd4\xec\xe7\xb1\xba\x71\xc3\xd0\x7f\xfc\x78\x57\xfc\xe5\xce\x89\x7d\x45\xc6\x0f\xc7\xee\xe3\xdf\x56\x87\xbb\x1e\x7d\xc0\xe3\xf1\xe3\x07\xd4\xdd\xaa\xf7\xb9\x58\x2c\xf6\xc7\xdf\xdd\xbd\xbf\x89\x6a\x1f\xee\x6c\x7b\x7f\xaf\xb0\x9b\x71\x77\xbd\xe2\x57\xb3\xf1\xa8\x71\x10\x34\x7e\xd5\x00\xde\xd2\x44\x00\x8f\x31\x2a\x6b\xbc\x81\x18\x71\xdf\x56\xed\x71\x94\xdf\x56\xd7\x4d\x47\x18\xe2\xf3\xeb\xd6\xae\x7f\x63\xfa\xe9\x4b\x7a\x79\xd3\xb4\xe9\x20\x16\x5f\xec\x4b\xa8\xd6\x56\x7d\xfc\x78\x37\xbc\x6f\x5a\xfb\xf9\x7e\x8e\xac\x7c\xbb\x61\xf2\x7a\xfe\x9c\x6b\xf8\xae\x31\x63\x28\x72\xda\xca\x6e\x0f\xa5\x04\xbe\xa4\x97\xfd\xeb\xf9\x65\x25\xe8\xd7\xdb\x32\xe1\x4b\x99\xad\xe7\x2f\xe8\x72\xb6\xe9\x76\x4f\x7d\xad\x9b\x8c\x7d\xa5\x82\x17\x37\x25\x38\xd7\x8d\x79\xd3\xaf\xba\x7e\xb5\x73\xc0\xcb\xd6\x55\x7f\xdc\x76\x55\x38\xe8\xaa\xaf\x0e\xc7\xef\xc1\x15\xf7\xa3\x45\x0d\x77\x4f\x21\xfc\xfb\x39\x6f\x6e\x3d\xae\xb4\xab\x51\xb9\x33\xe2\xf9\x6c\xd9\x1e\x1a\x7a\xfc\xf8\xdd\xc1\xf2\x65\xf7\xe1\xec\x62\xb1\x99\xd5\xe1\x5c\xed\x5b\xf6\x17\x5d\xf7\xfe\xc5\x62\xb8\x8e\x65\xd7\x5f\x5c\xf7\x97\x77\x84\xb6\x47\x65\x64\xf6\x63\xd7\xdf\x0e\x36\x35\xe5\x68\xfe\xbc\x49\x33\xb6\x29\xc6\xc7\xdf\x7d\xfe\xfe\xa3\x4f\x68\xf5\xff\x6e\x1e\x0d\xe3\xf7\x11\x3d\xda\xd0\xf3\x47\x72\xb1\x7e\x44\x8f\x5e\xae\x97\xe7\xcb\xcd\xf2\x67\x3e\xda\x55\xce\x1d\xda\xe7\x4e\x3b\xbc\x7b\x37\xff\xb9\xd5\x7c\xab\x03\xa6\xf3\xd9\xea\x57\x1a\xd1\x06\x17\xad\x36\xd5\x9a\xa3\x7d\x53\x95\xd9\xaa\xe6\x05\xab\xeb\xff\xfe\x42\xae\x9b\x91\x2f\x6a\xaf\x6d\x25\xa8\x9b\x55\xeb\xff\xce\x2a\x99\xad\xbb\xeb\xeb\xd9\xa6\xb6\xdc\x4d\x2f\xba\x1e\x1e\x12\xf8\xec\x56\x42\xb0\x9d\xbf\xf8\xde\x33\x75\xfd\xe6\xe0\xf9\xde\x2a\xa7\x25\x6e\xdc\x32\xb6\x9a\xaa\xdd\x30\xd4\xbc\x6d\x97\xc2\xc1\xb3\x7e\xb9\xd8\xfc\x80\xcf\xfa\x8b\xc5\xe6\x07\xf5\xac\x3a\xf7\x62\xd7\xd5\x9f\xce\x5a\x35\xc1\xee\x9d\xf1\xc4\xac\x9e\x6c\x24\xb7\x2a\xcf\x3d\xdd\x35\xde\xa0\xe2\xd5\x6c\x53\x13\xb1\xf5\x7c\xb9\x5a\x6e\x96\x74\xb6\xfc\x17\xaf\xbb\x7e\xb9\x58\xcd\x87\x9e\xdc\x5f\x2c\x56\xf3\xa1\xff\xed\xba\xf8\x4d\x12\xf9\xfe\xbb\xd0\x1f\x66\x90\xf5\xf3\x73\xde\x8c\x04\x91\x65\x8b\x3c\x5d\xeb\xca\xb7\x62\xf0\xc5\x3e\x67\x7a\x32\xdb\x79\xf4\xc9\xed\xfa\xc4\x7b\xd3\x7f\xa9\x0c\x4f\x16\x35\x5b\x6c\xb9\xfb\x66\x4d\x75\x22\x7c\xe3\x77\xcb\x97\xbc\xd9\x39\xe5\xd3\x65\xf9\xe4\x45\x5d\x21\x4e\x7e\xc1\x7c\xfd\xec\x59\xf7\xce\xff\x17\x00\x00\xff\xff\x2a\x8f\x64\xa4\xc4\x5f\x1c\x00") +var _web_uiAssetsVendorEd71485765549f3aea50f590e9204f99Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xfd\xd9\x76\xdb\xc8\x9a\x28\x08\xdf\xeb\x29\x48\x9c\xfd\x63\x47\x98\x9f\x60\x44\x90\x00\xc9\x90\x42\x3c\x4e\x5b\xce\x72\xed\xf4\x50\xb6\x33\xb3\xb2\x98\x3c\x2a\x88\x0c\x4a\x48\x53\x00\x13\x00\x29\x2b\x49\xd6\xca\xf3\x77\x9f\x1e\xd7\xea\x07\xe8\x9b\x3e\xb7\x7d\xd5\xef\x50\x6f\x72\xb2\x5f\xa4\x57\x0c\x98\x48\x50\xf6\xce\x6e\x5d\x88\x40\x20\xe6\xe1\x9b\xe2\x1b\xee\xc3\x68\x16\xdf\x3b\x97\x77\xd7\x22\xb9\x7c\xf3\x03\x9f\xaf\xa2\x69\x16\xc6\x11\x12\x90\xe1\xcd\x3c\x4e\xd0\x3a\x48\x5a\x49\x2b\x8c\x5a\x19\x16\xe3\x64\xc2\xb3\x71\x32\x39\x49\x44\xb6\x4a\xa2\x96\xd8\xa1\xbd\x0a\xb6\xdb\xcd\x0e\x36\x2f\x2f\x9f\x7d\xfc\xfe\xfd\xe5\x07\xb6\xd9\xc1\xe5\x3f\x7f\xbc\x7c\xf3\xe2\xea\xdd\xfb\xb7\x1f\xdf\x7e\xfc\xe9\x9d\x4c\x7c\x11\x64\x82\xb5\xc9\x0e\xae\x9e\xbd\x7b\xf7\xdd\xab\xe7\xcf\x3e\xbe\x7a\xfb\xe6\xea\xe3\xe5\xeb\x77\xdf\x3d\xfb\x78\x79\xf5\xe3\xfb\x67\xef\xde\x5d\xbe\x67\x6d\x02\x57\x2f\x2e\x5f\x3e\xfb\xfe\xbb\x8f\x57\xcf\x3e\xfc\xf4\xe6\xf9\xd5\xdb\x6f\x3e\x5c\xbe\xff\xe1\xf2\xfd\x07\xd6\x76\xe1\xea\x1f\xff\xe9\xfb\xcb\xf7\x3f\x5d\xbd\x7a\xf3\xf1\xf2\xdb\xf7\xaa\x0e\x55\xa4\xa8\xe7\xed\x9b\xef\x7e\xba\xfa\xf6\xbb\x57\xaf\x5f\x5f\xbe\xbf\x7a\xfe\xf6\xf5\xbb\xb7\x6f\x2e\xdf\x7c\x94\x65\x77\xf8\x44\x0e\x6b\x11\x07\x33\x91\xc0\x4c\xcc\xc3\x48\x40\x22\x7e\x5d\x85\x89\x78\x1d\xcf\x56\x8b\xe2\x2d\xff\xfd\x25\x85\x64\x15\x45\x61\x74\xf3\x51\xa4\x59\xca\xdb\xe4\x0c\x95\x73\x85\x37\xd6\x2a\x15\xad\x34\x4b\xc2\x69\x66\x9d\xe4\x1f\x5a\x19\xc2\x1b\xd9\x90\xe0\x6f\xaf\x7f\x11\xd3\xcc\x99\x26\x22\xc8\x04\x8a\x56\x8b\x05\x2e\x26\xd1\xb9\xba\xe2\xeb\x38\x9c\xb5\x5c\x98\x89\x85\xc8\x84\x4a\x02\xb1\x53\x53\xcf\x37\xba\x9b\xac\xd6\x5b\xd6\xd4\x69\xd6\x38\x04\x76\x30\x14\x56\x3c\xed\x4e\x8a\x47\x6e\x9e\x78\xad\x12\x5e\x1d\x64\xbe\x1d\x32\x3e\x9e\x40\xc2\xa7\x48\x80\x85\x4c\x76\x6c\x41\x86\x21\xe2\x99\xb3\x10\xd1\x4d\x76\x7b\x4a\xce\xa2\x0b\xee\x9e\x45\xa7\xa7\x38\x1b\x47\x13\x47\x7c\x5e\xc6\x49\x96\xa2\x62\xdc\x89\x73\xa7\x9a\xc8\xbf\xec\x40\x8f\x90\x6f\xa2\xf8\x79\x1c\xcd\x17\xe1\x34\x63\x45\xf3\x99\x9e\xc9\x08\xc2\x13\xd9\x8d\x48\xef\xc8\xcc\xb9\x0d\xd2\xb7\xf7\xd1\xbb\x24\x5e\x8a\x24\x7b\x40\x11\xb6\xed\xa4\x29\x11\x85\x5c\x76\x03\xc4\x38\x9c\x70\xa1\x9f\xa2\x09\x4f\xc6\xd1\x04\xef\xe0\x2e\xf8\x24\x5e\x88\x79\xb0\x5a\x64\x97\xaa\x37\x72\x93\xa8\x3d\x12\xf1\x0c\x61\x08\x39\x92\x3f\x2e\x2e\xd7\x36\x96\x33\x92\xdd\x26\xf1\x7d\x2b\x12\xf7\xad\xcb\x24\x89\x13\x64\x05\x51\x6b\x15\xa5\xab\xa5\xac\x43\xcc\x5a\x7a\x84\xad\xfb\x20\x6d\xe9\x05\x9b\x41\x4b\x7c\x5e\x8a\xa9\xfc\xf8\xaf\x3a\x09\x85\x33\x68\xcd\xc4\x32\x05\x93\x1d\xff\x6b\x2b\x8c\xd2\x4c\x04\xb3\xd6\x4d\x9c\xb1\xd6\xbf\x5a\x1d\xd1\xb1\xfe\xb5\x15\x24\x37\xab\x3b\x11\x65\x69\x2b\x8b\x4d\x75\xff\x6a\x61\xb5\x4b\x02\x3e\xb6\xcc\x42\x58\x60\x99\x09\xb5\xc0\xd2\x15\x5a\x93\xb2\xdb\xa9\x3c\xd9\x90\x40\x24\x3b\x1f\xa6\xce\x6a\x15\xce\x78\xd8\xe9\x80\x7a\x0b\x67\x5c\xe8\x27\xd9\x21\xde\xce\x57\x53\x4e\xaa\x7e\x1a\x05\x2c\xd3\x39\x74\xdd\x7c\x63\x5a\x63\x9b\xdd\x4e\x7f\x98\x06\x8b\xc5\x75\x30\xfd\xc4\x13\xfd\x7e\x1b\xa4\x7a\x52\xd3\x67\xe9\x0b\xb1\xe4\x6d\x62\x1a\x4b\x9f\x2d\xc2\x20\xe5\x91\x7e\x4d\x44\x38\x0f\xc5\x8c\xcb\xd9\x7c\x96\x24\xc1\x03\xca\x5b\xc7\x3a\x43\x9a\x05\x99\xe0\x56\x24\xee\xad\x5d\x31\x9e\x15\xc2\x9b\xf2\x6d\xa1\x17\xc5\x8c\xa4\x4c\x9f\xea\x51\x97\x5b\x38\xe4\xd1\x58\x4c\xb6\xdb\x68\x2c\x3a\xd6\xd3\x30\x9a\x89\xcf\xd6\xe4\x2c\xb4\xed\x30\xef\xd6\x19\x96\x79\x42\x27\x9c\xa9\x6c\xf2\xa1\xcc\x99\xef\xe1\x70\xbb\xad\x43\xcc\x83\x0d\xf1\x3c\x5e\x2d\x66\xad\x28\xce\x5a\xf3\x30\x2a\x36\x44\xbe\xa4\xe1\x9d\xd9\x28\xf3\x24\xbe\x93\xa9\x59\xc7\x92\x6b\xaa\x2a\x83\xc4\xb6\xad\xa5\x88\x66\x61\x74\x63\xb5\x39\x0f\xf5\x0c\xd8\xb6\x35\x0f\xa3\x60\x11\xfe\x26\x66\xb5\x64\x14\x3a\xb2\x8d\x17\x62\x99\xa2\x04\x43\xe2\x2c\x57\xe9\x2d\x0a\x31\x86\xb0\x9c\x89\xb9\xee\x67\x38\x47\x96\x23\x4b\x0b\x67\x7a\x1b\x24\xcf\x32\xe4\x62\x9c\x03\xa4\x93\x02\xee\x73\xe1\xa4\xcb\x45\x98\x21\xeb\xa9\xa5\x4f\x77\xf9\xea\xa4\x8b\x70\x2a\x90\x0b\xa7\x44\x1e\x10\x17\x62\x9e\x6f\x92\xb3\xf0\x3c\x3e\x0b\x3b\x1d\x7d\x66\x03\x9e\x8c\xc3\xc9\x89\x6a\xd2\xb1\x38\xe7\x81\x6a\xdf\xe5\x9c\x47\xf9\x0a\x1f\xce\x5b\x10\xc9\x49\x0b\xa6\x53\x91\xa6\xad\x65\x90\x88\x28\xcb\x67\x2f\x9e\xb7\x92\x38\xce\x2c\x7c\x12\x39\xcb\x78\x89\xf0\x4e\x2c\x52\x61\xc6\xa4\xea\x9f\xc6\x51\x16\x46\x2b\x21\x33\xc8\x49\x08\xf0\x6e\x67\x46\x17\x39\xbf\xc4\x61\xa4\x46\x50\xce\xca\x4c\xee\x1b\x9d\xa1\x8d\xda\x72\x6b\xd8\x76\xbb\xb6\x37\xf0\x2e\x75\x96\x49\x9c\xc5\xd9\xc3\x52\x38\x07\xf0\xa2\x84\x93\x39\xc4\xaf\x9c\x91\x1c\xc2\x9d\x48\xb8\xcf\x39\x17\xdb\xad\x15\x2b\x84\x60\xb5\xb9\xac\x2f\x9e\xb7\xd4\xb2\x9a\x3a\x2a\xa9\xdb\xad\xc6\x0c\x6a\xa5\x66\xba\xc5\xed\xb6\x6d\xd0\x49\x98\x5e\x7e\xce\x44\x94\x86\xd7\x0b\x81\x04\xde\x6e\x51\x91\x89\x0b\xbc\x83\x6a\x97\x4d\x1f\xaa\x1d\x95\x13\x56\x6e\x25\xce\x79\x79\xcc\xb6\x5b\x4b\x9e\xc7\x07\xb9\xf5\x6a\x1f\xf2\x4d\xd2\x34\x3c\x0d\xbf\x9d\xfb\x24\x58\x6a\xec\x91\xda\x36\xaa\x83\x84\xc3\x2c\xc8\x1c\xd7\x3a\xec\xc0\xb8\x04\x0a\x0f\x48\xa3\x6b\x33\xa7\x79\x16\x27\x58\x2e\x17\x0f\xaa\x78\x0d\x80\x14\x08\xa6\x9a\x68\xf6\x19\x77\x6b\xa0\xa4\x1c\x7c\x23\xa4\xb2\x6d\x3d\xf9\x7a\xc9\x50\xc3\x90\xb9\xc0\x06\x6b\x1d\x6e\x09\xdb\xd6\x05\xf6\xd3\x11\x86\x86\x9a\xea\x8b\xb5\x8a\x52\x21\xaa\x4b\xb5\x0f\x00\x8f\x82\xe0\x7a\x3d\x6a\xfa\xf6\x97\xdc\x4c\x89\x3c\xfd\x95\x75\xad\x35\x51\xac\xfd\x49\x96\x3c\x6c\x6a\xe0\x59\xbd\x5c\x99\x75\x81\xfd\x42\xb2\xde\x9d\x9a\xd6\xc5\xc3\xe6\xc8\x16\xca\x37\x85\x29\x26\xe4\x81\x17\x33\x0b\xef\x77\xfe\xea\xa0\xf7\x39\x5c\x32\x3b\x21\x5f\x5b\x0d\x88\x30\x64\xdc\x3d\xcb\xce\x45\x0e\x84\xb2\x1c\x00\x25\x5c\x8c\xb3\xc9\x89\xfc\xc7\x93\x7c\xc2\x47\xc5\x13\xdb\xa7\x44\x10\xde\x15\x04\x6e\xad\x47\x39\x78\xad\x51\x45\x72\x4a\xe5\x92\xf0\xe3\xd3\x99\x03\xf1\x93\x92\x82\x2a\x90\x2c\x24\xdc\x3d\x4b\xce\x73\x5c\x77\x96\xe4\xbd\x8e\x14\xa9\x0d\x61\x6d\xac\x92\x02\x2f\x96\xdb\x10\x8d\xba\xf3\xe6\x6d\x77\x52\xa0\x7f\x09\x5f\x47\xa8\x19\x05\xbb\x10\x16\x7b\xb8\x61\x37\x62\x56\x90\x13\xaa\x96\xfd\xcc\xc1\x27\xf1\x5e\x7f\x47\x98\xe5\x54\x46\x63\x4e\xdd\xb7\x30\xdf\xaa\x53\x34\x47\x51\x4e\x6b\xe0\xfc\x01\xc4\xc1\xe2\x57\x9a\x38\x02\x5b\x25\xc8\xe0\x55\xfa\x30\xa7\x2b\x4d\xc7\xe6\x28\x03\x81\xf1\xae\x00\x07\x05\x68\xcc\x20\x33\xfd\x79\xa5\xe8\x1d\x39\x3d\x4d\x35\xcd\x8a\x3a\x20\xdb\x01\xd2\x24\x57\x8d\x45\x92\x24\x45\x49\x4e\x9c\x84\xb6\xad\xb6\x42\x89\x95\xb7\x5b\x54\x90\x6d\x66\x85\xcf\xa9\x6d\xc7\x07\xa9\x18\x14\xcd\x23\xa9\x0f\x4d\xfb\x48\x68\x9e\xc8\xae\xf2\xf1\x04\x83\xac\x9e\x27\x8a\x2e\x0c\xa2\xa9\x44\x0d\x8b\x91\xc4\x96\x29\x4a\xd4\x44\x40\x02\x6d\x17\x33\x9d\xa4\x29\xbc\x36\xc1\x78\x87\x0f\xe1\xbe\xc2\xff\xfa\x58\xe8\x4e\xcf\x51\x3b\xd9\x6e\xf3\x3d\x9c\xd4\xe0\x3c\x4a\x78\x5e\xe7\x78\x02\x2b\x50\x9c\x0b\xde\x87\x82\x19\x24\x0d\x20\x55\xf7\x19\x92\x9d\xe1\x59\x9c\x40\x91\x7b\xf5\x8e\x98\xa9\xa6\x12\x6d\xef\x4d\xc9\xc8\xd0\xc7\x19\xc8\x2e\x48\xd2\x4e\x0f\x50\x3e\xed\x4a\x6e\xc6\x11\x51\x96\x84\xa2\x60\x60\x7e\x49\x9d\x2b\x11\x7c\xba\x4a\x85\x88\x78\x54\xc9\x27\x57\x79\x56\x79\xdf\x03\xb2\x02\x6f\x34\x47\xa3\xd2\xb1\x25\x27\x50\xe7\x41\xb5\xe6\xa6\x0b\x11\x24\xd5\x3d\xf9\x95\x3d\x51\x8c\x44\x26\xeb\x32\xe3\xb2\xe6\x71\x6c\x01\xaa\xd4\xb4\xc3\xb8\xfa\xf1\xe9\x75\x90\x58\x72\xde\x1f\xcb\x13\xa4\xb3\xb9\x05\xe3\xfc\x10\x56\xa9\xff\xfc\x08\x57\x2b\x30\x9b\x56\xf1\x48\x65\x23\x92\x6b\xaa\xbc\x1d\xf6\xe3\x37\xd5\x8f\xea\x3a\xea\xee\xef\x65\xfc\x75\xf5\x9b\xf5\x58\xae\x6a\x22\x98\x12\x9f\xad\xa6\x41\x9b\x2c\x8e\xae\xd2\x72\x74\x1f\x2c\xc7\x8c\x57\x25\x24\xf2\xd7\x79\x2a\x73\x3e\x3e\x47\x77\x41\x18\x99\x3a\x55\xb1\x63\xb9\x0b\x04\xa0\x72\x16\x13\xb9\xd9\xe1\x7c\xfd\xeb\x5f\xf6\x92\x55\x33\x45\x9a\xd9\x3b\xe5\xac\xee\xef\x21\x84\x21\x27\x03\x79\x41\xf0\xe9\x9a\x6d\xfb\xe0\x8b\x5e\x5f\xdb\xae\x1f\x3d\xdb\x46\x7b\x67\x71\xb3\xcf\xf6\xd7\x04\x06\x3b\xbc\xc3\x0a\x25\x60\x28\x88\x5f\x79\xc2\x14\x43\x58\xa4\x84\x28\x80\x54\x61\xb6\x76\x32\x0e\x26\xfa\x29\x53\x4f\x12\x70\xac\x78\x49\xaa\x16\xfd\x33\xcd\xd9\xb6\x79\x50\x70\x25\xb5\xed\x55\x4e\x31\xae\x50\x20\x61\x94\x4c\x8f\xf3\xb4\xd8\xa4\x29\x69\x0c\x3f\x24\xff\xab\x3c\xd3\x5f\xad\x4e\xd0\xb1\xfe\x6a\xe1\x13\xcd\x2c\x2c\x9c\x69\x3c\x13\xdc\x7a\xfd\xf6\xc5\xf7\xdf\x5d\x5e\xbd\x79\xfb\xf1\xea\xe5\xdb\xef\xdf\xbc\xb0\x60\xa1\x78\xe2\x29\x97\x7d\xaf\x11\x47\x27\x72\x0c\x63\x77\xa2\x68\x48\x34\xcd\xe7\x0c\x6a\xa2\x9c\x9c\xb5\x43\x2a\x33\x99\x28\x3e\x51\xe0\x1d\x86\x29\x94\x45\x72\x2e\x3a\xa7\x14\x64\x5b\x05\x2d\x97\xa3\xf9\xf8\x6b\x26\x0a\x02\xee\x9e\x05\xe7\x39\x2b\x74\x16\x74\x3a\x38\x44\x91\x9c\xed\x82\xcd\xdc\xa1\x0d\x61\xe3\x3a\xe4\x14\x88\xf6\x7d\x0c\x02\x51\x42\xf5\x4f\x4f\xff\x74\xf5\x8f\xf9\x36\x50\x3f\xd4\x24\xf6\xf5\x8f\xa7\x13\xcd\x8f\x2e\x47\x5d\xfd\x43\x74\x96\xa1\xfe\xd1\x6f\x54\xb7\x40\x75\x9d\x54\xd5\x42\xfa\xaa\x6a\x32\x70\xf5\x9b\x2e\x40\xcd\x8f\xfe\x36\xd4\x6f\xae\xa9\x4c\xb7\xe0\x9a\x1f\x5d\xb5\xab\xab\x76\xbb\xf8\x44\xfe\xe8\xbe\xb8\xba\x67\xae\x6e\xcf\xd5\xbd\x76\x4d\x7b\x54\xff\x74\xf5\x4f\x4f\xff\x78\xfa\xc7\xd7\x3f\xba\x83\x03\x53\x60\xa8\xfb\xa2\xfb\x39\x24\xfa\x47\xd7\x32\xd4\xb5\x0c\x75\x2d\x43\x5d\xcb\x50\xd7\x32\xd4\xb5\x0c\xf5\x0c\xfa\x7a\x06\x7d\xfd\xd6\xd7\x1d\xf4\x75\x07\x3d\x9d\xe8\xe9\x61\xfa\x7a\x0c\xfe\x50\x8d\xa8\xaf\x87\xe9\xe9\x44\x4f\x97\xf3\x4c\x39\x3d\x30\x5f\x4f\x88\xaf\x73\xfa\x7a\x42\x7c\xd3\x82\xce\xd2\xd7\x59\xfa\xfa\x5b\x5f\xf7\xa5\xaf\x7b\xad\xdf\x88\xee\x12\xc9\x13\xcd\x1a\xe9\xa1\xe8\xaa\x89\xee\x20\xf1\x4d\xa2\x2e\xe7\xeb\xc4\xbe\xc9\xa2\xe7\x4c\xb7\x4e\x3c\x53\xa7\x9e\x3a\x4f\xad\x11\xf1\x4d\x16\xdd\x82\xee\x3c\xd1\x83\x26\x9e\x9e\x56\xcf\xbc\xe9\x2c\x7a\xb4\x44\x77\x9e\x98\xf1\xf5\xf4\xf8\x7a\x66\x26\x4c\xa2\x1e\x6d\x4f\xcf\x67\x4f\xcf\xa7\xa7\xc7\xee\xe9\xe9\xe9\xea\xf6\x06\x66\x5a\xf5\x4c\xe8\x95\xa6\x7a\xa5\x69\xdf\xcc\x99\x49\x34\x59\x74\x43\x7a\x6b\x50\x53\x7c\xd0\x53\x6b\xa4\xb7\x14\xd5\x9b\x88\x9a\x9d\xac\xf7\x35\xed\x9a\x66\x75\x96\xae\xae\xac\xab\x57\xb3\xab\x0b\x74\x75\x43\x5d\xdd\x42\x57\xb7\xd0\xd5\xb5\xf4\x74\x2d\x3d\x5d\x4b\xcf\x0c\x53\x17\xef\x75\x31\x64\x25\x2b\x89\x3c\x17\xef\x60\x43\x3c\xca\x88\x47\x81\x78\x5d\x46\xbc\x2e\x10\xaf\xc7\x88\xd7\x03\xe2\x79\x8c\x78\x1e\x10\xcf\x67\xc4\xf3\x81\x78\x7d\x46\xbc\x3e\x10\x6f\xc0\x88\x37\x00\xe2\x0d\x19\xf1\x86\x40\x7c\x97\x11\xdf\x05\xe2\x13\x46\x7c\x02\xc4\xa7\x8c\xf8\x14\x88\xdf\x65\xc4\xef\x02\xf1\x7b\x8c\xf8\x3d\x20\xbe\xc7\x88\xef\x01\xf1\x7d\x46\x7c\x1f\x88\xdf\x67\xc4\xef\x03\xf1\x07\x8c\xf8\x03\x20\xfe\x90\x11\x7f\x08\xa4\xef\x32\xd2\x77\x81\xf4\x09\x23\x7d\x02\xa4\x4f\x19\xe9\x53\x20\xfd\x2e\x23\xfd\x2e\x90\x7e\x8f\x91\x7e\x0f\x48\xdf\x63\xa4\xef\x01\xe9\xfb\x8c\xf4\x7d\x20\xfd\x3e\x23\xfd\x3e\x90\xfe\x80\x91\xfe\x00\x48\x7f\xc8\x48\x7f\x08\x64\xe0\x32\x32\x70\x81\x0c\x08\x23\x03\x02\x64\x40\x19\x19\x50\x20\x83\x2e\x23\x83\x2e\x90\x41\x8f\x91\x41\x0f\xc8\xc0\x63\x64\xe0\x01\x19\xf8\x8c\x0c\x7c\x20\x83\x3e\x23\x83\x3e\x90\xc1\x80\x91\xc1\x00\xc8\x60\xc8\xc8\x60\x08\x64\xe8\x32\x32\x74\x81\x0c\x09\x23\x43\x02\x64\x48\x19\x19\x52\x20\xc3\x2e\x23\xc3\x2e\x90\x61\x8f\x91\x61\x0f\xc8\xd0\x63\x64\xe8\x01\x19\xfa\x8c\x0c\x7d\x20\xc3\x3e\x23\xc3\x3e\x90\xe1\x80\x91\xe1\x00\xc8\x70\xc8\xc8\x70\x08\xd4\x75\x19\x75\x5d\xa0\x2e\x61\xd4\x25\x40\x5d\xca\xa8\x4b\x81\xba\x5d\x46\xdd\x2e\x50\xb7\xc7\xa8\xdb\x03\xea\x7a\x8c\xba\x1e\x50\xd7\x67\xd4\xf5\x81\xba\x7d\x46\xdd\x3e\x50\x77\xc0\xa8\x3b\x00\xea\x0e\x19\x75\x87\x40\x89\xcb\x28\x71\x81\x12\xc2\x28\x21\x40\x09\x65\x94\x50\xa0\xa4\xcb\x28\xe9\x02\x25\x3d\x46\x49\x0f\x28\xf1\x18\x25\x1e\x50\xe2\x33\x4a\x7c\xa0\xa4\xcf\x28\xe9\x03\x25\x03\x46\xc9\x00\x28\x19\x32\x4a\x86\x40\xa9\xcb\x28\x75\x81\x52\xc2\x28\x25\x40\x29\x65\x94\x52\xa0\xb4\xcb\x28\xed\x02\xa5\x3d\x46\x69\x0f\x28\xf5\x18\xa5\x1e\x50\xea\x33\x4a\x7d\xa0\xb4\xcf\x28\xed\x03\xa5\x03\x46\xe9\x00\x28\x1d\x32\x4a\x87\x40\xbb\x2e\xa3\x5d\x17\x68\x97\x30\xda\x25\x40\xbb\x94\xd1\x2e\x05\xda\xed\x32\xda\xed\x02\xed\xf6\x18\xed\xf6\x80\x76\x3d\x46\xbb\x1e\xd0\xae\xcf\x68\xd7\x07\xda\xed\x33\xda\xed\x03\xed\x0e\x18\xed\x0e\x80\x76\x87\x8c\x76\x87\x40\x7b\x2e\xa3\x3d\x17\x68\x8f\x30\xda\x23\x40\x7b\x94\xd1\x1e\x05\xda\xeb\x32\xda\xeb\x02\xed\xf5\x18\xed\xf5\x80\xf6\x3c\x46\x7b\x1e\xd0\x9e\xcf\x68\xcf\x07\xda\xeb\x33\xda\xeb\x03\xed\x0d\x18\xed\x0d\x80\xf6\x86\x8c\xf6\x86\x40\x3d\x97\x51\xcf\x05\xea\x11\x46\x3d\x02\xd4\xa3\x8c\x7a\x14\xa8\xd7\x65\xd4\xeb\x02\xf5\x7a\x8c\x7a\x3d\xa0\x9e\xc7\xa8\xe7\x01\xf5\x7c\x46\x3d\x1f\xa8\xd7\x67\xd4\xeb\x03\xf5\x06\x8c\x7a\x03\xa0\xde\x90\x51\x6f\x08\xd4\x77\x19\xf5\x5d\xa0\x3e\x61\xd4\x27\x40\x7d\xca\xa8\x4f\x81\xfa\x5d\x46\xfd\x2e\x50\xbf\xc7\xa8\xdf\x03\xea\x7b\x8c\xfa\x1e\x50\xdf\x67\xd4\xf7\x81\xfa\x7d\x46\xfd\x3e\x50\x7f\xc0\xa8\x3f\x00\xea\x0f\x19\xf5\x87\x40\xfb\x2e\xa3\x7d\x17\x68\x9f\x30\xda\x27\x40\xfb\x94\xd1\x3e\x05\xda\xef\x32\xda\xef\x02\xed\xf7\x18\xed\xf7\x80\xf6\x3d\x46\xfb\x1e\xd0\xbe\xcf\x68\xdf\x07\xda\xef\x33\xda\xef\x03\xed\x0f\x18\xed\x0f\x80\xf6\x87\x8c\xf6\x87\x40\x07\x2e\xa3\x03\x17\xe8\x80\x30\x3a\x20\x40\x07\x94\xd1\x01\x05\x3a\xe8\x32\x3a\xe8\x02\x1d\xf4\x18\x1d\xf4\x80\x0e\x3c\x46\x07\x1e\xd0\x81\xcf\xe8\xc0\x07\x3a\xe8\x33\x3a\xe8\x03\x1d\x0c\x18\x1d\x0c\x80\x0e\x86\x8c\x0e\x86\xe0\xb9\xcc\x73\x77\x13\xa0\x0d\x04\x84\xc4\x89\x7b\x10\xc8\xd1\x7c\xe8\x7c\x11\x64\xaf\x83\xe5\x0e\x36\x74\xe8\x32\x3a\x74\x8b\x7a\xba\x4d\xf5\x90\x63\xf5\x84\xd1\x74\xb1\x9a\x89\x54\x55\x44\x18\x1d\x92\xa2\xa2\x5e\x53\x45\xf4\xb0\x22\x23\xec\x34\xcc\x95\xaa\x88\x32\x3a\xa4\x45\x45\x5e\x53\x45\x87\xb0\x35\xaf\xe8\x46\x64\x95\xdb\xa1\x17\x22\x9d\x26\xe1\x32\x8b\x13\x5d\x75\x97\xd1\x61\xb7\xa8\xda\x6f\xaa\xba\x77\xb4\xea\x75\xb0\x58\x99\x2e\xf6\x18\x1d\xf6\x8a\x7a\xfa\xfb\xf5\xd4\x2e\x0c\x0b\xb4\x46\x25\x05\xb2\x5f\xf7\xbb\x24\xbe\x0b\x53\x25\x7d\x0a\x16\x8b\x07\x59\x7b\x7e\x64\x87\x1e\xa3\x43\xaf\x68\x65\xd0\xd4\x5b\xff\xb0\xc6\x0f\x59\x12\x46\x37\xce\x32\x98\x5d\x46\x33\xd5\x5b\x9f\xd1\xa1\x5f\xd4\x33\x6c\xaa\xa7\xff\x58\x3d\x1f\xb2\x20\xc9\x54\x4d\x7d\x46\x87\xfd\xa2\x26\xe2\x36\x55\x35\x3c\x5a\x55\x96\x84\x77\xef\xc3\x9b\x5b\x5d\xd7\x90\xd1\x61\xb9\x81\x49\x13\x09\x2c\xa9\xb3\x47\xea\xfa\x4e\xcc\x75\x55\x03\x46\x87\x83\xb2\xaa\x86\xc3\xd0\x75\xf7\x0e\x03\xe9\x0d\xb1\x33\x47\x56\x90\x3e\x44\xd3\x57\x99\x48\x82\x2c\x96\xcc\x31\x6c\x48\x6f\xc8\x48\x6f\x08\x5d\xd7\x65\x5d\x57\x55\xd8\x70\x2a\xba\xfb\xf5\xf9\xd8\xb9\x59\xc4\xd7\xc1\x42\x56\x21\x91\x2e\x74\x65\x79\x59\xfc\xe0\x2c\x64\x0d\x82\x1b\x23\xb1\x3f\xbc\x25\x30\xd7\x27\x1f\x1f\x96\x42\xf3\x4f\xa2\x63\xb5\xc2\x54\x5d\x3b\x05\xad\xbc\x40\xdb\x2a\xef\x9c\x77\x3b\xd8\xc8\x76\x0f\x8e\x8e\x91\x97\x22\xea\xe3\x93\xa3\x7d\x68\x27\x48\xe0\x47\x1b\x8d\x5a\x9a\x7f\xdd\x6f\x53\xe2\x22\x5f\x36\x7c\x70\xb0\x74\xc3\x65\x93\x9b\xb5\x48\xd2\x30\x8e\x98\x45\x1d\xdf\x21\xc4\xda\x9d\x58\xd1\xea\xee\x5a\x24\x25\x2b\x75\x75\x25\x6c\x1b\x5d\x5d\x09\x9e\x60\x33\xa0\x83\x83\x96\x0f\x88\xf4\x9a\x07\x04\x99\x64\x7d\xc3\x39\x92\x63\x82\x42\xe0\x9f\x95\xb7\x61\xe9\x7d\x98\x4d\x6f\x51\x84\x37\xd3\x20\x15\x2d\xc2\xcc\x97\xa2\x8e\xa4\x60\x1a\x85\xe6\x2c\x33\x48\xf0\xee\x44\xe5\xa6\x87\xb9\x65\x7b\x07\xf9\x25\x2b\xa9\x4b\x74\x9b\x4a\x40\xd8\x58\x06\xc2\xf2\x62\xab\x26\x91\x32\x39\xcd\x15\x09\x14\xa2\x35\x25\x67\xdd\x90\x1e\x23\x3d\x39\x5b\x07\x00\xa3\x9c\xa1\xb6\x64\xd8\x30\x42\x87\xd5\xf6\xdb\xb9\x3a\x83\x96\x29\x14\xf7\xec\x9b\x1d\x58\x81\x05\x9b\x1b\x51\xb9\xb8\x2f\x8b\xed\x76\xd8\x09\x76\x58\xae\x94\x24\x5d\x88\xec\xc0\x01\xa4\xa9\xec\x3f\x88\xe4\x2f\xc5\xce\x2c\x9e\xaa\xde\x43\xc8\x13\x7d\xc3\x8f\x22\xa3\x4a\x71\xb9\x10\xf2\xcb\xb1\xbd\x9a\xf3\xcf\xa3\xbd\xfc\x48\x60\x7d\x59\xb2\x51\xc4\x13\xe4\xdb\x92\x1e\x80\xab\xa2\x3f\x54\xf7\x47\xb2\xd5\xa1\xfc\xed\x63\x88\x65\x7a\x0f\x43\x20\x7f\xbb\x18\xf6\xb6\xd5\x4a\x97\x5e\xc0\x14\xe6\x30\xe3\xc2\x4e\x9d\x97\x70\xab\x7e\xbf\x85\xa5\xfa\xfd\x00\x77\xea\xf7\x1d\xac\xd5\xef\x37\xf0\xa0\x7e\x7f\x84\x6b\x7e\x3b\x8a\x58\x34\xce\x26\xdb\x2d\x92\x3f\x7c\xb3\xc3\x70\xc3\xaf\x4b\x19\x39\x5c\xf1\xdb\x51\xc2\x96\xa3\x64\x9c\x4d\x18\x4a\x54\xde\xcd\x0e\x97\x39\xd4\x7d\xc3\xa2\x15\x46\xad\x5b\xdb\x46\x2b\x9e\x61\x58\x61\x34\xe5\xed\x99\x6d\x5f\xe5\xb7\x5b\x6d\xce\xaf\xc6\x8b\x09\xb6\xed\x00\x5d\xc3\x02\x6f\xb7\x68\xce\xa7\x23\x99\xc6\x56\xe3\xc5\x04\xae\xc7\x8b\x09\xbf\x6d\xbc\x9f\x94\x99\x46\x32\x13\x5b\xdb\xf6\x74\x14\xa2\x39\x24\x98\x3d\xd8\xb6\xfc\xc0\xf9\x7c\x54\x5d\x0c\x7d\xf1\x51\xca\xd9\xb5\xd0\x29\x9c\x2b\x79\x54\x55\xb4\x2d\xf0\xc6\x9c\xb9\x03\x29\xb9\x3e\x82\x6e\x7e\x44\x22\x71\xdf\x12\x27\xf5\x63\xa9\xd2\x50\x86\xf7\xce\x9f\x49\x96\x27\x73\x3f\xa5\x22\xc6\x11\xd5\x5b\xc5\xca\xa9\x29\x2f\x11\x8a\xc9\xe5\xa2\xb2\x14\xd9\x0e\xcd\x31\xbb\xab\x4e\x52\x01\xa5\xe6\xa3\x10\xbd\x34\xa9\xea\xec\xc2\x1c\xb3\x39\xdc\xd9\x36\x42\xd7\xce\x3a\x4c\xb2\x55\xb0\xd8\x6e\xcb\x67\xb9\xd4\x58\x4e\xe0\x1c\xe4\x66\x78\x6f\xdb\x37\xb6\xdd\xbe\x19\x2f\x26\xb6\x1d\xa3\x1b\x90\x15\x60\xbc\x3b\x49\x9d\x97\x9c\x40\xea\x7c\xcb\x29\xa4\xce\x07\xde\x83\xd4\x79\xc7\x07\x90\x3a\xdf\x70\xe2\x43\xea\xfc\xc8\xbb\xf2\xcb\xf7\xdc\x97\x9f\xde\x73\x42\x07\x15\x8c\x94\x16\x68\x88\x48\x4e\x0d\xcc\x51\x90\x54\x3f\x48\x1e\x42\x42\x08\x7a\x80\x73\x9b\x0f\x5a\x96\x3c\xe4\xf7\xe7\x6d\x81\xf0\x6e\x1a\xc8\xe5\x2b\xe4\xfb\x6d\x77\x67\x30\x0e\x3d\xc0\xbc\xfb\x80\xdf\x5a\x45\x46\x57\xa6\xdc\x67\x5a\xcb\xcc\xb6\x8d\xb6\xd9\xeb\x20\xbb\xe5\x5c\xfe\x1f\xe9\x14\xd6\x54\x28\x15\x8b\xb9\x6d\xcb\xff\xd5\x02\xf2\x9d\xe5\xcb\x81\xac\xca\x5d\xb1\x85\x11\x6e\xc2\x31\x37\x0a\xc7\xdc\x14\x38\x86\x1e\xe0\x7a\xa3\xa8\xb5\xdb\x53\x3c\x3a\x82\x6f\xca\x9b\x2a\x0d\xc9\x65\x52\x3e\x3b\x07\x74\x40\x01\x7f\xfa\x06\x1e\x0e\xaa\xb0\x4e\x20\x32\xc0\xa3\x1a\xd4\x09\x2b\xd5\xcf\x35\x7a\x43\x04\x42\x8c\x77\xec\xe0\x12\xc0\xec\x79\x75\x2f\x0a\x0a\x3f\x13\xc9\x5b\x83\xe4\x14\x25\x23\xc1\xe8\x40\x76\xea\x80\x48\xa8\x61\x09\x32\xc0\xb6\xfd\x27\xb0\x85\x40\x64\x88\x91\x35\x0b\xd7\x16\xfe\x5a\xbc\xa1\xbb\x47\x24\xa3\x0e\x39\x0e\xa1\x07\xa4\xc4\x63\xb8\xe0\x50\xe2\x3e\x8a\x56\x8b\x45\x9b\x73\xc1\x1a\xce\x6e\x4e\x28\xd1\x3d\xba\x22\xbf\xf8\x53\x28\xc1\xd3\x28\x81\x7a\x06\x25\x0c\x25\x4a\x68\x1c\xf4\x49\xe2\xcc\xcd\xa2\x35\x7e\x3f\x58\xa2\x70\x8e\x64\xe7\x21\xe3\x31\xca\xa0\xed\x62\x90\xe4\x06\x84\xb8\x3c\x70\xad\xc0\x64\x36\x87\x2e\xc5\x9b\x9d\xa4\x13\x6f\x44\x66\x85\x51\x2b\xd9\x6e\xad\xd4\x3c\x1e\x90\x6c\xd6\x33\xa5\x5f\x13\x27\x9a\x6c\x2b\x14\xd7\x4a\xb2\xcd\x52\x2c\x8d\x2a\x6d\xdb\xc8\x5c\xa1\xab\x34\x6c\x76\x8c\xc7\x88\x07\x66\xdf\x48\x0e\x1c\xa8\x24\xdb\xe5\x9c\x3d\x42\x5d\x34\x9d\x87\x8d\x88\x56\x77\x22\x09\xae\x17\x82\xb5\x11\xb1\x05\x86\x69\x1c\xcd\xc3\x9b\x55\x9e\x46\x65\xda\x7d\x12\x66\xe6\xbd\x27\xdf\x55\x67\x58\x56\x00\x98\xc7\x48\x8a\xa3\x27\xb2\x20\x6a\x0b\xaa\x2f\xd7\x36\x94\xf8\xa9\x09\xac\xa3\x88\x0b\x27\x8b\x35\xaf\x21\x4f\x40\x82\x42\x1e\x99\x13\x8d\x8b\x8a\x54\x05\x47\x4a\xab\x9e\xbf\x9d\x7f\xa1\x70\xfb\xff\x5d\xf3\x07\x4b\xfe\x3c\x88\xfe\x9a\xb5\xa6\x71\xb4\x16\x49\x66\xc8\xf4\x56\x16\xb7\x96\x49\x78\x17\x66\xe1\x5a\xb4\xf4\x92\xe3\x2a\xbd\xde\xad\x11\x46\x39\x2e\x17\x88\xba\xf8\x24\x43\x99\xf3\x2d\x6c\x34\x6b\xc3\x14\xa9\xb4\x53\x44\x9e\xcb\x94\x98\x8a\x51\x2a\x6b\x20\x87\x27\xa8\x40\xb0\xe3\xde\x64\x4c\x7a\xea\x6a\x46\xe3\xdf\xa4\x8a\x7c\x4b\x82\xb5\x7b\x04\x7b\x08\xd4\x7b\x7c\x71\x73\xb0\x5e\xd3\xb7\x7a\x93\xa7\x35\xb2\x33\x59\x7e\x04\x3a\x6a\x9f\xf7\x7c\xd6\x53\x33\x71\x04\xfa\x4b\x38\xe0\x62\x64\xad\xa2\x74\x1a\x2f\xe5\x06\x4d\x95\xca\x9c\x16\x83\x94\x24\x99\xd6\x01\x8b\xc6\xc9\xc4\xb6\x05\xea\xbb\x18\x45\x90\xa8\x2b\xc6\x66\xb0\x25\x73\x8e\xc5\x84\x4b\x14\x2a\x4f\x9b\xcb\x88\xe7\x42\xdf\x65\x7d\x25\x8c\x39\x40\x18\x35\xc1\x42\xd1\x35\xda\xc7\xa8\xed\x3e\xc6\x01\xe5\x88\xb0\x83\xa2\x51\xa2\xaa\x32\x34\x17\x23\x6a\x27\x10\xda\x67\x84\xf6\x65\x9b\x8f\xe0\x83\xfa\x0a\x1b\xfa\xae\x8d\x44\x95\xbc\xcb\x70\x45\xab\x2d\xb2\x6d\xa5\xcb\x7b\xc8\xc3\x26\x1d\x8b\xb5\xc2\x68\x1a\x27\x89\xdc\xa1\x61\xb4\x8e\xa7\xc1\x11\x3e\xb6\xeb\x7f\x69\x73\x79\x8f\x6c\x2e\x05\xc1\xfa\x43\xd6\x97\x50\xab\xfb\xb8\xa8\xa6\x64\x27\x5d\xc3\x10\x74\x0d\xf8\x27\xdd\x61\x75\x7e\xc7\x13\x67\x1a\x2f\x1f\x7e\x0c\xb3\xdb\x30\xda\x57\x13\xd5\x97\x83\x89\xb9\x89\x0d\x78\x88\xe2\x42\x0f\x24\xe5\x32\x53\x80\x61\xc5\x25\x91\x1c\x60\x58\x1c\xa8\x46\x5c\xd0\x51\x39\x3c\x3a\xc9\x35\x81\xa6\x8a\xc4\x71\xee\xc2\x08\xa1\x82\x93\x5d\x8c\x02\x16\xa1\x05\x04\x18\x9f\xae\x20\x38\x4d\x31\xcc\x39\x51\xac\xc1\xea\x3c\xb5\xed\xf4\x7c\xd5\x99\xda\x36\x9a\xf3\x53\x02\xab\x0e\x9f\x9e\x12\x48\xd5\x0f\x3e\x9b\x9e\x9e\xb6\x2e\xdc\x33\xbc\x92\x4b\x14\x8f\xe2\x71\x3a\xe1\xf1\x78\x35\x61\x46\x51\x5d\x26\xc8\xcc\x73\x59\x70\x9e\xaf\x4a\xac\xf6\x4b\xd7\x63\xa4\xeb\x01\xe9\x0e\x19\xe9\x0e\x81\xf4\x5c\x46\x7a\x6a\xcf\x1e\xe0\x85\x3f\x37\xc3\xcd\xaa\xe9\xf9\xa4\xc6\x3c\xac\x28\x10\x07\x07\x53\xa8\xe6\x39\xb8\x20\x95\x89\x24\xc5\x44\xc6\x72\xf6\x83\x23\xb3\xbc\xe0\xc5\xdc\xae\x46\x31\x8b\xd0\x0a\x62\x7c\xb6\xb8\x48\xcf\x70\x36\x4e\x3b\x9d\x09\x17\x05\xbb\xf0\x85\x99\x38\x8a\xab\x48\x77\x90\x0f\x7e\x98\x0f\xde\xfb\x02\x97\x5b\xe1\xac\x62\x08\x74\x5d\x29\xac\xe4\x8c\xc8\x3d\x14\xa1\x55\x31\x1d\x53\x1e\xa2\x00\x16\xea\x32\x5e\xd8\x76\xdc\xe6\xb1\x9e\xc3\xb3\xc5\xc5\xf4\x0c\x87\x73\x84\x52\xbe\x1a\x4f\x3b\x9d\x09\x6e\xf3\x14\x17\x54\xbc\x58\xa4\xa2\x55\x64\x9c\x76\x3a\x2a\xaf\xd8\x6e\xa7\x72\x87\xac\xb0\x6d\xaf\xc6\xd3\x09\xe7\xbc\xb8\xe2\x97\xdf\xb6\x5b\xd7\xcc\x48\x5b\xd8\xf6\x29\xd9\xd5\xa7\x65\xc0\x48\x77\x90\x4f\xcf\x6e\x02\xbd\xa3\x5c\xb8\x67\xb8\xf0\x7e\xbe\x23\xe4\x1e\x89\xf3\x69\x92\x7c\x78\xaf\x7b\x1c\x0f\xa8\x09\xe1\x84\x73\x01\x2b\x4e\xe5\xcf\x82\x77\xe5\xcf\x94\xf7\xe4\xcf\x9c\xfb\xf2\x67\xc6\x3d\xa5\xf0\x39\x87\x5b\x9e\x6d\xb7\xc1\xc9\xe1\xfc\x06\xb0\x2c\xf7\xdc\x1d\xac\xe1\x41\xee\x36\x0c\xd7\x3c\x42\x0f\x92\x4d\x4f\x50\x00\x4b\xe8\x62\xb8\xe2\x31\xba\x2e\xe6\xfd\x9e\xbb\x70\xc9\xd3\xd1\x2d\xca\xe0\x0a\xb3\x95\x7a\x70\xb1\xd9\x59\x67\x57\x17\xf7\x67\xf7\x66\x4e\x67\xdb\xed\xbd\x9c\xd3\x6b\x6c\xdb\x68\xcd\x6f\xd0\x1d\xbf\x1e\xdf\x4f\xe0\x1e\x1e\x30\x08\x2c\xf3\xa4\xf8\x72\x7c\x3f\xe1\xeb\x13\xb5\x2a\xe1\x1c\xad\xb1\xe1\x9b\x85\x61\x94\x73\x59\x52\xdb\xd5\xdc\xb0\x97\x73\xc3\x77\xfa\xdd\xcf\xdf\xef\x73\x6e\xf9\x52\x2b\x4c\xdf\x69\x9d\x6a\x59\xe9\x34\x5f\x7d\x52\x4c\xc4\xe8\x94\xb0\xc5\x76\x3b\x1d\x4d\xd9\xa5\x59\xcb\xda\xd6\x86\x5e\x97\xf5\xba\xe0\x51\xe6\x51\xe8\x7b\xac\xef\xc9\x55\x3d\x60\x25\xf3\x55\xed\x12\xb3\xd7\xe5\x6a\x86\x66\x79\xe3\xc7\x0e\x3c\xc8\x25\x48\x61\x85\x37\x0a\x4f\x1b\xf5\x11\x49\x28\xcb\x9d\xbd\x90\x10\x2e\x46\x8b\x62\xda\x67\x7c\x35\x9a\x9f\x12\xe6\xc2\x2d\x5f\xc9\xce\x13\xb9\xf1\x83\x73\x8a\xd5\x56\x3e\x53\x58\x6a\x26\x67\x7b\x8a\x37\x29\x9f\x8e\x67\x13\x98\x75\xf8\xed\xc9\x75\x22\x82\x4f\x92\x9a\x96\x6f\xb0\x1a\xcd\xce\x5d\x36\x3f\xe7\xb3\x43\x42\xfa\xbd\x98\xad\xa6\x4a\x35\x5d\xdc\x2d\xb3\x87\x56\x20\xd1\x7e\xeb\x3e\xcc\x6e\x5b\x51\xdc\x0a\xa3\x30\x0b\x83\x45\x41\x59\xa9\x66\x57\xa3\xd9\x05\x77\xd9\xfc\x62\x76\x26\xab\xc7\xba\x03\xb6\x8d\x52\x9e\xa1\x14\x74\x2f\x60\x81\x0b\x6c\x97\x36\x4d\x75\x97\xb0\x2e\x29\x27\xf9\x28\x81\xd4\x1f\x9a\xa3\xd3\x37\x47\x47\x51\x2b\xe9\x52\x4c\x43\x49\xa9\x1c\x01\x2d\x0a\xa6\xe6\xed\xcb\x14\xdb\x6e\x90\x40\xa3\x8c\x0b\x67\x1a\x47\x69\x96\xac\xa6\x59\x9c\xe0\xed\x36\x6b\x73\x4d\xfa\xd8\x76\x3b\x42\x15\xb1\x09\xde\x6e\x51\x66\x20\x28\x06\xb9\x7c\xb6\x6d\xf4\xe2\x51\xc6\xb3\x71\x38\x91\x6d\x14\x39\xaa\x22\xd9\x91\xaa\x90\x65\x35\x42\xa8\xcf\xfa\xfd\x02\x79\xf7\x8e\x12\x67\x3d\x7a\x1c\x2e\x94\xf2\x20\x25\x04\xc6\x48\xf3\xe3\x3d\xca\x7a\x92\x72\xed\x7d\x1d\x8d\x95\xef\xe2\xbe\x01\xd8\xfd\x9e\xdc\xc4\xe3\x89\x56\x4f\x86\x80\x6f\x76\xfb\x12\xc2\xc4\x90\x47\x92\xba\x69\x05\xb8\x04\x29\x11\x1f\x4f\x20\xe4\xee\x59\x78\x9e\x29\x43\x8a\x68\x1c\x4e\xb8\x15\x8c\xad\x4e\xd8\xb1\x26\xd6\x49\x20\x19\xb1\x52\x8a\xf1\x12\x02\xa5\xef\x57\xc8\xb5\x5e\x22\xab\x93\x5b\x3a\x80\x85\x3b\x16\xb6\x0a\x19\x97\x2c\x8b\x84\x12\x51\x97\x33\x52\x08\xa8\xae\xc3\x68\x56\x25\x57\x72\x5a\xbf\x24\x56\x62\xcd\x65\x14\xa8\x11\x88\xc4\x96\x7b\x4a\xba\x09\x0f\xe4\x8e\x98\x06\x19\xda\xcf\x8f\x6b\x1a\xfa\x55\xca\x70\x35\x4a\x51\x06\xb9\x15\x09\x24\x98\x85\x4a\x3e\x27\x4a\x01\x5c\x7d\x2f\xd9\x36\x5a\x55\x24\x72\xd5\x4f\xb0\x92\x6b\x68\x4e\x47\x8f\xf5\x7b\xe5\x26\x39\x7a\xe9\xd1\x33\x42\x67\x7d\x36\x72\xee\xea\x63\x70\x63\xc9\x25\xb5\x9e\xe5\x23\xb0\x38\x4f\x1a\x44\x1d\xc5\x08\x77\x08\x3f\x7a\xa0\x24\x7e\xce\x07\x54\x9a\x18\x8c\xac\xef\x0b\x21\x16\xcb\x4d\x45\x46\xd6\x9b\xd5\x62\x61\x31\x2b\x55\x7d\x29\xf9\xbf\x78\x6f\x13\x57\x04\x02\x92\x4b\x37\xc2\x80\x04\x6f\x76\x3b\x94\x19\x69\x84\x04\x90\x11\xc6\xa3\x98\x85\x23\x79\xf2\x98\xf5\x36\x97\x86\xa0\x40\xd1\x09\xb8\x51\x82\x99\xa9\x15\x14\x62\x54\x99\x02\x16\x54\x8f\x61\xce\x1d\xf5\x8e\xdc\xeb\x6c\x76\x05\xb3\xfa\x38\x11\x93\xcb\xc4\x72\xf3\xa2\x01\x9c\x92\x5c\x3a\xd6\xfb\x3a\xd2\x7c\xd8\xc7\xce\x5c\xad\xe3\x30\x17\xd6\x13\x83\x50\x24\xfd\x20\xa9\x04\x49\x51\xa6\x5c\x20\xdf\x97\x5b\x57\xa0\x41\x57\x52\x48\x02\x0d\x3c\x89\x41\x24\xbf\x44\x24\x0e\x11\xc8\xf3\x25\xf6\x10\x68\x48\xb1\x33\x0f\xd2\xec\x6f\xe2\x01\x6e\x15\xaa\xea\x63\x58\xf2\xf9\xc8\xba\x4a\xe5\xe2\x84\xbf\x09\x0b\xee\x9a\x94\xac\x21\xe2\x33\x89\xa3\x24\x13\xfa\xd2\x92\x1c\x0f\x2e\x0d\x3f\xc3\x71\x34\x51\x94\x78\xc2\x85\x73\x35\x3f\x4b\xce\x12\x9e\x38\x91\x44\xee\x89\xf3\xa9\x72\x0b\x95\x54\xcf\xea\xe6\x46\x64\xcf\x4b\x68\x5b\x17\x1a\xad\x60\xa1\x5b\x96\xe3\xa8\xea\xfd\x4a\x96\x08\x09\x98\x42\x06\xd6\x55\x68\x61\x10\xce\x55\xc6\x33\xf9\x13\xf2\x48\xdb\xa4\xca\x97\x79\x6e\x8c\x2a\x9c\xab\x45\xf1\x3c\x5e\x4e\xb8\x0b\x5a\x54\x96\xd8\x76\x8a\x12\x58\x81\x18\x2f\x26\xf2\x70\x96\x27\x3a\x44\xd3\x8a\x54\x7c\xa3\xf4\x5c\x59\xa3\x05\xc7\xad\xb1\xdc\xc1\xa0\xc6\x1e\xca\x05\x93\x53\x10\x9d\x45\x3c\x72\x22\x1c\x39\x09\x6f\xbb\x10\x39\x4b\xdb\x46\x91\xb3\xe4\x91\xb3\x74\xa2\x02\x71\x18\x06\x24\x19\x47\x4e\x38\x39\x51\xdd\x3e\xec\xef\xce\x64\x63\xfb\x27\x30\xa9\x34\x1f\xf1\x3b\x24\x41\x8c\x5c\xa1\xa8\x50\xe7\x77\x22\x88\x65\x93\x27\x79\x43\x6a\xb1\x9c\x70\x02\xa6\x63\xb1\x6d\xa3\xd8\x89\x78\x88\x21\x54\xb6\x77\x4b\x1e\x63\x48\x64\x47\x24\x53\x8b\xd4\x53\xa8\x52\x16\x45\xca\x42\xe5\x19\x2f\x27\xa7\xa7\xbb\x5c\x5c\x1e\xed\x60\x1e\x27\x97\xc1\xf4\xb6\xd6\xcd\xa2\x83\xa5\x35\x1e\x44\x3c\x96\xac\xe1\x3e\x33\xd8\xcc\xc3\x74\xb1\xdc\x4c\xa3\xc4\x89\x98\xb6\xd9\x99\x9f\x29\x72\x27\x42\x89\xb3\x86\xc4\xf9\xa4\xac\x2f\xf0\x59\x62\xdb\x89\x93\x9c\x61\xb9\xf3\x96\x3b\xb8\x0d\x52\x76\x78\x2e\xdb\xed\x3b\x54\x4e\x99\xc0\xbb\x1d\x86\xb9\x6d\x27\xb5\xe5\x36\xc7\xe0\x88\x1c\xb7\x28\x3e\x5e\x4e\x64\xf1\xa9\x52\x84\x3f\x90\x78\x1a\xb9\x1b\xc4\xfc\x4e\x9d\xa2\x82\xa9\x1c\xc5\xce\x9a\x27\x0c\xa9\x65\x8e\xf9\x26\x64\xa1\x3c\x59\x4a\x28\xfa\x89\x65\xb0\x66\x09\x2c\x99\xda\x45\x0b\x88\xf2\x59\x48\x94\xa1\xb9\xdc\x1f\xca\x3a\xee\x6a\x2e\x57\x20\x52\x5b\x2a\x92\x8f\x72\xa3\x74\x3a\xa0\x8f\xa6\x5c\x48\x75\x2a\xc3\x09\x8f\x31\x06\xb1\x83\x1b\x91\x5d\x46\x59\xf2\xc0\xee\x20\x15\xd9\x87\x2c\x89\xa3\x9b\x83\x3e\xaf\xd4\xc3\xde\x61\xd3\x93\x9e\xf1\x5b\x6d\xcc\xa9\x5f\x0b\xa3\xd8\x62\xab\xee\x70\x4d\x19\x7d\xcf\xc4\xe9\xea\x13\x18\x5b\xa1\xab\xc5\x59\x66\xdb\x99\x5c\xa9\x4c\x22\xba\x9a\x95\xdb\x55\x96\x1b\x55\x5d\x2d\x78\xc6\xb3\x51\x56\xac\x7a\xe6\x5c\xcd\xf1\x68\x81\x5c\xb0\x3e\x89\x07\x89\xba\xc4\x28\x73\x3e\x31\x2d\xd8\xcd\xdf\xd7\x6c\x9c\xc9\x1d\xe1\xac\x27\x98\xa1\xbc\xeb\x39\xc3\x8b\x94\x29\x09\x24\x23\xcb\x28\xe1\x58\x45\x71\x68\x2b\xcb\x13\x98\x2a\xa2\x49\x62\x04\xe2\x31\x42\x3c\x20\x94\x30\x42\x09\x90\x5e\x9f\x91\x5e\x1f\xba\x1e\xeb\x7a\x86\x25\xf0\x7c\xe6\xf9\xe0\xfb\xcc\xf7\x61\xd0\x65\x83\x2e\x0c\x3c\x36\xf0\x60\x48\xd9\x90\xc2\xd0\x67\x43\x1f\x86\x7d\x36\xec\x4b\xa0\xff\x95\xd2\x02\x09\xe2\x23\x03\xa9\x6f\x44\xf6\xa3\x08\x3e\x29\xd8\xdf\xf5\x35\xe8\xef\x0f\x9b\x41\xbf\xe4\x39\x24\xe8\xf7\x87\x06\xf4\x4b\xc8\x3e\xe7\x2b\xe4\x29\xbe\x01\xf9\x18\x6e\xb9\x2b\x61\xfd\x21\xb2\x92\x5b\x4d\x6f\x2b\xad\xbc\x7e\x87\x77\x55\x24\x60\xf6\x40\xc0\xc7\x93\x1d\xac\x9b\x89\xce\x39\x12\x4e\xd0\xa8\x80\x2e\xc6\xae\x64\xa4\xb3\x1d\xc6\xbb\x93\xbb\x0a\x95\x53\x3f\x5f\x05\x81\xb6\xd6\xe7\x4b\x03\xb2\x02\x71\x64\x63\x32\x39\x7e\xa8\x8b\x32\x3b\xb9\xbb\x59\x13\xe6\x2e\xab\x4d\x46\xc9\x98\x4c\x78\xa6\x37\x56\xa0\x19\xc5\xb1\x80\x6c\x82\x8f\x02\xda\x4c\x1e\x51\x95\xbd\x32\xc6\x72\xf4\x99\x1e\xa3\x28\x31\xc8\xbf\xe5\x76\x93\x81\x32\x35\x9e\x0a\x94\x49\xfa\xb2\xdd\xfe\x37\x49\xf6\x7f\x25\x0e\x0c\xf3\xbb\xf7\x79\x33\x0e\x9c\x37\xe2\xc0\xdb\x4e\xa7\x86\xf3\x6a\xc8\x2e\x04\x31\x5e\xed\x21\xbb\x04\xcd\xab\xc8\xae\x61\x0a\x24\x75\x1f\x97\xd7\x0a\x6d\x62\xf6\xab\xfc\x98\x4b\x44\x24\xed\x97\x8c\x96\x68\x9a\xc3\x47\xec\xe8\x9a\x90\xc0\x2c\xb1\xed\x05\xca\x41\x46\x88\x6d\xbb\xc0\x7b\x26\xa9\x61\x71\xff\x64\xa3\xb7\x41\xda\xd0\xa2\x02\xf4\xc7\x21\x75\xcc\x23\xa4\x24\x1f\x6d\xb7\x56\x77\x3c\x5a\x2a\x1a\x4e\x64\xea\xca\x9d\xc5\x63\x39\xc5\xfa\x9a\x11\x56\xf3\x34\x8b\x13\xc1\x96\x35\x78\x51\x83\x13\x5d\x9f\x75\x7d\xe8\xb9\xac\xe7\x1a\x38\xe1\x0f\x99\x3f\xd4\x34\xbc\x86\x13\x12\x36\x1c\xc8\xcf\x1a\x61\x83\x6f\x64\x69\xbe\x9b\x93\x83\x06\x26\x28\xa0\x11\x68\xa0\x51\x03\x0a\x12\x48\x2c\x0c\xd0\x90\x40\xc1\xa7\x9a\x1c\x1c\xf4\x34\x39\x48\x28\xc5\x8a\x0e\xec\x1f\x15\x37\xc1\x12\x94\x60\x48\xcf\xd3\x35\x4f\xc6\x62\x02\x37\xfc\x1a\xae\xf8\x7a\xa4\x6e\xe4\x98\x15\xcc\x66\x16\xdc\xf3\x1b\xdb\xbe\xa9\x6c\xa4\x4b\xc9\x29\x7e\x38\xe4\x1a\xf8\xbd\x32\xd7\x43\xf7\x20\xc0\xd2\xfb\xc0\xd2\xc6\xe4\xb7\x81\x86\xe3\x0d\x47\x1c\x49\x06\x5c\x5d\x09\x49\xe4\xa1\x35\x87\xe4\x8a\x6b\x8e\xc3\x65\x02\xef\x98\xba\x2a\x6c\x2e\xdf\xca\x8b\x8f\xf4\xa1\x60\x47\xeb\x90\x63\x39\x52\x47\x73\x19\xb5\xc5\x6a\x97\xd2\xc9\xe3\x25\x20\x31\x65\xf0\xae\xf9\x52\xad\x75\x63\xdb\xe8\x61\xbb\xbd\x77\x0c\x41\x65\xdb\xed\x69\xed\x4e\x1a\x49\x28\x7d\x83\x73\x5d\x52\x84\x9d\x48\x7c\xce\x90\x3c\xd4\x58\xcf\xf2\x5b\x05\xc8\x6f\xe0\x33\x7f\x3b\xbe\x9a\xa0\x87\xd1\x66\xc7\x4e\x5d\x20\xb8\xcd\xdf\xc2\x33\x5e\xaf\xee\xad\x3a\x34\x44\xd9\xcb\x7d\xe4\x73\x54\x03\xe3\xaa\x1e\xa4\x00\x06\x7c\xe2\xed\x07\xdb\xae\x17\x2e\x31\xbd\x6e\x31\xe3\xde\x59\x76\x7a\x7a\x86\x85\x6c\x38\x2b\x49\x9f\xb6\x50\xcd\x9c\xba\x0a\xf6\x7c\xdc\x6e\x11\xba\xe1\x59\xa5\x2e\x43\x83\x64\x70\x23\xc1\xb4\x96\x1f\xdc\xaa\xa1\x5e\x43\x06\x37\x05\xbc\xaa\x01\xb4\x35\x44\xe3\xab\x09\x44\x18\x22\x39\xfa\x0a\x7e\xb9\x87\xfb\xaa\x30\x87\xdf\x60\x40\xcf\xb6\xdb\x4f\x92\xdb\xfe\x80\xf2\x9d\x87\xe1\x03\x52\x1b\x0f\xc3\xda\xb6\x3f\xe8\xfb\x66\x8c\x01\x7d\xda\x6e\x3f\x63\x99\x72\x85\xe1\xc1\xb6\xef\xb5\xb1\x5b\x01\xb9\xcc\xbb\x16\x2f\xde\xf0\x3b\xa7\x0e\xc8\x51\x06\x02\xd6\x70\x85\x21\x46\xd5\x43\xb1\xc4\x10\x38\x6f\x2e\x2f\x5f\xf0\x76\x2e\x4b\x6e\xcd\x90\x1c\x30\x5c\x8e\xc5\x84\xdf\x40\x84\x22\xe7\xdb\x4e\xe4\xfc\xd8\x89\x9c\x97\x4f\xd0\x4d\x9b\x5f\x63\xb8\xc4\xf0\xb0\xdd\xde\x39\x05\xed\x26\x8b\xc0\x1a\xc3\x4d\x0d\xf6\x10\x9f\x11\xe2\x03\xa1\x94\x11\x4a\x0d\x0c\xf2\x5d\xe6\xbb\xe0\x53\xe6\xd3\x1c\x06\x0d\x98\x3f\x80\x7e\x97\xf5\xbb\x06\x12\x0d\x7a\x6c\xd0\x2b\xe0\x91\xe7\x7e\xe9\x1a\xca\x7f\xe4\x1a\xca\x67\x44\xb2\xd0\xde\x81\x9c\xf4\x18\x97\xab\x65\x15\x8f\x28\x36\x86\x78\xa3\x44\x4b\x62\x54\xea\x82\xb8\x10\x62\xcc\xd4\x45\x7e\xa8\xe7\xa0\xc7\x08\xe9\x15\xf4\x96\x47\xbf\x34\x86\xfe\x23\x63\x50\x8a\x44\x4a\xe8\x22\xab\x3a\x90\xc6\x35\x83\x67\x25\xd4\x7f\x11\x64\x15\x85\x2a\xb9\x2b\x3e\x86\x77\x02\xc2\xfd\x0f\x59\xfc\xea\xc3\x5b\x2d\x49\x80\xb8\x91\x28\xbb\x18\x8e\x04\xb3\x5c\xab\x23\xaa\x4c\x73\xd2\xa0\x9c\x62\xb9\xdd\x81\x77\xea\xf6\x4f\xa9\xf7\xd1\xed\x33\xd7\x67\xdd\xa1\x33\x1c\x0e\xff\xc5\x6a\xf3\x50\x83\x20\x79\x8a\x64\x0f\xd0\xa9\xe7\x56\xfe\x14\x41\x8c\xb7\xdb\x76\xbd\xda\xfd\x42\x6f\x82\x37\x2a\xe3\xa8\x9a\x67\x8e\xda\x61\xfa\x32\x8c\xc2\x4c\xa0\xa8\x04\x74\x38\xbf\x82\x7e\x1f\x44\x37\xb9\x58\xf9\x55\xb4\x0e\x16\xe1\xac\x95\x85\x77\xc5\xbd\x7c\xc5\x19\x06\x64\x5c\x4d\xd5\xf7\x1f\x9f\xbf\x5c\x2d\x16\x3f\x69\xab\xd2\xa4\x48\x7c\x1d\x2e\x16\x61\x2a\xa6\x71\x34\x4b\x95\x1b\xa3\xec\xdc\x1d\x59\xa7\x16\xcb\x2e\x86\xc3\xe1\x70\x64\x75\x2c\x66\x59\x05\xf3\xde\x41\x96\x1a\x9d\xd5\x51\xf7\x88\xc1\x75\x8a\x24\x65\xa0\x25\x31\xe1\xe8\xd4\x67\xa7\x3d\xdc\xb1\x4e\xad\x4e\x8c\x8a\x26\xe2\x28\xbb\x45\xb8\x43\xf6\x3f\xa8\x09\xc0\xb8\x63\x7d\xac\xa6\xfe\x43\xbc\x4a\x52\x95\xcc\x6a\xb5\x84\xd1\x2a\x13\x0d\x1f\x3e\xe4\x9d\xc7\x1d\xcb\xb1\x3a\x28\xb9\x18\x0e\x47\x89\x5a\xde\x18\x25\x32\xf5\x5f\xac\x1d\x0b\x77\xb0\x51\x07\x55\xee\xba\xaf\x14\xd7\xe6\xb2\xbe\x1e\x79\x44\xd3\x39\x17\xbb\xb5\x39\x17\xb6\x5d\x6a\x11\xa8\x37\xe3\x4f\x40\xbd\x1e\xde\x08\xbc\x2a\xae\xae\x6f\xc3\x28\x2b\xef\xac\x23\x94\x8b\x52\xcb\xea\x84\xbe\x62\xef\x11\x46\x7a\x44\x13\x3f\x72\x24\x5f\x75\xd1\xae\x95\x84\x94\xb8\xb0\xa1\x17\x46\xdb\x23\x58\x2c\x5a\x77\x22\xbb\x8d\x67\xad\x38\x6a\xb5\xac\x8e\x38\xb8\x43\xf7\xbe\x78\x87\x3e\x78\xe4\xe0\x2b\xfd\x9f\x62\x09\x1a\xb4\xa5\xea\x55\x0d\x1f\xa9\x4a\x69\x77\x19\x50\x6b\x44\xb6\xde\x23\xaa\x44\x56\x05\x57\x41\x5d\x01\x0f\xc2\xf4\x5d\x0e\x38\xde\xce\x61\x69\x92\x5f\xa5\x97\x85\xa6\x11\x64\xf1\x77\xf1\x34\x58\x08\x03\x52\x72\x29\x25\x18\xe5\x1c\x2b\xf7\x78\x04\x96\x51\xff\xf3\x8e\x5f\xda\xba\x86\x07\x25\x2e\x35\x94\xa6\x7b\x54\x8d\x3e\x97\xaa\x0b\xac\x04\x4d\x73\x6d\x17\x9d\x13\x05\x01\xa4\x5c\xd2\xf0\xb0\xe2\xa1\x33\x87\x05\x77\xcf\x0a\x71\xcf\xe2\x0c\xaf\x72\xcd\xc1\x80\xa7\xe3\x45\xa7\x33\x51\xd4\x9d\x71\x75\x54\xbf\x7c\x76\x29\x23\x2e\x05\xe2\x7a\x8c\xb8\x1e\x10\xd7\x67\xc4\x95\xbb\xcb\x3f\x7a\xcb\x9a\xd3\xcb\x5e\x7e\x1d\x97\x5f\xb2\x4a\xba\x39\x30\x62\xd4\x47\x95\x9d\x8d\x9a\xf3\x4b\xa3\xe6\xfc\xad\x51\x73\xfe\x60\xd4\x9c\xdf\x19\x35\xe7\x6f\xe0\x9a\x2f\x47\x09\xbb\x1b\x69\xe5\x65\xa5\xc3\xcc\x37\x3b\xdc\xa8\xcd\x0c\x37\x7c\xd9\xa0\x13\x7d\xc5\x2b\x74\xc2\x76\x5b\xa5\x1a\xe4\xf7\x52\x07\x7a\x59\xea\x40\xcf\x39\x42\x53\xde\xbe\xb5\xed\xeb\x8a\x1a\xf4\xf5\x78\x31\xc1\xa3\x6b\xb6\xc2\xe3\xc5\x04\x66\x5c\x92\x6c\xa3\x40\xeb\x34\xaf\x8f\xa8\xf6\x06\x4d\xaa\xbd\xd7\xb6\x1d\xa3\x6b\x58\x80\x56\xe0\xfd\x1e\xc3\xcd\x78\x31\x69\xf3\xb9\x6d\x87\x4a\x7f\x77\xa6\x88\xa6\xab\x3c\x11\x29\x75\xe9\x39\xde\x9d\x24\xce\x34\x4e\x04\x8f\xe0\xff\x0b\xdd\x5e\x43\xd5\x28\xa3\x17\x23\x79\x31\xc7\xca\x68\x0f\xf9\x47\xaf\x64\xf5\x0d\xc8\x5d\x90\x4d\x6f\x1f\xbf\x1b\xe4\x4f\x9d\xa7\xca\x49\x90\xf5\xd4\x79\x6a\x8d\xc5\x04\x65\xb9\x22\x62\x54\xbb\x94\xc8\xc6\xc9\x84\xb7\x09\xb4\x0f\x33\x86\x78\x93\x5b\x31\xd4\xb4\x9c\x64\x0f\xbf\x44\x8d\x50\x72\x1c\x92\xe4\x1a\xa2\xfe\xe3\x74\x88\xb6\x42\xae\x48\x92\x0c\x66\xe8\x9b\xed\x2f\xe9\x13\x75\x79\x60\x98\x45\x39\x37\x8a\x5b\x24\x64\xa0\xf4\x44\x2a\xd7\xa8\xb0\xe0\xed\xb0\x46\x12\x68\x64\x2d\x67\xa9\x10\x1a\x89\xcf\x62\x7a\xe8\xd4\x66\x5c\xba\xd5\x74\x6e\x92\x78\xb5\x4c\xf9\x26\x60\x56\xdf\xda\x49\x9e\xd9\xea\x4b\x34\x63\x59\x4e\x22\x96\x8b\x60\x2a\x90\x00\xeb\x2f\xe7\xc1\x85\x76\xd6\xd1\x50\xdd\x53\x34\x62\xf8\xa9\x22\x10\x64\x7b\x27\x87\xcd\x16\xbc\xd6\x11\x95\x77\x3d\x21\x56\x70\x9d\xc3\xc0\x12\x67\x50\xe5\x28\x26\xf7\x0d\x68\x05\xca\x71\xcc\xd8\x9d\xd8\xb6\x75\xad\x9f\xc9\x64\x87\x8e\xd2\xa5\x73\xdd\xc9\x19\x0f\x24\x88\xbb\x6d\x9a\xb2\x8c\x6f\x4a\xa5\xfb\xf1\x6c\xd2\xd0\xf1\xfe\x0e\xfa\x6d\x6e\xe5\x7b\x09\x63\x58\xf2\xdb\x51\x63\x5d\x6d\x02\x09\x7f\x1a\x3c\x2d\x7d\x4f\x1e\x9b\x0c\x75\xe7\xb0\x5a\x2c\x76\x60\xa9\x41\xcb\xd1\x08\x25\xbc\xaf\xb2\x44\x9b\x1d\xd4\x12\xc6\xab\xa6\x0e\x26\x3b\x0c\xc9\x78\x36\x41\x96\x85\xa1\x9d\xed\x70\xae\xe8\xa1\xd4\x3a\x6f\xb7\xdb\xf6\x52\xf9\x59\x53\x0b\x6a\x1a\x6a\x2f\xb6\xdb\x5a\xcb\xed\xa9\x1e\xc4\x9d\xdc\x43\xe3\xd9\x04\xd6\x7c\x8e\x62\x98\x81\x1a\xf8\xbe\x67\x97\x9a\xa5\x50\xa6\x47\xc9\x79\x3a\x92\xac\x70\x38\xda\xcc\xe2\x48\xb0\xb6\x6b\x74\x66\xef\x6a\xd6\x47\x6c\xef\xab\xb1\x33\x4a\x94\x7a\x60\xf1\x95\xec\xe4\x44\x3f\xf0\xf5\xd8\x9d\xc0\x35\x5f\x8f\xc9\xe4\x24\x41\xb9\x21\x60\x01\xaa\x05\x3c\x60\x88\xd0\x7b\x71\x73\xf9\x79\x59\x49\x9f\x01\xe5\x3c\x1b\x35\x8a\x42\xaf\x0b\x75\x78\x2d\x92\xda\x35\x88\x2c\xeb\x99\xf0\x2e\x97\x39\x1b\xfe\x4d\x92\x21\x64\x00\xf9\xad\x64\x6e\x5a\xec\x79\xcc\xf3\x0c\x27\x57\xc0\xbe\xaf\x26\x13\x9b\x76\x71\x7e\xca\x72\x52\x2e\xe3\x25\x19\x2d\x8c\x95\x9f\x6d\xa3\xac\xc3\xad\x1b\x25\x66\x0c\x6f\xa2\x38\x11\xcf\x83\x54\x98\x64\x2d\x7d\xbc\x5b\x2d\xb2\x70\x11\x46\x79\xea\x9d\x4a\x5d\x45\xe1\x34\x9e\xe5\x69\x2b\x95\x96\x66\xe1\xf4\xd3\x83\x49\x7a\xb0\x30\x28\xf4\x9e\x93\x8a\xfe\x01\xa9\xd8\x38\x9a\x7e\xbf\xae\xa3\xa0\xd4\xa6\xaa\x17\xa3\x1a\xee\x87\xe9\x73\x75\x75\xff\x61\x99\x88\x60\x26\xc9\xa4\x46\x24\xa0\xac\x67\x52\x58\x41\x81\xf5\x4b\xa9\x86\x92\x7e\xf1\x29\x3c\x70\x17\xae\x79\xbb\x3d\x93\x28\x71\x06\xb7\xd0\xc5\x67\x0f\xe7\x0b\xad\x72\xf3\xa0\x95\xc6\xe4\xe3\x92\x5f\x8f\xae\xd1\x6a\xfc\x30\x81\x07\x48\x31\x53\x4f\x77\xf2\xe0\x46\x68\x89\x6d\x1b\xdd\xf1\x02\x4f\xa3\x3b\xbe\x1c\x07\x13\x3c\x6a\xb7\xef\x58\x82\x96\x18\xc3\x9d\x6d\xcf\x2f\x5c\xbc\xe6\xba\x4b\x4b\x08\xd1\xb2\x50\xff\x59\xc3\xfc\x94\xe0\x53\x72\x92\xbb\x89\x5c\x5f\xf0\xa1\xeb\xf6\xc9\x70\x48\xbd\x5e\xbf\xe7\x0e\x87\xe4\x80\x72\xc6\x27\xd9\x78\x3d\xe1\xcb\xdd\xba\xd3\xd9\x3d\x74\x3a\xb9\xf6\xc4\xba\xa6\x84\x63\x36\x9a\xd1\x74\xaa\xe9\xa2\xf8\x0d\xf4\x74\x6e\x32\xe0\x19\xfa\x70\x40\xcc\xe5\x84\x21\xac\x24\x53\x92\xe6\xeb\xb2\x52\xeb\x41\x24\x4e\xd9\xec\x60\xca\x37\xbb\x33\x54\x35\x94\xd9\x3b\xf9\x73\x98\xe9\x06\x6e\x73\xd1\x23\x9f\x8d\x0e\x81\x92\xd8\xb1\x95\x84\xba\xd7\x3c\x42\xb2\x50\x36\xa2\x8c\x60\xb8\xe1\xee\x49\xb3\x75\xe9\xc3\x63\x86\x9e\x61\xa6\xc9\xe8\xb6\xa5\x1d\xfb\xa0\x07\xa3\xc5\x72\xcb\x53\x94\x7b\xe2\xc3\x67\xb7\x17\x37\x67\x37\x46\xb1\x6d\xcd\xb3\xd1\x35\x0a\xd0\x92\x8b\xf1\xcd\x04\x4b\x38\xb2\x1c\x93\x09\x66\xd7\x48\x25\x60\xce\xf9\x62\xbb\x5d\x73\xce\x73\xd5\xb3\xd6\xba\x54\x3c\xbc\xe3\x0f\xb9\x8a\xc0\x59\x1b\x2d\xf9\x9d\x11\xe1\x61\x47\x02\xa8\x33\xd3\x44\x88\xee\xe0\x1a\x96\x5a\xc5\x1e\xb2\x23\x95\x62\xe7\x9b\xf7\x97\xcf\xfe\xc6\x17\x90\x38\xef\x2f\x3f\x7e\xff\xfe\x0d\x9f\xd6\x56\x97\x30\xe2\x19\x7e\x2c\x5f\x63\x9f\xf5\x7d\x18\x10\x36\x50\x94\xc5\x81\x46\x42\xcd\x36\x87\xf6\x30\xb2\xa2\x20\x0b\xd7\xe2\x34\xcf\x76\x9a\xc5\xa7\x86\xa9\x84\x82\x74\x2c\x14\xf9\x95\xa2\x75\x8f\x11\x65\x7c\xe5\x0f\xbe\x44\xfc\xd0\x47\x88\x1f\xa3\x77\xef\x0f\xbf\x54\x49\xf7\x91\x4a\xba\x8c\x76\x77\x13\x09\x34\xbf\x50\xc9\x63\xca\xfb\x46\xc2\xa4\x6c\xca\xcc\xdd\x5f\x2e\x6d\xea\x1f\xa5\x40\xfd\x41\x69\xf8\x59\x15\xe3\xd8\x76\x52\xa4\x1b\x6b\x4e\xc9\xfc\x4b\xba\x56\xd6\xf7\x45\x7a\xf1\x11\x45\x70\x6d\xbe\xa2\x3b\xe8\xf5\x99\xd7\x2f\x18\xda\xfe\x51\xbd\xb2\x5c\xad\x8e\x50\x57\x5d\x77\x3c\x22\x8a\x53\xf7\x25\x10\xf0\xac\x4a\x39\xe4\x48\x23\xd0\xd7\xcf\x0d\x3c\x46\x60\xdb\x28\xe6\x41\x45\xb5\x49\xb9\x17\x2c\x5e\x6d\x3b\x41\x31\xb6\xed\xc8\xb6\x65\x53\x71\x6e\x97\x43\x5d\x46\xa8\x5b\x80\xa3\xfe\x57\x99\x98\x57\xc1\x54\xa1\x99\x94\xe4\x26\xd0\xd9\x31\x33\xcc\x91\x40\xb8\x20\x18\xf0\xbe\x41\xe6\x48\xa0\x6c\xec\x4e\x70\x85\xa4\x90\xaf\xfb\x06\x9a\x26\x1b\x64\x0a\x1a\xd4\xf2\xea\xb4\x3d\xfb\xe8\x5a\x01\xc8\xc6\xb4\xb1\x94\xfe\xa0\x8b\xf6\x8e\x17\x85\x6c\xdc\x3d\x5e\x5e\x7f\xdd\x37\x12\x4d\x4a\xc3\xbd\xfe\x63\x3a\x65\x95\x3d\x61\xf4\xb0\xac\xdf\x2c\xc5\xd8\x1e\x88\x23\x90\x9b\x5b\x86\x35\x10\x3f\xd6\x87\x5c\x07\x2c\x41\x02\x8f\x0a\xdf\xcc\x16\x66\x85\x7e\x57\xd5\x54\xa5\x7f\x44\x19\x4b\xa0\x41\x4d\xd1\x2d\x2c\x7c\x1b\x40\x78\x60\xaf\xf2\xa8\xb6\x56\xe9\x9c\x58\x91\xc8\xaa\xac\xf6\x96\x1b\x8e\x23\x75\xb3\x8b\xab\x5a\x62\x03\x9f\x0d\x54\xc7\x8e\x5a\xe9\xd7\x67\xab\xe6\x12\xb3\xae\x94\x68\x66\x44\x7d\x31\x13\x52\x1b\xfa\x81\xc0\xa8\x7e\x60\x95\x7c\x73\xbe\x88\xe3\xe4\xd1\x01\x2a\x9b\x30\xdb\x2e\xc4\xb5\xf2\x45\x7e\x56\x77\xd6\x3b\xd8\x14\x87\xeb\x8b\x40\xf6\x11\xc1\x7f\x6e\x63\x35\x38\x2a\x90\xc9\x81\x4c\xcf\xaf\xea\xee\x7e\x05\x77\x5e\xde\x54\x2b\x5d\xc9\x92\x82\xca\xb8\x18\x87\x8a\x82\xca\x98\xa5\xa9\x74\x8b\xab\x1b\x62\x7c\xa0\xd6\x57\x80\x90\xc1\x71\x0d\xee\xa3\xd6\x57\x9a\x21\xa9\xc8\x01\xc2\x51\x86\x12\x14\x29\xbc\x1f\xa9\x93\x9e\xa1\x28\x97\x04\x04\xf9\xad\xb2\x70\x74\x76\x63\xbe\x56\x74\x3c\x56\xd0\xae\x30\x73\x83\x60\x57\xa5\x82\x07\x07\xda\xcf\xcd\x57\x27\x7e\x79\x75\xa2\xe7\x93\x2a\x16\x7f\xb3\x3b\xd1\x16\x59\x31\x34\x1c\x8d\x06\x85\x4f\x7d\x1b\xd9\x6c\xb9\x05\x19\x04\x78\x53\xb9\xb9\xe0\x09\x8a\x61\x23\x89\x15\x16\x21\x02\x01\xde\x61\x08\x65\xbe\x8e\xd5\xaa\x78\x17\xa9\x20\xcc\xfc\x3a\xaa\x66\xf4\xa5\xd5\x63\xe4\x60\xbf\xee\x76\x65\xd0\x3f\x72\xf9\xdd\x77\x35\xcd\x39\x30\x34\xe7\x80\x1a\x92\x53\x4e\xc6\x42\x09\x2f\xbb\x46\x25\x66\x7f\x2a\xe6\xbc\x8d\xc6\x13\xe7\x93\x78\x48\x95\xc7\xdb\xcf\x99\x15\x46\x26\x01\x61\x0c\xb3\x26\xce\x5a\xce\xd5\xb1\x4d\x72\x5b\xde\x96\xa7\xe8\x16\x32\x58\x6a\x79\xcc\x35\xdc\xc0\x15\xdc\x1f\xf8\x1f\x99\xdb\xb6\x90\xbc\xc3\xe7\x9c\x96\xfb\x3c\x16\x93\x93\xba\xf1\x83\x56\x77\x62\xea\xd1\x28\x2b\x1d\x78\xd6\xa8\xea\x7e\xe7\x0a\x6a\xe2\x31\x97\x1a\x7b\xf9\xe0\x92\xd7\x96\x0f\x3e\xf0\x52\xaf\xea\x0e\xde\x4a\xfe\xe5\x73\xcd\x51\xc0\x33\xfe\x79\x3c\x9d\x6c\xb7\x9f\xc7\xd6\x7f\xfc\x8f\xc5\x94\x4e\xb6\xdb\x3b\xdb\xfe\x3c\xbe\x9b\xc0\x47\xfe\x6c\xbb\xbd\x47\x77\x18\x3e\xf1\xbb\xd1\x87\xd1\x3d\x2a\x94\xae\x30\xfb\x98\xab\xb5\xbd\xe6\x05\xe8\xcb\x6c\xfb\x73\x7e\xa1\xbd\xdd\x3e\x93\x64\xf8\x6b\xdb\x46\x57\x7c\x81\x5e\x97\xd7\x51\x02\x63\x49\x37\x18\xab\xe3\x0a\xf1\x70\xa5\xe8\x67\xdb\x46\x2b\x74\x05\x97\x4a\x97\x2b\xd9\x6e\x1b\xe8\x90\x2b\xd5\xef\x18\x5d\xc1\x14\x66\x18\xc3\x07\xdb\x7e\x66\xdb\xf9\x70\xdb\x9c\x3f\x73\xa2\xe0\x4e\x22\x82\xb7\xbc\xed\xc2\xc7\x86\x3d\xf0\xac\x72\xdb\xb5\x53\xf1\x0d\xda\x0f\xdb\xad\x5c\xcd\xf6\x5b\x39\x7c\xdd\xc0\x67\x98\xc2\x47\x0c\x4a\xc5\xfd\x23\x04\xe3\xcb\x09\x9f\xc1\x9d\x24\xec\xaf\xf9\x46\x37\xc7\x3e\x8c\x3e\xb2\x7b\x94\x37\x8e\x41\xae\x35\x5b\xeb\x44\xb5\xee\x18\xcc\x94\xb0\x4f\x3b\x78\x50\x72\xf5\x1b\x6d\x4e\xa3\x7e\x3e\x6f\xb7\x21\xfa\x0c\x37\x70\x2d\x59\x0e\x6d\x40\x13\xa1\xc8\x79\xa7\x2f\x8f\xe7\xdb\xed\x5b\x0c\x19\x5c\x17\x12\xaf\x6b\x2d\x4c\xef\x32\xe2\x76\x0f\xee\x8b\xf3\x03\xaa\x6f\x8c\xf5\x31\x1d\x50\x36\xa0\x1a\xe3\xc1\xa0\xcf\x06\x92\xda\x1d\x1c\x35\xef\x3f\x38\x62\x11\x6f\x13\x25\x57\xd5\xfa\xa8\xe3\xfe\x64\x9c\x4c\x10\x3e\x09\x0d\x60\xac\xce\x6e\xc4\xdb\xee\xce\xf8\x8f\x9e\x27\xf1\x1d\x0a\x6b\xc0\x4a\x83\x50\xba\xc3\x39\x94\x8d\xf1\x66\xf7\x98\x21\x74\x66\xdb\xed\xa8\xae\x3d\x14\x56\xbb\x13\xc8\xee\x40\xca\x03\xdd\xa5\x54\xed\xa0\xc3\xe5\xd6\x12\xa3\x50\x5b\xae\xca\xbc\x0d\x3b\x22\xdd\x81\x40\x41\xb5\x63\x39\x9a\xa8\xcb\x81\x07\x5f\x69\x73\x5a\xb4\x6d\xac\xc2\x41\x4b\xad\xda\x22\x37\x0f\x1f\x3c\xe2\x2d\x60\x93\xe7\x79\x84\xab\x6b\x13\x93\xe7\x08\x81\xa1\x08\x0b\xf1\x79\x79\x47\x2a\xb0\xae\x9d\x6c\xb7\x09\x22\x2e\xbe\xa0\xd4\xa5\x9e\xd3\xf3\xbd\xfe\xb0\x37\x70\xfd\x3e\x19\x98\x2f\xe7\x4d\x5f\x4e\xa9\x38\x25\xfd\x36\x4f\x90\x7e\xc2\x4d\xda\x35\x2e\xe7\x48\xf0\x8e\x24\x08\x99\xb8\x38\x25\xe2\xd4\xb7\x6d\x71\x2e\x7f\x47\xa2\x23\x9e\x88\xa7\x94\xe5\xbd\x42\x02\x9f\x92\x1d\x4b\xcc\x18\x8e\xde\x64\x0d\x49\x41\x24\x2d\xe3\x7b\x08\x79\x84\x28\x9c\x7a\x0a\x4b\xaa\x47\xda\x95\xc8\x43\x3e\x12\xda\xc7\x4f\x10\x3d\x8d\xb5\xe5\x2a\x85\x53\x52\x37\xb4\xd7\xa4\x56\x12\xaf\x1a\xed\x4a\x20\x82\x15\x2f\x6e\x9b\x85\xc4\x3c\x49\x45\xd0\xbc\x3a\x4f\x47\x8b\x27\x68\xf5\x34\x7d\x1a\x77\xc8\xd3\xf0\x94\x3c\x0d\xf1\x93\xf4\x49\xcc\x50\x24\xa9\x18\x44\x3a\xb1\x4c\x59\xe1\x53\x94\x9d\xae\x30\xbe\x08\xb6\xdb\xa8\xcd\x23\x59\x8a\x3c\x75\x31\x5b\x3c\x89\xe4\xb2\x0e\x09\x1b\x4a\x8e\x7d\x78\x40\x64\xed\xf5\x74\x11\xdf\x90\x65\x13\xad\xa9\x27\x59\x4d\xf0\xc0\x4c\xf0\x60\x24\x4e\x2b\x13\xbc\x88\x6f\x10\xe9\x88\x9c\x27\x18\x3e\xe2\x3b\x45\xe5\x4f\xc3\x9b\xa8\xa9\xa5\x72\x49\xb7\x5b\xd1\xe6\x42\x2e\xec\xb9\xab\xec\xd6\xf2\xaa\x8f\x9a\x79\x91\x9e\x27\x49\x43\x91\x05\x56\x5d\xd4\xe7\x1b\x49\x9f\xb6\x8e\x08\xb8\x0b\x39\x37\x52\x0b\x23\x52\xe9\x4f\xc5\x79\x0b\xac\x78\x5b\x5d\x84\x34\x79\xf8\x48\x51\x81\x55\xc4\x5a\x72\xe5\xba\xb2\x38\x4a\xd1\x66\xa7\xd4\x1f\x60\x51\xc3\xe0\x31\x12\x90\x80\x39\xa2\x9b\x90\x59\x6f\xad\x4e\xab\xd3\x09\xe0\x5e\x39\x65\xc2\x3b\x98\x56\x1d\x81\xfd\xed\xf2\x27\x96\xc0\x9b\xcb\xcb\x17\xac\x4d\xc0\x58\x61\xb0\x43\xb0\x15\x95\x3a\x8f\x56\xfa\x70\x77\x1d\x2f\xaa\x5e\x3e\x04\x43\xfb\x36\x34\x2d\x31\xb2\x3e\x58\xcc\x7a\x67\xe1\x8e\xf6\x57\x1d\x2a\x2d\x34\x5d\x5d\x5a\xa9\xee\xa5\xa5\x3d\x31\xe4\xef\x97\xd6\x89\xf2\x42\x5f\xa8\xea\x26\x13\x27\x54\xca\xe2\x3f\x8a\xe0\x53\x43\xdf\x8e\x54\xdc\x76\x6b\xf5\xb6\xc9\x61\xb5\xf7\x3b\x88\xa3\x97\x89\x10\xbf\x89\x26\x79\xf8\xca\xb6\xa7\x4a\x2f\xca\xb6\x53\x45\xe4\x9b\xa6\x6c\x5b\xd6\x04\xc2\xf8\xfb\xf2\x18\xe9\xe5\x12\xf0\x9a\x26\xa5\x91\xc3\x0c\x8f\x0a\x38\xfc\xc2\x10\xb9\xa7\x04\x1c\x10\xf2\xc4\x79\xbd\xca\x94\x29\xfe\xdb\xeb\x54\x24\x6b\x21\xc1\x9b\xf3\xa3\xb8\xfe\x5b\x98\xed\x7f\x51\x51\x81\x96\x49\x3c\x15\x69\x0a\x01\x4f\x72\x6f\x86\x90\x72\xcb\x24\x5b\x5c\xb3\x36\x28\x7e\x4c\xd4\xae\x4d\x5b\x0e\xcc\xcc\x20\x52\x17\xbc\xa9\xe4\x3f\x79\xec\xcc\xe2\xbb\x20\xd4\x41\xc0\xc4\xe7\x30\x43\xf8\x4c\x9c\x49\x04\x29\x9c\x79\x04\x82\x0b\x85\xaa\x14\x22\x8b\x50\xe5\xfa\x51\xa3\x48\x31\x5a\x21\xcc\x0a\xb5\xf7\x70\xb7\x2b\x9e\x95\xd8\x49\x44\x99\x48\x90\xd6\x3e\x4c\x71\xcd\xe4\x2d\x56\x15\x7f\x0c\xa7\x9f\xd0\x02\xef\x0a\x83\xdc\x76\x28\x67\x26\x0a\xd6\xe1\x8d\xc4\xeb\xb2\x92\xe2\xc5\x49\xb3\x20\x9a\x05\x8b\x38\x12\x92\xb6\x09\x6c\x3b\x70\x12\x91\xc6\x8b\xb5\xc8\x0d\x78\x8a\x04\xc3\xb9\xe1\x93\x5a\xa3\x53\x27\xbb\x15\x91\x6c\x50\x8b\x47\x6b\x1f\xa3\x5c\x92\x91\xf7\xc7\x28\x44\xb7\x5d\x98\xf1\x5c\x80\x66\xbc\xa2\x7d\x14\x9f\xb3\x37\xf1\x4c\x20\xcb\xc2\x27\x92\x5a\x0c\xd1\x02\x3b\xb1\x5e\x42\x34\x83\xcd\xf4\x36\x48\x82\x69\x26\x92\x17\x41\x16\xa8\x00\x7a\x75\x8b\xbf\x99\x33\x0b\xb2\x80\xcf\x79\x7b\x7e\x48\x3c\x17\x02\xa5\xcd\x3c\x62\x09\x28\x0e\x28\x0f\x56\xa2\xec\x16\x34\xfd\x10\x61\x10\xdb\x2d\x12\x3c\x82\x95\x64\x22\x32\x1e\x19\xdb\xe2\x1e\x23\xdd\x9e\xe1\x45\x73\x41\xdf\xf0\xab\x8d\x32\xcb\xd8\x67\x55\xac\x73\xa2\x14\x9c\x97\x7a\x33\x72\xed\x0a\x6c\x4f\x53\x3c\x9c\x97\x0c\x73\x56\x75\x59\x71\xa8\x65\xf3\x4d\x30\x6b\x99\x8d\xdd\xaa\x08\xf7\x24\x73\xce\x05\x44\x3c\xd9\x95\x01\x8d\xd4\x82\x6a\xa3\x7c\x93\x22\x81\xa7\xf2\x6c\x57\x52\x65\xce\xbc\x49\xdc\x22\xbb\x19\x19\x49\x47\xae\x64\x37\xfc\xba\x9b\x1f\x2f\xe7\x79\xdd\xdc\x74\xde\x35\xd7\xda\xc4\x35\x97\x0f\xca\xfc\x3a\x35\xe6\xd7\xab\x1c\x39\x04\xa9\x44\x53\x55\x62\x66\xb5\xdd\x1e\xe2\x02\x7d\x1d\xb6\xd9\x41\xa6\x2e\x47\xf9\x07\x05\x80\x91\x6c\xd4\x0a\xae\xa7\x33\x31\xbf\xb9\x0d\x7f\xf9\xb4\xb8\x8b\xe2\xe5\xaf\x49\x9a\x95\xb7\x65\x92\x30\xec\x43\x54\x0a\xb3\x72\xed\xdd\xba\x3a\x6d\x36\x16\x13\x65\x28\x00\xfd\x36\x5f\xa1\xcd\x0e\x04\x1e\x27\x93\xed\xd6\xf4\x53\xf1\x9e\x2a\x3d\xc3\xd8\x58\xbe\x5a\xb8\xcd\xa3\x9a\xfa\x5d\xcd\x55\x44\xa0\x15\x6c\x0e\x3c\x43\x2c\x38\x81\xa9\xd2\xbb\x99\xf3\xd8\x99\x9f\xad\x2e\x16\x67\x85\x66\xce\x0c\x6e\x79\x5a\x1a\xb3\x6a\xed\x1b\x58\xf2\xe9\x28\x42\xb7\x38\xb7\x79\x9d\xa2\x5b\x8c\x99\x4c\x81\x3b\x9e\xdf\x44\xc1\x9a\xbb\x67\x77\x17\xeb\x33\x3c\xe3\xcb\xf1\xba\xd3\x99\x28\x16\x68\xae\x4f\xea\x2d\xcc\x94\x6d\xf4\x78\x36\xe1\xb7\xe3\xd9\xa4\xa2\xc7\xc3\x56\xc7\x35\x79\x0a\x43\x70\x63\x54\xa3\x2f\x39\x8d\x39\xf8\xf0\xa8\x04\x30\x57\x7f\x1b\x0e\xf4\x76\xf0\x06\x66\x37\xd0\x2e\x46\xd6\xab\x4b\x1d\xb0\xd3\x92\x3b\xa3\xb2\xca\x35\x0b\xe6\xfc\x2c\xa9\xed\xd5\x97\xec\xcb\x3c\x09\xee\x84\xa2\x3b\x42\x33\x64\x6d\xdc\xe8\xa4\xd9\xc3\x42\x38\xb3\x30\x5d\x2e\x82\x07\x6e\x45\x71\x24\x2c\x10\xa8\x4f\xb0\x13\x2c\x97\x22\x9a\x3d\xbf\x0d\x17\x33\x1d\xb5\x2e\x4d\xa6\xdc\xfa\x25\x58\x07\xda\x2f\x2f\xb3\x00\x65\x5c\xdd\xb6\x67\x22\xca\x7e\xd4\x1e\xe0\x72\x00\x86\x9d\x78\x29\x22\x84\x21\x73\xee\x93\x30\x13\xc8\x3a\xd7\xc5\x2e\x0a\x10\xf7\xd2\xec\xe4\xf3\x9f\x9f\x9a\x4f\x96\xcc\x3e\x5d\xc4\xa9\x40\x72\xc3\x67\xce\xcb\xb3\xe8\xf4\xf4\x0c\x1b\x0d\xe5\x4a\x18\xa2\x71\x38\x8e\x26\x85\x5e\x46\x8a\x6a\x26\xd3\xb5\x98\x9e\x4d\x1e\x5e\xc2\xba\xe2\x35\x17\x23\x14\xd4\xe4\x41\x42\xce\xbd\x3c\xd4\x01\x54\x3f\xc8\xec\x10\x8e\xe3\x09\x17\x98\x85\x3c\x45\x35\x23\xf8\x90\x45\x28\x34\x92\x67\x42\xbb\x8c\xd0\x6e\x7e\x43\xa5\xee\x2c\xbc\x01\xf3\x06\xd0\x27\xac\x4f\x60\x38\x60\x43\x05\x2d\xbf\xa4\x90\x47\x1f\x53\xea\x35\x6a\x89\xda\x2b\x9c\x69\x4a\x6d\xb6\x3e\x65\x7d\x2a\xab\x3f\x2a\x6d\xcd\xb5\x94\xbb\xb9\xe4\xd2\xf5\xea\xfe\xeb\x3c\xbf\xd9\x15\x9a\xe4\xdc\xeb\x55\x2a\xf3\x95\x22\xb2\x86\x72\x9a\x93\xc9\xe5\x0b\xf2\xd3\xb5\xe2\xee\x59\x7a\xb1\x3a\xc3\x5a\xd9\x39\xe6\xc1\x78\x25\xcf\x58\x36\x8e\x27\x75\x6d\xc7\xfc\x08\x55\xc7\x52\x50\x42\x0d\xa2\xdc\xc2\xd3\x9b\x5b\x18\x14\xf7\x72\x0f\x15\x83\x1c\x78\x12\x63\x42\x62\x6e\x6e\xfb\x4a\x8a\xf6\x05\x97\xd3\xc6\x1f\x9c\x9c\x84\xc5\x21\xd5\x28\xb4\x0a\xa0\x04\x54\xda\xcc\x71\x55\x75\xfb\x66\x1c\x07\x96\x76\xde\x92\x2a\x51\x69\x85\xf3\x2f\xd4\x8e\x9c\x79\xe9\x64\x10\xc4\x38\x9b\xe8\x7d\x93\xc3\x8e\x5c\xd2\x98\xfb\x60\x31\x4b\x6d\x60\x89\x26\x14\xcd\x22\x13\xf7\xa8\x7c\xba\xf4\x56\xe3\x12\xc9\x5d\x84\x55\x7b\x6f\x88\xf9\x81\xd3\xbd\xba\x3f\x47\xdb\x6e\x9c\xa6\x37\xc1\x9d\x48\x47\xc7\x3f\x99\xd8\xc3\x98\x8d\x27\x27\x5f\x40\x9c\xb1\x6d\x5b\x63\xe3\xea\x4c\x43\x90\x89\xc5\x73\x15\x6f\x51\xc7\x0f\x95\x29\x56\xb8\x76\xcf\x95\x65\x2b\xce\xe3\xcd\xed\x76\x48\x48\x18\x9f\x14\x52\x73\x97\x30\xe2\x92\x7c\x36\xd5\x9c\x35\x78\x3d\x2b\x77\x53\xaf\x80\xbd\x39\xde\xb0\xf4\x5e\xb6\xc0\x2a\xc0\x81\x85\xd5\x2e\x39\x3e\x0f\x8d\x2c\xa4\x6c\x2d\x34\xbd\xea\x31\xe2\xf6\x34\x5c\x50\x7d\x6a\xb8\x23\x3d\xda\x82\xc6\xe3\xa9\xf1\xae\xec\x1e\x67\x13\x86\x7b\x3e\x5c\x0e\x10\x49\x7c\x20\x7c\x3c\x84\xa5\x37\x22\xab\x28\xec\x36\x0e\x4c\x68\x3f\x2f\x89\x1a\xdf\x48\x8c\xc3\x49\xa3\xdf\xc6\xea\x1d\xab\x16\x16\x97\xee\x65\xab\xdf\x46\xb5\xb7\xb2\x6f\xac\x56\x44\x77\x6f\x14\x2b\xb7\x0c\x55\xc0\x9b\x23\x5f\x75\x54\xd4\x0c\x1d\x15\xf1\x15\x33\xd4\x35\x28\xb7\x3b\xc4\xa8\x4d\x9a\xd1\xee\xa3\x3e\x8c\x02\xed\x23\x4c\xc2\x19\x17\x16\x7c\xac\x5d\x08\x04\xad\x30\x6a\xa5\x38\x68\xeb\x4b\x92\x14\x02\xc9\x04\x16\x4a\xc1\xca\xe5\x4c\x7e\x81\xab\xa0\xa4\xcc\xc2\x33\x05\x23\xb1\x6d\xa3\x7f\x0b\x95\x93\xb0\xed\xb6\x28\x53\x00\xcd\xfa\x90\x0d\xac\xe8\x0e\x59\x77\x58\x19\xf8\xd1\x1b\x50\xb5\xcf\x23\xbd\xcf\x0f\x97\x5c\xd2\x6d\x8d\x0b\x2d\x57\x38\x3a\xb2\x83\x1b\x54\x6b\xe4\x0e\xde\xec\x1a\x2f\x55\xf3\xcd\x7b\xf4\xd6\xd1\x77\xeb\x0a\xcf\xfe\x23\xce\x62\xf4\xfd\x14\x8a\x8c\xcb\x7f\xa5\xa3\xac\x42\x44\xe9\xf7\xb1\x98\x28\x57\x2f\x27\x81\xa4\x57\x33\x14\xcb\xad\x9a\x38\x1f\x3a\x89\xf3\xf2\x49\x5d\x35\x31\x36\x96\x63\xb9\x13\x0e\x08\xd4\x68\xb5\xba\x6e\xc5\xf8\x48\xf5\xfd\x28\x86\x3d\x24\xec\xbb\x83\x92\xb0\x77\xe6\x5f\xeb\x33\xac\x24\x8c\xe5\xf6\x52\xb8\x75\xc5\x23\x94\x4a\x2c\x96\x3b\x0e\x83\x29\x77\x61\xce\xc7\x13\xed\x26\x2c\x30\x2e\xc2\x14\x15\x6b\x2e\xe5\x52\xb5\x85\xe6\x7a\x0b\x89\xd1\x38\x80\x74\x1c\x4c\x26\x2c\xad\xc6\xb3\x9a\xef\xaa\x58\xb8\x40\x46\x66\x63\x29\xe4\xa3\x06\xfd\x88\xa6\x3d\xd9\xd3\xb4\xcf\xcd\xbc\xfd\x01\x76\xde\x8b\xf9\x42\x4c\xab\xaa\x18\xb1\x6d\xc7\x4e\x7c\x1f\xfd\xed\x60\xb3\x19\x35\x7c\x67\x8e\x42\x75\xa1\xa8\x75\xf1\x0b\x9f\x03\x59\xe1\xc4\x46\x85\x1f\xcc\x6a\x60\xde\x10\xe4\x9a\x8a\xc8\x19\x53\x72\x18\xf2\xa0\xaa\xd2\xb2\x0c\x92\x54\xbc\x5c\xc4\x41\x66\x80\x01\xc5\x2a\x50\x41\xa5\xb3\xe4\x69\x82\xe4\x97\x2e\xee\x58\xa7\xae\xe4\x61\x4e\xc9\x53\xb7\xc1\x95\x76\x64\xf4\x2e\x25\x28\xe8\x62\xe5\x1d\xbd\xf4\x97\x20\x89\xc5\xd0\xb6\xad\x53\x09\x14\xcb\x20\xcf\xa3\x53\x97\x85\x5a\x02\x4c\xba\x94\x91\x2e\x05\xd2\xed\x32\xd2\xed\x56\x46\xf0\xa8\x52\x8e\x1a\xc1\xab\x68\xaf\xff\x66\xeb\x75\xe5\x0c\x3e\xfd\x4f\xe3\xd3\xce\x64\xe4\x8e\x3f\xff\xf3\xe4\x69\x65\x60\x83\x36\xe7\x09\x0a\x3b\x96\x3b\xb0\xf0\x76\x4b\x69\xf1\xfe\x99\xf8\x16\x1e\x35\x50\xd0\x7b\x63\x2c\xef\xb3\x43\xc8\x2e\x2e\x2e\xdc\xed\x16\xc5\x4e\x26\xd2\x0c\x85\x78\x44\xe4\x3e\xc2\xf8\x4b\xa3\x3b\x90\x9d\x7e\xc9\xa5\xf5\x46\xb0\x36\x81\x35\x53\x38\x7f\x8f\x1c\xd8\x68\x8d\x59\xe5\x7f\xd6\xc0\x99\xc3\x58\x10\xfb\x4c\x57\x2e\x93\x1d\x1e\x35\xdd\x2b\x23\x12\x44\xca\x43\x56\x4d\x67\x48\xe9\x55\xe4\xcc\xe1\x89\x06\x48\xa1\xa4\x79\xf3\xf9\x41\x2e\xc4\x85\x2c\x49\x9e\xe4\x38\x97\x74\x14\xb7\xe5\xb9\xfc\xaf\xc7\x86\x2a\x12\xc0\x7e\x04\x8a\x43\x0e\xe1\x11\xeb\x9f\xdc\x53\x34\x39\x1e\x4f\x82\x90\x47\x54\x04\x2a\x71\xd9\x75\x5c\x7f\x85\xdd\x21\x1b\x87\x13\x88\xf6\x48\x77\x7d\xf5\xa6\x1a\x3b\xca\xdc\xe6\x32\xcb\x42\x83\xdf\xc8\xbe\xb5\x70\x3c\x4d\xa6\x96\x26\xda\xfd\xbe\xa4\xd9\x91\x65\x75\x02\x9c\xcb\x1f\x72\xb2\xd5\xc2\x27\x3a\x9a\x48\x18\xa5\x4b\x31\xcd\x3e\xc4\xab\x64\x2a\x9a\x60\x68\x90\x93\x91\x3b\x40\x47\x9d\xd5\xe5\xf6\x31\x4d\x11\x01\x83\x93\x85\x6d\xa3\x10\x05\x60\x45\x8a\x81\xde\x6e\xa3\xe2\x45\xd2\xf3\x8a\x70\x6f\x73\x1e\xd8\x36\xca\xb3\xc6\x26\x57\xac\x3e\x8e\x2c\xab\x23\x7f\x59\xaa\x45\x1f\xe6\xd0\x64\x18\xcb\xd2\xca\xd8\x5f\x99\x7c\x06\x6c\xa5\x1e\xf2\xb7\x5c\x51\x81\x21\xc3\xfc\xca\x74\xc8\x53\x31\xde\xe1\xd2\xbe\xa5\xe2\xe8\xa5\x98\xa4\x06\xad\x88\x26\xff\x51\xb7\x61\xaa\xdd\x3a\x8c\xe3\xc9\x76\x1b\xd4\xae\x81\x71\x45\x40\x6d\x70\x5f\x9f\xf9\x7d\x63\xaa\x62\x78\x10\xa3\xb4\x4d\x0e\xe3\x7b\x34\x4a\xbb\x7a\xca\x10\x6b\x5f\xfb\x5c\x1b\x42\x3c\x86\xd8\xc3\xdc\x5a\xa2\xd9\xbe\x3c\x57\xe2\x2b\x38\x07\x30\x8e\x9d\xf6\xa3\xb9\xc7\x95\x80\xf6\x35\x27\x81\xb2\x43\x2d\xd9\x42\x6e\x8d\xa7\xe7\x4c\xcc\x5a\x69\x2c\x53\xc2\xe8\xa6\x15\x67\xb7\x22\x69\x65\xb7\x41\xd4\x0a\x22\x43\x7a\xb6\xe2\x44\x49\x11\x4a\x33\xc2\x58\x39\xf9\x36\xaa\x3b\x6d\x5e\xf5\x61\xdc\xd8\xea\x7f\x50\xad\x2a\x3f\x5e\xca\x06\x30\x8c\xa6\xf1\xdd\x32\xc8\xc2\xeb\x85\x68\x25\x62\x2a\xc2\xb5\x48\x2a\x56\x8a\x75\xdf\xf4\x3d\x8f\xf5\x3c\xb5\x00\x5f\xe1\x8e\x05\x22\x7d\xea\x14\x8f\xdc\xb8\x08\x10\xf0\x7d\x93\x81\xdc\xb0\x05\x52\x1e\xc3\x8a\x23\x65\xaf\x01\x11\x7f\x7a\xfd\xe4\xe9\x0d\xc4\xb9\x34\xdb\x0a\x24\x2b\x61\xf4\x1a\xf4\x9b\xdb\x56\xc6\x28\x41\x9a\xbd\x8a\x66\xe2\xf3\x76\xab\x84\xb4\x65\x02\x2e\x3c\xb6\xb6\x39\x7f\x8a\xf0\x68\xf4\x54\x75\x02\x59\x16\x1e\x93\xc9\x19\x5a\x6d\xb7\x0b\xac\xfc\x2e\x1e\x5e\x4f\xca\xc1\xa4\x30\x55\xd6\xb6\x05\x39\xac\x2e\x1b\xe4\x2c\xeb\xc1\x21\xeb\x3f\x59\x9d\xa9\x93\x2a\x08\xd1\xb1\xfe\x82\x46\xed\x9f\x7f\x4e\xb1\x05\x66\x9b\x4c\xe5\x21\x5c\x29\xaf\x86\xd3\x6a\xb7\xa2\xdc\x95\xde\x14\x84\xca\x10\xd9\x36\xaa\xe4\xe0\x53\x63\x49\x30\x8a\x9c\x50\x26\x74\x22\x09\x82\x8d\x5b\xe6\x0c\xc3\x42\x6b\x7d\x16\x7e\xa0\x6c\xdb\x1c\x2d\x99\x0f\x92\x03\xc7\x42\x29\x27\x67\xe9\xf9\xbe\xbc\xf3\x94\x9e\xa5\x9d\x0e\x2e\x44\x4c\x25\xd8\x4f\x27\xb6\x8d\xa2\x71\x3a\xc9\xdd\x6e\x49\x72\x35\xaa\xb9\xaa\x96\x9c\xa1\xdf\x63\xbe\x46\x22\x07\x04\xdb\x01\xb9\x1f\xa6\xfb\x92\xb2\x82\xaf\xe3\x3c\x1b\x29\x5d\xc2\xed\x96\x3c\x15\x9c\x93\xa7\x19\x13\x6d\x2e\x6c\x3b\x6b\xf3\x2c\xc7\xae\xc7\x43\xb4\xe4\x5a\x72\x5a\xd6\x74\x80\x4d\x15\xc7\xd4\x2e\x1d\x4e\xb6\x39\xcf\x0e\x9d\x7e\x77\x2c\xd6\x9a\x2a\x9b\xd9\x54\x64\xad\x20\x6d\x15\x1b\xb4\x6d\xd5\xa4\x7f\x9b\x54\x64\x46\xed\xd2\x49\xf7\xd8\x56\x64\x5d\x5d\xa9\x72\x57\x57\x56\x18\x6d\x76\x25\x65\x63\x9c\x62\x4b\xda\x02\x19\x43\x80\x3d\x03\x42\x81\x86\x2a\xec\xd4\x3e\xb3\x0c\x95\x3a\xf5\x45\x1c\xc5\x18\x65\x30\x9e\x60\x48\xb8\xf6\x21\x59\xf0\xab\x4a\x17\xa4\xa2\x55\x91\xf0\xb6\x7b\x70\x2f\x53\x9d\xfd\x50\x0b\x88\x24\x3b\x5c\x34\xc3\x33\x8d\x1e\xd4\x2d\x22\xda\xec\xa0\x4d\x72\x03\x26\x0c\xd3\x5b\x31\xfd\xc4\xc2\x92\x9e\x30\xea\xf1\x9a\xaa\x18\xb2\xa1\x62\x0a\x0f\xc3\x87\x3c\xea\xa0\x65\x68\x7c\x93\x7a\xb9\x7f\x96\xaf\xf7\x51\xaa\xfc\xab\x9c\x84\xb6\x9d\xd9\x76\x3b\x1b\xc7\x13\x79\x2e\xe6\xca\x15\xf2\xa6\x1e\x45\xc0\x85\x66\xff\x64\x4a\x41\x6d\x57\x53\x7f\x34\x62\x30\x85\x88\x72\xf9\x20\x39\x16\xc1\xa4\xea\x78\xd0\x1f\x56\x15\x35\x6b\x8e\x24\x8f\x11\x41\x31\xde\x08\xe5\x2b\x55\xf0\x78\x24\x58\x55\x67\x2c\x54\x21\x8f\x24\x45\x74\x30\x94\x3c\xf8\x41\xad\xdb\x1a\x67\x96\x1d\x3e\xee\xb1\x5e\x19\x28\x18\x7d\xa9\xc8\x10\x48\x5f\xf0\xcf\xa8\x78\x5d\x24\x7f\x2a\xea\xa2\xda\x64\x01\x0c\x1a\x57\x8d\x1e\x95\x83\x78\x86\xd9\xf6\x95\x18\x24\x1a\x5b\x57\x57\xd3\x38\x11\xa7\xbf\xa4\x57\xe9\x6d\x90\x88\xd9\xd5\x95\xa5\x0d\x7c\x1b\xbf\xf0\xcd\x0e\x9f\x1d\xa1\xb3\xca\xed\xac\x7b\x29\x7f\x4a\xd0\x9f\x8d\x32\xb6\x51\x01\xb0\x2d\x13\x5b\x2c\xb5\xe4\xf1\xd1\xbc\x6a\x11\x6f\x2c\x71\xcc\x13\xdc\xc5\x33\xc1\x94\x06\xe5\xc8\x5a\xae\x12\x61\x31\x4b\xc3\x63\x0b\xa6\xf1\xf2\x21\x09\x6f\x6e\x33\x66\xfd\xfb\xff\xd9\xa2\x2e\x19\xb6\x5e\x88\x28\x4c\x5b\xef\x56\xe9\xed\xa7\x20\x11\xeb\x16\xfa\x6d\x11\x87\x49\x3c\xfd\xe4\x24\x2b\x6c\xa9\x88\x08\x86\xbc\x51\xfb\x29\xd7\x09\x23\x87\xe1\x55\xf6\xd9\x85\x2e\xf9\x7a\x97\xbd\x85\x88\x02\x02\x45\x12\x34\xd9\x1a\x94\x90\x7e\xbb\xd5\x8e\x03\x50\xcc\x13\x14\x60\xa5\x12\x2c\x4f\x7d\x5c\xdb\x4f\xda\x89\x6a\xae\x64\x4b\x0e\x03\xae\x1c\x73\xeb\xf1\x05\x8f\xbb\xed\xb6\x32\x5e\xa8\xe9\xaa\x8d\x8c\x06\xbe\xba\x03\xa9\x47\x69\x07\x52\xe8\xe7\x2b\x67\x95\x3b\xbd\xf9\x0a\x19\xc9\x7e\x8c\x96\xaa\x7c\xda\x5c\x43\x78\x7f\x87\x0f\xf5\xd2\x62\x03\x52\x43\xad\x20\xc9\x8c\x61\xe5\x52\x3d\x94\x54\x45\x8e\x41\x4b\x6d\x25\x77\xbb\x5d\x5d\xf0\xc5\x48\x8c\x2c\xcb\xc0\x4a\x86\x62\x9e\x2a\x06\xfc\x79\x3c\x13\xcf\x32\xb4\xc2\xf8\xdc\xf3\xe8\xd0\xdf\x6e\xe3\x0b\xcf\xef\x92\xe1\x76\xbb\xea\x10\x6d\xa1\x84\x82\xbd\xcc\x1d\x22\xb3\xfb\x5d\xea\x6e\xb7\xc1\x85\xd7\xef\xf6\xba\x23\x31\x4a\x73\x8e\x7e\x85\x59\xcc\xe4\xbb\x16\x4a\xaf\x60\xd5\xa1\x98\x05\xa7\xaa\x44\x07\xc5\xa7\xaa\xa5\xf3\x73\xe2\xe2\x8e\xef\x79\x5d\xdf\xdc\xa9\xf7\x19\xe9\xf6\xb5\x61\xa4\x9a\xbb\xa3\xf2\xa5\x81\xfb\xf8\xd4\x69\xdb\x16\xc5\xad\x66\x87\x41\x34\x8c\xc9\xc2\x7f\x50\x7e\x8b\x5b\xb3\x58\xa4\x12\xb5\x06\xd3\xa9\x58\x66\xad\x44\xdc\x88\xcf\x95\x68\x0e\xc5\x24\x1b\xb0\xa2\xcd\x36\x07\x2e\x1b\xe8\x98\x8d\x47\xc5\x41\xb9\xfc\xce\x37\xc2\x20\x4f\xb9\x7b\x7d\x6a\x3d\xbd\xa9\x5e\x5f\x16\x21\x29\xb4\x0e\xa3\x69\x4d\x8b\x7d\x52\x6e\x9d\x5b\x9d\x5c\x5f\xde\x52\x04\xb5\xa4\x08\x3b\xdc\x6a\x59\x9d\xa4\xf3\x57\x6e\xfd\xb5\x93\xf7\x0f\x17\x46\xd8\x31\x58\xf6\xaf\xab\x38\x3b\xb3\x70\xe7\xaf\xd6\x5f\x31\xa4\x1d\xeb\x42\xc5\xa9\x3f\x7f\x6a\x75\x32\xf9\x72\x4c\xe7\x39\x67\x38\x36\xbb\x93\x50\x8b\x0a\x03\x2d\x2a\x7c\xa7\x44\x85\x51\x83\x15\xb3\x36\x75\x96\xed\x14\x57\xc3\x12\xac\x39\x59\xfc\x5d\x7c\x2f\x92\xe7\x41\x2a\x10\xde\x6e\x33\xc3\xca\xca\x8c\x39\x69\xd8\x55\x82\xc6\x9c\x69\x0b\x2b\xd3\xbb\x27\x68\xec\x3e\x72\xc9\x53\x08\xb0\x49\x31\xcd\x47\xb1\x59\x11\x80\xa0\x3e\xcf\x2b\x5e\xb9\x65\x2f\xe0\x50\x3c\xb2\x5a\x16\x33\x19\x63\x0c\x53\x2d\xc9\x0a\xe7\x68\x7a\xce\x57\xdb\xad\x65\x71\xbe\xc8\x25\x1e\xe9\x89\x56\x64\x99\x9e\xae\x60\x96\x87\xbc\x59\x80\xd2\xa8\x9b\x8a\x70\x81\xe6\x4f\x0b\xcf\xef\xc5\x44\xcd\xf2\x89\x98\xdb\x36\x9a\xf1\x99\x39\x2e\x2e\xcc\x31\x86\x60\x34\xeb\xa4\x2c\xed\xcc\xf4\xd1\x20\x8c\x74\x49\x11\xad\xa1\x38\x22\xfb\x01\x6c\x8e\x39\xa2\xfc\x32\xac\xd1\xab\x59\x82\x14\xe5\xfc\x07\x42\x6e\x59\x10\x6b\xed\xc7\x70\x8e\x62\x09\x4b\x62\x49\x05\xbb\x0d\x7e\x81\x9e\xc7\xab\x28\x33\x84\xea\xb5\x68\x45\xe2\x46\x59\x19\x5a\x46\xce\x1f\x5f\xb8\x67\x28\xbe\xb8\xb8\xe0\x04\x6b\x93\xe1\x0c\x63\x62\xc7\xb6\x8d\x42\xf9\x7c\x52\xd3\xb2\xdd\x07\x06\xc7\xa3\xec\xf8\x25\x30\xa8\xb9\x46\x50\x82\xbf\x80\x5b\x63\xab\x13\x77\xac\x89\x05\x29\xaf\xb0\x46\x81\x3c\x10\x4f\x2c\xb9\xfa\x26\x55\xa7\xfc\xc5\xaa\x6b\x06\x6a\x51\x90\x3e\x9d\x4a\xd5\x20\x6c\x50\x37\x6c\xb7\x63\x79\x0a\xf0\x76\x6b\xfd\xf1\xfb\xff\xfa\xef\xff\xc5\x6a\x73\xf3\xa0\x92\x77\x6a\x93\x29\xe1\x7b\x3a\xca\xd0\x54\xb9\x1e\x9c\x9c\x48\xce\x2a\x18\x47\x13\xbe\xaa\x1e\xb2\xb4\x3c\x12\x81\xd2\x3a\x5c\x28\x59\x66\x33\x4d\x21\x78\x15\x3e\x01\x91\x94\x26\x12\xbc\x60\x5c\x51\x0a\x96\x85\x31\xd0\x83\x0f\x2b\xfd\xa1\xe6\x8e\x4a\xc5\x80\x35\xa2\xc9\xe6\x83\x78\x40\xb5\x55\x5c\xde\xfc\x9c\xfd\x1c\xfd\xbc\xfe\x79\xfe\x73\xd2\xfa\xf7\xff\xfa\xdf\xfe\xf7\xdf\xff\xdb\x7f\xfd\xdf\xfe\xf8\xfd\xf7\x3f\x7e\xff\xcf\x7f\xfc\xfe\xff\xff\xe3\xf7\xff\xee\x8f\xdf\xff\xfb\x3f\x7e\xff\x2f\x7f\xfc\xfe\x3f\xfc\xf1\xfb\xff\xf8\xc7\xef\xff\xd3\x1f\xbf\xff\xcf\x7f\xfc\xfe\xbf\xfc\xf1\xfb\xff\xf5\xc7\x7f\xfe\x3f\xfe\xef\xdf\x7f\xff\x79\x45\x5d\x3a\x50\xff\x87\x3f\xaf\xe6\x62\x3e\xb7\x0c\x6f\x75\x18\x4d\xa8\xe0\xe7\x6b\x56\xe2\xfd\x9e\x51\x14\x22\xfa\xae\xdb\xeb\x1b\x1f\xaa\x03\xac\x26\x31\xd7\xf7\x9b\xf3\x85\xe4\x54\x5e\xdd\xdd\x89\x59\x18\x64\x02\x66\x7c\xa1\xdd\xbf\x95\x49\xb7\x7c\xe1\xbc\x16\x69\x1a\xdc\x88\xe7\xb7\x41\x14\x89\x05\x2c\xf9\xc2\x79\x11\xa6\x4b\xc9\xbd\xc0\x1d\x77\x61\x2d\xb7\xc3\xc3\xa1\xf5\x7d\x47\x71\xe5\xe1\x1c\xad\xf7\x22\xef\xc9\x15\xca\xdd\xa2\xca\xe5\x37\xc2\x2d\xf9\x0c\x19\x92\xd0\xef\xba\x76\x22\x73\x93\x62\xa5\xc6\x86\x77\x27\x73\xdb\x9e\xa9\x38\x98\xcd\x8a\x43\xe3\x09\x44\x9c\x9c\x1d\x38\x62\x8e\xce\x70\xee\x85\xa7\xe0\xa1\xa3\x4e\xa7\xbc\xf8\x58\x8f\x3b\x9d\xbb\x9a\x1e\x7c\xd0\x24\x67\x12\x23\x51\x86\x28\x14\x18\x32\xbc\x83\x04\xdd\x61\xb8\xdb\x55\x6d\x6b\x04\xde\x54\x06\xb6\x83\x03\x85\xca\x29\x1e\x25\xb5\xec\xd3\x52\x4d\x31\x46\x0f\x20\x80\x60\xbc\x63\x4b\xdb\x5e\x3a\x51\x7c\xbf\x97\x59\xa5\x55\xf3\xdd\x8e\x50\xc8\x51\xa4\x24\x1f\xb7\xd8\x91\x7b\x91\x42\xa4\x7e\x89\x13\x47\x77\x7a\x15\xf9\x35\x24\x3c\x46\xa1\xb3\x8c\xd3\xcc\xac\x2c\x84\xb2\x06\xb6\x70\x82\xd9\xec\x72\x2d\xa2\xec\xbb\x30\xcd\x44\x24\x92\x46\x8b\xd7\x4a\x41\xdb\x6e\x2f\x9c\xf0\x4e\x36\xf1\x41\xe9\x4c\xa4\x23\x54\xef\xe5\xa2\xda\x0e\x12\x1d\xcb\x02\x09\x6b\x76\x70\xd8\x18\xb2\x4c\x17\x2d\xb8\x96\xcc\x2c\x66\x09\xb7\xe2\x28\x11\xc1\xec\x21\xcd\x82\x4c\x4c\x6f\x25\x88\xb5\xc2\xa8\xb5\x42\x96\xd6\xd1\xb0\xea\xca\x01\x69\x4d\x5f\xa9\x92\x0b\x3b\x87\x15\x55\xd7\x39\x75\x12\x71\x17\xaf\x85\x2e\xa8\x9d\x46\x14\x86\xec\xbb\xba\xab\x8b\x54\xfb\xbe\x8b\x57\x59\x31\xfb\xe0\xe2\x9a\xd8\x45\x49\x1f\xe6\xa0\xfd\xab\xcf\x0a\xcb\xc7\xdc\xbf\xb2\x36\x5e\xd6\xbe\x7e\x94\x22\x90\x8a\x80\xa0\x8e\xf8\x71\x09\xbd\x46\x5c\x3a\x82\x54\xf0\x19\xc2\x22\x98\xd4\x17\xc8\x78\xa4\x55\x99\xf0\xb9\x3b\x8a\x90\xe8\xa8\x80\x36\x61\x21\x39\x34\xd8\x45\xb5\x7d\x54\x60\x5f\x20\xcd\x47\x42\x3c\x15\xea\x98\xd5\xeb\x0f\xf7\xa4\xe2\x47\x2b\xe4\x91\x21\x1b\x24\x5d\x14\x36\xa0\xcd\x1f\x93\x38\xba\x69\xe9\xd3\x5a\x21\x3c\x6b\x68\xb0\x8c\x43\x44\x0e\x63\x81\x55\x8c\x3c\x24\xad\xf1\xf5\x96\xa4\xad\x30\x7d\x13\xbc\x31\x86\x1a\x2e\x43\xe2\xc2\x1d\x45\x2c\xc1\xa8\x30\x17\x20\x87\x71\xb1\x0a\xc9\x96\xf7\x95\xec\x4b\xb2\x4f\x3c\xe7\x8a\x80\xe4\xb1\x50\x53\x95\x75\x3f\xb2\xd8\x15\xe7\x8a\x72\x91\xd5\x6c\x1f\x78\xd0\x60\xee\xde\x7a\x3f\x12\xc7\xe9\x4b\x03\x31\xf6\xcc\x49\x6d\x34\xaa\xce\x2f\x85\x11\xa4\x8f\xb8\x96\x53\x91\x29\x0b\x73\x56\x72\x18\x2c\xa7\x46\xd1\x85\x73\xa4\x44\x51\x15\x5e\xa8\x5f\x15\x5d\x94\xe4\x8f\xef\xe6\x4a\x60\x06\x31\x92\x5e\xd7\x60\x46\x63\x4b\xd9\xcd\x03\x4b\x90\x9e\xf6\x24\xdc\x77\x8d\x27\x61\xe2\x69\x4f\xc2\x6a\x19\x96\x39\x9d\x7d\xa7\x1e\x7c\x0c\xeb\x3c\x00\xda\x43\xae\x64\x76\x6d\xe4\x4b\x37\xe6\x9e\xe3\xca\x88\x3e\xef\x73\xed\x9b\x4b\xe3\x50\xe4\x83\x31\x75\x7d\x9b\xdb\x72\x7e\x2e\x35\xb4\x9e\xe5\xbe\x45\x3e\x1a\xa9\x0f\x7c\xca\x3d\x5b\xbd\x36\x4e\xd1\xdf\x69\x15\x15\xf8\x45\x09\x8a\x3c\x0c\xef\x55\xf8\x6b\x8a\xe1\xb9\xb1\x1a\x7d\x65\x3c\x22\xbf\xc8\x23\x66\xbc\x91\x45\x06\x18\xbe\x93\xbf\x7d\x0c\x2f\x8d\x4c\xef\x37\xae\xa4\x9a\xf0\x3d\x7f\xe9\xcc\xe1\x1b\xfe\x9b\x33\x87\x7f\xe0\x91\x53\x1e\x4d\xf8\x81\x47\x4e\xc1\x36\xc2\xaf\x3c\x72\xbe\x0f\xa3\x6c\xa0\x04\x99\xf0\xe3\xbe\x55\x3a\xfc\x85\xa7\xda\xda\xfc\x9b\xd5\x7c\x2e\x12\xf8\x96\xa7\xce\x8b\x20\x0b\x7e\x08\xc5\x3d\xfc\xc4\x5f\x23\x17\xc3\xdf\xf8\x6b\x44\x31\xfc\x13\x7f\x8d\xba\x18\xfe\x91\xbf\x46\x3d\x0c\xff\xcc\x5f\x23\x0f\xc3\xbf\xf0\xd7\xc8\xc7\x20\x04\x7f\x87\xda\x2e\x86\x4c\x3d\x10\x0c\x89\xe0\xef\xb5\xd7\x90\x14\x22\xf9\xfc\x49\x3c\xa4\x10\xca\x27\x63\x50\x08\xb1\xe0\x3f\x96\x42\xfa\xb7\x73\x08\x64\x42\xa2\x02\x40\x41\x5a\x3e\xbf\x0f\x6f\x6e\x33\x58\xc9\x84\x5f\xe2\x30\x82\x85\x7c\x4a\xe3\x24\x83\xa9\x7a\x52\x61\x81\xe6\xf2\xb1\x50\x95\x9b\xe9\xb7\x9a\x47\xc2\x5b\xc1\x3f\xd5\x4c\x03\x97\x2a\xa1\x1e\x9d\xe6\x4e\xf0\x8f\xc8\x92\x53\x33\xbb\xaa\x29\xa0\xc3\x5a\x7d\x99\x89\xf9\x5e\xfa\x83\xe0\x81\xf3\xfc\xed\x9b\x0f\x1f\xdf\xc3\xb5\x7c\xfe\xf8\xd3\xbb\xcb\x17\x70\x23\x1f\x7f\x78\x75\xf9\x23\x5c\x09\xfe\x1a\x91\xba\x83\xa9\xe2\x7c\x7e\x16\xe8\x17\x24\x40\x8c\xd7\x62\xa2\xe8\x13\x8c\xe1\x5e\x34\x12\xec\x2d\xc2\xb9\x22\x19\x7e\x55\x86\xa8\x72\x59\x89\xaf\xd6\x0e\x8d\xc9\x04\x3b\xd7\x6a\x05\xf1\xd8\x9d\xc8\x4a\x2e\x05\x6f\xb7\x7f\xb5\xed\x76\xfb\xd7\xca\xdd\x50\x2a\x32\xdb\xae\x57\xae\x6b\x24\xda\xc7\xb8\x12\xeb\x61\xf8\x20\x9a\x22\xb0\xf0\x5b\xc3\x52\x25\x92\xa5\x4a\xfe\x7f\xb9\xd4\xff\x1f\x72\x7c\x10\xcf\xe7\xa9\xc8\x2a\xf8\x20\xd9\xc1\x5b\xb1\x8f\x7c\xae\x94\x79\xcd\xb5\xd0\xd1\x2a\x73\x78\x68\x0c\xd4\x7f\xa8\x3a\xc5\x09\x5a\x6a\x21\x74\x0c\xb0\xb6\xa4\x45\x3e\xef\x77\x2c\x9c\xa3\xb6\xac\x70\xbb\x6d\xa3\x3b\x53\x25\xce\xab\xb2\x5e\x65\x8d\x55\x55\x4d\x0b\x2a\xbd\xcd\x03\x9e\xef\xe0\xd9\x7e\x33\x26\xc7\xc7\xfd\xd5\x82\x8f\xfb\x39\x8b\x20\x23\xdc\x85\x88\xe7\x7a\x62\x10\xf2\xcf\x42\xe9\x61\x9d\x45\x17\xc9\x19\x0e\xc7\xc9\x84\x67\xe3\xa4\xd3\x99\x94\xb8\x13\x3e\x89\x03\x0f\x22\xdf\xab\x87\x23\x91\x40\xb4\x6f\xf9\xd9\x38\x99\x28\x63\xaf\xd7\xe2\xc8\xbd\x5b\x08\x5a\xf8\x76\xaf\xed\x02\x0f\xf4\xf4\xa7\x7c\x71\x24\xf6\xc9\xbc\x94\xfa\x4e\x61\xc6\x9f\xa1\x54\x87\x77\x51\xd7\x3e\x33\xdb\x6e\x5f\xa2\x99\x71\x54\x14\xf0\x99\xd1\x5c\x92\xb0\x7d\x3c\x81\x8c\xbb\x67\x6d\xe5\x71\xa5\xe6\x58\x28\xeb\x74\x70\xa4\x89\xfb\xd8\x04\x40\x3e\x49\x79\xa4\x42\xb9\xcd\x6d\x7b\x71\x41\x6d\x1b\x4d\xf9\x0a\x4d\xa1\x1a\x34\x12\xa8\x32\x65\x71\x21\xe1\x4b\x54\x84\xb1\xd7\xf3\xaa\xcc\xc8\x13\x7c\x96\x5c\x64\xaa\xfa\x70\x9c\x4d\xf8\x7c\x34\x45\xe9\x38\x9b\x40\x86\x99\xfc\xad\xcc\xf3\xbb\x1a\x45\x59\xfa\x0f\x77\x21\x3b\x9c\x9c\xa4\x68\x21\xc3\x67\xd9\x85\x38\xc3\x4a\x66\x5f\xf6\x4d\x54\x16\x31\xd9\xc1\x2f\xe6\xe0\xd5\x4f\xd9\x4c\x94\x26\xe4\xbf\xea\x30\x20\x18\xde\x8b\x06\x4b\xde\x59\xee\x15\xe5\x17\x31\x9a\x9a\x52\x6f\x85\x11\x6e\xb0\xfc\xa9\x86\x8f\x9f\x0b\xbe\x29\x63\xa4\xb2\xc6\xad\xfb\x5d\xbd\x26\x50\x8a\x09\x5f\x15\x0d\x15\xef\x40\xac\x45\xf2\xd0\x64\x35\xf7\x8f\xd5\x0a\xbf\x2e\x9e\x0e\xde\xc1\x3c\x5c\x2c\x1a\xb6\xf3\x1b\x33\xf0\xc6\x31\xce\xc3\x45\x26\x92\xa6\x3e\x3c\x33\xcb\xf3\xb7\x3f\xd1\x17\x55\x71\x34\x6b\xaa\xf6\x9f\xff\xe4\xd0\xa2\x99\x42\x67\x4d\x55\xfe\xcb\x9f\xab\xb2\x21\xa8\xd1\x4f\x7f\xaa\xa6\x50\xe3\xd9\xa6\xae\x65\xe2\x4f\xd6\x38\x5d\xac\x66\xa2\x29\x28\x4a\x4b\xfc\xb9\x2a\x25\x8a\x6f\xd8\x1c\x2b\xf1\xd8\xee\xa8\x50\x11\x0d\x65\xe3\x47\xcb\xde\x05\xcb\xa6\xee\x5f\xfd\xb9\xee\x6b\x92\xa5\xa1\x13\xc1\xa3\x9d\xa8\x50\x3a\x0d\x65\xd3\x2f\x94\x5d\x8b\x24\x15\x8d\xe1\xc1\x20\xe3\x79\x99\x12\xa0\x95\xac\x16\xca\x9e\x2a\xa7\xf1\xee\x59\x74\x9e\x9c\x61\xed\x0c\x7d\x1c\x4d\x40\xff\x76\x3a\x13\x9d\x72\x7a\x9a\x99\xb4\xac\x1a\x95\xf7\x36\x4c\x77\x90\xc6\x77\x8d\x16\xb5\xff\xf4\xa7\xe6\x4f\xd2\x75\x4d\xb5\x2d\xc4\x3e\x00\x93\x99\x57\xd7\x0a\xa1\x37\x06\xdc\x29\x72\x46\x85\x8b\x55\x08\xf9\x5a\x61\xe1\x0a\xca\x47\xbf\xa0\x04\x12\x85\xd1\x31\x4a\x0c\x15\x05\x89\x73\xfd\x90\x89\xb7\x8a\xa0\xe9\x84\x4f\x12\xe7\x9b\x9f\x3e\x5e\x7e\xb8\x7a\x77\xf9\xfe\xea\xf2\xbb\xcb\xd7\x97\x6f\x3e\xc2\xb2\x12\x1b\x3a\x1b\x45\x6c\x8d\x32\x88\x30\x3e\x0d\x15\xa7\xf5\xea\x08\x09\x91\x43\xab\x7d\xd0\x0e\xca\xe0\x64\x07\x2f\xea\x48\x3c\xff\x6c\xd8\xf3\x0f\x02\x55\xa7\x0d\x24\xa1\xad\xc3\x5a\x99\x01\x46\x1a\xc9\x87\x7c\x89\xa2\x02\x49\xc6\xda\x27\x61\xd8\xc9\x2e\x92\x7d\x9a\xad\xe4\xe1\xb5\xc0\xfb\x3c\x3c\xc3\x7a\xa1\x3b\xf1\x84\x47\xe3\xb8\xd3\x99\xec\xe0\x8d\xe0\x9b\xdc\x0f\xc8\xe1\xf6\x0c\xf7\xd1\xd4\x4e\xfb\x11\x39\xcc\x19\x1d\xe6\x34\x8e\x48\x0e\xf3\x26\x07\x79\x77\xf0\xdd\x91\x59\xd5\x34\xa5\x18\x5f\x8b\x89\x6d\xe7\x46\xeb\x85\x16\x59\x66\xdb\x3a\x7c\x83\x6d\x1b\xd1\x73\x27\xc3\x9c\x17\xba\x7d\x3b\x78\x79\xa4\xde\xef\x24\xd1\x96\xf1\x07\x6d\x37\x84\x47\x53\x44\xb5\xf1\x0f\xfb\x46\x0b\x66\xe0\xb7\x43\x9a\xcd\xc8\xd7\xd1\x5e\x61\xdb\xbe\x42\x89\xa4\x7c\x51\x02\x96\x09\x41\x80\xb7\x5b\xf5\xaa\x62\x7e\x98\xe7\x54\x3f\x2b\x4b\xbd\x42\x47\xc1\x7c\xbb\x4f\xc2\x4c\xbb\x11\xb5\xed\x76\xe2\xe4\xaf\xe6\xab\x28\x34\xf5\xcd\xf7\x32\x61\xf4\xbd\xe9\x1d\x43\x4a\x63\x31\x31\x1e\x1d\x05\xde\x9d\x3c\x88\xed\x16\xfd\xe6\xcc\xf9\x4b\x01\x2f\x9d\x39\xff\x4d\x60\x88\x51\xec\x7c\xe8\xc4\xce\xcb\x27\xed\x07\x51\x6a\xd6\x6f\x8e\x19\x60\xb1\x97\x02\x6a\x76\x67\x0f\xec\x37\xa1\x1c\x33\xd5\x74\xa7\xcc\x92\x6a\x36\xc3\xb6\xd1\x5c\xf0\x59\x13\x11\xb4\x12\x35\xd5\x46\xb5\xfb\xbf\x17\x7c\x86\x36\x92\xda\xc1\x27\x33\xf4\xbd\x80\x37\x02\xc3\x5c\x3e\xdc\xca\x67\xc3\x6c\x62\x50\xdf\x36\x8a\x2b\x64\xaf\x84\x8a\xc7\xf5\x42\xc0\xb4\x29\xc6\x15\xde\xec\x0a\x47\xf5\x6c\xbe\xef\xc3\x9e\xbd\x97\x23\xf8\x24\x64\x7d\x96\x86\x0b\x16\x58\xd7\x56\x99\x56\x80\x08\x0b\xac\xb8\x9e\xfe\x5d\x6e\x7f\xb4\x28\xd3\x0b\x9b\x24\x61\x61\xf8\x5e\x26\x2d\xc5\x63\xb4\xbd\xdc\xce\xbb\xdd\x51\xb7\x58\x69\xae\x0c\x3b\xe5\xa2\x83\xd0\x8a\xb7\xdb\x2b\x3c\xb2\x9e\x2f\x82\xbb\xa5\x98\x59\xcc\xb2\x70\xc7\x78\x37\x82\x19\x57\x7b\xac\x23\xe0\x96\xab\x1d\xd6\x11\xb0\xe6\xd1\x78\x3a\x81\x07\xbe\xde\x6e\x37\x3b\xb8\xe6\x6b\xdb\x7e\x8b\xd6\x18\xee\x79\x7b\xbd\xdd\xb6\x03\xe7\xd9\x37\x3f\xe8\x28\x4a\xcf\xe4\xb7\x75\x45\x6e\xf0\xb1\xda\x15\xc3\xa7\x24\xc7\xc6\x52\xcf\x6a\xcc\xb6\x9c\xab\x59\xa9\x23\xb9\x1e\xcf\x26\x28\x79\x92\x75\x22\x27\x86\x7b\x81\x77\x39\x4d\xbf\x1f\x4f\xad\xb1\x4e\x88\x4a\xad\xd3\xab\xd9\xc9\xca\xb6\x51\xc4\x91\x11\xc5\x29\x87\x29\x28\x52\x62\x55\x97\x45\x17\xd4\xf3\x46\xd4\xf3\x18\xf5\x3c\x3b\xc2\x10\x3a\xeb\xf1\xad\x6e\x3b\x74\x62\x88\xaa\xad\x2b\x1c\x53\x9e\x21\x65\xaf\xbf\x3b\xb9\x1f\xa1\x35\x4f\xeb\x46\xee\xda\x3b\xdb\x02\x09\x58\xc3\x14\xac\xab\x99\x89\x2e\x12\xeb\xf0\xda\x30\xe3\x2e\xdc\x6a\x28\x2c\x81\x80\x09\x57\x9c\x54\x55\xcd\xfe\xb2\xdd\x5a\x15\x49\x8c\xc5\x39\x5a\xf1\x1b\x99\x79\xbb\xb5\x3e\x28\xb5\x9d\xfa\xe7\x55\x61\x9f\xa8\x79\xe9\x64\xf4\x51\xa0\xb5\x3c\xe2\xaf\xcd\xe9\x91\x2f\x27\x31\x4f\xe0\x56\x22\x8e\x08\x4c\x84\xef\x07\xae\xb1\x9b\xde\xa2\x27\x55\x79\xb0\xd6\x40\x78\x38\x64\xed\x4b\x34\x11\xce\x11\x0a\xf8\xc3\xe9\x2d\x3e\x77\x8f\xe6\x2a\x82\x9e\xa3\x80\x2f\x51\x88\x9f\x64\xb8\x73\x7b\xf1\x70\xbc\xd6\x94\x07\x4f\x33\x5d\x2a\xe5\x77\x28\x51\x06\x24\xe2\xbe\xf5\x17\x14\xf0\xf4\x89\x09\xde\x39\x47\x42\xcd\x2d\x6c\xae\x59\x0c\x31\xbb\x85\x05\x0b\x40\xb0\x14\xd6\x4c\x66\xfe\x16\xc5\x78\x87\xcf\x66\xe7\xe9\x19\xfe\x88\x04\xcc\x3a\x1d\xc5\x67\x3d\xe3\x95\xad\xcb\x3f\xa0\xef\x15\xe0\x78\x06\xd5\x88\x17\x16\xac\x31\x66\x7b\x3e\xcf\xb5\x61\x51\x93\xc4\x64\x8d\x4e\xcd\xb7\x57\x87\xd1\xaa\xd6\xa0\xb3\xe8\x50\xb0\xfa\x99\x38\x5e\xfe\x28\xf0\x4e\xc5\x79\xdb\x6e\x8f\x6d\x24\xb5\x75\x4e\x2a\xf6\xa9\x6b\x98\x62\x90\x3b\x67\xf4\xa5\x3d\x13\x3f\xba\x67\xe2\x51\xc1\xcf\x87\x23\xd9\x9b\x07\x94\x80\xd9\x1b\x10\xe6\x5a\x89\x6d\xce\xa3\xfd\xaf\x98\x99\x04\xcc\x1e\xdb\x6e\x26\x97\x5c\x41\x35\xf5\x3f\xa1\xeb\x36\xe7\x87\xaa\xef\xa3\xcf\xe8\xa1\x30\xd6\xfc\x8c\xae\x31\x66\x32\xa5\x1e\xc0\x51\xb5\xb3\xde\x6e\xe7\x68\x0d\x02\x1e\xc6\x62\xa2\xea\xac\x2e\xe6\x33\x48\xb6\x5b\xf4\xac\x66\xd5\xb1\xc6\x7a\x9f\x7f\xe2\xcf\xc6\xb7\x62\x02\xaf\x79\xbb\xfd\xc9\xb6\x51\xe9\x51\xee\x93\xf2\xb0\x96\x2b\x6d\xe9\x37\x0c\xef\x78\x81\x45\x4e\x64\x93\x77\x42\x19\x0b\xcb\x9d\x72\x2d\xe4\x02\xc8\xa7\x9b\x32\x71\xad\x02\x60\xa1\xd5\xc8\xac\x30\x1e\x2f\xc5\x84\xf3\x29\x5b\xaa\x8e\x3f\xc3\xdb\xed\xf7\xe8\xd9\x23\x30\x7e\x2a\x81\xfb\xe5\x78\x3a\xe1\x6b\x85\x70\xbf\xed\xc4\xce\x8f\x0a\xe9\xa2\x75\x9b\x3f\xa8\xa8\x5b\x0a\x11\xc3\x14\x36\x07\x04\x28\xcb\x76\x55\x3c\x5d\xdf\xa3\x0f\x4e\x3c\xcf\x57\x45\x5b\xc7\x4d\x61\x33\x4f\xe2\x3b\xf6\x5a\x40\x3c\x67\xef\x24\x6a\xb3\x0e\xea\xb4\x64\xbf\xe5\x84\x3f\x6b\xfa\x28\x37\x89\x6c\xf0\x1d\x4c\x25\x16\x86\x17\x68\x6a\x12\x54\x0f\x2e\x85\x6c\x44\xe3\xdb\x5d\xf5\x43\xfb\x35\x4c\x15\xb6\x4e\xb6\xdb\x67\x85\x90\x96\xf3\xb9\x50\x6b\x57\x24\xcc\x45\xb5\x54\xd3\xa1\x23\xb8\x30\x1a\xd6\x43\xca\xd1\x7c\xad\x3d\xd4\x24\x3e\x1d\x13\xa0\x93\x3d\x99\x30\xc2\x6d\xae\x2b\x56\x5f\xf1\xc1\x67\x1d\x9b\xaa\x5e\xdd\xb3\xbd\x5c\x7a\x9a\x75\x05\x3b\xac\xbb\xd5\x44\x48\x3c\x97\x0b\xfd\x7a\xf4\x89\xbd\x93\xf3\xf0\x5a\xcf\xf2\xad\x80\x77\xb9\xdb\x99\x46\x9f\x3d\x75\x43\xb9\xdc\x6d\x9e\xb1\x36\xdf\x0f\x11\x4b\x3d\x46\xa8\xa7\x2e\x27\x49\xd7\x53\x17\x85\xa4\xeb\xc3\xde\x8d\x5c\x61\x6c\x9b\x5b\xa9\x93\x5e\x97\x91\x5e\x17\x48\xaf\xc7\x48\xaf\x50\x3f\x2d\xdc\xf1\xe5\xfe\xbb\x89\x4f\x19\xf1\xf3\xb0\x6e\xdd\x3e\xeb\xf6\xa1\x3b\x60\x85\x0d\xab\x0e\x33\xa9\x4c\x1c\xea\x01\x6a\xab\x01\xe0\xf6\xad\x51\x8c\x27\xf0\x6a\x18\xb8\x8a\xb3\xbf\x6a\x10\xdb\x52\x1d\xba\xd7\x3d\xbc\xbc\x3a\x50\x22\xaa\x5e\x30\xe5\x8a\xd0\x83\xfe\xde\x05\x53\xdf\x35\xce\x3a\x89\x89\x54\xe9\x53\x7d\xc1\xd4\xf5\xf4\xfd\x92\xba\x4e\x9a\xe5\xd7\x49\xb7\xf9\x75\xd2\xb2\xbc\x02\xba\x2b\x34\x96\xd7\xe6\xda\xe6\x21\xf7\xfe\x79\xcd\xa3\xda\xed\xca\x0d\x8f\xca\xdb\x95\x2b\x1e\x39\x92\x42\x81\xfb\xfa\x0d\xce\x25\x8f\x9c\x57\xd1\x3c\x8c\xc2\xec\x01\x3e\xf0\x6b\x78\xcb\xaf\x9c\xe0\x3a\x85\xcf\xfc\x4a\x79\x91\x7b\xc6\xaf\x34\xf7\x0e\x1f\xf9\x95\xb3\x88\x6f\xe0\x13\xbf\x72\xbe\x7b\x43\xe1\x35\x0f\x47\xd6\xd5\xb5\xc5\x0a\x72\xf5\x9d\x4a\x59\xc8\x94\x0a\x51\xfa\x8b\x4a\x8d\x4d\xaa\x21\x61\x4b\xff\x3e\xef\xd1\x7e\x0c\x69\x08\xd4\x39\xd1\xb7\x0d\x89\x9c\xba\xc1\x93\xe4\x34\x3b\x25\xb0\xe2\x88\x9c\x9f\xa7\xf8\x94\xc0\x82\xaf\x2e\x2e\x08\x4c\x39\xed\x2a\x96\xf8\xb3\x72\x70\xd7\xc3\xa7\xea\xa1\xdf\xc7\xcc\x85\x39\x77\xe5\x6c\x9e\xbb\xdb\xad\xab\xe3\x72\x90\xa7\xe2\xdc\x1d\x11\xe6\x2a\x14\x8f\x04\x7f\x8b\x04\xc6\x6d\x2e\xb6\x5b\xc1\x39\xbf\x1c\xa1\x90\x2b\xe7\x6d\x84\xb9\x10\xf1\x15\x66\x28\xe2\xcf\xd0\x47\x24\xf0\xd3\x4f\x18\xc4\x13\x14\x73\xd5\x80\x24\xf1\x88\x24\xfd\x4e\x4f\x21\x7e\xc2\x29\x06\x24\x3a\x3c\xea\x2c\x2e\x38\x19\x4d\x9f\xc6\x6c\xfa\x44\xe6\x23\xa7\x0b\x8c\x9f\xc4\x17\x9c\xca\xbc\x9d\x0e\xc4\x4f\x65\x5e\x95\x6f\x25\x1b\x33\xad\x98\x82\x28\xe4\x48\x3c\x89\x4f\x09\x56\xa5\x33\x99\x93\x2f\x30\x93\xbd\x52\x29\x8b\xea\x27\xee\x62\x7c\x96\x5d\xf0\xc1\x59\x30\x9e\x77\x3a\x13\x2e\xa9\xcc\x10\xc2\xa7\x9c\x7a\x3e\x64\xa7\x7c\x80\xcf\x54\xec\x70\x1e\x9d\x9f\x67\xdb\x10\xd2\x0e\xcf\xce\xd2\x0b\xb7\x9a\x3f\x82\x48\xe7\x4f\x55\xfe\x5c\x7e\x34\x3e\x3d\x9d\x4f\xb6\x9c\xd0\xc1\x93\x19\x04\xbb\x62\xb5\x9e\xef\xad\x56\xb1\x34\xb1\x5a\x9a\x50\x2e\x4d\xc0\x63\xb9\x34\x29\x0f\x4f\xfb\xb0\xe2\x89\x5a\x2d\x31\x5e\x9d\x9e\x4e\x60\xca\x09\xed\xdb\x0b\x1d\xdf\xe9\xe2\x82\xf7\x55\x7f\xa6\xb2\x07\x4f\xa6\x1d\x15\xad\x77\x75\x7a\x6a\x3a\xa3\x3b\x3f\xb5\x65\xcd\xa7\x6a\xd5\xa7\x17\x17\xfc\x34\x2d\x07\x12\xa9\x82\xd1\x7e\xc1\x70\x8e\x5c\x15\x34\x60\xca\xc9\x69\x50\x44\x90\x98\x72\xce\xe3\x9c\x8e\x8d\x46\x6f\x82\x37\x6c\x31\x3a\xbd\x64\x97\x27\x51\x87\x9b\x59\x9d\x9e\xf2\xc0\x18\x5d\xa0\x85\xf2\xde\x87\x9f\x44\x6a\xca\xa7\xa7\x19\x2e\x27\xe2\x55\x2d\xe8\x73\x77\x72\x7e\x4e\x7b\x5b\x31\xa6\x93\xf3\x73\xe2\x6f\xc5\x98\x4c\xce\xcf\x07\x5b\x31\x76\x27\x65\x99\x17\x65\x99\xb1\x9c\x7b\x51\xf9\xf6\x66\xff\x1b\x88\x8b\x8b\x81\x4d\x3d\xaf\x92\xe9\xbb\xa3\x99\xe4\x03\xf1\xf3\x27\xda\xdb\x2b\xf8\xb2\xd2\x5b\x79\xe0\x3c\x0a\x83\xca\x60\x7e\xdb\xfb\x4c\xbb\xd0\xab\x7c\xce\xd9\xf9\xcd\x1d\xaa\x5a\x38\x3c\x7a\x55\x64\xee\x89\x8a\x3a\xbe\xa9\x6b\xf2\x86\xfc\x16\x75\x12\x9c\x4b\x8a\xc4\xf8\xdd\xc4\xd0\xeb\xf7\x39\xbd\xae\x04\xc8\xed\x9c\xb7\xe1\x62\xfc\x7a\xe2\x5c\x5d\x43\xc0\xc3\x8e\x18\xff\x32\x81\x94\xe7\x4e\x3d\x02\x08\x3a\xa5\x7a\x64\x34\x4a\x59\xea\x18\x39\x25\xaa\x74\xe1\x1f\x50\x11\x6d\x07\xe2\x5c\x65\xb1\xe8\x46\xf0\xa5\x6e\xe4\x62\xce\xb4\xe8\xca\x8a\x07\xba\x2b\x0b\x1e\xa1\x4e\x28\x61\xb9\x7b\x36\x3d\xcf\xce\xa6\x9d\x0e\x4e\xc7\xab\xce\x74\xc2\x17\xe3\x78\x34\x65\xd9\xe9\xf4\x94\x4c\x76\xb2\x19\xc9\xe7\x6a\x96\x6c\x51\xc3\xf4\xd7\x9a\xfe\xdf\x6e\xf7\xd2\x55\x44\x58\xc3\x00\x6c\xb7\x8b\xa6\xbb\x5a\x1d\x34\x56\x67\x2c\x48\xff\x6b\x15\xc7\x12\x6a\x24\x7b\x9b\x5f\x2b\xf2\x53\x52\x0e\x85\xd8\xf6\x07\xf8\x95\xa3\xeb\x26\x7d\x0e\x13\x67\xfa\x5a\x57\xf8\x01\xdd\x2a\xc5\x8e\x6a\xd4\xd9\x0f\x95\xed\xf0\x23\x5f\xa2\x0f\x18\xfe\xc2\xdd\xb3\x1f\x73\xc1\xeb\x5f\xce\x30\xfa\x81\xff\x38\xfe\x4b\xa7\x33\xc1\x61\xd4\xba\xde\x6e\x53\x74\x0d\x3f\xc0\x87\xf1\x0f\x13\x7c\x12\x6f\xb7\xe8\xd7\x1a\x39\x7d\x8d\x77\xb2\x4f\xdf\xea\xf0\xba\x3a\x1c\x2e\xa2\x92\xb6\xaf\x06\x8c\x53\xfa\x89\x51\x36\x38\xf9\x36\x7f\x42\x2e\x50\xd2\xeb\xf7\x06\x5d\xbf\x37\xc0\x50\xa6\x93\x32\x7d\x88\xa1\xfd\xad\x73\x93\x17\xc0\xb6\x5d\xbe\x11\xbc\xdd\xae\x6a\xb1\x6b\x37\xa6\x86\x3d\x71\xef\x4f\x95\x20\xc7\x02\x32\x79\xec\xe5\x79\xd3\xb2\x03\xa5\xfd\xf0\xb5\x05\x76\x92\xb6\xd7\xc4\x58\x7d\xf6\xf3\x69\xaf\xaf\x5d\x2e\x95\x55\xf7\xe2\xfa\x32\xf6\x9a\xaf\xcb\x8b\x3e\x8d\x2e\x33\x0c\xae\x76\x51\x37\x7e\x37\xe1\xd9\x0e\x6e\x0e\x24\x86\xa6\xfa\x1b\xb0\x72\xea\xc0\xc2\x30\x45\x42\x36\x58\xa6\xe4\x54\xcd\xf8\xdd\x04\x42\x3e\x37\x2a\x5a\xa1\xc4\xa5\xe1\x45\xb4\x7f\x48\xca\xcb\x78\x75\xa0\x51\x52\x89\x43\x31\x8a\x4e\x43\x36\x93\x3c\xda\x61\xb9\x92\x27\x57\x5d\x7e\x3d\xe1\x3a\x46\xd4\xf8\x97\x09\x0f\x8b\x61\x24\x3b\x08\x6d\x1b\x7d\x8f\xae\xf7\xc4\x5d\x57\x0b\x25\xdb\xba\xa9\x48\xcc\xae\xae\x8b\xa4\x23\x39\xab\x72\xb4\xab\xd8\xc2\x18\xf6\x16\xfe\xe6\x60\xe1\x8b\x13\xf1\x8d\x9e\x3b\x02\x02\x8f\xdd\x49\xbe\x96\xca\x87\xe8\xfe\xda\x1f\x29\xa3\xf2\xbe\x8a\x32\xe2\x37\x84\xdd\x37\x59\x69\xf5\x0e\x43\xc5\xd0\x30\x08\x29\x33\x68\x45\x45\xe2\x90\x88\x46\x02\xfd\xa2\xf5\x3f\x53\x65\xab\x5a\x65\xde\xb7\x2e\x6d\x1a\xc7\x2b\x64\xea\xea\xed\xd7\x85\x8b\x2e\xfc\xdd\x25\x2f\x2e\x2e\x5c\x55\x5a\x79\xd7\x68\x2e\xfe\xfc\x68\x71\x83\xa8\x8a\xf2\x7e\xef\xd1\xf2\x83\x83\xf2\x1a\x0f\x42\xf3\x51\xff\x87\x62\xe1\xe0\x85\x12\xbf\x1f\x39\xe1\x4d\xf9\xf6\x57\xb8\x92\x4f\x2e\xc5\x9b\xea\x85\xf8\x58\xf2\x72\x79\xe5\x7f\x7f\xa9\xfd\x05\xab\x14\x92\x13\xf6\xdd\xd1\xa6\xfe\xfe\x52\x87\x8b\xb4\x57\xec\xb7\xe3\xc5\x6a\x6b\x53\x29\x26\x17\xe5\xe5\x41\xb1\x1d\x3e\x79\x40\xfb\x10\x10\x1e\x50\x1d\x6a\xa5\xb5\x83\x6b\x54\xa0\x94\x33\xfc\x2a\x27\xc4\xaf\x21\x29\x38\x21\x7e\x53\xe5\x71\x0b\x9e\xd6\xb8\x84\x3f\xca\xc3\x6a\x5e\xd5\xf0\xa2\x8a\x0b\xad\x7a\x6e\xac\x04\xe8\xcc\x39\xc9\xdc\x8e\xb3\x77\xa0\x9d\x5f\x28\xed\xd4\xb4\x12\x8b\x70\xad\x3d\x15\xb0\x32\xce\xf5\xc2\xd4\x95\xa3\x1c\xaa\x4c\x5a\xeb\x61\xaf\x78\x1b\xb5\x6b\xcc\xde\x76\xdb\x2e\x99\x3d\xe5\xfc\xc7\x78\xfd\xb1\x5e\x15\xfa\x78\x15\xd5\x3c\xf5\x68\x44\xf7\x3a\xe5\x55\xa1\xdf\x05\x15\x5d\x2f\x50\x7b\xab\x4c\xce\x9f\xcd\x3e\xa8\xbc\xf8\x3d\x2d\xfb\xaf\x04\xde\x3d\x9b\x9e\x0f\xcf\x30\x4a\x78\x34\x9e\x2b\x8f\x43\x13\x3c\x42\x21\x4a\xaa\x2b\xa6\x16\xab\x9e\x96\xaa\xfb\x2b\xb6\x50\xbe\xeb\x4b\xd5\xe9\x67\xdf\xfc\xc0\x56\xa0\x55\xdf\xd8\x02\x94\xde\x1b\x0b\x40\xae\x38\x4b\x6b\xee\x92\x6b\xc1\x52\x65\x6a\xa3\x3a\xab\x9b\x6b\xcf\x26\x41\x34\x8b\xef\x8e\x84\xbd\x2c\x83\xf8\x68\xcf\xa8\x56\x2e\x45\x2c\x95\x9a\x47\x96\xc5\x04\x58\xf8\xca\x02\xd4\xe9\x24\x9d\x08\x17\x32\x26\xd4\xf5\x71\xa1\x28\xdc\x7b\xcc\xf1\x49\xe9\x60\x78\x3f\x6a\xd6\x2a\x15\xc9\xb3\x1b\x11\x65\xdb\xad\x65\x55\x62\x66\x91\xde\x51\xc3\xc9\xfe\x11\x6d\xec\x5c\x85\x2d\x51\x2a\x6c\xc2\xb9\xca\x1a\xad\xe9\x55\x0c\xec\x03\x27\x13\xd0\x52\xa6\x71\xad\x44\xfc\xba\x0a\x13\x31\xab\xa8\xb2\xd5\x82\xea\x90\xde\x51\x85\xe8\xfd\x08\xc5\x83\x7e\xbe\xe5\x87\x5a\x50\xa2\x04\x1b\x8f\x9a\x5f\x45\x8e\x5e\x88\xed\x16\xe5\x8f\x3c\x1c\x6d\x76\x2c\x29\x3e\x6c\x76\xf8\xc4\xba\xb2\x38\x17\xa5\xff\xa4\xed\x56\x09\x49\xb3\xed\x36\x40\x19\x88\xdc\x8b\x79\xac\xdc\xef\x18\x33\xec\xde\x90\x91\xde\x10\x0e\xac\x7d\x2b\x47\xb9\xc1\xc9\xa4\x76\x05\x49\x3c\x17\xd7\x22\x1f\xc8\xa7\x47\xcd\xb7\xef\x3f\x55\xad\xb7\xb5\x5e\xf2\x00\x9b\x41\x40\xdc\xe4\x70\x26\x6c\x36\xa0\x6e\x34\xf2\x8e\x6d\xdb\x58\x53\xc7\xa3\x90\x45\x18\x99\x0d\xec\x58\x1d\x4d\xc2\xa7\x59\x9c\x08\x9e\x1c\x9a\x81\x97\x2e\x97\xbc\xa3\x0e\xa5\x7a\xde\xd1\x40\x54\x4a\xc7\xb8\xee\x2b\xd4\xc5\x8a\xca\x36\xb9\x5e\x2b\x0f\x2a\x4d\x91\xd0\xdb\xa5\x81\x80\x18\x47\x93\xed\x56\xec\x47\x5b\x09\xc7\x72\xeb\x4e\x6a\xb1\x8e\xb4\xfc\x4f\x2d\x5a\x1e\xa8\x8a\x78\x35\x15\xf1\x7c\xef\x28\x8d\xef\x93\x0c\x65\xce\x3b\xc8\x6f\x2a\xab\x9a\x6c\x4a\xfb\x79\x87\x41\xa0\x6e\x17\x23\xab\xfc\xa2\x62\x88\x77\xbb\xac\xdb\x35\x62\x48\x25\x62\x54\x0d\x75\xeb\x0d\x1d\x88\x05\x4d\xab\xca\xdb\x6e\xcf\xc5\xa8\x67\x3a\xd0\xc9\x9c\x97\x4f\xda\x72\x33\xf8\x18\x8d\x27\x8e\xd2\x79\x53\xc0\xb0\xe8\xd9\x51\x35\xb8\x24\xe7\x25\x6a\xa4\x8c\x52\xca\xdc\x10\xea\x33\x42\x7d\x23\x1c\x2d\xfb\xd9\xfb\xea\x09\x51\xea\x72\x4a\xb2\x58\x4e\x85\x4c\xab\x4e\x82\xc2\x7f\x65\xe5\xde\xdf\x39\x09\xf4\xc8\x24\x68\xad\xbb\xfa\x2c\x1c\xd7\xc4\xfb\x33\xd3\xe0\xff\x9d\x3d\x55\xa6\xfc\x56\xa1\x66\x67\x41\xc8\xdb\xee\x49\xd4\x0a\xff\x1f\xe2\xfe\x7d\xbf\x6d\x1c\xc9\x1f\x40\xff\xd7\x53\x48\x3c\xb3\x5c\x20\x82\x69\x51\x92\x6f\x74\x10\x4d\x3a\x71\x32\x9e\x49\xec\x6c\xec\xee\x99\x5e\x8d\xc6\x4b\x4b\x90\xc5\x0e\x45\x6a\x48\xc8\x8e\xdb\xd2\x79\xf6\xf3\x41\xe1\x42\x90\xa2\x7c\xe9\xee\xf9\x9d\xde\x9d\x58\x04\x41\x5c\x0b\x85\x42\xa1\xea\x5b\xc9\x70\xe4\xba\xf2\xc4\xe5\xe3\x61\x32\x2a\x9d\xca\x23\xda\xf2\x01\x3a\xdc\x74\x32\xb2\x3b\xf4\x88\xcd\xde\x66\x9f\x9e\xb0\x60\x32\x73\x94\x14\xd3\x53\xed\xf4\xc1\x0b\x3b\x0d\x8b\xbb\xd5\x69\x40\xbf\x9d\x72\x57\x3d\x91\x56\x56\x4f\x6c\x74\x36\x29\x77\xf6\x8f\xed\xa7\x6c\xd4\xf6\xce\x1e\xbe\xb0\xb3\x1d\x1d\x08\x52\x91\xa0\x34\x7f\x14\x34\x68\xd3\xa8\xdd\xa5\x1a\x03\xc9\xdf\x41\x91\x47\xcf\x68\xef\x5e\x57\xb6\x57\xfb\xf1\x1a\xb4\xd6\x6a\x20\x5a\xb8\x35\x00\x9e\xeb\x17\x81\x68\x1b\x05\x92\x65\x0b\x3c\x3f\xca\x57\xc8\x56\x00\x22\x26\x81\x2d\x4d\x4f\xb3\x74\xbe\x71\xa0\xcc\x74\xd8\x60\x89\x65\x3a\xab\xdb\xa8\xc4\x28\x0c\xc4\x3f\x81\x14\x10\x17\x9b\x76\xce\x73\xba\xd8\x62\x04\x7e\x5b\x18\x81\xcf\x55\x1c\xe2\x25\x9a\x80\x5e\xe1\x16\x02\x0a\x73\x34\x27\x8b\x7a\xe3\x61\x30\xdb\x96\xd7\xac\xd7\xab\xd5\x8c\x4a\x07\x14\x08\xeb\x8f\x01\x0a\x3e\x96\x5e\x90\x28\xa3\x21\x9a\x18\x77\xf3\xe3\xec\xcd\xfd\xf1\x7d\xbb\x8d\x73\x14\x93\x7b\x72\x3b\x98\xa3\x09\x84\x34\xc6\x81\xf8\xab\x02\x4d\x81\x4d\x00\x55\x91\xac\x27\x42\xc6\x86\xb2\x8e\x5b\x68\x4c\xa7\x65\xab\x73\xbb\xac\x08\x4d\xc9\x9c\x0c\xc7\xca\x04\xea\x7e\x24\x68\x2b\x18\x6b\x63\x74\x7d\xed\xae\x1a\x43\xef\x49\xac\x08\xa6\x7a\x7d\xa6\xae\xc5\xf6\xfc\x40\xfc\x0b\x17\x5e\x2a\x72\x55\x11\xdc\x56\x5e\x69\x09\xc2\xda\xef\xbc\x60\x21\x68\x4c\xdb\x84\x0e\x47\x9e\xb2\xdb\x15\xac\xae\x95\xb8\xae\xbf\x3b\xf4\x4d\x22\xf2\xc9\x4e\x07\xbf\xee\x58\x6b\x03\x45\xab\x95\xe6\xe1\x89\x4d\x3e\x8f\xd8\xff\x46\x83\xa4\x3e\x7c\xfd\x6a\xd5\x09\x9e\xb3\x8a\x14\x8a\xad\x5e\x45\xfb\xfe\xe3\xdb\xdb\x85\xd5\x2a\x19\x96\x32\x80\xa8\xda\x50\xa6\x1a\xc4\x83\xe0\x00\x84\xbc\xfd\xe7\x45\x23\xec\xf5\xe4\x5a\x3c\xdc\x33\x52\x8f\x81\x16\x2f\x89\x3f\x87\x3d\x8c\xe4\x32\xd0\x6d\xa8\xf8\xe6\x48\x55\x1e\x57\xa8\xe1\xf0\x10\xd1\x8e\xfa\xf5\x8d\xf2\x75\x39\x88\xa1\x74\x1e\x50\x1f\x11\xae\x7e\x7d\xd3\x96\x99\x57\x51\xbb\xad\x88\xaa\xc5\x56\xab\xec\x0d\xd5\xf1\x9c\x07\x48\xd7\xa4\x16\x4b\x82\x7c\x88\x76\xd0\x21\x12\x4c\x88\x52\x3e\xc8\x82\xc2\x6e\x81\x0f\xd8\x30\x1b\x05\xc3\x8c\x88\xbf\x23\x21\x0f\x14\xa1\xdb\x22\xef\xad\x9e\x1e\x1a\xc9\x93\x28\xc9\x0c\x2a\x51\x66\x05\x79\xcb\xac\x50\x78\x40\xd7\x0a\x88\x18\xd8\xf7\x61\x2f\x38\xec\x91\xc3\xbd\xe0\x70\xaf\x10\xdf\xf6\x5f\x22\x55\x29\x14\xf3\xe1\x08\xdc\xb5\x6c\xc2\x04\x0f\xcc\x16\xd5\x88\xbf\xb5\x44\x5a\xb6\xff\xb6\x80\xb8\x15\x72\x9d\x32\x97\xb5\x4f\x7b\xc4\x09\x58\x85\x1c\x75\x9f\x14\x29\x69\xef\xcd\xfd\xfe\xcb\xfb\xa1\xee\x80\xad\x30\xef\xc3\x51\xd9\x6d\x8d\xb6\x5a\xa9\x5e\x96\xd6\x8b\xba\xa5\x19\x16\xbd\x4e\xed\x5e\xd7\x1a\xb0\x4b\x41\x3c\xc4\x06\x30\x7d\xdb\x0a\x35\xce\xbb\x72\x6c\x00\x76\xd8\x58\xff\x2e\x69\xbe\xe3\x4b\x64\xeb\x8d\xad\xdd\x75\xd1\xd2\x78\xac\xa2\x25\x49\x50\x59\x17\x88\xc9\xf2\x75\x07\x32\xe5\xed\x25\x3e\x5e\xbe\xa1\x9d\xe3\xe5\xce\x0e\x8e\xa6\x68\x09\xc7\x37\xd7\xe5\xc3\xe5\xc8\xf6\x24\x5e\x8a\xf6\xc8\xdf\x3b\x7e\x75\x52\xb4\x0e\x47\xa1\xe4\x2b\x86\x5a\x70\x8d\x97\xca\xad\xfe\x16\xb9\x75\x1e\x2e\xca\x42\xeb\x16\x23\xff\xdf\x20\x1f\xec\xbf\x44\x62\xdd\x53\x0d\xbc\x80\x06\x6e\x46\x7b\x31\x17\x61\x0c\x99\x90\x7d\x2d\xc9\x9c\x8c\x01\x0f\xc3\x36\xe6\x7a\x59\x20\x48\xa7\xb5\x56\xff\xf5\x9e\x4c\x00\x38\x50\x07\x93\x50\x91\x0e\x30\x32\x9e\x4e\x28\x29\x8d\x0d\xb3\x31\x18\xb4\x7d\x39\xe5\x24\x91\x23\x26\x37\xc2\x0a\xfe\xc6\xfe\x8b\x84\xdd\x6d\x13\x6a\x7b\x82\x96\x26\xb6\xd6\x71\xe2\x19\x62\x6d\x69\xc6\xe1\xda\xa7\x3c\xe9\x7e\xd0\xf7\xad\x49\x7f\x91\x10\xfb\x78\x27\xea\xda\xff\x7b\x9a\xee\x3f\xd1\xf4\xe7\xc8\xb3\xba\xe9\x07\x7e\x25\x40\x72\x6f\x4f\x6f\xa2\xa0\x10\x1a\x8e\xe4\xfd\xae\xd5\xbf\x9a\x70\x76\x06\x3e\x33\x2b\x53\xab\x34\xd6\xaa\x53\x60\xa4\xc8\x72\x62\x90\x01\x10\xa5\xdb\x43\x34\x45\x9c\x5a\x6e\x16\x59\xc0\x89\x89\xd8\x9a\xe3\x32\x72\xb0\xbe\xd0\x2b\x2e\x86\x97\x54\x46\x71\x23\xb1\x60\x89\xe2\xc7\x98\xa6\x28\xde\x59\x62\x32\xb5\x2c\x5a\xc6\x98\x4c\x68\xe7\x78\xf2\x7a\x7c\x3c\x69\xb7\xf1\x74\x38\x19\xd1\x22\x48\xb8\x5c\x1b\x06\x28\xac\x3d\xc1\x01\x5c\x83\x2d\xdb\x93\x91\x85\xc4\x2e\xb7\x52\x6d\x79\x25\x39\x9b\x8a\xb5\x65\xd9\x3f\x01\x8c\x84\x98\x97\x83\x97\x88\x83\x82\xd7\xf5\xb6\x50\x55\x9e\xce\x2b\x34\xb5\xcd\x23\xe7\x37\x70\xbb\x03\xff\x25\x42\xab\x5f\x39\x0d\x49\xbf\x7e\x68\x63\xc6\x05\xf9\xf8\xa4\x4b\x7a\xa3\x92\xac\x5a\x22\x9d\x10\x72\xa2\x02\x25\x75\xc3\xfa\x4e\xe5\xd0\xc0\x75\x5b\xb6\xd3\x6d\x5e\x44\x96\xd4\xa0\xb1\x6f\xb5\x67\x65\xf9\x99\x28\xc4\x84\xd2\xf6\xa5\xe4\x7e\x09\xe3\x57\x61\x73\x07\x15\x05\x97\xf4\xe4\x47\xaa\x45\xb2\x18\xb0\xd2\x83\xcc\xbd\x27\xa5\xe3\xf7\x21\x67\x0e\x79\x48\xd2\xbb\x4d\x6b\x0e\xb8\x5c\x16\x19\x40\x8d\x77\x19\xcd\x01\x50\xdd\x48\xce\x50\xc3\x76\xf5\x92\xdc\x98\x4a\xd4\x84\x44\x61\xd6\x5d\x3e\x4f\x4f\x2f\xce\x25\xfd\xb7\x28\xcd\xb0\x69\x8e\xf5\x22\xc8\x24\xcf\xef\x05\x7b\x3d\x8b\x5e\x5e\xb2\x83\x03\x9d\x24\x0a\x8f\xe1\x71\x96\xa2\xb6\x1c\x09\x37\xab\xbb\x0f\xe6\x14\x1e\x4f\xff\x7a\x71\x7e\x86\xf0\x6a\xe5\xb7\x28\xdd\xe8\x89\x78\xa9\xbc\x4e\xec\xd6\x6f\x16\x0e\xc2\x0a\xb6\xfb\x2a\x3e\x0d\x36\x04\x7d\x2d\x65\x71\x38\x6f\x6b\xa4\xbb\x64\x39\xbf\x06\x73\x0e\xbd\xa7\xae\x56\x26\xda\x3d\xc7\x83\xd2\x98\x22\xac\xe2\x9f\x48\xc8\xee\xb2\x31\x66\x95\xae\xf6\xeb\x27\x52\x23\xa2\x7e\xc9\xa2\x79\x24\x21\xcb\x48\x56\xe9\x7d\x03\xbc\x9e\xb2\xd5\x4a\x46\x63\xcf\x08\x27\x0c\xed\xf5\x31\xb6\xa1\x59\xfb\xc1\x5e\xbf\xb8\x9b\x39\x38\xa8\xab\xae\x5c\xac\x38\xd8\x14\x50\x0b\x09\xe5\x9a\x0a\x1b\xa5\x89\x69\x3b\x4e\x8b\x3a\xa7\xc9\x6d\x18\x47\x13\x48\x76\x5c\x57\x02\xd8\x23\xbe\x0d\xfa\x5c\x0e\x71\x62\x79\xff\x34\x0a\x5c\x63\x36\xc8\xac\x17\x41\xb9\x6c\x05\x80\x5e\xc0\xda\x1f\x1c\x3e\xa9\x61\xd5\x76\xe9\x0e\x79\xb8\x8e\x92\x49\xc0\x50\xbf\x2f\x8f\xa0\xfd\x7e\xd0\xef\x5b\x64\xfd\x9c\x4d\xf4\xe0\x48\x91\x75\xa7\x67\x2b\xe3\x67\x61\x7e\xaa\x04\x38\xd0\xc7\x6f\x1a\xc3\x83\xfa\xb2\x19\x89\x79\x82\xfb\x16\x14\x91\x44\x5f\x88\x54\x0e\x03\x85\xf4\xd6\xb2\xa5\xb7\xd5\xaa\xc5\xad\x68\xa8\xbe\x8c\x86\x8a\x74\x6c\x46\x59\x8d\xf1\x17\x29\x85\xe4\x01\xe8\x2f\xf0\xfd\x93\xf0\x43\xc7\x42\xb8\x2f\x7f\x68\x89\xf7\x2d\x2d\xdb\xb7\xb4\x6c\xaf\x6d\x92\x75\x6c\xfd\x52\x38\x54\xff\xb0\x53\x3f\x09\xd2\x60\x36\xab\x19\x0c\x92\xd0\xdd\x7f\xfd\x33\x7f\x65\x44\x63\x34\xfc\x57\x13\x8d\x5e\xe1\xdd\x86\x04\xf2\xd7\x24\xbd\xb7\x8f\x5d\x97\xa3\x4c\xe3\xfb\x3f\x05\x4f\x5c\xc4\xa1\x40\x8e\xd3\x96\x2e\xb1\x73\x00\x76\x4e\xf0\xd0\x1f\x29\x90\xe7\xe2\x7e\xd1\x59\x2b\xa9\xb6\x14\xd6\xcc\x3f\x7c\x1e\x7c\x61\x5f\x03\x31\xf5\x0f\xca\xda\x87\xfe\x11\x46\xce\xe7\x70\xe1\x94\x7d\x1d\xaa\x6e\x4d\x85\x25\x63\xe5\xbc\xa7\xcf\x6e\x1d\x4b\xdd\xd6\x29\xa9\x65\xcb\x26\x80\x56\x6c\x96\x1b\xc6\x4f\x12\x9e\xdd\xab\x4d\x8e\x40\x33\x30\x29\x74\x5e\xe2\x38\xe7\xdd\x56\x7d\xae\x2c\x7f\xc8\xcc\x9b\xb0\x69\xe5\x73\xb9\x9d\x76\x02\x05\x54\x05\xb7\x05\xc0\xd7\x0e\x02\xbf\x7f\x40\xfa\x07\x81\xf8\xf7\x28\xe8\xc3\x5d\xe4\xe1\xf6\x8b\x20\x58\x3c\x47\x1d\x03\xa2\x94\xff\x3b\xe3\x1a\x3d\x2b\x1c\xa7\xf9\xcc\x3a\x4a\xb5\x50\xe4\xba\x07\x7e\x87\xda\xce\xcc\x11\x3a\x03\x2e\xec\x7d\x7e\xfb\x8f\xab\x9f\xde\x7e\xfa\xf1\x44\x3a\xef\xf8\xbb\x1d\x2c\x01\x20\x45\x9b\xf9\xcc\x21\x0f\x50\x5e\x8d\x84\x20\x81\xa5\x5e\xfb\x60\x89\xca\xde\x1c\xf5\x8f\x3a\xfb\xdd\xfd\x3d\x6f\xbf\xdb\xef\xee\xf9\x7b\xfb\x03\x13\xa0\x9a\xe1\x36\xfc\xfe\x74\xd6\x0d\x32\xc4\x76\xfc\x76\x22\xfe\xc5\xaf\x12\xc4\xda\x3e\xb6\x37\x64\x72\xd4\x09\x8e\x80\x8f\x1c\x6e\xdf\xf8\xb5\x5f\x76\x98\x47\x49\xb9\xa7\x99\xeb\xfa\xbb\x19\xea\xe0\x37\x76\x07\x44\xb6\xc0\x3a\x3f\x5a\xa0\xcd\x66\xdf\xa1\x6d\x8e\x5d\xb7\xd3\xa2\x7c\xc0\x5f\x77\x06\x3b\x0c\xed\x70\x5c\xc4\xd8\xe6\x6d\x33\xce\x88\xbf\xe2\xa2\xd5\x01\xaf\x08\x12\x87\x8f\x0a\x12\xb2\xc5\x3c\xac\x6f\x31\x68\x3f\xac\x26\x8b\x7c\x75\x52\x99\x1d\x79\xdd\x34\x0e\x22\x80\xef\x22\x7f\x87\x61\xbc\xdb\xad\xb6\x6a\xef\x09\x2a\xf2\x8d\x20\xa5\x2a\x1f\x5f\xd7\x4b\x84\x99\xac\xf9\x95\x8e\xd1\x8e\xec\x18\xea\xfe\x6e\xaf\x3c\x8f\x2a\xf8\xb9\x7f\xb8\x65\x57\xb6\x04\x38\x5d\x6f\xfc\x6b\xad\x09\x15\x62\x6f\xde\xbc\xa1\x1d\x3c\xe8\xf9\x3b\x16\x09\x17\xe4\xd5\xf6\xf6\x54\xab\x3e\x9d\x7f\xec\x9e\xe0\xa0\xb7\x31\x08\xb5\x7b\x75\x69\x6a\xd8\xf7\x45\xb5\x3d\x5b\xe8\x5e\x8d\x43\x3b\x43\xf5\x03\xbe\x7d\x33\x85\x01\x3f\x3c\xb4\x15\x1d\x28\x6b\x59\x01\xfc\x0b\x0a\x80\x47\x25\x38\xca\x11\x3d\x3c\x0c\x0e\xe1\x6a\xfb\xf0\xe8\xb9\x23\x2a\x43\xe0\x07\x0c\x1d\x1e\xd9\xea\xe2\xc3\xa3\xe0\x10\x38\xcc\xd1\x96\x2d\xc7\xa6\xd8\xeb\xbc\x52\xe8\xec\x7e\x91\x56\x79\x9e\x3e\x44\x4a\xd4\xce\x8e\x8a\xf5\xbe\x71\x1a\x5f\xd2\xce\x71\xf8\x3a\x3f\xc6\xcb\xd7\x28\xa1\x96\x96\x6d\x18\xb6\xdb\x23\x8c\x07\x28\xa5\xe9\x2b\x14\xd1\xe5\x6e\x82\x5f\x45\x6d\x9f\x2c\x69\x82\x83\xb4\x4d\x93\x37\x9d\x01\x8a\x68\xb2\xbb\xc4\xaf\xa2\x20\x31\xe8\xd7\x14\x98\xd5\xc0\xdf\xed\x04\xcb\x57\xc5\x12\x4d\xab\x42\xfe\xd1\x76\x25\xbb\xee\x69\x34\x5f\xc6\x8f\x6a\xa0\x94\xa6\x6e\xaf\x45\x33\xd4\xef\x1e\xf5\x8f\xf6\x0f\xba\x47\x7b\x64\x0f\xaf\x56\xdd\x96\x01\x4e\x00\xb9\x58\x0d\x95\x28\xb2\xf6\x10\xdf\x16\x7b\x77\x5b\xb0\xec\xfd\xbd\xbd\xde\x9e\x9b\x91\x54\xfd\x32\x5d\xeb\xac\xa2\x57\x69\x1b\x21\x95\xe1\xcd\x9b\x37\xfe\x3e\x7e\x95\xb6\xa3\x57\x2a\x29\x91\x49\xd2\x90\xf2\x4d\xa7\xb4\xfa\x8c\x4c\x7c\xf4\x84\x31\x41\x31\xad\x71\x7a\xe3\x77\xea\x96\xbd\xc5\xc6\xcd\x22\xf3\x3b\x27\xd5\x01\x7e\xfa\x9c\x66\x55\xb4\x08\x60\xfb\xaa\xe3\xfb\x47\x4f\xdc\xf6\x97\x0a\xaa\xb5\xb8\xb4\x1a\xbc\xab\xf7\x9d\x6a\x6b\xb7\x33\xc5\x4a\x25\x79\x74\x93\x04\xc0\x25\xeb\x98\xdb\xd1\x76\xe6\xa6\xd7\xba\xde\xa2\x0d\x7f\x79\x9c\xba\xba\x6c\xc7\x3f\x68\xd1\x96\xa4\xe5\x28\x99\x21\x99\x84\x6d\xba\x2a\x6d\x68\xd5\x9e\x03\x43\x56\x5b\x33\xa0\x19\xee\x68\x46\x15\x20\xb9\xef\xee\x24\x68\x47\xfc\xc5\xaf\x24\x13\x3d\xd9\xed\x6e\x52\x4f\xc1\x6f\x8e\x1e\x65\x9e\xf5\x9d\x34\x4d\xdd\xd8\xc8\x0c\x78\xa6\x68\x22\x04\x90\xdb\xb1\xa4\x2a\xb5\x9c\x83\x48\xfe\xd8\xf1\x03\xc4\x77\x22\xbc\x0b\x20\x93\xed\x04\x3a\xb2\xae\x63\x8a\x47\x4f\x1c\x61\xac\x16\x65\xcb\x64\x5c\xbf\xcd\x74\x06\xc5\xfe\x12\x18\xc4\x4d\x09\x98\x59\xa6\x9f\x67\x69\x0a\x0f\xd5\xcd\xf7\x51\x59\x53\x78\xd0\xd3\x96\x63\xbe\x8a\x09\xd6\x55\x10\x8e\xd2\x4b\x6e\x49\x55\x40\x16\xf0\xb2\x93\xe2\xff\xb8\x14\xf8\x6e\x4a\xb9\x27\xe5\x37\x32\xa1\x53\x32\xa3\x53\xeb\x50\xb0\xa0\x8e\x7c\xe7\x50\x71\xec\x46\x47\xfb\x18\xcd\x30\x26\x73\xea\x88\x8f\xc5\xa1\xa0\x1a\x08\x89\xdc\xd6\x58\xab\xa5\x88\x91\x96\x2f\x83\x4d\xe5\x5a\xc1\x67\xc1\x84\x18\x24\x2c\x1b\xb2\x39\xa4\x88\xd3\xf9\x80\x43\x3b\x11\x0e\xc6\x88\x93\x1e\xc6\x76\x78\x81\x0e\x14\xd9\xef\xc9\x60\x10\xfd\x3d\xf1\x17\x0e\x6c\x87\x87\x94\x52\x94\xa9\xd0\x81\x2a\x77\x17\xe3\xd5\xca\xef\x82\x2d\xbe\x3e\x94\x9d\x85\x67\xc6\x6b\xbe\x7f\x28\xbf\xcf\xef\x22\x08\x92\x67\x7f\xeb\x63\xfc\x30\x0e\x73\xd6\xdc\xdf\x0f\xe0\xef\xd1\x61\x90\xd0\x2e\x89\x68\xff\xa8\x71\x9d\xb1\xf0\x5b\x03\x92\x0f\x8e\xe4\x6b\xdf\xf7\x83\x84\x1e\x92\x88\xee\xed\xa9\xf7\x13\x36\x0d\x97\x31\x0f\x64\xcd\x6d\xbe\x36\x7e\x34\x64\x49\xb9\xf2\xe0\x01\xc0\xcd\x0e\x99\x9a\xa0\x95\xc7\xf1\xeb\xe9\x71\xdc\x6e\x8b\xf3\x21\xca\xe9\xd2\x6e\x54\x8c\xf1\xeb\xfe\xe1\x6a\x95\xbf\x89\xac\xfe\xe8\x05\xa0\x23\x1d\xa2\x25\x04\x22\x35\xd5\xc2\x29\x75\x8a\x9c\x66\x27\xf5\x1d\xbc\x5a\x89\xdf\x9d\x6b\xf8\x39\x45\x4e\xbb\xf3\xdd\x77\x30\x7e\x98\xd6\x4c\x63\x75\x13\x7e\xed\xc3\x01\x24\x2b\x85\x97\x2a\xb9\xca\x4f\x5d\x17\x2d\x06\x61\x89\x3b\xcd\xe4\x95\xff\xf9\xd4\xd2\x56\x07\x9a\xce\x5a\x34\x41\x19\xc6\x83\x08\xb4\x6d\x13\x74\x0b\x21\x2b\x32\x32\xc5\x81\xf8\xb9\x36\x3a\xe6\x7b\x40\x12\xdd\xdb\xc7\x83\x1c\x4d\x70\xe0\x98\xc3\x07\xf9\x7c\x7a\xa6\x7e\x9d\x85\x67\xe4\xec\xe4\xe3\xdb\xcb\xd3\x9f\x4e\xae\x4e\xcf\x3e\x9c\x9e\x9d\x5e\xfe\x4c\xbe\x9c\x5f\x9c\x96\x53\x4e\xbe\x5c\x9c\x7e\x3a\x3f\x23\x5a\x84\x27\x51\x7e\x9a\x70\x76\xc3\x32\x02\xb8\xb7\x24\xca\x2f\xc2\x29\xd3\x69\xa2\xaa\x8b\xb7\x1f\x44\x01\x97\x27\x1f\x4f\xbe\x42\x8d\xa5\x04\x2b\x4c\xa6\x89\x37\x69\xca\xb4\x4d\x83\xc9\x0d\xed\x1c\x5f\x6b\xf2\xbf\x39\xbe\x69\xb7\x71\x86\x26\xe4\x9e\x5e\x0f\x6f\x46\x00\x27\x83\xa6\xe4\x1e\xbb\x6e\x2c\xfe\x92\xa5\x78\x87\x71\xc3\x5a\xa4\x74\x46\x66\x25\xcf\xa1\x29\x29\xd4\x3d\x6a\x54\xc9\xb4\x1c\xe1\x59\xaa\x6b\x88\x09\x32\xa9\x94\x60\x0a\x84\x79\xc3\x9e\x5b\xf9\x0d\xf7\x82\x83\x5e\xad\x67\x70\xb7\xb3\x5d\xf8\xd3\x1c\x53\xb7\xe4\x41\x0d\x76\x60\x44\xff\x2e\xd9\xd9\xeb\xe2\x12\x53\xec\x76\x1e\x95\xb1\xa4\x89\xa8\x9e\xad\x8d\x1a\xf4\x8b\x1a\xc6\xac\x15\x86\x05\x56\x39\xc4\x26\x2a\x6f\x59\xca\xee\xb3\xdb\x79\x5a\xe0\xb1\xea\x54\xb3\x1b\x30\x74\x70\x58\x32\xa8\x38\x0c\x0e\x64\x71\x4f\x8b\x35\x56\x71\xe2\x24\x5c\xb3\x2d\xb3\x16\x65\xeb\xca\x58\x3d\xa1\x74\x3e\x28\xf6\x54\x4b\x02\xb7\xaa\xb2\x68\x7b\xcb\x59\x0d\xbb\xae\x48\x79\x4d\xab\xa8\xc9\xeb\xda\x8e\x3e\x2d\x11\x99\xda\xab\x6b\x29\xd8\xa8\xa1\xdc\xd7\xa7\x4f\x80\x45\xd1\x95\x55\x19\xec\x3c\x51\xf6\x13\xb2\x89\xef\x77\x4a\xa7\x2d\xa5\xf5\x28\xd6\x7a\x0b\x74\xf6\xa6\xfe\xe2\x85\x3a\x7b\xf9\x7e\x27\xf0\xfd\xe2\x9a\xa7\xdb\x79\xe2\x78\xe7\xfb\xfe\xd6\x1a\x4f\x93\xda\xfa\x4e\x93\xa2\x36\x3f\xf0\x7d\xdf\xaa\xed\x25\x57\x92\x06\xd2\xbc\xd7\xd5\x77\x92\x60\x63\xe7\x7b\x1e\x4f\x3f\x44\xdf\xd9\x84\x84\x96\x12\x88\xe4\x74\xd8\x21\xe6\xff\x46\x64\xa9\x25\x07\x9d\x3d\x80\x90\x8d\x59\xc6\xc6\xbc\x19\x25\xb7\xe9\x38\x14\xed\x68\x39\x95\x10\x1a\x36\x94\xeb\x8e\x4f\x12\xca\x8f\xdb\xed\xec\xf5\xfe\x31\x4e\xda\x94\xbd\xca\x87\xd9\x88\x88\x7f\x68\xf2\x5f\x3e\x3b\x20\x09\x0d\x51\xb2\xeb\xb3\x03\x88\x7f\x61\xf7\xae\x08\x77\xb0\x4f\x32\xda\x39\xde\xd9\xe1\x6f\x68\xe7\x18\x67\x6d\x0a\xf8\xa4\x80\xa9\x17\xa2\x6c\x97\x89\x0e\x67\xff\xc5\x5e\xf9\xec\x60\x4d\xa6\xf5\x18\xa5\xfb\x84\x53\xc7\x39\xde\xd9\x61\x50\x88\x90\x63\x9c\x16\xa5\x5c\xf9\xd3\xcb\xa0\x8d\xf9\x90\x8d\xf4\xa9\x4c\x5d\x39\x40\x52\x43\x7c\xab\xef\x51\xdb\x2a\xaa\xa2\xd3\x71\xc8\xc1\x8e\x3e\xe9\xe1\x76\xa6\x03\xdc\xf1\x72\x90\x04\x1b\xdc\xac\xb8\x8d\xfd\xaf\x2e\xa5\xfe\x60\x22\x5e\xef\xf8\x24\x7b\xc5\x70\x30\x41\xec\x15\x23\x7c\xb7\x4b\x32\xbc\xb6\x6f\x99\xc0\x4c\x06\x39\x1d\xaf\xd3\xe9\x88\x46\x1f\xb2\x9d\x3d\x3d\x2b\xa8\x87\x57\x2b\xc7\x17\xc9\xde\x91\x49\xec\x40\xa2\xd7\xdd\x13\xe9\xe2\x6f\x91\xbf\x0b\xaf\x3a\xe5\xff\xfc\xee\xa1\xc8\x89\x3a\xdf\x27\xac\x73\xbd\x7f\xdd\x0b\x0f\xf6\xfb\x9d\xce\x61\x07\x5b\x45\xca\x4b\xc3\xea\x51\x25\xb5\xa1\xc9\x6c\x6a\xd6\x64\xb3\xb1\x3e\x24\xaa\x2e\x99\xa9\xcb\x6a\xb2\xc4\x64\x21\x01\xf4\xe7\xd4\x71\xc8\x2d\x75\x3a\x00\x7e\xbe\x78\xdd\x59\xad\x16\x6f\xba\x35\xf1\x67\x96\x20\x36\xce\x5a\x74\xa6\xc4\x26\xe7\x2c\x3c\x83\x8f\x66\xaf\xe9\x8e\xcf\xba\xfe\x6a\x35\x7b\x43\xc5\x0f\x2d\x57\xa9\xf9\x9c\xc9\x2f\xc1\x3a\x67\x4e\x9d\x1d\x87\xcc\xe8\xce\x0c\x93\xd9\x1b\x9f\xed\x74\x7d\x41\x18\xa9\x10\x5b\xeb\x29\xb1\x23\x96\xd6\x71\xf6\x86\xf6\x3b\x47\xfb\xc7\x98\xb7\xa9\xdf\x25\xd9\x2e\x3c\xca\xcb\x80\xec\x0d\xed\xca\x17\x22\xbd\x6b\xce\x32\x6b\x34\x7b\x35\x41\x5d\xb2\x7f\x44\x7c\x8c\x77\xf6\x8f\xf0\xeb\xce\x40\x26\xed\x70\xe2\xe3\x60\xb6\x2b\x7e\x8b\x9f\x24\x7d\x45\xfb\x7b\x9d\xde\xde\xd1\xd1\x7e\xf7\xa0\x77\xd0\xe9\x1f\xed\x13\xc4\xe9\x5e\x77\x87\xe3\x37\x1d\xd9\x9e\x18\x75\x48\x2a\x4e\x0c\x8b\xe3\xf0\x0d\x3d\x38\xc6\x31\x12\xcb\xa9\x83\x49\xb8\x43\x0f\x24\x28\x01\x9a\x20\xbf\x43\x42\x19\xbe\x81\x84\x94\xef\xf8\x22\x73\xb7\x77\x8c\xc7\xc8\x7f\xfd\xba\xdb\x83\xdc\xdd\x5e\x03\x1e\x43\x4c\x62\xe4\x8b\xdc\x63\x21\xc5\xde\xd2\x29\x52\x4e\xbd\xaa\xb2\x18\xd0\x0b\xb8\x28\x0c\x5e\xda\x2b\x61\x51\xc4\x18\xa1\x8b\x37\x9d\xc1\xbc\x2d\x84\xdd\x5b\xbd\x3a\x5e\xd3\xc5\xc0\xe9\x78\x4e\xe9\x93\x9d\x1c\xb7\x6f\x83\x5b\x13\x0b\x29\xdf\x59\xe0\xb6\xe3\x39\x6d\x9d\x24\x12\x70\x30\x6f\xdf\x6a\x2b\x01\x1d\x1a\x49\xda\x43\xf5\xba\x41\xaf\x5b\xb9\xf8\xeb\xfa\x2f\xb1\x0f\xd8\xef\xda\x3c\x12\x58\xe3\x97\x8c\x8d\xa3\x3c\x4a\x4b\x06\x78\x59\xcd\xe9\x5c\x2e\x3a\xd5\x1f\x9f\x94\xee\xde\xcb\xf9\xa3\xed\x4b\xc4\xd4\x56\x73\x2c\xd6\xd7\x05\x32\xfb\xff\xc7\xce\xbc\x85\x15\xe3\x8d\x08\x7b\x6c\xa0\x2a\xe7\x38\xd0\xbf\x88\x96\x96\xea\xc7\xef\x29\x0b\x54\x31\x22\x16\xb2\x61\x98\x6b\xad\xc8\x5e\x49\x2b\xb2\x17\x1c\xed\x41\x79\x4f\xcb\x60\xa6\xac\x71\xc6\x42\xce\x02\x38\xa6\xda\x65\x09\x89\x15\xca\x7a\x4a\x00\xd3\x36\x1e\x7b\xfb\xd8\x2a\xb6\x04\xb0\x18\xb1\x5c\x54\xa0\x24\x3c\x1b\x68\xe7\xe8\x30\x38\x02\xf1\xc7\x7f\x4a\xeb\xf4\x8c\x6a\xee\x03\x75\x5a\xdf\xac\x46\xdd\x88\x75\xfd\x2d\x52\x96\xbe\x0f\x3d\xea\x62\x2f\x4d\x3e\x64\x8c\xfd\xca\x1a\x0c\xf9\x9d\x03\x8c\x9c\x29\x3c\x3e\x71\x09\x96\x14\xd2\xa6\xeb\x72\x94\xe0\x01\x43\x19\x4a\x30\x0e\x92\xb5\xba\xef\xed\x1c\x04\x7e\xe7\x40\x5f\x3b\x76\x83\x23\x39\xf9\xdb\x6e\xcd\x7b\x4a\x7d\x01\xaa\x08\xd3\x98\x6d\xa8\x96\x75\x61\xb9\x6d\xe4\xc1\xc4\x36\xad\x81\x20\xf3\xb8\xd2\x2e\x6d\xea\x68\x0e\x28\xfe\xc1\x86\x9d\x48\x4d\x13\xce\xc2\x39\xcb\x6b\x6b\x17\xf9\x3b\x30\x1d\xb2\x9a\x4e\xe0\x77\x3a\x44\x55\x07\x15\x6c\x11\xe5\xc0\xd8\x42\x5f\x4f\xdb\x3d\xb7\x22\xee\x3e\xd1\xdf\x4a\x6f\x8b\xbe\xaa\x2b\x60\xdd\x67\x69\xd1\x00\x8d\xd9\xa2\xd5\x3f\x38\x2a\x9a\x10\xe5\x27\xdf\x39\x4b\xf2\xe8\x3a\x7e\x8a\x1e\x0a\x70\xd5\x16\x07\x2c\x55\xd4\x62\xab\x15\x03\xb0\xb9\x1a\x7a\x10\x2d\xe8\x6e\x39\x10\x96\x5b\xf0\x21\x4b\x7f\x65\xc9\xb3\x6b\x17\x95\xaf\x56\x10\x76\x53\x54\xbe\xb5\xee\x2d\x2c\xa8\x5c\xf7\x05\x0b\x63\x36\xf9\xc3\xeb\x7e\x01\xbb\x8a\x04\x27\xf1\x7d\x75\x9d\xe2\xfb\x47\x81\xef\x17\x56\xb9\xdd\xee\x16\x6e\x65\x51\xd4\x5e\xd1\x21\xb0\x37\xff\x8d\x74\xb4\x17\xf8\x9d\xbd\x3a\x3a\xea\x6e\xe1\x64\x8f\xb2\x98\x45\xc6\x6e\x59\xc2\x15\x75\x41\x94\xda\xff\x0c\xb7\xe9\xfe\x16\x06\x98\xb3\x30\xfe\x8f\x35\xe8\xe9\xc3\xa9\x99\xfc\x72\xcc\x6d\x41\x08\xdd\x0e\x04\x03\x51\xb6\x6f\x9d\xc0\xef\x5a\x27\xc5\xee\x73\xcc\x79\xfb\x7b\xa2\xe3\x0f\xeb\x46\x36\xac\x8d\xdd\x3c\xa2\xce\xaf\x0e\xc9\xa4\x85\xd0\x50\x06\xfd\x6f\xfe\x3a\x2a\xec\x83\x36\x83\x76\xd7\x9b\x0b\x29\x09\x46\x17\xe1\xb4\xa5\xcd\x0b\x6e\x3b\x23\x47\x82\x6c\x16\x36\x41\xa4\xe4\xa0\x0a\x7d\x79\xf2\xd4\xab\xc6\xeb\xa3\x94\x9e\x2a\x07\xec\x67\x9c\xab\xbb\xdb\x6f\x35\xcb\xe7\x6a\xbb\x06\x7d\xa0\x7e\xf2\x1c\xdd\x7b\x52\x44\x24\x45\xcc\x41\x0d\x7d\xb7\x7f\xa8\x1c\xd2\xba\xd2\x21\xad\xaf\x81\xef\x3a\x12\xf8\x4e\x10\xed\x54\x19\x73\x4e\x14\x10\xde\x4c\xbc\xd7\xa8\x77\xdd\x3d\x1d\x56\xa9\x2f\xe3\xa7\xdf\x0a\x12\xef\x61\x24\x81\xef\x8e\xfa\x32\xb4\x92\xef\x77\x65\x6c\x25\xbf\xbf\x2f\x83\x2b\xf9\x7e\x0f\x93\x3b\x1a\x5a\xf1\x89\x4e\x68\x68\x82\x1c\x5e\xd0\x13\xd7\x3d\xd1\x41\xa3\x73\x72\x4e\x2f\x5c\xf7\xc2\xbb\x3d\x5c\xad\x1c\x87\x7c\xa7\xa1\xf7\x25\x4b\xe7\x51\xce\xc8\x5b\x6a\x45\xe8\x5b\xa2\x13\x6c\xc3\x11\xe3\x87\x35\xf9\x46\x33\x7a\xef\x4d\x01\xf9\xb3\x62\x01\x24\x67\xe0\xbb\x97\xb1\x3c\x8d\x6f\x19\x02\x04\x75\xc4\x4b\x7a\xcb\x87\x35\x1e\x6e\x44\x89\x1e\xd1\xf2\xb6\x7d\x49\x2e\xf1\x5a\xa3\xc0\xbc\x5d\xad\x6a\xec\xea\x55\x7b\xbf\x32\x41\x9c\x51\x9a\x40\x10\x3d\xec\xba\xdc\xe3\x33\x96\xa0\x4b\xdb\xb0\x3f\x03\x3b\x0d\x7a\x6e\xfc\xba\x9c\x7d\x6f\xdf\xc1\xae\xbb\xe3\x53\x4a\x6f\x8a\xe4\x77\xb3\x2c\x9d\xb3\xdd\xfd\x7d\x47\xc7\xa5\x4f\xf0\xc3\x7a\x8d\x30\xf9\xb2\xa9\x28\xd7\xc6\x5a\xa8\x35\x06\x84\x81\x4d\xf3\x31\xc4\x29\x83\xe6\x60\xd1\xb0\x35\xf9\xa5\x06\x9d\x80\x79\x57\x09\x7e\x10\xff\xd2\x56\x47\x5b\x38\x79\x57\xe3\xc6\x6d\xd9\x99\x41\xdf\x97\x8b\x97\xb7\xe2\x1c\x42\xc5\xaf\x5c\x5d\x9e\x9b\x9c\x26\x1c\xa6\x8c\x4a\x13\x0d\xb8\x97\x7e\x0b\xb8\x37\x0d\xa3\x18\x2e\x20\xd4\xdc\x90\x18\x7e\x8b\xc1\x23\x63\xca\xbd\x49\x3a\x0f\xa3\xa4\x21\x66\x31\x1f\xa0\x68\xb5\x42\x5d\xa8\x60\xe6\xba\xa7\x42\xf8\x12\x3f\xa9\x2f\x56\x3d\xa5\x34\x1f\x64\x34\x09\xd0\xd8\x75\xc7\x1e\x4b\x38\xcb\x90\x98\xe8\x1c\x25\x98\x8c\x5d\x17\x8d\x3d\xf6\x3d\xe2\x48\x2c\x89\x56\x07\x8b\x57\x94\x02\xbf\x11\x13\x36\x88\xd1\x1d\x72\xd4\xec\xed\x8c\x67\x61\x94\x34\xc7\xf7\xe3\x98\x39\x18\x07\x28\xa5\x5f\xe0\x62\x40\x29\x0c\x32\xb2\x24\x31\x0e\x96\x22\x2d\x88\x51\xa2\x67\x65\x8a\x1f\xc6\xae\xdb\x0a\xa1\x01\xb2\xae\x18\x4d\xf1\x7a\x7d\xac\x55\x2d\x6f\xd2\x63\x1c\xa2\x0c\x20\xf6\x71\x43\x0c\x28\x1d\x8e\x88\x1c\x66\x9f\x70\xd7\x6d\xc9\xce\x7d\x95\x6e\xa0\xeb\x35\xf9\x5a\x9a\xe1\xb9\x6c\x40\xb8\x61\x40\xa9\x96\xbd\x9c\x86\x94\xbe\xd3\x91\x70\x5d\x17\x71\x7a\x5d\x06\x33\x1d\x9c\x78\x6c\x1e\x71\xe4\x2c\x93\x59\x98\x4c\x62\x36\x31\xe4\xea\x90\x88\x30\x1c\xa0\x8c\x86\x5e\x9a\x98\xf7\x99\x7e\x8f\x07\x19\x7a\x50\x43\x16\x30\x92\xb1\x30\x4f\x93\x20\x5a\x03\x42\x63\x08\x2b\x2a\x8d\x41\x63\xeb\x31\xb1\xda\xcd\x0f\xe4\xfc\xa8\x0b\x6b\xaa\xef\x9b\x99\x55\x2b\x5c\x0b\xc3\x6c\xbe\x5d\xad\x44\xeb\x07\xdd\xc0\x87\x94\x50\x7b\xca\xa5\x62\x15\x31\xa5\x50\xe1\xde\x2d\x6c\x87\xef\xea\x30\x18\xfc\x96\x26\x12\x41\x16\x48\x14\x02\x48\x1b\x63\x1d\x10\x63\x4d\x4e\x9f\x39\xac\x8d\x62\xb4\x4c\x73\xff\x22\xfb\xe1\xc0\x48\x71\x18\x29\xf3\x4e\xf5\x11\xcc\x14\x37\x07\x4a\xcc\x0e\x9c\xa4\xd7\xe4\x7d\xcd\x15\x17\xdc\x64\x71\xef\x6a\xb2\x5a\x21\xf1\x87\xb6\x3a\x04\x71\xca\xbd\xab\xbb\xd5\x8a\x63\xef\xea\x96\x32\xc2\xbd\xab\x9c\x76\xc5\x9f\x50\x66\x0b\x45\x86\xb1\x06\xc9\xc5\xe4\x17\x15\x7c\x60\x4d\xce\xea\x82\x43\x51\x1d\xf8\xb5\x95\x79\x57\x13\xfc\x90\xa9\x8a\x32\x9a\x41\x3d\x19\xac\xb6\x68\x8a\x32\xb0\x01\x35\x50\x61\x6a\x6d\x14\x81\x93\xd5\x92\x9d\x34\x23\x9e\xb3\x78\xea\xe0\x63\xc4\xe9\x17\x21\xdc\x0d\x6e\x37\x22\x70\x27\xf4\xe1\xea\x2e\xc8\xc8\xd5\x24\x68\xf9\x6b\xa8\x82\x2b\x5f\x27\x92\xa3\x33\x92\x10\x1f\x93\x1c\xbd\x87\x1f\x7a\x3d\x45\xf8\xe1\xbd\x32\xd1\x87\xb8\xdb\x62\x29\x66\x72\x14\x32\x31\x0a\x3e\xf9\x05\x65\x10\x8d\xb4\x60\x8b\xea\x03\xbb\x36\x38\xa2\xad\x1b\x9f\x57\x2b\xf4\xbd\x1c\x01\x56\x6a\x29\xbe\x13\xdd\x39\x87\x38\x57\x33\x07\x93\x29\x78\x81\xda\x16\xc9\xa2\xc1\x0c\x89\x96\x4a\x94\x29\xd9\x58\xf5\x5b\x57\x9f\x99\xea\x35\x94\xfd\x9a\xd8\xfa\x38\xed\x66\x0a\x8b\x5e\xfe\x34\xd4\x2d\x1f\x73\xe3\x73\x3a\x01\x86\x00\x3f\x6f\xcb\x79\x66\x26\x8f\xf4\xfa\xb7\x6e\xe3\x24\xa8\x2d\xfa\x6e\xe3\xa8\x09\x46\x5f\x6b\xbb\xf3\x0d\x2d\x54\xff\x8b\x58\xdf\x99\x97\x7e\xa3\x35\x06\xc7\xe2\xc8\x45\x32\x60\xd7\xb5\xbe\xe6\xae\xcb\x49\xa6\xb8\x35\x15\x4b\x46\xfe\x0c\x4a\x0d\x1f\xcb\x10\x60\x99\x76\xb0\x0d\x5d\x57\xfd\xa8\xbc\xc8\x5d\xf7\x17\xd9\x34\x08\x2b\xa8\x79\xf4\x9a\xc0\x30\xd7\xc6\x32\x12\xdf\xc1\x0e\xab\x6a\x04\x3d\x11\x49\x36\xe3\x1e\x27\xec\xae\xc9\x1b\xda\xd8\x59\x14\xab\xc0\xee\xf4\x16\x44\xc5\x24\x43\xdc\x58\x95\x2a\x56\x36\x15\xb3\x2d\x12\xd7\xe4\xde\x9b\xd2\x6f\xb5\xf1\x3d\x29\xa5\xdf\x25\x82\xad\x04\x5a\x17\x2f\x83\x4c\x62\xbf\xc7\x28\xf6\x3e\xb6\x63\xef\xef\xed\x58\xa2\x63\x3f\x28\x92\x0b\xbe\x03\xaa\x82\xdf\xed\x62\x64\x11\xa2\x4c\xf3\x31\xb2\x52\x22\x85\xe3\xa2\x65\x22\x51\xe6\x85\x2e\xaf\x20\xe1\x07\xd9\xe4\x1a\xad\xdc\xb7\x92\x79\x3d\xea\x10\xbd\xd7\x62\x49\xef\x7a\x9c\x55\x7b\x65\xd9\x28\x5d\xad\x5a\x9f\x71\xb9\x02\x18\xa9\xda\x10\x4a\x62\xcb\x11\xb5\xc0\x28\x7c\x0f\xa4\xf7\x11\x2e\x17\xd9\x42\x9f\x85\xd8\xbf\x81\x82\xf0\xdd\x93\xce\x8f\x9e\x5c\x4e\x97\x4a\xe7\x58\x54\x1c\xda\x41\xc4\x4a\x6c\x93\x08\x7a\xe6\x32\xf0\x8f\x96\x25\x22\xf8\x0d\xb2\x44\x5a\xd9\x03\xe5\x0a\x18\x8e\x94\x9c\xe2\x37\x66\x60\x24\x52\x3e\x9b\x81\x79\x04\x4d\xdb\x6d\xb2\xa4\x2d\xbf\x91\x49\x2a\x55\xca\x52\x12\xb6\xdb\xc4\xc8\x2d\xa2\xd1\x40\x7e\xa5\x02\x96\xab\x15\x5a\x02\x6f\x1d\xe6\x23\xca\xc8\xce\x4e\xb8\x5a\x25\x12\x27\x5f\x6d\x79\x26\x69\x5d\x2c\xc2\xd4\x63\xae\x1b\xa1\xd4\xbb\x2d\x11\x7f\x16\x56\x9c\x06\xb7\xf5\x1e\x7a\x1c\x55\x7a\x5c\xd7\xc1\xcd\xe6\x17\x83\x97\xc0\x36\x55\x34\x2a\x12\x8d\x4a\x50\x54\x6e\x94\x3a\xa4\x74\x03\xdf\xef\x12\xdf\xef\x05\xbe\xdf\xab\xc1\x28\x57\xb8\x6e\x06\xab\xbc\x1f\xf8\xbd\x3e\x80\x71\xf9\xfd\xe2\x90\x26\x9d\xac\x24\xba\x9b\x8d\x28\x64\xc3\x2c\xec\xef\x07\xfb\xfb\x1a\x5d\xcc\xc6\x0f\x97\x20\x51\xbd\xe0\xa8\x47\x8e\xfa\xc1\x51\x1f\x0e\x4b\x4f\x5c\xe4\x6b\xe7\xb5\x1e\x18\x34\x21\x79\xb3\xff\x95\x4d\x63\x70\x55\x7f\x58\x63\xe9\x7d\x4d\xd2\xc2\x67\x01\x12\xca\x9a\xd4\xea\xad\x52\xd9\x79\x4d\x8e\x22\x71\x54\xb1\x82\x88\x45\x11\x25\x8e\x4c\x42\x4d\x6c\x70\x95\xb4\xa4\x09\x0a\x8b\x81\x1f\x44\x28\x27\x9c\x2c\x8d\xbf\x9a\x7c\x52\x7a\x70\x39\x66\xfb\x41\xaf\x06\x73\x1d\xc6\xe0\x29\xe3\xfb\x7d\x35\x06\xbe\x64\x30\x3d\x05\xa1\x70\x70\x54\xb6\xe9\xea\xf7\x45\xc3\xea\xc6\xc8\x1c\xa3\x48\x4c\xc3\x67\xb8\x3a\x2f\x2b\xe3\x43\x84\x04\xbc\xe9\xf0\x3c\xa6\xad\x72\x69\xd5\xef\x80\x3a\xad\x0b\xea\x78\xb5\x1a\x97\x06\xda\x34\xac\xb2\xfd\x25\x10\x2e\x0b\xa9\xd0\x28\xe1\xa6\x65\x51\x6f\xc0\x02\xdb\x2d\xbe\x3b\x02\x61\x5a\xc8\xf6\xb1\xf1\x79\x57\x13\x07\xa1\x8e\xcb\x96\x5b\xea\xde\x48\x9a\x6c\x75\x02\x0b\x1e\x98\x49\x3b\x2d\xbf\x94\x86\x00\x47\x54\xbe\xe9\x6e\xbe\x21\x1c\x80\x42\xe1\x75\x6f\xcb\x6b\xc2\xa1\x8d\x90\xa7\xff\x58\x1e\xc2\x87\xbd\x91\x04\xf7\x9d\xd2\x61\xb2\x8c\xe3\xc2\x9d\x15\xd8\x9b\xc2\x1b\x98\x02\xb4\x39\xbb\x43\xb9\x4a\x60\x64\x8a\xe5\x77\x13\x79\x7e\x57\xe2\xc5\x8c\x66\x28\x45\x13\x3c\x98\x04\x55\x05\x0e\x26\x8b\xca\xba\xd1\x02\xdf\x8c\x14\x38\xd1\x29\x5a\xe0\xc1\x22\x98\x6d\x92\xb3\xe5\x8f\x55\x06\x78\x94\x8a\x2f\x7d\xb1\xd2\xdb\xa2\xaa\x3c\x3a\x28\xe3\xf5\xf4\xb4\x7f\x73\xbf\x84\xc6\xb3\xb9\x7e\x15\x01\x79\xe5\x3b\x11\xc4\xbd\x29\x7a\x58\x13\x5f\x7b\x69\xf9\x6b\x5c\x3c\x74\xd7\xd5\x55\x5e\xb9\x51\xb1\x28\x30\x23\xa9\xa2\xc1\x8c\x46\x48\x22\x6d\x25\x28\x95\x32\xa6\x96\x67\xbc\xa9\xca\x49\x5a\x1d\x25\x5d\x86\x46\x1f\xec\xaf\xb5\x1f\xa1\x34\x9d\xda\x5c\xfe\xe6\xa2\xa6\xf7\x84\x7d\x8e\xb4\xcf\x54\xe3\xa3\x15\x85\x76\x2f\x62\xc6\x6b\x7b\xc1\x35\x82\xb8\x8c\x9b\x5e\xcc\x28\xb8\xe9\xb4\xa2\x52\x28\x33\xec\xba\xb2\xa4\x26\x1b\xf2\x91\x9a\x6a\xab\xd1\xe6\xaa\xa4\xf7\x12\x5f\xd2\xde\x7e\x49\xc2\x63\x05\x8a\x4b\x56\x42\x71\x51\x7a\xb1\x44\xa3\xb4\xd0\xe1\x08\x2e\x99\x65\x80\x38\x1d\x99\x96\xe3\x75\x83\xa1\xc3\x2e\x46\x49\xa1\x2a\xdd\xf0\x53\x2c\xb0\x5e\x1a\x93\xf4\x41\xbb\xcd\x5d\x45\x6f\x4c\xdc\x5f\xc5\x20\x14\x61\x28\x71\x74\x92\x26\x10\x4b\x6a\x7d\x37\x8b\x62\x86\x5a\x08\x31\xca\x87\x06\x2b\x06\x50\xb9\x55\xe3\xcd\x96\xab\x4a\x60\xea\x63\x7f\xad\x01\xbe\x4a\x33\xa4\x62\x55\xd5\x1a\x9c\x35\xb5\x14\xba\x39\xe2\x87\xdd\xe0\x10\xf4\xc6\xbd\x2d\x7a\xe3\xa3\xa3\x8d\xe5\x23\x57\x8d\x5d\xf9\xd6\xd0\x70\x36\xb9\x63\x9b\xa8\x25\xdd\xd7\x34\xa8\x20\x81\xa7\x2c\xa1\xb4\xab\x65\x2d\xc1\x96\x2f\xb7\xea\x2d\xca\x12\xcb\xcf\x5b\xdd\x63\x59\x2d\x81\x36\x6c\xd1\x12\x1f\x55\xdd\x3d\xf7\x8f\x94\xd7\x7b\xa7\xbc\x6b\x8a\xb6\x45\x28\xda\x68\x9b\xed\xbd\x15\x91\x5c\x96\xbc\x24\x31\x19\xd7\xed\x42\x51\x60\xef\x41\x9a\x63\x86\x28\xc2\x94\xd2\xf1\x20\x1a\xe6\xa3\x00\x2d\x29\x07\xf7\xd1\x1c\xe3\x41\x82\x96\x26\xce\xe0\x60\xe9\xd9\x24\xd8\xa2\x74\xe9\xdd\x30\x3e\x80\x7f\x25\x27\x1e\xeb\xe8\x4f\x41\x8a\x62\x9a\xa1\x08\xe3\x01\x43\x31\xc9\x89\x79\xb3\x75\x98\xb4\x5d\xa6\x64\xc6\x66\xf2\x9e\x76\xe9\x29\xc6\x63\x16\xe6\xf5\x2e\x87\x72\x61\x56\x2c\x0d\xfb\x8f\xfa\xf8\x68\x6e\xa0\x36\x21\xfb\x82\x71\xb3\x62\xfb\xed\x36\xa3\x43\xd2\x4a\x84\x60\x5e\xb3\x76\xa0\x31\x4f\x63\x5d\x15\xd5\xa5\x77\xc9\xdf\xd8\x3d\x5c\xb8\x75\xf4\x85\x5b\xe7\x28\xf0\x3b\xd6\x85\x5b\xff\x09\x31\xad\xd4\xbb\x8d\x5b\xae\xcd\x3a\x37\xb2\x94\xfb\x09\xe8\xf5\xc5\x76\x93\x48\x13\xcb\x62\xaf\xe1\x1b\x7b\x4d\x75\x00\x1e\xf5\x6a\x94\x37\x4a\x8d\xcc\x75\x37\x1a\x96\x6f\x5b\xa0\x30\xff\xde\x78\xc6\xc6\xdf\xe0\xc1\x6e\x5f\x06\x91\xea\x45\x6a\xd1\xc4\x64\x73\x3b\xac\x5e\x5c\xf5\xb7\x6c\x7e\x5a\x34\x38\x52\x0e\x0d\xb0\x9c\x23\xb5\x9c\x53\xd5\x0b\x80\xf2\xf3\x55\xcc\x20\x31\xfc\x4b\x75\x8d\x2b\xc3\x73\x95\xbb\x64\xaf\xeb\x54\x2c\x67\x59\xd9\x94\x4c\xc8\x6c\x73\x65\xf7\x07\xa9\xb5\xb2\x7b\x23\xb2\xa0\x99\x37\x45\x39\x4a\x31\x89\x41\xa2\x6c\x2d\x40\x0d\xbf\x44\x13\x2a\x44\x83\xc2\x8d\x1b\x4d\x00\xfa\x6f\x86\x1b\x0b\x1a\xa2\x0e\x5e\x47\x53\x14\xa1\x45\x11\x5d\x14\xb4\xf7\x3e\xa5\x74\x61\x85\x0a\x6d\x2d\xd1\xac\xec\x29\x3e\x85\x1a\x67\x24\x96\x5f\x4c\x05\x53\x58\xad\xa6\x62\x9c\x57\x2b\xf8\x7e\x6a\xbe\x2f\x3e\x9c\x4a\x96\x42\xc7\x84\xcb\xaf\xc9\x14\xeb\x40\x56\xf2\x39\x44\x1d\x32\x36\x5b\x58\xab\xb3\x2e\x59\xf5\xb4\x44\xb3\x72\xc6\x5d\x17\xc1\x5f\xc9\x86\x66\x64\x8c\x2d\x38\x9e\x4a\xc4\xab\xad\x3c\xa7\x6c\x05\xde\xdf\x66\xf7\xab\xac\x3f\x0e\x14\xc7\x96\x6e\x28\x51\xe1\xa5\x02\x17\x65\x6a\xbe\xf7\x61\xba\xb9\xf7\x95\xdd\x9c\x7c\x5f\x90\x25\xcd\x49\x4c\x2d\xaf\x78\x32\xa6\xbb\xe1\xee\x0d\x99\xca\x3f\x13\xd0\x26\xe5\x68\x8c\x5b\x94\x8e\xe1\x24\x20\x5d\xd4\x51\x6b\xb2\x5a\x6d\x85\xb4\x98\x9a\x9b\x26\xf0\x45\x77\xf0\x88\xb6\x7c\x22\x8b\x19\xaf\x56\x39\x9a\x62\x4a\xa7\xab\x95\xb3\x1b\xee\x46\x4e\x8b\xe6\x68\x4c\x9c\xc8\x01\x6d\x08\x7e\xa8\x62\x49\x4b\xed\xaa\x10\x1e\x6c\xdf\x87\x9c\x44\x12\xcb\x6e\x6c\x41\xe9\xe8\x59\x49\x5c\x37\x72\x5d\x56\xba\x00\xa3\x34\x77\xdd\xf1\x80\x05\x19\x9a\x80\xf6\x6a\x09\x72\xdc\x78\xc0\xbc\x3c\x5d\x66\x63\x06\xce\xde\xc1\x12\xa1\x88\x96\xc0\x04\x72\x6c\x67\x89\x44\x21\xa1\x46\xb1\x0a\xc4\x29\x42\xc2\x4c\xc5\x24\xb7\x1c\x28\x66\xe5\x9b\x35\xc1\xef\x73\xc1\x6e\x73\xc2\x9e\x74\xea\xd7\x07\xb0\x21\x1b\x55\xdc\xd6\x39\x7e\x10\xa9\x54\x3a\x34\x2f\x68\x84\x96\x98\xcc\x69\xe7\x78\xa1\xaf\x5f\xe6\xc7\x78\x86\x16\xc3\x39\x5c\xbf\xc4\xa5\x01\xc8\x89\x0d\x7f\x10\x5b\x7e\x0c\x92\x1a\x1c\xd1\x01\xad\x94\x53\x49\xb8\xce\xaf\x41\x6b\x3d\x34\xda\x86\xed\xd1\xd0\x0f\xf6\xfb\xfa\x18\x03\x1e\x0d\x87\x9d\xe0\xd0\xb2\xab\xea\x3f\x07\x69\xcc\xf7\x0f\x71\x03\x98\x14\x7a\xe0\x61\x26\x86\xc7\xb4\x11\x7a\x20\x06\x6d\x9a\x66\x63\x36\x09\x78\x8b\xd2\x5d\x6f\xd7\x63\xdf\xd9\x78\x4d\x1e\xc4\x9f\x40\x5d\xf3\xfb\x87\x81\xef\x1f\x5a\xdc\x72\xc3\x4c\x09\x68\xd9\xb9\x71\x5a\xa2\x88\x1b\x6f\x1a\x87\x37\xb9\xeb\x6a\xc4\x0a\x59\xa5\x7d\x61\x0f\x19\xb6\xa0\x32\xc0\xe2\xb2\x0d\xca\x60\x28\x8a\x8e\x3f\x07\x6d\x4b\x70\xe1\x4c\x23\x53\x81\x08\xd8\x57\x67\x3a\xff\x00\x46\xa4\x67\xd6\x14\x29\xa9\xba\xe4\xb5\xa3\x09\xda\xb4\x71\x2d\x49\x8b\xb8\xe1\x12\xb8\x94\xab\xa0\x99\x01\x1f\xa6\xa3\x46\x95\x87\x25\x03\x8d\x56\xa2\xc3\x5f\xca\xb1\x40\x1c\x0f\xd3\x11\x52\xe6\xba\x19\xc6\x6b\x52\x65\x49\x29\xcd\x51\x48\xa4\xc6\x59\xde\xd0\x01\x58\x69\x81\xf7\x07\x0c\xb6\x21\x81\xac\xc0\xbe\x2c\x36\x41\xab\xf5\x27\xad\xa5\x77\x13\xa7\xd7\xa1\xd1\x45\x44\x68\x29\xf6\x8d\x5b\x88\x0b\xbc\xf4\x96\x49\x34\x4e\x27\xac\xb1\x2c\x90\x09\x69\xc7\x2c\xbd\x29\x99\xd0\xe1\x88\xcc\x68\xe7\x58\x61\xeb\xa0\x29\x95\x25\xe0\x63\xd9\xc8\x85\xae\x72\x0a\x9a\x89\xc9\x70\x36\xa2\x0b\x02\x66\xe4\x0b\xd7\x45\x76\xb9\x09\x8a\x49\x66\xa7\x60\xc1\xfe\xc9\xac\xdd\x5e\x5b\x66\xe3\xb3\x81\xa8\x2a\x98\xac\x47\x1a\xb2\xe5\x20\xf0\xfd\x22\xb2\x43\xaf\x1f\xf4\x0c\xa7\xef\x05\xfb\x3d\x20\x89\xe7\xb8\x0c\x18\x92\x30\xb8\x42\xbd\x23\xed\x33\xa0\x80\xed\x05\x91\x84\x8a\x48\x48\xae\xa0\x0f\xc3\xef\xa4\x40\x41\x24\xb1\xed\x4d\x30\xa6\xbb\xff\xfc\x13\x1a\xfe\xc9\xfd\xbf\xff\x1e\xad\xfe\x39\xf9\xe7\x64\xb0\x7a\x3d\xfc\xd7\x9b\xd1\xab\x37\x58\xb2\xfe\xca\x5b\xbc\x7b\xa3\x69\x2f\x63\x8b\x38\x1c\x33\x87\x74\x4b\xd4\x37\x21\x33\xb2\xa8\xa1\x3e\x2b\x34\xb2\xa2\xbf\x68\x93\xfe\x26\x9b\xf4\x17\x19\xcb\x58\x92\x08\x0a\x9c\xc9\x27\x35\x69\x09\x06\xb3\x7d\x9b\xf6\x74\x45\x31\x5d\xa0\x99\xa2\x3e\x22\x03\x6e\xc5\x25\xfa\x8b\x2d\xfa\x1b\x4b\xfa\x9b\x96\xe8\x8f\x4c\xea\xee\x7f\xb2\xc6\x64\xb5\x42\xc6\xf1\x20\x53\xd1\x58\x6f\xe9\x58\x51\x2a\x00\x07\xcb\x36\xdc\xd3\xb1\xa1\xd0\xb1\x4d\xa1\xc6\x25\xf1\x9a\x0e\x47\xc7\x8a\x14\x6f\x68\x88\xc6\x64\x0a\x4d\x95\x43\x43\x6f\xb0\x74\x69\x8c\xa6\xe8\x5a\x1e\xdd\x6f\x30\x69\xdd\xaa\x54\xa0\x52\xd5\x8e\x1b\x41\xbe\x70\xf3\x5f\x54\x93\xa2\x29\x49\xec\x14\x4c\xee\x31\x36\x75\x5f\x91\x3b\xea\x38\xe4\x84\x76\xc8\x05\xed\x1c\x5f\xbc\xd6\xfe\x71\xc7\x17\xed\x36\x7e\xb8\xa1\xd7\xc3\x8b\x91\x59\x4b\xe7\xa5\x9a\xc8\x77\x9a\xa3\x25\x8a\x90\x32\xdd\xc0\x64\x6a\xe0\xed\x3a\x98\xbc\x15\xcb\xee\x92\xfa\xc7\x97\xaf\x6f\x74\xa1\x97\xed\x36\x7e\x6b\xdf\x2b\x50\x4a\xd1\x15\xbd\x19\x5e\x8e\xf0\xe0\x2a\x50\xa5\x5f\x99\xe8\xb6\x37\xde\x4d\x96\x2e\x17\x70\x7f\x3b\x91\x23\xf4\x99\x0e\xcf\x47\x3a\x20\xc6\x5b\xf2\x5d\x0c\x96\xa1\x94\x6f\xae\xfb\x59\x16\xff\x4d\x16\xf1\xc5\xcc\x91\x52\xec\x29\x05\xc5\x67\xac\x04\xb9\x2f\x74\x8e\xce\xc9\x94\x7c\x27\x6f\xc9\x37\x41\x23\xdf\xdf\xd0\x13\xd7\x45\x77\x6d\x3a\x55\x77\xcc\x27\xe4\x3b\x6e\x7f\x21\x27\xf4\x7b\xfb\x5c\x77\x50\xaf\xf6\xbb\xb6\xc9\x85\xd7\xa3\x22\xbe\xe4\x1c\xd4\xa5\x2a\xb0\xa4\xd6\x76\x27\x6d\x56\x20\x2a\x44\xfa\xe7\x84\x4e\x37\x28\x3e\x75\x5d\x94\xd2\x4c\x08\xc8\x13\x3a\xc6\x64\xa6\x2f\xec\x27\xd6\x42\xcb\x74\xc9\xe3\x86\xd2\xc5\x86\x45\xf0\x09\xa9\x8e\x75\xfe\xe4\x28\xf5\xa8\xf3\x27\x07\xf4\xa5\x8e\xab\x53\x94\x76\xd6\xf9\x3f\x93\xc0\x8d\x79\x7f\x22\x95\xab\xce\x7f\x6f\xbc\xcb\xd5\x9b\xd7\x4e\x30\xa6\xe9\x30\x54\xc9\x3e\xd9\xf1\xf1\xa8\xe2\x7c\x2b\xd5\xae\xed\xb0\xa1\x22\x23\x4e\xf5\xb2\xcb\x40\x24\x7f\xa3\x62\xbb\x4f\x68\x8c\xa6\xbb\x7e\xc7\xe8\x48\x45\xde\xc9\x20\x0b\x26\xaf\xe9\x72\x50\x04\xee\x1e\x4e\x76\xfc\xd1\xc0\xf4\xd1\xc7\x81\x4c\x6a\xdb\x49\xd9\x7a\x4c\xa3\xe1\x74\xc7\x1f\xad\xab\x06\xf6\xe3\x81\xe3\x04\xe3\x75\x61\x8c\x69\xb8\x72\x7d\xec\xd8\x5a\x2e\xbd\xf7\x1c\x9f\x05\xc3\xa5\x7d\x7d\xe2\xb2\x36\xec\x9c\x85\xd9\xe6\x8e\xad\x08\xe5\xb7\xec\xd8\xd1\xcb\x76\xec\xe8\xf1\x1d\x3b\xa2\x21\x4a\xed\x1d\x3b\x2a\x71\xcc\xc8\xe2\x98\xb9\xe4\x98\xcb\x32\xc7\x14\x27\x08\xc3\x6d\x1a\x19\x8a\x09\xc4\x01\xcf\x6d\xde\xa7\x37\x6f\x21\x01\x2f\x8b\xdb\x78\x3b\x13\x89\xab\x5f\xc5\x1a\x66\x9d\x8e\x07\x3b\x7e\x30\x96\x5c\x67\x63\x8f\x55\xb6\xbd\xd5\x79\x7b\x0e\xca\xe3\x61\x49\xfb\xa0\x0c\x01\x23\xb5\xa7\x5a\x18\xa1\x66\x73\x95\xc2\x29\x1c\x95\xf7\xc1\x9b\xdc\x6c\xb1\x63\x3a\x1c\x01\x27\x22\x53\xea\xc4\x2a\x20\xdc\x84\xb6\x96\x15\xdd\x3b\xcc\x8a\x85\x4a\xe2\xdc\xc3\xc1\xc7\x10\xcb\x22\x8e\x78\x75\x7f\x5d\xca\xfd\x55\xb4\x7a\xae\xc7\x6e\x4e\x9d\xb1\x43\xa9\x13\x5e\x5f\x8f\xb5\xd3\xf3\x2e\xba\xc6\xaf\x76\xf1\xd0\x1f\xad\x56\xfd\x16\x75\x38\xcb\x79\xf1\x6e\x10\xe0\x5d\xb1\x6a\x87\xd3\x11\x00\xa1\x38\xe1\xb5\xfd\x32\x94\xdf\x4e\xd5\xb7\x5e\xf1\xce\x1b\x60\xf1\x3f\xf5\xd2\x7e\x83\x91\x4c\x7d\xe3\xaf\x56\x8e\x49\xf6\x06\x90\x38\xd8\xdc\x9f\x93\x0d\x59\xaf\xf0\x86\x91\xc6\x4c\x1a\x3b\x60\x38\x52\x78\x6f\x05\xc4\xdb\x4c\x9b\xca\x88\xe2\xcc\x16\x05\xeb\x88\x2c\xc5\xde\x13\x53\xc4\xbc\xe8\x26\x49\x33\xf6\x2e\xcc\xd9\xc0\x89\x9c\xc0\x71\x70\x1b\x31\x6f\xbe\x8c\x79\x14\x47\x09\x1b\x38\x73\x93\xa8\x76\xe9\x81\xb3\x34\x49\x39\x8f\xc6\xdf\xee\x07\xce\x3d\xa4\x90\x09\xed\x90\x85\x1d\x64\xb0\x98\xb8\x20\x7b\xf3\xe6\x4d\x87\xcc\xa9\xb5\xd8\xf4\x39\x91\xc4\x6d\xe7\xc6\xc1\xc7\x28\xa2\xb9\x6c\xf4\x9c\x80\x31\x62\x0b\xa1\x94\xce\xad\xbd\xf9\xcd\x04\xe4\x4d\xd8\xc1\x12\xc5\x5a\x27\x24\x52\xfb\x2b\x26\x11\x0c\xae\xeb\xaa\x94\xd7\xc9\x70\x3a\x72\xdd\xb1\xda\xdb\x96\x24\xd2\xec\x18\x0b\x32\x8d\x86\x9d\xd1\x70\x3a\x22\x13\x9a\x92\xa5\xf8\x92\x2e\x84\xcc\x6b\x55\x28\xd8\xaa\x2c\xca\x75\xad\x64\x83\xe6\xde\x9c\x50\x4a\x45\x25\x83\x56\x28\x72\x08\x0a\x42\x8e\x83\x57\x2b\xd5\x48\xc7\xc1\x41\xb5\xbd\x18\xcb\xda\x16\x83\xa5\xd9\x50\x16\x38\x58\xae\x03\xa7\xa3\x89\x42\x6d\xc3\x9d\x2a\x61\xf0\x1a\x1c\x53\x49\x09\x7c\x30\x1c\x69\xc9\xcf\xa0\xe0\xae\x83\x19\x79\xa9\x80\xb9\x7c\x5a\xc0\x9c\x3f\x29\x60\x72\xbd\xa7\x2f\xd0\x5c\x0b\x98\x9c\xcc\x5b\x94\x4a\xaf\xc5\xbc\xc4\x34\xf3\xd2\x31\x27\x93\x7a\x8a\x12\xd3\x9c\xd2\x04\x2d\x89\xa4\x1b\x4c\x6e\x8b\x53\x0d\xb9\xa7\x68\x59\x4b\xc5\xcb\x3a\x2a\x5e\x6e\x52\xf1\x44\x92\xef\x8d\x03\xc1\xba\xd9\x5d\x73\x8a\x26\x83\x65\xe0\xfc\x0b\x0d\x02\xa7\xbd\x54\x34\xda\x76\xb0\x43\xee\x31\xb9\xb1\xa1\x88\x2d\xf2\xe6\x82\xbc\xf5\x46\x7e\x53\x5a\x95\xb0\xb7\x96\x6f\x83\x9a\x8a\x51\x87\xe8\x9a\x8c\xf1\x60\x38\x1e\x05\xc3\x42\x8c\xbc\xa2\x1d\x72\x47\x3b\xe4\x44\x08\xbe\x77\xaf\xf5\xb7\xc7\xf8\xe1\xda\x22\xcd\xc9\xe0\x2e\x90\x77\x59\x17\xe4\x1c\x4a\x9a\x0c\xc6\x81\x36\xfc\xbb\xc3\xb6\x8c\x7c\xbe\x5a\xa1\x0b\x1a\xa3\x14\x59\x25\x88\xae\x77\x82\x3b\x8c\x89\x69\x1d\xa6\x94\x5e\xe1\x3b\x1a\xa1\x31\xb9\x23\xb7\xd8\x04\x69\x3e\x91\x34\xac\x4b\xbf\x22\xe2\xb3\x13\x0d\xff\x5d\xf4\xb8\x79\x62\x7a\xf1\x9d\xfa\xc7\xdf\x5f\x53\x2d\x12\xee\xf8\xc7\xdf\x25\x72\x88\x2a\xeb\x7c\xf8\x7d\xb4\xad\x8c\x3b\x7a\x45\x2f\x34\x4c\x48\xb3\x5a\xb9\xa8\x7a\x73\x5b\x93\xea\x8b\xc2\xa8\xa4\xe6\x28\x29\x95\x2e\x62\xcb\x93\x8a\x16\xd8\xf8\xba\x8f\x6c\x7c\x0c\x75\xfb\x07\x78\x43\x6e\xd9\xef\xab\x98\x69\x70\x87\xbc\xeb\xed\x16\x58\xa8\x69\xc9\xc8\x59\x29\x8d\x36\x55\x23\x85\x2f\x03\x18\x67\xae\x1b\xdb\xb4\x83\xce\x6e\xb8\x7b\xed\xb4\xb4\x73\xe6\x83\xd2\xac\x39\xa1\x43\x40\xbd\x12\x38\xd7\x0e\x5c\x36\x0f\xd2\x0d\x8b\x26\x46\x79\xc9\xc2\xcb\xd9\x35\x91\xf2\x0c\xeb\x75\x76\x1d\xad\xa8\x89\x92\x26\x1b\x30\xa9\xd6\x09\x5a\x89\xeb\x96\xf4\x7a\xb2\x0f\x1a\x7e\x95\xe1\xa0\xf0\x12\x0d\x8a\xee\x88\x86\x26\xe1\x9c\xb9\x6e\x5a\xa7\xea\x8c\x2c\x1b\xca\x12\x5a\x2b\xa8\x9b\xba\xfd\x03\x35\x53\x1b\x4a\x32\x98\xa9\xde\x1f\x00\xbb\x79\xc1\xf8\x7f\x10\x76\x33\x9c\xd4\x47\x56\x2a\x61\x66\x8a\x26\x60\xc2\x68\x81\x9a\xc9\x00\x35\x73\x3b\x64\x66\xb7\x1a\x2a\xac\x42\xa4\x7e\x57\x74\x2d\x4c\xc6\xb3\xb2\xc3\x62\x4d\xef\x78\xb5\x7b\x82\x92\x14\x7c\x2a\x37\x92\x7f\xf7\x28\xf0\xbb\xb2\xe6\xc7\x6e\xe0\x75\xcd\xd7\xd1\xcd\x0b\x07\x55\x7e\xe2\x88\xff\xaf\xab\xf4\x31\xb5\xa7\xa9\x34\x8e\x92\x6f\x2f\xae\x56\x7e\xb4\xb5\xe2\xc7\x5c\x9b\x4c\xc5\x69\xfc\x94\xaf\xde\x66\xbd\x8f\xd4\xf9\x92\xc0\x02\x7e\xf7\x00\xa2\x02\x69\xf8\x62\xcd\x45\x1e\xc4\x9e\xf6\x25\x8d\x12\xfe\xf6\xd1\x20\x08\x06\xcf\xfc\x20\xf0\xbb\x45\xcc\xbc\xee\xb3\x42\x5e\x15\x78\x1c\xfa\xd8\xd6\x85\x38\xa9\x8e\xe3\xb1\x64\x92\xff\x3d\xe2\xb3\x32\x84\xb7\x8f\x91\xa3\xdf\x38\xd8\x6a\xad\x4e\xdc\xee\x2a\xce\x88\xfd\x65\xba\x71\x69\xb6\x25\x50\x55\x48\x33\x2b\xee\x49\x5e\x6c\xd6\xe9\x20\x0c\x4c\x94\x13\x50\x1c\x84\xd6\xc9\x8c\xd9\xe6\x75\x5a\xd4\x59\x92\x1c\x07\xe6\x5c\xbf\xa3\x41\xb0\x48\x2e\x76\xc9\xa5\x1e\xc8\xc3\xc0\xef\x56\xe2\x98\x90\x7d\x3f\xd8\xf7\xc5\xb0\x3e\x1a\xf0\x49\xd3\xd3\x34\xfa\xfe\xa4\xf3\xe7\x06\x41\x71\xbe\x9d\xa2\xaa\x91\x97\xea\x6b\x4d\x13\x3e\x4e\xe3\xdf\xc0\x30\xc4\x97\x0e\x71\xd4\xc7\x75\x4c\x63\xff\xf1\x3d\xb5\x68\x40\x1e\x3d\xe9\x00\xbe\xb5\x7e\xf9\x6d\x6d\xf5\x4f\x5d\x46\xf7\x20\x9a\x9e\x42\x8b\x9b\x66\xe9\xfc\x9d\xc2\x31\x23\x51\x29\x55\xaf\x29\xdb\xac\xb0\xd5\x8a\x5c\xd7\x6f\x19\xfd\x94\x4d\xd6\xa5\x8f\x4a\xb4\x6d\x70\x37\x48\x24\xcd\x8c\x37\x23\x7a\xd0\xce\x71\xfa\x26\x3c\x86\xfb\x57\x4e\xdb\x65\x0c\x51\x92\x21\x4e\x7c\xdf\xef\xfb\xbe\x8f\xad\x00\xb1\x16\x90\x08\x6f\x3b\xcd\x28\x6f\x26\x29\x6f\x86\x4d\x89\x8a\x2e\x98\x42\x73\x21\x1a\xe3\xe0\x46\xa4\xec\x9a\x5e\xef\xef\xed\xf5\xf6\x07\x62\x64\x83\x04\xed\xed\x75\x8f\xf6\xdb\x08\xf1\x1d\x00\xea\xdc\xc7\x6f\xde\xf8\x1d\x4c\xf8\x7f\xf9\x9d\x6e\xbf\xbd\xb7\xdf\xeb\x76\xb0\xd1\xe6\x45\x10\xce\x09\x49\xa2\xb3\x62\x5d\x18\x36\xf2\xb2\xe0\x4a\xdd\x43\xbc\xc9\x2f\xa2\x64\x1c\x2f\x27\x10\xa4\xaa\x18\x58\x9d\x58\xc3\xda\x5a\xad\xff\xaf\x09\x6a\x61\x7d\x6c\xbc\xe5\x5e\x12\xce\xd0\x5a\xd0\xd5\x85\xfc\x9c\x6d\x30\xe2\x61\x1c\x8d\x9f\xf2\x31\xde\xa0\xe7\xe8\x91\x95\xfc\xac\xfb\x3f\xd8\x13\x3a\xb8\x21\xe3\x9a\x29\x41\xd4\xd9\x74\x96\xb5\x2c\xe2\x0c\xdf\x2b\xcc\xe2\xea\x42\x9a\x99\x00\x66\x85\xb9\x5c\x64\x82\xff\xbc\x31\xd8\xb0\x83\x7a\xeb\xb6\x00\x09\x09\x34\x23\x89\xa9\xa5\x6d\x02\x9f\x91\x0d\x73\x36\x2d\x10\xaa\xad\x09\x82\x90\xc1\x18\x3c\x67\x4f\x7e\x86\x2c\x50\x2f\xf9\xcc\x32\x36\xdd\xc2\x45\x9e\x72\x0d\x2e\x62\x83\x1d\x19\x2b\x1f\x43\xb1\x59\x78\x57\xcf\x00\xc4\xf1\xd6\xcb\xc2\x3b\x38\x7b\x5b\x7b\x55\x2d\x4b\x18\x8e\x48\x4e\x3b\xc7\xd1\x9b\xfc\x18\x2b\xaf\x18\x7d\x2c\x1e\xe6\x00\x2d\x4c\xf2\xd7\xa9\xeb\x96\xdf\x15\xd4\x9d\x8f\x0a\x8b\xfd\x70\x63\xf1\xd6\x87\xe0\xea\x56\xc3\x05\x55\x8d\x99\x6c\xb1\x23\x63\x0b\x16\xf2\x40\x42\x72\x95\x90\x6d\x4c\x71\x8f\x46\xb9\xd1\xf3\x97\xcf\xc3\xf8\x29\x5f\xf8\x8d\xf9\x53\x1f\x6d\x5b\x3c\x2f\x0a\x5c\x53\x23\xd3\xe4\x3c\xcc\xf8\x16\xa9\xa6\x78\x57\xe2\x53\x45\xf2\xa3\x92\x4d\xe9\xeb\x94\x2a\xcc\x6f\x21\x99\x3c\x53\xcc\x31\x64\x83\x49\xf8\xa8\x0c\x13\x92\xb4\x90\x61\x52\x92\xb6\x43\xfd\x25\xa5\x34\x7c\x96\x0c\x53\x0d\x6b\x53\x3f\x7f\x3c\x8b\xbe\x3d\xb5\x95\x6f\x4e\xa0\xfa\x6a\xeb\x0c\x3e\x16\x73\xd0\x54\xbd\xbc\x7e\x71\xbd\xcb\x47\xe4\xf1\x6a\xdc\x9c\x2d\x95\xbe\x34\x7a\x83\xfc\x64\x6b\xa5\x4f\xec\x2f\xbd\x2e\x46\x12\xe6\xf6\x65\xb5\xf6\x4c\x5d\x12\x5e\x13\xea\x7a\x56\xf8\xba\x0a\xc8\xef\xde\x7e\xd9\xb2\xd5\xf7\x55\x78\xdb\xa3\x2e\xf6\xfe\x76\xf2\x33\x28\xfb\xf7\x15\xa0\x80\xdf\xed\x4b\x44\x01\xbf\xdb\x95\x90\x02\x10\x4f\x5d\x07\x65\x07\x50\x01\x88\x2f\x3f\x83\x1f\x87\x12\x56\x60\xef\x48\xa2\x0a\x1c\x1c\x60\x00\x14\xe8\xed\x4b\x38\x81\x83\x23\x05\x27\xd0\xef\x28\x38\x01\xc1\x79\xaf\x34\xd2\xf0\x9d\x36\xcc\x3b\x51\xee\x2b\x17\x54\x22\xe4\x90\x73\x65\xd3\xf7\x1d\x12\xba\x98\xbc\x55\xc6\x7e\x97\x0a\xb1\x84\x7c\xa3\xe7\x80\x11\xf0\xd6\x9b\x92\x2f\xf4\xc2\x9b\x92\x5f\x28\xd7\xf1\xde\xbf\x52\xee\xfd\xf5\xe2\xfc\x8c\xbc\xa3\x5f\x5d\xf7\xab\x27\xc1\x82\xa3\xe9\x3d\x39\xa5\x53\xe4\x5c\xcd\xa2\xc9\x84\x25\x0e\x26\xef\xc5\x63\x39\x0e\xcf\x19\x7d\x58\x7b\x0b\x65\x08\x7d\x9a\x9f\x48\xab\xec\xeb\x98\x91\x4f\x74\x89\x9c\x1c\x6a\xd8\xc9\xd8\x4d\x94\xf3\xec\xde\xc1\xe4\x43\x91\x2c\x44\x9f\x5f\xc5\x63\xba\xd8\x29\x52\x7e\xa4\x1b\x88\x18\x3f\xd4\xdd\xbd\xff\xe2\xba\xad\xd6\x77\x6f\x4a\xfe\x42\xb9\xf7\x3f\xf2\x1b\xf2\x13\x6d\xfd\x65\xb5\x6a\xfd\xa5\xf8\xb8\xfc\x04\x11\xa4\xdf\xcd\xa2\x78\x42\xfe\x4d\x13\xd7\xcd\xeb\x94\x37\x07\x2d\x7a\x82\x3e\xa3\x87\x35\xec\x9c\x0f\xf5\x66\x58\x9f\x8b\xbd\x55\xed\xf0\x07\x6b\xec\x09\x4e\x23\xfe\xc5\xb8\xa4\xcc\x2e\xf4\xd1\xdf\xd0\x8f\x84\xe3\x46\x62\x1c\x03\x7e\x1c\xf2\x11\xf9\xac\x32\x91\xc4\x75\x59\x8b\xd2\x1f\x5d\xf7\xb3\xc8\x48\x12\xbc\x0e\x3e\x93\xbf\xd7\xf8\x4c\x7f\x18\xb2\x11\x3d\x41\xbf\x58\x7e\x27\x06\xb8\xce\xbb\xfa\x46\x19\xe1\x6b\xf2\x27\xfa\x83\xeb\xaa\xd1\xb6\x46\xce\xd3\x61\xed\x07\x9b\x4b\x6c\x23\x37\x5b\xd7\x42\xa2\xda\x2a\xb3\x5f\xd6\xe4\x63\x19\x3d\x31\x29\x79\x87\xfe\xe8\xba\x1f\xd1\xaf\x90\x4c\x6e\x41\x16\xa3\x57\xd2\x59\x9b\xdc\xa2\x04\x93\x0c\x7d\x20\x1c\x0f\x50\xe2\x31\x43\x3f\x00\x7d\x4e\x4e\xb1\xeb\xb2\xe1\xe9\x68\xc8\x47\xae\x8b\xd4\x2f\x2a\xa3\x05\x9f\xa0\xc4\xb8\x01\x5c\xc7\x2c\xb8\x43\x1d\x88\x10\x08\xde\xd2\xf0\xed\x6a\x25\x06\xf6\x94\xdc\x21\x9f\x3c\x80\xa3\xbd\x2e\xa0\x83\xc9\xbf\x55\x43\x71\xf0\x59\xfd\x5a\x93\x9f\xab\x36\x86\x62\xb3\x31\xd8\x98\x24\xa1\x0b\xc4\xe9\x0d\xa0\x23\x47\xb4\x43\x52\xaa\x03\x43\x1e\xa7\x6f\xa2\x63\xfc\x11\x09\x41\x32\x19\x46\xe2\x20\xc3\x87\x59\x11\x40\x92\xad\xc9\xdf\x6a\x26\xf1\xcc\xbe\xc6\xa0\x57\x08\x82\xdb\x15\x0e\x25\xca\x9f\xf4\x47\xd7\x15\x23\xc4\x24\x32\xf1\xaf\x84\x61\x30\xb5\x44\x1c\x50\xeb\x94\xbe\x03\x7e\x7f\x80\x1f\x2a\x4d\x8c\x1d\x04\xef\x3b\x1d\x0d\xd9\x08\xaf\x56\x1c\xaf\xc9\xff\x6c\x62\x5e\x30\x7a\x53\x9e\x13\xa0\x40\x55\x1e\x87\xf2\x7e\x25\x1c\x17\x14\xcc\x2c\xa7\x97\xa4\x94\xaf\x34\x61\xab\x55\x69\x42\x61\xd0\x93\xf5\x9a\xfc\xb5\x1e\xa8\x91\x24\xf4\x0b\x12\x2d\xc1\xfa\xe8\xd8\x39\x4e\x2c\xf8\x08\xa8\x85\x26\x12\x42\x62\xb5\xe2\x94\x9e\xc2\xbf\xe1\x6a\xa5\x4f\x7c\x85\x60\xb0\x26\xff\xd8\x5a\x0b\x50\x24\x89\xe8\x17\x94\x0c\x7e\x0d\x64\x8d\xa9\xa8\x51\x9c\x4c\xf5\x69\x57\x1c\x50\x65\xc7\x68\x24\x83\x5b\xac\x56\x09\x8c\xff\x8f\xd0\xd7\x54\x56\xf9\x61\xc8\x8b\x49\x4e\xd7\x8d\x1f\x56\x2b\x94\x22\xf4\x8b\xed\x7f\xad\x9c\x65\x4a\x0b\x46\x9d\x6a\x0d\x3a\x0c\x72\x24\x2f\x2e\x0e\xb6\x96\x89\x66\xcb\x91\x9a\x79\x46\xc7\x9b\x72\x53\xbd\x92\x96\x58\xde\xf7\x89\x3c\x0d\x49\x42\x52\xa6\xc7\xbf\x12\x58\x76\x86\x4e\xe4\xcf\xe1\xe9\x08\xa8\x0c\x15\x64\x03\x6b\xed\xdf\x5a\xa0\x13\x0b\x29\xc1\x06\x0b\xa6\x99\xb8\xee\x4f\xae\xfb\x6f\xf4\x63\x9d\xf9\x6a\xce\x78\xc0\xd7\x98\xfc\x1d\x3c\xc1\x9f\x0b\x70\xa4\xdc\x81\xbe\x89\xe5\x7a\xee\x4d\xe9\xff\x90\xb7\xde\x94\x7e\x24\xda\x6e\x59\x6c\x5e\xf4\xaf\xf0\xb8\x2f\x1e\xff\x46\xbe\x7b\x53\xfa\x0f\xc1\x39\x5b\x80\xfc\xe3\xba\x29\xfa\x91\x38\x75\x7b\x92\x43\xfe\x06\x04\x3e\xf1\xa6\x75\x8e\xec\x7f\x47\x53\xf0\x90\xc1\x24\x42\x91\xf7\xb1\x1d\x79\x7f\x6f\x47\xde\x87\x57\xad\x1f\xc8\x83\x9c\x9e\xe0\x97\x75\xc1\x0f\xfe\x97\xda\xf1\xce\x48\x94\xbf\x83\x2b\x87\x8b\x45\xc6\xc2\x09\x6c\x81\x9a\xcd\x12\xb0\xcd\x24\xca\x4a\x8e\x48\xc3\x0f\xa2\xe0\x76\x08\x5c\x84\x12\x6b\x5b\x25\x16\x80\x14\x59\x26\xf9\x38\x5d\x88\xe2\xf2\x12\x86\x39\x63\xb4\x73\xfc\xbf\x9a\x0a\x18\x3b\xc6\x53\xf4\xbf\x43\x26\xc3\xd6\x1a\x72\x67\xf4\x12\x4d\xbd\x9c\xa7\x19\xc3\x24\x13\x9f\x70\x7d\x30\x7d\x93\xb1\x63\x3c\x43\x9c\x0d\x33\xf9\x11\xf8\xed\xe8\x0e\x2b\x7a\x74\x88\x58\x3a\xf5\x8a\xd6\x4f\x84\xb5\xa9\xe3\xe0\xc1\xa7\x21\x1b\x05\xe2\x1f\xfa\x8b\x98\x6a\xf2\x8d\xdd\x7f\xa8\x7c\x14\x4d\x51\xeb\x4f\x62\x70\xab\x74\xcf\x6c\x65\x8e\xdc\x7a\x04\xb9\x9b\x0e\x34\xa3\xa4\xf9\x09\x47\x53\xf4\x49\xf0\x6d\x2b\xf6\x32\x5f\x93\x65\xce\x2e\x18\xe7\x36\x80\x36\x7e\xf8\x89\xb6\x3a\xf2\x55\x34\x5f\xd8\x6e\x2e\xf0\xca\x5f\xab\xd9\x2d\x3a\x5a\x45\xb2\x7c\xfc\x12\x9a\x0f\x4e\x10\xc3\xc1\xcf\xe8\x44\x3a\xff\xad\x49\xc5\xe1\xf1\x23\xd9\x80\xae\xfc\x99\x6c\xf5\x17\xfb\x1f\x52\x03\x86\x18\xfc\xb5\x92\x2a\xe7\x22\x0f\xfe\xb1\x96\x8c\x20\x61\xb4\x2c\xb8\x7c\xf7\xa6\x08\x76\x3e\x6b\x12\x13\x66\xf5\xad\xbe\xbc\x9a\x69\x15\x25\x5d\x2b\x3f\x31\xf2\xd5\x75\x8b\xf2\x50\xeb\x87\xd5\x2a\xaf\xb9\x7b\xfb\x05\x99\x7b\x37\xe9\x59\xeb\xb4\xe8\x3b\x24\xb7\x1c\xe7\x61\x0d\x4f\x0f\x61\xc0\xd6\xd6\xb3\x6c\x98\x5c\x6d\x18\x13\x47\x88\x9f\x70\xac\x54\x92\xe7\x16\x9d\xa2\xd8\x82\x87\x6c\x44\x22\xea\x1f\x6f\x70\xc2\xe8\x58\xbb\x34\x16\x1c\x31\x92\x94\x3d\x45\x19\x15\x7b\x87\x3f\x22\xe8\x1e\x09\xfe\x6d\xae\xfc\x61\x57\xfd\x93\x65\x4e\x32\x87\xf7\x25\x38\x61\xb5\x51\xd6\x19\x80\x02\xce\x50\x56\xb1\x46\xc0\xa4\xf5\x27\x21\x24\x18\x52\xc5\x44\xd4\x4d\x39\x79\xa7\x2c\x34\xbe\x4a\xf8\x4c\x62\x89\x6f\xc3\xf7\x23\x1d\xbd\xd2\x4a\x25\xef\xed\x3c\x3a\x88\x03\x26\x31\xfa\xc5\xac\x51\xf1\x24\x0e\xd6\x3a\x42\x8a\x60\x71\x31\x52\x32\xbd\x1a\x5a\x05\x0f\x67\x30\x34\x95\xed\x7e\xa7\x1b\xf8\x9d\x2e\x29\xe0\x08\xf7\x03\xbf\xb3\x6f\x7c\x50\x0a\xdb\x7e\x8d\x64\xd0\x0f\xfc\x6e\xbf\x88\x6a\x5e\x09\xe8\xe9\xf7\xf7\x02\xbf\xbf\x47\xfc\xfe\x61\xe0\xf7\xc5\xfb\xa3\xc0\xef\x1f\x15\x48\x07\xd6\xa5\xe7\xde\x51\xb0\x77\x54\xe3\xe6\xac\x7c\x5d\x3a\xc1\x41\x87\x1c\x1c\x04\x07\x1a\xf1\x4f\x21\x1d\x74\x83\xa3\x6e\x7d\x3c\x84\x6a\x3c\xcf\x27\xe2\xb1\xf6\xf5\xed\x69\xaf\x0c\x00\x00\x4a\xf3\x50\x6b\x4a\x72\x75\x2e\x5b\xaa\xf8\x07\x10\xe3\xf6\x87\xe5\x74\xca\x32\x75\xf0\xdb\x13\x07\xbf\xa4\xf4\x62\x4a\x13\xef\x7d\xc8\xc3\x9f\x22\x76\x47\x26\x34\xf3\xde\xfe\xf0\x93\xeb\x2e\xbd\x28\x87\x94\x19\x1d\x5b\x53\x0a\x2a\x0b\xf0\x84\xfa\xe9\xf4\xe4\xef\x06\x21\xef\xef\x52\x0b\xbf\x6c\x51\x3a\xc6\xe4\xc1\x2a\x3e\x18\xaf\x95\x3f\xac\x44\x62\xc8\xbc\x77\xe7\x67\x17\x97\x5f\x55\x48\x60\x99\x09\xbc\xfd\x44\x6d\x75\x8b\x7c\xe2\xba\x13\xc0\x48\xcb\x21\xca\xc0\x42\xbb\x1d\x12\xad\xfe\xf9\xf1\xd1\x18\x47\xad\x84\xdd\x35\xc7\xa8\x8b\x8d\xcd\xa7\x92\x3a\xbc\xeb\x7b\xce\x3e\x15\x51\xb4\xca\xed\xa9\x0b\x89\x6d\x2c\xbd\x5a\x94\xce\x5c\xb7\x60\xb3\x15\xe3\xae\x48\x99\xc7\xd8\xe2\x38\x55\x89\x56\xad\x24\x81\xa8\x37\x99\x98\xb7\x14\x55\x62\x69\x67\x80\x30\xc1\xee\x90\x5a\xa9\x63\x8c\x51\x88\xf2\x9d\x04\x63\xe5\xd1\x34\x55\xb5\x2c\xd4\x93\xf2\xa2\x49\x5e\xe7\xc7\x18\xfc\xb6\x7e\x8c\x12\x7e\x88\xe6\xed\x36\x99\x78\x37\xfa\x31\x69\xb7\x0b\xe5\xe3\x72\xbd\x2e\x20\x6c\xec\xfe\x5b\x61\x91\x2d\xdb\x8d\x72\x08\x6d\xbf\xdf\x0b\xfc\x7e\x8f\xf8\xfd\x7e\xe0\xf7\xfb\xdb\xe0\x2d\x0a\xe4\xd3\xa7\xe2\xbe\x16\x84\xd4\x92\x24\x2f\x28\x91\x3c\x68\xda\x0c\x24\xf9\x1b\x5a\x55\xce\xf5\xe5\x46\x14\xfa\xcd\xa3\x0d\x38\xdf\x7e\x17\x23\x07\x50\x21\x7b\x5d\x87\xf4\x9f\xd0\x4b\x0b\xf6\x5d\xd5\xdb\xc8\x44\xad\xbb\xe9\x77\x03\xbf\x0f\xba\x9b\x6a\x30\xd5\x52\x65\xfb\x7d\x87\x1c\xfe\x91\x95\xf9\xf5\x95\x9d\x26\xdc\xdf\xaf\x18\x5d\xfe\xde\xaa\x36\x63\x67\xeb\xaa\xfe\xf0\x21\xec\x6d\xad\xea\xb0\x62\x75\xfc\x7b\x6b\xea\xd7\xd7\x24\xd6\xc7\x1f\x3e\x80\x7b\xdb\xeb\xfa\xc3\x47\x70\x7f\x7b\x5d\x7f\xf4\x10\x6e\x62\x65\xff\x61\x55\x99\x28\xb5\x45\x6d\x87\x4f\x5b\x18\x49\x3f\xff\x43\xb9\x39\xf6\x3b\x18\xd5\x28\x44\x61\x7b\x3c\xda\x53\xe8\xaa\x87\x52\x17\x2a\xb6\xcb\xb1\xb2\x4b\x92\xaa\x50\xf1\x63\x42\x5b\x89\xf7\x76\x2c\xce\x37\xff\x90\xd2\x9f\xeb\x3a\xa5\x67\x27\x4a\x9a\x09\x99\xd1\x50\xb0\xd6\xbf\xb3\xf0\x1b\x59\xd4\xb9\xb5\x93\x39\x5d\x7a\xcb\x29\x9c\x69\x2a\x71\xcf\xfe\x30\x0b\x27\x72\x4f\x37\x22\x0b\x47\x53\x14\x0b\x31\x51\x31\xd9\x59\x71\x0f\xd1\x92\x7b\xcc\x1c\x8d\x95\x4e\x50\x34\x1e\x02\x06\x43\xd0\x7a\xf0\x07\x1d\x18\xd4\x8b\x91\x41\x18\xd8\x1e\x7b\x78\x09\x76\x54\x1b\xc5\x11\x15\x77\xf8\x9a\x6e\x98\x7b\xe9\x3c\xe4\x96\xdc\x93\x25\x69\x75\xc4\xa4\x37\xa6\xae\x3b\x71\x5d\x94\x23\x94\x49\x14\x84\x77\x85\x56\x01\xdd\x96\x1a\x5a\x48\x9c\xf7\x98\x84\xde\xd9\xc9\xc9\x7b\xda\xea\x90\x08\x0d\x1d\xa9\xa9\x74\x88\x38\xee\x3a\xc4\xb9\x61\x60\x95\xc0\xb8\x33\xda\xc4\x0d\xe3\xf4\xba\x14\xdf\x9a\x0f\xd9\xa8\x91\x22\x4e\x98\x95\x97\x93\x48\x8d\x27\x17\xd2\xf7\x42\xc8\xca\xea\xc6\x76\x2a\x44\x6f\xf9\x0b\x36\xe1\x4c\x9e\x78\x52\x75\x29\x3b\x1d\xb2\x11\x7c\xae\x4f\x1c\xa2\x19\x94\x32\xe9\x6b\x9b\xea\xfb\x7b\x2b\xa8\x3a\xe1\x12\x71\x4c\x9c\x33\x6c\x80\x64\x6d\x7f\xd6\x09\xfa\x1d\xd2\x3f\x0c\xfa\x87\xd2\x0a\xad\x0c\xb6\x23\xa5\x4d\x1d\x17\xa1\x1a\xb8\xb5\x1e\x10\xfa\x50\x4b\x98\xe0\xea\x61\x66\xe7\xff\x2f\x06\x79\x80\xe6\x83\x32\x8b\x90\x94\x51\x9e\xf4\x3b\x27\x9c\xb4\xfc\x6a\x10\xeb\x62\x2c\x44\x9f\xab\x21\x66\x1f\x8f\xcd\xb1\xa7\x85\xea\x8e\x76\x46\x54\xc8\x02\x3d\x15\x2a\xb1\xdf\x33\x77\xab\x20\x1d\x39\xe4\x61\x1a\x87\xfc\x73\xb8\xa8\x09\x3a\x93\x03\x24\x98\x6d\xd9\xd9\x4c\xa5\xaa\x32\x42\x4b\xcb\xf8\x29\x44\x4b\x22\x5a\x80\x72\xb2\x24\x4b\xc2\x49\x87\xf8\xc4\xb2\x87\x18\xfa\x23\x4c\x72\x29\x99\xf5\x7a\x18\x39\xaa\x4a\x29\x94\x55\xbd\x7d\x24\x14\x53\x2f\xe8\xf5\x48\xbf\x17\xf4\x7b\x5a\x00\xdb\x0b\xf6\x81\x0a\xaa\xa1\x68\x1f\xc7\xea\x39\x92\x26\x0b\x95\x3e\x3f\x62\xe7\x61\x4c\xd8\x5e\x60\xcf\xa1\xfb\x55\x98\x85\xac\xc9\x83\xec\x42\xef\x28\xb0\xef\xbc\x1f\x89\x27\xab\x10\x5e\x0e\x8b\x06\xdb\xd8\xe9\x2c\xe1\x59\xb4\xad\xc1\xc6\xdc\xae\x73\x18\xf8\x1d\xcb\xb7\xfa\x91\xa8\xb2\xaa\x3a\x7d\x1b\xdd\x53\x3b\xcd\x91\x22\x98\x3d\x7f\xb3\x0d\xdb\xd4\x28\xf9\x16\x75\x41\x48\x72\x9a\x48\xcf\xa4\x08\xa2\x71\x66\x28\x17\x7b\xd3\xc3\x9a\x4c\x69\xe7\x38\xd6\xe3\x3a\x3d\xc6\xe6\x14\x82\x42\xba\x44\x39\xe1\x34\x1e\x4e\xc1\xf0\xc0\x75\x53\x34\x96\x90\x67\xaa\xbf\xe3\x75\x09\xcb\x44\x1f\x86\xf7\xfc\x60\xcf\xaf\xa2\xfa\x3c\x12\x0d\xd7\x1a\xef\x9a\xbe\xc2\x49\xff\xc5\xc3\xfd\x12\x18\xa9\x3d\xe5\x39\xac\xf7\x78\x38\xca\xa6\x0a\xbc\xdc\x58\x02\x7c\xb5\x71\x28\xa7\x51\x12\xc6\xf1\x7d\xcd\x9d\x7f\xa4\xa0\x5f\x35\x48\xe7\x6a\x95\xe8\x9f\x62\xe1\xd7\xa8\x4e\x58\xc3\x56\xf8\x02\x0a\x63\x58\xdc\x47\x15\xe8\x49\xb0\x79\x20\xbc\x81\x33\x59\x8c\x87\xe0\xee\x01\x23\x2f\xfc\x5a\x6a\x22\xd5\xc7\x7a\x40\x35\x92\xa3\x3a\xa0\x49\x1c\xc6\x4a\x84\xc2\x6a\xcc\xe0\x27\xcc\x2d\xb4\x7f\xb6\x8c\x1e\xbb\xfb\x93\xc4\x7c\xff\xe7\xae\xdf\xf9\xa7\xf7\xcf\x49\x1b\xc1\xbf\x78\x80\x9a\x9f\xd3\xeb\x28\x66\xff\xdc\xfd\xe7\x5d\x1b\x0f\x9a\x17\xe1\x34\xcc\xa2\x7f\xee\xee\x4a\x5f\x9b\xc4\xb6\x20\x8b\x2c\x4b\x8c\x45\x38\x39\x49\xea\x8d\xb1\x5f\xc6\x47\xe0\xee\x4c\x59\xb6\x74\x02\xbf\xd7\x31\x38\x95\x05\x79\xbd\x48\xc3\xf2\xff\xa0\xe7\x17\x3c\xdc\x16\xea\xfe\x85\x7d\xef\x3c\xd9\xf7\xc7\xac\x97\x6d\xc3\x85\x4f\x6c\xfa\xd2\x8d\x1e\x06\x9e\xc0\xd7\xd0\x23\xa7\x62\xc8\xf0\x68\xb4\x62\xbb\xee\xaf\xd1\xcd\xec\xa5\x95\x77\x8b\xca\x4f\x92\x49\xa5\xea\x5e\x35\xc8\xa8\x34\x63\x40\x4e\x98\xdf\x27\xe3\x53\x75\xbf\x21\x3f\x92\x3a\x3f\xf8\xa8\xb2\x43\x16\x36\x61\x0c\xf9\xfb\xdd\x22\x92\x8a\xf2\x89\xd5\x26\x17\x87\x0a\x4c\x4c\xa1\xd2\x1c\xee\x2b\xd7\x4a\xc1\xa9\x96\x34\x47\x4e\x64\x2a\x24\xb1\x78\x2e\x45\xda\x20\x63\x1a\x4a\x35\x1c\x99\xd2\x87\x77\x17\x17\x5f\x97\x31\xfb\x14\xe5\x3c\x68\x75\xc8\xbb\x8b\x8b\x0b\x7e\x1f\xb3\xf7\x6c\x1c\x87\x19\xc4\xde\x0a\x5a\xbe\x48\xfe\x49\x30\x5a\x99\xcd\x27\xef\xe2\x88\x25\xfc\x2b\x1b\x73\x9d\xf2\xfe\xfc\x73\xe5\x51\x56\x69\x25\x5c\xa6\xdf\x58\xa2\x2b\x7a\x1f\xf2\xf0\x32\x0b\x93\x7c\xca\xb2\x53\xce\xe6\x3a\xdf\x87\x28\x36\xb5\xfc\xe5\xf2\xf3\xa7\xb7\x71\xfc\x2e\x8d\x63\x89\x9e\xae\x13\x37\x53\x3e\xa4\xd9\xfc\x24\x66\x82\x5e\x75\xd2\x05\x13\x79\xac\xc4\xcf\x6c\x12\x85\xba\xfe\xcf\xd1\x9c\x5d\xde\x2f\x18\x0c\x84\x78\x7b\x16\xce\xd9\xe4\x2c\x9d\x30\x21\x63\x89\xe7\x74\x62\x46\xe5\x4b\x18\x89\xde\xfe\x7b\xc9\x72\xd3\xc3\x2f\xf1\xf2\x26\x4a\x8a\x5f\xa6\xa0\x8b\x9f\x3e\x4a\x2d\x9b\xce\x79\xf1\xd3\x47\x19\xe7\xcc\x4a\xf8\x12\xf2\xd9\x05\xbb\xb1\x53\xd2\x28\xe1\xd6\x73\x79\xf8\x2e\x7e\xfa\x28\x47\x2b\xcd\xcc\x50\x5d\x80\xc7\x8e\xd4\x9b\x99\x34\x31\x79\x17\x33\xc6\xb8\x6e\xfb\x25\xfb\xce\x2f\xb3\x70\xfc\xed\x5d\x31\x7d\x26\xcd\x24\xa4\xcb\xb1\x6e\xef\x9a\x4c\x68\x86\xa6\x18\x20\x40\x66\xaf\x27\xfa\xea\x7e\xd6\x6e\x2b\xf8\x0f\x32\xa7\x93\xe1\x6c\x24\x4e\x95\xc3\xf9\x88\xdc\xd3\x48\xfc\xb9\xa6\xf7\xae\x7b\x5f\x9c\x6a\x00\x80\xc1\x75\xd1\xf5\x70\x39\x5a\xad\x52\x74\x4d\x96\x64\x8c\xc9\xf5\x30\x56\x8f\x31\x99\x63\x12\x0e\xe7\x23\x3a\x26\xb7\x18\x0b\xea\x07\x15\x2b\xc7\xd7\xc3\xc5\x68\xb5\x4a\xd0\x35\x59\x10\x3e\x5c\x8c\x94\x14\x5e\x84\x03\xaa\x84\x6f\xf1\xf7\xbb\x81\x5f\xa8\xfd\x40\x27\x7e\xb8\x1f\x1c\xee\xc3\x2a\x7b\x4a\x94\xeb\xf5\x0b\x2d\xe0\x0f\x00\xd7\x75\x3a\x9f\x0b\x5a\xe1\x2c\x00\x64\x31\x32\x8e\x59\x98\xd9\x89\x90\xa0\x18\xa1\x04\x2b\xd6\x0c\xb0\xb7\x35\x92\xee\x61\x19\x30\x51\xb1\xfb\xe1\x48\x69\xb6\x53\xba\xfb\xf9\xe2\xf4\xa4\xe9\xfd\xd3\x33\x1c\xdd\x0e\x91\x51\xaf\xce\xd0\xd6\x06\x1b\xfc\xbb\x4b\x52\xda\x02\x24\x27\x05\x85\xa0\x33\x90\x6e\x61\x6d\x81\x92\x81\xc5\xef\xea\x2e\x6e\xf8\x80\x07\x1f\x0a\x8b\x59\x85\x78\x2c\x39\x62\x8a\xd7\xa0\x2e\x5e\xaf\x01\xf9\xf1\x63\x3b\xf3\x7e\x00\xcc\xd4\x14\x06\xf1\x32\x9a\xb3\x74\xc9\x83\x10\x71\xaf\x78\xc4\xe2\x34\x7f\x9a\x70\x96\xdd\x86\xb1\x7e\xa7\x9f\x95\xc5\xa8\xbd\xa7\x18\x79\xa2\x57\x0e\x25\x4c\xc0\x9b\xae\xd7\xe9\x81\x50\xdf\xe9\xca\x3f\x3e\x26\xf6\x91\x7f\x0f\x4e\x6c\x82\xcf\xf6\x3a\x3e\x50\x42\xaf\xd3\x85\x29\xea\x75\x7a\x52\x6a\x81\x92\xf7\xaa\x25\x4b\xc5\xf9\x13\x7b\xf8\x86\xfd\x55\x46\xb9\x37\x0b\x73\x4b\xf6\x26\x49\x9d\x48\x27\xef\xa3\x06\xea\xae\xfc\x61\x4d\x22\x9a\x18\x5b\xa3\xd5\xca\xf9\xf3\x9f\x0d\x03\x07\xdb\x99\xd2\x26\x02\xef\xcb\xdb\x0a\x09\x69\xe2\x59\x3c\x1e\xb2\xd8\x3c\xbf\xc0\xd9\xc8\xa5\x05\x15\x49\x34\x78\x01\x44\xb8\x37\x5d\xb0\x8d\x2f\xc6\x03\x1e\x8c\x49\xaa\xbb\x29\xaf\x7d\x51\x64\x03\xf8\x86\xa0\x7b\x38\x41\xc9\x6a\x35\xb4\xec\x3b\xbc\xab\x28\xb9\x4d\xbf\xb1\x8d\x48\xb1\x92\x56\x9d\x7c\x99\x2f\x58\x32\x61\x52\x2e\x71\x1a\x55\xba\x8e\x48\x2a\x2f\x12\xd9\x77\x36\x5e\x72\x19\x91\x9f\x26\xea\x52\x1c\xaa\x94\xc6\x20\x1f\x59\x22\x87\xa0\x19\xe5\xcd\x30\xce\x58\x38\xb9\x6f\x66\xcb\x24\x11\x9f\xc8\x88\xfe\xe3\x74\xbe\x88\x19\x67\x13\x59\x04\x14\x0b\xe5\x88\xe7\x48\x15\x99\xea\x26\x9c\x23\x09\xf5\x92\x79\x73\xc6\x67\xe9\x84\x46\x24\xf3\xc2\xec\x86\xa6\x1a\x70\x26\xa4\x99\x37\x61\x31\xbb\x09\x39\x70\x38\x03\x56\x72\x83\x42\x05\x99\x93\x43\x2d\x39\xa5\x34\xc6\xe3\x34\xe1\x51\xb2\x34\x42\x7c\xbe\x5e\x8b\x16\x24\xec\x3b\x17\x0d\xd0\xf5\x60\xc1\x67\x12\x4e\x33\xef\x4a\xfd\x0d\xb3\x9b\x86\x8e\xfd\x5f\x34\xd8\xe4\x87\x7e\x54\xc6\xd1\x1e\x23\x6a\x75\x5c\x76\xa1\x91\x79\x93\x28\x5f\x84\x7c\x3c\x3b\xf9\x3e\x66\x0b\x79\x00\x10\x6f\x24\xb2\x8b\xa3\x34\x45\x56\x2d\xae\x9b\x79\xe1\x75\xb6\x5c\x40\x74\x13\x78\x2b\xcb\xc2\x8d\x84\x5a\x93\xa3\x91\xa5\xd4\x34\xc3\xb8\x27\x69\x36\x0f\x63\x07\x5c\x9d\x81\x58\x44\x8b\x13\x31\x78\x69\xc2\x06\x56\xeb\x82\xa2\x1b\x3f\x47\x2c\x9e\x38\x64\x0c\x23\x5e\x33\x7a\xca\x80\x10\xde\x4b\x37\x01\x59\xdc\x7a\x5d\x8c\x90\xac\xcd\x75\x51\x75\x08\xd4\x84\xaa\x9c\x6a\x5a\xc7\xb2\xff\xeb\x35\xa0\x29\x87\x98\xa4\x6b\xb3\x54\x74\x77\x1e\x0a\xa0\xc9\x07\x51\x76\xa0\xfb\x26\x84\xe6\x80\x15\xb8\x21\xeb\x2a\xf2\xa4\xca\xae\x6a\x14\xb9\x93\xf5\x7a\xcd\xbc\xbb\x2c\x5c\xd0\xbc\x21\x11\x97\x1e\xd6\xc5\xea\x1c\x23\xfc\x50\x34\x60\x5a\x7a\x9a\x88\x27\x89\x8d\xf7\xb0\x6e\xcc\x86\xd1\x88\xd6\x1b\x05\xad\x1b\x12\xa3\x4b\xad\xdb\x32\xe2\x2d\x99\xd3\x85\xeb\x2e\xd0\x02\x5d\xa0\xe1\x08\x63\xdc\x98\xbb\xee\xbc\x45\x05\x1f\xc8\x34\xd6\x42\x84\x5d\x17\xcd\xe8\x5c\xa3\x34\x4d\x2c\xe0\x3b\xeb\x4a\xb6\xc2\x19\x66\xb8\xe8\xc8\xbd\x60\x99\x43\x49\xe6\x44\x0f\x80\xa6\xa1\x91\x37\x4d\xb3\x93\x70\x3c\xb3\xce\x99\x82\x9b\x0f\xf9\xa8\x6e\xbb\x53\xfa\x60\xe0\x28\x3a\xc2\x2b\x2e\xc6\xe5\xda\x82\x39\x6c\xd8\x79\x69\x99\x9f\x98\x0f\x42\x54\xc2\x3f\xe6\x56\x2b\x12\x12\xe2\x07\xf3\xd8\x84\x2f\x25\x32\x9c\x9c\xab\x25\x62\xc3\x68\x44\x18\x49\x25\x91\xcb\x8e\xb5\x28\x8d\x15\x8d\xcb\x85\x10\x03\x81\x4e\xe9\x58\xc1\x18\x68\xfe\xe6\xba\x8e\x8c\x4a\x57\x6c\x05\x53\x33\xec\x53\xe2\x5c\x5d\x85\x77\x61\xc4\x1d\x3c\x28\x22\x2f\x4c\x3d\x95\x5a\x17\x40\x22\x51\x9c\x44\x1c\xe0\x48\x8e\x4b\x1e\x3b\xf2\xb5\x1a\x7a\xfd\x1e\x07\x56\xc9\x75\x25\xaa\x26\x53\x46\x42\x34\xde\x28\x50\x0f\xdb\x66\xb9\xeb\x1c\xc5\x72\x2d\x61\x18\x34\x31\x92\xeb\xc2\x51\x2c\x01\x84\x1d\xa9\xbc\x20\x21\x0e\x42\x84\xd7\xc5\x14\xde\xd8\x9b\x2e\x33\x3b\xe1\x90\xab\x45\x3b\x2a\x21\x9d\x64\xd2\x54\xd0\x70\x61\x40\xac\x20\x05\x07\xe0\x36\x8f\x2c\x4a\xf3\x64\x53\x5c\x17\x71\xc3\x0b\x34\x53\xe3\xc0\x0c\xd4\x19\x57\xb6\xa6\xae\x40\x83\x82\xd6\xe0\x55\x76\x22\x4b\x10\xf4\x64\xd9\x2a\x5e\xce\x58\x53\x57\xdf\x9c\xa4\x4c\xda\x6f\x2d\xb2\xf4\x36\x9a\xb0\x66\xd8\xfc\x6f\xf8\xf8\xbf\x9b\xb2\x2c\xc7\x8c\x56\xbc\x96\x1b\xe5\x12\x65\xa4\xe8\x80\xac\xc3\x26\x3c\xc1\xf0\x25\xe1\x19\x35\x76\x7d\xb3\x80\x1e\xab\x23\x16\x37\xa4\x04\x90\xc8\xdd\xa1\x70\x15\x01\x0e\x8d\xf8\x90\x09\x52\x59\xc6\x5c\x9c\x8c\x46\x54\x01\x19\x11\xee\x09\x92\xa3\x0c\xfe\x7c\x4a\xc7\x66\x59\xb7\x8a\x91\x2a\x0d\xb2\xa4\x50\x7b\x88\xf1\x66\x5b\x70\x10\x05\xe8\x79\xa3\x6a\x46\x54\xb6\xce\x98\xc5\x25\x4d\xb5\xb8\xea\x8a\x2f\x88\xed\xaa\x10\xca\x05\x67\xff\x94\x8e\x03\x36\xec\x8c\xd6\x0d\x1f\xcc\x3b\xa0\xe9\xc0\xc7\x3f\xa5\x63\xca\x40\x25\xde\x2d\xde\x28\xcd\x9e\x7c\xd7\x1d\x89\x16\x4e\x39\xcb\xe4\x73\x6f\xa4\x1c\xdb\x78\x76\x7f\x22\xf5\xc0\x06\x3b\xde\xd4\x7f\x67\x1d\x0a\x3c\xb5\x43\x45\x69\xb2\x5a\x3d\xac\x1b\x1c\x66\x93\x9a\x0d\x46\xd9\xbe\xc3\x30\x10\x3b\x37\xe5\x45\x81\x27\xc6\x8f\xaf\xa8\x96\x0e\x75\xdf\x9c\x2c\x4d\xb9\xb3\x1e\x11\x66\xb8\xee\x95\xc4\xaa\x32\x51\x8d\x18\x47\xe2\x7c\x65\x0a\xbc\x50\xd7\x78\x45\x3b\x87\x11\x2c\x41\x5e\xd0\x99\x02\x7d\x68\xd4\x9b\x7b\x49\xe2\x30\xa0\xc4\x00\x45\x14\xe5\x67\xe1\x19\x62\xc6\x51\x49\x09\x83\x3b\xbe\x05\x91\xd1\xe4\x2a\x66\xe0\x71\xbb\x9d\xbc\x66\x06\xe7\x24\x9a\x22\x8d\x33\x41\x92\xc2\x5e\x4c\xf3\xaa\x61\x22\x26\x42\x90\x2d\x04\xc5\x6a\x54\xde\x1b\x1f\x29\x99\xa3\x43\xf8\xba\x10\x55\x81\x98\x53\x0d\x2d\xf2\x20\x1e\x83\x73\x8b\x37\x9d\x9b\xdd\x62\x0b\x62\xbf\x66\xee\xd6\xbe\x78\x5b\x02\x8e\x9d\x90\x49\xe9\x79\x4a\x26\xc3\x70\x44\xa7\x20\x8e\xc5\x21\xd8\x32\xd2\x42\x94\xd5\xa7\x2d\x47\x2c\xfd\x7c\x23\xb9\xc6\x3a\xbe\x6e\x02\x2a\xf0\xbd\xfa\x06\xb6\xc5\xc1\x10\x4f\xc2\x07\x6f\x56\x49\x29\x15\x8c\xb5\x68\xd7\x6a\xc5\x01\xbe\x03\xe3\x35\x61\xde\x3c\xcc\x6a\x23\x5b\x29\x39\xa0\x0c\xdd\x3d\xa8\x4d\x45\x8c\x4c\x70\x80\x98\x77\x75\x05\xe3\x75\x75\x45\x27\x24\x84\xf5\xb5\x5a\x21\x26\x06\xa6\xa6\x5d\x10\xfb\x6f\x9b\xdc\x71\x8b\x09\x13\xad\x0b\x41\xac\xda\x6c\xde\x83\xda\x40\x03\xb6\x5e\x93\x7b\x74\x6d\x1f\x60\xac\x87\x61\xba\x55\xa0\x22\xcc\x7b\x6b\x1f\xb8\xe8\xb5\xa8\x4e\xa4\xd0\xb2\x69\x01\x01\x49\xa3\xc0\x18\x00\x54\x42\xad\xde\x57\xd1\x64\x04\x37\xbb\x46\xb9\xfe\x00\x0b\x59\x42\x2f\x94\xba\x09\x47\x19\x1e\x84\x41\x08\x84\x8a\xea\xb6\x6c\xf3\x31\xf0\x6d\x65\xfb\x68\x3e\x00\x0b\x8a\x7b\x31\x48\xb7\xe5\xc1\x75\xc8\xed\x23\x32\x24\xb9\x35\x07\xca\xcd\x2c\x26\xb8\xae\x29\x6c\xe4\x88\x41\xfa\xc6\xee\xf3\x1a\xfa\xb4\x90\x8c\x32\x19\x52\x83\xeb\x80\x6e\xc5\x52\xcd\xd8\x2d\xcb\x72\x86\xb0\x41\x8d\x6a\x66\x9a\x19\xf0\x02\xf0\x48\xa1\x59\x7b\x8b\x74\x81\x24\xa0\x91\x2c\x51\xeb\xb3\xd5\x92\x4f\x48\x66\xf8\x41\xb6\x36\x2f\x35\x03\xc8\xd6\xa2\xb9\xf2\xea\x88\x5e\x90\x13\x8b\xb6\x1e\xac\x55\x13\x9c\x10\x60\x8f\x55\xfb\x06\x15\x1d\x8e\xdd\xea\x48\x7b\xc0\x44\xd4\x6f\x38\xbf\xa9\x38\x75\xe2\xa7\x1d\xe2\xce\xb0\x28\x78\x28\x6d\x51\x90\x54\xd9\x32\x45\x92\x25\x98\x54\xb7\x16\xcd\xcf\xef\x30\x69\x31\x5c\x32\x05\x07\x06\xef\x70\x29\xbd\x18\x8c\x4b\x23\x6b\xca\x0b\x7f\xec\xba\x8a\x2b\xb7\x79\x81\x83\xa6\xdd\x1a\xf8\x48\xef\xd6\x6b\x92\xf3\x74\x11\x94\xee\x84\x4c\x67\x3a\xca\xe5\xa2\xd2\xb8\x61\x67\x64\x6d\x57\x65\x99\x85\x49\x99\x45\x9e\x54\x99\x2d\x7d\xc8\x1d\xe9\x36\x8c\xd7\x64\xe3\xac\x5a\x3b\x09\x00\x1a\xa6\x0a\x52\x5a\x19\x91\xde\xb0\x44\x78\xdb\xe2\x27\x54\xfb\xab\x3e\x91\xc1\xe8\x1a\x91\x26\x23\xc9\x93\x82\x4b\xab\x95\x18\x2c\xd8\xa8\xda\xe9\x02\xd9\x2a\x7a\x43\x3b\xc7\x3b\x3b\x91\x06\x75\xae\x8e\x4e\x34\x22\x21\x4d\xab\x23\x04\x5b\xb5\xe0\x1b\x9e\xdc\xbc\x71\x21\x6f\xb3\x64\xe2\x28\x3c\x68\xf9\xee\x35\x35\x54\x68\x82\x83\xc9\xc9\x4d\x89\xa3\xe5\x17\x07\x93\xa5\x95\x5c\x08\x2f\xb2\xac\xdc\x75\x97\x65\x82\x7e\x9d\x1a\xd9\xa7\xa8\xbc\x48\x03\x63\x99\x4a\xfe\xa2\x50\xfb\x0b\x2b\x75\xad\xd5\x18\xf9\x8b\xeb\x5a\x6b\xb8\xb1\xd6\x72\x53\xf9\xc3\xb3\xfb\x66\xce\x43\x0e\xfa\xfd\xe6\x5d\xc4\x67\xe9\x92\x37\xe1\xf3\x66\x9a\x35\x55\x0b\x9c\xdf\xd0\xe0\xf5\x7a\x4d\xa4\xde\xa3\x62\x76\x54\x84\x33\xde\x3a\xf3\x89\x9c\xf9\x42\xbf\x56\x99\xf9\x64\x24\x31\x42\x37\x66\xd1\x2c\xce\xa8\x3c\x51\x2a\x08\x26\x34\x3e\xb2\x9b\xa9\x48\x2b\x92\x20\xb2\xeb\xb5\xd8\x6d\x1c\xf8\x0d\x8b\x6c\xb5\x72\xb4\xfa\x04\x9e\xb1\xeb\x5a\xb4\xe3\xba\xfc\x35\xb5\x7b\x0d\x5b\x95\xe0\x44\x7a\x9f\x4a\x07\x36\x7d\x06\x0f\xeb\x46\x79\x11\x31\xb5\x7c\x38\x49\x07\x68\x1b\xf7\x92\xd2\x95\x55\x8d\x90\xf4\xe1\x8d\xd6\xcd\xa0\x10\xaf\x89\x7e\xd8\xb4\x7a\x7e\x06\xd7\xb0\xfa\xec\x49\x4f\xd6\x72\xc7\x21\x71\x50\x34\x07\xbe\x0d\x2c\x75\x97\xca\x81\x0c\xf7\xa1\x86\xf3\x32\x79\x72\xb2\x7b\x67\xce\x8c\xa6\x40\xb9\x38\x03\x4b\xe5\xc5\x94\x12\x8a\x2b\x66\x2a\xf3\x71\x4c\xe2\x35\x99\x46\x49\x94\xcf\xb6\x60\x41\x6c\x25\x2b\x2e\xc9\xca\x9c\x92\xab\x64\xc5\x81\xac\x32\xfb\x7c\x62\x3b\x01\x95\x46\x3c\xb3\xe6\x95\x64\xe6\x00\x83\xc9\x1d\xca\x44\x13\xeb\xe2\xa8\xfe\x81\x4d\x94\x34\x08\xcd\x53\xdb\x79\xb6\x75\xab\x48\x2c\xbd\x8a\x3e\xa9\x8a\x56\x1a\x00\x9a\xf5\x7a\x83\x2f\x44\xb1\xd8\x57\x63\xc5\x09\x42\xce\xd9\x7c\x01\x57\xc5\x7a\xc3\x05\x35\x63\x50\xd5\x4d\xdb\x43\x65\xb6\xe6\x07\x7d\xd8\x0c\x2e\x20\x30\x95\x39\x0f\x07\x9c\xa8\xf3\x6f\x90\xad\x89\xd1\xe7\x5a\x94\xa2\xa7\xde\xde\x3d\xc4\xd8\xb2\x35\xda\xd0\x02\xf1\x81\xb9\xb5\x08\x1e\xd6\x3a\xb4\xcd\x8d\x96\xae\xbe\x2e\x13\x1e\xcd\x19\xcd\x0a\x05\xa3\x91\x0e\x9d\x0c\x14\x6b\xd5\xbc\x4d\xda\xcc\x1c\x8c\x20\xc4\xf0\x03\xdc\x71\x3c\x0e\xa1\xd6\xeb\x68\x58\x43\x88\x7d\x0f\xd7\x62\x10\xfe\xdd\xbb\xba\x62\xf9\xe7\x74\xb2\x8c\xd9\x80\x07\x0f\x1a\xaa\x5a\x1c\xa1\x3c\xf5\xe0\x5d\x5d\x87\xd7\x2c\xfe\x92\xc6\xf7\xd3\x28\x8e\x5d\xd7\x59\x26\xd2\xb9\x6b\x52\x44\x08\x56\xa1\xbf\x5d\x57\xfd\xf0\xee\xc2\x2c\x29\x3f\x21\xe7\xcf\x50\xd0\xee\x42\x95\x24\x8e\xf6\x71\x1a\x4e\xd8\xa4\x39\x4f\x33\xd6\xe4\x33\x71\xc8\x4f\xc6\xac\x99\xca\x89\x6a\x2e\xc2\x1b\xe6\x35\x2f\xc1\x6d\x34\x6f\x2e\xb2\xf4\x3a\xbc\x8e\xef\x41\x1f\x30\x61\x79\x04\xde\x8c\xbb\x51\xc2\x41\xbd\xdc\x0c\x93\x49\x73\x1e\xde\x37\x67\xe1\x2d\x83\x06\xb1\x7f\x2f\x59\x32\x66\x79\x33\x9a\x36\x27\xd1\x74\xca\x32\xb1\x95\xdc\x4a\x03\x8c\xbc\x29\x66\x66\xc6\x9a\xba\x39\x79\x33\xcc\x58\x33\x5c\x2c\xe2\x88\x4d\x9a\xf2\x63\x1e\x89\xe5\xe6\x35\x4f\xa7\xcd\xfb\x74\xd9\x9c\xa4\xcd\x84\xb1\x49\x93\xa7\xd0\xf0\xd2\xe7\x95\x3e\x90\xa6\x98\x81\x4a\x8f\x77\x93\xf4\x5d\x9a\x4c\xe3\x68\xcc\xe1\x2a\x86\x85\x50\xd6\xf5\xfd\x22\xcc\x73\x28\x4d\x0c\x54\x94\xdc\x78\x0e\x26\xdb\x26\x00\x3c\xfb\x1e\xfc\x5e\xe0\xf7\x48\xaf\x73\x10\xf4\x3a\x07\x40\x01\x4f\xe0\xe6\xc0\x0d\x9a\xf8\x07\xee\xd2\x8e\xc4\x3f\x87\xe0\xa3\x01\x6f\xfc\x8e\xf4\xd7\x10\xff\xee\x89\x7f\xf6\xc5\x3f\x7d\xf1\xcf\x81\xbc\x7b\xeb\xcb\x3f\x7b\x70\x85\x17\xf8\xc4\xef\x04\x7e\x87\xf8\x7e\xe0\xfb\xc4\xef\x06\x7e\x97\x74\x83\x2e\xe9\x05\x3d\xb8\xca\xeb\x75\xfa\x70\xf1\xd6\xeb\xec\x91\x7e\xd0\x27\x7b\xc1\x1e\xd9\x0f\xf6\xc9\x41\x70\x40\x0e\x83\x43\x72\x14\x1c\xad\x47\x82\x76\xc9\xb0\xd7\xd9\x1f\x15\xc7\x02\x84\x1f\x1a\xbb\xaf\x5a\x8d\xe6\xab\xe6\x9f\xd3\x5b\x96\xdd\x46\xec\xae\xd9\x3c\x99\x5f\xb3\xac\xb9\xd3\xfc\x6b\x78\x1b\x5e\x80\xb9\x5b\xf3\xad\x98\xa8\x31\x98\x30\x34\x3f\x64\xe1\x9c\xdd\xa5\xd9\x37\xf8\x6c\x9c\x2e\xee\xb3\xe8\x66\xc6\x9b\xef\xcc\xaf\x6e\xc7\xf7\x77\xba\x9d\x6e\xa7\x79\x19\xc5\x13\xd6\x3c\x4d\xc6\x1e\x10\x8c\xd8\x4b\xb2\xe8\x7a\xc9\xd3\x2c\x17\x5f\x5b\xff\x7d\x49\x33\x0e\x84\x62\x17\xd3\xd9\xdf\x11\x65\x35\x2f\x78\x96\x5e\xcb\x72\x9e\xf5\xd9\xa1\xfc\x4c\xb4\x5a\xd5\xfe\x36\x8e\x9b\xf0\x3a\x6f\x8a\x63\x48\x76\xcb\x26\x50\xd4\x9f\x85\xa8\x9e\xe4\xac\xd9\x6c\x7e\x92\xbf\x26\x4d\xb1\xe2\xb2\xe6\xe7\xd3\xcb\xa6\x7a\x59\xa9\xf3\x82\xb1\xe6\x8c\xf3\x45\x1e\xec\xee\x66\xe1\x9d\x77\x13\xf1\xd9\xf2\x5a\xf0\xdd\x5d\x26\x86\xee\x97\x5c\xfe\xf5\x7e\xc9\x77\xe7\x61\xce\x59\xb6\xfb\xe9\xf4\xdd\xc9\xd9\xc5\x09\xd4\xa8\x96\x44\xb3\xd9\xec\x79\xdd\x8e\xb7\xd7\x68\xbe\xda\x95\x82\xbf\x60\x9e\x8d\x79\x18\x25\xef\xd2\x84\xc3\x2e\x27\xce\x16\xd6\x64\x01\x8b\x27\x51\x21\x92\xa7\x05\x9e\x75\x48\x19\xc9\x69\x32\x0c\x47\x8d\x7c\xb5\x42\xf0\xb3\x4d\x9d\x5d\xc0\xea\x72\x46\x58\x01\x00\x47\x22\x83\xed\x02\xb5\x34\x51\x56\x1b\xf2\x2d\x7d\x58\x93\x7c\xb5\x2a\x8b\x0f\x72\x67\xe0\x03\x6b\x6f\x78\x97\x2e\xe3\x09\xb0\x87\x69\x24\x98\x01\xf0\xb5\xa6\xd3\x66\x6d\xa7\x99\xb1\x7f\x2f\xa3\x8c\x4d\x9a\xd7\xf7\x41\xd3\x69\x73\x89\x03\xff\xd4\x87\x18\xae\x8e\x0a\x77\xab\x98\x8a\xed\x63\x91\x93\xb1\xc2\xae\xbe\x0e\xc7\xdf\x88\x34\xd2\x06\x13\x11\x14\x1b\x8b\xdc\x09\xed\x1c\x4f\x5e\xeb\xe7\xe3\x49\xbb\x8d\x1d\xb5\x0d\x88\xcd\x24\x1e\x4e\x46\x83\xe9\x70\x32\xa2\x4b\x21\xae\x40\xeb\xca\xe9\x3c\x80\x3f\x29\x12\x49\xb6\xe5\xa5\x7d\x4d\x3f\xc5\x64\xb9\xb6\x58\xb2\xd9\x75\xee\xa2\x64\x92\xde\xd5\xb3\xeb\x45\x96\x8e\x59\x9e\xbb\xae\x39\xeb\xab\x94\x91\x68\xc1\xc3\xda\x68\x07\xa4\xcc\xaa\x5e\x62\x88\xf2\x01\xdb\x1e\x2c\x48\xeb\x27\xc4\x02\x26\x85\x12\xdf\x75\x51\x46\xcb\x49\xde\xd5\x15\x70\xfb\x6c\x80\x92\x8a\x8e\x07\x04\x53\x12\xd5\xa6\xd6\x5f\x33\x47\x54\x48\xac\x03\x14\xc1\x6c\x50\x4e\x22\x33\x1b\x34\xc3\x81\x4e\x1f\x8e\xec\x17\x1c\x93\x64\xc8\x46\x34\x2a\xc7\xe5\x67\x96\x99\x24\x03\x4c\x7d\xbc\xc6\x9a\xf9\x52\x4e\xe0\xd6\xbf\x2e\xfb\x0f\x69\x1a\xb3\x30\x41\x89\xf4\xf2\xb5\x1e\xdb\x05\x91\xaf\x09\xf7\xae\x58\xf8\xed\x2a\x67\x2c\x01\xcd\x85\x1e\x07\xaa\xa2\xc4\x06\x8c\xa8\xe9\x0f\x38\xd1\x18\x31\x41\xb2\xc6\x01\x62\xd6\xb0\xa9\x88\xb4\x84\xdb\x69\xea\x43\xbc\x46\x82\x3d\x3b\x7f\x86\x55\xbe\xbb\x23\xf6\xc4\x2c\x09\xe3\x7c\xf7\x3a\x4b\xef\x72\x96\xed\xb0\xe4\x36\xca\xd2\x44\x1c\xa6\x54\xd3\xc8\xd0\x50\x63\xc5\x83\xa1\xb4\x75\xa8\x39\xa9\x84\xc3\x65\xc4\x29\x24\x07\x83\xfd\xd2\xea\xac\x31\x61\x62\xb8\xde\x9f\x7f\xa6\xcc\x8b\xf2\x0f\x51\xc6\xa6\xe9\x77\xf8\xfd\x6e\x96\xa5\x73\x46\x99\xb7\xcc\x59\xf6\xf6\x86\x25\x42\x58\x9f\x45\x39\x4f\xb3\x7b\xca\xbc\x38\x95\xdc\x9c\x32\x4f\x92\xae\x92\xab\xd4\xc1\x7f\x43\xaa\xca\x59\x3c\x75\x5d\x15\xc4\x48\x3e\x88\x7f\x3d\xd9\x60\x4a\xa9\xf1\xaf\xa9\x59\x00\x7f\x57\x8b\x03\xbe\x28\x07\x42\xd3\xaf\x36\x2a\x9c\xa4\x63\xb0\xb1\x31\x95\x16\x09\x50\x8c\x7e\xa4\xf6\x9b\x8d\x52\x74\x37\x4d\x29\x45\x02\x94\x62\x86\xc1\x7e\xb3\x51\x8a\x1a\x36\x53\x88\x79\x86\x32\xf4\xa0\x5a\xe9\x1b\x25\x24\xe1\x6d\x74\x23\x44\x4a\x53\x86\x95\x02\xa5\x98\x67\x5a\x7a\xe7\x48\xf7\xf4\x9a\x92\x8a\x89\x6d\x18\x22\xe0\x0a\xa8\x99\x0f\x44\x99\x81\xa8\xaa\x61\x26\x38\x6b\xa8\xe3\xf6\xa0\xd4\x75\x9d\xcb\x0c\x45\xa2\xee\xb2\x54\x3e\xd5\x29\x9d\x4d\xf7\x36\xd2\x3e\x32\x83\x72\xf3\x8b\x66\x05\xce\xa7\xfb\xe4\x7b\x13\x89\x9d\x6c\x9e\x4e\x18\x76\x1a\x36\x35\xa6\xea\x6c\x2c\xf5\xe8\x7a\x39\x67\xde\x18\x08\x17\x70\x67\x3c\x41\xff\x21\x6e\x58\xf4\x1c\xaa\xe0\x1f\xf0\x55\x1d\xad\x01\x36\x46\x1c\x5f\x66\xd1\xcd\x0d\xcb\x1a\xf6\xb2\xc8\x01\x8e\xa7\x6e\xdd\x2a\xc9\x79\x73\xad\x12\x9d\x79\xc2\xae\x97\x37\xf6\xe3\x22\x63\xe3\x90\xb3\xc9\xce\x94\x85\x7c\x99\xb1\xca\xba\x96\xcc\xf3\xf7\xae\x6d\xcd\x16\xad\xb5\x99\x34\x32\xef\xd3\xf9\xc7\x8f\x27\x5f\xc1\x2e\xe3\x21\x4e\x6f\x82\x8a\x84\xa0\x2f\xc9\x11\xa3\xaa\x63\xd8\x8b\xd3\x1b\x13\x5d\xdc\x98\xaf\xe1\x35\x11\x22\xf0\x73\xbe\x17\xf9\x6a\x0b\x60\x62\x4f\x7f\x4e\x09\x90\xb1\xb6\x88\x28\x99\xa6\xcf\x29\x41\xe4\xab\x2d\x00\x26\x67\xa3\x84\xe2\xf2\x4a\x1f\x8c\x20\xdf\x00\xf1\xa2\x48\x48\xd1\x1b\xbc\x55\x66\xf0\xac\x7a\xc3\x3c\x67\x19\x7f\x4e\xd3\x65\xce\xba\x42\x14\xbc\x46\x44\x93\x46\x31\xdf\xd1\x63\x94\xca\xc3\x28\x61\xd9\x23\xb4\x6a\x65\x4f\xef\x12\x96\xd5\xbe\x59\xf2\x28\xde\x4e\xdf\xe6\x98\xb6\x49\xd5\x70\xd1\xf2\xbb\x29\x7b\x91\x45\xb7\x21\x8f\x7e\x65\x35\x77\x1c\x6c\xd8\x19\x91\x84\x5e\x29\x2d\x47\x62\x54\x8b\x9a\x31\x69\x4c\x9a\x00\x10\x1e\x23\x91\x3d\xa4\xd1\xd0\x37\xc1\x35\xc4\xa7\x14\x75\x48\xe6\xc9\x0e\x63\x94\xb6\x9d\xc0\x69\x87\x6d\x67\xc7\x69\xdf\xc1\x05\xdc\x0d\xe3\x1f\x42\xb1\x0b\xdd\x7f\x48\xb3\x3a\x81\x83\x0d\x17\x23\x91\x31\x2f\x65\x9c\x13\xe6\x9d\x9e\x9d\x5e\x5e\x7d\x78\xfb\xee\xf2\xfc\xeb\xcf\x94\x79\xef\xf4\x9c\x50\xe6\x7d\x55\x12\x85\xbd\x64\x53\xfb\xd6\xc7\x88\xee\x4c\x19\x6a\x18\xc0\x00\xb8\x4d\x14\x52\x9c\xba\x4b\x56\x05\xc9\x00\x1f\x1e\xcc\x24\xe5\xf2\xef\x6a\x55\xdc\x73\x8c\xc3\xf1\x8c\xc9\xce\x4e\x22\x28\x3a\xcc\xee\x31\x5c\xbc\x8f\x67\x4c\xe6\x54\x65\x4e\x65\x37\x3e\x87\x49\x78\xc3\xb2\x77\xdb\x3e\xac\xc9\x56\x2a\x26\xca\xdf\xb3\x9c\x67\xe9\x3d\x9b\x98\x0b\x18\x93\x16\x25\x37\xb4\xe5\x2b\xa3\x0b\xeb\xa2\xd1\xc0\x37\x79\x71\x9a\x7e\x5b\x2e\x36\xa1\x4e\xaa\x65\x6f\x6a\xa9\xdf\x85\x09\x1c\x1b\x84\x8c\xd9\xfc\x3f\x55\xd0\xff\x35\x41\xe9\x06\x07\x7a\x18\x9c\xe6\x2c\xcc\x9b\xd7\x8c\x25\xcd\x89\x2e\xca\x29\xb0\x12\xd4\x7d\x8d\x3d\xc4\x9e\x54\x36\x46\xbf\x32\x8d\xaf\x93\x78\xea\x53\x5a\xbd\xa8\x29\xf7\xb3\x43\x26\x2a\xde\x02\x49\xa4\xba\x30\xfa\x95\xbd\xdf\xfc\x74\x86\x2c\x2b\x81\xd2\xf0\x75\xc4\x97\x70\x31\xb6\x19\x5c\xdf\xca\xb8\x5a\x59\xd1\x89\x06\x48\xd5\x4a\x54\xb9\x38\xa8\xb3\xb8\x65\x92\x02\xc4\x2a\x52\xb6\x0f\xac\x6e\x6a\x87\x7c\x44\xc4\x09\xc2\xe4\x19\x9b\x54\x3d\x0a\xae\x6b\x7e\x22\x8c\xd7\x4f\x0d\x21\x86\xe1\x80\xb9\x38\x4d\x7e\x61\x95\xab\x76\x0d\xe1\x63\x94\xe0\xa8\x43\xe0\x66\xfb\x5c\x7c\x80\x91\x4d\xef\x70\x1b\x9d\xe8\x56\x97\xd7\x69\x09\xca\x63\x73\xfd\xbc\x84\x90\x8a\xf2\x9f\x49\x4c\x96\x52\xb6\x76\x04\x64\xbc\x28\x15\x06\xc4\x75\x5b\xf2\xe2\x3f\x5f\x84\x63\x56\x9c\xea\xcc\x97\xec\xfb\x22\x4c\x26\x9f\xd2\x71\x18\x7f\x02\x92\x86\xce\x15\x16\x52\xca\xcd\x8d\x30\x0c\x1a\x4f\xcb\x34\x30\xb4\x3d\xb8\x5b\x7e\x8b\x52\x56\x14\x7b\xc3\xf8\xf9\x42\xdd\xa7\x3b\x79\x94\xdc\xc4\x8c\xa7\x89\x63\x19\xa7\xe4\xcf\xfe\x5c\x9a\x32\xf3\x28\xe4\xcc\x2e\xc0\x98\x75\x6e\x9e\x45\xb5\xb0\x09\x43\x91\x15\x43\x91\x95\x86\x22\xb1\x6b\xdc\x1c\x07\x51\xb6\x0e\xb3\xdd\x12\xa7\x5a\xd3\x0d\x7d\x30\xd5\xe4\x9a\x94\x95\x1a\x91\x09\x19\xb7\xae\x1a\x44\x57\x6c\xb6\x63\xcb\xd0\xb6\x08\xf7\xa7\x3e\x87\x50\x81\xb5\x76\xd7\x62\x67\x31\x43\xd2\xb0\x46\xd0\x6a\xa3\xeb\x42\x4a\xe2\xba\x72\x9e\x5c\x57\x0e\xb8\x34\x90\x4d\xb0\xbe\x75\x2a\x96\x1c\x8d\xf4\x71\xbc\x64\xc7\x50\xb0\x1c\xd7\xad\x31\x50\x49\x8b\x75\x9a\x16\xeb\x94\xa4\xeb\xe7\xb5\x9e\x44\x76\xa3\xed\xbe\x24\xae\x2b\x07\x3e\x5a\xad\x64\x17\x36\xfb\xa0\xc7\xb9\x68\xf8\xef\x1d\x33\x6b\xbc\x5a\xe5\xca\xca\x4a\xa9\x17\x75\x47\xf6\x23\x59\xad\x64\x7f\x74\x15\x00\x47\x24\xfa\x55\xd3\x9f\x38\xcc\xf3\xc6\x26\xeb\x30\xca\x2b\xd9\xe1\xa6\x62\x1e\x0e\x14\x91\xc8\x68\x5d\xc5\x0a\x89\xcb\x2d\xdd\xc6\x81\x4b\xc4\xbb\x21\xf0\x58\x6b\x44\x1b\x9c\x72\x5c\xa1\xf7\x07\x2d\x6b\x88\xb6\xde\x42\x50\xc7\xac\xc0\xcc\xdc\xca\xfa\x69\x4a\x52\xab\xb9\x63\xdd\xdc\xe2\x76\x56\x0c\xae\x62\xe2\x39\x89\x68\xe7\x38\x7a\x6d\x6c\x48\x22\xed\xc6\x94\x52\x3e\x8c\x46\x24\xa7\xa9\x01\xe6\x25\x31\x4d\x3d\xc0\x1b\x9c\x46\x2c\x23\x63\xf1\x04\x4c\xa0\x91\x0c\xf3\x11\x1d\x0f\x04\xf3\x88\x89\x0e\xba\x34\x5e\xe3\x00\x52\xb0\x90\xda\xf2\xf7\xf7\x49\x38\x8f\xc6\x82\x5b\x16\x4f\xb4\x15\x42\x0e\x7b\x80\xa7\x76\x44\xbf\x62\xa0\x24\x15\x18\x31\x71\xd8\x19\x6d\x78\x46\x30\x9b\x0d\x3c\xac\x8f\x2b\xfb\x50\x44\x98\xda\x84\xd4\xc0\x3e\x14\xe3\x10\x44\xc4\x34\x2a\x68\xf9\xeb\x8d\xa0\x6e\x99\xeb\x8e\xa1\x82\x54\x2b\xe5\xe4\x72\x1a\x03\x8d\xa4\x62\x71\x8a\x5f\x82\xc9\x5e\xde\x2f\x98\xd9\x26\x73\x14\x61\x99\x6c\x25\x65\xb6\x89\xf6\xa4\xe2\xdc\x28\x79\x07\xc9\xb4\x3a\xef\x1b\xbb\xcf\x11\xc7\x24\x01\x10\x29\x1d\x44\xe0\x38\xd1\x33\x15\x51\x3e\xcc\x86\xc9\x68\xd4\x88\x0a\xb6\x11\x15\x6c\xc3\x1a\xda\x19\x38\x5f\x6e\x13\x30\x95\xc2\xf0\x79\x42\xa5\xd4\xf3\xd9\xa2\x72\xaa\x2c\xeb\x21\xab\x04\x61\xc4\xc8\xb1\x25\x6b\x07\x57\x42\xda\xe2\x07\x21\x92\x53\xbe\xae\x48\xe0\x0b\x65\x5a\xbf\x55\xca\x96\x13\xad\x2e\x6e\x8d\xac\x6e\xcb\xd5\x6a\xaa\x95\x44\x2d\x56\x3e\xe5\x4a\x66\x5e\xc6\x31\x58\x15\xaa\x97\x66\x9b\x9f\x40\x6a\xa2\x2e\xb4\xc3\x09\xbb\xd4\x36\x5e\xb6\x89\x51\x41\x33\x3a\x79\x5e\x88\x4f\x78\xad\x27\x71\x43\x4c\xe6\x8f\x98\x8c\x59\xc8\x90\xd5\xba\xf5\x45\x69\xa9\x3d\xe5\x8e\x17\xbc\x64\x1e\x7e\x33\x99\x50\xd1\xf3\x72\xbf\x31\xde\xec\xe1\x9a\x68\xb5\x31\xad\x33\x24\x2a\xaa\x7a\x9e\x10\x26\xf9\xa8\x78\xa3\x3d\xa6\xf2\x67\x88\x61\x4d\x74\x9f\x2e\xf5\x95\xb4\xbc\x26\x54\x25\x39\xed\x52\x0f\xda\x0e\x76\xb0\x65\xd0\x64\xcd\x49\x69\xd3\x2f\x5c\xd5\x2a\xdd\xa8\x9b\x78\xb1\xc0\x4a\x9c\x31\xa5\x16\xa3\x6a\xcc\x51\xa2\x0d\x83\x69\x42\x52\x0d\x30\x63\x51\x43\x82\xd7\x55\xa6\x01\x56\xd1\x62\x41\x44\x5e\x98\xe7\xd1\x4d\x82\xd1\xc3\x9a\x70\x62\xe6\x00\xa6\x47\x6f\xb4\x5c\x49\x83\xe4\x9e\xee\xfe\x6b\xf8\xaf\x60\xd4\x0e\xe0\xdf\x3f\xed\x92\xeb\x6d\x4b\xc1\x12\xd4\x44\x65\xac\x10\x97\xa7\x5a\x6d\xcf\xcc\x4f\xfb\x90\xa9\xb6\x9d\x0c\x38\xac\xfc\x59\x7e\x0d\x24\x15\xca\xae\x6d\xac\x7e\x56\xce\x50\x3a\x4c\x5e\xf1\x12\xff\xdb\xc6\x67\xb4\x33\xca\xf3\xf2\xc5\x85\x0c\x29\x19\x52\xdd\x5d\x87\xcc\x6a\xa6\xf5\x31\xce\xa5\xf2\xaa\xae\x3f\x23\xe7\x34\x8c\xe2\x0b\xc6\x61\x33\xbe\x60\x8a\x95\x5c\xa5\x8b\x67\xb4\x1d\x6c\x7b\x1f\xcd\xf8\x18\xd7\x28\xf8\x5b\x9d\xaf\x09\xbb\x6b\xa6\x26\x58\x19\xe1\x6a\x5a\x58\xb6\x79\xeb\xb3\x55\x9e\x2f\x2d\x05\x71\xd4\x29\x75\xd8\x93\xa7\x48\x94\xe0\x1a\xc2\x18\x26\x23\x5a\x19\x0a\x91\x94\x89\x96\x2c\x93\x9a\xb6\x68\x85\xd0\xb6\x4a\x9f\x35\xcd\xda\xee\x7f\xb3\x39\x7c\x54\x7a\x59\x9a\xde\x8d\x97\xba\xc1\x7c\x44\x6a\x7b\xcc\xd5\x80\x42\x11\x55\x48\x77\x85\x6d\x76\x63\x9d\x9c\x2b\x3a\x87\x86\x19\xf1\xe2\xae\xa2\xb4\x30\x41\xdb\xab\x8f\x8e\x3a\x11\xeb\x0a\x95\x66\x31\xb3\x34\x8b\x46\xf4\x4b\xd6\xe0\xc3\x91\x8f\xb3\xe8\x9a\xd5\x92\x85\x55\x9d\x5e\xdd\xca\x52\x4e\x3f\x2a\x5d\x8b\x86\xbf\x89\xd2\x64\xf0\xc4\x7b\xc4\x70\x50\xd7\x8f\x41\xe9\xc9\xb4\x4b\x64\x67\xa2\xa1\x66\x5c\x3e\xe8\x8d\xf7\x37\xb6\xd8\x14\x34\xd8\x92\xfe\xcc\x16\x6e\x34\x68\xb3\xa9\xdb\x3d\xed\xca\xdc\x65\xc8\x46\x06\x6a\x6c\xe3\x4d\x85\xca\xad\xda\x80\xb2\xec\xcd\xba\x42\x5e\x2f\x18\x14\xbb\x94\xc1\xf6\x57\x50\xee\x73\x06\x67\xf3\x23\x66\x04\x17\x04\xed\x2e\xdf\xe6\x2a\xa5\x4d\x4b\xa9\x68\x7e\x0a\xe3\x68\x62\xf7\x54\x1f\x0a\xb5\x86\xc5\x75\x0b\x2d\x4a\x65\xd9\xe8\x17\x62\x27\x86\x7c\x96\x5e\x41\x29\x5f\xb7\x1e\xfd\x37\x76\xde\xe2\x5c\x65\x0e\x24\x19\x31\x05\x06\xc9\xba\xa4\xf5\x2a\xad\x5d\x00\x3c\x24\xdc\x53\x0c\xe2\x43\x9a\x09\x89\x9e\x56\xcd\x27\x2a\xac\x1d\x26\x5c\x7c\x66\xd4\x2c\x35\x5f\x96\xf8\x5f\xe5\xeb\xc6\x86\x2c\xb8\x95\x6f\xf0\x72\xca\x66\x95\x10\x8e\x80\x5b\x9d\xa8\xe3\x5f\x5b\xb9\xb0\xe6\x8c\xd9\x46\x8f\x9e\xc3\xca\x4d\x14\xb4\x82\xc1\x6e\x74\x2d\xdb\xda\xb5\x6c\x6b\xd7\xa0\x4f\x59\xa9\x3d\xdb\x7b\x65\x2a\x67\xe5\x93\x78\xa6\xe1\x81\xc5\xef\x21\x1f\x19\xd7\x08\xd1\x4a\x7d\xe4\xac\x3b\x65\xa2\xac\x66\xd2\x92\x11\xae\x94\x37\x10\xff\x3c\x67\x9d\x15\xca\x38\x58\x64\x0a\xcd\x91\x48\x1f\xb7\x1a\x25\xab\xb6\xc3\x2c\x37\xee\x18\xd5\x89\x5c\x36\x57\xda\x78\x43\x87\x23\x8c\xa5\x87\xc9\x83\x3e\xd9\x07\x9c\x98\x73\x7d\x00\xc8\x1d\xbc\x90\x6c\xb7\xe0\x14\x54\xe6\x5d\xea\xdb\x76\x7c\xb0\xef\xd5\xd1\x04\x45\x2b\x4b\x56\xb6\xa5\xd6\xa8\x80\x29\x0d\xcb\x14\xdc\xa6\x23\xdd\xb7\x42\x44\x1c\x46\x45\xbf\x4a\xa9\x4f\xf6\x29\x91\x7d\xfa\x96\xa4\x77\x49\xdd\xaa\xb4\x22\x7b\x90\x74\x9b\x34\x17\x96\x4f\xe4\x1b\xe2\x07\x86\xe8\x73\xf9\x6b\x1d\x34\xec\x38\xd7\x47\xf4\x25\x0d\x87\xf9\xa8\xb1\x2c\x4f\x9e\x92\xd9\xd3\xe1\x12\x62\xc9\xac\x6b\xb8\xfe\x23\x6b\xde\xee\x0b\x2c\x8d\xe7\xec\x16\xf6\x47\x20\x7f\x6c\x7f\x0d\x65\x6e\x1e\x5d\x52\xc5\x1c\x2b\xac\xbe\x6e\xc3\xbc\x97\x40\x2d\x52\x30\x2d\x29\x40\xb6\x72\xc4\xc8\xa6\x54\x1d\x91\xbd\x3a\x18\xa5\x85\x6e\x2f\x28\x4b\xc3\xc2\xb4\xfc\x25\xd7\x3c\xe2\xb4\x8c\xe3\xad\x23\x7b\x67\x85\x17\xb6\x66\x75\x65\xf5\xcd\xa3\xcc\xfb\xf4\x77\x35\xb7\xa2\x27\xfa\xad\x4d\xde\x50\xb2\xff\x76\x61\x62\xa3\xa8\xc1\x36\x25\x3b\xdb\x94\xd5\xe1\xe2\x96\x8f\x1a\xe2\x6c\x2c\x7f\xd6\x49\xef\xc6\xd1\x6f\xb5\xca\x48\x4e\xd3\xaa\xf1\x62\xae\xf9\x45\xae\xcc\x1b\xd9\x23\xcd\x53\x90\xc5\xc6\x5f\x75\x18\x8e\xe8\x72\xeb\xbe\xbe\x55\xdc\xb0\x24\x8d\x67\xc9\x48\xf5\xd7\x3b\xf0\x65\xf5\x3e\xe7\xa6\xc2\x34\xcb\xbe\xfa\xab\xd5\xe3\x17\x29\x5b\xef\x4f\x60\x12\x48\x2a\xa6\xa1\x74\xc6\xa9\x5c\x9a\xa4\x7a\x30\x53\xb8\xb4\x61\xc5\x19\x67\x16\xe6\xa8\xd0\x8d\x33\x8b\x22\x50\x64\x0f\xb9\x96\xa2\x12\x6c\xd9\x22\x46\x26\x57\xf9\x2c\x68\x67\x19\x58\x95\x85\x93\x09\x4a\x84\x20\x59\x6d\x2c\x8d\x48\xb4\x5e\x5b\x77\xec\xd7\x30\xe9\x57\xdb\x38\xf0\x1d\x45\x8e\xd3\x86\xf0\x8f\x59\x98\x4c\xd2\x39\xc2\xed\xf7\x21\x67\x5e\x92\xde\x21\x2c\xce\x4e\x10\x1b\x07\x39\x9e\x0c\x1c\xb8\xcd\xe6\xe2\x51\x6b\xbe\x97\x98\x04\x55\xcc\x26\x2c\xe7\x4c\xcb\xea\xc0\x75\x59\xd5\xaa\x6e\xa0\x3d\xa5\xd7\xbf\xc1\xd2\xe2\x86\xf1\xea\x42\x2f\x4c\x30\xd5\xb9\x4d\x99\x39\x6c\x30\x04\xfc\xa0\x73\x50\xa6\x6c\x26\x4e\xce\x7e\xaa\x29\x28\x14\x6f\xc5\x2b\xf0\x94\xe6\xd2\x35\xe8\x26\x4e\xaf\xc3\xb8\x64\xbc\x44\x22\x9a\x21\x94\x6c\xda\x17\xca\xbc\xae\x2b\xff\x62\x2b\x2c\x43\xe2\x25\xe9\x04\xe0\xe5\x06\x89\x86\x9f\x5d\xad\xb2\x4d\xc7\x8f\xc2\x2a\xb1\xfe\xbd\x36\xd1\x95\x7f\xf1\x6a\x55\x67\x3e\x66\x59\x5f\xbb\xae\xf5\xb0\x5a\x25\xec\xae\x69\x79\x8a\x14\x62\x8a\x83\x11\x6e\x98\xde\x46\x55\x93\x8f\x2d\x21\x7d\x1e\xa2\xb9\xf4\x51\x61\x44\x7b\xab\x30\x22\xc7\x3a\x60\xeb\xc0\xbc\xe6\x9e\xfa\xb5\x5a\x15\x39\x8d\x87\x8b\x48\x54\x1f\x71\x35\x53\xab\x15\x5b\xaf\x51\x44\x22\x69\x2b\x2c\x9a\xa6\xa7\x44\x9b\xdc\x3d\x9c\x9c\xbd\xfd\xe1\xd3\xc9\xd5\xf9\x97\xcb\xd3\xf3\xb3\xb7\x9f\xae\x3e\x9c\xbc\xbd\xfc\xf1\xeb\xc9\x45\xd0\xf2\xc9\xc9\x3f\x2e\x4f\xce\xde\x5f\x7d\xf9\x7a\x7e\x79\x7e\xf9\xf3\x97\x93\x8b\xe0\x41\xc1\xf1\x75\x88\xee\xbf\xf8\x2d\x0f\x79\x82\xca\xc8\xa7\xf3\x8f\x57\x17\x97\x6f\xdf\xfd\xed\xf2\xeb\xdb\x77\x27\x57\xe7\x67\x57\xef\x4f\xbe\x7c\x3d\x79\xf7\x56\x14\x2f\xf2\x8a\x0c\x3f\x9d\x7c\xbd\x50\x8f\x5f\xdf\x9e\x5e\x6c\x66\xf3\xc9\xc5\xe5\xd7\x1f\xdf\x89\x86\x40\xf5\x1f\x4e\x3f\x9d\x88\xd4\xab\xb7\x5f\xbe\x7c\x3a\x95\xb9\xae\x2e\x4f\x3e\x7f\xf9\xf4\xf6\xf2\xe4\xea\xef\x5f\xdf\x7e\xf9\x72\xf2\x55\x14\x57\x24\x9e\x9f\x7d\xfa\xf9\xea\xe3\xa7\xd3\xcf\x9f\x4f\xbe\x5e\xbd\x3b\xff\xfc\xe5\xfc\xec\xe4\xec\x12\xba\x75\xf5\xfe\xe4\x87\x1f\x3f\x5e\x7d\x3d\x39\x7b\x7f\xf2\xf5\xea\xf2\xeb\x89\x2c\xfb\xaf\xff\xf3\xe3\xc9\xd7\x9f\xaf\x4e\xcf\x2e\x4f\x3e\x7e\x35\xed\xbd\x7a\x7f\xf2\xe1\xed\x8f\x9f\x2e\xaf\xde\x5e\xfc\x7c\xf6\xee\xea\xfc\x87\x8b\x93\xaf\xa2\xfd\xf0\xc9\xd7\x13\x55\xc8\xa7\xf3\xf3\x2f\x57\x9f\x4e\x3f\x9f\x5e\x06\x3e\xeb\x91\x93\xcf\x3f\x40\xe2\xdb\xf7\x57\x7f\x39\x3f\xff\xdb\x45\xf0\xb0\x26\x66\x60\x1f\xd6\xeb\x86\x5c\x21\x21\xa9\xe8\xcc\x37\x08\x95\x99\xe3\x8e\x25\x6b\x2a\x6f\xef\x68\x8a\xaa\x50\x69\x15\x98\x34\x8d\xed\x90\x61\xd7\x75\x36\x26\xd3\x91\xe2\x82\x53\x6d\x2c\xa4\x1b\x00\xbc\x61\x36\x6a\x00\xc2\x7c\x32\x10\xbf\xa9\xb4\x0d\x18\x66\xa3\xa0\xe5\x4b\x15\x15\x92\xe9\xa0\x49\x1e\x66\x23\xa9\x93\x14\x5c\x7e\xa3\xc6\xca\x3d\x65\x5d\x87\x23\xd3\xe1\x08\x87\x9b\x25\x78\x4a\xeb\x21\xaf\x6e\xd5\x13\xe1\xde\x87\x1f\xcf\xde\x01\x51\x98\xac\x57\xf0\xad\x20\xb3\x0b\xd1\xc4\x9a\xa2\x0c\xf4\x83\x2a\x4c\x3f\x63\x52\x97\x1b\x08\x5f\x67\x85\x07\xc0\x11\x53\x57\x9e\x32\xbd\xf1\x48\x8b\xd3\xdf\xdb\xca\xf4\xb1\x76\xa5\x6b\x69\x0b\xcb\xbc\xea\x6c\x36\xea\x46\x39\x2f\xec\xb7\x8d\x83\xfb\x52\x50\x55\xfe\x6c\xaa\xca\xc9\x12\x6b\xfc\xa6\x7c\xb8\x1c\x35\xa0\x21\x5e\x94\x2b\x6f\x0c\x2c\xfb\x53\x69\x8d\x38\xb1\xc4\xde\x34\x8a\x39\xcb\xea\xe0\x16\xea\x30\x37\x00\x3a\x5f\x22\x40\x31\x4f\xaf\xa2\xda\x6e\x8d\x4d\xb7\xc6\xa6\x5b\x53\xd1\xad\x31\x7e\x56\x9f\xc6\x64\x2a\x9b\xad\x6b\x19\x4e\x15\x61\x8f\x87\xd3\x11\x6e\x74\x04\x37\x95\xbc\xf4\xe4\xec\xa7\x47\xa4\x84\x2c\x4b\xb3\x9d\x59\x98\x4c\xe2\x28\xb9\x79\x99\xd9\x3f\x9c\x14\x7e\x8b\x19\xe5\x0d\xe3\xe7\x09\xd4\x5c\x07\x3e\xa1\xb6\xf5\x8d\x1c\x0c\x3f\x70\xb3\xa1\xbf\x57\xe0\x00\xe7\xb7\x2c\xcb\xa2\x09\xab\x29\x28\x53\x05\x6d\xcf\x2a\xe6\x52\x96\x98\x26\x70\xbd\x77\x19\x66\x37\xac\x64\xb8\x9c\x91\x04\x02\x5c\x34\x53\xd9\x1c\xbb\x9d\x82\x37\x96\x3f\x4c\xb6\x8f\xb3\x8c\xca\x91\x26\x3b\xf9\x72\x21\x86\xf6\x79\x96\xb0\x9b\x9f\xc5\xd1\xf5\xee\x24\xe4\xe1\x55\x38\x09\x17\x7c\x8b\x99\x6c\xfd\x67\xe6\x96\xe5\x0a\xec\x66\x4d\x09\x7f\xb8\x09\xf8\xd6\x0f\xde\x87\x3c\x7c\xab\xdb\x6d\x47\xa4\x6d\x75\x48\x7d\xf0\x60\xae\xad\x8b\xd7\x8f\x95\x6b\x2e\xe8\xdf\x8b\x8e\xbd\xac\x86\xcc\xaa\xe1\x05\xd3\xf7\xd8\x80\xd6\x4d\xaa\xf2\x88\xa8\x9b\xad\x4c\x3a\xec\xfe\xbf\x32\xc5\xa7\x99\x92\xd4\x3d\xe8\xd5\x04\x3d\xe8\x93\x10\x9c\xee\xc8\x38\x4c\xde\x85\x3c\x8c\xd3\x1b\xe5\xb7\xfd\xc3\xbd\x90\x63\x6b\xc0\xc3\x9d\x79\x3a\x61\xb1\x23\x2f\x81\x1d\xce\xe6\x8b\x38\xe4\x0c\x9e\xc1\x83\xfc\xf1\x32\x64\x63\xe0\x14\xf4\x16\xa3\xcc\x3b\xd3\x07\x43\xef\xec\xed\xe7\x93\x8b\x2f\x6f\xdf\x9d\x5c\x60\x12\x99\x1c\x98\x48\x33\xa1\xaf\xec\xe6\xe4\xfb\x02\x81\xe1\x0b\xdc\x2d\x47\xd3\x7b\x8c\x18\x6e\x3b\x7f\x2a\x2c\x66\x93\x1a\x84\x41\x4b\x2e\x49\x5e\x2a\x97\x24\x12\x3c\x41\x82\xf2\x1a\xd7\x45\x71\x16\x75\xa0\x0d\x00\x9c\x24\x1a\x2a\x41\x8e\x30\x0a\xb1\xeb\xaa\x68\xbb\xd0\xd2\x49\x98\xcf\x58\x16\xfd\xca\x30\x4a\xcc\x19\x2e\x15\x27\x38\x88\x20\x89\xc5\x21\x11\x5b\xc6\xf4\x2f\x61\x25\x9b\x3c\xe1\x45\xf6\xf5\xd9\x32\x89\xd3\x74\x51\x9b\x75\xce\x78\x18\xff\x3e\x2a\xd6\xa0\x48\xff\x01\x5a\x0e\x69\x5a\xa5\xe5\x28\x89\xf8\x06\x50\xcd\x55\xbe\x5c\xb0\xcc\x76\x89\x2c\x6e\x1c\xf5\x95\x6f\xcc\xc2\x9c\x7d\x06\xc7\x7d\xb8\xc2\x4e\x81\xe6\xd6\x64\x5c\xc7\x5b\x34\x06\x58\xc8\xa5\x67\x30\xfb\x14\xcd\x23\x1e\xf4\x48\x38\x1e\xb3\x05\x17\x3d\x60\xa0\x33\x14\x7c\xa7\x5c\x76\x60\xca\x16\x0c\xe9\x03\xc8\x17\xf9\x26\x5f\xb2\x5a\x70\x27\x76\x2f\x28\x51\xac\xa1\xbc\xd6\x6c\x1a\x3a\xa5\x54\x9d\x37\x8c\x17\xb9\x91\x5a\x42\xb2\xb0\x06\x43\x89\x37\x0f\x17\x68\x23\x1c\x51\x42\x99\xf7\x0d\x0c\x69\x52\x9a\x01\x3e\xa9\x29\x03\x25\x84\x49\x0c\x30\x83\x11\xa8\xd0\x9b\xbc\xf4\x1a\xbc\x92\x8b\xac\x32\x23\x44\xf6\x4c\x85\x34\xa4\xa6\xc9\x32\xe7\xc0\x0f\x51\xfd\xda\xd4\xaa\x04\x40\xac\x22\x59\x65\x4a\xbc\x8c\xcd\xd3\x5b\x66\xc2\xa1\xae\xcb\x88\x41\xe5\xbc\xa2\x75\x2a\x67\x88\x49\xb8\x26\x57\xa2\x55\x97\xe9\x3b\xd1\xc1\x2a\x8c\xd0\x86\xb3\x1a\xd3\x83\x0a\x0b\xf7\xc6\xd8\xd6\x81\x69\x8c\x65\x76\x8d\x24\xff\x0b\x9c\x36\xc3\x0d\x26\x0e\x28\x99\x64\x48\x5a\x75\xc9\xd4\xdc\x7d\x65\xe3\x34\x9b\xe4\x15\xc0\x09\xa2\xb0\x81\x42\x92\xcb\xe9\x5b\x16\xf3\x44\x14\x02\x89\xdd\x6e\xc4\x30\x19\x9b\x19\x56\x65\xa2\x18\x22\x3d\x5a\x76\x85\xf8\x21\x83\x90\xb2\x20\x87\x4e\xe8\x78\x73\xba\xb5\x53\x81\x9c\xc4\x5c\x4f\xa2\x2c\x11\x31\x32\xc5\x98\xe4\x40\x02\x3a\x09\x66\x64\x46\x1f\x26\xd1\xe4\xdd\x2c\x4c\x6e\x4a\x30\x2d\x19\x49\x49\x58\xb0\xd6\x98\x66\xc7\xf1\xeb\xac\x1d\x1e\xc7\xfa\x6a\x60\x2c\x3a\x96\x78\x52\x06\x7e\xcb\xb1\x34\x98\x9c\xd0\x52\x25\x63\xdc\xd8\xd2\xa2\x31\xb4\x88\xa3\xe1\x64\x84\xd7\xa9\xeb\x46\x28\x23\xa9\x58\x17\x51\x1c\x57\x9b\x53\xc6\x30\xb3\x8c\xf5\x13\x2f\x9c\x4c\x40\xe0\x3f\x97\x85\x67\x18\x8d\x61\xed\x93\x59\x09\x65\x1d\x3f\x2c\x9f\x43\x9f\x50\xa4\xa4\xc9\x8d\x52\xa1\xc8\x0d\xa2\x2c\x11\x70\x88\xd7\x84\xa3\x49\x2d\xf7\xd9\x24\x5f\xd1\x53\x65\x93\xf6\xbb\x79\xdb\x33\x3a\xb7\x26\x13\xc6\xd9\xb8\x46\x5a\x6a\xf9\x82\x21\xc6\xcb\xb9\xb9\x85\x7d\x94\x73\x55\xd9\x43\x0d\xeb\x92\x97\x62\x24\xad\xa7\xf7\x70\x83\xde\xd3\x12\xbd\xe7\x62\x14\x90\x0c\x18\x57\xe6\x59\x22\x9f\x5a\x04\xcb\x2d\x84\xcb\xa5\x53\x18\x4a\xde\x74\x56\xab\xe8\x4d\x47\x1c\xa8\xc0\xae\x73\x3c\x63\x62\x03\x3a\x4f\xc6\x0c\x23\x27\x94\x77\x17\x12\xef\x87\xe4\xcf\x23\xbc\xe3\x2d\x24\x17\xca\x52\x96\x78\xe3\x9a\xdf\x1a\xbe\x2d\x84\x15\x92\x88\x2c\xf1\x7a\x4d\x4a\x3d\xdd\xba\x1d\xd8\xa3\xc6\x0a\xa3\xea\x87\x44\x82\xd7\x8c\xd3\x65\xc2\x03\xa8\xed\x86\x71\x8c\x32\xe2\xc8\x2b\x3d\x07\xeb\x29\xd6\x38\x4d\xf6\x7c\x8b\x59\x91\x0b\x19\xd0\x14\x4b\x7b\x4d\x8d\x33\xa3\x9c\xdd\xa2\x41\xc8\xa9\xdd\x4f\x0b\xc1\x8d\x01\x5a\x59\xad\x04\xaa\xf8\xad\x83\x07\x22\xcb\x23\xef\x65\xbb\xaf\x04\xe7\x86\x96\xe6\xe7\x89\x11\x2e\xc5\x86\xc8\x0c\xa3\x65\x78\x1b\x7b\x7c\x80\xcd\x30\xe0\x1b\x24\x09\xc3\xc7\x40\x64\x2b\x95\xb3\x5d\x53\x00\x87\x18\x0e\xdb\x96\xdc\x62\x35\x03\x51\x9f\xae\xc9\x96\xa6\x6e\x8c\xa7\x1c\x4d\x6e\xaa\x4d\xb7\x08\xcd\x99\xb5\xe3\x9b\x36\xd4\x42\x6e\x97\x04\x62\xfe\x6c\x81\x98\x83\x40\xcc\x74\xbf\xf8\x30\x19\x19\xc7\x10\xb8\x4f\xb5\xc5\x5d\xdc\xc8\x24\x63\x4f\xa5\xa4\x9b\x01\xd9\x6c\x6c\x8a\x75\x92\x8f\xd9\x1e\x6a\x02\x69\x3d\x18\x32\xb4\x0d\x09\x05\xad\xfe\x24\x61\x1d\xcb\x8b\xe0\x9d\xf5\x0a\x6e\xca\xbc\x9c\x85\xd9\x78\xf6\x37\x76\x7f\x27\x1a\x52\xc9\xae\x93\x65\x56\x39\xb9\xb5\xe5\x7e\xb0\x5e\xc9\xcc\xe3\x34\x4e\xab\x4b\xf0\x9d\x48\x83\xd7\x56\xe7\xed\x26\x6d\x8e\xc3\xc3\xda\xca\xaa\x9b\xf3\xe8\x70\xd5\xb6\xe9\x89\x82\xa1\x61\x35\x6c\x4c\x5e\xf4\x95\x36\xe2\x9a\x5c\x56\xca\xba\x7c\x7e\x09\xb7\x9e\x5f\x6e\xe2\x68\x3e\xaf\x77\x05\x86\xbc\x3b\x00\x65\x54\xe7\xd5\x4b\x9c\x3f\xeb\x8f\xd3\xc5\x38\x9d\xb0\x9d\x71\x3a\x5f\x44\xf1\x16\x2d\x48\xe5\xec\xf2\x2c\x07\x63\x7d\x8a\x79\x86\xf3\xb1\xf5\xe6\x36\x62\x77\x75\x6e\xc9\xba\xb5\x19\x03\x60\xa9\x31\x2b\x25\x16\x55\xe9\xa4\xdb\x30\x8e\x26\x12\x9a\xf5\x79\x38\x1d\x45\xbe\x08\xf0\x29\x44\x1a\x5c\x55\x5a\x47\x36\x96\xdd\x46\x63\xf6\xbc\xe3\x5e\xa5\x68\xdd\x2e\xd1\xf3\xc7\xef\x0c\x9f\x73\x42\x34\x9c\xdf\x2e\x3a\x49\x27\xf5\xa3\x9d\xa5\x32\xb4\x84\x79\x27\xe6\x3a\x4d\x58\xc2\x77\xb5\xa6\x61\x27\x4d\xe2\xfb\x22\x03\x28\xe8\x1c\xe2\x64\xf9\xed\x62\xdb\x31\x94\x84\x24\x27\x4b\x12\x93\x31\x99\x92\x09\x99\x91\x05\x99\x43\x24\xd8\x6b\x72\x43\xae\xc8\x1d\x39\x21\x17\xe4\x9c\x7c\x27\x6f\x6b\x94\x9d\x97\x85\xe0\xf1\xcd\xb0\x64\x38\x24\xf0\xf0\xe6\x86\x4d\x2e\x55\xbb\x3e\x01\x66\x5c\xfc\x29\x4d\x73\x86\xd1\xd0\x31\x2d\x0f\x76\xd4\xf2\x70\x8a\x58\x29\xdf\x6a\x54\x97\x6c\x4d\x58\xe1\xd1\xf2\xf9\x25\x75\xe9\xb1\x09\x4c\xa5\xf9\x6e\x4d\xad\x9f\x9f\xac\xf5\xcb\x6f\xaa\x75\x07\x10\x4c\x8b\x7a\xbe\x3c\x59\xcf\x2f\x7f\x48\x3d\xbf\x3c\x59\xcf\xd7\x3f\x6c\xc6\xbe\x3e\x59\xd7\xbb\xff\xc0\x8c\xbd\x7b\xb2\xd6\xd3\xff\x40\xad\xa7\x4f\xd6\xfa\xfe\x89\x2b\x91\xdf\xa0\xe9\xd1\x6d\xa3\x9f\x08\xf3\x66\x2c\x5e\xb0\x8c\x46\x8c\x30\x8f\xe5\xe3\x70\xc1\x4e\xbe\x2f\x32\x96\xe7\x55\x28\x74\xeb\x28\xdf\xb2\x8e\xf2\xd1\x14\x81\x75\x02\x4f\xff\x72\xf9\xf9\x53\x61\x0d\x22\x9f\x15\x84\xf4\x32\x8e\x0b\xb0\x4c\xc7\x91\x96\x24\x3a\xaf\x36\x14\x16\x87\x7c\xf3\x7b\x2d\xb2\xe4\x4c\x9b\x7f\x15\x48\xf7\x96\xb9\x89\x54\xf2\x2d\x19\x89\xc1\x09\xda\x9b\xf1\x79\x7c\x11\x4e\x19\x1d\x33\x80\x76\x87\x18\x75\xe2\x79\x2a\x9e\xaf\xc0\xa1\xfe\x2b\x4b\x26\x2c\x63\x59\x6e\x0f\xfc\x3f\xb4\x47\x1c\xed\x88\x72\x32\xc8\x73\xc1\x38\x8f\xd9\xc4\xce\x27\xfb\x41\x39\xa0\x18\x27\xf4\xad\x81\x07\x9c\x88\x0d\x08\x81\xd0\x79\x0b\xd1\xad\x97\x59\xc6\x12\xfe\x75\x99\x7c\x4a\xd3\x05\x46\x78\xb5\xba\xf5\xae\xc3\xf1\xb7\xeb\x65\x96\xb0\xe2\x08\x64\x9d\x7e\x40\x37\xcc\x92\xc2\x42\x9f\x27\x42\x48\x9c\x47\xb9\xbe\x93\xd1\xa4\x56\x9d\x95\xe7\x5d\xd2\x25\xa4\x18\xc5\x3c\x19\x32\x8d\x62\x51\x53\xaa\x65\x9b\x00\x39\x29\xdc\x19\xcd\xc2\xbc\xb6\x05\x2a\xe7\xf3\x5b\x51\xe9\x4e\x5e\xb3\x04\xf2\xa4\xd2\xba\xb2\x0d\x5d\x9e\xc8\x6b\xa5\x9c\xf1\xe5\xe2\x24\xb9\x89\x12\x66\xcc\x7f\xec\x7c\xac\x62\x7f\x8d\x0a\x25\x3a\x79\xb0\xbc\x83\x83\x96\x0f\x0b\x43\x7b\x9b\x20\x47\x48\x1c\xc1\x4e\xba\xe4\x31\xe3\x0e\xb9\x4d\xca\x6f\x0b\x36\xa9\x73\xcc\x21\x87\x31\x3d\xac\x16\x60\xd5\xbb\xf9\x71\xa9\x6c\xd4\x21\x77\x05\x0e\x0a\x46\x9f\x11\xc6\x64\x06\xa5\x57\xfb\x22\x57\xee\x53\x3d\x91\xb9\x82\x38\x1d\x3b\x64\x52\xe9\x87\xc5\x86\x39\xfb\xce\x77\xa6\x32\x3c\xd4\xcf\x5b\x73\x8d\x67\x6c\xfc\xed\x3a\xfd\xee\x90\x3f\x6d\xcb\x13\x47\xc9\xb7\x1d\x9e\x3a\xe4\x7f\xb7\xe5\x88\x92\xc5\x92\x3b\x64\xba\x6d\x50\x2d\x8e\xa9\xb2\x2e\xb6\xb6\x5b\x34\x3b\xcc\x58\xe8\x90\xbf\x61\x72\xef\x9d\x9c\xfd\xe4\x3d\x69\xf8\xb1\x5a\x3d\x32\xde\xdf\xc4\x78\xff\x1b\x1b\xea\xb2\x30\x2e\xb7\x90\x98\x35\xe9\x99\x62\x2e\x42\xd4\x4e\x6e\x1d\xe2\xd8\xb2\x64\x30\x0f\xa3\xa4\x3c\xd9\x8e\x12\x1e\x83\x9d\x49\x3a\xdf\xb9\x5e\x46\xf1\x04\x26\x54\x1a\x3b\x96\xce\x64\xf9\x5d\xc4\xc7\x33\xc4\xbc\xeb\x34\xd5\xd6\xec\x82\xa5\x89\x0a\x3f\xa7\x13\x86\x1f\xc6\x61\xce\x44\x81\x11\x98\x26\x3a\x81\x5a\x4a\x27\x9e\x49\xfb\x41\x56\xe0\x5d\x47\xc9\x44\x5a\xc3\x35\xe0\xa3\x8c\xcd\xee\x27\x99\xa0\x4e\xfd\xd1\xd4\xd3\x69\x51\x9a\xd4\x7c\xa6\x41\x6a\x4d\xf6\x31\x84\x2b\xdd\xcc\xb9\x86\x98\xe0\xf6\x18\xd5\x77\xd9\xb1\xba\xb5\x75\xdc\xea\x47\xba\x28\xa3\xb6\xe8\x47\x57\xd7\x2f\x62\xb6\x3f\x6c\x2f\x5b\x48\x41\x97\x66\xe9\x56\xbf\xfe\x82\x30\x2e\xcf\xa7\xfe\x14\x9a\xe0\x90\x30\xd9\xf6\x5a\x88\xe9\xdc\x21\x69\x95\x6d\x58\x75\x6b\x00\xbb\x72\xc7\x54\x1a\x10\xe8\x95\x2e\xf9\x73\x38\xce\xd2\x32\x8b\xfc\xa8\x74\x02\x92\xdd\x8e\xc3\x45\x78\x1d\xc5\x11\x8f\xd8\x86\x1b\xc7\x06\x54\x8a\xbc\x98\xd7\xdb\x50\x46\x9d\x9e\xe7\xf7\xe0\xd6\xb1\x00\x58\xe4\xde\x72\x31\x09\x39\xfb\x4b\x9a\x7e\xc3\xe4\x01\x42\x75\x7c\x8a\xa6\xec\xdd\xfd\x38\x66\xef\x94\x91\x6b\x1e\x14\xd9\x4d\x8e\x71\x29\x07\x26\xe0\xba\x2b\x83\x41\x14\xb9\x8b\x44\x4c\x8a\x8a\x02\x19\x55\x22\x67\xfc\x9d\x66\x00\xca\xc1\xbc\xce\x89\xa3\x91\xd1\x1b\xcf\xac\xfa\xab\xcf\x6f\xcf\xde\x7e\x3c\xf9\x7a\x75\x71\xf9\xf5\xf4\xec\xe3\xd5\xa7\xf3\xf3\xbf\xfd\xf8\xa5\x06\x4a\x8f\x0d\x6c\xfd\x8d\xd1\x7c\x48\x33\x3a\x8b\xf5\xec\xcc\x65\xd5\x70\x3d\xb1\x0e\x8c\x60\xf2\x21\x43\x0f\xea\x0e\x23\xc8\x88\x3e\x6f\x05\x2d\x9f\xc8\x58\x75\xa6\x00\x67\x0d\xa8\x42\xb0\x17\x3e\xd2\x1f\xad\x8e\xf9\x35\x43\xc5\x05\x11\xff\xff\x91\xf7\xaf\x7d\x6d\xe4\xda\xbe\x28\xfc\xde\x9f\xc2\xd4\xee\x9f\x67\xe9\x41\x38\x26\xbd\x9f\xb5\xd6\x31\x51\x33\x09\x90\x34\x69\x02\x69\x20\x49\x77\x7b\xf9\x78\x15\xb6\x8c\x35\x53\x56\xb9\x55\x32\x09\x8d\xeb\xbb\x9f\x9f\x86\xae\x75\xb1\x81\x24\xbd\xd7\x3e\xfb\xbc\x49\x70\x55\xe9\x3e\x34\x34\x34\x2e\xff\x01\xf0\x31\xb6\xf2\x4e\x27\xa8\x15\x12\x52\x68\x40\x76\x6b\x4b\x71\x91\x21\x30\x77\x6f\xb3\x09\x04\x34\x34\x4f\x5d\xc3\x28\x68\xc3\x28\xe6\xa6\x92\x70\x10\xd5\x8a\xdf\x0b\x4c\xbb\xf6\xc3\xc3\x27\x51\xa0\x51\xa4\x4c\x58\x9e\x5c\xa7\xf4\x60\x29\x33\x48\xa6\xcb\xf8\x4d\x48\x24\xf5\xb7\xa8\x46\x20\x9b\xc5\x9b\x77\x90\x7d\x16\x72\xde\x61\x59\x5d\x0b\x57\xf4\x42\x6c\x70\xb9\x38\x7f\xab\x55\xd5\xf9\x23\xfd\x21\xa6\x5d\x5f\x64\xa3\xd3\xc5\xd1\xf9\xdb\x2b\x41\xe9\xa1\x45\xc6\x04\xad\xc3\xe3\x9b\xa8\x96\xdd\xd8\x16\xcb\x2f\xcd\x21\x01\x1c\xff\x15\x13\xb9\x3c\x03\xcd\xc1\x23\x1b\x5c\x57\xc1\xc6\x56\xd5\x07\x5f\x3f\xca\xe3\xee\x9a\xf2\xfa\xc8\x39\x07\xe1\xea\x03\xa3\x9f\x09\xed\x9e\x9c\x7d\x38\xff\xe5\x98\xd0\xee\xc1\x75\x2e\x45\x32\xae\x6f\x38\xda\x1d\xd1\x2f\x0b\x2a\x18\xa8\x78\x52\xc3\x51\x69\x17\x12\xe7\x2a\x21\xfd\x96\xda\xab\x03\x3c\xa5\x42\x06\xbf\x83\x3f\xd5\x85\xc3\x38\xfa\xd1\xee\xcf\xfa\x72\x45\xbb\xae\x3d\x42\xbb\xa7\x8c\x7f\x0a\x7f\x5f\xd1\x2f\xf2\x40\xd0\xc4\xfc\xf9\x4a\x09\x61\xaa\x88\x91\xb5\x88\xbf\xb0\x81\xcf\xfb\x61\xb6\x54\x7d\x52\x9d\xbb\x08\x8e\xa7\xd0\x6e\x7f\x46\xee\x01\x9f\xe3\x67\x26\xfb\x3d\x0c\x7f\xbe\x65\x79\xde\xef\x05\x99\x30\x4f\x3d\x6b\x01\x23\x85\x6d\xc3\xa0\xda\xa1\x98\x22\xcc\xc0\x21\xe4\x23\x4d\x3e\xbd\x4d\x16\x38\xd3\xd9\xe7\x92\x4a\xce\x64\x6d\xdd\x66\x60\x7d\xf0\x1c\xca\x7b\x6a\xef\xc7\x67\x5d\xd7\x85\xed\x6d\xcc\x89\x8b\xe6\x00\x73\x90\x0b\x0d\x02\xad\x61\x9f\x16\x38\x43\x08\x33\xd8\x98\x90\x8c\xac\x6f\xca\xff\xcc\xa4\x2a\x1e\xa4\xc9\x18\x8d\xd8\x84\xc8\x2e\x9b\x60\xf5\xb7\xea\x1b\xc9\x70\x52\xac\x9b\xb0\x33\x98\x9c\x57\xe4\x34\xbe\x67\x93\x7e\x94\xff\xff\xb3\xff\xeb\xfa\xcb\x25\x8f\xf0\x75\x9a\x8d\x3f\xf5\xff\x71\x1f\x69\xc8\x91\x3c\xea\x0f\x86\x38\x72\xa9\x4f\xd4\xef\xc1\x2e\x1e\xfc\xd8\xc3\x83\x1f\xff\x0d\xf7\x86\x78\x30\xf8\xf1\x39\xee\x0d\x87\x70\x6b\x1b\x0e\x87\x38\x9a\x25\xf9\xf1\x6d\x92\x46\xfd\x69\x92\xe6\x14\x47\xcb\xc5\x6d\x22\x54\xc1\x80\x35\x0f\x8b\x7f\x60\xd5\xc9\xfe\xbd\x46\xb7\x06\x07\x86\x68\x91\x8c\x3f\x25\x37\x34\x7f\xb6\x5e\x95\x9b\xb2\x6b\xa7\x94\xcb\x9f\x29\xa1\xa4\x3b\xbb\xce\x23\xad\x11\x2e\x11\xc1\x2b\x18\xe2\x5f\x6a\x49\xf3\xae\xdf\x45\x97\x16\x4a\xe5\xe0\xe2\xf5\x65\x84\xf0\xfb\xb5\x1f\xfc\x7c\x70\x39\x7a\x79\x7a\x7e\xf8\x4b\x84\xf0\x4b\xfd\x95\xc3\x61\x39\x3a\xb9\xb8\xfa\x7d\x74\x75\xf0\x3a\x42\xf8\xe7\xca\xbb\x93\xcb\xd1\xd1\xc9\xe5\xbb\x83\xab\xc3\x9f\xd5\xf1\x7a\x70\x75\x75\xa1\x1a\xfa\x50\xf9\xec\xe5\xf9\xfb\xb3\x23\xf5\xe2\x4f\xb2\xec\x1e\x66\x82\xaa\x0d\x6a\x9d\x4b\x96\xdd\xc3\x19\x4b\x27\xea\x51\x7e\xa9\x7d\x6f\xf0\xb2\xab\x7e\x5e\xaa\xa5\xf0\x8f\xc0\x58\x04\xa6\x19\xfb\x2c\xe9\x6a\x17\xc1\x03\x20\x4b\xff\x65\xf5\xb7\xaa\xec\x2d\xfb\xc2\x38\x8e\xe3\x2b\x72\xcf\x72\xb7\x11\x15\xa3\xf9\x3a\xe7\x96\xc1\xcf\x43\x8b\x78\x38\x78\x09\x08\x93\x13\x43\xe0\x57\xc9\x0d\x8a\xcd\x47\x1f\x86\x44\xeb\xfc\x05\xd5\x42\x5e\xd8\x10\x94\x99\x30\x21\xef\xa0\x88\xa9\xca\x82\x3f\x40\x07\x62\x54\x14\x68\xc0\xba\xef\x2e\xce\xdf\x1d\xab\x75\x38\x3a\x39\x1a\x1d\xfe\x7c\x70\xf6\xfa\x78\xb8\x26\x96\x7a\xf0\xf3\x30\x34\x58\x0e\xfe\x1a\x62\x4e\x7c\x7c\xd8\xbe\x18\xd0\x61\xdf\xb2\x8d\x00\x8f\xc8\xff\x3d\x18\x77\xdf\xbf\x3b\x52\x77\xa9\x8b\xe3\x57\xc7\x17\xc7\x67\x87\xc7\x47\xa3\x0f\x07\xa7\xef\x8f\x87\x9d\xce\xa6\xb7\xf1\x73\x42\x6a\x29\xd3\xf7\xc1\x1e\xca\xb4\x3d\xd4\x00\x4e\xa8\x13\xfb\x4a\x3d\x39\x90\xb2\x11\x9e\xc2\x59\x36\x95\x24\x7b\xd5\x15\x34\x99\x1c\x9d\xbf\xad\x7d\xed\x38\xd9\x52\x7d\xac\x96\xf9\x38\x85\xcd\x6b\xfc\x4a\xb0\x20\x12\x73\x12\xcd\xa4\x5c\xf4\x9f\x3d\xfb\xfc\xf9\x73\xf7\xf3\x8f\xdd\x4c\xdc\x3c\x7b\xde\xeb\xf5\x9e\xe5\xb7\x37\x3a\x2f\xb3\x0b\x9f\x7a\x7f\x71\xa2\x3d\x7b\xa6\x3e\xde\xcb\x1e\x5e\x28\x16\x4a\x62\xc8\x08\x03\x49\x0b\x27\x84\x05\x48\x30\xce\x47\x6e\xb5\x8a\x12\x29\x05\x24\x9c\xda\x17\x76\x90\xe0\xcf\x14\x27\xa8\x2f\x06\xc9\x50\x0d\x69\xc2\x26\x17\x74\x4c\xd9\x2d\x55\xaf\x4b\xea\x10\xf7\x5a\x11\x4c\xf5\xc5\x67\x96\xa6\xcd\x6f\x26\x6c\xf2\x1e\xa4\xe6\xc6\x0a\x55\x39\xfd\x7a\x6d\xb9\xca\x0b\xa4\xf8\x8c\x3f\xb2\xfe\xc4\x7f\x6e\xca\x5d\x57\xb5\x27\x44\x05\xfe\xb3\x2b\x68\xb6\xa0\x5c\x5b\x79\xc3\x6d\x67\x8e\x1b\xb5\xfb\x16\x59\xce\x54\x4d\x49\xfa\x2e\x11\xc9\x3c\xef\x0f\x86\xe6\x32\xf2\xd1\xb2\xec\xcb\x8f\xd7\x7f\xe6\xa7\xb3\x0f\x8f\x62\xd9\x9b\xb8\xf2\x77\x62\xc5\x74\xbe\x90\x77\x96\x17\xe3\x1f\xc8\x9f\xce\x4f\x2e\x4d\xee\xb2\xa5\xec\x7f\xc4\x63\xc7\xab\xfa\x03\x63\x80\x73\x5a\x94\x21\x96\xc9\x8d\x6e\xda\x68\x3a\x9c\xc3\xdb\x4b\xc6\x27\x8c\xdf\xa8\x42\x8a\xc4\x22\x1c\x41\x29\x3a\x89\x70\xc4\xf8\x84\x4a\x2a\xe6\x8c\x6b\x8d\x92\x11\x84\xd5\x2b\x99\x5c\x1b\xbb\x5f\xa4\x28\x39\xc2\x51\xb2\x94\xd9\x34\x1b\x2f\x73\xc8\x62\xa3\x13\x30\x44\x38\x9a\x66\x62\xae\xda\xd7\x77\x12\xa7\xd6\xb1\x55\x29\x49\xbf\xd4\x8c\x7a\x30\x61\x93\x13\x9e\x53\x21\xcd\xd6\xfa\x0a\x5f\x19\xaa\x4b\x76\x4b\x75\x13\x27\xd3\x6b\x38\xa4\xe0\x15\x2a\xf0\xb8\xe6\x09\x02\x4c\x24\x77\x4c\xc4\xcf\x4c\xa9\x09\xf3\x14\xe9\x53\xd2\x49\x53\x3f\xe0\x1f\x9e\x42\xbc\xcf\xdc\xdc\xe8\xac\xdf\xaf\xc9\xcc\xe0\xaa\xef\x37\x44\xa6\x6a\x3c\x74\xf5\xdd\xef\x9e\x16\x96\x20\xd6\xd9\x33\x68\x23\x65\x04\x5a\xb8\xc7\xd1\x86\xf6\x87\x34\xcb\x6c\xf3\x4f\x99\x9f\x79\x72\xab\xa9\x43\x98\xf5\x4e\x8c\x78\x0d\x3f\x28\x1f\x1b\xc2\x52\xbf\x4c\x82\x64\xfd\x83\x67\xc6\x50\x6a\xdf\x4a\x38\x5b\x23\x1c\xcd\x28\xbb\x99\x49\x20\xc1\xc5\x12\xf0\xdb\x23\x1c\xa5\x09\x98\x11\x53\x96\x83\xa6\x53\x57\x3a\x4f\x14\x0d\xce\x99\x6a\x6e\xbe\x4c\x25\x5b\xa4\xd4\x13\xe5\x22\x91\x6a\x63\x45\x38\xca\xd9\x5f\xea\x41\x2e\xe9\x22\xc2\x11\x98\x29\x22\x1c\x7d\x66\x13\x39\x8b\x86\x58\x9b\x2d\xa2\x48\xd3\x29\xac\xbb\x1a\xe4\x52\xd2\x09\x8a\xef\x1b\xef\x05\x91\x9a\xc3\xa8\xc0\xe5\xac\x92\xde\x75\x47\xbf\xaf\xa3\x80\xe8\x63\xd3\x2e\xae\xd5\x94\x5b\xca\xd4\xe8\xad\xb4\xcd\x78\xfb\xb5\x7d\xf7\x7a\x40\x87\x06\x41\xcc\xea\x65\x0c\x31\x98\xfd\x11\x9b\x95\xd3\xe9\xa6\x4c\xea\x61\x6a\x52\x4c\x09\x74\x5f\x04\x15\x99\x4b\x3b\x21\x84\x16\xb1\x44\x1a\xc5\x02\x61\xa1\xf8\x8a\x9a\x23\xed\x3b\x6e\xe6\x4d\xff\x98\x33\xfb\x47\xf2\x45\x07\x0e\x2b\x42\xf7\x57\x88\xdf\xf1\xef\x4f\xa2\xf4\x80\xf8\x34\xad\xff\xb2\x96\x86\xd7\x91\x2e\xa8\x62\x87\xd8\x91\xb8\x23\x61\xaf\xa7\x6d\xa2\x62\x91\x81\x79\x7f\x9c\x81\xfd\xdf\xd0\x48\x4e\x53\xad\x15\x3b\xe6\x93\xf0\xe7\xa5\x4c\x44\x03\xc5\x7f\x16\xc9\xc2\x13\xa3\x26\x7a\x4d\x4e\x43\xac\xea\x37\xce\xf7\x59\x9a\x97\xe7\x0a\x6e\x5e\xbf\xe0\x5f\x9e\x3e\x55\x30\x1e\x3d\x53\xbf\xda\x03\x6a\x79\xf4\xcb\x97\xf4\x3f\x38\x6d\x3c\xa0\xa2\x8e\x33\x00\x56\x6f\x17\xff\x86\x07\x3f\xfe\xbb\xbe\x59\x3c\xff\x77\xac\x6e\x17\xbb\x43\x73\xbd\xc0\x83\x41\x64\xcb\xe1\x88\xa6\xb9\x1a\xd1\xe0\xbe\x7a\x3d\xf9\x0f\xbc\x6b\x6e\x23\x6a\x7b\x89\x64\xae\x98\xa8\x3e\xea\x70\xed\x63\x68\xa1\x87\x07\x51\xca\xf8\xa7\x2b\x26\x53\x1a\x0d\x87\x0d\x25\x87\x0f\xdc\x6d\xd8\xf4\x7b\x5d\x6a\x8c\xd9\xc0\x9d\xa5\x6f\x6c\xe0\xff\x54\x50\xfa\x17\x8d\xef\xed\xf2\x34\xec\xf8\xf7\x67\x47\xc7\xaf\x4e\xce\x8e\x8f\xa0\xe4\x6f\xd5\x92\x05\xc2\x7f\xd4\x4f\xe6\x5f\x3d\x71\x26\x11\x16\xd9\x52\xd2\xfe\x1b\xac\x3d\x8e\xcd\xff\x79\xff\x0d\xfe\x73\x49\xc5\x5d\xff\x0d\x8e\xc6\xda\xa4\xb7\xf3\x79\x46\x79\xa4\x89\x49\xaa\x89\xd3\x7f\x0a\x9a\x9a\x67\xe6\x00\xb6\xbf\x14\xe3\xd4\x7f\x6b\x25\x82\x76\x91\x8e\xf4\x8f\x08\xa7\x59\xa2\x36\x81\x79\x6a\x7e\xf9\x63\xd8\x3c\xf7\x07\xbc\x31\x7a\xaa\xd3\xb8\x69\x23\xcd\x04\x9d\x2a\x1e\x0c\x2b\xaa\xce\xfb\xb4\x2c\x13\x18\x46\x3e\xf4\x67\x4f\xe9\x2c\xd1\x7d\xf2\xdd\x28\x49\x16\x22\xe1\x5a\x3e\x63\xfc\xe6\x84\x57\x9f\x9c\x2f\x55\xb5\xf4\x96\x72\x9d\xbd\x2f\x1a\xa7\x6c\xfc\x29\x7a\xfa\x95\x2a\xcc\x76\xeb\xaa\xd3\xa0\x42\x9a\x91\x3b\x60\x86\x11\xe3\xb7\xd9\x27\xf0\xef\x33\xce\x2c\xea\x84\x98\x1b\x75\x3a\x8a\xa3\x1d\xeb\xe3\x82\xf0\xc8\x2c\xdf\x05\xac\xb3\x86\x24\x49\x59\x92\xa3\x38\xb2\x85\xbb\xe1\x27\xaa\xd1\x6a\x31\x01\xb7\xd0\xcd\x85\xe1\x13\x55\x50\xcf\xf4\xc3\xe5\xf4\x77\xae\x98\xf0\xfd\xf3\x07\x5d\x04\x4f\x23\x1c\x35\x74\x27\x0a\xfc\x70\x42\x2f\xc6\x2e\x94\xf1\x5e\x9f\x84\xbc\xd1\x08\x14\xe5\x99\xa0\x05\x42\x78\x64\xa8\xbd\xda\xac\x76\xf7\xc4\xfa\xff\x7c\x6d\x4b\xf0\xda\xb8\xa2\xea\x1f\xb9\x6b\x77\x4b\xb5\xab\xae\x99\x12\xfe\x92\x20\xd3\x23\x3c\xd2\xdb\xaa\xda\x20\x3c\x5d\xdb\x0e\xbc\x2d\x8f\xe8\xb7\x7e\x59\x85\x54\x60\xed\x4b\xef\xc4\xd8\x47\x89\x0c\x5b\xbb\x4d\xe2\x42\x09\xb2\x8d\xe5\x47\xa6\x4a\x22\x31\xa4\x99\x81\xe7\xa5\x7d\xaa\x98\x8f\xde\x43\xb5\x81\x05\x7b\x5f\x2d\xa3\xdd\x69\x71\xbd\x2b\x1a\x04\xcd\x7c\x61\x5a\x09\x4a\xc3\xe4\xad\x69\xa4\x91\x3a\x34\xa5\xc1\x1f\x76\x19\xa3\x91\x99\xe7\x60\xa3\x97\xb8\xdb\xba\x05\x68\x68\xc0\xa5\xbd\xb7\x7d\x1d\xb1\xfc\x00\xba\x67\xa2\x1a\xd4\x65\xf3\x25\x3d\x78\x52\x8f\x6b\x7b\xe7\x6f\x1f\x06\x76\x88\x3c\xd5\xa6\x41\xec\xdb\x22\x44\xa2\x0a\x3d\x98\x51\x4a\x18\xa5\xfb\xdd\x98\x43\xdb\xf4\xaf\x8c\x63\xa7\x5b\x1c\x94\xbb\x0c\xd0\x2b\xd1\xb5\x16\x3a\x83\xec\xa5\xae\x71\x03\x81\xe7\x2e\x4c\xa8\x25\x89\xd8\x77\xb9\x4f\xda\x11\xea\x6b\x6f\x7d\x3d\x5f\x3e\x2f\xbc\x89\x5d\x32\xb3\x87\x0d\x56\x96\x9e\x42\x17\x1d\x60\x98\x12\x4e\x48\x6f\x2f\xf1\x80\xde\xc9\xf6\x36\x82\xc4\xd8\x76\x94\xaf\x32\x01\x53\x14\x73\xcc\xb0\x1c\x24\x43\x4c\xb1\x70\x38\x7d\xbd\x96\xdf\x56\x95\x53\xa3\x4e\x01\xee\xd0\x09\x09\xa5\x71\x67\x38\x68\xe3\xf0\xcb\x4e\xa7\xb2\x61\xac\x34\x1a\xb6\xbb\xc3\x78\xa4\x56\xa9\x7a\x60\x7d\x4b\x6f\x34\x74\x7c\xad\x3f\xab\x55\xa9\x3f\x68\x4d\x87\xb2\xa5\x8c\x34\xdd\xc0\x11\x56\xa5\x9a\x2d\xd0\x63\xb1\xfc\x92\x29\xf1\xf6\x50\x9d\xa4\x28\x00\x42\xec\x85\xb8\xc5\xd7\xcb\xeb\xeb\x94\xba\x18\x80\x85\x80\x43\xf3\x48\x0b\x8c\x36\x64\xcd\xde\x89\x35\x79\x63\x46\xb6\xf8\x6a\x15\x8d\x72\x9a\x4e\x21\x09\x70\xcb\x25\x53\xe8\x74\x58\xa7\x43\x2b\xd5\xc4\x08\x03\xc4\x83\x54\xaf\x72\x99\x2d\xde\x89\x6c\x91\xdc\x24\x7a\x4a\x70\x95\x45\x7a\x42\x5f\xbb\x03\x54\x7b\xac\xbc\x21\x42\x22\xa4\x36\x32\xc5\xd2\x6b\x5e\xa2\xd7\xd4\x42\x50\x81\x30\x84\xc7\xe4\x1e\x9e\x1b\xb5\x51\xae\xa5\x39\x10\x43\xb2\x20\x44\x69\xd1\x9d\xa6\xe0\xb3\x77\xe2\x7c\x79\x91\xba\xa2\x19\x03\x4f\xc6\xbb\xce\x77\x65\x8c\x6d\x88\x03\x24\xfd\xa5\x57\x6e\xf5\xe2\xb1\x71\x72\x4d\x91\x9a\x14\x88\x2d\xa8\x7e\x53\x0d\x44\xe3\xb8\x9c\xa6\xde\xee\xb3\x86\x18\x15\xda\xf5\x84\x02\x59\xea\xed\x8f\xab\x2c\xb6\x55\x15\x05\x56\x72\xde\x77\xe0\xff\x46\x02\x2e\xb1\x50\xf3\xd7\xcf\x20\x49\x86\x84\xaf\x38\x53\xe2\x52\x30\x9b\xa2\xeb\x98\x5c\x3b\x7c\xa6\xea\x0a\xc5\x3a\xb3\xc4\xb2\xbc\xc4\xa2\xb4\xc4\xbc\x79\xaa\x78\xd7\x4e\xf7\xfb\x8b\x53\x13\xc5\x0d\x41\x0f\xa6\xa9\xfa\xa4\x54\x86\x7f\x20\xe8\x29\x24\x3c\xf6\x43\x35\xc7\xf2\xba\xd3\x42\x0b\x52\x0e\x9f\xb4\x5a\x8f\xc6\xad\xae\xa6\x02\x0f\xab\x0e\x44\x2c\x57\xaa\xde\xcf\x26\x21\xcb\x32\x6f\x5a\x9e\x29\x49\x7a\x7b\xf2\x05\xb5\xec\x59\xda\x38\x40\x41\x6c\xd6\x08\xdd\x25\xe1\x36\x58\x61\x39\x47\x30\x55\x6a\x55\xfa\xd1\xff\x50\x97\x8d\x92\xfe\xb9\x39\x2a\xc6\x89\x3a\x1f\x67\x94\xb7\x42\x74\x72\x78\x9b\x53\x19\x07\xb7\x05\x5a\x82\x56\x87\x4b\x25\xc0\xaa\xcb\x4e\x47\x95\xb2\x27\x0b\xba\x97\x44\x76\xf3\x94\x8d\xa9\x35\x93\xbc\x1f\xae\x56\xbe\x46\x7f\x3d\xc5\xb2\x9b\xcf\xd8\x54\xc6\xc8\x25\xda\x19\x48\x97\x1a\x7d\xd8\x82\xe8\x50\x96\xff\xea\xf9\xc0\xbe\xaf\xc6\xd0\xbb\xec\x2e\xb2\x45\x8c\xba\xa0\x16\xc8\x4d\x18\x53\xf8\xc1\x1b\x84\xe1\x94\x71\xf6\x0a\xf7\x81\xa1\xa2\x37\x61\x21\xf3\xcc\x77\x0c\xfb\x77\x46\x74\x7e\x53\x7b\x96\x47\x58\xa2\xc2\xe1\xc5\x94\x8f\x65\x58\x3a\xd3\xf8\x4f\x3d\x97\x94\x7d\xc0\x83\x81\x6e\xc2\xc9\xe9\x74\x58\x79\x0e\x2c\xf2\x3f\x8c\x8f\x30\x33\x72\xcc\xf5\x44\xa0\xc2\x04\x95\x94\x2d\xd2\x7f\xe0\x3f\x1e\xa1\x0c\x31\x1b\x53\x5f\xdc\x43\x5d\xff\x1f\x65\x5d\x7f\x4d\xab\xaf\x75\x0c\x79\x64\x74\xfb\x94\x56\x4c\x84\x17\xc7\x87\xe7\x6f\xdf\xbd\xbf\x3a\xd6\x96\x46\x6f\xb1\x96\x34\x30\x0b\x05\x28\xbd\x06\xfc\x1f\x62\x11\x05\x25\x49\xd7\xe5\xa2\xfe\x2e\xb1\xeb\x03\x4a\x1b\x8c\x7a\x05\x16\xd4\x6c\xdf\xe6\x0d\xb3\x07\xbe\xc0\xff\xca\x18\x47\x71\x5d\x7e\xa8\x18\xfc\xa8\x6a\x04\x42\x43\x61\x3d\x8c\xdb\x80\xa0\x58\x80\x1f\x33\xfc\x34\x96\x12\x62\x8e\x7f\x4e\xd7\xe3\xf9\x9b\xb8\x42\xe8\x9d\x4d\x69\x51\xaf\xc6\x85\x51\x07\x4e\xbb\xd5\x04\x0e\x2e\xa6\xc9\x8e\x35\xac\xba\xa8\x22\x15\x32\x5a\xc1\x95\xe7\x70\x0d\x80\xa3\xef\xa1\xee\xe6\xc6\x67\xe2\xeb\xb2\x5f\x44\x26\xbd\x43\xee\x52\x51\x68\xff\xf3\x26\x00\x1c\x38\xbe\x02\x38\x6a\x18\x43\xc9\x71\x23\xa3\x3a\xae\x9e\x92\xfb\xa8\x13\xf5\xa3\x4e\x32\x5f\xec\x45\x38\x7a\xa1\xfe\x4e\xa5\xfa\xf3\x27\xf5\xe7\x8d\xfa\xf3\x1f\xd1\x3f\xfa\x51\xe7\xcf\x65\x06\xcf\xff\xa1\x9e\xff\x8f\x2f\xcf\xff\x5d\xfd\xf8\x2f\xfd\xe3\xdf\x7a\xea\x07\xd1\x3f\x7e\x3c\xda\x03\xed\x34\x79\x36\xe8\xbc\xf8\x29\xfa\xc7\x7f\x91\xe1\x33\xbc\x2c\xfd\xbc\xf1\x33\x9a\x86\x33\x9a\xd0\x01\x1d\x06\x69\x79\x68\x05\xfc\x9c\x10\xba\x4f\x49\x14\xf5\xeb\x7e\xfa\x90\xd7\xc1\x39\xd7\x23\x0c\xa0\xff\xb0\x38\x3e\xb6\xbd\x5a\x9d\xc1\x1d\x69\x00\x22\x6b\x0a\x44\x30\x13\xae\xc3\xe2\x1f\x5a\x6c\x9f\x39\x62\xd3\x72\x6b\x9f\x3b\xb3\x19\xd6\x5f\xce\x2b\x70\xf3\xfa\x7b\x9d\x22\x0a\xdb\x4a\xac\x6f\xda\xe3\xab\xb1\x25\x2a\x15\x79\x36\xb9\x36\x2e\xb8\x52\x91\x2b\xf1\x73\xc2\x27\xa9\x4e\xf0\xe8\xcf\x68\x77\x48\xb7\x9d\xe9\xa8\x8a\xa8\x6b\xf1\x33\x05\x38\xe4\x74\x8d\xdf\x21\xce\x08\xef\x82\x5a\x17\xcc\xcf\x37\x54\x86\x2e\x76\x71\x56\x8f\x80\x0e\xd3\xba\xc9\xee\x44\x27\x25\x39\x05\x6d\x68\x11\xf7\x70\x82\xf6\xef\x01\xa8\x8a\xf6\x05\x0e\x1d\x46\xfb\x09\xd6\x71\x80\xe0\x8f\x05\x4d\xbd\x61\xa0\xb2\xb2\xc5\xe3\xac\x9c\x10\x04\x15\xfd\xc7\x54\x05\x7a\x78\x3f\xb5\xef\x12\x21\x59\x92\x3e\x7e\x89\x4c\x01\xb7\x42\xf5\x3c\x0b\x6b\x8a\xdb\x19\xb5\xb9\xf3\xf0\x6c\x1d\xc1\xa2\xfb\x4d\x04\xba\x10\x74\x91\x08\x7a\x20\x6e\x9a\x82\x18\xb4\xbb\x87\xec\x4e\xd8\xe4\x30\x34\x0b\x95\x8d\xeb\xd2\x1b\xf8\xf5\x64\x36\xbc\x3e\xac\x71\x65\xc8\x8e\xd1\x60\xaa\x97\xde\x86\xbf\xb6\xb6\x26\x13\x7f\x99\x8f\x2f\x02\x56\xe0\xc2\x80\xc1\x35\x02\x12\xa6\xd2\xae\x8e\x5c\x28\x8a\x0d\x0e\x75\x33\xcd\x43\xe7\x94\xdc\x97\x48\x0d\x0c\xc9\xfa\xc1\x55\x72\xa3\x7e\x05\xb3\xa8\x7e\xea\x23\x08\x7e\x19\x87\xfe\x1a\x48\xa3\xd7\x7d\x83\x5b\xf0\xd6\x2e\x36\x17\x5c\xfb\x53\xd7\x71\x98\xa4\x29\x15\x41\x83\x97\xe3\x6c\x01\x1e\x85\x81\x4f\xf1\xda\x36\x74\x1d\x27\x26\xf9\x90\x2a\xf5\x59\x24\x8b\x85\xb6\x8d\x87\x88\x11\xea\x16\x58\xa1\x3a\x37\x93\x01\xa0\x19\x6d\x96\x31\xb4\xb8\x5b\x40\x48\x19\xe3\x33\x2a\x98\xcc\x4d\x14\x99\xb0\x72\x34\x27\xa2\x29\x67\x6a\x2d\xdb\x52\x19\x5f\x99\x9b\x65\xd2\x1a\xae\x8c\xa8\x0d\x32\x6d\x95\x9e\x7a\xf0\x4f\x9d\x1a\x9c\x7e\x6e\x8f\xbd\xa3\xc7\x45\x96\xc9\x0b\x1b\x5a\x1b\xeb\x34\x32\x22\x53\x73\x8a\x29\xc2\xa1\x8b\x3e\xc5\x36\xcf\x69\x1f\x2e\xda\x23\x1f\x2e\x0b\xe6\x3a\x64\x3d\xdb\xbb\x36\x22\x66\x01\x9b\x56\xf1\xc1\x75\x0b\x80\xee\x13\xf3\x35\x31\x98\x0a\x96\xec\x30\x55\x22\x9d\x48\x74\xa2\x66\xbd\x77\xae\x04\xb5\xd2\x4b\x6c\xcb\xe1\x7b\xed\xde\x60\xdb\x84\x5a\xec\x4b\x0d\xa4\x93\x28\x32\x9b\x76\x8f\xdf\xbe\xbb\xfa\x7d\x74\x70\xf1\xfa\x12\xdb\x6c\x53\x16\x82\xc8\x85\xa5\x18\x27\x6a\x64\x72\x8d\x1b\x61\x3a\x46\x78\x49\xf2\x4e\x27\x37\x51\x63\xfe\x2f\x93\x3c\x2c\x25\x99\xfd\xb2\xf4\x42\x0d\x7d\xd9\xe9\x2c\xb7\x08\x49\xf5\x8a\x4d\x48\x8a\x67\x64\xd2\x9d\x67\x4b\x2e\xdf\x65\x8c\xcb\x56\xd2\xa5\x10\xdd\x44\xee\xfd\xc3\xfe\xec\x11\x13\xa0\x8b\xd9\x09\xd0\xbf\xcc\x04\xcc\x36\x0d\x7a\x52\x1f\x6f\xf1\x50\x63\xb6\x15\xb8\x0f\xed\xf8\x48\x27\xb3\x68\x7e\x9e\x45\x77\x9c\x2c\xe4\x52\xa8\x49\x73\x2d\x96\xc8\xca\x35\x2e\x9d\x0b\x67\x01\x51\x75\x53\x17\x45\x71\xe4\x43\x03\xe2\xa4\x74\x5b\x56\xa3\x76\x24\xb9\xa6\xcf\xc1\xbe\x05\xec\x17\x33\x51\x9d\xce\x93\x0b\x9b\x92\xba\x8e\xa7\x95\xd4\x04\x08\xe2\xbe\x95\xec\x0a\x0d\x13\x52\x39\x57\x9b\xd2\x60\xbb\x89\xf1\x8a\xad\xeb\xee\x92\x2b\xde\x64\xbd\x40\x51\x2c\x51\x37\xc9\xcd\xd9\x8c\x4c\xdd\xcd\x1e\xf8\x8e\x3d\xcd\xa9\xf9\xee\x92\xa6\xd3\xc6\xcc\xd7\x5d\xc5\x23\xcc\x47\x57\x49\x53\x0a\xba\x75\x5b\x79\xbf\x76\x7d\xea\x4f\xba\x87\xe7\x67\x97\x57\x07\x67\x57\xea\x9a\x07\xc9\x95\xd7\x1d\x83\x3a\xc9\x9f\xcb\xa4\x1c\xbb\x40\xaf\x5a\x3b\x4a\xca\x7d\xc4\x6a\xb8\x96\xa0\x6a\xb5\x99\x0c\x11\x3c\xb1\xb0\xdd\x65\xa6\x8e\xa7\x94\x34\x0c\x4a\xea\xac\xc8\xd5\x93\x9c\xa2\xfb\x6f\x1c\xa2\xae\xd1\x35\xf4\xd4\x41\xba\xe2\x96\xc8\x9f\x52\x48\x8f\x69\xad\x1c\x02\xcb\xf9\x7f\xda\x0a\xde\x50\x69\xf6\xb7\x92\x6c\x9b\x33\x59\xac\xd9\x1b\x46\x0e\xc6\xa2\x88\x67\x14\xe1\x3b\xaa\x93\xb5\x52\x7c\x5d\xcb\x18\x56\x0e\x94\xb9\xb3\xf9\x08\xe0\x16\x60\xef\xf9\xe6\x7a\x40\x64\xe0\xeb\x7f\xe3\x04\xd9\xd1\xda\x9b\x59\x93\xa6\x5a\x9b\xdd\x83\x79\xb1\x8d\x38\x7d\x8f\x4d\xdd\xa6\xf8\xbb\x4d\x86\x69\x37\xaa\xb0\x79\x30\x67\x49\xfe\x51\x8b\x4e\x56\x02\x66\x41\xea\xc2\x0b\x3a\x25\x41\xe2\xfa\xfa\x23\x55\xf7\x05\xbd\x65\x10\x91\x6e\x6f\x4d\xfb\xbd\x3e\x30\x15\x38\x5a\x5f\x65\x02\xd8\x8a\xe8\xca\xe4\xc6\xa2\x72\x69\xe1\x85\x6c\x96\x69\x94\x20\xb3\xf6\x78\x01\x49\xad\xae\xbb\x69\x67\x25\x7e\x8e\x0a\x84\xb7\x7a\x5f\x55\x8d\x9b\xc6\x20\xd3\x2a\xda\x98\xc9\x2f\x68\xb8\x9e\x3c\xbd\xbc\x34\xce\xf8\x12\xd2\x35\xcb\x83\x80\x16\x6d\x6e\x60\x37\x37\x54\xc4\x51\x50\xb3\x59\x25\x08\x9d\x2c\xbd\x3f\x4c\x69\x22\xf4\x0e\x70\xc9\x33\x1b\x5d\xae\x29\x6a\x29\x1a\x85\x77\x63\x55\xc8\xbc\x51\x1f\xa9\xd3\x09\xfb\x37\x95\x72\x4a\xdc\xb0\x41\x90\x41\xfe\x3f\x93\x01\xc6\x92\x16\x29\x7b\x83\x96\xc9\xce\xba\xdc\x07\x84\x78\x43\xcd\x45\xef\xf3\x5a\x39\x3d\x24\xfe\x86\x08\x17\x89\xb9\x5a\x11\xa7\xcc\xc4\x8c\xe8\x1b\xd1\x04\x2e\xe2\x56\x16\x4c\xbc\x5c\xe8\x16\x8d\x08\xab\x30\x8b\x33\x9c\x20\x2c\x06\x94\x0e\x01\x0b\x6d\xa2\x64\x9f\x7c\x39\xd7\x87\x22\x3c\x47\x58\xba\x00\x17\x9d\x04\x3c\x35\xa9\xde\x13\xe8\xa0\xbe\x2e\x60\xb8\x2e\x24\x79\x4e\x85\xbc\x9a\xa9\x45\x65\x52\xc7\xf8\x4e\x50\x9c\x59\xb1\x62\xdd\x9d\x42\xb1\x9a\xb1\x51\x32\x96\xf6\x03\xc2\xc7\x6b\xe7\xc7\x67\x20\xb1\x82\x07\x2f\x75\x4f\x98\xae\xa1\x2e\xe3\x9c\x82\xb7\xbd\xa2\x3c\x22\x30\xff\xaa\xcb\x0d\xcc\xe2\x3a\xf5\x1d\x34\x61\xf8\xee\xba\xec\x3a\xe5\x65\x00\x1d\x33\xcb\xb5\x46\x58\x91\xe0\xbe\xce\xc2\x19\xcb\x01\x35\xc9\x1b\x29\xbf\xc5\x26\x2a\xa1\x3f\xed\xbe\x13\x6c\xce\x74\xd8\x97\x99\x9d\x30\xc7\x2a\xcc\x60\x65\xee\x2e\xbf\xf5\x0e\xf8\xf0\xaa\x1d\x87\xe0\x7c\xe7\x5a\x97\xe4\x93\x01\x10\x6a\x12\x3c\xcb\x30\xc1\xb3\x20\x10\x7a\xa0\x41\xc4\x5c\x54\xaf\xd7\xfb\x7d\xa1\x25\x45\x0b\xd5\x1f\x07\x8a\xc1\x83\xd2\x07\x10\xd2\x00\x78\xbc\x72\xd0\x53\x64\xec\xec\x1f\x78\x37\xb0\x9d\xa0\x7d\x5d\xef\xa0\x37\x44\x7d\xd3\x53\x60\x6c\x57\x14\x7f\xa2\xf8\x6d\x53\x46\xbb\x72\xd2\x2f\x97\x0b\xcc\x7a\x3f\x0c\x28\xa6\x78\xab\x37\x34\xf6\x1f\xda\xcd\x97\xd7\x5a\xd1\xa9\xa6\x0c\xc1\x06\xf5\x8f\xe4\xf6\xae\x1d\xed\x40\xed\xed\xad\xdd\x61\x81\xdf\xd5\x6f\xcb\x38\xb3\x70\xc3\x62\xd0\x1b\xe2\x9c\x88\xc1\xee\xb0\x25\x06\xcf\xb5\x2f\x06\x9b\xa8\xa1\xe6\x36\x07\x97\x8f\x5f\xa1\x38\xf1\x68\xc8\x70\x28\x2d\x3b\x9d\x78\x49\xa8\x35\xb6\x9f\x4c\xd4\xd5\x70\x13\x21\x2d\x4d\xb2\x1b\xde\xcd\xc3\xd0\x10\xd5\x26\x5e\xe2\xad\x1e\xf6\x89\x5d\x53\x92\xf8\xc9\xe9\x46\xe8\xa7\x9d\x5d\x3c\x26\xe9\xfe\x81\x3a\xc3\x12\xeb\xfe\xd1\x8d\x10\xea\x7f\x81\x47\xa8\x75\x63\x20\xf7\x7d\x08\xf4\xc9\xe5\xe8\xc3\xc9\xe5\xc9\xcb\xd3\x63\x88\x7b\xbe\x4b\x29\x8c\x2d\x08\xf8\xb9\xa2\x9d\x4e\x3c\x86\x33\xf3\x4a\x55\x33\xc6\x50\x5b\xc4\xf2\x0f\x2c\x67\xd7\x29\x8d\x10\x44\xe7\x55\x7a\x9c\xe3\x31\xde\xda\x35\xdd\xc5\xff\xa2\x64\x4c\xc1\x1a\xb8\x48\x93\xbb\x7e\x9b\x67\x9c\xee\x45\x0f\x75\x28\xbe\x7a\x40\x34\x31\xaa\x63\xcb\x5d\x8c\x51\xc3\xf4\xcb\xca\x1e\x8a\xe3\x18\xa9\x43\x26\x37\xc6\x6c\x93\xcd\xaf\x95\x10\x1b\x0f\x00\xb4\x07\x83\x94\x30\xdc\x78\xcc\xd6\x98\x4f\x70\xc0\x42\x07\x1c\xc3\xb7\xd9\xa3\x6d\x47\x1c\xdb\xb1\x1e\x15\xd2\x43\xd7\xb0\x69\xec\xb0\x6f\xe9\x76\xd4\xae\xcc\x90\x53\xd8\x2a\x19\x7a\x7f\x4c\x63\x81\xfa\xc2\xde\x10\xff\x45\x4d\x6a\xb1\x06\x96\x38\xed\x3a\x0f\x58\x1f\x89\x65\x0e\xbc\x4f\x55\x8a\x47\xf7\xb2\x42\x6e\x9a\x12\xb0\x59\x74\x8a\x1b\xab\xd3\xb1\xd1\x71\x89\x12\x04\xf2\xab\xae\x79\xf9\xc5\x7a\x6d\x54\x98\x75\x10\xd2\x7c\xf5\x86\xea\xb4\x1c\xec\xaa\x3d\xc7\xec\x76\x83\x58\x29\x54\xdd\x10\x1a\x02\x1c\x6f\xda\x4b\x09\x72\x1b\xc6\x67\xe3\x58\x82\xf6\xa5\x69\xdf\x64\xc1\x96\xe9\x0f\x86\x78\x62\xf7\xd2\xd8\x6c\xa0\x0c\xb5\x96\x3e\x79\x5a\x02\xa7\xc5\x21\x8d\x27\x38\xdd\x1f\x0f\xc6\xde\x1e\xdb\xcf\x10\xa8\xcd\x4e\xd4\xbb\x04\xe7\xb5\xbd\x61\x3b\xbf\xf4\x73\x55\xe0\xc3\x0d\xb4\x5e\xa2\x73\x23\x6f\x2f\x12\x39\xb3\x34\xaf\xe8\x9a\x02\x21\x6b\xbb\xbc\x45\x82\x9c\xbc\x53\x1f\xc1\x5d\xa2\xc1\xb0\xf7\x68\x8a\x06\xc2\x85\x0c\x2e\xa5\xd3\x54\xf5\xa0\x04\x09\x5d\x6e\xd7\xe6\x54\xac\xf4\x26\xee\xe1\x51\x88\x55\x29\xbd\xca\x83\xae\x56\xd0\xca\xbe\xb3\x4a\x05\xc9\xcf\xf0\xc9\x46\x66\x50\xbb\x0a\xe9\xd4\x5e\x95\xfc\xd4\x41\xfe\xec\xd2\x64\x4a\xb1\x94\xb3\x3b\x97\xca\x3f\x49\xf3\x3b\xcb\x3e\xdc\xdc\x7e\xd5\x14\x5a\x66\xa0\x1b\xc0\x3e\x5d\x5f\xee\xdd\x56\xed\x34\xef\xcb\xbe\x30\x63\x3d\xaa\x5a\xc0\x75\xb4\x7a\x84\x5a\x2e\x70\xfd\x48\x2b\xd3\xcf\xaa\x5f\x5e\x9e\xbf\xbf\x38\x3c\x8e\x10\x3e\xfd\xae\x72\x9b\x9a\x06\xcd\x2b\xf9\xe0\x8c\x0e\xd5\xb3\xbf\x49\x86\xb3\xd3\xd1\x24\xcb\xd5\x3f\xb6\x61\xa0\x9b\x22\x4f\x37\x57\xb1\x29\x64\x55\xd7\x7c\x44\xbf\xb1\x8a\x06\xd1\x50\xc7\x9d\x57\x17\xef\x00\x32\x00\x85\x1e\x0e\x7f\x85\x26\xd8\x00\x03\xee\x3d\xad\x70\x53\x0c\xc9\xf8\x1a\xcc\xb0\x42\xf5\x1f\x31\x22\x70\x46\xe0\x6f\xcf\x0c\x13\xf7\x4d\xcb\x83\x9e\x90\x64\x3f\x66\x44\x82\x75\xc0\x40\x91\x75\x3a\xee\xcf\x81\x18\xa2\x7e\xd8\x0a\x49\x74\xda\x3e\x55\xbb\xdb\xc9\x8d\x0e\x4b\xd5\xd8\x5f\xac\xd3\xde\xeb\x94\x40\x90\xe0\xb7\xb7\x27\x5e\xd0\x3d\xb1\xbd\x8d\xe4\x40\x0c\x7d\x81\x81\x18\x5a\xa3\x84\x09\x9f\x60\x5a\x7d\x2c\x71\x9a\x5c\xd3\xb4\xef\xc1\x2d\xc7\x69\x96\x2f\x05\xdd\x31\x81\x6d\x4f\xf2\xf5\xd3\x6e\x99\x36\x24\x2e\x69\xba\xa0\x6b\xf7\x0d\x23\xb2\x1b\x73\xc0\x80\xe1\x6c\x68\xd3\x68\x72\xc5\xd0\xb4\xdb\x86\x5b\xab\x97\x34\x14\x68\x21\x9c\x18\x2b\x61\xd5\x0a\x0c\xbc\x31\x1f\x3d\x6b\x7a\xda\xe2\x83\xbf\x86\x84\x39\x1f\xde\x8c\xf4\xf6\x32\x2f\xdc\x67\xd6\xef\x2b\x21\x72\x90\xa9\x63\x54\x9f\xd1\x89\x92\x3b\xc5\x20\x19\xb6\x1a\x08\x64\xd9\xe9\x2c\x07\xaf\xe8\x70\x5f\x40\xa2\xcb\x7e\xbe\x31\xc4\x3b\x86\xaf\xd4\xc2\x7d\xa0\x3a\xcf\x13\x66\xea\x49\x8e\xb9\xce\x93\xe9\xb6\x3a\xdc\x0a\xe0\xb2\xa7\x7a\xf4\x73\xdd\xa9\xe7\x55\x84\xf0\x87\x07\x8f\xbd\xc1\xb2\xfb\xf6\xfd\x15\xe4\xa1\x3b\x3c\x3e\x3d\x1d\x92\xad\x9e\x89\xb1\xa7\x43\xcb\xbf\x35\x57\x91\x4d\x2c\xba\x41\x91\x6a\x4b\x3f\xb4\x6d\x81\x15\xff\xd9\x98\xa4\x9f\xdc\x17\xad\x4a\x66\x93\x27\xa4\x35\x91\x4e\x00\xe1\xe8\x45\x0f\xe6\x94\x0f\x21\xb7\x09\xf2\xe9\x5e\x9b\x9d\x2a\x4c\x2b\x3a\x45\x82\xad\x5b\x43\x35\xe4\x56\xae\xea\x41\xd7\x1c\x55\x35\x7e\x1b\x53\xb4\xc7\x5e\x58\x2f\xb2\x3d\xa6\xf6\x9c\xef\xd5\x80\x0d\xa1\x63\xb5\x31\xd9\x34\xc8\x27\xf9\xb1\x03\x8a\x70\x23\x53\xa5\xf4\x60\x06\x6c\x08\xe3\x51\xff\x3b\xa6\x20\x74\x60\xdc\x47\x20\x84\x12\x6a\xd6\x49\x8c\x10\xfe\x81\x92\xc1\x70\x2f\xee\xe1\x54\x2b\x59\x5f\x41\xac\x16\x8a\x7f\x30\xcc\xf2\xf5\x9a\xf3\x8c\x7f\x8b\x3d\x95\xdb\xe3\x8a\x11\x5e\x3f\xae\x98\x87\x40\xc9\x1a\xb0\x05\x60\x13\xeb\xd8\x31\xb8\x69\xea\x3f\xcf\x92\x39\xb5\x09\x40\x7c\x26\x0b\x1d\x2d\xea\xc5\x11\x14\x66\xbb\xe3\x76\xd3\x32\x07\x2a\xe5\xcc\x5e\xd1\x36\x47\x2d\x49\x12\x70\x10\x6c\x4b\xff\xc9\x47\x6a\xc4\x5a\x25\x9d\x1d\xc5\xce\xd9\xbe\x2d\x5a\x92\xb8\x4b\x82\x8c\x19\x2a\x70\x93\x87\x46\xc3\x91\xd6\x68\x38\xf2\xe6\xa5\xb2\x05\xc9\xd6\x79\x14\x9a\xf2\x1b\xaf\xf0\x4e\xff\x68\xe5\x9f\x60\x56\x63\x87\x92\xbf\x56\x1d\xfe\x38\x15\x7e\x80\x0c\x09\x49\x0d\xb1\x30\x5d\xbc\xd2\x6e\xc9\x9b\x7b\xe6\x85\xb1\x9a\x66\x7a\x5f\xaa\x0d\x6b\x9c\x9b\x57\xab\x68\xc2\x6e\x23\x23\x97\xd6\x7c\x6c\x9a\x8d\x64\xa1\xbb\x8b\x2a\xd4\xe8\x23\x62\x61\x3a\xb4\x75\x74\x02\xa9\x74\xa3\x11\xd8\x62\x47\xa3\x08\xb9\x54\xbf\xe6\xb5\x33\x9b\x76\xe7\xc9\x02\x9c\x80\xec\xb7\x38\x23\x7f\xd2\x98\xe3\x81\x2f\xed\x94\x3c\x81\xeb\x65\xff\x07\x0a\xe6\xd8\x49\x2d\x5e\x2a\xc3\x4e\x61\x89\x8a\xc2\xe6\x4b\x09\xd0\x1e\xc0\x8d\x53\xab\xe5\xbb\x55\x5f\x4e\xef\xc6\x94\x6b\x69\x5e\x06\x9f\x58\x45\x50\xe8\xde\xd4\x94\x0e\xc6\xea\x56\xf6\xe2\x25\xb9\x2f\xd0\x20\x1f\x96\xab\xf1\x36\xe3\x84\x2c\x71\xa9\xff\x09\x6e\x9c\x21\xe3\x5f\x0b\x81\x14\xe5\x5c\x84\x39\xea\x74\x72\xef\x60\x5b\x73\xbd\x4a\x09\x24\x06\x9e\x33\x1e\x7b\xc1\xa5\x61\x4c\xad\x84\xdc\x17\x8f\xeb\x8b\x3b\x39\xc6\xa4\xb7\x37\x7e\x91\xee\x8d\xed\xb1\x3d\x25\xf9\x60\x3c\x6c\x25\x83\x69\x65\xc4\x89\x8c\xc7\xa8\x28\xea\xab\x78\xed\x6c\xf6\x17\x07\xbf\x9b\x05\x4d\x0a\x45\x65\x6b\x5c\x41\x74\x66\x28\xcd\x6e\x78\xf7\x96\xd1\xcf\x38\x27\xb2\xb2\xb8\x38\x35\xb8\x27\x41\xd7\xf1\x98\xbc\xa4\x71\x8a\xf6\xe2\xaa\x19\x36\x20\x58\x36\x89\x10\x28\x00\x9d\xc6\x0b\xc0\x98\x50\xa1\x6e\x06\x63\x84\xc7\x5d\x45\xf9\x5a\xeb\x4f\x12\x3c\x1e\xbc\x1f\x92\x0c\x8f\x6d\x94\x55\xe0\x42\xe1\xcd\xfd\x9d\x4e\x3c\x36\xbc\x95\xf8\xa7\x9a\x6d\x4f\x48\x6e\xe5\xa3\x31\xc2\x70\xbb\xdc\xe4\x6a\xe2\x9d\x92\xf1\xef\x14\x4f\x50\x4b\xcf\x00\x99\x98\x34\xf7\x09\xe8\xe0\x97\xdd\x64\x32\x71\xb8\x43\x6a\x1d\x27\x08\x4f\xbc\xdd\xa3\xe2\x1d\x6f\xec\x1e\x73\x12\x45\x5b\x84\x4c\x2c\xab\x68\xcd\x57\xab\x98\x96\xcd\x2b\x9d\xce\xa4\x6c\x3e\xb1\x96\x13\x3c\xe9\x8e\x4a\x91\x1d\x10\x61\x1d\x18\x5d\x36\x57\x53\xc2\xe0\x88\x8c\x3f\xfc\x2d\x48\x69\x23\xc5\x0e\x27\x38\xc5\x33\x3c\xf7\xba\xde\x70\xcd\xb4\x36\x42\x2d\xdb\xad\xb7\xb5\xd9\x2f\x74\x02\x11\xfd\x45\x43\x3f\xe6\xeb\x47\xb4\xd9\x9e\xbb\xc9\x7d\xe4\xd6\xba\x8f\x04\xcb\xf5\x38\xcf\x91\xc9\x53\xdd\x45\x6e\x4b\x42\xfe\xba\x7e\x85\xb6\xbd\x5b\x25\xdc\x23\x7c\x6b\xb8\xff\x7a\xd7\x08\x63\x6d\x54\xdf\xad\x77\xf7\x2b\xa5\x71\x0f\x4f\x4a\xa6\x7e\x99\xc5\x80\x8c\xec\xc1\x09\x88\x13\xe2\xaa\xdf\x03\x7a\xcd\x2b\xc6\x36\x8e\xad\x41\x2d\xa7\xb2\x6c\x68\xc3\x1c\x19\xbe\xa6\x25\xf4\x52\xbc\x38\x1e\x13\xde\xf5\x48\x0e\x78\x12\xfe\xb4\x1f\x29\x96\x9d\x76\x3a\x8e\xf3\x35\xa0\xfe\xfb\x6b\x5f\x46\x06\x43\xe8\xaf\x55\x8f\xed\xed\xec\x6e\x11\x92\xec\x59\xf5\x39\x1d\x24\x43\x9c\x92\xb7\xa0\xfb\x1e\x93\x74\xb0\x3b\xdc\x03\x1d\xbf\xd7\xd2\x8d\x15\x6d\x66\x1a\xbc\x74\x8c\xf0\x3b\x0a\x71\x4f\x29\x34\x84\x70\xb2\xb3\x53\x58\xbb\x40\xa0\xd9\x53\x9c\xc8\x3a\x51\x05\xec\x68\x3f\xf8\xbb\x0f\x17\x92\x9b\x25\x9b\xbc\x02\xa3\xac\x62\x07\x75\xb5\xfb\x26\x15\xe3\x24\x50\x77\x6e\xd6\x65\x3b\x59\xef\x13\xed\x74\xaa\x7d\xd5\xea\x56\xd4\xe9\x7c\xa2\xc6\xe8\x58\xa0\x58\x8d\x2f\xc1\x02\x67\x81\xf6\x72\x46\x78\x30\x14\xbe\x76\x28\x90\x00\xe6\x69\x43\x99\xf9\xa1\xe0\xcd\x43\xf9\x44\x63\xdd\x2f\x35\xed\xc6\x3e\xba\x20\x46\x1b\xca\x40\xbe\xd1\x97\x84\x5f\xe8\x5d\xbd\x1f\x46\xf7\xb9\xf0\x13\x37\xee\x74\xac\xf6\x54\xfd\xd5\x9c\x2c\xeb\xe9\xea\x5f\x1a\xaa\xa2\x11\x9e\x28\x4e\x65\x5b\x99\x34\xb7\x72\x01\x76\x12\x88\x5c\xd5\x09\xf1\x9e\xdc\xa8\x09\xed\x54\x87\x4a\x14\x4c\x68\x94\x08\x96\x5c\x64\x29\x8d\x18\x6f\xf3\x4e\xa7\x5a\xb3\x50\xaf\xf0\x17\x35\xb1\xfe\xd3\xa0\x3c\xdf\x78\x3a\x64\x55\xae\xcc\x37\x9e\x0e\x86\x23\x6d\xf4\xac\x72\x8c\x68\xf0\x61\x48\x24\x7e\xa4\xab\xd5\xd3\xfd\x74\xbc\x8c\xde\x28\x9f\x2b\x4e\x0f\xb7\xac\x9a\xa0\x2e\xf7\x9b\x0d\x39\x83\x97\xc3\x21\xea\xab\xff\x4a\x8c\xf7\x01\xe9\x9f\xae\xf7\x88\x00\x69\xa6\x32\xfb\x8c\x1f\x9d\xbf\x8d\x40\x46\x09\x64\x82\xca\x34\x57\xde\xda\x73\x11\x86\xdc\xa0\x94\x68\xba\x2c\x99\x09\xe0\xe6\x0f\xeb\xf1\x02\x87\x43\xd0\xe1\x4d\x2e\xb3\x9d\x0e\x7b\xc8\x37\x2b\x58\x5d\xf1\x04\x01\xea\x17\xf0\x91\x12\x9d\xce\x96\xf5\xba\x01\x7c\x28\xef\x75\x83\xb9\x4b\x50\xf5\x92\xc6\x02\xb5\xca\xa3\x20\xeb\x9d\x75\x00\x3e\xb1\x07\xf9\xa2\xa4\xd1\x5b\xe8\x00\x06\xf3\x6a\xb7\x32\xb7\x01\xb2\x5d\xc3\xbc\x87\x92\x5a\xc1\x1a\x56\xb7\xb4\x59\x74\x5d\xe5\x6a\x42\xb9\xc6\x6e\x9f\x0d\x9e\x6c\x7f\xeb\x6e\x69\xf0\xd6\xff\x2a\x92\xae\xcf\xdf\x66\x92\x7d\xd8\x9d\x8d\x16\x98\x83\xc3\x9a\xd7\x5e\xff\x5e\xd2\x5e\x77\x3d\x59\x1d\x51\x99\xb0\x34\xd7\x01\x78\x2c\x31\xb3\x0b\xd9\x48\xbc\xde\xf4\x97\xa7\x96\xde\x2d\xb4\x09\xf7\x57\x8a\xdf\x50\xfc\x5b\x3d\xce\xa0\x57\x8a\x33\xe8\x95\xe3\x0c\x7a\x61\x9c\xc1\x56\xaf\x1a\x51\xd0\x2b\x47\x14\xf4\x2a\x11\x05\xbd\x4d\x11\x05\xee\xeb\xc6\xd8\x81\x5e\x39\x76\xa0\x57\xe0\x3f\xb4\xc7\xdf\x6b\x8a\x69\x55\x58\x74\x56\x6f\x25\x0a\x5b\xfd\x67\xf9\xf6\xe6\xcc\x82\x16\x02\x56\x04\x1e\x79\xbc\xec\x13\xf8\x07\x0d\x1d\x06\xb5\x57\x3d\xc5\xe5\xfa\xfa\xd2\x8b\xd5\x95\xe0\x9d\xdf\x68\x51\x60\x29\xd7\x5a\x9a\x1c\xf0\xba\xd6\x2f\x89\xd0\xce\xe4\xac\x4c\xa1\xeb\xa0\xf8\x2a\xab\xd2\x26\xed\x56\xc9\x28\x57\xd2\x3c\x95\x7c\xe3\xd0\x26\xe7\x69\x50\x7d\x19\xb5\x50\xe8\x43\xfd\x40\xb8\x45\xb9\x05\x9c\x3d\xed\x7a\xca\xdc\xf5\x94\x19\xeb\x07\x5c\x30\x99\xbb\x60\x26\x4d\x17\x4c\xb6\xe6\x3a\xc6\x9e\x76\xc1\x64\x8f\xb8\x60\xe6\xfe\x82\xc9\x34\x2e\x59\x16\x78\xc0\x6c\x64\x7c\x9b\xae\x7f\xf9\x63\xae\x7f\xcd\xb1\x0a\x6c\xcd\xfd\x2f\x07\x1b\xdc\x6b\x8a\xb0\x90\x0f\x04\x1f\xf5\x36\x04\x1f\x85\x10\x5b\xff\x8b\x99\xc2\x6e\x81\xcb\x61\x62\x6b\xc2\x7b\x0d\x82\xb8\xf1\xc4\x54\xeb\x23\x01\x83\xbb\xec\x08\x6c\xfc\xa5\x40\x0f\x7f\x43\x2d\xe2\x2a\x5c\x1d\xec\xb7\x21\x43\x10\xdd\xe9\x32\x85\xe4\xda\x26\x32\x7f\xb7\x87\xca\x7c\x40\xc8\x2a\xcf\x10\x45\x93\x35\xa6\x41\xd6\xf3\x6a\x52\x27\x73\x2a\xe1\xad\x12\x46\x2c\x83\x4f\xdf\xd0\xd5\x2a\x7e\x43\xd7\x42\x2c\x26\x11\x42\xf8\x0d\xed\xce\x04\x9d\x12\x75\x14\xe8\x0e\x8c\xb3\xd4\x9f\x2d\x99\xf4\xc7\x26\xe8\xfa\x8c\x2b\x5b\x2d\xf7\x03\x38\x13\xfc\x4a\xbb\x8b\x44\xe4\x6a\xaa\x5d\x5d\x08\xdb\xdc\x4f\xfb\x51\x3f\xea\x4b\xad\x29\x95\xa4\x17\xe4\xca\x0d\x7a\x0d\x89\x43\x22\x42\x08\x05\x54\xc7\xd5\x2a\xb2\x06\x8a\xd2\x43\x7b\x77\x2a\x3d\x84\x44\x62\x32\x13\xfe\xa1\xce\xb2\xfb\x10\x41\xb0\x09\x49\xe4\xf6\x76\x68\x23\xdb\x18\x5d\xdb\xec\x4b\xe4\x4b\xeb\x88\x4a\x48\x6d\x1c\x7e\x17\x54\x6f\x03\x1c\x9b\xc2\xb2\x35\x1b\x8e\x2e\xe8\xb4\x6d\x42\xb3\xd9\x24\x88\x7a\xf5\xb5\x38\xf7\xa8\xed\xa8\x1d\x9b\xf6\x26\x28\x02\xc8\x4c\xff\xaa\x6f\x6b\xd1\x5d\xd3\x10\x9a\x81\xd3\xa2\x09\x45\xc7\xa9\x34\x51\xce\x01\x19\x0a\xba\xa0\x89\x5c\xad\x1a\xe8\x30\x30\x49\x6f\xef\x22\x30\xf7\xea\xd3\x4a\x5b\xaf\xc6\xeb\xe6\xdc\xc5\xac\x27\xe3\x4f\xb0\xef\xae\xbb\x97\xea\x6f\x1b\x06\x3b\xcd\x4b\xc8\xf9\xce\x21\x5d\x3f\xbe\xa4\xe6\xcc\xe6\xd9\x84\x36\x7c\xb9\x48\xe4\xec\xac\xfa\x6a\xd3\x52\x5e\xd3\x1b\xc6\x6b\x8b\x04\xf9\xce\x62\xf0\x9b\x6e\x38\xba\xac\x1e\xaa\x6a\x10\x90\xf8\xfe\x3a\x5b\xf2\x49\x6e\x81\x0d\xa7\x79\xdf\x76\x5a\x75\xcc\xfd\x2a\x0c\xef\x80\x41\x38\xb4\x7e\x23\x7c\x2c\x16\x94\x6b\xad\x2a\x58\xdd\xac\x73\x9e\xf7\xe4\x5e\x63\xa9\x2d\x7d\xb3\x3e\x3b\x99\x6b\xf8\x15\x64\x7d\xf5\xc2\x8f\x2c\x05\xd4\x3e\x50\x4a\x8f\xd3\x0a\x50\xf4\x0b\x33\xb3\xd5\xe8\x64\x4f\xc1\xd3\xfc\xba\x4b\xbf\x2c\xb4\x07\xb1\x5d\x69\xe3\x95\x82\xa3\x97\xef\x5f\xf7\xdb\x73\x96\xe7\x8c\xdf\xb4\x05\x9d\x46\xc8\xee\x1f\xb3\x08\xd9\x7c\xce\xe4\xc6\x65\xd2\x4a\xce\x75\xdb\xd2\xbc\xbe\xa0\xd3\x3c\xf6\x24\x15\x2c\x30\xf8\x5c\x6d\x94\x4f\x80\x62\x2d\x58\xa1\x37\x3f\x93\xc0\xf3\xbd\x3e\x4a\xbd\xc2\x6a\x98\xcc\x0e\xf3\x40\xaa\x29\x97\x74\xd2\x96\x59\x5b\x37\xde\x4e\xda\x8a\x3e\x70\xfb\x7a\x29\xdb\x72\x46\x05\x6d\xb3\xbc\xcd\xb3\xb6\x69\xad\xad\xe5\x9e\x36\x64\x24\x0d\x23\xe0\x39\xca\x48\xe2\xd5\x5e\x39\x49\x40\x78\x35\xde\xf5\x4b\x02\xd3\xac\x35\x2f\x79\x60\x4b\xd7\xba\xc5\xe5\x7e\x46\xee\xb5\x99\xa1\x9f\x18\x38\x6b\xc7\x6b\xb5\x24\x11\xfd\x33\xda\xd6\xb5\xe5\x83\xe5\xb0\x42\xc4\xfd\xb8\xbc\xe5\x40\x4b\xce\x8d\xb4\x1a\x4c\x6b\xcc\x71\xa4\x1e\x99\xa4\x50\x91\xd1\xd5\x64\xa4\x52\x5c\xcd\x12\x47\xd6\x69\xd7\x26\x03\x87\x7e\x09\x6c\xfa\x99\x55\xfa\xd0\xca\xa0\x82\xbc\x9b\x4c\x26\xb1\x75\x59\xf3\x55\xea\xad\x05\x7e\x83\xb2\x9b\x66\x46\x88\x02\x7e\xf3\x2a\x13\x95\x35\xf7\xca\x58\xd9\xb0\x92\xe5\x7e\xd2\xcd\xab\x99\x66\x37\xed\x69\x26\xcc\xba\xb6\xdd\x22\xe8\x15\xe6\x19\xac\x64\x9b\x7e\x61\xb9\x84\xef\xe4\x2c\x91\xfe\xab\x08\x61\x41\x06\xc3\x3d\xa7\x0b\x95\x9d\x4e\x2e\x63\x89\xf6\x34\x94\x54\x78\xcc\x69\xec\x63\x6f\xf5\xd4\xf3\x64\x02\xce\x07\xd1\xb6\xfd\x73\x18\xd9\x54\xd7\x1c\x3c\x6f\xcd\x87\xda\x5a\x2e\xba\x4b\xae\x3d\xd1\xf5\xe7\xa8\x15\x7c\x61\x27\x85\x91\x81\xd0\x6c\x3e\xea\x46\x28\xec\xdd\x1e\xb2\x71\xc2\x5b\xb6\x43\x9d\x4e\xb4\x23\xb3\xc5\x4e\x4a\x6f\x69\xaa\x1f\xab\x8a\xf7\x63\x56\x6d\x2a\xe8\x0c\xea\xfb\xbf\xbd\x6b\x41\x25\x0b\x7a\xe0\x4e\x1f\x6d\xc7\x82\x44\xed\x08\x73\xf2\xfc\xff\x27\x71\x2a\xf5\x9d\x49\x6d\x5c\xb4\xad\x45\x3b\x81\x79\x81\xcc\xe9\x14\xfd\x27\x8f\x2c\xd8\x41\xf9\x00\x67\xd3\xb8\x67\x21\xe9\xf4\x36\xcf\xd9\x5f\x14\xa9\x91\xef\x6d\x05\x4f\x59\x7e\x3c\x5f\xc8\xbb\x18\xed\xa1\xe0\x29\x00\x02\xa9\x7a\x81\x01\xd7\xf9\xb2\xf9\xca\xa6\x14\x93\xc0\x2e\x6b\xbc\xac\x52\x97\xe1\xb5\xeb\x9c\x0f\xd6\x30\x99\x1a\x2f\xd5\x1c\x43\x55\x18\x9c\x2b\xeb\xf1\x37\x4a\x3c\x0e\x73\x38\x44\x97\x8a\xf2\x5c\x44\x14\xb0\x6d\x9d\xf8\x89\x23\x6b\x92\x31\x1c\xd2\x9e\x0f\x02\xb5\x98\xfe\x50\xed\x4a\xc8\xd3\xa6\x17\x95\x30\xe3\x9d\xe1\x38\xb0\xf9\x22\xe0\xe0\x8a\x45\xaf\x89\x4b\x81\x5d\xe1\x3d\x10\xea\xaa\xe9\x20\x7e\x5f\xcd\x06\x6a\xb1\x7d\x43\xf4\xae\x7a\xb5\x85\xed\x3d\x72\x47\x75\xb8\x1f\x6d\xf3\x2e\x9b\x60\x86\x50\x9f\x76\x27\x34\xa5\x92\xaa\x1e\xe9\x6c\xf0\xa5\x72\xeb\xe7\xcd\x8e\x1c\x42\x29\x84\xce\x6c\xc1\x8c\x6d\x10\x67\x44\x68\xfd\x64\x42\x44\xd7\x5e\xc1\x70\x4e\x04\xcc\x11\x5e\x92\xf0\x84\x72\xbe\x19\x02\x59\xac\x3e\xf3\xe6\x25\x1c\xb9\xea\xf9\x98\xd4\xce\xb4\xdc\x79\x2e\xb0\x49\x9f\x6a\xa6\xc9\x35\x0f\x37\x2e\x80\x2e\x94\xde\xdf\x02\x13\x7f\x0b\x5c\x62\x23\xb9\xa4\x78\xac\x48\x44\x50\xde\x1f\x17\xc1\xf8\x1b\xf3\x97\xae\x89\xab\x6e\x4b\x30\x0f\x37\xc6\x56\x03\x93\x13\x54\x74\x3d\xe4\xb5\x86\x81\x0b\xda\xd2\x23\x6d\xce\x51\xe2\x49\x9f\x1a\x21\xa4\x42\xf1\xfa\x61\xe4\x3d\x39\x80\xf2\x6c\xda\x05\xcb\x5e\xec\x1d\x08\xe1\xa9\xcd\xb7\xd5\x97\x5d\xf7\xb7\x12\x87\x13\xf7\xd8\xfe\x19\x23\x2b\x2b\x4f\x1f\xbc\x51\x84\x5e\xd3\x30\xf1\x57\x2e\xa6\x02\x0e\x09\x50\x25\x26\xd7\x69\x98\xe8\xa6\x29\xee\x22\x70\x57\xb7\xd5\x7c\xbf\xf8\x0b\x08\xc9\x91\xc9\xcd\xab\x4c\xd8\xe8\x2e\x5a\x89\xfa\x7a\x27\xb2\x2f\x90\xd1\x0a\x60\x90\xe2\x1e\x4e\xba\xa3\x71\xc6\x25\xe5\xd2\x5c\x83\xc1\x80\x3a\x31\x52\xa9\xcb\xc1\xe3\x7a\x0b\xe1\x45\xf4\x73\x7b\x22\x0d\xf7\x7b\xbc\xaf\x32\x4c\xf5\x44\xd6\x39\xaa\x99\xdd\x20\x4c\x77\x16\xde\x7b\x69\xdb\x92\x78\x36\x6d\x4f\xe4\x7e\x58\x5e\xf1\x31\x42\xdd\x95\x74\xb5\xb2\x20\x4d\x0e\xf0\x49\x86\xfe\x84\x5b\x35\x1c\x59\xe7\xf0\xe2\x8e\xa8\xb2\x9f\x0c\x45\xab\x95\x99\xbb\xe3\xf9\x35\x15\xf0\x54\xcd\xd3\xfe\x9d\xec\x4e\x45\x36\x3f\x51\x62\x98\x5a\xf9\x98\xa2\x7e\xde\xfd\xf9\xe0\x72\x74\x76\x70\x75\xf2\xe1\x78\x74\xf9\xfb\xdb\x97\xe7\xa7\x9d\xce\xb1\x1a\xcc\xfe\x48\x7f\xae\xbe\xfa\x2c\x83\xf2\xaf\x34\xdb\xb3\x35\x34\xd4\x5a\xc4\x54\x4f\x11\x6a\x42\x47\x0d\x63\xf9\x68\xd9\x8f\x67\xcd\x80\xf6\xe7\xbe\x2b\xcd\x43\xbb\xf5\x1f\x6c\x18\xd1\x4d\x75\x44\xf3\xc6\x11\x01\x37\xb0\xe0\x67\x8b\x87\x76\x9a\xc9\x3e\x6d\xa3\x3d\x8c\xc7\x0f\xe9\x6d\xda\x23\xe6\x1c\xaf\x5f\x16\x00\x77\xb7\x3b\xa7\xf3\xac\xf9\xec\x6d\xc3\xd5\x9e\xd3\x2f\xeb\xf4\xa6\xce\x63\xbb\xd4\x1b\x38\x3d\x7f\xf2\x38\x97\x8e\x86\x44\x70\x9b\x77\xe7\x87\x56\x41\xe9\x3e\x04\x6e\x7f\xa5\x1a\xb7\xb7\x6d\x62\x72\x81\xd5\xa7\x7d\x6e\x59\xd3\xfc\xeb\x94\xcc\xd8\x45\x1f\x5a\x6d\x73\xa2\x56\x17\x34\xcd\x0f\x05\x57\xc2\x22\x36\xeb\xaa\xac\xbf\x18\x04\x01\xa9\x7a\x7d\xb0\x8a\xa8\xae\x7d\x03\xc3\xdf\x7c\xdc\x07\xcc\xc3\x89\x57\x16\x4a\x12\x08\x0d\xc2\x4d\xab\x61\x28\x6b\x56\xd6\x68\xfe\x45\x72\x07\x09\xbe\x45\x11\x2f\x24\xc2\xb7\xff\xef\x99\xcd\x47\x0d\x13\x38\xbe\xe6\x78\x07\x56\x7c\x84\xae\x61\x13\x7f\xa1\x06\x7d\xb7\x7e\xd0\x0f\x45\xc4\x54\x87\xfd\x89\xde\xe5\x10\x17\xa3\xe1\x33\x37\x86\x34\x9b\xa1\x3b\x4e\xd6\x40\x0f\xc6\xcf\x5a\xd5\xaa\x23\x21\xec\x3c\xab\x1d\xd6\xab\x41\xc2\x79\x04\xef\xc1\x10\x33\xd2\xdb\x63\x2f\x04\xb8\x70\xbb\x1b\xbb\x1c\xb0\x61\x2b\xd3\xce\x35\x70\x8c\xb1\xdc\x25\x44\x8d\x91\x8e\xc3\x2f\x87\x9a\xc3\x03\x7d\x66\xea\x48\x56\x84\xcb\xfc\x32\x43\x0d\x01\xea\xa5\x52\x19\x8e\x06\xc3\x08\x41\x30\x28\xd0\xad\x0b\x3b\x6f\xbb\x85\x55\xe2\xf5\x63\xf7\x08\xc8\xc5\x98\x93\x1e\x66\x64\x6b\x77\xe3\x8e\xc1\x19\xba\x8f\x19\x61\xab\x55\x35\xca\xe4\x27\xf2\x1c\x3c\xee\x4d\x87\xb0\x4b\x82\x8c\xf9\xf6\xb6\xda\x56\x3a\x23\xa5\x9a\xd7\x3e\xdb\x0f\xfa\x29\x74\x14\xdf\x5c\xc6\xc2\xe8\xfe\x36\x85\x34\x6d\xda\x7d\x9a\x46\x60\xfb\xf1\x4d\x4c\x18\x3e\x56\x34\x10\xee\xd4\xeb\xb5\x07\x85\x8f\x0b\x94\xda\x11\xdf\x1e\x16\x82\xe6\xcb\xd4\xe1\x70\x04\x47\x07\xad\xef\x41\x73\x9a\x0c\x74\x58\x40\xd7\x5e\xc1\x87\xb1\xa6\x42\x75\x24\xc4\x81\xdb\xe0\x24\xe3\x54\xcf\x55\x69\xa6\x8a\xd6\xd7\x9f\x4a\x1b\x4e\x1d\x3b\x30\x7b\xee\xe8\x81\x39\x5c\xf3\xf0\x14\x82\x9e\xad\xc3\x4d\xf4\xe7\x10\x06\xc4\xc4\xf2\x49\x84\xc5\xda\xb3\x28\x9c\x4e\x6a\x26\xc3\x1e\x50\x5c\x1f\x50\xcc\x1e\x50\x37\x6b\xb9\xcb\xdf\x88\xf7\xb6\x89\xf6\xa8\x55\xda\x37\x11\x5d\x88\xa3\x08\xb4\x76\x2d\x11\x1e\xfd\x6f\x3a\x84\xc1\xee\x43\x5b\xc7\x7e\xd8\x1b\xda\xc1\x78\x19\xfa\x73\x68\x85\xa9\x47\xd4\x38\x7e\xe2\x8d\x43\xc7\x0f\x94\xa8\xed\x16\x5f\xf4\x52\x96\x0e\xa5\xd2\x55\x63\xbf\x91\xeb\xda\x9b\x8a\xcf\x24\x49\x71\x64\xae\x22\x11\x42\xd8\x26\x76\x08\x71\x06\x22\xc5\xce\x97\x72\x76\xa7\xb8\x6d\x1f\x6e\x2f\x86\x4d\x3f\xb1\x1d\xe0\xd7\x58\x83\x26\x9b\x23\xae\xef\x13\x9c\x15\x50\x8f\x77\xc2\xb9\x3b\x62\x13\x9d\xa7\xba\x09\xc0\xb8\x7d\xdb\xbd\x4e\xc6\x9f\xae\x97\x42\x5d\x76\x28\xcf\x97\xc2\x99\x36\x01\xc5\x46\xbb\xe1\xe6\x54\x5e\x8e\x67\x54\xdd\x92\x8d\x46\x1d\x55\xf5\x60\x80\x93\x9c\x9b\x8f\x4c\xae\x94\x8c\xe7\x5a\xc3\x8a\xa5\xc9\xe8\xb2\xa6\x36\x3a\x41\x65\x59\xaa\x5a\x9b\x01\xd6\x31\xb5\x41\x5d\x40\x9f\xe7\x0f\x89\xe4\x00\xd2\x47\xe8\x26\xcf\x66\xf8\x6e\x54\x31\x6c\x6b\xc0\x21\x03\x76\x21\x9a\x98\xa4\xa8\xdb\x6b\xd6\x37\x02\x6d\x54\x6d\xe7\x50\x1e\x30\xa8\x1b\x8c\x0a\x4f\xac\x4b\x57\xa0\x2a\x83\xfd\x6c\x4c\xda\x69\x92\xe7\x8a\x66\x06\xf7\x9f\xe8\x5d\x3f\xaa\x14\x8a\xaa\x29\xb9\x37\xc1\x38\x86\xdc\xb6\x3a\x59\x2d\x39\x13\xd9\x67\x10\x18\x8e\x85\xc8\x44\x1c\x1d\x26\xfc\x1f\xb2\x9d\x8c\xc7\x34\xcf\xdb\xf0\xb5\xb5\x1b\x48\x41\x69\x3b\x5b\xca\x9c\x4d\x68\x5b\x5d\x66\x67\x70\x45\x5e\xd0\xb1\xcc\x44\x3b\xae\xb7\xdc\x9e\xa6\xc9\x4d\x9b\xe5\x6d\x8b\x4b\x8f\x22\x54\x14\x43\xa4\x39\xf8\x97\x87\x8f\x5a\x99\xa9\xdd\x41\x2e\xad\x87\x4d\x76\x62\x58\x00\x99\x99\x47\x37\x7a\xb7\x10\xd6\x1d\x99\x3f\xfd\xf3\x44\xce\x34\x2e\xaf\x83\x80\x37\x8f\x72\xea\x2c\x4e\x52\x24\x40\x2f\xe7\xa0\xf5\xd4\xc7\x60\xe8\x9a\x41\x24\xae\x9d\xdf\xea\x04\xb4\x69\x0a\xc1\x5e\xcd\xa4\x0d\xca\x8b\xa6\x59\x76\x9d\x88\xfe\x75\xf2\x97\xda\xe9\xf6\x27\xa8\xd8\x91\x37\x8c\xbf\xca\xc4\xfb\x8b\x53\xc2\x24\x18\x5d\xda\x6c\x1a\xd7\x40\x9e\xdf\x5f\x9c\xa2\x5f\x29\x79\x7f\x71\x8a\x6b\xe5\x32\xe9\x42\xd1\xa2\x25\xd7\x69\xdd\x27\xbe\xa8\xd6\x89\xad\x56\x0d\xfa\x07\xfd\xaa\x6b\xd2\x90\xa2\xfa\xe2\x67\xcb\x74\xd2\xe6\x99\x6c\x4f\x19\x9f\xb4\xc1\xcb\x50\x75\xa5\xbd\x48\x04\xe8\xc5\xe6\x74\x3c\x4b\x38\xcb\xe7\x60\x70\x50\x6f\x2e\x13\xce\xa4\xc9\x3a\x1f\xa1\xd6\xaf\x94\x94\x1b\x89\xa3\xa5\x48\xc1\xe7\xa5\x36\x8a\xa2\x30\xb6\xde\x0d\xe2\x4c\xa5\xd0\xba\xcb\xf4\x8d\xb7\x54\xaa\x45\x3e\x52\x74\x7b\xa8\xb8\xfa\x97\x26\x35\x51\xf4\x71\xc6\x52\x6a\xe8\x9a\xf1\x9b\xfe\x7f\xf2\xff\xe4\xc6\xbe\xdd\xec\x2c\xd3\x68\xf5\xa9\x5b\x49\x37\xb4\x1d\x86\x1e\x68\x0b\x56\xab\xa4\x61\x1a\x77\x35\x71\xb3\x8c\x9f\x48\x3a\x77\xbe\xce\xfb\x9c\x78\x53\x4d\xbf\x52\xc4\x9e\x14\xee\xeb\x4e\x27\xe6\xc4\xbb\x35\x20\xbc\x61\x4c\x81\x6d\x4d\xf5\x8e\x2b\xc9\x12\xcb\x6e\xc6\x21\x91\x8a\x3e\x05\x5e\x36\x1a\xb6\x75\x7d\x8e\x09\x56\xca\x1c\x36\x9b\x59\x75\x21\xcf\xed\x80\x09\x1c\x3c\xe4\x20\xb4\x09\x9d\xb8\xee\x35\xf8\x2d\x38\xc4\x9b\x1d\x84\x6a\x88\xc3\x5e\xe2\xb9\x92\x6b\xe3\x0f\xbb\x49\x7e\xc7\xc7\xa7\x6c\x4a\x0f\xef\xc6\x29\xf4\x43\x1d\xda\xb9\x97\x60\x3e\x6d\x28\xec\x3b\x07\x3b\xe4\x2d\x78\x18\xc5\x8d\x32\xe3\xf7\x09\xcb\xcd\x9a\xc2\x72\xb3\x66\xbf\x3b\x43\xcb\x00\x5c\x30\xa1\x29\xbd\xd1\x40\xe8\x61\xa0\xd0\x92\x24\xc6\x86\x9c\x92\xfb\x02\x8f\x9b\x76\xef\xd2\xe8\x69\x01\xf3\x43\x71\xd6\x92\xe6\xef\xdd\xc5\xf9\x6f\xbf\x23\x13\x8c\x51\xce\x1d\x67\x23\x38\x97\x60\x30\x96\xc8\x5a\x52\x96\x06\x3e\xcb\x2b\xa0\x2b\x20\x6f\xda\xeb\xd9\x03\x5f\x80\x2e\x97\x10\xd6\x3d\x7c\x7f\x79\x75\xfe\x76\x74\x75\xf0\x7a\xf4\xea\xfc\xc2\x1e\x9b\xe3\x02\xcf\x92\xbc\x39\x35\x9d\x6d\xbb\xc0\xd9\x67\xfe\x0b\xbd\xcb\xeb\xa9\xed\xda\x4b\x6d\xf8\x2e\x70\x39\x30\xfc\x88\xe6\x63\xc1\x16\x32\x13\xf5\x32\xf7\xd4\x45\x7b\x03\x55\x66\x7c\xca\x6e\x96\xf6\x77\x51\x14\xad\x1e\x4e\xe1\xd8\x02\x61\x37\x4e\xf1\x4c\x47\x5c\xda\x78\x75\x7d\x24\xd8\xa6\xe2\x14\x57\x07\x87\xef\xcb\x95\xee\xe2\xb0\xc9\x5d\x93\xf6\x77\x5c\x20\x6c\xba\xdf\xac\x37\x5b\xd7\x1c\xc5\x9b\x87\x50\x95\x5e\x34\xff\xb7\xa4\xb0\x6e\xe5\xa4\xf1\x57\x77\x2b\x57\x80\x30\xc9\xb5\x91\x7f\xd2\x4f\x83\x04\xe6\xfd\x24\x8c\xe7\xb4\x05\x5a\x3a\x78\xc6\x52\xb4\xf3\xa1\x8b\xab\x11\x99\x3a\x0c\x0b\x73\x84\xe7\x7a\x9e\x65\x9c\xe1\x05\x04\xab\xa4\x8f\x70\xb9\x7c\x28\xe4\x6e\xfe\xd5\x21\x77\x8b\xa7\x86\xdc\xcd\x9f\x1c\x72\x37\xd7\x21\x77\xf3\x02\x67\x4f\xc3\xc5\x05\x1f\xf8\x87\xc2\x1f\x5a\x3e\x96\xdf\x71\x8d\x7a\x2c\x9e\x9a\x80\x96\xb4\x0b\x6b\x62\x5e\x15\xcf\x07\x82\x0f\xd7\x99\x35\xad\x33\xfe\x24\x63\x81\x3a\x1d\x61\xda\xf5\x0b\xcd\xc1\xaf\x3f\x7b\x20\x54\xc5\xf5\xac\x1c\x0c\x73\x25\x21\x31\x74\x90\x11\xc0\x57\x2c\x6c\xb5\x1b\xc2\x05\x9a\xab\xdd\x6b\x52\x45\xc3\x99\xd2\xe9\xc0\xe9\x50\x20\xdf\xec\xfb\xca\x78\x74\xb3\x37\x54\x36\x09\x3b\x0f\x0c\x47\x06\xe5\x7c\x45\xb5\x10\x4b\x5b\x0b\xe5\xb7\x1b\x96\xad\x15\xa8\x1e\xd7\xa2\xbd\x8a\xb0\x45\x8e\xcc\x5a\x3c\x2a\xd6\x21\xdb\x18\xfc\x5f\x1d\xa9\x67\x21\x25\xd7\xba\x03\x89\xef\x1f\x91\x79\x60\xb5\x92\x6b\x0f\x62\xdb\xe3\x4d\x31\x54\x21\x03\x63\xf9\x61\xc6\x73\xf5\xf9\x8d\xba\x2a\x4b\xd4\x00\xc5\x0d\x8c\xcd\x90\xcf\x86\x38\xb1\xaf\xdb\x79\xd5\x98\x96\xec\xab\x81\xa1\x9f\xd6\xca\xf7\x87\xc0\xd0\xe1\x2e\x08\xbf\xab\x07\x69\x60\x66\x84\x4c\x4b\x00\x8f\xc2\x49\x0e\xb0\x0a\xcb\x0c\x86\x30\xdc\xec\x33\x1d\x12\xc5\xc4\x71\xd9\x42\x1b\xb6\x9f\x0a\x3f\xec\x12\x67\x05\xe7\x10\x60\x19\xe1\x7f\x7d\x43\x18\x8a\x9b\x01\x51\x09\x4b\xa9\x84\xa2\xbc\x95\x4f\x0b\x45\xe1\xd8\xd6\xdc\x17\x45\x81\x2f\xea\x77\x9b\x52\xf5\xe5\x40\x97\x5a\xb5\x26\x07\xb8\xaa\xe9\xf0\x1b\xe3\x59\xb4\x9e\xe8\x51\x36\xb1\x92\x67\xfc\x63\xa0\xfe\x75\x37\x9f\x00\xf4\x6f\x30\xc4\x4f\xbe\xe5\x5a\xf3\x37\x25\x5d\xd9\xfd\xfe\x49\x57\x8e\x36\xdc\x48\xfe\x56\x2d\xf6\x7f\x6f\xa6\x86\x13\xb9\x36\x1a\xa9\x0c\x1c\x83\x59\x00\xa1\xb1\x39\xd5\x8a\xbe\x7e\xdd\x97\x72\xba\x14\xde\x08\xb7\x51\x9c\xcc\xd6\x89\x93\x7c\x83\x24\xa9\x95\xbb\x76\x77\xb3\x4d\x32\x64\x56\xe2\x5e\xd9\x13\xd3\x6d\x64\xa0\x3e\xce\x8a\xc0\x5a\xd4\x98\xe8\x22\x40\x53\x3d\x7b\x7f\x7a\x1a\x02\xa9\xfe\x5d\x19\x2f\xbe\x43\xd2\x80\x87\xd2\x66\x7c\xdf\x80\xd4\x27\x66\xaa\x78\x52\xd2\x88\x6f\xc9\x19\xf1\x35\x63\x11\xe6\x38\x3f\x7b\x58\x0f\x1c\x9e\x7a\x3e\xd2\xa0\x7c\x9e\x1d\xc9\x90\xff\x37\x6b\xd1\x73\x9d\x92\xb7\x31\x07\x3d\xe8\xc7\xbd\x76\xfa\xb4\xd1\xbd\x8c\x56\x50\x82\x7a\xa8\xc0\xaf\x1e\xfb\x65\x00\x33\x19\x5a\xbc\xc6\x33\x3a\xfe\x74\x9d\x7d\xd1\xe1\x46\xd5\x52\x0e\xae\x34\xda\x71\x1f\xf6\xa3\x1d\x25\x41\xef\x4c\x19\x4d\x27\x51\x80\x52\x29\x43\xe6\x17\x40\xe5\x0b\x22\xcb\xb5\x05\xe0\xbb\x98\x13\x31\x10\x1e\x4f\x17\x78\x56\x22\xe3\x5d\x54\x01\x70\x07\x4c\x5a\xb6\x5f\x45\x94\xe5\xa8\xcf\x34\xf6\x14\xb3\x48\xb2\x0c\xf5\xa3\x08\x54\x56\x2f\xff\x8f\xf1\x70\x2c\xfb\xbb\xed\x6f\xb2\xf0\x55\x18\x4d\x78\x1b\xd8\xe4\xde\x58\xc7\x97\x7e\xd0\xad\x11\x8e\xc8\x9f\x1b\x4b\x34\x3c\x32\x19\x2a\x1b\x0d\x03\xd4\xc5\x90\x29\x61\x76\x3f\x8a\xfa\x0e\x15\x38\xa0\xdb\x0f\x72\x1d\x85\x5b\xba\x9a\x27\x8b\xf8\x67\x69\x5d\xe5\xa3\x20\xbc\xfc\x4f\xe9\xe6\x38\xf4\x12\xd4\x11\x72\x1f\x25\x51\xef\x7d\x4b\x3f\x3c\x48\xca\x0d\xb9\xbb\x83\x6c\xcd\x01\xda\x27\x1d\xf4\x86\xa0\x54\x30\xc1\x94\x08\x67\x75\x70\xd4\x24\x00\x47\xcd\x10\xce\x49\x6f\x2f\x7f\x91\xed\xe5\xdb\xdb\x28\x19\xe4\x21\x38\x6a\x6e\x9d\xc9\xd6\x81\xbf\xee\xc3\xbf\x46\xe4\x11\x90\x64\x1a\xb0\x4a\x13\x84\xfa\x1c\xe4\x57\xf3\x8e\xe3\xc1\x47\xe9\xa0\x4c\x19\x4e\x4a\x30\xa6\xaf\x1f\xbd\x99\x95\x60\x51\xa1\x50\x11\x20\xd8\x35\xed\x65\x6f\xdd\x16\xd8\x2c\x34\xb7\xf0\x73\xbf\x7f\xb5\xdf\xd6\x6b\x09\x22\x90\x15\xcc\xf3\x6c\x29\xc6\x1e\xb4\xa5\x06\xb1\xd6\x03\xcf\xa5\x44\xce\xd6\x7f\xb2\x8b\x30\x7f\x82\x58\xff\x58\x54\x62\x1f\x0c\x50\xed\xe4\x86\x39\xf5\x2a\x66\x33\x63\x2e\xa0\xa7\x56\x1a\xed\xc1\x04\xe7\x6a\x82\xd5\xed\x8d\xa2\xa2\x58\x9f\xf3\xc3\x53\xfd\x2f\xe5\xfd\x55\x81\x84\xf3\xb4\xf1\xeb\x83\xb4\x81\xdd\xca\x5b\x7e\xfe\xbc\xc4\xc7\x2f\x65\xec\x18\x1c\xda\x77\xe9\x53\xfa\x2e\x1c\x87\xed\xb3\xca\x43\xdf\xfc\x9b\x47\x37\xff\x1c\xf9\xe3\x64\x7d\xf3\x1e\x99\xb3\xd6\x93\xbe\xeb\x85\x6f\xfe\x37\x59\xc6\x04\xf5\x1d\xd8\x8b\x25\x19\x67\x3c\xcf\x52\x8a\xba\x69\x76\x63\xef\x1d\x5e\xdb\x1f\x54\xf3\x07\x54\x13\x16\x77\x6e\x55\x30\xf1\xa1\x46\xeb\xb2\x1b\xe4\xf4\x8e\x6b\x11\x9b\xae\x76\x7d\xe2\x54\xc2\x77\x9e\xe2\xf9\xb8\x19\x0b\xfc\x7f\x2b\x0c\xf0\xba\x9c\x25\x8c\x9c\x75\x44\x37\x88\x58\x06\xc3\xfb\x88\x0e\x41\xd8\x5a\x07\xd6\x2d\x05\x19\x44\x49\x2a\x23\x1c\x41\xa0\x57\x84\xa3\x39\x95\x49\x84\xa3\xb1\x14\x69\x34\xc4\x42\x90\x67\xff\xf7\x38\x65\xe3\x4f\xab\x79\xb6\xcc\xe9\x4a\x66\xcb\xf1\xec\x59\x6b\xd9\x3d\x80\x56\x4d\x1a\x54\x77\xa1\xa1\x13\xfd\x3c\xd7\x73\xd5\x00\x30\x4b\xa8\x81\xdd\x3e\x71\x6b\xff\x60\x65\x03\x09\xa8\xc8\x05\x66\x0f\x54\xa8\x43\x82\x1e\x55\x61\x81\x43\xaf\xab\xe6\x24\x61\x38\xc3\x09\xce\xf1\x52\xb7\x94\x86\xc9\xc2\x0c\xe8\x9d\x91\xa9\x6c\x07\x9c\xfe\x0b\x7e\x03\x44\xab\x08\x9f\x1c\x04\x68\x25\x4e\x19\x66\xd3\x84\xf9\x2d\x42\x4c\xa2\x61\x36\x5f\xa4\x6c\xcc\xe4\x95\x06\x92\x4c\x8c\xee\x29\x9b\x93\xdc\xe8\xd6\x6e\x29\x07\x70\x5e\x62\xfd\x31\x8e\xed\x93\x50\x8a\x5b\x3e\x3d\x6b\x17\x13\x71\xfa\x50\x96\xae\xb0\xb9\x75\xa4\xef\x46\xa9\x51\x17\x33\x1e\xb9\x53\x72\xb5\x8a\x80\xb2\x22\x23\x92\x1d\xf8\x29\x6a\x14\x37\xbc\xec\x50\x99\x51\xeb\xe5\x85\x25\xe9\xed\xc9\x17\xcd\x6f\xf7\xe4\xf6\x36\xa2\x8a\x92\x2a\xef\x07\x72\x58\xcd\x65\xe5\x9c\x1d\xf4\xbc\xaf\x11\x5f\x4b\x8b\x63\xdd\x39\xdd\x78\xfd\x34\x01\x20\xa5\xc6\x02\x8d\xd0\xbe\xd4\x13\x61\x7f\x3b\x4e\x4c\x3d\x7f\x50\x45\xf8\x24\xa5\x4d\xc4\x6e\x62\xeb\x2a\x54\x66\x23\x11\x5c\xeb\xd8\xc6\xd5\x45\xd7\xcb\xeb\xeb\x94\xe6\x90\x8d\xc4\x3c\x5a\x08\xa0\x9b\x23\x3a\x4d\x96\xa9\x8c\x90\x92\xcb\xf4\x9b\x24\x4d\xb3\xcf\x74\xf2\x0b\xbd\x53\x05\x72\x47\x55\x7a\x8c\x31\xc2\x29\x81\x6c\x2f\xd5\xec\x5f\x5b\x35\x83\xb1\x16\x83\xf5\xdf\x42\x74\x25\xcd\x65\xac\x61\x1e\x6c\x18\x0b\x40\x39\xb2\xfc\x52\xcd\x23\x3d\x54\x84\xa0\x81\x3a\x48\x14\x81\xb5\xd8\x43\x09\x26\xfc\x2e\x42\x3f\x91\x1e\xb2\x67\x5b\xcb\xe7\x82\xea\xed\x89\x17\xd2\x5e\xac\x00\x66\x9f\x4d\x63\x3a\x90\x62\x20\x86\xdb\xd1\x2f\xf4\x2e\x1a\x1a\x6c\x42\x5f\x21\xbc\xb4\xdd\x70\x4e\xd8\x5b\xbd\x22\xa6\x38\x71\xa7\xcc\x6a\xa5\x33\xdb\xb8\x60\x3c\x75\x01\x2f\x4f\x9d\x9a\x90\xd5\x8a\x76\x73\x99\x2d\xd4\x05\x25\xb9\x49\x34\x9d\x60\xf0\xcf\x53\xe2\x79\xd9\xa9\xd0\xca\xcd\x25\x6a\x07\xf9\xf9\x1e\x74\x48\x14\x9b\x5c\x00\xb9\x51\x2d\x2d\xd3\xb4\x68\x35\xdc\x24\xb4\x0c\xdc\xf4\x62\x3f\xe6\xfa\x26\x2f\x70\xde\xcd\x29\x9f\xec\x7f\x45\x9e\x00\x5e\x62\x09\xba\x1e\x73\xcc\xe7\x78\x20\x9c\x38\x4d\x21\x2d\x40\xff\xdb\x5b\x50\x75\xda\xfa\xc1\x7b\xf1\x3b\x54\x2a\xca\x35\x7e\x87\x0a\x4b\x57\x0e\xa8\xb4\x40\x08\xa7\xd6\xcd\x26\x59\x77\xa0\x6c\x4e\xaf\xbe\x16\xd4\xd8\x85\x3e\xe0\x25\x80\x17\x87\xb0\xc5\xa9\xf1\xf9\x98\x92\x34\x94\x0d\x27\x24\x55\x1c\x5f\x09\xd6\x53\x1b\x2c\xb0\xab\xb6\x44\x46\xa6\x46\x68\x8c\x97\xfa\xcf\x5d\x84\x20\x8b\x46\x42\x96\xda\xd1\x6d\x19\x82\x5c\xb6\x12\xb2\xf4\x42\xa1\xd9\x6e\x33\x32\x18\xe2\x05\x79\xbe\xb7\x78\x61\x6b\xdf\x5b\x6c\x6f\xa3\x99\x8e\x3f\x80\x6a\x17\xc8\x42\x07\x83\x64\xbf\x5c\xb2\x09\x8a\x11\xd6\xc0\xbd\x99\x88\x29\x9e\xe3\x04\xcf\xf0\x18\x4f\x71\x86\x19\x9e\x38\xae\x7b\x5b\x80\xd8\x95\xcb\x24\x4d\x9b\xed\x8e\xd9\x1c\x44\x51\x73\xf8\x6a\x0c\x41\x7b\xf4\x73\x01\xbe\x85\x65\x10\x4a\x81\xa3\x49\x22\x93\x9d\xf2\xaa\x46\xd1\xa3\x3e\xdc\x89\xb6\x39\xe6\xeb\x60\x3c\xea\x82\xb9\x11\xc0\xa5\x9a\x55\x40\xb1\x0a\xa4\x00\x2f\xbc\x62\x1a\x9c\xda\xb4\x72\x64\xbb\x73\x67\x0d\x9c\x10\x58\x30\xe5\xe3\x6c\xb9\x4e\x75\x91\x8b\xc7\xd8\xb9\xde\x66\x13\x36\x65\x54\x6c\x34\x73\x19\x43\x53\xe9\xdb\xbe\xc4\xc6\xac\x15\x98\xae\xca\x5a\x43\xbe\x3f\x15\xfd\x89\x28\xf0\x72\x6d\x57\x2a\x02\x95\x6b\xd8\xea\x1f\x4d\x8b\x4d\xb0\x6f\x72\xb3\x2e\xeb\xc9\xa2\x8f\x4b\x53\x6a\x87\x19\x0b\xcc\xfd\xd5\x06\xa1\x02\xa7\xdf\x71\xa7\x7b\x1d\x82\xb3\xf9\xab\xdb\x5c\x69\x8e\x21\x2e\x3d\x44\x88\xf7\x1f\x9b\x4a\x5d\x5f\x19\x76\x07\x16\x0a\x2f\x57\x4b\xb5\xf5\x38\x4e\x70\xb6\x8e\xca\x6a\x00\xa5\x8a\x91\x94\xbc\x84\xac\x1a\x50\x60\x69\x92\xcb\x3d\xb0\x63\xed\x4e\x2d\xc1\x7e\x06\xc3\xa4\x6e\x61\x01\x0f\xda\x70\x2e\xb8\xbc\xf2\x8a\x1d\x58\x3b\x37\x1f\x2c\x65\xe6\x83\xbe\x40\xd9\xc7\xa5\xfa\xdd\xe8\xbc\xcf\x6d\xe7\x82\xd9\x29\x5d\x53\x11\x0a\x13\x07\xe9\xc0\xaf\x6f\xa8\x0d\x6f\xed\x82\x52\xa2\xa4\x82\xcc\x70\xa2\x31\x4d\x36\x30\x11\x37\xe5\x25\xb7\x0f\x37\x37\xac\x32\x37\xe2\x3b\xcc\x8d\xf5\xda\x71\x83\xe1\xc1\x0d\xbb\x34\x31\xd9\x43\x13\xf3\x40\x55\x8d\xb3\xc2\x14\x1d\x3e\x89\x97\xe1\xf1\xf7\xd9\x74\x25\x4d\x6d\xd3\x56\x70\x1f\x54\x4d\x59\x0d\xb4\x8e\xee\x9b\x56\x56\x3f\x5d\x37\xb2\x4a\x07\x34\x48\x81\x80\xf3\x31\x15\x78\xa2\xff\x1a\x0b\x3c\x13\xa0\xae\xc5\x8b\xd2\xb8\xa5\xb8\xd3\x62\x24\x96\x6b\xc1\xe2\x26\xec\x16\x70\x69\x7a\x7e\x16\x92\xc9\x04\xce\x99\x53\xc5\x06\x39\x15\xb1\xb9\x7b\x35\x31\x40\xb1\xbd\x5d\x20\x7c\x9f\x69\xd3\x74\x81\x70\x83\x12\x16\x2a\xdb\xd7\x97\x32\xf8\xdb\x56\x88\xfa\x71\x1d\xc5\x4e\x7f\x00\xff\x45\x08\x75\x19\x67\xb2\x54\x08\x6f\xf5\x20\xb9\xb4\x54\xb4\xbc\x48\xe4\x78\xa6\x5f\xd3\xc6\x47\x4a\x9a\x17\x06\x1c\x8d\x07\x81\x77\x10\x52\xbd\xf1\x52\x6f\xf1\x5b\x66\xd9\x32\xb5\x3e\x64\x26\xf5\x92\x8b\x84\x29\x1d\x47\x0d\xfe\x2c\xea\xb8\x11\xeb\x92\xe7\x69\x4a\x78\x25\xb2\x79\xf5\x1e\x6b\xd7\xcc\xd5\xa7\x63\x11\x41\xf9\xe8\xd5\xe8\xa2\xab\x66\x1d\xf0\x48\x16\x49\x9e\xb3\x5b\x1a\xb2\xfe\x16\xb7\xc8\x37\x99\xf6\x42\x77\x7f\xdb\xb3\xb0\x32\x32\x84\x99\x2d\x61\xaa\xb3\x85\xcc\x4f\xab\x7b\xa8\x95\xcb\x6c\x39\xd3\xb4\x2d\x67\xb1\xbb\xb2\x35\xe5\xf8\x6a\xc5\x56\xab\x6c\xdf\x5c\x92\xb3\x05\xe8\x5b\x88\x26\x26\x8e\x4d\xb3\x7d\x86\x4d\x45\xfd\xac\xe8\x97\xbe\xd4\x1a\x49\x03\x0e\x5a\x57\x66\xbb\x8b\x67\x62\x3b\xe8\xa4\x29\xdb\x45\x2f\x5e\x25\xcd\x9d\x34\x40\x9f\x0d\x6a\xf0\x25\xf1\x09\x95\x97\xb6\x81\x65\x4e\xc5\x3b\x91\xdd\xb2\x09\x9d\x58\xdf\x72\xdb\x56\xd3\x3b\xb2\xdc\xd0\xac\xba\x40\x13\x42\x16\xa2\xd3\xe1\xab\xd5\xd6\xae\x03\xeb\x09\xbf\x56\x02\x7b\x8a\x00\x9a\xcf\x2e\x82\xa9\xda\x11\x94\x73\x8f\xde\x82\xaa\x3a\x9d\x6b\x61\xf3\x67\x8f\x31\x45\x78\xa9\xf5\x9d\x33\x81\x25\x2a\x5a\x1e\xc9\xc7\xd5\xb4\x34\x9c\xe7\x56\x90\x1e\xbe\x13\x21\xc4\xe3\xb5\xf0\xc2\xd9\x9d\xd8\xde\xc6\x0b\xb1\x4f\xbb\x82\xce\xb3\x5b\x5a\x66\x22\xfa\x23\xaf\xcf\xe6\x9d\x0e\xb7\x24\xb2\xa1\xc8\x56\x0f\xf5\xd7\xbe\x0d\x94\xc7\x37\x41\x47\x6e\x5d\x47\x6a\xac\xec\x81\x5e\x34\x7e\xaf\xbb\xd0\xf4\x4a\xab\xbc\x46\x1b\xf8\x88\xe1\x22\x97\xef\xdf\xbd\x3b\xbf\xb8\xba\x1c\x1d\x7f\x38\x3e\xbb\x1a\x9d\xbf\xbb\x3a\x39\x3f\xbb\x24\x0b\xd1\x1c\xe1\x14\x32\x99\x4d\x51\x73\x6b\x84\x44\x75\xf6\xd7\xeb\x6d\x88\x0e\x0e\x04\xc5\x50\xfe\x9b\x1b\x70\x60\xe8\x01\xa6\x26\x64\x7d\xfd\x65\xc3\xa0\xae\xd0\xfd\xf2\x29\xd8\x37\x97\x10\xd1\x28\xf7\x79\xa4\x3d\x50\xfa\x97\xb9\x61\x8c\x5a\x4d\x72\xa1\xdb\xae\xd8\x6a\xe9\x15\x7d\x82\xcc\x63\x78\x42\xeb\xc6\xac\x31\x66\x1b\xc4\x79\xda\x74\x94\x5d\xfb\x92\x05\xdc\xbd\xca\x9b\x72\xb7\x50\x23\x69\x10\xcc\x4a\x03\xf9\xca\x5e\xd7\xc7\x5f\x69\xbf\xd3\x89\x83\xfe\x61\x45\xed\xae\x8d\xb0\x85\xa0\x7e\x57\x7b\xc3\x58\xc0\xfc\xf5\x38\x79\x6a\x83\xf7\xc6\x38\x5b\x2a\xf2\xca\xd7\x38\x70\xdc\x27\x93\x49\xde\xbf\x15\x58\xef\xde\xbc\x7f\x27\x0a\xef\xcf\xf1\x59\x3c\x00\x4f\xfe\x5d\x03\x8d\xbe\x01\x89\xb8\xee\x65\x77\x2c\xfe\x5b\xbd\xec\x1e\xce\x38\x47\xf9\x0d\xe3\xb4\x9e\x4c\x4f\xf5\x87\x8d\x4d\x64\x60\x6c\xbf\xfb\x3b\x32\xd0\x75\xc7\x19\x97\x22\x53\x93\x8f\x25\xc2\xf2\x71\x7e\x7c\x9f\xc5\xe3\xfd\xf8\xac\x0b\x1e\x30\xa9\xee\xf5\x92\xa5\x1a\x05\xef\x18\xc6\xe4\x02\xaf\x39\x6a\xb1\xee\x75\x96\x49\xc3\x52\x8c\x99\x06\xa7\x84\x75\xa7\x0e\xf7\x39\x8e\x7c\x7f\xcb\xb3\x04\xa8\x4f\x97\xdd\x1b\xc5\xf2\xc1\xd1\xdf\x7e\x66\x40\xa3\xd5\xf5\x24\x2a\x95\x50\xc7\x74\x29\xc1\xd4\x3c\x9b\xd0\x14\x12\x4c\x2d\xcb\x79\xa5\xcc\x8b\x20\x4d\xf3\x12\x65\x24\xb5\x5e\x84\xc8\x38\x41\xac\xf5\xde\xcf\xd4\xe9\x9d\x93\x7b\xbd\x8c\x4a\x50\xf2\x83\xc8\x70\x4e\xd3\x69\x3f\xc1\x15\x07\x46\x77\x55\x9b\x78\xa5\x5d\x2b\x68\xf4\x1e\x3a\xd5\x9f\x14\xdf\xa7\x75\xa8\xed\x82\x4e\xfb\xcb\x4a\x47\x8a\x6f\x8e\xd9\x71\x38\xe9\xba\x03\x8f\xf0\xb0\x0c\xe0\xd1\x8d\x05\x1d\x54\x6c\x8f\xf2\xe4\x14\xd9\x52\xd2\x1d\x5b\xde\xe2\xa8\x86\x0b\xbf\xa1\xe1\xac\xa1\xe1\xb5\x87\x13\x7b\x72\x80\x50\xb6\x7e\x18\xe1\x67\xb9\x8e\x23\xca\x1b\x9d\x3d\x43\xd5\xa1\x5a\xbb\x26\x1f\x4f\xc7\x61\x1a\xfd\xa9\xda\xa0\x85\x80\xd5\x86\x20\x6c\xff\x53\x87\x89\x6d\x58\xe9\x72\x5c\x86\x8e\xae\x89\x25\xa9\x79\x8c\x7a\x46\xf2\xd0\xb9\x65\x58\xdb\xb7\xb8\x83\xc6\x4f\xf4\xa1\xac\xb0\xbc\xa7\x7b\x60\xae\x73\x27\xbd\x75\xc9\x4d\x5c\xfd\xa2\x92\x11\x8d\x07\xb3\xdd\x0a\x85\x5b\xd0\x5d\x5b\x4e\x13\xa8\x26\x37\xad\x86\x78\x30\x63\xce\x43\x5f\x04\x5d\x45\xdf\xe4\xc6\xfa\xdf\xb1\x06\xd6\x0d\xf6\xb2\x01\xf3\xd5\x6a\xa9\x8f\x45\x43\xac\x46\xa1\xc3\x19\xcf\x1f\xa3\x56\x50\x25\x2e\x00\x9e\xdf\x05\xbe\x34\xe8\x0f\x46\x00\x51\xa9\xae\xa7\xda\x39\xdc\x3d\x3b\xa2\xd3\xe0\x91\xcf\xd1\xff\x95\xee\x95\x94\xdf\x86\x46\xe9\x0b\x3a\x75\x76\x63\xad\x89\x95\x15\x23\x6e\x2d\x4f\x00\xdf\xaf\x74\x98\x90\xf0\xd1\x11\x9d\xf6\xcb\x07\xf6\x2c\xc9\x2f\x80\xf9\xe9\x08\xfb\xd8\x70\x71\xc8\xf7\xbb\x1f\x57\x47\x5f\x19\x3a\xf0\xce\xf1\x52\xa8\xe3\x17\xbc\x81\x44\x0c\xa8\xb5\xe5\xcf\x34\x86\x5a\x3f\x5e\x37\x6d\x95\xd9\xd5\xa9\xd2\xaa\x2e\x9f\x81\x13\xfc\xfb\xb3\xa3\xe3\x57\x27\x67\xc7\x47\xa1\x27\xbc\x46\xce\x58\xbb\xe4\x16\x3a\x05\x70\x94\x2f\x65\x10\x08\x55\x31\x45\x68\x06\xf7\xe8\xec\x04\x65\xc0\xfe\x2b\x73\xa1\xd7\xf0\x07\x1b\xfd\x8b\x82\x9e\x6c\x02\x9d\x0f\x3e\x33\x7f\x2b\xe2\x67\x9c\x50\x8d\xa7\x36\x61\x42\xde\x79\xb7\x59\xc5\xe0\x2d\x80\xc0\xc3\xb7\x61\x8d\xd5\x0a\x95\x07\x7b\x40\x37\x73\x66\x36\x86\x7c\xc8\xb1\xd8\x58\x15\xbe\x92\xe2\xcb\x5d\x08\x3c\x8b\x9d\x28\x46\x8d\x17\x5c\xdf\x4d\x80\x33\x3e\xda\x4f\xa4\xfd\x44\x0e\xea\x23\xb0\x75\x0e\x37\x78\x11\x57\xd7\x0e\x26\xf0\xea\xb1\x13\x68\x27\xee\x13\xbd\x0b\xa7\xeb\x41\x4e\x50\xea\x8c\x2c\x75\x86\x1a\x98\xc3\x66\x3a\xaa\xcd\x5f\xcd\x19\xa6\xd3\xa1\x03\xdb\xa7\x61\x60\x57\xfc\xf4\x1d\x1c\xf0\xcc\xa0\xab\x1e\x78\x4f\x88\x31\x7b\xc2\x80\xc2\xf4\xe4\xc1\x11\xac\x01\x4a\x4a\x6f\x1d\x82\xac\xd4\x27\xb0\x75\x2c\x6d\x70\xa1\x7b\xfb\xf0\xca\x6a\x12\x6a\x3e\x19\x20\xaa\x5f\x63\xd9\x79\x26\xa6\x78\x98\xe6\x2b\xdf\xe7\x3c\x68\x12\x3c\x6a\x93\x42\x82\x61\x87\xa0\xa7\xb5\xf9\xa9\x41\x37\xda\xcb\x6d\x18\x83\xe5\x3e\xe5\xa5\x4f\x8f\x62\x8e\x00\x3d\x85\xc7\x42\x1f\x1a\xce\x4a\x79\x2f\xd4\x79\x82\x4d\x72\x1e\x8d\xc6\x0d\x13\xd7\x17\x66\x06\xc3\x30\xc9\xe0\x5e\x22\x42\x01\x41\xdf\x74\x84\x5d\xb6\xb8\xbc\x00\x30\xdc\x35\xbe\x4a\x65\xc8\x57\x35\x1b\x61\x22\x97\xaa\xb7\x50\xdb\xc7\xbd\x69\x64\x7f\x97\xd8\x39\x94\x57\xe0\x95\xff\x59\xc4\xb4\xb2\xc0\xa8\x84\x1b\xe5\x89\xa1\x55\xa1\x03\x6a\x23\xfa\xad\x5b\x22\xb1\x89\xc6\xcb\x6a\xaa\x9c\xc4\xe6\xcc\x77\x63\xb6\xa7\xbe\x92\x07\xb8\xd9\x61\x0c\x6e\x81\x9f\x0c\x78\x60\x9c\x69\xb4\xee\x09\x1b\x4b\x25\x90\xeb\xc9\x23\x0c\xdf\xcb\xe4\xa6\xcf\x43\x20\x80\x30\x45\x55\xe8\x77\xa2\x21\x04\xcc\xf7\xf3\x64\xd1\xcf\xe0\x51\xde\x1f\x18\x31\x75\x88\x7d\x76\x8b\xfe\x80\x0d\xb1\x76\x1f\xe9\xef\x56\x70\x3f\x5c\xc0\x8e\x2e\xa6\x96\xa5\x28\x6b\xa2\x9a\x3e\xd9\x67\xfd\x35\x47\xb9\xc6\xd8\xa8\xab\xb1\x34\x9d\x78\xbf\xe7\xa2\xf0\x3d\x5a\x57\x46\x0f\xd2\x3b\xda\xb9\x13\x26\x98\xa0\x8a\x27\x67\x50\x3f\x6a\x25\x35\x19\xe7\x1a\x24\xef\xdc\x41\x8a\x56\x59\x42\xf2\x55\xa2\x0b\xd0\xca\x3b\x51\xca\xb8\xf3\x2f\x61\x01\x59\x35\x82\x97\xe6\x1c\xe7\x53\xaf\xf5\xbf\x10\xe5\xb4\x1a\x74\x4f\x93\x96\xdc\xb3\x1e\xf9\xef\x84\x45\x7d\x09\x79\xa5\xe3\x05\xa2\x25\xc9\xbf\x44\x2c\x51\x29\x08\x51\x15\x3d\x14\xf8\x44\xe0\x23\x81\xcf\xca\x9d\x3a\x7d\xb0\x53\xaf\x44\x09\x0a\xe6\x4c\x98\x7c\x06\x54\xdd\x1a\xdd\x57\x7f\x3d\xd8\xf5\xb3\x87\xbb\x7e\x5a\xeb\xba\xab\xff\xbd\xf0\x9c\x13\xda\x0a\xc0\xf3\xb7\xd4\x11\x25\xa9\xe0\x49\xda\xe9\x44\xd6\x64\xef\xd3\x7d\xec\x4b\xab\x92\xaa\x79\xf8\xbf\x14\x9e\x98\xef\x35\x34\x59\x10\x5d\xda\x8f\xb6\x69\x10\xa9\xf2\x73\x69\x26\xee\x75\x44\x85\xb7\x79\xd0\x7d\xaf\x11\x8c\xb6\xed\x0b\xbd\x09\x17\xc9\x98\xf6\x65\x50\xd7\x07\x51\xd6\xbf\x35\x6b\xe5\xca\x5d\xf1\x87\x4c\xa0\x61\xe3\x70\x94\x6b\x10\x70\x09\x39\x86\x03\x96\xc4\x83\x0c\xd1\x26\xe5\xb6\xcd\xf9\x70\x21\x62\xfb\xa4\x94\x9d\xc7\x0c\xce\x37\xcc\x6d\x0c\x3b\xd3\x61\x33\xd9\xba\xbe\xba\xc1\xbb\xb2\xf9\xb3\x52\xaf\x8d\xde\xb4\xa1\xc7\x65\xae\xcf\x3b\x1d\xf3\x57\xa6\x41\x61\x9b\x7a\x93\x15\xc5\x4d\xf7\xdd\xc1\xc5\xd5\xc9\xc1\xe9\x65\xa7\x13\x1f\x56\x61\x48\x6b\x8c\x59\x90\x13\xc5\x6d\x8f\xc0\x4b\xcd\x13\x90\x28\x0a\x7c\x52\x75\x8a\x82\xe2\xbe\x7e\x6d\xfb\xb1\xb4\x0a\x4e\x20\x21\xa8\xdc\x17\xc5\x30\xc0\x1b\x35\x3a\xcc\xb8\x4c\x18\xa7\xa2\xfd\x39\xc9\x35\xc0\x5c\xb6\xe4\x93\xf6\xe7\x19\xe5\x6d\x35\x01\x8c\xdf\xb4\x97\x8b\x76\xd2\xbe\x65\xf4\x73\xde\xb6\x93\xd6\x6d\x5f\xcd\x58\xde\x66\x79\x7b\x9e\xe5\xb2\x9d\xb2\x4f\x34\xbd\x6b\x4f\x96\xb4\x2d\xb3\xf6\x3c\xe1\xcb\x24\x4d\xef\x0c\x26\x9a\x64\x89\x54\xd5\x24\xbc\x0d\xc0\xf2\xdd\x0f\x8c\x7e\xee\xb6\x2f\x29\xed\xb7\x67\x52\x2e\xfa\xcf\x9e\xdd\x30\xd9\x65\xd9\xb3\xe3\x5f\xde\x2d\xf8\x41\xe4\x05\xc9\xba\xee\x3a\xda\x96\x68\xb5\x6a\x7c\x21\x50\x51\xe0\xa3\x66\x7f\x7f\x13\x57\xf9\x0c\x9c\x1c\xe4\x40\xfa\xb8\x4a\xb7\xde\xe1\x43\x12\x8d\xa2\x6d\x81\xa5\x89\x97\x7b\x16\xa1\x42\xf3\xc8\x3f\x05\xb9\x67\xd3\x66\xd4\x29\xad\x26\x6d\x88\x24\x8a\x7f\x95\x60\x91\xb1\x0a\x41\xa9\x4e\x56\x54\x60\xed\xed\x57\xa9\xec\x56\xe7\xb5\xb1\xd1\x2e\xe0\xe5\x14\x9c\x0e\xae\x96\x20\xf7\x13\x4e\x48\x36\xe8\x0d\x71\x4e\xb2\xc1\xee\x10\x2f\x49\x66\x62\xea\x9e\x23\x9c\x92\x3c\x74\xd2\x84\xd4\xf6\x65\xf7\x72\x5e\x76\x2f\xef\x27\x78\x4a\x1a\xbb\xd4\x92\x0e\xa2\xbc\xd3\x89\x9b\xb1\x9b\xab\xf9\x7c\xaa\xd0\xb4\x80\x80\xea\x7d\x81\x0b\xd4\xd2\xd0\x78\xe1\x45\xc4\x5a\x3a\x2b\xb7\x0a\xd1\xe9\x94\x3a\x20\x07\xbd\x21\xf1\x01\x73\xea\x27\x16\xa0\x1b\x0c\x8b\xf0\xfd\xa6\x0b\x57\x2c\xc0\x11\xb9\x2f\x56\x2b\xbe\x5a\xfd\x45\x8b\xd8\xcc\x0a\xb4\x19\xa1\x4e\xc7\xcc\x8a\xf9\x8d\x97\xc8\x83\x5d\x34\xf8\xb6\xe4\xe0\x5c\xfd\x9e\xc6\x39\xce\x31\xfc\xc0\x53\x9c\x82\x03\x71\x0d\x6a\x66\x8c\x6a\xaa\x4e\x78\x9e\x23\x55\x81\xf3\x26\xc7\x63\xf7\x97\xf3\x30\xd0\x95\x36\xb9\xfd\xf6\x1a\xc2\x2e\xcd\x93\xf7\x70\xb1\x70\x55\xf8\xf8\x59\x55\xd0\xd8\xa6\x0c\xef\xf7\xd6\xa9\xa2\x08\x7b\x82\x73\x68\x19\x0d\x5e\x51\x48\x49\x0d\x2e\x3c\x34\x16\x9e\x92\x85\x48\xee\x1a\x04\xae\x76\x33\xed\x16\x58\x53\xc0\x53\xf7\xd1\x87\xe6\x7d\x34\x6d\xdc\x43\xe4\x87\x0a\xf8\x51\x53\x8d\xa2\xb1\xc2\x3a\xa0\x9d\xb3\xbe\xd7\x22\x25\x9b\x1c\x7a\x75\x90\x62\x6d\x85\x6d\x26\x70\x46\x78\x95\xb8\xf5\x01\xc2\x56\xab\x28\x82\x88\xed\x2a\xd6\x42\xbf\xa6\x6a\x63\x9d\x0e\xf3\x01\x0f\xdd\x08\xfd\xb4\xb3\xbb\x7f\x4e\x21\xb2\xd5\x47\x91\xa3\xbe\x16\x63\x5c\x04\x78\x09\x8b\xfe\x77\x19\x37\x0d\x7f\x96\xe4\xb3\xfe\x2f\x12\xa7\xd9\xcd\x53\x57\xe8\xb7\xe6\x15\x9a\x2f\x1f\x3b\xa1\x0f\x06\xf1\x02\xe4\xfa\x69\x48\x7c\xd1\x9f\x4b\x2a\xee\x76\x16\x10\x04\x18\x3d\xb5\xc7\x7f\x34\xf7\x58\xd0\x64\x92\xf1\xf4\xae\xb1\xdb\x4d\x84\x3e\x38\xa3\xc3\xd5\x8a\x16\x71\x7d\x4c\x25\xaf\x0a\x70\x0e\xb6\xad\x2c\x39\x24\x34\x5a\xdf\xe7\x63\xda\x50\x9f\xd7\x53\xb9\x6a\x52\x9a\xaf\xc1\x42\x5c\x3f\xf2\x37\xcd\x23\x8f\x76\xd4\xfa\x47\x8a\x00\xa2\x1d\x9a\x8c\x67\x3b\x8c\x47\x4d\x7b\x5b\xd5\x3c\x95\x4d\xe3\x55\x95\x30\xbe\x58\xca\x1d\xb5\x76\x4f\x5e\x92\xbf\xd6\x75\x8c\x67\x62\x9e\xa4\xec\x2f\xba\x03\x92\xe0\x93\x2b\x7e\xbf\xae\x62\xf0\x54\xdd\x01\x2e\xb6\x76\xa8\x2f\xd7\x0e\xf5\x86\xca\x1d\xe3\x57\xb0\x73\x9b\x88\xa8\x3f\x05\xdb\x94\x7e\xf2\x21\x11\x38\xda\x99\x67\x4b\x2e\xab\xfd\xb5\xea\x12\x7d\xcf\x6e\x60\x2e\xcc\xdd\xd9\x69\x83\x25\xd9\x82\xd3\xd4\x02\x92\x5b\x3d\xcc\x08\xdc\xac\x33\xb8\xbb\x3f\xfa\x36\x9e\xfd\xdd\x37\xda\x90\xf9\x9c\xc3\x65\x00\x33\x98\x42\x93\x61\x70\x8d\x2c\x24\xbb\xa1\xdb\x46\x20\x12\x90\x5e\x15\x9c\x43\x0f\x60\xdf\x9a\xac\x79\x1e\x2c\x7f\x34\x4f\x18\x8f\x50\xbf\x89\x8d\xd3\xcf\xed\xb7\x22\xd6\x01\x83\x31\x0f\x15\xdf\x60\x50\x70\x94\x92\xe4\x39\x15\x72\xc7\x86\xf2\xed\x38\x51\x7f\x67\x06\x04\xb7\xe3\x72\x6c\xf6\x4f\x25\x6c\x83\x1d\x9a\xee\xa8\x65\x8c\xfa\xaf\x64\x81\x3f\x3e\xac\xfc\xd3\xa1\x7c\x39\x19\xe8\x53\x79\x68\xf4\xe2\xd7\xff\xba\xca\x7e\x86\x57\xf5\xc4\xb8\xd7\x4b\x96\xca\x13\xae\x69\x3e\x27\x7f\x8a\x0a\xca\xda\x91\x53\x10\x1c\x26\xe3\x99\xae\xc0\x15\x6e\xfa\x4a\x91\x2b\x31\x6e\xae\x7a\x60\x6b\x5e\x36\xfa\xac\x99\xee\x58\xef\xee\x9c\xdc\x1b\x51\xf7\xde\x58\xce\x80\x89\x27\x02\x83\xe1\xcc\x20\xf6\x54\x5f\x8f\xf4\xf5\x35\xfc\xa6\xd8\xa4\xc9\xd4\x37\x02\xe7\xa5\xd0\x24\xc3\x9a\x2c\x4e\xe5\x0f\xf5\x9c\xc2\x57\x95\x8b\x9d\xd0\xd7\x39\x28\x24\x68\x9e\xa5\xb7\x34\xd6\x58\xcc\x8d\x55\xac\x6f\xd1\xac\xa8\x05\xb5\xe0\xe1\x53\x6b\x97\x2a\xd7\xe8\x67\x5b\xdb\x23\x3d\xc5\x6b\x7b\xee\xa6\x75\xdb\xde\xc6\xdc\x24\xc2\x54\x5d\x5e\x1b\x36\x6e\x7a\x05\x69\x56\xec\x90\x34\x05\x3d\x75\x24\xa3\xb0\xb0\x9e\xc9\xe0\x52\x5f\xca\x22\x69\x06\xcd\x4b\x23\x62\x66\x44\x8d\x94\xb6\xbd\x8d\x59\x51\x71\xc0\xd7\xed\x59\xfa\x22\x8d\xc7\xc0\xba\x39\x76\x31\x07\xc6\xd0\x6b\x6b\x7b\x97\x08\xc9\x92\xb4\x7e\x2d\x0f\xef\xd5\xc1\x54\x8c\x4a\xc5\x4a\xf4\x13\x36\x2d\x50\xb5\xf3\x6a\xdd\x58\x5a\xf5\xf0\xf7\x41\xbc\x4d\x6e\x85\xa4\x21\xbd\x98\x55\xdb\x7a\xc6\x50\x06\xea\x0d\x2c\x54\xe0\x47\x51\x5a\x40\x93\xfe\x67\x67\xb7\xc6\x5d\x4c\x5a\x5d\xa9\xdd\x2c\x64\x79\x71\xd7\x53\x46\x99\x05\x0d\xe8\x70\x9d\xde\xcc\x3a\x70\xf9\x14\x91\x10\xbd\xa4\xbd\x4c\x33\x42\x71\x42\x7e\x56\x47\x83\x2e\x8b\x70\x5e\x71\xd1\xd2\x44\xd2\x8f\xb6\x33\x9c\xa0\xd5\x6a\xdd\xcb\x3a\x10\x8d\x57\x03\x57\x41\xfd\xa9\xd6\xe0\x6c\x11\xa2\xb5\xf1\x4a\xb8\x70\x7f\x74\x59\xae\x07\x65\x5c\xbd\x0a\x75\x53\x6b\x9a\x86\xdc\x79\x6c\x81\x8b\x36\x0d\xd0\x5e\xee\x8b\xbd\xb5\x8e\x3e\xbc\x31\xa0\xc2\x46\x94\xc5\x10\x0e\x03\x81\x0e\x49\x9e\x67\x63\x96\x48\x1a\x78\xbd\xc4\xdc\x20\x4c\xf7\x42\x19\xf3\xf3\x9a\x8b\x4d\xdf\x92\xe0\x68\x13\xc9\x5b\xb1\x44\xaf\x08\x23\x87\x6a\xab\x08\x14\x8b\x92\x1c\xcb\xbb\xa6\xb4\xdf\xae\x27\xf3\x85\xda\x07\x0c\x05\x4d\xac\xd9\xa3\x75\xc2\x71\x87\x45\x89\x74\xc0\x72\xe4\x7c\xfe\x6c\x8f\x78\x69\xcd\xad\x06\xb5\x1f\x6d\xd3\xb2\xb6\xd6\xc6\xc3\x92\xf7\x22\x66\x46\x7b\x18\xb0\x1e\x35\x8c\x5c\x0d\x8e\xe1\xac\xe1\x34\x43\x4e\x5c\x81\x54\xb1\xa3\x45\x22\x72\xa0\xd7\x57\x99\x38\xb3\x5a\xd2\x26\x6d\x13\x16\xc4\x2a\x53\x09\xf5\x77\xb4\x7e\xdf\x69\xb6\x20\x43\x37\x37\xfe\x51\x5a\x57\xc3\xb7\x9f\x23\x70\xe8\xd1\x3f\x7b\x98\x23\x84\x6d\x9a\x6c\xaf\x94\x15\x45\x30\xb9\x0d\xc7\x45\xb3\xea\x06\x33\x42\x01\x11\x5e\xcf\x60\xd2\xa4\x3e\x14\x06\x73\x67\xb5\xd2\xb6\x34\x68\xcf\xce\xbd\xd3\xff\x96\x18\xbb\x9d\x47\x3b\x4f\x1f\x0c\x86\x5c\x9c\x61\x86\x7f\x16\x71\x69\x93\x9b\xfd\x1c\x26\x38\x4f\x4a\x3c\x4d\xdb\x33\xd5\x63\x7f\xb4\xed\x0b\x92\x18\xb4\xcf\x38\x43\xfd\xe0\x8d\x0d\xc9\xd8\x24\xe7\x98\xa4\xe3\x25\x9a\xc8\x6d\x9b\x79\xcb\x93\x98\xdb\xff\xb6\x31\x50\x70\x05\x2d\x6b\xed\xdf\x92\x40\x44\xf8\x88\xb9\x58\xf0\x4b\x99\x08\x89\x6c\xca\x61\x0d\xa3\x5c\xeb\x4b\x84\x5f\x2a\x39\x17\xa7\x25\x13\x5c\x65\xa0\xc6\xfb\xe9\xea\xf8\xed\xbb\xd3\x83\xab\xe3\xd1\xf9\xd9\xe9\xef\xa3\xd7\xa7\x27\x6f\xdf\x1e\x5f\x8c\x0e\xcf\xdf\xbe\x3b\x3f\x3b\x3e\xbb\xba\xec\x74\x62\x0d\x31\x7f\x26\x63\x86\x85\x0e\x52\x3f\xef\xb2\xdc\x3a\xdd\x9e\xf3\xd4\x03\xd7\xa2\x38\x68\xc2\x6c\x80\x5a\x0d\xd8\x8d\xdd\x7d\xaa\x97\x7d\x4c\x6a\xa5\xf1\x94\xfc\x25\xe2\x71\x48\x06\xd3\x4e\x27\x00\xb8\x24\x84\x4c\x83\xa4\xe5\x13\x32\xb5\x7b\xb5\x95\x92\xa9\x33\x7c\x80\x80\x7e\x21\xe3\x49\x9c\x21\x3c\xb6\x59\xe6\xfe\x05\x70\x5b\x01\xe6\x38\xbc\xf6\x87\xc8\xbe\xe8\x67\x56\xf3\x1b\xf7\xf0\xe7\xee\x42\xb0\xdb\x44\x02\xde\xdd\x61\x8c\x10\x52\x2b\x55\x14\x65\x29\x2e\x75\x03\xa6\x95\xea\x57\xab\x2c\x64\x24\xd5\x1a\x2f\x54\x8d\x30\x41\x4b\x0b\x8d\xb2\x96\xd0\xd4\x99\xc9\x71\x8a\xb0\x09\xcf\x0b\x10\xd3\x44\x53\x88\x04\x08\x96\x03\x3a\xe8\x0d\xd7\x69\x4c\xa3\x7f\x46\xdb\x14\x22\x10\x06\xbb\xc3\x21\x08\xbe\xaf\x21\x43\xb6\xab\xf9\x77\x1b\xeb\xe2\xd8\x1c\xb3\x32\x9f\xa8\x4a\xa8\x8a\xc9\x75\xe7\x54\x26\x2e\x45\x73\x49\xd8\xdd\x22\x24\xdb\x57\x3c\x07\x5c\xd9\xd8\x38\x20\xa0\x0c\x0f\xac\x45\x7b\x7f\x30\xec\x4b\xfc\x83\x88\x05\xc2\xdc\x5c\x24\x5f\x9e\x9e\x1f\xfe\x72\x39\x44\x7d\xde\x7d\x7f\xf6\xf3\xc1\xd9\xd1\xe9\xf1\x91\x37\x1b\xfd\xe2\xba\x88\x33\x64\x62\x66\xb3\x4d\x9d\xcc\x36\x77\x32\x59\xd3\xc9\x04\x0f\x6c\xc7\x18\xf4\xe5\xec\xfc\xec\xb8\xa0\xdd\x11\xfd\xb2\xa0\x82\xa9\x9d\x9a\xa4\x6f\x93\xb1\xc8\x72\xf2\x5a\x8b\x20\xbf\x3e\x7c\x11\xbb\x65\xf4\x73\xd9\x2d\x49\x9b\xd6\xe5\xc6\xe0\xd1\x72\x0e\xf6\x06\xbf\x1a\xa8\xb7\x56\xeb\x06\x9f\xb3\x26\x8f\xad\x52\x8e\xfb\x9a\xd8\x5b\xea\xad\x12\xe3\xc0\xa5\xe8\xcd\x23\xe1\x8b\xea\xe0\x45\x22\xcb\x9c\x9f\x91\x58\x72\xc9\xe6\xee\xae\xc7\x26\x04\x70\x59\x6e\xa8\xfc\xc0\xe8\xe7\x93\x09\x72\x19\x9b\x4c\xca\x40\x73\x16\x1a\x4b\xb5\xc9\x4e\x46\xb6\x76\xed\x47\x8a\x73\xd6\xe3\x1e\x97\xa4\x11\x16\x98\x87\xb0\xc0\x46\x94\xa6\x3a\x6d\xba\x91\xb0\x54\x75\x6f\x98\x7c\x9b\x30\xae\x51\xde\x18\xce\x63\xad\x64\xb9\x37\xc1\x21\xfd\x0c\x73\xfa\x45\x5e\xb2\xeb\x94\xf1\x1b\x2d\x15\x81\x2b\xb6\x6d\x4f\x4b\xc2\x28\x5e\x22\x9c\xa0\xd6\x24\xbb\xa7\x64\x6c\x12\x1f\x16\x9f\x67\xaa\xc5\x2d\xaa\x73\x2d\xb6\x34\x97\x4b\x7d\x7e\x44\xd0\x76\xb4\xd2\x86\x81\x99\x15\x9a\x74\x05\xd5\x2f\xe3\xfb\x24\xfd\x9c\xdc\xe5\x17\x14\x32\x3a\xa9\x7b\xee\xd6\x6e\x81\x36\xdf\x73\x59\xbe\x29\x71\x26\xac\x14\xb8\x40\x38\x50\x82\x35\xae\x4e\x26\x8d\xa4\x4d\x2a\xa9\x57\x55\x4d\x53\xab\xba\x52\xbd\xf2\xc2\x87\xeb\x09\xcd\x79\x97\xa3\x86\x15\x37\xd3\x60\x1e\x79\xeb\xb3\x01\x66\x67\x61\x86\x22\xb5\x5e\x75\x61\x18\xbe\x9b\xd8\x24\x79\x1a\x44\x45\x13\xf4\x6f\x65\x86\xf8\x47\x60\x74\xff\x4d\x38\xc1\x8b\xa2\xd6\x6f\x02\x74\xe2\x63\x1a\x4b\xbc\x1b\x84\x0b\x52\xee\x42\xc1\xb5\xf4\xa1\x5d\x98\x38\xe9\xb5\x4a\x69\xfc\x32\x1e\x47\x90\x56\xa9\x1c\xfd\xec\x91\xa6\x7a\x7b\xf4\xc5\x6f\x0e\x54\x88\x6e\x6f\xa3\xdf\xc4\x80\x0e\xbb\x23\x9b\x71\xcf\x2f\xb1\x4e\x02\x58\xab\x9e\xf2\xc9\xe3\x2b\x67\xd3\x78\xcb\x34\xc0\xf2\x0f\xaa\xe2\x18\x69\x21\x8e\xff\x64\x04\x89\x8b\x63\xe3\x42\x7d\x7a\x7e\xfe\x6e\x74\x7a\xf2\xf6\xe4\xca\x98\x80\xd5\xf0\xb0\x2e\xed\x2e\x19\x38\x48\x36\xc6\x38\x9c\x6d\x41\x1e\xae\x36\xe3\xa6\xf7\x6a\xd2\x26\x54\xd2\xb1\xa4\x13\x6f\xa7\x15\x7c\x7b\xbb\x3c\x22\xb0\x9b\xea\xcc\x82\x1c\x15\xd0\x62\x30\x34\x2f\x3c\x48\xee\x68\x92\xdb\x73\xa1\x65\xd6\x62\x6d\x8d\xa8\x28\x62\x97\xaf\x90\xf3\x8d\x4c\xcd\xb3\x34\x2b\xec\x25\x9d\x4e\x9c\x90\xad\xdd\x20\xde\x26\xef\x74\xe2\x9c\x4c\xbb\xe3\x94\x51\x2e\x5f\x2e\x59\x3a\xa1\xce\x8d\x98\x71\xeb\x26\xee\xe8\xd4\x31\x2f\xf0\x1d\xbe\xa0\xb7\x2c\x57\x4f\xed\x65\x7a\x54\xe7\x72\x23\xb5\x51\x2c\x17\x23\xcc\xb1\xc8\x91\x3a\x0b\x8c\x07\xf4\x9d\x0d\x91\x86\xf2\x8c\xd3\xc9\xab\x4c\x1c\x9d\xbf\xb5\x41\xc9\x50\x47\x4e\x06\x43\xfb\x13\xe2\xe9\x26\x17\xe5\xa7\xd7\xba\xf7\x24\x37\x12\xab\xf9\x56\xef\xdd\x0b\x73\xf2\x6a\x0d\x22\xdc\xeb\x2a\x77\x1e\x93\xc0\x68\x42\x15\xef\x33\xb1\xc4\xa3\xb1\x49\x62\x02\x87\xef\x1b\x66\x53\x85\xa0\x38\x45\xe5\x2c\x29\x96\x6d\x31\x9e\x32\x4e\x35\x40\xc5\x75\x9a\x8d\x3f\xe5\x2d\x00\x14\x78\xcb\xf2\x9c\xf1\x9b\xf8\x77\x81\xb0\x08\x1f\xfc\x22\x50\x90\xcf\xb9\xb7\xc7\x5f\xbc\x76\x04\xcf\xb7\xb7\x21\x7d\xe5\x6b\x31\xe0\x43\x14\x43\x7c\x72\x81\xe2\x71\x77\x0e\x07\xba\x65\xc1\xe0\xd9\x20\x1b\x86\xd4\x2a\x4d\x81\x3e\x26\xde\x30\x79\xa1\x7f\xa3\xf8\x3e\x59\x2c\x28\x9f\x9c\x2f\x4c\x9a\xb7\xbc\x2f\x4c\x16\x41\x90\x52\xa7\xdd\xa3\xf3\xb7\x57\x82\x52\xd0\x26\xab\x5b\xbb\xb6\x53\x83\xc4\x7a\xdc\x3d\xcb\x26\xb4\xf9\x03\x13\x5b\x18\xd4\xeb\xaa\xd3\xe9\x43\x75\x8a\xaa\x09\x1e\xe3\xa5\xf6\x60\x66\x4d\x1c\x9f\x75\x4d\xff\xe0\x4c\x57\x67\x6c\x78\xf0\x3b\xed\x5a\x45\x69\x64\xb8\xc0\xc1\xbb\x77\xa7\x27\x87\x07\x57\x27\xe7\x67\xfe\x6a\xf1\xf1\xe2\xe0\xdd\xbb\xe3\x0b\x7b\xb7\xab\xc2\x66\xce\x29\xbe\x0f\x23\x30\x7b\xe5\x98\xca\x20\x26\xb2\x57\x20\xed\x18\xf8\x77\x06\x41\xb2\xa6\x20\x48\x66\xa2\x92\x9a\x81\x04\x01\xce\xa2\xd0\x9e\x01\xdf\x35\x1f\xc1\x47\x3d\x72\x9f\x96\x80\x3d\x22\x9c\x91\xab\xcf\x5c\x6a\x22\x03\xb9\x51\x11\xde\x2a\xe0\x52\x91\xb6\x6f\xe1\x48\xa3\x4b\x29\x26\x51\x47\xa0\x8a\x98\x3a\x31\x7a\x38\xef\xde\x2c\xd9\x44\x67\x2c\x37\x91\x2b\xb7\xb4\x6c\x74\xbc\xa6\x31\xd5\x51\x2a\x98\x95\x2c\xc0\xfe\x05\x2a\x62\xb7\x55\x34\xc1\x95\x74\xd0\xa1\x1f\x22\x43\x10\x0b\x6e\x09\xf3\x2a\x6b\x54\xee\x80\x92\x48\x3e\xba\x52\xa1\xd3\x0e\xb1\xfa\x87\x6b\x1c\xb8\x8c\x79\x54\xe2\xd2\xf6\x06\x45\x97\xf1\x56\xfd\x55\xe8\x03\xa3\xd1\xf1\x11\xd0\x0d\xe9\xe7\xf6\x1b\x61\x5d\x6c\x6d\x15\xb8\xc4\xf4\x1a\xf8\x37\x06\xbb\x55\x99\xdf\x3a\x2e\x03\x67\x85\xe2\xc9\x71\x06\xc3\xb1\xb2\x5e\x09\x91\x05\x3e\x6d\x14\x0d\xa0\x84\x56\x12\x36\x90\x6a\x5d\xd2\x6e\xd5\x8f\x11\xc0\x3e\x55\x15\x2d\x79\x63\x55\x06\xf2\xb4\xa1\x60\xbd\xfa\xa1\xee\x90\x3a\x68\x4a\x75\xd0\xee\x48\xaa\xf3\x10\x16\xe8\x2a\x73\xe9\x84\x19\xbf\xb1\xc9\x2d\xc7\x29\x4d\xf8\x72\xa1\xa6\x42\xdd\xae\xdd\x89\x57\x3e\xdc\x3a\x1d\xda\x95\x82\xdd\xdc\x50\x11\x47\x13\x36\x31\xba\x4d\xb3\x4b\x22\x98\x90\x72\x4d\x55\x4e\xb7\x55\x39\x73\x91\xf7\xea\x0c\x8e\x4d\xeb\xd3\xac\x7f\x39\xf4\xc7\x9d\x9d\x3d\xa7\x5e\x1c\x88\x61\x8b\x6b\xf1\x5a\x27\x0e\xe2\x81\x7c\x24\xad\x00\x29\xf0\x2e\x42\x05\x6c\xe9\xba\x78\x5d\xe9\xca\x6a\x15\xd7\x04\x82\x9e\x25\xaf\x94\x26\xe2\x20\x4d\xe1\xf8\x8e\x91\xe5\x25\x2f\xb3\x25\x9f\x34\x26\xd1\x1a\x7c\xb0\xbe\x6a\xf7\x3a\x4a\xc1\xcc\x51\x5f\x76\x4b\xbf\x63\x84\xa7\x4c\xe4\x52\x1d\x4c\x7d\xd9\x75\x7f\xc7\x08\x43\xa4\x93\x7e\x6c\xff\x8c\xf5\x58\xc6\x6b\x78\x53\xf9\x72\x11\x6e\x32\x40\xa4\xac\x1c\x9c\xea\x46\x56\xc2\x15\xa2\x7a\x47\xfb\x4d\x51\x1f\x58\x79\x61\x5a\xc2\x5a\x26\x34\x66\x8f\x59\x28\x67\xbf\xc0\xbf\x99\x0f\xc0\x3c\x51\xd9\x71\x79\x20\xa2\xc5\xd5\x96\xd7\x42\xeb\x94\x3b\xe0\x4c\x5a\x96\x19\x30\x52\x97\xb6\xf4\x8d\xd0\x76\x0e\x37\x5d\x64\x38\x5c\x38\x9b\xe4\x79\x2d\xde\x94\xa5\x1b\xad\xbe\x51\xf2\x4d\x2b\xf3\x37\xaf\x7d\xa6\xc7\x9a\xa1\x3e\xff\x89\xd0\xd5\x2a\x33\xb7\xa9\x18\x15\xb2\x22\x7b\x82\xbf\x91\x4d\x22\x0f\x11\x59\x93\xee\xe1\xfb\x8b\x8b\x63\x1d\x9c\x0b\x97\x26\x7d\x73\xb5\x2d\xff\x44\xb5\xc8\xb5\xc7\x6c\x57\xbc\x1a\x69\x91\x2d\x20\xee\xdc\x5f\xa2\x32\xd4\x72\x77\xa8\x44\xdd\xa1\xc0\xae\x54\xdb\x51\x9d\xce\x1f\xc2\x24\x0f\xae\x4c\x7f\x28\x3e\x97\xaf\x02\x5b\x6b\xe5\x6c\xbb\xa1\x1a\x45\x70\x8d\xf8\x43\xc9\xd6\x6e\x4b\x8a\xbb\xfb\x1a\x31\xc4\x08\x53\xb2\xd5\x2b\xa6\x8c\x27\x69\x7a\x77\x4f\xdd\x6e\x7c\xd2\xc4\x6d\xbe\x06\x14\xb0\x7b\xca\x9b\xb9\x19\x8b\x38\xa4\x31\x8d\x3a\x4c\x43\x9c\xe1\x7b\x3a\x90\xc1\x7d\xac\xa8\x13\x9d\xf9\xda\x1a\xde\xfd\x6d\x80\x36\xcf\x7d\xfd\x78\x29\xed\x80\xf0\x6e\x65\x3f\x3d\x07\x2f\x09\x3d\x87\x11\xd6\x31\x60\xa6\x1f\xb6\x0e\x5d\xb7\xb9\x74\xae\xd3\x55\x85\x1c\xb0\x99\x4e\x00\x4f\x01\xe6\x9d\x39\x80\xb7\xd2\xbc\x37\xdc\xaf\x2c\x49\x35\x0d\xc7\xac\x91\xbd\x0b\x6b\xb9\x72\x13\x6f\xf8\x86\x9c\xee\x6b\x39\x62\x63\x64\xb1\x83\x3a\x69\xd1\xae\x7e\xaa\xae\x5f\x5c\xa3\x50\xf0\x75\xf1\x70\x8f\x14\x9c\x1f\x8c\x7a\xab\x81\x68\x84\xd8\xa8\x1a\x71\xcd\x46\x91\x83\xb1\xaa\x24\xe6\xa8\xeb\x48\x49\x40\xc0\x89\xba\xcf\x69\x81\x27\x14\x2f\x55\x5f\xe2\xb8\xa7\xb3\x0b\x9e\x43\x8c\x16\x9c\xf7\x46\xa9\xb8\xb5\x8b\x13\xc0\x0e\x2a\xe5\x79\xab\x1d\x36\x6a\x15\x2b\x79\xcf\x0f\x20\xdd\x3d\xe3\x37\xed\xff\xd2\x11\x49\xba\xcc\x7f\xb5\x99\x76\x56\x37\xe8\xd3\x6d\xc6\xdb\x3c\xe3\x3b\xcc\xdf\xfa\xda\x41\xc8\x77\xde\x8e\xf3\xe5\x78\xd6\x4e\xf2\xf6\xab\x24\x97\x2f\xb3\x4c\xa2\x6e\xa4\x25\x65\xce\xd5\xc2\x9c\x70\x2a\xa4\x5b\x9d\x4c\xaf\x4e\xf2\xff\x91\xd5\xe9\x3d\x6a\x75\xc2\xdc\x90\x4e\x48\x34\x5f\x81\x56\x2e\x9c\x4d\xb7\x0c\x6e\x4e\x13\x3d\xa7\x39\x27\xf7\x3a\x3e\x7e\xc9\x9f\x96\x8a\xaf\xf7\x5d\x81\x7f\x76\xbf\x05\xf8\x27\xe5\x64\x30\xdc\x8b\x7b\x38\xd5\x9b\xfd\x95\xa0\xf4\x2f\x8a\xe2\x94\xeb\x1b\xeb\xf8\x5b\x09\xe7\x2b\x41\x81\x1e\xb8\x87\x2e\x79\x81\x79\x37\x98\xd4\x35\x76\xff\x8a\x37\x61\x77\x9e\x2c\x9c\xe0\xe9\x9d\xfc\x52\x6e\x43\xf8\x46\xe0\x4d\x38\x1a\xf5\x1b\x9d\xee\xd4\xbd\xee\x6e\x61\x53\x28\x1b\xc8\x1b\x70\x0b\x85\x10\xba\x35\x38\x3f\x01\x98\x35\xa9\x26\x81\x06\x30\x5b\x6d\x99\xc5\x79\x19\x4a\x47\xd7\x0b\x11\x10\x16\xc8\x66\xac\x29\x80\x79\xa7\x59\xd5\x9b\xdc\x87\x23\xe0\x14\xd2\xfb\xf5\xa9\x79\xe3\xf1\x5a\x96\xc5\xb7\xa7\x94\x4e\xd7\xe5\x00\x8c\xc0\x41\x76\x13\x5c\xcc\xd2\x47\xaf\x26\x9b\x90\x62\x96\xcd\x49\x4c\x1f\x46\x82\x49\x35\x12\x4c\x73\xda\xbf\x86\x0c\xc3\xb6\x67\x8f\xcb\x29\x6c\x12\xe3\xfd\x3d\x19\x02\xff\x57\x64\xe4\x6d\x44\x61\xf1\x09\x84\xfc\x7c\x60\x4d\x77\x58\x67\x2b\x78\x0c\xb8\xca\xa3\x52\x72\x7f\x73\xe2\xbf\x47\x8f\xf3\x31\x48\x3a\x76\xb0\xc0\xe7\x0f\x25\xc2\x53\x4e\x92\xae\x09\xc6\xa4\x5f\x24\xe5\x93\xf8\x9e\xe5\x87\x26\x19\x5e\x1f\x26\x4a\x11\xfd\x52\xd2\x09\x32\x5b\xb3\x81\x52\x4b\x79\xf6\xe0\x90\x57\x5f\x02\x50\x7e\xeb\x95\x88\xef\x6d\x28\xe4\x1a\xaf\xec\x31\xd7\x97\x4c\xe3\x57\xa0\x38\x77\x75\xbf\x15\x78\xca\x55\x77\x5d\x2a\xb5\x06\x85\xe1\x3f\x41\xd1\xf6\xcc\x15\x7a\xa6\x77\xa7\x3e\xaa\x26\x9c\x30\xda\x18\xd5\x34\xea\xa6\xd9\xd8\xa6\x0d\x33\xb6\x09\x84\xf0\x8c\x93\xd3\xf8\x9e\x4d\xfa\xd1\xc5\xe9\x74\x77\x41\x8f\xa7\x11\x06\x35\x78\xff\x1f\xf7\x51\x7e\x37\xbf\xce\xd2\x3c\xea\x0f\xa2\x8e\x89\xc3\x8b\x86\x58\xe7\x40\x84\x53\x20\xea\x0f\x06\xbb\xff\x81\x77\xc1\x2f\x63\x38\xc4\xd1\x2c\xc9\x8f\x6f\x93\x34\xea\x4f\x93\x34\xa7\x38\x5a\x2e\x6e\x13\xa1\x3e\x1b\x16\xff\xc0\x73\x2a\x93\xfe\xbd\xf7\xb3\xe9\x47\x8b\x64\xfc\x29\xb9\xa1\xf9\x33\x33\xa8\x1d\x3b\x39\xf9\xb3\x9b\x94\xcd\xe7\x54\x3c\x4b\xd9\xf5\x33\xcb\x5c\x72\x3f\xea\xee\xec\x3a\x8f\x8a\x02\xe1\x85\x1b\xc0\xf1\x17\xfe\xd7\xf1\x8f\xe7\x97\xcd\x03\xb0\xab\x1d\xe1\xe8\x8a\x7e\x91\xaf\x20\xf1\x21\x8e\xfe\x69\x8f\x84\x08\x47\x1d\x75\x50\xe7\xf5\x11\xfe\x1b\x1e\xfc\xf8\xef\xf8\xf9\x10\x0f\x06\x3f\xf6\xf0\xe0\xc7\x7f\xc3\xbb\x43\x3c\x08\xb2\x29\x0e\xf5\xf8\x71\xf9\x75\x90\x60\x71\x68\x27\x08\x66\x7e\x30\x88\xfc\x6c\x0e\xee\x1b\x5b\xeb\x41\x6b\xcf\x71\x0f\x0f\x22\x4f\xaa\xd1\xb0\xa1\x0e\x1c\xd1\x34\xa7\x4d\x55\xfd\x07\x56\x55\xa8\xde\x0c\x76\xff\x1d\xff\xcf\xa1\xfa\x23\xfa\xa7\x09\x9f\x0b\xc7\x1e\x34\xa6\x0f\xa1\x48\x7d\xfb\xe3\x73\xfc\xa3\x6d\x50\x2d\x2e\x84\xad\x50\xc0\x4f\x54\x0b\x8a\x9b\x9b\x7b\xfe\x37\x35\x37\x1c\xd6\x1e\xee\xe2\xe7\xf6\xf9\x5a\xc2\x8b\xd8\x34\xc2\xe1\x91\x16\xa5\x54\x46\xdf\x89\x1c\x61\xeb\x39\x52\x9c\x3b\x52\xbc\x3d\xd8\x3e\xec\x7d\x9c\xd0\x46\x52\xac\xef\xa0\x12\xe1\xd8\xbf\x7b\x66\xa5\x03\xca\x79\x60\xa4\x36\x34\x21\x1c\xee\x77\x1a\xa8\xae\xd9\x8d\xf4\x76\xb3\x25\xd3\x69\x43\x82\x9b\x8d\xf3\xc9\xb0\x62\x76\x09\x34\xb6\x96\x69\xbc\x15\x38\x62\x0b\x3a\xd5\x26\x33\x11\xdf\x1b\x64\x9b\xfe\xfd\x3c\x61\xdc\x06\x9d\x63\x5d\x69\xff\x1e\x2a\xeb\x0b\xc5\x63\x33\x1b\x25\x6e\x70\x36\x74\x44\x85\x11\x68\x76\x64\xb6\xd8\x49\xe9\x2d\x4d\xa3\x10\x6c\xc3\x94\xd0\xf0\x09\xd6\x33\xc0\xc1\x72\x14\x85\x51\x61\x1b\x0c\x2d\x41\xa7\x7d\xd6\x50\x61\xb9\xc1\x66\x58\x8f\x86\x96\x8a\x82\x9a\xc3\xc9\xcf\x2d\x6f\x4c\xc6\xe9\xe6\x9b\x7d\xfb\xf5\x8e\xa9\xeb\x1d\xab\x49\xb6\x81\x93\xce\xbe\x15\x10\x03\x8c\x9b\xaa\x1d\x8e\x63\x89\x50\xbf\xe1\x43\xd0\x84\x14\x3a\xdb\x68\x57\xd0\x6c\x41\xb9\xce\xc1\x51\x11\x54\x7c\x6d\xd2\x41\x0b\x35\x75\xca\x0a\xfe\xa3\x32\x96\x9c\x74\x64\x55\xca\x97\x8d\x01\x94\x22\xbc\x4c\xca\x72\x80\x5b\x2c\x20\x6b\x04\x8b\x13\x84\x0a\x73\x65\x69\xb0\x6b\xf2\x26\xf3\x91\x11\x3a\x5b\x56\x77\x1f\x02\xb7\x69\x9b\x6c\xa7\x53\x0b\x85\xa4\xfb\x0e\x3d\x1e\x42\x01\x2f\x69\x4a\x95\xd0\x10\x53\xd4\xa7\x3a\xb1\x92\xd5\x70\xa1\xb2\x7a\xcb\x8f\x30\xaa\x1a\x59\xad\xfe\x0b\x04\xa4\x26\x23\x8e\x7a\x9e\x53\x79\x1e\xb8\x5a\x85\xe3\xb0\x9b\xac\x22\xcf\xd5\x6d\x06\x85\xd5\x0e\x05\x06\xde\x5b\x0e\x9e\x7f\x71\x54\x67\x25\x8a\xef\x3c\x03\xad\x6c\x84\x07\x11\xfd\xb2\xc8\x84\xcc\xd5\x41\xd0\xfc\xa5\xe2\x38\x90\xa0\x6f\x88\x2b\x30\x36\xd1\x32\xa7\x6d\x35\x95\x63\x19\xb5\x8c\x1c\x07\x40\x22\xd4\x66\xce\x8d\x29\x8e\x46\x23\x9a\xbf\x05\x26\x17\xe1\x7b\x1d\x14\x06\x66\xdf\xb5\x05\x3c\x1a\xf0\x3d\xe5\xcb\x39\x15\x4a\xa4\x54\x62\xd9\x1a\x2d\x5a\xd7\x16\x28\x36\xd5\xfa\x16\x72\x0c\x3e\xb2\x46\xf5\xf1\xc6\xda\xe6\x4f\xa9\x6d\xfe\x50\x6d\x0b\x4a\x3f\x3d\xa9\x7f\xb6\xc0\xc6\x5a\x73\x2a\x9f\x54\xa9\xf9\x7e\x63\x9d\xce\x0c\xfa\xe8\x5a\x5d\x89\xa2\x40\x9b\x49\xd2\x11\x5a\x89\x2a\xb5\xfd\xfa\x3a\xb9\x56\x3c\xbc\xa1\xe8\x52\xb2\x34\xa0\x5e\xb8\xaa\xa8\x9f\xf6\xc0\x34\xea\xd5\x2a\xf5\x5a\x05\xc1\xb7\xd1\x30\xb5\x93\x46\x26\x98\xba\x55\x21\x33\xc5\x25\x0d\x51\x12\x0a\xeb\x4f\x28\x10\x15\xa1\x7e\x42\xc2\xb4\x03\x19\x4e\x2c\x2c\x8d\x67\x73\x41\x25\x99\x71\x56\x07\x9e\xac\x65\x16\x14\x47\x4b\xae\xbb\x3a\x89\xd4\xee\xf7\x15\x5b\xcf\x9d\x5d\x9c\x3e\x80\x27\x38\x4a\x0d\x0a\x7d\xfe\x81\x0a\xb0\x66\xec\x3a\x6b\x05\x1c\x48\x74\x72\xcc\x27\xde\x2f\x69\x9a\x26\x52\x7d\x3f\xb1\x9f\x5b\x5b\x82\x01\x55\x0b\xfd\xf6\x46\x13\x9a\x8f\x05\x5b\xc8\x4c\xe4\xe5\x17\x73\xf6\x85\xf1\xca\xb3\x34\xf9\xeb\xee\x70\x96\xd4\x9e\xc3\x6c\x57\x9e\xc9\xe4\xa6\xf2\x44\x18\x0d\x7f\xe5\x31\xcb\x4f\x38\x93\xce\x87\x4a\x87\x27\x58\x91\x07\x26\x3a\xc0\xe9\xeb\x8e\xad\xf7\x4d\x26\x3c\x66\x5f\xf0\xd0\x2f\x0d\xae\x4c\x9e\xa9\x65\x13\xc4\x7e\x4e\xe5\x25\x34\x7f\xe4\xec\xdc\x65\x1e\x5e\xff\x84\x4e\xaa\x5f\xb0\x7c\x53\x1d\x4e\x9c\x60\x5d\x96\xfb\x4f\x0c\xb4\xa2\x1e\x3c\x6a\xa8\x86\x36\x98\x61\xca\xb5\xa8\xfb\x77\xb5\x92\x9c\x4a\x35\xb9\x2c\x49\xd9\x5f\x95\x8e\x94\x27\xbf\x07\x78\xf7\xfc\xd1\xdf\xef\x16\xc6\x01\xab\xf9\xe3\x92\xf1\x44\x7f\xa6\x0b\x38\x30\x27\xd8\x68\xeb\x2c\xd0\x7a\xd5\x49\x98\x23\xda\xc4\x0e\x1a\xea\x00\xd7\x57\xd1\x1d\x29\xe9\x44\x68\x8f\x9b\xf3\xcf\xfc\x6d\xb2\x58\x57\xe5\x00\x52\xaf\x99\xbf\xec\x2e\x36\xca\x3b\xc0\x02\x45\x0d\xf5\x5d\xae\xcf\xc6\x5b\xae\x0f\x60\x49\xa9\xd4\x75\x4c\x19\x9f\x9c\xd8\x8d\x59\xee\x92\x3a\x90\x7d\x8a\x4a\x55\xda\x00\x52\x11\xe1\x1c\x14\x44\x35\xa8\x8e\x7b\x38\x89\x06\xa8\x2a\x8b\x8d\xd4\x66\x85\x80\xe4\x30\x6a\x8b\x03\xe0\xff\x68\x96\xe4\x27\xdc\xf5\xe4\xb2\xe6\x4a\xfe\xf4\x9e\x74\x3a\x1a\x40\x45\x22\x9f\x72\x33\x68\xd5\x3c\x03\xda\xb0\xb6\xd6\x06\x55\x63\xc8\x33\xca\x41\x8c\x5b\x84\xc8\x7d\x39\xa0\x43\x7f\x3b\x51\x24\xfc\xa1\x5e\x97\xf3\xde\xaf\x93\x40\x1c\x99\xba\x23\xa4\xd6\x06\x08\xcf\xb2\x9e\x4d\x1d\x72\xec\xe9\x51\x7d\xba\x68\xac\x71\x73\xb7\x5c\x0b\x41\xcf\x3e\x0b\x06\x49\xe9\x4e\x1d\x6b\xdd\xd4\xc7\xa6\x5a\x3d\x53\x36\xb0\x47\x74\x58\x0b\x0d\x15\x10\xe9\xa4\x5e\x91\x01\xa4\x7d\x86\x39\x49\x26\x8f\x6f\xd9\xb7\xb2\x06\x10\x13\x02\x8c\x8d\xb7\xe7\x17\xc6\xeb\x52\x72\x7d\x73\xc5\x91\x39\x65\x22\xa4\xca\x69\xf3\x92\x22\xb0\x7a\x0d\x25\x86\x52\x23\x6c\x5f\x11\xd6\x75\x4c\x33\x71\x9c\x8c\x67\x6f\xf5\x19\x56\xba\x00\x5a\xb7\x21\xbc\x96\xec\xed\xd9\x57\xc2\xd6\x8e\x03\xb4\x58\xb9\x6f\x36\x7c\x5f\x62\x6e\xdb\x0a\x34\x87\x02\xdd\xeb\xec\xbe\x02\x29\x26\x01\x63\x13\x4a\xaa\x12\x48\xeb\xe2\x2b\x3b\x55\xd1\x80\xe2\xf3\xee\x20\x2e\x13\x54\x5c\x3b\xa9\x43\x8f\x23\x57\xc8\x44\xfb\x23\xe4\x42\x7b\xc1\xdc\x47\xe9\xa7\xe6\xaa\xcb\xeb\x5b\xe5\x5a\x71\x14\x56\x1e\x05\xd0\x64\x92\x10\x92\x3b\x30\x5c\x4d\x49\xf3\xec\x76\xcd\x00\xcc\xe2\x57\x87\x18\x53\x9c\x87\x2b\xb5\xae\xf0\xa3\x96\x2b\xe8\xe8\xd7\xaf\x19\x68\x5e\x60\xd5\xb8\x5f\x35\x8e\xb0\xd8\x02\xcf\x71\x0a\x08\x71\x8d\xcb\x97\x4c\x26\x57\xd9\xa9\x13\x33\x9a\x24\x58\x7d\xaa\x2d\xf3\x99\x4b\x28\x64\x5e\xee\xef\xf6\x7b\x10\x4a\x6b\x67\xf1\x95\xc8\xe6\xeb\xea\x5a\x5f\xcf\x73\xbd\xd6\xc1\x8b\x66\x4b\x9b\x9d\x0d\xd6\xe9\xc4\x8c\x6c\xed\x9a\x34\x19\xc4\xad\x11\x30\x04\xdb\x3c\x38\x07\xcd\xe3\x0c\xfb\xa0\x50\x08\x69\x4d\x3a\x9d\xe4\x45\x5d\x02\xed\x74\xe2\x2c\x74\x1e\x6a\x10\x52\x77\x76\x70\x42\x76\x76\x11\x86\xcc\xcb\x09\xca\xb4\xeb\xd3\x3d\xe4\xb4\xf1\x59\x8e\x25\x9e\x53\x39\xcb\x26\x7d\x81\x3f\x31\x3e\xe9\x73\x9c\xdf\xf1\x71\x9f\x15\x41\xf6\xc1\x9c\x64\x83\x64\xd8\x7a\xae\xa1\x12\x9e\xab\x55\xea\xaa\x8f\xf7\x4b\x7d\xe8\xc7\xfa\x29\xe1\x38\xef\xaa\x4a\x08\x43\x45\x89\xef\xd6\xe7\xba\xc2\x6d\xaa\xe2\xf4\x16\x21\x4b\xe3\x79\xa2\xa5\x11\x97\x49\x4d\x49\x2d\x9d\x0e\x4c\x51\x7d\xe8\xab\xd5\x72\x7b\x5b\x8f\xbb\x71\xea\x1a\x24\xfa\x5e\x4d\x84\x55\xcc\xbb\xf2\x0c\x36\x91\xed\x62\xe3\x68\x6c\x26\xb1\xda\x48\x5e\x2c\xd1\xbd\xf5\xaf\xd2\x23\x00\xa2\xae\xa3\xc7\x4a\x42\x1b\xda\xa8\x20\x27\x4b\x54\x82\x0c\x2e\xf7\x12\x55\x47\x22\xfd\x4a\x8a\xea\xc7\xad\xfa\x5c\x68\x30\x3a\xbb\xb2\xbd\x06\xd2\x6a\x22\x37\xd2\xab\xc6\x1b\xc8\x9a\x43\x1e\x23\x72\xc0\x87\x7b\xb0\x30\x73\xc0\xd5\x02\x62\xc4\xac\xab\x89\x51\x47\x54\xce\xb2\x09\x82\x1e\x2c\x79\x3e\x63\x53\x19\xb3\xa6\xf6\xb6\xb7\x51\x51\x14\x6b\x6e\x61\xcb\x12\x98\x6b\x79\x01\xe7\x89\x1c\xcf\x18\xbf\x69\xda\xf9\x15\x0f\xca\x07\xd7\x41\xa0\x87\x7c\x10\x99\xf6\x41\x34\x23\x55\xcb\xbc\x5a\x81\x2c\x09\x5b\xa5\xd3\xd9\x75\x7f\xaf\x56\x71\x05\x5e\x02\x28\x50\xef\xda\xda\x0c\x81\x33\xa7\x2e\xe8\x11\xc8\xe0\x84\xc8\xae\x73\x2a\x6e\xa9\x80\xa4\x6a\xeb\xd3\x1f\x3e\x82\xc6\x2a\x19\xde\xc3\x04\xef\xa1\x87\xaf\xc6\x16\xf5\xc3\xe1\x66\x38\xb0\xcc\x5c\x0f\x3c\x88\xd9\x1f\x43\xa4\x06\x24\x00\xf2\x77\xcd\x4e\x27\xa6\x30\x5e\xaa\xc7\xcb\xfd\xa0\x36\xa7\xca\xd2\xdb\xa8\xe6\x51\x16\x7a\x08\xfa\x9d\xe6\xdb\xb3\x7b\x6d\x5c\xba\xc6\xb5\x4a\x77\x77\x6a\xa3\xe7\xe5\x6a\xa5\x0e\xe2\x44\xc7\x18\x2f\x02\x88\xda\x92\x2f\x1a\x5c\xb3\x74\xbc\xdb\xb8\x19\x53\x17\x4f\x43\xa0\x21\x1f\x66\x37\x31\x97\x04\x2f\x4d\xb8\x57\x33\x2f\x3c\x4c\x2d\x18\x49\xb3\x50\x18\x24\xe4\x1f\xc7\x14\x85\xa7\x77\x58\x20\xb6\x15\x09\xe4\x81\xaf\x35\x3f\xdd\xd2\xc2\xab\xf9\x45\x04\xc2\xb2\xa5\x2a\x13\x75\x34\xe1\x45\x83\x70\x33\x33\x7d\xb3\x81\x68\x90\x24\xc5\xdd\x21\x7d\x3f\x7d\x30\x43\x1a\x40\xab\x4c\x00\x12\x03\x8b\xc2\x4f\xcb\xdc\xdb\x69\xec\xd8\x18\xa1\x0e\x53\x74\x8f\xfd\x44\x7a\x7b\x6c\x67\xc7\xc1\x76\x0d\x18\x5c\xa2\x32\x4d\x73\x7a\x1f\x65\x66\xe7\x68\xc9\x3c\x33\xdb\x27\x04\x45\xb7\x58\x38\x3b\xbb\x85\xd1\x4d\x2d\x36\x2a\xe6\xd2\x26\x65\xf1\x43\x6a\x39\xad\xc8\x7b\x82\xbe\xae\xf6\x61\xa0\xb8\xf7\xef\xc5\x92\xa7\x59\xb6\x68\x52\xf0\x05\x8f\x8c\x7f\x67\x26\x7c\xc1\x45\x96\xde\x4d\x59\x1a\x36\x4d\x85\x80\x2f\xf4\xaf\x5b\xcd\x4a\xc3\x9e\x2d\x04\x1d\x27\x92\x4e\x76\xa6\x34\x91\x4b\x41\x9b\x95\xe4\x60\xdc\x6a\x56\x2f\x62\x97\x24\x0c\x52\xcf\x4f\xf0\xec\xdb\x15\x8e\xd6\x21\x82\x7c\xa2\x98\x76\x93\xa5\xcc\x0e\xed\x93\x46\xaf\x61\x67\x74\xb2\xbe\xe6\x92\x68\x8c\x32\x91\xdc\x41\x0a\x1e\x60\x76\x14\xb8\x9c\x62\x6f\xbe\x80\xe2\x75\x96\x64\xa8\x06\x36\xa3\xb1\x44\xf8\x4a\x9b\x81\x58\x5e\x6f\x38\x0c\x23\x7f\x99\x65\x29\x4d\x78\x9c\x50\x8b\x93\x44\xb5\x8b\xd9\x78\x46\x27\x6b\xae\xdd\x41\x38\x99\x55\xa6\x22\xbb\xcb\x1c\xd2\x87\xbb\xff\x43\xf0\x1b\xed\x26\x29\x4b\xf2\xa6\x1b\x9d\xe9\xf5\xbf\x00\xf0\xfc\x9d\xee\xb5\x5b\x55\x3b\xdb\x35\x39\x78\xdd\x9a\x48\x7c\x3f\xce\xf8\x94\xdd\x2c\x9d\xce\x3b\xd4\x80\xef\xe2\xbc\x82\x18\x7f\x6c\x92\x60\x08\xb8\x38\x36\xeb\xc7\xaf\xed\x37\xa8\x28\xa0\x7f\xea\x26\xfb\x2e\x91\x33\x32\xa2\x7a\xbe\xc8\xb5\xf9\xe3\x23\x93\xb3\x23\xed\x5b\xb0\x26\x9e\xe9\x9a\x3a\xe4\xac\x7a\x2a\x04\xef\xd0\xe9\x9a\x11\xd9\x82\xdc\x50\xad\xc4\x26\xc7\xea\x0f\x29\xee\xaa\xba\x1c\x55\xbd\x29\x79\x6c\x0d\xc9\x5b\x3d\xe8\xab\x06\x41\x3a\x90\xe4\x23\x58\x11\x17\x69\x19\xcd\xc6\x65\x51\x75\x7d\x01\xa0\xde\x3f\x51\x0b\x88\xaf\xcb\x72\x4b\x84\xfb\x3f\xb8\xaf\xfb\xae\x26\x93\x62\xb5\xf0\x75\x9f\xf0\xb3\x44\xb2\x5b\x0a\xc5\xc8\x0f\x18\x72\xa9\xc2\x8f\x73\x23\x03\xac\xeb\xf9\x6b\x53\xff\x02\x6f\xed\x9a\x1a\xd5\x85\xe8\x49\x65\xe7\x76\xd8\x00\xf2\x08\x01\xac\x5c\x7e\x64\x69\xaa\x43\x31\xc9\xcf\x95\x57\x47\x6c\x62\xde\x7c\xc0\xb4\x4b\x93\xf1\xec\x9d\xc8\xbe\xdc\x41\x9b\x41\xb1\x86\xf9\x02\xbe\x7f\xe2\xb0\xb8\xbc\x3e\xae\xd3\x61\xba\x09\x5f\xde\x15\x2b\x6a\x8d\xf8\x0e\x7c\x55\x1b\xae\x78\xa9\x89\x64\xe2\x04\x28\xb2\xc0\x54\x5d\x6a\x9b\xaf\x94\x9b\x37\xb3\xc1\x3d\xf7\x19\x2e\xac\x1a\xb2\x26\xad\x06\xb6\xe1\x72\x27\x2d\x90\x33\x50\x22\xff\x3b\x98\x9f\x11\xe1\x4d\x2c\x4b\x46\xa4\x8f\xee\x04\xc3\xad\xeb\xa3\x4e\x2d\x8f\x99\xa7\x2c\x37\x47\x73\xd8\x5e\x5c\xa7\xfc\x25\xb7\xc0\x37\xcf\x32\xde\xe8\x22\x67\x60\xda\x34\x73\x3d\x9e\x2f\xe4\x1d\x39\xa2\xf0\xe3\x65\x9a\xf0\x4f\xe4\x8c\x7a\x59\x61\x01\xab\x62\xce\x98\x7a\x6c\x7a\x0f\x61\xb6\x5a\x79\x0c\xdc\x2d\x97\x5f\x6b\xb5\x8a\x19\xe1\x58\x07\xc8\x23\xed\x32\x30\x37\x4b\x53\x51\x37\xc4\xd2\xb8\x77\x13\x42\x54\x2b\x45\x45\x52\xf1\x1e\xb6\x38\x69\xd5\x20\xd1\xf8\x7e\x9c\x11\x8e\x13\xc2\x50\x5f\xfd\xb5\x4c\x53\x9c\x10\x5e\x6d\xb2\x41\x35\x11\x4b\x5c\x6e\xee\xd6\x0f\x36\x10\xee\x88\x83\xe7\x4a\xbc\x2e\x06\x40\x68\xca\x04\xd7\xcf\x5a\x1a\x06\x15\xe0\x5f\x92\x46\x12\xb3\x0a\xd8\x52\xe5\x3a\xf4\xc4\x52\x9a\xa7\x55\x4b\x5f\xb9\x7b\xb7\xf3\xe3\x5e\xae\x84\xb3\x7c\x87\xfc\xa8\xbb\xb4\x24\x6c\x90\x0f\x71\xaa\xfe\xdb\xde\x1d\xe2\x31\xfc\xf1\x1c\xe4\xb5\x14\xdd\x8f\x3b\x1d\x3d\x87\x4b\x9c\x22\xbc\x5c\xad\xe2\x25\x31\xde\xd9\x53\x3b\x81\x69\xcb\xfa\x29\x18\x8c\x24\x6d\xf7\x83\x5f\xab\x55\x9c\x92\xe5\x20\x1d\x22\x9c\x1a\x17\x93\xa5\xda\xa1\x56\x4f\xde\x2b\x28\x58\x44\x68\xde\xec\x82\xbf\x75\x46\x8d\xf7\x07\x80\x52\xd8\x63\xce\x44\x95\x93\xbf\x94\xa0\x01\x7f\x9b\x37\x8c\xe6\xe4\x25\xa4\xc1\x9b\x54\xbf\x7d\x8f\x69\x97\x67\x92\x4d\xef\xca\x6f\xc8\x2b\x38\x6e\xc3\x53\x94\x4c\x34\x39\x1b\xa7\x7f\xaf\x98\x23\xbf\xa9\x4a\x80\xb9\xab\x87\x47\x74\x9c\x09\x25\xbf\x91\x3f\xa0\x0e\xfb\xd9\xab\x4c\xf8\x57\x39\xad\xbe\x73\xcd\x24\xba\x19\xb8\x3b\xb1\xa0\xb6\xa5\x39\xec\x6a\x2f\x52\x73\xc6\x06\xa3\x6d\xf2\x6c\xbf\x2f\x30\xf7\x2c\x02\x33\xb2\x0b\x3a\xa2\x2a\x97\xe9\x74\xca\x07\x1c\x64\xa1\x64\xa4\x17\x16\x1e\xec\x0e\x6d\xf0\xdc\x0b\x6e\x6f\x9a\x6c\x7b\x1b\x89\x01\x1f\xb0\xe1\x50\x1f\xe6\xea\xcf\x20\x6f\x83\xee\xfd\xda\x4e\x06\xa9\x83\x56\x2b\xbb\x1f\xdd\xce\x0f\x6e\x4e\x56\x42\x8b\x9b\xa2\x0b\x05\xe6\xf6\x36\xf7\x89\xde\xa9\xcd\x81\x99\xba\x77\x54\xba\x49\x54\xdf\x30\x88\x04\x02\x2b\xde\x09\xd6\x7d\x09\xc7\xd0\x97\x45\xe2\xe8\x04\xba\x49\xf5\xc9\xe1\x8e\xda\xcf\xea\xf7\x58\xb2\xdb\x44\x52\xf7\xf0\xdc\x71\x4f\xf7\xe8\x18\xd3\xee\x34\x5d\xe6\xb3\x83\xfc\x8e\x8f\xed\xe3\x8a\x06\xa3\x7c\xa9\xb6\x49\xef\x4d\xa8\x73\x29\x2e\x6f\x59\x8a\xcb\x53\x5b\xf1\x6d\x90\x67\xa9\xf5\x96\x48\x3c\x6a\xd0\xdf\x4a\x7f\x62\x56\x98\x0b\x47\x2d\xd9\x58\x40\xf3\xa9\x2d\xdb\x05\x1f\xa2\x26\x4d\xd2\xb9\x52\x58\x9a\xcd\xa3\x14\x9a\x44\xc5\xdd\xfd\x6d\xcc\x71\x86\x07\x1c\xcb\xee\x22\x91\xb3\xa1\x81\x1b\xc1\x0c\xb9\x90\x44\xa8\x8e\xfc\x1a\xdb\x6f\x30\xb4\x28\x93\x1b\xd5\x3f\x08\xe8\xb7\x0c\x37\xec\x34\xaa\x74\xa0\x61\xaa\xa4\x4e\xc5\x57\xb4\xa8\x62\xa8\x49\xe8\xfe\xa4\x43\xe0\xf2\x08\xe7\xa8\x9f\xc7\x4a\x70\x35\x80\x3a\xdd\x79\xcd\xb6\xe2\x23\xa9\x6b\x47\xb1\x08\x8e\x62\xf9\xd3\xee\xbe\xdc\xd9\xed\x03\x1c\xfe\xee\x1e\x7f\x21\x41\xa3\x24\x06\x7c\x67\x37\x3c\x94\xb9\xbb\x91\x24\x52\xdf\x9f\xa9\x16\x44\xab\x22\xdc\x77\x16\x02\xf4\x35\xce\x8a\x02\xad\x06\x6c\xf9\xe5\x7e\xcc\xc8\x12\x27\x44\xe2\x9c\x6c\x65\xd6\xad\xfe\xd5\xc1\xfb\xd3\xab\xd1\xc1\xe5\xef\x67\x87\xa3\xf3\x97\x97\xc7\x17\x1f\x8e\x2f\x2e\x51\x5f\x7d\xdb\x9d\xaa\xc3\x71\xa9\x6e\x24\x94\x4f\x28\x97\xbf\xd0\xbb\x1c\xe7\x64\x09\xba\x64\xaf\x5c\x4c\xc9\x40\x1d\x1f\xbd\xbd\xf1\x8b\xc4\xee\xc0\xed\xed\x31\x9a\xd2\x38\x19\x8c\x4b\xf7\x4e\x27\x49\xa4\x36\x06\xba\x70\x28\x0e\x56\x68\x71\x9b\x48\x09\x2d\xf7\x8a\x66\xf2\x7e\xaa\x75\xe0\x79\x61\x64\x18\x38\x50\xb4\xa1\x2c\x91\x8a\x95\x72\xc5\x0e\xfe\xe6\x85\xd5\x13\x9d\xe1\x84\xfc\x16\x0b\x84\x73\x92\x58\x43\x90\x18\xf4\x86\x78\x49\xe2\x64\xb5\x12\x83\xdd\x21\xae\x7b\x1e\xc6\x3d\x3c\x0b\xdd\x09\x67\xcc\xfa\x58\x42\x26\x34\xc8\x4f\xe3\x5d\x31\x0c\xfe\x1f\xdd\x8e\xfa\xd1\x76\x9c\xaf\x56\x12\x61\x9b\xdc\x88\x05\x48\x99\x59\x81\x0a\xd4\xd2\x5a\xec\x94\x7c\xa2\xf1\xbd\xba\xc4\x2d\x2b\x17\x3d\xc5\x79\x27\xe6\x1a\x47\xb5\x6f\x30\xc0\xcb\x38\x4a\xdd\x4f\x63\x18\x01\xf4\x5d\x0c\x9e\x0f\x51\x3f\x55\xb3\x2c\x93\x9b\xf0\xd0\x3a\x71\x8f\x34\xf7\xad\xa2\x14\xc0\x02\xb2\x5c\xbf\x04\xa0\x8e\x20\x9a\x4e\x17\x44\x31\xc5\x87\xae\xe1\x65\x25\xe6\x85\x76\xe7\x89\xf8\xa4\xcb\x1f\xe4\x47\x4c\x35\x7a\x04\x97\xbe\x64\xfc\x89\x4e\xc8\x5c\x6a\x2e\xdd\x8c\x4c\xfa\x92\x76\x97\x7c\x21\xb2\x31\xcd\x73\xea\xbf\xc9\xc9\x56\x0f\x7f\xa0\x8e\xde\xb0\xc1\xbc\xbd\xb2\x91\x12\xbf\x2b\xde\x3f\x65\x7c\x4d\xb5\xef\xe9\x6a\xf5\x3a\x00\x64\xff\x93\x0e\xe8\xb0\x68\x55\x8a\xe4\xe4\xa3\xaa\xc6\x34\xef\x6b\xfa\x21\x78\x7a\x90\xa6\xc1\xf7\xaf\xa9\x3b\x4d\x36\x21\xad\xc2\xa4\xde\xe8\x5c\x9b\x70\x39\x31\xd0\x16\x7f\xd2\x81\x1c\xaa\x71\x19\xab\xc0\x07\x1a\x80\x81\x81\xfd\xa9\xcd\x78\x3b\xeb\x1a\x88\x0f\x43\x52\x9d\x0e\x55\x22\x68\xe5\xe9\x40\x0e\xc1\x7c\x55\x7b\x6a\xa4\x56\xa3\x4d\x71\xdd\xbc\xa4\x89\x18\xcf\x8e\x58\x9e\x5c\xa7\x4d\xae\x39\xed\xf7\xd4\x48\x02\x0f\x16\x81\x09\x26\x56\x13\xa3\x96\x67\xbd\xd7\xa5\x89\x76\x1c\xcf\xe8\x23\x7d\xfb\x96\xdd\xa0\xcc\x46\xaf\xc1\x1b\xe3\x67\xf1\xe8\x8a\x6d\x81\x8d\xb5\x9a\xdc\x28\x8f\xae\xd4\x7c\x5f\x80\x1a\xed\xec\xe0\xed\xf1\xe5\xbb\x83\xc3\xe3\xcb\xd1\xcb\xdf\x47\x27\x47\x24\x7c\x44\x68\xf7\xf0\xfd\xe5\xd5\xf9\x5b\xb5\x71\x46\xaf\xce\x2f\x08\xed\xea\x10\xa9\x93\xb3\x37\xc7\x87\x80\x85\xf4\xea\xfd\x19\xfc\xa1\x3e\x06\x0d\xd4\x5b\xad\x68\xa5\x5d\xcd\x38\x69\xb7\xcc\xf4\x09\xed\x1e\xd4\x9e\x9c\xb2\x6b\x91\x08\x25\x22\xd1\x6e\x1a\xfc\xfd\xee\xe2\xfc\xdd\xf1\xc5\xd5\xef\xa3\xa3\x93\xa3\xd1\xe1\xcf\x07\x67\xaf\x8f\xf5\xd3\xdf\x7e\x1f\x1d\x9e\x9f\x5d\x1d\x9f\x5d\xa9\x3e\x1a\xfd\x9b\x63\x21\xb4\x3b\xba\x49\xb3\xeb\x24\xf5\xaa\x39\xe3\x63\xe8\xae\x52\x77\x61\x48\xd6\xb6\xb3\x4e\x80\x92\xfb\xfa\xa1\x83\x0b\xdf\x58\x4f\x80\x56\x6d\x78\x37\xc0\x26\x47\xee\x03\xd7\xe2\xe7\xf0\xf2\xe6\xef\x69\x6a\x4b\x90\x6b\x2d\xab\x25\x44\x09\xc9\x2d\x75\xa7\x4d\x6c\xbc\x77\x86\x42\x97\xc7\x92\x02\xc1\xdc\xe5\x00\x73\xad\xea\xf7\x15\x53\xb4\x5a\xe5\x15\xf7\xb1\x18\xa1\xd5\xea\x1c\x6a\xcf\x82\x6b\xe5\xf1\x63\x7b\x86\xbf\x5f\x2f\xae\x4c\x2f\xf0\xdc\x0e\x36\xe8\xd0\x65\x78\xd9\xd8\xd2\xae\x05\x37\xfd\x91\x3f\xb9\x66\x49\x0e\x55\xc7\xc2\x98\x4e\xac\x63\x86\x46\x71\x6a\x8a\xed\xa4\x4d\xb1\x9d\x21\x83\xb8\xe9\xe6\xec\x2f\xfa\x53\xaf\xd3\xb9\xe9\x6a\xee\xa7\x46\x37\x72\x4f\x47\xfe\x29\x44\x0c\x00\x98\x38\xc2\xc2\xa8\x8e\x7c\xef\xcf\xf5\x74\xd6\x14\x7e\xd6\x15\x80\x91\x4b\x80\x1b\x53\x72\x37\xb3\xbe\x5e\xcc\x38\x9e\x69\x57\xd7\xed\x6d\x6f\xba\xcd\x88\xb4\x69\x88\xfa\x11\x52\x07\x68\x42\x7e\x8d\x29\xce\xea\x32\x2e\xad\xc9\xb8\x14\xa1\x16\x33\x79\x1b\xef\xa1\xea\xfe\x2e\x56\xc2\x4e\x3f\xc3\x32\xb9\xe9\x27\x38\x94\x7f\xfb\x75\xf9\x37\x41\x38\x5f\xe6\x20\x99\x4d\x0c\xa4\x66\x7d\x03\x8f\x60\x5c\x5f\xc8\xd6\x2e\x3e\x28\xe1\x48\x5e\x05\xa8\xd8\x15\x47\xa9\xad\x5d\x35\x81\x5b\x84\x7c\xb1\x1a\x32\x58\x68\xa1\x16\x1a\x5b\x47\xbc\x75\x28\xe4\x76\xb6\x5a\x99\x9e\xaf\x9d\x1d\xdc\x33\x27\xce\x92\x4b\x75\xcb\xb4\x8b\x25\x11\xd6\xca\x0b\xb5\x8c\x9d\x0e\xf7\x8b\xa8\x46\x92\xe6\xb4\x7d\xa0\xcf\xec\x01\xf4\x74\x18\xac\xe3\x27\x45\x15\x23\x43\x6b\x6a\xfd\x75\x8f\x9a\xee\x39\xc8\x5d\x40\xe8\xda\x0b\x48\xe3\xe2\x3c\xfa\x02\x82\x10\xbe\x71\x5d\xb9\xf9\x6f\xee\x0a\x70\xc9\xb7\x24\x60\xa7\xef\x62\xb5\x81\xea\xdd\x59\xaf\x00\x95\x48\x09\x37\x0d\x05\x98\xbe\x32\xd2\xae\xa3\xbb\x4e\xa7\xe1\x02\xa9\xb3\x96\xd3\xca\x05\x52\x5d\x17\x83\x92\x4a\x28\xbb\x8d\x25\x66\x78\xa0\x84\xba\xd2\xed\x91\xfb\xdb\x23\x35\x33\x66\xbf\xa9\xcf\x98\xac\xcd\x98\x44\xa8\xd2\x7a\xc3\x8c\x41\xc5\xe0\x1e\xef\x7b\xb4\x6b\x2f\x8a\x6e\xf2\xfe\x55\x36\x5f\xdc\x04\xa4\x5f\x71\x4c\x55\x4c\x18\xb5\xc0\xb3\x28\xa8\x52\x20\x0d\x73\x7b\xa1\xc5\x38\x2f\x05\x5c\x5a\x07\xf9\xf2\x29\x0e\x5e\xf2\x95\x83\xfd\x02\xb6\xf0\xa1\xae\xc1\x39\xd6\x5f\x1e\x9f\xbe\x52\x9f\x44\x01\x0c\xf7\x89\xd7\x9e\x37\xef\xea\x86\x5b\x21\x1d\x5c\x0c\xad\xda\x45\xfd\x0d\xb9\x8f\x5b\x4e\x95\x10\xca\xed\x8a\x73\x3a\x73\x9b\x9f\xa3\x23\xe3\xa7\xa7\x3e\xb6\xb9\xf2\x6d\x09\x84\x9b\x1e\x1f\x6a\x32\x3d\x5b\x3b\x29\x0d\xc2\x05\xcc\x4c\x93\xd0\x71\x06\x9d\x3d\x0d\x49\xfe\x55\x45\xf7\xeb\x75\xaf\xbc\x41\xf7\xca\xed\x39\x09\xc7\x6a\xed\x44\x5c\xad\xb2\x86\xb3\x53\x9d\x70\x7a\xe0\xf8\xf4\x05\xe9\x75\x3a\xef\x62\x84\xcf\x94\xc4\x4d\x3b\x9d\xf8\x7f\x36\xa8\xdc\xf6\xe9\xe0\x4c\xcd\x2e\x43\x7d\xfd\x17\x0a\x09\xed\xaf\x18\xdd\x9f\x6e\x6f\xe3\x2f\x80\xe6\x64\x9f\xbe\x8f\xd1\xfd\xce\x8e\x6e\x20\x56\x2d\x04\xe7\xa4\xe2\xe9\xee\x06\x4e\x31\xdc\x30\xad\x4b\x86\xba\xa1\x4d\x4f\x24\x05\xd5\xa1\x4e\xec\x61\xa2\xf6\x0e\xd0\xde\x56\x4c\x89\x88\x11\x02\x6c\x67\xe7\x48\x68\x31\x9d\xaf\x62\xae\x0e\x32\xae\x6e\x82\x5c\xdd\x04\x0b\x75\x6e\x14\x71\xd8\xd9\x97\x8a\xfd\xfe\x15\x23\xc0\xa4\xa2\xb1\xdf\xad\xef\x63\x14\xe6\xe6\xf5\xe4\x58\xf5\xc8\x95\xfb\xb1\x24\x3d\x75\x0f\x27\x3b\xbb\xa8\x5f\xa5\xd5\x9d\x10\xb8\x56\x1f\xd1\x3b\xbb\x08\xe1\x5b\x25\x54\xff\x53\x27\x62\xbc\xa6\xd3\x4c\xd0\x08\x0f\x4c\x23\xe0\xf5\xe1\xda\xfe\xb0\x41\x70\xda\xea\x05\xb5\x9b\x9e\x70\xc2\x2a\x3d\x71\xcd\xe2\x8a\xdf\xa0\xea\x89\x91\xbc\x1a\x2d\x47\xaa\x91\x98\xbd\xe8\xad\x56\x5c\xfd\xc3\x76\xf8\x16\xe9\xa1\x4e\x47\x51\x65\xa4\x69\x21\xc2\x09\xc2\xf0\x7b\x30\x54\x7f\x97\x47\x66\x04\x5e\x3d\x32\x8e\xd9\xd0\x67\x2f\xb0\x6a\x38\xed\xc8\xb3\xdf\xeb\x73\xbc\xf4\xfe\x17\x71\x0c\xcf\xd9\x7e\xaf\xcf\xd0\x4e\x8e\x70\x4a\xe4\x8b\xde\xfe\x72\x5b\xf6\x65\xe9\xb4\x4e\x42\x97\xf0\x38\x02\xf8\x3c\x7d\x89\x89\x50\xa7\xd3\xd3\x09\x05\xa0\x7f\xe1\x2b\xd5\xe9\x75\x55\x28\x6e\x6b\x6b\x40\xcb\x9d\xdd\x17\xe9\x76\x6e\x87\x9c\x84\x35\x78\x3f\x1d\x35\x92\x3f\xad\x1e\x77\x0a\xf0\x32\xf1\x60\x18\xb0\xb3\x8f\x25\x63\x7d\xcd\x22\xab\xee\xbf\x7d\x6f\xe2\x8d\x43\x1f\x9d\x1f\x4a\x9c\xd0\x11\xa2\xb5\x93\xb8\xbf\x5e\x90\x7f\xa3\xff\x13\xd9\x3b\xb4\x31\x53\x50\x75\x24\x89\xa1\xcd\xe0\xca\x91\xf1\xbb\xa4\x1e\x5f\x3b\x40\xf2\xad\x69\x9e\xa1\x4a\xc3\x78\xb8\xc9\x74\xc2\x30\xdb\x56\x8f\x5b\x0d\x4d\x6d\x33\xdc\x73\x8d\x41\x6e\x87\x0f\xd5\xfe\xfa\x81\xbd\xae\x43\xc7\x88\x4e\x47\x00\xe4\x89\x36\x6a\xac\x56\x51\xc5\x00\x1b\xe1\x44\x7f\x34\xb1\xf6\x52\xfb\x8d\x33\xa0\x46\x58\xdd\xe9\x66\x49\x5e\xb2\x37\xbb\x58\x00\xde\xb0\xef\xa4\xba\x22\xf0\x06\xb2\x95\x8a\x4e\x72\xbd\x5d\x80\x00\x6a\xd5\x46\xa5\xad\xfa\x3b\x0c\x89\xf9\x4c\x7f\x8d\xae\xf9\xd5\xc8\x8f\xac\x49\xe3\xc4\x90\xf3\x90\x4b\x48\x6f\x2f\x79\x91\xd9\x65\x49\xac\x87\x9c\x76\x9c\xc5\x29\xc9\x15\x9b\x1b\x93\x7c\xb0\x0b\x30\x47\x4b\x13\xc3\x0a\xc2\x41\x8a\x7f\x8d\x19\x1e\xd7\x85\x0d\x56\x13\x36\x98\x62\xe3\x99\xc3\xad\x0b\xd8\xdf\x2f\x4d\xbe\x52\x83\x21\xce\x48\x6f\x2f\xf3\xbe\x7b\xd9\xf6\x36\x7a\x13\x33\x4c\xb1\x1c\x64\x43\xf8\xbe\x15\xa8\xcd\xc6\xd9\xfc\x9a\x71\xaa\x1a\xf2\x55\xff\x5a\xe5\xac\xe5\x4f\xdf\xc4\x83\x21\xb6\x5f\x04\xc5\xde\xe8\x99\xd6\xf6\x58\x67\x22\xc4\x29\x1e\x13\x89\xa7\x24\xc3\x13\x92\xe0\x99\x33\x19\xe2\x05\xd9\xd9\xdd\x33\x27\xc4\x9c\x2c\xb6\x77\xb5\x0f\x34\x21\x24\x5e\x90\x52\x62\x56\x3c\x47\xa8\xd3\x89\x17\x64\x86\x70\xf4\x4f\x9a\x8c\x67\x91\xfa\x2a\x57\xd2\x3d\x6c\x80\x39\x5e\xa8\x2f\x16\x5b\x84\xcc\xd0\x3d\x54\x86\xeb\x75\x00\x5b\xbd\x25\x63\xd3\x01\xd5\x5c\xc4\x97\xf3\x6b\x2a\xbc\x91\xe8\x76\xb5\xda\x2a\xf3\x82\x31\x52\x62\x68\x64\x19\x41\xc4\x78\x7b\x8c\xd0\xb5\xa0\xc9\x27\x55\x83\x62\x67\xb7\xe8\xde\x28\x00\x4f\xe2\x31\x70\x5d\x84\x5a\xf0\x45\x61\x98\xe9\x62\xdf\x75\x15\xf5\xc3\x5e\xbb\x8d\x7e\x47\x7a\x7b\x77\x2f\x6e\xf7\xee\x2c\x29\x5d\x93\x8f\xf1\x18\xdf\xa1\xd6\x75\xa7\xe3\x6a\xbf\xc6\x39\xdc\x3e\x8b\x4a\x7b\x78\xab\x87\xa7\xae\x51\x55\xfc\x86\xa8\x77\xb9\x7e\x01\x46\x57\x6b\x02\x9e\xec\x4f\xaa\x91\x0b\x71\x6e\x0d\xc0\xd6\x1f\xf3\x06\xe1\x05\x81\xd9\x74\x7b\x22\x6d\x88\x1b\x4f\xbb\x49\x2a\x7f\xa1\x77\x9d\xce\x78\x90\x0f\x4d\xf3\xa1\x74\x98\xa2\x31\xc9\x95\xe0\x32\x6e\xb4\xc6\x8f\xbb\x4b\xfe\x89\x67\x9f\x9d\x01\x76\x5f\xd5\xd3\xaf\x3d\x8e\x73\xcd\x25\xdb\x6a\xcd\xd6\x75\x02\x8d\x09\xf4\xc2\xdd\xa0\x47\x64\xe2\x1d\x12\xc7\xfb\x93\x7e\x60\x79\x1f\x23\xfc\x99\x8c\x4a\xc7\x4c\x5e\xf6\x1c\xfa\xbc\x5a\x35\x5c\x3f\x6e\xf0\x67\x63\xae\x3a\x26\xa3\xe6\x08\xa3\x38\x47\xf8\x52\xd1\xe6\xf2\x3a\x97\x22\x5e\x6c\xef\x22\x7c\xae\xc5\x5d\x2d\x40\x01\x1e\x91\x2a\xa6\xc1\x99\x5a\xc7\xe6\x26\x7a\x8e\x2f\xbd\x47\xec\xb9\x5d\xcd\x31\x19\x79\x8f\xaf\x1c\x15\xc6\xae\x16\x72\x26\x47\x90\x53\x52\x63\x2a\x63\x84\x27\x55\x51\x62\x1c\x1c\x94\x6e\xff\xfe\x16\x22\xe5\xf6\x86\x58\x10\x0a\x62\x1a\xa1\x83\xe7\xce\xec\xf4\x23\x04\x8a\x3a\x48\xd9\x06\x91\x3f\x30\xbd\xfa\x67\x2e\x3b\x94\x44\x0d\x54\xa4\xc4\xb2\xba\xfb\x84\x2b\xc3\x57\xab\xc0\x9d\xcb\x77\xf8\x8f\xc0\x55\xb6\xa6\xe1\xa1\x0e\x79\x2c\x05\x65\x80\xce\x38\x43\xe9\x9a\x78\x60\x13\xfe\xe1\x6f\x0b\x0e\x66\x38\xf4\x79\xf3\xd8\xc3\x25\xa3\x55\x25\xb8\x97\xca\x24\x8c\x87\x5d\x93\x84\x24\xa7\x72\xb9\x68\xf0\x4c\xe2\xf5\x78\x1e\x0d\x49\x02\xe9\x6d\x24\x4d\xc4\x24\xfb\x5c\x47\xf4\x6e\x88\x14\xd2\xee\x81\xa5\x54\x4a\x92\x96\xa4\x9e\x86\xb0\x0c\xad\x60\x31\x60\x17\x7e\xae\x05\x6d\xcc\xde\x2c\xca\xe1\xf3\xd6\x08\x24\x50\xe1\xf1\x2c\x6c\x88\x96\x80\xd9\xe0\x3a\x75\x6a\xda\x1d\x7d\xa4\xc9\xa7\x4b\x2a\x7d\xe7\x18\x0d\xd5\x06\xa1\xf5\x39\x4c\x7e\xf4\x63\xd3\xed\x27\xd8\xd8\x12\xf5\xff\x1f\xf2\xfe\xbe\xbb\x6d\xe4\xca\x13\xc7\xff\xe7\xab\x10\x31\x39\x08\x6a\x59\xa2\xa9\xcc\xee\xec\x2e\xe5\x6a\xfd\xd4\x6e\x79\xe2\x8c\xdd\x76\x2c\x77\x32\x3d\x0c\x97\x03\x91\x45\xb1\x62\x10\x60\x17\x00\xd9\x8a\x88\xf7\xfe\x3b\x75\xeb\x19\x28\x50\x94\xdb\x4e\x72\xce\xb7\xff\x68\x8b\x40\x3d\xa3\xea\xd6\x7d\xfc\xdc\x62\x40\xe5\xf2\xaa\xba\xa9\x56\xa5\xba\x8a\x72\xea\x7c\x6c\xec\x39\x36\x52\xef\x9b\x83\x3a\xbd\xa2\x49\x8e\x29\x02\xcb\x17\x97\x7f\x9b\x19\x96\xee\x4e\x83\x52\x8a\xeb\x2c\x3d\x5f\x70\x69\xa2\xd6\xbf\x11\xce\x61\x39\x0a\x1a\xf6\x10\x97\x4e\xa3\xd6\xee\xfe\x88\x8c\x69\xbd\xb0\x6d\xcc\x6a\x87\xc8\xbb\x2c\x6c\x49\x1d\x3d\x78\x41\x3b\xba\xcc\xda\x79\x1f\x92\xeb\xe3\xb8\xa0\x4a\x2d\x65\x2b\x65\xfa\x03\xfa\x61\x0d\x42\x22\x2a\x6c\x52\x4c\x98\xf7\x92\x92\x67\x7f\x19\xc3\x5d\xfe\x9b\x67\x76\xda\x6b\xea\xe7\x36\x37\x17\xf8\x43\x84\x06\xfc\xf9\xe4\xa2\x4a\xac\x7f\xe4\x92\xe2\x68\x0c\x97\xed\xd4\x39\xc9\x3e\xff\x8a\x53\x00\x38\x34\xed\x34\x80\x6d\x38\xc1\x19\xe1\x8a\x3e\x0b\x31\x3c\x1f\x9d\xe1\x12\x69\x6d\x2b\x8e\x10\x5e\x7a\xef\xcb\xd1\x19\x1a\x54\x23\xef\xd9\x04\xe7\x08\xa7\x44\xe7\x4b\x96\xbe\x2c\xf5\xf3\xf4\x1c\x25\x05\x59\x7a\x23\x47\xcf\x27\x17\x2c\x49\xaa\x51\x36\xab\x47\xa3\xf9\x68\x89\x42\x73\xa0\xa6\x00\x5e\xe2\x02\x33\xd4\x24\x51\x84\xc1\xbb\xc4\x59\xe3\x15\xf5\x64\xcf\xa0\xf3\xd7\xd6\x38\x7e\xe1\x92\xa8\x9d\x94\x8a\x79\xdb\x14\x7e\x83\x3a\x8e\x4b\x43\x4d\x4c\x09\x9a\xe4\xe8\x62\xa3\xbb\x48\xd1\x54\xfa\xd3\xe4\x17\x3b\xaa\xb8\xbb\x5a\xf0\x1f\xd3\x7e\x1f\x61\xb1\x28\x41\x6b\xc0\x47\x6f\xab\x6c\x68\xcb\x17\xd3\xa8\x7e\x88\x8c\xbb\x33\xca\xba\x5e\xfb\x97\xe0\xea\x31\xb7\x4d\xee\xa8\x2b\xbd\xb4\x75\x02\x2a\x2a\x6f\x82\xa4\x3b\x5f\xbe\xdf\x0f\xa5\x34\xfb\x65\xee\xce\x0c\xeb\xab\x5f\xbc\x90\x0e\xea\xbc\x41\x53\x21\x36\x12\xae\x68\xdd\x56\x1e\xee\x7c\x0c\x16\xc2\xe4\x8c\xfe\x6b\xd0\x59\x81\xba\x7c\x2a\x78\x2c\x58\xc7\x3f\xf7\x18\x76\x40\x7b\x54\x3c\xdc\xd6\x1c\x5f\x60\x24\x69\x4b\x97\xe7\x59\xcd\x5c\x85\xde\x8d\x7f\x19\xdc\x89\x7b\xf2\x62\x21\x1f\x4e\xa5\xdb\xab\xf3\xc5\x6e\x69\xe2\x67\x14\x57\x83\xc0\x8c\xd8\xbb\x9b\xe4\xe6\x3b\xba\xfc\x9e\xa4\x5b\xe6\x5b\x24\x82\xb5\xa8\xe6\x28\x8e\x99\xe0\xad\xc1\x94\x4c\x05\x63\x10\x20\x34\x6d\x4e\x10\x34\x38\x9d\xa7\xa0\x95\x05\xd6\x87\x95\x1f\x78\xba\xfc\x08\xb0\x0f\x42\x68\x50\xb2\x4b\x5e\xd6\x5b\xc9\x6e\xb5\xd5\x8e\x08\x61\x9f\xe1\xe7\x08\x12\x6b\x1d\xa8\xc5\x15\x8f\x8f\xd0\x54\xce\xc4\xdd\x86\x6a\x01\x1d\x04\x00\x8a\x73\xd2\xf9\x78\xd5\x85\xb1\xee\x8c\x23\x34\xad\x42\x3e\x66\xd6\xa1\x8d\xef\xf7\xdc\x43\xa3\x50\x1e\x5b\x9c\xdc\x02\x58\xd4\x8c\xcd\x91\x4d\xb5\xda\xb6\x94\xde\x8b\x4b\x2c\x89\xd6\x45\x11\xe1\x28\x8d\x90\xfd\x75\x06\x7f\x3f\x34\xe6\xf1\x43\xa3\x9f\xd5\xf9\xc7\x22\xb7\x2b\xec\x5a\x94\x1b\xa7\xfc\xe1\x62\x67\x08\xdf\xc8\xf6\x45\x77\xee\x8f\xf1\x4d\xca\x23\x79\x2f\x7f\xa2\xe4\xc1\x89\x02\x32\x5e\xf6\xc6\x20\xe0\x4e\x1c\x74\xcf\xd4\xa2\x24\x9c\x5c\xdb\xe2\x06\x49\x06\x0e\x80\x74\x33\xb0\x17\xa0\x52\x19\x97\x26\x47\xaa\x76\xaf\x49\xc5\xd5\xd4\xf1\xb1\x2e\xe3\x38\x97\x57\x5c\x89\x2e\x12\x7d\xae\x8d\x0e\x6f\x48\x48\x52\xc8\x6d\x1c\xf0\x35\xa4\xfb\xbd\xdc\xd5\x41\xa9\x07\xee\xc2\x9f\x5a\x82\x8f\xee\x42\x45\x65\xbd\x94\x7b\x73\x1a\x2a\x0b\x2a\x22\x08\x99\xb0\x96\xd3\x36\x3d\x25\xee\xf6\xc2\x6e\x46\x02\xd8\xa0\xcc\x89\xdc\x32\x39\x64\xaf\x68\x92\xe2\x42\x45\x23\x0f\x73\x64\xc1\xc4\x97\x63\x85\xea\x98\xfc\x56\x0f\xe2\xa4\xa4\xd5\xc9\x3a\x65\x19\x5d\x4d\x4f\xe4\xfc\xc5\x8c\x77\x69\xb5\x39\x89\x7e\x3b\x62\x32\xdd\x98\xe8\x7d\xf4\xdb\xe8\x64\x59\xd4\xd9\x0a\x00\xc7\x6f\xe8\xc9\xba\xa8\xf3\xd5\xf8\xb7\xa8\xd1\x3e\x59\xe0\xb3\x8f\x92\x4f\x54\x1d\x62\xf0\xc8\x41\x49\xc0\x70\x6b\x77\x6b\x83\x8e\x2c\x7c\x76\x6c\xd1\x14\xd0\x23\x9f\xd0\x76\x3a\xfd\x44\x4d\x05\xbb\x81\xdf\x52\x9d\x12\xef\x33\x0d\xc3\x58\x33\xe3\xb9\x75\x0e\xd4\xcc\x00\xd3\x29\xa7\x2d\x34\x5e\xdc\x15\x59\x5a\x31\x21\x72\x9c\x61\x3e\x5e\x70\x9a\xae\xde\xe6\xd9\xbd\xfa\xb9\x49\xcb\x17\x70\x39\xa9\xdf\xb7\xb4\xaa\x6c\x8a\x40\x3e\x5e\x94\xee\x03\x89\x20\x87\x19\xa9\x66\x95\x89\xa6\x03\x4f\xec\x00\xc5\x65\xfb\xbd\x66\x25\xe3\xb8\x23\x95\x89\x9b\xd5\xeb\x7e\xa2\xa3\xdc\x95\x6b\x60\xb8\xd1\x02\xd9\x41\x16\x56\x40\x4f\x49\x31\xb0\x2f\x52\x71\x8d\xed\xf7\x6f\xa9\x33\x01\x38\x9b\x4d\x53\x99\x68\x07\xd0\x9b\x73\x34\x5e\xec\xd4\x3e\xd4\xd8\xb1\x4e\xf2\x78\x1e\x84\xff\x66\x1a\xfe\x1b\x0e\x43\x5b\x20\x2b\xda\x02\x99\xe1\x24\xd8\x3a\x71\x04\x38\x59\xcc\x81\x12\xd4\xe5\xf0\xd0\x86\x9f\x9b\xf5\xb1\x9a\xda\x5b\x5a\xe1\x94\xc0\x6e\xb7\xc1\x26\x85\x89\x4d\xd7\x6b\xe3\xea\xc0\xcd\x4b\xb5\x16\x21\x8f\xec\xd4\x1d\x49\x37\x50\xa4\x88\x63\x6b\xfc\xb8\x28\x9c\x8d\x26\xb8\x95\xa6\xc1\x85\x5d\xc8\x6e\x92\x4b\xd7\xa2\x5f\x89\x2d\x4b\x75\xe6\x98\xc6\x0f\x15\x6e\xcb\x63\xe0\x4a\xba\xa6\x09\x7f\x3e\xd9\xef\xdb\x2f\x9f\x13\x83\x2e\xe5\x3a\x9a\x8a\xe1\x87\x64\x6b\xda\x48\xa4\xc4\xae\xaf\xb7\xc2\xba\x51\x07\x05\x79\x11\xe0\x72\x3d\xe5\x7c\x21\x26\x4c\x1f\x01\x8f\x41\xc6\x45\x57\x5f\x42\x91\xbc\x40\x7c\xdb\x64\x21\xb3\xe8\xbb\xea\xa2\x96\xca\xb8\x54\x5c\x83\xa7\x2d\x4a\x71\x89\x50\x4e\x98\x1b\xb2\x67\xb7\x7f\x46\xdc\xc1\x9a\x5c\x81\xde\xfc\x95\xf6\x38\x0f\x50\xa2\x9c\x64\x76\x82\x90\x11\x53\x8f\x65\xa9\xc6\xe2\x28\x9d\x53\xfc\x1f\x09\x55\x82\x05\x92\x00\xdc\x7f\x32\x63\x12\x6c\x36\x6b\x21\xef\x24\x15\x0e\x79\x85\x20\xfc\x73\xc2\x80\xcf\x6f\x3c\xe5\xb0\x65\x95\xd2\x36\x43\x95\x3f\xca\x50\xe5\x8a\xa1\xc2\xb9\xf8\xd8\xed\xc4\xbc\xca\xce\xa2\x91\x84\x24\x21\x54\x98\x55\x0b\xb8\xa3\xde\xab\x87\x32\xe7\x05\x5c\xf3\x43\xf7\xe8\x78\x7b\x63\x99\x15\x37\x37\x94\x5f\x4b\x71\x54\xf9\xe3\x1c\xd8\x4b\xfa\xa1\x53\x41\xb9\xea\xfa\x9b\x69\xd0\xb5\xee\xea\xd3\x67\x40\x2b\xbc\x4f\xab\xa7\xe0\x3d\x74\x08\x5d\xd0\x9e\xfe\xe3\x3c\x8e\x75\xec\x29\x40\xe9\xc6\xb1\x74\x30\x73\x77\x86\x32\x01\x37\x7a\x4b\x08\x99\x0d\xcc\xa9\x7f\x4b\x90\x49\xc7\x54\xea\xf9\x88\xcd\xfd\x73\x52\x80\x40\x65\x4d\x8f\x9d\x53\x51\x76\x4f\x45\x0a\x46\xc0\xee\x24\x06\xae\xd2\xb8\xbd\x13\x4b\xd8\x89\x19\x78\x81\x21\xf9\xb9\x1f\xdb\x76\x25\xf2\xad\xc0\xc6\x4d\x40\xd0\xaf\xee\x0e\xe8\x80\x46\x05\xd8\x98\x17\x69\x2e\xb8\x11\xc1\xc4\x88\x2d\x75\x5a\xe4\xd9\xfd\x89\x26\x85\x82\x81\xa9\x04\xdb\x52\xe4\x8a\xb5\x99\x9e\xfc\x76\x24\x95\xae\x79\xb9\xd3\xfe\xc7\xa2\x7b\xbb\x9b\x3a\x7b\x56\x07\xba\x2b\x71\xba\xce\xb2\x56\xe8\x97\x43\x14\x10\xbe\xd2\x1a\x1f\x79\x08\x9c\x5d\xd7\x17\x98\xe9\xee\x70\x43\x08\x04\x5b\x28\x56\xa5\x73\x88\x2c\x6b\x88\x0b\xab\x08\xc8\x5b\x24\x0d\xee\x28\x67\x5c\xb8\x24\x6e\x37\x03\xe9\xb2\xa2\xb7\x13\x23\xa5\xd3\x31\x84\xac\xa9\xaf\xa4\xca\x9d\x99\x6f\x55\xc4\x71\x2a\x63\xca\x92\xbc\x45\x7c\x98\xb4\x56\x8b\x9d\xc8\x11\x78\xe0\x17\x01\x3d\xa7\x07\xe0\xac\x57\x47\x6b\x86\x3b\x33\xe1\x32\xfb\x5c\x6b\x6f\x71\x75\x1e\x10\xf6\xc7\x60\x9e\x23\xec\x5e\xf5\x7a\x10\xed\xdb\x5e\x81\x07\x53\x70\xa7\x69\xfb\xa0\x7e\xa6\x70\x86\x2e\x7b\x58\xbf\xfc\xd7\x63\x23\x83\x8e\x31\xf7\x93\xcd\xfc\x7f\xe1\x76\xec\xe3\xc8\xdb\xf7\x60\xc7\xe0\x9a\xe2\xe5\x3f\xe9\x95\x07\x24\x30\x6f\x70\xde\x24\x9f\x29\xc2\x1f\x7a\x36\xcd\x37\x4d\x7b\x63\x44\x8b\x0e\xff\x57\xca\xa8\x0e\xc3\x56\x52\x57\x0e\x91\xe6\x8e\x06\xe7\x86\x54\x05\xac\x30\xba\x05\x57\x9e\xb1\x15\x7b\x39\x4f\x6d\xa2\xb6\x43\xe8\x32\xfc\xd4\x99\xbd\x69\x71\xdb\x46\xbe\x94\x06\x98\xf6\x44\x26\x21\x1b\x42\x25\x4d\x37\xfb\xfd\x43\x33\x4d\xd4\x0f\x05\x95\x1a\xcc\x76\xc6\x35\x24\x8d\xda\xa1\x7d\x59\xce\xec\x1a\xc8\x72\x4d\x83\x65\x3d\xab\x4e\x8c\x3a\xd8\x09\xa6\x92\x63\x91\x92\xe0\x33\xbc\x49\x60\x2c\x9f\x78\xba\x93\x70\x00\xd7\xf5\x8e\x72\x94\xbc\x54\xd5\x5d\x51\xf4\x23\xfd\x8a\x91\x60\x6c\x9d\xfc\xa7\xb8\xaa\x94\x81\x46\xa1\x4b\x7c\x06\xbf\x1a\xfc\xc1\x22\xbb\xe4\x49\x35\x9b\xcc\x71\x35\x3b\x13\xff\xfb\x9d\xd5\x4c\xd9\x1a\x0a\x45\x03\xdc\x49\x29\xf9\x48\xc7\x37\x2c\x5f\x49\xb0\xd0\x41\xc0\x89\xff\x8d\xa4\xa9\xef\xfe\x59\x8e\x47\xfb\xcb\xea\x32\x89\xdd\x89\x45\x4e\xff\x9c\x1e\xac\x24\x4b\x24\xc7\x6f\x5e\xe5\x6d\xd0\xfe\x88\x16\xd4\xc7\xec\xdf\x81\xd9\xbe\xcd\x31\xfb\x05\xff\xb5\xf7\xb2\xd2\x82\xa6\x3e\x91\x61\x6d\x85\xb4\xbf\x93\x0a\x87\x25\xef\xdc\x26\xa2\xce\x43\x89\xa8\xfb\x24\xef\x63\xc4\x6e\x95\xf4\x35\x04\xbd\xa0\x38\xdd\x36\x9f\x8e\x9f\xc0\xde\x1e\x94\xbe\x40\x7f\xce\xb4\xf3\x81\xce\xa6\x9f\x91\xa2\x7d\x11\xb6\xa5\xf2\x2c\x74\x19\x96\x38\x43\xfb\x7d\xd2\xe5\x96\xc1\x1d\x47\xdc\x84\xb2\xa3\x27\xf2\xcd\x8a\xb3\xcf\xb5\x46\xcb\xbd\x90\x4a\xb8\x7b\x58\x57\xe0\x6a\x43\x9e\x38\xbd\x73\x95\x60\xb9\x7b\x28\x24\xb0\x16\xad\xc8\x7b\x48\x9d\xdc\x3d\x00\xa6\xc0\x0b\x0a\x37\x9e\x60\xa0\xcc\x56\x7b\x4f\xfb\x99\xf5\xe8\x30\xb3\xfe\xdb\x68\x54\x8d\xa2\xdf\xba\xcc\x7a\x14\x60\xd6\x4d\x57\x2f\x68\x6b\x92\x0e\x87\x6e\xf8\x70\x2e\xa9\xd3\xab\x1e\xfb\xec\x0f\xd4\x1e\x50\x05\x5b\x01\x62\xa4\x8d\x31\x77\xbc\x8b\x1c\x6b\x46\xc9\xfe\xa6\x79\xb1\xa1\xfc\xa5\xe0\xb1\x74\x09\xa8\x67\xed\x29\x3e\xb6\x4d\x24\x2a\x44\x28\xd8\xb6\xc1\x12\xc9\x9b\x70\xd7\xda\x69\xc3\x55\x48\x13\x6e\x07\xe3\x78\x45\x75\xfa\x67\xaa\x7f\xe5\x60\x1a\x1e\x81\x36\x3d\x0f\x99\x45\x2b\x36\x0b\xf6\xa3\x6b\x70\x86\xd5\xdb\xef\x43\x16\x2d\xd0\xa2\x3d\xfb\xcb\xf5\xb3\x71\x45\x4b\x63\xd4\x7a\xfd\x88\xdf\xc6\x82\xab\x0c\x8e\x64\x36\x37\xc9\xc7\x39\x7d\xcd\x6e\x5e\xe5\x2b\xfa\x99\x1c\xf4\xc4\x10\xf7\xb2\x0c\x44\xbb\xff\xfe\xde\x4f\x87\xef\x05\xfa\xfa\x3d\x61\x4e\xb4\x56\x12\x2b\x30\x40\x08\xed\x15\xbb\x60\x96\xcf\x21\xa7\x9e\x87\x83\x36\xcb\xe7\x0d\xae\x42\xb9\xc9\xdd\x20\x00\xbf\x13\xfd\x51\x0c\x27\xec\x8d\x53\x85\x42\x81\x4a\xb4\x3b\xe9\xd1\xc8\xe6\x77\x56\xad\x29\x0f\xd3\x1c\x4f\xf0\x03\x24\x88\xa1\x58\xc1\x7e\x4d\x2b\x08\x61\xb7\xc3\x7b\x21\x5b\x12\x9d\x85\x30\x98\x75\x31\x2d\x0e\x8a\xaa\x2b\xfa\xbe\x37\xef\xba\x49\x11\x1d\x98\xc3\x80\x9b\xe4\xd4\xce\x58\xb5\x4d\x94\xf7\xcd\xa2\x82\x34\xe2\x1a\x8c\xcf\x46\x12\xbe\x96\x47\xea\xa5\x3c\xb9\xaf\xe9\xc0\x0d\x2d\x7c\x49\xf1\x4b\x1a\x9a\x64\x12\x5d\xc1\x6e\xc6\x6b\x4d\x76\x24\x39\xff\x1b\xed\xe4\x25\x18\x6f\xd2\xf2\xad\xb5\xc6\xe0\x9f\x40\x49\xff\x3d\x25\x0f\x42\x4a\x9e\x4e\xf0\x22\x18\x28\x3c\x1d\x9e\x09\x0e\xf1\x24\xf8\xb2\x0d\x8c\x1a\x2c\xd4\x08\x36\xb1\xa7\xbe\x41\x82\x2e\x69\x35\x1a\xe1\x03\xad\x08\x3e\x12\xff\x1e\xc6\xfc\x27\xd0\xf1\x7a\x91\x9f\x7f\x92\xab\xf7\x0b\x0d\x01\xb9\x3b\xde\xd3\x54\x82\x9f\xf6\x45\x45\x23\x1b\x3b\x50\x75\x02\x82\x31\x0f\x03\x6c\x70\xcf\xf8\x29\x35\x51\x5c\x61\xfc\x25\x94\xa4\xe3\xe5\x26\xe5\x2f\x8a\x15\xbd\xac\x92\x09\x42\xdf\x91\x7f\xfb\x5f\x71\x4c\x9f\x93\xff\x3b\xd1\xde\xb7\x7f\x14\xdb\x22\x45\x03\x29\x6e\xe6\x3a\x46\x58\x5c\xa3\x29\x6a\x1c\x7b\xd9\x6f\x80\x1c\x25\x2d\xbf\x11\x27\x61\xa6\x3a\xd9\x29\xa9\xac\x21\xcb\x02\xdf\x9c\x30\x88\xd4\x4e\xe7\x84\x63\xbf\x23\x8e\x53\x84\xb9\xa0\x02\x7f\x53\x9c\x12\x17\x52\xae\xc2\xc4\xe1\xb3\x12\x66\x53\xcd\x8a\x39\x29\x71\x1d\xc7\xb5\xcd\xa9\x47\xc8\xcf\xd4\xd1\xd7\xfb\xa1\xd9\x35\x42\x7e\x47\x35\x76\x46\x66\xbd\x23\xa1\x49\x27\x98\x1a\xbe\x92\x8c\x36\xac\x11\x12\xdf\x81\xe5\x35\x1d\x30\xf0\xca\xaa\x11\x16\x13\xaf\x05\x1f\x65\x6c\x2c\xa4\x68\x50\x32\xa3\x66\x5c\x09\x9a\x63\x19\x68\x09\x30\xfc\xd6\x59\x9c\x1a\x41\xb1\x6f\x17\x88\xa9\xd2\x38\x4e\xc4\x6e\xc1\xfd\x01\xf4\x67\x08\xd3\xfd\xfe\xf7\x1e\xb1\xfd\x13\xc5\x01\x18\xd2\xdf\xd0\x04\xa0\x56\x06\xb0\x7f\x9d\xef\xf9\xb3\x1d\x8c\xbf\x6e\x9e\xdc\x67\x38\x30\xba\xdf\x27\x81\x70\x78\xb0\x7b\xfe\x24\xd7\x4c\x4c\x0f\xbb\x28\x9a\xed\x50\x79\xd4\x46\xb8\xa4\x83\x55\x01\x6e\xe3\x3c\x8c\x06\x9a\x70\x84\x08\x21\x9a\xef\xb6\x04\x65\xbf\xe7\x84\x74\xc8\x8c\xf5\x31\x3e\x3c\x8a\x87\x8a\x44\x49\x59\xdf\x00\xec\xc0\x49\xb1\x3e\x01\x76\x08\x45\xca\x7d\x54\xe5\xac\xb7\x3e\x59\x16\x3d\x76\xbf\x8f\x12\xe5\x48\x81\xa2\x46\x2e\x55\x6b\x3b\x2b\x4f\x40\xcf\xa5\xfe\x3f\xc4\x5a\xff\x9e\x7a\xb1\x44\x7f\xd4\xec\x1b\xbf\xd7\xce\x5b\xb3\x4a\x7b\x8d\x6a\xdf\x34\x1e\x30\x28\x72\xdf\x4f\x44\x3f\x45\x71\xcc\xdd\x6d\x1c\xc7\xbc\x59\xa6\xd5\x72\x93\xe4\xe8\xa1\x69\x02\xf1\xeb\xbf\x48\xc2\xf5\x07\x8a\xff\x93\x12\xa9\x8d\xb1\x14\x5b\xc6\x3f\xf8\xb8\x7b\x96\x98\xfd\x57\xc7\x78\xce\x21\x07\x45\xee\xc0\xfd\x57\x33\x3a\x07\x17\x22\x76\xf1\x9f\xea\x60\x33\x2c\x1e\xa2\x29\xfc\x1f\x3b\x31\x6b\x4a\xb1\x6e\x3c\x18\xc0\xfa\xe6\xef\x96\x82\x18\xbb\xa7\xe7\x74\x5c\xf8\xc5\x52\xc2\x66\x74\x8e\x4b\x12\x58\xa3\xf4\xa2\xa4\x49\x8a\xa6\xa9\xd7\x40\xb9\xdf\x43\x7f\xa5\xdf\x50\x4d\xca\x60\x7f\xb5\x5f\x2c\x93\x6a\xb6\x1c\xa4\x45\x94\x14\xb8\x46\x78\x4d\x8c\x39\x16\xaf\x88\x55\x05\x83\x4f\xb9\xd9\x9a\xab\x0b\xf3\xe7\xfa\xc2\x69\x62\x8d\x57\x68\xba\x9a\xae\xf1\x72\x48\x48\xb1\xdf\x8b\x7d\xb0\x96\xcb\xbc\x91\xf8\xf2\x8e\xdd\x60\xbf\x9f\xcd\xf1\x8e\x18\xb5\x82\x8e\x5b\xd9\xe0\x19\x40\x8f\x2c\x41\x4f\x92\x35\x73\x83\xea\x72\xb2\x73\x74\x52\x8e\x9d\x1c\xef\x1c\x95\x13\xb7\x7f\x8b\xe7\x20\x19\x73\xf9\x2f\xde\xb9\x1a\x16\xee\xfa\x84\x32\x9a\xec\xf0\x67\xea\x80\x2d\x5b\x63\xa8\xff\x81\x6d\x9c\xb2\xd8\x09\xed\xef\x6c\x37\x51\xc8\x30\xee\xae\x55\x85\x0b\x34\x75\xba\xe1\x95\xcb\x1b\xca\x5d\x29\xa5\xd9\x7c\xbc\x4d\x3f\x4a\xf8\x46\x94\x30\xa4\xd7\xa9\xfd\xa6\xb2\xeb\x54\xd8\x66\xf3\x40\xb3\x40\xf9\x58\x17\x5b\x18\x7a\xcb\xdc\x9c\x7a\x4c\x08\xd0\xc3\x33\x5c\xb6\xef\xf0\x9a\x4c\xce\xeb\xe7\xc6\x04\x5c\xeb\x3b\x7c\x49\xca\x59\x3d\xc7\x6b\x52\xcd\x96\xf3\x10\x74\xd0\xfa\x02\x10\xfb\x70\x31\x5b\xce\x49\x55\x25\x4b\xbc\xc6\x0c\x3f\x34\x08\x4d\xe1\xd1\x5a\x7f\x81\x14\x42\x28\x17\x65\xbd\xa3\x9c\xe4\xe3\xf7\x6f\xdf\x7e\x40\xd8\x99\x18\xab\x12\x0f\x7a\xd6\x09\x43\x21\xff\x45\x93\x48\xae\x12\xcd\x53\xab\xaf\x67\xb4\x8c\x54\x34\x27\xae\xa1\xd0\x96\xf2\xdb\xe0\xeb\xac\x3d\x61\x89\x49\xa4\x1d\x40\xcf\x97\x7a\xc2\x6b\x92\xcd\x96\x73\xbc\x22\xd5\x6c\xed\x27\x79\x91\xee\x4b\x10\x11\x52\x18\x06\x77\x8d\xd0\x83\xc2\xea\x5f\x4b\x9e\x73\x43\x68\xc7\x79\x77\xed\x07\x27\x6c\x64\x57\x3b\x92\xcf\xd6\x73\xc2\x44\x47\x81\x95\xdd\xc5\x71\x51\x25\x0c\xaf\x15\xf0\x27\x30\x09\x5c\xd4\xd8\xe0\x54\x77\x89\x37\xd6\x0f\x54\x14\x55\x22\xd7\x36\x44\x73\x56\x62\x10\x5b\xd9\xf7\x1d\x29\x69\xb2\xf2\xd5\xfc\x77\xe8\x01\x9a\xa7\x95\x38\xf8\xf8\x0e\x73\x84\x61\x84\xca\x11\x45\xf3\x1f\x4d\x53\xc6\x71\xe9\x2c\xc1\x77\x64\xb2\xdf\xf7\x7d\x20\x02\x80\x7f\xdd\x2f\x23\x9e\x5f\xac\x08\x97\x9d\xe5\x68\x2a\x99\x1f\xdb\xe8\xe9\xd9\xc5\x8a\xe4\xe6\xf5\x36\x8e\x93\x95\xd8\x61\xf0\x1b\x8c\x4d\x30\xb8\x15\xe6\x76\x8c\x2e\x97\x58\x38\xe7\xdc\x9c\x86\xdc\xc0\x6d\x69\x00\x45\xa3\x46\xe2\x9d\x28\x32\xe5\xe5\x62\xaa\x94\xb8\x24\xc5\xd8\xa2\xf1\x7b\x71\x93\x86\x69\xae\x09\xbb\xf8\x34\xbd\xc2\x19\x99\x9c\x67\xcf\x53\x88\x4d\x37\x07\x2b\x1b\x8d\x50\x9d\x50\xac\x1e\xcf\x32\x95\x90\xb5\xc2\xa9\x42\xce\xf2\x0c\x2f\xa6\xd1\x25\x61\x17\xbb\xe9\x16\xaf\xc9\xe4\x7c\x6d\xcf\xe9\x7a\x34\x42\xcb\x84\xe2\x72\xb6\x9e\x5b\xf4\x26\xeb\x88\x5e\x99\x00\xba\xbe\x04\x17\x01\x41\xc1\x66\x73\xf3\x9e\x96\x2d\x4d\x5c\x2d\xc4\xf5\x4c\xca\x20\xde\xb1\xc6\x5d\x87\x6e\x89\x25\x6d\x8f\x74\xad\x56\xa7\x72\xd7\x45\x30\xc0\xa4\x12\x4b\xb2\xae\x34\xcf\x2b\x8e\x9c\xcd\x7c\xe3\x71\xc1\x36\xa5\x4e\x52\x23\x05\xe4\x5e\xe3\x35\x59\x6a\xd3\x04\xa3\x25\x5e\x91\xe5\xb8\x9d\xb4\x66\x7d\xc1\xaa\x84\xe3\xb5\x33\xb0\xa9\x3d\xe5\x71\x9c\xd0\x64\xe5\x0d\xdb\x72\x92\xf5\x78\xf1\x89\x55\x9b\xa2\xae\xc4\x66\xd5\x7f\x87\x10\x11\xb4\x7e\x29\x75\xa0\x97\xce\x65\x06\x8c\x38\x4e\x5d\x31\xb8\x41\x48\x1d\x6e\x18\x56\xed\x74\xdc\x24\x15\x2e\xe1\x6f\x0a\x58\x9b\x03\xbb\x1d\x04\xf5\xaa\x03\xd4\xab\x16\xd4\x6b\x43\x52\xb1\x21\x76\xa4\x50\x44\x6c\x35\xbe\x7c\xfd\xea\xf2\x7a\xf1\xe6\xea\xc3\xef\xdf\xfe\x00\xbb\xea\xdc\x4c\x6a\x13\xc7\x75\x95\x6c\x90\x09\xe7\xfb\x83\x60\xa9\x36\x40\x84\x07\x3b\xb2\x05\x9c\x4a\xbc\x21\x5b\xa9\x9f\x6c\x6c\xc5\x8b\x90\xbb\xd8\x06\xe8\x16\xc5\x6b\xbc\xc1\xc3\x09\xc2\xe0\xda\x2d\x7e\xc0\xec\x33\xe7\x88\xe3\x21\x43\xce\xd2\xef\xe2\x78\x23\xcb\xee\xc4\xdc\xb5\xca\xbd\xd7\x21\x1d\xd3\xc6\x9f\x57\x1c\x27\x7f\xe8\xc5\x0b\xc6\x42\x30\x94\x78\xf2\x82\x31\xc5\x42\x3a\x2d\x04\x77\x96\xcf\x8a\x79\x47\xc6\x48\x1d\xe3\x74\x69\x92\x1f\x08\x2e\x9e\x49\xa7\xfc\x02\x21\x71\xf3\x31\xac\x03\x88\xd0\x34\xd1\xce\xfc\xb8\x24\x74\x56\xcc\x11\xc2\x0f\x62\xe9\xa6\xa9\xf2\x31\x2f\x9b\x46\x05\xb3\x54\xb8\xae\x70\x56\xe1\x65\x85\xd7\x55\x2b\xa6\x06\xaf\xaa\xfe\x44\xc8\xe8\x61\x2d\x13\xf0\x48\x7e\x5f\xa7\x57\xe9\x42\x6a\xfa\xbc\x0d\x45\x56\x38\x73\x2f\x42\x63\x36\xea\xcb\x17\x81\x99\x23\x0e\x39\x7a\x13\x7b\xbb\x49\x54\x1c\x4b\x5f\x44\x41\x47\x10\x06\x05\xf5\x7e\xdf\xe7\xa8\x9f\x6b\x80\xf8\xff\x4a\x18\x6a\x9c\xc8\x36\x08\xfb\x12\xb3\x53\xe9\x16\x37\x95\x18\x6c\x65\xb2\x3b\xbf\xb0\x99\x0d\xfd\x08\x2e\x75\x26\xf5\x85\xd0\xcd\xf8\x8b\x1e\x84\x0c\x64\xf1\x11\xa4\x9d\xe1\x31\x28\x40\xa4\xf4\x84\x06\x02\x30\x8c\xec\xa8\x33\x00\x3b\xe0\x68\xdb\x6e\xae\xad\x3b\x0d\xdf\xe6\xc7\x02\xe1\x5c\x50\x53\x0f\x4f\x19\xd2\x59\xf8\x59\xbb\x7c\x2a\x43\x9d\xcf\xbf\xdf\xe7\x0e\x74\x22\xce\x9b\xc1\x01\xc5\xa9\x4c\x9c\x1c\x02\x9d\xfc\xb5\x4b\xc1\xd6\x09\xa4\x5b\xd1\x26\x2e\xe3\xd0\x60\x47\x6a\x00\x52\x60\xb9\xdc\xef\xe7\x94\x19\xb4\x77\xb7\x5b\x4e\xad\xea\x8c\xcd\x25\xed\x74\x1e\xea\x24\x60\xba\x88\x05\xa1\x75\x1f\x3b\x7f\x1b\x49\x05\xf2\x6c\x48\x93\x5e\x83\x2b\x69\x8d\x0c\xe7\x07\x68\x47\x49\x9d\x21\x0c\x97\xed\x4c\x54\x9e\x43\x8a\x31\x55\xff\x5d\xca\x2b\x96\x66\x21\xc8\x6c\xa7\x86\xd2\xc1\x56\x01\xe8\xc4\x90\x7f\xba\xda\x1c\xd4\xc2\x3a\xb3\x75\xa2\x6e\x4d\x83\xad\x78\xd2\xbe\x87\x3b\xe0\x56\x5a\x2f\x04\xee\xe4\xad\x04\x86\x67\xf2\x21\xd0\x1a\x84\x2b\x47\x0a\x56\x6e\xc3\x4c\xd0\x53\x79\xb5\xb2\x75\xe2\x84\xae\x95\xc5\x96\xfa\xe0\x46\xfa\x54\x6b\x54\x7c\x23\xd9\x0c\xcf\x1a\x65\xa2\x72\x70\x6f\x5b\xb8\x19\xce\x79\xd0\x89\x4a\x0c\x3f\x60\x42\x2b\xf5\xa9\x0f\x6e\x67\xb9\xcb\xd4\x42\x63\xde\xdd\xde\xb9\xb3\xbd\xb9\x51\x68\x82\x26\x33\x9f\x31\x77\x7b\xb3\xb9\x63\x7a\xd0\x9d\xe6\xb8\x12\x63\x10\x14\x35\x60\x33\x3e\xf0\x15\x24\xa4\x89\xf9\x0a\xc7\x7f\x1d\xff\xdb\xb8\x87\xc6\xe2\x09\x78\x02\x8f\x5b\x44\xc1\x0c\x30\x17\x66\x00\x98\xa9\x84\x89\x5b\x4b\x6a\x23\xf5\xb7\x15\xcb\xad\x4e\x49\x10\xb7\xaa\xf7\xd3\x9e\xf0\xc6\x7e\x1e\xa3\x26\xed\x2c\x8f\x51\x62\x9d\x40\x2f\x28\x6a\x47\xbd\x02\xe1\xd7\xa1\xcd\x71\xac\x4d\x5d\xfb\xfd\x04\x1b\x17\x79\x41\x60\xbe\x9b\xa0\x07\x9f\x4c\xb5\x33\x5c\xb9\x79\x9e\xa8\x20\x54\xea\xc0\x30\x74\x01\x44\x8c\x4d\xe1\x1f\xd1\xc4\xaa\x4a\x2c\x5c\xb1\x8d\xcd\x01\x6f\x72\x89\x90\xb8\x12\xf7\xb4\xeb\x6e\xe6\x40\x86\xb6\xb8\x2d\x29\xec\xb5\xaf\xf9\x41\x1d\xcc\xa1\xba\xd3\x87\xb8\xc1\x65\xd5\x4d\x17\x68\x19\x18\x42\xf1\xce\x61\x05\x1c\xae\x7f\x5b\x7d\x5d\xbf\x91\xa1\xeb\x38\x02\xde\x21\x8c\xe4\x17\xf9\x98\x69\x77\x59\xca\x35\x00\x41\x01\x2f\xe4\x8d\xae\x1e\xa5\x3d\x04\xb4\x92\xe0\x6d\x0f\x6e\x2b\x6c\xbf\xef\x9e\x9f\xa2\x69\xe6\xc8\x0d\xd3\x4d\x11\x4e\x1b\xdb\x8c\xab\xd6\xbe\x83\xcd\x42\x67\x93\xb9\xbe\xfa\x00\xb6\x16\xa2\xe0\x71\xee\x38\xa1\xd1\xd5\x0f\x29\x04\x1c\x63\x7e\xc1\x03\x33\x41\x1a\xcd\xae\xa2\x1c\x17\xd2\xf5\xbf\x32\x30\xbc\x2d\xcc\xce\x76\xa8\x61\x30\xbd\x15\xf3\xb5\xd9\x6d\xcc\x9a\xc7\x5c\xce\xa8\xf6\xb2\xa6\x4d\xc7\xdf\xa8\xd0\x9a\xde\x00\xa4\x16\xbc\x79\x81\x9a\xa6\xf1\x91\x3e\xb3\x0a\x77\x98\xe7\x76\x89\x60\x9a\x07\xfa\xe9\x44\x9a\x76\x11\x3e\x84\x2b\xba\xac\x7a\xd3\x32\x01\xff\x76\x5c\x0e\xff\x60\xbe\xa5\xaf\x9c\xca\x9f\x1a\xec\xe5\x00\x8f\x06\x74\xa2\x75\xd9\x53\x30\x62\x18\xc5\xa2\x44\xb3\x6d\x37\x20\xc6\x25\x2a\x93\x0a\x8b\xf2\x04\xca\xbd\xfd\xf3\x8f\x57\xef\x09\x1d\xbf\xbe\xfa\xf7\xcb\x17\x3f\x2f\xe4\x4f\x27\xcc\x47\x21\x75\x05\x60\xcf\xdc\x1a\x80\x77\xe6\x35\xc1\x95\x0f\x14\xd4\x36\xb1\xa3\xb6\xb0\x2c\x95\xf7\x7e\x11\x5e\xd4\x15\xcb\x6f\x8f\xfb\x26\xba\x70\xc6\x6e\x9e\xd1\xcf\xd5\x33\x21\x90\xf3\x22\xcb\x28\x7f\xb4\x78\x56\x2c\x53\xb1\x3c\xcf\xd2\x1d\x3b\xbe\x70\x5e\xe4\x74\xa1\x7f\x1d\x5f\x6d\x93\x96\x9b\x2f\xa9\xc6\xca\xaa\xe0\xf7\x5f\x50\x33\xad\xab\xe2\xf8\x6a\xe5\x7d\x59\xd1\xed\xb3\x5b\x9a\x53\x9e\x56\x74\xf1\x84\x65\x54\x55\x6d\x8d\xc5\xba\x38\xba\xd6\xaa\x0c\xe7\x3c\x0b\x14\x15\x8f\x8e\x1f\x0e\x94\x3e\xb6\xf0\x2f\x35\xe5\xf7\x8b\x5d\xca\xd3\xed\xe3\xbb\xac\xa4\xfc\x8e\x2d\xa9\x79\xf8\xb4\x0a\x4f\x58\x50\xc0\x8f\x3e\x32\x19\x1a\xde\xe1\xed\xaf\x25\x3d\xbd\x15\x5e\x9b\x5d\x74\x14\x3c\x34\xd7\x6e\x0f\x07\x21\xa7\x7f\x2c\x72\xfa\xc4\x86\xf3\xa3\x1a\xfe\x7d\x5a\x6e\x9e\xd8\x30\x3b\xae\x61\x79\x16\x9f\xd8\x76\x71\x54\xdb\x97\x75\x55\x3c\xb1\xe1\xf4\xa8\x86\xf5\x89\x7e\xe1\x1c\xe8\xa3\x9a\x2f\xbf\xb0\xf9\x97\xe9\x52\xac\xd2\xd1\xbd\xf4\xb6\x70\xb0\x5f\x4b\x6d\x5e\x16\xc7\xce\xa8\x3e\x6a\x46\xef\xe1\x90\xfe\x70\xfd\xfa\xc8\x56\xb3\x27\xb4\x7a\x64\x93\xcb\xe3\x9b\x3c\xb2\xc5\xf5\x51\x2d\xfe\x51\x90\xc1\x77\x8a\x0a\x1e\xd5\xee\xea\xe8\x91\xb2\xfc\xf6\x5a\xd2\xc1\x23\x9b\xde\x3c\x61\x5d\x9f\xd6\xf2\xee\xa8\x96\xbf\xaf\x97\x1f\x55\x8a\xc5\x23\xdb\xdd\x3a\xed\x3e\xca\xdc\x84\xf8\x95\xc3\x9c\x0e\xe4\x0f\xb5\x6f\x6c\x45\x68\xcb\xb9\x7e\x41\x74\x7d\xf4\x96\x91\xcc\x6c\xe0\x7a\xf9\xf5\x1c\xac\x5a\x06\x1b\x43\xae\x1e\x28\x2d\x5f\xf2\x10\x36\xce\x4d\x67\xd1\x2f\xce\x0e\x9c\x63\xe7\x17\xa0\xc7\xe0\xc5\x2f\xbb\x1f\x68\x46\x6f\xd3\x8a\x9a\x07\x12\x17\x72\xe5\x66\x11\xe1\x36\xe9\xbc\x85\x43\x11\xf2\x0a\x66\x1a\x90\x94\x4f\xb9\x82\xce\x9b\xe0\x1c\x7c\xb3\xe9\xd8\x69\x1d\x25\x4c\x86\x69\xdc\xd2\x0a\x01\xc6\x01\x6a\x70\xc5\xd3\xbc\x64\xa2\x8f\x0f\x05\xec\xbb\x69\x40\xbf\x43\x89\xad\x07\xd2\x4e\x24\x73\xc8\x46\x42\xb4\x85\x04\x21\x7e\x1b\xfb\xbd\xff\x10\xb3\xae\x88\x5c\x38\x22\x32\xd8\xcc\x27\xe7\xe9\x73\x06\x50\x91\xc5\x2c\x75\x45\xe4\x74\x6e\x01\xee\x75\x6c\x0b\xd8\x19\x77\x9c\xae\xd9\x67\xe8\x51\x88\xeb\x97\xfc\x56\x0d\xaf\x10\x33\x53\x10\x42\x5f\x3a\x29\xb7\xba\x98\x8f\xfa\xfd\x67\x56\x6d\xfe\x11\xd3\x69\x74\x84\x80\xd9\x78\x03\xbb\x27\xd9\x51\x27\xd3\x17\x0d\x02\xe7\x32\x20\xfb\x7d\xed\x73\xa3\x74\x06\x0f\xd2\x62\x30\x0d\x48\x83\x10\xbe\xbb\xdd\xc9\x0c\x70\x30\x5e\xed\x1b\xeb\x3f\x2d\xad\xff\xd4\x09\x57\x16\x08\xb5\x9e\xdc\x89\x6c\x69\x70\xab\xda\xf4\xa1\x69\x9c\xa5\xeb\x97\xa1\x8f\x11\x40\x9e\x92\xf1\xf8\x86\x17\x9f\x4a\xca\x4f\x83\x79\x8b\xfb\x49\x62\x27\x93\x70\x90\x06\xda\x1c\xc7\x5f\x9e\x50\x39\x38\x61\x51\xfb\x30\xbf\xfe\x55\x94\x03\x8a\x0d\x85\xcc\xb6\x6b\xf5\x28\x2d\x37\xf0\x7b\x15\xde\x45\x59\x7f\xb0\x93\x74\x56\x54\xce\x75\x15\x39\x18\xf4\x84\x5a\xfb\x8a\x44\xe2\x1b\x47\xb8\x3a\x1c\x0d\x55\x84\xa2\xa1\x8a\x8e\x7d\xc1\xcb\xbc\xce\x8b\xa2\xfa\xe9\xfd\x6b\x5c\x85\xb4\x20\x63\xbd\xe4\x40\x7d\xea\x92\xf2\xcb\x5b\x9a\x57\x38\x27\x74\xac\x04\x66\xcc\x08\x1d\xaf\x8a\x25\x8c\xff\x4d\xb1\xa2\xb8\x20\x74\x2c\x83\xc1\x70\x2a\x68\x96\xea\xa0\x24\x91\x90\xe8\x23\x9c\x91\xe1\x99\x8e\x0c\xbd\xa5\xd5\xcb\x3a\xcb\xc4\x92\x22\x15\x7e\x0a\xcf\xcb\x7a\x07\x5b\x58\x7d\x02\x31\x47\x9d\x71\x6e\x43\xd6\x49\x8a\x2b\x34\x58\x12\x42\x36\x17\x25\x89\xd4\x48\xa2\x69\xf4\xec\x5f\x22\x42\xc8\x52\xa3\x78\x4e\xf0\xef\xd0\x45\x92\x6b\x32\x79\x5d\xa5\x15\x4d\x20\x7d\xd8\x74\xd3\xe0\x28\xc2\x1b\x84\x9d\xfa\x68\x9a\x64\x64\x38\x91\xda\x34\x55\x47\x8d\x0c\x6f\x8c\xb1\xbe\x3d\xc2\xb4\xdc\xc8\x9b\x51\x26\x54\xd5\x3e\x3e\x2b\x3b\xc8\xdd\x7e\x1f\x3d\x83\x81\xc5\x71\xf4\xec\x5f\xe0\xcf\x1d\x0c\x3c\x2d\x37\xd1\x81\x4e\x77\x08\x90\x43\x33\x6b\x9b\xd1\xcc\x7c\x93\x3c\xe8\x4f\x33\x85\xcf\x68\x3e\x94\x9a\x8c\x7c\xaa\xbf\x91\xf9\x72\xf2\xb1\xfd\x90\xea\xe3\x4c\x29\x76\x3f\xa1\x2c\xe5\x7d\x54\xf9\x41\xe5\x0b\xf9\x77\x83\x06\x12\x3d\x45\x02\x76\x81\xaa\x54\x5f\x5a\xcb\x34\x5f\xd2\x4c\xb3\x8c\x55\xbd\x8b\xc0\x25\xa0\x52\x5b\x00\x59\xad\x17\x6b\x67\x40\xd3\x89\xce\x22\x33\xbf\x68\x54\x01\xdf\xa0\x7a\xe0\x38\x52\xa3\x8e\x94\xea\xd3\xef\xba\xc8\x97\x9c\x56\xf4\x95\x77\x80\x22\x15\x62\xff\x89\x65\x99\xc2\xa5\xea\x39\x0f\xe1\xfa\x03\xb8\x02\x56\xb2\x66\x82\x20\x42\xaf\x18\x2b\x28\x57\x6b\xb4\x58\x3a\x1a\xd3\xa0\x49\xea\x40\x17\x5f\xc9\x40\x05\x89\x0f\x2b\x7e\xff\x2a\xbf\x2b\x3e\x52\xb1\x8b\x28\xe4\x58\x35\x63\x5c\x7b\x90\x70\x98\x99\x83\xa8\x0f\xa1\x0e\x21\x57\xe4\x0e\x49\x84\x01\xfd\x08\x44\x17\x79\x56\x1d\x17\x17\xed\x2c\x29\x37\x77\xe1\x1f\x40\x4e\x92\xdc\x3e\x3b\x33\x98\x8d\xff\x12\x21\x34\x2e\x37\x6c\x5d\x25\x08\xcb\x13\xc2\x20\x5c\xe0\xb2\x4a\x4c\x92\xda\x33\x04\xc6\x32\x6e\xab\x23\xcc\x46\x84\x8f\x52\x03\x86\x1e\xc7\x09\x1b\x91\xe8\x5f\xa2\x51\xae\xbc\xeb\x45\xcb\x68\xca\x46\x24\x1d\x15\xae\x93\xef\xca\x43\xaa\xc4\x39\x91\x8b\xa1\xdb\xd6\x46\x26\x33\x9d\x68\x28\x8d\x72\xd1\x33\xf8\x6b\x36\x99\x83\x85\x2e\x7a\x16\x8d\x72\x84\xb9\xea\x14\x61\xde\xd8\xdb\x20\xc3\x99\x61\xbf\xf5\xf1\x8a\x9e\x45\x98\xe5\xac\x02\x0a\x34\x5d\x26\x91\xf9\x01\x88\x6c\x50\x66\x99\x44\xf2\xaf\x08\x20\x4b\xd5\xa3\x52\x3f\x52\xa4\x41\x3d\xb6\xbf\x22\x84\x8b\x1c\xc0\x89\xf5\x3b\xe7\x67\x84\xf0\xba\xe0\xdb\x54\xb7\x66\x7e\x44\x08\x9b\xf3\xc5\xbb\xc4\x83\x1b\xca\xa1\xce\x3d\x1f\x7f\x62\xf9\xaa\xf8\xe4\x50\x12\xee\x90\x91\xce\x79\x97\xd9\x87\x9e\xc4\xc5\xb4\xf4\xb6\x4f\xe1\x62\xfa\xb9\x93\x0e\x0f\xc2\xeb\x3c\x2b\x8a\xdd\xd7\xe1\x35\xbe\x09\x23\x9a\xf6\x63\x50\xfc\x3a\x16\x02\x6e\x9b\x1e\x16\xc2\x44\xfb\xa6\xa1\x68\xdf\x14\x2c\x65\x2e\xc1\x04\x73\xbd\x43\x75\xed\x77\x93\xde\x38\xfa\xf7\x7e\x2f\xf7\x8d\xd9\x62\x3a\x30\x4c\x0c\x46\xa6\x07\xf8\x7d\x9a\xaf\x32\x03\x7b\xd6\xe0\x54\x13\x9e\xae\xd1\x38\x99\x48\x58\x29\x45\x96\xdc\x7b\x0f\xa9\x8a\x3f\xbd\x7f\xdd\x43\xd8\x55\xbd\x04\x59\x4a\x82\x2b\xa2\xe7\x28\x4f\x78\x25\x4f\x78\x25\x4e\x38\xa6\xe2\x2f\x79\xc4\xa9\xcc\x12\x0c\xc0\x66\x5e\x0f\xda\x3e\xab\x87\x31\x16\xf3\x22\x14\x77\xd6\x27\x2d\xab\x6b\xaa\x2f\x2d\xd1\x92\x3d\xc1\x07\x5a\xd3\x88\xb3\x72\x0c\x47\xb4\xea\x9c\xfd\x6e\xb3\x0b\x89\x36\x0d\x59\xdd\xb5\x1b\x6c\xd2\xff\x41\xe0\x76\xbe\x61\xf9\x4a\x75\x97\xb4\xd6\xb5\x32\xeb\xfa\xd3\xfb\xd7\x89\x72\xdb\xb1\x43\x1a\x1a\xd6\xa0\x77\xcc\xd2\xc1\x14\x80\x21\x05\xad\x50\x5b\x25\x5d\xad\xfc\x21\x46\x76\x6c\x51\xdf\x68\x61\xf6\x86\xbc\x05\x2c\x98\xb0\x84\xa2\x50\x0f\x0b\x70\x60\x85\x44\xad\xd0\x9b\x6e\xf5\xce\xb0\xe2\x58\x4d\x2a\xd4\xf0\x91\xf3\xca\x9b\x24\x37\xac\x86\x25\x19\xe9\x13\xc9\x6b\xc7\xbe\xf5\x8d\x28\xec\x97\x13\xd4\x6f\x42\x4e\x0b\x48\x8a\x64\x3c\xa3\xad\x03\xca\x67\xf5\xdf\x29\xfc\xef\x7f\x8a\xff\xdd\xeb\x9f\xfa\xbf\xc8\x9c\xc0\x67\xb3\xcf\xf7\xf3\x67\xb7\xb8\xeb\xea\x6b\x2c\xc2\xe4\xec\xdf\xfe\xc7\x9b\xb4\xda\x8c\x79\x9a\xaf\x8a\x6d\x82\xf6\x13\x9c\x44\x9f\x05\x5b\x43\x2f\xaa\xe9\xbf\xc6\xd5\xfe\xff\x20\x1b\xa1\x77\xf6\x6f\x26\x3b\x5b\xf9\xcd\x48\xbe\x92\x6c\x70\xa5\xc5\x30\xa0\x6c\x8f\xdc\x01\x65\xe8\x0e\x28\x0f\x92\x65\xd6\x4f\x96\xcb\xce\xe5\xa1\x62\x5e\xeb\x1d\xe5\xe1\xe9\x0c\x24\xd9\xd6\x02\xc8\x18\xd4\x93\xd7\x34\xa3\xcb\xaa\xe0\x49\x74\x93\x96\x82\x6f\xaa\x48\x14\xe9\x44\x5d\xc0\x9e\x6f\xd2\xf2\xb2\xaa\x38\xbb\xa9\x2b\x9a\x44\x1b\x4e\xd7\x11\x92\x96\x7b\x31\xba\xce\xab\x2e\x3d\x15\x0d\x03\x61\xaa\x02\xb4\xd6\xbf\xe1\x1e\xbd\xe0\x76\xc5\xae\x14\x0c\x5e\xfb\x7a\x93\xcb\x01\xbc\x5f\xcf\x45\xa5\x3e\x9a\x69\x59\xfd\x3e\x6f\x8f\xc8\x7c\x5c\x8a\x8c\xc3\x27\x74\x89\x55\x64\xb9\x21\x87\x89\x47\xa8\xd1\x00\x9c\xe9\x84\x18\x0c\x1a\x5a\x35\x5e\x4e\xef\x58\x51\x97\x62\x8f\x78\xc5\xa7\x2a\x76\xdc\x11\xa1\xe5\x67\x3d\x78\xdb\x1a\x96\xb2\xf2\xd5\x0c\x4a\x6d\xa6\x56\x1a\x14\x09\x62\x20\x79\xba\xa5\x83\x8a\x54\xf6\xbc\xfd\xe5\xd9\x6f\x9e\xe1\x08\xf4\x9e\xbc\xfb\xd4\x20\x93\xe8\x37\x42\x4e\x7a\x4f\x6f\xaf\x3e\xef\x92\xe8\xff\x45\x23\x3e\x8a\x92\x0b\xf2\x6c\xff\x1b\x14\x21\x51\xbe\xaf\x5c\xd5\x57\xee\xd9\x5f\x9e\xfd\xe5\xd9\xb3\x5b\x21\x96\xd8\x0c\x77\x23\x92\xd0\x71\x09\x69\x8b\xf7\xfb\x28\x42\x23\x9f\xb1\x10\x8b\x12\x60\x10\x9c\xbb\x52\x7d\x32\xf9\x99\x06\xb4\xfd\x99\x28\xc2\xee\xa7\xa1\x2a\x1b\xf8\xae\x2e\x37\x72\xe1\xc1\x3d\xac\x8f\x75\xf8\xd5\xfd\x78\xdf\x58\x76\x65\xba\x0e\xf4\x24\x15\x29\x14\xd7\x35\x5b\x4d\xd3\x04\x35\x03\xaf\x6f\x3b\x6a\x85\xa3\x47\xcd\xd1\xe8\xdb\x6a\xce\xe4\xbe\xb0\x53\x6f\x0a\x4f\xea\xb7\x8f\x73\xb2\xab\x3a\x78\x9c\x89\x6a\x1f\x7a\x97\x63\x2e\xf6\x7b\xc8\x34\x27\xd5\xfb\xd0\xaf\x60\x91\xbc\x61\x21\x14\xc7\x34\xb1\x05\x50\xd3\xcf\x14\xe9\xbe\xa2\x70\xdf\x30\xa9\x30\x43\xe4\x6c\x94\xf0\xb1\x74\xc5\x5f\x7a\x91\x3c\xe1\x5c\xa2\xa9\x94\xe3\x39\x30\xd2\xf2\x6f\xc5\x54\x87\xcb\x63\x3e\xaa\x04\x5f\x56\x7e\x11\x5f\x16\x7e\xd3\xad\xde\x5a\x9b\xc3\x5c\xd9\xe3\x0b\xdb\xc3\x91\x95\x4f\xe3\xc8\x5a\xfe\x4d\xdf\x88\x1d\x0b\xfa\xce\x7d\x0b\xeb\xa3\x22\xc9\xdf\x88\x93\x91\xaa\xe3\x47\x18\x97\x1e\xa8\xaa\xae\xfe\xdb\xdd\xfb\x0a\x8c\xaa\xff\x2a\x83\x24\xb3\xfe\x79\xb1\x3c\x5f\xe8\x64\xd0\x63\x6f\x1b\x85\xe3\xd4\x3e\x9f\xed\x8b\x5e\x0c\x40\x0a\x78\xec\xb0\x80\x27\x21\xa8\x5e\xa4\x59\x76\x93\x2e\x3f\x12\x80\x74\xda\xc0\xae\x3d\xb6\x0b\x1c\x68\x27\x91\x3d\x1f\x4b\x4b\x3c\xe2\x21\x41\x62\x42\xe7\x1e\x4e\x7d\xcf\x41\x62\x80\x56\x25\x55\x68\x40\xef\xa3\x08\x3b\xaa\xb4\xa7\x6a\x96\x40\xe2\x70\xce\xd7\x21\x63\xa2\x0d\x17\x77\xcd\x20\x86\x45\xe9\x53\x16\x8c\x20\x5b\x95\x63\xef\x71\x33\x85\x48\x8e\xc1\x89\xe5\x76\xde\xda\x50\x2d\x50\x1d\x5c\xc8\x7f\x8c\xfe\x14\x4d\xa3\xc8\x89\x95\x76\xc7\x54\x70\x76\xcb\x4c\xea\x8e\x6a\xbf\x4f\x4c\xc4\xcf\xb2\xc8\x46\xd1\xb3\x67\xd1\x88\x8e\x37\x45\x59\x89\x91\x63\x3a\x16\x93\x57\x2a\x8d\xa9\x78\x25\x7e\x83\x5e\xe3\xcb\xac\x63\x60\x06\xab\xe4\xdf\xa0\x14\x26\xdc\xda\xc8\x48\x2e\xff\xd6\xc6\x9d\x90\x4b\xb1\x58\xe1\x91\x58\xa9\x51\x0e\x5b\x4c\x3a\xe4\xc2\xac\x08\x83\x34\xcc\x6d\x0b\x4b\xd8\xa5\xbc\x8a\xe3\xa8\xc8\x1d\x59\x9a\xc1\x33\x1b\x77\x4d\xf7\x7b\xfa\xdd\xff\x86\x1e\x5a\x76\xa5\x2e\x02\x6b\x02\xd1\x8a\x4e\x76\x97\xcb\x7c\xc5\x45\x43\xbf\x1b\x47\x68\xbf\xef\x7b\xfb\x3f\xc7\x93\x48\x5c\xde\xed\xf7\x6f\x8a\x1b\x96\xd1\x93\xeb\x74\x9d\x72\x16\x41\x01\xe2\x15\x78\xb1\xe1\xc5\x96\x86\xde\xfc\x19\xae\xa8\xf2\xe4\xdd\x06\x4c\x26\x1d\x1b\xd0\xf7\x45\x91\xd1\x34\x4f\xc4\xf4\x0d\xaf\x05\x73\x87\x99\x3a\xa6\xa4\xb6\x7b\xb2\x39\x8e\x62\x3f\x8d\x2a\xd4\x1c\x75\x9c\x3a\xce\x95\x4f\xb9\xb0\x7a\xae\x25\xf3\x53\xc6\x3a\x3d\x5b\x2a\xf0\x48\xfb\xa2\xd4\x0e\x47\x5f\xea\x64\xa3\x51\x05\xc2\xa7\xbc\x74\x77\x92\x62\x57\x2e\xe8\x94\xea\x03\x68\x30\x85\x8c\x69\xe0\x4b\x4e\x4b\xe0\xa2\xac\xff\x01\xa8\x98\x6d\x39\xdc\x61\x6d\x5d\xd4\x46\x51\x2c\xdc\xb7\x06\xf5\x82\x0d\x30\x2e\xf2\x24\x82\x3f\xdd\xbc\xb2\x1e\x65\xad\xc6\x15\x67\xb7\xb7\x82\xa9\xea\x14\x94\xb1\x8a\xe1\x06\x9d\x24\xb4\x07\xdb\x73\xca\x41\x73\x0d\xce\x3d\x17\x9f\x50\x58\xd8\x57\x08\x8c\x01\x13\x1b\xa7\x25\xdd\xde\x64\x14\xd8\x76\x00\x4f\x45\x3e\x5e\xb3\x9a\xd4\x62\x55\xfc\xf4\xfe\xf5\x07\x33\xaa\x24\x72\x47\x18\x61\xa8\x69\xfd\xf8\xd3\x31\xfd\x5c\xf1\x74\x59\x81\x31\xe5\x92\xdf\x96\x48\x62\x6d\xe5\x63\xae\x9d\x70\x20\x30\x65\x5b\xac\x68\x56\xe2\x92\xe4\x63\xc7\x7b\x0b\xd7\xa4\xdd\xbb\xd3\xb5\x38\x0a\x90\x8b\x74\x60\x1c\x35\x17\x1f\x29\xdd\xfd\x20\xf7\xa7\xf5\x4a\x04\xc8\xe5\x52\x08\x2b\xb5\x58\x53\xc7\xcd\x28\x10\xe8\x06\x1d\xba\x93\x0a\x6f\x1e\x15\xc3\x64\x6c\x57\x11\x7c\xae\x9a\x67\x2f\x0b\x1e\x06\xef\x7b\xd4\x22\xfa\xdd\xd9\x05\x3f\x3d\x9b\x42\xd4\xce\x99\x6b\x19\x3d\x3d\x0b\xdb\x46\x2b\x6f\x75\x90\x71\x89\xd5\x23\xc6\x33\xea\x26\x79\x6e\x20\x61\xe7\xe5\xb2\x62\x77\xf4\x5b\xec\xa5\x6f\xf6\xd5\xe5\xbf\x6f\xd8\x92\x17\x19\xbb\x81\x60\xae\xda\xcc\xe4\x55\x5e\xd1\xbc\x92\xce\x0a\xe6\x52\x91\xce\x2b\x6e\xec\x60\x89\x4c\x5a\x03\x1d\xb5\x99\xe9\x10\x5b\xd3\xd1\x8e\xd3\x5d\xca\xa9\xe3\xcf\x6a\x37\x19\x86\x89\x95\x9b\x34\xcb\x8a\x4f\x57\xbf\xd4\x69\x86\x92\x12\xd7\x52\x29\xe1\x0e\x5f\x2e\x34\xa7\xcb\xe2\x36\x67\x7f\x0b\x49\xfd\xa5\x06\x34\x55\x5c\xa0\x1f\xd9\xdb\x33\x6d\xdb\x22\x24\xd5\x74\x7a\xb8\xcc\x57\xaf\x8b\x74\xf5\xf5\x3b\x52\x0d\x43\x7f\xe0\x21\x60\x60\x09\xed\x25\x50\x83\x9f\x07\x30\xb7\x7c\x0c\xa2\x27\x5d\xe1\x87\x65\xcd\x39\xcd\x2b\xe3\x68\x37\x05\xa5\xaa\x46\x46\x42\x49\xa4\xfb\x6e\x17\x8c\x10\x56\x8f\x04\x77\xfc\x48\xad\x96\xe5\xb7\xaf\xb4\x11\x4a\x91\x61\xbb\xfb\x8a\x6a\x57\x0c\x33\x0a\xe9\xda\x78\xcc\xe8\x23\x74\x24\x23\xdf\x8d\x03\x79\x94\xf5\xe8\xe5\x27\x76\x45\x76\xbf\x66\x99\xeb\x7c\xa6\x59\x8c\xbf\xa7\x4d\xe2\x1b\x5e\xfe\x2c\x74\xf9\x03\x98\x20\xac\x7a\x90\x13\x97\x3b\x1e\xbe\x90\x2e\xa7\xa4\xbe\xf0\x75\xda\x4e\x5b\xe6\xd4\xf7\x6f\x1c\x89\x59\x65\x58\x90\x38\x66\xdd\x6b\x00\x33\xd1\x51\x2e\xc4\xcb\x8c\xfd\xcd\xa5\x25\x1d\xb8\x55\xaf\xa3\x00\xed\xd1\xb9\x34\x98\xa1\xec\xbe\xbc\xea\x22\x68\x39\x6d\x41\x20\x7b\xfb\x54\x6b\xf4\xa0\x07\x13\x83\xca\xb5\xa7\x93\x46\xd6\x2a\xb0\x06\x3a\x0d\x8d\x5e\x65\x59\x40\xce\x68\xd4\x57\x65\xee\x3d\x53\xe1\xd9\x83\xeb\x7f\x5d\x34\x73\x84\x1a\x31\x07\x4d\xb0\x5f\x16\xbc\xfd\xe9\xda\x19\xff\xbd\x85\xe9\xa3\x4e\x5c\x29\x03\x78\x29\xb3\x6d\xe0\x94\x14\xb3\xc2\x26\x17\xd3\xaf\x71\xd9\x92\x18\x9c\xc4\x51\x1a\x03\xc2\xba\xde\xf0\x11\x31\xd8\xb9\xf6\x1a\x14\x4f\x54\x73\x80\x43\x02\x41\xd8\xe7\x36\x44\x9c\xe3\xc2\x49\x51\xa0\x2e\x9a\x12\xd4\x84\x29\x72\xae\x5d\x75\x59\x71\x48\x5e\x3f\x64\x92\xae\xb2\x10\x5d\x2d\x70\x61\x94\x06\xd2\x69\x5a\x7a\xdb\x80\xaa\xc3\x21\x45\x6a\x95\x9c\x22\x96\x78\x1d\xac\xe1\x96\x69\xd1\x3b\x4d\xb1\x0f\x54\x0b\x10\x6c\x21\x9b\x3d\x52\x4b\x14\x39\x9e\x4e\xba\xe1\x6c\x47\xea\x3b\xbe\x96\xf3\xb4\xcb\x1d\x59\xe0\x03\x75\x62\x61\x44\xc0\x18\xbd\x49\x77\x87\x50\x9d\x37\x69\xd9\x4b\x9f\xa0\x11\x13\x24\x5f\x09\x36\xa2\xdc\x1c\x02\x64\x96\x15\x64\x96\xd5\x10\xc6\xc2\x9b\x74\x87\x9d\x82\x32\xb5\x52\x8e\x54\x9e\x99\x44\x52\x12\x0d\x7f\xdb\xe9\x48\xf0\x54\xd2\xf4\xe0\x61\x6f\xe8\x90\xdc\xee\x08\x8c\x18\x26\x11\x1d\x2e\x72\x99\xb5\x1b\x4d\xb9\xc1\x43\x7e\x9a\xff\x77\x4f\x38\xe8\x37\xff\xee\xed\x95\xb0\xa7\x58\x79\x6e\xda\x11\x4d\xa3\x11\x2c\xe3\x53\xe6\x03\x81\xaa\xbd\x81\x00\x81\x8b\xbc\x73\x6f\x7f\x93\x2d\x9e\x93\xc9\xc0\x57\xc4\xf5\xe2\x43\xd2\xa6\x75\xc9\x77\xd1\x9c\xac\x6e\x2a\x8e\x13\x4a\xa4\x23\x0c\xec\x19\xfa\x79\x97\xb1\x25\xab\x24\x06\xfa\xf0\x4c\xc1\xe3\xa4\x82\x1a\xa8\xcc\x26\x63\x9a\xa7\x37\x19\x15\x9c\x26\xcb\x6f\xaf\xeb\x1b\xe0\xa8\x4b\xe2\x68\x84\xaa\x9e\x32\x1a\x5c\x29\xad\x96\x1b\x5a\x1a\xe0\xf5\x62\x27\x06\x57\x92\xea\xd0\xe1\xe4\xfe\x1d\xe4\x70\x00\x05\xae\x61\x0a\x38\x23\xd1\xb3\x45\x9d\xd7\x25\x5d\x2d\x56\xf5\x76\x7b\xbf\xa0\x9c\x17\x7c\xb1\x4b\xab\x8d\xbc\x96\x16\xa0\x05\x7f\x36\x85\xe7\x11\x5c\xbc\x09\x47\x17\x89\xb8\x67\x71\x4d\x38\x9a\xb2\x24\x87\xdf\x5c\x34\x8a\xa6\x05\xe1\xfb\xfd\x43\x73\x68\xe2\x71\x9c\x94\x2a\xc1\xc4\x28\x5a\x64\xf2\x6d\x84\x1f\x84\x88\x5e\x19\x34\xda\x69\x31\xf6\x1f\x34\x08\x3b\xd5\xe4\x80\x1e\xad\x84\x41\x1f\x9d\x89\x0d\x5d\x6b\xa8\xcc\x54\x67\xb7\x68\x17\x46\x78\xad\x40\x68\x96\xde\x3a\xa3\x41\x99\xac\x71\xa4\x47\x2a\xc6\xb1\xc6\x91\x1e\x81\xee\x01\xd7\x12\xb2\x76\x6d\xc7\x89\x0b\xbc\x36\xcc\x44\xa2\x5d\xd2\xed\x5b\x20\x58\xbb\xba\x4d\x17\x5d\x46\xc1\xc9\x30\x6b\x72\xe8\xa9\x61\x8d\x69\x7e\xcb\x72\xfa\x2a\x5f\x1b\x10\xc4\x4a\xc5\x6e\xf5\x14\x1b\xaf\xeb\x2c\x13\xd3\x55\x37\xf8\xe8\xcc\xe0\x05\x1a\xf4\x51\x21\x4c\x64\x2f\x55\xb9\x69\xda\xe0\xbe\x2e\x07\x4c\x7c\xc8\x71\x49\xb9\xc4\xe4\x50\x78\x14\x0c\xf9\x35\xd2\xd5\x0a\xee\xd2\x97\x05\xbf\x82\xca\x49\x85\x4b\xeb\x9c\xcf\x9c\x0c\xb8\x32\xb5\x60\xf4\x83\x38\xf9\x2c\xbf\x3d\x49\x4f\x60\x0f\x9e\x98\x2e\xf8\x89\x60\xbb\xe1\x99\x49\x48\x51\x57\x25\x5b\xd1\x93\x34\x3f\x91\xcd\x9f\xb0\x12\x72\xe0\x82\x18\x4b\x57\x62\xdd\xb4\x6d\x43\xda\x01\xc4\x1f\x12\x41\x61\x48\x7c\x86\x4a\x8b\xcb\xad\x33\x3d\xf1\x4f\xa1\xc2\xee\x92\xc9\xaa\xc0\x3a\x2c\xbf\x6f\x8f\x39\x4a\xd5\xf2\x04\x53\xaf\x03\x6d\xcd\x07\x2e\x5e\x8d\x4c\xed\x2a\x30\x9e\x60\x7b\x84\x3d\xd6\xee\x9c\x3f\xa7\x16\x0e\x8e\xfc\x2b\xaa\x12\x80\xbc\x18\x57\x85\xf8\x63\x74\x36\xc7\xe2\x9f\xdf\xcd\x11\xa0\x64\x6d\x8b\x3a\xaf\x5c\x72\xd0\x85\x9b\x7c\x68\x74\x5c\x8a\xf7\x05\x39\x2d\x8b\xec\x4e\x46\xb1\xbd\x49\x77\x12\x87\xb6\x1a\xb0\x71\x2a\x8e\x72\x4d\xc4\x1f\xc8\x40\x1b\xab\xd3\x55\x83\x40\xd9\x3e\x5d\x32\x23\x42\x85\x59\x5e\x56\x69\xbe\xa4\xaf\x56\xd3\x7c\x34\xc2\x30\xb6\x77\x05\xcb\xab\xe9\x12\xeb\x3d\x3a\x5d\x36\x78\x45\x18\x18\x73\x06\x3a\x8d\x85\x41\xd7\x5a\x01\xce\x68\xf4\x2c\x1a\xd5\x1a\xd0\xf5\x08\x5a\x56\xfb\xb4\xac\xd0\xd1\x1f\xc3\x33\xbc\x25\x3d\x1b\x7d\xb0\x8d\xe3\x64\xa7\x73\x6a\x05\x0a\x10\x05\x29\x7b\x67\x88\x87\x7f\xa2\x6c\xc9\xe9\xda\x3f\x4e\x48\x50\x96\x3b\x9f\xb2\xdc\xb5\x28\xcb\xa6\x41\x90\x02\x31\x2d\x55\x1e\xc0\x3b\x84\x33\x72\xe7\x90\x15\xbc\xd3\x59\x6c\x03\x63\xdb\xaa\x8c\xf5\x07\x4f\x79\x24\xe4\x1c\xa6\x94\x08\x0d\x5e\x5b\x52\xd3\x73\x2d\xc1\xb2\xdd\x90\xda\xa5\xdf\xb7\xc4\x6d\xc6\x3e\x5f\x1c\xec\xfa\x16\xba\x53\x24\xf1\xa6\x43\xcf\xdb\x9b\xa8\x79\x94\xba\xdc\xe0\x05\xc2\x72\x68\x6a\x1d\x5b\x03\x53\x4f\x8f\x18\x16\x3e\x7a\x58\xd8\x7c\xaa\x23\x46\xd7\x3c\x52\x66\x89\xef\x35\x64\xa4\xa0\x34\x2b\xbc\xc4\x19\x6a\xe3\x6d\xa5\x2d\x76\x2e\xe0\x41\xeb\x7e\x54\x30\x73\x49\xae\xa4\x01\x18\xa3\x21\x60\xff\x5d\xe8\x87\xa3\x68\x1c\x8d\x2a\x17\x18\xbb\x74\xb4\x06\x3e\x10\xda\x83\x89\x23\x55\x83\x68\x1f\xf4\xee\x69\xe5\x70\x8a\x45\x6d\xe9\xc4\xa4\x4c\xb0\x2a\xd7\xb1\x7c\x88\x19\xce\xc1\xca\xad\x88\x3d\x72\x82\x34\x8a\xa7\x70\xa4\x72\xf7\x97\x11\x9e\xcd\x3d\x27\xe8\xa7\xb4\x11\xc4\x7b\x79\x52\x18\xfa\xe3\x81\xb0\xae\xed\xda\x09\x73\x19\xaf\x25\xcc\x83\x10\xfa\x5d\xde\xfc\x26\x2d\xd9\x32\x42\x92\x14\x0c\x38\xe1\x63\xfa\xb9\xa2\xf9\x2a\x79\xd0\x3e\xaa\xdd\xd0\xfb\x28\xd1\x13\x59\xc9\x94\x05\x27\xb6\x41\x14\xe9\x80\xe0\x9c\xb4\x64\x00\x2b\xe9\x9b\x1c\x34\x39\xe6\xe2\x7b\x39\x63\xcb\xbf\xc8\xb6\xd6\x8b\x6a\x01\xb6\xe9\x80\xcc\xc2\xd1\x43\x05\xff\x04\x87\xca\x21\x9e\x51\x49\x32\x39\x1a\x4c\x8c\x06\x4d\x08\x31\x83\x63\x3f\xb7\x8f\x73\xf3\xf7\x12\xc5\x43\xf3\x3d\x24\x6b\xb0\xd2\x55\xb6\xe9\x0b\xe9\x4e\x1a\x7f\xe8\x93\xa4\x36\xb8\x10\x4f\x59\xbe\x2e\x7e\xd5\x31\x51\x60\x42\x81\x83\xe1\x2a\x6e\xbf\xdc\x3d\xea\x5b\x44\x2b\xaf\xe8\x8e\xd3\xa5\x38\x12\xa7\x6b\x9a\x56\x35\xa7\x65\x50\x11\x9d\x56\x07\xc2\x90\x14\x81\xc3\x4a\xff\xb3\xf8\xeb\xe3\xf0\x48\xad\x51\x3d\x9d\xfe\x1c\x8d\x78\xf4\xd5\x36\xea\xb5\xa6\xc5\xe4\x0e\x83\x2e\xe7\x87\xf6\xf3\x80\xf6\x87\x5a\x12\x4e\x08\xb9\x6b\x9c\x7d\x4f\xc7\xef\xdf\xfe\xf4\xe1\xea\xfd\xe2\xea\x4f\x57\x3f\x7e\x58\xfc\x70\xf5\xee\xfd\xd5\x8b\x4b\x89\x44\xa7\xde\x2d\x5e\xbc\xfd\xf1\xc7\x2b\x85\x4e\xe7\xc8\xf3\xdb\x70\x8e\xb8\x3b\xe3\x09\x32\x34\xc6\xff\xe7\x67\x28\x8e\xa9\xa6\xa7\x0f\x8d\x60\x66\x20\xf2\xd5\x20\xdd\x2a\x8d\xf2\x6c\x32\x1f\xb0\x13\x96\x9f\xd0\x0b\x3e\x63\x73\x93\xf7\x45\x02\x5b\x4c\x9f\x2d\xd8\xea\x37\x2a\x47\x1a\x83\xb0\xc6\x76\xa1\x88\xad\x22\x2d\xd5\x71\xf3\xc6\x02\x77\x20\x99\xf9\xd7\xa8\x51\x9b\xd0\x24\xb7\x30\xbf\x7b\x7c\x13\xb6\x32\x14\x4f\xf6\xc5\x53\x89\xa0\x84\x84\x0e\x0e\x78\xbc\x6d\x7b\x28\x6c\xe4\x40\x11\x8a\x1c\x58\x94\xd4\xea\x3f\xbb\x6e\x6b\xc6\xc4\xa9\xf5\x1b\x82\x63\xb7\xe5\xaf\x92\x50\x9c\x30\x96\x0e\xca\x0b\x50\x03\x02\xab\xd0\x75\xe6\x51\xf9\xe4\x41\x33\xad\x3f\x9f\xf3\x88\x50\xf5\xc7\x80\x1b\x74\xd1\x84\x93\x84\x92\x4a\x7c\x70\xf5\x72\xbf\x9f\xcd\x2d\xa6\x28\x73\xbe\x97\x74\x9d\x5b\xfc\xb2\x1b\xff\xb2\x2b\x23\xe4\xc1\x6d\x18\x14\x64\x85\xba\x61\xd2\x64\x8d\x46\xa9\x04\xdf\xa0\xa0\x31\x07\x3e\x89\xcf\xd2\xb9\xcd\x53\x45\x26\xe7\xa5\x45\x69\x1d\x8d\x4a\x9d\x88\x8a\xcd\xca\xf9\x20\x02\x13\x70\x44\x08\xa9\xc7\xe5\xb2\xd8\x09\xa2\x5e\x0b\xa6\xab\x2a\x49\x81\x9a\x06\x16\x25\x05\xdd\xf9\x1f\xdf\x29\xc8\x96\x50\x32\x38\x63\xcb\x6c\x95\x4d\xa8\x6c\xd6\x24\xc7\x06\xdb\x73\x25\x17\x1b\x1c\x03\x59\x7e\x1b\x6a\xb9\xdd\x6e\xa7\x6c\x42\xc7\x35\xcf\x20\xed\x26\x06\x8d\x56\xba\x2d\xdb\xb6\xff\x23\xe2\xc2\xa1\xfd\x69\x34\xa2\x7e\x72\x0d\x8d\x52\xfc\xd0\xb8\x1a\xd8\x3e\x8b\xad\x9c\xb4\x35\x54\x49\x04\xd3\xd9\x6a\x7c\xfd\xe1\xf2\xc3\xd5\xe2\xfa\xe7\x37\xdf\xbf\x7d\x3d\x9f\x1e\x6c\x43\xc6\x5a\xa4\x84\xfb\xfb\x55\x2a\x40\x2a\x37\xfd\x4a\xa1\x66\x3b\x4b\xe7\x42\xd4\x5d\x78\xd6\x0f\xd7\xe6\x5e\xa3\x31\xa7\xab\x7a\xe9\xe2\x28\xbb\xae\x6e\x74\x56\xcd\x49\x3d\xab\xe6\x18\xb4\x57\x2a\xe2\x40\x11\x47\x7b\x97\xff\x07\xbd\x0f\x12\xd2\x9e\xe2\x87\x73\xd5\xeb\xd9\x07\x2a\x02\x1b\x25\x1a\x5d\xd1\x2f\x6e\x36\x58\xd5\x34\xbc\x50\x52\xcd\xcb\x82\x07\x1b\x76\x42\x90\xbc\x43\xe9\x18\xd4\xc6\xd1\xc8\x6c\xbc\xfd\xfe\xb1\x82\x3b\x5e\xec\xd0\x7e\xff\xd0\xc8\x58\x84\x92\x56\x96\xb1\xec\xf1\x7d\x11\x25\xe9\xe7\x40\x88\xd3\x8a\xc2\x36\x93\x32\xb5\xf2\x92\x51\xee\x4b\xf6\x55\xa4\x5f\xa9\x74\x2e\x7f\x62\xf4\x53\xa9\x7c\xdb\xf5\x8d\xfe\x9e\xb6\xb3\xbd\x7a\xd4\xcc\x5e\xe9\x03\xee\x62\x2b\x05\x49\x95\x14\xb8\xc7\x2c\x97\x47\x40\x77\xdf\x9a\xaa\x34\xb8\xc1\x28\x68\x5e\xf9\x53\xdf\x4a\xf3\x88\x68\x71\x36\x57\xd5\x7b\x27\x6a\xa7\x29\xf7\x89\xfe\xed\x36\x28\xde\xf4\x3d\x7f\xd4\x9d\xeb\x2b\x21\xf8\x27\xb4\xe5\x1a\x14\x70\x68\x82\xb0\xde\x4d\x3f\x24\x12\x47\x2a\xdc\xad\xa2\x7c\x4b\x57\x2c\xad\x1c\x0a\xf3\xad\x86\x6f\x2e\xa5\x83\x03\xc3\x05\x61\xb3\xc9\x1c\xa7\x84\x29\x8d\xee\x19\x3a\xef\xcc\xb9\x6f\xe4\x66\xfe\xb3\xc2\x98\xad\x53\xa4\xc2\x75\xd6\x9c\x86\x82\x02\x1f\xf3\x98\x81\x6a\x1a\x29\xbc\xec\x73\x31\xfb\xe6\x9f\xd9\xe9\xf7\x69\x5f\xb9\x95\xff\xda\xc1\xd4\x60\xed\x53\x29\xea\xbb\x4a\x59\xe5\xcd\xd5\x2a\x25\x44\x60\x06\xce\x79\x6c\x9d\x70\x52\xa8\x1a\x5d\xf9\x36\x61\x08\x0f\x5b\x95\x75\x2e\xcd\xc0\x89\x8f\xc4\x95\x63\x93\x9a\x5c\xd8\x22\x25\x8e\x76\xce\x25\x5f\x46\x68\x3a\x9b\x9f\xb7\x6e\x9e\x50\x96\x9b\xca\xc9\x32\xa2\x93\x5e\xae\x4c\x66\x90\x97\x05\xd7\xbc\x83\xe4\x57\x9d\x6b\x3d\x55\xd7\xb8\xcd\x23\xa2\x58\x5a\x95\xd9\xc0\xcb\x2c\xe8\x68\x7b\x20\xb9\x48\xf0\x0d\xa4\x19\x51\x23\x70\xe5\x11\x99\x0d\x1c\x12\xa1\xb9\xe9\xea\x5e\x80\x20\x86\x12\x48\x4d\x07\xed\x02\xac\x36\xb4\xd3\x20\xd4\x48\xff\x8e\xd5\xea\xad\xca\xfd\x04\xcd\x8c\x00\xd4\x0e\x53\x09\x5d\xa7\xd8\x19\x48\xce\x85\x50\x83\x12\x8e\x6b\x45\xf6\xec\x07\x21\xbc\x91\xc6\xa1\xf0\x17\x59\x93\xa5\xa2\xc4\xf0\xb5\x3d\xaa\xbd\x1e\x83\xa9\xe1\xed\x1d\xe5\x9c\xad\x68\x29\xbe\x02\x6c\x49\x60\x75\xe1\xae\x82\xcf\x85\x3c\x5f\x3c\x5c\xb5\xb9\x17\xb9\xd9\x5e\xe5\xeb\x42\x69\xd3\x77\x6a\xef\xdf\x58\xc0\x45\xbc\x25\xa2\xde\xbb\xcb\xf7\x97\x6f\xae\x75\xc5\x81\x49\xa5\x24\xf7\xc5\xa1\x3c\x47\xcb\xf1\x36\xdd\xcd\xe8\x7c\x50\x69\xbd\xc1\xd6\x25\x49\xcb\x34\x5b\xd6\x19\x04\x93\x2c\x37\x54\x5c\xc1\x89\x32\x24\xb6\x98\xa6\x4a\xb2\xb0\x58\x37\x23\x28\xd6\x4e\xf3\x7c\x4c\x5c\x46\xe3\x3a\x5f\xd1\x65\x01\xba\x27\x25\x36\x82\x9b\xaa\x8f\x0d\x44\x71\x61\xb2\xba\xdf\x91\x85\xb2\x8c\xb5\x97\xc6\xd6\x71\x65\x2b\x8e\xef\x94\x2e\x15\x0e\x77\xe7\x36\x54\xde\xca\x0e\x56\x9a\x51\xba\x96\x9b\xa2\xce\x56\xef\xc5\x36\xe3\x71\xac\x6e\x54\xf1\xe3\x03\xdd\xee\xc4\xfc\xc1\x3f\x4b\x82\x15\xad\xb3\xba\xdc\x5c\x96\xf7\xf9\x52\x6f\xb2\x12\x25\x62\x33\x89\x2b\xdf\x6c\xaf\x90\xc3\x41\x2b\xe1\xb4\xfb\x1d\xfb\xd7\x9b\x07\xd7\x9b\xab\xf5\xe6\x7a\xbd\x07\xb9\xdc\x5f\x72\xb1\x11\xf0\x3f\x37\x74\x5d\x70\xfa\x46\x08\x1c\x9d\xfb\x7a\x2d\xc8\x79\xe8\x0d\xa7\x2b\xc6\x5b\xf1\x56\xe2\xb9\x92\x22\x8d\xcf\x76\x87\x5d\x52\x2e\x2f\xb2\x51\x73\x9c\xe8\xe7\x4a\xd4\xde\xfa\x5d\x19\xe8\x49\xa5\xaf\x08\xb2\x3a\xdb\x74\xe7\xe4\xff\xad\x41\x30\x47\x20\xd9\x7b\xf0\x97\x42\x94\xda\xef\xcb\x38\x86\x12\x3a\xef\x6f\x46\x6a\x69\x6a\x4b\x9e\xfd\xbf\x64\xfc\x3f\x10\xc8\xee\x48\xc7\x9b\x67\x60\xdf\xca\x66\x67\xe2\x4a\xa5\xb3\x7a\x2e\xf6\xeb\x70\xd2\xc8\x8c\x8c\x0f\x60\x0a\x32\x9c\xa9\x27\x0b\x48\xb1\x85\x6b\x23\x18\x58\xec\x9e\x9f\xe9\xfc\x1e\x5a\xb2\x3f\x70\x96\x67\x7e\xdd\xd3\xb3\xb9\x59\x27\xf7\xe6\x5d\xb3\x7c\x05\x4b\x99\x30\x9c\xb6\x99\xf4\x9e\x40\x1a\x30\x2f\x42\x1d\xb9\xc1\x8c\x8c\x96\xb4\x2e\x2f\x8a\x14\x73\x68\x7a\xe9\x18\x2b\xed\x85\xdb\xfe\x34\x65\x55\x70\x1a\x21\x04\x95\xcd\xa5\xeb\xa2\x23\x76\x0e\x60\x3b\x82\x45\x27\x9a\x52\x18\x23\xe6\xfc\x53\xac\xc4\x63\x35\x3c\xef\x76\x0d\xa7\x62\xea\x2a\x16\x20\x47\x7c\x57\xd8\xe4\x71\xcc\x5b\x97\x3a\xe8\x53\xdb\x0f\xb5\x5e\xb9\x0a\xfb\xc3\x38\x9e\x40\x32\x88\xbe\x7d\xbd\x1f\x39\x4c\x0b\xf7\x65\x50\x76\x01\xec\x0b\x99\xd3\x12\x9c\x32\x0e\x4b\xd7\xd8\x97\x97\x15\x09\xeb\xe1\xde\x2e\x9e\x24\x5a\xab\xcc\x1a\x83\x8a\x48\x4a\x94\xde\x64\xee\xf7\xcb\x2f\xae\x80\x36\x4e\xa9\x81\x30\x6c\x2f\xbe\x4a\x85\x03\x27\x2f\x37\xe9\x19\xe3\xb8\xb0\x3b\x72\xbf\x87\x3c\xd0\x8f\x64\x7d\x97\xf6\xce\x5c\x9f\x1f\xb9\x73\x4b\x9c\x1a\xef\xad\xf6\xab\x59\x3a\xd7\x87\x0a\xfa\x73\x49\x94\xa4\x75\x2e\x8d\xef\x46\x98\xc2\x6b\x1d\xd7\x2e\xfe\x0e\x0a\x71\x41\x1f\x36\x41\x4f\xaa\x38\x1e\xf2\x41\xb1\xdf\x77\x93\x41\x55\xfb\x3d\xbf\xc8\x49\x35\x4d\x72\x42\xc7\x95\x1a\x81\x5c\x0a\xea\x9c\x54\x4e\x2a\x75\x1b\x3a\x5a\xdd\xf6\x16\xa0\x08\xaf\xb4\x6e\x94\x83\x09\x9e\x0b\x59\xa0\x80\x7c\xce\x79\x55\xb8\xf1\x9b\xcf\x6e\x71\x34\x8e\x10\xce\x08\x1f\x17\x75\x95\xd1\x0a\xaf\xbc\x33\x80\x97\x84\xcb\x0d\x88\x06\x19\xc9\xf6\xfb\x68\x9b\xb2\x3c\xc2\xc5\x45\x22\xe1\x20\xad\x9e\xa4\x3d\xf0\x14\x92\xe9\xe5\xa1\xee\x4a\x92\x3a\x4e\x7c\xd2\x58\x5f\x5c\xd0\x0e\x97\xbd\x0e\x9f\xba\x14\x4d\x7b\xdf\x88\x05\x6b\x37\xe3\x8c\x13\x36\x9f\x36\x40\xda\xa4\xaa\x1a\x8c\x72\x35\x58\x91\x9e\xa6\x37\xa8\x31\x23\x5e\x5e\x2c\x09\xf5\xf6\xcf\x74\x05\x72\xb4\x26\x58\x4b\xc5\xa3\xe1\xad\xd3\x9c\x5e\x9e\x69\x34\x2a\xd1\xa0\x06\xbf\x81\xdb\x84\x22\x14\xc7\x35\x21\x64\x67\x47\x09\x5f\x4d\xe5\xb0\x51\xcc\xcf\x03\x18\x3b\xa6\x6b\x2c\x3e\xe1\xb4\xc6\xf2\x6b\x4d\x33\x0c\x3e\x13\x29\x76\xc6\xba\xc2\x30\x8a\xe9\x12\x9b\x1e\xcd\x01\xdd\x5e\x6c\x93\x35\x9a\xd2\xf1\xa2\x2a\x76\xaf\xe9\x1d\xcd\xfe\xc4\xe8\x27\xc3\xd7\xac\x6d\x8e\x9e\xbb\x46\x25\xa4\x11\x0c\xfd\x56\xba\x37\x82\xea\x4e\x1a\x65\x81\xfd\x59\x8e\x8b\x7c\x49\x5b\xac\x6b\xb4\x28\x69\xf5\x16\x86\x57\x2a\x45\x01\x2b\x97\x45\x9e\xd3\xa5\x7a\x1c\x22\x64\x03\x31\xe9\xce\x87\xa1\x17\x15\xa1\x53\x50\x6a\xab\xed\xc9\x8d\xa5\x5a\x0c\xfc\xc2\xfd\x11\xd8\x69\x3a\x11\x10\xc2\x15\xa9\xcc\xe6\x95\xc3\x6d\x8f\x0a\x7c\x44\x9d\x74\x53\x07\xe9\xa2\xeb\x07\x0c\x17\xb9\x82\x73\xd4\x28\x86\x06\xd5\x51\xf1\x6b\xe1\xde\x80\x49\x3c\xb0\x3a\x96\xaa\xdc\xea\x7b\x22\x8e\x21\x8b\x9b\xb7\x57\x2a\xb3\x57\xec\xe8\x9d\x2f\x16\x1a\x9a\x72\x20\x13\x23\x1c\x14\x6a\x6d\xa5\x51\xb1\x00\x22\xa1\xa0\x40\x01\x97\x52\x6d\xbd\x42\xe6\x6c\x94\x1b\x50\x96\xd2\xbb\x50\xb7\x20\x37\x63\x01\xba\x70\x77\x47\xea\x9c\x7f\xfe\x76\x54\xdb\x54\x63\xe9\x1c\xb7\x9f\x24\x2f\x7b\x08\x5e\x22\xa0\x7b\xf3\x1e\x75\x3d\xb1\x9c\xb5\xb2\x09\x66\x9d\x34\x65\xdf\x4d\xe2\x38\x69\x29\xca\x8e\x1d\xad\x60\xbc\x6b\x96\xad\xcc\x4e\x79\x43\xab\x74\x95\x56\xa9\xcf\x51\x17\x41\x04\xd2\x5b\xcb\x35\x74\xae\x15\xdf\xeb\x42\x2a\x1a\x86\x95\x66\x3d\x5b\x59\xd3\xf4\xa7\xcf\x65\x86\x5e\x70\xe8\x97\x1e\xa0\x36\xff\xe0\x49\x35\xcb\x47\x5c\xeb\x56\x9a\x04\x04\xe4\x43\xda\x72\x87\x8d\xc5\xa7\x67\x36\xb8\x2a\x8e\x95\x54\x68\xdd\x45\x16\x92\xc7\xe7\x6e\xa0\x98\xe0\x68\xda\x0f\xf6\x7b\xa5\xf1\x67\xa4\x25\xe3\x48\x3e\xdb\x2f\x3d\x63\x26\xd7\x7b\xe0\x95\x93\x41\xdd\x97\x34\x4c\x15\xd1\x81\x63\x33\xdf\xef\x93\xce\x33\xf2\xd0\x60\x8f\xe9\xef\x94\xc0\x5e\xd7\x48\x2c\x5a\x50\x0b\x5e\x6a\xd9\x4d\x2e\x58\xa7\x1d\x84\xba\xcf\x9a\xc4\x7c\x02\x0c\x11\x1e\x81\x69\x8a\x11\x96\xbe\xdd\xd1\x1a\xb1\x5a\x19\xe1\x47\xa3\x5a\xcb\x43\x90\x11\x7e\x49\x32\x50\x0e\x08\x51\xa9\x18\xa4\x33\xf9\x6b\x4e\x96\x17\x85\xfe\x7b\xfa\x29\x31\xa9\x3a\xa4\x84\x6e\x72\xc1\xdb\xcf\xfb\xc9\xb1\x4b\xb4\x73\xa2\x5d\x00\xce\xe3\x25\x4a\xa8\xd2\x55\x22\x34\x75\x76\xc6\x95\xb1\xef\x51\xc3\x50\x5a\x67\x17\xeb\xfa\x37\x08\xb8\x2d\x41\x7c\x37\x9f\x72\xe9\x9e\x64\x04\xa6\xe6\x46\x85\x8e\xbc\xc8\xd2\xb2\x4c\x1e\x98\x8c\x81\x52\x9e\x24\xd2\x88\x7d\xe3\xb0\x95\xa5\x63\xc7\xd6\x55\x93\x62\x7c\x09\x03\x54\x38\x31\xb8\xb0\xd1\x7d\xed\x2c\xe8\x07\x13\x30\x3c\x34\xd8\x65\x8b\x54\xfe\x05\xb0\x45\xca\xbf\x7d\x66\x45\x3e\x03\xa1\x6a\x0a\xdf\x54\x07\xbd\x29\x25\x57\x87\x76\x05\xa5\x89\x96\x80\xd7\x11\xa7\xd5\xa9\xce\xb5\x4f\x96\x41\xc5\x7a\x10\x52\xdc\xd4\xf5\x0a\xd7\x4a\x0a\xdf\xf1\x48\x52\x6e\xc3\xcc\x6b\xe9\x38\x27\xb9\x74\x40\x92\xe2\x60\xc2\xa5\x09\xd3\xcb\x74\xa7\x14\x60\x5d\x0d\x9f\xe2\x36\x4c\x02\x74\x84\x17\xbf\xec\xda\x8b\xd0\x86\xad\xa4\x0a\xec\x08\xa7\x47\xe9\x69\xcb\xb0\xbc\x54\x93\xb2\x8f\x9f\xc4\x59\x47\xe4\x75\x3f\x36\xc2\x4b\x2f\xce\x36\x73\xe2\x6c\xd9\x3a\xa9\x75\x46\x6f\xdb\x46\xdd\x6a\x00\x48\x1e\x0d\x28\x43\x72\x71\xb2\x19\x79\x70\x0f\xdf\x74\x38\xc1\x62\xcf\x8a\x7f\xc1\xb0\x2b\xfe\x48\x4b\xb1\xa7\x2d\xb9\x33\xaa\x91\xa3\x04\x28\x6a\x60\xce\x53\xf2\xd0\x9c\x7b\xc4\x2e\xc5\x74\x56\xcc\x31\x9f\x15\x73\x84\xf3\x59\x31\x27\x29\x66\xe2\x9f\xe1\xa4\x31\x16\x6e\xd1\x1d\x3f\xba\x3b\x8e\x4b\x14\xc7\x43\x36\x2b\xe7\xda\x12\xde\xee\xb5\xc6\x7c\x56\xce\x31\x15\x45\x70\x3e\x2b\xe7\xa4\x6e\x8c\x94\x9d\x80\x66\xcc\x44\xe8\x59\x49\xdb\x25\xa5\xc9\x1a\xe1\x4c\x79\x5e\x2c\x81\x99\xf6\x25\x6b\x21\x25\x62\x4a\x32\xc9\x5c\xaf\xc8\x6c\x8e\xb7\x62\xb5\xef\xc8\xcc\x5e\x1b\xf7\x4f\x5d\xc7\x7b\x14\xc7\x91\x4a\x84\xaa\xdf\x45\x43\x42\xee\xe3\x38\x92\x00\x89\xf0\x4b\xbb\xc7\xd2\xd9\xfd\x1c\xdf\x92\x1b\x69\xa1\x17\xcc\xa9\x94\x1d\x16\x5a\x78\x73\xb6\xa2\x20\x75\xb7\x71\x9c\x2c\x20\x11\xb2\xa8\x7f\x45\x6e\xc6\x69\xa9\x36\x78\xd8\x6a\x9c\xdc\x23\x7c\xed\xed\xbc\x7b\x34\xb8\x26\x9f\x92\x6b\xd9\xc4\x5b\x72\x33\x16\xd3\x01\x8d\x7b\x01\x7f\xbe\x5d\xa3\xe4\x1a\xe1\xcf\xa4\xaf\xd9\xe4\x1a\x5f\xe1\xb7\x08\x5f\x92\x74\x14\x4d\xa3\xd1\x3d\xfe\x40\x1e\x7a\x74\xb9\x53\xbf\x6b\xec\x6d\xe4\x6b\x6c\x5a\xf7\x2b\x7d\x76\x5e\xe8\x27\xb0\xe5\xdf\x62\x69\xf7\x9d\x5e\x61\x71\x33\x4d\xef\x71\xd7\xb5\x61\x7a\xd9\xa6\xa7\x29\x96\x8a\x07\x38\xba\xa0\x25\x9d\x2e\x64\x26\x77\x45\x7f\xe5\x31\xba\x6d\x06\xdb\xd9\xfd\x9c\x6c\x67\x57\xe2\x7f\x97\x73\xf2\x01\xaf\xa4\xa8\xf3\x01\xe1\x3b\xf9\xd7\xbd\xbe\xfb\x1e\x7e\xd9\x95\x42\xcc\x4a\x77\xd3\x2d\xf6\xb4\xeb\xd3\x3b\x2c\x2d\x01\xd3\x07\x6d\x94\x9d\x76\xf9\xf9\x9c\x6c\x67\x74\x2e\xed\xbb\xc6\x9f\x42\x85\x0c\x3c\x5a\x49\x73\x2f\x9d\xba\x38\xe0\xff\x91\x83\xee\xcc\x37\x41\x7c\x69\xdb\x5d\x1f\x90\x5c\xd0\xf7\x06\x21\x5c\x52\xf7\xda\xf8\xaa\xf8\x1c\xc7\x6b\xb2\xf6\xfb\x61\x32\xc1\xe5\x98\x95\x1f\x68\x29\x06\x8a\x12\x9d\xf1\xf6\x3c\xc9\x5b\xa6\x42\x31\x62\xa5\xae\x84\x35\x12\xb4\x42\x7b\x7e\x19\x18\x7b\x65\xd6\x4b\x61\x5a\x00\x3d\xe1\xe8\x82\x4f\x3c\x68\x0c\x50\xb2\xab\x82\x53\x37\x04\xd8\xa8\xc8\xa7\x6d\x16\xfe\xa0\x17\x52\x84\xc6\xdb\x74\x87\x8b\x56\xa6\x7f\x6d\xb0\x75\x9f\x72\xa4\xfd\x92\x0a\xd7\x2f\x49\x19\x11\xd9\xac\x98\xa5\x73\x18\x79\xa9\xb4\xab\xa6\xa7\xb0\x47\x46\x52\x22\x1c\x29\x9b\x2e\x28\x37\x22\xd4\x5a\x78\x37\x78\xd6\x68\xc7\xa4\x0d\x18\x0d\x6e\x38\x4d\x3f\xea\x7c\xcb\xc3\x49\x83\xd7\x2c\x6f\x51\x91\x9e\x05\x61\xeb\xa4\xed\x96\xde\xf5\x20\xb3\xf9\xcb\xad\x0d\x85\xe1\x82\x1c\xd2\xb2\x6b\xee\x40\xf3\xd2\x25\x49\xc7\x0b\x9f\x93\x4e\x0a\xc1\x06\x88\xc7\x3b\x89\xc9\x56\x42\x6a\x93\xf3\xb0\xad\x2e\xc5\x85\x15\xb6\x97\x64\x72\xbe\x7c\x5e\x0a\x96\xdb\xae\xff\x52\xdf\xfc\xf0\x7c\xb6\x9c\xe3\x1d\x59\xcb\x21\xe1\x2d\xd9\xb9\x2a\xb6\x3b\xb2\x56\x2e\x2d\x70\xe3\xc4\xb1\xfe\x89\xef\x75\x2e\xb0\x1b\x27\x49\x76\x0d\x31\xa7\xba\x0c\xba\x48\xee\x9d\xfd\xb3\xc5\x6b\xe9\xf5\x82\x6f\xc8\x2e\x48\xc0\xef\xb1\x69\x7e\x0d\x34\x1f\xa1\xe9\xdd\x85\x11\x7b\x13\x71\x31\xdd\xcd\x51\x1c\x27\xf7\x64\x17\xf6\x05\x4a\x6e\x02\x6d\x24\x37\x64\x3d\x0e\xd3\x74\x7c\x4f\x3e\x25\x6b\x5f\x8a\x40\x78\xdb\xe3\xdd\xb2\xeb\x73\x6d\xb9\x19\x12\xaf\x0b\xd9\xd0\x43\x5b\x30\x7c\x9b\x67\xf7\x71\x3c\x3c\x1b\x12\xa2\x02\xe5\x6e\xc9\xae\x67\xa7\xaf\x91\x8c\xf4\x50\x5d\xdf\x62\x0b\x64\x30\x58\x5c\x30\x32\x9c\x4c\x21\x2d\xca\x02\x2c\x44\xc3\x33\x65\x52\x2e\xdd\xa5\x16\x57\x5b\x06\x1c\x51\x7b\x6c\x44\xac\x53\x78\x49\x08\x21\x37\x71\x3c\xe4\x07\x21\x7b\xf6\x7b\x19\xff\x97\x28\xf7\xdb\x1b\x7c\xc7\x4a\xa6\x92\xe9\x7d\xa4\xf7\xd3\xbb\xfd\x5e\x7f\x88\x06\x35\xc3\x09\x91\xb6\xac\x43\x76\x49\xcc\xe2\x98\x07\x60\x1b\xe4\xf6\x3d\x60\x1b\x76\x24\x4c\xb5\x8d\x25\x99\x1a\xa8\x9f\xce\x8e\xee\x73\x5b\xc2\x91\xfa\xa8\xfa\x93\x8a\xab\xc3\x3d\x72\xe3\x65\x46\x53\x9e\xc8\x5b\x05\x1f\xf2\x07\xbe\xc7\xb5\xf7\xf6\x1a\x32\x5f\x1f\x28\x4f\x1e\x8a\x7c\xda\x56\x15\x1d\x82\xad\x6e\x1a\x2b\x0c\xde\xe3\x07\x6b\x3e\x9b\x06\xcd\x6d\xd6\x84\xf5\x14\x73\x8a\x34\xbe\x58\xcb\x1c\x45\xd3\xaa\xd1\x16\xef\x6b\x72\xe3\x04\x01\x5c\x3f\xd9\xf3\xfe\x89\xa8\x6e\x5f\xc5\xcf\xfe\x29\xde\xf4\x2a\xd4\xea\x00\x98\xcb\x93\xf3\x7b\x1c\x93\x92\xfa\x49\x9e\xf6\x4f\x4d\xb4\xfc\xb4\xac\xcc\x0b\x05\x4d\xeb\xc4\x09\x7c\x79\xe2\x62\xc7\xeb\x1d\x3d\x7c\x54\x92\xad\xdc\x8d\x32\xa3\xcb\x75\x56\x7c\x72\x1c\xc1\xd8\xd6\x62\x1d\xe7\x45\xc5\xd6\xf7\x9a\x93\x96\xd7\x73\x12\xd5\x3c\xd3\x1e\x85\x60\xdc\xf0\x30\x33\x94\x6b\xa0\x05\xde\x40\xd2\x3f\xc7\xea\x44\x3d\xe7\x41\x1c\xad\xd8\xca\xf6\x1e\x39\xf9\xfe\xef\xf5\xfd\x7f\xb8\xfe\x27\x96\x65\x4e\x03\x98\x3b\x4d\xdc\xb4\x9c\x38\xbf\x20\xa8\x41\xf5\x03\x5a\x1e\x72\x19\x86\x0d\xb8\x25\x52\xbb\xe5\xe8\x8e\x32\xb6\xa4\x78\xf1\xd5\x9c\xf3\x0d\xb2\x93\x0c\xc1\xaf\x3a\x80\x23\xad\xe7\x80\x08\x19\x28\xaa\x9f\x09\x46\x1e\xf0\x3a\xd4\x8a\xc8\x2c\x86\x89\x0a\x1b\x72\x48\x2f\x70\xe5\xd7\xb4\x82\x87\x35\xad\xe9\x4a\xb3\xf9\xa0\x03\xad\xc0\x60\x94\x69\x83\x91\x69\x5e\xa2\xc2\xac\x20\x36\xdb\x6b\x43\x07\x99\xca\x48\xde\xb2\xaf\x7f\x1b\x8b\xfa\xfd\xbd\x1c\x78\xb8\xa0\xbb\xf5\x74\xe7\xce\xde\x33\xe3\x01\xcf\xd7\x3f\xca\xf1\x9b\xdb\x94\x56\x94\xab\xb9\x88\x0d\x1f\x44\x5c\x7a\x34\xea\x81\xe5\x4c\x2e\x2d\xff\x43\xc0\x84\x00\x81\x14\xb7\x81\x04\x03\x48\x79\x10\xca\x3c\x5c\x79\x47\xf5\x14\x5e\x19\x07\x50\x32\x77\x36\x54\xed\x26\xf5\x7e\x2a\xa6\x54\x8d\x73\x39\xc3\x25\xa9\xbb\x33\x5c\x8a\x91\x75\x31\xa5\x14\x82\x04\xe6\xa4\xc0\x39\x61\x81\x0f\x36\xab\xe6\x83\x1c\x6c\x10\x6c\xbc\xb8\xa5\xd5\x95\xf7\xe1\x93\x1c\x09\x89\x6f\xec\xc5\xcf\xea\xe4\x44\xd6\x27\x00\xd7\xd6\x53\x20\x05\x9d\x62\x39\xa3\x46\xb9\x5f\xeb\x07\x64\x38\xc1\x43\xa3\xc2\xe6\x9e\x4a\x52\xb6\xd5\x0a\x83\xb4\x11\x8a\x29\xce\x74\x44\x24\x42\x7e\x77\x0d\x30\xd5\x5e\x58\x0b\x78\xa0\xc6\xf1\x10\xb8\xff\x40\x64\x13\x4a\x6a\x74\x10\x9a\x60\x59\x97\x55\xb1\xb5\xd8\x04\x27\x92\xe3\x3a\x29\x72\x07\x8b\x40\x62\x15\x28\x44\x02\x05\x66\x2b\x31\x09\xf4\xc4\x1b\x0c\xdf\xc5\xf4\x1b\xf2\x27\x09\x7e\x14\x2a\x65\x67\x63\xda\x69\x03\x31\xec\xf7\x9b\x4e\x18\x97\xe8\xac\xee\xe2\x51\x57\x1e\x61\x76\x15\xb0\x54\xe1\x5d\x27\x5e\x86\x0d\x86\x23\x07\xa0\x4e\x08\xc6\x08\x89\xa6\x3d\xfa\xef\xcd\x23\x6d\xb3\x72\xcc\x2f\x8c\x5b\xbf\x01\x33\x68\x39\xf6\x2f\x84\x8e\x85\x2c\xd0\xaa\x5f\x03\xb7\x1f\x18\xc4\xb1\xa5\x7f\x1b\x74\x91\xd2\xb4\xad\x03\x32\x2a\x25\x0c\x99\x37\xa2\x2e\x7c\x56\x8b\x8e\xea\x4d\x95\x1d\x06\x51\xd5\xb5\x03\x7e\x75\x50\xd9\xbd\x86\x55\x22\x73\x3a\xae\x0a\xef\xea\x75\xbf\x50\xbb\xbb\x2e\xc6\xea\xd2\xf1\x8d\xff\x81\x49\x42\x1e\x76\x28\xa3\xe3\x4f\x69\x79\x79\x03\x7b\x54\x48\x26\x4c\xff\xb8\x48\x26\x78\x3b\xce\x8a\x5b\xf8\x8d\x92\x0a\x4d\x13\x0b\xee\x3a\x3c\x33\x90\x05\x74\x0c\x7f\xe0\x0a\x2b\x99\x01\x61\x36\x5e\xb0\x12\x3a\x95\x86\x96\x55\xa2\x0a\xa1\x0b\xf0\x2d\x55\xa0\xe5\x3a\xae\xc1\x9b\x43\x02\x31\xe2\xb2\xb4\xe8\x31\x15\xdd\x27\xf6\x99\x5c\xce\x40\x7a\x0d\x63\x6f\x32\xef\x0e\x6c\x71\x5b\xe8\x88\x6d\x0e\x1a\xe7\xca\xa2\xae\xcb\x5a\x0d\xae\x9b\xc4\xa4\x39\x47\x78\xe9\x09\x09\x5a\x38\x80\xdb\xb3\xc6\x6b\x63\xc8\x28\x2b\x5e\x0b\xfa\x36\x5e\x95\x99\x86\x6f\x2f\xf7\xfb\xd9\xcd\x1c\xaf\x8c\xd3\x28\xcb\x56\x3f\x5c\xbf\x4e\xd0\x60\xa5\x31\x42\x5c\x0d\x8a\x45\x0a\xc1\x2d\x8c\x82\xe1\x04\x17\x4a\x21\x08\x1e\xf1\x65\x49\x39\x38\x78\x0d\x27\x8d\x17\xf0\x6b\x55\x79\x93\x73\xfa\x7c\xad\x35\x1c\x74\x34\x42\x6b\x00\xbe\x4b\xb3\x4c\x79\xfe\x23\x84\xc1\x83\x38\x59\x79\xb0\x36\xd8\x19\x68\x0f\x0c\xca\x62\x93\x2a\xb6\xec\xfb\xb4\xa4\xab\xf7\xd2\x6f\x0b\xd8\x53\x79\x7b\xf2\xf0\xed\xc9\xc8\x43\x18\x83\x62\x4a\x71\x0b\x98\x64\x1a\x88\xa1\x0a\xdc\x20\xa7\xdb\x74\x07\x8e\x7d\x0d\xee\x60\x2f\xb4\x92\xa5\x87\xd8\x97\x19\x05\x9c\x98\xf0\x1b\xc2\x51\x63\xfc\x6b\xc4\xd7\x5e\xe9\x3d\x01\xd7\x3e\x66\x3a\x09\xc6\x61\x1e\xa6\x9b\x11\xa3\xcb\xb0\x41\x43\xe1\x45\x0d\x32\x2f\x9d\xa5\x05\x77\x02\xea\x43\xca\x56\x0e\x9b\x43\xb1\xbb\xd1\xc6\x8b\x85\xbc\x69\xf9\xfd\x62\xa1\xdd\xee\xc0\x71\xac\xdd\xbb\xbd\xdc\x0c\xc0\x95\xf4\x11\xad\x52\x0e\x24\x8d\xe5\xb7\x8f\xb3\x57\x82\x19\x63\x69\x06\x58\xa5\x46\x49\x0c\x6e\xa6\x92\x45\x03\xc5\xaf\x1f\x29\xdf\xcf\xa1\x39\xb9\x94\xee\x9c\xac\x3b\x3a\xd5\x42\x22\x9d\xc6\x24\x0e\x17\x10\x16\x79\xf1\xab\x5f\x8d\xf1\x70\x95\x5d\x87\x77\xb8\x4a\x37\x03\xe5\x5e\xab\x9e\x13\xd4\x59\xd5\xf6\xd0\x34\x56\xaf\x53\x22\x94\x8f\x17\x69\x88\x17\x8f\x4b\x15\xa7\xc7\x4d\x31\xe1\xc7\x7c\x50\x67\x86\x40\xbc\xf0\x70\xa2\x82\x70\x8d\x03\x8b\x3b\x17\x13\x81\xcb\x4a\xe5\x79\xc3\xf2\xdb\x38\x6e\x3d\xa3\x2b\xff\x5c\x3f\xe6\x36\x25\x56\xb6\x85\x12\x2d\x8f\x02\xb8\x2c\xd1\x80\xcb\x12\x35\x4e\x55\x38\x25\x9b\x6e\xc4\x34\xf8\xf2\x14\x82\xb1\xb6\x2a\x53\xb1\x0b\x52\x1d\xc3\x5b\x92\x17\x09\x07\x7c\xad\x01\x90\x6b\xe3\x52\x0e\xbe\x12\xba\xd8\x79\xad\xbb\xcc\xc8\x7b\x28\x9f\xce\xea\x39\x1a\x70\x92\x8d\x33\xa6\xc8\x4a\xa9\xf8\xe9\x6c\x5c\x7c\xca\xaf\xa5\x4f\x0c\x78\x86\x42\x48\x08\x78\x41\xad\xc8\x52\x39\x47\x0d\xd6\x43\x42\x0a\xd7\x71\x4b\xba\xa3\x0d\x09\x59\xed\xf7\x49\xe9\xb4\x82\x9a\x8a\x94\x0d\xe8\xb7\x8d\x05\xc4\x15\xbf\x50\xf7\xd1\xd8\x7c\x35\x99\x2e\x89\xcb\xd9\x29\x04\xa3\x20\xf1\xdc\x92\x9d\x47\xff\xee\x18\xfd\x34\x3d\x95\x83\x8d\x94\x13\x81\x2f\xf5\x6d\xb5\x94\xa2\x15\x0b\x87\x47\x80\x4d\xcc\x47\x74\xea\x10\x8b\x53\x8d\xef\x34\x85\xf9\x23\xc1\xdc\xbd\x80\x76\xdf\x17\x05\x78\xf2\x85\xa6\xdc\xc8\x68\xe8\x70\x06\x14\x0d\x74\x27\xe1\xd0\x9e\xfd\x4b\x32\x1e\xa1\x8b\x67\x68\x36\x99\xfb\x90\xcf\x1d\xf8\x76\xd3\x9c\x76\x32\x6f\x17\xe9\x0f\xd4\x6c\xed\xed\x19\x9d\x27\x15\xe4\x06\x37\x14\xee\x8d\xd8\x37\xd2\x0b\xfd\xa8\xe8\xc7\xaf\x02\x66\xbf\x7e\x1c\xcc\xfe\x69\x20\xf6\xeb\x27\xc2\x99\xa7\x3e\x9c\x79\xfb\x03\xb4\x10\xec\xd3\x23\xa3\x2c\xbf\x0d\x94\xfc\x79\x0b\x44\xde\xc0\x05\x3f\x16\x3d\xd9\x06\x97\xc7\x1f\x1f\x8d\x7e\xfc\xf5\x00\xfb\x65\x00\x4d\xee\x1b\x41\xec\x4b\x5a\xdb\xbb\x3a\x8f\x40\xed\x7b\xdf\xdc\xe4\xbf\xb5\x29\xeb\x0a\xf9\xd1\x3b\x60\xfc\x34\x18\x6f\x6a\x6e\x0f\x5d\x41\xa5\xb3\xf3\x51\x85\x0f\x06\xa8\xbb\xea\xa3\x36\x1a\xb1\x16\xfa\x4a\xb0\x09\xff\xe3\x76\x9c\x12\x98\x7a\xb3\x17\x94\x8f\xa3\x7e\xb7\x17\xcc\x83\xff\x56\x61\xe1\x81\x74\x6c\x5e\x25\xdf\xd4\xeb\xc4\xf8\x0a\xd9\x13\x3d\x9a\xdb\xcd\xa5\xd9\x86\x2b\xf1\xae\x09\x93\x77\x3f\x70\x87\xb8\x78\x46\x87\x8c\x33\x4e\x98\x7b\xa2\x13\x8c\xea\x78\x3e\x4f\xef\x68\x8c\xb4\x95\xf4\xe6\x31\x08\x89\xf0\x73\x56\xcd\x11\x08\x7e\xbc\xce\x51\x22\x7e\xce\xf8\x1c\x47\x6a\x84\xf2\xc8\x1d\x05\xbf\xd1\x62\xc0\x05\xaf\x5f\x85\xd5\xe1\x8b\x35\x73\x51\xce\x2d\x69\x39\x1e\x93\xc3\x9a\xcb\xd2\xd5\x4a\x7d\xda\xde\x66\xbb\xee\xd1\x0e\xe9\x49\x3c\xac\xf2\xe0\x54\x1a\x93\xd6\xe5\x51\xcd\xaa\x66\x1e\x2d\x87\xfb\xc4\x74\xa2\xac\x57\x12\xe9\x06\x06\xc4\xb1\x41\x41\x65\x86\xcb\x30\xb9\x10\x7c\x40\x11\xc1\x77\x21\x25\x01\x04\x93\xc0\x16\x0e\xb3\x94\x92\x07\x3f\x5d\xdd\x94\x36\x83\x43\x95\x97\x5a\x88\xd3\xcc\x51\x8a\x50\xd3\xd8\x54\xb6\x3a\xda\xc7\x1d\x7b\x22\x03\xdd\xb8\x09\x74\xd3\x99\x17\x70\x85\x70\x08\x84\x58\xa5\xbd\x8b\x63\xfd\x57\xd2\x53\xce\xe4\xa3\x15\x45\xcd\x0f\x2d\x86\x87\xfc\x92\x7b\x39\x9c\xc1\x3b\x13\x01\xe2\x19\xa5\x72\x5c\xa8\xa0\xc8\x15\xcd\x68\x45\x4f\xaa\x19\x9d\xe3\x6a\x56\x28\x53\xf4\x5c\x73\xb9\x41\xff\x83\x1c\xeb\x72\xca\xe7\x4c\xad\xbd\x1b\x83\xae\x1d\x4a\x07\x15\x48\xcd\x61\xb8\x92\x1c\x83\x2f\xa7\x76\x5b\x13\x34\xb2\xe9\x9f\x66\x58\xa7\x25\x03\xd5\xe9\x05\x9d\x46\xa9\x20\xe4\xd2\xa5\xf8\x0f\xd7\x6f\x7f\x1c\xcb\x1d\xc7\xd6\x82\xf1\x9a\x46\x91\x4c\x6b\xd9\xe3\xda\xdd\x6a\xbc\x67\xdd\x40\x73\x98\xc7\x71\xe2\x2f\x5b\xae\x9c\xae\x15\x3b\xd5\xe3\x72\xc1\x65\x7a\x1d\xb1\x6c\xb9\x72\xb9\xd0\xb3\x7d\x1c\xaf\x25\x34\xdf\x1b\x29\x7e\xcb\x19\x47\x15\xaf\x29\xe4\xb6\x9e\x46\x79\xbd\xbd\x91\x1e\x87\xd5\xc5\x8f\xf0\x77\x42\x91\x0c\x2c\x7e\xbb\x4e\x90\xb7\x52\xf0\x05\x2e\x51\x02\x2b\xb6\x4b\x79\x29\xae\x1a\x34\x95\x6b\xb5\xe3\x75\x4e\xfb\xb2\x11\xf5\xb3\xd5\x2d\xbf\x1c\xea\x44\xb5\x9c\x40\x42\x34\xe5\xa6\xc5\x21\x58\x3d\x9f\x0f\x58\x1c\xb3\x7e\x37\x8b\x6a\x96\xcf\xe3\xd8\x2c\x79\x3e\x6f\x14\x9b\xdf\xab\x3a\x36\xa9\x30\x70\x41\xa4\x73\xe4\x1a\x52\x4e\x4b\xdb\x3d\x18\x9d\xc0\x8a\x91\x04\xef\x71\x9c\x92\x07\x95\xc7\x76\xb1\xe3\xc5\x92\x96\x8a\xdd\xb0\xfd\xb9\x41\x01\x85\x90\x2c\xb1\x0c\xa7\xaa\x1d\xc7\x5b\xee\xe4\xb9\x6d\x27\xc6\x90\x75\xb4\xfe\x24\x47\xda\x70\x95\xb0\x5e\xd6\xa2\xc3\x6e\x32\x17\xfe\xa3\x9d\xb5\x22\x6d\xe6\xc8\x91\x62\x4a\x25\xc5\x94\xea\xb3\x3e\x36\xa9\xc0\x7a\xb6\x1c\xf9\x7a\x1d\x22\xf4\xc7\x7d\x68\xb4\xf3\x9d\xe3\x90\x95\x86\x95\x0a\xed\x36\x66\xdb\xf1\x1f\x7f\xba\x7a\xff\xf3\xa2\x05\x84\xe0\x79\x2c\xa7\xa8\x00\x3f\xaa\x12\xed\xf7\x09\x9b\x95\x73\x92\xce\xca\xb9\x96\x7a\xd7\x75\x96\xdd\x5f\x2f\x8b\x5d\x27\x05\x88\x49\x09\xde\x5f\x84\xb5\x3e\x26\xc7\x4c\x46\x2d\x05\xbe\x65\x6f\x16\x96\x0f\x4e\xf4\x9d\x52\x91\xde\xaf\x20\x07\x4a\x5e\xd6\x42\x96\x76\xaf\xe1\x32\x61\x98\xbb\x1b\x42\x73\x50\xa1\x30\x14\xe6\x85\xa1\x20\x9c\x2b\x27\xe2\x83\xe7\xb5\x5d\x0b\xa6\x73\x4b\xab\x3f\xbe\x7b\x43\xdd\x58\x26\x47\x16\x87\xf2\x4e\x50\x90\xa7\xc3\x02\xd7\x21\x89\x91\xe0\x47\x04\x85\x5a\x32\x08\x31\x74\x56\x9d\x9e\xc9\xe4\x24\x26\xc6\x59\x19\xb8\x95\x00\x6c\x23\x91\x4d\x14\xb0\x45\x7b\x13\xe2\x26\x19\x4e\x30\x58\xb4\x33\x32\x9b\x63\xe9\xba\x57\x81\xbf\x1e\x5b\x9b\xf3\x63\x26\x96\xd0\xd9\x72\x8e\xac\x20\xb0\x26\x93\xf3\xf5\x73\xe6\xba\xfa\xad\x47\x23\x24\x78\x90\x5f\x76\xe5\x6c\x3d\xc7\x99\xf4\xd8\x2a\x00\x94\xc2\xee\x81\x12\x33\x41\xae\x94\x85\x20\x25\x4a\xa3\xba\x22\xe0\x4a\x9c\x81\x2b\x71\x69\x74\xc3\xa9\xe1\x9c\xed\xec\xc8\x0a\xe1\x95\x64\xf5\x42\x3b\xaf\x23\xfe\x18\xa2\x89\xbd\xcd\xe4\x7e\xc6\x82\x4c\x00\x43\x48\xcd\xa4\x78\x9e\x9e\x8f\x46\x85\x58\x88\xbc\xb3\x10\x6c\x56\xcc\x11\xb2\xb0\x76\xca\x31\x51\x87\xa9\xe2\x8c\x4c\xf0\x52\x48\xfe\x76\x65\xb2\xe7\xcb\xf3\xd1\x28\x43\x49\x4d\x92\x52\xbe\x9a\x65\x73\x64\x22\x8e\x78\x1c\x97\xf0\x63\xbf\x2f\x03\x30\x75\xa6\x48\xf7\x95\xa8\x60\x3d\x26\xa1\x90\xf2\x86\x8c\xe3\x7a\x48\x48\xa8\x0e\x20\x34\x86\x5e\xcc\x09\x9f\xd5\x73\xac\x6e\x08\xf1\xb7\xdc\x98\x87\xce\x5b\x5f\x4a\x1d\xe9\xac\x43\x68\xc8\xf7\xd4\x05\xf8\x90\xb0\x80\x85\x0b\x0b\x08\x38\x41\xed\x55\x2f\x04\x4d\x42\x8e\x86\x12\x22\xb5\x9d\x35\xae\x9f\x67\x10\xd5\x05\xdf\x0c\xde\x88\xb9\xa8\xd4\xc9\xb0\xca\x55\x1c\xe7\x6a\x95\xf3\x9e\x55\x86\x22\xa1\x55\xce\x9d\x55\x86\x42\x6a\x95\x99\x38\x60\xe1\x35\x16\xfc\x4c\x68\x8d\xab\x19\x33\x6b\x2c\xfe\x76\x38\xee\xa5\xd4\x32\x05\xd0\x4e\xf2\x20\xda\x49\xae\xd0\x4e\xa8\x72\x9c\x43\x83\xbe\x4e\x35\x40\x51\xb2\xc4\x72\x0d\x64\xd8\x91\x13\xcb\x26\xd9\xc5\xe5\x86\xae\x6a\x63\x44\xea\x1a\x7d\xb5\xe4\xf5\xa8\x1f\xd5\xa2\xec\xbe\x23\x20\x07\xea\x3e\xde\x82\x3c\xa8\x1c\xbe\x6c\xc9\x52\xfa\x53\xe1\x48\x79\xd4\xf8\x7d\x44\x06\xbf\x2d\xf8\xba\x8b\x95\xf9\x84\xbb\x56\xe2\x6e\x99\xe0\x18\x57\x54\xf5\xeb\x07\x1f\x86\x2e\x5f\x1f\x9c\x67\x60\xfd\xc7\xdc\x2c\x4d\x12\x30\xda\x18\x89\x27\x16\xe6\xde\x22\xd6\xf4\xaf\x77\x57\xef\x10\x58\x78\xb8\x72\xb2\xb1\x6c\x44\x73\x6b\x81\x72\x87\xbe\x9d\x60\x98\x61\x28\xdb\x94\x7f\x04\x3b\xf5\x65\xa9\x2c\xd5\x01\xc9\xdc\xf3\x86\x72\xa5\x73\xdf\xc6\xdd\xaf\xbf\xf1\x1b\xd0\xe9\x91\xc4\x4a\x64\x34\xd5\xd5\xdb\x36\xfa\x70\xef\xf2\xac\xe9\xfa\x1d\xc7\x9c\xe0\x45\x9b\x4b\x90\x09\x21\x38\xea\x0c\x0c\x80\xa0\x6d\xc3\x30\x0d\x57\xd6\xd6\xb3\x14\xb3\x6a\xbe\xdf\x27\xe2\x9f\x90\x47\x93\x76\xf9\x29\xa4\x8e\x05\xac\x8b\x69\x1b\xe7\xcc\x95\xfa\xcf\x93\x94\xa8\xd0\xe9\x17\x1b\x96\xad\x5a\x6e\x45\x15\x7e\xd0\xd1\xa2\xd3\xe1\xc4\x4d\x11\xc1\x1a\x84\xc6\x37\x45\x01\xf1\x1b\xb2\x37\x92\xda\x98\x55\x5c\x34\x09\xeb\x46\x5a\x7f\x6a\xe7\x46\xa3\x26\xf1\xc7\x39\xff\x8e\x4c\xce\x4f\x4f\x6d\x28\xe4\x8c\xcf\xad\xfa\xdb\xe3\x3a\x98\x82\xce\xaf\x12\x86\x73\xad\x75\x6f\x1a\x19\xb0\xf5\xf0\x89\x65\x99\xb2\x83\x4a\xd0\x88\xf6\x9d\xad\xf6\x61\x80\x1c\x29\xb8\x00\xb0\x38\x76\xaa\x59\xbc\x02\xf1\xb5\x66\x76\xe8\xf3\x81\x98\x57\xe2\x9b\xad\xc5\x45\x63\x7d\xe3\x0b\xf2\x36\xa1\xda\x43\x03\x79\xf1\x2d\x79\x68\xd7\x83\x67\x54\xaf\x76\x5c\x88\x26\x08\x0f\xcf\x1a\xf9\xb5\xaf\xdd\xa6\x95\x29\x33\xdd\xef\x93\x2f\x69\x39\x95\x2d\x83\xa5\x32\x04\xd4\x27\xf8\x9c\xd9\x7c\x90\xf7\xa9\x5c\xba\xcf\xa4\xfd\xf6\xc3\x86\x17\x9f\xf2\x0b\xef\xd7\x94\x0e\x2a\x21\x54\x02\x2b\x57\x21\xf0\x6f\xcb\xc7\x5b\x5a\x96\xe9\x2d\x35\x2f\xcc\x13\x48\x32\x56\xa5\xcb\x8f\xce\x2b\xf8\x8d\x70\x47\x71\x95\xdb\x32\x08\x9d\x27\x9c\x2c\x8b\xbc\x2c\x32\x8a\x64\xff\x4a\x3a\x03\x91\x41\xf0\xc9\xb0\x44\x27\x9f\x36\x2c\xa3\x27\x4a\xf0\x62\xf9\xad\xf4\x1c\x9b\x9e\x44\x23\x9d\xfa\x0e\x04\xd2\x06\x2b\x1a\x1a\x88\xf0\x52\x61\xb2\xf9\x23\xfb\x43\xc2\x5d\xc1\xfd\xee\xed\x0f\x93\x83\xc4\xdb\x21\xfc\xc0\x46\x68\x6f\x03\xdb\x82\x3e\x8b\x17\xc9\x81\xfa\x29\x7c\xec\x69\x35\xde\xb1\xbb\xa2\xfa\xbd\x4d\x3e\xd8\x20\xd4\x34\xf6\xe0\x5e\xbb\x53\x6c\x11\x12\x8a\x80\x7a\xb9\x56\xaa\x16\x2f\x31\x8a\x16\x4e\x42\x83\xcf\x09\xb7\x98\x07\x98\xc9\x97\xb8\x40\x17\x85\x97\xb8\xff\xed\xaf\xea\x12\xa7\xa4\x1d\xc4\x5e\x5c\x54\xd3\x42\x06\xb1\x87\x87\xd2\xae\xc0\x2e\xaa\x29\x93\x15\x70\x8a\x2e\x52\x6f\x78\x9f\x3b\x09\x3d\xad\x1d\x20\x47\x30\x20\xf1\x5b\xba\x6b\xa4\xca\x00\x68\xa1\x69\x38\x40\xe8\x74\x4a\x68\x57\x4d\x9b\xff\x93\xc5\x71\x61\x7b\xbd\xf4\x64\xfd\xa1\x8c\xcb\x31\x70\x14\xd6\x55\xb2\x34\x8c\x46\xf4\x22\xcd\x7f\x5b\x9d\x28\x16\xe0\x44\xc6\xce\x9d\xfc\x36\x1a\xf1\x51\xf4\xdb\x93\x1b\xba\x4c\xeb\x92\x9e\xdc\x17\x35\x3f\x49\x77\xbb\x93\x4d\x5a\x8a\xe2\x6b\x96\xb3\x72\x43\x57\x27\x56\xa7\x21\x0e\x04\xcb\xab\xe2\x84\x55\xe5\xc9\x9a\xf1\xb2\x92\xe7\x63\x7c\xf2\xa1\xb0\xcd\xe7\xba\x87\x22\x3f\x59\x41\x7c\x20\xcc\x4c\x16\x2d\x4f\x56\x35\x97\x9e\x9b\xb6\x5d\x2c\x3a\x3f\x59\xa6\xf9\xc9\x32\xcd\xb2\x93\xff\x06\xfb\x50\x82\xfe\x5b\xb4\x50\x6d\xe8\xc9\x7f\xdb\x0d\xfb\xdf\x27\x92\xba\x9c\xec\xd2\xb2\x14\x83\x2b\x64\x09\x30\x89\x3e\x73\x90\xf7\x9e\x59\xa8\xbd\xff\x3e\xd9\x14\xc5\xc7\x72\x1c\xa1\xa6\x25\xa1\x9e\xe1\xda\xbd\x7f\x6a\x71\xff\xd4\xa7\xa7\x82\xc9\x2f\x48\xc2\x00\xa2\x4e\x39\xd0\x09\x6a\xa2\xa2\x0e\x9d\x3f\x67\x7c\x2e\x3f\x03\xa8\xbe\x8d\xc6\xc7\xdc\x48\x10\xad\x92\x28\xca\x2c\x31\x44\x98\x8d\x59\x09\x90\xe6\x1c\x8c\xc8\x03\x21\x3d\x37\xd2\x27\xe2\x4a\xdd\xe2\x19\xca\x5c\x13\x4d\xcb\x0e\xa8\xf3\x78\x0d\xd3\x38\x1e\x56\x28\xb8\x0d\x7e\x2c\xaa\x8d\x58\x7a\xc5\xbe\xc0\xc2\xf9\x9b\x61\x7c\xf2\x6a\x0d\xdf\x62\xc5\x56\xaa\x98\x53\x0a\x03\xef\x74\x02\x93\x81\xaf\x75\x43\x4f\x60\xef\xac\x4e\x6e\xee\x4f\xe4\x84\x45\xfb\x15\xaf\xe9\xc9\x9a\x17\x5b\x67\x2f\xa8\xa4\xa6\xa0\x10\x72\x92\x9f\x60\x68\x00\x2a\xd9\xc1\x54\xc5\xc9\x4d\x7d\x73\x93\xd1\xb1\x1b\xbc\xf0\xa1\x23\x6f\x13\xda\x65\x92\xc5\x02\x29\x73\xa3\x28\x6c\xb9\x07\x2d\x88\xe7\x4a\x96\x51\x81\x9c\x2c\x18\xc8\x99\xce\x07\xe5\x98\x95\x8a\x85\x58\x5d\x14\xb3\x12\x58\xb6\x39\xd1\x31\x44\x53\xf7\x91\xd1\xfe\x24\x06\x7c\x11\xd9\x40\x7a\x33\x83\x8f\x2e\x07\x78\x94\xc3\x0e\x70\x38\xad\x74\x09\x0b\x55\xf5\x5d\x5a\x89\x2b\x53\xf0\x89\xb3\xca\xc9\x46\x9b\x6b\x90\xb0\x5b\x21\x09\x04\x9c\xaf\xce\x3d\x7b\x88\x9b\x31\x55\x29\xd4\x3a\x2f\x6d\x12\x56\x5c\x84\x4b\x80\x45\x45\xe1\xa5\xd6\x5d\x52\x1d\xc2\x7c\x70\x29\x2d\x80\x74\xa5\xe3\xcb\x77\xef\x16\x2f\x3e\xbc\x7f\xbd\x50\xfe\xc4\xef\xde\xbf\x7d\x77\x1d\xc7\x89\x37\x48\x96\x9f\xd4\xfb\x7d\x38\xee\xa4\x6e\xcd\xa7\x8d\xe4\x61\xc0\xff\xac\x6f\x9d\x9f\x31\xb6\x51\xd3\x0b\x85\xe9\xa0\x76\xf3\x28\xb0\x40\xc7\x8d\xce\x59\xd0\xe3\x87\xe8\xa4\xc2\x3d\x7a\x9c\x4e\x1d\xd4\xd8\x9d\xf8\xc6\xbd\x58\x5b\x52\x29\x04\x77\xf8\xf2\x28\x0d\xc8\x9a\x9e\xa5\x7f\xbf\xaf\x42\x81\x4b\x42\xe0\xeb\x13\x48\x77\xbc\xd8\xb2\x92\x12\x3a\x5e\x02\x5c\xa8\x17\x08\x09\x2e\x70\x5d\x87\x65\x1d\x09\x40\x07\x55\x40\x50\x13\x12\x18\xc2\x91\xbd\x2b\x64\xb4\x80\x4b\x43\xde\xb5\x6f\x6c\xda\xb1\x82\x54\xc8\xc7\xf7\x90\x7c\xfc\x91\x88\x1b\x05\x42\x79\x52\x00\x8c\x87\x54\x43\xce\x8a\xb9\xbb\xee\x7f\xb5\x18\x3c\xd6\x40\x4e\x66\x74\x7e\xce\x0d\x9a\xc9\xb9\x16\x33\xb8\x8e\x8e\x07\xe4\x17\xe5\xef\x06\xc7\x9b\x10\x52\x59\xad\xab\x9c\x49\xae\x9c\xdf\x4a\x7f\xf8\x0c\x71\xc9\x04\xb3\xd6\x50\xde\x2b\x25\xbb\x31\xc0\x3c\xc8\x0e\xa6\xb9\xc2\x1a\x2b\xa7\xa1\x78\x99\x4f\x69\xf9\x53\x49\x57\xd3\xe1\x99\xd6\xa1\x26\xa2\x6f\xc1\x15\x5c\x88\xd9\xc9\x3f\xd1\xb4\x02\x38\x22\xed\xc1\xad\xc7\x86\xf5\x28\x71\x81\xa6\x94\x14\xf8\xc1\x7a\xf8\x4d\x29\xd6\x5e\x79\xd3\xc2\x19\xe8\x0b\x5f\xf8\x72\x00\xd9\x30\x23\xd0\xa5\x65\x94\xc0\x23\x58\xf5\x35\xde\xa6\x2c\x37\xb3\x92\x19\x0f\xf5\xdc\xa6\xd2\x21\xb0\x31\x53\x7d\x68\x1a\x5c\xa1\x66\xe1\xe3\x19\x6d\xc3\xce\xcc\x20\x3c\xfa\xae\xe2\x49\xe7\x99\x49\x12\xeb\xb5\xe8\x96\x98\x76\xea\x34\xda\x9e\xe0\x3e\x54\x79\x2e\xe5\x9b\x06\x5b\xe2\x3f\x0d\x80\xfb\xe1\x1c\x80\x55\xf4\xda\xb1\x4e\x22\x72\x37\x5b\xe5\x68\x04\x5e\x8f\x42\xca\x16\xf7\x8c\xe0\x65\x8c\x17\xb2\x01\x15\xb0\xd8\x5e\x67\xe7\x85\xad\x5b\x8c\x46\xb2\xdd\x8a\xd0\x59\x21\x6f\x1d\x27\x47\x2a\xe6\xe4\x56\xc1\x86\x22\xb3\xb7\xe3\x78\xc8\x12\x8e\x2b\x74\x8e\xec\xde\xce\x61\x7e\x16\x20\x42\x61\x57\x99\x44\x30\xf6\x22\x1d\xff\xb5\x60\x39\xb4\x0e\x90\x45\x3a\x64\x98\x59\xbc\x28\x2f\x76\x65\x7a\x87\xfd\xa0\x93\xe9\x3d\x56\xc6\x7f\x70\xd3\xb7\x2e\x0c\x9b\xb4\xdc\x44\xb8\xe6\x99\xcc\x2a\x7e\x00\x03\xe9\x90\x03\xb1\xe3\x3c\x61\xe0\x46\x0d\xe2\x1b\x35\xb7\x2f\x60\x9f\xe3\x4e\xc8\x8c\x99\xce\xa6\x3f\xb6\x5a\x5e\xaf\xaf\xc8\xc2\x09\x56\x7e\xf5\xf4\x60\x65\x1d\x0b\xfb\x48\xb6\xb0\x63\x62\x7b\xff\x5e\x39\xa4\x5d\x1f\x4e\xbd\xb7\xa9\xa7\xcb\x81\xc1\x2a\xbf\x70\xea\xc4\xb0\x70\x52\xb9\xbf\xfe\x50\xca\x28\x46\xde\x98\x0f\x63\x69\x7a\xbf\x9b\x1b\x18\x1b\x4c\x72\xdf\x4e\x73\x03\xe3\xb2\xad\x38\xfb\x8e\xe3\x5b\x8e\x95\xf5\xc6\x80\xe6\x0e\xcf\x40\xc0\x8f\x63\x17\x60\x84\x59\x50\x2b\x47\x65\xe7\x01\x61\x33\xdf\xe7\xcf\x99\x77\xd0\x82\x2d\xba\x2e\x35\xcf\xb6\x01\x78\x9a\xab\x5f\xea\x34\x03\x68\x26\x0f\x4f\xcf\xc1\x11\x69\xe5\x55\xcf\x9f\xb2\xc7\x2a\x47\x97\xfe\x25\x19\xed\x54\xd0\xf8\x93\x72\x3c\xf6\x47\xd0\x1f\x88\x7c\x7f\x34\x12\xfc\xd7\xef\xe5\xb6\x3b\x6f\x18\x57\x5a\xf0\x40\x1a\xb0\xcf\x53\x19\x55\x42\x5c\x3c\x92\xf3\xf0\xa1\xce\x2e\xe8\x78\x57\xec\x12\x34\xf6\x01\xf2\x34\xf6\x9c\xb9\x41\xa7\xd4\x20\xf0\x48\x9f\xe2\x29\xf5\x30\xf5\xaa\xa6\x81\x5c\x91\x1d\x97\x8c\xa0\x52\xbb\x83\xb9\xd0\x7d\x34\x2b\x7a\xa1\x63\xc4\x58\x5a\x60\x97\x66\xa7\x77\x04\x1c\x31\xac\x16\x56\x4c\xc0\x36\xa3\x52\x91\x5d\x8b\x82\x74\xd5\x46\xec\x14\x97\x65\x40\x74\x62\x01\xe1\x8c\xd3\x65\x71\x9b\xb3\xbf\x51\xae\xdc\xe2\x79\x29\x53\x6f\xe2\x82\x4c\xce\x0b\x0b\xfb\x39\x1a\x59\x32\x21\x98\x40\x40\x05\x92\x0d\x97\x83\xd2\xdc\x83\x09\x27\x29\x00\x72\xc8\x84\x6a\xe2\x28\x2a\xf4\x5a\x9b\x97\x0d\x5c\x53\x9a\xd6\x1c\x08\x1c\xcf\xae\x05\x8f\xb4\xbd\x9f\x5a\xa8\xa5\x7e\x2e\xb6\x28\x52\xe3\xe6\x9d\x71\xd7\x04\x98\xd7\x8c\x08\xd2\x51\x23\xbc\x74\x82\x3b\x72\xc1\x2d\x64\x71\x9c\x09\xc6\x32\xd7\xb0\x3b\x13\xc8\xa9\x06\xf9\xb2\xdf\xae\x93\x0c\x5d\xd4\xe3\xb2\xbe\x29\x2b\x9e\x64\x36\xbd\xf9\xb4\x1e\x2c\x25\x29\x83\xcb\x33\x9f\x65\x73\xbc\xd6\xb8\x71\xee\x0b\x5c\xa3\x01\x1b\x91\x68\x3a\x85\x2c\xd1\xd3\x68\xb4\x34\xa4\x7a\xc4\x0c\xf0\x70\x8a\xa3\xd3\x08\x89\xa5\x38\x0c\x50\x17\x76\x32\x26\x0f\x0d\x0e\xf0\x42\x35\xb0\x42\x4e\xa6\xc0\x4a\x74\xe0\x3a\xf9\x93\x0c\x24\x97\x76\x8a\x9b\x80\x8f\x95\x4c\x6b\x28\x63\xd1\xb9\xaf\xb6\x4c\x49\xe1\xc2\x6d\x8a\x5b\xc0\x41\x78\xef\xe8\xb1\xa5\xa2\x38\x4b\x98\x1b\x07\x9d\x5b\xad\xce\x3b\x5e\xdc\xf2\x74\xbb\x4d\x2b\xb6\x74\x74\x6a\xe5\xc9\xcd\xfd\xc9\x4f\xef\x5f\x9f\x2c\xd3\x3c\x2f\xaa\x93\x1b\x7a\x02\x9a\x9a\x4f\xac\xda\x30\x27\x36\x7a\x7c\xf2\x2e\xa3\x69\x09\x6f\x41\x09\x23\x63\xa5\x73\x69\xb1\x2e\x2b\x9a\x42\x9c\x34\x23\x29\xa8\x41\x19\x04\x2d\x10\xd6\xb8\x4b\xe4\x5e\x2c\xc1\xdc\x3e\x39\x99\x60\x46\x26\xb0\x05\xf9\x53\xd1\xfe\x38\x92\x12\x53\x88\x4d\xcd\x47\xa3\xc6\x34\x5a\xa1\xa3\x5a\x14\x4c\x43\x1c\xb3\xd1\xc8\x04\x08\x12\x42\x58\xa3\xec\x66\xcf\xfe\x32\x7e\x76\x6b\x39\xe8\xb2\x6b\xae\x72\xb8\xdc\x5c\x1c\x25\x19\x41\xc5\x03\x11\x54\x5c\xd1\xf5\x09\x66\xa3\x33\x64\xf9\x57\xab\xda\xd1\xc7\xa6\x40\x08\xd0\xbc\x06\x39\x29\x02\x9a\xa3\xda\x5f\x4c\xea\xc9\x78\x21\xcb\x47\x22\xf3\x43\xcf\xf2\x39\x79\x48\x25\xfe\x5e\x83\x73\xc2\x91\x56\x1b\x1f\x07\xf9\x2f\x04\x5a\x45\x35\xe5\xea\xe4\xb3\x62\x3e\xe8\x74\x98\xc6\x71\x92\x42\x47\x69\x03\x89\x20\x66\xc5\x7c\xbf\xd7\x1d\x2b\xe0\x3f\x85\xba\xd8\x48\x67\x52\xeb\xb2\x95\x22\x2c\xca\x13\xee\xc8\x7c\x99\x93\x3e\x3b\xe0\x90\x9c\x44\xe0\x41\x09\x31\x40\xe2\x8f\xd9\x64\x8e\x0e\xa4\xdd\x95\xd0\x39\xcf\x54\x4a\xff\xc3\x9c\x85\x2e\xec\x70\x34\xca\x9c\xf5\x58\xe9\x2d\xfb\xcc\xf2\xf2\x99\x89\xce\xdc\xf1\xe2\xf3\xfd\xb1\xb5\x96\x45\x5e\xa5\x2c\xa7\xfc\xc8\x6a\xcb\x62\x77\x4c\xa1\xad\x60\x07\x1f\x2d\xc7\xca\x53\x2a\x8e\xee\xb1\x83\x95\x6e\xa9\x47\xcf\x4c\x0c\x42\xd0\xb6\x63\xd7\xdb\x82\xe5\x1e\x59\x01\xc6\x73\xe4\xc2\x79\xdf\xf4\x69\x75\x96\x05\xa7\x8b\xa7\x6d\x06\xa9\xd0\x56\xfe\x02\x07\x81\x9d\xfc\x25\xdb\xdd\x1f\xb5\x60\xaa\x3c\xcd\xeb\x2d\x3d\x6e\x89\x55\x8d\xd3\x27\x6d\xce\x02\x70\xcd\x9e\xd2\xfe\x56\xde\x66\x8b\xa7\x8f\x4c\x2a\x0a\x17\x6a\xe1\x14\x54\xc7\xd1\x0b\x21\x15\x01\xc7\x16\x57\x2a\xc8\x23\x77\x01\xfd\x5c\x3d\xe3\xe5\x5d\x0f\x46\x96\x53\x50\xd0\xa9\xd3\x62\x7d\x54\x83\x26\xb0\xe0\x09\x68\x54\xf8\x0e\xdf\xe3\x1b\x7c\x8b\x17\xf8\x13\xbe\xc2\xd7\xbf\x56\x4e\xe9\xad\xf0\x56\xed\xf5\x07\xfb\x19\xa7\xc3\x09\x0e\x2a\xac\x4f\x2a\xcd\x91\x34\x87\x9a\x7c\xc9\xd3\x2d\xfd\x54\xf0\x8f\x4f\x6c\xbb\x55\xef\x60\x1f\xca\x9c\x7a\xff\x4e\x7c\xd6\x37\xe2\x53\x1f\xd9\x0d\x3f\x6a\x0a\x2f\x34\xa9\x7e\x72\xfb\xf9\x51\xed\x4b\xd2\x7e\x54\x83\xec\xc8\x06\xd5\x35\x70\x54\x9b\xc5\x51\x6d\xb2\xf2\x4a\xde\x18\x47\xb5\x99\x1e\xd5\xe6\xa5\xbc\x56\x8e\x6a\xb1\x3c\xaa\xc5\x1f\x53\x21\x7d\x3e\xad\x5d\xa7\xce\xe1\xd1\x1e\xdd\xe2\xe5\xc1\x76\xde\x48\x52\xf9\xb4\x41\xba\x95\x0e\xb6\xce\xe9\xb6\xb8\xa3\x97\xc7\x1e\xb4\x72\xac\x2b\x1c\x6c\xb5\xce\xd9\x2f\xdf\x1f\x3f\x5a\x59\xfc\x91\xfd\xf4\xb4\x05\x50\xe5\x1f\x39\xa8\x96\xf3\x38\xaa\xd9\xfa\xc8\x4d\x65\xd8\x93\xa3\x5a\xcd\x8e\xdf\xfc\xef\xe4\x45\x74\x54\xb3\xcb\xa3\x9a\x95\x2f\x9e\xd2\xee\xfa\x48\x22\xc8\xe9\x93\x48\xf8\xea\xb8\x55\x80\x5a\xbf\xd7\xec\xd2\x51\x2d\x6f\x8e\x1c\xb0\xe6\xa9\x8e\x6a\x74\x77\x54\xa3\x57\x0e\x7b\x73\x54\xb3\xdb\xa3\x9a\x5d\x3c\xf9\x66\xb9\x3b\xae\x5d\xf0\x4d\xc8\xab\x97\xc5\xb1\x6b\x7b\x37\xb6\x55\x1e\xd9\x67\x96\x45\x3c\xaa\xe5\xfb\xa3\x46\xac\xe8\xdc\x93\xd7\xf9\xe6\xa8\xd6\xa5\x3a\x53\xee\xb9\x6b\xcd\x69\x1e\xd5\xfe\xed\x71\xdb\x43\xb3\xa3\x47\xb5\xb9\x38\xaa\xcd\x77\x92\x67\x7d\xf2\x0e\xf9\xe4\xb4\xde\xcf\x22\xbe\xbf\xfe\xd3\xbb\x23\x1b\xbc\x3a\x6a\xb8\x45\x0e\x1a\x78\x15\xeb\x74\x74\xd3\x7e\xb5\x83\x3d\xc8\xa8\xd4\x23\x5b\xbe\x56\x41\xac\x4d\x83\x1e\x55\x17\x78\x12\xf4\xf1\x4a\x83\x63\xb9\xff\xae\x78\xfc\x0d\x8d\x69\x8e\xd1\xac\xc0\xa9\x8c\x29\x26\x84\xa4\xda\x3c\x39\x19\x38\xc6\x26\x1d\xe7\x0b\x38\xed\xde\x13\x09\x18\x19\x69\x9f\xf5\x88\x10\x52\xc6\xb1\x61\x9b\x75\xc0\x74\x81\x20\xe9\xa3\x83\xab\xa6\xd6\xd1\xe2\xf9\x07\x5e\xc2\xc8\x3a\xed\xd7\x81\xf6\x53\x14\xc7\xe9\x81\xf6\x4f\xcf\xfe\x47\xf0\xb5\x04\x93\x97\x5e\x75\x2c\xc9\x67\xe5\x1c\xe7\x00\x35\xa4\xd4\x71\x99\x1e\x5f\x36\x28\x3f\xb1\x6a\xb9\x49\x4a\xf4\xb0\x4c\x4b\x6a\x42\x78\xa7\xf0\x4b\xc5\xed\x4e\x35\x17\x2e\x47\x0e\xaf\x94\xb2\xca\x79\x25\x01\x39\xe9\x0b\x3d\x04\x84\x27\xaa\xac\x54\xa3\x4c\x2d\xb8\xbd\x8e\x52\xc2\x6b\x83\xa1\x84\x57\xe4\x4d\x5a\x6d\xc6\x5b\x96\x27\x4b\xbc\x46\x78\x43\x26\xe7\x9b\xe7\xab\xf3\x8d\xd6\x32\xee\x08\x4d\x8a\xd9\x66\x8e\xd3\xd9\xc6\x4e\x65\xa7\xa7\xb2\x6b\xcc\x50\x44\x7d\xd9\xb3\x59\xe0\x69\x5b\xf2\xb1\x9f\xf0\xa2\xf0\x3e\xcc\x74\x22\xab\xae\xd2\x8a\x7a\xd3\xbb\xa5\xd5\x07\xb6\xa5\x09\xc2\xa9\xfd\x1b\x0d\x54\x7b\xba\xe4\xa4\x69\x94\x29\x17\x72\x98\x88\x1d\xbc\x9a\x4e\x20\x05\xd1\xf4\x0c\xab\xe5\x9d\xfe\x0e\xcb\xa5\x9d\xfe\x2b\x96\x0b\x39\xfd\x9f\x18\x56\x69\xfa\xbf\xb0\x54\xbc\x4c\xff\x0d\x1b\x4c\xa3\xff\x6d\xbc\xd3\xa7\xff\x07\x03\x0c\xe9\xf4\xff\x62\x31\xbe\xe9\xd9\xa4\xe9\xf8\x40\x28\xed\xed\xa9\x81\x08\xe6\xdf\x4d\xd0\x69\xc2\x9f\x4f\x8e\x50\x1d\x5a\x95\x5b\x80\x10\xb4\x90\xb8\xbf\xa6\x32\xd1\x68\x82\x02\xea\x81\xaf\x4f\x1d\x8c\xe1\xac\x93\x36\x95\xee\xf7\x2a\xd3\xbc\xf5\x68\x00\xa3\x77\x3b\x07\x59\x1c\xe7\xed\xad\x44\x91\x75\x82\x10\xf3\x49\xac\x7d\xc5\x21\x4b\x62\x4a\x4c\xc1\x1d\x84\xb2\xb6\xaa\xee\x2d\xce\xaa\x4e\xce\x0a\xc9\x29\xe2\x38\x29\x09\x33\xda\xf4\x0a\xa1\xef\xc8\xc4\x50\x9b\x59\x39\x1f\x70\x37\xca\x80\xad\x13\x7f\xe0\x95\x34\x31\xa4\x44\xbb\x9f\x20\xcc\xc1\x41\xab\x90\x75\x52\xc8\xa4\xaa\x35\xfc\xa7\xa7\xe5\x77\x64\x72\x8e\xd2\x59\x39\x27\x34\x11\xff\xa8\xd1\x37\xda\x0d\xb7\xb3\x0a\x15\x42\xa2\x75\x58\x00\x59\x16\x73\x41\x25\x55\xf3\xc6\x7f\xb7\x3a\xd1\xfb\xbb\x58\x9f\xfc\x90\x56\x14\xa5\xe0\xa0\x27\xfe\x4c\x2a\xe7\x84\x75\xab\x4b\xfb\x1d\x98\x06\x20\x25\x77\x0a\x66\x2e\xa7\x14\x3e\xda\x40\x52\xa3\x38\x8e\x16\x8b\x68\x48\x88\xb6\xe6\xb1\xfc\x36\x99\xe0\xdf\xa1\x38\x4e\xd2\x59\x3d\x27\xfc\x82\x26\xd5\xac\xd6\x33\x9f\x56\x10\xce\x69\xa2\x7f\x60\x97\x56\x17\xb3\xb9\x34\x01\x98\xbf\x8e\x3c\x6c\x9e\x6e\x0c\xcf\x02\xa5\x9d\x74\xf2\xc7\xb8\x08\x1c\x01\x97\xff\xf8\x19\xcb\xc7\x2f\x7f\xfa\x11\xc0\xef\x16\xef\xde\xbf\xfd\xf0\xf6\xc3\xcf\xef\xae\x16\x57\xff\xf9\xe1\xea\xc7\xeb\x57\x6f\x7f\xbc\x8e\x63\x3a\xbe\xfa\xf1\x4f\x63\x78\xf2\x83\x2d\x72\x3d\x7e\xa9\xda\x35\xe6\x7c\xef\x98\x32\x5a\x26\xba\x84\xfd\x34\xf8\x41\xe7\x3b\x9a\x3e\x2c\x8b\x7c\xcd\x6e\x6b\xc3\xdd\xb8\xbc\xce\x19\xfe\xc4\x99\x89\xcf\x92\x07\x3c\xa4\x42\xd3\x6e\x4d\xca\xd5\x4a\xf9\xa3\x04\x61\xd6\xe5\x36\x70\x20\xb2\x94\xa3\xf9\xac\xda\xb0\x72\x0e\x99\x41\xa5\x4e\x98\x96\x5f\x67\x6c\xaa\x35\xfe\x95\xc6\x96\x7f\xa5\x51\xe5\x5f\x65\x3c\x47\xf2\x9a\x56\xbf\xec\xde\x31\xbe\xc6\xf9\x50\x9a\x06\xe0\x98\x4f\xc1\xd4\x00\xc1\x9d\xfe\xce\x7f\x7c\x73\xbb\x17\x66\x37\x17\xaa\x0e\x36\x51\xd6\x40\x40\xf5\x75\xe2\xb8\x50\x8b\xa2\xbb\x6e\x21\x4e\xb1\xae\xe9\xb0\x82\xac\xba\x16\xda\xbb\xb2\x70\x18\xe1\x1b\xad\x12\x37\x1a\xa7\x69\x59\xe4\x8b\x4f\xac\xda\x2c\xa0\xf9\x05\x98\xc6\xf3\xc5\xc2\xdc\x71\xd4\xff\xe4\x0d\xc0\xd1\xab\xac\xd4\x3f\xe5\xc6\xa1\x63\xf5\xd3\xfb\xd7\x57\x3a\x3a\x43\xc6\x65\x3a\x73\x74\x9c\x89\x15\x04\x73\xb7\x98\xbe\xdc\x74\xeb\x9d\x80\xa5\x1f\x58\xb9\x4b\xab\xe5\x46\xa7\x05\x43\xd2\xa3\x77\x68\xe0\x4d\x07\x62\xda\xcd\x97\xa4\x52\xf0\xe5\x24\xc2\x3a\xfe\x73\x58\x9c\x7b\x79\x12\x68\x12\xa5\xe5\x7d\xbe\x8c\xfc\x9d\x80\x1e\xf8\xf8\x26\x5d\x7e\xbc\xa9\x79\x4e\xb9\x89\x9e\x4e\x22\x15\xe1\x12\xc9\x3c\x91\x54\xe2\x2e\xb7\xda\x5b\x43\xee\x13\xcf\x75\x3b\xdc\x1a\x1f\x2f\xc4\x4e\x86\x95\x06\x68\x2b\xd5\xaa\x6a\xb3\xc8\x75\x8c\x0c\x66\x48\x41\xe2\x55\x8e\x07\x5a\x71\xd4\x09\xb2\x76\x4c\x7b\x82\xe6\xfe\xe8\xbe\x19\xcb\x44\xe3\x38\x8c\x12\x25\x15\xe5\x96\x05\x52\x0f\x14\x1b\x42\xdb\xd7\x7d\x1c\x77\x39\x00\xd7\x87\x54\xde\xfe\x82\x13\xb2\xbf\xcc\x16\x14\x8f\x8f\xbb\x5f\x5b\x76\xc0\xc7\xbd\xed\x9e\xe8\x86\xd7\x4a\xfd\x62\x6e\xdf\xdb\x8c\x6d\xb7\x94\x3f\xbb\x4b\x33\xb6\x4a\xab\x82\x1f\xe9\x7c\x07\xcc\x9e\xe7\x95\xe1\x64\x4b\x72\x22\x25\xa4\xb6\xca\x84\x3e\x42\xba\x45\x09\x10\xfe\x21\xbd\x45\x09\x14\xae\xd2\xdb\x97\x05\x57\x81\xc9\x09\x55\xce\x91\xfe\xd3\x4a\x6c\xcb\x2f\x39\x91\x56\x5f\x46\xca\xb0\x37\x6b\x4d\xf8\x18\x34\x37\xda\xb1\x3e\x49\x52\xf2\xa0\xea\x49\x6e\x89\xe5\xac\x7a\x52\x0a\x25\xac\x93\x65\x81\x5e\x48\xc3\xce\x86\xe6\x25\xa1\x33\x1d\x60\xc1\x4e\x3f\x32\x8e\x43\x2d\x24\x3e\x12\x26\xb0\xc1\xac\xfc\xc0\xeb\x6a\x73\xdf\xf6\xa1\xb6\x4d\x25\xdd\x3b\x56\x03\xe9\xb4\xdd\xaa\xcd\x77\x94\xee\xd2\x33\x3e\x7e\xf1\xd3\xf5\x87\xb7\x6f\x16\x1f\x2e\xff\x7d\xf1\xf2\xed\xfb\x79\xd0\xe3\x4a\x26\xd7\x4c\x6f\xdf\xd0\x2a\x7d\x59\x18\xf4\xdd\xd4\xbc\x30\x0f\x31\x15\x74\x46\x9d\x3f\x70\xa4\xd5\x87\x2c\x55\xdf\x68\x96\xe2\x6e\x2d\x3b\x17\x86\xa4\x8f\x9c\xc4\xcd\x33\x9b\x2d\x1f\xb3\x52\x2f\x75\x86\xe2\xb8\x96\xac\xb7\xf3\x21\x6c\x16\x5e\x49\x53\x91\xec\x66\x59\x6c\x6f\x58\x0e\xd9\x2e\x1a\x9c\x8e\x5b\xb9\x4d\x03\xde\x96\xa5\x85\xec\xd3\x32\x91\x0b\xfb\x03\xa8\xea\x90\x34\xa2\xb7\x25\x1b\x04\x03\x3a\x1e\x71\x96\x1d\x1c\x40\x36\x66\xe5\x2b\x89\xfd\xcd\xfe\x26\x78\x7f\xb4\xdf\x8b\x67\xef\x34\xf7\x03\xa8\x29\x50\xdc\xed\xfe\x50\xaa\xe1\x1c\xe1\x5c\xd1\xf6\xce\xc2\xa9\x40\x91\x42\x94\x15\x43\x47\xae\xff\x71\xfd\x14\x92\xd6\x76\xb9\x78\x92\x23\x71\x90\x57\xfa\x26\x3e\xed\x9c\x54\x3e\x15\x08\x25\xbb\xd6\x57\xf0\xbc\x95\xf6\x93\xba\x0e\x69\x5f\x0b\x88\x56\x83\x99\x98\x20\x57\xf7\xd7\x8c\xce\xb5\x53\x1b\x24\xbf\x6b\xbd\x73\x89\x42\x2e\xb9\x1b\x1d\xba\xae\x22\xd3\xad\x8b\xa7\x3c\x49\xd2\xcf\x23\x42\x83\x34\x8e\x53\x37\x47\x68\xea\x65\x86\x73\xb7\x01\x7f\xd2\x36\x90\xe6\xc4\x2f\x75\x23\xef\xbb\xbf\xbe\xb2\x3b\xce\x21\x0f\xad\xc7\x04\xdc\x7f\x94\xa3\x8e\x56\x70\x3f\xe2\xb1\x12\xb8\xc0\x97\x78\xfd\x25\xa7\x47\x9a\x8f\xc9\x0e\x7c\x71\xa5\x75\x9a\x7c\xc2\x54\x2b\x6f\xc8\xb5\x73\xc2\xa8\x67\x1a\x27\xd4\x35\xe7\x13\x3a\xbe\x74\x8f\xe0\x4a\xc3\xa7\xac\x39\xa5\x7f\xa3\xc9\x6c\x8e\xf0\x26\x84\x18\x43\x1d\x6d\xe2\x4e\xa5\x0d\xf7\xdd\xab\x37\x1a\xc5\xfb\x4d\x02\x21\xc7\x2a\x3b\x57\x41\x02\x3c\x21\xbf\xe0\x81\xa0\x32\x7b\x3e\x44\xfb\x06\x9f\x8c\x1e\x4a\x14\x59\x80\xc4\x01\xe0\x35\x15\x80\xeb\x01\x10\x0e\x80\x7b\xa8\x98\x31\x60\xaf\x1d\x3f\xd2\xad\x9b\xf4\xfc\x77\x84\x74\x88\x87\x71\x89\xbd\x30\xdd\xd9\x24\x3c\x9c\x10\xcf\x55\x9b\xa2\xc6\xce\x84\x87\x2e\x75\x55\x94\x63\xea\x85\x9f\xde\x69\x2f\x75\xeb\x92\x6e\xb0\xe7\x0a\x92\x9f\x17\xcf\x99\x0c\x30\x63\xeb\x84\xcb\x76\xa4\x4a\xf0\x12\xd6\xa7\x40\xb8\xc0\x56\xad\xa8\x1d\x66\x4f\xcf\xfc\x4c\x77\x4e\x98\x27\x74\x28\x53\x08\xe5\xa0\x80\xd7\x35\x00\xe2\x41\x7e\xcc\x69\xa7\x1f\xe6\xe5\xbd\xf3\xc0\xae\x4f\xcf\x86\x04\x5a\xad\x64\xab\x5c\xb4\x6a\x4b\xdf\xb6\x00\x63\x74\x21\xb7\xdf\xbb\x16\x20\x88\xd3\xfa\xd0\x24\x48\xf2\x9b\x5d\x38\xe1\xab\xfe\x06\x9c\xa0\x81\xbf\x8e\x26\xc3\xf4\xf3\x89\x28\x30\x22\x0c\x61\xd1\x63\x1e\xc7\xd5\x90\x54\x17\xa1\x6d\x3e\x24\xb4\x09\xc5\x3b\x4a\xb9\xc2\x4b\x03\xf8\x49\xaf\xaf\x03\x73\x20\x01\x65\xe3\x38\xc9\xc9\x19\xb0\x35\x95\x76\xd7\x47\xb2\x34\x5e\x21\x4c\x6d\x1b\x57\x7e\x1b\xdd\x0a\x13\x3c\xcb\xe7\xde\xfe\xbd\x76\xf4\x0a\x32\xe8\x4a\x45\x1e\xbf\x12\xa4\xea\xce\xc8\x59\x32\xb8\xaa\xad\xe3\xdd\xef\x2f\x1d\x75\xac\x0e\x77\x1a\x18\x69\x3d\x33\x86\x2e\x29\x9c\x59\xfc\x55\xee\x97\xce\x4d\x50\xbe\x5a\x66\x0b\xe5\x6a\x5d\xb0\x73\x58\x0c\x0b\x86\x43\xb8\x0b\x6c\x62\x60\x9a\x7b\xf4\x72\xf6\x12\xb4\xa4\xc0\x12\x69\x32\x3c\x73\x57\xf2\x73\x3b\x38\x75\x9b\xee\x1c\x82\xc1\xbb\x44\x86\xab\xac\x54\x62\x10\x97\x6d\x56\xc4\xb8\x95\xe1\x24\x59\x82\x1b\x39\x1f\x5f\xbd\xf9\xfe\xea\xfd\xe2\xf2\xfd\xfb\xcb\x9f\x21\x39\xdc\x52\x9d\x94\xf2\xb2\xea\x70\xa7\x0a\xd4\xd8\x8c\xdb\x1f\x8d\x4f\xf2\xec\x79\xe3\x26\x51\xd6\x2c\x9a\xcd\xa3\x39\x79\x9b\x84\x63\xe3\x65\xe2\x49\x5c\xba\xef\x5c\xe8\x5d\x15\x75\x2b\x03\x45\x26\x52\x76\xd1\x59\x1e\x54\x14\x6d\x83\xf0\x72\x0c\x00\x26\xf2\x0a\x20\x6f\x93\xae\x74\xd2\x1a\x1f\xf0\x2d\x13\x31\xc4\x31\xa7\xe9\xea\x6d\x9e\xdd\x27\xa2\x99\x2c\x7d\x72\x2b\xce\x90\x4e\xcf\xba\x2d\x82\x5e\xd1\x8b\xe8\xe9\xe4\xd8\x99\xf8\x17\x8e\xd3\x20\xe8\xff\x29\x9c\x7a\x4a\xd8\x88\x22\x6c\x49\xc5\x7e\xcf\xbf\x63\x17\x9c\xb0\xa9\x22\x0b\x84\x8d\x38\x3a\xa7\xcf\xf9\x39\xca\x67\xb9\x6a\x61\x4e\x42\x63\xa6\xa3\x91\xd9\x8a\x79\x83\x97\xda\xd8\x12\x86\x3f\x5e\x58\x60\xe6\xe1\x19\xa4\x07\x13\xcb\xf4\xaa\x5b\xc5\x03\xd5\xd2\x06\x96\xc4\x1f\x32\xc9\x11\x0c\x36\x3f\x3d\x43\xd8\x10\xb4\xdc\x8d\x68\xe2\xe7\xec\x3b\x32\x39\x67\x12\xbb\x25\x34\x7e\x86\x5c\xeb\x15\x33\x94\x58\x8c\x2d\x5d\xad\x80\x46\xe8\x04\xce\xad\x01\x3a\x1f\xb2\x5d\xd2\x48\x38\x5c\xe5\x40\x03\xfe\xe4\xb8\xb6\x02\x85\x5b\xcd\x6d\xd2\xd2\x7b\xad\x0c\xf4\x39\xf0\x34\x3f\xd0\x72\xf9\x03\x5d\x16\x3c\xad\x84\x80\xfa\x88\xc6\xbb\x0f\x65\x02\x20\x8b\x5e\xb3\xb2\xa2\x39\x24\xae\x96\xdc\xf9\xff\x4f\x5a\x5d\x97\x32\x83\x1d\x02\x68\xe6\x83\x25\x25\xf0\x8e\x8c\xcc\x5e\x8e\xe1\xd9\x0b\x29\x2b\x07\xd3\xf3\x75\xe8\x7e\xb8\x86\x5d\x0e\x95\xf0\xcf\x2d\x16\xca\xdc\x77\xb0\x5d\x53\xa1\xd3\xac\xe2\xb1\xda\x4a\x05\xbd\x09\x95\x8e\xba\xce\x32\xbb\xe5\xb8\xbb\x61\x71\x4e\x26\xe7\xf9\x73\x7e\x9e\x6b\xab\xbc\x3a\x92\x7a\x0f\x26\xb9\x10\x64\x94\x71\x8d\xe1\x5c\xc2\x3c\x37\x1e\x3d\x83\xfc\x93\x30\x8c\xcf\x82\x06\xa8\xbf\x43\xbb\x47\x52\xb8\x2e\x63\xe8\x4f\xbd\x54\x4c\x1a\xb0\x11\x30\xcd\x6d\xba\x3b\x66\x8a\x72\x7a\x6f\x12\x3f\xd0\x38\xd0\x9d\xd4\xd3\x69\x46\x63\xc6\xe6\xc4\xcc\x51\xbe\x13\xdc\x27\x57\x3d\x7f\x7f\x0f\xf3\x5a\xb3\xac\xa2\xed\xbc\x87\x5f\x63\x18\xad\xae\xe3\x98\x6b\xf0\x37\x33\x0a\x4e\x81\x4a\x07\x09\x56\x68\x08\x92\x4e\xcb\x11\x07\x28\xfb\xd0\x26\x65\x71\x44\x56\xb9\xd4\xb2\xd2\xf7\xf7\x7d\x69\x69\x54\xa3\xdb\xbe\x4b\x1f\xd9\xf1\xf6\x37\x22\xdf\x3f\xd2\xc8\x9a\xe5\xed\x4c\x1a\x87\xa6\x7c\x6f\x01\x8c\x75\xed\xe0\x00\x54\xb9\xc3\x7d\xd3\x3b\xca\xef\x9f\xd0\xf9\xad\xdf\x39\x2b\xaf\xfc\x06\xac\xff\xdd\x31\xbd\xa7\xf9\x53\xfa\xbe\x69\xf7\x7d\x99\x87\x7a\xbe\x39\xa6\x67\x4e\x57\xb5\x7f\x83\x5b\x6c\xc0\x47\x76\x33\x40\xb2\x70\x42\x21\x11\x9a\xa6\x13\xc8\x26\xb7\x12\xf7\xee\x5d\xf1\xb1\x27\x2f\xd1\x61\x65\x50\xf5\xdd\xd9\x45\xe5\x2a\x83\xaa\x47\xb2\x12\x3d\x7e\xf8\x2a\x27\x6e\xc0\x51\x75\xf2\xfb\x57\x30\x4a\x50\x45\xe2\x5c\xca\xa1\x05\xe4\x40\x2d\xa4\x2c\xde\xb3\xa5\x7b\x58\xc5\x13\xaa\xce\x15\x28\x4c\x96\xd5\x23\xc7\x2a\xd4\x82\x4c\x13\xa2\xdb\x61\xf9\x32\xab\x57\x9d\xa0\x71\x47\xb8\x73\x39\x98\x09\xd4\x29\x0b\xde\x3a\x8c\x77\x7e\x2e\x31\x6f\xad\xd4\x44\x13\x04\xf5\x5c\x6e\xdc\x17\x7c\xc3\xd9\xf7\x52\xc8\xbe\x87\x4b\xe2\xb2\xec\xa9\x71\xc8\x53\x02\x78\x8a\x70\x26\x95\xdb\x3a\xe3\x69\x52\x42\x00\xf5\x3a\xb1\xbe\x6c\x8d\x71\xc1\x92\x53\xaf\x73\xf6\x4b\x60\xfd\x76\xda\x36\xb0\xd4\x0a\x97\xc0\x22\xee\xd4\xa2\xa8\xac\xc0\xd5\xa6\xa8\xbb\x46\x62\x98\xbe\x5e\x60\xc7\xfd\x07\x84\x02\x25\xbc\x11\x42\x2f\x02\x9b\xa8\x02\xdc\xc9\x1e\x19\x94\x36\x83\xc0\xb7\x86\xe3\x8a\x10\xfe\xd0\x96\x62\x2e\xb1\xf1\xe7\xc7\x0f\x00\x16\x35\xed\x7c\x3a\x97\x6f\xd6\xcb\x24\x23\x4b\x5b\x42\x04\x15\xb2\xab\xbc\xa7\x59\x5e\x52\x5e\x5d\xf6\x08\x1f\x57\x96\x8c\xa8\xf2\x5a\x67\x15\x2e\xff\xc9\x25\x3b\xe2\x04\x49\x51\x22\xb4\x04\x57\x1d\xe1\x01\x3e\x84\xad\x54\xf6\x82\x15\xe9\x89\xb8\x75\x27\xd8\x60\x0a\xed\x8a\x5d\xbb\xdb\xd0\x0a\xa9\xfc\x8e\x86\x89\x16\x47\xca\x4a\xcf\x5d\x89\xe1\xf4\xcc\x27\x1f\x7a\x25\x12\x7a\x7a\x86\xcf\x64\xae\xbe\x0d\x5b\x57\xdd\xbe\x55\x4f\x4e\xe7\x9d\x3e\x69\xb0\xcf\x49\x4f\x8f\x13\x84\x69\x83\xeb\x3c\xd8\x5f\x67\x89\x27\xb0\xb0\x5e\xe9\xc7\xd7\x76\xe2\xae\x28\x17\x57\x5f\x49\x3b\x75\x8f\x59\x56\xe7\x9c\xb4\x28\x89\x6a\x35\x69\x4f\xd2\xee\x52\xb3\xeb\x4a\x1a\x1c\xb8\xee\xab\xb5\xaa\xd0\x0e\x9c\x91\xc4\x4b\xcd\xea\x1f\x8d\xb6\x60\xed\x4e\x57\xac\x73\x60\x5d\x83\xec\xf2\x7e\x0f\x28\xcf\xe0\x43\xf7\x10\xfa\x8a\x1c\x49\x41\xd7\xff\x86\xbc\xc5\x30\xbb\x9d\xfa\xb3\x84\x36\x6f\xe8\x2d\xcb\x7d\x64\xbc\x12\x25\x2e\x07\xdf\x46\x9e\xe6\xa7\xa7\xc8\xe9\x52\xb6\x0c\xb8\x03\x8e\xa5\xaa\x1a\xd3\x7c\xd5\x6d\x56\x2d\x44\xba\x5a\xf5\xef\xae\x36\x61\x54\x54\xc6\x1e\x60\x8b\xf2\x65\xda\x29\x3b\x28\x5f\x9e\x76\xe5\xd0\x4c\x71\x8f\xf2\xd8\xf8\xfc\x9a\x4e\x12\xe9\x87\xf1\xd8\xec\xc0\x1a\xe3\xe9\xd7\x3f\xc0\x66\xf9\xd8\x26\xbd\x1f\x70\x69\x49\xaf\xfe\xb6\x7d\x2b\x32\xa3\x73\xf1\x2d\x61\x57\x4d\xc3\xa2\x5c\x5b\xbd\xb8\xf2\xd5\x8b\xaf\x72\x47\xcb\xef\x09\x77\xce\xb8\x5d\x43\xc0\x47\x18\xf6\x1b\xfc\x8e\xcc\x22\xb9\x05\xa2\xf9\xe0\xa3\x84\x60\x42\xe1\x45\x6b\xf9\x7e\xcd\xe8\x3c\x8e\xdf\x69\x35\x3b\x18\xa6\xfc\x1e\x48\xb2\x26\x1f\x91\xbe\x23\x15\xb7\xb8\xc6\xef\x44\xc1\x4b\xf2\x06\xa7\x3d\x9e\x82\x50\xfd\x22\xf9\xa8\x6a\xb4\xba\x15\xac\x88\x6c\x20\x68\xa7\xd8\xef\x67\xf3\x06\x4d\x0f\x15\x48\x28\x99\xcd\x11\xbe\xb4\xde\xb9\x17\x74\xaa\x7b\xa3\x48\x7a\x69\xff\x95\x5c\x3a\x76\xb7\xbf\x3e\xc5\xee\xe6\x86\xfb\x1f\x63\x7c\xfb\xc7\xd8\x5a\x95\xdd\x4d\xe2\x62\x7c\xb1\x8d\xb1\x03\xda\x10\x98\xf0\x21\x8f\xbd\xe0\x0a\x7c\x33\x0c\xb5\x87\xc5\xc2\x0e\x78\x21\x1d\x4d\x00\x2d\xeb\x55\x2e\x3a\x60\x45\xde\xa3\x6a\x1d\x7b\x15\xc7\x7e\x9d\x04\xb0\xd0\x8b\x8f\xf5\xee\x80\x32\xd6\x6f\x40\x61\xc1\x4a\x96\x67\xd5\xf5\x42\x71\x6e\x48\xaf\xe2\x80\x42\x9e\x89\x0a\x70\x54\x7c\x70\x3e\xea\xe4\xba\x94\xca\x0f\xe5\x78\x86\x12\x93\x63\x12\x53\x1c\xad\x59\x9e\x66\xec\x6f\xf4\x07\x93\x77\x12\x79\xce\x2d\x62\x36\x36\x51\x73\x78\x46\x2d\xe9\xf1\xc1\xe4\x6d\xf4\x26\xe9\xa4\x7b\x56\x59\x36\x58\xdb\xef\x27\x77\x37\x1e\x7b\xda\xc6\xd3\xc1\x8c\xff\xcc\x47\x6c\x77\xff\x2b\xcf\x97\x6b\x94\xfe\xa7\x9d\xe8\x97\xcf\x4e\x47\x07\xfe\xd3\x4e\xed\xc1\x25\x09\x01\xdd\xea\x6a\xa5\xd5\xc1\x81\x4b\x17\x17\x79\xdf\x75\x7e\xa8\x36\xdc\x70\xb2\x01\x05\x28\xff\x6d\xdd\x5e\xce\x95\xae\x34\x5f\x41\xb4\xa6\xf5\x58\x42\x0d\x2e\xd6\xeb\x43\x33\x90\x5c\xe2\xa1\x25\xd8\xa4\x21\xb1\xa1\x4f\x97\x4e\x7f\x8d\xbf\x4b\xc8\x91\xe3\xf8\xa0\xc5\xe3\x3c\x57\xfe\xbe\xf7\x55\x8b\x5a\x1a\x7c\x91\x23\x91\x29\x0f\x7b\xc7\x7c\x1d\x87\xd7\x1e\xd7\xfa\xbf\xcf\x82\xf8\xc6\x51\xda\x45\x0e\x37\xaa\x9a\x5b\xf0\x0b\xd5\x6e\x65\xce\xb5\x79\x7c\x3e\x7c\x69\xe0\xa0\x60\xe0\xa8\x66\xb9\x7b\x86\x72\x93\xf9\x1f\xfa\xb5\x3d\xf9\x2a\x52\x19\x0f\x61\xf2\x60\x42\x46\xd5\x1e\x0b\x6e\x2b\x03\xb0\xca\xc8\x15\x9e\x04\x6d\x57\xb2\x85\x9c\x15\x08\x49\x48\x3d\xa0\xeb\x7d\xc2\x94\x3c\xd1\x5d\xe9\xa8\xa7\x99\x43\x42\x62\x08\xb4\xbd\x6f\x46\x61\x80\x77\x35\x31\x57\x58\x94\x16\x42\x3f\x63\x51\x8e\x99\xd7\x98\x53\xd0\xae\x2d\x94\x6a\xc9\xf1\xc7\x34\xe6\x97\x0d\xb7\xb7\x49\x4b\x5d\xc0\xe7\xa7\xbc\x96\x42\xb4\x70\x14\x19\xeb\x23\x6c\xe0\x3f\xb3\x6a\xa3\xc2\x1c\xfa\xf7\x8c\x5f\xce\xdb\x3e\x2c\x5f\x72\xc8\x34\xad\x97\xf2\x28\xe6\xee\xcc\xcd\x76\xa0\x5a\x4b\x20\xfb\xee\xcb\xac\x48\xab\xb6\xdf\x32\x45\x68\xbf\x9f\xa0\x91\x64\x6c\xbf\x5a\x87\x9d\x5e\x44\x27\xa7\xa2\x93\xaa\xb8\xbd\xcd\x68\xa0\x87\xde\xa3\x34\xec\x0e\xb9\xc1\xcb\x74\xb9\xa1\xed\x0f\xe4\x28\xf6\x76\x94\x7e\x7c\xe3\xfb\x07\xab\xac\xdb\xdc\x26\x28\x02\x02\x26\xf3\x08\xfb\xf7\xd8\x93\x88\x74\x0b\x93\xeb\x49\xfe\x9b\x32\x82\xe4\xef\x45\x8e\xdb\xcc\x92\x8c\x49\x52\x0e\xfc\xe5\x3b\x9a\x43\x7e\xa8\x44\x86\xe0\x18\x6f\x78\x56\x5e\xd3\xaa\xca\x04\xdf\x17\xb0\x28\xb6\xbd\x64\x6d\xe9\xb6\x97\x88\x79\x13\xe8\xe1\x3d\xd8\x05\x01\x07\x8d\x95\x2f\xeb\x6c\xcd\xb2\x9e\x0e\xbb\xfd\x99\xba\xda\xe8\xef\xbd\xb5\x8d\x75\xc7\xa3\x6b\x4e\x87\x67\xd8\x29\x29\x7e\xaa\x8f\xda\x1e\x6a\xdb\xbd\xc7\xc2\x9b\x72\x0f\xde\xd4\x00\x5e\xfc\xb6\x3c\x51\x4d\x9d\x6c\xeb\x12\x30\x4d\x4b\x5a\x45\xdd\xab\xc4\x9a\xca\x7b\xbd\x2f\x5a\x57\x05\xc5\x0f\xad\x41\x7b\x33\x6a\x10\xe6\xe3\x6a\x43\xf3\x90\x5b\x15\x44\xf5\x28\x91\x92\xae\xf6\x7b\xe7\x27\xcb\x6f\xd5\x3a\x76\xfb\xd3\x21\x1f\xdc\x5f\x2e\xb1\xe5\x78\x83\xb0\xd7\x91\xca\x7b\xf1\x45\xfd\xa8\x8d\xc9\xbd\x19\xe9\x5e\xa2\x2b\x08\xb8\x3f\x71\x97\x39\x42\x8d\xd6\xc3\x36\x20\xdd\xd2\x7c\xca\x92\x48\xfc\x1b\x21\x0c\xe9\x3a\xc4\x6f\xf8\x23\x42\x18\x84\xea\xec\x5e\x3c\x52\x7f\x8a\xdd\xd1\x8a\x27\x6c\x7f\x0e\x8f\xbe\x38\x7b\x4c\x7d\x5f\x9b\xbc\x8c\x5b\xf7\x72\xee\xb9\x86\x7f\x21\x81\x69\xe3\x73\x3e\x29\xa0\xff\x1f\xca\x01\x3f\x2c\x16\x66\xf0\x4a\x7f\xc3\x65\x82\x22\x37\x81\xd8\x41\x35\x8c\xad\x3f\x56\x55\x95\x1a\x46\xbe\xa0\x5c\x7c\x44\xfd\x77\x84\x70\x9d\xbb\x2f\xec\xaf\x08\xe1\x56\xde\x32\xf1\x7e\x93\x96\x11\x32\x4d\xd1\xd5\xdb\x9d\x7e\x73\x4b\x2b\xf9\xc3\x79\x2f\x1f\x94\xe2\x75\x21\xff\x0c\x54\x2e\xbd\xda\x65\xb7\xfa\xcb\x82\x7f\xb8\xdf\x51\xa7\x15\xf5\x24\xd4\x98\x53\xd8\xb6\x69\xcb\x33\x50\x6a\x89\xb7\x4c\xab\xb7\x8e\xde\xc9\x06\x56\xa2\x22\x9d\xb5\x46\x4e\x84\xc4\xd7\xd8\xc2\x3d\x18\x99\x87\xef\xca\x2f\x8a\x97\xff\x47\xed\x74\x39\x43\xb9\xc7\xe5\x34\xdd\xbf\x5f\xc8\x14\x5b\x81\x47\xca\xf6\xd2\x0e\x41\xf3\xca\xf8\xf7\x60\x38\xad\x87\x5f\xc1\xcb\xed\x61\x63\x3b\xb5\xe7\x62\x87\xa3\x1a\x84\xad\x16\x4e\x39\x9d\x25\x4c\xe9\x42\x05\x17\x86\xf3\xc6\xf1\x75\xd0\xca\x8f\xcb\x96\x62\x96\x76\x3c\x41\x1f\x1a\xed\x0a\x4a\x21\xd9\x99\x4a\xd5\x56\x90\x5c\x25\xac\xc4\xa9\x79\xaa\x26\x04\xf1\x5d\x84\xc1\x85\x11\x98\x76\x84\x70\x41\x8a\xfd\xbe\xcd\x0c\xe6\x7e\xac\xa5\x89\xe0\x01\x64\xf8\x87\xd0\x12\xb9\x11\x66\xa6\x62\xde\x5d\x1f\x16\xc7\x09\x3b\xb4\x3e\x39\x42\x98\x59\x5c\x6c\x88\x3e\x5f\xc8\x01\xd8\xe8\x58\xf5\x60\xe0\x58\x8a\x1b\x15\x02\x68\x7a\x92\x48\xd5\x07\x3f\xb7\x82\xb5\x53\xd6\x39\x84\x8b\x38\x56\x19\x5c\x21\xae\x45\xe2\xb5\x97\x34\x5f\xa1\x92\x24\x35\x29\x90\x1b\xbd\x54\xe3\x19\x33\x42\x6e\xaa\xf3\xf2\x95\x24\xc9\x48\x81\xc4\x2b\x59\x2c\xc3\x33\xaf\x14\x5b\x27\xc3\xb3\x21\x21\xa5\xf1\x33\xd7\xd9\x38\xce\xbe\x84\x97\x0e\xe1\x22\xbb\xd4\x01\x2a\x9f\xde\xa4\x37\x34\x1c\xfd\x74\x74\x5c\xd4\xd7\xc4\xba\x69\xa1\x4a\x3f\x3d\x64\x18\xa7\xb8\xfc\x26\xf4\xa9\x96\x09\x85\x95\xa0\x1e\x2d\xc4\x48\xf3\x5b\xba\x52\x7e\xa5\xa0\x24\xb1\x4e\xab\x11\x5e\x69\x47\xd3\x9e\xb2\xc6\x11\x35\x6a\x70\xe6\x3b\x72\xd9\x9b\xc6\x61\x2e\x83\x11\xb7\x72\x7b\x36\xc0\x3f\xb1\x7c\x43\x39\xab\xca\xd7\x45\x51\x52\x94\x30\x41\x83\xa4\x07\x17\xb3\xb6\xc3\x81\x71\xd4\x62\x39\xf3\x3c\xa8\xbc\x1c\x38\x39\xab\x7a\x62\x8c\xe5\xbd\xa6\xdc\xfe\x7f\x60\xbc\xba\x07\x7f\x6e\x32\xf1\xdf\x10\x09\xf8\x02\x8f\xa4\x32\x09\xca\x92\xe1\xc4\x7b\x68\xaa\xb5\x56\xc8\xad\xde\x7a\xf5\xaa\xfc\x69\xb7\x4a\x2b\x96\xdf\x92\xe1\x59\xb8\xc8\x87\xf4\xf6\x40\x03\xef\xe9\x1d\x2b\x59\x91\x77\x87\xd8\xad\xa7\x9f\x34\xb8\x98\xf1\xf1\xbb\xf7\x6f\xdf\x5d\xbd\xff\xf0\xf3\xe2\x87\x57\x3f\x2c\x5e\xfc\xfe\xf2\xc7\x7f\xbf\x9a\x77\x53\xa3\x73\xaa\x36\x29\x4d\x90\xac\xd7\x1f\xb6\x6c\xf0\xed\x67\x73\xc0\x94\xb8\x48\xba\x6d\x78\xa3\x41\x53\x6d\xab\x7e\xa4\xb8\x99\x11\x12\x17\x61\xd9\x0a\x7c\x16\x03\x1b\x3b\xf1\xdf\xa1\x59\x68\xbf\xf4\xf6\xc6\xd5\xba\x1c\x98\x9d\x71\xda\xd0\x1f\xae\x47\xfb\x60\x7d\x3b\x3a\x64\xd7\xef\x22\x42\x6a\x74\xca\xac\x4f\xda\xac\x87\xeb\x7f\xa2\xea\xe8\x38\x29\x5b\xab\x3b\x1a\x99\xe6\xae\x37\xc4\xdc\x78\xb4\xc8\x82\xee\xcc\xda\xae\x6d\x81\x25\xd7\xb8\x54\xee\x09\x88\xe3\xc4\x3f\x11\xb3\x39\xc2\xe0\x54\xd8\x73\x84\xe2\x98\x7e\xd7\xf7\xae\x8b\x73\xd0\xb3\x78\x32\x14\xdc\x26\x47\xf5\xda\x53\x6a\x5d\xb7\x15\xac\xb7\x93\x09\x20\xe9\x76\x7e\xce\x9e\xe7\x60\x39\xf1\xde\xcf\xd8\xdc\x77\x6f\xd7\x1f\x83\xa9\xfb\x2e\xd8\xf5\x64\xd0\x47\x40\x4e\xcf\x1a\x4f\x4c\xd1\xdd\xd0\xb9\xf8\x18\x0b\x89\xdf\x10\xda\x8f\x81\xb8\xf8\xd0\xf7\xb8\x98\x4c\x43\x23\xc2\xb9\x38\x46\x2e\x4b\xa3\x17\x64\xaa\xc7\x7a\xcc\x51\x90\xa7\x2e\x1c\xc0\x00\x5e\x52\xb9\x3e\x98\x2c\x6f\x9f\xd5\x60\x78\x82\x5f\x49\x45\x9c\xf4\xf6\x2f\x8f\xcc\x63\xc5\xbc\x95\xa2\x71\x3c\xf4\x54\x09\x71\x9c\x68\xfd\x70\x2b\x1c\x45\xa6\x52\xc3\x35\xea\x21\xd6\xaa\xf7\xc7\xd7\xa9\x4b\x66\x5a\x4d\x81\x6d\x9f\xf7\x07\xc5\x74\x2a\xe8\x91\xc9\xe9\x1f\xbc\x92\xdd\xce\x7b\x8b\x07\xe3\x49\x94\xda\xfb\xd0\x27\x96\x45\x0c\x68\x4d\x01\xf1\x49\xc5\xa8\x75\x60\xbb\xc3\x37\xbb\x6d\x94\x9f\x32\x74\x9e\x40\x50\x68\xcf\x11\x51\x9e\x62\xdd\x17\xdf\x15\xa8\x4d\x6d\x9c\x83\x55\xa0\x03\xf7\x70\x78\xef\xc9\xd9\xc0\x22\xd9\xed\xda\xfd\x78\xfd\x5c\x80\xdf\x95\xda\x1d\xa1\x86\x74\xd6\xec\x47\xae\x7a\x21\x3a\xb9\x67\xba\x7b\xe1\xef\xf7\x43\xb8\xe7\x74\x27\x80\xf4\xd2\x57\xf8\x30\x63\x80\x90\xe7\x7e\x02\x19\x94\xbb\x84\xf6\x91\xf1\x5c\x1c\x7b\x70\xa7\xe1\x51\xba\x6c\x8e\x5e\xd5\x7e\x1a\xa8\x7d\x06\x0f\x73\x4b\x9e\x57\x67\x88\x69\xea\x72\x0a\x81\x89\x1f\x66\xaa\xf4\x47\x00\x2b\xc0\xc1\x8f\xa0\xf0\x6a\x2c\x56\x0a\x45\x9a\x9f\xb1\xec\x18\x34\x67\x70\x51\x66\x15\x0e\xa2\xa8\x38\x54\x7b\xee\xf3\x4b\xc7\x37\x30\x9b\x8b\xca\x68\xda\x1e\x81\xd7\x5a\xd5\x34\xd2\xb5\x48\xea\x28\x20\x9f\xab\x60\xb5\x67\x0f\x1f\xe9\xbd\x61\xcd\xda\x71\x76\x61\xa6\xa1\x73\x52\x7a\xf5\x10\x3d\x9f\x40\x5d\xa9\xbd\xd7\x57\xe8\x2c\xea\x4b\x56\x2d\x4b\x5e\xd6\x5b\xf7\xa8\x58\xae\xd1\xab\xdc\x56\xad\xeb\xbc\x85\x5e\xc0\xe6\x29\xd5\xb8\xb3\x39\x7a\xc8\x81\x00\xba\xf6\xe3\xd3\x1c\x0c\xc8\x3a\x44\xbd\x97\x13\x1b\x30\x7d\x11\x99\x30\x70\x86\x29\xce\xb5\x57\xb3\x7f\x83\xa2\xa6\x69\xe6\x08\xb3\xc6\xc6\x2b\xbb\x92\x72\x86\x33\x9d\x52\xb5\xf0\x9c\x56\xf1\x43\x6b\x55\xa5\xba\x28\xcd\x58\x5a\x3a\x70\x45\x08\x07\x09\xe4\xb4\xcd\x57\xba\xe6\xd5\x83\xc1\x86\x82\xb2\x0e\xcf\xd0\xb1\x70\x80\xa1\xa4\x43\x4f\x91\xe1\x8d\x33\xda\x31\x69\x32\x0f\xe7\x7d\xed\x17\xfa\xbf\x00\x19\xec\x09\x59\x92\x3a\x2a\x00\x55\xf7\xf1\x64\x39\xdf\x44\x0d\xb0\x26\xa5\x52\x53\x5a\x71\x59\xee\x30\xbc\x82\xdd\xce\xc6\x8b\x3f\xd3\xf4\xe3\x35\xad\xf0\x06\x1e\x88\x5f\x6f\xd2\x1d\xde\x69\x44\x10\xab\x4a\xde\x8a\xa3\xb4\x03\xec\x0e\x8a\xf6\x7b\xc7\x81\xd1\x87\xc9\x70\xd1\x04\x53\x05\xd2\x24\x71\x06\xe5\xc8\xc4\x05\xea\x30\xfd\x54\x69\x95\x68\x9e\x56\x2e\x98\x10\xae\x09\x1d\xb7\x11\x86\x70\x46\x4c\x23\x79\x1c\xe7\x26\xf7\xac\xc9\xfa\x38\x04\x00\xee\xda\xbe\x58\x13\x37\x5d\x6d\x85\xf0\x8a\x4c\xce\x57\xcf\xd7\x3a\x80\x69\xa5\x03\x98\x36\x64\x3d\x5b\xcd\xf1\x8e\x54\xb3\xcd\x1c\x6f\x25\x31\x5e\xd1\x72\xc9\xd9\xae\x2a\x78\x8b\x04\x6f\x30\x47\xf8\xce\x76\xba\x05\x8d\xd8\x9d\xcc\x7c\x28\x46\xa6\x91\x7d\x37\xe8\xbb\xd3\x33\xd9\xc3\x3d\xa1\xb3\xcd\x7c\xb0\x23\xf7\x17\x10\x02\xb5\x4d\x3f\x6a\x0f\xf0\x7b\x83\xc2\xb9\x03\x19\xd8\x7b\xb9\x43\x0d\x5b\x27\x4b\x31\xad\x40\xab\x37\xba\x55\x2f\x4b\xdd\x43\x83\x6f\xf0\x0e\x35\xcd\xdd\xc5\x16\x00\xd2\xc4\x90\x77\x68\x6a\xe1\x5d\x2c\x54\x72\x00\x75\x6b\xbf\xdf\x40\xd2\xc3\x0b\xd1\x36\xd9\x4d\x43\x65\x12\xd1\x60\x23\x15\x30\x62\x61\xf9\xb8\xce\x01\xd8\xc2\xc5\xe0\x82\x7d\x78\x4b\xb8\x01\x4c\x05\xa7\xb5\x32\xf1\x37\xc4\xad\xd9\x10\x0b\x32\x39\x5f\x3c\xbf\xd5\x5f\x67\x31\x1a\x21\xf8\x10\x90\x96\x35\xad\xa8\xcb\xe8\xdf\xce\x16\xf3\x31\x38\x25\xca\x3f\xcb\xfb\x7c\x89\xce\xa1\xb8\xe3\x1e\x47\x71\x24\x46\x18\xe9\x7c\xc6\xfe\x3f\x5c\x22\x4a\xdc\xf7\x25\x6c\x96\xec\xe3\x2c\x1f\xbf\xfd\xf3\x8f\x57\xef\xe7\x3a\x53\xb3\x8b\xd5\x0e\x67\xcb\x8b\x42\x11\x63\x58\x8e\xb5\x31\x07\x84\x16\x28\x2a\x64\xd8\x2d\xf8\x0b\x1e\x28\x10\x00\x9d\xab\x5c\xf5\x47\xa2\x23\x1f\xf4\xe1\xaa\xd0\xb8\xb3\xec\x8d\xc6\x56\xe9\x28\xd3\x98\xa2\x00\xe4\x8b\xbc\xaa\x54\x0e\xd2\x73\x0e\x5e\x55\xdc\xf5\xaa\xe2\xf3\x81\x73\x5d\x83\x42\x0e\x68\x8f\x46\x90\x30\xd1\x68\x1d\x6d\x9e\x78\xb6\xea\xea\x76\x76\x12\x1c\x08\xfc\x37\x2a\x7e\xff\x00\x6b\xa6\xca\x69\x5c\x40\x65\xbe\x7d\xd8\x8d\x57\x34\xa3\x15\x55\x8f\xbd\xa8\x1b\xd6\xa7\x3c\x12\xaf\xaa\xe2\x1a\x4c\x00\xdd\x20\xc9\x00\x10\x52\x25\x83\x9b\x64\x8d\xab\xcf\x15\xcd\x05\x1b\x79\x11\x4d\xa3\x51\xf8\x55\x82\xa6\x51\xa4\x11\x57\x9e\x47\xa3\x04\x8e\xb6\xca\x48\xac\xe6\x60\x8d\x1a\x2f\x8d\x07\xb6\x79\xd5\xd9\x6c\xba\x8b\x04\x21\xc8\x35\x2b\x1b\xac\xd9\xca\xd6\x1a\xd1\x51\xf4\x5d\xd4\xc8\x6c\xce\xd4\x8d\xa5\xd6\x53\x0b\x2a\x70\xf9\xb1\x0a\x5c\xc7\x25\xa1\xa5\xc6\xe5\x58\x6c\x91\xc6\x83\xca\x3b\x59\xeb\x50\x8d\xb1\x45\xe2\x13\xfb\xc2\x55\xd4\x42\x76\x64\xc9\xa6\x86\x70\x12\x7d\xf3\xcb\x10\x94\x89\x12\xb3\x4a\xf4\x94\x68\xd8\x5a\x93\xb0\xd6\xba\x24\xb9\x4b\xca\x70\x68\xa1\x29\x42\x68\x6a\x1b\xc3\x77\x09\xb3\xc6\x97\xea\x82\x4e\x6f\xc2\x8b\x21\xf8\x38\x4c\x03\x87\xc9\x55\x0c\x89\x8d\xf7\x5e\xb2\x74\x08\xaf\x9d\x86\x0e\xac\x85\xdc\xb4\xd4\xa9\xdb\xfd\x80\xd0\x84\x3d\xda\x2b\x75\x2b\xc7\x71\xb2\xd2\x07\x81\x22\xbc\x91\x40\x5b\xe2\x63\xc4\xf1\x06\x6e\x01\x98\x44\xd9\xf2\x53\xed\x8e\x07\x21\x64\x27\x07\x82\x43\x77\x86\xe1\x63\x1e\x98\x88\x8c\xdb\x69\x6b\x26\x43\x17\x91\xc5\x42\x12\x14\xe9\x9c\x9e\x4b\xa0\x5a\x25\xb9\x5a\x44\x23\xc8\x3f\x5e\xef\x28\x87\x1c\x0a\xd6\xf0\x64\x3a\x7b\xa5\xf0\x68\x83\x21\x45\x2e\x5a\xad\x1e\xe3\x56\x02\x70\x1e\x80\xaf\xb4\x4b\x9e\x08\x32\x78\x88\x3b\xa8\x1c\x8b\x2a\x1f\x2f\x44\xdb\xfb\xfd\x03\x24\x26\xa7\xe9\x72\xf3\x42\x99\x79\x43\x08\x97\x5d\x68\x09\x69\xd2\x73\x7b\x57\xae\xef\x0f\xcd\xb9\x7b\x09\x78\x3b\xc2\x84\x84\xfd\x60\x46\x58\xfa\x00\x14\xb0\xb2\xcc\x01\x68\xd2\x60\x89\x4c\x0f\x98\x0f\x1c\x80\x8a\x02\x50\xf0\x1b\xac\x2e\x94\x47\x77\xa4\x60\x86\xf4\xae\x44\x0f\x2b\xa0\xe4\xd4\x13\xe9\xed\xf7\x1b\x54\x71\x5c\x99\xa5\xf5\x36\x6d\x60\x6b\xda\xc0\x2f\x63\x7c\x0e\x48\xb9\x54\x49\xb9\xf9\xf8\xf5\xd5\xbf\x5f\xbe\xf8\x79\x01\xd7\xb7\x2f\x19\x22\xf1\x49\xa4\x2c\xec\x68\x16\x3b\x02\xb1\xd9\xed\x4b\x57\x01\x69\x80\x69\x1f\x6d\x12\xa0\xcd\x8f\x68\x93\xe5\xb7\xfd\x8d\xce\xb5\xd4\xee\x2f\x46\xa7\x61\xf9\x31\x36\xa0\x07\xf2\xa8\xb0\x67\x83\x4f\x28\x69\xd1\x00\x84\x64\x94\xd4\x0b\x7b\xd5\xc0\x67\xc2\x0e\xd9\x10\x74\x95\x9a\xf9\xd9\xef\xd7\x33\x08\xc5\x76\x4b\x07\x6b\x39\xe6\xb7\x6b\x7f\x50\x74\x48\x48\x37\x8d\xc0\x05\x9d\xca\xd1\x82\xb4\x4c\x9b\xc4\xf1\x67\xb9\xf1\xb8\x15\x7d\x3b\x86\xc4\x07\xb5\xcd\x3a\x12\x04\xb7\x3c\x3b\x8d\x63\x6a\x05\x85\xdc\xbe\x80\x0d\x69\x5e\x40\x56\x8a\x92\x4c\xce\xcb\xe7\x6d\xf6\xe8\xbc\x1c\x8d\x0c\xeb\x5a\x93\xf2\xf9\x64\xbf\x6f\x97\x79\x4e\x4a\x8d\xd7\x67\x99\xa5\x72\x8e\x33\x4f\x30\x81\xc4\xf5\x42\x5a\xd1\x29\xe8\xcf\x97\xcf\xd7\xe7\x4b\x2d\x9c\xac\x48\x36\x5b\xce\xf1\x86\xd4\xb3\xd5\x5c\x25\x10\xa1\x46\x1a\x58\x59\x69\x60\x47\x52\x51\x62\x43\x76\x1d\x19\x63\x67\x64\x8c\x4d\x57\xc6\xd8\x80\x8c\x91\x8b\x89\x07\x5a\xdd\xea\x56\xdb\x32\xc6\x16\x6f\x50\x23\xde\x91\x8d\xcd\xa4\xc1\xd6\xc9\xbd\x65\xac\xca\x31\xec\x92\x0f\xea\xb7\x44\x0f\x2e\x35\x0b\x74\xaf\xfc\xf9\xc6\x4e\x7e\x3e\x84\xef\xc7\xac\x94\xd7\xce\x70\x02\x3f\xde\xd0\x6a\x53\xac\xc8\xf0\x0c\x0f\x8b\xf1\xef\x2f\xaf\x17\x3f\x5e\x7e\x78\xf5\xa7\xab\xc5\xf5\xcf\x6f\xbe\x7f\xfb\x5a\x0e\xf2\xd6\x93\x60\x17\xee\xaf\x1e\x79\xda\x8d\x53\x55\x1c\x3e\xee\x41\x70\xbb\xb5\x47\xaa\xab\x60\xba\x75\x0f\x49\x7f\xee\x2f\xb7\x3b\x3e\x7e\xf5\xe3\xab\x0f\x8b\x97\x97\x2f\x3e\xbc\x7d\xff\x73\x5f\xaf\x8b\x43\xbd\x2e\x5a\xbd\x02\xcf\xff\x89\xdc\x3b\x2a\xa5\x4f\x4f\x51\xdc\x38\x59\xac\xff\x71\xae\x17\x41\x45\xc9\x37\x51\x8e\x14\xff\x04\x7e\x0c\xda\x86\x65\x32\x74\x9a\x1b\xa0\x38\x20\x99\xb4\xd5\x91\xe2\xc3\x45\xa8\xeb\x1c\xb5\x85\xa5\x78\xc7\xe9\x9a\x7d\xb6\xee\xa9\x74\xbf\x97\x2a\xcb\x35\xcb\xff\xff\xe4\xfd\x7b\x77\xdb\x36\xd6\x28\x0e\xff\xaf\x4f\x21\xf3\xf4\xd1\x10\x23\x58\xb1\x92\xf4\xa6\x94\xf5\x71\x6c\x25\xf5\xd4\x97\x3c\xb6\xd3\x4e\x8f\xaa\xc7\x43\x4b\x90\x8d\x86\x22\x34\x20\x68\xc7\x63\xeb\xbb\xbf\x0b\x1b\x57\xde\x64\x29\x4d\x7a\xce\x7a\x7f\x6b\x65\xc5\x14\x89\xeb\xc6\x06\xb0\xef\xdb\x75\x0c\xce\x1e\xf6\x92\x08\x89\xcd\x05\xe1\x71\x2a\x08\xcc\xb7\xd4\x87\x02\xc7\x61\x83\xb9\xbb\xc2\xea\xb6\x80\x89\xc8\xe1\xc1\x66\x26\x59\x65\xee\x0b\xce\x26\x24\xcb\xea\xe6\x5f\xc3\x11\x7a\xfa\xb6\x72\x0d\xec\x9b\x84\xe8\xaa\x9a\x7c\x51\x0d\x36\x49\x5d\x19\x66\xbe\x31\x89\x1b\x8a\x3c\x7a\x58\xef\x64\xef\x78\x78\xfe\x6e\x6f\x7f\x78\x1e\x71\xef\x47\xe1\xcb\xe5\xeb\xdf\x2e\x0f\x0f\x0a\xdf\xd5\x2b\xd5\xb4\x9c\xe0\x5e\x92\x44\xdc\xfb\xe1\xe0\x8e\x59\xef\xea\x5e\xfe\x8c\x4a\x2b\xb2\xc9\xd6\xfd\xfc\xe2\xd6\xd5\x12\xd4\xa7\x05\xa5\x9f\x9e\x81\xbe\x2e\x24\x74\x63\x46\x18\x25\x44\xfd\xf3\xe7\x43\x29\x5b\x77\x54\x7b\x62\x64\x38\xaf\x3f\x33\xd2\x3f\xcf\x3a\xa7\x98\xa0\x1a\x3a\x36\x35\x74\xdf\x25\x80\xc0\x66\xf2\xfe\x99\xdc\x37\x90\x5d\x8d\xc2\x84\x2a\x13\x2d\x49\x88\x59\xae\x90\x11\x68\xad\x74\x19\xb2\xba\x3d\x92\x97\x36\x78\x6e\x2e\x6d\x7b\x61\xdb\x7c\xd9\xc6\xaa\xd0\xe3\x45\x6a\xc0\x9b\xd5\xbd\xfb\xff\x10\x6c\x2b\xf0\xf2\x79\xb7\x25\x42\xad\xcd\x36\xfe\xa7\x58\x4c\xfe\x69\xeb\x47\x9d\x89\xe5\x8b\xe6\xf9\xf3\x36\x1f\xfd\xe2\x52\x2b\x5e\x87\xfa\x14\xd3\x32\x03\xaa\x75\x74\x36\x61\xde\x7a\xda\x31\x9b\x65\x75\x7d\x1f\xe7\x9a\x33\xf4\xb3\x7b\xd5\x2b\xb6\xac\x2c\x9c\x29\xa5\x4e\x0c\xe4\xef\xc0\x49\xec\xfd\x4f\x36\x39\x66\xa0\x97\x89\x8f\x52\x75\xf1\x12\x34\x7e\x7c\x34\xd1\xa4\x5b\xbe\x38\x35\xa2\xbb\xa2\x9a\x74\x11\x4c\xaa\x03\xc5\x52\xa2\x81\x17\x86\x9a\x4a\xba\xc3\x97\xda\x40\x52\xa6\x5d\x1a\xe9\x0c\x4c\x83\xa2\x48\xc7\xb4\x2c\x0b\xb8\xbc\xa1\x35\x79\x8b\x64\x77\x90\x1d\xd4\x65\xf0\xa2\x4b\x23\x5d\x09\x46\x6a\x00\x26\x38\xfc\x38\x18\xd8\xa4\xaa\xd8\x7e\x3c\x81\x28\xda\xf2\x9b\x8e\xa7\xed\x3e\x29\xea\x4d\x7e\xd2\x46\xe6\xee\x93\xe1\x79\xe5\x47\x0b\x16\xf7\x79\x2f\xbb\x4f\x27\x4f\x95\x91\x6c\x9b\xfc\x66\x8c\x90\xcd\x07\x39\x35\xf9\x1e\x26\xe6\x5e\x9f\x91\xeb\xe1\xc7\x85\xfc\xc0\xc9\x35\xf9\xb8\xf0\x3e\x29\xac\x91\x9f\xec\x01\x60\x07\x4a\x13\x08\x17\x00\x83\xa0\x09\x49\x68\x26\x82\x25\x4e\xa3\x4a\x56\x46\x43\xad\x36\xee\x05\x20\x28\x9e\x01\x6f\x59\xbb\x07\x6a\x14\xba\xeb\xe4\x36\xf1\x0e\x02\x2b\xaa\x7b\x58\xba\x90\x59\x90\x2d\x67\x44\xc6\x51\x1f\x0b\x24\xf9\x66\x3f\x6e\x19\x77\xa9\xd0\xbc\xfb\xa6\x1c\x81\x11\x44\x26\x0e\x1d\x5d\x82\xd1\xba\xf4\x59\xe8\x53\x52\x30\x39\x29\xdc\xf9\xfd\xfc\x8a\x25\xd1\x0c\x92\x45\x1c\x6a\xe0\x99\x97\x15\x59\x26\x58\x68\xda\xb8\xd6\x60\x58\x47\x7a\x53\x0a\xa5\x62\x5e\x27\xc5\xd4\x83\xd3\x52\x1f\x27\xa6\x14\xbd\x4b\x59\x4f\x59\x14\x2b\x09\xb2\x79\x87\x85\x6c\x35\xcf\xe9\x34\x62\x98\xf4\xae\x49\x4a\x78\x2c\xc8\x5b\xf9\x62\xa5\xe4\x52\x5d\x41\x81\x91\x57\x8a\x2e\x0b\x51\x2b\x85\x8d\x1e\x6b\x95\x24\x77\x72\x52\xd9\x89\xe6\x2a\xaa\xe3\x06\x8f\x8d\x90\x20\xe4\x38\x14\x11\x41\xf6\x5e\xf9\xd2\xef\x4d\x76\x82\x4d\xf3\x02\xb9\x34\xa5\x7e\xcd\xcc\xd4\xb4\xf1\xc9\xf4\xea\xb5\x44\xe4\x5c\x42\x22\xbe\x1b\x64\x02\x5a\x1c\xb8\x70\xf9\xf2\x6d\x9a\xeb\xb7\x19\xac\x8c\x29\x7b\xaf\xdf\x86\x41\x97\x74\x03\x14\xe0\xcc\x8e\xc3\x6a\xa4\xe4\x34\xd5\xa6\x88\x38\x26\xbd\x3b\x5e\x89\x70\x4c\x67\xe1\xd6\xa5\x9f\x83\x16\x84\xa9\xa7\x3a\x69\x46\xa7\x73\xe9\x52\x01\xb4\x3f\x86\x04\x7f\x0c\x05\xbe\x76\x27\xd8\x47\xed\x1f\x47\xac\xc6\xd5\x78\xaa\xeb\x24\x53\x75\x32\xf1\xa1\x06\x88\xac\x06\x71\xf8\x4c\xf4\xee\xe2\xd0\xce\x43\x82\x6c\xb3\x59\x24\x74\x71\xeb\x0a\x5f\x57\x3c\xb1\x1f\xf5\xdc\xb3\x45\x9d\x36\xa0\x9c\x8e\x80\x74\x3a\x75\xd9\x3e\x0a\x11\x07\xf5\xf3\x59\x48\xf0\x0e\x0c\x5d\xf9\xde\x38\x99\x77\x74\x88\x49\x6f\x12\xa7\x2a\xb4\x6b\x74\x20\xef\x3b\x13\xe8\xb5\x62\xab\x4d\x67\xe1\x81\xc2\x19\x4b\x50\x8c\x84\x71\x7f\x81\x98\xd4\xa0\x28\x30\x22\xb3\xfa\x2b\xd3\x1c\x2d\x23\x1b\x62\xe2\x44\x05\x2c\x03\xd3\x60\x62\x18\xea\xba\x35\x38\x2a\xae\x41\xa9\x98\x84\xa7\xda\x3b\x47\x0e\xa9\x30\xa9\x4a\x09\xda\x24\x14\xf5\xbe\x4d\x5e\x26\x62\x77\xc5\x8b\xe6\x2b\x5e\xd4\x5c\xf1\xb5\x79\x88\x5d\x88\x9b\x20\xd0\x71\x37\x8c\xf8\x14\xc2\x6f\xa4\x3f\xea\x00\xf8\x01\x0e\x10\xfe\x4f\x28\x46\xe9\x18\x3d\x3e\xca\x37\x44\xfd\xf0\x8e\x81\x82\x6a\xc8\x8d\xdd\x4e\xd4\x4e\xc2\x53\x85\x9a\xda\x6f\x34\xc7\x0f\x90\x31\xb6\x7a\x51\x0a\x3f\xc0\x4f\xb8\xb2\x68\xde\x3e\x7b\xad\xd5\x15\x2d\x5f\x9d\x64\x12\xd4\x15\x2a\xaa\x75\x78\xad\x95\x1a\xaa\x2f\xe0\x87\xaa\x88\x61\x30\xa9\xd3\x21\xa3\xaf\xc6\xba\xc5\x5f\xa9\xb8\x39\x8e\x53\x70\x0d\xba\x3f\x27\x42\x10\x1e\x91\x9e\x20\x31\x9f\xb2\xbb\xb4\xfa\x25\x23\x22\x5f\x54\x5f\x7b\x09\x2e\x22\xd2\xdb\x8f\x27\x37\x24\x22\xbe\x70\xf4\xdd\xd9\xe9\x3f\x7f\x2b\xbe\x52\xf2\xd2\x88\xf4\xce\x4e\x4f\x2f\x22\xd2\x9b\xdc\x90\xc9\x87\x9f\xe2\xec\x3c\x5f\x40\x9b\x6f\xdf\x1f\x1e\x5c\xfe\x3c\x94\xb5\xae\x89\x38\x90\x17\x30\x20\x22\xe9\xa9\xa3\xae\x48\x91\xef\xb8\xeb\x97\x59\x3a\xbc\xdb\xa5\x3a\x83\x96\x2f\x8e\xcd\xe0\x97\x7c\xca\x23\x1e\xca\xbb\x50\x1d\xd7\x92\x5c\xe9\xa5\xec\x2e\x84\xfc\x69\xb6\xfb\x5c\x27\xbd\xaf\x41\x05\x75\x1b\x76\x3a\xee\xf0\x2d\x7c\x80\xf0\x56\xd5\x19\xab\x10\xac\x93\x68\x34\x76\x63\x9e\xb9\x7b\x11\x86\x24\x8f\xed\x30\xef\x42\xfa\xfa\x59\xc2\x18\x0f\xe1\x91\xc7\xe9\x94\xcd\x43\xf4\x77\x6f\xac\xa8\x2b\xcb\xbb\xeb\x13\x66\x3c\xc5\x37\x51\xb2\xab\x86\x31\x98\xb5\x2c\xcc\x6e\x5a\x4a\x32\x3f\x6d\x95\xa0\xba\x68\x29\xe1\xfa\xb3\xdf\x7b\xa1\x0a\xe7\xf6\x28\x11\xf8\x77\x60\x61\x1e\xe1\xe4\x51\xcf\xe8\x19\xbe\xad\xd1\x94\xd8\x2d\x80\xef\xa3\x5b\x85\xfb\x75\xd6\x23\x92\xfd\x41\xc8\x92\x09\x81\xf7\x3e\x40\x3f\x6e\xf7\xeb\x52\xeb\xcc\x7b\x82\x64\x22\xbc\x35\xa4\xbc\x9f\x38\xc9\x06\x7f\xd8\x59\xb6\xca\x28\x74\xdf\x52\x36\x49\xfe\xda\x5f\x97\xd2\x56\xf9\x63\x94\xcc\xae\x5d\x90\x4b\xb7\x20\x57\xfa\x34\xac\xe8\xaf\x14\x6d\x01\xc6\x28\x57\xee\x9a\xc7\x62\xa9\x71\xfa\x5a\xbf\xbe\xc6\xc6\x86\xf8\xae\x62\x0c\xee\xee\x24\x93\x73\x56\xf9\x86\x98\x8b\x4d\xab\x9f\xf0\xb0\xa0\x43\xb0\xc3\xf4\x72\xfa\x0c\x57\x0f\x53\x56\xbf\xc3\xc3\xc2\x38\x65\xc5\x53\x65\x6f\x60\xad\xef\x5c\xdb\xea\xfa\x2e\xf2\xb7\x5e\x38\x5a\x85\x25\x2d\xef\x39\x12\xc6\x99\xb6\x9e\xfd\x2d\x84\xc2\xd5\x55\x38\x4e\x97\xa7\x70\x7c\x71\xe3\x8a\x5b\x3f\x11\x65\x66\xa7\xc6\x0f\x51\xc2\xb8\xce\xbf\xd3\x48\xff\xe3\x8b\x95\x78\xfa\x21\x2a\x5c\x1f\xf8\xd8\x57\x82\xe1\x77\xd1\x3f\xce\x4f\x4f\x7a\xea\xe2\xa2\xb3\x7b\xfc\x47\xf4\xec\x7f\x46\xbf\xdf\x7d\x35\xee\x7e\xf5\xcc\xc1\xe8\xac\x98\x2a\x6b\xab\xdf\xca\xee\xa8\x98\xdc\x84\xce\xcf\x79\x12\x67\xc4\xbb\xb7\x06\xd5\x9b\x0c\x4a\x68\xa2\x7e\xb0\x8a\xe5\xfd\x00\x2a\x6c\x1a\x6d\xed\xb4\xae\x38\x89\x3f\x28\x5f\x5e\x7b\xef\x46\xd1\xde\xe3\xa3\x63\x8b\xdd\x3d\x05\x85\x5d\x4a\x21\xef\xb6\x82\xae\xed\xc1\x36\xa8\x14\x89\xa2\xe8\x62\x57\xa5\x6c\xde\x0d\x46\x06\x9c\x83\xa0\xab\xde\x75\x03\xc9\x8e\x8d\x3c\x06\xb1\xda\xba\xbe\xfb\x4d\xdb\xef\xe4\xca\xaa\x0f\xea\xd0\x1c\xc0\x0f\xc3\xcf\xaa\x5f\x9a\x04\x1b\x68\xf6\xb9\x3a\xae\x10\x74\x84\xce\x47\x1c\xa5\x65\x34\x36\xc4\x76\x6a\x54\xff\xc6\x63\x70\x9f\xf2\x49\x9e\xc4\x7c\x1c\x58\x67\x67\x7d\x7d\x62\xba\x5b\x43\x89\x89\x1f\x5f\xda\xba\x9a\xd5\x6d\x39\x9b\xd1\x60\x14\xe0\xba\x38\xf4\xb2\xe7\x6e\x04\xfe\xd9\xbb\x41\x3b\x18\x04\xb8\x1d\x60\xfa\x63\xd4\xdf\xd9\x41\x0f\x69\x37\x0a\x7a\xbd\x5e\x3b\xe8\x86\x2e\x8c\xf2\xce\x0e\xea\x06\xed\x39\xe3\xa4\x4d\x05\x99\x67\x81\x5e\xe3\xb4\x1b\x9d\x85\x10\xd0\x1e\x9c\xf5\xcc\x98\xbb\x51\xd0\x1e\x07\x4b\x89\x7f\xdd\x3e\x4e\xd1\xe0\x89\xa1\x1b\xd6\xda\x1f\xfb\x83\x1c\xfb\xb1\x9c\x39\x8b\x76\x5e\xb1\x1f\xa8\x99\x02\x2b\x4e\x81\xb9\x29\xb0\xea\x14\x68\xdd\x14\xe4\x26\x32\x33\x50\x57\x30\x1d\xb1\x71\x2b\xed\x46\xfb\x61\x8c\xba\xc1\xa0\x1d\x74\xe5\xb4\xe2\x9a\x69\x2d\xbd\x69\x39\x6e\x78\xdf\xbb\x12\xfe\x50\x57\x02\x90\xb3\x12\xa1\x5c\xa9\x43\xdf\xec\x97\xb4\xa6\x4c\x7b\xdf\x3b\x13\x80\x53\x67\x36\xea\xc8\xf3\x90\x63\x51\xb4\x03\xb5\x59\xd9\xd3\x16\x6f\x30\x20\xe0\x68\x79\x77\x43\x13\xe2\xe2\x39\x15\xdc\xe7\xed\x98\x0e\x0a\xd1\x44\x74\x2e\x85\xfa\x94\xd7\x23\x31\x06\x70\x9d\x14\x0f\x27\x38\x19\x8f\x0a\x57\x80\x7c\xf3\xa6\xf9\xf0\x73\x47\xd4\x7f\x4a\x52\x84\x28\x22\xd0\xc5\xfb\x3a\x8a\x06\x28\xcc\x56\x0d\xe9\xf6\x1e\x3a\x7c\x5d\xde\x65\xf2\xe5\x4f\x4d\x06\xab\x9e\xe3\x69\x42\xe7\x54\x18\x8b\x55\x59\x26\x52\x2e\x68\xbd\x4c\x30\x4e\x22\xae\x7f\xd0\xff\x10\xe3\x0b\x35\xa7\xa0\xa5\xd3\xbf\x6e\xa8\xb0\xcf\xba\xca\xe3\xa3\x26\xe3\x96\x3a\x2d\x42\x55\xcb\x09\x2b\x56\x47\x04\xbb\x76\xf4\xe9\xa0\x3d\x68\x64\x37\xdd\xae\xd7\x8d\xe1\xce\xb5\xb7\x91\x1a\x94\x2d\xa1\xae\x52\x33\x25\xe0\xe2\x97\x2a\x8a\x50\x7d\xee\x14\x07\x8a\x1f\xed\x7c\x8d\x07\x9a\x7c\x2e\x76\xed\xdf\xd4\x58\xf4\x16\x39\xbf\xae\x3a\x93\xa9\xa2\x3a\xfa\x7c\x15\x8a\x3e\xdc\x0c\x44\x97\xca\x90\xc5\xd0\xe9\x3f\xc1\x22\xfe\x82\xff\x8d\x7f\xc5\x5f\x45\x37\x61\xe0\x11\xf3\x81\x2c\xe6\x13\xf7\x5f\xe1\x06\x1e\xe0\x17\xdc\xcc\x36\xfc\xbb\x99\xd7\xf8\xb5\x51\x48\x77\x4b\xc9\xdd\x2a\x21\x5d\xa5\xa8\x27\xa6\xfe\xe3\xdf\x39\xe1\xf7\xeb\x95\x6d\xd6\x2e\x56\x8a\x82\x7d\xf7\xe5\x94\x66\x8b\x58\x4c\x6e\x1a\xb4\x95\xae\xd6\x84\xcd\x17\x2c\x95\x55\x94\x30\xe0\x89\xe2\x26\x3e\x0d\xf9\x28\x5c\x58\x9a\x95\x35\xd4\x13\xc8\xe4\xe5\xe3\x7a\xed\x83\x50\xfb\x12\x0c\x2c\xd6\xec\xc6\x54\xbc\xa1\xc9\x14\x3a\xda\xb0\xa2\x7c\x71\x99\x89\x58\x90\x4f\xa9\xb7\x49\x8d\x72\x50\x9f\x27\x97\x27\x16\xcf\x62\x21\xf8\x9a\xeb\xaf\x9b\x9f\xc7\x69\x7c\x4d\x56\x46\xd2\x50\x8e\x34\x78\x86\xa7\xf8\xe6\xcf\x2a\x46\x1a\x2b\xfc\xf1\xdf\x0a\xcb\x1f\xfc\x64\x75\x3b\xf5\xf6\x7d\x6d\xd1\x53\xc5\x9b\x4d\x82\x6c\x8b\x07\x34\x93\x6d\x4d\x37\x6c\xd9\x54\x5b\xd9\x43\x3c\x9d\xee\x4b\x3c\xfa\x05\xf0\x75\xad\xf6\xc1\x2a\xc5\x56\x5a\xd9\x3a\xcd\xce\xe9\x7c\x91\x90\xfd\x84\x4e\x3e\xac\xdd\x7c\xa1\xd6\xca\xf6\xaf\x89\x90\x63\x78\xcd\xf2\x74\x9a\xad\xdd\x7e\xa1\xd6\x3a\xed\xef\x27\x14\x5c\x43\x27\x62\xe3\x4e\xbc\xaa\x6b\xcf\x84\xa6\xd7\xae\xda\x27\xcd\xaa\xd0\xc2\x53\xfd\x9e\x31\x06\x35\x37\x9a\x9b\xad\xf4\x54\xeb\x16\x51\x36\x6a\xde\xd5\x5a\x07\x6a\x87\xeb\x6e\x0d\x0b\xa5\xc3\xd5\xbb\xe2\x9a\x88\x61\x02\xf1\x4e\x37\xda\x17\xc5\x6a\xeb\x8c\x5c\x17\xdf\x74\xf8\xba\xda\xca\x1e\xb2\x4f\x9b\x43\xb6\xfe\x1c\xb2\x4f\x9b\x43\xb6\xfe\x1c\x80\x8c\xfa\x94\x59\x94\x2b\x3e\xdd\xcb\xa7\xcc\xa4\x5c\x71\x75\x2f\xc6\x7c\xfa\x5c\xdc\x27\xe4\x80\x2c\x38\x99\x40\xb0\xc1\x63\x92\x65\xf1\x35\x59\xbf\xd7\x27\x1a\x5a\x39\x0a\x70\x7c\x3b\xf0\x28\xa6\xb5\x3a\xb5\xf6\x0c\x2b\xdb\xde\x37\xf4\xd5\x91\x26\xaf\xd6\x6a\x9b\xae\xd5\xf6\x05\xf9\x28\xce\x0d\x19\xb1\x56\xbb\x6c\xcd\x31\x73\xb2\x01\x66\xc5\xeb\x35\x2a\x49\x3a\x30\xd6\xdb\x6c\xc8\xd9\x7a\xad\xdb\xb3\x71\xb3\xd6\xf3\xb5\x5a\x97\x0d\x9f\x4b\xda\x70\xb3\xc6\x93\xb5\x1b\xd7\xce\x09\x6b\xb5\x3a\x59\xab\x55\x15\x56\x70\xb3\xf1\xce\xd6\x6a\xf9\xf8\xfd\xc5\xde\xeb\xa3\xe1\xe5\xfe\xf0\xe8\x68\xcd\x86\xa7\x3d\xbf\xd2\x1a\xe3\x3e\xd6\xd4\xeb\x7a\xcd\xdf\x78\xe3\x7e\x82\x55\xab\xd2\xd4\xab\xb9\x36\xc5\x78\x7d\x76\x2b\x22\x1f\x1c\xc5\x04\x1d\x2a\xc2\x2f\x08\x1d\x51\x58\x84\x35\xe4\xe6\xf2\x2b\x36\xa7\x8f\xa8\x4c\x76\x16\x27\xc9\x55\x3c\xf9\xb0\x2d\xbf\x6c\x9b\xc0\xa5\xff\x97\x66\x5f\x9b\x99\x04\x26\xee\x6c\x31\x50\xa8\x72\x04\xaf\x93\x2c\x63\x15\x37\xbb\x96\xf5\xd8\x5f\x96\x7c\x45\xb7\xa4\xfc\x4c\x55\x92\x2a\x18\x6e\x39\x15\x91\x4b\x9a\x1e\xd8\x32\x83\xa0\xeb\xc9\x8c\xbc\xec\x43\x29\x84\x47\x4b\xe2\x7b\x96\xaf\x6a\x48\x90\xf9\x22\x89\x05\x19\xd8\x16\xb3\x67\x85\x26\x75\xd6\xa6\x54\x05\x85\xde\x10\xf2\x0d\xcc\xed\x3a\xf8\xb5\x76\xac\xda\x4f\x61\x95\xa7\x9a\x14\x20\xd3\xed\x19\x89\x45\xce\x49\x05\xa1\x0d\x4f\xfc\x45\x56\x3d\x8e\x1e\x32\x92\x4e\x6b\x53\xdc\x7c\xee\x64\xbe\x20\x40\x53\x2b\x90\x69\x5f\x40\xfd\x6b\x44\xc0\x09\x8a\x99\xd4\xb3\x5b\x20\x30\xf7\x15\x60\xa9\x0a\x51\x1a\x6b\x81\x32\x88\x2b\xb3\x8a\xe7\x84\x8d\x08\x9b\x75\x3a\x99\x1f\x15\x35\x2b\x44\x3d\x56\x11\x54\xcf\x87\x27\x07\x97\x7b\xfb\x17\x87\xa7\x27\x3a\xba\x6a\x83\xc0\xb1\xd3\x11\x23\x5a\x38\xda\xc6\xca\x95\x53\xc5\x1a\x42\x58\x2c\x5b\x31\xf4\xa6\x6e\x87\x7a\x7b\xa7\x52\xd4\x5c\x17\xea\xb6\x26\xb2\x9e\xc4\x91\x5e\xd0\x25\x55\x27\x10\x62\xbc\x3a\xb6\x94\xe5\x93\x71\xc6\xf7\xcc\x36\xd2\xea\xb2\x51\x6f\xd9\xd2\x1f\xfb\xbb\xa9\x5a\x36\x16\xf5\x5f\xb1\x1f\x52\xd0\x54\xd0\x11\x2b\x2e\x1b\x1b\xb7\xea\x0c\x37\x76\x45\x31\xab\x0a\xd5\x51\x8b\x0a\xe1\x82\xc3\x07\x1d\x33\x59\x94\x02\x26\xd3\x25\x5a\x2e\x97\xca\xbb\xae\x14\x72\x39\x2e\x58\xa8\xaf\xbf\xa5\x6b\x45\x6a\x1b\x65\x6d\x78\x5a\xb2\xf9\x7f\x2b\xa3\xc3\xc4\x92\x8d\x2a\x73\x41\x0a\x09\x1e\x0f\x48\x36\x39\x20\x13\xc6\x63\x08\x31\xf1\x30\x61\xe9\x8c\x5e\xe7\x9a\x0a\xe9\x63\x9f\x26\xe9\x37\xba\xaa\x96\x78\x76\xe3\xa9\xb3\x44\x38\x5e\x2c\x48\xaa\xa4\x45\xe5\xa4\xa6\x45\x39\x52\x43\xda\xa8\xe6\x10\xc1\xeb\x09\x52\x37\x5a\xbc\x75\x8c\x4a\x3f\xd7\x05\x59\x34\x7b\x18\x8d\x11\xae\x59\xb2\x5a\xf7\xd5\xc1\x48\x19\x42\x03\x83\x11\x60\xf7\xe3\x35\x05\xc9\x8f\x44\x31\x9a\xd2\x52\x32\x0a\xab\xe1\xaf\x37\x05\x58\x62\xd7\xe6\x80\xe3\x4a\x9b\x03\xfe\xa9\xcb\x52\x94\x9f\x7f\xea\x66\x32\xd4\x4b\xd3\x35\x59\x77\xf7\x35\x6e\xca\xbf\xfa\x56\xec\xbf\x18\x04\x2a\xd1\xf6\x09\xb9\x4b\x68\x4a\x02\xfc\xfc\xdb\x41\x30\x89\xd3\x09\x49\x82\x25\xce\xca\x2b\xcf\x7b\x17\x70\xfb\x14\x38\x1b\xd3\x55\x10\x60\x79\xa8\xd3\xab\x5c\xb8\xe5\x19\x05\x71\x2e\xd8\x24\x5e\x50\x11\x27\xf4\x3f\x12\x50\xf0\x82\x71\xae\xcc\xb6\xe5\xaf\x19\x9b\xe4\x12\x2c\x53\x2b\x50\x0e\x66\x8c\xcf\x03\x1c\xcc\xe3\x8f\x26\xe6\x5b\x30\xa7\xa9\x7d\x86\xc0\x65\x37\x2c\x99\x82\x72\x85\x93\x78\xca\xd2\xe4\x1e\x1e\xff\x9d\x53\x0e\x4d\x64\x24\x51\xe9\x05\x0e\x28\x27\xc6\x16\x3d\x5b\x90\x24\x01\xf3\x9f\x40\x5e\xa5\x57\x5a\x6f\x14\x08\x2a\x12\x49\x83\x7a\x0d\xab\xc8\xf7\x66\x4c\xf2\x98\xb1\xa3\xd1\xf9\x67\x36\x45\x66\x6d\xb3\x93\x86\xc1\x22\xce\x04\x09\x54\x70\x4d\x55\x8d\x68\xa1\x90\x04\xa5\x0b\x6b\xe6\x6a\x4c\x72\xb1\x51\x79\x9a\x2e\xd6\xaa\xb1\xc4\x57\xf9\xd5\x55\x42\x32\xc8\xc6\x22\xf1\x71\xc1\x89\xf8\x99\xdc\xab\xa0\x47\xd5\xa0\x74\x51\x3c\x22\xbd\x0f\xe4\x7e\x9f\x4d\x15\x45\xb3\xa2\xf5\x10\x61\xe1\x9b\xbf\x8e\xc4\x18\xac\x0f\xeb\x4b\x0f\x8a\x6e\x93\xc2\x4b\xa9\x14\x00\x8a\xa9\xe9\xf4\x74\x65\x4d\x99\x2c\xf1\xa4\x9a\xdb\x6b\xd5\x98\x08\x32\xe9\xe5\x35\xd6\x17\x6a\xe6\x61\x40\x24\x14\x34\xe8\x08\xc2\x79\xa8\x37\xc9\x76\x6a\x76\x89\xb0\xf9\xf9\x61\xab\x54\x1a\xc8\x26\xf1\x82\x6c\x2f\x38\xc9\x32\xaf\x30\xa0\xf9\x61\x5a\x2e\x0d\xaf\xb7\x69\x5a\x2e\x79\x9a\x8b\x0d\xe6\x84\x6d\x4b\xcc\xae\xbb\x6c\xea\x03\xb9\x7f\x27\xc7\x51\xee\xf5\x03\xb9\xaf\x0c\xf0\x03\xb9\x7f\xbf\xa8\xf6\x59\xc5\x0a\xdd\x9f\x6c\x43\x32\x78\x7e\x03\x07\xec\xae\x32\x43\x59\x6e\xca\xee\xbc\x19\xfa\xf9\x3e\x72\xdf\x34\x2a\xf6\x72\xd5\x70\x9f\x4a\x6c\x69\xdb\x89\xb8\xd3\xa9\xf8\x35\xc4\x9d\x0e\x50\xd3\xf1\x88\x55\x48\xd8\x38\x8a\x0d\x09\x5b\xcd\x4f\x60\x3b\x22\x48\x19\x95\x65\xc5\xee\x15\xd6\x01\x59\x4e\x7d\x5a\xba\xd3\xa9\x58\x2a\xc7\xe8\x81\x37\x10\x88\x71\x89\x40\x1c\x65\x38\x1d\x2f\xd1\x92\x24\xbe\x4d\x95\x3f\x9b\x38\x04\x6e\x40\xce\xab\x30\x1e\xbd\x55\x03\xd4\xe9\xa4\xbd\x4c\xb0\x85\x3c\xfd\xe3\xeb\x58\x6d\x1a\x2f\xd3\x49\xb6\xfe\x3d\x58\xa7\x75\xfd\x7f\x37\x59\xea\xa5\xe0\x71\x9a\x51\xd9\xeb\x05\xab\x39\x9c\xd4\x26\x99\xe4\x9c\x93\x54\x80\xbc\x10\xf3\x9a\x97\xc6\x32\x51\x3e\x03\x67\xe6\xfd\x8e\x08\x86\x60\x1a\xe4\x23\xb5\x7f\xb5\xc3\x36\xef\xc1\xd9\xd0\xe9\xe8\x07\x4b\x4f\x7e\x1a\xa7\x5e\x54\x5c\x7f\x71\x3e\xfd\x8a\xb3\xbb\x8c\xf0\xed\xa7\x92\xd4\xfc\x19\xd3\x87\xb2\x45\xc5\x06\xbc\x7f\x4d\x66\x09\xef\x8c\x28\x9a\x06\x7f\x1e\xf4\x4a\xa2\x66\x52\xb6\x42\xca\x04\x63\x9c\x92\x98\x93\x4c\x9c\xce\x20\xbf\x51\xbd\x38\x41\x05\x15\x8a\xb9\x56\xf0\xe0\x34\x2a\x78\xf1\x69\x86\xd0\xd9\x0f\x0a\xcf\x17\x54\xbb\x15\x0a\xdf\x70\xb9\xee\xbb\x1f\x5d\x0d\x2d\x5f\x89\x57\xda\x31\xc0\x39\xd9\x88\x96\x64\xdd\xdd\x30\x96\x4b\x33\xf8\x5f\xa9\xb8\xa9\x4d\x65\xd8\x38\x05\xd3\x3e\x01\xbf\xb4\x15\x3d\x70\xc2\x49\x3a\xf5\x33\x5a\x96\x32\x63\xf9\x3b\xb0\x67\x4a\x9b\x60\x07\xfa\x62\x53\x71\x62\x3f\x1b\x13\xa8\x7a\x56\x3d\x11\x5f\x13\x5a\x66\x05\xeb\x4e\x13\x2b\x97\x8b\x68\xef\x26\xce\x0e\x4e\x8f\x6b\x0e\x7e\xb2\x3b\x65\x13\x20\xf0\x7a\x80\xfb\xe7\x40\x76\x42\x86\xc6\x81\x36\xfa\xb2\xdd\x9b\xae\x4a\xe1\x05\xd5\xeb\xa6\xc1\xdb\x4a\xb6\x9f\x2b\x36\xbd\x77\x10\x3b\x9c\x2a\x72\xf4\x8e\x26\xc9\x21\x10\x2a\x7a\x8a\x83\x1c\x4f\xe9\xb4\xfc\x0a\x92\xac\x24\x24\xe6\x67\x6a\xb1\xf2\xba\xec\xf0\x6b\x92\xb2\xc5\x15\x35\xc1\x55\xf5\x82\x7a\x11\x0c\x0b\x03\xaa\xbc\x73\x48\xe4\x48\xc1\x1c\x8b\x18\x1c\x0e\xfe\x14\xa9\x6d\x21\xf4\xf8\x18\x04\x26\x98\xb8\x6e\xf8\xf1\x31\x2c\x96\xd1\x57\x7f\x21\x4a\x08\x5a\x62\x15\x30\x17\xe8\x9e\x55\x59\xdf\x0a\x90\xf0\xea\x78\xe9\x51\x97\xad\xac\xf7\x8f\xff\x7e\x3f\x3c\xfb\xed\xf2\xf0\xe4\x62\xf8\xf6\x6c\x4f\xd1\x12\x61\xd2\xfb\xaa\x36\x09\x86\x1e\x9a\xf5\xaa\xdb\x85\xe0\x69\xca\x8a\xc6\x64\x0d\xb0\x85\x06\x85\x8f\x85\x4f\x3a\x79\xd5\xa4\x2c\x8e\x2a\xc8\xf6\x27\x6b\xdc\x5b\xf5\xf6\x4d\xde\xcd\x55\x38\xda\x9b\x0e\x73\x11\xa2\x87\x3f\x73\x82\x0b\x48\x0b\x6e\xb2\xce\x29\x62\x2b\x8b\x1e\x96\xeb\x4f\xa0\x6a\xa0\xb7\xfa\xf2\x7d\x3a\x90\xf3\x53\xd9\x0c\xd7\x92\x1d\x54\xe4\x01\x9f\xdd\x88\xb1\xbc\x72\xeb\xb7\x7f\xa9\x61\xe6\xd4\xfa\x9f\x44\x3b\x6c\x48\x0f\x18\xfb\xb8\x2f\x42\x5d\x4e\xa3\x87\x39\xcb\x33\x02\xa4\xdc\x20\x80\x67\x76\x2b\xc1\x02\x8f\x09\x89\x6f\x89\x79\x9d\x8b\x60\x89\x6f\x22\x56\x56\x1f\x11\xc5\x25\x2b\xb1\xa1\x89\x31\x26\x58\x3e\xb9\xc9\x44\xcc\xc5\x20\x80\xe7\x73\xf9\x1c\x60\x78\x9e\x33\xd9\x2a\x3c\x1e\xb3\x5b\xa2\xdf\xca\xf3\x5f\xbd\x1c\xa6\x53\xfd\x4e\x33\x97\xea\xf5\xbe\x12\xca\x48\x16\x4b\xb2\x52\x83\x40\xf3\x5a\xf0\x26\x5f\xc0\xef\xf7\x0b\xf8\x05\x6c\x1d\xbc\x78\xa7\x18\x3c\x98\x82\xaa\x05\x8f\xaa\x1e\x3c\xca\x9a\xf0\x20\xeb\xea\x7c\x70\x73\x92\xe6\x83\x40\xff\x38\x26\x69\x1e\xe0\x49\x42\x27\x1f\x06\xc1\x44\xd9\xcb\x4d\xaf\x12\xfd\x62\xca\xf2\x2b\x6b\x46\x07\xec\x27\x4d\x07\x81\x66\x74\xf5\x1b\x96\x0b\xfd\xea\x54\x72\xa6\x59\x7e\x35\xa7\x62\x10\xa8\xbf\x01\x06\x41\xc5\xc0\xc8\x2b\x34\x2f\x1f\x4c\x4c\x96\x2f\x1e\x5f\x6b\x48\xca\x47\x0d\x48\xf9\xa8\x5e\xa8\x67\xbd\x82\xf2\x71\xa8\x98\x77\xf9\xa8\x17\x50\x3e\x1e\xc9\x47\xf5\x56\xae\xb0\x7a\x79\x7a\xab\x4a\xb2\x85\xfc\xcd\x16\xa6\xad\xa9\x69\x69\x1a\x2c\xf1\xac\x77\x7c\xfa\xfe\x7c\x78\x39\x3c\xb9\x18\x9e\x5d\x1e\x0d\xf7\x7e\x19\x5e\x1e\x9f\xfe\x32\xbc\x1c\xfe\x32\x3c\xb9\x38\xdf\xad\xa2\x90\x1e\x41\x05\x87\xf4\x18\xe0\x59\x21\x01\x3c\x02\x12\x2c\x07\x0f\x4b\x84\x39\x63\xf6\xa2\x0e\xe4\x25\x1f\xac\xba\xf8\x6c\x8a\x03\xc0\xc1\x9f\x54\x5c\xf7\xac\xe4\x2e\x0f\x1a\x5c\x88\xc3\x96\x2f\x4a\xd7\x97\x9f\xc0\x08\x62\x12\x2b\xde\x3e\x2a\xe2\x32\x44\xaa\xa4\xbe\xe6\x46\xa1\x3c\xe4\x91\xd2\x4c\xb9\x4a\x2b\x43\x7d\x79\x8d\x37\x95\x00\x0b\x1d\x60\x0c\xc7\x51\xb9\x31\xbf\x9c\x52\x7f\xcd\x6a\xee\xc8\xc7\xc7\xac\x64\x3c\x8a\x42\x66\xdd\xde\x6d\x30\xd6\x78\x37\x1e\x34\x10\x63\x31\x42\x2a\xa6\xdf\x11\xcd\x04\xb8\xf1\xe8\x68\x33\x92\x7a\xa0\xfa\x40\x73\x9e\xf7\x21\x53\xd1\x52\xcd\x75\x2a\xab\xc7\xd3\x29\x18\xd0\xd4\xd6\xc4\x5b\xac\x47\xb3\x30\xe8\xd5\x7c\x43\x2e\xe5\xb2\x64\x1c\x20\x12\x48\x18\xbc\x4f\xe5\x44\xda\x82\xb5\xe3\xe9\xb4\xfd\xb7\x4a\xbd\xbf\xb5\x61\xbc\xb2\x80\x04\x52\x5b\x5f\xe6\xed\x30\xe8\x42\x6a\x44\x35\xb1\xc7\x47\x36\xda\x19\x1b\x9a\x06\x75\x03\xd4\x6b\x1f\xc7\x1f\x48\x3b\xcb\x39\x69\xdf\xb3\xbc\x9d\x11\xd1\xf6\xa0\x2c\xdb\x13\x37\xa4\x2d\xd1\xab\xcd\x78\x3b\x4e\x6d\xcb\x92\xbc\xd7\x5f\x7a\x01\xb2\xfe\x3f\xb9\xfc\x90\xa2\x8a\x07\xc9\x4d\x9c\x79\x2e\x32\xca\xe9\x32\xc5\xb9\x09\x81\x0a\x28\xa7\xb1\x32\x64\x38\xc7\xe9\x28\x1f\x1b\x54\xd4\xef\xeb\x7c\x91\xac\x8f\xcc\x06\xc8\xa0\x71\xb9\x0e\xbf\x81\x2a\x2a\x1a\x40\x22\x70\xe1\x8a\xb6\x76\xac\x17\x0e\xc4\x55\x49\x0b\x64\x1b\x07\x87\x0a\xba\xc4\xb4\xb6\x59\x70\xf8\xd8\x33\x3c\x62\x18\x4c\x63\x11\x6f\xeb\x35\x34\x4a\x4f\x1a\x59\xd3\xa6\x2a\xbd\x32\x4a\x41\x78\x0a\x64\x69\x6a\x02\xd9\x92\x9e\x65\x3b\x33\x1c\x47\x4c\xeb\x36\x5b\x14\x7c\x80\xf5\x7a\xe8\xb0\x9e\x10\xc7\xf3\x41\xb1\xb1\xac\x47\x05\x99\x87\x19\x6a\xed\x44\x51\x94\x80\xcb\x9d\xf3\x9d\xad\x8c\x6d\x3b\x50\x81\x6b\xa8\x09\xae\xb9\x6a\x9c\x89\x12\x9f\x8d\x11\x5a\x2e\xe9\x2c\xa4\x8e\x53\x9c\x44\x5b\x3b\x78\x16\xed\xbc\x9a\x39\x87\xb0\x99\x8b\xfe\x49\x47\xb3\x71\x6b\xda\xe9\x4c\x55\xbc\x7b\xf0\x1e\x8e\x22\xde\xe9\x84\x93\x68\xaa\x61\xcd\x21\x3c\xc4\xc4\xba\x75\x4d\x94\xe2\xfa\x89\x43\xb7\xd3\xb1\xfa\xe1\xe9\x48\x8c\x0d\xf4\xe4\x33\xbe\x89\x04\x2e\x87\xa7\x50\xa2\x24\x7b\x32\xa8\xa3\x51\x2d\x73\x70\x0c\x47\xf6\xad\x3a\x7f\x9c\xa9\x77\x4a\x85\xfb\x12\x12\xbc\xd5\x97\xff\x44\x4f\xd2\x37\x18\x02\x00\xc5\x34\xc1\xa2\x97\x4d\x38\x21\xe9\x3f\xed\xd3\x6f\x58\xf4\x26\x60\xe2\xfc\x4f\xfb\x04\xef\x04\x4f\x7e\x26\xf7\x58\xf4\xe2\x44\xa8\x87\xec\x86\xce\xf4\xa3\xa4\x11\xd5\xd3\x55\x2e\x04\x4b\x81\xc0\x4d\x24\x95\xa4\xf4\x2d\x4d\xc6\x5a\xdc\x9a\x03\x18\x6a\x47\x98\x7c\xb4\x05\xa3\x2d\x48\x43\x8e\xe7\x51\xcd\x7d\x31\x62\xc5\x7c\x89\x4e\x0c\x40\x4c\x53\x3c\x22\xc5\xe1\xbc\x12\x9d\x0e\xe4\xd1\xea\xa5\x6c\x4a\xe4\x99\xe6\xf2\x47\xf1\xc7\x47\xae\xc2\xd1\x6e\x41\xac\x60\x1d\xb2\x2f\x43\xa1\xdc\xe0\xe8\x15\xaa\xdd\x90\x02\xed\xa6\xa1\xc0\x8b\xf0\x06\x13\x84\x06\x42\x1e\x2e\xab\x77\x57\xa7\x43\x5d\x05\xec\x64\x11\x27\x6c\x4a\x96\x2d\x22\x4f\x6b\x58\x3b\x13\xe8\x23\x64\x78\xae\x44\xae\x80\x0e\xb7\xb5\xb0\x10\xe3\x9a\xf8\x33\x06\x0e\xad\x29\x93\xe7\x53\xc3\xf8\x55\x10\x14\x09\x95\x14\x82\x69\xab\x84\x9f\xd0\xfc\x81\xce\xb2\x2f\xc9\xd0\x8a\xd0\xd6\x39\xe8\x6e\x29\x67\x5c\x45\xf5\xbd\x06\x49\xaf\x72\xc8\x5d\x9a\x5b\xa9\x36\xc8\x84\x0f\xa9\x4e\x67\x2d\xc8\xc1\x30\xa9\x1a\xa6\x72\xf9\x2d\xc1\x4f\x79\x2b\x56\x56\x19\xd5\x02\x56\xe0\x5b\xb4\x54\x63\x24\x3d\x96\x86\xa2\xab\x6f\xc1\x00\x9b\xeb\x50\x79\x1d\x85\x55\xd8\xd6\x03\x13\x64\xad\xa9\x77\x40\x0b\x48\xed\x2c\x4a\x07\x74\xb8\x83\xad\x79\xa7\x0a\x8a\x8f\x95\xfe\xb7\x3c\x8a\x51\x05\x0a\xe3\xda\xd1\x90\x9e\xe6\xe2\x15\x9a\xfb\x87\x71\x2a\x4f\x60\x88\xa6\x57\xe8\xd2\x1e\xca\xca\xb5\x57\x14\x5c\x7b\xb5\x45\x90\x3a\x9b\x29\x50\x37\x10\xfd\x48\x85\x17\xed\x25\x71\x26\x0e\x57\x9c\xd1\x78\x07\x19\x9d\xc8\xaa\xf3\x99\xe9\xf3\xb9\x15\x77\x3a\x71\xf9\xa8\x85\x74\x77\x2e\xb1\x4b\x2c\xcf\xfd\xd8\x9e\xbd\x04\xe1\xb4\xb7\xc8\xb3\x1b\x49\xdf\x2c\x55\xb4\xf4\x1a\x61\x10\x04\x12\x54\x26\x3c\xab\x69\x37\xe2\xe1\xca\xae\x68\x22\xc5\xcc\x5e\x59\xf3\x6e\x2f\x86\xc5\xaa\x6e\x5a\x44\x74\x78\xd5\x22\x56\xf2\x3a\xe2\x78\xc4\xc7\x8a\xc6\x2b\x10\x77\x02\xf5\xd8\x6c\x16\x3a\x7c\xf9\xfb\xdf\xbd\xd0\xb3\x1e\xd9\xa8\xfa\xa9\xa7\xff\x9e\xb6\x64\x58\x62\xe3\x73\x5b\x95\xf4\x05\x61\xc9\x00\x1e\x05\x45\xad\xc2\xcd\xfa\xc2\x0d\x23\x0f\xf8\x73\x99\xea\x57\x2a\x0b\xd6\xe4\xe2\x4b\x5c\xbb\xca\x8b\xf1\x09\xbc\x7b\x11\x23\x22\xf3\xc2\x44\xc2\xb0\xbf\xa9\x36\xc2\xdb\x4a\x6b\x51\x6b\x4b\x9d\x66\xc3\x93\x5f\x7a\x97\xd5\xef\xad\x4a\x3f\x0c\xd7\xb5\xd3\xe9\x70\x2b\x0c\x0e\x5d\xd7\x91\x4b\xa7\x4e\xe7\x00\x76\xfd\x09\x6f\xb1\x4e\x87\xee\x52\xb5\x35\xe5\xf1\x29\x27\x5d\xfe\xad\x4e\x80\x0b\x1e\xa7\xd9\x8c\xf0\x00\x0d\x46\x81\x65\x7d\x03\xac\x59\xdd\xc0\xf2\xba\xfa\x39\x51\x2c\x65\x60\xf8\x5a\x78\x94\x8c\xac\x2e\x39\x0d\xc6\x26\xab\x42\x58\x38\xef\x4c\xef\x33\xfa\xf1\x27\xc6\x3e\x64\x23\x32\x8e\x1e\x16\x9c\x2d\x32\xd9\xb1\x3f\x92\xb1\x3c\x16\x06\xfe\x44\x4b\x50\x77\xe0\x8a\xb6\x76\xd0\x3a\xc6\xdf\x4f\xca\x95\x6a\x30\xb7\x59\xbe\xf6\x14\x22\x6f\x2a\x80\xfa\x7c\xa2\xa6\xba\xa0\x4a\x1b\x08\x29\xf5\xc0\x37\x92\x4c\xae\x9a\x77\x6d\x38\xe2\x26\x19\xad\x9f\x3b\x3b\xd8\x82\x20\x21\x8a\xc5\xec\x74\x88\x13\x99\xef\x7a\xcf\x4a\x06\x66\xc5\xe7\x9f\x16\x55\xb0\xe0\x62\x59\x4b\x8b\x19\xaa\xf9\xf1\x91\x18\xb2\x59\x3e\x2a\xaa\x5a\x3e\x19\x4a\x5b\x52\xad\x77\x37\x74\x72\xf3\x63\xdf\x84\xc7\x92\x44\x29\x04\xed\x7b\xca\x55\xa9\x66\xe9\xfe\xa6\xf5\x80\xed\x4c\x56\x69\x3b\xd2\xa0\x3d\x8f\xef\xdb\x34\x15\x9c\x4d\xf3\x09\x69\x4f\x38\xcb\xb2\xed\x8c\x0a\xd2\x56\x31\x23\x64\x9d\xdb\x3c\x49\x25\x31\x4e\x13\x2a\x28\xc9\x5e\xb5\x17\x09\x89\x25\xbd\x94\x02\x9b\x2e\x6e\x62\xd1\x06\x38\x64\xed\x2b\x22\x2b\x5c\xb1\x3c\x9d\xb6\x63\x4e\xda\x0b\x80\x5b\x72\xdf\x56\x46\x25\xd3\x5e\xfb\x0d\xe3\x3a\xfa\x47\x3a\x63\x7c\x0e\xe3\xc6\x6d\x9a\x4e\x92\x1c\x06\x78\xc3\xee\x24\x93\xaf\x0d\x97\xe0\xca\x6c\xdf\xc5\x3c\xa5\xe9\x35\x6e\x67\x84\xb4\x6f\x84\x58\x64\x83\x67\xcf\x00\x31\xfe\x80\xec\x9d\xcf\xbc\xfd\x97\x3d\xbb\xed\xf7\x3e\x3e\xfb\x5f\x82\x4d\x2e\xaf\xd4\xa4\xb7\x61\xd2\xdb\x6e\xd2\xbd\xf6\xb9\x02\xc3\x6c\x46\x26\x82\x4c\x07\xed\xe0\x6f\x5d\xd2\xfd\x5b\xf0\x37\x1d\x31\xce\xfa\x61\xd6\x2e\xa2\x36\x73\x0f\x8a\xae\x10\x83\x79\x4c\xe5\x55\xca\x23\x17\x8a\xae\x98\x08\xaf\xfe\x30\xd3\x82\xac\x11\x19\x9b\xa4\xb1\xa9\xa7\x98\x94\xe7\x35\xd0\x38\x29\x9c\x4d\x5c\x0f\x50\x79\x5b\x42\xa0\xb5\x22\xfd\x59\xb7\x6d\xa9\x0e\xef\xf0\xf8\xa8\x92\xd5\x93\x92\xc3\x63\x5d\x1d\x56\xa9\x93\x35\xf5\x03\x21\x14\x0b\x21\xf2\xb2\xa6\xe6\x65\x51\x56\x28\x5a\x76\x29\x2c\x6a\x92\x5c\x6a\x25\x5b\xb6\x69\xdc\xac\x58\xb6\x60\x39\x5b\x59\x45\x6e\x0d\x65\x6c\x06\xab\xd5\xab\x6a\x16\x34\x57\x71\x09\xb1\xca\xc1\xe7\xf5\x90\x61\x52\x30\xbc\xad\xe5\xe1\x4d\xfc\xcc\x96\xb5\xe5\xe1\x9d\x4e\xc8\x23\x08\xdc\xd3\x02\xcb\x5d\xa5\x07\x57\xbb\x3c\x91\x24\xa7\xd7\x47\xee\x56\x4e\x79\x59\x47\x89\x7b\x73\x06\x69\xa9\x27\xee\x85\xe7\x23\x5d\xb7\xc0\x13\x39\x67\x09\x25\x57\x2c\x44\xcb\x52\x0f\x05\x8f\xe7\x55\xad\x54\x4b\xab\xc6\xe6\x40\x0f\x36\x98\xed\xcf\x74\xa8\x33\x83\x0a\x9a\xd7\xae\x46\xe7\x74\x41\xbe\x1d\x43\xee\x08\x5c\xfd\x26\x14\x36\xee\xa9\xc7\x0c\xaa\xbc\x56\x0a\xcc\xdc\x7b\x8f\x5e\x95\x63\xd3\x5a\x7e\x4d\xc5\x21\x24\xc9\xb1\x1e\x7b\x21\x00\x9f\x1f\x65\x8d\x55\x22\xd5\xc4\xf5\xe1\xcb\x32\x2f\xf7\xbc\x4e\xf2\x69\x3d\x1f\xcd\x66\xc0\x62\x59\xb0\x29\xb3\x48\x33\x1a\xe3\xd4\x61\x4e\x4d\xb0\xb0\xf4\xc9\x73\x65\x2b\x7d\x7c\x4c\x0b\x79\x8f\x0a\xbf\xc9\xf4\xf1\xb1\x74\xca\xd8\xa1\x24\xfe\xf5\x5f\xb0\x44\x50\x28\x58\x88\x4a\x34\x71\xf3\x4c\x54\xee\xc2\x92\xd4\xea\x4c\x99\x55\xb6\x7c\xaf\x65\x50\x8a\xbc\x26\x33\xc6\x49\x28\x49\x3a\x9e\xa9\x05\x52\xe9\xe4\x86\xe9\x74\x6f\x06\xb6\x4a\xc0\x71\xea\x2f\xe0\x9f\x30\x8b\xbc\xe8\x62\x56\x8a\xae\xcf\x86\x5d\xfd\xd7\x93\xf8\x6a\x5c\x7c\x7c\x6c\xfc\x74\x6e\xc5\xd2\x35\x45\xd8\x7f\x8e\xd7\x28\x95\xad\x51\x88\xad\x51\xe6\x8e\x5c\x7d\xa0\xa2\x54\x50\x67\x69\x6a\xf9\xd8\x39\x5b\x83\x24\xab\x44\x50\x59\xcf\xa7\x6d\x9d\xb0\x2c\xca\x06\xed\x2f\x74\xbf\x28\x25\x31\x30\xaa\x4c\xd1\x03\x16\x94\x4c\xb1\xe8\x29\xd9\x82\xe6\x9a\xf1\x03\xcd\xe4\x79\x36\xd8\xda\xc1\xda\x62\x6e\x60\xe3\xce\x57\x14\x54\xd6\x20\xf8\x69\xe3\x11\x65\x6d\x17\x2c\x38\x51\xa6\x28\x41\x8d\x51\x49\xc1\x50\xaf\x67\x8b\xe2\xad\x82\x61\x8d\xa7\x61\xd1\xda\x95\xfd\x38\x4d\x99\xd0\x96\x57\x82\xc6\x82\xb4\xe3\xb6\xf5\xba\x6b\xdf\x51\x71\xc3\x72\xd1\x8e\xdb\x76\x43\xb6\xdf\x55\x69\xb2\x7b\x96\x03\x11\x06\x7b\x4f\xd2\x56\x2a\x69\x66\x37\x80\x06\xda\xb1\xa6\xce\xda\x36\x2f\xc9\x33\x73\xeb\xf5\x02\xb4\xf4\x0c\x5b\x8c\x15\x8b\xa4\x3a\xe7\x20\x12\x14\x31\x4d\x8a\x46\xb9\xf6\x8c\x50\xe6\xad\xda\x58\xc5\xc6\xb1\x73\xe7\x3b\xa4\x7b\xd0\x80\xa9\xa4\x81\xc0\x04\x64\xd4\x2a\x13\x1a\x59\x62\x6d\x92\xba\xae\xf3\x1b\xaf\x77\x7e\x4b\xa3\xfe\xab\xf4\x07\x01\xa1\x71\xf9\x28\x2d\x7a\x51\xa5\xe3\xd6\x93\x4b\xae\x0f\x7f\x30\x02\x57\x66\xe3\x35\xc2\x4c\x8a\x2c\xbd\xe5\x35\xc2\xc1\x08\xa7\x0e\x56\x0d\xe9\x4e\x47\x64\xac\xb3\x90\x6a\x45\xa9\x32\x38\x4e\xfd\xdc\x90\xa1\x46\x6a\x9d\x16\x03\xb6\x8c\xb9\xa0\xfc\x54\x0a\x6b\x9f\x0d\x7a\x1b\xaf\x1d\x81\xca\xaf\xf5\x6c\xc1\xc9\x25\xd7\x7b\x60\xfd\x5a\x37\x71\x66\xcc\xc1\x37\xa9\x46\xd3\xcb\x29\x9b\x6f\x52\x63\xea\xb2\x02\xfe\x95\xb9\xae\x8a\xae\x48\x0f\x76\xf3\x0f\x84\x77\xfa\x1c\x9c\x1e\x0f\x6c\x18\x08\x89\x27\x46\x81\xee\x8e\x28\x37\xfc\x81\x0b\xea\x50\xc8\xa7\xb4\xe1\x2a\x3f\xd3\x15\x6b\x57\x5b\xe5\x77\xf8\x6b\xac\xa3\x1f\x6a\xdd\xd8\xd0\x83\x3b\x0e\x2d\xa8\xc2\xe0\x37\x96\xb7\x27\x71\xfa\x37\xd1\x96\x43\xf1\x6a\xb6\x59\x2e\x32\x3a\x25\x6d\xd8\x3f\x44\x1f\x89\xf2\xb8\xd3\xc9\x9f\x82\x26\x33\x38\x2f\xaa\x6e\xad\xf5\x67\xad\x38\x79\xe9\x25\x63\xd0\x6b\xcb\x37\xf5\xe1\x6a\x42\xcf\x35\xb3\x34\xa8\x35\xda\x68\x07\xa8\x05\xff\xeb\x32\xc7\x00\x7b\xe5\x59\x61\x38\x1c\x7f\x7a\xd1\x79\xdd\xa2\x4b\x4e\xa1\xb8\xea\x69\x3b\x6e\xcb\x59\x6a\x99\xc3\xd4\xa6\x13\x45\xf5\xab\xb9\x4e\x07\xa6\xde\xca\xd6\x97\x08\x97\x77\x37\xfd\x53\xfb\xb1\x70\x12\xae\x87\x02\x1b\x6c\x72\x53\x85\xe7\x69\xc2\x98\x17\x9e\xcf\xdd\xe7\x4a\x70\xf9\x57\x1e\x8e\x65\xfc\x70\xc7\xdd\x43\x75\xed\x08\x7a\xf0\x58\x0f\x6b\x79\x4d\xea\xf4\x3d\xe5\xb2\xa0\xf2\x20\x2b\x0c\x61\x25\xa9\xaa\x8f\x01\xa2\x33\x3e\x80\x4b\x37\xed\xcd\x92\xf8\xfa\x9a\x4c\x0f\x2d\x98\x50\x18\x00\xd8\x95\x8a\xab\x17\x74\x05\x56\x16\x74\x03\x8e\x25\xec\x07\x64\x59\x93\x4b\x1e\x12\x79\xfd\xc1\x68\x8a\x42\x02\xe9\x10\x80\xa2\x51\xe1\x60\x91\x32\xe1\x2e\x61\x13\xf3\xb1\x29\xde\x14\x9b\xcc\x05\xb9\x91\x43\xc6\xe7\x38\x65\x7c\x34\xfe\x8b\x71\xa9\x60\xf1\x45\x1d\x2e\x29\xc3\xb6\x46\xe4\x50\xca\x48\x45\x60\x7d\xe6\x55\xf0\x69\xa2\x4f\x22\xaa\x2a\xfb\xd7\x2d\xd1\x5f\xc5\x6c\x95\x01\x2b\x5c\x36\x35\x5a\x02\x56\x8a\x9a\xc9\x4e\x4f\xd3\xf8\xec\x3a\x61\x57\x71\x92\x6d\x73\x92\xb1\xe4\xb6\x0c\x1c\xa5\x99\x6c\xce\xa0\xf6\xa9\x5e\x44\x36\x1d\xd4\x66\xbc\xee\x75\x42\xe7\x73\x9f\xa8\xdd\xd8\xfc\xb7\x46\x85\x98\xfc\xf9\xe5\xc1\x79\xef\xed\xd1\xe9\xeb\xbd\xa3\xf3\xcb\xb3\xe1\xf9\xe9\xd1\x2f\xc3\xb3\x4e\x27\x4c\xbe\x50\x76\x55\x4c\xb5\xf0\x26\xaa\xf5\xea\x51\xdf\x5c\xe2\x4f\x2c\xd0\x52\xcb\xc2\x6a\x12\xb2\xc6\x95\x84\xac\x8a\xd3\x59\xc4\x3c\x83\x0c\xa3\x2a\x58\x2f\x60\x5e\x25\x94\xcf\x12\xc7\xbd\x94\xf1\x39\xb8\x62\xd7\xab\x57\x16\x09\x15\x61\x30\x00\x31\xbc\x18\xed\x8c\x71\x1a\x89\x51\xdf\xc8\xe3\x6d\x04\x9b\x60\x2b\x8a\xf8\x2e\xef\x06\x83\xa0\x2b\x19\x2b\xf0\x9b\x0e\x9f\x85\xbf\xf7\x1e\x2f\x1f\xb7\x51\xef\xd9\x75\x51\xa7\xe6\x66\x7b\x13\xf3\x3d\x11\xf6\x51\x4f\xb0\xf7\x8b\x05\xe1\xfb\x71\x46\x42\x79\x90\xcb\xc3\x3f\xee\x69\xbc\xae\x0e\xce\xf8\xf1\xd9\x89\x82\xf9\x42\xc4\x4d\x0d\x95\x6e\x59\x7e\xf0\xd3\x07\x8c\xd2\xb1\x4d\x49\x3f\x4a\xc7\x21\x57\xc6\x42\x9a\x3f\xd4\x55\x4f\xc5\x0d\xe1\x21\x07\xf0\xd8\xe6\x1b\xc3\x41\x97\x40\x0d\xdc\x66\xd8\xf0\x25\x2a\xbd\x87\xac\x14\x38\xf6\xde\xac\xb9\x0a\x14\x56\x01\xc7\x11\xc5\x99\xcd\x73\xeb\x27\xd3\x55\x59\x90\x11\xce\xa3\xb8\x68\x59\xf2\x2c\x40\x38\x89\xc0\xf0\x24\xdf\x8d\x7b\x59\x42\x27\x24\xdc\xc1\x39\x02\x99\x04\x70\xe2\x85\x45\xed\x74\x54\x59\x35\x9a\x49\x14\x9b\xd1\x3c\x0b\x50\x2b\x8e\x26\xa3\x89\x0d\xe3\xae\x82\xde\xcc\x22\x48\x8f\xed\x7c\xfc\x51\x38\xb1\xdd\x6c\xf7\x11\x5c\xdd\x61\xd0\x0b\x10\x6a\xe9\xb1\x17\x92\xc6\xa2\x70\xa6\xf2\x40\x4f\xa3\x00\x74\x05\x2a\x16\xfe\xb1\x7c\x54\x39\xbf\xc1\x02\x83\xce\xee\x91\x64\x14\x20\x44\xce\xe3\xe3\x16\xaf\x37\xab\x3d\x4c\x6f\xe3\x84\x4e\xdb\x26\x91\xe5\xa0\xfd\x2f\x48\x6d\xf5\x2f\xdc\x9e\xe7\x99\x68\x5f\x59\x36\x67\xc6\xf8\xbc\xfd\x2f\xb9\xb7\x06\x12\x80\xff\x6a\x5b\x25\xc5\x83\xad\x4c\x30\x7c\xe7\xd8\xbc\xf9\x55\x09\x8e\xc0\x01\x90\xe2\x29\xe5\xb2\xea\x20\xc1\xf0\x27\x06\x0b\xee\x41\x86\x2b\x28\x39\x08\xf4\xab\xa0\x3b\x5d\x4a\x04\x28\xa6\x7d\xaa\x0d\xa8\x53\x87\xf0\x95\x6d\x18\x45\x11\x87\x84\x88\xbb\xf6\x5d\x3b\x16\xed\xa0\xcb\x7b\x35\x43\x76\x1b\xf5\x77\xb9\x43\xe5\x92\x0e\x42\x21\xf7\x10\x63\xa2\x1b\xf4\x82\x6e\x19\xde\x60\xaa\x84\xca\xf5\x02\x04\x99\x9a\x49\x02\x18\x03\xfd\xcb\x5d\xd6\x8d\x2a\xd5\x21\x3b\x28\x02\xfd\x44\x0c\x89\xa8\x2e\x2a\x29\xa2\xfd\xd3\xc1\x4b\xdb\x80\xe3\x5e\x9e\x91\x33\x96\x0b\xc2\x4f\xe2\x79\xb9\x4a\x70\x15\x67\x74\x12\x80\xc9\x1c\x64\x9d\x50\x7f\xa2\x20\x18\xe8\x27\xf5\xa7\x3c\xf4\xcb\x00\x79\xc7\xcc\x85\x86\x59\xed\x2e\x5c\x0f\x80\x2d\x4b\xa4\x42\x8a\x36\xd3\x22\x32\x64\x70\xe9\x2d\x40\x68\x4a\x26\xf1\x9c\xa8\xbd\x22\x90\x3f\xa0\x26\x0d\x24\x60\x42\x09\x1e\xa1\x89\xf7\x50\x38\xc6\x88\xdf\xdc\x3e\x4b\x05\x67\x49\x42\x6a\x53\xa8\x7d\x62\xa3\x50\xfc\x33\xb6\x77\x2c\x31\xa9\x66\x05\x4a\xc8\xa4\xd6\xd3\x83\xb7\x3e\x03\x09\x60\xaf\x46\x31\xdd\xe4\x4f\x24\x59\xac\x98\x73\xf3\x58\xe0\xd5\xda\x63\x29\x6f\x17\x95\x9b\x74\xbd\x21\xca\xf3\x6d\x9d\x8e\xd6\x68\xf1\x43\xca\xee\xd2\x37\x8c\x4b\x0c\x6d\x30\xe6\x5d\x75\x65\xd0\x4a\xa7\x92\x96\x97\xe7\xaa\xca\xc0\x19\xd2\x6e\xf0\x55\x80\x70\xd6\x40\x55\xe0\x3c\x2a\xaa\xe9\x71\x12\xed\xbc\x4a\x7e\xc8\x8d\x35\x64\x62\xac\x21\x27\x51\x3e\x4a\x40\xfa\x1b\xab\xc4\x1c\x13\x84\xb2\x91\x8e\xad\x15\xa7\x99\xdc\x22\x17\xcc\x8a\xb3\xdf\xe4\x49\x92\xc2\xc1\x87\x27\x68\x1c\x6d\xed\x18\x33\xf1\x4c\xce\x7a\x55\x8d\x5a\xe5\x71\x75\x96\x69\x24\xbc\x9b\xea\xef\xdc\x64\xec\xb3\xc6\x7f\x40\xdf\xa8\x2d\x1b\x67\x92\xb0\x93\x3b\x36\x55\xa9\xd9\x63\xed\x0b\x86\x8c\x77\x65\xd2\xec\x4d\xe9\x53\xf0\x6b\xa5\x2a\x28\xd9\xf5\xf8\xf5\x25\xa3\x93\xc4\xff\xb9\xbf\x4c\x58\x3c\x6d\x2e\xe2\x9b\x27\x7e\x01\xb1\xd5\xaa\x08\xd2\xa7\x6a\xf0\x6b\x46\x85\x37\x15\x9e\x8a\xe9\xbc\x59\xab\xd9\x3a\xad\xb2\xf4\x08\x60\xb8\x66\x84\x63\x55\x7c\x65\x8b\x3c\x87\x32\x60\x54\xb7\x76\xbb\x7e\xa5\x95\xad\xc3\x92\xaf\x1d\x70\x9f\xf7\x74\xf9\x95\x6d\x5a\x36\x79\xe3\x88\xcb\xab\x50\x5c\xa7\x30\xde\x5c\x18\xd7\xec\x2e\xbb\x51\xf8\x0a\x4f\x0a\x93\x5e\xd3\x94\x78\x43\x5a\xc1\xa7\x7e\xc1\x6c\xfd\x75\xb9\xf9\x23\x1b\x0b\xda\xfa\x93\x7a\x50\x54\x3a\xc3\x49\x9e\x09\x36\xd7\xc1\x98\xe0\x8d\xef\x25\xf8\x67\x9c\xe3\xbd\xae\x7a\x97\x77\xb1\x98\xdc\x1c\x6a\x18\x69\x0b\x7c\x7d\x55\x6a\x19\x4f\xe0\x1b\x3c\x6f\x1b\x70\x2a\xeb\x1e\x15\xd7\xe7\xc1\xd3\xb6\x0e\xb6\xfa\x4b\xb4\xc4\x97\x57\x8c\x89\xf3\xfb\x74\x52\xa7\xe9\x54\xe3\x94\x25\xc8\xf4\xf1\x31\x24\x70\xe5\xe4\x96\x60\x00\x47\xb1\x33\xad\x4f\x0d\x21\x27\xbf\x37\xf5\x5d\x35\x3a\xf7\x22\x2a\x7c\x1e\x54\x3e\x57\xe6\xec\x7d\x84\x3c\xac\xea\x35\xb8\x32\x72\xe7\xca\xd8\xe3\x40\xcc\xe0\xc0\x14\x08\xbc\xc2\x35\x90\xe4\x79\x6a\xc0\x78\x98\x52\x41\x81\x23\xe2\x99\x06\xa9\x4d\x91\x1c\x4f\x04\xbd\x25\xbe\xab\x5c\xc9\x00\xdc\x7a\x77\x2a\xf8\x44\x5b\x3b\x26\x5a\x44\x01\x2e\xd5\x68\x4d\x5e\x6c\x90\x12\x08\x55\x7b\x97\x46\x45\x7d\x79\x09\x31\x9b\xd4\xfc\x94\xf5\xe6\x84\xcd\x17\xb9\x20\x53\xd4\x94\x93\xd1\xda\x78\xe9\x5a\xca\xb6\x6b\x89\x24\x87\x10\x4f\x4f\xd3\xe4\x3e\x44\x78\x4a\xa7\xfb\xca\x58\x45\x1b\x01\x96\xe4\x87\x85\x28\x18\xfe\x32\xa0\x25\x06\x83\x67\x49\x3f\x96\xcc\xe4\xbd\xa5\xe8\xf9\x65\x2c\x98\xa6\x74\x7a\x0e\xb3\x85\x32\x92\x56\xd0\x80\x52\x03\xad\x6c\x8f\x62\x79\xcb\xc1\x57\x9a\xc1\x85\x9e\xdd\xa7\xd0\xc5\x86\x78\x7f\x76\xd4\x88\xde\x85\x1a\x85\xb6\x6c\x5d\x20\x40\xeb\x50\xa0\xe2\x83\x11\x15\x96\xa0\x1c\xc4\xc0\x98\x4f\xa6\xa5\x58\xab\x3e\x7a\xe2\xc0\x3f\x4f\x0c\xed\x57\x08\xcc\x5a\x2a\x50\xd5\x34\xa4\x98\x7a\xde\x11\x30\xf0\x90\xe1\xca\x5a\x62\xb2\x94\x77\x48\x01\x38\x25\x2a\x5c\x01\x22\xe7\xc9\x12\xdf\xd2\x8c\x8a\x86\x78\x4e\xad\x2a\x24\x5b\xbe\xf3\xf2\xa5\xb5\x8b\xb8\xbc\x74\x46\x88\xde\x35\x61\x20\xa3\xec\x0f\xcc\x8e\x66\x51\xdd\xf5\xc6\x80\x1b\xcf\x7a\xd9\x0d\xcb\x93\xa9\x52\x38\xab\xb8\x1b\x4a\x18\x7d\x4e\x84\x00\xff\x63\xd4\x13\x37\x24\xad\xdd\x28\x4b\x84\x06\x62\x89\xfd\xd8\xbd\xd4\x3b\x40\x2c\xf4\x60\x52\x0a\x03\x30\xf5\x10\x02\x58\x46\xf9\x80\x74\x27\xcc\xdd\x4b\x36\x57\xb2\xe8\x81\x7e\x41\x4b\x41\xf4\x2f\x10\xe7\x5c\xd8\x10\x59\x7b\x57\x8c\x0b\x32\x0d\x94\x17\x17\x58\x6f\xd3\xde\xa5\x9a\xff\x31\x9d\x70\x96\xd0\xab\x9e\x3a\x8a\x5c\x25\x67\x84\xf1\x54\x49\x33\x38\x82\x5a\x30\x8a\x55\x3d\xef\x3a\xe3\x1c\xd1\x9b\x2b\x33\x6b\x09\x25\x54\x8c\x14\xf3\x67\xef\xb1\x3c\xad\xb9\xc9\x96\x4b\xd4\xca\x8a\xd6\x1f\x4d\x87\x68\x4d\x4e\xf8\x87\x25\xc2\xa2\x27\xd8\xd0\x21\x94\x3c\x2e\xf4\x6d\x25\xc0\xe1\xcc\xbb\x25\x2b\x78\x57\xae\x1c\xa2\xea\x4d\x59\x68\x22\x23\xfc\x96\x4e\xc8\x60\xdb\xd8\xfe\xc9\x26\xcc\x73\x4d\xdd\x82\xa9\x0b\x04\x9a\x51\xfb\x23\x6f\xca\xb7\xe7\x4d\x51\x05\x6a\x7e\x30\xad\x18\x27\x0f\xe3\xbb\x02\x2f\x0b\x57\x16\xb8\x49\x67\x07\xa7\xc7\xba\x5b\xb5\x2b\x24\x0b\x1f\x11\xff\x17\xf6\x4c\x4e\x69\xf6\x5a\xd1\x6e\xbb\xba\x3d\xfd\x33\x7a\xad\x92\x79\x86\x5e\x11\x1d\x6a\xd9\x95\x29\xf6\x67\xdf\x9b\x13\x5b\x8f\x18\x08\xa1\x9a\xd1\x6e\xf5\xb1\x3e\x34\x15\x86\x44\x41\xca\x52\xc9\xf4\x7a\xc3\x2b\x6c\x75\x75\xd6\x78\x6f\xbc\x41\xfa\xaf\xf5\x38\x0b\x25\xcd\x6d\xe1\xbf\x5c\x7b\x9c\x40\x24\xea\x45\x56\xa3\x30\xbf\x22\xf7\x61\x50\xfc\x50\x67\xbe\x69\xdb\xb0\x75\xa0\xcf\x02\x75\x64\x72\x09\x36\x92\x4f\x05\xf8\x78\xa4\x51\x11\x96\x3e\x21\xe4\x95\x57\x53\x35\xa5\xf5\xc4\xcd\x6b\x54\x44\x8c\x02\x31\x14\xd6\x00\xc6\x47\x11\xef\x3d\xb2\x2e\xe3\xa4\x90\xd4\xd2\xdb\x67\x51\xe5\xfa\xac\xdc\x64\xde\x3d\xa6\x90\x2c\x2a\x22\x59\x99\x5e\x8b\xaa\x03\xc4\x05\xac\x8f\xca\x9b\x02\x13\x73\xa3\x58\x8b\x3c\xb2\x0c\x11\x4e\xa2\xcc\x93\x16\x24\xcd\xac\x54\x99\x95\xff\x4c\xea\xbe\x3f\xe9\xfe\x57\x50\x0e\x56\xec\x22\x9a\xd9\xb9\x35\xe4\x18\x7f\x3a\x40\x12\x57\x94\x61\x7d\xa7\x55\x36\x50\xf1\x87\xb5\x2d\x59\xba\xe2\x0b\x29\x37\x5d\xee\x3f\xbc\xc0\x73\x7c\xdb\xe4\x8c\x75\x5f\xc4\x60\x01\x56\x15\x46\xa4\x7c\x44\x25\x2e\x26\x5a\xdf\x38\x0a\xb6\xaf\xf2\xc9\x07\x22\xb6\x27\xf1\xe4\x46\xb3\x67\x63\x8b\xe7\xf7\x35\x34\x0f\xa0\xe4\xe7\xe1\x68\xaf\xe4\x79\x7b\x1d\xdd\x54\xd8\xda\x9a\xc8\x36\xa4\x44\xec\x36\x70\xbb\x71\x2e\x98\x64\x81\xc0\xfa\x58\x2b\xbf\xe5\xc6\x82\xdf\xde\xca\x9a\x1b\x3f\xfb\x53\x3c\xf1\x57\xe6\xb8\xfe\x2a\x9a\xd8\x03\xeb\xce\x32\x19\x92\xc9\xa1\x29\xc9\xb2\x03\x32\x23\x9c\xc7\x49\x16\xf5\x4b\x6c\x9a\xf9\x5d\x37\x34\xe3\xbb\xa0\xe9\x16\x3d\x33\x7d\x66\x78\x73\xb3\x87\x5e\xa1\x9c\x19\x84\x57\x50\xf3\x8f\x97\x0b\x4e\x16\x31\x27\x6f\x18\x7f\xeb\x3e\x9a\x51\x9b\xfa\xba\xf0\x5d\x4c\xc5\x1b\xc6\x0f\x4e\x8f\xcf\x48\x3c\xbd\x0f\x21\x02\x34\x4d\xa6\x66\x94\x75\xac\x4c\x0d\xb9\x40\x7a\x57\x71\x46\xf4\xa1\xe6\xd3\x60\xea\xd5\xd4\xa2\x80\x0e\x44\x04\x61\x9f\x0b\xb4\x59\x4d\x70\xe3\x3a\xa0\xe9\x9c\xdb\x4b\x5c\xa6\xed\x9a\x45\x0a\xb5\xcd\x78\xce\x4d\xf5\xf0\xaa\xa0\x8b\xe6\x01\x43\xef\xc7\xe3\xe3\x4c\x3f\x21\x83\xdb\x96\x4f\x97\x40\x3c\xb0\x47\x80\xa5\x40\x41\x0a\x52\xff\xad\x81\xc1\x2b\x2c\x47\x88\xb4\x71\xf5\xe5\xb4\x52\xff\xf2\xd2\x64\x4a\x2e\xf0\x40\x92\x10\xf3\x7f\x2f\x71\x69\xcd\xfd\x7e\xb7\x0c\xde\xab\xbf\x3d\x9a\x41\x11\xc5\xf2\x64\x93\x1b\x22\xb7\x3e\x0a\x75\x2a\x0f\x13\x2d\x3a\x98\xb2\x39\x94\x0b\x34\x1d\xf4\x55\xa8\x44\x00\xf7\x2a\x3e\xc6\x15\x4d\xa7\x86\xa1\x74\x45\xd1\x12\x9b\x1f\x15\x60\x17\x7d\x6b\x8a\xaf\xc8\xd4\xd8\x73\x1b\x71\x52\x08\x96\x6b\x33\xc2\xcf\xcc\x8e\xac\x6e\xf6\xea\x66\xed\x76\x97\x38\x9e\xde\x4a\xd0\x6d\x54\x6f\x7b\x1b\xef\x98\xe8\x91\x35\x9f\x41\x64\x14\xf7\x58\x3a\x21\x7a\xce\x8a\x4a\xa3\xd3\xd7\x64\xc2\xe6\xd0\xd7\xbd\xdc\x66\xf2\x18\xab\x73\x95\x90\x1f\xde\x71\x36\xa7\x19\x41\x15\xd9\x98\xfe\xd0\x12\xfc\xfe\xa1\x02\x84\x89\xdc\x10\x12\xff\x97\x4d\xf5\x6a\x65\x70\x2a\x00\x43\x58\x14\xc0\xad\xb1\x0c\xa8\x80\xa7\x50\xf3\x4c\xdb\x21\x45\x49\xef\xec\xfc\x97\x77\x3d\x58\x15\x8b\xb4\xde\x40\x54\xde\xed\xe2\x54\x40\x58\xe6\x09\xc9\x10\x0e\x77\x70\x5e\x90\x87\x4b\xd4\xf3\xc9\x1f\x4f\x34\x59\x5e\x4a\x0b\x0f\x61\x6c\x55\x25\x57\xf5\x87\x0a\xa9\x8b\xc5\x12\x42\xd4\x66\x45\xb1\xb6\x3f\x9d\xda\x1d\xd6\x5a\xeb\xe4\x37\x73\x74\xe4\x7d\x11\x38\xa5\xf7\xea\xa2\x50\x01\x3b\xc1\xae\x11\xb0\xc6\x17\x25\x28\x89\x43\x0e\x26\x8f\x81\xb6\xd1\x0c\x9e\x3c\x6a\xf0\x13\xbb\xd6\xa2\x02\xc8\xec\x96\xb8\x88\xa2\x65\xfc\xa8\x20\x44\xa7\xb3\x55\xc1\x08\xb9\x96\x00\xc4\x96\x8a\x8d\xc3\x7a\x34\xbb\x20\x99\xa4\xc0\x50\x88\x1e\x1f\x43\x50\x81\x6b\x43\xf2\x3d\xa5\x50\x07\xc5\x63\x86\xd4\x78\x41\x08\x62\xdf\x9e\x93\x98\x4f\x6e\x5c\x94\xb7\xad\x1d\x54\xba\xc6\x50\x48\xaa\x37\xe6\xee\x8a\x15\x1c\xd4\x1d\xaa\xc8\xdf\x46\x46\xd2\x0d\xd7\x21\x04\xe9\xf1\x05\x8c\xad\xea\x7a\x1a\x1d\xae\x2f\x28\x77\x82\xda\x32\x16\xd6\xd6\xf7\xd0\x12\xf3\x32\xf4\xfd\x50\xd7\x9f\x2e\x1d\x79\x1a\xb8\x7d\x84\x73\xa3\x24\x2a\xdc\xe1\xea\xb0\xeb\x74\xc2\xfa\xcf\x8a\x1e\x40\x2b\x48\x9d\x42\xca\xfa\xfa\x12\xb5\x3e\x97\x5e\xac\x6b\x15\x4c\x18\xb4\x4c\x2b\x5a\xd1\x19\xed\x51\x55\x84\xe8\x14\xbf\x20\x44\xf4\x0f\x48\xb9\x16\x75\x02\x3c\x25\x55\xe4\x95\x1b\xd8\x4a\x07\xa1\xa2\x68\x16\xfd\xa5\x3d\x18\x85\xa4\x32\x10\xea\x29\x3c\x08\x8b\x74\x0e\x67\x77\x6e\x73\xa7\xfe\xe6\x26\x4b\xa4\x0d\x9a\x1d\xe9\x7f\x69\x4c\x6e\x8d\x70\xc8\x17\xbc\x63\x43\x8c\x58\x5a\xa4\x24\x8b\xaa\x71\xc4\xc6\x0f\x8a\x20\x6b\xc8\x97\x54\x35\x19\x2c\x09\xa7\xa0\xff\x81\x32\xbe\x31\xfd\x17\x4b\xd4\xcb\xa5\xf1\xa4\x57\x0e\x71\x03\x3e\xe0\x7f\xa8\xd4\x2c\xa5\x89\x79\xf6\x09\xd8\x3f\xff\x8d\x24\xd7\xef\xcf\xc8\x20\x06\xf2\x84\x90\x63\xda\xcb\x05\x3b\xb2\x82\x89\xda\xa2\x37\x71\x76\x23\x8b\xfe\x14\x67\x37\x4f\x15\xa5\x99\x60\xfc\x1e\x4a\xab\xc7\x27\x2a\x80\x80\x09\xcf\x7a\x27\x2c\x25\xb5\x45\xc3\x1d\xbc\xe8\x2d\x38\xbd\x8d\x05\xd8\x13\xdc\xcb\x75\x6b\x5c\x16\x30\x70\x9b\xf5\x5e\x03\x57\x07\x76\x85\xe5\x25\x31\xf2\x42\x05\x41\x87\x15\xe7\xea\x7d\x09\xce\xe5\xd2\xc1\xa5\x7d\x2a\x2a\x75\x2c\x0e\xde\x85\xe8\xe1\xea\xf1\x31\xbc\x8a\xb6\x76\xf0\x6d\x6d\x48\x1c\x17\x1f\x7d\x6b\x52\x8a\x0b\xd3\xe9\x64\xbd\x84\x5e\xf1\x98\x53\xe2\xd4\x89\xfb\x8c\x93\x23\x78\x7b\x1f\xda\x04\xf5\x10\x30\xce\x44\x65\x42\x3d\x15\x20\x06\xa1\xe5\x75\x51\x76\x0b\xbb\xb3\x2a\xbb\x2d\x5e\xe6\xab\x7c\x11\x35\x60\xe5\xde\x92\x7d\xce\x95\x6e\x61\xcf\xa1\x99\x69\x1c\x8c\x44\x88\x91\xa7\x0e\xa3\x6b\x4f\x66\x33\x5c\x2d\xb3\xf1\x24\x1b\x9f\x3f\x10\xd3\x17\xb0\x5f\x57\xb6\x0d\xb5\x76\x33\x14\x22\x6b\x8c\xc8\x38\x4a\xc1\xd8\x75\x34\xc6\xf2\x41\xf9\xbb\x0b\x84\x79\xa7\x23\x42\x15\xd3\xc1\xa7\xdc\xaa\x51\x08\x28\x58\xc4\x62\xde\xbb\xa3\xe9\x94\xdd\x75\x3a\x35\x0e\x9c\xfb\x4e\x02\x60\x22\xa8\xc9\x0d\xe0\xbd\x0e\x09\x7e\x50\xf1\x17\x07\x42\xd9\x5d\x92\x25\x6a\x99\x46\x7b\xe6\xe0\x51\x65\x19\x5a\xca\xb1\x76\x3a\x30\xe2\x95\x57\x4e\x28\x14\x51\x44\xcc\x95\x57\x76\x9c\x1e\x9e\xfc\xd2\x1b\x1e\xbf\x1e\x9e\x5d\x1e\x9d\xee\x1d\x5c\xfe\x74\x7a\xfa\xf3\xf9\xe3\xe3\xc3\x12\xd3\xe8\x61\x89\x59\x44\x5b\xae\x2a\x5b\x22\xd4\x72\xd8\x31\x89\xe5\x91\x6a\xc5\x42\xeb\xd9\x00\xd5\x62\xc6\x17\x75\x62\xa0\xd9\x30\x55\xc1\x9c\xaa\xf1\x3e\x00\x0b\x8c\xbb\x9f\x0a\xf4\x08\x01\xb5\xf8\x2e\x1f\x6c\x6d\x69\xe8\x9c\x40\xee\x9d\xd3\x77\xf2\x54\xd8\x3b\xba\x7c\x33\xdc\xbb\x78\x7f\x36\x3c\x97\x40\x55\x90\xdb\xdf\xdb\xff\x69\x78\xb9\xf7\xee\x30\x32\x6f\xde\x1e\x1d\x1e\x1f\x0f\xcf\x2e\x0f\x4f\x2e\x87\x47\xc3\xe3\xe1\xc9\x85\xfd\x74\x76\xfa\xfe\xe2\xf0\xe4\xed\xe5\xf1\xe9\xc1\xf0\xe8\x72\xef\xec\x6d\xa5\xd2\xf9\xf0\xe2\x72\xff\xf4\xf8\xdd\xe9\xc9\xf0\xe4\xe2\xf2\x62\x78\xfc\xee\x68\xef\x62\x68\x8b\xed\xbf\x3f\xbf\x38\x3d\xf6\x4a\xec\x9d\xbd\xbd\x7c\x77\x76\xfa\xcf\xdf\x6c\x91\xe3\xd3\x83\xf7\x47\xc3\xcb\xf7\x27\x87\x6f\x0e\xf7\xe1\x34\xb3\x9f\x4e\xf6\x8e\x87\x07\x97\xaf\x8f\x4e\xf7\x7f\x3e\xb7\x2f\x0f\x8f\xdf\x9d\x9d\xfe\x32\x3c\xb8\x3c\x3c\x39\xbf\x38\x7b\x2f\xc7\x5b\xac\x75\x74\xf8\xfa\x6c\xef\xec\x70\x78\x7e\x79\x78\x7e\x36\x7c\x7b\x78\x7e\x31\x3c\x1b\x1e\x44\xa4\x67\x80\x11\x91\xde\xc1\xf0\xcd\xde\xfb\xa3\x0b\x0b\x9f\x22\xa6\x3d\xac\x6a\x68\xb0\xd5\xc7\xab\x47\xe2\x4a\xf8\x13\x70\x6f\xab\x33\x76\xdf\x9a\x01\x36\xd8\xda\xc1\xeb\xc0\xde\x95\xab\xac\x5e\xb5\x09\xb7\xe6\xee\x9b\xc5\x90\xc1\x56\x7f\xd9\xaa\x81\x55\xea\x3c\x24\x9d\x73\x4d\x8a\x15\x06\x9a\x52\x1e\x09\xc5\xdc\x26\xdf\x0a\x9f\x40\x54\x15\xac\x67\x2b\x8a\x08\x7a\x7c\x24\x4b\x6f\xd1\xa8\x76\xc9\x60\x21\x5d\xb9\xd0\xa8\xf5\x04\x22\xc4\xc6\xf6\xc7\x36\xd4\xb4\x90\xae\xa9\x46\xa4\xcb\xb4\xa2\xcf\x35\xe6\xaf\xb9\x6b\xa0\x80\xca\xb9\x4e\x7e\xe3\x2a\x55\x51\xc2\x55\xad\xd9\x20\x89\x36\x78\x74\x0d\x34\xe3\x8d\x6b\x68\xc5\x66\x9c\x68\x47\x02\xd7\xe0\x6a\x24\x73\x8d\x3e\x71\x10\xcc\x74\xa0\x7f\xd7\x70\x05\x2b\x5d\x5b\xd5\xe3\x66\x0a\xd5\x6f\x6a\xc6\xe5\x30\xb7\x3a\x16\xef\x24\xbb\x81\x06\x16\x3e\xa4\x0c\x7a\x7b\x80\xb1\x67\xe2\xa2\x48\x53\xd8\x78\x15\xeb\xdd\x17\x0d\x56\x6c\x5f\xcc\xd2\x73\xdf\x0c\x6f\x6d\xa3\x4c\x5b\xa3\x62\x3d\xe8\xa6\x6a\xdc\x18\xb6\x55\x46\xc7\xf5\x72\x8b\x7c\xde\x28\x7d\xe0\x38\xaf\xc3\x60\xd1\xcc\x28\x5a\x4e\xd3\xe4\xde\x4e\xa0\xd6\x7d\xc1\x4f\xf4\x24\x64\xe5\xfa\xaa\xde\x61\x2f\xd6\x56\xd1\x3f\x05\x28\xcd\x24\xcf\x61\xae\xe0\x58\x44\xea\x35\xa4\x65\xf7\x8b\xa2\xec\xdc\xd5\x57\x8a\xca\x56\xd3\x24\x44\x79\xfd\x8c\xa3\xc1\x7a\xb8\xba\x4a\xb5\x57\xd2\x19\x7a\x4d\xab\x1c\xe3\xe6\xe7\x25\xa4\x51\xfb\x32\x3e\xf9\x8a\x61\xaa\x81\x12\xd7\x9f\x8a\x19\xa2\x47\x81\x1b\x56\x30\x36\x61\xd5\x21\x8c\x8a\x07\x7c\x30\x35\x57\x8e\x7e\x8e\x1b\x51\x24\x67\x6d\x0c\x80\xc6\x58\x3d\xd6\x0a\x77\x85\xd3\xe8\x53\x60\xfb\x7c\x29\x6f\x2b\x0a\xe7\xbf\x34\x4a\x42\xda\xcb\xee\xe7\x57\x2c\x41\x61\x00\x07\x37\xd8\xac\x55\xf2\xd6\x56\x22\x1a\x39\xcf\x18\x79\x60\xa9\x08\xdf\x4a\x75\x28\x79\x7c\x9d\x76\x0a\x7c\x9c\x54\x5a\x6a\x67\x1a\xf9\xd0\x9c\x68\x6c\x44\xc7\x60\xca\xd7\x9c\x28\x6a\x44\xc7\x91\x3a\xfd\x9a\xe3\x1d\x80\x7a\x7d\xbd\x6d\xb4\x52\x4d\x5f\xf2\x3f\x57\xcd\x4a\x5c\xb0\x52\xd2\xba\x8f\x42\x09\x6f\xeb\x3e\xdd\xc5\x3c\xad\x7b\x3f\x89\x17\x92\xad\xd9\x56\x66\x0f\xdb\x82\x13\xf2\xe5\x4c\xa9\x9b\x4d\xef\xb5\x68\xc1\x0b\xe7\xa9\xd7\x7b\x6d\xdb\x76\xd3\x84\xae\xb7\xd2\x6e\xde\x8a\xb9\xd7\x6c\x9d\x3a\xc1\xf8\x53\x9e\x0e\x9b\x36\xec\xaa\xac\xf6\x4d\xd0\xb3\xfb\x35\xe6\x1b\x42\x86\x6d\x04\x19\x8d\x0e\xca\xfe\xe9\x42\x22\xc3\x7a\xbd\xc4\x9e\x6f\x81\xe4\xc2\x25\xba\x1d\xce\xde\x67\x34\xbd\x96\x97\xd6\x62\x41\xa6\x6f\x14\x03\xfd\x26\x89\xaf\x33\x95\x83\xe3\x40\x62\xe1\x1b\xdd\x56\x04\xf6\xa8\xe5\x57\x16\xdd\xe5\xbb\x88\x28\xad\x13\x14\x82\x8f\xb2\x30\xf8\xe0\x9b\x5f\xe7\x24\x4e\xfc\x6a\xe6\x7d\x44\x7a\x72\x48\x91\xbc\x1d\x66\x90\xac\x23\xcb\x08\x2f\x99\xf4\x17\xa2\xdf\xe4\x60\xe5\xa3\x8b\x19\xb2\x5b\xbe\x82\x06\x0c\x19\x2d\x5f\x40\xc3\x86\x0c\x56\xa6\x41\xb2\x47\x43\xbf\xaa\x37\x66\x3c\x86\x2c\xb5\xe5\x60\xc4\x86\xd6\xb4\x6f\xf5\xac\x54\x60\xc5\x39\xbc\xf7\xa6\x3e\x6f\xa9\x3c\x08\xf2\x75\x05\x68\xb7\xf0\xf1\x1e\x3e\x56\x80\x7c\xaf\x6d\x3d\x6a\x56\xd0\xc6\x04\x2b\x07\x16\xdb\xee\x8f\x97\xad\xf2\x52\x5c\xad\xb3\xca\x0a\xba\x75\x27\x64\xd3\xd1\x53\x3c\x33\x35\x55\x0c\x57\xd3\x97\x0b\xcb\x54\x95\x97\xc0\xad\x41\x3e\x2e\xc8\x04\xdc\xf5\x56\xd9\x25\x07\xaf\xdf\xbf\x1d\xb4\xc1\xe5\xab\x4d\xb3\xf6\x9c\x66\x12\x1a\xed\x9a\xa2\x45\xdb\xb3\xdd\xc0\x84\xe2\x18\x6c\x4f\xd9\x3c\x18\x78\xbf\x69\x4a\xb8\x08\x9c\xdf\x60\xcd\x58\x78\x63\xcf\x41\x97\x23\x85\x43\x6e\x13\xf7\x34\xa8\x43\xb4\x6c\x5a\x0c\xef\x5e\xf9\x04\xc9\x56\xe1\xda\xab\x36\xae\x93\x16\x7c\x76\x3e\x40\xcf\xf9\x54\x59\xe9\xbd\x4f\x05\x4d\xbc\x1b\x24\x2a\x17\x38\x9c\xae\xfa\x5a\xfc\x56\x3a\x34\xa3\x5a\x22\x46\x5f\x8d\x85\x83\xa3\x55\xad\x4b\x2b\x43\xf5\xfb\x12\x95\xaf\xc5\x71\xf2\xa7\x27\x9a\xea\x60\x30\x85\x03\x2c\x8e\x58\x73\x0c\x97\x9a\xb5\xf9\x72\xec\x1a\x4d\x6f\xd9\x07\x52\x0b\xd4\x9f\xf6\x4e\x0e\x8e\x86\x67\xe7\x45\xc6\x0a\xa0\x68\x3f\x09\x1d\x31\xed\x09\x28\xf3\x56\x29\x93\x94\x2a\xa6\x3b\x4f\x9b\xe6\x6f\x69\xa6\x2f\x37\x7d\x43\x3b\xd4\x31\x6e\x3a\x62\x74\xa5\x04\x41\x0f\xc2\x19\xd0\xea\xa8\x22\x22\xda\xea\x37\xcd\x43\x11\x78\x4d\xe1\xf7\xff\x6f\xef\xcd\x4d\xb6\xe5\x7a\x5b\xef\x29\x74\xd0\x58\x53\xb7\x3f\x9b\x87\x56\xdd\x6b\xc5\xc1\x99\x8d\x46\x57\x71\x00\x15\x4b\xd2\x2a\x3f\xf0\x99\x61\x5d\x0e\x88\x13\x91\xde\xbb\xbd\xb3\x8b\xc3\xbd\x23\x27\xfc\x76\x12\xb6\xc3\xf3\xcb\x5f\x0e\xcf\x0f\x5f\x1f\x0d\x23\xb2\x3a\x59\x57\x44\x7a\x6f\xde\x9f\x40\xda\xfc\xcb\x77\x67\xa7\x17\xa7\x17\xbf\xbd\x1b\x5e\x0e\xff\x79\x31\x3c\x39\x3f\x3c\x3d\x91\xdf\xf7\xde\xbd\xbb\xdc\xbf\x38\x3b\x02\x09\xdc\xf0\x4c\x16\x7b\x07\xef\x8f\x0e\xf7\xce\x2f\x8f\x87\x17\x3f\x9d\x1e\x44\xa4\x46\xf1\x18\x91\x9e\x1b\xd2\xf1\xde\xc9\xde\xdb\xe1\xd9\xe5\xf9\xc5\xd9\xe1\xc9\xdb\xcb\xa3\xd3\xd3\x9f\xdf\xbf\x8b\x48\x4f\x37\x6a\x47\x73\x3c\x3c\x7b\x2b\x47\x7d\x74\xfa\xf6\x2d\x4c\x53\xcd\x0d\x46\x74\xe0\x86\x28\x8b\x7a\x29\xff\x23\x1b\x39\xd8\x7f\xb9\xb5\xd3\x6a\xae\x0f\x1f\x75\x2f\xf0\xac\x7a\x86\xc7\xe2\xa0\xe0\xd5\x53\x33\x81\x42\x35\x30\x80\xf7\x05\x50\xa9\x37\xb5\x40\x85\x4f\xab\xd7\x43\x0d\x75\xe5\x92\x7a\xd3\xae\x45\x09\xf8\x6e\xb1\x07\x7e\x55\xd0\x6b\xab\x44\xd3\x59\x3f\xdd\x0a\xdb\x5b\x6b\xe5\xae\x8b\xcb\xd3\x47\x3d\x6e\xab\x68\xbb\xeb\xd8\xc1\x7b\xb2\x9a\x4d\x05\x1c\xbe\x49\xf8\x34\xbe\xde\x9e\xc7\x8b\x4f\x48\x02\xbc\x3a\xa0\xd7\x26\x9e\xcb\x15\x63\x77\x9f\xca\xfa\x28\x48\x9a\x51\x96\x6e\x67\xf9\x42\x02\x73\x43\x43\xfa\x27\xbd\xa2\xab\x36\xec\x4d\x16\xec\xb7\x9f\xcd\x82\xfd\xb6\xc9\x82\xfd\xff\x69\x6b\xf9\x55\xd1\x12\x86\xb0\xcc\xef\x34\xf6\xae\xe9\xd9\x5f\xaa\xf7\x94\x44\xe1\x93\xfa\xc8\xaa\x7d\x34\x58\xfd\xb3\x9e\xb5\x31\x33\x22\x4a\xd6\x33\x46\x14\xef\x38\xfb\x78\x0f\xe2\x38\xfc\xf0\x89\x66\xf9\x05\x8b\x0f\xb0\xa8\xa6\x9e\xd9\xe8\x59\x9c\x0e\xb6\xfa\x58\x05\xee\xf6\xed\x49\xab\x3d\x95\xaa\x19\x6b\xff\xaa\x1d\x6a\x6d\xf1\x68\x6b\xe7\x13\xad\xe5\xa1\xb9\xea\x00\xc3\xa2\x1d\xfd\xac\xce\x68\xbe\xd1\xda\xa5\x60\xf1\xeb\x79\x75\x2b\x03\x18\xdf\x0d\xbc\x08\x3e\xe5\x12\x89\xbd\xb9\xad\x76\x22\xf7\x0a\xc2\x80\x68\xd5\xbd\xfd\xa9\x06\x2a\x15\xa0\xa1\x12\xd4\xeb\x2d\x79\x8c\xfd\x6d\xa1\x6c\x18\xf8\x2b\xe3\xe7\xf2\x53\xd1\x48\xbd\x31\x2b\x53\x3c\xdd\x59\xd5\x2f\xbf\xc6\x09\xa1\xda\x55\xb5\xda\x5a\x5d\x96\x5a\x2a\x09\x85\x6d\x5e\x3b\xe5\xb0\x9d\x78\x0e\xdb\x1e\xf0\x20\x7c\x60\x4d\x98\x20\x2f\x1f\x2c\x24\xc6\x23\x48\x28\x7b\x1c\x6e\x4f\x2f\xb1\x0c\x53\xa4\x53\x6c\x64\x36\xa2\x67\x1c\xed\xbc\x8a\x5d\xbe\xd6\xb8\xdb\x45\x3c\x4a\x47\x74\x14\x8f\xc7\x98\x81\xb3\x85\x0a\xfa\x85\x39\xe6\xbd\x2b\xc8\x2a\x81\x79\x2f\x9e\x09\xc2\x51\x8b\xf5\x04\x5b\x64\x8c\x8b\x50\x14\xed\x14\xaf\xdd\xd0\x1e\xac\xed\xde\x80\x2c\x8d\x00\xc2\xcd\x90\xe0\xc0\x98\xc1\x06\xe8\xf1\x71\x62\x55\x19\x06\xe9\x85\x67\x7a\x76\xe9\x6d\x2b\x07\xf0\x62\x4a\x13\xe5\x72\x29\x8f\x10\x88\xed\x03\xd6\x3e\xd5\x77\xda\xa4\x75\x44\xc6\x46\x40\xf3\xb0\x6c\x71\xf9\xa1\x98\x30\xdb\x14\x32\x36\xc1\xce\xee\x8c\xa3\xa5\xfe\x38\x52\x2e\xcd\x20\xc9\xbf\x2a\x45\x95\xf7\x71\xab\x26\x15\x77\xdd\xee\x69\x2a\xe8\x30\xe7\xb2\x8c\xf0\xfe\xcf\xa0\xb6\x51\x55\xa7\x0e\x73\xed\xeb\x76\xb1\x91\x86\x83\xa6\x90\x78\x25\xb6\xa7\x7a\xf8\x60\x08\x96\xc1\x35\x20\x7c\xcb\x0f\xbd\x13\x25\xf2\x7f\x2c\x3c\x2b\xc5\x8a\x15\x27\x26\x35\xbe\xcc\xc5\x48\x11\xda\x75\x52\x87\xb6\x0a\x83\x89\xa7\x71\x96\xfc\x55\x42\x04\x4b\x8d\x03\x75\xb9\xb0\x4a\xd4\x51\x2d\xe7\x86\xe4\xe8\x40\x63\xd0\xea\x45\xbe\xad\x71\xd1\xf6\xac\x28\x55\xe3\x01\x64\x03\x31\x20\x09\x70\x43\x42\xab\xa2\x9d\xab\x16\xd1\x7d\x62\x6d\x96\x83\xda\xe6\x52\xb0\xc5\x11\xb9\x25\xc9\x2f\x94\xdc\x19\xe2\x26\xc0\x36\x08\xe0\x60\x9b\xe5\x22\x21\xa2\x5c\x1f\xa2\x2c\x9b\x6f\x6b\x98\xd9\x7a\x55\x0b\x54\xb3\x49\x3b\x5c\xb4\x19\x5d\x51\x61\x93\x9e\x9c\x69\xea\x95\xb3\x7a\x0d\x94\x73\x43\xc9\x6e\xb6\x09\x3c\x2b\x2b\xde\xae\xa8\x58\x6f\x0c\x5b\xef\x9f\x6f\x89\xef\x69\x4f\x7b\x0b\xac\x36\xb9\x75\x15\x82\x35\xba\x31\xfb\x6b\x7b\xc6\xf8\x36\xb0\x16\xd7\x34\xbd\x36\x7b\xc7\xb8\x20\xf0\xa7\x30\xd5\x72\x2c\xaa\x8d\xed\x78\x1a\x2f\x3c\x43\x6b\x8f\xed\x58\xd5\x61\xa9\x51\x48\x57\x5b\x6a\xc9\x76\x04\xda\x82\x3d\xf5\xd1\x7f\x5f\x37\x80\xea\x86\x6c\x1e\xeb\x4d\x6f\xbf\xae\x8b\x72\x13\xfa\x88\xd8\x56\x52\x6e\x5d\x77\xe1\x6c\x4f\x8e\xe0\x3d\x5a\x86\xc2\xb7\xfe\x55\x94\xae\x33\xfc\x05\xd7\x0c\x6c\xcf\x38\x50\x07\x9f\xf9\xbf\xb4\x51\xf0\x5d\x74\xe5\xc9\x71\xee\x1a\x78\xda\xba\x70\x58\x4f\x39\x6f\x57\xd8\xd0\x12\x7b\xd9\x1c\x5e\x7c\xb5\xdf\x72\x89\x19\x6e\x64\xa4\x57\xb0\x7d\x4d\x6c\x5e\xfe\xd9\x58\xaf\xfc\xcb\x3a\x2a\x27\x11\xef\x15\x4d\x2a\x78\x1d\xbf\xc2\x1d\xc6\xf9\x5c\x8c\xa4\xd8\x3f\xd5\xcd\x58\x65\xbc\x36\x59\x32\x81\x16\x6f\xf9\xbe\x9f\x71\x46\x5a\x04\xa2\x61\x89\x72\xec\x1e\x5b\x20\x22\xa8\xe5\xc2\xe3\x14\x89\x7f\x79\x4b\x33\xef\x96\x9e\xc5\x49\x72\x15\x4f\x3e\x0c\x48\xa1\xdc\xd2\xba\x95\xfa\x8e\xa3\xc2\xa5\x18\x0a\x1f\x40\x2b\x04\xce\x53\xcb\xb2\x8b\x53\xbf\xec\xcc\x58\x8c\xd7\xd3\xe4\x8b\x68\xa3\x2c\x15\x5c\xe6\x20\x9f\x04\xf8\x0e\xea\x57\x9e\x79\x36\x77\xec\x68\x28\x3c\x97\x2d\x02\x9e\x32\xa8\xea\x81\xb7\x59\xc8\x31\x45\x6d\x27\xcc\xb0\xb8\x07\x64\x21\x6f\xe7\x74\x42\x89\x65\x02\x2b\x61\xc8\xec\x32\x3c\x11\xeb\xab\xe4\x15\xf6\x74\xf8\xae\x12\xdf\x58\x5d\x9f\x55\x4a\x44\xdd\xdf\xa6\xd1\xbf\xf2\xd4\x1c\x9d\x35\x9c\x50\xa1\x6f\x70\x9d\xb4\xf3\x5f\x99\xe9\x5a\x91\x92\x90\x65\x44\x1d\xab\x35\xdc\x72\x7d\xa0\x9d\x96\x73\xd8\x72\x71\xae\xa0\x89\x41\xd0\x25\x2a\xf8\xb3\x1f\xf8\x99\x16\x13\x91\xc4\x42\xd2\x3f\x82\x4c\xdb\x82\xb5\xe7\x2c\x4f\x05\x44\x7a\x56\x2d\xb4\xff\x06\x81\xa0\xff\x86\xdb\x57\xb9\x68\x53\xd1\xa6\x59\x3b\x65\xa2\xed\x52\xaa\xab\xac\x5e\x54\x64\x6d\x75\x04\xf6\x02\x13\x68\xaa\xec\x12\x26\x0a\x61\x7f\x4b\x82\x12\xb0\x46\x56\x39\xec\x97\xb8\x01\xbb\xea\x99\x5d\x95\x64\x3d\x2b\x4b\x77\xf4\x39\xf1\x6a\x54\xf4\xbe\xaa\xd2\x15\x75\x1e\x0e\xbc\x90\x7d\x50\x5f\x93\x1c\x48\x73\x15\xcd\x57\x21\x44\xac\x0b\xcb\x7d\x65\xb3\x40\xae\xc0\xb7\x96\xe6\x8f\x56\xc4\x3d\xaa\x21\x4d\x34\x38\x47\x45\x6f\x2f\x70\x1b\xf5\xe8\xb3\x3c\x44\xa8\x9e\x1a\xc6\x9e\x86\x3b\xe8\x86\xbc\xac\x0f\x57\x5a\x70\xa5\xfb\x46\xb8\x26\x92\xd2\xb8\xc5\xcb\x51\x67\x74\x0a\xfc\xe6\x78\x6a\x9b\x00\xd5\xa9\xd6\xab\xd1\x10\xcd\x1e\x55\x74\x94\xe3\x21\x8a\xda\xf0\x3a\x03\x81\x42\x35\x4b\xaa\x3e\x59\x4f\x72\xe8\xc9\xfa\x71\xaf\x04\x24\x34\xaf\x61\x72\x9e\x1e\x60\x3d\x2d\xbd\xc6\xc4\x4a\x0b\x58\xdb\xbf\xc7\x31\x15\xed\x1d\x2a\x94\xae\xe5\x0e\x57\xd4\x81\x64\xe6\x6b\x76\x62\x10\x69\xb3\x6e\x74\x2d\x64\x03\x71\xad\x0c\x0d\xdc\xac\xc8\x58\x27\xff\xcc\x67\x37\x68\x29\x1d\x3d\xb5\x76\xce\x23\x3e\x36\xf9\x8c\xeb\x8b\xca\x81\xc8\x52\x91\x58\xb6\x3c\x6b\x18\x6b\xa8\x39\x3c\x79\x7b\x78\x32\xbc\x7c\xb7\x77\x36\x3c\xb9\x08\x4a\xa6\xe0\x40\xd7\x7e\x71\x75\x67\xad\x3a\x18\xe2\xd3\x79\x4b\x55\x32\x72\x2e\xe5\x7b\xda\xdc\x8b\xeb\xb3\xaf\x96\x1b\x11\x64\x32\xbe\x74\xbf\x21\x29\x6c\x34\x95\xcb\x94\x5f\x65\x13\x4e\xaf\xca\x41\xb1\x8d\xfc\x90\x62\xe6\x52\x4e\xf4\x02\x84\xe3\x68\x34\xc6\x59\xb4\xf3\x2a\xfb\x81\x19\x39\x61\xd6\xed\xa2\xe0\xef\x41\x14\x45\x21\x8d\xd8\x28\x1b\xa3\xdd\x58\x9f\x9b\xa3\xff\xf9\xfd\xf7\xde\xf8\xef\x01\x1a\xe8\x37\xd4\x84\x9f\x8b\x75\xea\x87\xdf\x7f\x97\x37\x69\xde\x8d\x82\xf0\xf7\xdf\x7b\xbd\xbf\xa3\x5d\x9d\xc9\x25\x7a\x58\xc8\x2b\x9b\xa7\x03\x82\x39\xb9\x26\x1f\x07\x5e\xd4\xf1\xe0\x7f\x82\x6e\xae\x22\x8f\xab\x8c\x98\x03\xb1\x74\x79\x6f\xa1\xa7\x04\xe1\x34\x7a\x58\x62\x48\xaf\x9d\xa7\x75\x33\xf5\x83\xa0\xef\x60\x1a\xed\xbc\xa2\x3f\x98\x38\xdf\xaf\x28\xa4\xb3\xa4\x63\x4d\x73\x89\x88\xa2\x16\x07\x50\xc8\x3b\x1e\xf7\x55\xf3\x4b\xc5\x6d\x93\xa2\x39\xb8\x6e\x23\xda\xb1\x65\x2a\xe9\xae\x22\x0f\xf8\x3c\x2b\xa6\xee\x1b\x8d\x5b\xc5\xaf\xc6\xf4\xe4\x41\x6d\x19\xcd\x69\x49\x70\xd7\x45\x79\x33\x1e\x94\xda\xe9\x71\x41\x38\xe4\x82\x4f\x27\x04\x3c\x12\x43\x16\xd1\x5e\xca\xee\x1e\x1f\x69\x6f\xce\xfe\x73\xa2\x9e\x54\x4a\x5c\xfd\x63\x9e\xe9\x07\x76\xc2\xee\xd0\x2e\x83\x98\x2d\x21\x45\x83\x83\x58\x10\x59\x17\xf9\x7c\xdd\xaa\x9c\x9b\xa4\x90\xec\x18\x0b\x95\xa9\x0a\x8c\x1c\xe4\x14\x20\xdc\x7b\xc9\x1c\xf0\x87\xe8\x45\xa7\x93\x87\x02\xed\x86\x71\x24\x70\x16\xa5\x68\x10\xb2\x48\xe0\x38\x4a\x71\x16\x51\x04\x01\x57\x6c\x3c\x76\x6b\x20\x0a\xb6\xf3\x9a\x63\x4a\x22\x06\x73\xbd\x89\xa6\x21\xa9\x49\x1b\xd6\x4e\x24\x29\xa3\x9f\x6f\xa2\x28\x9a\xed\xda\x06\x06\x93\x30\xc6\x37\x38\xc1\x59\x31\xf9\xb2\x31\x56\x17\xfc\xde\x4b\x59\x23\xeb\xa4\x26\xb8\x08\x35\x61\x1d\x78\x8f\x7c\x9c\x10\x95\xbc\x83\x62\xba\x9c\xd1\x34\x4e\x92\xfb\x07\x11\xa2\xa5\x6b\x74\x16\xa2\x07\xf7\x4b\x8e\x94\x62\x06\x02\xec\xba\x19\xce\x4c\x12\x6c\x9d\x24\x35\x7e\x7c\x0c\xe3\x7a\x6c\xc6\x54\x6e\x53\x16\xed\xbc\x62\x0e\xa1\x59\xb7\x8b\x42\x11\xf1\x11\x1b\xa3\x1e\xec\x28\x15\x67\x9f\xa0\x4e\x87\x6a\x87\x5d\x9d\x5f\xd6\x45\x35\x18\x91\x31\x4c\x40\x72\x55\x00\xf7\xb8\x76\x54\x39\x4e\x22\x1a\x32\x84\x27\xda\x17\xf6\xfc\xe2\xec\xfd\xfe\xc5\xfb\xb3\x21\x58\x3d\xbc\x39\x3c\x1a\xb6\x26\x9d\x4e\x98\x47\xa4\x1b\x0c\xda\x41\x37\xd1\x3d\x61\xc9\x94\xb0\x84\xf4\x04\x9d\x93\x30\x47\xc8\xaa\x2e\xa6\x72\x0a\x37\x91\xe4\xb5\x16\xd1\xce\xab\xc5\x0f\xa6\xe7\x57\x0b\x93\x32\x60\x1e\xc5\xa3\xc5\xb8\x35\x55\x83\x9f\x6b\x8d\x44\x48\xe4\xea\xb9\x20\x80\xbe\x17\x8d\xdd\xee\xb2\x59\x1e\xed\xbc\xe2\xae\x59\x6e\x9a\x4d\xa3\x78\xc4\xc7\xad\x1a\x6c\x4e\x95\xae\x43\xd2\x85\xf0\x00\x48\x91\xe0\xe9\x88\x8f\xd1\x72\xd2\xe9\xf8\x93\x19\xa6\xd3\x30\x47\xcb\x65\xdd\xde\x8f\x6b\x4f\x84\x38\x2a\xfb\xec\x5a\xfe\xb6\x6c\x57\x39\x67\x53\x3a\xa3\xeb\x3a\xd4\xfc\xd5\xce\x5f\x19\x11\xc7\x7a\x80\xc7\x71\x1a\x5f\x6f\x16\x9a\xbf\x54\xf5\x29\x73\xf2\xf8\x8a\x26\x82\x92\x75\x23\xea\x8b\x9e\x81\xdd\xbe\xaa\x4b\x65\xe5\x8a\xcf\x99\xc2\x4e\xf0\xa8\x8a\x9f\x24\xb7\x9a\xf2\xa3\x19\xf3\x62\xc8\x3a\x14\x8b\x6a\xea\xd7\xcf\xe5\xfd\xa2\x78\x47\xf1\x33\x01\x27\xac\x58\x44\x4c\xfb\xc0\x94\x11\x4a\xbd\x05\x13\x81\x4a\xb2\x7b\xda\xe9\x84\xf0\xa5\x12\x1c\x53\x67\x1b\x52\xf1\x9e\xd3\x9e\x88\xaf\xad\x80\x0a\x0b\x49\x13\xa8\xd7\x3c\x9e\x7c\x28\x46\x07\x27\x11\x55\x27\x24\x64\x63\xf4\x13\x95\xe4\x8b\x69\x2c\xc8\x45\x7c\x8d\x42\x86\x63\x10\x7d\xa5\x20\xa0\xc8\xe7\xea\x6d\x0c\x31\x4f\x30\x5f\x16\x9c\x75\x15\xc0\x20\x40\x15\x24\x54\x33\x19\x7d\x4d\xb2\x24\x39\xac\x11\x94\x1a\x23\xf4\x90\x46\xa4\x6c\xb8\xea\xfb\xdc\x50\xd9\x06\x4e\xd1\xd2\xb7\x84\xce\x88\x00\x76\x88\x4e\x0e\xc8\x84\xf1\x18\x9a\x64\x08\xb3\xa5\x57\x4b\x8e\x62\xb9\xaa\x78\x23\x32\xe5\x82\xd4\x47\x7d\xd0\x65\x94\x3b\x96\x2a\x67\x1f\x2e\xe7\xf1\x84\xb3\x27\x0a\x73\x32\xcd\x27\xe4\xb2\x5c\xe7\xb3\x47\x02\x68\xac\x40\xe6\x0b\x71\xbf\xf6\x2e\x84\xd2\x2b\xf7\x76\xca\xc4\x70\xa3\x26\x4d\x85\x27\x5a\x4d\xd7\xf5\x39\x91\x2d\xa6\xe4\xa9\x31\x6e\x32\xbc\x95\x6d\x5d\x31\x96\xac\xdd\x98\x2c\xbc\xb2\xb5\xb9\x24\x48\xd6\x3f\x13\x65\xe9\x95\xed\x91\x7f\xe7\xf1\xfa\xc3\x83\xd2\x2b\xdb\xbb\x5e\x1f\x70\xd7\xab\xe1\x76\x2d\xd6\x5f\xd0\x6b\xb1\x7a\x3d\xd7\xce\x75\x22\x7a\xc9\xea\x51\x25\x1b\x8c\x2a\x79\x62\x54\x2c\x25\xbf\xc6\xeb\xef\x03\x55\xfc\x09\x77\x2f\x95\x91\x61\xed\x36\x4d\x85\x27\xd2\xc5\x68\x4b\xe6\xf4\x7a\x2f\xa1\xf1\xfa\x57\x72\xb9\xe2\xca\x5e\xe2\x74\xdd\x24\x37\xa2\x17\xa7\xab\x13\xdc\xb0\xf5\x29\x13\xf6\x44\x12\xa2\x7c\xbe\xbe\xf1\x5c\x3e\x5f\xbd\x77\x21\x16\xd7\x7a\x6d\xcd\x69\xfa\xc4\x39\xf0\x71\xfd\xb6\xe2\x8f\x4f\xb4\xb5\xd8\xa0\xad\xc5\x6a\x78\x81\xcd\xe9\xba\x00\x63\xfc\x49\x33\xc6\x03\x3a\x9b\x6d\x62\xbe\x28\xcb\x3f\x35\xdb\xd7\xeb\x6e\x10\x98\xef\xeb\xd5\xbb\x63\x46\x13\xb1\x36\x25\xcc\x7b\xaa\xf8\x1a\x2d\x6e\x30\x48\x53\x61\x65\xab\x79\x4a\xff\xbd\x76\x8b\xb2\xf0\x93\xad\x6d\x30\x42\x55\xfc\xa9\x16\xd9\xfa\xfb\x03\x4a\xaf\x76\xd6\x95\x74\x7c\x46\x26\xeb\xa3\xa3\xad\xb1\x5c\xa2\x66\x02\x6a\xc2\x92\x64\x93\x56\x75\xf9\x26\x56\xa4\x99\xd3\x2b\xe9\xfe\xd7\xc9\xa1\xf5\x45\xf8\x10\x15\x50\x54\x07\xb1\xa1\xa0\xbc\xfd\x95\xc4\x1f\x8e\xe3\x45\x91\x86\x17\x9a\x86\xf7\x82\xfd\x7b\xaa\xc9\xda\xc8\x5f\x85\x12\x2a\x6a\x42\xa7\x53\xf3\x32\x44\x78\x4b\x8f\xdc\x85\x56\xb8\x89\xb3\xd3\xbb\xd4\xcc\x41\x31\x24\xf2\x1e\x81\x3e\xb2\x00\x99\x58\x62\x66\x06\xe0\x97\xab\x9e\x22\xb6\x5b\xce\xd3\xcd\xd0\xe0\x61\xe9\xc2\x67\xe8\x82\x23\x31\x8e\x52\x5c\x76\xff\x57\xda\x3b\x2a\x99\x2a\xa3\xce\x2f\xea\x71\x25\x8c\x8e\xe3\x05\x06\x3f\x6d\xc5\x50\x11\x64\x14\xf8\x20\x70\x0f\x5d\x22\x82\x92\x4a\x34\x55\x52\x39\xa1\x93\x47\xc9\x06\x52\x2c\x90\x8a\x66\x6b\x01\x1e\x17\x58\xbf\x96\x66\x9d\xd2\x46\xd6\x49\x60\x2e\x59\x27\xaa\x59\xa7\xb8\x9e\x75\x52\xcb\x48\x7d\xd6\x29\xad\xe7\x85\x62\x84\xe3\x65\xb1\x56\xc4\x7b\x80\x37\xc0\x42\x35\x56\xab\xdd\x04\xab\xd9\xa3\x4f\xe0\xd2\x57\x8b\x44\x2c\x14\xb9\x64\x3d\x8d\x74\x68\x34\x76\x1f\x68\x48\xd0\x83\xd6\x12\x12\xb4\x34\x02\xa6\x1a\xd1\xdb\x83\x02\x27\x1f\xb1\xf1\x2b\xe3\x73\x1b\xa7\x53\x8d\x96\x94\x64\x28\x8c\x25\x44\x8d\xe4\xcd\x2d\xa1\x1c\x59\x5a\x35\x75\x75\xe2\x2c\x12\x95\x65\xa8\x58\x6d\x3f\x08\x32\x12\x12\xa4\x45\x81\x04\x06\x42\x47\x6c\xec\x2a\x8c\xd8\x58\x2f\x34\x0f\x77\x30\x45\x38\x8b\x5c\x40\x8b\x62\x20\x93\xd8\xc4\x2e\x19\xd5\x8f\xc1\xba\x73\x6b\xc9\x1a\x71\x22\x35\xaa\x94\x3c\x2e\x95\x54\x3c\xe2\x63\xa5\xb2\x4f\x43\x8a\x6c\x5a\xa1\xa5\xc7\x89\xfb\x85\xc9\x18\x2d\xc7\x4e\x62\x9b\x2d\x3f\xc5\xd6\x07\x58\xce\x1a\xa5\x55\x29\x86\x07\xe9\x06\x7a\x26\x41\x8d\xe4\xd8\xc8\x1d\x64\x5b\x90\xb1\xd7\x1f\xa8\x32\x3d\x59\x62\x62\x79\xd1\x3f\xdb\xdd\xd6\xda\xfd\xa5\x75\x69\x77\xcb\x7d\x35\x4f\xe8\x84\xa5\x64\xf5\x7c\x3e\xad\xf9\xad\x4a\x93\xba\x45\xc9\xc1\x7e\x5a\x93\x6d\xe3\xb6\xda\x38\x5a\x60\x67\xfd\x93\x8b\xaf\xd5\xbc\xda\xde\x95\x56\x9d\x62\x09\xe4\xe5\xa9\xe9\x05\x98\xdc\xcd\x7b\xa9\x45\x71\x82\xa2\x28\xe2\xba\xe1\x6b\xf1\xd9\x5a\xfd\xd1\xb5\x49\x3e\x5f\xa3\x76\xa4\xc9\xe7\x1b\xe9\x0f\xae\xcd\xcf\x37\xd2\x1f\xec\x48\x15\x53\xdc\x84\x70\xb1\xe4\x3a\x51\x48\x90\x2e\x17\xaa\x88\xa5\x9a\xe9\x7d\xba\x96\xcb\x70\xa8\x02\x36\x15\xd9\xd9\x75\xd0\xbc\x3e\x72\x50\x75\xf3\x14\x43\x08\x71\x77\x31\x18\x71\xa4\x29\x8a\x53\x84\x25\xe1\x0b\x93\xe7\x92\xb8\x49\xa7\xc5\x00\x49\xb2\x4a\x6d\xb4\x53\x88\x4f\x0a\xe5\xa9\x96\x9f\x36\x14\xdd\xd2\x45\x19\x2f\x7b\x29\x6f\x20\xa1\x5c\x83\xa4\xdd\x28\xf6\xd4\xd3\xb4\xad\x7f\x7b\x2b\x6a\xd4\x82\x90\x97\x4e\xe6\xd1\x38\xa8\x1c\x11\x95\xbc\x88\xee\x88\x48\xf3\x24\x89\xa2\x88\x3e\x3e\x06\x0a\x02\x4e\x2b\x4b\x77\xd3\x01\xed\x29\x18\x84\x02\x6b\x33\xb0\x62\x7a\xcc\x65\x89\x4e\x36\xaa\x52\xdd\xfc\xb3\xff\x4d\xe2\xc9\xcd\x33\xa3\xb6\xdb\x65\x51\x21\xe9\x3c\x7c\xed\xfd\xfd\xab\x67\x38\x08\x40\x65\x4a\x30\xe9\x46\x30\x07\xe4\x4d\xac\x14\x9d\x8c\xd8\x90\x64\x02\x8f\x2a\xb4\x6b\x69\xa6\xac\x20\xc4\xa7\x19\x10\x18\x72\x07\xec\xc2\x8b\x3d\x14\x6a\x81\xbf\x39\x90\x07\xe6\x3d\xdc\xdf\xb5\x53\x8d\x5d\x3c\x61\x1a\xc9\xb3\x7b\x51\x1f\x83\x57\xad\x86\xa7\xb7\x6d\x9a\x12\xad\xa3\x53\xbc\x61\xef\xa1\x50\x14\x47\xd9\x38\xb6\xac\xa4\x89\xb3\x24\x78\x3d\x9b\x22\x09\x73\x1e\x09\x2c\xa2\xd1\x18\x61\xb5\x86\xf5\x21\xec\xe5\x2c\xb9\x45\x81\xa5\xaf\x4d\xff\x32\x1d\x2a\xd6\xbf\xb6\xcf\x64\x35\x29\x29\x8a\xa4\xa4\x32\x93\x20\x60\x1f\x21\x46\xd4\x27\x25\xa9\x09\x02\xdc\x8e\xc3\xd2\x38\x9c\x05\x30\xd6\x91\xd9\x24\x4e\x68\x0f\xb4\x73\xa7\x8d\x22\xf5\x71\x98\x15\x85\xea\x21\x23\x26\xe8\x55\x11\x07\x63\xd4\xe9\xc4\xf5\xb5\x99\x64\x01\x43\x82\x1e\x1f\x43\xa6\x53\x06\x61\x6a\x68\x76\xa4\x22\xeb\x63\x2a\xff\x7e\x02\x55\x99\xe5\xf3\x3a\x43\x28\x5a\xb8\xa0\x7c\xde\x89\x74\xc5\x12\xe1\x1d\x25\x32\xd4\xe4\xca\xc7\xcd\x9a\x38\x8e\xc5\x8d\xac\xa5\x52\x3a\x22\xbc\xdd\x7f\xb6\xa3\x44\x7d\xaa\x3d\x9a\x7e\x4a\x7b\x34\x35\xed\xa9\xe6\xc0\x4c\x10\x86\xb7\x88\x32\xf5\xf7\xf5\x7d\x3d\x3f\x98\xc1\x61\xa9\x0e\xa0\xa0\x5b\x8b\x83\x6e\xf1\x54\x27\xd0\xb4\xc2\xca\x28\xb7\x8f\xa5\x0e\xe4\xd9\xac\x19\xd7\xe8\x79\x14\x55\x90\x73\xf7\xc9\x7e\x6a\x2c\xbd\x8b\x25\xa2\x28\x4a\xad\xed\x50\x5e\x9a\x07\x45\xca\x7a\x88\xfe\x1b\x6c\xa8\x94\x74\xaa\x16\x04\x7f\xfa\xee\x28\x62\x33\xd5\x27\xaa\xea\x11\x85\x14\x0b\xff\x2c\x45\x65\x92\xc3\x8a\xa4\xa2\xf5\xf8\xc3\xcf\xbf\xa9\x6b\x4e\xee\xca\x84\x57\xcc\x96\x0e\x46\x63\xb9\x0d\x59\x44\x7b\x0b\xb6\x08\x91\x39\xb1\xc2\x06\x7b\xad\x57\xc2\x79\xaa\x0a\xc9\x67\x5a\x9f\xd7\x68\xab\x8f\xd3\x88\x8e\x84\x31\x81\x49\x7d\x3e\x9c\xce\xc2\x54\x72\xc0\x51\x24\x11\x22\xda\xda\x69\x5d\x71\x12\x7f\x58\x4a\x5e\x14\x62\x96\x6b\x66\x74\xab\xaf\x99\x51\x08\x46\xd1\x2a\xde\x1f\x4c\xee\x12\x4f\x72\x88\xb4\xcd\xe3\x01\x9d\xcd\x36\x41\x0f\xb1\x3e\x9a\x28\xed\xbb\xff\x4e\xac\x46\x1d\xfb\x82\xa1\x5d\x5a\x0b\x4d\x55\x7b\x5b\xce\x9a\xf5\x40\xbe\x78\x3a\x53\x0e\xca\x16\xd5\xe8\x4a\xac\xd3\x22\xcb\xbf\x0c\xe7\x0a\xf6\xf0\x34\x12\x25\x94\x13\x1e\x0b\xe7\xed\xf0\x8a\xfc\x2c\xdd\x95\x74\xda\x20\xad\xae\x2b\x85\x75\x35\x92\x5b\xb5\xaa\x8c\x8b\xaa\x1d\x85\x11\x5d\xf2\xc7\x47\x15\xc9\x55\x43\x3b\x14\xf2\x96\xb1\x57\x72\xab\xd1\x30\x8e\xef\xce\x74\x63\x83\x29\x70\x39\xfa\xa0\xb1\x19\x74\xac\x75\xb0\xbd\xa7\x67\x25\xda\xa0\xe6\xba\xaf\x3a\xda\xe8\xc8\xb2\x21\x82\x89\xf8\xeb\xef\xc9\x94\xb8\x26\x87\x80\x6b\xd0\x99\x66\x6c\xb7\xd3\x0a\x1e\xc7\xb9\x60\xfb\xb5\xe9\xe0\x6b\x71\x57\x48\xdc\x0d\xfe\xb7\x7c\x0e\xe4\xb6\xc3\x71\xad\xe5\x70\xfd\xf9\x21\x9c\xfd\xe9\x40\x92\xb1\x91\x18\xed\x8c\x71\x1a\x89\x51\xdf\x20\xc9\x88\xe3\x34\x4a\x1f\x1f\x83\x38\x9b\x04\xf2\x10\x59\x86\x20\xc7\x62\x90\xf9\x69\xb0\xde\x81\x9b\xa1\x5d\xdf\xbc\xcd\xd2\xb3\x99\x81\x1f\xaa\x0d\xdc\x6a\x8a\xad\x00\x33\x75\x9b\x42\x1d\x47\xa2\x46\x2c\x28\x46\x6c\x8c\xb3\x28\x96\x93\xcb\xa3\x78\xd4\x1f\xe3\x24\xd2\x46\x31\xf3\x45\xcc\x95\x6c\xc6\x22\xb5\x72\x16\xb3\xf9\xc3\x33\x04\xb2\x34\x89\x90\x89\x3e\xbe\x82\x29\xc9\x26\x12\xdc\xf9\xee\x76\xff\xef\xc9\x20\x31\x82\x45\x79\x9a\xa1\x65\x98\xe1\xb8\x79\x6b\x1b\x4c\x2c\x99\xa3\x5b\xcd\xc2\x4a\x65\x44\x35\xd1\x69\x55\x35\x01\x8c\xe1\x9c\xf0\x6b\xd2\xf4\x51\x49\xdc\x9b\xbe\xde\x91\xf8\xc3\x65\x46\x1a\x1c\x11\xbf\x98\x89\x8b\x19\xd4\x9a\x21\x63\xbd\x90\xa5\x4f\x34\xf9\x4e\xcf\x6e\xed\xa6\x55\xb5\x95\x2d\x5f\xfe\x4a\xe2\x0f\xe7\x64\x5d\x05\x14\x2d\x46\x58\x85\xc5\xf1\x8f\x22\x08\x9c\x3c\x3c\x7b\x3b\xdc\xe5\xa6\xe4\xc0\xc6\xbd\x52\xa5\x59\x13\xba\xf8\x0b\xba\x9e\xd5\xbe\x3d\x7d\x44\xf1\xda\xef\xbf\x12\x3f\x94\x2f\x16\x75\xfd\xab\xab\xdf\xdd\x21\x02\x8c\x64\x39\x32\x75\x53\x13\xcc\xe1\x03\xb9\xcf\x42\x6e\xee\x9f\xd4\xb7\xf7\x36\x49\x65\xe4\x05\x44\x24\x91\xc0\x47\x6c\xec\x94\x3d\x9f\xc2\x1e\xa8\x69\x43\x10\xc6\x1a\xb7\x02\x6e\x06\xa5\x8a\x3d\x3e\x0a\xcf\xc3\x80\xaf\x02\xa7\xde\x3c\x8d\xb2\x93\x2f\x1e\x11\x5f\xe7\xed\xd1\x12\x0f\x51\x23\xf1\x10\x46\xac\x4f\x5a\x7e\x40\x13\x7f\x19\x44\xed\x32\x40\xd0\x91\x31\x56\x5e\x22\x23\x6e\x89\x01\xb2\x5c\x05\x11\x7b\x26\xfc\xc5\x8e\x21\x35\x97\xbb\xde\x79\xbb\xfa\xaf\xbf\xdb\x2c\x62\x13\xeb\x12\x2c\xf9\x2b\x4f\x59\xba\x34\xd7\x9e\xd5\x60\xba\xf0\x19\xf1\x74\x5a\x77\x77\xda\x76\x40\x0b\x48\xb0\xf3\x28\x15\x3a\xb7\xed\xea\x5a\x5e\xfe\x5b\x21\x79\xe5\xd5\xa5\x15\x33\x6d\x73\x00\x34\x38\xc4\xe8\xcc\xdf\xeb\xeb\xad\x7d\xbf\x18\xce\x19\xdf\x86\xc8\x91\x4d\x01\xcc\x8c\x1c\xf0\x2a\x9e\x7c\xb8\xca\x79\xda\x14\x8b\xec\xb3\x78\x3d\xed\xe7\x9c\x93\x54\x9c\xe5\xe9\x11\x63\x8b\x1a\xf7\x73\xa6\x13\x5c\x01\x97\xf8\x07\x93\xfc\x37\x26\xbd\x2b\x72\x4d\x0b\xf1\x42\x73\xf5\x4a\x11\xcf\x24\x9d\x16\xbf\x41\x96\x3e\x20\x39\x75\x92\xce\x9a\x8e\x72\xfb\x51\xcb\xbc\xf2\x82\x73\x2d\x28\xbb\xcf\x75\x89\xe9\x05\x9d\x13\x9e\xd5\xb6\x72\x13\x67\xea\xab\x26\xe4\xe3\x74\x42\x92\x6a\xf9\xbc\xf0\x45\x95\x4d\x62\xc9\xb2\xd7\x35\x0a\x5f\x1a\xc6\xc5\xd2\x09\xf9\x34\x3e\xc1\x57\x26\xca\xd3\xc0\x3b\xe3\xdd\xd1\x20\x7a\x79\x9a\xdd\xd0\x99\x70\x79\x4d\x11\x76\xc0\x3a\x4d\x27\x0e\x60\xa2\x00\xe4\xd3\xd2\xc0\x2a\x80\x2e\xd4\x2d\x4e\x2a\x25\x1f\x3f\x91\xf9\x59\x73\x52\x20\xa3\x82\x4c\x9c\x45\xd8\x0a\x6f\xd5\xea\x36\xab\x59\x37\x9d\xa8\x64\x4a\xae\x58\xde\x34\x4f\xf3\xb1\x61\x8e\xe2\x86\x33\x21\x1a\x90\xd1\x7c\x6c\xa8\x7b\x45\xd3\x69\x44\x6c\x36\xd6\xb3\x3c\x8d\x48\xcf\xed\xd8\x88\xf4\xfe\x9d\x93\x9c\x64\xb2\x0c\xcf\x6e\x17\xe0\x63\xf7\xdf\xf2\x55\x91\xf2\x90\x97\x8c\xd6\x52\x87\x41\xd0\x05\x71\x15\x8f\xd3\x29\x9b\x87\xa8\x6b\x7c\x92\x42\xa0\x61\x95\x34\x3c\xe8\x05\x38\x08\xe4\xe9\x54\x6e\xd7\xa4\x58\x1a\xb9\xfc\xb7\xda\xe1\xf8\x82\xc7\x69\x46\xed\x3b\x70\xd9\x0c\x70\x00\x8e\x1e\x67\xe6\x97\xc9\xc8\x89\xe3\x71\xcb\x8e\xde\x64\x5a\x2a\x7a\x9d\x67\xf8\x41\x3f\x42\xcf\x03\xd7\x21\x4b\x5f\xcb\x63\xa0\x20\x9a\x62\x11\x59\x62\x96\x0e\xd3\x69\x89\xcf\x60\x91\x50\xd6\xf1\xb3\x24\xcf\x6e\xf6\xb2\xfb\x74\x72\x7a\x95\x11\x7e\x4b\x78\x26\x29\x77\x59\x49\x4e\xef\x42\xa5\xa9\xe0\xbd\xc2\x6f\xf3\xf5\x98\x88\x1b\x36\x1d\x04\x2c\xd5\xa1\x41\xa0\xb5\x52\x57\x66\xd2\x5b\x60\x9e\x42\xb6\xa2\x28\x7e\x7c\x5c\xd1\x37\x06\x77\x26\xcf\x17\x2c\xf1\x71\x83\xe7\x69\x1d\x5a\x14\x10\x20\x37\x5c\xae\xb2\x65\x81\xe8\x56\x3e\xc3\xeb\x35\x27\x4f\xd5\xfa\xf6\x7c\xf4\x9a\xb4\x34\xd6\x7d\xb9\x5d\xb9\x5e\xcb\xbc\xd8\x72\x1a\xed\xbc\x4a\x7f\x20\xaf\x52\xf0\x2a\x4c\xfd\x96\x53\xd7\x72\x51\x8f\x21\x8c\x1e\x83\x23\xb4\x2c\x91\x3e\xda\x7b\xfd\x73\x25\xd4\xf9\x12\xf9\x02\x37\xcd\x92\xa3\xa7\xf4\xb9\x52\xe4\xa4\xcd\x29\x72\x50\x2b\x2d\x45\x66\xcb\x74\x70\xa6\x37\xf1\x44\x30\x7e\x0f\x73\x30\x5a\xd2\xe6\x34\x3a\x19\xa4\x4b\x5a\xb1\x06\xba\x80\xa4\x4e\xd5\xa3\x0d\xb1\xf1\x49\xe9\x3e\xbf\x60\x06\x9d\x84\x4d\xa2\x3b\x4c\x7a\x77\xd1\x10\xc0\x39\x89\xe7\x24\xa1\xff\x21\xd1\xb9\xfc\x19\x67\x37\x84\xcb\x5f\xa7\x70\xeb\xe8\x4f\x1f\xe5\x0f\xb0\xdc\x9a\xdd\x47\x7b\x20\xbe\x9a\x12\x9e\x4d\x18\x27\xd1\x05\x14\x5c\x50\x11\x43\xd1\x0f\x2b\xd8\xd4\x6b\x22\x54\xde\xa9\xf5\xed\xc5\x5d\x95\xd5\x1c\x70\xb6\x79\xd3\x99\xdf\xb4\x46\x81\x67\xa3\xf6\xe5\xf8\xd9\xb5\xd6\x56\xa5\x3d\x08\x1d\x16\xf6\xc9\x8b\x5a\x5d\xdb\xb9\x32\x08\x50\x17\x11\xc5\xc1\xb6\x72\x62\x8f\xa3\x67\xe1\xf6\xe3\xe5\xe3\xef\xbd\xc7\xdf\x33\xd4\x0d\x7b\x68\xf7\xd9\x35\xce\xa2\x67\xe1\xff\x3c\xfe\xfe\x0c\x85\xa3\xbd\xed\xff\x33\x46\xcf\xae\x71\xbe\x56\x2f\x4e\xf3\x1b\x57\xf7\xae\xd9\x69\xbb\xbc\x27\xd8\xfb\xc5\x82\xf0\xfd\x38\x23\x21\x1a\x04\xc1\xd2\xbb\x25\xb3\x86\x96\x05\x3b\x62\x77\xa6\x8e\x56\x8f\x25\xd1\xb3\xff\x91\xe3\xd7\x23\xc7\x93\xe8\x59\xd8\x43\x35\x33\x9a\xe9\x19\x3d\xfe\xde\x43\xe1\x28\xde\xfe\x0f\x4c\x6a\xba\x7a\x52\x8e\xc1\x6f\x9c\x4a\x70\x19\x74\x6b\xa6\x83\x79\x54\xdd\x0d\x66\x35\xbb\x61\xba\x9b\x56\xea\xa0\x25\x4e\x9d\x54\xf1\x59\x50\xcb\x83\x4a\x0e\x14\xd8\x50\x0b\xad\x04\x0b\x07\xba\x09\xe6\x5e\xea\x6f\xe5\xca\xfe\x2c\x70\xdf\x67\x8d\xa0\xf5\xc6\xa2\x41\x7b\x13\x3d\x03\x40\xfd\x3e\x1d\x6b\x34\xe8\x4a\x90\x2d\xa2\x67\xdb\x8f\xbf\x67\xdd\x67\xd7\x78\xbe\x21\x4a\xdc\xe0\xe0\xab\xfe\xe5\x57\xcf\xbd\x01\x2d\x70\x70\x19\xa0\xca\xd2\xe2\x5b\x87\x80\x72\x08\xf9\xce\xce\xfe\xce\xf6\xef\xf9\xce\xf3\x97\x6f\x60\xe1\xee\x37\xec\xfa\x76\x83\x89\x5f\x55\x26\x2e\x7b\xbc\xde\xb0\xc7\x2b\x37\xd9\xf2\xec\x0a\xb9\xd2\x5d\xd2\xe2\x9d\x56\xa5\x91\x67\xff\xf5\xbf\xc3\xd1\xce\xf6\xf7\xe3\x2e\x20\x71\x49\x4c\xae\x6f\x82\xdd\x45\xcc\x33\x72\x98\x8a\x30\xc5\xfd\x1d\xb4\xdd\x1f\xf0\x6e\x17\xb3\x88\x5a\x91\xee\xae\x18\xd1\xb1\x11\x8b\x69\x41\xac\x3a\xf9\x9d\x70\x80\xed\xb2\x81\x96\x9a\xb0\xdd\x40\xd1\x3c\xc1\xc0\x2a\x27\xd8\x6e\x10\x0c\xd4\x11\xa4\x1c\x09\xfd\x64\xdb\xbe\x39\xd4\x56\x51\xf1\xc0\xd1\xe3\x63\x99\x0a\xf9\xf1\x39\x02\x03\x81\x75\x6e\x52\xdc\x47\x08\x5f\x86\xc4\xda\xbf\xa9\x31\x20\xd0\x9b\x83\x82\xc2\x8e\x63\x58\x58\x07\xb5\x8f\x9e\x49\x4c\xf5\xca\x9c\x7b\x65\xae\xc1\x90\x99\x78\x5f\x4f\xbd\xaf\xac\xf2\xf5\x63\x81\x93\x29\x7f\xdd\xf3\xbe\x4e\x2b\x5f\x2f\xbc\xaf\xf3\xca\xd7\x0f\xde\xd7\x7b\xf3\x95\xab\xb4\xaf\xe5\x18\xfd\x3d\x05\x80\x4e\xa7\xee\x7e\xa1\x24\x0b\xd5\x77\x07\x56\xfc\x70\x37\x78\x98\xb0\x74\x46\xaf\x73\x7b\xcf\xf8\xb7\x4e\x1f\xdf\x71\x2a\x88\xf9\xa4\x2e\xe0\xea\x25\x34\xd4\x61\x98\x97\x38\x61\x93\x3f\xd7\xe2\x67\x26\x7d\xef\x8c\x42\x67\xb9\xc4\x86\x0c\xf8\x2c\x53\xfe\x68\xa7\xec\x48\x8f\xcf\xd2\xf0\xb9\x6b\xd8\x10\x31\x9f\xa5\xdd\x53\xdb\xae\x23\x7a\x3e\x4b\xc3\x17\xb6\x61\x43\x5a\x7d\x96\x66\xf7\x5c\xb3\x96\x2a\xfb\x2c\x0d\x7f\x30\x0d\x83\xdb\x4a\xab\x42\x1c\xd7\xd2\xbe\x5f\x4c\x40\xeb\xa8\xb7\x52\xa6\x1b\xb2\x54\x92\xbc\xca\x57\x47\x2c\x14\x4a\xd4\x4a\x40\x47\x64\xbc\xb4\x19\x84\x0c\x2b\x60\x9c\xfc\x49\x3a\x61\x20\x23\xf8\x62\x93\x3b\xd4\xce\x2e\x94\xa5\x43\xd5\xd9\xe1\x7c\x91\xac\x99\x32\x56\xc7\xca\x9f\xcd\x08\x8f\x88\x8e\x5e\x28\x29\xf3\x9d\x55\xe2\x66\x35\xa7\xaa\xd0\x9f\xfc\xf8\xfc\xeb\xaf\xbd\x50\x7b\x20\x62\x08\x83\xd3\x85\x2c\xde\x96\x6d\xb4\xd9\x2d\xe1\xed\xef\xb6\xaf\xa8\xc8\x7a\xed\xb7\x4c\xb4\x21\xc0\x9e\x89\x9a\xc7\x23\xf2\x28\x2a\xd7\xd5\xf6\xf3\x1f\x7e\xf8\xae\xe5\x8d\xd4\x86\x2d\x77\x4a\x9c\xe7\xaf\xd2\xaa\x02\x28\x75\x7e\x06\x05\xbe\x9a\xce\xc2\x20\xcd\x25\x3a\xba\xeb\x97\x76\x3a\xf4\xc7\xe7\xfd\x97\xdf\xbe\xfc\xee\xc5\x37\x2f\xbf\xad\x9b\x05\xe1\x71\x3a\x55\x33\x78\xf1\xbc\x30\x05\xaa\xa6\x50\x19\x22\x55\xf1\xbf\x15\x48\xfd\xaf\x6a\x80\x4b\x2c\x7a\x8b\xb2\x4d\xba\x02\xe5\x76\xdf\x84\x29\x57\x35\x46\xa4\xdb\x1f\x57\x07\x75\xc1\xef\x69\x7a\xdd\x16\xac\x0d\xed\xb4\x99\x1e\x24\x4d\xdb\x0b\xb6\xc8\x93\x58\x90\x69\x3b\x4b\x98\x80\x3c\xc3\x24\x9e\xb6\xd9\xac\x1d\xb7\x39\x01\x69\x8d\xfa\x54\x1a\x39\xf4\x14\x09\x2b\xc7\x6f\x40\x2f\x51\x45\xf4\xdb\x2f\x88\xe4\xfb\x87\x90\x03\xff\xf5\xfb\xb7\x2e\xab\x8e\xfa\xb9\xd5\x6f\xc1\x67\x97\xa2\xca\x8c\x28\x61\x77\xdb\x09\xb9\x25\xc9\x17\x1c\xd7\xb9\x88\x27\x1f\x22\xf9\x97\xf1\xb8\xa8\x19\x6d\xda\x75\x7a\xd3\xc5\xf2\x8a\x8d\x46\x63\xb5\xe9\x40\x64\xbc\x72\xd3\x95\x75\x3c\x5e\x34\x57\x59\x59\x07\xe3\x50\xcd\x4a\x0c\x17\x7e\xac\x20\x5b\xac\xdb\x6d\x91\x24\x23\xda\x20\x86\x8f\xc4\xb8\xe5\xfa\x4f\x97\xbe\x52\x07\x5a\x1a\x89\xb1\x3c\x17\x94\xc6\x88\x93\x59\xa3\x0a\x48\x95\x26\x63\x28\xc9\x7d\x6d\x08\xf1\x27\x3c\x22\x63\x6f\xcc\xae\x6b\x97\x3b\xda\x40\xb2\x26\xfd\x5a\xf1\xe8\x2a\xf9\xcc\x8d\x4c\x00\xfe\x5b\x32\x89\xc8\x2a\x48\x42\x7c\xcd\x9a\xa3\x5e\xee\x2b\x15\xcd\x5f\xb6\x61\x0d\x3c\xe4\x8c\xe0\xf9\x0d\x67\x9e\x4d\xa7\x58\x5d\x4f\x78\x15\xbd\x4a\x1e\xef\x5a\x5f\x0d\x73\x55\x71\xc2\x16\x65\x8b\x42\x53\x54\xae\x89\x7d\x56\x10\x87\x3b\xf9\x2c\xbe\x6b\xaa\x01\x89\x07\x14\xfd\x5e\x2c\x55\x5c\x44\xd7\x60\x25\x78\x99\x1d\xa7\x89\x61\x26\x4b\x25\x24\x6d\xca\x0a\xee\x8a\x7a\x2b\x2b\xf7\x0a\x2f\x6f\xd3\x94\x4d\x57\x87\xb9\x36\x05\x3d\x79\x65\x46\xe7\x8b\x84\x6c\x4f\xd9\xfc\x99\x8b\xd3\xf9\x25\x04\x60\x19\xe1\x2a\x46\xef\xeb\x9c\x26\x53\xc2\xeb\xed\x5c\xc1\xc0\x58\xc7\xf3\x55\x3a\x01\x65\x65\x8a\x49\xef\x84\x4d\xc9\xc1\xe9\xf1\x05\x27\x64\x9f\xb9\xa3\xb4\xe8\x72\x51\x90\x79\x18\x24\xa7\x1e\x8a\x11\xcf\x30\x5d\x68\xe1\xbb\x49\x82\x11\x22\xf4\xf8\x08\x6a\x5d\xe5\xb3\x95\x4a\x7a\x56\x64\x3a\x68\x36\xc5\x3a\xf2\x33\x58\x50\x96\x37\x03\x53\x11\x7f\xdf\x67\x24\x21\x99\x71\xfd\x2c\xe6\x73\x64\x3d\x9a\x66\x84\x8b\x9f\x2e\x8e\x8f\x5e\x43\x24\xad\x7a\x53\x5c\x85\x92\x66\x35\x74\x62\x8a\xb3\xf8\x4e\xd6\x3b\xd7\x81\x30\x9d\xd3\x2a\xd1\xad\xaa\x16\xc1\x8e\x15\xab\xb0\xce\xfb\x2c\x9d\x70\x22\xc8\x6b\x96\xa7\xd3\x0c\x82\x9f\x51\x24\x87\xa1\x5a\xac\x8c\xb1\x84\xc2\xa5\x01\xe8\xe2\xa0\xf0\x82\xc9\xee\x09\xc1\xe9\x55\x2e\x48\x45\xa4\x44\x0a\x9f\x61\x27\x2e\x31\x5d\x86\xbc\x57\xb3\x7e\x12\x9f\x9b\x96\xd6\x7a\xc7\x78\x9e\xce\x65\xa7\x59\x6f\x9d\x8d\x81\x9c\x31\x76\x0f\xe5\xb1\x55\x1b\x25\x59\x2d\x33\xf2\x90\x32\x61\x93\x0f\x07\x64\x01\x31\x05\x45\xed\xfa\xa7\x66\xfd\x69\x94\x56\xd7\x9f\xf6\x2e\x2f\xd9\x82\xa4\xd0\x50\x39\xc0\x93\xbe\x5d\x88\x02\x61\x4f\xc4\xd7\x27\xf1\x9c\x00\xf5\x74\x71\x78\x71\x34\x0c\xb6\xc0\xe7\x38\x38\xdf\x3f\x3b\x7c\x77\x61\x7f\x5d\xfc\xa6\x3f\x19\xb9\x8a\x8e\x89\x5d\x19\x73\xb7\x6b\x02\x8a\xc7\x8b\x05\x49\xa7\xfb\x6c\x0e\x6b\x15\xfc\x57\xf7\x6a\x10\x74\x79\x37\xf8\xaf\x00\x2d\xbd\x23\xdc\x1f\xac\xdb\x10\x72\x95\x7a\x97\x97\x93\x84\x65\x64\xc3\x79\x14\xdb\x76\x2d\x78\x8d\xe3\xcd\xe6\xba\xbd\xdd\x34\xdb\xa6\xb9\x6e\x7b\x73\x55\x33\x51\x25\xe4\xbe\x89\xaa\x36\xac\x4f\x2c\x49\x14\x81\xc9\xa3\x1e\xa6\xf9\x05\xc3\x94\x3f\xac\xe9\x4d\x61\xe2\xae\x43\xff\x98\x31\x68\xd3\x30\xee\xeb\x64\xce\xff\x2b\x40\xaa\xef\xbd\xd7\xa6\x83\x07\x63\x14\x66\x0c\x87\x83\x1f\x54\x21\xf6\xe3\x76\x1f\x05\x42\x92\xdc\x91\xbe\x17\x43\xd6\xed\x63\xd6\x7d\x81\xc0\x71\x3d\xf8\x41\x5c\xb1\xe9\xfd\x8f\x41\x57\x74\x83\x1f\x9e\xe9\x1f\x68\x19\x40\x8d\xdd\x86\x61\xb4\xff\x2b\x40\x83\xf5\xa7\x13\x3f\x35\x1d\xef\x72\xae\x9c\x45\x3e\xec\x31\xc5\x31\xf2\xd7\xeb\xa2\xa0\xf4\x37\x08\xa1\x12\x20\xd4\xae\x1a\x8e\xa3\x30\x8d\x42\xb5\x3f\x90\x6d\x57\xcb\x00\x43\x1a\x71\x20\x8d\xce\xe9\x55\x42\xd3\x6b\xb4\x9b\xf6\x92\x38\x13\x10\x22\x7d\x20\x8f\x72\x72\x4b\x59\x9e\x99\xcf\x46\xac\x68\xd1\x80\x15\xd0\x80\xf9\x68\xc0\x76\xeb\x00\x26\x27\x50\x00\xd8\x60\x0d\xc8\x87\x71\xa7\xf3\x02\x0c\x64\xe5\x35\x7e\x71\xbf\x20\x3a\x93\x52\xb5\xfc\xe3\x7f\x41\x58\xe4\x35\x3a\x06\xb8\xc2\x6e\xac\xb9\x91\xec\xcd\x75\x13\x17\x57\x44\x62\x11\x33\x36\x4b\x85\x0f\x85\x5e\xfd\x76\xbd\x7d\xbe\x56\x21\x39\x2e\x79\x02\x55\x86\x65\x6f\x6a\x83\xe0\x9d\x4e\x70\xf1\xfa\xf4\xe0\xb7\xc0\xb0\x71\xa5\xc5\x97\xdf\x7f\x1a\xee\x1d\xac\xfa\xfe\xe6\xf4\xf4\xa2\xf9\xbb\x9a\xa2\x37\x9a\x30\x80\x2d\x13\x20\x75\xd1\x95\xf2\x82\xd1\xf4\xda\xda\x7f\x29\xbd\xbd\xa9\x06\x92\xe6\xe2\xf4\xbd\x56\x0b\x0b\xb3\xd4\xfe\x51\x67\x64\xce\x6a\xae\x62\x4d\x73\x39\x83\xfa\x4e\x27\x4c\x23\xa5\xbd\x2f\xd0\x08\x73\xf0\xe7\x28\xde\xd0\x81\x8a\x37\xe1\xb6\x60\xf1\xba\x0e\x03\xb9\x43\x03\xcc\x11\xa6\x45\xda\x41\x60\x86\xd3\xe2\xf8\x2b\x63\xf4\x67\xa1\xc2\xf4\xe1\x54\xde\xec\x27\xe4\x4e\x97\xd0\xf4\x1d\x2a\x53\xa7\x0c\x84\x17\xdb\x13\x36\x5f\xd0\xa4\x28\xc7\x69\x24\x54\x6f\xe7\x95\x2c\xf2\xde\xef\x05\x67\xd7\x3c\x2e\x14\x31\x42\xa2\x86\xfc\x29\x4d\x46\xb0\xb1\x23\x7e\x1e\xe4\xbc\x07\x01\xf0\x58\x81\x96\xca\x91\x65\xc1\x63\xb1\x54\x54\x49\xdf\xb6\x1b\x6b\xe4\x95\x1a\x26\x51\xd4\xf6\x9c\x88\xb8\xae\x4a\x52\xa9\xc2\xc4\x8d\x84\x59\xb5\xe8\xa4\x52\x34\x51\x50\xb4\x45\x3f\x81\x58\xd7\x8b\x74\x2e\x62\x01\x6b\x9a\x45\xff\xb4\x6f\xe3\xab\x84\x44\xff\x90\x14\xbd\x88\x05\x9d\xd8\xd4\x3e\x25\x82\x5e\x53\x2c\xce\x99\x00\xd3\x48\x8c\x9e\x83\xcc\x48\x9f\xcc\xc4\x5c\xa2\xfb\x2d\x13\x20\xc6\x75\x81\xe3\x08\x34\xdc\x36\x84\x28\xce\x22\xd2\x53\xc9\xae\x2d\x62\xef\x8e\x72\x12\x7e\xb7\x83\x33\x84\x17\x24\x7c\xf0\x8b\x0f\xe2\xc7\xc7\x19\x4e\xe2\x7b\x96\x8b\x01\xc3\xb1\x10\x3c\x53\x79\x63\x16\x31\x8f\xe7\xd9\x80\xe3\x9b\x38\xbb\x19\xa4\xf8\x4a\x52\x16\xd9\x80\x2e\xd1\x78\xe0\xda\xbb\xad\x6d\x6f\x45\x33\xb1\x80\x3c\x9c\x83\xad\x1d\xbf\xc5\xa5\x4d\x9f\x7e\x0e\xe0\x02\x32\xe6\x57\x2a\x6e\x14\x0f\x77\x57\xf7\x39\xba\xf4\x97\x60\x1a\x0d\x09\xd8\x8b\x8b\x38\x9a\xc9\x27\x83\x3d\xda\x96\x22\x7a\x27\x5f\xae\x5e\x86\x77\x24\xfc\xc7\xf9\xe9\x49\x0f\xf4\x6b\x21\x29\x85\x0a\x4d\xef\x78\xbc\x30\x99\x82\x50\xc8\x5d\x32\x40\xd4\x8b\xb3\x23\x00\xa1\x71\xd8\x87\xb4\x15\xea\xd5\x1b\xc6\x2f\xe2\xeb\xe8\x46\xa2\xc2\x7d\x2a\xe2\x8f\xfb\x6a\xf1\x64\xe7\xfb\x2c\x15\x85\x6b\xdc\x63\xf2\x1e\xf4\xbe\x1d\x10\xac\x3c\xd4\x07\x02\x42\x78\xd7\xd5\x71\xbe\x40\x7e\x4a\xcf\x56\x29\x52\x4f\x10\x33\x79\xdc\xf9\xbe\xbc\xa1\xb2\x0f\x7a\x6f\x66\x6a\x3b\x95\x6f\x3f\x92\x50\xfe\x01\x3f\x55\x81\xcc\x28\x38\x8c\xe2\x1f\x54\xd4\x0f\xfe\xe9\x61\x34\x77\xb8\xe7\x3a\x44\xc5\x49\xef\xb1\x2f\xd0\x9d\x3f\x3f\x05\x9b\x62\xa7\x06\x83\x6a\x16\xec\x17\x4c\x7a\x07\x8a\x1f\x56\x5f\xc9\x05\x9d\x13\x93\x7c\xeb\x80\x24\xe4\x3a\x16\x24\x22\xbd\xe3\xc3\x93\xc3\xe3\xbd\xa3\xcb\xfd\xbd\x77\x7b\xaf\x0f\x8f\x0e\x2f\x0e\x21\x6b\xf7\xc1\xf0\xcd\xde\xfb\xa3\x8b\xf2\xeb\x7f\x50\xf1\x4e\x0d\xb0\xa6\x4f\xd2\x5b\xf5\x6d\x78\xfc\xee\xe2\xb7\xcb\xd7\x47\xa7\xfb\x3f\xcb\x96\x7e\xe5\x92\xd6\x99\x1a\x29\x02\xe9\xbd\x8b\xb9\xa0\x71\x72\x20\x8f\x37\xb0\x2e\x04\xa9\x2a\xe9\x9d\x8b\xe9\x11\xbd\x82\xe4\xf3\x57\xf9\xb5\x9e\x8c\xac\x70\x72\x7a\x32\x8c\x48\xef\xfd\xc9\x4f\x7b\x27\x07\x47\xc3\x03\x39\x19\x80\x8e\x2f\xed\x6f\x98\xc9\xc3\xf4\x3e\x8d\xe7\x74\xa2\x76\x80\xdc\xeb\xfa\xc5\x45\x7c\x2d\x7f\x2d\x38\x59\xc4\x9c\xec\xf1\x6b\x38\x08\xd4\x46\x32\xbf\x62\x73\x05\xff\xc4\xd8\x07\xc8\x9a\xab\x6e\x4c\xf3\x53\x37\x75\x3e\x61\x0b\xe2\x6a\xef\xc7\x90\x24\x71\xab\x8f\x55\x4c\x5f\x55\xda\x7c\xb5\xd9\x7d\xb6\x76\xf0\x9d\x02\x0d\xa8\x96\x68\x92\x1c\x28\x53\xca\xc1\x56\x5f\x29\x55\x66\x95\xd1\xf7\x0b\xa3\xef\x17\x47\xdf\x2f\x8c\xbe\xbf\xe1\xe8\xfb\x2b\x47\xdf\xaf\x8c\xbe\xbf\x6a\xf4\x0d\xd8\xa6\x42\xa3\x4f\x9f\xd0\xc9\xd0\x14\x2c\x61\x57\xc9\x31\x55\xe2\x98\x9f\x48\xb2\xa8\xc8\xa5\xe8\x2c\x74\xad\x14\x0a\x16\x98\xf2\xea\x67\xe5\x19\x69\xa3\xb0\x81\xe3\x6b\x45\xeb\xf0\x3e\x25\x1f\x17\x64\x22\xc8\xb4\x7d\x03\xb5\xda\x21\xa8\x71\xda\x33\xce\xe6\xed\xa0\x0b\x87\xb6\xa2\x2f\xe8\xec\x3e\x14\xa8\x1b\xa0\x76\xe8\x77\xd3\x56\x93\x20\xd3\xb6\x4d\x54\x80\x1c\xe5\xc7\x97\x95\x2e\xf7\xe3\xf4\x6f\xa2\xad\x6f\x97\xb6\xb2\xec\x34\x9d\xcb\x9b\x48\xe5\x3b\xcb\x20\x1d\x13\xcb\x45\x3b\x4e\xdb\x20\x22\xb4\x99\x37\xda\x6c\xd6\xf6\x47\x10\x80\x94\x55\xbd\x31\xa1\xc5\xd7\x00\xa2\x29\xda\x08\x46\x53\x60\x53\x40\x9a\xf0\xe3\x1b\x80\xd2\x74\xf5\x79\x80\x69\x07\xb0\x21\x38\xcd\x28\x7c\x80\x36\x5d\xeb\x75\x10\xb5\x65\x1b\x41\x6a\x4b\x6c\x0a\x53\x9b\x76\x67\x03\xa0\xda\xce\x3e\x0f\x54\xdd\x10\x36\x04\xab\x1d\x87\x0f\x57\x7d\x69\xac\x01\x55\x5d\xb2\x11\xa6\xfa\xfb\xa6\x10\x5d\xa8\x6a\x1b\xc0\x53\x77\xf4\x79\xa0\x69\xba\xdf\x10\x96\x7a\x0c\x0a\x92\x9a\x18\x2c\xc8\x62\x8b\x10\xd4\x25\x90\x2f\x56\x2e\x7c\x09\x09\x6a\x55\x07\xac\x86\xba\x2d\xe8\x9c\xb4\x6d\x2a\xd4\x36\x27\xff\xce\x29\x27\x59\xfd\xf8\x74\x83\x81\x71\x9b\xb2\x17\xc1\x4d\x81\x1d\x71\x99\x5b\xd3\x48\x00\x4d\xdd\xe3\x64\x46\x38\x27\x1c\xe2\x26\x56\xf7\x49\x5a\x89\x3d\xb4\x4b\x07\x0f\x8a\x0f\x19\x50\xcd\x90\x60\xc7\xb7\x0c\xa8\xcf\xc4\x14\x38\x08\x5a\xe0\x67\x1e\x1f\x67\x1e\x1b\xb7\x70\x6c\xdc\x68\x2e\xe9\xb6\x9c\x84\x2f\xfa\x68\xec\x4a\xcc\x7d\xa3\x2d\x12\xbe\xd8\xc1\x15\xd5\xbb\x24\x15\x95\xd3\xf5\xf9\x3c\x4e\x92\xc3\x54\x40\xe8\x20\xcd\x17\x4a\x0e\x79\x4a\x21\x55\xb1\xe1\x0d\x6b\x82\x77\xe8\xc2\x0b\x4e\xe7\x54\xd0\x5b\xaf\x30\xe4\x28\x71\xe3\xb9\xf5\x3d\xc8\x35\x18\x52\x79\xbf\x02\x5f\x04\x01\x2b\x24\x67\x64\x7c\xc8\x73\x12\xee\xc0\xac\x82\x73\x58\x3d\x49\x56\x04\xf8\x41\x73\x51\xa9\xe2\xa2\xa8\xe3\xa2\xfa\x4b\x28\xdd\xff\x46\x52\xe8\xf2\x41\x81\xe4\x1b\xcc\x7b\x5f\xdd\xee\xf8\x80\xb9\xf7\x99\x0b\xd9\xcf\xd7\xdf\x43\xd9\xaf\xbf\xc3\x19\x10\xdc\x22\x84\xdf\xdf\x14\x6a\x5d\x95\x6b\xd5\x8e\x4b\x68\xee\x4e\x32\x7c\x8e\xc1\x53\x43\x7b\xfe\x12\xab\x75\x7a\xfe\xb5\x9a\xd8\x29\xe4\xa3\x09\xe0\x19\xd8\x08\xc0\x63\x60\xe9\x02\xa4\x86\xf0\x12\xfe\xbc\xdc\xd1\x53\xf2\xc6\x73\xed\x21\xc0\x30\x24\x9d\x0e\xd1\x29\xbb\x2e\x24\x22\xa9\xda\xcf\x55\x3f\xef\xf2\xec\x66\xdf\xe2\x58\x80\x89\xdf\x8e\x97\xb5\xdd\x83\x79\xb5\x4a\xfd\x28\x61\x3a\xd5\xc1\xdd\xb9\x4d\x04\x96\xbd\x6e\x60\x6a\xb9\x89\x20\x5c\x2e\xb9\xb1\xf0\xc5\x2c\xb2\x21\x6f\x04\xa6\xca\x79\x3e\x8a\x22\x66\x8e\x02\x39\x4a\x2d\x46\x1e\xa9\x64\x3b\xca\xce\x03\x46\x8c\x30\x43\x0f\xee\xc5\x8b\xef\xbd\xac\x35\x3a\x35\x16\xe4\xc4\xf2\x8a\xbc\x90\x68\x31\x5b\x60\xb1\x9d\x21\x84\xdd\x87\xfe\xf7\x38\x1d\x65\x63\x97\xac\xc6\x7d\xaa\x81\x89\x5f\xb3\x6e\x05\xdd\xd7\xe7\x72\x90\x9d\x8e\x7b\xf1\x72\xa7\xd8\xaf\xfc\xd5\x60\xd0\xb9\x2b\x97\xf2\x05\x36\xd2\x23\xad\xe0\x50\x63\x30\x7b\x0d\x0d\xe6\x4a\x9c\x58\x32\xf8\x34\xf9\xab\x70\x1a\xed\xb4\x48\x58\x8e\x36\xa4\xfa\x7f\x80\xf0\x8c\x03\x79\xfa\xe8\xfc\xb3\x02\x83\x50\x68\x10\xec\x1f\xed\xbd\x3f\x1f\x06\xdd\xb4\xdb\x55\xf6\x64\x7e\x22\x32\x89\x2f\xdf\x7c\x8f\xd5\xfa\x7f\xf3\x9d\xda\x70\x1a\xe7\x20\xa5\xd9\x91\x6c\x24\x0b\xd0\x58\xa5\x24\x31\xaa\xc1\x37\x8c\x9f\xce\x0e\x05\x81\xd0\xb2\x8a\x28\xd4\x3a\x33\xae\xd5\x13\x3b\x78\xbb\x8f\xd0\xab\xad\x90\x46\x71\x88\x50\x6f\xca\x52\xf2\x4a\xcd\x26\x8b\xa8\x8a\x56\xdb\x62\x16\x7a\xdf\x7c\x8b\x27\x61\xd6\x83\x31\x23\x9c\xa9\x70\x93\xc8\x45\x7f\xcd\xad\x3d\xc6\x76\xff\x55\xfe\x63\xb4\xf3\x2a\xdf\xde\x56\xcd\x25\x11\x1f\xe5\x63\xaf\xad\xe0\x48\x89\xc3\x12\xd3\x9c\x9c\xd4\x4b\x39\xc9\xa4\x67\xe0\x13\x22\x84\x77\xb6\xa2\x28\xef\x74\x5c\xc5\x97\x78\x12\x06\xc3\x93\x03\x48\x26\x68\x25\xa9\xe5\x66\x55\x09\x0d\x22\xb6\x30\x10\x92\x2f\xbe\x05\x4c\x2e\xd9\xe4\x9a\x03\x33\xe6\xd7\x19\x96\xdc\xe8\x15\x9b\xde\xcb\xcb\x28\x44\xb0\x7f\x26\x2c\x4f\x05\x66\x51\x6a\x63\x25\xfb\x27\x94\xbf\x08\xd8\xee\xee\x6f\xf4\x48\x0f\x4f\x0e\x2f\x0e\xf7\x8e\x24\xa6\x32\xac\xd6\x92\x22\xcc\xd5\xe9\x67\x07\xfc\xe6\xf0\x64\xef\xe8\xe8\x37\x3b\x46\x38\x2a\x8b\x45\xfc\xb6\xdc\xd9\x5b\x98\xe0\xb8\x64\x4d\x5c\x99\x17\x9d\x5d\xf0\x5c\xdd\x08\x74\xf6\x26\x4e\x32\xcb\x6f\x9d\x86\x0f\xb2\xd4\x40\x60\x39\xf7\x6a\x38\x67\x40\x43\x35\xa7\xa3\xf3\xa1\x9c\x8d\x9e\x02\xac\x88\x1d\x7e\x69\xc8\x50\xd4\x1a\xd2\xa6\xf2\xfc\x84\xb5\x4a\xe5\xe2\x92\xe5\xb2\x68\xe0\xec\x48\x02\xa2\x8d\xf0\x38\xdc\x58\x4a\x90\xd5\xd3\xc2\x14\x10\xae\xcf\xd9\x94\xe0\x38\xa2\x4a\x03\x10\xa7\x22\x6b\x65\x77\x54\x4c\x20\x9b\xd7\x02\x3d\x4c\xe2\x8c\x98\xa3\x7f\xa0\xbb\x3f\x0a\x09\xae\x9a\x18\x91\x1e\x5b\xf4\x4b\xd4\x84\xd8\xdd\x1f\x88\x65\x28\x10\x6a\x41\x43\x6a\x3e\x03\xeb\xca\x05\x48\x0b\x3d\xf5\x75\x09\x1f\x09\x5c\xb9\xcc\xbd\x0d\x6d\x41\xbb\x5c\x7e\x39\xf3\xd2\x14\x2b\x9f\x73\x4d\x73\xd0\x6a\x99\x3f\xa8\x80\x20\x33\x70\x8a\xf5\xd1\x60\x7f\x19\x32\x33\xf8\xb7\x44\xb8\x4c\xef\x20\x63\xf0\x7a\x86\xd5\x88\xeb\x9a\x8c\x99\x6e\xf2\xfb\x97\x83\xef\xbf\x96\xed\xe1\xc2\x84\x89\x28\x8e\x6c\xad\xb6\x9e\xef\x0c\x9e\xf7\xfd\xb6\x4c\x4c\x0d\x4f\xf2\x49\x3e\xde\xc4\x79\x06\x41\x76\x84\x9f\x37\xee\x42\x21\xc8\x7f\x0a\x10\x90\x6f\xaa\x0b\x5f\x0b\xba\x5a\xd3\x96\x3a\xb9\x2c\x19\xf5\xe5\x51\x4e\x46\xcf\xc7\x12\xfd\x46\x2f\xc6\x98\x45\x9c\x84\x64\xf4\x72\x8c\x15\x7d\x8a\x70\x1c\xa5\x04\xf2\xdb\xca\x9f\x38\x18\x1a\x16\x02\xa4\xcc\xed\x1b\x12\x43\xc6\xe5\x2b\xd2\x8e\xdb\xda\x15\x42\xe9\x92\xf5\x0f\x1b\x2e\x22\xb6\xa9\xfc\x9c\xe4\x43\xe3\xbb\x92\x0e\xf6\x94\xdc\xda\x88\x9e\xc3\x18\xa7\x8f\x8f\xa3\x31\x24\x9e\x17\x68\xa9\xb0\x10\x13\xb4\x54\xcc\x8e\x3f\xff\xc3\x34\xa1\x29\x69\x00\x80\xa1\xbd\x65\xed\x34\xe2\x3d\x0a\x85\x81\xde\xa6\xb3\xf7\xa9\xa2\x1d\xa7\xb8\x21\x8b\x54\x79\x90\xaa\xb6\x1b\x25\xd8\x07\x29\xeb\x0c\x5d\xe3\x24\x64\x68\x97\x0d\x68\x98\x16\x86\x7a\xe8\xc9\xd9\x9f\x1e\x29\x80\xd0\x60\x93\x39\x10\xe0\x30\x30\x74\x10\x77\x43\xb0\x4a\x63\x4d\x91\x5b\x98\xa7\x72\x9b\x04\x43\xe5\x12\xfc\xb0\xe0\xec\x2a\x21\xf3\x81\x1c\x4a\x9c\x50\xbd\x84\x01\x86\xcd\x3b\xd8\xc1\x24\x9d\x0e\x76\x96\x68\x20\xaf\x28\x9c\x46\x51\xf4\xf3\x6e\x9d\x7b\xa7\xeb\x76\x39\x48\xcd\xdd\x24\x4f\xcd\xe7\xdf\x63\x73\x56\xa8\x8b\xa1\xaf\x09\xba\xf1\x32\x34\x67\x9b\x05\x07\x10\xba\x55\x30\xf8\xbe\x62\x96\x98\xe7\x9a\x98\x87\x33\x52\x61\x09\x24\x2e\xd5\x24\xb1\xca\x5a\x9a\x47\xb4\x97\xc2\xcf\x24\xda\x79\x95\xfc\x90\x1b\xeb\xe1\xc4\xd1\x6a\xd7\xa1\x0a\xd6\x9f\x8f\x92\x31\x42\x26\x43\x2f\x58\xf9\xe1\x59\x34\xd1\xd7\xdf\x34\x9a\xd8\xeb\x4f\x57\x9c\xaa\xb2\x37\xd1\xec\x87\x1f\x5e\xb6\x58\xa7\x13\xde\x3c\x46\xdf\xa1\x16\x55\x4f\xdf\xaa\xcf\x8b\x28\xd5\xf2\xe2\xbd\xb3\xb3\xbd\xdf\x54\x80\x9a\x87\x45\xc4\x47\x3b\x63\x4b\xea\xcc\x23\x2e\xb7\xdd\x6d\xb4\xf3\xea\xf6\x87\xb9\x19\xe4\x6d\x81\xa0\x94\xbb\x8c\x07\x78\x3e\xba\xad\xa5\x1d\xbf\x7b\x89\xb3\x70\x81\x70\x16\xe6\x08\xdf\x00\xad\x57\x38\xa3\x4b\xa4\x65\x3d\xb2\xd5\x28\xc2\x34\xd1\xe7\xe3\x9e\xa8\xc1\x3d\x6e\x35\x65\x5e\x36\xf4\x0a\xee\xf1\x7a\xdc\xd3\x3b\x56\x71\xdb\xed\xf0\xe2\xf4\xe0\x74\xd0\x16\x37\x5c\x9e\x23\x57\x44\x08\xc2\x51\x15\x23\xe7\x21\xb7\x60\x30\x88\x26\xb9\x41\x73\x26\x68\xe4\xd2\xd3\x3f\x50\xa2\x60\x27\x79\x59\xef\x5c\x98\x5a\x11\x3e\x9c\x0d\xa0\x6b\x93\xe7\xa1\xc1\xc2\x58\xbe\x94\xf4\x45\x16\x71\x83\x85\x39\x14\x3c\xd1\x68\x47\x3b\x1d\x13\xb3\xf0\xc7\x9d\xdd\xff\x13\x52\xad\x38\x43\x8a\x83\x9b\x44\x45\x97\xae\x0c\x3d\x3e\xea\x25\xc8\x76\x39\x09\x33\x5b\xdc\x86\x77\x9b\x93\x50\xbd\x83\x60\x03\x7a\x78\xa0\xed\x13\x3c\x1b\x58\x2d\x20\x53\x7c\x62\x6c\x99\xc4\xdc\x28\x01\x27\xcb\xe2\x21\x34\xd3\xba\x94\xe9\xa6\xd0\x91\x5b\xab\x04\x17\x0d\x03\x09\x17\xa5\x8c\x35\x4a\x3c\x80\x90\x91\xed\x9b\x77\x12\x54\x8c\x0f\x93\x8c\xe0\x24\xba\x09\x53\xfc\x60\x84\x21\x83\x32\xe1\x63\xc5\x24\x46\xe1\x83\x25\x08\x06\x0a\x12\x4b\x84\x27\x91\x7a\x34\xca\x5c\x88\x8b\xf6\xa0\x94\x0c\x89\x11\x06\x4c\xa3\xa4\xa8\xc0\x5d\xc8\x17\x4e\x36\x32\x8f\xe4\x02\x4d\x10\xbe\x95\x57\x1e\xc3\x93\x82\xa4\x65\x2b\x8a\x16\xbb\x71\x38\xc3\x53\xbc\xc0\x0f\x0a\xdc\x73\x03\xd4\xdb\x25\x1a\x64\xf0\xad\xe6\xcb\x92\xce\xc2\xdc\xec\xa8\x3c\x6c\x96\x30\xa9\x9f\x83\xf6\x7e\x9c\xa6\x4c\xb4\x67\x34\xf5\x25\x9d\x41\xd7\x5e\x1f\x4f\x93\x0e\x50\xae\xe8\x07\x57\x0e\x64\xd8\x63\x8b\x17\xbb\x9a\x28\x15\x58\xfe\x84\xff\xfa\xf0\xff\x73\xf8\xff\x05\x1a\x14\xca\x3f\x6f\x2e\x5f\x2a\xd9\xaf\x2b\x09\xe6\x5c\xee\x25\x5a\xae\xa5\xda\x9b\xc2\x49\x7a\xbc\xda\xe6\x1e\xce\xf9\xe8\x61\xa9\xad\x60\xf2\x74\x92\x45\xa3\xf1\xfa\x56\xf7\xd6\xa6\x1a\x1a\xb2\xb6\xec\xd0\x90\x1e\x33\xda\xee\x2f\x75\x0c\x77\x9a\x94\x7d\x64\x0c\xf9\xa4\xac\x0b\x5c\x43\xd6\x95\x4e\xb2\xa7\xb6\xc5\x51\x3a\x46\xc6\x8e\x78\x19\x22\xfc\x4e\xe5\x85\x71\x42\xc2\x3f\xec\x89\xec\x74\xac\x8f\x8f\xf0\xa7\x94\x8e\x97\xb4\x8a\x47\x08\x04\x3d\x26\xd1\x88\x8c\x1d\x2f\xad\x5c\xfd\x84\x9f\xf7\x96\x38\xc9\xc1\x0b\x2c\x46\xdc\xcb\xb5\xe1\x65\x70\x3e\xd3\xb6\x2a\xd4\x52\x9a\xdc\x51\x9a\x9e\x78\x6a\xf0\x06\x0a\x56\x14\xe5\x60\x19\x04\x89\x89\x27\x92\x3a\xc0\x71\xc4\xf4\x8d\x9a\x47\xcc\xde\xa8\x3a\x32\x73\x6e\x32\x39\xc7\xf2\x46\xe5\x9d\x4e\x98\xc0\x8d\xaa\xae\xe4\xca\x3d\x2a\xd0\xc3\x04\xcc\x39\xec\x34\x67\xca\xac\x63\x1a\xed\xbc\x9a\xfe\x30\x33\xb3\x9d\x76\xbb\x88\x96\xef\xd1\xd9\x68\xea\xdd\xa3\xb4\x78\x8f\x4e\xe4\x3d\x5a\xe8\x0f\xe1\x04\x02\x46\xc3\xf4\xfb\x96\x08\x81\x1f\x40\x86\xa8\x47\x7d\xd6\x22\x4c\x91\x8a\x31\xab\x8e\x58\xe8\x52\x83\x28\xbc\x51\xdb\x03\x2f\xb4\xb8\x17\x17\x97\xef\x06\xed\xbe\xb3\x57\xe9\x0d\x5e\xa0\xc1\x68\x1e\xde\x58\xe9\x6b\xb9\x69\x77\x7a\xd7\xad\x41\xf5\xcc\xfe\x40\xd3\x29\x9c\xd9\x70\x78\xcb\x23\x3b\x4e\xa7\x17\x37\x24\x85\x33\x5b\x1f\xc6\xf2\xac\xce\x16\x71\x8a\xf3\x1a\x4f\x7b\xc3\x71\x68\x24\xb0\x3a\xa2\x81\xb5\x3f\x2d\x69\xcb\x64\x2d\x35\x58\xad\x9e\x2b\x97\xd4\xea\x49\x57\xce\x5e\x44\x4e\x85\x1e\x0c\x4c\xb4\xf8\xb2\x40\x9c\x7b\x02\x71\xb8\x6d\xd5\x61\xbf\x74\x04\x66\xf3\x1d\x92\x62\x73\x1f\x5b\xa1\x7b\xf9\xc8\xcf\x77\x59\x98\xa3\x41\xbc\x1b\x87\x68\x90\x91\x82\xca\x24\xe8\xa6\xdd\xa0\x1d\x74\x29\xce\x14\xbb\x8b\xb3\x1e\x49\xa7\x92\x08\x01\x63\xb6\xc2\x4a\xe9\x75\x7a\xc3\x09\x09\x06\x35\x8a\x18\xab\x41\x20\xd3\xf6\x4f\xf4\xfa\xe6\x88\xdc\x92\x04\x2a\xe5\x12\x00\xca\xd3\xae\xe7\xb7\x82\x0a\x0d\x6b\xfb\x84\x3c\x4e\x54\x17\xca\x80\x49\xe1\x9a\xdc\x76\x33\x4e\xc8\x2f\x31\x87\x8d\x37\x51\x65\x61\x17\xa9\xe9\xc7\x99\x55\x2b\x29\x34\x92\xd4\x7b\x7f\xe7\x6b\xcd\xe4\xf5\xf2\xc5\x6d\xcc\xb3\x51\x3c\x46\x63\x3b\xaf\xa5\x46\x85\x5c\xa1\x42\xbb\x3f\x50\xdb\xb7\x5c\xa5\xe5\x5a\x7c\xfe\x1c\x2b\xf9\xce\xf3\x17\x38\xf1\x9a\x82\x99\xb4\x77\x06\x6a\xab\x8b\x27\x17\x6e\x56\xe9\x04\x48\xf4\x02\x3e\xcd\xb0\x28\x2f\xad\x1a\xc8\x74\xf7\x36\x34\xfa\x92\xa9\xa1\x97\x80\x1c\xb3\xa2\xf5\x25\x1a\x94\x87\x3b\xf3\x87\x6b\xee\xdf\xca\x3a\xe6\xfe\x3a\xc2\x45\xfe\x37\xd1\x26\xb7\x71\x92\xc7\x82\xb4\xc9\xc7\x05\x27\x59\x06\x2e\x20\x69\x5b\xaf\x42\x3b\xe8\xe6\x68\x59\x6c\xb7\xfe\x5e\xe7\x08\xee\xb3\x1b\xbc\x58\xbe\x83\xa8\xf6\x2f\xfa\xf5\x41\x35\x38\xb0\xf0\x60\xe1\x06\x87\xef\x5a\xa2\xd1\x14\xbd\xda\x0a\x79\xc4\x4a\xe2\xd0\xd8\x24\xef\x6a\x55\x0e\xd1\xb8\xee\x04\x7d\xfe\x1d\x36\x42\x77\x1d\x63\x1f\xeb\xc1\xee\x94\x63\xd1\x6b\xe9\xbd\x1a\x28\x88\x1c\x18\x88\x1c\x24\x5e\x56\x38\x93\xad\xf2\x35\x67\xa3\x76\x03\xcd\x17\x11\x9c\x8e\x76\xc6\x3f\x46\x2f\x5e\xfa\xb2\x0c\xbd\x9b\xb7\xc2\x2d\xa1\x71\xe5\xf1\x31\xb0\x24\x15\x98\xe0\x1a\x1c\xe2\x63\x05\xde\xd4\xd4\xe9\x2f\x55\x7a\x35\x77\xb8\x40\xd2\xec\x6a\x20\x7a\x5f\x13\x51\x60\x19\x2c\xbb\xca\x0c\xbb\x1a\x3b\x1e\x75\x3d\x3d\x14\x55\x48\xc9\x2c\x1d\x1f\x2b\x5d\xcf\x77\x4a\x1a\xae\x57\x22\x55\xb2\xd3\xef\x71\x1e\x0a\x54\xaf\x9d\x0a\x7d\x76\x81\x4a\x3a\xc5\xf4\xa0\x45\xe2\x7d\x54\xee\x6a\xab\xaf\xb4\xaa\x7a\xfb\x0c\x6a\xb9\x37\x47\x9f\xde\x18\xfb\x0f\xa3\x16\x15\xed\x84\xc4\x99\x68\xb3\x94\xb4\x8d\xab\x4b\x85\x93\xd3\x4a\x97\x94\x48\x60\x7b\xc2\xa4\x49\x9c\x24\x0d\xb2\x24\xcd\x5e\x56\xc4\x49\xbb\x31\x0c\xd1\xbb\x13\xf1\x83\xbc\xf0\x06\xe6\xe6\xc1\xf2\xd6\x93\x3c\x91\xba\xf3\x6a\x94\x8d\x6d\x77\x34\x10\x5c\x5a\x82\x25\x5a\x62\x79\x2d\x0e\x1e\x8a\x53\x50\xe9\x1b\x35\x92\x3f\xaf\x0b\xcf\x0d\x28\xce\x01\xc5\xcd\xf5\xf2\x47\xa8\xce\x17\x81\x30\xf7\xeb\xbf\xd8\xa4\x7e\xe1\x52\xa9\x34\xf5\xf2\x53\x9a\x2a\x5d\x23\xf8\x41\xdf\x1b\x03\x81\xf5\x79\x25\x17\xad\xd8\xd1\xd7\x5f\xa8\xa3\x7e\xb9\xa3\x6f\xbe\x50\x47\xcf\xcb\x1d\x7d\xfb\x85\x3a\x7a\x51\xee\xe8\xbb\x2f\xd4\xd1\xcb\x72\x47\xdf\x7f\xa1\x8e\xbe\x2e\x75\xf4\xfc\xfb\xba\xfc\x6d\x0b\xcd\xc6\xf8\x05\xbf\xad\x8b\xf2\x33\x72\x67\x9a\x1c\x9c\xba\x7c\xbf\x41\x63\xaf\xde\x77\x6b\xd7\xfb\x7a\x95\x4e\xf9\x5b\x68\x14\x4e\x9f\xfd\xe8\x21\x48\xd9\xb6\x62\x47\x82\xc1\xd6\xce\xb2\xa5\x8d\x32\x95\x1d\xf8\x21\x7c\x17\xdb\x5a\x2e\xac\x4a\x58\x1e\xe9\xc0\x57\xa5\x76\x3a\x5b\x5b\x64\xe4\xb5\xe6\xa9\xa5\x4e\xfc\x34\x5a\x8f\x8f\xaa\x9c\x6b\xd5\x2b\x79\xa4\xc2\xfe\xc8\x5b\xef\x20\xe4\x08\xd1\x59\x58\x0e\xfd\xe3\xa2\x5c\x63\xba\xa6\xea\x53\xde\xef\x69\x44\xbd\xfb\x5d\xf6\x93\x9a\xd4\x9c\x24\xb1\x3c\x5d\x00\x0e\xe6\xf2\x58\xdd\xdd\x83\xa1\x0c\x3e\x84\x4e\x2d\x55\xa1\xab\xad\x1e\xaa\x10\x33\x48\x12\x5b\x5c\xf9\x38\xa8\x89\xd0\x9a\x89\x50\x37\x91\x18\x67\xeb\x4d\x84\xca\x89\xc4\x51\xe6\x4d\x44\xf5\x15\xab\xa9\x60\xa6\x26\xd3\xa6\xb3\x30\x38\x31\x16\x29\x11\x85\x09\xa1\x0f\x21\xc1\x4c\x52\x72\xb6\x88\x23\xb2\xbd\x62\x67\x76\xf4\xae\xa0\x03\x8e\x2e\xb4\x17\x72\xd3\x92\x9c\xa3\xbe\x1c\xb7\xec\x77\x20\x0f\x81\x8a\x8b\xb3\x8c\x70\x71\x42\x6e\x09\x47\x21\xc5\x41\xee\xb8\x88\x58\x0b\x68\x68\x3a\x85\xf8\xa5\x10\xae\x33\xb4\x17\x2c\x55\x1c\xa7\xfa\x55\xb8\x7f\xd4\x17\xc5\x78\xc8\x9b\x48\xfd\x26\x90\x00\xdd\xd3\x1d\xfd\x67\x03\x64\xa2\xeb\x12\x8b\x5c\xe9\xce\x7d\x62\x51\xf6\x43\x7d\x64\x2a\xc1\x9f\x5b\xf8\xaf\x87\x49\x0e\xee\x7a\xf7\x7a\x8d\x5c\xc0\x9c\x9a\x96\x90\xdb\x25\x74\x3d\xe1\x55\xbd\xd5\xae\x31\x37\x6b\x5c\xec\xca\xae\x31\x5f\xb9\xc6\xbc\x6e\x8d\x65\x05\xf0\x7b\x75\xa6\xde\x87\x70\xc2\xbc\x2f\x3b\xb6\x96\xc5\x4b\x96\x65\x96\x47\x60\x40\x67\x41\x35\x04\xa0\x5c\x60\xf2\xf8\xd8\x87\xf4\xca\x36\x38\x44\x89\x3f\x39\xff\xed\xe4\x62\xef\x9f\xed\xe1\xd9\xd9\xe9\xd9\xa0\xfd\xbf\xe8\xcc\x23\xd7\xda\x19\x4d\xaf\x13\x8f\x54\xb3\xbc\xf0\x47\xad\x20\xaf\x1c\xec\x0f\x20\xcc\x19\xf4\xb1\x16\xe5\x0c\x0a\xe7\xf0\x8e\x3a\x87\xbf\xed\xa3\xf1\x72\x89\x95\xfe\xbd\x26\xa0\xd0\x65\x08\x69\x2d\xc2\x40\x73\x3f\x01\x78\x09\x2a\x15\x7d\x6d\xde\xec\x9b\x38\x0b\x03\x38\xae\xd0\xae\xad\xac\x7e\xa3\xc1\xbe\x49\xa7\xad\x40\x95\xa7\x09\xc9\xb2\xcf\x04\x2e\xd5\xd8\xff\x03\x20\x7b\x12\x06\x2b\xe0\x57\x07\xee\x02\xc8\xee\x68\x31\x33\xad\xcb\xdf\xbd\x31\xc0\x64\x53\x9f\x05\x5c\xcf\x57\x82\x4b\x59\x5b\x65\x0b\xcd\xad\x3f\x05\xbd\xbb\x30\x2d\x41\x00\xf7\x57\xa2\x5c\x5a\x02\x77\xba\x12\xe5\x12\x22\x9a\xf0\xcd\xf0\x92\x19\x81\x62\x1e\x68\x4c\x24\x80\x00\xef\xe0\x1d\xa4\xe3\xd9\x2a\xa1\xa9\xb5\xc2\x31\x1c\xa3\x35\xc5\xc1\x77\x95\xb5\xc4\x54\x11\x4b\x7a\x2c\x24\x9e\xd4\xad\x65\xc9\xf0\xa5\x74\xf8\x70\x23\xb2\xe6\xe0\xed\xfa\x81\xdc\x83\xde\x6f\xb4\x33\x1e\xed\x8c\x77\xbd\x05\x10\xa3\xbe\x7c\x85\xc6\x83\xd1\x42\x29\x0a\xc7\xa8\x2c\x24\x80\x45\x42\xb8\xb2\x8e\x7c\xb9\x5c\x61\x6e\xf3\xad\xb2\x4b\x2c\x5a\xdd\x58\x4e\xd9\x5a\xd7\xf5\x9d\xb9\xd1\xe1\xc5\xf0\x4c\x17\xfa\xf6\xb9\x7c\x01\x3e\xba\x25\xa3\x1c\x55\x08\xca\x7c\x0d\x65\xce\x86\x7b\x3f\x97\x0b\xa9\x8a\xb8\x06\x4b\x9e\x7b\xc6\x5a\x4f\x98\xff\xe8\x96\xa1\xab\x17\x1e\x47\xbe\x89\xc9\x90\x8f\x75\xd6\x7c\xa8\x8c\x7d\xda\x96\xc8\x2d\x39\x4d\xb7\xb5\x23\xcc\x67\xda\xc4\xae\xc1\x4f\xdd\xca\x2e\x98\x17\xb8\x5f\x52\x25\xa7\x67\xd1\x68\x8c\xe3\x68\xe7\x55\xec\x02\xb1\xc6\x26\xae\x57\x16\xa5\xa3\x58\xc5\xf3\xba\xce\xe9\x54\x5e\xb8\x59\xa7\x13\xf8\xee\xc1\xf0\x6e\x93\xd1\x4f\x19\xc9\xda\x29\x13\x6d\x11\x7f\x20\xed\xb8\xfd\xaf\xa0\x9b\x8e\x76\xc6\xdd\xe0\x5f\x6d\xa6\xcc\xa5\x90\x6f\xa7\xa7\xf0\x97\x8e\xe2\x71\xad\xbd\x5d\xf3\x19\x64\xb1\xfd\xa5\xc5\x76\xb6\xe2\x3c\x02\x0b\xe1\x1d\x84\x2f\x2b\x08\xa7\x4c\xe1\x24\xfb\x53\x58\xe1\x6d\x79\xac\x6e\x6b\x6d\xea\xf6\x6d\xcc\x1b\xee\x37\x17\x59\x62\xb4\x63\x53\x67\x4d\x48\x28\xa1\x8f\xec\x19\x72\x1f\xa6\x75\x2c\x5b\xdd\x35\x81\xd0\x78\xb9\xf2\xb3\x19\xa1\x93\xb0\xd5\x45\xee\xf1\x6c\x81\x9c\xa5\xb8\x84\xa3\x56\x18\xdd\x90\x30\x05\xc0\xca\x0a\xe5\x5e\x24\x4a\x9c\xd4\x64\x90\x6f\xcb\x35\xa9\xe8\xf9\x0b\x4a\x72\x68\xb2\xea\x30\x4b\x9c\x00\x4c\x9b\x01\x3a\x01\x98\xd1\xe2\x72\xb5\x00\x62\x9d\xe9\x69\x7f\xf8\x4e\x07\xc0\x5e\x37\x59\x93\xe5\x57\xcd\x94\xca\x6a\xc6\xca\x82\x6d\x45\xd1\xa1\x99\x1b\x5b\xea\xc0\x16\x72\xe0\x99\x8d\xad\xd1\x47\x9e\x31\x40\x5a\x35\x06\x88\x6b\x26\x99\x29\x21\x16\xaf\x99\x9b\x20\x6a\x72\x0f\xfa\x37\xc1\xda\xa2\x69\x20\x96\x4b\xf0\xdb\x7c\x0d\x01\x7c\x7e\x42\x58\x38\x6b\x1b\xb0\xa3\x54\xe5\x74\x8c\x39\x78\x1f\xe9\xd0\x5f\xfa\x53\x94\x82\xb3\x9c\xf3\x66\x7c\x0f\x57\xdb\xeb\x75\x94\xb9\x2a\x14\x12\x9d\x08\x48\x3c\xf0\x27\xd5\xba\x05\x45\x2e\x6e\xd4\xf4\x1a\x23\xde\xa5\x5a\xea\x63\x9a\x65\xe5\xd8\x90\x50\x7a\xae\x3f\x90\x26\x8d\xb0\xc9\x45\xa3\x63\xa6\xf8\xfd\xe1\x38\x72\x86\x0e\x74\x3d\x43\x07\xaa\x0c\x1d\x2a\x89\x0d\xd9\xae\xd1\x2b\xeb\x11\x21\xdb\xb9\xca\xf6\xe6\xe9\x9c\xd9\x18\x85\xe6\x93\xd6\x3b\xff\xf4\xff\xf7\xeb\x50\x0c\xd6\x02\x2a\x81\xaa\x32\x81\xd9\xd3\xe4\x50\x7e\x7d\x01\x90\xb5\x07\x12\x08\xa7\x99\xbc\xb1\x2a\x16\x8f\x37\x3a\xee\x22\x08\xab\x37\xb6\x79\x8c\x62\x9c\x46\x4c\x99\x5a\xb2\xd1\x8b\xf1\xd2\x08\x12\xb6\x18\x29\x8c\x49\x9b\xa5\x93\x90\x19\x1b\x4c\x2f\x68\x41\xe6\xca\xf1\x48\xee\x4b\xd8\xf6\x14\xfe\x2c\x95\x71\x7a\xc1\x1e\x01\x27\x1e\xfa\x3d\xad\x6a\x03\xf4\x13\x0d\xe8\x97\xeb\x90\x30\x7a\x19\xaa\xc8\xa8\x00\x9f\x78\xc6\x21\xf9\x6e\x11\x2b\xf3\xb1\x57\xea\xb0\xec\x2c\xf5\x4b\xc1\x4f\x5f\x8d\x75\x40\xb0\x66\xeb\xc1\xb7\x3c\x31\x63\x5c\xc2\x6c\xff\xad\x4c\x29\xf0\xaf\xd1\x28\x80\x80\xba\x01\x0e\xe8\x34\xc0\x01\x48\x26\x02\x1c\x48\x38\x04\x38\x00\x5e\x1c\x07\x99\xb8\x4f\xe4\xdf\x1b\x4e\x66\xc1\x18\x7f\x15\x8d\x82\x29\xbd\x95\x1f\x16\x71\x1a\xe0\x60\x11\xe0\x20\x0e\xc6\x6e\x44\x6f\x3d\xdb\xde\xca\x25\xb6\x4b\x06\x5f\x8d\x88\x27\xc9\xfb\xed\x89\xd2\xbf\xca\xd2\xff\x56\x22\xda\xda\xa8\xe7\x92\x64\x7c\xae\x64\x9a\xf2\x8c\x56\x45\xfb\x2f\xea\x6e\x6c\x49\x2b\x7c\xed\x97\x7a\xde\x54\xea\xa5\x57\xea\x65\x9d\x56\xae\xc1\x10\x58\x99\xfd\x7a\xf8\x6f\x3d\x4b\x37\x52\xd4\xb0\x5d\xd6\xa4\xa8\xb1\xe6\x04\x4a\x55\xc3\x56\xa8\x6a\x3e\xd5\x81\xeb\xeb\x6f\xb5\xb3\x91\xe4\x12\x57\x28\x74\x34\x10\x9f\xd2\xa2\x00\x90\x5e\x58\xa2\x5d\x76\xd0\xc7\xbf\xc9\xc3\x4d\xdd\xea\x5b\x51\xba\x9b\x0e\x94\xeb\x8c\x6d\xf5\xf9\xe6\xad\xf6\x77\xbe\x7b\xb2\xd9\xfe\x53\x9a\x98\x62\xb3\x1e\x27\xc7\x15\x68\x9e\xab\x2e\xb6\xfa\xe5\x3e\xc6\xde\xd8\x9f\x52\x71\xad\xdb\xc9\xce\x8a\x4e\xfa\x4f\xa9\x7a\x9e\xea\xe4\xc5\x3a\x33\x79\x4a\xd9\xb6\x6e\x27\x2b\x67\xb2\xd3\xb8\xaf\xbf\xc3\x6f\x43\xd8\xd9\xfe\x12\xf6\x9b\xc6\xe4\x8d\xe2\x7b\xcd\x4b\xca\x06\x04\xf2\x7b\x7b\x4a\x9f\xa4\x67\x04\x5b\xfa\xe5\xb8\x29\x61\x81\xd8\x2d\x6e\x4f\x9f\x9e\x86\x7d\x29\x34\x85\xc9\x6d\x64\x19\x5c\xb4\xf7\x1c\x94\x68\x21\x4b\x09\x51\x67\x23\x4a\x95\xe1\xa8\x37\xaf\xef\x76\xe4\xd6\xac\x04\xce\x11\x26\x6a\x0e\xd7\xdd\xc6\x35\x56\x1b\x66\x24\x0c\x62\xdc\x94\x4c\x4d\x07\xf5\x96\x69\x55\xd3\xd5\xca\x60\x2a\x51\x77\xcc\xd4\x69\xdd\x18\xaa\x21\x77\x60\x38\xca\x82\xfe\x09\xee\xc4\xc1\xd4\x6f\x18\x38\x12\x17\x12\xa8\xe0\xf3\xe9\x61\xcd\xf7\x4f\xda\x56\xfc\x29\x49\x5b\x5a\x66\x71\x57\xc9\xd7\x94\xe9\xd0\x4b\x9c\x87\x9e\xf1\x00\xce\x42\xd1\x23\xb7\x71\x72\x0e\xae\x9a\x19\xc2\xb1\x64\xe2\x4a\xce\xa7\x85\x39\xd5\x2a\xfa\xda\x57\xb0\x65\xb0\x9c\x92\x5f\xb8\x56\x9b\x68\x0a\x17\x6d\xf9\xbc\x03\xe0\x9b\xe6\xcb\xaf\x70\xf4\x7e\x53\x37\x7c\x5e\xd8\xb7\x4f\x6c\x5b\x60\x4f\x8b\xbe\x29\xf8\x41\x31\x49\x92\xe1\x72\x5e\x27\xf5\xf0\xdc\xf1\xad\x3d\x94\xff\xb1\x73\xd8\x14\xd3\x84\x5e\x19\x57\xcd\x60\x12\xe7\x82\xb2\x3c\xdb\x56\x21\xf8\x82\x65\x2d\x74\x1b\x0f\xf1\x95\x67\xc2\xcb\x3e\x16\xca\x34\x6a\x83\x01\x09\x9e\x67\x02\x02\x92\x95\x07\x64\x47\xf3\x4d\xd3\x19\x59\x74\x67\xc2\x90\xaa\x1e\xc8\xe1\x9f\xa3\xed\x3e\xfe\xef\xa6\x48\x2b\x6a\x93\xab\x78\x9d\x2e\x64\x98\x8e\x82\x0f\x81\xab\x34\x9b\xea\x39\x0e\x47\x1c\xeb\xb8\x7a\xd0\xe3\x54\x11\xd0\x56\xf1\xf2\xff\x63\xef\x4d\xbb\xda\x38\xb2\x87\xf1\xf7\xfa\x14\xa0\x33\x47\xa7\x6b\x28\x14\x09\x67\x71\x84\xcb\x0c\xb1\x71\x42\x82\x97\x01\x9c\x65\x34\xfa\xf3\x6b\xa4\x12\x74\xdc\x74\x6b\xba\x4b\x60\x02\xfa\xee\xff\x53\xf7\xd6\xde\x8b\x64\x27\xf3\x7b\x9e\x17\xcf\x39\x09\x56\x77\xd7\x72\x6b\xbb\x75\xf7\xeb\x44\x10\xac\xb0\x19\x0d\x2e\x55\xd6\x16\xdd\x54\x9a\xd9\x30\x9d\xfa\x4d\xc7\xfe\x64\x3f\xe9\x58\xf9\x0e\xd8\xc0\x69\x03\xdf\x91\xb3\x5f\x81\x54\x16\x4e\xb4\xac\x04\xc3\xcc\x9f\xc1\x94\x97\x24\x32\xde\x19\x4e\xd4\xb4\x19\xcb\x69\xbe\xd2\xc9\xd0\x43\x12\xfb\x47\xd7\x1f\x10\xf0\x8c\x1b\x29\xf3\x9f\x91\x70\x61\x99\x83\x44\xfa\x01\xa7\xad\x04\xf6\x01\x7e\x49\x04\x78\x74\x1b\xa7\x23\xc8\x26\x2b\x7f\xb9\xfe\x8d\xbf\xea\x15\xb1\x82\xc0\xff\xd0\x84\xfd\x2c\xa9\x49\x42\x31\x47\x3a\x77\x73\xa4\xff\x11\x25\x2a\x11\x3a\xb8\x15\x8d\xf3\x09\x45\x0e\xd8\x5a\x29\x27\x5a\xb7\x27\x8b\xdd\x24\x22\x2a\x0c\x0f\x73\xcd\xe3\x05\x15\x10\x9a\xdf\x01\xe2\x5f\xee\x09\x0f\x8d\xc9\x0e\x1e\xec\x20\xb5\xe5\x0f\xf8\x90\x8f\x3c\xdc\xb1\x1a\x71\x7f\x72\x0a\x77\x72\x84\x22\x3e\xb1\x62\xe1\x78\xa2\xaf\xd0\xb4\x8c\xf3\x75\xe9\x1a\x50\x86\xc2\x1d\xc6\x98\xf1\x03\x37\x7f\x32\x27\x23\xc5\x77\x17\x75\x7c\x37\x88\xcb\x1a\x23\x28\x63\xf3\x8a\x67\xc3\x87\x31\x9f\xa0\xcb\xc9\x8a\x16\x95\x44\xc0\x4e\x88\x5d\xef\x7a\xd4\xc6\xb1\xa2\xd7\xe3\x5b\x09\x64\xd2\x28\xfa\x77\x89\xb8\x0e\xc2\xa1\x2b\x95\x32\x8d\x6b\xdb\x80\x20\xe9\xf1\x81\xd6\x9d\x26\x57\x19\x89\x1e\x56\x34\xa6\x51\x94\xb0\x87\x15\x19\x8b\x09\x93\x94\x03\x19\x45\x51\x6e\x5f\xe4\x84\xac\xa8\xa3\xa4\x86\x8c\x7e\x24\xe2\x74\xfc\xf0\x81\xdf\x8f\xba\xd7\x71\x79\x98\xdd\x77\x9b\x12\xa9\x2b\xc8\x2d\x3c\xab\xd5\x84\xa0\x34\x44\x70\xe0\x1d\x39\x0f\xd3\x52\x16\xbc\xd1\x41\x4a\x38\xa9\xae\x7d\x49\x49\x82\xde\x00\x28\x74\x50\x72\xee\xc4\x95\x73\x17\xe3\x64\x1c\x4f\x26\xec\x5f\x51\x3e\x8e\x27\xf6\x54\x6f\x29\x20\x5c\x63\x8a\x8c\xbb\x7a\x24\x6d\xb3\xe8\xa8\x93\x8a\x9d\x2e\xdd\xba\x5c\x8a\x2d\x71\xcd\x0b\xbe\x75\x27\xff\x64\xf9\xd6\xbc\xe0\x7c\xeb\x36\x2e\x12\x89\xe1\x4a\x58\xab\x6b\xbe\xa5\xc3\xad\x29\x65\x53\xad\x75\x65\x28\x57\x87\x0e\xae\x20\x27\x46\x10\x14\x86\xa3\x50\x36\x87\x38\x7e\x8a\xf0\x48\xb8\x89\x3f\xa3\x66\xdc\x04\x28\xce\x2a\x11\x61\x5a\x9b\xb6\x73\xa0\xda\xd4\x2b\xf9\x84\x59\x1d\x46\xaf\x27\xe9\x01\xeb\x68\x25\xfb\xac\xb3\xee\xe3\x68\x22\xfa\x64\x25\x8f\xbc\xb1\xfc\x94\x0b\x34\x41\xbb\x5f\xd3\x19\x8c\xc6\xaa\xdd\x55\xcb\x6c\x4f\xf6\x04\x6d\xec\xad\x82\x48\x70\x82\xd3\x30\xb4\x9b\x13\x09\x3e\x6e\x3a\xfa\xea\xe4\x83\x5b\x75\x9d\xac\x4d\x40\x56\xd7\x75\xd2\x36\xa8\x5e\x27\x6f\xc3\x76\x4d\x96\x00\x6c\xad\xae\xa0\xea\x47\x05\x6c\x88\xc5\x88\x53\x7c\x35\x12\x2b\x52\x97\xce\xc4\xf5\xcb\x74\x5b\xd0\xe9\x2a\xb0\x67\x95\x07\x55\xd4\x24\x6e\x11\xe3\x6c\x02\x0e\xed\xb1\xa0\x31\x2b\xc6\x89\x6a\x61\xb2\x9b\x77\x38\x76\x17\xe5\x34\x26\xab\xf0\xc6\x2a\x79\x90\x2b\xb0\xce\x30\x95\x2b\x43\x53\xb4\x8d\x29\xdc\xeb\x68\xc9\x7d\x5d\x44\x25\x6a\x0d\xf1\xe4\x5c\x72\xf3\xea\x90\x35\xca\x9c\x85\xe6\x8b\x11\xa7\xf9\x62\x38\x12\x34\x5f\xec\x8d\x0a\x9a\x2f\x9e\x8c\xb2\x95\xe3\x03\xb5\xae\x86\x53\x56\x34\x97\x5d\x8d\x6a\x3e\x61\xf4\xbc\xc4\x37\x93\x36\x62\x26\x9f\xc8\x94\x87\xe4\xf1\xd1\x27\xa3\xd4\x3b\xcf\xfd\x58\xbd\x0b\xfc\x44\xd5\x5b\x90\xac\xe8\x5a\x35\x5c\xa1\xfa\x54\xe1\x6f\xe4\x7b\x08\xd2\x93\x30\x63\xc4\x63\x2c\x69\x6a\x40\x77\x04\x42\xaa\x49\xa0\x2f\xd5\x6f\x47\xca\xa3\xde\xb8\xe6\xaf\xfe\xab\xc0\x72\xd1\x05\xc4\xb1\x15\x6a\x83\x05\x95\xb2\xaa\x55\x15\x4d\x41\x3d\xd5\x44\x15\xd0\x20\x3a\xa1\x10\xcc\x2b\x13\xf4\xa0\x71\x1c\xa1\x85\xa2\x2e\xa8\xe3\x0c\xb8\xe0\x2b\x03\x25\x63\x74\xb6\x5d\x03\x3b\x9e\x05\x53\xab\xa2\x22\x3d\xd2\x3e\x05\x5b\xdd\x1d\x4e\x3a\x09\x53\x35\x56\xa1\x7c\x57\xef\xcc\xc4\x6e\x49\xfc\xa6\xf7\x65\xe2\xee\x55\x40\x50\xe9\x46\x88\x0e\x83\xcd\x62\xda\x47\xf8\x8d\xc8\x4e\x91\x74\xf0\x21\x6f\xc8\x4f\x14\x99\x74\x30\x60\x29\x67\x30\x63\x52\x87\x19\x13\x2c\x54\x55\x1c\x68\xe2\x11\xff\x8d\x9e\xc8\x8b\xd0\x6d\x15\xf1\x20\xc7\x78\xe5\x40\x60\xd6\x21\xcd\xa0\x95\xaf\xe8\x70\xb0\xf7\x25\x09\xd3\xdb\x54\x88\x5f\xde\xbf\x89\xd3\x34\x9f\x46\x3a\x11\x69\xe1\x26\x22\x55\x92\x92\x62\x9c\x4c\x3a\x5d\xdd\x88\x9b\x4d\x12\x2d\x01\xde\xa5\xf1\x94\x5f\xe7\xe9\x8c\x17\x51\x4e\x46\xdd\x1c\xa8\xc4\x6a\x39\x64\x0d\x64\x11\x65\x41\x90\x13\xcb\xd5\xcc\x93\x2c\x29\xaf\x5f\x23\x34\x19\xa4\xea\x00\xd7\x51\x6f\x39\x54\xfa\x28\x43\x9f\xb8\xd3\xa4\x9c\x21\x1e\xf0\x71\xe4\x7c\xa2\xca\x8e\xbe\x58\x8d\x0a\x1d\x5d\x3c\x98\x43\xc7\x2e\x40\xf2\x26\x49\x35\x67\x61\xee\xe4\x2c\x4c\x9e\xef\x1d\x24\xbb\x7b\xa3\x01\xa1\x31\xdb\x93\xd4\x14\x90\x51\xf9\x38\xde\xdd\x73\xb3\x17\xa2\xd9\x40\x34\xa0\x45\x3f\x29\x5f\xc7\xd3\xeb\x24\xe3\x6f\x17\x24\x12\x8a\x3a\x29\xc1\x07\xea\x26\x5e\x38\xd1\x8a\xbc\xec\x3d\x7d\x95\x6b\x4b\x2d\xdc\xca\x46\x27\x2e\x99\x3b\x2f\x44\xfd\x50\x29\x3d\x4a\x3a\x16\xb0\x01\x4c\x3e\xeb\x25\x41\xba\x3f\xa5\xd3\xcf\xed\x31\x6d\xeb\x31\x95\x3d\x0e\x4c\x77\x53\xa2\xc3\xd8\xcb\xb6\x9a\x12\xeb\x8a\x5e\xaf\xb2\x57\xe4\xbb\x54\x23\x3c\x81\x96\xbf\x2a\xca\xfc\xb2\x28\x00\xcd\xc9\x53\xab\x2e\xe8\xc8\xdb\x1c\x92\xcd\xda\x29\xa8\x50\xa6\x9f\x74\x77\x48\x46\x15\x3e\xb8\x72\xc7\x8a\xc7\xc7\x9a\xbd\x2d\x0c\x59\x0d\xca\xb3\xcb\x3c\x4f\x79\x5c\xf3\x7d\x1b\x91\xd3\x70\x34\xa8\xd5\xaf\x0b\xcb\x65\x03\x50\x91\x70\x15\x66\xe6\xeb\xc0\xc6\xcd\x01\x53\x4e\xf4\x68\xf4\xa2\xa7\x5b\x5f\x45\x78\x8e\xf4\x28\xd1\xf5\xce\x0b\x95\x65\x8b\xba\xaf\xc3\x1a\x28\x1a\x19\x99\x61\xc2\x5b\x1b\x08\xcf\xf3\xfc\x82\x09\x3e\xd6\xdf\x48\xd0\x94\x0d\x88\x37\x82\x67\x3f\x86\x3b\xbe\x53\x83\x80\xdf\x18\xb0\xbd\xda\xc1\x0f\x70\x4c\x49\x64\xe6\x4a\xf5\xa2\xba\x41\x9f\x3a\xe5\xb2\xa8\xc2\x73\x17\x3c\x9e\x5e\x43\x14\xb8\x48\x7d\x07\xb3\x1a\xf3\xba\xbb\xb1\x87\xba\xdc\xaf\x21\xed\xaa\x70\xab\xbf\xf3\x30\xec\x10\xa7\x95\xad\x07\x4d\x38\xc1\x86\x2a\x99\xad\x9c\x0b\x47\x05\x60\xe2\x77\x5b\xb1\xae\xa7\x2f\xe7\xf6\x6a\xf9\x22\x22\x8a\x22\xf5\x8e\x63\x2b\x23\xea\x0d\xa0\x89\x1f\xad\xf4\xa5\x6a\x19\xae\xd4\x92\xbd\x60\x0d\xe8\xd9\x11\x2a\x91\xed\xc0\x88\x6c\x5f\xac\x3a\x96\x28\x1f\x4f\x74\x8e\x57\xd7\xf1\x5b\x54\x2d\x98\x1c\xe7\x6f\xd5\xa2\xae\x61\x1a\x16\x8e\x41\xf9\xdc\x61\x8d\x1e\x8c\xe3\xe8\x88\x5b\x27\xd2\xc7\xc7\xed\x21\x75\xa4\xa5\xa3\x19\x88\x8d\x90\xdd\x1a\x29\x29\x93\xe2\xbe\xa8\x16\x11\x8f\xb8\x8d\x7c\x29\x17\xd6\x94\x53\x22\x26\x9d\x73\xcc\x02\x32\xe3\x8d\xa2\x2b\x23\x86\x3a\x30\x22\xaa\x80\xc1\xbb\xe6\xa1\xc5\xce\x75\x24\x28\x77\x59\x56\x47\x69\xe1\xa5\x01\x30\x41\x36\x4b\xe6\x47\xd0\x04\x36\x18\x96\xa8\x20\x36\x34\xdc\x60\x7f\x69\x2f\xf8\xe5\x0e\xdb\x23\xc5\x78\x39\x19\x0f\x26\xac\xfb\x8f\xee\x8e\xfa\xad\x5c\xdf\x95\xe2\x21\xb6\x56\x80\x29\xae\x57\x45\x29\x52\xb6\xa5\x12\xb0\x3a\x09\xa3\xa1\x51\x42\x85\x07\x7d\x30\x33\x94\x06\xa7\x2b\x4d\x0c\x1c\x3b\xb1\x3f\xbd\x89\xf5\x42\x66\x48\xe2\x05\x3b\x06\xff\x46\xad\x3f\xe1\x36\x24\x8a\xf2\x74\x2c\xad\xa9\xd0\x92\x65\xae\xa0\x55\xce\xd2\x52\xaf\xcf\xe3\xa3\xe8\x3b\x51\xbe\x0d\xe7\xb5\x56\xed\x52\x09\x70\x62\x75\x2e\x66\x6a\xb2\x15\x71\xe6\x15\x9d\x21\xcb\x81\xaf\xcb\x50\x8e\x92\x5f\xa9\x6f\x13\x3a\x65\x4b\xbd\x65\x3a\xfa\x68\x4b\xd0\x7a\xbd\xd4\x09\x09\xd9\xa8\x77\xae\x81\x0b\xe6\xd9\x46\x62\x1c\x0c\xc0\x92\xcc\x0d\x4f\xee\xb6\xfd\xd5\xb7\xf0\xd9\x8f\x47\xee\x16\x78\xfa\x2d\x1d\x3c\x96\x68\x1c\x6a\x6d\x53\x11\x7c\x5b\x33\x04\x79\xe8\x01\x81\x03\xf8\x76\xa0\xab\xa9\x78\xec\xe3\x49\xc7\x96\xf9\x76\xcf\x34\x3a\x57\x62\x01\x9c\x97\xd1\x80\x26\x25\x70\x26\xa0\x54\x37\x28\x07\x03\x2f\x4c\xdd\xc0\x0b\x0f\x18\x23\x69\x3a\x9e\x4d\xf4\x65\x7b\xdd\x9f\x5e\xc7\xc5\xa1\x88\x06\x44\xdd\xb8\x3d\xf4\x56\x5f\x28\x79\xc9\x7e\xb4\x60\xdd\x1e\x2c\xb7\x24\x47\xae\x0f\x92\x51\x09\x56\x80\xd7\xc6\xfe\x8d\x90\x83\x28\xd5\x01\x9c\x16\x55\x00\x67\x3b\x43\x0b\xa2\x9c\xff\x91\x2d\xae\x92\xe2\xac\xab\xe1\xfa\xee\xff\xa3\x3b\x92\x68\x37\x26\xf8\x0e\x63\x36\xc5\xe3\xc1\x84\xde\xb2\x78\x3c\x9c\xd0\x7b\x76\x4d\x2f\xd9\x8d\xc9\x8c\x75\x4f\xf6\x21\xcd\xeb\x65\xaf\x17\xa5\x21\xc2\xbd\x1d\x5f\x4e\xd6\x00\x30\x5c\x11\xb2\x5a\xd9\x9a\x4f\xbe\xa1\x7a\x5a\x77\x86\xd4\x95\x07\x97\xc4\x4a\xbd\x86\xa3\x81\x13\x40\xf3\x82\xcd\x6d\x4c\xca\x8b\xe7\x6c\xb0\x7f\xa1\x63\x52\xde\xb1\xf9\xf8\x62\x42\x8f\xd8\x9d\xda\xe9\x9d\xbb\xbe\xea\xfb\xc0\x01\xd7\xf0\x9f\xf4\x88\x90\x51\xea\xc6\x30\x3d\xb2\x26\xb1\x4e\x05\x4f\xa2\x40\xb3\x35\xfb\x78\x38\x78\x62\x36\x98\xbb\x4f\xa9\x8e\x5e\xda\x7c\x46\xbe\x0e\xea\x0c\x82\x53\x2c\xf1\x9a\xc1\x66\x37\xdc\x55\x89\x0a\xdf\x45\x5b\x18\x14\x26\x2c\x0a\x13\x1a\x85\x09\x27\x94\x93\x08\xe4\xd7\x35\xc6\xf3\x9f\xa9\x48\x0d\xcd\xe0\xad\xda\xaf\x62\xff\xfe\xf4\x09\x5d\x46\xf6\xa2\x54\x2f\x87\x35\x7a\x6a\x95\xde\xa1\x0d\x63\x96\x1a\x61\xa6\xab\x5a\x43\x74\x2f\x46\xe5\x6d\xfb\x9d\x80\xb3\xb8\xc6\xe5\xdd\xbf\x14\xcc\x45\x92\xb2\xed\xed\x92\x4e\xd9\xb6\x0a\x73\xe3\xdd\x08\x8f\x8f\xdb\xd1\x76\x8e\xb1\x6f\xf2\xf1\x40\x0b\x79\x09\x9d\xb3\x12\x74\x0e\x51\x17\x51\x85\x8d\x03\xb2\x31\xb2\xb7\x1e\x05\xdd\x06\xaf\x7b\x35\x41\xf3\x8a\xfb\xfd\x37\xba\x89\x7b\x1e\xcd\x43\x5c\x9c\xd2\xa9\x67\x7a\x05\xba\x1f\xcd\xd1\x71\xb6\x3c\x18\x1f\x45\xcb\x4a\x34\xe5\x4a\xfc\xdf\x65\x83\xff\x2a\x66\x05\xaa\x13\x43\xe9\x4b\xcc\x7a\x61\x7c\xfb\xd4\x1c\x09\xbe\x22\xc1\x5d\xe7\x84\xac\x46\x6a\x08\x4d\x56\xb5\xf4\x27\xe9\xf5\xa2\xc4\x49\xf2\x85\x01\x79\xe5\xfd\x45\x6d\x50\x6b\xb8\x8d\xb8\x6e\xd1\x89\xc4\xa2\x4c\xe5\x93\x88\x10\x6a\xcd\xe6\xcd\x95\x43\xdd\x1b\x06\xc0\x7a\xea\x3c\x0c\xbf\x55\xbe\x3c\xdf\x9a\x89\x86\xc8\x85\x43\xfd\x38\x7a\x41\x41\x23\x3d\x7c\x6a\x5f\xa0\x6f\x06\xae\xf1\xb7\xdf\xba\xad\x19\x4c\x43\x5d\x0c\xa3\x62\x70\x53\x85\x41\xbc\xd8\xb8\x97\xae\xfc\xff\x5f\x91\xa1\x45\x03\x55\x28\xf2\xf7\x57\x8d\x7a\x3d\x47\x11\x7d\x13\x27\x99\xd6\xec\x69\x95\xf8\xf7\xcb\xb8\x98\xf1\xd9\x21\x28\xc6\xb5\x4e\x5a\x2b\xf0\xfd\x8f\x45\x9d\x2a\xfa\x8a\x0b\xf5\xb9\x4e\xd9\x71\xd0\xdc\xd7\xa8\xb9\xa7\x56\x9e\x26\xd4\xe5\xb7\x71\x35\xb5\x1d\xaf\x56\x54\x71\x47\x81\x99\x42\x5b\x4b\xf5\x70\x56\x39\xa4\x0b\xee\x61\xcf\x6f\xbe\x76\x0e\xe9\xf6\x90\xca\xff\xbc\x5d\x7f\xc7\x7d\x73\xc2\x6f\x9e\x12\x7a\xe6\xca\x68\xc8\x83\xf0\x2c\x3b\x9c\xb9\x1d\xdb\x90\xd4\x5f\x3e\x21\x93\x91\xfc\xf7\x1b\x74\x12\x88\x06\x35\x55\x80\xb2\xdf\x33\xf8\xfa\x33\x70\xd4\xd3\xaf\xaa\xa8\x47\x8f\xaa\xa1\xc3\x16\x1c\x41\x5d\xe4\x30\xa9\xa0\x86\x09\x8e\xa4\xce\xd0\xd4\x1d\xf9\x97\x44\x15\xfc\x72\x4d\xc1\xaf\x74\xc1\xaf\xd6\x14\x44\x67\x7f\x70\x35\x31\xeb\x74\xe4\xdc\x3d\x6f\xe5\xa9\xba\xe0\x84\x16\xf8\xb3\x66\x71\xee\x78\xb4\x8d\xa1\x06\xb2\xd6\x32\x43\x47\xd0\x06\xe2\xf1\x2b\xae\x12\x1d\xae\x4c\xb6\xa6\x2b\x0e\xa8\xef\x8c\x33\x87\xd5\x0d\xb8\x5b\xe0\xb6\x14\x73\x0b\xbf\x0d\x4b\xfb\xb0\x42\x56\xd6\x8d\x17\xf0\x96\xbb\x86\x08\xca\x82\x39\xc3\xe4\x59\x9d\x93\xe8\x41\xdb\x36\x17\x68\xd6\x7c\xc6\xa9\x32\x7b\x7e\x50\x29\xb3\x32\x6a\xf2\x95\xad\x56\x54\x44\x44\xa7\x60\x34\xa6\x10\x1c\x4d\x20\x50\xb5\x5b\x09\xc3\x99\xb4\xe6\x01\x41\xe1\xad\x4a\xcf\x91\x64\x57\x5b\xa5\x98\x59\xe7\xae\x04\xf0\xdd\xc7\xd0\xc6\x1e\x11\x5c\x3e\xe3\x06\x87\x69\xd7\x6a\x18\x57\xd2\xff\xa5\x48\x04\x7f\x9b\xa5\xf7\x2f\x8c\x87\x37\x94\x93\x70\xaa\x22\x3f\xf0\x78\x71\x7c\xb3\x48\xf1\x43\x68\x87\xae\x31\x27\x0a\xd0\xd8\x11\x57\x69\x3b\x3b\x6d\xb9\xba\x3e\xe2\xe2\x1d\xf2\x1a\xe9\x52\x00\x20\x66\x59\xdb\x08\x34\x18\x27\x84\x9d\xfe\x64\x50\x5b\xb3\x8e\x1d\x22\xb4\xe7\x2d\x97\x89\xe3\x97\x61\xae\x12\x25\xf6\x63\xa2\xe1\x82\xa8\x66\x96\xd1\x47\xa9\x36\xd9\x9e\xd7\x28\xb1\x32\x9d\x48\x9e\x38\x51\x8d\x30\xfc\xe0\x90\x31\xc6\x1e\x08\x9e\xac\x02\xc0\xe4\x89\xaf\x4f\x8d\x76\x8e\x03\xff\xb0\xce\x3a\x06\xc9\x45\x3d\x70\xcf\x4e\xab\xe3\x49\x81\x00\x52\x2d\x36\x52\xc9\xfe\x55\xa0\x67\x95\xb9\x58\xb1\x97\x04\x5d\x97\xe0\x01\x88\x2b\x54\xb3\xb2\xdd\x21\x63\x2c\x3b\x50\x71\xbd\x4d\xe9\x51\xb6\x33\xac\xda\x8d\x3d\x54\x6c\x9f\xa8\x16\x39\x15\xab\x4d\x0d\xc8\xac\xd4\xc9\x1b\x9c\x97\xa9\xc6\x58\x8c\xc1\x60\x69\x4e\x63\x2a\xe9\xe8\xb9\xca\x89\x8b\xd3\x43\x68\xca\x7e\x8e\x38\x5d\x92\xce\x1f\x51\x4a\x23\xc1\x9c\x8f\x3a\x5f\x71\x38\x60\x5a\x13\xcd\x3f\x8a\x99\xbc\x0b\x86\xb4\xac\xe6\xe8\x05\x23\x64\x97\xa6\x7a\x32\xac\x32\x36\xfa\x8e\x8b\x09\x2d\x23\x7d\xbd\xc4\x64\xe2\x78\xf6\x3a\x3e\xba\xea\x32\x54\xd4\x9b\xa2\xd1\xbe\x55\xc4\x99\xa1\x13\x2f\xa3\x3c\xb0\xe6\xa4\xe8\xd0\x50\xe7\xc1\x7b\x11\x5d\x72\x1d\x0f\xcb\x6b\xfe\xeb\xaf\x6d\x2a\x05\x8a\x6e\x13\x61\xba\x81\xae\x7b\x1f\xd6\xa5\x1b\x30\x32\x93\x34\x34\x44\x4b\x43\x9f\x1a\x40\xc6\x4b\x94\x56\x37\xc5\x46\x9e\x3f\x3e\x46\xfe\xb6\x9e\xd3\x1a\xf3\xbe\xb0\x6d\x42\xe8\xdc\x9c\xae\x20\x13\xe1\x07\x3c\x56\xaf\x39\x1b\xd8\xdb\xe7\x9d\xbd\x4a\x31\x2b\xc2\x0c\x98\x36\x65\x5f\xa8\xcf\x4f\xcc\x8a\xc7\xc7\xee\x34\x4d\x78\x26\x76\xbb\x3b\xaf\xf9\xce\x8e\x3e\xee\xc9\x6c\x14\x2b\x9f\x34\x95\x33\x6f\x14\x62\x96\x82\xf1\x8a\x55\x17\xa7\x09\x19\x25\x46\x3c\x2b\x47\xcb\x9c\x0c\xa0\xb9\xbc\xac\xf9\xdd\xd6\xef\x3c\xc2\x1e\x00\x8e\x91\xb0\x57\x69\xb1\x22\x2b\xd4\x30\xff\xbe\x0e\x4f\x40\x93\xb3\x13\x0f\x5b\x14\xbc\x5c\xa6\x82\x75\xf3\x0f\x0a\x6b\x2b\x64\x02\xf7\xb5\xae\x05\x78\xd2\xbe\x51\x09\x00\x4f\x6c\x49\x1f\xcd\x74\x1c\x54\x50\x5a\x8c\xa3\xae\x0f\x44\x05\xcc\x22\x05\x05\x07\x8e\x87\x39\xd2\x6e\x74\x98\x9c\xc1\x6a\x84\xd3\xde\xea\x62\xa7\x52\xa1\xd6\xe4\xd0\x76\x86\x78\xe0\xfc\x1e\xb9\x43\xff\x31\x0a\x17\xa9\x32\x7b\xd4\x23\x7a\x24\x5d\x46\x85\xbd\x12\x9a\xfa\x55\x33\x79\xe0\x3e\xfc\xa9\x9e\x07\xa6\xe7\x5f\xbc\x25\x69\xe8\xdf\x5b\xb7\x83\xea\xab\x51\xdd\xea\xf2\xbb\xad\x0f\xfc\xb3\x66\x44\x9e\xbe\x30\xb7\xb4\xc9\x04\xbd\x41\x4e\x69\xc8\x22\x5d\xc9\x0f\x1d\x64\x86\xfe\x8c\x9c\xc9\xd7\xf7\xb3\x22\x16\x5c\x12\x2f\x75\xec\xa1\x4e\xc8\xba\xb2\x45\x15\x6d\x52\x43\x2a\xa8\xc2\x80\xca\x24\x21\x20\x9f\xcb\x88\xbb\x21\x74\x9c\x66\x17\x60\xd8\x2b\x1b\x76\xb1\x97\xd7\x2c\x36\xe5\x7d\x8f\xb8\x22\x99\xb0\x26\xc2\x72\x58\x88\x64\x1e\x4f\x45\xc9\x2e\x29\xef\xc7\xe6\xa9\xde\xd8\xdf\xa0\x45\xd9\xc2\xe9\x32\x13\xc9\x0d\x7f\xbb\x50\xf9\x57\xd5\xb3\x1a\xa4\x7a\xa9\x49\x3b\xfb\xdd\x79\xe3\x12\x85\xb6\x80\x79\xa5\x4a\x55\x69\x5b\xd7\xf0\x2f\x63\x6a\xe9\xe6\x05\xe7\x7f\x70\xb0\x5e\x81\x88\x5d\x85\x33\x79\x51\x46\xc0\x12\x4e\xd3\x27\x19\xa1\x71\xbb\x19\x0d\xac\x74\xc9\x12\x43\xde\x28\xaf\xeb\x19\xff\xf8\x5a\xd1\xad\xaf\xe3\x45\xe4\x94\x0d\xec\x0f\xdc\x64\x63\x9c\x0a\xc9\x74\x91\x36\x64\x03\x8d\x34\x59\x07\xeb\x7e\x81\xf0\xba\xe2\xc2\x92\x87\x5b\x41\x0e\x64\x17\x20\x65\x62\xb3\x3b\xa4\x02\xd2\xda\x73\x5a\x10\x42\x0b\x38\xe9\x45\x11\xdf\x87\x04\xd2\xc0\xb1\xf8\x34\x2e\xf2\x8e\xc2\xd3\x9a\x8a\x98\x52\xb5\x1a\xd0\x71\x31\x71\xe0\x88\x40\x01\xea\xd9\xb6\x68\xa3\x81\x15\x00\x66\x95\xf9\x35\xc3\xaf\x18\xac\x36\x36\x24\xf2\x77\x79\xde\x88\x33\x71\x4a\x9c\xab\xbc\xb2\xa7\x62\xe5\x06\xdc\x7e\xf7\xa9\x7d\xd1\x9a\x5d\xf6\x8a\x8b\x9f\x2b\xab\x59\x05\x66\xcc\x27\x12\xee\x2b\x2e\x0e\x2b\xab\x11\x98\x7e\xea\x16\x23\xae\x91\xc3\xa1\x32\x97\xd0\xeb\xd0\x6e\x06\xda\x29\xc6\xd9\x24\x68\x2a\x31\x1a\x86\x42\x81\x71\xd6\xb4\x14\xaa\x9c\x43\x4f\xf8\xc3\x20\x66\x5e\x6b\x8f\x70\xd9\x41\x45\xad\x37\x40\x63\xfb\x1d\x19\x72\xc9\x86\xc5\xd1\x06\x38\x60\xb6\x64\x2c\x8f\xc8\xe3\x23\x70\x7a\xfd\x82\x27\xf3\x84\xcf\x0e\x8b\xa2\x64\x51\x24\xc0\x76\x3d\x9f\x30\xb0\xaf\x2a\x56\x20\x5e\x4b\xb2\x6b\x5e\x24\xa2\xd4\xf1\xd4\x28\xb7\x5c\x7c\x8d\x15\x9b\x66\xc8\x5e\x43\xd2\xf5\xb6\x65\x53\x36\x6b\x9f\xb2\xc6\x49\xfd\x1a\x3b\xeb\xeb\x0c\x48\x1e\xf1\x31\x9f\x04\x99\x45\x1f\xac\x19\x97\xbb\x19\x3a\xee\x66\x30\x61\x81\x6d\x8e\x37\x30\x7e\xcb\x5c\xe3\xb7\x62\x9c\x84\x1b\x21\x1b\x27\x13\xd2\x91\x9d\x5a\x21\x68\xa1\xa0\xfe\xd4\x2d\xe1\xc0\x46\x56\x72\x2d\x62\xd2\x09\xf0\xfc\x52\xa9\x8c\xdb\xcf\x19\x48\x07\x14\x6d\x99\xcf\xe7\x25\x17\x6c\xb0\x32\xc6\x2e\x4d\xe2\x53\xc9\x02\x34\x49\x3a\x87\x3b\x51\xf4\xcd\xd7\x4f\x7b\xa6\x79\x09\xec\xe5\x7d\x3c\x9b\x15\x91\xd3\x0d\x21\xcf\x9f\x3f\x25\x46\x8c\x6a\x2c\xdc\x1a\x9b\x1d\xec\x7d\xb9\xb6\xcd\x83\xe1\x68\x60\x9a\x44\xcf\xf8\xfa\xd6\xf6\xbe\xfa\x6a\x6d\x63\xa6\xa1\x7c\x31\x6c\x15\xeb\x36\xb7\xb1\x33\x74\x5b\xd9\xfb\xdc\x56\xf6\xdc\x56\x9e\x7c\x6e\x2b\x4f\x48\x9d\x31\x8e\x9f\x12\xea\x91\x3f\x7b\xb6\xe7\x98\xc8\xf8\x51\xfb\x1e\xc5\xb3\x67\x4f\x06\xab\x90\x24\x49\xd7\xa5\x0b\x37\xdc\x06\xd8\x5f\x02\xbf\x26\xc0\x82\xc2\x17\x50\x1d\x67\xe2\xc9\x9e\x42\xb8\xc6\x6b\x00\x3c\xda\xd6\xdc\x02\x72\xa8\x8d\x08\x02\x9a\xb0\x77\x00\x4e\x4c\x63\x69\x09\x8c\x2a\x2c\x37\x79\x3e\xaf\x2b\x79\x1b\xd9\x96\xc1\x13\x4d\xf4\xcb\x69\xbe\xe0\xcd\x35\xee\xc3\x1a\x3e\x1e\x37\xb4\xda\x4c\x27\x63\x6a\xa3\x99\x16\xd6\x62\xb6\x64\xe3\x89\x2b\xa5\xb3\xcf\xfa\x30\x6b\x2e\x2e\x9b\xa5\x5c\x3f\x4d\xe3\x45\x3c\x4d\xc4\x3d\x1b\x0e\xbe\x7c\xfa\xd5\x37\x5f\xd3\xc6\x75\x50\x05\xbc\xd5\x68\xf7\xe0\x08\xcc\x63\xb5\xf7\x62\xf2\x07\x7f\x71\xcd\xa7\x1f\x34\x85\x07\xf3\xec\xee\xce\x9d\x09\x06\x3f\x31\x25\xdd\x39\x50\x44\x93\x07\xbc\x0e\xb3\x76\x13\x99\x06\xe9\xc0\x1d\x3b\x69\xde\x5e\xdc\x18\x21\x78\xe3\x83\xc3\x83\x14\x9c\xb6\xa2\x0e\xa7\x6a\xe5\xbd\xdd\xdd\xfd\xf4\x5d\x55\x53\xd8\x08\x44\x55\x39\xf4\x71\x41\xdb\xea\x8a\x41\x9f\xc0\xec\xb0\x10\x79\xc6\x0e\xd6\x86\xdb\xe3\xcc\x59\x71\x8f\x8a\xc3\x57\x3b\xec\x09\x85\x99\x76\x6d\xa6\xeb\x3d\x69\xe0\xe0\xec\x0c\x27\x6c\x1a\x09\x3a\x20\x7a\x79\x9a\x68\x3f\x84\x44\xcd\xc8\xa7\x9c\x49\xb5\x3b\x2b\xbb\xc6\x19\x2a\xa7\xd3\x68\x40\x9f\x10\x3d\x4a\xb1\xc1\x28\xc5\x7f\xfd\x14\x23\x37\xd4\x44\x6d\xd8\x09\xec\x84\x13\x3a\x8f\x04\xc4\x6a\x44\x41\x74\x3c\xf5\x64\x00\x9a\xac\x80\xf3\xea\x34\xa5\x3d\x92\x70\x5a\x94\x65\xa3\x22\x56\x60\xfb\x2b\x23\xfc\xfd\x64\x87\x3d\x31\x21\x9b\xc6\xc9\x84\xc6\xf2\x9f\x9d\xe1\x84\x96\x2c\xee\x9d\x25\x7f\xf0\xfe\xd9\xf1\xbf\x8e\x2e\x5e\x1f\x9e\xfd\x44\x97\x6c\xd0\x83\x7c\x53\x7b\xdb\x8c\x2d\x49\x32\x8f\x86\x4c\xfe\xc0\x1a\x6c\x1e\xc5\x74\x8f\x50\xbe\xc3\x4a\xe3\x66\x02\x21\x73\x2c\x9c\x29\xcb\xf7\xd3\x67\x2c\xd9\x29\x21\x23\x5d\x36\x4e\x77\xf9\x84\x65\xe3\x74\xd2\x91\xbd\xb3\x7c\x97\x63\x20\xdd\x27\x18\x6a\x27\xd2\x6f\xc9\xca\x45\x55\xce\xef\x5d\xd8\xa0\x81\x77\x40\x2b\x56\x71\x37\x85\xc6\x28\x1d\x07\xd3\x4c\xd8\xde\xf0\xcb\x6f\xbe\x7c\xfa\xe4\xeb\x2f\xbf\xa1\x15\x2c\x8a\x7b\x6c\x2c\x28\xd0\xd8\xc2\xf1\x37\xf8\x8b\x3b\x55\x58\xba\xd2\x5f\x2c\xa6\xee\x50\xcb\xfa\xed\x50\x81\x9b\x0a\x36\xd8\x17\x96\x2d\x14\x9a\x1d\x29\x18\x1f\x8b\x09\xcd\x20\x41\x1f\x4d\x20\x31\x9f\x12\xf3\x19\xda\x20\xa3\x49\x44\x24\x65\x21\x9a\xc5\x1b\x01\x7f\xa4\xc0\xa7\x35\x89\x98\x4c\x88\xbe\x42\xf6\x97\xa1\xcb\x68\x36\x1e\x4e\x54\xd6\x8d\xa0\xf3\x84\xf2\x71\x3e\x51\x1b\xc0\xde\x5d\x70\x22\xe2\x85\x58\x16\x95\xf0\x57\xc6\x97\x47\x6e\x20\x77\xce\x89\x96\x6e\x05\x73\x18\xb9\x1f\x8c\x6c\x46\x7b\xb5\x04\xd7\x06\x51\xc4\x89\x16\x0f\x2b\x9d\x8f\x83\x51\xa8\x40\xd5\x90\x3d\x8e\x58\xc3\xd5\x0b\x99\x7b\xfc\x5a\x65\x4d\x5c\xa7\x01\xb3\xea\x3b\xee\x5c\xc2\x4a\xf9\x78\x91\x43\xb2\x1c\xd4\xad\x5a\x70\x1d\xb7\x17\x25\xef\x62\xae\xa6\xdf\xea\x63\x67\x91\xc0\x0a\xbe\xab\x32\xca\xbc\x84\x23\xb6\xa1\x85\x16\x55\x29\xcd\x8e\xea\xb8\x09\x7d\x2b\xc0\xf4\xc1\xe5\x1e\xb8\xa1\x97\xe3\x8d\xe3\xf1\x6b\x5c\x05\x55\xac\x42\xeb\xdf\x80\xe2\x1f\x59\xae\x63\xbd\x69\x82\x5b\xbb\x20\xfb\xe2\x59\x01\x9b\x3c\x93\x87\x4b\x6e\x71\x33\x34\x37\x7f\xbe\x86\x76\x77\xd8\x90\xcc\x7e\x8b\x8f\xc5\xce\x70\xf2\xfc\xf9\x9e\x97\xb7\xde\x58\xbe\xc9\x59\x1b\x29\xd1\x9e\xda\x8e\x56\xaa\x47\xcd\xc4\x8d\x1c\xc1\xa1\x92\x8b\x44\x64\xb5\xaa\x15\xd1\x2d\x42\xd1\x2a\x88\xcd\x79\x36\xe5\x9b\x0b\x57\x9d\x67\x48\x73\x1a\x8b\xbc\xa8\x4a\x5c\x69\xf6\xe7\x65\xae\x49\xa9\x22\x58\xd5\x5b\xe4\x6c\x33\x16\xcb\x1d\x83\x31\xd5\x93\x3c\x3b\x16\xfc\xe6\x54\x0f\x88\x81\x2e\x1b\x7a\x71\xdf\x61\xe0\xf5\xd3\x3c\x17\xee\x5b\x63\xd6\x11\x7e\x08\x9f\xdf\xbf\x7b\x79\x78\x7e\x74\x71\x7a\xf4\xea\xe8\xf4\xe8\xcd\x8b\xa3\x97\x17\x3f\x1f\x9e\xbc\x3f\x62\x0a\x8a\xcb\x94\xfb\xcd\x66\xa5\xdf\x9c\xfe\xfd\x22\x9e\x5e\x43\x09\xf9\xef\xcc\x16\x71\x64\x9d\xc9\x3a\xd7\x3f\xd9\xf4\x6d\x52\x26\x79\xe6\xa8\x59\xe4\x6b\x94\x55\x98\x90\x75\x9b\xc9\x20\x35\x25\xab\x50\xcb\x15\x35\xba\x4e\xdb\x8f\xf5\x46\x56\x9d\x54\x43\x18\x80\xcc\x5f\xed\x0b\x7e\x1e\x63\x08\x45\xf2\xf8\x18\x85\x55\xad\x6a\x76\x29\x8c\xc8\xd5\x1b\x94\x6e\x6a\xc9\x5f\xe5\x05\x36\xa5\x25\x9a\x49\xa6\xbb\xa8\x71\x35\x09\xe6\xc5\xe0\xc5\x70\xae\x13\x65\x87\xb7\x4e\x4f\xee\x4e\x68\x0d\x98\xf6\x35\xa8\xe1\xe3\x34\xf9\x83\xcf\xd8\xf6\x50\x73\x2b\x57\xc0\x68\x5e\x39\x1a\x2b\xdc\x0c\xad\xfc\x0b\xe7\x1f\x9a\x08\x5c\xa7\x97\x03\x1f\xc2\x51\xf0\x3d\x22\x98\x72\xa8\x6e\xae\x20\xf2\x41\xd0\x1c\xa9\xef\x26\xf2\x48\x7a\x33\x82\x86\x0d\x02\x83\x55\x3e\x83\xc1\x4e\x28\x9c\x04\x50\xb1\xda\xe3\xfe\x08\x40\x6b\x8a\x92\x37\x5f\xf6\xbb\x66\x63\x14\x84\xe6\x8c\xb1\xe4\x20\x1e\x45\xc1\xaa\xe5\x34\x27\xb8\x65\xf4\x78\x1a\xf6\x7c\xed\xc0\xb0\x8d\xcf\x82\x09\x26\x82\xd4\xec\x8c\x81\xe4\x09\x34\xeb\xed\x23\x84\x5c\x25\x70\x02\x8d\x06\x6a\x40\x49\xd4\x7d\xf3\xf6\xfc\xe2\xf5\xdb\x97\xc7\xaf\x8e\x8f\x5e\x76\x89\x92\x5c\x67\xfc\x2e\x6a\xdf\xb9\x49\x96\xf1\xc2\x58\xb6\xc4\x57\x2c\xeb\xbf\x78\xfb\xe6\xec\xfc\xf0\xcd\xf9\xc5\xf9\xe1\xf7\x9f\x84\x1b\xfc\x9d\x91\x71\x2d\x45\xae\x29\xa3\xe4\xee\x44\x67\xa9\x71\x13\x1f\xfe\x5f\x08\x67\xa7\x82\xa6\xb5\xcc\xd2\x5f\x84\x06\xcc\x0f\x59\x46\x9a\x6e\x85\x54\xa5\xdb\x6c\x1f\x3f\xcf\x6e\x8d\x19\xce\x75\x92\xce\x0a\x9e\x61\xdf\x41\xe8\x8a\xca\xc4\xd4\x9b\x28\x35\x31\x82\xba\xed\x31\x9f\x54\xd4\x49\x0e\x39\xeb\x14\x03\xd2\xe7\x5a\x85\x3a\xd2\xce\x82\xb7\x84\xb8\xfb\xd7\xbb\x1f\xa7\xca\x8a\xa3\x41\xf6\x6f\xc2\xd8\xe8\xac\x70\x51\x06\xd6\xef\x29\xd2\x95\xb4\x30\x32\x7f\xdc\x12\x82\x66\xae\x14\xb8\x46\xca\x4f\x1d\xf9\xfe\x46\x9b\xa1\x58\x45\x53\x5c\xf2\xda\x0b\x7f\x1e\x0a\x11\xfd\x01\xa8\x0c\x3c\x70\x46\xf7\xa3\xd8\x03\x3e\x37\xc0\xcf\x33\x56\xd0\x18\x72\x59\xb3\x84\xc6\xfa\x8e\xf3\x2f\x0c\xf3\xfa\x5c\xae\xab\x7c\x03\x18\x24\x29\x61\x33\x9e\xc7\x57\x57\x7c\x46\xa2\x84\xf4\x7a\xb1\xbd\x24\xd5\xd1\x87\xd9\xc0\x04\x29\xe7\xd7\x49\x79\xec\x60\xf0\x28\x96\xe7\x0d\x2f\xf0\x94\x95\x4e\x27\x6e\x32\x67\x75\x4d\xdb\xce\x48\x94\x12\xb2\x64\x71\xcd\x2e\xab\x19\x40\x15\xd7\x2d\x55\xde\x1e\xdc\xee\x2a\x75\x90\x1c\x19\x14\x45\xf1\xfd\xfb\xc5\x2c\x06\x96\x05\x6a\x90\x8e\xee\x0e\x8b\xe4\x37\x97\x49\xc6\x49\x04\x81\x4b\xae\xe8\x74\x42\xa8\x03\x2d\x1a\xd7\x2d\xcc\x4d\x32\xa5\x29\xd9\x10\x30\x9b\xdf\xfd\xb3\x74\x45\xaa\x8b\xfa\x3b\xa3\xe3\xd2\x30\x66\xb8\xa2\x88\xa7\x1f\x48\xe4\x62\x67\xae\x0b\xe9\xfb\x64\x9e\x45\x1c\x76\x08\x59\x11\xba\x0d\x09\x33\x36\x25\xc8\x82\x41\x7f\x02\x09\x16\x50\x5c\xe1\xa4\xc2\x67\xbd\x72\x34\x18\x1a\xa1\x75\x9d\x37\xd0\x68\x6e\x51\x18\xb1\x3d\x78\x75\xf4\x77\xbb\xbc\x59\xb2\x13\x89\x35\x46\x92\x67\xd6\x12\x51\x8a\xb9\x56\x84\xfe\x4f\xfc\x9e\x99\x68\x0b\xb7\x2c\x59\x8b\x54\x2b\x84\x9c\x22\x09\xbd\xa9\x68\xd9\xc4\xe0\x8f\x23\xe9\x1d\x83\xa2\x83\xdd\x1c\xd3\x7c\xf2\x29\x96\x00\xee\xa2\x5b\xb1\xdb\x15\x4d\x6a\x68\xad\x3c\x24\x9e\x54\x64\xb0\x60\x92\x68\xe9\x0f\x87\xaa\x10\xd6\xce\xa4\x39\xfe\xfc\xc9\xe3\xe3\x76\x75\x03\xc9\x15\x40\xd0\x52\x7d\xba\x23\xe2\x04\x86\x78\x09\x93\x9a\xaa\x32\xd3\xc6\x73\x20\xc9\x3b\x9e\xdd\xa2\x25\xad\xb8\x8e\x52\xba\x54\x07\x60\x3f\xdc\x8d\x25\x9d\xaa\xcc\x57\xb9\xe6\x8a\x2a\x94\xdd\x26\x64\x98\xb0\xe9\x26\x2a\xb4\x80\xcd\xe9\xec\xdd\x7c\xa2\x7a\x41\x3a\xf6\x16\x4e\x31\x8c\x70\x86\xf8\x5f\xb8\x17\xa4\x24\x3b\xc6\xe9\xa4\xe9\x2a\x0e\x57\xa8\xa8\xac\x08\xcd\x98\x30\xf3\xac\x1b\xee\x97\x6a\xda\x32\x5a\xb8\xfa\x9b\x2a\x9f\xbb\x56\xf2\x83\x17\x59\xdb\x99\x4a\x04\xbf\x51\x8c\x9a\x3d\x51\x39\x0d\x36\x7a\xed\xa1\x68\x3e\x75\x9f\x4f\xcb\x69\x68\xe4\x1a\xe2\x2e\xf1\x2d\xa0\xb4\xad\xaf\x29\xa8\x6f\x8d\x59\x52\x88\x7b\x8b\xdf\x1c\x9a\xdc\x0c\x10\x85\xe8\xff\xdb\xa4\x53\x83\xd8\x62\xa1\x3c\x62\x1f\x56\xf4\xb6\x3e\x6f\x99\x58\xd1\xfb\xfa\x2f\x67\x60\x3a\x03\x26\x32\x97\xb5\x56\x6a\x2a\xde\xde\xc1\xcd\x88\x3b\x4e\x14\x57\xd8\x88\x72\x29\xd6\xa1\x3b\xfe\xf1\x81\xdb\x90\x1d\x47\xd1\xad\x0a\x61\xf1\x0f\x30\x4f\x72\x3e\xdc\x9b\x0f\x33\x9e\x89\x44\xb8\x95\x2e\xc3\xd8\x15\x5b\xb5\x70\x1f\x39\x48\xc2\x89\xad\x02\x97\xf3\x8a\x10\x15\xdd\x62\xa5\x1c\x71\x1b\xa4\x22\x2b\x1d\x0e\xa8\xb2\xb7\x32\x79\x70\x82\x19\x53\x88\x0b\xa5\x52\x04\x12\xfd\xd7\x84\x50\x51\x5e\x5f\x77\x3c\xfe\xf0\xda\x68\xe5\x04\x19\xa9\xe3\xaa\x62\x86\xb8\x9f\x56\x34\x6b\x88\x1a\xf9\x59\x3d\xa2\xf9\x57\x4d\x7f\xf8\xa1\xd5\xbd\x4c\xb5\xd1\xa4\xa9\xb7\x3b\x18\xe4\xa6\xaa\xb4\xdc\xcd\xee\x33\x6c\xe4\x5f\xf0\xb7\x3a\x38\xfa\x93\x31\x07\x70\x01\xdb\xb0\x37\xb7\x8a\xe9\xd2\x7d\xa9\x8d\xee\x74\x9f\xee\x37\x1b\x64\xf2\x0e\x8a\x5d\xd8\xad\x7c\xe4\x5b\x59\x5e\x74\xc2\x6d\xe7\x84\xa8\xe0\xf0\x00\xce\xca\x72\x36\x13\xf2\xf8\x38\xb0\xe8\x48\x2e\x68\x42\xf3\x9d\x21\xa1\x98\x1b\x24\x09\x02\xf1\xe0\xcd\x71\xa7\x2d\xf4\x82\xab\x62\x3c\xa1\x77\xd6\x0e\x4f\x19\x2f\x16\x75\x57\x4b\xd6\xeb\x45\x19\x53\x92\x4f\x4e\xd1\xdf\x59\xac\x68\x01\x17\x0c\xc4\x90\x92\xc8\x1a\xb7\xff\xd9\x06\xbe\x91\x06\xa1\x6b\x54\xfe\xc1\x27\x8b\x0a\x83\xff\x20\x15\xa5\x23\xc0\x32\xc2\xaa\xcf\xc0\xd3\x4a\x9a\x54\x1e\xdd\x2c\xc4\x3d\x4a\x9e\xd4\x43\xb5\x6c\xe4\x03\x80\xc8\x13\x5d\xdb\xd5\xbb\x88\x10\xbf\xad\x8c\x7f\x14\x0d\xb4\xb1\x6e\x07\xca\x58\x19\x8d\x46\x76\x7a\x7b\x79\xe3\x25\xa8\x7d\xf6\x3b\x6d\x68\xdf\xcc\xa7\x26\xc8\x3e\xe0\xfd\xac\xe6\x13\x4c\xfe\xd5\x55\x4d\x73\x76\x15\x09\x44\x01\xf2\xa6\x06\x1a\xa9\x92\xa4\xd5\x51\x84\x7c\x84\xb5\xd5\x69\xbb\xfb\x22\x37\x13\x90\x84\x03\x89\x0f\xb0\x42\xe1\x7a\x6c\xd4\x79\xe3\x61\xce\x7d\x02\x41\x4a\xde\x46\xb1\x92\x7f\xc1\xe5\x74\xca\xe7\xaf\xf2\x50\xe9\xef\x90\x40\x76\xa8\x76\x7c\x15\x5b\x64\xda\xed\xd2\x8c\xf8\xf7\x98\x27\xf8\x3e\x83\xf1\xbc\x5d\xab\x77\xf2\x04\x3f\x1f\xf8\xbd\x04\x4d\xb4\x6d\xbd\xc6\x0d\xe5\xf0\xf8\x9b\x6f\x1b\x28\x5d\xdd\x33\xdb\xb8\x67\x38\x1e\x1b\x0b\x9a\x8e\xe9\x44\x79\xff\x86\xdf\xe4\xe0\x03\x8e\x58\xe8\xe3\xfa\x91\xea\x1d\x16\x0c\x56\xb1\x2f\x79\xc9\x06\xd4\x35\xc8\xc5\x4b\x40\x45\x2f\x62\x2a\x9d\x07\x97\xc3\xea\xae\x46\x75\xdf\xe6\x49\x51\x0a\x1d\x24\x9c\x8f\x75\xb3\x93\xd5\x67\x4d\xa7\xea\xca\x18\xbb\x60\x5f\x7d\xd9\x55\xe3\xa4\x1a\xf6\x14\x0b\x83\xb3\x24\x42\x05\x51\xd0\x64\x5d\x52\x07\x39\x18\x99\xf3\xb2\xec\xae\x28\xd7\x34\xaf\x89\xc7\xa8\xc7\xf1\x3c\x38\xe9\x3a\x14\x07\x71\xd6\xad\x13\xa0\x83\xf1\xce\x8e\x9d\x06\xa5\x52\x93\xd7\x95\xce\x98\x83\x6b\x40\x74\x18\xac\x45\x5e\x12\x3d\x7f\x54\x2e\xf0\x48\xbf\x5e\xd5\x7b\x25\x14\xa8\x5e\xfb\x2c\xc5\x99\xa3\x76\xab\xd3\xa6\xd1\x1a\xdf\x07\xa7\x9c\xf7\x94\xe6\x77\xbb\x29\xbf\xe5\x35\x5e\x0f\x98\xa7\x89\xc6\xb4\xfc\xf3\xba\xb8\x69\xca\xe3\x82\x5d\x51\x27\x5a\xc5\xfd\xab\x34\xbe\x2a\x5f\x15\xf9\x0d\xcb\x04\x85\x00\x15\x2f\xcc\x37\x96\xcb\x57\x05\x2f\xb9\x78\xc9\x2f\x97\x57\x57\xbc\x78\x11\xa7\xe9\x65\xec\xdb\x54\xbd\x16\xec\x83\x24\x89\xfb\xad\xe5\x38\x14\x94\xc7\x0d\x76\x4f\x48\xfd\x06\xb4\x38\xc6\x58\x70\xb0\xd6\x52\x93\x66\xbc\x9f\x94\x2f\x96\x45\x91\x38\xf1\x56\xad\xfb\x24\x2b\x05\x94\xf8\xe5\x3a\x11\xbc\x5c\xc4\xd3\x5a\xdd\xf3\x4f\x7d\xc1\x4b\xa1\x5c\x3d\xb2\xbc\xb8\x01\xc9\x9b\x9e\x44\x76\x23\xf1\xc3\x61\x2e\x94\xf2\x95\x55\xb5\xa2\x01\xa1\xf0\xb0\x72\x68\x07\x45\x0b\xac\x8c\x3f\x28\xcf\x6e\x01\x8f\xff\x20\xb1\x49\x46\xa8\xc9\x35\x25\x5f\xfe\xc4\xa3\x82\x18\xff\xe5\xbc\x46\xe1\xab\x75\xf3\x10\x23\x8e\x82\x6d\xee\x06\x80\xe1\x34\x7e\x02\x60\xc2\x42\x81\xc1\x46\xab\x90\x38\x11\xe5\x9d\xbc\xd4\x9e\x57\x5f\x75\x74\x19\x42\x9d\x64\xe7\x45\x9c\x95\x18\x01\x26\x58\xfb\x64\x1e\xf1\xf1\x1f\x7c\x42\x24\x16\x07\xb4\xc1\xfb\x97\xfc\x2a\xc9\x24\xdf\x5c\xdc\x3f\x88\x88\xac\xe6\x49\x16\xa7\xe9\x3d\x4a\xe1\x6e\x12\xf9\x0a\xda\xbd\xe2\x42\x45\xd9\xfd\x39\x6e\xb8\x14\xbd\xa0\x39\xe0\xf7\xca\x25\x4a\x80\xfd\x12\xa7\xfd\x58\x44\x03\x6f\xab\xbd\x14\x40\x54\xae\x60\xef\x67\x33\x5e\x1c\xe6\xa2\x6d\xaa\x71\x5e\x13\x23\x83\x7c\xd5\x9f\xe7\x85\x12\xe8\x9e\x42\x03\x90\x77\xfb\x96\x82\x86\x0b\x4c\x11\x04\x8d\xd9\xb4\xd0\x2a\xa5\x88\xd3\x87\x92\xa7\xf3\x51\x46\x5d\x50\x47\x39\x15\x05\xe7\xca\x7b\x11\x42\xb0\xa0\x29\xc9\xca\xf7\x2d\x2a\xa2\xd8\x07\xd6\x9c\x8b\x0a\xd4\x4a\xf6\xed\xc7\x33\xf1\x36\x49\xde\xeb\x45\x1a\x48\x45\xd3\xd0\x52\xc2\x0a\xd7\x89\x84\xd4\x85\x49\x18\x97\xe6\x00\xf2\x15\xa1\x4b\x96\x8a\xa8\xec\x2b\x14\x6b\x9c\xc2\xe5\x09\x48\xd9\xb2\x7f\x13\x67\xf1\x15\x2f\x30\xba\x98\x88\x05\x44\x41\xdb\x3e\x13\x51\x26\xa2\x54\x2e\xeb\x0b\x27\xa2\x4e\x34\x25\x84\xa6\x35\x81\x7b\x5f\xc4\x59\x96\x8b\xad\x04\xe2\x2c\x6d\x99\x34\x94\xe5\x16\x24\x5a\x56\x30\x6d\xa1\x97\x5d\xb9\x15\x97\x5b\xf1\x56\x91\xe7\xc2\x96\xec\x77\x49\x27\x66\xd0\xe1\x61\x2e\x30\x52\x13\x3a\xb6\x45\x53\x5a\x85\xde\x7a\xf1\x14\x51\x49\x63\xba\xa4\x89\x3f\xf7\xaf\xe3\x24\xab\x99\xf6\x6a\x10\x19\x67\x86\xf3\xba\xbd\x20\xfc\x19\x4d\xbc\xbd\x50\xe8\x79\xcf\x2a\x7b\x21\x77\xe0\x51\x81\x72\x6a\xf6\x82\x73\xab\x18\xc0\xe2\x5e\x2f\x8a\xfd\xdd\x50\xf6\x7a\x51\xe9\xc1\xba\xa4\x29\xbb\x5e\xb7\x1b\x12\x1f\xf6\x72\x25\x17\x7d\x2a\xf7\x43\x5a\xdd\x0f\x39\xa1\x73\x36\x35\xfb\x61\xc6\xa6\x95\xfd\x30\xaf\xec\x87\x19\x21\x74\xfe\xdf\xda\x0f\x4a\x92\x2d\x3b\xfd\x31\xf1\xf7\xc4\x8c\x56\x47\x40\xe8\x02\x05\x64\x18\x39\x40\x87\x0f\xbd\x36\xa1\x01\x32\x52\xc3\x43\x2c\x94\xa0\xf5\x86\x2d\xc6\x83\x49\xa7\x3a\x12\xac\x8c\x8f\xa3\xad\xee\xce\x4d\x5f\x45\x72\xdf\xe9\xc2\x53\xb9\x88\x33\x8c\xf3\xb9\xd3\xed\xf7\xcd\x1b\x9e\xcd\x76\xba\x5b\xa3\xd1\xd6\xf9\xdb\x97\x6f\xb7\x22\x71\x5d\xf0\x78\xb6\x75\xc9\x85\xe0\x05\xe9\x92\xd5\x92\x69\x93\xb4\x05\x75\x23\x15\x5c\xbb\x2e\xfc\x2b\x67\x9b\xa7\x74\x49\xa7\x34\xf6\xb7\x55\xc3\x36\xf7\xb0\x4b\x0d\x2a\x91\x5b\xc7\x6e\x74\xa1\xb6\x7a\x88\x3c\xbc\xad\x9e\x99\x4d\xd5\x8a\xf6\xce\xee\xb3\x29\xbb\x29\x28\xd7\xd8\xfe\x50\x88\x22\xb9\x5c\x0a\xce\xce\x39\xd0\x3e\x09\xcf\x84\xf6\x04\xaf\x95\x60\xd5\xe1\x6d\x43\x72\x18\xbf\x1a\x59\xed\x95\xa4\x89\xdf\xe4\x33\xce\xee\x0b\x80\x00\xaf\xe8\x24\xcf\x5a\x3b\xb8\x2a\x9a\x7b\x98\xf1\x52\x14\xf9\x3d\x3b\x85\xf6\xae\x92\x52\xf0\xe2\x25\xc7\x70\xdf\x79\xc1\x0e\x29\x87\x30\xb3\x95\x0f\xfe\x1a\x54\x28\x93\xed\x21\xe9\x18\xb7\x4b\xcc\x9d\x0e\x41\xc5\x8a\x83\x2e\x97\xc7\xcd\xb6\x54\x76\x47\xdd\x99\xf3\xd4\xc9\xc6\xc9\x84\x9d\x81\xb3\x11\x15\xa8\xdf\xe2\xfd\xb8\x2c\xf3\x69\x12\x0b\xfe\x12\xe1\x95\x9b\xe5\x85\xe4\x4a\xd9\x47\x98\x26\xf5\x3a\xc9\xae\xd8\xb1\xfb\x22\x30\xff\x42\x86\xe6\xa2\xd6\x33\x12\x15\x60\x2a\xc9\xce\x73\xb6\xb7\xea\x00\x65\x79\x36\xbd\xe6\x92\xa8\x55\x0d\x7a\x0a\x00\xde\xbf\x28\x83\xcf\xe7\x4c\x93\xa4\x41\x45\x17\x92\xda\xaa\x7c\xc6\x7e\xc7\xca\x17\x6a\x51\x5e\x68\x31\xf8\x0b\xca\xfb\xe7\x47\xaf\xdf\x9d\x1c\x9e\x1f\x5d\xbc\x7d\x73\xf2\xdb\xc5\x8b\xb7\xaf\xdf\xbd\x7d\x73\xf4\xe6\x9c\xf1\x3e\x06\xbf\x34\x08\xf7\x35\x22\x34\x56\xdb\x43\x0d\xc4\x5c\xa9\x83\x9d\x99\x2d\xdd\x0a\x3c\x93\xaf\x9c\xaf\xe7\x45\x3c\xfd\x00\xb9\x5e\xfb\x67\x47\xa7\xc7\x87\x27\xc7\xff\x3a\x3c\x3f\x7e\xfb\xe6\xe2\xd5\xf1\xe9\xd9\xf9\xc5\x9b\xb7\x2f\x8f\x2e\xce\xce\x4f\x8f\xdf\x7c\x0f\x56\x6b\x8a\x8c\xd4\x3b\x54\xbe\xba\xc9\x05\x3f\x49\x6e\x31\x8c\x1a\xe3\x7d\xa3\x04\x80\x17\xca\x9b\xf7\x0d\xbf\x3b\xc2\x7c\xe1\xb6\x2a\x0e\xf5\x65\x78\xd2\x78\xbf\xe6\xd5\x0b\x34\x7b\x9c\xbd\x33\x24\xd7\xa1\xf6\x0f\x54\x3d\xe8\x12\x6f\xe2\x1b\x3e\x6b\xfa\x18\xbe\xd7\x02\x94\xef\xcf\x18\xef\x9f\xe4\x77\x27\x92\x7f\xfa\xf9\xb5\x1e\x45\x92\x5d\xe1\xc3\x9b\x97\x47\xaf\x8e\xdf\x1c\xbd\xb4\x96\x1d\x60\x55\xa8\x24\x91\xae\x61\xdf\x9b\xf7\x27\x27\x5e\xa9\x17\x79\x36\x53\x20\xbb\xe5\x00\x4b\x69\x28\xb2\xdb\xa4\xc8\x33\x09\x98\x7a\xf3\x12\x65\xe5\x2f\x1d\x8c\x26\xdf\xbe\x7d\x7d\x5e\x70\x74\xb3\x54\x11\xfc\x19\xef\x1f\xbf\x7c\xfb\xfa\xc5\x75\x9c\x5d\xf1\x12\xcb\xd8\x87\xd7\xc7\x6f\x8e\x5f\x1f\x9e\x5c\xbc\x38\x7c\x77\xf8\xdd\xf1\xc9\xf1\xf9\xf1\x91\x1c\xe8\xcb\xa3\x57\x87\xef\x4f\xce\xc3\xd7\x2d\x0c\x11\x7c\x2c\xf3\x42\x4f\x67\x9e\x4d\x0b\x2e\xf8\x77\xf9\x32\x9b\x79\x7e\xd9\xcb\xc0\x58\xe6\xf8\xcd\x9b\xa3\xd3\x8b\x9f\x5f\x77\x25\xbd\xe6\x7f\x7a\x79\x74\x76\x7e\xfa\xf6\xb7\xc3\xef\x4e\xe4\x0e\x3b\x7c\xf1\x53\x57\x5e\xef\x7e\x19\x78\x7f\xd6\x95\x97\xbb\xff\xe1\xf4\xe8\xfb\xe3\xb3\xf3\xa3\x53\xf9\x6d\x16\x7c\xfb\xe1\xe8\xf0\x5d\x97\xd0\xeb\xe0\xb5\xb6\x65\x90\x55\x16\xc1\x37\xb9\x03\xba\x84\xde\xb0\xc8\x7f\xff\xee\x85\xec\xbb\xea\x8c\xa2\x72\xdf\x9b\x94\x52\xfc\xa3\x38\x4b\x2e\x53\x79\x8e\x24\x61\xed\x4d\xd7\x0d\x4c\xcc\xed\xc6\xf2\x5a\xb8\x12\x54\xc3\x20\x37\xd1\xd2\xa1\x34\x2e\x45\xbb\xf3\x19\x36\xa0\x0e\x5a\x4b\x1c\x09\xd5\x0b\xba\xdd\xe8\x5b\xa8\xa1\x38\x14\x90\x25\x65\xf7\x6d\x05\xe5\x77\xd7\x92\xca\xdb\x21\x30\x07\xf7\x6b\xc5\x63\xd5\x19\xc8\x20\xfc\xd5\xff\xf6\xa0\x33\x55\x70\xdd\x98\xb3\x1a\x0b\xf3\x4b\x3f\x0b\x43\x81\xc1\x3b\x2d\x88\x8a\x79\x34\x30\x60\x52\x2b\xd3\x15\xc8\x8e\xb3\xfd\x7d\x9d\x25\x3b\x77\x77\x97\xa4\x00\x25\xf1\x23\x51\xfc\x77\x7c\x9e\x17\x90\xbc\x5a\xd9\x3c\x5a\x8b\xca\x9c\xc5\x4e\x40\xef\x2b\xdf\x75\xa2\x0a\x4e\x11\x80\x93\xf9\xe0\x24\xac\xd0\xe0\xe4\x2c\x09\xc1\x11\xfd\x82\xdf\xe4\xb7\x78\x81\x47\x89\x2c\xee\xa4\xa5\xca\x3b\x09\xcb\xb5\xc2\xce\xd1\x20\xd9\xe9\xba\xf3\xa8\x1b\xa3\x98\x14\xa3\x4a\x32\xb9\x88\x9b\x0c\xe7\x9c\x8c\x30\xbc\x82\xab\xef\x51\x52\x80\x4a\xce\x2d\xbb\x12\xd5\xa0\x05\x2a\x4c\x01\x98\x17\x58\x99\x2f\x48\x75\x4c\xd3\x67\x8d\x4d\xf7\x7a\x26\x87\xd5\xd0\x78\xba\x98\x70\x13\x36\xf5\x18\xef\x97\x0b\xf0\x28\x28\xe8\x90\x50\xbe\x72\xe5\xf3\xa6\x9b\xb7\xeb\x68\x1a\x2b\x90\xc1\x05\x54\x61\xf1\xb4\xb2\x19\x9f\x42\x82\x0c\xdf\xce\xc2\x17\x40\x17\x8d\x06\x2b\x7a\x61\x14\x96\x84\x0a\x0b\xcc\x47\x57\xf8\x01\x34\x9f\x24\xfd\xec\x88\x0a\xab\xd6\xbf\x8b\xec\x03\xa4\x3a\x51\xfb\xab\x64\x77\x91\xf9\x4d\xb9\xd7\xfc\x61\x0b\xa5\xf9\x59\x74\xa6\x9e\x51\x49\x6e\xde\x29\x72\x53\xf6\x28\x1b\x3b\x77\x4f\xaf\x24\x04\xab\x74\x1e\x46\x4a\xa3\xaf\xe9\x3b\xfa\xbb\x5f\xda\x80\x7c\xea\x04\x4b\x8c\x30\xa0\xfd\x76\x64\x08\xcc\x21\xb1\x92\x22\x3d\xe4\x8c\x09\x3b\x31\x09\x13\xfd\x70\x10\xa0\x71\x74\x86\xd1\x51\xcd\xb1\x21\x3d\x8a\x32\x7a\x4a\xe8\x51\x94\x50\x2f\x70\xa6\xd1\x88\x83\x3e\x9c\x1e\x45\x79\xed\xf7\x73\x64\x09\x08\xa1\xbf\x7b\x66\x37\x47\x51\x51\x5b\xbe\x4e\xe4\x05\xcb\x0d\xd3\x8f\x50\xc9\x05\xb2\xab\x7e\xe6\xae\x3a\x37\xaa\x79\x88\x2f\x8d\x83\xd8\x83\x68\xdb\x66\xfe\x5e\xc8\xf9\x3b\x8a\xe4\xdc\xd9\x8a\xa7\xce\x31\x3b\xfe\x44\x9a\x7e\xb8\xaa\x27\xbb\x69\x1b\x95\xfb\x81\xb6\x53\xc8\xaf\x61\x27\xbc\x5c\x63\xa8\x0b\x97\x12\xaf\x33\xbb\xdd\xf0\x66\x01\x6d\xd1\x9b\xcf\xee\x65\xf3\x6b\x89\x9e\x84\x54\xd0\xfb\xd3\xb3\xb7\xa7\x86\xe0\x7a\xd5\x42\x96\x64\xae\x57\x18\xd0\x9b\xd9\x95\xa3\x23\x86\x84\x38\xb2\x78\x69\x5f\x8e\xdf\xa1\xc1\x4b\xe1\xa6\x9f\xd2\xe9\xec\x6d\x76\x2a\xef\x33\x04\xfd\x6a\xf8\x26\xf1\xbd\xbe\xa7\x24\x40\x34\xb4\x93\x9e\xe5\x37\xcc\x09\xd8\xfb\xd6\xc0\xa4\xad\x8f\xd0\x44\xc8\xbe\xc7\xd2\x2f\xdf\xbe\x8e\xc8\x8a\x57\x38\xe9\x7a\x96\x5b\x82\x25\x1b\x93\x2f\x35\xe9\xa7\xb4\x5f\xea\x22\x24\x81\xb3\x05\xc8\x75\x96\x37\x15\xaf\x41\xe3\x0c\x67\x9a\x0b\xef\x62\x81\xaa\x12\x79\x6f\xf9\x9e\x17\x06\xf1\xca\x39\x31\xfc\x16\xa4\xae\x5f\x75\x5a\x2c\x5e\xea\xdd\x1d\x3c\xda\x68\x59\x5e\x23\x2f\x86\x4d\xe2\xcc\xad\x68\x86\x79\x17\xbf\xc3\xec\xa9\x0d\x95\xed\xea\xf5\x45\x8e\xf7\x22\x98\xbe\xc0\xfb\x0d\x2a\xe9\xc4\x2c\xf2\xda\xc8\x17\x35\x54\x1c\x6c\xab\x93\x09\x66\x8b\xa1\xfa\xc9\xad\xe6\x83\xdf\x36\x4a\x3b\x6d\x72\x0d\xfe\x88\x5c\x5a\x9e\x10\xdd\x98\xcf\xc0\x6e\xde\xde\x77\x0d\xed\x41\x89\x93\xa4\x6c\xce\x20\x5b\x6d\xeb\x07\xaf\x2d\x40\xb0\xaa\x35\xcb\x6a\xb7\xea\xbe\xf4\x4d\x5a\xb0\x86\x19\x0f\x34\xdd\xf2\xfe\x15\x8f\x8f\x45\x7f\x96\xa8\x48\xd0\x48\xba\x5b\x33\xde\x8b\x8b\x7c\xc1\x33\x77\x8b\xb8\xad\xaa\xa8\x53\x94\xab\x95\x6c\x9d\xbb\x4b\x6c\xa4\x0f\xfa\x18\xb9\xbd\xe5\x5b\xd3\xcd\x34\xcd\x4b\xde\xd8\x8f\xdc\x06\xb2\x0f\x07\x1c\xef\xc6\x86\x4f\xb6\x89\xf0\x9b\xac\x54\xd9\x65\xbe\x91\x1f\xb6\xac\x8f\x64\x10\x7b\xca\x43\x86\x82\x0a\x0b\x4a\x5d\xab\x6e\xcd\x59\x7e\xa3\xcc\x4c\x4c\xd3\xd4\xdb\x30\xb2\xa9\x79\x6a\x31\x5e\x13\x7c\x7a\x53\x68\x7b\x19\x07\xa2\x8e\x1a\x80\xdb\x0c\x78\x5b\xd0\x4f\xc5\xe4\xb0\xa0\xca\xeb\xb2\x90\xbb\xa0\x8a\x90\x0b\x8a\x06\x34\x38\xba\x44\x22\x5f\x33\x6b\x85\x5a\xa3\x86\xf1\x18\x86\x4f\x4e\x8a\xc7\xce\x98\x2c\x79\x2e\x76\x95\x6d\xc1\x92\xae\xe1\xf2\xee\x92\x34\x7d\xe1\x94\x33\x3e\xd7\x06\xb3\x38\x6f\xec\xe0\xcc\xd9\x42\x61\x56\x1d\xb8\x6e\xa6\x37\x9c\xe2\x4a\x79\x9d\x65\x0e\xc6\xbd\xbe\x35\x63\xd4\xe0\xcc\x28\x97\x2b\xe5\xc4\x7f\x92\x9c\xcb\x3e\x5e\xf7\xc0\x5e\xed\x13\xee\x71\x5b\xce\x27\x4d\x37\x43\xc0\xeb\x70\xd3\x06\xf8\x85\x6e\x0f\x88\x3a\xa6\x0d\x30\x6a\x76\x5c\x9d\xe3\xba\x79\xd4\x73\x56\xbf\xb8\x75\x9a\x78\x83\xbc\x4d\xbe\xb0\x1b\x64\x3c\x74\x53\x66\x45\xaa\x61\x0e\x3c\x1a\xc2\x66\x91\xcc\xbc\x85\x6c\xda\x16\x41\x65\x8d\x41\x02\x4c\xd7\x78\x70\x35\xb6\xaa\x62\x46\xc4\x76\xe6\xfd\x9b\x36\x2f\xf5\x4a\x2b\xc0\x5d\x3b\x6d\xbc\xdd\x00\x87\xe8\x46\x7c\x04\x85\x4d\x84\x9b\xbf\xb2\x9a\xba\xf2\xd4\x3b\x21\xb2\x2a\x26\x0b\x38\xf7\xac\x79\x42\xec\xe5\x81\xad\xce\x80\xad\x17\xa9\x1b\xca\x7d\xd7\x84\xbf\x66\xf9\x8d\xc6\x5d\x1a\x95\x29\x23\x33\xe7\xcc\x03\xc3\x84\xe8\x52\xb6\xa5\x26\xcb\x31\x59\x72\x91\x46\x41\x13\x49\x1c\x26\x2e\x04\xad\x8b\x51\x41\x3b\xfe\x6d\x5b\xc5\x40\x38\xc5\xba\xed\x57\x45\x7c\xd5\x80\xa1\x15\x0b\x00\x67\x12\xc4\x23\x2e\xd5\x77\xeb\xf7\x23\xa8\x77\x80\xff\x1c\x80\x26\x88\x9b\xec\xe8\x3e\xe8\xc8\x5d\xae\x17\xf9\x0d\xac\x7c\xb7\xeb\x2f\xd9\x0f\xe7\xaf\x4f\x36\x98\x30\x59\xac\x0e\xa6\xca\x02\x72\x67\x6b\x29\x41\x76\xa5\x0b\x37\x3c\x4d\x01\x59\x0c\x21\x6c\x3b\x5e\xbb\xfe\xbe\x53\x87\x4e\x54\x5b\x6d\xdb\x6b\xcb\xac\xda\x6e\xcb\xb6\x26\x78\xa1\x7b\xcd\xb7\x2c\xb6\x37\xaf\xba\xdc\xa7\x80\x5e\xd9\xa4\x35\xed\x6a\x3c\x81\x5b\x28\x5c\xd9\x86\xbe\xf0\x1e\xf2\xc7\xde\x1c\x40\xc3\xd9\x01\x0a\xad\x86\xf3\xb6\xb6\xae\x42\x02\x76\x84\x6a\x9b\x7d\x0e\x42\xd1\x3b\x34\xc0\x29\x75\x2d\xfe\x09\xb4\x62\x7b\xd9\x08\xab\x94\x5c\x58\x85\x54\x78\x99\x9b\x33\xe2\x96\x8a\x2a\x34\x17\x75\x49\x84\x92\x0b\x63\x2c\x56\x43\x19\xb9\xf5\x54\x10\x2e\x70\x5f\x40\x4b\x82\x35\xa0\xf8\xe0\x3a\x94\x49\x69\x2c\x9d\x9a\x5a\xb0\x66\xf1\x55\xf0\x73\x63\x0b\x0c\xb1\xee\xa1\xfa\xab\x1c\xc2\xe7\x40\x45\x3d\x91\x39\x08\x15\x45\xe0\x0d\x45\xf3\x56\x2f\x05\xb5\x68\x6d\xf1\x04\x1d\xce\x4f\xaf\xb1\xf1\x3d\x70\x16\x79\xd3\x26\x9c\x2a\xa6\x99\xeb\x18\x23\xf8\xb7\xa7\x16\x75\x18\x92\x32\xf9\x83\x3f\x1f\xd8\x58\x86\x75\xba\xce\x57\xf4\x1d\x3b\x01\x02\xed\x8f\x35\x32\x1f\x14\x07\xf8\xea\x1f\x3f\xdc\x84\xf3\x98\x71\xc8\x04\xc4\x06\x7f\x91\x7a\x64\x73\x7d\x90\xab\x2e\xd8\x54\x37\xe4\xa8\x14\x64\x95\x26\x96\xa9\x06\x39\x68\xe6\x43\x8d\x77\x67\x07\xcc\xd8\xdb\x48\x1d\x55\x12\x03\xe2\x35\xd3\x67\xc6\x0d\x45\x95\xd7\x1e\x02\x30\x3a\xed\x27\xab\x16\x81\xdf\x6d\xbd\xb4\xcc\x30\xae\x04\xbf\xdb\x7a\x83\x58\x4a\xb4\x52\x93\x9f\xd0\x0f\x77\x3b\x50\x41\xdd\x14\x97\xec\x35\xa9\xb3\x2e\x9b\x9a\xbd\x1e\xef\x57\x2e\x78\x25\x04\x7c\xdf\xe8\xc7\xee\xbb\xe1\x6f\xd5\xbb\xe1\xd3\xc3\xa8\xcd\xd3\x3c\x23\x9e\xf3\x41\x16\xca\xb4\x18\x63\x99\xbb\x61\x1c\x65\x5c\xaf\x77\xb5\xa6\x69\x4c\x38\xb4\xd6\xfb\x7f\x15\xfd\x81\x51\x34\x7c\x6b\x84\xf7\x70\xe8\xbe\x6b\x1a\xbe\x0d\x21\xd4\x16\x79\xf8\x53\x42\x0f\x80\xf0\xce\xdd\x8e\xa7\x28\xdb\x50\x81\x53\xae\xd4\x53\xe5\x40\x6d\x70\xc8\x29\x3a\x4f\xc3\x38\x6b\x6c\x2c\xbe\x83\x2e\x7e\xd8\x50\xc5\xaa\x31\xcc\xa5\xdc\xac\x20\x9b\x12\xb4\xfd\xf3\xff\x26\x8e\x31\xdd\x8e\x07\x93\x4d\x50\x8d\xe3\xcc\x61\xaa\x1a\xdd\xdb\x98\x1b\x2f\x81\xc9\x26\x38\x88\x3c\xb4\xa1\x97\x16\x84\x12\x7c\x0c\xf1\x00\x7e\xae\x1e\x66\xf9\x1e\x6e\x0e\x39\x8a\x9f\xd9\x83\xa4\x3d\x92\xab\x0c\x4d\xf3\x47\x43\x3a\xe3\xe5\x74\x34\xa4\x22\x11\x29\x1f\x0d\x57\xf4\x3f\x3a\xf4\x3d\x5e\xa3\x98\x79\x95\xfe\xb2\xe6\x62\x99\xe5\xd3\xa5\x6b\xb2\x50\x72\xb1\x5c\xbc\x2f\x79\xca\xcb\xd2\xf2\x82\x2d\x6b\x5c\x53\xa1\x82\x76\x97\xfe\x67\xaf\xe3\x40\xf6\xd5\x9d\x25\xb7\x5d\x62\x5d\xaf\x1a\xc4\x08\x92\x75\xa2\x19\x30\x52\x07\x51\xc1\xba\xd7\x42\x2c\x46\x5f\x7c\x71\x77\x77\xd7\xbf\x7b\xd2\xcf\x8b\xab\x2f\xf6\x06\x83\xc1\x17\xe5\xed\x15\x7a\x97\x64\xf1\x0d\x5a\xec\xbf\x3f\x3d\x7e\x7c\xec\xaa\xf7\x9c\x66\x6c\x7b\xfb\xe7\xb1\xe8\x8b\xf8\xea\x4d\x7c\xc3\x27\x64\x24\x5b\x73\x3f\x0f\x09\x2d\x7a\xbd\xed\x0c\x24\x33\xff\x19\xf3\x49\xa3\x5d\x28\x02\xbc\x15\x6f\x75\x77\xf8\x4e\x77\x2b\xc9\xca\x64\xc6\xb7\xe2\x6c\xeb\xec\xe7\xef\xb7\xa6\x98\x76\xaa\x1b\xb2\x73\x75\x93\xf0\xe6\x2c\x6a\x1b\x90\xe4\xa0\xd6\x37\x12\x71\x15\xd5\xc8\x52\xae\x15\x9a\x90\x07\xbc\x24\x10\x83\xa2\xc2\xd0\xd5\xc9\xa8\xba\xdd\x4a\x24\x72\x9f\x7c\xee\x76\x1d\x35\xb7\xd7\x0d\x6a\x83\x81\xed\xe5\x34\xa3\x19\x6e\xaf\x44\x52\x91\x07\x90\x8c\xf4\x36\xc9\x97\xa5\x22\xc0\x46\x0e\x2b\xec\x44\x21\x10\x44\x37\x7a\x38\xfb\x3d\x9e\xf2\x0c\xc0\x8d\xba\x97\xd0\x05\x64\x38\x2c\xac\xfd\x04\xd6\xd6\x71\x41\x85\x5c\x1a\xc8\x8f\x9b\xcf\xb7\x64\x35\x35\x63\x44\xb4\x34\x09\x2e\x03\xaa\xd1\x0a\x90\x36\xb6\x89\x8a\xb0\xe0\x6f\xf8\x4e\x30\x01\xb1\x9c\x80\x78\xc3\xce\xe2\xb0\x33\xea\xcb\xfa\x62\x9c\xbe\x92\xe5\x07\x9e\x49\xc8\xc8\x93\x38\x38\x32\x00\x39\xeb\x25\x58\x96\x87\x82\x94\x16\x2e\xdf\xdb\x61\x8e\xe0\xc5\x36\xb2\x96\xaf\xf3\xdb\xb0\x5c\x56\x68\x27\xf3\x37\xd8\x15\x89\x9f\x7b\x7f\x0b\xce\xfa\x76\x9d\xda\x8c\x57\x0e\x8f\xa0\x70\x82\xd1\xbf\xa3\x58\xb7\x4f\xba\xcf\xa6\x49\x31\x4d\xf9\xf3\x67\x5f\xa8\x1f\x5d\xb2\x9a\xc6\x62\x7a\x1d\x65\xe4\xc1\xf8\x86\x28\x38\x86\xdb\x8c\x29\x0d\xb7\x9c\x02\x9d\x27\xff\xf1\xb1\xed\xc4\x42\x1d\xbb\x1a\x1e\x36\x5a\xad\x22\x4e\x1d\x9f\x4f\x65\xb4\xcf\x6b\xf1\x62\xc5\x5b\xd9\xa5\x5b\xb2\x3f\x4f\xb7\x64\x92\x6e\xc9\x1c\xba\xa5\x19\x15\x08\x9a\xd1\xd8\xf8\x03\x4a\x6c\x10\x3f\x3e\xfa\x88\x76\x9b\xb1\xe4\x80\xb7\xb4\xe6\xd0\x94\xd8\x9c\xe7\x41\xad\x5c\x1b\xe4\x74\x80\xb3\xe0\xab\xb7\xa7\x47\xc7\xdf\xbf\x79\xfb\xdd\x8f\x47\x2f\xce\x01\x3f\x6b\xb4\xdd\x17\xf9\xfb\xc5\x82\x17\x2f\xe2\x92\x47\x44\x5b\x48\x75\x9f\x95\xb7\x57\xcf\x9f\x79\xf7\xe6\xf3\xee\x4e\xb6\xd3\x7d\xf6\x85\xff\xf2\x99\x5c\xa5\xe7\xdd\x7d\xcc\x13\x93\xf2\xb8\xd0\x28\x01\x44\x3f\xb5\x3b\x28\x9e\x0b\x5e\xa8\x83\x1a\xa3\x93\xb8\xb3\xc2\xf6\xe7\xca\xe0\x86\x52\x41\xa4\x40\xf8\x73\x5d\x96\x61\x97\xab\x1a\x93\x0d\x89\xab\x6d\x9c\x52\x17\x21\xd0\x84\x65\x60\x4f\x96\x37\x18\x94\x89\xd0\x9a\x0c\x90\x51\x4e\x73\x16\xaf\x3c\x64\x82\xcb\xb4\x8a\x72\x48\x3a\xb6\x8a\x30\x53\x5e\x46\x56\x34\x5b\x45\x99\x63\xc7\xf1\x3d\xa8\x31\xcc\x0e\xed\xf5\xea\x84\xa4\xb5\x9b\x1e\xac\xc9\x14\x0f\xa3\xf4\x1b\x01\x22\x52\x8e\xa4\xa4\x69\xe6\xdc\xe3\x5e\xf2\x69\x9e\xcd\xba\x84\xee\x01\x65\x50\x39\xca\xea\x24\x6e\x0f\xd5\x61\xdb\x1e\xac\x22\x4e\x0e\x1a\x58\x05\x8d\x86\xdc\x6c\x25\xce\xae\x36\x31\xbf\xd4\x8d\xa0\xb1\x64\x88\x06\xbb\x5d\x2b\xa9\xdd\x88\xa1\x68\x3b\x98\x20\xab\xd1\x77\x74\x46\x6a\x0c\x45\x5a\x0f\x22\x48\x6c\x50\xd4\xb3\x3d\xa4\x39\x2b\x0e\x8a\xca\xad\x2c\x9c\x7b\x35\xef\xf5\x72\xf7\x4a\x95\xab\x02\x6e\x48\xdb\x83\x80\x00\x89\xdc\xcb\x51\x0d\xdd\x44\x3f\x88\xd9\xa7\x41\xa8\x86\x95\xf4\x7a\xbe\xa9\x61\x4d\x1f\x84\xc6\xc0\x23\x15\x64\x54\xac\xc6\xdd\xcb\x2e\xed\x5e\x26\x57\xf2\xaf\x64\x93\xfe\xb3\xcc\x05\x97\x0f\xf9\xec\x5e\xfe\x53\x74\x69\x57\x6e\x1d\x0e\x3f\xf2\x99\xfc\x36\x93\x3b\x47\xee\x46\xda\x9d\xa5\xf2\x8f\x00\x5f\x5e\xe5\xd0\x2b\x3f\x5e\x0f\xe5\x9f\x3d\xf9\xe7\x89\xfc\xf3\xa5\xfc\xf3\x95\xfc\xf3\xb5\xfc\xc3\x63\x28\x24\x9b\x4c\xe4\xff\x37\xb2\xfb\x34\x81\x3f\xc0\xc8\x75\x69\xf7\x26\x96\x27\xbb\x7b\xc3\x45\xdc\xa5\xdd\x2c\x07\x48\x72\xd9\xdd\x42\xfe\x5f\x48\x40\x8a\xe5\xa5\x04\xb2\x94\xff\xdf\xc4\xa9\xfc\x58\x2e\x62\x59\xad\x14\x45\x0e\xcd\x94\xa2\x48\x3e\xc8\xb2\xe5\xf2\x12\xfe\xca\xda\x02\x93\x9c\x77\x85\x04\x7c\x29\xff\x97\x55\x6f\xe3\xa2\x3b\xe9\xcf\xf3\xe2\x28\x9e\x5e\xbb\xe9\xaa\xcc\x39\x95\x14\x2f\x1b\xae\xd4\x1a\xfd\x46\x7f\x62\x5f\x8c\xff\x2d\x76\xff\x5d\x6c\xfd\xfb\xe3\xe1\xe0\xdf\xcb\xe1\xd7\x4f\xe5\xdf\xa7\x83\xa3\x7f\x2f\xe5\x7d\xb7\x0b\xff\x1c\xca\xbf\x7b\x4f\xe1\xef\xb7\xf0\xf7\x95\xfc\xfb\xd5\xab\x7f\x2f\x9f\x0c\x06\x83\x7f\x2f\x5f\x1d\xbd\x7a\x35\xf9\x82\xfe\x93\x75\x97\x19\x7a\x19\xcf\x6c\x88\x13\x4d\x2a\x1c\x48\x62\x6f\xa4\x9f\xf6\xa3\x10\x61\x14\x7f\x92\x7f\x6f\x0d\xf7\x96\xd5\x85\x7b\xcb\x42\x5a\xa3\x21\x00\x4f\x2b\x6d\xaf\xa3\xc0\xb4\x48\x8e\x6b\x5c\x40\x91\x9d\xcb\x0e\xb8\x57\xef\xcd\x99\x24\xa7\x69\x41\x46\x3c\x90\x31\x03\x2d\x5f\xac\xa2\x5f\x48\x87\xf7\x2b\xee\x01\x85\x1e\x63\x27\x63\xdf\x47\xff\xa4\x19\xa1\x19\xfb\x9b\xfc\x41\xdb\x08\x19\x42\xeb\xbd\x0d\xb2\x15\x89\x7e\x7b\x7c\x8c\x7e\x63\x0f\x7a\xab\xfc\xd8\xb4\x38\x9b\x62\x4c\xc3\x99\x0a\x5a\x58\xb2\x02\x25\x20\x6b\xd2\x3a\x35\xac\x5d\xab\xa8\xbe\x76\xfe\x32\x85\x59\xea\xab\xc9\x4a\xc1\x77\xa5\xcc\x51\x77\x90\xbc\xaf\xeb\x05\xf1\x15\xdb\x86\x22\x30\x6c\xd0\x2b\xe7\x7a\x71\xfc\x08\x83\xfb\x95\xfd\xd8\xf9\x15\x16\xed\x57\x1c\xed\xbf\xd8\xaf\xb0\x74\xbf\xb6\x2f\x5d\xc7\x73\x02\xf9\x17\x4a\x9e\x38\xfb\xad\x6e\x41\x3b\x0d\x4e\x25\x98\xe3\x34\x08\xad\xe5\xaf\xad\x39\x79\xd5\x35\x5d\x7f\xbf\xe1\x51\xa9\xe3\x21\xcc\x69\xe0\x07\x09\x1f\x19\x73\xf0\x9c\x8f\xb6\xf1\x6d\xcc\x47\xdb\x43\xf8\x55\xf2\x91\x4e\xf8\xea\x44\x4d\x92\xd4\x4a\x26\x59\x16\xf0\x1d\x2f\x90\x79\x29\x9a\x22\xa3\x9a\x7e\x13\x94\xae\x65\x41\x0c\x58\x8c\xaa\x56\xf1\xf3\x11\x38\x41\x45\xe3\x04\x29\x4a\x47\xef\x7d\xb1\x2e\xb7\x19\x92\x24\xb6\x03\x94\xff\x7d\x0a\xa1\x10\xc6\xb3\x93\x74\x01\xb6\x0a\x92\x11\x2f\xba\x4b\xd0\x5b\x10\x5f\xc6\x09\x71\x57\x01\x0b\x27\x57\x6d\xed\x8c\xeb\x00\x1c\xc4\xd1\x3f\x07\x51\x68\xbd\xfd\x01\x73\x2c\x24\xef\xf1\xdf\xda\x5a\xd8\x7c\x62\x40\x55\xb1\x87\x3b\xf5\x4e\x5c\x09\xae\x63\x6e\x8a\x63\xc8\x88\x8a\x1b\x57\x8e\xe5\x62\x53\x6e\x7b\x40\x68\x69\x9f\x20\x95\x71\x9b\xe8\x35\xb0\x87\x49\xb9\x89\x07\xed\x86\x3c\xce\xbf\xcb\xf3\xd4\xe4\x5b\x50\xc1\xf5\x92\xb6\xe0\x7a\xb6\x8c\x89\x34\xe9\x04\x19\x97\x4d\x4c\x48\xdd\xc2\xd4\x47\x9b\x34\x81\x26\x01\x10\xad\x4d\x05\x18\x69\x86\xfd\xd4\xc4\x72\xd4\xcd\x33\x11\x15\x3a\xfe\x11\x91\xd7\x83\x59\xab\xa4\x12\x5d\x54\x42\x26\x2f\xa3\x8a\xf7\x0c\x24\x41\xd7\x91\xa4\xb6\xb9\x65\x2b\xa6\xce\x87\xad\xb9\x7c\x38\xe8\x76\x47\x2a\xd0\x9d\xeb\xae\x31\xe7\x95\x40\x77\xdc\x8d\xb0\x66\x92\x43\x4b\x76\x12\xeb\xdb\xca\x33\xa7\x72\x37\x07\xae\xd1\x41\x2e\xbd\x9e\xf5\x11\xa9\x0b\xd9\xd6\x17\xb9\xa4\x64\x6d\x73\xd7\x9b\x37\x57\xc1\x64\x60\xc5\x7d\x7e\xbf\x70\xe6\x60\xe1\x36\x87\xe9\x31\x9d\x0a\xb6\xdc\x0d\xf7\xc4\xa7\xe8\xa6\xdf\x51\x22\xb1\x2d\x4e\x32\x79\xd7\xb2\xee\xa2\xc8\x17\xdd\x8e\xc3\xb7\x8a\xbe\xc8\x4f\xf2\x3b\xcd\x60\x77\x4a\x28\x0e\x82\x57\x28\x4b\x33\x56\xa2\xe4\x34\x16\xa2\x90\x8f\x26\xa8\x26\x16\x50\xd8\xa3\x5b\x8a\xfb\x94\x03\x57\xe2\xb7\xf8\xf8\x18\x25\x96\x9d\x97\x8c\x29\x8d\x62\x76\xcb\xc7\x89\xcf\xda\x4f\x48\xaf\x17\x8f\x73\xbf\xf2\x84\x10\xc0\x4c\xd8\x39\xa1\x0f\x26\xe8\xca\x6c\x94\x51\x39\x0b\xa3\x62\xb5\x6a\xf0\xb8\x5c\xe2\x09\xbe\xe5\xec\xe1\xf8\xcd\xbb\xf7\xe7\x23\xc9\x30\xdf\x8c\xb6\x07\x34\x5e\x8a\x7c\x9a\x17\x05\x9f\x0a\xf9\x28\xc9\xf4\xd1\xf6\x60\x45\xcf\x8e\x4e\x8e\x5e\xd8\x72\x2b\xfa\xf6\xdd\xf9\xf1\xdb\x37\xce\x8b\xf3\xa3\x5f\xcf\x0f\x4f\x8f\x0e\x9d\x57\x27\x87\xdf\x1d\x9d\x38\xcf\xaf\x8e\x8f\x4e\x5e\x9e\x1d\xb9\xcd\x9c\x1c\x7d\x7f\xf4\xe6\xa5\xdb\x2e\x08\x3a\x9c\x17\xdf\xbd\x3f\x3f\x77\x3b\x42\xfb\xee\x7b\xce\xc6\xdd\xdf\xe3\xdb\xb8\x9c\x16\xc9\x42\x8c\x24\x59\x7f\xa9\x7f\x4f\xe8\xa5\xfc\x7c\xa8\xd3\xb4\xd3\xee\xc9\xf1\x9b\x9f\xba\xb4\x7b\xfc\xfa\x7b\xf9\xf7\xd5\xe9\xe1\xeb\x23\xf9\xf1\xf0\x4c\xfe\xf3\xea\xed\xe9\xeb\xee\x84\x5e\xc9\x3a\x47\xaf\xbf\x3b\x7a\xd9\x9d\xd0\x0b\xf9\x70\x5d\xf0\xb9\xe4\x25\x8a\xa9\xe4\x90\xe2\xe9\x87\xab\x22\x5f\x02\x3b\x8d\x41\x57\xba\x13\x7a\x27\xcb\xc9\x02\x13\x27\xda\x1e\x77\xe9\xe2\xdd\x21\xe4\x54\xb1\x7e\x50\x8e\x2f\x95\x57\x50\x4b\x79\xf9\xe3\xe3\x11\x8f\x2e\x39\xe5\x72\x89\x8f\x78\x74\x01\xb4\xb3\xa9\xf5\x96\x57\x9c\xc4\x54\x70\xae\x23\x1e\x5d\xc9\x6a\x50\xeb\x0e\xad\x09\x4d\xb5\x8f\x7e\x35\xd5\xf7\xe3\xa3\x6a\xce\x71\x47\xe2\xa1\xed\x03\xc4\x91\x32\x62\xe8\xcc\x93\x4e\xce\x20\x18\x83\xa1\x36\xf1\xcc\x47\xa4\x93\x80\x5c\xbb\x56\x54\x35\x72\x42\x0a\x4f\x65\x75\xd9\xce\x19\x8f\x12\xc9\x15\x3f\x78\x5c\xf1\x34\x4f\x5f\xe5\xc5\xfb\xd3\x93\x28\x87\x52\x47\x3c\xba\xe7\x34\xd6\x1d\x76\x97\x59\x19\xcf\xf9\xa8\xbb\x93\x6b\xbc\xfe\x16\xdb\x39\x70\x3e\x8d\x72\x3b\xb8\x73\xe3\x64\xaa\xc5\x43\xfa\xf8\x25\xec\x41\x59\x51\x8c\x38\x95\x94\xf7\x48\x50\x43\x80\x8f\x8a\x15\x48\xe3\xda\x35\x2e\xdc\x13\x04\xea\x49\xf9\x00\xc2\x7f\x9a\xe8\xc8\x24\x0a\x1f\xd1\x98\xe5\x7d\x79\x4e\x69\xc9\x72\x1b\x32\x49\x4b\xad\xf1\x5c\x43\x80\x3b\x68\xa0\xa4\x49\x20\x28\x44\x95\x84\x5a\x56\x37\x7a\xde\x0b\x95\xac\x27\x99\xd7\xa6\x62\x8e\xba\x70\xe6\xbb\xb8\xd5\xba\xfa\xdc\xc2\x33\xe9\xf5\xba\x70\x69\x01\x99\xb4\xaa\x34\xfd\xb2\xbd\xe9\x2e\x62\x85\x2e\x06\x18\xec\x96\x3c\xe5\x53\x01\x4c\x6e\x5d\x63\x6f\x54\x63\xce\xab\x53\xc5\x83\xa8\x01\xdb\x75\xfb\xc0\x03\xc3\x63\x35\x6e\xa0\x70\x8f\x79\x54\x20\x85\xfb\x4e\xfe\x02\xd5\xc0\xeb\x9a\x9c\x75\xb1\xf5\xa1\x5f\x75\x6a\x3c\xeb\x5f\x23\x5a\x7c\xd7\x42\xc8\xfe\xd7\x58\xec\x6a\x2c\x56\x24\x51\x4f\x24\x77\xe5\x44\xa9\xf7\xb5\x4f\x66\x44\x34\x61\x19\xec\x3e\x79\x8d\xd8\x6d\xd8\xe1\xa1\xf5\x53\x42\x0b\x08\x9b\x69\xc2\x4a\xd7\x58\x90\x9d\x28\x13\xbb\xa0\x0b\x09\xb9\x36\x26\x4b\x18\xb2\xa7\x1d\xad\x9a\x3a\xa8\x70\x8d\x51\x42\x46\x3e\xfb\x19\x25\x9a\xea\x7d\x0d\xbc\x44\x43\xcc\x83\x77\xb8\x0c\xbf\x73\x7a\xda\x4c\x18\x6f\x9c\x34\xc1\x9e\x2c\x79\xcc\x21\x7b\xc2\x5f\xb3\x3e\xb8\x20\x42\x9b\xaf\xdc\xaa\xa8\xd0\xdc\xb7\x66\xc3\x8f\x3e\x10\xda\xcc\xbb\x71\x01\xfc\x89\xd7\x93\xde\xb1\xfd\x28\x84\x2f\xc6\x35\xad\xbb\x89\xc7\x19\xa7\x8a\xe8\xeb\x61\x4e\xdd\x70\x8d\x48\x3b\xbf\xef\x59\x13\xd8\x9d\x20\x39\x38\xeb\x78\xe1\xa0\xbd\x4e\x71\x20\xc2\xd6\xde\x9c\x45\x05\xad\x81\x93\x8c\x2a\x45\xeb\x26\xcb\x6c\x18\xfa\xe2\xff\xf8\xb9\xac\x5a\x04\xda\x39\xc9\xd9\xa1\xc4\xd3\x89\x3d\x22\x78\x1e\x0b\xb9\xd3\x2d\xaf\x51\xfa\x4c\x20\xcd\x51\x6b\x50\xd9\x0b\xce\x1d\x55\x39\xe9\x87\x10\xa3\xd7\x1a\x76\x62\x47\xc2\xef\x08\x1b\x74\xfa\x4a\xb4\x70\xec\x94\x13\x7a\xfc\xff\xe6\xf2\x2f\x99\xcb\x77\x9c\xd0\x97\xff\xc7\xe7\x52\x89\xe5\x7c\xc4\xa3\x2e\x72\x3a\x95\x37\xc8\xe7\xe0\x1b\x79\x03\xa8\xe0\xae\x19\x9b\xa2\xc7\xc1\x36\x4a\x66\x75\xbc\xe3\xcc\xee\xa8\x37\xff\x77\xcc\x82\xc1\xca\xdb\x43\x74\x91\xae\x4c\x8b\xa1\x4a\xb4\xe7\xcf\x27\xa3\xe1\xbe\x6e\x82\x49\xa6\x5c\x4d\x80\xa5\xff\x4f\x5c\xae\x7d\x88\x64\x96\x61\xbd\xad\x48\xcf\x30\xdc\x28\xf1\x57\x12\xbd\x6e\x77\x54\x1b\xff\x1c\xca\x58\x06\x5f\x02\xf8\xaa\x45\xc8\x82\x87\x0b\x8d\x9b\xd2\xdc\xe6\xb0\x94\x5b\x98\x17\x18\x43\x47\x5b\x23\xdf\xc6\x29\xbe\x28\x8c\xd5\x9b\x48\xe2\x14\xc2\x8d\xaf\x78\xbf\xc8\x73\x11\x9e\x25\x3f\x50\xc1\x20\x4c\x0c\xa9\x72\x42\xee\x0c\x89\xca\x7b\xcb\x0a\xc8\xbc\x0f\x11\x09\x12\x1e\xe4\xbc\x84\x2b\xca\xfe\x41\x57\xdf\x48\xc5\xec\x5b\x81\x03\x71\x09\x39\xc2\x5c\x89\x5e\x20\x43\x72\x40\x28\x1c\x10\x84\x04\x21\x63\x83\xfd\xec\x19\x13\xfb\x19\x24\xff\xcf\xaa\x20\x14\x21\x08\xab\x4e\x5b\x80\xe0\x2c\xa9\x77\x76\x91\x10\x7b\x96\x4e\x30\xf5\xe3\xc1\x44\x4d\xb5\xca\xa7\x70\xc6\xd3\x79\x93\xb1\xdf\x15\x17\xd1\x40\x27\x5e\x38\x03\x3f\xf5\x46\xe3\x12\x1d\xec\x1e\xca\x86\x5e\xb0\xde\x1e\xf6\x03\x08\x08\xc6\x58\xa2\x76\x94\x4e\x09\x7d\x64\x36\x41\x03\x60\x66\x97\xa8\x0a\xef\xec\x26\x69\x36\x71\x54\x25\x64\x95\xcb\x24\x9b\xd5\x59\xf6\xdb\x0c\x01\x58\xc6\x9f\x1c\xee\x94\x1a\xa8\xb4\xce\x50\x2a\x9c\x99\xc6\xf6\xea\xbc\x83\x6b\x0b\xd6\xcc\x80\x49\x45\x66\x3e\x71\x5d\xba\x6e\xf8\x8e\xd9\xba\xfe\x66\xca\xbf\x70\xce\x5d\xa5\x82\x7b\x28\xf5\xfc\xd6\x56\xf0\x27\xd8\xa9\x66\x42\x99\xd7\x94\xb5\xd9\x58\x70\x3f\xaa\x7c\xae\xa4\x82\x10\x02\x74\x10\x22\x83\xda\x74\x20\xc9\x3c\xe2\x2a\x0c\x35\x36\xae\x44\xe0\xd6\x5c\xf0\x34\xce\xae\xb8\xb2\x19\xfc\xee\xfd\xf7\xa3\xad\x29\x1a\x0e\x5e\x71\xb1\xf5\x37\x34\x1a\x9c\x17\xf9\xcd\x16\xe4\xf7\xde\xdf\xc2\xfa\xac\xbb\x53\x6d\xb3\xe6\x68\x99\xbc\xed\xc1\x0a\xff\xaf\x82\xe5\xc1\xc3\x6c\xd8\x27\x1b\xd5\xec\x15\x72\x34\x7f\xf0\x20\xfe\xc4\xf9\xe9\xe1\x9b\xb3\xc3\x17\xc0\x33\x13\xfa\xbe\x09\x9f\xeb\x1d\xab\xc2\x7b\xcc\x8e\xb3\x52\xc4\x69\xaa\xc2\xe1\x95\x6c\x3c\xa1\xf5\x05\x8c\x2f\x68\xa5\x04\xc8\xcf\xb9\x2e\xd0\xdc\x92\x5f\xce\x16\x40\x29\xbc\x0d\x8f\x56\xf9\x52\x69\x12\x6f\xd9\xba\x1a\xea\x8b\x53\xa3\xcd\xf4\x76\x96\xcc\x5e\x84\x0a\x33\xeb\x27\x14\x82\x65\x5c\xf1\xeb\x60\xd3\x11\x94\x94\xa5\xf2\xfb\x90\x0e\x30\xcd\x56\x60\xf7\x9b\x0d\x06\xe0\x36\xab\x27\x32\x58\x91\x5a\x84\xd4\xb4\x7a\x7e\x67\x4d\xbb\xa0\xae\x57\x7f\xf5\x5a\x3b\x0d\x16\xba\xa1\xcf\xfa\x6d\xe3\x76\x8d\xb1\xa4\xbd\x8d\xec\xe7\x48\xaf\x2c\x91\x09\x91\xef\x2f\x0e\xad\x89\x50\xa5\x85\x76\xe3\x62\xd2\x11\xe3\x62\x62\x37\x03\x18\x5d\xa9\x8e\x14\x3b\x51\x59\x34\xed\xb1\x15\x2c\x17\x8d\xd9\x60\x3f\x7e\x96\xe8\x8e\x62\xdd\x51\xc9\x92\x71\x3c\xe9\xe4\xe3\x78\x62\xb7\x47\x54\xda\x8e\x54\xca\xb0\xa6\x15\xa1\x69\xc3\x77\x3d\xc9\x74\xca\x06\xfb\xd3\x67\x4b\xdd\xf3\x54\xf7\x3c\x67\xe9\x78\x3a\xe9\x2c\xc7\xd3\x49\x3f\xc1\x4a\xd1\xdc\xf6\x3b\x63\x9b\xac\x0a\xbd\x6e\x2d\x56\xd2\x05\x1b\xec\x2f\x9e\xcd\x74\xef\x0b\xdd\xfb\x0d\xbb\x1e\x2f\x26\x9d\xd9\x78\x31\x51\x73\x15\xdd\x90\x55\xa8\x9b\xfa\xce\x55\xab\x30\x9b\x3d\xfc\x80\x8f\x8c\xbb\x01\xc6\xe7\xfb\xa1\x55\x19\x88\x66\x23\x3c\xe5\x57\xf2\xf0\x21\xa1\x34\xfe\x9d\x4f\x1c\xaf\x0f\xfe\x51\x14\xca\xc6\x58\x17\xc4\x77\x4a\x6d\x58\x1e\x67\x82\x17\xf1\x54\x24\xb7\x9c\x75\x2f\xf3\x3c\xe5\xb1\xa3\xda\xf2\x2b\x7a\xa5\x91\xf5\x68\xf8\x68\xb2\xe8\x39\x72\x68\xf6\x9d\xba\x4a\x4d\x15\xff\x3b\xfd\x59\x9f\x19\xd7\x27\xb0\x5a\xcb\xfd\x4a\xff\xa3\xeb\x5c\x21\x9f\x52\x2d\xae\x3e\xd0\x5f\xdc\x92\xb1\xb8\xae\x2f\x19\x8b\x6b\x5b\xb2\x6c\x2a\xa9\x3e\xd0\xbf\xe9\x92\x4a\xe3\x5a\x29\xa8\x14\xa0\xdf\xdb\x72\x26\x35\x4c\x4d\x59\xfd\x8d\xfe\xc6\x09\xd5\x5e\x58\x36\xe4\xd0\x01\x56\x08\x5f\xb3\x6a\xc9\xc6\x90\x45\xe1\x2b\x32\xe2\xc6\x6e\x46\x4b\xe3\x2a\xed\x03\x15\xc4\x23\x5b\xb2\x29\x24\x92\x2c\xf8\xa3\x5b\x0e\x99\xad\xa2\xee\x36\x2a\xe4\x74\x9f\xf3\x9b\x45\x1a\x0b\x2e\x27\x13\x92\x35\xbc\x40\xaf\x87\x66\x83\x0e\x9d\x95\xcd\x5d\xb4\xa6\x56\x0e\x36\x2e\x19\x71\x32\xea\x76\x57\x92\xbe\xd8\x08\x28\x37\xe6\x5c\x05\xa2\x96\x26\x94\x24\x71\x93\xa2\xc6\xd7\xb6\xe8\x8b\xbc\x56\x13\x59\x33\x47\x90\x9b\x82\xeb\x78\x30\xc1\x2e\x84\xb6\x6a\x22\x5c\x35\xd1\xc8\xe1\x3e\x50\xd5\x5f\xbe\x7d\xdd\x54\x23\xdc\x10\xb2\x06\x98\x1f\x7b\x52\xd1\xfa\x59\xcb\xdd\x94\x0c\xdf\xc9\x4a\xe1\x64\x55\x4b\xe8\x38\x4e\x7f\xa8\xf4\x78\xef\xf9\x0a\x32\x03\xb6\x50\x39\xc2\x36\xe1\xdc\x80\xc8\xcc\x14\xed\x94\x4c\x50\x55\xdd\x69\xba\xea\x27\x50\x2b\x1e\xa6\x54\xa3\x74\x1b\x6f\x68\xaa\xd2\xd5\x7a\x12\x65\xd3\x9e\xfc\x96\x4c\x47\x55\x82\xc4\x21\x46\x9c\x76\x3a\x76\x15\x20\x74\xa4\xc9\x8a\x41\x37\x59\xec\x17\x50\xb8\x75\xb5\x5f\xe8\x2c\x1b\x6d\x7e\xdf\x0e\x40\xad\x8e\xdb\x7f\xf0\x89\xf5\xb2\x36\x57\xea\xcf\x6d\x16\x16\xef\x4f\x4f\x1e\x1f\xeb\x2c\x4f\xdf\x9f\x9e\x1c\x04\x3c\x5d\x5d\xb1\xbb\x24\x9b\xe5\x77\x5a\xae\xf0\xc5\xff\x17\x8d\xe3\xdd\x3f\x26\xf2\xcf\x60\xf7\xdb\xfe\xce\xee\xe4\xef\x23\x72\x10\xfd\xfb\x8b\x7f\x7f\x41\x0e\xa2\xf1\xbf\xcf\xfe\x5d\x4e\xfe\x4e\xbe\x48\xfa\xfc\x23\x9f\xba\xd2\x87\x5e\x4f\x8c\x87\x93\x03\xf9\xc7\x37\x69\x90\xd8\x0b\x51\x2d\x76\xd5\xe8\x2d\x17\x77\x9d\x08\x70\xd7\x05\xa4\x74\x2b\xcc\x45\xbc\x02\x44\x68\x07\xb0\x5d\xb5\xb0\x95\xc7\xec\xf4\x24\xe2\xd4\xf4\x70\x19\x97\xa0\xb3\x35\xad\x8c\x6c\x21\xd0\xfa\x96\x4a\xed\xcb\x3f\xc6\x37\x8b\x14\x76\x47\xd7\x96\xb6\x8a\xca\xff\x38\xe2\x37\x05\xe3\xb9\x8e\x20\x68\x4b\xfd\xe2\x2b\xe3\xf9\xd8\x8d\xde\xfa\xb7\x50\xd7\x29\x3f\xb3\xc2\x71\x2a\x70\x8d\x7a\xbe\x43\x72\xc7\xb3\xfa\xf9\xcd\x2d\xc0\x7b\x3d\x3e\x46\x81\x89\xc9\x02\x35\x39\xa8\xbe\x52\x8a\xf9\x55\x35\x04\xf7\x0f\x9c\xfe\xce\xd9\x1f\xc8\xc4\xfe\xd4\x48\xcd\xf9\xf9\xcb\xda\x78\xb8\x34\xcf\x3f\x2c\x17\xf5\x89\x34\x6c\x30\x28\x65\x53\xe7\x97\xf5\x4c\xf7\x6a\x4b\x40\x23\x9d\x64\x1e\x39\xb1\xa3\x2a\xde\x8b\xef\x33\xfe\x71\x01\x32\x5c\x9b\xa8\x42\xb9\x30\x46\xc0\xf7\x77\x77\xc4\x4e\x97\x6c\x45\x41\xe3\x5b\x38\x06\x3e\xdb\x32\x1b\x8c\x38\xbb\x71\x55\xe9\x28\xac\x0f\xb9\x34\xe4\x0e\x92\xb3\xcb\x67\x5b\x79\xb6\xa5\xd2\x02\x9d\xaa\xe4\x17\x7d\xf4\x04\xc5\x8a\x4a\xce\xb4\xc1\x0c\xa9\x92\x8d\xf3\xa3\xbe\x7f\xea\xec\x28\xf9\x4f\xcb\xdc\xa8\x86\x3f\x73\x66\x74\xed\x8d\xe7\x45\xe5\x08\x09\xa5\x50\xce\x78\x55\x09\x4f\x02\xea\x7d\x51\x11\x6b\xad\x08\xb9\x75\x06\x30\x59\x86\x9e\x00\xd5\x44\xfb\x68\x45\x75\xb4\xba\xde\xc6\xe3\xc4\x54\x27\xf1\x65\xda\x36\x54\x5b\xa8\x66\xb4\xf6\xe3\x46\x03\x96\x05\xb7\x44\xbe\xa5\x72\xac\x6c\x75\x77\xb2\xf8\x06\xc6\x6c\x1b\xfa\xe4\x61\x3b\x55\x37\x1e\xf9\x15\x17\xc7\xd9\x6d\x3e\x05\xfa\xab\x65\xf0\x5e\xb9\x9a\xf1\x7b\xdf\x3f\x69\x0a\xae\x38\x26\xbc\xc1\xaa\x5b\xf3\xbc\xd8\xea\xee\xfc\x78\xf6\xf6\x4d\x1f\xed\x0c\x93\xf9\x7d\xc4\x89\x9c\x1a\xaf\x8f\x4f\x9e\x1d\xbf\xf6\x86\x13\x64\xdc\xe3\xff\x09\x26\xb7\x51\xab\xcc\x90\xdf\xc6\xe9\x12\xe8\xd9\x69\x3e\x53\xe2\xc7\x79\x92\xa6\x6f\x96\x69\x5a\x92\x68\x38\xf8\x86\x68\x79\x70\x1b\xc2\x8e\x67\xb3\x06\xce\xc1\x28\x81\xba\xe5\x7d\x39\x8d\xd3\xb4\x4b\x68\x4d\xcf\x63\x3e\x61\x0f\xaa\xc4\xa8\x7b\x13\x4f\xaf\x93\x8c\x83\x8b\x28\xd5\x05\x47\x62\x05\x82\x38\x08\xb3\x5a\x75\xc1\xd6\xf7\xd9\x43\xb9\x18\x61\xd7\x74\x31\x1d\xf1\xfe\x9c\x8b\xe9\x35\x64\xac\x8e\xe2\xfe\xdf\x16\x53\x82\xc6\x5b\xba\x48\x5c\xc4\x37\xa5\x7e\x02\xb3\x48\x81\x56\x57\x49\xf9\x1a\xa1\x18\x89\xbe\xf9\x4d\xcb\xe4\x0f\xf9\x42\xfe\xa3\xc2\x82\x63\x55\x0b\x5a\xe0\xdf\x80\x81\x0c\xf4\x18\xaa\x93\x64\xb5\xce\xc1\x84\x14\x93\x4e\xd6\x57\x33\x72\x90\x99\xaf\x30\xd4\x91\xfb\x3c\x5e\x4e\x30\xa3\xcd\x2a\x22\x84\xfe\xf8\x67\xd5\xac\xeb\x6d\xc6\xdd\x1d\x85\xe9\x99\x4d\x14\x92\xef\x97\xc9\x0c\x8d\x96\xc1\xa6\xd9\xf4\xfe\x2b\xf7\xc3\xea\x8f\x27\x6b\xc4\x77\x7d\x11\x5f\x75\xb2\x6d\xc6\x92\xbe\x4e\x45\x71\x71\x7e\xf8\x7d\xaf\x27\x54\x40\x44\xb2\x72\x0c\xa6\x8d\xdb\xe0\x65\x92\x49\x5a\x45\xa7\xb0\x07\x47\x10\x4e\x03\x9d\x84\x6f\x3f\xdf\xec\x76\x63\x4c\x84\xe4\x1d\x57\x82\xc7\x8d\x88\xaf\xd8\xaf\x1c\xe3\x08\x7f\x82\xbb\x81\xc4\x72\x81\xdd\x8c\x95\x7a\x1a\x6d\x24\x15\x6c\xb0\x2f\x9e\x19\xb5\x8a\xd6\x20\xec\x0b\x3d\x37\x36\xdf\xac\x28\xc7\x62\x62\x52\xdd\xa3\x52\x5b\x9e\x33\x20\x05\x85\x88\x0a\xe2\x58\xb2\xab\xa8\xfb\x83\x03\xde\xff\x3d\x4f\xb2\xa8\xdb\x55\xa4\x9c\x72\xe2\x88\x25\x87\xe4\x78\x71\x98\x09\x12\xc2\xe1\x17\xda\x6c\xc2\x1b\xac\xcb\x0b\xe1\xd2\x99\xa0\x56\xb4\x1f\x33\xf7\xe3\xe0\x31\x32\x79\xa4\x30\xf1\xd7\xc1\x70\x34\x20\xce\xdb\xf3\xf8\xea\x60\x4f\xbd\x5a\x14\x7c\x11\x17\xfc\xb0\xb8\x2a\x0f\xbe\x54\xef\x70\x0f\xc0\xab\xa7\xea\x95\x11\xa2\xfd\x90\xe7\x1f\x0e\x86\x5f\xab\xd7\x4a\x4f\x0f\x2f\x9f\xec\xf9\xbd\x80\x4e\xe6\xe0\x6b\xbf\x51\xd4\xb5\x1d\x0c\xf7\x74\xc3\x28\x03\x80\x06\xf6\xbe\xfa\xda\x2b\x7b\xac\x5c\x3e\x0f\xbe\x1a\xea\xa6\xef\x8a\x78\xb1\xe0\xb3\x83\xe1\x60\x4f\xb7\x7b\x97\xa4\xa9\x8a\xa3\x7e\xb0\x37\xf8\x52\xb6\x6b\x27\x26\x11\x3e\x7d\xbf\xbd\x1d\x89\x5e\xe1\x14\xc8\x85\x8b\xf0\xb6\xb7\x23\xde\x13\x64\xf5\x4f\x2e\xd1\x70\x34\xfc\x9a\x46\x75\x86\x82\xa2\x9f\x2f\x86\x90\xad\xa2\x84\x90\xe1\x09\xe3\x95\xbc\x6a\x86\x00\x2a\x48\x04\xd1\x42\x7f\x2c\x23\x42\xc1\x16\x2f\xcd\xe3\x99\xc1\xa2\xb7\x03\x9a\x40\xac\x21\xd5\xe7\xde\xde\xba\x3e\x4d\xea\xd6\x57\x79\x81\x8c\x45\x04\xc6\x3a\xa5\x09\x51\xfa\x63\x29\x0f\xb5\x6d\x73\xf8\xed\x46\xe3\xc0\x08\xa5\xb2\x25\xcc\x35\xe9\xa8\x7f\x31\xa7\xa4\x03\xe5\x70\xe3\x16\x61\xdc\x49\xe5\x4d\x5e\x79\x13\xb3\xfc\x60\x0c\x3e\x03\x13\x34\x5b\xf6\x01\xc1\x80\xb0\x05\x8d\xc9\x8a\xd0\xee\xef\x89\xe8\x5a\x68\x06\x1b\x43\x73\x76\x13\xa7\xe9\x31\xc4\xe3\xfd\x8b\x61\xb2\xb3\x3d\xf8\x6a\x0d\x38\xe3\xeb\x89\xa4\x98\x70\x0f\xa8\x30\x22\xba\x59\x4f\xdf\x1f\x91\x71\x36\xe9\x04\xc9\x17\xb9\x36\x6c\xc0\xd2\x51\x46\x08\x0d\x56\xdf\xdb\x51\x4f\xbe\x69\x01\xa7\x83\xb9\x4d\x4e\xf3\x5c\x60\x86\xd1\xc2\x5b\xe6\x27\x9f\x33\x12\x77\x06\xc3\x7d\x99\x68\x90\xdd\x5e\xbe\xdc\xfc\x98\x39\xd3\xa4\x26\x9f\x68\xbb\xd8\xe4\x00\xa3\xf9\x4a\x7a\x4b\x32\xd8\xb5\x93\xb1\xe7\xad\x8d\x63\x4f\x02\x3d\x40\x16\x0d\x05\x78\x32\x8f\x8a\x5e\x6f\xbb\x80\x0b\x40\x5d\xa7\xc5\x78\x30\xa1\x09\x2b\xc6\xc3\x09\xcd\x59\x31\xde\x9b\x74\x84\xee\x26\x27\x54\xd8\x2e\x69\xc5\xaf\x26\x3b\xc0\xcf\x66\x07\x66\x64\x24\x9c\xe3\x0a\xd1\x63\x84\x33\x02\xda\xf8\xe0\x8e\xe7\xeb\x0d\xc6\x13\x91\x8e\x19\xca\x81\xe9\x33\xe6\x0e\x00\x25\xf7\x5a\xfd\xc6\x6f\xd5\x43\x10\x34\x5c\x62\xaf\x4f\x73\x74\x0a\x4c\x9a\x01\x54\x21\x17\xbc\xd0\x57\x70\xb8\x23\x8a\x83\x98\x8f\x82\xee\x9f\x86\x1b\xc2\x1a\x1c\xe9\x4d\xe1\xd8\x3e\x61\xa6\xa0\xe4\xf9\x60\x3f\xd9\xdd\x25\x0f\xd9\x38\xd9\x1d\x4e\x7c\xa4\xb6\x0a\xd1\x23\xbf\xdb\x32\xfb\x10\x5d\xec\x44\x35\x61\xc5\xe9\xf1\xd1\xcb\x2d\x93\x24\x6f\x0b\xdc\xf8\x8e\xd1\x82\xc0\x5e\xec\xa5\x73\xf7\x6e\x47\xdb\xfc\xf1\x71\x9b\x8f\x63\x31\x41\x92\x69\x29\xd6\x2a\xe4\x3c\x57\xbc\xb8\xb8\x2a\xb5\x66\xee\x5f\x7c\xc2\xb6\x07\x75\x5e\x74\x98\xab\x93\xf9\x4b\x54\xf0\x38\x4d\xf3\x29\xb2\x6d\xf9\x7c\x5e\x72\x61\x2d\xb5\x90\x5b\xd3\xe9\x94\x0a\x26\xc0\xc4\x5c\xf6\x06\xf6\xe5\x00\x03\x98\xbe\x43\xe2\x79\x27\xc1\xb0\xa4\x0f\x78\x36\x83\x3b\x4c\xbf\x94\x5b\x40\x52\xfe\xb3\xfe\x0d\x2f\xae\x78\x84\x96\x9c\x33\x42\xe8\x76\x29\x22\x1b\x6b\x26\xe9\x08\x96\xac\x5a\x85\xb0\x08\x67\x45\xfe\x7a\x1b\x64\xc9\xd7\x8a\x6b\x00\xb8\xc0\x38\x4e\x16\x46\xdc\x58\xa3\x81\x66\xa2\x60\x49\x0e\x8a\x1d\xae\xa6\x61\x54\xd4\x08\x70\x53\x11\x8a\xfe\x2a\xd2\x2d\x50\xa8\xb4\xe6\xa7\x5b\x0a\xfa\x2f\xce\x62\x01\x5b\x68\xda\xb8\xd6\x6a\xa5\xd3\xa4\x34\x71\xd0\x14\xf9\x6b\xc2\x2e\xc2\xa7\x8d\x3c\x26\x2d\xb9\x3b\x9e\xe8\x79\x91\xd5\x15\x1b\x20\x6a\xd8\x80\x29\x8f\x40\x87\xaf\x9d\x24\x3b\x59\xaf\xc7\x03\xea\x7f\xcb\x4b\xff\x0f\x16\x6b\x9a\xc6\xdd\x32\x01\x1d\xe7\x2d\xdb\xd9\xb1\x83\xf4\xb6\xb4\xa6\x88\xb4\x11\xe4\x0d\x17\xb1\xb6\x7f\x84\xed\x9e\xd9\x19\x71\x7c\x48\xd3\xb8\xc4\x7b\x25\x08\x51\xe8\xcc\x3e\x10\xde\x2d\xac\x74\xbd\xb3\x69\xcd\xb6\x32\x7d\x81\x89\xbd\x66\x05\xe4\x0d\x00\xe2\x0b\x57\x67\xe5\x83\xa0\x83\xdf\x2b\xaf\xad\x12\x2e\x8b\x8c\x15\x26\x16\x58\xc5\x5b\xb2\xe8\xf5\x0a\xf2\x90\xb1\x14\xe3\xd4\xda\x4c\xc2\x85\x9d\x1d\xb3\x24\x3a\xf0\xd9\xb2\x28\xee\xa3\x8c\x84\x13\x53\xd4\xcf\x0a\xcd\x2a\xe6\x63\x9e\xbb\xb9\xa8\xe4\xb0\xf7\xad\x70\x8b\xab\x52\x87\xa6\x11\xbd\x1e\x1e\x26\x3e\x42\x0f\x77\x95\xc9\x5e\xf1\x3c\xb0\x27\x66\xcd\x2c\xa1\xb5\x3b\xcf\x35\x5b\x98\xd7\xb2\x85\x98\x6d\x8f\xe6\x96\xb8\x65\x05\xcd\xdd\x3d\x40\xd1\x83\x8b\x75\x15\x77\xb1\x0b\xd1\xee\xe4\xdb\xf8\x8a\x01\x37\xa9\xca\x9f\xf2\xdb\xa4\x94\xf3\x00\xec\x2c\xac\xe5\x2b\xc5\xc6\x42\x61\x42\xf3\xcf\xb2\x7f\xae\xca\x1d\xbc\xfd\x64\x00\x37\xbe\xcc\xf1\xd5\xbe\x06\x21\xb1\x4e\xc8\x76\xc9\x34\xa0\x44\x07\x62\x5d\x03\xbd\xaf\x46\x8f\xcc\x3e\x6d\x37\x38\xd7\xbe\x45\x66\x2a\x3b\x5c\x65\x5d\x89\x04\x33\xee\xcc\xe0\xe0\x7b\xc0\x2d\xe3\x49\x74\x6a\x96\x6b\x95\xd6\x09\xfe\xe0\x5a\x04\xbb\x10\x2c\xde\x8b\x55\xf4\x23\x27\xf4\x7a\x1d\x0a\xf4\xfd\xce\xf5\x89\xff\x74\x4f\x71\x14\x3b\xea\x93\xaa\xbd\xb3\xab\x1a\x6e\x18\xd8\xe3\xe3\x1c\xff\x31\x06\x2b\xd6\xda\xfb\xf1\xb1\xea\x01\xbd\x8a\x04\x39\x18\x8e\x22\x39\xb6\x5e\x0f\x6e\xf3\x83\xc1\x08\xe2\xb4\x1f\x3c\x19\xd5\xf4\x02\xee\xd6\xbd\xde\x70\x88\x9e\x89\xda\x7f\x5a\x96\xff\x72\x74\x0d\xf5\xbe\x1a\x0d\x95\x3c\x51\x11\x39\x5f\x3e\x69\xa1\xdc\x34\x15\xa5\x47\x48\x0b\xb9\x56\xc2\x75\x3d\x07\xbf\x09\xc5\x7f\xcb\x92\x95\x80\xf7\x3e\x29\xff\xe5\x97\x9f\xd0\x9d\xf1\x2d\x75\xfb\x15\x9f\xd6\xdf\x37\x1b\xf4\x67\xdd\x1e\x20\xfb\xe3\x5c\xf2\x10\xce\x10\x0b\x64\xc9\x9a\x3a\x85\xd0\xef\x19\xc1\x53\x96\x94\x10\x40\xe3\x3c\xbe\xba\xe2\x33\x79\x58\x1e\x1f\xb5\x70\xe1\x97\x44\x60\xda\x8f\x99\x88\x72\xd0\x0e\x7a\x80\xb6\x71\x04\xe1\xc4\xb4\x4c\x81\x09\xc3\x2f\xbc\xd6\xdb\xe8\xf3\x4f\x68\x5d\xa5\x09\x70\xd9\xba\x6f\x69\x5d\x3c\x25\xbc\xd6\x21\x52\x15\x32\x74\x1e\x34\x83\xa6\x3a\xf9\xa2\x5a\xfa\xab\xb6\x1e\xdc\x14\xc1\x5e\xad\xaf\x5b\xfa\x68\xac\xb4\x57\x2b\xa1\xc8\x0c\x8f\xea\x11\xef\x3e\xd7\x09\x54\xfb\x8c\x4f\xf3\x19\xd7\xc9\xeb\x33\xe2\xad\xf0\x93\x5a\xf1\x80\x6a\xdc\xb2\xac\xf2\x02\x47\x19\x6c\xf9\x26\xcf\x4c\xf0\x15\xa7\x51\x95\x8a\x74\x93\xfe\x3b\x89\xe5\x0b\x91\xb5\xc3\x17\xa7\xf1\x9d\x2f\x9b\x79\x32\x6c\xd9\x20\x96\xbb\x14\x5a\x28\x16\x29\x8e\xce\x1f\xe1\xde\xfa\x46\x0c\xdf\x29\xfa\x0b\xce\x3f\xb8\xfb\xce\x6b\x6a\x0d\xcb\x2f\xff\xdd\x83\x49\x73\xb4\x01\x05\xd9\xcd\xcc\x2a\xcd\x96\x8b\x40\x00\xd1\xc6\xdf\x77\x5c\x3e\xcd\xc3\x20\x4f\xda\xc4\x28\x4a\x8c\x16\xd4\x68\x93\xd7\x75\x14\xc4\x7e\x95\xaf\x2a\xac\x66\xbd\x84\x43\xb3\x9a\x1d\x0e\x82\x1f\x6f\x23\x7b\xeb\xf9\x75\x9b\xac\x4d\x1e\xf0\x4c\xf0\xc2\x87\xe1\x9b\x41\xc8\x6d\xf3\x8f\x60\xbd\xe2\xb4\xda\xb6\x2a\x4d\xe7\xc3\x64\xfd\xbf\x4c\x39\x48\xb1\x9d\xf6\xf6\x1a\x18\x7c\xd5\x82\x96\xb3\x78\x75\xda\x76\xaa\x2b\x6a\x08\x05\x1d\x5c\xa9\x47\x01\x88\x91\x2f\xc8\x08\x24\x79\x5f\xb7\xdd\x52\xb6\x0f\xd8\x87\x56\xb6\x28\x1c\x09\x9e\x86\xc2\x86\xf2\x4d\x88\x87\xb8\x5e\x15\xf1\x0d\xd7\xa6\x46\xf8\x4a\x2f\xa3\x0a\x13\x98\xd1\x92\x25\x8e\xe0\x82\x2e\x99\x11\x5e\x24\xf3\x68\xf9\x7c\x40\x1e\x62\x16\xa3\x17\x48\x64\x79\xec\x94\x0d\xf6\xd3\x67\xcb\xfd\x74\x67\x87\xc4\xae\xf0\xb4\x1c\xa7\x13\x9a\xf7\x63\x11\xa5\x44\x32\x94\x2e\x18\x2e\x04\xb1\x7c\x04\xe2\xd8\xdb\x1f\x5f\xb7\xca\x13\x2b\x42\x4b\x85\xc7\x2a\x57\x62\x4e\x48\xae\x4f\xbc\x64\xff\xae\x72\x91\xc3\x8e\xb6\xb1\x85\x21\xac\x50\xdf\xa8\x2f\x40\x9b\x11\xe5\xa4\x13\x03\xca\xf0\xaa\xd1\xca\xed\xba\x10\x51\x4c\xc8\xca\x05\xbc\x55\x7e\xfe\x59\x80\xcb\x5b\xfd\x33\x00\x77\xaa\x6d\x04\x78\x9b\xc8\x54\x23\x41\x7b\xec\x38\xff\x60\xe5\xca\x18\x50\xcf\x74\xe7\xb6\xfa\xb4\x95\x16\x50\x48\x79\x33\x72\x66\x21\xdc\x2c\x9d\xb5\xc3\x17\xfe\x1d\xf1\x4d\xc3\xf1\xe5\xd9\x2d\x70\xbd\x78\x57\x14\xe6\xc2\x69\x30\x23\x8d\x0a\xbd\x5c\x56\x76\xb6\xf8\x93\x4a\x41\x64\xec\x30\x15\x43\x57\xa9\x06\x21\xa0\x09\x2d\xfa\x53\x39\x16\x26\x36\x51\x12\xd6\x65\x1c\x35\x03\x85\xa0\x6c\x8e\x6d\x1c\x57\x3b\x83\x0a\x3f\x4a\x5b\x8d\x7a\xd9\xe3\x8e\x01\x1e\xb9\x46\x59\x3f\x29\x95\x05\xa4\x5c\xa0\x7e\xc1\x35\xa3\x17\x11\x38\x28\x60\x82\x10\x59\xde\xe8\xe6\x4f\xce\x12\x84\xb5\x41\xd5\x29\xcc\xd7\xef\xcb\x9b\xc5\x6e\x32\xdf\xcd\x72\xb1\xab\x32\xcd\xcd\xf4\xec\xf9\xaa\x5e\x5a\xf8\xbc\x65\xd2\x07\x39\xe6\xe1\xc9\x67\xc6\x39\xac\x49\x0c\x62\xad\x5e\x25\x4f\xa7\xd9\xbb\xe2\x8a\x0b\x4c\x20\xb4\x6e\x5a\x61\xb1\x99\x53\x4d\xe7\x50\x72\x01\xef\x6c\xf3\x7e\x9c\xde\xc5\xf7\xe5\xa9\x99\xec\x5e\xaf\x8e\xc9\xce\x5c\x54\xa5\xf2\xdc\xc1\x62\xdd\x57\x72\x07\xac\xe3\xba\x15\x74\x76\x1d\x6f\xff\xec\x6e\x57\xd3\x62\x16\x72\x96\xcc\x70\x01\xef\x9b\x96\xef\x53\x14\xe4\x75\x72\x0a\x67\x5e\xed\x4c\xd8\xad\x69\x58\xd2\x36\xad\x5e\x1d\x73\x82\xc9\xb7\x02\x25\x90\xc7\x70\xb4\x69\x33\xeb\x5a\x34\x61\xdb\xdb\x1a\x6d\xa3\xd9\xfc\x46\xbd\x7c\x85\x6d\x4d\x7e\xfb\xd9\x6c\x9a\xdb\x85\xc7\xa0\x7d\x35\xa8\x69\x93\x16\xb5\x5a\xc6\xf0\x4d\xd9\xd8\x77\xf3\x1d\x29\x58\x6e\x21\xd4\x57\xe3\xb2\xf1\x6a\x14\x6c\xa9\x51\x60\xdd\x8d\xb8\x24\x64\x65\x8c\xb8\xb6\x19\x8b\x0d\xb3\xd0\x00\x41\x4c\x48\x61\x4b\x59\x08\xd2\x7a\x08\x62\xd2\x29\x58\xda\x06\x41\xaa\xdc\x41\xa6\xbe\x08\xa0\x9a\xff\x54\xd0\x92\x16\xa4\x33\x85\x4c\x44\x65\x99\x4f\x93\x58\xb8\x49\xd8\xa3\xa9\xb7\x2c\x5f\x57\xa8\x6d\xa7\xf1\x20\x33\xa9\xcf\x0f\x37\x10\xa7\xbe\x59\x94\x18\x40\xca\xbc\x65\x9a\x76\x04\x06\xb4\xc4\xe4\xba\x90\x2f\xd3\xd7\xfd\x8b\x01\xba\xc0\xcb\x0f\x0e\x10\x5e\x12\x5d\x9f\x5b\x69\x90\x55\x38\x95\xfd\x24\x9b\x1d\xd0\xc1\x55\xe3\x2f\xdb\x33\x33\x1e\x4c\x24\xaa\x1d\x0f\x27\xc0\x9c\xdc\x36\x7a\x13\x64\x72\x8e\xd1\xe7\x0f\xfd\x3a\x9c\x09\xce\x48\x27\x69\x9c\x7d\xe0\x05\xdd\x41\xac\x21\xae\x5a\x6d\x29\x20\xe6\xd2\x0d\xba\xdd\xd1\x92\x65\x98\x94\x9f\x2e\x2b\x27\x28\xf5\xa6\x85\x4e\x59\xea\xa7\x94\x9b\xb3\xb4\xe2\x7f\x42\x67\xcc\xb7\x5e\x89\x08\xbd\x66\xb9\xe6\xbc\xa7\xb4\xa4\x4b\x3a\xa3\x73\xd2\xa9\x59\x74\x39\x36\x33\x59\x39\xbd\x56\xa4\x11\xcb\xc1\x91\x28\xbe\x8a\xae\x2b\xa4\x1d\x89\x16\x75\x62\xaa\x7b\x11\x2d\xa8\x6c\xc1\x10\x58\xf7\x7f\x81\x88\x1d\x88\x2a\x9a\xeb\xc9\x03\xf9\xba\x4e\x50\xeb\x88\xd7\x11\x16\x4d\x50\x14\x5d\x25\x55\x47\x8f\x8f\x59\xbd\x58\x3a\xff\x73\xf7\x93\x4f\x09\xe8\xc5\x55\xd4\x80\x06\x44\xd3\x03\x20\xe8\xb7\xa4\x81\x82\xab\x46\xd2\x9e\xd1\x9c\x3c\x82\x8d\x92\xb3\xa9\x03\xc7\x95\x82\x0a\x47\xa9\xd2\x3c\xc6\x8c\x54\xee\xca\xaf\xd6\x58\xc0\x68\x39\x89\xfc\xf7\x09\x0d\x85\x46\x05\x20\x7d\xef\x55\x26\xb1\x7e\x72\xe0\xbf\x4c\x88\x36\x3b\x71\x8e\x78\x35\x19\x63\x94\xd3\x98\x96\xde\x21\x5b\x63\x46\x84\xe0\xe5\x0a\xbc\x10\x96\xa2\xe6\x06\x02\x2e\x58\xcb\x6a\x53\x96\x07\x90\xe6\x08\x29\x0d\xb0\x75\x4d\xde\xc7\x28\xa6\x4b\xba\xbd\x9d\xd1\xb4\x9e\xd7\x29\xeb\xce\xc4\xa5\x88\x4a\x3a\xb5\x27\xe2\xb2\xed\x44\x28\x01\xdf\xbe\x1f\xa8\xcc\x9c\x04\xab\x63\x12\x34\x73\x22\xd5\x15\x34\x53\x87\x60\x11\x8b\xe9\xf5\xae\x4e\x0c\xa9\x82\x09\x02\x47\x62\x89\x60\x79\x9e\x72\x9a\xad\xd5\x39\x6d\x92\x45\xee\x13\x8e\x87\x0d\xa8\x54\x84\x8a\xa7\xac\x4d\xf1\x94\x35\x28\x9e\xb4\x3a\xc9\x28\x53\x28\xc7\xa4\x99\x9b\x10\xc7\xce\xb9\xa0\x57\x15\x03\x0a\x6d\x38\x71\x71\x0c\xb4\xec\x8b\xa3\xae\x39\x3d\xdf\xb4\x69\x07\x3c\x33\x1c\xe1\x9a\x6c\xc8\xad\x49\x4b\xe1\xf3\xb5\x6d\x5c\x35\x36\xa5\x38\x6b\xbf\xad\x6b\x11\xd0\x80\xdf\xb4\xc9\xa0\xad\x98\x98\xe6\x2c\x71\xe8\xb4\xc4\x39\x1f\x9b\x08\x86\xe1\x62\x0a\x2f\xb8\x1a\xa3\x40\x09\xe2\x5c\x44\x39\x4d\xe9\x92\x96\x1e\xa0\x4f\xeb\xcd\xdd\xa8\x0b\x6a\xe3\x15\x9a\x11\x18\x80\xc6\xb2\x31\xcb\x44\x94\x63\x14\x94\x45\x7c\x99\xa4\x89\x48\x78\x19\x25\x78\xaf\x12\x39\xc2\x28\x2a\xd8\xc3\x8a\x8c\xaf\xc4\x84\x6d\xe3\x98\x8c\xae\x39\xa1\x85\xb9\x50\x72\xe0\xd6\x6d\x23\x2c\x96\xbb\x41\x36\xa3\x62\xea\xf7\xd1\xbd\x43\x3f\x41\x4c\x69\xfd\x80\xa6\x17\xea\xa9\x62\x35\xe6\xa1\xb6\xa7\xb5\xb2\xd0\x4c\xe1\x5a\x47\xae\x04\xd1\x3e\x43\x45\xda\x06\xab\x94\x10\x20\xb3\x43\x62\x6d\x88\xc4\x1a\xad\xa8\xf4\x4b\xa5\xcf\xaf\xce\xba\x24\x18\x50\xfc\x0f\xc9\xa6\x4a\x11\x95\x04\x9d\x21\xa0\xdb\x65\x56\xf0\x78\x7a\x0d\x3e\x25\x11\xe9\x64\xac\x5c\xe5\xb5\x06\x9c\x4f\xeb\x64\x37\xf2\xe6\x77\x6c\xe3\x32\x25\xf8\x04\x0b\x9c\x83\x82\x61\x2e\xc7\x91\x90\x0b\x1c\x15\x76\xc9\x49\xcb\x62\x1b\x9b\xb9\x07\xbb\xc6\xa3\x84\xba\xab\x3a\x12\x54\x35\x34\x2a\x94\xd9\x3e\x2c\x1a\xae\x2d\xfe\x86\x95\x45\x13\x01\x6f\x14\x75\x5a\x8a\xea\x18\x42\x76\x47\xd9\x14\x35\x4e\x9b\x60\x89\x05\xdc\xe3\xc0\x9e\xd6\x2a\x1e\xec\x31\xa9\x5c\x82\x66\xdf\xf8\x62\xff\x4c\x6e\x9b\xfc\xf9\xf3\x2f\x69\xca\x9e\xf6\x72\x3a\x65\xdf\xf4\xec\xfd\x87\x65\x12\x32\x2a\xfa\x47\xaf\xdf\x9d\xff\x76\x71\x78\x7a\x7a\xf8\x5b\x87\x8f\x17\x13\x4c\x5e\x18\xc5\xb4\xa4\x53\xb8\xf4\x52\x42\x63\x2b\xa6\x5f\x4c\x3c\x68\xdb\x14\x91\x16\x77\x41\xbb\xfc\x66\x21\xee\x23\x1f\x11\x3e\x5d\x8f\x08\xd5\xe4\x4e\xe3\x85\x58\x16\xdc\xc5\x88\x1e\x9b\xf1\x74\x2d\x85\x6e\x0d\x32\x3d\x2d\x10\x50\xe7\x96\xab\x4d\x1c\x54\x21\xf7\x65\x4c\x7a\xbd\x28\x6e\x70\xdc\xe0\x2e\x5e\x11\xca\xc4\x0d\x8d\xfb\x2c\xc5\x9f\x6b\x8a\xdf\x8a\xf1\x34\xfa\x49\x40\x76\xee\xa0\x9f\x4c\xa0\xb5\xa9\xb7\xd7\x73\xc8\xea\x1a\x25\x34\xa6\xb9\x22\x25\x24\xa2\x92\xb4\x8d\xee\x23\x65\xa5\xea\x23\x99\x47\x89\x40\xaf\x08\xa7\x0d\xfa\xa5\xd2\x04\x4e\x59\x8e\x09\x99\x15\x5d\x54\xd2\xb9\x7d\x03\x71\x3a\xe9\x4c\x32\xd9\xd6\xc2\x3e\x4a\x29\x06\x57\x9e\x91\x87\x1c\xb3\x72\x39\xfa\x83\x6b\x36\xd8\xbf\x7e\x36\xd5\xf6\x5b\xd7\xda\x7e\x6b\xc1\xa6\xe3\xeb\x49\xa7\x62\xa7\xb0\x50\x06\xaf\x46\xf6\xbc\x70\xac\x5e\x17\x36\x86\xc9\x0d\x9b\x39\xd6\x72\xf4\x96\x61\x82\xb8\x19\xbd\x67\x37\xaa\x33\x7a\xc9\x06\xfb\x97\xcf\xee\xf7\x2f\x77\x76\x88\x69\xe3\x66\x7c\x39\xb1\xe0\x5d\xe9\xfc\x9f\x1f\xf8\x7d\x19\xdd\x12\x7a\xc1\x06\xfb\x17\xcf\xae\x34\xbc\x17\x6e\xd5\xdb\xf1\xd5\xf8\x62\x32\x21\x9d\x5c\x9d\x81\x8c\x5e\xd1\x39\xbd\xa7\xdb\x43\xb2\xca\x42\xdd\xa8\xfb\xc2\xd9\x86\x6b\xcc\xd6\xf5\xf1\xf5\x36\x61\x86\xd1\x9e\xed\x5e\x82\x5b\x40\xaf\xed\x52\x72\x73\xc1\x26\x29\x2b\x9b\x24\xd6\x08\x11\xd0\x0f\x6c\x81\x25\xfd\x6a\xb8\x47\xaa\x8e\x6c\xdf\xbd\xff\xbe\x8b\xdb\x28\x55\x56\x60\x58\xfa\xeb\x2f\xe5\x5e\x4f\x2b\xfc\x24\x96\x9d\xb2\x61\xaf\xa0\x73\xaf\xc6\x53\x59\x61\x5e\x51\x07\x60\x85\x99\x57\x74\xb8\x07\x85\x67\xae\x29\x38\x96\xbb\x66\x3a\xb8\x0f\x32\x3e\x54\x0d\x85\xce\x69\x4a\x67\x74\x7b\x7b\x0a\x2b\x02\x97\xf2\xb5\x62\x50\x4b\xcb\xa0\xea\x0e\xf6\xbe\xfa\x9a\xf4\x7a\xdb\x35\xec\xaa\xe4\xf2\x03\xd2\xfc\x50\xb2\xab\xd7\xb4\xa4\xa9\x87\x8e\xbe\x5d\x6b\x94\xef\xa3\x8e\xda\x63\x4e\x63\x16\x65\xfe\xe9\x4b\x42\xe1\x83\x3c\xc7\x71\xa3\xf4\x21\x30\xcd\xaf\xa8\x5a\x21\xde\x04\x88\xa4\xbe\x2f\xf2\x25\x9a\x37\x07\xd2\x26\x8c\x9d\x8c\xe6\xe6\xde\x08\x87\x61\x63\x15\xe9\x0e\xbf\xdb\xba\xf0\x85\x82\x1b\xaa\xd7\x1b\xd9\xc6\x3a\xbe\xac\x99\x6b\xac\x4a\x29\xbc\x20\xd1\x39\x2d\x81\x13\x5b\xfa\x93\xb4\x46\x27\xbe\x09\x8c\x21\x6b\xfb\xc9\x40\x56\x39\xdc\x12\xc1\x84\x5d\x7b\xd1\x64\x67\x16\x86\x1f\x2f\x91\x29\x99\x25\x53\x61\x72\x97\x4c\xd3\xb8\x2c\xb9\x0d\x8a\x76\xe3\x84\x5c\x5b\x93\x89\xb8\x35\x9f\x16\xc8\xc6\x1e\xe0\x2a\xf0\x02\xda\x67\x54\x14\x4b\xc8\xc1\x36\x2a\x56\x9d\x2e\x74\xaf\xe2\xb6\xbb\xf0\xe8\xd0\x5e\x41\x4c\x23\x88\x74\x97\xa8\xd8\x7b\xc1\xac\x34\x5c\xa5\x35\x30\x7c\x6e\xc7\x60\x4a\xea\x48\xb6\xea\x54\x3e\x37\x7e\x24\xb3\x31\xa7\x62\x82\x09\xe4\xd3\x65\x79\xdd\x6c\x92\x68\x7b\xb2\x31\x4d\xb7\x12\x1d\x4d\xc6\x7c\x24\xc9\x3c\xea\xca\x95\xe8\x6e\x33\xd6\x10\xc6\xb8\x1c\x67\x13\x67\x80\xd9\xc1\x91\x88\x38\x55\x2f\xe8\x9d\xb2\xb5\x55\xe3\x25\x2a\xc6\x31\xcc\x0c\xa4\x96\xc1\xd5\x21\x23\xa8\x95\x69\x2e\xb7\xa9\x98\x72\xd5\x60\x85\xec\xb4\x12\x6d\xa8\xd7\xc3\xbe\x01\x62\xaa\xa3\xfa\x3a\x89\x4b\xa9\xb0\x4d\x05\x1b\x30\x0c\xfc\x75\xe7\xf9\xf5\xb9\xf6\xd9\xdd\xee\x68\xe8\x3e\xf3\xf1\x60\xe2\x59\x26\x5a\xc3\xff\xc1\xbe\xb0\xbe\xa1\x62\x67\x87\x38\x66\xc9\xd6\xff\x70\x2c\x26\x0d\x89\x29\x1d\x2b\xf0\x4d\x7b\x50\x08\x43\x36\xda\xa9\xb3\x80\x56\xbe\x95\xc6\xa6\xc9\x71\xb1\x94\x28\x73\x0a\xc1\x56\x3d\xf7\xc7\x23\xa1\x0f\x1a\xcd\xc1\x39\xdd\x38\x45\xe5\xbd\x5e\x94\x43\x1a\xed\x6a\x4f\x64\x9d\xdc\x4c\xa5\x7a\x74\x2c\x09\xd6\x4a\xaf\x04\xb5\xa2\x92\x9c\x36\x98\x1f\x16\x0d\x32\xac\x82\x82\xa5\x81\x19\xd6\x99\x08\xe2\x17\xc3\x05\xcc\xe9\xd0\x4d\x42\xe2\x96\x19\xd4\x97\xf9\x68\xa7\x47\xa7\xb4\x65\x8a\xc3\x56\x02\x99\xd2\xa4\x45\xe1\x92\x42\xca\xc0\x0f\x4b\x90\x7d\xc8\x99\x92\xf7\x7a\x49\x8d\x63\x5b\xbe\x33\xa4\x31\x31\xdc\x79\xaf\x17\xe9\x9f\x12\x35\xc4\xd6\x4f\x72\xb0\xd6\x69\xb1\x7a\xd7\x3b\x14\x9a\xbd\xee\x4b\x47\x34\xb1\xac\x53\xad\x74\x4a\x1b\x86\x49\x6b\x39\x72\xff\xca\xf6\xc4\xfc\xde\xcd\xf6\xed\x5f\x05\x66\x6c\xc1\x0c\x45\x15\xb1\x21\xc9\x72\x9f\x1c\x5a\xe7\x4a\xf7\x19\x7d\x2b\xc2\xed\x4d\x7c\x03\x1a\xbd\x10\x12\xaf\xfb\x5a\x1b\x22\x5f\x68\xe2\x00\x90\x20\x15\x6d\x15\x2d\x1e\x45\x6d\xb4\x2d\x34\x0d\xe8\x69\x48\x2f\x23\xa2\x54\x6e\xf3\x8c\xc1\x5c\xfc\x98\xa8\x53\x87\xbe\xc8\x91\x62\xae\x68\x55\x5a\xa2\xce\xa1\xa4\xb9\xdf\xaa\x36\x1a\x99\x7e\xa4\xa2\xd5\x17\xc9\x29\xea\xb8\x68\x24\xd2\xbd\xbe\x74\x5d\xa0\xa3\xbc\xb9\x5b\xd2\xc9\x58\x2e\x3b\x1c\x0e\xf6\xbe\x24\x07\xd3\x7e\x5c\xfe\x82\x7e\xc6\xaa\x2e\x19\xc9\x77\xfa\x01\x48\x84\x39\xcb\x8c\x55\x1b\xef\xab\xe4\xfb\xa4\xb3\x34\xe2\x1b\x75\xec\xce\x01\x60\xba\xf4\x19\xb5\x79\xd5\xf2\xed\xdb\x7a\x59\xc5\x5f\xb1\x40\x38\xf0\x69\xb0\x54\x74\xee\xf2\xb9\x67\x22\x9a\x3a\x8b\x76\x98\xfb\x8b\x36\x5f\xbb\x5c\xd3\xd6\xe5\xb2\xcd\xfa\xab\x92\xd6\xb5\xbb\xda\x70\x16\x33\x25\x50\xf4\x84\xb8\xf5\x26\x67\xb4\x22\xc6\x6d\x75\xfa\x4d\x5c\x15\xa3\xc0\x1d\xd5\x20\x32\x5b\x6e\x2c\x1f\x8d\x43\xf9\x68\xd9\x20\x1f\xcd\xd5\x0f\x23\x23\xcd\xdd\x69\xa8\x13\x96\x5a\xbe\x23\xa0\xe5\xbf\x5d\x67\xde\xea\x8b\xde\x1c\xef\x68\x5f\x92\x13\x60\xa7\x4e\xac\x61\x4d\x68\xac\x81\x74\x0d\x71\xd7\x76\xeb\x35\xe7\x5f\x54\x15\x97\xe4\x4c\x91\x16\x3b\x43\x6f\x68\xb5\x42\x2a\x77\x9d\x3d\xa9\x00\x08\x73\x54\x47\xd7\x71\x79\x74\xab\xe3\x37\xe5\x2c\xd1\x13\xea\xb2\x0a\x81\xa7\xb7\x09\x59\x1e\xe5\x9e\xa5\xe0\xb0\x02\x45\xd5\x55\xb5\x8a\xda\x4d\xdb\xee\xee\x53\x0c\x3f\x9c\x6b\xf4\xae\x8c\xc5\x1b\x90\x22\x95\x2c\x56\x53\xb0\x3b\xdc\x2f\x9f\xb3\xc1\x7e\xb9\xbb\x4b\x94\x7d\x47\x3c\x2e\x27\x34\x65\x59\xc3\x6d\x2f\x3f\x13\x38\xfc\xd8\xa6\xbc\xf6\x97\x74\x7b\xa0\x6e\xfe\x54\xde\xfc\x8e\xa9\x6a\xba\x33\xa4\x53\x42\x33\x7b\xe5\xeb\x9f\xe3\xe5\x84\x4d\xfd\xb1\x6f\xe0\xa6\x5b\x3b\x76\x6f\xbc\x4a\x60\x46\x73\x36\xd8\xcf\x9f\x29\x92\x5b\x13\x93\xf9\xce\x0e\xf9\x28\xe4\x71\x03\xf0\x60\x3a\xc6\xf9\x44\x53\xe6\xf2\x67\x46\x13\xea\xa1\x80\x6f\xd7\x46\x3b\xf0\xf7\xb2\x52\x11\xd6\x61\x93\xe1\xe0\x33\x6e\xed\x3a\x21\x46\x20\xc3\x28\x59\x68\x75\xa2\xa4\x0b\x56\xe0\x14\xb7\x0a\x9c\x12\x49\x05\x9d\xf2\x6c\xc6\x0b\x7d\xbf\xd1\x52\xa9\xee\x9c\x38\x95\x39\x4d\x6a\x6c\x6b\xce\x45\x94\xd0\x3c\x50\x2a\x0d\x07\x15\x69\x06\x46\x65\x74\x65\x23\x9a\xfd\x3e\x6c\xb7\x47\x30\x34\xe8\x66\x16\x09\x26\x2a\x1c\xda\x24\x28\x74\x99\xd1\xdc\x93\x9d\xb1\x24\xb4\x51\x30\xf5\xba\x7f\xd6\x02\xc1\xf3\xe4\x33\xcd\xd2\x7a\x8b\x04\x17\xa8\x8e\xd1\x9f\x72\x9d\xa6\xe6\x47\x4e\xe8\xf9\x5f\x60\xaf\xa1\xe7\xa1\x3a\x43\x97\xf9\x32\x9b\x95\xae\x4b\x64\x32\xdb\x55\x73\x92\xc2\x6e\xd0\x7e\x91\x81\x1d\xe1\x7f\xd3\x4e\xc3\xce\x9a\x52\x43\x23\x94\x1d\x27\xdc\xbb\xda\xa9\x05\xe4\x5f\xd5\x3b\x55\x85\x45\x2d\x74\xba\xb2\x1f\xdd\xa0\x39\x1f\x54\x74\x16\x49\xd2\xe7\x29\xef\x27\xd9\x3c\x8f\xba\xef\x4b\xbe\xf5\x3f\x8a\xe4\xfa\x1f\xba\x15\x67\xb3\xad\xff\x91\x68\xed\xd9\x22\x16\xd7\xcf\xc9\xff\x6c\x89\x7c\x0b\xe2\x47\x81\x24\x61\x4b\x28\xca\xb0\xdf\x25\x54\x44\x5d\xf9\xae\xab\x12\xd7\x09\xf6\x01\x5d\xb7\xdf\xb5\xf9\x35\x9b\xec\x2e\x98\x35\x42\x69\xc6\xf3\x69\x9c\xfa\xd2\xa5\x8e\x8d\x8a\x3e\xd8\x4f\x9e\xe9\x6b\x0b\xd2\xb1\xa8\xab\x26\x1b\x27\x13\x1a\x33\x31\xce\x77\x87\x13\x40\x03\x26\xf7\x08\xd8\xe4\xd9\x96\xc7\xf1\x84\x95\xab\x86\xdc\xc6\xcd\x32\x15\x80\xd1\xd8\xce\x42\x4b\x88\x73\x17\x69\x22\xa2\xae\x9c\x83\xdc\x7f\x8c\x59\x3e\x1e\x4c\x80\x82\xc4\xe8\x64\x43\x49\xd4\x14\x5e\xa6\x12\xe3\x62\x89\xb3\x07\xa9\x12\x05\x96\x41\xe9\xf3\x28\x1b\xc7\x93\x03\xc1\xe4\x3f\x23\xc9\xa3\xc6\xe6\x02\xea\xfe\xa3\x4b\x7a\xbd\x25\x7e\x97\xff\x8c\x22\xe1\xc0\x6a\xdb\x90\xcc\x1f\xa1\x65\xbf\xe0\xb3\xe5\x94\x47\xb5\x59\x0f\xb7\xb8\xe2\x5b\x57\xc4\x04\xea\xea\x18\x0c\x56\x4b\xfb\x55\xd5\x7d\x15\xe5\x5e\x68\xfe\x52\xaf\x13\xa6\x18\xb0\xfa\x9d\x88\x9c\xeb\x9b\xc6\xa4\xf3\x5a\xbe\xb1\x31\x59\xb4\x70\xa0\xce\x0b\x4e\xe7\x87\xd1\x85\x56\x01\x0e\xfe\x54\x85\xe5\xf8\x7a\xd2\x6c\x2b\x4a\x97\x48\x75\xaf\x31\x47\x88\x5d\x25\x26\x9d\xae\xa9\x93\x13\x42\xe7\x75\x06\x06\x7e\xe8\xcb\x92\x2e\x09\x98\xd3\x35\x1a\x22\xcc\xdd\x58\x37\x0e\x0f\x45\x17\x6c\xe6\xd1\xbb\x37\x6c\xa6\x09\xe2\x5b\xb6\xd0\x04\x0e\xbd\x77\xa8\xa8\x4b\x16\xd2\x8c\xb7\x3a\x65\x08\xbd\x62\xf7\xe1\x5e\xbe\x0c\x48\xba\x2b\x42\x2f\x4d\x46\x9c\xe8\xde\x55\xaa\xe8\x23\x7d\xa1\x95\x5f\x4a\x62\x75\x1f\x06\xea\x21\xf4\x8e\x0d\xf6\xef\xac\xfa\xee\x4e\x9f\xfa\x23\x36\x1d\xdf\x4d\xe8\x19\x4b\xc7\x47\xf2\xd4\xbf\x45\x80\xd4\xa9\x3f\x22\x9d\x8b\xf1\xd9\x84\xbd\x5d\x25\xf3\xe8\x8a\xe8\xfe\x3e\xb2\xc1\xfe\xc7\x67\x7a\x14\xfb\x1f\x75\x63\x87\xec\xe3\xce\x90\x9e\xb3\xab\xf1\xed\xf8\xe3\x44\xc7\x06\xda\x66\xec\xbc\xd7\xc3\x31\x44\x87\xf4\x9c\xac\x2e\x83\xd4\x39\xd1\x85\x76\x35\xb2\x8e\x47\x70\xe7\x38\x2c\xb4\x5e\xe2\x1b\x52\x65\x4f\xbf\xd9\xc4\x31\x2b\x74\xc7\xb2\x72\x32\x66\x62\xf4\x74\xff\x91\xcc\x78\x26\x12\x71\x6f\xdc\x7c\x81\x97\x45\x23\x61\x88\x68\x7f\x99\x72\xc7\xdd\x84\xe6\xca\x22\xc9\x2a\xab\x63\x27\xd4\x8e\x27\xe5\xf8\x66\x9d\xb9\x79\x26\x78\x71\x92\x94\x81\x59\xed\x37\x4f\xea\x1c\xf0\xa0\x9c\x57\x6c\x5d\x5c\xa7\x90\x92\x87\x44\xa1\xfc\xa3\x40\xba\xce\x08\xe6\x14\x1c\xc7\x82\xdf\x44\x92\x56\xea\xc8\xd3\x71\x95\x94\xfa\x9d\xd6\x8a\xba\x3e\x44\x1d\xde\x7f\x79\xf4\xea\xf0\xfd\xc9\xf9\xc5\x8b\xc3\x77\x87\xdf\x1d\x9f\x1c\x9f\x1f\x1f\x9d\xb1\x07\x2f\xd0\xdb\x68\x7b\x40\x6d\x8c\x37\xf9\xe4\x28\x9f\xe5\xa3\x8d\xec\x06\x19\xa8\xdd\xa0\x6e\xa3\xed\x21\x75\xc2\xb9\xc9\x47\x97\xd2\xb1\xb5\x31\x84\x9b\xfc\x6e\x63\xb7\xd9\xaf\x3a\x68\x9b\x7c\xa3\xa2\xb5\xc9\xa2\x4e\x94\xb6\xd1\xf6\x10\x73\x7e\xfd\x2e\x2a\xe0\x0f\x3d\xf0\x87\x3e\xf8\x43\x0f\xfc\xe1\x27\x82\x3f\x6c\x05\x7f\x58\x01\x7f\xd8\x06\x3e\xef\xbf\x3e\x7e\x73\xfc\xfa\xf0\xc4\x5f\x8d\xdf\x91\x9a\x38\x6d\xd6\x4e\xb5\xe9\x97\x02\x21\x43\x4d\xf4\x8e\xdf\x21\x87\x98\x33\x29\xbe\x93\x47\x25\xc8\xaa\x1b\xe2\xd4\xa9\xb5\x95\x64\x5b\xa8\xd4\x34\x31\x6d\x54\x26\x13\x15\x0f\x37\x08\x87\xbf\xb6\x6d\xac\xb0\xae\xd9\xe6\x7c\x6c\x89\x4e\xc5\x75\x1e\x5f\x7d\x42\xb7\x58\x61\x5d\xb7\x01\xa7\xf4\x09\xed\x07\x35\x37\xe8\x28\x4c\x24\xb0\x49\x17\x2f\x36\x9a\xbc\x30\xbe\xc7\xda\x96\xb1\xc2\x06\x30\xbb\xc4\xf9\xa7\x41\xee\xd6\xdc\xb8\xa3\xcf\xe9\x62\x83\x9d\xe5\xe8\xfc\xeb\x12\xb3\x99\x70\x35\x26\x17\x72\xd8\x12\x3b\xc5\xc3\xfb\x42\xb0\x07\xc7\xae\x4d\x1b\xbb\x41\x22\x33\x21\x4f\xfe\xf9\xd1\xeb\x77\x27\x87\xe7\x47\x17\x6f\xdf\x9c\xfc\x76\x61\xac\x5c\xd9\x0b\xac\x7f\xbc\x2e\x04\xca\xe5\x72\xfa\x81\x0b\xc6\x0f\xe0\xea\x8d\xcb\x32\xb9\xca\x48\xf4\xb0\xa2\x9c\x8c\x1e\x56\x6b\x10\x44\x63\x86\x42\x6c\xb5\x31\x4b\x5b\x6d\x51\x26\x36\x4c\x66\x87\x35\x88\x99\xc1\x97\x7c\x1e\x2f\x53\xe1\x7a\xc1\xb3\x63\x1c\xfe\xcb\xf5\x01\xcf\x3c\x3e\x2a\x8b\x6f\xe4\x6d\xcf\xb0\x76\xa1\x13\x2a\x17\x12\x13\x38\x01\x69\x61\x1f\xc8\xc5\x05\x3b\x14\xc5\x29\x09\x53\x06\xc2\xd5\x72\x12\x8d\x95\xdb\xe8\xa4\x35\xc4\x72\x25\xb4\x4c\x90\xea\xf1\xe7\xb8\xb0\xc4\x4b\x5d\x2a\xbe\xda\xf2\x5e\x8e\xc8\x9f\xe3\xa2\x2a\x5e\xd0\x91\x5b\x9c\x71\x1b\xaf\x2a\x1a\x32\x45\xd6\x57\x15\x86\x88\xc7\xd9\xba\x24\xe2\x14\x51\x81\x21\x8d\x84\x13\xab\xfa\xcd\x1a\xdb\x08\x20\x52\x9c\xa0\x5a\xd6\x34\x0c\x88\xb0\x13\x61\x17\x66\x06\x6f\xfe\x50\x6f\x50\x50\x07\xaf\x7e\x10\x6d\x99\x7a\xc0\x3a\xb1\x2e\x6d\xe7\x78\x3e\x19\xc7\xfd\xbf\x95\x8b\xc9\xce\xd0\x4b\x31\x88\xb2\x49\xb4\x6a\xe4\xc6\x29\xc3\x09\xf1\x16\x7e\x52\x56\x76\xc1\x6b\x95\x91\x67\xb9\xa8\x98\x67\xd0\xc4\x1b\x3d\xd7\x36\xfd\xa6\x73\x5a\x32\x1d\x39\x0d\x6c\x84\x0d\xa4\xbb\xe5\xce\xd0\x58\xb1\x71\xba\xa4\x25\x15\x92\x68\x43\x9b\xaf\xe5\x2e\x66\x33\x71\x61\xd5\x45\x53\x9a\x69\x45\x95\x03\x33\x9d\xb1\x42\x77\x74\xcd\xd2\xdd\x27\x7f\x9f\x75\xa6\xa6\xce\x35\x9d\xa9\x2c\x3e\x71\xf3\x96\x73\xfa\x8a\x71\xcf\x15\x3a\xfa\x5f\x93\xb4\xc6\x44\x38\xe1\xcf\x07\xbd\x9e\x4a\x70\xef\x4b\x6c\xfd\x96\xb5\x0c\x01\x27\x27\x61\x05\xe4\xed\xd8\xe1\x34\x37\xe0\xef\x64\x56\x2a\x9d\x3f\x67\x83\xfd\x7c\x77\x97\x88\xfe\x34\x5f\xdc\x47\xf9\x0e\x56\xa0\xf9\x4e\x42\x3a\xaa\x32\xe3\x34\x33\xbf\x84\xb3\x19\x18\x5f\xad\x50\x3b\x22\x96\x45\x8d\x5c\x0e\xa2\xc8\x07\x23\x57\x86\x0f\x7f\x13\xa3\xf0\x8b\x31\x6f\xa5\xc2\xd6\xc4\x1d\xa6\x2a\xfd\xa2\x2a\xe1\x4b\x6b\x0e\xeb\x60\xbe\xff\x08\xe3\xfa\x4b\xe5\x1e\x42\x81\x0a\xf2\x94\x00\x6b\xca\xeb\x8e\xb8\x9d\x6c\x13\x5b\x0e\x03\x47\x08\x67\xde\x39\x44\xdf\xcb\x17\x90\xc7\xaf\x2d\x43\x4d\x7c\xd5\x94\x99\xe6\x57\x1e\x8d\xc3\x15\xb3\x43\x9a\x90\xd5\x8a\x62\x1b\x72\xba\xdb\xd2\xdb\xe8\x93\x24\xcb\x99\x4a\x08\x73\x6b\xb5\xca\x4a\xec\x54\xa6\x79\xe7\xc9\xdf\xdd\x1e\xf0\xa5\x89\xc4\x48\x4f\xd6\xe0\x29\x09\x11\x1b\xb8\x13\xaf\x9f\x42\x0c\x76\x21\x2f\x02\xe7\xd1\xb8\xc4\x94\x36\x44\x60\x56\x87\xaa\xb2\x0a\xaa\xb2\x97\x14\xe2\x09\x6a\x41\x11\x75\xa0\x5c\xd4\x88\x59\x2b\x40\x78\x86\xe1\x2b\x9a\xd5\xe1\xa8\x6c\xc3\x7e\x33\x3a\x00\x03\xa7\xe8\x33\xbb\x27\xa3\x68\x93\x39\x03\xa7\xf9\xb8\x2e\xf7\xb2\x01\xcc\x44\x96\x43\x5c\x96\xb9\x88\x46\x4b\xeb\x9e\x0d\x1e\x1f\xf9\x73\x56\x1c\x24\x7c\x84\x26\x27\x98\x2b\x2a\xab\x3b\xeb\xce\xe9\x7b\xe5\x9c\x3e\xdf\xcb\xa9\x84\xda\x2a\x2a\x69\x6d\x6a\x68\x1b\xa9\x45\x3c\x1f\x78\xc1\xde\x01\xea\xcc\x83\x3a\x71\xa1\xb6\x73\x5e\xec\x86\xd3\xbe\x23\x8c\x2c\x08\x35\x55\x02\x94\x53\x09\x26\x37\x96\x78\x38\x27\x34\xa7\x85\x22\x4d\xd6\x6d\xc9\x4f\x3e\xf7\x0e\x7a\xb9\x70\xfc\xd0\xf8\xe3\x63\xe4\xbc\x86\x88\xfa\xc1\x7c\xc9\xe3\xa6\x0f\xb6\x7d\xdd\xda\x81\x2d\x06\x0a\xa9\x9a\xab\x84\x36\x4e\x69\xa7\xda\x08\x13\x4a\xb4\x5c\xd0\x62\xc7\x06\x1c\xe5\x16\x17\xbc\x6a\x8d\x2b\x5a\x49\x80\x21\x8c\x74\x4f\x04\x31\x27\xdc\x4e\xbd\x05\x2c\x56\x3c\x3c\xec\x01\xa5\x5b\x89\x99\xe1\x9c\x1a\x3a\x68\xcf\x53\xde\x72\x59\x5b\x88\x14\x71\xde\x4a\x7d\xda\xd2\xfd\x9b\x78\xa1\x49\xbd\x74\xc9\xdf\xce\x6b\x29\x51\x67\x5d\x6c\x55\xff\x64\xca\x25\xd4\x18\x9d\x31\xc6\x4d\x38\x53\xc7\xfc\x4e\x45\xfb\x58\xc4\x45\xc9\x21\x64\x13\x1d\x0e\xec\x75\x28\x4f\x71\xa6\x4e\xb1\x18\x67\x76\x14\x6f\xe7\x75\xc3\xe6\x96\x74\x56\xfc\xc2\x0b\x3c\xec\xb3\x77\xe6\xd2\x38\xd4\xb9\x32\x30\x69\x33\x52\xff\x7f\x7c\xf6\x8d\x10\x9e\x2f\xf5\x16\x94\xc4\x3e\xfe\x53\x5f\x94\x6a\x3d\x40\xcd\xff\xcd\x8b\xa2\x09\x21\x7f\x26\xa8\x0d\xb7\x08\x4d\x68\xfe\x79\x37\xc9\x5f\x0b\x9f\xb9\x66\xc2\x85\xc9\x75\x7f\xd8\xa0\xb3\x58\xba\x9d\xc4\xd4\xc5\x22\x49\xf0\x1d\x43\x26\xc8\x09\xb8\x8e\xcb\x9a\xfd\x07\x76\x0d\x86\x18\x71\xed\x1e\x65\x9d\xab\x0a\x6b\x6c\xf3\x14\xf5\x7a\x91\x60\xdb\x43\xd2\x69\xb8\x33\xb4\xad\x4c\xa4\x52\x85\x2a\x88\x2c\x2d\xa9\xa3\xf4\x40\x6f\x1d\x0d\x0e\xc8\xbd\xcd\x05\x98\xd0\x62\x83\x0b\xf0\x7d\x78\x01\xa2\x3f\x51\xdd\x5d\x08\x31\xb8\x37\xb9\x09\x03\x5a\x1f\x5b\x6c\xbe\x0e\x41\x51\x88\x85\x62\x56\x98\x54\xf6\x25\x1b\xec\x97\xcf\xc4\x7e\xa9\x55\x12\x4b\x96\x8f\xcb\xc9\x3e\x8c\xd3\xaa\xfd\x96\xa4\xd7\x8b\x32\x86\xde\x6e\xd1\x92\xd0\xc4\x06\x97\x73\x50\x62\x39\x21\x64\xe5\xef\xca\xf5\x07\x3a\xae\xd9\x11\x2b\x39\x15\x22\x3f\xbb\xcf\xc4\x35\x17\xc9\x54\x7e\xa9\x47\x4e\x5a\xcb\x89\x15\x0e\x45\x43\xc9\xee\x3f\xba\x3b\xfc\x4f\x90\xe7\x95\xa5\xd2\x77\x30\x8c\xa1\xf5\xfa\x85\x12\x75\x37\x3c\x0e\xdf\x1b\xbc\xbd\x26\x82\xc1\x7b\xf7\xbe\x2a\xdc\xda\xab\x2a\x53\xd7\xaf\x9e\x68\x07\x0a\xb7\x5f\x9c\xc3\xbf\x9c\xd0\x58\x47\x64\xd6\x10\x1a\x99\x5a\x5d\x41\xc5\x4e\x51\x47\x68\xbc\x5f\x43\x68\x84\xf4\x84\x9a\xf1\x0a\x71\x51\x78\xa8\xd4\x48\x0e\x10\xa0\x9b\x78\xb1\x96\xf1\xf8\xf3\xb8\xcb\x9b\x2b\x3c\xa7\x61\x48\x00\x38\xde\x0d\x28\x29\x93\x28\xa9\x80\xdb\x3c\x6b\x0b\x32\xef\x62\x9f\x9a\xe6\x3d\xf7\x1a\x34\x7c\xe0\x9e\xe1\x43\x36\xe6\xe3\x64\x32\x61\x62\x9c\x98\x00\xf4\xc6\xd8\xbf\xf5\x7c\xdd\xc4\x8b\xd6\xcd\x73\x13\x2f\x6a\x76\x8d\x87\xd6\x9c\xfd\xe5\xd4\x6a\xb3\xda\x10\x1e\xf0\x7c\x2c\x00\xf8\x6c\x9c\x4c\x56\xd5\xed\xe4\xa4\x68\x77\xd3\x3b\xf5\x24\xe6\xb0\x54\x8f\x3c\x1c\x33\x9f\xe0\x79\x8f\x04\xcf\x0f\x6b\x08\x9e\x24\x13\xbc\xc8\xe2\x14\xb4\xf1\x1e\x22\x74\xec\xe1\x9c\xd7\xba\xfc\xb9\xc7\x7c\x34\x5e\xdd\x3e\x85\x82\xd4\xd5\x9f\xa7\x81\x1a\xbb\x6b\x21\x8e\xd6\x0f\xa7\x8e\xc9\x0d\xa6\x67\x33\x02\xa9\x96\x3c\x42\x98\xf3\x16\x5a\xa9\x01\x4e\x97\x84\xfa\x33\xe0\x6a\x9a\xa7\x7e\x05\x6b\xf6\xc1\x5f\x44\x00\x55\x8f\x8e\x8b\x2e\x92\x79\x04\xb8\xc2\xa4\x40\x00\x8f\xbd\x35\xd4\x11\x92\x39\x4f\xfe\x2e\xf1\x29\x18\x41\xaa\xc7\x9d\x21\x2d\xac\xeb\x89\x7c\xb1\x27\xd9\x65\xa7\x65\xb0\x2b\x82\xa8\x05\xe3\x98\xe6\x34\x99\xac\xa7\x93\x7e\x16\x51\x48\x1e\xa1\x2f\x76\xbb\x64\x0d\xcb\xb4\xa7\x1d\x71\xa7\xfc\xf3\x6f\xa7\x70\xe9\x9c\x0b\xea\xc9\xdf\xbd\x2b\x4a\xdd\x9c\xce\x16\x6b\xc5\x7e\x4e\xb9\x60\x0e\x79\xaf\x17\xd5\x94\x72\xd7\x58\x5e\xde\xdf\x09\xbc\xb1\xf5\xd5\xf8\xf3\x7a\xcd\x0d\x1e\x13\xee\xce\x73\x70\x50\x34\xee\x6f\x53\xbf\x7c\xfa\xae\x6d\xe5\x7b\x2b\xbb\xd6\xb9\xe4\x84\xda\x4e\x0e\xc0\x63\xd8\x79\x13\x1a\xbe\x1a\x56\x5e\x4d\x26\x2a\xc3\xc5\x7f\x36\xcb\x7a\xe2\x90\x0d\x8e\x4e\xc5\x53\xa7\xf8\x64\x43\xb6\x51\xde\x03\x95\x8b\x13\x1a\x70\xc5\xd6\xda\xb8\xc6\xf6\x55\x91\x84\xeb\xeb\xb6\xc2\x88\xfb\xb7\xd1\x7f\xf0\x36\xfa\x05\xa3\xa4\xbe\x17\xed\xa2\x10\x1f\x6f\xd1\xbf\x61\xad\x57\xed\xb5\x08\xfd\x1e\xcb\xfd\xa7\x52\xee\x6f\x82\xfe\x22\xe8\x40\x82\xa7\x2b\x7c\x7f\xc6\xbe\x47\x98\x7e\x5b\x33\xf5\xa1\x5e\x07\xe7\xf7\x9a\xc7\x0b\x3d\xf1\x8b\x22\xbf\x2a\xe2\x1b\x3d\xf5\xfc\xa3\x3c\x8f\x26\xe9\x8c\x36\xbc\x31\x6c\xe6\x74\x59\x14\x3c\x13\x6f\x17\x67\xc9\x1f\xfa\x3a\x6c\xd8\xc7\x60\xfa\x7d\xaa\x1a\x68\x91\xff\xa8\x1e\x94\xf8\x27\xcd\xe3\x59\x4d\x25\x73\xc6\xdc\xf2\xa8\xa0\x2d\xb9\x78\xe7\x2b\x76\x82\x82\x90\x8c\x75\xc2\xc0\x88\xc2\x98\x78\x55\xe2\x7f\x5a\xe7\x30\x1b\x0a\xbe\xd2\x4e\x11\x4f\x08\xdd\xbc\xf8\x7c\xa1\x8b\x87\xaf\x59\xf5\x6d\xb9\x98\xec\x0e\x01\xc6\x7c\x51\x0f\x62\x58\xbc\xa6\x91\xb9\x6c\xa4\xa6\xcb\x22\x9e\x38\xd8\x17\xae\x98\x41\x2b\x68\xb6\xdc\x90\xe8\x89\x83\x91\xfe\xc9\xd9\x53\x03\x6c\x69\xaa\x0d\x6e\xcf\x09\x07\x10\x5f\x2e\xf2\xea\xda\xc3\x96\xd0\x12\x82\x02\xb5\xc5\x50\x5c\x05\x97\x5d\xbf\x19\x71\xcf\xec\xf0\xdd\xea\xae\x07\xa3\x80\x38\x4d\xd7\x6c\x39\x03\x79\xd8\x28\x0d\x41\x94\xc7\x51\xce\x74\x3c\x9b\x15\x1a\x50\x84\xea\xbc\x66\x6c\xf5\x9d\x98\x61\xda\xca\xd5\x35\xb2\x5d\xd6\x2e\x4b\xc6\x3f\x82\x5b\x1b\xd8\x97\x34\xe6\xf1\x51\x15\x35\xb7\xa3\xf0\x07\x2d\x18\x57\xe3\x33\x64\x51\x51\x21\x8b\xd0\x54\x77\x9a\xcf\x94\x37\x48\x0d\x4a\xc9\x20\xe3\x71\xa7\x75\x55\x58\x82\x39\x9c\x4c\x1e\xe3\x65\x03\xb2\xd0\x05\x8e\xb3\x8c\x17\x4a\xb7\x22\xfc\xb7\x41\x35\x6e\x33\x30\x1f\x78\x4d\xa8\x97\x11\x27\x23\xef\xfd\x19\xe6\x4d\xae\x34\xae\xca\x7b\xeb\x57\xde\x25\x62\x7a\x1d\x71\xf0\x4b\x20\x0f\xd3\xb8\xe4\x5b\x83\x91\xa7\x36\xb4\x16\xa8\x1d\xf8\x3c\xf4\x3f\x2b\xcc\xa0\xbf\x3e\xf1\xbe\x22\x1c\xfd\x7c\x31\x54\x9f\xf7\xaa\x9f\x9b\xce\x92\xaa\xf1\xa5\x57\x03\xec\x2b\xdd\x06\xbf\x1a\xf9\xeb\x02\xe6\x17\xea\xdb\xd7\x35\xdf\xce\x75\xf5\x95\x3b\x35\x6a\xca\x82\x99\xff\xa7\xf5\xa9\x88\x04\xe5\x54\xcd\x92\xa2\x31\x7e\x6a\xa5\xbe\xf4\xde\x0a\xa3\x5f\xd3\x84\x19\x0b\xe0\xac\xd7\x53\xb6\x08\x73\x39\x85\x67\xa8\x24\xe5\x77\x5b\x45\xff\x0c\x15\xd2\xb0\xac\xd9\xad\xbe\x25\x67\xf9\x0d\x3a\x20\xbc\x7c\xfb\x5a\xc7\xc6\x08\x3b\x60\x49\x2b\x43\xf8\x91\x4f\xc3\x30\x14\x9e\xc6\xcd\x42\x02\x6c\x36\x9e\xe4\x02\x2d\x36\xf6\xb7\x8b\x7e\x52\x1e\x81\x05\x07\xd9\x37\x63\x34\xd5\xfc\xe3\x1a\x11\x6b\xeb\x9c\xb9\x49\xbc\x65\x05\x32\x2a\x54\x9e\x47\xe0\x70\x6a\x51\x26\xb6\x89\x2b\x8e\xb2\xbf\xa2\x96\x97\xb5\x20\xab\x04\x79\xfc\x6e\x2b\xc3\xb3\x85\xd5\xae\x8b\xfc\xae\x82\x7a\xb0\x75\x34\x53\x3f\xfa\x38\xe5\x0b\xfc\x48\x2b\x4d\x02\x94\x6d\xac\x09\x14\x6e\x55\xbd\x3b\xcd\x29\xd4\x62\x05\x12\xbc\x0f\x96\x52\x49\x76\xf5\xf3\x6b\xf6\x13\xd2\x50\xff\x14\xf4\x47\x41\x7f\xdd\xc0\x30\x0b\x9c\x51\x6d\xda\xbe\xe5\x0d\x58\xcb\x5e\xca\x8d\x24\xea\x68\x55\x2c\xd3\x62\x6a\xe6\x37\x12\x71\x6a\xfb\x31\xfe\x1b\xf4\x5f\x7f\x89\x37\x19\x02\x0f\x39\xe4\xd0\xe5\x00\x7c\xa5\xd0\x41\x0a\x2c\x10\xba\x34\x47\x5b\xb7\x82\x67\xe0\x4c\x66\xfd\xa8\x3e\x2b\x0a\xfe\x22\x96\x53\xaf\x82\x10\x34\xe9\xf3\xb0\x0f\xbf\x6c\x04\xfb\x68\x9e\x14\xa5\x78\x93\xcf\x1a\x55\x81\xaa\xaa\x29\x87\xd5\xd2\x78\xa3\x5a\xba\x18\x56\xaa\xf5\xe5\xe2\x70\x12\x11\x73\xaa\x69\xa1\x4a\xb2\xa0\xdc\xd8\x02\xaa\xb6\xb2\x30\x39\x2e\x4c\xac\x17\x26\x76\x17\xc6\x44\xeb\xf0\xb3\x3c\x88\xe2\xbe\x0b\x3e\xc3\x57\x2c\x46\x95\x75\xb3\x95\x1f\x8d\x3f\x6b\x61\x66\xc9\xec\xd8\xa4\x82\x78\xa1\x57\xdc\x99\xaf\x5a\x83\x3a\x09\x0b\xd5\x72\x7b\x3d\x21\xe4\xd3\xa6\x0f\x06\x8a\x82\x19\x0f\x11\xd4\xd3\x1a\xd4\x2a\xd4\x6d\x38\x57\x5c\x3f\x23\xbf\xc4\xad\xdc\x79\x81\x7b\x5d\xc5\xdf\x7e\xa5\xce\x55\x94\x61\xf6\x0e\xcc\x7b\xa3\xdf\x51\xf0\xa7\x18\x4f\xa8\xe2\xf8\xcd\x9e\x1f\x4f\x3a\x1f\x71\x69\x72\x8d\xb9\xfd\x90\xe0\x48\x04\x6b\x04\x82\x6e\x16\x8e\xef\x28\xd7\x6e\x17\xa6\x04\xc4\xe5\xec\xcf\x8a\x7c\x81\x9b\xe6\x5f\x82\x50\xb1\x66\xd3\x24\xe0\x34\x05\xd3\xa0\x05\x17\x51\x59\xb3\x71\xc6\x13\xb3\x73\x3e\xf0\x7b\x96\xd0\xb2\x7f\xc3\x6f\x72\x96\x53\xc5\xa3\xb3\x18\x9c\xc5\x44\x9c\x64\x7c\xc6\xb6\x87\x54\x09\x01\xd8\xee\x90\x96\x9f\xb5\x71\x70\xac\xa7\x56\xca\x5f\x43\x9b\xea\xee\x06\x8e\xb4\x20\x48\xc9\xa8\xa3\xfa\xf0\x9b\xdc\x7e\x91\x4f\xb0\x35\xca\xeb\x7c\x99\xce\x4e\xf9\x4d\x7e\x5b\x73\x88\xb7\xbd\x6e\x64\xf9\x82\x97\x5c\xd4\xf0\x10\x66\xdc\x30\xf3\xbc\x20\xb4\x58\x77\x5c\xcd\xbc\xef\xd7\xce\xb8\x3d\xaa\x89\x75\xc3\x81\x59\xc6\xa3\x9b\x26\xa5\xd8\x55\xa8\x14\x31\x0c\xb8\xeb\x08\x3e\x73\x32\x8a\x94\x8a\xfe\x7d\x1d\x2f\x80\xf8\x78\x1d\x2f\xe4\xca\xc5\xc5\x07\xae\xa2\xe2\xa3\xce\xb0\x5c\x77\xf8\x4d\x32\xdf\x3a\x33\x5f\x40\x20\x74\x39\x21\x9f\xb9\xd2\x89\x8f\x1f\x82\x83\xad\x32\xad\xb8\x87\xc7\x58\x3a\xe2\xda\x9a\x31\x2a\xf3\x9f\x0f\xfc\x9e\x72\x9d\x68\xa4\x1d\xf9\xa0\x00\xc8\x9d\xbc\x96\xa4\x23\xf4\xcf\xa3\x2a\x9f\x20\x73\x56\xd6\xcd\xb0\xa2\x61\x01\x39\x67\x35\x78\x34\xe6\x57\xb5\x19\xf0\x5c\x4c\x15\x33\x21\x29\x49\x8d\x6d\xd4\x4a\xc7\x9a\xba\x51\xf9\x3c\xba\x5d\xd2\x89\xfb\x49\x56\xf2\x42\x1c\xce\x05\x2f\xa2\x3c\xbc\x14\x69\xa9\x62\xcd\xe3\xbd\x45\xd4\x46\x41\x14\x79\x9f\x4d\xb5\xd5\x77\x50\xad\x5f\xc0\x51\x82\xa9\x8e\x4a\x7d\xf6\xec\x7e\xa3\x4b\x95\x22\x66\xc3\x59\xa4\x1b\x2f\x90\x33\x97\x98\x21\x86\xd7\xb8\x4f\xbb\xa7\x0c\xcf\xff\x7d\x36\x6d\xe0\x3d\xdd\xc5\x51\x77\x83\xd9\x68\xc6\xcf\xda\x5c\xd5\x6c\x40\x13\x36\xa0\x39\xdb\x1e\x5a\xe2\xda\x20\x7b\x97\x18\x80\x7f\x4e\x92\x52\xb0\xf1\x44\xa7\x00\x97\x77\xb5\xf5\x4d\xd3\xd2\x77\x72\x59\xf0\xf8\x83\x51\x89\x95\x10\xe3\x0c\xfc\x48\x3f\xf0\xfb\x7d\x43\x80\x97\xbd\x1e\x44\xa2\xb2\x78\x68\x9f\xc8\xb2\x3b\x3b\x19\x70\xc7\x6e\xc1\x12\xd0\x37\x63\x4b\xe2\x20\x2e\xf0\x73\x2b\x69\x4c\x68\xb6\xb3\x63\x92\x25\x83\x68\x38\x5a\xaa\x6d\x96\x32\x81\xd1\x2a\x00\xc2\x14\x4f\xe5\xb3\x04\x9b\x91\x4b\x0e\x8d\xa4\x10\xf9\x5e\x85\xa2\x61\xaa\x94\x19\xc0\x54\xde\x0b\x73\x96\xed\x0c\xf7\xe7\xcf\x92\xfd\x39\x46\x3f\x83\x48\x5b\xc5\x78\x3e\x31\xe0\x93\x87\x29\xdb\x1e\x74\x60\xf4\x2b\xf8\x3c\x3d\x88\x42\x78\x53\x80\x97\x25\x3b\x43\xad\xad\x09\xa0\x90\x83\x21\x2b\x74\xde\xcb\xcd\x15\x81\x9b\x1e\x8a\x41\x90\x7e\x0d\xdb\x8c\x0d\xf6\x67\xcf\xb4\x31\xf5\xfe\x4c\xdb\x53\x5c\xb3\x62\x3c\x9b\x74\x00\x8a\x6b\x03\xe1\x41\x64\x5b\x9c\xf1\x94\x0b\xec\xf8\x9a\x90\xd1\x35\xde\x11\x56\xad\x9a\xe3\xbd\xa1\x01\x6f\x66\xcf\xf4\x6e\xe9\x70\xef\xb6\x12\x78\x5b\x51\xee\x5f\x6f\x42\x5f\x6f\xdc\xbb\x07\x35\xbe\x34\x56\xed\x98\x43\x4c\x71\x59\x76\xf4\x8d\x60\x68\x44\x64\xf7\x7a\xe2\x61\x98\xdc\x25\x93\x62\x8f\x30\xd2\x58\xc7\x3d\x39\xcb\xe0\xa0\xa4\x0c\xf1\xf3\x94\x59\x4b\x9f\x03\x07\x4b\x8c\x84\x4b\x63\xd3\x39\x7b\xd5\x9f\xe7\x85\x42\xe2\xe8\xff\x15\xc5\x40\x68\x3d\x28\x07\xc3\x51\x52\xc1\x5d\xc0\xab\x26\x97\x69\x92\x5d\x8d\xa6\x2b\xd2\xc9\x35\x39\x16\xd3\x39\xd9\x88\xda\xd2\xc4\x9d\x70\xbc\x43\x4b\x79\x8d\x25\x6a\x7e\x97\xc6\x3d\x01\xe7\x37\x21\xa8\xe2\x8c\x52\x49\xf1\x7d\x8c\x0a\x8a\x99\x56\x68\x66\xf6\x65\x7d\x7c\x48\x23\x97\xfa\x2b\x56\xdf\x5a\x66\x1e\x5c\x6a\xfe\x0e\xe7\x95\x8c\xb8\x83\xce\xfb\xce\x0c\x6d\x33\x16\xc9\x8b\xd9\x99\x76\xd2\xeb\xc9\xea\x10\x19\x02\x87\x9b\x18\x9b\x24\x77\x3b\xd9\xad\xef\xdd\xd9\xa7\x92\x38\xbd\x32\xd9\xf4\xed\xf5\x8c\xe5\xf1\x86\xb6\x34\x6a\x56\xac\xe5\x85\xf3\x85\x51\x74\x71\x4d\xc6\xa3\x83\xb4\x49\x64\xaf\x98\xef\x76\x25\x41\xbd\x30\x42\x57\xe5\xad\x62\x49\x97\xaf\xcb\x17\xe5\xd8\xad\xba\xb3\x03\xda\x84\x16\x46\xa3\x16\x76\x15\xf9\x33\x7c\x5d\x95\x5c\x28\xde\x3c\x69\x99\x29\x37\xec\xa9\x6c\xb5\x13\x0a\x98\x96\x6a\x6f\xeb\x09\x53\x0c\xb7\xd2\xc4\x48\xb6\x81\x65\x54\xb1\x24\x19\xa1\x87\xf8\x2b\xaa\xce\xc0\x55\x94\xa8\xca\xb0\xc3\x5b\xa6\xbb\x90\xa4\xfb\x2c\x60\x5c\xb1\xbc\x0d\x19\xc9\x0f\x1e\x42\x39\xd7\x68\x7b\xb8\x1a\x71\x52\x15\xb0\x15\xcc\x0d\xed\x69\xa2\x9b\x48\x74\xa0\x8e\x91\x1e\x65\x47\x92\xbb\x3f\x89\x28\xa3\xd5\xd6\x8b\x95\x45\x02\x89\x66\x13\xc5\x9f\x13\x21\x88\xcf\x13\x21\x88\xcf\x11\x21\xac\xd9\x68\x45\x7e\x07\x91\x41\xb6\x90\xb9\xd9\xca\xf8\x2d\x2f\xb6\xae\x21\xa5\x5b\x57\xed\xa4\xbc\xf5\xcc\xd9\xb5\x01\xe5\xb5\x9c\xca\x12\xc5\x96\x44\xdf\xa2\x4e\xe2\xf8\xdf\x55\xe0\x15\x08\xf5\x18\x67\xa2\x24\x3a\xa1\xab\x5a\xa7\x48\x17\x53\xff\xca\x92\xd3\x58\x40\xc4\xfc\x16\x79\x26\xe8\xe6\x6b\xef\xa9\xb1\x95\xfa\x1b\x03\xea\xc2\x86\xad\x65\x7c\x3f\x7b\x26\xf6\xe5\xfd\xaf\x6e\x3f\x94\x2f\x73\x01\xc9\xa0\x75\x05\xb0\x67\xc8\x17\xb5\x72\x47\xcc\x68\x0f\xce\x53\xda\x47\xe2\xae\x48\x04\xff\xb1\xac\x01\x28\x33\x03\xd3\xee\x45\xea\xd1\x0b\xe5\x8b\x4d\x42\x2b\xa7\xf1\x5d\xc4\x29\x4c\x1a\xcf\x82\x18\x20\xa6\x2b\x2d\x2d\x6f\x06\xaf\xbe\xad\xe3\x9b\x1b\x3e\x4b\x20\xf8\xa2\x70\x9a\x3b\x2f\x96\xbc\x8a\xfa\x2a\x0d\x0d\x6d\x8d\x57\x71\x5a\x6e\x52\x65\x60\xab\xbc\x59\xd6\x29\xaa\x2a\x35\xf6\x6c\x8d\xf7\x19\x04\xe8\xe3\xb3\x0d\xaa\x3d\xb1\xd5\x4e\xe3\xbb\x8d\xe6\x45\x68\x2b\x9b\x1f\xcb\x26\x8b\x05\xac\x73\xc5\x05\xd4\x20\x9e\x2e\xe8\xf7\x72\x5c\x13\x75\x45\x90\x89\x6a\xb5\x66\x8d\x36\x68\xdb\x69\xd2\x5b\xac\x66\x83\xa0\xc1\xe3\xba\xe6\x92\xd2\x42\x77\xd0\x0e\xfb\xa8\xad\xff\x7a\x01\x07\x76\xac\x08\x5b\xea\xef\x76\x36\x68\x95\xa0\x6f\xe0\xbd\x86\xad\xa7\x5c\x5e\x74\xc6\x00\x26\x5e\x4f\x15\xb8\x56\x06\xe3\xf9\x84\x89\x15\x08\xc1\x45\x5e\xf8\xdb\xd6\xc6\x46\x96\x98\x2c\x2f\x24\xb7\xb6\x9f\x59\xcb\xc8\x4c\x13\xfb\x09\xe3\x10\xba\x3a\xcc\xed\x90\x00\xd3\x2a\x27\x59\x2f\x38\x89\x12\x72\x20\xec\x4e\xcb\x1a\x4e\x60\x42\xc8\x08\xc3\x04\xeb\xd2\xf2\x1c\x46\x19\x19\x61\x80\x61\xfd\x16\xce\x9a\x7c\x6d\x42\xb3\x08\x7b\xa2\xe4\x7b\x83\x92\xcd\x17\x73\x72\xe4\x67\xa1\xd1\x13\x48\x1c\xdd\xf0\xcd\x72\x72\x22\x41\xc7\x03\xba\x3b\xa4\xdc\x4a\x4e\x06\x93\x76\x27\x1a\xb4\x0f\xaf\x51\x76\x83\xaa\x43\xf7\xb6\xb3\xa3\x26\x5f\xd9\x08\x50\xee\xab\xef\xc3\xb3\x11\x36\x61\x54\x82\x2d\x0d\xf9\x98\xab\xda\x06\xcc\x68\x58\xdf\xd4\x0e\xb0\x58\xb5\x3a\x4e\x7d\x63\x7d\x1f\xa5\x55\xab\xc3\x02\x35\xd6\xae\x41\x6f\xd5\x26\xec\x4a\x36\xb6\xe3\xe3\xbb\x6a\x13\x72\x0f\x36\x4c\xe1\xcc\xb3\xba\xac\x5c\xee\x41\x87\xae\xb9\x89\xba\xfe\x6a\x81\x6a\xba\x38\xbd\x9a\x42\xdb\x5f\x84\xd8\xd7\x07\x41\xf9\x78\x88\xc0\x14\xe4\xc7\x32\x0a\x3a\x76\x71\xb3\xe3\x13\x2e\x51\x80\x6b\xe8\x51\x41\xc8\x1b\x75\xe7\x59\x92\x7c\x52\xa7\x9f\xd1\xd9\xa7\x76\x02\x41\x8c\xea\x0c\x49\x82\xee\x06\xde\x02\xd6\x4d\xe2\xae\x3a\x58\x4e\x9a\xf4\xcf\x69\xb7\x61\xb6\x9c\xd6\x3f\xa7\xd5\xfa\xd6\xaa\x5e\x42\x61\x73\xe8\x2c\xe4\x54\x9e\x07\x5b\x19\xda\xde\xc1\xe6\xc2\x78\x1c\x75\x2e\x8d\xcd\x2d\x69\xcc\x57\xec\x08\x75\xc0\xea\xe8\x54\xf7\x7a\xc3\x7a\x68\x69\xaa\xcf\x44\xc5\x8e\xd6\xa3\x1b\xdc\xc8\x0c\xb4\x60\x62\xd7\xb7\x50\x71\x1b\x2c\x54\x83\xf5\xf7\x36\x96\xd4\x02\x29\x2a\xfa\x22\x87\xd8\x72\x35\xcc\x86\x8e\xea\x98\xe6\x57\x7a\x15\xbc\x71\x2b\x4b\x59\x6f\x62\x68\x08\xac\x66\x54\xcb\xa2\x0a\x0a\xc4\x19\xa9\x58\x40\x78\x41\x45\x2b\x5f\x0d\xcf\x5a\xf9\x82\x99\xe8\x2b\xaf\xd3\xa4\x14\xee\xdb\x15\x5d\xb6\xf1\xcc\x1e\xc7\x0c\x7a\xbb\xc5\x14\x62\x4f\x60\xe4\xc6\x1b\x26\x3c\x00\xe9\xad\xfc\x64\xbd\x93\xb5\x6e\x5b\x8b\x26\x90\x1d\x54\xb6\x1e\x38\x39\xff\x14\x13\xe4\x9f\x90\xcf\x1e\xff\xa8\x9e\x3d\xa8\xcb\x81\x63\x5e\x5e\x0e\x9d\x07\xe1\x7e\x11\xee\x97\xdb\x81\x55\xe0\xdc\xb3\xb8\xd0\x94\x4f\x74\x4b\x3a\xf7\x6a\x4d\x16\xd3\x09\xcb\xe9\xbd\x5d\x21\x76\x6b\x09\x80\x7b\xbb\x8e\x4c\x69\x52\xc6\xb3\x89\x67\x66\x05\xb6\x62\xf8\xe5\x3a\xf8\x62\x98\xbd\xe6\xa1\x4f\x27\x2a\x7e\x0a\xb0\x41\x4a\x19\x20\xdf\xba\x53\x8a\x1f\x6f\xd4\xc7\x05\x4e\xce\x1b\x14\x51\x8c\x97\xf8\xf8\x9b\x88\xee\x35\x7c\x94\x1b\x1b\xb0\x07\x08\x2b\xfa\x1d\x9f\xe7\x05\x1f\xd5\x20\x9b\x7f\xf2\xbe\x53\x22\x82\xc0\xc4\x14\xde\x80\xce\xc3\xab\xa2\xcb\xa2\x36\x04\x8a\xae\x60\x86\x88\x16\xf2\x62\x16\x83\xbc\x60\x0f\x2b\x84\x25\x9d\x38\xbc\xa5\xfd\xde\xca\xd2\x82\x91\x6a\x13\xb3\xe0\x04\x2f\xe6\x4a\xbb\xe2\xa5\x10\x40\x02\x3d\xcd\xe3\x3a\x4f\x7b\xb7\x38\x64\x1e\xc4\xe3\x60\x42\x91\x6b\x56\xc8\x76\xe2\x35\x82\x69\xc4\xe3\x7e\x52\x9e\xe4\x77\x27\xfc\x96\xa7\xda\x2a\x96\x44\x9c\x10\xf7\x76\x5a\x4e\x7c\x5b\x5b\x09\xac\x36\x35\x53\x56\x66\x72\xb3\xf9\x96\x66\xe5\xa0\x63\xbe\xf8\x46\x66\xe5\xd0\x7c\x11\x7e\x1d\x61\xeb\x08\xbf\x8e\xb0\x75\x6e\xfd\x3a\xb7\x83\x95\x9e\xa4\x70\x90\x12\x2d\x2b\x38\x5b\x86\x8a\x22\x39\x39\x48\xd7\x34\x18\x83\xda\xf8\xc3\xd3\x27\x57\xa0\xa2\xc2\x1d\x9f\x3e\xc7\xe1\x27\xa1\x6a\x89\x6a\x2d\xa1\x6a\x89\x6a\xad\x5b\x55\xeb\x76\xc0\x04\x8c\xae\xd1\xaa\x58\x82\xed\xd8\xf4\x41\xd9\x06\xeb\x5e\x28\x6a\xec\xfb\x1a\x0d\xb5\x64\x31\xc7\x4a\xab\xd6\x10\x55\x96\x41\x63\x40\xc5\x41\x36\xd8\x92\xca\x72\xd6\x50\xcf\x29\x5b\x07\x9b\xb6\xf6\x73\x9c\x4e\x40\x2a\xbb\x39\x21\x50\xd9\xa7\x80\x10\x09\xa1\x0f\x8b\xe9\x48\xf8\xf1\x08\x2b\x57\x91\xbc\xc3\xec\x17\x1d\xd9\x14\xce\xd7\xc8\xa5\x73\x55\xb0\x1a\x8e\xb6\x6e\x41\xfa\xb2\x06\xc5\xe2\xd2\x28\x19\x28\xde\x55\x37\x22\xd2\x8c\x19\x51\xf1\xf6\xb5\xd4\x48\xa2\x4b\xb8\xea\xf4\x5b\x14\x5a\xf9\xa1\xc0\x37\xe9\x27\x68\x4c\xa2\x08\x1a\x5a\xa3\x5a\x97\xe4\x31\xa4\xa1\xaf\xe5\x91\x73\xe0\x91\x21\xfb\x72\xbe\xcd\x02\xd7\xaa\x5e\x4f\x09\xdc\x72\xb2\x72\xc2\x65\x19\xed\xf3\x65\x92\xc5\x42\x69\x6d\x0b\xb2\x92\xdd\xa2\x82\xc1\x8c\x5b\xce\xc7\x2d\x88\x06\x41\xa4\x9a\x81\xe6\x3e\x2a\x0c\xe7\x8a\x7a\xf5\x2c\xb4\xf1\x77\x90\xa0\x5d\x13\xad\xa5\x0d\x32\xc8\x19\xd3\x06\x15\xe6\x9d\x66\xb0\x0a\xbc\x88\xb4\x67\xa9\x52\x67\x15\x74\x3c\x51\x88\x74\x96\xcc\x8e\x64\xa7\x51\x66\x01\x68\x56\xa3\x81\x86\x2b\x63\x3a\xdd\x54\xc2\x50\x8b\xe3\xe8\xce\xa6\x1f\x20\x8f\x03\x28\x7d\x4e\xf9\xfc\x55\x5e\x60\x24\xee\xb2\xf2\x32\x21\x9d\xdc\x09\xb5\x9a\xdb\x2c\xbc\xae\x4a\x5e\x0f\x7a\x8f\xd0\x74\xb3\x41\x4f\x61\xd0\xa2\x88\x96\xfe\xa0\x53\x5a\xd0\x92\xc6\xbe\x1c\xcc\x0c\x7f\x4a\xe8\x14\x0f\xae\x0d\x91\x5a\x65\x4c\x25\x15\xa6\xfa\x09\x8d\x3b\xd4\xc1\x37\xb1\x5f\x6b\x56\x71\x3c\x51\x0b\x27\x8f\xb0\xb1\x34\xd7\xb2\x7e\x3d\xd2\x01\xb5\x36\xdd\xc1\x58\xa1\x6b\x08\x18\x2b\x88\x37\xe7\x6e\x5a\x07\x20\xc2\x0a\x9d\x89\x5b\x8f\x3e\xa1\x82\xaa\xd0\xdf\xf2\xb4\xc8\x81\xe0\xbe\x8c\x35\x21\xa0\x67\x22\xd6\x06\x26\x47\x95\xcd\x08\x05\x6b\xf3\x1f\x2a\x95\x98\xa1\x1d\xb4\x8a\x2c\xb0\xeb\xba\x56\xb6\xd9\x46\x1d\xc9\xad\x49\x04\xcc\xde\xc7\xa4\x42\xeb\x43\x9b\x70\xac\x2b\x53\x62\x12\x1a\x68\x77\xa8\x45\xa0\xe7\xac\x20\x8c\x0e\x1f\x5b\x51\xd1\xa4\xde\x8c\x26\x32\xa0\xf8\xeb\x68\x74\x5d\x89\x96\x15\xda\x99\x44\x7b\xdb\xcc\x1b\x5c\x1b\xf7\x3c\x9e\xd8\x16\x34\x74\xae\x02\xd2\x19\x4a\x83\xfe\xc4\xaf\xa9\xfb\xb7\xf3\x5d\x5d\x38\x3b\x0b\x6e\x4f\x66\x4b\xb7\xf4\x03\x63\xd4\x46\xc0\x34\xab\xdd\x02\x5e\x7f\xa8\x6d\x93\x2b\xa7\x6a\x51\x63\x0c\xfd\x29\xc3\x72\xba\x5c\x7e\x5e\x35\xbd\x5b\x9a\x94\x50\x2e\x79\x0f\x66\x33\xc0\xae\x35\xf7\x81\x74\xbf\xd3\x81\xc7\xe6\x35\xd7\xf3\x38\x03\xa7\xba\x5c\x08\xd8\x77\x95\x06\x6a\x38\x0d\xf7\xca\xc6\x73\x13\x11\xb3\xeb\x5e\x36\x00\xe2\x1c\x03\x9f\x0e\xd0\x2d\x74\xda\x40\xd5\x87\x99\xeb\x6e\x4c\xec\xf3\x1a\xfc\xf6\x8a\x83\xd3\xc9\x2c\x50\x36\x84\xa3\x80\x38\x92\x2a\xa7\x70\xa5\xa5\x9a\x0a\xe6\x44\xac\x9b\x23\x73\x08\xf3\x45\xd3\x6c\xd4\x0f\x52\x57\x6c\x0e\x1d\xec\x4d\xbd\x09\xdc\x8e\x17\x86\xb2\xe3\x7c\x95\x17\x18\x6c\xbd\xd1\x2d\xca\xad\x8f\x61\xd9\xd5\x9d\x51\xf1\x6f\x50\x33\xda\xe1\xbd\x9e\x72\x3d\xe8\x88\xe2\x1e\xe8\x98\xfd\x6d\x9d\xd8\x00\xed\xaa\x48\x7f\x96\x67\x7c\x9f\xec\xaf\x80\xa8\x48\xef\xc3\x00\x2c\x16\x61\xee\x17\xfd\xeb\xb8\x84\xc3\x5e\xee\x93\xc2\xc1\x9f\x2b\x23\x1d\x87\x8b\x5d\x02\x25\x5b\xaf\xec\x23\x6d\x2f\x06\xf6\xc0\xac\x72\x82\xd4\x55\x26\xaf\xb7\xd0\xab\xc2\x71\x61\xda\x36\xbe\xec\xb2\xa0\xe7\x7c\xa4\x6e\x2d\x42\x39\x7b\x90\xc3\x1a\x6d\x0f\xe9\xff\xcf\xdd\xbb\xb6\xb7\x8d\x23\x09\xa3\xdf\xf5\x2b\x64\xee\x8c\x86\x5c\xc1\x8a\xe4\x64\x7a\x7b\xe4\x20\x5e\xc7\x76\xba\xb3\xeb\xd8\x19\xdb\xe9\x7e\xfb\x28\x5a\x0f\x2d\x41\x16\x3a\x14\xa1\x06\x41\x3b\xb6\xa5\xf7\xb7\x9f\x07\x85\x3b\x49\xc9\xe9\x99\xd9\x79\xce\x73\xbe\x48\x24\x88\x3b\x0a\x85\xaa\x42\x5d\x54\x94\x51\x15\xe6\x7d\x18\xd7\xa5\x3f\x2e\x6f\xdf\xe4\x25\xf7\x6d\x6a\x89\x9e\xe0\x54\x40\xbc\x76\x6a\xf8\x1c\xae\x06\xf4\x1b\x9a\x4f\x9b\x21\x28\xb8\x74\x69\x22\xae\x39\x76\xe7\xcb\x3e\x7f\x83\xfb\xfb\xdc\x04\x51\xca\x31\x19\xf1\x71\x0b\xe4\x74\xe6\x78\x0e\x22\x2a\x24\xdb\xfd\xb5\x41\xde\x6d\xf7\x4d\x72\x3a\x21\x93\xb5\xf2\x5e\x4e\x9e\xcb\xdf\xc4\x49\xb8\xe2\x4a\x20\xb1\xf5\x8e\xcb\x44\x5e\xd0\x79\x6d\x59\x92\xdf\x7d\x53\x39\x92\xdf\x35\x38\xba\xc8\xb8\x11\x60\x36\x33\x42\xef\x48\x8f\x33\x26\x62\x4a\x50\x5f\x73\x3e\xc4\x30\x36\x21\x07\xc4\x35\x73\x33\x1a\xaf\xd7\xa4\x67\x38\xe3\x9f\x3e\xe0\x92\xa3\xbf\x0a\x3c\x41\xff\x25\xb0\x12\x36\x4d\x36\x2a\x36\x7b\x6e\x7d\xd2\xe5\x32\x53\xfa\xf8\x28\x35\xd6\xcd\x5a\xa1\xf9\xf9\xb0\x37\x4d\x9e\x2d\x0c\x65\xad\x63\x4f\x48\xe2\x5a\x70\x42\xde\x96\x34\x9b\x12\x0e\x24\x76\x20\xa9\x63\x78\x26\xe7\x46\x4e\x50\x20\xcd\xb2\x96\x8f\x3c\x41\xc1\xec\x20\x9a\xa0\xdc\x6e\x40\x56\x51\x07\x43\x6c\x8d\xb8\xa1\x65\x9f\xef\x5a\x41\xb2\x19\xf4\xc9\xef\x23\xab\xf6\x31\xc5\x95\xbe\xc1\xca\xc8\xb3\x81\xcd\x54\xe4\x66\xd3\xc3\x1c\xa5\x09\xc4\x11\xdc\x34\x94\xcc\x0e\xb7\x44\x05\x62\x72\x34\x66\x28\x59\x75\x28\xd9\x3a\x08\x2d\x54\x17\x45\xff\xbd\x8c\xb5\x44\x28\xff\xc7\x44\xf7\xf5\x78\x76\x25\x3d\x99\xe9\x90\x4c\x25\xf7\x00\x78\x56\x05\x60\x88\x38\x6b\x12\x5d\x48\x55\x30\x55\x35\x79\x9c\xde\x9e\x52\x7a\xf2\x8a\xce\x8d\x7a\xbd\xe4\xc8\x41\x7f\x73\x03\xb4\xe6\xdf\x62\xce\xa4\xb5\xaa\x8c\x22\xbe\x0e\x8a\x02\xe6\x4a\xda\xd8\x6a\xca\x63\xe6\x82\xa5\x34\x9b\x2e\xc9\xce\xa0\xbc\x11\x78\x5c\x94\x68\xa3\xf4\x05\xce\x7d\x01\x7c\x18\xe6\x55\x70\xe1\x01\x3c\x15\xdb\xc0\x07\xa2\x7c\x5b\x00\x47\x85\x04\x91\xcd\x9b\x41\xe6\x96\x50\x33\x91\x03\x12\x09\xb8\x4b\x76\x2c\xe0\xa4\x0a\x41\xc0\x02\xd6\x77\xa9\x1b\x8d\x70\xa3\x79\x76\x0f\x00\x00\x6f\xdd\xaa\x79\x75\xab\x06\xf0\x9d\x56\x7b\x97\xae\xb5\xf2\x66\x5e\x17\xc1\xd2\x7f\x19\xb8\x2b\xec\x0d\x50\x92\xac\x95\xb9\xc4\x92\x66\x4d\xbe\xcd\x1a\x82\xbe\x10\x1b\xce\x54\xd5\xae\x01\x4c\x92\x41\xb0\x81\xd0\x72\xe3\xad\x86\xe6\x62\xee\x16\x98\x6c\x53\xcd\xab\xd2\x2d\x81\x10\x75\xa1\x89\x26\xb8\xdd\xaa\x68\xc8\xeb\x8c\x0b\xad\xe2\x7e\xb7\xf0\x8f\x28\xa3\x4c\x17\x9e\x52\x0b\xae\x2f\x88\xf9\x83\x42\x96\x2d\x1d\xe9\x3f\x4e\x5a\x53\xf6\x24\x71\xa7\x6e\xef\x7e\x2e\xc7\xbc\xc3\x81\x58\x73\x9a\x5a\x9a\xdc\x32\x94\x9b\x09\x86\x17\xfb\xc1\x9b\xef\x78\x55\x0b\x52\xc7\x08\xfa\x42\x1e\x8a\x38\x4f\xc0\xcb\x4a\x43\x14\xa8\x11\x41\xf9\x88\x8c\xc7\xeb\x24\x41\x0c\x8f\xa2\x45\x4a\xf3\x08\x45\x24\x2b\x48\x84\xa2\x54\x08\x5e\x44\x63\x1d\x85\xb4\xb1\x02\x70\x4d\x37\xea\x8f\x55\x5c\x18\xdf\xa4\xda\x29\xee\xf7\xf7\x8b\xd7\x2f\xff\x9d\x19\x61\x5a\xd1\xed\x26\x7e\x7c\x60\xd0\x21\xb0\xc3\xad\x7f\x41\xb4\x37\x63\xfc\x24\x9d\xcc\x43\xa5\x65\x7d\xf2\x8c\x06\xe3\x6a\xb8\x61\x15\x51\x87\x8c\x96\x63\xe3\xcc\xdc\x48\x9d\x10\x43\x7d\xb4\xd3\x4f\x50\xa5\x84\xcc\x5b\x4b\x14\xb5\x14\xae\xe0\x7e\xc9\x83\x80\xe0\x0f\x1e\x7a\x8e\xfe\xd8\xbd\x19\xf6\xff\x08\xde\x4d\x7b\x39\x9b\x12\x10\xc4\xaf\x49\xef\xf2\xe4\xe2\xfd\xe1\xe9\xfb\xff\xe7\xf0\xea\xfd\xf9\xd9\xf5\xbb\xf7\x17\x97\x57\xd7\x67\xe7\xc7\x27\xd7\x97\x57\x17\xef\xcf\x7e\xc0\xa6\x20\xec\xde\x9b\xed\xe6\x53\x7a\x8d\x0d\xd6\xa6\x55\xac\xed\x1b\xa2\x72\x89\x17\x80\x96\x3d\x26\x4b\x70\x1f\x25\xb1\x40\x3e\x55\x26\xd5\x70\xa3\x46\x7b\x34\x97\xc0\x42\xa6\xe7\x0b\x2a\x04\x99\x82\x46\xe6\xce\x00\xd1\x1e\x5b\x92\xdc\x2f\xbc\x3b\x40\xf4\x59\x12\x66\x1d\x2f\x12\x74\xfb\x6d\x43\xa0\xb3\xb8\xde\x7f\xef\xd4\x29\xf3\x45\x2a\x26\x73\x32\xb5\x51\xcf\x0b\xd3\xe9\x1b\xd7\xaf\x3e\xca\xeb\xe1\x29\x2f\xc8\xfc\x61\xca\x53\x68\xf5\x9e\x8a\x79\xdb\x53\xfb\x6e\xe7\x4c\xb4\x8b\x72\xb9\x64\x5c\x90\x69\x94\x78\x0e\x95\xa9\x61\xbd\x8f\x4a\x5e\x30\x6e\x78\x17\xa5\xb9\x0a\x6c\xf8\xfe\x8e\x31\x52\x61\xab\xd5\x35\x8f\x59\xd2\xe9\x3c\xc8\xbf\x64\x3f\x61\x98\xf9\xea\xe5\x3e\xe6\x35\x73\xce\x10\xfd\x3b\x6d\x49\x0b\x65\x57\x60\x87\xb5\x51\x08\xec\x0f\xa0\x25\xaa\xeb\x2d\xfc\x1e\x62\xa2\x24\x92\xff\x70\xd5\xa4\x52\xaf\x8a\x73\xa2\x58\xf8\x9a\x5a\x71\x93\xb7\x53\x30\xf8\xd5\x1e\xbd\x20\x46\xbd\xc2\x69\xd0\xac\x5b\xeb\xd5\xaa\x9f\xb4\x4c\xd0\x00\x75\xf8\xe8\x1e\x40\x4c\x78\xaf\x3f\xde\x8a\xa1\x30\xa7\xb6\x37\xd2\x3d\xd5\x42\xb6\x53\x2d\x95\xd4\x2e\x51\x33\x92\xf2\x0f\xb4\x00\xe8\x6b\x98\x0c\x6b\x24\x1b\x4e\x88\xb6\x5f\xda\xc1\xd8\xa3\x6d\xc2\x4d\x04\x79\xde\x60\xde\xb0\x39\x21\xe4\xda\xbe\xd8\x87\x1b\xc9\x7b\x49\x8b\x24\x2a\xf3\x09\x3c\xab\x8b\x31\xeb\xf9\x70\xc1\xee\x48\x2c\x74\x80\x2e\x28\x69\xa6\x65\x3f\xa9\x66\x32\x72\xfc\x2a\x04\xc9\xf2\x72\xb8\xd7\xd7\xb6\x93\x1b\xe4\x42\x9b\xc6\x59\xf1\x44\xe6\x86\x59\x79\xef\x76\xf5\xd2\x12\xb7\x0e\x0d\xd3\x05\x11\x22\xcd\x96\x13\x2a\xa0\x7c\xeb\x7b\xac\xac\x34\x12\xc0\xa8\x57\x0f\x4b\xd2\xe9\x80\xb7\x3b\x87\x61\x95\x95\x9c\x89\xf3\x28\x71\x69\x84\xfa\x49\xa7\x73\x22\xe9\x2b\x30\xb3\x89\x2b\x30\xe0\x4f\x10\x97\x98\xbe\x82\xeb\x44\x32\x8c\xae\xde\x5f\x9d\x9e\x44\x3b\x18\xd3\x4e\x27\xba\x3c\xba\x78\xff\xf1\xca\xbe\x5d\xfd\x62\x3f\xa9\x9a\x7d\x88\x91\x50\xa4\x27\x76\x92\xb1\x82\xfc\x43\x33\x5b\xed\x5a\x75\x6a\x77\x77\xeb\x53\x8b\x72\xbc\x33\x08\xe6\x57\x3e\x63\x88\x84\x16\x73\x7f\x62\x7c\x25\x10\x37\x1f\xad\xca\x6c\xd1\xda\x04\xed\xee\x2a\xc8\x6b\x1c\xbc\x6d\x1e\x14\x3d\x73\x17\x6e\xce\xc7\x8d\xae\x77\xac\xd3\xb9\x57\x78\xf4\x44\xfe\x99\x40\x19\x6e\x88\xc6\x50\xd0\xef\xa4\x09\x52\x5a\xc3\x5d\x71\x5a\x5f\xce\xdd\xdd\xb5\x59\x10\x30\x05\x98\x86\x56\x07\x15\x5b\x34\x0b\xa0\x86\x06\x5b\xad\x7c\x83\x4a\xbf\x8e\x9a\x51\xa5\xf9\xf8\xe3\xd5\x87\xd3\x4d\x0d\x28\xab\xa4\xb7\x60\xdc\xa0\xac\x1e\x3d\x74\xe1\x5b\x80\x49\x7e\xc8\x19\x3f\x20\x06\x88\xf1\x2e\xf6\x85\x6a\x5a\x0c\xa7\x27\x15\xd1\xde\x92\x93\x3b\xca\xca\xc2\xa2\xb7\x70\xda\xf2\xa4\xe2\xf0\x07\x52\x25\xff\xaf\xd6\x22\xed\x74\xbe\xf2\x38\x4d\x8c\xe5\x42\xf3\x8e\x49\x6d\xfe\x2a\x12\x6e\x80\x87\x30\x8b\x24\x35\x9b\x3c\x78\xf8\x13\x57\x9b\x55\x5e\x31\x52\xf7\x36\x87\xb2\x46\x91\x33\x04\x82\xb5\x86\xd3\x57\x04\x86\xb9\x40\xa2\xa0\x3c\x58\x84\x4d\x5b\xd3\xc7\x54\xa4\xd3\x39\x07\x9f\x51\x9e\x74\x0f\x8e\x01\xbf\xc9\x7d\xde\xe9\xec\x9c\xcb\xbd\xb5\x9f\x70\xcc\x9b\x7a\xd3\xb0\x84\xc0\xee\x7b\xd2\x4f\x1f\x8e\xae\x02\x5e\xe5\x39\x40\x3d\x78\x89\xb1\x6c\x56\xe3\xc9\x83\x98\x3b\x1c\xa9\xed\x51\xbc\x14\x6c\x58\x35\xb7\xc8\x41\x97\x11\x4f\x9a\x74\x8b\xbe\xb7\xd4\xad\xc2\xc5\xd1\x1f\x57\x35\x8a\x37\x96\x54\xe8\x57\x85\x6b\xa2\xe8\x5b\x30\x30\xbc\xfa\xa3\x96\x67\x9e\x16\xe6\xd6\xf0\x4b\x13\xe0\xc8\x32\x01\xe0\x24\xc3\x6f\xca\xe6\xcf\xb6\x36\x12\xff\xf6\x09\xef\x74\xae\xe5\x20\xff\x09\x13\x1d\xf3\x0d\x27\x49\xe3\x60\x75\x47\xc3\xf1\xba\xa3\xbc\x46\x71\x6d\x1a\x87\xc4\x3d\x9d\xce\xa5\x5a\xa8\x90\x3e\xa3\xb3\x38\x9a\x0b\xb1\x1c\xbe\x78\x71\x7f\x7f\xdf\xbb\x7f\xd9\x63\xfc\xf6\xc5\x5e\xbf\xdf\x7f\x51\xdc\xdd\xea\x05\x4f\x17\xa4\x58\xa6\x13\xf2\xe9\xe2\x7d\x62\x37\xb5\x3e\xb8\xe5\xaa\xb7\x9a\x12\x7b\x82\x7d\x5a\x2e\x09\x3f\x4a\x0b\x12\x27\x6b\xd0\xe3\xf4\xd5\xac\x1a\xc9\xfe\xd1\x58\xa9\x61\xaa\x21\xf3\x9e\x8d\xb9\x59\x24\x88\x6b\x1c\x4a\x67\xb1\x1e\x4a\x74\xf5\xf6\xfc\xf8\x97\x08\x76\x83\x6e\x39\xa9\x7a\xff\x32\x16\x6c\x5c\x39\x9b\x41\xf5\xe3\xb8\x99\x33\x32\xae\x82\xfd\x99\xb6\x44\x56\x8d\x0e\x68\x44\x75\x5e\xc9\x06\x58\x2c\x88\xb0\x03\xc7\x55\x81\x9f\x77\x5c\x37\x4c\x53\x10\xde\xf5\x90\xc7\x14\x09\x38\x60\x58\x62\x85\xbb\x77\x1a\x46\x79\xa7\x13\xeb\x37\xcc\xb5\xd1\x1a\x85\x78\xdc\x13\x12\x53\xeb\xc6\x94\x25\x68\xb0\x61\x14\x7e\x3f\x6b\x2c\x9c\x1d\xca\x47\xce\x96\x84\xfb\xe2\x32\x5f\x58\xb6\x65\x1c\x76\xb0\x87\x70\xe9\xa3\x43\xd7\x5a\x96\xca\x1f\x07\xad\x8c\x23\x37\xe3\xc8\xed\x38\xe8\xd6\x71\x98\x4e\x56\x38\x69\x35\x88\x59\xd6\xc4\xc4\x7c\xfb\x28\xb6\x44\x63\x37\x22\x2e\x75\xbf\x44\xf3\x5b\x8d\x11\x6d\x1d\x71\x3e\xa2\x63\xd8\x67\x1a\xc0\x36\xb1\xc4\x26\x52\xaf\x3f\x30\xbf\xe3\x0d\x23\xbb\xa7\x59\x76\x24\xe9\xd3\x06\xbb\xcf\x40\xa9\xc8\x50\x95\x8d\x4c\x8f\x21\x04\x9a\xcf\xfe\x04\xf1\x4e\xa7\x71\x23\xe9\xfc\x4b\xb6\x74\xc6\xeb\x7e\xf7\xab\xbd\xf3\x3c\x6d\xe9\x8b\xd8\x0f\xca\xb7\x46\xd3\x8d\x04\xe9\xfd\x56\x12\xfe\x70\x49\x32\x32\x11\x8c\xc7\x7f\x2a\x26\x9c\x2e\xc5\xe8\x36\x5b\x70\x1c\xfd\xa9\x2b\xba\x7f\x8a\xc6\x7f\x4a\x3c\x0a\xcf\x1d\xbc\x70\x87\x4d\x16\x4c\xd4\xe7\x25\x14\xf4\xce\x95\x61\xa5\xea\x06\xb4\xee\x5c\x4e\x80\x53\xc6\x27\x9f\x2f\xf3\x39\xd2\x4e\xc7\x7f\xdb\xc1\x38\xdf\x4f\xfc\xf3\xd0\xff\x9a\xb4\xb8\xf3\xe1\x4f\x1d\x6f\xec\xd4\xa1\x3d\x42\xb9\x15\x30\xb3\x9a\xac\x03\xcf\xe0\x9b\x58\x40\xae\xbd\x2c\x36\x1f\xcc\x3a\x6e\xa0\xa2\x3c\x3f\x55\x4d\x04\x65\x23\xa7\xf4\x4e\xeb\x55\x31\xb4\xd3\x37\x8a\x41\x87\x70\x4a\x55\xa9\x2b\x75\xaa\xf8\x8b\x5c\xc9\x1a\x20\xc3\xca\x91\xe9\x2e\x9b\x1c\x49\x5c\xe5\x53\x00\xd6\xbc\x83\xd5\x5e\x5a\x37\xdd\x9a\x72\x73\x6b\x1a\xc0\xf3\xd6\xdb\xd0\xd3\xb1\x73\x74\xa7\x2f\x31\x6d\xe3\x5b\xaf\x32\x83\x26\x0e\x1a\x4e\x1a\x5b\x8d\xba\xc6\x46\x85\x5f\x57\xc5\x58\xbf\x5a\x04\x2b\xdf\xd9\x7c\x1d\xbf\xf3\x24\xcf\xd7\x7c\x23\xcd\xe6\x84\x97\xf7\x9b\x33\x29\x26\x9b\x6c\x64\xb2\x77\x15\x93\xed\xea\x3a\xf1\xeb\x72\x01\x9c\xbc\x0a\x94\x1d\xc5\xab\x04\x0d\xfc\x72\x97\x7e\xb9\xc1\x86\x8e\x9e\x6f\xeb\x68\xf4\x47\xb9\xaf\x6b\x44\xa8\x2d\xfc\x75\x7b\xe1\xf6\xe6\x92\x87\xbc\xaa\x1e\xda\xdf\xe7\x4e\x33\x94\x1b\xcd\x50\x7d\x71\x2f\xf1\x3d\x20\xeb\xc0\x55\xfd\x7a\x4d\x7a\x66\xcb\x99\xdb\x20\x7c\xcb\x41\x4a\x1d\x47\xff\x79\x9b\xd1\xc5\x82\xf0\x17\xa5\xa0\x59\x84\x46\x11\xf9\xba\x64\x5c\x14\x11\x8a\xc8\xe2\x86\xf0\xdd\x9b\xf4\x86\x64\xd1\xb8\x1a\xf2\x3d\x2a\x0b\xd2\x2e\x04\xa7\x13\x11\xb5\xb4\xbc\x5f\xd9\xd2\x99\xc3\x2c\x26\x28\xba\xbe\x26\xc5\x07\x36\x2d\x33\x12\xa1\x27\xa5\xfb\xb0\xd3\x5f\x4b\x4c\x9b\x16\x05\xe1\xe2\x8c\xdc\xd5\x51\x68\x28\x99\x8b\xca\x9c\x7c\x5d\x02\xfa\x6e\x97\x39\x27\xe9\x64\x2e\x91\x48\xfb\x86\xa7\xf9\x64\x1e\x25\x2d\xdf\x7c\x26\xf2\x72\x44\x88\x24\xc8\x7c\x14\x3c\x9d\x90\x58\x74\xa3\xf6\x70\xd8\x8e\xba\xff\x75\x79\x7e\xd6\x2b\x20\x0c\x2d\x9d\x3d\xc4\x24\xe9\x46\xed\x38\xea\x92\x6e\x94\x44\xc9\xda\x76\x0f\xd7\x68\xd2\x1d\x52\x93\xf5\x8a\xd5\x2a\x52\xd9\xe1\x5a\x35\xa5\x59\xc9\x89\xaa\x65\x4a\x96\x9c\x4c\xaa\x1e\xf3\x4c\x9f\xee\x53\x9e\xc7\xd1\xf1\xc9\xc7\x8b\x93\x23\x90\xcc\xcb\x9e\x11\x55\x90\x4e\x04\x4e\x11\xe9\xd1\xe2\x58\x3e\x36\xf0\x41\x0a\xaf\x93\x35\x64\x52\x0b\xd0\x90\x2d\x62\xf0\xc5\x19\xd4\x12\x17\x7d\x53\x16\x25\x79\x51\x72\xf2\x43\x49\xa7\x98\x81\xcb\x11\xa3\x6b\x08\x49\x14\x2a\xbf\x24\x1c\xd2\x00\x63\xbf\xab\xfb\x5a\x78\xee\xfe\x41\x4d\x27\xbd\xcd\x37\x68\xa9\x0c\xf6\xc5\x6b\xab\xaa\x60\x60\x5b\x18\xd8\xe6\xd8\x7e\x1b\x89\xb1\x2f\x55\xea\x74\x6a\xa3\xe3\x89\x73\x45\x90\x29\xd7\xc3\x35\xa2\x47\x93\xa7\x92\xb2\x69\x91\x11\x1b\x63\x3e\x62\x7e\x50\x13\x24\x8f\xbf\x2c\x3b\x2b\xb3\xac\xd8\x62\xcc\x0c\xd6\x5c\x4a\xd5\x19\x36\x25\xec\x46\x31\xe2\x63\x65\x1c\xe4\x50\x3f\x31\x11\x02\x9a\xf4\x6d\xad\xec\x9f\xb7\x69\xde\x26\x89\xd6\x79\x95\xdb\x39\x09\xea\x00\xc2\xa6\x4e\x11\x38\x49\x84\x3b\xb2\x5b\x56\x92\x6b\x8e\x2c\x5f\x10\x40\x02\x79\x84\x3c\xe7\x30\x5f\xcb\x16\xbe\x90\x87\x46\x3b\x47\xff\x32\x4f\x41\xa7\xba\x31\xad\x5a\xb1\xa8\xb3\xbe\xbe\x3f\xa2\x13\xb3\x7d\x61\x1e\xda\x82\xb5\x6f\x48\x7b\xc9\x49\x41\x72\x11\xb9\xbb\x37\x00\x47\xc8\x5a\xdf\x76\x9b\xea\x16\x61\x71\x6f\xf7\x6f\xd3\x6d\x0d\xb0\x44\x10\xed\x56\xd5\xaa\x46\x49\xbe\xce\xd3\xb2\x10\x35\xff\x08\xb5\xd1\xe9\x6c\x76\xf3\x4a\xbc\xb2\x6c\x84\x1c\x8e\xa3\x08\xe5\xb8\x0a\xec\x88\x7a\x10\x95\xbf\x19\x1c\xe4\xbb\x83\x61\x3f\x41\x0c\x0f\xf6\xd9\xeb\x5c\x05\xd8\x1c\xb1\xdd\xc1\xd8\xdb\x0b\xcc\xc1\x4e\x8a\xfb\xfb\xa9\x3b\x16\x52\x03\xe4\x05\x26\xa3\x74\x8c\x4a\xe7\xba\x85\x8e\xd2\xf1\x81\x0e\xbf\x2d\x9f\x93\x61\x14\xb5\x78\x17\x47\x51\xb7\xe8\x96\x6b\xe5\x6e\x8c\x03\xfb\x22\xe2\xe8\x73\xae\x2f\xa7\xf6\x4d\x70\xdb\x4e\x27\x1b\xf5\xc7\x3d\x45\x5d\xbf\xf8\x9f\xcf\xc5\xbf\xff\xe1\x45\xb2\x9f\x64\xbd\x62\x4e\x67\x22\x6e\xc8\x9d\x79\xca\xcc\xf5\x62\xca\x60\xca\x7a\x29\x43\x33\x3c\x78\xd1\x47\xe0\x69\xce\x90\x4b\xef\x18\x3f\x9f\x29\x17\x74\x8c\xff\x48\xb2\x25\xe1\xfa\xce\x2a\x4b\xf6\x77\xe2\x09\x9e\x3a\x15\x43\xed\x37\x6c\xa2\xb5\xff\x97\x78\xee\xb7\xf9\x22\x91\x7d\xd7\x8e\x42\x66\xf8\x43\x2a\xe6\xbd\x05\xcd\xe3\x19\x5a\x3a\x6f\x64\x0b\x74\x87\x47\x63\xf4\xf0\x3b\xba\xb0\xc0\x0f\x95\x2e\xdc\xe0\x85\xea\x42\xeb\x4e\xed\xe7\x1b\x4d\x7c\xcc\x12\xcb\x04\xde\xf5\x7e\x65\x34\x57\x93\xac\x90\xb8\x52\x41\x68\xda\x82\xe4\x0d\xee\xab\x3c\x67\x2c\xff\xc8\xe9\x82\x0a\x7a\x47\xb6\xe5\x7f\x09\x38\xc3\x58\x0a\x06\x1a\x0b\x36\xa2\x55\x0d\x0c\x9f\x43\x6c\x0e\xf8\xf8\x58\xef\x9a\xd1\xce\x00\xed\xf4\x15\x37\xa0\xa0\x6c\xec\x7c\xcc\xa8\x2e\x6f\xb3\x75\x26\x7f\x1c\x60\xdc\xef\x74\xc8\x6b\xfc\xe7\x97\xdf\x7d\xff\x1f\xfd\xbf\x0c\x06\x9d\x0e\x79\x83\x77\xcd\xeb\x9e\x3a\xa5\x26\x6c\x4a\xce\xc8\x6d\x2a\xc7\x8d\xa7\x70\xb4\x06\x49\x73\x9b\x4b\xc5\xd6\xbc\x23\x78\x69\x73\xd9\xa4\x85\xcd\xb5\x65\xee\xd6\xb6\xdc\xb6\x4c\x2d\x52\x75\x39\x81\xef\x6c\x41\x97\xf6\x60\xd1\x65\x43\x65\x74\x16\xd7\x1c\x5e\x58\x41\x11\xb1\x2e\x22\x88\x44\x34\xc5\xa8\x3f\x6e\xd5\x90\xcf\x91\xd2\x55\x51\xaf\x92\x7c\x10\x92\xbb\xb9\xc9\xc8\xa2\x1b\xb5\xff\x13\xde\x8b\x65\x9a\xab\xeb\xbe\x6e\xd4\xeb\xd9\x14\x92\x4f\x3d\x5c\x7e\x45\x16\xcb\xac\x4a\xa7\xc8\xee\x41\xdb\xea\x40\xe7\xa4\x28\x33\x51\x47\xef\xb5\x3e\x90\x4a\x1f\x48\xad\x0f\xc4\xf5\xa1\x82\xfe\x25\x9d\x26\x36\xce\x7b\x7d\xb6\x0e\xc8\xd0\xb8\x1b\xd7\x94\xd0\x97\xdf\x51\x5a\x15\x39\xe1\xfc\x77\x96\x51\xd1\x84\x30\xe9\x89\x72\x99\x11\x4c\x7a\x77\x84\xd3\xd9\xc3\xa5\x20\xcb\x02\x03\x25\x2a\x1f\xe5\xd2\xe5\xd3\x2b\x52\x08\xf3\x01\x54\x6f\xfc\x04\xb0\x7c\xbd\x62\x0a\x23\xe3\xe7\x15\x35\x88\xb2\x5d\xc6\xa4\x27\xc9\xc2\x4b\x22\xc1\xc3\x8b\x2e\xa3\x11\xbd\xbe\x91\xd3\x07\xf7\x8c\x13\xf2\x48\xe2\xd1\xd8\x8f\x2c\x23\x33\x73\x7d\xe1\xdf\x77\x5c\x1b\x0d\x22\x44\x5e\xdf\x4a\x22\xb0\xdb\xcd\x1d\x47\xc2\xea\x19\x56\x2b\x1a\x68\xa4\xa4\x71\x95\x74\xd0\xe1\x75\x95\x53\x6d\x75\x30\x35\xab\x50\x69\x46\x53\x51\xbf\xf1\x56\x07\x67\xe9\x74\xda\xb4\x5c\x8a\xa6\xf7\x01\xc4\xd6\x38\x22\x63\x6c\xec\x0d\xe5\xab\x1c\xca\x58\x1b\x90\x83\xb7\x0e\x70\x91\x17\x54\xda\x50\x9d\xca\xd5\xf6\x6b\x1d\xea\x89\xe8\x74\xea\x1f\xd5\x97\xb1\x0d\x3c\x64\x96\xad\xd0\x26\x64\x5b\xe7\x41\x79\xd9\x19\x8d\x43\x37\x7b\x56\x1a\xc3\x9b\x66\x46\x59\x01\xd6\x6d\x6b\xac\xa7\xbd\x6a\x54\x1b\xa0\x76\x78\xe8\x4c\xa3\x1e\xc5\xdf\x18\x38\xf9\x49\xfa\x24\x6d\x10\x34\xe0\xbe\x8b\x39\xe5\x0a\x8c\xc4\xee\x60\x8c\x3c\xef\x73\xf0\x9d\xc8\xd6\x73\xb1\xd1\x36\xbb\xb1\xad\xd7\xa4\xa1\x72\x32\x06\x4d\x61\x15\x4a\xa1\x41\x71\xae\x6f\xae\x76\xfd\x2a\x65\x91\xcd\xae\x19\x5c\xf6\xed\x8a\xef\xf4\x71\xbb\x00\x26\x68\xd1\x0b\x52\xa0\x76\x73\xd9\xfa\x9d\x2a\x5a\x99\xaf\x61\xd7\x32\x68\xe8\x7f\xed\x90\x6f\x0b\xa5\xd7\x29\xe9\xb3\xa8\x34\x2e\x73\xa2\x1d\xb3\x2b\x94\xad\xc8\x81\xfa\x6b\xb8\xb3\x8b\xae\xaf\x25\x6f\x0d\x04\xd7\x2c\x63\x8c\xc7\xf0\xc8\xd3\x7c\xca\x16\x71\xf2\xef\xc7\xa9\x90\xfc\xe2\x7d\x9c\x24\x5d\x99\x77\xed\x10\xd2\xd4\x0b\x8c\x66\x48\x82\x97\x1d\x4f\x44\x32\xf7\x10\x92\xa5\x19\x56\x5e\x86\xa5\xcb\xf0\x7f\xbd\xe4\x45\x73\xf2\x9d\xa7\x1c\x4a\x56\xb8\x9f\xbc\xee\x1f\xc8\x3e\x0c\x97\xa1\xd6\x5d\x35\xdb\x1b\xd7\xbb\x03\x59\xf5\x10\xf6\x95\x3d\x29\x66\x68\x34\x40\x92\x04\xae\x2b\x13\xba\xee\x3f\xc4\x77\x10\x15\x48\xbb\x7c\xbe\xc1\x93\x56\xf5\x84\xb8\x41\xb5\x43\x44\xed\x27\x54\x39\x6b\x6c\xaa\x7f\x32\xd9\x44\x73\x40\xa9\x84\xaa\x24\x48\x7b\x6b\x64\x3c\x14\x07\xfd\x27\xc8\x83\x5e\x2c\x59\xf6\x20\xf9\xe3\x22\x94\x09\xfd\xe3\x12\xa1\x9b\x72\x11\xa0\xa0\xb4\xdb\x55\x44\x2c\x38\x3b\xc7\x27\x88\x34\x59\x33\xe3\x4b\x9b\x2e\xdf\xea\xfb\x4f\x42\xfb\x34\xee\x03\xb1\x53\x77\xb0\x0e\x24\x21\x2d\x8e\x24\xa5\x7c\x95\xde\xde\x92\xa6\x53\x45\xdd\x1f\x62\x8c\xef\xd6\x41\x6e\xa0\xee\x3c\x07\xe1\x38\x33\xcc\xbe\xf2\x8f\x8d\x4b\x10\xe5\x70\xf1\x70\x95\xde\xbe\x63\x1c\x7f\x40\x50\x93\x7c\xfc\x55\x3d\x7e\x20\x22\x95\xaf\x1f\x25\x55\xe1\x2e\x82\x8e\xe9\xf4\x68\x9e\xe6\x95\x78\xd6\x57\x4a\x66\xa3\x00\x80\xa7\x93\x2f\xca\xbf\xc0\xb1\x5e\x7c\x97\x72\xa6\x89\xff\x72\x01\xdd\x3a\x85\x5e\xc3\xf7\x66\x03\x45\x2d\x51\x39\x92\xb5\x4b\x0a\xec\x4b\x83\xa5\xd7\x71\xac\x4c\xbc\x48\x9c\x58\x75\x60\x81\xcf\x3c\xd3\x2c\x59\x1a\x42\x13\x34\x5d\x89\xfc\xa4\x74\xb3\xf3\x86\xd6\x7f\x8b\x79\xb2\xb6\x5c\xf8\xe8\xdd\x18\x73\x94\x2b\xda\xb4\xde\x99\xf7\xea\xd0\x3a\x4a\xd0\x91\x12\xb4\x54\xfb\x74\x84\xdf\xdb\x18\x38\x76\xb1\x3e\x84\xdd\xb2\x51\x06\x76\x1a\x16\xfb\x1d\x48\x62\xd6\xe0\x91\xe2\xe7\x98\x8c\xde\x8d\x3d\xd8\x01\xd3\x7f\xfc\x93\xab\x19\xff\x8c\x20\x76\x90\xba\x69\xff\xcd\x4c\x20\x99\x1e\xa7\x22\x6d\x9c\x09\x09\x90\x3f\x93\xf4\xcb\x87\x74\x89\x72\x1c\x99\x2c\x8e\xc8\x30\xd7\xd6\x4f\xb7\x44\x04\xde\x52\x2a\x16\x13\xed\xd3\xf8\x57\x70\x98\x92\xa0\xbc\xd3\xd9\x01\xdb\xb9\x98\x26\x07\x31\xc3\xfa\xba\x8a\x26\x88\x83\x31\x17\x45\x2c\x49\x86\x0c\x73\x15\x7a\x1d\x8c\x6a\x8a\x4a\xed\xe0\x93\xe7\x43\x2c\x94\x25\x90\x2c\x25\x53\xd6\xeb\x40\x90\xf9\xa1\x14\x20\x06\x2c\xde\xe7\x87\xa5\x60\x42\xc3\xd4\x15\x4f\xf3\x22\x85\x7a\x24\xa7\x50\xe6\xdb\x3e\x17\x44\x6c\xf8\x78\x92\xdf\x61\xd2\xfb\xe9\xfc\xf4\xf0\xea\xfd\xe9\x89\xf7\x78\x7d\x75\x28\x89\xdf\x9f\x58\x96\x0a\xaa\x36\x2e\x71\x8e\xec\x31\x31\x61\x17\xb0\xdb\x6f\x98\xf4\x8e\x3e\x5d\x5c\x9c\x28\xf7\x08\xf2\x4d\xd1\x26\xfa\x93\x76\x9d\xe0\x3d\x9a\x6c\xe7\x1f\x3e\x7e\xba\x92\x8d\x1f\x9e\x9e\x9e\xff\x7c\x7d\xf4\xcb\xd1\xe9\xc9\xa5\x4f\x59\x6b\xf3\x95\x7f\xcd\x51\x88\xd8\xf3\xed\xc8\x53\xa5\xb9\xad\x1f\x4e\xdf\x7f\xf8\x70\x72\x71\xfd\xd3\xe1\xe9\xfb\xe3\xc3\xab\xf3\x8b\xeb\xcb\x5f\x3e\xbc\x3d\x3f\xbd\x7e\x77\x7e\x21\x3b\x22\xd9\xd8\xad\xab\x25\x7e\xe7\xe2\x73\xf4\xdc\xfa\xe6\x2d\x6f\xf6\xfb\x2d\xb7\x74\x83\x96\xb7\xf4\x67\xe9\x59\x4b\x89\xb6\x06\x2d\xc5\x31\xd0\x38\xba\x3a\xfc\xe1\x5a\x2f\x4f\xe4\x5d\x35\x95\x3e\xa6\x1e\x15\xe3\xd8\x3b\xa8\xb3\xd0\x29\xd8\x1b\xac\x33\xb8\x75\x2e\x2c\x69\xa3\x5b\xb8\xfa\xe5\xa3\xac\xbe\xb2\xfe\x13\xc8\x36\x7d\xc6\xf6\x83\x93\x3b\x5a\xc8\x79\x18\xb8\xf0\x09\x47\x73\x22\xf1\x81\x9f\xa4\x90\x85\x4e\xa0\x85\xb5\x38\xdf\xd1\x49\x45\x79\x23\x82\xc0\xc7\x2a\xe1\x6d\x39\x9b\x11\xae\x50\x90\xfd\x36\x9a\x8d\x31\x69\xd0\x2c\x18\x15\xe3\x0d\x04\xbd\xd7\x29\xd0\x92\xb4\x74\xb1\xeb\x49\x52\xeb\x7d\xb7\x9b\xda\xf8\x04\x64\x07\xe3\xd4\xf8\x27\xf5\x7a\xdf\xaf\x0f\x3a\x6d\x19\xd3\x13\x43\xce\xc3\x48\x5c\x84\x76\x35\x5f\x9e\x58\x5f\x24\x74\x16\x03\x79\xda\xa3\x85\x22\x53\x45\xe2\x89\xf5\xfb\xfb\xb9\x0b\x4e\xee\xf9\x0f\x15\xa3\x7c\x0c\x6b\xdb\xe2\x5a\xb4\x97\x7e\x8d\x29\xe2\x4a\x47\xd9\x04\xec\x50\x39\x98\xe5\x04\xaa\xf3\x7a\xe0\x15\xe6\x95\x05\xb3\xc6\xbd\xcd\x8b\x11\x94\x64\x49\xb2\xae\x2c\x37\x77\xc7\x66\x6d\xd9\xed\xf5\x43\x58\x06\x0e\x41\x8b\xe5\x1a\x35\x0d\x50\x8e\x45\x2b\x97\xb4\xc9\x01\xf7\xe1\x66\x18\xf3\xa6\x8e\xc2\xf8\x91\xcb\xa9\x6f\x9b\x34\xca\xf4\x71\x08\x71\xc0\xdc\xed\xa6\xda\xbb\xdc\x1c\x4f\x6d\xee\x96\x57\x70\x0e\xbb\x63\x89\xa7\xae\xbb\x9e\x11\x52\x95\x18\x1b\xc8\xfd\xe7\xc6\xb5\x84\xc2\x77\x58\x7d\x7c\xe9\xed\xec\x07\x7f\x67\x03\xfd\x55\x41\xd7\x77\x9a\x52\xde\xc4\x46\x3f\xbf\x2f\x74\x86\xb3\xf4\xcc\xf2\xe8\xfe\x29\x73\x03\x0d\x28\x2f\x78\x37\xad\xca\x81\x74\x0b\x1f\xaf\xff\xf1\xd6\x53\x17\x98\xd8\x1d\x52\xd7\x50\xfb\x3d\x34\x7d\xed\xe6\xe4\x24\xbc\x8a\x02\x97\x2d\x7d\x94\x63\x77\x2b\xfc\x3a\x77\x37\xc3\x54\xdf\x0c\xef\x60\x7c\xd7\xe9\x08\xa3\x98\x61\x7a\x76\x19\x0b\xff\x2a\x3c\x88\x5d\xa9\xbd\xfe\x54\xa2\x57\xde\x55\xc2\x55\x92\x51\x7f\xdc\x9a\x92\x59\x5a\x66\x62\xe8\x6e\xc7\xa6\xf1\x9e\xbb\xbf\x32\xd0\x46\x90\x58\xaf\xc3\x63\xf9\x1e\x06\x79\x8e\x17\x71\x82\xbe\xc2\xef\xa1\xfc\x6d\x95\xf1\x79\x82\xe6\xf2\x07\x9e\x96\xf1\x39\x3a\x89\x47\x5f\xd1\xe1\x38\xd1\x49\xf3\xf8\xab\x7d\x3a\xf4\xb2\x1d\x56\x53\xa1\x85\x2b\x7f\xd6\x15\x37\xfb\xc5\xa7\xc4\xdc\xfc\x7e\xf0\xb7\x97\x72\x5f\x49\x92\x20\x98\x8b\xa7\x2e\x0d\xce\x2d\xfd\x88\x8c\x9d\x4e\x3c\x8f\xf3\x04\x5d\x81\xb1\xbc\xad\xf4\xa3\x13\x6a\xd8\x2a\x9b\x0d\x1f\x4d\xac\xa8\x2f\x2a\xa2\x12\x02\x77\x4c\xae\xa2\x5f\x43\x25\x20\x2f\xea\x84\x6c\x62\xc8\x6d\xdc\x79\x51\x6f\x80\x76\x3a\x31\x85\x39\xce\x35\x79\x47\x93\x04\xa9\xc0\x96\x17\xdb\x25\x51\x22\xbd\x2d\xa0\x6b\x97\x44\x38\xac\xe8\x44\x51\xdf\x28\xa4\xb3\x75\xc9\x2f\xd6\xdf\x0e\x54\xa5\xa2\xed\x6a\x5e\xaf\xf9\xdc\x92\x05\xe5\x42\x28\xc5\x90\x82\x3e\x5a\x59\xf9\x9d\x4c\x1e\xd4\x92\x6d\xed\x2d\x7b\xdd\x6a\x77\xe4\x36\x46\x5c\x58\xc1\x58\x92\xa0\x93\xd8\x06\x68\x54\x1c\x07\x7a\x0f\xf7\xb6\x66\x8e\x8e\xe3\x0a\x53\x42\xee\xdb\x17\x6e\xc1\xce\xec\x18\x8e\x4c\xe3\x96\x43\x71\xdc\xad\x4f\xb2\x9c\xca\x9e\x18\x8e\xac\xd3\x39\xd2\x73\x05\xf3\xfc\x4e\x12\x29\x47\x87\x47\x3f\x9e\x5c\xff\xf7\xc9\x2f\x91\x82\xed\x47\x99\xf8\xee\x2c\x4a\xd0\x27\xf9\x74\x7a\x78\x79\x25\x09\xbe\x4f\x27\x51\x82\xde\x6a\xaa\x26\x4a\xd0\x8f\xf2\xf1\xf2\xec\xf0\xe3\xe5\x8f\xe7\x57\x51\xd2\xa2\x71\x74\x7c\xf2\xf6\xd3\x0f\xd7\xa7\x87\x6f\x4f\x4e\x7d\x82\xea\x27\xc7\xf5\xa9\x6d\x10\xc7\x02\x3f\xad\x93\xd1\x23\xc8\x4b\x47\x9f\xc6\x46\x94\x20\x46\x6f\xbd\xe7\x1f\x95\x3b\x4b\xcf\xcf\xbf\xad\xf2\x37\x59\xe5\x1f\x62\x82\x22\xc3\x2b\x45\xc6\x3d\x2f\x19\x3d\x8e\x21\xaa\xf0\xdb\xb1\x44\x63\xa3\x1f\xc3\xd0\x49\xbc\xd3\xc9\xc0\x43\x57\x72\x1a\x73\x1d\xe0\xc8\xf2\xa2\xb2\x2b\xc2\x63\xfe\xb8\x64\x48\x91\xac\x4a\x52\xa2\xb2\x43\x65\xcc\x13\x74\x0a\x26\x31\x16\x63\x7d\x1a\xbb\x8e\xfd\x6c\x3b\xa6\x19\x3a\xaf\x5f\x6f\x2d\xbc\x3c\x04\x78\xf2\x0f\x71\xf2\xa4\x82\x9d\xfc\xe0\x83\x2a\x9d\xc5\x4d\xa4\xfa\x6d\xc6\x6e\xd2\xec\x6a\x4e\x0b\x03\x97\x2e\xa5\xb5\xa1\x4c\x41\xb2\x99\xc9\x2d\x9f\x37\xe5\xbb\xa7\xf9\x94\xdd\x9b\x9c\xea\x6d\x53\x5e\xd5\x6a\xd8\x87\xfa\x8d\x52\x09\x06\x2d\x6d\xc1\xda\x19\x93\x34\xbf\xce\xd8\xd6\x9a\x16\x89\xdc\x07\xbf\x60\x16\x47\x75\xd6\xe2\xe2\xe4\x87\xf7\x97\x57\x17\x20\xc1\x8c\x12\x4b\x5a\xfe\x30\xfa\x65\x5c\xbf\x35\xba\x9a\x93\xf6\xdf\xea\x22\xa7\xbf\xb5\x33\x7a\xc3\x53\xfe\xd0\x9e\xa7\x45\xfb\x86\x90\xbc\x4d\xf3\x49\x56\x4e\xc9\xb4\x2d\xee\xe9\x84\x48\xe6\x5c\xee\xeb\x76\xba\x5c\x66\x74\x02\xfc\x48\xaf\xfd\x5e\xb4\x27\x10\x71\xe3\x86\xb4\xa7\x74\x06\x0e\x6f\x44\xfb\x8e\x70\x49\xbf\x14\x6d\xc9\x54\xcf\x49\x7b\x99\x4e\xbe\xa4\xb7\x04\xb5\x19\x87\xf7\x22\x5d\x10\x93\xa9\xda\xcc\xcd\x43\x7b\x41\x0b\x91\x7e\x21\xbd\xe6\x7e\x4e\xc9\x92\xe4\xd3\xa2\xcd\xf2\xf6\x3c\xbd\xa3\xf9\x6d\x3b\x6d\x17\x34\xbf\xcd\x48\x7b\xc2\x96\x0f\x95\x36\x65\xb7\xcb\x82\xb4\x53\xd1\x4e\xf3\x87\xb6\xa0\x0b\x48\x4a\x73\x7f\x1c\xa8\x4d\xee\xe4\x80\xa1\xe4\x43\x3b\xe5\xa4\xd6\xcd\x5e\xfb\x17\x56\xb6\x17\x65\x21\xda\x53\x32\x2d\x97\xa4\xfd\xc0\x4a\xde\xbe\x29\x69\x36\x95\x8b\xa6\x74\x3b\xa0\xd8\xb4\x54\x15\xdb\x3e\x14\xb2\x45\xc6\xa7\x84\xcb\x9c\x4b\x2e\x1b\x13\x6a\x32\xe1\x9a\xaf\x17\x25\x2d\xb9\x58\x78\xa7\x2e\x12\x5c\xf8\xb2\xc0\x7f\xb2\xe0\xcf\x06\xe2\x3e\x5f\x6e\xba\xfc\x86\x1b\xe2\xc1\x9f\xf5\x15\xdf\xa6\x6c\x83\xef\x54\x86\xaa\x77\xd1\xc6\xec\xaf\x31\xdc\x91\xff\xe1\xae\x8f\x49\xef\x0f\x62\x00\xbf\xf0\x5c\xc0\x73\xa1\x9e\x97\xf2\x97\xa7\xf2\x77\x06\xcf\xcb\x09\x26\xbd\x2b\xb2\x58\x32\x09\xa6\xb6\x09\xd2\xbb\x4c\xef\x88\x75\x5b\x6a\xe4\x05\xaa\x00\xfc\xf3\x14\x58\x5c\x59\xcd\x5e\x4b\x55\xfd\xb2\xa5\x1a\x7a\xd5\x52\xcd\xfe\xb9\xa5\x3a\xf1\x5d\x4b\x75\xe9\x3f\x8c\xbc\xa1\xa5\x3a\xfa\x3d\xaa\x36\x23\x50\x40\xb3\x8f\x48\x4f\x56\x37\xc6\x51\xd1\x8f\x10\xbc\x0e\xf0\x9f\xe5\xeb\x20\x5a\xc7\x62\xb5\x8a\x6b\x15\x48\xc4\x2e\x57\xa1\x3e\x24\x5e\xab\x5b\x76\x6d\x8c\x23\xa1\xeb\x96\x3d\x94\xaf\xb2\x6e\x0e\x75\x37\x54\x02\xf5\x57\xe1\xe9\x9e\x72\xb2\x3b\x63\x7c\x91\x8a\x6f\x05\x2c\x8b\x7d\x45\xa3\x3f\x12\x9b\x54\x65\x1d\x3b\x1d\x31\xea\x8f\x25\x6d\xb0\x5e\xff\x5d\xc0\x09\x32\x10\x5a\x34\xd8\x44\x78\x7a\xa3\xaf\x64\x03\xa3\xfe\x78\xb5\x1a\xfc\xd9\x3e\xee\xed\xb9\xd4\xef\x5c\xaa\xcb\xbb\xf7\xd2\x65\xf8\x0f\xfb\x68\xbe\x2b\x60\x3e\xd4\xf7\x31\x4d\xcd\xee\x0d\x5c\x55\xfd\xa0\x94\xd2\x52\x69\x2a\x13\xce\x0f\x49\x3a\x9d\x97\x61\xd1\x1f\xe0\x56\x99\x16\xef\x7c\xbb\x83\xe0\x62\x59\xc4\x83\x3d\xc9\xac\x54\xf2\x98\xfb\x64\x11\xbf\xd4\x9f\x65\x55\xb9\x59\xfb\x82\x2e\x96\x19\xd9\x9d\xb2\xc5\x8b\x29\x9b\xc0\x98\xfe\x85\xfa\xa6\x9a\x45\x09\x07\xe2\xd3\x71\x56\xbd\x3e\x14\x35\x6c\x0c\x55\x42\x67\x31\x0d\x2c\x90\x14\x09\x4f\x7b\xf2\xdc\xcc\xb4\xb1\x11\x77\x5a\xb8\xfa\x12\x6b\xb0\xf6\x2f\xdb\x9d\x6c\xaa\xc1\xd8\x69\xf0\x97\xbf\xfc\xe5\xc5\xd7\xb9\x58\x64\xa0\x80\x71\x20\x7a\x82\x9d\xb2\x7b\x63\xb9\x34\x14\xc1\xb5\xbc\x63\x0b\x28\x36\x63\x69\x99\x46\x21\x7a\x89\xba\x6e\x1d\xd1\xb1\x71\xea\xe1\x6e\xec\x1b\x4b\xef\xef\x0e\x94\x89\x31\xb1\x76\x39\x68\xe0\x91\x41\x05\xe4\xd3\x71\x8c\xcd\x55\xb9\x25\x37\xd2\x4e\x27\x4e\x71\x14\x75\xd3\x44\x4b\xf0\x88\x67\x35\x25\xa7\xaf\x80\x09\x0a\xd3\xe5\x92\x58\x79\x4d\x89\xf3\xb8\x50\x6e\x41\x21\xe8\xd4\x0e\xc6\x65\xe2\x71\x35\x31\xb8\x88\xd1\x41\x90\x93\xb5\x8e\xfa\xf4\x64\x17\x60\xc8\x90\x5c\x20\x17\xd9\x85\x0d\x69\x37\x1a\x46\x5d\x95\x6e\x16\x6e\x28\xd0\x92\x93\x19\xfd\x3a\xa4\xa8\x58\x92\x09\x9d\x51\x32\x75\xce\xda\xd2\xb5\xa2\xbd\x37\x5d\xd6\x1b\xbe\x26\x67\x53\xe2\x5d\xaf\x67\x9e\xad\x96\x0d\xd7\xd3\x60\x00\x44\xab\x7e\x5c\xed\x01\xa5\xd8\x17\x28\x0a\x5a\x0c\x23\x32\xd6\xea\xf9\xbf\x3f\xe8\x0f\x9d\xc5\xae\x63\x4e\xbd\x40\x76\x72\xd0\x72\xb7\xc5\x7d\x73\xc3\x2f\x07\xe3\x7b\x9d\xb0\xd6\xfd\x44\x9b\x0d\x8d\xc8\x18\x0b\x99\x3b\x50\x2e\xf5\xac\xfc\xae\x8d\xa2\x9d\x09\xc9\x6a\x66\x81\xec\x93\xd7\x1c\xea\xf1\xd4\x25\x46\x64\x1c\x88\xc0\xae\xab\x77\xe5\x55\x89\xae\xda\xa1\xf5\x6b\xaa\x41\x45\xbf\x3e\x16\x55\x43\x41\x8d\xa5\xc0\x67\x55\x4c\x7a\xec\x3e\x27\xfc\x58\x23\x24\xe4\x8a\xea\x47\x09\x47\xc8\xd3\x66\x96\xec\x4d\xad\x8d\xdc\x87\xe0\x8a\x0a\x55\x80\x06\x5c\xa8\x34\xa1\x3c\x3d\x6f\x45\x31\xa2\x06\xd0\x1e\x76\x51\xa0\xad\x50\x50\x08\xce\x21\x5a\xb2\xb0\xdd\x53\x0f\x4d\x20\xae\x0d\xd8\xd6\xde\x5d\x5e\xec\xef\x4a\x17\xba\x2d\x5f\x6b\x69\x88\x48\x9c\x5d\x59\xe0\xed\x82\x61\x6a\xa0\x85\xee\x27\x0c\xd3\xc0\xd4\x34\xef\x69\x0b\x52\xd0\x3e\xa6\xbd\x49\xc6\x72\x02\xd6\x34\x3b\xfd\x24\x41\x14\x33\xd7\x92\x5d\xf2\x89\xc1\x4f\x20\x33\xf0\xcf\x05\x65\x94\x28\x99\xff\x01\x98\x76\x9a\x35\xf1\xb1\x44\xbb\x5e\xa0\xde\x6d\x2f\xf8\xaf\x31\xf2\x6b\xf9\xdf\x15\xe7\x4f\xb4\x6c\xdb\x24\x68\xeb\x24\x8a\x52\x4c\x5b\x35\xe3\x77\xcc\x8d\xfd\x13\x3f\xf0\x5d\xb8\x60\x3a\x0c\xcc\x84\x30\x6d\xf9\x96\x5a\xe9\x7e\x92\x7a\x76\xe5\x58\x20\x86\x53\x94\xe2\x34\xd8\x69\x2c\xf4\x77\xe2\x59\x5a\x79\x7d\x64\xc3\xbc\xd6\x29\xb6\x8e\x05\x22\x30\x0f\xd6\x78\xce\x6b\xae\xd3\x99\xc5\xfe\xbb\x84\x77\xff\x1d\x5c\xad\xd4\x07\x2a\x9a\xbb\xc3\x0f\x82\x49\x14\x95\x81\x8b\x96\xed\xb6\x3f\xb5\xa2\xa1\xdb\x62\xad\xc2\x86\xb8\x7a\x6d\xfe\x21\xaf\xe6\x0e\x1c\xd8\xcd\x14\xc2\xd8\x00\x3b\xc1\xd8\xb4\x87\x9a\x6a\xdb\x0d\x8e\x6b\x20\xa9\x79\x90\x79\x65\x90\x79\xf3\x20\x79\xc3\x20\xb9\x1a\x64\xad\x07\x61\xe3\xbe\x73\x3e\xdf\x02\xe0\x1a\xfc\xe5\xca\x81\x14\xad\x30\x08\xa4\x3d\x8f\xd4\x49\x36\xdf\x74\x92\xc9\x09\x96\x07\xba\x89\xfd\xea\xa3\x46\x73\xb4\x99\x2d\x66\x82\x99\x1a\x24\xa9\x63\x8f\x78\x66\xe7\x54\x27\xf8\x34\x12\xd3\x2e\x4f\xab\x73\x0e\x89\x8d\xd3\x3e\xd7\x8e\x64\xeb\xa9\xd5\xdd\xe9\x5d\x3e\x85\x69\x1e\x72\xd6\x77\x3a\xde\x54\x19\x25\x98\xbb\xcd\xb1\x43\x2c\x92\x6a\x3a\xa7\xb5\xc1\x20\x88\x3a\x94\xb7\x5c\x0f\xc3\x35\x15\x98\xa8\x02\x44\xdb\x7d\x13\x17\x1d\x5a\x85\x4b\x69\xf6\x8f\x67\x4b\x09\x5d\xc4\xb3\xe2\x68\x6a\x65\xa6\xf3\x07\x0d\x1c\x4e\x7f\x4d\x27\x24\x17\x15\xf7\x20\x5e\x44\x64\xed\xe5\x43\x7b\xbf\x0b\xcf\xc6\xdd\x01\x8a\xfe\x8d\xa7\xf7\x11\xe2\x5a\x8b\xcf\x86\x1f\x11\xea\x9a\x20\xba\x81\x11\x80\x82\x4a\x34\xd4\x36\xaa\x1e\x2e\xd1\xf1\x71\x5d\x90\x8d\x28\x9d\x09\xc2\x83\xfc\xc6\xb3\xbc\x87\x9b\xbd\xfc\xaa\x01\x92\x4f\xbd\xec\x80\x89\xab\x75\x7a\x59\xea\x3d\x08\x30\xa9\x2a\x69\xae\x30\x6a\x82\x2a\x9a\x83\xd0\xa7\xbd\x04\x25\x72\x96\x47\xc9\xda\x9d\x15\x75\xcf\x5f\xa2\x1b\xb5\x39\xf9\xad\xa4\x9c\x14\xed\xb4\xed\x9a\x8e\x92\xd6\x24\xce\x11\x43\xd4\x18\x10\x37\x73\x94\x6a\x37\xd3\xb8\xb6\x77\x90\xbb\x33\x60\x71\x05\xae\xb5\x39\x6e\xad\xe6\xb3\xcb\x66\x68\xaa\x57\x60\xa2\xd4\x34\x5b\xff\xab\x10\x2e\x3a\x42\xb1\x41\x7d\xa8\xb9\x93\x0d\x15\x55\xba\xe1\xee\x2f\xea\x03\x27\x88\x6b\xe4\x8a\x89\xb5\x9e\x8f\x86\x91\xe3\x65\xf4\x35\x0b\xc7\xc6\xa2\xb3\x8f\xf2\x04\x09\xfb\x9a\x77\x07\x49\x82\x46\x1c\x89\xf1\x3a\x16\x49\xab\xb0\xfb\x6d\xd4\x1f\xa3\x7c\x34\x18\x6b\x03\xf4\x8a\xad\xfb\xb7\xaf\x42\xba\x6d\xfa\x2b\xb5\xd6\x56\xa0\x5e\xd8\x4c\xbd\x22\xe8\x9b\x9c\x67\x78\xb7\xa7\x6a\x67\xa2\x01\xaa\xf8\xb1\x50\x5d\xd8\xce\x45\xd6\x5b\xf1\x7b\x57\xf5\x05\x6b\x5b\x7a\x96\x35\x15\x07\x3c\xec\xcc\x90\xfb\x33\xa2\xb5\xf3\xc8\x57\x51\xf3\x7b\x54\x6f\xee\x25\x8a\xfe\x4d\x90\xaf\x22\x42\xc2\x20\x19\x57\x47\x93\x83\x94\x7a\x15\xdf\xa3\xe8\xdf\x26\x2a\x67\x63\x2d\x17\xe9\xbd\x44\x80\x97\x44\xa9\xac\x6c\xaf\xcc\x21\xbd\x86\x9a\x0c\x6a\x7c\xc7\xd3\xdb\x0d\xa1\xab\xfd\x99\x94\x55\x19\xd1\xc7\xee\x4c\x97\x89\x7c\xe3\x99\x64\x2b\x6f\xa7\x5d\x89\x6c\xd5\x34\x36\xc7\xb1\xb3\x10\xb7\x27\x5d\xad\x9c\x77\xb7\xe6\xd3\x0e\xd5\x7b\x43\x17\xad\x32\x38\x37\xe5\xc8\x4a\xe5\x11\x41\x1e\x32\xa6\xbd\x29\x9b\xc8\xd3\x73\x6b\x27\x1d\x6e\xf7\x8b\xc1\xbc\x68\xc0\xdc\x5a\xdc\x9e\xf1\xb6\xf4\x9c\xa4\xd3\xad\x45\x2a\xd5\x37\xf5\xe0\x86\x4d\x1f\x7e\x57\x1d\x5e\x37\x0c\x97\xaa\xb4\x20\x6a\x53\xac\x78\x4d\x58\xe7\xbf\x78\x30\x10\x7d\xd3\xa6\xd5\x1a\xdb\xf3\x98\xa0\x41\x5f\x66\x5e\x64\xdf\x58\x90\xbb\x82\x28\x92\x20\xff\x8d\xe5\xf2\xa0\xdc\xc9\xe1\xf1\x37\x96\xa3\x7e\x39\xf0\x80\xf3\x4d\xe5\x9c\xe9\x82\xcf\x1b\xe6\x09\x0a\x13\x28\x98\x8d\x7b\x09\xa2\x9a\xc0\xe5\x2a\xb4\x9c\xac\x6f\xa9\x45\x8f\x37\xe9\xe4\xcb\x4d\xc9\x73\xc2\xff\x85\x02\x47\xb8\x92\xf9\x98\xa5\x62\xc6\xf8\x02\x8c\xab\x1b\x45\x90\x05\x11\x57\x74\x41\x58\x29\x42\xdd\xd8\x75\xc5\x28\x87\xce\xe2\x06\x55\xd1\x8f\x9c\x2d\x68\x61\xcf\x2b\xfd\xda\xe3\xa4\x60\xd9\x1d\x71\x8e\x6d\x1b\x20\xba\x27\xe6\x24\x87\xf0\x59\xcd\x55\x1b\x65\xbf\xf3\x9b\x82\xf0\x3b\x62\x8f\xec\xbe\x5e\xe6\xea\x77\xc9\x5e\x31\x6c\x40\xbb\x82\xf4\xe3\xc8\x2d\x33\xed\x31\x55\x24\x66\xe8\x69\x32\x4f\x79\x3a\x11\x84\x1f\xa7\x22\x55\x53\xd7\x80\x43\x71\xb7\x9b\xff\x71\x0f\xb1\xde\x34\x15\x20\x53\xcc\x51\x6e\xef\x73\xeb\xf9\xb9\x0a\x8d\x5e\xb1\x5a\xd2\xca\x29\x46\xb9\xd6\x4d\x7c\xa0\x3a\xe9\x5d\x33\xf8\x07\xe2\x06\xbf\xfa\x2e\x2c\x85\x30\x2a\xfa\xf5\xee\x10\xfb\x11\xfc\x3a\xaf\xe3\xb8\x91\x26\x73\x1d\x52\x21\x03\x93\x04\x81\xd1\xf7\x73\xbd\xfc\x5f\xef\xa3\xe3\x41\xbc\xee\x68\xed\x88\x9c\xdd\x37\xa0\x4b\xa7\xc5\xba\x46\x92\xd4\x1e\x4a\x10\x56\xa3\x39\x93\xaf\x42\x79\x88\x4f\xf1\x8b\xcf\xd3\xee\x8b\x96\x2f\x51\xb6\xb6\x3f\xda\xe0\xaa\x55\xb5\xc3\x93\x1c\x2d\xc1\x98\xac\x56\xce\x3a\x4b\xa6\xa5\x3d\x41\x0a\x11\x58\x69\x04\x8a\xa1\x3d\x96\x03\x85\xbe\x5a\xd9\xc7\x2b\x88\x70\xd5\xe9\x54\x12\x46\xf6\xfd\x03\x11\x73\x36\x1d\x57\xd4\x49\xc3\x4b\x82\xdd\x01\xa2\xb8\x0f\x3e\xe3\x8d\x93\x81\xd7\x6c\x9f\x76\xf1\xab\x84\xce\x62\x3e\xa2\x63\x75\x84\xf2\x11\xed\x0e\xc6\xca\xe9\x65\x8e\xa9\x62\x3b\xd6\x5b\x84\x5d\x95\x26\xf6\x1a\x9a\xf8\x6e\x6b\x13\xbb\x7b\x1b\x1b\x99\x6d\x88\xbe\xdb\x77\xc6\xd8\x39\x1e\x8d\xb5\xfb\x04\xe2\xdc\x27\x18\x97\x9d\x0c\x93\x11\xed\xbe\xec\xf2\x31\x4a\xf1\x93\x0a\x15\x36\x94\x49\x7d\x99\xb4\x80\x79\x83\xf7\x01\x64\xe1\xb7\x05\xbc\xed\xc9\x37\x15\xee\xc2\x4a\x28\x58\xa7\xa3\x23\x87\xd0\xbc\xcd\x0e\x98\x32\x96\x1a\x46\xd1\xba\x95\x9b\x08\x60\x0d\x43\x98\x56\x5c\xa3\x80\x4a\x76\x1f\xdc\xdc\x6b\x8b\xf3\xef\x60\x9a\x12\xf2\x06\x8b\x11\xc7\xb4\x1b\xe7\x38\x66\xbb\x34\x79\xf1\x5d\xb2\x9b\xff\xf1\xbb\xf1\x01\xc5\xbc\xfb\xdd\x90\x61\xde\x72\x77\xc8\x62\x44\xc7\x07\xb4\xfb\xdd\x90\x3e\x2b\x2a\xe1\x35\x5f\x25\x4f\xeb\x04\x55\x66\x54\x26\x29\xd2\xe9\xb7\x92\x94\xe4\x2d\xa1\xf9\x2d\xdc\x9a\x91\xa9\xb5\xec\x53\xd3\xf7\x57\xf9\xbd\xb0\x0a\x60\x4a\x49\x54\x32\x40\xb8\xef\xd7\x60\x4b\x81\xa3\x17\x2d\x94\x61\x4b\xd0\xcb\x36\x32\x19\xa5\xb3\x71\xae\x13\xf9\x36\x15\x2d\x98\xec\x77\x8c\xd7\xc4\xd6\xaf\xbd\x36\xad\x2e\xa0\xa7\xc8\xab\xbe\x8c\x5e\xfe\x3b\xe9\xbe\x72\x86\x62\x07\xba\x46\x75\x51\xb1\x46\xa2\x07\x5e\xc0\xea\xbc\x15\xe2\x26\xac\x9c\xee\x3b\x68\xae\x29\xf6\x1e\x31\x9c\xf7\x80\x8b\x6f\xd5\xe6\x47\x39\xc2\x88\x13\x64\xb5\x96\xeb\x13\x6b\xdd\x0f\xc4\x9b\x66\xde\x4b\xaf\xcc\xad\x59\x40\x75\xf3\x45\x35\x4d\x97\x6e\x6a\xaa\x45\x67\x71\xaa\xdb\x7b\xd3\x37\x6e\x17\x14\x59\x1c\x2e\x43\xd2\xe2\xb8\x38\xd0\xab\x7a\xc7\xbe\x40\x0c\xb4\x73\x85\x67\x86\x5e\xb2\xdd\x80\x3a\x9a\x20\x80\xc0\x7e\xf6\xda\xb4\xb2\x9f\x69\xd4\xe2\xbe\x76\xf1\x2b\xe3\x10\x35\x16\x38\x1d\x65\xdd\xc1\x38\xe9\x74\x78\x9c\x8e\xb2\x31\x12\x48\xa6\xec\x8d\x51\x01\x0f\x2f\x4d\x60\x5d\x28\xba\xf3\xfc\x24\xd6\x87\xd2\x5b\x94\x85\xf8\x85\x92\x6c\xba\xfd\x6b\x6c\xfd\x2a\x0e\xd6\xfe\x76\x67\xf1\xc6\x3d\xd1\x33\x57\x65\x21\xfc\xef\x48\xae\xdf\xf8\x6c\x0b\x60\xf2\x4d\x5f\xa7\x02\x9c\xc5\xe0\x03\x4c\xf4\xe6\x69\xf1\x33\xe3\x9b\x22\xc6\x6d\x6e\xf7\x4d\x5f\xf9\x7e\xaf\xb6\xa1\x02\x87\xe7\x13\x92\x35\xfa\x5e\x51\x00\x0a\x1e\x60\x15\xea\x33\xb0\xad\x41\x8c\xe2\x3a\x1c\x57\x55\x47\x25\xb4\x69\x1b\xe4\x98\x1b\xbf\x67\x99\xf6\xbb\x68\x05\x3f\x6f\x76\x07\x07\xb1\xf5\x2f\xc8\xd0\xab\x04\xed\xf4\x93\x61\x6c\xb3\x6e\x5a\xce\x24\x79\xb3\x3b\xe8\x74\xe2\x7c\xc4\xe4\x19\x01\x74\xb9\x9e\xac\x8a\xc1\x30\x0a\x63\xbb\xf8\xd3\xa1\xd4\x22\x75\x06\xf4\x04\x89\x00\xbb\xc8\x9c\x00\x06\xf5\x8b\xb5\xa9\xf9\x53\x4e\x7f\xab\x44\x03\xae\xb9\x92\xac\x4d\x0c\x31\x13\x63\xd5\x56\x03\xb4\x18\xe4\x57\x7a\xb2\x34\x31\x73\x46\xcd\xd4\xfa\xde\xf0\x58\xe0\xc4\xb9\x69\x38\xbb\xaf\x5a\x54\xab\xc5\xa6\x9e\xcd\x40\xe1\x97\x68\x15\x23\xd6\xdd\x1b\x63\x8e\xe4\xc3\xcb\x31\x36\xd7\xfa\xcf\x4f\xc5\xf5\x2d\x11\xc7\xe4\xa6\xbc\x7d\x9f\xcf\x58\x0d\xd9\x26\x81\xd4\xd6\x80\xcd\x2b\x58\x1e\x85\x16\xea\x02\x34\xa7\xfa\x2b\x4c\x10\xe0\xa1\xd0\x24\x20\x01\x11\x97\xa8\x63\x9a\xda\x3a\x20\xaa\xa3\x83\x3c\x5b\xdd\x04\x3c\xa9\xb0\xe4\x29\x8f\x41\x88\xa9\x95\x62\x97\x9b\x4f\xc8\x8d\x41\x25\x7b\xbf\xa9\xb3\x4e\x07\xf4\x56\xaf\x67\xe9\x82\xbc\xf7\xcf\x3b\x9b\x5a\x60\x82\x24\x53\x33\x2d\x27\x24\x20\x9e\x3d\xfa\x1c\x1c\x2f\x01\xf7\xc9\x91\x18\xf1\xb1\x92\x93\x07\xcd\x6d\xf5\x27\x50\x4c\xe6\x44\xb2\x71\x0d\x13\x84\x42\xe0\x51\x95\x8d\xc8\x38\x00\xb0\xb4\xae\xe2\xf8\x0b\x2b\xdb\xa9\x10\x64\xb1\x14\x04\x94\xf3\x4c\x1b\xa0\xf6\xa7\x79\xbb\xbc\x9d\xb6\xa1\x46\xe3\x7f\xac\x2d\xe6\xa9\x68\x4f\x19\x29\xf2\x3f\x89\x36\xf9\x4a\x41\x25\xd5\x8a\x9c\xf9\x3f\xad\x9d\x19\xe3\xed\xb4\xad\x80\xb4\xb9\x51\x1f\x03\xd4\x96\x88\x1e\xa4\xde\xfe\xd6\x31\x9d\x58\x32\x4c\x75\x10\x45\xfd\xbe\x95\x04\x68\x55\xe0\x63\x67\xe0\xd3\x9f\x15\x20\xb0\x9e\xc1\xea\xdd\x79\x9d\xef\x03\x25\x5c\x2d\x32\x6a\xc8\x3b\x46\xe0\x16\xde\xc4\x28\xd4\xab\xc9\xc7\x89\x39\x34\xe2\xc4\xa9\x4b\x84\x45\xbb\x5d\x64\xce\xa0\x6a\xfb\xee\xa0\x33\x46\x52\xea\x42\x5a\x9f\x4a\x03\xef\x24\x7c\x1e\x19\x38\xf3\x0e\xc0\xe8\x4f\x6b\x73\x80\xd4\x26\x03\x31\xdc\xdf\x67\xaf\xe9\x7e\x52\x1f\x3b\x1b\xa3\xea\x18\x51\x2e\xb7\x49\xa5\x7d\x60\xdc\xbb\x5d\x77\xef\x5e\x0b\x22\x14\x5a\x9c\xa8\x20\x82\x26\x70\xd0\x3e\xcc\x26\xd7\xde\x8f\x74\xbc\xa0\x20\xc7\x5a\x59\xf7\xf8\xb2\x0d\xf4\xd0\xe0\x9c\xc4\xb6\x77\xe3\x82\x39\xc2\xf8\xab\x2e\x0c\x8c\x0d\x40\x9e\xec\xfb\x93\x9d\x27\xfa\xe6\x40\x78\x3e\x0c\xfa\x9e\x3a\x91\xe2\xa1\xfc\x6f\x28\xf5\x5e\x07\x63\x54\x58\xe5\xa5\x56\x45\x28\x82\x8b\x83\x98\x63\x26\xeb\x4e\x86\x2e\x70\x80\xc7\x82\x16\x9d\x4e\x0a\x0a\xb6\x07\x02\xcb\xac\xc9\x28\x1d\x0f\x1b\xe4\x2a\x0c\x8e\xb3\x01\xb2\x9d\x65\x09\xca\xdf\x68\xd3\xde\x12\xe7\xbb\xb4\x45\x3c\x17\x0d\x65\xe2\x11\x84\xfd\xfd\xec\x75\xb9\x9f\x75\xbb\x09\x19\x65\xbe\xab\x86\xac\x4b\xad\x0b\xbb\x11\x47\x02\x11\x8f\x69\xbd\xb5\x72\xc8\x1b\x8d\xcf\xb5\xc6\xbe\x93\x11\x20\x01\x0a\x80\xa0\x86\x3f\x50\x6a\xf8\x7b\x63\xcd\x4f\x39\xe3\x96\x03\xe3\x47\x6f\xd8\x07\xaf\xce\x86\xe0\x4d\x71\x0e\xde\xc9\x5a\x85\x72\xdd\x4f\xb1\xf5\xbf\x99\x6b\x4b\x87\x41\xdf\x7a\xbe\x1a\x69\xb4\xea\xf5\xf0\x3a\x5c\x71\x04\xa1\x79\xf6\x24\x56\xad\x2c\x7d\x12\xae\x2d\xa2\xe1\xfa\xa9\xdb\xe4\x96\x67\xf0\xb7\x71\xc4\x2d\x82\x99\xac\x41\x60\x36\xf2\xbd\x92\xc4\x39\x66\xa3\xbd\x71\x72\x40\x71\x7f\x58\xc4\x10\xca\x4c\x8e\x20\x59\xad\x62\x8e\xe1\x96\x97\x22\x97\x6a\xc6\xa4\xaf\xce\xdd\xc0\xa9\x1c\x32\xe2\xe3\xb5\x32\xe2\xea\xa3\x13\xdc\x47\x97\xb8\x8f\xce\x71\x1f\x49\xfc\x79\x88\xfb\xe8\x0a\xf7\xd1\x17\xdc\x47\x1f\x70\x1f\x7d\xc4\x7d\xf4\x2b\xee\xa3\x0b\xdc\x47\x47\xb8\x8f\xde\xe3\x3e\x3a\xc6\x7d\x74\x86\xfb\xe8\x14\xf7\xd1\x3b\xdc\x47\x8f\xb8\x8f\x3e\xe1\x3e\x7a\x8b\xfb\xe8\xc7\xad\xe7\xae\xd5\xc3\x52\x1c\x14\x18\x7a\x58\xf3\x52\xed\xa5\xe5\x3d\x78\x07\x9b\xf8\x57\xf0\x54\x27\x5d\x06\x9e\x67\xae\x41\x53\xfc\x28\xcd\xb2\x9b\x74\xf2\xa5\xc0\x4f\x24\x9f\x0e\x47\x63\x04\xf7\xb6\xc3\xd1\x58\x9f\xe2\xd7\x82\x2e\x88\x91\x0f\xbd\xf7\x2f\xe0\xd5\x97\xc2\x55\x98\x96\x82\xf1\x32\xb7\x3d\x32\x09\xaa\x5d\x57\x30\x20\x01\x42\x4e\x77\xb5\x7a\x5a\xa3\x9a\x83\x1e\x3f\x8f\x11\xb8\x02\x9d\xa8\x38\xaf\x6b\x3f\x09\x6f\xcc\x3c\xdc\x94\xd9\x43\xaf\x7d\x33\x16\x96\xbf\x95\xf3\x10\xd6\xa6\x13\x57\xab\x3b\x9b\xeb\x24\x9f\x56\xf3\x9c\xe4\x53\x97\xe3\x86\x95\xf9\xf4\xa2\xcc\x4f\xbe\x2e\x29\x27\xd3\x2b\x35\x65\xea\x1b\xaf\x24\x43\x00\x58\x75\xf7\xe2\x97\x3e\x54\xb3\x28\x5b\xf2\x80\xe3\xb1\xdb\x55\x0c\x14\xb7\xf3\x0c\x01\x02\xfc\x55\xe0\x4d\x4b\xc0\x7b\xd7\x24\x9f\x82\x66\xd6\xba\xe5\x9d\xc9\x66\x00\xd7\x81\x8c\x7b\xb5\x62\x0a\xd8\xae\x97\x46\xea\x9d\xc7\x8d\x9d\x4b\xb6\xb9\x2f\x02\xa0\xf2\xbb\x7f\xa2\xa3\xf7\xd8\xd8\xbe\x46\x60\x10\xfa\x03\x37\xd0\xac\x6b\x82\x01\x07\xb0\x75\x10\x13\xa7\xfe\x01\xbc\x9c\xee\x51\x9c\x24\x43\xcf\xa9\x68\xfc\xb6\xdb\x6d\xd8\x0d\x26\x40\x53\x82\x3e\x49\x3a\xa0\xb1\x6d\xc0\xdb\xcb\x0a\xe9\x00\xce\xa4\xcf\x4d\x9d\xd7\x82\xd3\xdb\x5b\xc2\xe3\x48\x69\x3d\x20\x49\xc5\x26\x21\x28\x01\x65\x8b\xc0\x31\x12\x09\x97\xf2\xd2\x56\x03\x0b\x33\x00\xd7\x4d\x41\xc0\x2c\x13\x3b\xc1\x1e\x3c\x56\x21\xd7\x77\xdd\x76\xf5\xb0\x24\xc6\x7d\x9b\xde\xd6\xca\xa8\xe4\x86\xb4\x53\x2b\x51\x8f\x92\x40\xa1\x33\xc4\x02\x55\x02\x98\x6f\xaa\x3e\xcf\x99\x68\xcb\xde\xb7\x95\xc1\x09\x90\x9f\xed\x1b\x32\x49\x4b\x79\x78\x2b\xb2\x13\x62\xa2\x59\xba\xd3\xc4\xe1\x86\xd1\xcd\x66\x8d\x96\xcf\x5b\xfa\xb4\x43\x56\xab\x6f\xed\xd7\x6c\xf6\x3b\x3a\xa6\xf6\x80\x0a\x2e\xe4\x2b\x40\xf6\xf7\xe9\x6b\xee\xfb\x98\xd5\x32\x59\x21\x19\x6e\xbc\xd3\x47\xdc\xd7\xa0\x46\x74\x77\x57\x99\x47\xe5\xdf\xd0\xb7\x89\x59\x1f\x4b\xa2\xfb\x5d\x92\x33\x24\xb7\xb0\x07\x23\x5f\xcd\x7e\xf9\x9d\xc7\x7d\x40\xee\x4b\x8c\x13\x9b\x50\x0a\x1c\x5c\x55\xfa\x6d\x1c\xfe\x53\xda\x00\x07\x98\xae\x91\x29\x99\x91\x2a\x83\x9a\x3c\x5d\x75\xbb\x1e\x4f\xf0\x8c\xeb\xd4\x97\x07\xf9\xee\x4b\xe5\x3a\xf5\x65\xe0\x3a\xf5\x65\xc5\x75\xaa\xdf\x0f\xc3\x2e\xf9\xd7\x27\x70\xa0\x73\xeb\xcb\x92\x26\xd0\xc3\x06\x26\x31\x79\xfa\xe2\x75\x50\xd4\x3b\xc8\xbd\x0e\x8a\x37\x83\x03\xa1\x7c\xbb\xe6\x78\xb0\x9f\xbf\x16\xa0\xf3\xcb\x47\x79\xe8\xdb\x35\x1f\xeb\x38\xaa\x95\xd9\xe5\x72\x60\x54\x11\xae\x54\x11\xac\x54\x12\x6a\x25\x76\xa7\xfc\x81\xe5\x0c\xb5\x88\x3d\x9c\x73\xe5\xf0\xd9\x20\xac\x38\xb1\x63\x8a\x09\x62\x28\x45\x05\xda\x19\xa0\x32\x18\x2d\x78\x3e\xbd\xc9\xaa\xea\x40\x1f\x6c\x54\xb5\x7f\x4a\xe3\x70\xe2\x2c\xd0\x48\x48\x06\x0d\xc4\x17\x1a\x22\xce\x25\x62\xad\x42\xc5\xc7\x7f\x19\x54\xc8\xe6\xbf\x1d\x32\x2a\x9d\x4d\x9e\x7e\xfd\xff\x1b\x74\xf4\x0d\x74\xd8\xeb\xca\x06\x29\xeb\x85\x39\xa7\xb2\x54\x10\xbe\xe1\x5e\x12\x71\xf5\xd9\x2f\x7f\x64\x11\xcb\xed\xef\xe5\x55\xc8\xe8\x65\x05\xbf\x40\xed\x36\xda\x34\x78\xfa\x9b\x73\x26\x44\xe8\x2b\xef\xbd\x47\x5f\x5c\x6f\x6c\x94\x63\x01\xea\x63\x10\xf3\x55\xf2\xe3\xb2\x51\x86\xc5\xe8\xa5\x9c\x6e\x31\x7a\x25\xa7\xdb\x49\x83\x56\xab\x14\x95\x78\x12\xcb\xa6\x7d\x12\x58\x5b\xb2\x60\x8c\xcb\xc4\xe8\xd4\xa8\x6e\xca\x9c\xc5\xc1\xc3\x90\x22\x96\xa0\xc2\x88\xba\x01\x45\xaa\xfe\x2b\xb6\xc6\x14\x52\xd5\x8d\xca\xee\x60\xac\x5d\x02\x96\xdd\x57\xad\xe0\x5b\x36\xde\xc1\xf8\xc1\xde\x82\xd8\x54\xec\xfc\x3f\x10\xb5\xcb\x24\x7d\x36\x09\x26\xe5\xf8\x9f\x3d\x29\x2a\xb8\x5b\x6a\x80\x51\xf7\x06\x65\x7a\x8e\x4a\x37\x31\xd9\xdf\x37\x31\xb2\xb7\x33\x1c\x12\xa0\xea\x0e\xba\xcb\xd0\x1c\x67\xdd\x57\xad\x72\x34\x97\xa7\xf2\x03\xb0\xa8\x0f\x09\x22\xb8\x84\xbb\x12\xe3\xbc\x24\x9e\xe9\x7e\x64\xdd\xef\x30\xc6\xcb\xa4\x94\xb3\x35\x43\x50\x8e\xba\x66\x16\xe1\x1a\x64\xdd\x3f\x8f\x83\x99\x37\x87\xfd\x12\xf5\xd1\x4c\xe9\xda\x23\x8a\x16\x09\x6a\xca\x94\xa1\xef\x92\xb5\x84\x99\xcc\x0c\x8d\x13\x20\x3c\xb3\xec\xca\xe3\xa7\xe2\x70\xcd\x14\x01\xab\x79\x04\x6f\xdd\xce\x2c\x81\x68\x2f\xeb\x5d\x0d\x1b\x98\xb1\x0a\x31\x2c\xab\x9f\xa7\x45\xbd\xee\x60\x6f\xe9\x41\x54\xaf\x4d\x34\xad\xed\xba\x58\x95\x6e\x9d\x76\xbb\xc8\x78\x73\x37\x94\x7a\xeb\xd9\x2b\xff\x03\xbf\xa7\xa7\x12\x2c\xa0\x7b\x31\x49\x86\x3b\xb1\x89\x02\x20\x09\xfe\xd5\x6a\x87\x28\xd2\x1b\x9e\x94\x74\x33\xe9\x74\x74\xa2\xee\x94\xf6\x79\x1a\x62\x3b\x7f\xa8\xcd\xd8\x50\x96\x69\x96\xdc\xf9\xba\x74\x2d\x23\x3c\x04\x84\xab\x07\xf9\xa4\x27\x66\x58\x67\x77\xd1\x84\x95\xb9\x20\xbc\xd0\x91\x70\xf4\x1b\x52\x33\x3c\x9c\x05\xdb\x17\x7d\x87\xf6\x12\x14\x30\x26\xc3\x51\x13\x2b\xe2\xdc\x70\xd7\x38\x99\x6a\x40\x6e\xcf\x3f\x56\xa7\x53\x13\x0e\xea\x61\xac\x93\x64\xbd\xd6\x1c\xe1\x26\x57\xad\x95\x2e\x68\x11\x97\x67\x5a\xd3\xe0\x3d\x9a\xe4\x53\x20\x71\xc9\x14\xe2\x24\xb3\x52\xf2\x20\x92\x31\xd2\xd4\x36\xa2\x92\xde\x16\xfc\xe1\x29\xb7\xe2\x54\xe2\x1c\x3e\x48\x2a\x9a\x26\x74\x16\x53\x49\x66\x07\xf1\x3e\x6b\xb2\xe0\xaa\x20\x58\xef\x59\x73\xc4\x99\x0d\xc0\x12\x3f\xb6\xe8\xb7\x89\x4a\xbc\xcb\x48\x23\x85\xae\x30\x8f\xca\x7d\x6e\x53\x95\x36\xfa\xa0\xe5\x0c\x49\x3e\x8d\x80\xcc\xf1\x65\x07\xa0\x8e\xa4\x96\x20\xa4\xc6\x35\x45\x64\xc4\xb7\x7a\xa6\x1b\x5a\x3a\x70\x94\xbd\x2a\x33\xf4\xc5\xef\xfe\x05\x50\x5c\xbd\x49\xe2\x50\x6c\x83\x12\xb7\xbe\xed\x66\xe6\x9e\xdb\xc0\xbf\x0e\x34\x8f\xf2\x44\x2e\x9f\x73\x0a\x53\xbd\x52\xa2\xc9\x53\x1e\xd3\x24\x74\x8f\x25\xf9\x5b\xb3\x10\x1b\x4a\x37\xe4\x87\x9e\x06\xf8\xac\xbe\xab\x9d\x08\xa4\x72\x58\x58\xfd\x24\x8b\x29\x9f\x17\x53\xa9\xb9\xa9\x90\x31\x4d\x57\x9c\xcd\xd4\x17\x62\xcd\x27\x56\x8e\x52\x7c\xdf\xed\x1a\x49\x77\x03\xca\x4d\x82\x34\xe0\x97\x25\x81\xa6\x9a\xa6\x66\x00\x8d\x07\x49\xcb\xbb\xdc\x9c\xc6\xac\x42\x9f\x34\x9d\x51\x05\xea\xa3\x86\xda\x9f\x39\xa8\x52\x6f\x35\x1c\xce\x6e\x0c\x8c\xa1\x82\xc0\x34\x0c\x73\x5f\x68\x2d\xa7\xe0\xc4\x15\xa0\xf0\x94\x34\x1d\x48\xba\xc7\x62\x77\x80\xbe\x4b\x00\x21\x88\x67\xce\x55\xb4\xd3\xb7\x32\x23\xe8\xb1\xde\x87\x1b\xa0\xfd\x59\x59\xc8\x8e\xc4\x41\x5b\x82\xee\xe5\x23\x3a\x56\x9b\x59\x6f\xab\x50\xe0\x57\x83\xd7\xe7\xa4\xaa\x3e\xee\x09\xf6\x5d\x88\xde\x82\x56\xcc\x57\xd8\x35\xaa\x23\x8d\xf9\x9a\x7d\x4a\x07\x07\x92\xc0\x7d\x50\x7c\xd0\x0c\x8d\x99\x20\x5f\x76\x6a\xae\xaf\x2a\x50\xbe\x2f\x5e\x73\xb5\xbe\x70\xed\x35\x12\xe3\x37\x54\xc7\x19\x37\x2a\x66\xa2\xfb\x0a\x66\x96\x49\x4a\xd6\x5c\x36\xc8\xe4\x3d\x49\x59\xca\x87\x97\x92\xbf\x91\x0f\x86\x06\xab\x20\x3d\xc7\xc1\xe4\xc0\xbf\x30\xcd\xdf\xae\xad\x51\x7b\xdf\x06\x7b\x6b\xde\x2e\x6a\x99\x9a\x60\xa7\xbe\x56\x9b\x89\xae\xcd\x55\xd7\xca\xf8\xd5\xfa\x71\x8e\x2b\x90\xb0\x01\x81\x99\xca\x9b\x8a\x24\x9b\x05\xf5\xaa\x2f\xcf\x0c\x52\xa2\xa3\x9d\x66\x74\xf4\x54\x07\x0d\x75\xbd\xd2\xb4\xf2\xbe\xaf\xc4\x3e\x22\xbb\x22\x40\x3b\xae\x63\x95\xb2\x9e\x86\xec\x16\x91\xb9\x3d\x26\x37\x93\x77\x77\xb5\x00\xe8\x15\xe9\xb1\x39\x46\x89\x9d\xe4\x00\xf3\x6f\xc3\xe8\xba\xde\xe6\x4d\x68\x68\x8c\xfa\x65\x42\xa2\x05\xbe\xd5\xac\x01\xba\x7c\xa7\xb9\xb2\xfa\xac\x92\xaf\xc2\xc8\xc3\x8d\x74\x1e\x68\xa5\x16\x3f\x50\x31\xe4\x86\x0d\xa7\x5a\x7f\xab\xb5\x89\x21\x44\x37\xd8\x44\x3c\xa9\xdb\x9f\x13\x44\xf2\xe9\xf0\x12\x01\x42\x2c\x86\x3a\xf5\x1c\x52\xfb\x6b\xa4\xdb\x2a\x86\x4f\xaa\x91\xe9\xf0\x1d\x9a\xb0\xc5\x32\x23\xf2\xf9\x71\x8d\x24\x4d\xfc\x15\x49\x8a\x66\x78\x88\x40\xde\x33\xbc\x42\x66\x0e\x86\x5f\x50\x55\x08\x35\xfc\x80\xac\x54\x68\xf8\x11\xf9\x72\x97\xe1\xaf\xc8\x53\xea\xbe\x40\x70\x2a\x0f\x8f\x90\x61\xfa\x87\xef\x91\x61\x75\x87\xc7\xc8\xe7\xa0\x86\x67\xfa\x75\x78\x8a\x32\xc6\x96\xc5\xf0\x49\x30\x91\x66\xc3\x4f\x28\x27\x85\xec\xe9\x5b\x88\xe0\xae\x4d\x55\x3c\xd4\xb6\xd5\x60\x24\x40\x82\xce\x48\xe4\xc7\x9e\xba\x51\x9a\xa3\x1f\x6b\x56\x02\x3a\x45\x52\x21\x98\xc2\x5a\xff\x84\x7f\xf4\x4c\x1a\x7e\xd2\x26\x0d\xd3\xf4\x76\x77\x91\x2e\xff\x17\xbd\x32\x35\x58\x2b\x88\xed\x4e\x02\xaf\xef\x08\x17\x74\xa2\x75\x58\x79\x93\xb3\x8b\xd0\x21\xa0\x67\xbf\xdf\x10\x57\x2f\x32\x82\x86\xf6\xdf\xbe\x90\x87\xbf\xb5\x69\x61\x0c\x2b\xa7\x9a\x39\x30\xc7\x8a\x69\x17\x31\x4c\xb5\xb7\x3c\x38\x34\x7a\x77\x69\x86\xe5\x49\x4b\x67\x71\xed\xa6\x90\x27\x90\xf7\x64\x7a\x4b\x62\x86\x54\x39\x9e\x28\xe2\xa8\x1d\x46\xd6\xe2\x7e\x64\xad\x86\x52\xa3\x74\x9c\x28\x15\x9d\xc6\x96\x72\xaf\x8c\x2a\x91\x27\x88\x79\x2d\xa9\x56\xf2\xe6\x56\x74\x09\xd9\x06\xa8\xd3\x54\xa6\x53\xe6\x29\x1a\xe6\x14\x66\x06\xe6\xc2\x46\x44\xf6\x4b\x92\x74\xd2\x10\x24\xc4\xce\x64\xef\x3e\xcd\xbe\xe8\x38\x68\xae\x90\x60\xcb\x82\x71\x51\x2f\x27\x6b\x53\xb9\x95\x17\x53\x03\x3b\xc6\x7f\xe0\x56\xb0\x09\x35\x3e\x55\xcc\x13\x09\x05\xb9\x31\x15\x17\x73\xff\x5d\x85\x21\x52\x29\xcf\x83\xd8\x46\xe0\x5a\xd0\xa2\xa0\xf9\x6d\xfb\x0b\x79\x88\x9c\x8a\x85\x44\xa2\xfd\x95\xd7\x2d\xed\xa2\x83\x83\x24\x96\xce\x62\xad\x36\x34\xca\xc7\x49\xef\x0b\x79\x08\xc8\xd0\x40\xf8\xa8\x47\xc5\xbb\x8a\x75\x18\xf1\x31\x7e\xa2\xd3\xaf\x43\x8e\x24\x0e\x21\xe8\x2e\xcd\x2c\x0f\x50\x8a\xe1\xce\x00\xcd\xb2\xf4\x56\xfe\x1b\x15\x8b\x75\xe3\x5a\x57\x84\xf0\xea\x0c\x9b\x93\xc9\x17\xf9\x2e\xbb\xe4\x06\x03\x43\xd9\x30\x0e\x31\xca\x81\x86\xee\xd1\xe9\x57\xe3\xef\x42\x04\x9d\x96\x3d\x86\xcf\x88\xf4\x24\x19\xb0\xd3\x0f\xfb\x23\x21\xa4\x0e\x09\x9c\x14\x44\x78\x21\xdd\x04\xee\x1b\xc2\xbe\x1e\xd8\x11\x26\x46\x8c\x5b\x5c\x36\xa0\x25\x48\x77\xb4\xa0\x22\xe6\x28\x8a\xb4\x03\x65\x80\x2d\x6f\xe5\x51\x15\x2a\x61\xf4\xf5\x1b\x50\xa2\xd7\xa7\x41\xe6\x30\x79\x98\x64\xa4\x3d\x25\x02\xc2\x12\x42\xd8\xac\x6e\xd4\x7e\xbd\x2b\x1f\x60\x1f\xf7\x21\x60\xb2\xa1\x6c\xb6\x45\x5f\xd5\x9c\xc9\x88\x8c\xf8\x78\xfc\x77\xb5\x08\xfd\x74\xcd\xaf\x0d\xaf\xa3\x67\x12\x79\xb3\x42\x2c\xa5\x2a\x37\x45\x45\xeb\x3c\xc7\x4d\xad\x68\x07\x8f\x95\x99\x94\xc5\xc3\xd3\x22\xef\x62\xd3\x1f\x30\xeb\xb1\x5d\x37\x11\x00\xdc\x7c\x43\xc7\x6a\xa4\xaf\x1f\xe1\xc6\xec\x65\xaf\x97\x26\x49\xad\xa1\x4d\x6c\x72\x3d\xa4\xa7\x97\xbc\x0e\x9c\x0d\xf5\xe4\xf6\xc0\x92\x43\xf3\xfb\x02\xf3\xb2\xf9\x7a\x18\x3a\x85\xac\x17\x00\xb8\x18\xf2\xba\x01\xad\xeb\xcb\x66\xb5\x13\xf6\x2d\xaa\x37\x52\xa4\xfe\x8a\xeb\x28\x85\xa0\xf1\x84\xfb\xbe\x2e\xe8\x88\x8d\x95\x01\x80\xec\x5c\x32\x61\xb9\xa0\x79\x49\x5c\x12\xde\xe9\x23\x6d\xc3\xc2\x12\x24\x30\xc6\x29\x6c\x51\xc5\xe4\xe8\x96\xff\x2f\x33\x8b\x5a\x16\xf3\xf7\xf9\x84\x2d\x68\x7e\x1b\x6b\x1d\xe4\xb6\x51\xa0\xa2\x36\x73\x65\x39\xfc\x52\x1b\x78\x6b\x6f\x2e\x1c\xa7\xb6\x3b\xd8\xe7\x6f\x24\x44\xef\xee\x06\x41\x84\x35\x7a\x83\xfe\xaf\x56\xda\x05\x51\x5e\x6d\xb5\x72\x7e\x54\x82\x14\x6f\x71\x47\xed\x76\x4b\x4b\xc4\x54\xce\x06\x02\xef\x43\x56\x9f\x38\xff\xb6\xd3\xa2\x09\xf5\x37\x46\xbe\x1a\x79\xc5\xba\xdd\x31\xee\xaf\x48\x65\x02\xc3\xc8\x57\xba\x5e\x75\x0a\x8c\x76\x77\xbd\xe2\x3a\x8c\x97\x26\xc1\x7c\xeb\xd1\xff\x3d\x32\xec\x9e\xa7\xcb\x33\x88\x71\x78\x59\x56\x3d\xfa\x81\x0b\xba\x79\x5a\xc4\xc4\xaa\x97\x52\xa3\x3e\x6f\x67\x8e\x7b\x8e\xc8\xb9\x1b\x36\x0e\x63\xb3\x79\x13\x82\x20\x40\xb1\xe0\xe5\x44\x30\x3e\xd4\xbd\xe1\x88\xe4\xe5\x42\x93\xe0\x3b\x03\x74\xcf\xa9\x50\xcf\x7d\x34\x61\xf9\x8c\xde\x96\xfa\x5b\x7f\xbd\x96\xd0\xaa\xb4\xf2\x79\x82\x24\x32\x57\x28\x7b\x22\x19\x8c\xa3\x34\xcb\x8e\x42\x8c\x9d\x3c\xa9\xe0\x96\xf9\x9c\x70\x2a\x0a\x08\xad\x89\x43\x2d\xef\x7e\x8b\x6c\xec\xba\xf5\xc2\x03\xfe\xed\xf8\x33\x03\x21\xcf\x75\xdd\x29\x02\x09\x2d\xfc\x84\x40\x3d\xb7\x64\x6a\x82\x24\x9e\x52\xc9\x8b\x64\xb5\x7e\xca\xe3\x78\xb5\x8a\x9d\x27\x8a\xbe\xf3\x9b\x45\x7a\x3c\xbd\xc7\x02\x11\x2f\x94\x8c\x9c\x8e\x9a\x90\x49\x35\x2f\x3a\x1d\x16\xac\x89\x30\xce\x9a\x38\x7c\x71\xbe\xfd\xda\xc4\x85\xab\xbe\x9a\xd3\xe2\xbd\x8d\xe0\x3c\x85\x00\xd2\x4b\x56\x14\xf4\x26\x23\x47\x6e\x2a\x2e\xa0\x20\x2e\xe4\xc1\x0e\x33\x79\x4c\xd4\xa7\x52\xd2\xad\xb5\xe8\x69\x7d\xd7\xe5\x3a\x08\xd6\x6d\x70\x15\x19\x45\x31\xd7\x54\xb8\x95\xc7\x2b\x37\x70\x49\xcf\x5b\x94\x96\xc0\x17\x64\x96\xc1\x62\x9a\xd4\x98\xba\x1b\x46\x64\x65\xf1\x92\xb0\x6f\xba\x44\x36\xb3\x50\x98\xb0\xfd\x6b\xd7\xdb\x4d\x61\x5b\x1b\xae\x2f\xfa\x15\xa7\xc9\x38\x8c\xb3\xb2\x5a\xe9\x2b\xab\x91\x0e\xb8\x42\x75\xad\x63\xd8\x84\x55\x97\x9a\xab\x55\x5c\x05\x0c\x45\x85\x6a\x42\xab\x89\x49\xb0\x64\x64\x09\x05\xc2\x10\x8e\x3e\x09\xae\xac\x74\x8d\x89\x86\x86\xb4\xef\xd1\xee\x20\x69\x45\xe7\x26\x1c\xb6\x04\x13\xe2\xcf\xb4\x76\x98\xe2\xa5\x80\xfd\x20\xac\x50\xf4\x21\x5d\x42\x99\xd5\x2a\xba\x24\xaa\x78\x12\x78\x0b\x9d\x71\xb6\x88\xb9\xca\x6c\xfc\x91\x16\xba\xc8\x8b\xff\x89\x0f\x86\x9f\xe8\xea\x7d\x92\x8b\xf8\x60\xf8\xfd\x6a\xf0\xdd\xea\xe5\x5e\x12\x1f\x0c\x8f\xb2\x74\xb1\x24\xd3\xe4\x00\x2a\xf9\xc3\x0b\x65\xa0\xcb\x93\x70\xa4\x6b\x89\xbd\x92\xcd\x76\xea\x6f\xec\x51\x72\xf0\x34\x65\x39\x6c\xd3\xa1\x7e\x1a\x68\xff\x75\x64\x24\xba\xdd\xf1\x7a\xdd\x6a\x54\xa7\x7a\xaf\x3d\xf8\x68\x1b\x89\xb6\x60\x6d\xb5\x7e\xa4\x9d\xb3\x7c\x97\x6a\xc9\x42\xdb\xdc\xd8\xf4\x3e\x7f\xce\xdf\x7b\x9e\x92\x6f\x48\xdb\xe4\x41\x50\x22\x95\xe3\xd1\x1e\xb1\x0b\xa5\x37\x37\x4f\xef\x48\x3b\x6d\xd7\xe0\x23\x4e\xb4\x85\x45\x2f\x32\x72\x71\x89\x20\x1a\xf2\x25\x20\xc4\xd1\x8a\x9d\x5a\xdf\x52\x18\x00\x50\xa1\xc1\x14\x0c\x9c\xcf\x90\x05\x8c\xdb\x30\x3d\xc7\xb5\x88\xe8\x7a\x7f\x75\x3a\x0d\xaa\xe8\xb5\xbd\x87\xac\x9d\x55\xcb\xb7\x9d\xaf\x9c\xee\xfb\xdc\x05\x60\xb1\x27\x7b\x8e\x25\xc7\xd0\xca\x7b\xee\x9c\xc0\xfe\xcb\x6a\xb5\x33\x40\x79\xcf\x47\xb8\x92\x3a\x8a\x60\x01\x23\x9a\xb7\x73\xf0\xa3\x68\x90\x33\xde\xe9\x27\x68\xd3\x71\x99\x03\xd9\x90\xfb\x16\xfe\x69\x10\x9c\xd7\x37\x28\xf7\x5c\xac\x56\xe7\x46\xd8\x58\xf8\x62\xb5\x6a\x0a\xc4\x75\x20\x86\x24\x30\x27\x97\x95\xe9\x03\x47\x32\x2c\x6f\x2c\x93\xa0\x1d\x4d\xea\x37\x8f\x05\xf3\xd4\x7b\x12\xcd\x84\x59\xb5\x9e\xb1\x72\xf3\x68\x0e\xe7\xb5\x4f\x58\xbc\x00\xd3\xc7\xd0\x5f\x85\x16\x7f\xb8\x58\x7c\xbb\x34\x17\x84\xe7\x69\x56\xbc\x20\xf9\x1d\xe5\x2c\x57\x6e\x45\xa2\x9c\x4d\xc9\xee\x42\x13\x14\x0d\xb9\x4b\x41\xb3\xa2\xf1\x8b\x24\x62\x53\x0a\xae\x32\xcc\x57\x0a\xd0\x21\x6b\x06\x87\x0f\x8d\xc5\x16\x44\xa4\x1b\x3f\x64\xee\xcb\x24\xcd\x53\xfe\xb0\x3b\x23\xa9\x28\x39\xf1\xba\x00\x71\x0e\x23\x14\xf8\xea\x68\xee\x5e\xc1\xfc\x41\xc9\xfe\x72\x96\x65\x7e\x7e\x97\xf6\x22\xa3\x37\xde\xeb\xf5\x82\x7e\xa5\xde\x00\x34\x12\x76\xef\x84\xdf\xd1\x89\x57\xbb\x86\x98\xca\xfb\x8b\x09\x5b\x2c\xd3\xe6\xe4\x52\x90\x69\x63\xcf\x79\x99\x0b\xba\x68\x5e\x0e\xed\x16\xdb\xb8\x24\x79\xa1\x9d\xbd\x37\xe6\xbd\xa3\xe4\xbe\x79\xe9\x38\x2b\x45\x30\x1c\x1f\x3c\xbe\x0a\x92\xcb\x3a\x77\x8b\x72\x29\xe1\xc9\xe5\x52\x21\x9e\xed\x2b\x2f\xf3\x8c\xb1\x65\x73\x2d\x32\xeb\x2e\x84\x5b\xde\xd4\x10\xb8\x8c\x73\x5f\x3c\xef\xf6\x8d\x89\x2f\x94\xe9\x70\xb1\xab\x5d\x96\x34\x17\x7d\x61\x50\xb3\xd7\xeb\xfc\x96\xe6\xb5\xf7\x86\x8c\x2e\x5e\xa5\x07\x6b\x3a\xa0\xd9\xb4\x01\x10\xe5\x22\xb2\x9c\xe4\xe2\x85\xd0\xf4\xde\x2e\xcb\xb3\x07\x99\xc1\x78\x2f\x37\x4b\x59\xf1\x19\x63\xac\x05\xe1\x9e\xa9\x44\x19\x9a\xa0\x19\x9a\xa2\x39\x5a\xa2\x05\xba\x43\x0f\xe8\x06\xdd\xa2\x6b\x74\x8f\x4e\xd0\x25\x3a\x47\x5f\xd1\x21\xba\x42\x5f\xd0\x07\xf4\x11\xfd\x8a\x2e\xd0\x11\x7a\x8f\x8e\xd1\x19\x3a\x45\xef\xfe\x57\xa4\xb7\x8f\xf5\xc3\x81\x4b\x7c\x2c\xe4\xb1\x43\x17\x80\x64\x7a\x27\x72\x0e\x3a\x9d\x0d\x1f\x56\xab\xa7\x75\xeb\xb1\x47\x8b\x33\xe3\x11\x4d\xe2\xf0\xc7\x2d\x8e\x45\x22\x28\x17\xad\x37\xe0\xf2\x47\x14\x9d\x9c\xfd\x14\xa1\xa7\x5b\x22\x86\xa0\x5c\x73\x72\xf6\x53\xc8\x6a\xac\x37\x9d\x03\x8f\x28\xca\x18\xfb\x52\x2e\xfd\xe2\xa7\x90\x82\x0a\x78\x2f\xec\x7b\xb5\xc6\xb3\xde\xc9\x87\xb7\x27\x17\xd7\x27\xff\xe7\xea\xe4\xec\xf8\xfa\xe3\xc5\xf9\xd5\xf9\xd5\x2f\x1f\x4f\x2e\x3b\x9d\xcd\x1d\xad\xe6\x8d\xd0\x53\xc8\x14\x35\x5f\x05\xf0\xde\xc9\xd9\x4f\xbd\x5a\x69\xc9\x6b\x3c\xca\x2e\x9f\xcb\x1d\x83\x3f\xd8\x47\xf4\x28\x3b\x6e\x52\x0b\x97\x7a\xe8\x36\x04\xfe\x68\x56\x38\x4c\xb7\x97\x5d\x17\xf6\xfb\xc6\xf1\x5c\xd8\x1d\xf7\xd4\xdc\xf1\x5f\x4d\x1d\xeb\x6d\x6b\x70\xac\xf2\x3c\x5b\xdb\x63\xcf\x64\x51\x23\x3f\x81\x0d\x8b\x8f\xbc\x81\xa8\x24\x3b\x86\xf7\xde\xa7\xb4\x28\xe8\x6d\x8e\x8f\xf5\x03\x7a\xec\x2d\x08\xbf\x25\xf8\x58\xfd\xc3\x4c\xe6\x40\xd3\xfd\x50\xd2\x29\xd8\x80\xbb\x57\xf4\xd8\xfb\xe1\xd3\xfb\xe3\xeb\xff\x3e\xf9\x05\x53\xfb\x28\xcb\x94\x74\xfa\x8e\x71\x99\x5d\x3d\xa1\xc7\x1e\xcd\x8b\x25\x99\x48\x86\x43\x3f\xc9\xb6\xd2\x2f\x44\x85\x88\xa6\xee\x19\x3d\xf6\x26\x69\xfe\x5e\x59\x67\x53\xf7\x2c\xf7\x03\x7f\xb0\xe9\xf6\x19\x3d\x02\x33\x8f\x29\xfc\xa1\xc7\x5e\xa9\x7a\x5a\xaa\x1e\x1e\x99\x83\x17\x33\xf7\x8c\xe4\xac\xdd\xd2\x42\xf0\x07\xcc\xec\xa3\x9a\x0f\xc2\x05\x9e\xe8\x07\x59\x77\xca\x73\x3c\x81\x3f\xf4\xa8\xc2\x06\xe3\x89\xfa\x87\x77\x8d\xf2\x20\x4d\x3f\xb7\xbc\xf4\x77\x65\x3e\xf1\xbf\xc9\x77\xf4\xa8\x82\x43\x1e\xeb\xca\xdc\x8b\x5c\x2c\x30\x27\x3f\xf4\xd6\x48\x65\x7b\xe2\x3a\xf4\xc3\xb1\xae\x8a\xb2\x5c\x85\xd7\xe7\xc3\x49\x6f\xf3\x47\x64\x3e\xfd\x9c\xf2\x86\x02\x5e\x2a\xa2\xc5\x91\x3e\x69\x87\x65\xcf\xbd\xac\xd5\xea\x69\x5a\x05\xa7\xde\x8b\xdc\x53\xe5\x4d\x31\xe1\xf4\x86\xe0\xd4\x3d\xa3\xc7\xde\xfb\x90\xba\xc1\x4f\xae\xd4\x30\xa8\xc2\x16\x1a\xfa\x15\x94\xb9\x9f\xee\xbd\x21\x90\x93\x0e\x53\x25\x2f\x5d\xab\xb9\xc4\x57\xbd\x6b\x7d\xe2\x5d\x94\xb9\x4a\xeb\x39\x92\x07\x5f\x79\x2f\xe6\x2b\xd8\x43\x5d\xa9\x7f\x93\x46\xf3\xa9\x4c\xa2\xf9\x54\xa7\x68\x65\xcb\x2b\xfd\xa0\x53\xad\x66\xef\x95\x7d\xd4\x5f\x08\x54\x40\x6c\xf9\x79\x5a\x5c\xea\xab\x54\xa3\xfa\x71\xd5\x90\xa8\x73\x83\x02\xda\x15\xfc\xe9\x14\xa5\x01\x75\xa5\xfe\x75\x9a\xe4\x67\xf0\x95\xba\x9b\x56\x29\x4c\xf5\x85\xb9\x7e\x58\x8b\x8a\x2b\xfb\x58\xf9\x72\xae\xca\xf8\xaf\x3a\x87\x55\xe6\xbe\xb2\x8f\xc1\x6c\xd8\x71\xf8\xaf\x9b\x10\x99\x2c\x87\x22\xad\x0d\x70\x51\xe6\xa7\x40\x03\x01\x2e\xbb\x92\xa8\xf9\x28\xf8\x52\x3d\x50\xe0\x80\xfd\x84\x4b\xbb\xba\x06\x26\x25\xcb\xfc\xd8\x33\x84\x21\xfe\x84\x1e\x7b\xd7\x53\x22\x21\x64\x29\x18\xc7\x65\x2f\x07\xd9\xde\x31\x29\x26\xc7\x64\xc2\x80\x19\x94\x79\x74\x10\x61\x5c\x9a\x70\xc2\xe8\x53\x2f\xcd\x68\x5a\xe0\x52\xfd\x03\xf6\x99\xcc\xc9\x3b\xa8\x45\x76\x50\xbe\x4d\x7f\xd2\xd1\xa7\x01\xa1\xa8\x46\xcd\x18\x71\x59\x4b\x92\x2d\x15\x44\x80\x24\x8a\xba\x0e\xe0\xb2\xd7\x90\x0a\x38\x57\xa4\xb8\x80\x3f\x75\x76\xa9\xa6\xd5\xf3\xcf\x54\xcc\xf5\x61\xa0\x92\xbd\x04\xd9\x90\xe4\x55\x53\x31\x87\x49\x52\x8f\xea\xa4\x53\xad\x29\xac\x79\x09\xaf\xea\x01\x3d\xf6\xde\x9d\x1c\x5e\x7d\xba\x38\xb9\xc4\x71\x1f\x19\xd4\x9f\xc4\x4f\xb4\x38\x81\x28\x55\xd3\x61\xd6\xb3\xcf\x6b\x94\xd9\xfc\xf2\x7c\xb9\x56\x11\x2f\x69\x0f\xfe\xd1\x63\x8f\xe5\xb8\xec\x31\x09\xb0\xe9\x74\x7a\x2a\x91\x8a\xdc\x71\xa5\xff\x26\xc1\x07\xdc\xb7\x7a\x9f\xc3\x04\xe8\x72\x3e\x3d\xb9\x93\x18\xa6\x74\xcf\xe8\x51\xee\x16\x93\x4b\xae\x92\xff\x8a\x80\x66\x62\x39\xc1\xa5\x7e\x80\x14\x25\x6a\x2b\xcd\x13\xa4\xbd\xcd\xd2\xfc\x0b\xa4\xc1\x13\xa4\x7d\x94\x28\x04\xda\xb3\xcf\xe8\xb1\x97\x33\x41\x67\x0f\x66\x29\x75\xb8\xf0\xb2\x31\x19\x3d\x2a\xf4\x11\xa6\xca\x5e\x36\x25\xa3\x47\x89\x18\xea\x79\xeb\x89\x12\x08\xe1\x49\xa7\x53\xc8\x57\x4d\x42\x8f\x3d\x6b\x11\xfa\x14\xee\xbb\xe1\x4e\x1f\xcd\xd3\xc2\xbc\x1e\x4e\x26\xa4\x28\x18\x2f\x24\x19\x0b\xa7\x96\x9f\x19\x97\x95\x04\xc8\x51\x08\xce\x1e\xf0\x3b\xf3\x84\x1e\x7b\x2a\x82\x98\xea\x8b\x7d\x56\x30\x1a\xf4\x33\x78\x57\xb0\x18\x7c\x2f\x2a\xdf\xc9\xd7\x65\x6a\xa7\x40\x65\xa9\x26\x29\xe0\x32\x2e\x11\x15\x70\x99\x37\x0b\x5c\xde\xe7\x30\x41\x96\x96\x7b\x5b\xb9\x9d\x33\x3b\x5d\xbd\x49\x00\x76\xe5\x98\x2b\x01\x2c\x2d\x2e\xd5\x3f\x7a\xec\x7d\xd0\xef\xf0\xbf\x99\x6c\x63\xb9\xe6\xfb\x00\xc5\x41\x50\xca\x73\x95\x04\xc4\x33\x84\x9f\x34\x09\xdf\x4c\x8f\x0b\x52\x28\x0e\x14\x2a\x9d\xf4\x68\x71\xa5\x52\xa0\xce\x09\x28\x70\xe9\x84\x6a\x9d\x8f\xbd\xeb\xb7\xee\x1c\x9c\x59\xb2\xe2\xac\x77\x7a\xfe\xc3\x0f\x27\x17\x9d\x4e\xfc\xd8\x3b\x65\xa0\x98\x39\x35\x5f\x65\xb1\x43\x7c\xdd\x3b\x44\x8f\x3d\xcd\x81\x3c\x65\x6c\x32\x5c\xf4\x32\x36\x41\xf7\xc3\x45\xef\x1e\x4d\xd3\x62\x4e\x38\x7d\x24\xc3\x45\xcf\x3e\xa3\x29\x99\xa4\x0b\x92\xe9\x64\xfb\x82\xbc\x54\x97\x06\x88\x70\xf6\x20\xd3\xf4\x23\x2a\xf3\x29\xe1\xc5\x84\x71\x99\xd3\xbd\xa0\x49\xba\xa4\x22\xb5\x35\x98\x17\x09\xcc\x6a\xd6\xf0\xb5\x7e\x90\x23\x36\x04\xdd\x47\xce\xbe\x3e\xa8\x85\xbb\xee\xd5\x13\x01\x9b\x19\x92\x30\xc8\xdb\x90\x8a\xd4\x71\x93\x72\x82\xaf\xcd\x13\xa4\x2d\x1f\x20\x61\xa9\xf0\xcc\xc9\x6f\x65\x9a\xe1\x6b\xf3\x04\xa4\x13\xf4\x2f\xf0\xd3\x61\x52\x7b\x5a\x32\x82\xef\x74\x82\xfb\xe2\xa4\x2b\x78\xee\x3e\x2a\x6a\xf9\xba\x67\x28\xe5\x23\xe8\x08\x48\xf6\xae\xbd\x17\x20\xfa\xad\xbc\xf0\xda\x7b\x31\x75\xc0\xc0\x4c\x45\xf0\x62\xa7\xd2\x7c\xf2\xde\x64\xa9\x89\x47\x54\xca\x82\xfe\x3b\xf4\x84\x13\xbb\x14\xee\x05\x3d\xf6\xd4\x35\x9b\xe9\xb9\xf7\x06\xa5\x96\x0f\xb6\xf7\xea\x51\xee\xb5\x12\x84\x95\xc1\x10\x6a\x69\x2e\x9f\xa9\xda\x7f\x45\x8f\x3d\xe5\x75\x52\xf5\xf3\x52\x49\x67\xf0\x75\x53\xaa\x9c\x2d\x79\xd8\x90\xa9\x9c\x2a\xf5\x84\x1e\x7b\xda\xeb\x6b\x00\x18\xb5\x34\x98\x35\xb9\x8a\xba\x9b\xee\x45\x9e\xbc\x20\x3e\xc6\xd7\xfa\x01\x00\xc4\x74\x56\x3f\x35\x02\x30\xcb\x4f\x59\x3a\xc5\x1f\xf5\x83\xa2\xbe\xe4\xd3\x8f\x8c\x7d\x29\xf0\xc7\xe0\x55\xf3\x38\x16\x56\x1c\xe3\xe0\x92\x55\xf7\x97\xde\xb7\x4b\x0b\x78\x2e\xed\x3a\x18\xea\x75\x30\xc8\x8b\xcb\x9f\x3e\xca\x4d\x74\xf9\xd3\x47\x58\x52\x23\xa7\xb8\x76\xcf\xb2\x06\x1d\xae\xfe\xa1\xa7\x1e\x14\x59\xb6\x24\xf9\x94\xe4\xe2\xbf\xc9\x03\x40\xa8\xc0\x37\xbd\x7a\x22\xfa\xd4\x23\x70\x6e\xdf\xaa\x7f\xf4\x49\x1e\xb9\x27\x3a\xc9\x3c\x42\x6a\x4e\x20\x25\x27\x2a\x8f\xfa\x8c\x3e\xf5\x6e\x18\xcb\xf0\x2d\xfc\xa1\x4f\xbd\x45\x2a\x26\x73\x7c\xab\xfe\x65\xed\xb0\x33\x6f\xd5\x3f\xfa\xd4\xbb\x95\x05\x6f\x05\x3c\x11\x78\x94\xf5\x65\x32\x35\x13\xf0\x44\xe0\x51\xa6\xb2\x9c\xfc\x9c\xca\x7e\xa8\x07\xf4\xa9\xc7\x49\x3a\x2d\xaa\x09\xe7\x79\x26\x33\x99\x47\xf4\xc9\xf2\x7d\x34\xbf\x3d\x04\x32\xf3\xb6\x96\x24\x29\xd0\x7c\x8a\x6f\xe5\xaf\x6c\x8a\xcb\x5a\x39\xfa\xd4\x2b\xca\x05\xbe\x95\xbf\x72\x30\x34\x97\x43\xa1\x39\x0c\xec\x2b\x0c\xeb\x2b\x3c\x2f\xe1\x79\x29\xf3\x4b\x00\xbf\x85\x3f\xf9\x46\xc4\x31\x9d\xcd\x64\x82\x7a\x52\xb9\xdf\x3e\xa8\xfc\x6f\x65\xef\x66\x34\x93\xec\xc5\xad\x7e\xb0\x29\x90\xc9\x3c\xa2\x4f\xbd\x32\xa7\xbf\xe1\x5b\xf8\xd3\x6f\x90\x43\x3d\xa8\x14\x96\xab\x04\x26\x7b\x08\x62\xcb\x42\x02\xf5\xad\x7b\x46\x9f\x7a\x13\x09\x8c\x90\xaa\x9f\x36\x1f\x79\x97\x57\x17\xef\xcf\x7e\xb8\x8c\xe0\xb2\xd9\xbb\x4b\x56\xd2\xa0\x05\xd0\xba\xea\x68\x2a\xe0\x10\x5c\x00\xc5\xad\x53\xb6\x9d\xa5\x6f\xcf\xcf\xaf\x4e\x8e\x1b\xea\xad\xcb\x9c\x4a\x5f\x22\x77\x49\x52\x3e\x99\x1f\xd3\x02\xa8\x62\x68\x13\x48\x99\x0d\x19\xe0\xe8\x3d\x32\x32\x4f\x7c\xef\x9e\xd1\x7d\x4f\x5d\x9a\xf6\xe6\x2a\x98\xe0\xbd\x7e\x40\x8f\xfa\x03\x36\x39\x64\x15\x73\x32\xf9\x72\xc3\xbe\xca\x1a\xf4\xa3\x44\x6d\xe4\xab\x78\x47\x49\x36\xc5\xf7\xee\x59\xa7\x1f\x72\x92\xea\x64\xf9\x88\x1e\x7b\xa7\x34\xff\xe2\x77\x25\x78\x37\xbc\x8a\x79\xff\x90\xe6\xe9\x2d\xf4\xa1\x21\x55\x66\x9e\x54\xd2\x8e\xd2\x65\x7a\x43\x33\x0a\xa4\xdb\xbd\x3c\x9c\xed\xab\xae\xfb\x03\x9b\xd2\x19\x25\x3c\xa8\xba\x92\x28\xb3\x2e\xc2\xa4\x4a\xc5\xe6\xeb\x51\xa5\x81\x5b\xaf\x9b\x46\x95\x00\xdf\xf7\x9a\x92\xab\x63\xf5\xb2\x37\x25\x03\xc3\xa8\x9f\xe5\x7e\x76\x73\x78\xea\x63\xcd\x49\xba\x14\x25\x27\x17\x12\xa1\xf1\x2b\x4e\x08\x9e\xf4\x6a\x69\x72\x71\xe1\xac\xbc\x49\x79\x81\x9f\x4c\xb5\xc3\xfb\x9e\x79\x44\x9f\x04\xcd\x8a\xe1\x13\x29\x26\xe9\x92\x9c\x7c\x5d\x72\x52\x14\x94\xe5\xc3\xfb\x5e\x35\x69\x2d\x29\x88\x1f\xaf\x3e\x9c\xbe\xdd\x54\xd9\x1a\x6d\x10\x8f\x6a\x7a\xae\xd3\x89\xf5\x85\xb7\xbb\x03\x9f\x8b\x45\x76\x99\xce\x48\x5d\xda\x1c\xf7\xd1\xbd\xfd\x9c\x28\x7d\x03\x00\x70\x5d\x87\x2d\xe9\x72\xb9\x8f\xb4\x80\xa8\x10\xea\xb3\x7b\xd9\xbc\x43\xaf\x4e\x3e\x7c\x3c\x3d\xbc\x02\x41\xb0\xdc\x86\xb0\x96\x66\x4d\xd4\x6e\xbf\x57\x24\xaf\x49\xda\xba\x95\xa1\xa3\x3f\x9d\x5c\x5c\xbe\x3f\x3f\xc3\x27\x1e\x01\xfc\x5f\x7f\xfd\x74\x72\xf1\xcb\xf5\xfb\xb3\xab\x93\x1f\x54\x74\xe5\x4e\x67\xe7\xb2\xf7\xeb\x5f\x4b\xc2\x1f\xcc\x3e\xde\x22\xb8\xfe\xc3\x46\x99\xac\xa9\x64\x5d\x55\x84\x09\x7a\xd6\x57\x3d\xa3\xe4\x1e\x56\x1e\x3f\xd1\xe2\x12\x62\x79\x1e\x65\x74\xf2\x65\x78\xd9\x0b\xde\x25\x46\xd2\x11\x12\x64\x91\xe1\x65\x2f\x4c\x90\xdf\xe5\xbf\x4e\x52\xdf\xbd\x04\xf3\xfd\x2d\x2b\xf3\x69\xe1\x3e\xab\x77\xf3\xf5\x28\xa3\x24\x17\x17\x64\x22\xbc\x2c\x5e\x62\x50\x0b\xcd\x6f\xdd\xa7\x4a\x8d\xc1\x37\x59\xea\x82\x31\xf8\xaa\xeb\xb5\xaf\xf2\x1b\x84\x19\xf0\x3e\xba\x77\x44\x8b\x4b\xc2\x41\xf1\x06\xc4\x88\xef\x28\x2f\xc0\xf3\xfd\x50\xc2\x52\xf3\xa7\xb5\x46\x84\x86\xe6\xbb\xf4\xdf\x7c\xac\xac\x2e\x31\xf0\x65\x35\xc5\xd0\x83\xc7\xb4\x58\x4a\xe2\x81\x70\x7c\x59\x4d\x91\x68\x95\xe9\x4b\x83\x73\xfb\x28\xe9\xe4\x52\x30\xef\x8b\xff\x0a\x38\xa0\x98\x7b\x5f\xfd\x57\xf9\x95\x16\x82\xf1\x07\x3f\x43\x98\x22\x49\x2f\x96\x13\x2f\x83\xff\x0a\xec\x88\x21\xf9\xde\x31\x8e\xcf\xc3\x77\x4f\x9a\xef\x48\xc3\x77\xe9\x44\xb6\x80\xcf\x37\x7f\x6b\x2c\xd7\x58\x40\x12\x8a\xac\x14\x84\x1f\x5f\x9e\xe2\x73\xf7\x6c\xd3\x6d\xa2\x49\x31\x09\x28\xee\xa3\x90\xae\x4d\x62\x75\xc9\xe5\xdf\xc3\x44\xe8\xa3\xcf\xa3\x1e\xa7\x22\x3d\x9c\xa6\x4b\x59\xf1\x57\xff\xcd\x97\xfb\x83\xf8\xdc\xe5\x6a\x4c\x57\xf6\x3a\xf3\x54\x36\xaa\xf4\x0f\xed\x25\xa5\x3c\xee\x68\x46\x78\x94\x74\x3a\x90\xcb\xb4\xbf\x25\x67\x53\x75\x8a\x83\x4f\x94\x56\xc7\x5b\xbc\xa1\x2a\x9d\xab\x25\x21\xb8\x10\xf8\x2d\xfc\x21\xf5\xd6\x33\x83\x78\xdb\x73\xc3\x84\x0f\x7f\xfd\x94\x53\xe1\xbe\xfa\xaf\x4a\xfe\x52\x2e\xdf\x31\xae\x45\x04\xf8\x6d\x35\x65\xbd\x71\xee\xb5\x41\xc8\x8f\xf8\xd1\xb3\x3e\xf8\x11\xe5\xbd\xf7\x97\xd7\x67\xe7\xc7\x27\x07\x79\x4f\x69\x43\xf4\xb4\x36\x05\x7e\x1c\xba\x3b\x4e\x9d\xa6\xee\x38\x71\x53\x3a\x7e\x0c\x74\x33\xec\xfd\xfc\xbf\xca\xfa\xc6\x25\x44\x2f\x7b\x7b\xfd\xde\x9f\x23\xdd\x1f\x4f\xd1\xa3\xae\x31\xf2\x4f\xee\x93\x56\x3f\xc1\x44\xcf\x25\x26\x66\x7a\x03\x23\x21\xf0\xd9\x59\xbb\x6a\x56\x45\x1a\xd5\x90\xf4\xca\xe8\xea\x5b\xae\xd6\x1c\xd9\xa6\x84\xd7\x3e\x47\xf9\x41\xec\xbe\x60\xf5\xe0\x67\xc0\x61\x95\xc9\xd0\xcf\xae\x23\x79\xba\xcc\xca\xfc\x51\xcd\x27\x97\x7b\x7c\x97\x93\x09\xbb\xcd\xe9\x63\x18\x30\xe6\x5f\x61\x60\x15\xa8\xb6\x86\x4a\xbc\xda\x68\x11\xd4\x8f\x3c\xbd\xd2\xeb\x6b\x5d\x03\xd2\xe1\x74\x65\x12\x22\xeb\x6a\x80\x35\xa5\x5e\xea\x4c\x6a\xb4\x3f\xc5\x85\x3e\x38\x74\xe4\x00\x59\xc7\xad\xa4\x34\x39\x44\x5f\xf0\xf4\x0e\x37\x6b\xd9\x9b\x32\x2d\x3a\x8b\x41\x77\xe0\x9e\x66\xd9\xe1\x74\x0a\xf8\x12\xfc\xfa\x86\x49\xb1\xdf\xb0\xf1\x9d\x4e\x8c\x13\x3c\x93\x9e\x4e\xa7\x9e\xb1\x02\x84\x95\x7b\x32\xe6\xf0\xce\x06\xbe\xc1\x15\xb2\xa7\x8f\x97\xb7\xad\x0d\x19\xcd\xdb\x62\x4e\xac\x82\x61\x7b\x99\x16\x85\xf2\x96\xfc\x37\xc1\xfe\x16\x69\x03\x54\xaf\x71\x1d\x63\xc8\xf5\x00\x55\xa6\x28\x59\xaf\xb5\x15\x5a\xdd\x0a\x86\xa9\x60\x93\xd6\xe5\x83\xac\x8b\x93\xdc\xa5\xa8\x51\x63\xb2\xae\x28\xda\x79\x9e\x1c\x6c\xad\x14\xa5\x26\xb0\x00\xe9\x82\x6b\xd4\x9d\x34\xf1\xc2\x8b\xa9\x20\xd9\x3c\x69\xa5\x31\xd3\x8f\x15\xd5\xb8\x5a\x60\xf3\x7a\x60\x8f\x6e\x92\x77\x31\x04\x07\xf7\xac\x36\xb4\x1d\xf6\x93\x4c\x1a\x0a\x2c\xe0\xde\x53\xf0\x38\x4f\xd0\x5c\xdf\xd0\xf2\x75\x8b\x18\x0b\x87\x35\xdd\x62\xea\x17\x4c\x0d\x44\x8f\x5e\xa3\x4a\xfe\x6a\x30\x4b\xdf\x8d\x42\x0a\x9a\x74\x34\x36\xa6\xc2\x66\x4a\x65\x4d\xa9\x0e\x30\x2e\x67\x30\x85\xb8\xb6\x9d\x4e\x6e\xb0\xf8\x89\xe4\xeb\x25\x7d\x5c\x4d\x89\x05\x2a\x12\xc4\xe3\x22\x59\x57\x22\xd0\xd8\xbd\x55\x2c\x33\x2a\xe2\xe8\x45\xa4\x5c\xa6\x64\x09\x5c\x79\x42\x82\x0e\x09\xfe\xe2\x8f\xab\xcf\x2f\x5e\xdc\x06\xe1\xa9\xbd\x0a\xd4\x34\xbe\x7e\xb9\x5a\xed\xaa\xa0\xd1\x36\xa2\xe1\x1f\xa3\xe4\x80\x0c\xa7\x64\xc2\xa6\xe4\xd3\xc5\x7b\x4b\xd9\xc5\x24\xe9\x71\xb2\xcc\xd2\x09\x89\x4b\x44\xf2\xea\x77\xd5\xf0\x04\xbf\xf8\x63\x7c\x30\xdc\x8b\x0f\x86\xaf\x56\xdf\xad\xde\xae\x8e\x92\xd5\xcb\xf8\x60\xf8\x76\x75\xbc\x3a\x4c\x56\xaf\xfa\x89\xdf\xa7\x99\xdf\xa7\x5a\x8d\x7e\x8b\x13\x54\xef\x91\x6a\x71\x8a\x5f\xc4\x9f\x5f\xac\x3e\xf7\x56\x9f\xff\x7d\xf5\xb9\xbb\xfa\x7c\xb0\xfa\xbc\x5a\x7d\x8e\x57\x9f\x93\xd5\xe7\xd1\xea\xf3\x78\xf5\xf9\x69\xf5\x79\xbd\xfa\xfc\x39\x79\x71\x8b\xe6\x38\xd0\x89\x46\xcb\xba\x26\xf3\x3c\x2d\xce\xef\xed\xd5\x53\xe0\x6d\xda\xf8\xb0\xb4\x7e\x7d\x8c\x8e\xb4\xd1\xc3\xc6\x0d\x06\x7d\x76\xeb\xcb\x9d\x2d\xb7\xbe\x2a\xdd\x4e\x0b\xd8\xf8\x05\x99\xb0\x7c\xea\xf0\x81\xdc\xf8\x86\x2e\xfc\x5b\x4f\x79\x58\xdf\x59\x6a\xb5\x6a\x24\x92\x6d\x0d\x70\x76\x47\xa7\xa4\xbd\x4c\x79\xba\x68\xff\x0d\x6c\xb9\xfe\x56\xaf\x50\xfb\x38\x1d\x89\xb1\x3c\x0f\x6b\xe6\xa7\x07\x7c\x18\x45\x5d\x6e\x9d\x59\x3f\x8f\xd3\x4c\xbb\x69\xd8\x72\x2f\xf2\xa2\x73\x2b\x5f\xdb\xa3\x71\xeb\x6e\xd4\x1f\x6f\x34\xd0\x11\x60\xa0\x03\xa7\x11\x6a\xf0\x50\xa1\x15\xf6\xf3\xde\x64\x9e\xf2\x23\x36\x25\x87\x22\xa6\x49\x4b\x92\x46\xcb\x52\xc4\xe0\x42\x61\x67\x60\xfd\x7c\xf0\x35\xba\x1b\x0d\xaa\xad\x59\x8f\x2d\xb2\xc8\xab\xff\x40\x3b\x7d\x15\x6f\xe2\x6e\xb4\xb7\x35\xeb\xee\x00\xaa\x57\x59\x5f\x6d\xca\xaa\x50\xef\x83\x1c\xe9\x43\x38\x52\x6f\xf7\xc1\x00\x2d\x6c\x4f\x51\xf4\xf9\xf3\x1f\x06\x51\xb2\x46\x0f\x41\x77\xad\xae\x5a\x3c\xfa\x9f\x17\xe3\x6e\x12\xc9\x0c\x7b\x8d\x19\x7a\xfa\xeb\xab\xa6\xaf\x91\xea\xd4\x8d\xec\xd4\xcd\xf6\x4e\xad\xd1\x4d\x7d\xc6\xd4\xda\x2c\x62\x49\xeb\x40\x2e\xbb\xae\x5f\x7a\x27\x67\x47\xe7\xc7\x27\xd7\x87\x67\xc7\xd7\xc7\x27\xf0\xf8\xf1\xf0\xea\xc7\xeb\xcb\x93\x1f\x3e\x9c\x9c\x5d\x5d\x1e\xcc\x62\x9e\x0c\xb9\xac\x76\xd3\xec\xfa\xf5\xca\x7c\xdb\x86\x70\x5b\x71\xcf\xfe\xb4\x4e\xd0\xf5\x36\x97\xed\xf7\x96\xbe\xf0\xbc\x91\xbc\xfa\x0f\x38\xab\x3d\x20\xea\x2b\x3d\x69\x7b\x8e\x0c\x92\xc0\xdf\xbf\x87\x6f\x11\xc5\xd6\x43\x8e\xf1\x3b\x57\xb7\x92\x56\xa7\x22\x2a\x71\x3e\x4a\xc7\x68\x82\xfb\xad\xc1\x5e\x27\x2e\xf0\xde\xeb\xd7\xf1\x04\x47\x11\xc6\xb8\x3c\x78\x35\xfc\xf3\xf7\xf2\x21\xec\xc8\xc1\x60\xf8\x6a\xaf\x21\x79\x6f\xd8\x4f\x64\x2f\x4b\x5c\x6a\xdb\x8a\x41\x82\x62\x8a\xe9\x6a\x35\x1a\x27\xea\xa4\x2b\x13\x14\x33\xcc\xbc\x94\xfe\x0e\x8e\x5f\x75\x8a\x24\x49\xd0\xe0\x55\xa7\xe8\x74\xf8\x68\x32\xee\x76\x91\x3e\x1a\x9f\xe4\xa6\x1f\x4e\xb4\xb5\x42\x16\x97\x89\x0d\xb5\xff\x04\xc1\x65\x87\x74\xb5\xba\x46\xc5\x9c\x95\xd9\xf4\x18\x30\x70\x31\x64\xab\xd5\xb5\x77\x8c\x9f\x54\xc8\x03\x02\x1d\xd7\xf1\xd0\x7a\xb9\xa2\xda\xb0\x0e\xf6\x54\x8d\xb7\xab\xe3\x7c\x68\x3b\x40\xe1\xdc\x69\xd3\xa9\xa1\xfc\xa0\x36\x6e\xe2\x6d\x43\x6d\xb9\x17\x7d\x5b\x95\xa2\x07\x62\xe8\x05\xec\x4e\x85\x20\x3c\xc7\x51\x64\x1d\x02\xdd\x92\xaf\x66\xbd\x20\x49\x93\x09\x45\x90\x28\x67\xc3\xc6\xdd\x76\x40\x74\x1e\xc0\xab\x19\xd3\x81\x1a\xa8\x0a\x65\x0e\xd1\x7f\x55\xc2\xd0\x4d\x80\x3d\x5d\x65\x82\x9b\xb1\xaf\x55\xb4\x37\x92\x98\x58\xd2\x3e\x96\xee\xc9\x5f\x53\x50\xc6\xb7\x31\xcd\xf2\x71\x4b\x73\x80\x93\x54\xc4\x4c\x11\x84\xb1\x48\x3c\x64\x77\x19\xd8\xc2\xca\x01\x6f\x72\xff\x00\x5f\x57\xab\xd8\x9f\x1c\x89\xd8\x2f\xc8\xed\xc9\xd7\x65\xec\xcf\x61\x92\xf8\x53\xb8\x46\x7e\x23\xb7\x64\x8b\x89\xab\x5b\x1c\xe3\x67\x6d\x07\x63\xf0\x78\x00\xce\xaa\x3d\x9a\x6f\x3f\x77\x8e\x0c\xf2\xd0\x20\x53\x03\xc5\x88\x8f\xf2\x31\x58\xb4\x9e\xc4\x14\xc2\x12\x5b\xb3\xc2\xb5\xe7\x53\x3f\x28\xa1\xb3\xb3\x20\x3b\x5b\x87\x23\x58\x96\xa2\xd9\x9b\x12\xf4\x59\x55\x08\x76\x8b\x5e\x1d\x79\xab\xd6\x3f\x7b\xcc\xc1\x2c\x5e\xc6\x14\x51\x63\xde\xae\x2a\x45\x74\x64\x52\xc6\x38\xd7\x7e\x06\x2b\xd3\x74\x50\x85\xe9\xbc\x47\xa7\x43\x6d\x18\xed\x92\x93\x6a\x3e\x6d\x08\xdb\xa3\xd3\x64\x58\xad\x62\x54\x49\x40\x32\xdb\x18\xe5\xe1\x2c\xa8\x8b\xbe\x0d\xbe\xf3\xc2\x75\xdc\x11\x7a\x1a\x46\xe3\x96\x81\xdd\x16\xac\xa9\xa8\xae\xa9\x78\x66\x4d\x05\xac\xe9\xb9\x5c\xd0\x44\x32\x67\x30\x0c\x9a\x6c\x5a\x50\x21\xf3\x32\x3f\x2f\xf3\x60\x1f\x3a\x73\x58\x67\x78\x42\x23\xef\xdf\x4a\xc2\x1f\x3e\x4a\x1a\xa5\xc0\x64\xb5\x7a\x5a\x7b\x9b\xfc\xca\x8e\xbb\x45\xb0\x3b\x9c\x5f\x7c\xee\xbe\xb8\x5d\xa0\xe8\x8f\x7b\x7d\xc9\x8b\xf1\x87\x27\x81\x1b\x89\x63\xed\x33\x4e\x1e\x35\x38\x8a\x6c\x6c\xcb\xf5\xa1\x37\xd1\xca\xb1\x93\x26\x41\xab\xc9\x28\xc8\xd9\x9c\xb1\x96\x0f\x2c\x8b\xab\xd9\x64\x22\x4c\xc8\x97\x9a\x35\x3c\x20\x75\xc9\xed\x69\x67\xb6\xa3\xb1\x8e\xe2\x7b\x19\x13\xd4\x47\x92\xc6\xe9\x4b\x12\xaa\x45\x24\x9d\x20\x50\x03\x66\xe6\x8c\x29\x80\xc0\x62\xdd\xfa\xb2\x95\xb1\xf2\x62\x20\xe2\xb0\x2c\xa2\x38\xfa\x9f\x08\x31\x3c\xea\xa3\x3e\x02\xcf\xc0\xce\x20\xc9\x9a\x2b\x21\x70\x06\x5a\xe2\x9d\x3e\xca\x70\x5f\x9e\xa3\xfb\x13\xc7\x1b\x4e\x24\x5c\x99\x26\x66\x98\x8c\x26\x63\x34\xc5\xf7\x71\x81\x66\x8a\x33\x66\x09\x9a\xe3\xa9\x1a\x33\x5a\xe2\x69\x2f\x38\xc7\xf6\xb3\xd7\x85\x0b\x5d\xa7\x41\x74\x81\x8b\x51\x36\x6e\xbd\xda\xc1\x78\x01\xc7\x01\x9c\xb8\x3b\x03\x94\xe3\xdc\x12\x8c\x40\x64\x22\xda\xc5\xd1\x8b\x08\xe5\xf8\x6e\xa4\xb2\x8e\xe3\x05\xca\x21\xfd\xc1\xa5\x24\xc9\x3a\x1d\x4d\xc6\xf8\xc9\xf0\xa5\x33\x73\xf4\x20\x75\xc0\xce\x2b\xa7\xeb\x72\xbd\x2e\xc1\x3b\x7b\x73\x7b\x09\xca\xdd\xd9\x95\xa2\xdc\x9e\x75\xb4\x1b\xfd\x21\x42\xb9\x3e\xc3\x18\xda\x66\x54\xd6\xe9\x88\x5e\x5a\x28\x97\x90\xbd\x54\x32\x9b\xc6\x9d\x14\xf4\x09\x7c\x82\x14\x04\xa2\x80\x17\xc3\xc2\xb0\xd4\xc5\x30\x5d\x27\x6b\xf4\x25\xe0\x95\xd4\x97\x6a\x9c\x46\x1f\x7f\x40\x8d\xda\xff\x7d\x83\x07\x8a\xab\x39\xe1\xa4\x4d\x8b\x76\xce\xda\xc0\x83\xb7\x65\x89\x69\x3b\xea\x92\x0d\xe6\x6a\xb6\x55\x0b\x26\x06\xe1\x54\x3e\x04\x98\xc7\x7e\x84\xa3\x74\x94\x8f\x31\xf5\xf8\x84\x70\x50\x85\x92\xac\xd7\xc9\xe4\x9d\x9d\x60\x4c\x61\x39\xc3\x64\x6d\x39\x13\x75\x39\xc9\x77\x45\x30\x21\x0d\x51\xb3\xbe\x69\x42\x28\xe6\x3d\xb3\x42\x26\xd6\x92\x19\x35\x33\xa3\x4e\x31\x1d\x31\x05\xcc\xa9\x01\xe6\x5c\x43\x6d\x17\xdf\x8c\x52\x0d\xa4\x29\x72\x74\x44\xf4\x22\xda\xc1\x9a\xc3\x32\x84\x71\x2e\x8b\x74\xf3\x04\x01\xe0\x78\x48\x54\xd5\xa7\x4f\x49\x35\x78\xb8\xb6\xd3\x01\x7b\x83\xbc\x49\x22\x8f\x9d\xa6\xf9\xf2\x8a\x34\x00\xd1\x68\xec\xac\x4a\xbf\x90\x87\x22\x96\xdc\x07\xe8\x68\xc4\x3e\x8d\xbe\x89\x8a\x90\x2b\x8d\x20\x28\xec\xd8\xd1\x21\x36\x6e\x5a\x83\xd0\x81\x26\xea\x3c\x63\xee\x3c\x2b\x70\x7f\xbf\x78\xcd\x4c\xed\x85\xa9\xbd\x94\x9b\x6e\x34\xc6\x51\xb7\xa1\x1e\x36\x2a\xc6\x49\x4b\x18\xc2\x5c\x99\x8b\xa7\x5d\x1c\x6d\xc8\x9e\xe8\xb0\x84\x71\x9a\xd8\x08\xd2\xbe\x4c\xf1\x20\x8a\x86\xd1\x41\xd4\x15\x5a\xd4\xd3\x89\x2a\x7b\x11\x22\xfc\x6c\x9a\x4b\x2f\x4a\x96\x61\x66\x3a\x10\x88\xfd\x69\x8d\xb6\x1c\xd7\xa3\x7c\x6c\xb2\xe3\x28\x41\x0c\x5f\xc5\x74\xd4\x1f\x27\x28\xc5\x66\x3a\x50\x21\xd1\x63\x69\xa4\xc5\x92\xde\x35\x90\x78\x50\xe2\x48\xf0\x92\x44\xc3\x38\x7d\xb3\xd7\xe9\x44\xa3\xb1\xe4\x7c\x98\xe6\x5f\xd2\xdd\x3d\x09\x5d\x05\xc4\xa1\x18\x31\x9b\xde\x47\xf2\xcb\x78\xb5\x8a\xf9\x88\x8d\xf1\x68\x9c\x24\xa8\x04\xc7\xf1\x07\xb2\xf9\xc1\x38\x19\x46\x51\x82\x8a\x03\xf9\xd9\xcc\xef\x10\xf2\x96\x1b\xb6\xb4\x95\x9b\x37\x05\x7b\xd3\x54\x92\x3d\x9b\xc6\x26\xb4\xd9\xce\x40\x42\x8e\x13\x8d\xfd\x5b\x94\xec\x03\xa1\xcf\x40\x78\x4c\x0c\xb7\xd8\x47\x2c\x31\xe1\x58\xbd\xec\x07\x91\xf6\x1d\x2e\xf7\x9f\x81\x18\x5b\x28\xed\x0e\x90\xb3\xcb\x0d\x6a\x4b\x13\xe7\x1a\x26\x5c\x53\x09\x48\x6a\x87\x92\x60\x87\x12\xd8\xa1\x24\xd1\x1e\xd7\x49\xeb\x79\xc6\x9c\x60\xb9\x95\x86\x31\x71\xe4\x4c\x4c\x12\x94\x79\xaf\x99\x1e\xd5\xc4\xf2\x25\xad\xc9\x9b\x41\xa7\x13\xbd\x88\xb0\xd7\x83\xc9\xee\x20\xa9\x4e\x88\x4c\x43\x19\xce\x5c\x4a\x66\xdd\xbb\x48\x1e\x7a\xc7\x0b\xe8\x3c\xc3\xfd\xfd\x99\x3d\xd6\xe1\x54\xfa\x1a\x73\x44\x7c\x06\x78\x96\x24\x89\x01\xd0\x59\xb7\x9b\xec\x9b\xc2\x10\xac\x78\x8e\xfb\xfb\x73\xb7\xfd\xe7\x60\xc5\x3c\x1f\x5b\x94\xdf\xe9\x4c\x75\x94\x9c\xd1\x7c\x9c\xb4\x1a\x3d\x45\x10\x85\x53\xe2\x26\xe4\x4d\xd4\xa9\xba\x5a\x19\x6a\x25\xc7\x5c\x45\xf9\xe2\xa3\x81\x44\x2f\x7c\xb4\x07\x8e\xe5\xab\xf9\x0a\x9c\xca\x7c\x25\x4e\x65\xbe\x0c\xa7\xa3\x3d\xeb\x36\x34\xb3\x4c\xc9\x2e\xb8\xa2\x66\x20\x5b\xcc\x77\x30\x2e\xcc\x97\x62\x17\x18\x11\xba\x83\x71\x69\x9d\x13\xec\xda\x73\x0b\xd2\x0f\xe8\x6e\x39\x84\x52\x07\xc5\x6e\x3e\xec\xaf\x93\x64\x1d\x4f\x13\xe3\x3a\x7e\xd4\xb7\x76\xdc\xcb\x4e\x67\xe9\x4d\x49\x4c\xe5\xbb\x26\x1f\x3a\x1d\x90\x21\xfd\x41\x2e\xac\x4d\xd4\xfb\x71\xf7\xcf\x72\x79\x33\x4d\x7e\x6c\x60\x98\xb0\x23\x06\x80\x8f\x05\x76\x51\x39\x27\xda\xa1\xab\x55\x10\x51\x46\x1f\x74\x40\x56\x42\xcc\x18\xea\x7c\x83\x44\x26\x5a\xaa\xd0\x2c\x2e\x95\xc8\x66\x80\x94\xef\xbe\xc3\x98\x27\x2d\x4b\xd5\x1b\x91\x8b\x85\xa4\x12\xf7\xf7\x4b\x27\x89\x29\x0d\x26\xcb\x70\x3e\x2a\xc7\x68\x82\x33\x4d\x0c\xce\x24\x64\xfa\x64\x17\x9a\xe2\x5b\x34\xd7\x11\x74\x26\x3b\x18\x5f\x77\x3a\x33\xf9\x67\x0f\x81\x25\xee\xef\x2f\x5f\x4f\x4c\xdd\x4b\x59\xf7\x1c\xef\xa8\xfb\xb1\x05\x9e\x8c\x96\x63\x74\x07\x41\x84\x47\x69\xb7\x3b\x6e\x4d\x31\xc6\xb7\x9d\x4e\x3c\x85\x48\xdb\xcf\xee\xc7\x4e\x67\x36\x5a\x8e\x0f\xa6\xa3\xc5\x18\xdf\x75\x3a\x0d\x2c\xc6\x5d\x32\x54\x5f\xd7\xc5\xa8\xf4\x08\xca\xcc\x12\x94\x20\x7d\x2d\x86\x53\x44\x8b\xe3\x87\x3c\x5d\xd0\xc9\x70\x6e\xcf\x92\x62\x1d\x2f\x51\x86\x80\xa1\x97\xc8\xd1\x28\xf4\x44\xfd\xde\xcb\xde\xab\xe8\xf9\x1e\x4a\x34\xfd\xa5\x77\xc6\xf8\x02\x56\x8a\xe3\xa7\xdc\x3c\x5f\x2a\x4a\x64\x98\x21\x9b\xf4\x31\x15\xf3\x61\xa1\xef\x09\xe4\x8b\xc9\x33\x0b\x31\xf3\x22\x5d\x36\xd2\x4b\x70\xa9\xd2\x22\x31\x8b\xa3\x08\xf1\xca\x05\x57\x82\x3c\xff\x4b\x56\x8a\x64\x56\x8a\x61\xae\x6f\x73\x50\x11\x50\x0e\x4c\x9e\x23\x12\x42\x8a\x06\x08\x29\x14\x84\x08\x0d\xf4\x49\x2b\x8d\x27\x28\x43\x6c\x94\x8d\x15\x48\xce\x30\x77\x97\x3b\xd9\xb8\x35\x3b\x20\xf1\x04\xcd\xa0\xed\x61\xae\x04\xf4\x14\x4d\x92\xf5\x3a\x96\x34\x4b\x78\x27\x2b\x0e\x94\x6b\x58\x44\x34\x93\xae\xbc\x41\xea\x38\xb0\xda\xab\xc6\x07\xfc\xc5\xbb\x50\xff\xe0\xdf\xfc\xf2\xeb\x5f\x8b\xd0\xe7\x42\x83\x15\x79\xe0\xf8\x29\xe2\xc5\xdd\x52\xfe\x55\x2f\x8e\x1b\x8d\xc3\xff\xf1\x5b\xe3\x8c\xdd\x1e\xde\x30\x2e\xf0\x3d\x22\xbd\xf7\xda\xec\x1e\xe8\x68\x88\x48\x40\x7a\x57\x3c\xcd\x0b\x2a\x9b\x55\x16\x9a\x7e\x8a\xe2\x27\x49\x4f\x29\x94\x7d\x3c\xbc\x38\xfc\x70\x79\x7d\xf9\xcb\x87\xb7\xe7\xa7\x98\xf4\xaa\xef\x97\x57\x87\x57\x27\xee\xd5\x34\xe6\xaa\xc3\x8d\x97\xd8\x6c\x83\x03\x2f\x0b\x73\xd0\x2f\xb5\x90\xda\x69\x4f\xcb\x92\xed\x38\x72\xd5\xc3\x38\xc9\x54\x0b\x17\x17\xa4\x28\xd2\x5b\x02\xae\x3a\x1a\xf2\x98\x4a\x41\x9d\x11\xbc\xf4\x5e\xf1\x74\x42\x0e\x36\xa4\x87\x50\xa2\x9c\x4e\x72\xf5\xdf\xe0\x59\xac\xe2\x71\x4a\xd5\x69\xbf\x26\xa1\x3b\x42\xe7\x62\x07\x13\xe5\xd2\x2c\xdd\x20\x61\x28\xbe\xfd\x56\xac\xac\x70\xfa\x70\x9f\x9d\x14\x7a\x16\x11\x07\xca\x00\x82\xbb\x8e\xf8\x38\x59\x87\xd7\x91\x86\x00\x23\x9d\x0e\xf1\x62\xa8\xf2\x4e\x87\x3b\xef\x81\x64\xc4\x77\x07\x70\x6a\x36\x9d\xda\x9d\x4e\x61\xee\xc6\x22\x8f\xdb\x88\x92\x75\x9c\x5b\x91\x9d\xc0\xb9\xcf\x8a\xa0\x51\x6a\xca\xf4\x11\x97\x04\x89\x18\xbb\x78\x99\x92\x45\xf0\x42\x80\x4e\x02\xf2\x59\x0e\x8f\x58\xb2\x60\x24\xa0\x5f\x2e\x20\x88\x75\xe1\x2a\x3f\x61\xb8\x46\x33\x91\x60\x43\x5f\x4c\xa1\x04\x54\x12\x12\x55\xc9\x2f\xb0\xa8\xb2\x86\x51\x3e\xf6\xa4\xed\x33\x13\x8c\x57\x6e\x38\x9f\xae\xff\x67\x45\x70\xd2\x01\x4e\x79\xe0\x3f\x9b\x2a\x7a\x87\x01\xbd\xd3\x82\xb6\x63\x0f\xd8\xdb\xff\x16\x75\x69\x37\x1a\xb6\xa3\x2e\xf3\x04\x78\x29\x94\xd2\xd9\x25\x5b\xe3\x86\x31\x75\x6b\x58\xf7\x38\xb5\x5a\x39\x9f\x47\x6c\xd6\x56\xa4\xef\x6a\x55\x9b\xe6\x6a\xc6\x33\xf8\xee\x1a\x99\x3f\xe7\xff\xaf\xd3\x51\xd1\x18\x01\x42\x13\xf0\x19\xb4\xef\x8a\x2f\xbd\xf3\x48\xb2\x04\x69\x96\x0d\x9f\xd6\x48\x59\x11\x4e\xe5\xa3\xb2\x92\x93\x8f\xeb\x56\x19\xe7\xbd\x34\xcb\x8c\x8b\x2c\x88\x0e\x02\x6e\x1c\x25\xc8\x48\x20\x42\x93\x58\x24\x88\x24\x16\x5e\x61\x6f\x78\x3b\x65\xb5\x52\xc1\x42\x72\x6d\x7d\x37\x05\x4f\xa7\xb2\x67\x89\xab\x49\x24\x74\xe6\x17\x72\x37\x04\x5c\x85\x36\x52\x82\xef\x45\xcc\x92\x4e\x67\x11\xa7\x49\x02\x0e\x87\xd5\x98\x41\x10\xa0\xd7\x35\xd7\xe6\x90\x53\xb3\x39\x81\x2a\x0f\xbd\x0c\x67\xb8\x8f\x66\x96\xd3\xdb\xcf\x5e\xcf\x40\x52\xc6\x54\x04\xa7\x74\x94\x8d\xc1\x37\x52\x53\x45\xda\x8b\xb0\xec\x96\x9c\xe1\x11\xdf\x92\xd5\xd2\xb3\x07\xb9\x76\x3d\xbb\xf6\x6f\xdd\xed\x66\xaf\xba\x33\x73\xb9\xee\x3c\x70\x52\xea\x91\x43\xf0\x18\xaa\xee\x62\xa3\xeb\x6b\x75\x64\x5c\xef\xee\x7d\x37\xf8\xcb\xf7\xdf\xf5\xfb\xfd\xc1\xcb\x57\x7f\xfe\xcb\x5e\x7f\xf7\xe5\xcb\xbd\xbd\xfb\x97\x51\xab\x72\xaa\x3c\xe8\x1b\xd3\xe8\xda\x9c\x46\xa6\xec\xde\xcb\xbd\xbf\xfc\x65\xef\xfb\x97\xfd\xbd\xfe\xcb\xdd\xbd\x97\x2f\xf7\xa0\x70\x78\x44\xdd\xe8\xcb\xca\xe8\xfa\xfa\xaf\x1f\x5d\xd1\x97\x7f\xd9\xfb\xcb\xf7\x7b\xaf\xbe\x7f\xf5\x6a\xf7\xe5\x9e\x2e\xd8\x74\xe2\xdd\x42\xf1\xeb\xcd\x71\x74\x11\xaf\x06\x7f\x0f\x22\x5e\x52\x88\x23\xa5\x5e\x13\x17\x41\x58\x72\xad\xcc\x26\xc3\xf9\x32\xe3\x6c\xe1\x05\x6e\x10\x2c\xb8\x0e\xa3\x85\x3e\xc5\x6c\x9c\x11\x5a\x1c\x4e\x04\xbd\x03\xef\x2a\x90\x50\xf2\x4c\x1b\x85\x46\xe5\x72\x9a\x0a\x12\x59\x77\xaa\x2c\xbb\xab\x85\xcd\x37\x18\x18\xec\x7c\x5c\xa5\xde\xc9\xbd\x63\xdb\x3e\x4a\xcb\x82\x4c\xdf\x3e\x40\x1f\x68\x7e\xeb\x67\x1a\x54\x33\x69\xef\x82\x5b\xf3\x98\x8a\x2e\x94\x68\xbf\x21\xef\xf5\x1d\x05\x9f\x84\x7f\xf5\xee\x09\x9e\x54\x10\xe1\xd1\xc3\x18\xf3\xd5\x8a\x28\x61\xb8\x89\xb4\x23\x48\x2e\x8c\x94\x5c\xd1\x69\x46\x4a\x3e\x4d\x45\xaa\x04\xad\xf2\x09\x62\x02\xfb\x13\x33\xfd\xc0\xa6\x24\x73\xb5\xdf\x8e\xcd\xa3\x3c\x73\x17\xb4\x20\xc1\x4a\x80\xb9\xab\x9f\x32\xba\x71\x05\xb8\x21\xb2\x5c\xe8\x2c\xa5\xc5\x75\x26\xe9\x16\xbf\x9a\x25\xbd\x63\xc2\x58\x20\xfa\x1f\x0a\xf2\x5b\x49\xf2\x09\xc1\xbb\x03\x44\x83\xf0\x25\xa6\x37\xb9\xb1\xdc\xeb\x71\x22\x49\x03\xc9\x97\xc9\x1a\x62\xaf\x7f\xd4\x85\xd8\xd9\xbe\x7c\x3b\xec\x1b\xd6\x6f\x07\xe0\x75\x5b\x9e\xd5\xaa\xaf\xc4\x49\xba\xf7\xc9\xef\x58\x71\x59\x7b\xa4\x2f\x79\x94\x50\xca\x82\x72\xa7\x13\xef\xb0\xad\x23\x58\xad\x9a\xbe\xd7\x5a\x49\x8c\x62\xa3\x5c\x2d\xde\x53\xec\x99\x5d\x6f\x1e\x90\x24\xd5\x95\xe4\xde\x8b\xd6\x22\xf3\x93\x0c\xb5\x54\x18\xc1\xbd\xb7\xe2\x7e\xbe\x51\xb1\x3b\x18\x6b\x8f\x8a\x21\x97\x5c\xec\x77\xbb\xa5\x61\x7e\x82\x22\xa5\x92\xd5\x67\x3d\x5a\x68\xcf\x38\x53\xed\x18\xb8\x0e\x44\x99\x2a\xb8\x0e\xa1\x88\x98\xe8\x15\x97\x3a\xc5\x04\x7f\x33\xd0\xc4\xcd\x3e\xf0\xe4\x2d\x16\xcd\xa7\x0e\xf1\x1c\xd4\xc0\x6e\x67\x80\xee\x02\xd2\x23\x55\x39\xdb\xbb\x6d\x95\x23\x4a\x24\x37\xe6\x4a\xa9\x66\xe4\x29\xa3\x79\xad\x9e\xba\xa8\x6b\xa2\x26\x6b\xad\xa5\x7a\x57\xf7\x84\x6d\xf0\x98\x4e\x95\xfc\x82\xa0\x34\x91\x95\xde\xc5\x91\x9a\x8d\x36\x74\x3a\x4a\xfc\x30\x5d\x4d\xdb\x47\xf5\x48\x23\x95\xc4\xdb\xce\x6b\x23\xa1\xad\x45\x9f\x16\x3d\x31\x27\x1b\x43\x6b\xf9\x2d\x41\x46\xfd\x7d\x8d\x84\x1a\xec\x06\x5d\x25\xbf\x98\x9a\x14\xf0\x7b\x89\x44\x4f\x47\xb0\xfa\x86\x72\x3a\xa7\x2d\x09\xcb\x51\xbb\x76\xe4\x4c\x05\x24\xd2\xf7\x8e\xea\xca\x51\xeb\xdb\xaa\x19\xd6\xc7\x54\xf8\x97\x78\xe3\xd7\xb7\xc1\xf2\xc4\x92\x1d\x94\x07\x97\x9f\xe0\x9d\x55\x7d\x1f\x1f\xab\xbf\x9f\x69\x96\x29\xd7\x10\xb1\xf1\x54\xee\x7f\x3e\xa6\xd3\xf0\xab\x1c\x89\xe9\x73\x6d\x30\xb6\xa9\xd5\x2a\x9e\x05\x63\x08\x76\x41\x15\x13\x4b\xfa\xd8\x81\x51\xfb\x3e\x2d\x0c\xec\x46\xe6\x90\x36\x21\x6c\xd4\xc1\xe2\xee\xeb\xfc\xb4\xd8\x7b\xeb\x2d\x39\xa9\x32\xd1\xfe\xe0\xe0\xac\x4a\x6a\x87\x79\xbf\x7a\x98\x0f\x82\x29\x49\x21\xd5\x43\x96\x7a\x31\x60\x52\xc8\x94\xf2\xc0\x1a\x9f\xd4\x96\x78\xeb\xf4\x13\x5d\x8d\xe0\x0f\xb5\x89\x85\xe9\xb0\x57\xd3\x7e\x2d\x6e\xde\xe4\x31\x20\x87\xee\x4f\x03\x5c\x58\x7b\xf1\x71\xcc\x94\x79\x18\xdd\x44\x5c\x8c\xc3\x0f\x10\xdb\x46\xe8\x6f\x4d\x52\xe1\x0a\x91\x43\x2c\x74\x14\x61\xb8\x41\x27\x47\xf1\x43\xd7\xc5\x72\x6e\x8d\x62\xb5\x0e\xa2\xe7\xb2\xca\x6a\x9a\x42\x7a\x35\xd6\x51\xe7\x92\x94\x67\x4f\x04\x9f\xbd\x8b\xd2\x1a\x1f\x98\x7b\x7c\x20\x7f\xb3\x77\xc0\x77\xf7\x24\x1f\x48\xf1\xde\x3e\x7d\xcd\x4d\xe4\xaf\xdd\x3d\x9f\x0f\xa4\x3a\x66\x95\x9d\x7e\xe8\x25\x58\x70\x19\xc4\xe5\x1f\x46\xe6\xde\xa6\x46\xfa\x75\x07\x09\x68\xc0\xe4\x0a\xab\xb0\x2c\x63\xf7\x17\x1a\x84\x8a\x0d\x81\x8f\x54\x9b\xad\xcd\x48\xaa\x29\x40\x24\xa9\x41\xed\x41\x3d\xa9\xda\x81\x38\x3c\x29\x00\xe3\x0b\x08\x28\x29\x57\x66\xb3\xeb\x40\xef\xf4\x89\xcd\x6e\x6f\x47\xdd\x60\xf7\x77\xa3\x24\x92\xd5\x64\xac\x72\x11\xb7\x05\x61\xd8\x40\x25\xbe\xfa\xa2\x53\xbb\x8f\x89\x29\x46\x5c\x99\xc8\x44\x55\x50\xc8\xa4\x17\xa9\x18\x09\x2c\xd0\xcf\xdb\xe8\x68\x96\x74\x3a\x01\x07\x7d\x2d\x77\x8a\x4f\x8f\xaf\x1b\xc5\x6b\xd7\x2d\xa5\xcb\x27\x5b\xfa\x99\xa4\x5f\x02\xbf\xbc\xe7\x31\x51\xda\xf1\xba\xdf\x2e\x7e\x23\x5c\xed\x3c\xad\x3d\x96\x24\x57\x71\xe8\x25\x94\x54\x62\x7f\x7a\xfc\x0d\x05\xfa\x05\x15\x98\x1a\x12\xaa\x34\x8f\x60\x3b\x8e\x32\x4c\x8d\x0a\x3d\x9a\x60\xaa\x66\x49\xd2\x30\x97\xe0\x84\x9e\x26\x9d\x8e\x56\xd6\x9f\x61\x30\x8f\x94\xc4\xeb\x14\x7f\x8d\x67\x15\x6f\xee\x4a\x1c\xf3\x74\x4b\x44\x7b\x41\x44\x2a\x29\x77\x47\x96\x1c\xc6\x60\x59\x21\x49\x23\x2d\x1d\xa3\xc5\x89\xf2\x5e\x7a\x93\x91\x58\xf2\xef\xbc\x22\x26\x8b\x23\x53\x4d\x64\x65\x51\xa1\xb2\x2a\x58\xb1\x59\xff\x51\x6b\x98\x38\x83\xcb\x82\x6f\x10\x29\x27\x9e\xa0\x59\x82\x9c\x91\xcd\x25\x78\xb3\xa7\x68\x9a\xa0\x29\x10\x0f\x73\xfc\x34\xa3\xf9\xd4\x59\xd4\xba\x0b\x1a\x44\xf1\x68\xdc\x7a\xe9\xdd\x28\x03\x97\x58\x9d\x77\xe2\xd9\xe0\x2a\x8f\xfd\xeb\xc4\x53\x86\x65\xb8\xbf\x6f\x24\x28\x6f\x98\x8a\x57\x3e\x8b\x73\x3d\xad\x64\xc4\x24\x41\xa3\xa4\x13\x12\xc9\x31\x44\x9d\xde\xdc\x1a\xc9\x89\x95\x6b\xe9\xd1\x7a\x2a\xd1\x2d\xa6\xfb\x54\xaa\x4f\x4d\x0b\xa1\x97\x38\xb1\x85\x25\x5e\x32\x0a\x03\x64\xc4\x76\x07\xf6\xd2\xcb\x82\x9a\x50\x6e\xf8\x55\x47\x85\x2e\x0a\xf2\x7c\xbf\x64\xf7\x5b\x4b\x66\x6c\x92\x66\x67\x6a\x2c\x1e\xf2\x92\xa3\x33\x37\xe6\x9e\xfe\x3b\x19\xb9\xe8\x16\x63\x6f\xc8\xde\x70\x0b\x95\xec\xf1\x04\x9e\xa7\xce\xf5\xda\x9e\x6f\x9d\x4e\x3c\xc7\x5f\xe3\x39\xca\x92\x04\x19\x00\x98\x27\x68\x2e\xf1\x56\xa0\x62\x1a\x02\x74\x2a\x04\xa7\x37\xa5\x20\x8d\xf5\x36\x82\x34\x49\x24\xc3\x5b\x05\x69\x57\x51\x94\x1c\x6c\x87\x66\x22\xa1\x79\x18\xa4\xca\x24\xd7\xcd\x43\x9f\xf8\x86\x93\xdb\x06\x7c\x85\x3b\x6e\x88\x39\x66\x2f\x11\x3e\x68\x50\x38\xd8\xf4\x41\x22\xf4\x32\xcb\x60\x2b\x5c\x6d\x15\x9f\x98\x40\x54\xd7\x00\x48\x1f\x1b\x58\x6e\xf5\x05\xfb\x4a\xc5\xbe\x3c\xc0\x63\x8e\x2c\xfd\x04\xf7\x04\xc2\xcb\x7d\xa6\xb4\xed\x2a\xf2\x81\xdc\xc4\xfd\x5c\x72\x36\x21\x85\x52\x36\x8a\xf3\x64\x1b\xf9\x7f\x0b\xfe\x1e\xfc\xa8\xd5\x8d\x4c\x8b\x63\x2d\x0c\x42\x4c\x14\xb1\xa2\xcc\xbc\x1b\x3c\x13\xb4\xbd\xb1\x81\x46\x24\x50\x67\x50\xcf\x46\x3d\xa6\xd6\xf6\x96\xfd\x29\x4d\x14\x3f\xd2\x74\x64\x73\x15\x20\xe9\x1d\xe3\x40\x98\x2a\x0e\x22\xa9\x15\xf0\xf2\xf3\x32\x7f\x4b\x66\x8c\x13\x98\x8a\x1f\x19\xfb\x12\x3f\x57\xa4\xda\x84\x31\xa9\xdc\x52\xc4\x4c\x75\x73\xdd\xbf\xbb\xff\x24\x1c\xc0\xe1\x4c\x10\xee\xf5\x1f\x91\xe7\x0a\xdd\x90\x09\x5b\x10\x03\x6c\xa6\x84\x5c\xa7\xf0\x4b\xd3\x72\x19\x3d\x12\x0b\x00\xb1\x48\x5a\x36\x76\x64\x21\xd2\x62\x7e\xe1\x0b\xa4\x54\x24\x27\x22\xd9\x51\xf9\x03\x62\x2b\xf9\x30\xb2\xf0\x3d\xc6\xb9\x8d\x71\x67\xc3\x39\x2b\x50\x6b\xed\xc4\x91\x7e\x8c\xa8\x02\xac\xa4\xd3\xa1\xab\x55\xcc\xb1\x30\xd7\xfa\x1a\x8b\xca\x6f\x5a\xe7\xf3\x4b\x9d\x22\x82\xf3\xbe\xb2\x8d\x50\xee\x6d\x23\x2f\xcc\x88\xc5\x16\xac\xd3\x51\xe8\x30\x45\x2c\x41\x29\xc0\x3d\x5c\xf1\x43\x70\x90\x09\x99\x92\x86\xf0\x6b\x1a\xfb\x19\x2b\x57\x62\xc6\x52\x1d\x9a\xd3\xfd\x4f\x17\xc4\xf0\x17\xf2\x79\xb5\xaa\x8e\xb9\xd3\xd9\x31\x31\xc3\xaa\xa8\x73\xa9\xef\xa6\x3a\x9d\x9d\x86\x28\x1c\x3b\xd8\x6a\x57\x2b\x3d\x04\xbf\x7f\xc1\x05\x1b\x49\xe0\x06\xa8\x52\x3d\x4f\x3a\x1d\x4f\xde\xee\xaa\x32\x95\xac\x63\x6f\xb3\x23\xa2\x1f\x92\x3a\x99\x2a\xbb\x04\xb7\x36\x70\x2f\xc7\x6e\x9d\x6e\xa8\xba\xe4\x51\x58\x45\x09\x7c\x37\xa9\x4a\xb6\x49\xef\xda\x78\x5f\x07\xb1\x54\x65\x65\x15\x7a\x05\xf6\xab\xbe\xaf\xeb\x6a\x5a\x6e\x05\x34\x33\x22\xbb\x66\x78\xaa\x9d\x3e\x8a\xee\x69\x96\x69\x58\x86\x6a\x22\xe4\x37\xe4\x33\xa5\xde\x09\xe3\x12\x7b\x37\xae\x07\xca\x16\xa8\xf1\x53\x4c\x92\x04\x9d\xc4\x42\xd9\x0b\x01\x36\x41\x0d\x68\x30\xd1\xc3\x0a\x77\x7b\xe3\x0e\xa5\x26\xd4\xb6\x9c\x9a\x80\xeb\xd9\xb4\x3d\x1b\x7a\xdf\x3c\xa4\xd4\xb6\xee\xa2\xbf\x57\xbf\xc4\xca\xc2\x99\xe3\x93\x98\x62\x9e\x28\x52\x87\x36\x8c\x89\x6f\xc6\x99\xa4\x22\xd5\x1e\xb1\xb1\xc6\x50\x01\x86\x6c\x96\x26\xd5\x5b\x22\xf1\x16\xfc\x2c\x74\x24\x24\x75\xae\xd5\x66\xa8\x06\xc4\x15\x79\x7b\x35\x41\x61\xb8\x6a\xff\x3d\x6c\x27\x80\x71\x25\x62\x32\xaf\x00\x7a\x03\xcf\xaa\xdc\xb2\x58\x43\x72\x25\x75\x0d\x0c\x6f\x82\x13\x5f\x89\x42\x82\xb4\x46\xf5\x44\xff\xc8\xad\x1d\xb0\x0d\x92\x45\x62\x63\x45\xc5\x02\x93\xa4\xd3\x69\x52\x05\x6f\x8a\x2a\x02\x93\x7e\x50\x3f\xc4\x71\x2d\x65\xdb\x79\xe5\xa1\x05\xc5\x3d\xf8\xfb\x5d\x8b\x92\x86\x3a\xe6\x7f\x98\xd7\x5c\xfe\xa1\xb8\x8f\xf8\x86\xe0\xbf\x50\xcd\xa6\xe0\xb6\x41\x50\x6a\xc8\x79\xe0\x3d\x2b\x95\x0a\xb7\x96\x71\xb2\x06\x5f\x48\x35\x51\xd6\xb5\xc1\x4d\x26\xb0\xae\x3f\xf4\xed\x81\x75\xfd\x9c\xfa\x10\xf0\x1b\x44\xf5\x5c\x5b\xfb\x60\x16\xc0\x0b\xd2\xdb\xa4\x5c\x73\x55\xb5\xf6\x20\x1e\xc9\x2b\x62\x2f\x00\x84\xb6\x4c\x34\x1c\xa6\xdc\x10\x9e\xbe\x0b\xe4\x63\x89\xea\x78\x62\x28\x5e\x8a\x42\x6a\xb7\x8f\xec\xb9\x88\x53\x54\xac\x2d\xb7\xca\xc3\x50\x69\x09\xe0\x16\x24\xc2\x10\x8d\x0d\x94\xa5\x99\xc1\x4e\x47\x54\x76\xa2\xc4\xb2\xdb\x36\xa7\x4f\xe8\x36\xe1\x61\xd0\xad\x42\x62\x1d\x5f\x25\xe8\xc3\xb3\xd3\xa3\x05\x0e\x66\x72\xd2\x6f\x99\x9c\xa7\x35\x4a\xdd\x44\xa5\xbf\x67\x32\xea\x34\x7d\x68\x39\xa1\x6a\x95\xe4\x1a\x19\xdd\x8e\x3b\x9d\xb8\x8c\x85\xbb\x25\x54\x67\x37\x12\xa1\x51\xd3\xe8\x76\x6c\x0c\xbc\x3d\x6a\xc9\x5c\x06\xdb\x88\x3e\xbd\x29\xb1\x24\xe1\x01\xc5\xc1\x3b\x74\x74\xc8\x7b\x0b\x7d\x70\xc8\xcf\x0b\xef\xa8\xa0\x9d\xce\x09\xc8\x54\xbc\x3b\xe6\xfa\xd4\x53\x3b\xef\x1f\x9f\x99\x77\xad\xc1\x60\x66\x9d\xd5\x67\xdd\xce\xb9\x81\x3a\x8a\x98\x23\x69\x39\x66\x1e\xfe\xbd\xb4\xc9\x31\x4f\x10\x5b\x6f\x5a\x89\x96\x31\xed\xad\x31\x5b\x79\xc3\xc2\x88\x8a\x34\x2b\x38\x67\xb9\xa2\x94\x2a\x09\x21\xcd\xa4\xa6\x85\xe6\xb7\xc6\x58\x7e\xda\x86\x39\x8d\x42\x1d\x2d\xd3\x72\xa0\x84\xb6\x46\x79\x13\x07\xd7\x00\x2c\x8a\x50\xe6\x21\xe9\x4a\x20\xea\x1b\x37\x23\x7e\x02\x11\xd6\xd4\x0b\xcd\x98\x8f\xc4\xa8\x3f\x1e\x4b\xce\xd4\xde\xdf\xba\xd9\x0d\x6e\x83\x5d\xb2\xea\xa1\x72\x59\x83\x54\x70\xda\x46\xba\xc4\x23\x3a\x6c\xe1\xa4\x76\x98\x79\x0c\x8a\xa9\x6d\xe0\xfb\x53\xb1\xf6\x08\x56\x9b\xf9\xc5\x35\x9d\x9a\xc8\x6d\x34\x39\xc8\x47\x54\x45\x05\x1e\xaa\x27\x94\xaf\x35\xfc\xc1\xb0\x7f\xdd\x24\x60\x87\x0b\x15\x90\x49\x8a\x4d\x77\xf8\x6b\x74\xb1\x3d\xf2\x67\xc3\xfd\xfb\x6f\x75\x05\x02\x87\x30\xb6\xf1\xf9\x5a\xd2\x7d\x9a\xde\x34\xe2\x85\x28\x32\x59\xe7\x71\xa5\x6d\xd4\x70\x1a\x47\xd1\x8e\x1e\x62\x17\x47\xbd\x28\x41\xa2\x8b\x15\x0b\x83\x76\xfa\xf2\x64\xbe\x8b\xa3\x3f\x81\xb3\x86\x3f\x81\xbe\x4c\xf2\x2d\xdc\xbf\xc1\x4b\xdf\xd4\x83\x36\x1f\x11\x8d\xac\x89\x27\x65\xd0\xcd\x8b\x8a\x9e\x88\x67\x59\x8b\x18\xb6\x9c\x4b\x03\x8d\xe8\x89\x65\xbc\x19\x8b\xa3\x4b\x91\x72\xe1\x5d\xb3\x45\x86\x94\x2c\xd1\xa6\x22\xfa\x60\x53\xb6\x56\x32\x7f\xc3\xfd\xb0\x1a\x3d\xf5\x07\x9b\xe2\xb0\xf7\x6f\xac\xca\xdc\x01\xb7\xb2\xbe\x61\x98\xa7\x69\x3c\x70\xeb\x20\xf9\xe0\xa3\x98\x20\xbf\x85\x51\xaa\xef\x58\x94\x14\xd5\x80\x68\xd8\x79\x7d\xf3\xac\x5c\xa6\x27\xde\xcd\x41\xba\x4d\x40\x44\x54\xdc\xde\xa0\x26\x70\x8e\xda\xa6\xb3\xb6\x62\x9a\xdb\x26\x68\xf0\x86\x19\x31\xb6\x0b\x4a\x61\xad\x32\x1c\x50\x6c\xae\x36\xa0\xbb\x9a\x9a\x4b\x72\xdb\xd5\xa2\x79\x86\x47\xe1\xdc\x8d\x3d\x1a\x04\x8c\x22\x36\x67\xed\x76\x25\x06\xd8\xf1\x4c\x13\xd4\x8d\x80\x45\x50\xe0\x86\xc7\x5c\x65\xfa\xcf\xb1\x15\x00\x48\xbc\x6b\x64\xd4\x71\x08\x43\xd5\x81\x55\x01\xc8\x0f\xcc\xe7\xf9\x10\x09\x40\x1d\x07\x43\x35\x80\x43\x87\x5b\x27\xc0\x2c\x5f\x8a\x84\xee\x51\xd1\xdc\xa3\x8f\x92\xa5\x20\x53\xd9\x17\x1b\xfa\xbe\x7a\x4f\x7c\x01\x9b\xed\x68\x53\x84\x7e\xa5\xd1\x13\xf0\xea\x5a\xb2\x79\x9f\xda\x9b\x64\xee\xd9\x07\xe3\x7c\xdd\xaa\x2b\x79\x1f\x41\x2b\xef\x7f\x37\x65\xda\xae\x28\xb3\x8d\xc6\x35\x45\x36\x89\xb4\x6b\x04\x6c\xea\xe8\xb3\xfa\xd5\xb8\x16\xef\x6a\x41\x2d\x47\x15\x5d\x96\xdc\xd1\xb5\x8a\xe8\xf5\xb1\x38\x43\xc5\xdf\x45\x4b\x40\x70\xd8\x2b\xa6\x3a\xd0\x84\x52\xb3\xd8\xa3\x68\x8d\x7f\x07\xff\x00\x2f\x92\x64\x04\x26\x47\xc1\xb5\xba\xd5\xe7\xf7\x6d\x70\x63\x0e\xc6\x79\x14\xe7\xa3\xdc\xdd\x37\x98\x1c\x01\x0f\xa9\xfb\xa5\xc7\x5e\xc4\x04\xd6\x01\xae\xd2\x25\xbd\x51\xf9\xdc\x7c\xd3\x2d\xc9\x36\x94\x6a\xd3\x9c\x0b\x94\x05\x74\x87\xbd\x15\x4e\xc0\xaa\xc2\x69\x77\x8b\xaa\x12\x11\x68\x42\x33\xdc\x07\x94\x6a\x6c\x58\x5f\xa7\xfb\xdd\x2e\x4b\x64\xfe\x11\xb3\x43\x30\x62\x39\xbf\x78\x28\x66\x4a\x9e\x26\x98\xb5\x40\x5d\x69\xad\xea\x15\x2e\xae\x38\x7b\x83\xfb\xfb\xbb\xbb\xcc\x5c\x06\xca\xaa\xd1\x14\x3b\x93\xec\xb9\xc1\x15\x6a\x03\xb2\x31\x5a\x82\x90\x47\xf6\x7b\x89\x67\xca\x7a\xc8\x7a\x92\x39\x60\x6f\xf0\x44\x71\x98\x8a\x59\x05\x58\xd1\xdd\x92\x35\xc4\x53\xa4\xcb\xa0\x0c\xcd\xb5\x4e\xff\x2d\x11\x5e\x96\x77\x8c\x6b\x5b\x1d\x6d\x20\x13\x96\x41\x1c\x31\x5d\xee\x9b\x9a\x90\xeb\xb2\xc4\xcb\xaa\xd0\x18\xb0\xc4\xd2\xb2\x4a\xda\x66\x69\xde\xe9\xcc\x2d\x99\x58\x1d\x9c\x27\x52\xb2\x99\x3a\x9d\xa5\x27\x20\x5d\x74\x3a\xf1\xd2\x90\x35\x50\x97\x61\x4a\x5c\xae\x85\x76\xfc\x34\xdf\x8f\xe5\x64\xad\x56\xcb\xaa\x50\x36\x9e\x83\x5b\x9b\x09\xfe\x90\x8a\x79\x6f\x41\xf3\x98\xa1\x49\x82\xee\xf0\x32\x41\x79\xa7\xb3\x23\xf7\xff\x1d\xbe\x6b\x1c\xd1\x9d\x1d\x51\x82\x7c\x4a\xa4\x57\xe6\xc5\x9c\xce\x44\x7c\x97\xac\xe9\x2c\xce\xec\xa0\xea\x46\x68\x1f\x18\x27\x6d\x5d\x8b\x8d\x9c\x7b\x4f\x38\xb1\x8e\xf8\xe6\x29\x78\xe8\xe3\xa4\x9d\x72\xd2\x9e\xaa\xc5\x6a\x1b\xe3\xeb\xf6\x8c\x71\xf0\xe3\xa5\x44\x0c\xed\xa8\xeb\x44\xd3\xb9\x96\x00\x50\x15\xe7\x37\x15\xe4\x48\xdb\x0f\xc5\x01\xdd\x34\x49\x50\x19\x17\x75\x75\x40\x2f\x41\x12\x4d\x09\x2a\xe4\xd6\xac\xd7\xf6\x8c\x3b\x2d\x2f\xde\x7d\xb7\xcb\x95\xf5\xc0\x88\xfb\xe7\xa9\xa1\xaf\x41\x89\x9c\x99\x0b\xf7\xd4\x5d\xb8\x17\xe6\xb8\xaa\x5c\xbd\xb7\xc0\xb4\x03\x42\xf3\x06\x52\x7c\x86\x4a\x89\x18\x92\xf5\x5a\xf6\xf8\x19\x88\x6f\x40\x2e\x8e\x17\xa7\xb3\x98\xbb\xe5\x7b\x02\xd6\x25\xc5\x7c\xe4\x68\xac\x71\x12\xf0\x13\x1b\xb6\x89\x39\xdd\x5a\xbc\xb7\x64\xcb\x58\x5b\x29\xd0\x59\x0c\xb4\x00\x1c\x08\x18\x13\xe7\xe3\x05\xbc\x15\x28\x7a\xab\x7a\x8e\x84\x8e\x60\x0a\xbc\x21\x5b\x88\x48\x5a\x29\x2e\xc0\x56\x45\x81\x9a\xa1\x2d\xe4\xd4\x7d\x0c\xa6\x8e\xc0\x29\x26\xa7\xad\x79\x24\x0d\x07\xb6\x73\x0a\xf0\xb4\x46\x0e\xe1\xa1\x14\x8f\xc6\xfb\x6c\x77\x77\xdf\x78\x69\xcc\x3b\x1d\x02\x2e\xdd\xe4\x78\xe5\xb8\x3d\x8a\xbc\x0c\x27\x55\x62\x73\xd9\xed\x69\x5c\x26\x07\x74\x94\x29\x5b\x14\x35\x77\xc3\xda\xcd\x46\xa6\xf3\x14\xa3\x6c\x3c\x4c\x95\xad\x6d\x06\x7b\x2f\xdd\xb2\xf7\x7e\x61\x65\x7b\x4a\xa7\xf9\x9f\x9c\x0b\x39\x92\xb3\xf2\x76\xde\x56\xca\x4e\x2f\xc0\xd7\x37\x9d\xa8\xbb\x72\x22\x08\x2f\xda\x82\xb5\x8b\x54\xd0\x62\xf6\xd0\x4e\xb3\xac\xcd\x66\xb0\xf9\x1a\x77\xa5\x72\x9e\x10\x75\x49\x37\xea\xb5\x3f\xd0\xa2\x00\xf6\x5b\xd9\x48\xb6\xa3\x6e\xea\xf6\x69\x0d\x7e\xe5\xd4\x6a\x09\xc6\xaf\x09\x3a\xfe\xc7\x0c\xc7\x3e\xe5\xf6\xb4\x9e\x7e\xba\x38\x3d\x51\xe1\x8d\x20\x83\x6f\x3b\x56\xc9\xf6\xff\x6d\xcb\xb1\xb3\xad\x14\x9d\xc6\x27\x46\xa4\x43\x2b\x44\x9a\x13\xe8\x94\x3c\xc3\x1c\xc8\xd7\x4d\xc4\x1a\xfd\x3d\x12\xb5\x0d\xc4\x96\x15\xa5\x6b\x5d\xb8\x0b\x44\x37\x11\x53\xf6\xd1\x2a\x0a\x6a\x13\x66\x0f\x7a\x8f\xbd\x6f\xea\x52\x73\x67\x80\x52\xab\x72\x58\xf1\xd9\x29\xb1\x2d\x68\x55\xe5\x29\x04\x11\xa3\x37\x19\x79\xfb\xf0\xe9\xe2\x34\xa8\xd1\x01\x23\x01\xb2\x45\xe0\x3e\xe2\xd6\x91\xc2\xbe\x78\xcd\xf7\xbb\x5d\x61\xd4\xb5\xe9\x48\x28\x6b\x66\x43\xb7\xcc\xf0\x28\xd4\xd8\x0b\xe8\x43\x7d\xdf\x30\x91\xe7\xec\xec\x5b\xc8\xc8\x49\x32\x12\x4a\x6b\xbc\x50\x43\x9c\x36\xe0\xf8\x09\x9a\xa1\xcc\x1e\xf9\x73\x3c\xd5\x5c\xd6\xfc\xa0\x88\xe7\xc9\x70\x1a\x5e\x21\x4c\x1b\xee\x0f\x0a\x63\xa5\x1e\xe0\x4a\x31\x6e\xb1\xd5\x6a\x5a\xa3\x13\x96\xc9\x41\xac\xd9\xcd\x20\x37\x9e\x26\xc3\x6a\xd2\xd2\x40\x7c\x19\x87\x96\x7f\x34\x70\x49\x82\x72\xbd\xc5\xdd\x9a\x9d\xda\x0b\x59\xe2\x8c\xa6\xac\x1c\xca\x5e\xa9\x6e\xb6\x29\x83\x33\x56\x1f\xb1\x9b\x6f\x62\x6d\x7b\xef\xbc\x0b\xe0\x4e\xc7\x5d\x00\xf7\x5b\x3a\x49\xac\x56\xc1\x87\x81\x16\xef\x86\x2e\x51\x50\x1e\x24\x28\x11\x1a\x77\x23\xc8\x37\x8e\x80\xe2\x3e\x62\xce\xfc\x90\xbe\x66\xfb\xdd\x2e\x4d\xac\x01\x9f\xf2\x9b\x42\x46\xa9\x1a\x4d\xea\x46\xb3\xb6\xa3\xb9\x83\x28\xce\x1b\xf4\x6d\xcc\x85\x46\x96\x16\xa2\xc1\xb0\x46\x73\x8f\xbe\xea\x0d\xcb\xa6\x97\xb5\xc4\x0d\x5a\xc9\xda\x47\xa0\x0e\x82\xe9\x24\x71\x81\x2a\x8f\xb6\x3a\xf3\x5b\x6f\x28\x6d\x8c\x15\x8c\xbd\x52\xc6\x6e\x2d\x03\x6c\xf7\x89\x32\x4c\xb7\x41\x30\xf4\xd7\x82\x88\x58\xe9\xef\xf0\x26\xb9\x1e\xaf\x98\xb9\x1b\xc1\xa1\xdb\x7d\x8b\x74\x19\x13\x14\x6f\x24\xe4\xec\xc1\x8c\x72\xbc\xd3\xdf\xe7\x6f\x70\xbf\xd3\xc9\xf7\x77\x77\xb9\x93\x8d\x6a\xda\xcd\x70\x7b\x44\x79\xaa\x46\x4f\x69\x31\x64\x6b\x09\x21\xca\x6f\x07\x05\xe7\x58\xab\x55\x14\xbc\x28\xb7\x25\xbe\x7b\x96\xdd\xef\x92\x35\x5c\xe3\xf2\x6d\x1e\x91\xda\xd5\x91\x58\x74\x43\xa0\xa8\xb7\xdd\xbc\xb5\xab\xd3\x30\x4e\xf2\x67\x79\xc4\x19\xe5\x9e\x25\x96\xd3\xd1\xcf\x25\xda\xdf\x11\x5a\xb6\x5c\x85\x8b\x80\x18\xac\x7e\xd4\xf8\x5a\xae\xe1\xb5\x3a\x8d\x9a\xed\x0d\x58\xdd\x58\xad\x1f\x0e\x46\x1b\x1f\xd0\x1c\xa4\xd6\xae\x9b\xa6\x8f\x3e\x7d\x1f\xa2\x20\x96\x20\x36\xba\x1d\x57\x4c\x92\xa1\x3a\xc1\x2e\x74\xe4\x2b\x28\x18\x33\x94\xfb\x82\x69\x4f\x8d\x5e\x56\x62\x8d\x4b\x58\x68\xfc\xd1\x28\xa7\x0b\xac\x16\x68\xef\x5a\xdd\xbc\x7e\xba\x38\x8d\x19\xf8\x27\xec\x4d\xe9\xd4\xcd\x53\x4c\xeb\x5b\x4a\x66\x12\xcc\x76\xcc\x1f\xe0\x4e\x3f\x31\xa2\x4b\xb7\x4c\x2c\x49\x10\xd1\xb7\xf5\x15\x9b\x9d\x09\x5b\x2c\x33\x02\xc2\x32\xc4\x24\x94\xd4\xf5\xfb\xab\x2e\xba\xf9\x43\x00\x70\xb7\x44\x5c\xd5\x6d\x02\x40\x05\xcb\xfa\xe1\xf3\xa8\x3b\xbd\xd8\xc4\x2c\xb7\x31\x37\x49\xd6\xb2\xf5\x2d\xde\x81\x00\x54\xce\x0c\x69\x65\xae\x56\x8c\xe7\xaa\x33\x72\x0f\x88\x4a\xe3\x5b\xed\x03\xda\x5e\x99\x70\x2d\x18\x3a\x8f\x7d\xfb\xaa\x10\x8e\x1c\x11\xea\x8b\x6c\x82\x5e\x1d\xe6\x53\x88\x66\xf7\xcf\xed\x5c\x4d\x68\x1b\x7d\xba\x38\x55\xd4\x32\xd8\xa6\xe4\x4c\xb4\x1d\x41\x1a\x19\xa5\x2f\x6f\x36\x85\x9b\x46\x33\x08\x5a\xd7\xdb\x50\x5a\x12\x95\x29\xa0\xa3\xdb\xb1\x84\x9a\x66\xfd\x58\x85\x74\xaa\xe3\x08\xf1\xa7\x83\x87\x90\xec\x8b\xdd\x99\x02\xb2\xac\x89\xf6\x93\xea\xab\x08\xac\x55\xf5\x0d\x10\xb4\x45\x87\x0e\x51\xac\xbd\xbf\x55\x91\x8a\xc4\xba\x07\x8d\x5f\x46\x0f\xe3\xa1\xd7\x9f\x14\x57\xfa\xca\x90\x48\x50\x81\x97\x71\x80\x6f\x50\x1a\x02\x08\x9d\xc5\xa7\xc6\x12\x4d\x4d\x1f\xf3\x5e\x12\x20\x1e\x0a\xe3\x5f\xaa\x2a\x38\xf0\xf6\x74\xa1\x05\xad\x66\xd2\xcb\x26\x24\x67\x3d\x68\x35\x0e\x68\xb5\xda\x88\x3a\x25\xb3\x67\x09\xd4\x67\x11\x6c\x23\xba\xcb\x50\x9a\x18\x93\x08\x51\x2e\x8f\xb4\x20\x31\x4e\x37\x20\xc1\x2c\x69\x26\x0d\xac\x13\x30\x1c\xec\xfd\x14\x6d\xa3\x27\x9c\x4f\x99\x7f\x0a\x05\x68\xa5\x2c\x46\x61\xd0\x3c\x87\x1a\x7e\xef\x54\x26\x63\x1a\xea\x9e\x93\x06\x32\x6b\x0b\x10\x74\x3a\x31\x6f\x58\xce\xa4\xf9\x5c\xe1\x76\xa2\xab\xb3\xb0\xe1\x50\x75\x17\x24\xfc\xff\x65\xef\x5f\xdb\xdb\xc6\xad\x86\x51\xf8\xbb\x7e\x85\xc4\xb7\x65\x89\x08\x92\xa5\x4c\xdb\xa7\x0f\x1d\x44\xaf\x93\x38\x13\x77\x12\x3b\x63\x3b\x93\x99\x51\xf4\xa4\xb4\x08\x59\x98\x50\xa4\x0a\x42\x76\x3c\x96\xfe\xfb\xbe\xb0\x70\x20\x40\x52\x76\xda\xfb\xb0\xf7\xb5\xf7\x9d\x0f\xb1\x88\xf3\x71\x61\x9d\xd7\x9e\x8a\x84\x63\xee\x98\x77\x3e\xfa\x20\xe5\xf6\xed\x74\x4e\x28\x07\xdd\x56\xfb\x62\x5c\x50\x21\x32\xea\x1a\xcd\xe9\x66\xbb\xb7\x4b\x9a\xbb\xe9\xac\xec\x9a\xe6\x52\xf9\xa8\x30\xcd\x79\x53\x31\xa7\x8f\xbf\x32\x08\xd3\x63\x99\xdd\x09\x36\xd3\xd8\x87\x63\x24\x10\x82\x41\xc2\x89\xb4\xd8\x8b\xb7\x34\xe4\xc8\x9e\x94\x42\x99\xbb\xf4\xc6\x5a\x3c\x20\x69\xce\xa9\x70\x18\x2c\x85\x16\xc5\x5b\x36\x2b\x0b\x43\xd6\x50\x19\xf5\x7c\x9a\x80\xdc\x43\x28\x26\x8c\x4f\xc8\x54\x16\x63\xc6\xc4\x08\x07\x1f\xe4\x13\xcf\xf2\x6b\x65\x53\xd0\x35\xca\xa7\x9d\xca\x6b\x80\x82\x4b\xae\xa5\xb1\x22\x90\x4f\x54\x0b\xc9\x34\x71\xa4\x08\xc0\x13\xd4\x37\x68\x3a\xc3\xda\xd1\x47\xcd\x17\xdc\x08\x4d\x22\xd3\xff\x91\x10\x74\xb5\x86\x11\xc8\xa7\xc5\xd9\x2e\x51\x80\xb4\x59\x93\xe3\xf6\x05\x43\x71\x5b\xdd\xbd\xf5\x4e\x6a\x8f\xba\x00\x37\x7c\x1e\x80\x69\xa2\x08\x39\xd8\xc5\xf2\x96\xd3\xd7\x82\x71\xec\x31\xb9\x32\x6c\x53\xe0\x40\x81\x1a\x47\xd9\x2d\xf2\x6e\x0a\xc1\xa0\x20\xcc\x96\xe2\x3d\x1d\x9a\x43\xe9\x4f\xa3\x8a\xc1\x20\xdc\xa5\xf7\xf5\x2c\x5c\xf8\x07\x7c\x0e\xea\x58\x45\x47\xad\x9b\x47\xda\x49\xa1\xa6\x78\xf6\x36\xa2\x48\x2e\xb6\x22\x8e\x2a\x4c\x50\x29\x7f\x37\xed\x42\x1f\x24\xbd\x1a\xb6\x81\x2d\x23\xe8\x8d\x70\xe0\xe1\x97\x01\x9e\x6a\xcb\xe7\x1a\xde\xd9\xde\x80\x05\x63\x0a\x7c\x51\x2c\xea\xd8\x67\xf5\x3e\x54\x77\x98\x22\xac\x8f\x93\xbb\x79\x97\xe7\x47\xa7\x17\x27\x97\x27\x67\xa7\xdd\x97\x67\xef\xde\xbf\x3d\xbe\x3c\x1e\x06\x08\x7b\xcc\x4f\x63\x5e\xa4\x90\x87\x44\x91\xe7\x51\xe2\x5a\xca\x15\xa8\x62\x9a\x7b\xc6\x90\x1d\x5f\x2d\x59\x07\x33\x4f\x30\x75\x7c\x80\x57\x5d\x60\x6a\xac\x5e\x77\x8a\x1d\x94\x00\x72\xe2\xed\x7f\x3b\x52\x52\x29\x0e\xaf\x13\x2e\x60\xf5\x60\xc1\x4a\x17\x03\xd2\x56\xff\xea\x8d\x2a\x86\xf4\x2b\x13\x34\x75\x9f\x2a\xde\xef\x23\x15\x9e\x29\x62\xb6\x80\x7c\x85\xd4\xf0\xac\x34\xdc\x05\x52\x0e\xc4\xaa\x64\x6f\xe7\x92\x06\x96\x00\xcc\x4f\x91\x6b\xe0\xaa\x2c\x33\xe8\x42\x96\x93\x7f\x23\x81\x3c\x70\x64\x09\xff\x6a\x0a\x1d\x87\x47\x40\x5d\x86\x7b\x93\xe4\x2f\x86\x9b\x5c\x53\xfa\xd6\x89\x1b\xdc\x62\x67\x05\x80\x54\xaf\x2f\x80\x1d\x1d\xac\x01\x14\xa9\x96\xc0\x91\x83\x7d\xcb\x74\xc7\x58\xf8\x6b\xae\xae\x57\xaa\x37\xb3\xde\x75\x75\x6e\x75\xf0\x9f\x33\xfe\x41\x55\x88\xe4\x0b\xef\x57\x96\x14\x7e\xb3\x03\xaa\x2a\xfe\x8b\x2d\xeb\x5a\xd0\xe4\xa8\x22\x9b\x36\xe8\x5e\x9d\x43\x67\xd9\x93\x7d\x3c\x16\x0f\x1d\xd9\xec\x1c\xa0\xf4\xed\x84\xb2\xbc\x9c\x1e\x1d\xac\xa1\x73\xeb\xb3\x5c\x07\xd1\xc6\x90\xa5\x8d\xc1\x23\x94\x37\xa6\x06\x88\xa2\x3e\xe8\xf0\xbc\x86\xd9\x8e\x02\x3c\x15\xc6\x57\x11\xd6\x2d\x19\xaf\x4c\x06\x70\xed\xe7\x2a\xc1\x14\x5a\x97\x7e\x3f\xe3\x43\x8b\xd7\x12\x22\x2a\x89\x6c\xc5\x47\x66\x00\x82\xb8\x77\x16\x61\x07\xe1\x26\xc9\x1f\x51\x0e\xe2\xd2\xbc\x7a\x25\x1c\xfe\x72\xa1\x14\x66\x2a\xa5\x5d\xa7\x19\x9d\x68\xa7\x2e\x5b\xac\xa7\x45\xde\x0d\x06\xe0\x24\x8b\xc1\x8f\x28\xc1\x0f\x77\x5d\xc9\x1e\x36\xa5\xa4\xc4\x2c\x4b\xdf\xd1\xf1\x98\x88\x9a\xc2\x79\x2b\xb7\x38\x96\x0b\x81\x7b\x23\xb9\xbc\x35\xa0\xf7\x00\x8c\xa4\x0d\xad\xad\xea\xb3\x24\xf7\xfe\x15\x8b\xa7\x33\xac\x80\x20\xfc\x52\xdb\x27\x7f\x5a\xd0\x22\x3f\x00\x44\xc4\xd3\xd9\x0e\x6f\x8c\x9b\x2f\xe5\xc5\x2d\x69\x8d\xdf\x91\x91\x62\x9a\xcf\xf0\x9c\x24\xd3\x7c\xd6\xc9\xc2\x50\x7b\x4d\x21\x84\xcc\xd5\x2f\xb0\x91\x92\xef\x18\x9f\x44\xa5\xbd\xd1\xb0\x60\x73\x84\xb3\x30\x2c\x0d\xec\x36\x92\xed\x0c\xa1\x78\xb3\xdd\x66\x66\xaf\x7a\xb2\x2d\xfd\x7b\x12\x6d\x94\x96\x76\x0d\xf6\xe8\xf6\x50\x5c\x3a\x90\xd2\xc8\xea\xd4\x24\xcc\x04\x30\xab\xdc\x7e\x99\xb9\x34\xc6\x20\x67\x65\x11\x2e\xcd\x06\x25\x8d\x5e\x35\x28\xc6\xba\xc0\x90\xd3\x1b\xca\x4b\x48\x91\x1b\x59\xe1\x1f\xad\xea\x31\xb4\xf2\xbe\x00\x2c\x6d\x37\x5a\x9c\xb7\x95\x75\xa5\x17\x40\x57\x0b\xd0\xcf\x26\x55\xfa\x61\xa2\x54\x40\x6c\xe0\xba\x7c\x9a\xcc\x3a\x9b\xa8\xc0\x95\x4a\xb5\xd1\x49\x6d\x48\x6c\x00\xa1\x57\xc6\x27\x6a\x28\x85\xaf\x7c\xdd\xe6\x3f\x6a\xbb\xf5\x34\xb4\xb5\x83\xe6\x3a\xd3\xd4\xf0\x3a\xc0\xec\x1d\xcf\x09\x7d\xc8\xed\x11\x5e\x10\xd7\x73\x11\x0f\xc3\x1e\x7d\xd0\x5d\x11\x4e\x09\xad\x13\x87\xbe\xf7\x23\x8e\x97\xf5\x36\xdb\x9a\x6c\x78\x38\xea\xcc\xb7\xdb\xc5\x76\x9b\x6e\xb7\xcb\x89\x9e\x13\x94\x90\xd8\x64\xa6\x25\x91\x15\x7e\x99\x81\x3e\x00\xdf\xfb\x18\x34\xc8\x2b\xbb\xd5\xca\xf3\x9d\xa8\x53\x47\x39\x52\x3e\x52\x24\x01\x36\xcd\x67\x61\xa8\x23\x4d\xca\x0f\xcd\xaf\x32\x72\x31\xff\x0d\x00\xc0\xbf\x6f\x18\x12\xf8\x63\x86\xf9\x4c\xc5\x45\xe0\x7b\xdc\x82\xb9\x46\xf1\x70\xca\x46\xa0\x26\x61\xa2\x40\x81\x83\x25\xeb\xf6\x9b\xc9\x63\x56\x4c\x37\xc3\x2f\xf4\x6e\x46\x36\x3a\xc4\x19\xd7\x0e\x08\x37\x43\xdd\xc3\xbe\xee\x6a\x15\xad\x6a\xa2\x62\x9e\xfa\xd4\xfd\x7e\xc5\xdd\x06\xb5\xa7\x9e\x66\x5e\xac\x0c\x5e\xcd\x1f\xc4\xb4\xcd\xc3\x57\x97\xe4\x78\x27\x1c\x36\xd8\x34\x59\xf3\xaf\xe0\x52\xbb\x34\x0c\x5d\xc5\x0e\xcb\x29\xc5\x75\x23\xf2\xd6\x3e\x11\x70\x0f\xa9\x76\x60\xe7\x5e\x7c\x15\x8a\x6f\xa7\x16\xa6\x39\x08\xf9\xe4\xba\xbe\xf2\x2a\x0f\x14\x0f\x8d\x8c\xb5\x8e\x0c\xac\x2d\x70\x2e\xc7\x21\x0a\xe2\xa1\xf7\xce\x28\xda\x79\x10\xfb\x1f\x2c\xbc\x8f\x36\xaf\x41\x68\x4e\x46\xca\x87\x65\xc4\x48\x22\xf1\xb8\xc8\x7f\xeb\xa6\x7c\x86\xe4\x2b\xad\x75\x5b\x0a\xc5\x7d\x02\xdc\xb0\x70\x75\x69\x9b\xd7\x23\xc1\xc6\xa0\xd2\xa3\xd8\xc4\x6c\x0f\x1f\xce\xb8\x54\xf2\x6b\x44\x09\xf6\x9e\x5e\x85\xd9\xa9\x47\xa2\xee\xf9\x07\xe6\x1a\x86\xcb\x76\xc2\xd6\x3c\x21\xce\xd3\xd1\xd0\xce\x16\x56\xcb\xb7\x61\xa8\xe1\x1a\x47\x6a\xf2\x43\xfd\x8d\x90\xd1\x43\xdf\x2b\x75\xd4\xaa\xad\xa0\x34\xf0\xa0\xa4\x51\x89\xc9\xe4\xde\xfa\x2f\x99\x55\xc5\x7f\xc0\x6b\xbf\x26\x84\x1d\x46\x53\x44\x91\x71\x58\xa4\x8d\x1d\x5d\x19\xc9\x65\xb1\x27\xb6\xc3\x7f\x96\x0f\xd8\x7d\xde\x62\x26\x91\x0e\xbd\xd4\x3a\x66\x2b\x5b\xe9\x8d\x91\x86\xfd\xfe\x9c\x34\xeb\x05\x28\xa6\x15\x4d\x59\x22\x9c\xa7\xe4\xbf\x69\x52\xdd\xd6\x71\xa9\xb0\x8e\xf2\x74\x2e\x38\x2d\xf7\xc6\xc2\x6a\x70\xfe\x39\x11\x13\x51\xe3\xf2\xe7\x35\xdf\x7d\xbe\x2f\xa7\x7c\x3a\xb2\xb4\xbf\x61\x76\x81\xd1\x02\xcb\xaf\xbb\x49\x57\x0f\xc0\xb3\x60\x30\x92\x97\x36\xf4\xc6\xe1\x83\x31\x4c\xb1\xb1\x3f\x69\xa1\x4d\xb6\x5b\x5f\xee\x64\xc0\x4c\x0b\x8f\xac\x70\x1d\x6a\x09\x1f\x53\x10\xae\x57\xad\xc4\x7a\xd5\x72\x5d\x6a\x25\x6a\x25\xa1\xca\x47\x26\x96\x7b\xa5\xc6\x7b\x4e\xbc\xed\xce\x13\x03\xfd\x17\x9f\x8e\x4a\x1d\x22\x03\xc3\x31\xc2\xa6\x10\x95\x8a\x4d\xc7\x33\xad\xe1\x5c\xe7\x37\x02\xa6\x56\x3e\x24\x7d\xc2\x0b\x89\x19\xa4\x64\x84\x97\x06\xd3\x77\xf5\xfd\x0f\xd3\x67\xcb\xc3\x7e\x5f\xab\x5f\xae\xbd\x22\xd3\x74\x86\x57\x64\xed\x18\x46\xa1\xce\x26\x5a\xe0\x95\x7d\xfb\x17\x1e\xf2\x99\xd4\x15\x15\x2a\x9c\x92\xe2\x05\xac\x24\x0c\x74\xbf\x9c\xab\x9d\xa7\x6a\x43\x91\x7c\xa3\xa4\x60\x7a\x37\xd3\xbc\x77\xc5\xbe\xb1\x1a\x10\xde\x32\xe5\x4a\xcf\x9c\x5b\x5e\x63\xcb\xb0\x1c\xf2\x58\x1e\x74\xb7\x55\x08\x3f\xe3\xdc\x31\x88\x3c\xdd\x90\xd0\x28\x04\xbf\x85\x89\xdd\xc4\xbf\x5d\xe5\xa7\x12\x41\xc0\x4e\x79\x20\x18\xc9\x6c\xb0\xb1\x67\x2c\x0c\x93\xe9\xdc\x0a\x74\xe8\x61\xbf\x3f\x47\x87\x6c\x11\xcd\x09\xb1\xe5\xfc\xde\x17\xea\xe5\xe8\x2c\x5c\x2e\x6d\x62\xdd\xa5\xcd\xfb\x26\x48\x8a\x93\xa0\xf5\xad\xde\x46\xce\x76\x94\xd5\x76\x34\x14\xf7\x17\x38\xc3\xa5\x0e\x62\xeb\x3e\xb7\x6e\x9f\x4a\x87\x8d\x6f\xb7\xbd\xd4\x88\x7f\xd3\x8e\xf6\x17\xb5\xeb\x6c\xa2\x25\xe6\x46\x27\xdc\x23\x69\xec\xad\xb8\x91\x08\xf8\x0a\xad\xea\x08\xf8\x0d\x0a\xc3\x65\x5b\x62\xb4\x9c\xde\xcc\xc8\x6a\x7a\x53\x11\x88\x69\x18\xf6\xd6\xd0\x95\xbb\xf1\xff\xc5\xd7\xba\xba\xd2\x1e\xfc\xf7\x8f\x5d\x44\x31\xdc\x76\x88\x2d\xa4\x9e\xda\xba\x57\xbe\xff\x8a\xb1\x7d\x3b\xfb\x7c\x8c\xd5\xdb\xa9\x4d\x79\x4c\x6c\x83\xdf\x4d\x84\x08\x88\xf4\xe0\x06\x87\x70\x23\x41\xf8\xf1\x1e\x78\x2d\xd2\x83\x65\x32\x79\x98\xd4\x67\x2d\x68\x7b\x99\x28\xa7\x8e\x95\x74\x62\xbb\x8d\x5a\x0b\x28\x1b\xca\xdd\xbf\x11\x38\x22\x29\x93\x35\xf9\x51\xfe\xc8\x32\xf2\x9b\xfa\xab\x24\x7f\x29\x79\x29\x51\xc8\x64\x4e\xc9\x09\x06\x77\x27\x4b\x72\xaa\x7f\x98\x12\xaf\xc1\x7b\x03\xf0\x9b\xc8\xef\x18\xd6\x86\x72\xf2\x01\x7e\xe5\x45\x4a\xd9\xe2\x8e\x7c\xc1\xa0\xc3\xba\x60\xd7\x1b\x4e\x89\x44\x4b\x8b\x9c\xac\xa9\xfc\xbb\x58\x90\x15\xad\x1c\x40\x90\x9f\xb0\x91\x92\x90\x7f\x2a\x9f\x74\xe4\x0d\xa6\xc3\x05\xcb\x04\xe5\xe4\x7b\x18\xee\x5d\x2e\x09\x74\xd8\xb1\x4b\x1d\x2d\x7f\x68\x0d\xf5\x87\xf3\xa4\x14\xed\xf1\x27\x18\xb9\x5f\xb1\xaf\x2c\x8f\x5b\x9d\xa5\x14\x1a\xce\x16\xb9\x1e\x97\xfa\x5a\x2c\xb0\x15\x28\x10\xf7\xc4\xe0\xb6\x4d\xd0\x60\x82\xee\x70\xe1\x76\x63\xe2\x96\x5b\x9f\x0f\x36\x72\xb9\x1b\x90\xef\xf2\x6e\x4d\xb5\x66\xb6\x69\x51\xc5\xf7\xbe\xa2\xdd\xc4\x46\xfd\xb7\xc2\xab\x5c\x7b\xf1\x61\x84\x43\x78\x3f\x70\x5f\x2f\x7f\x82\x18\x74\xa0\x02\x81\x99\x60\x58\x02\x48\x11\xcd\x01\xdc\xe1\x62\xb1\x88\x5b\x9f\x20\xd5\x66\xa7\xd2\x25\x50\x4d\x82\x62\x5b\xd5\x96\x8d\xc2\xc5\x74\xec\xcc\xa8\xc0\x63\xed\x76\x57\x8f\x60\x87\xf5\x3a\xc5\x0d\x99\xad\xc2\xa6\x54\x4f\x3a\x30\x21\x43\xae\x83\xbb\x5a\x2c\xbd\x68\x84\xd9\xb4\x98\x21\x70\xa6\xb7\xdb\x75\xfc\xbd\x67\x5a\xa7\xec\x9e\x81\x92\x34\xc4\xb8\xe9\x8d\x77\xae\x25\xa6\x59\xff\xa7\x3d\xd2\x00\x1e\x36\x08\x94\x1c\x89\xfc\x8f\x88\x1d\x1b\xc2\x39\x89\x0a\xa4\xdf\xb0\xe9\xac\x16\x70\x43\xce\x43\x2e\xb0\x0e\xfe\x0a\xb1\x9a\x63\x8a\xd7\xc9\x5d\x56\x24\x69\x0c\x5e\x2b\xc4\xf0\xf3\xf5\x86\xa5\x3f\xd0\x3b\xcc\x52\xf9\xc5\x52\x4c\xe5\xc0\x4f\x55\xe1\x94\x8a\x84\x65\x32\x83\xd3\x72\x93\x09\x0c\xce\xf0\x4e\xd2\x98\x4b\xfa\x57\x96\xce\x24\xfc\x90\x05\xe0\x07\x16\x6c\x45\x2f\x44\xb2\x5a\xc7\xaf\x24\x7d\x96\x17\xb7\x11\xc2\x20\xdf\x8a\x8b\x69\x50\x4d\x7f\x70\xcb\xc4\x72\x00\x8a\xe7\xc1\x6c\x52\xe9\xfb\x9b\x86\xb4\x93\xb6\x1d\x0a\xc3\x92\x8a\x4b\xb6\xa2\xc5\x46\x78\x3a\x43\x66\x33\x28\x19\x1d\xd2\x2a\x5a\x0f\x35\x0c\x55\x41\x20\x8a\x22\x27\x62\xa8\xa7\xdc\xe1\x43\x39\x59\xc2\x87\x5f\xe8\x5d\x9f\x0f\x59\x8a\x75\xb4\x9e\xef\xdd\x64\x3d\x45\xcc\x95\x7d\x23\xb0\x5b\x8c\xa6\x3c\xa4\xa8\x2f\x84\x0b\x2b\xc4\x13\xda\x67\x91\xe9\x09\xed\xaa\xa8\xb2\x3b\x84\xff\x32\xf2\x83\x9a\x18\xd5\x91\x16\xaf\x2b\xa0\x06\xee\xea\xd2\x2b\x63\x36\x73\x02\x68\xa7\x42\xc3\x64\x7a\x34\xc7\xa2\x7a\x3c\x41\x37\x02\x73\x37\x2e\x09\xba\xf7\xc2\x82\x98\x38\xe7\x7e\x0f\x5e\x8f\x61\xc8\x55\x54\x2a\x2f\xd5\x02\x3f\x42\xb2\x89\x7f\x2b\x95\x11\xfe\x67\x40\xba\x26\x10\x0f\xc3\x9c\x16\x14\x3f\x75\xf3\xe4\xe6\x1a\x9b\x4f\x50\xdf\x58\x79\x85\x51\x7c\x13\x19\x21\xa2\xf3\x1c\x41\xb0\x5c\x42\x38\x34\xcd\x51\x9c\x2a\x1a\xd1\x25\xef\xdd\x38\xf1\xda\xc3\xda\x0e\x7e\xc4\x2d\x1e\x6c\xf8\xa4\x7e\xd9\x0b\x05\xaf\x9b\xd6\xdc\xe0\xf4\x9f\xb5\x59\xbf\xf2\xbb\x7b\x6a\xe3\x6b\xe0\xdc\x48\xc6\x98\x1d\x08\xdb\xed\x22\x8e\x85\x3f\x8f\x7c\xbb\x8d\x54\xf4\x82\xe6\x84\x1a\x33\xb2\x85\xd5\x9c\x10\xbc\x83\xfa\x72\x74\x7a\x79\x18\x32\xc5\x95\x52\x05\x94\xf1\x37\x55\xf3\x96\xad\xaa\xc0\x24\x5e\x30\x15\x73\xec\xe4\x9e\x20\x95\x6f\x23\xcf\x30\xbd\x3c\x51\x4e\x04\xd2\xb1\xa7\x25\x3e\x6d\x0e\xa8\x92\xea\xba\x8f\x03\x61\x6e\x1b\x0a\x36\x83\x28\x55\xde\x38\xb1\xa4\xb9\x5e\x93\xc2\x77\x8b\x21\x07\x5b\xa0\x9d\x39\x8b\x3b\xad\xf7\xe2\x05\x64\x41\xf7\xd4\x9e\x14\x79\x0e\xcd\xef\x88\xda\xc3\x82\xfd\xd8\x1e\xeb\xba\x4f\x64\x7d\xe6\x24\x39\x6d\xea\x10\x81\x4d\x32\x19\x63\x53\x6a\x73\x55\xce\x39\xbb\xaa\x02\xc2\x4e\x8a\x61\x05\xa6\xc2\x70\x23\x5f\xc4\x6c\xc1\xb2\x8c\xa6\x01\xa6\x28\x36\xa7\xe5\x0e\x53\xd7\x8c\x7b\xf5\xe0\x08\x54\xaf\x4f\xb1\x3b\x18\xd3\xd0\xd2\x6f\xe8\xa6\x2e\xf6\xf3\x47\x09\x16\x77\xda\x50\x96\xd6\xee\x13\x9b\x26\x33\x22\xe4\x9f\xfe\x78\x46\x38\xfc\x78\x3a\x23\x39\x4c\x36\x81\x95\xd4\x63\x72\x27\x51\x75\x7d\xe7\xa1\x77\x6e\xa7\xdc\xce\x07\xa2\x10\xd6\x56\x68\x0c\xc7\xd9\x59\xa7\x38\x50\xf8\x91\x5a\x32\x3c\x72\x95\xe3\x2a\x86\x3d\x66\xa0\xed\x68\x9e\x16\x15\x41\x55\x54\x11\x54\xc9\x77\x28\x27\x62\x5a\xce\x40\x2d\xaa\xec\xf3\x19\xce\x27\x57\x91\x62\x81\x26\x28\x66\x51\x22\x31\xdd\x96\x3d\x24\x23\x27\x8c\xd0\x55\x83\x50\xc4\x09\x69\x03\x0c\xb8\x24\xca\xa4\x22\x41\xf2\x1c\x33\xc2\xa3\xdc\x91\x79\x97\x2a\xd6\xe7\x46\xa1\x10\x8c\xe4\x1d\x87\x65\xa8\x16\x07\xd0\x1b\x42\xc4\x64\x15\x09\x5c\x43\x97\x8e\x8c\x62\x5a\xd9\x9d\x1b\xcc\x69\x9e\xe4\x4a\x85\x56\x53\x1d\x89\xe8\x96\xc9\x8a\x9a\x92\xc3\x00\xa1\xb8\x07\x6f\x38\xb4\x58\xa0\x38\x99\xa4\x91\xc0\x0c\xc5\x32\x55\x82\x5b\xf8\x78\xaa\x58\x47\x2b\xf8\x72\x36\xf4\xda\x0f\xbf\xa8\xd8\x3e\x76\x1b\xc7\x8a\xb5\xdd\xa3\xdb\xed\x53\xfd\x53\xa0\x4a\x17\xdc\xbf\x04\xf3\x65\xc2\x72\x13\xcf\x4c\x05\x49\x80\xff\x15\x85\xe2\x9d\x43\x47\x0b\x58\x11\x2b\xd5\x33\x12\xcd\x31\xb7\x5c\x25\xbd\xf1\x6d\x27\xaa\xd6\x1d\x73\xdd\x41\xa3\x9b\x8a\x97\xe5\x42\x9f\x92\xc0\x84\x26\x34\x16\x9d\x26\x48\xb7\x50\xe8\x2a\x92\xc7\xa7\xc4\x09\x3c\x13\x16\x5c\xdf\x3c\x1a\x4d\xc7\xba\x83\x35\x1a\x3e\x2f\x3d\x93\x37\xa5\x66\x63\x1c\xae\x41\xe8\x82\xb9\x55\xcd\xff\x0c\x0a\x3c\x67\xf9\xb9\x22\x1b\xb4\x4f\x84\xcf\xac\xfc\x50\xb2\xfc\x5a\x11\xc6\x8a\x36\x20\x84\x9c\x35\x72\x35\x1f\xbe\xf2\x4c\x27\x9f\x61\x53\x2a\x67\x42\x11\xfc\x5a\x21\xcf\x20\x8f\x0f\xfa\x8a\x85\x6a\xed\x52\x20\x7d\x87\xb6\xdb\x91\xda\x5b\x7d\xa5\xcc\x98\x39\x5d\x25\x2c\x67\xf9\xb5\x93\x02\x10\xcd\xf1\x20\x6f\x66\x4d\xc1\x38\x53\xe9\x97\x83\x1f\x3b\x9b\xb0\x87\x6c\x76\x3a\x34\xaa\xea\x7a\x49\x21\x02\x71\xa5\x37\x69\x21\x99\x21\x9e\x75\x87\xc9\x7c\x79\x9c\x0b\x7e\x17\xd1\x69\x3e\xc3\x39\x48\x80\x0c\xb7\x93\xce\xbf\xbc\xde\x64\x00\xa3\xc0\x88\x5e\x0d\xa9\x91\xee\x1e\x02\xb6\x88\x46\xc4\x3a\x8b\x33\x33\xf7\xdc\xfa\x99\x53\xbc\x8e\xbc\xe1\x52\x54\x5b\x1d\x25\xea\x91\x90\x02\xa8\xd2\x77\xc9\xdd\x15\xbd\x5c\xd2\x3c\xb9\xca\x9a\x42\x4d\xf7\xbe\xb6\x1c\x37\x6b\xfe\xd2\x3c\x23\x2e\x90\xeb\x8d\x3a\x0a\x90\x51\xf7\x41\xde\xa0\xfb\xc4\x80\x32\x78\xf9\x01\xdb\x73\x1c\x2a\xab\xa5\x45\xf5\xd7\x45\x43\x0f\x45\x53\x1f\x09\xfb\xac\x61\x51\x3d\x6b\x98\x57\x28\x45\x0b\x25\xc9\x50\xbd\x91\xb1\xac\xed\xd6\xda\x73\x31\xac\x28\x9e\xde\x76\xf3\x68\x8e\x3a\x00\x16\x93\xc9\x2a\x2a\x25\x58\x8c\x16\x51\x89\x25\x16\xa4\x47\x79\xcb\x0c\x7f\xe0\x48\x44\x60\x85\xe0\x45\x5c\xf1\xf3\x55\x9b\x6d\xe8\xa4\x30\xce\x09\x25\xa6\xb2\xb7\xba\xeb\x54\xd1\x84\x54\xa9\x4e\x62\x63\x6f\xb5\x03\xc2\x56\xec\x7f\xe2\xae\x8f\x77\x44\x0c\x5e\x67\x0b\x9c\xc3\x82\x3b\x4b\xe8\x1c\xae\xf4\x68\x2f\x9b\xd4\xbb\x54\x95\xe0\x81\x55\xe8\x4a\x0b\xc0\x0a\x43\x78\x61\x26\xab\x88\xc9\x31\x44\xcd\x41\x98\x4e\xf0\xde\xcb\x86\xec\x00\x4d\xa5\xc6\xca\xd4\xae\xd9\x60\xe0\x5d\xa1\xa9\x98\x11\x0e\x6d\xb8\xcb\xff\xc0\xd5\xe9\x48\x54\xaa\x41\x4f\xb8\xea\xe5\x2d\x07\x71\x87\x1e\x2f\xfb\xd4\x96\x6d\x0b\xc6\xf0\xad\x73\x51\x2f\xf8\x3d\x2c\x7b\xec\x22\x99\x8a\xf3\xc5\x77\xb1\xc9\xab\x90\x29\x4e\x93\xb2\xc8\x63\xae\xfc\x83\x1d\x13\x60\xeb\x7d\x0e\xfa\x15\xb1\xdd\x0f\x06\x01\xbe\xd0\x6e\xb2\xce\xf6\x19\xa5\x57\x23\x64\x29\xb9\x30\x91\x97\x14\x75\x61\xe1\x7a\xd3\xe8\xd2\x00\x33\x2f\xcd\x41\xbf\xc8\x74\x86\x9b\x4f\x39\x58\x8f\xeb\xa7\x1c\xe1\xb9\x76\x37\xd6\xc6\x68\x0a\x43\x4f\xe8\xdb\xc2\x74\xfa\xa5\xd8\x28\x7e\xd3\x3a\x29\x4b\x90\x85\xc1\xd5\xe3\xdd\x8a\x95\x52\x82\xb5\xff\x82\xf1\x52\x74\xcd\x63\xd8\x15\x05\xa4\x1a\xdb\x00\x07\x25\x09\xd0\x4e\xfb\xdc\x74\x55\x77\xe9\xa4\xed\x6d\xec\x8d\x01\xa0\x8a\x1a\xb0\xd0\x9a\x59\x38\xb5\x94\x5a\x7b\xbe\xa5\xe4\x0c\x56\x99\xa3\xfb\x95\xf2\x76\xbf\x33\x4e\x01\xe2\xc7\x56\xe0\x75\xc2\x32\x9a\xca\x09\xd9\x49\x74\xff\xa4\xa1\xe4\x9f\xe2\xee\xfb\x8c\x26\x25\xed\x6e\x00\x56\xd1\xee\x9f\x72\x7a\xfb\xa7\x6e\xb1\x96\x8f\x6e\xc1\x31\xc0\x2f\xed\xc2\xc4\x5d\x04\x83\x89\x5e\x51\x40\x4e\x69\x2a\x97\xb1\xe2\xe7\x0d\x61\x91\x1e\x46\x28\xcc\x5b\xd1\x2e\x16\x95\x18\xd9\x42\x50\xee\x61\x64\xc2\xa1\xf2\x2a\x66\x8a\x51\x87\x06\xde\x80\xa2\x77\x8d\xa7\xe0\x47\xe2\x54\x81\x0a\xa0\x61\x6f\xee\x8d\x52\xe5\x49\x6b\x9d\x35\x30\x12\xed\x26\x65\xa0\xc1\x72\xcd\x4e\x85\x37\xfd\x76\x3d\xec\x96\x98\xef\x6a\x67\xe3\xdb\x5b\x50\x27\x41\x35\xa0\xdf\x00\x1d\xc3\xab\x19\x0f\xe6\x6b\xdd\x30\xf8\x7e\xe7\x18\x1f\x61\xe6\x20\x6a\x39\xc2\x8a\x97\x99\xab\x28\x1d\xd3\x62\x46\xe8\xb4\xa8\x24\x9d\x09\x19\x1d\x26\x15\x4d\x96\xf4\xfb\xe8\x9e\x4f\xc5\x34\x99\xcd\x88\x22\x33\xad\x1d\x55\x2d\x60\x43\x85\xd3\xd1\x56\x11\xc8\x60\xdc\x2a\xfc\xa0\x8e\x14\xde\x69\xf2\xd2\xdd\xec\x7b\x39\xf5\xea\x9e\xb8\x71\x64\x7c\xa6\x8c\x43\x04\x7e\x71\xaf\x71\x0b\x17\xf1\xb1\x98\x48\xfd\x31\xc2\x4c\x61\x4d\x72\xbd\x38\x38\x9e\xd2\xf6\xef\x95\xc0\xa6\x98\x69\x47\x10\xf7\xda\x98\xb2\x07\x74\x77\xe3\x9d\x4f\x10\x78\x3d\xf1\xb9\x70\x67\xa8\x0a\xae\xaa\xd0\xb6\xc4\x45\xdb\x32\x17\x05\x3a\x93\x28\x90\xe5\x79\x95\x38\x43\xb8\x34\x74\x69\x6f\xdc\x61\x61\xd8\x33\x8a\xf8\x09\xb9\x8c\x18\x84\xa1\xcb\xe5\xf6\x26\x3b\xa5\x6c\x56\x6f\x25\x9f\xf2\x59\x4d\x13\x4b\xbe\xf7\x1b\x6c\x5d\x2e\x03\x61\x9b\x46\x1b\x89\x01\xf4\xaa\xaf\xa3\xa8\xa2\x38\x50\xec\x87\x5f\x15\x08\x8a\x7c\xad\x8a\x48\xf8\x17\xab\x46\x76\x98\x4d\xde\x47\x1b\x9c\x6b\x27\xec\x28\x7e\xe7\x7e\xed\x2a\xb1\xf0\xe7\xcf\x00\x70\x3e\x7f\x26\xd4\xe5\x6e\xbe\xf3\x19\x72\x5a\x7c\x1c\xe5\x95\xa6\x3a\x53\xf0\x95\x59\x3a\x8f\x56\xb5\xdf\x57\xb5\x75\xe6\xd9\x10\xce\xce\x03\xe1\x1c\xaa\x1e\xbd\x40\x2a\xbf\x79\xa0\x48\x35\x03\xf0\xa7\x92\xf9\x9c\xe1\x33\x25\xf5\xc9\x30\xe4\xb7\x43\xb1\x7a\xf0\xda\x89\x67\x9b\x08\x3a\xf8\x06\x75\x8b\xb5\x78\xda\xba\x86\x74\x9e\x08\xa3\x12\x0d\xa6\x47\x5a\x38\xa3\xc1\xfa\x2d\x13\xcb\x6e\x92\x77\x13\xd9\x43\x80\x00\x48\x9e\x29\xf1\xd9\x3e\x71\x7f\xc5\x67\x96\x67\xbb\x3e\x44\x64\x4f\x21\xaf\x73\x3c\xac\x45\x51\x32\xa7\x8f\x8c\x03\x61\xde\x71\x62\x5d\xb7\x13\x7a\xd6\x7e\x52\xc2\x8b\x1b\xed\x67\xc4\x80\xcd\x69\x6e\xed\xea\x5a\x11\xb8\xd4\x18\x0e\xb6\x65\xae\x74\x26\xaa\x40\x8f\x5c\x15\x4d\x6b\x67\xf0\xfb\x37\x3f\xa2\xdd\xbe\x35\xf2\x5a\xc4\xd0\x4e\xe5\x7b\xc6\x08\x5b\xc8\xb1\x97\x0c\x71\x1b\x55\x40\xdf\xf3\x47\x7c\xe6\xd4\xe0\x9c\x31\xb1\xee\x8d\xad\xc3\x9c\x47\x7d\xe1\xec\xa2\xcf\xce\x6b\xf1\xf2\xf1\x03\x78\x1e\x9d\xc1\x73\x6a\x8f\xde\xd9\xe3\xe7\x4e\x8b\x5e\xbf\xe1\xf8\xd9\x91\x9c\xd4\x6e\x11\xf8\x2b\x82\x6b\x74\xee\x2e\xa1\x4b\x40\xdc\xc2\x9a\xbd\x7a\xd4\x79\x74\xdd\x96\x40\x2b\x74\x8e\x10\x6e\x7a\xef\x66\x66\x1d\xff\x1d\x4f\x8e\x6d\x6c\x15\x0f\x73\xb6\xba\xaa\x3e\x6b\x24\xdf\xc7\x1a\xa9\x9c\x12\xd5\x7c\xb9\x30\xab\xb0\x6e\x4d\xbc\x34\x4d\x57\x67\xd3\x30\xef\x35\xaf\x1c\x64\xda\x9b\x95\x3c\x63\xf0\xb2\x43\xb0\x7a\x50\x76\x37\x1a\x62\x15\x3b\x85\x63\xf1\x28\x2f\xc5\x3f\x58\xa7\xf5\xed\x34\x37\x15\x37\x21\x2c\xb5\x0f\xa6\xa4\x89\x5c\xa9\x83\xc1\xc0\xda\x45\xd0\xe6\xc0\x2d\x93\x72\xb9\xef\xa8\xe9\xa6\x3c\x47\x5e\xaf\x6a\x27\x7a\xa7\x71\xdb\xb7\xff\x1d\xb7\xef\x95\xb3\x48\xaf\xff\x1b\x16\xc9\xd1\x84\xf8\x57\xd6\xe8\x2d\xac\x11\x98\x92\xb9\xcb\x64\x87\xfe\xbb\x72\x51\x23\x3b\xdc\x23\xa1\x55\x99\x14\x14\x50\xaa\x7a\x1f\x2a\x0c\xfc\x5e\x4f\x37\x36\x5a\xa1\x00\x55\x4c\x84\x87\x86\xc3\x6b\x8d\xb3\xd4\x34\x55\x2a\x67\xd4\xa0\x88\xae\x19\xac\x20\x0c\xc3\x62\xf7\xf6\x61\xd0\xf1\xe2\x5b\x41\x47\x63\xcb\x47\x98\x55\x9b\xfe\x9f\x03\x2a\x3c\x9f\xa9\x7b\xf9\xb0\x45\x83\x0f\x5b\xec\xe3\xc3\x16\x86\x1d\xb3\x4a\xd6\xaf\x73\xc2\xf6\x81\x9e\xfd\x3c\x19\xad\x09\x9f\x83\x40\xa4\x0e\x13\x9c\xb6\x25\x7c\x40\xda\x33\xac\x45\xbd\xea\xbc\xbe\xa7\x58\x60\x06\x45\x1c\x56\xda\x63\xdc\x1e\x1f\xa8\xbc\xf1\xa3\x1a\xb7\xf1\x10\x26\xfb\x5e\xa7\x55\xb2\xee\xd2\xaf\x6b\x70\xde\x99\x78\xfc\x82\xa4\x5b\xd2\x79\x91\xa7\x96\x5d\x10\x20\x89\xe4\xba\xd7\xb1\x19\xd9\x46\x87\x87\x6a\xe0\x43\xad\x77\x50\xf6\xfd\xf0\x53\xe8\x5e\xbd\x17\x0a\x3c\xc9\x4e\xdb\x6e\xde\x4f\x0f\x00\x8d\xaa\xd4\x3f\x1b\xa5\x94\xdb\x6d\x59\x48\x9e\xb0\x8f\xf2\x2d\xfa\xc3\xbe\xf3\x8f\x6a\x9e\x53\xea\xb2\x85\xff\xc8\xc1\xff\x37\x38\xee\x7e\x98\x63\x23\x04\x6e\x61\xc3\x6b\x2d\xac\x56\x77\x12\xb4\x47\xc8\x47\x89\xe4\x7d\x1b\xab\xfe\xdb\x2e\xc6\x7d\xe3\xd0\x76\x8c\x3a\xaa\x65\xbf\xd7\x2f\x4a\x65\x33\x5e\x58\xfb\xf9\xda\x3d\x49\xe0\x9e\x14\x26\x0a\x60\x75\xe9\x8c\xff\xe5\x3d\x57\x88\x6f\xb7\x51\x7d\x44\x1f\xd5\xe3\xfc\xc2\xb9\x47\xdf\xff\x07\xee\x91\x5a\x61\x7b\x95\xfe\x7b\x2f\x92\xee\xfc\xdb\xef\xd2\x1f\x5a\xef\x92\xdc\xa2\x5f\xf0\x0f\x64\x54\x2d\xc9\x8f\xea\xbe\xcc\xe9\xf4\x87\x19\xa1\x58\xfe\xed\x8f\x67\x44\xe0\xa7\x84\x90\xe8\x87\x3e\x79\x8a\xc2\x30\xa7\xda\x85\xdb\xdf\x49\xb0\xc9\x95\x06\x63\x5a\x2d\xda\x2d\xcb\xd3\xe2\x76\xa2\xfe\x98\x57\xed\x67\xf2\x77\x70\x9e\xfa\x2b\xf9\x79\xf8\x6e\x23\xc0\xf7\xc3\xd9\x55\x49\xf9\x0d\xe5\xdb\xed\xcf\xc3\x8f\xf4\xea\x07\x26\xea\x39\x98\x52\xb7\x0b\xcb\x3a\x28\x69\xb6\x08\xc3\xb6\xce\x75\x8c\xa8\x30\x0c\xa6\x9a\xc1\xa7\x53\x66\x01\x21\xe4\x7e\x67\xa3\x15\xab\xa7\x4c\x67\x22\x2c\x68\xeb\x5c\x3e\xb0\x5c\xfc\xed\x65\x96\xac\xd6\x34\x85\x3d\x69\xef\x95\xad\xd6\x05\x17\x17\x73\xce\xd6\xa2\x6c\x2f\xf2\x4e\x39\x30\x7d\xb9\x4c\xf2\x9c\x3a\xae\x2f\xb9\x13\xe3\xb5\xc9\x2d\x73\x90\x8a\x05\xc5\x63\xa4\x58\xde\x39\xc5\x8c\xe2\x82\xe2\x84\xe2\x92\xe2\x0d\xc5\x99\xdc\x2b\xe7\xd1\x1b\xd3\xef\x9c\x83\xbe\xa0\x0d\x55\xb1\x1f\x0e\xa9\xdc\xcc\xfb\x68\x24\x37\x99\xce\x50\x24\xff\xf4\xc7\x33\xa4\xbe\x0d\x77\x5b\xa7\x1a\xdb\x9d\x1f\xc8\x68\x47\xe9\x24\xda\x50\xa2\x97\x6e\x98\xd3\xaf\xe2\x92\xcd\xbf\xe0\xac\x4a\xbb\xa1\xbc\x64\x45\x5e\x0e\xf3\x22\xa5\xc3\x15\x5c\xf4\x83\xff\x13\x4d\xe2\xe8\x53\xda\x47\x9f\x86\x68\xe2\xfd\xfe\xf4\x64\x2b\x7f\xff\xe1\x00\x61\xff\x02\x64\x10\x94\x6b\x24\xb7\x2e\xa3\xd3\xf1\x2c\x0c\x83\xb1\xf9\x7a\x0a\x81\x7e\x28\x29\xa9\x38\x59\x69\x23\x19\x84\xf3\xb6\xc8\x9d\x1b\x1a\x2d\x24\x65\x1b\xff\x3a\x89\x0a\x4a\x46\x38\x51\x6b\xf5\xab\x4c\xc6\x25\x25\x69\x31\x87\x9b\xaa\x9d\xbc\x5e\xd2\xaf\xe2\xb4\x48\x69\x14\x04\x08\x27\x74\x58\xa8\xe3\x18\x95\x14\xdf\xcf\x97\x09\x4f\xe6\x82\xf2\x57\x89\x48\x94\x66\x6e\x6b\x9f\x25\x55\x51\x51\x0a\x4a\xfa\xfd\x82\xfe\xf1\xe9\x0e\xc5\x82\x4e\xa2\x88\xa9\xbe\xfd\xf3\x80\x86\xf2\x00\x8d\x87\x45\x6e\x1c\xdd\x2e\x68\x7b\xbb\x8c\x42\xd1\xa7\xc3\x75\x51\x0a\xdd\x48\x34\x92\x93\xcb\x8d\x98\x82\x10\xf2\xf7\xf6\xb8\x65\x13\x17\x31\xe5\x77\xfa\xe9\x78\x6d\x12\x03\x87\x8f\x1c\x20\x30\x23\xfb\xe7\x86\x71\x1a\x05\x37\x94\x8b\xaf\x41\x33\x94\x64\xf4\x0b\xa1\x43\xbe\xc9\xcf\xf2\xb7\x45\xb1\xde\x6e\xf5\x87\xb6\x68\x46\x6e\x7f\xbf\xc0\x1e\xc4\xf2\xbc\x37\x7c\x8d\x41\xe2\x2e\x42\x90\x6b\x74\x82\xc8\x8f\x58\xf3\xcb\xdb\xec\x62\x9c\x9b\x41\xf1\x08\xed\x94\x35\x00\x25\x3f\x75\xb4\x66\x71\xaa\xd4\x04\x97\x7b\x62\x68\x19\xe5\x08\x40\x05\xaa\xab\xb2\x96\x57\xa5\x18\x16\xda\xb1\x7f\x54\xb8\xaa\x04\x95\x9e\x93\x2e\xb5\x58\xb4\x15\x03\x87\x58\x6a\x0a\x4b\x8a\xf7\x83\xc8\x16\x9e\xa8\xca\x18\x7e\xfe\xfc\xfe\xfc\xec\xdd\xc9\xc5\xf1\xe7\x93\xd3\x8b\xcb\xf3\x0f\xef\x8e\x4f\x2f\x8f\x2e\x4f\xce\x4e\x3f\x7f\x56\xef\xfd\x0d\x25\x8f\x17\xb5\x24\xef\x1d\xed\xb2\xbc\x9b\x44\x8e\xea\x69\x00\xce\x60\x6e\x28\xba\x69\x44\xc7\xbc\x93\x97\x6e\x4d\xa3\x3b\x8a\x6f\xe8\xf4\x8e\xce\x14\xb0\xbf\xa2\xe4\x3e\x29\x93\x75\xfc\x23\x96\xeb\x1b\xa7\x14\xbf\x37\xac\x10\xec\xe8\xf9\xc6\x0c\x27\x59\x16\xff\x86\x2b\x06\x48\xfc\x12\xf3\x64\x4e\xe3\x13\x2c\xc9\xb0\xf8\x14\x3b\xd4\x58\xfc\x1a\x6b\xad\xf4\xf8\x77\x0c\x3a\xe9\xf1\x07\x6c\x35\xd2\xe3\x2f\xd8\xea\xa3\xc7\x09\x2e\xf2\x78\x4d\x41\x27\x7a\x45\xb1\xa1\x9b\x7e\x32\x24\xd3\x3f\xf1\x2a\x59\xc7\x6f\x30\x2c\x7d\xbc\xa4\x58\xbd\x93\xf1\xf7\x3b\xc7\x14\xe0\x0a\x48\x31\x11\x29\xcd\x7f\x25\xf7\x72\x8f\x57\xe7\xe0\xc9\x93\x5e\xa7\xfb\xa4\xfb\xff\x5f\xb0\x8c\x9e\xdd\x50\x7e\xc3\xe8\x6d\xf7\x07\x36\xff\x92\x94\x65\x37\x63\x57\x3c\xe1\x77\x20\x79\x02\x58\xd1\x4d\xf2\xb4\x0b\x56\x58\xdd\x75\xb1\x5e\x53\x5e\x76\x73\x9a\x80\xa7\x7b\xc6\xbb\x5c\x4e\x08\xa2\xde\xd3\x8c\x2a\xc6\x3a\xb4\xad\x01\x64\x77\x3c\x1c\xff\x75\x38\x86\xa4\x8c\xcd\x69\x5e\x52\xf9\xfb\x65\xb1\xbe\xe3\xec\x7a\x29\xba\xd1\x1c\x75\x9f\x8e\xc6\x7f\xed\xbe\xa6\x29\xe5\x6c\x5e\x74\x7f\x65\x37\x45\x56\x40\xaf\xf3\x22\x57\x01\xa6\x0b\x5e\x76\xba\x4f\x64\xcd\xf7\x94\xaf\x58\x59\x6a\x4f\x5f\x4b\xca\xe9\xd5\x5d\xf7\x9a\x27\xb9\xa0\x29\xee\x2e\x38\xa5\xdd\x62\xd1\x95\x30\xec\x9a\x62\x39\x89\x24\xbf\xeb\xca\x41\x17\x92\xfe\x15\x0a\x83\xea\x26\xdd\x79\xb1\xbe\x93\xed\x81\xd7\x70\x56\x76\xcb\x62\x21\x6e\x13\xae\x66\x9b\x94\x65\x31\x97\xe0\x36\xed\x1a\xc0\xa9\x7c\x39\xc9\x15\x2b\xbb\x91\x58\xd2\x6e\x70\xa1\x6b\x04\x08\xfa\x49\x69\x92\xc9\x06\x21\xf4\x2b\xed\x9a\x5c\x40\x5a\x8a\x8d\xe8\x72\xaa\xec\x2c\x58\x91\xe3\x2e\xcb\xe7\xd9\x26\x95\x23\x31\xd9\x19\x5b\x31\xdd\x09\x84\x10\x90\x8b\x23\xe7\x2c\x9b\xde\x94\x14\xc3\x80\x71\x77\x55\xa4\x6c\x21\xff\x52\x98\xdf\x7a\x73\x95\xb1\x72\x89\xbb\x29\x2b\x75\x28\x6e\xdc\x2d\x65\x22\x2c\x35\x96\xb3\x39\x28\xb8\x44\x27\x60\x70\xf3\x62\xcd\x68\x69\x5c\xa5\x9b\x31\x42\x31\xd9\xd1\x5a\x2e\xae\xd0\xcb\x05\x0e\xd6\x6f\x97\xc5\xca\x9f\x0f\x83\x51\x2d\x36\x3c\x67\xe5\x52\x49\x28\xd3\xa2\x5b\x16\xd0\x2f\xe0\x23\x5a\x08\xbb\x28\xb2\xac\xb8\x95\x73\x94\xb8\x22\x58\x84\x95\xb1\xde\xc5\xcb\x25\x44\xff\xb9\xa1\x30\x2d\x75\x12\xf2\x42\xb0\xb9\x5a\x7f\xd8\x91\x75\xb5\xd3\x3a\xab\x5c\x26\x59\x26\xf1\x41\xb5\x7c\x34\x85\x4b\xef\xcf\x8c\xcb\x61\x94\x22\xc9\x05\x4b\xb2\xae\x7c\x48\x64\xbf\xf5\x19\x0f\xcd\x38\xde\x1c\x77\x2f\xce\x5e\x5f\x7e\x3c\x3a\x3f\xee\x9e\x5c\x74\xdf\x9f\x9f\xfd\x74\xf2\xea\xf8\x55\x37\x38\xba\xe8\x9e\x5c\x04\xb8\xfb\xf1\xe4\xf2\xcd\xd9\x87\xcb\xee\xc7\xa3\xf3\xf3\xa3\xd3\xcb\x5f\xba\x67\xaf\xbb\x47\xa7\xbf\x74\x7f\x38\x39\x7d\x85\xbb\xc7\x3f\xbf\x3f\x3f\xbe\xb8\xe8\x9e\x9d\xcb\xd6\x4e\xde\xbd\x7f\x7b\x72\xfc\x0a\x77\x4f\x4e\x5f\xbe\xfd\xf0\xea\xe4\xf4\xfb\xee\x8b\x0f\x97\xdd\xd3\xb3\xcb\xee\xdb\x93\x77\x27\x97\xc7\xaf\xba\x97\x67\xd0\xa7\x6e\xed\xe4\xf8\x42\xb6\xf7\xee\xf8\xfc\xe5\x9b\xa3\xd3\xcb\xa3\x17\x27\x6f\x4f\x2e\x7f\xc1\xb2\xad\xd7\x27\x97\xa7\xb2\xe5\xd7\x67\xe7\xdd\xa3\xee\xfb\xa3\xf3\xcb\x93\x97\x1f\xde\x1e\x9d\x77\xdf\x7f\x38\x7f\x7f\x76\x71\xdc\x3d\x3a\x7d\xd5\x3d\x3d\x3b\x3d\x39\x7d\x7d\x7e\x72\xfa\xfd\xb1\x84\x8a\xc3\xee\xc9\x69\xf7\xf4\xac\x7b\xfc\xd3\xf1\xe9\x65\xf7\xe2\xcd\xd1\xdb\xb7\xb2\x37\xd9\xdc\xd1\x87\xcb\x37\x67\xe7\x72\xa0\xdd\x97\x67\xef\x7f\x39\x3f\xf9\xfe\xcd\x65\xf7\xcd\xd9\xdb\x57\xc7\xe7\x17\xdd\x17\xc7\xdd\xb7\x27\x47\x2f\xde\x1e\xab\xde\x4e\x7f\xe9\xbe\x7c\x7b\x74\xf2\x0e\x77\x5f\x1d\xbd\x3b\xfa\xfe\x18\x6a\x9d\x5d\xbe\x39\x86\x49\xca\x92\x6a\x98\xdd\x8f\x6f\x8e\x65\xaa\xec\xf5\xe8\xb4\x7b\xf4\x12\x3c\x69\x9d\xbd\xee\xbe\x3c\x3b\xbd\x3c\x3f\x7a\x79\x89\xbb\x97\x67\xe7\x97\xb6\xf6\xc7\x93\x8b\x63\xdc\x3d\x3a\x3f\xb9\x90\x2b\xf3\xfa\xfc\xec\x1d\xcc\x54\xae\xee\xd9\x6b\x59\xea\xe4\x54\x56\x3d\x3d\x56\x0d\xc9\x95\xf7\x37\xe8\xec\x1c\xbe\x3f\x5c\x1c\xdb\x36\xbb\xaf\x8e\x8f\xde\x9e\x9c\x7e\x7f\x21\x2b\xeb\xb9\x9a\xf2\x72\x93\x0f\x3a\x8e\x80\x07\x2c\x9e\x1a\xca\x38\xca\x52\xaa\x1d\xa7\x5d\x81\x99\xd2\x44\xfd\x19\xea\xa2\x84\x47\xad\x2a\xe7\xa0\xd4\x9f\xac\xd2\x09\x8d\x38\x8a\xc5\xf0\x3d\x40\x4b\x59\x7a\x87\x14\x61\xed\xb2\xcd\x3c\xd3\x2b\x85\xa6\x3c\xf8\x90\xb6\xe4\x19\xd8\xd4\x9e\x9b\x27\x37\xec\x1a\xd4\x01\x44\x9b\x28\x54\x90\x69\x70\x9c\x5e\xd3\x00\x07\x97\x9c\xa5\xf0\x62\x06\xaf\x19\xa7\x8b\xe2\x6b\x30\xd3\x2e\x05\x2a\x27\x55\x7d\x32\x46\xca\x98\xc1\xb6\x3b\xdc\x94\x94\x1f\x5d\x4b\xac\xd2\xda\xe3\x4c\xf9\x0c\x3d\x27\x23\x23\x2e\xb2\x61\xdb\x46\xbb\xc8\x18\x0b\xd1\x30\xd4\x2f\xbb\x7e\x5d\x27\x4d\xa1\x7d\x15\xef\xcd\xc5\xe7\xc0\xe0\xac\x37\xc2\x7e\x75\x4b\x75\xb6\x09\xd4\x25\xe1\x2d\x51\x2f\x84\xd0\x6e\x17\xd7\x3b\xe2\xed\x1d\x59\x4d\x8e\x3d\x1c\x4f\x6e\x5b\x05\x3d\x8f\x5d\xcd\x72\xce\xf0\x21\x1c\x12\xcd\x20\xa0\xed\x34\x9a\xab\x9c\xcd\xac\x02\xff\x18\xb4\xf4\x24\x9a\x20\x09\x63\xbd\xa2\xd3\x99\x59\xc5\x61\x71\x9b\x53\xfe\xca\xe0\xf5\xfa\xf5\xff\x89\xd1\xdb\xe1\x35\x15\x2f\x8b\xd5\x7a\x23\x68\x7a\x21\xee\x40\xa9\x0c\x5c\x07\x58\x56\xeb\x84\x4f\xc5\x2c\x76\x64\xac\x85\xe3\x9d\xe0\xcd\xe5\xbb\xb7\xca\x91\xa3\xec\xfb\x34\x59\xd1\x09\x8d\x21\x62\x1f\xcd\x81\x68\x90\x48\xf0\xb2\x28\x45\x55\x3d\xa9\x47\x51\xb7\x47\x73\x78\x55\xa4\x77\x9d\xf2\x96\x49\x74\xb8\x6a\x11\xdd\xcf\x93\x92\xaa\xae\x62\xf8\xf9\xe2\xec\xd5\x2f\x41\x5c\x99\xc0\x79\x93\x83\x46\xa0\xd8\xff\xcf\x34\xec\x94\x95\xb9\x5a\x67\x85\x45\xca\xf9\xf1\xb0\xb8\xa1\x7c\x91\x15\xb7\x38\x77\x3e\x7e\xc6\xa5\xf3\xf5\x8b\x09\x1f\x19\x25\x1b\x51\x6c\xcb\x39\x2f\xb2\x6c\x2b\x73\xb3\xe4\x0e\xe9\x78\x92\xbc\x5f\xf6\x73\x34\xa1\x71\x12\xc9\x35\xaa\x87\xaa\xab\xb6\x5a\x1e\x43\x8d\x09\xc9\x35\x9a\xd4\xbe\x63\xaa\x05\xf2\x34\x0c\x7b\x51\x4f\x9f\xe0\x77\x17\x27\xf9\x7a\x23\x94\xb5\xbc\x26\x29\xb6\xdb\x9e\x5d\x3c\xf3\xe3\x5d\x91\x52\x84\x33\x59\xf9\xe0\xdd\xc5\xc9\x71\x77\x3c\xd2\xe3\x6b\xb9\x8c\x0e\x59\x3c\x77\xc6\x38\x56\x8a\x68\x9b\x78\x0c\x76\x0b\x93\x0c\x7c\x46\x79\x66\x43\xfb\xf6\xd0\xfc\x38\x56\x18\x5e\xa7\x02\x21\xf3\x68\x3c\x42\x13\x6f\xb3\xc1\xa2\x0b\x2c\x09\x8a\xc5\xa2\xa4\xe2\x3d\x9c\x1b\xe5\x04\xe5\x90\x2b\xff\xa8\x14\x68\x6a\xdd\xdc\x05\xbb\xca\x58\x7e\x7d\x88\x38\x89\x28\x69\xcb\x42\x5e\x53\x9a\xe9\x08\xa6\x69\xe6\x3c\x59\x56\x50\x18\xaa\x93\xa4\x22\xfb\xa9\x03\x26\x7f\x4f\xc0\x4c\x70\x1a\x5c\xbe\x91\xf0\xee\x95\xfc\x4f\x3e\x78\xc1\xcc\x82\xae\xaa\x31\x49\x91\x97\x12\x17\x9b\x83\x5b\xfc\x88\xe3\x60\x5d\x18\x0f\x0c\x93\x85\x04\xee\x3c\x96\x3b\x5c\xbb\x81\xfe\x2a\xc5\xfb\x96\xcf\x33\xd6\xa9\xc7\xab\x76\xef\xd9\x24\x8d\xdc\x4f\x14\x53\xcf\x7c\xc6\xc4\x8a\x50\x31\x45\x0c\x9c\x08\x43\xf0\x69\x62\xc1\xc6\xa3\x9b\x69\xc0\xc9\xbc\x58\xc9\xbe\xcc\x74\xde\x17\xc6\x0d\x27\x0a\x65\xef\xc3\x57\x67\x2f\x81\xf4\xfa\xfc\xfe\x4c\xf9\xcc\xfc\xfc\xfa\xec\xed\xdb\xb3\x8f\x27\xa7\xdf\xe3\x9c\xf0\x09\x8d\x05\x66\x84\x4f\x44\x4c\x71\x51\xe7\x37\x9c\x2b\xd7\x71\x9d\x62\x58\x52\x01\x3e\x2e\xa2\x1c\x8f\x10\xc4\xee\x15\xc7\x79\x1a\x31\x3c\xd2\xee\x1f\x71\x89\x37\xa4\x90\xc3\x59\x15\xf9\x51\x3e\xa7\xa5\x28\xb8\xbc\x1b\x09\xcb\x29\xa8\x44\xd3\x1e\x21\x9b\x30\x14\xf2\xcf\x76\x9b\x83\xab\xb3\x84\xe5\x65\xc4\xcc\x6c\xd5\x19\x20\x84\x44\x25\x89\x12\xb2\x41\xd5\xde\x6e\xb7\xf6\x50\x94\x61\xb8\x88\x92\x21\xa8\x10\xea\xd5\x80\x30\x5a\xa8\x47\x48\x32\x59\x44\x1b\x14\x6f\xb4\x93\x2e\xb9\x53\xe6\x8c\x65\x00\xfc\x26\xcb\x48\xfd\xc0\x02\xc5\x72\x37\xd2\x48\x20\x48\xf0\xed\x95\xcc\x8b\x56\xd7\x3b\x7a\x3e\x76\x94\xb1\x2b\xd5\xa2\xf1\x6c\xe2\x7e\xc4\x81\x28\xd6\x01\xe6\x04\xfe\x82\x32\x4e\xa0\x00\xd5\x65\xb1\x0e\x62\xfd\xfb\x2d\x5d\x88\x00\x94\xbf\xec\x7d\x60\x8b\xc8\x2e\x42\x6e\xe6\x0c\x66\x15\xd6\xdc\xe8\xc1\xd3\x0b\xce\xf2\xfc\x12\xaa\x2f\x96\x5f\xeb\x22\xdb\x2d\xb3\x31\x12\xa6\xdc\x6a\x88\x51\xf9\xbb\xe2\x23\xb8\x2a\x14\x8d\x35\x78\xda\xba\x06\x4f\x67\x61\xe8\x7e\xe1\x9c\xac\x23\x81\x61\x09\x10\x66\xea\x23\x93\x73\x46\xb8\x20\x7c\x32\x18\xc7\xe3\xca\xb5\xa0\x28\xd6\x7d\x92\x3f\x29\xb0\x7c\x18\x84\x28\x56\xe6\x4b\xd6\xe8\x13\x06\xbf\x81\xe2\xd0\x1f\x35\x9b\x2c\x33\xd8\xe0\xab\x5e\x6f\x58\xdd\x38\x90\x0b\x8e\x73\xa2\x3e\x95\x25\xd4\xb9\x6c\x25\x88\x83\x17\xd0\x8f\x8d\xc7\xbb\x4e\x78\x49\x5f\x67\x45\x22\x22\x3a\x0d\xae\x0a\x9e\x52\x1e\xf4\x79\x3f\xf8\xc8\x52\xb1\x0c\x66\xa8\xdf\x5e\x22\xaf\x4a\x78\xc6\x5a\x35\xfd\x25\x15\x1c\x2f\xf9\x1a\x89\x69\xa0\xe0\x62\xd0\xa7\x33\x2c\xa6\xfa\x34\xc0\x17\x9f\x06\xf3\x8c\xc9\x77\x52\x7f\x39\x25\xb9\x57\x52\x81\x70\x18\xd1\x49\x2e\x22\xaf\xa8\x1e\xa9\x4c\xcf\xa7\xc1\x2a\xe1\xd7\x2c\x0f\xfa\x51\xf0\x86\xc2\xcc\xe1\x1d\x09\xd4\x49\x84\x65\x41\xdf\x56\x43\xaf\x57\xac\x17\x10\xcd\x50\xec\x9a\xce\x5e\xb9\xf6\x69\xf2\x49\x81\xd7\xa4\x7e\x40\x73\xf5\xf8\x84\x61\x03\xdb\xb1\x0e\x1e\xee\x97\xd0\x6b\x7c\x67\xfb\x37\xea\xeb\xb7\x72\x9d\x65\xba\x5a\x70\xa3\xed\x05\x6f\xf4\x75\x8d\x9d\xa6\x60\xac\xab\x35\x2c\xf6\x48\x2d\x5e\x2a\xed\x5a\x89\xd3\x75\x93\xee\x3c\x03\xdd\xe5\xd2\x33\x98\xdf\xe1\x07\xac\x8f\x5c\x3d\xc5\x1a\xf6\xdd\xb7\x1a\xef\x53\x3e\xeb\xe4\x43\x2d\xdc\xbd\xca\x28\x71\x3f\xb6\xdb\xde\x18\xe7\xd6\xc3\x01\xe4\xf7\x46\x38\x00\x5d\xf3\x80\xc1\x03\x19\xe5\xc3\x5b\xce\x84\xce\x43\x78\x9f\x9f\x86\x7c\xf8\x85\xde\xc1\xaa\xd4\x31\x64\xff\x3c\xf2\x30\xa4\x91\x23\x02\xc4\x1c\x7c\x80\xd2\x48\x80\xa1\xc0\x6e\x17\x21\x7c\xdb\xd0\xdf\x37\xa8\xa8\x24\xe1\xe9\x64\xdf\x18\x84\x71\x10\xc1\x71\x35\xc9\xb8\x37\xc2\xee\x0c\xe5\xb7\x99\x11\xf0\xab\x63\x0a\x12\x3a\x4c\x77\xf8\xd8\x28\xd4\x28\x5f\x6d\xdb\xad\x27\x08\xb5\x78\xcc\xf8\x50\x3c\xab\x43\xa7\x43\x61\x56\xdd\x81\x5c\x53\x51\x69\xcd\x82\x2b\x42\x8e\x74\x07\x95\x02\x82\xcf\x6d\x54\x28\xbe\x5c\xb0\x30\x04\xfd\x35\xc2\xa7\xf9\xcc\x51\x55\xac\xd0\xb5\x0b\x07\x1f\x38\x06\xaf\x72\xf8\x1e\x20\x55\xac\xa1\x17\x1d\xc2\xc1\xc5\x0a\xb0\xc5\x0a\xd8\xd1\xa1\x3a\xe6\x3b\xe7\x0a\x9d\x39\xda\x17\x3b\x25\x9e\x5c\x44\x70\x5f\x24\x4d\x04\xc1\xe5\x5f\x14\x9b\x3c\x65\xf9\xf5\x4b\x00\x13\xe7\x74\x2e\x2c\x85\xb6\x8e\xa8\x81\xb6\xb9\xfa\x50\xd0\xb6\x23\x14\x74\xe5\x58\x68\x68\x9a\x63\x61\xa1\xac\x4c\xd5\x70\x35\xd7\x72\xcb\xfd\x3d\x69\x06\xf9\x12\xdd\xef\xb4\xcf\x04\xd9\x60\xac\xda\xc5\xa2\x58\xc7\xd0\x97\xbe\xa8\xba\xe1\x81\xce\xd6\xd7\xda\x74\x3d\x80\xa2\x3b\x9c\x90\x36\xda\xe5\x2a\xaa\x3d\x64\x28\xbe\xdf\xe1\x92\x24\x6a\x2d\x25\x31\xa3\x20\xe5\x47\xf5\x59\xe8\x35\xde\x90\x44\x2f\x6c\x55\xe4\x8d\xfe\x2e\x74\x8e\x44\xc9\x35\x6e\x0a\xb5\x07\x25\x5e\xd8\x14\x55\x78\xb0\x91\x6f\x71\xb6\xdd\x2e\xd4\x86\xa4\x40\xa3\x74\xb2\x01\xb9\x89\x52\x1c\x7c\x0d\x10\x5e\xe8\xdf\x77\xf2\x3d\x53\xbd\x0f\x48\x86\x4d\x27\x03\xb2\x30\x87\xe5\x22\x2a\x9c\x4d\xfe\xfa\x9f\xf3\xb6\xc2\xb1\xc0\x45\xb5\x78\xc2\x2e\x1e\x2e\x89\x3c\x49\x78\x43\xce\x22\x21\x09\x90\x04\x3c\xa9\x13\x26\xbf\x52\xe2\x3c\x63\x8b\xa1\x7a\xc5\x2e\x8b\x35\xac\x04\xc2\xcb\xb6\x6c\xf9\x4a\xa8\xfc\x0e\x0f\xc3\x22\x0c\xa3\x8d\xdc\x3b\x62\xdf\x34\xf8\x94\x98\xe1\x06\xb6\xda\xcd\x80\xad\x1f\x21\x13\x28\xee\x22\xba\x97\xc7\xa4\x94\x15\x06\x50\x6d\x90\x62\x38\x44\x25\x14\x1d\xa8\x1a\x83\xa5\x3e\x43\xa5\xde\x57\x7d\x78\x4a\x7b\x6b\x20\xa0\xef\x50\x3d\x55\x97\xc5\x9a\x8c\xb0\xf9\x92\xa3\x25\x23\xdc\xcb\xc3\x50\x6b\x81\xdf\xf8\x93\xb2\x95\x10\xbe\x6b\xcb\x91\x0d\xa0\xce\x1a\x06\x47\xd2\xc1\x0d\x5e\x9b\x23\xab\xbf\x60\x84\x64\x39\xb8\xc3\x6b\x7d\xc4\xf5\x47\x35\x9c\x1b\x7f\x38\x77\x46\xf5\x2c\x0f\xc3\x1e\x9f\x88\x0a\xfb\xcd\x50\x2c\x08\x21\x99\x43\x02\x65\x2e\x4d\x13\xad\xc9\x2a\x5a\x63\x81\x10\x5e\xd7\xb4\xf8\xff\x45\x14\xd5\x3d\x42\xe3\x19\x6e\x61\x46\x34\xde\xea\xaf\xca\xa3\x28\xab\x36\x94\xbb\xd7\xce\xb0\x74\x58\x9e\x53\xae\x2f\x22\x1c\xca\x46\x71\x75\xab\xbc\xf2\xe6\x56\x8e\xc0\xe4\x78\x32\x8a\xd7\x11\x47\x92\xd4\x57\x3f\x2d\xae\xb8\x21\x70\x62\x92\x41\x0e\x60\x2c\xaf\x16\x59\x9f\x9b\x41\xae\xc0\x5a\xee\x2c\xb8\x3e\x3d\xcc\x9c\x9b\xc2\x2a\xac\x5d\x44\x1b\xe4\x99\x2e\x54\x48\x4b\x2b\x1a\x2e\x1c\x34\x5c\x78\xa1\x5f\x82\x05\xfb\x0a\xc2\x7f\x09\x1b\x5c\x62\xb3\x8a\x00\xa8\x2e\x79\x51\x91\x21\xbd\x1e\x0f\xc3\xcb\x88\x23\xcf\xf8\x41\x53\xf0\xdb\x6d\xcf\x50\x8e\x16\x59\x9f\x47\x8f\xd3\x82\xae\x35\x87\x57\xfd\x50\x84\x61\x90\x17\x39\x55\x83\x94\xc8\x38\x4f\xf2\x72\x51\xf0\x55\x80\x0e\x91\x00\xef\x2b\x4e\x79\xc7\x47\xd4\xe3\x64\xf0\xbb\xba\xed\x62\xe3\x20\xfe\xb9\xf5\x20\xfe\xd9\x3b\x88\x7f\x9e\x99\x0d\x1e\xa9\xed\x1c\xed\x70\x46\xd8\x44\xae\x0a\x10\x68\x25\x84\x18\x90\xcb\x7d\xc3\xe8\xed\xba\xe0\x42\x11\x44\x1b\x72\x14\x65\x98\x39\x26\xe6\x73\xe3\xaa\x49\xe3\xc9\x8a\xef\x00\xa5\x27\x15\x69\x39\x27\x49\x54\xc8\x36\x2b\xea\x12\x82\x57\x3f\x72\x19\x50\x3c\x27\x81\x3a\xbe\xaa\xc5\xc7\xf8\x08\xb9\xf6\x1f\xf7\x35\x9a\x63\x18\xa7\x9c\x82\xa1\x61\xe7\xb6\xef\xed\xf6\x32\xca\x10\xda\x90\x45\x35\x91\x94\x34\x5f\x3f\xbc\x26\xa9\x79\xbe\x56\x24\x55\x50\xb1\xb3\x51\x2f\xfb\x02\x40\x95\x03\xd8\xf0\x46\x43\x2c\xb2\xee\x43\xa6\x06\xcc\xb2\x28\x00\x2f\x17\xd4\xe1\x8d\x02\x62\x64\xd5\x57\xb9\x3b\x1d\xf2\x3b\xc8\x37\x20\x8b\x34\xac\xf2\x88\x13\x2e\xef\x6b\x15\x7e\x4a\xb5\x79\x33\xe1\x31\x87\xdf\xdb\xed\x08\xeb\x31\xa9\x44\x51\xac\x55\x9a\x06\x93\x2a\x95\xeb\x9b\x6f\x87\x69\x32\xd4\x17\xe4\x78\xb6\x20\x8e\xc2\x1b\x4c\xfc\x89\xc5\x9e\x7c\x33\x0f\x5f\x49\xb3\x71\x20\xff\xd2\x7a\x20\xff\xe2\x12\xef\x7f\x99\xc5\xe0\x65\x02\xbc\x5f\x51\xcb\x66\x0a\x92\x8d\x28\xec\xcd\xd6\x9e\x7e\x12\xf2\x0e\xfc\x5d\x14\x98\x49\xc0\x05\xa7\xf8\x5e\x01\x9e\xc4\x7f\xb6\x00\xd5\x19\x24\x0a\xe1\x51\xb8\xa1\x2d\x68\x70\x24\xf8\x6b\x2a\x18\x24\x66\x67\x90\xc6\xf6\x76\x93\x0a\x97\x52\x3f\x76\xea\x12\xdd\x1b\x04\x0c\x36\x3b\xf1\xf0\x2f\xdb\xf4\x4e\x22\x08\x8e\xde\x7a\x89\x20\x88\x65\x9b\x72\xde\x71\x04\x0e\xa9\xe8\x0e\x83\xdb\xa6\xfb\x84\xd3\x24\x7e\x1f\xc9\x0f\xb4\x43\x3b\x84\x86\x65\xc1\x45\x14\xb5\x5b\xff\x0d\x65\xf1\x01\x85\x3f\x3b\x24\x11\x92\x4d\xab\x26\xa0\x81\x61\x6a\x8a\x39\x31\x9b\x6c\xc1\xd2\x73\xe2\x3d\x3f\x61\x98\x57\x29\x6f\x34\x5e\x80\x20\xac\xae\x0d\xf0\x9f\x4d\x47\x33\x39\xbd\x78\xa3\x7f\x00\xaa\x57\xae\x33\x26\xa2\x60\x10\xa0\xe9\xd8\x5a\xb4\xcd\xfb\xd1\x62\x12\x0c\x82\xfe\x22\x0e\x02\x07\x40\x9f\xfb\xc6\xcb\x8d\x53\xf5\x5d\xeb\xa9\xfa\xce\x3d\x55\xdf\xcd\x14\x7f\x95\x91\x7c\xf2\x25\x02\xd6\x93\xc0\x65\xc4\x2b\x9b\x96\xaf\x11\x07\x9d\xe5\x9d\x6b\xfb\x51\x2d\xc9\xbf\x22\x35\x40\x98\xbb\x58\x8d\xa8\xc0\x82\xbc\xbc\xfd\x96\xac\x17\xe6\xda\x01\xe5\xd0\xcc\x7f\xab\xae\x76\x6b\xdd\x73\xf3\x8a\x1b\xea\x5d\x1d\x3d\x0f\xc1\xee\xe7\xe6\xf0\xf9\x58\x76\x9f\xef\x3c\x0b\x13\x4b\xfc\xc0\x21\x0e\xb8\x22\xfe\xd5\x7d\x51\xe8\x80\xb9\x0e\x8a\xc1\x26\x2f\x5c\xa0\x52\x82\x5d\xc5\x4b\xd2\xde\x67\xa3\x03\x00\x49\x0a\xd8\x68\xc8\x22\x8a\xf5\xc1\x75\xab\x95\x91\x98\xd2\x99\xa7\xc8\xfb\xca\xd2\xbc\x84\xbb\x07\x66\x34\xd3\xac\xec\x97\xca\xd2\x43\x4f\x38\xf7\x6f\x66\x6e\x2f\x70\x41\x34\x13\x5b\x4f\x47\x4d\xc4\xe1\x60\x4b\xfc\xa7\x98\xc0\x8c\xcc\x2c\x4b\x99\x90\x29\x0e\x16\xcc\x74\x23\x13\x54\x8b\x41\x1c\xdc\x2a\xf6\x47\x26\x13\xd5\xef\xd8\x64\xda\x38\x8e\xe0\x6d\x68\x9a\xcc\xfa\x62\xba\x99\x1d\x3c\x1d\xe4\xf0\x07\xb3\x69\x39\x23\x1c\x9c\xd6\x88\x69\x39\x1b\xe4\xd3\x6c\x16\x8b\xe9\x49\x54\xa2\x99\xeb\xe8\xe9\xb4\xc5\xf2\xa8\xa2\x95\x17\x2c\x4f\x27\xea\x8f\x3c\xcd\xc6\xbd\x62\x24\xe4\xf2\x54\x8d\xbc\xf5\xd9\x06\x95\xcf\x76\x0e\xb2\x29\xe3\x34\xb5\xce\x64\x60\x8b\xa8\xad\xc3\x13\xb9\x60\x16\x02\x57\x49\xed\xea\xc4\x53\x31\x93\x1d\xed\x90\x51\x77\x3e\xf5\xc3\xf3\xb6\x96\xb4\x8d\x9b\xcd\xc9\xc1\x67\x57\x90\x27\x2b\x1a\x60\x2e\x91\x86\x45\xc1\x8f\x93\xf9\xd2\xef\x94\x0e\xcd\x57\x18\xce\x8b\xbc\x2c\x32\x3a\xbc\x4d\x78\x1e\x05\xff\x00\xd5\x0f\x46\xb9\x2d\xf1\x8f\x2e\x2b\xbb\x29\x5d\x73\x3a\x4f\x40\xfb\x65\x53\xd2\xae\x53\x2c\xff\x47\xcf\x7a\x68\xac\xda\x95\xd4\xec\x22\xef\xd0\xa1\x72\x38\x91\x86\x61\x1e\x71\x49\x1e\x08\x7d\xa3\xca\xa1\x52\xf3\x21\x17\x8d\x24\x84\xab\x14\x2b\xde\xf2\xca\xd9\x54\x84\x05\xe1\xa0\x24\xae\x5c\x6b\xb8\x61\xae\x15\x96\x5a\xf9\xf0\x1d\xb2\xf2\x15\x2d\x05\x2f\xee\x68\x6a\xb4\xbd\xef\x0d\xbf\x2d\x56\x6e\x6f\x25\x44\x2a\x25\xe5\x9e\x70\x5e\xdc\x5e\x54\x9f\x42\xeb\xbd\xc0\xd7\x22\x63\xeb\x35\x4d\xe3\xde\x18\xeb\x11\xc5\xf7\xe0\xa6\xb1\x39\xea\x73\xd7\x41\xb3\x52\x14\x87\x39\x1a\xe7\xc9\xba\x9c\x76\x08\xbf\x06\x35\x92\xa1\x41\xcd\x5f\x4b\x84\x1d\x22\xe3\x4b\xf8\x00\xca\xed\xbf\x45\x7e\x49\x93\x81\x5b\x3a\xff\xe6\xfe\xcc\x66\x96\x43\x39\xb3\xe1\x55\xb1\xc9\xd3\x84\x33\x5a\x1a\xca\xea\xa1\xd2\xeb\x24\x4d\x59\x7e\x2d\x87\x59\x70\x76\xcd\xf2\x24\x7b\x6f\x87\x4b\xbd\x11\x7a\xf3\x22\xfb\xa7\xec\x4c\x46\x1f\x12\x1d\x01\x5f\xcf\xa5\x6d\xae\x4e\x4f\xa8\x51\xdf\x36\xff\x40\xa7\x13\x4d\x1f\xc5\x41\x72\x55\x16\xd9\x46\xd0\x00\x53\xf2\x56\x75\x6c\xe7\x6c\xf5\xfb\xcd\x91\x7a\xa9\x1c\x52\x4c\xbc\x86\x8b\x5c\x85\x5f\x92\x44\x41\xd4\x56\x1c\xfc\xf6\xf9\x35\x54\x0e\x48\x7f\x3d\xbb\x28\x07\xac\xd1\x61\x59\xac\x68\x13\x09\x91\x17\x2f\x77\xe4\x93\xce\xad\x03\x51\xa8\xf7\x4e\x7c\xf0\x79\x92\xd3\xde\x18\x07\xab\x32\xc0\xc1\x47\x7a\xf5\x85\x49\x80\xff\xae\xf8\x3d\xc0\xc1\x59\xa0\x68\x6e\x1b\x3f\x60\x28\x8a\x0f\x72\x31\x5f\x26\x25\x8d\x50\xdf\xc0\x43\x30\xbd\x1f\x1d\xe6\x15\x1f\xd9\x86\x21\x62\x10\x24\x05\xa2\xd5\x06\x41\x9f\xf5\x79\x4c\xbd\xf8\x93\x9e\x44\x77\x08\x97\x6f\x5a\xcc\xac\xd7\xb0\x9d\x23\xb4\xac\xc6\xff\x22\xf2\xfd\x34\x34\xee\xb6\x5c\xdb\xdf\xeb\xdb\x16\x80\x7e\x29\x5c\x68\x88\x6a\xe9\x1c\x27\x1d\x66\xeb\xc8\x5c\xf1\x28\xf8\x3a\xb0\x67\x29\x40\xee\x2d\x52\x63\xac\x4e\x53\x10\xb4\xe4\x8a\x62\xdd\x9e\x01\xac\xa6\xd6\x1c\x45\xcf\xb4\x66\x69\xba\xa8\x35\xef\xd6\x46\xc4\x68\xcd\x9f\x7e\x88\x5c\x02\x7a\x46\x82\xc0\x86\x40\x2c\xe5\xf9\x00\x6d\xd3\xb7\xac\x14\x34\xa7\xbc\x8c\x90\x7f\x24\xd5\xb2\x9c\xe5\x7a\x61\xb5\xf5\x88\xb9\x50\x56\x60\xac\xcb\x81\x4c\xd3\x5d\x56\xd5\xda\xce\xb5\xb6\xda\x83\x1f\x56\x0a\x23\x1e\xaa\x18\x2b\xf2\xb5\x66\xaa\xa4\x85\x02\x3a\xc8\x0f\x30\x7d\x49\x8e\x65\xe3\xc3\x24\x4d\xbd\x19\x45\x01\xa7\x25\xfb\x5d\xbe\x84\x6e\x71\x7c\xbf\x4e\xca\x92\xdd\x28\x2e\xbe\xf6\x2f\x97\x38\xa2\x57\x47\x5c\x52\xa3\xd0\x2a\x2e\x8b\xcb\xbc\x2c\x26\x62\x3f\xc2\x1b\x8b\x4e\xd9\x1c\x99\x6c\xd5\x1b\x06\x2e\xb6\x5b\x1a\x25\x51\xe9\x8a\xe2\x75\xe7\x58\xfb\x31\x2e\xd1\x2e\x62\xd8\x48\xd5\x6a\x93\xe2\x43\x97\x8b\x50\x22\x9b\xa0\x61\x38\x61\x98\x0f\xc1\x1b\x6f\x79\xac\x80\x03\x44\x98\x77\x4d\xbc\xdc\xd0\x28\x7e\x51\x63\x07\xa4\x9c\xf8\xfc\x14\x3d\xf0\x98\xe0\xfa\x7b\x57\xce\x97\x34\xdd\x64\x54\x41\x44\x17\x12\x7d\x34\xc1\xba\xb1\xe8\xec\xeb\x39\x0c\xa3\xb9\x7c\x9f\xb3\xa3\x9c\xad\x40\x71\xf5\x35\x4f\x56\x26\xec\x81\xdf\xb4\x1b\x40\x25\xa2\xa4\x3e\x48\x27\xc8\x8d\x3a\x2f\xea\xe0\xee\x39\x32\xc2\x5d\x5d\x89\x91\x78\xcb\xbb\x0f\xad\x6a\x6d\xd2\x6c\x98\xdf\x24\xe0\x2b\xfe\x31\x06\xc7\x68\x7e\x47\x64\x3a\xb3\x49\x66\x27\x75\xb9\xda\x66\x8e\x41\x4b\xcc\x2e\xee\x1f\x1c\x5d\xab\x40\x79\x08\xeb\xb1\xf2\x34\x39\x8d\x5c\xb1\x30\x42\x61\xc8\xca\xd7\x2c\x67\xf0\xf4\xec\x7c\x9b\x2e\x74\xef\xd2\xdb\xa2\x0d\x99\xb4\x64\x66\x10\x1c\x6a\xba\x41\x63\xfb\x06\xc3\x57\x32\x1e\x6c\xc9\x09\x4d\xff\xb4\xd0\x15\x61\xf8\x07\xa5\xda\x07\x06\xf5\xc1\xfa\x6b\x20\x5f\x72\x05\xca\xf8\x0c\x64\x92\xfd\xdc\x1a\x5c\x81\x9a\x92\xd6\x24\x3c\x60\xdf\xa2\xa7\xf4\x83\x4f\x18\xef\x45\xb0\x4d\x00\x23\xa0\xce\x19\xe9\xf5\xf2\x30\x6c\x7b\x7a\xeb\xe5\xc1\xbd\xac\x7d\x79\x25\x3a\x94\x52\xfe\x2c\x57\x7f\x77\x8a\x2b\xd8\xab\x60\xc9\x3f\x82\xbe\xe8\x07\xff\x08\x70\x02\xbf\xb9\xfc\xdd\xf1\xb0\xf1\xa4\x1f\x74\xcd\x13\x26\xb1\x70\x6d\x46\x92\x76\xaf\xee\xba\x41\xbf\xf0\x72\xf3\x2e\x74\x03\xda\xd4\x05\xff\x82\xbb\x57\xb4\x5b\x6e\x38\x95\x09\x5a\x91\xb9\xcb\x44\xf7\x8a\x2e\x0a\x4e\x55\xed\x5e\x50\x73\x59\xf9\x23\x99\x02\xe3\x68\x50\x8a\x84\xcb\xbd\x02\x2e\x92\xfa\x33\xa0\x79\xaa\xf6\xd2\xe6\xaa\x7d\x95\x29\x2a\x4f\x71\x86\x4c\xae\xd9\x6f\x95\xaa\x4a\x68\xee\x8f\xfb\x51\xa5\x9a\x8a\xc0\x03\x52\x45\x14\x75\xa9\x52\x54\xf6\x0c\xff\x9d\xfc\xa8\x31\x0f\xd7\x34\xeb\xe7\xff\x0c\x01\xc3\xdf\xed\x61\x84\x90\xcf\x7f\xd7\xfd\xf0\xfe\x18\xe2\xd2\xce\x13\x11\xfd\xdd\x52\x81\x0e\x33\x44\x4c\xf2\x2a\x52\x54\x9c\xc3\x5a\xfe\x4a\x02\x89\x1e\x07\x60\x7a\x37\xcf\x8a\xf9\x97\x5b\x56\x4a\xb8\x22\x3f\x8b\x4d\x2e\x28\xaf\x52\x3d\x33\xb6\x1a\x9b\x7a\x3a\xc2\xa3\xd9\xa3\x54\x79\x8e\xc0\xfd\xad\xa2\xfb\x0f\xa2\x4f\xfd\xed\xa7\x01\x3a\xd8\xcf\x21\x03\x17\xff\x2b\x50\x59\x05\x29\xa5\x69\xe7\x34\x4a\xda\x2e\xc5\x40\xa9\x89\x96\x34\xe1\xf3\x65\x74\x80\xb7\x9f\xca\x03\x50\x77\xed\x24\xd3\x72\x16\x86\xc0\x7e\x94\x3f\x2b\x0e\x24\x96\x78\x96\x4f\x5c\x9e\x29\xa4\xbc\x5b\xd2\x75\xc2\xc1\xee\xe1\xea\xae\x7b\xbb\x64\x82\x76\xcb\x75\x32\xa7\x51\x89\xba\x09\xa7\x0d\x6a\x33\xe9\xce\x8b\xd5\x2a\xe9\x46\x18\x81\x82\x04\x4d\x52\x13\xd2\x7a\x43\x0e\x3e\x95\x4f\xf0\xa7\xf2\xc9\xf6\x53\xd9\x3f\xc0\x99\x5a\xa7\x72\x32\xad\xa2\x9e\x94\x76\xf7\xa6\x30\x44\xb5\x48\x1b\x49\xfb\xcf\x10\xae\xa5\x8d\x67\x33\x53\xda\xb4\x50\xf6\xc7\x08\xcd\xe2\x69\x62\x58\x6f\x51\x46\xb2\xfa\xca\x56\x1b\xa6\x5c\xe1\x4e\x7a\x45\x5c\xa0\x26\x13\x24\x71\x94\x81\xe5\x7b\x91\x6e\xe6\xb4\x9d\x11\x19\x80\x88\x79\x4a\xab\x60\x32\x72\x9d\xe1\x10\xf4\x03\x1c\x0c\x9c\xdd\x17\x68\x12\x79\x25\x89\x00\x8f\x9d\x98\xa2\x38\xa9\x65\xf5\x55\xde\x58\xe6\x51\x33\x55\x81\x76\x08\x4f\x67\xfb\xcf\x4b\xd3\x60\xd9\x28\x78\x69\xab\xc4\x28\x9a\xc4\x9f\x06\xdb\x4f\x7d\x34\xf9\x94\x3e\xf9\x34\x94\xff\xa3\x68\xf8\x04\x1d\x20\x5c\x90\x3e\x44\x35\x4a\x08\x9b\x3e\x55\x5e\xad\x8a\x8a\x35\xad\x8d\xb4\xab\x33\x18\xfc\x31\x40\xc6\x3f\x95\x16\x91\x68\xd5\xde\x44\x6b\xf4\xfe\x71\x1d\xc4\x25\xe1\x9d\x2b\x4e\x93\x2f\x4a\x65\xf7\x8f\x5a\xc3\xf7\x8f\x3c\x88\x35\xfa\x15\x97\x24\xaf\x64\xda\x25\x9a\x8a\xd9\xc1\x78\x34\x7a\x52\xec\x40\x3c\xb3\x94\xeb\x9b\x6c\xb7\xc1\x0d\x88\x48\x12\xcb\xf6\x31\x59\x13\x2b\x16\xdc\x27\x5d\xfa\x16\x69\x61\xfc\xad\xad\x3c\x20\xa2\x44\x7a\xdc\x96\x32\x8a\x28\x66\xca\x3d\x28\x30\x3e\x5a\xd9\x3c\xf2\x24\xd1\xb6\x27\x5b\xee\xde\x1f\x14\x37\x86\x4d\xc5\xac\x4f\xf8\x93\x28\x18\xa8\xd3\x96\x0f\xc6\x33\x50\x75\x43\xba\x69\xcc\xb4\xa9\x2c\xb9\xb7\x44\x91\x65\x62\x62\x8f\x82\x8e\xe5\xa1\x72\x91\x92\x58\x62\x98\x3e\x15\x01\x3c\x13\x4d\xeb\xba\xde\x09\x77\xd8\xd0\xcc\x7e\xaa\xa5\xe0\xe2\x7b\x08\x01\x1b\xdf\xc3\x33\x17\x8f\x47\x23\x4c\xab\x5e\x16\x79\x43\xeb\xde\x67\x3e\x70\x22\x7c\xa6\x28\xa8\x6c\xfb\x7c\x75\x65\x82\x6f\x15\x17\x15\xb0\x82\x40\x20\x15\x16\x99\x10\x66\xb8\x10\xa5\x01\xc9\xf6\x21\x93\x0f\xa2\xc7\x28\xdd\x90\xd2\xe7\x8b\x66\x32\xa1\xc6\x02\xc5\x73\x72\x0f\x8f\x5b\x7c\x1b\xdd\xef\xf0\x06\x17\xd3\xcd\x0c\x61\x9a\xa7\x6e\x42\xbf\x98\x66\xb3\x41\x32\xcd\x66\xc8\xe5\x34\x69\xfe\x08\xe8\xf1\x24\x78\xee\xeb\xfc\xec\x34\x7b\xca\x2c\xda\xd3\x07\x16\xcd\xf5\xd9\xac\x6a\x81\x44\xa3\x5a\xc1\xfa\x9a\xe8\x55\x48\xbc\xe5\x29\x49\x5e\x5b\xe6\x8d\xb9\xc2\x46\x08\x47\xfe\x10\xf5\x39\x9a\x4c\xfb\x1c\x8f\x66\x31\xa7\x11\xc7\x05\x4e\x70\x89\xf4\x9b\x06\xbc\xde\xa8\x50\x52\xb9\x8d\x6c\xa2\xd0\x0a\x0c\x9b\xe9\x78\x86\x0c\x9b\x7d\x5f\xb1\xbe\x29\xa6\x55\x59\xa1\x90\xc9\x80\x52\xa0\x26\xa1\x0b\xe9\xad\x23\xa0\xa6\xdb\x52\x50\xb7\x06\xbc\x2b\x58\xe8\x02\x42\xdd\xa8\x55\x1d\xed\xf0\x9a\xc3\x81\x3f\xd3\xca\xfe\x66\xa1\xbf\xfb\xc6\x85\x6e\x70\xda\xb6\xdb\x45\x44\x87\x86\x29\x69\x28\xe9\x8e\x93\x54\xb1\x16\x01\xe1\x8c\x38\x59\x80\x5c\x46\xe1\xb4\x3e\xc5\x0f\x7b\x56\x6b\x4c\xe1\xd3\xb0\x83\xa2\x58\xeb\x00\x00\x0b\x81\x4b\xc2\xa6\xf9\xac\xc3\x0c\xfb\x82\x59\x76\x85\x4c\x27\x41\xa0\x9f\xdb\x77\xcd\xf1\xe1\xb6\xe1\x41\xfc\x12\xe0\x0c\x62\x5e\x67\xfd\x21\xdd\x4d\x61\x7a\x49\x54\x27\x25\x76\x97\x84\x18\xb5\x68\x31\x5c\x73\x56\x70\x26\xee\x20\x50\xb1\x7f\xf4\x71\x4a\xee\xd7\x9c\xad\x12\x7e\xd7\x62\x78\x33\x9f\xd2\x4a\x5e\x36\xa5\xb3\x67\x9b\x29\x9d\x85\x61\x4f\x0c\x69\x39\x4f\xd6\x10\x2d\xf0\xdc\x0c\x19\x56\xd3\x42\x6b\x59\x1c\xcb\xe2\x08\xe1\x5b\xa5\x26\xc7\xd1\x0e\x2b\x9f\x14\xed\xbd\x55\x47\x93\xfa\xd7\x3e\x27\xf3\x29\xf7\x06\xf2\xfc\x91\x81\xe4\x7a\x20\x2c\x8f\x64\x55\x18\xc8\x20\x72\x3b\x98\x2b\x01\x4e\x3c\xd7\x92\x1b\x64\xc6\xa9\x74\x4c\x2b\x3d\xf2\x56\x52\x55\x41\x48\x0d\xc0\x34\x9a\xed\x83\x2f\x8a\x26\x81\x5e\xd8\x20\x0e\xec\xb4\x83\xce\x5c\x41\x9b\x39\x4e\xa7\x62\x16\x69\xce\x7b\x03\x22\xcd\xe5\x45\x31\xfb\x16\xdb\x3e\xb8\x47\x13\xea\xeb\x37\xc3\xfa\xa8\xc4\x7f\xc1\x8d\x2b\x11\xfb\xea\x11\x3b\xfc\x85\xd2\xf5\x65\x71\x4d\xc5\x92\x72\x73\xe1\xfe\xfc\x4d\xcf\x81\x01\x5f\x10\xc6\x47\x9d\x1e\x88\xe9\x6d\xcf\x2c\x73\x21\x5e\x0d\x90\x69\x2d\xa1\x45\x56\x14\x12\xea\xe9\xa5\xf3\xe7\x61\x17\x0f\x04\xec\xc9\x44\x4f\xb7\x7a\x2f\x37\x32\xd1\x7f\x10\x92\xbd\x32\x31\x3e\x2d\x67\xcf\x8a\x28\x97\xcf\x01\x44\xfe\xf0\x97\x78\xba\x99\x11\x9d\x3b\xe0\xf2\x5d\xc0\x32\xe9\xb9\x4c\x2a\x1f\xac\x50\xce\xc0\x89\x96\x16\x72\x98\x25\xfc\xcb\xb7\xc0\x2c\xc0\xdd\x7e\x70\x41\x80\xcb\x62\x95\xcd\x05\x38\x70\x37\xa8\xae\x83\x20\xd7\x5b\x9b\x70\x83\x86\x49\x09\x06\x6a\x95\x75\x63\xae\x35\xa1\xf3\x16\xc8\x05\x71\x02\x2f\x68\x46\x21\xf8\x43\x8e\xaa\xa6\x77\xc6\xe1\x7b\xaf\x59\xcb\x6a\xae\xe5\xb6\xbc\x4f\x95\x7c\x3c\x3a\x3f\x3d\x39\xfd\x3e\xee\xfe\x03\x26\x60\x86\xf7\x8f\xca\x2f\xcc\x92\x65\x69\xb7\x58\x74\x99\x28\xb5\x71\xba\x31\x43\xef\x05\x08\x53\x1d\x8f\x6b\xff\xd1\x49\x9c\xb3\x27\x89\x2d\x7d\xf6\x36\x24\x71\xce\x5e\x56\xbb\x8d\xea\xe8\x54\x47\x0a\x82\x7f\x66\x4d\x82\x62\x21\x13\x1d\xed\x78\x9c\x82\x7e\xcd\xdb\xe2\xd6\xb0\xea\xf1\x52\x16\x71\x4f\xdd\x5a\x26\x5c\x19\xfd\x78\x7d\x27\x57\xe4\x65\x94\xa3\xe9\x7c\xd6\xd9\x4c\xd7\xb3\xc1\xea\x59\x39\x4d\x67\x6d\xc7\x28\x9d\x0d\x88\xcc\x1b\x44\xaa\x20\x42\x78\x33\x4d\x67\xfd\xd5\xf3\x72\xba\xde\x53\x43\x3e\xa4\xb2\xc8\x40\x16\x69\x01\x17\x17\x8d\x4a\xea\x49\xbb\x51\xf5\x36\xd3\xf9\xec\xe0\xe9\x60\x75\xf0\x14\xdf\x11\xd6\xf2\x44\xe2\x2b\x57\x11\xe0\xae\x32\x0a\x58\xcc\x10\xbe\xae\xe5\x19\x53\x88\x45\x65\x0a\x81\x3f\x93\x9b\x41\xdb\x4c\xaf\x06\xd7\xe6\x3e\x7e\xae\x1e\x07\x0b\x9c\xcb\xe9\x7c\x36\x58\xe1\xcf\x08\x83\xff\x47\x38\x41\x96\x4f\xe7\x4c\x13\x32\x48\x74\x1b\x81\x07\xe5\x14\x43\x03\x5c\xc2\xba\xe8\x33\x00\x6e\x8e\x97\x38\x00\x0f\x47\x12\x70\x52\x03\xfb\xa6\x5f\x07\x50\x75\x16\x28\xb1\xa3\xb9\xad\x7f\x7d\xe4\xb6\xb2\x45\xf4\xfb\x9e\x6b\x0a\xa4\x85\x7b\x2f\xc1\xcf\x86\x96\x69\x86\xa1\x2b\x6d\x94\x34\x7f\x43\xa8\x57\x0f\x1f\xf6\x6f\x60\x04\x2d\x98\x4f\x03\x47\xf0\xd1\xcf\xda\x8d\x62\xe4\x44\xf9\x9b\xde\x53\x64\x3c\xdb\x6e\x03\x49\x6c\x4f\x67\x86\x76\x14\xc3\x2b\xba\x4c\x6e\x58\xc1\x15\x11\xd9\xfd\x35\x4e\xc8\x34\xc7\x6c\xe6\x90\x91\x5d\x4a\xe3\x84\xfc\x1c\xe5\xc8\x4d\x14\x3a\x11\x9c\x56\xaa\x74\x43\x62\x26\xa4\x6a\xd7\x20\xde\x49\xcb\x93\x5b\xe2\x8d\xf2\xf1\xd5\x23\xa4\xdc\x6e\x4d\x84\x58\x42\xc8\xa6\x3f\xae\x56\xf4\xf1\x39\x6b\x9c\xa8\x81\x06\xb9\x98\x51\xb5\xe4\x0b\xf7\xd1\x4a\x89\xc5\xb0\xf3\x30\x5c\x44\x99\x92\x3b\xa1\xe7\x8b\x68\x0e\x78\x18\xda\x6e\x2b\x0c\x43\x17\x81\xf4\x67\xb2\x84\x2a\xbc\xdd\x1a\xcc\x5a\x17\x50\x60\x44\x35\x22\x8a\xb5\x2c\x50\x61\xd5\xba\x8c\x4c\x87\x36\x74\x61\xbc\x24\x6e\xdb\x4a\x19\x0f\xe1\x35\xf1\x06\xa5\x15\xef\x10\x5e\x11\xa7\x11\x50\xd2\x43\xf8\x86\xf8\x9d\x73\xdb\xf6\x9d\x37\xcd\x65\x6d\x4e\x6b\x6f\x02\xab\xfa\x68\x6f\xf0\xd5\x23\x4f\x7b\x2e\xe1\x49\xaf\x27\xe0\xc6\xfc\x94\x70\x06\x52\x09\x49\x3e\x5c\x29\x8b\x4e\xa5\xf1\x59\x40\xd7\x32\x89\xe6\xa9\x4e\x58\x6f\xb7\xbd\x7a\xa1\x95\x4e\xab\x4a\xdd\x48\x60\xd4\xec\xe0\xc5\x1d\x98\xee\xe6\xa2\xa5\xa7\x75\xbd\xa7\x65\x4b\x4f\x37\x8d\x9e\x56\x08\xdf\x92\xeb\xed\xf6\xf3\x61\x94\x6e\xb7\x77\xdb\xed\xad\x42\x1b\x34\x2c\x20\xbd\x11\x86\x0c\xc5\x90\x4f\xa6\x1b\xf0\x6b\x75\x2b\x29\xa5\xb6\x80\xf3\xba\x61\x3a\xd1\xdd\xc6\x55\xf7\x74\x02\xb9\x31\xdd\x45\x05\xf2\x35\x1a\xf2\x7e\x54\x80\x1a\x5b\x11\x07\x41\xcb\xcb\xa0\x4c\x54\xea\xc7\xfd\x55\x2b\xd0\x79\x58\x2d\x00\x81\x3c\xbf\x15\x28\x52\xac\xb8\xb5\x1a\x99\xdd\x61\x73\xa7\x63\xcd\xc5\x7d\x10\x41\xb5\x9a\xbe\xd8\xdf\xb2\xb8\x37\xc6\x7b\x36\x31\xee\x8d\x77\x18\x20\xb1\x81\xe8\xff\xcb\x85\xe8\xe3\x7f\x8f\xa3\x51\xa1\x19\x8c\xe4\x66\x59\x0a\x92\x7b\x0c\x8c\x87\xd1\x0c\xd0\x69\x07\x76\xae\xb9\x01\x0d\x39\x8d\xa3\xb3\xe5\xa1\x15\x33\x52\x4c\xf9\x6c\x10\x95\x13\xc8\xa9\x61\xb5\xb3\x78\xe4\x6f\xfc\x49\xd4\xa2\xa9\x41\x2e\x24\xee\x2c\x91\xd3\x25\x4b\xa9\x59\x9b\xbf\x3d\x88\xde\x3f\x84\x93\xca\x56\x02\x1c\xd4\xe8\xf4\x3a\x56\x2a\x5a\x81\x27\x27\xa7\xed\xad\xb6\x30\x48\x1b\x3d\x28\xf3\xa0\x64\x45\x77\x08\x39\xaf\x1d\x04\x5b\xd2\xa0\xea\x99\xd6\x37\x56\x6a\xaf\xcf\xad\x9e\x31\x68\xdf\x3e\xaf\xb4\x8b\xb5\xae\xed\x33\x0d\x26\x61\xbe\x2a\x2a\xa0\x9c\x5d\x35\x13\xf5\x0d\x6c\xdf\x61\xa5\xb0\x34\x0d\xbe\x0e\x8a\x8d\x18\x14\x8b\x41\x35\x8c\x40\x52\xf4\x80\x35\x43\x6b\xe3\x07\x5a\x1b\x7f\x53\x6b\xbd\xb1\xcb\x76\x9a\x2b\x0d\x4f\x50\xb7\xb0\x7b\xf8\x97\x6f\xe3\x89\x7c\x05\x9a\xec\xce\xe5\x37\x55\x27\xf9\x5f\xd8\x10\x47\xe1\xc3\xdb\x8b\xeb\xf5\xe6\x68\x3e\xa7\x19\xe5\x70\x25\xab\xb8\x7b\x45\x5d\x5c\x51\x11\x06\xb5\x3a\xff\xe8\x2a\x61\x77\x77\x55\xdc\x28\xdf\x44\xff\x70\x67\xfc\x8f\x4a\x2c\x97\xe4\x69\xf7\x96\x65\x59\x57\xc7\x43\x29\x37\x6b\x09\x28\x94\x4f\xa1\xc5\x46\x6c\x38\xed\x1a\x27\x7f\x92\xc2\x50\xce\x5c\x86\xbf\x95\x46\xa7\x2e\x21\xd5\xf8\x26\x45\x2c\xea\xc3\xc7\x25\x69\xe3\x18\x81\x2d\x55\x89\x70\x46\xee\x0d\x56\x15\x33\x8b\x60\xed\xf0\xbc\xd5\xf9\x7c\x05\x3e\x72\xc2\xcd\xa2\x33\xc2\x9d\x3b\xa1\xa9\x60\xc0\x5c\x71\xe2\x62\x17\x65\x9b\x77\x39\xba\xc3\x1b\x52\x44\x4c\xf1\x2a\xe4\x78\x8a\x28\x37\x1f\xf3\x47\x40\x91\xa7\xd2\xb5\x20\x5a\x06\x55\xa1\x47\x56\x5e\x30\x08\x10\x4e\x89\x98\xcc\xb7\xdb\xc5\x76\xbb\xf9\xe3\x53\x42\xb2\x3f\x3e\x9d\x14\x71\x12\x97\x78\x49\xc4\xa4\x88\x4d\x3c\x71\xa5\xaa\x9b\x46\x50\x68\x1c\x86\x99\xfe\xdb\x5b\x84\xa1\x98\x28\xcb\x9c\xc1\x38\xce\x35\x46\x22\x8a\x75\xbc\x8c\x72\x85\x72\x68\x5d\x5e\xf9\x6d\x70\x0d\xa5\xeb\x9b\x46\xb9\x46\x55\x76\xbb\x88\x1a\x16\x7e\x4a\x6f\xd8\x9c\xbe\x67\x5f\x69\x76\x2e\xf7\xea\xd9\xd3\xed\xb6\xf7\x8b\x1c\xa9\x83\x72\x70\xa3\x48\x6b\x38\x04\x4b\x87\x8b\x94\x5b\xf0\xaa\x49\xb4\x75\x9d\xc1\xb7\x32\xfe\x25\x6f\x0c\x9b\x95\x2d\xa2\x1b\xb7\x83\x74\x62\xcd\x81\xca\xca\x5c\x71\x50\x7a\xa2\x8b\xbe\xc1\xcc\xe2\xc1\x46\xb3\x93\xaa\x24\x40\xeb\xf0\xca\x19\xd7\xf2\xe1\x36\x95\x0e\xb5\x46\x18\x65\x8b\xb7\x5e\x82\xc2\x35\x71\x12\x86\x6b\x94\x4d\xd7\x33\xa2\x66\x94\x25\x82\x7e\x97\x46\x41\x7f\xd5\x0f\xd6\x5f\x71\x37\xe8\xdf\xa8\x1f\x23\x14\xe0\x6c\x9a\xce\xc8\x08\x67\xd3\x25\xfc\xf1\x34\x9f\xaa\xf5\xa8\x4c\x52\xee\xfc\x25\x18\x8c\xe3\x31\xbe\xf2\x66\x00\xe6\xfc\xd0\xec\xcd\x93\x3b\xd5\xf0\xea\xc9\x95\xdf\x74\xda\x0f\xe4\x38\x96\xda\x60\xfb\xde\x53\x0c\x8b\x9d\xa3\xe8\x28\x73\x57\xa0\x52\x61\x2e\xd7\x1e\xf8\xb4\x0a\x0d\x3a\x37\xb3\xdf\x96\x7a\xbc\x70\xb2\x6b\xf4\xa3\x5f\x04\xf0\x94\x1a\x38\x90\x90\xf5\x6b\x75\x98\xee\xcc\xc9\xd9\xe1\x0a\x1c\x1a\x80\xfc\xbf\x1f\xe7\x99\x61\x13\xc7\xa8\xfb\x7d\x2b\xbe\x65\x86\x2e\x9a\xdc\x1a\xd0\x1d\xac\x26\x8e\x5d\x4d\x12\xbe\x47\x2d\xb9\x27\x6f\x38\x9f\xd2\xd9\x44\x0c\x4b\x2a\x2a\x8d\x3c\x8a\x65\x2a\x8a\x45\x43\x57\x8f\x6a\xee\xa3\x4b\x78\x87\xa1\x17\xde\xc0\x5b\x33\x4d\x77\x85\xe1\xf7\x91\x5f\xa9\x65\x6d\x8b\xfc\x6d\x91\xa4\x71\x5d\xf4\x59\xa9\x83\x9d\x83\x03\x65\x8a\x79\x9d\x74\x4d\xc8\x6f\x11\x77\x70\xb5\x42\x17\x7b\x54\xd1\xb6\x51\xc4\x68\xd7\x56\xfe\xeb\xbd\x85\xf1\x4e\x24\x4e\x10\xfe\x3e\x12\xb8\x02\xf9\xfc\x51\x15\xd7\x1d\x84\x15\xa9\x9f\x22\xed\xa5\x76\xb7\xc3\x8c\xee\x8d\xfa\x56\x39\x97\x07\x6f\xde\xdf\x6e\x1b\x3c\x71\x3f\xe2\xfb\x5d\xe7\x5a\x07\xa5\x41\x6d\x1a\x63\x2d\xbe\x5b\x39\xfd\xe7\x86\x96\xa2\xa6\x12\x56\x68\x65\x2a\xa4\xa3\x62\xa8\x2f\xc2\x23\xe7\x6b\x78\x05\x26\x00\x4b\x56\x22\x5f\xdb\xd1\xdc\xb7\x57\x8a\xae\x2f\xe5\x5a\x3a\xea\x64\xf7\x8e\x7e\xa9\xc4\xce\xad\x22\xaf\xfc\xf0\x14\xb6\xe2\xe9\x6c\x57\x53\xb6\x26\xe0\x2b\xe7\x37\x60\x5f\x4e\xc4\x74\x34\x8b\x85\xab\xac\x49\x58\x18\x32\x93\xcd\x64\x36\xdb\xa3\x70\x4d\xee\x77\xde\x3d\xaa\x8d\xd9\x41\x88\x92\xea\x77\xab\x70\x58\x80\xdb\xd5\x7a\xfb\x53\x31\xab\xaf\x83\x97\x09\x9e\xa7\x9d\xa6\x27\x89\x97\x1d\xdf\xef\x94\x56\x9b\xa7\x7a\xeb\xd9\x6c\xb5\xcf\xeb\x41\x43\x2e\x89\xb7\xc5\xf2\x36\xb6\x8c\x17\xcc\xb9\x1e\x34\xe6\xd2\x5a\x58\x03\x61\xb5\xb0\x6a\xc3\xdb\xa7\xc9\xe7\xd8\x2d\xd0\xa1\x82\x04\x08\x94\xba\xe0\x67\x54\xb8\x38\x91\xc5\x4f\xad\x12\xa4\x4c\x54\x81\x4f\x6d\x8f\xea\x00\x6a\xef\x07\xa5\xaf\x88\xee\x49\xcd\x3b\xa5\x56\xb5\x55\x43\x68\x57\xd2\x6d\x51\x95\x24\x26\x5e\x48\xf7\x73\x44\xf1\x14\x2c\xe0\x02\xd5\xab\x09\x03\xd9\xbc\x4a\xaf\xab\x50\x14\x68\xb7\xc3\xaa\x52\xaa\x8e\xfa\xfe\x5a\x2f\xda\x6a\xb5\x0d\x77\x7f\x13\xff\x6c\xed\xb8\x4d\x2f\x79\x7f\x1b\x1f\xbd\x36\x66\x48\xc5\xae\xab\x1c\x3c\x7f\x10\x2c\x2b\x49\xf4\xb8\x73\xf5\xeb\xac\xb8\x4a\x32\xa4\x7d\x29\x42\x35\xcc\x9c\xf7\xbd\x24\x3f\xca\x6f\x73\x29\x08\x38\x0e\xdf\x21\xb4\x8b\xda\x81\xa3\x31\x2f\xa9\x9b\x05\x81\x3e\x91\x1a\x74\xe5\xe7\xb8\xc2\x1d\x36\x39\xe8\x38\x44\xc1\xda\x90\x01\x12\xb1\x85\xa1\x9b\x70\x64\x9b\x2c\xc3\xb4\x12\xf1\x0f\x93\x15\xb0\x69\xe4\xc4\xff\xef\xf5\xbf\xfb\xdd\xf0\xbb\xff\x71\xbf\xfb\x3f\xee\x77\xff\xc7\xfd\xee\xff\xb8\xdf\xfd\x7f\x8b\xfb\x5d\xeb\xb5\xdf\x01\xc7\x8f\xb9\xe4\x9d\x3a\x85\x67\x10\x62\x7b\x78\x59\x14\x99\x60\x6b\x89\x88\xea\x07\xa6\xc5\x53\x2f\xad\xb9\xea\xa5\x04\x1a\xad\xb9\x94\x0f\xb4\xd8\x29\x40\x13\xeb\x89\x3d\x36\x2c\xcc\xff\x0f\x3a\xfc\xe2\xff\xcf\xf7\xbb\x85\x73\x72\x3f\x37\x7e\x25\x25\xb5\x90\xd2\x2c\xb9\x8b\x47\x78\x29\x56\x99\xfc\x76\xb4\x2a\x95\x91\x38\x13\x19\x8d\x83\x00\x0b\xba\x5a\x67\x89\xa0\xf1\x9f\x9e\xa5\xec\x46\x39\x7a\x23\x81\x50\xa7\x29\xe8\xf2\x22\xa3\xd5\xe7\xf3\x96\x32\x4a\x72\x1c\x3c\x7f\x76\x90\xb2\x9b\xd6\x02\x4a\x14\x6c\x0a\xc0\xff\x7f\xc2\x3a\x74\x72\x1c\x2c\x0b\x88\x85\x5d\xcc\x37\x65\x60\x75\xde\xb4\x65\xac\xd6\xc2\x88\x83\xa1\xd7\x19\xee\x9a\xef\xcf\x9f\xb5\x3a\x08\xf4\xd1\x52\x1e\xd2\xdd\xf2\x6a\x30\x3b\xcc\x5a\x4f\xb2\xf6\x58\x1c\xfd\x57\x7a\xcd\xd3\xb7\x92\x21\x5c\x38\x98\x25\x98\x18\xdf\xef\x70\x8e\x41\x5e\xa1\x08\x35\xb9\xdb\x84\x4e\x47\x33\x54\x27\xf6\x7c\x73\x28\x22\x34\x1b\xb7\xa1\xe9\x22\x4c\x8c\xea\x89\xfd\x65\xe4\x39\xdd\x00\x3d\x10\x7a\x4a\x33\x4d\xe7\x19\x9b\x7f\x09\xb0\xda\xa5\x00\x07\x6a\x9f\x5c\xfd\xad\x1d\x42\xf1\x74\xa6\xa3\x2c\xb2\xf2\x6c\x4d\xf3\x2a\x42\x94\x02\x53\x67\x7a\x94\x36\x92\x64\x49\x45\x8d\xe0\xa0\x38\xc1\xc2\x1e\x68\x11\x31\x43\x5a\x7c\x56\x88\x63\x03\x3d\xaf\x69\x88\x1b\x6e\xa8\xef\xaa\x55\x33\x3c\xa2\x20\x65\x37\x01\xea\x30\xad\x35\x7d\xf9\xee\x2d\x11\xda\x34\x41\xab\xd5\xb0\x21\xe8\xdf\x9c\x16\x29\x2d\xa7\xa3\x59\xa7\x18\xb2\xd4\x9e\xe0\xcf\x41\x5f\xf1\xa3\x93\x3c\x2d\x56\x11\xb2\x2e\xaf\xa3\xef\xfe\x8a\x86\x80\x24\xf0\xe8\x29\x1e\x1b\x27\xb0\x0e\xe7\x24\xe1\x2c\x19\x2c\x59\x9a\xd2\x5c\xae\x5e\x92\x95\xd4\xf2\xdc\x59\x4d\xd7\xc8\x23\xd6\xbc\x03\x5d\x31\x66\x60\xf9\x92\x34\xbd\x94\xf7\x57\x4b\xf9\x22\x0a\x0c\xa3\x04\xe1\xc2\xd2\x38\xf5\x32\x8f\xac\x5f\x67\x6c\xcd\x0d\xe5\x69\xde\x6e\xc7\x7e\xc2\x84\x87\x21\x04\x59\xa1\x79\xaa\x6d\x30\x51\x1c\x31\x22\xd0\x37\x3b\x06\x67\x68\xb2\x6f\xf4\xc2\xb8\x0e\x87\x11\xc5\x7c\x92\xbb\x1b\x15\xe7\x43\x41\xbf\x0a\x5d\x9c\x88\x6a\x8e\xe5\x52\x5e\xfd\xda\xc4\x84\x8e\x73\xe6\x1e\xc8\x30\xec\xb9\x9f\x2c\xbf\x46\xce\x82\x76\x6a\xa5\xad\xd9\xf4\x67\xbd\xff\x60\x26\xe9\xed\x80\x93\xa1\xad\x64\x6f\x58\xc9\xae\x58\xc6\xc4\x1d\x09\xe0\x77\x46\x83\x66\x2b\xdf\x72\x3a\x5c\xae\xcd\x89\x61\x77\x1a\xba\x1e\x32\xb5\x35\xa9\x18\x5e\x7b\xad\x01\x4c\x0f\xd0\x76\x9b\x0f\xe1\xa7\xb6\x04\x73\x67\x5a\xb1\xd2\x86\xfa\x62\xc9\xf5\x1a\x9a\x47\x00\x33\x9c\x0f\xe5\x93\x81\x3a\x75\x16\x20\x0c\x35\xa5\xe5\x9c\xb3\x2b\x9a\x5e\xdd\x05\x58\x5e\x11\x73\x94\x55\x8b\x0b\x96\xa7\xd6\xbb\x71\x64\x9d\x19\x53\xee\x44\x19\xd6\x67\x00\x4e\x52\x54\x58\x06\x58\x0d\x52\x28\x50\x38\xf4\x12\xb1\x63\x1a\x90\x3b\x5c\xf1\xd6\x16\x1c\xce\x10\xb4\xf5\x60\x11\x7c\xaf\x74\x14\x1f\x2f\x69\x82\xdb\xed\xc9\xd6\x0c\xf4\x7b\xa3\x58\x95\x0f\xbd\x77\x6c\x87\xcc\x03\xf7\x1f\xef\x49\x6b\xcf\xdf\xeb\x06\x73\x9d\xa0\x82\x1c\xfe\x07\x5b\xfd\xb6\x52\xb6\x47\xd3\xf7\x0e\xed\x10\xce\x9b\xfc\x66\x63\x08\xbf\xb7\xbd\x9a\x54\x9b\xdc\x37\xb5\x1f\x5a\x9a\xdd\xb5\xde\x14\x08\xd7\x25\x4f\x75\xd1\xb6\xbe\xa8\x79\x25\x75\x2c\xd2\x0a\xaa\x28\x61\xfe\x3e\x6e\x90\x0b\x28\x26\x51\xfb\xab\xf7\x30\x74\x30\xf7\xfd\x5f\x03\x0e\x82\x6f\x0c\x6c\x40\xb1\x3f\xe0\x94\x95\xeb\xa2\x6c\x1b\x73\x15\x6c\xd2\xbf\x7e\x8a\xa3\xd7\xce\xb1\x35\x12\x72\x99\x06\x42\x72\x28\xdc\x71\x54\xec\x5a\xed\x8f\x73\x65\x26\x84\xdd\x0e\xc0\xac\xb8\x3e\x4b\x7b\x1a\xe4\x3a\x47\xed\xd0\x4e\xb3\x06\xf7\xe4\xee\x71\x1d\x60\xc3\x48\xba\x4b\xfa\x90\x07\x01\x0f\xbc\xb7\x1c\x0c\x88\x33\x81\x6a\xa7\xc3\x83\x71\x6d\xaf\xaa\x55\x0d\xa8\xa3\x62\x74\x42\x1b\x68\x8a\x8f\x00\x50\x14\x2b\x25\x09\xc0\xfb\x84\x67\xa4\x4f\x9d\xa7\x1d\x80\x67\x7b\xdf\xc2\x7b\xa4\x29\x72\x1e\xcb\x3a\xce\xd5\x8e\x12\x58\x52\x0d\x70\x54\xb9\x83\x05\x91\xe8\x5d\x3b\x07\xdb\x04\xc3\xd0\x16\x73\x0a\x4b\x8c\xb5\x27\x81\x60\x55\x6c\x4a\x4a\x73\x41\x39\x78\x83\x75\x12\x33\x9a\xdc\x48\x44\xc8\x31\xad\x53\x98\xa5\xad\xab\x3e\xab\x6a\x57\xd9\x86\xfb\x15\x14\x6a\x6a\x2b\xa8\xcf\xaa\x82\xfe\xde\x81\x75\xd9\xfe\xa3\xee\xd0\x01\x02\xdd\xf7\x46\x3d\x42\x72\x07\x4f\x00\x5f\x42\x9b\x92\xa6\x2f\xee\x0c\x85\xdd\x1b\x41\x9c\x55\x2d\x3e\xba\x58\x16\xb7\x12\x01\x1b\x02\xc5\x85\x39\xd8\xc7\x77\x72\x7b\xc7\x60\x30\xf7\xf0\x11\x0b\xe0\x9d\xc6\x6c\x07\xb2\xc4\xba\xb7\x06\x81\x19\xdc\xa0\xe2\x5f\x1a\x6c\x6d\x74\x12\x4d\xb3\x63\x7b\x23\x6f\x98\x3f\xb6\x7f\x7f\x68\x58\xaf\xa8\x8a\x7a\xc1\x87\xf3\xac\x28\xe9\x59\xfe\x52\x26\x9e\x6d\x44\xc9\xe4\xd5\xb6\x07\xbb\xe9\x25\x03\xf6\x3d\x2d\x6e\xf3\x00\x7b\xf3\x62\x8b\xc8\x5d\x70\x03\x80\xf2\xfa\xad\x57\x9f\x1d\x5a\xa9\xda\x8b\xa1\x80\x18\x76\x68\xbb\xe5\xad\xa9\x2c\x12\x72\xff\x71\x6f\x04\x66\x86\xd5\x55\x70\xf6\xee\xf1\x5b\xd0\xa9\xa1\x8e\x44\xbb\x30\x65\x4a\xe2\x26\x91\xd0\xed\x56\xd8\x98\xd7\x80\x95\xea\x48\x3b\xe6\xbe\xef\x8b\xbd\xa3\x3d\xcf\xa8\x3a\xe0\x55\x76\x87\xe4\x29\x68\x8c\xf4\x4d\xdb\x9b\x54\x23\x81\xda\xc7\x3a\x36\x38\x9f\x1c\xab\x04\xb9\x7a\xac\x7a\x64\xf3\x8c\x26\xdc\x8c\xad\x31\x7e\x84\x1f\x9e\x00\x68\x75\xf5\x08\x61\x15\xa2\xed\x7b\xdb\xa9\xc2\x59\xf8\xd0\x16\xaa\xba\xa0\x80\xc8\x6b\x27\x01\x25\x62\x0b\x59\x58\x76\x58\x95\x87\xa3\x14\xe5\x3a\x2a\xae\xc6\x68\x3b\x4c\xbf\x21\xb0\x6e\x12\xb7\x72\x16\x4e\xe1\xcb\x0f\x53\x40\x30\x08\x2b\x3b\x6e\x3e\x09\x5a\x1d\xb2\xf9\xa8\x7c\x3b\xd9\xa6\x31\x6d\xb5\xc8\x0e\xcd\x53\x73\x76\x25\x51\xee\x1a\x85\xbf\x0f\xb7\xf7\xea\x41\xaa\x79\xba\xea\x74\x55\xcd\x33\x09\x6d\xeb\xb2\xe6\x8c\x07\xda\x23\xf4\x41\x0a\x44\x59\xc1\xf8\xcb\xe6\xd5\x37\x0f\x7c\xad\x51\x67\x73\x1a\xeb\xb1\xef\x12\xca\xc7\x90\xd7\xa9\xd2\x2a\x61\x22\x54\xac\xa2\xea\x5d\xe7\x28\x16\x13\xea\x50\x8f\x41\x10\x53\x8f\x7c\x0c\x02\x90\xe1\xb1\x5d\x84\x70\x41\xda\x71\x25\x25\xfb\x5c\x16\xb7\x2d\x5a\x01\xd4\x5c\x56\x4f\xfd\x57\xcf\xd5\x28\x05\x80\x4e\x63\x6b\x5d\x85\xf4\xec\xac\x83\x24\x89\xb8\xb5\x97\xd4\x99\xb6\xb0\x28\xae\xaf\xb3\x3d\x65\x35\x3a\xaa\x94\x29\x23\x14\x53\x18\x7d\xe4\xeb\x28\xb8\x0b\xee\xbd\x23\x55\x3b\xcd\x82\x10\x6f\xbf\x1d\xa7\x6b\xb9\xa2\xc4\xe7\xb2\x3a\xca\x1b\x43\x4e\x25\x81\x99\xda\x45\x53\x0a\xa8\xd6\x20\xd5\x16\x50\x61\x49\xad\x63\x68\xea\xdf\x3c\x0b\x4f\x0a\xa5\x43\xee\x65\x36\x9f\x2d\x80\x28\xd5\x73\xd3\xcd\x23\xed\xfb\x3c\x21\x45\xcb\x88\x0a\x77\x44\x45\x6d\x44\xb5\xce\xda\x70\x60\xdd\x5f\x8e\xb0\xf3\x1e\x25\x68\xbb\xa5\xb5\x37\x99\x63\xa6\xdf\x64\x26\xa1\x16\x52\x4f\x94\xd5\xef\x62\xff\x85\x42\x5f\x3d\x87\xff\x90\xd4\x57\xc2\xee\xfd\xb2\x8f\x7a\x8e\x92\x78\xa0\x9a\xe0\x83\x46\xda\x49\x35\xf8\x0c\x6f\x08\x3b\xd4\xc8\xc2\xd0\x8c\x70\x95\x5a\x87\xdf\x90\x12\x4d\x67\x98\xa2\x43\x80\x34\xdb\xad\x7a\xa5\xd0\xf0\x65\x91\xd2\x77\x8c\xf3\x82\x13\x15\xa3\xf8\x91\x20\x85\x2d\x9e\x7c\xb0\x70\x52\xd7\x59\x22\x16\x05\x5f\x61\x4e\x0e\xae\xe9\xfc\x4b\xf1\xe9\xe0\x53\x6a\xdc\x00\x81\xf7\x16\x15\xc2\xec\x53\x7a\x60\xd3\x18\x39\xd0\x31\x08\x3f\x1d\x44\x93\x78\xfa\xbf\x06\xff\x7b\xb6\xfd\x94\xde\x3f\xc5\x3b\xf4\x69\x38\x7c\xc2\x6f\x54\x2c\xed\x83\x21\xfd\x4a\xe7\xb2\x46\x41\xf2\xed\x96\xe1\x84\x14\x61\x18\xe5\x93\xd6\x88\x69\xdb\xed\x5f\x63\x06\x46\xe2\x25\x39\x50\xe1\xd7\x3f\x1d\x54\x9d\x6e\x48\x19\x86\x07\x3f\x0a\x39\xbe\xfe\xa7\xe1\xa7\xb4\x5f\xe5\x65\xe4\xe0\xe5\x92\x17\x2b\xea\x56\x98\x93\x83\xb3\x35\xe5\x89\x9b\xb6\x20\x07\x47\xeb\x75\x46\xbb\xda\x75\x2e\x6f\xc4\x65\xbb\xa1\x79\x5a\x70\x84\x53\x72\xf0\x2e\x99\x77\xcf\x2e\xba\x3f\x77\xc7\x9f\xd2\x4f\xaf\xa2\xe9\xdf\xd4\x34\x3f\xa5\xe8\xd3\xab\xaa\xc9\x25\x39\x78\xbf\x4c\x72\x51\xac\xfe\x7e\x51\xa5\xae\x75\x47\x6a\x1e\x36\x3d\x0c\x0f\xde\x15\x57\x2c\xa3\x9f\x0e\x3e\xdd\x3a\x13\x58\x91\xf5\x76\x7b\x70\x94\xa7\xbc\x60\xe9\xf6\x96\x5e\x9d\x5d\x6c\x5f\x64\xc9\xfc\xcb\x0b\xca\xf9\xdd\x16\xe6\xd1\x7d\xc7\x72\x66\x7e\x16\x57\x6c\x7b\x72\xac\xda\x72\x76\xeb\x06\xda\x79\x97\xcc\x75\xd3\x02\xe1\x3b\x72\xf0\xe9\xea\x25\x3f\xbb\xf8\x74\x55\xf5\x77\x45\x0e\x6e\x59\x6e\x2a\x0a\x84\xaf\xc9\x5c\x3e\x34\xda\x07\xc9\x4f\x4a\x1b\xe1\xd3\x41\x04\x2e\x48\x3e\xa5\x4f\xd0\x01\xea\x48\x4a\xe1\x9a\x9c\x82\x6f\xf0\xe8\x5a\xee\x14\xc2\xd7\x61\x78\xfd\x9c\x8c\xff\x02\xae\xd4\x7b\x63\x5c\x92\x9e\x8e\x0c\xf6\x99\xdc\x84\x61\xb4\xd9\x6e\xe7\x72\xcb\x37\x59\x46\xc8\xf5\x76\x7b\xfd\x6c\xfc\x74\x38\x1e\x23\x84\x6f\x09\xdf\x6e\x8b\x30\x4c\x9e\x93\xff\x8d\x8f\x65\xdd\x0b\x89\xca\x59\x38\x70\xe6\x08\x26\x40\xc2\xed\xc8\x26\xce\xac\xd9\x41\x4e\x6f\x75\xc9\x8e\x2f\x2d\x20\x62\x72\x5c\x44\x2a\x7a\xc8\x71\x11\xfd\xcc\xb1\xc0\xbd\x31\xc2\xa7\x91\x30\x4e\x56\xc5\x10\x9e\xe4\x4e\x83\x8c\x55\xee\x00\x64\xd3\x77\x2c\xe2\x58\x0c\x57\x45\xaa\x62\x32\x62\x31\xcc\x58\x4e\x2f\x94\xdf\x9d\x82\x1b\x6e\x40\x5a\xcc\x09\xd7\x76\xb9\x30\xa4\x21\xcb\xd7\x1b\xa1\x74\x20\xa7\xc2\xf9\x9a\x69\x59\x88\x42\x66\xe1\x7d\xcc\x92\x3b\xa8\xf4\x55\x71\xb9\x51\x87\x0d\x6f\x79\x02\xc2\x4f\xe7\xb6\x03\xb5\x7a\xae\x6b\xbf\x37\x12\x15\x18\xce\x47\x59\x5a\x53\x72\x4e\xa3\xb6\x15\x10\xd2\x9c\x26\x2b\xda\x27\x41\xb7\x6a\x72\x20\xf3\x03\xd9\x48\xb2\x11\x05\x50\xa3\x61\xd8\x5b\x85\x21\x53\xe3\x1d\x42\x52\x84\xf0\x07\xd3\x9b\xa3\xc7\xf7\x85\xde\xbd\x4b\xd6\x65\x2c\xa9\x67\x15\x83\x11\x7e\xcb\x95\xfa\x9e\xe6\xf1\x08\x52\x6f\x39\x13\xd4\xca\xea\x58\x7e\xfd\x22\xdb\x70\x78\x50\xc0\x32\x47\x36\xaf\x35\xff\x36\xeb\x35\xa7\x65\x79\x9c\x32\x01\xd6\x3e\xeb\xa4\x14\xf4\x24\x9f\x17\x2b\x96\x5f\xcb\x84\xf9\x46\xb8\x9f\x25\xe0\x9f\x2c\xbf\xbe\xa4\x5f\xa1\xb1\x94\x27\xd7\xd7\xce\xf7\x92\x5d\x2f\x33\xe5\x91\x99\xde\x76\xe7\x05\xfe\x42\xef\x2e\xe8\x3f\x95\x3b\xee\x72\x4d\xe7\x2c\xc9\x5e\x2e\x13\x5e\x42\xca\x4e\x3b\x65\x00\xdc\xc8\x08\x2e\x33\x70\x06\x16\x86\xc9\xb3\xf1\x38\x0c\xf7\xd0\x07\x1b\xbb\xda\x6a\xcd\x38\x2d\xa9\x88\x80\x1c\xc3\x4f\x47\xfe\xa3\x62\x2c\x64\x74\x8d\xce\xf7\x2c\x32\x2e\xe9\x28\xc7\x2e\xf9\xf8\x83\x88\x28\xce\xe4\xf1\xaa\x95\x49\xaf\x32\x2d\xaf\xd2\x03\x9b\x40\xd1\x3a\xb9\xd9\x13\x05\x5c\x0a\x43\x6a\x6e\xb8\xba\x23\x6c\x11\xf1\x30\xec\x2d\xd4\x67\x18\xf6\x4a\x1e\xd9\xf1\x40\xf9\x17\xcc\x5c\x90\x9c\x28\x5f\xcb\x1f\x0b\x9e\x1e\x89\x88\xa3\xce\x0b\x1a\x41\x60\x2f\x9c\x0f\x93\x7c\xbe\x2c\x38\xce\x87\x4b\x9a\xa4\x68\xb7\xdb\x21\x14\xbb\x63\xd0\xfd\x6f\xb7\xd0\xde\x0e\x75\x6e\xb7\xdb\xda\x54\xe6\x2a\x80\xe6\x8a\xe6\x9b\x1a\xbd\xfc\x9b\x1a\x9e\x71\xe1\xcc\x71\x4e\xee\x69\x9e\xc6\x23\x27\xf8\x12\x8b\x80\x13\x34\x17\xec\x86\x5e\x16\x9b\xf9\x12\xee\xec\x9e\x4d\xf2\x0a\x02\xd3\x6b\x87\xf0\x98\x7e\x87\x70\x94\x13\x2f\x13\x0d\x69\x9e\x92\xbe\x3c\x33\xaf\x40\xeb\xd0\x76\x58\x5a\x78\xa4\x80\x99\x32\x36\xaa\x87\xfc\xd0\x9e\xf7\x95\x8f\x52\xe0\x2d\x82\x5b\x37\xf9\xbf\xf5\x46\xf0\x84\xf7\xf3\x27\xf9\xf3\x3f\x8f\x46\xbb\xda\x92\x08\x39\x04\xed\xbe\xad\x1a\x3f\x73\xb6\x94\xc9\x4d\xab\x21\x2a\xe3\x1e\x91\x1d\x6c\xe6\x4b\x6a\x84\xf2\x55\xbc\x12\x73\xe6\x74\xfe\x74\x34\xab\x34\xa0\x79\x92\xb2\x4d\xf9\xf3\x33\x32\x96\x94\xb3\xfa\xfa\xe5\x19\x19\xef\x22\x86\xd0\xbd\x47\x37\x73\x23\x45\xb4\x4b\xd3\xf1\x17\x55\x7b\xde\x29\x30\x98\xf2\xc0\x15\xe6\xf4\x26\x2e\x06\xb9\x5c\xd1\x67\xe4\xbb\xd1\x68\x92\xab\xbb\x86\xc7\x04\x9c\xa6\xb8\x03\x06\x26\x94\xd3\x9e\x72\x67\xc2\x9c\x61\x0f\xd7\xc9\x35\xfd\x19\xfb\xa5\x44\xb1\x6e\x16\xfa\x45\x71\xc4\xda\xd6\x56\x0e\x2e\xc0\x7b\x8f\x46\x63\x14\x30\x19\xa2\x98\x2b\xad\x0d\x02\x97\xb2\xc5\x8b\xa3\xd7\x0c\x38\x44\x52\x97\x4d\xd2\x7c\x61\xa8\xa2\x87\x2a\xdb\x98\x30\xec\xe5\xaa\x9f\x30\x34\x6b\x3b\xc8\x87\xb0\x9c\xcf\xbe\x1b\x8d\x34\x7d\x01\xbe\x0f\xe6\x45\xc1\xd3\x52\x82\x2d\x7f\x9c\x38\x90\xf3\x0e\x50\xa7\x20\xbd\x1c\x64\x0d\xdb\x6d\x19\xe5\x58\xfd\x46\x13\xd9\xee\x4b\x1a\x25\x38\x41\xb1\x2e\xd0\x28\xa5\x8b\x7a\x77\x3e\x41\xb1\xae\xba\xa4\x51\x02\x6f\x0d\x1e\x21\xfc\xd6\xc0\x01\x9b\xda\x1f\xe3\x11\x02\xfb\x81\x92\x0a\xc5\x1b\x90\xcb\x51\x18\x38\x51\x28\x38\x81\xa9\x7d\x53\x5e\xb0\x88\xa3\x1d\x8b\xf6\xae\xac\xf2\x56\x1a\x60\xd6\xc8\x36\x6e\x40\xfd\x6d\x34\xf9\x9e\x3d\x4e\x18\x46\x2b\x00\x26\x55\xb6\x8d\xc7\x89\xf0\x4d\x6b\x16\x84\x46\xe9\x8d\x10\xfe\x3b\x84\xf7\x31\xbd\x69\xff\x2c\x6d\x30\xfb\x76\x49\x69\x56\x83\x61\x9f\x2d\x0c\xab\x57\x79\x75\xf6\xee\x9d\xac\x75\xd1\x98\x46\x4b\x35\xfd\x84\xef\x9b\xb4\x79\xe1\xed\xa4\x48\x3d\x4d\x05\xc5\x52\x3e\x52\xe5\x1b\x69\x24\xd8\xa5\x04\xa9\x82\xf2\x76\xa8\xfd\x4f\x80\xda\xf0\x86\xb7\x17\x88\xda\xcc\xde\x9c\x57\xa6\xc7\x0d\x0b\x4b\xdd\x87\x9a\xd6\x82\x71\xf0\xfb\x9a\x27\xd7\xa0\xbe\x80\x3a\x5c\x0b\xf9\xe5\x21\x31\x4f\xaa\x1c\xf0\xcb\x0d\x2f\x0b\xbe\xdd\x46\x6d\xc9\xe4\xb7\x42\x69\x3e\x28\xec\x2c\x70\x90\x9b\x39\x14\x28\x5d\x7c\x47\xd6\xd3\xc9\x81\xdb\x0d\xa0\x74\xeb\x64\x0e\xb6\x37\x94\x8b\x17\xe0\xdb\xb3\xb5\x43\xa7\x96\x6a\xe9\x15\xbb\x41\xa8\xf3\xb2\x68\x2f\xad\xc2\x08\x08\x84\x61\x41\xd1\x0e\x2b\x28\xe9\x2e\x69\x53\x11\x47\xd2\x48\x3d\xaa\x35\xd3\x5d\xbc\x66\xbb\xb5\xd0\x77\x90\xf2\x67\xe3\xd1\xc8\xe2\xc1\xc0\xac\x82\x4e\x40\xd4\x6f\xb6\xa9\xfe\xbc\x1b\xb6\xe2\x22\x12\xc3\x34\x11\xc9\x25\x98\x7c\xc9\xc3\x42\xc5\xab\x44\x24\x51\x20\xfb\x09\x30\xf0\xe6\xaa\x7b\xac\x4e\x8f\x5b\x9e\x2e\x16\x74\x2e\x8e\xb2\xac\xb8\xa5\x29\x09\xe6\xc5\xfa\xee\x1d\xc0\xd6\x96\x76\x79\x72\x7d\xb2\x4a\xae\xa9\x7c\xb9\xcc\x51\x91\xfb\xc6\x56\xd7\x7a\xdf\xd4\xe6\x59\x6b\x9b\x2e\x58\xd7\x1c\x76\xc1\xc4\xb0\x3b\x3a\xec\x8a\x62\x2d\xff\x06\xa8\xc3\x87\x25\x9f\x93\x40\xf6\x11\x33\xd9\xe8\xc1\x35\x5b\x1c\x5e\x25\x25\xfd\xeb\x9f\xf1\xf9\x28\xfb\xfe\xec\x55\xb6\x3c\xfa\xf1\xe8\xc5\x91\xfc\xf7\xf2\xcd\x5f\x5e\x1c\x1d\xff\x70\x74\x74\x7c\xf4\x16\x12\x64\xfa\xf1\xd1\xd1\xd1\xc9\xcb\xcb\xa3\xe3\xa3\xb3\x5b\x42\x02\x2c\xe9\x13\xae\x4c\xeb\x08\xd7\x46\x7b\x64\xec\x6c\xb4\xb9\x50\xae\xd8\x89\x23\xcc\x87\x9f\xe5\xf3\xc3\xb5\x68\x18\x20\xca\x03\xb3\x8f\x38\x1e\x49\xe0\x39\x0f\xc3\xbd\x5e\xbf\x81\xc9\xab\x00\x00\x4e\x79\xb1\x8e\x01\xb9\x5b\x72\x84\x81\x85\xdc\x7e\x15\xd7\x1c\x84\x60\x06\x83\xd5\x78\xe8\x35\x15\xaf\x19\xcd\xd2\x08\x49\x34\x73\x83\x83\x2f\xf4\x6e\xb3\xae\x41\x9b\x4b\xae\xd5\x52\x2a\x90\xa3\x4a\x3a\x58\xe8\x11\x77\x33\x00\x4b\xd7\x39\x5f\xaa\x1c\xad\xdb\x76\x51\x44\xef\xb8\x84\x94\x3a\x19\x24\x5a\x32\xf5\x3d\xa4\xee\x34\x1d\xe1\xb3\xd7\x5f\x18\x17\x96\x72\xa0\x8a\xcd\x81\xad\xf7\x68\x17\xdc\x29\xbc\x4b\x49\x0e\xf7\x20\x7a\x4a\xa2\x89\x3f\x14\x51\x02\x82\x06\xb8\x22\x7a\x66\xa6\x69\x35\x28\xb7\xd6\x07\x39\x40\x28\xf6\xa2\x30\xa2\x0f\xba\x93\x8f\x94\x70\x29\x9f\xf9\x86\x9f\xad\x87\x8b\x82\xcf\x8d\x45\x55\x6f\x84\x6f\x99\xd2\x75\xe3\x0d\x3a\x6a\xbb\xdd\x0c\x97\x49\xf9\x5a\x3d\x78\x13\x67\xc4\x6a\x99\x54\xcb\x4f\x47\x28\x7e\xcf\x75\x37\xbf\x72\xf4\x2b\xaf\xeb\xaa\x66\x28\x0c\x7f\xe5\xd3\x4c\x51\x8e\x58\x4c\xb3\x19\x16\x39\xea\x7c\xb4\x34\xe0\x82\xe5\xac\x5c\x9e\xe4\x0c\x24\x20\xd5\x97\x2a\x60\xe9\x99\x94\x8c\x0e\xd3\x67\x49\x6e\x14\x37\xfb\xfd\x14\x25\xf9\x34\xd5\x24\x69\xe7\x8d\x99\x6d\x29\x9b\xf1\x09\xcb\x40\x12\xd6\x2b\xf6\x3b\xcd\xe8\xb5\x16\xf3\x07\x84\x34\x62\x10\x31\xa8\x26\x61\x22\x70\xa4\xcf\x69\x9e\x52\xae\x28\x53\x9b\x65\xbc\xfb\xbb\xf9\x44\xc7\xd9\xaa\x45\xcb\x6c\x93\xfc\xc0\xf1\x26\x39\x66\xfa\x81\xbb\x4a\xf8\x6b\x26\x5f\xd6\x07\xde\x02\x5b\x72\xb0\x80\xa2\x01\x6a\x56\xaf\xa9\x26\xcc\x57\x83\xbc\x10\x83\xb9\xe1\xde\x1b\xed\x04\x36\xbc\xde\x08\x41\x1f\xef\x53\x15\x73\x3b\x74\x2b\x7e\x73\x6f\x7a\xd1\x1e\x7a\xe8\x8a\x54\x15\x2d\x0d\xbc\x6e\x96\xaf\x03\x58\xe0\xfb\xb2\x1b\x7a\xd8\xfd\x7d\x00\x7a\x8e\x71\x77\x0c\x6d\xd8\x47\xed\xf1\x97\x15\xca\xaf\x68\x52\x6e\x38\x7d\xa0\xb4\x2e\x61\x27\xf3\xee\x5f\xae\x01\x4f\x73\x55\x7e\x6a\x7b\xf5\x5b\xac\xad\x80\x3b\x99\x6a\x1d\x67\x0f\x2c\x45\xb1\x11\xb2\x54\xdc\x85\xc8\x89\x30\x3b\x89\x00\x39\x3d\xbb\x63\xb0\x23\x9b\x79\x83\x97\xc9\x65\x80\xf6\xf7\xa3\xb6\x8a\xfd\xee\x35\xac\xbb\xf2\x9b\x82\x42\x55\x71\xb0\x06\x57\xf0\x8d\xe9\x67\xea\xb5\x84\x45\xf5\x43\x58\xef\xd8\x98\xa8\x1e\x76\x75\x88\xaa\x6e\xd0\x2f\x8a\x7e\xb0\xfe\x7a\xd8\x55\x9e\x0f\xbb\xe3\xf5\xd7\x43\xe7\x88\x96\x8f\x1e\xeb\xd2\x6e\xce\xf7\xf0\x6d\x86\x65\xb0\x5c\x6f\x6a\x30\xfa\xda\x98\xab\xbe\x66\x2d\x37\xd5\xb9\x9f\x8d\xab\x22\x92\x2b\x88\xfe\x14\xe0\x60\xa0\xce\xac\x7e\x9f\xfd\x3e\xfd\xcb\x5d\xbb\x7d\x4e\xeb\x5e\xf7\x01\x52\x6c\x95\xbf\x01\xbc\xd2\x03\xd4\xf0\xea\x77\xe8\x95\x0c\xc6\xde\xd0\x54\x18\x13\x65\x5b\x0c\x11\xd1\xc8\x08\xe1\x72\xbb\xe5\xe0\x90\x28\x72\x8a\x02\x22\x67\x95\xfa\xe1\x15\x73\x31\x8a\x89\xf7\x15\xd9\x59\xa1\x98\x3a\x1f\x72\xba\x37\x8c\xde\xbe\xe6\xc5\x8a\xa8\x9f\x97\x05\x91\x30\x9f\x97\x02\xb3\x21\xa7\xca\x2b\xc6\x4f\x55\x19\x37\xc9\x2b\x2b\x2b\x93\xe9\x0c\x6a\x49\x30\xac\x8a\x98\x9d\xa4\x5f\x05\xe5\x79\x92\xe9\xcb\x95\x9a\x74\x59\x4b\xb9\x1f\x27\x23\x79\x04\x92\x52\xc8\x57\x42\x91\x5b\xa4\x4a\x50\xa7\x75\xd4\x61\x5a\x34\xf7\x96\xe5\x54\xb1\x8e\x4b\xd3\x54\x0e\xf7\xe1\x45\xa2\x4f\x36\x1b\x5e\x25\xdc\xb6\x73\x65\x92\x47\x2e\xa8\x2e\x5f\x1a\x8f\x4a\x63\x7d\xfe\x4e\x37\x2b\x53\x5d\x7f\x9e\x58\x8f\xcf\x55\x1a\x70\xfa\x4c\xbf\x49\xc6\xae\xf3\x8f\x2c\xbd\xa6\xa2\x54\x0d\xcd\x93\xf9\x92\xa6\xb2\x90\xa9\xa7\x52\x24\x32\x6c\x47\xa4\x92\xde\xab\xbd\x7e\x63\x1a\x5b\x25\x5f\xe5\xd4\x6a\x9f\x6f\x95\x53\xb2\x51\x95\xa2\x3c\x21\xe8\x81\x03\xc1\xf8\xea\x67\x62\x7e\xfd\x62\x7e\x5d\x48\xf2\xe0\x67\xef\xeb\x17\x7b\xb7\x96\x6c\x21\x54\xfd\x92\x66\xaf\x0b\xfe\x52\x31\xd0\xde\xd1\x7c\x63\xa7\x56\x63\x73\xe1\x7c\xc8\x24\x22\xc0\x50\x2d\x84\x30\xd0\xef\xc0\xd7\x26\x67\x12\x57\x7c\x57\xa4\x92\xe0\xb1\x66\xb7\x36\x5b\x69\x15\x22\x7c\xe9\x45\xb5\xb8\xac\xda\x60\x0d\xed\x7a\x4d\xba\x1c\x2d\x04\xe5\x70\xcc\xab\x4f\xa5\x70\x66\x1d\x1e\xe8\x5c\xf0\xd3\x00\x39\xca\x07\x81\x6c\x76\xc1\x8b\x5c\x30\xca\x89\xfe\x84\x43\x5b\x48\xb4\x53\xe2\x74\xd8\x90\x47\x9a\xdf\xdc\xef\x63\xaa\xf0\xb3\x30\xa4\xdc\x1b\xea\x97\x8a\xf3\xfa\x4a\x54\xd4\x10\x52\x71\x90\xb5\x00\xdf\x45\x76\x70\x4e\x78\x18\x5a\x0f\x85\x7f\x71\x28\x81\x1a\x8f\x01\x0e\xcb\xc1\xa9\xdb\xea\xe0\xbb\x46\xf4\x1b\xcd\xbf\x7b\x93\x6b\xa6\x09\xb3\x44\xdb\x48\xf3\xd4\xc0\xd9\x08\xb8\x76\x91\x47\x12\x19\x7c\x2d\x21\xa3\xc3\xe4\x99\x4d\x37\x68\x5b\xd2\xef\x23\x9b\x38\x4d\x66\x1a\xae\x86\x61\x54\xf4\x49\x4b\x86\x1d\x10\x9f\x14\x7d\xe5\x70\x71\x4e\x59\x16\x31\x40\xc1\x74\xab\x07\x39\xda\x6e\xc7\xe8\x89\x88\x8b\xbe\xd8\x79\xc1\x7e\x1d\xbe\x75\x31\xc7\x9c\xc8\x05\xed\x88\x96\x7d\x57\xc5\x38\x64\xf7\x6c\x10\xcf\x30\xfc\xca\x0c\x81\x51\x8b\xed\xda\x24\xb1\xac\xa4\x82\x3c\x90\x57\xc5\x79\xfc\x54\x3e\x99\xaf\x06\xe5\xe0\xd3\x45\xff\xe0\x1a\x07\x01\xea\x57\x5b\x2a\x96\xd4\x2d\x1a\xfd\x9f\xed\xa7\x12\x7d\x2a\x9f\xc8\x82\x5d\xa8\x15\x20\x7c\x26\xbc\xb3\xf2\x9b\x1c\xd5\x79\x44\x11\x86\x43\x84\xf7\x50\x19\xff\x04\x9b\x10\x89\xba\x7b\xc1\x42\x1b\x0c\x7e\xf3\x82\x78\x47\x4d\xa7\x75\xce\x0b\x49\xac\x5b\x23\x29\x88\xfc\xc5\x2b\xd4\xdc\x62\xbe\x5c\x45\xfe\xf2\xb5\x1e\x1f\x7b\x9f\xbb\x41\x9f\x21\xd4\xa9\x23\x26\x2a\xae\x6f\x19\x10\xc2\xe0\xea\xb9\x0c\x10\xfd\x90\x17\x60\x70\xaf\x82\x62\x49\x50\x58\x2b\x65\xc0\xad\x3c\x2c\x7d\x88\x2c\xb3\x13\xba\xbc\x15\x65\x4d\x82\x20\x56\xd1\xa7\xf1\x4b\x6f\x79\x5f\x3e\xb0\x46\x6e\xd8\xd0\x8e\x73\xe3\x24\xee\xa0\x3b\x70\xc2\xaa\x0b\xe8\xbb\x16\x43\x54\xc5\x3f\x30\xe7\xae\xba\x64\xd6\x7e\x0d\xf6\xc1\x39\xf4\x38\x27\xf4\x50\x90\xd3\x3c\xca\xd1\x21\xba\xcf\x49\xc4\xe0\x7d\xcc\xd3\x68\x84\x7b\x23\x84\x24\x14\x5a\x29\xb6\x27\x97\x77\x0b\x3e\xe7\xcb\x01\x1b\x8a\x62\x38\x5f\xee\x64\xcb\xaa\x8d\xb7\xba\x0d\x63\xb6\x50\x35\xd2\xe1\x03\x92\xbb\xbd\x0e\x6c\x3b\xb2\xd1\x28\x07\x06\x36\x74\x82\x6a\xc5\x54\x27\xe6\xf6\x7a\x11\x4a\x1b\xeb\x88\x35\xa4\xec\x08\xfb\x24\x1d\xb3\x88\x63\xae\x40\xa7\x24\x13\xfd\xb7\xe9\x24\xb2\x29\x4e\xa6\x7d\xa6\x46\x98\xef\xb9\xe2\x9c\x9c\x40\x8c\xaf\xe7\xb5\x16\x81\x79\xee\xf7\xc1\xab\x86\x09\xf5\x01\xc0\x69\x35\x87\xab\x22\xa2\xf6\xaa\xec\x3b\xb2\xe8\x70\x30\x06\xb5\x4c\x6a\xce\xa1\x4c\x9e\xd8\x8a\xc4\xfe\xb2\x31\x4a\xf6\x35\x35\x43\xb1\x78\x3e\x18\x87\x61\xcf\x6b\x0b\x6e\x44\xb3\x35\x1d\xfc\x44\x3e\x39\x36\x69\x0d\x69\x02\x8f\xdd\x19\xbd\x6d\xdf\x15\xd1\x76\xc2\x71\xee\xb8\xff\x52\xef\x82\x71\x17\x95\xb9\xcf\x89\x0d\xae\xeb\x32\xb5\xe3\x3d\xcc\x6e\x2c\x71\x33\x5b\xa4\x02\x9b\x4e\x09\x55\xef\xa3\x0e\x12\x5d\x63\x7c\xab\x91\x39\x4f\x5b\xb3\x23\x55\x44\xf6\x63\x0a\xf8\xdd\xa8\xfc\xab\x84\xcb\x5b\x1a\x57\x40\x0f\x18\x7a\x0a\xc2\x4c\x78\x3c\xc2\x69\x31\xd7\x03\xcd\xf5\x98\xcc\x67\x7f\x21\x41\x72\x5f\x54\xc8\x20\xf6\xf1\xc4\x58\xd4\x10\x47\xac\xd6\x57\x65\xba\x81\x85\x5f\x1b\x1d\x3b\xc5\xbd\x59\x59\x09\x3d\x7c\xdf\x50\x2e\xda\x48\x3b\x87\x86\x5a\xb1\x7c\x50\x51\x48\x92\xa8\x73\x8f\xd4\x8d\xc5\x4a\x03\x2b\xce\x5f\x16\x9c\xfd\xfe\x48\xab\x86\x0a\x1b\x8f\x46\x7f\x3c\xec\xca\x3e\x6c\x4a\xb3\x93\xa5\xd3\x49\x87\x46\x39\xc2\x34\x52\x12\x91\xbc\x5d\x26\x90\xd7\xe4\x1f\x22\xca\x2b\xe9\x00\x0e\xe4\xac\xd9\x3c\xc9\x02\xc3\x15\x63\xed\xcd\x30\x3f\xde\xb6\xb0\x94\x0c\x48\x47\x02\x98\x67\x91\x0b\xd3\x90\x5a\xe1\x25\x9d\x7f\xa1\xe9\xaf\x94\x17\x0a\x8d\xee\x8d\x2b\x72\xaa\x5a\x1e\x03\xcd\x59\xae\x51\x6b\xbb\x1d\x55\x8e\xaa\x1f\x8c\xff\x06\x2f\x8c\xdd\xd1\xdf\x23\x74\x5f\x0b\xc0\x59\x47\xce\x24\x91\xe0\xbd\x6d\x55\xb2\xd2\x04\x8e\x50\x03\xa1\x83\xcc\x24\x4d\x5f\x4a\x0c\x23\x0c\xdf\xba\xcc\x7c\x23\x80\x79\xb0\x0e\x6a\x6f\x53\xab\x82\xd8\x04\x89\x64\x67\xd3\xea\x56\xd8\x0c\xad\x19\xe2\xf1\x66\x9b\x08\x90\x27\x9c\x10\x6d\x3d\x2a\xea\x56\x89\x8e\x70\xbb\x3a\xba\x45\xcf\x87\x5a\xfd\x62\xaf\x66\x03\xad\x69\x36\x68\xc9\xdd\x0e\xe1\x91\x8e\xb9\xf7\x4d\x3c\xac\x1d\xc2\x75\xa7\x02\xce\xe9\x21\x84\x4f\x94\x18\x0e\xc5\x2b\x23\xfb\xc2\xf4\xd1\x3d\x7a\xfd\xaf\xef\x91\x1b\xf9\x54\x19\x92\x6c\xb7\x91\x20\x12\x6c\x57\x61\x97\x4d\x03\x86\xfc\x04\x5f\xb0\x4e\xa2\x3a\xb2\x9d\x37\x4a\xd0\x65\x30\x0b\x46\x46\x87\xec\xd9\x9f\xc3\x90\xf7\x5a\xda\xd8\x6e\xf3\x5e\x5b\x2b\x87\xac\xdf\x47\xad\x35\xc0\x3f\x52\x0b\x69\x12\x86\xbf\x4a\xb4\x54\xf6\x0e\xc3\xc6\xdf\x3e\x64\x2f\x7e\xa8\xeb\xa9\xd2\xbc\x54\x39\xe1\xee\xb2\x69\x5d\x68\x01\x22\x17\x07\x09\xf3\x78\x1d\x11\xaf\xe8\x74\xe3\xb9\x11\x30\x33\xdc\x5a\x49\x85\x9b\xd7\xb5\xf4\xe5\xb7\x2e\x20\x4d\x3d\x97\x4b\x64\x43\xb7\xf2\x94\x72\x5d\xdb\x54\x90\xe5\xbb\x65\x91\xb1\xb4\x0b\x8e\x0b\x95\x48\x25\xc0\x7a\x1c\x61\x68\x0a\x4e\x22\xde\xe4\xf5\x7a\x18\x6b\x70\x95\x15\xf3\x2f\x01\xde\x57\x6e\xe9\x0f\xd5\xce\xb0\xb5\xf0\xad\xbb\x1a\x0a\x45\x8e\x1f\x1d\x40\x80\x4d\xe3\xee\xd6\xcf\x8b\x1b\xca\xd5\xab\x79\x4a\xbf\x8a\xcb\xe2\xc2\xb4\xe2\x96\x72\xdf\xd6\x88\xd7\xb8\xcc\x7b\xe6\xd9\x52\x68\xcf\x24\x5b\x4a\xaa\x19\x1a\xbc\x46\x39\xa9\x34\xf3\x7c\xa8\xf7\xa0\x11\x81\xd6\x68\x4b\x70\xa3\x12\x01\x8e\x7c\xab\x70\x61\x12\x09\x15\xc5\x1a\xb4\xbd\x1b\xf2\xfb\x4e\xee\x78\x4d\x8d\xf2\xc1\x46\xd8\x9b\xcc\xdc\x16\xf5\x29\x30\x3f\xe2\xbc\x4f\xdb\x91\xa3\x82\x5c\x32\xe5\x14\x23\x51\xbf\x98\x51\x98\xe2\x43\x9a\x97\x1b\x4e\x4d\x30\x35\xf3\xed\xd0\x07\x9b\x2a\x51\x63\xf3\x9d\xf2\x59\x31\x89\x0a\x52\x9a\xe6\xbe\xb0\xe8\x58\xfe\x2d\x11\xda\x33\x04\x64\x82\x9c\xb1\x3c\xda\x60\x01\xcc\x34\x89\x3c\x47\x08\x3d\x27\x09\xb8\x0b\xf7\x5a\xda\x20\x34\xd8\xd3\x12\x4e\xc8\xc6\x28\x3a\xdf\xcb\x61\xc6\x05\x16\x45\x15\x43\x2d\xc1\x45\x7f\xec\x46\xc8\xfe\xe7\x3e\xf4\x55\x62\x7b\x4a\x62\xec\x32\xce\xb6\xdb\x0a\xb1\x05\x0a\x03\x08\xd3\x3d\xe7\xb2\xf2\x21\x92\x93\xef\x23\x81\x06\xad\x4a\x17\x7d\x85\x07\x3b\x78\x06\xdb\x83\x3d\x17\x24\x57\xe7\x53\xb1\x48\xb8\xc7\x1a\x59\x44\x3d\x0e\xdc\x0f\xb0\x2b\x95\xef\x58\xcb\x88\xc2\x10\xca\x5c\xeb\x8f\xc8\xf9\x72\x83\x4c\x17\xc6\xcb\x1c\xe4\xc3\xfc\x93\x2b\x65\x76\x5e\xf1\x69\x36\x64\x74\xb8\x79\x66\xf9\x33\x9b\x7e\x1f\x95\xd3\xcd\xcc\x6b\x67\xb7\x67\x14\x91\xa8\xb1\x99\xa1\x78\xde\x67\x9a\xb8\x76\x83\xfc\x6a\x0f\xdd\xfe\xd3\xa0\x89\x97\xa6\xc2\x97\x62\xd6\xfc\xc1\x61\xea\x69\xd6\x6f\x5f\x00\x6c\x1e\x8c\x91\xfb\x52\xc0\x49\xd7\x53\x00\xd5\x24\x87\x71\x6a\xc8\xda\xdc\x08\x5e\xda\x79\x11\x15\xb6\xcb\x51\x53\x28\xa2\xa8\xaf\x6e\x53\x42\x46\x33\x11\x20\x04\x81\xb4\xaa\x83\xe4\x6d\x77\x42\x98\xfb\x3d\x28\x3a\xd6\xac\xac\xe2\x5c\x78\xc0\x09\x00\x6a\x93\x1f\x6c\x4f\x7f\x81\xbd\xaa\x6e\xe3\x09\xea\x8f\xab\xca\xe6\x6d\x6b\xb4\xd5\x4f\x70\x5e\xe3\x2e\x37\x0b\x4d\xcc\x8a\xc6\x83\x31\xde\x3b\x58\xbf\x33\x75\xb0\x5f\xca\x77\xbe\x37\xda\x99\x6d\xf5\xe2\x11\x3b\x6e\x19\xb5\x93\x0e\x97\x90\x7d\x5d\xf0\x55\x22\x3b\x89\xe4\x8d\x82\x25\xad\x98\xef\xc8\x0f\x4d\xec\x46\xc4\x37\x17\xf2\x9a\x0a\x08\xa3\xcc\xf2\xeb\x97\x00\x51\xce\xe9\x5c\x44\xc8\x28\x36\xaa\x77\xfd\xa1\x42\x55\x0f\xbf\xf8\x60\xbe\x3a\x6c\x0a\xe5\xd7\xde\xfe\x89\x36\x15\xd3\x3e\x25\xc8\x4f\x51\xae\x98\xc0\xd6\x78\x8b\xa6\x4c\x14\xfc\xa4\x7c\x03\x57\x9a\xf4\x72\x0b\xf3\xdc\x63\x02\x45\x75\x86\xc5\x2e\x5a\x21\xbd\x5b\xd2\xec\x70\x1b\x21\xab\x54\xca\xb3\xf4\x95\x1a\xb6\x2a\x9a\x82\x06\x3d\x64\x81\x2e\x00\xe1\xc6\xd4\x69\x55\x12\xf0\xa4\xab\x07\x6d\x8c\x89\xaa\xf5\xf8\x61\x1f\xea\xa5\x58\x37\x00\x64\xfd\xb9\x1a\x2e\x16\x07\x7e\x64\x6f\x0c\xba\x55\x42\x75\x1c\x86\xc2\xac\x19\x3c\x44\xcf\x09\xb7\xc2\x21\x37\x4f\x14\xcf\x74\xce\x65\x61\x75\xf1\x79\x53\x2e\xb3\xdd\xb6\x24\x3e\xb7\x55\x91\x7c\x07\x3d\x51\x91\xce\x0a\xc3\x11\x21\x60\xdb\x5d\x41\xa1\x8f\x60\xec\x10\xa9\x61\x0b\x67\x6d\xcc\x03\x9d\x6b\x60\x94\xc3\x81\x32\xee\xd0\xe5\xdd\xf4\x27\x35\xa8\xc0\x9d\x39\x2f\xef\x80\x0f\x88\x73\xc3\xd9\x4a\xaa\x10\x6f\x0c\xbb\xd3\xee\xef\xab\x2b\x91\x5a\xb3\x52\xcf\x8a\x30\x2c\x06\xce\xf7\xd3\x11\x3c\xb4\x76\x3c\xba\x1f\x5c\x15\x91\x88\xb7\x5e\x94\xe7\x89\x5c\x15\xf5\x7b\x90\xa8\xba\xde\x78\xec\xea\x21\x7c\x01\xed\x7e\x30\x72\x80\x42\x8e\xfc\x85\xf9\x4a\x90\x89\xc3\x5b\xf4\x9c\x7d\xdc\x6e\x93\x9e\xdd\x01\xb9\x41\xbe\xc0\xad\x57\xe9\xfb\x99\x40\xa9\xdc\x17\xc1\x39\x25\xe0\xfb\x30\x6a\x37\x03\xae\xee\xe6\x88\x90\x1c\x3a\xd4\xb0\x6b\xbb\x15\xcf\x75\x0a\x0c\xe1\x99\xfe\x90\xc3\x9b\x44\xea\x37\xf9\x55\xe8\xe6\x70\x95\x49\x04\x8a\xa3\xea\xf3\xb9\x98\xf8\x85\xab\x2c\x1b\x57\x58\x25\xa1\xb8\xca\x7a\x26\xc0\x23\x1a\xd4\xd3\xc3\x52\x1c\xb9\x5c\x51\x8b\xc8\xef\x11\x9b\x81\x3e\xe3\x13\xbf\x96\xee\x01\xfa\x36\x85\x30\x47\xa6\xaf\xcb\xe2\x39\xdf\xd3\xd3\x08\x43\x5f\x1c\x21\x84\x3a\xa6\x34\xe1\xa0\xa9\x05\xee\x5d\xb8\x2b\x15\x55\xb8\x99\x7e\x7f\xdd\x23\x53\x11\x65\x20\xeb\x37\x6a\x30\xa0\x42\x56\xd5\x07\xf0\xaf\x63\x13\xc1\x9d\x82\x1b\xbf\x81\x3b\x96\x41\x9c\x43\x7d\xf7\xf7\xdd\xc5\x7f\xff\x7e\xfb\x38\xc4\x9c\xbc\x2a\x2a\x27\xb0\xd9\xf3\x3f\x83\x9a\x9c\xaf\xc3\x63\x51\x7b\xad\x31\xf1\xc8\xd1\x52\xa1\x28\x9a\xc8\x0b\x44\x56\xd1\x2d\xe3\x84\x14\x0e\x1e\x50\x29\xfc\x6f\x5c\xcf\x1d\x39\xfd\x2a\x2e\xd8\x55\xc6\x72\x1b\x54\xac\x0c\xc3\x1b\x89\x7e\x3a\xea\x99\x92\x20\xfc\xb8\xa4\x34\x53\xf6\x8d\x84\x88\x49\x5d\x58\xa1\x46\x1e\x8b\xbd\x5e\x34\x10\xe6\x3b\x6b\x10\xa2\xcf\x05\x9e\x3b\x57\x00\x2f\xc8\xe8\x70\xf1\x2c\x33\xe8\xdf\xc2\xb8\xc3\x4b\x49\x36\x5d\x40\x30\xdc\xd4\xe0\xa2\x87\x26\xbc\x5e\x0a\x06\xbe\x61\xa8\xfe\x3a\x9d\x13\x52\x28\x64\xf9\x30\xe9\x11\x95\x7b\x88\x12\xb2\x89\x12\x05\x1e\x96\x84\x19\xca\x46\x84\xa1\x78\x46\xe6\xb2\x91\x6a\x2d\x3b\xe9\x70\x0e\x2c\x7c\x88\xa3\x54\x44\xf6\x13\x07\x0a\xdd\x0a\x10\xb0\xbe\xa3\x25\xe9\x8d\x11\x86\x28\xe9\x29\x9e\xcb\xc3\x8d\x97\x61\x18\x9d\xcb\x2a\x55\x73\x08\xbb\x5f\x1e\xda\x57\xd3\xe8\xbd\xa4\x5f\x61\x02\x91\x8b\x71\xce\xe5\x95\xc1\x89\x9e\x88\xbb\x6b\x3b\x1b\x61\x60\x4d\xb2\x6a\x10\x9d\xc2\xe7\x72\xad\x71\x82\x76\xf3\x3e\x49\xe1\x95\xd8\xa9\x85\x31\x0b\xb2\x03\xc7\x0f\x8d\x13\xad\x9f\x1b\x84\x1f\x39\xb3\x81\xbc\xb8\xde\x1d\xe2\x7a\x77\xc3\x50\x1e\xfd\x9e\x5c\xdb\xb9\xc6\x30\x0c\x3b\x75\x6e\x15\xd8\xcf\x8b\x88\x3b\x3a\xc0\xea\xdb\x55\x40\x42\x96\x7a\x2e\x7d\x12\xdb\xe7\x8d\x54\x7c\xd0\x11\xde\xa8\xf1\xfa\x3a\x15\x35\x08\x8f\x6b\x00\xbe\x06\xdf\x95\x8c\xfc\xcf\xa3\x11\x3c\x52\x7b\x74\x2f\x7a\xa3\x0a\x27\xf9\xb1\xee\xd9\x52\xd8\xc7\x12\xe7\xa4\x37\x3a\x8c\xf2\xfd\xec\x28\x51\xc7\x8e\x7a\x0a\x3d\xda\x6e\x23\x9f\xa6\x07\xeb\x9c\x7b\x51\xac\x2b\x02\x77\xbf\xd4\x63\xb0\x04\x14\x4b\xd1\xfe\x3b\x54\xbd\xe9\xe4\x27\x47\x9d\x59\x83\x58\x84\x7b\x51\x1d\x0f\xaa\xa0\xc0\x3e\x7c\xc8\x2f\x21\x81\x1f\x0a\x43\x85\x9e\x1d\xe6\xf2\x6a\xdc\xff\x2a\x61\xaf\xc2\x55\xde\xca\x9f\x14\xc6\xf4\x02\x6c\x70\xf0\xcf\xf0\x67\x27\x29\xa9\xeb\x3c\xc9\x22\x8a\xad\x83\x70\x8f\x77\x69\x1f\x26\xa7\xc3\xba\x8e\x8e\x0b\xb4\xf4\xdb\xb2\xa7\xb4\x7c\x7e\x23\xb7\x4f\xb3\x51\x4a\x6a\x17\x60\xda\xd2\x35\x6e\x4c\x15\xef\x1f\x4b\xcb\xca\xed\x29\x7d\x59\x34\xd7\xb0\x3a\x54\x7f\x77\x11\xdd\x9c\xde\x2a\x4a\x00\xde\xb2\x1f\xd4\x53\x0a\xeb\x8b\x7f\x84\x0f\x2d\x96\xa9\x2d\x73\xae\x96\x19\x4c\xcd\x95\x4e\x6b\xe4\xd2\xc3\x3f\x9b\xc0\xec\xad\xa2\xe2\x4a\xb8\x30\xb4\xb2\x26\x45\x59\x55\x15\x5a\x38\x8d\x02\x2c\x28\xf6\xd6\x68\xbd\xce\x6e\xf9\x16\xc6\xab\x16\x68\xf9\xf2\xea\x5f\x7d\xbf\xaa\x3e\xc3\xc5\xc0\x2b\xab\x57\x8e\x95\x76\x80\x70\xb1\xb2\xc3\xdc\xbc\x33\x0c\x97\xfa\xce\x42\xdc\xe9\x45\xd4\x2b\x2d\xef\x43\x59\x13\x24\xcf\xfe\xa6\x8a\x6e\x74\x98\x99\xaa\xe9\xbe\x97\xa0\xb9\xdb\x8c\x6c\x06\x1c\x73\xb2\xa9\xa0\x74\x66\x6a\xee\x21\xfc\x3a\x8c\x98\x20\x82\x03\x88\x30\xb8\x53\x38\x84\x02\x18\x7a\xa9\x06\x0c\x14\x5d\x9e\x3d\x0d\xc3\x88\x91\x57\x22\x12\x08\xe1\x68\xfe\x7c\x38\x1a\x8d\xb7\xdb\xf9\xb3\x81\xfc\x21\xc9\x86\xaf\x2c\x52\x15\xe5\x5d\xa3\x54\x7f\x20\x5c\x0e\x39\x2d\x05\xb2\x9c\x17\xf5\xf4\xaa\x54\xf7\xfd\x85\x2a\x32\x71\xba\x98\xa1\x9d\x73\x68\x28\xd5\x5c\x14\xda\xd0\xb6\x11\x64\x74\x28\x9e\xd1\xba\xb6\x4d\xbf\x2f\x90\x4d\x9c\x0a\xa3\x54\x43\xbc\xb4\xda\x23\xee\xad\x66\xd5\x39\xd0\x3f\x7b\x76\xfd\x1e\xfc\xdb\xee\x3c\x8e\x97\xa2\x44\x81\x11\x56\x90\x36\x6e\x1b\xb0\xbf\x8a\xc3\x82\x14\xee\xd3\x8a\xfb\xfd\x04\xf1\x69\x43\xe3\x64\x9a\xcc\x66\xa4\xd0\x63\x03\x7e\x5b\xe1\x74\xd1\x67\x38\xdf\x5b\xc7\xa1\x89\x8d\x40\x1a\xb8\x58\xef\x8b\x32\xfe\x1e\xcc\xc7\xa1\xf8\x65\x21\x12\x2b\x5c\x6e\xe3\xdb\xa9\x34\x90\x0d\x73\x4f\x6c\x9b\x63\xf7\x0d\x6b\x17\x2b\x3b\xdb\x08\x68\x8b\xf6\x0c\xe4\xcb\x60\x84\xc1\x77\xcc\xfe\x31\x73\x4d\xe4\x12\xea\xbc\x29\x9b\x75\x02\x41\xbf\x8a\x00\x82\x81\x29\xdf\xce\xb1\x41\x90\x64\x5a\x59\x75\x10\x07\xa0\x78\x04\xc9\x09\x8d\x64\x41\xb5\xf3\x01\x44\x3a\xdb\x50\xad\xa8\xbe\xb3\xcd\x2b\x03\xd3\xca\x23\x07\xf5\xf8\x2c\x39\x60\x79\x4a\x0f\x05\x04\x95\x90\xf0\x6d\xea\xda\x60\xb5\x04\x3a\x22\xd5\x61\x93\xcf\x47\x2d\xc9\x68\x3d\x69\x0f\x69\xd0\x83\xae\x28\x1b\x80\xd3\xea\xf9\x50\xd3\x59\x56\x58\xab\xcb\x78\x8a\xaf\x4f\x91\xa9\x5b\x4d\x8d\xd1\x56\x86\x46\x43\x79\xb4\x53\xb9\xa2\x56\xe8\x18\xd1\x60\x6e\x12\xed\xaf\x44\xb4\xc1\xbd\x51\x31\xe7\x56\xed\x9b\x0f\xaf\x36\x2c\x13\x28\x4e\xb4\x66\x99\x1d\x50\x41\xfd\x18\x78\xb0\x30\x56\x71\x0c\xe7\x44\x8f\xb8\xa3\xb2\x8c\xff\x57\xe0\xc3\xc2\x3e\x80\x2d\xa4\xc4\x38\x1e\x5c\x52\x28\xa5\x0b\x99\xc2\xaa\x2a\xce\x87\x57\xd7\x20\x6f\x94\x84\xb7\xfe\x09\xee\x4a\xe9\x57\x61\xd3\xed\xc7\x24\xb2\x85\x88\xad\x89\x9d\x02\xc4\xa9\x89\xe1\xf8\xa1\x58\xb1\x8d\xfd\xa9\x11\xee\xac\x42\x02\x27\xae\x45\x37\x8f\x9a\x2e\x26\xf6\x57\x3f\xe8\x06\x7d\xcd\x3f\xac\xc6\x1b\x04\x28\xf6\xd3\x80\x39\x25\x3b\xae\xf9\x10\x90\x65\xae\x92\xf9\x97\x6b\x50\x65\x81\x03\x5a\x7d\x22\x31\x71\x3f\x9d\xe1\x8a\x38\xf2\x72\xf6\x90\x5f\x5e\x63\x5e\xd3\x4a\x5f\xb4\x63\x08\x2a\x07\xd9\x00\x2c\xc2\x2d\x59\x93\x9c\xfb\x57\x4d\x20\xa3\x22\x05\x3d\x2a\x03\x2c\xd9\x15\x4c\x5e\x82\x21\xb5\x60\xd0\xae\xa7\x9f\xe8\x17\x88\xd5\xdd\xe8\xd5\x6f\xb6\x53\x25\xd0\x6e\x91\x85\x2e\x63\x76\xc2\xfe\xf6\xf6\xc2\xa6\x7a\xbb\x61\x53\x3b\xb4\x7e\x02\x84\x2c\xe8\xd8\xab\x3b\x30\x12\x18\x8b\xd7\x95\xc8\x21\x6f\x90\xb9\x3a\x57\x1e\xe6\xeb\x4a\xa3\xbf\xfa\x7c\x61\x97\xf3\xe1\x06\x5e\x38\xdb\xd5\x4c\xb3\x8d\xc2\x5c\x54\xae\x12\xce\x1b\x09\x03\x48\x9c\x5b\x2a\x3e\x6a\x67\x53\xed\x77\x37\xe8\x37\x3b\x50\xd1\x57\x63\xb5\xbe\x6d\x92\xd3\x7c\x68\x5f\xb4\x41\x3e\xac\xbf\x67\xc8\x33\x97\x08\xfa\xcd\x12\x4a\x5e\x83\x59\x4d\x4b\xa3\x31\x13\x03\x35\x76\xe6\x4d\x72\x46\xfa\x2e\xe1\x5f\x28\x2f\x55\x1c\xf1\x16\x3e\xc9\x76\x5b\xa0\x7b\xb3\x48\xda\x2b\xb1\xd9\xae\x47\x17\x48\xbf\xa8\xc1\x7f\xc6\x4a\x04\x48\x8d\xd1\x57\x10\x29\xa9\xf8\x90\xd3\x54\x85\x2e\x88\x92\xc6\x62\x24\x0e\xc4\xac\xef\x4f\x18\x46\x89\xef\xa7\xa4\x6d\x17\x11\x6e\x97\x7e\x81\x23\x99\x62\xbf\xc2\x1f\x90\x4d\x55\x79\x92\xb4\x0b\xb0\x5c\xd6\x05\x47\xff\x9a\x04\xab\x5a\x56\xb3\x66\x12\xcd\xd9\x3f\xa4\xda\x81\x6a\x68\xd9\x3a\x92\x26\x58\x70\x84\x70\x61\x71\xd5\x92\x8c\x0e\xcb\x67\x0d\x6c\xad\xc2\x59\x4b\x83\xef\x37\x31\xba\x72\x86\x33\x52\xd4\x8d\x0c\x37\x48\x2e\xe0\x66\xd6\xc9\xc2\x70\xcf\xea\x4c\xb3\x59\xdb\xb9\x7a\x60\xf2\x9b\xfa\x2c\x73\x57\x67\x40\x67\x07\xc8\xc3\xd0\x35\x3e\xc5\xc1\x33\x83\x91\xb7\x2a\xbf\x0c\xe6\x4b\x83\xfe\x4a\xa4\xac\xe1\x51\x05\xc5\x0f\xf3\xc3\x9c\xb0\x4a\x6c\xe9\xb2\x0b\xeb\x3b\x62\x91\xb9\xbc\x3a\x7f\x61\xd8\x02\xe2\x72\xb4\x9b\x9b\xc1\x55\xe3\xcd\x68\xdd\x49\xa5\x41\x31\xac\x9b\x0d\xc0\x0e\x34\x7e\xc1\x00\x49\x60\xe6\x55\x85\x89\x19\x04\xc0\xa6\xca\x9b\x63\x01\xbd\x7d\xec\x4d\x21\xfb\x1b\x29\x84\x00\x3b\x90\x1e\xcf\x0d\x3a\x8a\x45\x0d\x57\xb3\x63\x97\xaf\xc1\x02\x3e\x14\x89\x25\x6b\xf6\x46\xb2\x02\x10\x57\xbe\x46\xba\xf0\x68\x2b\x49\x73\xea\xaa\x40\x5d\xe5\x33\x55\x7b\xec\x2c\xc8\x82\xba\xf1\x1d\xe1\xe5\xa9\x93\x5a\x85\x04\x61\x1c\x49\xf2\x05\x68\x57\x9d\x7f\x98\x3c\x73\x8e\x70\x62\x49\xd6\x69\x22\x8f\x6c\x75\x0e\x37\x30\xb3\xa6\x84\x59\xef\x24\xea\x6c\x86\xcb\x24\x4f\x33\x0a\x6e\x16\xc0\xdd\x50\xb9\xdd\x66\x4d\x75\x35\x76\x9d\x17\x9c\x0e\x94\xa0\xae\x32\xba\x4c\x69\xb4\xc1\x59\xdd\x17\x41\x1b\x8c\xcb\x10\x66\x61\xb8\x19\x42\x70\xa6\x49\x8d\x77\x99\x59\xfe\xdf\x76\xcb\x15\xe0\x8b\x0b\xef\x6a\x65\x08\xff\x0a\x76\xd2\x9c\xa6\x3c\xb9\xf5\xc4\xfd\xa9\xff\x7c\x4b\x64\xe2\x8d\x52\xff\x41\xf7\x11\xaf\x2e\xc3\x76\xeb\x7e\x91\xe9\x0c\x21\xe5\xf5\x56\x54\x92\x36\x97\xb6\xea\x08\x4f\xd1\xc0\xc2\x7a\xc3\xea\x70\x74\x8e\xb6\xdb\x88\x0d\x48\xf3\x09\xc0\xc2\x57\xeb\x7a\xab\x5a\xda\xf3\x22\x0a\x4f\xd6\xad\xf4\x1a\x76\x5e\x3f\x70\xc2\x3d\x5a\xe3\x2f\x55\x17\x9a\x06\x22\x81\xa5\x81\xb0\xb3\x16\x8a\x1f\x56\xb7\x0e\x68\x79\xb6\x0c\xa4\x79\x5d\xf9\x13\x24\xc7\x45\x74\xaf\xb8\x76\xad\x11\xe2\x1d\xa5\xe8\xe7\xd4\x8b\xc8\x3b\x06\xbd\x3b\x57\x6f\xd9\x16\xd0\x3c\x9f\x31\xc8\x74\x7d\x3d\x65\xd0\xb0\xd0\xca\xc8\x8e\xb6\x6b\x5d\x39\xab\x9e\xaf\x98\x2a\x44\x4c\x94\xca\x4b\x1c\x8c\x02\xbd\xb1\x74\x58\x29\x7c\x0f\x22\x31\xc9\xe3\x91\xf6\x82\x06\xd5\x1d\x65\x0a\x8f\x5f\xe5\x68\x57\xf9\x93\x18\xd4\x26\xc1\x34\xd7\x0a\x70\xec\xbd\xc3\x76\x47\xbc\xaf\x4b\x39\x66\x85\xa4\x37\xd4\x80\x5b\xa7\xef\x16\xe0\x8a\x67\xee\x4c\xbf\x59\x06\xce\xb2\xc4\xf9\xe1\xdd\xa9\x44\x68\x85\x5e\x23\xa5\xd9\x61\x0b\x0c\x22\xee\x2c\x96\x6a\xa8\x31\x74\x75\x5e\xbd\x63\x30\xf0\x8f\x41\x51\x5f\x9e\xd6\x79\x79\xc3\xdd\xd3\x8b\x5c\x1f\x2d\x7c\x6b\xd5\xa4\x96\x34\xbe\xbb\x35\xcf\x47\x61\x18\x8d\x08\xc9\x75\x18\x83\xdf\x4d\xc1\x37\xc9\xfc\x4b\xb4\x57\x1d\x7b\x84\xf0\xbd\x0a\x1d\x0d\xf3\x37\x71\xb8\xe1\xe4\xec\x76\xb8\xa4\xe2\xc2\xea\x5e\x79\x57\xc2\x9d\x9d\x2d\xd1\x23\xb4\xa6\xd7\x5d\x39\x9c\x31\x3a\x10\x3a\x0e\xe5\x1b\x99\xef\x05\xe3\xb4\xa3\x7a\x91\x70\xa7\x8d\x66\x2d\xe4\x8c\xeb\xb2\x58\x37\x87\xa5\xce\xa4\xc9\x77\x06\xe5\x67\xd4\x87\xf4\x13\xe5\xe2\x91\x11\xc9\x06\x1a\x75\xd0\x0e\x7b\xab\xdd\x8c\x45\x70\x13\x86\xbd\x74\x12\x8c\x9f\xc2\x71\x05\x15\xf6\x4e\xe3\x78\x2c\xdb\x55\xdf\xf5\xa1\x6b\x9e\xf0\x75\xc1\x72\x41\x95\xef\xbc\xb2\x51\xcd\xcf\xd5\xb6\x57\x8d\xa5\x24\xda\x13\x5e\x7d\x4a\x3a\x7d\x87\x9b\x0b\x51\x73\xbd\x4f\xdb\xfb\x03\xdf\x0d\x4a\x1f\x3c\x1a\xd3\xef\x1c\x6f\xb4\x3c\xaa\x84\xc0\xfb\x38\xc7\x56\x90\xa8\x43\x8a\xbc\xe6\xc5\xea\xbd\xec\x20\x52\x0e\xb2\x40\x1d\x4b\xb3\x96\xc7\xa8\x47\xe8\x64\xcf\x30\x8c\x28\xd7\x0c\x03\x5c\x7a\xec\x30\x68\xfd\xb7\x87\x8c\xd0\x4b\x5c\x31\x1f\x3a\x2d\x31\x14\xa0\x8c\xc4\x04\x1a\x39\x37\x70\x1e\x76\xd8\x79\x54\x10\xfe\xfd\x91\x17\xc6\xb0\x02\xef\xf5\xed\x1b\xe9\xd8\xf7\x0f\xdc\x40\x74\xbf\xef\x12\xc8\x9c\xc6\xfc\x76\x3b\x77\x10\x08\xd7\x2d\x10\xc8\xbd\x7a\x98\xe2\xd7\x40\x2c\xc6\xbf\xef\xf0\x2f\xae\x9b\x5d\x10\x2f\x11\x7f\xe7\xf3\x42\x7b\x0c\x74\x54\x9b\x14\x9e\x51\xb9\xe2\xf5\x9b\x51\x22\x1b\x2f\x04\x99\x46\xff\x28\x19\x1d\xd2\x67\x6e\x43\x1a\xe9\xa3\xfd\x3e\xfa\x3b\x73\x7d\xf5\x3a\x85\x20\x46\xb1\x92\x81\x53\x72\x36\x7c\x5f\x94\xa4\xe1\x39\xa9\xe9\x29\x74\x49\x3d\x57\xa1\x4b\xea\xf8\x0a\x05\x46\x24\x35\xc0\x92\x88\x1d\x5e\xcb\x96\xe7\xab\x75\xb3\x71\xcb\xbe\x95\x95\x06\x0a\x73\xde\x6e\xe9\x70\xbe\x1c\x88\xe1\x7c\xe9\x38\x26\x5c\xb9\xec\x5e\xd9\x9f\xc2\xb2\x65\x51\x07\x4b\xbe\xa1\x5e\xbb\x6b\xf5\xf9\x6c\x34\x11\xb1\x83\xb3\xdf\xed\x2b\x45\x63\x47\xae\x70\x45\x1d\xab\x6b\x63\xd6\xe1\x39\xcc\xf2\xdd\x79\xbe\x03\x55\x2d\x15\x8b\x5f\x11\x53\xd5\xe8\x3f\xd3\x66\x74\x76\xa5\x9c\xe6\x08\xda\x8c\x21\x7a\xbe\xdd\x46\x39\x29\x86\x25\xcd\x0c\x3f\xc2\x8c\xc2\xf3\xdf\xb9\xdd\x06\xf0\x1d\x10\xc2\x70\x29\x2b\xac\x33\x06\x4a\x89\xa5\xa4\x5f\x94\xf5\xba\x44\x10\x92\x30\xcc\x87\xdc\xe5\xdf\x3f\x1f\x23\xb6\x88\xae\x69\x18\x5e\x6b\x86\xd7\x6f\x05\xcb\xa3\xe0\x53\x1e\x20\x42\x4c\x6c\x05\xaf\xca\x1f\xaf\x3d\x23\x4f\x42\x46\xe8\x7e\x43\xa6\x55\x40\xc2\x8c\x8c\x0e\xb3\x67\x7e\xa9\xc3\xac\xdf\x47\x1b\x75\xa2\xbd\xf1\xe9\x62\xd3\x6c\x26\xe9\x54\x78\xeb\x4b\xdb\x72\xad\xe7\x30\x8c\x36\xe4\xba\x88\x6a\xf1\x28\xd5\xee\x4d\xe9\x6c\x87\x90\x22\x5b\xb3\x7a\xcd\xc1\xf8\x30\x7b\x2e\x87\x35\x18\xa8\x55\x9f\xdb\x12\x92\xec\x5e\x10\x30\x88\x5f\x45\x08\xa7\x64\x3e\x14\x45\x84\x3a\xf3\x21\x5d\xad\xc5\x5d\x04\x6a\x76\x61\xc8\x9f\x8f\x26\x0b\xb2\xa4\xd1\x42\x9d\xb7\x85\x3c\x9a\x1c\x34\xe7\x61\x43\xac\x3b\xd6\x30\xec\x25\x93\x54\x96\x54\xaa\x1d\xd8\x0a\xe4\x8f\x59\x54\x68\x7d\x0f\xcf\x12\x15\xa7\xc3\xf9\xb2\x7f\x53\x44\x36\xea\x3f\x42\xb1\xde\x12\x50\x07\x60\xe5\xbe\xfd\x09\xc3\x68\x41\x52\x67\x58\x23\x84\x8c\x22\x8b\x36\xd8\xd7\x3a\x0a\x27\xf2\x88\xe2\x35\x51\xba\xea\x0b\x2c\x8a\x38\xc5\xb2\xc1\x78\x33\xd9\x4c\xb3\x3f\x6e\x74\xd7\xb3\xb8\xc4\x05\x67\xd7\x2c\x8f\xd9\x76\x1b\x25\x13\x7d\xb4\xec\x44\x1d\x47\xb1\x93\x60\xbe\x11\x41\x1c\xf4\xe1\xfc\x07\x68\xd7\x79\xcb\xb5\x66\xd6\x1a\x48\x2f\x8a\x03\xc8\x3a\xa7\x49\x1a\x60\x8a\xd7\x68\x27\xe4\xfa\x84\xe1\xb1\xba\x6a\xf8\x23\x57\xdc\xe0\xc6\x50\xc9\xd2\xa6\x8a\xbb\xb5\x8a\x99\x81\x5b\x4f\x3f\x69\x19\x19\x71\x35\x7a\x6f\x6b\x52\x94\x79\xc6\xd6\x57\x45\xc2\xd3\x57\x89\x48\x34\xea\x57\x25\xc8\x77\x54\xb9\x6a\x93\xab\x73\xb0\xce\x12\x96\x2b\x7e\x9c\x71\xb9\xd7\xa5\x26\xdc\x94\x8e\xb3\x2d\x31\xc2\x21\x2b\xe5\x2c\xcf\xf2\xec\xee\xff\x62\xed\xed\xb6\xdc\xb6\xb5\x75\xc1\x7b\x3d\x85\xa5\x91\xc3\x43\x44\x90\x4c\x39\xdb\xfb\xec\xcd\x2a\x94\x86\xe3\x38\x89\x13\x27\x76\x62\xaf\xfc\x2c\x45\xdb\x83\x25\x41\x25\x2e\x53\x84\x16\x08\xa9\x5c\x29\x6a\x8c\xbe\xeb\x8b\x7e\x83\xbe\xea\x67\xe9\x47\x39\x4f\xd2\x03\x73\x02\x20\x40\x52\xe5\xac\x3d\x3a\x17\x71\x09\x00\xf1\xff\x33\x31\x31\xe7\xf7\xc5\xa4\xae\x95\xd3\x0b\x19\x41\x00\x1a\x55\xd7\xbf\xab\x58\x05\xde\x62\xef\x39\x00\xdd\x27\xf6\x4d\x0a\x3a\xdb\xe0\xb9\x37\x4d\x30\xdd\x75\x1f\x68\x2e\xc1\x16\x46\xe6\x2b\x30\x8f\xf6\x6d\x48\xaa\x5d\x26\x95\xbe\xe9\x95\x8d\xba\xc1\x02\x3d\x54\xbc\x00\x57\xa4\xf6\xf2\x28\xf5\xf2\x28\xed\xf2\xc8\x5d\x0a\xfb\xe6\x1d\xe7\x00\x31\x39\x5d\x6d\xaf\x66\x49\x52\xd7\x25\x58\xc8\x99\x24\x93\xd9\x12\x63\xf1\xed\x29\x6f\x7e\x90\x66\x93\x33\x28\x18\xcf\x94\xc9\x8a\xd0\x8c\xa1\xc1\xad\x08\x9b\xd2\x9c\x64\xa8\x87\x6b\x45\xdb\x1d\xa5\x42\x67\x04\xe5\x88\x24\xdb\xe9\x56\xdb\x4c\x3e\x53\x71\x45\xc8\xd5\x64\x46\xee\x33\xf6\x8d\x8c\x39\xf5\x2a\x47\x47\xd0\x53\x96\x13\xc8\x6c\x3f\x4d\x36\x30\x66\x51\xd4\x0a\x40\x4c\x6f\x67\x83\xe8\x37\x16\x57\xa8\xb5\x6a\x74\x3d\x46\x08\x58\xad\x9e\x2d\x9e\x0c\xb2\x28\xc2\xe5\x12\x94\xa4\x97\x8c\x9f\xbd\xaf\xc7\x7b\xdb\x7a\xec\x5e\x2c\xa9\xd4\xff\x43\xb5\x92\x1b\xeb\x70\x9c\x3d\xa3\x06\xd6\x4e\xb2\x28\xbd\x31\xa4\x82\xdd\x23\xb4\x68\xba\xe5\x71\x4e\x13\x42\x75\x1c\xfc\x00\x2c\xd2\xd3\x40\x9a\xcd\x5c\xcf\x7d\xf8\x0b\x46\xf8\x67\x9d\x57\x07\x97\xd4\x39\xca\xc0\x86\xa3\x28\x96\x18\x38\x13\xbf\xb6\x87\x6c\x48\x60\x76\x50\x62\x25\xa4\xe4\x2b\x35\xa2\x23\xb1\xd9\x8c\x0c\x06\x6a\x3b\x4d\xb6\xcf\x55\x56\x00\xa4\xdd\x99\x64\xd5\x9e\x17\x05\xdc\xd9\x1a\x9e\x44\x0f\x0e\x8d\xbb\x0b\xcf\x6a\xe7\xe8\x4b\x24\x3f\xe2\x66\x64\x6f\x99\x7b\x51\x14\x79\x79\xf3\x75\x56\x29\xc7\xd5\x66\xc2\x02\xe9\x3f\x2f\xb3\xd5\xea\x20\x33\xc5\x1d\xc8\xa3\x4b\xbf\xcd\xaa\x6e\xe0\x4a\xec\xf6\xa2\x82\x6c\x82\xc7\xed\x67\x0d\x5d\xc3\x3f\x04\x6e\x49\x99\xe4\xd9\x27\xa1\xa8\x8c\xea\x08\xd0\x1d\x3d\x10\x2a\x07\x51\x35\xe3\xbb\x2e\x20\x97\xef\xaf\xcd\x2d\xc2\x96\x30\x94\x7a\xe9\x23\x34\x7a\xb9\x78\xd4\x87\xed\x65\xca\xf8\xc2\x2f\x23\x01\xd4\x2b\x67\x3f\xea\xae\x15\xe6\x4e\x3e\x4b\x92\x44\x5f\xe1\xda\x03\x05\xa8\xe9\x76\x14\xf7\x0d\x84\x8d\x71\x53\x64\xa3\x99\x73\x4c\xbc\x2e\x32\x20\xec\x7a\x8d\x5e\x01\x1e\x7e\x4e\xdf\x70\x16\x59\xa5\x9e\xc1\xbc\x04\x4b\xd0\x56\x98\x31\x2f\x76\xa1\x80\x2b\x18\x26\x84\x20\x93\xae\x11\x9f\xfb\xc6\xff\x46\x66\x2b\xfe\x86\xcb\x5c\xac\x83\xa3\xe8\x43\x70\x14\x1d\x95\xd3\x12\x1b\x50\xd7\xba\x96\xd6\xb6\xc8\x4a\xd5\x5a\x74\xc3\x2b\x9e\xdb\x72\xcc\x27\x34\x67\x7b\x15\x6b\x51\xd2\x06\x08\xf6\x43\x1e\x83\x7f\x1d\x3c\x18\x8c\x06\x02\x36\x9e\x2a\x8b\x05\xd5\x62\x34\xf9\x1f\x4f\xe6\x23\xb8\x0e\x8d\x52\x4c\x61\xfd\xaf\x6e\xf5\xae\xbc\xcb\xf6\x90\x8c\x66\xcd\xa8\x19\xfb\x12\x66\x3e\x63\x4c\xcf\xd5\xa2\xc8\xf6\x15\x9f\xeb\xab\xfd\x3a\xad\x10\x4b\x99\x56\x1e\xaa\x4d\x28\x57\xe3\x6b\xed\x75\xb6\x46\x68\x2e\x0f\xa5\x86\x07\x96\xcc\xa0\xc3\xf2\x8d\xf3\x2c\xd8\x21\xde\x3d\xca\x6e\x8c\x4f\xb9\x2b\x97\xee\x2a\xa2\xcb\x87\x53\xfd\x8d\xa8\xe2\xad\x8f\x34\x6b\x3c\x09\x66\xc8\x97\x32\x30\xe3\x28\x59\x82\x7b\x3f\x02\x8e\xa8\x8b\x8b\x92\x95\x3e\x77\x1e\x54\xa0\xac\xeb\xb2\xaf\x76\xfe\x48\x81\xb8\xec\x1b\x8f\x94\x81\xf1\x71\xf7\x63\x3c\x79\x42\x23\x9b\xb0\xba\x3d\x96\x36\x61\x82\x45\xbe\xc4\x53\x14\x4d\x5f\xdc\xd4\xf9\x07\xd7\xc3\x0e\xcc\x56\x0d\x02\x0f\x6f\xdb\x8e\xc3\x91\xe5\xd9\x3c\xe5\xcc\x7a\xc1\xd4\xf5\xf0\xa5\x88\xcb\x06\xd7\x56\xf7\xeb\x96\xc7\xcf\x72\x73\xe9\x22\xfa\x5c\xd0\xdd\x88\xe3\x56\x82\xd9\xd9\x30\xa1\x8a\x95\xe1\xc0\xe8\x0e\xa6\x43\xe5\x09\x03\x92\x57\x6a\x7e\x14\x31\xfe\x65\x9f\xdf\x07\xed\x72\x04\xa1\xc2\x17\x95\x81\xda\x0c\x6f\x42\x5f\x04\xe4\xc2\xca\x10\x0f\x30\x05\x17\x80\xac\xae\x67\x43\x30\x48\xb2\xb5\x70\xce\x16\x5f\x0c\x59\xa0\x48\x6d\xa8\xa1\xe2\x2c\x88\xa1\x48\x53\x91\x41\x8a\x5f\xb2\xe2\xc0\x9d\x74\x7e\x51\x79\xa3\x3a\x64\xe5\x05\xa9\x98\x1f\x34\xb0\x8f\x83\xd6\xa2\xa6\x60\x07\xbd\xba\xaa\xe6\x22\xb8\x8a\x3b\xf6\x55\x93\xd9\x45\x7e\x19\x17\x73\x6b\xea\x9e\x26\x04\x06\xbd\x79\xd6\xc9\x2f\x93\x39\x64\x94\x16\x8b\x7c\x69\xbc\x33\x45\xe3\x9d\xc9\xbe\xb0\x1e\xb4\x62\x91\x8d\x9f\xc0\xb4\xa8\x18\x53\x75\x5d\x31\x26\xed\xcd\xe7\x59\x1e\xeb\x8c\xb0\xcb\x53\x1c\x81\x45\xbe\x24\x74\xa3\x3f\x5b\x8e\x4b\x33\x0c\x71\x79\x99\xd4\x75\x35\x04\x8a\xe6\x18\x22\xc7\x71\x39\x9f\xa5\x09\x59\x6a\x79\x20\x5e\xd1\x8d\x96\x49\xd0\x52\x70\x15\x67\xb4\xa2\x12\x26\xc3\xc6\x9b\x30\x1b\x9a\xfb\x10\xa9\x55\x60\x4a\xb7\x65\xd9\xbc\xdb\xc1\x13\x99\x26\x17\xeb\x8b\x35\x5b\xfb\x89\xf1\x61\x8d\xad\xe2\x35\x5d\xfb\xc3\x94\xb4\xa6\xa7\x7f\x41\x83\x09\x33\xd8\x8e\xd9\xda\x67\xf0\x32\xc5\x9c\xd0\x3c\x1e\xcf\xf9\x5c\x1c\x2a\xfb\x84\xa9\x6b\xbb\x65\xf2\x62\x7f\xb1\x67\xfb\x76\xac\xab\xc6\x9e\xee\xfd\x6a\xe8\x3d\xe5\x5c\x3d\xc6\x0f\xd7\xc3\x43\xb9\x32\x1b\x27\x12\xaf\xa1\xb5\x9b\x13\x46\xf2\x1d\xbe\xde\x78\xe7\xdc\x73\x3f\x3d\xca\x5c\x4e\xbb\xc9\xb3\xb5\x9f\xf4\x65\x78\x0b\x5a\xa8\xe5\x80\x4f\x2b\x21\x7d\x50\x8a\xb6\x32\xc4\x5e\x8a\x95\xf9\x03\x71\x29\x00\x50\x48\x8f\x74\xf3\x94\x39\x03\x99\xb3\x47\xc8\x44\x70\x2d\x0e\x57\x04\x3d\x33\xf6\x5a\x38\xd4\xf7\x6b\x9a\xdb\x3c\xaf\x58\x62\x19\xb5\xee\x74\xac\x29\xd3\xc5\xd3\x8a\x1d\xbd\xaf\xf4\x3f\x84\x1e\x98\xb0\xf7\xf3\xb9\x4d\x69\x2f\x1e\xa9\x70\x01\x28\x7f\x0e\xca\x4b\x7d\x55\x9e\x4c\x94\x96\x0a\x11\x5c\x68\x32\x29\xe9\x13\x6a\xd0\xf7\x0f\xf3\x2a\xcd\xe8\x61\x9e\xa5\x15\x21\xa7\x93\xa7\xd0\x32\x03\xe2\x61\x43\x85\x47\x9b\x49\xb3\x30\x19\x71\xaa\xea\x9a\x93\x25\xf5\xa1\xcb\x7e\x0c\x3f\x71\xef\x43\xe6\x45\xbd\x51\x10\xe8\xea\xa1\xd7\x1e\xb7\x2e\xc4\x3e\xfe\x51\x73\x07\xc4\xf3\xfe\xd2\xa4\x26\xbe\x32\x0c\xb3\x4c\x1a\xc4\x8d\x30\xc3\xe6\xd5\x5c\xe7\x70\x25\xe7\x5b\x1e\x4b\xaa\x25\x0b\x2a\x03\xa5\x04\x49\xfb\x10\xe8\xf9\x74\xb5\x1d\x78\xe7\x1d\x63\x5a\x64\xb9\x52\xf3\x46\x11\xa7\x48\x2a\x2f\x13\x2f\x20\x21\x29\x3f\xc5\x0a\x0b\x51\x5d\xf5\x87\xd7\xc4\xaf\x5b\x72\xc3\x95\xad\x7f\x14\xa9\xcb\xb0\x29\x1e\x68\x0d\x6f\x7b\x58\xb8\x6b\x50\xf0\xb0\x2e\x17\xe5\x92\x61\x27\x2e\xca\x65\x83\xda\xe7\x01\xde\xb4\xdf\x84\x57\xe0\x3c\xb0\xda\x85\xaa\xb9\xba\xe6\x60\x4c\x59\xae\x1b\x3c\x32\x5c\x7b\x70\xfc\xdb\x43\x6e\x0f\x24\x6d\xe4\x32\x19\x88\xa1\xfe\x51\xc2\x8f\x79\x9c\x33\x49\x25\x2b\x49\x8a\xc1\xba\xb4\xcb\x04\x19\x91\x88\x3f\xf5\x9e\xeb\x8b\x97\x6c\x07\x95\x75\x2d\x03\x03\x89\x2f\xbd\x4a\x7f\xa6\xff\xb6\x53\x12\x5a\xc3\xe1\x86\xa7\xf7\x8e\x4c\x02\x19\x32\xf8\x8e\x27\x84\x96\x5e\x16\xdf\x3a\xa1\xa0\x59\xd1\x8b\x25\xb5\xc2\x48\xf7\x1a\xa9\x4f\xa5\x72\x91\x2f\x99\x57\x86\xb4\xa6\xbf\x54\x1f\x26\x14\x6d\x48\xa0\x42\x2f\x39\x38\x1c\xdb\x8a\xc0\x26\x46\x82\x36\xfc\xd2\x31\xf2\x08\x4a\xb5\x10\x61\x83\x7c\xa1\x96\x4c\x52\x9b\x6b\xde\xcd\xd5\x6f\xd6\x3f\xdb\x3d\xf3\x15\xe8\x5a\xc2\x44\xbf\x76\x04\xa2\x6d\x5e\x29\x21\xef\xa6\x6b\x51\x72\x9a\xb3\xa3\x88\x4b\x32\xc8\xa3\x28\x37\xd5\x99\xc7\xe5\xa2\x74\x8a\x93\x25\x53\xf4\x1b\x9b\x07\x49\x3f\xeb\x5a\xb0\xb8\xa0\x7b\x97\xae\xe5\xc8\xe7\x37\xdb\x94\x4e\x85\x16\xa7\xca\x29\xaa\xe2\x06\x92\x19\xe8\xd7\xb7\xbc\x78\xbd\x07\x73\xac\xe6\x37\x24\x01\x63\xe9\x18\x03\x7f\x10\xeb\x77\xf9\x8e\x7b\xdf\xe8\x9f\xf6\x13\x97\xbe\xae\xcf\x55\x43\x59\xdd\x49\x62\x97\xc9\xe8\xf3\x11\x63\x79\x5d\x8f\xc6\x08\x6e\xd8\x52\x20\xf5\xa8\x6a\xe5\xb4\x12\x3b\xae\xb6\x79\x79\x83\xd7\x5d\xbe\xd6\x3b\x72\xd9\x17\xec\x31\xb3\x34\xfd\xef\x55\xfd\x92\xc1\x62\x9c\xc3\x5a\x74\xf4\xa3\x98\xee\x05\x2a\xe2\x8a\xec\x2e\x7d\x9a\x24\xe0\xb4\x26\xe8\x51\xc4\x39\x0c\x20\xd1\xd2\xeb\x1c\xff\x5e\xe0\x3f\xfe\xd0\xa5\x2f\x01\x87\x04\x93\x0e\x82\xee\x6a\x98\x78\x68\xbb\xab\x85\x17\xb2\x67\x92\x96\x51\x04\x1c\xb6\x25\x22\x60\xfd\xcc\xd7\x22\x8a\x7e\xce\xe3\x7c\x7a\x28\x21\xe7\x93\x5d\x25\xb4\x69\x06\xea\x36\xf3\x75\xfa\x63\xf6\x63\x30\x5f\xdc\x2c\xb9\x8f\xe1\x55\x68\x74\x0d\xf6\x2e\x4e\x67\x60\x9c\x91\x80\x13\x52\x6f\x50\x3a\xd1\x74\xb5\x3b\x9b\x4e\x0b\x6f\x8a\xf5\xbb\x8e\xde\x1b\x4d\x8c\x32\xa3\x47\xdb\xaf\x69\x2d\x59\xc4\xd3\xf2\x4b\x96\x5c\xc8\x66\x87\x95\xe3\x31\xf1\x52\x2e\xe4\x92\x99\x1d\xcb\x6c\xb9\x72\x69\x36\x49\xe4\xb7\xc1\x10\xa3\x1d\xb2\x1a\x67\xb0\x5f\xc7\xbf\x1d\x93\x25\xb2\xc4\xf4\xb7\x8d\x72\xb4\x21\xd2\xdd\xa0\xd3\x3d\xd0\x0d\x90\x4a\xa7\xb6\x13\x55\x5f\x03\xcc\x82\xd6\x1b\x94\xed\x80\xce\xc3\x01\x49\xd5\xc9\x2e\xef\x81\x83\xd3\x91\xd3\xeb\x3c\xab\xea\x5a\x0b\x34\xaa\xd9\x5f\xa1\x41\xed\x4d\x17\x5b\x79\x99\xcc\x27\xb3\x74\x46\x06\xbf\xeb\xd6\xff\x64\xec\xc8\x00\x06\x53\xdf\x34\x86\xc8\x4b\x5b\x19\xb3\x9b\xa1\xae\x6e\x5d\xff\x2a\xa1\x51\xde\xec\xf8\xdd\x4a\x7c\x53\xfe\xcf\x43\x56\x54\x31\x14\x46\xe0\x39\xaa\xe2\x05\x53\xa6\x3b\x62\x6f\x92\xf9\x6a\x75\x2f\xb8\x0a\xbb\x08\x41\x29\x71\x32\x11\xab\xbe\x47\x07\xcc\x67\x2b\x95\x1f\x73\x75\x87\x2c\x3d\x0d\xdc\x02\x68\x59\x9a\xf6\xe0\x14\x47\x0f\xc8\x40\x74\xf9\xa9\xcf\x9f\x84\x0a\x96\x5c\x88\x4b\xd5\x3a\x5b\x84\x95\x1e\x33\x37\x40\x0b\xb1\x04\x3b\xb6\xd6\x96\xd3\x73\x32\xe9\xe3\xda\x3b\x8c\xc4\x92\x1e\xd8\x6f\xba\xf0\xcc\x6a\x24\xab\x28\xb2\x92\x32\x5a\xa0\x15\x36\x01\x0c\x1d\x44\xc3\x5f\x3a\xf2\x22\xce\xeb\xfa\x30\x64\xf6\xeb\xba\x2e\xf4\x0f\x18\x4f\xbd\xdb\xd6\x35\x20\x9a\x86\xc7\x14\x15\x84\xd0\x7c\x21\xdc\x02\x38\xd0\xc2\x69\x40\x1f\xe5\x73\x38\xb8\x94\x77\x68\xf9\x6f\x8d\xdf\xf5\xbc\x0f\xfa\x82\x13\x5e\xf4\x77\x99\xfc\xc0\xd7\x6f\xf7\x59\xd9\x46\x33\x0e\xe2\x3a\xc6\x7e\x15\x0b\xe2\x17\x99\xee\x9f\x0a\x83\x40\x78\x31\xce\xed\x15\x08\xd0\x75\x1d\x1f\xa6\x79\xb9\x2a\x0e\x55\x7e\xe4\xaf\xf8\x46\xcd\x31\xe2\x12\x0e\x88\xd4\xfc\x50\x56\xc3\x6d\xbf\x55\x22\xfc\x12\xb0\xcc\xe6\x3a\xfc\xca\x7e\xa8\xc4\x15\x7e\x06\x82\x56\x1e\x45\xf1\x77\x48\x68\x02\x6b\x17\xc9\x7d\x5e\x18\xd6\xff\xc3\x94\x7f\xd4\x32\x7b\xae\x8a\xbb\xe7\x7a\x7f\xe5\x6b\xfc\x2c\xec\x87\xfb\xc9\x24\x1b\xac\x44\xa9\xf2\xf2\xc0\x4f\xa8\x56\x01\xd7\xfe\x69\xa6\xc4\x2e\x5f\x11\x1b\x67\xec\xc4\xe0\xa5\x92\xae\xd8\x01\xb1\x64\xcb\xcb\x64\x3e\x4b\x27\x33\x82\xdd\x00\x17\xed\xb0\x05\x69\xab\x33\x08\x70\x72\xfe\x5d\x0f\xd8\x8a\x4e\x4a\x0a\xde\xcc\x81\xf3\x8d\x00\xa5\x04\x21\xdd\xa8\x28\x8a\x0b\x2d\xfc\x81\x63\xb8\xee\xba\xcb\x64\x5e\x5c\x26\x69\x71\xd5\xdc\x66\xbf\xc3\x9c\x15\x4c\x05\x73\xc9\xf6\x2a\x8b\x9b\x49\x73\x53\x9f\xb7\xaa\x97\xb6\xeb\x8f\x97\x78\xa8\xef\x86\x96\x74\x73\xa6\xae\x9b\xf9\x77\x98\x04\x0b\x46\x4a\x39\x3b\x7b\xbd\x99\xfa\x5b\xcf\x4c\x2d\xeb\x7a\x46\x33\xe6\x26\xb1\xa0\x39\xa9\xeb\x61\x1e\x45\x5e\xd0\x30\x21\x75\xed\x7e\x4f\x7a\xd2\x4c\x04\x02\xfb\x62\x99\x19\xec\x6d\xab\xac\x54\x2f\xd6\xb9\xd2\x9b\x54\x70\xd1\xf1\xb6\x99\xbf\x7b\xdb\x8c\x95\xee\xb5\x68\x9d\x30\x98\x77\x73\x73\xe9\x31\xdf\xce\xe1\x18\xda\x72\x73\x9b\xd2\x97\x2d\x68\x6c\x2a\xaf\x92\x28\xd2\x1f\x30\xa6\xc5\x6d\x7f\xf9\x05\x17\x97\x79\x78\x0d\x73\x77\xac\xb9\xcb\x13\x9e\x4a\x30\x53\x63\x1d\x61\x6d\x82\xa7\xab\xed\xd8\x3f\xf4\xc1\x2d\xb7\x03\x09\x59\x6d\xc5\x6d\xc3\x12\xd5\x8e\xdd\x4b\xbe\xcf\xbc\x93\x2e\xf6\xfb\x42\xa9\xf6\xad\xc8\x50\x4b\xa2\x17\x64\x69\x5c\xeb\xab\x4f\x33\x87\x01\x7a\x84\x3b\x2b\xfe\x42\x7a\x0b\x1a\xd6\xbd\x37\x58\xfc\x30\x2d\x2c\x29\x03\xbd\x12\x0a\xf0\x0e\x00\xce\xdb\xc5\x33\xf3\x02\x59\x99\x6b\x3d\x8e\x62\xc7\x3d\xba\xae\x2b\x50\x0e\xd8\x41\x69\x3b\x5a\x93\xc6\x47\xd7\x68\x0e\x2e\xe2\x83\x16\xa2\xdc\xb3\xe9\x56\xdc\xe2\xd6\xf3\xeb\x96\x97\x6f\x2d\x03\x2a\x89\x22\xe0\x4e\x33\xe7\x42\x4e\xe8\xa1\xae\x4b\x08\xa1\xc2\xd3\x16\x78\xee\x93\x2a\x94\xb2\xde\xe0\xef\xb6\x03\xa2\xe7\x6b\x51\xe5\xe5\x4d\x61\xf6\x3d\x34\x41\x7c\xc3\xe5\x2b\xa3\xe4\x97\xfd\xfe\x02\xa3\xff\xf7\xff\x19\xf5\xf0\xc6\x8c\x08\x41\xb8\xfb\xc0\x0c\xb9\xb0\x76\x9b\x34\xf7\x5c\xb1\x4b\xfd\xff\x30\xb8\x6b\xc4\xea\x8c\xc3\x20\x35\xf9\xdc\xc3\x4f\xf4\xea\x8b\xb9\x94\x53\xa1\xb6\x5c\xda\xfd\xe0\x5f\xab\xb9\xef\xf9\x51\xf1\x95\x28\xd7\x99\xbc\x6b\x1a\x25\xba\x96\x9f\x22\x6c\x24\x94\xed\x35\x55\x04\x4d\xc5\x58\xd7\x60\x11\x36\x78\xfa\x1f\x4f\x3f\x8f\x6d\x22\xd7\x60\xf7\x8d\x31\xd5\xf5\xbc\x4e\xd5\x43\x20\x2c\x80\x3f\xf4\x97\x96\xca\x2a\xe0\x4c\xa8\x58\x86\xcc\xa6\x07\x1f\x1f\xa9\xa1\xa7\xa1\x80\xfe\x30\x31\x41\x9e\xaf\x31\x99\x64\x68\xc9\xdb\x68\x98\x8b\x66\x33\x54\xa0\x60\x00\xee\x14\xe5\x03\x63\x2b\x12\x02\x65\x97\x84\x8a\xbf\x88\x83\x5f\x99\xcb\xdb\xa8\xff\xfd\xd1\xfa\xab\x70\xf4\x50\x01\x82\xb9\xd1\x58\xb5\xfc\x55\x2c\x96\xce\xfc\x30\xe1\xa9\x34\x4e\x60\x0d\x8b\x4e\x5c\x4e\x0c\xde\xa9\xbf\xb3\x39\xcd\xf9\x11\x79\x3b\xe9\x4a\x4b\x48\x39\x55\x04\xec\x78\xbc\x0d\xba\xe9\x8b\x75\xec\x1f\x0a\x3f\x28\xb3\xf1\x83\x17\x12\xb4\x6f\x45\x1b\xe5\x4b\xf7\x56\x0c\xb0\x80\xee\x9d\x07\xca\x1f\x15\x4a\x8e\x7c\x84\xda\xe1\xcc\x08\xb4\xbc\x11\xbb\x84\x95\x64\xf9\x42\x2c\x2f\xe2\x0c\x05\x26\x19\x45\x19\x48\x40\x75\xad\x18\x33\xbf\x18\x6a\xd9\xcb\xb8\x41\x90\x84\xd4\xba\x59\x4e\x41\xa8\x13\xea\x3a\xcf\x18\xcc\x93\x23\x2f\xe6\x23\xa9\x8a\x51\x8a\xb5\xa1\x39\x50\xa9\xe6\x75\xed\xd7\xf1\x14\xff\x90\xc7\x2b\x42\x65\x5d\xa3\x95\x09\x63\xe5\x7c\x93\x96\x34\x44\xaa\x32\x87\xf8\x8a\x6e\xe9\x9e\xee\xd8\x5a\x4b\xff\xe6\x89\x30\xdf\xc4\x5a\x50\x20\x2b\xb6\xa3\x5b\xb6\x67\x3b\x98\xa3\x8e\x7b\x7f\xc5\xd6\xb1\x9a\xcc\xa8\x79\x22\x24\x14\xea\xc4\xac\x83\xd0\x91\xed\x06\x3b\xb6\xa2\x2b\x76\x3c\x6d\xcd\xb7\x74\xcf\x56\x38\x5f\x4f\x66\x0a\xc0\x29\xcd\x01\x38\xa7\x22\x74\x05\xb4\xbe\x3b\xfd\xff\xab\x2f\xb4\xb0\x14\x6f\x29\xfc\xc2\x89\xb8\xb3\xa0\xb6\x74\xcb\x2a\xf7\xeb\x72\x85\x48\x28\x98\x18\xc3\x30\x3d\x44\x10\x62\x5b\x1f\x45\x8a\xb1\x4d\x14\xc5\x7b\x76\x20\x34\x1e\x8a\xba\x86\xcc\x2f\x85\xfe\xbf\xf9\xc1\x98\xc0\xec\xb0\xc6\xf0\xcc\x82\x42\x9f\x60\x3b\xfd\x55\x56\xd7\x2b\x53\xca\x55\x66\xfe\x68\x82\xf4\x08\x59\xc4\x59\xd3\xd4\x2b\xb3\x44\xd1\x1a\x64\x45\xe8\xf6\xb2\x1a\xcf\x6c\x93\x75\xad\xa1\x9e\x74\x3f\xd1\x7f\x99\x16\x9e\x08\xa1\x8e\xfb\x97\x97\xeb\x34\xb3\x0f\x2e\xaa\x31\x59\x53\x68\xb2\x96\x6f\x62\x2b\xd5\x19\x8b\x91\x95\xff\x0a\x01\x76\x66\xe8\xd2\x7b\x8f\x26\x62\xb0\x6e\x36\xe6\x2d\x6f\x8f\x3f\xcd\x97\x74\xc7\xfe\x2c\xe3\x2d\x61\xfa\x9f\x3d\xa1\x47\x16\xe6\xb5\x9b\x6f\xfd\xa5\x36\x9e\xa1\xfc\x38\xe5\xe5\x9a\xde\xb1\x95\x35\x7e\xdb\xcd\x13\x7c\x99\x83\xb2\xf1\xa5\x78\xa0\xaf\xa7\x47\xe8\xf0\x3b\x18\xe7\x27\xf3\xb8\x88\x8f\xd8\x39\xf4\xd8\x0c\xf3\xd1\x0d\x73\x11\x57\x14\xd2\xd2\x3b\x9c\x3f\x77\x36\x8a\xa4\xed\x4f\x31\xc5\xa4\x09\xb4\x29\xdd\x9f\x58\xac\x9e\x28\x95\x0b\xc3\x12\xef\x10\x12\x27\x3c\xb7\x7c\xe0\x95\x5c\x39\x80\x8b\xc0\x1c\xb4\x4b\x3e\x0e\xaa\xa0\x97\xfa\x0e\x73\xcc\x8a\x58\x4d\xaf\x8b\xbc\xfc\xc0\xa5\x55\xcc\x0f\x93\x81\x6a\xe0\x8d\xcc\x59\x04\x08\x3a\x40\xfe\xa7\x4f\xb7\xf6\x41\xfb\xa5\xce\xe1\xe7\x4c\xf1\xab\x64\xee\xf2\x63\x15\x57\xae\x94\x90\xbc\xf6\x81\xdc\x63\xc9\x86\x92\x00\x91\x08\x9a\x1b\x8c\x4e\xe4\x7c\x79\x24\x3d\x1b\x85\x07\xcb\x83\x0d\x31\x05\xf8\xaf\xd0\x42\x39\x70\x19\x43\x83\x84\x33\xe3\xad\xee\x52\xc0\xeb\xf1\x18\x8a\x2e\xdb\x82\x1e\x5c\xf2\xa1\xf3\x1d\x09\x3d\xd8\xa4\x2b\xfa\x56\xc4\x99\x0a\x75\x14\x99\x6a\x31\xec\x20\x0a\xa4\xcb\x5c\xd9\x07\x06\x2f\xd0\x3e\x03\x23\xf4\x91\x0d\xed\x4a\x9c\x8e\xfe\xdd\xa9\x0a\x3d\x44\xc4\x5b\x21\x3f\xbc\xcb\x01\x14\xe1\x50\xc6\x0a\x5a\x49\x2b\xb4\xf8\xb0\x59\x12\xbd\x65\x2f\x96\x96\xed\xa7\x89\xf0\xde\x84\x02\x50\xd9\x0e\xd8\xd0\xf8\x69\x92\xf8\x00\xf0\xc2\xbc\x0f\x9d\xab\x34\x08\xc2\xe6\x50\x32\x12\x50\x05\x26\xc3\xde\x5a\xbe\x6a\x1a\xb1\xcb\x3e\x7e\x6b\xfb\x18\x39\x47\xe8\x81\xf1\x1c\x74\xac\xd5\xbc\x69\x57\x49\x52\x50\x65\x59\x21\xad\x62\x07\xf3\x87\x85\xda\xc3\x9f\xe0\x57\xc9\x2b\xb8\x76\xaf\xf0\xef\xc1\x6a\x1e\x46\xb2\x55\x5a\xe8\x5d\x36\x0c\x0c\x7d\x52\x37\x4c\x6f\xbf\x99\xc3\xd3\xb5\xc5\xba\x57\xfe\x02\xd0\xc5\xe2\x61\x51\xd7\xc3\x55\x5d\x17\x0d\x6a\xc4\xaa\x41\x61\x28\x7c\xd4\x88\x95\xef\xf8\xb9\x66\xc9\xc5\x70\x13\x45\xeb\xcb\xcc\x67\xf3\xdc\xb0\x6c\xb1\x5e\x36\xc5\x2d\xd6\xcb\xc1\x26\x8a\x72\xe3\x11\xd8\x8c\x2b\x48\x97\x8e\x94\xab\x9a\x97\xa9\xdf\x57\xd6\xce\xd0\xeb\xf3\x4b\xf6\x50\xa7\x47\x91\x84\x3e\x87\x2f\x68\xd9\xca\xbe\x29\xf7\x7f\x3c\x65\x2c\x69\x0d\x8b\xb1\x4a\x19\x8f\xbd\xd9\xe5\xe6\xeb\x95\xb3\x69\x85\x25\x19\xce\x5e\x50\xaa\x83\x1d\x2a\xf0\xe2\x59\x0d\xdb\xef\x3a\x65\xdc\xe3\x77\x80\x08\x3f\x36\xe1\x85\x1a\x8f\x89\x02\x93\xc7\x85\x5a\x52\xc4\x83\x01\x8f\x11\x0f\x43\xa1\x2b\x44\x8b\x15\x0a\xd0\x0d\x6a\x32\xd0\xb7\x07\x3b\x84\x05\x52\xb4\xfc\x5e\x6d\xdd\xb6\x7b\xc5\xa2\x39\x35\xe6\xf5\x34\x63\x72\x3e\x99\xa5\x6a\x12\x7b\x9b\x4e\x5e\x96\x1c\x7c\x36\xe6\x33\xfe\x45\x0a\xc4\x67\x15\x53\x17\xd5\x55\x76\x31\x99\x54\xb0\x94\xaa\x4b\x8b\x97\xe8\x7a\x0a\x7f\x1a\x1b\x0f\x30\xea\xae\x8c\xde\xe8\x10\x32\xb3\x0d\x65\x5d\xe3\xf7\x6e\xbd\x5b\xb3\x2a\xb3\x2c\x36\x22\x3e\x98\x41\xd5\xc7\x8f\xc7\xae\x95\x5d\xbf\xcd\xff\xe4\xe4\xc2\x88\xc8\x5a\xa6\xbb\x2a\x40\xe9\xc8\xaa\xc9\x8c\x96\xac\x68\x54\x8a\x56\x3f\x4d\x33\x26\xae\x4a\xbb\xa1\xbd\xc8\xe3\x92\x8a\xc9\x8c\x78\x95\x72\x3a\x15\x96\xe9\x69\x82\x3d\x4b\x33\x92\x16\xf6\x07\xa1\x25\x6e\x46\x82\xaa\x90\x78\x1f\xa6\x20\x3a\xda\xd2\xcc\xda\x8d\x69\xb9\x75\x32\xab\x6b\x01\x53\xaf\xae\xc5\x15\xcb\x3d\x50\x38\x71\x69\x49\x14\x07\x32\x5c\x11\x41\xe9\xd0\xf8\xf1\x58\x9c\x50\x17\x1e\x97\xcd\x56\x2c\x08\xcd\x3c\xef\x75\x15\x60\xfd\x38\x8e\xd0\x06\x70\xcb\xf3\x1c\x0f\xd3\x22\x28\xa8\x8f\x1c\x35\xe9\x66\xd0\x86\x94\x5a\x35\xc7\x7d\x48\x4f\xd8\x98\x82\x87\xe1\x06\x80\x04\xf8\xca\xad\xf1\x8f\xbe\x44\xed\x25\x1f\xd1\x91\xbe\xc8\x50\xc9\x90\x29\x79\xda\x66\xf7\x9d\x9f\x09\x8f\x15\x49\x95\xc5\xdb\x84\x10\x5a\xb2\x7b\xb8\x61\xed\x33\x59\xf1\x97\xa5\x8a\xa5\xef\x2c\x4c\x8c\xcb\x53\x37\x16\x15\x81\xee\x6d\x25\xaf\x7e\xcc\x7e\x34\x6e\x60\xa4\xae\xed\x4f\x94\x52\x8d\xda\x2d\x24\x65\x24\xd4\xd3\x73\x6c\xfc\x1e\x16\x62\xd2\x1c\x35\xa1\x67\xae\xe7\x75\x1d\x8e\xc9\x43\xbc\x7f\x13\xc8\x7d\xd2\xe5\xdf\x68\x72\xdb\xfe\xa5\xdc\xcc\x60\xf7\x64\xd7\x1e\xed\xbd\xf2\x5c\xf8\xb9\xd5\x8f\x9a\xa1\xbe\xdf\x65\xfb\xd4\x0d\x2a\xd8\x4a\x42\xe7\x78\x61\xf0\xfb\xd4\xe2\x9c\xe3\x1d\x0f\x7f\xc8\xdc\xf8\xf7\x3f\x94\x7f\xb5\x28\x97\xfd\x65\xe8\x18\x2c\xe7\x81\x32\xc0\x4c\xcf\x14\x43\xdc\x46\xff\xaf\x16\x43\x51\x25\x9f\x0e\x13\x6f\xdf\xde\xa9\x8e\xa2\xf5\x5a\x07\xdd\xa1\x5c\x07\x11\x9e\x2f\x96\x6a\x0c\x57\xce\x60\x47\x76\x64\x3c\xd2\x19\x55\x04\xe0\x43\x50\xe2\x65\x87\x4f\xe6\x01\x44\x2c\x75\xc5\x10\x14\xeb\x47\x5d\x90\xf9\x73\x8c\x20\xa1\x73\x99\x02\xb3\xbf\xe7\x6a\x61\xda\x60\x24\xbb\x67\x39\x2a\x49\xa0\x0d\x92\x0c\xca\x28\x1a\x22\x64\xd4\xbc\x64\xa8\xd8\x8d\xa2\xd2\xc3\x84\x05\xe8\xb4\x92\x4a\x8a\x68\xdc\xce\x89\x25\xa4\x35\x27\xc6\xb7\xab\xcf\xc6\x46\x17\xa9\x2f\x5d\x8a\x04\x04\x02\x3d\xf8\x5d\xfc\xf6\xd1\x6f\xca\xda\x04\x43\xed\xb0\x71\x86\x88\x2b\x67\x25\x02\x79\x31\xc0\xf1\x2a\x49\x03\xeb\x0f\x90\x19\x88\x95\xf1\x5c\xb4\x28\x08\x1b\xba\x67\x80\xea\x2a\x4f\x88\x03\x6d\xb2\xdc\xab\xb8\xc4\xc2\xcc\x7c\x02\x23\x42\xe4\x46\x4b\x4b\x2a\xf9\xca\x98\x62\xea\x79\x96\x7b\xcb\xc4\x10\xbc\xda\xf9\x94\x4f\xf1\x0f\xba\xcd\x2a\x5c\x87\x55\x3a\x9c\x79\x73\xec\x5a\xf9\xef\x0b\xca\x24\x07\x3b\x19\x7d\xda\xc2\xf1\x43\x0f\x4c\x8e\xe3\x12\x10\x9c\x1a\xcb\x26\x28\xa7\x0b\xc0\x32\xaf\x98\x89\x5b\x1c\x96\x69\xac\xa6\xba\xae\x00\x70\xa0\xff\x30\x10\x8f\x28\x93\x9d\x71\xa5\x25\x54\x4d\x9b\xea\xd6\xf5\x59\xa8\xef\x5e\xda\xd3\x9c\x95\x51\x04\x1b\xa0\x01\x99\xb7\x6b\x6d\x6b\xf3\x2b\xa3\xa8\x09\xbd\x45\xb8\xd7\xbc\x41\xd7\x6b\xa5\xd7\x17\x07\xb4\x37\x6a\x7d\xc4\xf2\x41\xf3\x28\xa8\xda\x06\xbe\x70\xbc\xb8\x46\x55\xb1\x16\x79\x92\x8b\xca\x09\xba\x93\x19\x78\xd6\x18\x5d\x79\x86\x78\x36\xd9\xa2\x1a\xcf\x96\x03\xb8\x95\x64\xd7\x55\x7c\x68\xb0\x28\xcd\xed\xfa\xea\x49\x14\x09\x94\x83\x5d\xec\x18\x90\x2a\xc9\xe3\x27\x13\x03\x35\x7b\x32\x29\x9c\x86\xd5\x86\xc3\xad\x08\xc0\x81\x71\x34\xc2\x9e\x86\x05\x13\x57\xec\x8c\xb9\x0a\x05\xf3\x75\x05\x73\x0d\x9e\x74\x2d\x0c\x27\x2d\x98\x35\x4e\x5f\x31\x30\x56\xa7\x1b\xcf\x7e\x5d\xf7\xde\x17\x8c\x1d\x9c\x09\x70\x23\x39\x22\x95\xff\xbf\x5d\xac\x75\x4f\x00\x2a\x72\x11\x45\x6f\x84\x79\xbe\x31\xc8\x60\xc6\xbd\x08\xa1\x36\x80\x4b\x78\x5c\x10\x72\x41\x26\x93\x02\x06\xe0\x22\x88\x5a\x5d\x9a\x9f\x2f\xca\xf5\x5f\xca\x6b\xa5\xf3\x1a\x8f\xe1\xc2\x0a\xc8\x81\xff\x69\x41\xca\x57\x68\x85\x8f\x79\x4d\xfc\x8f\x48\xce\x0e\x3e\xd6\xdb\x39\x9f\x70\x0b\xeb\x26\xce\x41\x0f\x13\xa3\x21\xfa\x20\x00\xab\x65\x45\x3a\xd3\x66\x90\xb3\xad\x7d\x08\xdb\x2e\x9c\x7b\x40\x39\xdf\xba\x89\x94\x26\xcb\xf4\xbd\xc2\xdb\x4e\x1e\x66\xd5\x57\xab\xba\x7e\xaf\xf0\xe9\x42\xcb\x23\x75\x9d\xa3\x20\x52\xd7\xba\xd5\x68\x28\x3f\x58\xb1\x82\x16\x13\x36\xa3\x1b\xeb\x91\x70\x82\xbe\x99\xcd\x40\x34\xee\x7a\x2c\x1b\x99\xaa\x5a\x49\xce\xcb\xba\x36\x6f\xd4\xf0\x6b\x5a\x88\x9b\x7c\x95\x15\xbf\x7d\xf5\xe6\x65\x5d\x77\xc3\x5c\xba\x35\x3f\xe6\x2b\x8e\xc9\x86\xbe\xe7\xa9\x5e\x7e\x80\xc1\xfc\x9d\x3b\xb0\xbe\x13\x9e\x08\x08\xa2\x5f\xb5\xcf\xca\x46\xf6\x3b\xbb\xb9\xd0\x52\xf7\x90\xa2\x09\x9d\x9d\xed\x21\x67\x13\x63\xe8\x13\xf4\x52\xc4\x07\x8f\x89\x11\xe2\xae\x66\xa7\x86\x27\xe2\x91\x32\xe7\x64\xb7\x6d\x8f\x3b\x4d\xa3\x65\x2b\xd9\xef\x9d\x64\x3a\xc4\x6d\xfb\x5a\xfc\x54\x50\xe8\xe7\xd2\xc8\x9b\x0a\x07\xec\x73\x49\x95\xd8\xa7\x4a\xaf\xed\xcf\x4b\x87\x82\x61\xd6\xfc\xe7\xa5\x5e\xee\x0d\x56\xbf\x3d\x6d\x08\x5e\x8b\xef\x0b\x00\xdf\xd8\xb0\x92\x39\x7d\x72\x1b\xd6\xbe\xc1\xc7\x8e\xb7\xec\xd0\x99\x99\xc4\xf9\x36\x3f\x34\x31\x0f\xe7\x3a\xf9\xe4\xad\xb7\x61\xa1\xaf\x71\x79\x5d\x0f\x71\x52\x46\xd1\xd0\xcc\x4a\xa3\xfb\xd9\x77\xd6\x5b\x50\x95\x45\xb2\x1c\xe4\x6c\x3f\x37\xd2\x3a\xea\x2e\x8d\x70\x8e\x0f\x55\x01\xbb\x35\xf4\xdb\x1e\xb4\x98\xa6\xd7\xf6\xa6\xd7\x4e\x7a\x21\xe9\x02\x77\x40\x67\xbb\x9f\xe0\x3e\x09\x49\x8f\x2c\xb7\xfb\xa9\x17\x7a\xc7\xe2\xdd\xf8\x48\x1e\x3f\xa1\xd7\xf6\x6c\x6b\x1d\x20\xb0\x49\xe1\x4e\x77\xed\xba\x26\x8a\x86\xf1\xdd\xe5\xf5\x62\xbd\x24\xb0\xfb\x5d\x80\x1b\x3b\x5b\xcf\xaf\x17\xeb\xc9\x6c\x99\x26\xf4\x3d\xd3\xb1\xf4\xd6\x5c\x41\x62\xd7\xc3\x9b\xb9\xe9\x9b\x14\x3b\x8b\xd8\xea\x78\xad\x8e\xf1\x4d\x01\x13\xc3\xf7\xb6\x3f\x83\xc4\xba\x1f\x6e\x6c\x1f\xbc\x3f\x0d\x3a\x5b\x42\x7c\x3b\xbd\x16\x37\x07\x38\x1a\x06\x7f\xe1\x1d\x15\xbe\x90\x4a\xec\xd9\x8e\xde\x4e\xa5\xd1\xd1\x1f\xdd\x8a\xba\x3d\xb9\x43\x85\x60\xce\x20\x19\x58\x71\x81\x55\x84\x50\x6c\x6f\xe5\x37\xa7\x32\x4a\x66\x5d\xdf\x7c\x5e\x41\x09\x60\xde\xe2\x06\x10\x42\xcd\xdf\x95\x1d\xcc\xd3\x47\xde\x42\xb1\xc8\xcb\x5c\xf5\xa0\x24\xa9\x6d\x5e\xe9\x4d\x03\x1d\xd9\xa8\xa1\x56\x35\x78\x53\xec\x19\x8f\x1d\x33\xaa\xf5\x0c\xb4\xc4\x2f\x2d\x76\x87\xca\xb2\x5b\x29\x11\x4b\xca\xd1\x80\xa6\xd7\x44\x93\xdc\x70\x76\x6f\xdd\xce\xd3\xe1\x0c\x9d\xc4\x81\x91\xc8\x59\x1a\x54\x31\x39\x51\xd5\xe7\xe5\x08\x7a\xd4\xd0\x6f\xf2\x9c\x33\x64\x3e\x3d\x66\xc5\x81\xb3\xae\x63\x3b\xbd\x13\x71\x4e\x88\x7b\x60\x1a\xca\x70\xf9\xe7\x15\x7f\x2e\xf6\x77\xcf\x0f\xf6\xee\x64\xec\xf2\xde\xf2\x58\x92\x41\x58\xff\x04\xeb\x8f\x22\xef\x89\x82\xc7\x3a\xc0\x03\xdf\xed\xf9\x5c\x4e\xab\xa0\x55\x8d\x15\x20\x38\x13\x09\x92\xb6\x5b\x63\x2b\x5d\x9e\xa9\xf3\x29\x28\x00\xe8\x06\x7a\x9c\xd3\x13\x72\x3a\xf1\x7e\xde\xd1\x92\x36\x11\x1e\x6c\x2a\x38\x42\xe6\x2d\x50\x23\xc0\xff\x42\x8e\x59\xf4\xc0\x0f\xd4\x72\x7a\x0f\xbb\x62\xff\xa9\x65\x4a\xdf\xe5\x14\x46\x28\xf0\x41\xb5\xa0\xa1\x7b\x51\x14\xb1\xc7\x5b\x8b\xbe\xe8\x21\xd6\x82\x99\x3e\x75\x0d\x4e\xf5\x12\x88\x08\x7a\x9d\xf2\x75\xc7\x4f\x37\x59\xa5\xde\x40\xae\x5e\xb6\xba\x83\x68\xe5\x7e\x89\xfd\x9d\xfd\xd9\x90\x64\xf5\x14\x5e\x92\xfb\x4a\xc2\x35\xa6\xae\xa1\x16\xe5\xa7\x0a\x47\x38\x0e\x5b\xb2\xa7\xec\xa1\x23\x7c\xbd\x06\xd1\xd0\x2f\x43\x99\x32\x14\xa9\xeb\x2f\xf5\xcd\xcf\xab\x35\x3a\xe8\xc2\x3c\x69\x7f\x66\x3d\x74\x61\x91\xe0\xe6\x13\x8f\x36\x52\xec\x46\x64\xa0\x1a\xd7\x5e\x30\x2a\xb2\x3f\x70\xa6\x39\xca\x5c\x2f\x86\x99\xe7\x3e\x8e\x6e\xd2\xa9\x04\x33\xb7\x77\xfc\x23\x5c\x41\xfd\x22\x94\x18\x11\x7a\xef\x50\x15\xd3\xc0\xa4\xc2\x66\x37\x3a\x91\x53\x6f\x33\x78\xb9\x0e\x1b\x11\x54\x35\xb6\xf3\x81\xfe\xb5\x4a\xc3\x24\x02\x3c\xa0\xb6\x59\xd2\x19\x68\xa0\xd5\x8e\xf6\xd0\xab\xeb\x2d\xce\x5e\x91\x3c\x8d\xb8\x38\xa2\xf9\xea\xaf\xb9\xda\x62\xeb\xad\xa9\xfa\x1b\xec\x95\xae\xc1\x2d\x3e\xec\x13\x80\x76\xb7\x0b\xea\x9c\xe8\x95\x79\xac\x00\xe7\x44\x2f\xbd\xe2\xdf\x89\xbd\x6f\x19\xe3\x3d\xd2\xf4\xd1\xa0\x4d\x66\x09\xf8\x2b\xed\xc7\x19\x1c\xd9\xc2\xbe\x42\x4f\x15\x58\xe8\xfd\xa5\xac\x50\x17\x06\x39\x81\xbc\x80\xf6\x21\x13\xf3\x1a\xdd\x78\x87\x9c\x68\x60\x2c\x76\xe6\x2c\xf1\x7c\x59\x06\xcf\x85\xff\x70\x87\x8a\x8a\x4a\xc8\x8a\x50\x88\xf1\xa9\x56\xd0\xb2\x17\x7f\xe2\x2b\x3a\xe2\x30\xbf\x03\xe2\x11\xff\x4c\xf2\x2c\x6e\x4c\x02\xb4\xb6\xe9\x49\x63\x40\xe5\xb0\x2f\x0c\x1d\x23\x95\xbc\xe2\xe1\x41\x08\x87\x16\xba\xc8\x97\x7a\xcf\xfd\x81\x97\x87\x37\x1c\xc6\xc7\xb4\x4c\x9f\xda\x6e\x4e\xe5\xac\xb4\xaf\x7c\xbd\xae\x06\xc6\x9e\xdd\xdf\xd4\x8d\x2a\x3b\x6f\xb9\xca\x1c\x58\xac\xd8\x4f\x22\x8a\x62\xcf\xae\x6c\x12\x1a\xa1\x01\x14\x46\x2c\x59\x19\x1c\x8f\xbe\x08\xca\xbf\x20\x64\x3e\x9a\x8c\x52\x59\xd7\xed\x54\x83\xe0\xe4\x36\x27\xcb\x81\x96\x6d\x02\xe9\x3b\x11\x07\x29\x11\x49\x1e\xf6\xf6\xb8\x0b\x29\x70\x30\xef\x4b\x5a\xe6\x69\xb5\xb5\xaf\xbc\xd1\xe8\xc1\xdc\xd0\x2a\x74\x70\x16\xd5\x40\x9d\x4e\xf4\x86\xab\xaf\x73\x5e\xac\xbb\x20\x5c\x8f\x82\x12\x4f\xb4\x3a\xec\xf7\x42\xaa\xea\x9d\x38\xac\xb6\xdd\xe4\xc3\xd9\x89\x42\xab\xfd\xa8\x7c\x13\x8f\x4a\x61\xec\xc0\x86\x6e\x1a\xdb\xbd\x41\x1a\xd4\x15\x2d\xa8\xef\xea\x1a\x99\x85\xc2\xee\x22\x4a\xde\xdd\x87\x6d\xb7\x64\xdb\xab\x4c\xad\xb6\xf1\x37\x02\x50\xbd\xae\x8b\x43\x00\xf4\x15\x7e\xa2\x63\x63\x3b\x45\xdf\x58\x9b\xa7\x76\xf2\xee\x3a\x38\x37\xf5\x13\x9d\xd5\x8a\xe7\x47\xbe\xfe\xba\xdd\x66\xf8\xa6\x2a\xc4\x2d\x9e\x9e\x27\x6a\xff\xee\xdf\x4c\x07\xdc\x47\xa6\xa8\x6b\xf7\x13\xdf\xc5\x5b\x3d\xa6\xe3\xac\xc9\x40\x8b\xb9\xdc\x6c\xf9\xe0\x24\xd0\x9a\x84\xdc\xaf\x8f\xde\xe7\xed\xe1\xde\xad\x92\x16\x1a\xb1\x5e\x2a\x44\xcc\x48\xa8\x0a\x6a\xf6\x24\x69\x61\xd9\xd9\x43\xa7\xae\xf9\x3c\x56\x1d\xb8\x0d\xaf\x0a\x24\x8d\x79\x37\xc3\x7f\x4f\xa8\x24\xe6\x18\x3a\xdb\x5b\x78\xf4\x04\x83\x6b\x65\x6c\xb7\x54\xc0\x4a\xa0\x7f\xd7\x01\xe7\x8c\x16\x16\xd8\xf7\x22\x56\x24\x8a\x86\x32\x8a\x86\x21\x9e\x87\x1e\x8c\x10\x1a\x88\x9f\x81\x06\xb2\x99\x7e\xe0\x77\x6f\xf9\x3f\x43\xb2\xb8\x52\x5f\xe1\xf4\x72\x85\x7d\x0d\xcc\xa5\x74\x25\x7a\xb6\x37\xf7\x99\xb9\xc5\xa2\x04\xd8\x59\xd6\x8c\x95\x75\x7d\x8c\xa2\xc7\x8b\x3f\x0e\x9b\xff\x95\x24\x13\xfd\xcf\x66\xb3\x7c\x8c\xe8\x36\x25\xe9\x2a\xe0\xd1\xe8\x18\x66\x7f\x6c\xa9\x32\x1d\x88\x8c\x0f\x6d\x50\xf1\xe2\x6b\x21\x9f\x37\x1d\xd7\x00\x45\xaf\xb6\x99\x7c\x8e\x20\x40\x08\x1b\xf0\x1f\x4f\x92\x2f\x86\x2c\xaf\x6b\x09\xfb\xe8\xe8\x7f\xff\x1f\xff\xd7\x88\xd0\xff\xf8\xf7\x7f\xff\x77\xc6\x72\xe2\x6f\x22\xb6\x60\x3b\x9b\xf9\x47\xbe\x7a\x2e\x76\xbb\xac\x5c\xc7\xa3\x43\xb9\x16\x23\x72\xf2\x70\x83\x9c\x05\x65\x5e\x3a\xde\x5d\x6a\xdd\xf6\xc8\x45\x75\x79\x88\x22\xe9\xd7\xa7\x02\xe7\xb4\x20\xe0\x82\x8c\xc7\xf6\xa5\x16\xa6\xb3\xa9\x4f\xe7\x05\x1c\x50\xdd\x4a\xe3\x00\x52\x11\x6a\x0b\x9c\x98\x9b\x44\xd1\xcc\x87\xf9\xe8\x73\xfc\x9b\x8f\xd0\x62\xca\x55\x4a\x9f\x15\xfa\x8c\xb0\x70\x46\x70\xad\xb8\x9a\xcc\xe6\x66\xe8\x59\x11\x9c\x5a\xa9\xff\xb3\xf4\x8b\x88\xa2\xb8\x38\x2b\xb3\x75\x62\x18\x6f\xe4\x4b\x3f\x12\xf5\xa6\xfc\xbf\x23\x6f\x5a\xf8\x2a\x8a\x84\xdd\x7a\xc1\xf2\x75\x67\x7b\xf3\x16\xb7\x99\xa1\xb8\xf6\xed\x31\x14\x2e\x7e\x72\xa2\xa2\xfc\x9e\xdf\xbd\x91\xbc\x0a\xb6\xca\x4f\x1e\x5e\x86\x4a\xd6\x5d\x45\x74\x46\xde\xe4\x7c\xe0\xd6\x8d\x57\x6e\xe9\x59\xf6\xaa\x66\xc7\x38\xb0\x83\x84\xbb\x10\x2d\x58\xd9\x47\x9f\x9e\x6f\xe2\x43\x14\x0d\x57\xe4\x5e\x7a\x87\x95\x7f\xe1\x7c\xed\xd7\x23\x8a\x26\x33\xa6\x0b\x33\xa8\x4c\x7a\xe3\xc9\xf2\xb2\x02\xe8\xf8\xef\x55\x2c\xe9\x67\x9c\xc4\x10\x4f\xbf\xe2\xf1\x81\xe8\xfb\xe9\x00\x8d\x61\xec\xc5\x70\x55\x55\x7a\x1c\xc1\x22\x30\x3c\x71\x4c\xcc\xe0\x4c\x38\xeb\x31\xe2\x1d\x19\x1c\xb9\x4f\x8a\xcf\xbe\xb9\xf9\x03\xf9\x35\x20\x41\x89\x6f\xe6\x8b\xbf\x8c\x81\x70\x6c\x71\x78\x7f\x9f\x6c\x41\x66\x7e\x6a\x8c\x82\x3d\x4e\x05\x4c\xf0\xdb\x64\x8b\x92\xb0\x4d\xf1\xe7\x04\x16\x4e\xfa\x68\x96\x24\xc9\xc5\xa3\x86\xaf\x02\x3e\x13\xf3\x91\xbc\xb9\xce\xe2\x27\x4f\x9f\xd2\x47\xcd\xff\xa6\xc9\x53\x32\x4a\x47\x4a\x66\x65\x85\x6a\xbc\x11\x19\x8f\x5a\xc8\x48\x17\x8f\x10\x79\x68\x62\xea\x9f\x74\xe2\xbb\x18\x49\x62\x9f\xad\x72\x75\x97\xea\x12\x2e\x1e\x6d\xf2\x42\x71\x99\x3e\xca\x8a\xfd\x36\x8b\x4d\x1c\x7b\x4a\x2e\xf4\xcd\x17\xd5\x88\x8d\x9e\x5a\x14\xc5\xef\x28\xbe\x86\xb0\x92\x55\x14\x05\x89\xde\x09\xc4\xf0\xdc\x83\xc9\x46\xb0\x39\xf7\x2a\x76\xea\x3a\xb6\xda\x8b\x40\xa9\xf1\x68\x84\x37\xb9\xf6\x39\xa7\x4f\xd7\xb2\xbb\x99\x37\x53\x14\x91\x51\xdf\xe5\x3b\x2e\x0e\x2a\x2e\xa7\x6b\xae\xd0\x63\x02\xcb\x7c\xa6\xd7\x9e\x5b\x9d\xc7\x98\xd0\x5b\x72\xff\xcf\xdc\xd2\xfe\xed\x7c\xe8\xd2\x9f\xf2\x18\xdb\x46\x47\x3b\x71\xa8\xf8\x61\x3f\xa2\x3b\x42\x2b\xae\x6c\xf6\x77\xf4\x49\x42\x4e\x83\x6f\x7a\x13\x1a\xdc\x48\x3f\xf5\x53\x1f\x81\xe1\x18\x7b\xba\xfa\xbc\xb9\xcb\xe0\x9b\x89\xbb\xbd\xf7\x74\x1a\x15\x78\x26\x8d\x63\x3e\x37\xbd\x97\x8e\x46\x64\x60\x7b\x72\xf4\xbf\xff\xcf\xff\xbb\xd1\x0a\x09\xea\xf7\x2c\x07\xfb\x4a\xfd\x35\x6d\x97\xc9\x66\x7e\xd0\x8b\x72\xcd\x44\x73\x46\x3d\xd0\xe5\xde\xfb\xe8\x5d\x6c\x4c\xfd\xfa\x46\x4e\xcb\x4a\xfd\x0b\x7d\x4d\xdb\x4b\x75\x43\xad\xb6\xbb\x6c\x80\x6c\xab\xa9\x0f\x88\x1b\xf7\x6d\x70\xac\xb0\x57\xc1\x6e\x8f\x82\x4d\x35\x66\x4b\x60\xec\x07\x06\x98\x96\x56\xfe\xb0\xf7\xb5\xb5\x69\x2c\x3c\x77\xb5\xf3\x8e\xa2\xb0\xe3\xae\x92\x28\x82\x3e\x66\xfe\xac\x9e\xc3\x86\xb9\xb2\x7e\x4b\x7a\x2a\xc6\x92\xa4\x7c\x3c\xbe\x9c\x25\xf3\xbe\xa9\xca\xbc\xd9\x53\xd1\xa7\x49\x42\xd2\xd6\xaa\x3a\x0d\x3e\xfd\xdd\x93\x24\x21\xa7\x93\x16\xec\x51\xde\x33\x9e\xb5\xc1\x19\xc3\xeb\xda\x17\x68\x00\x7a\xb8\xe1\x3c\x48\xdf\x0b\x5a\x72\xbe\xae\x0c\x46\x8c\x03\x46\x4b\xf5\xe5\xc8\xd7\x1b\x13\xfa\xee\x5f\xd4\x22\x1b\x15\xf2\x74\x9d\x1f\x0d\xbf\xd2\x57\xf9\xb1\xd1\x11\xe7\xff\xff\xeb\x88\x5b\xda\x50\x69\x69\xbe\x9a\x4b\xf0\xc8\xfa\x96\xe8\x94\xff\xaa\xca\x57\x3d\xa4\xf2\x55\x7d\x2a\x5f\x70\x30\xdf\x73\x99\x41\xe1\xbe\x0c\xd7\xd6\x05\x3b\x97\xf8\x44\x1f\xb4\xf4\x93\x55\xd7\x62\x0f\x1a\x8a\x85\xf0\xa2\xc3\x3d\xe9\xc1\x0b\x6d\x83\x8e\xc2\x56\x0a\xb0\xa3\xdd\xb8\xaa\x07\x90\x94\x76\xb5\xe6\x9e\x65\x7f\x69\x9f\x06\x82\xc7\x00\x19\x98\x79\xa0\xd9\x5b\x4b\xf7\xdc\x97\xc4\xd7\x42\x9f\xd7\xd9\x1b\x53\x4c\xe7\xf2\x94\xad\x54\x7e\xe4\x2f\x10\x72\x7c\x00\xca\x71\x7f\x3b\x0f\x7b\xbe\x5b\x68\x48\x0c\x43\x85\xbb\xb0\x13\xd8\xd9\x4f\xa7\xd7\x5c\x87\x7f\x93\xc7\xe5\x5f\x53\x54\x1b\x15\x68\xf9\xb0\x26\x97\x7b\x96\xa8\x99\xca\x06\x66\x83\x6d\x34\xb3\xbc\x48\x9b\xf3\x4f\x27\x49\x4b\x0a\xb9\x7c\x05\x7f\x9f\x1a\x0c\x8d\x46\x92\x6b\x54\x4a\x02\x55\xc4\xaf\xf2\x92\xc7\x01\x6e\xa8\x95\xf9\x4b\xea\xe9\x04\x1d\x7e\xe8\xc4\xdd\x5b\xc8\x40\x00\xbd\xb4\xb8\x64\x2e\x16\x0d\xf0\x1b\xb9\x9d\x17\xec\x2b\x00\xa0\xf2\xa1\x46\x05\x00\x76\x05\x21\xe3\x26\x57\xa7\x21\x0e\xbb\xc7\x52\xee\x86\x1d\xeb\x95\xa5\x3b\xc0\x74\x55\x6f\x06\x2d\x15\x33\x6f\x88\x03\x5d\x1e\x03\x09\x58\x05\x90\x13\x93\x53\xd7\x97\x75\xfd\xf8\x8f\xc3\x93\x24\xb9\x36\x37\x52\x4c\x82\x2a\x7f\xaf\xd8\x07\x26\x15\x72\xd4\xac\xeb\x5a\x21\xe2\xf9\xf3\xa6\x5e\xb1\x0c\x95\xd7\x4c\x86\x9d\x68\xb5\xd9\x7a\xae\x79\x33\x47\x89\xc3\x6a\xdb\xa3\xfd\x37\x9c\xf1\x5e\x01\x2f\xca\x75\xec\x7d\xd8\xf3\x3a\xa3\x7c\x15\xc1\x50\x06\x3a\x82\x28\x42\xad\x86\x39\x02\xb4\xe8\xf6\xbb\x8a\x61\xfb\x0e\xd4\x35\x32\x46\x08\x7e\xaf\xeb\xf7\x77\x23\x9a\xbb\x9f\xba\xd0\xfc\xaf\xa9\xe4\x9d\x9a\x88\x0e\x9d\x5b\xf9\x23\xa3\xe1\x70\x3a\xb7\x40\xeb\x41\xf9\x79\x9d\x33\x38\x77\x98\x5b\x9d\x07\x9f\xe4\xc1\x19\x46\x51\x1c\x9b\xac\xea\xda\x01\xdf\xeb\xfc\xde\xe0\x72\xf1\xf4\xa4\xd4\xc5\xfd\x70\x28\x54\xbe\x2f\xb8\xb7\x4f\x73\x42\xb0\x1e\xed\xef\xba\x8d\x6c\xec\x6b\x83\xcc\x1b\xcd\x78\x67\xc1\x96\xec\x0d\x77\x1d\xc3\x0d\x0a\xc4\x8f\x48\xf7\x99\x79\xb0\xa1\x7a\xaf\x0d\x52\x6e\x2c\x7a\xa8\xfd\xdb\xa4\x1b\x58\x20\xc9\xe9\x75\xb6\xae\xeb\x61\x5e\xd7\x39\xfe\x99\x00\x1a\xd4\x1d\xe2\x44\x35\x88\x6b\x36\xe2\xe8\x22\x00\x00\xcd\x5a\x85\x7d\x68\x0a\x75\x9f\xd0\x2c\x0c\x86\x0f\x40\x1f\x54\xd7\x0e\x08\xa2\x6f\x68\xe8\x81\x71\x3c\xf5\x9e\x8b\x43\xa9\xa2\xa8\x81\xf4\x75\x0a\x1b\x74\x30\x19\x9a\x7c\x0a\x56\x2d\x1a\xa8\x94\xa5\xb3\xe6\x58\xb1\x02\x4c\x4b\xe7\xf8\xcf\x02\xff\x69\x12\xa6\x10\x30\xc8\xd8\x7d\x29\xd6\x3c\x5d\x2d\x56\x4d\x1c\x45\x53\x6c\x3f\xf0\xc9\x72\xe2\xfd\xfa\x62\x79\xb2\x50\xcd\xe6\xfb\x6a\x91\x2c\x7d\x93\xd6\xc5\x13\x97\x4b\x72\x1a\x28\x79\x77\x8f\xf7\xe4\x0f\xc2\xa0\x64\x52\xcb\xd3\x4b\xb3\xe6\x0f\x1d\x11\x68\x84\x37\x60\xc3\xdf\x4c\xe3\x60\xfa\xcf\xf5\x51\x6f\x2c\xc9\xda\xb9\x12\xba\x71\x71\xeb\xba\xe6\xd3\x6c\xbd\x46\x64\xe4\x0d\x28\x2e\xcd\xf1\xf6\xac\x28\x20\xb4\x82\x43\xdf\x4f\x43\x0f\xc8\xee\xae\xc5\x96\x66\xd2\xcd\xbd\x44\x07\xe0\x29\xc5\x85\xa1\x77\xa4\x6f\x1a\xc4\x59\x30\x54\x44\x09\x73\xc7\x77\xd7\x5c\x7a\xb3\x5d\x0b\xa7\xed\xf4\x67\x74\xca\xc1\xed\xae\x8d\x6a\x4b\xba\x38\xb7\x67\x36\x62\xde\x02\xc3\xf5\xdf\x92\x8c\x78\xac\x77\x3c\x03\xed\xd4\x27\x99\x3d\x0c\x59\x03\x1b\x20\x5c\x0e\x69\xff\x0e\x11\x08\xc4\xcf\x45\xdc\x9e\xf9\x67\x9f\xc0\x5a\xe9\xce\x3e\x88\x69\x71\xbf\xd5\xd1\x7f\x71\xef\x19\xf4\xe1\x12\x07\xdb\x4c\x3f\x48\x71\xb8\xf9\xd0\x1e\xcc\x62\x7f\x07\xea\xc5\x2f\x0e\xb6\x25\x7d\x07\x31\x95\x7a\x59\xbe\x58\xe7\x4a\xf4\x10\xba\xf4\xb7\x00\x5c\xa3\xbd\x4d\x23\xd4\x5b\x2b\xd6\xda\x42\xf4\xa9\xb7\x13\xe5\xb3\x72\xc5\x2b\x85\x17\xbf\x2c\x2f\x1b\xc7\x94\x97\xa6\xdf\xd7\xf9\x91\x2a\xd2\xf3\x1a\xf4\xd7\x9e\x82\x6c\x1e\x4e\x6c\xec\x7f\xdb\xd1\x29\xec\xb3\xce\xa7\x1e\xb1\xd6\xf9\xf1\xd3\xef\x57\x0f\xbd\xe9\x78\x4b\x0b\x97\x6d\xbb\xcb\x63\x32\x77\x8a\x4f\xaf\x8b\xd3\xdf\x9b\xb3\xf9\x5f\x5a\x16\x01\x3c\xf5\xbf\xf0\x12\xf4\x48\xd9\xdc\x5b\x4f\x40\x31\x6f\xd7\x8d\x86\x2f\x4d\xfc\x6c\xe6\xca\xbc\xca\xb4\x6b\xfa\x57\xa7\x99\x13\x48\x9a\xb5\x31\x6c\x23\x78\xeb\x40\xd8\x6c\xbd\xb5\xd1\x49\x84\xc1\x3a\x99\x5b\x20\xc3\x1e\xd0\x6f\x97\xa0\x93\xcd\xd7\xfe\xb2\x09\xba\xa3\xf5\x68\xd9\x7a\x08\xb2\x2f\x43\xde\x6e\x68\xf7\xef\xce\x76\xf8\x17\x05\x96\xc1\xb9\x5d\xde\x98\x7d\x6a\x89\xe4\x61\xa9\xa5\xb4\x69\xce\xca\x2b\x32\x8a\x4a\xf0\xf9\x0b\x69\x2b\x3e\xe3\xb1\xb2\xaa\x68\xb0\xb9\xd6\x77\xe4\x58\xa2\x28\x03\xc2\x0d\xb1\x8e\xc1\xfd\xf3\x13\x3d\x01\xa9\x27\xe6\x76\xa6\x42\xd3\x50\x50\x5e\x58\x2d\x3c\x68\x30\x3a\x92\x1a\xdc\x75\xd1\x1f\x5e\x00\xae\x89\xd5\x4b\x03\x1a\x8c\x74\xce\x26\x75\x2d\x0c\xf4\x69\x83\x05\xee\xbf\x99\xe5\xc6\xed\xc7\xff\x22\x61\x2c\xe6\xac\x94\x00\x15\x88\x38\x40\x04\xad\xeb\x9f\xe5\x31\x26\xd4\x02\x08\xfa\xcd\x57\xac\x09\x29\x81\xf2\x4a\x4b\x2a\x7e\x52\xde\x49\xca\xb5\xec\x04\x84\xa8\x3e\x93\x2a\x5a\xe0\x43\xb1\xa2\x41\xff\x3a\xd8\xba\x35\x08\x75\x28\x89\x35\x0d\xa2\x2b\xe3\xf1\xf2\x55\x7e\x84\x39\x8b\xf7\x7f\xa8\x48\xe1\x55\xe4\x30\x9e\x99\xaa\x98\x6f\x9a\x50\xa8\x4c\x1f\x2e\xb2\xc5\x1e\x80\x11\x68\x68\x7c\xda\xa6\xf9\x0d\x26\xd4\x68\x04\x3c\x1f\xb4\x32\x8c\x13\x70\xc7\xd7\xd7\x91\x0c\xb6\xbc\x46\xfd\x74\x88\xd1\x64\x7b\xe6\x03\x7b\x37\x37\xc6\x9b\x36\xbb\x28\x3a\x94\x0e\x9c\x5e\xd7\x7a\x38\x8d\x46\x78\x9f\xb3\xfc\xf4\x16\x6c\xd9\xe8\x6f\x62\x7b\xaf\xbc\xa1\xa3\x11\x21\xf4\x28\xf2\x75\x2c\xc6\xcc\x78\xe6\x17\x74\xd5\x57\x18\x42\xa4\x61\x71\x2b\x62\xc4\x49\x20\xe1\x5a\xff\x90\xc9\x0f\x80\x32\x5f\x22\x4d\x86\x61\xc8\xa0\xf1\x9e\x8d\x57\xd4\x17\x3e\xdc\x26\x96\xaf\x19\xdb\x9f\x88\xdb\xd6\xa0\x0e\x9b\xe6\x66\x54\xb0\x8d\x9e\x3e\x80\xf5\x05\xf8\x60\x62\xcc\xde\x5a\xf4\xff\x02\x71\x41\x8a\xa9\x12\x04\x15\x30\x15\x41\xdd\x93\xa1\xb5\x60\xdd\x06\x60\x17\x58\x1d\xe3\xc8\xbe\xee\x0e\x42\x7f\x87\x1e\xbc\x74\xb0\x01\x3e\xc4\x7e\x0c\x98\x06\x3f\xfe\xaf\x78\x2f\x79\xbd\xce\x8f\xf5\x9e\x7c\xf6\x38\xc7\x4b\x3a\x8e\xdb\x8f\xd9\x8e\x23\xc6\x85\x5e\xe6\xd6\xd5\xe0\x8b\xee\xb0\x6e\x4d\xc8\x2f\xf6\x65\x7b\xb8\xb5\x15\xcb\xb0\xd1\x15\xcc\x1d\x42\xc5\x98\x19\xb8\x6e\x78\xe3\xbd\xd0\x73\x85\xaa\x21\x93\x17\x04\xa8\x7f\xbd\x55\x63\xdd\x11\x4f\xb1\xa2\x15\x5d\xd1\x8c\x16\x84\xd0\xb5\xee\x3f\xdc\xb1\xb6\x3c\xce\xcc\x48\x15\xf4\x85\x0d\x2d\x42\x4c\x62\x72\xb1\x71\xcf\xb2\x51\xb4\x76\x7f\x5f\x90\x7c\x13\x1f\x45\xbc\x21\x8c\x1d\x45\xbc\x26\x64\x33\xdd\x8b\x7d\x4c\xe8\xda\xfc\x5b\x4c\x26\x4e\x8b\xa9\x47\x71\xc8\xd6\x8b\x64\x69\xdc\x17\x36\x88\x20\x0c\xc9\xed\x5f\xd9\x78\xec\x1e\xae\xb7\x2c\xa1\x7b\x96\xd0\x1d\x4c\x00\x7a\x84\x6f\xe9\x5d\xf3\x94\xbd\xb3\xcf\x04\x47\xf7\x94\xbd\xbd\xbc\x8b\xa2\x9d\xff\x72\xbd\xd5\x95\x0b\x03\x2e\xc8\x78\xbc\x75\xc3\x7d\xcd\xa0\x09\xf4\x06\xdb\x40\xdf\x37\x05\x38\x4b\x70\xbd\x0e\x37\xce\xc1\x23\x4d\x08\xbd\xf1\xa3\xd6\x7e\x14\xb9\xd8\x5f\xbe\x8f\xa2\x6b\xbf\x4c\x97\xd1\x7e\x32\x23\x8c\xdd\xf8\x71\x37\x7e\x9c\xae\xda\x7e\xb0\x59\x6c\x3c\x60\xd6\x6b\x07\xa6\xd8\x64\x43\xa8\xee\x13\x5c\x19\x18\xbb\xc5\x25\x7b\xcb\x60\x48\xb7\x84\xbe\x60\x30\xa8\xae\x6e\xd0\x3a\x97\x41\xda\x60\xca\x35\x83\x5b\xd7\x3a\xc3\xba\xde\xf3\xf8\x96\xbe\x20\xf3\xf8\x5b\x69\x66\xc4\x86\xde\xd2\x17\xd4\x91\x5b\xd1\x61\x42\xac\xb3\xe0\xc3\x0f\xdb\xfd\xca\xa0\xb6\x69\xdb\xc3\x89\x7b\x82\x3b\x9f\x76\x44\x8b\x46\x31\x67\x74\x5f\xf6\x51\xbc\xa3\xff\x0a\x93\x13\xda\xff\x39\xd8\xd7\x84\x72\x32\x6d\x4b\xd6\xe4\x44\xdb\xb9\x77\x39\x44\x57\xbb\x40\xbf\x35\xff\xbe\x91\x68\xb9\x24\xf6\x6f\x92\xa2\x4e\x0f\x00\x40\x32\x95\x0d\x19\x6f\xf4\x81\xf0\x06\x6e\x3f\x7a\xcf\x89\xa7\x6b\xd1\x69\x69\x82\x57\xb2\xce\x73\x4a\xf0\xf2\x32\x35\x1b\xe1\x0b\x13\xcb\xcc\x8e\xd9\x6f\x5b\x00\x5f\x74\x99\xbe\x7a\x1a\x54\xd7\x67\x2a\xf7\x56\x49\xdd\x9f\x7a\xc3\x7e\x6e\xa6\x7f\x6c\xef\xf5\x76\x3d\xcc\xc1\xe4\x47\xff\x95\x36\x81\x84\x26\xe4\xe1\x67\x24\x37\x10\xed\x36\x61\x99\x81\xcd\x1c\xef\x18\x3d\xbc\x17\x2d\x3b\xb6\xf3\xcf\x4e\xc9\x29\x78\x68\x22\xf4\x35\xbe\x8b\xbd\x45\xa0\x8f\x7b\x6b\x11\x91\x7e\xe4\xb4\x75\xd0\xa4\xef\xf8\x89\xfe\xec\xbf\x52\xdd\x1b\x89\xed\xdc\x2d\xcb\x40\xfe\x85\x8c\x07\xcb\x13\x45\xb0\xdb\xb6\x61\x28\x67\x20\x21\x36\x78\x10\xf0\x00\xe3\xbe\x1b\xb2\x30\x1f\x2d\xd4\x07\x80\x84\x26\x41\x10\xd6\x48\x83\x21\xae\x45\x37\x25\x20\x5c\x58\xf9\xc4\xaf\xfc\x12\xfc\x76\xdd\x2f\x5d\x2b\x54\xe2\x49\x8b\x3c\x5b\x5a\x2c\x64\xab\xde\x93\x68\xb3\x5c\x1a\x44\x64\x67\x0e\xd9\xdc\x2b\xd7\x9c\xef\x9f\x8b\x7d\xd0\x73\x0d\xe3\xe7\x62\x49\x1f\xac\x26\x5f\x28\x87\x47\xbb\x33\xca\x41\x57\x41\x07\xcc\xdc\x8d\xc1\xea\x0c\x3a\x8c\x08\x41\xbf\xea\x45\xd7\x7e\x24\xec\xaf\xa6\x23\x26\x0d\x6b\xc8\x0d\x2e\xa4\x5f\x38\x5f\x5a\x98\xc6\x66\x78\x1b\x2b\x51\x6b\x1d\xd3\xd2\x39\x83\x3f\x2f\xe3\xa4\x8d\x52\xdd\x2d\x52\xda\xb1\x2b\x59\x08\x5b\x6d\x58\x2a\x14\x2d\x3d\x82\x8a\x28\xda\xa3\x89\x17\xe8\x52\x2f\x59\x42\x1c\x7b\x00\xfe\x31\x99\x9d\x4e\xf4\x79\x30\xd3\x91\x68\xb1\x33\xcd\xef\x4c\x1f\x9b\x99\xe0\xb8\x3a\xc8\x89\x2a\xd1\x93\xfe\x78\x3e\x3d\xf4\xcf\xb9\x95\xe4\xf1\xf1\x79\xdf\x1b\xf4\xd9\x26\xc5\x6a\x1b\xc6\xaf\xb6\x27\x64\x81\xbd\x51\xf4\xbd\x32\x3e\x5e\x8e\x43\x17\x1c\x9d\x1c\xb1\x75\xe2\xd1\xb2\xde\xaa\x5e\xf4\x15\x9a\x19\xf7\x62\xde\xd0\xf6\x59\x96\x9a\x03\xe3\xe8\x5d\xcc\xd1\xbb\x38\xdf\xc4\xea\xf2\x30\x8f\x73\x96\x50\xc1\x66\x8e\xc5\x8a\xa4\xea\xb2\x98\x0b\x16\xe7\x4c\x4d\x0e\x64\x3c\x4b\xe3\x4a\x6f\xa0\x56\x1d\x0c\x30\x7a\x45\x14\xe9\x6c\xbe\x58\x5e\x29\x44\x49\x89\x05\x2b\x26\x07\x7d\xb3\x51\x57\x3a\x36\xce\x9c\x43\xa1\xb3\x5b\x40\xab\x10\x28\xff\xc9\x92\x1e\x20\x17\xc9\x18\x98\xde\x54\x5c\x02\xb2\xe2\x1c\x2b\x91\xda\x8f\x21\x27\x49\xa8\x75\x64\x43\xe4\xba\x9c\xa0\xc7\x2f\xd4\x62\xf2\x64\xc9\x74\xa6\x93\x2f\x96\xf8\x7b\xb6\xf4\x32\xbc\x20\xba\xc4\x27\xe3\xb8\x9a\xb0\x2f\xc8\xb2\x21\xeb\xd2\x12\xbc\xf5\xa5\x93\x51\x94\x33\x68\x00\xe6\x7b\xd9\x34\xd7\x36\x14\x8a\x18\xff\xdb\x32\x8a\x86\xfa\x8f\xa7\xdd\x32\x62\xe8\x6b\xdd\x34\xd7\x76\xcb\x74\x68\xbc\x38\x41\x7b\x6e\x5e\x30\xd3\x1c\xf0\xe5\x04\xb5\x9a\xeb\x34\xa3\x8d\x67\x71\x7a\xa0\xd6\xe3\x38\xf5\xcd\x50\x5e\x34\x08\x29\x46\x01\x0f\x7a\xa2\x00\x47\x82\xdd\x9f\x28\xef\xb8\xaf\x1b\xc4\x1b\xe0\x7f\x22\xe1\x5e\x1b\xe2\x59\xc0\xfe\xd5\x46\xa6\x50\x4b\x76\xef\xd3\x21\xb6\xf0\x73\x5b\x60\x09\x58\xd8\xcf\x67\xa0\x0e\xc8\xa0\x5d\x7c\x1f\xff\x96\xae\xc6\x0b\xd5\xe2\x12\x5b\xa8\xa5\x67\x67\xf4\x1a\x6a\x01\x75\xf1\x90\xba\x10\x43\x45\x9f\xff\xbf\x1a\xce\xfb\x30\xe6\x1d\xff\x68\x3c\x46\x3a\x51\x0d\xf0\x4a\x08\x0f\xe4\x7b\xc1\x06\x4c\xc4\xbb\xec\xa3\xbe\x90\x7b\x7a\x16\x1a\x36\xf9\xc7\x03\x48\x22\x55\x8b\x67\xf0\xa3\x6a\xb6\x0f\xa3\x75\xda\x67\x37\xfc\x37\xab\x2e\x8b\xdd\xc3\xbe\xfd\xc3\x3c\xed\xd7\xb5\x8b\xb9\x16\xeb\x3b\xe2\xb1\xd4\x7b\x2c\x86\xfd\xb9\xff\xfe\xdf\xcd\x3d\xc0\xf9\x79\xa7\x02\xa0\x4e\x35\xbd\xcd\xd7\x37\x5c\x35\xc8\xe8\xc8\x63\xe2\xc2\x1b\x40\xaf\x9c\xf8\xe9\x17\xf9\x72\x9a\x5d\x8b\x23\xb7\x9a\x8b\xcf\xca\x20\x92\x0c\x10\x3d\x96\x09\x6a\xf1\x0b\xc6\x4c\xc0\xbd\x5b\x77\xec\xc8\x63\x5e\x93\x03\x84\xf7\x18\x15\x62\x95\x15\x23\x4b\xde\xfc\x21\x8f\xf1\x05\xd0\x84\x33\x56\xce\xb3\x31\x3b\xf8\x2e\xc0\x69\x36\x69\x41\xa4\x18\x25\xff\x48\xf7\xd8\x08\xec\xb6\x47\xd8\x87\x50\xa2\x79\xce\xe3\x3d\x36\x14\xe7\xcc\x35\xb3\x31\x80\xb4\xef\xc7\xb1\x97\xd1\x3c\x49\xf5\x28\x91\x81\xc5\x48\x06\x6f\xa3\x56\x8a\x8f\x90\xc2\x40\xec\xb2\x03\x95\xe8\xfe\x3a\x66\x07\xeb\x87\x64\xba\x28\xf3\xba\x28\xa3\x1e\xc5\xce\x07\x1f\x62\x07\x3c\xb4\x98\x53\xdc\x18\x77\xf5\x92\x19\x27\x60\x30\xb7\x45\x43\x5a\xdb\x78\x49\xca\x09\xd3\xb5\xa0\xf9\x84\x3d\xf3\x91\x0c\x5c\x97\xca\xba\x1e\xca\x2e\x51\x1e\x02\xe6\x9e\x75\xee\x1a\x33\x61\x0a\x1d\x23\xee\xa7\x61\x99\xfb\x57\xfa\xd5\xf7\x8c\x2f\x27\x59\xe3\xc9\x9c\x4f\xc0\x01\xcc\xdb\xae\x7e\x08\xc0\x4d\xac\x74\x05\x73\xa6\xcd\xf2\x48\x28\x4c\xf0\x92\xee\xf0\x1f\x20\x68\xcc\x43\xfe\x9c\x37\x5e\x76\x54\x90\xfb\x06\xfd\x30\x56\xd4\x3d\xf9\x02\xa2\x4a\x4e\x15\xcd\x5a\x24\x90\x54\x34\x60\xeb\x73\x1c\x79\x66\x3c\x9b\xad\x87\xb3\x99\x10\xb6\x2e\x55\x50\x7c\xe5\xc3\xd7\x1c\x50\xfe\x95\x88\x4f\xfb\x3f\x9e\x38\xd5\x3d\x63\x3c\x8b\x25\x89\x22\x15\x45\x26\xf6\xf2\xb0\x50\xfa\x70\x44\x28\xdb\x98\x33\x95\xc5\x3a\x87\xc9\x44\x2d\xc9\x24\x76\x79\xcc\x93\x74\x46\x68\xa9\xb7\xb3\x54\xcb\x33\x26\x9f\xcb\x83\xe7\xb6\xee\x65\x39\xb6\x59\xea\xa3\x08\x4a\x65\x87\xc5\x78\xac\xf3\x74\x59\xea\xdc\x74\x9e\x51\x04\xca\x5e\x25\xa2\x88\x5f\x49\x10\xf9\xe6\x59\xcc\x27\x33\x92\x66\xe0\x6d\x7a\x2a\x99\x01\x81\x0f\xb9\x37\x81\xfb\x01\xc0\x82\x4a\xb7\x6a\x90\x7d\xb3\x00\xb4\x79\xd0\x67\x1d\xec\xd4\xce\x62\x43\xe1\xbe\x62\x55\x5c\xd0\x2a\x43\x56\x08\x9f\x4b\x6b\xc8\x7e\x13\x51\x14\xaf\x10\x74\x1a\x92\xfd\x26\x08\xa1\x2b\x8f\xbd\x31\xc0\x26\x4a\x06\x0a\xf8\xac\xb0\x5e\xbe\x1b\x7c\xeb\x78\x90\x2c\x40\x19\xf8\x1c\xa8\x17\xce\x93\x8a\x7e\xd0\xad\x18\x07\xbb\x52\x30\xb7\x2d\xdc\x03\xc2\x3c\xe4\xce\xd3\x7d\x5c\x9a\xb3\xdd\x27\xb4\x53\x6d\x6e\xa1\x2d\x12\x98\x38\x08\xb2\xe9\xc7\x9f\x79\xc1\x4a\xc0\x7d\xcb\xa7\xe2\xa0\xaa\x7c\x8d\x10\x49\xb9\xc7\x73\xd7\x07\x14\x08\x4c\x0d\x72\xdc\xbb\x5d\x92\x4b\x27\xa2\xff\xac\xe2\xd2\xb2\x05\xd0\x61\x42\x2d\x7a\x50\xce\xde\xe5\x71\x49\x25\x3e\x18\x20\xca\x66\x69\x69\xd2\xf2\x4d\x9c\x5f\x89\x6e\x16\x2e\x05\x45\x78\xbd\x90\xc8\x7d\x98\xd0\x19\x19\x34\x68\xdb\x1e\x0e\x0f\x24\xcf\xc9\xc5\x85\x5d\x8d\x2f\x75\x93\x32\x58\x8f\x92\xd0\x03\x7b\x55\xc6\x99\x9e\x3b\x87\x28\x32\x2c\x0f\x89\xe5\xd6\x1c\x1e\xea\x7a\x18\x57\xd3\xd5\xf6\x0a\x95\xbf\xd3\xd5\xb6\xae\x2b\x90\xdd\x5d\x40\x14\x55\xd0\x95\x1e\x83\x44\x35\xc8\xd9\xb3\x3c\xce\x58\x31\x55\xc2\x52\x48\xbb\x3e\x7d\xa9\xba\xca\xfa\x7c\x02\x67\x94\xd5\xd8\x3f\xf9\xbc\xe9\xdb\x1e\xb7\x54\x7a\x60\x06\x2d\xcb\x47\x1d\x2f\x03\xd7\xdc\xad\x79\x1f\xc2\x33\x92\x2a\x7a\x68\xf6\x1a\x36\x4c\xa8\xb8\xb2\xe0\x15\x06\x10\x62\x52\xa5\xe2\x12\xdc\x66\x4d\xc0\xb8\x4a\xe3\x0c\x01\x03\xc0\xe7\xf5\x84\xcb\xe8\x07\xa8\xe8\xc6\x02\x1c\x59\x2a\x7d\x26\x33\x1d\xbe\x65\x25\xfc\xbb\x67\x45\xbc\x26\x74\xc7\x32\x7a\x64\x45\xbc\x25\xf4\x8e\x81\x59\x5f\x79\x75\xf4\x46\x57\xd2\x2d\xbd\xd3\x63\x07\xd2\xf6\x05\x9c\x4e\xab\xf9\x96\xb1\x75\x5d\xeb\x4e\xd6\xfb\xe8\x9a\xce\x48\xba\x9d\xac\x2f\xd9\xac\xb9\xe4\x5c\xb3\xf2\x72\x5f\xd7\xe5\x64\x7f\xc9\x8e\x93\x72\xbe\x4e\xb7\xf4\x86\x95\x93\xf8\x9a\xb1\xf5\x7c\x9f\x1e\xc9\x05\x40\xfd\xf8\x28\x3f\xd7\x08\xec\x73\x3d\xf0\xcb\xbf\xa6\xf0\xc5\x2e\xbd\xa3\x37\x97\x93\xd9\x7c\x32\x4b\x6f\xae\x66\x40\xb6\x09\x0d\x36\x2a\xda\x15\xcf\x8b\x78\xf3\xf8\x09\xa1\xb7\x6c\x3d\x7e\x6f\x9e\x23\x6e\xd9\xda\x4d\xb5\x17\x2c\xb9\x78\x71\xf9\xfe\x62\x3c\x7e\x41\x6e\xb1\xe6\xb7\x74\x86\x99\xbc\x65\x45\x7c\x4b\x06\x6f\xaf\xca\x79\xbc\x65\xb7\xf4\xc8\xde\xd2\xf8\x8e\x65\xfa\x52\x73\x1c\xb3\x19\xff\x42\xf7\xe8\x7b\x92\xc6\x6b\x76\x4b\xf7\xec\x2d\x74\xdc\x66\xc2\xde\xfb\x13\xe7\x2b\x15\x60\xdf\xf0\x8e\x18\xdb\x06\x47\x6c\x62\xec\x6b\x0d\x63\x37\x8a\xdc\xdf\x20\xe1\xf4\x5e\xf2\x51\x5b\x04\xff\xb7\xff\xbc\x18\x8f\x15\xb9\x51\x01\x12\x73\x0b\x50\x5f\xe7\xfb\xa3\x58\xf3\x18\xc1\x75\x5a\x89\x75\xd6\xd7\xc0\x1c\xf0\xaf\xe4\x72\x0a\xa0\x1b\x6f\x94\x7d\x4b\xbd\x51\x01\x44\xe4\xe3\xa7\x89\x83\x98\x03\x84\xf2\x6e\x5b\xf5\x25\xf1\x67\x2f\x33\x40\x60\xf7\xb8\xa0\x7f\xec\xef\x46\x77\x4f\x68\xf7\xa2\x8b\x30\x96\x15\x3e\xb6\x90\xfb\x6f\x44\xa8\x74\x9d\x4a\xf5\xed\x64\x10\x34\x48\x12\x27\x63\x9d\x73\x86\xcf\x99\x85\x80\xb4\xa0\x42\x8f\x67\xae\xb1\xf9\xd5\x13\xaf\xb1\xcd\x9d\x26\x87\x13\x71\x96\xc0\x34\x7b\xa5\xe8\xd7\x8a\xfe\x69\xc8\x95\xff\xa6\x58\xd2\xec\x0f\x5f\x9a\x8b\x1a\x3c\x0c\xb3\xfb\xd5\x2e\xe5\x80\x1d\x67\x55\x9c\x7a\xdf\xd1\xf7\x4d\xec\xc3\x14\xdf\x0c\xf1\x58\xa1\x1e\x86\x9e\x4e\xe7\xd1\x5a\x21\xe4\x9c\xba\xd3\x07\x9e\x8e\x42\x3c\xbe\xd7\xd7\xff\xa8\x30\x26\xa4\xb1\xfa\x16\xd4\xdb\xb2\x37\xee\x79\x06\x3a\xfd\xa4\x6b\xa9\xe0\x4a\xfc\x01\xef\x58\x50\x55\x77\xd9\x31\xfc\xc3\xf6\x7a\x12\xfe\x7c\x23\x4c\x59\x68\xce\xa2\xf7\xb2\x75\x3a\x1e\xff\x4d\x9d\xe8\x9f\x6a\xfe\xa7\x9a\x8a\x7d\x65\x49\xf4\xa1\x63\x48\x6a\x71\x03\xc5\x6d\x59\x7d\x23\xc5\x61\xcf\xfe\x54\xec\x5e\xec\xab\x74\x61\xa2\x96\x74\xcd\x8b\xec\x8e\xaf\x75\x95\xaf\xb3\xd5\x87\x2a\x5d\x2c\xbd\x65\xfa\x6d\x80\x7c\xdd\xca\x0d\x94\x2d\xe0\x17\xdd\x31\xcf\x85\x5b\x68\x2b\x67\xaa\xa5\x8d\xb5\x40\x28\xb4\x36\xeb\xdb\x42\x2e\xa7\xab\xac\x28\xe2\x10\xa3\xd9\x42\x53\x0a\x67\xf8\x17\x30\xc3\xea\xf0\x45\xb9\xc4\x37\xf7\xfe\xf1\x41\xdd\x47\x3b\x16\x47\xe8\xf2\xdc\x47\xb6\x2c\x72\x2e\xc1\xa2\x3f\xc3\xf1\xd8\x6b\x05\xcd\x81\x75\xed\x74\xbb\xcd\x0b\x1e\x37\x0d\x26\x27\x12\x2b\x72\xda\xe4\x65\x56\x14\x77\xf7\x66\x8a\x77\x38\xf1\xbc\x26\x43\x0f\x41\x5b\x75\x2f\x19\x83\x1d\xf8\xea\x22\xe8\xf9\x66\xfb\x83\x9e\xa1\x3d\xf4\x7a\xbf\xa8\x58\xf7\x35\xf6\x70\x4f\xfc\x3f\x3f\x11\xff\xeb\x27\xe2\x3f\xfb\x44\xfc\x37\x26\x1e\xfb\xc0\x63\xef\x0c\x27\x5a\x60\xad\x71\xd1\x3f\xbd\x0c\x04\xc5\x50\x79\x1e\x47\xcf\x8b\x7c\xbf\xe7\xeb\x28\x52\x8d\xb3\x11\x6e\xb9\xb0\xc5\x80\x39\x49\x88\x2b\xcb\xfa\x53\x4e\x54\x2f\xa0\x2c\x55\x66\x1f\xf9\x5a\x6f\x23\x32\xa4\x7f\x01\x74\x58\x03\x55\x61\xee\x8a\x18\xbf\xcb\xe4\x4d\x5e\x7e\x89\x78\x51\x93\x76\x0d\xfa\xbe\x40\x67\x41\x40\xda\xc5\x5a\x86\x79\xb7\xdb\x8b\xb6\x30\x5a\x56\xe1\xd3\x60\x7f\x89\xa2\xaf\x30\x74\x77\xa8\x94\x41\x0e\xe5\x53\x6f\xaf\x44\x1b\x25\xb7\x25\x22\xb8\x1d\x3c\x9a\xd9\x5d\x08\x9c\xca\x9b\x3d\x08\x76\x6e\xef\x37\x8a\x8e\x1d\x03\x99\x30\x8d\x91\x1c\xaf\x9c\x7d\x09\xa9\x6b\xd9\xd2\x33\xe9\x31\xeb\xc5\xbc\xb4\x4d\x62\x7e\x2b\x90\xed\xf3\x77\xb0\x3b\xf2\x43\xef\xf5\x75\xc2\xab\xbd\x79\x65\x4d\x83\xfa\x9c\x68\xd0\x68\x9f\xee\xd5\x9c\x2c\x58\xe2\xfa\x2b\x43\x13\x14\x96\xf1\x3d\x92\x44\xda\x54\x3e\x11\xec\x03\xb3\x78\xd0\xce\x35\x8a\xfe\x8e\x63\x73\x9d\x49\xab\x62\x7c\xa5\x43\xba\x3d\x33\xec\xef\x1a\x18\x8b\x6c\xfd\x8f\x43\x85\xb3\xe4\x9d\x60\x3b\x15\xab\x26\x83\xe6\xaf\xc0\x30\x01\x45\xe2\x2f\xa8\x0a\x35\x1b\x56\xb3\x18\xe4\x18\xd4\xcf\x74\x22\x26\x74\x5e\x26\xb2\x7f\xa9\xc8\x0e\xc1\xd0\xb8\x95\xf7\x78\xa3\x62\x45\xc6\xaa\x03\xcf\x0c\x33\x36\xfb\xf8\xd6\x9d\x8c\x3e\xcc\xcd\xa7\xf3\x9d\xac\x75\xbe\x84\xd0\xb8\xdd\xe7\x30\x31\x5b\x87\x32\x41\xa3\x44\x74\x6f\x58\x37\x8e\xdf\xf2\x1c\x45\x9a\xb1\x6e\xf3\x19\x22\x3e\x6b\x0d\xfc\xc0\x2e\xa3\xa0\x5e\xb0\xfd\x84\xca\x24\xb3\x41\xe4\x65\x6f\xe7\xe3\x82\x6f\xf5\xc5\xa5\x31\x9c\x72\x01\x51\x74\x94\xb1\x4f\x01\xde\x45\xb1\x6e\x12\xb7\x73\x03\x9b\x04\x6f\x26\xb4\x95\xbf\x33\x8f\x05\x5c\xb7\x3a\x8a\xac\x43\x07\xfb\x4a\x80\xa3\xfd\xd0\xc9\xc2\xdb\xac\xfa\x1a\x9d\x31\x3a\x41\x31\x21\x83\x9e\x4e\xd6\x8b\xfe\x61\xba\xba\xce\x27\xfa\xa6\xdb\x3f\xae\x8d\xc8\x37\x34\xc6\x65\xb8\x31\x93\x28\xfa\x12\x36\x8a\x66\x22\x37\x1b\x65\xb3\x1a\x7f\xeb\x49\xd3\x9e\x2b\x51\x94\x2b\x30\x1b\xea\x22\x9b\x78\x92\x64\xb7\x55\xe8\xa7\x09\xee\x83\x60\x2b\x21\xa3\xe8\x9a\xb7\x69\x59\xbf\x79\x60\xf7\xb0\x16\x8b\xf8\x3a\xdd\xae\xfa\x4f\x50\x75\xb3\x1d\x19\x86\x22\x39\xbd\xdd\x72\x5e\xc0\xc3\xcb\x6f\x16\xb4\xd4\xdb\x19\x1b\xe7\x00\x7f\x26\x0d\x83\x8d\x12\x3c\xa5\xbc\x6c\x82\x4c\x7f\x37\xd0\x08\x9d\x9c\xf5\xde\xde\xe3\xea\x1b\x16\x3e\x34\x5b\xf0\x5b\x43\x56\xeb\xdc\x83\xcf\xe1\x63\x75\xf2\x34\x00\x59\x9d\xdd\x07\xc3\xa9\x57\x1a\x01\x6f\xf6\x4f\xb8\x25\xeb\x74\xb4\xb7\xe2\x41\x8a\x6e\xa7\xf5\x34\x17\xb6\xac\x6e\xcf\xf6\x37\xf8\x2c\x8c\x57\x27\x5b\x94\x4c\xce\x6c\xb7\x7e\x69\x67\x1b\xac\x23\x83\x82\x7b\x9a\xfc\x0a\x89\xf0\xbc\x2d\xe3\x9f\x80\x23\x1e\xcc\x0c\x2b\x82\x77\xe1\x94\x1d\x3f\x56\x5c\xfa\xda\x2b\x7c\x40\x79\x0a\xb4\xef\x46\x51\x34\x9c\xd1\xcc\xf0\x1a\x82\x1d\x6b\x14\xc9\x21\x53\x73\x44\x63\x23\x69\x46\x0f\xec\x17\x19\x73\x9f\xba\x0c\xf4\xc7\xa8\x46\x6e\x51\x9a\xed\x29\xbc\x47\x90\x89\xe7\xfe\xd8\x9b\x1e\xc2\x0d\x5f\x93\x05\xd3\x24\x63\x50\xb9\x72\x6f\x63\xd5\xb2\xc3\x2a\x08\xd1\x5d\xd1\x58\x8a\x1e\xfc\xc9\x1c\xef\x74\x3d\x0f\xfe\x3c\x71\xd8\xba\xad\x4c\x27\x05\xb9\x9a\x01\x01\x18\xb0\x36\x87\x99\xe1\x4c\x89\x8f\x7e\x6e\xaf\x9a\xba\xb7\xb3\xd3\x51\x93\x55\x90\xdf\x50\xa0\x95\xa0\x7d\x4b\xc9\x4e\xb1\xa2\xaf\x0c\x79\x7e\x4b\x6a\x23\x7d\x11\x4a\xb4\x46\xda\x48\xaf\x7a\xfb\xf6\x43\xf3\x0a\x11\x5d\x40\xd4\x0e\xf7\xc2\x0e\x80\xb2\x02\x0a\x72\xfc\x1a\xbf\x7a\x59\x2a\xf1\x4b\xce\x6f\x1b\x2b\xd2\x63\x08\xc6\x0f\xda\xff\x07\xdf\x5b\x68\x8e\xf7\x26\x78\xdf\x19\x03\xaf\xe4\x65\x32\xcf\xd9\x30\x71\x30\xc1\x18\x7a\x65\xd0\x1e\x90\xa9\x05\x77\x07\xef\x84\x6a\xbd\x16\x06\x9b\x08\x5a\x01\x0c\x67\x9e\x85\x70\x1e\x45\xc3\xad\x9d\xc1\x0d\x1b\x25\x20\x34\xa0\x27\x77\x1f\x6a\x89\x85\x26\x81\xca\x4e\xa4\xa7\x64\x9e\x04\x3a\xf2\x2e\x7d\xa1\x6a\x60\x79\x75\x3b\xf1\x1e\x20\x1b\xe6\x89\x16\xb6\x89\x72\xd4\x95\x0e\x2a\xe5\xc9\xfe\xe3\xc5\x48\x0f\x5f\xf7\x15\x2a\x64\x28\xa3\xc2\x8c\xb0\x1d\x9d\x38\x6f\xbf\xfc\x76\x1d\xab\x05\x39\xe9\x29\x66\xd8\x85\x05\x20\x01\xdd\x5d\xf3\x6f\x01\xc3\xe4\x07\xb0\x78\xae\x68\x66\x83\xff\x56\x6e\xfd\x08\x74\x06\xf4\x10\x97\x2e\xaa\x4b\xd1\xbc\xad\x56\x44\x2c\x2a\xb4\x2e\x6f\x58\x99\xbe\xcb\x63\x1d\x4a\x47\xdb\x7c\xcd\xd1\x98\x3a\x83\x2c\x42\x08\x7a\xf8\x3c\x6b\x7f\x0e\x14\xef\x80\x47\x3f\x3a\x94\x26\x03\xe9\xd4\xd2\xbe\x72\x0e\x18\x64\x9a\x33\xe0\xac\x4c\x05\x8b\x9d\x4f\x1b\x65\x11\x14\xa1\xe8\xc8\xd0\x39\x8c\xa8\x0a\xa2\x1b\xc9\xa3\x11\x1a\xa6\x9b\xbc\xcc\xab\x6d\xec\x53\xb4\x37\x7c\x17\x56\x9d\x63\x1f\x38\x63\x32\x00\x05\x18\xf8\x24\x36\x81\x4e\xa1\x00\x3a\x1b\xef\x6a\xfd\xbd\xc9\xaa\xcd\x4c\xd9\x9b\x39\x9a\x79\xc6\x9c\x66\xf2\x06\x96\x45\xd5\x57\x5a\x4f\xaa\x76\xf1\x1e\x71\xbb\xcf\xb0\x12\x96\x8e\x26\x8e\x7e\x05\xb8\xc9\x1a\xe0\x26\xc2\x3a\x80\x95\x9e\x5f\x8d\x33\x69\xfd\x9a\xc0\x37\x7e\x65\xbe\x3b\x53\x99\x00\xde\x12\xb9\x15\xea\x5a\xfd\xf5\xba\xfd\xcb\x15\x0b\x6a\xf5\x9b\x7b\x9a\x42\x17\xa1\xbc\xe4\x4c\x59\xff\xcb\x4a\xb1\x8e\xfe\x83\x4a\x7c\x65\x50\xec\x95\x0e\xbc\x20\x1c\xf8\xe6\xca\x75\x3c\xd3\xf2\x3c\x7a\xe7\xc7\x88\x87\xb6\x58\x12\x62\x14\x83\xee\xd9\x44\x9e\x40\x8a\x05\xcf\xa1\xfc\x4f\x03\x69\xa7\x8b\x9a\x3f\xcb\xe3\xa3\xf1\x9f\x43\xab\x9a\x89\x1c\xcf\xd2\x19\xa6\x2d\xc5\x9a\x37\xa0\x77\xa8\x9a\x45\x33\x30\x58\xd5\xec\x5b\xdc\xf3\x3d\x36\xed\x3e\x8b\x2e\xb6\x58\x52\xc1\xd4\x85\xb8\x94\x17\xc2\x9a\x1f\x64\x21\x15\x89\x7b\x52\xd4\xdb\x12\x19\x94\x4c\x8c\x33\x64\xaf\x33\x44\x69\x99\x47\x5d\xe5\x8a\xe3\xb2\x2d\x87\x00\x29\x9f\x39\xc6\x0d\x1f\x9f\x23\x0b\x8d\xa5\x1f\x31\x36\x27\x6b\xfe\x27\xb7\xcc\x2a\x89\x7d\xe4\x0b\xb8\xc4\xca\x28\x92\x8e\x92\xca\x51\xd6\xe7\x66\x2d\xbf\x42\xfb\x98\x6b\x2e\xab\xba\xee\x09\x34\xa6\x65\xdd\x08\xa6\x1a\xa2\x17\x4f\x41\x03\xf6\xd3\x96\x10\xeb\x9d\x20\x6f\xa3\xe8\x6f\xa5\x7b\xaf\xf5\xea\x21\xa5\x1e\x5f\x6b\xca\x20\x2f\x3d\x0e\x2d\xfd\xd1\x97\xf6\x23\x39\x2e\xc9\x55\x13\x37\x87\xef\xd2\xb8\x09\x19\xb3\x92\xda\x6c\xc7\xac\x6c\xf2\x54\x97\x01\x2f\x97\xf4\x6a\x15\x16\x1e\x24\x24\xf7\xb1\x60\xb9\x1e\x18\xa9\xcb\xa6\x33\x42\xe6\xa6\x34\x93\xca\x58\xe2\x0b\x44\xb0\x20\xb4\xf9\x96\xa1\xde\xe8\xc7\xa0\x3e\x29\x14\xe6\x7c\x42\xfc\x6a\xe0\xb1\x7c\x61\x0b\x54\x54\xd1\xc9\xd9\xf2\x12\xda\x2a\xf1\x9d\xb0\xe5\xf9\x65\x98\xd9\xe9\x67\x48\xab\xb0\x41\x83\x2c\x8a\xaa\x73\x85\x64\xa6\x90\xe9\x4a\x94\xab\x4c\xc5\xb0\x24\x32\xd3\xae\xca\x94\xe7\x62\x83\x8f\x2b\xf3\x29\xe9\x6b\x3f\x5a\x0b\xe4\x5d\xd6\xa2\x83\x9e\xd9\x97\x07\xcc\x79\x6e\xfe\x1d\xb3\x32\x55\x36\x70\x7c\x80\x69\x0e\xf3\xb0\xcb\x08\x04\x60\xad\x1e\x09\xbc\xb4\x4b\xb8\x7f\x76\x0e\x8e\x7d\xdc\xd5\xe7\x28\x95\xf2\x4d\x9c\x03\x9d\x52\xde\xd0\x29\x99\x3f\xc7\xb9\xad\x55\x79\xa6\x56\x74\x18\xab\xcb\xd2\xd3\x32\xaa\x2b\x56\x86\x3c\x9a\xc2\x04\x34\x2c\x4f\x4e\x72\x43\xff\xfa\x86\xb8\xd2\x1c\xd0\x75\x1d\xbb\xbf\xf5\x5e\x79\x31\x99\x31\x76\x2d\xe2\x8c\x4a\x12\x45\x99\x21\x9b\x09\xb6\x6b\x18\x80\xfb\x2e\x09\x55\x87\xdc\xd3\xdf\x5f\x5a\xb4\x9b\x7a\x13\xec\x33\x3a\x60\x1e\x8d\x94\x69\x43\x2f\xe9\x55\x43\x6f\x65\xd9\x19\x63\xd5\xb6\xfa\x82\xe5\xd7\x18\x31\xb4\x9e\x19\xc2\xb4\x14\x9f\x5a\x64\x8b\x00\x4c\x67\x2a\x17\xe5\x12\xf7\x45\x2f\x2f\x8f\xce\x56\xb6\xb9\x74\x04\x33\x35\xa7\x59\xab\x14\x38\x59\xdf\xd6\xb5\x64\xe7\xb6\x5e\x63\x24\x82\x38\x7c\x82\xc2\xcc\x48\x65\x43\x88\x86\xb0\x9c\xdd\x76\x6a\xc9\x11\x48\x87\x0e\x63\x20\x1c\x82\xdc\xc0\xd7\x71\xc8\xb0\x0b\xcb\xab\x04\xfe\x15\x48\x7c\x6d\xfc\x1e\x83\x4e\x64\x87\x71\xb6\x10\xf8\xed\x44\x51\x31\x1e\x5b\xe2\x99\xc3\x44\x0d\xd4\x98\xe5\x54\x8e\x59\x8e\xfe\x63\x6e\x1b\x96\x04\x9c\xc8\x4c\xde\x71\x79\x99\xcc\x93\xd4\x2b\x22\x28\x43\x8e\x59\xf9\x79\xb6\x10\x13\x48\x37\x4b\x13\x82\xc5\x51\xbd\xb6\x4f\x67\x5a\xef\xb1\xde\xca\xf6\x43\x4f\x30\x88\x92\x25\x66\x20\x55\xcf\x7b\x99\x82\xb7\x32\x73\x58\xeb\xd3\x49\x2f\x08\xa0\x23\x71\x6b\x61\x3c\x96\xce\x0c\xcf\x23\xc0\x95\x7d\x2f\x2f\x0a\xfc\x42\x7f\x95\xd9\xde\x3c\x56\xb3\x7e\x0c\x73\x7d\x45\xb4\x29\x51\xcd\xd9\x49\x08\xc1\x0d\x5b\x86\xf7\x28\xac\xba\x6f\xe2\xaa\xd7\xb0\xb5\xf7\x59\x04\x91\x22\xd4\xdb\xfc\x4f\x1e\xfb\x9b\x9a\x41\xe8\xbf\x6f\x56\xc3\xaf\x79\xac\xc8\x85\x1c\x32\x47\x9d\x70\x21\x99\xf4\x78\x59\xc0\xb9\x40\xd6\x35\x00\x6c\x5a\x1f\xc4\x28\x1a\x29\x79\x00\xab\xc2\xae\xbf\x67\x7e\x53\x0a\xc9\x27\xe0\xfb\x53\x8d\xe0\xc9\xa3\xc9\x0e\xd4\x43\xfa\x7e\x0b\x5a\x0f\x43\x2d\xe9\xbc\x14\x3c\xb6\xca\xf6\xea\x6a\x11\x9b\xca\xa6\x0a\xd0\x84\x6e\x35\x4a\xa1\x26\xc6\xa7\x66\x14\xce\xc5\xa3\x21\xbf\xaf\xcc\x6e\xfc\xb0\x69\xa2\x16\x70\x05\x53\x0e\x3b\xd3\x58\xf3\x65\x2e\xe8\xf7\x09\xa8\x60\x0c\xfa\x49\x73\xe3\x00\x2b\x61\x38\xae\x68\xc1\xc0\x0a\x4b\xd0\x8c\x18\x51\x6a\xc6\x58\x01\x36\x47\x51\x14\x1f\x1a\x4b\xb2\xc2\x80\x5a\x69\x39\xd3\x7a\xdf\xe9\x94\x2b\x73\xf7\x5e\x01\xed\x29\xb5\xc6\x7b\x3d\xac\xa7\x13\x1b\x37\x28\xc0\xa3\x0f\x65\xe2\xb6\x9e\x0d\xd0\x3d\xe3\x58\x4c\x56\xfe\x35\xdc\x98\x2c\x04\x16\x6f\x64\xb2\x6a\xa0\xf2\x3d\xab\xe7\x42\xf6\x80\xe4\xf9\x23\x14\x2b\x11\x2b\x80\x11\x93\x06\xd1\x0c\x90\x1f\xa2\xc8\x3e\x30\x04\x80\x10\x31\x21\x04\x21\xf3\xb6\x39\x60\xdb\xc3\xbf\xdf\xf3\x3b\x5a\x21\x54\x2c\x41\xad\xac\xbb\x86\xae\x65\x76\x73\x03\x4e\x5b\xc3\xd9\x79\x20\xab\xbe\xe4\xc9\x89\xd0\x59\x92\x90\x46\x70\x1b\x6e\x24\x54\xd5\x9a\xc8\x1d\xf0\xe7\xa0\xba\xcd\xf5\x90\x1a\x3d\x8a\x05\x13\xfd\x2c\x8f\x75\xd2\x55\x56\xf1\x47\xb3\xd4\xaa\x81\x8c\xca\xbc\xbc\xd1\x2b\x76\xde\x1b\xaa\x05\xce\x72\x1e\xaa\x0e\xc9\xbd\x98\x7b\xb5\x7f\x2b\xe2\x6b\x4e\xc1\x85\x2d\x6d\xe8\x0f\x57\x87\x0a\x5e\x1d\x06\xf6\x26\xe1\x48\x88\x07\x5f\xab\x28\xfa\x5a\x4d\x55\xbe\xe3\x57\xf9\xe4\xdf\x92\x04\x5c\x2a\xf6\x3c\xfe\x5a\x4d\xf7\xa2\xa2\x92\xcc\x4b\x36\x52\x32\xdf\x17\x7c\x94\xbe\x52\x51\xf4\xaa\x2f\xf5\x2b\x97\x3a\x2e\xd9\x68\x2d\x0e\xd7\x05\x1f\xd1\xaf\x15\xbb\xd7\x69\xd3\x9c\xee\x45\x95\xca\x13\x49\x75\x34\x32\x05\x8d\xe8\xab\x4e\xf4\xc0\x4e\x77\xde\x00\x9d\xb2\xe3\x5c\x4d\x77\x5c\x65\xdf\xf3\xbb\x54\x4d\x57\x4a\x16\xdf\xf3\x3b\xcf\xe2\x52\x0f\xcd\x57\x52\xec\xa3\xe8\x9f\x02\xf4\xc5\x21\x9e\x97\x2d\x0e\x95\xab\x07\xe6\xc1\xfb\x4a\x42\x00\xd2\x2d\xde\xf3\x18\x62\x8c\x27\xd2\x61\x49\x2c\xa0\x81\x24\x97\x89\x9e\x81\xc6\xbc\x0f\xd3\x1e\xc0\x17\x89\x4a\x72\xe5\xe2\x2e\x13\x32\xef\x2a\x75\x5b\x3b\x0f\x3d\x34\x3d\x4f\x0b\xf6\x7d\x88\x65\xbd\x22\xf7\x15\x32\xcd\xf4\xcd\x51\x50\x2f\xc2\x9c\x80\x50\x33\x25\xf4\xe4\xfd\x29\x77\x66\x55\x1e\x32\x6b\x41\x74\x44\xee\xd1\xba\xac\xa5\xc0\x70\xa7\x14\x6d\x36\xa5\x95\xfd\x8b\x8c\x3b\xb1\xbf\xbb\xd8\xdf\xc9\xe5\x2c\x89\xa2\xf8\xcb\x3c\x5e\x11\x3a\x2c\xa3\xc8\x35\x67\xf2\x24\x49\x2e\x0f\x51\xf4\x25\x77\xa7\x3b\xad\x00\x87\xf4\x3f\x19\xcb\xe6\x67\x16\x58\xe0\x61\xe0\x16\x48\x1e\xa2\xef\x22\xc4\x50\xda\x0a\x25\x27\x42\x06\xe7\xfb\x0b\xa8\xa9\x7a\xfa\xab\xa0\xad\xf4\x38\x73\x7a\x02\x63\x32\xf8\xe6\x5c\xcf\x7e\xd3\xdf\xb3\x96\xc8\x6a\x45\xd2\xf3\xa0\x0c\xcd\x6c\xc8\x8c\x2d\x2d\xd0\xdd\x58\x56\x4d\x5a\xb0\xcc\x4c\x7c\x3b\x1f\x07\x39\x3c\x65\xdb\x1d\x6d\x1e\x1f\x30\x89\x3f\x91\x69\xc5\x0e\x57\x93\xd9\x7c\xb5\x38\x2c\x53\xe3\x6c\x28\xa9\x24\x24\x8d\x2b\x93\xda\xa7\xd7\x68\x42\xd0\x8b\x50\xef\xb8\x77\xf3\xa6\x0c\x64\xc3\xb4\x6b\x2e\x2b\x74\x18\x29\xd9\x48\xf2\x95\x1a\x81\x01\x76\xc5\xfc\x52\xa8\x64\xe6\xc4\x1d\x82\xe9\x2c\x3d\xb0\xc9\xac\x71\x10\x30\x1b\x82\x73\x9a\xb0\xf8\x0d\xbf\x0a\xb9\x7e\xa6\x62\x49\x06\xbe\x1b\x05\x54\xa2\xae\x33\xb8\xce\x94\xeb\xf9\xdf\x78\x9c\xd1\x8a\x6e\xac\x1f\xde\x06\x9d\xf0\xd2\x8d\xbb\xcc\xda\x0d\xca\x15\xb0\xb6\xb5\xdb\xf2\x18\x1d\xef\x68\x02\x7a\xfb\x8c\xba\x10\x80\x8a\x20\x7f\xa9\xe8\xb5\x2d\x7a\x6d\x8a\x5e\x1b\xd8\x63\x66\x12\x48\x32\xc8\xe7\xfa\x06\x74\xd0\xa3\x63\xe1\xd2\xe8\x67\x3a\xf6\x25\x8f\x57\xf6\x9e\xba\xa8\x96\x84\x1e\x08\xbd\xc7\xc9\x93\x0e\x67\x54\xc8\xfc\x26\x2f\xd3\xd1\xe7\x30\xc1\x46\x27\x42\xd2\x95\x87\x7f\xa0\x07\xd4\x7a\x63\xb6\x36\xb3\x60\x4e\x34\x45\xd9\x1b\xf4\xc1\xdd\x8e\x6d\xd8\x61\x3c\x23\xfa\x68\x78\xb0\x78\x3b\x01\x49\xfa\x8b\xce\xf2\x40\x2b\x7a\x10\x24\x8d\x0f\x2c\xc1\xf6\x18\x4f\xd4\x45\xb5\xd4\x59\x1d\x44\xf3\x85\x41\x2d\x47\x0a\xdc\x3d\x13\x9f\x24\xff\xd9\xf9\xe6\x89\xc7\x58\xd9\x1d\x73\x3c\xde\xd1\x95\x37\xa3\x70\xde\xe9\xd1\x45\xab\x5b\xe7\xd5\xbb\xa2\x5b\xd2\xdc\xb0\x9b\x93\xae\xc1\xfe\xc0\x4b\x0c\xa6\xde\x52\x05\x52\xc2\x96\x29\x2f\xcb\xfb\xe6\xad\x0d\x34\x6c\x1d\x99\x88\x82\xd4\xf4\x22\xd7\x77\x5b\x4f\xbe\xa2\x72\xba\xda\x52\x41\xe8\xc6\x45\x2b\x3f\x5a\x99\xe8\x75\x83\xf0\xb0\xa2\x1b\x42\xbd\x77\x5a\xf8\xbd\x0b\xd8\x12\xf4\x54\xb5\xfe\x00\xc7\x26\x86\xc3\x55\x00\xd0\x4b\xbd\x17\xb9\x30\x3d\xb9\xd8\x5d\xb2\xe3\xc5\xce\xde\x5c\xee\x18\x54\x6a\x67\xea\x73\xcd\xb6\x22\xbe\xa3\x6b\x2a\xc8\x60\xcd\xd8\x7e\x6e\x54\x82\xcd\x4a\xd9\xd1\x6b\xc0\xe6\xd0\xff\x12\x92\xde\xd9\x69\x78\xad\x37\xc8\xb3\x69\x21\xd7\x3d\x15\x04\xa0\x50\xdc\x83\x43\xf8\x05\xee\x12\x76\x92\xda\x9d\xad\x67\xae\xe6\xb8\x3e\x5a\xd3\x92\xba\x09\x7b\x6a\xde\xd9\xdc\x7b\x8b\xf2\x54\x4e\x37\xac\xa2\xef\xd9\x8d\x5d\xb0\xb7\x0c\x1e\x1f\xed\xba\x19\xb2\xd2\xb8\x3f\x35\x3b\x12\x5a\x6e\x07\x1b\x92\x32\xb2\xdd\x0b\x6f\x1b\x51\x9d\x6d\x44\x05\xdb\xc8\x9e\xc7\x2f\x6c\xa9\xef\xc9\x55\x32\x8f\x6f\xd9\x0b\x74\x2d\x7f\xcf\xee\x78\x7c\x63\x45\x0a\x9b\x4a\xef\xcd\x3a\x89\xfd\x86\x1d\x75\x22\x90\x2c\x5e\x18\xe7\xef\x53\x9c\xb3\x76\x5f\x11\xb2\x38\x38\x7f\x72\xa8\xca\x7b\x42\x6f\x9b\xbe\xcd\x75\xff\x1d\xe0\x7d\x69\x65\x49\x0a\x7e\x89\xf5\xd5\xe1\x22\x5e\x19\x7b\xb2\xcd\x54\x89\xba\xc6\x5f\x97\x1b\x7c\xd5\x8c\x22\xef\x90\xfe\xbe\x4d\xb3\xb1\x63\x2c\x8f\xa2\xa3\xe1\x65\x9b\x3d\x4d\xbc\x2e\x5f\x37\x57\x99\x4b\x60\xd0\x9c\x4f\x9e\x24\xa9\x0b\xbb\xb2\x44\x9a\xf3\x27\x49\x9a\x0c\xd6\x7f\xa5\xa0\x58\xf4\x3c\x18\x8d\xd9\x9a\xea\x1a\x40\x15\x00\x8a\xd8\xed\x1d\xd7\x7a\x9d\xf3\x3e\xa1\x59\x4b\x48\x3b\x36\x7b\x9c\x50\x38\x66\x41\x79\xe9\x43\xfb\x77\xa5\x27\x7d\xa5\x1c\xd1\x9b\xbe\x28\x7d\xfc\xbf\x27\x34\x9b\x6e\xf3\x4a\x09\x79\x07\x8b\xf2\x2d\x2f\x5e\xc3\x6c\x65\xee\xc6\x76\xd3\x96\xed\x38\xb9\x07\xb1\x7f\x7e\xd4\x42\xfc\x75\xcc\xa1\x0d\xef\x31\xd9\x75\x23\xab\x84\x55\x7f\x4f\xbb\x12\x88\xab\x5d\xbf\x70\xf2\xde\x09\x21\x25\x5d\x91\x93\xbe\x87\xd0\x92\xa4\xbf\xea\xc2\x01\xe4\xd7\xf4\x6a\x14\x7d\x09\x74\x00\x86\xda\x57\xdf\x45\x9e\xa4\x15\x58\x5a\x61\x4d\x74\xcb\x7e\xc8\xd7\xeb\x82\x7f\x25\x6e\xcb\x46\x6e\x05\xbf\xad\x2f\x2d\x04\x59\xf9\x00\x08\x70\x8f\x10\x47\x3b\x85\x7e\x91\xde\xce\xff\x81\xd7\xa5\x16\xfa\x87\x11\xde\x78\x91\xdd\xe5\xe5\xcd\x97\xc5\x41\xbe\x38\xf2\x12\x98\x8c\xce\xc2\x5d\x9e\xf9\x06\x8d\x2f\xcf\xe5\x37\xa3\x6f\x24\x40\xd9\xe2\xb5\xee\xd4\x7a\x64\x5a\x79\x9a\x04\x0b\x67\x9a\x37\xf7\x79\xda\xdc\xed\x7f\x6f\x5f\xe1\x87\xb3\x13\x38\x33\xe1\x36\xbe\x29\x84\x90\x9e\xbf\xf0\xcd\x41\x29\x2e\xab\x73\x87\xa3\xe5\xba\x75\x98\x18\x25\x8c\x99\xb2\x1e\xad\x8d\x1c\xa9\x05\xbc\x4f\x51\xe8\xe5\x9b\x58\x5c\x59\xbb\x8d\xba\x1e\x96\x02\xac\x45\xac\x5e\xe3\x17\xc8\x58\x4c\xd0\x3b\x75\x92\x79\x9a\x55\xa7\x42\x3c\xb0\xe4\xe2\x70\xd9\x9c\x8e\xb6\xfe\xee\xe1\xf8\x60\x81\x69\x33\x17\xe7\x41\x57\x1d\x40\xa7\x5c\x44\x51\xf1\x70\x8b\xaf\x2c\xef\xfa\x8a\xbd\xf3\x5e\xb3\x36\xac\x53\xb2\xce\xd2\xb2\x32\xe7\xf0\xae\xc0\xe9\x8a\x6e\xa8\x22\x14\xda\xe3\x8f\xe2\x46\x06\xaf\xb9\x66\x50\x47\x98\xd3\xf3\x22\x5f\x7d\x18\x69\xb9\x15\x56\xef\x5a\xfa\x62\xc9\xb6\xa5\xa8\x00\x90\x0a\xa9\xb7\x92\xa1\xd1\x50\x44\xd1\xb0\x92\x8d\xf9\x20\x28\x02\x60\xa2\x53\x11\x45\xf1\x5a\x7a\x8b\xc7\xd8\x6b\xa0\x82\x00\x04\x65\x8b\x77\xfe\x4e\x66\x65\xb5\x01\xe6\xd1\x82\x43\x21\x40\x68\x15\x5c\x66\x09\xea\x7e\x4a\xf7\x2a\x6f\x34\x0b\x5f\xe7\x05\xd7\xa9\xf4\xb2\xf6\x82\x3c\x2f\x6c\xfb\x09\xcd\xd8\x33\x29\xb3\x3b\x80\x84\x07\x95\xb0\x77\x51\x29\x0d\x76\xa2\xeb\xe7\xac\x28\xc4\xad\xbe\x0b\xe9\xdc\xde\xdd\xed\x79\x55\xd7\x93\xd9\x90\x5d\x8b\xf8\xa1\x44\x14\xf1\xfe\x9b\xa7\x05\x7e\xfb\xa8\xa9\xe2\x40\x4c\x45\x59\x88\x6c\xad\x37\x3f\xd5\x43\xe5\x29\xa6\x92\x57\x87\x02\xce\xed\xc7\x8b\x3f\x3e\x26\xc9\xe4\x8f\x8f\xc9\x7f\xfc\xf1\x31\xe1\x93\x3f\x3e\xce\x36\xcb\xfb\x27\x27\x8b\x4c\x0e\x46\xa8\x6c\x34\x22\x34\x5b\x94\x4b\xc6\xe9\x78\x5c\x31\x3b\x81\x0e\x06\x08\x44\xb2\x57\x76\xbf\x92\x84\x2a\x91\x4a\xcb\x52\xd0\x42\xd2\xcb\x10\xd3\x4d\xf5\x81\xe5\x11\xe2\x44\x65\xc4\xbc\x3f\x0d\x5e\x59\xb8\xaa\x03\xa1\xbf\x06\xa0\x8c\x3f\xcb\xf8\x60\xa1\xdd\x05\x60\xa3\x3e\xab\x8c\x06\xe7\x74\xa2\x05\x4b\x2e\x8a\xcb\xfc\x62\x3c\x2e\xc8\x21\x2e\x17\xc5\x92\x16\x0d\xfd\x82\xea\xb9\xb6\x82\x65\x64\x9b\x9c\x48\x92\xab\x46\x11\xdf\xf7\x95\x9e\x81\x80\x9a\x75\x66\xbf\x6c\x5b\x5b\x06\x5b\x35\xe8\x2d\xf3\x4d\x9c\xb5\xe7\xe7\x8d\xa5\x44\x78\x07\x20\x80\xe4\x7c\x9d\x87\xf1\x71\xce\xcd\xe5\x31\xe5\x56\x73\x83\xf8\x8d\x2b\xa0\xfd\xac\x02\xce\x0a\x3d\xe0\xdf\x04\xfd\xa8\x65\xc6\x15\x4c\x63\xec\xb3\x55\xb3\xd9\x14\xc4\xa1\x85\x8d\x46\x74\xb5\x28\x2c\x94\x0e\xfe\x6d\x68\x48\x65\x76\x03\x44\xb0\x1d\x02\x89\x8c\x8e\x32\x50\x62\x8e\x2c\x87\x81\x6f\xcd\x1b\xf6\x87\xd9\xd6\x39\xb9\x3f\xf9\x5b\xca\xbe\xf5\x9c\xa5\x0b\xb3\xc6\x5d\xf1\xa7\xec\x7f\xfa\x3e\xf3\xad\x86\x9a\x50\x03\x88\xef\x8a\xdd\x99\x9d\xec\xac\xa5\x9c\x22\x97\x4f\x10\x98\xc2\x0f\x66\x8a\xca\xba\xfe\x2e\xe6\x14\x6c\xfd\xd5\xc9\x2f\xad\x2b\x6b\x0d\x99\x0a\x5a\xd1\x63\xdf\xa9\xba\x39\x74\xcd\x44\x15\x18\xed\x7e\x07\x9b\xa1\x96\x75\x40\x71\xea\xb1\x03\xb9\x57\xd2\x58\xce\x15\xeb\x18\x0e\xa6\xe7\x0d\xf8\x74\x33\x09\x60\x0e\x35\x16\xdc\xe7\x9b\x84\x36\xa0\x3d\xd1\xde\x43\x0a\xb4\x27\x28\x84\x29\xfa\xcf\x10\x50\xa4\xc7\xe8\xf3\x13\x5d\x85\xf9\x7c\xaa\xaf\xc0\xc2\x54\x8b\xb6\x70\x71\x93\x2c\xa1\xd7\x38\xf2\x03\x31\xbf\x96\x6c\x32\x7d\xfa\x45\x2a\xf5\x5f\xb3\xa7\x69\x81\x21\xff\x2b\xdd\x44\x51\xac\xff\x9c\x3d\xfe\x02\x4f\x96\x1b\xd9\xb5\x79\x61\x1c\x8d\x8f\xbf\xe2\x85\xca\x7e\x03\xb2\xdf\xe6\xf7\xef\xbe\x17\x3c\x98\x7d\x68\x11\x49\x65\x79\xa1\xff\xca\x3e\xe6\x80\xf6\xf3\xed\xeb\x9f\x5f\xfe\xfd\xf5\x8f\xef\x9e\xbd\x7a\xff\xec\xb7\x97\x6f\xad\x6d\x08\xa4\xf3\x0c\x43\xfa\x3e\xfd\xe5\xc5\xcf\xef\x5e\x3e\x37\x1f\xce\xa5\xfb\x2c\x0d\xcd\x49\x9a\x1a\x11\x7a\xff\x31\x55\xf4\x2e\x95\x27\x0f\xe2\xe8\xbd\x6c\xbc\xef\x4b\x76\x03\xc7\xaf\x3e\xd5\x3e\x82\x03\xf9\x9d\xff\x60\x8a\xda\x2d\xab\x9b\x2b\x9c\x91\x28\x0c\xf1\xd5\x21\x30\xfe\xdd\xb8\x58\x7c\x23\x73\xd1\x8d\xcb\x6c\x1e\x45\x05\xe8\x31\x37\xf8\x52\x19\x45\xc7\x28\xaa\x08\x4f\x1b\xfc\x4e\x35\x55\x99\xbc\xe1\x8a\x6e\x19\x0a\x4e\x17\xeb\x21\x3b\x5c\xac\xd9\xda\x7f\x07\xb3\xe9\xf7\x2c\xb9\xd8\x5f\x6e\xed\x4e\xb6\xc7\x07\xe3\xed\x62\x8f\xc8\xaf\x8c\xad\xfd\x4d\x65\x75\x90\x3a\x87\x5f\x75\xff\xbc\x83\x52\xd8\x1a\xe5\xe7\x47\xfc\x84\xd5\x03\xe6\xcb\x15\xda\xa5\x0f\xd9\xb5\x83\xf4\xd0\x75\x8e\xa2\x5d\x63\x0a\x1c\x9a\x49\x7b\x66\xb7\x63\xf1\xf9\xb5\xa4\x61\x57\x4c\xc2\xae\xd0\xe7\xdf\xf1\x53\x59\x81\x53\x49\xee\xe7\x85\xcb\x2e\xe8\x74\x70\x30\x31\x1c\x55\x1b\x62\x64\x5a\x84\x82\xcd\x02\xa3\x79\x74\x69\xc4\x3e\x77\x6d\x83\x19\xb0\x63\x50\xe1\xbb\x8e\xe5\xf1\x35\xbb\x1b\x67\xbd\x8f\xa9\x83\xdd\x65\x32\xbf\xf3\xed\xc5\xef\xc6\xbb\xc9\xd3\x84\xa4\xd7\xbe\x92\xc5\xf3\x78\xbd\x1e\xef\xc6\x4f\x13\x42\xdd\x96\x79\x67\xd1\x16\xae\x4f\xe4\x74\x27\x2f\x9f\x24\xce\x8a\x29\xa8\xf8\xbc\xd5\x0e\xbf\x77\x68\x16\x78\x02\x78\x63\x60\x63\xbe\xfa\x8d\xe5\xee\xef\xdf\x99\x38\x77\xd9\x71\xf6\x19\x41\x61\x56\x86\xf2\xcb\x9c\x04\x29\xa8\xf2\x4b\x0d\xe2\x7e\xa7\x52\xef\x00\xae\xf0\x28\x52\x8f\xdd\x8f\xba\xe6\x4d\xd4\x6f\x51\xc4\x5d\xd4\x6f\x83\xb0\xbd\x59\xc7\xd9\x01\x00\x26\xae\x25\x8b\xaf\xe5\xe7\x77\x72\x2c\xc9\xe3\xf8\x4e\x8e\x67\x84\x8e\xc7\x77\x52\x4b\x49\x40\xde\x45\xd2\xd8\x65\x39\xf6\x3b\x61\xcc\x04\xf1\x2f\xfb\xb7\xd2\x07\xb2\xa9\x00\x73\x71\xc4\x98\x96\x39\xc5\xe6\x11\x08\x1e\x8a\xad\xca\x85\x5a\x7a\xb7\xa7\x36\x99\xaa\x0f\x23\x6a\x5f\xc6\xda\x8a\x60\x9a\xb3\xe1\x0c\x04\xa1\xf6\xa3\x92\xbb\x4f\x56\x87\xfd\x5e\xf2\xaa\x7a\xb1\xce\x55\x05\xd0\x19\xe1\xe9\x8f\xcf\x91\xc3\x99\xde\xae\xb4\x40\x36\x64\x99\x70\x06\x8d\xed\x64\x25\x3d\x93\xed\xac\x31\xda\x7b\x8d\xbd\x02\x77\xd7\x37\xf9\x47\x5e\x54\x3d\x5b\xfe\x8d\xf4\x8c\x16\xd5\xf4\xe3\xe7\xec\x5a\x52\x35\xbd\xc3\x7f\x11\x64\xee\x85\x04\xc1\x7c\x25\x9a\x5d\xf6\x6d\xcf\xa3\xb9\x4f\x8c\x0b\xfb\x21\xf4\xfa\xbe\x8c\xdd\xd5\x74\x64\x20\x4b\x47\x83\x17\x40\xe4\x15\x3f\x4d\x68\xdf\xb5\x1c\xf3\x40\xf5\x4e\x2b\xcc\x40\x6c\xf5\xd2\xdd\x82\xa6\x44\xb1\x7c\x3c\x7a\x34\x1a\x2b\x63\x2e\xdd\x7e\x04\x6d\x3b\x3e\xbb\xdc\x7f\xc8\x7a\x5d\xa0\xb7\x28\x2c\x04\xc9\x16\xe5\x52\x5f\x21\x11\xbb\x9c\xb8\x0e\x77\xc6\xa9\xf6\xc2\xc3\x3f\x2a\x99\x7d\xcf\xef\xaa\x28\x32\xd9\x74\x62\x28\xf2\x5f\xb5\xa2\xb1\x1c\x88\x43\x25\x4d\x69\xc7\x68\xb4\x3b\x14\x2a\x1f\x31\x26\xba\x7d\xa3\x08\x75\x3d\x0c\x09\xfe\xae\xef\xba\xa3\x0f\xdc\x78\x55\xaf\x47\x14\x3b\xa1\x49\x36\xd4\xc9\x4c\x9e\x43\x26\xea\x3a\xfe\x32\x8f\x25\xa1\xb9\x9e\x81\x84\xea\x33\x43\x44\xd1\xe3\x3f\xfe\xe7\x67\xe6\x1e\xa5\xc8\xdc\x24\x19\x26\x24\x1d\x0e\x85\x87\xab\x26\x7d\xdc\x9b\x9d\x6e\xd1\xd0\x81\xf9\x0e\x87\xc8\xde\xd4\x3c\x1b\x0d\xc3\xda\xcf\x61\x4a\x8d\xde\xea\xf8\xc9\x68\x2c\xa9\x7f\xe1\x6b\xae\xe3\xb7\x56\xd3\xaf\x07\xbb\xae\xdf\xa2\x95\x60\x2b\x6d\xef\x62\x9f\x3f\xfe\xaf\x1b\xb1\x78\x36\xf9\xfb\xd2\x35\x25\x55\xd3\x9d\xd0\x1f\x91\x20\x77\x9d\x75\xda\x9f\x73\x27\x1d\x8a\x61\x1f\x8d\x04\xd6\x60\xa9\xf5\xa8\x02\x54\xf7\xed\xc1\xea\x05\x90\x20\xf7\x72\x36\x8b\xa2\x27\xff\x4b\x0b\x43\x06\x6b\x16\xc6\x18\xcb\x04\xf8\xed\xc0\x5b\xd0\xa4\x19\xa8\xd6\xde\x30\xfb\x77\xc0\xd7\x6a\x0c\x1b\xcc\x96\xf5\xda\xd8\x1a\xac\xa2\x28\xd6\x15\x9e\x4b\x84\x3b\x28\xeb\xfa\x3f\xfe\x63\xa8\x3f\xf9\x49\xd4\x35\x5e\xc5\xec\x8b\x5e\x73\x17\xab\xeb\x9e\xbb\x51\x48\xae\x47\xe8\x0c\xf3\x79\xfc\xc7\xb5\x4f\x3a\x2c\x45\x55\x6d\xb3\x5c\xfe\x61\x69\xc2\x54\x70\xe5\xf9\x2a\x3f\x4e\x1d\x5d\x31\xa9\xeb\x07\x7c\xd1\xbb\x74\x88\xd0\xcf\xba\x58\xaf\xcf\xec\x4d\xb2\xae\xe3\x57\xba\x7f\x47\x7d\x95\x19\xb5\xb4\xb6\x1f\xf8\xdd\x61\x3f\xd2\x8b\xa3\xab\xcc\x15\x47\x2e\x47\xc0\x59\xfe\xf5\x43\xf9\x7d\xd3\x9f\x5f\x57\xfd\x6a\xf3\x3b\x85\x2e\xfa\xef\xb0\x31\xff\x1e\x4e\x00\x84\x10\x36\x57\xfa\xe6\x90\x50\x68\x43\x4e\x7d\xef\xe8\x0f\x3d\xb3\x6e\x18\xb7\x34\x4e\x75\xed\xcc\x65\xdc\xe8\xc2\x6a\xb4\x9d\x76\xd4\x3d\x68\x26\x00\xb1\xcb\xd9\xd5\x08\xd4\x50\x16\x00\x19\xde\xd8\x00\x8d\xf3\xa3\x13\x26\xcd\x5a\x40\x7d\x02\x6a\x71\x75\x35\x56\xba\xb8\xdb\x6d\xbe\xda\xea\x53\xd7\xfc\x79\x39\x4b\x48\x5d\x0f\xcd\xcc\x24\x71\x7b\xb3\x36\x59\xe2\xd6\xf0\x3f\x47\x63\x39\x1e\xfd\xcf\xd1\x5f\xd9\x19\x4e\x04\xd4\x66\xe7\x91\x9d\x61\xf6\x13\x98\xd5\xe1\x59\xd2\x60\x4c\x87\x4e\x1e\x3f\xc8\x07\x95\xcd\x9f\x50\x1c\x13\x1a\x20\x3d\xf7\x90\xe1\xc4\x1d\xba\xfa\x18\x54\x95\x23\xf8\x3d\xa2\xbc\x31\xeb\x30\x29\xd8\x30\xa1\x5f\xfb\x60\x99\x46\x9a\x0d\xe6\xa7\x49\x3b\x72\xa6\xef\x7a\x18\xce\x72\xc0\xb3\xc6\x9c\x26\x00\xac\x0c\x89\x8b\xab\xe0\x5d\x26\x3c\xc0\xfb\xbe\x80\x21\xa1\x4f\x12\x42\x7a\x4e\x6e\x8f\x87\x27\x26\xf6\xe0\xf1\x40\xf3\x1e\xee\x76\xa8\x65\x9b\x00\x07\xfb\xed\xba\x38\xc8\xfe\x6e\x9b\xd1\x57\x7f\xb9\xdb\x08\xf2\x27\x5b\x8a\x1c\xef\xb3\xeb\x22\x2f\x3f\x70\x79\xf6\x59\xa3\x3b\x9e\x3d\xb2\xde\x09\x5f\xc8\xbc\x06\xff\xc3\x9c\xa2\x95\xf7\x00\x40\x55\xb0\x2d\x36\xda\xe9\x21\x6a\xe7\xad\x72\xba\x19\xc8\x11\x89\xa2\x96\xe6\xda\x8b\xa4\xba\x64\xc8\x07\x36\x03\x48\x65\x08\x8a\x77\xf0\xb1\x3f\x49\xec\xb2\xf0\x32\x88\x0d\xbe\xd7\xcf\x92\xbd\x36\x96\xad\x2f\xca\x35\xeb\x65\xd1\xd0\xdf\xcc\xb7\x3c\xe6\x0d\x8e\xc5\x38\x00\x4b\x98\xcc\xe8\x51\x0f\x87\x6f\x88\x38\x8e\x67\xc0\x05\xdb\xa4\x9a\x73\x0b\xa1\x96\x6a\xf9\x9f\x4f\x95\xf0\x2e\xfd\xcf\x1b\x3b\x6e\x80\x80\x46\x96\x3d\xcf\x9a\x9a\x0f\x9a\x28\x25\x7c\x6c\xe8\x9f\x65\xac\x9a\x33\x15\xaa\x17\x80\x95\x4d\xc0\xa5\x10\x22\x26\xaa\x69\x03\x99\xcc\xcc\x4e\xd8\xb0\x1e\x19\x1c\x67\x9b\x5c\xdf\xf9\xc6\x0c\xf2\x9f\xae\xb6\xe0\x5e\x38\x5d\x6d\x89\x05\x5b\xf3\x30\xde\x3a\xb6\xb2\x8b\x25\x75\xf2\x29\x2f\x5a\xa0\xd8\x01\x3e\x4f\x13\xbd\x28\x97\x03\x19\xbc\xa4\x3f\x97\x71\xee\x10\xa9\x09\x85\x9f\xa0\xed\xd4\x77\x74\x2b\xad\xbe\xd4\xb5\xe1\x2d\x23\x1f\x0f\x46\x4c\xb6\xf6\xe2\xa6\x99\xfa\xdf\x79\x63\x35\xc3\xb1\x91\xab\xed\x58\xea\x66\xa6\x8d\xf5\x4c\xcc\x6d\xf7\xa1\xb1\x82\x4e\xe9\x15\xf1\xa3\x0c\x61\x03\xef\x57\x59\xb9\xe2\x05\x82\x39\x81\x5a\x1e\xfb\x9d\x2a\x91\xea\x4e\xf4\x89\x83\xad\xa6\x5d\x4d\xf1\x0f\x8a\xdf\x76\x59\x18\x4c\x96\x6c\x98\x9c\x4e\xce\x47\x0b\x3c\x21\x0c\xf6\x49\x73\xa2\x58\x23\x2c\x65\x0f\x5f\x5d\x38\x60\x38\x52\xf0\xfb\xb6\xc1\x4a\x60\xa0\x24\xf0\xd2\x19\x7b\x6e\x5b\x46\x9b\x9e\x0c\xf1\x0e\x03\x31\x58\x41\x96\xeb\x35\x6f\x76\x28\x20\xf4\x45\x47\x8f\x11\xbc\xbe\xea\xae\xd9\x81\x7f\x23\xc0\x13\xb4\x53\x00\x35\x34\xa1\xa5\x6b\xce\x5c\x1f\x66\x29\xbe\x5d\x94\xae\x93\x4a\xd7\x49\x65\xd0\x49\xa5\xa9\x83\x77\xaa\xbd\xf2\x2f\xc8\x80\x96\x70\x8f\x5c\x71\x16\x04\xc9\x2e\x93\xef\x91\x37\x8c\xbe\x92\xc4\x7c\x31\x30\x5f\xf4\xdd\x43\xcd\x57\x27\x90\x3f\x70\x8b\x0a\x9a\x82\xb2\xc7\x2e\x8a\x74\x5c\xb7\xa5\x04\xb5\xb5\x3f\xba\x13\xdd\xd9\xcb\xbe\x40\x25\x56\x5b\x4e\xc0\x48\xeb\xa7\xc1\xa7\xb9\xe2\xd2\x9a\x61\x38\x13\xae\xb8\xcd\x4b\x30\x05\xbe\xa0\xf5\xdb\x7d\x56\x56\x1d\x6c\x6b\x2f\xae\x79\x4a\x50\x8d\x38\xe4\xc5\x2f\xd4\x12\x7f\xca\xc1\x50\xba\x23\xbd\xae\xcb\x28\x32\x6f\x60\x25\x95\xba\x49\xe8\xf4\xd6\xb8\x0b\x4a\x7c\xf7\x19\x96\xbd\x0e\x24\x39\x5b\xe0\xc8\x2a\x78\x89\x3a\x2d\xa9\x60\xc9\x85\xb8\x2c\x9b\xfa\x34\xae\xbd\x19\x2b\x17\x62\x09\x0f\xbc\x08\x4b\x49\x28\xbe\xc2\xe6\x3d\xaf\xae\xb9\x79\x62\x1d\xea\x2d\xb1\xd0\xb3\xa5\xb2\x1b\x26\x70\xac\x18\xf2\x22\xf0\x55\xbf\x4a\x88\x7d\x64\x5d\x1c\xe8\x6c\x49\x37\xcc\x4f\x81\x6e\xee\x6b\xd6\x64\xa4\x04\xb9\x88\x37\x3a\xa7\x61\x36\xcd\xcb\x55\x71\xa8\xf2\x23\x37\x10\x0d\x1b\x7d\x2e\x61\xe3\xb1\x6d\x85\x9b\xb5\x98\xd7\x89\xd0\x78\x7d\xd5\xfa\xf8\x67\x74\x72\x18\xae\xdb\x5f\x57\x30\xd3\x45\xaa\x8b\x3e\x11\x9a\xc3\x13\xdd\xca\x7a\x87\xe6\x74\x45\xe8\x61\xcc\x1a\xda\xd2\x53\xa3\x1d\x71\xa7\x04\x9e\x08\x60\x2c\xdf\xf3\x0c\x3a\x99\x5d\xe4\x57\x2c\xb9\x98\x4c\x72\xf2\xb5\x9e\x8f\x66\xb1\x2d\xf2\x65\xb3\xde\xf4\x0f\xbb\xe4\xf2\xf9\x62\x34\x5a\x5a\x5e\x73\x63\x1d\xf4\xb5\xb9\x2f\x36\x0b\xef\xeb\xe6\xc4\x9a\x0d\x43\x78\xcc\xba\x1e\x8d\x6c\x10\xb0\xde\xa0\x49\x9a\x5f\x5b\x3b\x0d\xcd\xc9\x31\x78\x9e\x1b\x75\x8c\x5e\x4c\x73\x8f\x73\x30\x5f\xa7\x3f\x66\x3f\x12\xfa\xa5\xd5\xd7\xbc\x43\xf9\xc1\xaa\xb1\x16\xcb\xc1\xfb\x3c\xb4\x3f\x81\xbd\xde\xbd\xde\x96\x94\x5b\x13\x16\x3d\x83\xff\xa6\x77\x26\xf3\x5b\x9f\x29\xa5\x05\xc4\xb3\x69\x5c\x51\x70\x07\xb0\xa5\x9d\x02\xad\xdc\x9f\xfe\xa6\x03\x7b\x4d\x5d\x0f\xcf\x6e\x25\x81\x63\x6b\x53\xb8\xc0\xc3\x8f\x66\x6c\x74\x28\xd7\x42\x5f\xf4\xe7\xf9\x74\x2d\x4a\x9e\xe6\x53\x1d\x52\x72\x5a\x05\x71\x18\x98\x62\x22\xb3\x3a\xb2\x86\xce\xab\x64\xd9\xe2\xb0\xa4\x72\x3e\x2c\xcd\x89\x5a\xd7\xe5\x14\x29\x4d\x62\xa4\xad\x49\x6d\x0c\xb9\x38\x8c\xc7\xe4\x02\x9d\x9f\x6c\x1e\x58\xd3\x1c\xec\x61\x8c\x99\x4f\xde\x63\xf6\x73\xa1\x4b\x42\x1a\x2a\x62\xb2\x43\xd7\xa6\x97\x79\x5c\xd2\x0a\x0e\x98\x61\xab\x60\xe2\x51\x90\x3d\xfa\x0c\x48\x2e\xe8\x3d\x08\xa6\x3f\xf3\xb5\x00\x5b\xb7\x81\x60\xe5\x09\x97\xf7\x62\x39\x78\x99\xc7\x42\xe7\x65\x00\x0b\xef\x8d\xfb\x51\x5a\xd0\x1b\x5e\x1a\xfa\xd6\x34\x9f\x36\x3f\x60\xf5\x34\x3f\x59\xe9\xfd\xa8\xeb\xf1\x38\x9f\xee\xb2\x8f\xdf\xb8\x20\x83\x92\xfc\xdf\xd8\xda\x61\x7b\x3b\xb0\xd2\x7a\x44\x35\xeb\xec\x80\xeb\xec\x60\x0d\x7f\x5d\x12\xb3\x5b\x6d\xec\x11\xaa\xe8\x2a\x8a\x86\x70\x3a\x6c\xb4\x28\xeb\xf7\x4e\x6c\x47\x83\x25\x64\x50\x60\xeb\xff\xa1\x67\xf8\xc6\xcc\xf9\x35\x3b\xcc\x61\xd9\x6c\x48\x7a\x14\x71\x46\x06\x5f\x62\x46\x6b\xfa\x43\x89\xe9\xe8\xf0\x80\x54\xb7\x86\xf0\xb6\x65\x43\x68\x38\x43\xdc\xf2\xff\x59\xc6\x1b\x72\xb2\x26\xad\x7d\x2b\x0a\x39\x4f\xcc\x8a\xda\x3e\xb0\xa2\x36\x84\x6e\xcf\xac\xa8\x0d\xae\x28\x5b\x47\x58\x51\xde\x9a\xfa\x5b\xb3\x9f\x24\xf6\x99\x11\x5d\xff\x98\x42\xf1\x8e\x19\x6b\xdc\x1b\x11\xfb\x62\x63\x78\x2c\x7a\x14\x32\x68\xcb\xc8\x7d\x4a\x92\x71\x43\x54\x69\x25\x59\xde\x50\x98\x40\xac\xa1\x2b\x41\x5d\x6c\x5b\xac\x84\xed\x89\x00\x27\xba\x01\x78\xb3\x8e\x9b\xf0\xef\x44\x01\x48\xb1\xe7\x3f\xd9\x10\xfb\x02\x5c\x89\x73\x45\x2c\x2f\x2d\xce\x1d\x48\xc3\xca\xe4\x57\xda\xcb\xce\xc8\xdf\x6e\xbe\x94\x01\xf5\x00\x0e\xec\x03\x22\xce\x97\x56\xc4\xa1\x68\x44\xec\x04\xfa\x4b\x53\x4f\x82\x9d\x1d\x5e\x62\xce\xdd\x13\x3c\xdf\x9f\xd8\x0b\xbf\xf2\xcd\x74\xad\x69\x44\x83\xf4\x67\x4b\x72\x36\x64\xad\xb2\x5c\x8f\x79\x25\x0d\xa0\x5a\x39\xa1\xca\x58\xb3\xe0\xad\x0b\x31\xb5\xc1\x9a\x05\x2c\x51\x4d\x25\xc7\x39\x75\x37\x12\x38\xb8\x16\x47\x0b\x81\x4c\x96\x6d\xb1\xfa\xe4\xb0\x47\x9a\x4a\x0f\x5c\x56\x57\x80\xbb\x66\x0a\x6d\x64\xf5\x2d\x8f\x05\xc0\x0c\xb4\x00\xb8\x6d\x79\xee\x84\xeb\x16\x47\xa8\x32\x36\x10\x40\x09\x18\x1e\xd5\x14\x51\x17\xcc\xd9\x87\x93\xaa\xe3\xeb\x74\x6c\x10\xc8\x7d\x7f\x69\xb0\xc1\x83\xac\x32\xb8\xa8\xd1\x8a\x0d\x67\xf4\x60\xdc\xd2\xcf\x83\xb3\x1f\xd8\xb3\x3c\xfe\xb3\x8c\x11\x4f\xdc\xd2\x8b\xd2\x12\x25\xcd\x83\x71\x37\xef\x13\x32\x19\xcb\x2d\xe4\x9b\x43\xfc\x66\xe0\xfa\x70\x22\x84\x0c\xca\xd0\x52\xc7\x6f\x27\x38\x1c\x49\x11\x73\x32\xd8\xea\x62\xf5\x8c\xfc\x00\x6a\xf9\xb3\xd5\x74\xf5\x11\x3d\x37\x59\xda\x83\xf2\xf9\x12\x80\x47\xae\x5c\x15\x5f\xd9\xd3\xd0\x85\x30\x4e\x5b\xb1\x4c\x35\x21\x1e\x86\x42\x85\xfa\x0c\x50\x0f\x59\xd4\x93\x10\x2b\x13\x00\x94\x06\x70\x4f\x29\x55\xce\x65\xf3\x9c\xda\x84\xd9\xce\x45\x1b\x90\x7f\x4b\x0c\x42\x44\xd1\x5a\x02\x31\x76\xf8\x44\xd8\xcb\xf8\x40\x4d\x37\x87\xa2\x98\x73\x00\x5b\xc0\xe0\xa1\xb1\x76\xac\xeb\xae\x88\xb5\x76\x88\xfa\x04\xbe\x31\xe5\x36\x03\x59\x90\x54\x79\xe1\x23\x43\x64\xea\x9f\x7b\x16\x80\x86\xd0\x4d\x10\x82\x98\x39\x9b\xba\x5e\x59\x17\x13\x5c\x1a\x20\xaa\x66\xc1\xf5\xd5\x4c\xf2\xd4\x4d\xf7\xce\x52\x18\x6c\xec\x3b\xce\xca\x5d\x14\xd7\x44\x9f\x80\xae\x93\x1b\xec\x1b\x50\x32\xb5\x03\xbd\x0b\xc7\x9a\x9c\x1e\xd2\xfe\x81\x55\x32\x6e\x82\x8a\x96\x24\xdd\xe6\xe6\xf1\x89\x7e\x03\x17\x5d\x5a\x09\x7f\x63\xfd\x56\xfa\x3e\x4b\x5a\x80\x86\xfb\x8d\x24\x74\xcf\xe1\xca\x73\x99\x38\xc3\xbe\x41\xc9\x24\x95\x4c\x9c\xfa\x5e\x61\xc1\x48\xc4\xb3\xae\xd3\xab\xfa\x55\x23\x6c\x4b\x10\xb2\x4d\xbf\xd9\x0e\xca\x4f\x9e\x0a\xe1\x17\xf9\xb0\xf7\xd4\x57\x21\x4d\x02\x40\xff\x4b\x8b\x3e\x52\x59\xe0\x65\x6b\x3c\x60\xbb\xd0\xbd\x7d\xcf\x3b\x21\x69\x9f\xd5\x39\x3d\xb0\x2d\x98\xd2\x15\xec\xfe\x34\xc8\x27\xf2\xea\x00\xf0\x56\x72\x7c\xb0\x13\xc7\xb7\x1b\x18\x17\x2a\x06\x73\x55\x79\x99\xd1\x35\xcb\xaf\x56\x13\x00\xbd\x97\x97\x15\x29\x3c\xeb\xa9\xcd\x3c\x49\xa5\x3b\x45\xf2\xab\xca\x5e\xe4\xb6\x9e\x3b\x08\x8d\xd7\xf3\x55\x9a\x93\xc9\x81\x0c\xb6\x43\xa6\xd7\xa0\x9f\xc7\x16\x15\x76\xfb\x87\x9b\x0a\x4c\x5a\xdd\xa0\x6e\x63\xc1\x40\x61\xc7\xd6\xba\xb5\xfa\x30\xb2\xdb\xd1\x26\xff\xc8\xd7\xdf\xc0\x11\x3c\x17\xce\xb4\xd7\x43\xfd\x4d\x13\x42\x8f\xac\x9c\xa8\xab\x9d\xa3\xd5\x05\xd9\x5b\x8d\x77\x84\xaa\xcb\x59\x32\x2f\x7c\x6b\xa8\x24\x55\x97\xfb\x30\xc8\x33\xcc\x50\x93\xf8\x38\x4f\xd2\x59\x42\x48\x5a\x5e\xed\xc6\xfb\xc9\x17\x5e\xbb\x11\x66\x6f\x6c\x93\x4c\x76\x84\x7a\x5e\xc5\xff\x74\x97\x10\x67\xd0\x64\x0c\x8d\xea\xfa\x33\xbd\x89\x18\xe4\x38\xe5\x2d\x34\x2f\xdf\x86\x20\xb2\xdb\x7f\x2d\xc3\xb4\x6e\x1a\x32\x56\x36\x7b\xd9\xc9\x5e\x0f\x57\x6f\xee\x38\x11\x03\x33\x96\xb4\x93\x82\x8c\x7d\xce\x97\x5f\x41\x7b\x0e\xcd\xf1\x99\xfe\xd1\x5c\x30\x26\x54\x32\x45\x4b\xa6\x1e\x22\x25\x51\xd3\xd5\x76\xde\x38\xb5\xe8\x9f\x93\x19\x49\xf5\x77\x61\x28\x78\x8c\xb5\xeb\xf3\x46\x54\x2c\x58\xc4\x88\x75\x97\x36\x05\xe2\xa3\x08\x9a\xb6\xfd\x00\x91\xd4\x22\xdf\xa5\xc3\xc4\xdb\x6d\x3e\x93\x5d\xa4\x74\xaf\x18\xc4\x4a\xbf\xef\xab\x80\x73\xc5\x97\x0c\xb9\x59\x8c\xd6\xa2\xb4\x3f\xb5\x50\x91\xb7\xa0\x10\x91\x3f\x89\x96\x6d\x28\x44\xe0\x4e\x02\x8e\xc1\x3d\x99\x28\x83\xdd\xe7\xfb\x59\x81\x69\x3a\x35\xe0\xfc\x81\x07\x96\xc1\x44\x2c\x1d\x26\xa2\xea\x81\xfe\x73\xee\xa2\xb0\xc6\x72\x6f\x64\xbd\xbe\xf8\xa6\x07\x11\x04\x3d\x44\x7d\x63\xb9\x51\xb6\x5e\x8f\x08\x1d\x55\xbb\x4c\x1a\xba\xba\x58\x4c\x77\x62\xcd\x01\xf6\xa6\x54\xf3\x9c\x55\x88\x5d\x96\x4a\x36\xda\x4b\x7e\x1c\x35\x3e\x03\x6d\xd7\xb6\x8a\xbd\xd0\x97\x4a\x45\xe8\x81\x6d\x44\x8c\xaa\x4e\xbc\x94\x64\x64\x50\xe1\xdd\xfd\xd9\x46\x71\x5d\x8c\xff\xd3\x98\x67\x1d\x0d\x6f\x37\x7e\x38\xdd\x81\xa5\xec\xe3\xff\xfa\xa3\xfa\xfc\x31\x59\x24\x08\x23\x53\xd7\x8f\xff\x78\x6b\x1e\x89\x31\x1d\x31\xaf\xf9\x5e\x13\xe2\x82\x05\xad\x88\x73\x6a\xf2\x44\xbf\xa7\x95\x93\x33\x6d\x16\x8c\x65\xa2\xae\x8b\x2b\x78\x6a\x01\xa5\x83\xd5\xb8\x0d\x6c\xbb\x4f\x27\x43\xbc\x9e\x50\xc9\x46\xa5\x50\xa3\x01\x46\x30\x26\xe7\x05\x53\x57\x02\x25\xe9\x39\x3a\xf0\x09\xaa\x26\x33\x12\x74\x41\x9a\xa4\xd0\xe1\xf8\xc1\x61\xdc\xf4\x20\x56\xf3\x6f\x65\xae\xd2\x51\x75\xb8\x56\x32\x03\x7f\x42\x48\x36\xe9\x4f\x56\x02\x64\x55\x73\x48\x4a\xe0\x1b\x3f\x8c\xa5\x3e\x5c\xbc\x1d\xb0\xb0\x7e\x5b\xa3\x11\x5d\x33\x43\xad\x1a\x66\xf8\x6b\xae\xb6\xef\xb2\xeb\x46\xc3\xb9\xf5\x9d\x4c\x8a\xc7\x19\xb9\xd8\x5e\x4c\x26\x5b\xb2\x1e\xb3\x8c\x6e\xc6\x6c\xf4\x07\xd2\x1c\xae\x2f\x8b\x28\x8a\x37\x63\xb6\x13\x71\x31\x59\x13\x42\x37\x43\xb6\xb2\x42\xec\xb7\x32\x16\x74\x03\xce\x6d\x86\xa7\x5b\xd1\xa6\xe7\x1b\x42\xe6\xce\x4c\xa0\xc3\x04\xee\x78\x5b\x96\x5c\x6c\x2f\x45\xcf\x03\xc7\xd6\x3e\x70\xec\x99\x1f\xbd\xd8\x22\xed\x67\x40\x9a\x19\x45\x7b\x7b\xe7\x74\x36\xdf\xe4\xfe\x17\x7d\xf5\xd8\x52\x73\x8d\x5d\xb3\x56\xed\xd6\x84\x58\x8a\x45\x0f\x10\xb0\x63\xd2\xa4\xf4\x6d\xc1\xda\xdd\xb4\x47\x44\xcd\x05\x80\x69\xd0\x1f\xcd\xc3\x40\x0a\x34\x3e\x0e\xfe\x2c\x47\xdd\x7c\x5c\xc6\x82\xe6\xc4\xea\x13\xec\x4d\x35\x07\x46\x23\x6f\xa7\xfe\xbe\xf3\x06\xe4\x5e\x62\xed\x45\xbd\x64\x8b\x25\x45\x94\x57\x07\x22\x04\x60\xaf\xf6\x1b\xc1\x54\x2c\x17\xf9\x92\x5c\x34\x7e\x1f\x7b\x1e\x0b\xbc\x53\x1c\x45\x5c\x12\xf3\xf8\x75\xe1\x20\xe1\x50\x11\x65\x5e\xc7\x32\x4c\x29\xdc\xeb\xd9\x3d\xfe\xc9\x30\xc2\xf6\x99\x51\xfa\x09\x72\xfa\xbd\xed\x93\xd7\x68\xd1\x3d\x05\xaa\xba\x62\xc9\x85\x9a\x4c\xc8\xb7\xd2\x08\xdd\xa3\x11\x2d\x17\xca\x68\x50\xe1\x2f\x25\xe8\x68\xbc\xe6\x05\x57\x5a\x7c\x86\x73\xeb\xe4\x3f\x8b\xfe\xd4\x23\xe1\x99\xc3\x07\xf0\x51\xb6\xb4\x62\x92\x22\xbe\x09\x15\x01\xd5\x91\x35\x06\xa6\x15\x8b\xf3\x79\x91\xa5\xab\x8c\xe8\x2b\x1b\x95\x96\xba\x09\x47\xac\xc2\x5b\x38\xc8\xb0\x62\x2c\x89\xbd\x84\xd7\x75\x79\xc5\xb8\x03\x52\xaa\xf2\x3f\x79\x5d\xc7\x82\x95\x74\x68\x00\x55\x68\x49\x88\x67\x40\x98\xb1\x7c\x1e\xcb\xcb\x64\x5e\x66\xa9\xd4\x65\x91\x54\xff\x3a\xf8\x37\x90\x34\xc1\x0d\x27\x63\xd5\xc0\x61\xd2\xe8\x9d\x6e\xb5\xcd\x24\x38\x9b\x16\x3e\x6f\xde\x4a\x14\x87\x5d\x69\xc2\x01\xb2\xc0\xc6\xdc\x0a\xb9\x36\x84\x83\x37\x52\x1c\xf6\x90\xc6\x0e\xc3\x0a\x57\xdc\x86\x35\x71\x74\xcd\x3c\xd5\xd6\x0d\x57\xdf\xf2\x62\xcf\x65\xac\x28\x64\x05\xb4\x93\x23\x42\xb7\x6c\x98\x5c\x0c\x75\x2b\x48\x5d\x17\xf1\x70\x4b\x2e\xb6\xfa\x82\x67\xd6\xe5\x21\xe0\x4a\xca\x48\x5d\x8f\xfe\x28\x47\x74\xc7\x9e\x89\x78\x4f\xd7\x64\x3e\xba\x1d\xa5\x9b\x28\xd2\xa1\x8c\xed\xe7\xa3\x72\x94\x0e\x37\x7a\x7b\xaf\xcc\xf6\xbe\x27\xb8\x40\x46\x7b\xd8\x6c\x74\xe4\xb6\xae\x77\x75\x1d\xef\xd8\x48\xd7\x60\x15\x45\xab\x21\xdb\x91\x7b\x2b\xae\xcf\x68\x11\xbb\x85\x9b\x6f\xe2\x5d\x14\xc5\x2b\xb6\x23\x54\x5e\x25\x51\x34\x84\x4a\x1a\x6c\x5e\x5d\xc9\x23\xfb\x8d\x23\xb5\x95\xa0\x19\xa1\x8a\x56\x9e\x39\xda\x23\x20\x0f\x3e\x92\xba\x8e\x8f\xd3\x6d\xae\xde\x5a\x3a\xb3\xa3\x87\x64\x79\xee\x90\x85\x19\x57\x18\xb0\x62\xc7\xf8\x68\x29\xc3\x7c\x1b\xe1\x5e\x56\x2e\x03\x9f\xfd\xdf\xc7\xcc\x1d\x18\xce\xc5\xb1\xfc\x3c\xae\x26\x30\xd3\x66\xd3\xa7\xe9\xf4\x29\xf9\x3c\xb8\xe8\xa0\xe3\xad\xe3\xbd\xc4\xbb\xc8\x55\x32\x77\xe8\xbd\x5f\xa4\x08\x97\xfb\x45\x43\xa9\x85\xde\x50\xcf\x0d\xed\x99\x21\x36\xb3\x84\x6f\xd8\xbb\x78\x47\x49\xe6\xf9\x25\x4b\xd2\xfc\x8a\x09\x8b\x02\x7f\x7f\xf0\xba\xd2\x8e\xd3\x98\x3d\xfd\xdc\x21\x5e\x1d\x4e\xaf\x7d\xf2\xe5\x95\x28\x2b\x25\x0f\x2b\x25\x64\xfa\xda\xd0\xee\x78\x9b\x49\x0b\x0d\xc7\x70\xa9\xf7\xf9\xdd\xd0\x8a\xab\xd7\x70\xea\xb5\xa8\xa6\x8f\x0d\xef\xb7\x39\x15\x69\xc9\xe4\x82\x2f\x07\xfa\x7f\x70\x7e\x8c\xb4\x28\x31\x1a\x32\xbd\xa8\x21\x50\xd1\xbf\xcb\xe9\x36\xab\x5e\xdf\x96\x6f\xa4\xd8\x73\xa9\xee\xc0\x7d\xcc\xb0\xc7\xd3\xbf\xeb\x54\xc8\x1e\x0f\x97\x63\x72\xa2\x37\x3d\xc5\x87\x44\xcf\xa6\xf4\x05\x5f\x42\xea\xaf\xc4\xea\x1c\x25\xf4\x5a\xac\x4e\x34\x5b\xaf\xbf\x07\x1b\xd0\x36\x75\x36\x00\x8a\x06\xb6\xa8\x6a\x3e\xd2\xdb\xf1\x28\x1d\x1d\x4a\xb0\x2b\x19\x2d\xe3\x63\x09\x56\x34\x46\xbd\xd0\xc9\xc9\xdf\xa7\xbb\x39\xb6\x59\x6d\xc6\x63\x09\x14\xac\x0b\xb9\x64\xba\x97\x80\x4a\xa8\xcc\x76\x9c\x31\xee\x39\x95\xc1\xcb\x5b\x2c\xe9\x8c\xd0\x61\x02\x2d\x78\x7d\xe4\xb2\xc8\xee\xd2\x9f\x7c\xc3\x18\x6f\x58\xf8\x54\x89\x0f\xbc\x9c\xf3\xf4\xb5\xde\x88\x7e\x10\x6b\xc3\xa2\x6d\x87\x0a\x4d\xc7\x24\x12\x0f\xbc\xd5\x75\x24\x6a\x2b\xc5\x2d\xe8\xa7\x5f\x48\x29\x64\x3c\x32\x85\x54\x8f\x76\xd9\xdd\xa3\x52\xa8\x47\xd7\xfc\x11\x34\x67\x73\x28\xa6\x23\x32\xf0\xda\x27\x4c\x52\xf3\x26\xa2\xc7\x3d\x95\x54\xff\xf3\x76\xcf\x57\x29\xa7\x62\x9f\xfd\xf3\xc0\x53\x85\x4c\x29\xfa\xef\x93\xc5\x70\x85\x0c\x74\xd2\x6f\x78\x39\x1e\x53\xbd\x61\x02\xf2\x2d\x21\xa6\x93\xfb\x1b\x7b\xa6\xa7\x6d\x4d\xfa\xba\xda\xf2\x9d\xeb\x5e\xb6\x75\x83\x43\x0a\x3a\xbf\xa3\x3e\xe1\x51\x54\x3e\x3c\x1a\xbd\x0d\x80\x97\x24\xd7\x0a\xdd\x0c\x94\x16\x81\x33\xab\x3d\x60\xfa\x96\x6c\x0b\x1e\x7a\x7a\x1b\x2b\x14\x0d\x43\x5d\x8e\xb9\x50\xcf\xfd\xb1\x9c\x82\x04\xff\x12\xaf\x1d\x46\x9c\x4f\x51\xc2\x4e\xd5\x1c\x04\x67\x4f\x38\x26\xf4\x6b\xee\x0c\x1f\xc1\x6f\xf6\x1b\x69\xcc\x1d\xa1\x36\x4d\x7d\x9d\x2d\xea\xa7\x3a\xbe\x25\x4c\x49\x06\x06\x3c\x0f\x03\xf9\x6d\xe2\xdc\xd1\xdb\xe7\x8d\xd8\x79\xa5\xa5\x71\x5b\x21\x2f\xdc\xf8\xe9\x4a\xe6\x87\x95\x2c\x2c\xdf\xbd\x86\x44\xd1\xaf\xa6\xfb\x8d\x47\x27\x0a\x35\xb9\x05\x7f\xc8\x58\x8e\x10\x0f\x95\x47\x04\x63\xd5\xa3\x03\x4f\x79\x8a\x88\xc6\x0d\xe6\x87\x51\x8d\xc6\x99\xbe\xb9\x27\xe9\x8c\x90\xf1\xcc\x73\xcd\xae\x2e\x0e\x97\x12\xac\x01\x6c\x13\x0e\x94\x3b\x2d\x6b\xb7\xab\x06\x09\x03\x2c\x4f\x00\x19\x74\x30\x71\x56\xbe\x2c\x16\xe5\xd2\xd4\x78\xba\xda\xea\x83\xf8\x17\x6f\xe4\x4a\x2b\x82\x0b\x0a\x09\x81\x98\x1f\xb5\x88\x7a\x08\x6f\xb8\x7a\xa7\x77\x80\x67\x2a\xed\xb3\x6e\x7b\xf4\x5b\xe9\x06\x1d\x37\x59\xdd\x42\xf8\xa2\x7a\xf8\x83\x2d\x8f\x39\x31\xc6\xa0\xae\x94\x77\x77\x7b\x1e\x94\x44\xee\x39\xf8\xfb\x36\xf3\x0c\x95\x24\x54\x32\x95\x63\x46\x2f\x72\x2f\xda\x52\xfd\x96\x2c\xa1\x39\x8b\x65\x03\x40\xf9\xf8\x09\xc8\x06\xc8\x27\xab\xfb\x8b\x28\x26\x17\x4f\x96\x28\xa6\xf9\x67\x6b\xc6\xca\x71\x7e\x75\x05\xdc\xa5\x71\x36\x97\x8b\x27\x9f\x67\x93\xd9\x32\x4d\xc8\x15\x13\x24\x67\x99\xf3\xee\x1d\xc6\x10\x39\x9e\x2d\x2f\x05\x21\xf7\x90\xe1\xe7\xd9\xf8\xc9\xd2\x9c\xac\x25\xcb\xc6\x33\x7c\x98\xa9\xf4\x62\x43\x28\xdb\xd7\x1b\x80\x24\x34\x1b\xcc\xa3\x11\x49\x27\x33\x2b\xf3\x54\x97\xc9\x5c\xa5\x09\x63\x15\x8a\x5e\xca\x81\xaa\x54\x93\x19\x76\x94\xde\x83\x5b\x7d\xd4\x5a\x43\x7a\x0b\x69\xfc\x45\x40\x7a\xd1\x1f\xcd\x5f\x37\x7f\xc7\x06\x59\xbb\x19\xde\x98\x13\xdc\x81\x08\x7c\x9f\x2a\x28\x0c\x25\xcf\xfe\x91\xb4\x19\x60\x1a\xe4\x2e\x5e\x24\x4b\xef\xbb\xf6\x14\xb0\x96\x73\x20\xb2\x54\x65\xfb\x04\x77\x4e\x28\x8f\xa4\xb1\x7d\xa8\xf4\xc5\x83\xe6\xcc\x16\x85\x6d\x37\xf6\xca\x9d\x7d\x36\x5f\xa8\x25\x29\x17\xfa\x9f\x65\x14\x59\x43\x3b\xfc\xdd\x88\xe3\x90\xaa\xb9\x8f\x25\x17\xe2\x52\x07\xd9\x1d\x46\xd8\x1d\x26\x63\xf8\xe9\x42\x2c\x97\x83\xcc\xe5\x97\x59\xd4\xe5\xe9\x16\xda\x88\x08\x98\xe5\xc2\xff\xbd\x9c\x37\x85\xfb\xc1\x24\xd5\x01\xfa\x24\x08\xea\x87\x21\x28\xe0\x59\xfb\xa1\xf7\x37\x85\xb8\xce\x8a\x4e\xad\x2a\xe6\xe2\x16\x62\x39\xa8\xa6\x7b\xc9\xd7\x71\x0e\xa3\x49\xa2\xc8\xe0\xf6\x4a\x5a\x4d\x8f\x59\x41\x5c\x29\xf8\xb3\x41\x35\xd5\x63\xf4\xd6\x5d\xfa\xcf\x4b\x64\x6b\xb1\x72\x53\xd3\xc8\x56\x31\x67\x3f\x82\x79\x24\xea\x3f\xe7\xd2\x5c\xbb\xa4\x21\xf4\x4d\xb9\xde\xcd\x60\x3b\x40\xc5\xe1\x73\x21\xe4\xba\x7f\x2a\x74\xb6\x5d\x80\x34\xb3\x25\xbe\x31\x25\x36\x25\xe9\x3d\x3b\x1d\x89\xeb\x7f\x20\xdc\x93\x3d\x5f\xe7\xe1\x16\x91\x42\xa5\x60\xc3\x4b\x25\x6e\xd0\xaa\xae\xf1\x16\xa0\x6b\x05\x66\xe6\x3d\x75\x32\xc5\xfe\x60\x8a\x0d\x33\x0d\xb3\x80\xcf\xf5\x45\xac\x3f\x8b\xe7\x4d\x5f\x7d\x50\x6e\x83\x74\x19\x20\xb6\x26\xe5\xa0\xa1\x3c\x01\xc2\xed\x33\x4b\xd4\xd9\x9b\x5f\x93\x0d\x72\xbb\x51\xa0\xba\x48\x4e\x5e\x9e\xa0\xf3\x7c\xe7\xef\x85\xe3\x40\x1a\xf7\x28\x9d\x4f\x14\x6f\x03\xcf\x50\x94\xe8\x19\x18\x20\xf5\x86\x35\xd6\xd6\xa9\x70\x77\xfc\xda\xa1\xc3\xd1\x6f\x46\x12\x79\x9f\xf9\x65\x98\x60\xce\x5b\x5f\xa4\xfc\x0a\x7c\xc7\x58\x8e\x7c\xe4\x54\xb2\x60\x27\x37\xcb\x4c\x32\xb7\x95\xbd\x33\x5d\x20\xb1\x13\x92\x33\x9d\x30\x8e\xcb\xb9\x2b\x0a\x1b\x3a\xf9\x90\xc7\x92\xa4\xfa\xa4\x59\xf3\x4d\x76\x28\x54\x83\xa4\xdb\x23\xe3\x7f\xa5\x62\xbf\xeb\x9a\xaf\x1c\x22\x6f\xcf\x47\x3f\x76\x3e\xaa\xb8\xc2\x77\x16\x24\xfa\xe8\x15\xd9\xcc\xc7\xbf\x4b\xaf\xe5\xce\x42\xa2\xfb\x1a\x5c\x32\x6e\x9e\x6c\x0c\x79\x08\xbc\x26\x06\x21\xec\xfe\xd4\xb0\xa1\x2f\xd4\x92\x49\x3a\x94\x51\xf4\x4e\xc4\x25\xba\x3a\x86\xa9\x0d\xa6\x78\x72\x42\x73\x10\x30\x58\xc2\x5a\x77\xa4\xb5\x63\x0b\xde\x55\x0b\x0f\xcc\xac\xfe\x81\xc4\x67\xed\xe6\x03\xdd\xb8\xb0\x2c\xbd\x19\x05\x01\x0b\xbd\x0d\xc6\xdd\x40\x83\x65\x2c\x63\xe5\x9b\x8b\xd0\x77\xa2\x9d\x96\x74\x3f\x37\xd0\xed\x74\x3c\x2e\x4d\x93\xf4\xea\x7a\x59\x6e\x44\xda\x7a\xf6\xef\x9b\xda\xfa\x5c\x0a\xc5\xda\x0e\x56\xb0\x62\x1c\xed\x32\x79\x6b\xbe\x06\x49\x4f\x56\x44\xc0\xbd\x2b\x56\xec\x19\x00\xc5\x06\x69\x2c\x17\xbc\x5e\x84\x8a\xa2\xbf\x5f\xca\xf1\x11\x15\x2d\xeb\x69\xd0\xb6\xb4\x35\x78\x90\xf2\x79\x91\x55\x95\x49\x0e\x7f\xd3\xeb\x1b\x1b\x66\xfe\xa2\xb7\x32\xdb\xdb\x30\xf7\x37\xbd\xcd\xd7\x37\x5c\x41\x18\xfe\x75\x82\x63\xe1\x97\x9c\xdf\xee\x85\xec\x59\x18\xc6\x7a\xa4\xbd\xab\x7c\x6d\x0d\xbf\xdb\x11\xef\xc4\x09\x2e\x99\xbf\x42\xf6\xe7\x51\x34\x69\x46\x01\x2b\x93\xae\xe8\x86\xf9\xb9\xd0\x35\x8b\x39\x7b\xd3\xbb\x1f\x13\x62\x1f\x6b\xb6\x8c\x3b\x55\x8f\x32\x64\x82\x96\x7f\x88\x8d\x2c\xff\x10\x70\x86\x3e\x8c\x4e\x4d\x11\x44\xba\x57\x8d\x51\x71\xf5\xb7\x92\xaf\x73\x95\x5d\x17\x1c\x08\xd3\x0d\x33\x93\x4f\x1f\xa4\x08\x1d\x81\xe3\x18\x63\x25\x59\xc3\xe5\x79\xdf\xa8\x01\xb3\x6b\x71\xe4\x46\x0f\x58\x72\xa3\x42\x34\xca\x3a\x77\x7d\xd8\xf4\x6b\xa2\x5a\x1b\x5a\x83\x33\x08\x9f\x60\x4d\x02\x2c\x04\x0f\xa9\xc4\x77\xd7\xbf\x08\xaa\xc1\xad\x96\x29\xe4\xe4\xbe\xda\x83\x32\x5c\x89\xfd\x55\x18\x31\x37\x6d\x9a\x84\xc1\xe9\x99\x7c\x2e\xd9\x3e\x8a\x62\xfd\x8d\x79\x4d\xa3\x5b\x97\x02\x01\x1c\x76\x51\x14\x6f\xd9\x6e\x12\x84\x92\x93\x1d\x45\x25\xf6\x6c\xed\x08\x5f\x21\xa8\x00\x00\x0e\xf3\x03\xde\xef\xd8\x68\x44\x47\xf0\xd7\x88\xb1\x7c\x1e\x6f\x59\x4f\x87\x84\x25\xd0\x56\x06\xc9\xfe\xe3\x88\xa4\xf1\x48\x67\x0e\x99\x6c\x59\x92\x8e\x76\x00\x98\x36\x42\xff\x80\x2d\xeb\xeb\xe7\x56\xc5\x1f\x3f\x21\x61\x45\x91\xd7\x16\x1d\x12\x04\x6e\x9d\x19\xdb\xd2\x8a\xad\xe9\x81\xb5\x3a\x83\x16\x6c\xdd\xea\x40\xf3\x00\x1d\xaf\xd8\x2f\x32\x76\xcb\x84\x10\x9f\x76\x6d\xa7\x63\x56\x6d\x76\xbe\x21\xeb\x90\x63\x36\xa9\x90\x1d\xef\x44\x95\xcc\x6f\x6e\xb8\x7c\x5d\x7e\xcf\xef\xbe\x12\xb7\x70\x3f\x7f\x26\x49\x10\x0e\x6e\x76\x3a\xe2\x43\x2b\xe2\x6f\xfb\xf4\x9d\xa4\xfc\x23\x5f\x3d\x17\xbb\x5d\x56\xae\xdb\xfb\xeb\xaa\x23\xdf\x37\xbb\xe9\xaa\x5c\x70\x9f\x25\x1a\x55\x1c\x36\xff\x17\x05\x5f\x29\x99\xaf\x3a\x27\xd0\x0b\xee\x1c\x2a\x09\xa1\x9b\xbc\x5c\xbf\x11\xd5\xb7\x9d\x8d\xc5\x8a\x28\xb3\x81\x02\xbd\x74\xce\x26\x33\xaa\xd8\xc4\xb3\x5c\x14\x2c\xa1\x59\xeb\x66\x79\x21\x2e\x01\x6e\x20\x63\x3f\x79\xc7\x71\x46\x73\xc8\x93\x58\xc5\x29\xd8\xf4\x5f\x38\x6a\x39\xba\x13\x47\xfe\xed\x59\x05\x1a\xf8\x78\x4a\x83\x40\xdb\xe0\x23\x7d\x79\xe7\x25\x2f\x9d\x1c\x20\xdb\xd8\xb5\x12\x16\x3d\x7e\x0d\xb6\xce\xa8\xea\x98\xff\x24\x63\x89\x27\x30\xba\x0b\x41\xcb\x1b\x97\x45\x55\xfc\x20\x8e\xfc\x97\xbc\x3a\x64\x45\x71\x47\x52\x7e\x99\xcc\x4b\x2b\x12\x97\x20\x12\x9f\x08\x2d\x04\xf4\x23\x3e\xe9\x3c\xdc\x04\x87\xe0\x5d\x7a\xf7\x82\x69\x25\x76\x5c\x6d\xf3\xf2\x06\x1b\xc6\xd7\x31\x99\x97\x0f\xb8\x20\xbb\xd7\xa3\xf4\x7b\xa3\xd7\x08\xe4\x05\x1c\xb5\x9f\x64\x5c\x52\xd9\x34\x6b\x38\x73\xf2\x8c\x6e\x06\x1e\x42\x39\xf8\x5b\x40\xa2\x93\x71\xae\x31\x9f\x28\x91\xe6\x27\x73\xf4\x9b\x19\xf2\xcb\xf9\x19\x42\x05\x2b\xcf\xcf\x92\x8c\x25\xb4\x6a\xcf\x92\xec\x52\x5d\x8c\xc7\x99\xd5\xc3\xdb\xd3\xa9\xa2\xc0\x82\xe7\x3d\x56\x89\xb9\x60\x07\xd8\x07\x52\xfc\x87\x09\x1a\x57\xec\x3b\xa7\xd2\xc9\xa9\x6c\xa6\x55\x48\x59\x58\xe1\xbc\xfa\xe5\xc1\x41\xf1\x06\xc3\x12\x4a\x0d\x5b\x33\x08\xed\xd4\x61\xfa\x44\x11\x1a\x32\xf6\x0c\x1a\xd4\xf9\xe1\x39\x9a\x21\x60\x0e\xf1\x46\x22\xb3\x13\x2a\x83\x09\x65\x0c\xb5\xde\xa8\x58\xd2\xcc\x42\x76\x41\x8f\x58\x68\x93\x1b\x91\x15\xcf\xe1\x95\x0c\xcc\x0f\xa0\x4b\xfc\x50\x62\x79\xad\x0c\x59\x25\x02\xc8\xeb\x0e\x93\x14\x35\x4c\xf6\xa5\xd7\x3c\xe8\xa8\x28\xca\x18\x2b\xc3\xdb\x63\x14\xfd\x53\x9a\xeb\x29\xfd\x41\x57\xe6\x60\xea\x01\x27\x17\x12\x64\xd2\x03\x4e\x7f\x6a\x5d\x6f\x3c\x27\x9d\xe4\x22\xbb\x2c\x7b\x9e\xbc\xb3\xf1\x98\xf8\xe1\x8b\x6c\xe9\xd5\x9d\xe5\x8b\x6c\x69\xe7\x1c\x02\xcf\xf6\xa8\x68\x7a\x74\x55\xc6\xc8\x10\x54\x53\xd6\x5d\x11\xed\x64\xbc\x7b\x56\xf3\x06\xc8\x83\x37\xc0\x8b\x98\x1b\xc0\xfa\xba\x2e\xc1\xe1\x0f\x5b\x13\x45\x72\x3e\x99\xc8\x74\x3c\x2e\xbd\x2d\xcf\x3d\x06\x4a\x42\x33\xf6\x4c\xc0\xb3\xf7\xbc\xe7\x39\xe4\x99\x00\x2b\xe5\x53\xda\xbc\x05\x8a\xbe\x84\x4d\x34\x27\xa7\x9e\x77\x95\xa1\x9f\x20\x8a\x86\x3a\x5f\x72\xba\x80\xc7\xc0\x2c\x6e\xaa\x33\x99\x11\x72\x41\x26\x13\x43\xe8\xd6\xe8\x7b\x83\x64\xa5\x4e\xa4\xe5\xfa\x1e\x0b\x78\x74\x23\x33\xe6\xee\xa8\xd4\x85\x13\x4e\xdc\xdc\x14\xa0\xf7\xbf\x95\xb9\xe2\x41\x15\x8d\x75\x5d\x14\x71\xd6\xd6\xfb\x43\xe2\xba\x8e\xe3\xbe\x70\x36\xec\x0b\x25\xf3\xaf\x45\x70\x01\x34\x56\x53\x5f\xe5\xc7\xc0\x6b\xd9\x7d\x30\x22\xe9\xab\x7f\xf5\x0b\xfa\x9d\xd1\x79\x8e\x5c\xe0\x3b\x68\xe1\x88\xe2\x53\x57\x5f\xc5\xf4\x75\xdf\x10\x50\x9f\x7d\xcf\x0a\x44\xdd\x1b\xae\xbe\xce\x79\xb1\x8e\x09\xd2\x5b\x9f\x68\x03\x97\xd3\xcd\x61\x18\x0f\x83\x47\x84\xc6\x5d\x7e\xe8\x0e\x8e\x55\x56\xaa\x17\xeb\x5c\xe9\x4b\xb1\x91\x53\x7a\x36\x36\xa3\xe6\xb1\x46\x7e\x0a\x8c\xfc\x40\x32\xa0\x6e\xac\x3c\xb6\x44\xdf\xd4\x2f\x30\x05\xec\x24\x41\x7c\x3b\xa3\xcd\x7e\x6b\x3c\x45\xfc\x0b\xa1\x05\x5a\x0a\x3a\xc3\xda\x53\x0e\xec\x35\x0d\x0d\x05\x3d\xcb\xaf\x36\xcd\xfe\xd6\x4a\xc3\x01\xf4\xd6\xc6\x30\x30\x4e\x82\xdc\x1d\x77\x29\x45\x86\xd2\x80\x56\xfe\xfc\x37\x28\x29\xfa\x57\x83\x74\x6b\xd2\x52\x4f\x2e\x4d\xd7\x8e\xf6\x91\x86\xae\x31\x3d\xfd\xee\x0e\x2c\x3e\x8f\x39\xf3\x2f\x79\x6d\xc5\x9c\x3b\x61\xe1\xfa\x4a\x7d\x76\xc1\x60\x0e\x74\x0d\x06\x09\xe9\x1a\x4c\xf1\x39\xf7\xbc\x20\x8c\xff\x03\xe4\x9c\x5a\xdb\xca\x0d\x90\xec\xb9\x5a\x71\x97\x82\x80\xf2\x0c\xb4\x1f\x4a\x98\x84\x48\x98\x2f\xc1\xfd\xa8\xae\x13\x3b\x69\x3c\xf7\x0b\x37\x9f\x7a\xa6\xc8\x1b\x51\x31\xde\xbc\xf2\x48\x2d\x72\xc3\xa2\xf2\x8c\x05\x30\x27\xab\xba\x6b\x9b\x1d\x9a\x78\x25\xf6\x18\x0d\xe6\x87\xbc\x63\x7e\x68\x92\x49\x43\xd0\xad\x44\xc7\x0c\xd1\xa4\x30\xd7\x5b\x48\x62\xcd\x11\xb9\x33\x47\xc4\xb5\x6e\x2d\x12\x03\xab\x5f\x19\x58\x24\x12\x80\x3f\x78\x9b\xff\xd9\x7d\x34\x0c\x84\x54\x67\x54\xe1\x6d\xe0\xdd\x31\xab\xeb\xc7\xff\xf5\xc7\x7a\x6c\xb1\x86\x10\xbd\x43\x4b\xf6\x73\x0e\x77\x9d\x94\x9f\x9a\xc5\x2a\x3b\xe6\x15\x78\x37\x82\x29\xcf\xe0\x01\xdc\x5b\xb7\xe7\x52\xe3\xb2\x62\x00\x52\xe5\x09\xb9\xbe\x19\x6c\x14\xbd\xb5\xdc\xa8\x78\x6a\xca\x8e\x86\x62\x80\xa2\x34\x68\xa9\x72\x2a\x5b\x8a\x8a\x1e\xcf\x63\xa3\x14\xe9\x78\x1d\x9b\x70\x2b\x16\x28\x84\xfc\x73\xe1\x0b\xb5\x9c\x96\xe2\x5b\x9c\xfc\xe4\x5e\x69\x59\x24\xa7\x23\x8c\x1d\x59\xdb\x98\xf1\x38\x87\x77\x69\x87\x37\x24\x57\xfc\x6f\xe8\xe5\x3e\x4c\xf4\x36\x2f\xe9\x48\xf2\x8d\xe4\xd5\x76\x44\xdd\x33\xb6\xbe\x47\x65\xe7\x6c\x18\x7e\x57\xee\x72\x44\xcd\xa7\xe1\x80\xf7\xee\x72\x6d\x62\xb1\x01\xef\x59\x23\xad\xea\xbd\x56\x7e\x12\x37\x07\x9b\x3d\xc3\xdb\x22\xc3\x30\xb8\x9f\x3e\x37\x5f\xdb\x5d\xa7\xae\x1b\x5c\xd0\x49\x5b\xf7\x4a\xae\xa6\x4f\x49\x14\xfd\x60\xbe\x71\x07\x60\xb7\x73\xaa\xdb\x6c\xff\x95\xe8\x5e\x1a\xc3\xc7\xb1\xe6\x5d\x6c\xb5\x43\x3d\xe3\x6d\x6e\xfb\xad\xd5\xb0\x7e\x64\x95\xb0\xcd\xc1\x79\xe0\xb3\xed\x77\xba\x0f\x27\x84\xee\xbe\xbf\xdb\x36\x98\x1a\xdb\xc3\x9b\x50\x65\xce\xa8\x97\xba\x44\x38\x83\xff\xd5\x13\x1b\x34\x78\xbf\xe2\xf2\x31\x86\x49\x9f\xca\xc2\x2c\xb6\x53\x73\x38\xfe\xe5\x4f\xed\x11\x09\xdf\xa2\xd6\xf8\x2f\x7e\x69\xfc\x0e\x4e\x27\x9a\x8b\xf8\x35\xae\xda\xdf\x24\x7b\x3d\x35\x9a\xf6\x8a\xdd\x9f\xe8\xdf\x75\x00\x2e\x77\x44\x47\x03\xed\x76\xb3\x51\x71\xef\x3e\xd7\x7c\x89\xf6\x41\x32\x8a\x62\xb0\x02\x62\x2d\x92\xad\x92\xdc\x97\x43\xa6\xca\x28\x32\x4e\xd0\xe4\x94\x4a\x74\xbd\x50\x25\x7b\x3d\x7d\x59\xe6\x8a\xdd\x2b\x81\x3b\x5b\xb7\x1d\x9e\x68\x06\x69\x47\xa7\xd3\x80\x97\xf1\xe8\x98\x15\x07\x3e\xa2\xa3\x51\xdb\xad\x14\xc8\xf7\x00\x1a\x0c\xf8\x16\xc0\xfe\x40\x7f\xf0\xff\x91\xf7\x6f\xcb\x6d\xe4\x58\xbf\x20\x7e\xcf\xa7\x10\x33\xaa\xf2\x9f\xf8\x08\xd2\xa4\x64\x5b\x56\x4a\x30\xc3\x65\xbb\x0e\xdd\x3e\x54\x97\xab\xba\xba\x9a\x62\xfb\x9f\xcc\x04\x45\xb4\x93\x00\x2b\x13\x94\xad\x12\x19\xb1\xef\x27\x26\x62\x3f\xc2\x8e\x89\xb9\x9e\x87\xd8\x4f\x31\xd7\xfb\x49\x26\xb0\x70\x48\x20\x99\x92\xfd\xf5\xf7\xcd\x8e\x98\x19\x5d\xa4\x98\x00\x12\x67\x2c\x2c\x60\xad\xf5\x5b\xa0\xd3\xa4\x8f\x29\x07\x5f\x58\x29\xae\xd6\x58\x22\x12\x3f\x03\x65\x4b\xf7\x6d\xa3\x87\x1c\xe1\x63\xfc\xac\x15\x6e\xd5\x89\x01\x44\x06\xc2\x3d\xcd\x8e\xc8\x25\x36\x5a\xe3\x11\x7e\x18\x52\xbf\x9f\x13\xbd\x14\x28\xc2\xb4\x0a\xcb\x0d\x60\xb4\xbb\x2b\x0f\xb4\xd0\x83\xdc\x26\xd2\x97\xfc\x62\xee\xfb\xbc\xec\xd1\x86\x26\x77\x2a\x86\x30\x32\xb6\x52\x79\x61\xc1\x66\xac\x0c\x5d\x1a\xdd\xb7\xe1\x84\x10\x61\xd5\xde\x88\x18\x38\x5b\x3a\x23\xfa\x5c\xd1\x84\x63\x81\xd0\x9e\x0f\x06\x7b\x84\x3c\xec\x86\xaa\x05\x20\xc0\x7c\xfd\x57\x89\xab\x19\x9b\x03\x12\xcc\x8c\xcd\xcd\x01\x43\xfd\xca\x57\xae\x08\x03\x0a\x0e\x3d\xbc\xa1\x39\xcb\x4a\x7d\x2e\xc3\x0f\x66\x97\xdb\xf1\x78\x3c\x1e\xaa\x7f\x93\xa5\x7a\x9e\xc2\x33\x2b\x2e\xb7\xc7\xe3\xf1\x62\x08\xff\x96\xea\x79\xfc\x04\x9e\x67\x97\xdb\x25\x5d\x2e\xe7\x0f\xae\xf0\x81\x94\xc8\x01\x49\x7a\x85\x18\x5b\xe1\xab\x97\x9f\x36\x89\x1c\xd5\x62\x5b\xe5\x14\x7c\xeb\xab\x6d\x39\xba\x94\x11\x9a\x46\x51\x1a\xed\xd4\x2f\x1c\x5d\x45\x08\x57\x7d\x33\xbd\xe3\x98\x8e\x0c\xfd\x4c\x50\x47\x03\x7e\x2c\xb3\x9c\xae\x44\x59\x74\xca\xa0\x24\x78\xfc\xaf\x37\x19\x07\x97\xff\xff\x5b\x84\xe1\x26\x9d\x5f\x67\x25\x2b\x40\x35\xd6\x03\xab\x94\x4c\x96\x94\x44\x97\x97\xdb\x68\xd0\x60\x92\x3d\x93\xc9\x58\x1d\xc7\x0d\xf7\x30\x79\x8c\x0e\x2e\xe7\xb3\x8a\x65\xc3\x32\x5b\xd0\x32\xc2\x26\x1b\xa0\x8f\x61\x7d\x82\x76\xb8\x59\x4a\xcd\xfd\xa1\x19\x8c\x66\x71\x6c\xb6\xf2\x9d\x62\x29\x22\xbc\x9e\x46\xc6\x1d\xa4\xbd\xd3\x8f\x52\xb0\x1f\xcc\x2a\x9a\x45\x81\xbe\xf4\x81\x3a\x5b\x93\xcf\x51\x9e\x71\x50\x68\x4b\x6e\xa8\x44\x47\x0b\x7a\xa4\x4d\xfa\x8a\x23\xc6\x8f\xb2\xa3\x6a\xcb\x39\xe3\x57\x47\xaa\x08\x51\x45\x7e\x15\x5b\x37\x74\x11\xee\x2f\x74\xc4\xc7\x95\x28\xc1\x23\xb6\xde\x6e\xbf\x01\xc3\x7c\x6f\xcd\xae\xe8\x5a\x51\x19\x43\xec\x5a\xc3\xf3\xa3\x5a\xb3\xff\x0c\x97\xac\xd6\x18\xbc\xe3\x13\xdf\x10\xf7\x9a\x6b\x1c\x66\x6f\x9a\x5c\xf3\xa4\x42\x3d\x16\xc7\x0c\x80\x9e\xf3\x55\xf3\x0b\x34\xaa\x31\x1f\x65\x52\x87\xdb\x5f\x09\xc5\x6c\xb7\xd3\x28\xe7\x66\x66\x39\x20\x4d\x4d\x30\x1a\x4a\x62\xb9\x37\x45\xa7\xda\xe3\xda\xc5\xe5\x4d\x93\xcf\x62\xa9\xa9\xb0\x28\x80\xe7\x86\x2b\x7b\xcd\x48\xae\x19\xd7\xfe\x54\xa3\xa8\x9d\x42\x87\x43\xf5\xd2\xe4\xb3\xd0\x63\xa6\x94\x17\xc0\xc0\xbe\x76\x84\xd2\x10\xcd\x3b\xc0\xc6\xbe\xd1\xe3\x02\x5e\x49\x9a\xe1\x31\x1b\x61\x84\x67\xf3\xb0\x0b\xde\x34\x56\x22\x07\x63\xea\xd9\xf0\xa9\xa9\xd1\xb1\x7f\xb4\xbc\x92\xf8\xb2\x93\xe9\x77\x9e\xfe\xb1\xe6\xd9\xa3\xb1\xea\x90\xae\xa5\x94\x8b\x6b\x6a\xe4\xc1\x6f\xe8\x27\xf9\xb3\x78\x67\xe1\xce\x0f\x07\xed\x9b\xb0\x92\x0e\x18\xdd\x2c\xb9\x88\x67\x92\x5d\xd3\xd6\x94\xfd\x45\xf5\xd8\x37\x5d\xb0\xec\x87\xf0\xf3\xb4\xcd\x49\x7e\x01\x0a\x7b\xdb\xd4\xaf\xbd\x9b\x19\xc7\xf3\x87\xad\xb9\xbf\xff\x2b\xad\xca\xa7\xbf\x8e\xf0\x04\xff\xb3\x23\xd7\x6f\x45\xb5\xce\x3a\x24\xf9\xf6\x0e\x75\x8f\xbc\xcf\xea\x95\xf8\xa8\x6d\xea\x7e\x5d\x51\xfe\xce\xba\x0e\x82\x8a\x51\xd9\x10\x0e\xc5\x86\xba\x3b\xda\xb7\x3c\xc4\x8c\xf3\xaa\xf0\x2b\xab\xe9\x73\xb1\xb9\x79\xbe\xf5\xb6\x7c\x7b\x39\xd3\x6e\xae\x9a\x35\x0d\xfa\x21\x21\x72\x9a\x00\xaa\xdf\x01\x18\xe0\xa2\xdc\x56\x49\xe0\xda\x80\xd5\x8a\x7a\x16\xa4\x0f\x4e\x4a\x0f\x83\x27\x1d\x80\x82\xba\x12\xc6\x30\xdd\x78\xa1\x52\xd5\x33\x5f\x01\xfb\xdb\x55\x45\x79\x08\x7a\x67\xd8\x72\x6f\x70\xac\xcb\xc7\xc3\x95\x61\xe1\x6c\x64\x9f\xf4\x13\xed\x73\x58\x53\x3a\xe4\x81\x11\x78\x2e\x1b\xbe\x35\xdf\xd6\x98\xa9\x65\xc3\xd2\xbf\xb0\x1e\xeb\xf0\x0d\xa0\x5d\x53\x80\x06\x74\x84\xb9\x56\x85\x46\xf8\xee\x94\x6a\xd7\x51\xdc\xd3\x08\x7e\xdc\x97\x52\xa3\x90\x72\xb8\xcd\xbb\x2f\x5d\x49\x33\xb5\xb2\xf8\x08\x7e\xdc\x9d\x52\xf5\x0a\x1f\xa9\xff\xc0\xb9\x00\xe3\x7a\xe8\xf2\xc5\xa7\xd3\x7a\x4a\x7c\x53\x32\xfe\xe1\xa7\x4c\xd2\x08\x3f\x3a\x19\xfb\x31\xfe\x25\x4f\x84\x83\x28\x7d\xa0\x54\x8b\xc3\x9b\xbf\xda\x75\xdb\x73\x2f\xc1\x8f\xb4\x52\x4b\x09\x86\xcb\x4b\xf8\x51\x54\x1f\x14\x19\x8d\x80\x62\xba\xa0\x17\xb4\xcc\x6e\xbc\xb0\x65\xa9\x56\x18\x07\x90\x2f\xc8\xe2\x67\x97\x43\x56\x14\xaf\x45\x41\x41\xd9\x01\x66\x53\x13\xb5\xd1\x37\x62\x80\x17\xe9\x65\xb6\xe5\x85\x78\x41\x37\x72\x15\xe1\xe3\x71\x17\x59\x15\xb9\x73\x16\xe6\xd2\x12\x69\xa7\xaf\x89\x02\xd4\x4b\x5b\xcf\xe3\x47\x26\xef\x6b\xa3\x56\x61\xbb\x6a\x32\xfe\x12\x56\x66\x9d\x7d\xfa\x9e\x5d\xad\x4a\xd5\x51\x1a\xda\x21\xc2\x13\xfa\xd0\x6b\xca\x5a\x5c\xeb\x05\xa3\xb8\x7e\xdd\xaf\x5d\x7b\xc2\x5d\x4b\xe7\x47\xa3\x28\xd1\x30\x82\x32\x5b\x00\x8b\x7d\xe7\xd9\xe4\x8e\xa3\xe7\x48\x66\x0b\xd0\x9a\x26\x72\xb7\x8b\x22\x9b\x5d\xb6\x95\xc2\xe0\xa3\x36\x46\xa6\x95\x3a\x69\xa9\x03\x0e\x9c\xf3\x38\xbc\xb1\x35\x7d\x6d\x42\x7a\x70\x9a\x63\x1c\x02\x48\x58\x81\xe6\xa0\x07\x19\xec\x76\x91\xca\x36\x82\x7b\x84\xa4\x15\x49\x28\xc2\x59\x75\x05\x66\x3a\xf6\xc2\xe6\xe9\x31\x80\x5c\x17\x74\x43\xd5\x79\x28\x67\xb4\xd6\x5e\x94\x1a\xab\x17\xad\x73\xab\xc5\xd3\xee\x73\x7c\x8c\x10\xae\x38\x9c\x2e\xf7\xd8\x55\xf0\x87\xd7\x2f\x5b\x15\xe4\x4d\x9a\x8a\xd6\xa2\xbc\x6e\xb7\xa2\x1b\xfc\x9a\xc6\x31\xef\x92\x98\x53\x02\x19\x3a\x35\x12\x1a\xc7\x87\xdf\x82\x06\x69\x67\x06\x10\x83\x2c\xe7\xae\xb2\xd2\xda\xa6\xbd\x3b\x40\x1e\x6e\x55\x2c\x38\x94\x49\x28\xf9\x68\xa0\xaf\xb5\xf1\x82\x84\x7f\x8d\x9b\xd6\x8e\x16\x3c\xf8\xc7\xec\xf2\xe3\xe5\x70\x3e\xb8\x7c\x60\x7f\x0c\x3e\xad\xcb\xaf\x9c\x10\xc8\xca\x0f\x83\xbe\x49\xa2\x6c\xb3\x29\x59\x0e\x57\x5b\x0f\x3e\xad\x4b\x77\x82\x38\x2c\x63\xaa\x2b\x48\xf7\x29\xdd\xed\xf4\x6f\x3d\x01\xf6\xaa\xc3\x8d\x8a\x70\x6b\x44\x24\x09\x8b\x73\x60\xa2\x15\x9f\x49\xd3\x1d\xe0\x46\xbe\xa9\x9d\xb5\x75\x31\xa8\x22\x0f\x36\x65\xc6\x78\x64\x21\xd9\x0c\xa4\x1b\x5b\x26\xe2\x50\x89\xd9\xef\x71\x46\x44\x53\x84\x13\xc4\xa9\xd3\x01\x43\xac\xfd\xa5\x40\x00\x76\xd9\x19\x3a\x8b\xde\x47\x03\x31\x07\x04\x41\x84\xd5\x93\x30\xf5\x73\x0f\x92\x5b\x6f\x78\xb0\x0c\xf4\x92\x55\x7e\xee\x95\xf8\x71\xea\xc8\xa5\xd6\x88\x2a\xa8\xb9\xe4\x84\xba\xf9\x11\x50\x94\x17\x30\x13\xce\x4d\x1b\xf7\x96\x01\x8c\x22\x8c\x43\x70\x76\x32\xa2\x13\xb0\x21\x6a\x7b\x04\xfc\xc0\x36\x3f\x8b\x97\xbc\x48\x8c\xa5\x81\xbf\xa4\x12\xbf\xd7\xb1\xce\x58\x77\xbe\xb0\x94\xe3\xe5\x27\x49\x79\xad\x76\x67\x4d\x30\xb4\xf4\xba\x63\xf4\x5f\xaa\x49\x7c\x38\x4e\x14\x4d\x85\x5a\x58\x29\x3c\xc9\xed\x1e\x35\xcd\x71\x79\x1f\xd0\x1e\x47\x23\x5a\x74\xe0\x85\xc8\xef\xfa\xe8\x86\xdd\xf9\x95\xb9\xde\xa1\x1a\xab\x2d\x03\xac\x3f\x1b\xa7\xf8\x92\xef\x85\xf8\x10\x10\x8e\xcc\x82\xf9\x21\xed\xf6\xa1\x56\xbd\xa1\xc7\xd4\x74\x43\x45\xaf\x58\x2d\x69\xa5\xc5\xc5\x07\xae\x15\x0e\x95\xee\x29\xda\xed\x92\x1a\xfa\xe0\x2d\x74\x84\xd1\x2e\x4f\x67\xf3\x3d\xc2\x10\x01\x5a\xa4\x9a\x9e\xe9\xcc\xbf\x83\x14\x9d\x45\xe8\xbb\xb8\xb0\x16\x16\xa1\x06\x32\x73\x9a\xed\xda\xc2\x6b\x53\xd1\x22\xad\xf0\x75\x56\xa6\x7c\x6f\x5a\xb5\x55\xad\xca\xc5\xe6\x06\x34\xd4\xc9\xc1\xfd\x52\x7f\x4c\x08\x91\xce\x92\xca\xa0\x9c\xda\xf4\x4e\x45\xa1\x09\x6a\x56\xfc\xed\xde\x2d\x43\x0e\x53\x3d\xb4\x26\x3a\x62\xbc\x96\x19\xcf\x15\xa9\x81\x4d\x01\xf4\x42\x98\x73\xf8\x3c\x57\x7b\xc0\x8c\xcf\x09\xf3\x54\xe9\x4b\x55\xdd\xc6\xfe\xed\xa0\xcf\x8d\x9c\x94\x7a\x69\x00\xfa\xdf\xbd\x25\x60\x2f\xd5\xf3\xcc\x33\x5a\x6d\x06\xa9\x38\x6d\xa2\xcf\x1b\xf3\x3c\xcf\xa2\x43\x5b\x82\x56\xbb\x5d\xa5\x37\x3f\x62\x8d\x41\x25\xa9\xf4\x05\x12\xa6\x44\xc7\xb9\xda\xef\x76\xda\xc6\x8e\x62\x48\x90\xca\xbd\x1e\x82\x5c\x0f\x01\x28\x76\xd5\xe4\x56\x7b\x32\x7d\x56\x96\xed\x45\xec\x9d\x45\x92\x06\xcb\xcc\x58\x39\x8d\xad\x3c\xbe\x41\x51\x03\xc3\x22\xac\x99\xc0\xc6\x2e\xec\x9e\x4c\x7d\x30\x94\x48\xe3\xda\xc1\xf9\xde\x0b\x5d\xd1\xac\x88\x4c\xce\x1f\x58\x59\xb6\x94\xda\xd1\x2d\x18\xee\xb7\xbd\x4f\x48\x67\x36\x66\xfa\xf2\xa5\x83\x9b\x6a\x4c\xc3\x02\x50\xb4\xe6\x56\xcb\xa0\x19\x00\xd6\x85\x97\xfa\xc2\x6f\xea\xd4\x62\xad\x59\x99\x29\x40\xb1\x34\x48\x7c\x13\x3c\x46\x56\x75\xe9\xae\x44\x6a\x5a\xec\x03\xdd\x5b\x6b\x79\x66\x70\x96\x13\x60\xe3\xf7\x46\x85\xeb\x0b\x1a\xee\x67\xb6\xb2\x80\xa5\x09\x72\xde\x90\xa5\x48\x5f\x59\xa7\xff\x06\x8a\xce\xc4\x6a\xcf\xc8\xae\x38\x8d\x35\xb6\x94\xf7\x95\x47\x0f\xca\xa3\x1d\xe5\xd9\x30\x97\xb5\x16\x5f\x14\x5f\x52\x82\x67\xa7\xda\x58\x75\x98\x1e\xf4\xb4\x7e\x06\x8f\x7a\x7e\x45\x14\x65\xb0\xf6\x1b\x89\x96\xeb\x8f\x41\x98\x5f\xed\xcd\x47\xba\x7f\xef\xae\xd7\x4f\x2d\x53\x8d\x7f\xbd\x62\x5a\xe5\xa7\x5d\x9d\x03\x6f\x1a\xbe\xa2\xe8\x60\x32\x6e\x55\xb7\x77\xd7\x1c\xe1\xba\xf2\xea\xac\xd2\x5a\x64\x2a\x28\x01\x49\xe1\x41\x94\x0a\x4a\xcc\x57\x77\xad\xd1\x20\xce\xe6\x73\x57\xe2\x20\x0e\x64\x54\xe2\x85\xc8\xc1\xa5\x54\x2b\x65\x4b\x05\xad\x8b\xa4\xd8\xcf\x5f\xb6\x34\x4e\xef\xf8\xd8\x47\x70\x54\x5f\xaa\xdf\x5f\x50\x72\xa8\xfc\xd6\x18\xe2\xb0\x2c\xa1\x01\x81\xd8\x7b\xee\xcd\x07\xda\x9d\xf3\x82\x65\x75\x3a\xd9\x87\xc5\xbd\x5b\xff\xcb\x65\x8a\xa6\xcc\x2f\x29\xee\xb3\x1d\x73\x57\x39\xdd\x76\x40\x0d\x59\x34\x08\x04\x15\x79\xc5\x13\x8e\xce\x91\x36\xfe\xe0\x45\x32\x51\x87\x51\x83\x32\xd5\x20\x39\x31\xf2\x9a\x25\x1c\x61\x41\xd8\x94\xcd\xc6\xf3\x51\x49\xaf\x69\xf9\xf5\xf1\xb4\xca\x12\x8e\x52\xae\x9f\x5d\x04\x76\x65\x3d\x80\xc8\xe9\x33\x95\x45\x2a\xb1\xd0\xce\x10\xbe\xa0\xe3\x87\x5e\x57\x1c\x2e\xd3\xcf\x77\xc6\xbf\x8b\x9e\x1c\xfd\xc7\xd7\xae\xd1\xc3\x35\x35\x3e\x20\x78\xff\x13\x2a\xfc\xd9\x0a\xfd\x2b\x73\xf7\x3f\x42\xfd\xba\xa9\xdb\x11\x1f\xe5\xab\x0b\xd8\xf9\x61\x41\x73\xb3\x43\xd7\x34\xab\xf2\x55\xf2\xe0\xf2\xdd\x03\x34\xf5\xd7\x8a\x62\x28\xfd\xa6\xfc\xb2\x69\xb5\x01\x34\x6c\x93\xe1\x04\x6b\xfc\x0d\x97\x10\x74\xe1\xbb\x92\x06\x29\x7f\xcc\xae\xee\xcb\xd2\x9a\x0a\xea\x84\xf7\x65\xd9\xa4\x54\x7d\xd0\x31\x03\x40\xc3\x1c\x32\xd5\xe2\x35\x9b\xb4\x6b\x7a\xeb\xb4\x61\x52\x50\x50\xbd\x3f\x5f\x8d\x5d\xe3\x25\xbf\x3f\x6f\x2f\xf9\xaf\xa2\x2a\xee\xcd\x1b\xd0\x6f\x20\xe9\x77\x95\xd8\x6e\xee\xcd\x58\x43\xe0\x34\x89\xef\xcd\xd8\x4b\xac\x2a\x71\x6f\xc6\xb6\x12\x05\x05\x09\xa7\x16\xab\xb5\x12\x1b\x3d\xf8\xa0\xa3\x4d\xfa\xb6\x95\xac\x9f\x3c\x4c\xad\x6a\xf2\xd9\xdc\xbd\xda\x80\xaa\xf0\xfd\xb9\x7b\xa9\xa1\x53\x3e\x9b\xbd\xeb\x18\xfb\xc5\x67\x0a\x70\xe9\xb5\xfa\xc0\xb3\xad\x6c\xb3\x04\x2d\x20\x07\x0b\xf6\xe6\x3e\x79\x7d\x58\xa1\x83\x4f\x00\xe9\xce\x7e\xf0\x8a\xd6\xf5\x67\xcb\x70\x50\x13\xea\xab\x9a\x56\xf2\xe7\x6c\x71\xc0\x5a\xb4\x6d\x0d\x2e\xbd\xf4\xef\xc4\xf2\xe0\x9b\x46\x9d\x6b\x36\xc7\xda\x9f\x4c\xe8\xb8\x1a\x68\x52\x1b\x59\xaf\x0b\xd3\x4b\x6b\x25\x54\xd6\xcd\x00\xe0\x41\x2c\x45\xd2\x50\x28\x87\x93\x0b\xaa\xdd\xa8\x27\xf5\x99\x77\x2d\x12\x3e\xcc\xbe\xe6\x08\xed\x0f\x1b\x50\x27\xd2\xb3\x52\x3d\x68\x6f\x97\xc5\xc5\x5d\x7d\x9d\x2a\x2a\xed\xcc\x73\x92\xc8\xf5\x61\x04\xa6\x36\x19\xaf\x37\xa2\xa6\x20\x24\x0f\x4a\xb9\x07\x31\xac\xa3\xb7\x3c\x4f\x38\x77\xa1\x74\x68\xba\x2f\x1a\x56\x82\x79\x87\x2b\xb8\x45\x43\x80\xe3\xa1\x4e\x54\xa2\x41\xfb\x67\xa0\xe2\xb0\xa2\x89\x4e\x8e\x99\xc6\xb5\x44\xf0\xe3\xe9\x18\x75\xc5\x0f\x26\x08\xbb\x4e\xfd\x29\xe3\x57\x6a\x14\x8c\xfe\xb8\xf9\x7e\x10\x06\x1c\xc3\x21\xd5\x2f\xe2\x18\x61\x86\xa3\x81\xeb\xa1\xc8\xc3\x0e\xb0\xc0\xe0\x4e\x85\xc5\x62\x05\xb4\xda\x66\x91\x07\x7b\x99\x56\xb6\xe8\xaa\xcf\x18\x0d\x68\x97\x73\xfa\x41\xe6\x40\xbb\x1a\xf8\x8a\xa6\x92\xc3\x09\xee\x0c\xc7\x13\x14\xd6\x7a\x1f\xba\x1a\x62\x98\xc1\x8c\xf3\x8f\xd7\x75\x02\x40\x2d\x7b\xcc\xe9\x47\xb0\x42\xe7\x85\xd6\x12\xfa\xd7\x27\x84\xd3\xbe\xd1\xb0\x39\xe7\x95\x9d\x0b\xbc\x23\xf1\xac\x9a\xf7\x5a\xdd\xd3\xd9\x25\x98\x5b\x27\x49\xc6\xde\xa9\x01\x2f\xb4\xb3\xdf\xf0\x04\xde\xf9\x72\x30\xc1\x06\xcc\x10\xed\x1d\x5a\x1d\x16\x1b\xca\x0f\x0e\xca\x9d\x84\x84\x47\x38\xd2\x42\xbd\xcf\x58\x12\xd0\x51\x2b\x56\x1d\x1a\xf1\x92\x93\xb7\x06\xaf\x29\xd0\x5a\x2b\x42\x32\xa4\x2d\x61\xb5\xaf\x8c\x4d\xc9\x64\xf2\x60\x98\x4c\xfb\x5f\xa1\x07\x8a\x9c\x24\x94\x88\x99\x70\xa3\x3d\xc7\x63\x74\x9e\x5d\x34\x01\x60\x94\x62\x70\x21\xc4\x2c\x83\x6b\xec\x07\xff\x48\xf2\x75\xb1\x5b\x53\x99\xed\xd6\xe8\xab\x07\xcc\x60\x75\x22\xc4\x48\x7f\xec\xa6\xf2\x83\x7f\x64\x49\x29\xd1\xd4\x4f\x20\xc3\x04\x49\xbe\xcb\x65\x55\xee\x72\xc1\x65\x25\xca\x20\xaf\xca\x26\x85\x0b\xb9\x07\xff\xa8\x93\x15\x5b\xca\x20\xc9\x81\xe2\xcc\x2f\xbc\xa2\xb9\xb8\xe2\xec\x0f\x5a\x1c\xad\x45\xc1\x96\x8c\x56\x47\x70\x87\x7f\x14\x0d\x6a\xd4\xe3\xe0\xfb\xc9\x5e\xb3\x80\xe2\x77\xf4\xac\x94\xc3\x68\x40\x8d\x2b\x5e\x12\x3d\x97\x55\xa9\x03\x98\x09\x58\x17\xfa\x9d\xeb\x77\xeb\x9e\x94\x22\x4c\xf7\x4b\x3e\x5a\x64\x35\xcb\xc9\x2d\xb0\x12\x51\xc3\x63\x45\x58\x33\x0c\x91\xc7\x4b\x45\xf8\x97\x8d\x0a\xd0\xdc\x62\x84\x81\x6b\x8b\x1a\xa6\x30\xc2\xea\x70\x15\xb9\x73\x56\x84\xbf\x17\x6b\x6a\x03\x9a\x73\x5e\x84\x0d\x73\x18\x59\x36\x51\x87\xd8\xfc\xec\xef\x08\xbf\x80\x5d\x38\x8d\x7c\x3e\x23\xc2\xdf\x64\xf9\x87\x7a\x93\xe5\x4d\x84\xd5\x03\x32\xad\x73\x09\xa2\x83\x14\x6a\xcf\x88\x9a\xfd\xc3\x7d\xa2\x7e\xa7\x51\xb3\xc3\xab\xb6\x28\xae\x20\x6a\x2f\xfd\x08\xff\x00\x1b\x45\x1a\xb5\x66\x75\x84\x5f\xd6\x79\x1a\xb5\x2e\xef\x22\x35\xd3\x47\x9b\xfc\x85\x2e\x92\xdc\xea\x11\x7a\x16\xa5\x91\xbb\x35\x8c\xb0\x0e\x7c\xa1\xab\x6b\xae\xaa\x6c\xe8\xdf\x01\x17\xad\x10\xae\xaa\x2e\xb4\xa2\x10\x0a\xef\xbf\xb5\xde\x55\xcf\x47\xaa\x33\xed\x55\x82\x8d\x50\xe3\x62\xc2\x61\x88\x74\xe8\x2f\x9b\xc8\x1f\x59\x53\x1f\x35\x06\xe1\x00\xeb\x08\x98\x20\x2a\xc2\x71\xa1\x36\x46\xcf\x13\x17\x65\xa6\x0d\xcc\x52\xf7\x91\x9b\x0c\x26\xa2\xf9\xc6\xcd\x1b\x9d\x59\x6b\x18\x3d\xee\xce\xd5\x50\x1b\x4c\x36\xd1\x66\x86\xe8\xd8\x77\xaa\x93\x41\xf2\xaf\xdf\xbf\x8d\xd2\x48\x9d\xc8\xed\xfb\x77\xe6\xfd\x0d\xfd\x24\xc3\xde\xb5\x31\x3f\x56\xf4\x3a\x8c\xf9\x16\xfa\x19\x88\x61\x18\xf1\x53\x13\xe1\x0d\xe9\xcc\x4d\x2a\xc5\xd2\xd9\xd0\xb9\x0b\x7d\xed\x35\xe6\x17\x33\xd0\xcd\xdc\x09\x0a\xf8\xc5\x8c\xb0\x1f\xad\xba\xaf\x23\x7c\x99\x95\xa5\x22\x2f\xdb\xab\x55\x1a\xc1\x02\xd7\xd3\x90\xae\xb3\xbc\xbe\xb1\x73\xf0\xdb\xa8\xb5\xba\x4d\xaf\x47\x21\x1d\xd0\xa1\x3f\x76\xcc\x8f\x37\xed\xc9\xa1\xaa\xa3\x73\x75\x27\x0e\x13\xfa\x8d\x0b\xf5\x33\x7d\x76\x30\x1f\xf4\x14\xed\x9a\x0c\x7f\x8d\x42\xd2\xe0\x77\x4d\x13\xe7\x4d\xde\xa8\x4d\x36\xcc\xc2\x38\xa4\x09\x50\x43\x93\xde\x1d\x38\x6c\xc5\xc3\x39\xd8\x9c\x5f\x6c\x7e\x7f\x8e\xd2\xc8\x5e\xab\xdb\xb0\x9f\xa3\x34\x0a\x39\x48\x1b\xf3\x36\x4a\x23\xbb\xc5\xea\x31\x59\x67\x3e\x6d\x58\x17\x87\xa4\x61\x5d\x74\x50\x86\x75\xd1\x41\x18\x4c\xa0\xa5\x03\xeb\x22\x20\x0b\xeb\xa2\x9b\x2a\xac\x0b\xbb\xfc\x5b\xa1\x87\xa4\x42\x55\xc5\x12\x05\x17\x1a\x2c\x6e\x9f\x22\x84\x8b\x3b\x20\x08\x2a\xa7\x80\x20\xd8\x69\xb1\x2e\x5a\xf4\x20\x98\x45\x9f\x25\x08\x77\xa5\xf2\x87\xf4\x6e\xa2\xb1\x2e\x02\x9a\xb1\x2e\x02\x92\xb1\x2e\xee\xa0\x18\x5e\x84\x21\x18\x30\x8e\x66\x31\x1c\x50\x8b\xc3\xb8\x66\xa0\x0f\xe9\xc5\xba\xe8\x20\x17\xeb\xe2\x60\x62\x86\x52\x01\x3b\x58\x5e\x53\xdb\xf7\xf3\x76\xe8\xef\xa6\x3a\x26\xb6\x4d\x74\xfc\x0d\xa3\xbd\xbb\x1c\xcc\x0e\x9f\x14\xcd\x0c\x2d\xc2\x91\x26\x44\xd1\x1c\x56\x80\xd9\x8d\xc9\xf5\x34\x58\x0e\xa9\xbf\x6f\xe2\xb7\x23\x2e\xaa\x75\x56\xb2\x3f\x0c\x18\x28\x39\x54\xbc\xf6\xa4\x97\xd5\x11\xe3\x47\x54\x5b\x1e\xb5\x24\xba\x55\xa3\xce\xa6\xf8\x6b\xcd\xca\x29\x2e\x6b\xe7\xd5\x75\x97\x14\x74\x97\x49\x24\xb3\x7c\x85\xac\x7e\x46\x85\x90\xe2\xf5\x18\xdf\x02\xc6\x4d\x34\x1a\x8d\x34\x48\x89\x5e\x9a\x47\x90\x9f\x4d\xb1\x6f\x14\xe9\xaf\xc0\x00\x0d\xb8\xd7\xe8\x28\x42\xb8\x80\x6b\x5f\x40\x56\x3b\x84\x55\xc3\x75\x4f\x10\xc2\x1c\x0f\x3b\x4d\x6a\xc2\x46\xff\x14\x8c\xeb\x8f\x33\xc2\x51\x0a\x61\x16\xfa\x4e\x0c\x26\x28\x48\x00\x15\xb3\xe6\xe1\x72\x56\x43\x23\xb7\x20\xd6\xdb\xf6\x49\x76\xc8\x79\xfe\xc0\x73\xc1\x6b\x56\x4b\xca\xe5\xd1\x82\xf1\x82\xf1\xab\xfa\x68\x29\x2a\xe0\x3b\xb5\x4a\x8b\xca\x87\x64\x7b\xaf\xa9\xae\x85\xa5\x16\x15\xd3\x59\x39\x27\x72\x56\x3a\x0d\x08\xaa\x85\xa5\x2b\xc5\xe9\x97\x42\x7c\xd8\x6e\xfe\x4c\x6f\x3a\x04\xe2\xba\x97\x12\xa9\x75\xac\x11\x68\x16\x4d\xa5\x56\x30\xa2\x98\xa3\x54\xce\x8c\x0a\xca\x84\x10\xc2\x90\x35\xbe\x13\x70\xd4\x8f\xbc\xb1\x68\x22\xd7\xdb\x52\xb2\xc8\xa2\x0d\xf4\x09\x8b\xe3\x2a\x61\x56\xc1\x26\xd2\x68\x42\x45\xa4\x41\x71\xbc\x81\xd7\xda\x47\x33\x8d\xa1\xa6\x85\xdc\xf3\xa8\x4f\xde\xc2\xbb\xa7\x03\x65\xb5\xf3\x75\x2d\xc3\x2c\xac\x88\x7d\xc5\xb5\xab\x86\x26\x4a\x7b\xe4\x0a\xd1\xf5\x82\x04\x1d\x30\x7b\x87\xb9\xcc\xc4\xdc\xb9\xf6\xca\x90\x83\xda\xd8\xef\xf1\x46\x75\x35\xab\x5f\x9b\xc3\x43\xd8\xdd\x76\x99\x74\x68\x0d\xd1\xf4\xef\x62\xe6\x1c\xa4\xdb\x01\x84\x25\x1d\x81\xa9\xb1\x22\x9c\xe6\x17\x10\x07\xf3\xfb\xb5\x28\xd4\xaf\x3d\x5e\x9b\xd3\xdc\x9b\x6c\xdd\xa1\x91\x90\xc7\xf1\xc9\x43\x12\x3a\xb8\x57\x67\xf8\x06\x70\x5c\xdf\x87\x07\x95\xc0\x9c\x54\x3d\x0f\x0f\xaa\x4f\xb8\x75\xf2\xfe\x5d\x95\x6d\x56\xe0\xf4\x3d\xb1\x4e\xdf\xe3\x18\xaa\xa8\xdd\x91\x70\x7b\x2e\xe2\x08\x27\xef\xa7\xce\x17\x7c\xea\xdc\xc5\xa3\x38\xd6\xad\x73\x1f\x98\x83\x93\xfd\xc2\xa4\x4b\x1b\x3f\xf2\xea\x8b\x75\xe1\x7d\x00\x07\x2b\x8e\x70\x1f\x2c\x46\x00\x4f\x42\x57\x44\xf7\x90\x4b\x68\x4f\x5c\x1c\x61\x8e\xbc\x93\xee\xb5\x6f\x49\x7a\x38\x26\x4b\x50\xbf\xa1\xfb\xb7\x70\x68\xff\x99\x7e\x92\xcf\x2a\x9a\x1d\x76\x6e\x22\x89\x9c\xbe\x14\x89\x44\xe9\xed\x1e\x8d\xc0\xd0\x8a\x50\xfd\x1f\xf7\xe5\xc8\x2a\x2c\x02\x66\x91\xd1\x41\x04\x1d\x3f\x1b\x41\x9a\x70\xd5\x98\xd1\xa6\xb1\x6f\x51\xdf\x04\xaf\x49\x10\x4d\x82\x58\xeb\x37\x40\x8e\x9c\x52\xa3\x15\x74\xbc\x10\xe0\x6d\xcd\x85\x93\x0a\x14\x12\xad\x09\xf2\x55\x68\xdb\xe2\x54\x22\x11\x38\xe6\x77\x90\xe2\x0b\x51\xdc\xec\x3d\x3b\x5c\x74\x6b\x9a\x49\x00\x02\x42\x1b\x91\x81\xce\x17\x1d\x2d\x45\xb5\x8e\xe3\xe4\x3b\x66\x7e\xe3\xa8\xde\x2e\xd6\x4c\x46\x18\x46\x4c\x6b\x02\xbf\x83\xa0\xd7\x54\xae\x44\xf1\xac\x14\xbc\xd1\x4b\x33\x1f\x09\x45\x66\x21\x51\x4f\x56\x37\x66\x41\xda\x20\xe2\x5d\xf9\xf0\x04\x7c\xb7\xea\x70\xe1\x7e\xfa\xa1\xd9\x7e\x9f\x83\xc7\x90\xef\x04\xba\xdd\xef\xe5\x68\xc9\x38\xab\x57\x60\x50\xe7\x8b\x86\xe4\x48\xf1\x1f\x84\x63\xd0\x1e\x3d\x1c\x77\x4f\x41\x1e\x1c\xbf\x74\xa5\x08\xc2\x59\xfd\x26\x7b\x83\x39\xe8\xa5\x6f\xb2\x8a\x72\xf9\x46\x14\xd4\xb8\xeb\x32\xc8\x5c\xa3\x03\xbb\xc8\x44\x7b\x3f\x04\xcb\x08\x23\xb1\xd3\x86\x21\xa6\x67\xff\xd2\xd9\xb3\x91\xad\x84\xaf\x7d\xa9\x52\x99\x5e\xd0\x5e\x1d\x9b\x77\x22\x10\xda\xef\x0f\x0b\xe2\x82\xd3\xc8\x40\xa6\xbc\x0d\x45\x67\x41\x23\xf4\xa5\xad\xe6\x01\x13\x89\xe9\x88\xd3\x4f\xf2\x1d\x5b\x94\x8c\x5f\xa1\x3d\x6a\x30\x51\x8e\x6a\xbd\x19\xdd\x28\x42\xa5\x49\xf7\x3b\x59\xd1\x6c\xdd\x56\x86\x5c\xb1\x7a\xb4\x11\xb5\xc3\xbc\xa8\x24\x19\x5b\xe4\x08\xf5\x15\xa1\xfa\xcd\x5c\x7d\x2b\x32\xf8\x04\x3b\x00\x63\x2d\x1d\xfa\xd1\x7e\xdf\x04\xc1\xe4\xb4\x39\x95\xf6\xc4\x43\xc6\xfb\xde\x0d\xf7\x01\xe5\xa9\x28\xef\x32\x0e\xdd\x88\xfa\x29\xf1\x6a\x62\xf6\x8a\x3d\xae\xef\xfd\xc6\xc0\x77\xb8\x32\xf7\x78\x43\xe9\x87\xbb\x3e\x30\x59\x9b\x1b\x56\x9b\x07\xda\xed\xb4\x3b\xf0\x3d\x56\x1d\xec\x7f\xac\x36\x50\x93\xea\xe2\xb0\x72\xe8\xf3\x79\x0f\x06\x68\x8f\x69\x76\x27\x64\xef\x1d\x35\xea\x84\xb8\xa5\xc8\x58\xec\x13\x03\x56\xa0\x7e\xc3\x9c\x53\x0c\xdc\x54\xff\x53\x94\x92\x2a\x46\x03\xa0\xd9\x4d\x0d\x07\x03\x9b\x33\x96\x50\x9d\x5f\x57\xac\xa4\xf7\x21\xce\x6f\x44\x7d\x0e\x3f\x68\x26\x13\x8a\xce\x1d\xe8\x95\x1b\x2c\x9d\x11\xa0\xcc\xa5\x1d\xd7\xc3\xb4\xc9\xe7\xc1\xec\xb2\x06\xfb\xc7\xf1\xdc\xf0\x9a\xf7\x35\x1d\x70\x5e\xec\x5b\xaf\x5d\x2a\xdd\x63\xa7\x3c\x7a\xe0\x45\xde\x9b\xd9\xe1\x14\x82\x2f\x3e\x33\x04\xd6\xb4\xd4\xac\x00\x3b\x0a\xf2\xe9\x70\x82\xda\x93\x4e\x02\x84\xfe\x22\xcb\x3f\xb4\x84\xc0\x36\xc5\x90\xd0\x3d\xd6\x92\xd2\xbb\xe6\x62\xb0\xa0\x2e\x9a\x05\x69\x41\x4c\xda\xab\x6b\x29\xfc\x6e\xc3\xcd\x07\xc1\x8a\xed\x58\xac\xed\x20\xc8\x0e\xdd\xb9\xaa\x8d\x05\x4b\xd7\x47\xc3\x24\x5c\x6c\xd3\xae\x3a\xb9\xd8\xa0\x5e\x1a\x80\x55\x9f\xf3\x5a\x28\x06\x8d\x0e\x4a\x98\x9b\x03\x87\x73\x79\xfc\x87\xcb\x07\xa7\x56\x69\x87\x59\xd0\x01\x7a\xbe\xc3\x5c\xf5\xa7\x88\x3e\x93\xb8\xe9\x61\x7c\x64\xd1\x46\x49\x21\x8e\xb9\x9e\x47\x4f\xc7\xd6\xbd\x50\x1c\xf7\x27\x7d\xd2\x60\xd3\x28\x9a\x40\xb8\x56\x89\xd1\xde\x8e\xb8\x36\x40\x67\xa4\xc3\x4c\xac\x52\xab\x5a\xbc\x12\x1f\x69\xf5\x3c\xab\x69\x82\x52\xba\x07\xdc\xfb\x60\x09\xd5\xdb\x45\x2d\x2b\x97\x3f\xa6\xce\x44\x99\x10\xd6\x28\xde\x77\x54\xc4\xa5\x84\x09\x9d\x6f\xab\xea\x1e\xfb\xfd\xc3\x5e\xf0\xe6\x9f\xea\x90\x3d\x5e\xb1\x82\x7e\xcb\xaa\x5a\xb6\x25\x8b\x6e\xf7\x71\xc3\x33\x20\x14\xd8\x0e\x5b\x42\x82\xf6\x4b\xc6\xb3\xb2\xbc\x69\x25\x54\x6b\xc9\x68\xa6\x2e\x38\x19\xe3\x2b\xb5\xc9\xa9\xfd\x5f\x23\xa1\x76\x6d\x71\xea\xdb\x9a\xcc\xe6\x66\x0a\x80\xfa\xbb\x83\xa3\xb0\x7b\x1c\x2b\xc8\x60\xb0\xe0\xfb\x1e\x13\xc9\x15\x47\xf8\xca\xdb\xaa\x46\x80\x85\x4b\xc2\x9d\x40\x63\x1a\xd1\x4f\x9b\x92\xe5\x4c\x96\x37\xcf\x55\x1a\x5a\x84\xd0\x1a\x22\x07\xf7\x9c\x84\x6a\x1f\xc6\xdb\xea\xed\x06\xc8\x48\x1c\x7f\x03\x06\xa2\x5c\x18\x00\x08\x28\x21\x42\x01\xd0\x1e\x68\x54\xa1\x5e\x05\x2e\x45\xfd\x64\x58\x63\x5a\xe3\x6a\x24\x05\x72\x47\x53\xed\xb0\x1c\x33\xfd\xcf\x1c\xb8\x5c\xfb\x1b\xa7\x15\xc2\x9e\xb6\x9a\x48\x75\xca\xaa\xc9\x27\x9e\x64\xa3\xb5\xea\xc6\x02\x8c\xa8\x34\xa0\x46\x8f\x5a\xfc\xa6\x5c\x94\x65\xb6\xa9\x69\x31\x05\x5f\xab\xcf\x58\x92\x21\xeb\x6a\x35\x05\x0b\x03\xe0\x71\xeb\x91\x14\x20\xb3\x85\x04\x16\xd6\xa5\xb6\x08\x3e\xdc\x84\x23\x1c\x14\x46\x9e\xb5\x4b\xaf\x2d\x93\x6d\x3f\x0d\x2b\x11\xc7\xfd\xef\xb9\x07\xce\x88\xe2\x98\xc6\xf1\x27\x96\x64\xb8\xe5\x57\x47\x9b\xca\x1c\x7c\xdd\x6d\x59\x8c\x1a\xe8\xf5\x7b\x3a\x6f\x4b\xfe\xe0\x49\xd0\x7f\x08\x97\xe4\x87\x64\x8b\x7a\xe5\xd3\x46\xed\xab\xed\xa7\xf7\x20\x86\x6c\xf1\x1d\xa9\x49\x79\x18\xd3\xf8\xef\x45\x7b\x77\x4c\xec\x68\x1a\xe8\xd9\x73\xcc\x06\xd6\x9f\x88\xdf\x08\xcb\x98\x1d\xcc\x5c\xd2\x37\x31\x99\x14\x6b\x96\x9b\x6c\x7d\xd0\x2e\x4b\x2c\xfc\x30\x30\xeb\x8c\xe3\x3f\x1b\x71\xad\xe2\xa4\xad\x0b\x5c\x18\xcc\xca\xe4\x1e\x61\xbd\xd0\x10\x96\x71\xfc\x3d\x4c\x7e\x4d\x29\x80\xc1\x35\x85\xe9\x17\xbd\xdc\x40\x72\x1a\xac\x42\xb5\x1e\x48\xa7\x6a\x62\xcf\x01\x86\x45\x0b\x21\x3e\xa8\x82\x23\xc3\x0b\x4a\x6d\xfc\x42\xc9\xc4\xc7\x7b\x18\x9f\xb3\xce\xe1\x6d\xbc\x95\x35\x63\xcb\xe6\x38\x53\x6b\x43\x74\xac\x0d\x77\xe7\x92\xd9\xe9\x5d\x81\xfb\xba\xa9\x48\x9f\xb1\x44\xa8\x39\xae\xf1\xa8\x86\x13\x42\xa8\xe7\xd4\xc0\xfb\x10\x56\x0b\x6f\x7f\x26\x05\xc2\xc1\x37\x0e\xec\xae\x8a\x63\xdf\x49\x67\xbb\x97\x0c\xee\x80\x4f\xad\x3c\x8a\x04\x34\x65\x08\x6a\x9a\xb8\x41\xf0\x6e\x68\x95\x5a\xed\x55\x1c\xff\x26\x93\x0a\xb7\xf1\x82\xb4\xd8\x9e\x53\x0c\x4b\x9b\x5a\x95\x16\x72\xad\x12\x6b\x04\x0e\xd5\x94\x97\xe0\x28\xd7\xe2\x19\xd5\xf6\x36\xd5\x4e\xde\x6e\xa0\xa3\xe6\x83\xb6\x13\x6a\x0c\xcb\x5c\x23\x9c\x22\xeb\x09\x57\x3a\x2f\x56\x86\x94\x99\xf7\x9e\x74\x18\x51\x56\xf9\xb4\x26\x5f\xa9\xb3\xd4\x30\xeb\xd5\x40\x1e\x38\x28\x0e\x80\x4b\xdf\xda\x68\x74\x07\xfd\xa7\xc1\x0b\xa0\xf0\x96\xa1\x5e\xff\x60\xc6\xf8\x6b\x64\x7d\xe0\x7c\xc3\xba\xac\xef\xc9\xd1\x3a\xbb\x59\xd0\xef\x59\x51\x50\xee\x20\xd0\x87\x93\x3e\x59\x88\xa4\x2b\x52\xcf\xae\xdd\xce\x46\xfe\xc2\x57\x7e\xf4\x9d\x11\x9e\xf3\x68\x0d\x86\xe4\xd5\xd8\x5a\x0b\x85\xad\xd5\x10\x0e\x5d\xad\xf5\x3e\x35\xfe\x89\x16\xc2\x0b\xc4\x14\x81\xf3\xa8\x7f\xb1\x4f\xce\x3b\xdb\xdd\x34\xec\xfb\x7b\x9b\xb5\xef\xa9\xbd\xbf\xb9\x5e\x7a\xcf\xdb\xbe\xad\x01\xe2\x74\x05\x1b\x72\x87\x4e\xb3\x4d\x99\x70\xf2\x52\x24\x1c\x21\x93\x96\x98\xeb\x39\x41\x66\x41\x96\x8a\x02\x88\xd9\x58\x6d\x92\xdc\xa0\x7b\xbd\xf1\x3c\xab\xbc\x67\x6d\x63\x87\x1a\xec\xed\x9a\x94\xa4\x1e\xe5\xa5\xe0\x54\xfd\x4e\xfa\x63\x84\xb0\xd0\xed\x81\x62\x5e\x69\xa7\x94\xfa\x7f\x85\xa0\x48\xe4\x39\x01\x1a\x9f\x6f\x2f\x60\xb9\x7d\xa0\x45\x43\xab\xb6\xfa\xca\x5f\x07\xcf\xb6\xf3\x11\xab\x7f\x04\xfa\x69\xbd\xa5\x66\xe4\x5a\x24\x1a\xd8\x97\xd3\x8f\x47\x1f\x39\xf8\xd6\xdb\x7b\xed\x32\xf6\x52\x6b\xcd\x9d\x98\xa1\xb1\x1d\xf6\x67\xa9\xbd\x5f\xbe\xe7\xc8\xff\x44\xf7\x8f\xca\xf0\x8a\x03\x36\x28\xce\xc8\x46\x1b\x2e\xf5\x74\xcf\xab\x2e\xc5\x02\x10\x87\xb2\xa7\xe3\xdd\x6e\x4c\x48\x66\x18\x5f\xa1\x69\xfb\xaf\x2b\xca\x5f\xae\x37\xf2\xc6\x96\x25\x80\x78\x58\xd5\x9b\xe2\x57\x06\xdb\xa5\x68\x36\x35\x45\x08\x84\xdf\xa1\x0d\xf2\xcc\x2c\xfc\x6e\x1e\xe2\x73\x18\xb0\x35\xb5\xe8\xe1\x1e\xfc\xb5\xd8\xd6\x14\xec\xb2\xeb\xdd\xce\xcf\xf1\x8b\x21\xe1\xb9\xb9\x89\xd1\x70\xda\x49\x90\x47\x13\x43\xcc\x28\xbb\x16\xc0\xbc\xfc\x56\x5f\x70\x6b\x05\x79\x5c\x61\x81\x76\x3b\x69\xdc\xdf\x57\xf0\x3f\x8e\x21\x4d\xe5\xa7\xe9\x92\x62\xa8\x72\x18\xbf\x3a\x72\xf9\x1f\xe9\xed\xf6\x68\x93\x55\x92\x29\xc6\xf9\x48\xbb\x15\x02\xae\xe6\x28\xe3\x47\xf4\x13\xab\xe1\x13\xc1\x69\x84\x7a\xef\x48\x7f\xbc\x17\xa3\xac\x28\x7e\x16\xdf\x6b\x73\xf5\x38\x7e\xce\x9c\x1f\x77\x09\xb8\xca\xd6\x81\x3b\x6c\xe6\x8a\xcd\x8e\xe0\x06\x8b\x96\xf8\x4d\xf6\xc6\x00\xfd\xe2\xad\x75\xee\x59\x82\xb7\x4a\x3d\xab\x00\xca\x69\x6b\x1a\x32\x68\x41\x6a\x94\x71\x2c\x02\x66\xac\xbc\x03\xcc\xef\x0f\x95\x9c\x90\xb2\xcd\x0a\xc5\x71\x52\xc3\xb6\x11\x64\xb3\xed\x9b\x9a\x00\xa5\x07\xb3\xa2\xb6\xcd\xba\xcf\x72\x06\x6f\xd3\xe0\xcd\xd9\xf9\xc9\x39\x4a\x67\x72\x8e\xa5\x8e\xad\xbc\xfd\x41\x51\x53\xc5\x68\xd1\x8f\x47\x6f\xd5\xda\xda\x12\x53\xfa\x54\x8e\xf2\x15\xa0\x53\xaa\x30\xdd\x03\xd3\xca\x86\x81\x4b\x8a\xed\x1e\xb5\xea\x6e\x7a\xcc\xf4\x64\x47\xb7\x49\x74\xfb\xbd\x6e\x06\xb4\x4e\xe2\x31\x32\x99\xa8\x25\xf5\x96\x83\x12\x4f\x1c\x7f\xc7\x12\x81\xa3\x05\x5c\x13\x6a\xbb\xb8\x97\xbc\x05\x3c\x82\x6e\x85\xe3\xb1\x20\x87\x06\xa9\x35\x79\xa9\x56\x5a\x42\x1d\xb8\x41\x21\xb8\x3d\x16\xee\x76\x34\xc0\x3c\x70\x11\xda\x61\xae\xca\xd0\x4c\xa4\xa4\xdd\xb8\x44\xd8\x03\x16\x16\x86\xbf\x84\xd1\x2b\x61\x55\x68\xff\xf7\xdd\xdb\x7f\xb8\x86\x68\x95\x94\xb8\xd5\x45\x8d\x4e\xa6\x6a\x55\x56\xd7\x6f\xb2\x35\x55\x6b\x1b\xa0\xa2\xd4\x0f\x63\x5f\x79\xa3\xdf\x28\x2f\xdc\xef\xbc\xae\x3d\xf7\xab\x3a\xe3\xf3\xfc\xc2\x8c\xd9\x79\x3e\x18\x20\xa9\x8a\xcc\xed\x39\xa7\x27\x1c\x7b\xfc\x67\x9a\x94\xc0\xf2\xe2\xbf\xb3\xa4\xb4\xec\xee\xb3\xa2\x50\xcc\x6e\x89\x85\xf3\xb1\x24\xe0\x44\xff\x11\x6e\x63\x61\x9b\xb9\xff\xb8\xba\x36\x9b\x9e\xbd\x7a\xd2\x90\xab\x44\x36\x02\x5f\xd0\xa7\xa4\xbe\x1b\x42\x3a\xab\xe6\x86\x7b\x86\xbd\xd6\x13\xbd\xbc\x0c\x80\x66\x80\x01\x54\x65\xd7\x9e\x45\x15\x80\x75\x8c\xf2\x92\x6d\x7e\x14\xf5\xa1\xb1\x54\x37\x64\x8d\x29\x2e\xf0\xfb\xfb\xae\x75\x79\xa8\x61\x32\x3d\x78\x4c\x6b\x0c\xa2\x56\x14\x27\xb3\xca\xb6\x4e\xf5\xe3\xbc\xf7\x9e\x25\x41\x48\x58\x70\x63\xf0\x8c\xda\xac\x7c\x65\x3b\xad\x4b\x2b\xdb\xc6\xcd\xd8\xfc\xdc\x38\xc5\x52\xb3\x50\x8d\x1c\x4c\x4c\xd3\x6d\xb0\x5c\x9b\x8c\x0c\xcf\xc3\x86\x43\x3c\x41\xc8\x77\x3d\xfd\xd6\x5d\x15\x79\xc3\x65\x47\x0b\x1c\x30\xdb\xcb\x26\x41\xaa\xe6\xb3\x4f\x1e\x2a\x1e\xba\x67\x28\x5b\x02\x7b\x6e\x0b\x68\xcc\x9c\xb9\x57\x99\x67\xbc\xe5\x89\xda\x28\x60\x7b\x59\x72\x44\x67\x7c\x6e\x80\x55\x77\xbb\xa4\xf2\xd8\x29\x15\xe3\x2e\xac\xbc\xca\xfe\xdc\x54\x56\x8e\x96\x8a\x68\xb5\x9d\xdf\x54\xe4\x5b\xea\xbc\xf3\xeb\xa3\x40\x1c\x83\x7b\x65\x3f\x28\x38\x32\x71\xfb\x89\x14\xad\x0f\x6c\x80\x9f\x5c\x9b\x30\xc7\xb1\xf3\xfe\x7e\xe4\xd9\x93\x99\x32\xf2\x15\x16\xe0\x5d\x57\xfd\xca\xc8\x98\x00\x27\xa2\x2f\x47\x24\x1c\xa1\xea\x03\x1b\xec\xa0\xff\xb9\x51\xe7\xa7\x1d\x47\x40\xaa\x4f\x7e\xe6\xd8\x57\x79\x68\xfe\x50\xc0\x6e\x97\x64\x23\xc6\xf3\x72\x5b\xb3\x6b\x50\x44\x99\xea\x88\x0b\x22\x53\xf3\x4b\x22\x45\x64\x60\x4e\x80\xf3\x5a\xef\x70\x9a\xd9\x93\x69\xbf\xda\xed\xfa\xb6\x10\x8f\x81\x40\xce\xcb\x9b\x29\x14\x40\x8e\xbd\x22\x41\xb3\x65\xaa\xc2\x9f\x42\x89\x52\x3c\x95\xe8\x3c\xe1\xe0\x12\xbb\x19\x62\xb3\x3d\x65\xc6\x51\x38\x36\xee\x04\x55\x7a\xe4\x6c\x8a\x8f\xf8\x1e\xc0\x69\x33\x84\xb7\xff\xb7\xf4\xd8\x17\x55\xfe\xcb\x3a\xeb\x4b\xfa\xea\xcb\x07\xe8\x9e\x0e\x73\x3d\xa5\x92\x0e\x25\x6e\xda\xd2\x74\xe1\x50\x86\x9d\xa8\x18\xdf\x0c\xe1\x92\x4c\x14\x33\xe0\x59\x34\xe2\x5c\x71\xe3\x3a\xc8\x6a\xc6\x0f\x92\x72\xca\x52\xed\xd5\xbc\xd9\x87\x96\x64\x7c\xbe\xbc\xf0\x2e\x25\x96\x1e\x30\x77\x52\x90\x7a\xb6\x9c\x83\x6b\xf8\x64\x45\x3e\xf1\x64\x8b\x0b\xd3\x21\x08\x4d\xcb\x38\x4e\x0a\x45\x78\x74\xea\x95\xab\xab\xfa\x35\xc8\x51\x0a\x91\x6c\x0f\x4a\x32\xaa\x40\x5d\xd8\x36\x28\x4c\x55\xa2\xc0\xab\xe6\x8e\x22\x29\xc8\xd6\x14\x6a\xf2\x1f\x90\xdc\xde\xce\x15\xfa\x86\x43\x57\xa6\xf6\x2a\xb3\xdb\x25\x3a\x8e\xe4\x58\xd5\x4b\x9d\xee\xfc\xa3\x5c\x61\x5c\xa9\x1e\xe9\x54\x83\x3b\x93\xed\x6b\xe0\xf6\x3e\xf0\xa4\x46\x08\x6f\x81\xcd\x53\x41\x5b\x15\xb4\x45\x9a\x0b\xdd\x10\xa3\xfc\xd3\x2f\x75\x0b\xd6\xf8\x3a\x1c\x81\xe1\xb1\x8a\xbe\x7e\x3a\x8e\xe3\xda\x6b\x7b\xd0\xd1\xe6\xc2\x71\xb6\x9c\xeb\xb6\x6a\x0f\xe7\x07\x73\x03\x12\xe8\x76\x6a\xc1\x84\xe6\xeb\x7a\x4d\xae\xd7\x90\xdd\xc6\x98\xf9\xa0\x9e\xf9\xb5\x75\x4c\xc1\xa6\x21\xb6\x1f\xee\xdb\x35\x07\x03\xe9\xef\x9a\xc6\x83\x46\x65\xae\x9b\x2a\xb3\x5e\x2a\xa8\x2e\x1c\xb1\xec\x16\xd6\x3a\x69\x81\xde\x86\xde\xd3\x24\xec\x69\x7b\xb7\x91\xeb\x92\xa6\x54\xe3\xa9\xbb\x6a\xbd\x0e\x80\xc1\x3b\xee\xdd\x88\x9c\xc1\x11\xac\x7e\x1f\x0d\xe8\x88\x15\x2d\xe8\x1c\x20\xd7\xcd\xe5\xf4\x18\x1c\x93\x80\x6d\x90\x37\x28\xb0\x3f\x19\x5f\x1f\x6f\x58\x52\xa9\xfd\xc8\x6d\x48\x6c\xaf\xcf\xc5\x9c\x98\xfd\xa8\x55\x00\xbc\xf2\xe6\x52\xad\xcd\x14\x1c\x52\xa8\x4a\x53\x28\x3e\x63\x73\x73\x5d\x95\x21\x9a\xda\xef\x6a\x32\x3e\xaf\x2f\xb2\xe6\xbb\xba\x19\x96\x2d\xc9\x66\xf5\x1c\x97\x64\x7c\x5e\x3a\xb3\x8b\xf3\xc1\xa0\x54\xa7\x70\x31\x2b\xe7\x6e\x9f\xde\xda\x15\x60\xd5\xe3\x8e\x68\x4f\xb8\xe1\x87\x19\x9f\xa9\xad\x78\xc6\xe6\x24\xf3\x1c\x71\xba\x8e\xff\xd1\x93\x49\xd2\xf6\x96\xe8\xef\xf5\x87\xee\xa8\xb5\x1f\x6a\x3d\xfe\xcd\xd5\x4e\x42\x51\x2f\x3c\xf9\xc0\x48\x37\x25\xfe\xd3\xdb\xee\xbf\x38\xff\xe0\x20\xd4\xca\x5f\x7a\x99\xff\x14\xb2\x8d\x21\x45\x1e\x4e\xd2\x71\x93\xf4\xf9\x1d\x49\xf5\x6e\x11\x24\xfd\xa1\xe5\x9c\xdc\xbf\x82\x1a\xca\xe0\x15\xdc\xfc\xf6\x49\xd5\x76\x29\x4b\x8d\x84\x05\x03\x3f\xa1\x7f\x0a\xc5\x41\x68\xdb\x21\xac\x9d\x3b\xa3\xdd\x0e\x5a\x30\xfc\x89\x1b\x60\x15\xeb\xfa\x66\x28\x34\x58\x8f\xfe\x44\x0a\xcc\x14\x55\xde\xed\xa0\x15\xc3\xe7\x90\xdc\x6a\xac\xa9\x63\x3e\x2b\x86\x6a\x99\x34\x6d\x78\xd1\x32\xb0\x7f\xa7\x16\x69\x6b\xbc\xb9\xdb\x17\x18\xb6\x1e\x61\x3d\x69\x44\xc2\x34\x10\x94\x5b\xf4\xcd\x99\xcb\xfa\x1b\x9c\xea\x76\xa4\x50\x3b\xb3\x87\xfe\xc0\xd5\x76\x6f\x27\xea\xc5\x18\xdc\x27\x12\x17\xd0\xc1\x11\xbe\xf1\x87\x06\x2a\xde\x1f\x7b\x9c\xff\xab\xc3\xe8\x89\x17\xfd\xed\xa1\xab\x3f\xa2\x79\x3f\x84\x33\xd5\x6e\xd1\x6e\x77\x86\xee\x5b\x95\xcd\x8a\x04\x7d\xcf\x83\xd6\xeb\x14\xa5\x5b\x8b\x7a\x78\xc7\x08\xe7\x6a\xb0\x4a\x23\x3e\xd3\x43\xeb\xd6\xab\x1a\x61\x86\xf0\x52\x27\x91\x02\x73\x3d\x98\x4d\x82\xe7\x2a\x81\xf6\xf9\x98\x3f\x25\xe3\x38\x5e\x5e\x90\xf1\x6e\x97\x5f\xc0\xef\xa7\x04\xfa\x51\xbf\x35\x95\x0a\x67\x71\x1c\xb3\xd6\x12\xb0\xa5\x55\xe8\x29\x19\xa7\xde\xdb\x18\xed\x76\xba\x98\x7f\x67\x66\xd0\x3a\x8e\x2e\x6c\x76\xf6\x7d\xec\xbc\x4e\xf6\xc7\xfe\x89\xe6\x8f\x70\x03\x3a\x97\x04\x46\xfb\x1c\x51\xbb\x30\x86\x0d\xb0\x43\xa3\xf1\xea\xbe\xff\x25\x58\x8b\x76\x5c\x39\xf9\x03\x40\x83\xed\x5c\x22\x84\x4f\x65\x0a\x30\x0e\xcd\xa7\xdf\x78\x94\xe7\x69\x70\xec\x74\x98\x4e\x3e\xfc\x84\xdd\x03\xe0\x22\x84\x7b\x89\x3e\x8b\x47\x61\xab\x01\xe5\x0f\x26\x4d\x0d\xbe\x0f\x2a\xff\x2e\x8e\x65\x7b\x2a\x56\x07\xcc\x6f\xb0\xb5\xb0\x65\x92\x70\xd8\x59\x0e\x57\xa1\xc7\xb9\x69\xa2\xe2\xfa\x5f\xef\x5d\xf6\x83\xe6\x0a\x31\x8e\xc7\x36\x6d\x1c\xf3\x83\x61\xd7\x97\x8e\x7f\xb5\x00\xf6\xde\x70\xba\x06\xfd\xd5\x67\xdc\x75\xd9\x20\x28\x36\x07\xcb\x2a\x58\x12\xd0\x41\xb6\x6f\xe0\x4b\x0d\xa6\x80\x3f\x71\x03\xab\x10\x1c\xe1\x2a\xc7\xdd\x29\x16\xb2\xba\x6b\x56\xaa\xf2\x5a\xfc\x6f\xd3\xf0\x36\x3d\x0b\xfa\xdb\xa7\x6d\xaa\x63\x15\x69\xf6\xa2\xef\x20\x75\x7d\xd6\xd5\x91\x2c\x60\x8e\x4c\x57\x30\x38\x8a\xa8\xa7\xe5\xa2\xd4\x9a\x65\x9d\x1d\x0d\xf8\x59\x5d\x2d\x44\x6e\x08\x98\x37\x04\x4c\x24\x1f\x39\xc2\x1f\xff\x65\xcd\x81\x3b\xe5\xb2\xbd\x46\x8f\x6a\x7c\x6e\xfc\x29\xb7\x6e\x3c\x06\x03\x8a\xfc\x70\xf0\xaa\xa8\xef\xf8\x7a\x2d\xf5\x01\xb4\xdf\x87\x95\xec\x10\xac\x06\x3a\x4e\xe6\x46\x06\x26\x0c\x78\xf7\x87\x35\xf9\x3b\x27\x6f\x47\xaf\x00\x5f\x58\xf5\x79\xd7\xb1\xd1\x5b\x39\x47\x8c\x1f\x55\xa8\x6a\x5b\x28\x80\x27\x62\x55\xca\x8c\xcf\x09\x70\x7f\xbd\xb6\x66\x06\x17\x05\x25\xd2\xbb\xd1\xfa\xd5\x15\xf1\x81\x25\x12\x5d\x24\x46\xb3\x02\x6e\x21\x43\x67\x4f\x00\x75\x1a\x20\x45\x83\x4f\x38\xaa\xb9\xf6\xca\x23\x44\x5f\x59\xb9\x97\x55\xd4\x35\x02\x46\xc7\x8c\x18\x01\xa3\x65\xcb\x8c\xb8\x14\x86\xd3\x26\xd2\x8b\xfa\x07\x91\x04\x6a\xbc\x98\x42\x13\x9c\x6e\x47\x64\x3d\xd2\xa6\x47\x15\x2d\x01\x09\xfb\x3c\xea\xd1\x91\x07\xb0\xad\x76\xe3\x01\x89\xb4\x83\x9f\x21\x20\xa1\x1c\x0d\xa3\x81\x3c\x40\xf3\xf6\xf1\x64\xa2\xcd\xa7\x73\xb0\x82\x76\x3e\x67\x4c\x36\xda\xad\xd4\x91\xff\x7d\xe8\x59\x36\xf8\xfe\xb9\x3a\xa5\xba\xdb\x76\x9a\xd5\xdb\x8a\xe2\x7f\x8a\x04\x10\x58\xf0\x4c\x37\x66\x6e\x3b\xd0\x3b\x46\x18\xc1\xab\x4e\xe0\x2b\xae\xfa\x7e\x4c\xd5\x22\xf9\x9d\x23\xfc\xfb\xbd\x8b\xa4\x4b\x85\xc6\x09\x1a\xad\x7b\x1d\x2b\xb8\xd6\x3e\xde\xc8\x33\x96\x54\x9e\x40\x9e\xc7\xb1\x0c\xbd\x47\x30\x9f\x95\x65\x48\x2a\xfe\x1b\x72\x50\x24\x3f\xb8\xee\xeb\x49\x77\xe3\x9d\x58\x92\x62\xdc\x49\x1b\xf1\xd7\x57\xdc\xf8\x18\xfa\xc4\x92\xaa\x71\xd7\x34\x06\x6f\x95\xe0\xeb\x4b\x68\x4d\x88\x03\x83\x79\x98\xbc\x15\x1e\x0a\x84\xa5\x56\xd3\x70\x0e\x81\xf6\xa0\x1f\xfc\xfb\x97\x0b\xf3\x57\xc6\x23\x70\xd0\x53\x5e\xaf\xf4\xbc\x54\x8d\x40\x9c\xbb\xda\x0f\x69\x8f\xc7\x71\x02\x6d\xb0\x15\x1f\x70\xd0\xd0\xf8\x4d\x26\x32\xf4\x7d\xd0\xed\x00\xe8\x57\x9e\x68\xcb\x96\x3d\x42\x86\x2e\x7c\x67\xe9\xc2\x01\x45\xd0\xb7\xa2\xf4\x93\x24\x14\xff\x53\xd7\x01\x5b\xe5\x42\x53\xcb\x6a\x6a\x9c\x0e\xa5\x13\x6f\xc5\xff\x66\x8c\xeb\xfd\xab\x5a\x38\x25\x35\xeb\xf7\xcf\xed\xeb\xd5\x73\x0f\x1a\x51\xab\xe6\x3d\x48\xa6\xe9\x3f\x76\x97\xf5\x00\x01\x78\x42\xb2\xc8\xf2\x0f\x57\x95\xd8\xf2\x62\x88\xa6\xc9\xe5\xbb\x01\x7a\x60\x4f\x98\x1a\x2d\x91\x12\xea\x2c\x8f\x2a\xad\xca\x87\x06\x36\xc8\x04\x0c\x2a\x4f\x7b\xcf\x82\xc2\xce\x26\xf3\x69\x64\x5c\x6e\x1b\x6f\x12\xfa\xb7\x51\x54\x91\x33\x3e\x9f\x4a\x4d\xf2\x8e\xe7\xa9\xe7\xbf\x23\x82\x3a\xd6\x28\x1a\xa8\x98\x81\x7a\xfd\x4a\xbd\x22\xa3\x2a\xab\x28\xe4\x6e\x07\xff\x07\x24\x3a\xd2\xc9\x9a\x45\xd8\xf4\xc7\x5f\x7c\x27\x2c\x8b\x32\xe3\x1f\xd4\x90\x34\xe4\xcc\x05\x99\x43\x8d\x87\x1f\x69\xfb\xcd\x43\xa1\x4c\x3c\x97\x9b\x47\x1a\x38\xb2\xc9\x61\xda\x0e\x48\x0c\xc8\x24\x4a\x8d\x26\x75\x53\xad\x3f\x79\xb6\x50\xe1\xe2\x9c\x8c\xf5\xad\x3d\x07\x90\xdb\xf1\xbc\x55\x7c\x85\xa0\x10\xbb\x00\xe9\x08\x90\x64\x9d\xd8\x59\x6a\x2d\x64\xa3\xaf\xea\x04\x2f\x07\x82\x53\x95\xdb\x51\x34\xd0\xd0\xc7\x83\xe8\x68\x99\xb1\x92\x16\x47\x52\x1c\x65\xc5\x75\xc6\x73\x7a\x54\x83\xaa\xfc\x28\xf2\xe6\xd6\xdf\xfc\x4a\xdb\x40\xe6\x81\x1a\xd6\x1a\x46\xce\x68\x40\x52\x5e\xa4\x4b\x50\xbd\xac\x8d\xe7\xa0\x91\xd1\xa5\x4c\x10\x56\xcb\x3a\x15\xda\x1e\xc4\x20\x6d\xd2\xe9\x16\x74\xdf\x44\x41\x71\x8e\xd2\x7c\x0f\xf2\x22\x81\x33\xbd\xcd\xe0\x9a\xe8\xc8\x9e\x24\xaf\x68\x92\x61\xeb\x0e\x15\x97\x8a\x27\xce\x8c\x3c\x4c\x9d\x6d\x6a\xd9\x88\x97\x2b\x75\x92\x51\x2d\xbf\xe1\xea\x44\x41\x3f\x49\x7c\x00\x66\xa3\x6f\xac\x38\xdc\xa5\xcd\xe6\xfa\x2e\x74\xa9\xd5\xdb\x47\xf9\x0a\xc5\x71\x7f\x39\xa2\xa2\x4c\xd0\x39\x32\x8d\x23\xba\x61\x82\xfc\x89\x27\x35\x5e\xe2\x1c\xc0\x16\xb6\xfa\x7a\x83\x81\x6a\x83\xd3\x7f\x9d\x6e\x53\x96\x78\xdd\xf8\x77\xef\x10\x08\xd7\xa4\xe6\xd2\xb6\x1a\xf9\xd0\xed\x66\x89\xe8\x3b\xbf\xa6\xc6\x7e\x92\xa6\xfd\x63\x9c\x6b\x6a\xe0\x9a\xda\xd5\x4a\x5c\x78\x19\xf9\x58\xf0\x71\x3c\x53\x5f\x6b\x40\xe6\x48\xbb\x91\xfd\x33\x4f\xfe\xa2\x4e\xc7\x1c\x61\x81\xce\x9b\x0e\x50\x2b\x69\xa9\xb5\xce\x5d\x5e\x87\x98\xec\xd3\xa4\x26\xfd\x09\xce\xe2\xb8\x62\x9a\x47\xc7\xf0\x11\xd2\xff\x9c\x5f\x56\xbc\x35\x2e\x46\xb6\xe4\xcf\x3c\xf9\x93\x2a\x70\x89\x39\x2e\x54\xa1\xd8\x1c\x5f\x57\xa4\x50\xb4\x45\xcd\xd4\xde\x0a\xc6\x28\x5a\x0f\xa3\x41\xb2\x9d\xae\x06\x6a\xe9\x6f\xd3\x95\xe6\xc3\xfb\xf5\x6e\x97\xf7\xc9\xd6\xc0\xc3\x96\x17\x66\xb0\xce\x11\x4b\x4a\xe2\xbc\x12\xda\xf9\x59\x0e\x1e\xd1\x87\x08\xe7\xa8\x97\x93\xed\x3e\x18\xd8\xbd\xcb\x60\x23\xea\xf3\xd0\x25\x3d\xe4\xa0\x06\x5f\x7f\xdf\x63\xc9\x46\x0d\x7f\x49\x36\xde\xfa\xa6\xac\x6d\xeb\x38\xb3\x2e\x8b\xd4\x14\xfe\x8e\xf2\x39\x16\xe4\x76\xdf\xd3\x93\xc1\xce\x4b\xeb\xe5\x0a\x57\x07\x4e\xa4\x8c\xa0\x0a\x83\xbf\x0e\xe1\xdb\x14\x6a\x07\xbd\xd4\x73\x73\x5a\x66\x37\x1e\x43\xec\x26\x58\x3b\xc9\x2c\x9b\xe3\x2d\x99\xa8\xf9\x13\xd4\x43\x43\xc5\x77\x40\xe6\x37\x37\x62\xdb\xf3\xf2\xc2\x82\xee\x72\xc2\x66\xdb\x79\x8f\x3f\x85\xb3\x86\xe1\x20\xb6\x78\x82\x29\x66\xb3\xed\x60\x32\x57\x73\x68\x3b\x20\xc7\xd8\x1b\x04\x75\x6c\xdd\xc3\x3d\x1b\x5b\x26\xf5\x48\x6c\xb2\xdf\xb7\x14\xb9\xcf\x2b\xbc\x1d\x56\x98\x82\x23\x25\x53\x5d\xc5\xb8\x21\xbc\x25\xd5\xe0\x58\xdf\x97\xeb\xb3\xee\xc5\xf6\xbc\x1a\x90\x63\x7b\x9b\xc2\x66\xd5\x60\x32\xef\xe9\x7f\x24\x11\x53\xa1\xe6\x48\x1a\x45\x68\xd0\xca\x6b\xaf\xfa\xd1\x6e\x19\xb7\x60\x8c\x54\xa7\x0c\x83\xe8\x9c\xd6\xa9\x18\x99\x8d\x0b\x44\xe8\x76\xe7\x9a\x1a\x6f\x9b\xcd\x48\x4b\x16\x38\xd2\xd0\x56\x4d\xf5\x6e\x67\x7f\xcd\xc6\xf3\x3e\x69\x8d\xbd\xed\x37\xa0\x53\xcf\x18\xb8\x71\x64\xc4\xcc\x99\xe0\xb8\x78\xff\x22\xdb\xf2\xc4\x9b\x33\x1c\xa5\x00\xa9\x05\x45\x81\x81\x3b\x58\x94\xe9\x6a\x10\x66\x7e\x60\x36\x32\x4d\x9c\x9a\xb8\xe7\xfa\x95\xb8\x88\x34\x8c\x00\x13\xc0\x20\xa5\x76\x86\x51\x11\x62\x5d\x97\x55\x82\x4b\xa6\x6d\x07\xfd\xf7\xc1\xc0\x41\xd7\x98\xd2\x9b\x7e\xab\x0e\x56\x88\xd7\x14\x71\x1f\x19\x83\x89\x6f\xb4\x19\x88\x00\x72\xc2\x77\xbb\x31\x36\x84\xeb\x2f\x3c\x61\xb8\x42\xe7\x7d\x61\x49\xd6\x9f\x54\x88\x50\x3b\x41\xf0\x95\xe2\xc1\xbf\xe3\x08\x7f\xe7\x73\x9a\xe0\xab\x46\x74\x98\xde\x3d\x63\x46\xe9\x4e\x33\x37\x8c\xdc\xee\x31\x63\x01\x8e\x91\x60\x0d\x20\xb7\x76\x0b\x5a\xff\xdb\x21\xd0\xbf\x27\x3a\x96\x01\x15\x9e\x32\x96\x72\xe6\xb8\x8b\x19\x9d\x2b\xbe\x7b\x46\xe7\xc4\x81\x31\x25\x0f\x2e\xdf\x0d\x1e\x5c\xc1\xb2\xf8\x2a\x8e\x7c\x9d\x83\x8c\xf9\xf7\x37\x8d\x5a\x98\x93\xcb\xe0\x7a\x1a\x6d\xb2\xa2\x60\xfc\x6a\x08\xfe\x55\xd3\xa3\xd1\x64\xf3\x29\xd2\xca\x38\x98\x93\xdb\x4d\x45\x53\xf5\xe1\xa6\xa2\x11\x9e\x55\xa1\x06\x99\x86\x79\xc4\xc6\x47\x58\x5a\xe1\x5c\x94\xe9\x18\x6f\x44\x9d\x8e\x71\xbe\x4e\x29\x06\x73\x77\x30\x7d\xaa\xd3\x44\xec\x76\x35\xe8\xc3\x5c\x51\xa9\x41\xdd\x5b\x1e\xae\xd0\xbe\x27\xed\xb9\xca\x37\xe3\xd7\x5c\x10\x49\xc0\x1b\x87\x9c\xea\x7f\x66\x35\xa4\x63\xd4\xa8\x34\x64\x78\x4b\x98\x89\x9f\xb1\xe1\x64\x9e\xea\x1d\xbf\xc7\x61\x4a\x8c\x31\xd7\x4a\x5d\x1f\x28\x27\x35\xc3\x5f\xf9\x2e\xac\x4c\xb9\xea\xd0\x9d\x91\xd7\x2c\xd9\x22\xed\x69\xc0\x7d\x50\x32\xef\x0d\x83\xfa\xfe\x68\x9d\x6d\xc8\x6c\x8e\x97\x2c\xd9\x62\x8e\x61\xdd\x6f\xb1\xec\x7b\x2e\x72\xe8\x27\x49\x2b\x9e\x95\xaf\x75\xf6\x45\x1c\x3f\x83\xbc\x11\xde\xb6\x57\x54\x18\x60\x69\x0d\x54\xc2\xfc\x26\x7f\x88\x3b\x52\x61\xde\xd0\xa6\x28\x3a\xc8\xbd\xa1\x56\x90\x9d\x7b\xeb\xc8\xd0\xc5\x61\x2f\x9d\xce\x14\x61\xb8\x80\x5b\x67\x1b\xa7\xd0\xaa\xdf\x60\x1f\x1a\x63\xd5\xbf\x66\x32\x8c\xd4\x21\x9a\x17\xda\xae\xf4\xd7\xae\x7e\xd6\xb9\xb1\x69\xe2\x86\x1c\x7a\x13\x32\xc4\x4d\x18\xb8\x5e\x25\xb7\x7b\x94\x26\x61\x4a\xa3\x11\xeb\x05\xf8\xc2\x48\x15\x80\x70\xd2\xca\x27\xfc\x46\x07\x79\x5f\xdd\xee\x35\xd3\x50\xdb\x3b\xf2\xa6\x39\x60\xe0\xa5\x1a\x73\x9e\x3c\xb8\x5c\xe4\xeb\xa1\xcc\x16\x97\x0b\xb3\x90\xcb\x46\xb9\x0a\xed\x76\xe5\xe8\xf7\x2d\xad\x6e\x34\x56\x86\xa8\xe2\xb8\x15\x90\x44\x23\xfd\x7d\x64\x66\x98\x2d\xc3\x65\x42\x22\x9d\x00\x5c\xa8\x0d\x57\x59\xfe\x21\x72\xe7\x98\x3f\x81\xfd\x40\x45\x79\x61\x3d\x02\x39\xb6\x56\xd1\x2c\x8a\xf4\xbf\x26\xb3\xc3\x01\x6f\x25\x38\x1c\x67\xcc\x1b\x1a\x52\x33\x8f\x33\xad\xf1\xd6\x4a\xc2\x74\x07\x19\x38\x36\xbd\xc2\x61\xe1\x19\x9a\x74\x74\x7b\x82\xf7\x0f\xae\xf0\x96\xa1\x54\xe2\x1c\x94\x1f\x3b\xfc\x33\xe2\x25\xe9\x4f\xd4\x21\x25\xb7\x36\x99\xe8\x76\xd1\x98\x7a\xe7\x15\xcd\x24\x7d\x61\x5e\xbf\xad\xb2\x2b\x6d\x93\xec\x28\x43\xa1\x5d\x5f\xe6\x30\x3e\xda\xaf\x4e\xa1\xd1\x26\x48\x0e\xb8\x8e\x89\x44\x78\x43\x56\xd3\x95\x3e\x92\x0e\x8b\xd4\xc9\xbc\x0b\x55\xee\xc6\x48\xc4\xdb\x65\xfe\x4c\x3f\xc1\x0d\x4d\x52\x9a\x33\x6d\x81\x8b\xc1\x06\xa1\x9e\x88\xe3\xec\xe2\x6c\xba\x08\x26\xb8\xa7\x71\xbb\x9e\x23\x94\x86\xb1\xc6\xe7\xb6\x59\x26\xd4\x58\x9e\x6d\x44\x3d\xd8\x60\x88\xcb\x45\x39\x20\x1b\x13\x46\x36\xc0\xb7\xae\xac\xb3\xce\x65\x52\x0c\xc8\x66\x30\xc1\xd1\xa5\x8c\x08\x59\xcd\xc6\x73\x5d\xe7\x6b\xdd\xa9\x6d\x10\xce\x1b\x72\x3d\x84\x2c\xbf\xbe\x3e\x4f\xd6\xe4\xae\x8a\xae\x45\x72\x83\x70\xe4\x66\x22\x6a\x29\xf9\x56\x02\xdc\xd1\x6d\x2a\x5a\x5b\x4b\xc4\x08\xe1\xf5\xa1\x2a\xb0\xd4\x20\x38\x97\x1a\x66\x10\x9a\x72\xd3\xb8\xbf\xb9\xac\x4c\x9d\x77\xbb\xe8\x92\xbb\xfa\xdf\x53\xb1\xe6\x93\x69\xf4\x3f\xfe\xeb\xff\x1a\xa5\xd1\xff\xf8\xaf\xff\x7b\x87\xfb\xcc\x83\x1a\xbb\xba\x40\x11\xb6\x2e\x13\xa8\x8b\x2a\x30\xe8\xad\x6e\x47\x9e\x09\x7c\xfa\x99\x8c\xff\xd5\x19\x60\xab\xd3\x3d\x15\x26\x7a\x2a\x80\x25\xf4\x5e\xd7\xd9\x7c\xe2\x80\xbf\xc1\xb0\xef\xee\x89\xaa\x05\xcd\x1d\x59\xbb\x83\xd5\xc2\x56\x3e\x8e\x93\x25\x28\x90\x9a\x29\x67\x53\x80\xe4\x62\xb7\xe3\xbb\x1d\xdb\xed\x96\xbb\xdd\x56\xcf\xb4\x2b\x52\x29\xc2\x00\x37\x62\x57\x03\xc2\x35\xaa\xe0\xd5\x80\x18\x9d\xf7\xf7\xbe\xca\xf9\x62\x8e\xaf\xf0\xb6\x31\xb8\x8f\xe3\xe4\xbd\xf1\x70\x5a\xeb\x6e\x38\xdc\x20\xde\xa3\x7d\x77\xc4\x02\x79\x6c\xf5\x96\x85\xca\x20\xd1\x51\x84\x43\x2d\xc1\xe1\xb1\x16\xc5\x0f\x48\xf5\xf5\xf1\x14\x98\xfc\xff\xfe\xdf\x22\x67\x1b\x0d\xd7\x42\x4d\x7e\x25\x0b\x2e\xf4\x1d\x7f\xe7\x4e\xe1\x86\xde\x11\x36\x65\x83\xe8\x28\x5f\x0f\xe1\x86\x6f\xb8\x10\x55\x41\xab\x28\x8d\xda\x21\x8e\x2c\x95\xa4\x82\xfe\xcf\x49\x39\x70\x32\xe9\xf3\xa6\xee\x5a\x11\xc6\xdd\xb9\x2e\x2d\xff\x52\x10\x39\x5b\x82\xdc\xb6\x18\x49\xf1\xb4\x8c\xe3\xc2\xa8\x65\x95\x9a\x1c\xec\x6d\x14\xc9\xdd\x7d\x55\xab\xbe\x3d\x08\x70\x97\x73\x2a\xf5\xb0\x44\x90\x40\xb3\x7c\x78\x8b\xb0\xd6\x82\xc2\x9c\xd8\x84\x36\x59\x49\xd4\x2f\x5f\x02\x9a\x1f\x30\xe5\x7d\x1e\xc7\xbe\x38\xa9\xc7\xb4\x70\xbe\x6b\xea\x61\x86\xb0\x4a\x0f\x8b\x2f\x74\x8a\xc6\x29\x2d\xea\xe7\x7a\xd0\xdd\x6a\x8b\xe3\x84\xed\x76\x09\x23\xdd\xf3\xa1\x35\xf9\x2d\x48\x85\x9e\x7b\x08\x50\x6f\x0f\xd6\xae\x96\xfa\x44\xb8\x1a\xb1\x02\x19\x40\xcc\xc3\xda\xd4\x54\xfe\xc2\xad\x9b\xdb\x84\xdd\x35\x53\x19\x6a\x16\x4d\xd3\x47\x4b\x16\x7a\x89\x0d\x25\x83\xcc\x38\x65\xc6\x82\x8c\x43\xbd\x05\x18\x31\x5c\xe2\x1c\x2f\x71\x81\x57\x0e\xef\x09\x6f\xc8\x18\xaf\x49\xf2\x89\x4c\x70\x14\x21\x7c\xad\xb7\x39\xb6\x4c\xae\x09\xd9\xa0\xdb\x2d\x29\x49\x4e\x96\xa4\x26\x51\x84\x0b\x3d\x96\xd7\x64\xf2\xa0\x91\x86\xdd\xe0\x85\x62\x4c\xaf\xc8\xf8\xfc\xca\x57\x8b\xb8\xd2\x55\x7c\x4f\xf8\xec\x6a\x8e\x3f\x92\xf7\x56\x21\xd1\xd7\x29\xfc\x68\x74\x0a\xdf\x1b\x29\xe1\x26\x8e\x3f\x7a\xe3\x3d\x5d\xe8\x81\xfe\x88\xd2\xf7\x66\x7a\x6e\x9c\x10\xf1\x3d\x08\x11\xd5\xf3\xe9\x66\xb7\xfb\xe8\x8b\x22\xdf\x83\xe8\x73\xe3\xe5\x8b\xa6\x46\x24\xf1\x1e\xe4\x90\xef\x41\xf4\xb8\x89\xe3\xeb\xa7\x3a\x20\xb9\x86\x18\x5c\x12\xd5\x0b\x1f\x03\xa6\x66\xab\x2f\x79\xbd\x40\x48\x51\xeb\xdb\xb1\xa4\x9e\xd6\x83\xe8\x5c\x9f\xf2\x21\x58\xc5\x36\xda\xee\x41\xe3\x92\xdc\xe6\xd5\x24\x50\xc9\xad\x3a\xbc\xad\xfa\x75\x1c\x27\x37\xbb\x5d\x72\xe3\xf1\x8c\x4d\x2a\xfc\x1e\xd4\x6a\x3f\x6a\x62\x17\xc7\xfd\x25\x90\xd9\x8f\xd6\x2f\x73\xd0\x17\x49\xbf\x00\x55\x13\xab\x13\x88\x3f\x1a\x55\x93\x82\xbc\x47\xb6\x5f\x9f\x9a\xae\x30\xf6\x93\xaa\x33\x40\x2a\xab\xa8\xc0\x0d\x4c\x22\x3d\xbe\x37\x76\x7c\xaf\x06\xe4\x18\xdd\xcc\xae\x06\x93\xb9\xae\x6d\xa9\x1b\x76\x33\xbb\x9a\xeb\xfb\xfb\x62\xb7\x2b\x5c\xef\x37\x39\x2c\xfc\x19\x92\x83\x05\x05\x5e\xd8\x8f\x0a\xd0\x6c\xd4\x7a\xa3\x63\x04\x13\x50\x71\x6c\x2a\x55\x62\x15\x1d\xa5\x98\xae\x06\x13\xd0\xa1\x44\xc3\x8d\x53\x75\x0c\x15\x21\x71\x93\xda\x1a\x62\x15\x76\x4e\x24\x05\xe9\x4f\xd0\x5e\x35\x6d\xf3\x94\x58\xee\xc7\x4e\xe7\x97\xcd\x2d\xd1\x0a\x5f\x23\xb3\x18\x8c\x0d\xdd\x3b\xb2\x19\xac\x3d\x85\xa6\xbe\xb9\x24\x7c\x4b\xde\x3d\x7d\x39\x5d\x3b\x52\xf8\x72\xb8\x41\xe9\xba\x27\xdd\x21\x2e\x91\xf8\x2d\xce\xa6\xd9\x60\x9b\x6e\x71\x8e\x37\x83\xb7\xd6\x10\x98\x5c\x4f\xcb\x34\x8a\xf0\x12\xd7\xd0\xdb\xef\x9e\x92\x97\xe8\x76\x4d\x6c\x66\x2a\x2b\xbc\x21\x2f\x7b\x9a\x2a\x6f\xc8\x3b\x9c\x93\x28\xda\xaf\x1d\x20\x9b\xc0\x82\x54\xb3\x4f\x83\xc1\x1c\xe1\x8c\x08\x96\xe8\x17\x2c\x3d\x2e\x04\xe9\x8d\xfe\xc8\xb6\xf2\x13\x99\x9c\x7f\x6a\x34\x28\x3e\xa9\xd1\x0c\x6a\xdb\xca\x5c\x31\x23\x3a\xe3\x49\x2b\x63\xef\x12\xa0\x08\x77\xb9\x31\x69\x34\xc4\x41\xa1\xc2\xe8\x88\xc7\x71\x14\x11\x4f\x0f\x57\x4d\x51\x45\x26\x77\xbb\x80\x6f\xea\xf4\xbc\xed\x95\xb6\x62\xf7\xcb\x03\x8e\xaa\x69\x35\xa3\xf3\x96\x3e\xa5\x00\xc1\x1f\x43\xb7\xc9\x21\x2c\x9c\xa6\x9d\x44\x62\xea\xdd\x62\x01\x0d\xf7\x2f\xb5\xb4\x2b\x56\x73\xa3\x64\x62\xe1\x8e\xcb\xdc\x64\x18\xc9\x35\xec\xd3\x10\x0d\xbf\x4c\x2c\xc8\xcb\x30\x68\xfa\x55\xc8\xa8\xd1\xf3\xa9\x0a\x4c\x27\x3d\xd6\x48\xbc\x8d\xe9\x14\x43\x7b\xa4\x2b\x8c\x39\x58\xb8\x50\x70\x6e\xc0\xaf\xf4\x61\xcc\xbf\x80\x69\xdf\x91\x52\x2c\xc8\x6c\x0e\x90\xdf\x8a\x51\x11\x8d\xea\xec\x77\x3c\x29\x67\xd5\x1c\xb3\xa4\x42\x98\x37\xa2\x02\x6d\x21\x53\x9b\x41\x03\x7b\x32\x20\x88\xe6\x5e\x36\xd7\xba\x3f\xb5\x91\x73\x2c\xf5\xeb\xd6\xbc\x16\x6a\x40\x4b\xa4\x76\x96\xa4\xf4\xe0\xd0\x37\x44\xa7\x18\x1a\x61\x68\x63\xcb\x60\xed\xf4\x92\x31\xce\x92\x31\x2e\x1d\x40\x06\xb6\x50\x51\x2e\x23\xd5\xdd\xec\x0f\x3a\x74\x69\x9c\xb1\x91\x99\x72\xf6\x68\xe5\x67\x34\x9c\xa0\x9e\x48\x96\x78\xa9\xab\xbf\x42\x78\xa3\xb1\xdf\x21\x6b\x23\xb1\xde\xa8\x83\x86\xbd\x61\x70\x35\x32\x91\x6b\xe4\x4e\x17\x39\x21\x5a\x01\x7c\x42\x88\xab\x85\x48\x72\x9c\xeb\xfb\x52\xbb\xf0\xeb\x51\xbe\x42\x83\x62\x10\x04\x6f\x55\x20\x36\xb5\x4e\x54\x2d\x27\x7e\x2d\x51\x30\x34\xdd\xdf\xaa\x71\xc2\x77\x96\x57\xce\xc6\x6a\x38\xc7\x48\xc3\xaf\x7b\x6d\x00\x66\xdf\xb5\xe2\x8b\x2a\xaf\x32\x1b\x2c\x0f\xeb\x60\xf3\x0f\x3a\x70\x30\xc1\x1b\xdd\xae\xdb\x2f\xa9\x9d\x1a\x8f\xa2\x2b\xf3\x15\xea\x1d\xf4\x4b\x6f\xf3\x74\x72\x30\x62\xaa\xc0\xe1\xe4\x8e\x76\xde\xb7\x40\x36\xcc\x81\x01\x69\x28\x12\xea\x43\x1f\x90\x40\x4f\x5a\x92\x31\xb0\xfb\x2d\x0d\x70\x3a\x93\x81\x7d\x17\xae\x06\xa0\x0e\xee\xcc\xde\x7d\x11\x7a\x53\xf2\xba\x29\x39\x57\x9c\x5d\x45\x39\xa1\xed\xb2\xba\x2c\x86\xec\xcd\xf4\x8c\xcf\x7b\x72\x40\xd8\x28\x5f\x6d\xf9\x07\x75\xf4\x4e\x90\x2a\x9b\x59\xdd\x03\x16\x58\x9d\x69\x18\x18\x80\x0a\x0b\xa5\xfa\x07\x0d\xde\x6f\x98\x0f\x05\xe6\xb2\xbf\x13\x1f\xc9\xd3\xe7\xdd\x63\x3d\x2e\x3f\x70\x1e\xf8\x32\x69\x53\x21\x4e\xe8\x40\x9e\x57\x17\xbc\xb1\xab\x62\x3e\xb0\x43\x35\xf7\xfb\x6d\xd8\x34\xea\x37\xd0\x03\xfd\x3b\x4b\x18\x36\x50\xc4\x51\x60\x4a\x6f\x64\x35\x30\xca\xd8\xf2\x3b\x2d\x3f\x00\x6a\x61\x29\xa6\xba\xbc\xb1\x18\x52\xf0\xad\x73\x48\x72\x58\x79\xa7\x21\x61\x14\x31\x6c\xaf\xe9\x39\xe3\x17\x6f\xe6\x38\x45\xd6\x4a\x55\x36\xbf\xda\xc9\xa8\x67\x2c\xd7\xf2\xcd\xa1\x06\x1a\x9c\x72\xf8\x43\x88\x99\xa4\xd5\x9b\x83\x8a\x35\x59\xa8\x3e\xa5\xd0\xa7\x80\x39\x5b\xf9\x30\x28\x74\xee\x6b\x24\xe2\xf5\xbf\x6f\x8c\xd5\xc4\xb9\x6f\x6c\x5d\xa2\xe1\x81\x31\x64\x30\xc5\x3b\xac\xe9\x82\x78\xd8\x81\x08\xf7\xe7\x34\x68\x40\x5c\x38\xd5\x64\xc7\x87\x49\xcc\x86\x14\x80\x68\xed\x4a\x03\x93\x3c\xaf\x8e\x09\xc5\x22\x50\x61\x19\x92\x6c\xc8\xdd\xf2\x20\x44\x58\xd4\x14\x57\x3d\x2b\xea\x03\x5d\x23\xcc\xfd\x65\x01\xd7\xc5\x89\x1c\x12\x81\x9c\x0e\xca\x58\x13\x51\x3a\xd4\x76\x3b\x4d\x2f\xc8\x8b\xe3\x47\x07\x99\x1b\xf1\xd9\x64\xb7\xeb\x87\x31\xb3\xf1\xdc\x73\x69\xba\x61\xc8\x19\x4d\xcd\xcc\x3a\xb0\x33\x39\xa9\x4d\x83\x1c\xcd\x98\xa9\x1d\x62\xc3\x92\x1a\xcd\x71\x3b\xd3\x60\xf6\xdc\xb1\x1c\x42\xdb\x96\x3b\x06\x4b\xa2\x30\x6b\x39\x6f\x6a\x44\xbf\x64\xdd\xa8\x4e\x69\xae\x79\x70\xb8\x96\xda\x8b\xa0\xbb\x0e\x3c\x20\x13\xae\x2a\x20\xb4\x66\x87\x13\x86\x08\xd8\x99\xd9\xc8\xab\x9b\xa9\x92\xf1\xfe\x52\xc7\x31\x0b\x88\xd7\xd3\x47\xe3\xa6\x3f\x32\x12\x46\x7e\x7d\xfc\x68\x70\xfc\x08\xd7\x24\x3b\xaf\x2f\xc2\xa8\x73\xab\xf4\x6e\x86\x82\x05\xab\xbc\xc6\xf5\x80\x1c\x3f\x42\xa8\xc7\xdc\x34\xdc\x3a\xfd\xb0\xae\xd9\x37\x18\x70\x3c\xc6\x5b\x84\xb7\xc1\x00\x9a\x6c\x09\x6b\xd1\x9a\xcc\x4c\x09\x00\xe7\x78\xb7\x61\x65\x99\xa0\xbd\x3e\x17\xd0\x21\x11\x6a\xb1\xbb\x98\x16\x64\x62\xbf\x73\x86\x5e\x90\xc9\x18\xf9\xda\x6c\xbd\x42\x58\xd7\xe4\xf4\x23\xec\x5c\x07\x75\xa6\xed\x4c\x86\x8f\xf0\x23\x64\xd4\x97\x74\x2b\xc0\x33\x92\x26\x11\xf0\x1f\x53\xd7\x1f\xd2\x57\xe1\xac\xc8\x42\xb8\x8f\x5c\xb6\x18\x0c\x59\x5a\x81\x6e\xbd\x0e\x26\x78\xac\x48\x3e\xf0\x1c\x7a\x2a\x1d\x54\x15\xf5\xdc\x7a\x56\x65\x7b\x2b\x08\xcb\x39\xa6\x84\xef\xa5\x8b\xb7\x16\xd4\x1f\x57\xac\xec\x68\xdc\xd3\xc9\xd8\xab\x4d\xd0\xf1\x9f\xa7\xd2\xff\x79\x73\xdc\xc1\x85\x79\x44\x51\x0c\x29\xc4\x32\xc0\x2c\x78\x93\x50\x9c\xe1\x0a\x05\xba\xed\x86\x8e\x65\x5d\x74\x4c\x58\x04\xb7\x6b\x46\xc6\xf8\x86\x91\xb7\xa3\x17\x22\xef\x40\xcb\x76\xb3\xc7\xf7\xc6\x7c\xc3\x1a\x91\x32\xfd\x78\x74\xd3\x1c\xc6\x8c\xea\x10\xa8\xcf\x92\x31\x52\xfb\x8f\x86\xac\x56\x1c\x93\xa5\x61\x33\xc3\xed\x46\x5a\x44\x8c\xe6\x68\x6e\xe6\x36\xd8\xc2\xdb\x5d\xd7\x69\x0c\x13\xef\x15\x80\x3d\x0c\x4a\x96\x0f\x80\xa5\x03\x4a\x9a\xf1\xef\x28\xa7\x15\x08\x12\xc8\xc4\x59\x84\x83\x4e\x00\xa9\xcc\xa1\x6b\x45\x93\x0a\x8f\x8d\x9e\x73\x4d\x4b\xf2\x02\xae\xe2\x34\xb9\xd2\xf8\x09\x30\xaf\x7e\x64\x89\xde\x12\xa4\xc3\xa7\xbb\x66\x66\x15\x8a\xc2\x7a\x0c\x97\x1e\xce\x21\xdd\x10\x6e\xc1\xbd\x24\xe5\x85\xaa\x5a\x97\x6f\xfe\xc4\xe8\x8f\x82\x58\x4b\x9d\x73\x6b\xc5\x26\xe0\x95\x51\x13\xd7\xf8\x1f\x0c\x4b\xa1\x1e\xf4\x93\x4c\xe9\x1e\xe1\xaf\x34\xca\x1f\xd6\xb5\xad\x05\xda\xf7\x7c\x7f\xe6\xe4\xa3\x48\xfc\xfd\x1e\xdf\xe6\x82\xd7\xb2\xda\xe6\x52\x54\xe9\x0d\x83\x19\x7b\x30\x61\xab\xa9\x6e\x9c\x9e\x45\xc3\x66\x18\xb0\x1c\xaa\x73\x6a\xea\x45\xfb\x91\xee\xe7\xc0\x51\x7e\xdc\xec\x11\x77\xf2\x84\xe3\xb6\x7b\x32\xb5\x1a\xaa\x81\x75\x4d\xd6\xb0\xd2\x01\x3d\x0f\xaa\x85\x2b\x64\x79\x94\x2e\xf6\x24\xe0\x0c\x82\x0f\xd1\x1e\x5b\xe0\xe6\x0e\xec\xd1\xb7\xa6\xef\x3f\xd3\x48\x7b\x62\x06\x74\x78\x3a\x95\xa9\xd4\x68\xf8\x74\xb7\xf3\xa7\x81\x75\x96\x85\xf6\xb8\xb6\x65\xfe\x49\x26\xc9\x61\xb9\x2b\xea\xf7\xeb\x18\x61\x87\x3d\x18\x94\x3b\x9c\xf4\x5e\x55\xfe\xec\x90\xc6\x45\x75\x85\x5f\x9a\x9a\x57\x81\x87\x6c\xa4\x27\xce\xe1\x34\x73\x80\x32\xb6\x62\x11\x56\x67\xf2\xb4\x3f\xde\x03\x28\x99\x37\xcd\x24\x02\x78\x12\xdf\x27\x58\x7a\x48\x23\xbe\x37\xf5\xa2\x18\xd4\x23\xad\x52\x71\x45\xaa\xa9\x7d\x55\xf3\x08\x73\x3d\x00\x5d\xd9\x58\x2e\xf1\x9d\x69\x8a\xfd\x8e\x22\xdc\xe4\x18\x74\x7d\x35\xe5\x29\xd7\x5d\x5f\xdd\xd9\xf5\xc6\xf9\xdf\x5d\x48\xb3\x26\xfa\x7b\x80\x25\xf2\x70\x43\x65\x1c\xeb\x7b\x0f\x97\x83\x4e\x92\xb6\x00\xba\xbe\x75\xb5\xb4\xe4\xd0\x0e\x05\x6d\x0a\x7f\xb3\x5d\x2f\x5a\x0e\x1f\x1b\xbd\x1e\x2f\x9d\x2e\xe2\xaf\xac\xde\x66\xe5\xa1\x53\x64\xeb\x85\x00\x32\x6b\x93\x92\xa6\x54\x84\xc1\x92\x6c\x8f\x55\x5f\x3c\x17\xdb\x7b\xc0\x43\x81\xd5\x77\xee\x9c\xef\x4a\x06\x09\xf6\xd8\x5a\x85\xdd\x9b\xcc\x9f\xac\x7b\x6c\xc0\x4c\xba\x1a\xde\x8c\x2e\xb4\x5e\x63\xe4\xdc\x09\x07\x4c\x4b\x6b\xff\x92\x20\x1f\xa2\x1f\x40\xdd\xb5\xc3\x79\x58\x89\xe0\x8c\x2e\xb5\x7e\xe9\x75\x90\x7e\x49\x23\xca\x21\xd1\x6e\x17\x49\xa1\x7f\xd8\xf5\x0b\x4e\xd5\x1b\xff\xe2\x38\xf4\x8a\x77\x67\xef\xd1\x72\x54\xa9\x79\x5c\xef\xf1\x81\x1b\xc8\xfb\x3e\xea\xf0\x19\x09\x14\xc2\xf4\x41\x48\x22\xf4\xca\xf8\x9d\x86\x6b\xe2\x70\x12\x4c\x57\x70\x14\xde\xed\xc6\x28\xa5\xc8\x59\xd6\x20\x84\x7d\xff\x82\x5f\x94\xb9\xbf\xe0\x76\x3b\x8a\x4c\x3e\x2d\x0f\xc3\x9d\x59\x7d\x73\x98\x95\x8c\x63\x9f\x20\x74\x65\x55\x1f\xe4\x85\x6e\xbf\x37\xdf\xfc\xe1\xe5\xd4\xf9\xed\x37\x37\x5f\xf0\xf5\x95\x05\x25\x76\x63\x06\x0b\x45\x1e\x74\xd0\x61\x55\x2c\xf6\x86\x25\xa9\xb7\x1d\xc6\xf4\xd4\x77\xb4\xc9\x66\x7c\x4e\x8c\x8f\x47\xd7\x0f\x6a\x6b\xd3\x13\xb1\xe9\x5c\x6a\x5d\x71\x22\xcb\x33\x01\xb6\xa7\xa7\xa5\xea\xee\xc2\x70\xb0\x0c\xb4\xe7\x84\x86\x4a\xff\x40\x13\x66\x3a\x57\xb5\x27\x2b\x3e\x33\x4a\xde\x69\xbc\xe9\x10\x7b\xc8\x00\xde\xd9\x73\x53\x79\xd7\xac\x08\xcb\xe7\x98\x7b\x97\xbe\x7a\x94\xaf\xfc\x89\xd7\x79\x10\xb5\xfb\x9c\x37\x2c\x9a\x35\xa8\x3a\x3c\x97\xda\x7d\xa1\x52\xdd\x66\x1c\xbc\xc2\x6f\xb5\x7a\x51\x4f\x12\x39\x95\xf6\x02\x86\xa1\x94\xed\xff\xbd\x9b\xf4\x15\xed\x5c\xf5\x87\x3e\x6a\xff\xd3\xea\x0c\x50\x11\x20\x88\xb6\x1e\x77\xee\xaa\x1d\xc2\x60\xa8\xc2\x9c\x46\xeb\x1e\xb7\x3d\x64\xde\x73\x0e\x99\xcd\xb1\x87\xb6\xea\x8d\xb9\x07\xd4\xc4\x67\x6c\x4e\x8c\xb1\xd2\xa1\x13\x5c\xae\xb2\xdc\xed\x9c\x9b\xcf\xc3\xe2\xbb\x57\x4e\xab\x0e\xb6\x7c\xe7\x8d\x28\xac\x87\xe7\x84\xc6\x46\xcd\xc4\xbc\xc7\x67\x62\x4e\x34\xc7\x93\xd9\x5e\x94\x22\xcd\xa0\x17\xef\x60\x71\x00\x0c\xd8\x70\x39\xd5\xde\x4a\x36\xe2\x18\xb6\x01\x80\x61\xfa\x4c\x55\x43\x60\x2e\x41\x18\xd6\x9a\xee\x8e\x6b\xf5\x5c\x7d\x4a\xad\xcb\xfe\xa2\x4a\x6a\x03\x5a\x80\x05\xc2\xa5\x0a\xf8\xa9\x4a\x6a\x50\x89\xd0\x47\x35\xc0\x65\xc6\x82\x94\x38\xca\xc0\xe8\x29\x22\xc4\xac\xc8\x9c\x50\x6f\x68\x54\x8e\x60\x03\x9f\x6b\x07\xab\xb9\x25\x1f\x17\xe3\x1e\x9f\x65\x8e\xc2\x2c\xa7\x65\xba\xc5\xcb\xe9\x36\x2d\xcd\x3d\xbf\x1f\xbb\xc5\x0d\xd6\x89\xb6\x6f\x4a\xb8\x46\x0e\xf4\x08\xc9\x5e\xcf\x51\x8e\xa5\x51\x6e\x26\xcd\x5a\x3e\x17\x4f\xd5\x48\x0d\x87\xc8\x72\x9e\x00\x74\xd0\xab\xa7\xbf\x9a\xc5\x5f\x9b\xe3\x41\xbe\x8e\xe3\x5f\xcd\x3d\x64\xbe\x06\x02\xb0\xe5\x85\x08\x67\x05\xba\xfd\xc3\x64\xa3\x1d\xc9\x19\xd6\xf2\x9e\x64\xe0\x4b\xce\xe5\x76\x07\x5d\x6b\x67\x0b\xa8\x08\x26\xe7\xcf\x7f\xa2\xdd\xd5\x99\x4f\x6a\x2a\x5f\xc2\x0e\x03\x26\x43\x1e\x0d\xf0\x4f\x74\x14\x88\x45\x47\xba\x70\xb3\xd7\xa9\xf7\xd8\x9c\x27\xdb\xb7\xae\x2d\xb7\x0c\x26\x15\x6e\x0b\x04\x3c\x88\x3f\x20\x2d\x3a\x44\x11\x11\x3d\x53\x76\xbb\xc1\x40\xdf\xc4\xda\x2f\x02\x58\x40\xf3\x8d\x0e\x0b\xbf\xb2\xde\x8e\x6e\x61\xa0\xa4\x1e\x88\x6a\xaf\xf8\xb6\x06\x45\xf0\xc0\xa3\x43\xeb\x74\xec\x87\x8d\xd6\xd9\xa7\xe6\xec\x0d\xe0\xfe\xd5\x87\xe7\xea\x44\x7e\x90\x4b\xfb\x9c\x6e\xae\x41\x54\xdd\x9a\xd0\x44\x0d\x0a\x6e\x87\x76\xb1\x93\xd4\x5e\xc1\xda\x9a\x28\x6e\xf5\xed\x86\x1c\x84\xbd\xa3\x65\x57\xf0\x5b\xa0\x14\xc4\x3b\xea\xdb\xd8\x2b\x57\xee\x1e\xb3\xba\xd5\x18\x1a\x0e\xf8\xe1\x37\x84\x38\x92\xde\x6a\xb1\xde\x70\x3a\x3a\xd9\x8c\x89\x1a\xae\xf4\x55\xab\x7f\x55\xa0\x5e\x09\x1d\x91\x3a\x18\xed\x81\x99\x3c\xc8\x38\xe4\xa8\xbf\x7c\x10\x7b\x12\x4a\x25\xaf\xb4\x43\x6d\xee\x8c\x31\x91\xf3\xe6\x8c\xa5\x29\x5b\x27\x32\xd3\xef\x20\xd9\x5e\x71\x26\x80\xa0\x5e\x66\x75\xf7\x76\x61\x3a\xf3\x37\x77\x9a\x8c\xb4\x8d\xb5\x62\x74\xa7\xf6\x77\x1a\x81\x1e\x4e\x84\x0f\x4e\xd2\x9c\x68\x80\x48\x48\xdd\xd8\x7b\xa6\x51\x63\x64\xaa\xe3\x1a\xab\xd0\xc3\xfc\x6d\xcc\xc7\x2a\xdb\x18\x7b\x51\xc5\xff\xcd\xf8\x1c\x18\xc1\x37\x22\xa9\x8c\x1d\x28\x84\x35\x2e\xc5\x68\x63\x0e\x6a\x2e\xd9\xc0\xb6\xb4\xe7\x64\x31\xf6\x24\xbd\x16\xd7\xf4\xff\x89\xfd\x80\x8d\x2c\x92\x2d\x93\x3e\x6b\xda\xdd\x00\x5c\x00\xc6\xa1\x16\xa5\xba\xeb\x59\x01\x80\x36\x32\x5f\xe9\x9e\xd3\xba\x41\x22\x74\xc4\x96\x11\x61\xec\x78\x45\x63\xc7\x0b\xfd\xe9\x7b\x1d\xb4\xb6\xbf\x89\xf9\x15\xc7\x59\xdf\xe9\xb1\x4d\xad\x9d\x95\xfd\x20\x43\xda\xbc\x73\xdf\xea\x7e\x33\x07\x35\x5c\xc2\x7d\x9d\x7f\x78\xc9\x61\xd4\x35\xe8\xc7\xa3\xdf\xb5\xfd\x38\xb8\x55\x04\xb0\x5d\xab\x42\x11\xc7\x2c\xb0\xfc\x17\x4e\xf7\x2f\x2b\xd9\x15\xff\xd5\x58\xb1\xab\x45\xf3\x9b\x16\x52\x58\xc3\xf3\x10\x63\xd6\x5a\xe8\x18\xb3\x77\x30\x26\xb0\x26\xf0\xb3\x39\x6a\xfa\xdc\x4a\x3d\x9e\xc9\xa9\x71\x2f\xcf\x50\x5a\xd9\xdb\x72\x77\x94\xa8\x9a\xa3\x84\x67\x27\xdf\x7c\x8c\x10\x1e\x63\x66\xe5\x25\x44\x62\xa1\x3d\x3b\x34\xca\x15\x9c\x68\x9c\x07\xda\x5c\xca\xf6\x00\x00\xd7\xde\xe8\x0f\xbe\xe2\xa0\xb3\xc8\x01\xdc\xc1\xa8\x80\x5a\x41\x08\x00\xc8\x76\x98\xae\xfb\xa3\x83\xd9\xde\x5d\x22\x99\x23\x44\xb3\x56\xcc\x78\x85\xe2\x5d\x0b\x9f\x8b\x2d\x2e\xf2\xe1\xd5\xa6\xc1\x06\xe7\xf7\xdc\x29\xe1\x0a\x57\x80\x96\x72\xb3\xa1\xbb\x5d\x04\xfb\x63\xa4\x8f\xe4\xdf\x18\x4d\xc5\xb4\x0b\x78\xed\xd6\x07\xbc\x4e\xa5\xd3\x4b\x94\x80\xbd\xf0\xf3\xcd\x86\x4e\xed\xa0\xa5\x12\xe1\x06\x28\x31\x85\xcb\xa5\xe6\x1d\x87\x20\x71\x69\x7f\x82\x35\x12\xba\x4e\xa8\x7f\xe3\x03\xe4\x6c\x1d\x7b\x10\xbc\xef\xb5\x1a\x4d\x89\xd7\x6c\x35\x6d\x1b\x05\x4c\xb4\xc7\x0e\x8a\xf6\x59\x97\x43\x2c\x38\xef\xd8\xbb\xa5\xc4\xcf\x09\x75\x83\x85\x7a\x60\x23\xe1\xa9\xc8\x13\x79\xa8\x13\xd0\xb9\x9b\xbf\x5a\xdb\x8f\x19\xf5\x4e\xaa\x4d\x9e\x0f\x70\x62\x9e\xda\x18\x69\x66\xb9\xc5\x84\xd1\x92\x19\x95\xc8\x80\xe2\x78\x47\x24\xd7\xb6\x83\x79\x11\xf4\x89\x7f\x65\xd9\xf3\x8e\x00\x34\xc0\x2c\x72\x97\xe0\xc6\xe9\x82\xb1\x85\x09\xd0\xa1\x9d\x98\xe6\xcb\x91\xb4\x6a\x7b\x8c\x30\x48\x5a\x5a\x7f\x6c\x0b\x4a\xa9\x8c\x98\x3a\x68\xff\x95\x4f\x21\x58\x93\x35\x42\xb6\x46\x59\x13\xb4\xc6\x54\x22\xeb\xde\xd0\x45\x10\x87\xc3\xad\x83\x9e\x12\x39\xca\x57\xbb\x5d\x15\xc7\xfd\xaa\x01\xd4\xda\xed\xcc\x89\x7f\xdb\xee\x53\x97\x64\x3f\x18\x30\x40\xb0\x07\xa6\xe5\x59\x59\xb6\x7a\xd5\x8a\x10\x67\xf3\xc3\xde\xea\xa4\x6b\xff\x9e\x59\x63\xc0\x16\xed\x11\x1a\x5c\x44\xaa\xea\x42\x88\xad\x20\x42\x98\xee\xf1\x46\xd4\xdf\x56\x42\x9f\x6b\x0e\x67\x73\x70\xad\x8e\x39\xe9\x3a\x69\xdb\xcd\xe7\x9e\x66\x38\x05\x05\xe6\xdf\xb5\x0f\x00\x08\x51\x3c\x75\xe8\x0e\x92\x50\xdc\x1f\xf7\xe8\x90\x08\x3c\x18\x54\xaa\x86\x76\x9a\xc1\x95\xbd\x44\xc6\xfb\xd6\x27\x55\xe5\xf6\x35\xa9\x5e\x7e\xad\x15\x97\xaf\x7a\xd6\xdb\x80\xc1\x1f\x82\xa6\x80\xe2\xe4\xea\x62\xdc\x20\xe0\x5c\x37\xfe\x8b\xbe\xb4\x7d\x5e\xcf\x98\xf9\x1d\xb0\x15\x72\x60\x54\xcb\x6d\x73\xa1\x41\x72\x8f\x73\xb1\xe9\xe2\x32\x8d\x50\xf0\x4b\x25\x2a\x6d\x89\xda\xc1\x07\xa6\x19\xcd\xfd\x7c\xb7\x6c\xf0\x67\xb1\xc1\xd2\x97\x13\xca\x50\x6e\xa8\x22\x69\xd9\xdc\x43\x48\x4f\x48\x07\x67\x88\x80\x9b\x7e\x41\x37\x72\x45\x0e\x98\x6c\x08\x86\x9c\x2c\x9b\x9d\x58\x59\x42\x03\xbd\x0e\x9d\xa3\xdd\x42\xbc\x10\x79\xb8\x71\xed\x76\x09\x18\x1a\xf6\x3c\x8e\x5c\xb7\xb5\x5b\xf0\xd3\xb3\x4a\xa5\x76\xfe\xc3\x6a\xd6\xb7\x85\xd4\x53\x78\xee\x03\x22\x07\xf8\x5d\x15\x17\x5a\x00\xab\x7e\x5a\xa2\xd6\x1e\x13\x5c\x81\xb9\x98\x28\xec\x11\xc5\xef\xff\xee\x6e\xa7\x66\x37\x52\xed\x04\x73\x3f\x7b\x90\xf0\x3b\x09\x61\xa7\x8e\xf4\x81\x16\x8a\x77\x69\xde\x7c\x1b\xc8\x42\xe4\x29\xc7\x4d\x86\xa9\x9f\xfb\x1e\x69\x10\x34\xf8\x06\x92\x42\xa5\xad\x7b\x8d\xb4\x3f\xbe\xf3\xcb\x39\xbe\x53\xf4\xe8\x43\x69\x56\x96\xf2\x72\x22\xad\x36\x92\x03\xa0\x6c\x90\xd8\x0d\x00\x25\x00\x81\x34\x61\x52\x5f\xe8\x6c\x28\xb8\xf3\xb0\x17\x41\xe0\x48\x44\xe0\x0c\x2c\x23\x41\x5e\xd1\xfc\x02\xfe\x02\xf5\xb8\xc3\x0c\x83\x4e\xa8\x11\x6e\x54\xf2\xf6\xfb\x7d\xc2\xf1\x4b\x03\x0c\x04\xe4\x76\xcb\x55\x1f\xb4\x67\x90\xa2\x02\xbe\x34\xfe\x2d\xc8\x80\xb4\xef\x27\xec\xf5\x36\xea\xd0\xf9\x69\x7b\x30\x91\x81\xa3\x99\x0f\xb4\x98\xc9\x39\x20\x7f\x11\x4f\x5f\x52\x7d\x61\x81\x6b\x31\xa8\x5f\xba\x8a\xe9\xca\xe2\x77\x3c\x71\x15\x37\xba\xea\xda\x31\xae\x9d\x21\xe1\x14\x31\x3b\xc1\x4c\x43\xd6\x1e\xfa\x6e\xa9\xac\x85\x0f\x2b\xd0\x1e\x61\x6d\x41\xd6\x29\x98\x0f\xbd\x24\x90\xae\x23\xb3\x9e\xe8\xe1\x39\xf9\x20\xa1\x0e\x86\x4b\x74\x10\x93\xbf\xb2\x6b\x37\x24\xcc\xef\x43\xf1\xde\x6b\x51\xdc\x29\x11\x53\xcb\x49\xdf\x14\x15\x4c\xfa\xd2\xad\x30\x59\xbe\xde\xe3\xe6\xea\xf2\xce\xcb\x05\xb3\x14\xa7\xc6\x10\x36\x09\xd6\x67\xfa\x9b\x70\x32\x3f\x47\xed\xef\x53\xe3\x7c\x47\x37\xda\x4e\x72\xbf\x47\xd8\x57\x21\x18\x51\xeb\x8a\x28\x08\x55\x3d\xa2\xcd\x02\x19\x89\xd4\xcb\x91\xe6\x5f\x8f\x34\x8b\x7e\xa4\xb6\x81\x23\xd7\xd4\x23\x4f\xed\x20\xf2\x3c\xd1\x3b\xfd\xaf\x2b\x76\xc4\xf8\x91\x5f\x02\x0a\x8a\x6b\x01\xd4\x5d\x31\x14\xc7\x0b\x91\x2c\x18\xbe\x62\xe8\x62\x1c\xc7\xc9\xdb\x26\xf5\xec\x8a\xcd\xbb\x3c\x35\x1e\x36\x9f\x1a\x65\x50\xe8\x06\x70\x58\x57\x5d\x81\x95\x57\x8d\xf6\xfb\xc4\xaf\x81\xca\x13\x21\xcf\xb9\x91\xb3\xbb\x4a\x1a\x98\x95\x04\xac\xe1\x34\x60\x5d\x7b\xc5\xe9\xdb\x62\x7e\xb0\xdc\x1c\x1e\x8a\x8d\x9a\x65\x70\xa2\x86\xfa\xf4\x09\xb3\xcc\xa0\x88\xe3\xda\x23\x6a\x3d\xc5\xb4\x6d\x15\x2d\xd5\x29\xf1\x16\x61\x6a\x7e\x72\xbc\x05\xe7\x08\xc8\x42\xea\x05\xa0\xb0\x1f\x99\xe7\x45\x20\x5f\x1f\xba\xb1\xf9\x79\xc5\xea\x23\x6b\xee\x76\xc4\xea\xa3\xac\xac\x68\x56\xdc\xa8\x11\xda\xd6\x74\x14\xa1\x1e\x50\x16\x22\xc1\xf2\x83\x50\xfc\x3a\xa1\x08\x3f\x53\x8f\x6e\xf7\x7d\xbb\xdd\x8b\x30\x72\x0d\xe8\x81\xfe\xfe\xa2\xd8\x68\xaf\x92\x2f\x99\xe7\x5e\x7c\x48\xcc\xcd\x3b\xba\x18\xef\x76\x52\xb1\xfe\xc0\x24\x74\xd4\x9c\x56\x54\xd5\x98\x8b\x23\x55\xfe\x51\x34\x48\xe4\xc0\x7e\x3c\x88\x54\x0b\xe4\x8a\xba\xc6\x8d\xbc\x19\x58\x11\x7a\xde\xd7\x1e\x46\xea\xf3\x80\xfd\x0c\x8e\x2a\x9f\x53\xcd\x92\x17\x02\xdd\x56\x84\x19\x92\x27\x87\x44\x38\x30\x69\xa3\x8f\x2b\xe7\x9e\x6f\x8e\x96\xf9\x9e\x96\x8a\x84\x90\xae\x9f\x73\x41\x43\x1d\xd2\x3f\x30\x64\x3d\x46\x9c\xd7\xa2\x44\x10\xe1\x81\xa5\xe5\x2b\x80\x76\x71\xc7\x00\x2f\x5a\xea\x48\xc3\xf9\x0b\x84\x1d\x87\xef\xea\xfa\xf6\xa0\xae\xed\x2a\x86\x40\x41\x8d\x73\x10\x6d\xd7\xd3\xca\xee\x53\x00\x11\x22\x87\xd4\x53\xe6\xf5\xf9\x7f\x7a\xce\xcf\x39\xb1\x0a\x7c\x88\x37\xda\xa3\x9e\xc3\x0d\xe6\xe1\x44\x12\xa7\xc4\xd7\x09\x7a\xde\xe8\xf8\xe1\x4a\xbb\x7a\x73\xae\xd3\x38\xb1\x7a\x80\xe7\xfc\x5c\x12\x8e\xbd\x72\x7d\x44\x10\xde\xcc\x02\x36\xef\x13\x09\xd0\x85\xd5\x80\x04\xe1\xc1\xcc\xb0\x53\x60\x20\x8d\xfa\x84\xab\xfa\xcf\x2c\x84\xcc\x86\xe8\x1e\x4d\x0b\xd1\x52\x1c\x3c\x50\x45\x0c\x6c\x02\x0e\xe6\x65\xd3\x99\x30\x25\x29\x61\xbd\x06\xfa\x1c\xe6\xa5\x36\x19\xf0\x6a\xd9\xa0\x9e\x6b\xe5\xc7\xbe\x01\xf0\x46\x81\x34\xa1\xe5\x9c\x91\xdb\x23\xae\x89\xf1\x94\xb6\xa0\xec\xcc\xa8\x1a\xca\x21\xc9\x5c\x01\x03\x6f\x1e\x7c\x68\xd9\x56\x8f\x71\xa5\xce\x39\xa0\xb4\x82\xec\x48\xb9\x63\x60\x67\xe1\x8c\x54\xae\x70\x2d\x56\x23\xd4\x16\xdb\x98\x45\x38\x9f\xac\x82\xd8\x23\xed\xb9\x38\x17\x24\xa9\x88\x40\xfe\x30\xeb\xc2\xc4\xdd\xfd\xad\xce\xf3\x5e\x7f\xc3\x79\x9e\x90\xaa\x29\x32\xb3\x45\xba\xbb\x07\xd7\xdc\xd7\xcc\xc7\x91\x07\x5b\xb0\x50\x83\xc5\xb2\xf1\xda\x4c\x6c\x99\xd9\xe5\xa3\x0e\x10\x2e\x97\x1f\x1b\x1b\x12\x60\x5e\xac\x1f\x5d\xc3\xcb\xf8\xaf\xfa\xd0\x32\x79\x30\x6e\xfc\x45\xbf\x16\xc5\xcf\x6c\x4d\x1b\x17\xf1\xef\x68\x09\x01\x5e\x1a\x2b\x15\x69\x84\x24\x8d\xb3\x67\x4f\x42\x12\xa4\x69\x84\x26\xd8\x1c\x80\x42\x79\x4e\x20\x49\x20\x74\xb7\xf3\x10\x9f\xff\x19\xac\x03\x2d\xdd\x5d\x5b\xbf\x31\x20\xdf\xfd\xa9\x4a\xa4\x11\xef\xbe\x6b\x5c\xda\x68\x97\x32\xee\x92\xeb\x05\x83\x9b\x58\xcf\xdd\x4d\xe3\xc9\x66\x30\x41\xf8\x90\xb3\xfc\xcc\x17\x86\xd9\xf4\x88\xcd\x4f\x6e\xc2\x9e\xd3\x46\x0f\x9c\x2d\x93\xfe\xb5\x62\xba\x8c\x40\xcd\x6a\xd8\x8e\x36\x62\x93\xf8\x58\x02\xcf\x3b\xa0\xa6\x0c\xcf\xd9\x63\xa1\xac\x8e\xe8\x93\xbb\xc0\x19\x19\xa8\x6d\xee\x45\x26\xc1\x62\x2e\x61\x76\x88\x08\xdf\xed\x98\x3f\x1e\x44\x8e\xb4\x94\x3b\x8e\x9b\x5f\x49\x34\x88\x9a\x18\xeb\xce\x7d\xac\x3d\x84\xad\x41\x19\xbe\x99\x15\x4f\xb3\x61\x60\x77\x69\xea\x06\x97\x89\x2f\x68\x99\xdd\xec\x76\xd1\xbf\x75\x66\x07\xa0\x32\xe2\x0e\xcc\xe2\x69\xf2\x93\x95\x18\x21\x7c\x2d\xec\x4f\x94\x06\x12\xcd\x38\xee\x37\x71\xa6\x27\xa7\x4d\x48\x98\xf8\xe9\x04\x5c\x24\x82\x20\x33\x88\x18\x1e\x5b\xb1\xe6\xd4\x0a\xa9\x60\x14\x82\x72\x0d\x0a\x66\xc2\xb0\xd7\x9b\x8d\xfd\xc5\xb5\x48\x84\x11\x40\xd6\xa8\x77\xe8\xc4\x08\x2c\x58\x9b\xb0\x5a\x85\x4d\xc1\xbd\x14\xcc\xd3\xd4\x7d\xac\xf7\x40\x33\xbd\x3d\x3d\xf5\xad\x2a\x82\xe9\xda\x00\x81\xdd\xc6\xf1\xd6\x49\x63\x7f\x50\x9d\x55\xd3\x12\x9b\x14\x58\x90\x5b\x93\x61\x3a\x33\x99\xcd\x71\xb3\xc0\x52\x16\x4a\x26\x4d\xab\xf5\x66\x7e\xce\x82\x6e\x63\x0d\x5d\x38\x47\x26\xaa\x5e\xb1\xa5\x4c\x90\xf9\x70\x36\x6e\xe4\xc2\x61\x82\xbd\x9f\x33\x18\x54\x78\x8b\x7c\x30\x60\xe1\x1a\xc7\xc1\xcc\x22\x2c\x20\x36\x59\xd3\xf1\xcc\x27\x33\x38\x98\xd0\xac\x45\x5d\xec\xb4\xc3\xf5\x6e\xa7\x11\x89\xcc\x04\xd5\x3e\xde\x3c\x1e\xf2\x87\x80\xa2\x5c\x0b\xf0\xfc\x10\xc7\x95\x69\x99\xfa\x45\x7f\xdf\x66\x65\x9d\x50\x70\xf8\x68\x1d\x99\xb9\x0c\x5e\x1c\xac\xd4\xb6\x6f\x15\xc0\x55\x30\xdc\x8f\x93\xa3\x58\x35\x91\x0a\x61\x4f\x75\x4b\x5f\xe1\x68\xce\x15\x73\xdf\x7d\x5b\xa5\x4e\xb7\xde\x05\x68\x1c\x27\x06\x89\xa2\x5d\x1c\xb9\xdd\x23\x34\x13\x73\x12\xa4\x57\xbc\x9a\x08\x3c\xbe\xbd\xb1\xec\x50\x9f\x76\xb3\x40\xf8\x2e\x6f\x75\xe6\xc2\xf7\x00\xee\x7c\x2a\xd5\x51\xc3\x47\xde\x45\x48\xcb\x1b\x8c\xc7\xb2\xaa\xf1\x58\x26\xa7\xf6\x4a\x65\x2a\xc1\xda\x3a\xf5\x10\x70\x5f\xb1\x0e\xb3\x88\x03\xbd\x39\xb7\xd3\x0a\x27\x61\x14\x96\xae\x1a\xec\xc9\x6a\xfa\x13\x0d\x5c\xe6\xd2\xcd\x73\xb1\xb9\xd1\xb6\x05\x02\xa5\x02\x35\x32\x47\xbd\x5f\x6b\xe5\x2c\xb0\xac\x32\x79\xb8\x15\x55\xef\xdb\x9e\x5d\x33\xdf\xa5\xab\x86\x9c\xc2\x39\xc9\x66\x5b\x73\x38\xd3\xdf\xc3\x2e\x95\x1b\xaa\x20\xd2\x7c\x24\x85\xde\xa0\xb4\xe1\xeb\x1e\xe1\x86\x71\x5c\xaa\xd3\x47\x8e\x92\x92\x2c\x2d\xf4\xf1\x3f\xf4\xe8\x26\x97\xc5\x00\x7d\xf5\x00\xe9\x33\xad\xc4\x5a\x3d\x38\x29\x67\x93\x39\x42\x4f\x87\x93\x38\x4e\xae\x45\x52\xa3\xd9\x72\x4e\xf2\xd9\x72\x8e\xb5\xf9\xe3\x91\xfa\xad\xce\x79\xce\x31\x8f\xeb\xe5\x6f\xbd\x99\x5b\x19\x9e\x6d\xaa\xff\x0d\x08\x4f\xe5\x85\x15\x23\x98\xcb\x63\xb0\x71\xcf\x57\xc4\x3f\x27\xfe\xc1\xee\x02\x05\xbe\xc7\xcb\x98\x36\x33\x71\x63\x75\x2b\x46\xb9\xd8\x30\xb8\xf4\x4b\x74\x22\x22\xdc\x58\x25\x08\x99\x68\xd2\x1f\x37\x03\xa0\x05\x22\xa2\xa5\x0b\x56\x0f\x06\xe8\x5b\xe6\xb2\x9e\xd5\x56\x81\xd2\xd4\x11\xb7\x22\x41\x4b\xca\xa0\x60\xc3\x44\x50\xd9\xdb\xac\x2d\x69\x3e\xf4\x5e\xe2\xe2\x8c\x17\x93\xea\x62\xeb\x79\xce\xd3\xbf\xc9\x8a\x26\x5e\xe8\x80\xe3\xad\xc5\x35\x40\x78\xab\xb6\x00\x48\x60\x79\x08\x0e\x61\x2a\xd2\x99\xa9\xcb\x0b\xe2\xe2\xd1\x6d\x46\xfa\x13\x7b\x45\x96\xed\x76\x89\xf3\x09\x35\xd6\xde\xe2\x99\x1a\x17\x8f\x83\xf8\x25\x3c\x39\x79\x8c\x0b\x27\x8e\x75\x81\x73\xa4\xef\x68\x2b\xe1\xc3\x0a\x0d\x27\xbd\x3f\xec\x36\x6c\x1c\xbf\xe0\x3f\x1a\x25\x0d\x13\xb4\x67\x22\xb9\x31\x08\x4b\xdf\x30\xf2\x76\x44\xdf\x6f\x2a\xaa\x19\x80\x65\xb6\x2d\x25\x69\x99\xd5\x06\x91\xd3\x76\x40\xa2\xf6\x6d\x3d\x49\xc1\xb8\x80\xf4\x27\x7b\xfc\xbd\xce\xb7\x96\x62\xf3\x63\x25\x36\xd9\x95\xde\x42\xc2\x8c\x5b\xb1\xd3\x83\x10\xc8\x3a\xcf\x78\x4e\xcb\x6f\xb6\x8b\x45\x09\x32\xe4\xe6\x96\xe6\xaf\x3e\xfe\x83\xbd\x11\x2f\x74\xad\x7e\xd4\x75\xa4\xc5\xf4\x30\x28\x1d\x13\x12\x54\x19\x14\x06\x7f\x6f\xaa\x1c\xd4\xf3\x1b\x55\x0a\xfe\x1e\x54\xf7\x3d\x87\x08\x2c\x70\x9b\x24\xb3\xea\x8a\x82\x68\xa6\xae\x72\x83\x1e\xe4\x39\x3a\x08\x4e\x05\x1f\x57\x2c\x5f\x1d\x9e\x0a\x26\x31\x1d\x2d\xb6\x52\x0a\x3e\x95\x64\x92\x1e\xfb\xaf\x27\xe9\x43\xf7\x0a\x07\x88\x63\x84\xf0\x35\x30\x78\xb2\x2a\xff\x4c\x6f\xe2\x78\x62\xcf\x16\x27\xea\x28\xa1\xca\xfa\x4e\x35\x28\xe8\x74\x4f\xbf\x39\x2b\x0a\xe0\xf9\x5e\xb1\x5a\xaa\x0d\x1d\x1d\x06\xc1\x89\xbf\xef\xf9\x7a\xb5\x8e\xda\x21\x15\x0a\xde\x92\x48\xf0\x68\x00\xc8\xe0\x9e\xa9\x1e\x1d\xbd\xd7\x02\x6b\x70\x33\xee\xbd\xa9\xad\xee\x3c\xe1\x33\x39\xdf\xed\xe0\x9f\x27\x28\x80\x2b\xd9\xdf\xd4\x9e\xd1\xf4\xf6\x9f\x0f\x70\x90\x5c\x56\xaa\x13\xdc\xcb\x4c\xba\x5b\x8b\x6a\x0a\x0e\xc9\x0d\x53\x34\x9e\x5a\x40\x2a\x94\xfe\xc6\x52\xbe\xdb\xfd\xc6\xa0\x93\xfe\x02\x9d\xb4\x5c\x76\xf7\x92\xbe\xee\x6c\x77\x54\x47\x68\x47\x5f\x69\x5f\x60\xb6\xaf\xbc\xb7\x56\x5f\x1d\x35\x5b\xa5\x69\x66\x5f\x53\x85\x73\xe6\x03\x2c\x81\xd3\x1b\x50\xdb\x25\x15\xba\x75\x16\x92\x0c\x4f\xdc\x05\x3c\xfe\x93\x6a\x4c\xcd\xae\x78\x56\x76\x3a\x8f\xb3\xf9\x6b\xf7\x87\x56\xec\xea\xdd\xc6\x3c\xab\xaa\xec\xc6\xdb\x77\xa1\xcb\xf4\xa6\xeb\xee\x4e\xf1\x31\xea\x72\xc9\x53\xcd\xd8\xdc\xdc\xb7\x6a\x08\x30\xb4\xc7\x7f\x63\x06\x69\xc1\x8e\xe3\xdf\x59\x57\x75\x26\x61\x75\xf4\x18\x63\xf6\xa5\xb5\xe9\xfd\x21\xa7\x9c\xfc\x21\x47\x85\x3a\xbf\xd0\xe2\x79\x56\x96\x8b\x2c\xff\x50\xa7\x7f\x63\x53\x4e\xfe\xc6\xd2\x44\x3d\xd5\xb1\xb9\xa6\x52\x31\xa7\x62\x2b\x13\x2a\xf0\xd8\xb3\xd3\xd7\x2a\xca\x95\xef\x0b\xc7\xdc\x6f\x65\x49\x35\x13\x73\x14\xa2\xaf\x74\xdd\x3a\x53\xbf\xf9\x2c\xa0\xe9\x54\x38\xa1\xf9\xdf\x58\xcf\x75\xcb\xdd\xee\x07\xe9\x4c\xce\x7d\x1c\x77\x29\x42\x1d\x97\x03\x13\x43\xbd\xf6\x6f\x01\xea\x5e\xe2\x90\x42\x1f\xa8\x63\xb6\x09\xa2\x22\xab\x7b\x84\x81\xe1\xae\x14\xb3\x0c\xd6\x84\xe0\x51\xea\xaf\x2c\x91\xc0\x3f\xe7\xa2\xa0\x6b\x80\xe7\xfd\x01\x7c\xb4\x7b\xe8\xca\xc2\xa7\x6e\xdd\x0b\x73\x94\x83\xb9\xcb\xb3\x5c\xb2\x6b\x26\x6f\xb4\x57\x3d\xef\x72\xd6\xa8\x0b\x85\xa9\xbe\xf7\x69\xc7\x7d\x09\x14\xf5\xe8\x32\x33\x34\xae\x87\x2b\x50\xa7\x47\xea\x48\x00\x23\x0a\x6f\x4d\xfd\xb9\x08\xce\xb2\x7a\x56\x22\x47\x39\x9a\x84\x4c\xd8\x0d\xd1\xce\xc8\x16\x75\x45\xb7\xdf\x31\xa7\xd4\x84\xf6\x38\x48\xda\xa2\x31\xe8\xf6\x2f\x7e\x5a\xed\x7f\x40\x90\x93\x31\xce\x04\x79\x3b\xfa\x31\xab\x6b\x72\x2b\xc5\x3b\xe3\xce\xa0\x2d\xdc\xf0\xe0\x92\x21\x6d\xb4\xdf\xe3\x5a\x90\x5b\x2d\xfc\x4e\xd5\x1e\xbc\x15\xe4\xd6\x5a\xfe\xfd\xdb\x5a\x6c\x6b\x1a\xed\x71\xe9\x05\x0e\x14\x19\x8b\xbc\x4d\x2d\x17\x76\x86\x30\x0d\xfe\xb6\xcf\x85\xbf\xfe\x5a\x1e\x87\xd0\x2d\xa8\x32\xd9\x15\x65\x3e\x6c\x8c\x67\xbd\xd5\x26\x31\x35\x68\xd6\x4b\xd5\xba\x5c\x6c\xb9\x7c\x2e\xca\xed\xba\xbd\x3d\x69\x6f\x75\x6e\x57\x54\x23\xa8\x4f\x26\x34\xab\x14\x53\x3d\xfb\xc7\x65\x7d\xb9\x1d\x8f\xb3\xf1\x1c\x58\x6a\x88\xb4\x38\x41\xcd\x62\x06\x90\xee\x8c\xb0\xdd\x6e\x6c\x9d\x92\xd4\x84\x6a\x4d\xc2\xb7\xcb\x24\xba\x94\x91\x51\xd2\xaf\x2f\xc6\xbb\x5d\xfd\xb4\x71\xf5\x9c\x0d\x12\x39\x14\xa8\x97\x0d\x48\x3d\x14\x38\x1b\x90\x6a\x98\x7d\x5d\x61\x41\xea\xc1\x64\xbf\xc7\x2b\xd5\x80\x25\xe3\x45\x67\xfd\xdb\x27\x1f\x57\xbc\x68\x17\xcf\x11\xb8\xc6\x16\x70\xab\x42\x03\x77\x26\x19\x11\x43\xad\x60\x42\x48\xe3\x09\x9e\x0d\x32\xaf\x9a\x7c\xe0\x8e\x9f\x19\x96\x43\xed\x23\x8f\x0d\xd4\x97\x98\x13\x31\x98\x60\xf5\x56\x0d\xd9\xd7\x15\x7a\x1a\x38\xb2\xc6\x1b\x41\x66\x51\xe4\x6d\xaf\x6b\xe1\xee\xbc\x36\xc2\x81\x05\xd0\x73\xb4\x31\x40\x52\xd7\x22\xd9\x08\x34\x00\xa1\x9e\xc9\x68\x23\x66\xd4\x13\x75\xc0\xe5\x98\xe3\x87\x66\x8d\x31\xd3\x1c\x66\xf6\x8d\x68\xf3\x7e\xa0\xa8\x9f\xf8\x2c\xd5\x42\x74\x09\xf0\x83\x53\x2c\xa8\xe6\x56\x73\xcf\x31\xb7\xbd\x5e\x1d\x7a\x97\x8d\x57\x07\x19\xcd\xe6\x6d\xc4\x1d\x3e\x18\xa0\x6a\xc6\xe7\x44\x2b\xf6\x62\xde\xe5\x80\xf1\xbd\x5a\x0f\x9e\x6c\x4d\x78\xbb\x97\x4d\xfe\x76\xf1\x4f\x9a\x5b\xdc\xc8\x69\x45\x82\xf7\x84\xa2\x34\x79\xef\xad\x21\x42\x71\x05\x02\xed\xf7\x02\x8c\xe5\x5e\x0a\x70\xa7\xe2\x5f\x40\xbe\x14\x07\x33\x09\x24\x5b\x70\x44\xbf\xdd\x23\x4c\x51\xff\x40\x64\xca\x91\x31\x70\xac\xb4\x96\xe0\x41\x24\x10\x3d\x12\xf8\x1e\xf7\x18\xd4\x77\x1e\x09\xff\xa2\x5d\x77\xe2\x72\xb9\x5b\xec\xaa\x6f\x8a\xd1\x7e\xbf\x99\xde\x31\xfc\x4c\x70\x30\x7c\x25\x63\xec\x05\xbd\xe4\x05\xa1\xa3\x6b\xc5\x98\x5b\xf4\xa1\x54\xad\x92\x56\x26\xb2\xba\xf1\xe7\x51\x0e\x87\x6e\x89\x6e\xf7\x46\xd3\xe6\xad\x20\x0f\x66\x8a\x54\x14\xcb\xcb\xed\xf8\xd1\x93\x53\xf5\x3c\x1b\x0f\xd5\xbf\xe5\xc3\xcb\xed\xf8\xf1\x18\x5e\x1e\x2f\x97\x97\xdb\x93\xf1\x43\xf5\x72\x32\x3e\x83\x97\x4c\xbf\x40\xcc\x43\x48\xf6\xb0\x58\x3c\xba\xdc\x3e\xa4\xf0\x72\xb6\xcc\xf3\xcb\x6d\x96\xc3\x4b\x71\x9a\x2d\xe7\x0f\xf0\x27\x45\x16\x58\xfd\xab\xa8\x8a\xe7\x2b\xdf\xb5\x96\x5b\x16\x0f\x2e\x3f\x3a\x80\xfe\xdd\x8e\x3e\x8d\xfe\xfb\x7f\x89\xe0\x8c\x2e\xc5\x2f\x9b\x0d\xad\x9e\x67\x35\x4d\x90\xd6\xea\x79\x25\x3e\xda\x80\xdd\xee\xad\x70\xb8\xfe\xde\x72\x79\x26\x5a\x57\xb0\xfd\x7e\x22\x47\xb5\xd8\x56\xb9\x4f\x69\x2e\x3f\x46\xfa\x96\xe1\x93\x1a\x63\xd8\xca\x4d\x66\x29\x84\x78\xb2\x2a\x11\x88\x6a\xd4\xa4\x03\xb8\xa1\x83\xc9\x26\x51\x1c\x2b\x06\xa5\x51\xeb\x76\x7a\xbd\xea\xcb\x0f\x02\xbf\x36\x7d\x7f\xa2\xbb\xf8\xe4\xb1\x1a\x82\x87\x4f\x4e\x86\xf0\xef\x0c\x46\x62\x02\x23\xb1\x28\xe0\x09\x43\x94\x4f\xe0\x79\x0c\xcf\x87\xf0\x7c\x04\x4f\x35\x74\x8f\x27\x7a\xb4\x26\x99\x7a\x3e\x5c\xc0\xcb\x23\xaa\x9e\xa7\x63\xf5\x2c\x1e\x43\x50\x91\xc3\x93\xc2\x0b\x85\x71\xa6\xf0\x3d\x7d\x02\xcf\x4c\x47\xa8\x62\x4f\x27\xaa\xc0\xd3\x13\xc8\xf8\xf4\xa1\xca\xf8\x34\x83\x5c\x4e\x17\x2a\xcb\x53\x0a\xa5\x9c\x2e\x4f\x2e\xb7\xe3\x27\x13\x88\x79\x32\x39\x83\x27\xc4\x3c\x39\x86\x98\xe3\x47\xfa\xe5\x14\x9e\x67\xfa\x45\x15\x70\xa6\x9b\x7f\x36\x56\x4d\x3a\x3b\x51\x35\x3b\x7b\x08\xed\x3e\x7b\xf8\x04\x9e\x90\xea\x91\x0e\x7a\xa4\x1a\x7b\xf6\x18\xd2\x3e\x56\x19\x9f\x3d\x51\xf5\x3b\x5b\xc0\x77\x0b\xd5\xd4\xb3\x5c\x27\x85\xde\x39\xcb\xe1\xeb\x42\x15\x7b\x46\xe1\x33\xaa\x3e\xcb\xc6\x13\x78\xaa\x90\x0c\x0a\xcd\x1e\x42\xc8\x43\x08\x79\x78\x0a\xcf\x27\xf0\x84\x66\x64\x50\x8d\xec\x11\x24\x82\xce\xcc\x4e\xf5\x6f\x55\xa3\x0c\x6a\x91\x3d\x81\x8f\xa1\x2e\x99\xae\x45\x06\xa3\x93\xc1\xe8\x64\x39\xe4\x07\x35\xca\xa0\x2e\x19\xd4\x65\x01\x75\x59\x40\x2d\x16\x27\x14\x9e\x6a\xac\x17\xba\x1b\x16\x0f\x1f\xc2\x53\x7d\xb6\x78\xf4\x18\x9e\x2a\xbb\x05\xf4\xc2\x02\x7a\x61\x01\x25\x2f\xa0\xfd\x8b\x7c\x0c\x4f\x48\x0f\x0d\xcf\x4f\x60\xa4\xf3\x87\x63\x78\x3e\xd6\x2f\x4f\xe0\x99\xe9\x17\x95\x38\x87\xce\xcd\xa1\x88\x1c\x32\xcf\x21\xf3\x1c\x1a\x94\xc3\xfc\xcb\x61\xe6\xe5\x39\xa4\xc9\x21\x1c\x0a\xca\x0b\xf8\xb6\x80\x70\x68\x5b\x0e\x6d\x2b\xa0\x3d\x85\x6e\x49\x01\x2d\x29\xa0\xb0\x02\xda\x50\x40\x31\x05\x14\x53\xe4\x19\x3c\x55\x31\x45\x71\x0c\x1f\x14\xf0\x01\xe4\x5a\x00\x89\xa2\x27\x13\x78\x3e\x1c\xc2\x3f\xf5\x05\x7d\x78\x0a\x2f\x0f\x55\x49\x74\x01\xf1\x0b\x1d\xbf\x38\x83\xe7\x02\x9e\xaa\xb2\x34\x7f\x02\x11\x50\xe7\xe5\xe4\x09\x3c\x55\xa2\xe5\xc9\x23\x78\x9e\xc2\x13\x42\x4e\xa1\xce\xcb\x53\x95\xed\xf2\x09\x4c\xd2\xe5\x93\x87\xf0\x7c\x0c\x4f\x48\xab\x89\xe5\xf2\x4c\xbf\xc0\xbc\x5e\x42\x51\x4b\xd5\x47\x93\xf1\x71\x31\x54\xff\x4e\xc6\xf0\x3c\xd6\x2f\xa7\xf0\x3c\x83\x67\x06\xcf\x02\x9e\x54\x3d\x1f\x3d\x81\x27\xc4\x3e\xa2\xf0\xc1\x63\xf8\x1a\x2a\x34\x19\x9f\x3e\x54\x4f\x35\xe0\x93\xf1\x93\x47\xf0\x84\x92\x9e\x40\x1e\x67\xea\x79\xf2\x68\x79\xb9\x9d\x9c\x4e\xa0\xb8\xd3\x89\xfa\xe0\x54\x97\x7d\x7a\x02\x2f\x8f\x8e\xe1\x79\xa2\x9e\xa7\xf0\xfb\x14\x7e\x2f\x4e\x21\x91\x22\x38\x93\x53\x68\xc0\x69\x7e\x06\x41\x05\xc4\x17\x2a\xe2\xc9\x58\xad\x88\xc9\x93\x31\xbc\x64\xaa\xa2\x67\xc7\xaa\x1b\x26\x67\xc7\xc7\xf0\x3c\x85\xa7\x6a\xc7\xd9\x09\x84\x9c\x40\x26\x67\x27\x8b\xcb\xed\x24\x9b\x9c\xc2\x53\x45\x67\x6a\xb2\x4d\xb2\x47\x6a\x54\x26\x99\xa2\x54\x93\x0c\x1a\x9b\xa9\x89\x31\xc9\x1e\x3f\x82\x88\xc7\xb9\x7a\x9e\x9e\xc0\xcb\xa9\x7e\x51\x2d\x5c\x00\xed\x98\x2c\xc6\xaa\x72\x0b\x68\xda\xe2\xe4\x31\x04\x41\xbf\xc2\x9a\x9a\x2c\xd4\x9a\x9e\x2c\x1e\x43\xad\x17\xd0\xd0\xc5\x93\x31\x3c\x27\xea\x99\x41\xcf\x2c\xb2\x47\xf0\x7c\x02\x4f\xd5\xa8\xfc\x38\x57\x11\xf9\xc9\x09\x3c\x1f\xc3\x53\xd5\x3d\x2f\xa0\xd8\xbc\x38\x86\xe7\x43\x78\xa1\x63\x78\x1e\xeb\x97\x27\xf0\x54\x1d\x54\xe4\x90\xb8\xa0\xea\xfb\x62\x09\xd3\xa1\x50\x9b\xe6\xf1\x78\x9c\xc3\xb3\x50\x4f\xc8\xf2\x78\xbc\x1c\x5f\x6e\x8f\x73\xba\x54\x2f\xf9\x72\x72\xb9\x3d\x2e\x28\xc4\x14\x7a\x07\x3e\xce\x60\xd3\x3d\x86\x97\xb3\x33\x78\x66\x97\xdb\xec\xf1\x63\xf5\x49\xf6\x58\x0d\x66\xf6\x58\x75\x51\xf6\xf8\xb4\x50\x4f\x95\x63\xf6\x58\x65\x95\x3d\x51\xe4\x2e\x7b\x32\x7e\x0c\xcf\x85\x7a\x1e\x3f\x82\x27\x84\x28\x82\x99\x3d\x81\xe2\xb2\x27\xf0\xc1\xd9\xb1\xea\xcc\xec\x4c\x11\xea\xec\x0c\xd6\x59\x76\xf6\x08\x62\x60\x41\x64\x67\x6a\x1a\x66\x67\x8b\x13\x78\xea\xc4\x6a\xd1\x65\x40\x90\xb3\x0c\x08\x7d\x96\x1d\x53\xf5\x54\x4b\x37\xcb\xd4\x84\xc8\x32\xb5\xdc\xb2\x4c\xf5\x69\x96\x3d\x3c\x81\x27\x7c\xa0\xf6\x94\x2c\x5b\x1c\xc3\x67\x8b\x87\xf0\x3c\x85\xe7\x13\x78\x42\x46\x8a\x12\x65\x99\xda\x09\xb3\x05\x7d\x04\xcf\x27\xf0\x2c\x2e\xb7\x85\x61\x38\x96\xaa\xbf\x96\x8b\x09\xbd\xdc\x2e\x35\x43\xb2\xa4\x63\x15\x44\x8f\xf5\x8b\x6a\xf3\x72\x79\x46\xe1\xb9\x9c\x3f\x68\x98\x86\x1f\x03\x36\x1d\x84\xbb\xea\x20\x09\x02\xde\xa7\xe4\xf4\xf1\x93\x38\x7e\xed\xb8\x0d\x4f\x7c\x2f\xda\xb2\xb2\x3b\x00\xd3\x35\x46\x55\x05\xee\x7d\x1b\xb7\x23\x15\xd8\x09\x25\xc6\x2d\xd4\x28\xaf\xeb\x9f\xe9\x27\x49\x38\x3a\x84\x4a\x92\x88\xdd\x07\xcc\xee\xbc\x12\x48\xe4\xdd\xb7\xa3\xf0\x16\x47\x06\x1e\x8d\x83\xec\x24\xd8\x33\x1f\x8a\x54\x7e\x0a\x79\x1f\xab\x71\xa3\x8a\x72\x72\x04\xf9\x74\x7c\x3e\x1c\x4a\x77\x01\xa8\x73\x34\xb2\x3f\x78\x41\x1d\x8e\xba\x9f\x87\x6c\x1a\x14\x14\x56\x09\xed\x3f\x88\x76\x7f\x02\x64\xce\xf4\x2e\xa3\xb4\xae\xc4\x8d\x1a\x12\x40\xd5\xbf\xe4\x45\xc2\x77\x3b\xaa\x61\xf1\x6a\x2a\x81\xd1\xd6\x5e\xc2\xd9\xfe\x0e\x30\x9e\xc0\x87\xae\xd7\xe3\xb6\x00\xc5\x72\xf3\x91\x6a\xfb\xcf\xc2\x8c\xb8\x8a\x4e\x7c\xd7\xb3\x96\x13\xff\x4e\x34\x57\xf3\xce\x28\xbd\x41\x17\xec\x8f\xc1\xcd\x91\xb8\xa6\xaa\xa6\x91\x9a\x88\x59\x2e\x01\x4e\xdf\x46\xe8\x1a\xfb\x51\x12\x61\xae\x6f\x11\x7e\xd0\xb7\x08\x5c\x66\x8c\xd7\xad\x4b\x09\xb6\x4c\x4e\x7c\xbb\x2c\xb8\x24\x90\x7e\x15\x0d\x06\xbf\xfa\xb6\xf1\xce\x69\x43\x12\x89\x7a\x85\x00\xf4\xdf\x49\x47\x36\x2b\x51\x4b\x84\x25\x21\xb4\x81\xdd\xd4\x0a\x55\xad\x42\x3c\x56\xfd\x85\x08\x0c\xc0\x5d\x37\x67\xb9\x64\xd7\x76\xed\x9c\x83\xdd\x4f\x25\x84\xb4\xff\x5b\xf1\x88\x92\xae\xf0\x8e\x39\xf7\xc6\x5f\xe5\x81\xa7\xd3\x7f\xec\x2e\x2f\x6b\x14\x0d\xa8\x71\x73\xaa\xde\x2e\x2f\xeb\x7f\x8b\xd0\x1e\x3c\x78\x4c\x26\x71\x9c\xbc\x08\x7c\x92\xa9\x41\x37\x59\x75\x57\xfc\x70\xc0\x83\x79\x64\xcf\x63\xaf\xd4\x90\x55\x6b\xed\x2d\xa8\xeb\x76\x3a\x70\x1d\x44\xde\x88\x44\x22\xed\x6a\xc7\xf8\x18\x6e\xb4\xc1\xf4\x4d\x3e\x37\x56\xa4\xdc\xf7\x06\x4b\x7d\xb2\xe3\xe4\xd9\xdc\x59\x93\xb2\x29\x9f\x4d\xe6\x03\x96\x46\xe0\x93\xfb\x5b\x55\xa9\xac\x28\xbe\xa8\x56\x3d\x5d\x27\xa0\x8e\x15\xd2\xb7\x92\x36\x6e\x40\x92\xca\x59\xa5\x4a\x7f\xf0\xff\x38\xb8\x8d\xa0\x9e\x8e\x74\x17\x9c\x48\x35\xe3\xf3\x38\xee\xbf\x11\x60\xf4\x64\xdd\xd0\xc2\x65\x97\x75\x40\xdb\x7d\x8c\xff\x45\x18\xcd\x80\x70\x21\x5f\x51\x69\x86\xaa\xfe\xe6\xe6\xb9\xf3\x6a\xd0\x50\xbb\x2f\x49\x9e\x78\x37\x8e\x11\xc2\xf7\x5b\x57\x8c\x9a\xb4\x3d\x1e\xc7\x34\xe1\xe6\x86\xf3\x1b\x41\x8c\x15\xf0\xf7\x02\xff\x55\xe0\xdf\x45\xcb\x51\xbb\xf6\x23\x13\x1a\x0c\x53\x62\x7d\x61\xdb\x46\x47\x45\x95\x5d\x5d\x65\x8b\x92\x46\xea\x94\xba\xdb\x41\xc0\x8b\x4a\x6c\xe0\x7d\x9f\x78\xba\xdc\xbf\x8a\x40\x7b\xf4\x7b\x61\x2f\x3a\x3c\xd7\x40\xff\xe3\xbf\xfc\x2f\x11\xea\x01\xa9\xf6\x3c\xce\x48\x7c\xd7\xee\x13\x7d\x8a\xd0\x1c\x21\x3c\xee\x13\x9f\xfe\x07\x6e\xb7\xe3\x38\xf9\x5e\x10\xe9\xfb\x0b\xbf\x20\x13\x50\xdc\xf2\x52\x3d\x3d\x8e\xe3\xbe\x6e\xf5\x13\x84\xf6\x7a\x82\x7c\x2f\xa6\xed\xca\xa5\x5e\xc0\x7f\xff\x6f\xc6\xd5\x5e\x64\xcc\x8d\xd3\x23\xc6\x01\x76\x7d\x51\x8a\xfc\xc3\xf9\x91\xf1\x3e\x3e\xd9\x7c\x3a\x3f\x32\x0e\xcd\x8d\x17\xbe\xe1\x64\xf3\x29\xf2\xbc\x0a\xdf\xe5\x75\x29\x0a\xae\xa4\xbe\x12\x81\xa3\xf6\xbf\x5a\x83\xee\xa3\xbf\x0a\x63\xd4\x04\x5d\x77\x67\x6f\x3d\xfb\x3f\xff\x8f\x67\x11\x52\x93\xe6\x83\x00\x17\x10\x13\xa4\x66\xd9\x37\x62\x0b\x88\x1a\xcf\xc1\x23\xfa\x4f\x70\x8f\xa3\x9d\x41\xef\x76\x6a\x41\x2c\x25\x21\xd5\xa8\xf2\x7c\xc2\x9b\x09\xc1\x75\x3e\x13\x7c\x7c\x77\x3e\xae\x86\x84\xeb\x2c\x86\x26\xab\x8b\x13\x2d\x1d\x15\xf8\x37\xb5\xf8\x1b\x5b\x0c\x72\xd2\x27\xd1\x25\xbf\xe4\x0b\x6b\xc4\xf0\xe0\x92\x3f\xb0\x82\x80\xa9\x7f\xa1\x13\xea\xb3\xc2\xed\xa2\xbb\x59\x94\x17\x84\x9f\x37\xca\x7f\xcd\x4d\x0c\x57\x1b\x18\xdc\xf9\x32\x00\x01\x0a\xef\x7c\x85\x53\xbf\x91\xc6\x55\x15\xb5\xba\x77\x6c\x38\x41\x53\x36\x9c\xa4\x0c\x5c\x3e\x78\x59\x56\x91\xca\xb0\x4f\xb2\x69\x62\x64\x1b\xc2\x83\x8f\x45\x58\x0e\x48\x36\x98\xa0\xd4\xc5\xaa\x9d\x8b\x0d\x26\x9e\x32\x70\x27\xbe\x86\x6b\x7f\x75\xc9\xa7\x3b\xd5\x0b\x7b\xfc\x67\x41\x3e\x32\x5e\x88\x8f\x23\x1f\x3a\x69\xda\xbe\x92\x6b\xb2\x08\xae\xf8\xfa\x24\xbc\xe1\x3b\xd8\x34\xfa\x93\x7d\x58\x17\x95\x99\x53\xa4\xfd\xc8\x69\x65\xdd\xb5\x35\xf9\x84\xfc\x8f\x97\xa5\x35\x34\x4f\xfa\x12\x74\xbf\x60\x57\xb6\x3c\x2a\xea\x13\x8a\xe2\x78\xdc\x27\x72\x94\x8b\xb5\x8a\x7c\xc9\x8b\x1f\x05\xe3\xb2\x4e\x22\xa8\xed\xcf\xe2\x25\x2f\x22\x90\xe1\xfc\x45\x90\x48\xf0\x5c\x6c\x6e\x22\xc6\x93\xef\x44\x43\x8b\xd4\x0e\xf0\x9d\x68\x2d\x21\x93\x14\x47\xba\x06\xe7\x11\xc2\x91\x6d\x55\xc3\xe5\x7e\x27\x46\x3a\x21\xc2\x7f\x12\x8d\x9b\xf8\xbf\x09\xfc\x77\x35\x27\x3f\xd0\x1b\x45\x72\x6b\x72\x7b\x92\x46\x2f\x39\xf0\x3e\x4f\xd2\xe8\x9b\x2c\xff\x50\x6f\xb2\x9c\x46\xf8\x2c\x8d\x7e\xce\x16\x11\x9e\x34\x09\x26\x8f\xd3\xe8\xdd\x8a\x2d\x65\x84\x27\xa7\x69\xf4\x5c\x56\x65\x84\x27\x4f\xd2\xe8\x59\xa9\x82\xce\xd2\xe8\xc7\x6c\x5b\xd3\x08\x1f\x8f\xd3\xe8\x79\xb6\xa9\x5f\x89\xfc\x43\x84\x8f\x4f\xd3\xe8\x65\x9d\x47\xf8\xe4\x38\x8d\xde\xe9\xdc\x4f\x4e\x54\xe2\x2b\xfa\xcb\x26\xc2\x27\x0f\xf5\xef\x17\xe2\x23\x8f\xf0\xc9\x23\x55\x5e\x11\xe1\x93\xc7\x69\xf4\xbd\x58\xab\xc4\xa7\x69\xf4\x8a\xaa\x62\x4f\x9e\xa4\x11\x7c\x72\x96\x46\x3f\xa9\xa5\x16\xe1\x87\xe3\x34\xd2\x5f\x3e\x54\xf9\x54\x8c\xcb\x77\x79\xa5\x5e\x1f\xa5\xd1\x0f\x60\x53\x14\xe1\x87\x8f\xd3\xe8\x85\xc6\x7c\xc7\x8f\xce\xd2\xe8\x3c\xc2\x8f\x27\x69\x44\x22\x7c\x36\x49\xa3\xd7\xa2\x88\xf0\xd9\xb1\xfd\x71\x62\x7e\x4c\xc6\x8f\xd3\xe8\xdf\xd4\xff\x53\x48\x3a\x19\x9f\xa5\xd1\x30\xc2\x93\xc9\x38\x8d\x46\xea\xff\x24\x8d\x1e\x44\x78\xa2\x1a\x68\x73\x9f\x9c\x9e\xe8\x44\x4f\x1e\x43\x31\x93\x27\xe6\xe3\x27\x4f\xd2\x08\xab\xff\x26\x93\x33\x93\xc9\x99\xc9\x44\x95\xff\xff\x8f\xf0\xb1\xea\xc6\x59\x84\x8f\x55\x1f\x5e\x5e\xaa\x1f\x93\x34\x9a\xab\xff\xc7\x69\xf4\xff\x8b\xf0\xe3\x93\x63\xd5\x8f\xaa\x17\xd4\xcf\x13\xdb\x7a\xf5\xf2\xd0\xf6\x93\x7a\x79\xe4\xba\xe8\xf1\xc9\xf1\xe9\x71\x53\x45\xf5\x7a\x62\xfb\x56\xbd\xd8\x1e\x57\xbf\x1f\x37\xe3\xa2\x5e\x4f\xfd\xa1\x79\x7c\x72\x32\x3e\x76\x9d\xea\x31\x20\x34\x0b\x96\x76\x49\xaf\x69\xf9\xf5\xf1\x94\x8e\xa4\x48\xb5\x3d\xa9\x27\x67\xbe\x2b\x2d\xe8\xc2\xa9\x4f\x3c\xb9\x6f\xd6\x08\x0d\x40\xef\xbd\x51\x11\xa4\x59\x22\x67\xe3\x39\x4a\x3d\xe9\x29\xbf\x3b\xb9\xcc\x12\x50\xe0\x44\x69\x60\x75\xec\x49\x5e\x33\x9f\x25\x7b\xa9\x75\x9c\x72\x38\x0f\x90\x3f\xb8\x62\x10\x79\x1f\x30\x88\x25\x79\xc6\x12\x8e\xac\xb3\x95\xd7\xea\x05\x0b\xc2\xa6\x4c\x33\x89\xba\x39\x3c\x4b\x38\x4a\x2b\x78\x8e\x6d\x35\x56\x8a\xf2\x0a\xef\xd0\x2b\x82\x42\x75\x15\x8c\xff\x13\xde\xd4\xa1\x32\x41\xa6\x30\x0d\x97\xb2\xdb\x8d\x09\x69\x8a\x0c\x31\xee\x01\x8c\x83\x1b\xaf\x18\x46\xac\x79\xf9\xee\x01\x52\xc4\x5d\x17\xd0\x98\xf8\xc8\x51\xbe\xba\x20\x42\xff\xf0\x6a\xaa\xe3\x71\x36\x1d\xa7\xc2\x23\xe6\x8d\x8a\x42\xd6\x52\x98\x71\x75\x71\xbd\x0e\xda\xe5\x55\x9f\xf0\x38\x96\x17\xde\xa7\xb5\x69\xf6\xdf\x44\xa8\xa5\x50\x7d\xce\x69\x05\x80\x53\x03\xae\x83\x8c\x63\x40\x71\x68\xa4\x8e\x4d\x24\x21\x52\x63\x3c\x10\x22\x3d\x9e\xa2\x72\xe2\x57\x55\x3c\xd3\x75\xc5\xa0\xb5\xaa\xbb\x70\x6a\xbe\xef\x03\x4c\x44\x1c\x27\x7f\x13\x70\xaf\x80\xd2\x8e\x08\x8e\x70\x85\x7a\x15\xe1\xfb\x8e\xbe\xd9\x66\x21\xda\x35\x77\x36\xfc\x83\x4a\x9d\xfc\xc0\xf8\xc8\x1c\xe9\x9e\x8e\xe3\xf8\x47\x61\x8c\x34\xec\x7e\x2c\x11\xea\xe2\xbe\xcb\xac\x7d\x4e\xd7\xd3\xdc\x07\xd0\x39\xca\x9b\x44\x9e\xb8\xba\xce\x34\xa6\x63\x46\xd8\x4c\xcc\x71\x4d\x4c\x1d\x33\x37\x65\x87\x55\xaa\xbe\x31\x0e\xaa\xea\xa7\x99\xb1\x0e\xaf\x2f\xb2\xc6\xeb\xd5\x11\xc0\x2b\xd4\x84\x64\x06\x67\x03\x7e\x7a\xd1\xaa\x98\x1a\x11\x22\xa6\x75\x5a\x3d\x1d\x13\x92\x40\x89\x03\x52\xcd\x91\x2b\x4a\x7d\x61\xa0\xf7\xa0\xee\x5e\x9a\x40\xdf\xb8\x26\x90\x45\x53\x47\xa8\xb4\xfa\x1a\x0f\x27\x6a\x60\xcc\x3b\xe8\xcf\xaa\x00\xdf\xf9\xdf\x41\x5f\xa9\xce\x77\x3e\xec\xce\x59\x67\xc7\x33\x84\xce\x11\x1b\x38\x94\xa5\x23\x76\x31\xde\xed\xd8\xd3\x80\x6a\x4c\x41\x29\x99\xed\x7d\xf4\xb7\xe6\xec\x3d\x3e\xa7\x17\x93\xf1\x39\x1d\x0c\xd0\xdf\xc5\x8c\x0e\x1e\x3e\x99\x13\xf8\x71\xf6\x78\x4e\xb4\xb2\x45\x62\x34\xf6\x29\x79\xfc\xe8\x9c\x5e\x90\xb3\x26\xb9\x4d\x02\x6d\x7a\x6e\x2e\xcf\x9a\xf4\x13\x95\x7c\x72\xdc\xe4\x3e\x99\x4c\x4c\xf6\x40\xf3\xe7\x24\xfa\x36\x1a\xd0\x3d\x4a\x34\x81\x5a\x66\xe4\x00\x54\x03\xe4\x66\x77\xca\x29\xc7\xa7\xfa\xe5\x49\x96\xcf\x1f\x60\x49\x1e\xcc\x6a\xf9\xf1\xcd\xfc\x01\xae\xc8\x83\xd9\xab\x9f\xaa\xf9\x03\xcc\xd5\xaf\xc5\x84\xcf\x1f\x60\x46\x1e\xcc\xd4\x0f\xcf\x6d\x78\xe0\xbd\x01\x06\xce\xba\xc6\x81\xc5\x69\x80\x00\xa4\x20\xd5\xbe\x2d\xe0\xcd\x8c\xd2\xb9\x3e\x8f\x66\x1e\x16\x96\xd3\xed\xc5\x5b\x62\x55\xab\x71\xa9\xf8\xe2\x9c\x8c\xcf\xf3\x8b\xed\xf9\x60\x90\xa3\xd2\xe8\x12\x90\xa4\x26\x99\x7f\xf5\x98\x23\x74\x41\x8e\x1f\x9e\x4e\xa3\x85\xfd\x93\xb5\xfc\x58\x2f\x82\xbf\xba\x56\x4d\x7d\xf3\xf5\xd7\x5f\xbf\x81\x3f\xfc\x06\xbf\x99\xb8\x3f\x1d\xf6\xe6\xd5\x9d\x7f\x5f\x12\x6f\x0a\x5a\xdc\xf9\x87\x55\xf1\x50\xbe\xce\xef\xeb\xaf\x27\x13\xf8\x39\x79\x75\x5f\xf6\xf7\x14\xab\xe3\x23\x3b\xc3\x6b\x94\x4e\x1e\x1e\x3f\xbc\x20\xb5\x5a\xda\x64\xf2\xe8\xf8\xe1\x34\xfa\x29\x4a\x27\x8f\x4e\x1e\xbb\xc0\xd3\xd3\x93\x69\x54\x79\x7f\xb8\x7a\xf3\x66\x0d\x7f\xd5\xbf\xf2\xb7\x0e\xfe\x4c\x20\x77\x7f\x5f\x73\xae\x12\xfd\x4b\x59\xff\xc7\xaa\x02\x7f\xd0\xb2\xa6\x83\x86\xaa\x2b\x50\x3a\x39\x3d\x75\xbd\x74\x7c\x7c\x3c\x9e\x46\x55\x94\x3e\x99\x9c\x1d\xdb\xc0\x27\xc7\xe3\x93\x69\xf4\x31\x4a\x9f\x1c\x8f\x1f\x12\x52\x4f\xa3\x45\x94\x46\xaf\x22\xd4\xcb\x49\xe3\xce\x72\x49\xa2\x57\x91\x9b\xa1\xb7\xd1\x3a\x22\x24\xb9\x26\xe5\x2c\x9f\xa3\xa9\x7a\x92\x65\xba\x24\xd7\x7b\xff\x9b\xa2\xf5\xcd\xc4\xfb\x26\x8e\x23\x75\x74\x2b\xf4\xb7\x11\x8f\xd2\x4a\x2f\x97\x6b\xed\x83\xf1\x1a\x43\x3c\xb8\x50\x84\x14\x3f\x81\x63\x7d\x51\x25\x39\x99\xe0\x25\x29\x67\xe3\xb9\xca\x7a\x38\x31\x99\x0f\xc2\xcc\x55\x59\x4b\xf3\xbf\x9c\xe5\x83\xc9\xdc\x94\x34\x89\x14\x03\xdb\x27\xd7\xbb\xdd\xb2\x6f\xa2\x76\xbb\x68\x12\xf5\x21\x3d\x57\xff\x77\x3b\x5d\xe8\x12\x61\xd5\x26\x5d\x6a\xb3\x3e\xd5\xea\x8e\xb0\x57\x1e\xd2\x59\xbf\x89\xdc\x4d\x7b\xf4\xb5\xaa\x7c\x43\x4f\x57\x24\x1f\x4c\xce\x57\x17\xdb\x38\x86\xa8\x72\xb6\x9a\x9f\x0f\x06\x2b\x74\x6e\x53\x6c\x48\x1e\xc7\x51\x5f\x57\x77\xa8\xea\xa4\x53\x4f\x4c\xea\x29\xd4\xfc\x4d\x84\xd7\x24\x3f\x5f\x5f\x28\xae\x62\x8d\xca\xd9\x7a\x4e\x36\xbd\x9c\xac\x86\x93\xbd\xad\x27\x6e\xf5\xfb\x35\xb8\xaa\x56\x55\xec\x45\xaf\x54\x9f\x9b\x5c\xaf\x4d\x8f\xbc\x3a\xe8\x7b\x74\xd0\x64\xb0\x92\xd7\xae\xd6\xa1\xc1\xd0\x30\xaf\x51\x2e\x72\x35\x47\xba\x5d\xa0\xcc\x44\xa0\xc0\x24\x9f\xea\x36\xc1\xb4\xc2\x0b\x13\xba\xba\xd8\x4e\xd5\x07\x7a\xb2\xa9\x0c\x37\xe4\x66\xb7\x5b\x4c\x55\x8d\xa2\x9f\xee\x69\x29\x40\x25\xe0\xf7\xa0\xf9\xec\x55\x14\x14\x7f\x83\x5a\xaa\x84\x1f\x49\x0e\xa9\x06\x83\x5c\xa5\x8a\x63\x3f\x09\x34\xee\xfc\x7d\x03\xed\x2c\x92\x31\xfe\x88\x73\xdf\x42\xed\x25\xc9\xf1\x3b\xf2\xde\x42\x04\x05\x79\x45\xaf\x22\x98\x44\x73\x9d\x91\x8a\x5b\x93\x97\xe7\xeb\x8b\x1c\x6a\xc3\x6c\x51\x6b\x55\x9b\x97\x17\xeb\x38\x7e\x6f\x15\x92\xdf\xe1\x31\xd6\x25\x4e\xf0\x4b\xbc\x36\xac\xf8\x5b\xb2\x36\x25\xac\x55\x2e\xc0\x1f\xba\x2c\xa0\x27\xce\x3b\x72\x38\xc6\x6f\x55\x0e\xf8\x25\x59\x43\xbd\x07\x83\x75\xef\xa5\xfa\xfa\x8e\xd2\x54\xfb\xcc\xae\x35\x21\xe4\xbd\xe3\x79\xe3\x38\xb9\x22\x99\xb3\xcb\xb9\xac\x07\x5a\x77\x10\x52\xc0\xbe\x77\xd5\xdc\x21\xe3\xf7\xa3\x2d\xd7\xf6\x70\xb6\xe7\xc6\xd8\x8b\x47\x08\xe1\x09\x78\xb4\x7c\x8f\xba\xb2\xbf\xac\x07\xda\xda\x27\xd1\x49\xa4\x18\xb6\xb2\x0f\x46\x65\x3b\xf4\x23\xb7\x2a\xf7\xe3\xb0\xee\xed\xfa\x4c\x30\xc4\x4a\x61\xff\x23\x84\x9b\xf4\xfd\xb0\x66\x41\x69\x4d\x2a\xbc\x55\x45\xe1\xf7\xfb\x7d\x73\x55\xf6\x76\x74\x4d\xab\x9a\x09\x4e\xa2\x47\xa3\xc9\xa3\xd1\x71\x84\xdf\xee\x11\xc2\xfe\xa5\x4c\x24\x40\xbd\xcd\x83\xa2\xff\xb4\x11\x95\xac\xe3\xf8\x20\x66\x2d\x8a\x6d\x49\xa7\x34\xa9\xe8\xef\x5b\x56\xd1\x24\x1a\x8d\x1e\x8c\x46\x0f\x4a\xb6\x78\xd0\x28\x13\x47\x08\xa5\x1d\x17\x24\x05\x5d\xc2\xf9\x47\xff\x1f\x65\xeb\x62\xaa\x7f\x26\xb3\xee\x6c\xe6\x98\xa2\x94\x26\xcd\xbd\x33\xda\x87\xbe\x37\xa2\x6d\x4d\x8f\x6a\x59\xb1\x5c\x46\xe6\xd2\xd2\xbb\xd1\x1e\x96\x8c\x4b\xe3\xd1\xb9\x8e\x1a\x7e\xa9\x32\x1a\xbf\x4e\xac\x03\x78\x64\xee\x2d\x94\x04\xfa\x3a\xc5\x89\xd4\x9a\xac\x9a\xbf\x6f\x40\xd1\x3a\x84\x6d\x2d\x97\xd3\xfa\x9e\xbb\x39\xfa\x26\xd2\x1c\x53\x7c\xe1\x92\x3b\xa1\x8b\x65\x73\xdb\x8f\x23\xd0\xf2\x05\xad\x5e\xcc\x50\x8f\x1b\x79\xab\x14\x1b\xff\xe8\x29\x47\x39\x5c\x94\xfe\x36\xe4\xc1\x55\xf4\xf0\x11\x1a\x44\x9b\x4f\x11\xb6\xdf\xc1\x0d\xac\x4d\xfd\xb7\xc1\x23\x88\xf5\x64\x79\x4e\xd0\x72\xd0\x91\x52\x88\x52\xb2\x8d\xca\xca\x17\x75\x56\xa3\xbc\x14\x9c\xc2\xa5\x70\x7f\x8c\x10\x0e\x05\x0f\x7e\x52\x0e\x80\x22\xfc\xae\xb6\x61\xd5\x2d\x06\x05\xcb\x56\x57\x6c\xb2\x9c\xc9\x1b\x00\xaa\x0a\x42\xc8\x04\x61\xbe\x57\x23\xe2\xf5\x6b\x66\x38\x6e\xd9\xd3\x9d\xc8\x4c\x09\x62\x2b\x23\x9c\x81\x43\xfb\x24\x91\x0d\x76\x80\x1e\x7c\x07\xfa\xd8\x2a\x52\x1b\xaf\xb7\x8a\x1d\xfb\xf6\x06\xfe\x71\x44\xa5\xde\x23\xfc\x78\x0c\x5e\x32\x35\x0e\xb1\x01\x2d\xaf\xa9\xfc\x81\x4b\x5a\x5d\x67\x65\xf0\x09\x5b\x26\x02\x35\xc7\x18\x76\x7e\x4e\x49\x20\x76\x05\x83\x95\x38\x9e\x4c\x08\xa1\xbe\xcc\x52\x25\xd3\x32\x4b\x4a\x42\x41\x8f\x75\x95\xac\x2d\x49\x6f\xb3\xc4\x47\x72\x72\xa0\xad\x47\xa0\xe3\xed\xea\x54\xab\x8a\x3f\x1c\x83\x9b\x2c\xc1\xdb\xbd\xe6\xdd\xd8\x04\x07\x0d\x6d\xcf\xea\x80\x0b\x8c\xf1\xb9\x3b\x6d\xe8\x2e\xf2\xa0\x05\x56\x59\xfd\x1d\xc0\xd2\x5a\xd7\x50\x82\x03\xe6\xe5\xdb\x6b\xea\x69\x56\xca\x96\x5f\xdf\xc6\x66\xce\x9a\x63\x49\xcf\x1c\x0b\xda\xf9\xe0\x72\xd1\xb5\xe8\x87\x46\x31\xb3\xf2\x9c\x7e\xdb\xee\x69\xac\x23\xab\xbb\x84\x0d\x58\x90\x84\xc1\x72\x19\x30\x23\xaf\x78\x70\x8c\x33\x02\xc8\x61\x9b\x01\x1b\x2d\x84\x94\x62\xad\x02\xb7\x20\x30\x72\x20\x9c\x09\x1d\xe5\x42\x54\x45\xad\x0e\x93\xc9\xad\xca\x22\x15\x58\x8a\x4d\x9a\xed\x71\xa4\x57\x5e\x84\x50\x70\x98\x6a\xee\x5f\x0c\x17\xb4\x24\xdb\x59\x3e\x1f\xbd\x7f\x9f\x71\x2e\x24\x58\xce\xf5\x96\x71\x6c\xce\x5b\x4b\xb4\x2f\x9d\xfd\xfd\x5d\x50\x69\xdd\x5d\x86\x0f\x54\x0d\xec\x1d\xfc\xb7\x55\x76\xa5\x2f\xd3\x0d\xb8\x3f\xed\x40\xf5\xa7\x33\x31\xef\x85\xfa\x17\xb5\x3a\x37\xee\xc1\xc9\x23\x56\x24\x1a\x14\x84\x91\x71\xeb\x09\x23\xfd\x31\x63\x92\xf1\xab\x6f\x45\x45\xc6\x81\x23\xe7\x46\x20\x0b\xfe\x99\x47\x6a\xf0\x7a\x55\x33\x55\xc0\x1a\x4e\xcd\x55\xfd\x9a\xc8\xb6\x13\x4e\x6b\x56\x1d\x38\xa2\x32\x61\x33\x3e\xb7\xf8\xb2\xbd\x56\x3a\xbf\x1a\x19\xd8\x79\x01\x0a\x94\x6e\xe2\xbd\x44\x1c\xd7\x24\xb3\x9b\x6b\x76\x1f\xb9\xd4\xfb\xce\x30\x1a\x54\x98\x29\xb2\xa3\xce\xc7\xf7\x28\xc1\x84\xa5\x20\xf4\x05\x59\xaf\xb7\x8a\x1e\x97\x34\x02\x99\x25\x80\x06\x0a\x9e\xd4\x76\xf5\x5e\xd3\xaa\x05\x2c\xad\x35\x43\x6a\x0d\xa2\xec\x5d\x0e\xfa\xa6\x3e\x35\xbd\xa6\x15\x93\x37\x3d\xad\x9b\x1e\x51\xbd\xa1\x1b\x3c\xca\xfb\xf7\x37\x27\x81\xbc\xaf\xee\xb4\xae\xb3\x2b\x3a\x04\x63\xb9\x2f\xd2\x0a\xa2\x23\xf3\x0d\x0a\xe4\x97\x5b\x1f\x8c\xb4\x99\x3d\x96\x0e\x61\x4e\x2a\xfb\x7b\xb7\xab\xb0\x59\xe9\xcf\xdc\x6a\xaa\xd5\xb2\xb8\x52\xfb\x64\xb9\x01\x44\xd8\x1f\x45\xad\xd8\x42\x84\x23\x95\x4f\x84\x7a\x6a\xd8\xaa\x51\x56\xdf\xf0\x7c\xb7\x63\xfa\xc7\xd4\xdf\xf5\xbd\x8b\x2e\xaf\x06\x58\x00\xaa\x42\x33\xe7\xc3\xfd\x49\x90\xe1\x04\x83\xbc\x38\x71\x7e\x8e\x33\xb4\x97\x6a\xec\xbc\x00\x5c\x25\x50\x3d\xb0\x65\x4d\x02\xf0\x01\x55\xec\x41\x06\xd8\x2f\x51\x5b\xa0\xf0\x38\xae\x7c\x88\x41\x0a\x70\x92\x1c\xe1\x12\x58\x16\x45\xf4\xb9\x5a\xa3\xb0\x70\x39\x4a\x55\x30\x0b\x4b\x55\xf1\xbe\x95\x5c\x09\x5e\xcf\x6f\x85\xbd\x1e\x33\x56\x7d\x40\x01\xbd\x1e\x28\xc9\xd6\x8d\x43\x4e\xba\x85\xac\x80\x4b\x7c\x60\x0c\xe2\xae\xb6\x2d\x9a\xa3\x35\x94\x3e\x4f\xe4\x8c\xcd\xc1\xe6\x81\xf9\x96\xa5\xdc\x43\x0b\x4e\x2a\x75\x08\x1e\x9f\x2f\x2f\xf2\x26\xcf\xa5\xce\xb3\x00\x3b\x7c\xb5\x5f\x14\xfe\x51\x17\xb6\xa7\x0d\xd9\xfa\x24\xe7\xf3\xe4\x71\x4d\xc6\xe7\xeb\x0b\x8f\xe8\xac\xed\xd1\xb5\x98\xad\xe7\xf8\x86\x5c\x37\xeb\xe8\x66\xb7\x4b\x6e\xdc\x3a\xc2\x8c\xdc\xe0\x95\x7d\x25\x24\xe1\x64\x85\xa6\x3c\x65\xb8\x1c\x2d\x45\xb5\xce\xbc\x19\xaa\x4e\x1b\xe4\x30\x38\xb9\x46\x08\x07\x15\xde\xb4\xc8\xb1\x4a\x70\x0d\xf7\xe6\x5b\x4b\xf6\x0c\xaa\x97\x45\xd9\x4e\xae\xf5\x0d\xae\x4a\x85\x6f\xdd\x72\x4d\x3b\x49\xcd\x30\x1a\xdc\x60\x7f\x23\x4a\xaf\xf7\x08\xed\xb7\x21\x99\xae\xa9\xd4\x2f\xaf\x81\x3a\x25\x4b\x2c\x71\x96\x6c\xf0\x0a\x17\x0e\xfc\x05\xbb\x69\x31\x32\xdc\x64\x8d\xd0\x7e\x5f\x8e\x04\xd7\x78\xe2\xaf\x18\x57\x53\x58\xed\x73\xad\xa0\xa4\xc2\x39\xf6\xb9\xf1\x3c\xa0\x5a\xcd\xee\x21\xe3\x38\x09\x4d\xd8\x2c\x2f\xa2\x98\x39\xcb\x96\xdc\xc1\xc4\x6d\x15\xc3\xaf\xd2\xd9\x6a\x16\x1a\x3e\xe7\x91\xe2\xea\xf6\x60\x75\xce\xb8\x01\xc0\x4b\x34\x9d\xc0\xfd\x49\xb8\x38\xb1\xbe\x53\xcd\x00\xdc\x9e\x8e\x7e\xe0\x4c\x55\x49\xa8\xc9\x09\xde\x82\xaa\x0e\x6a\x05\x2f\x6f\xf9\x73\x58\xce\x71\x5c\x85\xab\x3b\x07\xbe\x79\xb9\x4c\x80\x84\x01\x44\x1f\xad\x9c\xe4\x3b\xa0\xf7\x61\xe6\x0d\x83\x85\x70\xd0\x27\x41\x32\xd7\x3d\x06\xa4\xc2\x8f\x44\x3e\x96\x44\xad\x69\xa8\x6d\xbe\x76\x32\x50\x47\x8a\x93\xe9\x4f\xcc\xca\xab\xfd\x95\x57\xcf\x96\x73\x6d\xc2\x5e\x02\x5e\x84\x5e\x88\x7e\xfe\x60\x37\xc5\x92\x0a\x27\x2b\xc2\x91\x47\xac\xbe\x35\x3d\x3a\xbd\x0d\xa9\x76\xba\xda\xa7\xc9\x2a\x8e\xfb\xe3\x3e\x21\xab\xdd\x2e\x59\x81\xfd\xd4\x0a\xe1\xd2\x78\x63\x2a\xee\xee\x54\x1e\xf4\xe9\xb8\xef\xa5\xb5\xf3\xd1\xec\xa2\x9f\xef\xe9\x22\xec\xde\x6d\x52\x69\x76\x7f\x05\x40\xd6\x66\xa6\x80\x83\x99\x1a\x7a\x6b\x43\x2b\xb5\x92\x5f\xc1\x9c\x49\xda\xd6\xbb\x4d\x8f\xc4\xf1\x56\x63\xb0\x1a\x6f\x07\xff\x2f\x3c\xa9\xab\x23\xf6\x15\xab\x25\xad\xcc\xe6\x6b\x56\x52\xf4\xcf\x5a\xf0\x4e\x37\x0a\xb3\x79\x4f\xc5\xc1\x74\xdd\x64\x55\x4d\x01\x3e\xd2\x3f\x82\x37\xce\x1d\x46\xa5\xc8\x7b\x95\x0f\xf7\xa2\xf7\x76\xa6\x95\xba\xde\x83\x52\xd5\x04\xdb\xd7\x1c\x2c\x3e\x01\xae\xcc\xa6\x2b\x33\x3f\x19\xbc\xd9\x54\x86\x15\x49\xe5\x1e\xed\x41\x75\x36\xac\x96\x3a\x03\x6a\x8d\x15\xee\x14\x56\x8e\xaa\xff\x0f\x8e\xe4\x4d\xb6\x2e\xef\x1a\x49\xdd\x6d\x2a\xc5\xa8\x14\x59\xd1\xf4\x19\xb3\xdb\xbf\xf6\x04\xd0\x35\x88\xdc\xa0\xa6\x8c\x0e\x86\xed\x20\xc6\x0e\x15\xb3\xfc\xe3\x1e\xfd\x4f\x1e\x11\x1c\xe5\xff\xac\xa3\xff\xac\x71\x09\x3a\x13\x34\xca\xb2\x75\x01\x8e\xb5\x82\xf1\xc2\xd1\xa6\xcc\x18\x8f\xc2\x71\xc3\xe0\xd1\x7b\x2d\x0a\xfa\xcb\x4f\xaf\x40\xcb\xd5\xfc\x26\xaa\x38\xf5\xfb\xc1\xd7\x6f\x1e\x7c\xfd\x66\xa4\x2a\x6c\x98\xfd\x5b\x4f\xdf\x24\xb8\xe5\xd2\x1f\xd7\x80\x32\x4d\x15\xe3\x41\x79\xce\x28\xc8\xa9\x1b\xc1\xbb\x3a\x75\x35\xc7\xec\xd9\xdc\x9c\x29\xb9\xaf\xc7\x6f\x32\x3a\xb0\x6d\x9d\x89\x39\x52\x2c\xb7\xe6\xf0\x40\xbd\x1f\x04\xee\xf6\xb6\xd6\x2b\x42\x1f\xd9\x3a\x6f\x0c\x3a\xac\x59\xc7\x84\x0c\x87\x8a\x5d\x49\xd0\x7e\x9f\x54\x98\x05\x66\xe6\xd6\xa5\x5d\x50\x43\x33\xc6\xaf\xd5\x51\x04\x04\xf9\x99\x62\x04\xbc\xd0\xa6\x70\x8b\x24\x6c\x0d\x20\xfa\x76\xb4\x99\x71\x10\xc8\xb3\x35\xb5\x80\xed\x07\xad\xf6\xdc\x71\x27\xd6\xdb\x5c\x75\x77\x22\xc0\xe6\xf8\xbf\xb8\xfb\xdb\x2e\xb7\x6d\x2c\x41\x1c\x7f\xaf\x4f\x51\xc5\xdd\xd5\x21\x56\x28\x59\x95\xee\x3e\x67\x57\x65\x5a\x7f\xc7\x8e\x27\x9e\x8e\xe3\x4c\xec\x74\xfe\x73\x14\x4d\x0d\x2d\x42\x55\x68\x53\xa0\x06\x04\x6d\xd7\x94\xf8\xdd\x7f\x07\x17\xcf\x24\xc8\x92\x1d\xa7\x67\x77\xfd\xc2\x25\x92\x78\xc6\xc5\xc5\x7d\xbe\xda\x00\x50\xaf\x82\xdd\x54\x93\xfe\x2f\x95\x9b\x7a\x83\x95\x1f\xb9\x86\x0b\x30\xd1\x50\xb7\xf9\x10\x37\x57\x6f\x39\x3d\x48\x0e\xa8\x9e\xd7\x7c\x9b\xe5\x13\x15\x68\xc9\x16\x0f\x8c\x89\xdf\xe6\x37\xca\x94\xd8\xd4\x5a\x2f\x36\xb8\xcc\x38\x90\xe9\xd5\x66\x62\x98\x52\x79\xd4\xc3\x8b\x4f\x4e\x73\x58\xa1\x5f\xba\x6d\x20\xa8\x5c\x93\x4d\x6a\x6e\xc4\xc6\x17\xd6\xaa\x18\xd6\xdf\x92\x5d\xc5\x49\x5a\xe3\x46\x29\x43\xe0\xe0\x65\x99\x58\xd9\x23\x9a\x23\x5c\xa5\x12\x47\xca\x43\x03\x34\x89\xfe\xf2\xf7\x3a\x5d\xe7\x1b\x5c\x41\x68\x87\xbc\x11\xd5\x0f\x55\x5e\x84\xfb\xaa\xf2\x8d\xc4\x77\x8d\xa3\xe3\x31\x04\x12\x1e\xde\xee\x92\x30\x36\x14\x93\x6c\x21\xc1\xc2\x27\xa2\xe0\x15\xcc\xab\xfd\x7f\xf4\x8e\x70\x76\x68\xd6\x95\xa3\xef\xeb\x2e\x50\x3f\x36\xf4\x2f\x4c\x0d\xa3\x38\x03\xea\xe8\x2c\x99\x09\x15\x10\xba\xa6\xfb\x43\x49\xce\xd4\xd2\xb5\xbe\x5c\xdf\xb6\xaf\x4f\xc9\xa3\x74\xb5\x44\x8f\x34\x3e\x4b\x12\xeb\x56\xe1\xb3\xc5\xca\x8f\x62\x95\x92\x39\x85\x20\x28\xcf\xf2\x5a\x71\xca\x09\x4d\x10\x26\x92\xbb\x00\xff\x6b\xb4\x24\xce\x98\x04\x7b\x1e\x18\x29\x38\xe9\x8b\x55\x92\x2c\x93\x7f\x4b\x10\x78\x61\x80\x37\x06\x4a\x30\x0f\xf4\x07\x44\x92\x29\x29\x99\x33\xf2\x09\xe2\x4a\xc9\xe3\x8b\xa6\x53\x01\x29\x1d\x83\x97\x58\x67\xf1\xbc\x21\x9f\x32\x0e\x41\x8b\x6e\xc8\x27\x64\x0c\x39\xde\x93\x30\xec\x56\x3f\x6e\xa0\x87\x85\x1c\xf8\x38\x0d\x83\xc5\x0f\xbf\xcd\x1f\xdd\xe0\x20\xae\x7b\x8c\x33\xe7\xb3\x19\xf2\xe2\x06\x4e\xa7\x60\xc3\xd5\x6f\xc4\xb3\xa0\x02\x17\xf8\xf7\x84\xe9\x31\x17\xb9\xc8\x33\xd2\x11\x25\xf7\x03\xee\x18\xfb\x2d\x36\x3f\xa8\xc4\x8c\x8e\xaa\xd3\x2f\x4c\x54\x4b\xd3\xd3\x22\xf3\xbe\x19\x89\xa8\xab\xaf\xf3\x01\xf2\xf9\xa1\xaa\x67\x61\xba\x17\x4c\xd5\x08\x5b\x15\xfb\xbd\xda\xe6\xa5\x89\x03\x2f\x7f\xcf\x09\x2b\x24\xd3\xa0\x34\x80\xde\x4b\x64\x14\x40\xde\xbb\xb7\xb2\x21\x95\xbd\xc7\x06\x01\x53\x5f\x4d\xa9\x37\x12\x84\x95\xb8\xa1\x52\x6a\x81\x89\x6b\x41\x42\xb2\x1a\x8c\x5c\x01\xaf\x02\xea\xb4\x26\xfb\x7a\xb3\xcd\xd9\x74\x9a\xd6\x59\xe7\x9d\xf6\xab\x99\x6f\x1b\xce\x81\x5d\x01\x7d\x25\xcc\x5c\xb1\x5c\x5c\xcc\x6a\xed\x33\x83\xab\xd6\x05\x4f\x24\x6b\xa6\xf8\x0f\x89\xb7\x17\x57\xa5\x93\x46\x97\x46\xee\xbb\xcd\x9a\x75\xb9\xc1\xbb\x2c\x3d\xdf\xc2\x5e\xce\xeb\xaa\x3c\x1e\xb9\xfc\x93\x22\xe4\xd6\x69\xab\x21\x55\x02\xe0\x0e\x96\x53\x97\x97\xd0\xbd\xd2\xfd\x64\xde\xbb\xa5\xfe\x2d\x81\x6b\x95\x82\x96\x27\xdf\xbe\x3f\x1e\xcd\x2f\x5f\xd4\xa3\x6a\x23\xdc\x69\x06\x0e\x8c\x6d\xa7\x3a\x4c\xa7\xba\xae\xfd\xe1\x03\x86\xaa\x6a\x3e\x40\x90\x59\x84\x75\xe5\x3d\xe8\x83\x72\xd0\xf3\x79\xaf\xf0\xd6\xc0\xb2\x7e\x29\x17\x51\x72\x6a\x4c\xff\xd2\x41\xce\xf4\x93\x0e\x73\x37\x13\xfa\xf9\x17\x46\x85\xad\x5a\x90\x6e\x55\x08\x73\xbb\x33\x32\x92\x6f\x20\x06\xbb\x06\x5e\x6d\x34\xa0\xd8\xe6\x6f\xae\x8a\xc7\xa6\xd8\x55\x31\x9b\xa1\xdd\xba\xd8\xc8\x86\x0c\xf4\x2b\x62\x19\x82\x59\xca\x4f\x18\xc6\xbc\xd4\x63\x5f\x17\x17\x97\x9b\xd6\x93\xd1\xbe\xcb\xb7\xef\x7f\x39\xa4\x3b\xa7\xa8\xbe\x48\x77\xeb\xcb\xcd\x4a\xfe\xa7\xdf\x2c\x17\xb0\x36\xaa\x81\xc5\xc6\x90\xcf\xfa\xcd\x74\xaa\x7f\x40\xe2\xe3\x95\x2b\x67\xfa\x74\x86\x9a\xb0\xd5\xa9\x52\xee\xb5\x6d\x68\xb9\xa6\xb4\x5c\x99\x8b\xff\xa2\x22\x52\x9e\x93\xe3\xd1\xdc\x73\x96\x90\x22\xc7\xe3\xb9\x88\xbc\xef\xf8\x92\x70\xcf\xb2\x87\x0d\xc7\xbc\x60\x48\xa1\xce\x68\x70\x95\xf3\x4a\x05\x91\x11\x61\x8a\x48\x3e\x9b\xb5\x61\x0c\x17\x14\xa9\x3e\x9d\xf2\x8b\x0b\x0f\x45\xf1\x50\xdd\xc0\x30\xc5\x26\x8b\x84\xb2\xa2\x3d\x10\x5e\x43\xd8\x39\xe7\xf7\xda\x00\x62\x33\xaf\x01\x1d\xd4\x57\xcd\x74\x7a\x5e\x5f\x35\x59\x03\x2b\x8a\x52\x3a\xaf\x0f\x64\xbb\xaa\xf4\x0f\xdc\xc0\x1f\x24\x99\x1e\x49\xc2\x64\x0d\xfc\x45\x80\x2f\x1a\x45\x27\x96\x59\xbd\x52\xf9\x1c\x74\x29\x79\xe9\xe8\x3c\x28\xa9\xc0\xaa\x21\x84\xb7\x50\x0c\x4e\xcb\x92\x28\xf4\x01\x63\x48\x4b\x34\xf1\xc7\x2b\x07\xa4\x31\x6e\x38\xd6\xec\x1e\xfa\x28\xb1\x6c\x6f\xa9\xc7\xa7\xda\xdb\x62\x38\xfa\xfd\x3a\x2a\x65\x90\xc3\x97\x5b\xf3\x68\x1b\x23\xac\x58\x52\x8d\x9b\x53\xf8\x81\xb0\x46\x80\xe6\x3d\x48\x81\xa8\x4a\x53\xf8\x9d\x57\x10\x62\xf0\x19\x64\xbd\xcc\xa7\xd3\x5c\x01\x6e\xbe\xce\x5d\x64\xa3\x65\xde\xfa\x9a\x91\x68\x3a\xc9\x20\x67\x88\x1c\x1d\x04\x25\x74\x98\x5c\x9d\x6c\xd4\x41\xdd\xde\xa7\xd4\x9f\xa4\x4d\x2d\xad\xd4\xd0\x06\x31\x1c\x8f\xba\x90\x44\xb3\x45\xc5\xc4\x4b\x78\xad\xd6\x69\x58\xe9\xd7\xf3\xe0\xa3\xbb\x54\x40\x78\x25\xdf\xb9\xd5\xe0\x41\xdc\x6f\x1a\x3d\xb9\xb8\x74\x84\xc2\x4f\x79\x5d\x6b\xee\xc2\x62\x2c\x9b\x87\xb2\xce\x84\xbd\x3a\x26\x64\x09\x46\xbe\x57\x6e\x30\x2a\x2c\xaf\x15\x08\x36\xe6\x32\x29\xb3\x5a\x07\xe5\x2d\x43\x9c\x08\x1b\x17\xbc\x7b\xb9\xfb\x81\x32\xe5\x34\x6c\x2e\xa2\x52\xdd\x30\xea\xb6\x53\x9c\xcd\x76\x3a\xdd\xae\x17\x1b\x74\x9f\x5f\x5c\xe0\xb4\xd4\x94\x54\x69\xc8\xab\x54\x8e\x33\x7c\xbb\x41\x98\xda\xc4\xa4\x5b\xdf\xd7\xd4\xcb\xb8\xd0\xb6\x4a\x75\x6e\xb4\x7d\x8f\x17\xab\xc5\xd2\xac\xc2\x3a\xdf\xb4\x56\x20\xfc\x06\x08\xd2\x28\xd3\xa0\x0a\xe8\xb3\x15\xb0\xf0\xce\xa9\xca\xd6\x4e\x75\xd6\x4c\xc9\x8a\xd4\x91\x36\xb9\x04\x3b\x91\x56\x38\x81\xf3\x98\x18\xc6\xef\xbe\xc5\x4d\x56\xcd\xf7\x44\xe4\xc7\xe3\x7d\x0b\xf2\x58\x8b\x00\xb7\x12\x4b\x55\x12\x0e\xb6\xe7\x59\x33\x9d\x56\x5d\x74\xb5\x45\x2e\xe2\x71\x96\xaf\xb7\x1b\x49\x01\x16\x59\xb5\xde\x6e\xf0\x6d\xb6\xb8\xba\x75\x9a\x8e\x5b\xb3\x87\x87\xac\x58\xdf\x6e\x26\x3b\x67\x89\xc4\xd2\x03\xae\x10\xc2\xe9\xc1\x02\xf0\x41\xef\x22\x32\x02\x60\x20\x7c\xf6\xd9\xbd\xc3\x26\x91\xb4\xc9\x0a\x45\xe8\x19\x62\x7d\xb9\x41\x54\x6a\x0c\xe7\xc1\xfb\xa9\x9a\x50\xb1\x19\xa1\xcf\x65\xb9\x5a\x6f\x96\xea\x96\x81\xbc\x76\x9d\x4e\x5c\xb6\x02\xd5\x8b\xd6\xdb\xd9\x5e\x84\xb9\x4c\x75\x57\x42\x1d\xc1\xa1\xde\x84\xa5\x04\xcc\x2f\x9b\x33\xb9\x9d\x08\xef\x8c\x03\x21\xe6\xe1\x35\x32\xb7\x83\x4b\x85\x87\x1f\xb0\x5f\x09\x29\xeb\x13\x20\x64\x94\xc4\x7e\xfb\x3e\xd3\x6f\x6c\x3f\xbe\x42\x5c\xf4\xef\x0b\x95\x88\x05\xee\x0a\x3e\x84\xa1\x99\xea\x1a\xd0\x34\xf3\xd1\xb4\x21\x96\x32\x7f\x54\x2b\x7f\x22\x4b\x7f\x22\xba\x1d\x47\xa6\x49\x1c\xdf\xef\xb5\x75\x41\xd9\x34\x89\x42\xd3\x1c\x42\x1a\x30\x46\x78\x98\x8d\x2b\xf0\x5b\x52\x98\x56\x8d\x99\xf8\x8b\x66\x2e\x29\x37\xae\xb6\x35\x5b\x54\xa7\x39\x6e\x50\x2b\xd1\x44\x63\xc1\xfc\x03\x24\x46\x42\x4d\xf7\x24\x80\x51\xe9\x7e\xfd\x61\x93\x35\xeb\x0f\xce\x1b\x7b\xff\xff\x2a\x6b\x4e\xe6\xc6\x86\xe0\x13\x65\x37\x1d\xfc\x65\x8e\xca\xa9\xb1\xe3\x02\x3e\xd7\xb9\xe2\x44\xa2\x81\xf4\xfc\x68\x21\x6e\xae\xb9\x2e\xa7\x53\xfa\xe4\xe2\x72\x45\x67\xe6\xa6\x59\xaa\xa8\xbe\x55\x26\x34\x8b\xb3\x32\x5e\xb5\x1c\x2d\x1d\x8b\x54\xad\x4c\x0a\x6a\x3e\x4b\xd9\xca\xcb\x43\xbd\x5c\xa0\xe5\xc5\x65\xeb\xf0\xcb\x30\xf2\xa9\x1a\x41\x78\x48\xef\x08\x0d\x99\x10\xa0\xd4\x9e\x7f\x46\xf8\x08\x9e\xe1\xbd\x06\xbd\xf3\x8e\xf9\x1c\xde\x86\xed\x4a\xee\xc1\x3e\xe9\x0e\x82\x77\x60\x0b\x63\x5b\x09\x3e\xa9\x63\xa0\x5f\xa1\xd6\x9c\xab\x9e\x60\xb2\xf2\x2b\xb9\xc4\x38\xde\xcb\x49\x29\xaf\x45\xd8\x31\x20\xc2\xf3\xf9\xb6\xac\x6a\x32\x9d\x52\xcd\xea\x99\xc5\xf6\x2b\x99\x26\x3c\x63\x2f\xc5\xcc\x1a\xca\x26\xdd\x65\xba\xa1\x15\x4b\x4b\xac\x7f\x63\x2a\x79\x53\x9c\x2b\xd5\xc9\x73\x52\xd2\x3d\x15\x84\xd7\x72\xb3\x90\xa4\xe0\x0e\x55\x3d\x9d\x9e\xf7\xbf\xdb\x98\x28\x8a\xe7\xd4\xcd\x21\x3c\x32\x28\x49\x50\x94\x74\xff\x46\xdc\x95\x92\xc3\xf3\x9e\x66\xc9\x59\x32\x0b\x5f\x5c\x40\x7b\xc9\x64\xa7\x22\xf9\x9b\x05\xc9\x4a\xeb\x87\xbd\xd3\x26\xd0\x75\x96\xfb\xcc\x3b\x35\x43\x70\x91\x14\xbb\x4d\x20\xbc\xb3\x53\xeb\xcd\x0c\xd2\x8d\x0f\xcd\x01\xe1\x5c\x3d\xe9\x49\xa4\xb5\xa4\xd0\xf5\xf0\xdd\x87\xa5\xff\x80\x70\xed\x31\xfa\x97\x8f\x16\xd8\xed\xaf\x36\x3d\xe3\x7d\xd3\x33\x5c\x64\x7c\xbd\xdd\xe8\x9d\x93\x3b\x56\xcc\xab\x03\x61\x6a\xc3\x90\xd9\x1b\xb3\x0f\x45\x77\x1a\x2a\x95\xb3\xdc\x1a\x55\xaf\xbb\x33\x85\x79\xce\x82\x83\x56\x98\x2b\x50\xa1\xee\x95\xf9\x91\x56\xea\xbc\xe0\x24\x41\xcb\x05\xc2\x45\xb0\x97\x45\x77\x2f\xc3\x17\x17\x72\x00\x09\x38\xd4\xef\xa6\xd3\xdd\xe3\x66\x3a\x4d\x9b\x6c\x87\xda\xe6\x5c\xae\x47\x7c\x7b\x1b\xbd\xbd\xb7\x10\x9c\xdf\xec\xac\x3a\xb4\x66\x67\x23\xf5\x11\xbe\xb5\xf7\x4e\x28\xd2\x32\xb6\x86\xde\x2a\xac\xfa\x27\x78\x29\x5c\xb8\x1f\xbd\x06\xe6\x47\x1a\xad\xbb\xd4\x98\x04\x33\xb4\x54\xb4\x7a\x8b\xdf\x95\x39\x7b\x2f\xa9\x66\x37\x04\x4f\x37\xea\x37\xc2\x62\x03\x00\x6e\xd4\xb6\x21\xcf\xbd\x7d\x48\xa3\xd5\x97\xcc\x60\xb3\xe0\x33\x4a\x7e\x93\xf7\x58\xd8\xa5\x41\x26\x61\x4b\xa6\x8c\x82\xf2\x30\x7e\x7a\x24\x84\xb7\x46\x5b\x7c\x5d\x6d\x26\xba\x93\x1c\xc0\xac\xd7\x6e\x6e\x86\x14\xc2\x99\x16\xea\xf4\xd7\x98\x05\x70\x26\xf1\x28\x04\x25\xe0\x74\xfb\xec\x36\xe7\xf5\x52\xcc\x83\xe7\x87\x08\x16\xf8\xbc\xba\x37\xd4\x09\x3c\x62\x4d\xbd\x74\x57\xbe\x5d\xda\x72\x6a\x0c\x6a\x3b\x5a\xf9\xef\x6b\xd2\x1e\xef\xaa\x8f\x84\x5f\x6f\xab\xfd\xa1\x62\xf2\xe2\xf6\x68\x87\xbe\xfa\xf2\xa4\x5a\x79\x51\x54\x4c\x69\x10\x15\xcb\xf2\x05\xa4\xcc\x67\x8c\x0a\x7f\xe6\x60\x3e\x97\x20\xf2\xf8\xb5\xe4\x56\xec\x4b\x15\xec\xfc\x5d\xce\xeb\x64\x80\x7d\xeb\x92\x50\xa9\x2f\x4d\x49\x04\xf9\x24\x1e\xc9\x86\x12\x84\xef\x25\x94\x2e\x93\xfb\xfb\x04\xc3\x41\x58\x26\x6d\x9b\x18\x88\xf0\xea\x78\x7d\x22\xdc\xc1\xad\xcb\xf3\x45\x8b\x7c\x13\x93\x57\x2f\x5f\x7d\x97\xaa\x6e\x3e\x5d\xb8\x9a\x17\x82\xec\x0f\x65\x2e\x48\x82\xbb\xf3\xf8\xea\xaa\xef\x61\xc0\x99\xcf\xf5\x96\x28\x9f\x78\xfd\x47\x05\x7c\x8f\x96\x23\x05\x15\x8f\xe0\xee\x78\xc7\xf3\xed\x7b\x22\xea\x2f\xa3\x8c\x7b\x50\x33\x3a\x12\x3c\x3a\x80\x2f\x71\x43\x21\xf3\xf7\xe4\xee\x55\x7e\x98\xd7\xcd\xbb\x92\xee\x49\x76\xbf\xcb\xcb\x52\xdc\xf2\xaa\xb9\xb9\x5d\x26\x3a\x58\x7f\xd2\x62\x08\x46\x55\xed\xf7\x39\x2b\x6a\x88\x38\xf3\x53\x55\x63\xea\xea\xeb\x92\x99\x7b\xb3\xcf\xb7\x3a\x07\x00\x04\x41\x48\x9e\xed\x8b\x8b\x44\xc5\x06\xb9\x48\x26\xa1\x59\x33\xba\x37\xe9\xd1\x6d\x70\x97\xfa\xdb\xbb\x30\x13\xbe\x51\xd9\xcc\x75\xe0\x21\xa5\x61\x39\x1e\xc5\xbc\xa8\xb6\xba\xb6\xbc\xd1\xc9\xfe\x20\xee\x52\x14\x5a\xc0\x52\xa0\x2b\xe9\xe3\x05\x24\x57\x83\x7c\xa5\xb6\x3d\x93\x6a\x9b\xe9\xc8\x06\x17\x97\xc8\x84\xc5\x01\x15\x28\xdc\x29\x3a\xd4\x02\xdc\x3b\x4f\x16\xd3\xa9\x6c\xe2\x49\x56\x75\x34\xfd\xfd\xc6\x66\x97\x41\xaa\x87\x1c\xd7\x99\x11\x19\x34\x30\x0e\x49\xe9\x80\xc4\xc6\xb4\x05\xf4\x4e\x73\x9e\x95\x57\xcd\x2c\xa3\x78\x6b\x44\x19\x3b\x95\x41\x08\x7c\xd1\x1f\x2f\x56\xcd\xc5\xe5\xb2\x41\xb8\xc8\x92\x6b\xe5\x67\x49\xbc\x08\xd0\xe9\x0e\x81\xff\x69\x52\x25\xa0\x62\xfb\xa8\x7c\x14\x77\x61\xb8\x67\x70\xe7\x4c\x8b\x2c\xf9\x35\x41\x46\x54\x93\x65\x35\x4a\xaa\xe4\x5c\x16\x4f\xeb\x2c\xa1\x2c\xc1\x79\x56\xb8\x80\x87\x09\xe8\xe6\x6b\xb0\x1a\x2c\x14\xe7\x24\x5b\xcf\xa7\xd3\xe4\x57\xd5\x0b\xac\x72\x73\x71\x81\xe1\x85\xfc\xa0\xbb\xa7\x4f\x16\xe8\x3e\xcf\x92\x8f\x89\x15\x5f\x69\xd1\x95\x75\xec\x31\xc1\x25\x1a\xd4\xa6\xb0\xb1\x98\xaa\x7c\x4b\x1c\x2d\xf9\xe3\xc5\x4a\x85\x5b\x48\xd1\x92\xce\x45\xa5\x34\xed\x7c\x2d\xd6\xc9\xd3\x52\x5c\x40\x80\x93\x4d\x96\xdc\x54\x6f\x9a\x77\x1f\x2b\x5e\xe8\x17\xfe\x11\xc8\x53\x82\x2f\x2e\x51\x8b\x6d\x2d\x15\x09\xc5\xaf\x66\xde\x74\xeb\xc9\x6a\x74\x3a\x4d\xc5\x1a\x60\xd9\x75\x67\x65\x7f\x6f\xf6\x4e\xda\x55\x03\xcc\x4b\x60\x97\xbd\x44\x00\xbf\x49\x4d\xae\x17\x31\xa7\xf5\xcf\x24\x2f\x5e\xb3\xf2\xce\xb1\x2e\x5a\xa8\x29\x24\xcd\xa0\x72\xde\xa5\x71\x2b\x04\x31\x2f\x69\xed\xa2\x22\xd5\x29\xb2\x9a\x43\x65\xcf\x72\x71\x89\x55\x8e\x68\x72\x95\x1b\x68\xaa\x23\xd5\xd6\xb9\x4a\x6e\xa5\x22\x2f\xa8\x44\xcb\x8f\xb3\x0a\x99\x0c\x56\x4c\xbf\x9b\xa5\x7c\xb5\x58\x5e\x22\xbc\x40\x13\x61\xd4\xab\x2a\x10\x12\x44\x9a\x6a\x74\x84\xb0\x99\x32\x7a\x90\xcb\x93\x20\x4b\x2f\xc3\x71\x6a\xb4\x15\x94\xce\x21\x8d\x4d\xda\x34\xd9\xfd\xb2\xc1\x2a\xff\xd6\xb2\x69\x11\xae\x32\xdd\xe9\x65\xdb\x82\x91\x82\x37\x62\x0a\x57\x84\x62\xb7\x9f\x29\xe4\x24\xe1\x53\xf6\xf2\xb4\x11\x55\x12\x58\x84\x07\x61\xed\x55\xbe\x65\x89\x98\x20\xf0\x49\xe7\x94\x5f\xd1\xce\x71\xca\xfd\x70\x58\xe8\x0a\x5d\x5c\x50\x38\xd2\x57\x95\x4d\xe7\x36\x54\xa3\x92\xe5\x67\xb3\x4a\x93\xcc\xca\x48\xcc\xc2\x39\x05\xcb\x30\xfb\x58\x21\x2c\x21\x70\x99\x6b\x12\x5f\x32\xa6\x2d\x40\x78\x3d\x4b\x7e\x39\x48\x70\x53\x49\x36\xe4\x68\xe1\xd9\x07\x52\x83\xd2\x6f\x88\x78\x03\xa5\x5e\xb2\x5d\xa5\xc3\x9a\x91\x79\x5d\xed\x89\xb8\xa5\xec\x46\x2d\x20\x29\x52\xe4\xdc\x5a\x64\xef\x4f\xb5\x2f\x5e\x2a\xc0\x73\xc8\x38\xdf\xa9\x97\x38\x01\xa9\x15\x64\xe8\xbe\x21\xe2\x19\x5c\x48\x12\xd2\x28\x23\x4f\x32\xb0\xac\x0e\x76\x41\x9d\x8a\x5f\x0e\x09\x6a\xc9\x5c\x8d\xf9\x6d\xa5\xc3\xf2\xcb\xe6\x2f\x6c\x6a\xac\xb7\xe4\x93\xe9\x18\xe9\x83\x59\xcf\x54\xe8\xa2\x60\xba\xfa\xcd\x1f\x36\x61\x3b\xc3\xd9\x65\x64\x8e\x8f\x07\xe7\x08\xe3\x1a\x98\xe5\x6c\x6c\x96\x2a\x62\xd6\x45\x32\xab\x66\xc9\x0f\x30\xd7\x43\x49\x1d\x78\x7f\x7b\x07\x07\x67\x33\xe0\x97\x40\x7a\xc7\x57\x45\x83\x53\xe9\x91\xac\x6a\x85\xce\x66\x5e\x84\x5a\xb1\xa6\x1b\x8d\x41\x25\xdc\xcb\x27\x89\x46\x71\x9d\xa9\xd4\x6e\x57\xf5\xe3\x2c\x57\xbf\x66\xb3\x1a\xa9\x9f\x4f\x2a\x1d\x10\x08\x22\xba\xa8\x9f\x10\x7b\x65\x7b\x7b\x3c\x1a\xdb\x47\x7d\x62\xeb\x4c\xb7\xb4\x92\x50\x5d\xe3\x05\xc2\x70\xa4\x6d\xd5\x55\x2e\xdf\xa3\x56\xc2\x51\x78\x98\x39\x5e\xa0\x16\xdb\x65\x79\x9b\xbf\x93\x6b\xa2\x71\x06\xa9\xeb\x44\x2e\xda\xfc\xbb\x7a\x9b\x25\x35\x65\x37\x25\xb1\x75\xdf\x56\x43\x27\xa1\x87\xe1\x16\x9b\x4e\xbf\xa9\xb0\xc9\xfe\xd4\x45\xe3\x65\xb1\xd1\xfb\x64\xb7\x07\xea\x7c\xad\x4d\xb9\x77\x3b\x32\xe9\x2c\x22\x4b\x2b\xbd\x49\x0a\x2b\x98\x45\x94\xef\xe5\x76\x39\xc2\xa2\x05\xb8\x0b\x97\xd1\x5f\x44\xb8\x73\xfe\x2a\x07\xaf\x6c\xe6\x61\xf0\x66\x52\x2a\x76\x1b\xac\xb1\x41\xd3\x4f\x77\xea\x55\x84\x4f\x6c\x52\x82\xcf\x2f\x23\xa0\x1b\x69\x46\x99\xb9\x8d\xb4\xb3\x70\x4b\xfb\xdc\x2d\xed\x8f\xe4\x93\x78\xbd\x55\x76\x21\xdb\xa0\xba\xe7\x42\xe5\x0e\x66\x22\xd7\x08\x5c\x55\x82\xb7\x12\xef\xe3\xca\xba\x3a\x69\xc2\xf6\x05\x65\xc5\x8b\xa6\x2c\x25\x82\xce\x32\x45\x33\xd6\x04\x0c\x90\x20\x23\xdf\x76\x0f\x64\x9b\xa4\x14\x0d\xe7\xae\xae\x0c\x2d\x5e\x94\x68\xd9\x78\x65\x86\xd7\x50\xaa\xa3\x0c\x41\xb0\x23\x5c\x65\xe7\x0b\x17\xe7\xa0\x56\x43\x53\x77\xa3\x6c\x1b\x37\x59\xb5\xf2\xa3\xe2\xfe\xf6\xdb\xbb\x64\x56\xcf\xe0\x2f\x5a\xd6\x78\xab\x6a\xbc\x01\xb2\x5f\x4f\xa9\xc1\x14\x5d\xa5\x5b\xf0\xdd\xfc\x11\x0c\x14\x8e\xc7\x34\x5e\x50\xc2\x33\xd8\x8b\xc3\x75\x26\x6f\x68\x84\xbc\x7a\x68\x3a\x15\xf3\xbc\x70\x54\x76\xba\x35\xe8\x60\x0b\xa0\x05\xa1\x78\xd3\xb1\xb5\xb3\x4b\xe7\xc7\x99\xdd\x76\xb0\xb1\x41\x9d\xc0\x36\xd4\xdb\x9c\xbd\xa8\xf8\xb7\x8a\x4f\x49\x85\x24\xc0\x5c\x2a\xfe\x2b\x2f\x5e\x65\xaf\xe4\x65\x18\xc1\x4a\x49\x7d\xb6\xb7\x59\x96\xa4\xe8\xbe\x5d\x6f\x6c\x68\x16\xfb\x6c\x44\xf5\x40\xe2\xcf\x2e\x3d\x6a\x2a\xd8\x33\xa6\x0c\x8e\xd4\xf9\x52\x3f\xb7\xb7\x90\x11\x13\x64\xbd\xe7\x97\x08\x9f\x2f\x26\x22\x63\x29\x75\xe5\xa8\x2b\xa7\x2e\x65\xff\x18\xa8\xf0\x85\x16\x96\xdf\x6c\xab\x43\xf7\x04\x6c\x55\xf2\x95\xf0\x12\x51\xc5\x9f\x96\x65\x12\x39\x5b\xaf\x5c\x83\xdf\x12\xf1\x91\x10\xf6\xad\xe5\xf6\x82\xd3\x21\x57\x69\x9b\x8a\x0e\xf1\x68\x0f\xd9\x2b\x45\xa8\xbe\xad\x74\xf5\x4e\xed\x07\x98\x2f\xee\xb9\x0f\x86\x3b\xc4\x15\xce\x54\xdb\x44\x21\xae\xa5\x3d\x4a\x6a\x25\x55\x09\xe4\x64\xe1\x87\xaa\xb6\xcc\x55\xbc\xb5\x0b\x97\xe0\xa7\x9a\x4e\x25\xd2\xb3\x3b\x50\xb9\x1d\x90\x57\x8f\x2c\x2e\x59\x00\x15\xd0\xca\x30\x99\x8a\xd0\x5e\xfa\x28\xd0\x23\xbb\x8b\xd3\xc8\x6e\x4b\x28\x02\x2a\xe9\x61\xf5\x1c\x32\xfa\xe9\x9c\xaf\x5e\x1e\x59\x93\xeb\x55\xe7\x78\x3d\x6f\x0c\x3b\xea\x6e\x89\x32\x6b\x02\xec\xbe\x85\x84\xad\xfa\xc9\x6b\xef\xe2\x72\x3a\xad\xd6\xf5\xec\x72\xe3\x17\xcf\xb2\xed\x15\xda\x66\xcd\x7a\x36\xab\x37\xae\xde\x44\x99\x97\xa5\x25\xde\xa2\xb6\x35\x34\xe9\x8a\x66\xe7\x8b\xa5\xfe\x14\x22\x06\x01\xfe\x22\xea\x41\x39\x92\x8d\x33\x19\xd6\x30\x3e\x77\xce\xd6\xd9\x37\x86\x97\xc8\xd7\xd5\x06\x37\xf2\xcf\xec\x72\x83\xcb\x4c\x5f\xfd\xdb\x8c\xa5\x0d\xc2\x3b\x1f\x0b\x96\x78\x0b\x59\x17\xf9\x6a\x37\xaf\x2b\x2e\x52\xb4\xd4\x3f\xa2\xfe\xf4\x9d\x0c\x45\x3a\x0f\xad\xf7\xc6\x6a\x69\x21\x9a\x60\x4a\x32\x8e\x21\xba\x3f\x79\x2c\x56\x17\x97\x4b\x92\x65\x42\x32\x2b\x8a\x51\x08\x78\x95\x1d\x96\xab\x85\x81\xd6\x0f\xee\xdf\x52\x5d\xb7\xdb\x16\xb5\x54\x22\xcc\xf0\x82\x25\x70\xef\x2a\xbe\x73\x67\xa9\xf2\x8f\xf9\xa1\x4f\x93\x8b\xd3\xe1\x8c\xc7\xa0\x4c\xf3\x6f\xc1\xce\x01\x33\x67\x81\x8f\x47\x80\x8f\xaf\xeb\x0d\xee\x40\xd9\xc5\x65\x08\x67\x06\x5e\x1c\xc9\xd1\x68\x3a\xc8\x14\xb7\xcf\xdb\x5b\x4b\x7e\x34\x70\xe2\x5c\x09\x78\xda\xde\xa2\x16\x9c\xd4\x74\xf3\x92\x2a\xb4\x60\x7f\x3c\x5e\x5c\x6c\x71\xf9\xa4\x5a\x51\x07\xa0\x4b\xea\x0c\x1d\xe9\x9a\x3a\xa3\xa6\x6c\x2b\x2f\xd0\x6d\xfb\x30\x38\x2e\xae\x88\x73\x80\x20\x16\x12\x79\x46\xd7\x44\x2e\x19\x5d\x13\x09\x89\xb5\xcf\xdb\xf5\x99\xd5\x04\x33\x20\x3b\xe5\x1f\xa0\xa7\x70\x32\x33\x3b\x29\x89\x88\x27\xfe\x29\x59\x45\x58\xdd\x59\x0d\x37\xae\x7f\x94\x34\xeb\xeb\x9a\x59\x76\xea\xc9\xcb\x9e\xc9\x9e\x2b\xe8\xb9\x5b\xbc\xc7\xe4\xe6\x60\x5e\xa1\xd9\x1b\x51\xfd\x8d\x92\x8f\x4a\xf0\x81\x35\x04\x5a\x56\x49\xb7\xd1\x65\x94\xbe\x1a\x14\xba\x69\xce\x24\x10\x72\xbb\x71\x57\xf9\x93\x6c\x71\x95\x5f\x5c\x18\x7c\xc0\xd7\xb9\xc4\x07\x75\x40\xae\x96\x59\xed\x83\xe4\x64\x71\x6e\x0a\x48\x90\xa9\x1d\xc8\x34\x17\x17\xb8\x79\x6c\x41\xa6\xc1\xe5\x08\xc8\x94\x12\x64\xca\x13\x40\xc6\x56\xfa\xe6\x8a\xc8\xe1\x92\x8b\x21\xa8\xc9\x43\xa8\xe1\x59\x36\x0a\x07\x00\x45\x17\x97\x00\x45\x68\x74\xeb\x1f\x02\xb8\x4e\xf1\xfc\x61\x48\x19\x02\x8b\x6a\x96\x3c\x92\x30\x21\xaa\x9b\x9b\x92\x48\x62\x83\x18\xf3\x39\x52\x74\xc8\x12\x89\x62\xbd\x52\xe9\xbd\x56\x0d\x82\x04\xdf\xb4\xf6\xcf\xb2\xb5\xbf\x57\x94\x41\xb8\xf2\xaf\xc2\x00\x85\x6c\x29\x44\x17\xd7\xb4\x68\xad\x99\x45\xb0\x16\x73\x77\xa3\x6b\x40\xde\x8d\x62\x4d\x7b\x77\x63\x73\x85\x9a\x4c\xac\x67\x33\xea\xdf\x8d\x86\xbd\x02\x09\xe7\xb2\x06\xdb\x4c\x2b\x63\x3a\xaf\x0c\xe0\x4d\xa7\x39\xf0\x53\xe3\x80\x24\x20\xb5\xa6\xbd\x0e\x79\x10\x7b\xc4\x17\xf3\x72\x75\x27\xd6\x1a\x8f\x4a\x4a\xa6\x0e\x70\xac\xc0\xb5\x8f\x63\xe5\xf1\x80\x11\x5e\x95\x8f\xb3\x7a\x4e\x58\xe1\xdb\xb5\x97\x17\x62\x52\x66\xea\xfd\x74\x9a\xe6\x19\x4b\xb7\x98\x58\x30\xdd\x1a\x99\x9f\x24\x79\xf1\xf6\x31\xf1\x00\x16\xf2\xfc\x85\x70\x78\x26\xa1\x6a\x2b\xc1\x70\x3b\xbb\xc4\x8f\xfe\xed\xb7\xfa\x7f\x3e\x52\x46\x2b\x5e\x93\xb2\x29\x3f\xf4\x18\x9e\xcd\x04\x6a\x69\x78\x71\x34\xc7\x63\xae\xae\x87\x3c\xc2\x8c\x52\x7d\x57\xf6\x08\x5b\xe0\xfa\x8a\xe6\x50\xd2\x6d\xae\xd9\xd2\x2e\x50\x3e\xb4\x0d\x7d\x50\x33\x62\x4f\x6d\x5d\xea\x12\x43\xd0\x98\x28\x80\x6f\x26\x4e\x59\xd0\x59\x20\xb7\x0a\xd4\x5d\x79\xc8\x1c\x47\xef\x9d\x64\xb0\x96\xb1\xca\xea\xa7\x11\x57\x63\x25\xae\x96\x7f\xd5\x0b\x27\x2f\xea\x1c\x5e\x38\x6c\x6f\xe1\xe8\xf2\x9c\xd5\x87\xaa\x26\xa0\xc4\x55\xd2\x8f\x17\xff\x3b\x4b\x24\xad\x14\x3b\x84\x45\x87\xb1\x7e\xf1\xbf\xe1\x52\x30\xa5\x5f\xb2\x9a\xb0\x9a\x0a\xfa\xa1\xbb\xd4\x85\xc7\xd9\xcf\x5f\x7c\x93\x25\x8c\x7c\x12\xdf\x56\xd5\xfb\x7d\xce\xdf\x0f\x08\x56\x02\xfe\xd0\x94\xad\x5d\x6a\xe5\x2b\x7b\xd4\xbd\xe0\x27\xca\x23\x06\x22\x9e\x48\x96\x34\xd5\xa9\x55\xac\xee\x44\xa7\x60\xc7\x5d\x5e\x4d\xf1\xd7\x4c\xf2\xd7\x6d\x00\x4a\x2f\xbe\x91\x53\x3c\x70\xf2\xe1\x2b\x0e\x57\xd8\x90\x77\xda\xe9\xc1\xf8\x99\x8a\xb5\x43\x3f\x1b\x6f\x06\x7c\x80\xc7\xe4\x6a\xdc\x5c\x8e\x7b\xa2\xdb\x6a\xdd\xf6\x7c\xe3\xf0\xf3\xc0\xe8\x1f\x40\xab\x43\xd3\x02\xb7\xd9\xf8\xa7\x58\xb2\x6a\xe6\x23\x2e\x9a\x89\x35\xb3\x22\xc2\x4a\x3d\x81\x88\x30\xf7\x83\x47\x81\x60\x5a\x93\xa0\xb9\x4f\x82\xd2\x5d\x9a\xaf\xeb\x4d\xb7\x63\x74\x0f\x6f\x4d\x94\xa3\xd0\xf2\x9a\xfb\x96\xd7\x7c\xdd\x6c\xb2\x4c\x96\x9e\x4e\xb9\x89\xb4\x28\x09\x02\x9b\x6a\x5e\x89\x12\x35\x31\xc0\x7b\x11\x43\x28\xae\xf0\x7d\xa7\xfb\xe5\xf9\x42\xc5\x95\xf8\xf5\x96\xb0\xef\xe4\x91\x07\xf1\x5e\x07\x9a\x00\x31\xa9\x6d\x81\xc2\x76\xd5\xbe\x10\xa8\x06\x0c\xdd\x21\x47\x8d\x59\x09\xe1\x02\x3d\x39\x95\x94\x1a\x83\x66\xfb\xbf\x68\x10\x70\xe9\x86\x23\x89\xed\xba\xbf\xe3\x1a\x9c\x57\x1d\x59\xa4\x42\x58\x0a\xc3\x4b\x24\xd6\x4a\xa2\x46\x6f\x0b\xbb\xb8\x90\xf8\x9d\x7b\x1a\x90\x01\x91\xae\x9c\xd5\xbf\xc8\x49\x7d\xe4\x8a\x7a\xa9\x13\x6d\xb8\x54\xcd\x92\xbf\x9e\x79\xec\xf9\xc1\xa8\x83\xc7\xd1\x3f\x1b\x21\x54\xd7\x1b\xad\xee\xb2\x3e\xdc\xa0\xf5\x4a\x9b\x8c\xad\xf3\x0d\xb2\x38\x3f\xd5\x57\x59\x8e\xb0\x4e\x35\x9d\x24\x08\x2d\xf5\x6f\x1d\xd7\x48\xe1\x71\xc3\x4b\x61\xc5\xe3\x20\x24\x89\x2f\x8d\xf4\xbd\x21\x54\x38\xc9\x79\xd5\xb0\x22\xc1\xc9\x36\xaf\x89\x51\x05\x02\xc0\xe7\x8e\x02\xed\x12\xcc\x72\x64\x74\x9d\x6f\x36\x5a\xf3\x06\x26\x94\x4a\x8a\xa2\x98\x2c\x5c\xa3\x27\x0b\x64\x69\x81\x54\x68\xe6\x0b\x4d\xea\x4c\x49\xf0\xba\xb4\x23\x4f\xb7\x4a\x66\x89\xf5\xf7\xad\x42\x9f\xad\x1f\x26\x69\x3f\x2e\x58\x65\x7d\xc1\x6a\x5f\x5e\xca\x90\x81\x23\x4f\x5e\x4a\x03\x79\x29\xcf\x34\x14\x31\x08\x93\xdf\xfa\x9a\x30\x0e\xfa\x2f\xfc\x1f\x0d\xe1\x77\xcb\x40\x58\xca\xb4\x2e\x8c\x7a\x8e\x2e\x1f\x7c\xd1\xc0\xde\x64\xfc\x73\x76\x6b\xd0\x0c\xae\xb4\x4a\xc8\x17\x8d\x52\x2c\x56\x12\x13\x2f\x15\x56\x46\x57\xa9\x58\x55\x9e\x64\x74\xa9\x1e\x7e\xe2\xe4\x03\xad\x9a\x3a\x45\x92\x26\x08\xd0\xb9\xa5\x4e\x15\x49\x8a\x96\xe9\x50\x3f\xcc\x24\xe6\xb3\x42\xd8\x25\xf1\x0c\x03\x7c\xda\x0c\x21\x84\x7f\xff\x48\x38\x2c\x77\xf7\xfc\x05\x17\x10\x6a\x5b\xb1\xbe\x95\x18\xce\x65\x72\x51\x6a\x01\x39\x10\x95\x1b\x44\x22\x20\x28\xf2\x57\xef\x53\x4c\x1b\xfe\x25\xc4\x19\x06\xde\xd2\xc0\x3f\x97\xf0\xcf\x2f\x2e\x50\x97\x32\x4d\x30\xe0\x47\xad\x93\x61\xe0\x13\xe4\x48\x79\xc9\x2f\x29\x4d\x06\x28\x22\x07\xd9\x1f\x98\xc5\x2f\x72\x16\xcd\x41\x1e\xc4\xa7\x1a\x88\x3b\xf3\x38\xa4\x24\x8c\x3c\x67\x2f\xf2\x40\xc4\x14\x36\x0b\xba\xa0\xa2\xfa\xc8\xbe\xb0\x61\x2f\xbd\x76\xd8\xb0\x27\x41\x16\x6f\x14\x42\x7f\xd5\x27\x0a\x3a\x28\x5f\x96\x80\x8d\xef\xbe\x34\x57\x0c\x8e\x7c\x83\xf8\x79\xf6\x6a\x49\x03\x91\xbd\x3f\xa2\xa7\xee\x1e\x7a\x5b\x0d\x0f\x29\x7a\x17\x0d\x0f\x4c\x5f\x35\xa2\x07\xaf\xa1\xea\x40\xf8\x23\xf9\xd5\xe9\xb0\x06\x47\xd2\x8b\xb3\x17\x8c\x24\xf2\x32\xa0\xe1\x4c\x06\xb9\x60\x0c\x34\x83\xc4\x10\x16\xdd\x31\x4c\x25\x22\xd6\xba\x3b\x3a\xa1\x19\xc3\x2c\xab\xda\x4e\xe3\x7f\xa5\x65\x49\x0a\x5f\xea\xc9\x40\xd3\xdf\x97\x06\x60\x6a\x88\x10\x98\xe6\xff\xdf\xc8\x71\x7e\xa5\xe2\xf6\x0f\x58\xf0\x2e\x61\xf8\xbb\x00\x45\xd1\xe9\xfa\x51\x04\x80\xf3\xaf\x30\x0f\xd5\xce\xbf\xe6\xac\x3b\x7e\x15\x3b\x97\xc4\x16\x0d\xf2\x4f\x76\x2e\xd6\xee\xa8\x55\x49\x2d\x10\x39\xe4\xb5\xc4\x06\x92\xcc\x80\xae\xff\x29\x42\xbf\xb9\x81\x3d\x83\x81\xdd\x56\x1f\x5f\xb2\x67\x84\xf5\x95\x9d\x66\x65\x95\xc1\xdd\x33\x08\x8f\xaa\xf4\xf9\x9e\xfd\x43\xa8\xe8\xb7\xe6\x12\x36\xd0\xea\x45\xcf\x22\x21\x30\xa5\x78\xf4\x4d\xc8\x10\x4b\xe2\x48\x4b\x91\xad\x86\xb9\xfe\xe5\xf0\x31\xe7\x7d\x49\xcd\x17\xe1\xdd\x78\xb6\x44\x0a\xd9\x12\x27\x1e\x33\xfb\x24\xb8\xb6\xe4\x4e\x04\xaa\xc2\x80\xf1\x85\x90\x53\x46\xfe\x0b\x31\x41\x7a\x73\xb2\x72\x49\x37\x2b\xf9\xea\x1f\x3f\xaf\x8e\x34\x64\x6c\x5a\xb3\x81\x69\x49\xce\xe0\x4f\x72\x32\xf2\x2c\xfd\xc2\x8a\x3e\xe0\xf8\xdc\x77\xc0\x50\x84\xd5\xcc\xb5\x1e\xab\x1e\xd8\xa5\xb9\x7a\x4f\xcb\x32\xda\x23\x2c\x8c\x21\x82\x3a\x49\x3e\xbb\x64\x89\x50\xa4\x91\xa4\xe9\x40\x1a\x27\xaf\x60\x8f\xe6\xb8\x42\x2c\x24\xfb\xb9\x21\x31\x80\xf0\xe7\xda\xd8\x0e\x73\x5f\xdc\xf6\x38\x13\x2e\xee\xa5\x64\xc5\xf4\xb7\xed\xad\xfd\xb2\xbd\x9d\x4e\xe9\x6c\xd6\xb3\xf5\xd0\x78\x2f\x5c\xa9\x35\x4c\xb8\x2a\x8b\xa4\xf3\x61\x03\x17\x39\x33\x9f\xe0\x20\x2f\x92\x4d\xa6\x7f\xfe\xdd\x7d\x7e\x5a\x96\x89\x12\xa1\xbc\x34\xab\xf7\x92\x6d\x39\xc4\x00\xca\xcb\x6e\xbb\xb1\x32\x3f\x93\x0f\x84\xd7\x44\xb7\xf2\xbd\x2c\xa1\xd1\x51\x82\xc5\xfc\xc5\x9f\x54\x85\x1f\x21\x53\xa5\x93\x43\xd8\xbd\x92\xdb\x9b\x60\x32\x67\x15\xdf\xe7\x25\xfd\x4f\xf2\x57\x30\x86\x85\x98\xdb\x08\x6b\xcb\xdf\xc4\xb7\xf8\x5d\x6f\x82\x38\x3c\x81\x8d\xae\x26\x94\xb5\x09\xd1\xd2\x59\xf6\xb6\x7e\x6b\xff\x3f\xb2\x7f\x47\xf8\x45\x91\x8b\xfc\x51\x5e\xe4\x07\x41\xf8\xa3\x8b\x03\xa7\x1f\xc0\xaa\x7a\x9d\x68\x2b\x69\xc8\x0b\x08\x76\xcc\x09\x4e\x54\x15\xca\x76\x72\x4b\x3a\x61\xbb\x74\xf0\xec\x9e\xb5\x30\xcb\xac\x3d\x30\x85\xcc\x69\xc6\xb6\x69\x29\x30\xcd\x1e\xfd\xc6\x57\xbf\xb1\x47\x5a\xb7\xfb\xe8\xb7\xf5\x6f\x9b\xff\xfe\xc8\x37\xf3\x35\x39\xc1\x2a\x5a\x9c\x2d\xce\x33\x48\x99\xa6\x5c\xc9\xe1\x27\xcf\x20\xf1\x67\x16\xb1\xa1\xe6\x2b\x9e\xa2\x25\xc7\x64\x6d\x22\xbd\x6c\x32\xc2\xb6\x10\x43\xea\xe5\x33\x63\x60\x9f\x0a\x34\x4b\xb2\x64\x16\xf9\xc2\x91\x09\x71\x6e\xd3\x1d\x36\xd9\x77\x72\x09\xe6\xaf\xe8\x27\x6a\x72\x39\xa6\xf7\xef\x1a\x5a\x16\xbf\xfc\xfc\x43\x27\x47\xb5\x0a\xa7\x5f\x7f\xa4\x3a\x62\x1e\xf0\x76\x72\xbb\x7f\x26\xdb\x8a\x17\xc9\xd2\x88\xb0\x6e\x69\x3d\x6f\x78\xf9\xa2\xe2\x2f\xec\xd7\x54\x60\x22\xf9\x22\x5b\x49\x02\xe9\x40\x8d\xa7\xa5\x8a\x5c\xab\x0a\xc3\x91\x8d\x15\xfd\x17\xf9\x21\xa5\x98\xf8\x05\x87\xc7\xf2\x2f\xee\xb3\x57\x49\x09\x73\x58\xb4\x83\x17\xfa\x5b\x6f\xec\xdf\xe7\xf5\x58\x1d\xfd\xb9\x57\xed\x5b\x52\x56\xec\xa6\x7e\x5b\x0d\x55\xb4\x05\x82\xaa\x3a\xc5\xe6\xe0\xc4\x9e\x79\xdf\xbd\x75\x6b\x20\x20\xeb\x70\xb5\x5f\xbc\xef\x41\x7f\x8a\xc0\x1c\xae\xf8\xdc\xfb\x6e\x2a\x9a\x33\xe0\x97\xbe\x36\x70\xa4\x82\x8b\xb7\xf8\x3a\x0a\x58\x9a\x5e\x35\x38\x59\x01\xe4\x0d\x11\x10\x57\x13\x27\xb7\x55\x2d\x94\x29\x93\x1e\xc1\x4f\x9c\xec\xe8\x27\xa7\xf2\x56\xe1\x9f\xe0\xeb\x21\x17\xb7\x2f\x2a\xfe\xf6\xee\x40\x52\x82\x10\x84\x5b\xd1\xd2\x54\x61\x1f\xa2\x67\x06\xb2\x0d\x30\x2b\xf3\xac\xe4\x15\xa1\x22\xa5\xa4\xc9\xa3\x04\xe1\x73\x3a\x9d\xb2\xe9\x34\x79\x94\x9c\x67\x19\x33\xf6\x36\x0b\x24\x4f\x6f\x96\x3c\x4a\x66\x0c\x61\xd6\xe2\x2e\xd4\x77\x26\x1a\x5f\x1d\x81\x09\xf2\xab\x3e\x2d\xcb\x98\x8b\x52\x77\x4d\x6d\x1d\x00\xec\xd3\x7a\x0a\xeb\x7c\xce\x18\x83\x11\x4a\xe8\xfe\x82\x6a\xfa\x5c\x7c\xd1\xa2\xd8\xa3\xf1\xd9\xb5\xfd\xe3\xf1\x59\xeb\xea\x1f\x90\xcf\xee\xd5\x3f\x24\x9f\x57\x59\xc1\x77\xec\x88\x0c\x9d\x0d\xd6\xfb\xc0\xf2\x3d\x51\xd2\x0d\xc5\xd7\x19\xc8\xe5\xc7\xa3\xbe\x62\x6c\xcc\xb5\x7f\xfb\xed\xd1\x6f\x8f\x74\xf2\x05\x82\x8e\xc7\x47\xb7\x42\x1c\xd2\x1a\xad\x96\xc1\x87\x15\x59\x26\x8f\x92\xcc\xcb\x89\xbc\x40\xab\x24\x99\xf1\x19\x59\x8a\x99\x3c\x01\x44\x67\xfc\x5c\x6f\xac\x31\xca\x74\x4a\xed\x01\x64\xf6\x81\x21\x4c\xdd\xd1\x6a\xb1\x77\x6a\x97\x7d\xd2\x4e\x4d\x4d\x27\xfd\xdb\xe6\x7b\x22\xe9\x09\x2f\x77\x29\x9f\x1f\xca\x86\x03\x95\x21\xc1\x0d\x4c\x6a\xbf\xd5\x8b\x0a\xd7\x5a\xd6\x80\xf7\x95\x20\x7c\x4f\x19\xf9\xb6\x2a\xee\x7e\xe2\xd5\x9e\xd6\x24\x8b\x6d\x4b\x0a\xc6\x36\x2a\xfe\x91\xea\xfa\xe7\x37\x7f\xfb\x69\xce\x49\x5d\x95\x1f\x48\xca\xd1\x5c\x45\x3f\x8d\xca\x35\x5a\x84\xd0\x5c\xdc\x12\x16\x9a\x8d\x75\x23\xd2\xf8\x79\x41\x0d\x73\x7d\x4e\xe6\xd5\x7b\x1b\x2d\x12\xa2\xae\xd2\xec\x9f\xdf\xbc\xfe\x51\x87\xaa\xe5\x26\xec\xaa\xce\x01\x98\xe6\x7e\x54\xbc\x37\x77\x4c\xe4\x9f\x20\x12\x9f\x35\x6a\xc8\x27\xf9\xfc\x90\xdf\x95\x55\x5e\x64\x12\xbb\xe6\xda\x2f\x5f\xb1\x91\x4d\xad\x17\x10\x3a\x3e\x1e\xbf\x59\xfc\xf9\x1c\x02\xd1\x7f\xb3\xf8\x8b\xfa\x91\x7c\xff\xdd\xd3\xe7\x12\x68\xc4\x7c\x4f\xc4\x6d\x55\xac\xd8\xf1\x48\x97\x8a\x72\x69\xf5\x24\x5a\xa3\x17\x6a\x31\x99\xef\x88\xd8\xde\x76\xb2\xc9\x2b\x26\x37\xb3\xee\xc7\xb5\x92\x34\x40\x14\xa6\x34\x81\x1a\x09\x32\x99\x17\x99\x7d\x63\x88\xaa\x49\x9d\xf5\xdc\xfe\xcf\x48\xab\x6c\x4b\xe9\x2e\x75\x74\x92\x8d\x2e\x05\x2d\xf4\xe3\x13\x6e\x21\x22\xfa\x99\xbc\x87\xcf\xc4\x2d\x39\xfb\x77\x28\xf7\xef\xda\x47\xee\xac\xe2\xc1\xdb\x9b\xb2\x7a\x97\x97\xf3\xb3\xe7\xb4\x38\xbb\xab\x9a\xb3\x3d\xc9\xd9\x99\xa8\xd4\x9a\x97\xa5\x2a\xab\xc8\x47\x5d\x03\x1c\xd2\x56\x09\x8a\x8e\x18\xca\x58\xff\x9e\x3a\x85\x98\x31\xb0\xb1\x3f\x93\xfa\x50\xb1\x9a\x7c\x4f\xf2\x82\xf0\x3a\xc2\xdb\xbc\x06\xa7\x3e\x43\x9c\x29\xaf\xdb\x20\x84\xa0\x98\xf8\x3c\x8f\xca\x1b\x4e\x8d\x82\x8b\x47\x15\x5c\x55\xc6\xd7\x0c\x14\x04\xb8\xce\xce\x2f\xaf\x72\x67\xbf\x97\x2b\xfd\xd5\x5f\xfe\x57\x96\x69\x57\x2b\x9d\x23\x32\x47\xe8\xbe\xce\xce\x17\x5a\x01\x25\x87\x70\x09\x3b\x6b\xac\xfd\xe6\x75\xf3\x4e\x39\x57\x43\xee\xf3\xb9\xe0\x54\xf2\x4e\x65\xf0\x25\x9f\x5d\x62\xeb\x2f\xa6\x8b\x40\x70\x21\x24\xd6\x4d\x28\x17\xdc\x64\x25\x16\xeb\x66\x93\x95\xad\xcb\x1a\x00\xe2\x16\x4e\xe1\xbc\xbf\x64\xa2\xfa\x3e\xaf\x6f\xb3\x2e\x9d\x6a\xe8\xeb\x2c\x03\x6b\x38\x96\xdd\x53\xb6\x2d\x9b\x82\xbc\x2c\xc0\x9e\x63\x62\x4d\x6d\x4d\x53\xfc\x05\xb0\x87\xfb\xaa\x20\x25\xe4\x9e\x99\x04\xc0\x65\x89\x70\xda\xef\xdd\xc8\xc1\xee\x5b\xe7\x0f\xde\x2b\x94\x56\x7a\x64\xd8\x08\xfe\xfd\x52\x20\xe7\x0f\xa6\x06\xf7\xf3\x4f\x39\xcf\xf7\x31\x90\x70\x28\xd6\x72\x16\xc4\x73\x5d\xc7\x35\x6e\x94\x38\x8f\xee\x52\x15\x10\x84\xd6\xf0\x37\x65\x2a\x7a\x10\x85\x8d\xb7\x9a\x21\xfa\xb8\x06\x63\x94\x4a\xe7\xe0\x41\x2b\x95\x66\x85\xad\xe9\x06\x2d\x49\xca\x25\x5b\x3a\x4b\x7b\xfe\xa5\xf2\xfb\x8a\x2e\x93\x04\x49\xf6\x54\x15\xb7\x2e\x72\x7d\x04\x99\xac\x55\x03\x67\x0a\xa4\x37\xf2\x3a\xd1\xd0\xed\x02\x96\x88\xca\xe2\x7a\xc9\x06\xa0\xd6\x8c\xb9\x39\xa3\xec\x8c\x21\x33\x9a\x46\x77\xd9\x98\x2e\xf5\x90\xdd\x00\x3e\x67\xe6\x10\xe7\x6d\x4d\x37\x10\xf4\x57\xfd\xfa\x90\x97\x0d\xf1\x1c\xdc\x6d\xff\x8d\xee\xd5\x45\xcf\x4c\x12\x4c\x90\xbe\xd2\xa6\x09\xf2\x02\xfa\x7e\xb3\x78\x74\x83\x93\x99\xbc\xe6\xf4\x4c\x15\xbf\x6a\x83\xd8\x10\x9c\x5c\x5f\x93\xfa\x15\x60\xa1\x04\xdf\x43\xaf\xd6\x6d\x78\x8c\xb9\x25\x9a\x73\xf6\x38\x5b\xbf\x58\x2d\x2a\x4e\x1c\x07\xdc\x61\x6d\x87\xa2\xbe\xea\xa8\xac\xf6\xf8\x08\xc8\xe8\x9d\x3c\x55\x7d\x9e\x59\x01\xd5\xd9\x2e\xa7\x25\x29\x12\x1d\x30\x94\xd6\xba\x84\x8a\xf4\x7e\xbe\x98\xf8\x04\x0b\xbc\x54\xfb\x09\xe4\x89\x40\x13\xc8\x14\xae\x43\xe9\x6f\xdf\x67\x3a\x5e\x92\x8e\x3e\x4a\x54\x70\x62\x5a\xb1\x8c\xfb\x4f\x3a\x4b\x2e\x2d\x09\x64\xab\xe1\xf6\xa7\xfa\x50\x52\x46\x7e\x6c\x64\x8f\x3a\x79\xb7\x7a\x50\x1f\x75\x54\xf1\x8c\x9b\x5f\xea\x35\x53\x0d\x31\xdb\x08\x33\x0d\xa8\x1f\x7a\x7e\xb0\xd6\x75\x46\x8e\xc7\xf5\xbd\xa0\xa2\x24\x4b\xbb\x24\xdf\xa9\x6d\x28\x88\xc8\x69\xb9\x14\xed\xa6\xfd\xdc\x8d\x1e\x86\x0c\xd5\xad\xc4\x1f\x6f\x2b\x80\xe2\x04\xdf\x13\xd6\xec\x09\xcf\xdf\x95\xb2\x32\xbe\x21\xa2\x1f\x17\xe7\x4c\xcc\x7b\x35\xdb\x87\xfb\x81\x72\x6f\x01\x5d\x7d\x66\x3f\x5e\x4d\xd9\x0f\x99\xbf\x21\xfc\x83\x01\x06\x32\x7f\x56\xb1\x5d\x49\xb7\xc2\x3c\xff\x58\x89\x17\x55\xc3\x0a\xf3\xfc\xa2\xe2\xef\x68\x51\x10\x66\x5e\xfc\xc2\xf2\x46\xdc\x56\x9c\xfe\x27\xb1\x85\x9e\xbe\xab\xb8\x6d\x41\x67\xc6\x30\x8f\x2f\xd9\x87\xbc\xa4\xb6\xa8\xf1\xc2\x56\x50\xac\xa5\x36\xdc\x4f\xe8\x47\xfa\x44\x99\x25\xb2\x53\x07\xfc\xab\xfb\x76\x29\x90\x81\x18\x6b\x8e\x0f\x4c\x76\x3f\x30\xa6\xaa\x1e\x86\x12\x21\x1e\xd8\x73\xcc\x8e\x47\x81\x5a\x8f\x72\x35\x58\xaf\x73\xc9\x13\xf7\x05\x61\xae\xdd\x12\x32\x2a\xc9\x68\xde\xba\xf9\x31\x3c\xdc\x84\x7f\xf2\x82\xc6\x1c\xa6\x95\x6c\xb0\x3d\xda\x1a\x8c\x83\xce\x74\xbc\xba\x2a\xe5\x38\x79\x7b\x4b\xce\x34\xe6\x39\xe3\xe4\xef\xe0\x49\x08\x54\xd0\xb6\xda\xef\xa9\x38\x7b\x47\xb6\xb9\xc4\x28\x54\x9c\x7d\xcc\xeb\x33\xaa\x76\x04\x14\x05\xc1\xee\xe4\x38\xef\x0d\xc1\x2f\x90\x68\xb7\xe1\x5e\xa7\x0e\xf5\x08\xba\x27\xc5\x59\xd5\x08\x68\x3d\x00\x85\x1a\xd7\xbd\xd6\xfd\x02\x89\x96\x7a\x8d\xb4\x2e\x47\x9f\x4b\x58\x23\x6a\xf4\x1e\xdc\x35\xb8\xe9\x2f\x9f\xfd\x9c\xe8\x78\x9d\x23\x6d\xd3\xfa\xac\xf1\x40\x1b\xda\xef\xc3\x7a\x89\xcb\x5e\x37\xbd\x52\xaa\xb7\xed\x03\xbd\xed\xcc\xc9\x82\xae\x3a\xe7\x6c\x8b\xb7\xbd\x7e\xc2\x22\x89\x76\x29\xe9\x75\xb2\xad\x9a\xb2\x38\x0b\xe8\x69\xc9\x21\x35\x7c\xab\x54\xd2\xe1\x09\xdf\xe1\x5d\xaf\xa3\xa0\x44\xa2\x73\xcd\x8c\x4c\x46\xdd\x37\x67\x45\x43\x24\x19\x9e\x9f\x6d\x35\x4e\x81\xee\x42\x04\x53\xe0\xa2\xd7\x5d\x50\xc2\x5a\xdd\x9c\xde\x5d\x0d\x08\xed\xcc\xe4\x57\x0b\x31\xdc\x2d\xbe\xed\x75\xe8\x7d\x4f\x1e\xba\xc9\xc1\x5b\x6b\xf8\x26\xef\x49\xb3\xc7\xef\xf2\xaf\x77\xfd\x04\x6c\xf4\xc9\x57\x42\x50\x4b\x5d\x07\x11\x84\x6c\x68\x03\xdd\xb9\xc2\x3a\xa9\x11\xf2\xbf\xb1\x74\xf9\x32\xb9\x30\xe2\x76\xec\x64\xcd\x2a\xae\x9b\x16\x23\xab\x07\x65\x3b\xe3\x7e\xfa\x05\x6f\x08\x93\x1b\x4b\x5e\x16\x2f\x2a\xee\x7f\xb0\xf4\x76\x5c\x44\xe3\x11\xe4\x20\xca\xf2\x25\xb1\xaa\x01\x5f\xc8\xaa\xde\xf8\xd2\x53\xf5\x66\x5b\xe5\x25\xa9\xb7\x44\x89\x05\xff\xa3\x21\xb5\xa8\xe5\x02\x1a\xd1\xb3\x1e\x23\xaf\x9a\x83\xaa\x56\x3f\x24\x66\x5b\x8b\x4d\x8b\xeb\x5b\x79\x08\x7f\x26\x92\xc1\xef\xca\x99\x4c\xc1\xf3\xcb\xb0\x5c\x28\x5a\x74\x0d\x9e\x1b\x05\xa2\x29\xfe\x6d\xbe\x7d\x7f\x03\x46\x5c\x0f\x74\xb0\x18\xaa\x11\x74\xe5\x15\x07\x01\x8d\x01\x08\xfe\xd0\xd1\xf8\x7b\x5d\xb1\x8b\xfc\x40\xc3\xd3\xd1\xd5\xdb\x3c\x70\x5e\xe2\x9f\x39\xa9\x45\x5f\xe3\x23\x2f\xed\xdf\x77\x9c\xa2\xe0\x4e\x33\x66\x5e\x8f\xc2\xba\x9b\xef\xb5\xfe\xfc\xac\x62\x82\x30\x01\xd2\xb1\x24\x3f\x28\x5b\x71\x5a\xb1\x47\x1f\x58\x31\xcf\x0f\x74\xa6\xd2\x30\xe5\x7f\xcf\x3f\xa9\x2c\x15\xf5\xb2\x27\x68\x32\x04\x8d\xd2\x30\xdd\x6b\x06\x98\x29\xa1\xf9\x75\xdd\x40\x4a\x45\x1c\xc4\x75\x04\xf5\x2f\xe1\xf5\xfc\xe9\x76\x4b\x0e\x22\xeb\xbe\x38\x1e\x47\x06\xc3\xda\x01\xa0\xbf\x74\x40\x1f\xe1\xd9\x95\xda\x5a\x8e\xc9\x49\x45\x1d\x4b\x0e\x0a\x28\xa7\xaf\x71\xfc\x97\xac\x20\xa7\x9f\x52\x9c\xfc\xd3\x77\x6f\x13\x7c\x2f\xf7\x79\x79\xbf\xa3\xa5\x20\x7c\x79\x4f\x8b\x25\xd7\xcc\x19\x4e\xc0\xf8\x6f\x5c\xe6\xc8\x43\x99\x63\x91\xd7\xb7\x84\x07\x42\x47\x48\xe1\x6c\xc5\x8e\x08\xbc\xcd\x9b\x21\x69\xb1\x9b\x5a\xba\xc0\x3c\x22\x3f\xd0\x85\x8c\x8a\x23\x3a\x77\x36\xa7\x85\x9c\x7e\xa0\xd4\x89\x2c\x41\x85\x93\x9f\x9e\xbe\x7d\xf6\xbd\x59\x04\xda\xa2\xf0\xc4\xd1\x87\x4e\x1c\x1c\x8b\x87\xee\xa2\x81\x23\xa5\x59\xd2\xcf\xba\xbd\xbe\xce\x91\x03\x01\x9b\x86\xff\x6c\x37\x74\x06\x93\xc6\x24\x29\x71\xe2\xc2\xbf\xff\x8b\xb6\x96\x8c\x7d\x64\x72\x51\x7b\xea\x5b\xbb\xa3\x5a\x4c\x4b\xe6\x2a\x5e\x97\x91\xe5\xe9\x78\xdd\x4d\x8d\xed\xa9\x51\xc2\x52\x25\xc1\xad\xec\xfd\xe2\x09\x98\xb5\x4c\x7a\xae\x68\xeb\xb4\xb2\xd9\xaf\xe8\x74\x4a\x3b\xfc\xf5\x6a\xb8\x1e\x45\x4b\x1a\xe4\x8a\xc5\x7e\x16\x74\xe5\x39\x0e\xbb\xf4\xf6\x96\x57\x1f\x99\x2f\x43\x86\xa6\xa7\xd3\x04\x44\xbe\xa8\xca\x82\x82\x2e\xf0\x91\xce\x3f\x98\x64\x99\x4e\xd0\xf1\x06\xa6\x8a\x2a\x48\x0e\xc8\x03\x7a\xdc\xd5\x02\x8a\xba\x5b\xe7\x78\x5c\xc0\x9b\xda\xb4\xd0\xd7\x79\x40\xfa\x2a\x90\x3e\x43\x98\xad\x86\x97\x60\xd7\xea\x8d\x0c\xfc\xd4\xf4\x72\xd7\xd9\x03\xec\x79\x9a\x68\x5c\xa4\x09\xbc\xe5\x59\x32\x63\x10\x87\x92\xc2\xff\x69\x75\x3c\x26\x09\xb2\xb2\x4b\xd5\xee\x32\x6f\xad\xc0\x4d\x4d\xd2\x51\xfd\x69\x8d\x5a\x30\xe4\x50\x73\x95\x00\x51\xf5\x01\xc2\xcc\x51\x9b\xd5\x00\x40\x40\x94\x2e\x6f\x1e\xcc\x93\xf0\x57\x59\x6e\xf6\xbf\xf2\x93\xe8\x92\x20\xee\x76\x53\x2f\x8d\x30\x1f\xbb\x55\x5d\x12\x6f\x89\xb1\xee\x6e\xb9\x4d\x89\xe9\xda\x67\x5d\xcb\x53\x9b\x54\xef\xde\x92\x4f\xc2\x36\x99\x2e\x30\x8b\x0a\xb1\x91\x32\x91\x7b\x5a\x96\x9d\x0f\x29\xf2\xfb\xf6\xc2\x25\x38\xd9\x29\x04\xce\xdd\x55\xfc\xbb\x3c\x54\xb2\x78\x91\xfd\x21\x40\x3e\x01\x57\x66\xd7\xd8\x4e\x67\xd6\x21\x92\x01\x2e\x08\x13\x34\x2f\xeb\x2c\xa9\xf3\x3d\xb9\xa8\x38\xbd\x91\x04\x2c\x81\x60\xf5\x48\xc2\xa3\xbc\x27\x40\x99\xa5\x80\xeb\x78\x54\xda\x0e\xef\x15\xb4\xa6\x31\xd1\x7b\x72\x57\xa7\xba\xb6\x91\x5d\x5b\x23\xb9\x86\x97\x36\xde\x42\xb2\x4a\xd0\x93\x8b\xcb\x55\x32\x4d\x96\xc9\x2a\x99\xc0\xd7\x59\x96\x24\x33\x31\x83\xe5\x8a\x09\x78\x91\x69\x5a\xa9\x35\xbe\x44\x4a\xaa\xea\xaf\x08\x64\x95\x57\x6a\x23\x25\x6f\xa7\xbb\x3b\xf3\x75\xa9\xbf\xaa\x47\xbb\xde\xad\x62\xbd\x44\x97\x3c\xe9\x10\xf2\x38\x4a\xae\xa8\xcb\xe2\x41\x52\x45\x52\x05\x57\x67\xdb\x5b\x09\x2b\x22\x6b\xc4\xee\xe2\x7f\x25\x78\x97\xd7\xe2\x5d\x55\x89\xa5\xc2\x66\xdb\x6a\x7f\x68\x04\x29\xd2\xfb\x01\xc6\x02\x68\x15\x53\x69\x15\x3e\x2e\xc3\x47\xa7\x0f\x7d\xfd\x91\x11\xae\x32\x74\xce\xcb\xaa\x7a\xdf\x1c\xd2\x44\xf2\x72\x74\x4b\x96\xa6\x74\x82\x5a\x5c\xfb\x7d\xf6\xb5\xb4\xb6\x61\x21\x19\x9a\xa6\x26\x2f\xe4\x7d\xd3\x1d\xb9\x6f\xc1\xa4\x14\x5a\xd1\x71\x68\x5d\xe2\xcf\x90\x8b\x51\xdb\xfb\x25\x92\x9f\xa5\x37\x4b\xc2\x3e\x50\x5e\xb1\x3d\x24\x9d\x37\x1a\xba\xf3\x14\x4e\x05\x34\xf6\xdd\x8f\x7f\x9b\x4e\x21\x85\x95\x7b\x31\xbf\xfe\xe7\x7f\xf9\xe5\xbb\x9f\xff\xf5\xfa\xe5\x8f\x6f\xbf\xfb\xa7\x9f\x9f\xbe\x7d\xf9\xfa\x47\xc8\x89\x32\x9d\x9e\xc3\x7d\x5f\x57\x5c\x78\x00\x17\xd1\xb2\x06\x80\xee\x5b\xa9\x83\x1e\xe1\xf1\x37\xd6\xb9\xcb\x0b\x60\x7f\xdf\x42\xd0\x19\x15\xbe\xc0\x38\x82\x82\x07\x28\x5b\xd3\x75\xb5\xd9\x64\x44\xfd\xb5\xb8\x73\x9c\x2c\x8c\xd1\x4e\x9f\x47\x18\x1a\xba\x28\x20\xa5\x94\x99\x10\x7b\x90\x5e\xac\x24\x5d\xb8\xeb\xd9\x5f\x0c\x0d\xc2\x34\x3b\x4e\xb6\x49\xce\x4e\x0f\x0e\x82\x9b\x78\xaa\x71\x79\x29\x50\xb6\x25\x99\x11\x32\x1b\x02\xce\x1b\x93\x24\xdf\x34\x67\x1b\xd5\x1e\x3f\xd8\x35\xd8\xec\x2a\x0b\x2a\x8f\xba\x57\x92\xf7\x10\x28\x9c\x15\x4d\xe7\x43\xca\x91\x3f\x40\x16\x0c\x90\xdb\x01\x46\x77\xef\xf3\x87\xa9\xb7\xf0\x8f\x1b\xec\x3f\x90\x01\xa1\x45\xbd\xe4\xad\xe9\x34\x66\xfd\xe2\xad\x90\x24\xf0\xe5\x71\xb2\xdd\x59\x50\xe9\x5a\x3e\x69\x8d\x86\x1d\x22\xc5\x0c\x0b\x1c\x18\xa6\x05\x8b\xc0\xd5\xa8\xf4\x30\xe2\x86\x34\x5f\x7b\x20\xce\xd4\x6d\x60\x28\xdb\xb8\x55\x8e\x1b\xc9\xd8\x46\x00\xbc\x70\x1c\x5a\xc6\xc9\x93\x18\xde\xb1\x21\x87\xc5\xe3\x1b\xf6\xd3\xeb\x37\x21\x0a\x18\x66\xe4\xb8\xc7\xc8\x0d\x77\x83\xef\x21\x5e\x23\x97\xeb\x98\x8f\x4c\xa2\x92\x33\x78\x88\x9f\xcb\x71\xf2\xd3\x2f\x21\x3a\x28\x86\x2c\x8b\xdc\x1e\xca\xbe\xfb\x6d\x8d\xac\xa7\x1c\x4a\x60\xf6\x87\x70\xf2\xfc\xbb\x1f\xbe\x7b\xfb\x9d\xdc\xab\x6b\x49\x4b\x1c\x5e\x3e\x7f\xc1\xab\xfd\xa0\xf5\x1e\x1e\xdb\x30\x00\x2a\x81\xb4\x71\x02\x58\xd4\x55\x59\x10\xc1\x02\xc8\x78\x37\xea\x82\xf4\x8c\xf4\x2a\x94\x65\x59\xbe\x0a\xe3\x5e\x24\xc9\x32\xe5\x59\x85\x59\x96\xac\x68\x91\x25\xb3\x1c\xc7\x6c\x42\x34\xb1\xe4\xe8\x27\xc2\x8a\xfa\x57\x2a\x6e\x57\x17\x2a\xc9\xbb\x21\xe0\x18\xb6\xf1\x3c\x8c\x8e\x18\x2d\xb9\x2d\x9e\x32\x48\xd3\x17\x8e\x21\x34\x7c\xb0\x81\x8b\x5c\x9a\x2a\x84\x3a\x16\x4f\xfb\xfc\xd3\x2f\x3f\xff\xf0\x83\x4a\x77\xf1\xcd\xe2\xcf\xff\xeb\x44\xe9\x9f\x92\x4e\x48\x16\xe4\x55\x7e\xc0\x0a\xad\x9a\x75\xf7\xdb\x9c\x88\x08\x09\x2d\x5c\x5c\xf9\xce\x86\x42\xe3\x13\xc8\x5e\x9b\x52\x08\x29\x55\x13\x91\x52\xbc\xde\x20\xac\xac\xca\xa8\x4e\xea\x27\xac\xc1\x4f\xe5\xdb\x79\xc5\x7b\xf3\x1e\x54\xec\x61\x55\x6f\x81\xf3\xf8\x10\xd6\x8b\x0d\x92\x2c\xdc\xda\x51\x0c\xb1\x79\x38\xff\x94\xbe\x21\x27\x99\xd3\xc2\xc6\x80\xa0\x13\xb3\x05\xb3\x6a\x26\x20\x3c\x67\x2a\xbb\xaf\xd5\x5c\xd6\x1b\x84\x70\x35\xcb\x84\x16\x86\xd5\x76\xbf\x26\xf5\x9a\xe9\x6c\xbd\x04\xd4\xf0\x75\x8b\x52\x81\x29\x4e\xa6\xb4\xa8\xff\xc7\x5f\xbe\xfd\x1f\x7f\x79\x9e\x25\xd6\x88\x25\x3a\x44\x9b\x79\xc3\x35\x23\x5b\xaa\x5a\x1c\xb2\x86\x1d\x51\x91\x0e\xd1\xac\x95\xea\x6f\x9a\xed\x96\xd4\x9a\x8b\x77\x09\x87\x27\xae\x84\x56\x9d\x75\x4b\x00\x93\xea\xab\xd5\x52\xa6\x55\xb5\x36\xa6\x33\x28\xbb\x8d\x7d\x3e\x94\xb1\xdc\xaa\x96\x47\x69\xe4\x65\x84\xe7\xc5\x73\xe0\xa1\x49\xf1\x4a\xa9\x43\xed\x80\x27\xda\x24\x9c\x28\x93\xf0\xb3\x3f\x2f\x2e\x97\xc1\x40\x7a\xca\xab\xb4\xc2\xb9\x32\x36\x3e\xfb\xf3\xe2\x4f\x61\xe1\x50\x03\x15\x94\xfc\x73\x58\x32\x50\x21\x05\x05\xff\x77\x58\x30\x50\xfe\xa8\x82\xc6\x5e\x59\x72\x8c\x4f\xb2\xbf\x2c\x16\xe1\xd2\x79\xda\x1b\x28\xdf\x06\x5f\x75\x65\xf5\x05\xdb\x6d\x8a\xe6\x15\x78\x92\x7d\xb3\x58\x4c\xa7\xe4\xf1\x9f\x16\x8b\xe3\xf1\x4f\x8b\x3f\x4b\xca\x5d\x56\xd2\xbb\x13\xab\xf4\xe7\x6f\xbe\x51\xa5\x24\xda\x8e\x5f\x41\x9a\xea\xc4\xdb\x9e\xe9\xa7\x61\x4e\x12\x84\x77\xd9\x7d\xc3\xcb\x25\xc1\x8a\xa3\x5d\x8a\x16\x17\x59\x35\xf7\x44\xc5\x9d\x8b\x71\x6b\xd8\x2a\xd9\x80\x26\xcf\xd3\xa2\x67\xd2\xe8\x46\x4a\x33\x82\xe1\x32\x8c\xd9\x57\xca\xfb\x70\x27\xa1\x3e\x52\x5f\xb9\x47\x57\xef\x8f\x47\xd2\x93\x41\x69\xdb\xbd\x98\xf3\x81\x82\xdd\x26\xe5\x68\xf2\xcd\x62\x01\x16\x6a\x4a\x30\x31\x9d\x8a\x5e\x3b\xab\xb4\xf2\x05\x2c\x99\xc0\x22\x0b\xde\x18\xf3\x48\xb4\xec\x94\x64\x58\x32\xf6\x20\xda\x08\x4f\x86\x70\x49\x73\xd5\xda\x41\x68\xe2\xb4\xc2\x04\x53\x45\x95\xec\x50\x2f\x91\x79\x87\xbe\x84\xd1\x1b\x1b\x4d\x7b\x88\x4c\x23\xb0\x60\x4b\xb0\x5b\xec\x09\xf9\xba\xb1\xe1\x8a\x79\xad\x20\x2f\xc8\x63\xe7\x7a\x1a\x1a\x41\x39\x38\x02\xf9\x6b\x87\x26\xaa\x6b\xde\x68\x0b\x78\x98\x18\x91\x45\x70\xa1\xd6\xc9\x6f\xfa\xa4\x0e\x05\x9a\x04\xd2\xae\x8c\x4f\x8c\x35\x6a\x6c\x99\x25\x8f\x0c\x3f\xdf\x92\x4f\x22\x58\xf2\xca\x5b\xad\xc1\xb1\x0a\x18\x6b\x35\xbf\x06\xba\xa7\x40\xad\x24\x67\xde\x2c\xcf\x7e\xfe\xee\xcd\x5b\x2d\x18\xfc\x6f\xf2\x93\x4e\x52\x2d\xaa\xb3\x64\x46\x24\xa1\x23\x5f\x6a\xb8\x0f\x0e\xa6\x12\x12\x2b\x32\x0a\x0a\xb2\xa1\x92\x12\xb0\xab\xbe\xf5\x29\x94\x3f\x2b\x2a\x52\x83\xd6\xbc\x26\x64\x2f\xbb\x7d\x47\xce\x4c\xd6\x6c\xca\xce\xee\xaa\x86\x9f\xe5\x87\x83\x33\x3b\xad\x3e\x10\xce\x69\x01\x66\x15\x1f\x68\x7e\xf6\xef\x79\x51\xbc\xe6\xaf\xf5\xdb\x37\x39\x2b\xde\x55\x9f\xfe\x09\x6c\x55\xeb\x7f\x87\xfc\xa6\xb7\xe4\xcc\x08\x2b\xb4\xd2\x7a\x95\xa0\x09\x73\x23\xf7\xcf\x76\x44\x10\x00\xa7\x59\x99\xd0\x6a\x4b\x5d\x6b\x66\x9a\x2a\xf9\x2b\x41\x93\xff\x32\xe3\x5a\xbd\x45\xc1\xb8\x87\x11\x60\x0c\x9b\x11\xb4\xec\x56\x30\xeb\x35\xa7\xf5\x8b\xbc\x16\xdf\x82\x48\x48\xd7\xf5\xf7\x59\xd6\x55\x6f\xc3\x97\xed\xa8\xf2\xcd\x68\x93\xf2\xba\xa6\x37\x2c\xed\x60\x64\x2c\xa9\x51\x89\x98\xb9\xd1\xc9\xf5\x6c\xfc\x95\xe8\x34\x41\x13\xeb\x33\xc6\x56\xdc\xc8\x72\x3b\x8d\xb7\x92\x94\xb7\x72\xde\xa5\xfd\x79\x3c\xa6\xae\xca\xbd\x35\x80\xe5\xf3\xad\x13\xd9\x1d\x8f\x6a\x72\x7d\x61\xde\x24\x50\x57\x44\x57\x3a\xe5\x20\x55\x9c\x4e\x81\xbf\x03\x92\x5a\xce\x0c\x52\x21\xea\x7e\xd7\x89\x6e\xf2\x42\xb6\x99\x6c\x4c\xe8\x52\xf8\xa4\xc7\x71\x21\xf4\xa7\x74\xf0\x5b\x46\x11\xc2\x3c\xdb\x69\xee\x13\xa1\xe5\x48\xdf\xe1\xf2\x70\x7c\xef\xcd\x77\x09\xa2\x31\xde\x51\x3a\x28\xe9\xa8\xfc\x9e\x25\x4a\x99\x49\xd4\x22\x7d\x12\x99\xd0\x12\x64\xd7\x13\x31\x3d\xa9\x0f\x03\x92\x57\xe7\xaa\x34\x7f\x07\x31\xa1\xdf\x10\x56\x04\x1e\xfb\xa1\x9c\xd9\xec\x5f\x84\xb2\xf4\xa4\xe0\x92\x48\xd7\x40\xa8\xc4\xeb\x29\xc7\xb6\xee\x9a\x6f\x74\x6a\xd2\xd6\x2e\x14\xe6\xf2\xfc\x66\x0e\x84\x25\xdd\x0d\xef\x10\xe6\xfa\x64\x85\xec\x1d\xa0\xb3\x93\x8e\x4b\xe8\xad\x11\x29\xcc\xd5\x48\x15\x0b\xb6\xad\x4a\xf0\x72\x7c\xb0\xb4\x72\x70\x91\x68\xa8\xe3\xa7\xa2\x91\x12\x08\xd6\x09\x98\xc3\x3f\xfa\xb7\x5b\x21\x0e\x75\xc7\x6d\x05\x09\x7e\x67\x57\x6c\x96\x3c\x7a\x04\x1e\x2b\x5a\xd1\xc2\xd0\x7d\x0f\x93\xfd\x6b\xd5\x9c\xe5\x9c\x9c\x35\x35\x65\x37\x0a\xe2\xcf\x9e\xe7\x22\x3f\xfb\x48\xc5\xed\x19\xab\xce\xe4\x90\xfa\x48\x5b\x5d\x2a\xf3\xb3\xb7\xb7\xb4\x3e\xfb\x48\xcb\xf2\x2c\x17\x82\xec\x0f\x42\xe2\xb5\xa6\x26\x80\xd3\xa0\x6a\xb5\x83\xdf\x66\xe9\xce\xf4\x54\xf1\xd9\xc7\x5b\xba\xbd\x3d\xa3\xea\x82\x50\xe2\xe0\x86\x93\xe2\x6c\xa7\xb1\xa7\xce\x14\xef\xb5\x42\x6b\x53\x7b\x7e\xf6\x53\x49\x24\xed\x5b\x13\x61\xbb\xfa\xf5\x96\x0a\x52\xd2\x5a\x9c\x1d\xb4\x0e\x15\xda\x32\x63\xf6\x44\xcd\xf3\xbf\xd7\x73\x37\x22\x58\x09\xd0\x8c\x19\xcb\x47\x64\x0d\xf0\x49\x8b\xfb\xf7\x75\xe4\x1a\x21\xa0\x1a\x15\xbe\x07\x0b\x31\xfa\x2d\x8e\xee\x3d\x7b\xfe\x38\x0f\xd2\x47\xa3\x56\x6e\xda\xb3\x42\xe7\xd3\x29\xd7\xdc\xcd\xca\xfc\x58\xae\x8d\x3a\x2b\x49\x66\x04\x6b\xa5\xe0\xdb\x5b\x72\xf6\x2e\xdf\xbe\x27\xac\x38\x53\x14\x46\x41\x0a\xb5\xb3\x39\xd3\xc6\x5d\x46\x55\x98\x24\x33\xde\x6e\x5a\x3c\xc4\xfe\x0c\xc9\x0f\x21\x5c\x58\x0f\x9f\x25\x10\x6f\xeb\x2c\xc0\x80\xd6\x5d\x20\xf3\xf2\x4e\x65\xe0\x7b\xc3\x6d\x82\xf9\xbf\x2c\x56\xc9\xfa\xf5\x9e\x0a\x41\x8a\x33\xc5\xdd\xdf\x9d\x7d\xff\xf6\xd5\x0f\x9b\x64\xc9\xf1\x3a\xf1\x20\xd4\xa8\x36\x93\x59\xca\xb4\x12\x0b\x94\x9a\x0c\x8e\xf8\x2c\x39\x53\xfd\x91\xe2\x2c\x97\xf4\x0e\x4e\x7e\x52\xe4\xef\x59\x0a\x7e\xe0\x28\xc1\x74\xa3\xa5\x14\xbf\x31\x79\xd7\x3a\x39\x77\x64\x87\xef\x21\x4b\x2b\x71\x11\x8a\xb5\x8b\x85\x32\xed\x36\x4f\x19\x47\x6e\xaf\x03\x43\x84\x62\xc8\x10\xa1\x20\xef\x9a\x9b\x87\x6c\xe2\x54\xa1\x9a\x88\xe6\xf0\xb5\xcd\xe1\x46\xcd\xd5\xe4\x42\x6b\x0a\xd2\xda\xf1\x80\xa5\xbd\xa6\x2a\x28\x83\xde\xb4\x8a\x29\x4d\xe0\x5b\x82\xf0\x0d\x11\x2f\xc0\x1c\xa5\xee\xab\xb6\xd6\xf7\x2c\xdf\x93\x65\x42\xeb\x1f\xc9\x47\x09\x7f\xf5\x76\x99\xc8\x9f\x2d\xb6\x5f\x5e\x55\x05\xdd\x51\x52\x98\xcf\xf6\xd9\x2b\xf3\xac\x24\x39\x33\x05\xd4\x83\x04\xe0\x6b\xf9\xfd\x6d\xf5\xac\xcc\xe3\x2c\x6a\x17\x09\xeb\x21\x2b\xe9\xdd\x8b\x8a\x03\x85\xf3\x51\x9e\xdc\x57\xf2\x8d\x04\xdd\x80\xca\x09\x84\xfc\x11\x07\x5e\xb3\x04\x55\x46\xe7\xd7\xbe\xc4\x56\xae\xa5\x89\xe2\x0c\x16\x35\xf2\xb0\xd4\xaf\xf2\xc3\x8b\x8a\xa3\x94\xa2\x49\x1d\x93\x2b\xe1\x0a\xdd\xb3\x39\x8c\x47\x0e\xe5\xe5\xee\x17\x56\x13\xc8\xf9\x58\x63\xc9\x14\x70\xc9\x94\x83\xc0\xad\xd7\x59\x70\xe5\x5a\x43\xa7\x78\x53\x6a\x34\xba\x3d\x5c\x29\x3d\x2b\xc5\x42\x87\x59\x6f\x32\xcf\xf3\x06\xdd\xe7\xa3\x42\x20\x15\xe3\x28\x3a\xa2\x0a\xc7\x26\x09\x50\x5c\x83\x14\x4e\x40\x40\x0c\x84\x30\x9b\x73\x02\x38\xfe\x15\x9c\xec\x7a\xce\xc9\xbe\xfa\x40\x14\x78\xcb\x3d\x0a\x04\xbe\x9d\xb2\x87\xa6\xbe\xd5\x25\x1b\x84\x1b\xbd\x9f\xfe\xa4\x23\xbe\xfe\x3a\x0d\xed\xf9\x02\x7c\x00\xe5\x86\x72\x9b\x15\x82\x38\xf0\xe0\x08\xd7\x8a\xa8\xf8\xc8\xf3\x83\x85\x11\xc8\x12\x3d\xd1\xf2\x2f\xf8\x5c\xbd\x03\x86\xc4\x95\x80\x34\x13\x98\xa5\xeb\x7a\x03\xd1\x9d\x65\x0f\x10\x3e\xa4\xc5\xdb\xaa\x6c\xf6\xec\x47\x80\xdc\xe7\x12\xa0\x07\x01\xd7\xea\xc1\x0f\x54\x28\x4b\xcd\xe0\x7d\xc3\x24\x39\xb4\xad\xb8\xbc\x80\x9c\x63\xce\xf5\xa3\x1b\x9c\x9c\x25\xc6\xd0\x03\x99\x1e\xeb\x61\x47\x54\x65\xc3\x9f\xd9\xd3\x6a\xcf\xe2\xcb\x22\x69\x37\x98\x41\x44\x5c\x59\xa8\x4f\x2e\x13\x9c\xe4\x42\x70\xfa\xae\x11\xa4\x4e\xa2\x12\x43\xbd\xd8\x6c\x36\x7b\x42\xe7\xb6\xf0\x0f\x74\x4f\x0d\x03\x76\x7e\xa9\xed\xf1\xc5\xbc\xbb\x3a\x69\x85\x6c\x78\x5f\x18\x5d\xa5\x86\x96\x2b\x2f\x22\x2e\x6f\x31\xa1\xa5\xcb\x1d\x91\x32\xdd\xb9\xbc\xd0\xfa\xd2\x79\xfc\x8d\x43\xea\xd7\x80\x68\xe5\xb5\x95\x53\x46\xf8\x5f\xc9\x5d\x10\x27\x8a\xeb\xcc\xb1\x90\xc4\xb1\x5c\xa6\xf3\xff\x89\x1e\xa1\x89\xf6\xf9\x64\xe0\x3b\xc4\xd6\x97\x1b\x47\x3f\x68\x89\xa2\xb0\x98\x71\x7e\x20\xe4\xfd\xd3\xb2\x04\xfb\x5a\x3b\xca\x67\x30\xc1\xbf\x49\xa4\x1c\xd3\x56\xeb\xad\x58\x60\x96\xdd\xd3\x62\x19\x2c\x34\x2d\x12\x77\x16\xc8\x9c\xe4\xdb\xdb\xa7\x66\x39\xc3\x54\x7a\x72\x22\xb3\xd9\x13\x31\xb8\xdc\x6c\x4d\x37\x99\xdf\xb8\xca\xb4\xc5\xbc\x81\xfe\x95\xdc\x7d\xec\xac\xaa\x73\xd2\xb3\x14\xee\xd3\x74\x2d\xc7\xb5\x41\x0f\x8f\xcb\x81\x37\xf7\x25\xd0\x31\x11\xbb\xcf\x0b\x40\x51\x7f\xa8\x5c\xc9\x9b\x85\x37\x56\x75\x01\x45\x16\x55\xdb\xff\xc0\xfd\xa3\x72\x5b\xa6\xfa\x32\x42\xd8\x5d\x3d\xe6\xcb\x6d\x5e\x3f\xa7\x5c\xdc\x3d\xf5\x20\x7a\x3a\x3d\xef\xd5\x83\x1b\x68\x79\x3e\x52\xab\x0d\x77\xbc\xe2\x91\x55\x4c\xde\x95\xf9\xf6\x7d\xe2\x16\xce\xef\x65\x25\xb2\xe4\x86\x13\xc2\x92\xf1\xc1\xa5\xd0\x4e\x03\xc1\xc5\x5b\xac\xf1\x50\xd4\x37\xdf\xbf\xeb\x9f\xa6\xce\xb5\x5e\xef\x20\x36\x97\x74\xac\xa3\x8d\x24\x6f\x1e\xde\x57\xe6\xed\xeb\xc4\x69\x3a\x27\x2c\xb2\xc5\xcc\x88\x3c\x3d\xa2\x41\xa4\x14\x30\xad\x09\xf8\x81\x50\xab\x85\x60\x79\x51\xbc\x56\x73\xe3\x29\xc1\x0c\x57\xe0\xef\x23\x3b\xf3\x2d\x53\xb4\xc0\x4c\xdf\x1e\x41\x71\xa5\xa4\xe8\x09\x30\xd1\x7d\x0c\xfc\xba\xf7\x5b\x7b\xa2\x69\xb7\x4f\xba\x8d\x7b\x2f\x7e\x7d\xca\xce\xa3\x30\x32\x36\x44\xe9\x49\x6e\xf0\x57\x92\xbf\x7f\x95\x1f\x82\x34\xf9\x06\x24\xf5\x11\xb3\xeb\xd4\x71\x96\x34\xea\x39\xa5\x45\x93\xc3\x96\x50\xa7\x37\xda\x5a\x59\x39\x55\x64\x8f\x28\x98\x9c\x54\x2a\xe2\x16\xcc\x94\x81\x91\x53\x9e\xdd\xe6\x75\xaa\x26\x8d\x8e\x47\x75\xc1\xaa\x47\x48\xed\x43\x3d\xdf\x34\x49\x3f\xb8\xe5\xd0\x57\x5c\xb0\x6b\xb9\xc8\x2f\xac\xf5\x2f\x65\x54\x74\x1d\x27\xd0\x7d\x3b\x18\x90\x09\xae\x87\x81\x70\x4c\x23\x4e\xab\x27\xc0\x44\x2f\x46\x53\x6c\xc7\xc8\x7a\x21\x91\x31\x59\x5f\xca\x7b\x9a\xac\xbf\xb1\x0a\xc6\x3f\x81\x21\x95\x4d\xaa\x10\xf1\xf8\x16\xc7\x63\x8f\xe3\x14\xd3\xa9\xbe\xe3\x04\x9a\x4e\x13\x25\xf0\x09\x18\xd2\x88\xaf\xb4\xad\xc3\xa6\xd3\xc4\xb9\xd2\x24\x94\xc9\x6f\x89\xe1\xf8\xed\xbb\xe3\xd1\x39\xb1\x7b\xd1\x6a\xa3\xce\x8b\x7e\x90\xb8\xee\x75\x8e\x15\x44\x2b\x2f\x68\x81\x4c\x12\x02\x70\x7b\xe6\xf2\x86\xb3\x15\x20\x09\x9b\x46\x52\x29\x47\x2b\x92\xa2\x79\x7e\x38\x94\x77\xda\x25\x12\x73\xb4\x24\xdd\x37\xad\x0e\x2b\x41\xbb\xd6\x9a\xfd\x3c\xc5\xab\x94\x67\x04\x13\x7d\xda\xd0\x92\x67\xfc\x78\xbc\x6f\xb5\xe0\xf3\x1e\x44\xa1\x04\xd3\xda\xe2\xcf\xe5\xf9\x02\xbf\xa7\xac\x58\x3a\xf2\x29\xc1\x95\x16\xb4\xf2\x36\x24\xb4\x06\x0c\x08\x49\x60\x83\x74\x4d\x99\x20\x9c\xe5\x25\x50\xa1\x11\x55\x8d\x7f\xa9\x72\x7b\xd8\x14\x1b\x24\xcf\x93\x1c\x5b\xca\xc1\xe6\x97\xa0\x15\x03\x3b\x57\x33\x36\xb8\x5a\x53\x82\x7a\xc2\x8b\x78\x2c\x01\x7b\xcc\xa1\x9e\x0b\x00\xef\xbf\xd5\xab\x0d\x5a\x0d\xbb\x4f\xd6\x7d\x23\x28\xea\xac\xec\x8c\xbb\x29\x79\xd8\xb0\x31\x58\x0e\x89\x20\xc2\x4b\x4d\x47\x6e\x42\xf3\x3d\x11\x79\xca\xec\x95\x95\x77\xb6\x5b\xd8\x68\x26\x93\xd8\xb6\xb3\x8c\x60\x6a\xb7\x3d\x65\x99\xc0\x34\x23\x90\x6d\x37\x3c\x39\x74\x3a\x4d\x69\xc6\x9d\x62\xfa\x95\x31\x21\x49\xa9\x35\x3c\x50\x80\x42\x31\xad\x7f\x26\x25\x98\x4f\xd6\xb7\xf4\x20\x61\xc5\x80\x06\xcb\x98\x04\x2c\x0d\x3b\xef\xac\x2d\x12\x56\x78\x4d\x1b\x27\x9d\xc9\x37\xef\x89\xf2\xbf\x3a\x19\x98\x46\x96\xef\x86\x08\x17\xc1\xeb\x8b\x17\xdf\x6b\x02\x0b\x6d\x3c\xf5\x40\x47\x66\x83\x2a\xbb\x41\x75\x7f\x83\xfa\x1b\x03\xd7\x95\x77\x20\xb1\xc8\x04\xac\x5b\x6f\x5f\x88\xca\x29\x15\xdb\x17\x82\x50\xe7\x00\x9b\x5d\x10\x91\x1d\x52\x3b\x72\xab\xcd\xd4\xf4\x7e\x7c\x9f\xd7\x67\xea\xf9\x2b\xef\x86\x09\xc4\x16\xdf\x0b\x1d\x26\x77\x18\x2d\x70\xbb\x27\xb6\x21\xb9\x23\xbc\xd3\x74\x70\x3c\xb0\x09\xa9\x07\xf8\xf6\x27\x5e\x7d\xba\x73\x16\xd5\xcf\xc9\x81\x93\x6d\x2e\x48\xf1\xdd\x07\xc8\x41\x83\xef\xaf\x39\x98\x01\x13\xfe\x3d\x98\x85\xf0\x2e\x7f\xa6\x86\x67\x0a\x91\xc2\x14\xcb\xee\xdf\x91\x6d\xbe\x27\xc6\x8c\x80\x60\xf5\xfc\x37\x78\x12\x6d\x8b\x95\x20\xf4\x5b\x77\x98\xe5\x76\x8d\x99\x2c\x7b\x36\x0e\xaf\xf2\x03\x64\xad\x87\x26\x5e\x44\x09\xf3\xae\x98\x27\xda\x5d\xa2\x4c\x89\x07\xe8\x25\xee\xa9\x68\x9e\xa6\x46\x04\x00\xbc\x0b\x76\xcd\x73\x9c\xac\x37\x09\x70\xb1\x5a\x1c\x5d\x77\x66\x31\xdf\xe7\x87\x6f\xef\x52\x23\x74\x4d\x70\xa2\x0b\x26\x08\xeb\x77\x27\xcc\xdb\x8e\x03\x76\x91\xbd\x67\xd5\x47\x66\xa8\xca\x01\x1e\x74\x6e\x17\x48\xc7\x1f\x55\xa2\x92\x4e\x36\xf4\x16\xd3\x5a\xa5\x5b\xe8\x0c\x9b\x55\x22\x4d\x54\x61\x08\x1a\x62\xd2\x52\xe1\xbc\x18\xe3\x4b\xdc\x9a\xeb\x76\x13\x34\xd1\x4a\x9d\xa2\xd0\x20\x3a\x9d\x9e\x0f\x16\x9e\x4e\x87\x80\x6a\xf8\xcb\x3c\x80\xb6\x14\x14\xb1\xbd\x41\xea\x45\xb9\xde\x51\x56\xbc\xd6\x71\xd7\xb4\xb4\xbc\xf6\x90\x19\xb0\x29\x12\x15\xd5\xa9\x08\xe2\x6b\xe8\x5b\x36\xf2\x9d\x55\x82\xee\xee\xcc\x6e\x3c\xbb\x55\x19\x66\x40\x9d\x1d\xe9\xab\x33\x2c\x2f\xad\x57\xb7\x2f\xcb\xdf\xed\xf3\xf7\xc4\xa3\x90\x1c\xc1\x64\xad\x00\xb5\x81\x3b\x0b\x32\x1d\xa9\xbb\x90\xad\xab\x0d\xae\x75\x3e\x17\x09\x88\x06\xfc\x70\x8e\x26\x74\x5d\x6d\xb2\xfa\x78\xbc\xb7\x24\x0c\xa8\x7f\x95\x0e\x21\xb7\x82\x11\xda\x62\xc5\x92\x8d\xea\xb6\xed\x1e\x1e\x8f\xa9\xd9\x2a\x59\x49\x4e\xe5\x8f\xd8\xef\xbf\xa9\xdd\x96\x0b\x1d\x19\x1d\xdd\xa5\xc3\x50\x16\x9c\x13\xe5\x9d\x26\x97\xc6\x23\xe4\x88\x31\xde\x70\xb5\xcd\x09\x46\x12\x13\x38\x20\x98\x8c\x6f\x61\x2f\xce\x15\x5f\xb3\x8d\x93\xea\x48\x12\x7f\x3a\xe5\x56\xf8\xc7\xf0\x65\xbf\xe7\x01\xf4\x35\x57\x56\xb1\xb2\x9f\x31\x40\x1c\xf9\x68\x0f\x78\xdb\xaa\xec\x2b\xcb\x1e\x2f\x3e\xb6\xbf\x26\x2c\xf9\xd7\xd8\xc2\x5e\xf7\xca\x49\x05\xa4\x0f\x27\xed\xe5\xe9\x38\x7f\xbd\x89\xda\xa0\x2a\x1a\xc8\xb3\x25\xc5\xc2\x06\x5e\x1f\xb0\x22\x25\xf1\x65\x55\xb5\x7b\x57\xad\x17\x86\x41\x36\xeb\x38\x5c\xb9\xfc\xb7\x79\x54\x01\xd2\xc7\x40\x5a\xf9\xb6\x68\x5b\x84\xcb\xec\x41\x2f\x1f\x7d\x63\x0e\x99\x49\x70\x8f\x06\xaa\xbf\xbd\xd3\x80\x35\x68\xa0\x2b\x2f\x4c\x39\x83\x09\x01\xfe\x9d\x43\xb2\x5c\x25\x1b\x5f\x6f\x90\xca\x76\x96\x72\xdf\x20\x17\x93\x16\x05\xf7\xc7\x76\x6c\xcc\xca\x5a\xd8\x1a\xf7\xfb\x8e\x4a\x4f\xd3\xd0\x04\x9d\xe4\xdb\xdb\x67\xba\x0d\x2b\x60\xf1\x04\x90\x98\x29\xa1\xf5\x3c\x24\xf4\xd0\x3d\x9b\xbf\x27\x77\xda\xc6\x8b\xea\xf9\x40\xe8\x05\x57\xe8\x95\x22\x99\x26\x56\x71\xa8\x6c\x8f\x75\x12\x52\x0a\x51\xc7\x7b\x13\xdb\x3d\xbc\x19\x91\x70\x79\x58\xa3\x8d\x9e\x47\xc3\x29\x93\x54\x26\xb9\x9d\x19\x82\xf7\x8e\x9c\x22\xc3\x54\xc5\x90\x92\x3f\x0e\x39\x27\x4c\x58\xd2\x38\xe3\x98\xac\xd9\x26\x93\x8c\xa4\xab\xfa\x82\x57\x7b\x98\x3b\x45\x76\xef\x70\x31\x36\x2f\x97\xbc\xd1\x88\x96\xfa\x27\x31\x80\x31\xb5\x04\x70\x0e\x7d\xc3\x12\x11\x8f\x09\xf8\xc1\x44\x8b\x5f\xb3\x8d\xce\x0b\xaf\x26\x87\x29\x72\x6a\xff\x70\x1f\x6e\xcd\x78\xe1\x30\xea\x55\xa3\x44\xe5\x34\x3e\xe0\x3d\xfe\xd0\x9d\x50\xa2\xcd\x17\xde\x08\x10\xec\xc4\xc4\x88\xe1\x9c\xba\xe4\xbc\x5f\x1f\x83\xf0\xd4\x1f\xd0\x5d\x96\x76\x3b\x54\x27\x5a\x4f\x35\xc1\x7d\x8a\xef\x3c\x75\xda\x88\xb0\x30\x7a\xb2\xe8\x76\xf0\x01\x4d\x0e\xd9\x07\xbc\xcf\x3e\xc0\x1c\xdf\x45\xc3\x97\x44\x29\x7c\xca\x68\xe0\xcf\xe8\x05\x5d\xd0\xdc\x3d\x6c\xa1\xe3\xee\x5b\x7c\xad\x50\xde\x8f\x44\x7c\xac\xf8\x7b\x85\xf1\xea\x38\xe2\xbe\x5a\x27\xb4\x06\x1c\x9f\x6c\xe2\x38\xc5\x4a\xce\x87\xf1\xa8\xa3\x50\x3f\x60\x5a\xff\x50\xe5\x05\x65\x37\xf6\x37\x29\x96\x1f\x70\x5f\xde\xdd\x25\xa9\x83\x1d\x9e\x53\x55\x3c\xb6\xee\x9e\x12\x28\x5a\x45\x29\x4b\xeb\x37\xf9\x07\x33\x0a\x15\x4c\xb7\x58\x1e\xb0\xd2\x51\xec\xb1\x9e\xf3\xf2\x0e\x5f\xef\x73\xfe\x5e\xd3\xa5\xda\x02\xe2\xa9\xd6\x3d\xf8\xa2\x49\x5c\xc8\xb6\x41\xb5\x27\x5b\x54\x36\x2e\xe7\x97\xaa\xba\x36\x3d\x19\xaa\xac\x76\x8c\x78\x85\xea\x6c\xbd\xd1\x57\x72\x99\xd7\x3a\xee\x90\x32\x3d\x55\x66\x83\x91\xfd\x4b\x61\x99\x55\x70\x14\x39\xb1\xf3\x4b\xec\x4f\x7f\x29\xe6\x3f\x57\x95\x5e\x0a\x48\xce\x85\xc3\x13\xa0\x23\xd6\x80\xb1\x81\xb2\xc8\x55\x96\x2e\x0f\x62\x44\x00\x2f\x91\x35\x06\x27\x7a\x02\xe2\x1e\xf7\x19\x54\x97\xb8\x80\x15\x69\x12\xd0\xfe\x72\x7b\xf0\x70\xa9\xbf\x99\x32\x08\x8b\xce\x11\xa2\x9e\x3f\x42\xad\x16\xa5\x08\xf7\x48\xf2\x14\xf0\x59\x53\xf2\x6f\x2b\x27\x0a\x8c\xb0\xc5\xde\xc9\x4d\x90\xe3\x7e\x0c\xa5\xe3\xb7\x54\xf7\xf6\xb3\x53\x59\x53\x21\x2d\xce\xbd\x40\x0b\xc3\x41\x82\x46\x25\x0f\x6a\x9d\xdf\xb0\xfc\x50\xdf\x56\x22\x45\x5e\x14\x21\xc9\xb3\xc8\x25\xd1\x41\x7f\x0a\x5a\xc8\x13\x66\x1f\x54\xc8\x69\xfb\xa8\xd8\x1a\xfb\xa8\x8e\x81\x7a\x0c\xb9\x7f\xef\x95\x37\x70\x5e\x95\x25\x81\xc0\x3c\x66\x22\x6c\x34\x16\x75\x57\x1e\xc5\xcc\x7a\x42\x12\x4e\x2a\x6b\x05\x6e\x83\xa3\xd5\xfd\x3a\x30\xed\xb8\xdf\x9a\x39\x5d\x61\x65\xbf\x6c\x0a\x75\x6b\xc1\xab\xbe\x8f\x69\x38\x82\xb0\x96\x3a\x8a\x75\xfe\x41\xad\x7a\xc3\xe2\x71\x8c\xb4\x23\xcd\x73\xd5\x03\x29\x8c\x19\x6c\x38\x20\xbf\x76\xea\x30\xb4\xbb\xf9\x06\x24\x04\x93\xdb\xe8\x55\xce\xb5\xb9\x00\xb1\x37\xf1\x63\xaa\x38\x97\x4c\x92\x0c\x58\xc4\x91\x35\x57\xc8\x5a\xdd\xba\x85\x87\x8a\x07\x70\x6c\x17\x2e\xbb\xf5\xe4\x4c\x24\x90\xbc\xcb\xb7\xef\xe3\xad\xc5\x9a\xe9\xd7\x80\x15\x09\xa1\xfe\xd4\x21\x75\x8e\x4a\x8b\x4d\x64\x83\xef\xe4\x95\x5a\xd3\x8a\x9d\xd6\x92\xe1\x83\xc2\xe6\x69\xd1\x62\x09\x01\x91\x18\x3f\xbe\xa5\x86\x30\x1e\x16\x21\xf1\x78\x7f\x50\x6f\x97\xd1\xe3\xa1\x00\xab\xeb\xdb\xe2\xd4\xf7\xa0\x4c\x95\xa7\x5d\x42\x4e\x7f\x00\xda\x7d\x4f\x0f\x21\x26\x9c\xd5\xea\x22\xa2\x72\xf5\x00\x56\xd2\x46\xe6\x2a\x8c\x53\xf8\x6e\xd9\x2d\xd4\x4a\xe6\xea\xf3\xe7\xa5\xc6\x2b\x19\x8c\xa1\x99\x31\x3d\x33\xc9\x60\x87\xf8\xfb\x5d\xc4\xb7\x78\x74\xfb\x39\xd9\x11\x4e\xd8\x56\x32\x07\xa9\x2f\xa8\x97\x27\xf6\xb6\xe7\x30\xfd\x19\x6d\x59\x11\x33\x48\x89\x40\xe7\xfc\x92\xed\xaa\x3e\x11\xa5\x2c\x33\xb0\xc8\xee\x5b\xcd\xb7\x1a\xa6\x20\xa6\xc6\xf7\xe9\xa9\x8e\x47\x24\xb3\xa6\x41\x9e\x4d\x00\x3e\x38\x0c\x41\x30\xf9\x74\xc8\x19\x84\xa0\xde\xf4\x58\x10\x9f\xbd\x08\x38\x66\xeb\xf6\x24\xd6\x74\xfe\x9e\xb2\x62\x33\xb1\x12\xd4\x0a\x5c\x1a\xed\x07\x49\x95\x30\xdf\x0e\x48\xbd\xf7\x07\x51\x79\x83\x40\x36\xe5\x27\xb1\x96\x02\x44\x1b\x9b\x79\x8d\x24\x2f\xca\xfc\x26\x9c\x8a\x24\x3a\x15\x69\x18\x37\x85\xc0\x89\xa1\xdf\xe0\xa7\xa6\xdf\xe0\xb7\x0e\xc8\x63\x0d\x29\x2c\xf5\xda\x22\x7c\x6f\x0c\x95\x61\xab\x4c\xd0\xee\xd7\xe2\x96\x70\x0f\xd3\x9e\x2f\x94\xbb\x6c\xbd\x64\x72\x32\x12\x4b\x7c\xf0\x78\x90\x25\x6f\xdb\x16\x2b\xfc\x69\xb5\x24\x0a\x81\x06\xa0\x34\x2e\x58\xec\x6e\x49\x8c\xfe\xd8\x56\xac\x16\xbc\xd9\x8a\x8a\xf7\xb7\x50\xdd\x9c\x01\xe7\xd7\x91\xa3\xc7\xd9\x1e\xaf\xd1\x21\xd1\x81\x12\xa7\xb7\x92\xa0\x22\xbc\x26\x03\xed\xf6\x86\xe8\x8a\xa7\x24\xaa\x56\x02\xda\x12\x99\xb5\xd3\x1a\x8e\xa7\x45\x41\x8a\xcf\x5c\xb8\x51\xaa\xad\xbb\x6a\x3d\x65\xe3\xe4\xdd\x9c\x93\xea\x40\x58\x7a\x2f\x38\xbd\xb9\x21\x31\xf5\x83\x6c\x6a\x4d\x36\x03\x61\xda\x03\xa9\x6f\x4f\x21\xce\x3c\xf9\x2e\xbf\xb8\x44\x98\x66\x97\x57\xf4\x31\x07\x95\x38\x5b\xd3\x8b\xcb\x8e\x52\x5c\xf8\x8c\x1a\x43\xad\xe7\x42\x0b\x26\x16\x68\x52\x99\xfb\x67\x8c\xaf\x1b\x8c\xb5\xf9\xce\xc9\xad\x70\x52\xe4\x22\x4f\xc0\x53\xc5\xda\x03\x48\x5e\x61\x28\xdc\x66\xa8\xa4\x06\x51\xd7\xfc\x5a\xb6\x21\xbb\xf3\x56\xb2\xfa\xe7\x37\xaf\x7f\x1c\xd2\x63\xc4\x00\xa1\x13\x1c\xdf\xc5\xe1\xb4\xf2\x94\x07\xee\xf2\x89\xe7\xa9\xe2\x02\xdd\x83\xc2\x0c\x10\xe6\x4d\xd6\x9b\x64\x1d\xd1\xdc\x73\x30\x78\x24\x7c\x4b\x5e\x16\x72\xa9\xf5\xb5\xc8\xe3\x37\x7e\x4d\xc4\xcb\x02\x02\xf2\xc5\x17\x6c\x54\xc8\x80\x93\x6b\x91\xdf\x24\x71\xa5\x2b\x2d\xda\x76\xc0\xe6\x28\xd8\x3f\x5a\x24\xf8\xc6\x2d\x3d\xd8\x5d\xa7\xf7\x60\x47\x47\x4a\x89\xbc\xac\x18\x4a\x51\xe5\x11\xd9\xd8\x49\xca\x9f\x31\xdc\xe0\x85\x99\x11\x9e\xa5\xae\x32\x05\xb2\x88\xe3\x55\x7e\x38\x41\x2f\x16\x11\xa8\x01\x83\x1e\x43\x3e\x23\xaa\x2a\xdb\xa5\x4e\x49\xb3\x26\x1b\x9b\xee\x44\x1e\x64\xdf\x48\x43\x65\xa3\xf3\xb1\x95\x9b\xd1\x9a\x6c\x32\x86\x99\x56\xfd\xbc\x1c\x1f\x05\x34\x17\x59\x60\xd5\x24\xdd\xa5\xe7\x36\x6d\xbd\xcd\x89\x06\x96\xcf\x38\x37\x46\xcd\x7b\x02\x27\xcb\xd9\x97\x21\xdc\x64\xf5\x5c\x2b\xb9\x27\x3a\xc5\x49\x96\x65\x8d\x41\xb0\x41\x8b\x74\x97\xba\x0f\xcc\x15\xc2\x34\x4b\xab\x2c\xd0\x72\x0e\x6f\x28\x43\x48\x5d\xe4\x79\x56\xd9\x9e\x21\x05\x8a\x9a\x1d\xae\xbb\xb2\x47\x1d\x8b\xda\x33\x52\xef\xf8\x50\xd3\xe3\x11\x32\x84\x0f\x8f\x40\xed\xd3\x79\x6e\xa6\x53\x69\xc3\x82\x5c\xed\xaa\x97\x2b\x03\x37\x59\x98\x6b\xa1\x46\x2b\x88\xd3\x2f\x08\x8f\x05\x6e\xe0\xfd\x45\x05\x21\x2a\xb2\x73\xd3\x02\x3a\x61\x56\xcb\xd9\x5b\x99\x37\xc7\x23\xcb\xbc\x47\x70\x9a\x96\xeb\xad\x07\xdb\x4c\xa7\x8a\xb4\xd1\xa8\xb8\xc2\x0d\xe8\x97\x25\x76\xde\xca\x13\x39\x9d\x92\xd4\x7f\x86\xd5\xa9\x10\xae\x3c\xeb\x19\x9d\xe6\x3b\x2b\x3b\x1a\x5d\x0b\x2a\xdb\xac\xec\x4f\x53\x78\xc6\xd1\x9d\x69\x8a\xe8\x34\xcf\x48\x96\x65\xcc\x9b\xc9\xe4\x32\xcb\xb2\xad\xb3\x4a\x2b\xb3\x2d\xc2\x2c\x2b\xd7\x0b\x9d\x9f\x82\xaa\xdf\x1a\x24\xe0\xb7\x6e\xd2\x64\x15\x07\x53\x0c\xae\xec\x2b\x98\xb2\xba\xa0\xd6\x30\x23\x6f\x43\xc2\xa4\x5e\x96\xc1\xb3\xdc\xd4\x13\xe4\x4a\xf7\x86\x40\x5f\x6f\x3c\xca\x7f\xbd\x69\x3f\x47\xbc\xae\x9c\xbb\x7a\xe2\x75\xb2\xe6\x8a\xa4\xed\xaa\x39\xd4\x40\x49\xa1\xdc\x50\xb6\x38\x72\x68\x96\x05\x8e\x88\xc3\x97\x3b\xbc\xa3\xa4\x2c\x4e\x98\x58\x47\x9f\xf3\xc5\xd3\x50\x19\xcb\xe5\x37\x98\x0b\x5a\xca\x02\x96\xdc\xd1\x89\x9f\x53\xe1\x39\x07\x24\x51\x75\xce\x03\xb4\xe8\x97\xea\x9b\x82\x04\x05\x98\x61\x2d\x5d\xb0\xbd\xa9\x45\x1e\x54\xa6\x47\xbb\xd5\x1b\x93\x8c\xa9\x1a\xf8\x9a\x6d\x26\xb6\x5f\x48\x81\x6a\xc3\x47\xf8\xd3\x8c\xf4\x6e\xdc\x12\xde\x93\x3b\xcc\xe4\x5f\x79\x02\x74\x00\x1c\x8f\xbc\xe5\xde\x85\x41\x57\x1e\x5f\x09\xe1\x46\x65\xa5\xce\x4b\xb6\x4a\x2a\x46\xde\x56\xaf\x19\x49\x96\xc9\x3e\x67\x77\xe6\x77\xb4\x98\x4a\xfe\xa8\xcb\xe9\x87\x68\xc1\x1f\x2b\xaf\x41\x78\x50\x6c\x73\x5c\x82\xfe\x75\x21\xd1\x03\xb4\x54\x65\x38\x01\x07\x66\x0d\x91\x28\x0a\x69\x20\xb4\xdb\x55\x7c\x1f\x48\x97\xbe\x78\x98\x51\x0e\x5a\x8d\x4f\xf9\x4d\xbb\x03\xa2\x28\x93\x01\xe0\x1f\xe2\x27\xba\x20\xf8\x80\x93\xcd\x08\xc0\xbf\x8d\x4c\xfc\x81\xce\xa2\x6b\xf5\x39\xfd\x1a\x49\x57\x9f\x4a\x4d\x94\x3b\x4d\x32\xeb\xf6\x69\xef\xdc\xc4\x52\xd1\xd7\x51\x4d\x94\x4e\xeb\xda\x08\x49\x59\xc3\xa5\x8c\xe3\xe6\x67\xfa\xd4\xbc\xac\x9f\xd6\x77\x6c\x2b\x69\x70\xab\xf4\x91\xbf\x3f\x57\x77\x65\xd2\x01\xa9\x26\xb2\xe0\xe9\x78\x3c\xbf\xd4\x99\x7a\x00\x27\x64\x0b\xf5\xa4\xa5\x51\x9e\xfe\x44\xde\x9b\x8e\xfa\x3a\x1e\xdd\x17\x5a\xff\x54\x95\x77\xfb\x8a\x1f\x6e\xe9\x36\xeb\xbf\x72\x7d\xf8\xba\x15\xab\xad\xd9\x95\x4d\x7d\xfb\x2c\x67\x15\xa3\xdb\xbc\xd4\x41\x94\x94\x2d\xbb\x52\x2c\x9e\x5f\x9a\x29\x78\x6f\xb5\x7d\x64\x8b\x73\x76\xf7\x0b\x08\x82\x49\x2c\x14\xfe\x79\xaf\xdf\x28\x0d\x64\xe5\x47\xd7\xb4\x7e\x4e\xf6\xb9\xd0\xcc\x11\x65\x37\xc7\xe3\x39\xb1\xcb\x05\x86\x68\xeb\xc5\xc6\x18\x06\x99\x9e\x5f\x06\x4a\xa1\xa8\x9e\x78\x71\x45\x1e\xf7\x07\xa3\x31\xf1\x6c\x16\xf2\x7e\x7e\x19\xcd\x51\x8b\xf8\xd8\x84\x37\x36\x14\x84\x97\x93\x00\xa6\x7d\x9b\x7f\xa5\x65\x69\xc4\x01\xf8\x12\x2f\x50\x7f\x3b\x20\x0c\xdc\x16\xbe\x1b\x29\x3d\x71\x96\x70\x91\xf2\xc6\x04\xab\xd7\xd9\x73\x5a\x84\x7d\x9d\x2f\x5a\xe3\xbe\xd5\x62\x25\x53\x7d\x1a\x0b\x73\x32\x34\x73\x1b\x63\xc3\x85\x3d\x99\x5b\x1f\xa5\x14\xb5\x38\x84\xa0\x8e\x1f\xac\x6d\xc0\x1a\x37\x9e\xcb\xf9\xcf\xaf\xd5\x48\x5e\xd6\x4f\x4b\xfa\x81\x28\x26\xdd\xc5\x5b\x2c\xe8\x6e\xa7\x6d\xcf\xba\xa3\xc2\x8e\xdf\x65\x2a\x2b\xbd\x9a\xee\x4b\x56\x90\x4f\x26\x85\xd6\xc0\xea\xf7\x2b\x80\x0f\xa9\x04\xa5\xe2\x59\xd5\x30\x81\xd9\x3c\x2f\x0a\xfd\x10\xdb\x88\xce\xc2\x07\x27\x8a\xcc\x6b\xd8\xc3\xd1\x4d\xf9\xdc\x21\xf0\xe9\xd4\x7f\xf1\x64\xa1\x79\xfc\x90\x11\x97\xb7\x29\xac\x97\xda\x15\x10\x50\x79\xaa\xfc\xf7\xe4\x2e\x41\x08\x01\x8d\x0b\x06\x5f\xc1\x26\xb9\xd8\xed\x5c\x36\x9f\xd2\x3e\x28\xe8\x99\x11\x4c\x66\x26\x34\x2b\x34\xec\x24\x2d\x60\xad\x29\x67\xf1\x82\x57\x7b\x9b\xed\x39\x1c\x01\xa6\xf3\x7d\x7e\x88\x1e\xfd\xbe\x67\x41\x8b\x10\x82\x14\xa9\x03\xbd\xe5\x45\x01\xe9\xb5\xa2\x1d\xb1\xcf\xeb\x08\x1b\x73\x35\x4e\x04\xa7\xe4\x03\xf9\x21\x87\x60\x19\x20\xad\xf4\xdf\xc4\x0d\x0e\x22\xa3\xf3\xcc\xa1\xbb\xdb\x80\xf5\x51\x53\x12\xa5\x6b\x57\xf2\xdb\xbb\x7f\xae\x2b\xf6\xf4\x40\x7f\xd6\x79\x83\x52\x82\x26\x10\x7b\x3b\xd7\xab\x00\xa0\x28\x9f\x25\x20\xca\xbf\x48\x02\x24\x65\xef\x6b\xbf\x00\xbc\x48\xcc\x17\x14\x47\xf3\xe0\x54\x1c\xd3\xc4\x0c\x7a\xa5\xaa\xb2\xaf\x0c\xa4\xe9\xbc\x75\xb6\x58\x00\x90\x89\x0f\x24\x6a\x4b\xc0\xe0\x3c\xd0\x3b\x05\xca\x78\x9e\x41\x38\x2a\xdb\xfc\x7f\x93\x65\xcf\xfa\xd7\x3d\x44\x8f\x70\x46\xaa\x10\x0b\xcc\x18\xb4\x49\x7a\xb7\x7a\x4f\xd2\x44\xd6\x4d\x10\x1e\x51\xd8\x90\x16\xe9\x10\xbb\x91\x5e\x75\x19\xfb\xd6\x8b\x42\x6a\xb4\x47\x8a\xb9\xef\x2a\x8f\x58\x3b\x1c\xc6\x75\xc8\x60\xd0\xc4\x02\xe8\x73\x0f\x76\xaa\x46\xd2\xa4\x51\x2e\xf7\xa2\x88\x92\xd0\x3a\xcd\x73\x6a\x87\xec\xdb\x2d\xc2\x1f\xb3\xae\xca\xcb\x04\x69\x90\x00\x34\x46\xc8\x6a\xd6\x32\xa6\xaa\xb3\xfe\xc6\x8a\xfa\xb1\x84\xbe\xc2\xd0\x92\xcf\x07\x63\x29\x48\x62\x58\x71\x02\xb1\x5f\x55\xc8\xf9\x5c\x50\x76\xf3\x32\xe6\x5a\x40\x35\x84\x79\x19\xdf\x65\x1f\x15\x66\x78\x44\xa7\x28\xc0\xcd\x12\xe1\xef\xb2\xce\xde\x98\x59\xc2\x21\xe8\x9a\x99\x4b\x62\xba\xb6\xd6\xf1\xea\xa0\x24\xd1\xd9\xfa\xab\x0b\xa7\x4b\xef\x75\xe2\x01\xb8\x33\xd1\xd5\x9a\x42\xa2\x23\xfc\x76\x80\xe1\x4d\xda\x0b\xcf\xcb\xe4\xcb\x8a\xc1\x4f\xa2\x7e\x83\x4b\xae\x16\xf2\xbf\x49\x13\xfd\x53\x96\xd8\xed\xa0\xc4\x6e\x97\x20\x30\xdc\x7c\x03\x3a\x3d\xc9\x20\x3b\x17\xbf\x37\x71\x5f\x38\xd8\x34\x93\xaa\xa5\x0f\x84\x76\x06\x68\x4d\x36\x86\x8c\x0d\xe4\xf4\x44\x25\xce\xab\x21\x75\xb4\x3d\x19\xd9\xb5\x7c\x92\xbb\x98\xbd\xc3\xc4\x6c\x80\xdd\xc1\xec\xa3\x7b\xe9\xea\x7c\x87\xc9\xfc\xda\x48\x60\x55\x3e\xea\x51\x71\xa9\x0a\x14\x0f\x66\xcd\x7c\xbe\xcb\xb7\xa2\xe2\x77\x20\x7e\xdf\xcb\xba\xcb\x64\xa6\xec\xd3\xe5\x45\x09\x72\x2b\x48\xe9\x61\x84\x7a\xef\x0c\x20\x50\x34\xa9\x42\xf9\xf3\xf5\x35\xad\xa1\xfb\xe5\xf9\x02\x5f\x5f\xab\xd6\x68\x8b\x30\x9f\x1b\x1b\xa0\xd4\xb2\x1d\x02\xbb\xfc\x23\x9d\x51\x98\x12\x90\xae\x56\xf2\x5b\x59\x85\xc9\xdc\x9e\x89\x2c\xc7\x60\xb6\x2a\x17\x20\xab\xbf\x5a\xce\x53\xe5\x3f\xfa\x40\x4c\x98\x8e\x93\xe9\x3f\x2a\x4b\x9a\x4d\x4f\x76\x62\x7e\x34\x80\xa0\xd1\x74\x9c\x72\x59\x4f\x6e\x4e\x16\x1e\x6d\xcd\xd3\xaa\x9f\xd8\xa4\xad\x31\xda\xae\xd5\xb0\x9f\xd8\xaa\x2e\xdf\x0e\xef\xb2\x22\x2a\xd4\xef\x2f\xf6\x15\x7e\x54\xf1\x82\x70\x52\x5c\xd4\x24\x92\xde\x6b\xd4\x59\xd8\x13\xef\x66\x19\x39\x1e\x13\xc8\x07\xb2\x92\xcf\xcb\xbe\x4b\xdc\x8a\x2c\x93\xfa\x6e\xff\xae\x2a\x83\x97\x36\x35\x47\x8a\x20\xf6\x54\xc7\x73\x57\xc7\xca\x35\xe5\x55\xc8\x5c\x63\xfd\x61\xc2\xd6\x12\x08\x64\x6b\xba\xd4\x6f\xef\x6f\x39\xd9\x2d\x89\xf5\x18\x01\x3f\xb9\x4e\x74\x00\x73\x63\x61\xee\x4f\xcd\xe3\x39\xa3\x4c\xbb\x32\x79\x6a\x79\x46\x70\x2a\x32\x86\x06\x93\x8a\x06\xa9\x44\x45\x90\xf3\xd0\xea\x74\x33\x21\x19\x9e\x6b\xf8\x76\x7d\x9d\x71\xcc\x74\xed\x48\x5a\x74\x46\x3e\xc2\x65\xd3\xda\x1c\x69\xb6\x49\x77\x51\xe6\x45\xf1\x2b\x15\xb7\xc0\x3e\x8c\xe1\xce\x86\x16\xd6\x23\x44\xcb\x15\x48\x4d\xd8\x96\xbc\x21\xc2\xc8\x08\x4b\x5a\x8b\x89\x89\x69\xc3\xd6\xdc\xaa\xa0\xe4\xef\xec\x7c\x81\xd5\xde\x8b\x15\x35\xd6\x10\x4b\x6a\xb8\x55\x81\x17\x96\x74\xae\xe9\x7f\x92\x59\x76\xa9\xef\x3d\xaa\x2d\xcf\xfe\x80\x61\x66\x7a\x98\xf7\xaa\x07\x18\xa7\x76\x83\x75\xac\xea\x4a\x2c\xa9\x8d\x60\xee\x88\xa4\xea\xc9\xc5\xe5\x74\x6a\xc7\x5f\x39\x6e\x9b\xfe\x27\xc9\x4c\x04\xf3\x90\x65\x66\x6d\xca\x25\xeb\xda\x4b\x38\x73\x9b\xd7\xaf\x9d\x3f\x9c\x92\x65\x71\x87\xfc\xd0\xca\x86\x45\x5e\x72\x14\x64\xcc\x32\xbb\x9d\xf6\xb9\x91\xe3\x91\xa0\xf9\x75\x20\xaf\xee\x24\xaf\xb2\xa0\x22\x1b\x52\x77\x38\x0a\x12\x22\x79\x0e\xdb\x7d\x4a\x66\xb0\x4b\xba\x97\x6b\x42\xc5\xcf\x41\xd7\x29\x41\x6b\xbe\x09\x92\x23\x85\x22\xef\xc5\x15\x7f\x6c\xdc\xfb\xae\xb8\x91\x68\xb3\x4c\xc8\x5d\x61\x73\x87\x07\x33\xff\x01\x64\x52\x6c\xee\xeb\xba\x25\xa8\x25\x70\xb9\x68\xf7\xff\x94\xcd\x3f\x72\x2a\xf4\xb7\x61\xac\xcb\x94\xe8\x5b\x7b\xdd\x6f\xfd\x33\xe5\xe9\xfa\xbc\x88\xc9\xbe\x68\x5c\x0b\xf9\x34\xe4\x28\x58\x78\x4f\x59\x11\xbc\x70\x0b\x16\xbc\xde\x03\x72\xad\x83\x77\x5b\xc3\x61\xbd\x8a\x7c\x04\xf4\x1c\x76\x45\xee\x82\x67\x3d\xaa\xbf\x76\x5f\x47\x46\x19\x8a\xfd\xc2\xe1\x86\x2e\x25\x03\x3d\xbc\xa8\xf8\x4b\xbd\xe7\x9d\x69\x75\xaa\x5c\x1b\x89\x68\xaf\xb1\x6b\x41\xf6\x07\xe7\xdc\x11\xcc\x15\x32\x60\xbe\xa8\xf8\x96\x28\xfb\xee\xcc\x48\x21\xfd\xe1\xbd\xac\xdf\x88\xbc\x0c\x6b\xde\xe6\x81\x9c\x8d\x18\x85\x76\xb7\xd0\x53\x76\xe7\xc3\x6a\x6f\x7b\xc2\x7e\xc0\x96\xbf\xdb\xc4\x0b\x88\x5e\xf8\x43\x95\x17\x4f\x55\x68\x4a\x3b\x48\xe0\x08\x82\xe2\x1f\x69\x59\xbe\xe9\x6d\x42\x08\x45\xd4\x03\x20\xa5\xe0\xd2\xa1\x01\xb8\x51\x46\xce\x73\x59\x10\x3c\x23\xcd\x9b\x83\xdb\xc6\x49\x17\xdc\x58\x08\x69\xf2\x72\xa8\x06\x00\xcd\xfb\xa6\xe0\x8c\x38\x10\x03\x76\x2c\x90\x19\x3b\x38\x13\x31\x10\xcb\xb2\x2c\x3f\x1e\xf3\x61\x48\x3b\xcf\xb2\x7a\x3a\xad\x07\x00\x8e\x8f\xc1\x5a\x04\x72\x66\x66\xa4\x1e\x04\x7a\xae\x03\x83\xf0\x17\x03\x25\xb3\x83\x83\x60\xe4\x15\x88\x81\x50\x1c\x4c\x15\xf8\x9c\x2f\x5a\x4d\x4b\x60\x86\xf3\x8c\xf4\xef\xe6\x7c\xde\x51\x1f\xf4\xaf\x78\x2d\x14\x0f\x8b\xb5\xd8\xaf\xf9\x26\x5e\x31\x3d\xef\x2c\xab\x36\xcc\x0e\x9b\x42\xd0\xd6\x6d\x5e\xbf\x69\x0e\x92\x48\xf4\xd6\x3e\xc0\xed\x59\x84\xcd\xb5\x9b\x4b\x06\x2e\x04\x67\x82\x3b\x74\x63\xf4\x3a\xff\xac\x4e\xf9\x50\x67\xbc\xdb\x89\x3b\x25\xcf\x69\x11\xec\x74\x36\xe4\xee\xd1\x59\xbd\x89\xd0\x52\xb3\x5d\xc5\x9f\x96\xe6\x20\x85\xd1\xc4\x20\x7d\xde\xc8\x7c\x6c\xfc\x3f\x96\xd5\xa0\x63\x05\xa1\x47\x10\x8c\x42\x74\xee\xf3\x89\x4a\x5f\xa9\x86\xe1\x82\x17\x4d\xa7\xc4\x9b\xd3\x79\x96\x45\xca\x1c\x8f\xd6\x26\xa2\x3b\xe9\xd4\xaf\x0d\x9e\x82\x72\x91\x82\x99\x05\x6b\xef\x82\xe3\xc4\xbd\x03\xe1\x5e\xf7\x70\x0f\x10\x60\xb1\x7b\xbe\x5b\x66\xcd\x37\x2e\xe2\xa5\xa6\xec\x18\x9a\x88\x35\xdd\x1c\x8f\xa9\xfc\x23\x6f\x7a\x92\x32\x84\x5a\x33\x08\xe5\x47\x1e\xc5\x6b\x41\xbf\x9e\x83\xf9\x70\x61\xe5\x79\x1e\x0e\x20\x97\x03\xa8\xd5\x00\x6a\x3d\x80\x1c\x04\xe2\xf9\xd0\x82\x06\xab\x75\xee\xe3\xc8\xe3\x11\xd4\xb4\x60\xad\x9b\xa2\x55\xaa\xd1\xc5\xbe\xfa\xe0\x6d\xd5\x0b\x5e\xed\x5f\x7f\x64\xa9\x93\x2c\xcb\xef\x56\x00\x3b\x5c\x10\x42\x58\xf7\x50\x4f\x7a\xbe\x40\x3a\xd4\x7a\x0d\x02\xe3\x28\x6e\x4b\x41\xa8\x9b\xcf\x55\x0a\x25\x40\x97\x3d\x2b\x55\x40\xae\x44\x96\x02\xff\x9e\x2c\xaa\x2d\xeb\xed\xea\x15\xb1\x1e\xc0\x57\x7e\x08\xa9\x49\x74\xf2\x40\x91\x86\xfe\xe9\xd1\xad\xba\xe2\xdd\x56\x59\xc6\x3b\xad\x46\x96\x2c\x65\x6a\xe7\x54\x01\xc8\xa9\x69\x3e\xd5\x7a\x39\xb3\xae\x86\xb6\xb7\xac\x70\x5b\xa4\xe7\x46\x19\x67\x26\xeb\x9c\x9e\x5c\xf3\x91\x21\x0c\xf6\xd3\x9b\x67\xe0\xad\x1e\x4a\xe1\x7f\x90\x3b\xe8\xf7\xe5\xb5\x1f\x89\x65\x26\x5b\x98\x44\x33\x81\x06\xda\x8d\xce\x56\xa8\x3c\x3b\x38\x97\x4c\x63\xbc\xfd\xd0\x36\x70\xb0\x87\xb0\x01\x15\xbc\xc2\x31\x5c\xd3\xa9\x98\xcd\x5c\x4f\xb1\x25\xcb\x86\xcc\x66\x24\xae\x21\x3e\x6e\xf1\xf9\xb8\x5b\x15\x1e\x23\x06\x06\x44\xe2\x1a\x3e\x13\xfa\x60\x8c\x94\x1a\x19\x56\xff\x84\xf4\xb6\x50\x19\x34\x9b\xf8\x03\xbd\xcf\xe0\x64\xe7\x4e\x6f\x73\x78\x69\xf0\xb6\x6f\x5d\x89\xc6\x40\x00\x7b\x27\x3b\x42\x94\x98\x73\x3d\xd4\x7a\x10\xc5\xd7\x66\x42\xb2\x17\x9d\x0a\x4b\xa1\x68\xa9\x91\xab\x4c\x18\x0d\xf6\xa4\x4e\x45\x97\x82\x43\x43\xcb\xdb\x21\x59\x11\x24\x6c\x1d\xea\x30\x4a\x88\x78\x1d\x1b\xe3\xe6\x38\x6d\x81\x25\x76\x18\xa6\x2c\x37\x13\x76\x3c\xa6\x0f\x94\x01\x3a\x59\xe9\x9b\xb5\x6e\xc2\xd2\x9e\xf7\xc6\x18\xf0\x1e\x88\xf4\xa5\x8f\xf3\xdb\x16\x82\x16\xb2\x93\x57\xc1\x1d\xea\xaf\x7b\x14\x86\x91\x62\xe7\x34\x8c\x17\x44\xa3\xe3\xcb\x62\x3e\x0a\xf1\x53\x61\x34\xee\x0f\xdf\x6f\x36\xd8\x8d\xdb\x98\x07\xa6\x24\xab\x9a\x9b\xcd\x26\x1a\x39\x01\x9e\xe4\xa8\x86\xe8\xd3\x31\xd8\xf8\xb2\x5a\x23\x2b\xdd\x85\x8a\x87\x6e\x81\x00\xc3\x66\xa1\x7d\x58\x70\x4b\xc9\xb5\x17\x16\x23\xed\x1d\x22\xb2\xf2\x36\xa8\xe4\xc7\x60\x51\x0d\xfb\xb3\xd2\x56\x02\xb6\xdc\x38\x6e\xb0\x76\x07\x76\xf3\x86\xb0\xc4\xc8\x02\x9c\xbe\x87\x02\x20\xeb\x0b\xb6\x43\x2e\xca\x17\x54\xfb\x1d\x78\x21\x60\xa0\x21\x7e\xcb\x17\x00\xd1\xf8\xba\xa1\x53\x6f\x88\xee\xf5\x1f\xa3\xff\x86\x8f\xef\x30\x55\x1a\x3f\xb3\xff\x97\x1e\xd5\xb1\x85\x8e\x2d\xa2\x37\xb9\x60\x3d\xcd\x4d\x3b\x76\x70\x48\xff\xe0\x18\x7a\xae\x36\x3e\x67\xde\x27\xe0\x49\x07\x77\x63\xe4\x96\xe9\x15\x1e\xde\x79\x1b\xbf\x69\xf4\x0e\xf8\x2f\x9a\xf4\xc8\x0d\xf2\x79\x77\x6c\x7f\x19\x86\xaf\xb2\x8e\xae\xc2\xbb\xab\x1e\x20\xd8\x9f\x55\xfb\x83\xac\x5a\xde\x45\x97\xab\x1b\x4e\x6a\x54\x7c\x13\xc2\xaa\xd5\x5a\x45\xf9\x73\x96\x75\x16\x63\xd2\x93\x6e\xac\xba\xde\x17\x5d\xa6\x5c\x79\xfb\x8c\x4b\x37\x24\x16\x76\xe6\x7b\x6b\xba\xd1\x12\x11\x6f\xf3\xe4\x2d\x10\xbc\x88\x2e\x8d\xdc\x3f\x86\x26\x5c\xb1\xff\x6d\xbb\x3c\x61\x74\xdd\xa1\x0d\x5f\x14\xc1\x10\xa7\xd3\xb4\xe9\x8c\xc9\x5f\xd7\x91\xe1\x61\x3d\x3c\xd4\x86\x3c\xa1\xe1\x87\x0c\x50\xf4\xe0\xa7\x5b\xc0\x0a\x0a\x54\x71\xcd\x52\x0e\x81\x4d\xf4\xb0\x0e\xc0\xa8\x45\xc8\xd1\xc3\x1c\x42\x6b\x1c\x0e\x03\xb6\x7e\x12\x8a\xb6\xcf\x2f\x27\x4e\x2e\x04\xc1\xfa\x7b\xf4\xa8\x24\x1e\x8d\xe8\x43\x9e\x5a\xa5\x13\x94\x14\xe5\x24\x10\x55\x0f\x30\xc3\xd5\xe1\x2e\x45\x5e\xc2\xfc\xc5\x15\x73\xea\x23\x36\x9b\xa1\x2e\x41\x93\x8a\x35\xdb\x44\x26\x07\x47\xb1\xc7\x7d\x9b\x99\x18\xca\xc8\xcd\xcc\x57\xc1\xcc\xaf\x4d\x8e\x69\x07\x48\x60\xb9\xa4\xcd\x50\x9d\x08\xe5\x07\x50\x03\xf4\x36\x47\x69\x07\x88\x2b\xd7\x11\x0c\xe8\x74\x38\xfd\x8a\xa3\xf7\xb7\x06\x2e\x65\xa3\x64\x22\xe4\xa8\x8d\x0d\x5f\x66\x41\x84\x81\x7c\x9c\xc0\xeb\x16\x1e\x1c\x42\x7f\xb4\x03\x12\x72\xe2\x9a\x89\x4b\xd8\x63\x0d\xc5\x4b\x9a\xa6\x22\xa2\x99\x7e\x2b\x31\x69\x7f\xbc\x01\x25\xad\x7f\xa0\x01\x55\xc8\x34\xf0\xa6\xa7\xaf\xea\x6f\x5e\xaf\x88\xb7\x12\x7d\x55\x52\x6c\x15\xfa\xa5\xa0\x09\x79\x88\xa2\x02\x99\xf3\x4b\xcc\xe4\xa9\x04\xa4\xeb\x19\x82\x3a\x01\x5f\x6a\x0c\x41\x3d\x29\x3a\x64\xd8\xe3\x16\xe6\x55\x61\xc5\xfa\xc1\x37\x2c\x91\x6b\x59\x93\x33\xc9\xa5\x5f\x66\x59\xe6\x23\xad\xe9\xf4\x7c\x64\xf3\xd1\xbd\x6c\x57\xab\xdb\xad\xbd\x8b\x69\x02\xdc\x88\xd6\x1b\xe5\x76\xd8\xed\xbb\xc2\x02\xb5\x30\x11\x65\x97\xea\x0b\x72\xe1\x8d\xbd\x21\xbd\xb3\x67\x4b\x1b\x73\xd6\xb9\xf6\xa9\x52\xd5\xeb\x8c\xa6\xdd\x0f\xb8\xc9\xf2\xe9\x34\x37\xcf\x2b\x9a\xda\xdf\xca\x21\x12\x97\x59\xb3\x6a\xe6\x60\x3b\x02\x23\xad\xa7\xd3\x1a\x1e\xcd\xdf\xf3\x2c\x2b\xa7\xd3\x94\xc1\x5d\xd0\x9a\x61\x0d\x6c\x74\x7a\x7e\x89\x4c\xc6\xa7\x6d\xa6\x3d\x5f\xd5\x42\x1f\x8f\xa1\x13\xa8\xde\x9a\xe9\x74\x61\x8b\x68\xdc\x37\x39\x15\x3d\x0c\xc9\x31\x2f\x03\x0e\x61\x40\x3a\x7c\x39\x2e\x63\xde\x2a\xe1\x8d\x04\x0b\x66\x18\x83\x11\xb9\xe9\xb9\xd0\xba\x8f\x5d\x9f\x1a\x09\x9f\x15\xda\xfd\x95\xe7\x87\x03\xe1\xf1\x38\x09\x3b\xcf\xa8\x75\x37\xa7\x05\xde\xcd\xb7\x25\x25\x4c\xbc\x2c\x2c\x27\xa6\xae\xd0\xb2\xda\x6a\x27\x94\xde\x41\x57\x18\xce\xc1\x5c\xf7\x8b\x8e\x99\x14\xbe\x16\x19\xc1\x29\xcf\xd6\xf7\xef\xc9\x9d\xcd\x38\x36\x60\xb1\xd5\x99\x96\xbe\x07\xdb\x16\xab\xca\xbe\xa2\xb2\xd7\x86\xef\x09\xa1\x28\x68\xbf\xb8\xf5\x1b\xd3\x1e\xd2\x03\xe4\x73\x0f\x8f\xc9\xba\xca\xe1\x99\xfb\x66\xe5\xd6\xc1\x5d\x1e\xf5\x53\x7d\xaa\xbb\x7d\xb6\xfd\x61\x66\x24\x48\x5b\x14\x7c\x6b\xdb\x0d\x9a\x4e\xcb\xd4\xb3\x91\xc1\x1c\x4c\xf8\xc1\xc7\x0b\x61\xd2\xa6\xca\x41\x6b\xf7\x90\x79\x96\x97\x6e\x0b\xb0\x84\xb1\x5c\xcd\x33\xe2\x65\xe8\x70\xa5\x14\xa5\x85\xfa\x1a\x33\xa3\x2e\xce\x1d\x2d\xe2\xfb\x2f\xe1\xdc\x37\xc1\x50\x0f\xca\x9e\x24\x8f\xb4\xa5\x52\x0e\x74\x5b\xd2\x6f\xbd\xaa\x7f\x90\xd9\xd8\x98\x45\x58\x6d\x1c\x72\x7a\x37\x39\xb1\x22\xf4\x40\x29\xb0\xf4\x37\xdb\xd7\x42\x46\xd9\xfb\x34\x5e\xfa\x14\xa9\xc4\xc9\x68\x2b\xaa\xf5\xba\x44\x2d\x86\xd9\x3d\x24\xb9\x27\xe3\x9a\x02\x3d\xdf\x70\xeb\x82\xc9\x0e\xca\xef\xc2\x3a\xe3\x7c\x21\x0c\xf5\xa5\xf2\x93\x7b\x70\xc4\x06\xc5\x8e\x2a\x14\xf6\x91\x77\x7d\xc8\x8c\x0c\xd4\xd8\x7f\x8c\x69\x24\xe4\x80\x1f\xd2\x8a\x8c\xca\x7f\x45\x5f\x2b\xf2\x7b\x57\xb6\x33\x0b\xc9\xc8\xb9\xd3\x11\x1f\xac\x8f\x12\x7e\x07\x48\x5a\x90\x83\x75\x79\x50\x2d\x8c\xee\xfd\x91\x0d\x14\xf7\x87\x36\x76\x84\xa2\xb1\x99\x14\x44\x3d\xc8\x32\x8a\x70\x24\x03\xe5\x23\x8b\xd4\x59\x6a\x9d\xad\x29\xf2\x45\x09\x1d\x06\x60\xcf\xab\x36\x80\x32\xc7\x66\x38\x38\xc5\x88\x30\xe5\xa1\x59\xea\x2a\x5e\x84\xeb\xa1\x31\x83\xa1\x30\xa6\x23\x0c\xf3\x28\x7a\xec\xbd\x77\x1c\xf1\x79\x64\xfd\x56\x5d\x2e\x7b\x39\xb0\x5c\xe7\x59\xec\x24\x0f\xaf\x6e\xa4\xf0\xf8\x62\x07\x87\x29\x9c\xbc\xb7\x6a\x06\x2f\x8c\xa1\x83\xb8\x26\xe2\xeb\xdc\x27\x91\x89\x76\xb1\xc0\xe8\xe1\x7f\x18\xd4\x46\xc4\x84\xf1\x09\x3e\x00\xe1\x7d\xc8\xec\xf5\xf0\x45\xe3\x7c\xd0\xb6\xa1\xdf\x71\xb4\xca\x89\x47\xe2\x41\x5c\x14\xfd\x34\x20\x67\xfa\x3c\x76\xa0\xdb\x1d\xf1\x9d\xdc\x24\x3f\x40\x62\xfc\x80\xc3\x1d\x27\x08\x80\x9d\x1a\x6d\xe0\x2e\x1b\xc1\x7e\xbf\xfb\x56\x59\xa0\x08\x90\x0c\x8f\x3a\xa4\x72\x3b\x20\x71\xa2\x3d\x4a\x14\x36\x46\xea\xf6\x80\x24\xb2\x0e\x72\x1c\x37\x44\x74\x99\x2b\xd8\x76\x08\x18\x19\xb8\x23\x46\xd0\x41\x4a\xb2\x01\x14\x0a\x3e\xe5\xca\xf1\xf5\x65\x41\x98\xa0\x3b\x2a\x89\x2a\xa4\x1d\x10\x06\xaa\x69\x04\x13\x97\x56\x40\x77\xde\xe5\xa5\x5d\x65\x53\xed\xf1\xe7\xc9\x1e\x7c\xf9\x09\x14\x28\x40\xd2\x85\x9c\x41\x2a\xbc\x0d\xa3\x30\x80\xaa\xcf\x67\xa7\xb4\xa1\xa1\x5c\xa4\x18\x13\xea\x04\x3b\x3a\xd7\x06\xad\x7f\xac\x18\x51\x6a\x38\xae\x07\xea\x62\xb9\xa5\xbc\x7b\x90\xc2\x83\xd3\xb1\xe3\xd7\xd9\x99\xe7\xb4\x40\x08\x6b\x6b\x81\x51\x6a\x34\xe5\xce\xa2\x2c\xfe\x19\x9c\x1f\xb6\x8a\x67\x2b\xfe\x28\x9e\x6d\x88\x31\x0b\x7c\xeb\xed\xdb\x6b\x79\x8d\xaa\x98\xd0\xce\xa3\xd0\x7d\x3d\x10\x56\x50\x76\x63\x3f\xa9\x92\xf5\x00\xbb\xd7\xe9\x7a\xbd\xe9\x76\x0b\x6f\xa2\x5d\x9e\x5f\x8e\x75\xf7\x7f\x04\x4f\xf8\x20\x65\xff\x10\x3e\x3c\x1e\x5d\xf0\x07\xbe\x8a\xa0\x04\xe3\x47\xc3\xf1\x02\x8b\x28\x8b\x65\x62\x55\x7d\x26\x15\x6f\x50\xde\x83\x44\xb8\xf8\x6c\x2a\x3c\x54\xd1\x68\xf4\xa1\xee\x20\xbb\x8d\x86\x3d\x1d\x25\x84\x86\x8d\x32\x4e\xa2\x55\x30\x37\x38\x27\x0b\x4e\xfb\x70\x94\x8f\x58\xbc\x10\xb5\xf2\xfe\xbd\xad\x83\x09\xc4\xe8\xeb\x53\xef\x48\x6d\x88\x39\x79\xe0\xae\x74\xb9\x38\x41\x56\x1a\xdb\x7d\xe3\x81\x05\xb6\x53\xe0\x7b\x35\x02\x45\x0c\x5f\xfe\xdf\x7c\x49\x46\x0d\x3e\xe3\x33\xed\x3a\x0b\x85\x9b\xfd\x3b\x86\xf4\x47\xf1\x8b\x93\x98\x25\x6f\x77\x8b\xaf\x2e\x2e\xbd\x20\xa4\x43\x98\xe2\x32\x30\x88\x8e\x68\xf9\xd1\x38\x63\xe6\x07\xab\x09\x39\x9f\xd8\x01\x1a\x8d\x36\x64\x99\xb6\x8b\x4b\x1d\x38\xd1\xf8\x0b\xb6\x08\x4d\x04\x04\x59\x65\xdb\x5c\xa4\x3c\x16\xee\x45\x9c\xc6\x4c\x8d\x9c\xcd\xd3\xf8\x11\x79\x22\x3f\x93\xbf\xc0\xdc\xc4\xdf\xe6\x46\x07\x1d\x64\x15\xe9\x6c\x99\x15\xf6\xc7\x30\x0c\xb3\x3b\x36\x8c\x5f\x4e\x56\x40\x8e\xaf\xc5\x90\x96\x53\xd2\x1b\x06\xd7\xa8\xb4\x9b\xeb\x0d\xf2\x34\xd5\xf1\x73\x28\x2a\xa5\x74\x51\xf9\x16\xd5\xe1\xba\xb8\xbc\xe2\x4f\xb2\xc5\x15\xbf\xb8\x40\x0f\x49\xa8\xc0\x9c\x32\xd0\x55\xc7\xb2\x13\x8c\x4a\x1d\xd7\x6c\x83\x59\x47\x2c\x38\x64\xe3\x0d\xba\xb8\xf3\xac\x13\x36\x14\xec\xa3\xa6\x53\xa5\xd7\xd3\x08\xc2\xf3\xdd\x58\x5c\x09\xa7\x9e\x17\xc6\x3b\x82\x67\x64\x2d\x36\x23\xe8\x9b\x8f\x1b\x33\xf3\x88\xec\x91\x3f\x64\xe0\x2c\xf1\x6f\x54\x80\x37\xbe\x39\xad\x83\x9f\xee\xf5\xfb\x30\x5f\x49\x4e\x50\x2c\x9d\xcc\x48\x46\xc0\xf2\x0b\x47\x10\x82\xf6\xc9\x03\x18\xe2\xab\xba\x5c\xd5\x30\xaf\xa3\xb8\x96\xfe\x51\x1e\x0a\x86\x44\x86\x98\xae\xd6\x5a\x1c\x1a\x96\x89\x44\x58\x26\x9f\x37\x22\x3d\xde\x88\xc4\x78\x23\x72\x02\x6f\x44\x77\x69\x87\x3d\x42\xdc\xa4\xa3\x07\xe3\x72\x3f\x7b\xb7\x3d\x15\x1d\xa3\x12\xd2\x4d\x7e\xf8\x59\xbc\xd4\x9a\x6d\x34\x3b\x25\x7f\xd1\x02\xb5\x3d\x86\xca\x3b\xc7\x96\x91\x1a\x33\x06\xe9\xb0\x53\xb7\x43\x7e\xca\xd6\x56\xc1\x92\x9c\x26\x32\x7d\xdf\x7d\xf8\xda\x9f\x43\xc7\x31\xd5\x64\xa3\x2f\x42\xff\xbb\x93\x0a\xc5\x4c\xce\x22\x1d\x8a\x79\x73\xb8\xe1\x79\x41\x5e\x54\xdc\x84\xf4\x49\xc3\x13\x11\xd4\xcb\xfa\x6d\xe8\xa7\xd6\x44\x31\xed\xb1\x31\x5c\x82\x7b\xc4\x6b\xd0\x7a\x51\xc6\xa7\xb0\x26\x9b\xd6\xa5\x4f\x1c\x70\xa6\x19\xac\x3d\x09\x73\xc4\xc5\xe2\x57\xa2\x7b\x49\xcc\x08\x30\xa5\x97\x97\x20\xa8\x57\x3f\xb7\x1f\x79\x33\xe9\x28\x7b\xe7\x3c\xf0\xa8\x73\xdb\x6f\x02\x20\x0c\x43\xae\xd7\xe0\x73\xb2\x83\xbe\x2a\x66\x22\xdf\xfb\xf5\x5c\x78\x6a\xe8\x54\xf1\x1c\x6b\xb2\xc9\xc2\x80\x20\x36\x1e\x9c\x09\xdf\x64\xba\x72\xe1\x64\x43\xcc\xef\x21\x38\x86\x20\xd6\x53\xac\x9a\x76\x4f\x1d\xaf\x6d\x72\xbf\x78\x96\x25\x2a\xa4\xed\x4a\x1e\xf9\x22\x15\x98\x62\x82\x39\xae\xd0\x52\xbe\xd8\x79\x2f\xda\x94\xfa\xc0\x06\x61\xa3\x5c\xc8\x9e\x56\x69\x9f\xed\x49\x3b\xfc\x9f\x1e\xc8\x60\x9f\x5d\xe2\x0f\xc3\xc1\x0c\x02\x97\x2d\x05\x64\x16\x7f\x5b\xd5\x5f\x70\x58\xf5\xe2\xa8\xfc\x5e\x1d\x07\x7f\x3e\x88\x23\xae\xe3\x56\xd6\x61\xc4\x80\x68\x04\x00\x73\xc9\x85\x28\xa7\xf3\xe8\x92\x4c\x85\xbd\x02\x69\x1e\xbe\x7a\xb7\xab\x3b\x8d\x5d\x5f\xbb\xe8\xb6\xbd\x88\x05\x2f\x4a\x7a\x73\x2b\x9e\x0e\x15\x28\xba\xe1\x02\xae\xeb\xed\x2d\x29\x9a\x92\x14\x7a\x48\xdd\x01\xe9\x8c\x2d\xd1\xd7\xb4\x62\xcf\xaa\xfd\x9e\xf6\xbe\x17\x94\x93\xad\x28\xef\x74\xf4\x68\xef\x6a\x78\x29\x34\x38\xf5\xae\x7b\xde\xf1\x76\x1e\x46\x1f\x22\x48\x66\x49\x50\xe7\xa2\xf7\x32\xf3\xac\xc5\x06\x92\xd8\x00\x11\xbb\xc0\x55\xb6\xd0\x27\xed\x9e\xca\x71\x88\x8a\xf7\xcd\x5d\xee\x19\xf9\x14\x89\x78\xd8\x71\x18\xf5\x0d\x38\xf5\x1b\xfa\xf8\x9b\xab\x20\xf6\x6a\x96\x65\x74\x25\xe4\x55\xea\x1b\x9f\x2e\xe1\x4d\xdc\x31\xb4\x72\x17\x38\xb2\x73\xa8\x66\xb3\xcd\xa4\x92\x53\x98\xcd\x5a\x39\x0d\x36\x9b\xb5\xad\xcd\xaa\xa1\x43\x53\x11\x5c\x54\x8c\x2c\x1d\xc7\xd0\xc2\xbf\x2e\xa8\x6a\x79\x69\x08\xaa\x92\xca\x29\x2c\xa4\x02\xb5\x16\x3d\x21\x41\x70\x82\xe8\xf9\xf0\xe3\xf3\x3a\x18\x37\xc1\x05\x34\x7c\x7b\x8f\x06\xba\xec\x2b\x05\xee\x36\xd0\x41\x4d\x44\x8a\x6c\xf4\x01\x8a\xab\xd8\x65\x59\xc5\xe9\xb9\x48\x98\xa1\x0e\xc6\x68\x75\xd6\xa3\x41\x9a\x2c\x4c\x32\x25\x07\x6f\x78\xc6\xce\x54\x14\x05\x0c\x64\xa7\xd3\x3a\x0a\x27\xde\xba\xd6\x19\xd7\xfe\x0a\x10\xeb\x32\x52\xd7\x36\x75\x71\x5e\xd7\xf4\x46\x5b\xfb\xc3\x31\xc5\x41\xb1\xfe\xd1\x37\x59\x4f\x14\xf5\xf5\xac\x9f\xd1\x0d\x93\x79\x27\xae\x80\x3e\xf1\x92\x97\xe9\x7a\x2e\x00\x8d\x6e\xd5\x7d\x45\xc6\x52\x2d\x52\x87\x45\xfa\x48\xcb\x52\x9d\xf4\x1e\x5b\x1b\xc3\x39\xea\x83\x1b\x2a\xee\xbe\xd0\x4a\x95\x4a\x52\x39\xbd\x91\xc7\xc2\x43\xe9\x9c\x0f\xfd\x35\x08\x48\x96\xee\x67\x2f\x7f\x33\xae\xe6\x5e\x2e\xc8\x8e\x2d\x31\x00\x50\xff\x83\xea\x7c\xbd\x91\x05\x68\xdf\xe8\x2e\x08\x12\x16\x1b\x5b\xf8\xa5\xbf\x4e\xdd\x12\x90\xab\x07\x57\x41\xf6\xc2\xc8\x7a\xbb\x43\xb3\x18\x04\x3e\x35\x64\x53\x70\xe0\x20\xb8\xa6\x64\x71\x49\xe3\xf7\x6b\x90\x7e\xb7\x04\x07\xe7\x41\x43\xac\xbd\x0f\xd8\x8e\xf2\x3d\xb1\x69\x17\xc7\x07\x67\x6f\x90\x13\x86\xe9\xdd\x36\xb2\x05\x40\x0e\xfd\xe5\xe9\x42\xd9\xc8\xd5\xe8\x7f\x2e\x42\x65\x70\x48\x2f\x00\xf4\xf4\x8f\xcd\x40\x64\x89\x1e\x11\xf2\x20\xb1\xea\x25\x50\xf9\x8c\x44\xcd\x90\x3d\x01\x2c\x8b\x83\xf6\xc1\x5d\x45\x59\x2a\xf7\xbf\x28\x9a\xa9\x73\xd1\xde\x10\x91\x52\x9d\x46\xbc\x42\xf2\xd2\xa8\x06\xd1\xca\x48\xe0\x84\x48\x52\xc9\xde\x55\x6d\x63\xa7\x7a\xc8\x41\xdd\xce\xa2\x2b\x62\xb2\xb9\xee\xd8\x06\xe7\x19\x59\x57\x9b\x49\xbe\x5e\x6c\xb2\x2c\xcb\xd7\x97\x9b\xe9\x54\xc7\x41\xe3\xeb\x6a\x03\x23\xee\x75\x3f\x32\x54\x85\x60\x45\x7f\x2c\x2e\x9f\x55\x17\x5a\x6c\xec\x5d\x8d\xa8\xef\x5b\xac\x03\x9f\xc4\xd8\xc6\x2a\x98\x37\x43\x38\xcf\x16\xb8\xce\x2a\x33\xc9\xfc\x71\x7d\x95\x9b\x49\x36\x59\xb5\xce\x37\x13\xba\x6e\x36\xd9\x9a\xac\x9b\x0d\x66\xeb\x66\xb3\x31\x44\x3c\x55\xe7\x45\x5e\x37\xc3\x27\xe4\x47\xf2\x11\x0e\x45\x2f\x23\x67\x8f\xd0\xea\x5e\x6a\xdd\x2b\x38\x86\x92\x53\x04\xf2\xc7\x3e\xb2\xed\xdf\x50\x9d\xe3\x67\xf5\x4e\x5a\xe6\xec\xfb\x5d\x7a\xc6\x4b\xe1\x75\x64\xcd\x0a\x22\xc8\xce\x5e\xbc\x2e\x37\xd7\xd8\xc1\xf6\x70\xfe\x08\x46\xc2\x04\x60\xbe\x87\xc4\x7a\xe8\xe5\x81\x81\x03\x6a\x2b\x68\xd1\xbd\x2b\xfb\x58\xd4\xd2\x11\x83\x88\x33\x46\x64\xfb\x0b\xa3\x56\x61\xa2\x70\x0e\xd8\x4f\x83\x90\xf8\x4b\xef\xfc\x00\x61\x59\xbb\xda\x97\x45\x07\x43\x61\x47\x1d\x1a\xf2\x11\xe1\x1e\xd1\x20\x32\x9f\x78\x51\x21\xb8\x02\x6d\x4a\x40\x0f\xb9\x14\x2d\x43\xa4\xd0\x20\x0e\xb7\x5a\xc0\x07\xc0\x60\x98\x48\xfa\x2c\x30\x01\x62\xa8\xf7\x21\x42\x4c\x68\x59\x68\x2c\xee\xd3\x10\x06\x56\x51\x0d\x41\x82\x8e\xf4\x7d\x0c\xc9\x34\xfb\x4d\x75\xb2\x9a\x45\xdb\x9a\x70\xab\x91\xeb\x84\x30\xa9\x41\xd7\x54\x05\x91\xe4\x3b\xa2\x10\x03\xad\xd1\x41\x76\x1b\xc3\x1c\xa9\xeb\xb8\x13\x06\x3f\xe6\x82\x1a\x6f\xb1\x17\x05\x46\x8f\x70\x0b\x60\xff\x6b\x5e\xff\x4c\x24\xde\x09\x8f\xa3\xc2\xe6\x7d\x8c\xd4\x87\x03\xed\xf0\x69\x48\x41\xd4\xb9\xa9\x43\xf4\x3f\x10\x89\x42\x12\x69\x6b\xb2\xe6\x9b\x8d\x3c\x2f\xea\xd7\xe0\x55\xa1\x3e\x6b\xcf\xc0\x21\xc0\xd4\x80\xe2\x82\x46\x7f\x05\x50\x89\x35\xf6\xc0\xda\x07\x16\xf4\x7a\xdd\x4d\x73\x76\xc4\xd1\xe6\x72\x6f\xbe\x9b\x4c\x60\x91\x65\x59\x4a\xce\xa8\xcb\xc9\xdb\x9d\xf7\x6a\x78\xc1\x36\x4b\x77\xda\xd7\x64\x83\xec\xf5\x1e\xe9\x0b\x50\xf5\x35\xa4\x77\xec\x63\x58\x5a\x18\x5b\x26\xc3\xcd\x22\xbd\xd2\xb2\xbb\xd8\x22\x7b\x43\xce\xbb\x43\x0d\xfa\x5d\x7e\xa5\xc9\x69\xbe\xe7\xb3\xc6\x73\x3c\x8e\x76\x1e\x7c\x36\x6c\x84\x9f\xa9\xbc\x6f\xe3\xeb\xe7\x39\xb7\x57\x91\xce\xad\x1e\x5c\x69\x01\x2b\x3e\x20\x34\xb2\x4d\xf4\xa4\x49\x0a\xa3\xf3\x86\xcd\x25\x59\xf2\xae\xe1\x4c\x5e\x2f\xba\x54\x9a\xe8\x2e\x55\x58\x79\x9c\x00\x1e\x66\xcd\xe1\x35\x3f\xdc\xe6\x2c\x10\x1c\x41\x26\x0f\xc3\xc5\xc5\x8b\x0c\xe8\xad\xae\xf3\xb2\xec\x0b\xa2\x52\x40\x0b\x71\x0a\x3e\xd0\x2f\xce\x66\x02\x49\x04\xb2\x16\x1b\xc8\xea\x06\xd7\x22\xfb\xa5\x26\x36\xf5\xcd\xf9\xa5\x49\x53\xb8\x68\x53\x82\xd0\x48\x43\xbe\xa2\x92\x87\x9b\xc0\x8d\x9f\x56\x6a\x3c\x90\x7a\x8b\x69\xf0\x46\xc4\xa1\x2b\x76\xc4\x23\x01\xad\xfc\x4c\xff\x5e\x7f\x08\x45\x84\x36\x8b\xbe\x38\x75\x5e\xd0\x7a\x5b\x31\x46\xb6\x26\x11\x4e\x87\x3a\xd0\xa7\xae\x43\x20\x28\x02\xd6\x5b\xba\x21\x42\x36\x14\xa0\x07\x8b\x7d\x72\x47\xf1\xed\xee\xdb\x52\x80\xa3\xf7\x7a\x83\x59\xb6\x9f\xcd\x40\x8d\xa6\x13\x5f\x0b\x67\xbf\xa0\xc5\x51\xac\x1f\xb1\x0d\xb4\x04\xb7\x74\x27\x52\x34\xd1\xee\xe0\xd4\x29\xe3\xaa\xec\x54\x39\x68\x8a\xe6\x46\x14\x99\x22\xc8\xea\xc9\xc8\x27\x91\xa2\xab\xf3\x7c\x5e\x54\x8c\x5c\xb9\x57\xc6\xf7\x33\x9f\x83\xc4\x6f\x52\x9f\x51\x56\x8b\x9c\x6d\x75\x96\x78\x33\xdc\xc7\x0c\xf2\xbc\xc1\x98\x6a\x84\xdd\x2c\x90\x8d\x18\x2e\xd4\x8e\x48\x04\x02\x98\x7e\x34\x3e\x65\x04\x15\x5a\x33\x28\xfb\x39\x8a\xf7\x3e\x03\xe1\xc7\xfb\x81\xfd\x94\xdc\xb2\x5a\xb9\x67\xc0\x62\xe9\xac\xf6\x11\xad\xd3\x7d\x1b\x64\x6e\x22\xa8\x13\x8d\xcf\x53\xb9\xf4\xb9\x74\x4c\x33\xe6\x11\xad\x21\x9b\xce\x25\x4b\xc7\xc6\x18\x79\x2e\x77\x2f\x72\x0a\x71\xdd\x65\x81\x9b\x6c\x71\xd5\x3c\x36\xb9\xcf\xae\x1a\xc3\x06\x96\x59\x2d\x79\xbf\x6d\x46\xd6\xa5\x4a\x67\x4d\x8b\xe4\x3c\xcb\x4a\xe3\x6e\x5a\xad\xcb\xcd\xf1\x48\xd7\xe5\x06\x1b\x79\xfb\x44\x47\x91\xb7\x73\xde\xad\x76\xa0\x38\x02\x17\x5f\x1d\x53\xde\x25\x95\xb4\x86\xaf\xe1\xfd\x9e\x96\x78\x8b\x26\xef\x38\xc9\xdf\xab\x78\xf3\x2e\x53\x40\x58\xc3\x85\xf7\x94\x35\x70\x5a\xe8\x1c\xb0\x25\x42\x0f\x58\x89\x17\x23\x8e\x47\x7e\xcf\x46\x03\x16\xf6\x6b\x92\x0a\xfd\x01\xbd\x9a\x58\xe5\x62\x5d\x6e\xb2\x6d\xab\x5c\x81\x0d\xf1\xb0\x0d\x0e\xcc\x38\xf3\x37\x66\xb8\xe3\xb8\xd5\x87\x30\xb4\x4e\x8a\x38\xe2\xe7\x93\x22\x7c\xae\x5b\xb6\x34\xbe\x45\xe0\x31\x89\xfd\xc4\x27\x76\xa3\x62\xfb\x89\xe1\xaf\x86\x65\xfa\xa7\xa8\x86\x03\xcd\xe1\x69\x33\x60\xde\x0c\x34\x0b\xde\xa7\x41\x7e\xdf\x3d\x77\xa7\x72\xc6\x4e\x7c\x8a\xe0\x6b\xac\x02\x89\xad\x82\x40\xf7\x77\x40\x2a\x98\x09\xa9\xab\xe9\x39\xd5\xb8\x2b\x26\xce\x05\x46\x5e\x4b\xa8\x1d\x57\x1c\x41\x6f\x6b\x25\xee\xd3\x44\x04\x76\xe9\xa9\x7b\x08\xc6\x26\xb8\x2f\xb3\x11\x99\x0e\x5c\x57\xe5\x74\x9a\xe6\x3d\xdc\xeb\x12\x33\x69\x66\x7c\xd8\x36\x62\x9c\x41\x37\x02\xcc\x06\x64\x7a\x34\x23\xeb\x2a\xab\xd7\x6c\xb3\x51\x20\x50\x9a\x28\x36\xe7\x59\x96\xaf\xab\xcd\xf1\x68\x6c\x60\xbe\xfb\x8f\x26\x2f\x53\xbe\xae\x36\x98\xa2\xe3\x51\x58\xf1\xa4\x7f\x22\x4d\x86\x8d\x3e\x3d\x91\x3c\x4e\x66\x21\xce\x9f\x25\x4b\xfd\x8a\x16\xb3\xe4\x49\xd2\x75\x81\xf7\x66\x3f\xe4\x08\x3f\x2c\xea\xef\xeb\x1e\x62\x62\xc1\x88\x16\xa7\xed\x65\xba\xef\xb7\x44\x9c\xa7\x7d\x98\x97\xfb\xa4\x61\x76\xe4\x41\x69\x1c\x4f\x90\x8f\x67\x9a\xf2\x89\x63\x12\x37\x04\xb9\xdf\xa7\xf5\x5c\x28\xfb\x2c\x5f\xc2\x3e\xb6\x28\x8a\x6f\x19\x58\x0e\xe5\x98\xe2\x85\x1c\x88\x1d\xd2\x58\xf0\x81\x8e\x12\x26\x56\xad\x23\x4c\xf0\x07\x37\xe9\xb8\xfd\x47\x51\x03\xc1\xbd\xf0\x00\xd1\x18\xe1\x5e\xbc\x84\xee\x31\x39\x6d\x41\x63\x2a\xa4\x74\x58\xbf\x31\xb6\xd8\xfd\xe2\x83\x4b\x1f\x69\x99\xa8\xa0\x07\x87\x6e\xd0\x03\x0a\xef\x30\x45\x1d\xb3\x93\x3b\xf0\xfc\x1e\x09\x5e\x0e\xda\xca\x30\x12\xbc\x92\x39\x8f\xb9\xf7\x69\x15\xe7\xc3\xa6\xe2\x29\x42\x2d\x99\x5b\xe2\x25\x8c\x21\xab\x13\x7b\x05\x2f\x0b\x4c\xe6\x7e\x34\x05\x78\xf4\xbe\x6f\x3b\xba\x55\x10\x06\xbe\xa8\x78\x56\x77\x95\xae\xf2\x65\xfe\xd5\xb2\x5f\xd5\x66\xbd\x78\x34\x2d\x52\x90\xe4\xa8\x93\xe0\xc8\x4f\xc3\x07\xe9\xbf\x6c\x1a\x3f\x56\xf1\x3d\x34\xba\xec\x4a\x01\x3d\xcb\x2c\x95\xea\x57\x7f\x08\x4f\x05\xf9\x24\x78\xbe\x15\xb2\xe9\xa2\x30\x4c\x4e\xed\x79\x7f\x2b\xc3\x24\x02\x36\xc1\xef\x21\x2c\xd9\x60\x0e\x73\x97\xc4\x25\xb1\x73\x4d\x32\x67\x5e\x7f\x9b\xd7\x6f\xcc\x7b\xdd\x91\x62\x07\x20\x52\x71\x52\x90\xa1\x5a\xcf\xdd\x97\x6e\x3d\xc5\xa5\xa8\x81\x39\x92\x58\xc2\xf3\xb2\x3f\xf5\xe3\x91\xc8\x83\xa2\x9b\xb2\x20\x35\xb0\x74\x90\x81\xc2\xc6\x35\x61\x95\x1d\xbb\xea\xfc\xcd\x81\x6c\xe9\x8e\x92\x22\x65\x08\x45\x96\x19\xcc\x3e\x15\xb7\xd9\x9b\xfd\x4b\x3b\x03\x30\x3e\x7b\x60\x75\x40\x03\xe5\x65\x67\x4b\x19\xf2\xf2\xc5\x19\x8d\xfd\x0d\x11\xaf\x24\x2f\x24\x09\x90\x54\x25\x33\x54\xf6\x22\x68\x52\xcb\xe5\x94\x6f\xf4\x92\xf6\xf7\x71\x3a\x4d\x75\x3b\xfd\x6f\xba\x31\x95\x1c\x04\x7b\x5b\x8b\x10\xce\x57\x2a\x3a\x7d\x2e\xd9\xf9\x68\x7e\x10\x9b\xe5\x53\xd7\xf2\xf2\x72\xbc\xbd\x3b\xe8\x24\x37\x08\x2d\xa1\x19\x90\x91\x00\x11\x5f\x39\xe5\x87\xae\x68\x40\xd4\xb1\x31\xaa\x6a\xdb\xe2\x91\x42\x03\x7b\xeb\xaf\x26\x4c\x0f\x19\x9b\xc5\xb1\x75\xa4\xa7\xac\x23\xfd\x92\x75\x64\x2b\x95\x66\x80\xb9\x85\x4a\xef\x29\xdb\x96\x4d\x41\x5e\x16\x2a\x75\x9d\xa7\xc3\x32\xd3\x7c\x51\x71\x42\x6f\x98\x1c\x29\xc1\x0c\x73\x2c\x1b\x41\xbf\x77\x23\xa8\xde\x08\x77\x54\x34\x0b\xf7\xc7\x1d\x94\x33\x53\x7b\xe8\x94\x20\xff\x28\xfd\xd7\xec\x11\x2c\x8c\x4d\x8b\x98\x32\x7c\x4f\x8b\x5a\x61\x7c\xc7\x77\x8e\x9d\xe2\xd5\x00\x44\x1b\x06\x59\xad\xc7\x32\xb6\x0e\x4f\x59\x21\x37\xc9\xb5\xd5\x3b\x1e\xba\x91\xa7\xb5\x57\xda\x9c\x10\x3c\x5e\x6c\xec\xea\xe8\x62\x56\xb5\x3e\xfe\xc2\x80\x87\x89\x59\x14\x75\x96\x26\x62\xcd\x36\xfa\xba\x7a\x9a\xd2\xae\x8d\x9f\x15\x53\xdd\xd3\x62\xa9\x54\x92\x77\x07\xb2\xf4\x9c\x0e\x54\x2e\x90\xc1\x95\x1a\xbd\xeb\x46\x60\x83\x9d\x02\x1b\xec\xcb\x60\xc3\x58\xeb\x5f\xdf\x10\x46\x78\x2e\x88\xdd\x3e\x6f\x7f\x61\x2f\x06\x0b\x2c\x43\x16\xd8\xc9\xbf\xdc\xfa\x0a\x85\xab\x98\x5d\x5c\x0e\x79\x44\xad\x6b\x01\xb3\x1e\x79\x2a\x3f\x09\x8b\xa4\x21\x61\x2a\xdb\x48\x3e\x8c\x6a\x26\x0f\xa1\x9a\x1c\x0b\x5c\x23\x4c\xd7\xd5\x26\xab\x3d\x53\x87\xa1\x2a\xcb\xbe\xb5\x36\xdd\xa5\x9e\xa4\x4a\x6d\x0c\x65\x85\x39\xe7\x6a\xcb\x3c\xf3\x6d\xbd\xfa\x8e\x26\x41\x41\xce\x54\x3a\x67\xf9\x9e\x18\x29\x9e\x0a\x28\xe6\x08\x2e\x30\xd6\xf1\x2c\x75\x62\xbb\x5b\x61\xaa\x77\xd6\x27\x44\xd0\x24\xb7\xea\x2c\xb6\xce\x37\x6d\xdb\xe2\xdb\xbc\x36\x53\x7c\x5a\x7e\xcc\xef\xf4\xa9\x1c\xca\x4f\x2f\x99\x41\x47\xb0\x58\xf2\x6b\x3a\x4d\x72\xa8\x0d\xa1\x08\xe7\x44\xb7\x08\xcd\xc7\x51\xc8\x50\x07\x03\xe3\xf1\x2c\x76\x06\x86\x70\x3c\xf2\xe9\x54\x27\x01\xaf\xd5\x1e\xd8\x99\x87\xe3\x78\xf9\xd0\x18\x06\x27\x99\x26\xb4\xd0\x53\xb4\x6d\x1f\x8f\x09\x2d\x3a\xef\x50\xaf\xc3\x10\xe7\x7d\x59\xc7\x17\x39\x2b\x2e\x24\x24\x45\x87\x60\xbf\xf6\xc7\x32\x7c\x8b\x7d\xd6\x40\xce\x53\x08\x34\xe4\xf7\xeb\xb6\x1a\xa9\x39\x0f\x51\xb7\xff\x88\xed\xf6\x40\xbd\xc5\x5e\xb5\xa1\xbe\x21\x77\x34\x94\x4b\x82\xb5\x16\x6b\x85\x90\x94\x44\x67\xbe\xcd\xf7\x44\x65\x78\x42\x9b\xe3\x51\xac\xc9\x46\x22\xbe\x38\xaf\x11\xc1\x0d\xee\xaa\x77\x2e\x35\x24\xdf\xde\x06\xe7\xd5\x93\x5e\xe2\x4a\x32\xa8\x63\x8c\x02\x97\xfc\xa8\xef\xa1\x51\xc1\x59\x9f\x4e\x69\x8f\x05\xb2\x39\xf0\x21\xea\x43\x85\x70\x88\xa6\x86\x2b\x7a\xe9\xb3\x74\x55\x60\x05\x59\x7f\xe6\xf1\x6b\xcc\xcd\x3c\x88\x7d\x08\x11\x37\x43\x99\x69\x32\x13\xb3\x04\x1c\xe7\x12\x83\x05\x9d\xf2\xca\x5d\x06\xd4\x5e\x06\x79\xb6\xb8\xca\x1f\x53\x6b\xc0\x66\x2e\x83\x1a\x37\x19\x5d\xe7\x1b\x23\x6a\xbc\xb6\xec\xa4\xdb\x24\x3f\xfc\x1a\x66\xb8\x41\x78\x9b\x95\x2a\x26\xeb\x2e\x2b\xe7\xfa\xe6\x28\xe4\x38\xb8\x7d\xca\xdc\xcf\xe3\x71\xbd\xc1\xee\x51\x89\x02\xb7\x08\xef\x50\x5a\x7b\xc5\x94\x09\xa3\xce\x6c\x5b\xe3\x1d\x9a\x54\xeb\x7c\x93\x49\x12\x61\x6b\x49\x84\x2d\xdc\x0a\xca\xd9\xa4\xc8\xee\xe5\x20\x96\x55\xab\x23\x93\xd4\x63\xeb\x85\x0b\x60\x14\x86\xb6\xec\x6b\x6e\x05\x6c\x83\xd5\x27\x3d\xbc\xa2\x14\xc1\x6d\x0c\x2b\xda\x48\x4e\xea\x8b\x56\xb4\x46\xb8\x41\x69\x35\xb4\xa2\x15\x6e\x94\x14\xbd\xd4\xcb\x26\x17\xb6\xb6\x0b\x5b\xeb\x85\x3d\x69\x29\x4b\x58\xca\xd1\x89\x0d\x51\x68\xd0\xcd\x44\xc4\xf9\x93\x54\xb2\x12\x8a\x52\x33\x44\x80\x8d\x09\x6a\xdd\xac\xce\xba\xf7\x3a\x43\x73\x3b\x94\x94\xca\xbd\x6b\xca\x12\xb5\x98\xd6\x1d\x44\x63\xf2\xa6\xb7\xc6\x98\x4d\xcd\x55\x8b\x77\x4c\xee\x7d\xdb\xb8\x8a\xbb\xeb\x21\x48\x78\xd1\xaa\x94\xee\xa6\xb4\xff\x39\xa4\xde\xfa\x1e\xa1\xd3\x29\x48\xcd\xc5\x3c\x2f\xcb\xea\xe3\x8f\x72\x94\x9e\xa0\xd0\x18\xd8\xe9\x8c\xd2\xc6\xa9\xec\x5d\x55\x95\x24\x67\x80\xad\x21\x55\xb5\xc9\x5f\x9d\xf1\xd5\xa3\x7f\x4b\x05\x6f\xc8\x51\x1c\x2f\xd1\x7f\x7f\x44\xe7\x82\xd4\x22\x25\x68\x99\xb0\x46\xf6\xac\x85\x28\x97\xe0\x4f\x82\x87\xc6\x19\x18\xef\x8d\x8c\x55\xe5\xcf\xfe\x56\x0d\x27\x25\xa8\x6d\x55\xde\xc0\xf1\x95\xb0\x97\x87\x99\x96\x24\xfb\xdc\x1c\x9c\x4d\x85\x75\xf0\x4f\x66\xf6\x66\x31\xb1\x19\x8c\x11\xc6\xc5\x5f\x60\xda\x29\x9f\x65\x7f\xc2\x12\xcd\x3d\xcf\x05\x49\xc9\xbc\xd6\x01\x2a\x38\x02\x35\x81\x79\xc1\x11\x52\x1e\x77\xaa\x98\x51\x3e\x78\xab\x23\x56\xde\xe7\xa5\x4e\x18\xbe\xd2\x1b\x1d\x5d\xb1\xc0\xd0\xc7\xea\xef\x9f\x43\xc4\xbb\x73\x5a\xff\x98\xff\x98\x12\x04\xd9\xc3\x5f\xbe\x79\x6d\x13\x88\x43\x7b\xad\x27\x52\xad\xfc\x96\x40\x97\x46\xce\xb3\xec\xf2\xd1\x42\xfd\xb8\xb8\x7c\xa4\xb2\x76\xe6\xa7\x2e\xb0\x01\x17\x70\x3e\x54\x26\x9b\x36\xe7\x79\x95\x8a\xec\x47\x98\x73\x4a\x10\x5a\x89\xd1\xe9\x7d\x61\x6b\x2d\x82\xfc\xb0\x0f\x8d\x35\x0e\x6c\xaa\x61\xbd\x5a\x92\xf8\xfa\x3d\x95\x5b\x34\x21\x73\x0d\xa6\x6f\x79\xce\xea\x5d\xc5\xf7\x19\xc3\x64\x2e\x77\xc9\xbd\xa1\x98\xcc\x63\x08\x02\x62\x64\xa8\x09\xba\xc2\x39\x26\x9a\xb4\x71\xef\x6a\x4c\xe6\xee\x89\x63\x8d\xac\xbe\x57\xc6\x61\xc0\x2d\xbf\x0e\x38\x0c\xc9\x79\x00\x45\x1b\x33\xd8\x70\xf7\x0c\xc1\x89\xa7\xcc\x42\x10\xfc\x20\x01\x22\x15\x19\x05\x9b\x2e\x16\x8f\x8a\xec\x95\x6f\xff\x08\xd9\x35\x1c\xd4\x53\x05\xd7\x9f\xdb\x3f\x26\x26\xff\xb8\xb1\x91\xf0\x45\xdf\x1d\x54\x6d\xd1\xfe\xcf\xa4\x3e\x54\xac\xd6\x28\xbb\x83\xc1\xe3\x12\x72\x67\xba\xa4\x20\xc6\xf4\x2a\x4e\x58\x81\xbf\xd7\x15\xbb\xc8\x0f\xd4\x5f\x04\x9c\xa8\xb2\x94\xed\x4a\xb2\x15\x15\x4f\xf0\x58\xf5\xee\x57\xc9\xaf\x86\x0b\x69\xc8\x90\x3f\x60\x39\x69\x66\xb3\xbc\xdb\xb5\x74\xd7\xf9\xf3\x6a\xdb\xec\x09\x13\xdf\x93\xf2\x40\xf8\xb2\x13\xef\x23\xa9\x60\x08\x12\x33\xa8\x3d\x91\x90\xf6\x7a\x67\xc2\xc4\x23\x3f\x9e\xc3\xb5\xbf\x41\xe0\xdf\xa7\xda\x34\x85\xad\xe4\x2f\x1a\x71\xde\xb7\xe9\xf3\x63\x27\x78\x11\xe8\x91\xb5\xf9\xf5\x5e\xfa\x8e\xd0\xea\xc3\x9a\x6f\x26\x62\xcd\x37\x0f\x8c\x8a\xa1\xd6\x8c\xbe\x8d\x0c\xca\x92\x55\x6e\x60\x9e\xe4\x45\xcb\x5b\x5c\xb1\x88\xe0\xc5\x7d\x54\x12\x98\xf1\xe1\xe4\x68\xa2\x3d\xe7\x6a\xc9\x6d\x68\x22\xaf\x75\x8d\x64\xd4\x48\x5e\x88\x4f\x8e\x75\x6d\x69\x22\xfb\x68\x29\x29\x88\xe8\x16\x6a\xda\x5f\xf0\x6a\xff\x53\x7e\x57\x56\x39\x08\xd0\xb4\xe8\x0c\x77\xba\xf0\x47\x1a\xb9\x3f\xe8\x2e\x15\xa7\xb5\x9b\x0c\x14\x48\xf0\xb9\x27\xc9\xb9\x96\x9c\x9b\x0b\x0f\x1f\xa3\x9b\x6e\xa3\x71\xe4\x7b\xf6\x89\x5d\xa1\x90\x4f\x3c\x72\x4c\xd0\x5c\x29\xb2\xe5\x6a\xeb\xc1\x2c\x87\x6d\xf7\x07\xce\x8c\x4a\x04\x04\x1b\x06\x02\xbf\x3e\x9e\x8a\x6b\xcd\xce\xc6\x5b\x85\x60\x1c\xe6\xdb\xbf\x34\x84\xdb\xe8\x45\xdd\x56\x43\x0b\x5a\x10\xb6\x6b\x36\x00\xf4\x7a\x39\xbf\x81\x76\x6b\x47\x53\xb7\x58\x73\x46\x4e\x4f\x3c\x38\x6f\xcc\xfc\xe8\x2e\x73\xdf\x92\x82\x00\x9b\xee\xa4\xc5\x69\x17\x34\xa8\x92\xbf\x76\x94\x75\x1d\x89\x9b\xb3\x4e\xf4\x1a\x57\x59\x92\x18\x98\xab\x87\xaf\x0d\x97\xad\x67\x30\xc0\x86\x9c\x82\xbd\x3a\xf1\x68\x1e\x3a\x53\x16\x53\xe1\xff\x32\x04\x16\x1d\x96\x8f\xc8\x7a\x1b\x1c\x58\x35\x9c\xba\xc7\x1d\x33\x14\x32\x26\x8d\x21\xd8\x0a\x65\x79\x4c\xce\x4a\x06\xe4\xac\xbe\xf1\x67\xa7\xc7\x75\xb5\xb1\xa9\x57\x7a\x5f\x26\x00\x13\x40\x7b\x76\xe7\x97\xaa\xac\xe2\xbe\x08\x46\xd2\x5f\x03\x84\xc0\x18\xba\x52\x8c\x2b\x6a\xf1\x40\x81\x08\x7a\x4d\x17\x58\xcc\x6b\xca\x6e\x9a\x32\xe7\xf4\x3f\x09\x4a\xd3\x05\x66\x0e\xdd\xbc\xb2\xd2\x68\x15\xd6\xfe\x60\x1b\x93\x4d\xdb\xaf\x43\x2d\x1f\xca\x86\x2b\x61\x65\x4a\x7c\xc4\xd0\x99\x5c\x78\x3e\xb5\x82\x4e\x17\xfd\x45\x8e\xee\x39\xd9\x96\x39\x27\xc5\xab\xfc\x70\x00\x12\x1a\x8b\xd0\x75\x3d\xea\x93\xf6\x70\x1b\x41\x2d\xc3\x71\xdf\xd3\x42\xa9\xb7\xf4\x6e\xbc\x2c\x74\xde\x3a\xb9\x2b\x81\x41\x82\x51\x49\x22\xec\x06\x13\x54\xf5\x6c\xe1\xa0\x58\xd0\x5f\x50\xb2\xe3\x39\x87\x05\x0a\x63\x53\x01\x66\xb4\x94\xbc\x2c\xc1\x83\x15\x50\xf2\x12\xde\x1a\xfb\x07\xdb\xf3\x30\x77\xa2\xc5\xa0\x45\x5e\xdf\x12\xae\xe4\xa0\x0f\x58\x4f\x9c\xd2\xc0\x28\x83\x7d\x2a\xaa\x17\xde\xa5\x3f\x00\x72\x7e\xf8\x2f\x33\x7d\xd1\x7a\xfd\xc7\x56\x20\x14\x9b\x31\x25\xe8\xb1\x89\x17\xb7\x39\xb3\xf2\x74\xc9\x98\x07\x70\x19\x20\xf4\xe3\xf1\xbe\x9d\x18\x0f\x68\xf9\x3a\xe5\x5a\xb0\xa6\xed\x24\x84\xd9\x29\x79\x7f\x53\xe4\x69\xb1\x2a\xcc\x8c\x60\x49\x01\x5c\x1e\x55\x09\x5a\x75\x60\xae\xa3\x98\xe6\x03\xaa\xce\xae\x8e\xcf\xbf\x76\xf2\x4d\x56\xb5\x5f\x6c\x4c\x12\xae\x87\xd5\x6e\x43\x84\x8c\x9e\x99\x47\x56\x4d\xa7\x95\x36\xbf\x9a\x4e\xcf\xcd\x4f\x25\x8b\x57\xb9\x7f\x6c\xc0\xe9\xea\x78\xa4\x72\x71\x43\x03\xc1\xce\xb3\x5d\xe2\xe8\xfa\xb0\x60\x7d\x58\x77\x7d\x02\xfc\xca\x7c\xe1\x78\xb8\x5c\x13\x65\x9b\x62\x72\x03\x55\xa8\xce\xee\xdd\x31\x1f\x82\xbc\xca\x87\x3c\x5a\x2c\xab\x39\x2d\xda\x49\x17\xe9\xe7\x1b\x2d\xc4\xac\x21\x4a\xca\x17\x99\x29\xa8\xcc\x68\x6f\x3a\x55\x95\x19\x05\x72\x5a\x48\xab\xed\x0f\x2f\xa8\xcf\x58\xe4\x6a\x7c\x91\x2b\xb5\xc8\xc3\xfa\xe8\x6a\x6c\xf5\x8d\x46\xa3\xb3\xf6\x86\xf0\xc8\x33\x3a\x1e\x4e\xd4\x42\x15\x89\x41\x95\xbc\x3b\x6b\x8f\x76\x71\x64\x8b\x72\x83\xc8\x23\x6e\x10\x54\xb9\x41\x8c\xee\x72\xe9\xed\xf2\xa4\x5e\x37\x1b\x0d\x1a\x5b\xb9\xe5\xa5\xdc\xf2\xb6\x7f\xcf\xfb\x5b\xae\x45\xb8\x55\x46\x3d\xd6\xbd\x3a\x91\x75\x0f\xd9\xf6\x78\xc1\x28\x7f\x1e\x79\xe7\x59\xf2\x3d\x68\xeb\x17\x61\xef\x25\xa9\xf4\x07\x30\xf8\x55\x26\x7a\x0c\xfe\x81\xd3\x7d\xce\xef\xfe\x0a\x09\xc3\x8a\x04\xef\x09\xbf\x21\x85\xee\x82\x92\x7a\xb9\xd6\x7a\xbd\x0d\xee\x5c\x88\x63\x44\xe2\xa0\xd8\xca\x49\xeb\x25\xa9\x68\x1b\xf3\x6c\xd8\xbb\x24\x63\x40\xff\xad\xc9\xc6\x11\x91\x1d\x8c\x8f\xf3\x8c\x19\x47\x69\x08\x05\x57\xf9\x6a\xcc\x54\xbe\xc2\xb9\xbd\x08\x80\x00\x14\x1e\x81\x34\xc0\x84\xa9\xcd\xd0\x1e\x39\x54\x3b\xdf\xec\x28\xd3\xc2\xc1\x64\xe9\x93\x0c\xb6\xb1\x17\xb6\x80\x69\x76\xe0\xf6\x85\xe6\xfe\xc3\x31\x6d\x03\xed\x45\xd8\xba\xb1\x06\xe5\xf8\x9e\x96\xe5\xc8\xe0\xc0\xf6\xf6\xb4\x86\xbe\x75\x7e\x43\x83\xcd\x79\x66\xb8\xa7\x35\xfa\xbd\x71\x09\x1a\x6c\x52\x97\x38\xb5\xc1\x07\x5a\x3b\xb5\x29\xd8\x8a\xf1\x4d\x78\xb8\x11\x65\x84\x3b\xba\xa1\xcf\xbc\x22\xa7\x34\xe9\x87\x0f\x1a\x68\xf2\xb9\x57\xe4\x94\x26\xfd\x08\x9f\x03\x4d\xfe\xe2\x15\x19\x6f\xb2\xf5\x4e\x52\x1f\xf8\x87\xf2\x0f\xda\x2a\x6f\x28\xbb\x29\xc9\x03\x5d\x9c\x2c\xe5\xf8\x1a\x5d\x74\x0e\xc9\x83\xcd\xc3\x4d\xf8\x59\xad\xf7\xce\xcc\x1f\x31\x85\xce\x29\xfa\x03\xa6\xf1\x07\x36\x1f\x1c\xb8\xaf\xdc\x76\xec\x00\x3e\xbc\x01\xf9\x87\xd3\x97\x3f\x76\x1e\xbf\x6e\x0f\xb1\xe3\xf9\x75\x7b\xf0\x0b\x7f\x6d\xf0\x0c\x8b\x47\xaf\xdd\xb8\xfc\xd3\x54\x71\x25\x31\x24\x3a\x8f\x43\xc2\xef\x6c\xf8\xf2\x14\x49\x6d\x90\x2c\x46\x13\xa4\xa0\x64\x32\x32\xf9\xe5\x7a\xd3\x1a\xc9\xbe\x16\x3f\xa8\x8c\xc7\xca\xd4\x99\xee\xd2\x5a\x32\x54\x2a\xf0\x74\x8d\x4c\x5b\x4d\x16\xae\x30\x78\x92\xe2\x32\x6b\x94\x55\xc8\x36\x6b\x9c\x55\x88\xb2\x14\xc9\x4a\xbc\x85\x96\xac\x36\x40\x67\xc2\xb5\x42\xc7\x9d\x47\xb8\x73\x4b\xb8\x17\xd9\x02\xdf\x66\x36\x22\x59\xf1\xf8\xf6\xaa\x30\xc4\xfb\x01\xef\x33\xbe\x2e\x36\xf8\x43\x7f\x38\x7b\x84\xef\xb2\x0f\x6a\x38\xef\xb2\x0f\x81\x91\xca\x3b\x94\x1e\x3c\xbb\x95\xc0\xee\xe4\x80\xdf\xa1\xc9\x6e\x5d\x6c\xb2\xbb\x56\x8f\x7c\x67\x84\x92\xf9\xb0\xd8\x4a\x11\x99\xc0\x3c\xfa\x56\x66\x27\x89\x9e\x10\x1e\x12\xf3\xea\x1c\x4a\xe8\x64\x21\x96\x0e\x1a\xfe\x80\xe0\xca\x8f\x96\xfe\x47\x48\xab\xf0\x29\x62\x2a\x5f\x4e\x65\x07\x19\x27\xdd\xd7\x8e\x6a\x87\x53\x9b\x38\xde\x20\x41\x9b\x89\x15\x32\xb2\xf9\xb6\x22\x10\x95\x13\x81\xf2\xe1\x24\x15\x81\xf6\xce\xc7\xd4\x13\x20\x8f\xaa\x05\xb8\x4a\x37\x34\xaa\x12\xc0\x1e\x67\xc0\x37\xd3\x69\x4a\x41\x0f\xa0\x23\x59\x63\xfa\x90\xf0\x3f\x66\x90\xd3\x51\x23\x8d\x68\x07\x04\xc8\xab\x54\xb4\xad\x39\x2d\xb2\xce\xd2\x08\x08\x9b\x35\xa2\x87\x22\x1d\xe1\xdb\x74\x7a\x9e\x2e\x30\x3d\xd9\x5e\x00\x29\xf3\x45\x71\x82\xba\x4e\xcb\xa9\x25\xc7\xe3\x4c\xec\xbb\xe3\x35\x60\xeb\x20\xc5\xf3\x05\x19\x59\x41\x1f\x99\xc6\xa4\xed\x0a\x58\xbf\x5c\xcf\x70\xaa\x5a\x41\x65\xaa\xfa\x1d\xda\x85\x75\xbe\x31\xbe\x53\xd0\x56\x03\xaf\x26\x3d\x93\x74\xd5\x14\xaa\x33\x1a\x33\x58\x5b\x59\x9d\xc3\xc0\xf2\xa5\x54\xc5\xeb\x6d\x94\xeb\x28\xc1\xdc\xe8\x4d\xf3\xfa\x76\x29\x70\x37\x27\xf6\x92\xb6\x68\x19\x57\x64\x98\x96\x9c\xce\xdc\x37\x66\xa5\xda\x26\xf5\x3c\x00\xf0\x06\x21\x79\xdf\x78\xd7\x40\x63\xaf\x81\xe8\x84\x6c\xc4\x8d\x32\x5b\xc0\x9d\xa3\x2f\x89\xf2\xf1\xf6\xaa\x34\x97\xc4\x2e\x6b\xd6\xe5\x66\x52\xaf\x4b\x4f\xe9\xf2\xc0\x02\xec\x3e\x63\x01\x94\x2f\x8d\x19\x89\xba\xae\x9a\xf8\x75\x95\x35\xeb\x42\x8e\xa4\x18\x52\xff\xe8\xee\x0f\xa8\xad\x9c\xf4\x48\x05\x2a\x37\xc0\xf3\x03\x65\xef\x2d\xd0\x00\x98\x08\x93\x3f\xc2\xd3\x46\xc1\x9b\xf5\x5e\x43\xcd\x07\xef\xcd\x55\x5a\x65\xd5\xf1\x78\xdf\x22\x9d\x6c\xe2\x9e\xab\x70\x31\xcb\x0f\x6d\x5b\x19\x8d\x65\x65\x74\x94\x9f\xa5\x3e\xe2\x03\xca\xa2\x40\x98\xf1\xc0\x29\xd3\xe8\x78\x32\x28\x5f\x7c\xf8\xd0\x91\xf3\x2c\x4b\x1d\x96\x3e\xe5\xb8\x21\x7f\xf5\x14\xc6\x16\x06\x63\x63\x13\x1c\xcc\xe6\x21\x18\xbd\x87\xe3\x93\xc2\xbe\x65\xae\xba\xc4\x8c\x55\x3a\xe8\x0a\xac\x39\xf4\x19\x65\x67\x14\xf1\x2c\xea\x1d\x54\x61\x12\x5c\x2d\x4c\x0e\x74\xdc\x12\xab\x42\x2e\x2e\x74\xf7\xd6\xaa\x6c\x3c\xe8\x07\x0d\xb4\xfa\xcd\x84\xbe\x28\x12\x5a\x74\x46\x45\xa5\xf8\x5d\x33\x6f\xe1\xd8\x06\x29\x47\x22\x37\x97\xbe\x4a\xc8\x06\x81\xe8\x2f\x91\x31\xaa\x9f\x4e\xb9\x8a\x07\x94\x8a\x4c\xfe\x42\xca\x37\x2a\x15\x99\xf6\x33\x72\xa6\x9a\xda\x80\x53\xa8\x6c\x98\x48\x19\x84\xf8\x5a\x8c\x88\x4e\x6a\xbc\xfb\x73\x71\x3c\x9e\x4b\xa8\x38\x1e\x21\x89\x90\xfc\xe9\xbb\x9f\x5c\xef\x9b\x5a\x7c\x79\xf3\x72\xa8\x02\x66\x77\xae\x03\x00\x06\xad\xc7\xc5\xff\x83\xde\xa2\xe0\x8c\x54\x10\x41\xf8\x9e\xb2\xe0\xd4\x81\xa2\x92\x07\x7e\x49\x41\xb6\x8f\x70\x1a\x90\x6c\x2f\xa2\x02\x82\xe4\x74\xc9\x3e\x67\x77\x6f\x2b\x89\xbc\x25\x56\x67\xc7\xa3\x7e\x63\xf0\x3c\x1b\x50\x02\xc6\xee\x54\x89\xc9\xa6\x53\x31\xb7\x9e\x5d\x4e\xa7\x41\x0b\x48\xa4\xc1\xc6\xe9\xc0\x8c\xda\x70\x1d\xc3\xf4\x9b\x00\x26\x6b\xde\xd7\x0c\x82\x22\x45\x7e\x6d\x21\x83\xf3\x08\x8e\x81\x26\x62\xf7\xee\xca\x6b\xd7\x77\xfa\x95\x8c\xdd\x32\x76\xfd\x79\xe5\x7d\x75\x0e\x35\xc8\xd7\x7e\x7d\xc9\x44\x05\x57\x50\x5f\x7d\x19\xc4\x4d\xb1\xe9\xe8\xad\xe6\x12\x33\x84\x4e\x54\x84\x0e\xeb\x3e\x7d\x15\x29\xfe\x87\xa9\x39\x63\x28\xeb\x33\x94\x9f\x7f\x8c\xc6\x33\xd4\x77\x62\x49\xad\x82\x5a\xe3\x0f\x55\x9a\x0d\xa9\x2c\x71\x40\x3e\x51\xb4\x12\xeb\x4a\xb9\x42\x2f\xe1\x17\xfd\x3d\x8e\xd5\xff\x28\x3d\xa5\xf3\x4a\xee\x2a\x2c\xff\x8b\x94\x91\x58\xad\x5d\xa0\xa8\xed\x2c\x91\x2f\x71\xb2\x0c\x04\x10\x84\xdd\x15\xa2\xbb\x94\x7b\xb4\x05\x57\x79\xbb\xec\xc2\xc9\x27\x83\xff\x4d\x88\x71\x78\x89\x99\x63\x76\x54\xa4\xe0\xe8\xe2\x77\x9c\xce\xa6\x53\xc7\x12\xea\x0b\x50\xde\x99\x73\x15\x5f\x1e\x6e\x70\xe0\xad\xd4\x33\xd0\xd8\x10\x95\xf7\x16\xa5\xa6\x90\x8d\x47\x3c\x26\x6a\x00\x69\x8f\x78\xc8\x76\x4e\x48\x44\xf7\x90\xed\x9c\x50\x11\x54\xdd\x0a\xad\x85\xbc\xe0\x39\xd8\x48\xad\x85\x25\x22\xb8\x0e\x73\xa5\xbb\x1d\xa2\xff\xba\x3d\x77\x88\xbf\xdf\xd9\x39\xc4\x64\x3e\xc1\xa8\x86\x9c\x6a\x3c\x63\x0b\x4a\xb2\x7e\xa0\x80\x8f\x58\xc7\xa8\x8a\xd7\x1f\x19\x51\x21\xfe\xd1\xbc\xac\xaa\xf7\xcd\x21\x4d\x6c\xdd\x65\x32\xf3\xb8\xfa\xd0\x84\xfc\x14\x3d\x34\x27\xb5\xf8\xda\xe6\xe3\x7f\x84\x7a\x1a\x57\xbf\x57\x41\x3d\x58\x21\xe6\x7c\x91\xe0\x7b\x97\xa7\x6a\x79\xbe\x18\x08\xac\x54\x45\x3d\x37\xda\x21\x75\x78\x1e\xb1\x77\x57\x60\x32\x88\x87\x3a\x61\x9c\x63\xc0\x8f\x66\x89\xac\x93\xf8\x62\x63\x40\x01\xa3\x0e\xad\xd8\x70\xa2\xeb\x4d\x28\x34\xce\xb3\xc0\x72\x19\xd7\x59\xdf\x56\x39\x8c\xb4\xbe\xcf\xdf\x13\x2d\xde\x1d\x88\x66\xa7\x98\xa5\x26\xa3\x9e\xec\x3b\x60\xd5\xff\x3f\xf6\xde\xb5\xbf\x91\xdb\xc8\x17\x7e\xcf\x4f\x41\xf6\xd9\x1f\xdd\x38\x82\x68\xc9\xde\x78\x73\x38\xee\xe8\x99\x6b\x3c\x1b\x8f\xc7\xeb\x19\x27\xeb\x70\x79\x74\x20\x36\x28\x21\xd3\x42\x33\x68\x50\x1a\x45\xe4\x77\x7f\x7e\x28\xdc\xbb\xd1\x24\x35\x9e\x71\x9c\xdd\xbc\x99\x11\xbb\x71\x6b\xa0\x50\xa8\x2a\x54\xfd\x0b\x50\x60\xd5\x28\x39\x26\xb8\xe9\xb1\x38\x3f\xca\x6b\xed\x9e\x0a\x1e\xcd\x15\xc2\x0b\xad\xbc\xd4\x69\x8b\xaf\xc0\x0b\x60\x2c\x75\x38\x31\x9d\x5e\x93\xd6\x7a\xe3\xb2\x82\x9b\x82\x43\x7e\xb9\xfc\x04\xd7\x0f\xb0\x92\x01\x2a\x86\x3e\xc9\x42\xab\xfa\x1e\x5b\xd9\xa0\xe5\x5e\xbe\x46\x20\x15\xb5\x67\x7f\xad\x97\xe4\xda\x17\x73\xe2\x31\x09\x2c\xe5\x8d\x45\xdc\x38\xe0\x2a\xa1\xc6\xc4\x9a\xa1\xfa\xae\x12\xd6\xbd\x57\x09\xeb\xf1\x38\xd7\x69\x2b\x8b\xb5\x77\xf8\xa9\x22\x38\x41\x81\xf0\xa2\x38\x81\x30\x5d\x63\x40\x59\x7c\xbd\x7c\xb4\xb0\x06\x94\xb2\xa8\x66\x8b\x39\xbe\x2a\x4a\xbc\x2a\x46\xa7\x83\xec\x5c\x49\xd3\xe5\x64\x71\x45\xc4\x63\x99\x9f\xa8\x89\x58\x15\xa3\x13\x55\x62\xd2\xac\x2f\x1a\x29\xf2\x53\x63\xe9\xbc\xde\x3d\xb7\x57\x06\xb7\x3d\x9a\xd9\x6b\x64\xed\x27\xa3\x95\x11\x32\x58\xf3\xbd\xd6\x39\x8c\xa4\x74\x8d\x25\xc2\x77\x70\x0b\x31\x30\xf8\x6f\xa3\xa2\xb8\x43\x8a\x1a\x6e\x36\x9b\xd8\xcf\xfa\xce\xb4\x77\x81\x2f\xf1\x79\xdb\x37\xda\x78\x5b\xe3\x6b\x7c\x87\x4b\x84\x6f\x8b\x73\x4d\xd9\xcf\x8b\xf3\xe8\xf2\xe2\x39\xca\x2f\x8a\x26\x4d\xca\x17\xf8\x39\x7c\x07\x41\xb7\x29\x9c\x4a\x7b\x64\xdc\x8c\xc7\x60\xcf\xf5\x26\x56\xc8\xa4\xa0\x64\xa9\xc1\xcd\x78\x3c\xe2\xe3\xf1\xa8\x81\xde\x37\x1b\x79\xa6\xff\x2a\xe8\xb4\x69\x45\xf0\xea\x14\xce\xd6\xbe\x77\x83\x4c\xc1\x5b\xf7\xe8\x16\xe5\x97\x7d\x43\xbd\xc4\xb7\xe6\xfe\x47\x8d\xe9\x0d\x7e\xdd\x9e\x8f\xd4\xbe\xbf\xc3\x25\xd6\x39\xf6\x10\x7e\x5f\xbc\xd6\x13\xf4\xb8\x78\xed\x27\xc8\x8c\xe1\x3d\x7e\x3c\x1e\xe7\x6f\xfa\x3a\x7f\x83\x1f\xa3\xad\xc3\x27\x6e\xb6\x38\x5a\xd6\x9e\x68\x87\x5e\x6f\x68\x89\x00\x9a\xc0\x83\xc1\xec\x8d\xc6\x48\x72\x54\x9f\x5c\x15\xd0\xd5\x23\x00\xa1\x3e\xb2\xe5\x29\xb2\x65\xc8\xa7\xe4\xb9\xf6\x0f\x71\x97\x47\x84\xde\x8b\x83\x36\x93\x06\xb3\xcd\x0e\x32\xc2\xac\x08\x19\x49\x0d\x98\x6b\xb8\x29\x98\x8d\x0c\x67\x01\x47\x16\x01\x47\x86\xc8\x6f\xb0\xda\xf4\xc4\x7e\x4b\xbc\x06\x43\xdb\x36\x08\x4a\xf9\x74\x7e\xec\x09\x03\x45\xeb\x1e\x76\x87\x97\xf2\x61\x4a\x3a\x9d\xed\x74\x2f\x0c\x91\x5e\x4c\xcc\x44\xac\xc2\x3f\xc4\xd9\x7e\xd8\x07\x6c\x71\x88\x3a\xd3\xd5\xeb\x70\x04\x3d\xd5\x56\x15\x39\xd6\x97\x4e\x31\xc0\x52\xc7\x2b\x38\xd2\x53\x6b\xa5\xa7\x32\xa7\xa7\x32\x0b\xbc\xd4\x1e\x71\x48\x9c\x0f\xba\xf8\xe9\x7e\x81\x98\x84\x86\x7c\xc8\x9e\xda\x36\xe5\x03\x1a\x7a\x42\x59\xc6\xcd\xee\xef\xef\xe8\x14\x8a\xfd\x06\x2a\x05\x9b\x35\x73\xaf\x96\x8d\x9c\x5d\xf2\xa0\x13\x5f\x55\x76\x99\x17\x59\x39\x95\xfa\x22\x6c\xbd\xdd\x1e\x4c\x9f\x5b\xeb\xd8\x4c\x02\x89\xbf\x51\x8c\x7b\x8f\xc4\xef\x54\x87\x43\xdc\x4f\x7b\xa5\xf2\x4f\xe2\x2e\x2a\x0a\xe9\x23\x99\x83\xcf\x12\xbd\x8a\x4c\x4b\xb7\x08\x3f\x48\xd0\xbf\xae\x19\x68\x23\x6d\x8d\xa6\xa3\x60\xb4\x3e\xc6\x45\xc7\x87\xbb\xcf\xc4\x9e\x6f\x36\x3a\x18\x5d\x47\x7b\x77\xcc\xd2\x14\xa0\x11\xee\xae\x2f\xea\x2a\x7a\xe8\x30\x86\x73\x34\xcd\xb2\x23\xba\x75\x7d\x30\x7f\x7c\xbb\xeb\xdf\x6e\xab\xb2\xf0\xa9\x67\x0c\x2e\x80\x43\x57\x70\xb4\x47\x37\x1b\x1b\xf9\xbf\xd9\xe4\xb2\x50\x1d\x39\x87\x7c\x89\xe4\x95\xa8\x6f\x87\x9c\xde\x0e\xc1\xf0\x90\x67\xcf\xdf\xaf\x20\x21\xce\x90\x95\x43\x59\x0f\x2f\xe8\x90\x0c\x75\xd7\xc3\x5a\x0c\x75\xeb\x78\x28\xe8\x82\xb2\x1b\x5a\x0e\xb3\x23\x17\xdc\x1e\x68\x9c\x49\x28\x81\xfe\xd8\x11\x59\x48\x97\x6e\xd1\x81\xbe\x4e\xae\x48\xf3\xfa\x96\x5b\xba\x99\x2c\x48\x55\xe5\x52\x6d\x40\x58\xff\x0c\x9d\x39\x37\xe2\xa9\x34\x9a\x54\xb6\xe6\x9a\x22\x4a\x3f\x01\x6f\x60\xe2\xcf\xf4\x7f\x09\x16\x9a\x9d\x9f\x67\x47\xf4\xe8\x15\x91\x57\x93\x65\x55\xd7\x22\x87\x3f\x05\xe1\x65\x7d\x9d\xa3\xff\xfd\x8c\x48\x3a\xe1\xf5\x6d\x8e\xd0\x91\x2a\xbb\xf5\xa4\xd0\x04\xad\x74\x96\xc7\x23\x43\xfc\x4e\xc3\x25\xac\xe1\xae\xf3\x4f\x94\xbc\x7b\x45\x56\x06\xed\xa4\x13\x14\x99\xfa\x82\x5b\xc6\xcb\xfa\x16\x88\x20\xf1\xf6\x05\x69\xe4\x93\xba\x96\xc6\x5f\xe0\xfe\x92\xca\x1f\x60\xec\x7f\x54\x1b\xab\x89\x61\x77\xc5\x9d\x5d\x0d\x5b\x6d\x62\xb6\x44\x9e\x2d\xc4\xdd\x4a\xd6\x19\x32\x9f\xfe\x82\x55\x15\x80\xe5\x52\xb4\x5d\x10\xb9\xb8\xca\x21\x3f\x4f\x4c\x2e\x9f\x81\xc5\x68\x18\xba\x9a\x2a\x79\x46\x35\x7e\x51\xd7\x72\x68\x1a\x6f\x86\x77\xf5\x5a\x91\x13\x29\xcb\xa1\xbc\xa2\x43\xdb\xd9\x70\x45\x16\xef\xc8\x25\x55\xef\xb2\xa5\xa9\xf5\x8c\xae\x28\x2f\x29\x5f\x30\xda\x64\xaa\xb9\xbb\x7a\x2d\x6c\xc9\xc9\x5f\x9a\x9a\x7f\xa6\x04\x3a\x10\x86\x02\xe6\xab\xa7\x69\xa2\x5b\xb6\xde\x13\xd1\xc3\x9e\x1a\xd7\xcd\x53\x78\x3d\x1e\x67\x76\xb2\xfc\x3a\xb6\xca\x4c\x5a\xd3\xdb\xea\xc7\x16\x1b\x74\xf6\x95\x67\x50\xd3\xe1\x53\xc2\x79\x2d\x87\x4b\xc6\xcb\x21\x19\xde\x90\x8a\x95\xc3\x5b\x72\xa7\x26\xc1\xc2\xef\x0d\xab\x7a\x41\xaa\xa1\x4f\x28\xdb\x64\x68\x9b\x7b\x55\x6a\x81\x97\xb8\xc4\x57\x78\x55\xcc\xe6\xf8\xba\x38\x79\x74\xfd\xf5\x17\xbf\xf9\xea\xd1\xd1\xd1\x35\x5a\xcd\xae\xe7\x45\x7e\x7d\xf4\xc5\x6f\xbe\x42\x9e\xc5\x9c\x7e\x85\xbc\x96\xe4\x49\xf8\xc6\x52\x9e\x96\x5e\x8a\x9c\x02\x95\xfe\xc8\xb8\xfc\xad\x96\x0c\x4f\xbf\x42\xb8\x6a\x7f\x76\xb8\xdd\xf9\xec\xab\x79\x71\xfa\x9b\xb1\xfa\x7f\xf3\xd5\xbf\x62\x3e\xfb\xed\xbc\xf8\xea\xcb\xb1\xfa\x7f\x73\xfa\xc5\x6f\xf1\x2c\x17\xc5\x0a\xcd\x72\x59\x70\x34\x3b\x99\xcf\xb1\x98\xc9\xd9\xa9\xf9\xff\x0b\xf3\xff\x97\xf3\x39\xce\x8e\x33\xf8\xfb\x5f\xcd\xb3\xdf\x04\xcf\xbe\x32\xcf\xfe\x2d\x78\xf6\x5b\xf3\xec\xff\x04\xcf\x4e\x5d\x07\xb6\x87\x53\xdb\xc5\xe9\x97\xf6\x0f\xdb\xc1\xe9\x6f\xe6\xf3\xf9\xe4\x2f\x35\xe3\x79\x96\x21\xcf\xb6\xee\x4c\x44\x6e\x93\x43\xfe\x62\xe7\x8b\x03\xbf\x0c\xe8\x83\x49\x77\x2c\xf4\x95\x95\xd5\x2e\x72\x81\xce\xc2\xd3\x68\x5a\xb1\xf2\x38\x3b\xaa\x73\x89\x8e\xb2\xe3\xec\x48\x4c\x6f\x4c\xd6\xe1\x8b\x88\x1d\xb8\xae\x2f\x3d\xeb\xbf\x70\x09\xd7\xc2\xb4\x29\x8a\x6d\x83\x3c\xad\xaa\xdf\xe2\x0b\x80\x43\x52\x87\x2f\xc2\x01\xe3\x3d\xcf\xd1\x3d\x74\x73\xdb\x93\xf1\xdc\x62\x70\x2f\xc8\xe2\x8a\x16\xf7\x15\x2b\x9b\x69\x12\x89\x1f\x30\x38\x13\x6f\x8c\xe3\x97\x03\x8c\x8c\xd3\x74\x6b\xb7\xee\xf8\xd9\xb2\x16\x97\x54\xc6\xcf\x74\xaa\xd5\xe8\x11\xc4\x7e\xc4\x8f\x5c\x1f\xcb\xcd\xe6\x2e\xee\xe1\x6a\xb3\x39\x8f\xdb\x5f\xf8\x27\xba\xf5\xd2\x3f\xd0\x6d\x9f\x6f\xed\x12\x76\x12\x3e\xcb\xc9\xf9\xb9\xcd\x3d\x4f\x5f\x41\xe9\x88\x81\x06\xad\xd0\xcd\xe6\x7c\x8b\x25\x5c\x57\xd8\x94\x86\xdd\x04\xd1\xd6\xbb\xab\xb5\x78\xa3\x53\x84\x13\xe2\xfc\x1a\xee\xdf\x29\x82\x64\x4f\x96\xe8\x8c\x18\xc4\x0d\x31\x62\x56\x18\xcb\x83\x38\x0b\xd6\x50\xbd\x6b\x66\x62\x6e\xf2\x74\xb7\xee\x57\x2c\x0a\xa6\x39\x28\x6b\x07\x71\xd0\xd8\xd4\x8a\x60\xd3\x82\xab\xee\xcd\x86\x8c\xc7\x8d\x0d\x99\x7a\x9e\x87\x9d\x00\x39\x60\x82\x02\xfb\x87\x00\xc8\xda\x4a\xf5\x3f\x13\x73\xeb\xb2\x50\x14\x05\xd3\x59\x88\x35\x46\x04\x14\x61\xa5\x92\x71\x83\x12\xba\x93\x45\x0b\x9c\x54\x7b\x27\x40\x44\x40\xab\xa3\x85\xfa\xaf\x2b\xb4\xfc\x54\xaf\x87\xfa\x2a\x6a\xa8\x18\xab\xce\x75\x01\x07\xcd\xd7\x15\x2b\x7f\x37\xac\x97\x43\x32\x6c\xaf\x51\xa6\x21\x2c\x8a\xf8\x0b\x16\x73\x93\x42\x44\xba\x4c\x44\xfa\x53\x72\x56\xbc\xc9\x1b\x4c\xf0\xc2\x65\x76\xf4\xd3\xce\xd4\x7f\xf3\x82\x61\xdd\x48\xf0\xf3\x9c\x54\x95\xef\xb3\xb1\xf9\x9c\xb4\x08\xa6\x96\x46\xbb\xee\xc1\xdc\xa8\xbf\xe7\x05\xf3\xb6\x3b\xb6\x55\x04\xb6\xa2\xf4\xdd\x0e\x02\x6b\xe9\xaf\x09\x6a\xcc\xa9\xf6\x20\x96\x70\x73\x20\x42\xa7\xf3\x9f\xd1\xe2\x09\xb4\xa8\x59\x82\x7f\xf3\xa2\x16\xdf\xd1\xdb\x76\x6a\xb8\x56\x24\x70\x6a\xa1\xb1\x28\xde\x00\x25\x6a\x48\x27\x6c\xd3\xc9\x03\x9e\x6c\x82\x06\xed\xad\x60\x34\xd4\x70\x27\xe8\x35\x10\x98\xc3\x92\x48\xfd\x67\x72\x39\x04\x5c\xf5\xc8\x49\x18\x8b\xd2\xbb\x97\x03\x4f\xca\x1d\xb3\x99\x53\x0d\x40\xc6\x4a\x4c\x0a\xae\xbd\x30\x71\x93\xfc\x10\x83\x2a\x87\xd7\x45\xbf\xd5\x59\xd5\x57\xca\xa9\x71\xb4\x03\x17\xaf\x32\xd8\x1a\x64\x3c\x26\x23\xb8\x1d\x35\x0f\xb8\xdf\xbe\x14\x1b\x5b\xb2\x22\x31\x3e\x8f\x4f\x93\x11\x24\x4a\xa9\xb6\x7a\x1b\x0a\xe3\x01\x5a\xe7\x16\xea\x2e\xee\x42\x5f\xc0\x2e\x0a\xd8\xd1\x30\xc1\xe6\xbf\x51\x51\xac\xad\x07\x1e\x33\x53\xdf\xe9\x68\x39\x1e\x2f\xb7\xc9\x06\xf5\xc6\x6e\xb5\x59\xb8\x36\x4b\xf8\x8a\x05\x7c\x00\xe9\xb6\x5b\x8e\xc7\xa5\xd9\x31\xa3\xd3\x6d\x6a\x86\xb1\xc4\xa4\xb3\x69\xe1\xe3\xd6\x41\x22\x7d\x60\xeb\xed\x85\x6c\x72\x55\x7f\xad\x5a\x40\x6e\x49\x7b\x6e\x67\x95\x20\x00\x2b\x83\xa5\x9b\x48\x6b\xc7\xd7\x80\xe2\x9e\xda\x3d\x6f\x06\x5c\x0f\x48\x71\xab\x76\x7e\x2e\x8c\xd1\xd3\x9e\x70\x08\xb3\x51\x51\xe4\x04\x7a\x46\x6e\x81\xc9\x2e\xfe\x6c\x57\xaf\xd2\x33\x56\x08\xc7\x6d\x1c\x5c\xb0\x66\x38\x2e\x13\x34\xd0\x7f\xcf\x0c\xf4\xd2\x65\x1d\x4e\x9c\xc6\x15\x85\x44\x73\x00\x5e\x27\xa6\x32\xda\x9b\xfa\x74\xee\xec\x13\xa2\x73\x05\xcf\xd8\xbc\xa8\xf1\x8e\x6f\x71\x65\x60\x3b\x17\x35\x4c\x73\xad\x46\x9d\x6e\xb8\x8f\xf7\xec\xd9\xb3\x22\x39\x9f\x76\x11\xcd\x2c\x6a\x77\x6b\x77\x85\xaf\xb8\x8b\xe2\xdc\x38\x4a\x2c\x1a\xb0\x22\xa0\x09\x7f\xbf\xac\xf9\x91\xde\x23\xd6\x74\xd5\xe6\x4b\x16\x70\x50\xa2\x41\xf7\x65\xb3\x02\x08\x41\x8e\x5b\x42\xc4\xda\xe4\xf7\x37\x02\x44\x24\x16\xe5\x01\xf1\xa9\x59\xdb\x91\xe8\x11\xd2\x71\x6e\x5b\x79\x56\x9e\x87\xdc\x4f\x27\x99\x6c\x49\xa5\x02\xb6\x92\x92\x24\x93\x82\x64\xcf\xe3\xd6\xb7\xc1\xbd\x12\x05\x6e\xad\x98\xb2\xeb\xfe\x4d\x64\xeb\xc3\x4c\xf7\x23\x54\xab\xd4\x00\x74\x38\x4f\x6d\x5e\x30\xbc\x06\xb1\x98\xe3\x8c\x35\xc7\x2c\x38\xf2\x31\xf3\x6d\xbe\x8e\xb7\x2f\x57\x93\xad\x84\xa0\x06\x8c\xea\x20\xfe\x0b\x2b\x85\xe9\x10\x70\xaa\xfa\x63\x18\xba\xde\x76\x75\x3c\x67\x3b\xa1\x4c\x5e\x51\x31\x64\xe5\xb0\x16\xc3\x2a\xb0\xa4\x68\x5d\xcf\xd8\x0a\xdc\x31\x0f\x5a\x43\xa2\x87\x69\xf8\x4c\xfb\x06\xbf\xb7\xd8\xea\x4a\x37\xfb\x5e\xd4\xef\xef\xec\xa5\xb1\x7e\xfe\xbd\xa8\xaf\x59\x43\xe1\x0d\xdc\x3b\xe3\xfb\x6b\x2a\xc9\x54\xbf\x5d\xd4\xd7\xab\xb5\xa4\xe5\x44\x50\x52\x36\x79\xb6\xa8\xb9\xa4\x5c\xc2\x45\x5d\x86\xb6\x08\x3f\x8e\xb0\xec\x0e\x69\x3f\x20\x91\xb7\x91\x23\xfe\x63\x97\x05\x66\xa5\xeb\x98\x31\xfc\xf0\xe6\x8f\xdf\xdb\x66\xc0\x52\x5b\xdd\x68\x2c\x95\x6d\xa0\x80\xbd\x8b\x9a\x7a\xff\x73\x9a\x7a\x15\x35\xf5\x56\x09\xbe\x57\x94\xf7\x20\x0e\x38\x46\x62\x12\xdf\x69\x55\xed\x7b\xfc\x17\xd0\xb6\x74\xaf\xe7\x4f\x5c\xba\xd9\x7c\x96\xa5\x9d\x9d\x33\x9c\x35\x77\x7c\xd1\x7e\xb6\x64\x9c\x35\x57\xb4\xcc\xe6\x08\xff\x50\x7c\xfe\x7f\xff\xeb\xf3\x33\xa5\x24\xfe\xd7\xe7\x79\x00\x31\x12\x63\xd3\xfc\xd7\xe7\xf9\xe4\x7f\xa3\xcf\xf1\x53\x5f\xfc\x73\x3f\xe5\x2f\xa3\x0c\x95\x2d\x0c\xca\xef\xd5\x56\xe6\x12\x00\x53\x69\xfa\x6e\x07\xee\x93\xb4\xb1\x5c\x95\xd1\x7f\x4d\x56\x35\xe3\x92\x0a\x0f\x7f\x1a\x3f\x9f\x5c\x83\x39\xe8\x07\x34\x10\x67\xa2\x10\xb3\x2f\xe6\x53\x00\x43\xed\x94\x6b\x28\x11\x8b\xab\xfc\xa9\xbe\x91\xcf\x2e\x48\x43\x95\x9c\xe7\xdd\x86\xc5\x1c\xd0\x82\xd5\x1f\xe6\x96\x71\x52\x52\x49\x58\xb5\xd9\xd0\x89\x64\xb2\xa2\xc8\x86\xc8\xbb\x4f\x7e\x16\x5c\xfe\x40\x62\x27\x49\x05\x27\x15\xdc\x92\xa8\x6a\xed\x07\x48\xb1\x34\x9b\x6f\x49\xcb\x96\xbe\xb1\xef\xda\xc9\x0c\x4e\x1e\x89\xaf\x65\x02\xea\xca\xa4\x1e\xf4\xfe\x1f\x45\xf8\x63\xb3\x19\x9d\x42\x14\x8b\x56\x1c\xe1\xfd\xe8\x04\x67\x60\xdb\xce\x18\x1f\xf2\xf1\x38\xe7\x93\x5b\xc1\xa4\x79\xd7\xef\x7a\x02\x9e\xec\x98\xa3\xad\x1f\xe5\xb7\x11\x09\x27\x09\x37\x9e\x87\xf0\x93\x5b\x29\x0d\xb7\x26\xc5\x77\x2e\xd1\x36\x22\x05\x3a\x59\x51\x5e\x32\x7e\x59\x64\xe6\x8f\x0c\xd3\xc9\x72\x5d\x2d\x59\x55\xd1\xb2\xc8\xdc\x9f\x19\x64\xa2\x32\x79\xd3\x33\xfb\x57\xb6\x45\xf9\xf7\x9b\x4d\xfe\x7d\x71\x6f\x73\x22\xbe\xe8\xb1\x3d\x44\x99\xe0\xc1\x5c\x5f\x88\x6e\xfe\xba\x30\xc9\xfe\x45\x2a\xc1\x56\x32\x0d\x59\xbb\xc2\xcb\x72\x57\xb1\x2b\x1b\x98\x7c\x58\xab\xa6\xf8\xee\x36\xa3\x95\x88\xed\x18\x8b\x76\xa6\xc4\xe8\xb5\x3f\xa7\xa2\xc7\xee\xbe\xa8\x55\x38\xfe\xa9\xaf\x56\xa3\x67\xa4\x24\x2b\x49\x85\x4d\x6a\x1b\xdc\xa9\xf0\x22\x35\x54\xd1\x7a\x00\x4e\x45\x7a\x4b\xab\xa3\xb1\x35\x18\xa3\x8b\xf0\xc9\x15\x31\xd9\x94\x6d\xd6\x97\x20\xeb\xbd\x1d\xaa\x74\x09\x95\x5b\x83\xa2\xad\x07\xf1\xd7\x38\x38\xc9\xf6\x4c\xf0\x30\xe1\x6e\x38\x82\xbc\x6f\xa2\x9f\xe5\x1c\x4d\x3a\x8f\x73\xa4\x39\xbc\x11\x6b\x53\x16\x21\x06\x0e\xd0\x45\x9b\x6b\xa6\x52\xa9\xa3\x48\x17\x6d\xa5\x1b\x66\x21\xa6\x54\xf7\xf2\x39\x72\xed\xbe\xb7\xc6\xb5\xa0\x6d\xd5\x42\xf7\xb3\x3a\x17\x08\xa9\x4c\x83\x4a\xa8\xe9\x99\x17\x6f\x64\xf2\x70\x80\x51\x42\xd6\x9e\x6a\x58\x14\x27\x98\x17\x9e\x55\x7e\xcd\x3d\xbb\x64\x9a\x5d\x52\x25\xb0\xf7\x34\x30\x63\x73\x03\x84\x8d\x02\x14\x40\xe6\x6f\x92\x53\x5a\x37\x2c\xd1\x28\xd7\xb1\x19\xa0\x51\xd7\x29\x42\xd6\x91\x0e\xf0\xd5\xc6\x76\x13\xac\x56\xc8\x18\xe2\xf5\x0a\xdf\xcc\xe8\x5c\xdb\xc3\xfa\xeb\xc7\x79\x1e\xd3\x2d\x45\x65\x54\x9b\x75\xcc\x8d\x5f\x51\x49\xc0\x79\xee\x2a\x4e\x21\x0d\xf6\x0f\xeb\x3e\xff\xad\xbe\xe6\xd5\x6c\x1b\xf2\x0f\x03\x24\xff\x78\xac\x23\x96\x9d\x3f\x70\xd1\x9c\xd5\x3b\x76\x70\xa3\x91\xbe\x71\x78\x5f\xad\x5b\xd0\xd8\xf6\xe3\xf1\x48\xa7\x8d\x57\x1a\x44\x99\xa3\x33\x76\xa6\x54\x9b\xa9\x30\xb4\xf4\x86\x93\x55\x73\x55\x4b\x83\x18\x8e\x30\x3b\x4b\xce\x5b\xc1\xa7\x7b\x66\xa1\xe0\x98\xab\xb5\x36\xdc\x34\xbd\xd2\xe1\x3a\x37\x3e\xff\x99\xe7\xc0\x33\x3a\x77\xcb\x9f\x62\xe3\x76\x09\x4f\xb4\x8d\x21\x58\x42\xdf\x86\x37\x8b\xda\xc5\x4e\x96\x4c\x2e\x75\x1d\x45\x37\x24\x08\x10\x37\x45\x4e\x1e\xb2\xde\x38\xb1\xd2\xce\xbe\xd5\xd8\xa5\x82\xcc\xf2\xfa\xd7\x2e\xb7\x2f\xb2\x83\x14\x28\x1a\xc8\x70\xa9\x37\x9b\x9c\x9f\x09\x2b\x81\xb1\x12\x4d\x6d\xbe\xfa\xce\xda\x23\xed\x19\xcd\xcf\x12\xcb\x51\x88\xe9\xce\xe5\x28\x04\x16\x6a\xdd\x23\x4f\xf2\xd6\xea\x43\x03\x06\xec\x2b\xf6\x38\xd7\xf1\xbb\xac\xe3\x10\xbe\xa7\x81\x44\x0c\x30\xf3\x0e\x37\xfd\x46\xcf\x24\x1e\x6f\xb4\x6c\x61\xd4\x8b\x59\xb7\x76\xe2\x5f\xa3\x70\xf7\x38\x0a\xa7\x28\x27\x54\x40\x5c\x52\xd7\x1d\xe9\x83\xbd\x39\xad\x23\x3f\xc5\x3c\x29\x78\x11\xe6\xab\xd6\x23\xc4\xb2\x5b\x7d\x57\xce\xda\xee\x09\x61\x90\x90\xfb\x92\xdc\xb7\x66\xce\x06\x5d\xa5\xe2\x09\x02\xc0\x61\xa5\x24\x84\x21\x8b\x42\x2b\x65\x6e\x62\x00\x47\xfe\x01\x93\x0b\x03\x78\x5a\x91\xc6\x27\xcc\xd5\x58\x72\xed\x36\x3a\x9a\x3d\x14\x1b\xb2\x66\x58\xf3\xea\x6e\x48\x6e\x08\xab\x94\x20\x3f\xbc\xbd\xa2\x7c\xb8\x58\x37\xb2\xbe\x1e\x42\xeb\xc3\x85\x6a\x7e\xb8\x5c\xea\xc2\x19\xd2\xe9\x6c\xbf\x6b\xa7\xb3\xe5\xf0\x0c\xf3\x76\x3a\xdb\xbf\x29\x42\xf4\x47\xb1\xf3\xed\xb1\x59\xb7\x45\x10\x30\x2d\x7f\x77\x7a\x26\x8f\x4f\xa7\x27\x08\xf3\xe2\xf4\x11\xff\x5a\x42\x26\x6c\x31\xe3\xc7\xa7\x73\x5f\x35\xb0\xf9\x76\xa7\xc9\x02\xa4\x18\xb9\x51\x84\x6a\xc7\x8f\x91\xc9\x67\xb2\x64\x9c\x54\xd5\x5d\xb0\x54\xe8\x5e\x02\xf3\x10\x93\xf3\x66\x7d\xd1\x2c\x04\xbb\xa0\xc2\x0e\xb5\x38\x01\x8f\x51\x67\x5f\x74\xcd\x3e\xf1\x7b\x6d\x14\xc7\xb3\x2a\x96\x04\x56\x29\x5a\x76\xd2\x09\xb8\x77\x60\x39\x09\xf4\xfb\x6f\x5a\x30\xd5\x3f\xe6\x81\x71\xc0\x1b\x05\x04\x6a\xeb\xfd\x41\xd8\x05\x42\x38\xf1\xfc\x89\x4e\xef\xee\xbb\xfa\x63\x1c\x7a\xe0\xa6\xb0\x0b\xdd\xe2\x4b\x6d\xf5\x68\xc4\x9a\x4f\x2e\x9c\xdd\xc0\xaf\xf7\x5f\x7f\xcd\x0a\xa8\xea\xf9\x4f\x7d\x3a\x9c\x61\xb5\x5e\x26\xa7\x56\xff\x29\xdf\xd6\x5a\xa1\xe8\xd7\x91\xa0\x56\xa3\x4e\x32\x6b\x41\x96\x04\x7c\x79\x41\x3d\xdf\x2b\x91\x5f\x52\xd9\xcf\xb9\x5d\xff\x10\xbd\xab\xd3\x89\x80\xb0\x91\xa8\x62\xc3\x60\xc3\x3a\xfa\x80\x90\xa9\x73\x25\x2a\x57\x48\x10\xea\xcb\xb2\x5d\xd2\x69\x21\xbe\xb4\x9c\x17\x34\xfe\x76\xe7\x55\x8d\x99\xc9\x65\xd8\x6a\x26\x32\x26\x87\x2d\x85\x58\x1e\xb6\x31\x6b\x2e\xa6\xe8\x91\xcd\x4b\x13\xbd\x37\x16\x63\x81\x4f\xb5\x1e\x51\x73\x49\x18\x4f\xcd\x08\x54\xef\x69\x1b\xaa\x56\x94\x88\xae\xda\x11\xd6\x18\xb4\xd6\x38\x50\x2d\x4e\x1e\xc9\xaf\xad\x5b\xd4\x23\xa9\xa8\x9b\xce\xe4\x7c\xb2\xe6\x55\x4d\x4a\x77\xf0\xa5\x68\xa2\x75\xb2\xea\x26\x76\x33\x7f\x33\x7e\x5d\xd4\x71\x7c\xfd\xf4\x90\x9a\xbe\x8a\x19\xc9\x9e\x4a\xa6\xd4\x66\x93\xb7\x3e\x20\x95\x2d\x5d\x9f\x0b\x7f\x4d\x9c\x0b\x7f\xf5\xe7\x02\xfe\x97\x3d\xde\x1b\xd7\x64\x95\x6a\x7d\x97\x7f\x83\xa0\x52\x30\x7a\x43\x7b\x2f\x67\xaf\xc9\x4a\xc9\xce\x69\xa7\x93\xb0\x88\x76\x60\xc9\x35\xa0\x0b\x96\x5d\xd2\xb0\xeb\x4e\x7d\x35\x1c\xab\x97\xd4\x62\xcc\xc7\x2c\x8f\xce\x14\xbb\x9b\xeb\x16\x41\x12\x82\xd9\xf8\x7d\xe8\x32\x83\x7f\x4a\x3b\xd0\xfc\xc1\x7f\xcf\xef\xf7\x3b\xd0\xfc\x87\x1a\xc2\xef\x23\x1f\x1a\x55\xf7\x3f\xfa\xb9\x9e\x9f\x2a\x4d\xe7\xda\x7e\xe5\x99\x1f\xe5\x92\xc9\xbb\x57\x64\x15\x9b\x7e\x38\xbd\xad\xee\xf4\xbd\x53\xd9\x63\xf5\x79\x0a\xae\x38\xbb\xde\x5d\xba\x5b\x9d\xd6\x9b\x8e\xd7\x4a\x04\x93\x11\x44\x79\xd1\x81\x12\xf0\x21\x38\x95\x95\x67\x3a\xde\x5e\xa9\x3d\xea\x17\x9d\x8a\xa9\xbe\xf1\x82\xf7\xfa\x06\x33\xb7\xd9\x4e\xa1\x94\xfa\x43\x95\xb3\x08\xb7\xea\x29\x3b\x13\x53\xc8\x6d\xaa\xcf\x82\x57\x64\x05\xb0\x42\xce\xbf\x84\xc0\x2a\x30\xed\xbb\xb2\x36\x3f\xe1\xfe\xce\x42\x8e\xad\xc7\xe3\x26\x34\xe2\xac\xfd\x8f\xae\xaf\xc7\x0b\xc2\x2a\x0a\x37\x2a\xfa\x7e\x14\xdc\x3c\x3e\x63\xe5\x67\xc3\x65\x2d\xe0\x47\xfb\x5e\x6f\xf8\x59\x76\x44\x8f\xb2\xcf\x54\x9d\xcf\xb2\x23\xf5\xad\x47\xd9\x67\x78\x78\x41\x17\x64\x0d\xa9\x91\x89\x1c\xb2\x52\x49\x6c\xa4\x12\x94\x94\x77\x4a\x03\x54\x6f\x2e\xee\x54\x05\x71\x94\x7d\xe6\x91\x1b\xd6\x4a\xf1\xd6\x1c\x3b\x5f\x63\xfd\x1d\xd6\x9f\xb6\xd1\xd7\xb3\x45\x51\xac\x95\x4e\x15\x3d\x1c\xc1\xc3\x06\xa2\x6d\xc2\x6f\x8d\x3f\x77\x3c\x56\x13\xe2\x3a\x68\xb0\x99\xb7\xbc\x29\xd6\x48\x91\x17\x38\x8c\x60\xa2\xce\x1d\xf7\x16\x61\x06\x82\x71\x87\x02\xd5\xb4\xfd\xcb\x2e\x66\xa0\x43\x47\xdb\x1a\xb8\xc3\x1c\xb1\x71\x50\x2d\x62\xdb\x75\x87\x2a\x23\xac\xa9\x87\xd4\xa4\xc8\xc0\xc1\x80\xc3\x4b\x2e\xbc\x83\xe1\x59\x0e\x36\xbe\x37\x8b\x2b\x5a\xae\x2b\x5a\x1a\x49\x30\x47\xe3\x31\x9f\x2c\x08\x5f\xd0\xca\x3d\xc2\xdc\xe6\xd6\xbf\x58\xb3\xaa\xcc\x85\x75\x7d\x51\x8d\xf6\x0a\x0d\x09\xca\xd5\xbc\x03\xe6\xd7\x78\xce\x3c\xb9\xb3\x1a\x74\x82\x77\xbe\x36\xf5\xe0\x36\x1b\xeb\x7a\xd1\xfd\xb7\x89\xd2\x05\xc4\x34\xc5\x6f\xec\xf7\x17\xe9\x68\x86\xe0\xea\x0f\xcc\x03\xfa\x46\xd0\xda\x41\x1e\x32\xaf\x3e\x89\x3f\xcc\x2b\x73\x4e\x1d\x45\x51\xd4\xdd\xfd\x65\x9c\x53\x1b\x2a\x61\x33\xb1\x72\x08\x59\x24\x87\x35\x87\xdf\x5a\x61\x1c\xc2\x8e\x9a\xc2\xde\x18\x92\x46\xbd\x11\x54\x6d\x20\x5e\x0f\x9b\xf5\xe2\xca\x16\x63\xba\x92\xbe\x0b\xcf\xac\x45\xab\xd6\xde\x2c\x41\xcc\x47\x30\x24\x73\x47\x33\x82\xfc\x7b\x6e\xd8\x4f\xee\x5e\x2a\x7a\x97\xce\x67\x4b\xfb\x4d\x25\x27\x23\xed\xc6\x93\x33\x1c\xcc\xa9\xdc\x22\x5c\xab\x65\x78\x59\xaa\x25\xb1\x04\xa2\xba\xe9\xf7\xf7\x69\x77\x94\x72\xcc\xca\x5b\x9d\x70\xeb\xa5\x17\x91\x98\xa6\x2e\xf0\x04\xd0\xe6\x34\x47\xeb\x8a\xa4\x7b\x68\x3d\xe7\xf6\xd6\x1e\xfc\xb2\x55\xdb\x5a\xa6\xe6\x6a\xf8\x40\xee\xfd\x52\xb1\xde\x0d\xce\x6d\xeb\xbc\x5d\xbc\xdf\x4d\xd1\x7a\xc3\x81\x65\x28\x5e\x90\x80\xe4\xcd\xb6\xb7\x5b\xb8\x35\x55\x03\x51\xe8\x66\xce\xf8\x4e\x8f\xb1\x9c\xa2\x29\x35\x69\xc0\x14\x4d\xbe\xa7\xb9\x3f\x64\xb1\x88\x77\x54\x6a\xd3\x2a\xb6\xc8\xb0\x30\x8e\x92\x5b\x48\xf5\xd1\x12\xae\x23\x69\x27\x6e\x23\x80\xf7\xd7\x7e\xbd\x76\x8c\xe0\x6e\x65\xdb\x02\x6d\x72\x60\xc1\x77\x7c\xa1\x41\x92\x48\x7a\xfc\x5e\x38\x2c\x43\xd0\xfd\x2e\x85\xc6\x71\x74\x27\xbd\x81\x34\x2e\x63\xb1\x02\x14\x84\x66\x67\x53\x61\xf1\x76\x5b\x2d\xf1\x8d\xda\x83\x00\x22\x5b\xba\x23\x31\xb2\xd9\x34\x45\xdc\x56\x6e\x6b\x19\x37\xfe\x3d\xbc\xb2\x84\xf8\x08\x8d\x65\x66\xfe\x98\x18\x70\x32\x38\xb0\xfe\x33\x92\xf5\xfe\xdc\x7f\x93\x68\x98\x44\x24\x86\xf9\xdb\x4f\x2b\x4e\xfd\x27\x88\x78\x60\xa6\x93\x3b\xc5\xe3\x73\xd1\xe1\xf1\xe8\xde\xd2\x91\xa4\x71\x86\x44\xf7\x35\xff\x9e\x3b\xe7\x19\x6d\x62\x45\xe8\x2c\x53\x1f\x95\x01\x9e\xfd\xd6\xa0\x75\x76\xf4\x26\x67\x78\xf3\x15\x07\xbe\x49\x88\x18\x37\x73\x94\x53\x8b\xeb\x66\xa7\x09\xd3\x82\x8e\xc7\x36\xf0\x64\x14\x06\x16\x5d\x09\xba\x9c\x52\x84\xa9\xd5\x7f\xb5\x8b\x47\x57\x6d\xd3\x57\xac\xbd\x63\x00\x8c\x26\x55\x33\x81\x35\x62\x5f\xc0\xc0\x00\xe8\x04\x53\xb3\xe0\x7f\x0e\xa2\x78\x34\xee\x5c\x8f\xbe\xd8\xed\xd1\x93\xc5\x99\xf9\xdf\x24\x04\x4d\x5b\x2b\x82\x9e\x70\x16\x19\xfb\x32\x7c\x9f\x56\xd6\xfe\xd3\x41\x4a\xb9\x78\x39\x9a\x60\x0f\x58\x84\x21\x5f\xb1\xdb\x9b\x05\x21\xad\x0b\x6a\xc2\x92\x80\xae\xb0\x30\xf0\x59\x80\x54\x56\x30\x5c\x4f\x92\x77\x20\x05\xc7\xb5\x16\xa9\x79\x27\x32\xd1\xc0\x2e\x4d\x56\x44\x50\x2e\x21\x74\x51\xe3\x2a\x2f\xa9\xa0\x7c\xe1\x5f\xbd\x8c\xaf\x6e\x71\xbd\x15\x4a\x41\x96\x05\x47\x7e\x4e\x5a\xba\xa1\xf0\x6f\x10\x0e\x43\xad\x16\x35\x6f\xa4\x58\x2f\x64\x2d\x0a\xa9\xd8\xca\x39\xbc\x3b\x3f\x2f\x84\x65\xc6\x29\x33\x0c\x2b\x3f\x8c\xa2\xcc\x4d\x86\x22\x1c\xb8\xc6\x50\xbc\x1a\x6e\xff\x92\x9b\x0f\xda\x1d\x44\x11\x77\x45\x4e\x8b\x60\x1d\xd1\x66\x13\xb0\x2a\xfd\xe7\x94\x46\x4e\x10\x4a\x7c\xf3\x19\xd0\xaf\x74\x8c\x27\x18\x34\x56\xeb\xe6\xaa\xe7\x74\x88\x1d\x6a\x62\x83\x62\xc7\x9c\x68\x6a\x0a\x7f\x1f\x97\xe0\xc2\x3f\x19\x8d\x74\x0b\x89\x78\xa7\xd2\x80\xb1\x1a\x5b\x90\x3a\xc5\x53\x04\xa3\x78\xd7\x53\xc2\x6b\xce\x16\xa4\xfa\xc1\x7d\x54\xfe\x2c\x17\x80\x52\x83\xe0\x43\xc0\xd6\xd7\xb3\xd3\x12\x34\x63\xce\xd4\xc4\x52\x59\x70\x36\xc8\x13\xe7\xcc\xbf\x3b\x7c\x03\x4c\xc2\x4c\x0d\x7f\x24\x26\xac\xf9\xb6\x26\x25\x2d\x73\x17\xc2\x20\xa2\x7b\x8d\x60\x29\xd5\xb8\xab\x9a\xf4\xcb\x2d\xa9\x81\x27\xd7\x12\x5b\x53\x5a\xa7\xb9\xee\x7a\xf6\xb6\xac\x6b\x27\x1b\xef\xb5\x1e\x4b\x3d\xf1\xb9\x41\x8b\xdc\xe6\x7f\xd6\x4c\x45\x7e\x32\xa6\x92\xb8\x5e\xfb\x6f\xc3\x52\x3e\x29\x07\xb0\xf0\x64\xd1\xfe\x4f\x9f\xeb\x87\x9e\x52\x1d\xe1\x25\x38\xf6\x9b\x4c\xb5\xcf\xca\x03\x8e\x3f\x2c\x8b\xd9\xdc\x23\x0d\x1b\x06\x29\x4d\x86\xc5\xc9\x35\x59\xf5\x38\x2c\xb2\x12\xee\x63\xe5\xa7\xe0\x64\x05\x1d\x74\x4e\x7d\xf8\x72\x77\x13\x6d\x53\xe5\x6a\x59\xd8\xac\x87\xf6\x92\xef\x1b\xf2\xb3\xbc\xc5\xf4\xc2\x5b\x22\x99\xa2\x6d\xeb\xb5\xfa\x14\x7c\x48\x9a\x9c\x21\xcc\xa3\xd5\x4c\x56\x82\xe5\xd5\x8c\xf1\xdc\x32\xa4\xf4\x3a\xc4\x88\x98\xa9\xb6\xae\x48\xf3\x38\x7e\xf4\x0c\x66\xa0\xb7\xc2\x35\x04\x00\x36\x13\x59\xeb\x9b\x3a\x34\xa1\x37\x54\xdc\xc5\xf8\x47\xa6\x5b\x20\xd9\x7e\x06\xbd\x93\xef\x02\x57\xd5\xbf\x02\xd5\x02\xa1\x80\x05\xef\x3e\x1c\x82\x2d\x14\x07\xd2\xf8\x06\xce\xc0\xba\xa0\x3e\xd1\xdc\x3a\xda\xcd\x33\xdd\xc7\xc0\x83\xc6\x53\xbb\xaf\x9f\x63\x27\xea\xeb\x52\xc9\x26\x34\xcb\x75\x7c\x55\xd0\x5f\xfb\x95\x1a\xdf\x7b\x32\x74\xae\x67\x65\x0c\xf4\xa0\x4f\x84\x4f\xca\x9e\x71\x8d\x09\x6e\x52\x4c\xba\x69\xc9\x7d\x2d\x5d\x75\x8b\x9b\x9d\xba\x52\x66\x95\xc8\x4c\x95\xfc\x88\x3c\xcb\xf1\x90\x88\xbd\x00\xfd\x37\x5d\xfa\x6f\x3b\x4e\xb0\x32\xb5\x27\x74\xc0\x38\x4d\x88\x34\xb4\x5f\xa4\x69\x5a\x3b\x22\xd9\x59\x38\x6b\x7a\xc0\x3e\x9d\x97\xa6\x6f\x1d\xfe\x66\xcb\x77\xa3\x0d\x7e\xe4\xe0\x82\x20\xeb\xe1\x92\x4a\x6f\x72\x53\xaa\xd9\xdd\x8a\x0e\xb3\x23\xd7\xca\x51\x36\xbc\x65\xf2\xaa\x5e\xcb\x21\xe1\x43\x06\x11\x20\x4d\x67\xe3\x7d\x8c\x61\xe2\x7b\xdd\xaa\x86\xf8\xfc\xc8\x43\x66\x05\xc7\x79\x6d\x6f\x00\x77\x39\x7f\x84\x9c\xc3\x23\x35\x39\x7f\x1a\xd6\xeb\x92\x13\x56\x64\xa5\xbe\xa3\x13\x34\x67\x81\x9a\x59\x23\x4c\xf4\x43\x4c\x50\x9b\xf9\x30\x6b\x92\x98\xb0\xe6\x19\x13\xf2\xee\x8c\x4e\x1a\xca\xcb\x3c\xbb\xa0\x8b\xfa\x9a\xc2\xb3\x0c\x4d\xed\xd3\x95\xe1\x11\x7f\x22\xcd\x0f\xb4\xa1\x32\xd3\xb6\x89\x9a\x16\xf7\xe0\x3d\x43\xaa\x37\x92\x48\x3a\xcd\xd6\x7c\x51\x5f\x5f\x33\x29\x69\x99\x61\xd3\xf6\x74\x74\x82\x83\xe7\xd3\xfb\x92\x95\x6f\xa8\xb4\x7c\x67\xca\x28\x56\x6b\xc1\xf8\xa5\x3a\xae\x62\x18\xd3\x76\xc7\xd3\xd8\x15\xfc\x8a\x34\x4f\xbb\xbe\xb2\x9b\x8d\x1d\xb7\xa8\xab\x8a\x96\x4f\xc8\xe2\x9d\x5a\x18\xb5\xd5\x68\x19\x77\xb2\xa7\x19\x00\x9c\x01\xf7\xa0\xb7\x75\x9e\x55\xb0\xb9\x26\x0d\xb9\xa1\xb0\xd2\xc1\x64\xc5\xc3\xbe\x65\x55\xf5\x14\x3e\xb8\xd5\x53\xdc\x1e\xe3\x2f\x2a\x76\x79\xa5\xa6\x13\x6b\x82\x4c\xe0\xfa\x39\xd3\xae\x65\x2b\xe0\xcf\x6a\x50\x81\x06\x22\xa7\xf6\x00\x0e\x5b\x50\xcc\x5c\x71\x14\x3f\x01\x3b\x07\x12\x7f\x18\x56\xaf\xd9\xe5\x25\x15\xdf\x12\x49\x45\x7b\x1a\x2f\xe8\x82\x5c\xd3\x97\x1c\x82\x84\xf6\x7c\x1f\x94\xc9\xcc\x40\x2e\xba\xc3\xb0\x8f\xc3\x79\xef\x76\x4f\x49\x79\x97\xa1\xed\x16\xdb\x09\x9b\xde\xb3\xe6\x0d\xb9\x61\xfc\x52\x11\x57\x97\x9e\x7a\x17\x26\x45\x02\xea\x79\x78\xb3\x3f\x5d\xd2\xe4\x02\xaa\x72\x25\x2b\x0f\x58\x57\x3f\x8f\x9a\x0c\x19\xbf\xa9\xdf\xd1\x6f\xd9\x92\x2e\xee\x16\x15\x7d\x4a\xf4\x47\x37\x99\x66\x48\xa5\x1a\xe7\x5b\x9d\x1a\x7b\xc7\x82\x7d\xd4\x15\xd9\x3f\x36\xd7\x2e\x30\xc5\x9d\xad\x86\xbb\xbe\xbb\x7c\x41\x2b\x99\x92\x84\xd4\x32\xea\x91\xde\xb3\xe6\x8f\xf0\xc7\xe8\x14\x87\x39\xfb\x76\x76\xa6\x0b\x96\x93\xa8\xd3\x6d\x9b\x08\xe2\x1d\x44\x8d\x49\x1c\x06\xf1\x8a\x36\x0d\xb9\x04\x58\x2b\xef\xd8\x27\x27\x5c\xa7\xcb\x35\x09\xb3\x81\x29\x68\x90\xe3\xdc\xa2\xcd\xeb\x0f\x81\x11\x83\x2d\xba\x67\xda\x15\x9d\x3c\x98\x00\x7b\x39\x06\xd8\xa8\xc3\x71\xdb\x1d\xd2\xcb\x48\xfa\x28\xe8\xa0\x96\xf6\x71\x02\xb3\x15\x71\x30\x17\x87\x93\x06\xac\x7c\x92\xda\x76\x12\x7b\x34\xcf\x9a\x84\x02\x74\x23\xd2\x16\xa4\x35\x52\x21\xb5\xa1\x5b\x4e\x5d\xf5\x0e\x72\x0d\x0d\x04\x31\x42\xf3\xc0\x52\x1f\x78\x76\xdf\x7b\xf4\x43\xa6\xdb\x14\x85\x9c\xb1\x39\xe6\x33\x36\x2f\x92\xb8\xd6\x67\x34\x17\x68\xea\x6c\x6b\x7c\x9b\xd7\x14\xa9\x01\x03\xb0\x12\x2d\x1a\x9a\xdf\xbb\xdd\x3e\x35\xa9\x2f\xe1\xa4\xfc\x8e\xde\x2a\x56\xd6\x50\xb9\x5e\xb5\x26\x23\xbc\x27\x04\xdd\xa6\xc9\xc1\x24\xbc\xa6\x13\xb3\x91\x26\x7e\xcd\x8b\x43\xb6\xce\x61\x7c\x7e\x4d\xc3\x3d\xf6\x49\xfa\xd0\xf0\x52\x9d\x79\xd1\x5f\x5c\x66\xdb\x40\x64\x01\x7f\xf0\x03\x7a\xdb\xcb\xd5\x5c\x8b\x4b\xaa\x76\x5e\xeb\x2b\x43\x36\x54\x2c\x28\x0e\x26\x39\xf1\xaa\x3d\x3f\x17\xed\xd9\xa9\xd3\x65\xd2\xea\x52\x67\x33\xb6\xbe\xae\xb3\x24\x9e\x99\xec\x5c\x12\xb3\xa7\xcd\xac\x4e\x76\x73\xeb\x92\x95\x4a\x87\x48\xf5\xd6\x92\xc5\xe2\x9b\xa7\xca\x4f\x54\xc0\x1b\x0e\x19\x97\xfb\x3a\x68\x42\x33\xb2\xc8\xd5\xae\x58\x52\xf5\xae\x77\x99\x3e\xe0\xb4\xa8\x0e\xd8\x3b\x1f\x85\x5f\x76\xa8\xbd\xf4\xea\xdd\xd0\x82\x11\xdc\x87\x7c\x26\x97\x05\xa1\xb9\x38\x6b\x69\xc8\x68\x7a\xbf\xc5\x12\x21\x63\x82\x01\x79\xbb\x10\x58\xa9\x91\x44\x52\x1d\x6d\x86\x25\x3a\x10\x9e\x8e\xa1\xf1\x38\x0b\x5a\xca\x34\xe8\x42\xe6\x1a\xb3\x0f\x3a\xd7\x69\x33\xa6\x13\x11\xb1\x79\x41\xe1\x3f\x2c\x31\x3f\xca\x26\xd9\x11\x0b\xa1\xf5\xf2\x7b\xd6\x3c\xbf\x5e\x29\xe9\xff\x14\x6b\xb5\x14\xa4\x35\xfb\x83\x96\xfa\x6f\xa3\x21\xa8\x3f\xad\x40\x07\x8f\xf5\xb2\xe9\x1f\xc0\x1b\xd5\x1f\x46\x58\x38\x49\x9e\x71\x5d\x31\xee\x30\x45\x02\xb2\x25\xc0\x48\xfd\x90\x4f\xd2\x1a\x89\x91\x25\xce\x57\x41\x74\x79\x21\x93\x34\xa1\x03\xe7\xb1\x26\x8f\x84\xca\x91\xa4\x22\x73\x1e\xec\xd9\xa1\xee\x0c\xee\xd5\x67\x1e\x44\xa2\x6e\xc3\xf7\x77\xc4\x6b\xf9\xa2\x5e\xf3\x78\x4a\xb7\x76\x8e\xd4\xbc\xb9\xf5\x3d\xc1\xf4\x7d\x47\x86\x89\x27\x4c\x5b\x1f\xfa\x55\xbe\x5f\xe6\xab\x30\x9d\x28\x61\xbe\xa2\x84\x6b\xad\x7f\x8f\xbc\xbb\x4b\xa2\x4d\x4c\x50\x62\xc4\x40\x64\xa0\xc6\xe8\xb1\x4f\x5b\xba\xb3\xfe\x94\x60\x7f\xf4\x50\xa1\x9a\x24\x28\x3b\xbd\x4f\x89\x0b\x69\x65\x76\x3c\x76\x21\xac\xcf\x58\x09\xbb\x2e\xef\x4a\xcd\x8c\xf6\x0a\xa8\x49\x89\x36\x25\xf0\xa5\x4e\x99\x83\x35\x62\x5b\xfb\xd3\x6b\xc6\x3f\x57\xdf\xe8\x67\x35\x09\x1d\x51\x3d\xee\xd9\x44\x66\xcf\x4f\xd7\x14\x9b\x8f\x9f\x56\xd4\x0e\xaf\x43\x23\x91\x7d\x25\x90\x98\x4c\xf1\x2c\x64\x9d\x27\x11\x29\x05\xc6\x98\x83\x85\xcc\xd8\x6c\xf3\x21\x46\x8d\x8f\xa0\xf5\x3f\x8c\x22\x61\x01\x92\x4b\xab\xde\x7c\x24\x73\x88\xe3\x20\x3b\x0e\xfb\x3e\x63\xc5\xdf\xc9\xd2\xf0\xc9\xb4\xf9\x0f\x34\x3e\xec\xd5\xf0\x2c\x8b\x0b\x44\x84\x14\xdd\x6a\xbd\x5e\xe9\xf2\x2f\xf9\x0d\x15\x4d\x8c\x6f\x92\x7f\xa8\xca\x59\xb2\x52\xef\x23\x35\x98\xd4\xe1\xa2\xd7\x46\xcf\xc0\x03\x96\x70\x87\x09\xa0\xc7\x2c\xf2\x8f\x61\xd6\xe8\xdf\x72\x7d\x93\xf3\x6b\x36\x53\x6c\x0f\xa2\x1a\x00\x12\xb7\x2a\x3c\x38\x8d\xa6\xe8\x04\xde\x2b\x3a\x99\x26\xde\xea\x9c\xf4\x07\xd0\xd8\x56\x07\x5f\x67\xa2\xae\x65\x16\x68\xc5\x57\xbf\xea\x5b\x44\x37\xcc\x15\xdd\x07\x0d\xf3\x2c\xd7\x08\x38\x3d\x10\x30\xea\x1b\xae\x29\xbe\xa1\xf8\x8e\xe2\x0b\x8a\x2f\xdd\x0d\x62\x9f\xa6\x83\xcf\x69\x31\x3a\x1d\x5c\xb4\x6f\xd3\x46\xe7\xd4\xde\xa0\x39\x48\xe9\x10\x96\x1d\xee\x61\x3c\x2c\x3b\x1a\x5c\xd3\x82\x4e\xdc\xbd\x32\xbe\x51\x3f\x0d\x98\x93\xf3\xc0\xc1\x77\xc1\x53\x5f\xf6\x9a\x8e\xc7\x37\x74\x3c\xbe\xa3\xe3\x71\x7e\x0e\xb3\x66\xaf\xe0\xce\xa9\x56\x07\x6f\x93\x50\x18\xf8\x79\xfa\xf1\x9b\x34\x70\x86\x9b\xe7\xd7\xa1\x61\xeb\x0d\x85\xc8\xc2\x1c\xfe\x2f\x28\x04\xd7\xc9\x3c\x9b\x64\x06\x4c\xe4\x3d\x7d\x98\xb7\x6a\x80\xfb\x22\xdd\x4d\x5a\x1c\x3d\x24\xc9\x65\xb1\x13\x0e\x66\x51\x31\xca\xe5\xcb\x56\xb5\xf3\xae\x23\xac\xbd\xde\x77\x91\xb6\x71\xc0\x91\xe6\x61\x71\x61\x03\x07\x14\xc8\x30\xaf\x08\x27\x97\x54\xbc\xa8\xd6\xcd\x55\xb7\xe1\x6b\xb5\xd1\x20\x30\x9e\xf1\xcb\x56\xf3\x3f\x50\x23\x7a\xc7\xd5\xca\xfa\xbb\x5a\x9a\x21\xb5\x6a\xf8\xb0\xdf\xd6\xa8\x42\xd5\xa7\x85\x29\x0c\xd6\x8b\xe8\x59\xd3\xf2\xa7\x6f\x41\x0e\xbb\xc0\xf0\xd6\xfc\x95\x74\x49\x85\xa0\xe5\x5b\xcd\x42\xda\xaf\x45\x20\xd6\xb5\xc7\x60\xbc\xab\x3a\xcf\x23\xdf\xab\xd6\x30\x2c\x81\xeb\x68\xaf\xfe\xf0\x59\x41\x25\x61\x9c\x96\xaf\x0e\xaf\xe0\xf7\xbf\xd9\x4d\xcd\x03\xeb\xbc\xdf\xd7\xc9\x62\x2d\xbc\x01\x25\xfc\x2e\x1a\x92\xd4\x05\x78\x3b\x59\x22\xd7\x90\x99\x57\x29\x60\xa1\x98\xac\x0d\xac\x66\x87\xaa\x1d\x46\x94\x49\x17\xfb\xfb\x1f\x5f\x3e\x3b\xff\xc3\xf3\x9f\xe6\x51\x8d\x8e\x9a\x1c\x53\x4a\xf0\x24\xdc\x18\xa3\xd3\x78\x53\xd8\xdf\xfb\x36\x84\x2b\xd7\xdd\x0c\xee\x55\x87\x1e\xfd\x18\x00\x80\xd1\x7a\x16\x74\x09\x34\x18\x6c\x97\x3c\xc3\x97\x11\x71\x46\x1f\xed\x48\xb3\x33\x15\x9e\x30\xa3\x40\x6c\x06\x59\x5e\x3a\x9e\x20\xf5\x84\x35\xdf\xb0\xb2\xa4\x5c\x09\x47\xa1\x8e\xd3\x75\xfb\x30\xee\x55\xc6\x12\x04\xb0\x01\xb4\x80\x63\x77\x12\x5b\x63\x0b\xe3\x7d\x10\x92\x93\xb7\xc5\xf5\xcd\xac\x11\xb9\x92\x91\x33\xe6\x5d\xb0\xb4\x9b\x8d\x41\xd7\xa1\x5b\x5c\xab\xd6\xf4\xd8\x5f\xac\xab\xea\xce\xa8\x79\x89\x2f\x38\x55\x85\x6d\xd9\x97\xfc\xc7\x66\x87\xc7\xa0\x2a\x12\x78\x0b\x8e\x72\xf0\x17\xc9\xdb\x10\x07\xed\xa7\x06\xdc\x00\xfa\x81\x89\xea\x73\xb4\x89\x66\xc7\x94\xd5\xd5\x8c\xc5\xe8\xc0\x8a\xa6\xb4\xaf\x9a\xfa\xf2\xde\x9a\xb4\xdc\x6a\x7f\x54\x90\x5c\xd3\xb0\x54\xbd\x4d\x74\xab\xe9\x51\x68\x95\xee\xc0\x51\xe8\xc2\xba\x62\xef\xca\x25\x6b\x9a\xd2\xba\xea\x77\xf4\xf6\xc0\x6a\xdf\xd1\x5b\x5d\xa5\x65\x86\xdf\x59\x09\xca\xaa\x6a\xce\xb2\x70\x50\x45\x57\x5a\x55\x75\xee\x46\x6d\x28\xb2\x51\x48\x73\xe3\xf1\xa8\x67\x87\x44\x61\x4f\x26\x9e\xaa\xb8\x87\x3f\xa6\x12\xc7\x5e\x86\x10\xd4\x83\xc3\xb1\x4c\x3b\xa3\x83\xfc\x1b\xc2\x31\xc7\x90\x53\x62\x61\x4d\x62\xc1\x3b\x38\x05\x3c\xec\xb1\x1e\x7b\xc6\x4a\x25\x04\x53\x8f\xc1\xaa\x63\xc9\x3c\x5c\xb1\x1e\x2e\xc4\xe9\x31\xe3\x1c\x53\xc8\x96\x40\xbb\x13\x6b\x26\x80\xb0\xae\x5d\xe6\x7d\x82\x9b\x76\x1c\xfa\xba\x38\x79\xb4\xfe\xda\xc2\x05\x3c\x5a\x5b\x09\xbf\x2a\x9a\xd9\x7a\x8e\x17\x45\x3d\xab\xe6\x03\x37\xfe\x05\xe4\x61\x0c\x13\x7d\x2f\x74\x5e\xf0\xb7\x34\xa7\xb3\x6a\x8e\xa6\xef\xcc\x1f\x58\xfd\x5b\x10\xe3\xfc\xb7\x8c\x58\x84\x06\x68\x54\x83\xd7\x6b\xab\xb5\x1a\x83\x85\x97\xbb\x3c\x6d\x06\x16\x4e\xe0\xa5\x4d\x03\xdd\xd8\x14\xb0\x02\xb7\x73\xc2\x22\x14\x9f\x6e\xd2\x1c\x1f\x2f\xc8\x42\xd6\xe2\x2e\x05\x64\xe4\xee\x42\x70\x19\x0d\x0f\x5f\xb5\xa3\xf9\xf0\x4f\x10\x48\x55\xe2\x2b\xdb\x8b\xd1\xae\x9e\xb5\x8e\x22\x93\xe5\xa2\xc4\x57\xb1\x63\xa9\x6e\x58\x11\x74\x70\xce\xa5\x50\x88\x5b\x27\x73\x28\x3a\xda\x53\x54\x0b\x16\xbe\x4c\x24\x81\x94\x74\x42\x2d\x57\x2c\x83\xad\xd0\xb9\xdc\x8a\x7c\x81\x7b\x0f\xee\xa4\xa4\xea\x8e\x73\x11\xc3\x0f\x1a\xfc\xa9\xd2\x05\x25\x77\x01\x93\xd2\xd2\x55\x4f\xaa\x54\xda\x57\x7e\x26\xe7\xb6\x97\xf1\xf8\x90\x52\x39\xb2\x30\xd4\xbb\x4a\x6f\x51\x6a\xc8\xb1\x78\xba\x2b\xab\x6b\x41\xfb\x64\x54\x40\x42\x69\x37\x35\x93\xf3\x81\x1f\x55\xe7\x1d\xd6\xd8\x74\xe7\x4c\x1b\xa2\x5e\x36\x8f\x9b\x3b\xbe\x18\x8f\x85\x8b\x33\x44\x2d\x9a\x87\x6d\x15\x83\x8a\xf4\xca\x56\x69\x03\x6d\xdd\x73\x13\x6a\xf5\x37\x30\x0a\x86\x45\x32\xa8\xa4\x44\x98\x84\x3b\x6b\xf6\xec\xcd\x74\x08\x9c\xf5\x7f\xa9\x12\xc6\xd1\x11\x8b\x22\xf0\x6d\x05\x59\x2e\x48\xa3\x1b\xb8\x5c\x5a\x61\xf1\x0d\xb9\x31\x50\x63\x02\x53\x84\xc1\xb9\x57\xc9\xb5\xd0\xb3\x24\x42\xd2\xd2\x6f\x92\xf6\x90\xa3\x0d\x64\xa8\x39\xc0\x21\x70\x6c\x25\x22\x61\x9c\x05\xd5\x32\x1d\x3c\x5c\x4f\x2c\x8c\xf1\x81\x9d\x9d\x7e\x60\x67\xa7\x48\xb3\x89\x8e\x7f\xb8\x99\x9a\xf8\x83\x73\x13\x76\x53\x98\xa9\x0d\xe6\x5c\x37\x31\xac\x97\x66\xe2\x9d\x1b\x89\xc3\x74\x0e\x91\xa4\x63\x2c\x32\x69\x3d\x1e\x83\xab\x8e\x0c\xdf\x9b\x8b\x91\xa9\xc0\xe6\x5a\x64\x4a\xb7\x68\x8b\x76\xc1\x4c\xc9\xf6\xbd\x18\x96\xdb\x10\x77\x8a\x5a\xdc\x31\x28\xa8\xcb\x50\x84\xe9\x16\xe1\xee\xb7\x2c\xea\xeb\x95\x22\x3e\x6c\x51\x30\x96\x15\xb9\x6c\x32\x94\x46\xe9\xea\xae\x98\x09\x0c\xa8\x5b\xfe\x00\x9d\x65\x0c\x44\xe6\x3c\xa0\xfc\xb0\x56\x66\x36\x52\x82\xc9\xe6\x3e\xd3\x5c\x52\xeb\x71\x0c\xb3\xa3\x0e\xa5\x50\xb3\xdc\x3e\x50\x3b\x0f\x8a\x69\x3f\x3f\x9c\x9d\x2f\xae\xe8\xe2\xdd\x8b\x5a\xbc\x16\xab\x2b\xc2\x69\x19\x05\x52\x34\x19\xd2\xdf\x9a\xd0\x0e\x7a\x15\x95\xce\x90\x54\x03\x11\xd6\x44\xf7\xd0\x8a\xcf\x86\x7e\x93\xc8\xe8\x14\xfb\xef\xd3\x6d\xf6\xcc\x03\xda\xa5\x2e\x6a\x2e\xe5\x00\x01\xba\xe3\xe9\xf4\x6c\xc4\xa9\x36\x64\x86\x2e\xbd\x7b\x0e\x6d\xb1\x88\x24\x3a\x26\x1a\xf3\xc8\x1d\x36\xa0\x5e\xed\x6e\xf8\x80\x61\x1f\xa4\x36\x07\x03\x53\xbd\xee\x81\x89\xec\xe0\x08\x80\x72\xdd\x87\x18\x59\x4f\xce\x97\x8c\xfb\xc0\xc0\x4e\x46\x8c\x30\x7f\x6f\x82\x81\xc7\xb5\x9f\xdc\xfd\x7b\x53\xf3\xc7\x2b\xe6\x23\x79\xb0\xe1\xea\xbc\xc3\x3e\x3c\xb0\xdd\x63\x9a\x33\x4c\x71\x4b\xf8\xc5\x3a\xb7\x07\x8a\x58\xc9\xde\x4a\x30\x6d\xc2\xf2\x80\x30\xa0\xb2\x1f\xfd\xa2\x37\x9c\x16\x80\x5b\x20\xf2\xb3\x24\x92\x9c\x5d\x06\x90\x0d\x68\x27\x32\x89\xae\x60\x70\x69\x59\x11\x4e\xd8\x03\x50\x53\xeb\x50\xa5\x21\x05\x73\x89\x5d\x89\x12\x13\xb0\x35\xc0\x69\x68\x11\x82\xd7\x05\x44\x01\x50\xac\x55\x9f\x1a\xd7\x82\x5d\x32\x4e\x24\xe3\x97\x2f\xbb\x4a\x90\xeb\x6f\xca\xc0\x2e\x05\x6a\x8f\x4b\x8e\x65\xb3\xed\xec\x44\xde\xe5\x06\xe2\x03\xf4\xa5\xe8\xcb\x14\x47\xd2\x78\x46\x4a\x9b\x7e\x2c\xa5\x92\x58\x51\x4b\x5e\x4e\xca\x68\x54\xc3\xc0\xd9\xcc\x59\x11\x7d\x01\xe2\x13\xc3\x2d\x51\xc2\xa4\x93\x09\x13\x38\xa8\x49\xcd\x5c\xc4\x71\x86\x29\x76\x09\x16\x16\xd8\xe4\x86\x98\x56\x67\x11\x2a\xa9\x5e\x2c\x0f\xee\xab\xb5\xc3\xf5\x36\x8a\x81\x29\xd4\x94\x40\x3e\xd2\xdd\xf3\x12\xc5\xd0\x68\x42\x74\xe2\x62\x12\x94\x28\x04\x26\x09\x71\x86\x1e\x4e\x35\x3c\x49\xd4\x36\xc0\x8c\x7a\xc4\xe1\x96\x38\x6a\x50\x85\xe3\x0c\x38\xa6\x7b\xdf\x40\x77\x8b\x43\x66\x9c\xd1\x88\xc7\x83\x1c\x8f\x5b\x0f\xda\x52\x6e\x8e\x06\xac\xb8\xa6\x2e\x01\x86\xd1\xd7\x3d\xc1\xeb\xdc\x27\x7e\x10\x2e\x07\xb8\x4d\x2b\xe5\x3f\x70\xda\xfe\x62\x0c\xa9\x41\x38\xa0\x37\x60\x03\xb6\xa0\xa3\x59\xb1\xde\x22\xac\x09\x72\x20\x4f\x45\x32\x65\x72\xe4\x47\x51\x5b\x50\x6f\xdc\xfa\x8e\x29\xc1\x09\x0b\x83\xf7\xa3\x50\xa2\x50\xcf\x7c\x17\x6c\xdb\xda\x11\x49\xc5\x82\xce\x03\xf5\xab\xa7\x44\x57\x0b\xda\x53\x01\x30\x64\xea\x09\x44\x2b\xc1\x77\x7c\x93\xc0\xac\xee\xa6\x44\xc2\xa4\xd8\x63\x77\x0f\x10\xf6\xc8\x66\x93\x93\xa2\x7d\x5a\xf4\x12\x92\xce\x94\x80\x25\x66\xfd\xa2\x26\x77\xd8\x2e\xdf\x12\x49\x1b\xa9\xe4\x30\x10\xb7\x33\x3b\xe3\x20\xcb\x63\xbe\x45\x9d\x46\x64\x78\x76\xd4\x98\xe2\x16\xcf\xc2\x32\x71\xe0\xec\xad\xa4\xcf\x69\xb4\x45\x7b\x6f\x24\xd4\x8a\x13\x4c\x2c\x3f\x48\x4d\xf8\xae\x63\x29\xd8\xc1\xfc\x43\x79\x03\x2b\x78\xeb\x10\xa9\xfd\x21\xc2\x36\x1b\x66\xd7\x37\x0a\x8c\xa5\xb8\x06\x63\x53\x0d\x96\xad\x8f\xcd\xe9\x4d\x66\xf2\x0e\x25\xe6\x14\x73\x2c\x30\x39\x94\xdd\x5b\x83\x55\xc8\xec\x1b\xc7\xec\x89\xe7\xe3\x04\xc4\x9e\x64\x2b\x3d\x90\x65\x3b\x3f\x43\x02\xdf\xe4\xc8\x19\xd0\xc4\xc4\x74\xaa\x78\x20\xd0\xa6\xf9\x9d\x61\xf7\xca\x91\xad\x19\x69\xe6\x75\x5e\x34\xa0\x55\x43\x8d\xd8\x15\x9a\xe1\xe8\xd9\x1d\x9d\xde\xd0\xc1\x9e\xd1\x14\xcc\x5b\xbd\xda\xfc\xa5\xcf\x2a\xe2\xb4\xd1\x43\x88\x72\xc7\xc6\x57\xe4\xe1\xa0\x31\x06\xf1\xe4\xa5\x69\x79\xd0\x39\x37\xf2\xf6\xc1\xd1\x40\xf9\x0e\x8d\xe5\xa3\x53\x35\x8b\x9d\xb2\x6f\x20\x5d\xe6\x8b\x5a\x2c\xa8\x56\x0a\xf3\xd1\x89\x49\xdb\xf2\x73\x25\xb1\x78\x57\x20\xbb\x59\x52\xa4\xcb\x30\xc7\x75\x87\x74\x7b\x77\xc2\xd9\x83\x49\x9b\x6c\xd1\x94\xf8\x85\x3b\x4c\xcc\xfd\x08\x4b\x17\x4a\xc7\xff\x50\x8b\xd7\x11\x25\x79\x42\x94\xfc\xc0\x05\x4a\x8b\x9a\xf5\x16\x4d\xeb\x40\x97\xf5\x77\x89\x71\x00\x46\x4a\xcb\x3e\x4b\x1a\x65\xa7\x5d\x25\x34\x91\xee\xae\x6d\xf5\x8d\x5c\x0d\x46\x27\x49\x9b\x6d\x4a\x4c\xd8\x65\xb3\xed\x31\x81\xf6\x58\x63\x7b\x4a\xab\x43\xf3\x0f\x91\x52\x65\x70\xe8\xd4\x23\x94\xba\xb8\x3e\xb1\x1a\x70\x5f\x9a\x85\x1d\xea\x6f\x3b\xe3\x42\x3d\x31\x92\xdc\x2e\x60\xb9\xa0\x0d\x5f\x1a\x9c\xde\x00\x64\x71\xbd\xea\xc4\xd2\x84\x88\xc3\xc1\xd6\x59\xad\x9b\x2b\xc0\x36\xa2\x2d\xa3\xa1\xc9\x3f\xd4\x49\x36\x64\x4c\xed\xe7\xbc\x96\x6c\x79\x67\x9c\x94\x18\x6d\x72\x69\x66\xc6\x7b\x05\x3a\x1d\xc3\x7d\xe2\x1f\x63\x54\x80\x36\x5a\x5e\xbc\xa5\x55\x2d\xff\x49\x70\x75\x99\x3e\x07\xfa\xda\x68\xd5\xca\x29\x7e\x4b\x73\x89\xa2\x16\xfb\x18\xd4\xbe\x36\xc3\x1d\xfb\xae\xd3\x6a\x1f\x19\xb0\x65\xee\x48\xdf\xe4\x02\x09\x01\x41\xc1\x46\x65\x42\xf7\x0d\x47\xd2\xc8\xbb\x0d\x95\x2d\x50\x5d\xa9\xfe\x34\x10\xa1\xe6\x3e\xdf\x43\x85\x4a\x8b\xa5\x60\x8f\x87\x78\x01\x72\x8a\x02\xb4\xcf\xd4\xd7\xc5\x34\x39\xe8\x91\xfe\x58\xa3\xca\x69\x17\x7c\x6a\xe8\xc5\x18\xea\x23\x67\xcf\x0c\xdf\x73\xa5\xd0\x53\xe7\xbb\x2d\xbc\xd8\x23\xc1\xce\x17\x65\x3d\x49\x11\x88\x9a\x9f\x17\x39\xdd\x6c\x6c\xaa\xa6\xe0\x8a\x2c\xd8\xa9\xaa\xb1\x20\xd6\x20\x61\xc5\x86\xf1\x05\x45\xb4\xe7\xab\xae\xd5\x0e\x41\xeb\xd4\xd1\x05\xf4\xd5\x83\x75\x83\xef\x29\x6e\x5f\xeb\xc2\xa9\x00\xb7\xa8\xb8\x2f\x90\x59\xd3\x69\x27\xf8\x21\x61\x3b\xb5\xe4\xf4\xad\xb5\x32\xdb\xfb\xe8\xc0\xb2\x8f\xe2\xad\x0b\x4b\x97\x8e\xad\x80\xa5\xd8\xdf\xeb\xf0\x80\x4e\xcf\xee\xb7\x1d\xf5\x37\x95\x0e\x4c\x75\x69\xee\xae\xff\xe4\x1c\x6c\xfb\xae\x27\xa1\x11\xef\x87\x6b\x4d\xa4\x7a\x06\xfd\xf3\x2c\x6c\xd5\x06\x89\xf4\xcc\x7b\x04\x13\xa1\xb7\x30\xdf\x81\x48\x1b\xde\x78\x3a\xe0\x39\xf0\x4e\x34\x07\x31\xbf\x22\xbc\xac\x68\xf9\xfc\x86\x72\x99\x0b\x0c\xce\xca\xaa\x84\xc3\xc2\xc4\xf5\xc4\xa9\xdc\xe6\x16\xac\x8c\xbc\x40\x2c\xa9\xf6\xb1\x5e\xcd\x79\x0d\x53\x83\xba\x86\x4b\x46\x2f\xf4\xf2\xb6\x7d\x17\x5a\x3c\xbe\x85\x43\xdf\x36\xbc\x00\x2a\x5d\x5b\xb3\xdd\xfa\xae\x1c\x13\x4c\x74\x76\xc0\x27\xb4\xaa\xdb\x23\xc8\x14\xb2\xdb\x40\x83\x3d\x5d\xd7\x37\xa4\x7a\x7a\x45\x5b\xc1\x8d\x3b\xc7\x6f\x17\xa5\xd7\xda\x80\x45\x31\x3a\x0d\x90\x12\x73\x1d\x82\xa3\xce\xfa\x1f\xb9\xde\xef\x91\x85\x32\xef\xb5\x99\x8c\xc7\x62\xbf\x35\xa4\x6f\x9c\xb1\x6d\xa4\xf3\x1a\x20\x07\xdd\x9c\x5b\xa6\xfa\x61\x53\x1e\xd7\xce\x69\x78\x87\xf7\x21\x33\x08\x87\x4c\x18\xbe\xb4\x63\xee\x06\x7f\x8f\xb9\x0b\xa8\x15\x36\xed\x01\xd3\x96\xd3\xf1\xd8\xe4\x29\x1a\x15\x05\x35\x73\x10\x58\x4e\xd3\x73\x69\xaa\x20\xac\xab\x9b\x03\xfe\xa1\x4d\xd8\x6a\x28\x6a\x87\xd5\xfc\xa9\x73\xeb\x0f\x5a\xec\xbd\x4b\xb7\xfe\xfa\xbb\xdd\x3d\x34\x53\x06\x97\xcf\x67\xb6\x86\x6e\xa0\x1b\xd8\xb4\xdb\xf5\x0e\x5a\x4a\x45\x43\x0d\x7c\x52\x21\x60\x80\x99\x71\x59\xca\xec\xa9\xd4\xb9\xa3\xf5\xbc\x39\x0c\x43\x6a\xf9\x7d\x68\x40\x40\xf0\x1c\xfa\xdd\xc9\x5e\xd1\x54\xb3\xc7\x30\x50\x22\x05\x08\xa6\x13\x08\xa5\x84\x8f\xe7\xc6\x01\x1d\xfe\x2f\xc0\x37\x7d\x76\x32\xd7\x39\xbf\x49\xf7\x60\x80\x1c\x0c\xce\x83\xf2\x28\x3b\xfe\x5d\x76\x44\x07\x65\x7d\x4f\x26\xf4\x3d\x93\xe3\xb1\xfe\xdf\xa8\x13\xa4\x20\x61\x28\xf4\xf6\xf6\x8a\x55\x34\x1f\x91\x59\x3d\xd7\xbb\x73\x5d\xdc\xd2\x59\x03\x5b\x6d\x8d\x64\xb1\xd6\x02\x7e\x83\x45\xb1\x9e\x50\xb5\xc5\x1a\x4c\xd4\x53\x38\x93\xc0\x48\x23\x8b\x99\xe2\x6d\x33\x6d\xc9\xaa\xf4\x88\x01\x03\x82\x17\x27\x98\x15\x95\x75\xba\xe2\x5f\x33\x48\x61\x95\x93\x82\xcc\xaa\x19\x9f\xcf\x91\x6e\x72\x3c\x36\x19\xe9\x08\xc2\x44\x77\xa8\xce\x02\xf3\x68\x00\x03\x2a\x74\xd4\x66\x33\x95\x58\x0f\x63\x2a\x30\x0c\x62\x4a\xb6\x5b\xdf\x99\x68\x77\x26\x66\x7c\xae\x7b\x31\xa0\x5f\x4b\xab\x24\x47\xfe\x44\xe4\x60\x2f\x86\xb0\x5a\x06\x20\x51\xd0\xb1\x6c\x77\x2c\x55\xc7\x30\x66\x03\x47\x0c\x06\xb7\xe8\xc4\xee\xb1\xb4\xc5\xd2\xb8\xae\x30\xa4\xaa\xc2\xf0\xff\x81\x2c\xfe\xff\x86\x99\x45\xdf\x3a\x2a\xb2\x9a\x0f\xb3\xa3\x37\x80\x13\xad\x7b\x3a\xca\x86\xb0\xac\x43\xc6\x87\x30\x45\xc3\x0c\xf3\xa3\x82\x86\x54\x32\x19\x66\xde\x5b\x4f\x71\x44\xd5\xd2\x53\xa2\xb6\x00\x40\x73\x0d\xb3\x23\x93\x68\x9a\x37\x2b\xba\x90\xb9\x40\x47\xd9\x24\x43\xb8\xad\x3a\x70\x43\xed\x3e\x08\x27\x9d\x23\xa6\x93\xeb\x4c\x06\xb9\xce\x5c\xa2\x18\x0a\xb1\x37\x90\x1a\xce\x67\x38\x13\xf3\xc1\xa9\x73\x32\x68\x3b\x45\x9b\x54\x86\x76\x83\x1b\xcb\x88\x66\x55\xf1\x91\xe0\x57\xa1\xc7\xa9\xad\x15\xf2\x92\x92\x5e\x68\xcf\x28\x70\xac\xec\x62\x75\x3c\x99\x5e\x0c\x70\x6e\x66\x1b\x0f\x70\x4f\x9c\xc3\xa2\x26\x21\xda\x26\x21\x73\xe7\x40\x21\xc7\x9b\x05\xbf\xc0\x35\xda\x52\x97\x85\x6d\xab\xad\x5f\xbb\xa2\xf9\x7a\x40\xdf\x01\xa2\x79\x74\x9a\x70\xad\xda\x13\x1c\xa8\xf9\xdb\x4a\x9b\xdc\x76\x68\xfe\x58\x14\xf7\xdb\x41\xec\x87\x99\x30\xa6\xb8\xdb\xf5\x30\x21\x1c\x47\x03\x19\x9a\x1d\xae\xb5\x75\xcb\x85\x4b\x71\xa4\xc5\x7f\x37\xac\xb3\x5c\x44\xd0\xb8\x0d\x24\xae\x8b\x9e\x14\xf7\x5b\x84\x5b\xcf\x66\x7c\x5e\xc8\xc9\xf9\xca\xfa\xff\x04\xbe\x01\x1c\x33\x84\xa6\xb9\x08\x12\xfb\x42\x9b\x41\x0e\x45\xdd\x60\x90\x09\x98\xcf\x0b\x16\xdd\x82\x74\x2d\x1f\x42\x93\x60\xa2\xc7\x5e\x3d\xc0\x5e\x75\xec\x98\x0f\x73\xad\x11\xb8\xef\xdf\x97\x44\x92\x69\x68\x3a\xe7\xda\x83\x55\xf6\x82\xb7\x8a\xc9\xf9\xa2\x56\x2b\x2e\xbf\xef\x8e\xee\x6d\xfd\xef\x6f\x5e\x7f\x97\x53\x0c\x1f\x68\xb4\xad\xbd\xc5\xa5\x2a\xae\xdd\x44\xf6\x14\x4d\x5a\x44\x2c\xfc\xbd\x07\xa8\xdd\x6c\x32\xbe\x56\x84\x12\x3c\x3b\xd3\x49\x39\x24\x66\xe5\x94\x6e\xa7\xfa\x57\xde\x45\xb5\x3e\x6b\x3f\x98\xd2\x00\x40\x10\x43\x36\x5c\x56\xea\x00\x33\x90\x81\xbb\x02\x4f\x57\xaf\x03\x7e\x23\x3a\xb1\x22\x36\x49\x01\x2b\x8d\xb4\xe5\xb8\x0f\x78\x3b\x27\xb6\x0c\x0d\x80\x19\xad\xa3\x6a\x59\x50\x1c\x9f\x43\x38\x3b\x97\xe4\x32\xf3\x81\x63\x47\x6a\x07\xbb\x1c\x44\xd4\xca\xb6\x36\xc1\xa9\x4b\x4d\xd1\x36\x0c\xb7\x42\x70\x12\x24\x7b\x7e\x0e\x43\x4d\xe8\xf3\xe6\x8d\xce\x0d\xe6\x81\x72\x23\x4d\xa0\x47\xe4\x34\x16\x0a\xeb\x02\xd7\x15\x8d\xb5\xd7\x2f\x6d\xc5\xe6\x74\x3d\x1a\x23\x21\xac\x71\xe6\x1f\x25\x80\xdd\x9b\x6a\xd3\xd1\x09\x0e\x3d\xd5\xc1\x89\xcf\xc8\xab\x4e\x08\xec\xac\x68\xdb\xed\xb8\x1d\x1f\xf4\xd0\x31\x9c\xc6\x63\x00\xd7\xae\x96\xc9\xa0\x6d\x87\xb0\x73\xd1\x92\x56\x07\x3d\x56\x55\x17\xf3\xda\xb5\x8b\x59\x13\x45\xbf\x33\xac\x12\xfc\xf7\xda\x5a\xf5\x70\xcb\x30\xbc\xf8\x6d\xdd\x67\x76\x8c\x65\xf0\x50\x0f\xc1\x19\x4c\x6e\x93\xa1\xc9\x39\x29\x4b\x67\x82\xde\x13\x8e\x1d\x4d\xcc\x61\xad\xdb\x54\x2e\xda\xc8\xd4\x09\x8d\x0e\x17\xfd\xb0\x06\x5d\xce\x93\xda\x87\x82\x27\x6c\x55\x07\x35\x06\x41\x41\x26\xc5\x21\xfa\xdd\x49\x4c\x0b\x26\x80\x9c\xa4\x00\xe6\xb5\xec\x3a\x84\x90\x8a\x4b\x83\x23\xaf\xe6\xd0\xac\x60\xff\x0a\xe5\x12\xd3\x99\x9c\x47\xd4\x11\x83\x07\x24\xf6\xbf\x0e\xed\x06\xe4\x1f\x75\x84\x53\xe3\xc5\xa3\xc9\x43\xcf\x40\x5b\xbf\xb5\x60\xee\x29\x03\xbb\xae\xa1\x13\x43\xf4\xbe\xce\x5b\xd6\x56\xb4\xd9\xd8\x2c\xa2\xba\x5f\x33\xde\xb0\x7b\x40\x19\x77\x03\x4b\x14\xe8\x6e\xac\x50\x37\x66\xdd\x0a\xd6\xc4\xe5\x57\xa5\x87\x59\x85\x33\x69\x14\x4d\x8b\x4d\xe9\x5d\x7c\x0f\x9d\x58\x59\x6b\x21\x3e\x01\xaa\xfc\xb5\xc1\xce\x75\xec\x1b\xb2\x73\x99\xb9\x3a\xca\x7e\x97\xe9\x5d\x64\xa2\xfb\xda\x77\xf8\x91\x4d\xd1\xc7\x07\x9a\x4b\xfb\x91\xd3\x3b\x56\xd4\x9a\x0d\x41\x98\xe8\x64\x1a\x50\xe2\xc3\x20\xb8\xe6\xd3\xd9\x01\x41\x8c\xa7\x51\x26\x27\x2d\xb4\x60\x89\x22\xf9\x83\x81\xc9\x4b\x95\x96\xe9\xd2\xce\x8b\x3f\x18\x61\x21\xac\xe9\x5e\xb4\x93\x84\xf6\xe3\xfc\xb6\x88\x68\x02\xb0\xd5\x2d\x14\x5c\xb6\xcc\x69\x07\x1e\x5a\x9a\xc4\x6c\xed\x06\x20\x64\xb5\x62\x65\xe7\x45\xc5\x4a\x2d\x75\x0c\x62\xbf\xc8\x9e\x24\x65\x9d\xbb\x04\x74\xc0\xf1\xbe\x8d\x93\x9b\x82\x00\x98\xca\x14\x1e\x9c\xfb\xd6\x4d\x0c\x75\xf3\x9e\x42\x75\x9f\xc4\xd4\x47\x9e\x26\xaa\x77\x12\x7b\x1f\x9e\x9b\x3b\x91\x8c\xbb\x15\x83\xda\x57\x3d\x72\x29\x6f\xd5\x69\x85\xe0\x04\xf1\xac\xf4\x76\xc8\x3b\x54\xd5\x12\xc4\x5d\x71\x8f\x15\xed\x77\x65\x5f\xee\x75\x37\x94\xa0\x6c\xa4\x0b\x1a\x8d\x73\x11\x58\xc0\x40\xd0\x6f\x73\xb2\x54\xa0\x14\x68\x4f\x14\xd3\xd8\x45\x25\x78\xd9\xa5\xdb\x4e\x91\xa2\xf3\x39\xfa\x68\x3f\x68\x7e\xa3\x1a\x6e\x76\x5b\xc1\xc5\xf4\x76\xf8\x86\xda\x0b\xd7\xf8\x65\xb0\xb8\x76\xd3\x1e\xb8\xae\xb6\x78\xb0\xa4\x2e\x70\x39\x95\x51\xb7\x13\xde\xec\xbf\xba\xad\x8c\x1f\xf6\xe5\xed\x5a\xfe\xeb\x3b\x71\xd7\xb3\x39\xea\x8b\xc9\x0e\x52\xcd\xfb\xd0\xdf\xdd\x49\xeb\x03\x4f\x76\x5b\xd9\xc9\x94\x3d\x55\x47\x51\x14\xa8\x06\x2e\xbf\xa2\xed\xec\xc2\x4c\x3f\xc4\xac\x9d\x76\xfe\x31\x0d\x1d\x19\xd9\x32\xef\x0d\x12\x0b\xdc\x61\xe4\x1c\x8b\x1e\x6f\x94\x53\xa4\xda\x11\xfd\x7e\x2d\x27\x2e\x83\xec\x2e\x8f\x31\x6d\xc2\xaa\xc7\xe3\xf8\x4c\x11\x70\xd0\x8c\xc7\xb5\x77\x21\x73\x7f\x46\x6e\x1c\xea\x79\xec\x5a\xa6\xf1\x0a\x9c\x47\xe9\x8e\x11\x9e\x22\xfd\x75\xa1\x22\xfa\xb2\x79\x23\x49\x45\xb5\x5b\x8e\x47\x61\x79\x4b\xa3\x9c\x2c\x4a\x7b\x7e\x47\x03\x40\xd4\x77\xd4\x86\xea\x52\x14\x50\x1a\x64\x17\x00\xf7\x4b\xa7\xe1\x29\xb9\x63\x3c\x36\x51\xe1\x76\xd0\x9e\x31\x9c\x3d\xcb\xa5\xc9\xbb\x11\xc0\xbb\xf8\x8e\x5e\xfd\xaa\x51\x6b\x54\xcf\xdf\xd3\x28\x6b\xb3\x7a\xf4\x97\xfd\x70\x29\xe7\xe7\x11\x60\x4a\x80\x15\xb1\x3f\x57\xfc\x2e\x37\x98\xd0\x91\xe0\xdc\xb0\x69\x6f\xac\xd9\x1d\x56\x1c\x9a\xad\x44\x8f\xd9\xca\x66\x72\xc2\x1c\x8b\x19\x9f\xdb\x64\x2c\x7b\x62\x53\x52\xa3\x7a\x40\xbc\xf3\xcf\x1c\xd8\x5b\x41\x78\xb3\xac\xc5\x75\x70\x31\xfe\xcb\x0f\x10\x8c\xf2\x3a\x03\x75\x72\xac\xb1\xa0\xb7\x64\xb4\x2a\xbb\x5c\x3d\xb4\xc7\x3e\x70\x79\x9d\xb9\xf6\xe1\xdf\x87\xb5\x08\xab\xc8\xdb\x10\xe1\x5e\x0b\x67\x68\x61\xd3\xa9\xc8\x33\x37\xce\x0c\x75\xa2\x71\x0f\x6b\x42\xce\xe8\x1c\x18\x25\x34\x20\xdc\x51\xe2\x67\xe0\x63\x4e\x58\x18\x53\xf9\x8a\xac\x72\x33\x60\xca\xa5\xd0\x57\x5e\x28\x90\x04\x82\xa9\x7c\x72\x07\xa8\xb8\x87\x8c\xe4\x01\x24\x76\xc0\x60\xd4\x09\xf9\xaa\x73\x42\x72\xfd\xd0\x25\xe0\xff\x81\x1a\xab\x33\x5c\xc7\xd0\xd2\x1f\x99\x4f\x7f\xf5\xbc\xf6\xe5\x0e\xc6\x0a\x77\x49\xd6\xd2\x2f\x40\xef\xba\x77\x21\x18\x8d\x71\x7c\x4a\x62\x17\xe9\xe0\x9c\x18\x9d\xea\x6e\x15\x23\xfe\x98\xbb\x87\xf0\x11\xe4\x1f\x0d\x1f\x18\xd5\xd9\x60\x1d\xc4\xa0\x4f\x7c\x51\xad\xcb\x16\x38\x92\x1f\x54\x07\xb5\x46\x0f\x89\x46\x7d\xd3\xd8\x88\x12\x8e\xd4\xd7\x87\x41\xc9\xe4\x78\x44\xeb\x41\x3c\x32\x61\xff\xf2\xe7\x8f\xcf\xde\xe6\x91\xd3\xfc\x98\xd3\xb2\xa6\x53\x2f\x5d\x41\xa7\x77\xf9\xaa\x9d\x2f\x55\x6a\xdf\x3b\xe7\x9d\x96\xa3\xce\xb2\xb5\xd9\xe3\x5e\x5d\x0c\xe6\xc5\x75\x0d\x93\xd4\xed\x15\xe6\x13\x9a\x0a\xf6\xb2\xdb\x73\xbb\xdb\x0f\xdb\x09\x12\xf2\xa8\x3d\xf8\x34\xb5\x07\x9f\x86\x7b\xf0\x99\xdd\x83\x50\x1f\x24\xc4\x09\x7d\x2f\x29\x2f\xf3\x1f\x28\x06\x20\xd7\x69\xc7\xa3\xa0\x59\xaf\xa8\xe8\x81\x83\x37\x96\x99\x50\x2e\xd4\xa6\x6e\xfd\x4b\x27\xcd\x75\xf1\xae\x06\x15\x27\xfa\x05\x9b\xd6\x3c\x01\xac\xc1\x30\x4a\x55\xcb\x2a\xfe\x4f\xdd\x9e\x59\xa4\xb5\x29\x6d\x44\x69\x13\xc8\x2b\xe8\xaa\x22\x0b\x1a\x7f\x46\x2b\x79\xd2\x5b\xc8\xbe\xde\xac\x2b\x39\xac\x97\x43\x32\x6c\xa8\xb8\xa1\x62\xf8\xd7\x35\x15\x77\xc3\x7c\x59\x8b\x21\xa9\xaa\x61\xd7\x0e\x04\xb9\x95\x1a\x34\x64\xcd\x90\x5d\x5f\xaf\x81\x8b\x4c\x86\x6f\xeb\xe1\x75\x5d\xb2\xe5\xdd\xd0\x7c\x75\x83\x87\xeb\x86\x0e\x5d\xca\xba\x4c\x9d\xb2\x77\x2b\x3a\xd5\x73\x6f\x92\xf0\x95\x79\xb8\xe4\xa9\x28\xf7\xa8\xf7\xb3\x03\x6c\x06\xc6\xe0\x8d\x26\x82\x92\xf2\x35\xaf\xee\x72\x84\x35\x3a\xfa\x63\xf9\xd4\xc4\xa5\x74\x2f\x43\xda\x7e\x1c\x4e\x58\x9e\xd8\xba\x39\x8d\xb3\xce\x46\xb1\x86\xda\xfc\x92\x3e\x71\x94\x5c\xde\x75\x13\xb1\xcb\x9c\x21\xd4\x8d\xb3\xf1\x0b\x3a\xf0\xc4\x15\xd4\xc1\x56\xe1\xb1\x62\x85\xee\x3f\x4f\xc7\xeb\xd3\x34\x99\xe0\x24\x5a\x54\x17\x44\xca\x42\x4b\x75\x07\x71\x1a\x25\x5b\x4c\xd2\xa3\xc4\x72\x8b\xcf\xbb\xd3\x93\x4e\x04\xf6\xd8\xe4\x29\x0d\xae\x8d\xc2\x0c\x60\x5b\x7c\xbe\x5a\x37\x57\x71\xc0\xf7\xb4\xdf\x58\x1f\x2e\xa3\xaa\xa8\xcf\x39\x7d\xa1\x6c\x2c\xf6\x1f\xd4\x96\xae\x1a\xb6\xd6\x90\x9b\x9e\xd5\xc7\x06\xae\x23\xb8\x04\x09\x41\x3b\x82\x2f\x8d\xe0\x3b\xcc\xfc\x4d\x6c\xe6\xd6\x89\x06\x3a\xd5\x48\xc2\xea\xfc\xe9\x8f\xd6\xa3\x5b\x64\x50\x48\x93\xfd\x9a\x52\xc1\x73\xaf\x11\xbe\x77\x81\xa1\x36\x9a\x42\xc0\xac\x97\xac\x69\xea\x05\x23\x12\xee\x49\x5e\xdf\x72\x5d\xbb\xe9\x21\x78\x6b\xf2\x0e\x74\xce\x5d\xe8\x2e\xb2\x65\xe3\x19\xe8\xe0\x6f\x30\x19\xd8\x94\x7b\xe7\x6b\x2e\xe8\x25\x6b\x24\x15\x6a\x08\xe6\xd2\xb3\xc3\xa7\xaf\xcd\x65\xa8\x2f\x1d\x7c\xa7\xbd\x12\xbd\x65\x95\x45\x2b\xe8\x32\xfa\x64\x3f\xce\x33\xb2\x6f\x22\xf2\xae\x5d\xb5\x65\x23\x68\xbf\x36\x92\x04\x3e\x71\xc7\x6d\xff\x09\xb3\xc5\xe7\xb1\x0b\xf9\xb4\xc7\x85\xfc\xa5\x35\xa8\xbb\x05\x50\x22\x49\x06\xa9\x6d\x70\x74\xcc\x27\xf6\x62\x3f\xbd\xf7\xe7\x8b\x8d\x87\xa5\x51\x40\xb6\x08\x7f\x47\x8b\x67\xd4\x1e\xaa\xe9\x13\x35\x71\x5e\xc6\x14\xb3\xd9\x98\x53\x3a\x90\x48\xf6\x1d\xc2\x70\x78\x15\xfe\xcf\xf0\xa8\xd4\x99\xe3\xfd\x9f\x36\x97\xfd\xcf\x3f\x2b\xc1\x1f\xaa\x7d\x4c\xb6\x0e\xc8\x0c\x25\xd9\xa0\xde\x34\xed\x99\x07\x86\xa8\x36\x79\xe7\x0d\xf4\xe8\xf7\x2b\x9d\x9c\xc3\x93\x36\xd3\xd4\x32\xa8\xea\xb2\xa1\xb2\x97\xc5\x39\x7b\x48\x6b\xab\x36\x54\x7a\xde\xe6\xa4\x9b\xf8\xae\x39\x04\xac\xb7\x27\xc2\x74\x74\xaa\x43\xc0\x23\x94\xb1\xfb\x2d\xb6\x09\xfd\x75\x4c\x78\xf7\x2d\x3c\x47\x56\x5f\xb0\x7b\xf8\x9c\xd8\xbd\xf6\x27\x26\xaf\xc2\x7d\x6c\x8c\xed\xee\x7a\x3c\x48\x23\x61\xdd\xe8\xc4\x9a\x4f\x6a\xbe\x30\xfb\x21\x33\xae\x51\x19\x0e\xf2\xe6\x6c\x11\xfe\x96\x26\x91\x61\xf0\x8b\x5e\x55\x27\x06\xdc\x0d\x4c\xff\xad\x78\xaf\xd3\x0e\x8a\x88\x47\x1d\xa9\xd8\x4d\xec\xe3\xd1\x0f\x9a\x6a\xa0\x41\x77\x94\x30\x6a\xc5\xf7\xf5\x6a\x0d\x09\xa3\xa3\x86\x67\xf3\xad\xb5\x04\x76\x4c\x59\xb2\xed\x31\x92\x72\x11\xf1\x34\x05\x37\x77\x74\x1f\x58\xa9\xce\x22\xb2\x07\xcf\xf4\x24\x8a\xb8\x31\xa5\xc1\xe3\x2e\x17\x70\x03\x37\x93\xf3\xcd\x66\x36\x47\x36\xe9\xea\x78\xfc\x2d\x0d\xd0\x7a\x08\x8c\xd2\x64\xe5\x33\xd3\xb0\x84\xde\xb7\x8a\x9a\xf4\xdf\xdf\xeb\x66\x63\xe2\x7f\x51\x8b\x57\xce\xd8\x17\x6f\x04\xaf\x77\xcf\xe6\x98\x17\x27\x8f\xb8\x57\xbe\x9d\x6b\x1c\x2b\xe4\x8c\xcf\x07\xec\x10\xcc\x56\xd6\x8b\x66\x9a\x23\xe7\x7f\xea\x31\x08\x93\x94\x31\xa3\xf3\x41\x3d\x1e\xef\x1c\xe9\x6c\x8e\x59\x71\xf2\x88\xf9\xe1\x32\xef\xc9\x07\x89\x7f\x48\xd1\x8f\xac\x9a\x23\xdc\x14\xf5\x24\x3e\x7f\xc9\x66\x53\x87\xd0\xaa\x7a\x93\x51\x04\xee\x68\x30\xee\x1a\x61\xb8\xfe\x07\x8f\x1c\x02\x16\x05\xff\xdc\x9d\xdc\x68\x2b\x02\x2f\x66\x45\x19\x1d\xe9\x2d\x17\x68\xc0\xe3\x42\x29\xc1\x2c\xe7\x68\x9b\xd7\x10\x6c\x12\x14\x0e\x09\xd6\xce\x8a\x2c\x4e\x1e\xc9\xaf\x9d\x67\xa3\x3c\x3a\x42\x3f\xd2\x1c\x9c\x11\xb6\xe0\x0b\x67\x09\xa4\xcf\xe3\xdb\xd2\xa3\x6b\x10\x72\xca\xed\xdd\x8d\x14\x05\x84\xb8\x97\xf8\xac\x7f\x04\x0c\xa7\xb9\xe3\x8b\x6f\xe3\x95\xdf\x61\x21\x35\x83\x98\x49\xb5\xf8\x5a\x05\x66\x8d\xe6\x8b\x02\x61\x56\x8c\xf8\x66\x03\x56\x18\xeb\xf7\x5a\x17\x71\xb4\x27\x6c\xe9\x57\x64\x05\xba\x13\xc2\x24\x38\x64\x6a\x27\x97\xa0\xa2\x88\xfc\x23\xdd\x73\x0d\x57\xb2\xd9\x8c\x08\xba\xe7\xee\x0a\xeb\xe0\xaf\x16\x2d\xa8\x0c\xff\x35\xc8\xcd\xb8\xb5\x51\xdc\xb0\x86\x5d\x54\x2d\x4a\x78\x02\x08\xa6\x6a\xe0\x6b\x45\xfa\x55\x71\xf2\xa8\xf2\x30\x9b\x95\x25\xfd\x45\xd1\xcc\xaa\x39\x5e\x16\x8b\x16\x6d\x8f\x14\x9f\x59\x1a\x82\x1e\x8f\xf3\xa5\x21\x63\xbc\xd6\x14\xbc\x40\x68\xbb\x36\xcd\xf5\xd1\xec\xda\x30\x1a\x97\x19\xe0\x71\x55\xf5\xc6\xed\xa4\xf6\xb4\x8c\xbc\xbd\x71\x47\xab\x82\x33\x31\xaa\xd6\x8e\x96\xdd\xd7\x03\x04\xae\x18\xa9\xa9\x4b\x5e\x8a\xfc\x02\xc4\x03\x71\xc0\x84\x53\x34\x30\xfd\x85\x17\xcf\xf6\x3c\x16\xa8\xe7\x6c\x83\xd8\x96\x20\x18\x52\xee\xec\xa5\x48\xef\xe8\x7e\xfa\xa5\xc8\xb8\x14\x34\xf8\x10\xc6\x0d\x8b\x7f\x28\x63\x0e\xdc\x40\xba\xdf\x9c\xdc\xa0\xcf\x3c\xb0\x8e\xc7\x79\xa2\x0e\x0d\xc3\xca\xb3\x12\x0e\x37\xdc\xc1\xde\x09\xa5\x2a\x23\x04\xc1\xeb\xad\x93\xf7\xe2\xed\x2e\xd1\x78\xfc\xc4\x6c\xaa\x60\x94\x8f\xfb\x25\x82\x3e\xa0\xb1\x74\xfb\x02\x9d\x3d\xa1\xb9\xc0\xac\xf8\x2e\xfd\x61\x20\x7b\x4e\x65\xe7\x03\x45\xe2\xe3\xc2\x0f\xc2\x0f\x94\x1f\xf9\x4e\xf9\x91\x3b\xf9\x11\x4d\x1f\x3c\xd4\x3d\x23\xdd\x1e\x22\x66\x59\x8a\xc1\x4c\x2d\x42\x52\xf5\x3c\x40\xb6\x4a\x11\x14\x9d\x30\x5e\xd2\xf7\xaf\xd5\x66\x56\x85\x8e\x4f\x47\x45\x21\x7c\xce\xf8\x66\x05\xf0\x48\x02\x9f\x22\x3c\x3a\x19\x38\x60\xf1\x7c\xff\xa0\x31\x45\xf1\xb9\xd2\xd9\xb9\x72\xae\x14\x71\xaa\x0d\xfa\x11\xd3\x4e\x14\xd5\x0c\xb1\x4f\x62\x6f\xed\x96\x27\x16\x0c\x40\x4e\x02\x5d\xbc\x07\x4c\xa1\x8b\x9b\xd0\xee\xbe\xc7\xb8\xe0\x75\xa4\xc4\x78\x03\x38\x07\x74\xd0\x1a\xdb\x2e\xfe\x46\xbb\xc8\x85\x80\x90\x20\x53\xa0\x10\x09\xcd\xe0\x04\xef\x13\x66\x83\x39\x41\xdb\x96\x67\xc5\xdf\x4c\x7a\x55\x3f\x7c\xf7\xea\x47\x1a\x12\x57\x7c\xea\xc9\xf4\x14\xc9\x1e\x69\x0b\x42\x0b\xd5\xbc\x38\x48\x5c\xd7\xcb\x93\xee\x3d\x15\xe6\x3e\x92\x44\x7c\xcd\xf5\x5d\x15\x9d\x89\x79\x3c\x08\x38\x68\x65\x98\x6e\xe6\x9b\xc0\x4d\x04\xd7\x7a\xec\x56\x1c\x79\x9c\xb3\xc3\xed\x0e\xb5\x96\x52\x90\x86\xee\x6d\x0a\x19\xe0\x96\x29\x41\x41\x5b\x17\x01\x25\x41\xe2\x06\x73\xac\x98\x89\xb6\xcb\x7d\xa3\xa3\x9d\x0c\xd3\xfc\x5f\xb6\x9c\xd2\xf3\x3f\xcb\x8e\xc4\x51\xf6\x59\xa6\x76\x9e\xbb\xdc\x5a\xa3\x8e\x75\xc0\xd0\x8d\xeb\xc3\x98\xd8\x68\x39\x5c\x73\x7d\xa7\x56\x62\xd8\x39\xc3\x5b\xd2\x0c\x6f\xa8\xb8\x1b\x56\xec\x1d\xad\xee\x86\x64\x78\xcd\x1a\x49\xde\x51\xa7\xd2\xe7\xeb\xe2\x9b\x7c\x8d\x25\xae\xba\x50\x5a\xd4\xde\x00\xfe\x31\x97\x93\xc6\x42\xa3\x0a\xf3\x95\xea\xc3\x0c\xfc\x4a\x66\x47\x12\xf8\x7a\x68\x41\x46\xc9\xd1\xa1\x75\xf0\xf9\x7b\x29\xc8\x42\x0e\x57\xe4\xce\x63\xda\x8a\x60\xb9\xff\x48\x5b\x47\x05\xee\x81\x92\x88\x8f\x0e\x8a\xce\xb4\xe3\x8a\x44\x53\xb5\x30\xdb\x5c\x02\x38\x23\xee\x98\xff\x18\x24\xed\xc0\xb5\xc9\xd3\x31\xe8\xa4\x1e\xb2\xbd\xd3\x09\x2b\x0d\x24\x0d\xd5\x45\x69\x27\x00\x87\x76\x03\x70\x9c\x5f\x50\xf4\x06\x93\xc4\x51\xd8\xdb\xb5\xed\x55\xdf\x1c\xff\x49\x90\xd5\x8a\x0a\x5c\x17\x02\xb2\x76\x61\x62\xe9\x0d\x6c\x2f\x8d\x12\x30\x1c\x68\x49\x14\xe1\x43\x0c\xa4\x97\xc1\x7b\x5c\x17\x6c\xb2\xe3\x12\x9a\xa3\x59\x33\x87\x93\x4f\x3b\xc2\x9a\x30\x1b\xd3\xf6\x1f\xe8\xdd\xb4\xc1\xea\xc5\x74\xbd\xdd\x6e\xdd\x60\xb7\xb9\xc0\x12\xfc\xae\x54\x4f\xc6\x73\xb0\x29\xc8\xc4\xd7\xc3\xeb\x42\x37\x89\xab\xa2\x9e\x35\xf3\xf1\x58\xfd\x0b\xeb\x33\x08\xfd\x67\xd7\xe3\xb1\x23\xfb\x6a\xb3\xc9\x55\x29\xa8\x00\x30\x15\xae\x4e\x3a\xa8\x10\x42\x23\x61\x61\x45\x30\x39\xa4\xb8\x67\xe5\x94\xe9\x9b\xa0\x7a\x1b\x75\x27\xcf\x72\x5e\xd0\x40\xf1\x27\x68\xaa\x9f\xdc\x6f\x71\x74\xe8\xab\xfd\x8b\x82\xe4\xdd\x15\x5e\x63\x89\xd0\x76\x0b\x79\x7a\x29\xe6\x08\x47\xdd\x28\x56\xa6\x7b\x86\x21\xc1\xd3\x70\x54\xd1\x22\x4c\x73\x56\xdc\x6f\x31\x9b\xc1\xed\xf7\xbc\xb8\x07\x91\x44\x86\xa8\x86\xc6\x62\x85\x21\xe2\xa9\xde\x62\x86\xb6\x3d\x12\x9a\xbd\xd7\x2d\x95\xee\xec\x7f\x69\x07\x3f\xf7\xd3\xc5\xa2\x4a\xbf\xf1\xfe\xda\xde\x78\x2d\xa6\xa6\x36\xcc\x8a\xd2\x77\x8f\xab\x4a\xfd\x54\x3a\x7e\xcb\x48\x9c\x73\xc5\x0a\x13\x77\x0a\x06\x6c\x3a\xdf\x71\x85\xe0\x6f\x63\x30\xd3\xec\x82\x04\x77\x3d\x79\x53\x7c\x93\x37\x58\xe2\x3e\x0e\xfa\xb8\xaa\x34\x2b\x61\x0f\xe7\x62\x2c\xe2\x62\x8f\xab\x2a\xc5\xc4\xda\xda\x17\xcc\xc8\x3e\xce\x66\x47\xf6\x2f\x5e\x32\xdc\x66\xda\x00\xf3\x27\x5a\x90\x3c\x7b\xf6\xfc\xc9\x8f\xbf\x3f\x96\xcd\xf1\x85\x20\xbc\x0c\xf3\xb7\xfd\x4b\xe4\x92\xe7\x57\xe9\xf7\xbf\x7a\xaf\x8d\x9f\x28\xfe\xc3\x3e\x6b\x66\xe4\x0e\x37\xfb\x13\x9d\xc7\xae\x12\x4a\x1e\xd1\x33\xed\x70\x0b\x9a\x64\x4a\x2f\xf7\x5a\x97\x6e\x0e\x68\xa6\x9d\x04\xa9\xd3\x84\x35\x61\xee\xf2\xc9\x3b\x57\x5c\xc4\xec\x8d\x7e\xf8\x25\xe3\xf6\x13\x94\x85\xab\x3b\xe6\x61\xa0\x5b\x9d\xf7\x1a\x61\x14\x67\xcd\x77\x0f\x7b\xe7\xdb\xd0\xb8\x89\xa5\x12\xdd\x9d\xe7\x46\x6a\x92\xec\x2a\xa5\x27\xf0\x24\x82\x8d\x33\x1f\xe9\x6d\xd9\x03\x3e\xf9\x4b\xcd\xe2\x5d\xce\x03\xf9\xb3\xb9\xe3\x8b\x28\xdc\x36\xc3\x02\x8b\xd8\xa2\xd3\x1e\xbf\xbe\xe6\xc1\x6c\x67\x68\x4e\x14\x61\xfe\xda\xfc\xc4\xac\xb8\xcc\x83\x91\xee\x06\x74\xe6\xc8\x1b\xaf\x6c\x79\xc5\xf3\x72\x86\x06\xf5\x78\x9c\x0a\x0d\xca\xf5\x8a\xee\x1a\x7d\x3b\xd1\xe0\xe9\x9e\xc9\x4f\x18\x07\xdb\x4d\x0e\xf6\xd1\xf0\xee\x2d\x30\xe8\x98\x3a\xcc\xd7\xda\x20\x75\xcf\x4f\x8a\x2f\xec\x94\x2a\x01\x5b\x6d\x88\x99\x38\x3a\x9d\xbb\xe3\x20\xe7\xd1\xd4\x44\x68\x39\x39\xd3\x29\x33\x27\x3d\x3e\x78\x7b\xb7\x4e\x9f\xef\x9e\xde\x46\xfd\xa2\xcc\xde\x86\x77\x48\x41\xba\xed\xb4\x40\xb5\xc3\x4a\xda\xf2\x11\xa1\xb1\x9b\xc2\xce\xfe\x94\x76\x78\xee\xa5\xa5\x70\x41\xb0\x08\x47\x63\xb0\x88\x7f\xf1\x41\x59\x2c\xe7\xee\xc0\xf6\x60\xe8\xc4\xf2\x84\xdb\x93\xf5\x43\xf6\x24\x53\xb2\x46\x6a\x4f\xd6\x68\x40\xc6\x63\x92\x8e\xc3\xe5\xc1\xf0\xfa\x10\x9c\x3e\xce\xe8\xcc\x56\xec\x61\xe9\x79\x8d\xc3\xa1\xf4\x23\x3c\xfd\x82\x53\xd5\xc6\x89\x0a\x07\x98\x06\xf5\xf9\x05\x07\x17\x0c\xc0\x0c\xcc\x07\x02\xf5\x42\xf7\x62\xa6\x98\x1a\x5b\xe6\x72\xb3\x11\xf6\x2a\xca\x0e\x73\xc0\x1f\x32\xcc\x1a\x6d\x69\xd5\xd0\x21\x53\xe2\x10\x37\xd1\x72\x74\x3b\x48\x70\x91\x68\x60\x80\xa6\xa0\x86\x1b\x44\xa4\x77\x06\x1b\xd6\x0e\x23\xd7\xf5\x6b\xd8\xe9\xe9\xf4\x7c\x9f\xf8\x6c\xb3\x31\x38\xc0\xc8\xa3\x21\xe8\xe3\xad\x64\xcd\xa2\xe6\x9c\x2e\xba\x29\xdc\x7e\x81\x43\x37\x89\xab\x9a\x77\x9c\xe8\x7d\x24\x1a\xc4\xdf\xf4\x39\x74\xc6\x23\xd3\x3e\x9c\xbf\x4f\xf9\x70\xfe\x3e\xf0\xe1\xf4\x82\xf9\x7f\xfc\xaa\x05\x70\x37\xcc\x7f\xb7\x21\x3b\x1e\x0e\x25\xb0\x23\xb9\x38\x41\x63\x50\x02\x5b\xd1\x15\x69\xf8\x67\x72\x78\x41\x29\x1f\x1a\x50\x7c\xd6\xd0\x72\x78\x3c\x04\x37\x98\x1c\x45\x25\x16\x80\xa4\x13\x78\x86\x80\xd4\xfc\x9f\x14\xff\x99\x62\x2a\xd3\x5e\x0e\x52\x16\xc6\x31\xf1\xf9\x77\x7f\xc4\x6d\x05\x4d\x60\xe2\xa7\xb9\xc9\x6d\x44\xb8\xd1\x00\x65\x41\xd3\x8e\x38\x1a\xba\x0b\x85\x22\x68\xf1\x17\x2c\x13\x88\x15\x10\xd6\xf0\xc2\x25\x21\xf8\x77\x9a\x4b\xf0\x01\x31\x80\x00\x6c\x01\xa7\xa1\x2d\x6c\x55\x09\x67\xa6\xdd\x91\x3e\x76\x72\xee\xf5\xca\xdd\xc5\x02\x7b\x0e\x0c\xe7\x0f\x34\x87\x71\xc0\x5b\x23\xce\xbd\x21\x37\x14\x44\x38\xeb\x66\x59\xc6\x68\x37\xd1\xab\x56\x32\x1a\xfd\xce\x34\xf4\x82\xca\xc5\x95\x0d\xe6\x80\x7b\x68\xf5\xa0\xfb\x81\xea\xec\xba\x26\x5e\x02\x78\x43\xc5\x0d\x0b\x92\xfb\x4e\xce\x95\x6a\xfb\x8e\x96\x8f\xb5\xf0\xfe\xd7\x35\x6d\x02\xe7\xfa\x49\x03\x01\x74\x8f\x9b\x86\x0a\xf9\x8a\xca\xab\xba\x7c\x4a\xaa\xaa\x79\xcd\x9d\xc1\xfa\x0d\xe8\x7b\x4a\xf7\x32\x85\xdf\xaa\x06\xe3\xe6\xe0\xed\x25\xe5\x54\x10\x49\xdf\x48\xb2\x78\xa7\x0a\xd1\xe6\x45\x2d\xde\xea\xee\xe3\xa2\x7a\x50\x61\x1b\x6f\x24\x11\xb2\x3d\xea\xb0\xc0\x73\x5e\x06\xaf\xcf\x01\x1b\xff\x4f\x84\xc9\x60\x36\xb6\x44\x33\x95\x06\x79\x86\xd0\x5a\x4d\xe2\xdf\x98\x24\x66\xc6\x5d\x7e\x51\xf3\x46\x8a\xf5\x42\xd6\xa2\x00\x9d\xe6\x1c\xde\x9d\x9f\x17\x44\x23\x8f\xe1\x0a\x2f\xf0\xb2\x68\xba\x3a\xe5\x52\xbb\xf7\xda\xcf\x90\xd4\xae\x41\xc0\xc0\xb6\x78\xa9\x44\xb2\x46\x12\x2e\x59\x12\x8c\xce\x94\xd0\x14\xf1\x2c\x99\x00\xce\x18\xf3\xfd\x2b\xc5\x48\x97\xbd\xa2\x76\x0f\x8c\xef\x99\x75\xe3\x7a\x93\x26\x9d\x1c\xf5\xc9\xfc\x60\xa0\xfd\xe0\xca\x54\x0f\xf6\x20\xc9\xff\x81\xe3\xdd\x15\x9d\x73\xc8\x90\xf7\xa8\x14\xcb\x89\xbd\xa5\xeb\x69\xa2\x8b\xbd\xd0\xbb\x2f\xa9\x6a\xae\x7f\x30\x1d\x8a\x48\xa0\xa8\x77\x4e\xf0\x5e\x7c\xf4\xae\x66\x20\xe6\xaa\xd5\xeb\x1d\xf6\x8f\x94\x46\xf2\x3d\x35\x77\x26\x83\x56\xdc\x4e\x8a\x55\x7e\x4f\x4d\x10\x98\x30\xb0\xf0\x1c\x9c\xb4\xec\x6e\x71\x2d\xc0\x21\x09\xaf\x80\xcd\xfd\x45\x1f\xce\x08\x73\x7d\x23\x89\x0d\xbd\x1c\x62\xae\xd9\xb9\xb8\x65\x4d\x9b\xb7\x77\x2b\xfa\xfc\x3d\x6b\xa4\x59\xcf\x45\x12\x11\xb2\x6d\xb9\xb1\xc7\xa3\xec\x5a\x45\x3c\x28\x55\x90\x23\xae\x53\x4a\xcb\xdc\xb5\xc6\x46\xec\xb8\x32\x5a\x40\x48\xd6\x7c\x57\x73\xc5\x9a\x58\x89\xc6\x63\xf8\xbf\x10\x93\x73\xcb\x4e\x5f\x96\x39\xc3\x04\x21\x0c\x2f\xb8\x2e\x67\xf2\x72\xfc\x21\x17\x68\x72\xb1\x66\x55\x99\x6b\x69\x97\x61\x56\x4e\x55\x09\xef\x07\xd0\x04\x78\xce\x39\xb8\x5c\xc5\x88\x98\xf0\xcc\x07\x28\x80\xed\x16\xdc\xa8\x97\xe1\x18\xfa\x35\x55\x73\xc4\xc6\x4a\x2a\x78\x65\xfb\xda\xa0\xf6\xaa\xe6\xcf\x92\x4f\xcd\x82\x63\x1b\x60\x8c\x97\x3d\x29\x30\x7b\x38\x60\x3a\x91\x20\x14\x8e\x33\x71\xaa\xc2\x4b\xd6\x41\x35\x0e\x69\x49\xbd\x36\xc5\xf5\xbd\xf3\x32\x78\xd4\x23\x3c\x9b\x15\x66\xb9\x44\xb8\x29\x5e\xc3\x9d\x03\x5e\x1b\xc1\x18\x4d\xaa\xba\x7e\xb7\x5e\xe5\x8d\x9f\x9d\x42\x78\xf4\x6e\x17\x5e\xff\xa2\x16\x2f\x4b\xa8\x7b\xf6\xca\xba\x4a\xf9\xc1\xac\x95\x68\x0b\xd6\x6a\x38\x90\xff\x97\x7f\x35\xcc\x8e\xf8\x51\xa6\x81\x11\x59\x39\x1d\x66\x47\x96\xe9\xe9\x84\x0a\x77\x31\xd2\xe0\x1a\xd4\x95\x65\xd8\x78\x02\x9a\xdd\x24\xad\x88\xe3\x4d\xac\xa2\x0c\xc2\x49\x88\x87\xde\xb9\x64\x95\x2e\x05\x4e\x48\x1e\x89\x30\x49\x9f\x5b\xcb\xf4\x08\x29\x59\x40\xce\xf8\x21\x48\x7b\x99\x7e\x6a\x12\x92\xa2\xb3\xbe\xe1\x4d\x73\xf0\xe2\x91\x20\xc9\x5e\x8a\x7a\xcd\x4d\x7d\xb8\x61\xe9\x3e\x1c\xd9\x5e\x9e\xb4\x5e\xe9\xfe\x36\x9b\xdd\xef\xed\x78\x1c\xcc\x78\x77\x44\x78\xc7\x1d\x0b\x45\x7e\x61\x5a\xab\x96\x26\xd8\x56\x62\x32\x88\xa2\xb4\xd8\x87\xe3\x31\x0d\x61\x10\x73\xf7\x02\xe1\x90\xba\xc0\x6f\x33\x26\x10\x18\x66\x1f\xa5\xd1\x28\xbc\x2b\xa0\x39\x48\x9e\xed\x86\xdf\x6d\x36\xfd\x05\xd4\xbb\x8e\xf6\x2f\x22\x0d\x01\xd6\xcf\xe8\xe4\x7c\x15\x64\xf7\x98\xee\x9c\x50\xbb\x7d\x9f\xdc\xbd\x2c\x9b\x5e\x2f\x5e\x8f\xf5\x69\x95\x41\x45\xbe\xb5\x06\x2e\xec\xb8\xcb\x8a\x19\x33\x18\xcc\xc1\xf6\xe4\x58\xce\xd8\xdc\x91\xf5\xbb\x3c\x18\x16\x81\x3b\x27\x7d\xb7\x65\x1c\x16\x82\xcb\x27\x3f\xc9\x30\x48\x7d\x17\xa6\x36\xb4\xcd\xb3\x9a\x59\xb2\x50\x33\xb2\xe3\xcc\x0a\x9d\x84\x7a\xae\xa7\x43\xd7\x09\xd6\x71\x8c\x40\x70\x1f\xed\xaf\x3a\xd7\x3f\xe7\x42\xd0\xee\x08\xe8\x16\x0e\x95\x1d\x5e\x14\x86\xbc\xb4\x1f\x45\x73\x94\x7d\xe6\x29\xeb\x33\x98\x8c\xcf\x32\xbc\x28\x58\x80\x58\x73\xb8\x0b\x04\x4b\x5c\x1e\x36\x08\x9b\xdb\x5f\x7d\x73\x68\xb3\xc9\xfa\x6b\xa2\x92\x48\x32\xa9\x58\x59\x2c\x00\x46\xc9\xde\x26\x32\x94\xce\x9b\xcb\x5c\x0e\x84\x1c\x81\x29\xc8\x10\xf5\x78\xcc\xda\xc9\xa0\x5d\x52\xdd\xc4\xad\xa3\xf9\xfa\x0c\x19\xaf\xac\x80\x79\x1a\xaf\x49\xac\xfd\x19\xb0\xda\x6e\xd8\x1e\x50\xf1\xa6\x49\xa4\x05\x49\x91\x3a\x0d\x48\xfd\xe4\x11\xf7\x17\x07\x16\x98\xb8\x48\x6e\xc8\x19\x9f\x07\x39\x79\x7a\xa2\xd0\x44\x62\x58\x6f\xaf\x44\xbd\xbe\xbc\x7a\x11\xea\xb1\xbd\xa2\x57\x97\xb3\x85\x37\x57\x07\x69\x9a\x03\x1a\xa6\xbf\xc8\x91\xf3\x07\xe9\x10\xd1\x30\x16\x19\x58\xb9\xcd\x99\xf5\xf3\x0a\xd5\xee\x49\x3c\x15\x0c\xcb\x44\xd2\x54\xf0\x94\x52\xd4\x33\x1e\x8f\xda\x17\xfc\x90\x72\x54\x7d\x90\x27\x2f\xa6\xfe\x75\x72\xb2\xa1\x32\x3f\xbf\xbc\xd3\x0a\x47\x67\x7c\x4a\xdb\x19\xf0\x34\x15\xd2\x90\x0a\x69\x48\x85\x6d\x41\x08\x4b\x2b\xe2\x45\xdf\xd4\x15\x04\x5a\xdc\xd6\xbb\x13\x46\x8f\x9d\x18\xc0\x4a\x70\xf0\x0a\x70\x4b\xbb\x79\xc6\x33\xe8\x8a\xf1\x4b\xcd\xe7\x3e\x0b\x4f\x11\xb0\x4c\xdf\xb7\x70\x50\xb1\xe1\x39\x62\xca\x5c\xca\x6b\xb9\x85\x7c\xab\x66\x10\xad\xb5\x26\x08\x9f\x38\x2c\xa5\xd0\xa0\x32\x69\xd8\xdf\xe8\x78\x4c\xe5\x6e\xa7\x3a\xb8\x11\x7c\x5c\x55\xdf\x07\x55\x69\x83\xc2\x64\x78\x51\xb3\x78\x5d\xe8\xc0\x28\xde\x95\x6b\xd6\xe3\x71\x0e\xde\xe7\x3a\x8c\x8d\xe3\x35\x72\xfe\xe3\x35\xc2\x04\x4e\xa8\x64\x7f\xfd\xbe\x81\x3d\xf9\x8f\xf3\xc4\x07\x5b\x57\xbe\xae\xeb\x3d\xbc\x57\xdb\x46\xb1\x13\x19\xa4\x73\x8a\xea\x1b\x9f\x3e\x73\x02\xf5\x54\xef\xe5\x36\x52\x03\x04\x8b\x90\x91\x01\x80\xdf\x68\xc4\x9d\x0b\x9c\x92\xed\x16\x35\xa9\x68\xb3\xa0\x2f\x80\x19\xeb\x0d\x8c\x6b\xe7\x2a\x88\x49\xc0\xb8\xe0\x9c\x4a\x69\x9e\xeb\x10\xdf\xc7\x78\xfb\xd7\xa1\x9b\x3f\xb5\x6e\xfe\x11\x81\x0d\xc8\xac\x9a\x17\x4b\x0c\x68\xf2\xf9\x12\x2f\x6c\x02\x46\x84\x9b\xd9\x72\xc2\xca\x79\xb1\xf0\xd6\xd9\xd2\x3b\x4e\x8a\xe8\x4c\xce\x69\xdc\x2c\xa6\xae\x9d\x81\x3b\x36\x85\x3b\x3f\x65\xe0\x38\x77\xd5\x9e\xb7\xd4\xd7\xed\x87\xe1\xc6\xa4\x68\x66\xb5\x1a\x30\xc0\x7a\xeb\x3f\x8b\x1a\x13\x44\xba\xfd\xd7\x68\x6b\xfb\xb3\xc1\x11\x78\xe1\x81\xe2\xab\xaf\x17\x7e\xe6\x96\x85\x9c\x55\xf3\x81\xd0\xb3\xb1\xd9\x18\xf2\x5d\x86\xd1\x0f\xab\x7c\x1d\x7c\xd1\xea\x30\xc7\x4f\xc3\x92\x67\x62\x8e\xeb\xa2\x99\x31\x18\x3b\x5c\x1c\x04\xe3\x55\x53\x91\xcb\xcd\x26\xf0\xa2\x7c\xfe\x7e\x05\xd8\x94\x20\x1e\x30\x93\x0a\xea\x82\x0e\x57\x82\x36\x94\x9b\x28\x1c\x3a\x34\x54\x37\x5c\x89\xfa\x86\x95\xb4\xb4\x47\x2d\x1e\x5e\xac\xe5\x90\x49\xf0\xb1\xe4\xb5\x1c\x2e\x15\xcf\x9c\x00\xb8\x04\x5b\xe6\xcc\x0f\xfc\x1a\xdf\xc4\x94\x77\x57\x9c\x3c\xba\xfb\xba\x7e\x74\x77\x74\x84\x6e\x66\x77\xf3\x82\xcc\xee\xe6\x6d\x49\x6a\x0d\xcc\xe0\x3d\xf2\x61\x2a\x17\xc5\x09\xbe\x2c\xf2\xeb\x82\x4f\x94\xda\xb0\x32\xa1\xc0\x2f\x6a\xf1\xc2\xec\x82\xb3\xde\x37\x5a\xab\xb8\x41\xd3\xd9\xcd\x1c\xd9\x29\xbc\xf8\xfa\xf2\xd1\x85\x9a\x42\xdb\xc3\x79\x71\x3d\xbb\x98\xe3\x5b\xf8\xcf\x6e\x9b\xe7\xc1\xe0\x6f\x11\x7e\x13\xff\x7c\x5d\x9c\x3c\x7a\xfd\xf5\xed\xa3\xd7\x76\x29\xde\x17\xe7\xb3\xd7\xf3\x16\x0e\xf5\xe0\xcd\xec\xf5\xbc\x78\x8f\x9f\xc3\x7f\xea\x74\x64\xcb\xfc\xf6\x77\xa7\x28\x12\x83\xbe\xa1\x39\xc7\x02\x4b\xfc\x1c\x53\xbc\x4e\x9d\x8a\x57\x10\x48\xb2\x45\x68\xb2\x20\xb2\xed\x5c\x6c\xb2\x9d\x23\xb4\x45\xf9\x1b\x1d\x6d\x32\x64\xcb\x5c\x29\x6f\xcf\xad\x9c\x72\x5f\xe6\xcd\xec\xcd\xec\x64\xae\xa8\x04\x6d\xb7\xfa\xb2\xcf\x7e\xff\xe3\xe2\xe4\xd1\xe3\xaf\xeb\x47\x8f\x8f\x8e\x50\x99\xd3\xd9\xe3\x39\x32\xa6\x36\x0f\xc4\x98\x12\x37\x5e\xe7\x5a\xce\xcf\xa5\x77\x13\x6c\x29\xee\x02\x4d\xda\x18\x8d\x78\x09\xf7\x5c\x3b\xa4\x71\x93\x9b\x9c\x19\x6f\xfc\x94\xaa\x2f\x30\x47\x56\x1a\x7f\x0d\xbf\x7a\x06\x40\xe2\x6c\xd5\x01\x8a\x8b\xb5\x11\xa6\xcc\x1f\x58\x06\x8e\xb0\xb1\x7a\xd0\x15\x2e\x07\x7b\x14\x7d\xd5\x51\x3c\xfc\xe4\x57\x6b\x2b\x94\x9e\xd1\x72\xca\x00\x9d\xd9\xde\xe1\xa2\x60\xca\xc2\x4c\xec\x48\x71\xf7\xf1\xf8\x0f\x41\x21\x7f\x90\x8e\x46\x70\xc1\x6c\x83\x40\x72\x63\x8e\xdd\x3d\x8a\xd7\x39\xdd\xb7\xa0\x11\x22\xc7\xd2\x9d\x45\x1f\x51\x6e\xee\xd3\xae\x1f\x20\x40\x07\xc9\x98\x0f\x77\x41\x0e\x75\x3c\x91\xd4\xf1\x02\xe7\x50\x66\x32\x75\xaf\x21\x14\xb0\x83\x68\xcf\xcf\xf8\x94\x4f\xae\x04\x5d\xe2\xca\x38\xc6\xdb\x0c\x82\x12\x13\xbc\xc6\x0c\xe1\x45\xaf\x56\x67\x8a\x5a\xf7\xf8\xd0\x72\xf0\xd9\x50\xb3\x6e\xe8\x1e\xfc\xe6\x8d\x3e\x57\x15\x3f\xe6\x55\xf1\x4d\x5e\x61\x89\x17\x08\xff\x2d\x7f\x82\x05\x7a\x90\x63\xa8\xfd\xa4\xb6\x8f\xbb\x19\x8d\x57\xf2\x78\xf1\x47\xaa\xa1\xdd\xd4\x67\x1c\xee\xf4\x9e\xfa\x16\xe3\x9a\x1c\x7f\x53\x42\x8b\xa3\x11\xce\x9b\xb1\x7a\x6a\x5f\x6c\x6b\x3a\xe9\xcb\xbe\xdd\xeb\xd3\x61\xbd\x0c\x3d\xc2\x63\x40\x54\xf6\xb8\x9f\xcd\xad\x77\x7b\x67\xef\x9b\xf9\x22\x6d\x3c\x4c\xc8\xdd\x23\xba\x10\x94\xe0\x12\x7e\x45\x9a\x67\xf4\x9a\x48\x3b\xf5\xa5\xc9\xc6\x81\x2b\xfd\xf2\x31\xbf\x0b\x6f\x3e\x21\xe5\xfb\xa2\xd3\x1e\xec\x0f\xbc\x2c\x88\x31\xab\x05\x40\x9e\xb8\x2c\xb8\xb4\x37\x01\x1a\xae\x12\x1c\xa9\x21\xdb\x91\xfa\x43\x37\x45\xcb\xf1\x38\x4f\xa4\x2f\xa9\x43\x62\xdd\x6c\xfc\x55\xba\x53\xc2\x96\x9b\xcd\x7a\xb3\x69\x36\x9b\x51\x39\x1e\x8f\x16\x31\xb4\x4e\x4c\xe9\xad\x1e\x61\xf2\x61\x36\xaf\x8a\x4a\xd5\xc5\xab\x62\xbd\xd9\x2c\xc6\xe3\x56\x60\x83\xed\x8b\x1a\x7d\xcf\x04\x23\xeb\x10\xae\xf1\x78\xd4\x8c\xc7\xf9\xd5\x66\xb3\x32\xa7\xc0\xb5\x19\x5d\x6f\x2c\x0b\x6b\x1d\xcd\x60\x40\x37\xb9\xd9\x69\x07\x5f\xc7\x85\xb1\x5c\x2b\xf2\x62\xcb\x1c\xc6\xaa\xba\x83\xde\x6e\x3e\x6e\x6f\x5d\x1b\x44\x7e\xa3\xfa\xdd\x49\x92\xe6\x92\x41\x1e\x40\xf3\xad\xe4\x2d\x33\x77\xa1\x44\xed\xfc\xc2\x8d\xd4\x9e\x6f\x92\xfb\xbe\x09\xa2\x23\x8d\xcd\x30\x99\x0f\xf5\xef\xc9\x7b\x7d\xa6\xd5\x03\xb8\xaf\x2b\x6c\x02\x75\x22\xc3\xad\xd2\xb5\x59\x18\x44\xf3\x09\x19\xaf\x1b\x48\xc0\x7a\x61\x95\xce\xf2\x3e\x16\x6c\x81\xb9\xf6\x46\x1f\xf5\x7c\xd4\x07\x70\x5e\x45\xb5\x6e\xa4\xdf\x32\xfe\x4e\xfb\x2c\xf5\xf2\xde\x90\xfa\xd2\x8c\xe9\xcc\xed\xc2\x70\xdd\x52\xbc\x24\x31\xc9\xb6\xf9\x33\x1a\x8a\x2a\x16\xaf\x6c\x9a\xd8\x4e\xa0\x25\xfa\xfb\x03\xdb\xe5\x21\xe7\xc8\xbe\xc3\x03\x9a\x76\xf6\x33\x58\x3a\xbd\xe7\xfb\xf7\x92\x66\x7d\x30\x5e\xdc\x41\x5a\x86\x08\x94\xd4\xc9\xd2\x14\x75\xff\xc9\xb2\xd6\x2f\x53\x27\x4b\xd5\x69\x4f\x9f\x2c\x8b\xa2\x4e\x9c\x2c\xcb\xe0\x64\xc1\x65\xb1\xe3\x60\x59\xc0\x01\x41\x36\x1b\x60\xd7\x15\x9c\x43\x6c\x3c\x66\xe1\x85\x04\xf2\xec\x32\x34\x89\xf5\x9a\xc7\x59\x24\x7b\x22\x68\xb3\x75\xcf\xb6\x9b\x18\xdd\xba\x99\x23\x68\x3d\x1e\xc3\xe8\xf0\xaa\x68\x36\x9b\xca\xb2\x43\x7c\x5d\xb4\x4e\x3d\x8d\x62\xe4\x7e\xc2\x31\xb4\x18\x8f\x95\x84\x6d\x8e\x21\x33\x8a\xeb\xb3\x3e\x22\xd8\x71\xaf\xc8\xec\x88\x6e\x8a\xd1\xb5\xce\xf9\xe3\xba\x52\x5a\x88\xfd\xfc\xf1\xf8\x26\xd5\x7c\x34\x2d\x68\xca\xc6\xe3\xd1\x75\xf2\x4a\x88\x25\x36\x4c\xef\xe4\xee\xdc\x28\x1a\x01\x2a\x7d\xa5\x7b\xbf\xd5\xc8\x62\x31\x12\x27\xf8\xf5\xed\x41\xeb\xb4\x1b\xa5\x6e\xfb\x6c\x1b\xf8\x25\x30\x1b\xab\x6d\x61\x38\x4f\x6a\x14\x01\x83\x79\x97\xef\x3a\x64\xa2\x38\xaf\x01\x2b\xd8\x66\x93\x72\x9f\xdb\x1f\xed\x9f\x3b\x82\xfa\xe0\x30\x30\x83\x2e\x85\x89\x19\xe2\x81\x31\x60\x1a\x18\xcb\x04\x93\xf6\x9d\x37\x75\x5f\x04\x18\x71\x47\x8d\x81\xbb\x82\x33\xf6\xdc\x98\x57\x1d\xd1\x9d\xb1\x49\x17\xde\x2a\x6f\x70\x8d\xa6\xac\xf8\xf0\x19\xc3\xaa\x05\xcc\xf6\x1d\x54\xfa\x13\x21\x58\xb6\x7b\x2e\xb5\x4e\x23\x4f\x99\xfb\x5d\x0e\x58\x47\x98\xe7\x10\xbc\xb8\x8d\xdc\x30\x3a\x24\x4c\xf6\x92\x30\x7e\x9b\xa0\x3a\x87\x13\x14\xc5\x16\x92\x9f\x45\x2e\xee\x96\xb0\x86\x1e\x02\x92\x21\xc5\x37\x39\xd9\x45\x32\xfe\xce\x70\x17\xe1\xf4\x86\x0e\xd6\x31\xe1\xb4\x6f\x00\x0f\x57\x07\xc3\xc1\xe8\x25\x66\x2e\x6b\x0c\x26\x0f\x3f\xdb\x9d\xe6\x1f\x03\xc5\xc4\x96\xa5\x41\xf7\xbc\x80\xc8\x46\x6d\xc2\x0f\x62\x3d\x65\x20\xde\xb4\x1b\x4c\x03\x31\x87\x17\x6d\xb1\x6f\x0f\x5b\xea\xac\x85\x81\x5f\x48\x3f\x32\xcd\x09\xc2\xef\xf2\xbf\xd2\x9c\x5b\xf2\xb6\xee\x60\x6a\xbf\xb5\xa3\x4f\x9d\xfd\x09\x02\xac\x84\x73\x05\xc9\x63\xaf\x8f\xc7\x55\xd5\x76\x04\xb1\x28\xa0\x98\xa1\xc0\x7d\x23\x28\x7e\x02\x28\x2e\xc6\x64\x73\x96\x3f\x6c\xc0\xd6\x81\x44\xa4\x1c\x48\x52\x0f\x7b\x1d\x48\x1e\x57\x55\xbf\xf7\x48\xf0\x11\x4a\x33\xdd\x39\xc6\xd6\x08\x71\xe4\x69\xd0\xde\x7f\xd2\x90\x53\x3f\xfa\x90\x89\x26\xea\xb0\xbf\x38\x62\x56\x3b\x52\x18\xb2\x4a\x28\x65\x1d\x92\x4c\xb4\xd8\x05\x29\xca\x65\xe0\xbd\x95\x6e\xd8\x18\xee\x06\x2d\x6f\x78\x7b\x2d\x15\xc2\x12\xc1\x18\xec\x1b\x81\xb6\x7a\x1b\x55\xad\x9c\xaf\xea\xa9\x95\x27\xc0\x59\x3b\xcd\x5e\x3b\x0e\x4d\xc2\xd8\x20\xce\x6d\x88\xc5\x8b\x75\x55\xdd\x99\x14\xd5\x5e\x08\x94\x9e\xf5\x81\x2b\x8e\xbd\x9d\xec\xe4\xf5\xcf\x5b\xb7\x6d\x6a\x2c\xfa\x56\xe5\xde\x62\x69\x4f\xb9\xbf\xf8\x94\x5b\x84\x83\x5b\xcb\xd7\x7c\xb1\xe3\xe6\xf2\x7b\xdf\x24\x72\xd7\x8b\xc1\xc3\x3d\x68\x66\x30\x94\x06\xc0\x62\xd0\xa0\xf3\x46\x69\xde\x01\x7e\x1a\x16\xfe\x5a\x47\x7e\x2d\x00\x43\xcd\x05\x1d\xca\x39\xe4\xea\xb2\x1f\x84\x6b\x48\xdc\xa5\x3f\x09\xae\x6f\x63\x05\x02\x37\x1d\xae\x43\x42\xad\x6d\x6d\x04\xda\x41\x26\xea\x5a\x1a\x3f\xc0\x72\xd2\x90\x1b\x9d\x0a\x9c\x44\x59\x93\x7d\x42\xe1\xb3\x7c\x5d\x90\x09\xe4\x24\xcf\xd1\x59\x16\x3a\x7f\x66\x53\x32\x71\x99\xc6\xd5\xcb\xd0\xb9\x30\x9b\x66\x61\xaa\xac\x0c\xbb\x6b\xa9\x5c\xc8\x5c\xcf\x38\x68\xe1\x08\x4d\xfd\x2b\x4d\x79\x25\x2b\xd5\x6c\xed\x3a\xc3\x07\x12\x3c\x60\x8d\x5b\x80\xe1\x8d\xc6\x54\x0e\x3a\x53\xe0\xa8\x10\x8f\x4b\x67\x45\xe6\xe0\x5c\x92\xce\xe5\x55\x43\xf4\x4b\x27\x8b\x63\xce\x03\xfb\xf9\x9f\x48\x63\xf2\xd1\x75\x2e\x0d\x52\x19\xff\xcc\x6e\x75\x75\xdb\x59\xe7\xda\x35\xf5\x55\x9d\xae\xb4\x2b\xb0\xca\xda\xe6\x53\x41\x55\xcb\xc9\xb9\xe2\x0d\x09\xc6\x00\xd7\x36\xc6\xe0\xc0\x72\x70\x3e\xc3\x1c\x6c\x84\x25\x42\x58\xb4\x7d\x2f\x25\x06\x0b\xa7\x26\x1c\xe3\x2a\xa0\xd3\xf9\xa4\x49\x06\x37\x85\x61\xfc\xd1\x7b\xe3\x51\xa1\x74\x26\xc0\xe6\xd8\x6c\x88\x85\xe7\x10\x61\xea\xb4\xca\x5d\x79\xf4\xac\xcf\x1a\x53\x34\xa8\x46\xd6\x3d\xa0\xea\x8e\x78\x8d\x50\x94\x29\x68\x0d\x9a\xae\x92\xfa\x1a\x73\xf9\x7f\x40\x5e\x57\x61\xcc\x59\xab\x08\xc3\xb0\x05\x09\x67\x80\x33\xfb\x70\xc3\x76\xe4\xe4\xa5\x6d\x6d\xcb\x26\xb1\x3a\x53\x7f\x4c\x65\xfb\x96\xe5\x7c\xc7\x38\x62\x89\x66\x9f\x57\xb5\x0d\xf0\xb7\xa8\x18\xa0\x98\x43\xc6\x6a\x7d\xd5\xcc\xda\x57\xcd\x32\x01\xce\x97\xb3\x99\x98\x03\x5f\x4f\xda\x6d\xd1\x3d\x2f\x22\xcb\xad\x31\xa0\xfb\xab\x20\xae\x2f\x78\x75\x1c\x99\xee\xa7\x9e\x89\x79\x91\xec\x4c\x37\x05\x3d\x9a\x4f\xad\xc3\x9b\x3c\xa7\x2b\xdb\xb9\xeb\x6d\xc2\x79\x67\x77\x0a\xb4\x7c\x9f\x23\x04\x57\x8d\x86\x55\x93\xd2\x1e\xe6\xea\x4c\xd0\x52\x6c\x4a\xca\xc4\x5c\xc3\x02\xde\xf3\x42\x46\x0a\xad\x49\x2e\x10\x5b\xfe\x4c\xe0\x25\x2f\x28\x4e\x16\xc8\xc8\x6a\x55\x99\x20\x2d\x25\x63\x87\xbd\x6b\xc9\xc7\x32\x26\xf5\xc4\xc5\xe1\xf6\x6b\xc5\xd6\x5b\xd8\xda\xe8\x45\xd4\xc0\x01\x96\x5b\xd9\x2e\xea\x9a\xe8\x35\x6a\xa5\xc2\x0f\xec\xa6\xbd\xa4\xf2\xc9\x5d\x68\x49\x4e\x35\x94\x60\x7e\x71\xf0\x65\xcf\x75\x25\x37\x3c\xd4\xcc\x68\x3a\x76\xa8\x49\x9c\x36\xfa\x4d\x68\x18\xfb\x21\x99\x86\xd3\xc4\x9a\xb4\xb3\x04\xf6\xc6\x5b\xb4\x0b\x6a\xfb\x6a\xe0\x97\xa8\x7d\x26\x7d\xac\xa6\x09\x9b\xeb\xc4\x5e\x24\x22\x83\xad\xaa\x69\xa5\xbd\x9f\xe8\x78\x9c\xff\x44\x0b\x99\x67\xff\x1f\x55\x92\xee\xb1\xda\x03\x9f\x6b\x4e\xa7\xff\x3e\x5e\x09\x76\x43\x24\xcd\xd0\xc4\x37\x6b\xaf\xbb\x2e\xfd\x0a\xf5\x86\xb1\x9a\x48\x61\x48\xb2\x0d\x99\x34\xf9\x36\xca\xe3\xf3\x13\xcd\x6b\x08\x11\x5e\x46\xc9\x0d\xd3\x38\x9b\x87\x74\x98\x94\x96\xed\x4c\x4a\x0d\xeb\xb9\xdc\x11\x3d\x6d\x36\xa9\x55\x9a\x4e\x34\x22\x52\xee\x0f\x91\x30\x26\xc4\xac\x8c\xfa\x2c\x93\xed\x22\x0a\x08\x11\xdd\x80\x10\x34\xed\x1c\x47\x14\xe1\x67\xe6\x56\x9a\xd7\xe2\x1a\x08\x71\x97\xdf\x43\x82\x09\x08\x67\xb0\x08\x6d\x56\xee\x46\xc0\x35\xab\xf4\x67\xdd\x11\xbd\x7d\x6a\x32\x80\xf7\x46\xca\x39\xe0\xd8\x5d\xbb\x33\x46\x01\x55\xf5\xbd\x88\xd9\xa3\xcd\x58\x3e\x16\x45\x90\x62\x13\xca\xc4\x96\x39\x77\xd9\xf4\x0c\x77\x74\x00\xb8\xaf\x6f\xb9\x49\xa6\x1a\xa8\x2d\xa3\xa2\xc8\xe1\x54\xd2\xb3\x69\x61\xe0\xa6\xd9\x91\x52\xd1\x3a\xca\x34\xb7\xb8\xee\xc6\x31\x4f\x47\x49\x69\x9e\x1c\x36\xa8\x01\xee\x0d\x63\xdd\x6c\xba\xed\x47\x7c\xf7\xf0\x8e\xa2\x76\xa1\x63\x63\x6e\x0c\xc4\xf3\xcd\x26\x3b\xfe\x4b\x53\xf3\x63\xb2\x62\x59\xec\xf6\xa8\x07\x47\xce\xc4\x8c\xcc\x53\xa3\xca\x8e\x08\x9a\xea\xa2\x91\x4a\xde\x37\x9a\x19\x81\xaf\x07\x88\x2f\x31\x0b\xba\x4d\xb6\xee\x5f\x87\x99\x14\x7a\xdb\x0e\x9b\x83\x5e\x22\x66\x7b\x08\x89\xb4\x02\x88\x77\x50\x49\x08\xa0\xbc\x83\x4e\x88\xfb\x26\xdf\xf4\x47\x26\x95\x64\x17\x1f\x95\x5a\xba\xca\x5c\x3b\xea\x47\x0f\x2c\x0f\xf6\x4e\xde\xe0\xac\xa4\x4b\xb2\xae\xe4\x1b\x37\xac\x0c\xa1\x33\x31\x63\xf3\x9e\x41\x67\x47\xec\x61\xc4\xc4\x62\x62\x32\xfd\x65\x7d\xed\xbb\x02\x07\x52\x93\x6b\xcf\x11\x53\x02\xeb\x33\x01\x18\x1e\x32\x9a\x18\x0a\x26\x7c\xa3\x08\x2b\xe1\xee\x20\x6c\x27\x3a\x1b\x8a\xc3\xfb\x34\xdd\x70\xdf\x4d\x8b\x58\x43\x27\x92\xce\xcb\x19\x4f\x76\xc6\x7c\x67\x2c\xe8\xcc\x29\x05\x3e\xaa\xda\xbc\x34\x59\x14\x75\x9a\x89\x65\x1f\x8e\x6b\x58\x31\x28\x12\x54\xc6\x7d\x7a\x8f\x1b\x04\xb6\xa7\xaf\x7f\x02\x75\x9c\x8d\xc9\x28\x22\x56\x2d\xf3\x92\x11\x28\x78\x7d\xba\xc9\xa9\xf3\x26\x4f\x45\xf5\xfb\xd4\x03\xfb\x95\x17\x19\xbd\xde\x09\xad\x25\x1d\xfc\xfc\x8f\x89\x4e\x9d\x16\xd0\x5b\x22\x45\x6f\x74\xc7\x67\xe0\x1e\x73\x8e\xa2\x39\x6d\x43\x7a\x4a\x78\xcd\xd9\x82\x54\x39\x1a\xd8\x62\xc5\x49\x30\xa1\xfd\xda\x48\x67\x06\xe3\xab\x18\x3f\x85\xfb\x7c\xf3\xa3\xef\x8d\x1b\xe9\xce\x47\x0b\x61\x61\xff\x84\xc4\x15\x76\xce\xc8\xb9\xc9\x13\xf2\xac\x95\x74\xb9\x35\x37\xeb\xa2\xc1\x79\xf5\x41\x40\x27\x06\xe1\xe4\x3f\x68\xbe\x0e\x10\x4e\x2a\x84\x17\xfa\x21\x5e\x20\xdc\x6c\x0d\xcb\x33\x01\xcf\x28\xc0\x3b\x11\xb2\xed\x2a\xc6\xdb\x16\xb7\xba\xe0\x11\xe2\x66\x70\xb7\x53\x7f\x38\x22\xe4\x4c\xcc\xf5\x3d\x20\x84\x7d\xad\x8b\xf6\x05\x4c\xed\x62\xc1\xec\x7d\x0a\xe1\xe5\x50\x83\x08\x0d\xc9\x45\xbd\x96\x43\x80\xd3\xb5\x21\x70\xea\x63\x34\x44\xa4\xbf\x50\xfc\xd1\x5d\x2a\x56\xda\x5b\x85\xa5\xbd\x55\xfc\x7d\xce\x3e\x9b\x42\x8d\x1b\x5c\x0d\x94\xba\x91\xd7\xc5\x1f\x21\xaa\x0c\x6e\x17\x95\x46\x23\x10\x72\xb6\x86\xf1\x38\xaf\x8a\xda\xa3\x75\x82\xd7\x02\x28\xe6\x58\xc6\x76\xbf\x9c\xe1\x7b\xc0\xfd\x6c\xb6\x58\x20\x5c\x8d\xc7\xf6\x5a\x49\x3f\x86\x7b\x25\xdb\xce\xb4\xda\xc2\x74\xb1\x76\x84\x99\x16\xf5\xe9\x78\x3c\xd2\x57\xf9\xac\x31\xf7\x60\x60\x61\x1b\x8f\x33\x63\xa3\x83\x9f\x19\x14\x59\xd4\x25\x3d\xcb\x45\x91\x60\xde\xeb\x09\xd5\x73\xae\x91\xf0\xce\x5a\xbf\x73\xff\xd1\x68\xfa\x32\xa7\x13\x0a\x8f\x91\x43\x65\xf1\x56\xc3\x9c\x61\x81\x29\x42\x53\xd9\x32\x0a\xe6\x0c\x53\x64\x12\x68\xd3\x2d\xc2\x55\x10\x18\xc0\x65\xa8\x2c\x5c\xf6\xdb\x9d\xf4\x8c\x9e\x8d\x4c\xac\x94\xa0\xe5\x7a\x41\x43\xa7\xf1\x50\x99\xdf\x6c\x98\xd4\xba\x23\xf2\x51\x4f\x5b\xa4\x14\xa9\xa9\x69\x61\xb3\x19\x99\x32\xa6\xe9\xa0\xa0\x1b\x1d\x93\xb1\x62\x2e\x77\x6a\x71\x22\xcc\xad\xd4\xeb\x0a\xc3\x83\xf6\xeb\x76\xfb\x33\x01\x72\xe2\x48\x3b\xe1\xe4\x3c\x1d\x25\xdb\x92\x19\x29\x9a\x2c\xc9\x42\xd6\x02\x2e\x51\x74\x52\x44\x10\x0f\xb7\x1a\x75\x61\xb3\xc9\x79\xf1\x9f\x54\xff\xc0\x23\x1e\x25\xfe\xb6\x8c\x60\x51\x91\x06\xdc\x46\xd9\x84\x69\x84\x05\x14\xc4\x7e\x8e\xc7\x26\x04\xc5\x1f\xc9\x57\xa4\x79\x7d\xcb\x2d\x74\x91\x3e\x95\x19\x0e\x52\x32\xa2\xcd\x26\x8d\x72\x14\x95\xc2\xf7\x00\x93\x34\x15\x5b\x34\x50\x9f\x5f\x70\x67\x05\xdb\xea\xef\x6c\xd5\x96\x21\xbc\x93\x95\x0e\xcd\x0e\xc8\x70\x3b\x43\x24\xb1\x2f\xda\xbb\x9b\xee\x57\x5e\xba\xf2\x2a\x38\x04\xfe\x27\x4d\xa4\x50\xfd\x33\xdd\x6c\xf2\x3f\x77\xcc\x12\xf0\x9d\xa1\x41\xe2\xdc\xf2\xd3\x57\xec\x3d\xe3\x08\xff\xd9\x42\x21\x19\xd0\x9a\x20\x71\x9b\xd6\xb1\x64\x57\x06\xc1\xc2\xf3\xf4\x48\x78\xc4\xa2\x70\xf5\x6d\xc8\x07\x0f\xec\x93\xc2\xc6\x2f\x0b\x08\x5c\xe6\x4a\xf4\x75\x15\x66\x6c\x1e\x02\x34\xa9\xf5\x34\x43\xa3\x78\xa6\xa6\x62\x3e\x59\xd4\x7c\x41\x64\xce\x91\x47\x6a\xd2\x9f\xa3\xa9\x6f\x27\x5c\x52\x1b\x87\x64\x67\xe1\x08\x33\x66\x47\xc9\xad\x28\x28\xce\x65\xc1\xfb\x11\x7e\x44\x88\xf0\x23\x7b\x10\x7e\x40\xb4\x72\x08\x3f\xc2\x6d\x8a\x04\x5e\xec\x0e\xd0\x9e\x84\x1f\x36\xdc\xdb\x00\xa5\x1a\x65\x79\x97\xbb\x29\x6e\x8a\x7b\x9f\x51\x02\xc7\x45\xa7\x04\x87\x57\x0f\xd3\xf8\x72\x0b\x72\x53\x10\xc6\xa9\xd0\x46\x9d\x41\x84\x2e\xd2\x78\xa0\x81\xc6\x32\x8d\x06\xa7\x34\x4f\x97\x61\x47\x67\xa0\x85\x16\x35\xde\x91\x19\x7e\xb8\xde\xfa\xe8\xb6\x13\xdd\x04\xb6\x9b\x66\x7d\xd1\x2c\x04\xbb\x50\x3c\x27\x4f\xb2\xb0\xa4\xd3\x61\x98\x0f\x5c\xc9\x87\x48\xc4\x29\xf3\xe3\x18\x21\xb3\xd5\x15\x75\x80\xed\x08\x4b\x34\x2a\x3a\x22\x4d\x3c\xc5\x93\xc0\x5c\xa7\x3e\x5d\x35\x0d\xb9\x50\x44\x1a\x7b\x12\x62\x90\x5c\xf8\x51\x9c\x2e\x3c\x1c\x62\x04\xd5\x1e\x1e\x4a\xce\x4b\x66\xf7\xb8\x06\xd9\x85\xf3\x8a\x05\x07\x85\x77\x8c\x97\x67\xbd\x83\x9a\x86\xd8\xe7\xba\xf0\x78\x9c\x33\x1b\x60\x38\x01\x34\xac\xf1\x38\xef\x6d\x00\x83\xeb\xa4\x6a\xe1\x07\x7a\x5d\xdf\x90\xea\xe9\x15\x5d\xbc\x03\xf0\xb2\x7a\x72\x7e\x6d\x0d\xee\x56\xc5\x1c\x8f\x53\x4f\x27\x82\x4a\xc1\xe8\x0d\xfd\x96\x48\xda\xc8\x1c\xc5\x93\xa5\x25\x05\x3d\x4b\x3d\xf2\xe6\xee\xc5\x31\x12\x88\x12\x09\x26\x2c\x90\x69\x0c\x5c\x6f\x69\xef\x19\x32\xb8\xa6\x33\x30\xf0\x3d\x9f\x9c\xc1\x75\x6f\x86\x70\xff\x7b\x73\xeb\x9b\x21\x64\xe5\x72\xa9\xb1\xe5\x7b\xa9\x23\x63\x65\x86\x34\x7c\xfe\x5a\x7b\x2b\xe1\xf5\x16\xb3\x89\xa4\x44\x94\xb5\x4d\xf0\xd9\x81\xab\xb1\x0a\x32\x66\x69\xe4\xa5\xf0\x32\xae\xbd\xdf\xb4\x99\x49\x09\x8e\x70\x60\x9f\x99\xff\xa7\x12\xbc\x71\xd4\x48\xed\xe9\x6d\x2f\x0b\x07\x41\xce\x09\x0d\xd8\xa7\x63\x26\xbf\x83\xac\xcb\xb4\x82\xa0\x47\x08\x78\x1c\x2e\x6b\x31\xfc\x2c\x3b\x82\x18\x16\x2d\x81\x0f\x35\x6e\xd5\xf0\x0a\x1c\xae\x1a\x88\xa2\xd4\x79\xb7\x01\x2a\xb9\x35\xba\x3d\x9e\x20\xb5\x0c\x32\x8c\x76\x4f\x0e\xb0\xf2\xee\x00\xe4\xee\x36\x68\xf2\x96\x1f\xd8\xee\x21\xd0\x59\x81\xaf\x53\x02\x6a\xd7\xdb\xa5\x38\x8e\x79\xc1\x93\x3b\x2d\xf2\xc0\x4b\x0d\xff\x79\x00\x0c\x5b\xbc\xd4\xdd\x43\xcf\x24\xe3\xf2\xe0\x07\x91\x1d\x28\x18\x20\xe6\x81\xcd\x4c\xe0\x90\x8f\xa2\x81\x4c\x87\x0f\x27\xb2\xba\xd0\x10\x3d\x4c\xc9\x62\x34\x48\x70\x93\x1a\x5d\x94\x9e\x8b\x1d\x08\xe6\x16\x7f\x75\x52\x2e\x38\xf8\xc3\x07\x32\xfe\xf0\xa8\x35\xfd\xd9\x4a\x0e\x8d\xd2\xf4\xa7\xfb\x6b\x7d\xca\x61\x90\x6c\xb0\xb5\x32\xb3\x47\x1a\xfd\x7e\xc8\x9a\x61\xcd\xab\xbb\x21\xb9\x21\xac\x22\x17\x15\x1d\xde\x5e\x51\x3e\x5c\xac\x1b\x59\x5f\x9b\x3d\x07\x9b\x76\xb8\xa4\x44\xae\x05\x1d\x2e\x2b\x72\xa9\xab\x65\x5b\xc0\x3b\x93\x81\xd6\xde\xc8\x7f\x08\x94\xd2\xb5\x74\x2b\xeb\xe4\xe7\xa2\x06\x51\x52\x67\xf4\xa7\xaa\x0e\xc2\xe1\xc9\x45\xed\xc9\x25\x0b\x31\x69\x18\xbf\x5c\x57\x44\xb0\xbf\x19\x10\x4d\x40\x21\xad\xe4\x9e\xfc\x03\xd7\x54\x92\xde\xec\x03\x20\x0f\x66\x26\x45\xf0\x79\x00\xcc\xdd\x7d\x68\x80\xb1\xd5\x94\x98\x17\x57\xa4\x79\x4a\xaa\x85\x76\xf4\x35\x41\x07\x2e\xe7\xc0\x8a\x28\xd9\xcb\x27\x04\x0d\xbb\x35\x2d\xa6\x9e\xd9\x5e\xc2\x57\xed\xa6\x68\xfb\xc9\x01\x49\x0c\x82\x2f\x4b\x89\x5b\x23\x6f\x6e\x4b\x7e\x96\xb5\x54\x2e\xec\x0b\xf3\x5c\x63\x3f\x75\x66\x0f\xf6\x7a\xeb\x8b\x3e\x75\xb7\xa6\x1f\xe8\xba\x5d\xbe\xc7\x61\x61\xe7\x3a\x9e\x98\x1b\x98\x1a\x13\xdc\xe0\x35\x64\xb5\x1f\xd8\xfb\x48\x2a\x09\xce\xeb\xc2\x09\x54\xc8\xc5\x2f\xd4\x76\x25\x37\x9b\x7c\x5d\xc8\x00\x5c\x5e\x7b\x72\xab\x7d\x41\x95\x1c\x70\x96\x8b\x62\xad\x73\xfc\x70\x1f\x78\x91\x37\x45\x4e\x8a\x35\xb2\x0d\x8f\xc7\x24\x16\xda\xd0\x66\xd3\xa0\x69\x2e\x74\x96\x7d\x5e\x8c\x4e\x13\xf3\x5f\x88\x1e\xe2\xe5\x6d\x20\xe5\x77\xf4\xae\xcf\xa6\xe8\xbe\x54\x8d\x79\xbb\xc5\xa6\x02\xe3\xe5\x01\x35\x18\x2f\x5d\x15\x90\x07\x76\x55\x39\xd7\x0c\x20\x0f\xf6\xe4\x5a\xe6\xae\x35\x77\xc4\xa8\x37\xae\x55\x33\x2b\xfb\xc7\x62\x0a\xba\x8a\x1c\xac\x0a\xfb\x6a\xa9\x52\xda\x9c\xda\xc8\x04\x60\xb4\x7a\xe8\x00\xa3\xe9\x64\x57\x5a\xc4\xef\x28\xa6\x93\x67\x74\x25\xe8\x42\xbd\x7a\x7e\x43\xb9\xa4\x65\xf1\x83\x7a\x1c\xdb\xbf\xdf\xab\x47\xc6\x6c\xaa\xeb\xbe\xf7\x0f\x34\xab\x2d\x1e\x63\x3a\x09\x5b\x7f\x46\xe3\x07\x16\x29\xe9\x85\x7f\xae\xc4\xe5\x37\x21\x18\xf1\x1f\xe0\x5d\x5d\x6b\xd5\xb0\x28\xd5\x4f\xeb\xb8\x5a\xbc\x08\x7e\x84\x1d\xbd\x84\x52\x80\xed\x4b\x24\xa6\x93\xf3\x0b\xc6\xcb\xe2\x6f\xea\xaf\xcb\x35\x11\x65\xf1\xa3\xfa\xb3\x86\x51\xbe\x6c\x1e\x57\xec\x86\x16\x4f\xb0\x52\xa3\xa9\x58\xd0\x97\x65\xc1\x31\x9d\x94\x6c\xb9\x4c\x25\xed\xf3\x67\x17\xf5\x76\x09\x7b\x84\x61\x56\xbc\x22\xf2\x6a\x72\xcd\x38\x38\xdd\xe0\x5a\x13\x3f\x29\x4e\x1e\x91\xaf\xd9\x23\x72\x74\x84\xd8\x32\xa7\x33\x32\x1f\x15\x85\x9c\x91\x39\xba\xaf\x0b\x32\xb8\x10\x94\xbc\xdb\xda\x7d\x39\x1e\x73\xed\x06\xa9\xf6\xad\x8d\x5c\x39\xc1\xeb\x02\xc2\x6b\xad\xa4\xe8\x87\x52\x15\xec\xb8\xc6\x8b\xe2\xf4\xd1\xe2\xeb\x82\x3d\x5a\xd8\x4e\xc4\xf1\x42\x77\xc3\x8f\x17\x73\x74\x5f\x15\x8b\xe3\x53\xd3\x55\x53\xf0\xe3\xea\xb8\xc6\xeb\x42\xa8\xff\x8d\xbc\x70\xbf\x64\xa2\x91\x5a\x23\x78\xc9\x4b\xfa\x7e\x5a\x63\x52\x96\xb4\x7c\x5a\xaf\xb9\x9c\x36\x58\x67\xc9\x33\x3f\xd7\xdb\x2d\xb6\x46\x54\x98\xa9\xb7\xf5\x37\xa4\xb9\x2a\x5e\xba\xa7\xea\xe7\xdb\xba\x2f\xf3\xa3\x8f\x73\xb5\x60\xa1\xdf\x6b\x8c\x13\xb8\x2c\x09\xf3\x1d\xd2\x54\x6a\x43\xe1\x27\xc0\x8a\x8c\xd7\xe4\x1d\x35\x7e\x6e\x33\x31\xb7\x16\x22\x9e\x48\x08\x6d\x0d\xcb\x43\xa7\x90\x67\x98\x14\xd9\xe7\x60\xe9\xf2\xf2\xe1\xe7\xd9\x91\x18\x64\x17\xa4\x01\x95\x4c\xaf\x88\xab\xfa\xac\x5e\x80\xb9\xc9\xd7\xcc\xc0\x2c\x03\x46\x70\xc9\x64\x45\xa7\x35\x2e\xa9\x24\xac\x9a\xf2\x19\x9b\x63\xad\x1d\x4e\xef\x57\x35\x68\x8e\x53\xb2\xdd\x22\x48\xca\x25\xd5\x44\x02\x69\xb6\xa0\xa9\xbf\xc1\xa1\xab\xec\x53\x63\x1f\x28\x2e\x31\xf5\x3e\x25\xfe\xb4\xad\x71\x0b\xfd\xbf\x78\xe6\x9e\x78\xdb\x6e\x8f\x43\xc9\x4f\x06\x07\x77\x8b\xe3\x1c\x71\x2f\x44\x7d\xad\x54\x8c\x54\x1d\xa5\x88\x55\xb6\x52\x43\x65\xd4\xc9\x25\x35\xa8\xdb\x51\xcd\x45\x41\x3b\x85\x7f\xaf\x31\xcf\x58\xcd\x13\x15\x96\x89\x0a\x3f\xd0\x26\xd9\x78\x99\x28\x6b\xf2\xcc\x74\x0b\x5f\xe9\xc2\x8a\x53\xb6\x52\x97\xc0\xe7\xae\xe5\x80\x4e\xd6\xab\x4b\x41\x4a\xf5\xde\xb2\xbf\xe2\x5f\x68\xaf\x28\x99\x9d\x9f\x53\xa5\xef\xad\x2b\x6f\x0b\x1e\x9d\xe8\xab\x0f\x5d\x38\xb6\xa8\x82\x81\xec\x73\x48\x6d\x9a\xe1\x59\x46\xdf\xaf\x6a\x21\x9b\x0c\x27\x0a\x39\xb3\xeb\xbc\x6d\x84\xca\xd6\x0d\x1d\x36\x52\xb0\x85\xcc\x06\x0f\x1d\x59\xff\xa7\xd8\xab\x7e\x7c\xef\xc5\xee\xe9\xe8\xa4\xef\x30\xd2\xec\x76\xbb\xab\xc5\x2e\xc1\x1e\xdc\x78\xb7\xea\xce\x9e\x76\x12\xd7\xc1\x9d\xee\x6c\xe5\xf0\xfe\x43\xfa\xfb\xb0\xbe\xc3\x16\x0e\xef\x37\xdc\x81\x1f\xd6\x6f\xd8\xc2\xe1\xfd\x06\x7b\xf3\xc3\xba\x0d\x1a\xd8\xd9\x6b\x82\xaf\x1d\xdc\x61\xa2\xee\x36\xbd\x4f\x55\x41\x22\x6b\xd1\x7c\xbe\xa8\xaf\x57\x35\xa7\x5c\xee\xda\xb1\xbe\xf8\x5a\xb2\x4a\x55\xaa\x2a\xb2\x6a\xe8\x31\x48\x65\x3b\x0a\xba\x07\xed\x1d\x8e\x45\x6b\x8f\x07\xf7\x25\x69\x2b\x34\xd8\x9f\xdb\x79\x48\x1d\xba\xe1\x36\xa7\x68\xb3\x89\x79\x08\x5b\xe6\x99\xcb\xd1\xea\xef\x53\xdf\xdc\x5d\x5f\xd4\xd5\x66\x33\xca\xf5\x5f\x13\x26\x29\x8c\x71\xc8\xf8\x50\xaf\x8b\x6a\xd9\x34\x6d\xb0\x98\x20\xfb\xf8\xe8\x04\x72\xdf\xe0\xda\x86\xb5\x48\x71\xe7\x4e\x6b\x82\x9b\x82\xce\x5a\x4d\xce\x73\xf4\x68\x94\x73\xa5\x52\x34\x13\x4e\xdf\xcb\x1c\xa1\x49\x59\x73\x48\x4e\x6f\x92\x91\x93\x09\x70\x2e\x84\x47\x72\xb3\xb1\x79\xfd\x95\x80\x83\x1e\xa9\x2e\xd1\xa3\xad\x86\xdf\x5a\xa3\x7b\xc8\x93\x53\x17\xeb\xed\x92\x71\x52\x55\x77\xf7\x6a\x00\xdc\x46\x89\x37\x13\x3d\xe4\xcd\xc6\xfe\x95\x23\x57\x12\xdc\xed\xb5\xa1\xb1\xde\xfa\xec\xe7\x30\x53\x9b\x4d\x6d\xfe\x6f\x5b\x4e\xe0\x2c\x04\x2c\x76\x6d\x92\xb4\x42\x02\x91\x92\x5e\xaf\xe4\x50\xd6\x43\xb0\x96\xae\x17\x60\x26\xe1\x35\x3f\x86\x4f\xbf\xa8\xe8\x50\xdf\xc3\x2c\xe8\xe4\xbf\xf8\x4b\x3e\xac\x45\x49\x85\x01\x7d\xb3\x45\x30\x54\x20\x6a\x2d\x87\x5a\x6e\x6d\x86\xd7\xeb\x46\x0e\xaf\xc8\x0d\x1d\x92\x61\x62\x36\x87\xd7\xb0\x85\x26\x19\xda\x46\xd7\xc0\x49\x3c\xfc\x9d\x24\x43\x20\x71\x6d\x4c\x35\x6d\x9a\x19\xc5\x34\x33\x1e\xef\xa4\x98\xe8\x5a\x7c\x29\xea\x6b\xd7\x43\x1d\xf7\x73\xf8\xe4\x36\x2b\x41\x49\xf9\xf7\x9b\xd7\xda\xc3\x8a\xea\xb9\x69\x63\x9e\xd0\x60\x3a\x3d\xba\x78\xe7\x2a\x5a\xd6\x6f\xa0\xa2\xbe\x84\xa6\xc8\x44\xab\xfd\x16\x1f\x9f\x5a\xdb\x6d\x66\x8c\x81\x5a\x22\x8d\x6e\xff\x0c\x4e\x4c\xf0\x04\xb4\x43\x84\xb3\x57\x64\x05\x15\x36\x9b\xec\x0d\xd5\x75\xcf\xa2\xf9\x9f\x66\x8f\xed\xf5\xa9\x29\xf8\xf9\xff\xcd\xcf\xa6\x3f\xb2\xcd\x4b\xc4\x65\x7e\x36\xfd\xed\xe6\xf4\xab\xcd\x97\x5f\xa0\xfc\x6c\xfa\xb4\x22\xd7\x2b\x5a\x22\xdd\xc2\xbf\x7c\x3e\x81\x3b\x13\x81\xce\xf4\xb7\x19\x97\xc5\xc0\xa2\xa6\x9f\xdf\xe7\x7a\xfb\xc9\xcd\x46\xfe\xce\x61\x8d\x81\xcd\xcc\xfd\x1a\xc4\xb8\x8a\x01\x7c\x35\x7a\x24\xbe\x96\x60\x23\xe4\x60\xcf\x9d\x89\xb9\xcf\x7d\xfb\x60\xc1\x87\x4e\x2a\x72\x57\xaf\xc1\xa6\x47\x2e\x8d\xb1\xca\x09\xfe\x4f\x18\x04\x05\x36\x6a\x2e\x2b\xd2\x34\xea\x7d\xea\x59\xf4\x23\x6c\xc0\xf2\x3d\xad\xbb\xe5\x27\x58\x4c\x1c\x87\xff\x13\x93\x57\xdf\x13\x41\xae\x1b\x14\x1b\xac\xfd\x7d\x6b\xfb\xea\xfb\x77\x5f\xda\x1c\xc4\xa3\x22\xb8\xe6\xfe\x72\x7e\x16\xfe\x98\xce\xc0\xd4\x9c\x9f\x40\x12\x76\x90\xdf\x50\xae\xd8\x65\xdb\xc3\x21\xb8\x9d\xb4\x5f\x95\x21\x07\xb7\xd9\x9d\x86\x41\x6a\x6a\x62\x76\x51\xa3\xb3\xda\x46\x56\x4e\x4d\xb2\x52\x52\xb0\xd9\xc9\xfc\x2c\xcb\xec\x6d\xbb\xc0\xd9\x34\x43\xf6\x97\x7a\x89\xa6\xc2\x3b\x9a\x74\xfa\x70\x09\x81\xb5\x3d\xb7\x65\xef\x45\x98\xc3\x25\x5d\x30\xeb\x8d\xb9\xe0\xfd\xf5\x4d\x78\x87\x8c\xc2\x09\xef\xbc\x1c\xa4\xe8\xee\xa0\x09\x77\x48\x5c\xfd\xd3\xae\x5d\xc4\xd4\xa3\x68\xf6\x3b\x1d\x1e\x34\xfb\x6e\x8b\x57\xfe\x60\xe9\xce\xfe\x0f\xf4\xaf\x6b\x26\x68\xd9\x5d\x05\x7b\x5f\x1e\xcf\x61\xe4\xe9\xa0\x18\xf9\x30\x7c\x62\xe6\x2d\x78\x34\xa3\xf3\x01\x9f\xac\x95\xf6\xb6\x94\xc6\xd5\x83\x63\x96\xd7\x61\xa4\x61\x58\xba\xe0\x58\x28\x2e\x80\xb6\xe1\x06\x5e\x03\xf9\x2c\x8a\x2a\x58\xaf\x26\x43\x83\x68\xc7\x2f\x06\x1a\x37\xb6\x4a\x2e\x6a\x72\xe5\x96\x50\xa5\x54\x55\x12\x1b\x2f\xb9\xbb\x4a\x83\x80\xf3\x90\xb9\x0c\xbc\xcf\x78\x2e\xf1\x29\x9a\x9d\x78\x28\xb1\xf0\x8c\x31\x0c\x4f\x68\xc0\x76\xf3\x13\x06\x62\x5f\x5d\x0d\x1c\x83\x4c\x7a\x96\x76\x7c\x73\x64\x08\x23\xe9\x12\xb6\xea\xf8\x44\xc5\xae\xfd\xb6\xf1\x6c\xbb\xe3\x09\x58\xc8\x9e\x11\x9b\xa1\xa8\x01\x6f\x77\x4b\xe9\x5a\x9a\xb6\xea\xf2\xe7\xb0\x16\xc7\x4b\x46\xab\xf2\xb8\xa4\xcd\x42\xb0\x95\x92\xb1\x03\xd9\x7d\x1e\x7b\x24\xa6\x45\x6d\x19\x10\xb7\x4c\xb9\x1e\x5a\xb1\x27\x6b\xe0\x8f\xf6\x0b\x27\x40\x9c\xa5\xfc\x37\x8d\x80\xb0\x9d\xa6\xe2\x50\xc7\xe3\x1d\xdd\xc5\xae\x3f\x45\xe1\x9e\x8f\xec\xdf\x7e\x12\xcf\xec\xd8\xa6\xae\x43\xc5\xac\xfc\x21\x2d\xfe\xa9\x4f\xfc\xf2\xfa\x44\x67\xe2\x1c\x5a\xd9\x60\xa7\x14\xc9\x3f\x5c\x8a\xfc\x00\xf9\x11\xc6\x92\x10\x21\x93\x92\x3c\x14\xfe\xf9\xc2\x64\xfc\xa5\x9d\xf9\xfa\x07\xd3\xbb\xf8\xa7\x96\x80\x63\x0d\x4f\x5b\xc5\xd5\x8e\xfe\x12\x61\x56\xf0\xd9\xc9\x1c\xd7\x05\x9f\x9d\xce\x31\x29\xf8\xec\x0b\x57\xf1\x4b\xb8\xbb\xb6\x48\xe7\x59\xed\x48\x43\xe6\xcc\x5c\x15\x8e\x8a\x82\x29\xce\xd6\x22\xc5\x7a\x3c\xce\xa3\xf2\xc4\x97\x27\xe3\x71\xe6\x2d\x31\x19\xe3\x43\xf5\x24\x94\x20\xe0\x59\x00\x5e\x4a\xd0\x87\xc8\xf0\xac\x79\xa1\x58\xfb\x33\xc7\xd9\x0b\x06\x4f\x83\x07\x09\x9e\xca\x3a\xca\xac\xbe\x90\x50\xd3\x15\x1d\x9a\xa7\xf1\xe4\x74\xf9\xb0\x1c\x8f\x33\xb7\xeb\xd4\x27\xc9\xf1\x78\x24\x27\xe7\xe7\xac\x79\x6a\xfc\x76\x9f\xd9\xb3\x49\x31\xca\x83\x0e\xaf\xb6\xcd\xe8\xb0\xb3\xea\x03\x66\xcf\x88\x5b\xd1\x14\x25\x3e\x32\xe6\x07\x30\xa8\x16\xdb\xd0\x0f\xf3\xc3\x3e\xcf\x5b\xba\x0e\xb2\xa0\xed\x3b\xca\x3f\xb2\x41\x9c\xa6\xd4\x86\x9d\xc9\x04\xc3\x2b\xc1\x8f\xe2\xb2\xac\x24\xe1\x90\x84\x51\xce\xd1\x59\xcb\xb7\x9a\xa3\x69\x2a\xe4\xae\x3b\x80\x28\x03\x94\xcb\xf9\xe4\x93\x3d\x25\x06\x30\x6c\xf5\x25\xac\xe6\x30\xe3\x73\x04\xa9\xf3\xe9\x2e\x89\xf4\xc0\xc9\xda\x3f\x56\x8d\x41\x2e\x3d\xf8\xb8\x1f\x2b\xef\xca\x90\x3b\x5b\xe6\xfd\xb3\xd0\xb7\x0c\xed\x59\xe0\x6e\x16\x84\x9e\x85\x2e\xad\x7f\x0e\x47\x08\x2d\x8f\x1b\x9a\x30\x12\x7f\xcc\xcd\x3b\xd0\xdf\x69\x85\xa1\x1e\xbf\x22\x74\x9f\x77\xc5\x8b\xdc\x9f\x7b\x8a\x81\x21\x94\x3c\x46\x9f\x12\xce\x6b\x09\xe9\x94\x87\xc4\xb8\x78\x91\x66\x48\xdc\x7c\x67\x68\x8b\x1c\xd0\xa8\x46\x4e\xd0\xb8\x55\x3e\x56\x52\xfb\xe8\x25\x02\x0c\x54\x5f\xaa\x8a\x22\xa4\xc0\x89\x5d\xd5\xef\x24\x86\xd1\x69\x2f\x16\xf4\x0d\x4d\xfb\xfe\x41\xa1\x8a\x35\x12\x72\x0c\x43\x64\x3e\xfb\x1b\x2d\x4e\xe2\xb6\x49\xd9\x93\xe5\x71\xb3\x31\x3e\x77\x6b\x56\x3a\xff\xc3\x76\xc7\x36\xb6\x5f\x75\xe3\x70\x09\x46\x45\xa1\x4e\x61\xa5\x1a\xab\xc3\xd8\xfa\x5a\x41\xef\xcc\xc6\xfc\xe9\xf1\xc5\x63\xd1\x5e\xe9\x1f\x6b\x38\x6a\x49\x21\xe5\xa8\x22\xcb\x7b\xe3\xf1\xae\x7e\x18\x8c\x08\x36\x01\x42\x7c\xbd\x0c\x9d\x57\x7f\x77\x7c\x3a\x1e\xb3\x49\xb3\x02\xa9\xb0\xc6\xd6\x31\xc7\x0c\xde\x6c\x9a\xd1\xc9\xd6\xfa\x3e\xc5\x5f\x60\xa2\x8b\x12\x2b\xeb\x52\x13\xa9\x96\xe2\x4a\x57\x24\xe6\x0c\x6c\x99\x47\xa5\x91\xed\xcb\xd0\x76\x7b\x22\x22\x40\x88\xd6\x8c\xcc\xe4\x3c\xee\xcc\x78\x0b\x74\x3a\x1c\x85\x1d\x86\xbe\x9b\x76\x2e\xbf\x28\x8a\x0e\xf7\x40\x3b\xdc\x15\x75\x70\x49\xee\xf9\xc7\xe9\x1c\x4b\x00\xc2\x89\x32\x78\x18\x56\x16\xa6\x53\xa0\xb9\x54\xfc\x74\x1b\x0f\x5c\xb6\xbd\x25\x62\x7f\x1f\x35\x4c\x6b\xf4\x69\xed\x9e\x7a\x75\xd7\x05\x3f\xe3\xf4\x36\x37\x84\x19\x1c\xd7\x5e\xc4\x84\x18\x6d\x7a\xd8\x26\x0b\x0a\x21\xda\x9a\xfd\xd4\x8a\x78\x3e\x0a\xdb\x13\x4a\x98\xcf\x83\x14\x5e\x40\x6c\x6e\x35\xb0\x22\x97\x6d\x1e\x8a\x25\x32\xc1\x61\x05\xe5\x25\x15\xc7\xd7\x75\x09\xf7\x76\xcd\xe7\xfe\xaf\x92\x95\xc7\x8c\x37\x54\xc8\x9f\xa3\xde\x7f\xb0\xde\xfb\xa9\x6e\x44\x3e\x54\x41\x14\x5e\x41\xe4\x1f\xae\x20\xf2\xae\x82\xc8\xf7\x29\x88\xdc\x2b\x88\xfc\x40\x05\x91\x3f\x5c\x41\xe4\x28\xfe\xd2\xed\x87\xde\x1c\xfd\x2a\xd4\x43\xf1\x2b\xbc\x20\xb1\xfb\x30\xb8\xca\xb0\x8e\x56\xe7\x0d\x95\xaf\xcc\xce\x33\x6e\x7c\x89\x68\xe9\xfb\x05\x59\x91\x0b\x56\x31\xc9\x68\x63\xe0\xaa\xcf\xaf\xe3\x6a\x4f\x83\x22\x79\xf6\xe5\xe4\xf4\xcb\x0c\xdf\x97\xac\x51\xd3\xfb\x78\x2d\x6b\xc8\x7c\xc8\xf8\xa5\x1e\x94\xe6\x4a\xb6\xe7\x50\x04\xde\x62\x58\xae\xaa\xea\xbe\x8c\x0c\xfd\x32\xe7\x93\x55\xdd\x80\x17\x3c\xa9\xd0\xa3\xfc\x04\xc3\x3d\x44\x2e\x30\x33\x9b\xe0\x14\x61\x0e\x54\x5d\xa2\x2d\xd6\xc1\xf3\xe9\x1e\x4d\xf8\x4b\xf2\xe5\x36\x0c\x75\xfe\x05\x65\x31\x7d\x23\x62\x97\x8e\x3f\x9c\x85\xea\x0f\xfe\x27\x0b\xfd\x27\x0b\xfd\x27\x0b\xfd\x9f\xc5\x42\x4d\x8f\xb4\xa2\x8a\xa8\x74\xf0\xed\x4e\xb6\x0a\xa8\xa8\xa6\x78\x21\xfb\x79\x25\x0d\xc1\x87\x4d\x79\xa5\xc4\xe4\x22\xcd\x8a\x79\xc8\x8a\x85\x63\xc5\xff\xed\xd8\xed\x2d\xab\xaa\x63\xf3\x55\xff\x64\xb8\xff\x64\xb8\xff\x64\xb8\xff\x64\xb8\x1f\x85\xe1\xee\x14\x4e\x3f\x0e\x37\xfe\x35\x32\xdc\xcb\x8a\x5d\x5f\x53\x11\x78\xea\xba\xcb\x83\x0b\xd2\xd0\x63\xf7\xfc\xf8\x5a\x2f\x64\xeb\x06\x62\x47\x7d\xf7\xe8\x60\xe6\xfc\x0f\x10\xe7\x2a\xac\x6a\x64\x99\xd2\x78\x2c\x73\xda\x09\x20\x53\x1f\x03\xf1\x63\x1f\xe5\x8a\x09\xcb\x54\x92\xb9\xc0\x6e\xcd\x72\xf9\xcb\x10\x13\x43\xb8\xed\x68\xad\xed\x61\x67\x7d\x1f\x2a\x1d\xc2\x0f\x8e\xfd\xcc\xc3\x15\x52\xbf\xed\x8a\xc0\x34\x4c\xe9\x4c\xce\x0b\xa1\xf3\xe3\xe0\x2c\x64\x30\x19\x4c\xac\x09\xf9\xf7\xae\x4a\x39\xd3\x79\x59\x4c\xe4\xa3\xe6\x20\x19\xd6\x7d\xf7\xc4\xe1\xa8\x36\x72\x38\x97\xb7\xdb\x39\xc2\xaa\x8d\xa8\xfa\x53\x47\xc1\x9d\x76\x82\x50\x79\xd5\x12\xcd\xa5\xc1\x24\xf4\xbb\xdd\x04\x24\x5e\x52\xf9\xb4\xe6\x92\xbe\x4f\xb4\xe2\x5d\x56\x60\x00\x6c\xdb\xbe\x0f\x3c\x68\x7b\x1d\xbc\x23\xeb\x5b\xae\x36\xf0\xce\x32\x86\x07\xaa\x95\x68\x1e\xec\x57\xff\xeb\xdc\xbc\x60\xc5\xf8\x39\x97\xbd\x74\xf2\xf8\x87\xdf\xbf\x39\x7f\xf3\xfc\xad\x8d\xdc\x0e\x9e\x30\x73\x6b\x90\xbe\x4f\xf2\x66\x14\x5c\x63\xf2\xe8\x17\xba\x5c\x22\x76\x9c\x79\x5d\x64\x44\x5c\x36\x19\x62\x3c\xd7\x77\x20\xa8\x67\xab\xaa\x01\x9a\xcf\x27\x0f\xda\xaa\x6c\x56\xcf\x0b\xa2\x0d\xde\xaa\xaf\x82\x63\xb8\x8f\xb5\x58\x43\x66\x58\x02\x6d\xdd\x3c\xb8\xd0\xf5\x82\xaa\x21\x9a\x4d\x17\xa0\x7c\x76\xb6\x8a\xd2\x57\xcc\x86\x82\x7b\x5e\x55\x08\x92\xe0\x24\xc3\x55\xc0\x03\x30\x2c\x87\x2c\x82\x62\xbb\x0d\xda\x17\xee\x1c\x37\x41\x4b\x14\x62\x30\xf2\x9c\x05\x2c\xbf\x46\x98\xc0\x33\x4c\x5c\xc8\xb0\x25\x9d\xfa\xd0\xed\x1c\xed\xbb\x4f\xe7\xbf\x10\x7c\x51\x41\xa3\x29\x0a\xe5\x3f\x7b\x95\x74\x0e\x29\x02\x20\x93\x04\x5c\x57\x07\x9f\x20\xd6\x5c\x32\xc0\x3c\x09\x1b\x19\xb4\xda\x94\xc6\xdb\xea\x43\x9a\xa3\xe5\x20\x1e\xaf\x38\x74\x2e\xb5\x5b\xc4\xcf\x10\x5d\xfa\x44\x9f\x0f\xe6\x9c\x1f\xcf\xf1\xc4\xac\x52\x28\x90\x38\x92\x4d\x22\x3c\xfe\x77\x70\xb3\xfc\x24\xec\x32\xf4\xfe\xfa\xf5\x1e\x5e\x71\xb4\x8c\x17\x3b\x14\x67\x4f\x58\x21\x7e\xa0\xcb\x8a\x2e\xe4\x78\x6c\xfe\x98\x5c\x52\x79\x16\xfc\x3d\x6d\x9f\xe7\xfa\xcb\x62\x5a\x55\x33\xf1\x68\x74\x10\xe4\xa3\x2a\xef\x5c\xd8\x72\x5a\x54\x4a\x9a\x7a\x84\x1e\x05\xe6\x13\x2c\x91\x06\x3f\x37\xd7\x09\xa6\x5d\x8d\x3c\x67\x5b\xf3\xae\x3b\x39\x0f\xf2\xe1\x03\x12\xcf\x19\xfc\xab\xfb\x13\x68\xca\xb4\x0b\xea\x56\xd1\x88\xfa\x86\xcd\x26\x24\x15\x12\x7a\xe4\xe6\xc4\xf6\xd6\x50\xf9\xbd\xfd\x90\xd7\xcb\xb6\xb9\xc5\x5d\xbb\x7a\x14\x40\x89\xa9\xee\x20\x68\xbb\xf1\x7e\x6f\xc1\x79\xd1\xe3\xb9\x6b\x26\x7d\xb3\x19\xd9\xe9\x77\x1b\xc2\xdf\xdb\xb3\x65\xde\x79\x3b\x69\xae\xc8\x75\x54\x24\xb1\xcd\x20\xa9\xac\x2d\xa4\x7d\x7b\xcd\x47\x3c\x23\x92\xf6\x5a\x80\x3a\x9d\xe5\xaa\x38\x9e\xcd\x23\x80\x4c\xc0\xb9\x1c\x9d\x18\x57\x5e\xea\xf1\x5c\xb6\xea\x70\xeb\xea\x21\x06\x71\x05\x16\xdf\xe4\x89\xd1\x4b\x6d\x80\xba\x43\x56\x30\x10\x45\x77\x10\xdc\x03\x5f\x62\x9b\x3d\x46\x14\xdc\x78\x13\x81\xf8\xe0\x91\x31\xed\x00\xd6\x4e\xae\x08\x60\x88\x22\xfc\x19\xb9\xd9\x58\x6f\xcb\x51\x51\x68\xa4\x3f\x3f\x97\x6e\xcf\xc8\xb3\x96\x79\x2f\xcc\x2d\xe7\xb8\x8b\xcb\x95\x62\x58\x8c\xea\x7c\x78\x45\x1a\xfe\x99\x1c\x5e\x50\xca\x87\x80\x13\x45\x2a\xd6\xd0\x72\x78\x3c\x6c\xd6\x2b\x2a\x72\x14\x95\x50\x4b\x40\x83\xac\x92\x60\x5c\x9c\x4a\x3f\xfc\x30\x20\xa4\x4a\x93\xee\x99\xdf\x3e\xc1\xd3\x24\x7f\xf6\xd4\xec\xa0\x58\xe3\x5a\x00\x69\xaa\xfe\xd1\x21\x1c\xe6\x90\x76\x47\xdb\x4e\xd3\x0d\xb5\x0b\xaa\x04\x42\xc0\xae\xf9\x96\x2d\xe9\xe2\x6e\x51\xd1\xa7\xa4\xaa\x2e\xc8\xe2\x5d\x33\x1d\x9d\x1a\x7b\xcb\x37\x75\xfd\x6e\x3a\x3a\xdd\x22\xbc\x7c\x88\x2c\x60\x8e\x54\x5c\x3e\xa4\x92\xa0\x97\xac\x91\x54\x3c\x73\x43\xc4\xb1\x57\x4b\x57\x08\x4f\x11\x85\xe3\x6a\x32\x7d\xc4\xbc\x51\x0b\x3c\xa4\xef\x57\x82\x36\x8d\x5a\x3c\xb0\x08\x52\x26\xaf\xa8\x18\x5e\x50\x40\xa7\x1b\xd6\x22\x3a\x73\x06\xb4\x17\xa8\x14\x40\xfd\xbc\x4c\x79\x1f\x6c\x99\xa9\x91\x04\x68\x28\x78\xb7\x85\xf2\xed\x16\x61\x39\x1e\x6b\xf6\xb7\x45\xf9\x15\xa6\xc6\xe5\x0d\x0b\xbc\xc6\x8b\xa2\xc9\xaf\x82\xd0\xa3\xab\xc0\xb5\x4c\xef\xa3\x2b\x84\x17\xe9\x0d\xe7\x90\xd1\x8a\xab\x00\x5b\x68\xbf\x8a\x1c\x24\x81\xa9\xf2\xab\x30\x3c\xa9\x5b\xd9\xf0\x09\x8b\xed\x8f\x69\x70\x08\x94\xb9\x88\xd8\x93\x08\xf3\x01\x40\xa6\x31\x2c\x9c\x64\x6f\x48\x66\xc7\xb8\xd0\x3d\x10\x3e\x08\xf2\xac\x0d\xfe\xb3\x86\x67\x78\x8d\xf0\xd5\xb6\x15\x60\x15\x23\xa8\xb6\xf0\x53\xf1\xc2\xe4\x33\x5d\x41\x1c\x90\x95\xd6\x56\x87\x8a\xac\x46\x35\xff\x64\x72\xbf\x1d\x76\x4a\xca\xb7\xef\x06\x41\x31\xb9\x67\xe0\xa9\x78\xfe\x0f\x91\xc8\x3f\xc4\x82\x98\x30\x44\x7c\x2c\xb3\xb7\xb0\x8f\x07\xde\x00\xfe\xb4\xc5\x0f\x93\x80\xf2\x60\x4e\xb2\x95\x81\xaf\xda\x04\xda\xac\xe0\x01\x41\xb0\x70\x5e\x2f\xaa\x7a\xf1\xee\xb8\xa9\x6a\x19\x40\x25\x34\x9f\xfb\xc7\xf1\x04\x87\xc5\x25\xbd\x5e\x55\x44\xd2\xde\x8a\x51\xe9\x6b\xf6\x9e\xf1\xe6\x73\xf8\xd1\x7a\x15\x54\xbf\x03\x3f\x71\xa8\xde\x99\x6f\xcc\x3f\xc9\x8c\xdb\x64\x2f\x6e\x8e\x27\xf4\xbd\xa4\xbc\xcc\xef\x75\xf8\xda\xd4\xcd\x29\x36\x61\x76\xd3\x2c\xc3\xe7\x5c\xfd\xd1\xc6\xfa\xd6\xc8\x5f\x89\x04\x04\x60\x99\x00\xc4\x2f\x35\xf7\xac\x7c\x09\x1e\x6f\xcf\xcd\x15\x42\xc7\x01\x50\x5b\x16\xb5\x9b\x1d\xa7\x44\xd0\x46\xbe\x5e\x2a\xc6\x9f\x3b\xea\x00\x29\x67\x24\x75\xfa\x57\x7d\xda\xd0\xd2\x00\x9c\xc1\x3d\x99\x4f\x00\x7b\x4e\x16\x12\xa8\xf9\x4d\x65\x80\x4a\x4d\x11\x0c\xd3\x10\x24\xf7\x05\x4b\xa7\x9a\x7d\x49\xcb\x90\x33\xba\x3c\xc9\xdd\x01\xf1\x68\x40\xcc\x82\x22\xfb\xe6\xce\x61\x4d\xdf\x00\x45\x30\x9b\x03\xcd\x43\x66\x32\x9c\xc1\x60\x32\xe4\x90\xfa\xd4\xcf\x41\xbb\x19\xd6\xbc\x25\xe2\x92\x4a\xd5\xd0\x4f\xaa\x45\x30\xbd\xd4\xc8\xe4\x81\x8a\x1b\x04\xea\xd2\x7e\xed\x19\x1a\xd4\xe3\x71\x1b\xaa\x8a\xa0\xf1\x98\x24\xd0\xa9\x60\x5b\x27\x41\xdf\x29\xce\x56\x3e\x34\x17\xb5\x60\xde\x27\x82\x92\xf2\x35\xaf\xee\xf2\xe0\x7b\x27\xe1\x38\x26\x41\x65\x80\x29\xde\x6e\x71\x70\x86\x24\x48\x41\x3b\x59\xb6\x16\xc3\x00\x16\xb6\x1f\x4f\xce\x4b\xda\xb7\xca\xdb\x2d\x7a\xe0\xee\x0f\x76\xe1\xc3\x76\x7f\x58\xb1\x7f\xf7\xff\x52\x9c\xf4\x97\xde\xd7\xe1\x72\x77\x9a\x58\x69\x6a\xec\x6d\x44\xbf\x87\x66\x34\xf8\xe6\x1f\x19\xbd\x6d\xb7\xd2\x3b\x82\x1e\x1e\x01\xd9\x3b\x9a\xc7\x8a\x30\xba\x1f\x15\xf4\x33\x39\x87\x95\x99\xcc\xe6\x99\xdd\x8e\xa9\x81\xfa\x4d\x66\xb6\x76\xa7\x85\xcc\x25\x25\x69\xf2\x4e\x69\xbd\xcd\x81\xf6\x7b\x6f\x03\x43\xa2\xb9\xa2\xd5\x8a\x0a\x7b\xa6\xd8\x09\xfc\x19\x0e\x17\x7a\x44\x8f\x73\x97\x4c\xfa\x83\xa2\xd7\x82\x55\x56\x2a\x7a\x8a\xf6\xac\xb5\xf1\x1b\xf8\x82\x89\xfe\x90\x5c\x86\x5f\x2d\xfa\xbe\x3a\x21\xd6\x1c\xba\x93\x3e\xc9\x3e\x12\x85\xdb\x28\x87\x0c\x3f\x3e\xe7\x3f\x79\x10\x5c\x42\x96\x84\xbc\x16\x56\xa7\xb9\xd7\x74\x79\xc0\x46\xb2\xc4\x01\x9b\x26\x3a\x32\x23\xc1\xbd\x43\xd5\x96\xee\x49\x59\x3a\x27\x9b\x2d\x6e\xf1\xe3\xc3\x9a\xd0\x38\x8d\x61\x2b\xe1\xe1\x9e\x52\xb0\x7b\x9b\x72\xbb\xb0\xcd\xff\x65\xdf\xc2\xed\x15\xe7\xfe\x1e\x6b\xf9\xcd\xdb\x57\xdf\x3e\x21\xa2\x99\xd8\xd1\xe5\xf7\xac\x9c\x66\x3f\xfe\xeb\xf2\xa7\x27\xf2\xa7\xd7\x19\x86\x01\x4e\x3f\xbb\x37\xe6\xdb\x26\x9b\xce\xb2\xb1\x4b\x78\x87\x35\x30\xbf\x76\xfe\x99\xce\x66\x5f\xe1\xd9\x97\xff\x86\x4f\x4f\xe7\x78\x36\xfb\xf2\x37\xf8\xf4\x64\x3e\x37\x57\xb6\xb3\xcc\x57\x9a\xdd\xb7\xaa\x7d\x81\xb3\xe1\x50\xbd\x38\xfd\x2d\x3e\xd5\x55\xff\xcf\x1c\xab\xff\x7e\xab\xff\xfb\x37\xfd\xdf\x57\xfa\xbf\xdf\xe8\xff\xfe\x55\xff\xf7\xa5\xfe\xef\x0b\xfd\xdf\xa9\xfe\xef\x64\x3e\x9f\x63\xd5\xee\x7f\xfd\x17\xcf\xe6\x73\xac\x8f\x07\x2a\xa9\x50\x1d\xce\xb7\x73\xf5\x3e\xbb\x22\xcd\xf3\x1b\x52\x65\xd3\x25\xa9\x1a\x8a\xb3\xf5\xea\x86\x40\x81\x6c\xf5\x7f\x32\x9c\xad\x7e\xab\xfe\xf9\x37\xf5\xcf\x57\xea\x9f\xdf\xa8\x7f\xfe\x55\xfd\xf3\xa5\xfa\xe7\x0b\xf5\xcf\xa9\xfa\xe7\x24\xeb\x93\x9f\x32\xb6\xcc\xe6\xdb\xcf\xf0\x35\x95\x64\x7a\x7f\x0d\xcb\xa3\x8f\xc2\x07\x90\xc6\xe4\xea\xa2\xc9\x7e\x0e\x95\xa5\xe5\x8d\xbf\x3b\x95\xfd\xf4\xf4\x3f\x5e\xbd\xbe\x7c\xfa\x87\x1e\x2a\x83\xc4\x0f\x78\x3f\xb5\x19\x62\x4b\xd1\x1a\xce\xa0\x91\x3d\x24\xf7\x05\xd4\xdb\x49\x2f\x78\x37\xc9\xee\xad\xbf\x8f\xde\xac\x10\xf1\xb3\x28\xc6\x2f\xf3\x3e\x8a\xd1\xba\xba\xce\x1d\x73\xac\x4f\x4f\x27\x0d\xe8\xa7\xbf\x84\xe3\xa5\xf8\x05\x11\xd4\xfe\xe9\x7b\xf9\x89\x7d\x2f\xff\xde\x48\x73\x9f\xdc\xed\x32\xbc\xa9\x8c\xb3\x71\xe7\x46\x1c\x45\x26\x1b\x93\x31\xb1\x0a\x3c\xbb\xdf\xba\x94\x5a\x1a\xc3\xe5\x43\xe4\x61\xdd\xa8\x46\xdf\xee\x37\xaf\xc4\xa2\x30\xef\x55\x49\xf5\xd6\xbf\x20\x0d\x5b\x1c\x97\xa2\x5e\x95\xf5\x2d\x8f\x8e\x9d\xe8\xcd\xf1\xa2\xe6\xf2\x00\x07\x24\xc5\x69\x53\x0d\x1b\xe8\x06\x0b\xce\x7f\x6c\x5d\x29\x77\x97\x6f\x16\xa2\xae\x2a\xc3\x98\x12\xfa\x6c\xc7\x52\x15\x01\xfd\xe3\x0a\x2f\xf0\x12\x97\xf8\x0a\xaf\xf0\x35\xbe\xc1\x77\x9e\x4b\x5d\x04\xb7\x2f\x17\xff\x5d\xaf\xd2\x2f\x1f\xce\x8a\xcf\xff\x01\x58\xf1\xf9\xff\x18\x6c\x9f\xf3\x7f\x6c\x56\x7c\xfe\x8b\xb1\xe2\x5b\xcf\x0f\x84\xc3\xc6\x4f\xf9\xa7\x06\xce\x6e\x22\xf0\xe7\x88\x6f\xd8\x44\xe4\xd8\xe1\x6f\xe2\x84\x73\xe8\x30\x17\x4d\x62\x62\x2f\x82\xff\x46\xc5\x59\xf4\x4b\x93\x1f\x77\x60\x9f\xc1\xb4\x3c\xff\xa4\x1e\x2e\x6f\xfe\x21\x3c\x5c\x5e\x47\xae\x1b\xaf\x3f\xaa\xeb\xc6\xfb\x7f\xba\x6e\xec\x74\xdd\x78\xd7\x76\xdd\x78\xf7\x29\x5d\x37\x1e\x27\x5c\x37\x1e\xef\x70\xdd\xb8\xe8\x77\xdd\x78\xdb\x72\xa1\x78\xfb\x8b\xfb\x70\xb8\xae\xdf\x05\xf2\xc3\xbb\x5f\xd0\x7b\xc3\x0d\xe0\x55\xec\x22\x36\xfc\x94\xae\xf9\x38\xf8\xf0\xef\x2d\xa7\xf5\xf9\x2e\xef\xb7\x76\x82\xc2\xa4\x24\x3c\x95\x94\x84\xa2\xfb\x1a\xe0\x45\x67\x74\xbe\x85\x0c\x94\x01\xfb\x19\x8d\xc2\x9f\xb8\x6e\x31\x9f\x51\xfc\x00\xe7\x9e\x17\xd5\x9b\x4d\x1d\x32\x5f\x75\xba\xd4\x31\x6f\xaa\x0b\x61\x8d\xd1\x13\x41\x75\xee\x29\xd4\xcd\x2d\x1d\xc6\x7b\xd8\x4b\x93\xcd\x46\x6c\x11\xae\x11\x66\x01\xe8\x6d\xd4\x1f\x74\x07\xa3\x89\x9f\x9f\xd5\xdd\x23\x81\xd9\x23\x01\x47\x2f\x8d\x28\x6f\xae\x0a\x4f\x8a\x6e\x0f\xfd\x4b\x5b\xdb\x44\x3a\x08\xd7\x1f\x29\x2a\xec\x2f\x45\x6e\x15\x8a\x73\x29\xc8\xe2\x1d\x2d\xb1\xbd\x4d\x3c\xd7\xb9\xf9\x31\x69\xfd\x6e\x5a\xbf\xd7\xad\xdf\x55\xeb\xf7\xa2\xf5\x7b\xd9\xfa\x5d\xb6\x7e\x5f\xb5\x7e\xaf\x5a\xbf\xef\xfe\xc7\x78\xfe\xbc\xb6\x9e\x3f\x8d\xf7\xfc\x01\xb5\xa7\x78\x9f\x37\x61\x42\x41\x7b\xd1\x3d\x78\xae\xb9\x70\x13\x60\xdb\x7c\x1c\x80\xb1\x57\xf9\xdb\x9c\x16\x24\x4c\x22\x4d\x5a\x49\xa4\x85\x3a\xa7\x32\x29\x08\xd7\x3a\x1f\xe3\x97\x2f\xf9\x53\x25\xc5\x64\x4a\xab\x15\x97\xcd\x24\xf5\x72\xb3\x49\xaa\x86\xc7\xc7\x51\xe1\x63\xc6\x33\x84\x61\x14\x51\x27\xb4\xec\xef\xc3\xbd\x3b\xa0\x0b\x5a\xf6\xf5\xc0\xf8\xe5\xeb\xb5\xdc\xf1\x1d\xf6\xed\x81\x1f\x52\xaf\x65\xd0\x0f\x6b\xde\xd6\xeb\xc5\xd5\x33\x7a\xc3\x16\xd4\xb5\x1f\x3d\xdd\x6c\x9e\xd4\x75\x45\x09\xcf\x47\xa3\x5b\xc6\xcb\xfa\x76\x3c\xce\x6a\x2e\x55\x89\x46\x12\x21\x15\x6b\xd4\x2f\x90\x6f\xd8\x76\xff\xb2\xec\xd1\xbd\xad\xaa\x7f\xec\x2e\xd2\x4d\xe7\xb6\xc0\x64\xcd\xd9\x5f\xd7\xf4\x65\x19\xb4\x0a\x99\x5c\x6f\x68\x99\xe1\xd1\x69\xf8\x94\x97\x15\xfd\xa1\xae\xe5\xab\x7a\xdd\xd0\x67\xf5\x2d\xcf\xb0\x65\x74\xb6\x90\x56\xf2\x21\x38\x94\x2f\x68\x23\x6b\xd1\x64\x78\x36\xf7\x05\xae\xd7\x12\x52\xcb\xbc\xbe\x68\xa8\xb8\xa1\xc2\x37\x71\x6b\x4a\x10\xce\xae\xa1\x88\x59\x8d\x1b\xfc\x16\xd0\xc5\xa8\x77\x67\x6b\x70\xce\xac\x3b\x1b\xaf\xeb\xd5\xae\xa8\x93\x86\xca\x75\xb7\x40\x84\x88\x85\x79\x51\x9a\xfc\x56\x93\xbf\xae\xa9\xb8\x7b\x43\x95\xb0\xa4\x58\xc6\xac\x24\x92\x1c\xd3\x8b\xf2\x98\x95\x85\x9b\x43\x17\x32\xd3\x9d\x46\x9c\x1d\x4b\xc1\xfe\x7f\xf6\xbe\xfc\xbd\x6d\x1c\x49\xf4\x77\xff\x15\x12\xf7\xad\x96\x58\x43\x8a\x64\x77\xf7\xf4\xd2\x61\x34\x39\xa7\xb3\x9b\xeb\x25\xe9\x9e\xe9\x4f\xa3\x97\xa5\x45\xc8\x42\x9b\x02\x34\x20\xe4\xa3\x2d\xfd\xef\xef\xc3\x45\x82\x24\xa8\xcb\x8e\xbb\x93\x68\xa6\xbf\x58\xc4\x51\xb8\x0b\x55\x85\x3a\xce\xce\x10\x1b\x7a\x00\xa8\x58\x86\x8e\x99\xcb\xb1\x1b\x93\xe8\x4c\x23\x2e\xd6\xe1\xf2\xbd\xc1\x10\x73\xe6\xfb\x80\x77\xcc\xa2\x2c\x16\xc8\xc4\xf8\x4e\x7d\x0c\x16\x0b\xd2\x6a\x91\x62\x8a\x65\xc6\x64\xa9\x8a\xbf\xf7\xb5\x3e\xb7\x8a\xbc\x46\x8a\x4e\xc8\xb0\x20\xfd\xb2\x58\x60\x90\xd6\xcf\x48\xc4\x70\xd4\xa6\x97\x24\xcd\xe7\x03\x77\x70\xac\xae\x4c\xe8\xc9\x61\xe7\xcd\xd0\x62\x33\x51\xf8\xde\xa7\x76\x7e\x54\xcc\x4f\xc3\xc8\xea\x86\xc1\x4b\x51\xab\x95\x66\x4d\x28\x3e\x1c\xf9\x91\x20\x43\x7d\x0c\x79\x27\x3f\x05\xa0\x9f\x4f\x54\xd8\xec\x05\xbc\xb4\x4a\xea\x72\x49\x3b\xa3\x84\xa6\xc8\x67\xb0\xd9\x05\xcb\x25\xcc\x86\x1a\xc5\x2a\x0e\xe0\x2b\x9c\x72\x64\x82\xab\x2b\x10\x8c\x52\x2e\xf3\xc4\x7d\x02\xeb\x96\x55\x00\x84\xea\x94\x56\x81\x79\x0c\xa5\xf8\x77\xa4\x23\x98\xb2\x39\x49\x28\x9d\x3d\xbe\x8c\x18\x7a\x8f\x8c\x08\x6d\x45\x6d\xca\x30\x22\xea\xf0\x8c\x64\xd4\xba\x35\x80\x54\xfc\x52\x1b\xc7\xb4\x5a\x7e\xfd\x50\x3d\x0b\xd5\x40\xed\xc0\x6c\x3e\x9a\x7c\x10\x09\x3f\xc9\x91\xca\xe9\x5a\x31\x59\x0a\x02\x22\xb1\xb7\x72\x7e\x00\xd4\x9b\x5d\x30\x9d\x4a\x2f\xa7\x8a\x34\xdc\x21\xf4\x54\xc4\x11\x63\xcf\xad\xf4\x28\xde\xd0\x18\x59\xa1\x02\x49\xe6\xc1\x0e\x2b\x7f\xf2\x32\x22\xb0\x80\xff\x4e\x16\x07\x3e\x01\x27\xb8\xd5\xf2\x9e\xbc\x7d\xf6\xab\x60\x51\xb0\xf1\x03\xdf\xe1\xf4\xe7\xd9\x0c\xb1\xa7\x91\xa0\x26\x5b\x2d\xef\xa7\x8f\xaf\x5f\xad\x28\x71\x02\x6e\x74\x00\xbc\x4c\x41\x0b\x17\xfa\x14\x9a\x23\xd0\x57\x28\x2e\x70\xf7\x87\x82\x65\x1e\xc2\xd8\x27\x26\xac\x66\x14\xc7\xaa\x9c\x9c\x7c\x4c\xce\xe4\xa3\xb4\x89\xdd\xa9\x23\x95\x3b\x10\x9f\xda\x13\xf2\x4d\xfc\x6f\x09\x3d\x8d\x12\xb9\x48\xa9\xaf\xc1\xaa\x9c\x12\x64\xe3\x12\xd1\xb1\x0e\x83\x61\xbe\xe2\xaa\xee\x1d\x9c\x90\xd5\x5b\xd3\xd5\xcc\xd6\xbb\xb3\x1e\xc8\xfa\x0d\x9a\x4d\xb3\xba\x8a\xd0\xcb\xea\x3c\x17\xee\x0f\x85\xe5\xb3\x7b\xeb\x39\x11\x53\x18\xb7\x5a\x4f\x7d\x54\xe0\xf1\x79\xa7\x78\xb7\x85\xdc\x45\xc7\x2c\xab\x1d\x78\x3b\x77\xaa\x43\x6b\x2d\x71\xc9\xfe\xbb\x7a\x50\x3e\x2a\x5a\x5d\xce\x3e\x2d\xe6\x08\xaa\x15\x94\xee\x5b\x5e\x92\x77\x49\x24\x57\x84\x84\xa4\x58\x33\x3f\xba\xc0\xdc\x50\x48\xe0\x52\x82\xc4\x8e\xf7\x9b\x5d\x70\x20\xae\x82\xd0\x2b\xdc\x0c\xd0\x6b\xb7\x65\x21\x0f\x40\x9f\x87\x58\x05\x8d\x10\xab\x62\x94\x37\x8c\xd0\x01\x9e\xa9\xde\xb8\x28\x48\xe9\xc1\x93\xfb\x5e\xc3\x13\x14\xa8\xcf\x8a\x70\xa2\x38\xce\x1e\x68\x5c\x40\x0c\xf9\x56\x84\x22\xa5\x1d\x88\xc4\x4f\x27\x38\x89\x7d\x6c\x4e\x5e\x69\x91\x8a\xc0\xb2\x75\x82\x4f\x7d\x5c\x58\x5e\xa2\x47\x63\xa0\x2d\x95\xeb\x5c\x9b\x0e\x79\x5d\xa5\x7e\xd6\xee\xab\x32\xc5\x24\xe9\xfa\x32\xa0\x22\x5b\xae\x64\x85\xcd\xde\x89\xcf\x42\x9f\xe9\x60\x2a\xb9\x7c\x4a\xb2\xce\x5a\xa4\x3e\xe8\x0e\x3b\x32\xec\xa9\x58\xc1\x14\x74\x52\x3a\x45\x2e\x45\x69\xef\xdf\x46\x74\x2a\x23\x80\x36\xc3\x10\x75\x08\x8d\xe5\x03\x76\xab\xd5\xf4\xbd\x7f\x93\x46\xf2\x61\x31\xdd\xcb\x13\x7e\x91\x91\x07\x96\x00\x80\xc5\x62\x5d\x5f\x74\xd4\xd5\x7b\xe9\x8d\xe0\xdf\xe4\xc6\x4f\x27\x74\x9e\xc4\xf9\xe5\x29\x9f\x0f\x6a\xf2\x04\xb7\x56\xa4\x2a\x00\x80\x4c\x80\x72\x5f\xc4\x4a\x35\xca\xb9\x92\x1d\xaa\x7e\xf8\x82\x79\x14\x9b\x46\xec\x65\xc1\x28\xa6\xf3\x53\xce\x90\x0e\xa8\x59\xc6\xf9\x6b\xf7\x10\xb8\xc9\x04\x1b\xce\x66\xcd\x99\xaf\x74\x27\xc6\xe9\x88\x12\x82\x46\xdc\xaf\xe9\xb1\x11\x6c\xe4\x9d\x2a\x63\x61\x47\x6f\xd6\x51\x0c\x62\xc1\x6d\xa4\x2e\xa8\x37\x0b\xa7\x17\xdb\xb2\x32\xeb\x2e\xbf\x9c\x00\xec\x6e\x72\x1f\x6c\xda\xbc\x7b\x79\x1d\x9d\x50\x82\x0c\x36\x27\x2a\xf8\x90\x83\x59\x30\x64\x28\xcb\xc9\xb5\xbc\x99\xca\xd5\xed\x68\x42\x13\x89\xce\x41\x6d\x43\x65\x3a\x01\x6c\x49\x68\xe6\x97\x55\x99\x62\x71\x61\x37\xe3\xc3\x39\x9f\x95\x19\x43\xa2\x7d\x55\xb5\x22\xeb\xe7\x36\x7b\xc4\x0b\xec\x11\xcb\xbe\x25\x61\x98\xf3\x40\x0c\x2c\x16\x82\x4d\xe0\x25\x6e\xca\xef\x42\x22\xe8\xaf\xc7\x17\x11\x96\x64\x8e\x6e\xd3\x67\x10\x01\x48\xb3\x7c\x95\xfc\x0c\x25\x3c\x4a\x81\xcf\x01\x8c\x42\xda\x89\xc5\xe7\x3f\x60\x6a\x7e\xfe\x7a\x10\x3d\xc4\x3a\xf5\x0d\x3a\x8b\x38\xbe\x40\x7d\x3f\x0a\xcb\x69\x90\x9b\x11\x3e\xd3\x46\x26\x00\x04\xd1\x23\x53\xec\x9d\x9c\xc6\x62\x55\x93\xe6\xac\x9a\x9a\x56\x7f\xcd\x5b\x4d\xc3\x72\x9a\xbb\xaa\x69\xf5\x57\xd3\x42\xab\x65\xd5\x5d\xd5\x6c\x6e\x4f\xf5\x4e\x65\x09\xfa\xc6\x8f\x16\x8b\x14\xb4\x5a\x72\xde\x62\x9c\x6a\xb6\xcd\xcc\x6a\x04\x53\xc8\x64\xd8\xa9\x24\x45\x8d\x2a\xd0\xe5\xf2\x60\x05\x6a\xb8\x9c\x20\x94\x78\x90\xc3\x9b\x51\x34\xe3\x73\x26\x25\x68\xb3\x28\x4d\xf1\x05\x52\x16\x89\xb5\xf4\x6c\xe8\x42\x3e\xce\xad\xee\x6a\x44\xa0\x5c\xd5\xe3\x02\x19\xbe\x9e\x8c\x0e\x2b\x39\xaa\x4e\xe9\x68\xaf\x39\x23\x96\xe8\xa2\xd4\xb6\x0b\xd1\x67\x86\x2f\x07\xb5\x7c\xa3\xa2\xea\x37\x61\x16\x1d\xf4\xbf\xcb\xda\x43\x12\xb2\xb5\xcd\xa0\x5a\x3c\x01\xca\x48\x6e\xeb\xc1\x39\xd7\xf0\xb3\x8c\x6f\x65\x4b\x1b\x0d\x31\x46\x29\xc7\x44\x91\xe3\x8a\x7a\xae\x71\x58\xd2\xc8\xb6\xe8\x19\x32\x84\xf6\x93\xeb\x97\xb1\x7d\x71\xe4\xb0\xca\xbc\x41\x4e\xed\xd7\x80\xf7\x38\x4a\x25\x99\x54\xb4\x7b\xd4\xaf\x84\x0c\xa5\x34\xb9\x40\x4a\x5f\x5a\x05\x7d\xf6\x75\xec\x9a\x00\x91\x0b\xcc\x28\x91\x5d\x07\x1d\xeb\x2b\xa7\x69\xf9\x75\x82\x2a\xed\xaa\x75\xf3\x3c\x63\x8b\x25\x86\x00\x25\xb2\xa6\x33\x48\x42\xde\x49\xd0\x58\x7a\x61\xeb\x30\x7c\x36\xe1\x90\x86\xbc\x73\x89\x63\x3e\x81\x51\xc8\x3b\x13\x24\x13\x05\x73\x44\xf9\x04\xb1\x0f\xa2\x8d\xf4\x20\x7b\x19\x6c\x86\x61\x9a\xf1\xf8\xf3\x06\x26\x8d\x54\x35\x99\x84\xe9\x60\x3e\x3c\x40\x87\x16\xfb\x31\x87\x5e\xd0\xc8\xc3\x01\x26\xd0\x3b\xf1\x72\xd7\x53\xad\x96\x2f\x4a\x73\x3a\x0b\x1a\x76\x00\xc1\x13\x0f\xa8\x40\x80\x22\x57\x74\xd6\xca\x26\x3a\x1b\xeb\x6c\x39\x04\x2b\x1f\xeb\x7c\xaa\xf3\xe5\xc0\xac\x7c\xaa\xf3\x23\x9d\xaf\x86\x6b\x15\x88\x80\x31\x93\xd2\x8f\xc8\x13\x3e\x4d\x3e\x44\x63\x94\xd9\xbe\x7e\x28\xd8\xbe\x62\xd9\xd6\x07\x5f\xbe\x1c\xa5\x4b\x3f\x37\x7c\x85\x17\xe1\x3b\xdf\x9f\x86\xd7\xc0\x2a\x5e\x11\xaf\x0e\xf0\x50\x3e\x5d\x14\x1e\x0e\x8b\xcf\x8a\xf6\x1b\x86\xf5\x8c\xe5\x8a\x36\xed\x62\x43\xfb\xb5\x3c\x5d\xe0\x79\xcb\x25\x80\xef\xfc\xa9\xdd\x43\x2d\xb1\x1d\xd0\x21\x5c\xe7\x72\xc2\x51\x0f\xc0\xa9\x6d\xb1\x5c\x82\x9d\x0b\x4e\x06\xd1\x96\xe0\xb3\xaa\xab\x5b\xb0\x64\x06\x83\x74\xcb\x26\xf2\xba\x1b\xb5\x21\xc5\x02\x83\xf9\x6e\x8d\xbc\x95\x2f\x14\xab\x5a\xa9\xe1\x58\x07\xc9\x2e\xeb\x52\x81\xb3\xd9\x3a\x39\x9a\x1f\xed\xb8\x6e\xdb\xf6\xa0\xca\xd9\x0c\xc6\xdb\x36\x5d\x81\xb1\x41\x9b\x05\x0e\x67\x10\xef\xd2\xa4\x0d\x62\x75\x8b\x75\x4c\xcd\x60\xb2\x65\xbb\x35\x80\xd6\xb4\xee\xe0\x75\x06\xb3\x6d\x5b\xae\x02\x29\xb5\x3a\xb5\x5e\x51\xdf\x4b\x3f\x02\x94\xf9\x27\x82\xf8\x6d\xa2\x5c\x88\xb4\x58\xd8\x5f\x39\x37\xb1\xf2\x5d\xcd\x03\xe0\x24\xe3\x50\xa4\x88\xa1\x28\x30\x33\xda\x07\xf3\x24\x39\x40\xe5\xdc\x65\x55\x15\xe5\xa9\x7a\xe0\xce\xe8\x9d\x7f\xcd\x51\xca\x1f\x1b\x84\xfa\x82\x45\x05\x79\x88\xe1\x83\x74\xf1\x33\x65\xf3\x3e\xe7\x28\x96\xb7\xa6\xd1\x61\x24\x94\x20\xe9\x48\x25\x47\xcd\x5a\x2a\xc2\xe6\x84\x28\xbd\x4c\x3b\xf3\x5d\x12\x5d\x7f\xe0\x11\x47\xe0\x06\x39\x28\xbd\xac\x9c\x94\xa4\xfa\x96\xb2\xb6\x28\xef\xa4\x9c\x8a\x55\x18\x80\x5c\x8a\x45\x34\x9d\xad\x7f\x67\xaa\x0b\xbf\xdd\x42\xb5\x59\x3f\xbe\xad\x55\x6d\x5e\x6d\x04\xa8\xb5\xab\x60\x41\xfd\x38\xdf\x44\x63\x4b\x61\x68\xfc\xb5\x2a\x1c\xc7\x9f\x55\xb3\x71\xf2\x45\x68\x36\xce\x0a\x9a\x8d\xb3\x3b\xd5\x6c\x9c\xee\x35\x1b\x57\x6a\x36\x9e\x96\x35\x1b\x4f\x3f\xa7\x66\xe3\x85\x43\xb3\xf1\x62\x85\x66\xe3\xb8\x5e\xb3\xf1\xba\xa4\xd9\x78\xfd\xc7\x69\x36\x16\x2d\x23\xfe\x00\xcd\xc6\xb3\x3f\x48\xb3\xf1\xd3\x5e\xb3\xf1\x5b\xd0\x6c\xbc\x0c\x7d\x56\x52\x1c\x24\xa5\x6f\x5c\xfa\xbe\x6b\xc5\xc7\x4f\xbe\x3f\xfa\x66\x74\x15\x67\x46\x57\x91\xda\x5e\xca\xc4\x24\x4f\x7d\x6a\x51\xd9\x34\xd3\x55\x54\x62\x2c\x48\xef\x5c\x57\xf1\xcc\xbf\xf6\x51\x88\x6d\x5d\x45\xec\xd6\x55\xa4\x67\x67\x09\x7a\x99\x3e\x41\x98\x9c\x29\xae\x28\x7e\x72\x2d\x75\x0f\x0c\xcf\xd1\xec\x01\x28\xe1\x55\x94\xdf\x2c\xa5\x33\x6a\xf9\x50\x5b\xa7\x74\xa6\x34\x0b\x6c\x3d\xb9\xca\x43\x88\xe3\x59\x48\x87\x55\x88\x17\x0b\x6f\x2a\xaa\x4a\x69\x43\xe1\xad\x04\x19\xfd\x8a\x56\x4b\x5e\x24\x9d\xd3\x39\xe7\xb4\xf8\x8a\x9f\x72\x3a\x13\x07\x2a\x3a\x8b\xd4\x5b\x26\x2a\x27\x19\x21\xf6\x27\x91\xfe\x11\x5d\x71\xa5\xdd\x85\x29\xf9\x99\x70\x9c\xc8\x6e\xcf\x67\xa6\xd4\xda\xf9\xeb\x6f\x56\x4c\xea\x63\xd5\xbf\x85\xa9\xfa\xca\xa7\x7b\x61\x16\x9f\x26\x78\x74\xee\x9a\x41\x97\x15\x9b\x91\xa5\x9a\x19\xb1\xdc\x10\x2f\x16\xcd\x6a\xf3\x8b\xc5\xca\x75\x28\x3e\xa4\x96\x97\xc0\x1b\xc9\xae\xb9\xb3\x17\x8b\x6e\x33\x5f\xa1\xc5\x62\xa7\x15\xba\xf7\xb9\x2f\x4f\xfe\xff\xa0\xeb\x9d\x36\xb0\xdf\x53\xc1\xd6\xcf\xd1\xf5\x53\x1a\xa3\xfe\x26\x8d\x07\xc7\x47\x85\x3a\x32\x3c\x43\xf1\xc9\x08\x6e\x34\x88\xe0\xe8\x2f\x36\x20\xed\xfd\x69\x95\x26\x60\x75\xd7\x7d\xcc\x44\x37\xb7\x7b\xd1\xfe\x54\x16\xc8\x38\x1b\x7a\x2e\xd8\x62\xe7\x63\xe9\xa6\xeb\xdb\x85\x4d\x1f\x89\x9d\x54\x7e\xa6\x5b\xb9\xc3\x41\xe9\xc9\xdc\x59\xb8\x32\xc1\xb0\xf4\xcc\xde\xdb\xf2\x99\xbd\x3a\x27\xda\xb1\x04\x32\xef\xb9\xe6\x6e\x14\xb7\xd6\x98\x8e\xe6\xa9\x0f\x60\x8a\xf8\x47\x3c\x45\x74\xce\x0b\x12\x10\xf9\xf4\xab\xdf\x79\x05\xe3\xa2\x20\x65\x1d\x52\xf7\x9f\xec\x90\xef\x49\xcc\x66\x64\x44\x07\x5c\x52\x2e\x79\x9a\xaf\xcf\x33\x14\x93\xd9\xd5\x4f\xe4\xb0\x9b\xfd\xbf\xd9\xcb\xff\xeb\x42\x45\xc8\x98\xa6\xc5\x8c\xce\x04\x83\xa3\x20\x71\x90\xb3\x3b\x72\x1d\xe4\x05\x57\x68\xa5\xb6\xae\x2c\x0f\xc4\x85\xdb\x05\xb0\x7a\x04\x96\x4e\x4d\x01\x3d\x91\xae\x67\xb4\x35\x68\xf2\xb6\x4b\xb7\x66\xed\xa7\xea\x32\x31\xd5\xf5\xa7\xa5\x5f\x91\x9f\x87\x52\xe6\xaa\x73\xb7\x5b\x53\x79\x57\x4f\x69\x7c\x6d\xc9\xfa\x14\xb8\x1a\x49\x1f\x47\x57\xbc\x9d\xca\x1b\xb2\x6d\xce\x8d\x67\xf5\xfa\xf3\xab\xa5\xac\xc0\x21\xab\xaf\xf0\xed\x50\xd7\xee\xf3\x17\xc5\xf1\x96\x93\x37\x04\xad\xd6\xa4\xec\xc3\x95\xc8\x34\x48\x04\x7f\x60\xbd\x63\x15\x9e\xaf\x2a\x94\xd5\x80\xad\x97\x17\x8f\x56\x41\x00\x70\x64\x0b\x8b\x3f\xb9\x4a\x6b\x1a\x64\x40\x76\x6a\xeb\xa9\x3e\xf0\xeb\xdb\xc9\xae\xdb\x01\xde\xa9\x25\x53\x7f\x93\xb6\xec\x1b\x6e\x93\xb7\xb6\xd5\x20\x36\x6e\x51\x5e\x75\x9b\x3c\xbe\xad\x02\xb0\xba\x35\x37\x62\xdc\xe4\x35\x6e\x3d\x98\xd5\x2d\x57\x50\xd8\x26\xaf\x73\x2b\x21\xac\x69\xcf\xf1\x62\xb4\xc1\xf3\xdc\x1a\x18\xa5\x36\x47\xb6\xdb\x91\xcb\xdd\x65\xf3\x9f\xc1\xdd\x88\x76\x27\xbe\xd6\x39\xa6\x14\x25\xc3\x15\xce\x44\xe0\x29\x3c\x83\x9f\xe0\x25\x7c\x0e\x3f\xc0\xb7\xf0\x0a\x3e\x86\x1f\xe1\xf9\x81\x6d\xa1\x9b\x09\xd2\x5e\x7f\xad\x12\xff\x77\x5f\x92\xe3\x85\xdf\x4a\x61\x35\x7e\xfb\x53\x86\xd5\x78\xf1\x47\x87\xd5\x78\xff\x45\xbc\xb3\x3c\x2d\x8b\x89\x5b\xad\xf7\x85\xe8\x7c\x5c\xea\x58\xbf\x97\xf1\xdb\x6c\x39\xef\xcb\xc2\x03\xcd\xcb\x3b\x7d\xa0\x79\xb6\x7f\xa0\x59\xf9\x40\xf3\xa2\xfc\x40\xf3\xe2\x73\x3e\xd0\xbc\x71\x3c\xd0\xbc\x59\xf1\x40\xf3\xba\xfe\x81\xe6\x55\xe9\x81\xe6\xd5\x1f\xf7\x40\xf3\xc2\xba\x57\x5e\xfc\x11\x0f\x34\xbf\xff\x41\x0f\x34\x3f\xef\x1f\x68\xbe\x85\x07\x9a\x27\xe1\xcd\x12\xfe\x14\x0e\x3c\x4e\x67\x1e\x94\xca\x94\x82\x6c\xc3\x67\x13\xf1\x57\x2a\x47\x7a\x50\x2b\x41\x7a\x43\xf8\x4b\xe8\x93\xb2\xa7\x8a\x7a\xd7\x15\x26\x21\x2a\x27\xa4\xe5\x84\x79\x39\x21\x29\x27\x8c\xca\x09\xe3\x72\x42\x5c\x4e\x58\xe7\xc2\x62\x5a\xfa\xbe\x28\x7d\x9f\x7f\x33\xcf\x46\x2f\xcd\xb3\x11\xc9\x9e\x8d\xc2\x67\x3e\x01\xc5\x38\xa4\x9a\xfa\xc2\x95\x2b\xe7\x33\xe8\xa1\xa8\xcb\x84\x00\xf8\xce\x7f\xe5\xe3\x90\x17\x22\xd8\x30\x00\xa0\x37\x79\x97\xb1\x19\xa7\xf0\x95\x8f\x81\x2e\x0b\xa0\x77\x91\x67\x9d\x95\xb2\xe4\x36\xff\x54\x4a\x54\xbb\xfe\xb2\x94\xaa\x0f\xc1\xf3\x52\xb2\x3e\x13\x1f\x4a\xc9\xfa\x88\xc0\xb7\xa5\x74\x4b\x47\xda\x83\x57\xa5\x4c\x9c\xbe\x9d\x21\xe2\xc1\xc7\xe5\xa6\x6d\x43\x4f\x0f\x7e\xd4\xd9\xbf\xeb\xec\x19\x43\x17\x98\xce\xd3\x5f\x10\xe3\x78\x14\x25\xf9\x70\x0d\x72\x29\x97\xfc\x89\x32\xfc\x3b\x25\x7c\x55\x59\x97\x42\x7c\xb9\xcc\xa7\x39\x8e\x3d\x13\xa1\x67\x8e\xe3\x17\x94\xc9\x1c\xab\x73\x9f\x6c\x9f\x17\xb8\x28\xaa\x7e\x19\xd7\xb9\xe7\xa8\xb8\xc1\xc0\x1d\xd1\x96\x0d\xd7\x8c\xe5\x99\x11\x53\xc1\x27\x56\xae\x16\x82\x7b\xf0\x86\xce\x10\x09\x70\x47\xfc\x81\xf2\xf5\x20\xc0\xea\x15\x01\x2a\x01\x79\x80\xb5\xa4\x1c\xe6\xe6\x5d\x01\xb6\x6c\xbd\x96\xc0\xf4\x9b\x92\x97\x04\xf3\x56\xab\xf0\xe9\xe3\xce\x6c\x7e\x9a\xe0\xd1\xe3\x77\x2f\xb3\x92\x26\x36\xd6\xe3\x77\x2f\xb3\xe2\x56\x5a\xa9\x8e\x79\xb4\x7c\xea\x13\x13\x18\x79\xe2\x58\x21\xb7\x39\x42\xfe\x02\x50\xad\xb3\x58\x78\xd1\x9c\x53\x2f\x93\x3f\x5e\x54\xb6\xc8\x3a\xa0\xe5\x1a\x15\x90\xd6\x3e\x59\x0f\xcd\x2a\xac\xdf\x2e\x3e\x9d\x21\xfe\x2c\x4f\x7d\x19\xfb\x96\x4d\x46\xb6\xb4\x4e\x93\x05\x6e\x05\x90\x51\xd0\xb3\xf7\xac\x66\xef\xc0\x6e\xbb\xb2\x59\x9a\x61\xf8\x44\xbf\x33\xb9\xf2\xb8\x09\xa6\xc2\xe6\xa4\x93\x8e\x26\x48\x5c\x9f\xbe\x97\x6d\xaa\x82\x95\xb8\xe0\xea\xb3\xd5\xec\xa8\x33\xdc\x6a\xf9\x48\xff\x0c\xe5\xbb\xb4\x63\x5b\x54\xd3\x7c\x0b\x50\x6e\x86\x5a\xe9\x60\xc8\x61\x6e\xd3\x91\x55\xa8\x99\xfc\x1b\xe3\xe9\x44\x3d\x28\x8a\x53\x04\x55\xc7\x02\xfd\xe2\x2a\x7e\x43\x33\x75\x2a\xd1\x7c\x41\x3d\x62\x5d\x57\x7f\x2d\x65\x10\x6d\x6b\xb3\xae\x0e\x28\xfc\x9b\xff\xc2\x27\x85\xa8\x64\x85\xf2\xbc\x18\x91\xcc\x7e\x33\x2c\x4c\x97\x33\x59\xea\xf1\xe6\x1b\x86\x4a\xf4\x59\xf3\xf6\x59\x78\x5b\x96\x29\xf9\xaa\xe5\x3b\xa7\x94\xa1\xa6\xc7\x7e\x67\xa3\x44\x2d\x70\xb3\x57\x78\xea\x57\xc9\x7e\xb1\x3a\x44\xc0\xbc\x24\x9b\xcd\xd0\xdd\x6e\x7c\x45\x78\xd6\xeb\x8b\x44\x61\xee\x60\x70\x32\x66\x52\x69\xc4\xad\x56\xb3\x66\xc8\xba\xe5\xea\x0e\x6e\xfa\xf6\xe8\x9e\x8a\xf6\x1c\xa3\x96\xe9\xae\x61\x57\xe7\x5c\x95\xca\x2e\x6a\x05\x26\xbb\x9c\x25\x25\x6b\x9e\xd1\x67\x2a\x53\xdc\xc4\xda\x4c\x4f\x5c\xa7\xea\xa7\xbc\x71\xd5\x4f\x75\xcb\x9a\x20\xdc\xaa\x13\x35\x97\x61\x58\xc8\xad\x5e\x80\x05\x20\xd9\xc9\xbd\xd5\x62\x41\x0e\x80\x51\xf9\xde\xc1\x61\x51\xbe\x22\x35\xce\x8a\x58\xab\xc5\x3a\x3c\x3a\x7d\x49\x62\x74\xf5\xa8\xdd\x13\x9f\xfa\xf5\x75\x69\x59\x61\x8b\xbb\xad\xf6\x50\x94\x97\x5d\xbd\xfc\x9b\x57\x76\x75\xee\xc5\xa9\xb2\xbd\x99\xb0\x55\xd6\xd4\xe6\x0d\xbc\x0c\xd8\x20\xed\x95\xd6\x73\x16\xb1\x00\x20\xff\x2c\x93\x86\xc7\x3e\x6a\xb5\xb8\x1e\x7e\x95\xc8\x09\x6b\xd2\x17\x8b\x95\x3d\xb7\x4d\xfe\xb4\xa3\x7a\xb5\x43\x2b\x1b\x0d\xea\x08\x63\xe5\x8b\x15\xd2\x75\x5b\x14\x46\xe1\xca\x2d\x0e\x53\xcb\x80\x6f\x1e\x96\x1c\x84\xc0\x24\xcc\xb8\xd8\x79\xab\x25\x43\x55\x76\xa6\x11\x1f\x4d\x3e\xaa\xe9\xf9\xbb\xb4\xe9\x1b\xe7\xa5\x46\xad\xd6\x08\xc6\xa1\x85\x06\x32\xa1\x7e\x4e\x0d\xe4\x71\x98\x7c\x0e\xb5\x1f\x99\xea\xec\xc1\x9b\xea\x44\x04\x04\x96\xe7\x20\xc0\xb0\x7e\xf8\x01\x85\x75\x23\x0f\x22\x58\x18\x6b\x90\xc0\xca\xc8\x82\x31\x34\xbb\x4b\x6e\xeb\x25\x28\x90\x08\x52\x98\x65\xb9\x81\x10\x83\x89\x6d\x87\x20\xa5\x02\x2e\xd4\x9b\x0b\xa4\x6f\x32\x2c\x17\x30\xd7\x1e\xb8\xb0\xb2\xab\x1b\x21\xe7\x11\x74\x48\x1f\xe5\x7d\xde\xbf\x59\xaa\xf9\xb5\x0a\x80\xa5\xd8\xd1\xac\x23\x4d\x3b\x5b\xad\xdc\xe8\x52\x27\x09\x5c\x2a\x45\xbd\x02\xa7\xe6\x86\x96\x56\x2e\xf4\x66\x57\x1e\x30\x02\x08\xab\xa6\x40\xbe\x7d\x9f\x28\x24\x5c\xad\x2a\xad\x42\x65\x5d\x48\x34\x7a\xd6\x28\xb4\x02\x49\xe6\xb6\x5a\x7e\xe1\xdb\x48\x3e\x8c\x5c\xc4\x51\xde\xc0\xad\x36\xae\x2c\x51\x4d\xeb\xb2\x87\x45\x41\x8a\x05\x4d\xde\x17\x4a\xdc\x2d\x6f\x8e\x2a\x34\x65\xcd\x5a\x37\x0f\xea\x92\x91\x00\xf4\x7d\x53\x85\xa0\xad\x60\x0b\x20\xcc\x45\xc9\xe9\x2c\x73\xbf\x33\x18\x66\x7a\x95\xb4\x81\x49\x43\xd7\x07\xe5\x46\x07\x74\xd8\x6a\xf9\x1e\x99\x8b\xe5\xcf\xe5\xca\x79\x6e\x1f\x2b\x5f\x56\x9e\x6d\xa9\x6a\xdb\xce\xe6\x45\x75\xaf\x82\xcd\x6b\x00\x00\x0e\xa4\x58\xf3\xb1\x71\xed\xe6\x1b\xdb\x61\xac\x9c\x64\x48\xa3\xd8\xa5\x19\x4a\x64\x0f\xa5\x2d\x28\x84\x9f\x3a\x32\xc2\xd7\xdb\xb1\x0c\x42\xe8\x13\x7b\xcb\xc2\xc2\xd7\x20\x1a\x66\x83\x8e\x86\xc5\x33\x99\x93\x0a\x24\xff\x0d\xcb\x64\x43\xfe\x3b\xa7\x1e\xe4\x7e\x87\x39\x0d\xa1\xf6\x08\xb4\x48\x09\xbd\xb7\xa0\x45\x52\xe8\x0d\x02\x6d\xd2\xc2\xac\x79\xe5\xe0\x85\xc5\x31\xad\xa3\x2e\x9c\x58\x60\x35\xc1\xe2\xc0\x0c\x24\x57\x24\x29\xb3\x4d\xb5\x06\xf9\xb7\xb3\x23\x97\x0f\x1c\xd2\x24\x5d\xaa\xe8\x59\x79\xad\x96\xeb\x5d\xe5\x45\x94\xf2\x27\x94\xf2\xfc\x09\x6d\xe0\xe4\xf0\xbd\x61\xab\x55\x9b\x55\x64\x13\xdd\x12\x82\x4b\xca\xa6\x13\x9a\x20\x4f\x32\x23\xa4\x60\x48\x7d\x1a\xfe\xec\xfb\xd7\xe1\x79\x51\x13\x25\xe7\x79\x07\xe4\x0e\x6d\xa8\x05\xd9\xba\x5c\x02\x78\x16\xfe\xec\x5f\xdb\x0d\x5a\x62\xa7\x3b\x35\xda\x36\x0d\x7e\x2a\x37\x28\x85\x59\xe2\xc0\xef\xd8\x94\x04\x0c\xe0\x65\x19\xae\x92\x87\x0d\xa2\xdb\x02\x7e\x5e\x06\xac\x45\x6a\x83\xf4\xb6\x90\x3f\x94\x21\x6b\xa9\xdc\x60\x7e\x5b\xc8\x6f\xcb\x90\x8d\x60\x6f\x90\xdc\x16\xf4\x55\x19\x74\x41\x36\x38\x18\xdd\xdd\x96\xb9\x59\x8a\xfd\xf2\xb8\xdc\x9e\x11\x37\x0e\xc6\x77\xee\x52\x40\xfa\xcb\x55\xe5\x92\x6b\xd1\x8a\x12\xca\x88\x6e\x7c\xac\xec\x82\xa2\x74\x73\x10\xdf\x61\x6f\x1c\x0a\xe1\x25\xaf\x79\x35\x19\xa2\xa7\xe5\xe5\x51\x93\xb5\x81\xa5\x75\xb5\x1a\x80\xd7\xb6\x04\xa4\x04\x59\xf3\xf2\x9b\x98\x52\x3b\xea\xad\x86\x6d\xf8\xbf\xc1\x74\x4b\xe0\xba\xe2\x6a\xe8\x36\x2b\x38\xb8\xd8\xb2\x05\x66\xdb\x9d\x17\x5a\xb9\xb6\x55\x98\x7e\x59\xab\xc2\xe4\x0e\xdd\xb7\x36\x86\xd2\x1f\x1e\x7b\xef\xf5\xf7\xbf\xfe\xd7\xdf\x5f\x9d\x27\xee\xd8\x7b\x99\xd4\xdd\xfb\xab\x06\xad\x5d\x80\x78\x7f\x2d\x1d\x19\xef\xaf\xd6\x5d\xe3\xfd\x75\x62\x7f\xc4\x98\x79\xd0\x6b\x45\x9c\x33\x59\x35\xd7\xee\xf2\xfe\x4a\xc9\x0b\x3a\x9a\xa7\x2f\xed\x0f\xe9\xa4\x42\x7c\x29\x45\x6b\xc2\x55\xf4\x78\xfd\xfd\x0a\x45\x17\x85\x78\x80\x22\xeb\x02\xb1\x24\xba\x96\x2d\xf3\x69\xf2\x31\x3a\xab\x8b\x12\xd8\x95\x51\x02\x8f\xe0\x8f\x70\x60\x90\xcf\x70\xc7\x80\x81\x5d\xe8\xc5\xf8\x42\xfe\xfc\x0e\x76\xd7\x38\xd3\x36\xb4\x42\x9b\x32\x7c\x86\x89\xac\x75\x64\x85\x0a\x84\x83\x1f\xa1\x37\x8d\xae\x4f\x51\x1b\x93\x36\x32\xf3\x3e\x10\xdd\x15\x93\x5f\x7d\x08\x29\x2f\x81\x1e\x58\x17\x0e\x5c\xef\x26\xc3\x21\x14\xb9\xc7\x32\x1e\xe6\xca\x20\x9c\xc5\x79\xea\x7d\xb7\x45\xe8\x4e\xf5\xbf\xcd\x27\xc7\x2c\x9b\x99\x8c\xde\xf1\xba\xe0\x89\x50\x77\xef\x47\xd9\xbd\x2e\x1c\x1c\xff\x20\x83\x82\x9a\xdf\x3f\x58\xbf\x8f\xcd\x10\xbe\x1f\x9a\xce\xc8\xf8\x8c\xd9\x9f\xc1\xc0\xd3\x6e\x7a\xbd\x4d\xaa\xb9\xf6\xc9\xfa\x99\xf8\x51\xce\xbb\x0c\x4e\xd9\xfb\x01\xf6\x60\xb6\x46\xf9\x9b\x94\x1c\x57\xef\x07\x91\x7c\xdc\x83\x6e\x8a\xd4\x6c\xa4\xc6\xca\x5d\xd6\xf6\x24\x7c\xd1\xf3\x8d\x0a\x7e\x27\x0a\x7a\x59\x9f\x4a\x8e\x7e\xe4\x9e\x51\x93\x62\xb6\xc3\xf1\x7a\xc8\x98\xb4\x67\x7a\x43\xaa\x70\x98\xa6\x85\xa3\xa1\x19\xe8\xf7\x59\x8b\x8a\xa5\x33\xe9\x9e\xc4\x14\x22\xef\x07\x99\xf2\x17\xb9\xb6\xdf\xc1\xc1\xf1\x8f\x3a\xbc\xa7\xae\x25\xdd\xf6\x98\xf5\xa8\x14\x11\x67\x3b\x7b\x27\xb1\x51\x7c\x6d\x8d\x0c\x68\xc5\xe3\xcb\xca\x2a\xb9\xf3\x9d\x4a\xb1\x23\xab\x58\xad\x3b\x99\x95\xb5\x2c\xa7\x3b\x1b\x41\xaf\x96\xfa\x7e\x08\x07\x9e\x94\xc6\x62\x71\x37\xea\xa5\xfc\xce\xb1\xd7\xff\x6b\x98\xad\x88\xb4\x53\xb4\x40\x89\xf9\x1c\x16\x4f\x4e\x15\x3e\x95\x6e\x85\x56\x34\xd0\xeb\xee\xde\x82\x54\x6f\x46\xea\x16\x58\xd9\x46\xef\x96\x6d\x24\xea\x66\x59\xd9\xc6\xd1\x56\x6d\x88\x5a\x43\x38\x58\x8b\x73\x15\xce\x6b\x34\x0a\x28\xf4\x47\xd8\x3b\x2e\x46\x94\xcd\xb3\x6b\x90\x63\x1d\xee\xec\x99\xc8\xb3\x35\x95\x74\x8b\xab\xd1\xef\x8a\xd8\xb7\x16\xb6\xff\x7e\x15\x8e\x5b\x7f\x4f\x4a\xd4\x31\xa1\x49\x2c\x8e\x87\xac\xf1\xbd\x80\x9d\xce\x92\xe8\x3a\x68\x10\x4a\xd0\xc9\x16\xd7\xc5\xea\x58\xbb\x63\x4f\x80\x8e\xdb\x98\xa4\x88\x29\xe5\xa2\x24\x69\xc7\xe6\x55\xd0\xa3\x82\xec\x18\x0b\xca\x44\xd2\x31\xf9\xad\xec\xd9\x0a\xe8\x09\xe2\x35\x81\x7a\x6f\x4b\x28\x6e\x16\xbd\x77\x07\xf8\x0e\x8f\x37\x7f\x38\x21\xfa\xe4\xfd\x93\xdf\x7f\x4f\x2e\x5e\x6f\x4d\x88\xd6\xd3\x9d\x15\x12\xd5\x22\x3c\x73\x6a\x94\x92\xcc\x84\x26\xa3\x31\xf3\xcf\xdc\x00\x45\x7c\x69\xa3\x9e\xb5\xb4\xa9\xa1\x64\xd5\xcf\x27\xc9\x9c\xad\xa6\x75\x6d\x5a\x76\x0d\x01\xfb\x5f\x16\x56\xaa\xa3\x82\xbe\x37\xd8\xea\xbf\xb6\xa2\x7c\x6a\xab\x6d\x43\xf9\x54\x69\x9e\x95\x64\x4d\xbe\x15\x75\x27\xcc\xfd\x5a\x4f\xc3\xe8\x2a\x0e\x4a\xa3\x0c\xe3\xbb\x22\x01\xb3\x0e\x9e\xa1\x89\xca\xf7\x44\x09\xea\xf1\x2e\x50\x8f\xcb\x50\x4b\x54\xd1\xd1\x77\xd0\x63\x54\x1c\x24\x4f\x99\x7f\x7b\x9a\x24\xe2\xd1\xa9\x94\x63\xe7\x33\x64\x2e\xff\x1f\x04\x86\x35\xea\x29\x02\xd5\x75\xf3\x75\x56\xd4\x54\xfe\x44\xe9\xa9\x35\x30\xd5\xcc\xc3\xa4\xac\x96\xad\x41\x46\x86\x65\xf1\x5a\xbc\x0d\x28\x52\x3d\xc0\x12\xd8\x22\x2c\x74\x35\x8b\x48\x8c\xca\xdd\xc8\x19\xb0\x42\xe9\x5c\xe7\xa6\x3c\xf5\x95\x21\x73\x36\x47\xf6\xa8\x6d\x8a\xf1\xd8\x22\x92\x9c\x86\x59\x15\x82\xe9\xbb\x8c\x14\xd0\xc6\x47\xba\x76\xd9\xfe\xcf\x5d\x51\x9b\x02\x17\x2b\x29\x8c\xe1\xae\x70\x8e\xae\x5d\xed\x18\x74\xe4\xae\x64\x47\xb5\x28\xd6\xb3\x4c\xeb\x56\x54\x95\xee\xd4\x1c\x15\x05\x8e\x5b\xdb\xcd\x2a\x93\x65\x70\xc6\x8f\x2b\xe9\xa2\x1f\x6a\x68\xaf\xea\x84\xd7\xb7\xb0\x9a\x46\x5d\xd9\x82\x3d\xf0\xfa\x06\xd6\xd0\xa8\x2b\x5b\xc8\xd6\x7e\x05\xf8\xd5\xe4\xe9\xfa\x29\x2a\x91\xc0\xce\x36\x56\x93\xa7\xeb\xdb\x28\x91\xc0\xce\x36\x8e\x77\x6f\x63\xac\x2e\xc5\x95\xe0\xbf\xdb\x1d\xfc\xa9\xbc\x68\x57\x42\xff\xfe\x96\x9d\xc7\x6b\x76\x69\xef\x87\x5b\x36\x50\x60\xa5\x9c\x2d\xfc\x65\xab\x16\xb6\x67\x41\x0c\xf3\xf1\x63\x99\xf9\xd8\x9d\xed\xa8\x27\xc2\xd5\xc3\xaf\x07\x15\x35\x3e\x27\x09\x92\x54\x5d\x99\x12\x27\x05\x72\xfc\xfe\x28\x71\x7d\x35\xd6\x50\xe2\x07\xb7\xa5\xc4\xff\x54\x14\xf8\x6f\x1f\xfe\xfb\xd7\x17\x2f\x47\xbf\xb9\x29\xf0\x68\x86\x8b\x84\x6a\x4e\x41\x17\xc2\x38\x89\x84\x42\x7c\x06\x91\xa0\x49\x85\xa7\xd6\x62\xfd\x55\x4f\xed\x53\xcb\xbf\xa6\x93\xe0\xfd\xde\x3a\x03\xdf\xe5\x74\x68\x46\x6b\xe4\x8f\x48\x96\xb2\xae\x25\xff\xf9\x68\x28\x4c\xef\xa9\x96\xbf\x5b\x74\x81\xa5\xba\x5a\x20\x8a\x5c\xf9\x19\xb5\xe2\xcc\xb5\xc9\x12\x57\xbe\xe9\x90\x25\x54\x3b\xb6\x46\x66\x88\xba\xbf\x0c\xa1\x57\x43\x22\xdb\xd4\xbb\xc5\xc9\xd8\x2c\x4f\x99\xe3\xc9\x79\x23\xab\xa9\x9e\x73\xfc\xc3\x5a\x7a\x57\x12\x0a\xef\x1c\x32\x34\x47\xb9\x92\x48\x7a\x65\xd9\x8b\x2a\xcc\xe1\x9a\xd9\xf9\xa1\x3a\x3b\xa3\x6c\x51\xb7\x9e\x9d\xf2\x36\x2d\xef\x63\x9b\xb3\x2c\xa8\x98\x6f\x64\x9a\x54\x7c\x4c\xfd\x93\xcd\xff\xf7\x95\x9c\xa3\x9c\x67\xd2\xd4\xcc\x96\x6b\xe7\x2c\x67\x4f\xdb\xea\x92\xbc\x74\x93\x55\x4b\xc8\xe9\x5e\x33\x7c\x65\x14\xb6\xb2\x8c\x5a\xa6\x35\xd3\x8d\x36\x00\x54\x58\x5e\x6b\x07\x6f\xca\x2e\x17\x1f\x5a\xea\x57\x6f\x8b\x77\x29\x7d\x79\xf7\x32\x71\xdc\x51\xad\xc4\xcd\x53\xec\xd2\x71\x26\x4c\xfb\x11\x1e\x69\x02\x43\x71\x63\xbb\x08\x03\x33\xe2\xa1\x00\x6a\x9d\x88\x6e\x5b\x9a\x41\x92\x0a\x0c\x45\x31\x25\x49\x26\xa7\xb3\x09\x81\x49\x94\x4e\xe4\x81\x14\x0b\x7d\xa7\x04\xc1\x4e\x22\xb9\x7a\x6f\x14\x9f\xed\xf6\x2f\x85\x8c\x74\xc4\xc6\xac\x77\x00\x0e\x59\xe8\x45\xa7\x29\x4d\xe6\x1c\x49\x5f\x82\x9d\x59\xa6\xfc\x15\x3e\xf0\xa3\x39\xa7\x0b\x15\xd7\x04\x3c\x50\xc6\xe7\xf8\x4a\xea\x5f\x59\x25\x41\x39\x50\xc9\x29\x8d\xaf\x0f\xf2\x38\x9b\xe8\x04\x67\xa1\x2f\xb5\x6c\xef\x04\xe0\xb1\x5f\xdf\x2f\x0c\xa0\xdf\x64\x8b\x85\xdc\x76\x78\x24\x5d\xe8\xe5\xcd\xb5\x5a\xa4\xc3\x51\xca\x7d\xde\xa1\x17\x88\x8d\x13\x7a\x79\x98\xff\xfc\xd5\xfa\xfd\x0f\x60\xfa\x96\x59\x0d\x16\x3a\xb9\xb4\x68\x27\x94\x6b\x1b\xeb\x43\x99\x69\xc6\x59\x59\x7f\xd7\x4f\xbb\x71\x49\x8f\xff\xa0\xe4\x08\x20\xf3\x94\x91\x4f\x03\x71\xa9\xe4\xd1\x90\x54\xd5\xee\xa2\x90\x38\x34\xa5\xd3\x90\xac\x52\xd6\x9e\x5b\xd9\x15\x4d\xed\xc4\x4c\xf5\x2c\x3a\x43\xff\x78\x3b\x1e\xa7\x88\xc3\x91\x9d\xf8\xab\x4e\x1c\x87\x72\x43\x3d\xa1\x73\x12\x63\x72\xf6\x34\xc1\x88\xf0\xf7\x2a\xe6\x5b\x1c\x8e\x95\x5e\xe3\x24\x1c\x4b\x85\xc7\x59\x38\xd6\x3a\x8c\xd3\x70\x6c\x34\x17\x2f\x42\x5e\x0b\xe1\x3a\xbc\x30\xc5\x4e\xc3\x0b\x5d\xf7\x2c\x2c\x3b\x8e\x12\x35\xe4\xa0\x17\x0b\xdd\x45\x4c\x88\x99\x87\x4f\xe1\xcd\x12\x5e\x86\xcc\x0a\xa6\x0a\x9f\xd7\x6e\xa5\x4b\x90\x6d\x9c\x13\x8f\xa1\x44\x86\xbf\x92\xf1\x6e\x5a\xad\x7c\xe7\xeb\x6f\x13\xf4\xf5\xb2\x2e\xa4\xeb\x65\x78\xb9\x75\xb3\xf2\xd8\x64\x2d\x87\x61\xf8\x7c\xb1\x28\x9c\xb9\xe7\xea\x98\x7e\x08\x2f\xeb\xe6\xed\x20\x6e\x87\x1f\xf4\xd4\x8b\x5f\x9c\xce\xe4\x86\x7b\x1b\x5e\x76\xa8\x5c\x37\x75\xf4\x0f\xde\xb6\x5a\x7e\xdc\x0e\xdf\xea\x58\x46\xaf\x74\x0d\xf3\xfd\x91\xce\xc0\xf2\x34\x8c\xfa\xb3\xe0\x54\x86\x98\xf9\xa4\x55\x51\x4f\x95\x11\xc1\x55\x18\x1f\x26\xb2\xbf\xd2\xe6\x2e\x0c\x43\xac\xed\xef\xda\xf2\x42\x16\x09\xaa\xb3\x8f\xc3\xd7\x11\x9f\x74\xa6\x98\xf8\x67\x30\x3e\x3c\x05\x6d\xf5\x1d\x5d\xf9\x5d\x18\x03\xf8\xb1\x98\x3f\x2b\xe6\x1f\xce\xda\xa7\xe0\x00\x87\xa7\x8f\x1e\xb7\x5a\x1f\x1f\x3d\xee\xeb\xcb\x3c\x38\x7d\xf4\xb1\xd5\x7a\xfc\xe8\x63\x5f\x11\x00\x41\xba\x58\xa8\x5f\xca\x0b\x84\xe9\x59\x5b\x15\xcf\xbb\x73\xbe\xa6\x3b\xaf\x37\xec\xce\xeb\x56\xeb\xfc\xd1\x6b\xd3\xfa\xe9\xa3\xf3\x56\xeb\xf5\xa3\xf3\xac\x7b\xa2\x3b\xea\xe7\xd2\xcb\xbb\xd0\xff\xa4\x75\x7c\xcf\xda\xfe\xd5\xe1\x0c\x04\x9f\xb4\x0e\xfb\x48\x49\x71\x64\x99\xab\x43\x5f\xb4\xf2\xe0\x28\xb8\x92\x53\xfd\x2e\x9c\x54\x36\x46\xdd\x66\x2a\x1c\x0f\xa0\x7d\x36\xc8\x8b\x41\x06\xab\xf4\xbd\x5c\xaf\x69\xb1\xf0\xdf\x1d\x86\x23\x00\xbd\xe8\x94\x2a\xa8\x14\x7c\x92\x3a\xca\xef\xda\xd7\x07\xd9\x2c\x9e\xa2\x84\x5e\x16\x72\x0f\xa7\x32\x57\x4e\xe7\x6f\xe2\xf3\xf0\xfa\xe1\xe8\xd0\x3e\x7e\x3f\xa9\x83\xfb\x3e\x9c\x3c\xba\x3e\xa0\xe1\x6f\x8b\xc5\xfb\x7e\x0e\x68\xde\x6a\x35\x7f\x6b\xb5\xde\xf7\x75\xcb\x41\xde\x03\x91\xf5\xbe\xd5\xfa\xcd\x94\x0e\xe6\x8b\x85\x9f\x7f\xe9\x82\x20\xd0\x09\xd0\xf4\xc8\xee\x66\x7f\x1a\xb4\xaf\x4d\x6c\x26\x97\x75\x07\xae\x5a\x77\x50\x28\x55\x0e\x82\x4f\xcb\xe5\xc1\x4a\x1c\xce\x55\x44\x07\x07\xfa\x96\xa8\x5b\x62\x69\x07\xf2\x8e\x5c\xc8\x3b\x0d\x5d\xbd\xd3\xfc\x43\xa5\x8b\x66\xc8\xaa\xa3\x37\xcb\x65\xe1\xf4\x51\xd5\x81\x79\x3d\x4e\x3e\xc0\xf5\xd8\xf6\x40\x85\xbd\xaa\x62\xfe\xc3\x0a\x52\x3d\x70\x59\x0e\x85\x73\xb9\x8f\x0f\xb1\x42\x12\x8f\x92\xec\x1c\x94\xcf\x64\xbe\xd1\x75\x8f\x47\xf5\x3d\xd6\x48\x7f\x5c\xdf\x6f\x55\xe2\x20\x55\x5a\xfa\xe1\x8d\x0c\xb1\xe5\x8f\xda\x63\xf0\xe0\x68\x59\x87\x08\x74\xc3\xf1\x8a\xeb\x6b\xb2\x62\xaa\x9c\xe3\x8f\xd5\xb9\x7e\x34\x51\x3d\x72\x0d\x3f\x47\x03\xb4\xd5\xf2\x9d\x50\x74\x11\x63\x6a\x90\x1f\x8b\xa8\xef\x57\xcd\xb2\xc2\x08\x62\x81\x75\xeb\xef\xd0\x6c\x5e\x38\x9d\x05\x6d\xac\xef\xd3\x25\x08\x1c\xc0\xb2\xed\x55\x38\x00\x65\xfa\x86\x1d\x54\xdc\x5a\x49\x6f\x68\x99\x5a\x2b\x2d\x2a\xab\xf6\x99\x2c\xd1\x85\x14\x04\x3c\x2b\xbc\xb4\xe8\x64\xb2\x21\x9d\xac\xae\xa5\xf6\x04\x25\x33\xe5\x84\xef\xb3\xd3\xc8\x2a\x6c\xa7\x83\x46\x46\x26\x84\xa7\x21\xe9\x04\x8d\xdb\xef\x06\x1c\x62\x93\xf7\x2b\xa4\x79\x1e\xee\x77\x03\x0c\x23\x93\xf7\x5a\xd0\x03\x69\x9e\x1d\xf5\xbb\x41\x24\x0e\xb3\x8a\x48\x77\x73\x14\x86\x61\xda\x6a\xf9\xe4\x3f\xc3\x63\x48\xff\x33\x3c\x56\xc7\x73\x1e\x32\x71\x50\x2d\x43\x39\x51\x62\x2e\x4a\xcc\x33\x6c\xa7\x3a\x16\x10\xa8\x7a\x11\xd0\xe5\xd2\x1e\xd2\x2b\x4c\x90\xc2\xcd\x21\x53\xe9\xa5\x08\xa6\x25\x7f\x65\x59\xf4\x9a\xf0\xa6\x18\x8b\x34\xe8\xc2\x62\x84\x51\x93\xf0\x6b\xb9\xc4\xaf\x79\x89\xa5\xa4\xf4\x4f\xac\x88\x48\xd2\x1a\x37\x0c\x43\x74\x02\x6e\x58\x88\x34\xed\x21\xf1\x4c\x1b\xd9\xd4\x1d\x24\x59\xae\xea\x7f\x96\xad\xaf\x9a\x72\xb0\xd4\xc3\xb0\x8d\x6c\xd2\xa6\x1c\x11\xf5\x30\x64\xce\x02\xbf\x3a\x00\x7c\xa4\x33\x58\x0e\x6d\x7a\x18\x12\x3b\x5f\x87\xed\x47\x85\xb0\xfd\x59\x2c\x27\x0a\x4e\x19\x8a\xce\x0f\x50\x48\x8d\x43\x05\x2c\x19\x8a\x52\xa4\xd3\x55\x4c\x01\xa4\x59\x6e\x03\xf9\x25\x87\x47\x65\x3f\xf8\x8f\xbe\xb3\x1c\x03\xe5\x3e\xef\xbf\x1b\xf6\xed\x8f\x60\x30\x84\x51\x78\xa3\xa5\xe6\x01\x81\xf9\x74\x04\x5d\x98\x8d\x2d\xe8\x2e\x25\x47\x61\x2f\x0e\x29\x2c\xce\x3c\xcb\xd5\x8b\x43\x8a\x8b\x93\x54\xb6\x4f\x9b\xd8\x73\x5f\xda\x4a\xa9\x23\xf7\xd7\x6a\x55\xb1\x2c\xa5\x2d\x36\xb7\x33\x97\x39\xdb\x52\xa1\x93\x08\x38\xf0\x26\x38\x8e\x11\x11\x44\xfc\x28\x67\x03\x5b\x2d\x3f\xb2\x1a\x0f\xed\x9e\x1c\x72\xc8\x1f\x25\xe5\x70\xbb\xbc\x1d\x96\xd3\x02\xfe\x30\x29\x07\xf4\xb5\x8a\x65\x43\xe1\x61\xb7\xa6\x1f\xbf\x5a\xfd\xf8\x28\xad\xc6\xb2\xdf\x87\x0c\x32\xd3\x8b\x6c\xe4\x7d\x96\x81\xcf\x67\x83\x99\x5e\xe4\x01\x7e\xad\x62\x59\x2f\x98\xe8\x85\xd8\xac\xcd\x30\xc4\xad\x96\xcf\x17\x0b\x96\x71\xc3\x7a\xab\xd9\xac\x0c\x56\x8e\xb0\x46\x11\xf7\x07\xd1\x10\x64\x86\x71\x85\xd4\x65\xb6\x85\x61\x14\x76\x4f\xa2\x87\xd4\x78\x0a\x8c\x0e\x0f\x81\x8f\x43\x2a\x4a\x75\xf4\xde\xb3\x67\x1c\x17\x4f\x65\xb1\x84\x98\x0b\x6c\x2f\x31\xea\xbc\x7a\xf9\xe6\xf9\x87\x4f\xef\x9e\xbf\xff\xf4\xee\xf1\xdf\x9e\x87\xa8\xf3\xec\xed\xeb\x4f\xcf\x9e\xbf\xfa\xf8\xb8\x9a\x20\xca\x16\x4b\xbc\xfc\xc7\xf3\x57\x86\x31\xaf\x66\x14\xd3\x64\xed\xde\x41\xa5\x85\xa3\x83\x4a\x2f\x8e\x35\x97\xaf\x21\x17\x22\x9b\xd9\xfe\xe1\x78\xc5\xf8\x5c\xbb\x19\x57\xa3\xf6\x3d\x3c\x66\xd1\x14\x49\xd7\x4a\x29\x1b\x85\xde\xbf\x79\x10\x69\xcb\xce\x59\x76\x75\x67\x2c\x62\x96\x77\x81\x53\x7c\x8a\x13\xcc\xaf\x43\xb3\xbf\xb2\x3c\x6d\x6b\xda\x9d\x5d\xe5\x69\xc6\x7c\xb4\x90\x78\x4a\x59\x8c\x58\xa8\xa2\xbe\x95\x5c\x36\x47\xb3\x19\x22\xf1\xd3\x09\x4e\x62\x5f\x7b\x62\x12\x08\x5c\x8b\xdd\xff\xae\x8e\x9d\xa9\x72\xc0\x94\xa5\x3e\x80\xca\x65\x27\xf2\xbd\x87\xcd\x98\x8e\xf8\xf5\x0c\x35\x26\x7c\x9a\x3c\x7a\xa8\xff\x45\x51\xfc\xe8\xe1\x03\xf5\x47\xb4\xf3\xe8\x61\x3a\x8b\xc8\xa3\x7f\x3c\x7c\x20\xff\x3e\x7c\xa0\x12\x1f\xc8\xe2\x9e\x80\xa7\x1c\x02\x18\xcb\x76\xa6\x24\x4a\xe2\xdc\x8e\x31\x4b\x8d\x10\x49\xf6\x53\xf3\xbf\x1a\x27\x15\x87\xa3\x14\x41\xcc\x70\xb2\x50\x1d\xcb\x2a\x71\xa2\x02\x99\xa7\x88\xb7\x47\x94\xc4\x72\x01\xa2\xa4\x7d\x11\x25\x38\x96\xf2\xec\xf4\x81\xfe\x4d\x59\xfa\x20\xa5\x53\xc4\xf1\x14\x7d\x4e\x7a\xc5\x10\x52\x15\x4f\x1b\x32\x0a\x4a\x07\xa7\x2a\x1a\x4a\x8e\xf8\xbb\xc3\xcc\xf7\x83\x9d\x68\x8e\x31\xeb\x4c\xa3\x99\x8f\xc1\x52\xcd\xa8\xab\x08\x2e\x78\xdc\xc2\x96\xe3\x40\xdb\x6d\x9d\xf2\x92\xab\x9a\x4a\xc3\x9b\xa2\x8f\x54\xed\x6e\x1f\x93\x51\x32\x8f\x51\xea\x7b\x1d\x0f\x18\xfa\x2a\xb3\x0b\x55\xc1\x61\xec\x80\xbd\x59\x1c\x44\x9e\x6d\xb9\x74\x96\x60\x2e\xeb\x43\xb1\xfe\x33\x3a\xf3\x01\xc4\x21\xd3\xe6\xc0\x22\x3d\x2d\x80\xc4\x19\xc6\x4a\x5b\xad\xb4\xe4\x7c\xb5\x9a\xe2\x13\xd0\xe7\x41\x0e\x20\x82\xf9\x06\xa1\xe5\xb2\x08\xf4\x8b\xbd\x2f\x57\x34\x9e\x09\x9b\xda\x51\x58\x2a\xe7\x68\xb1\x40\xd6\x8c\x2d\x97\x2b\xf7\x9d\xbd\xd7\x34\x39\xfc\x20\xcb\x2d\xba\x46\x2e\x55\x75\x14\x5f\x1d\xbd\xd0\xc2\x5b\xb6\xbf\xd3\xd2\x32\x16\x37\x1a\xca\xef\x8e\xa5\x24\xf0\xaa\xee\xe8\x1c\xd6\xb9\xca\xc5\xf0\x62\xd1\xf4\x4b\x6e\x8e\x1b\xd8\x78\x71\x94\x51\x45\x14\x68\xbd\xf8\x83\x21\x94\x7e\x6b\x70\xd8\xec\x65\x04\xb7\xf4\x69\x9a\xd9\x7f\xc3\x34\x44\x83\x12\xc8\xa1\x0f\x4e\x9a\x3e\x09\xfd\x28\x4c\x3b\x04\x5d\x71\x1f\x80\x4e\x4c\x09\x02\xd2\x13\x80\xb4\x45\x8f\x94\xf7\x44\x00\x9b\xe2\x3a\xd4\x77\x97\xdc\x80\x27\xa2\x49\x70\xa2\x9d\x9c\xce\xc1\x0d\x16\x5d\xa0\xe1\x7c\x39\xc6\x24\x4a\x92\xeb\x1b\xd1\x01\xb2\x58\x28\xe2\x2f\xed\xa8\x2e\x2f\x16\xe6\x97\x0f\xb2\x92\x78\xec\x63\xed\x7a\x8e\x2e\xb3\x68\xd2\xca\xb5\xaf\x63\xe2\x9a\xc8\x8c\x5f\xcc\x62\x2a\xfd\xb3\xe6\x53\x88\x80\xed\x26\xd2\xe0\xe4\x8a\xb3\xe1\xa2\x63\x57\x04\xb4\x13\xca\x1f\x61\xbb\x07\x0e\x3c\x55\x5c\x86\xf1\x2c\xf9\x84\x16\x73\x13\x16\x52\x3a\x24\x9a\xea\xc0\xa0\xaf\xa3\x99\xac\xb3\x58\x78\x1f\x90\xaa\x6e\x7a\xa3\x76\xc7\x98\xd1\xa9\x89\x22\xfa\xd8\xa0\x14\x5d\xe5\xc1\xff\xf3\xfb\xc1\xcf\x78\xf1\x12\x10\xee\xf7\x83\x1f\x17\xbd\x1f\x16\xc7\x47\xc0\xef\x07\x4f\x93\x68\x3a\x43\x31\xe8\x4b\x20\xff\xe7\x81\x12\xe6\xe7\xd4\x89\x1a\x69\x65\xbe\xc0\x8d\xd3\x9d\xdf\x4b\x22\x8f\x4e\x23\xe2\x1c\x4d\x67\xbc\xc1\x69\x43\xea\x92\xcc\x47\x7c\xce\x50\x83\x50\xd2\x96\x5b\xe4\x34\xc9\xbd\x03\x76\xfe\x49\x5e\x92\x86\xbc\x08\x45\xf9\x53\xd4\x30\x45\xa0\xac\x10\x89\x8e\x35\x94\xb3\xd8\x54\xf9\x48\x9c\x44\x17\xa8\x11\x35\x1c\xbb\xae\x31\x45\x7c\x42\xe3\x8e\x07\x96\xbe\xe5\x39\x55\x2f\xb0\xe6\x16\xf8\x62\xc1\x1f\x21\xbd\xe3\xc4\x8e\x14\x0c\xa7\xfe\x3a\xb0\xbc\x2f\x43\x52\x88\x75\x75\xc2\x1e\x72\xe9\x85\x99\x0c\xd8\x30\x44\x03\x96\x61\x6b\xb2\xb4\x51\x75\x26\xaa\x0a\xc5\x99\x3e\x02\x90\x86\x78\xd0\x15\x8c\x00\x1e\xf4\x4c\x1d\xbf\x0b\x79\x27\x43\x12\xc0\x1f\x50\x18\x0d\x21\x01\xbb\xf8\xf2\xcc\xc0\x84\xd8\xad\x7f\x62\xbc\x70\xfe\x24\x91\x53\x47\xe1\x28\x1f\xdb\x8f\x69\x74\x53\x7c\x68\x74\x62\x2d\x1c\xa8\xb3\x51\xdc\xde\x14\xeb\xdd\x8d\x5a\x0d\x0b\x79\x27\xa1\xf4\x7c\x3e\xfb\xc5\x10\x04\xd6\x88\xd8\xa6\x23\x52\xd2\x8f\x33\xc4\xdb\x53\x94\xa6\xd1\x59\x91\x96\x30\x28\xfe\x4c\xd1\x23\x63\x7c\x56\xc5\xfa\x0e\x70\x39\xa8\x0d\x0a\x5f\x62\x3e\x69\xeb\x7e\xa7\x55\x07\xf9\x62\x43\xdd\x39\x0d\x63\xc8\xe2\x0a\x63\xdb\x75\x32\xb6\x5d\x9b\xb1\xed\x0e\x03\xed\xcd\xff\xb7\xb4\x83\x08\x67\x18\xa5\x90\x87\x4d\xbf\x02\xac\xe7\x04\xd6\x1b\x82\xc5\xc2\xfe\x84\x69\x98\xf9\x12\x92\x6e\xaa\x8d\x0f\x3e\x9c\xbe\x63\x28\x15\x74\x7a\x94\xa1\xa4\x48\x0b\x6b\x54\x89\xc7\xbe\xa0\x8e\x40\x67\x8c\x49\x5c\xf4\x3a\x6c\xee\xc8\x30\x94\xbb\xfb\xa0\x0c\x71\x2e\x8e\x7e\x1a\xfa\x5d\x48\x72\x3f\x46\x7a\x5c\x6a\x12\xfd\x39\x30\x39\x30\xcd\xd9\xb0\x28\x4c\x61\xba\x3c\x28\xb8\x84\x3f\x47\xd7\x29\xa4\x96\x77\x98\xcc\x25\x45\x47\x3d\x7f\xbf\x63\x68\x8c\xaf\xa0\xf7\xc0\x5e\xfe\x6c\x97\x08\x1e\x4e\xb9\x06\xd8\x66\xcf\x2a\x2d\xe2\xf6\x74\x9e\x70\x3c\x4b\x90\x5d\xe2\xb6\x27\xb4\xc0\x4f\xdd\x6a\xa7\x0c\x86\x90\x67\x6b\x85\x40\x87\x21\x49\x6a\x38\x96\xca\x3b\xa5\x34\x41\x91\x8c\xa3\xa7\x2a\x64\x9e\xb0\x5b\x2d\xb4\xcc\x17\xa0\x9b\x15\x10\x54\x1f\x87\x9e\xea\x90\x07\x16\x0b\x7e\x1b\x67\xc8\xb6\xcc\xd5\xe0\x70\xe5\x01\x9f\x86\xa4\x43\xd0\xa5\x7c\xe2\x91\x4f\x0d\x34\x89\xd5\x47\x1a\x12\x83\x80\xa5\x94\x46\xf3\x67\x99\xd7\xe2\xc7\x3e\x92\xe4\xbe\x73\x6b\xfa\x59\x98\x0b\xb0\x04\xca\x41\x99\xa9\x95\x80\x4e\x44\xae\x7d\x2e\x37\x2c\x9d\xe2\x34\xa7\xfa\x54\x91\xf7\x1f\x7e\x79\xd7\x11\x04\x46\x02\x3a\x7c\x82\x88\xcf\xb2\xf9\x61\x7e\x02\x36\x26\x70\xcb\xf8\xaa\x8a\xfa\x2c\x76\x2b\x2b\x76\x3f\xf8\xbd\xe2\x01\x2b\xf7\xf3\x42\x8a\x99\x0c\xde\x9c\x26\x11\x39\x0f\xf2\x73\x37\x53\xe7\x1c\xea\xbf\x56\x8e\x2c\x09\x95\x17\x1d\xe9\x9d\x00\x53\xf2\x82\xb2\xaa\xff\x9c\x1d\xb7\xbc\xe7\x1d\x14\x96\x2a\x23\x07\x67\x98\x4b\x77\x15\x7e\x21\x3d\x8e\xd2\x09\x62\x22\x59\xd0\x8a\x92\xd9\x7a\x30\xe8\x7c\x6a\x0f\x1f\x9c\x01\xcd\x63\x35\x3c\x00\x8a\xda\x2f\x0e\xa9\xfe\xaa\xf5\xe5\xb4\x2d\x10\xc0\xa6\x5c\x72\x76\xfc\xb9\xe5\xf4\x9e\x7f\x65\xc1\x54\xee\x04\x53\x18\x46\x7f\x2d\x17\x90\x45\x14\xb0\xfd\x62\x3f\x8b\x38\xca\x43\x21\x84\x61\xc8\x25\xb2\xf3\x06\x2a\x45\xe6\x0f\x25\x11\xdf\x47\x41\xc5\x25\x98\xa8\x6a\x4a\xbe\x91\x79\xba\xac\x20\x5b\x45\x55\x1f\x81\x20\x63\x63\x32\xcf\xe4\xc8\x6a\x40\xf5\x71\xe8\x35\x15\x6b\xe1\xe0\x1b\xc5\x3c\xd3\x04\x2d\x16\xbe\xfe\xd5\xb9\x8c\x18\xf1\xbd\x77\x09\x8a\x52\xd4\x10\xbb\xe6\x7f\x55\x64\x8b\x88\xa5\xe8\x7f\x05\x0d\x2f\x7f\x35\x54\xb3\x69\xc7\x03\xb0\x50\xd3\x97\xf1\xf5\x04\xc3\x00\x3a\x29\x8f\x46\xe7\x00\xc0\xac\xc3\x6f\xa2\x37\x60\x5b\xdc\x95\xa7\xb4\x91\x00\x7b\x17\xf4\x5b\x81\x1c\x5c\x17\xb2\xe8\x8e\xaf\x1c\xeb\x6a\xcb\xc8\x0f\xcf\xd9\xd9\x0e\x8b\x2e\xdf\xce\xf9\x6c\xce\xc5\xdd\x27\x59\x74\xbf\x0b\x2d\xb7\x8c\x82\xae\xa0\x9d\x0a\xa6\xd3\x7c\x22\xe9\xe8\x21\x66\xdc\x9e\x49\x38\x50\x22\x25\x22\x6f\x60\x79\xaf\xc9\xde\xc3\xc4\xdc\x70\x57\x1c\x8e\xf2\x07\xb6\xa4\x7f\xb3\x0c\xa4\xb2\xca\x28\x03\x29\x07\x33\x0e\xb3\x84\x9a\x70\x29\x63\xf3\x56\x3c\xf6\x91\x8c\xf7\x34\xca\x4e\x4a\x9c\x0b\x81\xc6\x94\x4d\x23\xfe\x5a\x41\xf2\xc7\xb0\x78\x31\xc4\xf9\xe0\x82\x68\x09\x47\x40\x89\xd6\x26\x05\xa1\x54\x1e\x9e\x04\xf7\xfd\x51\xe5\x6a\x19\xc1\x12\x18\x60\x56\x6c\x0e\x45\x57\x83\x14\xea\x81\x04\x13\xa8\xa7\x20\x18\x2d\x41\x50\xee\xdc\x64\x7d\xe7\xb6\xdb\xde\x45\xee\xe0\x1e\xc5\x9c\xb7\xbc\x05\xc5\x7d\x5d\xad\x5b\xc7\x11\xf4\xed\x8f\x20\x8f\x2f\x52\x98\xcc\x0a\x3d\x00\xa4\xc4\x6f\xbb\xe9\x64\xd1\xec\x5e\x85\xc5\x52\xb0\x64\x98\x8f\xb2\x04\x2f\x27\x8c\x0f\x4a\x29\x03\x34\xdc\x7c\x68\x16\x89\x26\x91\x1c\x9b\x46\x65\x45\xd7\x4d\xb0\x9e\x03\x93\x56\x68\xc0\x7b\xc1\x86\xb7\xde\x7a\x95\xc0\x14\x25\x61\xf9\x8e\xef\xb9\x37\xcb\x2c\x3e\x49\xbe\x0b\x53\x18\x01\x98\x28\xcc\x6b\x38\x2d\xa0\x5d\x2a\x66\x0b\x81\x21\x82\x73\x48\xcc\x32\x37\x25\xda\x5c\x2c\xa4\x1c\x28\x43\xd7\x04\x0a\xc2\x7d\x87\x45\x2f\xd3\x76\xb7\x5b\xec\x2d\xb0\xd1\x16\xa4\xe7\x17\x21\xd7\xc8\x77\x0e\x2a\x5d\xa5\x08\xde\x44\x49\x42\x2f\x9f\x48\x36\xa3\xd9\x83\x72\xd2\x5e\x48\xdc\x1f\x78\xaf\x5f\xbf\x6e\x3c\xa3\xb0\xf1\xeb\xaf\xbf\xfe\xea\x2d\x01\xb4\x9e\x69\xb4\x36\x54\x14\xa2\x4e\x0e\x00\xa6\x21\x92\x7e\x9a\x4f\xd1\x98\x32\x71\xb1\x4a\x37\xf2\xec\x89\xfa\x1c\x85\x69\x27\x1a\x73\xc4\xe0\x58\x67\x3c\x96\x5f\x71\x98\x9a\xfb\x14\x4e\x42\x4f\xce\xab\xb8\x58\x23\x15\x6c\x26\x0c\x69\x1e\x79\x4c\x34\x3a\x2b\x89\x37\x68\x7e\x09\xfa\x33\xd0\x9f\xb7\x5a\xfe\xbc\x54\x64\x0e\x60\x1c\xc6\x82\xb2\x7c\xf2\xfc\xc5\xdb\xf7\xcf\x87\x0d\xd1\x4a\x03\xa7\x8d\x37\x6f\x3f\x36\x54\x77\x1b\xb9\x1f\x59\x20\xfa\xa1\x52\x3d\x38\x7b\x14\xce\x41\xbf\xb8\xa7\x19\xbc\x91\xf7\xe7\x44\x3b\x29\xa5\xd9\xed\x79\xa3\xaa\x05\xf3\xec\x66\x8d\x97\x4b\x10\x24\xad\x96\x9f\x94\x3a\x95\x64\x9d\x7a\xfb\xa6\xf1\xf6\x7d\xc3\xd5\x35\x4a\x1a\x94\xd5\x74\x30\x9f\x5a\xd1\xc9\x64\x8b\x3e\xe6\x35\x83\xa4\xd8\xcf\x51\xab\xe5\x8f\x4a\xfd\x1c\x65\xfd\x7c\xfc\xe2\xe3\xf3\xf7\xc5\x0e\xca\x05\x2d\xf7\x4c\x26\x7a\x70\xf6\x30\x1c\x6d\xd1\x2b\x59\x2b\x18\x15\x3b\xd4\xf4\xc7\xad\x96\x3f\x2e\x75\x69\x5c\x9a\x3a\x47\xc7\xd4\xcc\x39\xbb\x97\x6d\x3d\xd1\xc5\x31\x00\x65\x8c\xb5\x66\xe6\x64\xd5\x60\x5c\xec\xe7\x6a\x08\x1e\xa1\xbc\x11\x35\x14\x46\xcb\x80\x19\xe8\x36\x20\xa9\x79\x65\x9d\xc2\x8a\x2e\x80\xfd\x6e\x5a\x61\xbb\x5a\xad\x26\x4e\xdf\x44\x6f\x04\x27\x58\x04\x53\x3e\xcc\x5b\x63\x63\x74\x35\x4a\xe6\xe9\xb7\x7d\xff\xa2\x4e\x82\x53\xae\x62\xa1\x90\x50\x7d\x55\x23\x14\x5a\x1a\x56\xe5\xeb\xd3\x9a\x44\x71\x77\x4a\x83\xac\xe2\xf5\x49\xab\xd7\x27\xdd\xed\xfa\x54\x14\xfc\xb7\xbb\x5a\x90\x84\x4d\x43\xa1\x3e\x9f\xce\xf8\xb5\x6f\x87\xf5\x43\xa0\xba\x70\x52\x23\x15\x8f\xfd\x26\x29\x5e\x38\x51\x65\x1d\xcd\xdc\x52\xb3\x88\xb8\xb0\x88\x51\x79\x11\xb1\x7a\x9f\xdf\x7e\x11\xa5\xa6\xc3\xfe\xd4\xdd\xee\xd4\x59\x93\xf8\xd9\x4f\x9d\xe3\x29\x71\x2b\x72\x77\xd3\xd2\x4a\x00\x3c\xda\xa2\x86\x7e\x4f\xd8\xb8\xbc\x16\xcc\x6d\x5c\xde\x9c\x89\x1d\xb6\xf6\x0e\x77\xd0\x4e\x9c\xa3\x83\x5a\xcf\x83\x72\xdf\x76\xef\xd7\x56\x30\x3b\xf1\x99\x5c\xe0\x9b\xa2\xeb\xe7\x9a\x00\x63\x66\x27\x2e\x37\x01\xfc\x2e\xdb\x0b\x1b\x01\x67\x5b\x01\x7f\xa5\xb7\xcd\x46\xa0\xc9\x56\xa0\xdf\xe8\x1d\xb6\x11\x68\xbc\x15\xe8\x17\x7a\x33\x6e\x04\x9a\x6e\x05\xfa\x65\xbe\x6f\x37\x82\x1e\x6d\x05\xfd\xf9\xd5\x76\xd0\xd3\xad\xa0\x3f\x2d\xb0\xef\x1b\x35\x30\xb7\x1a\xd8\x01\x1f\x1a\xac\xf3\xc7\xb1\xf1\xab\xee\xbb\x2f\x8e\x5b\x9f\xa7\xe8\x09\xe2\x97\x08\x11\x2d\x9a\x55\xbd\xb0\x38\x73\xfb\x16\x24\xf6\x2d\x68\x56\x22\xbb\x02\xd9\xea\x2b\x90\xed\x7a\x05\x9a\x8b\x63\xbf\xe4\x9b\x2f\xf9\x89\x5f\x27\x9a\x51\x8f\x59\xe2\x7c\xca\xcf\x37\x94\xa0\xa0\xd9\x5b\x02\x60\x09\x5e\x24\x6d\x94\x65\x87\xcd\x6e\x95\x3c\x5a\xb1\x31\xcc\x7a\x7d\xf6\x8d\x91\xd3\x2c\x5f\x28\x2d\xab\x1f\x80\xc8\x81\xa5\xd5\x61\xde\x1f\xfb\x28\xbc\x31\x03\x0c\xd0\x32\x40\xd6\xca\xa3\x0e\x25\xad\x96\x43\xf7\xb2\x43\x49\x9f\x84\x03\xf1\x77\x18\x94\x14\x62\x3b\xd2\x13\x81\x4f\x64\x6d\x31\xd7\x09\xe2\x48\x56\x71\x72\x2e\x86\x88\xc1\x63\x9f\xb4\x5a\x4d\xd2\x49\xe9\x14\x39\x35\x34\xd2\x01\x1a\x2e\x16\xd9\x3b\x97\xf8\x6c\xb5\xe6\x2a\x92\x79\x91\xf1\xa9\xca\x7f\xf3\x25\xac\xb2\x3e\xd5\x49\x49\xa4\x87\x85\xe2\x98\x93\x7e\x12\x18\x38\xf2\x75\x38\x91\xef\x71\x7d\xf5\x27\xf4\xa4\x1e\x83\x17\xe8\xbf\x59\x7e\xab\xe5\x9b\x12\xa6\x2e\x80\x65\x26\x2b\x01\xab\x37\x66\x55\x93\xb9\x7d\x86\x36\x0e\xa1\x60\xeb\x0f\xec\xd5\x9a\xbf\x14\xb5\x66\x96\xab\x35\x93\xdd\xd5\x9a\x49\x55\xad\x99\xac\x53\x6b\x26\xb9\x5a\x33\xd9\x50\xad\x99\x6c\xaf\xd6\x4c\x40\x71\xa4\x5f\xba\x5a\x33\xbb\x37\xb5\x66\x4b\xd1\x85\x2b\xa5\x66\x12\xb2\x41\x77\x08\x71\xc8\x72\xa5\xe6\x06\x91\x6f\xed\xf8\x76\x5a\xcc\x7f\x43\x3c\x24\x6e\x8d\x30\xec\x54\x64\x26\xb6\x5e\x14\xde\x0e\xa7\x55\x0c\x3a\x6e\xa5\x2a\xb9\xc7\x75\x5f\x0c\xae\xdb\x9b\x70\x7c\x59\xb8\xee\x5e\x4d\x38\x4c\x28\x57\x6d\xc0\x81\x43\x22\x70\x1d\x0d\x89\xc0\x75\x78\xec\x4b\x62\x0a\xa7\x4f\x73\xfb\x0d\x9c\x4d\xb7\x83\x8a\xc4\x9d\x54\x1b\xab\x2d\x6f\x85\x19\x3f\x7c\x36\x13\x8f\x2d\xcd\xdc\x36\xc3\x93\x15\xbe\xa2\xbc\x98\x7b\x4c\xf9\x25\x60\x4a\xfc\xcd\x60\x4a\xfc\x55\x60\x4a\x7c\x6f\x98\x92\x1a\x4c\x89\x43\xe2\x30\x75\x83\x0e\x35\xab\x8d\xd5\xff\xf0\xd8\x37\xba\x2c\x92\xb1\x2e\x60\x5b\x0a\xfa\x34\xd0\xc9\x6a\x8b\x01\x3f\x92\xea\x13\xcc\xb2\x97\x90\xc5\x94\x6d\x84\x83\xb7\x97\x38\xdc\x82\x89\xa0\xac\x5e\x32\x28\x13\x70\x61\x04\x53\xb0\x04\x5a\x71\xc1\xee\xc6\xea\x2a\x81\xa3\x3f\xfa\xb7\x09\xc2\xeb\x53\xb0\x45\x07\x23\x78\xb3\xac\xed\x8a\xc9\xbc\x95\x01\x21\x75\xdf\x2e\x91\xf3\x76\xa1\xf6\xed\x12\xad\xba\x5d\x36\x34\x1a\xac\x9a\x53\x1b\xe3\x14\x76\x86\xda\x31\x42\xb3\xda\x22\x38\x6d\x6b\x25\xfa\xf5\x52\x4c\xed\xed\x45\x49\x81\x60\x02\x47\x70\x0c\x63\x38\x81\x33\x38\xcd\xaf\xa8\x0b\x6b\x21\x2e\xbe\x32\xc3\x87\x6c\x90\xd7\xf9\x0c\xb1\x56\xab\x6e\xe7\xf0\xc2\xeb\x07\xeb\xe4\x1f\xb0\x10\xab\x95\x75\xec\xcf\x3c\x52\xab\x72\x49\x21\xd3\xd4\xb6\x63\x1d\x2b\x72\x6b\xbf\xf0\xa5\xae\x11\x62\x02\xc3\x2f\xad\xce\x9e\xe6\x17\x97\x5f\xd0\xe6\xe1\x00\x38\x11\xf4\xd3\x88\x10\xca\x1b\x02\x62\x23\x6a\x8c\x92\x28\x4d\x1b\x51\xda\x88\x32\x82\xc3\xb3\xa0\x9f\x29\xe8\x16\x46\x14\x28\xd0\xb8\x54\x11\x98\x50\xd3\x84\x5c\xe0\x42\x62\x4d\x42\x68\x7f\x48\x2d\x7c\x52\x98\x08\x71\x9f\x7b\x72\xe0\x1e\x26\x0d\xa2\xa2\xd1\xeb\x09\x11\x77\x7f\xed\x53\x94\x32\x3d\x23\x60\x99\xf7\xf2\x93\xa1\xab\xf4\xce\xfc\x14\x5a\xd4\x4f\x66\xe0\xf1\x1e\x8d\x13\x34\xe2\xad\x96\xfe\x21\xb8\xf2\xbe\xf5\x3b\x28\x53\x69\x15\x97\x63\x7a\x26\x4e\x9a\x95\xfb\xbe\xe8\x8e\x41\xdf\xfa\x90\x03\xa5\x80\xd8\x0c\x43\x1f\x85\x57\x82\xb6\x3a\xc9\xc3\x80\xab\x1b\x55\x5a\x1c\x98\xfb\x62\x5d\xb0\x58\x02\x73\xbd\x05\x2c\xfb\x2f\xff\x55\xed\x31\x10\x60\x45\x50\x2d\xc5\x86\x16\x63\x58\x2c\xec\x7d\x7d\x69\xd3\x97\xfe\xa5\x69\x2d\x95\xce\x1a\xd5\x40\xde\x8e\xcb\x14\x91\xe9\x6d\xe7\xd3\x27\x39\xdc\x4f\x9f\x42\x0e\x91\x6a\xc0\x82\xfd\x3c\x77\x53\x66\x51\x08\x35\x74\xa8\x9e\xf4\xc5\xa2\x69\xa6\x3f\x3b\xbd\x46\x7c\xdc\x13\xf3\x52\xc9\xed\xa4\x93\x68\x5a\x28\xe2\xc0\x09\xef\x18\xbd\xba\xce\xc5\xd0\x82\x50\xd4\x83\x50\x06\x39\x35\x44\x5a\xa5\x31\x5f\x14\x87\x03\x1b\x73\x82\x9b\x25\x00\x00\x36\xbb\x9a\x30\xcd\xd0\x53\xb3\xb7\x5c\xfa\x55\xa9\x7a\xe6\xc9\x4c\x2e\xbe\xb4\xe1\x35\x4b\x7d\xa5\xe3\xce\x5b\x78\xeb\x80\x85\xd5\x4e\x10\x98\xd1\x00\x10\x03\xe5\x5b\x90\x85\xa4\x13\xcd\x66\xc9\xb5\x84\x91\x17\xc8\x3a\xf0\x41\x65\x30\xfb\x90\x7c\xb0\xd7\x53\x10\xdc\xc6\xbe\xaa\x19\x86\x17\xbe\xd8\xaa\xf9\x5c\x66\x67\x86\xf7\xdf\xfa\x08\x04\x3c\x07\xf3\x56\xf3\x23\x99\xf4\x1f\x59\x68\xe6\x3d\x1a\x23\x86\xc8\xc8\xe0\x1a\xd1\x8b\xc6\x24\x4a\xc9\x7f\xf0\xc6\x29\x42\xa4\x61\x70\x5a\x8a\xe2\x46\xbb\x91\xce\xc5\x85\x09\x0a\x25\xc4\x5a\xa0\xd8\xcb\x0d\xc3\xf2\xa6\xaf\xac\xcb\xe7\xca\xbd\x7b\xfb\xf9\x09\xb2\x52\x9d\xf7\x49\xbe\xa1\x17\x0b\x67\x2d\x71\x27\x14\x2f\x86\xc7\x45\x3c\xd3\xe0\x82\x6f\x42\xfd\x15\x37\x84\xc6\xec\xa5\x68\xdd\xe5\x58\xde\x56\xf4\xee\x25\x08\xd0\x80\x0f\x43\x06\xad\x81\x7f\xcc\x75\x4d\xcc\x13\x5c\xfe\xc6\x6b\xeb\xa4\x11\xd0\x19\x53\xf6\x3c\x1a\x4d\x8a\xa4\x13\x1d\xa0\x61\x48\xd4\x03\x0d\xa4\x36\x96\x6e\x36\xed\x4f\xe5\x61\xcb\xc2\xd1\xcd\x62\x02\xf4\x73\x94\x4d\x17\x0b\x6a\xdf\x51\x82\x8a\xa6\x45\x14\x4e\x43\xa6\x19\x1f\xd0\x61\xe8\x02\xb1\x54\xfd\x8a\xe7\x23\xfb\x61\x49\xdd\xb4\x96\x58\x06\x32\xb0\x58\xb0\x25\x80\x14\x40\x6c\x91\xc6\x85\xf6\x64\x73\xb2\x37\xc5\xf4\x3e\xad\xde\x9c\xd8\xdc\x9c\xb0\x90\xa9\x89\x39\x00\xb3\xcd\x5c\x6e\xa1\x7e\x69\xa9\x18\x9e\x40\xee\x00\xd2\x7c\xa5\xce\x2d\xff\x85\x07\x6b\xb8\x70\xc5\x89\x54\x19\x67\x27\xbb\xbf\x58\xf8\xac\xea\x6a\x69\x43\x5e\xf5\xf5\x37\xc3\xab\xbe\x36\xbc\x2a\x00\x8b\x05\x6f\xb5\x04\xd5\x58\xb1\x0f\x35\x8c\x9e\xa0\xee\x7c\x14\x32\xf3\xb6\xd3\x85\xd8\xbe\xbc\xcc\x09\xbb\x49\x03\x0c\x89\x4b\x57\xe9\x51\xc6\x34\xf6\x6f\x62\xf9\xac\xde\x5d\x06\xfa\x57\x4f\x53\x75\x68\x40\x0e\x0f\x87\xcb\x25\x44\x05\x2c\xa4\x70\x26\x5a\xc2\x71\x80\x97\xcb\x4d\x39\x69\xb5\x47\xee\x99\x8b\x96\x08\x07\x46\x82\x60\x4b\xc3\x66\x2f\x9f\x15\x7b\x46\x9c\x02\xa0\x65\x71\xda\x94\x86\x03\xd3\xd2\xa0\xdc\x6f\x04\x92\x72\x21\x88\xca\x73\x94\x2a\x99\x8f\x9c\x24\x5b\xec\xc0\xae\x6f\x22\x73\x7c\x58\x26\xf9\x61\x4e\xc9\x4f\x9a\x4b\x7e\xac\xbb\xf0\xf5\xe7\x16\x06\xec\xc0\x6e\x9e\xce\x71\x12\xbf\xd5\x0e\x14\xd2\xf0\xb7\x02\x07\xfa\x12\xa2\x9c\xaf\x75\xb8\x86\xdd\x51\xa2\xf0\x0e\xb2\x6a\xd5\x23\x67\xd5\x23\xbb\xea\x91\x56\x8f\xae\xd4\x3d\x76\xd6\x3d\xb6\xeb\x1e\xcb\xba\x38\x7c\x99\x71\x59\xd9\xb4\xa1\x4b\x45\xbc\xf9\x18\xde\x94\x09\x72\xeb\xe2\x56\x36\xc0\x06\x6d\xf9\x00\x2c\x61\xea\x20\xdf\xb3\xf2\x69\xa9\x3c\x64\x92\x84\x5b\x82\x62\x70\x05\xc9\xcc\xe7\x93\x6c\x31\xfa\xef\xc2\xca\xe1\x6f\x76\x97\x39\x57\xfc\x5b\x81\x63\x80\x19\x1d\xaf\x7c\x2a\xfa\xfa\x96\x08\xcf\x7d\x0e\x32\xc1\x29\xed\xa4\x5a\x42\x4a\x3b\xc4\xc8\x46\x4f\x8c\x51\x94\xb6\x2c\x3e\xc0\x83\x48\xdc\xec\x43\x29\x73\x97\x3f\xc1\x52\xd3\x9e\x29\xb8\xa1\x1d\xe4\xa7\xf9\x76\xa7\x9d\xb1\x0f\x72\x47\xaf\x59\xf7\xde\xbb\x1c\xe5\xe5\xa4\xab\xdf\x14\xfc\x59\x91\x79\x54\x82\x0d\x35\x0c\xb9\x24\x8b\x85\x23\x5f\x9e\x04\x45\x6e\x4b\x9c\xdb\x7f\xef\xe7\xb6\xc5\x08\x7a\x26\x18\x12\x00\x01\x92\x68\xe4\x69\xe8\x9b\xc7\xca\x4f\x9c\x45\xa3\x73\x14\x43\x5a\x4e\x88\xca\x09\xc6\x8d\xde\xa7\x18\xcd\x10\x89\x11\xe1\xff\x83\xae\x9f\xd2\xe9\x2c\xe2\x99\xdd\xa1\x2b\x2f\x59\x91\x37\x5a\x91\x37\x2d\x1c\x30\xbf\x2a\x5a\x77\xd0\xc9\x19\xa3\xc7\xdd\x5c\xf7\x07\x41\xea\x36\xd0\xd5\x8c\xa1\x34\x15\x8b\x22\xf1\x2f\xc2\x7c\x82\x98\x40\xd5\xa2\xb6\x34\x37\xb2\xd8\xf0\x03\x8b\x59\x29\x6d\x29\xde\x6a\x59\x57\x38\xbc\xb1\x2e\x61\x63\x15\x84\x6c\xb2\xb2\x4c\x72\x2e\x97\x00\xf2\x56\x4b\x71\x84\x4b\xe0\xa7\x50\x3b\xd3\xe4\x4a\x9d\x39\x7c\xee\xa7\x96\xab\xc5\xd4\x60\xef\x83\x53\xc5\x59\xa4\x39\x62\xac\x22\x1f\xc8\x0a\x78\x12\xe2\xb0\x7b\x82\x1f\xf2\x13\x7c\x78\x08\xd8\x00\x0f\x2d\xcc\x80\x33\x9c\x79\xed\xbf\xf5\x51\x18\x49\x22\x44\x33\x37\x11\x1c\x88\xc6\x86\xc6\xf6\x8a\x09\xde\xcb\xfb\xa4\xb1\xa2\x07\x63\x28\x98\x11\x00\x65\x55\x91\x63\x74\xbb\x26\xe5\x0c\xb3\x11\xe1\x4c\xe7\x3c\xd6\x39\x46\x50\xea\x59\xb6\x61\x59\xe6\x34\xba\x3e\x45\x3f\x93\x4b\x16\xcd\xe4\x26\xf7\xe0\xfb\x3c\x53\x7a\x0f\x40\x33\x0f\x66\x3b\x1e\x40\x94\x39\xf0\x0c\x53\xe8\xe3\x70\x70\x73\x8e\xae\x03\x2f\x8d\xc6\xe8\x6f\x88\x7b\x9a\x22\x70\x62\x35\xfb\xdc\x70\xb0\x5c\xc2\xbc\xea\x07\x77\x55\x0b\xc5\xa9\xca\xa9\xaa\x2c\xb9\x3e\x5d\x3d\x8a\x63\xb9\xff\x56\x36\xfd\xc9\xbf\xf2\xd3\x7c\x33\x01\x68\x55\xd3\x3c\xaa\x20\x0c\xe5\xba\x8b\x7a\x7a\xc4\x84\x72\x3c\xbe\x36\x77\x9b\xc2\x9b\xba\x10\x80\x3c\xeb\xc2\x6c\x9e\x4e\x9e\xeb\x75\x29\x77\x22\x17\x2c\x71\xc7\x45\x54\xb8\x6e\xd9\xa3\x5e\x9f\xb5\x7b\x41\x57\x6c\xa7\xde\x09\x7e\xc8\xe4\x76\x22\x03\xdc\xee\x95\x36\x94\xd6\x51\xe4\x61\x75\x60\x76\x67\xe4\xd0\x80\xbd\xdf\xb8\xda\x6f\x10\x65\x3b\x8e\x00\xe5\x2a\x42\xb9\x79\x98\xab\x5f\x5a\x93\xb0\x68\x99\xbe\x72\x36\xf4\x89\x8c\x60\x5e\x3b\x98\x2f\xb3\x29\xfa\x94\xe6\xe1\x32\x5c\x93\x64\xbc\xbf\x9f\xa3\x6b\x28\x28\x6e\xd5\x1b\xa9\xd6\xa7\xc9\x85\x83\xea\x50\x8b\x40\xcb\xeb\x28\x1b\xe6\x46\xf0\x08\x0d\x9c\x80\x2c\xd7\x2f\xaf\xb5\x3d\x3f\xa9\x52\xbf\x60\xc6\xe7\x51\xa2\x0b\x63\xe4\x5c\x6a\x35\x0a\x01\xe1\xc4\xf7\x91\x63\x71\xea\x81\x55\x76\xa1\xa0\xee\x07\xc3\x1a\x66\x77\x83\x75\x81\x82\xb5\xb7\x86\xa1\x54\x23\xff\x07\xad\x98\xfe\x1d\x29\x2c\xcf\x83\xcc\x35\x56\xab\x45\xd7\x19\xdb\x74\x73\x71\x00\x59\x36\x0c\x74\x85\x46\xd2\x1b\x73\x69\x0c\x06\x77\xe3\xb1\xac\xd4\xc1\xa9\x7c\x95\x69\xb5\xf4\xd7\x33\xcc\xf8\xb5\xbd\x40\x1d\x83\x30\x21\x31\xdf\x0a\xe7\x1e\xa0\xf0\x37\x9f\xcb\x1e\x67\xee\xbd\xe4\x87\xc6\x86\x00\x16\xaa\x97\x14\x92\x39\x24\xf0\x46\x23\xc3\xdc\x3f\x2d\xd4\x38\x2e\xc8\xb0\xd8\x32\x77\x84\x2c\xa1\x99\x98\x51\x3a\x60\x66\x88\x64\x2b\xd9\xb0\xf5\x70\xbc\x1a\xf3\x83\xea\xe4\x67\x15\xe4\xcc\x5b\x70\x34\xc7\xb5\x0d\xa4\xac\x4a\x19\xd6\x3b\x86\x53\x8e\x09\xda\x06\x58\x5e\xa7\x0c\x4d\x2e\xd1\x36\xa0\x74\x85\x22\x1c\x41\xe9\x60\x72\xf6\x2c\xe2\x51\x05\x96\x62\xce\x8a\xab\xcf\x8b\xab\x0f\x49\x69\x41\x8b\x34\x49\x9d\x10\x0d\x40\xb4\xe1\xb2\x1f\x58\x2f\x9b\x96\x21\x1d\xdf\x74\xd7\x2c\x87\xa0\xd5\x3a\xf3\x6d\xca\x08\x03\x48\x65\x1a\xa4\x00\xa6\x4b\x9f\x77\x9e\xcc\xc7\x63\xc4\x50\x9c\x3f\x13\xc2\x38\xfc\xe8\xfb\xe3\x70\x0a\xac\x8a\x16\x9d\x31\xc0\x43\x49\x61\x15\x64\x76\x45\x89\x9e\x4d\x6a\x59\x12\xa4\x40\x79\x2f\x84\x93\xf0\xa3\x3f\x2e\x00\xcf\x5c\x32\xd1\xdb\xc2\x9e\x55\x60\x67\xd4\xce\x20\xba\x2d\xf0\x12\xe8\xec\xe4\x0c\xd2\x21\x5c\xf7\x58\xe1\xac\x09\xe0\xd8\xde\xa9\x15\xf8\xd9\x79\x1a\xcc\xb7\x6e\xc1\xd4\x5d\xd7\x46\x7e\xcc\x06\xc9\xd6\x8d\x64\x95\xd7\xb5\xa2\x4f\xe0\x60\xb4\x75\x13\xaa\x66\x09\xfe\xd8\x22\xc7\x5f\x7e\xb9\x8c\xbf\x72\xb0\x95\xbb\xf8\xb5\x58\x7f\x2b\x39\x17\x0d\x68\x3d\x0a\x74\xd9\x78\x5a\x91\x17\xe0\x65\x85\x69\x7f\x7a\x50\x35\xba\x68\x20\xf3\xea\xe2\x18\xf3\xa6\xd3\xe5\x18\xf2\xc6\xd3\x85\x6f\x31\x5d\xa7\x86\xe2\xd1\x64\xed\xcb\x2c\x04\x4b\x55\x6a\x42\xef\x49\x6a\xb2\x4a\xa7\xa1\xac\x77\xb0\xf7\xac\x78\xe7\x9e\x15\xcd\xba\x2b\x79\x83\xe8\x76\xd9\x51\x62\x49\x98\xa3\xdc\x29\x16\x92\xde\xa3\xb3\xe7\x57\x33\x51\xb4\xec\x82\x6b\x83\xd5\xb5\x15\x4f\xee\x4e\x49\x7c\x5b\xc5\x47\x91\x5f\xd6\x7d\x2c\xbf\x38\x37\xcb\xcb\xb8\x52\xef\xd1\xf5\x3e\x51\xa3\x5d\xb9\x57\xa7\xae\x53\xa7\xde\x4d\x45\x30\x9d\x31\x14\xc5\xdf\x8c\x1e\xb5\x46\x70\xf8\x2b\x43\x70\x45\x15\xc8\x7a\x89\x73\xb3\x88\xb4\xb0\x3e\x67\xad\x56\xb3\xca\x77\x6f\xea\x41\x36\xf3\xdd\xaa\x50\x9b\x74\xf9\xca\x2d\x4f\xb0\x99\xcf\x58\xbe\x2c\x74\x35\x52\x2b\x6f\x69\x89\xa8\x57\x7d\x2d\x65\x67\xb6\x86\x87\x25\x0f\x2d\xdc\x96\x4d\xb7\xe6\x10\xeb\x68\xb6\x45\xcb\xc2\xb3\xd3\x3a\xc6\x28\x89\xd3\x5c\xc7\x81\xd8\xa8\xf9\x75\x34\x6b\xb5\x48\x67\x12\xa5\x3e\x37\xe1\xac\xc4\x1e\x8c\xb4\x42\x51\xd3\xdf\x42\xfb\xa8\x52\x74\xa6\x0b\xbd\x4c\x9f\x67\x7c\x40\x5e\x01\x58\x13\x33\x97\x61\x13\xe7\x2b\xd6\xb1\x51\x74\x87\xb3\x74\xab\x1f\x8c\x24\xc2\x14\x33\x36\x82\x73\x20\x3f\xe6\x1d\xcd\xbd\x19\x77\xa8\x16\xa9\x46\x94\x0a\xa2\xb3\x0d\x27\xfc\xb9\x02\x92\x84\x64\x30\x1f\x1e\x24\x8e\x31\xbb\xa6\x27\x31\xca\x67\xa0\xd5\x4a\x0a\x6a\x73\xfa\x9d\xad\x1f\x0d\x06\xb9\xe4\xd9\x4f\x81\xe0\x48\x40\x1e\xdc\x67\x18\x26\x4a\x10\x17\x24\xa5\xcd\x9c\x80\x56\x0b\xf9\x89\x1c\x87\x03\x84\xf4\x81\x10\x2d\x7d\x02\xe7\xf0\x66\x09\x07\x43\x89\x8a\xed\x61\x8e\x41\x66\xfc\x0d\x04\xb6\x19\x89\x0d\x99\x7b\x84\x1d\x8c\x86\x07\xd9\x0c\xca\x69\x8d\xc1\x52\x45\x1d\x95\x57\x93\xd8\x28\x23\xb0\x58\x34\xa9\x4f\x06\xa3\x21\x58\x2c\xc4\x1f\xc7\x10\x15\xc4\x49\x28\xb2\xcd\x56\x9c\xb4\x5a\x13\xe7\x74\x14\x5b\x9c\x68\xcd\xfd\xa0\x98\x2c\xf5\x6f\x09\x65\x53\xc9\x45\x1a\x1d\xe4\x09\x00\xcb\x62\xb9\x44\x6f\x01\x75\x36\x46\x00\xe6\x9f\x44\x7e\x6a\x77\xb0\x96\x0e\x4c\x62\x69\x56\xec\x4e\x8b\x1f\x64\x67\x32\x3f\x9d\x75\x1a\x6f\x03\x3e\x5c\x42\x66\xfa\x1d\x66\xbf\x8a\xe5\x6d\x9a\x59\x2a\xee\x2c\xb5\x36\x41\x91\x6e\x91\xcf\x20\x65\x52\x06\xd2\x90\x88\x2d\x23\x36\x40\x93\xe6\x21\xa6\xa4\x4a\x60\xf6\x65\xa1\xa6\xb9\x11\xf0\x2b\xe4\x14\xd9\x17\xac\xbe\x5c\x7f\x26\xf2\xf2\xe4\xb4\xf1\xbf\x92\x4e\x7b\x86\xd0\xec\x7f\x1b\x97\x98\x4f\x1a\xd7\x74\xce\x1a\x71\xc4\xa3\x4e\xe3\x31\x43\xe2\xb3\xc1\xd9\x35\x26\x67\xa2\xb4\x2c\xdc\xe0\x97\xb4\xa1\x88\x3e\x51\xce\x5c\xaa\xfd\x86\x76\x6b\x3d\xc6\x09\x6a\x44\xa4\x81\xd3\x74\x8e\x14\xd0\x12\x89\x28\x2e\xd6\xdb\x10\xba\xae\x58\x0f\x09\x6e\x47\xb3\x59\xfb\x02\xb1\x14\x53\xf2\xc0\x12\x53\xb4\xc7\x91\x40\xa8\xd7\xf7\x1b\xe6\x2c\x43\xf0\x99\x32\x44\xa3\xa8\xf3\xd8\x24\x52\xf3\x84\x15\x5d\x57\x9b\x6b\x2b\x89\xd2\x14\x8f\xc5\xfa\x1f\xf0\x0e\x43\x67\x38\xe5\x88\xf9\x58\xf0\x57\x24\x14\x1c\xd6\xf2\xc0\x8e\x47\x96\xe0\x53\x16\x31\x8c\xd2\xf5\x33\xa3\xc8\x73\x86\xce\xd0\xd5\x67\x73\xe6\x7b\x80\x3a\xba\x39\x75\xd1\x86\x0f\xfe\x19\x1f\x0e\x3a\xc3\xec\xdf\x07\x30\x2b\xf1\xfc\x8a\x23\x12\xa3\xb8\xa6\x64\x7b\x10\xb5\x7f\x1f\xfe\xa7\xaf\xbe\x40\x5f\xd4\x4c\x27\x91\x29\x2d\x72\xff\x19\x0f\x6f\x7e\x5c\xfe\x9f\x07\x4b\x00\x0e\xaa\x63\x1f\x27\x51\x3a\x79\x30\xa2\xd3\x19\x25\xe2\x8c\x3f\x90\x09\xc6\x43\xb9\xd3\x56\x2b\xab\x25\x48\xcf\x24\xe2\x28\x5d\x51\xbf\x52\x29\xf7\x82\x6e\xbb\x0d\xf9\x9c\x9e\x23\x2c\x2d\x04\x13\xdb\x61\xa4\x23\x8a\x42\x1c\x92\x4e\x44\x62\x19\x86\xe3\x94\xd2\x44\x86\xe0\x10\x74\xf4\x5b\x92\x5c\xcb\x10\x1c\x84\xe6\x2f\xe4\x6c\x4e\x60\x12\xce\xa5\xf6\x0d\x1c\x85\xf3\xce\x48\xa0\xf8\x04\x8e\x75\xfe\x53\x33\x0d\x1d\x24\x97\xcd\xbf\x49\xa2\x6b\x3a\xb7\x22\x44\xc0\x68\x24\x03\x77\x36\x7b\xc6\xe1\xa4\x0c\x6a\x1a\x78\xa7\x94\xf2\x94\x4b\x0f\xd2\x72\x77\xbf\x89\xa6\x28\x0d\x06\x5e\x71\x3a\x87\x79\xe6\x13\x2c\x05\xd1\xa2\x4c\x94\x20\xc6\x05\x73\xe0\x41\x4f\xc1\x17\xf3\x7e\x85\xb9\xe0\xa8\x86\x30\xe2\x3a\x52\xad\x5d\x85\xe1\xa8\x9d\x44\xa7\x28\x11\x75\xc4\x87\xf2\x26\x7e\x8a\xe2\xd3\x6b\x0f\x7a\x8c\x26\xa2\xb5\x74\x42\x2f\xdf\x31\x7a\xc6\x50\x9a\x06\x91\xaf\x7a\xd3\xb1\x53\x3d\x00\x09\xe5\xcf\x55\x63\x41\xea\x67\xed\x82\x42\xe5\x27\x11\x0b\xb0\xef\x15\x6a\x42\x2f\xaf\xe9\x01\xa8\x2b\xe6\xcd\xe4\x90\x26\x51\xfa\x24\xa1\xa3\xf3\x80\xfa\x9e\xd9\x74\x1e\xc8\xd6\xc9\x07\x30\x9b\x82\xa0\xb8\xc0\x06\x16\x97\xb3\x73\xe3\x14\xd8\x97\x5e\x58\x26\x38\x85\x85\x5a\x9e\x07\x20\x0f\xd5\x2c\x37\xe4\xbf\x6d\x13\x86\xc3\x1b\xd3\x39\x51\xaf\x91\x82\x70\x71\x41\xb2\x97\x59\xc2\x92\xbc\x90\x82\xd6\x3e\xa5\x57\x0d\x0f\x40\x2b\xb8\x0f\x30\xbf\xa4\x18\x01\xca\x7e\x7c\xbe\x71\xb9\xa3\x89\xe4\xd8\x55\x74\x21\xc6\xf1\x4b\x92\x22\x66\x02\x72\xba\x5f\x3c\x0e\xd4\x33\x87\x54\x47\xae\x51\xac\x56\x18\x59\xbf\xd0\xd9\x0a\xe1\xf6\xdb\x7b\xb6\x81\x9b\x5d\x90\xc7\x56\x92\x82\x34\x39\x00\xfd\xfe\x22\x1f\xf4\xb9\x7e\x2b\x13\xb9\xde\xa7\x29\x9d\xa7\xe8\x39\xe1\x88\xfd\x24\xa3\x17\xe9\xa7\xf7\x8e\x95\xd1\x39\xc5\x24\x56\x4a\xe3\xd5\xaa\xaf\x50\x74\x81\x5c\x55\x65\x46\xb5\xaa\x89\x6e\x1b\xc5\xf1\xf3\x0b\x44\xf8\x2b\x71\x09\x11\xc4\x7c\x4f\xd6\x52\xc1\xf2\x2b\x5d\xd0\x0d\x6c\x06\x23\x11\x2d\x57\xfb\x62\x60\x2c\xe1\x25\x4e\x92\x67\x28\xe5\x8c\x5e\x3b\x56\x67\xed\x92\x14\x3b\xa1\x02\xa9\xde\x7a\x2c\xf5\x60\xd6\x0e\x67\xa6\x51\xc3\xb3\x39\x53\x2f\xfc\xee\x4d\x5f\xc4\x22\xe5\xcd\x2f\x88\x07\x2b\xd0\x85\xb5\xed\x8b\x78\x2b\xb7\x81\x58\x7b\x5c\xf0\x14\xd1\x39\xf7\x60\xd7\x7d\x60\x26\x7c\x9a\x7c\x88\xc6\xc8\xf7\x38\x8b\x88\x8a\xec\xdb\x8e\xcd\x18\x72\xc7\xc7\x08\x7a\xd3\x54\xc5\xdb\x81\xa3\x04\x8f\xce\xed\x6e\xd7\x37\x1f\xab\x05\x7e\x4b\x9e\x8a\x3a\xf2\x64\xe8\x77\xe7\x4f\x3a\xeb\x85\x28\x67\xc2\x44\x80\x25\xb4\xd6\xa8\x7a\x5a\x9d\x73\xe3\x55\xa3\x98\xc9\xd8\x58\x9d\x19\x43\x62\x25\x05\x9a\xce\x21\xcb\x65\xbb\x1d\xe4\x66\x41\xcb\x2d\x43\xf5\xa2\x49\xe9\x43\xcb\x34\x68\xed\xf0\x1d\xb6\xb6\x7b\x82\xe0\xc8\x2f\x77\xd5\x42\x2b\x40\x0c\xd3\x51\x6f\x0b\x04\xeb\xc1\x66\x0f\x1c\x20\x31\x18\x0d\xc8\x5a\x9c\x48\x02\x49\x83\x1b\x19\xfe\xb8\x3a\x28\xf7\x9a\x16\x63\x34\x8d\xdd\x84\xac\xa2\xb0\xd4\xbf\xd5\xc7\x83\x3a\x5a\xcc\x1c\xaf\x7b\x0d\xbd\xa5\xa1\x69\x3a\x49\xa5\x49\x9c\x81\x62\x78\x23\xb6\xc3\x47\x3c\xd5\x6f\xa8\x19\x65\xd0\xec\x41\x9c\x8a\x8d\x51\x7d\x6d\x8d\x45\x71\x55\xfa\xd3\xd9\x1c\xc7\xca\x8c\x55\xfc\x7a\x41\x19\xf0\xcd\x2d\x5c\x24\x1a\x44\xf5\xed\x36\x55\x79\xdb\xa4\x1c\x8f\xce\xaf\x3d\xb0\x58\x28\xb5\x10\x81\x29\xd8\xc7\x28\x3d\xf7\xcd\x06\x4c\x11\x7f\x59\xec\xa5\x7c\x36\x2a\x6e\x8b\x6a\x27\x14\x61\x29\xe7\x40\x07\xc8\xae\x1e\x2f\x39\x4b\x51\x7a\xfe\x52\x8b\x1a\x3c\x70\x80\xfa\x7e\x46\xa9\x6a\xe2\x54\xf0\xc8\x0a\x26\x47\x11\x8b\xe9\x25\xf1\x01\x08\x14\xc6\x36\xd3\xac\x7a\xbc\x94\x13\xed\xe8\x52\xb9\xe1\x7c\x11\x14\x35\xe3\x80\xa5\x9a\xe4\x0c\x9f\x9d\x09\xf4\x1f\xe3\xf8\x79\x0e\x5b\x1e\xb1\x9a\x83\xed\x1e\x2a\x25\xba\xa8\xa7\x8e\x55\x36\xbd\x85\x79\x72\xa4\x39\x26\x09\xae\x5d\x66\x71\x11\x65\x58\xaf\x3a\x11\xa9\x6b\x22\xc4\x89\x5f\xc2\x0c\x75\x6d\x5c\xab\x9b\xf5\x7a\x82\x46\xe7\x2f\xc7\x1f\x26\x74\x9e\xc4\x06\xfb\x65\xfb\xc9\x4d\x74\x41\x5e\x99\x29\x73\x57\xd9\x96\x72\x2c\x67\x5f\x3a\x82\x74\x66\xbe\x4d\x7d\xa1\x8e\xb5\xec\x3e\x58\x02\xc8\xab\x64\x57\xd6\x91\x6c\x1e\x95\x8e\x64\x61\xd9\x6b\x28\x43\xd7\x85\x8c\x53\xbd\xa0\x28\xf6\x40\x75\x8a\xcc\x7d\x20\xe6\xe7\xa0\x1c\x59\xdc\x14\x51\x8c\xf1\xc7\x1d\x06\x6c\x1d\x05\xf7\x70\x2b\xbb\x46\x8c\x56\xda\x0d\x96\x8f\xd2\x72\x09\x1d\x67\xdc\x71\x57\x98\x40\x64\x40\x8c\x41\xe1\x81\x4a\xb3\x25\x7c\xe6\x41\x24\xee\xa2\x33\xc4\x9f\x27\xd1\x2c\xad\x82\xd6\x6f\x20\x0e\xd0\xed\xca\x84\x97\x40\x0b\xc0\xd6\x41\xb9\xbb\x08\x85\x8e\x9d\x52\x59\x3c\x04\x0e\xb2\x40\xac\x16\xa6\xe2\xb2\x53\xe5\x73\x50\x45\x8e\xc5\x09\xf1\xc1\xa3\xfa\x53\x50\x20\x34\x8a\x38\xdb\x60\x2e\x17\x0e\x29\x9c\x08\xd1\x2b\xb3\xe0\x1b\x12\x3d\x1f\x10\xbb\xc0\x23\xd4\xf9\xd7\x1c\xcd\x91\xc6\x59\x9a\x30\xd6\x6f\xa5\x92\x93\x50\x8d\xe9\xbb\xc0\x85\x34\x9f\x15\xae\x09\xaf\x14\xa9\xd1\x15\x88\x38\xbb\xdb\x53\xd5\x85\x92\x40\xc6\x19\xc1\xae\x8e\x74\xa8\xa1\x17\x54\xb6\x14\xdf\x48\xaa\xb8\xa6\x58\xa1\xdd\x36\x95\x71\xca\xea\x89\x90\xf5\x02\x21\x65\xba\xf9\x19\x48\x12\x63\x3d\x61\x16\xcd\xc8\x6e\x74\xc4\x82\x12\x13\xd2\x41\xff\x9a\x47\x89\xef\xc9\xa5\xed\x18\x7f\xbe\xdd\x02\x61\x21\x49\x90\xb4\x5c\x71\x1a\xcd\x9e\x5c\xeb\x8a\x1e\xf4\x64\xa1\x92\x14\x83\xb1\x88\x9c\xa1\xf8\xff\x8a\x22\xe5\xea\x29\x65\x3c\xab\xed\xd7\x68\xa8\xcc\x18\xa6\x0c\xf3\xeb\x87\x3c\xfb\xd9\xef\x05\x79\xfa\x23\x2b\xbd\xdd\x0b\xba\x4b\x70\x4b\x8a\x28\xa3\x72\x9e\x69\xff\xbf\x66\x1b\xcb\x8e\x66\xa1\x6a\x6f\x4d\xc9\x8f\x12\x14\x31\x7d\x0e\x52\x49\x46\xc7\xf1\x9d\x21\xad\xdc\x12\x58\xf5\x06\x11\xd9\x7b\x8d\x1f\x08\xba\x2c\x10\xe3\x48\x4b\x00\x96\xb0\xd0\xa9\xf5\xa8\xc1\x60\x83\xfc\x42\xc4\xe9\x1b\x4a\x90\xed\x8a\x6a\xa5\x3e\xb6\x83\x9d\x00\xd2\xcd\x8a\xe8\x87\x6f\x7a\x65\xe4\xe1\x1f\xaf\x67\xae\x5e\x69\xc2\x61\xc7\xa9\xca\x16\x34\x9b\x31\x47\x8f\x0b\x3e\x0f\xec\xee\x08\x14\x9f\xcd\xde\x0c\xa1\xf3\x17\x98\xa5\x2e\x7d\x5c\xe7\xd4\x75\xc6\xa2\xb4\x56\xea\x00\x0a\xc0\xab\x68\x8b\xfa\x49\x64\x57\x3f\x43\x5c\xae\xab\x4a\x71\x05\x00\x10\xcb\x6f\x1a\x91\xdc\x6f\x69\x2b\xdc\xe1\x06\xd4\x6a\xe2\x2a\xce\x26\x76\x72\x95\xba\xd1\x67\x99\xa3\xed\x9b\x25\x80\x51\x89\x0b\xa5\x70\xe0\x71\xb1\xf0\x9e\xb8\xf3\xc5\xc0\x30\x25\x2f\xe4\x13\x8f\xb4\x03\xf0\x34\x69\xfb\x6c\x3e\x4b\xf0\x28\xe2\x28\xf5\x86\x20\x33\x0f\xcb\x43\xcf\x45\xf0\xc6\xbe\xc9\x02\xb2\xcc\xd5\x36\xe6\xf2\x75\xdf\xbc\x19\xdb\x8c\xfc\x1c\xc0\x51\x98\x5d\xd2\x6f\x25\xce\x7f\xcb\x74\x8f\xfd\x39\x4c\x6c\x9a\x47\xc5\xe4\xcc\xf4\xd4\xb3\x20\xca\x5a\x17\x3a\xd5\xb4\x4f\x09\x4a\x49\x37\x4f\x91\x7b\xdb\xcd\x19\xb1\xfa\xcc\x60\xae\xfe\x60\x1b\x9a\x17\xe3\x84\x73\xd0\x27\x01\x5f\x42\x17\xcc\xb2\x90\xca\xaf\xc7\x03\x6f\x2f\x09\x62\xda\x69\x85\xf6\xd3\xf4\x5e\x9e\x0e\x25\x2a\xd2\x91\xfd\xce\x02\x44\x2e\x30\xa3\x64\xaa\x1c\x2c\xf3\xd2\xf0\xd0\x8a\xb1\xe5\xea\xdf\x56\xa0\x2e\x75\xe8\x6c\x24\xed\x94\x65\x6c\x3e\x83\xb9\xe1\x9a\xb5\x13\x58\xcd\x1b\x9d\x0c\xa9\xed\x99\x6b\x3d\x37\x44\x2b\x53\xbf\x04\xa2\x01\x1f\x82\xa5\xdc\x3e\x05\x1c\xe6\xbb\x3a\xa7\x3f\x3f\xaa\xbd\x9e\xa1\x25\x49\xad\xd9\xb5\x6b\x0c\x68\xa4\xbc\x7a\x80\x86\xf9\xa3\x64\xf6\x24\xb9\xb3\x6b\x31\x88\x2b\xc7\x88\x94\x24\x86\xb9\x45\x11\x46\xa9\x8f\xe1\x8d\x09\x3b\xc6\x54\x2c\x58\x24\xf8\x91\x4e\x14\xc7\x3e\x96\xac\xc5\x24\x4a\xb3\x93\xea\x52\x48\x2a\xe3\x39\x45\x79\x78\xa0\x23\x03\xbb\xc4\x48\x2a\x95\x40\x73\xa1\x39\xe6\xa2\x20\x86\xab\xe2\x06\xa5\xe3\x56\xf1\x29\xce\xfb\x96\x1d\x41\x71\x41\xde\x55\x61\x14\xf7\x87\x6e\x4b\x93\x3f\x99\x45\x4d\x61\xa8\xb9\x56\xdc\x72\x15\x42\xf7\x80\x74\x82\x98\xa9\x1f\x16\xc9\x63\x97\x5b\xca\xad\xde\x2e\x3f\xfb\x83\xb8\x45\x84\x9a\x95\xf8\xe9\xe3\xeb\x57\x4f\x22\x96\x76\x4c\x07\xfd\x1b\x1c\x07\xde\xab\x77\xf3\xff\xfe\xfd\x27\x7e\xe4\xc1\x53\xf9\x10\xf6\x1f\x37\x5a\x7f\x2c\xf5\x82\x81\xd7\xca\x89\x66\x2f\xe5\x11\x47\x4a\x21\x31\x18\x0c\x7e\x80\x83\xe3\xbf\xc0\xe3\x21\x1c\x0c\x8e\xfe\x02\x07\xc7\x47\xb0\x37\x1c\x0e\x95\xcf\xf8\xc1\x20\x3b\x95\xd0\x13\xcc\xad\x37\x84\x83\x9b\x12\x80\x23\xe8\x35\x1a\x22\xa3\xf7\x23\xec\xc1\x81\x80\xd0\x1d\xc2\xc1\xf1\xf7\xb0\x27\xfe\x74\xe1\xe0\xf8\x07\xf8\xdd\x30\xcb\xf1\xa4\x54\xd3\x53\x4d\x88\xa6\x04\x84\x7f\xfe\x93\x78\xc3\x21\xf4\x66\x11\x8b\xa6\x88\x23\x26\x40\x0f\x97\xb0\xbe\x31\xd5\x02\x1c\x64\x82\xbb\x02\x28\x68\x8f\xeb\xf8\x7b\x78\xe4\x18\x52\xdd\x58\x74\x03\x5d\xe8\xc5\xf8\x42\xfe\xfc\x0e\x76\xa1\x7e\x8f\x33\x0f\x10\x32\xfd\x28\x6b\xb1\xd1\xd8\xb0\xde\x93\x88\xc9\xac\xef\xe1\xf7\x70\x70\xfc\x1d\xec\x0e\x0d\xa0\xde\x71\x01\x9a\x57\x4c\x72\xcd\xce\x70\x58\x9b\x38\x89\xd2\xe7\x17\x51\xe2\x05\xe3\x28\x49\x11\xf4\xe6\xb3\x8b\x48\x16\xf0\xca\x2f\x28\x5e\x26\x91\xf6\x4a\xcf\xb1\x82\x3e\x18\xeb\x07\x63\x4a\xbc\xe1\xf2\x3f\xe0\x14\xf1\x28\xb8\x99\xca\x2d\xfb\x26\x9a\xa2\x60\x87\x53\xd3\x99\x9c\xa6\x5e\xf1\x1c\xf2\x55\xe7\xb0\x24\x82\xfe\x7c\x67\x2e\x8a\x63\xdb\x05\x81\xb9\xc1\xaa\x24\x1b\xe4\x96\x46\x2a\x02\x50\x39\x6c\x43\x52\x2b\x95\x0f\x98\x6d\x29\xcb\x86\x4e\xad\x02\xdf\xfd\x1e\x2b\x11\x17\x0b\xb9\x60\x04\x8b\xc4\x72\x15\x3d\x2a\xa7\x66\xb9\xdf\x95\x22\x39\x92\xeb\x0c\xb3\x25\xa8\xc4\x77\x66\x40\xf6\x24\x1a\x71\x97\xa7\xa0\x02\xbf\x78\xc8\xa5\x0d\x67\xae\x45\x99\x29\x37\x6a\x5e\x8c\x40\x2e\x5d\x3c\x68\x49\xba\x4b\x89\xbe\x34\x76\xe4\x7c\x8d\x76\x89\x80\x2a\x6c\x10\x2f\x05\xaf\xd6\x8d\x96\x4c\x2e\xdc\xd6\x13\x9b\x09\x1f\xee\x35\x38\x77\x61\x2c\x86\x24\xd0\x92\xa9\xe0\x18\x1d\xc3\x92\x08\x33\xe8\x42\xc3\x9b\x07\xbd\x6e\x17\x2a\x41\x55\xd0\xec\x15\xd5\x30\x9a\x3d\x45\x2a\x78\x98\x8c\xa9\x27\x7f\xa7\xc1\xc0\x4b\xe7\xa3\x91\xd2\xaa\x50\xe9\xde\x65\xc4\x88\x94\xa1\x7a\x71\x44\xce\x64\x10\x39\x89\xac\x04\x2a\x40\x23\x4a\xe2\x88\x5d\x7b\x43\x58\x65\x12\x82\x81\xc7\xa8\x34\x82\x95\xde\x27\x18\x4d\xe4\x8b\xb8\x77\x81\xd1\xa5\x4c\xd3\x27\xdf\x1b\xc2\x0a\xc1\x10\x34\x7b\xcb\x9a\xc8\xe9\xeb\x04\x3e\xf7\xaa\x7f\x66\xa9\x18\x57\x8f\x5d\xe6\xca\x2a\xd3\x20\x64\xb9\x16\xfa\xfa\x91\x69\xf9\x98\x3e\x83\xf7\xbc\xe9\xd4\x61\xbb\x59\xe6\x3a\xf6\x16\x89\x4e\x94\x46\x7d\xf9\x3d\x56\x86\xb8\x91\xa8\x8d\xe4\xec\xd8\xe6\x03\xa5\x24\xb9\x57\xed\xc1\xdb\xf3\xda\x3b\xdb\xfc\x0d\x86\x90\xd9\x93\x4b\xd4\xe4\xb6\x7b\xcd\x30\xe4\x1d\xe9\x8c\xf6\xed\x58\xcd\x27\x1b\x90\x61\x88\x06\x64\x98\x21\x57\xb6\xf9\x94\x66\xb2\xd5\x6f\x7b\x56\xc3\x5b\xcc\xea\x04\x45\xb1\x4d\xa5\x88\xef\xb6\x52\xc7\xab\x93\x81\xcb\x2a\x4e\x12\xc7\xae\xfc\xd9\x5e\xc9\xeb\x74\x08\x79\x74\xa6\xa8\x31\x0f\x56\xd4\x09\x53\xf9\x4c\xf2\x11\x45\xec\x19\xbd\x24\x6f\xc9\x4b\x82\x79\xd0\xec\x42\xd1\x61\xa3\x11\xb4\x42\x3e\x51\x66\xae\x6c\x01\x85\x72\x3e\xed\x7b\xfa\x21\x21\x68\xc7\x74\x34\x57\x22\x89\x8e\x00\x2f\xa6\xfd\x0e\x5e\xd0\x1d\x03\xf0\x32\xfd\x16\xae\xd3\x7f\x42\x51\xec\x9b\x77\x18\x93\x50\x56\xfa\x51\x55\x70\xfa\x22\x4a\xf9\x29\xa5\xdc\x07\x66\x4f\x9b\x9e\x77\xfe\x35\x47\xec\xfa\x03\x4a\x90\xb8\xea\xfc\xff\x10\x04\xef\x80\x44\x53\x14\x96\x76\x41\x3b\xe5\x11\xe3\xde\xf0\x3f\x00\xe4\x3b\xd4\x46\x24\x16\x75\xc5\x5d\x82\x5a\xad\x82\xf3\x5f\x24\x95\x47\x3f\xe0\xd3\x04\x93\xb3\x13\xd6\x6a\x31\x81\x3a\x4e\x40\xd6\x88\x00\xa0\x9f\x8a\x9e\x4e\x70\x12\xfb\x0c\xc0\x52\xb5\x83\xfa\xc2\x08\xc0\xfa\x4c\x0e\x96\xcb\x25\xb4\x66\xa8\x2a\xf3\x74\x19\xfe\x89\xd2\x4f\x28\xad\x89\x3d\x69\xce\x4d\xf6\xde\x24\x67\x20\x96\xfe\x11\x3e\x3b\xf6\x72\x3f\xdc\xac\xec\xe7\xda\xf3\x7d\x5f\xbd\xae\xe1\xf4\xff\x75\xde\x7d\x71\x74\xfd\xcb\x95\x93\xd3\xaf\xe1\xef\x8f\x34\x1f\xdc\x13\xec\xe6\xc0\x93\x92\x15\x41\x07\xa6\x88\xf1\x27\x68\x4c\x99\x64\xed\xbd\x7f\x1f\xcd\x59\x4a\x59\xd0\xfd\x77\x4f\xb3\xe7\x9b\x30\xcc\x86\xed\x15\xdb\x5d\xf3\xbd\xc7\x65\xac\x69\xce\x8b\xcc\xcd\x7c\x96\x41\xcf\x2b\xb0\xbf\x3d\x8b\x27\x5e\x07\x50\x1e\xa1\xd5\xe0\xd6\xb1\xce\xf5\x5c\xb2\x6c\x21\x07\x6b\x21\x4b\x39\x6d\x6d\xad\xca\xb8\x96\x29\xde\x68\x43\x19\x8e\xd8\xbd\x27\x95\xdd\x6b\xdb\x44\x49\x69\xcf\x18\xbe\x88\x38\x7a\xa0\x84\xe0\xc5\xec\x5d\x63\xe4\xfd\xa9\x7c\x34\xae\xe0\x94\x2a\xa2\x58\x88\x21\x0d\x7d\x1c\xf6\xe0\x86\x06\xcd\x68\xe9\x93\x90\xad\x89\xe5\xb2\x9d\x45\xf3\xcd\xd7\x1d\xc2\x65\x29\x63\xb6\x17\x26\x8c\xc9\x09\xd3\x86\xe0\xb5\x76\xd9\x5c\x96\xdc\x29\xa4\x9f\xbe\x6a\xb6\x0f\xec\x07\x5d\x51\xfd\xfa\x05\x9b\xec\xe0\x0e\x62\xf9\xf5\xd5\xd8\x4c\xa4\x80\xca\x14\x7d\x11\x61\x5b\xc0\xa0\x3b\x74\x6a\x2b\xe3\x54\xdc\x3c\x52\x5f\x99\x4a\x87\xd3\x21\xed\xa8\x55\x06\x10\x89\xaf\xc5\xc2\xf3\xdc\x21\x3c\xab\xf8\x2a\x8b\xee\x14\xcd\x30\x97\xea\x45\x75\xc4\xf5\x56\x88\xee\xb3\xd1\xd8\xa8\x93\xf7\xb4\xa8\x96\x5a\x0c\x63\x5a\x7c\xca\xca\xaa\x80\x83\x02\x00\x56\x10\xff\x15\x63\x98\x30\x5b\x04\x4a\xb6\x9a\xcc\xc9\x7c\x1a\x91\xd2\x54\xee\x63\xa2\xfe\xe9\x50\xe7\x3e\x26\xea\x3e\x26\xea\x1f\x4c\x4c\x19\x4c\x51\x17\xbc\x8f\x84\x0f\x3e\x1d\x2e\xda\x87\x0f\xce\x0e\x8a\xde\x33\xf2\x88\xab\x3d\x79\x51\xe0\xb1\x5f\x77\x49\x48\xcf\x09\x2c\x64\xd9\x25\xa1\xbd\x86\xeb\xd5\xf5\x74\xd8\xa3\x90\x75\x38\x7d\x45\x2f\x11\x7b\x1a\xe9\x18\x05\xb3\x24\x1a\x21\x9f\x40\xaf\xe1\x59\x21\x57\x46\x93\x88\x3d\xe6\x7e\x17\x74\x38\xfd\x79\x36\x33\xe5\x0f\xb1\xde\xe2\x3d\xed\x2e\x7d\xb7\xb8\x83\xf5\x58\x35\x11\x7d\x1b\x45\xe9\xa6\x37\x94\x12\xc8\x59\xb5\xee\xe8\x32\xbb\x4b\xd3\x56\xd4\xc9\xfa\x57\x5c\xf6\x92\x69\x4a\xf6\xf3\xc0\xae\x41\x6e\x13\xfa\xb6\x7e\xa2\x39\xe6\x09\xda\x9c\x12\x50\xf3\x9c\x57\xfa\x53\x4e\xb3\xe9\xde\xc6\xb3\x9c\x55\xf8\x5c\x93\xcc\xe6\x64\x14\xf1\x3d\x8d\xb0\xa7\x11\xf6\x34\xc2\xb7\x43\x23\xd8\xde\xb6\xec\x5b\xfc\xb8\x14\x37\x3d\x3b\x43\x61\x18\xe2\x7e\xef\xbb\x6e\x80\x61\x14\xb2\xc1\xd1\x10\xa6\x79\x4e\xb4\x58\x44\x70\x1e\xa6\x7d\xda\x3e\x0e\xe8\x3a\x6e\x51\x3e\xc0\x90\x90\xe4\x84\x40\xab\x45\xcc\x4b\xcf\xbc\x9f\xf6\x73\x33\x76\xd2\x49\xe7\xa7\xaa\x98\xdf\x85\x73\x00\xbd\x4e\xa7\xe3\x81\xa0\x9c\x1e\xec\x44\xf5\x18\xdc\x77\xc7\xc1\xdc\xeb\x91\xed\x5c\x90\x29\x5b\x93\x0e\x56\xad\x3f\xe5\x9d\x96\xf5\x6f\xe3\x4b\x2d\xaf\x71\xc7\xb7\x5a\x85\xd6\xda\xbb\xbc\xbc\x53\x97\x97\xb7\x35\xea\xf2\xec\x6b\xaa\x99\x5f\x53\x4e\xe4\xfc\xfc\x6a\x86\x46\x1c\xc5\x8d\xa8\xa1\x6a\xc0\xc6\x19\xe5\x8d\x28\x37\x84\x57\x04\x40\x16\x9e\xae\xc8\x38\x6c\x26\x78\x2a\x53\x8d\xfb\x0d\xf3\xcd\x6e\x98\x8c\xd3\x7c\xe0\xf7\x83\xff\xb7\xf8\x67\xba\x68\x2f\xfe\xf9\x00\xfc\xf3\xc3\x83\x33\xe8\xb6\xa2\x29\x30\x9e\x4b\xb0\xdd\x96\x63\x78\xba\xdf\x6e\xdf\xd8\x76\x63\x78\xba\x1d\x62\x72\x52\x0c\xfb\xad\xf2\x0d\x6c\x95\x02\x6a\x71\xec\x18\x9a\x24\x4a\xdf\xd2\x7e\x2e\x2e\xe7\x39\xe9\xcc\x8d\x6a\x66\xcf\xd1\xae\x7a\xda\xb3\x78\x8c\x08\xc7\xfc\xba\xbe\x04\x41\x28\x4e\xdb\x0c\x19\x6f\xd4\x1b\x84\x3e\xbf\x1b\x2b\x08\x5c\xf0\x38\x6f\x6c\x7e\xab\xe1\xc3\xee\x30\x4e\x37\xc8\x03\x2e\x4d\x70\xda\x39\x47\xd7\xa1\x8e\xce\x32\xc1\x71\x8c\x48\xd8\xec\xa9\x4f\xcc\xd1\x34\x64\xfa\x37\x89\xd1\x55\x48\xb4\x0f\x29\x7e\x9d\xa0\x10\x5b\xc1\xec\xa8\x0f\x6e\x96\x17\x56\x78\xfb\x0d\x1c\xc3\xb9\x55\xa9\x4e\x65\xa4\x0d\x3d\x45\xc6\x53\x04\x4a\x92\x57\xb2\x7a\x31\x9d\x45\x97\x2f\x39\x9a\xa6\xc5\x54\x5c\x4d\x4a\x47\x8c\x26\xc9\x2b\x34\xe6\xae\xf4\x8f\x74\x56\x6a\x2f\xc1\x88\xf0\xbf\xe3\x98\x4f\x5c\x19\x3f\x21\x7c\x36\x29\x41\xd2\xba\x15\x1f\x72\x89\x99\xb6\xe2\x55\xe9\x5a\xd9\xa2\x3a\xac\x34\x37\x18\xb6\x52\x5f\x47\x33\x67\x38\x40\x4b\xdb\x2c\x73\x92\xc2\x75\x28\x9d\xc7\x9c\x33\xdf\x53\xd3\xe7\x81\x83\xc2\x6c\x56\xc3\x99\xf6\x51\xf0\x7d\x75\x72\xba\x8b\x22\x34\x95\xd5\x4e\xd0\x98\xe7\x6e\x44\xb2\x39\xab\x29\xcd\xe9\x2c\x2b\x6c\xcf\x64\xb9\x38\x4a\x39\x9e\x4a\xcf\xef\x97\x22\xbf\x54\x47\x4f\x72\x7d\xa5\x89\x2c\x50\xea\x96\xf2\x3b\x1b\x3a\xfb\xa5\xdc\x8d\x7a\xca\xaa\x15\xc5\xe9\xfb\xec\xb4\x57\x76\xa1\xe5\xac\x63\xb1\x28\xa6\x60\x72\x66\x7c\xdf\x7c\xc2\xe9\xdf\x12\x3c\x9d\x22\x76\xe4\x83\xbe\xb6\xe2\x63\x88\xc4\x62\x75\x82\x92\x45\xa2\xf4\xa3\xb6\x84\x31\x8e\xdf\xa3\x11\xc2\x17\x48\xf4\x2d\xad\x51\x25\x34\x9b\x61\x3e\x13\xdd\x93\x7b\xbc\x98\xf4\x41\x0e\xe9\x1d\x55\xae\xb7\xfc\x0d\x1d\xa3\xc9\x93\x61\x34\x0d\xe5\x87\xd6\x96\x93\x82\x98\xb7\xa7\x29\x62\x17\x88\xad\x2d\xa0\xa3\x81\x89\x16\xd5\x7c\x07\x54\x8c\x4b\xff\xf6\xca\xb3\xeb\x2d\xc1\x12\x5a\x23\x71\xf8\xfe\xc9\xcf\x77\x71\xe5\x44\x86\xd1\x52\x73\xef\x77\xd9\x49\xdb\xa8\xce\xe0\x84\x66\x18\xa2\x3f\x7c\xdc\x65\x3c\x85\x0a\x96\x6f\x8f\xa5\x37\xd7\xdc\x29\x9f\x1a\x8b\x74\xf2\xd7\x6a\x49\x9b\xc8\x72\xff\x2a\x69\x3b\x2c\x85\x59\x8b\xe2\x16\x2a\xa9\x96\x56\xcf\x54\x21\xd8\x93\x1b\x41\x1c\x64\xd4\x08\x92\x31\x92\x67\x11\x4b\xd1\x4b\x22\xdf\xdc\xba\xa0\x82\x6d\x54\x39\x6b\xfc\x79\x96\x07\x11\x30\x6e\x70\xea\x71\x4c\xde\x1e\x97\xa2\xc6\xac\x3d\x5e\x69\xef\x23\x9d\xa9\x62\x95\xe6\x3e\xd2\x99\x98\xf2\x7c\x5e\x9e\xe6\x98\xbc\x36\xd4\x55\xb6\x5f\x3b\x16\xde\xf7\x2b\x28\xcf\x81\xd0\xec\x4e\x97\x2f\x0e\x41\x72\x4a\x54\x18\x3a\x32\x55\x8e\x28\xa2\x10\x9f\xb3\x8c\xca\xd2\x28\x4b\x8d\xd2\xca\x56\xde\x75\xc4\x5e\x79\x2f\x91\x54\xe5\x20\xea\x09\x10\xd7\x52\x11\xdd\x58\x73\xe2\x67\x87\x59\x96\x73\xee\x1b\xb9\x91\xdd\x3e\x21\x74\x26\xf4\xb4\x1f\x11\x73\x51\x59\x53\x9a\xbd\x57\xa0\xdc\x61\x4d\x39\x37\xcc\x22\x8f\x6a\xd7\xef\x70\x1e\x16\xae\x4f\x98\x38\x2f\xd0\x51\x75\x05\x25\x65\xf3\x98\xfb\xe5\xed\x59\xde\x3f\xd5\x1b\xcd\xb5\xbc\x70\xec\xda\x23\x73\x72\x67\xf0\xe3\xd0\x9e\xc6\x49\xf8\x3a\xe2\x93\xce\x14\x13\x7f\x04\xed\x2b\x1f\x1c\x8c\xda\xe1\x04\x8e\x0f\xc5\x3f\x79\xa1\xf1\xa1\x5d\xc8\xd2\x4d\x8f\xf3\x15\x69\x8f\xd4\xdc\xce\xc2\xc1\x50\x0a\xed\x79\xd8\x3d\xe1\x0f\xc7\x27\xfc\xf0\x10\xd0\x70\x74\xc8\x2b\x3e\x18\xe2\x8e\x7a\x45\x78\xcc\x7d\x0a\x00\x9c\xb7\x5a\x7e\x1a\xce\x07\xd1\x10\xc0\xb4\xef\x93\xea\x94\x8c\x29\x9b\x46\x5c\x20\x45\xe9\x26\xd6\xa7\x1b\x8e\xde\xf6\xa5\xe0\xa5\xca\xc3\x2c\x29\x25\x2b\x2a\x56\xfa\x27\x2b\x66\x9c\xa3\x6b\x0f\x46\xa5\x44\xb9\xfc\x1e\xa4\x00\x26\x83\x68\x18\xa6\x20\x98\xa9\x57\x34\x0a\xac\xc1\x5b\x04\x9b\xde\x81\x72\x36\x04\x61\x9e\x0c\xfc\xd4\x1a\x60\x3a\xe0\x43\x20\xc3\x2f\x8b\xdc\x59\x16\x36\x9e\x86\xb3\xce\x8c\xce\x34\xd9\x36\x0d\x0b\x53\x76\x50\x9e\xd0\x29\x80\xf7\x3c\x6b\x6b\x26\xa7\x98\xcc\xd1\xd4\x83\xd3\x15\xf3\xae\xe6\x52\x39\x10\x73\x17\xea\xba\xbb\xe5\x29\x14\x16\x34\xba\x27\x8d\x18\xa7\xb3\x24\xba\x0e\x1a\x84\x12\x74\xe2\xd9\xeb\x31\xb3\x57\x41\xcc\xed\x80\x2b\xcb\xd4\x8b\x35\x13\x7b\x71\xa7\x13\x9b\xca\x67\x2c\xec\x47\xf0\x02\x52\x31\xa5\x6a\xdc\x36\x7d\x6f\xdb\xeb\xa7\xda\xd7\x43\x46\xe3\x27\xca\x3a\xc1\x50\x91\x55\xeb\x04\x6d\xe2\xa1\x88\xca\x37\x34\x46\x96\x37\x4d\xfb\x76\x2e\xf9\x08\xa9\x5e\xdf\xfd\x6a\x92\x2c\x1a\xa0\xec\x22\xc9\x51\x53\xab\xc5\x4b\xa9\x1f\xe9\x6c\xb1\xf0\xcb\xde\xdb\x4a\x37\x36\xac\xc9\xd7\x57\xac\x9e\x95\x12\x49\x22\xbd\x8d\xa9\x59\x15\xd7\xcb\x8a\xe1\xd8\xbc\x44\x4e\x3a\x14\xd9\x05\xf9\x04\x59\xed\xa7\x55\xd5\xdd\x51\x1b\xc8\xea\xbe\x16\x2d\xbd\xa3\x5d\xe5\x1d\x96\xd4\xe2\x4f\xe4\x74\xe1\xb7\xcb\x24\xe9\x62\x8e\xdd\x4e\x17\xc4\xae\xf5\xe0\x5a\xdf\x0b\x7f\xc9\x5d\x13\x68\xe2\xa3\x9d\x2a\x3d\x17\x9b\x5a\x84\x36\x29\x67\x3e\xd4\xea\x7b\xd0\x2b\x6f\x08\x4f\xdb\x7b\xfc\xa0\x3c\x31\x7c\xaf\xfe\x7c\x97\x3b\x64\x38\xb6\x1c\x32\x14\x60\x69\xbf\x0c\xce\x82\x8e\x56\x32\x27\x0e\x9b\x9b\x89\x18\xef\x08\x47\x99\x97\x06\x65\x9d\xa2\xda\xeb\x55\x7e\x7f\x2f\x0d\x42\xb4\x39\x8a\xf5\x67\x4d\x9b\x56\x53\x47\x47\xd2\xdb\xc2\x91\xf4\x17\xa1\x10\xe7\x30\xf7\xbb\xf0\x23\x3c\x52\x43\x14\xb9\x12\x55\x8b\x3c\xf3\x2d\x31\xfa\x50\x15\x3f\xae\x58\x92\xf4\xa4\x29\xc9\xad\xcd\x4d\x14\xea\xf3\xa0\xd7\x96\xe1\xf8\x95\xa6\x81\x07\x3d\x14\x8d\x26\xb9\x07\x86\x22\x82\x28\x62\x93\x12\xe1\xaa\xcf\x16\x89\x38\xbe\x40\x6d\x55\x50\xfa\x13\x5d\x69\xb0\xb2\xdd\x49\xdc\xd0\x91\xc3\x0a\xa0\xd5\xee\xad\x96\x6a\x9a\xf7\x95\x88\xa4\xab\x05\x98\x72\x8d\xdb\xb3\x3c\xba\xf5\x7d\x05\x8f\x90\x97\xa7\x6c\xdd\x00\x01\xbe\x47\x2f\x10\x1b\x27\xf4\x52\x71\x90\x2a\x60\x01\xae\x95\xfb\xb9\xc5\x7c\x05\xc1\x90\x53\xf0\xe3\x90\x4e\x55\x25\x50\x3a\x25\x22\x78\x2a\xbd\x7f\xbc\x10\xdb\xb4\x24\xe3\x53\x02\x95\x0d\x44\x2f\xb6\x0c\xaf\x24\x87\xb0\xf1\x58\x95\x93\x5d\xc5\x14\x57\xfa\x5c\xcf\xcf\x2e\x57\x46\x1e\x70\x89\x13\x65\x9a\x71\x43\x2f\x7d\xc5\xe9\x1c\x69\xfe\xa8\x9a\x96\x56\xa9\x8a\xac\x01\x56\x4a\x81\xa5\xd3\x62\xdd\x6b\x32\x52\x6b\xfa\x82\xd1\xa9\xec\x9f\xc9\xe1\x11\xe3\x1f\x34\x5a\x45\xa3\x73\x3d\x9d\x3f\xcf\x9c\xd2\xb3\x6d\xe0\x6f\x24\xb8\x52\xfe\x4a\x0b\xed\xaf\x90\xae\x2e\x61\x3e\x64\x1b\x14\xe9\xfb\x85\xf9\x92\xdb\xba\x63\x36\x73\xa8\x97\xc2\x83\xd5\x42\x03\x32\x0c\x3d\x4e\xe7\xa3\x89\x67\x1c\x49\xd7\xc0\x88\xe6\x9c\x7a\x2a\xa2\x55\x76\xac\x41\xa1\x59\xd8\x85\x5d\xe0\x68\xa3\x33\xd3\x92\x98\xd0\x8b\x4e\x53\x9a\x48\x77\x14\x8e\x62\x89\x75\x12\x8a\x39\x3c\x3f\x10\xc5\x8c\x53\xca\x39\x9d\xba\xf3\x98\x3a\x6c\x7a\xce\x6a\x64\x1f\x8e\xb9\xae\x74\x9a\xa1\x24\x52\x71\x2c\xea\x4b\x2b\xe1\x46\x8d\x68\xe3\xd0\x9b\x5d\xad\xaa\xac\xc5\x1e\x75\x42\x0f\x59\x7d\x09\xab\x7b\xac\x7a\xce\xc5\x50\x31\x8a\x3f\xd8\x92\xa1\xe2\x21\xcd\x04\x0f\xe5\xa2\xe5\x82\xe5\xd3\xfd\x28\xec\x66\xfe\xc1\x4d\xef\xeb\xea\x9a\xb0\x1a\xc5\x46\xb4\x64\xac\x4a\x92\xbb\x7a\x94\x23\x9f\x3a\xc1\x82\x48\xa8\xed\x94\xb3\xba\x8c\xf1\x5b\x3a\xef\x35\x7e\xae\xad\x27\x5c\x70\x83\x3a\x69\xe1\x80\xb2\xa2\x9a\x20\xb8\xb9\xc4\x24\xa6\x97\x1d\x86\xfe\x35\x47\x29\x7f\x5c\x40\xd9\x7d\x54\x41\xe2\xce\x72\xbe\xe0\x58\x2a\x45\x53\xe5\x04\x9a\xce\xa5\xe8\xef\x07\xb0\x94\x88\xa5\x82\x35\x1c\x3b\xa1\x00\xa7\xd5\xf2\x57\xf6\x51\x01\x2c\x77\xc8\x01\x08\x04\xd2\x3f\x69\xd6\x27\x57\x91\x55\x37\x97\x58\x81\x75\x93\x9f\xe1\x13\x1e\x22\x6b\x39\xa5\xe5\x7c\xbe\x3d\x65\xb8\xb1\x9c\x99\xab\x6c\x9e\x56\x8b\xb9\x33\x15\xc3\x27\x35\x94\x6b\xf7\x9d\x2b\x47\xec\x73\x66\x22\x70\xa3\x8e\xcd\x40\xd3\xec\x5b\x5d\xf1\x30\x12\x9d\xc3\xb9\x20\x33\x2f\xdb\x6a\xd1\x52\xf2\x4f\x5a\xb2\xe9\x47\x79\x97\x6c\x1a\x02\xbb\x68\x08\x0a\xa0\x4f\x16\x8b\x08\xd8\xae\xb7\x65\x30\x46\x5e\x8e\xc8\x43\x8c\x68\xd8\x66\x90\x05\x5d\x05\x23\x9d\x53\x66\x16\x7c\x0c\xa9\x56\xa5\x59\xa3\xfd\x97\x53\x73\xea\x29\x23\x7d\x70\xc6\x70\x5c\xa4\x0d\x55\x4e\xfb\x14\x93\xf6\x2c\x1a\x9d\x23\xf6\x60\x8c\xaf\x50\xdc\x56\x25\x57\xd3\x85\x67\x88\x28\x05\x88\xf5\x74\xa1\xad\x4d\x0b\x0b\x6e\x1a\xba\x27\xec\xa1\x91\xae\x4a\x5d\x5c\xed\x3f\x87\x0f\xd8\xf0\x80\x74\x50\x16\xf8\x33\xb4\x3f\x16\x8b\x66\x0f\x92\x8e\xf2\xe2\x39\x57\xf9\xcd\xae\x09\x93\x89\x49\x83\xb4\x5a\x3e\xe9\x5c\x32\xe5\xfe\x3f\x6c\x76\x01\xac\xa3\x4d\x49\xe7\x1c\x5d\x43\x72\xbb\x50\x80\xce\xa7\x75\x1f\xdc\x58\xaf\xec\xf2\x29\xff\x3e\x5f\xd8\xb5\xc8\x5a\x6f\xdb\x53\xac\x94\x9f\xb3\x87\x70\x55\x58\xf4\x4a\xbe\xa0\x63\x48\x61\x94\x19\x0f\x85\x08\xfa\x34\x1c\xdc\x9c\xa3\xeb\xc0\x2b\xb0\x44\x6a\xf8\x55\xad\x96\x1b\x79\x9b\x06\x08\x6a\x49\x9a\x69\x54\xdf\x93\xd2\x69\xe4\x12\x2a\x80\x5a\xf6\x5d\x05\x66\x34\x1e\x6c\xbf\xc0\x02\xc6\x05\x4e\xf1\x69\x82\x3e\x88\xfb\x01\x93\xb3\x97\xa2\xbe\x52\x5b\x00\x19\x50\x43\x13\xb8\xe1\x56\x61\x9a\xf2\x4a\x1f\xde\x40\x91\xa3\x70\x81\xa8\x02\xd0\x45\x55\x67\x50\x0e\x42\x0d\x78\x33\x18\xa6\x6c\x05\x88\x14\xde\x6f\x3e\x41\xea\xa1\xfd\x17\x35\x4d\x7f\xc7\x7c\x22\x90\x8d\x54\xeb\x68\x76\x73\xa0\x25\x79\xa3\x13\x3c\x31\x81\x20\x25\xec\x7c\x52\x75\x26\xa4\x2a\x43\x0f\xde\xa4\x46\x2a\xd5\x0c\x47\x27\xe7\x4e\x72\x99\x96\x75\xbe\xc3\x57\x28\x91\x8d\x03\x5f\xee\x38\xb0\x5c\x0e\x41\xab\x45\x7c\x9c\x6b\x35\x41\x2a\xd1\x1f\xf1\x31\x8c\x00\x44\x4b\x7f\x7b\x4c\x37\xb5\xb0\xd8\x6a\x7c\x97\x4e\x50\x32\x6e\x4b\x26\x66\x8f\xf0\xbe\x6c\x84\xa7\xf1\x94\xd1\x1d\xaa\x62\xbc\x6f\x05\xd9\x59\x71\x7e\x9d\xe8\x4e\x85\x94\xd9\x23\xbc\xaf\x08\xe1\xcd\x10\x1b\x21\xc2\xa3\x33\x24\x72\xe7\x53\x92\xee\x11\xdf\x1f\x88\xf8\xee\x4f\x9b\xf2\x80\x6c\xe2\x7a\x36\xb3\x82\xa3\xe1\x60\x08\xa3\xb0\x0b\xd3\xb0\x7b\x92\x3e\x64\x27\xe9\xe1\x21\xa0\xea\xe9\x59\x63\x35\x32\x88\x86\x06\xb1\x61\xa8\x37\x96\x4c\x5d\x02\x78\x78\x18\x3d\x0a\x8d\x31\x5a\xab\xe5\x47\x61\x57\xeb\x52\x98\x93\x93\x86\xb4\x0e\xff\x52\xd8\xeb\x76\xef\x07\x03\xcb\x86\xee\x1c\x07\xf7\xba\xdd\x3b\xc3\xc2\x02\xd6\xd7\x8a\x87\xe5\x3c\xdd\x25\x26\x56\x13\x6f\x70\x71\xb6\xd5\x06\x68\xd8\xd1\x1b\xd4\x81\x91\x75\xa5\x54\xe9\xa1\x8c\x13\x4a\x99\x8f\x3b\x57\x0f\x7a\xdd\xee\x7f\x72\x17\xae\xce\x70\xa8\x46\xd8\x37\x57\x41\x0a\xaf\x03\xdc\xb9\x5e\xee\x8c\xba\xcb\xa1\xc0\xeb\x95\xc4\xf7\xf6\x0b\x77\x6a\xbf\x60\xcc\x76\x21\x09\xc5\x54\x1d\xb0\x30\x37\xff\x96\x56\xd7\xb9\xcf\x6f\xd2\x37\x41\xa0\x8c\x27\x6c\xb4\xda\xed\xe9\x5a\x3d\xfe\xfb\xf5\x45\x8c\x6c\x55\x8d\x0e\x4e\x9f\x61\xc6\xaf\xc5\x35\x59\xcc\xa0\x97\x44\xff\x42\xea\xd0\xa2\xcb\x4e\x3a\x9a\x20\xd1\x8c\xa5\x6d\x50\xa8\x04\x91\xe5\x13\x1c\x7a\x46\xd1\x18\x93\xb3\xc6\x05\x8e\x1a\x65\x45\xcf\x35\x96\x18\x35\x44\xc5\x76\xcf\x95\x77\xee\xb3\xaa\x4c\xa9\xd9\xfe\xab\x59\x8e\x95\x32\x74\x1f\x98\x97\x92\x13\x4e\x67\x41\xf7\x24\x41\x63\x1e\x74\x4f\xbc\xec\x3a\x3b\x0c\x8b\x4f\x31\x4f\x3f\x7c\x00\x3e\xea\x5c\x41\xd4\xb9\x06\x10\x1f\x86\x0a\xdb\x07\xde\x21\x3b\xf4\x66\x57\x27\xfa\x0e\xf3\x0e\x89\xfc\xf4\x96\x79\xa7\x8a\x28\xe9\x7e\x7b\xf6\xef\xd5\x8e\x6d\xbc\xba\xd6\xa3\xf1\xe7\x3b\x0b\x85\x17\x62\x97\xa3\x43\xec\x23\x15\x2f\x14\x75\x46\x69\xba\xb6\x64\x17\x2c\xb5\xba\xca\xc0\xbb\x44\xa7\xe7\x58\x50\xc6\x7f\x37\x3f\xa6\x62\x77\xbe\xa6\xbf\x7b\xd0\x7b\xeb\x0d\x21\x0b\x07\x5e\x5b\x95\x6a\x7b\xd0\x6b\x4f\x53\xf5\x87\xfe\x2e\xff\xd2\xb6\x37\x84\x24\x74\xb9\x43\x34\x8e\x63\x5b\xad\xcc\x85\xac\xf9\xa1\xdf\x9e\xea\x73\xd4\x98\x0b\x4e\x86\x04\xad\xa9\x48\x3b\xdc\x2f\xb9\x53\x9b\xa2\x04\xff\x8e\x7c\x04\x02\x74\x80\xc7\x3e\x6d\x08\x82\x39\xf3\x35\x92\x11\x85\x51\x58\xe3\x86\xcd\xa7\x40\x13\x8a\x19\xe5\x9e\x1a\xca\x7d\x1e\xf2\x41\x3a\x3c\x8c\x04\xe0\x79\x01\x30\xee\x33\x91\x83\x82\xb9\xd3\xb9\xdd\x0a\x45\x84\x0d\xf0\xc0\x3a\x9d\x84\xdb\xef\xaa\xac\x3f\x46\x49\x3d\x8c\xec\xd4\x8f\xe2\x87\x38\x9d\x47\xcf\xc2\xd4\x99\x71\xfc\x2c\x9c\xbb\xe0\x3c\xfd\xf0\x21\x4c\x6a\x40\x89\xbc\x51\x0d\x34\x91\x37\xb6\xf3\x44\x82\xf5\x19\xa2\x4e\x3a\x9f\xc9\x79\x3b\x7a\x66\x7d\x1c\x3f\x73\x78\xde\xb3\xce\x01\xd0\x71\xd4\x45\x2b\x1e\x80\x44\x15\x28\xab\x5d\xd8\x45\x70\xd8\x6c\x3a\x0b\xcd\x10\x4b\x67\x62\x9d\x2e\xd0\x5b\x86\xcf\x30\xf1\x04\x1d\x64\x75\x04\xeb\x08\x90\xcd\x26\xc9\x37\x6f\x64\xc8\x64\x64\xbf\x32\xab\x37\x55\x73\xbc\xe5\xfb\x32\x53\xcf\xac\x59\xc5\xb4\x54\x71\x40\x86\x61\x2c\xdf\x4d\xf2\x32\x73\x47\x99\x49\xa9\x4c\x62\xb3\x4a\x9e\xc4\x96\x76\x10\xf9\xd9\x95\xc4\xa3\x1e\xc8\x8c\x10\x65\x9a\x67\x41\x18\x15\x20\xe4\x51\xb7\xa0\x67\x55\x8b\x65\x21\xe8\x15\x6a\x8e\x37\xa9\x39\x71\xd5\x8c\x0b\x35\xa7\x11\x67\xf8\xca\xef\xc1\x46\x57\xfe\xd7\x83\x85\x40\xf8\xb0\x51\xe8\x3e\xb0\x01\x4d\x1c\x80\x8e\xe3\x1c\x54\x06\xb0\xfa\xb9\xa2\x09\x55\x4a\x34\x54\xd8\x97\x54\x6b\x77\xe3\xfe\x3c\xa0\xfd\x34\x88\x0e\xec\x2d\x3c\xd3\xfa\xc9\xb8\x3f\x0e\x68\x7f\x14\x24\x07\xa5\xfd\x3e\x75\x61\x92\xe9\x8c\xa6\x82\xed\x77\x78\xf9\x48\x68\x3a\x67\xa8\x1d\x55\xcc\x3c\xef\x4f\xdb\xf1\xd3\xa7\x84\x46\x31\x62\x90\x85\x37\x8f\x9f\x7e\x7c\xf9\xf6\x8d\x0c\x9c\xbe\x3c\xd0\xfd\x9f\xf0\x69\x72\x1a\xb1\xf4\xc1\x39\xba\xbe\xa4\x2c\x4e\xcb\xbd\xc6\xa4\xc1\x75\x84\x36\x76\xdd\x67\x21\x97\x2f\xc4\x98\x65\x33\xb0\x16\x02\x30\x4a\x69\x8c\xce\xb9\xb4\x9e\xde\xaa\x4d\xe9\x90\xae\xd2\xea\xc6\xb0\x80\xf1\xa8\xc4\x3a\x6a\xfc\x6b\x3c\x75\xae\x58\xcf\x33\xc4\xdb\x72\xde\x95\x52\x5f\x3b\x22\x71\x7b\x9e\xa2\x76\x8c\xd0\xac\x2d\x23\xc5\xb6\xc7\x8c\x4e\xdb\x52\x63\xf0\xbe\x03\xd0\x28\x93\x10\x16\xa2\x41\x77\xa8\xde\xbe\x8f\xc2\x30\x73\x41\xd4\xe7\x21\x1a\xf4\x86\x81\x4f\xe4\x5f\x28\x3e\x8f\xb2\xb8\x0a\x37\xa3\x39\x63\x88\xf0\x5f\x64\x23\x4c\x86\xa6\xbd\x0e\x38\x9c\xa7\xe8\x19\x42\xb3\xe7\x62\x68\x01\x71\x5f\xa4\x95\xe9\x32\x7f\xa3\xd9\x0c\x91\x8d\x83\x3c\xb9\x58\xca\x4d\x1d\x96\x61\xc1\xae\x49\x9f\x65\x54\xfe\x4b\x8a\xfe\xcb\x36\x77\x2b\x95\xce\x18\x8a\xe2\x3f\xd4\xa3\xd4\x8e\xce\xda\x6e\x39\xf0\x3f\x85\x3f\xad\x5c\x46\xb9\xce\x1d\x35\xce\x3d\xa5\xb1\xdb\xba\xa3\x66\x55\x7f\x69\x6c\xa5\x3b\x6a\x96\x3b\x4b\x63\x2b\xdd\x51\xb3\xed\x5d\xa4\x31\xd0\x57\x63\xcb\xdc\x51\x17\x88\xec\xfb\xf1\x36\x46\xcd\xfc\xef\xea\x45\xdd\xe5\x41\x6e\x69\x13\x5c\x99\xc7\xf7\x90\xe5\xeb\xd3\xcd\xa4\x61\x24\x1c\x0c\xcd\x65\x9e\x87\x26\xf3\x31\xd8\x49\x28\xa3\xf0\x90\xa4\x9f\x1d\xf7\x64\xea\xf4\x6a\x15\xd9\x12\xb4\x74\x2b\xb4\x37\x9a\xcc\xc9\xf9\xde\x51\xe3\xde\x51\xe3\xde\x51\xe3\x9f\xe5\x62\xf9\x33\x3a\x73\x96\x68\x22\xa4\x75\xc6\x07\xca\x6a\x35\xba\x82\x58\xfd\x1c\x21\x9c\xd8\x2e\x47\xac\x70\xd8\x25\x53\x73\x1a\x12\x9f\xc1\x2e\x80\x51\xd8\xcd\x3d\x3d\x1b\xe4\xc1\x81\x7c\x2f\x33\x92\x14\x00\x9b\xd1\x62\x41\x1f\xf6\xf4\x82\x6b\xab\x57\x85\x18\xbb\x70\x1e\xb6\x7b\x30\xb1\xa6\x01\xfb\xd1\x03\x0a\xc0\x49\xfa\x30\x3a\x01\xc9\xe0\xf0\x70\x3e\x0c\xb9\xde\xe0\x29\x4c\x0f\x43\x9a\xc9\xac\x93\x82\x4f\x94\x22\x7a\xf5\x2b\x02\x72\xe9\xd7\xf2\x28\xab\x4c\x7d\xe9\xde\x92\x0d\x7a\x43\xb0\x04\x6b\xad\xce\xea\x91\xf1\x76\x61\xf9\xf6\xe8\x78\x8f\x8e\xf7\xe8\xf8\x8b\x47\xc7\x36\x47\x51\xf5\x7e\xaf\x77\x65\xf1\x14\x33\xd0\x67\xc1\x80\x0d\x41\x67\x8c\x13\x5e\x46\x51\x05\x5f\xb9\x79\x28\x4d\x24\x75\xa0\x77\x41\xfe\x0a\x2d\xdd\xb1\x4b\xdb\xd5\x68\x70\xbe\x9b\xfb\xf0\x3d\x2f\xbe\xe7\xc5\xf7\xbc\xf8\xd7\xcf\x8b\x4b\x4e\x1c\xe2\x90\x08\xba\x8b\x86\x24\x8b\xcf\x91\xc7\xf2\x50\x9c\xb8\x31\x30\xf5\xe9\xee\xb8\x6f\xce\xd1\xfd\xf1\xe3\x94\xf0\x08\x97\x55\x11\x6b\xab\x69\x85\x18\x32\x4a\xe6\xf1\xda\x87\xbd\xf2\x95\xb6\xa7\x17\xbf\x04\x7a\x91\xec\x8e\xb1\x76\xc0\x55\x36\xbd\x68\xa3\xab\x0d\xe9\xc5\x9d\x10\x57\x71\xa4\x5f\x3a\xbd\x48\xee\x0d\xdb\x62\x15\x10\x31\x53\xca\xab\xc4\x88\x7b\xec\x33\x00\x6d\x04\x4a\xed\x83\xdf\x6c\x3a\x98\xed\x62\x12\x02\x7d\xe4\xd2\x95\x65\xb6\x62\x1b\xf6\x99\x58\x36\x00\x9b\x5d\x10\xa8\xbb\x66\x47\x54\xab\x50\x5f\x9d\x98\x61\x43\xe6\x9c\x8b\xbb\xa1\xc0\x9c\x73\x71\x49\xf0\xdb\x32\xe7\x31\x1a\xed\x19\xf3\xaf\x19\xd1\xee\x19\xf3\x2f\x0b\xd1\xfe\x61\x8c\xf9\x51\x29\xa0\x8d\x2d\xb7\x7c\x3e\x9d\xf1\x6b\x1f\x8b\x0e\xe0\x90\x40\x62\xec\xc4\x21\x0e\xdf\x48\xe5\x59\x1f\x03\xd8\xc4\xe9\x9b\xe8\x8d\x8f\xb3\x05\xc9\xa2\xde\x48\xd3\x8c\xb0\x07\x20\x6e\xef\x18\xc1\x78\x74\x6f\x6c\x7a\xcc\xe8\x6c\x8f\x11\xf7\x18\x71\x8f\x11\xf7\x18\xb1\x8c\x11\x0d\x17\xbe\x58\xf8\x38\x1c\x0c\x01\x34\x11\x34\xc9\x6e\x96\x0a\x8c\xce\xee\x0d\xaf\x21\xc2\xd9\x16\x4a\xd8\x7b\xd4\xb6\x47\x6d\x7b\xd4\xf6\xd5\xa2\x36\xfb\x15\xa6\xc1\xfa\x7a\xab\x68\x1c\xe1\x33\x10\xb0\x5d\x10\xda\x39\xba\x4e\xef\x0d\xa1\xa9\x37\xa2\xf6\xe9\xf5\x76\x42\xc5\x54\x29\x89\xee\x85\x8a\x5f\x21\xfa\xdb\x0b\x15\xbf\x2c\xf4\x77\xaf\x42\xc5\x82\xbe\x23\x3c\x06\x90\x86\x58\xd0\x76\x51\x88\x07\xbd\x21\x4c\x43\x3c\x38\x32\x55\x4b\x32\xc4\x34\x73\xe0\x65\x52\x22\x20\x5d\xcc\x47\x30\xca\x58\xe1\x22\xaf\x4c\xc1\x62\x51\x4c\x49\x41\x7f\x20\x75\xbf\xcb\x2f\xd8\x11\xe8\x3b\xac\x68\x23\x97\x35\x6e\xe4\xe7\x1e\xf3\x11\xa4\x00\xb8\xcc\x72\x5d\x32\x53\x53\x01\x46\xce\x2a\x46\x68\x6a\x8a\x2d\x61\x6a\xde\xe0\xc9\x6e\x62\x4f\x55\xfb\xc9\x75\x5d\x9c\xfc\x1d\x83\xcd\xaf\xbb\x0e\xf6\xe4\xed\xd7\x8c\xdf\xf7\xe4\xed\x97\x85\xdf\xff\x74\x9c\x7b\x11\x23\x13\xb0\x58\x34\xb1\xc0\xca\x38\xc7\x76\xbb\x23\xbb\x7b\xa4\x7c\x49\x5c\xa2\x7b\xf7\xb8\x6e\x8f\xeb\xf6\xb8\xee\x9b\xc4\x75\xc7\x25\x5c\x07\x69\xc8\x72\x4a\xb6\x82\xf2\x04\xba\x33\xef\xe8\x14\x74\x04\x2e\x79\x72\xed\x13\x88\x77\xc4\x7c\xa2\xfa\xfd\x61\xbe\x44\x2c\xfb\xc6\x56\xbc\x7b\xcc\xb7\xc7\x7c\x7b\xcc\xf7\x95\x61\xbe\x12\x5e\x5b\xad\xd2\x63\xb9\xbf\x33\x8e\x09\x88\xcf\x01\x58\x02\x38\x18\x82\x00\xed\x84\xf3\x14\x12\xda\x0e\xe9\xb9\x54\xd9\x89\x9f\x89\x62\x4b\x3a\x3c\x5b\x62\x45\x46\xa7\xed\xfd\xfb\xce\x1e\x35\xee\x51\xe3\xb7\x86\x1a\xef\x2a\xce\xd2\x16\x06\x82\xee\xa7\x23\xb1\x0b\x9e\xdb\xcf\x47\x05\x7c\xb6\x99\x8f\x0f\xf3\xf7\x8c\xd1\xf9\x6c\xcf\xe0\xee\x71\xd9\x1e\x97\x7d\x4b\xb8\x6c\x53\x61\x1e\xa4\xe1\xcd\x32\xb7\x88\x19\x53\xf6\x3c\x1a\x4d\x5c\x2a\xd3\xf6\xa3\x06\x01\x90\x85\x74\xc0\x87\x07\x65\xa3\xc3\xc5\xc2\x97\x87\x54\x64\x86\x0c\x40\x7d\xb6\xa4\x61\x21\xa4\xbb\xa0\x58\x89\xc0\xee\x91\x2d\x9e\x44\x69\x5b\x60\x88\x0d\x5f\xc2\xcd\x5f\x55\x65\xe3\x17\xf3\x15\x25\x77\xf5\xce\x54\x71\x22\x0e\x49\x1d\x6e\xc7\x72\x0d\xb5\x9f\xcb\xc8\x9c\x4d\xbd\xe5\x1e\x1d\xb5\x5a\x59\x5c\xf3\x2c\x73\x70\x34\x6c\xb5\xec\xaf\x03\x22\x63\x0a\x0d\x86\x40\xbf\x41\xc9\xa7\x32\x31\x0d\x40\x40\x87\x18\xc0\x28\x6c\x16\x03\xf6\x52\x88\x20\xce\xd4\xee\xa3\xfc\x21\xd0\x3c\xdf\xd1\x9d\x04\x27\x93\x28\x7d\x83\xae\xf8\x76\xcf\x63\x8e\x2d\xee\x77\x21\xc9\x3b\x9b\x7b\xab\xc5\x3e\xef\xd8\x0e\xa5\x20\xef\xc8\x15\x81\xbc\x63\x3b\x94\x2a\xf1\x1d\xdb\x3d\xb9\x89\x6d\x37\x63\xe8\x02\xd3\xf9\xa6\x96\x5d\xe6\x6f\x5e\xed\x9b\xdf\x7e\x66\x2a\xfe\x88\x2d\xf8\x4e\xb7\xfd\x45\x6f\x43\x4c\xf6\x26\x2c\x7b\x4a\x71\x4f\x29\xee\x29\xc5\x7b\x31\x61\x39\xdc\x89\xeb\xc6\xe4\xfe\x4c\x58\x30\xe1\x88\xa5\x68\x37\x97\x3b\xb7\x46\x8a\x9f\xc1\x54\xde\x8d\x76\xf7\xd8\xa3\x0e\x7b\xec\x71\xc7\xd6\xb8\xa3\xe2\x00\xb1\xc1\x3a\xd3\x68\xb6\xd2\x05\x4d\xfe\xf4\x10\x0c\x86\x4b\x00\x3a\x33\x3a\xf3\xdd\xce\x6b\x4c\x5f\x79\xd8\x3d\xe1\x0f\xcd\xfd\x7b\xc2\x0f\x0f\xf3\x3c\x22\x6e\x7d\x81\xb8\xb8\x60\x71\xbb\x27\xf4\x21\x36\xe5\xe8\xe1\x21\x10\x77\xeb\x80\x0e\xc3\x30\x44\xe0\x46\xdc\xd9\x07\xa7\x0c\x45\xe7\x4b\x71\x12\x7a\xd6\x16\x6b\xf6\xf4\xc5\x2b\x30\xcf\x4e\x84\x61\x86\x3f\xee\x11\x63\x5d\xd0\xf3\x7b\x71\x8d\xb3\x47\x57\x7b\x74\xf5\x25\xa1\xab\x9d\x8e\xaf\x38\x4c\x75\x2c\x9d\x91\xf5\xbf\xff\xf0\xcb\xbb\x4e\x94\x24\x07\x55\x1d\x69\x85\x10\x25\x2a\x92\x7e\x68\x58\xe6\x87\x06\x46\x21\x55\x58\xae\xac\x5e\x62\xd4\xa2\xfb\xd6\x4a\x5e\xc8\x60\xd1\xd1\x1a\x3c\xca\xd9\xf5\x4b\xd9\x63\x1f\x41\x1d\xd2\xf8\x20\xd7\x72\xb7\xd5\x95\x6b\x2b\x46\xaa\xe2\xf2\xb3\x28\x16\xff\x46\xf1\x5e\xe1\x64\xcf\x5f\x7e\x5d\x28\x77\xcf\x5f\x7e\x1e\x83\xe0\x22\x3a\x24\x39\xb7\xe9\x41\x0f\x40\xac\x82\xbf\xef\xa6\x64\x2c\xaa\xde\x1b\x41\x76\x8e\xae\xf7\xaa\x24\x7b\xa4\xb7\x47\x7a\x7b\xa4\xe7\xd6\xf7\x10\x08\xe2\xcb\xb0\x13\x9e\x46\x7b\x5d\x92\x3d\x32\xdb\x23\xb3\x3d\x32\xdb\xc2\x30\x4c\x9a\xea\xda\x7e\x5e\x56\xf3\xb0\x46\xc5\x64\x09\x76\x93\xb8\x4d\xa3\xfb\x54\x17\x99\x46\x7b\x0f\x57\x7b\x74\xb8\x47\x87\x7b\x74\xb8\x0d\x3a\x54\x38\x70\x37\xde\x75\x1a\xdd\xd6\xd1\x55\x25\x7a\xfa\x1a\xad\xb6\x2d\x5c\xc2\x9c\x21\xde\xc6\x24\x46\x57\xf7\xa2\x62\x54\x87\x60\xb5\x03\x5a\x75\x66\x77\x55\x30\x62\x5a\x97\x11\xe8\xa9\x2d\xba\x82\x60\x10\xa9\xd8\xf9\x06\x9d\xb5\x7b\xe2\x38\x36\xcb\x4f\xe4\x99\x57\xf9\x30\x0c\x69\x16\x11\xfd\xb1\xcf\x40\x47\xed\xf3\xc7\xdc\xc7\x87\xbd\x9d\x76\x82\x58\x9d\x5b\x58\xce\x64\xda\x46\xcc\xa5\x6d\x44\x76\xd2\x36\xda\xee\xf2\x24\x74\x27\xff\x90\xd5\xab\x13\xdc\x2c\x77\x9a\x40\x4a\x67\x21\x77\x4f\x20\x73\x4e\x20\xb7\x07\xcb\xb6\x1a\xac\x5a\xee\x76\xb4\x0f\xde\xb3\xa7\x17\xf6\xf4\xc2\xb7\x49\x2f\xe8\xad\x54\xf6\xaa\x9e\x9d\xd9\x72\xec\x33\x73\x5b\x70\xeb\xb6\x40\x3b\xdd\x15\xa6\xfa\x2d\xef\x8b\x72\x5c\x33\x52\x1b\xd7\x6c\xbb\x9b\x80\xce\x44\x2b\x51\xb2\xc7\x8d\x7b\xdc\xb8\xc7\x8d\xdf\x24\x6e\xac\x93\x93\x3b\xfc\xb9\xb1\x3e\x73\x38\x5e\x6b\xa0\x9d\x88\x40\x83\x7a\xee\x4d\x64\x34\xc3\x33\x57\x08\xfd\x4d\x2c\x3d\xf0\x0c\x6d\xc4\x58\x95\x42\xc6\xaf\x63\x9c\xee\xca\xf2\x95\x77\x44\x0f\x0f\x32\x7e\x42\x9c\xcc\x41\xf6\x35\x14\xe8\xe9\xf3\x4d\xe9\xb6\xae\x4b\x67\x8c\x4e\x71\x8a\xb6\x71\x5e\x5a\x13\x4a\x45\x3a\x4c\xe0\x13\x44\xe4\x23\x4e\x21\x1e\x95\xa5\xba\x53\x66\x43\xbb\x4e\x36\xb4\x3b\xec\xdb\x1f\xc1\x20\x3b\x2d\x16\x12\xc9\x35\x20\xcb\x50\x4b\x67\x0f\xe2\xb0\x7b\x82\x1f\xf2\x13\x2c\xcf\x1f\x1e\x5a\x2d\xe1\x0c\xb2\xdb\xdb\x03\xc4\xd9\xc1\xea\x86\x61\x88\xfb\xbc\x18\x30\x8b\xc8\xb1\xaa\xb8\x2e\x5a\xff\x7b\xa7\xf3\xa7\x54\xac\x5e\xe8\x96\x43\x06\x91\xdc\x45\xf7\x77\x1c\xb7\xb3\xba\xfa\xda\xe4\x1c\xd0\x2d\xd9\x58\x29\xcc\x50\xfb\xa1\x46\x98\xd1\xde\x4d\x98\x61\x96\xe1\x8b\x16\x68\xfc\x6b\x8e\xe6\x9f\x1f\x11\x7d\x4e\x94\xc2\x56\xa3\x14\x66\x50\x0a\xab\x41\x29\x4a\x6d\xd0\x1a\xc7\x5a\x9c\xe9\x57\x75\x12\x59\x19\xd3\x2c\x01\x08\xaa\x89\x6b\xf0\x17\x2b\xe0\x2f\xe6\xc0\x5f\xf4\x2e\xf0\x97\x5c\x73\x89\xb6\x36\xf6\x06\xc1\x76\xf7\xe7\xc0\x22\x72\xb6\xdd\x0e\x93\xb1\x59\x19\x4e\xab\x74\xc0\xde\x4f\xf7\x57\xc0\x53\xed\xfd\x74\x7f\x59\x3c\xd5\x1f\xe1\xa7\xdb\x78\xe9\xce\xa3\xa1\x0e\x7a\x43\x18\x85\x64\x70\x34\x3c\x88\x42\xef\x94\xd2\x04\x45\x82\xc1\xd2\xe8\x4a\xec\x9d\xb7\x63\xe9\x99\x3b\xd2\x51\x4c\x07\xd2\x02\x10\x3f\xa4\xc0\x74\x6b\x1e\x46\x7d\xde\x49\x38\x0a\xc4\xbf\x30\x09\xf1\xc9\xdc\x4f\x20\x05\x27\xc9\xe1\x21\x48\xd5\xd1\x4a\xe4\x2e\xc0\x8f\xf2\x6a\x23\x59\xed\x4c\x56\x3b\xe3\x70\x1c\xe2\x93\x91\x3f\x16\xd5\xc6\xed\xb6\xa9\x36\xce\xad\x9e\xc3\x30\xa4\xad\x56\xd4\x6a\xe9\x2c\x0a\x60\xba\x0b\x9e\x96\x98\xf3\xde\x5c\x68\xab\x1b\x69\x2f\xce\xfa\x9a\x51\xef\x5e\x9c\xf5\x65\xa1\xde\x2f\xc9\xad\x2c\x35\x34\xed\xae\xde\x64\x55\xf5\x7b\xe3\xa2\x19\x92\xaf\x9b\xfb\x08\x32\x7b\xf4\xb8\xa7\x4c\xbf\x4c\xf4\xf8\x55\x45\x90\x49\x17\x0b\x3f\x95\xfa\xa6\xb7\x09\x12\xd3\xdc\x28\x48\x4c\x73\x97\x28\x31\x2b\x82\xc4\xec\x86\xee\x45\x95\x7b\x8c\x11\xc3\xd0\x0c\xed\x75\x59\xbe\x6e\x0c\xbe\x27\x70\xbf\x2c\x0c\xfe\x67\xd3\x7d\xf5\x88\xf4\x06\xe4\x35\x4b\x72\x05\x41\xe2\xe2\x61\xa0\x16\x54\x09\x65\x45\x97\xe1\x8d\xea\x5d\x40\x96\xa0\x64\x24\x90\x61\x0c\xbc\xa3\x1f\x0e\x85\xae\xee\x91\x1c\xbe\x40\x2c\xdd\xf3\xff\x7b\xf4\xb8\x47\x8f\x7b\xf4\x58\x30\xfb\x2c\x92\xae\x0c\xf4\xad\x57\x54\xe3\x37\xa9\xa3\xf1\x87\x0f\x82\x01\x1b\xee\x86\xef\x24\x80\x7b\x43\x78\xe9\x64\x3e\x1e\x27\x7b\x84\xb7\x47\x78\x7b\x84\xf7\x6d\x22\x3c\xd1\x92\x84\x00\x05\x57\xef\xa3\x10\x65\xe8\x0c\xe8\x66\x64\x2b\x3c\xb4\x99\xef\x22\x61\xc8\x41\xab\xc5\x17\x8b\xd7\x11\x9f\x74\x58\x44\x62\x3a\x3d\xc1\x8f\x7a\x27\x80\x85\x32\x69\x9c\x50\x01\xc0\x07\xff\x89\xdb\x6d\x41\x72\xa2\x01\x1e\x42\xf1\x8f\xec\x17\x14\xff\x84\x24\x53\x0b\xd8\x05\x6f\x6a\x3c\x76\x47\x6a\xd2\x96\xdf\x27\xcb\x22\x2c\x73\x84\x49\x5b\x2d\x9f\x86\x18\xe2\x4a\xe0\x5b\x35\xf9\x14\xf4\x89\x4f\x21\x06\xc1\x80\x0e\x6f\xa3\x97\x22\x17\xe2\x3e\x5c\xc2\xe1\xcc\x67\x1b\x95\xff\x92\x5d\x3d\x92\xa5\x33\x86\xa2\xf8\x0f\x3d\x3a\x3b\xde\x4a\xb7\x1c\xf8\x9f\x02\x71\xe4\x37\x83\xf6\xe9\x57\x7b\x25\xe0\xdd\x85\xbc\x9a\x47\xdc\x5e\xd4\x0b\x5d\x72\xde\x7e\xe1\x3a\x08\xee\x40\xba\xdb\x57\x63\x0b\xd4\xd9\x5c\x16\xc4\x97\xf7\x84\x56\xe9\x67\xf1\xa9\x98\x81\x8f\x4a\x72\xd8\x9c\x00\x85\x34\xc4\x45\xe7\x74\x74\xb1\xf0\xa9\x14\xa8\xfa\x24\xa4\xba\xa4\x61\xde\x21\xf7\xf1\x6e\x7c\xb9\x04\x13\x46\x6e\x6c\x9b\x3a\xb1\x6d\x64\xe3\xc1\x74\x3b\x3c\x48\x59\xf9\x8d\x6a\x4f\xa5\xee\xa9\xd4\x3d\x95\xfa\x55\x53\xa9\x9f\x25\xb0\x17\xba\xe2\x88\xc4\xfe\x8d\xc0\x36\x73\x8e\x82\x2a\x09\x68\xe8\x5f\x29\x1b\x55\xc8\x14\xe2\x90\xfb\xac\x20\x0f\xf0\xeb\xa9\x61\x0c\x16\x8b\x22\x41\x88\x81\x3c\xa3\x21\x36\x94\x62\x8a\xb8\xcf\x27\x38\x85\x9e\x5c\x09\x0f\x92\x6a\x8e\x40\x7a\x62\xd4\xa9\x07\x59\x4e\x61\x2a\x65\x03\x96\xbd\xa5\x95\x66\x47\x55\x1d\x51\xc2\x11\xe1\x1e\x14\x78\xdf\x69\x88\xb3\x49\x65\x55\x46\x4f\x54\xdc\x11\xfd\xf1\x4d\x7f\x19\x00\xc1\x6d\x61\x58\x23\x04\x00\x8a\x8a\x1d\x5d\x6f\xb9\xdc\x5d\xd3\x96\x47\xbb\x79\x51\xde\x5f\x14\xfb\x8b\x62\x7f\x51\x7c\x91\x17\xc5\xb6\xae\x5d\x6c\xa7\x56\x9a\x72\x86\xbb\x3d\xdf\x0b\x64\x73\x6f\xb2\x5a\x4e\xcf\xce\x92\x1d\x4d\x10\x55\xdd\x3f\xb7\x11\xa2\xea\xe3\x1f\x60\x86\x68\x26\x67\xef\x7a\xff\x5b\xc4\xad\x7b\xcc\xba\x7d\xa4\x90\xaa\x5e\xac\xde\x0a\xb9\x8b\x09\x6b\x4e\x95\xd9\x5b\xae\x39\x85\xb5\xa1\x62\x35\x86\x9b\x31\x06\xa4\x1d\x69\xa5\xf9\x76\x2c\xda\x62\x61\x71\x37\xab\x06\xda\xbd\x50\x0d\xf9\x50\xfc\x40\xfd\x6e\xc0\x0f\x7b\x4b\x9f\x1a\xf3\x37\x5e\xf2\xcf\x9f\xaa\x86\x21\x1d\xb0\x21\x58\x3a\xb3\x9a\x68\x37\x53\x32\x85\x3f\xee\xed\x1e\x98\x93\x12\xfe\xdf\x4b\x85\xf7\x52\xe1\xbd\x54\x78\x2f\x15\xae\x93\x0a\x1b\x91\x85\x8c\xbb\x29\x56\x60\x14\xf1\xa2\x08\xd8\x11\xb0\xa9\x60\x89\xcb\x2c\x7c\x2c\xd0\xee\x8e\xda\x5c\x12\x73\xdd\x9b\xd4\x58\x36\xbd\x77\xe1\xbf\x97\x05\x7c\x5d\xf4\xea\x5e\x16\x70\xef\x42\xe3\xd5\xfa\x02\xee\xe8\x00\x0a\xfb\xa8\xf8\x00\x60\x77\x71\xe6\x25\xe6\x13\x3a\xdf\xce\x9b\x2b\x26\xa3\x64\x1e\xa3\x8a\x47\x92\xbd\x79\xd6\x57\x80\xf1\xf6\xe6\x59\x5f\x16\xc6\xbb\x57\xf3\xac\x9c\x64\x6b\x36\xcb\x0a\xab\xad\x96\x5f\x8e\xda\x29\x36\x81\x6a\xbc\xcf\xaa\xce\x58\x64\x28\xf8\x0a\x52\xa8\xf3\x0c\x93\xab\xc3\x42\xc1\x35\x12\x88\x40\x9f\x05\x4c\x93\x9b\x3e\x01\x4b\x00\x07\x43\x60\x3b\x1f\xd2\xb8\x4d\x1c\xfd\x5d\xf0\xb6\xae\x7e\xeb\xc0\xed\xac\xe0\x1a\x13\xfb\x7c\xd0\x1d\x42\x5e\x75\x8d\xb9\x99\xa1\x95\x76\x2f\xb5\x95\x74\x36\x9a\xcd\x10\x89\x37\x29\x39\x9a\xcc\xc9\xf9\x46\x05\xe9\x74\x16\x8d\xf8\xa6\x45\xe7\x7c\xa5\x70\x38\x2f\x4a\x78\x84\xc9\x46\x83\x8a\xd1\x68\xa3\x62\x8c\xce\x36\x29\xa7\x38\x14\xa9\x05\xb2\x69\xe1\xcd\x4a\x92\x78\x53\xa0\x89\xc0\x2d\x64\x93\xa2\x67\x8c\xce\x67\x1b\x82\x9d\x44\x69\x5b\x39\x6c\xdf\xac\x6c\xee\xf8\x6c\x93\xa0\xb2\x1b\xad\x81\x15\x2d\x7b\xf3\x40\xb5\x9b\x86\x8d\xdc\x3c\x3c\xd1\x86\x61\x3b\x36\xf5\x7f\xbf\x95\x6f\xef\x6d\x7c\xdd\x6e\xe9\x2b\xf2\xf6\x0e\x22\xab\x3e\xef\x36\xf6\x69\xb6\xb1\x6b\xaa\xcd\x7d\xa3\x6c\xe5\x55\x60\x73\x8b\xd4\x2d\xac\xb3\xb6\xb0\x6b\xd8\x58\xc9\x76\x0b\x2d\xb4\x4d\x95\x10\xb6\x7e\xd2\xbb\x8b\x77\xbc\x92\x94\x78\x73\x0e\xa3\xf2\xd0\x07\x09\xc4\x90\xc2\x08\xa6\x70\x0e\x13\x38\x82\x63\x18\xc3\x09\x9c\xc1\x29\xbc\x80\xd7\xf0\x14\x9e\xc1\x4f\xf0\x12\x3e\x87\x1f\xe0\x5b\x78\x05\x1f\xc3\x8f\xf0\x1c\xbe\x86\xef\xe0\x6f\xf0\x3d\x7c\x0a\x5f\xc2\x67\xf0\x0d\x7c\x05\x5f\xc0\xdf\xe1\xcf\xb7\x7d\x34\xac\xad\xf0\x58\x5e\x9d\xea\x8e\xf7\xe0\x0d\x22\xf3\xa9\xa2\xe0\x82\x66\x17\x9e\x21\xee\x08\x9d\x9b\x11\x2d\xcb\x55\x80\x9f\x8a\x9b\x76\x2b\xb8\x6c\x33\xb8\xea\x62\xde\x0a\x32\xd9\x18\xf2\x9c\xa3\xad\x20\xe3\x0d\x21\xab\x6b\x7f\x2b\xd0\x74\x23\xd0\xcf\xd0\x68\x2b\xa8\xd1\x66\x50\x19\x9d\x6d\x05\x36\xdd\x08\xec\x0b\x49\x56\x3c\xb9\xde\x0a\xf4\x7c\x0b\xd0\x5b\x01\x4e\x36\x04\x4c\xe2\x2d\x7b\x3c\xda\x0c\xb0\x22\x87\xb6\x82\x3c\xde\x08\xf2\xdf\x04\xf5\xb4\x65\x9f\xe3\x8d\x20\xff\x14\xa5\x6f\xd0\xd5\x76\x87\x6f\xb2\x29\xe4\x77\xfa\x76\xde\x0a\xfa\x6c\x23\xe8\x2f\xc9\x76\xa7\x64\xba\x21\x54\x4d\xf6\x6d\x05\xfb\x62\x43\xd8\x82\x4a\xdc\x0a\xf0\xf5\x46\x80\xff\x9b\xe2\xed\xf6\xdc\xe9\x46\x60\x5f\x47\xdb\xee\xb8\xb3\x4d\xe1\x6e\x05\xf5\xd3\x46\x50\xb7\xde\xc4\x97\x1b\x81\x7d\xab\xbd\x01\x6f\x05\xfa\xf9\x66\xa0\x35\xf5\xbc\x15\xe8\x0f\x1b\x81\x7e\x87\x67\xe8\xb1\xac\xb9\x15\xf0\xb7\x1b\x03\xdf\x0a\xec\xd5\x66\x60\x77\xc1\x15\x8f\x37\x02\xfd\x7f\x05\xe1\xbf\x15\xdc\x8f\x1b\xc1\x7d\x2f\xf8\x84\xad\xe0\x9e\x6f\x06\x57\xb2\x15\x5b\x01\x7e\x6d\x01\xae\xa7\x25\xdf\x6b\xdf\x3a\x5b\x81\x7e\xb7\x61\x9f\x05\xcf\xb2\x15\xe0\xdf\x36\x04\x2c\x59\x9c\xad\x20\xbf\xdf\x08\xf2\x07\xc5\x11\x6d\x05\xf9\xe9\x66\x90\x05\x03\xb5\x15\xdc\x97\x9b\xc1\xa5\x6c\xdb\xd5\x7b\xb6\x11\xe0\x8f\xd1\x96\x37\xd3\x9b\xcd\xc0\x4a\xde\x6c\x07\x4c\xf4\x6a\x0b\xf0\x5b\x01\x7e\xb1\x11\xe0\x9f\xc9\xb6\x1d\xfe\x7d\x23\xb8\x7f\x57\x8c\xe5\x56\x90\x7f\xb6\x20\x6f\x24\x6e\xad\x38\xcb\xde\xf0\xb9\x7f\x07\x79\x73\xc2\x91\x53\x13\xad\x81\x1e\x86\x7c\x29\x0b\xd4\xe5\xcb\xec\xb3\xda\xfa\x8f\x42\x5d\xa0\x2e\x5f\x4c\xc7\xc6\x93\x61\x05\x39\xb8\x7b\x9f\x8e\xb7\x78\x5f\xb5\xdf\x10\x20\x51\xd2\x77\x1c\xb2\x03\xd2\x6a\xf9\x46\x49\xee\xb1\x8f\x40\x67\x8c\x49\xec\x8a\x34\x5c\x72\x45\x2f\xa1\x2c\x01\x00\x05\x71\xbf\x84\x60\xb4\x55\x70\x6e\x07\xf9\x28\xec\xf6\x69\x40\xe6\x49\xb2\xcd\x5c\x66\x4f\xa9\x9f\x6f\x5b\x55\xa7\xc7\x8e\x14\x82\x3a\xa6\x0b\x8b\x85\x7c\x9f\x93\x8c\x38\x5c\xe7\xef\xff\x51\xaf\xcf\xda\xbd\xa0\x0b\x20\x0e\x7b\xb6\xdf\xff\x76\xcf\x1d\x4c\xc4\x28\x04\xc9\x10\xce\xdb\x4c\x90\xd9\x36\xf7\x39\x41\x99\xcf\x82\xdd\xa3\x84\x9a\xd7\xfa\xff\xfe\xf0\xf6\x4d\x47\x3d\xb6\xe2\xf1\xb5\x52\x6f\x2a\xa5\x71\xf3\x68\x85\x53\x19\x6a\x42\x3f\x48\x16\xd3\x38\x44\xdb\xce\x9b\x92\x3e\xdf\xf3\xce\xd2\x7a\x7a\x34\x7b\x09\x2e\x98\xae\x21\xb0\x58\x78\xe6\x75\xd4\x91\xbb\xe5\x08\x4d\x88\x8c\x2d\xf1\x90\xee\xdc\x3d\x20\xa2\xba\x20\x17\xad\x56\x45\x7d\x79\xc7\xa8\x1d\x37\x4b\x47\x3c\xac\xd2\xb4\xca\x80\x1a\xa0\xd5\x5a\x55\x44\x2a\x24\x48\x6d\x5c\xe7\x1a\x10\x15\x22\x65\x74\xdd\x8e\xd1\x88\xca\x27\x69\xe7\x53\xe4\x5f\x55\x05\xab\x90\x9a\xf5\x2c\xc1\x5a\xa0\x0c\xa6\x2b\xcd\x06\x91\x44\xa9\x0e\x94\xe3\x12\x22\xd7\x69\x9d\x60\xfb\x1c\xeb\xd5\x3c\x47\xd7\xa9\x56\x24\xd0\x29\x67\x88\xbf\xbd\x24\x66\x7d\xd5\xab\x7b\x6a\xfc\xe3\xaf\x2a\x23\xc0\x48\x13\x92\x90\x54\xb5\x1b\xf3\xbb\xd5\x09\xe2\x19\x4a\x47\x0c\xcf\x38\x55\x9a\x31\x9d\x9c\x72\x11\xd7\x0d\x54\x5a\x24\x1a\x61\xca\x4b\x28\x53\xee\x28\x2a\x7b\xe6\x68\xbc\x77\xc2\x1f\x96\x77\xd0\x09\x3f\x3c\x34\xe3\x17\xf7\x52\xd3\xda\x46\xdc\xde\x46\x5c\x6e\x23\xfe\xef\x47\x7d\xac\xa7\xc5\x67\x00\x36\xbb\xa0\x33\xa6\xec\x79\x34\x9a\x14\x47\x16\xa9\x99\x1f\x70\xf9\x80\x1d\xac\x19\x61\xda\x77\x9d\x24\x8c\x52\x1f\xc1\x75\x55\x7d\x06\x40\x60\xf5\xa9\xa6\x43\x75\x47\x95\xaf\x6b\xc0\x67\x90\x03\x31\x88\x65\xa6\x74\x64\xab\xbb\x16\x54\x54\x79\x03\x93\x06\x72\x0e\x46\xb5\xa5\x71\x01\x83\x45\x3a\x74\x44\xc9\x18\x9f\xcd\xb3\xef\x4b\x86\xb9\xfe\xbd\x04\x01\x1a\xf0\x61\xc8\xa0\xd5\x6e\xba\x57\x96\xfa\x72\x94\xa5\xe6\xdf\x8c\xb2\xd4\xfc\xab\x50\x96\x9a\xdf\x9b\xb2\x54\x62\x5d\xfe\x49\xe8\xb0\x91\x37\x1a\xf9\x5e\x2a\x7f\x94\x33\xb2\xc1\x38\xdc\x4f\x37\xcc\x36\x74\x79\x90\x6e\xa0\xe2\x45\x5f\x6a\xae\xb0\xad\xc2\x30\xcc\xd2\x9b\xe6\x77\xbe\x81\xfb\xa6\x6f\x41\xd6\x20\x28\x98\x04\x8c\x2c\x8a\xaf\xda\xa4\x85\xd4\xc6\xb9\x36\x94\x83\x58\x74\x54\xed\x60\x82\x39\x8e\x12\xfc\x3b\x62\xfd\xc2\x97\x3a\x4c\xda\x31\x56\xe0\xac\x7b\x86\x78\x5f\xfe\x5b\x2c\x8b\x14\xa2\xe9\xeb\xbf\xc6\x54\xc3\x8a\x05\x37\xf2\x79\xc9\x7a\xb2\x42\xce\x26\x92\x7a\x53\xd7\x69\x88\x5a\xad\x91\x8f\x3a\x33\xc4\xc6\x94\x4d\xc1\xd2\xe7\xa0\x2f\xe3\xcc\xf1\x28\x3d\x07\x7e\x6e\x0e\x92\x4d\x44\xec\x5b\x24\xa1\x2a\x27\x5f\xa3\x80\xbd\x4b\x27\x85\x2b\x40\xa3\x15\x44\x38\x93\xb7\x26\x70\x86\x35\x33\x17\x7d\xea\xf3\x3a\xbb\xe4\xa6\x8e\xcf\x37\x20\x43\x5f\xdc\x3c\x64\xe8\x63\xb0\x04\xe2\x58\x67\x4d\xcf\x72\xd5\xe3\x0a\x41\xda\x73\x12\xa4\x3d\x9b\x92\xe8\x59\x04\xa9\xa6\x79\x35\x15\xf7\x77\xcc\x27\xef\x64\x1c\x43\x60\x5f\xde\x90\x40\xac\x1a\x8c\xaa\x0d\x1e\x3b\x1b\x3c\xb6\x1b\x3c\x1e\x06\x83\x21\x9c\x87\xa9\x1f\xc1\x1e\x80\x49\x38\x17\xc3\x1e\x85\xd8\xde\x32\x70\x1c\x62\xb5\xe6\x66\xa1\x63\x94\x20\x8e\x1a\xc5\x52\x59\xa2\x2c\x0a\x27\x3e\xf5\xa9\x7f\xb3\x84\x0c\xc0\x04\x40\x64\x3e\x31\x80\x37\x4b\x78\x63\xd5\x0c\x46\x50\xed\xa8\xb1\x20\xdf\xf4\xa0\x76\x32\x61\xa9\xad\x20\x48\x60\x19\x9e\x70\x97\x17\x7d\xd4\x41\x44\xaa\xeb\x7c\x34\xdb\x2d\x44\x9d\x73\x84\x66\xaf\x22\x81\xe5\xed\xd4\x98\xd1\x99\xfd\xcd\x50\xca\x23\x26\x09\x16\x3b\x99\x5b\xbf\x2d\xd8\x15\xb0\x16\xc4\x2a\x30\x0d\xc7\xd6\xa9\x9c\x86\x33\x7f\x0c\x0e\x74\xc6\x54\xa6\x5d\x88\x34\x78\x63\x55\x96\x73\x75\x50\x85\x77\x21\xcb\x5f\xab\xf2\xa2\x5d\x53\x30\xeb\xc3\xb5\x2c\x71\xaa\x4a\xe4\x5d\x35\xe5\x4a\x9d\x3f\x95\xa5\xcf\x54\x69\x3d\x4c\x53\xf4\xff\xb3\xf7\xee\xfd\x6d\xdb\xd8\xa2\xe8\xff\xfe\x14\x32\x7f\xb3\x55\x62\x1b\xa6\xe5\x74\x9f\x7b\xef\x91\xcb\xf1\x4e\xf3\x38\x93\x33\x6d\x92\x9b\xa4\x33\x77\x5f\x8d\xc6\xa5\x45\xc8\xc2\x84\x02\x34\x20\x68\xc7\xb5\xf8\xdd\xcf\x0f\x4f\x02\x24\x28\xc9\x4e\xe2\xdd\x76\xf4\x4f\x22\x83\x78\x2e\x00\x0b\xeb\xbd\xdc\x55\x5f\xc9\x7a\x17\xe9\x2a\xce\xcd\xdc\x15\x70\x2e\xe4\x87\x1b\xf1\x61\x97\x05\xa8\x46\x37\xb2\xd1\x0b\xd5\x28\xb4\x0a\x55\xed\x85\xac\xf6\x5e\x55\xdb\xb6\x14\xd5\xe4\xbd\x6c\xf2\x46\x35\xe9\x5f\x8f\xaa\xfc\xa6\x06\xe0\x60\x27\x36\xd0\x61\xcf\xee\xc9\x0b\xee\xfd\x07\x7e\x7f\x24\xf1\xde\x7f\xe0\xb7\x45\x12\x7f\x75\xff\x81\x2f\xe3\x31\x65\xd3\x11\x3b\xf4\xc4\x3b\xf4\xcf\x0a\x33\x94\x77\xe9\x0a\xc1\x8f\x5b\xca\x82\xa6\x2c\xc6\xca\x8b\x0a\x66\x29\x71\xdf\xfc\x16\x3d\xe0\x7d\x6b\xc5\x96\x8a\xa3\xc8\xf8\x1a\x50\x18\x25\x02\xe9\xbd\xaf\x66\x33\x54\x96\xf3\xaa\x88\x00\x8c\x3b\x12\xbd\x26\x20\x81\x0a\x5a\xb5\xb1\xbd\xa5\x41\xd1\xb9\x9b\x02\x26\x52\x78\x15\x8c\xb3\xf3\x4c\xdd\x19\xd1\x97\xa5\x2b\x01\x50\x4b\xdd\x25\x3b\xb1\xc5\xdd\x27\xc7\x97\xd5\x7c\x8e\xd8\xf1\x8a\x16\x78\xf6\xa0\xa8\x87\xf7\x45\xc6\x2c\x10\x38\x64\x1f\x9a\xe4\xbf\xdd\xd5\xf3\x37\x1b\x6d\xe1\xd7\x87\xb1\x18\x5d\x7d\x5f\xf1\x3f\x5b\xaa\xeb\xad\xbc\x5b\x62\xe7\x05\x58\x8a\x37\xe4\x8a\x62\x72\x25\xc8\xab\xd2\x7e\x12\x8d\xa4\x35\x4d\xee\x97\x3b\xb4\x98\x29\xf4\x7c\x47\xdb\x9a\xbc\x33\x94\x64\x33\x8e\xaf\x65\x8b\x57\x7a\x27\x0c\x17\xf5\x1d\x4a\x96\xd9\xa7\x67\xcd\xf5\x3f\x33\x9c\xb8\xce\x51\x9d\xfb\xad\xca\x05\x9e\xf3\x58\x25\x7a\xe7\xe0\x92\xa1\xec\xe3\x41\xb8\x7f\x49\xaa\x70\x50\xd7\x9e\xcc\xbd\x91\x43\xb4\xc6\x3d\x0e\x8f\xa7\x66\x79\xbc\x69\x09\xb5\xc2\xe2\x77\x4c\xe1\xfb\xf2\x27\x72\x49\x05\xde\xc8\x9d\xde\x05\x2b\x54\xce\x16\x48\x6c\x8e\x27\x15\x11\xff\xd4\x82\x4b\x7a\x8d\x3e\xf1\xb7\x8a\x53\x7f\xcf\x33\x5e\x95\x21\xe1\x89\x58\xc0\x1f\x47\xe7\x51\x29\x50\x33\xca\xa3\x71\xa4\x37\x23\xaa\xeb\x83\xe0\xce\xd0\x03\xc5\xbd\xde\xa9\x8d\x7e\x87\xb2\x92\x92\x71\x84\xf9\xe0\x12\x15\x94\x5c\x95\xe2\x1e\x64\x83\x6f\xc4\x66\x7f\x33\x10\x2d\x07\x7c\x91\xf1\xc1\x4d\x56\x0e\xb2\x42\xdc\xa4\xdb\x01\xab\x08\x11\x48\xa9\x7f\x05\x10\x25\xe5\x4a\x60\x1c\x0f\x3e\xb1\x0a\x6a\xe8\x0c\x0c\x83\x40\x86\xa3\x70\xb9\xb9\x27\x9f\x03\x1f\xe9\x5f\x25\x81\x13\x3e\xce\x26\x51\xf0\x36\xf8\x38\xbc\x50\x1b\x4c\x46\xc0\x12\x03\x94\x0f\xb2\xab\x0c\x93\x1e\x48\x99\x00\x9b\x81\xa3\x04\x49\xf8\xbc\x1f\xb4\x94\x2d\x12\x4f\x42\xa2\x21\x93\x1a\xe2\x43\xc6\x99\x5f\x66\x9f\xa4\xd4\xc6\x1e\x59\xff\x80\x8b\x17\x78\xb7\x4d\x62\x70\x04\xf1\x67\x41\x5d\x75\x77\x61\x1d\x76\xe4\x06\xf4\xa2\x9a\xf2\x40\x25\x66\xde\xb6\x07\x0d\xd3\xf8\x2b\x3d\xa9\xc7\xa7\xc0\x1e\xb5\x10\xba\xad\xb6\x10\x3e\x6a\x02\x52\x2b\xac\x75\xc7\x46\x3b\x1c\xd6\x21\x3b\x4d\x05\x57\x7f\x6c\x55\xd7\xa1\x2a\x92\xbb\xfd\x1a\xf1\xec\x16\x59\xb9\x78\x8f\x38\x2f\x50\x9e\xaa\xbf\x52\x94\xb0\x6c\x86\xc4\x51\x2f\x8a\xe6\x53\x56\x14\xfe\x4b\xc1\xd0\x15\x22\xea\x3d\x7d\x57\x11\x8e\x97\xe2\xcc\xb2\x8f\x31\x05\x10\xa7\xb9\xf6\xa9\x7d\xf7\xfe\x2f\x6f\x93\xb7\x0a\x1c\x30\xca\x8a\x22\x82\x33\x70\xe0\x6b\x1a\x0d\xe5\xd0\xed\xef\x86\x79\x19\xb9\xb8\x7e\x92\xce\x40\x79\x83\x05\x8f\x2a\x88\x28\x74\x9d\x72\xc9\xeb\x82\xbb\x59\x56\xa2\xc1\x68\xdc\x58\x85\x5c\xb2\x6a\xc5\xe3\x48\x0b\x5a\x21\x02\x07\xb2\xca\xe9\x58\xfc\x17\x21\x92\x47\x4d\xe5\x92\xd3\x55\x0c\xea\x1a\x08\x8a\x57\x2d\xb7\x45\x4f\x8e\xd2\xb4\x79\xfe\x8d\x01\x71\x67\x95\x09\x43\x25\x2d\xae\x91\x20\xad\x0c\x89\x40\xd2\xd1\x19\xf9\xce\xb4\x3d\x3b\x3a\x22\x46\x2e\x89\x26\x44\x26\x39\x3f\xcc\xd6\xeb\xc3\x6c\xc2\x92\x5b\x8c\x8a\x5c\x1c\x22\x45\xb2\x4c\xbd\x78\x56\x0a\xdb\x1d\x9e\xc2\x2a\x45\xad\x6c\x65\x4d\x54\x07\x43\xa9\x27\x33\x86\x32\x8e\xe2\xbb\x39\x19\x53\x98\xb1\xab\x72\x3c\x41\xd3\x1a\x24\x17\x12\x19\x36\x61\xd6\x4f\x0f\xd3\x94\x25\x17\x82\x19\x29\x90\xe8\x4c\x20\x0b\x24\xd3\x5b\x1e\x8e\x00\x94\x21\x20\x8c\xab\xc9\x39\x8e\x2b\x63\x52\x12\x5c\x75\xd5\x9d\x97\x7d\xb3\xe5\xc1\xab\x01\x00\xb5\x7e\xd7\xdc\x53\x22\x4f\x87\x3e\x6e\xf2\x90\x78\xe7\xcf\x60\xfa\xf0\xb9\x12\xe7\x55\xb7\x91\x47\xd7\xe0\x24\xbf\x7f\x71\xb8\x23\x28\x45\x80\xf2\x9c\x57\xb2\x56\x11\xa8\x65\xa7\x31\x77\xce\xea\xcc\x5d\x4b\x4b\xfd\xe0\x8b\xd3\xb5\x25\x40\x0b\x12\x8e\x4d\xdc\x84\x4f\x6b\x00\x5c\xc9\x3d\x52\x2c\x65\x9b\xf3\xa1\xe6\x9c\x60\x99\x83\x3e\x75\x16\x9f\xa3\x39\x62\x31\x38\x90\xb2\x76\x0a\xa4\x1d\x46\x5c\x9a\x7d\x80\xa5\x4e\xcf\x09\x34\x28\x0e\x4f\xa1\x73\xa0\xc1\x5d\xb5\x5e\xc7\x55\x7a\x38\x82\x59\x40\xef\x8d\xc0\x9d\xd8\xff\x86\xf4\xa6\xf3\xc6\xf3\xec\xdc\x3c\x06\x71\x58\x45\x32\x61\x49\x83\x0a\xf5\x29\x1e\x0e\x83\xc5\xb1\x54\x90\x83\x1a\xce\xd2\x32\xd1\x48\x33\xd1\x22\xa4\xb8\x68\x54\x27\xa1\xb6\x69\x01\x67\x75\xed\x23\xb0\x62\x0b\x8a\x46\x64\x96\xad\xca\xaa\xc8\x38\xca\x25\xd2\xbd\x27\x66\xfe\x6a\x56\x3d\x0e\x62\x75\x6f\xb0\x09\xf8\x7d\xb1\xcc\x3e\xa2\x57\x9a\x79\x19\x77\x84\x01\xf2\xfd\xd3\x74\x8c\x65\xf5\x35\xd5\x21\xc5\x03\xb2\x82\xc0\x00\xa0\x86\xba\x9e\xb2\x26\x74\x19\x7b\xb6\x05\x78\x81\xc7\x6c\xcf\xd2\xef\x59\xfa\x3d\x4b\xff\xa0\xd8\xcb\xa5\xf6\xcf\x7d\xa6\x22\x16\xb7\x0c\x8c\x1b\xf1\x22\x31\x92\x45\x75\x80\x4e\x5b\x91\x41\x59\x45\x92\x4b\x4c\x72\x95\xcc\xd4\x95\x13\xe2\x79\x4c\x83\xda\x7a\x19\x44\xd4\xea\x11\xba\xc6\x81\xde\xca\x91\x78\x75\x46\x67\xe5\x77\xe8\xac\x94\xab\x2f\x5d\x13\xdc\x52\xd2\x2e\x78\x38\xd4\x7a\x4d\x35\xe9\x2a\x25\x3a\x8f\x0b\x51\x7c\x7c\x23\x74\xac\xa0\xa9\x69\xcd\xa2\xc4\x74\x34\xae\xa2\x90\xc7\x19\x68\xa2\xae\x48\x73\xc1\xcd\x26\x83\x27\x82\xd6\x96\x00\x3f\x5e\xd2\x1c\xcf\x31\x62\xe5\xf1\x12\x7f\xc2\x3d\x41\xa6\x9d\x86\x86\xcb\x08\x9a\x0d\xb6\xe5\x98\x5f\x81\xf2\xd6\x2f\xf5\x7b\x33\x0d\xef\x08\xa8\x90\x97\xc9\x85\xd5\xf7\xbd\xcd\xf8\xc2\x98\x0e\x36\xf0\x64\xb0\x53\xc7\x9e\xcb\xe4\xc2\xae\xb0\xb6\x54\x6e\x9b\x36\x54\xab\x54\x1c\xce\x18\x25\x17\xee\xdf\xd0\x67\x41\xc5\x67\xbf\xa4\x06\x35\x44\x89\xd9\x80\x1f\x0d\xfc\x7d\x36\xe1\xce\xeb\x73\xcc\x02\x72\x0e\xd8\xea\x77\x7c\x7a\x32\x82\xfe\xb2\xe4\x73\x05\x2f\x16\x59\xf9\x53\x89\x72\x33\xd4\xf8\xf0\x54\x96\xbd\x47\xfc\x7b\x77\x10\x5d\xfc\x82\x08\x4c\x92\xbf\xb8\x16\x87\x55\x14\xba\x6a\xd2\xae\x5e\x1b\xab\xc7\x92\xf5\xf2\xba\x62\xb9\x5a\xb3\xb9\xa1\x75\x77\x7d\xa0\x86\x52\xd7\xba\xa1\x51\x50\xbe\x01\x6a\xe8\x28\x5f\xb7\xb4\x0e\xb0\xac\xa0\x6e\x6f\x61\xc8\xde\x47\xd0\x06\x6d\xc0\x0a\xc2\x50\x7d\xf0\x3b\x48\x11\xa4\x4a\x4b\x20\x3f\xd7\x50\x06\x8b\xe9\xef\xd6\xdb\xc3\x4e\x63\x24\x36\x06\xe5\xa1\x30\x07\x66\x52\xde\x16\x9a\x59\xd5\x30\x47\x97\xd5\x55\x6f\x3b\xf9\xd5\x56\xae\x3b\x66\xbb\x96\x44\x0a\x9c\x1d\xd1\x0c\x05\xe1\xd1\xba\x1d\x29\x87\x54\x89\x24\xda\x30\x4a\xd3\xd3\x93\x91\x20\x9f\x3b\x5f\x4e\x81\x6b\x8d\x49\x63\x70\x57\x87\xee\x4f\x30\xca\x5e\x18\x73\x7d\x75\xfb\x7b\xe7\x2e\xf3\x74\xe4\xe9\xcd\xc1\x1d\x3f\x3a\xf2\xde\x4c\x6c\xdf\xd2\x33\xf6\x1d\x3e\x3b\x3a\x62\xe6\x19\x93\x2f\x26\x4d\x2e\x4a\x84\xc8\x2b\x92\xa3\x4f\xdf\xf1\xe1\x30\x76\x0b\x52\x0e\x05\xbf\x03\xea\x56\xe0\x6e\xd7\x9d\x84\x54\xcb\x77\x4a\x48\x04\x99\xfa\x53\xdd\x19\xe8\xe2\x44\x04\x23\x79\x2a\x23\x70\x46\xce\x40\x13\x25\x9b\xc0\xa8\x69\x1f\x41\xee\x66\xad\x51\xdf\x54\x67\x32\x65\x8d\xdb\x21\xb1\x1d\xd6\x6e\x4c\x6c\x63\x3b\xa5\x69\xf4\x22\x2b\x8d\xb0\x0d\xe5\x0a\x5d\x49\x3d\x9c\x40\x38\x6e\x81\x9e\x80\x53\xc3\x6a\xea\x9a\xb2\x67\x8a\x17\x47\x4d\x89\xa4\xaf\xdc\x7e\x9e\x49\x24\xe5\x96\xbc\x22\x33\xaf\x99\xa6\xf4\x9f\xd1\x8a\xf0\xf1\x08\x4a\xb9\xf6\x9f\x32\x92\x17\xe8\x65\x55\xcc\x71\xa1\xc7\x73\xca\x95\xd7\xa9\x2a\xc6\x04\x7b\x38\x47\x5d\xad\xb2\x5a\x21\xe6\xb2\x16\x96\x18\xd0\x59\x70\x02\xe2\xd1\x74\x32\x55\xdf\x02\xb2\xb7\x74\x32\xad\xa1\xc2\xb7\x4f\x8b\xa2\x23\x70\xe5\xe9\x64\x7a\x20\xdb\x86\xe4\x7e\xa8\x77\x48\x38\xea\xfd\xd4\xc4\x58\x87\xdb\x3a\x0e\xcb\x10\xfb\x3e\x39\x1d\xb3\x98\x83\x1a\x06\x7a\x1e\xb7\x1d\x0c\x04\xa1\x67\x4e\x38\x4d\xd9\x19\xfd\x8e\x1d\x91\xb3\xa3\x23\xcb\xf8\xf3\x09\x9d\x1e\x64\x82\xcb\xd5\x27\xc9\x38\xef\x88\x63\x9b\x49\x42\xd2\x3b\xbb\xaa\xa8\xb9\x1a\xc7\xa7\x00\x66\x86\x61\x47\x00\x4a\x62\x4d\x1b\x82\x48\x4b\xc2\x9a\x6b\x10\x28\x6f\x80\xb0\xf0\xb5\x9d\xdf\xc9\x3b\xec\x11\x44\xdd\x0c\x50\xee\xe1\x8b\xa0\xcb\xa1\xca\xa2\xa3\x53\xb7\x09\xea\xae\x03\xb5\xd6\x21\x1a\xf4\x42\x5e\xae\x07\xe9\x0a\x17\xf3\xa2\x2a\x17\xb2\x55\x19\x83\x1a\xba\x7f\xbb\x07\xba\xa1\x80\xc5\xf9\x4c\x47\x67\xfc\xbb\x2d\x67\xe6\xec\xe8\x88\x03\xa4\x75\x53\x3d\x55\x27\x7c\xaa\xe0\x7a\xd0\x7b\x1d\xc2\xce\x72\x93\x29\x54\x6c\x87\x83\x42\x49\x83\x42\xb1\x42\xa1\x87\xa7\x69\x9a\xe2\x04\x97\x2f\x31\xc1\xe5\x02\xe5\xc3\x21\x57\x13\xc2\x96\xa2\xe6\x75\xef\xec\x34\x88\xdc\x77\x2c\x31\x1b\xae\x9e\x66\x47\x66\xa9\xd0\x40\x3a\x3a\xc3\x3b\x00\xc6\x32\x2c\xbd\x80\xc1\xe2\x01\x70\xcf\x71\xac\x51\x8a\xf8\xdb\xad\x1a\x53\x81\x7f\xa9\x78\x85\xe4\xca\xa8\x3e\xa8\xc4\xe4\x0d\xf3\xcf\xa1\xee\x2f\x98\x87\xcc\x41\xb8\xe2\xbb\x5d\x5c\x96\x8e\xce\xb2\xef\xb6\xdc\xe4\xb3\xa3\xa3\xcc\xdb\xee\x40\xd5\x49\x66\xb6\x5b\x3c\x88\x9d\xf1\x3d\x47\xa4\x2d\x40\x14\x47\xb5\x03\x8b\x00\x46\x54\x34\x9f\x36\x70\x3c\x68\x46\x64\xfe\x1b\xe6\xa3\x80\x76\x35\x0b\x14\xe6\x3c\xaa\xe2\x8e\x21\x2b\x1e\x4e\x2e\x28\x79\x89\x89\x34\x58\x89\x5d\xce\x72\xa7\xbe\x8e\x4f\x8d\x6c\x04\x75\x44\xcb\xce\xa4\xb9\xda\x23\xf3\xde\x49\x54\x22\x8e\x38\x39\xef\xd4\x71\x2c\x5a\x20\x02\xe3\xf8\x49\xb8\x9a\x7e\x28\x65\x9d\x6f\x95\x84\xa5\x3b\x9c\x7e\x3b\xdb\x98\x4b\x7d\x6d\xde\x51\xf1\xdd\x54\x10\x9c\x36\x15\xa7\x93\x43\xee\xe1\x18\xa0\x98\xd4\x7b\x98\xc8\x48\xa1\xa2\x22\x29\xb6\x30\xa9\x4a\xed\xd3\x2f\x99\x2c\x05\x38\x0d\xbf\x7b\x2f\xee\xf8\xfe\xce\x6e\x78\x1e\x1f\xb6\x44\xc2\x00\x04\x85\x40\xcf\x32\x42\x28\x1f\xcc\xb2\xa2\x18\x64\x83\x59\x91\x95\xe5\x20\x2b\x07\x99\x15\xff\x45\x0f\x8a\x99\x6a\xed\x47\x4d\xf5\xd4\x29\xf3\xa2\xa7\xc2\x2c\x48\xa3\xd9\x20\x67\xf0\x0e\x97\xb6\xe5\x58\x30\x0a\x5a\x5c\xd7\x65\x29\xa2\xef\x9a\x8a\xd6\xc8\x4a\x21\x2e\x03\xdb\xd7\xd9\x12\xc1\xe8\x8f\x91\xb8\xc0\xcd\x05\x78\xc3\x5e\x9b\x0b\x38\x6e\x65\x12\x14\x30\x72\xef\x8d\x73\x6f\x01\xc4\xa5\xa1\x10\x5b\xad\x2e\x29\x2d\xe2\x28\x3c\x82\x6c\xa7\x07\x3b\x3c\x95\x87\xb1\x81\x4c\x16\x84\x1d\x0d\x97\xda\xd7\x69\x80\x62\x70\xa7\x39\x4c\x04\x6a\x28\x4d\xe4\x94\x24\xee\x69\x59\xe2\x2b\x02\x62\xda\x08\x3c\x21\xe9\xf2\x31\xc1\x20\x08\xfd\x5a\xcf\x5d\x6e\xc2\x17\x17\xc0\x5f\x21\xf3\x3e\x18\x8c\x9b\x76\xb9\x4a\x36\xb1\x7a\xf9\xd3\x69\x2d\x98\x23\x9c\x2b\x14\x22\xf3\xe6\x5c\xd1\xb4\x84\x4a\x59\x99\x76\xd1\xf5\xe7\xba\x3a\x0c\x02\x24\xcb\x36\x0f\x7a\xa0\x9f\x6d\xeb\x39\x1f\xf6\x9b\x2f\x1b\xab\x3f\x48\xa0\x14\xf2\xd6\x0e\xeb\x87\x92\xb7\x2f\xde\xbd\x7c\xf3\xee\xc7\x8b\x0f\xff\xf5\xf6\xc5\xc5\x0f\xaf\x5e\xff\xf9\xc5\xf3\x76\xe9\x4f\xaf\xc3\xe5\xcf\x5f\xbc\x7c\xfa\xd3\x0f\x1f\xcc\xb5\xec\xf9\x1a\x85\x4a\xa3\x76\x6d\x3b\x46\x14\x2c\xee\xd4\x0f\xd6\x36\x75\x8d\x81\xf5\x81\xcf\x66\x3a\x0e\x4e\xe2\x56\xa8\xed\xcd\x8c\x43\x33\x92\x52\xf8\x3a\x68\x8b\xd4\x52\xc7\xf0\x83\xb6\x0c\xe3\x7d\x75\x59\xce\x18\xbe\x44\x79\x7a\x38\x82\xb1\x7a\xc1\x25\x67\x19\x5d\x18\x2f\x73\x00\x26\xc8\x88\x41\xb9\xc3\x54\xd5\xc6\x3e\xc9\xc8\xb9\xb5\x20\x2c\xc7\xe5\x8a\x96\xc8\xfc\xd9\x7a\x60\xc7\x23\x28\x2e\x97\xfa\xa8\x34\xbf\x53\xe8\x4f\x45\xca\xc8\x58\x45\x7e\xa0\xd2\x09\x00\x2a\xa1\x49\xaf\xe4\xcc\x33\xee\x50\x63\x6a\x72\x5e\xe0\xfd\x71\x78\x1f\xe1\x05\xfa\xb4\x42\x33\x5e\xfe\x80\xc9\x47\x94\xff\x17\x46\x85\x1c\x57\xdd\x40\xd9\x0b\x12\x2f\x86\x66\x38\x4b\x87\x13\x3e\x3c\x85\xb8\x94\xcf\x89\xfa\x69\xb9\xdd\x16\x52\xcc\x48\x1e\x47\xe6\xb3\x42\xa6\x0d\x6d\x2c\xb1\xa2\xfd\x24\x3a\x6a\xc8\x4f\xd5\xad\xa9\xa9\xfe\xea\x41\xbc\x84\xf2\xd8\xef\x55\x3e\xbb\xe3\xb6\x0d\x2f\x2e\x9f\x33\xba\x5a\x09\xb2\xa2\x35\xa5\x66\x58\x7f\x7e\x9e\xc0\xde\x93\xeb\x37\x96\xbd\x4d\xaf\xe0\x5c\x1a\x44\x89\x9f\x63\x79\x84\x9c\x41\xce\xb5\xd5\x8e\xf3\xcd\x8c\x72\x1e\xcd\xcd\x78\xea\x53\x33\x9b\xf3\xc8\xd8\xdc\x8c\xa3\x9b\x0c\x73\xf1\x4b\x20\x6d\x3b\x66\x60\x8d\x7d\xeb\x0a\x2c\xa5\x3d\xc9\xe1\xf0\xb0\x35\x01\x31\xd8\x85\x74\xf5\x1f\x9f\x6a\xea\xb7\x4f\xaa\xe7\x72\x0e\xed\x8e\xd7\xeb\xb8\x4d\x79\xbb\x53\x3b\x1c\x19\xd6\xd0\xf0\x3a\x6f\x19\x9d\x21\x94\xc7\x3c\xf9\xaf\x57\x2f\x7e\x78\xfe\xf4\xfb\x1f\x5e\x5c\x3c\x7b\xf3\xfa\xc3\xab\xd7\x3f\xbd\x80\xda\xa7\x4f\x37\xe1\x0c\x5f\x5d\x21\x26\xaf\x42\x1c\x95\xa6\x4f\xc9\x2c\x19\x41\x66\x88\x7c\x90\xac\xa5\x61\xf2\xd3\x28\x3a\x92\xdd\x49\x9a\xdd\x3c\x2b\x92\xdd\x8b\x1a\x0b\xb4\x08\xc6\x28\xc5\x36\xf7\x11\xe4\xe9\xf1\x29\x38\x8a\xc9\x7a\x1d\x45\xe0\xc8\xe4\x76\xe6\x47\x0c\x18\x99\x49\x57\x17\xfc\xc0\x50\x0f\x91\xd5\xe9\x4b\x93\x2c\xf4\x69\x55\xe0\x19\xe6\xc5\xad\xa4\xe2\x50\x1e\x29\x9b\xcd\x9e\x0d\x6d\x0e\x5b\x57\x54\xe0\x9d\x18\x93\x06\x93\xa5\x16\x1a\xc3\xa1\xfd\xe9\x93\x54\xeb\x75\xf4\x5d\x45\x3e\x12\x7a\x43\xfe\x18\x1d\x74\x38\x2b\x07\x21\x45\x30\x72\x79\xa6\xc1\x37\x96\x50\x63\x30\xfa\x46\x2e\xc8\xdc\x8e\xc1\x25\x9a\x65\x82\x66\x88\xac\x9e\x09\xc1\x28\x19\xbc\xa4\x6c\xb0\xa4\x4c\x90\xb7\x62\x2f\x24\xe2\x87\x83\x12\xa1\xf1\x60\xc1\xf9\x6a\x7c\x72\xd2\x21\x49\xc4\xad\x38\xc9\xe9\xac\x3c\x91\x84\xcc\xac\x79\x31\xa4\xaa\xdc\xe6\x85\x76\xae\x9b\xa5\x1b\xc5\xe1\x7b\x4f\x29\xf1\x0f\xe0\xd3\xd7\xcf\x5e\xfc\x00\x05\x32\x04\x63\x2d\xca\x30\xfc\x97\xc4\x90\xdf\x8a\xf7\xf9\x42\x1a\x7e\x18\x1c\xac\x9e\x8f\xf6\x35\xed\xbb\x8b\xaa\x6d\xc0\x8a\xc4\x0a\xfb\x6f\x2f\xd1\x3b\xa5\x97\x7a\xee\x7d\x91\xf5\x8c\x89\x86\xbc\xb5\x9d\xba\x5d\x61\xa1\x6c\xa4\xf7\x37\x60\x5e\x24\x93\x20\x86\xbe\x9d\xbb\x63\x1a\xc3\x22\x59\xa6\x74\x87\x63\xff\xbb\xd4\xf1\xcb\x22\xf9\x9a\x00\x50\x43\xbe\x40\x64\x8c\xe3\x48\xfc\x1f\x01\x28\x3d\x9a\xc4\xdf\xf2\x47\x04\xa0\xb6\x31\x11\x45\xfa\x67\x04\xa0\x85\xf6\x38\xe4\xfc\xca\x21\x49\x91\x12\xea\x28\x8c\x75\x74\x04\xbb\xf7\x21\x66\xe9\xb7\x9a\x16\x53\xcc\x50\xc7\x36\x11\xc0\xd8\xd1\x52\x18\x69\xde\x8b\xd7\x7f\x49\x9e\xbf\xf8\xfe\xa7\xff\x75\xf1\xe1\xe9\xfb\x3f\xbf\x07\xc3\xe1\x8c\x92\x92\x16\x28\x29\xe8\x55\xa8\x13\x22\x29\x92\xb4\x43\xac\x40\x22\xaf\x92\xa5\x66\x95\xbe\xa5\x7d\x7b\xda\x10\x77\xd2\xb4\x3b\x95\x18\x2a\xab\x82\x4b\xc1\xca\xa9\xcc\x6c\xd7\xc1\xb2\xee\x9b\xad\xf0\x6c\xbb\x86\xf6\xdd\x23\x00\x8c\x9f\xf4\xf5\x21\x21\x15\x6e\x8e\xd4\x27\xd1\xfc\x5b\xe5\xba\xd5\x5b\xa3\xd3\xd6\x7d\x68\x9b\x27\x40\x53\x4e\xf6\x64\xb3\xca\x4a\x39\x9e\x65\x45\x71\x99\xcd\x3e\x96\xb1\x5b\x59\x1c\x19\x53\x43\x11\x44\x4a\xaa\xd8\x6e\xa4\xaf\x64\x23\x34\xf1\x64\x37\xfe\x7d\xb6\x8d\xac\x14\xac\xf3\x45\xe6\x78\xee\xf9\xd6\x12\x78\x76\xae\xd6\xa6\x95\xd5\x30\xf8\x61\xec\x9b\x0e\x6c\xc3\x07\x9d\x29\xb9\xf2\x54\xf1\x72\xf5\xcd\x5c\x8b\xd6\xd0\x77\xfc\xec\xe8\x08\x81\x9e\x6a\x13\x34\x8d\xb5\x04\x35\x00\x19\x69\xba\xe4\xcc\xf0\xc3\x82\xd1\x9b\x9f\xc8\x42\xea\x30\xa4\x7c\x4e\x9e\xa8\x1f\x32\x2e\x66\x5c\xc3\xed\xb5\xc2\x36\x55\x07\x01\x12\x7e\xbd\x7e\x72\xd8\x83\xb6\xcc\x5d\x66\x15\x69\x84\xaa\x8e\x99\x46\x36\xfb\x78\x59\x31\x82\x98\x12\x24\x8a\x37\xae\x9c\x6c\xf9\xde\xf0\x9d\x1e\x81\x85\x3a\xb3\x22\x31\xd2\xe8\xcf\x4c\x43\xe2\x77\x8d\x1d\xcd\xb7\x5a\x20\xc7\x9e\x53\xed\xc2\xc0\xd8\xd7\x86\x96\xa9\xed\x6c\x4f\xc7\x41\xfa\x48\x59\x91\x5b\x0a\xe9\x40\x39\x79\xc8\x16\x4f\x82\x2d\x90\x91\xd7\x35\x96\x6a\x6a\xae\x6e\xd3\x6f\x83\x4d\x2d\xc9\xeb\xb4\xf5\xb0\x64\x5d\x5b\x4e\x29\x78\xbe\x0d\x17\xe5\x19\xd2\xd9\xd2\x03\xff\x4f\x25\x0f\x47\xb1\xec\x15\x97\xff\xcb\x18\x2b\x3f\xa7\x04\xf5\xd8\xe4\x5d\x58\x8b\x66\x25\xf7\xd4\x22\xa5\xe7\x6f\x5e\xbf\x90\x5c\xe5\x7a\x1d\xbd\x78\xf7\xee\xcd\xbb\x17\xcf\xe5\x9f\xe2\x6a\xa2\xb2\x5a\x22\xdb\x77\xeb\x25\xe2\xec\xf6\x8e\x35\x02\x69\x23\x61\x35\x63\x71\x63\x22\x18\x83\x09\x9f\xca\x20\x52\xfe\x2c\xa4\x97\x7f\x4a\x74\x10\x02\x22\x5d\x83\xcf\x43\x33\x4d\xd5\x1c\xc7\xe1\x6f\x7f\x7a\xfa\xfe\xe2\xc7\x37\xef\x5e\x5c\xfc\xe5\xe9\x0f\x3f\xbd\x78\x1f\x69\x8f\x61\x6c\xb0\x5c\x6b\x3c\x0c\xc3\xdd\x98\xa5\x37\xee\xc5\xb2\x5a\x97\x67\x1c\x0e\xe3\x50\xc7\xc3\x61\x90\xc3\xb7\x54\x85\x5f\x3b\x71\x19\xd6\xf5\xda\x3c\xaf\x37\x19\x23\x71\xf4\x5f\xb4\x1a\xac\x8c\x3e\x6b\x90\x0d\x92\x42\x8e\x1e\x83\x81\x78\x4c\x07\x3a\xcd\xc4\x00\x2f\x97\x28\xc7\x19\x47\xc5\xed\x40\x1a\x6a\x63\x72\x75\xa2\x36\x15\x93\xab\x01\xe6\xc9\xe0\xc3\x02\x97\x03\x5c\x0e\x14\x95\x28\x08\xe8\x8a\x94\xd5\x6a\x45\x05\x01\x38\x88\x2f\x2b\x3e\x58\xe2\xab\x05\x1f\x5c\xa2\x41\x53\x8e\xc9\x60\x5e\x49\x5f\xdd\x6b\xc4\x4a\x69\x1c\x30\x1f\x74\x28\x4e\x90\x44\x06\xff\x76\x81\x94\x1e\x9e\xca\xe8\x5e\xca\x8a\x1d\xba\xc7\xa1\x8f\xa5\x32\x32\x05\xf3\x08\x99\xbf\x53\x83\x5b\x1b\xa3\xd3\xd8\x50\xb3\xa6\x8e\xc4\xaa\x61\xa3\x54\x77\x88\x39\x71\x94\xc5\x32\x04\x24\xfa\xc4\x3d\x7b\xd4\x8b\x2c\xbf\x16\x77\x56\x1a\x01\x8c\x5b\xf6\x9e\x0e\xb9\x25\x2e\x88\xb6\x48\x3c\x3a\x72\xca\x6b\xe8\x12\xd4\x61\xd2\xad\xc1\xe5\xee\x60\x6e\xef\x0e\x35\xf0\x03\xa5\xab\xf3\x06\x2d\xff\x83\x62\x12\x50\x7f\x78\x48\x3e\x52\x49\x50\xca\x08\x32\xc8\x2c\x81\xaf\x24\x6a\x00\x8c\x4b\xc4\x3f\xe0\x25\xa2\x15\x0f\x51\xe6\x4d\x03\x65\x67\x09\xe0\x29\xa8\xa1\x2e\x1a\xb7\xad\xce\x7a\x5e\x9e\xc0\xea\x10\x30\x84\x80\xc7\x70\x40\x26\x15\x4d\x3e\x23\xbc\x0d\x6c\x9d\xf1\x34\x2f\x68\xe0\xe5\x3e\x7d\xfa\xe4\xbf\xd3\x90\x6c\xd5\x3b\xdc\x52\xd1\x05\xc5\x03\x00\x37\xb6\xdd\x3b\x96\xcf\xde\x86\x80\xe6\xc0\xb4\xb1\x6b\xcf\x52\x2d\xbe\x0e\xa1\xb1\x73\x43\x23\x28\xfb\x09\x49\x2a\xe5\xef\xe4\x04\x51\x2e\x11\x8f\x5a\x4a\xa8\xda\x33\x4a\x38\x26\x15\x6a\xaa\x89\xc9\x6d\xe8\x6a\xec\x9b\x08\xea\x57\xda\xbc\xc8\x21\x61\xc6\xb8\xf3\xe5\xdd\x8b\x0f\x3f\xbd\x7b\xdd\xe6\x2f\x19\x3c\xf5\x1e\x5c\xb7\xc5\x87\x3f\xbd\x7b\xf3\xd7\x6e\x83\x27\xbd\x0d\x14\x23\x3b\xde\x26\x09\x80\xfd\x3c\xae\x0f\xe3\x71\xf4\xfd\x8b\x97\xe2\xbd\x79\xf6\xee\xc5\xd3\x0f\x2f\x22\xd8\x42\xed\xd6\x38\xb0\x17\xb8\x2d\xc0\x69\xc5\xe4\x01\x11\x9b\xda\x99\xb8\x4d\x36\xb8\x61\xea\x24\xed\xc2\xb4\xc3\x61\x68\xff\x3e\x07\xcd\xe8\xeb\xd4\x7a\xe5\xa5\xe5\x05\x0c\x5c\x61\x0c\x86\xc3\xd8\xbe\x93\x87\x3b\x9c\x40\xf9\x14\x98\x83\xd7\x91\x22\x84\xde\x45\xf8\xc4\x39\x75\x6e\xf3\xae\x30\x4b\x89\xb2\x42\x9d\x1c\xe0\x73\xec\x3b\x8b\xbc\xcb\x6e\xe4\x17\xff\x5a\xff\x15\xf3\xc5\x7b\x2c\x2e\x98\x9a\xa1\xb1\x06\x1e\xc7\x66\xf5\xf9\x73\x4d\x6e\xc5\x78\xc2\xbb\x5e\x1f\x00\x8a\xe2\xb6\x93\xd4\xb9\x01\xf1\x35\xfd\xa8\xd6\x20\x3e\xc6\x38\xe8\xa0\x82\xa5\xab\xcc\x79\x2c\x08\x13\x85\xe4\x20\x71\xf7\x08\xaa\x98\xa6\x2d\x1f\xa6\xc4\xa0\x1a\x02\x83\x42\x43\x24\xf0\xcf\x4e\x4d\xe4\x75\x92\xf5\x81\xd9\xa0\x3e\xe8\x6c\xaf\xd0\x20\xb3\xd6\xb7\x2e\xf3\x69\x66\xe3\x2e\xb5\x6f\x29\xd0\xdd\x89\xf6\xa3\x1c\x72\xfa\x71\x8d\x13\xfa\x29\x68\x7e\xee\xca\x88\x62\x20\xa9\xe9\x31\x92\x04\xb5\xbf\x77\xfe\xf4\xd9\xad\x71\xbf\x0d\x6c\xbe\x8b\xe8\xd5\x5b\x7e\xd0\x3d\x4c\x0c\x68\x22\x95\x80\x3b\x31\x9c\xcb\x48\x84\x89\x8e\xb6\x16\xc4\x5b\x61\x5b\x70\x69\x08\x9b\x5d\xe4\x9a\x07\x62\x88\xe1\x90\x27\x7a\x0e\xc3\x21\x6b\x98\x67\xd2\xd5\xec\x61\x47\xb3\x47\xfe\x78\x7a\x4e\x54\x6c\x6c\x9a\x9e\x9e\xd1\xef\xc8\x19\x3d\x3a\x02\x78\x42\xfd\xd8\xd8\x74\x7a\x60\xfb\xb7\x5a\xa5\x49\xe4\xca\x45\xc7\x8e\x04\x14\x4c\xcd\x4f\x0c\x40\x5d\xd7\xf5\x01\x0d\x00\x3a\x0d\x21\x51\x49\x24\x34\x26\xe7\x1d\x75\x17\xe9\x35\x23\x51\xc8\x91\x74\xad\x43\x4e\x55\x28\x39\x7b\x60\x59\xf8\x98\x12\x83\x3b\x9e\x6c\xac\xaf\xae\x1b\xd1\x4c\xa5\x94\x22\xe1\xe1\xb0\xb7\x77\x47\x06\x5b\x03\x00\x7d\xae\xb1\x47\xff\x78\x98\x8a\x65\x38\xec\x45\xa0\xb2\xd1\x89\xa5\xdd\xba\xc6\xba\x55\x9d\x1a\xd4\x3e\x51\x44\x7f\x20\xde\x07\x7d\x8a\xd8\x70\xc8\x0f\xa5\x5c\x8c\x27\xb8\x7c\x8e\x4a\xce\xe8\xad\x94\x44\x7a\xf6\xab\x56\xb7\x15\x01\x03\xf8\xe8\x67\x7b\x1a\x50\xe0\x94\xc2\xe8\xe7\x48\x1c\x32\xa7\x1a\xe9\xab\x76\xe0\x31\x53\xdf\x74\xf8\x96\x41\x8e\x38\x9a\x71\xc9\x59\xad\x28\x47\x84\x63\xc1\xef\x0d\x16\xd9\x2f\x19\xcb\x69\x55\x0e\xa2\x12\x15\x73\x2d\x42\x1f\x14\x94\xae\xa2\xc1\x25\xe2\x37\x08\x91\xc1\x2a\x13\x44\xa2\xe2\xc3\xbe\xb1\xc7\x14\x46\x83\x8c\xe4\x83\xd9\x02\x17\xb9\xfa\xd6\x1c\x67\x0a\xa3\x64\xf0\x6a\x3e\xb8\xa5\xd5\xe0\x26\x23\xbc\xb7\x96\x76\x39\xb2\xba\x81\x9b\x45\x6b\xbc\xa6\xb6\x18\x10\x37\x6a\x04\x38\x58\x15\x48\x90\x3d\xb3\x45\x46\xae\xd0\xe0\xe7\x46\x89\xf3\xb3\xe8\xf5\x67\xcb\x40\x3a\x1f\x76\x9f\xd4\x47\x84\x56\xc6\x1d\x7e\x90\xcd\x39\x62\xbb\x4e\x4b\xcf\x07\x73\x35\x8b\x8a\x04\xe6\x11\x89\x3b\x4e\xac\xc2\x47\x5c\x77\x65\x13\x17\xb2\x99\xa1\x8e\x07\x6c\xf9\xa0\xe8\xf5\xe7\xee\x1f\x8e\x5d\x43\x66\x9c\x50\xf4\x80\x99\xb4\x2a\x89\xef\xa4\xbe\x1a\xc1\x39\x19\x73\xa8\x0f\xbb\x7c\x05\x6b\xc8\x40\xe3\xbc\x5c\x2b\x4f\xa3\xcc\x31\xbb\xda\xe6\xa0\x2f\xd5\x34\xe6\xf0\x7e\x01\x9f\xfc\xcf\x35\xc1\xba\xa7\xc1\x57\xd7\x79\xb5\x27\xeb\x65\x9f\x1d\x57\xf6\x35\xec\xb8\xdc\xc3\x71\x5f\x37\xcf\xea\x37\xe0\xe6\xf9\x2f\x18\x85\xf9\xb7\xe9\xe6\xb9\x0f\xbf\xfc\x25\xc2\x2f\x3f\xd0\x2c\xb3\x65\x91\xe9\x1a\x63\xda\xd4\xbb\x61\xb7\x99\x8b\xc6\x50\xc9\xb3\x28\x52\x25\xea\xf5\x52\x4d\x3c\xa7\x96\xb0\x21\x7f\x87\x76\xe6\xbe\x2b\x2b\x4b\x47\x67\xec\x3b\x24\x77\x98\x8b\x1d\x6e\x9e\xa6\x66\xa7\xb5\xa6\x41\x91\x3a\x3a\x7a\xce\x22\x63\x82\x73\x32\xe2\xa4\x66\x9e\xba\xc4\x9d\xa7\x8c\x21\xb2\xdc\x62\x80\x1a\xcf\xd2\xbb\xb9\xb6\xa4\x32\x8f\x9c\xd6\x1f\x5e\x96\x88\x5d\x23\xa3\x4e\x14\xf8\xff\xf6\xa9\x78\x12\xbb\x10\x29\xc3\x9e\x3a\x96\x85\xd9\xe4\xac\xe3\x85\x9d\xd6\xa2\x5a\xd0\x89\x2e\xf8\xe6\x86\x20\xe6\xc9\x6e\x01\xe4\x29\x3a\x47\x09\x15\x5f\x5e\x11\xd1\x87\x1c\x55\x66\x79\xb0\x90\x33\xea\xe7\x97\x99\x38\x8b\xb7\x29\x6d\x87\x34\xd0\xa0\x9c\x13\x50\xc7\x23\x88\x93\x8b\x59\x81\x32\x52\xad\xde\x10\x4d\xc3\x82\xae\xc4\xd8\x18\x7d\x3c\x2d\x8a\x08\xde\x31\x1d\x68\x88\x2f\x90\xc6\x1c\x82\xea\x29\xf0\x35\x2a\x07\x94\x48\xa3\x8f\x5c\x75\x85\xf2\x01\x65\x83\x8a\x30\x44\x72\xc4\x50\x1e\xd5\x82\xc1\x95\x80\x0d\x1f\x23\x2d\x08\x2c\x28\x91\x6a\xe2\xee\xb1\x62\x1e\xd2\x80\x2a\xbc\x0b\x3f\x23\x47\x47\x80\x4d\x88\x7b\xac\xc8\xb4\x09\xc8\xd0\xec\x65\x3a\xb1\x0c\x57\x69\x94\x6c\xe6\xdb\x7a\x3d\x99\x02\xc8\x00\x44\x35\x54\x9b\xdd\x55\x2e\x49\x5b\xdc\xae\xe9\x2a\xd0\xa1\xd5\x90\xf3\x9c\x6b\x84\xfd\x5f\xb4\x12\x54\xe2\x80\x12\x6d\xd2\xe3\xa8\x38\xc4\x73\x22\x55\x1c\x98\x0c\x32\x49\x61\x26\x91\x75\x23\x5e\x59\x57\x61\x75\x53\xe5\x46\x78\x37\x95\x87\x8c\x2f\x5b\x57\x17\x09\x90\x1b\x62\x34\x98\x49\xf6\x9e\xa3\x18\xde\x4b\x6d\x65\xd1\x52\xc1\xe9\x5e\x97\x6e\x08\x1c\x7d\xde\x3c\x92\xd2\x1e\xaf\x0b\xca\xf0\x15\xd6\x95\xf4\x1f\x6d\x0f\xe4\xe6\x74\xdb\xb2\x46\x8e\xce\xf4\x67\xfb\x37\xf4\xd8\xa4\x46\x8c\x63\x8b\xc4\xcc\xb7\x99\x9d\xef\x62\x71\x1e\xb8\x6e\x63\xeb\xe7\x7d\x4f\x74\xc9\x7c\x74\xa9\xc3\x16\x6d\x3e\xd7\x1e\x4a\xd4\x88\x52\xf0\xd4\x21\xee\x57\xf3\xd5\xd0\xaf\x3e\xf6\x63\x1f\x18\x06\xb5\x75\x2f\xce\x37\xdc\x19\x00\x05\xf5\x09\xc6\x08\x6a\xff\xa3\x10\x54\x42\x87\x41\xf2\x1a\x38\x7c\x26\x24\x86\xf3\x8b\x9c\xb3\xa9\xcc\x65\x79\x63\xc9\x13\xb0\x9b\x0d\x0b\x92\xbc\xc3\xe6\x1f\x72\x56\xb7\xc2\x3b\x94\x06\x05\x53\xb8\x09\x27\x8b\x97\x2d\x4d\x83\x17\x71\x38\x8c\x49\x58\x5d\x68\x04\xf0\xba\x93\x96\xf8\x80\x5a\xfe\xb0\x65\x3a\xc9\x1a\xb5\x17\x05\x90\xd6\xb5\x8c\x80\xff\xea\xf5\x5f\xde\xfc\xf9\x05\xcc\xbb\xd6\xf3\xd1\xd3\x72\x40\xe7\x6a\x3d\x83\x6f\x93\x27\x23\x38\x90\xb2\x3e\xc1\xda\x0a\x78\x96\x83\x1c\x33\x34\xe3\xc5\xad\xc4\x41\x83\x4c\x3b\x47\xb3\xc1\x9c\x0c\x74\xcc\x19\xc1\xe3\x12\x3a\x28\x28\xb9\x42\xcc\x51\x9b\xe6\x15\x12\xf4\xa4\xe0\x16\x58\x21\xe6\xad\xf9\xdf\x52\x70\x05\x0a\x60\x83\xb7\x8a\x51\x17\x1c\x91\x78\x2a\x7e\xd6\xf0\xfe\x59\xf7\x2d\x69\x54\x94\xe5\x50\x8c\x78\xc3\xb2\x95\xac\x25\xd9\xec\x18\x25\x57\xc9\xe0\xe7\x58\xb7\x18\x6c\xbc\x8c\xe0\x67\x30\xb8\x44\x73\xca\xd0\x60\x25\x38\x59\xa9\x0e\x16\x93\x13\xdd\x85\xd6\x64\x75\xb9\xba\xfb\xf0\x3b\x5d\xc3\xb9\x58\xcb\xac\x27\x37\x90\x20\xae\x34\x35\x96\xdf\x2b\x37\xd0\x6c\x32\x9f\xa6\x39\x9c\x01\x87\xbd\xbf\xf6\x99\x48\x3c\x8f\x19\xf0\x1d\xe6\x98\xeb\x19\x77\xa7\x22\x72\xb1\x49\x36\x85\x55\x2a\x08\x44\x01\xf0\x0b\x87\x67\xd5\x4a\x05\x76\x61\x21\x77\x79\x74\x04\x0e\xf8\xa4\x9a\xa6\xb7\xb1\x1a\x06\xa2\x98\xc3\x52\x22\x06\x58\xb9\xce\xdf\xb7\xad\x1c\x49\xad\x47\xd0\x6a\x22\xa4\xcb\x37\x38\x60\xe7\xb1\xf1\xd9\x66\x15\x01\xf6\x90\xbe\x11\xec\x87\x02\x2d\x81\x93\x46\x51\x8b\x21\xb7\xf8\x44\x71\x55\x0d\x57\x27\x99\x38\xc5\xd2\x35\x3b\x01\xc0\x18\x4f\xb8\xb1\xd1\xc7\x9e\x8d\xbe\xa6\x7a\x97\x6d\x6a\x78\xd1\x29\xf0\xdd\x6b\x32\xcf\xbd\x06\xb7\xdc\x6b\x16\x8e\x7b\xcd\x5d\x89\xb8\x17\x68\xc1\x2a\x2c\xc5\x34\xdf\x0b\x42\xef\xbd\xa8\xa1\xa5\xce\x7e\xe1\x26\x7f\xed\x60\xf0\x02\xa3\x4f\xee\x86\x47\x68\x1b\x4e\x7c\x58\xa8\xab\x45\xe7\x03\xbf\xa3\x18\x58\xab\x89\x6c\x50\xae\xd0\x0c\xcf\x31\xd2\xf2\x2e\x23\x08\x11\xd7\x3a\x47\x2b\x86\x66\x99\x14\x0e\x92\x7c\x70\x43\xc9\x37\xdb\x6c\x23\xca\xa0\x71\x84\xbd\xe9\x6a\xb0\x5b\x4d\xca\x38\x83\x99\x8b\xae\xae\x75\x73\x9b\x61\x34\x96\x55\xe3\x24\x49\x80\x09\xdf\x11\x83\x56\x04\xce\xb8\x91\xba\x85\x00\x27\x30\x40\x04\x00\xbc\xd6\xba\xc3\x2c\xcf\x7f\xc0\x25\x47\x04\x31\xa8\xb9\x04\x19\xee\x42\x5a\x75\x41\x6e\x1d\xa4\x23\x78\x78\xba\xb1\x95\x42\xc3\x2f\xbc\xb6\x0e\x1d\xdc\x6a\xfd\x46\x71\x0f\xb6\xb5\x65\x27\xfc\x21\x47\xa0\x86\xae\xb1\x84\x6f\xb4\xd1\x4c\x34\x6d\xfd\x2d\x88\xd3\xf6\x62\xdc\x18\xa7\xed\x75\xb6\x4e\x9b\x31\x5b\x7f\xd3\x3b\x74\x7b\xb5\x69\xb0\xb4\x99\x46\xfb\x4b\x67\x32\x1d\xf0\x75\xa6\x64\x19\xae\xaf\xcd\x52\x9a\x81\x52\xae\x47\x0e\x10\x67\x1d\xc2\xfd\x29\xe9\x1e\x75\x75\xb0\xcd\xfb\x23\x59\x1d\x42\xf9\xa0\x44\x5c\x70\x3e\x98\x97\x86\x21\xba\xc6\xd9\xe0\x1b\xff\xc9\xf8\x26\x19\xbc\x47\xc8\x5e\x3b\x2c\x59\x25\x65\xbe\x34\xa7\x6c\x90\x23\x9e\xe1\x42\x3c\x4e\x82\x8b\xdd\x82\x94\x42\x3e\x7f\x3a\x09\xca\x68\x17\x59\xac\x27\x3a\x7d\xdc\x48\x26\x6d\x37\xa2\x02\x67\x25\x34\x96\xf1\x3f\x8a\x19\x59\x72\xb1\xd7\x2f\xe8\x8a\xfb\x6e\x9c\x23\xc7\x09\x33\x5c\xd5\x38\x67\xcb\x9a\xaf\xf2\x22\xe4\x43\xd4\x78\x85\x9a\xce\x42\xbe\x35\x87\xf6\xed\x73\x75\x3b\xc6\x1f\x43\x97\x1b\xdf\x50\xb1\x17\x7d\x2e\x4b\xbb\x0d\x37\x08\x0e\xe7\xb8\x0f\x85\x86\x3d\x8f\x94\xc3\x7c\x34\x8e\x70\x5e\x20\xe9\x59\xe4\x73\x45\x5a\xe2\xa1\xc8\x61\xf9\x07\x91\xcc\x92\x72\x8c\xb3\xf5\x22\x00\x9d\xc3\x33\xf6\xc1\x0e\x64\xec\x13\xd9\xa6\x21\x51\xdd\xb8\x00\xc0\x0b\xbb\xd2\xad\xe7\x77\xd4\x84\x70\xe9\xd6\x6c\x22\x5e\x80\x76\xe4\x96\xc0\xf0\x6e\x02\x07\x2f\xa6\x4b\xb7\xae\x75\x7f\x07\x5e\xac\x97\x6e\x45\xe3\xdc\x0e\xfc\x10\x30\x81\x1e\x8d\x69\x2c\x68\x87\x86\xe9\xd6\x75\xfc\xdd\x81\x1f\x34\xc6\xaf\xeb\x85\xf4\x00\xb0\xd9\x83\xf1\x08\xda\xc3\x3d\x1e\xc1\x26\xa6\xcf\x78\xb4\x31\xb6\x0b\x5a\xaf\xef\x6a\xc8\x52\x9e\x28\x61\x8e\xb4\xaa\x61\xa8\x44\x5c\x9b\xcb\x4a\x19\x78\x62\xbb\xe8\x73\x4e\x12\x58\x4f\x90\xd9\x1f\x64\x44\xcf\x36\xbb\xd2\x34\x67\x00\x12\x6b\x1c\x6f\x87\x89\x81\x09\x63\xb5\xab\x17\x8d\x27\x03\x70\x35\xad\x5d\x23\xc7\x56\x70\x36\x79\x05\x1a\x99\x81\x3a\xff\xcd\x54\x3a\x2e\x34\x25\xe2\x4e\x52\x53\x19\x63\x68\x53\x24\xa1\x76\xac\xa1\x50\x3c\xa2\xc7\x89\x36\x54\xb7\x42\x22\x6c\x0b\x2e\x7a\x93\x61\x7e\x3c\xa7\xec\x4b\xb8\x81\xfb\x31\xaa\xb4\xa0\x9e\xfd\xce\x04\xf5\xae\xf7\xf2\x57\xd4\xea\xe9\xd8\x0f\x8e\xc6\xe4\x8c\x7d\xc7\x6d\x84\x1a\x93\x04\x98\xa4\x82\xf6\x39\x20\x4e\xb6\xe1\xd4\xfd\x63\xbd\x3e\x3c\x85\x24\x71\x79\xd2\xf4\x70\x64\xbc\x83\x30\x19\x10\x29\xa7\x30\x3c\xaa\x14\x4e\xf4\x3d\xf5\x24\xf9\x88\x6e\x65\xa6\x77\x27\x92\x5a\x2b\x9f\xee\x70\x88\x63\xe4\x50\x2a\x1c\x40\x26\xcb\x94\x60\x35\xa0\x12\x6d\xb6\xcb\x6a\x1c\xb9\xcd\xc5\xc8\xc3\x90\x94\x1c\x96\x40\x47\x0c\x95\xd2\x68\x5b\x6a\xae\x10\xe6\x0b\xc4\x04\x0f\x23\x5a\x0b\xa6\xdf\x05\xed\x81\x33\x2d\xa3\x4f\xd4\x94\x86\x34\x0a\x72\x58\x3e\xe7\x90\x8c\x35\x49\x83\x5c\x36\xbe\xcd\xe2\x0b\x8a\x8d\x0f\x87\x4a\x4b\xdf\x93\xf4\x37\x2e\xcd\xa0\x0a\xb5\xa8\xb1\xde\xcc\xdb\x0a\xd2\x46\x68\x7d\x21\x67\x74\x71\x91\x72\x28\x8f\x9e\xd7\x77\x15\xc8\xbd\xd9\x9b\x09\xed\x1d\x9a\x17\x68\xc6\xd7\xeb\x43\xfd\xab\xb9\x06\x5a\x07\x79\x78\x7a\x80\xe7\x71\xe7\x6b\x52\x2e\xb2\xa5\x57\x25\x70\xb9\xde\x32\xfa\xe9\xd6\x54\x52\xb9\xd2\xf4\x22\x9e\x67\x1c\xf5\xea\x6c\x3b\x83\xc5\xa2\x3a\x9c\xf8\xfe\x36\x32\x75\xf6\xe1\x48\xdb\x90\xd9\x7b\x7e\x78\x5a\xd7\x4d\x1c\xf5\x96\x84\x82\x41\x92\xce\xb4\x9a\x96\x1b\xa1\xe6\x4c\x39\x6e\xb8\x08\xe0\x80\xa5\xdd\x49\x90\x86\x4f\x81\x18\xd4\xa8\x28\xd1\x80\xa5\x24\xcc\xc9\x9b\x09\xe8\x50\x0e\xcc\xbd\x1a\x85\xbb\x9f\x87\x7c\xbd\x36\x8a\x9f\xc3\x34\x65\x31\xf7\x32\xb7\x37\x27\xff\xbc\xa5\x90\x57\xb4\xb3\x34\xc1\x6f\x6e\xc2\x3b\x34\x47\x02\x2b\x9b\xeb\x20\x06\x1f\x2c\xb2\x52\x71\xf0\x88\x0c\x4c\xc2\xab\x12\xe5\x83\xe3\x81\xd4\x46\xc5\xc0\xab\xa1\x9d\x8b\x9b\x04\x55\x75\x8c\xc0\x98\x07\xb3\xc0\xc6\xb3\xf0\xd1\x3d\x6f\x12\x71\x3b\xa5\x41\xac\xdc\x9c\xe6\xf5\x3a\xd8\x4a\x60\xd6\x87\xea\x41\xc5\x13\xf6\x92\x32\x49\x06\x05\x32\xd1\x4a\x90\xc9\x01\x9a\xba\x92\x2d\x4d\x83\x37\x4f\xd4\xd6\x76\xed\x4d\x7d\x2b\x47\x6a\x7b\x05\x38\x8d\x16\xba\x4c\x19\xf5\xcc\xbd\x99\x64\x31\x86\xc8\x18\x33\x54\x31\x06\xad\xec\x3a\x5e\xfc\x0a\x6d\x41\x8f\x01\x8c\x79\xca\x9c\x04\x61\xa0\xf1\x4f\x4b\x11\xe4\x09\xc7\x4b\xc4\x5e\xe5\xca\x3f\x8a\xdb\xb8\xbe\x31\x86\x93\xbb\x8f\xe8\x76\xdc\xb1\x24\x34\x19\x4d\x3d\x73\x42\x71\x61\x95\xc5\xa4\xee\x2e\xe0\x67\x21\xbf\xdb\xc1\x5b\x1e\x71\xdb\xcc\x05\xb5\x49\x5f\x63\x07\xba\xc5\x62\x10\xd4\x75\x0d\xf5\x02\xda\x76\xc8\xed\x15\xb8\x5e\x21\x5a\x6e\xee\xae\x45\xcb\xda\x5c\x40\xd5\xf5\x14\x40\x5c\xc7\x3c\xb1\x36\xaf\xc0\x15\x9f\x6f\xdd\x2d\x63\x89\x45\x03\xfb\x45\x5b\xfb\xa5\xae\x7c\x8a\x20\x6d\x84\x33\x29\x87\x34\x99\xeb\x28\x6f\x34\xc9\x71\xae\xbc\x65\x65\xc6\xc9\xa4\x2a\x51\xf9\xfc\xcd\x8f\x26\xee\xaa\x28\x32\x19\x92\x9e\x29\x4d\xad\x2c\x7c\xe8\x66\x3b\xb6\xa3\x5a\x15\xd3\xac\x1c\x83\x3b\xe2\x4e\x67\x04\x49\xc8\x12\x3c\x06\x70\xeb\x9e\x63\x50\xc3\xc0\x53\x21\x87\xa4\xda\xea\x2c\x57\x6a\x19\x23\x76\x3b\x57\x1b\xd7\x5a\xbf\x8e\xfa\xd8\xd3\xa6\x25\xf6\xb2\xaa\xed\xa0\xf9\xb9\xdb\x91\x75\xbf\x6b\xfe\xee\xeb\x4b\x5b\xc8\x77\x36\xc1\x9f\x19\x25\xbd\x73\xb9\xcf\x61\xd6\x8d\x8c\xdf\x9d\x07\x0c\x6f\xc2\x0c\x2d\xe9\x35\xda\x09\x18\x4a\x44\x60\xf7\xd5\x88\x2a\x5a\x0b\xd2\x92\x67\xb3\x9c\xf9\xbc\xaf\x3b\xf3\x23\x55\xf7\x3a\x74\x9b\x16\x0f\xb9\x4d\x30\x90\x2b\x7a\x37\xcb\xc6\xef\x29\x15\x6b\xb8\xdf\x75\xfc\x88\x64\x20\xe1\x64\xc5\x50\x8e\x67\x19\xb7\x5e\xce\x21\x76\x25\x3b\xcf\x82\xcf\x5a\x9a\xa6\x59\x0d\x69\xa2\x05\x8c\xec\x7b\x5a\x91\xfc\x8b\xde\x4f\xd3\xf3\x4b\x92\x76\x2c\xb8\x1d\x43\x63\xbd\x32\x45\xa2\x4b\xc2\x87\x74\x57\x16\xe3\x26\x8f\xee\xf6\x0b\x2c\xa8\x2e\xd8\x9a\x43\x0c\x6c\xc0\x17\x47\xe4\x1d\x3b\x27\x47\xb5\x90\x7c\x82\x7c\x94\xfc\xf6\xc0\x2f\xd0\xe0\x1a\xdd\xff\x8a\x78\x3d\x68\xc9\x42\x33\x8c\xf5\x23\x52\xb7\xe4\xb3\xe7\xf9\x72\xc3\x61\xdf\xcc\x5e\x6b\x95\xe3\x89\x5a\xd6\xb1\x4c\xc3\xb4\xc5\xfc\xd5\x64\xfb\xf8\xe2\x11\xd7\xd4\x1c\x54\xf2\x83\x94\x75\xe5\xb3\x3e\xf7\x6e\xdc\x3e\x46\x36\xd1\x3c\x5b\xaf\x1d\x99\x8e\x0a\x4b\xd7\x49\xa7\x00\x8c\x73\xb8\x5a\xab\xab\x30\x99\x30\xdf\x76\xe8\x9b\xa6\xe2\x37\x03\x8e\x96\xab\x22\xe3\xc8\x28\x87\x6f\xb2\x52\x69\xab\x51\x1e\xd5\x53\x65\x74\x6c\xd4\x8c\x6a\xc0\x44\xd5\x8c\x99\x2b\xed\xd8\x12\xc0\xdb\x6c\x87\xd5\xc7\x7c\x91\xbd\x70\x01\xd7\xd0\x84\xbd\xf0\xb1\x83\x37\xbf\x44\xb3\x87\x50\xbe\xba\x83\xfe\x3d\xfd\xb2\x60\x6b\x27\xee\xf9\x5a\x59\x68\xb0\x35\x1e\xa6\xf2\x5f\xf2\x5b\x35\x8d\x65\xf7\x5f\x3b\xfa\x22\x0b\xff\x35\x25\xa1\xc6\x73\x63\x5c\xde\x6b\xeb\x8d\x1f\x6e\xeb\xad\x6d\x5d\xee\x6f\xf1\x0d\x43\xe6\xde\xe7\x9e\x9d\xf7\xf8\x0b\x18\x79\x9f\xab\xb5\x99\xdc\xce\x1d\x01\xdf\x23\x98\x4d\xd3\xaf\x62\xdc\xff\x65\x14\x82\x59\x10\x39\x75\xb2\xeb\x91\x54\x46\x79\xc6\x2a\x2b\x0f\x0d\x64\xe5\xc1\xda\x2a\xcd\x9a\x89\x70\x99\xd3\xc0\xcb\xa0\x9d\x6d\x46\x73\xd2\x87\xf1\x73\x03\x03\x37\x6e\x2e\x9f\xe3\xdb\xa2\x63\x14\xdf\x37\xdb\xe5\x66\x01\xff\xe7\x86\x29\x86\x18\x52\x98\xc1\xf2\xf3\x49\x11\xb1\xc6\x40\xc4\xd6\x22\x98\xbe\x50\xbd\xa2\x2f\x05\x6b\x5a\xae\x8a\x4c\x2a\x26\xd3\xc6\xa3\x12\xc1\x68\x10\xcb\x48\xe0\x11\x80\x4c\x5a\xfd\x78\x06\x87\xba\xb5\x67\x6a\xd8\xb2\x04\x6c\x99\x9b\x6e\xb0\x35\x8d\x47\xb0\xec\xe4\x0f\x02\xda\xa8\x1a\xe2\x26\xae\x6f\x5b\xe1\x8a\xac\xe1\xe2\x06\xab\xc5\xae\xc9\x62\x0d\x9c\x1c\x90\x66\x29\x29\x82\x41\x79\x5c\xcc\xf5\xfa\xcd\x26\x34\x38\x14\x40\x5e\x6b\xb8\xab\xd0\xc4\x1d\xcb\xe6\x22\x98\x30\xd1\x59\x91\x05\xea\xce\x80\x6c\x67\x48\xda\x01\x90\x68\x2b\x20\xb9\x07\x92\x30\x1c\x90\xdb\x41\x08\x18\xa8\xee\x55\x72\x44\x5c\xc5\xbd\x88\xe0\x9d\x6f\xd6\x77\x85\x82\x11\x32\x13\x5d\xbf\xae\xfb\x15\x27\xd1\x9c\x32\x74\x8d\xd8\xce\x7d\xea\xfa\x1b\xfb\x64\xd9\xcd\x87\x7b\x4e\xb5\x69\xb2\xb1\xe7\x8c\x60\x15\x87\xf1\x25\xcb\x96\x68\xe7\xde\xfd\x66\x1b\x47\xb0\x61\x9c\x77\xec\x9c\x34\x81\x9f\x37\xcf\xbc\xd8\xb5\x47\x9a\x64\xc5\xd6\xbe\x6c\x36\xd2\xdd\xbb\xd4\x4d\x36\xf6\xac\xd2\xa1\xee\xd8\xa7\xa8\xbc\xb5\xb7\xfb\x4e\xd4\x69\xb3\xe5\x8c\xcd\x76\xdd\x7f\x2a\x13\xc0\x6e\xec\xcd\x95\xd3\xef\xd8\x6b\xe6\x09\xf7\x77\xe9\x5d\xe2\xcd\xfb\xf6\x2e\x1b\xed\xd2\xfb\x5b\xfb\xba\xdf\x6f\x00\xd3\xae\xae\x4d\x5a\x58\x45\xf6\x5c\x94\x88\x3f\x2b\xb2\xb2\xc4\xb3\xe7\x68\x46\x75\x50\x28\xe7\x9b\x36\x89\xb0\x1f\x0f\x7c\x67\x38\x5f\x03\x38\xe0\x32\xa0\x89\x19\xdd\x8a\xce\x24\x82\x94\x26\xaa\xea\x87\x0a\x7b\xd2\x32\xba\x40\x40\x93\x4e\xaa\x99\x6b\x66\x7b\x60\x1d\x15\xb9\x78\x48\xb6\x51\x51\x4a\xf7\xf4\x8b\xe0\x18\x3b\x9f\xb7\x90\x57\x5f\xd9\x04\xad\x29\xb8\x93\xf6\x4e\x81\x09\xc0\x66\xfe\xee\x86\xd6\x5b\x56\xad\xc9\xc2\x87\xf3\xc6\x31\xff\xbd\xda\x49\xb0\xdf\xa1\xaa\x9f\xb4\xd4\xf1\x9e\x0a\x31\x26\x5f\x54\xd5\x8f\xf7\xaa\xfe\x8d\xaa\xfe\xac\xad\xea\xcf\xbe\xa6\xaa\x9f\x06\x54\xfd\xd4\x95\xfb\x1d\x32\x4f\xd5\xcf\x63\x16\x56\xf5\xb3\xff\x5e\x55\x3f\xf3\x6c\x71\xec\xd1\xcd\x1e\x51\xd5\xdf\x36\x94\xf9\x4a\x96\x54\xd5\x6f\xc2\x92\xaa\xe8\x5a\x52\x55\x01\x4b\xaa\xca\x58\x52\x3d\xe0\x31\xc4\xe5\x0b\x95\xf7\x53\xb5\x0d\x99\x4a\xa0\xe1\x30\x18\x65\x2a\xa1\x24\xfc\x62\xa0\x84\xce\xe7\xeb\x75\x4f\x9b\x7b\x37\x69\x2b\x78\x7b\x3a\x08\x68\x3f\xa5\xb5\x46\xc7\x99\xb9\x63\xaf\xb1\x73\xb8\xa7\x6f\xcf\xc9\xf1\xb7\x2a\xdc\xd3\xb7\x5e\xb8\xa7\x6f\x5b\xe1\x9e\xa4\xdf\x6f\x72\x83\x8b\xc2\x38\x50\x37\xd1\x2d\xfc\x0f\x89\xf1\xd4\x92\xba\xb7\xb2\x44\xe5\x85\x71\x94\x66\xe5\xc5\x85\x49\x3c\xe8\xb5\x81\x65\x3a\x99\x1e\x78\x45\x69\xc0\x5d\x82\xa7\x23\xc8\x52\x1b\xe4\x99\x7f\xc7\xce\xf8\xd1\x11\x28\x27\x7c\x1a\x83\x83\x4c\xa3\x34\xe4\xf9\xb7\xdd\x67\x6e\x69\x59\xdf\xa7\xba\x8a\x94\xeb\x22\x77\xde\x24\x9b\xe6\x02\xd9\x02\x39\x01\xcd\x3b\xf7\x19\xed\xdc\x6a\xa3\x1d\x96\xdd\xf4\x55\xb9\x6a\xaa\x7c\xd8\xdc\xd9\x85\xae\xe9\xb3\xa9\x81\xa4\x43\xa2\xf2\x8d\xa8\x69\xf5\xb5\x1f\xe8\x5b\x25\x69\x4b\x5f\x40\x64\x03\xec\xa5\xc8\xf0\xe9\x29\x6a\x14\x82\x29\x4a\x2e\x0c\xd5\xee\x04\x67\x68\x07\xba\xf2\x8a\x54\x14\x43\xaf\x48\x9a\xc2\xf8\xed\xb4\x6a\x36\x45\x6d\x45\x72\x8a\x3a\x6a\xd3\x14\x69\xc7\xd0\x14\x79\x6e\x24\x29\x4a\xac\x48\xdb\x8b\x15\xe1\x1d\x2a\x83\x93\x90\x0c\x5a\x7a\x57\x1a\x67\xb9\x26\x7c\xac\xf6\xa4\x51\x59\x0c\x52\x9b\xe6\x5a\x20\x31\xa5\xed\x8e\xb4\x6c\x27\xea\x68\xb9\xb5\x06\xd7\x4d\x51\xe0\xe7\x1b\x40\x4a\xcf\x8a\xc4\xab\xef\x4e\x77\xa6\xed\xaa\xbc\xa8\x45\x9d\x08\x36\x4a\x9c\x8e\x36\xbf\x1b\x94\x5c\x23\xc6\x07\x96\x7e\x12\x04\xa4\x24\x24\x39\xd5\x3a\x0f\x41\x44\xa6\x56\x02\x7e\xd0\xdc\xb3\xd3\x33\xfe\x5d\x1b\x75\xc8\xbb\xd6\x8e\xce\x34\xe1\x12\x37\x28\xea\xb6\xf1\xe7\x14\x2f\xf6\x80\x81\x8e\x92\x63\x91\x95\x6f\x6e\x88\x15\x56\x49\xba\x49\xb0\x69\xc3\x61\x8c\x26\x64\x9a\xb2\x09\x99\xda\x44\x93\xa8\x3e\x68\xed\xeb\x5c\x02\x27\x4f\xa3\x0b\x1d\xd0\xef\x42\x51\xe5\x17\x17\xd1\x81\x3d\x0b\xb9\x5d\xc7\x22\x9d\x44\xff\x29\x6f\xf0\xc9\x31\x26\x1c\x31\x92\x15\xe5\xc9\x55\x81\x97\x4b\xc4\x8c\x20\xbc\xbf\x86\x65\xdd\x7a\xfe\xb6\x1a\x43\xe5\xf5\x69\x3f\x2f\xf8\xb2\xb8\xcc\x58\x79\xf2\x11\xdd\xde\x50\x96\x97\x27\x33\xa5\x16\x3d\x6e\x55\x64\xb4\xe2\x98\x5c\xdd\xbb\x41\x6f\xbd\x29\x5c\xa5\xa3\xb3\xd5\x77\x0b\xb3\x65\x2b\x81\xce\xe7\xf1\x62\xb2\x9a\x5a\x97\xe5\x8b\x8b\x82\x66\xb9\x3c\x8a\x57\xb8\xe4\xec\x16\xdc\x35\xb0\x4b\x3b\x75\xa4\xfd\x8c\xec\x01\xe8\x5a\x2a\x2e\x6b\x1d\xb8\x8f\xe2\x59\x9e\x5d\xa8\x62\xb5\x27\xed\x4b\xac\x6a\xd8\x52\x55\x29\x70\xfd\x23\x82\x3e\x71\xff\x9b\x42\x16\x91\x3c\xf2\xfe\x17\x8d\x59\x22\xad\x25\x3b\x08\x20\x22\xad\xa2\x57\xf9\xb9\x4c\xf4\x94\x36\x06\x3b\x08\x61\xb5\xa5\x6c\x72\xdd\x83\x3a\x3a\x78\xa3\xbd\xbe\x34\x58\x9a\x5c\x62\x92\x3b\xc9\xca\x13\x0f\x70\x69\xb7\xc8\x69\x10\x40\x43\x32\x0f\x49\xd7\x88\x44\xca\xbc\x35\x41\x1c\xa3\xf4\x85\x31\x10\x12\xd5\x43\x8f\xa5\xb6\x4f\xe9\xee\x51\xb7\x6b\xbf\xae\xdd\xf1\x50\xc5\x06\xcb\x35\xcf\xc7\xb5\x04\xea\xad\xff\x8a\xc5\xc4\x58\x50\xf1\x14\xc7\x04\xb4\x52\xa8\x49\xcc\x63\x73\xcb\xe9\xb4\x72\x00\xc6\x2c\xe5\x9e\xf9\xd3\xb2\x4c\x11\x64\xbe\xd9\xa8\x83\xbb\x89\x01\xda\xd6\x55\x36\x4e\xd0\x5d\x9b\xd1\x42\x26\x7f\x08\x5b\x88\x72\xa8\x4e\xaf\x20\xd5\x54\x8e\x13\x50\xeb\x6d\x5e\xb6\xa1\xbc\x01\x72\x0f\x32\xf9\x24\x75\x7c\x6d\x9c\x24\x09\xba\x89\x77\x06\xb0\x25\x0c\x1a\xc8\xf2\x9e\x98\x01\x0f\x00\xe5\x7d\x0f\x8c\x5c\x86\x38\x32\x86\xf6\xb8\x94\xd3\xbe\x72\xfd\xdb\x79\xe7\xee\xc9\xbe\x52\x2e\x9e\x0d\x4b\xbe\x5c\xc9\x86\x17\xbf\xb5\x93\xd6\x13\x9a\xfc\x8b\x1f\x32\xc1\x4a\x30\x33\xd2\xfd\x0e\xd8\xcd\xee\x30\xf5\x51\x91\x0b\x52\xd4\x02\xa9\x07\x4b\xf4\x65\x60\x29\xde\x30\x54\xf2\xa7\x1e\x49\x7c\x1f\xb0\xde\x03\x9c\xca\x10\xcc\x1f\x69\x77\xb0\x5a\x90\xbd\x68\xa4\x61\x81\x6c\x5a\x2c\xbd\x0b\x84\x98\x57\x29\x76\xe5\xec\x95\xb9\x87\x7e\x0e\xd3\x94\x9d\x73\x4b\x77\x12\x30\xe6\x26\x6d\x8b\xcc\x60\x22\x33\x28\xb7\x80\x1a\x33\x38\x72\x14\xb2\x5a\x03\xdf\x7a\xa4\xc8\x7a\xdd\x2a\x82\xb6\x6a\x50\x8e\xbc\xba\x3d\x11\xff\x84\x85\xe3\xfa\xa3\x18\xff\xcb\x1b\x05\x1a\x79\xb8\xd3\x2b\x51\xc2\xc5\x46\x84\xe5\x48\xa6\xce\x1d\x99\xe3\x98\xc5\x08\x80\xf5\x5a\x51\xdc\x36\x47\xc4\x40\xc6\x59\x3e\x6c\xdb\x37\x0d\x87\x36\x36\x52\xa2\xa2\xd2\xba\x46\x4f\x89\x58\xa1\xb8\x1a\x2d\x31\xdf\x00\xc5\xda\xec\xa0\x7f\x52\xa4\x35\x29\xe2\x4c\x8a\x98\x11\xc8\x81\x0a\x9a\xa2\x95\x1b\x95\x61\x7e\xf0\x3c\xc6\xc3\x61\x5c\xa5\x34\x91\x54\xef\x9b\xb9\x68\xff\xc7\x74\x64\x1a\x66\x93\x4a\xd2\xf1\xfe\x7a\x08\x90\xf3\x29\xad\x21\x0a\x80\x58\x92\xf8\x55\xc3\x84\x1f\x1f\x57\x7f\x4c\x47\x67\xa0\x9c\x54\xd3\x14\xc5\xe2\x3f\xbd\x14\x25\x6a\xc4\xf3\xb8\x03\x12\x02\x80\xe8\x53\x42\x43\xd5\x3d\x30\x75\x89\x2b\x18\x7b\x9e\x71\x24\x6a\xa2\x1b\xf9\x33\x26\xc9\x95\x42\x8b\x31\x50\x2d\xee\xca\xf4\x4e\x39\xa2\x14\xd6\xbe\x93\xb2\xb8\x10\xdc\x07\xd9\x8d\xfb\x20\xb0\x00\xc3\x61\x74\x71\x21\xc0\x5d\x24\x65\x75\xa9\xec\xb7\xe2\x11\x7c\x22\xd8\x92\x72\x52\x4c\x53\x7c\x8e\x62\x32\x29\xcc\xca\xc6\xe2\x37\xa8\x05\x48\xa9\x12\x02\x10\x00\x33\xf5\xab\x6c\xd4\xf6\x65\x2d\xce\x19\x24\xe7\x93\xa9\xf6\x3e\x37\xbf\xb4\xf7\xcc\xef\xc8\x69\x74\xc3\x7d\x97\x57\xfa\xeb\xc7\x5f\x08\xc5\x56\x10\xc3\x4b\x80\xd7\x41\x0b\xe6\xd5\x46\x6b\x28\x8b\xae\x76\xc1\x51\x90\x7d\xee\x4a\x7a\x1b\xa8\x49\xec\x68\x9e\xa0\xa1\xb1\x51\xcb\xfb\xcc\x6e\xca\x4e\x9d\x32\xa7\xd3\x2e\x14\xf3\x8c\x67\xc7\x4b\x9a\xa3\xe2\x78\xce\xb2\x2b\x49\x22\x9e\x48\xbb\xca\x13\xf3\x77\x08\xbc\x1b\x9a\xc9\x50\x12\x32\xe1\xdf\xa6\xba\x4d\xe7\x9b\x6a\x55\x1c\x17\x27\x06\xa3\x1c\xd3\xf9\xb1\x38\xb0\x5b\xf7\xce\x57\x78\x41\x02\x71\xe3\xbd\xd1\xb8\x23\x20\x18\xc9\x18\x6e\x11\x80\xa5\x53\x9c\xc1\xa8\xe4\x94\xa1\x08\xc0\xca\xaf\x2d\xc7\x06\xb0\x68\xf5\xb1\xe2\x32\x64\x14\x80\x33\xff\x03\x91\xa1\x29\x9a\xe0\xf7\xcb\x6c\xe5\x10\x2d\x04\xce\x0d\x8b\xe0\x75\x2f\xb0\x78\x3c\x82\x2c\xc1\xe5\x4b\x0d\x06\x20\x11\x39\x4d\x89\x96\x9e\xa8\xcf\x5a\xda\xf1\xa3\x80\xd8\x4b\xca\x40\x4c\x81\x20\x79\x66\x94\xe5\xcf\x33\x9e\x35\xa1\xe0\xc0\x41\xbe\x5e\xcb\x36\x25\xe2\xa6\x4f\xf9\x09\xc4\x14\x66\x70\xa6\x30\x7d\x4c\x53\x3e\x99\x4f\xc1\x39\x3e\x6f\x57\x16\xfd\x89\xba\x04\x34\x49\x5b\x9c\xb8\x03\xf2\x03\x55\xd3\x52\x37\xb7\x99\x79\x09\x2b\x31\x04\x2c\x60\xf3\x6c\x52\x41\x91\x7d\x19\xc3\x4c\x9c\xf2\x76\xe8\xd0\x3b\x6e\xe3\xc3\xea\xad\xd1\x71\x14\x08\x65\x4b\xa9\x31\x17\xcb\x09\x21\x58\xed\x92\xd3\xce\xb0\x2c\x2d\xc9\x64\x48\x0b\xa4\x22\x23\x5d\xa8\x45\xbe\x27\xd9\xaa\x5c\xd0\xde\x8c\xc4\xfe\x7e\x7b\xba\x27\xbf\x83\x58\xe7\xdd\x9b\x17\x55\xb9\x78\x26\x23\xd4\xe5\x4f\x39\x67\xf8\xb2\xe2\x7e\xdc\xa1\x70\xbf\x28\xe9\x69\x1a\xdb\x84\x7e\xf9\x33\xba\x5c\x62\x1e\x48\x39\xb9\x29\x08\xac\xf2\xa1\xa2\xec\x45\x36\x73\xe5\xe4\x2a\xd1\x54\xd2\x74\x1b\xa3\xe1\x10\x4d\xd8\x54\x0f\x97\xe5\xd9\x8a\x23\xf6\x1c\xe7\x2a\x43\xf7\x97\x19\x54\x0e\xd9\xea\x5a\x2a\xe9\x40\x0d\x17\x59\xf9\x1c\x33\x7e\xeb\x40\xad\x1d\xca\xe6\x3f\x51\x36\x5b\x24\xdd\x8a\x11\x8c\xb4\x75\x60\x56\xe8\x5c\xa7\xbd\x81\x3d\x36\x4c\xdb\x26\x9d\x7e\x4a\x6e\xe3\x28\x30\x8c\x44\xbd\x8c\x2a\x1f\xa7\x0d\xbb\xbb\x1d\x36\x4a\x72\x1a\x47\xdd\xce\x22\x50\xc3\x12\xb1\xae\x5d\x88\xbb\x0a\xd3\xdc\x56\x14\xad\x18\x5a\x15\xd9\x0c\x3d\x53\x47\xbd\x93\x55\xac\xed\xc9\xd5\xbe\x18\x34\x35\xee\x6c\x9a\xd0\x44\x10\x1d\x71\x00\x99\x63\xf8\xac\x87\x90\x5d\x52\x50\xc3\x2c\xcf\x0d\x9a\x08\x5d\x46\x25\xc4\xcf\x73\x2b\xdd\x16\x93\x5c\xd2\x6b\xb4\xb5\x91\x71\xa7\xb2\xed\x7c\x9c\x14\x08\x34\xd3\x5e\x98\x79\x16\x98\xfb\xa5\x79\x16\x48\xa7\x81\x7e\x19\x70\xda\x46\x80\x8a\xa9\x76\x67\x27\x88\x4c\x3d\x37\x0c\x6a\xe8\x68\xab\x1e\x70\x14\xba\xd7\x44\xa2\x03\xad\xe4\x92\xd7\xdf\xc4\x79\x73\x8f\xf8\x2e\xed\xfc\xf8\x2c\xf8\x5e\x84\x43\x43\x01\x84\xe9\xb2\xcd\x6f\xbe\x6c\xdd\xf1\x66\xfa\x7c\x02\x6d\xa3\xdb\x91\x64\x98\xa4\xe1\x88\x0d\x41\x9d\x18\x3a\x0b\xde\xa9\x58\xaf\x4d\x04\xaa\x60\x5c\xed\x1d\xf7\xec\x62\x85\x48\x8e\xc9\x95\x78\x85\x0c\xa3\xd7\x49\xad\xdc\xc2\x48\x93\xa9\x38\xc6\xfa\x72\x6e\x0f\x43\xa4\x97\xa4\xf6\x5f\xd2\xd0\x1b\x9e\x28\x2e\xf9\x38\x89\x39\x78\xb5\xea\xbc\x8d\x36\x5a\xb8\x33\xed\x43\xc1\x47\xdf\x75\x57\x83\x0e\xdc\x2c\x4f\xde\x7b\xab\x5d\x1d\x97\xd9\x47\x64\x7d\x89\xfc\xfb\xe5\xa3\x94\x4e\x42\xf7\x36\x48\x04\x76\xb1\x38\x65\xe4\x3c\xda\x0c\x46\x8a\xb5\x8d\x80\xa8\xd4\x07\xf3\xba\xde\x81\x22\x40\x3b\x3f\xf6\x9c\xaa\x65\xed\xf6\x8e\xf7\xbe\xc9\xda\xdf\xdb\x6e\x45\x8c\x40\x27\x4f\x5e\x07\x12\xde\xf8\x1b\x1f\x60\x31\xf2\x0e\x6f\xe5\x64\xba\xdb\xab\x38\x3a\x4c\x9d\x48\x79\x19\x33\xa2\x32\x33\x97\x0e\x29\xd5\xea\x13\xec\xfa\x28\x96\x88\xeb\x90\xf6\xf1\xf6\x2e\xb7\x3f\x81\xce\x66\x49\x84\xa5\x9f\xbd\xe7\x38\x57\xbb\x76\xaf\x5b\x7d\xd0\x8a\x89\xdf\x7a\x43\xba\xaf\x8b\xe6\x0b\xda\xc5\x21\x9a\x41\x51\xe2\x06\x35\x3e\xc7\xb9\xac\x21\x4d\xef\x54\xfe\xe4\x71\xbb\xc2\x3b\x54\x22\xae\x6d\xf3\x6c\xfc\xf0\x17\x02\xa3\x95\xd8\x8f\xe8\xb9\x61\xda\x09\x6e\x0c\xb1\x54\x49\xec\x3a\xb2\x80\xa8\xf5\x3a\x04\x1c\x33\xc3\xaf\x83\x43\x75\xed\xc8\x52\x5a\x36\x71\x1f\xd3\xab\x65\xc7\xd9\xf8\xe1\x47\xc7\xcb\xf9\x71\xb3\x41\x40\xe7\xfe\x8a\xc9\x51\x1a\xfd\xa1\x89\x63\x0b\xa4\x69\x16\x4b\x56\xb4\xb8\x5d\x52\xb6\x5a\xe0\x99\xa1\xec\x58\x22\x46\xfa\x33\xba\x5d\xaf\x15\x2d\x73\xe0\xb7\xc5\x56\x69\x44\x7c\xd7\x40\x27\x1e\x7b\x27\x2c\xc2\xb7\xc1\xb0\x08\xdf\x4e\x87\x43\xf7\x2f\x48\xbb\x2d\xff\x23\xd8\xf2\x3f\xbc\x96\xff\x31\x85\x59\xaa\x78\x3d\x04\x71\x69\x6f\xcd\xf8\x70\x04\x1b\xd6\x59\xfc\x65\xb8\x40\x19\x2e\xf0\xae\xae\xfd\x10\xea\x16\xeb\xdd\x79\xd2\x13\x64\xec\x9c\xa4\x83\x74\x97\xd9\x96\xb7\xcf\x12\xb7\xe7\x59\x9b\xf5\x36\x13\xd0\x8f\x9d\x74\x4c\x93\x37\x8c\x82\x71\x6f\x65\xa7\x9e\x7a\x8f\x5d\x42\xdc\x44\xd4\x86\xd5\x8e\x73\x8a\xcb\xb4\xba\xc7\xb4\x60\xbb\x7a\xd9\xaa\x6e\xd2\xd0\x96\x30\x53\x6d\x08\x64\x90\x02\x30\xde\x34\x90\xbb\xa4\x4d\x23\x84\x3a\x07\x00\xfa\xf5\x2d\x5a\x98\xa0\x69\x5a\xd6\x35\x48\x96\x88\x67\x71\x06\x3a\xa1\xde\x1c\xff\x02\xac\x4b\x0e\x47\x90\x3c\x48\xec\x60\x46\x0d\x07\x62\xc2\x31\x89\xa3\x46\x98\x85\x20\x4f\xb9\x38\x66\x00\x72\xa8\x4c\xb9\xe6\x2e\x10\xc3\x9d\xf0\xf5\x3a\xe6\xa9\x68\x44\xdd\xee\x94\x7f\xb3\xec\x54\x76\xa7\xc4\x0f\x28\xc9\x02\x3d\x39\x09\x5b\x04\x0e\x3c\x8f\x79\x8a\x20\xd2\xc4\x0e\x18\xdb\x11\x1a\x0b\x61\x12\x47\xa6\x7f\xd1\xbb\xa4\x69\x0f\x4f\xbd\x29\x4b\x29\x51\xc0\xf8\x6c\x2b\x09\xba\xe9\x84\x7a\x5b\x7a\x21\x9f\x97\x1a\xe8\xad\xbc\x6b\xae\xae\x1c\x5b\xee\x41\xc2\x50\x96\xbf\x21\x85\x78\xb0\x77\x7c\x69\xa4\x0a\x30\xfc\xc4\x9c\x28\x36\xce\x2b\x92\xcd\xfd\xa2\xe3\x15\xc3\xd7\x92\xf0\xf1\xda\x1a\xd2\x82\x95\x27\xff\x28\x1d\xcb\x9e\x4d\x9c\xcc\xc6\x3a\x0a\x16\xf2\xdb\xc3\x5e\xc2\x0d\x3e\xaf\x6d\xe3\x62\x1d\x2d\x23\x29\x28\xfd\x58\xad\x1c\x11\x00\x1b\xbb\xcf\xc4\x41\xdb\x33\x87\xad\xd7\xf6\x77\xdc\xd3\x81\x9d\x69\x04\xc0\x39\x1b\xf7\xd5\xd2\x24\x43\xf4\x80\x9b\xd8\xdb\xe0\xbd\xda\xd0\x2f\x28\x61\xff\x51\x9d\x87\x7b\x8b\xd7\xfb\x7b\xfc\xdf\xef\xdf\xbc\x7e\x6f\xe1\xb0\x63\xd7\xd8\xe9\x5a\x6b\xc9\x48\xf2\xca\xbd\x55\x8e\xe5\xf5\x2c\x25\xc9\xbb\xe6\x62\xd9\x0f\x9a\xd0\xd4\xe9\x13\x67\xf0\x0e\x65\xb3\x85\xb9\x64\x7f\x46\xb7\x01\xf1\x9c\x3d\x74\x69\xeb\x6f\x6b\x2b\x6f\x14\x34\xcd\x92\x3f\xa2\x5b\x93\x77\xc5\x56\x07\x56\xd0\x20\x31\xa1\x3f\x6e\x37\x0d\x71\xc3\x3c\xaa\xa8\x42\xad\x06\x0e\x9a\x69\x42\x10\x79\x6f\x0d\x03\x07\x64\x38\x44\xd2\x22\x51\xca\x05\x8d\x0c\xbc\x8f\x11\xd0\xd8\x07\x96\x9d\x7a\x16\x16\xb2\x46\x8a\x64\x1d\xe9\xda\xdb\xad\x42\x64\xa4\x3b\x39\x9a\x5f\xa3\x35\x98\xa8\x27\x6b\x6d\x15\x61\xdd\x6f\x07\x5a\x55\x26\x68\x2a\x67\x1b\x18\xc5\x7d\x72\xbe\xc4\x38\xc6\xc0\xb6\x35\xf8\x26\x79\x33\x2e\x5f\xa3\x9b\xf4\xf0\x14\xa2\xf3\x18\x25\x0c\x15\xd2\xd0\xa2\x5c\xe0\x55\x69\x62\x2f\x4b\xee\xf7\x9d\xfb\x25\x46\xd2\x33\x20\x37\x11\xc7\x24\x0a\xff\x2b\xcb\x56\x2b\xc5\x19\xab\x73\xff\x4a\x27\xaf\x96\x98\x53\x46\x03\x13\x6d\x74\x22\x80\x02\x23\xc2\xad\xfd\x06\x96\x5a\x14\x92\xcc\x28\x62\x33\xf4\x2a\x07\xb1\xa8\x0a\x00\x44\x29\x4a\x1a\x36\x05\x86\xce\xa1\x22\x55\x5a\xe2\x70\x8b\x0c\x5c\xa9\xf8\x84\x4f\x9d\x34\xde\x5b\xba\xf1\x36\xc7\xed\x46\x7a\x92\xbb\x82\x15\x95\xc4\x26\xff\xb3\xb8\x71\xa8\x95\x11\x48\x5f\x73\x55\x51\xbc\x23\xc6\x3c\x11\x93\x97\x05\xbe\x5a\xf0\xa7\xad\xc5\x5d\x38\xab\xb5\x36\x90\x4d\x59\xda\x04\x9e\x0a\x74\xe1\x7e\xad\x56\x79\xc6\x51\x40\x07\x21\x7d\x31\x61\xa3\xa7\x61\x88\xae\x10\x89\xef\xd4\xc9\x6a\x50\xd6\x4b\x4f\x55\x60\xa8\x38\xc9\x5c\x58\xa2\x36\xd5\xbb\x87\x08\x97\x71\x20\x9e\x65\xb3\x05\x92\xaa\x2e\xf6\xcc\xe9\xee\x95\xad\x10\x5b\x16\x21\x1f\x73\x58\xe0\x7c\xcc\x6a\x00\x09\xba\x19\x64\x66\x42\x31\x16\xe8\xa2\x5f\x4a\x6c\x5f\x4e\x93\x07\xbe\x3d\xbc\x6a\xd9\x8c\xf9\x92\xb2\xd7\xe8\x46\xcd\xc4\x8c\x5f\x83\xb3\x98\xd9\x34\xf2\x3e\x5d\xf4\x0e\x95\xb4\x62\x33\x14\x13\x00\x12\xe5\xab\xa9\xe2\x7d\xbb\x79\xf1\x96\x2b\x7e\x0b\x99\x4f\x3b\x49\xc4\xa3\xac\xd6\x02\x44\x95\xf9\x22\x2d\x81\xe5\x87\x18\x1c\x18\x7e\xef\xca\x5c\x9a\xc6\x69\x8d\x0f\x87\xb8\xa5\xd9\xe3\x00\x62\x93\x27\x3c\x8e\x04\x19\x76\x1b\x89\xa2\x8b\x86\x4c\x4b\x05\xbf\x55\xbb\x2c\x57\x4b\x7a\x18\x65\xab\x55\x81\x55\x2e\x09\x41\x9d\xa2\xf5\x3a\xb2\x64\x80\x63\x91\x73\x78\xea\x1e\xf2\xa5\x86\x8d\x73\xc0\xcb\xb6\x19\x0a\x77\x65\x3d\xec\x65\x4b\xd3\xd4\x12\xed\x37\x69\xb1\x00\x64\xea\xf2\x5b\xf1\xdf\x8f\x06\x61\x80\xb8\x25\xad\x6f\x96\x15\x33\x70\x5e\xc9\xbb\x3e\xde\x2a\x12\x12\xe7\x9d\x75\xce\xfb\x43\x45\xfd\x07\x36\xa9\x5f\xd9\xcb\xf4\x21\x6f\xff\x65\xc4\x78\x33\xf1\x32\x0e\xce\x47\xfa\x73\xc7\x77\x73\x8c\x8a\xbc\x23\x01\x6c\xe7\x61\x47\xd2\x86\xe7\xc7\x6c\xe5\x01\x47\x20\xb4\xb6\xb9\x75\x07\x2f\x3a\x20\x3c\x47\x4a\x8a\x09\x1b\x7e\x09\x8c\x45\x05\x17\xd7\xdb\x4a\x2c\xf9\x88\x49\xae\x2a\x58\x74\x32\x1c\xda\x3e\x2c\x8e\x52\xaa\x35\x24\x78\x08\x87\x51\x70\x72\xb3\x7b\xc2\x12\x81\x94\x0f\xc4\x3f\xdd\xe0\x22\x5b\x7c\x2a\x9d\x20\x8d\xd0\x37\xbb\x8e\x0b\x18\xf9\x62\xe2\x08\x76\x82\x03\xf1\x14\xb9\x88\xb5\x15\x1b\x44\x91\x4f\x20\xac\x99\x51\x74\x3b\x9f\xa0\xe9\x41\xd8\xd7\x8c\xb5\x55\xca\xe2\xa1\x14\xef\x73\xe7\x43\x0c\x2c\xb4\x20\xee\x1c\x51\xce\x32\x52\xce\x29\x5b\xb6\x2f\x13\x9e\xc7\x82\xf8\x47\xd6\xfc\x4c\xc9\x9c\xac\x69\xdc\x6e\x87\xb8\xf7\x3a\x46\x76\xe0\x71\x4b\x8e\x75\xc8\x93\x45\x56\xbe\x53\x9e\x0e\x99\x26\xfe\xec\x5e\x26\x4b\xe9\x85\x7b\xf2\x77\x31\x9b\xd8\x9c\xaa\xb5\xcf\x3f\xaf\xe5\xbf\x20\x3e\x1f\xff\xed\x0f\xf1\xe4\xef\x7f\x98\x1e\x01\x70\xae\xfe\x4a\xc4\xcf\x3f\x9c\xa8\x90\x4d\xa7\x32\x64\xd3\xe4\xc9\x14\x66\x29\x99\x7c\x3b\x85\x65\xca\x93\xb9\x4a\x0e\xf8\x52\x7a\xb5\x76\x27\x89\x01\x38\x28\xd3\xb8\x4c\xcb\xe1\x50\x10\x19\x59\x59\x02\xdf\x10\x81\x42\x47\xde\xf6\xe1\x76\x25\xb9\x82\x71\x06\x25\x09\x33\x6e\xa8\x19\xf9\x44\x2a\x8f\x0e\xc4\x62\x06\x1b\x3b\x6d\x6e\x18\x29\x06\x76\xb7\xe0\xd9\x64\xbb\xb3\x5d\x05\x27\xd8\xe7\x7b\x1a\xd9\x38\x3e\xa1\xae\x84\x71\x38\x64\xc3\x21\x9b\xf0\xb6\x80\x71\xba\x5e\xa3\x96\xf3\x78\x63\x1e\xe1\x61\xb9\x40\x18\x7f\xb5\xfb\xd8\x41\xd6\x24\xf4\xfe\x71\x48\x02\xef\x25\x73\xb4\x12\x9e\x54\xb6\x41\x4b\xf2\x70\x36\xcf\x60\x14\xba\x96\x1c\xdc\xa1\x84\x50\x8e\xe7\xb7\x06\xf7\x29\xda\x27\xe6\xfa\x86\xd9\x79\x9b\x2c\x02\x32\x28\x9c\xd5\xec\xdc\x35\xb8\x40\x86\x0b\x7a\x80\x64\xea\x0a\xf1\xa7\x33\x5e\x65\x85\xc1\xb0\xe2\x7c\xa5\x44\x90\xbd\xad\x77\x22\xc5\x10\x75\xcc\x7f\x52\xea\x17\x4a\xed\x58\x06\x51\x4b\x87\xdd\xf2\x4e\x85\x18\x96\xb0\x52\x9b\x50\xa4\x44\xa6\xe7\xab\x00\x9c\xa5\xed\x76\x71\xe1\x08\x9b\x66\xa2\x21\x80\x59\x3c\x93\x95\x6b\xe9\xe8\x1b\x18\xc1\x15\xa7\x23\x97\xce\xa8\xc3\xfa\xdb\x32\x65\x89\xe2\x84\xf5\xad\x6b\x3c\x83\x32\x15\x28\xd0\xd5\xe3\x6a\x35\x55\x98\x23\x42\x69\x9a\xf2\xf3\xd1\xf8\xb4\xee\xe8\x4c\x9b\xbc\xbf\x50\x13\x71\xee\xb9\x21\xad\xe8\x0d\xd2\x42\xf4\x80\xc9\xf7\xd1\xbe\x5c\x3e\xf7\x2a\x03\xe1\x49\x21\x99\x54\xbe\xc6\xae\x21\x18\x03\x96\xe2\x17\x94\x9a\xe5\x66\x4c\xd6\x3d\x6f\x6f\x9b\xcf\xde\xd3\x2c\x51\x4a\x7b\x3f\x14\x9d\xbb\x83\x7a\x12\x07\x04\x75\x82\x7a\xb1\x0c\x49\x9f\xfa\xd2\x34\x6c\x14\x90\xba\x89\x7b\xd8\x51\x9b\xb7\xd4\xa1\xd7\x37\x2b\x2e\x43\x73\x9a\xc9\xce\xff\x2a\xde\x07\xd1\x1f\xca\xe3\xdd\x94\x5e\xd8\x78\x6e\xa5\xea\x94\x75\x50\x87\x13\xa8\xa1\x65\x03\xb2\x41\x33\xc6\x94\x66\x4c\x7f\x8c\x6a\x29\xb8\x74\x49\xad\x30\x76\xd9\x4e\x7b\x4d\xa6\x9f\x45\x76\xc9\xf1\xc4\x3a\xa5\x7d\x33\x0f\x53\x4b\x8e\x36\xaf\xdc\xf1\x89\xe9\x35\xbd\x0d\xd6\xd6\xc9\x19\xbf\x84\x51\x68\xdb\x3a\x75\x53\x5d\xfb\x66\xef\xda\x79\xa0\x81\x11\xc3\xef\xd8\x6c\x87\xda\x8e\x22\xf4\xab\x46\x30\x0c\x20\x4c\x63\xd3\x2a\xb3\x1d\xae\xb2\x19\xb2\x12\x9e\xbf\xbc\x78\xf7\xfe\xd5\x9b\xd7\x4e\x76\x68\xcb\xd2\xb1\x4e\x91\x54\x66\x8c\x49\xa7\xfc\x83\xa5\x91\x70\xb8\x4d\x53\xc1\x32\xb7\xb0\xf5\xc1\x72\xe6\xd0\x40\x6c\x5c\x5a\x95\x04\xf4\xd4\x29\xce\x07\xf9\xb7\xd2\xe7\x8f\x4b\xa5\x22\x81\xde\x95\x73\xea\xbe\x51\x4a\x07\x2d\x1a\x2d\xf0\x25\xcb\x18\x46\xa5\xc9\xd5\x65\x0b\x1a\x82\x4c\x89\x84\x07\x96\xa9\x8a\x60\x95\x68\x80\x19\xd1\x6c\xe5\xdc\xa1\x62\xc7\x3b\xe4\x49\xff\x7b\xf4\x15\x1d\x4d\xc4\x76\xfa\x2d\x6c\x36\xfd\xd9\xba\x8a\xfb\xd8\x77\xdf\xe7\x92\x7e\xa6\x6a\xc3\x2a\x9d\xaa\xdf\xab\xc2\xbf\x70\xa4\x50\x07\x3d\x31\x95\x54\xa7\xc6\xa7\x08\x75\x02\x20\x07\xe3\x39\xaf\xd7\x31\x6b\x29\x12\x65\x40\x10\x27\x3a\x48\x7f\x3c\xe4\xd9\xc3\xe3\x21\x3f\x20\x12\xb2\x9c\x4b\x20\x18\x72\x30\xee\xaf\xac\xfc\xf9\x61\x91\xfd\x95\xd6\xca\x93\x8c\x0f\x87\x62\xeb\x49\x25\x0e\xb4\x1b\xef\x45\x07\x42\xbe\x13\x4b\x40\x29\x03\xda\xc0\x70\x04\xb1\x2b\x6b\x30\xf6\x07\x77\xe5\x18\xc3\x50\xa2\x5b\xf2\x47\x1b\x54\xf9\xfc\x2e\xa7\x44\x62\xf3\xb1\xfe\x75\xaa\x7d\x16\xd1\x84\x1c\x1d\x4d\xeb\x1a\xb6\x15\x12\x8c\xde\x0c\x50\x0d\xe7\x63\x5c\xd7\xbb\xc6\xe1\x56\x67\xe4\x91\x63\x70\x1b\x87\x8c\xc3\x11\x2c\xd3\xc3\xd3\x06\x2a\x2e\x44\x02\xe7\x58\xd0\x78\x01\x9a\x8e\x25\x04\x7d\xe2\x8d\x34\x33\x4b\x51\x22\x40\x06\x51\x1b\x46\x32\x5f\x0b\x4d\x25\x90\x5c\x39\x1c\xbb\xbd\xcb\xcc\xf5\x61\x89\xea\x66\xbd\x36\xbf\x62\x50\xcf\x31\xc9\x8a\xe2\x56\xba\xd4\xe9\xc8\x1d\xb4\xae\x6b\x2f\x1b\xd5\x23\x05\xcb\x9e\xff\x26\xa2\x45\xe5\xbe\x64\x20\xce\xd3\x50\x70\x6f\x1d\xf2\x6c\x38\x34\xb1\xcf\xae\x10\x3f\x77\x7e\x07\xad\xd1\x49\x0b\x6b\x09\x48\x9c\x1d\xee\xe4\x31\x28\xea\xdb\x78\x7e\x31\x4a\xa5\x2d\xea\x19\x38\x73\x02\x8f\x09\xb4\x86\xe7\xb1\xb5\x6d\x6a\x22\x84\x39\xbd\x3d\x47\xe5\x8c\xe1\x15\xa7\x2c\x26\xa2\x81\x55\xda\x8a\xf9\xcb\x7f\x75\x7c\x14\x30\xc6\xca\xb5\xbd\x56\x51\xf3\x20\x5b\xaf\x5d\xec\xbe\xf0\xc2\xf2\x2d\xbe\x68\x58\xbe\xd5\x3e\x2c\xdf\xc6\xb0\x7c\xb7\xed\xb0\x7c\xb7\x5f\x33\x2c\xdf\x32\x10\x96\x6f\xb9\x21\x03\x5f\xd5\x9f\x81\xef\xba\x95\x09\xef\xfa\xd1\xe3\xf3\xd9\xa1\x6f\x1d\x12\xec\xf6\xd7\x9d\x84\xcf\x50\x9a\x8d\xd6\xb1\x4c\x83\x6c\x92\x8c\xbe\x31\xf8\x2b\xca\x3e\xfe\x98\xad\x0e\xc2\x0d\xdb\x31\x2d\xc4\x2a\xe2\x0e\x31\xf5\xfb\x09\x27\xaa\xf0\x54\x0d\xe2\x2b\x1b\x29\x02\x12\x58\xc1\x59\xba\x8a\xaf\x9c\xe0\x07\x57\x0e\xb5\x7a\xd6\x05\xc8\x17\x8c\x9e\xa8\xd4\x5f\xf0\x4a\xc6\xf6\x98\x79\xfa\x19\x0e\x40\x63\x17\x9d\xf1\x2c\x24\xa3\x93\x5e\x8e\x32\x75\x92\x35\x83\x08\xd7\x32\x9a\xef\x6d\xf5\xe6\x3b\x7e\x97\xcc\x77\x3a\x99\x1e\x18\x2b\x96\x46\x20\xf0\x5c\x9c\x66\x2c\xd6\x27\xb5\x9f\x52\x6e\xae\xec\x18\x50\x52\xe0\xbc\x1d\x53\x5e\xea\x8d\x48\x8f\xde\x88\x4c\xd0\xd4\x11\x04\x0d\x87\xad\x19\x28\x89\x90\xca\x0e\x75\x29\xf5\x6a\x08\x5e\x0b\xb2\x17\x2e\x63\xd6\xe8\x1f\xd2\x2b\x18\x93\x54\xc7\xef\xb8\xf2\xe5\xc5\x7f\xc5\x7c\xf1\x5c\x2b\x73\x03\x91\x3c\x1a\xf3\x60\xe5\xaf\xe4\xb4\x94\xda\xac\x96\xa1\x19\x3e\xc7\x01\xc5\x3b\xe9\x79\x50\xec\xc5\x95\xa6\x14\x4d\x94\x06\xb7\x34\x56\xac\x80\x5b\x24\xe8\x1a\x04\x48\xea\x57\x54\xf1\x08\xa4\xbe\x5a\xca\x6f\xe4\xe5\x34\x84\x57\x55\x14\x07\x24\x9d\x4c\x6b\x6b\xdd\xc8\xb4\xe0\x96\x48\x9b\xcc\x98\x4b\xc2\x47\x07\x19\x91\x32\xfe\x97\x96\xf3\x0d\x40\x85\xb5\xe0\xd2\x0f\x54\x59\xdd\xbc\x08\x00\x52\x1f\x8e\xa5\x03\x44\x7c\x1e\xd3\xf5\x3a\xa6\x4a\x51\xdc\xf6\xc3\x25\x4a\x24\x2c\x39\x6a\xd1\x25\xd6\xa6\x1e\xad\xf3\x3f\x41\xd3\x94\x02\x48\x4d\x3e\xc1\xc0\x67\x2c\x9e\x3b\xb3\x54\x67\xe2\xf7\x5d\xa8\x58\x24\xad\xb8\x34\xdb\xc0\xe4\xca\x51\xe6\xd8\x27\x0c\x3b\xde\x30\x8e\x41\xb1\xea\x56\x30\x38\x0d\xc0\xbb\x96\xca\x7d\xf3\x81\x25\xac\x60\xd1\x32\x65\x35\x1c\x31\x03\xe7\xb1\x32\x95\x2d\xce\xad\x18\xca\x4a\xc8\xa4\x42\xaf\xb4\x06\xe5\x95\x72\x06\x43\x50\xbb\x87\xd5\xa0\x91\x69\xd9\x36\xfd\x95\x01\xe4\xae\x63\x0b\x03\x60\xac\xe3\x81\x30\xc9\x2c\x34\xb6\x35\x9e\xc9\x95\xc2\x25\x3d\xbb\x73\x28\xd9\x0e\x4f\x62\xdd\xe7\x57\x82\x03\x7e\x25\xf2\x6c\x48\xa7\x12\x1c\x70\x2a\x21\xd2\x40\x28\x04\xf5\xcd\x00\xa7\xc6\x76\xbd\x4a\xf5\x31\x14\x77\x92\x01\xe5\xe9\x5e\x7a\x9e\xee\x0c\x00\xae\x4e\x70\xd7\x59\x5d\x9e\x5d\x60\x2f\xaa\xbd\x9e\x21\x9f\x74\xc1\x28\x40\x7e\xc0\xc3\xb7\xa1\x82\x54\xde\x83\x4c\x90\x62\x92\x74\x53\xe0\xf6\xe4\xec\xbe\x15\x7b\x26\x9a\x00\x01\x5f\x9d\x02\xb4\x65\x07\xb7\x11\xa2\xbb\x82\xb4\x6d\xa1\xdf\x0b\x52\x13\xd0\x60\x37\xf4\xa1\x30\x1a\x80\xd9\x43\x2e\x61\x76\xae\x9b\x79\xd7\xd0\x38\x10\x88\xdd\x65\x12\x9f\x8c\xb3\x30\x02\xdc\xb2\x10\x58\xea\xb3\x71\xe0\x20\xdb\xc3\x34\x65\xe7\x71\x95\x96\x7d\x97\x90\xd8\x4b\x88\xfd\x7b\xc5\x37\x5e\xc2\x6e\x65\x57\x23\xcb\xc0\xb8\x72\x6e\x5d\x00\xf7\x55\xb0\x0a\xed\x55\x0b\x8a\xa1\x68\xa2\xed\x97\xae\x73\x84\xce\x3b\x25\x63\xbf\x72\x87\x06\xb1\x8d\x42\x5f\x5a\x8d\xbb\x6b\x39\xef\x29\xb7\x29\xc0\x42\x7b\xf9\x5c\xca\xa9\x43\x01\xbb\xb4\x89\x8a\xf4\xdc\x70\x14\x56\xae\x31\xa5\x36\xef\xf4\x29\x90\x2e\xdd\x82\x95\xcf\xa9\xe3\x02\xc4\x36\x9d\x58\x2c\x78\x79\x45\xc8\x60\x00\xf1\x00\xfb\x83\x82\x3b\xe6\x53\x1d\x78\xea\x59\x78\x4e\xf0\x54\x67\xf8\xea\xd0\x82\xe2\x13\x9e\xc7\xc6\xef\x46\xac\x2a\x73\x09\x57\x7b\xcc\xce\x33\xd7\x61\xd3\xef\x1c\x8c\xcb\x34\x6b\xeb\x6c\x5d\x85\xa3\x98\x79\xc7\x1e\xa0\xd5\x49\x2d\xfd\x3f\x86\xc3\x1e\x87\x6f\x23\xf1\x0a\x9b\x23\xa8\x10\x09\x12\xc9\xe9\xe7\x25\x1b\x0e\x73\x54\x20\x8e\x06\xa1\x35\x4b\x17\x0b\x62\xf7\xdf\xcc\x6f\xd3\xb6\x23\x48\xd2\xbb\xfa\x80\xdd\x7f\xb3\x11\xb8\x43\x32\xd4\xac\xd7\x34\x26\xca\x76\xc9\x01\x02\x9a\x42\x3b\x67\xaf\xd8\xd1\x95\x77\xb1\x54\x07\xb0\x44\x82\x92\xa6\x79\x7c\x1b\x5f\xb9\xb9\x96\x9c\x75\x6a\xfe\xdf\xf2\x12\xcc\x11\xee\xf8\xf3\xf4\x4c\x6e\xdd\x4f\x90\x00\x88\x8d\x5e\x98\x36\xe4\x52\xa3\x44\xef\x8b\xf6\x09\xb9\x14\x0d\x4a\xa0\xf8\x18\x01\xc4\xbc\x8b\x35\xa4\x58\x31\xd1\x5e\xd3\xe7\xf6\x57\x9f\x83\xbf\x7f\x0e\x95\x85\x45\xef\xc9\xf4\x34\xfe\x00\x8c\xf9\xae\x95\x81\xd9\xaa\xce\x74\x61\x2f\xbe\x4a\xf9\x41\x77\x4f\x5c\x70\xb5\x76\xa5\x81\xe9\x22\x2b\x3b\xc6\x0c\x01\xe8\xfa\xaf\x8b\x36\x8a\x76\x37\xb3\xeb\xc7\xe0\x7c\x06\xc6\x35\xb1\x41\x8c\xd2\xc8\x52\x89\x03\x02\xc3\x75\x17\xe3\xd5\x6f\xaf\x46\x01\xa6\x6b\xb7\xe9\x8e\xe5\xe8\x1e\xbf\xe0\xd9\xb1\x31\x1f\x7a\x37\x0d\xb4\x7a\xed\x6c\x9f\xed\x3d\xb4\xb1\x9b\x46\x09\xd6\x6f\x8d\xd6\x42\x50\x76\xac\xee\xcb\xb5\x69\xa4\x40\x6d\x0b\xdc\xd9\x0e\xa7\x47\xc3\x37\x80\x37\x02\xad\x3b\x9b\xcb\xd2\x22\xee\xa2\x43\x20\x45\xa0\x62\xb5\x2c\x29\x63\x70\x76\x18\x4b\x2d\x46\x0c\x80\x54\x5c\x9c\x35\x56\x8e\x72\x3a\x10\x3b\xd1\x00\xb7\x91\x06\x64\x3a\x1c\xc6\xb8\xff\x2b\x80\x7d\x94\x88\xdb\x72\x1e\x6e\x81\x01\x9f\x90\x69\x3a\x09\x42\x96\x4c\xdb\x3c\x0b\x99\x4e\x15\xcd\xae\xde\xd9\xbe\x56\x36\xd2\x7b\x36\x1c\xf6\xbc\xb3\xad\x30\x5d\x21\xce\x66\x9c\x0d\x87\xf1\x96\x27\x37\x84\x31\x04\xd6\x2a\xa5\xd5\xac\x58\x59\x06\x33\x71\x40\xb4\x34\xb9\x12\x44\x04\x8a\xab\x46\x03\xc4\x92\x79\xdc\xc8\x47\x9a\x6b\xda\x8d\xc8\xd3\x73\x94\x14\xa5\xc4\x05\x4d\x61\x75\x38\x81\x6b\xcb\x15\x61\xc3\xfa\x2e\x27\xf3\x2d\x83\xb6\xbd\xb6\x8d\x11\xf4\x26\x8a\x4a\x79\x51\xc5\x24\xe9\x2e\x27\x16\x3c\xab\x9e\x92\x0a\x2e\x63\x1e\xb9\x00\xbe\x0b\x00\xa3\x7d\x33\x9a\x4b\x68\xed\xc9\x42\xc4\xb3\x12\x35\x1a\xff\x0b\x0b\x31\x49\xec\x31\x65\xc3\xd5\xa0\xea\x73\xf7\x8f\x71\x48\x0e\xd7\x83\xc5\x7a\x91\x18\x9e\x6e\xc1\x5a\x78\x1a\xe6\x18\xb0\x78\xd6\xee\xb3\x41\x08\xdc\x09\xc6\x3f\x8c\xdc\x3c\xa7\x20\x26\xca\x2c\x49\x34\x41\x53\x69\x70\xd2\xd9\x04\x07\xac\x6d\xb2\x06\x39\x18\xb0\x6d\x47\xb7\xf3\x0b\x73\x0f\x28\xa2\x6d\x50\x44\x53\x68\x99\xce\xce\x23\x64\x3c\xbf\x7c\xae\x5b\x52\xc5\x5f\x8d\x00\x0a\x99\x17\x6e\xa3\x83\x02\x6d\x2c\xf1\x18\x78\x3c\xba\x80\xef\xa5\x73\x4a\x24\x1d\xaf\xc2\x74\x78\xef\x08\xb6\x55\x67\xfb\x21\xf7\xc4\x78\xe1\xbe\x37\xf4\x7c\xd5\xdb\xb3\x47\x9b\xdd\xbb\x5f\xdb\x66\x43\xbf\xe2\x58\xcb\x1b\xfd\x03\x15\xdf\xbb\xe2\x85\x0d\xfd\x77\xdb\x76\x41\x2e\xae\xdb\x3c\x76\x75\x26\x04\xc0\x4a\x96\xc1\x0a\xc0\xab\x3a\xe6\x8e\xaf\xad\x6b\x3c\x79\xb5\xa3\xe1\x97\x31\xb7\xda\x66\xf3\xb5\x0f\x7b\xf2\x39\x6a\x3e\x23\x87\x93\x56\xed\x6d\xe9\x5b\x5a\xf6\x85\x04\x0b\xba\xee\x74\x8d\x84\x51\xd7\xbb\xe0\x80\x0f\x87\x99\x74\x4c\xc3\xe9\x1d\x2e\x5f\x2c\x57\xfc\x76\x7c\x78\x0a\x71\xf9\x03\xcd\x72\x4c\xae\x9a\x3f\x50\xae\x7e\xcb\x09\xaa\x9f\xef\xb3\x6b\x5b\xe5\xb9\xc4\x95\xba\xce\x6b\x74\xa3\x7e\xfc\x25\x2b\x70\x3e\x3e\x1c\xc1\x1c\xe7\xef\xad\xc0\xf3\x76\xcc\x93\x77\x94\x2a\xa7\x41\xed\xef\x97\x94\xd9\x35\xca\x13\xbf\x1e\x34\x49\x8a\x25\xca\x29\x7d\xa7\xf3\x1a\x5e\xa2\x19\x5d\x22\x35\x21\xef\x83\x78\xcb\x51\xfe\x7d\x36\xfb\xe8\x97\x4b\xaf\xc4\x71\xb3\xd0\x11\x6c\x9c\x0d\xfd\xb8\x56\x89\x34\x90\x95\x7a\xad\x0f\x34\x8e\xf4\x1c\xd5\xb3\x9c\x47\xa0\x86\x82\xaa\xd8\xbd\xa1\x5c\x5c\x24\x10\x82\x2a\x18\xdf\x55\x44\xfc\x52\x97\xd2\x9f\xe4\x8e\x3d\x9b\x2e\xa1\xfc\x31\xbe\x93\x82\x84\x80\x47\x61\xe8\x28\x40\xd6\x2e\x56\x87\x61\xd3\x4b\xb1\x91\x02\x1b\x0e\x63\x4f\x88\xef\x1a\x99\x87\x82\x58\x02\xb0\x5e\x2b\xa1\x77\x0f\x28\x05\x20\x02\x36\xfb\xbd\xbb\x1e\x00\x90\x72\xf0\x55\x50\xd7\x1b\x27\xb6\x5e\x9f\xdf\x91\x39\xa6\x23\x15\x48\x6e\x4c\x7a\xdc\xc0\xfb\xe0\x5e\x43\x3d\x80\xd7\xa9\xe9\xab\x73\x70\x03\x27\x5e\xb7\x4f\x2a\xa2\xde\x55\xf1\xbb\xdd\xee\x9e\x93\x0a\x9e\xfc\x4d\x8b\xa8\x55\x64\x70\x9a\x62\x2f\xd5\x85\x12\xd9\x1b\xc2\x95\x0e\x30\x89\xdb\xf1\x64\x7c\x3e\x00\xa0\x09\x9b\x2a\xeb\xad\xc6\x2e\x89\x9c\xb7\xc8\x59\x30\xbe\xab\xa5\xa6\x7b\x95\x35\x4e\xc3\x04\xf2\x44\x3e\x2f\x32\x05\x3d\x86\x1c\xf0\x96\x1d\x54\x4c\xc1\x70\x18\x39\x6d\xa2\xc3\x34\xa5\xe2\x71\x30\xcd\x4c\x81\x1b\x54\x86\x4f\xa8\xe2\xb1\x27\x74\x9a\x22\xf9\x1f\x74\x8f\x26\x86\x51\x12\x81\x46\xea\xe5\xa4\x84\xaf\x63\xac\xe2\xcb\x44\x8c\x52\x1e\x39\xb6\x02\x99\x82\xa6\xeb\xf5\x9c\x58\xe4\xb7\x5e\xa3\xa4\x44\x24\x8f\x23\xe7\x8c\x46\xdd\x94\x8c\x9d\xf6\xaf\xd1\x4d\xd3\xb6\x7d\x04\x22\x41\xf9\x34\x98\x9f\xee\xf8\x62\x77\x2d\xfc\x7b\xde\x6e\x5b\xf1\xeb\xe5\x41\x70\x5e\x2b\x16\x88\x80\xac\x7c\x0b\xb5\x66\x93\x68\x73\x1c\x76\xad\x32\x00\x34\xe1\x91\x73\x14\x88\x94\xe7\xe7\x27\x73\x15\xe0\xe1\x58\xa9\xcd\x6a\x1b\xd3\xa0\xb4\x1b\xec\x11\xf2\x73\xa4\xc3\x4d\x3a\xc3\x42\x0e\xc6\x28\x18\xb0\xef\x8b\x4c\x03\x99\x48\x7f\xe7\xa8\x89\xf9\x37\x46\xce\x5c\xda\x33\x69\x5c\x3c\xdb\x31\x11\x95\x05\x7d\xd7\x39\xc7\x68\xd4\x62\x27\x7e\xf7\xe1\xc6\x19\x3b\xae\xaf\x36\x44\x4e\xd0\xff\xd5\xb9\x3f\xc0\x77\xd1\x61\x35\x00\x07\xf7\x3b\xb3\x6d\x67\x96\x1d\xdd\x76\x42\xfe\x33\xff\x5d\xc7\xba\xef\xbc\x3a\x71\x63\x1c\xb0\xa7\x29\x3a\x17\xff\x8f\x51\x6f\x24\x6e\xef\x2c\xbe\xc7\xe4\xaa\x50\xea\x92\x26\x02\x5b\xcf\xb9\x0c\x6e\x70\xe3\x78\xd7\x68\xbf\xfa\x47\xf6\x02\x17\xc4\xa8\xf1\xe3\x03\xcd\x27\xad\xbb\xe9\x6c\xfd\x3d\xd1\xd5\xb6\x38\xfe\x0e\xc6\xda\x18\xec\xea\x38\x5b\xe1\x5f\x3b\x4e\x0b\x39\x5b\x6f\x44\x76\xa1\x13\x23\x77\x32\x78\x34\x7a\x8e\x84\xd9\xef\x73\xc7\xf9\x72\xc7\x0d\x56\xe9\x2d\xa0\xfd\xba\x25\x8c\x85\x1f\x70\xba\x1b\x40\x37\xb0\x7e\x07\x23\x4a\x6f\x6c\x41\x59\x28\x6b\xf4\x09\x9b\x02\xc8\x6b\xd8\x59\x6a\xcf\xf5\x32\x36\x44\x4e\x88\x0e\x3d\x65\x81\xe1\x49\xda\x3e\xd5\x0c\x40\x9c\xf2\x26\x96\x07\x93\x91\xc2\x9b\xb8\x1b\x31\x86\xed\xf8\x35\x62\x25\x14\x46\xe2\xfc\x39\x62\xbc\x76\xc0\xd1\x5d\x2f\x41\x8f\x1f\xd4\x57\xcf\x65\x12\x14\xce\x70\x57\xa8\x1d\xca\xb8\xb2\xd9\x6f\xf2\xab\x4f\x5a\x5f\xc0\xa6\x20\xfa\x1f\xc9\x28\x19\x1d\x5f\x22\x9e\x25\xa3\x28\x3c\x5f\xc7\x3b\xcd\x45\x2e\xff\xb9\x39\xde\x5e\xe3\x0c\xfa\x9f\xed\x28\x7c\xae\xbb\x5b\xa7\x97\xbe\x8f\x8e\x1b\x5d\xaf\xe8\xc4\x38\x93\xb5\x00\xc6\x53\x6e\x75\x7f\x9b\xfd\x06\x38\x8c\x6c\xf4\xba\x73\x8b\xa0\xc6\x1c\xb2\x94\xed\xd8\x05\x73\xbb\xb0\x4e\x95\x63\xa6\x4d\x10\xb6\x79\x66\x32\x65\xbe\x12\x3d\x7f\x1f\xdd\xc7\x79\xf1\x19\x65\xe8\x07\x59\x7a\x1b\x47\xb2\xd2\x40\x69\xba\x99\xd8\x7e\x19\x3d\x2f\xe5\xfd\xa1\xeb\xa4\x3d\x6e\xb9\x63\xc8\x3a\x92\xa8\xea\x9b\xc3\xeb\x65\xe4\x56\x9b\x05\xed\xd8\xa9\x6d\xb1\xb1\x5f\x9d\xff\xf8\xfe\xdd\xb7\x1b\x6e\x1c\xe5\xa9\x72\x52\x7f\x4b\x57\x55\x21\xf8\x4d\x25\x73\xb8\xcf\x80\x38\xd9\xd0\xc7\xc6\xb1\xbd\xe0\x7f\x3b\x8f\xe6\xb5\xda\x05\x82\xf7\x5b\x8c\xdb\x68\x97\xde\xb5\xef\xdf\x3d\xbb\x57\xad\x36\xf6\xff\x90\x9d\xd8\x15\xf2\x4e\xbd\x1f\x33\x92\x5d\xdd\x23\x88\x63\xb7\xe9\xe6\x91\x8c\x5c\x63\xf7\x01\x4c\x8b\x8d\xfd\x36\xb1\x89\x76\xec\xd6\x34\xd8\xa9\xd7\x87\xc0\x3e\xd0\x76\xe3\x58\x26\x5a\xdf\xce\x03\x98\x06\x1b\x7b\xed\x86\x01\xdb\xb9\xff\x6e\xd3\x1d\xce\x90\xc2\xbd\x3b\x8d\x40\x1d\x2d\xc3\x96\x9e\x9b\x08\x5a\xf7\xe8\xbb\x69\x54\x4b\x52\xe0\xf9\xfb\x34\xeb\x1f\xa4\x87\x84\xe8\x21\x0c\x74\x2c\x8f\x7e\xba\xc0\x54\xf8\xc2\x1c\x45\x6f\x03\xf3\xf2\xde\x3f\x50\xec\xe6\x15\x96\x27\x48\xbf\x90\x5b\x56\xaa\xea\x3d\xda\x7a\x9f\x5e\x52\xc6\xe5\x6b\xbc\xf3\x92\x9b\x26\xbb\xbc\x80\xf7\xeb\x7b\xb7\xcc\x76\x64\x5e\xe0\xd9\x3d\x67\xed\xb5\xda\xd8\xff\x4b\xca\x2e\x71\x9e\x23\x72\xbf\x01\xfc\x66\x5b\x1e\x68\xe9\x5d\x7d\xbf\xfe\xdd\x46\x1b\x7b\x7f\x4d\xf9\x4b\x5a\x91\x7b\x76\xef\xb5\xda\x8c\xcc\xa5\xdd\xc1\xfd\x7a\x77\xda\x6c\xec\x5b\x27\x29\xbe\x5f\xe7\x6e\xa3\x8d\xbd\xff\x44\xb2\x8a\x2f\x28\xc3\xbf\xa0\x7b\x42\xa7\xd3\x72\xe3\x38\xea\xaa\xab\x80\x25\xf4\x4f\x59\xb9\xd8\x79\x9c\x4e\xcb\x1d\xc6\x11\xd5\x3e\xd0\xfb\x3c\xaa\x66\x1c\xa7\xe5\x0e\x08\xcc\x4a\x77\xb6\xa2\xb0\xaf\x25\x07\xfa\x6f\xc0\xda\x0c\x95\x7c\xfb\x82\x65\xad\xdf\xee\x62\xa5\x25\x45\xdf\x1a\x55\xd8\xfb\x5f\xeb\xe2\xc4\xdc\xfb\x57\xd6\x1b\x7d\x0a\x13\xe9\xaa\x2d\x30\x40\x90\xdc\xd8\xf4\x34\x6f\x39\xf3\x1b\x4e\x88\xff\x29\x47\x97\xd5\x55\x10\xd8\x2d\xa1\x86\x13\x11\xbe\xe7\x43\xaf\x3c\xa4\xa9\xa1\x13\x11\x6c\xf8\x1a\x98\xbd\x53\x23\xb0\x00\xe7\xab\x2b\x1c\xde\x22\xd6\x09\xe7\x4c\x30\xbe\xe5\xbf\xa0\x63\xd9\xe6\x58\xcb\x6d\xdb\xc2\x66\x5e\xad\x8e\x67\x94\xf0\x0c\x93\x2e\x55\xe8\x86\x02\x82\x15\x2c\xe0\x0c\xce\x61\x0e\x17\x70\x05\x97\xf0\x1a\xde\xb6\x4e\x2d\x9e\xc7\x9f\x2d\x09\xd3\x71\x22\xb5\xf0\xc5\x86\x1a\x3d\xfd\x5b\x12\x4f\x46\xc7\xff\x73\xba\x3e\x9d\x8c\x8e\x9f\x4c\xc1\xdf\x92\x13\xd7\x85\x59\xb5\xd2\x4e\xcc\x8d\xb4\x65\xc0\xd0\x3f\x2b\xcc\x50\x39\xc8\xf8\xa0\x40\x59\xc9\x55\xcd\xc1\x69\x72\xfa\x6d\x32\x82\x83\xcb\x8a\x0f\x6e\x69\xa5\x82\xa7\x44\x47\xde\xe0\x47\x51\x32\x78\x2b\x1a\xa1\x41\xb5\xba\x62\x59\x8e\x44\x55\x36\xd0\x72\xb4\x01\x9d\xab\xce\xe0\x80\x2f\x10\xb1\x75\x9a\xd1\x93\x08\x1c\x2c\x93\xe7\xef\xb5\xb4\x67\x65\x23\x6c\xc9\x42\x97\x81\x4f\x97\xde\x9f\x5e\x05\x05\xd2\xa6\x86\xfa\xdb\xab\x62\x45\x28\x4d\x2d\x5b\xa4\x2a\x4a\x56\x29\x2d\xfd\x19\x58\x0e\x36\x5d\x36\xbf\xd5\x27\x81\x06\xd2\x52\xfe\xa7\x0a\x94\x80\x29\x5d\xea\x1f\xaa\xd0\x13\x71\xa4\x4b\xff\x6f\x55\xc5\x70\x9b\xe9\xd2\xfe\x54\x1f\x34\x39\x9b\x32\x7f\x4e\x2e\x95\x9b\x12\xff\x9b\x4b\xb1\xc9\x9c\x0c\xcd\x9f\xaa\x82\x4b\xb8\xa4\xc4\xfb\x53\xf7\x6e\x49\xed\x94\x38\x7f\xa8\x8f\x1d\x9a\x24\x25\xdd\x32\x55\xd5\xa7\x4d\x53\xd2\x2a\x50\x95\x3c\x0a\x30\x25\xfe\xdf\xaa\x8a\x47\x44\xa7\xc4\xff\x5b\x03\xb0\xa1\xf4\x52\xe2\xfe\xa5\x3e\x77\x08\x8f\x94\x74\xcb\xdc\xaa\x0e\x2d\x64\xab\x3a\x65\x76\x50\x8d\x89\xd2\xca\xdf\x83\xe7\x02\xc9\x9a\xbd\xcb\x5a\xe7\xa9\x91\x28\x88\x13\xd5\xfc\xe5\x6d\x6d\x48\xfc\x96\x2e\x37\x7d\xd5\x47\xd8\x39\xe4\xad\xd3\xdd\x95\xf5\xf8\xe3\xeb\x42\x5d\xf9\xc5\xfb\x0f\x66\x01\xd4\x5f\xc0\xf7\x15\x2e\xf2\x9f\xde\xfd\x20\xf3\xa1\xa7\xcc\xff\xfb\xc0\xb6\x76\xa0\x93\xfb\x1d\xf8\x09\x47\xd2\x59\xf7\xeb\xd3\xb7\xaf\xcc\xe0\x38\xf8\xd5\x69\x3e\xf7\x2b\xd8\x58\x7d\xe9\xa2\xb5\x27\x19\x47\xcd\xc7\xc2\xff\x5b\x6f\xa8\x8c\xed\xe2\x56\x6a\x95\xe8\x23\x2b\xc3\x6b\xb9\xd5\x5a\x25\x1a\x4e\x94\x16\x28\x23\x6e\xbd\x76\x91\xc6\x1a\xcb\x4b\x94\xe7\x66\x33\x4b\x05\xd7\x3c\x58\xac\x1a\x5c\xa2\x82\x92\xab\xf2\x03\x4d\xcb\xe6\xb7\xfa\xb4\xc8\x4a\xb1\xed\x69\x69\x7e\x99\xbd\x6f\xe4\x29\x72\xd7\x9b\x3f\x55\x05\x95\xd9\xe2\x99\x79\xe3\xd2\x5b\x1f\x78\x17\xcd\x4b\x29\xd1\xf4\x7b\xf5\x4e\xa6\xd7\xb6\x5a\xf8\x4d\x13\x8d\x77\x12\x63\x35\x21\x3e\x4e\x5b\x21\x3e\x4c\x58\xb1\x55\x48\xa4\x05\x74\x44\x14\x31\x8e\xa3\x1e\xba\xec\xa5\xcc\xfa\xde\xfb\x47\xd4\xbb\x81\xbb\xd8\x24\x20\x3a\x47\x63\x69\x86\xaa\x80\x0e\xdc\xb4\x44\x62\x5a\x63\x9d\xd6\xb7\x47\x21\x67\xe8\xb6\xdf\x26\x0d\xbd\x95\x41\xf0\x12\xb0\xfc\x5a\x56\x69\xaf\xdb\xce\xeb\xb4\x2d\x36\x32\xd5\xfa\xb6\xee\xdc\xab\xae\xdf\x0f\x3d\x97\x7e\xef\x55\x7f\x36\x75\x7e\xb3\xa7\xc4\xb5\x04\x41\x1a\x63\x1e\x2b\xa5\x6b\x79\xbc\x14\x38\x73\x97\xf5\xff\xba\x79\xe9\xd0\x4b\xb0\x1b\x44\xb6\x4b\x4f\x42\xec\xd8\xaf\x15\x0e\xf7\x3a\x0c\x8a\xf5\xdc\x71\xd9\xbf\x8f\x25\x6f\x16\x1b\xfd\x56\x4e\xfb\x0e\x4b\xf6\xf9\xf1\x2d\xe6\x1d\x5f\xcd\x2c\xcc\x7b\xd2\x43\xd6\xf8\xca\x18\x6c\xbd\x36\xbf\x30\x25\x07\xdc\x44\x7a\x94\x09\xc5\xa5\x0d\x37\x8b\x4c\x02\x7f\xd8\x7e\xf9\x61\x53\x9d\xd1\x4a\x8a\x2f\x7a\x6a\x4a\x87\x14\xe8\xce\x62\x74\x80\xac\x9d\xc5\x1b\x15\x65\xe4\x25\x65\x1f\x6e\x57\xc8\xcd\x7b\x18\xc1\xbb\x52\x1a\x56\x71\x4a\xc6\x87\xa7\x72\x81\x7d\xad\xac\x9c\xaa\xdb\xa4\x9d\x09\xa5\x3d\x3d\x01\x84\x26\x62\xb5\xff\xb1\x49\xc0\x25\xe3\xd8\xf6\x51\x3b\xba\xf2\xa3\x6e\xf6\xe3\x1d\x6a\x47\x96\xb5\xc3\x05\xfe\x6a\x86\xdc\x8f\xb7\xe0\xff\x4e\xeb\xb1\x6f\x93\x27\xa3\xe4\x3f\x02\x76\x63\xa8\x40\xd2\x12\x79\x81\x8a\x15\x62\x27\xea\xbf\xf2\xc4\x94\x7f\xad\xc9\x1e\xb4\xc2\xa0\x9a\x78\x84\xed\x98\xd8\x36\x90\xdc\x01\x9e\xc7\x2d\xf7\xb8\x01\x36\x91\xf7\x9c\x8a\xa1\x90\x28\x93\x29\x24\x32\x35\x5a\x7a\x78\x0a\xa9\x81\x8e\x71\xf8\x97\xe6\x5e\xb0\x0c\x46\x37\x3e\x3b\x8c\x49\x1a\x67\x69\xa9\x03\x1a\xab\x68\x00\x60\x38\x8c\x99\x72\xbd\xce\x54\x3c\x00\x00\x0f\xf9\x7a\xcd\x74\x60\x0a\x19\xae\xee\x4c\x0c\x09\xce\x1a\xb7\x75\xac\x42\x1d\x57\xd6\x71\x5d\x4c\xe0\x90\x0c\x87\xa5\x8e\x6a\xdc\xfc\xf2\xe3\x1b\xe3\x26\xbe\xb1\x89\x7c\xa2\xc3\xe2\xee\x1a\x53\x5a\xc6\x61\xa8\x66\xbc\x62\x3d\x71\xa5\x23\x50\xbb\xfe\x8b\xe0\xce\xf1\xc9\x50\xc2\xcf\x3f\xc9\x83\x61\x2d\x80\x05\x5f\x79\xaf\xc4\x69\xca\x29\x9b\x67\x57\xaf\x55\xde\x1f\x9d\xb8\x65\xb9\xa2\x44\xfb\x60\xa7\xac\x86\xda\xc4\xbf\x63\xf2\xca\x52\x1e\x23\x78\x0a\x26\x23\x19\x06\x88\x19\xaf\x64\xdd\x9f\x97\xf9\xca\xeb\xd4\x0d\x9a\x6e\x43\x7e\x36\xc9\xda\xf9\x02\x0d\xcc\x1c\x07\xab\xac\x2c\x51\x2e\xe0\x25\x8a\x7f\xd6\x37\xe0\xe7\x81\xba\x13\x2a\xec\xe7\x25\x1a\x64\x03\xdd\x9f\x3c\x41\xe4\x28\x8d\x06\xf1\x2d\xad\x4c\xf3\x9f\xa3\x23\x76\x14\xfd\x0c\x22\xbd\xf3\x18\xdc\x39\xb1\xbf\xd5\x1e\x91\x26\x5e\x81\x0f\x95\xe8\x38\xbf\x25\xd9\x12\xcf\xec\xfd\x33\x2b\xf5\x56\x75\x1e\x80\x5e\xa7\xe9\x71\x56\xf0\x68\xbc\x4b\xcd\x28\x88\xb3\xae\x10\x3f\x56\x82\x89\x90\x7e\x67\x46\x49\x59\x15\xc7\x15\x3e\xd1\x75\x10\xb9\xc6\x8c\x92\xaf\xe1\x94\xf0\x28\x28\x7a\xc1\xd0\xfc\x98\x53\x8b\x01\xf5\xdf\xbb\x22\x40\x7b\x7b\xb8\x63\x83\xde\xf2\x54\xe8\x43\x6e\x4c\xd0\x00\x32\x01\x40\xab\x41\x28\x42\xb7\xf1\xda\xdd\x05\x19\x7a\x61\xf8\xdb\x23\xdc\x2f\xbf\x00\x6b\xf2\x0b\x90\x87\xe7\x17\x20\xdd\xfc\x02\x64\x5b\x7e\x01\xd2\xe4\x17\x20\x3b\xe6\x17\x20\xf7\xcf\x2f\x40\x80\xbf\xd2\x16\xb4\x4c\x34\xff\xed\xb8\xb6\x5c\x31\x94\xe5\x8f\x1b\xbe\x3f\x76\xdc\xf0\xd8\xa3\xc5\xbd\x27\x32\x3f\x96\x46\xa5\x2d\x8f\x2a\xd4\x15\xed\x1d\x0b\x7a\x5e\x1c\x2e\x27\x51\xdc\x15\x22\x32\xdb\xc1\x4f\xef\x7e\xd0\xcf\x06\x81\xbc\xcb\x59\x40\x96\xc6\x28\x45\xfa\x54\x01\x90\x94\x0b\x3c\xe7\x31\x80\x24\x45\x13\xb3\x9e\xe3\xd3\xe9\x01\x17\x27\x8c\x24\xb8\xfc\x7f\x2b\xc4\x6e\xdf\x66\x2c\x5b\x96\xe7\x28\x59\xd1\x55\x0c\xd4\x4b\x5d\x8e\x6d\xd2\x87\x09\x83\x08\xf2\x69\x1d\x33\x00\x1e\xe4\xd9\x2e\x50\xc4\x07\x2a\x73\xbc\x05\x1c\x67\x70\xf8\xe5\xec\x3e\x71\x5e\xae\xe1\x95\x9a\xb3\xca\x1a\x0c\xcd\xdf\x60\x4c\x9a\xb8\x0b\xae\xf3\x05\xde\x80\xc8\x1e\x8e\xc0\xbe\x7c\x70\xe8\xf6\xf1\xfc\x75\x26\x4b\xf8\x32\x1e\x53\xc4\x8d\xee\xef\x38\x1e\x3b\xf1\x77\x2d\x5d\x64\x42\x99\x3d\x71\x42\x2c\xda\x8f\x93\x27\xd3\x73\xf7\x8f\x31\x49\x78\xc6\xae\x10\x3f\xe0\xe6\x34\x28\x3a\xca\xc9\xea\xfb\x4a\xef\x97\x21\xb1\xd0\x35\x22\x3c\x25\x86\xfc\x12\xad\x53\x7c\xe0\xc4\x2b\x55\x65\x8e\x7f\x8f\x3c\xd6\x2a\xe9\x7b\xc5\x8a\x94\x0e\x87\x54\x67\x4c\x90\x8b\x83\x18\x52\x7b\x81\x53\x04\x63\x6c\xa2\x51\x2f\xb3\xdb\x4b\xf4\xa7\x8c\xe4\x45\x37\xfc\xac\xa6\x10\xcb\x05\xad\x8a\x5c\xd5\x89\x81\x8e\x4b\xb8\xd0\x7f\x36\xd1\x55\x9c\x5a\xfd\xd1\x44\x54\xe4\x9a\xf2\x27\xb2\xa4\x39\x9e\x63\x94\xff\x80\xe6\xfc\x59\x81\x67\x1f\x6d\xcf\xb8\x7c\x4d\xf9\xab\x2b\x42\x19\xca\x9d\xe1\xca\xd7\xf4\x83\x5c\xf5\xf7\x45\x46\x3e\xfa\x1f\x9e\xca\x51\xd4\x9d\xf5\xbf\x3c\xa7\x37\x32\xac\x81\xdf\xfb\x0f\x98\x7c\x7c\x66\xc8\x2b\xfb\x89\xa1\x19\xbd\x22\xf8\x17\xf4\x13\x2b\x62\x37\x04\xcb\x26\xe0\x5c\x5c\x21\xfe\x8e\x56\x5c\x0c\xec\xbb\xb4\x1b\xbf\xd6\x9f\x58\xa1\xc3\x13\xbc\xa3\x32\x7d\xac\xb3\xc7\xc9\x8a\xc9\xff\x4d\xb0\xd9\x66\xd4\x20\x8c\x36\x06\xc3\x52\x3d\xea\x5d\x3e\x6c\x02\x9c\xa1\xe4\x66\x81\x67\x8b\xe1\xf0\xb4\xf9\x63\xbd\x46\xc9\x8c\xb3\x42\xe6\x13\x45\xc9\x12\xf1\xec\xcf\xe8\xd6\x0b\x3b\xe3\x81\x7b\xf3\xc0\xdd\xd3\xa8\x4f\xbc\x9e\x0b\x5a\xaf\xa3\x8b\x4b\xd9\x8f\x9c\x82\x4e\xe5\x61\x57\xda\xec\x77\xef\xc1\x39\x0c\x0f\x34\x91\x7e\x6e\x06\x7b\x1e\x63\xd9\x4b\x34\xf5\xd7\xe1\x9e\x8e\x07\x0e\xa0\x90\x74\xa6\x10\x63\xab\x7b\x73\xc4\xee\xdb\x75\x92\xeb\x86\x3e\x24\xbc\xb3\xd9\x0b\xf7\xc3\x53\xc8\x3d\xe0\xe3\xdc\x4b\xb9\xd8\x87\x61\xec\x03\x7f\x7c\x8d\xd1\xcd\xb1\x92\x75\xb1\xdb\xf1\x32\xc3\x24\x02\x32\xb3\x73\xca\x86\x43\xe6\x3e\x21\xea\x45\xf4\xe6\x55\x9b\x9d\x75\x02\x2c\x36\x97\x67\xf3\x69\xa9\x58\x01\x79\xaa\x92\x9c\x20\x6f\xbe\xee\x5d\x32\xa9\xe2\x55\x19\xe5\xf2\x4e\x42\x9c\xca\xc4\x1c\x36\x89\x32\xb1\x01\xdd\x03\x17\x0d\x66\x29\x4b\x2e\xa4\x40\xd2\xfe\xff\x23\x9e\x31\x5a\xe0\x4b\xc1\xf7\x9b\x4f\xea\xbf\x03\x9e\xe2\xe1\x30\x6b\xb0\x00\x6b\x7e\xc6\x34\x10\xab\xae\x33\xe2\x2e\xcb\xee\xae\xa9\x71\x75\x2e\xab\xcb\x92\xb3\x98\x5b\xd2\xa8\xb9\x8f\x0d\x64\xb6\xa0\xd6\x4d\x5b\x6e\x68\x3a\xb5\xde\xa8\xdd\xbb\x9c\xcf\xe6\x35\x78\xc8\x4e\xba\xec\x33\xd1\xec\xdd\x0f\x4d\x4a\xcf\x13\x75\xc5\x67\x8b\x8c\x3d\xe5\x71\x43\xe6\x09\x32\x16\x1d\xa5\xd1\x49\x04\x20\x52\xf1\xa1\x58\x4c\x9c\xf8\x50\x18\x40\x2a\xcb\x20\x15\x35\x62\x97\x60\x22\x5d\x82\xc9\x1a\x29\xee\x60\xc7\x78\x52\xe0\xcb\x93\xf2\xb6\xe4\x68\xd9\xf3\x11\x7d\xe2\x27\x9a\x8b\xfa\x5a\x72\xf8\x77\x55\x81\x4a\x41\x0e\x63\x72\x55\x15\x19\xc3\xbf\x08\xe2\x78\x55\x54\x4c\x0a\x4b\x8d\xc9\x1c\x4f\x5e\x99\x99\xf9\x2d\xb9\xf7\x67\x0f\x5d\xa4\x6c\xd8\xa2\x57\x8d\x05\xe7\x5d\x98\xad\x56\x77\x3a\x47\x2b\x86\x66\x19\x47\xda\xce\xae\x19\x7b\x80\xcb\x81\xfd\x9a\x5b\xdb\x39\xf4\x49\x1c\x2f\xcc\x8b\xdb\xf1\x00\x2f\x05\xb8\x07\x4d\x13\xc1\xd9\x0d\xbe\x69\x81\xf7\x9b\xb3\x08\x1e\x9e\xc2\x3b\x9c\x8f\xdb\x90\x4f\xae\x0a\x7a\x99\x15\x65\x04\x2b\xc2\x71\x31\x8e\xbe\x4d\x46\xd2\x4d\xd6\x05\x82\x38\xa4\xed\x64\x2a\x7d\x54\xa1\x5a\x83\x62\x6a\x61\xe4\x00\xfa\xbe\x60\xd0\x7c\xb1\xd3\x43\x0c\x76\x87\xc8\xdd\xc0\x69\x38\xa8\xbf\x28\x5c\x9c\x9e\x1f\x0e\x19\x7b\xe8\x1e\x08\x17\xdb\xfe\x7e\x50\xb1\xcd\xbe\x30\x4c\x6c\xbf\x61\x88\x34\x68\xc4\x39\x56\xd0\xbd\x7a\x4e\x17\xd0\xbf\xa0\x1e\xc0\xdb\x77\xd9\xbf\x91\x9b\x50\x54\x0b\xc5\x08\x5c\xd5\x8b\xa1\x82\x78\xc8\xc7\x42\x67\xf1\xa1\x78\x06\xb5\x9d\xec\xeb\xbf\x24\x2f\xfe\xbf\x0f\x2f\x5e\x3f\xbf\x78\xfb\xee\xcd\x87\x37\x1f\xfe\xeb\xed\x8b\xf7\x26\x83\x45\xf0\xa3\xde\x46\x81\x91\xc3\xa7\xc5\x6c\xb3\xc5\xcd\x0f\x39\x31\xed\x4e\x7e\x5d\xa7\xa6\xb3\x80\x78\xe4\x1e\x09\x60\xe2\x18\xde\xe3\x8e\x75\xa1\xf6\x20\x0c\xd4\x81\xdb\xaf\x0e\x0b\x85\x61\xe7\x8c\xb6\x11\x7a\x01\x29\xae\x7f\x0d\x8c\x2c\xd7\x39\x73\x9b\x7d\x14\x42\x9d\x54\x1c\x17\xe5\xc9\x32\xfb\x88\xb4\x92\xac\x6b\x0e\xdf\x27\x4a\xe9\x15\xfc\x5a\xf9\x07\x4f\x47\x90\xa5\xba\xdc\x08\xe6\xce\xf8\x77\xe6\xf7\x19\x3f\x3a\x02\x6c\xc2\xa7\x29\x12\x14\xb5\xd5\xff\x04\x05\xbc\x9f\x21\xbe\x90\x59\x94\x8c\x4e\xda\x8d\x92\x63\x24\x7c\x38\x25\xe8\x26\x7e\xa9\xcb\x9d\x33\x75\x89\x49\xae\x65\x77\xca\xf4\x76\x42\xaa\xa2\x98\x9a\xc8\x49\x02\x04\x4e\xf4\xb1\x27\x69\x9a\x62\xbd\xb6\xe1\x10\x2b\x25\xda\xdd\x8d\x8e\xb9\x47\x2b\xc2\xc7\x6c\x12\xe9\xbf\x8f\x67\xa2\x20\x9a\xfa\xa8\x59\x0f\xa6\x89\x1c\x12\x63\x79\x0e\xba\x41\x98\xc2\x47\xc1\xbb\x48\x8f\x71\x18\xbe\xc6\xa6\x38\xb7\x85\xfb\xb7\x05\x4d\x46\x53\xb0\xc3\xcd\x30\x24\xec\x6e\xa4\xee\xc9\x36\xb0\xf8\xef\xcd\x2e\x5d\x61\x4a\x82\xf9\xd6\xbf\x38\x91\xdc\xbc\xcd\x6d\x82\xd9\xbe\xe0\x0d\xc1\x6c\x02\x1d\xd9\x99\x4b\xa9\xb8\x2d\x8f\xad\xe7\x81\x18\xa8\x69\xdf\x64\x69\xf7\xc7\x60\xad\x37\xbf\x99\x0b\xf3\xe8\x04\x6f\xca\x76\x8c\xdd\xf6\xd0\x03\xe8\xd7\x37\x2d\xb8\x53\xf3\x2e\xc7\x93\xc9\xc9\x1f\x4e\x60\x24\x06\x9a\x9c\x94\x7f\x38\xc1\xe6\xf7\xdf\xe3\xec\xd3\x9a\xa3\x92\x03\xac\x8a\xff\x70\x8a\xd4\x97\x98\xce\x38\x5d\xad\xaf\x31\x03\x95\xf9\x84\xdb\x5f\xb0\xff\x21\x2b\x70\x56\xae\x4b\x9e\xf1\xaa\x5c\x5f\x52\x52\x95\xa0\xd5\xe9\x65\x05\x4c\x67\x65\x53\x36\x9f\x67\xc5\x9a\xd3\x65\xc6\x01\xd5\x5f\xa9\xf9\x3a\xe1\x78\x0a\xaa\xa5\x2e\xce\x9c\xc2\xcc\x2b\x2b\xf5\x02\x6c\xb7\xe7\xe3\x78\xf2\xf7\xf9\x14\xcc\xd1\x3a\x9e\x14\x6c\x0a\xe6\x66\x32\x7f\x78\x72\x6d\x2a\x2d\xf0\x35\x32\xc5\x66\xc0\xbf\x67\x08\xd3\xea\x76\xba\xfe\x67\x05\x6e\xcd\x02\x4d\x83\x4f\xeb\xd9\x62\x5d\x96\xeb\x72\xd1\x5e\xda\x32\xe3\x6c\x7d\x8d\x18\x5f\x63\x92\x83\xf8\x7c\x8c\x3f\xad\xd1\x27\x53\x0b\xcf\x90\x81\xf8\x72\x5d\x00\x5a\x95\xa8\xf9\xe2\x7c\xc0\xb3\x6e\x39\xb5\xbd\x20\x62\x8b\x10\x31\x85\x6a\xf8\x7f\x56\xf8\x17\x53\xf2\x8b\x18\x6b\x0a\xcd\x79\x16\xdb\xaf\x80\xa3\xaa\x96\xa5\xdf\x94\x00\x74\x63\x77\xff\xa6\x0c\x80\xb8\x5a\xaa\xc2\x38\x03\x24\x2b\x6e\xd7\xf1\x25\xc8\xd6\x71\x0e\x70\x76\x45\xe8\x3a\x5e\x01\x19\x11\x73\x81\xc4\x4f\x46\x65\x59\x09\x6e\x09\x5d\xad\x63\x0e\x16\x08\xc4\x25\x2e\xd7\x25\xb2\xe3\x96\x58\x8f\xf2\xf7\x4c\xf4\xd7\xff\x5d\xee\xe0\x35\x32\xb3\x9b\x23\x67\xdb\x4a\x6f\x11\xbc\x5b\x24\x77\xdd\x69\x1c\xd8\x5f\x6c\xbf\xde\x6a\xd8\x00\xc4\x9a\x42\xf9\x5b\x6f\x2f\xa0\xd7\xcd\x07\xf1\xbb\x73\x20\x90\x37\x7c\x7b\x3f\xc5\x96\x9b\x03\x5f\x82\x18\x95\xe0\xdc\x9b\x2d\x6d\xb5\x8f\xcb\x05\x6d\xaf\x68\xc6\x70\xa9\xae\x6b\x8c\xcb\x75\x03\x2f\x6c\x6f\x33\xf8\x34\xc1\x68\x6a\x5a\x7d\xc2\x9d\xcb\x1c\x57\xe5\x1a\x9b\x76\x55\xd9\x7b\x71\x3b\x13\x94\xe7\x10\x11\x77\x3a\xf6\xb4\x8b\xd3\x6d\x40\xf6\xa9\xb9\x0e\x6e\x39\xfe\xe4\x9c\xd3\x5f\x5a\x4b\xcd\x33\x9e\x5d\x66\xa5\xbb\xdc\x29\xc4\x8c\x21\x79\x7e\xdf\x66\x98\x09\x1c\x16\x09\xa2\x40\x7a\x6c\xae\x10\x5d\x15\x12\x9a\xd1\x32\x13\x05\x4b\x75\x33\xa2\xd9\x02\x17\x79\x04\xd5\xff\x4c\x17\x96\xe8\x93\xb4\x48\xfc\xa4\xf6\x32\x5a\xd2\x6b\x24\xda\x50\x8d\x06\xa2\x19\xbd\x89\x60\xf4\x11\x13\xd5\xe5\x2f\x74\x79\x89\x45\x0d\xf5\x43\xde\xa5\x8a\x48\xfa\x46\x92\xb3\x93\x08\xfd\xb3\xc2\x2b\x65\x72\x15\x61\x32\xa7\x6c\x29\x45\x6f\x11\x8c\x98\xf2\xcf\x5c\x52\x82\x6e\xc5\xa0\x2b\x34\x13\x3d\x48\x83\x48\xf5\x63\x8e\xcb\x85\xf8\x7b\x81\xd0\x2a\x82\xd1\x3f\x50\x26\xde\x82\x68\x45\x0b\x79\xe3\x03\xf6\x85\xdb\x5e\xf9\xaf\x6a\xf5\x75\xf2\xf7\xbf\x95\xff\xfe\x87\x13\xc8\xd2\x93\x78\xf2\xb7\x9b\x93\xe3\xe9\xd1\xe4\xe2\xe4\x6f\xe5\xf1\x14\xc4\x93\xec\xf8\x97\xbf\xe5\xd3\xa3\x3f\x80\x13\x48\xf4\x77\xf1\xe5\x08\xc4\x93\xa7\xc7\xff\xff\x54\x7f\xff\x77\xf1\x1d\xa7\x27\x7e\xd9\x49\x43\x7a\xd3\x8e\x9e\x51\xc6\xc4\x33\x7a\xc6\xef\x88\xd4\x35\xa2\xc4\xd9\x84\x09\x9f\xb0\x69\xc2\xe9\x0f\xf4\x06\xb1\x67\x59\x89\x62\x30\x4d\x0f\x47\x8d\xee\x32\x6b\xf7\x69\x68\xd0\x74\x24\x63\xeb\xe9\xce\xc9\x77\xf8\x8c\x08\xb2\x3d\xe5\x13\x32\x85\x28\xb1\xa7\x6e\xc2\x26\xa3\xce\x08\x6c\x72\xda\xae\x74\xba\xb5\xd2\x2b\x72\x8d\x58\x89\x7a\xea\x8e\x7a\xea\x86\x06\x1f\x4d\xbd\x10\xbe\xe0\x2e\x46\x29\x5a\xaf\xef\x6a\xe0\xc2\x26\xf5\x20\xb5\x5e\x57\x31\x70\x87\x90\xd7\x29\x6d\x17\xc8\x6a\x6e\x40\x4e\x26\x09\x1c\x4b\x42\x18\x82\xa8\x5c\xaf\x27\xce\xd3\xd2\xd0\x50\xb2\xdc\xf6\x39\x16\x83\xb6\x57\x25\x0b\xdd\x9b\x54\xc5\xa0\x3e\xa0\xb1\x20\xc5\x9c\x62\x00\x33\x59\xe4\x4f\xd0\xe8\xcf\x88\xa8\xf2\x2c\x9b\x2d\x50\x0c\x6a\x3c\x8f\x0f\xbd\xd0\xce\xc3\xe1\x61\x20\x73\x49\x2b\xa6\x1c\x68\xdb\x78\x45\x1f\x16\xb8\x1c\x5c\x32\x7a\x53\x22\x36\xc8\x29\x2a\x07\x84\xf2\x41\x59\xad\x24\x4f\x1d\xca\x85\x32\x58\x29\x16\x7c\x45\x8b\xdb\x39\x2e\x06\x82\x0d\x1a\xa0\xf2\x7f\x1c\x97\x8b\x6c\x39\x1e\x2c\x38\x5f\x8d\x4f\x4e\xae\x30\x4f\x30\x3d\xb9\xfd\xfe\xa7\x27\xec\xca\x0d\xdf\x5c\x59\x09\x7b\xa0\xf3\x46\x37\x70\x91\xe3\x99\x4e\x68\xaa\x73\x80\xe8\x32\x88\xea\xd2\x49\x5b\x7d\xe7\x80\xa5\xa3\xab\x5c\x55\xec\xca\x40\x4c\xe7\x5b\x71\xe8\xde\x2e\xa7\xa2\x54\x0a\x17\x33\xd1\xe2\xa7\x12\xe5\xe9\xe1\x08\x6a\x9b\x41\xd9\xcb\x04\x4d\xd7\xeb\xb8\x55\xa2\x35\x05\xae\xd4\x02\x01\x50\xab\x86\x0d\x2d\x1d\x32\xf9\x7c\xa0\x82\xfd\xae\x3e\xe8\x4e\x54\x2b\xf5\x27\x92\x43\x49\x5c\x5e\xd5\xcf\xf8\x73\xb1\x52\x13\x27\xcd\x52\x6c\x89\x5e\x4a\x23\xb8\x52\xac\x22\xa8\x6b\xd8\x80\xb2\xab\x11\x76\xa6\x71\xea\xc1\x2b\xad\x0c\xdc\xf5\x18\xa2\xa0\x86\x39\x2e\xfb\xf7\xcc\x34\x6d\xb2\x6a\x9a\xb6\x4e\x9e\xcd\x5d\x76\xd1\xdf\x90\xfe\xfd\x68\x35\x6b\x73\xf0\x2d\x0b\x51\x01\x0a\x59\xa3\x65\x1a\xd3\x82\x84\xd6\xb0\x77\x0f\xa0\x44\x2e\x06\xa3\x28\xc1\x82\xd8\xb2\x16\xc6\x03\x75\x83\x68\x3e\x67\x1c\xd3\xc9\xa6\x81\x5c\xb4\xe4\x02\x73\x87\x91\xb4\xce\x5f\x8e\x05\x27\xa8\xdb\x77\x83\x15\xef\xbd\x8a\xcc\xeb\x5b\x4c\x7d\x2a\x7a\xb4\xdb\xd3\xa7\x10\xdc\xba\x81\xf0\x22\xd0\xc7\x17\xb9\x94\xed\x3c\xb8\xdc\x24\x5b\x95\x04\x8b\x18\xa3\x73\x02\xdc\x22\x0b\x2c\x30\x8e\x4f\x0f\xd3\x74\x95\xb1\x12\xbd\x2c\xa8\x8c\xec\x2d\x8d\xe2\xbc\xee\xf8\xce\xdd\x81\x16\x42\x38\xe7\x63\x74\x14\x0d\xa2\x23\xee\x9c\xb3\x9e\x00\xc5\xe1\xbb\x74\xb1\x4b\xab\xe0\xba\x4d\xc3\xe0\x4c\xf5\x6b\x29\x0e\x8e\x6a\xeb\x6e\x90\xcd\x09\x2d\xa3\x79\x18\xaa\x66\x66\x7e\xcc\xcd\x8f\xdc\xfc\x58\x98\x1f\x2b\x27\x0d\x5e\x99\x1e\xa2\xf5\x9a\x2b\x73\x4a\x04\x60\x95\x62\xfb\xbb\xf4\xec\xf8\xe7\x69\xeb\x40\xc3\x38\x4f\x59\x82\x3e\xa1\x99\xb4\xba\x24\xe6\xa7\xd8\x9b\x45\x9a\x4f\x9e\xb4\xe8\x16\xef\x26\xba\x14\xdc\x7c\xba\x5e\xf7\x7c\x5a\x4c\x9b\x39\x08\x0a\x6e\x35\xc0\x64\x90\x01\x31\x1d\x1d\x4e\x64\x75\x14\xfd\x21\xb2\x66\xa0\xb3\x34\x9b\xac\xa6\xb0\x1a\x0e\xb3\xc9\x62\x3a\x1c\xc6\xb3\xd4\xd3\x5c\xcd\xb2\x15\xe6\x0a\x97\xcf\x00\x5c\xf5\x7e\x5c\x01\xe5\x60\xb4\x2a\xb2\x19\x8a\x05\x7d\xf0\x0e\x5d\xbd\xf8\xb4\x8a\x57\x30\xc2\x11\x80\xb3\xc6\x0e\x73\x99\x52\x43\x43\x2e\xff\x38\x1a\x0e\x0f\xe3\x55\x1a\x17\x29\x9d\x2c\x8f\x4f\xa7\x60\x32\x9a\x02\x03\xd0\xb3\xe5\xf1\x31\x38\xd3\x33\x95\x95\x0a\x41\x2b\x89\x3a\x70\x96\x16\x8a\x58\x34\x63\xae\xe0\x4c\x20\xd7\x46\x86\xb3\x55\xc1\xd4\x12\xe7\xdd\x5b\x48\xf8\xc5\x15\xdf\x5b\x34\xdd\x28\xfc\xfa\x48\x62\x48\xe3\x8e\x18\xa5\x01\xf1\x1e\xe8\x88\x95\x91\x87\xd0\xd0\xd6\x07\xb1\xdb\x67\xd2\xba\xd2\xdb\x80\xdd\x15\x29\x3f\xae\x6f\x3e\x9e\xc7\xae\xa1\xaa\x9f\xc8\x5d\x1b\xaf\xaa\x89\x69\x5b\x6b\xfd\xe5\xc3\x8f\x3f\x7c\x9f\xb1\xb2\x55\x5f\x97\xca\x7c\x13\xdf\xd3\x8a\xe4\x7f\xb2\x4d\xfd\x8a\xd2\x14\xee\x32\x5c\x35\x00\xb3\x82\x66\xf9\x71\x13\xcd\x80\x95\x21\x63\x0d\x1d\xd6\xe7\x5e\x89\xba\xd4\xd3\x14\x3b\xd2\x5f\x10\x23\x95\x20\x45\xfe\x73\x38\x52\x69\x24\x58\x87\xc2\x17\x98\x5e\xda\x68\xab\x09\x0c\x32\x32\x70\x26\x98\x44\xc6\x5a\xde\xca\xf0\x1b\xbb\x67\x92\x2d\xd1\x7a\x1d\xab\x1f\xd6\xb0\x19\x25\x45\x56\xf2\x57\xda\x20\x29\x3a\x89\xc0\xd1\xa9\xcc\xff\xec\x99\x5c\x5b\x6b\xe1\x63\x65\x85\x67\x0c\x98\x04\x7b\xa3\x4d\x64\x0c\x2b\xfa\x59\x2a\x21\x1f\x82\x36\xcf\x63\xca\x8f\xa2\x13\x6f\x23\x22\x48\x75\xa1\x8e\xed\xde\xfa\x9a\xa5\x82\xbb\x13\xff\x54\xa9\x9b\xd8\x57\xef\xd6\x3f\xca\xe4\x02\x65\x1f\x2f\x4a\x84\x08\x80\x45\x3a\x3a\x2b\xbe\xab\x0c\x1e\x2c\x8c\x41\xf0\x2c\xad\x26\xc5\xf4\x40\x3c\xfe\x33\x0f\x4c\x18\x8e\xc0\x39\x89\x67\x30\x3a\x16\xc8\x31\x02\xeb\xb5\x4a\xe4\x1d\xcf\xc0\xb8\x5b\x9d\xc2\x91\x78\x55\xfc\x06\xa5\x69\x00\xea\x38\xbc\x6c\x92\x8e\xce\x48\x63\xa7\x4c\xa4\xec\xc0\x59\x67\xcc\x64\xb6\x52\x20\xbd\x52\x61\xe6\xfa\xa5\xee\xd0\x8d\x82\xdb\xab\x50\x77\x31\x82\x65\xe8\x3e\x2c\x33\xbe\x38\xb6\xbe\x2a\xfa\xff\xec\x72\x67\x15\x40\xdb\xdc\xfb\x7e\x1e\x2b\xa8\xc7\x99\xc4\x71\x58\x69\xa5\x9f\x5b\xaf\x0f\x37\xfb\xef\x19\x2f\x94\x5f\xbd\xcb\x1e\x59\xaf\x95\x6f\x85\xf1\xd6\x13\xe7\xe7\x5e\x7e\x7b\x7b\x2f\x9c\x7b\x78\xe1\xf8\xf0\xda\xdd\x0f\x67\xab\xcf\xe3\xef\xce\x19\xa7\xeb\x2a\xa9\xab\xfd\x98\xf1\x45\x92\x5d\x96\x31\x7b\xd0\x83\x90\x5d\x96\x3b\xfa\xb8\x68\x32\x81\x6c\xf1\x50\x09\xe3\xae\x19\xdd\x23\xaf\x3d\xf2\xda\x23\xaf\x3d\xf2\x0a\x20\xaf\x19\x7d\x30\xf6\x9a\xd1\xc7\x42\x5f\x8b\x3d\xfe\xda\xe3\xaf\x3d\xfe\xda\xe3\xaf\x20\xfe\x5a\x7c\x06\x02\x5b\x3c\x06\x06\xcb\xf3\xcf\x0a\x76\x80\x12\x86\xf2\x6a\x86\xe2\x38\xe8\xda\xac\x22\x86\xc6\x08\x1c\xe9\x5f\x5c\xda\x29\x3e\x04\x20\x79\x9e\xf2\xbe\x64\x85\x21\x70\xf0\x2d\xe9\xea\xc2\xe0\x28\xf1\xce\xa1\x7a\xf6\xf8\x7c\x8f\xcf\xf7\xf8\xfc\x5f\x09\x9f\x97\x98\x3c\x14\x9d\x97\x98\x3c\x06\x36\x2f\x31\xd9\xd3\xa3\x7b\xfc\xb5\xc7\x5f\x7b\xfc\x15\xc6\x5f\x0f\xa6\x47\x45\xdb\xc7\xc0\x60\x3c\xdb\x13\x60\x7b\x04\xb6\x47\x60\x7b\x04\x16\x40\x60\x3c\x7b\x30\x01\xc6\xb3\x47\x21\xc0\x78\x46\x9e\xec\xf1\xd7\x1e\x7f\xed\xf1\xd7\xbf\x3c\xfe\x7a\x02\x20\x51\x6e\x19\x58\x7a\x72\x74\x50\xd9\x93\x98\x40\xfc\x60\x6c\xf6\xe4\x91\xd0\xd9\x9e\x9f\xdc\xa3\xb3\x3d\x3a\xdb\xa3\xb3\x30\x39\xf6\x60\x7e\x52\xb4\x7d\x04\x0c\x36\xbb\x64\x3b\x87\xb3\xdf\x23\xb0\x3d\x02\xdb\x23\xb0\x7f\x21\x04\x26\x90\xc3\x03\xf1\x97\x68\xfa\x18\xe8\x0b\xe1\x62\x8f\xbe\xf6\xe8\x6b\x8f\xbe\xf6\xe8\xab\x8b\xbe\x10\x2e\x1e\x8a\xbe\x10\x2e\x1e\x03\x7d\x15\xbf\x7c\xbb\x17\x87\xed\xf1\xd7\x1e\x7f\xed\xf1\x57\x00\x7f\x09\xec\xf0\x50\x04\x26\xda\x3e\x06\x06\xdb\xfb\x27\xec\xf1\xd7\x1e\x7f\xed\xf1\x57\x08\x7f\x3d\xd8\x3d\xe1\x71\xbc\x13\xf6\xce\x09\x7b\xe4\xb5\x47\x5e\x7b\xe4\xd5\x87\xbc\x1e\x2a\xbb\x7f\x24\xd7\x84\x1c\x5f\x3f\x8a\x6b\xc2\xc9\xe7\xba\x26\xe4\xf8\xfa\x11\x5c\x13\xd0\xa7\xd5\x1e\x99\xef\x91\xf9\x1e\x99\xef\x91\x79\x07\x99\xa3\x4f\xab\x07\xe2\x72\xf4\x69\xf5\x08\xa8\x1c\x7d\x5a\x2d\x4f\xf7\xd8\x6b\x8f\xbd\xf6\xd8\x6b\x8f\xbd\x42\xd8\x6b\x79\xfa\x70\xfc\xb5\x3c\x7d\x04\x0c\x36\x2f\xe8\xee\x11\xb2\xf7\x18\x6c\x8f\xc1\xf6\x18\xec\x5f\x08\x83\x49\xec\xf0\x40\x0c\x26\xdb\x3e\x06\x06\x63\xb4\x22\x0f\x72\xf6\xdf\xa3\xb0\x3d\x0a\xdb\xa3\xb0\xdf\x3b\x0a\x93\xe8\xe1\xa1\x38\x4c\x36\x7e\x04\x24\x76\x35\xdb\x63\xb0\x3d\x06\xdb\x63\xb0\x3d\x06\x7b\x02\xa4\x5b\xd5\x68\x6a\x2f\x4f\x9a\xa6\xf8\x7c\x34\xc6\x30\x53\x89\x73\xca\xa6\x3c\x3b\x1f\x8d\x33\x58\xa5\x36\x26\x26\x05\xb0\x68\xfe\x2a\x6d\x98\x6a\x51\xb9\x3a\x2f\x64\x08\xe1\xe2\xbc\x1a\x93\x78\x52\xc0\xea\xdf\x8a\xe9\x83\xd0\xe2\xd5\xec\x31\x70\xe2\xe2\x76\x45\x1f\xe4\xe3\x70\x5f\x9c\x28\x83\x74\xb7\xd0\x62\x1b\x29\x1e\xfa\x48\x71\x38\xdc\x88\x12\x43\xd7\xac\x07\xf1\xee\xf1\x47\x1f\xfe\x78\x18\xf6\x28\x57\x0c\x65\xf9\xbf\x0c\xe2\x70\x49\x1d\x79\x61\x74\xe4\x7f\x51\x00\xe5\x59\x7c\xc8\x05\x97\x3d\x3d\xc2\x15\xc7\xcb\x6a\xef\x06\xb0\xa7\x7b\x7e\x5f\x78\x6b\x4f\xf7\x7c\x71\xaf\x72\x81\x27\x1e\xec\x54\x2e\x1a\x3f\x02\x2e\x2b\x66\xc1\x0c\xd4\xbd\xec\xde\xee\x69\x3d\xf6\xd8\xee\xb7\x82\xed\x48\x83\xed\xd8\xc3\xb1\x1d\xeb\x62\x3b\xb6\x0d\xdb\xb1\x06\xdb\xb1\x1d\xb1\x1d\xbb\x3f\xb6\x63\xc0\x5f\xe9\x6f\x1d\xdb\x91\x47\xc3\x76\xd8\x60\x3b\x92\x32\xc3\xe5\x91\x1e\x2e\x8f\x84\xb8\x3c\x97\x93\xa3\xeb\xb5\xf8\xaf\x3c\x1f\x8d\x1b\xce\xef\xdf\x4b\x70\x22\x13\xff\x5c\xcd\x72\x10\x4f\x28\x2c\x1f\xc6\xdc\x15\xb3\x65\x8a\xc3\xd8\x92\x06\xb1\x25\x76\xb1\x25\xad\x01\x38\xd8\x05\x5b\xd2\xab\x63\xb4\x27\xfd\x7e\xcf\xc8\x70\x4f\xfa\xfd\xb6\x90\xe1\xaf\x48\x68\x5f\xd0\xab\x07\x4a\xec\x0b\x7a\xf5\xe2\x31\x88\x3d\x7a\x75\x3a\xda\xa3\xaf\x3d\xfa\xda\xa3\xaf\x3d\xfa\x0a\xa1\xaf\xd3\xd1\xc3\x11\xd8\xe9\xe8\x91\x30\xd8\xde\xf0\x7e\x8f\xc1\xf6\x18\x6c\x8f\xc1\xc2\x18\xec\xa1\xa6\xf7\xb2\xed\xe3\x60\xb0\x7d\x0c\x8e\x3d\x02\xdb\x23\xb0\x3d\x02\x0b\x22\xb0\x87\x86\xe0\x10\x4d\x1f\x01\x7d\x2d\xb3\x4f\x7b\xe3\x86\x7f\xd9\x7b\xbe\x37\x6e\xb8\xa7\x71\xc3\x32\xfb\xf4\x45\x4c\x1b\x96\xd9\xa7\xc7\xb8\xdc\x0f\x4b\xb7\xb6\xbf\xdc\xfb\xcb\xfd\x2f\x79\xb9\x31\xf9\x32\x97\xfb\x51\xb2\x91\x2d\xe9\xe3\xe4\x96\xfc\xb7\xcf\x0d\xe0\xb0\xa4\x8f\x91\x5b\x72\x59\x15\x9f\x67\xa6\xb9\x2b\x3c\xfe\xfd\xb3\xe1\x21\x96\xf5\xf5\x01\xb2\xa2\x37\x5f\x13\x1e\xf2\xc6\xac\xe8\x8d\xc2\x36\x0f\x83\xc4\x8a\xde\x3c\x02\x20\x58\x46\x72\xba\xdc\xf3\xe8\x7b\x1e\xfd\x77\xf5\xbc\xef\x79\xf4\xfb\xbe\xf2\x31\x49\x23\x53\xde\xbe\x86\xc3\x61\x54\xca\x1f\xed\x0f\x76\x31\xe7\x2e\x0a\xd0\xe3\x98\x63\x58\x8f\x03\x1f\xd1\x70\xb8\x61\x38\xef\x58\xa5\x69\x6a\xcb\x0f\xcd\xef\xe6\x00\x9f\x9b\xb9\x8d\xed\x80\x40\x50\xc4\x0f\x40\xb9\x0a\x19\xa6\x65\x1f\x79\x62\x08\x21\x48\x53\xc3\xf0\xc0\x2c\xbd\xcb\xd1\x0c\x2f\xb3\xa2\x1c\x8f\xea\x06\x43\x96\x8d\xf8\x23\x33\xe7\x5b\x6f\xdb\x1f\x4f\x87\x43\xd5\xef\x61\xda\x7c\x9c\x9c\x4e\xcf\xdd\x3f\xc6\x02\x57\xb1\xc4\x74\x2e\x6f\x0a\x6d\x6e\x63\x2c\xb0\xd3\xa1\x7a\x07\xba\xa8\xd6\x98\x26\x1d\xa6\x29\xb2\x5d\x9c\x37\x3f\xc7\x99\xfd\x09\x8f\xe4\x5a\xd4\xda\x63\x90\x70\xfa\x12\x7f\x42\x79\x4c\xe3\x11\xc4\xf1\x93\x11\x2c\x01\x90\xf7\x14\x0d\x87\xa7\x69\xda\x1c\x3e\xb9\xba\x4a\x0b\x77\x60\x91\x56\x8d\x80\xe7\x28\xf6\xfa\xfc\xf7\xa2\xa7\xdb\x5a\x75\xfb\xa4\xd3\xed\xcc\x18\x9c\xce\xd3\xd9\x64\x34\x85\x79\x3a\x9b\x9c\x4e\xc5\x2c\xf2\xef\xe6\xaa\xca\x22\x9d\xe4\x70\x3e\x3d\x98\xa7\x0b\x55\x63\x31\x39\x9d\xd6\x66\xfc\xb9\xbf\xaa\x7f\x8f\xf3\xe3\x39\xe8\x9b\x85\x6e\xb4\x03\x1c\x6a\xb5\xe6\xd0\xf3\x5b\xba\xcf\x6f\xb5\xeb\xf3\xfb\x60\xc7\x68\x66\xaf\x92\x35\x42\x63\xd2\xe6\xec\x88\x9d\xab\x85\x48\xa7\x4a\x04\xc6\x31\x4b\x8f\x18\x54\xc8\x24\x8d\x51\x7a\x24\x1e\x61\x5c\xbe\xce\x5e\xcb\xe7\x38\x22\x92\x64\x6b\x98\x50\xb6\x5e\xb3\x7f\x3b\x3d\x4c\x47\xe7\xaf\xb3\xd7\x63\xf4\xdd\xe8\xfc\x98\xc7\xc7\x62\xc4\x71\x8c\xd2\xe6\xc1\x88\x41\x52\xae\x0a\xcc\xe3\x08\x45\x00\x22\xd1\xb5\x33\xf0\x51\x14\x89\x4b\x3c\xcb\x78\x8c\xc4\xfe\x88\x4a\x4d\xc1\xe9\xf4\xfc\x48\xfc\x7b\xcc\xc6\xc7\x0c\xc8\x8d\x09\x75\xba\x5b\x27\x47\x6c\x2c\xfa\xf0\x11\x28\x93\x2f\xa4\xfe\xd7\x1e\x76\x73\x3f\x74\x7f\xc7\xce\x97\x03\x59\x11\x7d\x5a\xb5\xea\xa8\xb2\xda\xa5\xec\x34\x68\x27\xa3\x87\x99\xef\x29\x8f\x55\x16\xc6\x32\x24\x78\xb8\x98\x7b\xb8\xc8\x8e\x87\xab\xc4\x57\xfb\x84\xa6\x7b\xca\x6e\x4f\xd9\xfd\xab\x52\x76\x9b\xb4\x2f\x02\x39\x3c\x50\xfb\x22\x9a\x3e\x82\x0c\xa7\x7c\x98\x80\x76\x8f\xbd\xf6\xd8\x6b\x8f\xbd\x7e\xf7\xd8\xeb\xe1\xc8\xeb\x51\x70\xd7\x3f\xf7\xb9\xff\xf6\xc8\x6b\x8f\xbc\xf6\xc8\x2b\x84\xbc\xfe\xf9\xe0\xdc\x7f\xa2\xe9\x63\xa0\xaf\xea\xf2\x51\xd4\x45\xc7\x9f\xab\x2e\x2a\xab\xcb\x47\x50\x92\xf0\x6c\x4f\x89\xee\x91\xf9\x1e\x99\xef\x91\x79\x17\x99\xf3\xec\xa1\x94\x28\xcf\x1e\x83\x12\xdd\xa7\xd1\xdf\x23\xaf\x3d\xf2\xda\x23\xaf\x3e\xe4\xf5\xd0\x4c\x3c\x8f\x94\x44\x9f\xb3\x8a\xcc\xf6\xf8\x6b\x8f\xbf\xf6\xf8\x6b\x8f\xbf\xba\xf8\x4b\x60\x87\x87\x22\x30\xd1\xf6\x4b\x63\xb0\xdb\x4b\x74\x8c\xc9\x31\x2a\x90\x38\x31\x27\x33\xba\x5c\x51\x22\xce\xce\x49\xfb\xdb\xae\x38\xed\x21\x49\xc1\xba\xeb\xe1\x66\x3d\x1f\x7e\xfc\xe1\xfb\x8c\x95\x89\x38\x52\x45\xc6\x51\x7c\x87\xf3\x71\xf4\x3f\x8f\xfe\xfc\x84\xfe\x03\x17\x11\xbc\x2c\xe8\xec\xe3\xf8\x9b\x3b\x6d\x54\x53\x46\xe3\x49\x34\xd4\x1d\x46\x30\xfa\x4f\x71\x02\x31\xc9\xc4\x54\x5f\x98\x85\x44\xff\xc9\x10\xc9\x11\x7b\x45\xde\x16\xd9\x0c\x45\x53\x18\x95\x3c\xe3\x48\x5d\x9a\xf1\x64\xf2\x7f\xc1\xc9\xb7\xff\x37\x3c\x9d\xc2\xc9\xe4\xdb\x27\xf0\xdb\xe9\x54\x5a\x23\xc0\xc9\x24\x6a\x7a\x46\x45\x29\x5a\x4e\xee\x5a\x6d\x4f\xff\x1f\x78\x2a\xab\x4f\xa7\x30\x5a\x65\x2c\x5b\x22\x8e\x98\xf8\x34\xad\x61\xbb\xb2\x1a\x68\xa4\x07\x7a\x32\x15\x3f\xa2\xab\x0a\xe7\x11\x8c\x30\x29\x11\xe3\xdf\xa3\x39\x65\x72\xa0\xe8\xdf\x66\x15\x2b\x29\x1b\x8f\xfe\x2d\x32\x03\x38\x33\xba\xe7\x54\xa6\xd3\xde\xc2\x45\x56\xbe\xb8\xce\x8a\x68\x3c\xcf\x8a\x12\xc1\xa8\x5a\x5d\x67\xb2\x42\xe4\x9e\x86\x08\xcf\xa3\x69\xfd\x0d\x5c\x22\x9e\x8d\xef\x96\x72\x63\x5f\x67\x4b\x34\x7e\xc0\xd9\x4a\x16\x97\x65\x54\xd7\x00\x1a\x19\xc8\x45\x89\xf8\x33\x53\xff\x83\xd9\x7a\x0e\xf5\x57\x73\x18\xde\x90\xe2\xd6\x56\x8b\xc1\x16\x51\x89\x40\xa7\xf9\xb1\x3c\x30\xe5\xf1\x8a\x16\xb7\x73\x5c\x14\xf6\xe1\x3e\x5e\x64\xa5\xfa\x78\x2c\xa1\x52\x86\x22\xaf\x05\xbb\xd8\x3f\xf1\xfb\x27\x7e\xff\xc4\xff\xbe\x9f\xf8\x2f\xf3\xaa\x85\x6d\xa5\x3c\xe4\xd1\x50\x0f\xdf\xb6\xa2\x57\x42\x9a\xb2\xc9\x93\x66\x4e\xe7\x58\x5c\x6c\x32\x1c\x92\x09\x9e\xfe\x71\x34\x96\x61\xd2\x36\x1a\x5d\xed\x8a\x00\xf7\x98\x6f\x8f\xf9\xf6\x98\x6f\x8f\xf9\x7e\xe5\x98\xef\xf3\x31\x1e\x2e\xdd\x1a\xc7\x98\x5c\xd3\x99\x64\x15\x1e\x88\x01\x3b\x21\x77\xbf\x0c\xf0\xc2\x9a\xc1\xb8\xeb\xa5\x20\x63\x75\xe2\x52\x90\xe1\xf9\xf7\x62\xa2\xaf\xec\x8a\x80\x32\x0e\x46\x93\xd3\x29\xa8\x3f\x93\x52\xfe\xfd\xc1\x8c\xf4\x42\xec\xa1\xc0\xc2\x24\x47\x9f\x15\x8c\x21\xe6\x7b\xff\x96\xd0\xb6\xa4\x6d\x9c\xc1\xcd\x33\x35\x63\x48\x70\x89\x02\x13\xda\x24\x25\xe1\x41\x39\x8c\xcc\x4b\x16\xc1\xbb\x19\x25\x73\x7c\x55\x49\xc4\x3c\x3e\x1c\x41\x44\xaa\x25\xd2\x7f\x9d\xc2\x1b\x86\xb9\xf9\xad\x26\xe7\x3c\x15\x6a\x94\xe8\xee\xee\x16\xa3\x22\x1f\x70\x9a\x5a\xfb\xff\xff\xfd\xfe\xcd\xeb\x44\x3d\xb3\x78\x2e\x28\x1b\x18\xd5\x75\x04\x24\x97\x9b\x94\x88\xc7\x1c\x22\x00\x79\x0d\x51\xcf\x8d\x75\x16\x0a\x89\x1d\xaa\xf1\xa8\xe1\xd2\xa3\x46\xac\xf6\x30\x4d\xd1\x70\xc8\x92\x45\x56\xc6\x08\x9c\x93\x34\x4d\x59\x72\x85\x44\x85\xb1\x95\x0f\x88\xe7\x52\x0d\x26\xc7\x29\x5f\x91\x39\x4d\xbb\x07\x61\xc3\x00\xda\x23\x43\x83\xf4\x0a\xf1\xb7\x66\xcb\xdf\xcc\x65\x55\xfd\x45\x42\x49\xcc\x24\x41\xd7\x88\xdd\x86\x2e\x9d\xf1\xe1\x68\xe8\x8f\x1a\x80\x5a\x5f\x5c\xf1\x32\xfd\x15\x65\x1f\x7f\xcc\x56\xdd\xdb\x46\x89\x16\xb9\x5b\x74\x44\xc9\x71\x4e\x67\x55\x5b\x46\x05\x37\x34\xb8\x47\xa0\xf4\xfb\xd2\xad\xe4\x37\x10\x3e\xe1\x5f\x30\xa4\xf8\x6f\x33\x7c\xc2\x57\x8f\x25\xfe\x65\xde\x5a\x9c\x72\x53\x9c\xa0\x4f\x1c\x91\x3c\xbe\x9b\xd1\xe5\xaa\xe2\x0e\xb2\x74\x79\x40\xbe\xc0\x65\x72\x51\x56\xe2\x49\x9e\x98\xcb\x3b\x35\x98\x53\xdc\x3a\x20\xb6\xad\xde\x22\xbe\x0e\xe2\x82\x1b\x4c\x72\xdf\x59\x7e\x8f\x09\xf6\x98\x60\x8f\x09\x7e\x03\x98\x40\x5d\xdd\x2f\x83\x07\x36\x23\x80\x8a\xe3\xa2\x3c\x41\xd7\x88\xf0\xe3\x02\x97\x1c\x11\xc4\xf6\xd9\x53\x7e\x87\xe2\xac\x7f\x41\x04\xf7\x9b\x16\x67\xfd\x1a\xf1\xdc\xc5\xc5\x8c\x56\x84\x97\x69\x87\xf1\xbb\xcb\xf2\xbc\x1c\x63\xc8\xd0\x92\x5e\xa3\x72\x4c\xeb\xba\x0f\x2f\x8a\x6b\x31\x6a\x90\x48\x16\x23\xc8\x20\x81\x18\xdc\x09\xd6\x6d\x38\x24\xc3\x61\x4c\x8f\x8e\xa0\x14\x47\xa8\xfe\x5e\x08\xf4\xf4\x83\xc6\x4e\xc0\x36\x50\x3e\xfd\xa5\x2f\xdf\x30\xc8\x56\xa2\xb4\x0f\x19\xbb\x42\x7c\x2c\x75\xd6\xb2\x40\xea\x65\xd5\x74\xa0\x38\xea\x97\xd9\xec\xa3\xf9\x5b\x56\x78\xb3\x12\xb3\x2a\x6d\x9d\x2e\xca\x26\x8a\xd9\xa6\x32\xd5\xcc\xb7\x00\x96\x29\x9d\x8c\xa6\xb0\x4a\xe9\xe4\x74\x0a\x8b\x94\x4e\x9e\x4c\x0f\xb2\x58\xe2\x73\x67\x12\xb0\x29\x10\x93\x50\x7f\x9a\x29\x38\x1f\xf5\x04\x00\x6c\x77\x90\x96\x7e\x1b\x97\x2b\x16\xf0\xa0\x16\x13\x63\x03\xbd\x2c\xcf\x83\xa0\xa3\x00\x92\xba\x3b\xc3\x0a\x16\x90\x80\xd6\x44\xd3\xaa\x3b\x39\xc1\x3f\xdf\xe0\xa2\x78\x2e\x2e\x0a\xbd\x1d\x7b\x77\xac\x79\xc6\x00\xfc\x7c\x30\xf8\x4f\x5e\xb9\xe9\xc9\x0b\x3e\x65\x5f\xcf\x56\xa3\x0d\xdc\x37\x64\x86\x64\x68\x80\xf6\x07\x4f\x7c\x01\xb1\xd8\x28\xf9\x0a\xa5\xf8\x80\x9f\x77\xab\xc7\x04\x66\x90\x82\x31\x1d\x0e\x69\x42\xc9\x0c\x9d\x33\xd9\x30\x83\xdf\x53\x5a\xa0\x8c\xc4\x34\x99\x65\x2b\x81\x9d\x00\x18\xf7\xb4\xb7\x55\x45\x27\xb6\xb6\xb8\x93\x81\x1b\xd5\x3e\x49\x18\xdc\x89\x89\x05\x6a\xc6\xea\xf3\xb8\xff\xa3\x19\x18\x0f\x87\xd8\x1f\xf8\xfd\x4f\x6f\xdf\xbe\x79\xf7\xe1\xfd\xc5\x8b\xbf\xbc\x78\xfd\xe1\xe2\xcd\xdb\x0f\xaf\xde\xbc\x7e\xef\x9b\xba\xb8\x07\x89\xdd\x4a\x30\x21\xc8\x53\xc3\x18\x69\xc1\x96\x36\x5f\x89\xa3\x1c\x5f\x47\x00\xb2\x74\x64\xb0\x5a\xf7\xc8\xc7\xd1\xac\xc0\xb3\x8f\x91\xb3\xf7\xf6\x9e\xb0\xa3\xa3\x1a\xc0\x3b\x01\x63\xb5\xa9\x01\xb9\x9f\xec\xec\x1c\x49\xac\x2a\x7f\x9b\x0e\x65\x48\x8d\xf6\xc4\x54\x05\xf9\x5f\x04\x40\x82\x09\xe6\x5e\x23\x78\x38\x82\x87\x23\x00\x79\x92\xe3\x72\x25\x68\x05\xf5\x19\x05\x8b\x4e\xc5\x4b\xa8\x49\x0a\x2b\xf7\x3a\x3c\xad\xeb\x18\xb4\x88\x30\xc8\x4c\xfe\xab\x4e\xc4\x9a\x6f\x83\x11\x6b\xbe\x9d\x0e\x87\xee\x5f\x4d\x7f\x38\x06\x77\xe1\xed\xe5\x10\x0b\xf4\xc0\x62\x50\x07\x4e\x9d\xfa\x5a\xf7\xee\x33\xef\x5e\xdd\x55\x76\x85\x8e\x39\xe6\x05\x6a\xa2\xbb\xd9\xa2\x87\x49\x8c\xd5\x53\x20\x85\x8a\x0b\x5c\xc2\x48\x77\xe5\x86\x3e\x79\x90\xfc\x75\xbb\x5c\xdd\xbc\x3b\x62\x05\x1f\xc4\xa8\x02\x32\x63\x1d\xe5\x87\xc8\x01\x4b\xc4\xae\x05\x55\x05\xe0\x02\x65\xf9\xf3\x8c\x67\x7d\xdf\xc5\xc1\xe9\xc7\xaa\xaa\xd1\x95\x5d\xa4\x37\x64\x04\x14\xad\x7a\x87\x73\xdd\xfb\x55\x85\xf3\x97\x94\xc9\xca\xa0\x06\x75\xe8\x51\x63\xe0\x8e\x0d\x87\x2c\xb9\xc8\xd1\x8a\xa1\x59\xc6\xd1\x70\x28\x88\x3a\x5a\xa0\xe4\x26\x63\x24\x8e\x7e\x2a\x31\xb9\x1a\xfc\x7c\x77\x27\x41\x5a\xd7\x3f\x0f\xd4\x9e\x0d\x70\x39\xb0\x8d\x72\x38\x10\x7b\xf3\xf3\xdd\x5d\xb3\x91\xa2\xaa\x20\x9c\x50\x96\x27\x83\xe8\xc8\x1d\x03\x78\x1a\xb1\xde\x05\x41\x63\xd3\x97\x95\x32\xf6\xc1\x5d\x0d\x99\x95\x6b\xe3\x04\xe7\x69\x60\xa1\x10\x27\x72\xf8\x14\x25\xff\xa0\x98\xc4\x51\x04\x20\x51\xa0\xc1\x06\x84\xac\x22\x49\x39\x5b\x20\xb1\xe3\x02\x7d\xc7\x51\x36\xe7\x88\xbd\x93\x36\x71\x51\x07\xce\x66\xd7\x22\x00\xb9\xb8\x09\x51\x54\xc3\xbc\xfb\x04\x4a\xac\xb5\x75\x4d\x2c\x34\xe9\x03\x73\xf3\x62\xd6\x81\xcd\x9b\x1b\x79\xcd\x44\xb5\xa4\xa0\xf4\x63\xb5\x8a\x23\x46\x2b\x8e\xd8\x78\x99\x61\x22\xc1\x14\x93\xe4\x42\x95\xfd\x88\x67\x8c\x16\xf8\x72\xbd\x26\x89\x2a\x59\xaf\xef\x6a\x90\x64\x33\x8e\xaf\xd1\x07\x96\x91\x12\x8b\xf9\x42\xda\x99\x69\xb3\xcc\x03\x7c\x8e\x05\x93\xb0\xc4\x25\x4a\x34\x7b\x12\xbb\x88\x94\x26\xb8\xd4\x44\x00\xca\xd7\xeb\x9d\xa0\x4a\x21\x87\x08\xd4\x00\x8c\xef\x53\xbd\xde\xa2\x7b\x72\x70\x89\xbe\x46\x2e\x32\x91\xf4\x40\x88\x11\x9e\xd1\xd5\xed\xa3\x6a\xe1\xde\xab\xc9\x59\x74\xd1\xbe\xe9\xea\xf0\x88\x8d\x38\x08\x5d\x7a\x07\xb3\xd1\x8f\x88\x94\xe6\x90\x3e\x8d\x41\xb7\x8a\x7a\x01\x22\x38\xd2\x34\xdd\x85\xc6\xea\x9f\x70\xc9\x31\xb9\x92\xa7\xf1\x43\x76\x15\x03\xcf\xd0\xb4\x75\xd4\x18\x2a\x69\x71\x8d\xde\xa1\x2b\x5c\x72\x26\xf5\x31\x71\xa4\x14\x45\x63\x44\xae\x31\xa3\x44\x2a\x1c\xc0\x01\x4f\xec\x19\x1f\x0e\x27\x51\x89\x56\x99\xe4\x71\x22\x18\xad\x18\x5a\x21\x92\x47\x30\x62\x68\xa5\x2c\x4d\x93\x39\x65\x2f\xb2\xd9\xc2\x39\x4f\xcc\xe0\x6f\x5c\xbe\x65\xa8\x14\xaf\xa0\xd3\xe7\x84\x4d\xc1\x70\xd8\xac\x11\x41\xab\xd1\x31\x72\x12\x0d\x62\xc3\xc9\xae\x30\xcf\x0a\xfc\x8b\xb8\x4c\xe2\x7d\xf5\x7a\xaa\x05\x51\xa2\xdb\xbf\x37\x33\x1d\x47\x83\xf5\x20\x32\xc5\x6f\xd5\xa4\xc7\x87\x23\x53\xf2\x4e\x4d\x5e\xf1\x13\x6a\x03\xd4\x6f\x19\x5e\xf7\x83\x28\x78\xae\x6a\x96\xe3\xae\x72\xae\x7d\xcf\xda\xa3\xbb\x48\xa1\x5d\x49\xcf\x45\xe0\xb0\xbe\x2a\x7a\x72\x11\x38\x50\x2c\x23\x4a\xec\x0e\x0c\x87\xb1\xf3\x57\xca\x01\x34\x55\xf4\xc6\x18\xe5\x96\xaa\xa9\x0b\x53\xd6\xd4\xd3\xdb\x66\xea\x11\x59\x4f\x17\xa6\x04\xd4\x10\x93\x05\x62\x98\xbf\x64\x74\xf9\x96\xa1\x6b\x4c\xab\x10\x08\x64\xdf\xf2\xe3\x01\x1f\x0e\xe3\xad\x13\x6d\x7e\x07\xa6\xec\xcc\x94\x9b\x5f\x62\x57\x05\x8e\xef\x8c\xcd\xe4\x9d\x4a\xd4\xa6\x09\x5c\x96\x7f\x7f\x1b\x47\x38\x17\xb4\x01\xce\x55\x08\x31\x43\x43\xb9\x35\xa5\xf6\xfa\x8d\xf8\x28\xd0\xab\x60\xaa\x04\xca\x00\xb1\x53\x07\x40\x9a\xb2\x66\x61\xd6\x91\xda\x94\xa4\x14\x22\x29\x51\x4a\x99\xfc\x4f\x5d\xc6\x00\xc0\x24\x19\x28\xbe\x75\x8f\x93\xf8\x84\x65\x7c\xb5\x19\x8a\x09\x3c\x85\x08\x40\x89\x5d\xb6\xa1\x05\xc3\x25\x67\xde\xaa\x94\x74\xe7\x58\x99\xe5\x67\x06\x94\x6a\xb6\x19\xcc\xd4\x6c\xd1\xa6\x89\x6e\x9a\xe9\x81\x62\xcb\x7b\xa0\x75\x50\xaa\x57\x18\x6d\xc7\x69\xe5\x06\xa4\xd6\xbe\x05\xba\x1c\x1c\x9d\x82\x5a\x8b\x21\xee\x73\x08\xa4\xa1\x8d\xda\x1e\xec\xee\xa6\x38\xe9\xa4\x01\x0e\x06\x10\x0f\x87\x31\x56\x10\x12\xd4\x70\xf3\x8d\xe9\xc2\xaa\x28\xbc\x84\xae\x4f\xe3\x1e\x48\x80\x03\xaa\x9f\x7b\x2d\xcb\x64\xdb\x41\x42\x1f\x00\x92\x63\x01\x92\x6b\x5c\xe2\xcb\x02\x7d\x50\x58\x4b\x55\xd5\x84\x60\x1e\xdb\x61\xee\xae\x90\xf7\x1c\x19\xd1\x52\x97\x9e\xd1\x2d\x00\xe4\x29\x3a\x37\xb2\xa8\xf1\x08\xb2\x74\x32\x3d\xe3\xc7\xc7\x67\xe6\x36\xa1\x09\x97\xe1\x1f\x89\xc1\x17\xe0\x8e\x25\x15\x29\x17\x78\xce\x63\x02\x0e\x2e\x19\xca\x3e\xd6\x6e\x51\x23\xf3\xac\x01\x2c\x29\xe3\x28\xef\x99\xb6\xb7\xa8\xee\xec\xc3\x33\xf7\x1b\x09\xa4\x7b\x38\xfa\x3f\xec\xbd\x59\x7b\x1b\xc7\x95\x00\xfa\xce\x5f\x41\xf6\xcd\xc0\xdd\x97\x45\x08\x20\x25\x59\x06\xd5\x61\x64\x99\x4e\x34\xb1\x2c\x8f\x24\x67\x43\x30\xfc\x9a\x40\x81\xe8\xa8\xd1\x0d\xf7\x42\x8a\x16\xf0\x7d\x59\x6c\x67\x71\x92\x49\xac\x24\xce\x62\x29\x89\xe3\x24\x76\x76\x25\x71\xa2\x25\xb1\x1f\xb4\xcf\x83\xe7\x37\x90\x8f\x7a\xb9\x7f\xe1\x7e\x55\x75\xaa\xba\xaa\xbb\x1a\x00\x29\x4a\x96\x2c\xea\x41\x3c\xa8\xae\x7d\x39\x75\xce\xa9\xb3\x20\xdf\xae\x37\x04\x9d\x79\xc8\xac\xfb\x0d\x72\xac\xeb\x8d\xf4\x38\xe7\xef\x2b\x26\xe8\xc6\xe5\x76\x18\xf8\xb1\x15\x88\x11\x60\x6b\x02\x7b\x11\x9e\xa4\x1f\x39\x62\x3a\xc3\x64\xa5\x53\x55\x68\x8a\x1d\x02\xdf\x62\xa7\xc5\xa1\xf1\x8a\xe9\x51\x34\xb1\x7c\x72\xb0\x65\x49\x08\xd1\x51\x10\xa2\xd4\xe0\x80\x36\x18\xf6\xfb\xa6\x34\x1a\xd1\x04\x27\x7c\x29\xd9\x85\x02\x7e\x5d\xba\xc3\x7d\x3d\x60\x9e\x2f\xb6\x06\x16\xaa\x37\x2c\xaa\xb2\xc1\x19\xa9\xf1\x76\x89\xbc\x7a\x74\xaf\xd4\x1b\x88\x89\x29\xf9\x96\x99\x0f\x0f\xfa\x54\x44\x79\x86\x89\x07\xa9\x90\x12\x68\xf7\x52\x89\x10\x00\x94\x64\x67\x09\x16\x0a\xa7\xab\x07\xfd\x52\x49\x24\xa7\xf3\x21\xb6\x4d\x2c\x08\xfe\x01\x2a\x20\x79\xe4\xce\xbb\x6d\x73\x8a\x91\x47\x1d\x27\x7a\xda\x89\xe2\xe5\x20\x88\x4d\xcb\x4a\x07\x25\xb8\xfc\x15\x1c\x83\xec\x21\x7a\x72\xfd\xa4\xb3\xf2\xac\xd3\xc5\x26\xf0\x98\x64\x70\x95\xf9\xf8\xa0\x18\x57\xcc\xc7\x14\xb2\x23\x10\x96\x7b\x4e\x88\xfd\xf8\xd9\xa0\xc5\xa9\xfc\xc3\x1d\xd7\x6b\x99\xa1\x35\x18\x20\xb9\xf1\xbc\x5e\xcd\xd4\xd4\x50\x36\x00\x28\xde\x5a\x1b\x2a\x30\x34\xf4\x72\x26\x6e\x74\x2f\x58\xc3\xe1\x4c\x84\x3d\xdc\x8c\x67\xd6\xdc\xb8\x33\xc3\x44\x18\xb2\x71\x8a\x92\xa7\x9b\x78\xb1\xdb\xf3\xb0\x9c\x59\x47\x51\x6f\xb9\x62\xa5\xbe\x51\x95\x70\x7b\x97\x68\xac\xea\x32\x84\x3d\xe1\x72\xef\x01\x69\xef\x6b\x9e\xfa\x3c\x67\x3d\x48\xe2\x5a\xc8\x3f\x20\xda\xc7\x13\xb4\x8b\xc2\x4e\x87\x19\x09\x69\x67\xd9\x40\x4e\x93\x09\xa2\xcf\xb0\x2f\xc7\xc2\xc3\x74\x4c\x99\xc7\x43\xd8\x5f\xe5\xb6\xeb\xc5\x7a\xad\xbe\x49\x5c\x5e\x5a\x72\xa3\x13\xc9\xca\x0a\x8e\xc8\xa7\xa5\xa5\x81\xc5\xcc\xf1\x16\xe8\xb6\x0f\x7c\x56\xb3\x19\x96\x97\x96\xe8\x58\x97\x96\x50\x6c\xd5\xf8\xc7\x8e\xe3\xaf\x60\xf6\xa4\xa2\xee\x2a\x8d\x96\xe9\xdd\x2d\xfe\x16\x36\xd3\xd6\xf6\x81\xae\x3a\x10\x17\xaf\x84\x41\xd2\x9b\xa1\xf0\x7d\xdb\x2e\xec\x2c\x8b\x6d\x20\x36\x4d\xcc\x30\x4a\xcd\x30\x10\xec\x1f\xb1\xb1\x50\xd7\x89\x9b\x1d\x1c\xa6\x3b\xea\x28\x4b\x40\x11\x5b\x58\xdc\x62\x12\x73\x51\x6b\x66\x63\xc9\x93\x27\x8a\xcc\x04\x3d\xa6\xaf\x3a\xde\xee\x34\x50\x84\x9d\xb0\xd9\x59\xf4\x9d\x65\x0f\x53\xc6\x68\x88\xa0\x0a\x62\x8e\xd0\x7b\x40\x88\x1a\xad\x01\x62\x6d\xb2\x77\xe1\xdc\x85\x0e\x1f\xcb\xf5\x86\x2a\xb1\x4d\xd9\x62\x7a\xb9\xf0\x7c\x86\x10\x03\x11\x1a\x24\xee\x60\x1f\xfe\x68\x4f\x02\xbf\xdc\xb1\x55\x8e\x03\xf6\x44\x26\xc9\x21\xd4\x74\x91\x48\xaf\xcc\xa8\x13\x24\x5e\xeb\x44\x27\x58\x63\x67\x85\xcd\xb5\xf6\x21\x7f\x2a\xed\x64\x24\xf2\x7f\xb6\x83\x7d\xc3\xea\xf7\x8b\xbf\xb1\x03\x86\x9c\x56\x6b\x48\x0b\xb4\xb8\xbe\x2f\x34\x43\xa9\x64\x1a\xcb\x41\x1c\x07\x5d\xaa\xb5\xa8\x69\xec\xb9\x80\x89\x7d\x0c\x6b\x01\xae\x50\x9a\x6b\x39\x71\xbd\x56\x8a\x22\x9e\x0e\xc2\x93\x38\xec\x12\xe2\xa3\x16\x0b\x2a\x63\x44\x4e\xd2\xfb\x14\x67\x91\x7d\x72\xc8\xe7\x39\xb5\x58\x8b\x0a\x39\x94\xa5\x39\x7e\xe2\x33\xcf\x71\x81\x83\x99\x5b\x6c\xba\x32\x86\x65\x65\x17\xd8\xa7\x77\x78\x45\xf6\x44\xce\x1f\x39\xe1\xc9\x31\x84\x69\xa0\xbd\x4a\xf7\x8c\xbb\xa0\x69\xd6\xa5\x5d\xcc\x35\x22\x29\x6a\xf0\x4d\x42\x5f\x61\xe3\x74\xcb\x10\x66\x20\xb3\x7e\xb4\x2e\x14\x93\x4d\x66\x12\xfe\x02\xd0\x34\xdf\x5b\xbe\x45\x18\x0f\x5d\x29\xdf\x42\x3e\x93\x51\x0c\x41\xff\x04\x41\xe1\x52\x29\x8f\xe0\x33\x88\x1d\xcb\x88\x1d\x85\x1a\xd4\x8e\x28\x0d\xc2\x7a\xa7\x59\x2b\x1f\xb9\xca\x6a\x01\x8b\xcc\xe6\xf3\x69\x17\x7b\xad\x05\x2d\x05\xe9\x96\x01\x6d\x99\x29\x5d\x88\x09\x1f\x9b\x16\xa4\x6a\x2d\x7a\x8d\x98\xb4\x34\x3b\x1b\x66\x05\xf1\x19\xe4\xaf\x83\x26\xee\xf7\xeb\x0d\x2a\x8d\x1d\x20\xfd\xd6\xd4\xa8\x78\x9f\xc9\xce\x17\xc1\x64\x62\x8a\x6a\x18\xc5\xf8\x74\x5c\xd3\x6d\xf7\x67\x9c\x65\xec\x11\x32\x3a\xd7\x1a\xfd\xa2\x53\x27\xd7\x55\xb3\xa0\x4b\x34\xb1\x55\x7b\xec\x50\xab\x35\x69\x3c\x26\x1c\xa5\xa3\xc7\x8c\x72\xb9\xfc\x98\x75\x4f\x2f\x5e\xcd\x7d\x70\xaf\x6e\xe2\x7c\x53\xf7\x53\xf6\xba\xa5\x1b\x77\xa4\xc0\x79\x87\x48\x93\x07\xc8\x97\x40\xfc\xdc\xa1\xe7\xbf\xf4\xf9\xf8\x29\xbd\x2f\x81\x13\x40\x03\x18\x7c\x93\x18\x31\x0e\xbb\x06\x52\x9c\x0c\x50\xd1\x3d\x9c\x4e\x31\xdd\xf4\x83\xe7\x05\x6b\x87\x3d\xec\x84\xf4\x57\xe8\x3a\x4f\xe1\xa8\x19\xba\xcb\xb8\xf5\xe4\x3a\x4f\x02\x5d\x1c\xfe\x93\x9e\x29\xe5\x87\xc7\x73\xb3\xb3\x43\x7b\xc4\xfa\xf2\x89\xa6\xe3\x35\x13\x4f\xbe\xe2\x48\xa2\xe7\x44\x11\x03\x82\x08\x1f\xf3\xc5\x18\x3e\x01\x7d\xfe\x94\xbb\xd2\xf1\xdc\x95\x4e\x8c\x5b\x19\x1f\x09\xf4\xa7\x1b\xb2\x3f\x11\x25\x78\x28\x1c\x06\xbd\x56\xb0\xe6\x1f\xe6\x35\xe3\xd3\x71\xe8\x10\x80\x52\x92\xca\x98\x3b\xbc\xf2\x63\xfe\xa7\x82\x55\x4c\xeb\xea\x04\xa1\xfb\x62\xe0\xc7\x8e\x27\xf7\x93\x90\x51\xae\xe3\x79\xeb\xc7\x7a\xd8\x67\x0d\x79\x81\xd3\x72\xfd\x95\xa3\x38\x8a\x9c\x15\x42\xc2\x7e\x82\x62\xc3\x93\xa1\xbb\xb2\x82\xc3\xcf\xba\xad\xb8\x43\x12\xfd\x80\x11\x82\x91\x94\x31\xf0\x9f\xf4\x92\x90\x41\x87\xc9\xc0\x19\xf8\x74\xd0\x4c\x22\x06\x1e\xf1\x7b\x49\xcc\xc0\x4f\xe3\x75\x32\x1e\xf6\x83\x34\x4f\x21\xcd\x0a\x52\xd9\x4d\x27\xf0\x5a\x6c\x20\xd2\x4f\x35\x5b\x48\x35\x30\x4e\x34\xc3\xc0\xf3\x98\x87\x89\x15\x37\x8a\x71\x78\xe8\xb9\x23\x79\x87\x13\xc8\xf8\x44\x44\x73\x9e\x0c\x28\x9c\x5e\x0c\xe9\x4f\x69\x64\x4a\x82\xd2\x2c\xfb\xf2\x9c\xda\x47\x76\xde\x70\x4b\x86\x8f\xc4\xb8\xab\x94\x8c\x9d\x65\x30\x51\x32\x3e\x11\xb3\xd9\x15\x8b\x0b\xbf\x8f\xb4\xa4\x1f\xc7\x03\x8f\xf6\x25\x5e\xef\xe1\x43\x1d\xec\xb4\x80\x12\x27\x69\xab\x38\x8c\xdd\xa6\xb2\xb6\x25\x27\x8e\xc3\xa8\xc8\xb3\xc6\x1c\x75\x78\x51\x41\xf5\xb9\xfd\xc2\xf9\x45\x05\xd5\x8d\x22\x82\xdc\x68\x80\x0b\x0e\x8d\x27\x0e\x8d\xdf\x8b\x59\x64\x4c\x4e\x92\x0f\x07\x10\xa9\x99\xfa\xf1\xa8\x3e\x8e\xf6\xcd\x31\x8f\x19\xf7\xef\xb8\x52\xdf\x1d\xba\x86\x76\x0f\x32\x1c\xe4\x6e\xba\x8b\x46\x9e\x69\x4a\xb7\xed\xc0\xf9\xfe\xf0\x8f\x7a\x0a\x01\x53\xf9\x00\x63\x01\x35\xff\xdd\x62\x06\x38\xec\xfb\x1a\xf4\x64\xee\x67\x7f\x1e\x67\x7f\x0e\xb0\x3f\x4f\xb0\x3f\xd5\x0a\xfb\x4b\xf0\x42\xc1\x41\x6a\x40\xce\x2a\xfc\x9d\x85\xbf\x73\xf0\x77\x2f\xfc\x85\xd6\xaa\xd0\x5c\x15\xda\xab\x42\x83\x55\x68\x71\x16\x5a\x9c\x85\xfa\x66\xa1\xbe\x59\xa8\x6f\x16\xea\x9b\x85\xfa\x66\xf7\xa7\x3d\xe4\xfb\x18\xba\x34\x0b\x4d\xcc\xd2\x26\x18\xa2\xe3\xee\x84\x2a\x04\x29\x2a\xec\x8d\x01\xc8\x8d\x15\x81\xde\xcc\x41\x6f\xe6\xa0\x37\x73\xd0\x9b\xb9\xb9\xb4\x55\x85\x45\x84\xa6\xe7\xa0\x97\x73\xd0\xcb\x39\xe8\xe5\x1c\x74\x69\x0e\x46\x3d\x07\xed\xec\xad\x14\x75\x51\x65\x66\x95\x4e\x92\xc6\xd5\x0d\x0c\xad\xef\x85\xde\xee\x85\xde\xee\x85\xde\xee\x85\x5e\xed\x85\x5e\xed\x85\x5e\xed\x85\x5e\xed\x3d\x90\x56\x9c\xdb\x78\xbc\x6e\xe8\xf1\x3e\x98\x99\x7d\xd0\xd6\xbe\xd9\xc6\x48\x57\x48\xb3\xc8\xf8\xe2\x17\xe9\xf6\x63\x37\xd0\x2c\x77\xb9\x84\xea\x46\x96\x2f\x12\xb7\xcd\x78\x0e\x9f\xe8\x6d\x43\xfe\x91\x8f\x55\xa4\xbb\xd7\x8a\xa4\x55\x06\x74\x5c\xa5\x2d\x85\x37\x28\x04\xde\xa7\x68\x2e\x3e\x82\x31\xbc\x4a\xa9\x3d\x3a\x80\xf6\xe6\x2a\x1c\x56\x1d\xff\x4c\x8a\x67\xbf\x92\xd2\x83\xa1\xe5\xab\xa3\xbd\x48\x35\x25\x8c\xe2\xf0\x0b\xd0\x6d\x1b\xc8\xf0\x70\x3c\xd4\xa7\xd4\xce\x70\x1f\xdc\xdb\x94\xc4\xe9\xe8\xd4\xf4\xee\x11\xeb\xf7\x20\xb1\x3e\x4f\x76\x4e\x3e\x75\x74\xee\xb4\xa3\x65\x7d\x72\xb4\x1b\xd9\xdb\xfb\xd8\x09\xc5\xa7\x61\xef\x4a\xdb\xa0\x78\xc1\x39\xd3\x7b\xcf\x57\x36\x37\xdb\x5b\x5f\xea\x91\x2f\x41\xaa\x98\xe0\x13\x2b\x9e\xdb\xed\xe2\x30\x2d\x36\x82\xb7\xa7\x9c\x39\x53\x88\x56\xac\x01\x84\xd9\xbf\xf3\x11\x33\xfb\x17\x83\x8c\x52\xdb\x1d\x33\x35\x2a\x09\xda\x93\xb1\x65\x69\x6d\x54\x0e\x3b\xbe\x1f\xc4\x93\x4d\xc7\xf3\x26\x9d\x49\x4a\x0b\x4f\x3a\xd1\xa4\x23\x6c\xae\x0c\xa9\xf6\x84\xd5\x2e\x19\x85\xcc\x87\x07\x63\xf1\xda\xca\x5f\x25\x7d\x3b\xae\x87\x8d\x09\xbf\x9c\x1a\xf9\xdb\xf2\x8f\x7e\x7f\xaa\x8a\xfc\xb2\xec\x12\xc0\x9e\xaa\x20\x83\x1e\x34\x83\xf9\x5b\x32\xfd\x32\x77\x0a\x60\x4f\x55\x2c\x54\x74\x54\xfd\xf2\x29\xbc\x8e\x7c\x6b\x90\xf6\xd2\x93\x45\x7d\xa6\xc7\x2d\x92\x22\xc5\x96\x3e\x6b\xed\x24\xbd\x68\xd1\xd9\x5e\x5a\xb2\x63\x44\x67\x17\xc5\xd2\x0c\x34\x53\x85\x23\xf5\x9d\x57\x67\x63\x76\x1c\xb7\xc9\xae\xee\xf7\xa7\x00\x4a\x57\xda\xe2\x1a\xd7\x13\x6e\xdb\xcc\x7d\x2d\x47\x1d\xa7\xab\x64\xd1\xec\x9f\xe7\xc2\xe0\xf4\x3a\xcf\xc4\xac\xd0\x60\x10\x4f\x11\xfc\x5b\x64\x80\x95\x6b\xcc\x24\xd9\x51\xbd\xa1\x3c\x8a\x0c\x2c\xcb\x42\x53\x15\xd0\x10\xc7\x19\x0d\xf1\xac\x59\x1e\x88\xdd\x91\x6f\xb7\xc0\xe6\x2a\xe6\x6f\xee\x2d\x78\x4f\x96\xf6\xf8\x44\x68\xe7\x3b\xe1\xa7\x0f\x39\xc8\xe5\x3a\x07\xb6\xaf\x7f\xe9\x11\x1d\x60\x1f\x42\x79\xf5\xdb\xea\x8b\x49\xbf\xcf\x9d\x2d\x4c\xd9\xb6\x63\xc6\x96\x7c\x16\x85\x65\x70\xbc\x90\xd1\xbc\x10\xe1\x33\xb1\x74\x6c\x8e\xe3\x36\x0e\xb1\xdf\xe4\x67\x87\x34\x3e\xd9\x71\x22\xff\xb1\x78\x72\x19\x63\x7f\x12\x58\x34\x37\xc2\xad\xc9\x99\x49\x50\xaf\x54\x72\x90\x25\xc0\x2d\xe9\x6d\x69\x60\x62\xab\x16\xa7\xdd\x6f\x49\x58\xaa\xa5\xdf\xba\x0b\x5a\xe7\x10\x5a\xc4\x93\xee\xe6\x7e\xbf\xc8\xa5\x44\x06\x83\x74\x98\xd0\x9e\xd9\x6a\x30\x5d\xa3\x33\x83\x8c\xa7\x8f\x53\x78\x3d\x32\x7d\x4b\xaf\xb7\x12\xd4\x71\xc3\xf6\xeb\xb8\xc1\x14\x42\x24\x1c\x30\x35\x25\xff\x64\xca\x22\x12\x06\x98\x52\x13\x90\x99\x22\x84\xa0\xdf\x0f\xca\x7c\x76\x5f\xc4\xa1\x55\x2a\x99\x81\x8a\x20\x02\x3b\x04\xdd\x33\xab\x4c\x98\xc7\x30\x62\x50\x46\x0b\x25\x4c\xdd\x7c\x4c\xf2\x97\x8e\x7e\x3f\x1c\x58\x28\xa0\xfa\x57\xc2\xa0\x41\x69\x8f\x36\x47\x7b\xa3\xa6\x2f\x28\xbf\xd8\x01\x73\x2d\x6e\xe1\xa5\x7c\x04\x8a\x01\x74\xeb\xc8\xd6\xca\xb6\x50\x84\xe2\x62\xd2\xb5\x80\x2a\x7f\x59\x28\xd8\x21\x13\x83\xde\x70\xa2\xe5\xd8\xa7\xd6\xbf\xb4\xaf\xf2\xf8\x1e\xbd\xbc\x56\x90\xd2\x91\x90\x95\x64\xf8\xd4\xbb\x16\xeb\x8c\x29\x3e\xda\x01\xe9\xcf\xf6\x84\x3e\xdb\x94\xf6\xdc\xa5\x64\x87\x31\xfc\xdb\x93\xd6\xea\x25\x3b\xa9\x38\xe7\xc3\x91\xdb\x84\xf8\x85\xc4\x0d\x41\x82\xb2\x93\x32\x9c\xed\x48\x6a\x98\x31\xe1\x7a\x8f\x89\x5a\x98\x7d\x8f\x46\x66\xa3\x91\xe7\x14\xca\x6f\x8a\xc5\xb6\xd2\xeb\x46\x8e\x0b\x38\x80\x32\xda\x11\xaa\x6c\x75\xf7\xb0\x3d\x9c\x87\xed\xc1\x17\xa3\x3e\x8c\xc7\x71\x1b\x47\x30\x3d\xc3\xc2\xfd\x38\x93\x7e\x81\xb0\x6b\x94\xe4\x54\x95\x3e\x55\x2b\x5c\x6c\xc7\x85\x77\x99\xef\xd5\x54\xee\x06\x3b\xfe\x49\xf5\xc0\x88\xa7\x97\x0f\x55\xc6\xaa\x0a\x54\x59\x7f\x3b\x8e\xdf\xf2\x30\xdb\xb8\x0d\x55\x78\x9a\x7e\xe6\x3b\xb8\x91\xfd\x40\x77\x73\x63\x3c\x59\xeb\xf6\x64\xaa\xdb\x95\x86\x56\x51\x5d\x27\x15\x11\xaa\xa8\xb0\x83\x26\x0d\x2e\x39\x6d\x64\x25\xb8\xea\x1a\xef\xab\x34\x90\x5e\xdf\x72\x0f\x54\x65\x34\x24\x87\xf2\xd9\xfd\xb7\xf7\x09\x26\x80\x54\x25\xae\x62\x36\xb9\x16\xdb\x49\x67\xf9\x08\x2b\x36\xae\x34\x56\xc8\x27\xf7\x81\x80\x92\xef\x89\xe1\x02\x46\x34\x9b\x17\x41\x0e\x91\x3d\x91\x33\x2d\x09\x67\xc6\x94\x41\x8d\x14\x03\x09\x97\xf5\x5d\xdb\x14\x5e\xeb\x99\x34\x53\x18\x2b\xf1\xdf\x6e\xe6\x77\xc7\x34\x55\xd7\x7b\x66\xde\x2f\x8c\x86\x11\x14\xbe\xf8\x62\xbd\xbc\xe4\x04\x61\xea\x26\xf1\xe9\x5e\x88\xa3\x88\xf0\x4b\xd4\x05\x07\x76\xe3\x0e\x0e\x27\x97\xf1\x24\x29\x3d\x19\x84\x8a\x00\x65\x42\xe2\xc6\x33\x7e\x14\x63\xaa\x6f\xce\x3f\x52\x37\x89\x9c\x4d\xae\x01\x0d\x8f\x25\xef\x88\x15\x94\xf1\xa3\x48\xd5\xe6\x4b\x25\x26\xf2\x18\x58\x66\x80\xc0\x46\x06\x58\x38\xbb\x69\x06\x92\x45\x77\x90\x5a\xa8\x47\x8c\x77\x26\x5c\x4f\x81\x3a\x25\x17\x6d\xd9\x01\x32\x43\xbb\x7e\xe6\x14\x5e\xaf\xc9\xe7\x3a\xeb\xa9\x91\x4f\x2b\xb3\xde\x09\x57\xa2\x32\xbb\xce\x4a\xa5\xa9\x2a\xd7\x19\x94\x92\x99\x32\x9c\x10\x72\xd0\xcf\x6d\x82\x67\xe8\xd5\xc8\x34\xa1\xe4\x36\xe1\xf2\xd4\x35\x2a\x57\x4d\xb3\x95\x4a\xb9\x24\xd0\x97\x1b\xd5\x8a\xb8\x8c\x75\xed\xc8\x7a\x57\x50\x37\xe4\xd7\x8c\x11\xbe\xd0\x92\x0b\x66\x5c\x8e\xe2\xa0\x47\xd8\x35\x67\x85\x59\x3a\x5a\x68\xaa\x6a\xd5\xaa\x73\xa4\x18\xe1\xa8\x0f\x07\x2d\xaa\x71\xe7\x46\x64\x76\xf4\x25\x04\x77\x8a\xcb\x9d\x94\x66\x5a\xc0\x65\x7e\x87\x96\x4a\x33\xd5\x29\x66\xf7\xc6\x12\x84\x95\x99\x52\xc2\x5a\x30\x71\x19\x54\x2a\xcb\x94\x2a\x33\x63\xd6\x1f\x39\xbd\x13\x90\x0f\x4a\x41\xa4\xc9\x26\x15\xe7\xac\xaf\x98\x54\xfd\x75\xa7\x9d\xdc\x54\xaa\x48\x86\x0e\xdd\xef\xf7\xeb\x0d\xee\x31\xa8\x62\x21\xdf\x9e\xa9\x22\xd7\xae\xcc\xbb\x07\xb9\x8f\xa4\x79\x77\x7a\xda\x72\xdb\x26\x37\xef\x5c\x7c\x21\x71\x3c\x33\xac\xbb\x0d\x84\x2d\xeb\x8c\x6f\xbb\xdc\x0c\x08\x98\xfe\x8f\xcf\x54\x17\x42\xc9\xde\xcd\xaa\x85\xc2\x6a\x2c\x14\x1d\x4f\xf7\x48\xbe\xb7\xcc\x36\x87\xcb\x01\x85\x09\xc7\x0b\x09\x0e\xd7\xd9\x20\x09\xa6\xf8\x7f\x34\xd7\x0b\x5c\x05\xe9\x35\xe3\x92\x16\x66\x84\x95\x29\x2e\x27\xbe\xfb\x42\x82\x8f\xb4\x2c\x6b\x82\xe2\x06\xda\x0f\xd3\x1a\x88\x8e\xe5\xae\x02\x94\xb1\x4c\x82\x71\x0a\x31\x43\xba\x27\xb3\x94\x92\x7c\x4a\x14\xb2\x6e\xc1\x98\xa9\x1a\x35\xa9\x20\xdc\x56\xfd\xbe\x51\x31\x06\x83\x86\x55\x2a\x25\xa6\x8c\xb7\x42\x0b\xf9\x34\x0d\xf9\x16\x0a\x06\xa6\x50\x75\xb3\x2c\x29\x97\x82\x3c\xea\x61\x03\xa5\x22\xa9\x63\x6b\x3e\x17\x65\x30\x4e\xa6\x47\xe6\x30\x28\x28\x6c\x21\xe9\x8b\x85\x3a\xba\x8c\x80\x2e\xea\xfe\xb6\x9a\x61\xa5\xc7\x69\x47\x20\x0c\xb2\xe3\xb6\xd1\x12\x2f\x9f\x69\x2b\x90\x9f\x53\xba\x68\x58\xc4\x96\x1e\xea\x5a\x77\xf9\xde\x22\x68\x94\x1d\x7b\x77\x41\x0e\x8a\xa8\xd7\x9f\xe6\x84\x2c\x9a\x15\xb2\xcd\xf6\x47\xf5\x05\xa6\xb5\xeb\xb9\xee\xe1\xf1\x5c\xd7\x79\x64\x3c\xd7\x75\x3e\x12\x9e\xeb\x3a\xf7\x2d\xca\x5c\x8f\x3f\x83\x50\xeb\xda\x62\xd1\xfc\x19\xc9\x91\x79\x28\xbf\x6e\x28\x84\x7a\xa8\xbe\x6c\x08\x82\x3e\x14\x6f\x18\x40\x64\x84\xca\xeb\x42\x98\x7f\x5d\xf0\x05\x89\x25\x4d\x4b\xf7\x9e\xbe\xfa\xae\x3e\x14\xaf\xbe\xeb\xca\xab\xef\xfa\x8e\xbe\xfa\x2e\xef\xbe\xfa\x0e\x7d\xf5\x5d\xcb\xbe\xfa\xae\xdd\xcb\x57\xdf\x15\xcd\xab\xef\xca\x90\x57\xdf\x76\xf1\xab\xef\x52\xe6\xf5\x75\xe9\xbe\x3f\xff\x8a\xa6\xd7\x24\xe2\x68\xed\xc3\x78\xf8\x5d\xe4\x76\x5f\x9c\xa0\x22\xf4\x04\x5e\x18\x82\xfa\x00\x65\x29\xb1\x1c\x72\x12\x0a\x59\x7a\x31\xb0\x6a\xb8\x1e\x37\xec\x10\x49\x03\x3f\xb1\xfb\xe0\xfc\x28\x3c\x38\x1f\x1b\xfe\xe0\xfc\x5c\x67\x7a\x5f\x12\xb4\xa2\xc2\x07\x67\x03\x19\x6e\xeb\x74\xfa\x5e\x40\x1f\x6e\xdc\x28\x5e\x0e\x4e\x83\xa6\xb4\xf4\x2c\xa7\x3c\xb5\xf0\x67\x99\x5e\xf6\x09\x42\x7d\xc8\x90\x6d\x8d\xc4\xab\x52\xd1\xdb\x44\x91\xe9\x45\xb5\x8a\x8c\xc4\xa3\x22\xd7\xfd\xa8\x3a\x86\x9c\x19\x1e\x77\x66\x98\x9c\x79\x0e\xd5\x0d\x2e\x01\x30\xb8\x4e\xea\x5e\x54\xd1\x9a\xca\x65\xeb\xa0\xad\x3e\xce\x5e\x0d\xf6\xa2\xfa\xdc\x01\xfa\x72\x91\xaa\x31\x63\x78\x96\x12\x7a\xc4\xa4\x35\x26\x6d\x92\x1f\x20\x58\xd1\x4a\x03\xd5\x8d\x38\x48\x9a\x9d\x28\x76\xc2\xd8\x48\x45\xd1\x54\x2a\x74\xac\x97\x7d\xb7\x90\x8a\x75\x83\x24\xc2\xc0\x14\x8f\x28\x45\x9f\x3a\xb2\x7a\xc3\x4f\x48\xf2\xf5\x03\x39\x98\xf5\x5b\x3c\x20\x65\xac\x56\xb6\xa3\x55\x4c\x27\xae\x82\x0c\xcf\xa5\x10\x55\xbf\x1c\x73\xe1\xe8\xfb\x00\xeb\xdd\x5e\xfe\xda\x83\xea\x86\x78\xb2\x6c\x34\xc6\x59\xba\x99\x99\xb4\x00\x8c\xa2\x51\x34\x39\xfb\xa5\x49\x90\x9a\x19\xdf\x66\x47\xd2\x5a\xae\x20\x23\xea\x39\xb4\xf2\xea\x5e\x64\x84\xec\x3d\x79\x39\x89\xe3\x40\x24\x3a\xa1\xeb\xcc\x78\xf0\x76\xcc\x7c\x8b\x4c\xf2\xf8\xb4\x2c\xcb\x88\xdd\xc9\xca\xcc\x2c\xc7\x3e\xcc\xae\xd1\x72\x62\x67\x86\x2f\xe0\x0c\x0f\xe2\xc4\x63\xf3\x4a\xa3\x9e\x14\xff\xae\xbe\x2e\xfd\xa4\xf5\xcc\x8d\xd6\xaf\x66\x13\x26\xd6\x65\x76\x7b\x1a\xe7\x59\x9d\xf3\x7d\x72\x7d\xf5\xba\xc1\x71\x45\x56\x29\x26\xf3\xf8\x57\xbd\x7b\x4d\x73\xf1\x96\x53\xad\x28\x6f\x39\xe3\x2b\x9b\x8f\x31\x77\xf4\xe9\xa7\x20\x86\xf2\x5e\xe9\x30\xce\xc1\xf8\x24\xe3\x0b\xae\xef\xff\xc4\xc8\x23\x39\x52\xc3\x5f\xdd\x99\xfa\x1d\x26\xe3\x73\xbe\x6f\xaa\xf0\x54\x3b\xd6\x0e\x19\x6b\xdb\x3c\xb1\xa5\xee\xd3\x8e\x54\x91\x41\xe5\xba\xc6\x30\xec\xad\x17\x05\x43\x11\xc3\x49\xe2\xa0\x19\x74\x7b\x1e\xa6\x3e\x46\x82\x76\x5b\xfd\x12\x86\x60\x30\x9b\xf9\x20\x1c\x13\xa6\xdf\xaa\xfb\xc9\x5c\x62\xcf\x6b\x76\x70\xf3\x94\x81\xe8\xeb\xdd\xc8\x0b\xaa\x48\x52\x5d\x78\x4d\x55\xf7\xa3\x59\x94\x62\x67\x72\xb7\x9e\x14\x1a\xec\xa4\x0f\x14\x91\x34\x03\x3f\x0e\xc9\xa5\x0e\xcf\xed\xec\xdb\xbe\xac\x59\xca\x51\x68\x95\x0a\xe0\x4f\xc4\xeb\x1e\x4e\xeb\x51\xae\xf1\xd4\x34\x68\x7d\x19\xcb\x3a\x06\x22\x7b\xaa\x3d\xa2\xc5\x9a\x34\x4f\x4a\x3a\xb0\xd7\x7f\x36\xa3\x7b\xb9\x7d\x8e\xa1\x5e\x6f\x6d\x90\x2c\x53\x0d\x01\xdd\xfd\xb7\x4c\x09\x0e\xa6\x3a\xa0\xfb\xce\x56\x3a\xf3\x54\xce\xde\x1a\xf4\x17\xea\x29\x21\x63\x2e\x78\x76\xcf\x14\xaa\xca\x66\x31\x71\x10\x4a\xf3\x18\xe5\x6e\xdf\x71\x30\xa9\x92\x67\xcc\xe3\x49\xce\x47\x12\xcd\xb8\x4d\xb8\x4b\x74\x6d\x0d\x79\x52\x26\x98\xb4\xe5\x92\xeb\x21\xc2\x84\xfe\x30\xfc\x80\xda\xb2\x50\x57\x9f\xd4\x90\x45\x36\x71\x49\x7c\x0f\x53\x75\x10\x52\x24\xe9\xb5\x98\x6b\x9e\x99\x38\x74\x9a\xa7\x98\xe4\x89\xa0\x7a\x87\xac\xe5\x4e\x3d\x4e\x73\x99\xb9\x78\xa4\x3e\x6d\xb3\xd8\x2a\xa5\x12\xfb\x5b\xf6\x9d\x55\x77\x85\xca\xab\xb3\x09\xe5\x24\xc2\xe1\xa1\x15\xea\x4b\xc7\x40\x87\xec\xd3\xe2\x99\xce\x38\x7a\xe2\xc8\xe2\xa4\x61\x7d\x7c\xa6\xda\xef\x4b\xc9\x27\x43\xb7\x85\xfd\x78\x0f\xfd\x82\x4e\xa6\xef\xe1\xaa\x83\xe7\x91\xcf\xe2\x41\xe6\xb7\x93\xf9\x1d\x65\x7e\x37\x1f\x99\x37\xf4\xf5\xc2\x37\xf4\xe5\xdc\x1b\x3a\xf5\x19\x34\xd1\xe5\x4f\xe8\x42\xd8\x18\xe7\x9c\xa4\xa3\x50\x91\x3d\x22\xdf\xae\xcc\xfb\x07\xe3\x79\x7f\x7a\xda\x0a\xeb\x7e\x43\x72\x9c\xee\x0b\x39\xe4\xa2\xb9\x64\x62\xdb\xa5\xec\x1d\xc8\x42\x5c\x54\x27\x8d\xa5\x71\x7b\x2c\xcb\x82\x6b\xe6\xe9\x80\x1c\x01\xce\xed\xd1\xb2\x16\x32\x96\x3c\x27\x8a\x8f\x30\xea\x1e\x61\xfe\xc8\x47\xe5\x2f\x8c\xe6\xb7\x50\x0f\xb2\xc6\xf8\x74\x7c\x14\x3b\x51\x12\x12\x94\xea\xa1\x25\xea\x84\x13\xeb\x15\x00\x64\x3e\x42\xfb\x8e\xcb\x64\x84\x2d\x33\x46\xcc\x07\x28\x7d\x18\x0f\x4b\xa5\x29\xf1\x18\x29\x75\x8d\x7b\xdd\xd5\x78\x6a\x6e\x82\x02\x1c\xf3\x88\x2b\x3d\x54\xd2\x31\xf0\xd7\x67\x86\xa1\x91\x61\x70\x47\xc4\x69\xdd\x76\xfa\x9a\x9b\x43\x82\x9a\x37\x5d\xb6\x7e\x70\x52\x57\xd8\x43\x5b\x12\xe3\x16\x2d\x41\x1f\x87\xed\xb8\xdc\x0e\x7c\x56\x05\xf2\xe1\xd7\x67\xc8\xbd\xe6\xc7\xc8\x85\xdf\x9f\xc5\xee\x4a\x27\x46\x01\xcf\xec\xbe\x88\x91\x63\xc7\x65\xcf\xf5\xf1\xa7\xd8\xb7\x08\xbe\x3d\xed\x74\x5d\x6f\x7d\x02\x5c\xa1\xc2\x4a\xda\x86\x78\x0d\x0e\x91\x31\x69\x58\xfc\x97\xaf\xfc\x72\x95\x5f\x01\x32\xf6\xa4\xbf\x1c\xe5\x5b\x94\xaa\x38\x28\x5c\x98\xfe\x59\x9b\x47\xa2\x2c\xc7\x34\xa6\x46\xea\x5d\x97\xfd\x26\x13\x73\x28\x8e\x43\x77\x39\x89\xb1\xa9\xa5\xe4\x65\x49\x60\x68\xf7\x9c\x30\xc2\x47\xfc\x98\x6c\x87\x0a\x39\xc5\x79\xa5\x06\xe6\x20\x16\xfb\x31\xf8\x79\x35\xb9\x7f\x72\xf0\x04\xc4\x6a\x87\x97\xad\xdc\x46\xe0\xdf\x51\x68\x4d\x14\xee\x12\x50\x65\xf0\xad\xc1\x20\xa3\xef\x51\xf8\xc4\x2f\xab\x72\xd0\x4c\x1a\x15\x0f\xae\x43\x02\xde\xb7\x74\x2d\x07\x54\xd3\x65\x6c\x2d\x13\xfd\x1a\x64\x94\x6a\xc6\xd0\x39\x49\x5f\x16\xb5\x7a\x27\x64\x89\x0e\x50\xaf\x56\xa0\x78\x02\xee\x46\xf3\x79\xb9\x5a\xc5\x93\x9e\xe3\x9f\x32\xc5\x36\x60\x4f\x7e\x7c\x77\x14\x2e\x4a\xbd\xf0\x0b\xa0\xc7\x99\x6a\x83\xba\x6b\x1e\x72\xbe\x3d\x75\xd9\x55\x55\x63\x33\xce\xa1\x06\xea\xf8\x2a\xf7\xe4\x17\x2f\x8c\x40\x21\x26\xf7\x4b\x38\x24\x8b\xe4\x82\x14\x65\x55\x27\x98\xcb\x29\xab\x18\x53\xc1\x4e\xb0\x06\x54\xcc\x6d\x8a\xa9\xff\xb8\xbd\xf7\x40\xa9\x24\x7e\x1e\xb4\x9f\xa8\xf4\xfb\x73\xb3\xca\xea\x90\xef\xb9\xb5\x49\xb7\xb2\x7a\x46\x86\xe9\x2e\x69\x5e\x14\x70\x99\x89\xca\x0f\xc5\x0b\x29\x48\x66\x43\x76\xac\x15\xa7\x3b\xb8\x98\x44\xcf\x6a\xa2\x08\xad\x9c\x6d\x63\xf7\x10\xf7\x40\x69\x57\x33\xb1\xa9\xce\x53\x65\xca\xce\xb8\x87\xd5\xa3\x08\xe1\xb6\x98\x7b\xfd\x4b\xa3\xbb\x28\x38\xb8\x54\x32\xc1\x23\xa0\x7c\x35\x96\xd7\xdc\x56\xdc\xd1\x55\xcf\x99\x1d\xa4\x56\x23\xfc\x29\xc3\x4b\x4c\x27\xee\x7a\x27\x9c\x36\x36\x0d\x5a\x53\x6d\x32\xd5\xfb\x99\x9e\xdd\x87\x8c\xde\x69\x23\x75\x35\x3b\xbc\x64\xb5\x52\xf9\x8f\x79\x23\x5d\x94\x1c\xff\xa3\x59\x8b\xa9\x43\x56\x4e\x81\xed\xee\xa7\x72\xc1\x90\x35\x85\x24\xe6\xac\xdf\x37\x40\x57\x68\x55\xa3\x2b\xb4\xaa\xd1\x15\x42\x9e\x7d\xc2\x34\x13\xbb\xa9\x28\x0d\xa9\xd4\x49\x3d\x6c\x0c\x0f\x26\xad\x3c\x38\x20\x49\xe0\x4d\xdd\xe9\x0f\x2c\x74\xc2\x4c\xe4\xea\x15\x7a\x66\x1c\x6d\xa1\xc2\xd2\x16\x4a\x64\x0d\x9e\x4c\x3b\x79\x12\x64\x1c\x85\xa1\xe1\x55\x0c\x6f\x51\xbd\xed\xeb\xc1\x16\x5b\x53\x8a\x0f\x6f\x49\xb9\x4a\xeb\xce\x16\x1b\x92\x4b\x8f\xd3\x4e\xaa\x71\x15\x6d\xab\xa5\x54\xe3\x4a\x69\x2b\x91\x35\xae\x4e\x0e\xd5\xb8\x3a\x86\x4e\x6e\x53\xe3\x6a\xa4\x82\xd5\x98\xfe\x64\xd3\x20\x23\x7e\x33\x09\x43\xec\x37\xd7\x67\x5a\xb8\x19\x50\xfd\x09\xed\xe7\xbc\x0b\x5a\xf6\xe2\x96\x53\xe0\x92\x54\xb7\x50\x1b\xb5\x50\x07\xf5\x50\x17\xad\xa2\x75\xb4\x8c\x56\xd0\x12\x5a\x43\x8b\xe8\x04\x3a\x86\x4e\xa3\x43\xe8\x24\x3a\x85\x8e\xa2\xe7\xd0\x97\xd0\x71\x74\x18\x1d\x41\x4f\xa1\x67\xd1\x33\xe8\x69\xf4\x22\x7a\x1e\x3d\x89\x3e\x85\x3e\x93\xb2\x4d\x2f\x48\xef\x9b\x2f\x7c\x54\x95\xbf\x3e\xbb\xab\xfc\xf5\xf0\x28\x7f\x7d\xec\x91\x51\xfe\xfa\xd8\x47\x42\xf9\xeb\x63\xf7\x4d\xf9\xeb\x93\x0f\x93\xf2\xd7\xe7\x1f\x0a\xf5\xac\x4f\xab\xda\x25\xe6\xa7\x6d\x5d\x84\x76\xd0\x10\x2a\x95\xb8\xaa\xd0\x0a\x8e\x17\x24\x38\xe7\xa3\x98\x8d\x2c\x6f\x48\x30\x3f\x95\x3b\xd0\x1d\x27\x92\x48\x04\x38\xd6\xd4\xb3\x35\xf0\xdb\x26\xb6\x31\x26\xd8\x73\xde\x9a\x97\x50\x33\xc1\x11\x84\x29\xe7\xba\x4d\xa3\x28\x0e\x9f\x14\x10\x7e\x86\xc9\x00\xe8\xff\xac\xc1\xd0\xaa\xb9\x0c\x65\x0e\x98\x96\x19\x0a\xfb\x7d\xf9\x06\xf9\x2f\x45\x8d\xed\xbf\x76\x54\x8d\xed\x3f\x77\xd5\xd8\x86\xaa\xb1\xd1\xd5\x57\xf4\xd8\x30\xbe\x97\x8a\x6c\x9f\xd3\x28\xb2\x7d\x6e\x88\x22\xdb\x0b\xc5\x8a\x6c\x5f\xc8\x28\xb2\x7d\xe1\xc3\x53\x64\xa3\xb3\xc8\x37\x30\xc6\x1f\x86\x2a\x5b\x8c\x3f\x24\x5d\xb6\x10\xef\x2a\xb3\x3d\x0a\xca\x6c\x3e\x1e\xae\xcd\xd6\xeb\x7d\xfe\x93\xcf\xad\x7c\xe1\x90\x5e\x9b\x8d\x3b\x31\x30\x90\xd1\x4b\x96\x3d\xb7\xc9\xac\xf1\x65\x6d\xb6\x43\x92\x47\x06\x03\x19\x29\x94\x77\xbd\x72\x22\x63\x70\xff\xa4\xec\xa5\xc1\x40\xc6\x49\x6e\xda\x03\x5a\x74\xe0\x5a\x3b\xd5\x71\xcb\xbb\x3f\xc8\xf9\x52\x90\x75\xe3\x74\xee\x08\x46\xb9\x4d\x95\xdc\x05\xe4\xb4\xf0\x0a\x8c\xff\xb5\x6e\x03\x32\xfe\x28\x72\x5e\x27\x32\xbe\x08\x54\x07\x02\x19\xbf\x01\x77\xed\x35\x43\xf6\x95\x90\x75\xd3\x9a\x71\x56\x90\xd7\x50\x94\x9d\x5a\x48\xbe\x1e\x64\xbf\x08\x3a\xc7\x06\x39\xff\x17\xc5\x3e\x39\x0a\x9d\x7a\xe8\xfd\x62\x64\x9c\x6e\x68\xdc\x64\x68\x9c\x49\x64\xbc\x47\xe8\x3c\x2d\xe8\x1c\x81\x14\x69\x4f\x1e\x40\xc6\xb2\x13\xb9\xcd\x99\xf4\x84\x30\xc7\x27\x55\x70\x7c\xb2\xdd\xae\x6b\x9d\x78\xe4\xc6\xa3\xf8\xea\xe0\x8e\x38\xc6\x1a\xa4\xbc\x9a\xf9\x01\x73\x1b\xff\x02\x87\x04\xc2\xb5\xad\xd2\xc1\x46\xde\x8f\xc4\xde\xc7\x1b\x5c\x7b\x47\xf5\x12\xcb\xe4\x5a\xac\xf3\x43\x7d\x30\x70\x0f\xb0\xdc\xcb\x2b\xf7\xad\xb0\xaf\xb2\x5d\xef\xae\xe0\x11\x81\x6b\x9c\x54\x25\x2f\x09\xb3\xa9\xe2\x94\xb4\xad\x3b\x8a\xaf\x97\x74\xeb\x87\x38\x4a\xbc\x58\x82\x0e\x07\x09\xdd\xaf\x80\x9e\x0c\x64\xb8\xd1\x21\x1a\x62\xd8\x40\xb2\x82\x11\x32\x3c\x27\x8a\x19\x16\xc4\x2d\x48\xe2\xef\x0b\xb2\x22\x4c\xaa\x31\x9a\xce\x90\xd4\x99\x46\xce\xe5\xaf\x9c\xc4\xbb\x97\x4f\x62\xfd\x94\xd2\x79\x87\xa5\x24\xd1\xf3\x46\xd6\xb5\x2f\xe8\x48\xa5\x85\xb3\x63\x91\xfd\x4e\x54\x25\x15\x53\x31\xc2\xb4\xec\x92\xb8\x4d\x0e\x89\x8f\xa9\x3e\x69\xd6\x3b\x09\xf5\xfd\xac\x53\xdc\x51\x55\x92\xab\x19\x5d\xaf\xad\xab\xf4\x49\x4e\xe2\x51\x5d\x5c\x47\x74\xbf\x55\xf7\x0f\xd3\xb5\x55\x7d\x70\x30\xef\x24\xaa\xf2\xe1\x6c\x66\x6e\x8d\xc9\x21\xaa\x6c\x33\x0e\xe4\x93\x55\x6c\xb9\x62\x5a\x8b\xdf\x04\xcb\xeb\x06\x77\x82\x22\x7f\x77\xf9\xb5\x00\x1e\x50\xe4\x6f\xa0\x1d\x0b\x4e\x4e\x72\x5f\xbc\xb4\xd2\xb9\xaa\xf2\x39\xbd\x41\xc0\x21\x0a\x7c\x64\x8a\xb8\xd9\xe3\x3f\x37\xd7\x90\x94\x73\xb9\x2f\x11\xaa\xbf\x06\x51\xed\x99\x17\x95\x54\xb7\x8f\x3a\x53\xd1\xe8\xb8\xc9\x8a\xac\xaa\xf2\xf2\xdc\xe3\xb9\x7d\x22\x9a\xdf\xdf\x40\x46\xc5\xc8\xaa\x76\x82\xca\xd9\x7e\xe9\xa4\x2d\x31\x05\xac\x63\xea\x29\x9a\x3b\x90\x55\x53\x7b\x7c\x1b\x65\x34\xed\x9c\xc8\x1c\xec\xb9\x27\xc6\x68\x68\x8b\x85\x64\xbf\x49\x0d\xe1\x41\x65\x48\x81\x1e\x0e\xdb\x41\xd8\x3d\x01\x0a\x84\x05\xc7\x3e\x53\xc3\x81\x21\xca\x7e\x70\x6e\x0a\x75\xfe\x0e\x64\x54\x13\xf3\xce\x7b\x74\x05\x52\x55\xc5\x34\x3f\xb5\x97\x90\x4e\x3a\xb9\x78\x53\x4a\x4a\xe3\xfb\x66\x96\xec\x8c\x54\xe9\x5f\x9c\xaf\xbb\xb9\x50\x34\xcd\xec\xcd\xba\xd8\xc9\x7b\xd6\xd9\x86\xba\xb1\x82\x9f\x48\x53\x10\xbe\x62\x04\xa5\x99\x27\x9a\x87\x50\xb2\xdc\x5e\x65\x94\xef\x2c\xad\xd9\x4a\x4a\xa7\xcb\xd6\x2e\x45\x1e\xc4\xc6\x71\x0c\xc6\x97\x4d\x71\x07\x95\x71\x59\xb5\xb7\x81\x8c\x67\xd8\x18\x27\x79\xe4\xbc\x72\x59\x75\xa2\x2f\x5c\x09\xa9\xde\xa7\xf6\x0d\xf5\x1e\x95\xdb\x67\x8a\xab\xab\xb9\x6c\x26\xae\x16\x3b\xdc\xe3\xd4\xac\x14\xc7\x40\x3f\xe4\xf1\xfd\x25\x65\x75\xed\xf7\x67\xf4\xf8\x65\xcf\x49\x69\xde\x9c\x1a\x7d\x95\xe4\x1c\xe1\xc6\xbd\x92\xd5\xcd\x2f\xd6\xdd\x87\xc6\xd4\xbb\xf4\x70\xe0\xc7\xdc\x77\xff\x88\xbb\x54\xa2\xa8\xb7\x73\x87\xf2\xe2\xd9\x4b\x14\x19\xdc\x43\x56\x15\xf4\xc0\xc9\xf9\xd9\xb1\xa3\x2f\xc7\xb0\x79\x82\xa3\x01\x6a\x1f\x92\xa2\x6b\x15\x25\x30\x7e\x48\x98\x44\x71\xcf\x60\x3b\x85\x21\x9e\x10\x08\x62\xc8\xa9\x2e\xf6\xee\x37\xda\x2a\xad\xc8\x93\x9f\x1e\x0b\x6c\x81\x7b\x56\x03\x1e\x54\x73\x3e\xdc\xc6\x3b\x68\x5b\x3a\xd4\x63\x9c\x4a\xdd\xe1\x97\xdc\xd6\xa5\x77\x56\xd1\x19\x7a\x42\x31\xda\x98\x93\xae\xe0\x6e\x12\xc5\x27\x3a\xc1\x9a\x2a\x1f\xd9\x5a\xd8\x89\xf1\x2e\xa6\xea\x81\xec\x2e\x64\xd3\x3f\xd3\xe5\x8d\xde\xd5\xee\x93\xf7\xdf\x01\x69\xff\xe5\xfc\x2c\xca\x66\x47\x29\xa9\x91\x8e\x3c\x75\xfc\x36\x62\x52\x0f\x14\x98\xc7\x14\x98\x05\xe9\x66\xfd\xd9\x00\xda\x8d\xb6\x35\xe5\x72\x95\x39\x67\x9b\x5b\xb7\x76\x4b\xad\x8a\xc0\x38\xb3\xc8\x68\x41\x36\xa5\x4c\x2d\xe2\xe0\xcc\x19\x45\xd6\x69\x39\x13\xc2\xe1\xd5\xeb\x10\x2c\x37\x04\xf4\x83\x19\xe6\x7c\x34\x92\x76\x8f\xdc\x17\x11\xdc\xb0\xa8\x2b\xa9\xbd\xda\x90\xe9\x2b\x1a\xc2\x9c\xe6\xd3\x78\xe6\x76\x63\xef\x96\x91\xa7\xe9\xf1\xec\x69\x4a\x17\x65\xa7\x8e\xd1\x3e\xb8\x30\xab\xdc\x7e\x6e\x88\xa1\x96\x2c\x0c\xa8\x17\x13\x7e\x19\x41\x1e\x15\xa1\x1e\x11\xf6\xc8\x1a\x31\x9c\xc0\xe8\xba\x10\x60\x19\x09\xac\x6e\x9a\xc6\xa1\xd0\xe0\x8f\x2a\xbf\x30\x0c\x31\x07\x12\xf2\x55\xc4\x21\xbc\x27\x1a\x21\x54\x75\x5f\x76\x79\x94\xd9\xa2\x1d\xdf\x22\x0b\x90\xdb\x85\x29\xd5\x25\x5c\xb0\xea\xf6\x6c\x7e\x27\xee\x47\x8f\x8f\xa0\xb9\xf6\xa9\x24\x57\x21\xd1\x35\xd4\x36\x30\xbf\x85\xa9\xdb\xd1\xbb\xa6\x2e\xf6\x0a\xec\x9e\x31\x40\x17\xc6\xa4\x73\xe3\x23\xf1\xbd\x5b\x22\x2e\x8b\xc3\x10\xe9\x83\x0f\x6d\xcf\x33\x28\x8b\x3e\x04\xf6\x5b\xb2\x41\x97\x62\xe9\xa5\xd8\x70\x51\x76\x0b\xbf\x40\xab\xf1\x9b\x0e\x2d\x12\x45\xee\x0a\x49\xee\x38\xd1\xdd\x1b\x74\x09\xfb\x2d\x17\xdb\xf9\xf7\x47\xad\xc2\x74\xdc\xc1\xfe\x00\x05\xba\xfc\x93\x2e\x36\xb1\x25\x94\x46\xf4\x4a\x07\x64\x28\x94\x70\xb7\x06\xc8\x19\xbb\xd5\xa6\xe3\x37\xb1\x37\x40\x11\xb6\x4d\x61\xc6\x45\x2d\xdc\x70\x2b\xb5\xe3\xe2\x09\x51\x36\x21\xc9\x26\x78\xd9\x84\x66\x36\xa1\x9d\x4d\x68\x65\x13\x3a\xd9\x84\x5e\x36\xa1\x9b\x31\x28\x5b\xcd\xfc\x5e\xcf\xfc\x5e\xce\xfc\x5e\xc9\xfc\x5e\xca\xfc\x5e\xcb\xfc\x5e\xcc\xfc\x3e\x91\xf9\x7d\x2c\xf3\xfb\x74\xe6\xf7\xa1\xcc\xef\x93\x99\xdf\xa7\x32\xbf\x8f\x66\x7e\x3f\x97\xf9\xfd\xa5\xcc\xef\xcf\x3c\x32\x06\x75\xff\xc5\x0d\xea\xa2\xd4\xa0\xce\x47\x01\x72\xec\xff\x34\x23\xc9\xa0\x2e\x92\xec\xc6\x72\xda\x19\xf7\xc0\xb1\x15\xd3\xba\x88\x2c\x14\x63\xf3\x0b\x66\x68\x3b\xec\x58\xd2\x54\xea\x93\x16\x69\x24\xe9\x08\x02\xcf\xd7\xa8\x4e\x30\xb5\x39\x13\xb7\x25\x49\x13\x3f\x20\xaa\x3a\xcb\x47\x20\xc4\x14\xa9\x49\x02\x83\x10\x77\xac\x4e\xf3\x00\x3c\xb0\xd0\x27\x49\x6f\x48\xe3\x10\x2f\xbe\x25\xde\x70\x0f\x23\xf2\x45\x93\x43\x48\x31\xd1\x91\x7c\x96\x1e\x76\x62\xd7\x5f\x39\xdc\x71\x42\x03\x3d\x95\xfd\x8e\x4f\xf7\x5c\xba\x60\x27\xa4\xa7\x94\x67\xb3\xb9\xd8\x50\x8f\x53\xe2\xc1\x40\xcf\x64\x3e\xa7\x0f\x32\x4f\x67\xbe\x88\x47\x9b\x17\x33\x1f\xe4\x87\x9b\xe7\xb3\x85\x72\xef\x38\x4f\x66\x72\x28\x8f\x47\x9f\x82\x8f\x6c\x19\x2d\xd0\x8f\x6f\xd1\xc7\x74\xae\x2e\x20\xbe\x51\xbb\x40\x98\xd0\xe7\xc2\xa0\xeb\x46\xb8\x28\x17\x9f\xd4\x91\xd9\x28\x8b\x5d\x9c\x89\xc5\x93\x3f\x0e\xaf\x44\x4e\xb3\x83\x0d\x74\x06\xe8\xb0\x5a\xbd\x81\x80\x68\x23\x60\x3a\x2b\xb5\x50\xb2\x27\x19\x58\x28\x4c\xad\x30\x23\x64\xfa\xdc\x0a\x73\xcd\xf5\xbc\xa7\x70\x14\x87\xc1\x7a\xce\xdc\x07\x6c\xd7\x74\x63\x29\x95\x02\xa6\xd1\xa4\xfd\x6a\x95\x4a\xdc\x60\x87\xfa\xec\x38\xb6\x1c\xe1\x70\x15\x87\xc5\x25\xd2\x9b\x8c\x9a\xbe\x80\x09\x66\x6a\x8e\xc4\xca\x1f\x76\x3c\x6f\xd9\x69\x9e\x92\x4d\x34\x33\x15\x09\xfd\x8e\x4f\x9b\x18\x9b\x91\xac\x97\xaf\x8e\x95\xa9\x63\xe9\x1d\x56\xab\x36\x76\x3b\xe2\xa3\x9a\x99\x20\xf2\x7d\xa5\x3a\xac\x2e\x95\x62\x19\x25\x7d\x1a\xaf\x2f\x07\x4e\xd8\x5a\x5c\xa5\xae\x75\x85\x1c\x9f\xfa\x77\x26\x43\x29\x95\xcc\xb9\x03\xb2\xb7\xe7\x7e\x7f\x6f\x45\xfe\x6d\x31\xbc\xab\xda\x42\xc2\x9c\x85\x38\xc2\x72\x9c\x0c\x33\x3b\x5c\x78\xba\x1e\x63\xbc\x34\xa7\x66\xc0\x87\x99\x23\xe7\x21\x23\xa6\x3d\x11\x67\x10\x94\xcb\xb2\x1d\x19\xe6\x34\x59\x6f\x5d\x8a\x42\x5b\x35\x2c\x9c\x28\x32\xbe\x34\x63\x8d\xfd\x65\x88\x32\x7d\xc6\x16\xb7\xc8\xcc\xe1\x71\x6e\xc9\xa7\xb3\x0f\xac\x85\x56\xd6\x3a\x74\x88\x9d\x26\x28\xb8\x4d\x69\xcc\x2f\xfb\xfd\xa9\xea\x94\xde\x30\x33\xdf\x53\x70\xc2\xbc\x14\x06\x49\x8c\x0b\xb3\x65\xfa\x95\x79\x0c\xd2\x4f\xf6\xd6\x4c\x46\xf3\x3d\x63\x26\x87\x47\xba\x5d\xdc\x72\x9d\x18\x2b\xb6\x87\x13\x54\xc3\x91\xda\x8c\x36\xe3\xd0\xfb\x34\x5e\xef\xf7\x71\x99\x90\xe1\x9f\xc6\xeb\xe3\x96\x1c\x66\x00\x49\x4d\xae\x2d\x66\x83\xc7\x06\x7b\x72\xbd\xe7\xfa\x2b\x27\x9d\xe8\x54\x19\x1e\xd7\x4c\xcc\x6a\x23\x83\x9d\x9b\x9d\x92\x0d\x26\x65\x43\xb7\x11\x53\xcb\xb7\x35\x5f\xf0\x13\x3d\xa7\x99\x3b\x06\x38\xb7\x35\x0a\xdc\xd1\x03\xf2\x75\x23\xc0\x58\xae\xbf\xd2\xef\x9b\x90\xc6\x6e\x4b\xaa\x70\x37\x96\xcb\xfa\x51\xdb\x80\xc9\x90\xb7\xd5\x85\xaa\xda\x05\x52\x93\xda\x03\x92\x32\xa4\x03\x4b\x3c\x22\x4c\x41\xeb\xe9\x25\x46\xd6\x85\x5b\xf8\xa6\xa9\x36\xce\x59\xd0\xf2\x4e\x66\xc9\x00\x9e\x55\x83\x03\x2d\xa9\x43\xea\x03\x72\xfe\x52\x64\x16\x9f\xa4\xa6\x09\xf5\x70\xb0\x12\x96\xdb\x36\x5d\xac\x49\x4f\xcf\x92\x86\x86\x50\x0f\x13\x94\x90\x8c\x6f\xe2\xfc\xe7\x89\xc2\xba\xc0\x7e\x14\x68\x27\x7b\xaa\x82\x8a\xb2\x52\x0e\x54\xd6\xcb\xb4\xce\xe0\xa2\xee\x95\x4a\x26\x4e\xeb\xac\x22\x5c\xce\x12\x98\x76\x08\x89\xd9\xd9\x1d\x58\x56\x99\x29\x51\xcb\xea\xd5\xe3\xb6\x44\x8a\x33\x4d\xe8\x91\x56\xc0\x12\xf1\x90\xed\x46\x6e\x85\x95\x60\x51\x7a\xd2\x47\xec\x58\x70\x75\x21\x70\x6c\xf1\x25\x9a\x55\x0b\x18\x7f\xff\x70\x6a\xc7\xd2\x6b\xba\xe7\x33\xd2\xc5\xcb\xec\xaa\x2c\x39\x64\xe7\x6c\xea\x71\x8b\xef\xab\xed\x53\x77\xf7\x94\xb8\xcb\xed\x77\x9e\x73\x22\xce\x6e\x57\xb2\x87\x04\x7a\xc2\x2d\x72\x75\xa8\xd8\x8a\x8c\x43\xf4\xd7\x69\xb5\xd2\xce\x4a\x9d\xc2\x64\xd7\x16\x76\x67\x60\x0d\x23\x37\xe3\xe2\x6f\xc5\x67\x4b\xb3\x48\x74\xcb\xe7\xd8\x31\x76\xa0\x52\x42\x29\xb4\xd2\xb3\x20\x76\xa2\x5a\x02\x94\x9e\xb3\x24\x96\x66\x17\xc8\x28\x58\x3f\xf6\x42\x8e\x20\xd7\x6a\xf1\xda\x6b\x3b\x92\xab\x40\xea\x8c\xc8\xaa\xbb\x12\x30\x5f\x4b\xe6\x4d\x20\x75\xc1\x65\x71\xa4\x2f\x71\x76\x36\xce\x8d\x51\x4f\xd7\xaa\x21\x3f\x32\x27\x5f\x58\xaa\xab\xee\x39\x78\x6c\x36\x13\x67\xa9\x46\xc9\xc5\x01\x30\xea\xc3\xfc\xdb\x14\x39\xa4\x58\x28\xf4\x54\x91\x6d\xd0\xaa\x01\x9d\x9b\xf6\x39\xe3\xf4\x22\x64\xd1\x56\x14\x52\x52\x09\xa1\x07\x78\x2d\x5f\x01\x8f\xc9\x22\xcd\xa3\x08\xe6\x56\xe4\xf9\x46\xad\x8a\xe0\x38\x1e\xd9\xa4\x54\xca\x12\x94\xbc\x36\x8d\x43\x01\xf8\x92\xda\x56\xfa\x45\x11\x52\x1e\xab\x2b\x2e\xe1\xec\x61\x6e\xe8\x1e\xe3\x9e\x12\x62\x11\x21\x05\x3d\x66\x34\x1e\xb3\x54\xdb\x2c\xb3\x82\x42\xee\x33\x8b\xdd\x4f\x96\x19\x97\x81\xe7\x46\xcc\xb8\x87\x06\xc8\x11\xd6\x19\xbe\xda\xa9\x43\x9e\x67\x1a\x75\xea\xd6\x06\x5e\xe4\x68\x6d\x0d\xc3\x2a\xbb\x31\xee\x9a\x2e\xad\x22\x60\xa5\x1d\x3b\x28\x07\xed\x76\x84\xe3\x93\x41\x6f\xc6\x4f\x61\x14\xd9\xce\x34\xff\xc6\x9c\xfe\x4c\x44\x1f\xf7\x95\x84\x69\x5f\xcc\x55\x6f\x41\x82\xed\x68\x46\xcd\x58\x73\x0e\x4a\x9f\xa9\x11\x5e\x9a\xd9\xa1\x1e\x6d\xd2\x65\x56\xe2\xfb\x15\xef\xde\xcf\x0a\xef\x4c\xea\xaa\xdb\xa1\x44\x95\x49\x75\x6d\xdd\x4d\x93\x54\x98\x1a\x38\xf1\x0e\xaa\x7a\x71\x23\x0e\x18\xf2\xa5\x9e\x66\x2e\x5d\x52\x9e\x09\x4c\x09\x87\xed\x2b\x3b\x51\xa2\x76\xf4\x14\xa5\x4f\xc5\x35\xa6\x30\x57\x91\xf1\xa0\x24\xd5\x29\x95\x4c\x47\xbd\x51\xa5\x8f\x82\x73\xcb\x7d\x01\x49\xbd\xa9\x5e\x40\x52\x06\x2e\xed\x60\x07\xc4\xb5\xb3\xe3\x32\xfd\x2c\xae\x98\x70\x4b\x25\x17\x9b\xae\xb5\x60\x66\x69\xc4\xd1\x83\xb8\x37\x63\x70\x91\x9b\xbd\x2a\x09\x5b\xac\xcb\x6a\xdb\x2e\x35\x19\x57\xc4\x89\x36\x46\xa1\xbc\x52\xa1\x6e\x99\xc2\x2d\xd0\xa5\x43\x9b\x1e\xd1\x10\xa9\xd2\xaa\x15\xf0\x1f\xbe\x20\x7d\xa4\xde\xbb\xc5\x4c\x89\x74\x1e\xc7\x8c\x7f\x95\x5a\xbb\x49\x47\x59\xe2\x5a\x87\x86\x23\x1b\x2e\x54\x5a\xc8\xb0\xb7\xcf\xf7\x9e\xe2\x51\xc9\x32\xc1\xc7\xb2\x39\x17\xfd\x18\x87\x2c\xe3\x13\xc3\xf2\x9d\x74\x96\x59\xae\xd9\xc7\x87\x56\x77\xe2\x30\xcb\x96\x09\x11\xa6\x54\xa4\x1f\x68\x3e\xd8\x98\xa6\xf4\xe2\x89\xc3\x77\x53\x9a\x0c\xb6\x50\x7c\x86\x05\x23\xa1\x8f\xc0\x96\x7a\xdb\x1a\x15\x3c\x2d\x1e\x22\x1a\x41\x53\x55\x4d\xcf\xa8\x3c\x42\xdf\x33\xfe\x2a\x04\xc2\xb3\x52\xa9\x6e\x9c\x5c\xfc\xdc\xc9\x43\xc7\x17\x0f\x19\xc8\x38\xf2\xec\x73\xcf\x9f\x34\x1a\x65\xd7\x6f\x7a\x49\x0b\x47\x26\xcf\x57\xf6\x83\x16\x7d\x26\xb5\x16\x86\x75\xa7\x36\x6a\xd4\x84\xab\x1f\x36\x1c\x8d\x30\x73\xe4\x04\xe9\xd6\x86\x6d\xd9\x91\x8b\x63\x9d\xd1\x49\x4f\xf3\x7e\xb3\x80\x2a\xc9\x1c\x93\x6a\x8d\x86\x96\xa3\x14\x84\xd3\x5a\x25\xd8\x8f\x1d\x58\x42\xa8\x72\x5a\x02\xa7\xb4\x84\xd2\x6f\xdf\x9a\x48\x47\x96\x12\xcd\xae\x3c\x60\x41\x19\x71\xfb\x60\xac\xba\x06\x93\xb7\x65\x16\xa9\x14\xb1\xa3\x48\xe6\xb7\xf2\xc1\x94\xfb\xfd\x50\x93\x3a\x81\x75\xee\x57\xe2\x85\xd8\x14\xaf\x13\xb4\x52\x3e\x54\x69\xa0\xb5\x2c\xad\x8e\x38\x99\x5d\x03\xf9\x0e\xfb\x35\xb0\x6a\x71\x8e\x85\x90\xc9\x7a\xf6\x36\x52\x7c\xff\xfb\x39\x47\x9a\x1f\x9f\x95\xb6\x61\xea\x34\x73\xb6\x51\x2a\xc9\xbf\x90\x7c\x9b\x42\x18\x67\x69\x1a\x98\x2a\x54\x88\x02\x3b\xc1\xa6\x8b\x72\xe9\xd9\x9b\x98\x79\x75\x83\x57\x49\xba\x37\x58\xcf\x41\xf8\x61\x99\xb8\xdf\xaf\x37\x50\x8c\x02\xea\xee\x80\x07\x0f\x74\xfd\xd6\x67\xdd\xb8\x73\x8c\x92\x71\xba\x51\x22\x41\xb2\xe6\xc6\x39\xa7\x1d\xe7\x9c\x32\xce\xb9\x06\x1b\x41\xda\x5d\xb2\x8a\x87\x3a\xd8\x01\x99\xce\xd1\xdc\xc8\x4f\xf2\x0c\x7c\xa8\xc5\x5f\xc6\x99\x04\x1f\x1a\x4a\x87\xa9\xcc\x05\x72\x73\x0e\xe3\x52\xf9\x2d\x9f\x90\x10\xaf\x60\x9f\x79\xfd\x38\x9e\xf8\xb1\xdb\xc5\xe5\xae\x13\x9e\x4a\x2f\xf5\x49\xcc\x4d\xf1\xfd\x34\xa2\x1c\x7f\x22\xd6\x94\x5e\x0b\x9d\x9e\x4a\x8e\x50\x5f\x10\xf3\x56\xb4\xe6\x52\x57\x00\x14\x3f\xd8\x98\x7a\xb3\xb1\xce\x34\x9d\x08\x4f\x56\x6a\xdc\x9e\xd9\xae\xa2\xc0\xe6\x97\xba\xf4\x78\x4a\xdd\x77\x02\x9a\x40\x1e\x93\x4c\x98\xce\x8c\xbd\xf7\x80\x85\x12\x1b\xdc\x13\xb4\xc3\xa0\x4b\x32\x93\x4c\xa6\x63\x21\x33\xb2\x13\xe1\xef\x54\xa9\x6e\x21\x61\x67\x45\xf7\x02\x3b\x9d\x58\x7c\x1b\x54\x17\x4c\xdf\xae\xa0\xc0\x36\x0c\xab\x16\xd8\x09\x1a\x26\xd9\x4a\x93\xe5\xb0\xa0\xfe\xb4\x9e\x21\x52\x4b\x80\x58\x32\x5b\xbf\x7c\xbb\xd5\xa6\x86\x36\x0e\x87\x7e\x5b\xed\x71\x41\x42\x8d\x0c\xb6\x70\x5e\xec\x21\x33\x86\x34\x73\x6c\x07\x29\x59\x6c\x7a\xac\xb4\x7a\x28\x8b\x7a\x15\x21\x1f\x4d\x55\x2c\x4b\x48\xac\x33\x63\x5e\xc8\x26\xe7\xb1\xbe\x67\x65\xe7\x32\x77\x05\x78\x16\x38\x9b\x2c\xe4\xfd\x3d\xaa\x88\xc0\x76\xaa\x5d\xdd\x8b\xcc\x0a\x21\xb7\xdd\x2e\x0e\x92\xd8\x32\xab\x78\xce\x9a\xa0\xdb\xb7\xba\xb7\x78\x37\xd9\x86\xa1\x9d\x1c\xc3\x80\xb2\xfb\x6b\xe4\xaf\x81\xfd\x96\x51\x53\xfc\x85\x9a\xd6\x60\x60\x21\x26\xb1\xa0\xa2\x2b\xfe\xec\x90\x53\x55\x1c\x3b\xf8\x68\xb6\xa8\x2c\x94\xc9\x7e\x13\xa8\x43\xaf\x0d\xaf\x6f\x33\xad\x4e\x57\xaa\xdf\xcf\x28\x2d\x4a\xaa\xf1\x92\x1f\x4d\x45\xa7\x7a\xec\xb1\x29\xe5\x16\x0c\x82\x50\x27\xe3\x60\x12\x9e\x48\x6a\x05\x19\x45\xb3\x39\x0d\xdd\xf1\x5b\xce\x16\x5d\x30\x9e\x0d\x26\xe1\xe2\x9e\x6c\x07\x09\x59\xd9\xe2\xdc\x92\xfb\xc8\x9c\x7d\xf4\xd8\x5d\xc8\x95\x95\x57\x36\xf7\x31\x6d\x52\xab\x9e\xaf\x6f\x76\x4a\xe6\x79\x4b\x25\xd1\x7e\xfa\x9c\x04\x58\xb3\x54\x9a\x9a\xca\xce\xb6\x48\x53\x26\x5f\xaa\x45\xb6\xe3\xcd\x75\x4f\xd2\x63\xdf\x5a\xdf\xe4\x5a\x4b\x25\x33\xd7\x2d\x98\xa5\x2c\xb3\xc9\xd1\xbf\xf4\xac\x2e\x2c\xa3\xf3\x2e\x3d\xf5\xb3\xf0\xf1\x4a\x56\x5c\xc7\xa4\x25\xb0\x86\xfc\x75\x53\xe1\x67\xa1\x3b\xfc\x09\x4b\x48\x5b\x34\x5a\x2c\x3c\x13\x1f\x29\xfc\xe4\xa2\x04\x4d\x01\xe9\xd9\x2f\xb7\x72\xea\x53\xad\xa6\x30\x0c\x7f\x22\x7d\x7f\xe1\xd9\x4c\xb9\x79\x94\xad\x77\x62\x44\xc5\xb6\xa0\x76\xb1\x50\xc5\x51\x2a\x94\x94\x72\x32\x75\x0f\x24\xe7\xe8\x52\x09\xb1\x62\x42\x0f\x7c\x08\xa6\xca\x3e\xc2\x2d\x88\x65\xc9\x7c\x90\xdd\x12\x07\x99\xbc\xca\xb3\x63\xad\xde\xc8\xee\x19\xb0\xa1\xd7\x76\x83\x5e\xd5\x4d\x92\x41\x10\xb3\xf2\xc6\xb5\x72\xde\x85\xc7\x1b\x0e\x7f\x1a\xc8\x8f\x47\x3c\x1a\xe4\xfc\x2c\x13\x56\x52\xa7\xf7\xa8\x7f\x3a\x53\x47\x9f\x52\x10\x5c\xae\xd0\xb0\x4a\xa5\xcf\x2b\x2e\x67\x7d\x0b\x05\x34\x0d\x05\x16\x8a\x14\x97\xb3\x87\xed\x10\x9b\xe6\x71\xfb\x33\x8a\xcf\xd9\xbc\x0a\x5e\x3d\xb8\x5b\xbf\xb3\x47\x48\x4b\xc7\xb5\xad\xa4\xaf\x8e\x75\xe7\x6e\x9b\x79\x4a\xd7\x8c\xa2\x0a\x58\x8f\xb6\xdd\x46\x6e\xf1\x0d\xaa\x39\xfd\x6c\xbe\x4d\xad\x7a\x61\x3d\xd9\xe9\x96\x9f\xc9\xb7\xac\xaa\x2c\xd6\xbd\xbb\x9d\xd0\xa7\x73\x4d\xa4\x6a\x8f\xf5\xe6\xce\x0d\x68\xaa\x4a\x06\xf4\x62\xae\x35\xa1\x4a\x59\x6f\xef\x74\x63\xcf\xe7\x1a\x93\xd5\x33\xeb\xad\x9d\x5e\xad\x27\xf3\x83\xcb\xa9\x7c\xd6\x3b\x3b\xdd\xea\xa7\x72\xad\x2a\x6a\xa4\xf5\xde\xdd\xee\x90\x5c\xf5\x72\x98\xfb\xee\x68\x1f\xc5\x45\x85\x2d\x74\x5c\x56\x84\xd4\x37\x03\x7a\x7f\xf5\xd5\x6d\xb5\xc3\x4a\x8f\xd5\x10\x77\xef\xbc\xbe\xad\x86\xb8\x7b\xe7\x31\x1a\x4a\xfd\x3b\x2f\x6f\xab\xa9\xd4\xbf\xf3\x18\x8d\x65\x35\xe9\xea\x2b\xdb\x6a\x33\x53\xcd\x58\x4d\x83\x06\x59\x7d\x69\x5b\x2d\xb2\xd2\x63\x35\xc4\xd4\xc4\xea\x6b\xdb\x6a\x87\x16\x1e\xd1\x8c\x50\x06\xab\x2f\x6e\xb1\x0d\x5e\x72\x54\x03\x19\xe5\xae\xfa\x89\xad\xb6\xa3\x56\x30\x5e\x73\x8a\x00\xb6\x7e\x6c\x7b\x4d\xca\x95\x8c\xd7\xac\x44\x0d\x9c\xde\x5e\x9b\xa2\x86\x51\x0d\x4a\x4a\x1b\xf5\x43\x5b\x6d\x2b\x2d\x3c\x7a\x7b\x80\xef\xf3\x93\x5b\xdf\x1e\xb4\xe4\xa8\x06\xb8\xbe\x46\xfd\xd4\x56\x1b\x80\x92\x23\x47\x20\xd4\x27\xea\x47\xb7\x3c\x06\x5e\x76\x54\x23\xca\xe3\x7d\xfd\xb9\xad\xb6\x23\x17\x1f\xd5\x54\xe6\x19\xbe\xfe\xa5\xad\x36\xa6\x56\x30\xa2\x39\x8d\x04\xb8\xee\x13\x46\x23\x76\x42\x7a\xb1\x92\xb4\x2d\xf6\x20\x5f\x67\xa6\x13\xc7\x25\x13\xa3\x24\xeb\x10\x34\x2c\x95\xa8\xfe\x56\xea\x4c\x3e\x96\x5c\x5b\x62\x25\xd2\x4b\x68\x21\xdf\x92\x3c\xcb\xcb\xf5\x60\xfa\x4b\xf2\xdf\xea\x61\xc5\x77\xa9\x50\x71\x7e\x62\xbf\xa2\xe2\x5c\xad\xec\x1b\xa4\x9e\x25\x23\x4c\xb9\xdb\xe6\xf8\x06\x88\x01\xf5\x67\xbd\x20\x20\xd3\xaa\xe1\xc1\xc4\xb0\x98\x05\x3e\x46\x11\xde\x66\xd4\x82\xbc\x57\x8d\xe1\x41\x0c\x32\xa1\x06\x34\x41\x06\xa8\x87\x54\x14\xa4\x2b\xe4\x48\x3a\xf5\xce\x47\x35\x3c\x40\x74\x2f\xcc\xd9\xd2\x4d\xfe\x50\x38\x02\xf7\x14\x07\xd7\xde\x8e\x3a\xb8\x6e\xee\x3a\xb8\x1e\xea\xe0\xba\x95\xf5\x6f\xdd\xba\x97\xee\xad\xdb\x1a\xf7\xd6\xed\x21\xee\xad\x9d\x62\xf7\xd6\x19\xcb\x96\xfb\xe7\xd5\x3a\xe3\x56\xbb\x25\x61\xa9\xd6\x87\xe1\xd9\xba\xb3\xeb\x5f\xfa\x51\xf0\x2f\xdd\x1b\xee\x5e\xfa\x3f\x0f\xaf\x7e\xde\xef\xcc\xbd\xa0\x77\x2f\x2d\x39\x24\xc9\x38\x8b\xd2\x78\x54\x56\x7c\x55\x69\xdc\x53\xa9\xce\xad\x72\x1e\x7b\x55\x6f\x3d\x8f\x6f\xc1\xf7\x05\xf7\x98\xd3\x72\x57\x87\x87\x11\x16\x21\x98\x33\xfe\x6e\x74\xa1\xb6\xef\x47\xdc\xec\xd9\xd4\x17\x4f\x33\xe8\x2e\x07\xe0\x18\xa8\xd0\x7f\x0c\xf8\x82\x12\xdd\x14\x81\xb2\xab\xe3\x07\xca\x9e\x2d\x0c\x7e\x3d\x37\x22\x58\xb5\x14\x6b\x7a\xaf\x36\xb6\xb4\xe4\x32\x72\xdf\x88\x68\xd6\xfa\x68\xd7\x77\x13\x9c\x9a\x36\x5e\x10\xf9\x7a\x56\xca\xd7\xf4\xb0\x13\x0a\x5f\x9a\x85\xf1\xab\xb7\xe0\xab\x68\x2b\x91\xa7\xd7\x5c\xcf\x9b\x69\x71\x0b\x64\xc3\x6d\xdf\xb5\xcf\x91\x0c\x41\x2d\x5c\x90\x74\xd3\xb8\xce\xdc\x5f\xc4\xa8\x80\xce\x1d\xd3\x0c\x1e\x19\x97\x12\x5e\x61\x8c\xe6\x66\x2e\x46\x33\x5c\x23\x11\x0f\xd2\x8c\xdc\x02\xb3\x71\x6d\x98\x63\x79\xc7\xe5\x95\xef\xc6\x32\x68\xd3\x45\xb4\x14\xa7\x14\x19\xc6\xd6\x82\xc2\x8e\x8e\xf5\x3a\x55\x9d\xa0\x0a\xbd\x82\xcd\x94\x0d\x3a\xb3\x01\x71\xa9\x26\xac\xa4\x91\x27\x9d\xc4\xa1\x16\x22\x13\xe9\xd0\xc9\x7d\x14\x2a\x1a\xd8\xcc\x56\x85\x35\x48\xd0\x6a\x9b\x19\xb6\xe2\x32\x05\x4c\x6b\x60\xa1\x8a\xc5\x1e\xe8\x12\x4d\x4c\xc8\x44\x13\x13\x52\x79\x96\x53\x16\xa5\x1e\x8e\x96\x18\x04\x45\xa5\x09\xed\x23\xc9\x0a\x3a\x6a\xce\xac\x1c\x7a\x8c\xa8\x90\x43\xca\x0f\x6f\x4b\x9e\xf8\x71\x22\x42\x16\x15\xce\xb4\x12\xc8\xd1\x0c\xbb\x43\xa3\x19\xf6\x50\x77\xbb\x72\x81\x1d\x16\x08\xc8\x07\x38\x25\xb4\x83\x8f\xaa\x38\xc0\xb9\xa7\xe2\x80\xe8\xa1\x10\x07\x24\x8a\x38\x20\xd9\x51\x71\x80\xb7\x2b\x0e\x78\x80\xc4\x01\x4d\x8d\x38\xa0\x39\x44\x1c\x10\x0c\x11\x07\x64\xd8\xf2\xf6\x87\x17\xed\xea\x41\x91\x08\xdc\xf7\x50\x57\xbd\x5d\x49\xc4\xa3\x20\x89\xe8\x0a\x87\x7d\x05\xb2\x88\xcf\xaf\xac\xee\x3f\xf1\xb9\x70\x5d\x2f\x8b\xf8\x24\x75\x07\x9a\x09\x60\x45\x78\x28\xf0\x8c\x2a\xc2\x59\x49\x42\x0b\xc5\x75\xaa\x1c\x79\x4a\x38\xc5\xd4\xb9\x53\xcd\xc5\xac\x92\xbd\xb1\xe6\x9c\xb6\x16\x45\x20\xaa\x56\xb9\x8b\xe0\x59\xbd\xfb\x5f\x1d\x7f\x3e\x3c\x7c\x09\xc4\x51\xd9\x9f\x89\xa3\x42\x39\xfa\xc7\xa9\x1b\x57\x4d\x68\x0b\xa7\xd5\xfa\x14\x25\x22\x43\x4d\xe4\x06\x39\xd0\x04\x73\xe6\xa0\xcb\x2b\x89\x4b\x52\x47\xeb\x9c\xf9\xde\xaf\xc4\xa9\x19\x4b\x6a\xa3\x56\x50\x9d\xdb\xa2\x9f\xd3\x1d\xf3\x90\x0c\xdd\x1e\xcf\x3d\x72\x15\x89\xce\x6e\xcb\x87\xb1\xe4\xf4\xf5\x09\xc9\xe9\xeb\x81\x86\x08\x0a\x90\x0d\x97\x22\x3e\x55\xb6\xe4\x0f\x96\xb5\x91\x0f\xc9\xa2\x86\x67\xa9\x6e\xcb\x93\xbd\xbc\x72\xaa\xef\xff\x21\x3e\x6b\x8b\x3d\x74\xeb\x43\x67\x08\xd7\xb5\x2b\x70\xe4\xa5\x13\xcd\x0e\xae\x68\x13\x49\x9e\x7d\x9f\xd8\x5e\x60\x86\x03\xc2\xbf\xb1\x7c\x50\xb9\xf3\xe1\xb1\x9d\x39\xe7\x22\xaf\x8d\xe7\xba\x39\x8f\x6b\xd4\x11\xe6\x43\x48\xd1\xd1\x56\xb9\x94\x94\x3b\xfb\x35\xca\xc2\x05\x3e\xb8\xca\xe7\x51\x26\xb6\x31\x2d\xc2\x77\xf2\x01\xd6\xcc\x3e\xde\xf2\x78\xae\x93\xf7\xe5\x62\x4d\x6c\xcb\x6b\xb0\xc6\xed\x77\x66\xbf\x8c\x8d\x04\x68\x96\x7d\x80\x6f\x53\x25\x64\x98\xc7\x4c\x70\xa2\x86\x40\xb2\x52\x9c\x2f\x25\xd2\x13\xaf\x29\x8d\xd5\x96\x75\xe1\x4c\xd6\x4d\x7c\x25\x23\x8b\xc3\x04\xcb\xa1\x96\x78\x15\x2c\xa6\x7e\x9c\xe9\xcb\x6c\xbe\x2f\x6a\x7c\xb1\x6c\x77\x72\x6e\x26\x0c\xcd\x26\x61\xb9\xc7\xf6\xff\xae\xee\x81\xb9\xe2\x3d\xb0\x3d\xaf\xee\x73\x68\xaf\xde\x29\x34\xe2\xc1\x4e\x28\xae\x1d\x22\x5e\xd5\x2c\xb7\x1b\x49\xcb\xcb\x7c\x43\x53\x87\xcf\xfa\xac\x1c\xbf\xcc\x50\x0f\xc3\x2c\xb2\x38\xc9\xec\x50\xa9\xda\x30\xc1\x6d\xd6\x0f\xf5\x5d\x4b\x71\xb3\xe2\xdb\x75\x7b\x6a\x6a\xcd\xf5\x5b\xc1\x5a\xa9\x64\x04\x7e\x1c\x24\xcd\x0e\xd5\x71\x21\xb4\x29\xfb\x30\xa1\xe3\x3d\x9f\x76\xa2\xf8\xc9\x20\x88\x4b\x25\x8d\xac\xd6\xec\xda\xac\x68\x79\xd1\xa3\x87\x4a\x12\xf3\x80\x85\x6b\x54\x2a\x99\x5d\x0e\xdb\xdd\x72\x37\x02\x3b\x1f\xee\xd6\xa4\xdf\xef\x96\xbb\xc1\x8b\x9a\xd4\x35\xbc\x7c\xca\x8d\x33\x1f\x2c\xa4\x61\xbb\xba\x4c\x68\x18\xc5\xb4\x31\x80\xed\xac\xb1\x65\x2a\x29\x9c\xe7\x02\xe6\x52\x89\x8a\x2e\xa9\xd5\xf9\xc9\xf5\x1e\x9e\x67\xd6\x29\xbc\xbf\xa9\x00\x73\x32\x9e\x88\xed\xb8\xdc\x73\xc8\xe1\x7a\x36\x68\x09\x23\x0b\xa6\x67\xcb\x04\xbe\xcb\xa3\x45\xe4\x3d\xd3\x74\x1f\x19\x91\x78\x52\x28\x12\xf7\x72\x22\x71\x6a\x42\x33\xe1\x70\x89\xf8\x44\xba\x60\x59\x2b\x64\x14\x2a\x51\xf3\x91\x6f\x57\xe6\xfd\x83\xf1\xbc\x3f\x3d\x6d\x85\x75\xbf\x21\x59\x26\xfb\x22\x82\x7e\xc7\x6c\x9b\xd8\x76\x29\x7b\x03\xb2\x00\x17\xd5\x49\x63\x0d\xee\xbe\x27\xb4\x2c\xea\x37\xf8\x24\x39\x1a\x4f\xe1\x55\xb7\x89\x0d\xb4\x6e\x21\x5a\xd4\xa2\x78\xe3\x68\xb0\x4a\xf0\xc0\x54\x35\x4d\xa5\xb1\xc5\x8e\xad\xe2\x10\xe8\x5c\x23\x2b\xfe\x50\x73\x3e\xdf\x1b\x99\x8f\x1e\xcd\x45\xbf\x35\x5e\xc6\xa3\x29\x89\x3d\x22\xe7\x09\x72\xda\x0b\xb3\x62\xfd\x5b\x83\x4c\xec\x0f\x15\xbe\x53\x47\xa9\x2b\x38\x3e\x14\xc7\xa1\xbb\x9c\xc4\xd8\x64\xb7\x02\x95\xe2\x00\xf5\x33\x65\xdb\xba\xb8\xf8\x94\x9f\x4d\x3d\xb0\xfa\x8a\x07\x56\x57\xfc\xe6\xe7\xba\xc0\x09\x12\x69\xc7\x2d\x95\xa6\x5c\x29\x9f\x72\xa9\xda\xe4\xca\x6c\x18\x16\x17\x09\xb8\x99\xee\xe6\xaf\x3c\x6b\x02\xba\x14\x94\x4a\xd8\x8c\xcb\x4b\xec\xeb\xd3\x61\xd0\xa5\x34\x98\x19\x58\xb4\xf3\x83\xc1\x80\x39\x2b\x52\x97\x58\xe7\x82\xdf\x37\x63\xfd\xa3\x07\x73\xbf\xad\x7c\x44\xd8\x1a\x20\x5c\x76\x5a\xcc\x6f\xef\x33\x6e\x14\x63\x1f\x87\x26\xdb\x49\xe4\xa2\xd1\x34\x2a\xfb\xce\xcc\xda\xae\x72\xc3\xe1\xec\x9e\xdd\x4a\x47\x53\x67\xe2\x5b\xe8\x2b\xb3\xc7\xd5\xb6\xcd\x5d\xe1\x29\xe7\x8e\x77\x34\xbb\xc3\x65\x59\x29\x0d\x60\x40\x0f\xa4\x3d\x55\x41\xb8\x54\xc2\xe0\x3d\x30\xd3\x01\x5a\x07\x49\x37\x50\x9c\xab\xd0\x1a\xa0\xb4\x21\xf9\x80\xd8\x8a\x43\xc0\xfc\xb0\xc6\xaf\x35\x3d\xc9\x76\xe6\xd9\x4c\xeb\x71\x58\xf2\x37\x3c\x7a\xbf\x43\x0d\xa1\x45\x5d\x8d\x68\x1c\x8c\xf0\x29\xb2\xe4\xd9\xaa\x0a\x3f\xb7\x53\xe1\x78\x87\xc5\xb7\xc3\xf1\x0f\x8b\x4f\x2e\x8f\xe2\x3d\xae\x3b\x47\xbe\x05\x5e\x6c\x0b\xa7\x9a\x91\x2a\x05\x8b\x65\x15\x97\xc3\x7e\xcb\xd0\x2e\x06\xc1\xf5\x29\x56\x1a\xf2\x1c\x29\x0c\xe3\x73\x39\x3a\x8a\x27\xd0\xd4\xbc\x51\x91\x7a\xe8\x3c\x0e\xea\x37\xea\xf0\x53\x3d\xac\xd0\xb0\xe3\x55\x54\x70\xbc\x59\x1d\x79\xa2\x74\xa7\x74\x78\xc1\xe2\x15\x49\x5d\xb0\x64\xf6\x87\x6e\x12\x53\xfa\x00\x97\xa3\x9e\xe7\xc6\xa6\x51\x36\x2c\x14\xe6\x9d\xda\xd6\x7b\x4e\x18\xe1\x23\x7e\x6c\xc6\xf5\x4a\x03\x55\x2b\x56\x03\xf9\x76\x95\xd0\x0c\xfc\xc5\x89\x92\x0e\x76\xa8\x2b\xe1\xb3\x12\xc2\xb3\x07\x7b\x22\x8e\x34\x4f\xc4\xd1\xa8\x27\x62\xe5\x2e\x1d\xe7\x89\xd8\x2d\x2a\x6d\x21\x57\x7e\x50\xed\xa9\x39\xb3\x3b\x70\x9c\x37\xe2\x61\x15\x64\x5a\x73\xe5\xe7\xdb\xe5\xa1\xcf\xb7\xab\x68\x79\xbb\xcf\xb7\xaa\x36\x91\x78\xc2\x55\x5e\x6b\x33\x6f\xb5\x3b\x23\x55\x8e\x87\xcb\x94\xdb\xeb\x9f\xfb\xcf\x17\x66\xf7\x3a\x7a\x99\x32\xc8\x6e\x33\xb1\x13\x0b\x54\xd3\x44\x8c\xda\xad\xaa\xa6\x55\x91\x11\xf5\x1c\x7f\xa8\x34\x49\x6d\x9f\x8a\x73\x55\xc1\xe3\xec\xd8\x72\xc7\x62\x86\x79\x27\xd4\x8d\xa4\x8e\x0a\x66\x55\x70\x51\xda\x5d\x15\xf3\x3d\xc7\x57\xe6\x98\xef\xad\x8b\x6c\xa6\x25\xef\xcf\x70\xbb\xdb\x2f\x1f\x38\xec\x41\xda\x85\x2b\xc7\x8f\xbc\xf8\xe9\xe3\x95\x23\x05\x5a\x96\x5c\x0e\x51\x4a\xb7\x53\xf6\x31\x61\xb4\xa4\x4b\x48\x2c\x87\x88\xa7\x2a\x52\xd4\xf7\xa1\xe2\xa9\x91\x42\x22\x2e\x7e\xe3\x1b\x7b\x78\xb7\x66\x7c\xa7\x8b\xb3\x92\x74\x54\x67\x37\xfa\xb3\xf4\x5b\x43\xab\x7f\x77\x00\xcd\x66\x83\x93\x8d\x96\x0b\xed\xc8\x36\xcf\x8d\xe1\x01\xda\xed\x99\x98\xa0\x0f\xd2\x4e\x0f\xf0\xf4\xde\x67\x4e\x9f\xaa\x14\xea\x13\x2b\x71\x44\x75\xdb\x7c\x47\xc3\x6a\xee\xd8\x53\x51\x2e\x0c\xeb\x58\x82\xd4\x34\x7c\x66\xb5\x31\x4c\xb5\x74\xe4\x9e\xbe\xeb\xfd\xac\xf6\xff\x01\xda\xcb\x3c\xf0\xfa\x8e\xe8\x7d\xa5\x32\x2a\x57\x52\xa6\x70\x3f\xaa\x5a\x5f\xc1\x3d\xd5\xfa\x72\x1e\x0a\xad\xaf\x48\xd1\xfa\x8a\x76\x54\xeb\x2b\xd9\xd5\xfa\x1a\xaa\xf5\xd5\xcc\x6a\x7d\x35\xef\xa5\xd6\x97\xa7\xd1\xfa\xf2\x86\x68\x7d\xb9\x0f\xbe\x11\x58\x53\xc2\x52\xcd\xfb\xa8\xf2\xb5\x33\xa4\x40\x1b\xb5\x50\x07\xf5\x50\x17\xad\x8a\xd8\x9b\x05\x64\x41\x6f\x75\xb1\xbd\x2f\x5a\x77\x0b\xc8\x82\x31\x23\xd7\x8b\x87\x75\xad\x2a\x4f\x61\x04\x7b\xc7\xf3\x82\xb5\xc3\x1e\x76\x0a\x59\xbb\x39\xe9\xd9\x36\xf7\xe8\xbb\x9d\x60\xe3\xfb\xb7\xa3\x06\xc1\xa9\x05\x95\x56\xdf\xcf\x9e\xef\xf9\x30\x85\x9a\x93\x1c\xce\x57\x7d\x35\xde\x97\xd3\x24\x99\x1d\x36\x3e\x4d\x36\xe9\x7d\x79\x5b\x0f\xf4\x63\x73\x07\xbc\x33\x33\x6e\x8c\xbb\x29\x83\x70\x00\xed\xd5\x76\x98\xdb\x29\x8d\xc5\x0a\xab\x91\xfc\xd9\x08\xf7\x35\xa4\x37\x71\x55\x21\x26\xf3\x64\xbf\xfd\x08\xe1\x63\xf3\xfc\xd4\x8a\x60\x66\x39\xf6\x0d\xc5\xa2\x89\x09\x09\x55\x43\xa8\x26\xdb\xbd\x3a\x03\x28\x45\x34\x58\x98\x9f\x13\xa6\x57\x5f\xdf\xb1\x18\xec\xa9\x80\x23\xb7\x67\x67\xd9\x9e\xcd\x08\x35\x80\x0e\x1e\xb1\xa7\xd8\xea\x8e\xb5\x79\x62\x27\x4e\xa2\x19\xb7\x29\x6b\x69\xcd\x8d\x1b\x4f\x5a\x7e\xc2\xa7\x07\x2a\xc4\x4e\x2b\xf0\xbd\xf5\x7c\x50\xe9\xbb\xa6\xbe\x81\xc8\x15\x64\xb7\xf6\xe5\xf9\x51\x79\x66\x8e\xf8\x33\xb3\x97\x7d\x66\x4e\x4c\x4f\x7a\x66\xf6\x52\xcb\x2b\x26\xcd\x47\xde\x18\x96\x57\x5e\xd6\xf2\xaa\xc0\x08\x0a\xe7\xbd\xb9\x17\x9a\x5a\x71\x4f\xba\x4c\x1f\x56\x3e\x70\xd4\x46\x8a\xca\x59\x53\x92\xa9\x61\x95\x4a\x8e\x46\xe0\xec\x30\x81\xb3\xa7\x38\x0d\x6c\xdb\xbe\x94\xb1\x65\xf3\x3e\x77\xec\x7a\xd8\x40\x3d\x7b\x94\x20\xd8\xcf\x99\x25\x19\x16\xea\x2a\x95\xae\xda\x67\x06\x48\x56\xa3\xee\x15\xa8\x51\xaf\xd6\x71\xc3\xee\x81\x1a\xf5\xaa\xaa\x46\x2d\xff\x44\xab\x59\x35\xea\xd5\x42\x35\xea\xd5\x7e\x7f\x35\xab\x46\xbd\xaa\x12\xfb\xab\x76\x67\x1c\x35\x6a\x99\x70\x8f\x4d\x42\x7b\x60\xab\xdf\xc7\x03\x0b\xad\x5a\xa8\x2b\xa9\x51\xaf\x66\x94\x9c\x57\x41\x8d\x5a\x49\x5f\x58\xcd\xab\x51\x77\x85\x1a\xf5\xea\x70\x35\xea\x6c\x0b\x7a\x72\x8a\x74\x71\x95\x0c\x8f\x6d\x1b\x7f\x7c\x39\xfc\xfa\x68\x39\x7c\x07\x7b\x3d\x1c\x46\x7b\x86\x2a\x36\xc9\x2c\xb5\xa6\x8e\x24\x76\xbd\x68\x0f\x13\xd0\x51\x78\x04\x93\x2d\x4e\x66\xa8\x2c\x46\xe6\x60\x51\x45\x8f\xb2\x1b\x31\x85\x8f\x54\x23\x87\x12\xbf\x59\x46\xac\x80\x97\x62\x9c\x70\xbf\x3f\x65\x66\xb8\xf1\x49\x97\x5b\x04\x90\x9a\xe5\xf0\x88\xa1\x5d\x6f\x20\x9f\x70\x96\xae\x3d\x55\x45\x01\x27\x54\x09\xa7\xc4\x59\x58\x07\x45\x36\xae\x67\xaa\x6c\x98\xd6\xfc\x94\xe9\xdb\xa6\x63\x47\xd4\x47\xb6\x69\x59\xe5\x56\xe0\xd3\x18\xc6\x61\xb9\x97\x44\x1d\xd3\x61\x5b\xc8\x42\x84\xc5\x08\x81\x05\xa6\x78\x77\x9e\x34\x69\xcd\x03\xeb\x94\x58\x67\x5c\xd2\x85\xc0\x4e\x06\x6d\xd7\x77\x3c\x6f\xfd\x0c\xe9\x80\xdf\xef\x93\x4d\x60\xdb\x51\x99\x75\xb9\xdf\xe7\x90\x69\x89\x9c\x6e\xdb\x74\x01\x91\x07\x83\x81\x78\xc1\xa2\x33\xa5\x99\xb8\x29\x8e\x74\x28\xcb\x98\x8d\x42\x2b\x02\x97\xfa\x69\xfc\xac\x90\xa3\x93\x22\x76\x11\x5b\x70\x12\x0f\xa0\x99\xaa\x35\x61\xb0\xec\x04\xcb\x85\x19\xd1\x05\x99\x1b\x5b\x49\x29\xfb\x4e\x97\xb1\x83\xc6\x51\xa7\x47\xcb\xf4\xfb\xc6\x09\xcc\x8a\xf3\xde\xb0\xdd\xd1\x0e\x83\x2e\xf0\x8e\xc6\x21\x8e\xc4\xa1\xc8\x9e\xff\x36\x17\x6a\xcf\xbb\xfd\x23\x96\x1f\x9b\x0b\xb5\x03\xfd\xea\xfe\xfe\xdc\xac\x65\x2e\xd4\x0e\x7b\x4e\xb7\x87\x5b\xd6\x02\xad\xe4\x63\x7b\xca\x31\x8e\xa8\x1e\x90\x32\xd2\xdc\x7c\x59\x67\xb4\x97\xe3\x11\x7f\xd5\xf1\xdc\xd6\xa4\x13\x13\x56\x25\x9e\x8c\x83\x49\xaa\xdf\x97\x34\xe3\x24\xc4\x93\x7e\xe0\xcf\xd0\x2d\xb2\xec\xa5\xa2\x95\xf2\x17\xfd\x23\xfe\x64\x10\xb6\x70\x48\xf2\x2f\xe3\x49\x9e\x05\xd1\x02\x54\x83\x70\x92\xb1\xa0\x11\xbb\x6d\x3b\xce\x2a\x9e\x74\x26\x35\xbb\x6e\xb2\x8b\xe3\x4e\xd0\x2a\x1b\xd6\xc0\x94\x84\x0e\xb0\xc0\x26\xdb\x30\x71\xbf\x1f\x7f\x1c\xc3\x8e\xa3\xae\xe4\x6d\xf1\x6b\x42\x12\xcd\x20\x5f\xd1\xb2\x9a\x0f\x0f\xc6\x54\x44\xe3\xd7\xc3\x86\x8d\xeb\xa1\x78\x11\xf5\x07\xaa\x8c\x0c\xf4\x05\x4c\x0c\xb1\xb1\x84\x47\xdf\xb8\xec\x46\xd4\xe6\xc2\x32\xfd\x6d\x71\x8c\x14\xe3\x3c\x47\x10\x0e\x53\x06\x3c\xc2\xaa\xb3\x5d\x3d\x37\x19\x70\x0e\x92\x62\xb6\x32\x43\x70\xa6\xf2\x7a\x19\xdc\x15\x52\x94\xf4\x7e\xc7\x92\x97\x8b\x79\x8a\x77\xd1\xdd\xc3\x83\xee\x42\x39\x5c\xe0\xb6\xd1\x9d\x9f\x47\x77\xfe\x28\x74\xe7\xa7\xe8\xce\x1f\x13\xdd\xf9\x5b\x47\x77\xbe\xa5\x8e\xf4\x61\x47\x77\xe1\x7d\x43\x77\x42\x03\x32\xb4\xc9\x89\x9e\xb5\x90\x6f\x87\xf5\x4a\x03\xb9\x76\x58\xaf\x36\xb8\x82\x96\x6d\xbb\x8a\x30\x96\x87\x06\x65\x6d\xb9\x56\x2a\x11\x0f\xec\xca\x7c\x70\xd0\xe5\x12\xf1\x60\x7a\xda\x92\xf2\xb3\x50\xa2\x6e\x3d\x68\x20\xb1\x66\x53\x95\x09\xc1\x27\x40\x07\xd5\xec\x34\xda\xcd\x8e\xe0\x5a\x11\x98\xd5\xd7\xa3\x5b\x57\x8b\x6e\x15\x22\xd5\x1d\x81\x6e\x19\xfd\x48\x78\xde\x24\xc6\xad\x99\x36\xc4\x8c\x9d\x71\xdb\x33\x29\x92\xbb\xf7\x8f\x93\x1a\x51\x28\x1b\x1a\xef\x99\x79\x46\xef\x6d\x1e\x0f\x50\x24\x7f\x90\x6d\x5f\x05\xad\x1f\x2e\xe0\x5a\x38\x18\x58\x83\xb1\x26\x43\x26\xa6\xb7\x71\xcd\x08\x49\xf6\x14\x2e\x95\xa6\xa6\x94\x40\xb7\xe9\x5b\xb9\x95\xfb\xc6\x1f\x45\xd5\x73\xc5\x77\x7b\x25\x2b\xc2\x9f\xc4\x26\xa8\xf0\x5a\x7c\x2f\xbb\x76\x65\xde\x3d\x98\x56\xea\x23\x83\x6d\x6b\xc3\x9a\x77\xf9\x53\x4f\x60\xfb\x65\x76\xda\x0f\xc5\x0b\x29\x68\xba\x56\xcd\xaf\xbb\x8d\x89\xd8\x0c\xac\x05\xd9\xe3\x65\x20\x75\xcd\xaa\x85\xd3\xd3\x03\x72\x2b\xa2\x50\xa5\x76\x84\x92\xb1\xae\xa3\x2e\x43\xfe\xfc\x4c\xce\x54\x27\xd4\xe3\x97\x36\xe6\x4a\x5d\x0e\x78\x97\x1d\xdb\x4d\xbb\x9c\x82\x66\x60\xd5\xc8\xd1\xa4\xaf\x17\xa6\x03\x7a\x93\x91\x2d\x77\xde\x91\x3b\x4f\x32\x46\x1f\x9f\xa9\x72\xe4\x1b\xd1\x47\x0b\xd2\x35\x47\x26\x6f\xfd\x09\x9f\x0c\x92\xf7\x75\xa0\x3c\xd7\xb9\x23\xc7\x8a\x02\x18\x6d\xbf\x1f\x1e\xac\x40\xa5\x67\xb8\x54\xb2\x46\x2e\x7a\xda\x23\x1e\xa0\x40\xcc\x85\x63\x57\x50\x64\xeb\xe7\xc2\x3f\x48\xa8\x77\xe7\x60\x34\xcf\xda\x4e\x0a\xa6\xc4\x21\x53\xe2\xc0\x94\x24\x30\x25\x9e\x32\x25\x89\x34\x25\x28\xe8\xf7\xe5\x6d\x98\xc8\xb1\x98\xe9\x7c\x79\x7c\x56\x3c\x31\x59\xbe\x34\x59\xe9\xb8\x86\xd5\xc4\x47\x9c\x0c\xe8\xd4\x3a\x6c\x0f\xa1\xa9\xaa\xd5\xef\x0f\x99\x99\xdc\x23\x29\x3b\x0a\x67\xc4\x29\xaa\xe1\xb2\x80\xd3\xa0\x1d\xc2\xec\x1c\x97\x3b\x4e\x24\x89\x5c\x4c\xa9\x4b\x94\x50\x12\x9a\xb7\x58\x80\xca\xc6\x76\xc0\x8c\x3a\xa5\xc6\x08\x91\x6d\xa1\xc8\x3e\xea\xc4\x9d\x72\xd7\xf5\x4d\x06\x38\xa7\x4d\x46\xe4\x4c\x07\xa8\x62\x21\x67\xa6\x6a\xa1\xc4\x26\x7b\x25\xb2\x90\x67\x27\xa2\x7a\xd4\xb4\x13\x50\x79\x9c\x6f\x96\x4a\x1e\x2c\x67\x9b\xe5\x9d\xb6\x03\x6b\xc2\xb3\xdb\x72\xf6\x36\x64\xe7\x77\x4d\x73\x3b\x57\x0b\x70\x01\x76\x8c\xb0\x12\xe3\x83\x46\x26\x57\xe2\x73\xd1\xab\x86\xb5\x78\x28\xa6\x9a\xa0\x94\xd6\xd7\x45\x78\xcb\xd8\x13\x08\xc3\x7f\xe4\xe4\xa3\xd8\xed\xd5\x46\xb1\xdb\xab\x44\xb1\xdb\xdb\x40\x91\x5d\x41\x09\xa1\x85\x3d\x3b\x87\xea\xa7\xa6\x92\x81\xe6\xbc\x35\x51\x3b\x5d\x9f\x96\x74\x7c\x9a\xe9\xf1\x41\x1d\xbb\x32\xdf\x39\xd8\x9a\xef\x70\x94\xd2\xb3\x9b\xe9\xf9\x49\x41\xb3\x63\xd5\x9a\xf5\x4e\x03\x75\x6d\x79\x33\xf7\xe4\xcd\x4c\x4e\xc5\x94\xd3\xef\x4f\x75\x99\xe1\x92\xd9\xb3\x98\x30\xd2\x54\x0a\xa4\x67\xac\xdd\xef\x77\x2d\xe4\x99\x9c\x80\x60\x4f\xa5\xbe\xd9\x43\xa1\xf5\x71\xbb\xb2\x60\x46\x07\xdd\x85\xa0\xdf\x37\x03\xbb\x67\xd5\x12\xbb\x87\xa2\xe9\x69\xab\x16\x4d\x4f\xd3\x03\x98\x96\xe3\x87\x06\x25\xfd\x7e\x30\xa0\xab\x22\x05\x1f\xb4\xa5\x49\x81\xe5\x48\xb7\xed\x76\xc3\x0a\x72\x7c\x74\xc8\x24\x1b\x3a\x1d\x60\x28\x4d\xae\x67\x57\xe6\xbd\x83\xc9\xbc\xc7\x27\xb7\x69\x87\xe9\xe4\xa6\xa0\xe9\x59\xb5\xb0\xee\x35\xc4\x04\x2a\x6b\x25\xe1\x1d\x3a\xab\x4d\x8b\x1f\x0d\x79\x62\x9b\xf2\xc4\xfa\xc8\x45\x8e\x35\x91\x7e\x6d\xa7\xbd\xfa\x78\xa5\x54\x8a\x18\x27\x14\xd0\x3d\x02\x2f\xd4\xae\xd9\x44\x3e\x99\x76\xf1\xb9\x29\x04\xcf\xd1\x20\xa5\x48\x24\x3f\xed\x76\xde\xfa\x26\x0d\xfc\x19\xaa\x31\x50\x91\x6b\xe3\x34\xd6\x7c\x60\x87\xfd\xbe\x3b\x21\xbf\x4e\x07\xfd\xfe\x4c\x95\x70\x0d\x34\xfa\x0c\x47\xae\x0e\xf9\x85\xaa\xe2\x91\x39\x60\x6a\xf9\xda\xb0\xa3\xb6\x83\x70\x99\x10\x1e\xbd\xa7\x5c\xa7\x19\xba\xb1\xdb\x8c\xec\x24\xed\x39\x84\x6d\xb4\xb5\x42\xd7\x84\xf0\x4b\x71\xf0\x7c\xaf\x87\xc3\xc3\x0e\x15\xd2\xc2\xf1\x37\x13\x33\xce\x7c\xb2\xa4\xf9\xc8\x46\x85\x1c\xbb\x7a\x2a\x63\x8f\x08\xd6\xd0\xb5\x40\xe3\xac\x0e\x26\xd8\xc5\x7d\xc6\xd8\x7c\xed\x1f\x46\xcd\x38\x64\x20\xe3\xff\xfb\xd7\x2f\x01\xba\xfa\x65\x0e\x7c\x85\x03\x5f\x05\x60\xe3\xf2\x6f\x04\xf4\x96\x80\x7e\x27\xa0\xb7\x79\x81\xaf\x01\x70\x8d\xd7\x75\x2d\xad\xe2\x2f\x02\xfa\x93\x80\xfe\x2e\xa0\xbf\x02\x74\x8b\xb7\x74\xf3\x17\xbc\xd2\x97\x78\xca\x79\x91\xfb\x4d\xfe\xed\x65\xfe\xed\x32\x07\xbe\xc3\x2b\xe2\x5d\xb8\x95\x76\xe1\x17\x02\xfa\x83\x80\xf8\x44\x6c\x5c\x14\x7d\xe6\x0d\xde\xe2\x95\x6e\x5e\xf8\x33\x40\x77\xde\xa0\x1d\xa5\x6d\xbf\x42\xa0\x45\xd2\xe6\xbf\x04\xf4\x26\x87\xee\xbc\x41\xc7\x76\x8c\x82\xb4\x8d\xe7\x29\x78\x91\x80\x9f\xa1\xe0\xe5\x14\xa4\x15\x7c\x9e\xb4\xf4\xda\x3f\x8d\x9a\xf1\x24\x5d\x98\x37\x01\xda\xb8\xf8\x55\x01\xbd\x24\xa0\x57\x00\xba\xfd\x35\x00\x6e\xf0\x5c\x37\xbe\x02\xc0\xe6\x6b\xa4\xb5\xc3\xb4\xb2\x5f\x01\x74\xed\x15\x0e\x7c\x83\x03\xdf\xe2\xc0\xb7\x01\xb8\xfa\x75\x00\x36\x2e\xf2\x4c\x37\x78\xd2\xad\x2b\x00\xdc\x79\xe3\x3d\x80\x36\x5f\xbb\x64\xd4\x8c\xa7\x68\x33\x6f\x01\xb4\x71\xf1\x5b\x00\x5d\xfb\xae\x48\xfa\xb6\x80\xbe\x27\xa0\xd7\x04\xc4\xf3\x5d\xe3\x1f\x6f\xbc\xca\x01\x5e\xd7\x8d\x6f\x02\x70\xe7\x1c\x6f\xf2\xe6\x05\x02\x7c\x81\x40\x2f\x09\x88\xac\xd1\x53\x2f\x12\xe8\x65\x0e\x6d\xbe\x46\xa6\x7b\x91\x76\xf2\xd7\x00\x5d\xfd\x06\x07\xbe\xc9\x81\x6f\x01\xb0\x71\xe5\xcb\x1c\xba\xfc\x9e\x48\x7b\x49\x40\x5f\x15\x5f\xff\x05\xd0\xb5\xd7\x78\xd2\xc5\x1f\x08\xe8\x47\xfc\x23\x4f\xba\xc6\x53\xae\xbe\x2a\x6a\xe0\x1d\xbb\xf6\x53\x00\x6e\xf1\x76\x6e\xbd\x22\x32\x5d\x14\x4d\xf3\xb4\x5b\x6f\x8b\x66\xde\xe0\x35\xfc\x58\x24\xa5\x10\xaf\xf5\xc6\xf7\x38\xf0\x5d\x00\x36\x5f\x23\x8b\xf9\x34\x9d\x93\xdf\x00\xb4\x71\xf1\x3c\x40\x37\xbe\x0f\xc0\x9d\x73\x3c\xdb\xe6\x6b\x64\xb4\x9f\xa4\x05\x7e\x0b\xd0\xcd\xbf\x03\x70\xed\x0d\x00\x36\x2e\xfe\x82\x27\x9d\xe7\x00\x4f\xb9\xf9\x1b\x9e\xf2\x26\x4f\x79\x0b\x80\x1b\x67\x01\xb8\x73\x9e\xe7\xbe\x73\xee\xdf\x02\x7a\x0f\xa0\xcd\xd7\x48\xda\xa7\x68\x1f\xde\x06\xe8\xda\x5b\x00\x6c\x5c\x7c\x53\x40\xbf\x01\xe8\xd6\x79\x91\x94\x66\x7b\x5b\x40\xbf\xe3\x75\xf0\xfc\x9b\x17\x7e\x2b\xa0\x77\x01\xba\x73\xfe\x3b\x3c\xed\x35\xd2\x91\x23\xb4\xf9\x77\x00\xba\xfa\x6d\x0e\x7c\x87\x03\xdf\x05\xe0\xda\xdb\x1c\xf8\x1d\x07\xfe\xc0\x81\xbf\xf0\xcc\xff\x03\xc0\xc6\xc5\x3f\x71\xe8\xca\x37\x00\xba\xc9\x3f\xde\xe2\x29\xb7\xbe\x25\x32\x71\xe8\x9a\x28\x77\x91\xd7\x7e\xe3\x75\x00\x36\x5f\x7b\xdf\xa8\x19\xff\x49\x3b\xfc\x3b\x80\xae\xfd\x1d\x80\xdb\xdf\x00\x60\xf3\x2c\xd9\xef\x9f\xa6\xb9\x7e\x0f\xd0\xc6\xc5\xbf\x00\x74\xf3\x6d\x91\xf4\x57\x80\xae\xfd\x43\x24\xfd\x1d\xa0\x1b\x3f\x06\x60\xf3\xc2\x3b\x00\xdd\x39\xf7\x65\x01\x7d\x55\x40\x2f\x71\xe8\xfc\x9b\xbc\xc4\x59\x82\xb3\x9e\xa1\xcd\xff\x01\xa0\x6b\xef\x73\xe0\x12\x07\xfe\x0d\xc0\xc6\xc5\x7f\x08\xe8\x22\xff\x78\x45\x24\xfd\x4b\x40\x97\x01\xba\xce\xab\xbf\xc5\xab\xd8\xbc\xf0\xa6\x80\x7e\x01\xd0\x9d\x73\xdf\x10\xd0\x2b\x1c\x3a\xff\x65\x80\x6e\x12\x14\xf8\x0c\x99\xac\x9b\x34\xdb\x97\x68\xbf\xc9\xa8\x8e\xd2\x7e\xff\x11\xa0\x8d\x8b\xef\x71\xe8\xd2\x97\x05\xc4\xf3\x6d\x5e\xf8\x13\x40\x37\xde\xe0\x49\x67\x09\x0a\x7f\x96\x56\xf2\x27\x80\x6e\x5e\x04\xe0\x3a\xff\x76\xf5\xfb\x00\x6c\x5c\x7a\x89\x7f\xfb\xba\x48\x7a\x85\x27\xbd\x2c\x92\xbe\x25\xa0\x6f\x00\x74\xeb\x17\x00\xdc\x38\x07\xc0\x9d\xf3\xdf\x13\xd0\x5b\xbc\x69\x5a\x90\x8e\x93\xe0\xa8\x67\xd9\x38\x49\x9b\xc7\x68\x17\xff\x0c\xd0\xd5\xd7\x38\x70\x96\x03\x3f\x00\x60\xe3\xca\x6b\x02\xfa\x9e\x80\x7e\x24\x20\x9e\xef\xea\x0f\x79\xd2\xa5\x6f\x03\x74\xeb\x0f\x22\xe9\xbb\x00\x5d\xff\xb6\x48\x12\x95\x5d\xe2\x0d\x5c\xe7\xb9\x6e\xfd\x89\x03\x7f\xe1\xb5\xf3\x06\x6f\xfd\x4e\xb4\x2c\xea\xe4\x35\xdd\xfc\x3e\xcf\x24\x7a\xc0\xf3\xdc\xf8\x85\x28\xf6\x86\x80\x7e\x2a\xa0\xf4\xeb\x79\x01\xbd\x29\x20\xd1\xe7\x2b\x3f\xe6\x2d\xf1\x5e\xdc\xe4\x43\xbc\x2a\x3e\xbd\xc7\x9b\x7c\x85\x03\x3f\x07\xe0\xce\xb9\x6f\x09\x88\xd7\x79\x83\x36\x73\x84\xa6\xd1\xce\xd2\x6e\xd3\xc4\xe7\xe9\x62\x91\x4d\xf0\x1c\x5d\xac\xbf\x00\xb4\x71\xe9\x07\x02\xfa\x11\x40\x37\xde\x02\x60\xf3\xc2\xaf\x00\xba\x73\xee\x7b\x02\x7a\x4d\x40\xbc\xe8\xe6\x59\xd2\xbd\xff\xa2\x15\x5f\x00\xe8\xce\xb9\x1f\x09\xe8\xc7\x00\xdd\xfe\x16\x00\x9b\x67\xc9\x0e\x3d\x4e\x0b\xfc\x15\xa0\xeb\x3f\x00\x60\xe3\xd2\x8f\x79\x12\x07\x6e\x7d\x8f\x03\xaf\x89\x4c\x3f\x15\xd0\x1b\x3c\xfb\x8f\x44\xd2\x79\x80\x6e\x7f\x1b\x80\xcd\x0b\x6f\x01\x74\xe7\x1c\x2f\x79\xe7\xfc\x6f\x04\xf4\x55\x9e\xef\x2c\x39\x14\x27\x68\xcf\xfe\x06\xd0\xc6\xe5\xf3\x00\x5d\xff\x29\x4f\xba\xf4\x16\x4f\x7a\x43\x24\xfd\x82\x27\xfd\x42\x24\xfd\x46\x40\x6f\x0a\xe8\x6d\x80\x6e\xfd\x98\xe7\xe7\xd5\x6f\x5e\x78\x0f\xa0\x3b\xe7\xdf\x16\xd0\x4b\xfc\xeb\x59\x42\x8d\x9c\xa4\x5d\xfb\x3b\x40\x1b\x97\x7e\x07\xd0\xf5\xb7\x44\xd2\x1f\x00\xba\xf5\x53\xfe\xed\x4d\xf1\xed\x2f\x02\xfa\x13\xff\xf8\x1b\x00\x6e\xf0\x72\x37\xf8\xa7\x5b\xef\x01\x70\xe7\xfc\x2b\x1c\x7a\x83\x74\xec\xe4\x17\x68\x7f\xc8\x72\x3e\x4f\xfb\xf3\x2e\x40\x57\x7f\xc2\x81\x9f\x72\xe0\x67\x00\x5c\x7f\x1b\x80\x8d\x4b\x17\x79\xd2\xef\x44\xd2\x65\x9e\xf4\x07\x5e\xee\x0d\x00\x6e\xf2\x0a\x6e\xbe\xce\x81\x1f\x72\x80\xb7\xb6\x71\xe5\x37\xbc\xfc\x9f\x38\xf0\x17\x9e\xe9\x2c\x00\xb7\x7e\xc0\x81\x1f\x01\x70\xe3\xcf\xa2\xbc\xe8\xc9\x15\xd1\xcd\x2b\x7f\x12\xd0\x1f\x04\xf4\x17\x01\xbd\x25\xfa\xfe\x57\xde\xe4\x5f\x45\xd2\x3f\x04\xf4\x77\x80\x6e\xbf\x04\xc0\xe6\x59\x82\x3d\x3f\x43\xa7\xed\x1f\x00\x6d\x5c\xfa\x97\x80\xde\x03\xe8\xc6\x5f\x01\xb8\x73\xee\x3c\x40\xb7\x5f\x16\x49\x64\x8b\x7d\x86\x32\x06\x67\xc9\x16\xff\x2c\xad\xee\x9f\x00\x6d\x5c\xfe\xb2\x80\xbe\x0a\xd0\xf5\xbf\x8b\xa4\x57\x04\xf4\x92\x80\xbe\x01\xd0\xe6\x85\xbf\x72\xe8\x2c\x21\x5a\x3e\x47\x2b\xbe\x08\xd0\xc6\xe5\x6f\x09\xe8\xdb\x00\x6d\x9e\x25\xa8\xe6\xf3\x34\xdf\x25\x80\x36\xae\xfc\x15\xa0\xab\xe7\x00\xb8\xfe\x0f\xf1\xed\x22\x40\xb7\x78\xa6\x8d\xcb\xbc\x8a\xeb\x17\x45\xae\x34\xff\xdf\x01\xba\xf1\x37\x00\x6e\x7f\x57\x7c\x7b\x0f\xa0\xcd\xb3\x84\x1e\xfa\x02\xed\xc5\x65\x80\xae\x5f\x02\x60\xe3\xf2\xf7\x78\xd2\x15\x0e\xfc\x5b\x7c\x7b\x4d\x40\x3f\x00\xe8\xc6\xbb\x00\xdc\x7a\x0b\x80\xcd\x0b\xef\x0b\xe8\xf7\x00\xdd\x39\xf7\x26\x4f\x3b\x4b\xea\x77\x48\xe3\xff\xfe\x0a\x40\x1b\x97\x7f\x0a\xd0\xd5\x5f\x70\xe0\x97\x1c\x78\x53\x64\xfa\xad\x80\x7e\x2d\xa0\xdf\x0b\xe8\x1d\x5e\xe0\x57\x00\x5c\xe3\xd5\x5f\xfb\x9a\xc8\x74\x41\x40\x7f\x16\xd0\xbb\x02\xfa\x1b\x40\xb7\x78\x4b\x37\x45\x2f\xde\xe2\x29\x3f\x17\xb9\x79\x3b\x57\x79\x6f\x6e\x5e\xe1\xc0\x77\x79\x45\xbc\x0b\xb7\xd2\x2e\xfc\x52\x40\x7f\x14\xd0\x3f\x39\x74\x51\xf4\xf9\x65\x00\x36\x2f\xf0\xea\x6f\xf3\x89\xbb\xf3\x06\xed\x28\x6d\x9b\x9c\x65\x07\x93\x36\xff\x2d\xa0\x5f\x71\xe8\xce\x1b\x74\x6c\x01\x05\x69\x1b\x09\x05\xc9\x5a\x3b\xab\x14\xbc\x92\x82\xb4\x82\x75\xba\x44\xe4\x3e\x5f\xa6\x4b\xf4\x55\x80\x36\x2e\x7e\x4d\x40\x2f\x0b\xe8\xeb\x00\xdd\xf8\x32\x07\x78\xae\xdb\x67\x01\xd8\x3c\x4b\xf6\x4c\x93\x56\xf6\x35\x80\xae\x7d\x9d\x03\xdf\xe4\xc0\xab\x1c\xf8\x0e\x00\x57\x7f\x0b\xc0\xc6\x45\x9e\xe9\xc6\x37\x00\xb8\xf5\x2f\x00\xee\xbc\xf1\x3e\x40\x9b\xaf\xbc\xc4\xa1\xb3\xa4\xe9\x16\x6d\xf0\x25\x80\x36\x2e\xbe\x0a\xd0\xb5\xff\x11\x49\xdf\x11\xd0\xf7\x05\x74\x56\x40\x3c\xdf\x35\xfe\xf1\xc6\xb7\x01\xb8\xfd\x23\x0e\xbc\x0e\xc0\x9d\x73\x97\x01\xba\x49\x56\xa6\x45\xb9\xe6\x57\x38\xb4\x79\x96\x9c\x15\x4c\x3b\xf4\x32\x40\x57\xdf\xe6\xc0\x3b\x1c\xf8\x1d\x00\x1b\x57\xbe\xc2\xa1\xcb\xef\x8b\xb4\x97\x05\xf4\x35\xf1\xf5\xdf\x00\x5d\x3b\xcb\x93\x2e\xfe\x50\x40\xaf\xf3\x8f\x3c\xe9\x1a\x4f\xb9\xfa\x7b\x51\xc3\x15\xfe\xed\x67\x00\xdc\xe2\xed\xdc\xfa\xba\xc8\x74\x49\x34\xcd\xd3\x6e\xbd\x23\x9a\x39\xc7\x6b\xf8\x89\x48\x4a\x21\x5e\xeb\x6d\x5e\xf0\x36\x4f\xb9\xc9\xcb\x6d\x9e\x25\xfd\x6b\xd3\xc9\x79\x05\xa0\x8d\x8b\x3f\x07\xe8\xc6\x6b\x00\xdc\x39\xf7\x2f\x80\x36\xcf\x92\xe9\x5f\xa1\x05\xbe\x0e\xd0\xcd\x77\x01\xb8\x76\x0e\x80\x8d\x8b\xbf\xe4\x49\x3f\xe7\x00\x4f\xb9\xf9\x5b\x9e\xf2\x2b\x9e\xf2\x6b\x00\x6e\xff\x02\x80\x3b\xe7\x79\xee\x8d\x77\x2f\xf1\xb4\x73\xef\x03\xb4\x79\x96\xcc\x65\x87\xf6\xe1\x1b\x00\x5d\xfb\x35\x00\x1b\x17\x7f\x25\xa0\xdf\x02\x74\xeb\xe7\x22\x29\xcd\xf6\x8e\x80\x7e\xcf\xa1\xcb\x3f\xe2\xb5\xf1\x92\x9b\x17\xde\x16\xd0\x3f\x00\xba\xcd\xeb\xb8\x41\xe6\xae\xb3\x4a\x7b\x44\x08\x24\x97\xf6\xe8\x9b\x00\x5d\xfd\x03\x07\xfe\xc8\x81\x3f\x01\x70\xed\x1d\x0e\xfc\x9e\x03\x22\xcf\x9f\x01\xd8\xb8\x28\xa0\x2b\xbc\xca\x9b\xdf\x03\xe0\x16\x4f\xb9\xf5\xaa\xc8\xc4\xa1\x6b\x69\x0d\xbc\xd2\xdb\x6f\xf3\x6f\x17\x00\xd8\x3c\x4b\xb6\xc9\x97\x68\x87\xbf\x05\xd0\xb5\x77\x01\xb8\xf9\x17\x00\x6e\x7f\x13\x80\xcd\xb3\xe4\x86\x38\x45\xb3\xbf\x0a\xd0\xc6\xc5\x0b\x00\xdd\x7c\x47\x24\xfd\x0d\xa0\x6b\xff\x14\x49\xef\x02\x74\xe3\x27\x00\x6c\x5e\xf8\x1d\x40\x77\xce\x7d\x45\x40\x5f\x13\xd0\xcb\x1c\x3a\xff\x2b\x5e\xe2\x2c\xd9\xb8\x1e\x6d\xfe\xdb\x00\x5d\xff\x32\x00\xd7\x2e\x73\xe0\x3d\x00\x36\x2e\xfe\x53\x40\x97\xf8\xc7\x7f\x89\xa4\x7f\x0b\xe8\x0a\xaf\xeb\x7d\x0e\x7c\x15\x80\x1b\x3f\x05\xe0\xf6\xef\x01\xd8\xbc\xf0\x4b\x80\xee\x9c\xfb\x26\x87\xce\x7f\x45\xa4\x7d\x1d\xa0\x9b\xf4\x23\x9b\x34\x42\x17\x76\x69\xaf\xbf\x03\xd0\xc6\xc5\xf7\x39\x74\xe9\x2b\x02\xfa\x1a\x40\xb7\x2f\x70\xe0\xcf\x00\x6c\x9e\x25\x47\xca\xa7\x75\x7c\x17\xa0\x9b\x97\x00\xb8\xfe\x12\x00\x57\x2f\x00\xb0\x71\xe9\x65\xfe\xed\x1b\x22\xe9\xeb\x3c\xe9\x15\x91\xf4\xaa\x80\xbe\x09\xd0\x8d\xf3\x00\xdc\xfe\x2b\xcf\xce\x3f\xdd\x39\xff\x7d\x01\xfd\x9a\xf7\x81\x2c\x83\xcf\x46\x49\x4a\x06\xb4\x87\xff\x03\xd0\xd5\xbf\x72\xe0\x6f\x1c\xf8\x3b\x00\x1b\x57\xce\x0a\xe8\xfb\x02\x7a\x5d\x40\x3f\xe4\x05\xde\xe5\x49\x97\xbe\x03\xd0\xad\x3f\x8a\x24\xde\xd0\xf5\xef\x88\x24\x51\xd9\x25\xde\xc0\x75\x9e\xeb\xd6\x9f\x39\x70\x81\xd7\xfe\x0f\x9e\xf2\x7b\xd1\xb2\xa8\x93\xd7\x74\xf3\x35\x9e\x49\xf4\x80\xe7\xb9\xf1\x4b\x51\xec\x9c\x80\x7e\x26\xa0\xf4\xeb\xcf\x05\xf4\x2b\x01\x89\x3e\x5f\xf9\x09\x6f\x89\xf7\xe2\x26\x1f\xe2\xd5\x8b\x3c\xe5\x7d\x00\x6e\xff\x00\x80\x3b\xe7\x5e\x15\x10\xaf\xea\x36\x9f\xad\x1b\xb4\x19\x8a\x19\x28\x44\x09\x8e\x73\xb4\xdb\x01\x5d\x2c\xd2\xa1\x1e\x5d\xac\xef\x01\xb4\x71\xe9\x87\x02\x7a\x1d\xa0\x1b\xbf\xe6\x49\xef\xfe\x1b\xa0\x3b\xe7\xbe\x2f\xa0\xb3\x02\xe2\x45\x37\xcf\x12\xd4\xfd\x02\xad\xf8\xfb\x00\xdd\x7e\x15\x80\x3b\xe7\x5e\x17\xd0\x4f\x00\xda\x3c\x4b\x26\x29\xa4\x05\x5e\x03\xe8\xfa\x0f\x01\xd8\xb8\xf4\x13\x9e\xc4\x81\x5b\xdf\xe7\xc0\x59\x91\xe9\x67\x02\x3a\xc7\xb3\xbf\x2e\x92\x7e\x0e\xd0\xed\xef\x70\xe0\xdf\x00\xdc\x39\xc7\x0b\xde\x39\xff\x5b\x01\x7d\x0d\xa0\xcd\xb3\x84\xe2\x8d\x68\xc7\xce\x02\x74\xf5\xe7\x00\x5c\xff\x19\x00\x1b\x97\x7e\xcd\x93\xce\x89\xa4\x5f\xf2\xa4\x5f\x8a\xa4\xdf\x0a\xe8\x57\x02\x7a\x07\xa0\x5b\x3f\xe1\xf9\x79\xf5\xb7\xde\x07\xe0\xce\xf9\x77\x04\xf4\x32\x2f\x78\x99\x37\xbe\x79\x96\x54\x16\xd3\x2e\xfe\x00\xa0\x8d\x4b\xbf\xe7\xd0\xe5\xd7\x01\xba\xfe\x6b\xf1\xf1\x8f\x00\xdd\xfa\x19\xff\xf6\x2b\xf1\xed\x82\x80\xfe\xcc\x3f\xfe\x16\x80\x1b\xbc\xdc\xff\x7e\x03\x80\xcd\x0b\xbf\x01\xe8\xce\xf9\xaf\x73\xe8\x0d\xd2\xdb\x98\x11\x5b\x84\x52\x4f\x68\xd7\x7e\x08\xd0\xd5\x4b\x1c\xb8\xcc\x81\x2b\x00\x5c\x7f\x07\x80\x8d\x4b\x3c\xd3\xf5\xdf\x8b\x24\x91\xeb\x8f\xbc\xdc\xbf\x00\xb8\xf9\x06\x07\x7e\xcc\x81\x1f\x71\xe0\xa7\xbc\xfc\x95\xdf\xf2\xf2\x7f\xe6\xc0\x05\x9e\xe9\x07\x00\xdc\xe2\x9d\xbc\xf5\x3a\x00\x37\xfe\x22\xca\x8b\x9e\x5c\x11\xdd\xbc\xf2\x67\x01\xfd\x51\x40\x17\x04\xf4\x6b\xd1\xf7\xbf\xf1\x26\xff\x26\x92\xfe\x29\xa0\x77\x01\xfa\xdf\x6f\x02\xb0\x79\x96\x94\x5c\xa5\xd3\xf6\x23\x80\x36\x2e\xfd\x5b\x40\xef\x03\xf4\xbf\xaf\x02\x70\xe7\xdc\xcf\x79\xd2\xb7\x45\x12\xd9\x76\xab\x8c\x83\x20\x8b\xb4\x46\xab\x7b\x1d\xa0\x8d\xcb\x5f\x11\xd0\xd7\x00\xba\xfe\xae\x48\xfa\xba\x80\x5e\x16\xd0\x8f\x05\xf4\x4d\x80\x36\x2f\xfc\x8d\x43\x67\xc9\xec\x9e\xa6\x4d\xfc\x18\xa0\x8d\xcb\xaf\x0a\xe8\x3b\x00\x6d\x9e\x25\xb4\xc7\x3a\xcd\xf7\x13\x80\x36\xae\xfc\x0d\xa0\xab\xff\x06\xe0\xfa\x3f\xc5\xb7\x4b\x00\xdd\xe2\x99\x36\x2e\xff\x0f\xcf\xfe\xbe\xc8\x25\xf2\x5f\x4e\x6b\x7d\x17\xa0\x1b\x7f\x07\xe0\xf6\xff\x88\x6f\xbc\xe4\xe6\x59\xb2\x96\x2f\xd2\xfe\xfc\x14\xa0\xeb\x97\x01\xd8\xb8\xfc\x7d\x9e\xf4\x2f\x0e\xbc\x27\xbe\x9d\x15\xd0\x0f\x01\xba\xf1\x0f\x00\x6e\xfd\x1a\x80\xdb\x5f\x06\x60\xf3\xc2\x1f\x00\xba\x73\xee\x57\x00\x7d\x40\x2e\xe0\x0f\xbe\x4f\x20\x72\x9c\x3e\xf8\x21\x81\xc8\xd4\x7e\xf0\x3a\x81\x08\x1d\xf6\xc1\x4f\x08\xf4\x3b\x01\x91\xc5\xfd\xe0\xe7\x04\x22\xb7\xff\x07\xbf\x26\xd0\xef\x05\x44\x86\xf7\xc1\x3b\x04\x22\x8d\x7d\x70\x81\x40\x64\x5b\x7e\xf0\x2e\x81\x08\xb5\xf9\xc1\x3f\x09\x44\x36\xed\x07\x97\x0c\x64\xfc\xdf\xb7\x38\xf4\xc1\xf7\x44\x1a\x6d\xe3\x7d\x02\x91\x45\xfb\xbf\x97\x09\xf4\x2a\x87\x3e\xf8\x8b\x48\x23\x3d\xfd\xbf\x6f\x12\x88\x50\x49\xff\xf7\x35\x63\x30\xa1\x7a\x4e\x80\xa8\xd3\x06\xf7\xd8\x8a\xad\x72\x88\xa9\x4d\xa8\xb9\xa7\xfe\xdf\x5f\x4c\x2a\x95\x4a\x65\x86\xfc\x79\x7c\xb1\xb1\x67\x45\x55\x91\xe4\x6a\x15\x75\xdc\xa0\x46\x5e\x3a\xfd\xcb\x10\xb7\x67\xba\x41\xcb\x6d\xbb\x38\xdc\xc3\x81\x68\x4f\x88\xdb\xbb\x2a\xfe\xbb\x2a\xfe\xbb\x2a\xfe\x8f\xa8\x8a\x3f\xec\x42\xff\xa3\xea\xf5\x47\x72\x6d\xc4\xbd\x9d\x50\xa5\x30\x72\xbc\xb9\x8f\xda\x52\x69\x2a\x8b\xb5\x14\x8d\x58\x51\x41\xee\x90\x29\x1a\xac\x43\xed\x25\xa0\x86\xfc\xa8\xfd\x85\x33\xcd\xe5\x9a\x3f\xa8\x9d\x61\x9e\x71\x6b\x3e\xea\x85\x01\xd3\xba\x75\x07\x3b\xe4\x7c\x24\x92\x3c\x57\x1d\x05\xdc\x7f\xd4\xf1\x9d\x95\x4c\x20\x49\xd0\x35\x5e\x0a\x13\xff\xb0\xd3\xec\xe0\x1a\xd9\x54\x27\x70\x8c\x9a\x4e\xcf\x59\x76\x3d\x37\x76\x71\x54\x83\xba\xba\x6a\x45\x87\xa5\x2c\x0b\xa3\xb3\x98\xc6\x5c\xb9\x3a\x67\x08\x2b\x62\x66\x36\xcf\x3b\x97\x37\x40\x38\x83\x99\x17\x7e\x9e\x5f\x4c\x12\x2f\xbf\xcc\x21\x98\x47\xae\xdb\x8c\xe8\xe9\xf5\xbc\x7c\xd5\x10\xc0\x8b\xa1\x46\x87\x20\xfb\x20\x72\xc9\x17\xc7\xb3\x50\xc4\xcc\xc2\x99\xca\x73\x22\x1c\x75\x23\xcf\xf6\xcb\xcd\x65\x45\x63\x1b\x97\x9b\xcb\xb6\xc7\x2c\x9e\xa9\x55\x3c\x99\xbf\x23\xfe\xe1\xc0\x8f\xc9\x7d\xe2\x11\xfc\x1b\x98\x91\x55\x2a\xb9\x66\x62\x71\xff\xcf\x64\x2d\xd2\x4c\x09\x8a\x50\x4c\x56\x8f\xb7\x69\x47\x88\x3b\x4b\xb6\x13\x6a\xb5\xc2\xc6\x6f\xc7\x03\x94\xf4\x5a\xda\xb9\x92\x74\xb7\xa9\x4d\xbd\x34\x1c\xdf\x0e\xd3\xe1\x44\x76\xc8\x87\x93\xd8\x21\x0c\x27\x51\x86\x93\x14\x0e\x27\x49\xfb\x42\x86\xe5\xd3\x61\x45\x34\xe2\x97\x99\x76\x9f\xa6\x0a\xef\xcf\xa5\x52\xaa\x3b\x1a\x21\xdf\x9a\xb2\x25\x15\x57\x9e\x0b\x29\xa5\x35\x73\xa4\xc9\x88\x98\xb9\xb8\x26\x73\x84\x7c\xa9\xa3\xf2\xc4\xfa\xe9\xc4\x46\xd6\x00\x29\xc5\x0a\x36\x47\x1a\x7c\x95\x52\x08\xd4\x9f\x82\x41\x0a\x7e\x86\x1c\xbc\xc8\x40\x2c\xf7\x84\x98\x2e\x7a\x7a\xca\x4e\xab\x65\xfa\xa4\x09\x79\x02\xb5\xcb\xa5\x6f\x80\x54\xb4\x4c\x2b\xd7\x56\x1d\x42\xd5\x87\x97\x33\x75\x62\x33\x86\x81\xb1\xfe\xe5\x46\x85\xcb\x6e\xf4\x14\x8b\xcf\x81\x5b\xfd\xbe\xf4\xd3\xf5\x57\xfa\x7d\xd6\x9b\x88\x9a\xcb\x90\xfc\x03\x04\xc1\x3c\x34\x5b\x2e\xd5\xd4\x85\xc5\x09\x6d\x79\x79\x08\x91\xb0\x9c\xed\xbc\xd6\xa1\x82\x62\x8d\x44\x66\xa2\x49\xae\x5c\x8f\xba\x61\xb2\x90\xdf\xef\x07\x66\x48\x77\x55\xac\xdf\x1d\xd4\x2f\x06\xd9\x0d\x83\xc1\xc0\x4a\xc9\xd8\x49\x6c\xea\x3c\x84\xec\xa0\x0f\x38\x8b\x2d\x17\xed\xa7\x64\x10\x16\xe9\x68\x70\xbf\x85\xc3\x19\x6e\x79\xcb\xff\xca\xb1\x53\xb6\x6f\x06\x65\xc6\x1f\xd5\x3b\x3c\xbc\xa7\x9e\xfb\xfc\x87\xc2\x73\x9f\xab\x78\xee\x73\x77\xd4\x73\x5f\xb0\xeb\xb9\x6f\xa8\xe7\xbe\x24\xeb\xb9\x2f\xb9\x97\x9e\xfb\x1c\x8d\xe7\x3e\x87\x19\xc3\x41\x7f\x43\xc5\x73\x5f\x4c\xd1\xa2\xc6\xe3\x51\xb8\x10\x99\xd8\xaa\x85\x8a\xfb\xc7\x0f\x2b\x5e\xab\x24\xe3\x28\x8a\x36\x7c\x6f\xe3\xb5\x7a\xf7\x37\x5e\xeb\xce\xd0\xed\x4d\xf9\x40\x7e\x94\xdd\x5c\xb9\xdc\xcd\x55\x13\xc9\x96\xd6\x4c\x6e\x41\x56\xc3\x41\x89\x1d\x98\x4d\xc9\xe3\x55\x53\x04\x56\x0a\xd9\x89\x69\x0e\x0d\xac\xa4\x32\xc8\x88\x99\xf0\xc6\xd4\x5c\xd7\xaf\xbb\x72\x60\x25\xb7\x91\x3a\xd1\x8c\x4c\x6c\x27\x72\x60\xa5\x24\x13\x58\xc9\xa7\x81\x95\x5a\x6e\xeb\x78\xe2\xb3\xe0\x49\x22\xd8\x10\xb6\x9b\xc8\x8c\x85\x7b\x2d\x66\x5f\x9d\x77\xb0\x95\x12\x81\xb8\x5e\x69\x30\x52\x89\xd5\xd7\xef\x9b\xd2\x2f\x72\x9b\x84\x26\x06\x09\x4d\xd5\x42\xb1\x05\x31\xfd\x7d\x53\x5a\x1f\xc2\x45\x38\x34\x0d\x39\x16\x6a\x12\xcc\x96\x6e\xad\xe6\x96\x68\x12\xc6\x66\xec\xd2\x24\xbb\x34\xc9\x2e\x4d\xb2\x4b\x93\xec\xd2\x24\xbb\x34\xc9\x2e\x4d\xf2\xa8\xd3\x24\x0b\x19\x12\xa4\xa6\x52\x28\xf7\x8e\x20\x51\x63\xca\xee\x92\x24\xbb\x24\x49\x21\x49\x92\x62\x54\xd3\xb5\x25\x7a\x61\x2a\x43\x2f\x94\x4a\xfc\x7a\x5c\xc1\xf1\x82\x04\x17\x48\x81\xd5\xf3\x41\x66\x62\x7e\x2a\xf7\xa2\xaa\x7a\x42\x81\x77\x55\x14\xa7\xcf\x4d\x26\xb6\x3d\x13\x5b\xd6\xbc\x35\x2f\x3d\x8d\xa3\x98\x05\x3d\xe4\xd7\xf9\x48\x57\xb6\xa4\x00\x94\xa7\xc1\x3e\x17\xe8\xff\xac\xbd\xd0\xaa\xb9\xec\xc9\x7a\xc0\x08\x2b\x14\xf6\xfb\x9a\x58\x18\x30\x49\xc1\x8e\x52\x6e\xce\x2e\xe5\x36\x94\x72\xf3\xb2\x94\x9b\x77\x2f\x29\xb7\x48\x43\xb9\x45\xdb\xa3\xdc\x92\x0c\xe5\x96\x7c\x78\x94\x9b\x27\xe1\x73\xef\xc3\xa0\xdc\x9a\x0f\x23\xe5\xd6\x7e\x54\x28\xb7\x80\x53\x6e\xad\x02\xca\x2d\x42\x6d\xdb\x31\x5b\x12\xe5\xd6\xca\x52\x6e\xad\x1d\xa7\xdc\x9a\x66\x62\x62\xbb\x2d\x53\x6e\x6d\x2d\xe5\xd6\xf6\x0d\xc4\xdd\x68\xd3\x42\x16\x32\xd2\xb7\xdc\xfc\x37\xdf\xe9\xe2\x56\x9a\x2c\x11\x7b\xad\xed\x12\x7b\x6d\xdf\x0e\xd9\xab\x6a\xda\xb0\x2d\x13\x7e\xe4\x13\x6d\xd7\x8e\x45\x68\x53\x42\xa2\x3d\xc5\x29\xb4\x4c\x2b\xd6\x19\xa8\x17\xde\xee\xd2\x6a\x21\x81\x56\x56\x2a\x99\x15\x04\x19\xd9\xb3\x9a\x94\x51\x6a\xd4\x42\xae\xe9\x99\x2d\x39\x72\xa7\xda\x3a\x60\x54\x82\xcd\x29\x58\x40\x97\x46\x8c\x2e\x8d\x2c\xd4\x52\xe9\xd2\xf6\x48\xba\x94\x54\x11\x19\x9a\x4b\x21\x57\xec\x85\xc4\x0d\xf1\x0c\x0b\x86\xb0\x87\xc5\x13\x56\x9c\x8d\x43\x8e\x11\xfe\xc4\x77\xc8\xe7\x23\x68\x07\x64\xbd\x54\x55\xb5\x5e\xaa\xaa\x8d\x05\xf9\x47\x4d\xc4\xf3\xa0\xf7\x17\xaf\x9f\x90\x3c\xa9\xa2\x1f\x75\x86\xcc\x3d\xf6\x9b\xd8\xaa\x87\x0d\xad\x36\x62\x14\x78\xab\x38\xdc\xd3\xc6\x4e\x9c\x84\x63\xce\x24\x94\xd1\xcc\x61\x26\x07\x07\xa2\x3d\x94\xaa\x75\x9b\x3b\x3d\xb9\x85\x05\x44\xfc\x9a\x33\x2a\xa2\xd7\x3b\xd5\x14\x33\x35\x18\x68\x7c\xd8\xe7\x86\xf3\x28\x8e\x59\x0c\x67\x4f\x33\xf0\x63\xc7\xf5\x71\x38\xd3\xc2\xcb\xc9\xca\x8c\xd3\x72\x7a\xf1\x56\x27\x05\x36\xcf\x56\x7c\xf7\xa7\x0c\x40\x5c\xee\x52\x62\x8f\x11\x38\x2b\x8b\xa7\x7b\xa6\xf1\xdf\x7b\x16\x8c\xe9\x70\xda\xd8\x63\x96\xa7\xad\x3d\xc6\x34\x9e\x36\x3e\x06\x2e\x1d\x79\xcc\x70\xe1\xef\xb2\x5e\x6d\xec\xd0\x55\xce\x55\x52\x0e\xf3\x39\x79\x8a\x4c\xc9\x21\x36\x23\x65\x7c\x3a\xc6\x7e\xcb\x3c\xb3\xc4\x90\xce\x71\xbc\xe2\x46\x71\xb8\x5e\xa3\x61\x79\x08\xe1\x95\xc3\xcb\x4b\x94\x00\xd3\x93\x92\xa0\x5d\xa3\xd6\xc5\xdf\x26\x32\xc9\xf4\x5a\x8c\xcb\x47\x95\x44\x6b\x80\x9a\x8e\x7f\xd8\x89\x1d\x2f\x58\x59\xf4\xe3\xd0\xc5\xd1\x93\xeb\x84\x8a\xd0\x90\x63\x46\x37\x68\x61\x8f\xc6\x0a\xe9\xf7\x47\xf6\x8d\xd4\x3c\xa2\xda\xf4\x16\xd7\x75\xb8\x9c\x06\xa9\x89\x4c\x0b\xf9\x92\x1b\x3e\xd7\x16\x17\x4e\xd4\x73\x9a\x18\xb2\x3e\x17\xe2\xb6\x7b\x1a\x05\x76\x05\x39\xb6\x60\x80\x83\x83\x4e\xea\x47\x35\xb2\x63\x70\x97\x3a\x53\x9d\xb2\xed\x48\xb8\x7e\xc3\x16\xf7\x2a\x4a\x76\x56\x84\x32\x0d\xf4\x82\xd6\x51\xa9\x8d\x7e\xdf\xb5\x26\x92\x7e\xdf\x4c\xec\x08\xe2\x80\xe3\x69\x23\xda\x63\x58\xe5\x5e\xd0\x33\x2d\x0b\xf9\x65\xa7\xd5\x02\x85\xe8\xc4\x12\x4a\xc3\xfe\x60\x20\x5f\x66\xfe\x96\x8e\xd9\x68\xec\x0a\xae\x8c\x49\xfe\x99\xb6\x43\x88\xb3\xf5\x2d\x06\xc3\x78\x30\xa5\x08\x77\x71\x34\x71\x66\xcb\xdb\x3c\x36\x8a\xf0\x8c\xcc\x2e\xf9\x2f\x45\x65\xcc\x76\x6a\xa9\x64\xe6\xd2\xa4\x5c\x4b\xd8\x39\xb5\x14\x61\xec\x73\xd5\x6d\xe9\xc4\x4a\xaa\x4d\xf1\xfd\xd2\x6d\x02\x24\xc0\x3b\x1a\xf7\xfb\xb9\xde\x0f\x58\x74\x22\x1f\xb9\x9c\xe2\x8d\x6d\x8c\x4c\x9f\x13\xa0\xd2\x49\xd3\x90\x87\x50\x44\x0e\xbd\xa3\x34\x99\x46\xd0\xef\x38\xf9\xf2\x12\x37\x47\x38\x31\xa5\xa4\x28\xb8\x82\xe3\x21\x05\x61\x3c\x84\xcd\xa3\xc4\x62\xa8\x44\x25\xf2\x2d\xe4\xd2\x34\xe4\x12\x0a\x9b\x12\x8b\x99\x25\xf7\x15\x57\xe1\x30\x10\x8e\x8a\xe1\xf0\x1c\x23\x8c\x51\x4e\x7b\x0e\x02\xfb\xb7\x5d\x1f\xce\x3f\x99\x24\x10\x13\xa4\x97\x0f\x1b\xd3\xe9\x38\x74\x9a\xf1\x53\x6c\xdf\x2d\xd2\x23\x6a\x86\x88\xe5\x15\xbb\xcd\x97\x56\x1c\x56\x7b\x72\xf1\x74\x8f\x3a\xcb\x9c\x8c\x83\x49\xd2\x52\x6d\xf2\xb1\xd4\xd8\xa4\xdc\x4e\x3c\x8f\x6a\xec\x19\x8f\x4d\xae\xb9\x71\xc7\xf5\x27\x1f\x33\x2c\xfe\x3d\x24\xc9\xcb\x49\x3c\xb9\x12\xc4\x93\x8f\x09\x39\xce\x63\xe5\xc9\xa7\xdc\xd6\xe4\x7a\x90\x4c\xb6\x83\x70\x05\x53\x2d\xfa\xc7\x18\xde\x98\x84\xa3\x51\x54\xdd\x02\xb9\x24\xf9\x3e\x21\x43\x8b\x3a\x41\xe2\xb5\x3e\x1b\x3a\xbd\x23\xfe\x61\xb2\x19\x9f\x66\xa8\xc5\xf4\x11\xb5\xc5\xf0\x6d\x95\xb4\xf4\x09\xfe\x1b\x0c\x50\xcf\x09\x23\x16\x64\x4c\x9e\x56\x72\x0c\xa8\x4c\xa2\x4c\xbf\xb7\xa8\x56\x29\xdf\x22\x4a\x1c\x2d\x0c\xa8\xd5\xf8\x04\x73\x39\x3b\x67\xdb\x36\x77\x53\x4f\xeb\x21\xd5\xb8\xf5\x4a\x43\xa4\xc5\xb6\xf1\x09\x31\x75\x6e\xbd\xda\xb0\x20\x26\x87\x5b\x9f\x6d\xf0\xda\x6a\x86\x35\x11\xda\x41\xbd\xd2\x40\xbe\x1d\x90\x9b\x9f\x0a\x6c\xf2\x65\x51\xc8\x6a\x67\xbc\x55\x05\xcd\x54\xc9\x35\x44\xaa\x9a\x30\x78\x5c\xc8\x5a\x1a\x2b\x0d\xe2\xcb\x98\xbe\x6d\x48\x01\xd4\x8c\x94\x83\x44\xa1\x2d\xca\x19\xdc\x19\x6b\xdb\x9c\x55\x86\x05\xde\xbe\x69\xbb\x69\x7f\x21\x9b\xc3\xb3\x91\x91\x3b\xf5\x2a\x1f\xf9\x82\x19\xda\x0e\x1b\x50\x76\x10\x56\xcd\x8c\x69\x56\x24\xb2\xb0\x89\xa1\xbe\xac\xd9\x9d\x48\x12\xe4\xd6\x62\xda\x3e\x0a\xed\x88\x15\x20\x2c\xc6\x20\xed\x3a\x1b\x27\xe9\x42\x5c\xf6\x9c\x88\xf9\x48\x3e\xd6\x36\x95\x61\xa3\x8a\x35\x74\x2e\x62\x3b\xe6\x4c\x6b\xd5\x12\x32\x33\x53\x5a\xf5\x9a\x61\x59\x69\x87\x27\xd8\xed\xec\x23\x4f\x52\x50\x66\xda\xb8\xe2\x9a\x16\x12\xa9\x33\xe9\xd6\x22\xe4\x2e\x3f\x42\x35\x8c\x7a\xf4\xfe\xae\xc5\x40\xc1\xb0\x9f\xe6\x19\x82\x49\x6a\xe1\xc0\x42\x0c\x10\x25\x3e\xeb\xc6\x9d\x20\xa1\xae\x5f\x6b\x09\x22\x0d\xd5\x7c\x14\x06\x41\x5c\xf3\x10\x20\x8e\xa3\xd4\x58\x84\xc5\xd2\x83\x24\x63\x9a\x75\x91\x8b\x2e\xe9\xfd\xdd\x5e\x37\x43\x82\x2a\x7b\x5e\x12\x3a\x9e\xfb\x22\x6e\x91\x5a\x23\x46\xfa\xe9\xc8\xc1\xae\x73\x0a\x9f\x04\xf1\x67\x4d\x2b\xf0\x1d\x42\x05\x4d\x1b\x9f\x30\xa6\xe3\x69\xa3\x66\x0c\x50\xd1\xf9\xcd\x23\xf9\xa9\xea\x60\x18\x15\xca\x63\xcb\xb1\x86\x9e\x74\x22\xdc\x3a\x0e\xa4\x07\xb9\xe4\xb7\x4a\x8d\xfa\xfc\xee\xf2\x83\xb0\x4b\xa7\x84\x2a\x21\x67\x24\x4f\x92\x1e\x79\x66\xea\x6c\x5d\xa2\x10\x14\x8e\x2c\x0e\x44\x0a\xef\xa1\xfe\x2b\xd9\xbf\xe4\xaf\xc1\xfb\xda\xc2\xbd\x10\x37\x9d\x18\xb7\x9e\x53\x69\x42\x9b\x4c\x9e\x18\x89\xee\x1e\xd3\x0d\x96\x1a\x06\x9a\x05\x5f\xec\x4c\x3a\xa1\x52\x07\x7c\xdf\xe5\x35\xbd\x11\xdc\x56\x02\xef\x9a\x98\x99\x17\xe4\x76\x6a\xb1\xd1\x0b\xa9\xa0\xee\x37\xa8\x3d\x13\xc0\x66\x48\xf0\x39\x33\x7a\x12\xe9\x65\xf9\xda\xa4\x39\xe2\x01\x5a\xd2\x0f\x9f\xab\xa1\xab\xf8\x2c\x16\x12\x0e\x71\xd5\xa6\x81\x9b\xa4\xb0\x96\x10\x81\x8b\x49\x77\xf8\x2f\x6e\xbe\xc2\x7f\xeb\x70\x13\x41\x6a\xae\x0e\x35\x59\x0b\x21\x39\x18\xd3\x34\x87\x30\xe5\x5c\xda\xb3\x82\x8c\x19\xc3\xaa\xb1\x8f\xca\x09\x6e\x39\x51\x07\x87\x64\x05\xd4\x32\x5f\x2c\x93\x42\x7b\x0c\x4b\x38\xd0\xc6\xd2\x01\x2f\xdc\x03\x99\xad\x26\xed\x81\xfc\x17\x9b\x30\x16\x86\x35\x40\xbd\xa0\x45\x4f\xdc\x33\x41\x70\x2a\xe9\x11\xc4\xc4\xf6\x9d\x56\x5e\x18\x97\x35\x18\x8c\xcf\xad\x3c\x59\x31\x0d\xfb\x48\xc3\xa0\x85\xe9\xb8\xfe\x3b\x9d\xae\x2f\xee\xd9\x83\x0c\xc3\xb2\x10\x9e\x36\xf6\x30\x7e\xda\x98\x66\xa5\xd2\x3e\xa5\xb4\x91\x66\xe1\x47\xb1\x52\x43\xb0\x98\x42\x86\x14\x4d\x80\x19\x23\x2c\xcd\x8f\x88\x43\x18\x1d\xf1\x4f\x24\xcb\x2d\x57\x67\x13\x71\x37\x7d\x22\x7b\x77\xda\x36\xa4\x28\xa9\x06\x52\xf7\x2b\x8b\xa5\xd9\xef\xcb\xf3\x08\x46\x91\x58\xb7\x30\xc2\x50\x72\x9c\x71\xc2\xc1\x5b\xf4\x57\x5c\x5f\x7f\xce\x34\x2d\x4c\x1b\x7b\x30\x2d\xc0\x04\x84\x3a\x76\xbb\xe3\x44\x66\xac\xf6\x44\x4f\xd3\xc6\x69\x27\x8e\x07\x49\x8c\x8f\x3a\xbd\x71\xbb\x41\x30\xd4\xb4\xb1\x27\x24\xc5\xa2\xe1\x5d\x09\xad\x71\xc8\x6b\x2b\xb5\x9e\x14\x9d\xe2\xf1\x27\x8b\x96\x5d\xc1\x5c\x38\xad\x41\xc2\x70\xec\xf0\x9f\x5c\x3c\xfa\xdc\x33\x87\x4e\x2e\x9e\xa8\x6b\x07\xd3\xa0\x38\xaf\xeb\xb8\x7e\xc1\xf6\x77\xdb\xa6\x41\x3e\xb3\x2d\xa1\x5b\x77\xf1\xce\xd5\x83\x4b\x7b\x8f\x31\x8d\xe1\x6c\x71\x5f\xf6\xfa\xba\x75\x25\x55\x0c\x62\x42\x44\x57\xa8\x54\xd3\xfc\x00\xf9\x38\x8a\xc9\x89\xf1\x82\x26\x0d\x1e\x2b\xce\xce\x90\x11\x69\x76\xba\x76\x1c\x5b\xed\xcd\xb4\x01\x02\x8e\x01\x27\xd2\x46\x1e\xdb\x42\x54\x21\xb2\xd4\x59\xb3\xd3\x06\xcb\x64\xa4\x17\xdb\x90\x3c\x6c\x5d\xc5\x0c\xb0\x73\xf8\x9c\x13\xc7\x38\xf4\xb9\x8d\xa5\x08\xca\x94\x37\xd2\xac\x2b\xa7\x38\x9d\x49\xa4\xa4\xe7\xd1\x14\xd0\x56\xca\x7e\x62\x69\xb9\xad\x00\xe2\xa9\xd1\xab\xd7\x18\x58\x56\x39\xc4\x4e\xeb\x98\xef\xad\x9b\x16\x52\x19\xd9\x5a\x5e\x6f\x82\xbf\x85\xd3\x06\x08\x89\x6d\x14\x4d\x84\x41\x1f\xd7\x50\x60\xfb\x5c\x48\xe4\x1e\x0c\xd2\x20\x4b\x8e\xed\xd7\xdd\x46\xfa\xd0\x03\x8c\xb0\x53\x2a\x99\x0e\xab\xbd\xd9\x09\x82\x08\x4b\x6c\xb5\x83\xb0\x45\x35\x92\x0a\x91\x82\x43\x4d\xff\x6d\xc7\x42\x9c\x80\x5f\xf2\x82\x15\xd6\x2f\xc2\x6b\x23\xc7\x42\x22\x88\x51\x38\x18\xa0\x6c\x1b\x9a\x3d\xa5\x5c\xf4\x84\x81\x0e\xa3\x66\x10\x72\x26\x1f\x4f\x51\x9c\x50\xd8\xa3\xd4\x20\x52\x8f\x4e\xb5\xf2\x9d\x43\xdd\x65\x77\x25\x09\x92\x68\x92\x15\x9a\xa4\x7b\x51\x61\xfb\x09\x5b\xef\xf8\x2d\x99\x37\x8f\x91\xf1\x18\xc8\xaf\x87\x74\x27\x65\xa5\xc7\x44\xf4\xe0\xa4\x01\x4b\x54\xcd\x9e\x19\xb3\xfe\xdf\x7b\x1a\xff\xaf\xf5\xb1\x3d\xc8\xd8\xb3\xf4\xb1\xaa\xa1\x0a\x04\xf4\xf8\x7a\x21\xe4\x96\xbd\xc8\xa3\x2b\xc2\x95\x62\xdc\xc0\x2f\x3a\xcb\x32\xa9\xaa\x34\x91\x91\xb8\xc4\x68\xaa\x62\x0d\x50\xba\xda\x39\x45\x20\x11\xb2\x6e\xf1\xd9\xcf\x94\x9f\x39\xf6\xc9\xa5\xa3\xc7\x9e\x7a\xfe\x99\xc5\xa5\xe3\x8b\x27\x8e\x3d\xf3\x99\xc5\xe3\xfd\x7e\x5c\x26\x8c\x1b\xfd\xc6\x13\xe1\x8a\x41\xae\x8d\x17\x8c\xfa\xe6\x1b\x67\x1b\x46\xcd\xa8\x4f\x36\x8c\x09\x5f\x22\xa1\x38\xa1\xba\xbf\xb2\x60\x94\x8d\x5a\xfa\xbe\xbc\xbf\x32\x93\xcb\x65\x95\xbf\x14\xb8\xbe\x69\x94\x0d\x0b\x85\xfd\xbe\x09\x34\x79\x6e\x46\xc8\x12\xa0\x66\xe0\x47\x81\x87\x4b\x25\x00\xca\xae\xdf\x0e\xd4\x5f\xa6\x8b\xd2\x36\x90\x4f\xf5\x45\xd0\x29\x3f\x58\xf3\x9f\x0e\xc2\xbb\x13\xa9\x87\x5a\x4e\xcb\xb7\x2b\xc8\x4d\xc5\xe7\xfe\x41\x77\xde\x4f\x23\xa7\xc5\x75\xbf\x81\xe0\x00\xc7\xa1\xe3\x47\xe4\xa6\x3d\x19\x88\xd7\x8e\xa7\x13\xcf\xf3\xe9\x7a\xa2\xc0\x9a\x20\xa7\x3d\xac\x3b\x0d\x9b\xac\x9e\x38\x96\x68\x58\x41\x3d\x39\x9b\xe3\xd5\xf1\x80\xb2\x36\xe4\x3a\x41\xae\x4d\x2f\x15\x14\xd8\xb1\x20\xf8\x7d\x8b\xbe\x01\xf0\x9f\x2e\x3d\x36\x34\xfa\x4c\xa9\xe4\x30\xc9\x05\x1d\xdf\x0c\x97\xbc\x94\x4a\x82\x21\xe1\x08\x6d\x5a\x48\x65\xf8\x99\x62\x6c\x03\xc8\x2d\x82\x69\x9e\x11\x39\x16\x18\xf3\x87\xda\xab\x8f\xde\x7a\x7c\x7b\x33\xb9\x09\xef\x58\x64\x49\x0d\xf3\x47\xdf\x05\xb5\x21\x9e\x6c\x89\xf3\xa5\xa5\x86\x34\x67\x4c\x48\x4e\x29\xff\xc6\xfe\x9b\xaa\xa4\x27\x8d\xb4\x0d\x97\x0b\xbb\x18\xd3\x88\xee\xf1\x60\x60\x4d\xb8\xe5\x10\x07\x3d\xcc\xa4\x06\xe6\x19\x0d\xdf\x4f\xc5\xed\x5c\xc8\x36\x3c\xc6\xed\xd0\x57\x8a\x0f\x23\xbe\xe2\x19\xb6\xef\xa5\xc8\x89\xe2\xa9\x2b\xcf\x18\x63\x10\x18\x2f\x70\xc0\x8c\xad\x1a\x1e\x0c\x06\x03\xcb\x9a\xc8\x0c\x94\x90\xb7\x33\x2c\xe8\x3e\x68\x25\xec\x99\xe9\x85\xee\xaa\x13\xe3\x3d\xae\x4f\x6e\x4f\x67\xfc\xc0\x8a\x5b\x1d\x32\x13\xa1\x0a\x2f\x3b\x36\x74\xaa\x13\x77\xbd\x65\x27\x8c\xf6\x9c\xc2\xeb\x6b\x41\xd8\x22\x0b\x10\x44\x49\xc8\x3b\x6a\xb8\xdc\xc2\x7b\x69\xc9\x0b\x9c\x16\x26\xec\x20\x43\x1b\x0b\xb9\x74\xb6\xab\xc6\xad\xd9\xaa\x49\x13\xe3\xfa\x2b\xf7\xb0\x2f\x63\xb7\x60\xd5\xce\x0c\x26\x70\xf9\xd0\xe1\x93\x47\x8e\x3d\x6b\xc7\x00\x68\x36\xad\x66\x2d\xb9\xa2\x89\xfc\x4d\xfb\x2c\x37\xde\x3e\x18\xff\x81\x4e\xef\xc6\x49\x42\xfa\x15\x14\xda\x90\xce\x71\xc6\x7c\x7c\x90\xc3\xf3\xf1\xf4\xb4\x15\xd6\xe3\x86\x8d\xeb\xb1\x50\x7e\x0a\x07\x3a\x0f\x40\x39\xf5\x62\x86\x88\xe1\xf1\x2c\x7d\x8c\xcd\xe3\x1c\x1d\x2b\xb8\x44\xa7\x22\x3c\xea\x36\xc3\xc0\x73\x97\xfb\x7d\x5c\x66\x29\x5c\x5e\xdb\x4c\xc2\x10\xfb\xf1\x11\xbf\x1d\x44\xb5\xb8\x0c\x3f\x29\x7b\x49\xd3\xc8\xed\x0d\x89\x9f\x72\xfc\x96\x87\x43\x9a\x8c\xba\x4e\xef\xc9\x75\x5d\x81\x05\x83\x36\x60\xd4\x8c\x0e\xcb\x6f\x40\xcc\x4e\x5b\x64\x66\x35\x30\xdd\x81\xde\x93\xeb\x13\x8a\x9b\x83\x43\x66\x68\xb1\x74\xd3\x27\x14\xf4\x2a\x0e\x23\x6c\x5a\xa4\x0e\x8b\x12\x27\x66\x6e\xe8\xbe\x8d\xcb\x6c\xb1\x23\x32\xc0\x25\x80\x0b\x65\x6d\x66\x68\xfb\xf5\xb8\x41\x9d\x13\xc0\x34\xb0\x22\xb5\x10\x41\xa7\x6b\xfe\x5d\xbd\x7d\x2a\xa1\x71\xc5\x7b\x17\x9d\xf8\xd1\x6c\xcc\xa4\x10\xb3\x1f\x5b\xf3\x71\x08\xaa\xb0\x8c\x8e\x31\x0d\xa8\x85\xb2\xb7\x56\x86\xc9\x80\x4a\x73\xf7\x91\x8b\x02\x2a\xe0\x47\xea\x16\x76\xad\x05\xb7\x26\x6d\x3e\x97\x30\x01\xec\x7d\x26\xb2\x83\x54\xb3\x2d\xc9\x09\xfe\x59\x27\x0c\x1e\xff\x8e\xfa\xf2\xa0\xea\x16\xca\x70\x7c\x33\x41\x8e\x55\x86\x29\x25\xb3\xcd\x22\x82\xca\xef\xb6\x70\x82\x30\x8a\x6d\x96\x9d\x92\x40\x6c\x39\x28\x5d\x01\xa5\x91\x97\xd7\x38\x6c\xc2\x91\xf3\x2c\xd4\xb6\x2b\xf3\xed\x83\xde\x7c\x7b\x7a\xda\x6a\xd6\xdb\xb2\xb6\x61\x9b\xbd\x60\xb4\xec\x88\xd3\xf3\x4d\xbe\xec\x26\x4e\xbd\x8c\x30\xf2\x11\x54\x2a\x30\xaa\x07\xc8\x15\x3a\x88\xa1\xd9\xb2\x2c\x4b\x44\x80\xf4\xea\x1c\x6d\x11\xfa\x0a\x79\x7a\xad\x1d\x3a\x45\x39\x9b\x0d\x37\xa2\x78\x69\x15\x17\xe2\xad\xb4\x0c\xbb\xae\xd9\x04\xcc\xbc\x90\xe0\x70\x7d\xa6\xe7\x84\x4e\x77\x44\x01\x42\xa0\x9c\x82\x56\x58\x8e\x2c\xa6\x23\x64\xbb\x82\xeb\x80\x18\x47\xc1\x84\xaa\xb3\x0e\xd3\xe4\x7c\x54\xed\x43\x22\xa9\xd9\x8c\xb8\xa5\xc8\x69\x5f\x42\x2a\xc8\xf8\xed\xcb\xea\xf2\x4f\x65\x3b\x3d\xd4\x67\x9f\xf6\x16\xd0\x7b\x06\x1c\xd3\xc1\x5d\x92\x3a\xb8\x0b\xb7\xef\xe0\x2e\xcc\x3b\xb8\x0b\x47\x39\xb8\x0b\x53\x07\x77\xe1\x98\x0e\xee\xc2\xad\x3b\xb8\x0b\x2d\x75\xa4\x99\xd9\x1a\xdf\xbd\x5d\xd4\x23\xd8\xf3\xc3\xf3\x6c\x97\xdc\x37\xcf\x76\x60\x57\x89\x7c\xeb\x4c\x58\x2a\x0d\x51\xca\x97\xf4\x15\x43\x49\xbd\x48\x55\x2b\x0f\x15\x3d\xa3\x54\xfd\x3c\x14\xfa\x45\xa0\x54\x12\x96\xb9\x51\xc3\x8b\x38\x5c\x50\x7e\xb1\xed\xe7\x0b\xde\x2a\x6b\x4a\x70\xcf\xcc\xb6\xda\x0f\xb2\xc2\x95\xa4\x7d\x2f\xdb\x23\xb5\x76\xd4\x1e\xa9\xb3\x6b\x8f\x34\xd4\x1e\x69\x35\x6b\x8f\xb4\x7a\x2f\xed\x91\x7a\x1a\x7b\xa4\x9e\xbc\x9e\x53\xb1\x62\x8f\xe4\x50\x77\x5f\x3a\xd3\x94\x05\x82\x61\x6b\x71\x5a\x4d\xf7\xc3\xb3\x47\x5a\x95\xe8\x87\xd5\xfb\x68\x8f\xb4\x33\xca\xc4\xeb\x68\x19\xad\xa0\x25\xb4\x86\x16\xd1\x09\xdb\xe4\x6c\x97\xeb\xc3\x30\xc2\x55\xb7\x89\xd1\x3a\xa1\xaa\x1f\x11\x03\xa2\x16\x37\x20\x4a\xb4\x06\x44\x34\x1e\xb6\xdd\x31\x13\x4b\x76\xe2\xcc\x0d\x88\x9a\x6c\x8b\x27\x43\x0d\x88\x42\xd5\x80\xc8\xb7\x2b\xf3\xfe\xc1\x98\xca\x40\xc3\xba\x2f\x93\xf4\xbe\x64\xfa\xdd\x35\xb1\xed\xc8\x06\x44\x4e\xc6\x80\x28\xa4\x06\x44\xc0\xb1\xa0\x00\x91\x33\xa1\x58\x04\x25\x92\x42\x66\xa1\x45\x10\xdc\x09\xf3\x66\x05\x85\xa9\xc2\x1d\x7b\xd6\xa4\x55\x5b\xa0\xea\x98\x35\xf6\xe0\xac\x06\xbc\xec\x40\x66\x42\x58\x52\x02\x1d\x3a\xed\xa3\x88\xb0\x5f\x4c\xcd\xb2\xad\xd8\xe4\x30\x35\x4b\x72\x69\xb9\x16\x4a\x06\xa6\x65\x49\x1f\x97\x6d\x31\xb2\x15\xbb\xee\x37\xd0\x92\x7d\x26\x6b\x40\xa7\x5a\x20\xc8\x2b\x2d\xdd\xc6\x54\xf3\x69\x80\x16\xed\x33\x03\x24\x2b\x9c\x2e\x59\x7a\xd7\x84\x8b\x75\xdc\xb0\x97\xea\xf4\x9d\x0b\x2d\xca\x77\xe4\xd4\x94\xfc\x13\x2d\x66\x6e\xc8\x29\x35\x01\x99\xe9\x85\xb9\xd8\xef\x2f\xca\x14\x02\x21\x81\x16\xd5\x0b\x74\xd1\x5e\x01\x72\x55\x92\x0d\x94\x43\xdc\x4a\x9a\xd8\x34\xf5\xba\x5a\x26\x39\xcc\x84\x40\xc4\x03\x0b\x2d\x5a\x68\x4d\x32\xec\x51\xda\xa3\xcd\xd1\xde\xa8\xe9\x0b\x8b\x79\xba\x65\x4d\x78\x69\x55\x3e\xda\xdc\xe2\x4c\x60\xdc\x6c\x0b\x7a\xfc\x44\xba\xb8\x48\x86\xc7\x9e\x02\x02\x7b\x11\xb9\xb2\xbe\xfa\x89\xb1\x19\xcc\x30\x08\xe2\x99\x24\xf4\xc6\x95\x72\x0a\xbd\xcf\x09\xd9\x62\x5c\xb6\x16\xff\x68\xb2\x7e\xc1\xc3\x44\x10\x3b\xf7\x94\x20\x8e\x1e\x0a\x82\x38\x51\x08\xe2\x02\xe7\x34\xdb\x24\x88\xbd\x5d\x82\x78\x28\x41\xdc\xca\x12\xc4\xad\x7b\x49\x10\x37\x35\x04\x71\x73\x08\x41\xec\x16\x13\xc4\xed\x0c\x41\xdc\xfe\xf0\x08\xe2\x96\x84\x55\x0b\xd8\xb9\x07\x98\x20\xee\xa0\x1e\xea\xa2\x55\x44\x09\x63\x5b\x68\x6a\x65\x08\xe2\x8e\x6d\x86\x8f\x0a\x41\x9c\x8c\xf2\x85\x14\x22\xd7\xf6\x0a\x7c\x21\x39\xe3\xf8\x42\xca\x10\xc4\x91\x5d\x99\x8f\x0e\xc6\xf3\x11\x25\x88\x23\x99\x20\x8e\x04\x41\x1c\x98\x6d\x13\xdb\xae\x4c\x10\xbb\x43\x09\x62\x1f\xb5\xb3\x04\xf1\x38\xfe\x90\x54\xbd\x5a\x56\x19\x55\xf3\x78\xfe\xf8\x33\x8c\x8a\x8d\xb2\x96\xe5\x21\x4d\x43\x21\xf3\x78\x24\x53\xb1\xbd\x94\x8a\xed\xda\xf5\xb8\x81\x56\xef\x8e\x8a\x5d\xce\x52\xb1\xab\x05\x54\xec\x32\xa1\x62\x57\x81\x8a\x5d\x56\xa9\x58\xf9\x27\x5a\xce\x52\xb1\xcb\x85\x54\xec\x72\xbf\xbf\x9c\xa5\x62\x97\xd5\x5b\x6f\xd9\xee\x6e\x9d\x8a\x25\x27\x90\x53\xb1\xcb\x16\x5a\x97\xa8\xd8\xe5\x0c\x8d\xb9\x0c\x54\xac\x92\xbe\xb0\x9c\x27\x36\xd6\x05\x15\xbb\x3c\x9c\x8a\xcd\xb6\xa0\x47\x2a\xa4\x8b\xcb\x64\x78\x5c\xa1\x65\x19\x85\x32\x15\xbb\xb2\x05\x2a\x36\x89\xb1\x78\xed\x18\xf3\xa5\x44\x29\x34\xfc\x71\x17\x2e\x36\xe4\x4e\xc8\x04\xa1\xe4\xfe\xe7\x23\x4a\xf5\x3a\x0f\x13\xd5\x1b\xdd\x53\xaa\x37\x79\x28\xa8\x5e\x4f\xa1\x7a\x0b\x1c\xfb\x6c\x93\xea\x6d\xee\x52\xbd\x43\xa9\xde\x4e\x96\xea\xed\xdc\x4b\xaa\xb7\xad\xa1\x7a\xdb\x43\xa8\xde\xa0\x98\xea\x6d\x65\xa8\xde\xd6\x87\x47\xf5\x4a\xf3\x6d\x76\x1e\x6c\xaa\x37\xc2\x4c\x8d\xe5\x39\x7a\x81\x50\xcd\x3b\x45\xa7\xa6\x67\xe3\x81\x9e\x38\xee\xa5\xfa\x7b\xf4\xb7\x20\x94\xd1\x12\x5a\x23\x24\xb1\x96\x58\xee\xda\xa6\xff\xa8\x10\xcb\x1e\x27\x96\x83\x42\x62\xd9\xb7\x9b\x66\x60\xc9\xf7\x31\x27\x96\xc1\x61\x5b\xb0\x15\x62\x39\xb1\x2b\xf3\xc9\xc1\x78\x3e\xa1\xc4\x72\x22\x13\xcb\x49\x23\xf5\xe1\xdb\x32\x09\x36\x97\x88\x65\x7f\x28\xb1\xec\xa2\x56\x96\x58\x0e\xc6\xf1\x27\x25\x76\x30\xe9\x63\x4f\x16\x1b\x23\x6e\x5b\x9f\x68\xc8\xe5\x84\x91\xcb\x41\x86\x5c\x5e\x4d\xc9\xe5\x75\xbb\x1e\x36\x08\xbd\x7b\x37\xe4\xf2\x52\x96\x5c\x5e\x2e\x20\x97\x97\x08\xb9\xbc\x0c\xe4\xf2\x92\x4a\x2e\xcb\x3f\xd1\x52\x96\x5c\x5e\x2a\x24\x97\x97\xfa\xfd\xa5\x2c\xb9\xbc\xa4\x5e\x97\x4b\xf6\xfa\xd6\xc9\x65\x72\x06\x39\xb9\xbc\x64\xa1\x15\x89\x5c\x5e\xca\x10\xb3\x4b\x40\x2e\x2b\xe9\x0b\x4b\x79\x2a\x65\x45\x90\xcb\x4b\xc3\xc9\xe5\x6c\x0b\x7a\x6c\x44\xba\xb8\x44\x86\xc7\xc8\x65\xd7\x5e\x42\xbe\x4c\x2e\xaf\x8d\x4d\x2e\x53\xbd\x6e\xea\x13\x6c\x26\x0e\xee\x4a\xb3\x68\x97\x6c\x2e\x20\x9b\xb7\xaa\x27\x14\x3d\x04\x7a\x42\xd1\x23\xa3\x27\x14\x3d\xdc\x7a\x42\xd1\x7d\xd3\x13\x4a\x1e\x26\x06\xd1\xbb\xa7\x0c\x62\xf3\xa1\x60\x10\x15\x16\xc1\x6c\xef\x28\x83\xd8\xda\x65\x10\x87\x32\x88\xdd\x2c\x83\xd8\xbd\x97\x0c\x62\x47\xc3\x20\x76\xb6\xc7\x20\xf6\x32\x0c\x62\xef\xc3\x63\x10\xbb\x12\xfd\xd0\x7d\xb0\x19\x44\x0d\xe7\x27\xf1\x79\x68\xb1\x90\xd3\x5b\x7d\x84\x38\xbd\x36\xe7\xf4\x22\x2d\xa7\x47\xa8\xc7\xc0\x6e\x99\x91\xc4\xe9\x45\x82\xd3\x03\x8b\xe5\x68\xc7\xf5\x84\x12\xb3\x67\x62\x3b\x90\x39\xbd\x60\x04\xa7\xd7\xcb\x72\x7a\x11\x32\xc3\x31\xf5\x84\x98\xe1\x64\x0e\x73\x70\x57\xf6\x13\x82\x15\xf1\xb5\x34\xac\x5f\xee\x11\x3e\xc7\xe7\x66\x86\xa5\x52\x36\xc5\xe4\xa6\x7f\x45\xea\x46\xae\x1d\x0a\x5d\xa3\x94\x3b\x38\x19\x88\x37\x21\xc7\x0c\x2c\x6b\xc0\x78\xcf\xa6\xc2\x7b\x86\x16\xf2\x69\x1a\xf2\x2d\x14\x65\x78\xcf\xf5\x94\xf7\x5c\xa6\xbc\xe7\xca\xdd\xf1\x9e\x6b\x59\xde\x73\xa5\x80\xf7\x5c\x23\xbc\xe7\x0a\xf0\x9e\x6b\x2a\xef\x29\xff\x44\x6b\x59\xde\x73\xad\x90\xf7\x5c\xeb\xf7\xd7\xb2\xbc\xe7\x9a\x7a\x13\xaf\xd9\xcb\x5b\xe7\x3d\x09\x56\xe0\xbc\xe7\x9a\x85\x96\x24\xde\x73\x2d\xc3\x19\xae\x01\xef\xa9\xa4\x2f\xac\xe5\x09\xa0\x25\xc1\x7b\xae\x0d\xe7\x3d\xb3\x2d\xe8\x11\x1d\xe9\xe2\x1a\x19\x1e\xe7\x3d\xd7\x54\xde\x73\x71\x6c\xde\x33\x09\xbd\x99\x76\xa0\xf7\x39\xbb\xcb\x75\xee\x72\x9d\xbb\x5c\xe7\x2e\xd7\xb9\xcb\x75\xee\x72\x9d\xbb\x5c\xe7\x2e\xd7\xb9\xcb\x75\xee\x72\x9d\xbb\x5c\xe7\x3d\xe3\x3a\x51\xd6\x21\x74\xca\x0f\x86\xaa\xf9\x49\x12\x7a\x4f\x07\x3c\x80\x40\x88\x1c\xd3\xe7\xc6\x27\xbb\xbc\xe0\x2e\x2f\xb8\x65\x5e\x70\x88\xa7\x82\xfb\xea\x5e\x08\xdc\x9e\xd4\x39\x61\x3a\x53\x6d\x4c\x50\x0c\xe3\x46\xff\x45\x7a\xc5\x54\x3b\x4a\x25\xd3\xc4\x22\x74\x93\x65\xc9\xd9\xed\x33\x2f\xa4\x19\x6b\x31\x5b\x91\x68\x20\xdd\x21\x63\x4e\xc6\xb6\x34\x18\xef\x87\xaf\x07\x81\x00\xfd\xad\xb3\x97\xee\x43\xc0\x5e\xba\x8f\x0c\x7b\xe9\x3e\xdc\xec\xa5\x7b\xdf\xd8\xcb\xe0\x41\xe6\xa9\x76\x86\x24\x74\x8a\xa2\xa1\x90\xf3\x7f\x5f\xe3\xa1\x30\x3c\x65\xc7\xf0\xd3\xf5\x7b\x49\xcc\xd0\x29\x8f\x9f\xb7\x24\x0b\xa4\xb9\x67\x2b\x28\xcc\x5c\x61\x7e\xd6\x8d\x3b\xea\x87\x5e\x18\x34\x71\x14\xe1\x16\x54\x05\x6c\x39\xf3\x6e\xe4\x20\x21\x6b\x77\x6d\x8c\x4c\x87\x13\x4c\xdc\xca\xd6\xc8\x06\xde\x82\xb8\x86\x8c\x36\xca\x9b\xf4\xc2\x20\x2c\x64\x62\x5b\x49\xc8\xda\xed\x62\xe4\x43\x09\x86\xad\xad\x34\x26\x0b\xb5\xc1\x1c\xd6\x6c\xb6\x6a\x85\x26\x1b\x52\xb1\x3c\x7b\xfa\x16\x94\xd7\x07\x41\x0c\xe4\xe7\x9e\x9c\xb2\xfc\x82\x88\xda\xb8\xf3\x31\xb5\x26\xe6\x97\x55\xe7\xc1\x3e\xf7\x6a\x91\x4d\x31\x2d\x44\xb1\xe8\xd2\x90\x97\x89\x10\xf9\x26\x96\x46\x6d\x69\xf6\x8c\x98\x0a\x69\xbb\x6c\x7d\x26\xa4\xc2\x62\x22\xe4\xfd\x97\xa9\x2b\xe6\xeb\x16\xcb\x23\x90\x0a\x70\x3e\xba\x60\x00\x52\x4e\xd1\xff\x25\x7e\xc7\x17\xc4\x85\xd3\x6d\x7d\x11\xb5\x20\x7b\x24\x54\xd2\x3f\x77\xfa\x2c\x4b\x7f\x94\x18\xd9\x1f\x98\xae\x44\xd9\x3b\x34\x0e\x64\x60\xba\x28\x12\xa1\x7d\x38\xd2\x71\xc6\x24\x80\x34\xa4\xc9\xfd\x25\x06\x31\xf7\x37\xf7\xfc\xf1\x67\x10\x56\x3c\xd5\x3d\xeb\x74\x75\x84\x5c\x14\x3b\xe1\x8a\x13\x63\xc9\xc3\xfc\x1e\xd2\x5d\xc7\x9b\x21\x5f\x70\xac\x12\x72\x9f\x58\xf1\xdc\x6e\x17\x87\x69\xf6\x71\x1f\x32\x50\x40\x71\x96\x2c\xff\x94\x2c\x5b\x3f\xa2\xcf\x19\xbb\x2e\x88\xb2\xe2\xd3\x07\x93\x20\x91\x05\xb1\xbb\x2e\x88\x76\x5d\x10\x69\x84\xbc\xc9\xae\x0b\xa2\x71\x42\xa2\xaf\x73\x8c\x87\x5c\xee\xc6\xfb\x8c\xf0\x22\x29\x0b\xba\xfc\x02\x41\x57\x50\xc7\x0d\xdb\x07\x41\x57\xa0\x0a\xba\xe4\x9f\x28\xc8\x0a\xba\x82\x42\x41\x57\xd0\xef\x07\x59\x41\x57\xa0\xe2\x88\xc0\x0e\xc7\x11\x74\x31\x54\x0e\xdc\x16\xc8\x1a\xfa\xfd\x70\x60\xa1\x80\xfa\xac\x11\xf4\x62\x90\x11\x43\x05\x20\xe8\x52\xd2\x17\x82\x3c\x6a\x76\x85\xa0\x2b\x18\x2e\xe8\xca\xb6\x50\x7c\xbb\x04\x64\x78\xe0\x65\x65\x87\x78\xaf\x65\xee\xef\xf5\xe4\xd1\x67\x9e\x74\xc2\xa8\xcc\xe3\xfc\x98\x67\xdc\x56\xcd\x58\x7b\xfe\xc0\xe2\x27\x5b\x87\x1d\x03\x2d\x7b\x41\xf3\x54\xed\xb1\x33\x70\x53\x46\x46\xad\x6e\x94\x9c\x38\x0e\x09\x35\x51\xe2\x31\x83\x1b\xc8\x88\x62\x27\xc6\x4c\x48\x50\xab\xd7\xab\x55\x64\xb4\xdc\x55\xa3\x81\xea\xd5\xc7\x51\xb5\x81\xea\x7b\x51\x7d\xee\x00\xaa\x34\x50\xbd\x3e\x37\x8b\x2a\xa8\x6e\x30\x37\xcd\x38\x34\x1a\x8d\x06\x75\x37\x2e\x72\x55\xa5\x5c\x89\xaf\xcb\x57\x9d\x6d\xa0\xfa\x2c\x32\xbe\xf8\x45\x7f\x72\x92\xb6\x72\x00\xcd\xa6\x85\x9a\x41\x42\x28\x1b\x52\x00\x72\xd1\x3c\x73\x8d\x06\x32\x3a\x4e\xb4\xb8\xea\x78\x46\xad\xed\x78\x11\x46\x46\xd2\x5b\x75\x42\x3a\xae\x96\xdb\x9a\x71\xfd\x08\x87\xb1\xc1\x02\x91\xcf\xb4\x20\x12\x79\x63\xf0\x18\xea\xe2\xd8\xa9\x9d\x49\xbd\xe2\xd7\xc6\xa5\xc0\xca\x9d\xe5\xc8\x18\x0c\x2c\xb4\x52\xf4\xee\x61\x1a\x33\xac\x84\x91\xc6\xae\x05\x97\xc0\xc8\xcd\xfc\x56\x0d\xbc\x3e\xca\x0f\x24\xad\xd4\x00\x0b\x5b\x4a\xb0\xc7\x4e\x81\xd5\x55\x73\x1b\x56\x57\x5b\xf0\xd9\x35\x86\x8b\x02\xb6\x8c\x27\xd8\xb2\x1a\xc8\xc9\xba\xee\x8a\xed\x40\x7a\x1c\x11\x3b\xbb\xe0\x75\x24\xb6\xcf\x74\x13\x2f\x76\x7b\x1e\xae\x51\x46\xc8\x09\x57\xa2\x32\x4f\x42\x81\x7f\xb8\xe3\xf8\x2b\xf2\x37\x9e\x34\x98\x80\x00\x32\x52\x77\xca\xbc\xb9\x93\x74\x5b\x9a\x69\x29\xdf\xe9\x62\x44\x27\x5b\x48\x02\xfc\xc2\xbe\x41\x94\x3f\xb5\xea\x34\xbf\xb6\xf2\xb4\x62\x76\x32\x87\x31\x8f\x6a\xc5\xe4\xbe\xa2\x09\x87\x49\xc1\x7c\xb5\xcc\xf9\x58\x9c\x7b\xff\x69\x13\xa6\x96\xda\xa1\x49\x71\x0a\x1c\x7b\xdd\x34\x03\x3b\x92\x5f\x84\xb2\x4b\x56\x0f\x1b\xe8\x6e\x9e\x84\x2c\xb4\x6e\x06\x72\xfd\xe9\x44\xd6\xfd\x06\x4a\xaf\xe1\x63\x6b\x3e\x47\xdf\x3c\xd4\x47\x10\x16\x14\x25\x37\xa9\x48\xcf\xb5\x20\x2f\x56\xdd\xdd\x62\x1b\x52\xe1\x4c\x2b\x81\xe2\x07\x01\x1e\x29\x97\x22\x1c\x8b\xd8\x41\x3c\x7a\x96\xb9\x8c\x56\x34\xfe\xa4\x8b\x31\xe3\xce\x31\xa5\x8f\x9e\xf7\xe7\x87\x87\x21\x4d\xee\x29\x43\xea\x3d\x14\x0c\x69\x93\x3f\x68\xc1\xce\x6c\xda\xba\x77\x27\xe0\x89\x4a\x25\xce\x1c\xad\xe0\x78\x41\x82\x73\x11\x8c\x56\xd5\x68\xe2\x62\x26\xe6\xa7\x72\xcf\x47\x1d\x27\x92\xd0\x00\x3c\x22\x21\xc2\x0c\x01\x51\x60\x62\xaa\x9f\x63\xcd\x5b\xf3\x82\x21\x61\x0f\x52\x6e\x5b\xe8\x7f\xdb\xa3\x90\x8a\x4f\x0a\x70\x89\x36\xed\x3f\xfd\x9f\xb5\x17\x5a\x35\x97\x11\xd0\x03\xc6\x56\xa3\xb0\xdf\xc7\x79\xe9\xc2\xae\x72\xd6\xae\x72\xd6\xf8\xae\x83\x77\x95\xb3\xee\x89\x72\xd6\x50\xce\x30\xe8\x3d\xff\xb9\x2f\x7c\x29\xfa\x54\x01\x67\x58\xc8\x10\xee\x47\xf5\xb9\xc7\x15\xc6\x2e\xc4\x7e\x0b\x87\x47\xfc\xe7\x3c\xa7\x89\x05\x6f\x87\xea\x75\x83\x57\x82\x0c\xb2\xa5\x08\xe7\x76\x26\x53\xdb\x2c\x32\x04\xdb\x57\xe5\x3c\x21\x67\xf4\x1a\xc8\xa0\x6f\x14\x38\xc6\x94\xaf\x6b\x0c\x50\xb6\x7c\xbe\x37\x20\x2c\xd7\x75\x43\xd3\x7e\x61\x79\x64\x70\xea\x7c\x8b\x23\x62\x35\x56\x74\x35\x62\x8f\x66\xa3\x15\xd6\xeb\xc6\x4a\xe2\xb6\x0c\x64\x30\x46\xf5\x49\xdc\x0e\x42\x5a\xa1\xf1\x1f\xcd\x24\x8c\x82\xb0\x56\xfd\x0f\x83\xcd\x48\x63\xc4\x20\xe8\x24\x92\x7f\xe3\x4f\x24\xe5\xa8\xc7\x9c\xdd\x9d\x18\x4b\xe5\x3f\x0c\x54\x9f\x7d\xa2\x71\xdf\xc6\xb2\xd5\xc4\x62\x61\x82\xeb\xcf\xf0\xc1\x22\xc3\x6d\x6f\x53\x84\x20\x64\x07\x27\xc6\x91\x1d\x04\x8f\x8c\x6c\x40\x28\x4f\x3a\xaa\x6c\x20\xb0\x5b\xa6\x63\xc9\x4c\x81\xfa\x82\x3d\x99\xc0\xbd\x64\xa1\x08\x34\x1d\xb5\xb7\x55\x9e\x95\xe7\x7a\x8e\x22\xfa\x4e\xd9\xc7\xa7\x63\x5d\x2c\x24\x5c\xc0\x76\x33\x3e\xd6\xc4\x8c\x7f\x65\x47\x82\x72\x4d\x92\x74\xc0\x91\xa4\x03\x6b\xae\xe7\x3d\x05\x02\xa8\x3c\x13\x2e\xbd\x15\x37\xcd\xae\xe9\xc8\x9c\x9b\x5a\x14\x2e\x73\x1e\x5c\x75\x3b\x43\x48\x99\xc4\xa2\x41\xa4\x4f\xfd\x70\xd4\x87\x70\xf8\x52\x51\x08\x88\x9a\xe3\xf9\x73\x52\x04\xde\x52\xfa\x8c\x2e\xdf\x1e\xfa\xd6\xa6\xc4\xc3\x39\xad\x42\x29\xd2\xef\x4f\xb1\xb8\x94\xd0\x0d\xc3\xf5\xe9\x5b\xb7\xa1\x14\x69\x3b\x9e\xb7\xec\x34\x4f\x31\x39\x83\xa7\x91\x33\x78\x4c\xce\xe0\x28\x72\x06\xaa\xc6\x1c\x64\xf4\x4e\x33\xfb\x69\x57\xfd\xf4\x23\xac\x7e\x7a\x62\xa8\xb4\x64\x11\x9d\x18\x26\x2d\x01\xc4\x1e\xed\x99\xd1\x09\x4b\xa8\x8e\x02\x6e\xcd\x74\x9d\x5e\x34\xe3\xf8\xad\x99\x08\x67\x75\x13\x46\xc4\x05\x14\xea\xd5\x1f\x51\x19\x49\x36\x42\xf5\x83\x29\x18\x70\x15\x8e\xd7\xdd\x51\x8e\x37\xd8\xe5\x78\x87\x72\xbc\x49\x96\xe3\x4d\xee\x25\xc7\xeb\x68\x38\x5e\x67\x08\xc7\x1b\x16\x73\xbc\x51\x86\xe3\x8d\x3e\x3c\x8e\x57\xd5\xff\xf9\x10\x5e\xaa\x3d\x25\xe8\x33\x8d\xf4\xc8\x56\x75\x2a\xd4\x53\xb2\xa0\x47\x8c\x5b\x93\x71\x30\xb9\x82\xe3\x49\x08\xaf\x3a\xd9\x76\xb1\xd7\x9a\x24\x98\x23\xf0\x67\xb8\x98\x32\x1d\x34\x8d\x22\xb9\x10\xa6\xd2\x2c\x6c\xd5\x42\x90\x66\xdd\x4f\xe5\x9b\x54\x8a\x38\x19\x4f\xba\xfe\x24\x5e\x18\x22\xff\x05\xb9\x6d\x86\x9a\xc8\xd2\x1a\x12\x75\x31\xb0\x6a\xb8\x1e\x37\xec\x10\xe1\x1d\x92\x2a\xb4\x6c\x55\xa9\x17\x09\x5f\x12\x4d\xa1\x7f\x0b\x1e\x44\x0d\xdf\xe9\x62\x03\xf1\xdb\x98\xa7\x0a\x06\x2a\xfb\x41\x30\xd9\xb9\x2f\xfc\x01\x2c\xfd\x42\xa9\x39\x52\x3f\xd7\xef\x85\x5a\xb9\x6a\x2f\xaf\xcb\xe6\xe2\x50\xd7\xf6\x45\xa2\x25\x11\x1f\x6e\xa9\xe4\xb2\x22\xbc\x11\xdb\x4f\x1f\xdc\x50\x87\xbe\x2b\x7e\x16\x3b\xa7\x8e\x3a\x3d\xd4\x53\x7e\x75\x1f\x15\xa3\x36\x97\xf3\x65\x6d\xa0\x80\x80\xde\x4d\xad\xda\x1c\x94\xd8\x81\xd9\x96\x78\xb4\x76\xf6\xfd\xb6\x2d\x6b\xcf\xe7\xde\x6f\x65\x65\xfa\x90\xd0\x5e\x95\x79\xf7\x60\x38\xef\x52\x85\x7a\x57\x7e\xbf\x75\xc5\xfb\x2d\xb6\x13\xf9\xed\x36\xc9\xbc\xdd\xfa\x96\x85\x3a\x04\x79\x99\x04\xa1\xa2\x33\xf2\x38\xd9\xd8\x49\x93\x71\xf9\x24\xa3\xbd\x8e\x3a\xbd\x81\x85\x7a\x5b\x2d\x20\x59\xc8\xb5\x25\x36\x4f\x70\x3b\x43\x7c\x70\x82\xb9\x5f\xc7\x02\x34\x27\xd8\x20\xf5\x79\xb4\xf0\x1d\x59\x18\x18\xc0\x16\x8f\x6d\xa8\xb1\xc7\x6b\x94\x37\x7a\xbc\x10\xd7\x2a\x12\xa7\x25\x3f\xec\xe6\x9b\x60\x88\x29\xed\x21\x99\x15\x8c\xc8\xf8\x5b\xf0\x51\xf7\xac\x5c\x3c\xe4\xb4\xa6\x16\xf6\x70\x8c\xe5\xe1\xaa\x5c\x68\xe1\x70\x51\x68\x9b\x5b\x18\xaa\x35\x5d\x9d\x48\x33\xb1\xfe\x83\x1d\x26\x84\xc0\x4a\x39\x52\x6c\x4d\xf8\xa5\x52\x7a\xee\x65\xd8\x0c\x75\x23\x1d\xdd\xd7\x2d\x74\x75\x22\x9c\x99\x41\x3b\xd6\x57\xc2\xd4\xfa\x59\xe3\x49\x87\xa6\x21\xc7\x42\x6d\x55\x8b\xba\xab\xe3\x59\x08\xc9\x36\xd3\xf6\x53\xdf\x2a\x90\xd4\xec\x38\xe1\x8c\x13\x8f\xab\x3f\x2d\x90\x41\xac\x10\xba\x63\xda\x78\xe1\x02\xf3\x2b\x1d\xb9\xcb\xd8\x89\x7e\x7f\xca\x1c\x6a\xe4\xc5\xed\xb6\x18\x12\xaa\x37\x90\x4f\x88\x7f\xd7\x9e\xaa\xa2\x40\xc4\xcb\x0f\xd7\x05\x97\xe1\xa0\xc8\xc6\x1a\x43\xa2\xf9\x29\xd3\xb7\x4d\xc7\x8e\x98\xac\xc5\xb2\xca\xad\xc0\x27\xd7\x8a\x19\x96\x7b\x49\xd4\x31\x1d\x46\x49\x58\x88\x50\x81\x21\x20\x39\x8a\xf6\xe7\x49\x93\xd6\x3c\x50\xb7\x89\x75\xc6\x25\x5d\x08\xec\x64\xd0\x76\x7d\xc7\xf3\xd6\xcf\x90\x0e\xf8\xfd\x3e\xb3\x46\x8a\xca\xac\xcb\xfd\x3e\x87\x4c\x4b\xe4\x74\xdb\xa6\x0b\xf7\x48\x30\xe0\x78\x28\x64\xcf\x7c\xdb\xb7\x5b\x0b\x53\xbb\x35\x7f\xfb\x76\x6b\x7e\xde\x6e\xcd\x1f\x65\xb7\xe6\xa7\x76\x6b\xfe\x98\x76\x6b\xfe\xd6\xed\xd6\x7c\x4b\x1d\x69\x6e\xbe\xc6\xb7\x5c\xa3\x9a\x64\x49\x33\x4e\x42\xfc\xe1\x99\xaf\x85\xf7\xcd\x7c\x4d\x76\x2b\x66\x62\x34\x6b\x21\xdf\x0e\xeb\x95\x06\x72\x6d\xc1\xab\xf8\x0b\x86\x51\xf3\x51\x60\x87\xf5\x6a\x23\x7d\x3a\x26\x98\xe3\x50\x6c\x06\xdb\x73\x88\x4e\x77\xdc\x61\x5a\x85\xed\xeb\xe9\x52\x57\x8d\x75\xcf\x10\x97\xa9\xc8\x6f\xdc\x2d\xa3\xba\x66\xd0\xc2\xbb\xf8\x6e\x17\xdf\xed\xe2\xbb\x5d\x7c\xb7\x75\x7c\x77\x38\x68\xe1\x1d\xc0\x79\xac\x9a\xfb\x86\xf7\x08\xca\xeb\x05\xae\x1f\xef\x22\xbe\x5d\xc4\xb7\x8b\xf8\x76\x11\xdf\x16\x11\x5f\xd0\xc2\xcf\x11\xf4\x71\xb7\x98\x2f\xad\xe7\xfe\xa1\x3e\xbf\xb9\x3d\x9c\x77\xd7\x18\xef\x41\xf3\x5d\xf2\x08\xa2\x86\x5d\xc4\x30\x2e\x62\x10\x6f\xfa\x62\xe5\x2b\x23\x9e\xff\xf1\xb4\x1d\x0f\x2c\x64\x18\x77\x85\x10\xc8\xe9\xbc\x5f\xb8\x00\xfb\xad\x68\x66\x8d\xba\x73\xd8\x25\x81\x76\x49\xa0\x8f\x10\x9e\xdb\x25\x81\xb6\x43\x02\xcd\x49\x24\x10\x21\x78\x28\xdd\x33\xdb\x40\x8e\x9d\x1a\x17\x97\x4a\x01\x8a\x6c\xa6\x34\xe1\x97\x4a\x60\x6a\x9d\x20\xcf\xf6\xa1\x57\x13\xde\x8c\xed\xf2\x27\xaf\xc8\x9e\xa9\x4e\xd9\xb6\x99\xd8\xce\x82\x5f\x8e\x83\x67\x82\x35\x1c\x1e\x76\xa8\x32\x95\xeb\xb7\xf0\xe9\x63\x6d\xd3\x55\xd3\x91\x67\xd5\xfc\xf4\x23\xf2\x2c\xab\x54\x4a\x6c\xdb\xf6\xf8\x89\x88\xb6\x8f\x60\x17\xfd\x56\x44\xfd\xcd\xdc\x2f\x14\xfb\x42\xe2\x78\x63\x3b\xe6\xdb\x25\xb7\x3e\x5a\x68\x68\x17\x09\x6d\x19\x09\xa5\xd4\x16\x59\x14\x7e\xd3\x1e\x9c\x4d\xb5\xb5\xd8\x06\x0a\xcb\x51\xc7\x6d\xc7\xa6\xa4\xeb\x82\x57\x71\xb8\xae\x2a\x8f\x8a\x67\x6b\xdb\xf6\x07\xd6\x5d\x10\x66\x8b\xf4\x1c\xdf\x2f\xac\x41\xb6\x65\x2a\x9c\xbf\x1f\xd8\x23\xf5\x35\x19\xd0\xff\xfd\x87\xd5\xcf\x61\xb8\x6d\xcc\x79\x97\x03\x7f\x20\x4e\x6d\x8a\x94\x01\xfd\xdf\x0b\xc7\x9d\xac\x86\x6d\xb8\xef\x44\x3a\xdf\x9d\x0b\x0a\x26\xae\xed\x80\xc7\xce\x05\x36\x36\x6e\xd6\xfb\x21\xf9\xc0\xbc\x07\xd7\xaf\xac\x83\xc9\x35\x81\x43\x05\x65\x42\x31\x58\x3c\x52\x8e\x0b\xd7\x41\x7f\x88\x7d\x41\xf4\xb6\xda\x3e\x36\x7c\x5a\xaa\xd8\x76\xf4\x38\x31\xd2\xe2\x44\x47\xc6\x89\xd1\xd6\x71\xa2\x10\xdc\xef\x22\xc5\x5d\xa4\xb8\x8b\x14\x77\x91\xe2\xf6\x90\x22\x97\xbb\xef\x3c\x56\xe4\x35\xdf\x2f\xb4\xd8\x89\xbb\xde\x4c\xe4\xb4\xef\x87\xbf\x4f\x69\x18\xb1\x76\x18\x5a\xda\x7b\x60\xc9\x83\x8b\xb7\x32\x38\xd7\x6f\x7a\x49\x0b\x6f\x8b\x7f\xde\x95\x4f\xee\xca\x27\x1f\x58\xc1\xc0\xae\x7c\x72\x67\xe5\x93\x53\x55\x51\xba\x54\x72\x4b\x25\x33\x23\xb2\x5c\xa0\x52\xc8\x31\x05\x90\x56\x0d\x72\x8b\xef\x96\x85\x9c\xed\xdf\x0b\x47\x00\x8b\xdd\x2f\xe9\x01\xed\xf6\x4c\xd0\xde\xc5\x9a\xbb\x58\x73\x17\x6b\xee\x62\xcd\x42\xac\x39\x33\x0a\x6b\x8e\x8d\x30\x77\x10\x57\xd2\x6a\xee\x17\xaa\xf4\x9c\x28\xde\xc5\x97\xbb\xf8\x72\x17\x5f\xee\xe2\xcb\x7b\x80\x2f\x09\x7a\x39\x52\x8c\x33\x95\xcf\x77\x87\x37\x9f\x49\xab\xba\x5f\xb8\xd3\x0f\xe2\xdd\xe7\xed\x47\x1a\xbf\xec\x62\x97\xfb\xf9\xbc\x1d\x05\x5d\xac\x97\xb0\x4d\xdd\xed\xeb\xf6\xb3\x41\x7c\x7f\x1f\xb8\x7b\x4e\x6b\x06\xfb\xad\x5d\x8a\x6b\x97\xe2\xfa\x48\x61\xc4\x5d\x8a\xeb\x6e\x29\x2e\xbd\xe9\x85\x50\x41\xb4\x6d\x3b\x58\x30\x26\x8d\x5a\x80\x22\x46\x96\x25\xe9\x97\x68\xa1\x52\x8b\x90\x67\xbb\xd3\x86\x41\x56\xd8\x74\xa6\x8d\xff\x9f\xbd\x6f\xef\x6e\xe3\xb6\x12\xff\x9f\x9f\x62\x38\xdb\xd2\x83\x10\x1c\x51\x4e\x93\x76\x29\xc3\x5a\xe7\xb5\xf5\x36\x4e\xb2\xb6\xd3\x6e\x97\x66\x54\x88\x03\x8a\xa8\x87\x00\x0b\x80\x96\x55\x91\xbf\xcf\xfe\x3b\x78\xcd\x60\x5e\x14\x25\x3f\x92\x6c\xd5\xd3\x13\x53\x83\xd7\xc5\xc5\xc5\x7d\xe1\xe2\x22\x06\x0e\xe8\xc7\x63\x97\x67\x3a\xf7\x4c\x77\x73\x02\xf2\x21\xc2\x3d\xff\xe1\xf1\x66\x30\x48\x72\x94\xa7\x72\x73\x6e\x89\x3a\x19\xc3\x0d\x00\x7e\x43\xe4\x77\x67\xb0\x3f\xe0\xec\x6b\x96\x7d\x4c\xee\x2a\x15\x16\xf7\x57\xdb\xee\xf9\xeb\x3d\x7f\xbd\xe7\xaf\x3f\x23\x7f\x45\x78\x98\xef\x63\xb0\xbe\x68\xb4\x81\xfe\xe7\xfb\x62\xb8\x2f\x34\x07\xfc\x58\x2c\x57\x90\x35\xb9\xbf\x4a\x7c\xcf\x6f\xef\xf9\xed\xbf\x2c\xbf\x2d\xfb\x38\xec\x3a\x71\x95\xe7\x8e\x0d\xc7\x8d\x63\xb8\x41\xe3\x93\xcd\x23\x7c\xb2\x19\x0e\x81\x1c\x22\xda\x7b\xf7\x4b\x2f\xcf\x0d\x73\xfa\x88\xac\x30\xc7\x73\x32\xc2\x79\x2d\xff\xef\x81\x0d\x6f\x91\x11\xf8\x9e\x77\xfe\x5a\x78\x27\xbb\x7b\x64\xe5\x1d\x62\x2a\x43\xde\x19\x86\x55\x1e\xc8\x3b\xef\x14\x60\x59\x9d\xe9\xaf\x9d\x77\xb2\x8f\xc6\x3b\x69\x25\x6c\x13\xfe\x0e\x40\x8a\x98\xe6\x9b\x1c\x31\xcb\x25\x99\x56\x43\x65\xc9\x2c\xb1\xe6\xa2\x18\x6e\x10\x9b\x7e\x3a\x83\x79\x79\x06\xb3\x19\x0c\x36\xfe\xdd\xf8\x31\x54\x25\xf7\xd3\x6c\x05\x24\x53\x0a\x39\x94\x30\x87\xfd\xf1\xec\x1d\x9c\xa5\xae\xbf\x27\x79\x8e\x68\x3b\x47\xe5\xad\x1c\x95\x86\x1c\x95\xef\x00\xe8\xdd\x92\xa3\xde\x6b\x97\xff\x97\x39\xe4\xbd\x76\xf9\xeb\xe2\x90\x3f\x9b\x35\xff\xd9\x21\x9a\xa5\xe8\xe2\x99\xa2\x85\x67\xc2\x39\x12\xd3\xdf\xcd\xe0\xa2\xfc\x3c\x1f\x0c\xe6\x26\x23\x39\x2f\xee\x46\xb8\xcc\xd8\x5c\x7f\xce\xb7\xdb\x85\x85\x69\x89\xe2\xb8\xb7\x18\x0c\x92\xe5\x10\xc5\x17\x31\x80\xb9\xfb\x4d\x63\x00\x33\x64\xb3\xb9\x5f\x7c\xfd\x76\x9d\x70\xb8\x2c\x2c\x7b\x9a\x3a\x9e\x96\x64\x50\xbe\x3b\x2f\xfe\x58\xaa\xad\xd9\x74\xf7\x6c\xf8\x9e\x0d\xdf\xb3\xe1\x7f\x79\x36\x7c\x5b\xa7\xea\xb8\x70\xa9\xfa\xbe\x03\xbf\x2a\x75\x84\x84\xc1\xa4\xf8\xf9\x4e\x8c\xf1\x85\xee\xe3\xa3\xb1\xc5\x75\x4e\xef\x7d\x9f\xf7\x6c\xf1\x9e\x2d\xde\xb3\xc5\xdb\xfa\x3d\xe3\x78\xc2\xcb\xc4\x8a\x86\x93\x24\xf8\x5d\x18\x9f\xee\xe1\xa3\x31\x3e\x85\x85\xba\x4f\xa1\x76\xcf\xfe\xee\xd9\xdf\x3d\xfb\x7b\xd7\x2b\x8a\x86\x51\x1e\x98\x22\x6d\x0c\x26\xb6\x7a\x99\x26\x6d\xfc\x6e\x01\xe4\xe6\xb4\xfc\xa3\xa6\x46\x2b\x82\x00\xee\x59\xe7\x3d\xeb\xbc\x67\x9d\xf7\xac\xf3\x3d\x1b\xd4\x45\x8c\x91\x35\xaa\xcb\x3f\xdf\xcd\xb0\xf6\xfd\x7c\x2c\x36\xa9\xf8\x68\x8e\x57\x24\x1f\xcd\xb1\xbc\xf7\x3d\xde\xb3\xca\x7b\x56\x79\xcf\x2a\x8f\xc1\x74\xec\xab\x95\x2f\xe8\x0a\xcd\x2b\x05\xa8\xa9\x90\xd6\xa4\x8e\xa3\x18\xa4\x2b\xbc\xee\xc8\x5d\x6e\x9e\x9b\x3f\x25\x93\x38\xf6\x0f\x4b\x12\xff\x9a\xd5\x58\x77\xf8\xe3\x7a\x5d\x5c\x5c\x2c\x6b\x58\x02\x3c\x06\x60\x07\x40\xfa\x77\x4e\x59\xf2\x4e\xc9\xcf\x5f\xf2\x2f\x35\xa3\xd3\xc3\x7c\x44\xe6\xfa\x9a\x9c\xe3\xf3\x7b\xe6\x7a\xcf\x5c\xef\x99\xeb\x3d\x73\x7d\x07\xe6\x6a\xf9\xdf\xe8\xdd\x18\xe0\x9f\x34\x33\xfa\xc8\x0c\x30\xd7\xf3\xb9\x67\x80\xf7\x0c\xf0\x9e\x01\xde\x33\xc0\x5b\x32\xc0\x77\xe1\x75\x45\x37\x1f\x91\xd7\xad\xb1\x9c\xe3\x7b\x53\xfa\x9e\xd9\xdd\x33\xbb\x7b\x66\xf7\x1e\x4d\x69\xcf\x16\x7e\x66\xfb\xf9\x07\xc3\xde\x3e\x32\x4f\x95\x84\x29\xc2\xe6\xe4\x9e\xab\xde\x73\xd5\x7b\xae\x7a\xcf\x55\x6f\xcb\x55\x7d\x24\xf8\x51\xf2\xd3\x2b\xf9\xc9\xab\xcb\xed\x34\xed\x9f\xce\xcc\x4f\x70\x74\x01\x5b\x33\x1e\x55\x59\xea\x3b\xe5\x3e\x7a\xc9\x5f\x38\x06\xf6\xb1\xf9\x26\xc3\xaf\xef\x99\xe6\x3d\xd3\xbc\x67\x9a\xf7\x4c\xf3\xdd\x1d\x8f\x67\xef\xa6\x39\xbe\xd0\xcc\xe8\x23\x33\x40\x45\x55\x7e\xcf\x00\xef\x19\xe0\x3d\x03\xbc\x67\x80\xbf\x44\x5b\x3c\x7a\x37\x96\xfa\x52\xb3\xb7\x8f\xcc\x52\x37\x7a\x6e\xf7\x2c\xf5\x9e\xa5\xde\xb3\xd4\x7b\x96\x7a\x08\x4b\x0d\xad\xe8\x77\xe0\x75\x45\x37\x1f\x8d\xd7\x09\xba\xba\xcf\x20\x7c\xcf\xe6\xee\xd9\xdc\x3d\x9b\xbb\x91\xcd\x15\x1e\xc6\x57\xc3\xed\xf4\x95\x7c\xb5\xf9\xe6\xeb\x6f\xbe\x79\xf5\xf6\xc9\x78\x36\xfc\xcd\xd1\x05\x7c\xb7\x43\x17\x41\x57\x1f\x31\xb5\xaf\xe1\x7b\xf7\xb9\x7d\xef\x39\xdf\x3d\xe7\xbb\xe7\x7c\xb7\xe0\x7c\x3f\xd5\xf8\xde\xfb\x60\x7b\x1f\x35\xc1\xae\x66\x7c\xf7\x2c\xef\x9e\xe5\xdd\xb3\xbc\x7b\x96\xb7\xdf\xa6\x15\x74\xf5\x4e\xc6\xac\xa0\xab\xf7\xcb\xd4\xf4\xea\x8f\x2e\xb1\xc6\xa8\x3c\x3a\xdf\xd0\x3c\x73\x7f\xb5\xa5\xc7\x0d\x2b\xb7\x7e\x3c\x62\x9c\xaf\xc3\x2f\xf5\x7c\xb9\x50\xbc\xbf\x17\xbf\x43\x96\x39\x2e\x56\x86\x5c\x46\xc2\x57\x49\x08\xd8\xdd\x30\x65\x73\x47\xfd\xa6\xb9\x1e\xd9\x7f\x47\x2b\xcc\xf0\x85\x46\x4d\x5b\x9d\x70\xd6\xad\x15\xaa\xd8\xed\x1a\x66\xb4\xe0\x62\xb4\x16\x7c\x45\x65\x23\xdb\x30\x14\x90\x41\xfa\xae\x18\xec\x6c\x20\xc8\x05\x95\x06\xb8\x6b\xc2\x36\x2b\xbb\x27\x27\xfd\x31\xbc\x20\x6a\x12\x70\x02\x87\x6a\x95\xfa\x06\xbb\x7d\xbd\x6e\xd8\xad\xfb\x2d\x9b\xec\xed\xf9\x82\xa8\xbf\x78\x62\x3c\xb0\xe7\xb2\xc9\xde\x9e\xcf\x04\x91\x44\x1d\xdc\xab\xad\x7e\x13\xac\x3f\x10\x96\x51\x76\x61\xc7\x7f\xa1\xb0\x22\xb7\x01\xbb\xd9\x7a\xef\x78\x4b\x2c\x2b\x2d\x0e\x47\x51\xa3\xe5\xde\x71\x5e\x12\xe9\x30\x7a\xe0\x00\xc5\xe6\xdc\xdb\xad\xd9\x2b\xb7\xea\x97\x1d\xd4\xaf\xde\x61\xdf\x70\xf1\x83\xdb\x5f\x87\x75\x4d\x83\xae\x6f\x60\x27\x0d\xfe\x77\x47\xad\x30\x10\x4a\x5a\x0a\x39\x61\x65\x84\x91\xcb\x47\xac\xb4\x38\x62\x69\x09\x3f\x0a\xff\xd8\x6e\xfb\xc7\x90\x69\xcd\x62\x41\x2f\x36\xb6\xbc\x3f\x86\xb1\x61\x03\x31\x35\x79\x3e\x12\x96\x5e\x0a\xaa\x5c\x59\x37\xd2\x58\xfa\x9a\x5c\x41\x06\x76\x77\x91\x5b\x2d\x82\x4a\xa0\x00\xc5\xc5\xc4\x49\xa2\xe5\x75\x53\x3f\x4b\x4a\xc5\x81\x2f\x22\x05\x40\xab\x1e\xf2\x25\x66\x8c\xab\x48\xeb\x5f\x11\x8e\xe6\x39\x96\x32\xc2\x32\xc2\x85\x5e\x1d\x83\x1d\x48\xd4\x92\x4a\x48\x00\xd4\xff\x1a\x4d\x0b\xa9\x9d\x81\x48\xb3\xd5\xe2\x31\x3b\x44\x60\xc2\xd0\xf4\xfa\x35\xb9\x9a\xc4\xe7\xe4\x82\xb2\x27\xf2\x8a\xcd\x63\x68\x27\xd6\xb2\x67\x96\x54\xee\x76\xd0\x36\x20\x2c\xeb\xaa\x5e\xd4\xd1\xb4\xf1\x23\x53\x34\xef\xec\xb3\x3f\x2e\x2a\x67\xe4\x7c\x73\xf1\x94\x2d\x78\x67\xe5\xe9\xac\xa8\xec\xf8\x56\xcb\xd0\x33\x30\x18\x28\xad\x8a\x7b\xad\x15\x32\x00\xa9\xf9\x06\x29\x80\x64\x97\x84\x9a\x82\xb8\x81\xce\x3b\x48\xfc\x10\xe1\x79\x78\x06\xfd\xdb\x1a\x47\xac\xe5\x9d\xcc\x5f\xda\x4b\x9c\xff\x82\xb9\xe6\xef\x66\x46\xc8\xb5\x20\x38\xfb\x17\x49\x32\xff\x7f\x9d\xe5\x73\x34\x2e\x77\x36\x2e\x39\x27\x1f\x0e\x0d\x03\x96\x5d\x22\x41\xdb\x0b\x1f\x53\x28\x50\xf9\xdc\x69\x9e\x24\x43\xfd\x63\xf7\x51\x91\x95\x34\xeb\xfa\x0c\xaf\x43\xe1\xe1\x7e\x93\xb7\xea\x25\x7f\x4d\x98\xde\x2f\xd8\xcc\x87\x41\x0e\x65\xb1\xd4\x5a\xa0\x70\x2f\x50\x4a\x65\xb8\xc1\xa4\x1b\x10\x6c\xb7\x89\x79\x2b\xc0\xb7\xb1\xc0\xb6\x82\x3a\x06\x85\x0c\xd8\x2b\xb2\x34\x74\x04\x61\xbf\xcb\x8b\xf7\xb1\x06\x83\x22\xe1\x57\x51\x38\x1d\xcf\x4e\xc3\x3f\x26\xd5\xe9\x26\x00\xaa\x66\x4f\xc7\x41\x93\xe3\xd9\xc4\x11\x01\x5d\x18\xd0\x8b\x99\x24\x20\x40\xad\x56\x39\x35\xb7\x2d\x17\xd1\x2d\x60\x39\x13\xb3\x88\x24\x8b\x16\x5c\x44\x65\xe8\x0c\x8c\xa3\xf3\x8d\x8a\xa8\x8a\xa8\x8c\x70\xae\x19\xc6\x55\xb4\xb6\xca\x6b\x1a\x03\xcf\x66\x8b\x1e\x7b\x81\xc0\x76\x43\x4b\xa2\xfb\xb9\xbe\x20\x2a\x92\x0a\xcf\x5f\x87\x8a\xaa\xf9\xb0\x83\x39\x3e\x27\xf9\x44\x69\xda\xbe\x59\xca\x5b\x81\xd3\x3f\x60\x72\xbe\x8b\x03\xa6\x66\xa8\x78\x23\x04\x61\x2a\xaf\x4e\x30\x18\x27\x23\x39\x51\xc4\x98\xbc\x07\xab\x19\x36\xb7\x46\x80\x0d\xfa\x4f\x72\x0b\xc5\x23\x12\x49\xd0\xd8\x54\x92\x09\x00\x37\x6a\x23\x41\xa3\x79\x4e\xb0\x48\x80\xd5\x4f\x68\xc2\x02\xfd\x84\x03\x28\xcd\x37\x28\x1b\xfa\x89\xbc\x49\x3f\xb9\x5a\x93\xd2\xb8\x0f\x55\x0e\x70\x7d\x43\xd3\x86\x11\x7e\x93\x7e\xb3\xc7\xdd\xf1\x61\x9c\x1d\x9a\xaa\x15\x22\xbd\xc2\xe9\xa1\x76\x3d\x4d\x58\xaa\xf0\x7b\xc4\x0e\x76\x0f\xd6\x4d\x66\x4b\xdd\xbf\x71\x37\xa3\xe5\xc3\xc9\xca\x3b\x20\xce\x73\x9a\x0a\xe6\x84\xdd\xef\x86\x7d\x43\x02\x76\x90\x04\xbe\x86\x5a\x4d\xbf\x9f\xac\x26\xa5\xab\x96\xce\x03\xd4\xdc\x0a\x04\x89\x62\x07\xc0\x03\x15\x56\xf5\xf3\x28\xac\xc2\x8c\xe1\x46\xea\xd4\x54\x95\xa9\x79\x27\x97\xb7\x8b\x71\xbc\xbd\xe3\x1b\xb6\x79\xbd\x4f\x2b\xb3\x99\xbc\x07\x5f\xf7\xa9\x9d\x9b\x13\x4e\xbb\x5f\x99\x8e\x6a\x96\x84\x68\x82\xb4\x7e\xa7\x0a\x31\x16\x0c\xd5\xd2\x6b\xd3\x6b\x64\xdc\xc7\x0d\x1f\x0f\xa2\x81\xac\x7c\x86\xd7\xbd\x40\x0f\xf6\x4a\xc3\xb5\x13\x3c\x93\x31\x74\x7c\x63\x72\xbd\xdb\x95\x6f\xc0\x2f\xb8\xf8\x1a\xcf\x97\x41\xb8\xab\xd3\xd6\x54\x5a\x48\xa2\x04\x80\x6b\x92\xba\x8e\x86\x43\x37\xa8\xde\xd9\x4e\xd6\x18\x2e\xef\xba\x9f\x2a\x43\x15\x33\xad\x57\x69\x83\x18\x68\x31\x10\xa8\xcd\xa5\xef\x27\x01\xbe\xcf\xc7\xe3\x9d\x75\x83\xbf\x24\x52\x0d\x06\xe5\xef\x82\x21\xd8\x19\x27\x49\xd3\xe6\xa6\xf6\xb6\x56\x0b\xab\x7c\xab\x46\x2b\x82\xe5\x46\x10\x71\x24\x89\x78\x43\xe7\x44\xf3\xfd\xe0\xf3\xa1\x3c\xf3\xfd\xe8\xd3\xca\xf9\xfa\x5f\x58\x58\x52\xf2\x56\x11\x96\x25\xd7\x94\x51\xd5\x10\xb4\x67\x72\xb3\x26\x22\xc5\xeb\x75\x7e\x65\xb5\xdd\x42\x43\x73\x5a\xd8\x1c\xb3\x37\x58\xa2\x8c\xcf\xcd\xe7\x74\x2e\x08\x56\xe4\xeb\x9c\xe8\xbf\x92\xd8\x16\xc7\xbe\xb2\x7a\x8b\x82\x56\x9a\xca\xbe\xe4\x4c\x23\x23\x89\x1f\x66\x31\xd8\xc1\x4b\x9a\xa9\xe5\xa4\x29\xb1\x9a\xba\x62\xab\xd6\x79\x3c\xab\xaa\x90\x5a\xaa\x14\x92\x4e\x8b\x13\x07\x45\xba\xe0\x4c\x21\x55\x82\x95\xba\xc5\x78\xa9\x61\x21\x20\x35\x70\xec\x60\x4e\x19\x91\x93\xaa\x58\xb6\x74\xd7\x00\xe8\x61\x2b\x40\x0f\x43\x80\x1e\x7a\x80\x1a\x90\x88\x52\xba\x69\xe6\x66\x83\xc0\x8f\x5e\xb1\x23\xf3\x6a\x98\x1b\x02\x72\x34\x3e\xe1\x8f\xfc\x9f\x27\xdc\x9b\x77\x18\xb1\x29\x9f\x19\x1b\x3c\xd6\xa3\x97\x06\xa1\x44\x38\x88\x28\x87\x1b\x34\x86\x39\x1a\x9f\xe4\x8f\x3c\xd8\xa3\xe3\x93\xdc\x77\x33\x47\xad\xd8\x90\xd3\x7c\x36\x34\x01\xe9\x06\x29\x27\xc9\x66\x88\xe6\xe0\xb1\x46\x27\x1d\x0e\xe1\x06\xcd\x81\x31\x5c\x16\xdd\xcd\xc3\xa6\x8b\xb0\xe9\x02\x14\xe7\xac\x74\x07\x17\x54\xe9\x26\x2f\xe8\x3f\xc9\xfb\xc6\x39\x64\x16\x3a\x03\x87\xe1\xe0\x90\xa2\xca\x1a\xa4\x2b\x73\x82\x7c\xf4\x2a\x1b\x1e\x05\x07\x71\xd1\x33\xac\x96\xe9\x22\xe7\x5c\x24\x6b\x2c\x24\xf9\x26\xe7\x58\x25\x14\x7c\xa2\x8e\xb4\x91\x1b\x6a\x96\xaa\x65\xff\x73\x9e\x2b\xba\x96\x47\x73\xbe\x5a\x73\xa6\x41\x3a\xb2\x25\x6b\xbe\xe6\x6f\x3a\x5c\x60\x9d\x8d\x5c\xc9\xe8\x1c\x37\x4f\x78\x3e\x08\xb7\xb0\x0c\xd6\x7c\x2e\x38\x85\x83\xfc\x8f\x34\x23\x5f\x91\x1c\x5f\x4d\x1e\x7e\x36\x86\x67\x0e\xb4\x3f\x63\x41\x31\x53\x5f\x6a\x8b\x79\x12\xd7\xa6\x7a\x46\xe5\x33\xbe\x91\xe4\x29\x93\x34\x23\x93\xfe\x31\xc4\x06\x7c\x39\xb9\x5e\xea\x0f\x75\xf6\xa3\x35\xae\xb8\xda\x28\x86\xfd\x63\xb7\x6d\x75\x13\xad\xfe\x43\x9c\x65\x2f\xb1\xb8\x20\xea\xeb\x37\x84\xa9\x6f\x35\xab\x66\x5a\xc4\xd4\xbb\xd3\xf5\x2c\x94\x6d\xd5\xbd\x5d\x89\xb3\xec\x07\x0b\x70\x7b\x2d\x3b\x9e\xed\xe7\x0b\x2c\x49\xf7\xa0\x56\xf6\x19\xb6\xa9\x2c\xb1\x69\xb1\x6a\x97\x82\x12\x99\xc4\xca\x0c\x10\xc3\xd8\x63\x2f\x06\x50\x63\xdc\x7e\xd7\x34\x9b\xfa\x92\x5e\x0d\xb6\x76\xd8\xcf\x70\x96\x55\x4a\x92\x78\x9e\xd3\xf9\xeb\x18\x56\x24\xab\x3d\xf3\x2d\xc6\xe1\x88\x22\xc4\xd2\x35\x5f\xaf\x89\x78\xea\x95\x10\xfb\x27\xc4\xba\x50\xf4\x8c\x4a\x90\xc4\x1a\xe7\xdf\xb3\x18\x0c\x06\x31\xe3\x8c\x68\x76\xd3\x28\xe9\xbb\x2f\xb5\x85\xd3\x25\x7c\x30\xe8\x63\xad\xd0\x99\x0a\x54\xbe\x58\xf2\x4b\xd3\x86\xf8\xd5\x04\xd0\x8b\x12\x8b\xe8\x3d\x4b\xd1\x8e\xea\x5e\x17\x22\x56\x1a\x16\xc2\x8c\xff\x24\x94\xe0\xa4\x83\xcc\xc6\x46\x9c\xef\xed\x2d\x27\xf8\x0d\x39\xac\xb7\xe3\xbd\xbd\x2d\xf8\x7c\x23\xf9\x46\xd5\xfb\x6a\xc5\xe3\x76\x6b\x71\x8f\x1a\xb8\xdf\x6e\x4b\x3c\x56\xd0\x77\x4b\x1a\x4d\x02\x82\x6c\x27\x8b\xf7\x88\x65\x18\xb6\x29\xe9\x49\x2e\xf9\xa5\x9f\x53\x95\x5a\xf4\x17\x5d\x6a\xa8\x45\xbd\xcf\x25\x82\x61\x9b\x26\x7a\x6f\x20\xdc\x3d\xa0\xb4\xaf\x6f\xf7\x46\x69\x8e\xd3\xbd\xdd\x2a\x10\xec\x60\x9d\x91\xd6\x77\x86\xeb\xf8\x2b\x22\x95\xe0\x57\xda\x7e\x03\xdb\x6d\x62\x75\x42\xb1\x61\x5a\x35\x9b\x93\x3c\x09\x48\x41\xe3\xfa\x25\x5d\x11\x11\x03\x00\xcb\x8a\x39\xae\xeb\xc2\x07\x4f\x47\xaf\xe0\x99\x06\xd4\xb1\x51\x03\xfc\xb0\x1c\xb2\x2e\x61\x62\x00\x6a\xa2\xb6\xed\x90\xe9\x30\xa9\x59\x91\xb7\xae\x24\xfd\x7b\x8b\xf0\xd5\xa6\x9a\x9e\xe3\x2d\xc5\x70\x23\x4c\xa5\x7e\x2c\x70\x1f\xb5\xf7\x6b\x88\xda\xa3\xff\x32\x87\x6d\xf4\xff\x44\xd4\x1e\xfd\x05\xfa\x11\x5b\x4f\xb3\xae\x17\x39\x5d\x4f\xae\x09\xd3\xf3\xcf\x74\x55\xb8\x16\x44\x8b\x8b\xef\xdf\x10\xb1\xc8\xf9\xe5\xe4\x9a\xc8\x39\x5e\x93\xbf\x50\xb5\x7c\x4e\x16\x44\x10\x36\x37\x7d\xee\xc2\x83\x30\x52\xa5\xe6\xc8\x58\x96\xc6\x58\xee\xc9\x4b\xaa\xb7\x15\x4b\xbc\x25\x19\x8f\x62\x60\xc3\x0b\xc1\xb5\xb9\x44\xab\xf8\x3a\x9e\x28\x14\x9f\x73\xa5\xf8\x2a\xee\x9d\x0b\x82\x5f\xf7\x4c\x91\xa0\x17\x4b\x65\x0a\x73\xb2\x50\x95\x22\x57\x5b\x97\xe9\x0e\xc2\x22\x53\x57\x17\xd8\xe6\xbb\xc2\xbb\x5c\x40\x2c\x0b\x63\xde\xe3\x94\x0c\x06\xcd\xfd\x77\x9a\x28\x64\xec\xac\xa7\xcc\xc4\x44\x8e\x01\xec\x53\xf9\x1d\xfe\x2e\x51\x60\x30\xa0\xf2\x1b\xca\xa8\x22\x89\x26\xd5\x44\xa1\x31\x00\x13\x85\x08\xb4\xb1\x18\x1b\xe7\xda\xf8\xd2\xf3\xeb\xc2\x64\x31\x07\x78\xdf\xe1\x15\x91\x93\x69\xdc\xca\xc3\x33\x63\xc9\x8c\xed\xbf\xdf\xb3\x2f\x97\x98\x5d\x98\xb8\x9e\x6c\x23\xb0\x9e\xc0\x64\x0c\xc9\x62\x41\xe6\x6a\x12\xcb\xdc\x28\x0c\x66\xd1\x26\xf1\xd2\xda\x36\xae\x3f\x67\xf8\x78\xf5\x09\x62\x21\xf8\x65\xf5\xe3\xc8\x7c\x8b\x21\x65\x8c\x88\x5a\x91\xf9\x56\xed\x4c\x83\x3d\xb1\x13\xd3\x82\x68\xa3\x48\x96\x66\x64\x2d\xc8\x1c\x2b\xca\x2e\x9e\xe4\x14\xcb\x52\x61\x0b\xed\xaf\x18\x5e\xd3\x6c\x12\x9b\xb6\x81\xc1\x92\xb6\xd7\xdd\x30\x45\xf3\x49\xfc\xbb\x74\x9c\x8e\xe3\x1d\x80\x4e\x5a\x6b\x2b\x4d\x91\xb7\xca\x9a\xd1\xc6\x6e\x33\xab\x0f\xe5\x1a\xcf\x29\xbb\x98\x1c\x8f\xa1\xb5\x23\x9e\x66\xb6\x4e\x8e\xaf\xf8\x46\x4d\x8a\x68\x2d\xb8\x59\x67\x58\x91\x6f\xb8\xb0\xe5\x56\x83\xfc\x7e\x6d\x2d\xbf\xe0\xd3\x97\x9c\x29\x4c\x19\x11\xc6\x32\x64\x74\x65\x10\xff\x95\x5f\x80\x87\xe3\x31\xe4\xcc\x29\x2e\xb6\x1d\x67\x5a\x47\xf0\xbf\x9f\x13\x96\x11\xe1\xff\xd2\xd0\xdb\xdf\x67\x56\x59\xb2\x7f\xb8\xdf\x55\x84\x26\xb1\x59\xcc\xd8\x9c\xe6\x85\xda\x93\x3f\x7c\x74\x5d\x80\xf0\x14\xd0\x7d\xb3\x3e\xd5\x8a\xf6\x6c\x3b\x03\x7e\x23\x2a\xb7\xeb\x2c\xa5\x4c\x08\x0a\xd5\xcc\x70\x17\x19\x35\xd1\x54\x38\xcf\x37\xa2\xba\x2d\x09\xce\xae\x74\x91\xd9\xe7\xb6\xc0\xe1\x77\x42\x90\xda\x15\xea\x02\x94\xe1\x0c\x42\x8d\x23\x04\x1a\x99\x58\xb7\x33\xab\x64\xbb\xa5\xb5\xbf\x6f\x8b\x18\xdb\xac\x8a\x18\xfb\xed\xce\x88\xb1\xa6\xc0\xbb\x4c\xd2\x02\x60\x27\x69\x89\xb3\x31\x2f\x4f\xb3\x55\x95\xbc\xd4\x96\x2d\xc0\x45\x2d\x50\x70\xad\xd3\xc2\xd7\xa9\x2d\x52\xeb\xe8\xfc\xe2\xea\x69\x96\x10\x60\x4f\xb9\x89\xfd\x96\xae\xb1\x20\x4c\x7d\xc7\x33\xa2\x95\xd5\x33\x61\xa8\xd3\x35\x78\x9a\x35\x11\xed\x4b\xf6\x43\x54\x56\x0b\x40\x8a\xc3\xd3\xdf\x11\x51\x23\xe7\x59\x00\x66\x69\x9b\xc3\x37\x06\xaf\x43\xb7\x1f\x86\x46\xed\xc3\xb0\x53\xc0\xb2\xc0\x52\x9d\x73\xde\x00\xa3\xe9\x58\x8f\x6c\x8d\x0b\xa2\xbe\xbf\xd4\x96\x94\x09\x62\x48\x73\xce\x5f\x6f\xd6\x49\xec\xfc\xe9\x13\xdf\x9f\x3d\xac\xd4\xab\xbf\xc9\x33\xcb\x0d\x8c\x7f\xb9\x6d\xc2\xbe\x4d\x4a\xe5\x37\x58\xaa\x2f\x74\x73\x18\x9f\xe1\x4b\x4c\x95\xb9\xfb\x6d\x58\xa4\x9b\x81\xed\x8b\xd4\xd0\x12\x92\x9c\xc5\x4b\x5b\xa7\x60\xbb\xed\x07\x55\x6e\x18\xc0\xce\x60\x7f\x25\x2d\x96\x3c\x0f\x37\x86\xa6\xe3\xa2\xfe\x9b\xfb\xcb\x31\xe8\xe7\xe4\x1f\x1b\x22\x0b\xee\x7c\xd6\x64\xac\x37\xae\x42\xac\x55\x46\xad\x68\xb6\xae\x86\x20\x92\xe7\x6f\x88\x0d\x29\xb1\x5d\x26\xb1\x8d\x25\x9a\x10\xf6\x86\x0a\xce\x56\x66\xdb\xa7\xc1\x5f\xdb\xad\xed\x4b\xf7\x4c\xd9\xc5\xe9\xd8\xee\x9d\x06\x70\x1a\x1d\x77\x3c\x9a\x90\xa1\x23\xc3\xe2\x29\x86\xd3\x19\xd8\xc1\x8c\x66\x4f\x99\x24\xc2\x13\xe8\x5d\xce\x3d\xcc\x39\x47\x69\xbf\xea\x3e\x7f\x34\x72\xee\x89\x52\x2d\xbe\xc7\x9b\x7b\xac\x9a\xc8\xa7\x96\xbd\x5a\x3f\x07\xd4\x2b\xd7\x47\xc1\x0e\x2c\x44\xaa\x36\xaf\x0f\x70\xdb\xb8\x4a\x67\xb6\xdd\x0f\xa6\x2c\x01\x8e\x61\x39\xff\x01\xbc\xa4\x79\xee\xc4\xeb\x5d\x10\xd3\x6b\xb0\x89\x2a\xee\xb5\xfd\xde\x3c\xe8\x7b\xc7\xb8\xa2\xeb\x1d\xd4\xba\xbd\xb6\xc3\xce\xf1\xfc\x35\xd4\xe6\x55\xe1\x3e\x25\xa9\x11\x38\x5a\x83\xea\x89\x54\x90\x15\x7f\x53\x75\xd7\x26\x4c\x9b\x3e\x85\x63\x6e\x9e\x13\xcc\x36\x6b\xe3\xec\x28\x7c\xaa\x75\xc4\x66\x54\xae\xb9\x79\xad\xd0\x36\xd2\x7f\x6b\x33\xf6\x89\x9d\x4f\x5c\xa8\x28\xb1\xa9\x00\xde\x9f\x7f\xfa\x70\xcf\x73\x58\xf3\x70\xd7\x69\xab\xa8\xd6\xc6\xa6\xf7\x3d\x15\x27\x31\x65\x35\xef\x87\xf2\x07\x2c\x15\xdf\x5d\x8f\x99\x0b\x4c\x1d\x5e\x31\x56\xf3\xca\x29\x7e\x71\x91\x5b\xdf\xe5\xa4\x1c\x93\x79\xd2\xbd\xb1\xbd\xf7\x09\x02\x58\x34\x16\x9d\x8d\x45\xad\x71\xe1\x36\x05\xd0\xa9\x61\x7a\xbe\x83\x81\x77\xa0\xdb\xbf\xf6\xfa\xf7\x28\x6b\xf8\x19\x0b\x88\x6e\xeb\xf8\x0d\xc0\xe9\x6a\xfa\x9a\x5c\x65\x9a\x55\xc0\xfa\xa1\xf9\xc3\xdf\x23\x84\x54\x7a\xb9\xa4\xf3\x65\xd3\xf7\x56\x38\x96\xdc\x18\x50\xa5\x52\xf1\xf5\xd3\xd5\x8a\x64\x54\xf3\x06\xc1\xd7\xf8\xc2\x72\x71\x5d\xe8\x8c\xd3\xaf\x5c\x78\x10\x80\xfd\xe3\x8a\x93\x7e\x07\x2b\xac\xb0\x83\xb2\x44\x43\xa7\xaa\x91\x4c\x68\xf1\xc4\xc5\xe1\x9c\x29\x2a\x4d\xa8\x18\x40\x19\x14\x94\x06\x94\x39\xdb\x6c\xee\xd6\x8a\x81\x03\xe0\x1c\x95\x7a\x92\x3b\x04\xb7\x5e\x9c\xcb\x64\x53\x3c\x74\x62\x46\x8b\x62\x00\xdd\xcf\x18\xc0\xc5\x21\xed\x0c\x30\xb6\x9d\x35\xe2\x00\xcc\x90\x48\x4d\x32\xc0\x82\xf9\x68\xd9\x40\xcf\x37\x8a\x24\xb1\x29\x88\x2d\xd3\x5c\xa2\x6a\x0c\x96\x80\xd7\xf3\xc2\x16\xaa\xb8\x45\x43\x2b\x29\x06\x70\xa9\x56\xb9\xd6\x06\xcc\x6d\x68\xc3\xb0\x83\x4d\x68\x9c\xaf\xd0\x8c\x33\x89\x1f\xc9\x35\x66\x8f\x1f\x1d\x99\x7f\x62\xa8\x04\xbd\xb8\x20\x62\x12\xaf\x30\xdb\xe0\xdc\xd9\xa9\x2f\x48\x4e\xe6\x8a\x8b\x49\x9c\x76\x4d\x78\xee\x27\x9c\xc6\x46\x32\x33\x22\x0e\x68\xb5\xa8\xb4\xf2\x9e\xd5\xc9\x83\x47\x19\x7d\xf3\x8a\x45\xcd\xff\x19\x83\x1d\xc5\x0f\x7c\x7f\x0c\x9a\x13\x68\xf7\xd7\x06\xc6\x51\xd5\x8a\xb7\xa6\xf9\xa8\xac\x12\x30\x32\x53\x14\x03\xf8\x20\x6e\x1d\x4a\xf0\x9c\xa0\xc2\x60\x6f\xad\x22\xd5\x95\xae\xb3\xc2\xe2\x82\xb2\xc9\xf8\xc4\xfe\x18\x3d\x28\x46\xc3\x49\x1d\xef\x00\xc6\x93\x36\x68\x9c\x52\xa6\xc1\x59\xbf\x3d\x69\x1b\xee\x71\x2b\x08\x1a\x53\x05\x56\x8a\x7e\x69\x05\x2d\x73\xf8\x20\x7e\xfc\xe8\x28\xa3\x6f\x6e\xd3\x87\xac\xf4\xb1\x80\x0f\xe2\x88\x66\x61\x85\x7d\x7a\xff\xde\x11\x6d\xc1\x03\x50\xb3\xf8\xaf\x57\x3c\xa3\x0b\xaa\xc5\x50\x9e\x70\x58\xa7\x6f\x57\x2d\x2d\x6a\x69\x64\x72\xf6\xa5\xe1\x32\x21\x7b\x29\x8e\x22\x6a\x87\x10\x2d\x12\xd9\x6a\xce\x31\x24\xe6\x3e\xec\x21\x7a\xb8\x39\x0e\x22\xe9\x3e\x81\x9b\x84\xa7\x21\x72\xbe\x24\xd9\x26\x27\xdf\xb3\x39\x49\x62\xbc\x50\x44\x14\x83\x42\x52\x55\xbc\x00\x34\xc1\x84\x0d\x66\x00\x33\x7b\x6e\xc7\x99\xd5\x24\x27\xf5\x43\xab\x17\x96\x78\x12\xb0\xdb\xed\x40\x4f\xa4\x66\x2d\x35\x3c\x1a\xce\xda\x39\x48\x61\x02\x16\xa7\xda\xfb\x0e\xbd\x2b\xba\x72\x0c\x97\xad\x3a\xa9\x93\x7f\x4e\xaa\xc1\xca\x9c\x1a\xca\xcc\x0d\xc7\x88\xb6\xad\xee\xa6\x9c\xd7\x01\xc7\x56\x05\x24\xfd\xae\xc3\x2c\x1f\x5b\xd3\x30\x7f\x90\xb0\xbf\x9e\x78\x13\xe3\x1b\x81\x57\xa4\x42\x3b\x74\x91\x90\x96\x86\xc6\x6e\x6a\x1e\xc9\xf5\x49\xdb\xf8\x45\x8c\xed\x61\x07\xa9\x50\x20\x9c\x18\x63\x39\x20\x87\xb7\xa3\x82\xa1\x6b\xe2\x67\x48\xcb\xe8\xab\x9c\xf4\x58\x6a\x59\xcf\x4b\xbe\x46\x63\xe8\xff\x7a\x4e\x2f\x96\x2a\xf8\xfb\x0b\xe3\xa7\x0d\x3e\x7c\x4b\x16\xba\xdc\xf5\x32\x75\x8c\xac\x9d\x59\xcf\xf1\x9a\x2a\x9c\xd3\x7f\x92\x44\x00\x30\x43\x61\xba\xc9\x1a\x07\x8b\xd7\x6f\x63\x73\x4b\xba\xe5\xd8\xf1\x7d\x9c\x35\x96\x0e\xab\xc2\xce\xd2\xf4\xb2\xe4\x97\x35\x4f\x54\x27\x31\x34\x5d\x17\x99\x3d\x4f\xac\xa8\xba\xde\xc5\x1b\x83\xde\x1d\xce\x41\x9b\x15\xb5\x25\x9d\x13\x45\xfe\xa8\x21\x2f\x26\xe3\x77\x0f\x51\xc5\xf7\x44\x01\x48\x4e\xfd\xe7\x17\xbe\xff\xc2\x93\x64\x87\x2c\x6c\x4c\xb3\x57\x8a\xc6\xf5\x8b\x03\x04\xc9\x84\xec\x07\x6c\x19\x02\x54\xc4\xd6\xd5\x8f\x74\xad\x29\xe0\x0d\x43\x48\xdc\x55\x01\x59\xeb\x02\x2a\x07\x51\x01\x77\x4b\xdc\x9e\x6e\x79\xe2\x41\xab\xad\x82\xf7\xb2\xc7\x00\x6c\xb7\x85\xdb\xe8\x1f\x1b\x22\xae\xbc\x4a\xf1\x24\xcf\x93\x40\xab\xa8\x71\x38\x8d\x9d\x18\x00\x67\x30\x0e\x06\x09\x41\x63\x7f\x64\xd7\x3a\xa9\x70\xaf\xab\x3a\x76\x41\x6d\xa6\xe5\x72\x43\xa1\xb9\x5d\x40\x87\xb7\x0a\xa0\x30\x17\x58\xf6\x30\x2c\x0d\x4a\xc3\x58\x6f\x67\x16\x01\xc3\xb7\xfa\x64\x3b\x46\x3a\x50\xd0\x72\x54\xdf\xd8\x9b\x96\x66\x6a\x2c\xb2\x85\x27\x6a\xcb\xc0\xd9\x0f\x65\x38\xc5\x1f\x69\x66\x9e\xbd\xb7\xa2\x53\x86\xec\xd2\x7d\x6b\x11\xcd\x7f\xb4\x67\x29\xc0\xc4\x2f\x04\x6e\xb2\xba\x23\xa8\xb8\xb2\x22\x3b\xf6\x98\x5e\xa5\x1d\x0c\x17\xb5\x43\x9e\xdc\xcc\x30\x3a\x16\x52\x79\x77\x4c\x09\x47\x39\xbf\x71\xb0\xf5\x0e\x42\xf5\xcd\x6b\xdc\x22\xd4\xed\x02\xb7\x63\x52\x43\xe2\x30\xa9\x31\x61\xcd\xe9\x2e\x9e\xec\xdd\x4c\x81\x03\x68\x52\x95\xee\x75\x8b\x73\x52\x8f\x72\xb0\xd1\xaa\x62\xbb\x6d\x31\xed\x68\x40\x7d\xe7\x94\x65\x8e\xa9\x80\x5e\xb7\x77\xc8\xc6\x0c\x5c\x7b\x4f\xce\x84\x7a\xcf\x3d\x83\x85\x17\x67\x42\x76\x00\xb2\xb4\x61\x0c\x13\x48\x35\xc8\x55\x9c\x74\xb0\x23\x33\xba\x3d\x45\x77\x77\xad\x82\x95\xf1\xfb\xb4\xf8\x46\xb2\xc1\xa0\x72\xc3\xb2\xee\xa7\xaa\x1c\x21\x8b\xc7\xc7\xa7\x62\x74\x3c\x19\x6b\x0c\x1c\x9f\xd0\x47\xe2\x84\x9a\xe3\x64\x3a\x3a\x9e\x05\x5e\x2c\x3a\xeb\x29\xe7\x44\xb3\x3e\x2e\x73\x61\x12\x56\x1d\x50\xad\xba\xee\x4d\x72\xa9\x75\x03\xb7\x2b\x44\x26\xa4\xa6\x38\x9f\xcd\xdf\x39\xd8\xfa\x7a\x07\x8b\x50\x89\xd7\xe4\xca\xb0\x7c\x56\xf9\xa0\x34\x5a\xa6\x33\xcf\xce\x05\x64\x20\x15\x24\xdb\xcc\x49\xfb\xfb\xcd\xa3\x63\x13\x84\x65\xee\x62\x7d\xbf\x30\x27\xc0\xc4\x92\x89\x16\x9c\x3b\x00\xa7\x33\x00\xb9\x23\x35\x2c\x25\xbd\x60\xc9\xf5\x4e\xf3\xf1\x22\xfd\x42\xd3\xe1\x48\xc1\xf5\xe8\xb8\x8f\x90\x28\xfa\xa5\x60\x30\x30\x9f\x58\xf0\xe9\x94\x4f\xe9\xac\xd9\xf5\x94\xce\xa0\x9a\xd2\x19\x98\x34\x5a\x0c\x06\x89\x69\x63\x8a\x77\xda\x68\xd9\x95\x31\x00\x9b\x3b\x04\x2c\xfd\x0a\x63\x83\xf7\x85\x01\xfb\x59\x1d\x1c\xc8\x75\x68\x04\xd6\xcf\x72\x7f\xe2\x8f\x2f\x9f\x7d\xfb\x05\x16\x32\xf5\x50\x26\xe6\xb0\x7d\x4e\x7e\xff\xe3\xff\x7c\xf7\xfa\x6d\x0c\xcf\x73\x3e\x7f\x3d\x79\x70\x1d\x4b\x13\xc3\x22\xe3\xc9\x34\x1e\xb8\x0e\xe3\x19\x8c\xa5\xc2\x8a\xd8\x10\x9e\xc9\x74\xfa\x39\x9c\x7e\xfa\x7b\x38\x9e\xc1\xe9\xf4\xd3\x87\x70\x0c\xa7\x37\x5a\xa8\xb3\xd9\xcc\x9c\x0b\xc0\xe9\x34\xf6\xdd\xc2\x98\xe4\x66\xf5\xa7\xd7\xb5\xfe\x1f\xc2\x38\x8a\x74\xc1\xf1\x18\xc6\x19\x7d\x63\x7e\x3e\x9c\x41\x5d\xf0\xea\x15\xd3\x7f\xb6\x80\xd0\x72\x92\xd6\x3a\x6e\xcb\x80\x41\x6f\x0f\x7f\x0f\x75\x8f\xc7\x77\x80\xd8\xfe\xcf\x00\xfb\x07\x78\xec\x20\xd3\xfd\x14\x70\xcf\x60\xbc\xc6\x9a\xcb\x99\x4c\x35\x93\xe9\x6c\x07\x6f\xea\x09\xfa\xf9\x29\xf2\xd6\xce\x67\x4f\x6f\xb3\x59\xfb\x47\x18\xa0\xf4\xd3\xdb\xc1\x63\x51\xf3\xd0\x20\x7a\x0c\xa7\x9f\x7e\x0e\x8f\x43\xa4\x57\x9c\x2c\x05\xba\xf5\x88\xd3\xf8\x62\x43\xb3\x18\xc6\xd4\x9c\x5e\x7d\x41\x16\x5c\x18\xdc\xc5\xbf\x9d\x6f\x84\xe4\x62\x32\xfe\x6d\x0c\xa7\x0f\xff\x7d\x66\x6b\xef\x59\x1e\x87\x93\x83\x29\xe2\xd7\xbe\x86\xb0\x32\xe3\xfd\x0b\xd6\xb5\xe4\x33\x93\x1b\xe9\xeb\x37\x38\x8f\x27\x0b\x9c\x4b\x02\xe3\xcd\xfa\x0d\x36\x15\x62\xba\x88\x8d\xeb\x77\x44\xf2\x91\x46\x90\x59\xa5\x11\xf1\xab\xb8\x7b\x00\x57\x44\x61\xe3\xfc\xda\xe4\xc4\x28\x33\x77\xe4\x77\xe9\xf2\x5c\xc6\x87\xdf\x3c\xd9\x28\x9a\xef\xb9\x74\x72\xfb\x84\x93\xfd\xbe\xb9\x4a\xa5\x45\xf3\x76\xdb\xef\xb7\x98\x6c\xc4\xdb\x64\xb5\xb4\x7a\x5a\xe0\xfb\x4e\x92\xbe\xd8\x6e\xfb\x4c\x4b\xcd\x7e\x5f\xa4\x54\x9a\x38\x57\xfd\xb3\xbb\x3b\xad\x9d\x25\x04\xb2\xbb\xbd\x8b\x46\xa5\x77\x5c\x32\x17\x16\x8f\x54\xf5\xb3\xf5\x90\x3d\x61\xd9\x77\x3c\xa8\x24\xc2\x4a\x5f\xe7\x92\x5c\x2e\x89\x20\xc1\x95\x5f\x9b\x59\xcd\x86\xf7\x19\x00\xa9\x57\x40\xfa\xc2\x95\x0e\x06\xbc\x2d\x9d\x9c\xd8\xa8\xe5\xc8\x67\x04\xf5\xff\xe2\x6a\xfa\x77\xd8\x5a\xd9\xae\xaa\xfd\x36\xe7\xec\x0d\x11\xea\x56\xe9\x71\xaa\x41\x90\xa4\x48\x19\xf2\x88\x99\x00\x48\xad\x1c\x6b\xe5\xcb\xe4\x90\x70\x54\x06\x12\x32\x15\xb3\xf2\x00\x29\x08\x8f\x24\x53\x52\x5c\x28\x9b\xdd\x65\x6d\x30\xcb\x0c\x9e\x3d\x41\xb7\xe5\x23\x14\x5a\xa9\xea\x1d\x82\x41\xf2\x0f\x73\xa6\x71\x7b\x22\x2f\xaf\x64\x4f\xc7\x33\x4d\xe0\xd3\xbb\x4d\xc7\x00\x60\xa8\x6b\xdf\x84\x54\xdb\x85\xd1\xd6\x09\x5d\x1c\x9c\x16\xfb\x0e\xc0\x5e\x28\x24\x9c\x6a\xd3\x88\x96\xee\x0c\x4b\xd7\xe6\xd3\x21\xd7\xc9\xdb\xee\xf1\xfd\x82\x43\xce\xfb\x6c\x30\xf0\x31\xe6\xe5\xaf\x03\xa3\xcd\x7b\xef\x2d\x62\x3a\x06\xbb\x5e\x95\x73\x16\x89\x7c\x12\x02\x1f\x9a\x5b\xa1\xd3\xf1\x0c\x72\xc4\xa6\xc7\xb3\xca\x3d\xea\x39\xf9\x6e\xa3\x29\x69\x30\x48\x62\x66\x7e\x95\x79\x00\xe8\x60\x90\x50\x64\xcb\x13\x6a\x0e\xca\x6b\x35\xb8\x36\x62\x7c\x0d\x0e\x00\x80\xf4\x71\x68\xc6\x74\xee\xcb\x03\xc9\xf8\x43\x2a\xeb\x17\x8a\xdc\x13\xf2\x3d\x21\x77\x13\x32\x7a\x7f\x94\x4c\xa5\xbd\xb5\x70\x37\x21\xe3\xa9\x43\xa1\xb1\x09\x58\x72\xc2\x57\x3d\x12\x27\x2a\x10\xbe\x16\xc4\x82\x66\xa7\xaa\x10\xbe\xfd\xe3\x5e\x91\xec\xef\x4e\x9a\x90\xe9\xf2\x3d\x0a\x28\x2a\x47\x9a\x26\x0e\xc6\xc7\x6d\x81\xbe\xdf\xd6\xbf\xb8\x6d\xbd\x9f\x74\x92\xba\xf3\xb5\x99\xe3\x3a\xf2\xf4\xfd\xb5\xa6\x1c\xbb\xf9\x6e\x43\x6f\xb7\x51\xf2\xee\x66\x2e\x18\x2d\xee\x5e\xa4\xfc\xf2\x68\xaf\x6a\xcb\x94\xe4\xf5\x10\x40\x86\x84\x16\x28\x14\x89\x40\xa0\x14\x94\xa6\x57\x34\xd1\x06\xd9\x7b\x93\x04\xf9\x87\x54\xcd\xf3\x7b\xd5\xfc\x97\x4e\x7e\x3f\xa7\x46\xf3\xe8\xfd\x29\x34\xf9\x07\x55\xcd\xf3\x7b\xd5\xfc\x9e\x90\xf7\x11\xf2\x7b\x54\xcd\x19\x57\xb7\xd3\x0d\x3a\x1d\x40\xfd\xbb\x3b\x80\x18\x57\x46\xd6\xd8\x49\xbc\x47\x45\x9b\x71\xf5\x8b\x70\x0e\x8e\xf7\x3a\x07\xdf\xd1\x3e\x61\x5c\x1d\xe6\x0d\x3c\x08\x65\xbc\x3d\xc9\xd2\x2f\x0b\x63\xef\xd7\x9d\xca\xc5\x7b\xc4\xdf\xdb\x8f\x81\x40\xc7\x04\x6b\xf8\x19\xcf\x40\xbf\x89\xb5\xe3\xd9\x9d\xfc\xff\x6f\xdf\x0b\x56\xda\x26\xfa\xe1\x0f\xa0\x9b\xa1\x2c\xc4\x67\x28\x34\xe1\x2c\x30\xa6\xf2\xa5\x86\xe9\xca\x5d\xd9\x39\xe7\x3c\x27\x98\x95\x37\xeb\x55\x71\x45\xb7\xae\x14\x7b\xb9\x7b\x3a\xee\x07\x37\xfc\x74\x9f\x96\x06\x63\x30\xe9\xf7\x49\xcb\xf1\x85\x91\x39\x5a\x6a\xca\xa3\x39\xcf\x73\x62\x20\x6c\x23\x95\xa0\xa2\x45\x9f\xfb\x40\x39\x1b\x11\x2d\xc1\x3e\x46\xf2\xdb\x52\xbe\x95\x73\x14\x30\x0e\x20\xb7\x31\x41\x63\x9b\x74\xb4\x5f\x47\x0f\x68\x23\xd1\xb0\x39\x34\x49\x4f\xbd\xf3\x86\xf9\xf5\xb9\xa9\x07\x49\xd9\xc5\x26\xc7\xc2\xb5\x2f\x1f\x71\xd8\x8f\x6f\xb6\xa0\xc2\xc6\xf8\xfc\x82\x31\x0e\x99\x4f\x36\x56\xc1\xb9\xc7\x75\xe5\x23\xce\x73\x7e\xf9\x45\x8e\xd9\xeb\x18\x94\xb8\xb3\xbe\x81\x02\x77\x7d\x93\x0f\xbc\x5f\xb5\xe7\x08\x2c\x3b\xd2\xb6\x5d\xe7\x52\x85\x38\xbb\x05\xb2\x33\xac\x5a\x53\x39\xdf\x8c\x64\x5f\x53\x90\x7f\x6c\xa8\x20\x23\x7b\xf8\xfb\x71\x5e\xb6\x72\xb9\x7a\xfb\xac\x99\x3f\xfc\x19\x5f\x11\xa6\xfe\xeb\x45\x44\x65\xe4\x40\xcb\xb4\xce\xa8\x61\x50\x4b\x12\x7d\x85\x15\x89\x8a\xd9\xa5\x2e\xa2\x94\x97\x8b\xf8\x17\xaa\x96\x5f\x15\x97\x95\x62\x33\xd9\x6f\xb8\xc6\x6d\x0c\xe3\x67\xcf\x9e\x45\x5f\x71\x18\xfd\xf5\xaf\x7f\xfd\x6b\x0c\x20\x2e\x9b\x05\xb9\xef\x04\x9c\xc6\x0b\xdf\x62\x2d\xc8\x9c\x4a\xb3\x2c\x21\x19\xcc\x00\x94\x08\xa7\xb6\x1a\xdc\x20\x9c\x16\x15\x61\x8e\x70\x5a\x56\x85\xf3\xce\x41\xce\x6d\x90\x84\x26\xba\xef\xc5\x17\xfe\x0f\x73\x41\xc3\x7d\x7c\x62\x7e\xcf\x00\x5c\xa0\x79\x6a\xab\xc3\x0c\xcd\xd3\xb2\x01\x5c\xa2\x79\x6a\x9a\xc0\xb5\x2b\x30\x8d\xe0\x0a\x95\x49\xea\xf3\x1b\x88\x56\x9a\xe5\x58\x21\x9a\x10\x28\x4d\xbc\x68\xdf\xfc\x04\x29\x95\x7f\xd6\xb8\x4e\x3a\xe8\xd6\x92\x5f\xc1\x5c\x56\x37\xd5\xbf\x14\x9c\x5d\x7c\x65\xaf\x07\x1b\xfc\xea\xa6\x3b\x92\x4b\x12\x99\x07\x10\x0c\x08\xe0\x96\xc3\x2e\x06\x83\x64\x81\x68\xb2\x80\x12\x40\x03\x83\x45\x4d\xb2\x80\x9b\x62\xc3\x39\x91\x22\xed\x86\xf6\x98\x5f\xb8\x15\xd4\xba\x3e\xac\x0d\xe2\xeb\xf8\x61\xb2\xc1\x20\xc9\x10\x4d\xb2\x62\x98\x17\x78\x45\xfc\x3a\x24\x59\xe7\x60\xe1\xea\x66\x7b\x06\x0c\xeb\xf9\x41\x97\x83\x41\xb2\x44\x34\x59\x16\x83\x9a\xd5\x4d\x96\x9d\xa3\x39\xf2\x59\xee\x19\xc8\x55\xf1\x63\xac\x07\x83\x64\x8d\x68\xb2\xae\x4d\xcc\x8e\xb4\xde\x3b\x2f\x4b\xa0\x70\x7d\xc3\xb4\x9e\x04\x23\x16\x8c\x0d\x92\xd4\xa4\xd3\xd1\xf4\xe0\x32\x35\x33\xad\x50\x89\xa0\xf1\x8a\xdb\x9b\x26\xbd\x7a\x36\xa5\x5b\xa6\x5d\x1d\x0c\xc2\xbf\x7c\x2a\x6f\xc6\x2f\x63\x1b\x2b\x52\xdf\x1e\xa7\x2c\x01\x13\xff\xf1\x3b\xce\x48\xa2\xf4\x37\xcd\xa8\x34\xb8\x9a\x48\x27\x9e\x41\xde\xc0\xa1\xa5\x67\xb8\x4d\x2e\x5d\xe3\xbd\x77\x96\x90\x1f\x88\x4b\x2b\xc8\x21\xee\xe4\xd4\x06\x3b\xa3\xaf\xb0\xc2\x9d\xbc\xfa\x85\xad\xdb\xe4\xd7\x12\xd1\x04\x03\xb8\x41\x32\x5d\x63\xb5\x84\x39\x92\xe6\x6d\x96\x80\x57\x26\x1c\x6e\x40\x45\xa2\x9a\x65\x98\x83\xc1\x60\x1e\x3e\x93\xc2\x52\x33\x86\x1c\x0c\xe6\xe6\x51\x8a\x3c\xe0\x19\x21\x25\x65\x32\xb6\xd1\x61\x2a\x10\xc9\xf3\xd4\xe0\x53\x7e\xc3\x45\x92\x03\x18\xe7\x58\x2a\x87\xbb\x15\x91\x12\x9b\x1b\x20\x15\x8a\xd5\x5c\x1c\xab\xe5\x13\x96\xfd\x89\x5c\x85\x54\x1b\x92\xbc\x5d\xc6\x0c\x2b\x5c\xa3\xdc\xf2\x06\x96\xcb\x7e\x95\xba\xb4\xaa\x6b\xbe\x4e\x8a\xd0\x60\x65\x9d\x39\x56\x76\xc9\x18\xc0\x6b\x8d\xa4\x89\x2a\x2f\xaa\xc2\xd7\xe4\x6a\x22\x76\xfb\x29\x8f\xbc\x9d\xe7\x1b\xf9\x8b\xd6\xc2\x5a\x74\x30\x06\x63\xca\xe2\x32\x76\xba\x2a\x36\x19\x9c\xc6\xc2\xdc\xcc\xa9\x8b\x63\x8c\x78\x6a\x4a\x34\xcd\xf0\x40\x00\xdf\x20\xfb\xa8\x0b\xb0\xa6\x45\xb8\x74\x97\x36\x1c\xe0\x53\x43\xae\x1b\xe3\xc1\xe0\x21\x42\x08\xfb\x98\xb2\x6b\x4b\xdc\x22\xc1\xf0\xa1\x21\xef\xe9\x78\xa6\x89\x7b\x7a\x3c\x2b\x95\x4a\x6d\xf5\x98\x61\x8a\x73\x54\xf7\x65\x53\x28\x97\x9d\x55\x72\x30\x18\x6c\x1e\x69\x0b\x8b\x3c\x42\xf9\x41\x70\xee\x0a\xf2\xad\xbf\x53\x77\xef\xe5\xfc\xb9\xbd\x9c\x7b\xf7\xaf\xd7\x41\x7f\x11\x9b\x57\x10\x63\x09\x7e\xfd\x76\x2d\x88\xd4\xc4\x25\xdd\x92\xb6\x6f\xec\x22\xe8\xb0\x6d\x13\x53\xbd\x89\xc9\x05\x79\x1b\xc3\x58\xd3\xb5\x89\x47\x7d\x43\x84\xec\xd8\xd5\xba\x2a\x94\x88\x9b\x4d\x00\x37\x88\xa7\xae\x3a\xcc\x51\x21\xed\x37\x83\xc1\xe6\x36\x5b\x5f\xda\x7c\xcf\x6c\x2a\x67\x83\x41\x82\x91\xfe\x01\x7a\x31\x59\x61\x9a\x6b\xa5\x40\x9a\xaf\x08\xb1\xd4\x7c\x32\x7f\x35\x5d\x1d\xae\x34\x95\x7c\x23\xe6\x04\x8a\xd6\xf9\x12\x38\xb5\xd3\xfa\x8e\xb3\x97\x79\x16\xc3\x78\x45\xf5\x8f\x6f\xad\x0f\x63\x06\x20\x45\x22\x0d\x6a\x40\x8e\x44\x1a\xd6\xe9\x55\x64\x20\x37\x79\x96\xeb\xae\x6b\x93\x75\x50\x15\xef\xcf\xc7\x53\x3c\xfa\xe7\x78\xf4\xef\xb3\xe4\x74\xe2\x7e\x8e\x66\x9f\xf8\x8f\xe0\xf4\x37\x31\x2c\xaa\x5c\xc7\x43\x3e\x8c\xe1\xae\xb3\x2a\x00\x3d\x6a\x02\x6b\x83\xfe\xff\xa3\xac\xdd\x35\xc6\xab\x57\x29\x88\xe1\x81\x35\x4f\x41\x29\x6b\xcd\xf6\x7a\x4e\x2e\xbe\x7e\xbb\x4e\x14\x8c\x69\x0c\x76\xc6\x61\x5f\xea\x9f\x14\x7a\x12\xc2\xc0\xaa\x09\x42\x13\xb0\xc9\x94\x1f\x83\xed\x16\x37\xd6\xde\x65\xd1\xc7\x00\xf4\x51\x07\xeb\x94\xdb\xad\xa6\x44\xbd\x99\x34\xef\xa4\x81\xe8\xaf\x5c\x5c\x9c\x63\xf6\x94\xbd\xe1\xaf\x89\x71\xa8\xb6\x6c\x8d\x6b\x43\x15\x93\xa3\x9f\xdc\x0c\xfb\xff\xf6\x9b\xdf\x0e\x1e\x7c\x32\x7c\x75\x84\x4e\x7f\x3a\xfb\xdb\xf5\x76\xf7\xff\x46\xb3\x61\x72\x3a\x79\x95\xee\xad\x01\x3e\x39\x04\x77\x29\x18\xde\xb4\xd8\x47\x14\xae\x97\x9c\x91\xc9\xd1\x4f\xc9\xf4\xd5\x70\x76\x7a\xfc\x4a\x7e\x32\x1d\xbd\x3a\x7a\x95\xce\x4e\x5f\xc9\x4f\xc0\x69\xf2\x2a\x49\x5e\x65\xd7\x9f\xee\xc0\x2b\xb0\x75\xbf\x40\xb5\x92\x2f\x6f\x7c\xfc\x9d\xf9\x98\x24\xd3\xb7\xff\x33\xdb\x4e\xc9\xd7\x33\xfd\x63\xaa\x5e\xce\x4e\xa7\xba\xd6\xd6\x5c\xc1\xd1\x98\x31\xd5\xa6\xff\xf6\xc9\xab\x6c\x36\x04\xe0\x93\xdf\x1c\xc1\x8d\xc8\x27\x47\xc9\xe9\x24\x99\x3e\x19\xfd\x2f\x1e\xfd\x73\x36\x04\x13\x0d\xcc\xd1\xf5\x18\x7e\xba\x03\x7a\x0a\x4f\x46\xff\xab\x67\xe1\x7e\x8e\xf4\xef\x4f\x92\x57\xe9\xf4\xd5\xa5\xc6\xd0\x30\x99\xbe\xba\x4c\xe1\x7f\x9c\xfe\x84\x7e\x3b\xc0\xab\xf5\xc9\xe4\xd5\xd1\xff\x1b\xfe\xdb\xe8\x7a\x37\xfb\x64\xfa\xea\xb2\xfc\x5e\x7c\x06\xa7\xa7\x47\xfb\x39\x2f\x65\xf7\x9a\xd3\x81\x9a\x13\x3a\x44\x73\x0a\xf0\x79\x47\xcd\xa9\xff\x5e\x74\x27\xb0\xdd\x6e\x1e\x93\xed\x96\x3c\xee\x50\x9d\x6a\x80\xde\xab\x4e\xbf\x52\xd5\xa9\xf3\xfd\xfb\xfd\xde\xce\x77\xdf\xa9\x0e\x06\xd2\x50\x15\x44\xbb\x8d\x18\xc0\x1c\x0f\x49\xf8\xd4\x4e\xe3\x32\x2f\x45\x96\xc8\xd8\xe3\xe3\x53\x66\x2f\xf2\x72\x74\x7c\xc2\x1f\x31\xf3\xdc\x0e\x9d\xf2\xea\x45\x5e\x1e\x1c\x8c\x57\xee\xf3\xd2\x1b\x90\xe7\x8e\x56\x7e\xb1\xac\xaf\x79\x58\x52\xf3\xab\x7a\x4d\xaa\xc6\xea\xa0\x86\xe5\x0b\xa2\x2e\x09\x61\xcf\x9c\x75\x0f\x63\x2a\xad\x3e\xa6\xff\x8b\xdf\x5a\x65\x8c\x15\xca\x18\x29\xf6\x9f\x66\x74\xdb\x2d\x85\xd8\x97\x5a\xef\xae\x44\x2c\x6d\x74\x0b\x37\x88\xa5\x54\xc2\x1c\x31\xad\xc6\xc1\xb9\xfe\x17\xbf\x2d\x4d\x40\xa7\xc8\x95\x0c\xb5\xaf\xd5\xb7\x3a\x2f\x2a\x14\x11\xe1\x59\x66\x37\x3f\xb6\xcf\x1c\xb5\x1e\x91\x35\x9d\x28\x9a\x59\x6e\xfa\x08\x2d\xf6\x78\x69\x9d\x72\x5a\x8c\x2e\x83\x73\x27\xd3\x89\x36\x45\x9b\xbe\x99\x64\xf1\x28\xdf\x6e\x17\x8f\xe7\x1d\xa2\xe0\xdc\x22\x2a\x70\x1a\x37\x3a\xcd\x1f\x77\xc0\xa5\x38\x7f\xb1\xe4\x42\x75\x35\x36\xbe\xa1\x47\xdd\x8d\xbf\xe5\xec\xe2\x56\xa7\x2b\xce\x07\x24\x3f\xc2\x29\xea\xf5\x99\x51\x67\x27\x47\xaf\xae\x93\x57\x97\x43\xf0\x6a\x77\x74\x01\x5d\xe1\x57\x44\xce\x05\x35\xb9\xa7\x26\xf1\xcb\x25\x95\xd1\x82\x12\x6d\x47\x5c\x90\xb0\xec\x1b\x2e\x0e\x78\x13\xf7\xd0\x0b\xf3\xbd\x7a\x96\x5b\x3d\x8f\xac\x1c\x4d\x2b\xd9\x65\x99\xc9\xa1\x10\x37\xe1\x8d\xc1\x4e\x43\xe9\xf6\x45\x05\xc2\x77\xbf\xd3\x5f\x79\xf8\xd6\x5a\xcb\x6e\xa0\xa4\x06\x19\xb1\x0f\x90\x54\xea\xbc\x4f\x48\xa0\x40\xc4\x41\x53\xdd\xe1\x42\x9b\x6a\x2e\x93\x7c\x61\xaa\x09\x23\x90\x51\x1d\x7b\x7e\xc3\x03\x00\x45\x61\x66\xd5\x2b\x59\x32\x89\x41\x85\xcf\x8a\x66\x4e\x62\xf3\xc8\xb4\x7d\x6a\x67\x3e\x27\x6b\x45\xb2\x49\x7c\x1d\x2c\xdf\xce\x3e\x66\x70\x4e\x22\x5f\x1e\x43\x73\x2e\xd0\x59\x4d\x17\x46\xd7\xe6\x9f\x5d\x0c\xed\xe9\x48\x57\x65\x5b\x1a\x5d\xdb\x7f\x75\x75\xcd\x2c\xeb\xb5\xe7\x98\x3d\xb0\xd5\x2d\x7f\x2e\x0f\xac\x3b\x81\x88\xc2\x43\xed\xf0\xd4\xb4\xde\x22\xe3\x44\xea\xde\x8d\xd1\x17\x5d\x73\xb6\x8b\xa1\x49\x5c\xd6\xd9\xb3\xd5\x42\xdc\xd1\x92\x31\xdf\x6e\xa8\x6a\x2a\x45\x38\xcb\xb4\xd9\xa7\xdb\xac\xd5\x55\xe7\x14\xdd\x15\x04\x13\xfd\xf5\x92\x77\x75\x6d\x8a\xb5\x06\x74\x4d\xe5\xce\xa6\xf1\xef\xac\xfa\xc6\x70\x51\xef\xeb\xab\x57\x33\x2e\x79\x49\xc4\x1b\xbd\xb0\x17\x26\x41\x9d\x78\xb9\xc4\x9d\xdd\xb9\x2a\x91\x5a\x62\x16\x5d\x5f\xa8\x5d\xa5\xd5\xf7\xe2\xeb\xfd\x80\x57\x9a\x73\x11\x4c\xe4\x42\xe9\xf5\x2f\x14\xeb\x16\x38\x19\x57\x91\x29\xcf\x48\xa6\x75\x64\xb5\x24\x51\x4e\xa5\xd2\xad\x0c\xa6\x5b\xda\x14\xc2\x31\x27\x52\xee\x9b\x97\x2e\x77\x93\xca\xf5\xa4\x7c\xfd\x1b\x67\x54\x36\xac\x4c\x27\x37\xd3\x61\x5c\x3d\x61\x4f\x99\x22\x17\x7b\x36\x0c\x8b\xa8\xad\x61\xeb\xdb\xa8\xc2\x6e\xa2\x72\x0e\x1d\xc8\xb3\xce\xad\xca\xb3\x2c\x86\xc5\x79\x5a\x67\x2d\x03\xb2\xdb\xaf\x45\xed\x9d\x6d\xf9\xc5\xde\x7d\x6b\x9b\xfa\xdd\x5b\xd6\xd7\x8d\xd5\x72\x3f\x05\x99\x0a\x0e\xd5\x46\xc4\xed\x62\xe7\x73\xb8\x61\x1f\x99\x4a\xc5\xf4\xd7\x5c\x52\x45\xdf\x74\xb6\xf2\xe5\x31\x5c\x6d\x72\x45\xd7\x39\xf9\x7e\xd1\x3d\x82\xaf\x13\xf1\x45\x74\x5d\x36\xd0\xa0\xe9\xed\xc1\x54\x27\x07\xb3\x2c\xc9\x47\xc0\x74\xee\xeb\x2a\x47\x72\x4a\x46\x0b\xc1\x2a\xce\xa3\x9c\xb3\x8b\x28\x59\xe1\xb7\x74\xb5\x59\xe9\x8f\xd7\x2b\xfc\x76\x17\xcd\x97\x58\xe0\xb9\x22\x42\x02\xd3\x83\xd1\x71\x3a\xba\x90\xba\x2c\x4a\x56\x94\x95\x7d\x50\x56\xeb\xc3\xe9\x58\xdd\xcc\xd9\x14\xbb\x96\x98\x65\x0d\x38\x62\xe3\x96\xb9\x61\xd9\x36\x22\x8f\x61\xed\x40\xbf\xab\x8d\xdb\xd5\x56\xfe\x9a\xb5\xb0\x3f\x77\xae\x07\xab\x6c\xb6\xcd\x79\x49\x22\x53\x23\xb2\x12\x39\x4a\x6c\xde\x0f\xdd\xa9\xe6\x91\x95\x89\xef\x57\xe6\x3c\x81\xbd\x7f\xb3\xa6\x96\x48\xa0\xe9\xfb\x4e\x84\xd6\x40\x30\xa2\xfe\xe0\x99\x9a\xb7\x91\xc8\x60\x80\xfb\x08\xf1\xd3\xba\x69\x68\x39\x53\x0c\x29\x14\x60\x12\xe7\xca\x57\x7e\xdc\xac\xeb\xf9\x59\x59\x99\x14\xb5\x3b\x2b\x17\xcc\xcf\xb7\xba\x28\x86\x78\xd4\x1c\x22\x90\x03\x65\xfd\x62\x94\x47\xfb\xea\x37\x06\x2a\x76\xaf\x6f\x3d\xae\xb7\x2e\xf7\xb7\x6d\xa1\x79\x9e\xab\xfc\xdb\x87\x08\x35\xea\x1b\x9e\x68\xab\x1a\x91\x58\xd4\xed\x37\xeb\x5a\x99\x69\x2a\xf7\x93\xb8\x64\x07\xae\x51\x9f\x25\xf8\x88\x03\xd0\x30\xc5\x82\x9a\xa6\x75\x99\x3a\x82\x95\x01\xa2\xde\x23\x5f\x3e\x18\x14\x3c\x0a\x44\xc0\x60\x10\x3c\xd7\x6a\x9c\x53\xe4\x5d\x1e\x6e\x6a\x3b\x6b\x71\x71\xeb\x86\xd4\xc2\xdc\x56\x14\x40\xd9\x79\x10\x53\x31\x90\x1b\x96\xb3\xcd\xbc\x69\x0e\x68\xac\x28\x9b\xd9\x53\xfb\xc0\x02\xce\xfd\x9f\xc6\x5c\x9e\x97\xe6\x72\xbe\xdd\xe6\x70\xe1\x4b\x6d\x4f\x30\x43\x32\x75\x7d\x69\x03\x6e\x5e\xda\xb4\x35\x8b\xd8\xb8\x18\x37\x37\xb8\x20\x3b\x0a\x6b\xcb\x57\x4a\x5f\xe7\xd5\x6f\x7d\x5e\x6d\x30\xe8\x77\x98\x8e\x6d\xed\xfb\xa1\xf5\xd0\x4d\x00\xee\x81\x28\x02\x76\x09\xbf\x05\x74\x99\x21\xc6\x7d\x2d\xbc\xf6\xe1\xda\x78\xbf\xd1\x12\x8d\x4f\x96\x8f\xbc\x57\xf5\x64\xe9\x1f\x50\x5e\x23\x91\xe0\xe9\x72\x06\x29\xe4\xd5\x28\xdc\xc2\x2a\x59\x7b\x97\xe4\x7a\x77\x98\x75\x6c\x25\xe8\xfc\x1d\xe3\x0f\x1b\x35\x37\xec\x52\xe0\xf5\x68\x2d\xf8\xdb\xab\x8f\x14\xe8\xd2\x74\xa6\xd7\x1c\xe7\xe5\x54\x63\x7a\xc1\xb8\x20\x85\xf3\x9c\x23\x9a\xfa\x52\xcd\xe1\xd3\xa0\x1c\xca\x5a\x38\x13\xd1\x9b\x07\x9f\x7a\xaa\xfd\xc1\xaa\x20\x89\x04\x93\x7e\x95\x92\x65\x19\xef\xcb\x07\x83\xfe\xa6\xc3\x97\x62\x77\xad\x77\xa9\x9b\xd8\x5e\x3e\x18\x74\xd4\x76\x0a\x8f\xab\x7f\xd8\x12\xdb\x15\xa1\x52\xaf\xc6\x8a\x7e\x94\x7c\x66\xcd\x7d\xd5\x4f\xfa\x64\xbb\x35\xd9\x6b\x62\xb5\x24\x2c\x06\x60\x57\xc9\x77\x56\x1c\xc7\x1d\x30\x97\x0a\x75\xbd\xc3\x2d\x1c\x07\x54\x42\xc2\x58\x24\x0b\x8e\x9d\xfc\x0f\x7a\x84\xed\xb6\xa5\xdc\xb8\x71\x4d\xf1\xdd\x92\x05\xd5\x31\x15\x91\xa4\x74\x00\xa8\x44\x80\x53\x92\xd4\xe2\xc8\x6d\x7a\x34\x00\x26\x62\x67\xae\x0f\x9b\xd1\xdb\x52\x33\x1d\xb0\x6f\x3f\x22\x05\xe8\x0d\x5f\xe6\x65\xba\xd6\x8c\x6a\x42\xa0\x6d\xa4\xe0\xdc\xbe\xcf\x3f\x11\xd0\xf9\xe9\x26\xac\x1a\x11\x45\xdf\x5c\x8d\xe6\x3c\x23\x2b\xaa\x21\x0f\x33\x57\x55\x4b\xee\x46\x07\x6d\xa7\x3f\xb5\xf4\x09\xee\xbb\x3f\xe3\x3a\x51\x8f\xca\x84\x0a\xc3\x21\x10\x53\x35\x43\x64\xaa\x4a\x47\xbd\x3f\x30\xa9\x3c\xaa\xf9\x2e\x34\xd2\xf5\xea\xa0\xc2\x17\x36\xcf\x97\xc6\x20\x16\x04\xc7\x50\xe3\xe3\x99\xc1\x87\x0f\x7c\x64\x66\x58\xf7\x92\x55\x02\xde\xc7\xdb\x44\x67\xe5\x28\x41\x22\xdb\xf2\x63\x0c\xcc\xac\x5f\x92\xb7\xea\x89\x20\xe1\xdb\x05\xc1\xe3\x62\xb0\xf1\xb5\x48\xc9\x2d\x89\xda\xac\xbf\x2c\xba\x33\xa9\x58\xff\x88\x59\x96\x9b\xf7\xc6\x6d\x4e\x67\x58\x66\x91\xf6\xa9\xf1\xff\xac\x71\x67\x33\xdb\x67\x36\x43\xab\x7d\x36\xc9\x3d\xdb\x77\xfb\x79\xda\x1c\xf2\x25\x20\xee\xe5\x80\xa4\xa3\xd8\x8c\x9f\x80\x1d\xa4\xf2\xcf\x54\xd2\xf3\x9c\x7c\x45\x33\xf7\xd0\xa3\x5d\x0c\x7e\x6e\x9c\x39\x22\x89\x8b\x2a\xd5\x87\x59\x2c\x60\x97\xd8\x97\x56\xde\x64\x2a\xdb\x14\xc7\xa4\xcd\x97\x01\x84\x7b\x14\xa0\x44\x8f\xcd\xd3\x6b\x9a\xd2\x9c\xaa\x2b\x73\x03\xa9\x1b\x67\xb5\x67\xef\xca\x71\xb8\xee\x3f\xc0\x3a\x61\x59\xb3\xb5\x0d\xae\x74\x98\x80\xe6\xe1\x57\xb8\x67\x39\x3b\x72\xfe\xd6\x73\xfb\x42\xe1\x12\xfb\x06\x94\x97\x3a\xa1\x6f\xa1\xd1\x6a\x67\xdc\x7c\x5f\xca\xe1\xa1\x89\xe2\xb0\x9f\xc5\xc2\x74\x64\xfc\xac\xed\xb3\x0a\x69\xc7\x33\x87\xa6\x57\xbe\xe4\x15\x00\x32\x34\x3e\x61\x8f\xc8\x09\x33\x1c\x82\x85\x47\x7a\x6c\xd6\x2b\x10\x68\xbb\x0f\x69\x70\x1a\xbf\x09\x86\x8f\x8b\x5c\xb6\xe6\x45\x5d\xe0\xb3\x2e\x97\xab\xd9\x9e\x83\xba\x41\x30\xbd\x16\xca\x22\xc5\x53\x06\xe5\x67\x44\x60\xf1\x96\x57\x80\x23\x41\x16\x82\xc8\xa5\xc9\x8f\xdf\xbe\x2b\x6a\x64\xd3\xe8\xe1\x82\x28\x5b\x31\x21\x20\x7c\xeb\x28\xa8\x22\xcb\x2a\x86\x6e\x3a\xb6\xdf\xbe\x19\x73\x5b\x25\x06\x3d\x32\x18\x54\x53\x05\xb7\x64\xea\xf5\x70\xb6\x0f\x94\x28\x68\x52\xe2\xb8\xbc\xe1\x2d\x00\x19\x42\xd9\x07\x8e\x59\x4a\x0d\x8c\xdf\xc7\x35\x8c\xb8\x7d\xd2\x8e\x0b\x5b\x48\xb6\xdb\x38\x7e\xf7\xb7\xd3\x1a\x8c\x3b\x55\xbc\xe0\xcf\x21\x2f\xae\x70\xf1\x0d\x13\xe6\xd1\xbd\x32\x89\x78\x3b\x2f\xd7\xd2\x3a\x27\x8a\x44\xf5\x51\x76\x3b\xb0\x47\x96\x3b\xa1\x24\x8f\xf4\xb7\x51\x53\x8c\xc3\x38\x10\xef\xb7\xb9\xec\xf9\x2b\x92\xea\x2f\x2c\x0e\x0a\x99\x7e\xc7\xb7\x08\xcf\xbc\x82\x2a\xbd\xd3\xc0\xbe\x9a\x65\xde\xab\x06\x3b\x18\xca\xe3\x49\xeb\xa1\x93\xe9\xa6\xb1\xdc\xa4\xb4\x3e\xaa\x32\x5d\x68\x56\xe0\x07\xad\x1f\x09\x86\x5d\x96\x90\x4d\xc9\x6c\x07\xeb\x23\xec\x7b\x65\x35\x6c\x89\x14\x54\x3b\x28\xe9\x05\xc3\xf9\xa4\x6a\xf5\xf9\x85\xa5\x4d\x8e\xcc\xdd\x3a\xd3\xc7\x0f\x4f\xe9\xe8\xe1\x64\x0c\x20\x46\x0f\x4f\xf0\x23\x7a\x82\x87\x43\xc0\xa7\x78\xf4\x30\xe4\xcd\x78\xd6\x2b\xe7\x6b\x07\xf3\x58\x2f\x5e\x1b\x9e\x12\xc8\xca\x14\xe3\x26\xc1\xc0\x0e\x36\x77\x4a\x05\x21\x95\xed\x51\x41\xc8\xae\x92\x74\xd2\x3e\x6d\x3c\x3a\xa7\x6c\xb4\xc6\xf3\xd7\x44\x1c\x9d\xd3\x5a\xfc\x5a\xb3\x0a\x61\x4a\x5c\xdd\x2a\xcf\xaa\x81\xe3\x92\x66\x6a\x89\xd4\x76\x3b\x76\x2f\x4e\x5a\x03\x03\x91\x5d\xdb\xcd\xe9\xa8\x42\x93\x2d\x11\x40\xcf\x36\x52\x3d\x5d\xad\x1d\x6f\x8a\xe2\x21\x01\xbb\x77\xd9\x1e\x0a\x12\x1b\xd0\x66\xfa\x47\x75\xf1\xe2\x21\x78\x5e\x54\x49\xe2\x1f\x7c\x46\xdd\xc2\x65\x7d\x49\xd5\x92\xb2\x49\x34\x1d\x1b\x17\x79\x3c\x24\xc3\x18\x44\xe7\x1b\x15\x5d\x62\xa9\x81\xd4\x72\x26\x7c\x78\xdf\x3e\x12\xff\xa4\x9e\x45\xa4\xb8\x37\xaf\x66\xd5\xfa\xd6\xd1\xc9\x19\x12\xde\xe9\xc9\x59\x0c\x2a\x55\x16\xf9\x46\x2e\x75\xb9\xf9\x51\x2b\x5c\x12\xf3\xb6\x8e\x48\x62\xfb\xab\x56\x4c\xe5\x7f\x0a\x9a\x21\xa3\x30\xea\x5f\xb5\x62\x4b\xe5\x28\x58\x9a\x70\xff\xb8\x05\x75\xb5\xaa\x70\xaf\xf0\x5b\x97\x6f\xfb\xfb\xc5\x42\x92\xfa\x7c\x83\x57\x18\x2d\x5c\x49\x99\xf3\xde\x78\x40\x57\xf8\x6d\x22\x46\x0a\x8e\x6b\xf8\x7b\x63\xd5\x88\x17\x0a\x0b\x45\xd9\xc5\x53\x96\x91\xb7\x1a\xfc\xb6\xef\xb5\xc9\x58\xc7\x9b\xd3\x43\xfe\x62\x16\x4e\xb7\x6c\xf9\xdc\x8a\xc3\x27\xca\x0e\xd6\xc5\x87\x1c\x36\xa6\x64\xe6\x1a\x54\x01\x37\xbb\xe1\x16\x7d\x98\xfa\x15\x43\xb5\x6b\x63\xfe\x1c\xb6\x76\xb0\x72\x88\xc0\x70\xbb\xdb\x3f\x0a\xb2\xbd\x7e\x3b\x11\xf0\xaa\x6e\x73\x37\xa7\xb2\xa0\x6f\x49\x36\xba\xd0\x24\x78\x03\x37\xd2\x0c\xeb\x16\x27\x2d\x46\xeb\xb7\x7c\xd1\x29\x14\x7f\x09\x01\xf5\x1f\xff\xe8\xf6\x09\x0c\xe4\xe1\x6f\xe6\x9c\xd9\x10\x43\xe3\x8c\x7f\x17\x66\x23\xa0\x28\x69\xa1\x26\x41\x4b\x81\x50\xd4\x00\x61\xf5\x16\x68\xca\x87\x0b\x2a\x15\x2d\x27\x08\x76\xeb\xae\x52\xec\x36\x7b\x93\xf8\x92\xf0\xd0\xe1\xa8\x5c\x4d\x47\xae\xc9\x18\x80\xed\xf6\x18\x3c\x3e\xae\xf6\xd7\xba\x17\xeb\x06\x17\x41\x76\x3f\x53\xf3\x45\x77\x5d\x67\x0d\xc6\xfc\x02\xee\x8e\x5c\x00\x89\xea\x84\xa4\xc2\x29\x2a\x60\x57\xb6\xaa\xae\xfd\x09\xab\xc2\xdc\xc6\x04\x9a\xe4\x6d\xa5\xbd\xe9\xb1\x6d\x92\x6e\x6e\x90\x1f\x06\x2e\xc4\xb6\x2b\xcb\x27\x93\xe2\x0d\xd0\x3a\xb0\x70\x63\xfb\x9b\x13\x9a\x27\xe2\x48\x82\x4f\x78\x8f\x0d\x06\xc9\x66\x88\xb8\xc5\x4f\x8e\xf0\x88\x36\xf8\x64\x81\xe0\x0d\xcc\x81\xe1\x98\xe2\x46\xc6\x53\xd3\x84\xc2\xad\x51\x6d\xde\xc1\xfc\xda\xdb\xff\xd1\x31\x3e\xd1\x26\xc1\x3a\x25\x80\xc7\xcb\x49\x32\x46\x08\x89\xed\x96\x3c\x16\x60\x30\x28\x85\xb3\x39\x19\x3d\x8c\x40\x48\x48\x20\xd7\x6f\x27\xe4\xb7\xec\x93\xb6\x5a\xdb\x31\xbc\x9a\x54\xe8\x87\x81\x4f\x5a\x56\x45\x2b\x19\x2d\xf8\xa8\x6c\x22\xf3\xc2\x70\xed\xa2\x0d\x01\xad\x4a\x8c\x6d\x1d\x65\x64\x4d\x58\x26\x23\xee\x4e\xbc\xa9\x90\x2a\xf2\x5a\x62\xc4\x17\xd1\x1b\x4f\xa0\x99\x5a\x26\xb6\x6f\x10\xfb\x24\xa2\x15\xa4\xf5\xe8\xc2\xa0\xad\x48\x8f\xe2\xdf\x36\xa9\x92\xc7\xbe\xcd\x0d\x8f\xcb\x2b\x35\x02\x89\xc7\xe3\x53\x31\x39\x86\x25\x29\xaa\x23\xd1\x8a\x9b\x31\xb8\x81\xa9\xcb\x25\xc9\x17\x23\x33\xbb\x43\xb8\xfa\x81\xba\x67\xcb\x01\x4f\x78\xd2\x5a\x7a\x07\x5a\x98\x38\x54\xde\x9e\xf1\x64\xf9\x35\x53\x82\x12\x89\xa6\x77\xca\x53\xe4\xf9\x3b\x83\xec\x76\xfc\x9d\x1d\xca\xdf\xd9\x7e\x06\x6e\x1f\x56\x27\x83\x41\xe1\x02\x30\x8b\xeb\x3d\x2f\x46\x22\xe8\x25\x0e\x44\x74\x10\x40\x5e\xa3\x25\x28\xd0\xf8\x44\x3c\x52\x3e\xe5\x93\xdb\xdb\x7a\x09\x9e\xa8\x44\x80\x62\x2f\xa7\x6f\x1f\x8f\xcb\x23\x56\x9f\x32\x6b\x57\x01\xb6\x65\xa3\xdc\x0d\xd8\xc3\x88\xbe\x48\x60\x05\x19\x1a\x43\x8a\xc6\x90\x23\x35\x3a\x3e\xe1\x8f\xd1\x78\x30\xe8\x27\xf4\x71\xe2\xd8\x4d\x31\x21\x0e\x82\x19\x5d\x81\x13\x3e\x1a\x01\xf6\x48\x38\xc8\x07\x83\x84\x21\xff\x87\xbd\x7c\x57\x56\x2e\xde\x67\x1a\xb2\xea\xac\x6b\x22\xb8\xfa\x70\x57\x9d\xe8\x7a\x5e\x77\x7e\x6c\x5c\x65\x5e\xdd\x26\xa0\xda\xe7\x61\x32\x4b\x1d\x8c\x53\x65\x71\x7a\xb3\x80\xab\x84\xce\x9e\xb5\x80\x91\x50\x33\x76\x15\x5c\x8f\xdf\x06\x16\x98\x7f\x15\xbb\xa0\x37\x1e\x40\xdc\x23\x8f\x11\x1d\x0c\xcc\x79\x64\xc9\xfa\x41\x42\x3d\xef\xc7\x50\xc2\x0d\xcc\xe1\xbc\x1d\x99\xde\x24\x5f\xa0\x31\xcc\x90\x39\xf8\x27\x8f\xe6\xa0\x32\x85\x5a\x93\x29\x99\x19\xba\xd1\xa4\x34\x3f\x4d\x30\x1a\x43\x89\xc6\x60\x92\x60\x34\x1f\x1d\xc3\x0c\x25\xac\x7d\xac\x29\x9e\x85\x9b\x61\xc8\xec\x14\xe0\x02\x31\x47\x30\x26\xe4\xbf\xa4\x17\x88\x87\x43\x00\x73\x84\x4f\xf2\x47\x64\x78\x7c\x92\xfb\x23\xf7\x65\x9b\x2a\x90\x03\xb8\x46\x4d\x4e\x9d\x03\xad\x0e\xac\x87\xd9\x63\x7e\x9a\x54\xfb\x1f\x16\xe3\x6e\xec\xf4\xe1\x02\x2d\xc1\x64\x83\x32\xb8\x7c\x6c\x53\x9f\x2c\x8b\xf7\xca\x1b\xb3\xc9\x67\xe6\x09\xb8\xe2\x0c\x3a\x59\xc0\x35\xdc\x40\x09\x60\x86\x36\x43\x7f\xd2\x1f\xd5\x48\xbd\x8d\x20\x1a\xea\x9f\x5b\x77\xc8\xa1\xc5\x6e\x75\xfd\x35\xb0\x39\x1a\xf7\x72\x44\x1e\x8f\x07\x03\xf2\x48\x9e\x56\xb7\x28\x09\x77\xe8\xa4\xdc\xe5\x73\x44\x4e\xe6\x8f\xe4\xc9\xdc\x32\xaa\x0d\x42\x28\xa1\xe5\x72\xf9\xe6\xf3\x60\x87\x83\xf4\x6a\xbb\x4d\x36\x88\xa6\x57\xa3\x1c\x8a\xc1\xa0\x6f\xf3\x38\x7a\xcc\x01\x00\x37\x8f\x14\xc0\xc3\x61\x8f\xe4\x92\x98\x84\x16\x02\x9c\x0b\x82\x5f\xf7\x04\xea\x1f\x43\x35\x2c\x65\x2a\x87\x45\xb3\xe1\xb1\x5e\x5c\x8f\x23\x5c\xc5\x51\x9b\xf2\x53\xa6\xa9\xac\xb0\x34\x7f\x1c\x8f\x10\x62\x5a\x05\x32\x2f\xcb\xd4\x37\x03\x83\xda\x36\x38\x78\xa7\x0b\x2f\xed\x5a\xf0\x59\x05\xf4\x20\x5d\xde\x6c\x29\x34\x2e\x99\xae\x65\xe8\x6a\x30\xb8\x0d\xf3\x81\x07\x9b\x04\xc5\x3d\x27\xcf\x38\x9c\xaf\xa0\x60\x1c\x05\x21\x61\xc4\xa1\x44\xf4\xe4\xc4\xe2\x76\x83\xe4\x11\xd6\x1c\x80\x69\xc2\xc0\xe5\x78\x15\x5d\x68\x03\x20\x1f\x1d\x97\x79\x6b\xb0\xd3\xb1\xab\x28\xc3\x00\xce\x51\x5e\xa0\xcd\xf6\x8a\x61\x22\xd1\x3c\xbd\x1a\xe6\x9e\x0c\x1e\xbb\x24\x8a\x27\xf2\xb1\x39\xf8\xd0\x75\x46\xc7\x7d\x34\x1a\x61\x70\x02\x24\x4a\xe6\x28\x69\x76\x5d\x21\xcf\xa2\xb3\xe2\x7e\xf3\xce\x3c\x8b\x8b\x90\xf4\x7d\x3f\x42\xe4\x44\x93\x28\xbc\x5b\x87\xd8\x5f\xb6\x1b\x1d\x57\x54\x37\xc5\x05\xa5\x47\x38\xc3\x6b\x65\x1e\xf0\x59\xaf\x73\x3a\x6f\xe4\x66\xfb\x00\xf9\xf0\xc3\x58\x88\xc2\x45\xcd\xd7\xa4\x72\x22\x16\xdc\xf6\xb6\xf5\x9f\xbf\xf8\xf3\x0f\xe9\x0f\x36\xd8\x24\x49\x5a\x1d\x87\x4e\xdf\x7e\xb9\x24\xd1\x4b\x3d\xb9\xc8\x4d\xce\x7a\xee\xa8\xf7\x23\x46\x7f\xd3\x83\xfd\x2d\x5a\x70\x11\xe1\x48\xda\x9b\xd9\x91\xe2\x26\x54\x79\x4d\x18\xc9\x62\x7b\x6e\xb7\x20\x6a\xbe\xfc\x68\x40\x99\xd1\xda\xa1\x32\x45\x05\x58\xf3\x9c\x4b\xf2\xd1\xc0\x32\xa3\xb5\x83\x65\x8a\x1c\x54\xdd\x2f\x7b\x59\x3a\x3b\xe7\x5c\x49\x25\xf0\xfa\x48\xf0\x8d\x32\x91\x83\xa1\x71\x60\x2b\xb9\xa2\x90\x16\x47\xfa\x1b\x19\xad\xe8\x5b\x63\x2c\xd4\xea\x6d\xd4\x92\x30\xa5\xab\x92\xac\xb5\x66\x4e\xcf\x8f\xe6\x9c\x29\x4c\x19\x11\x23\x13\xb8\xd2\x34\x2c\xb4\x26\xf5\x61\x62\xc7\xb8\x6e\x64\xe0\x9a\x54\xf6\x57\x19\x7d\xd5\x2b\x0f\x1a\xc6\x27\xf4\x11\xf3\xe7\x45\xd4\x2b\x0b\x18\xb1\x29\x9d\xf5\x82\x9e\xe2\x21\x0e\x42\xc7\x76\x3b\xa7\xd8\x69\xbe\x5c\x1a\x45\xdc\x66\x69\x72\x7d\xd8\x78\x33\x96\xe6\x9c\xbf\xde\xac\x81\xbd\x73\x2b\x4f\x65\x2a\x88\xa6\xf8\x84\x1b\xfd\x27\xa8\xf2\x0d\xd6\x26\xc9\x15\x28\x47\x3d\xc7\x92\xce\x63\x00\xe9\x76\x9b\x50\x84\xfd\xc6\x2d\x01\x31\xe9\xbd\x58\x71\xda\x63\x06\x81\x14\x80\x16\xa6\x53\x12\x83\x23\xa8\x36\x62\x28\x0e\xf2\xcc\x9f\x23\x5f\xf3\xa3\xde\x23\x8d\x1d\x10\x93\x78\x28\x7a\xa4\x98\x5b\xc2\x82\x15\x84\xc4\xc5\xc3\x24\xcc\x81\x1e\xc3\xa2\x9d\xfd\x3b\xa8\x63\xb1\x19\x1b\xa2\x0b\xbe\x6a\x1a\x15\x3c\xcf\xcd\x93\xd0\xe6\x5d\xdd\x3d\x48\x73\x83\x34\x51\xb6\x16\xfc\x0d\xcd\x4c\x66\x74\xca\x5e\x93\x6c\x44\xd9\x88\xeb\x4d\xf2\xb0\xa5\xca\x05\xe7\x17\x39\x39\xb0\x7c\x74\x4e\xb0\x30\xc9\x07\x0f\xa9\x36\x7a\xd3\xd6\xe1\x02\xcf\xc9\x39\xe7\xaf\x47\x73\xce\x18\x99\xab\x7d\x55\x6a\x50\xb5\x4b\xa9\x46\x73\x75\x49\x95\x22\xc2\xb6\x3e\x6e\x03\x96\xaa\xe5\xe6\xbc\x7b\xce\xf8\x9f\x1b\x41\x46\x38\xeb\xae\xa1\x09\x6d\x4d\xf6\x4c\x81\x64\x2b\x9e\xf1\x46\x85\x2a\x35\x37\x3f\xaf\xf9\x7a\xb3\x6e\x7e\xa6\x0b\x81\x57\x2d\xb9\x37\xa1\xd3\xaf\xbd\x79\x04\x17\x30\x83\x4b\xb8\x86\xab\x0f\x13\x6f\x19\xd0\x7e\x8d\xb6\xe1\x32\xdc\x09\x65\x2d\xbb\x6b\x3d\x5e\x26\x4d\x82\x54\x07\xb5\xab\x51\xa9\xb8\x7d\xa3\x82\x74\xd9\x9d\xdb\x1a\x7a\xa6\x07\x35\x6f\x12\x39\xbf\x5d\x3b\x3f\x53\x7c\x50\x33\x47\xf1\x31\xdc\x1c\x36\xb9\x2a\xfd\xe7\x07\x35\x6a\x6c\x8a\xf9\x41\xcd\xea\x3b\x65\x71\x50\xab\xfa\xf6\xc9\xf6\xb5\x72\x6c\xa1\x2a\x5b\xe5\xbe\x16\x9e\x76\xdd\xbe\x82\xab\x43\x2a\xbb\xbd\xb9\x0e\x64\x6e\x83\x3b\xcf\xf9\x6a\x8d\xd5\xd1\x05\x51\x56\x0f\x11\xa3\x22\x23\xc5\xcf\x11\x19\x1d\xb9\x07\xfc\x2d\x2c\x31\xd8\x6e\x89\x93\xec\xfe\xdb\x64\x85\x29\x8b\x0f\x9b\x4a\x4e\xcf\x7f\xae\x59\x9c\x59\x10\x9e\xd1\xb9\xe0\x39\x3d\xd7\xf3\xb0\x5f\x3a\x00\x77\x61\xbc\x76\x01\xed\x2a\x8f\xcc\x7d\xe9\x25\xcf\xb3\xc3\x1f\x91\xfd\x00\x81\xb5\xf3\x1c\x4b\xf9\x1d\x5e\x11\x39\x99\xc6\x9d\xf0\xcd\xaa\xc1\x4d\x7e\x62\x6c\x41\x2f\x36\xe2\x63\x58\x67\xd7\x95\x07\x36\xca\x23\x9f\x1d\x49\x0b\x30\xce\x73\xd2\x1e\xcb\xe0\xa2\xee\xf9\x6a\xbd\x51\x24\x4b\x9a\x21\x92\xc6\xeb\x8d\x82\xdf\xdb\xed\x3e\xf3\xc4\x5d\xe9\xc3\xf9\x25\xbe\x92\xd1\x12\xbf\x21\x91\x6d\x16\x83\x5d\xe2\x4f\x87\xe2\x42\xf8\xa6\xf1\xb0\x0c\x25\x63\x7a\x83\x83\x61\x9c\xc6\x43\x02\x29\x12\x49\x25\xff\x51\x42\xdd\xdd\x88\xe2\x52\x12\x37\xbe\x8e\xe2\x52\xbf\x77\x33\xc7\x1e\xbe\x20\x2b\xfd\xa9\x4a\xe7\x38\xcf\x8d\xc3\x03\x4c\x54\xaf\x99\x01\xf5\xed\x9a\xcc\x15\xc9\xa2\xca\xca\x45\x06\xd9\x36\x60\xc4\x99\x50\x76\x75\x32\x63\x5e\xf9\x69\x44\x1a\xf2\x2c\x6a\xce\xc5\x67\x1d\x8a\xb8\xb1\x03\xcb\x05\xa9\x26\x95\x51\x88\xb8\x7c\xa4\x5f\x86\xa3\x57\x9e\x11\xb8\x6e\xd9\x3e\xda\x56\xc2\x52\x7e\xec\xb7\x01\xcc\xd9\xcd\x76\x3b\xe7\x4c\xf2\x9c\xd8\xb4\xab\xe6\x08\xae\x15\xc0\xba\x31\xf7\xe1\x20\x5d\x62\xf9\xdc\x08\x04\x87\xbe\xf6\xe0\x9d\xc1\xa0\x51\xf3\xb4\xf1\x25\x51\x60\xe2\xc5\x8b\xb8\x32\xc9\x68\x95\x59\x40\x2f\x71\x1a\x5e\xb7\xb0\xfb\x40\xba\x9d\x56\xfe\x2a\x05\x96\x6e\x13\x8e\x50\x29\xd0\x03\x55\xac\xba\x3d\x53\xa9\xd4\x3b\xad\xfd\x6d\xa6\xa1\x6b\x09\x22\x79\xfe\x86\xd4\x26\xdd\xf2\xb5\x68\xd1\x3d\x87\xb3\xb3\x62\x49\xcf\xce\x5a\xc6\x4b\x8b\xe2\x46\x61\x39\xb1\x1b\x67\x54\x4c\xe5\x8e\x10\xb5\x83\xe2\x60\xb8\x20\xea\xfb\x4b\x56\x59\xc5\x66\xda\x0d\x53\xe3\xb4\xfa\x67\x42\x2a\xbd\x76\x90\x7c\xce\xb1\x56\x9c\xa9\xa2\x38\xa7\xff\xfc\x28\x32\x2c\xec\xd3\xdd\x32\x60\xdf\x72\x9c\xb9\xdc\xce\xe9\x93\x50\xe1\xaa\xc6\x3e\xa7\x01\xa4\x7a\x1b\xb7\x3a\x00\x82\x69\x59\x25\xe9\x57\x35\x3f\x0b\xf2\xd3\x03\xe7\x69\x32\x99\x8f\xcc\xfb\xf0\x23\x77\xb5\xf4\x63\x29\x21\x35\x1f\x6b\x6b\x18\xb0\xb9\xc6\xf5\x27\x72\xe5\x8e\x69\x5e\x93\x2b\xb9\x83\x06\xe6\xf6\x0b\x0a\x36\xb8\x5d\xe4\xd0\x9d\x6f\x16\xed\xa1\x40\xd7\x3b\x77\x47\xc1\x1f\x6b\x9a\xab\x0a\x3e\xb2\x66\xca\xcc\xbb\x5c\x65\xfe\x4e\x3a\x8c\x51\x32\xfd\x69\xf0\x6f\xb3\x4f\x40\x0c\x52\xf2\x96\xcc\x13\x02\x7a\x7c\x30\x48\xc4\x94\xce\x10\x37\x8f\xe6\x14\xb1\xd2\x6d\x9a\x91\x41\xb0\x56\xcf\x47\x34\xd3\xfa\xfa\x07\x26\xa1\xc0\xc7\x79\x5d\x8c\xd6\x12\xa5\xec\xad\x1a\x0d\xd9\x24\x1e\x92\x1d\xcc\x48\x7b\x7d\xba\x48\xfa\xc4\x1f\x46\x18\x17\x9e\xcf\x03\x6e\x93\x92\x1e\xfd\x94\x84\x7d\x81\x24\xfd\x04\x1c\x95\x87\xb4\xa7\x6a\xfa\x70\x36\xd1\xed\x76\x1d\xe4\x77\x17\xc2\x6b\xbb\xd6\x18\x91\xed\xd6\xdc\x23\xad\x86\xf2\x36\x9f\x4b\xb1\xd7\xb9\xd3\x39\x5e\x11\x3d\xdb\x44\x54\xf5\xae\xe2\x9a\x34\xb3\x93\x57\x09\x07\x83\x81\x4a\xc2\x1a\x02\x80\x46\x56\xf9\x07\x3f\x4a\x12\xf9\x4e\xb3\xe8\x0d\x11\x26\xa1\x6a\xc4\x17\xd1\x46\xe4\xd1\x1a\x0b\xbc\x92\x69\x94\x7c\x45\x33\x93\x37\x66\x41\x59\x16\xc5\x0f\x86\x74\xf8\x20\xd6\xaa\x95\x59\x5a\x13\xa5\x9b\xd1\xac\x28\x15\xc3\x07\x71\xfa\xc0\x02\x64\x82\x03\x1a\xc3\x3e\xa3\x52\x52\x76\x51\x0e\x32\x29\xda\x45\xc9\xb7\x9c\xbf\xb6\xda\xdb\xa4\x1c\xc3\xa9\x6f\x76\xe8\xf4\x41\x41\xc1\xba\xff\x53\xc2\xe6\x3c\x23\x3f\x3e\x7f\x5a\x18\x08\x09\x07\x13\xab\x75\xbe\x7b\xe0\xff\x21\x1b\x9e\x9f\xff\xdd\xee\x5c\xaf\x6f\x42\xbf\xa5\x4d\xa8\xb3\xcf\x07\xf0\x24\x71\xc1\xfb\x36\x7b\xbf\x2d\x4b\x65\x6e\x2e\xfc\x81\x74\xc3\xe8\x3f\xfc\x1d\x0f\x7b\x41\x06\xe7\x3f\xb6\x77\xe1\x8b\x6d\xd9\x69\xcb\x37\xdf\xed\x64\x3a\xbb\xa1\xe7\x96\x0b\x37\x76\x13\x55\xe7\x10\xe4\x1d\x7d\x3c\x3a\x6e\xbe\x50\xf0\xdc\xbf\x49\xb0\xf6\xd1\xdd\x32\x9a\x63\xa6\xe9\x06\xe7\xd2\x9d\x04\xd9\xa1\x27\xd1\x03\xa3\xb0\x3f\x88\x83\x4b\x3b\x8a\x5b\x2a\xef\xb8\xa7\x53\xc0\xe1\x4f\xdf\x1b\xf3\xf0\x87\x9b\xfc\xfc\xef\xc5\xee\x78\x92\x4c\x67\xc5\xce\x26\xed\x33\xb5\xcc\x41\xd8\x00\x09\x6e\x33\x77\x4e\x09\x34\x37\x8a\x00\x64\xdd\x8d\x3a\xf4\x57\x1b\x2d\xdb\x1f\x83\x9d\xed\x52\x25\x0c\x0c\x06\x65\xc7\xcc\x76\xcc\xd3\x15\x5e\x57\x3b\x2d\xe0\xb4\x4f\x0f\x20\x73\x0c\xe4\xfe\x18\x18\xbf\x42\x3b\x3f\x12\x98\x65\x7c\x35\xda\x88\x7c\x24\xf1\xe2\x63\x7b\x47\xca\x20\xa8\xf8\xc9\x17\x5f\x7e\xf5\xf5\x37\xff\xf9\xc7\xa7\xff\xf5\xa7\x6f\x9f\x7d\xf7\xfd\x0f\xff\xfd\xfc\xc5\xcb\x1f\xff\xfc\x97\xff\xf9\xeb\xff\xe2\xf3\x79\x46\x16\x17\x4b\xfa\xf7\xd7\xf9\x8a\xf1\xf5\x3f\x84\x54\x9b\x37\x97\x6f\xaf\xfe\x39\x3e\x7e\xf8\xe9\xef\x3e\xfb\xfc\xf7\x7f\xf8\xf7\x18\x0a\x14\xc7\xd5\x2b\x79\x43\xa4\xd2\xf9\x12\x8b\x27\x2a\x3c\x73\x36\x3f\xed\xac\x13\xf0\x89\x97\x8c\x41\xf4\x5d\x07\xe3\xf6\x3b\x6f\xe4\x19\xcb\xc7\x44\xd5\xcd\x16\x3d\x69\x31\xd7\xbf\xd2\x43\x52\x7b\xfe\xb4\x28\x19\xa2\x35\x78\xcf\xaf\x22\x1c\xc9\xcd\xb9\xf1\x83\x84\x0f\x83\xa4\xf1\x1e\xed\x49\x2a\xac\xc8\x68\x85\xe7\x4b\xca\x3e\x18\xb1\x38\x99\x6b\x6f\x61\x95\xf1\x11\x86\x2b\x41\x11\x66\x4c\xa9\x44\x1d\x96\x6f\x76\x38\xed\xf5\x85\x06\xb6\xe7\xb9\x91\x01\x5d\x22\xe2\x7e\xc0\x7e\xf0\xb5\xc9\x92\x4c\xdb\x67\x76\x9e\x11\x23\x24\x93\x91\xad\x6a\xd3\x74\x96\x6d\x51\xd0\xcd\x54\xcd\xc2\x6e\x5b\x1e\xcd\x72\xd2\xcb\x01\x68\xbb\xf4\x37\x37\xe7\x1b\x21\x08\x53\x66\xe4\xef\xf0\x8a\x14\xf1\xf1\x72\x73\x5e\x24\x5b\x92\xe8\xda\xe5\x38\xb6\x67\x0e\x88\xb8\xe7\xa6\x5e\x0a\xcc\x6c\xd4\x81\xdc\x6e\xa7\x33\x88\x11\xb1\xcf\x4d\xd5\x0a\xcc\x09\xa7\x8d\xcf\xe3\xc5\xe9\xe6\x63\x66\xb7\x0c\xe2\x5a\x2b\x34\xa3\xd6\x7b\x2d\x5d\x2c\x50\x40\x91\x2e\x18\x08\x7a\xc2\xcd\x9e\x70\xd1\x53\x0d\x8a\x66\x47\x3b\x77\x62\x9a\xbe\xf8\xe1\xdb\x27\x2f\x51\xfc\x49\x5c\x3f\x38\xf5\x27\x80\x56\x31\x68\xe2\xd5\x65\x99\x8b\xca\x51\xec\x32\x09\x70\xdd\xce\x69\x13\x81\x08\xd4\x1b\xa9\x8c\xf7\x44\x96\xe0\x4e\xc5\x44\x9c\x4e\xc5\xcc\x08\x3f\x41\xb2\xcd\x3c\x3c\xb3\x0f\x6f\xd3\x91\xa9\x98\x21\x05\xc9\x0e\xc0\x6b\x47\xb4\x62\x67\x4d\x7c\x1f\xbd\xa4\xc2\x11\xfa\xc8\x91\x6e\x13\x7e\xc9\x57\x44\x2d\x35\x65\x5c\x12\xa6\x6c\x22\xad\x18\xf4\x18\x52\x65\xe0\x57\x81\x12\x5c\x9e\x39\xf9\x84\x42\xe6\xe1\x4f\x93\x7d\x5b\x0c\x06\x6c\x30\xe0\xc0\x9f\x56\x17\xa8\x51\x05\x6a\x2c\xd5\x4d\xa2\x78\x98\x70\x2d\x5c\xea\x74\x07\x86\x71\xb4\x10\x5c\x6b\x56\x43\x61\x5c\x63\xfa\x17\x6b\xb8\xd5\x30\xd8\xe9\x71\xa7\x6a\x86\xe8\x8e\xa5\xe5\x00\x2f\x79\x9b\xe9\x5d\x57\x7c\xc2\xfa\x36\xc6\x3b\x8c\xdf\xbd\xb6\x3b\x6a\x72\xdd\x2e\xdd\x9d\x5e\xff\xa8\xb2\x4d\xc3\x89\x4c\x1e\x38\x87\x5d\x7d\x76\xc3\xf8\x41\xf4\x38\xde\xc1\x70\xf8\xba\x09\x10\xa7\x26\xd1\x94\x97\x1e\x63\x50\x09\x21\xad\xf7\x18\x3c\x11\xe4\x34\xa7\x31\x1c\x1d\x83\x1e\x41\xe3\xc2\xf2\x3a\x0d\xde\x04\x1a\x92\x09\x49\xf5\x9e\x36\xb3\x4a\x8e\x2d\xfd\x8b\x0a\x23\x21\x33\xaf\xab\xd4\x47\xb3\x4f\x28\x34\x49\xe8\x47\xf6\x9a\xf1\x4b\x16\xd9\xd9\x47\x7f\x33\x5c\xfe\x6f\x9e\xb7\x5c\xd2\x3c\x2f\x37\x87\x8d\x61\x0b\x78\x98\x53\x3a\x1b\x1c\xc8\xc5\x86\x65\x34\xab\x35\xde\xc1\x3a\x7f\x68\xbd\x1c\x5e\x22\xd9\xde\xdc\x0f\xf6\xa7\x4b\x1c\x50\x63\x0e\x37\xf6\x52\x01\xc5\x77\x12\xd4\x68\xcf\x36\x10\x9e\xcd\x22\x7b\xcb\x75\xbb\xa5\x70\x81\x54\xaa\xf8\x76\x4b\x7b\x63\x84\xd0\xa2\x50\x53\xe3\x7e\x0c\x4e\x13\x86\x16\x6e\x99\x92\x63\x00\x37\xa8\x3f\x06\x13\xfd\x51\xff\x3c\x06\xd0\x44\xac\xd6\x9a\x70\x34\x0f\x9a\xe4\xb6\x09\x47\x73\xfd\xf3\x18\x98\xa7\x51\x7c\x03\x0a\x4c\x86\xea\xe0\x4f\x69\xc2\xa4\x13\x8e\x78\x40\x1d\x12\x8e\x01\x80\xd8\x16\x31\xc4\x82\x22\x6c\x8a\xac\xde\xaa\xa7\x9b\x34\x6f\x77\x50\xa4\xe0\x1c\x91\x9e\xeb\x7a\x8e\x48\x57\xd7\x14\xa9\x46\xd7\x14\x21\xc4\xec\x8b\x2d\x73\x84\x10\xef\x23\x94\x0f\x06\x22\x60\xe0\x06\xfd\xc0\x5d\x5d\xbf\x61\x15\x19\x57\x74\x71\xd5\x45\x07\x95\x75\xdd\xdb\xbe\x9d\x02\x6c\x69\x63\xf5\xcb\x34\xed\x2d\xa2\x74\x4a\x66\x46\x54\xda\x48\xf5\x32\xd6\xe7\x11\x37\xf1\x3e\x6c\x4a\x67\xc1\x5c\xad\xef\xb6\x03\xb8\x7a\xbf\xfb\x86\x6b\x2f\xb2\x3a\xbe\x9e\x0b\x5f\x2c\x26\x9d\x17\x75\x9a\xed\x3c\x05\x29\xd0\x53\xa7\xc2\xe7\x19\x68\x54\xd3\x4c\x6a\x4e\x12\x01\x8f\xc1\xa4\x03\x66\xe3\xb7\x30\xe9\x31\x1a\x29\x97\x43\xee\xe4\x98\x93\x45\x4d\x71\xaf\x1a\x1e\x3b\x89\x5b\xcb\x65\x6f\x70\xc7\x1c\x1b\xda\xb0\xa5\x49\x0a\x92\x99\x04\x21\x9a\xeb\x43\x25\xae\x5e\x7c\x90\x11\x77\x26\x2b\xaf\x6a\x41\x25\x0d\x59\x2d\x94\xe8\xba\x8d\x7d\x34\x52\x4d\x4f\xc7\x33\x28\x2b\xc9\xa5\xe1\x06\x59\xf5\x44\x82\x9e\x48\x36\x1d\xe9\x27\xec\x64\x36\x53\x35\xeb\x61\x6d\xd5\x59\xd9\x5d\x15\x7f\x02\x58\x9d\xbb\xe7\xe6\x68\x32\x51\x54\x70\xd5\x92\x04\xbb\x60\xf9\xb6\x82\x67\xf9\xd6\xfd\xe1\xa4\x9f\x97\x9d\x09\x68\x88\x6f\xa5\x45\x6e\x70\x7d\xa6\x5d\xe1\xdf\x6c\x68\x36\xba\x20\xcc\xbe\x5c\xf1\xa1\x0f\x3b\xdd\x40\x2d\x09\x37\x8a\x17\x1d\x41\x7a\x41\xd4\x4b\xba\x22\x45\xbc\x76\xfc\xd6\xfd\x6f\x64\xfe\xf3\x3b\xfd\x9f\x2b\xff\xa7\xff\x5f\x5c\x24\xea\x3e\x9a\xbe\xbd\x9a\x1d\x5d\xc0\x96\x45\x4a\xc8\xf0\xf8\xf3\x4f\x2a\x16\x22\xf8\xed\xf1\xe7\xdb\x71\xe1\x06\x40\x95\xe8\xe5\xe3\xcf\x01\x4c\xe2\xb7\x5a\x59\x50\xa7\x62\xf2\xe9\x40\x6c\xff\x00\x4a\x9c\x1f\x7f\xee\x56\x75\x6f\x28\x66\xfd\x3c\x41\xb6\x85\x92\xb5\x1f\x3c\x1c\xe6\xbe\x77\xb5\xc2\x21\x82\x3f\x46\xd5\x08\xa8\xbd\xb5\x46\x9a\x38\xcf\xf1\xfc\xf5\x81\xd5\x8b\x70\xc2\xa2\x76\x13\x3e\x79\x64\x72\x07\xd9\xd8\x06\x79\x43\xd5\x4b\x9c\xbf\x2e\x82\x53\x5a\x43\x47\x7d\x1c\xd6\x07\x31\xc2\xab\x89\xfa\x82\x08\xa4\x6a\x01\xeb\x2a\xe0\x95\x82\x20\xdf\xa0\xec\x2a\xc0\xfb\x82\x5c\x4c\x6c\xad\x3c\xda\x14\xa1\x31\x3e\xda\xb6\x9d\x7e\xea\x5b\xf9\x26\x9f\xfd\x0d\x87\x26\x2d\xc7\xd4\xad\xf1\x11\x1d\x8b\xf4\xee\x0b\xf4\x97\x27\xcf\xbf\x7b\xfa\xdd\x7f\x9e\xfd\xe9\xeb\xbf\x22\x92\x7e\xf9\xe3\xf3\xe7\x5f\x7f\xf7\xf2\xec\xf9\xd7\xff\xfd\xe3\xd7\x2f\x5e\x9a\xaf\xee\x41\x1e\x6b\x09\xb5\x57\x89\xcf\xce\x0c\xd0\x67\x82\xfc\x63\x43\xa4\x8a\xa1\x44\xd5\xae\x83\x1a\x19\x15\x64\xae\xce\x2e\xb1\x60\x1a\x05\x3d\x7b\xcf\xc1\xfa\x64\x9e\x69\xd4\xfb\xfb\x86\x77\x4d\xf1\x22\xc8\x8a\x2b\xf2\x34\xfb\x4f\xbf\x4a\xa8\xfd\xf3\x76\x5b\x50\xd5\x0e\x56\x63\xf5\x35\x8a\x37\x96\xa1\xd9\xab\x09\xfe\xb2\x96\xed\x04\x2e\x3c\x56\x0e\x0d\x53\xcf\xe0\x12\x5c\xcf\x07\x83\x3c\x35\x01\xe6\x2e\xce\x63\x8d\xf2\x26\x58\xa9\xe7\xdf\x09\xe8\x2d\x1a\x77\xcf\x28\x2a\x08\x3b\x0d\xce\x5f\x12\x92\xbe\x26\x57\xf6\x81\x63\x84\x50\x61\xd3\xb6\x3a\x48\x8b\xad\x55\x60\x7a\x23\xf2\x09\x81\xaf\xc9\x95\x9c\xa8\x1d\xb0\x0f\x15\x27\x60\x97\x90\x94\x91\x4b\x93\x5f\x09\x2a\xd0\xcb\xf9\x1c\xe7\x2f\x14\x17\xf8\x82\x18\xb8\xdf\x90\xa7\x8a\xac\xdc\xd8\xb0\x48\x46\x56\x89\x91\xc9\x12\xee\x18\xb8\x86\x68\x15\x80\x5f\x02\xbf\xae\xf5\x2d\x89\x32\x1d\x63\xb8\x02\xb0\x6b\x54\x09\x60\x9e\xea\x65\x7b\x6e\x30\x98\x10\xb8\x82\x1b\xfd\xcd\xa7\x6c\xfb\x81\xe7\xb9\x95\xda\x7a\xe4\x37\xe8\x92\xb2\x8c\x5f\xa6\x9c\x59\xab\x6b\xc3\x34\xbb\xd7\x18\x6b\x2d\x08\x59\x56\x4b\xbc\xcc\x9b\xc1\xe0\x4d\xa2\x47\x73\xeb\xb9\x83\x7d\xbf\x96\xdb\xad\xff\x65\x0b\x33\xaf\x5b\x75\xcd\x04\x03\x68\xc8\x69\x99\x04\xa6\xa8\xed\x21\x9a\x9b\x60\x21\xc6\x95\xb9\xc6\x11\x71\x11\x5d\x62\x59\xdc\x52\x00\xbd\x62\xa8\x05\x9f\x6f\xa4\x81\xc8\xa4\x78\xcb\x68\xf6\xa5\xae\x54\x4d\x9b\x47\x17\x49\x05\x88\x0b\x87\x68\x09\xc0\x75\x37\x9e\x7b\x4e\x7b\x18\x43\xde\x88\xc0\x01\xe6\xba\x7b\x10\x48\x9a\xc4\x53\x73\xf9\x62\x16\xfd\x68\xbc\x74\x98\x45\xdf\x3f\xd9\xa8\x65\xe4\x77\x7e\xa4\x96\x58\x45\x1a\xc5\x32\xba\xe2\x1b\x61\x37\x4e\xf4\x64\xbd\x8e\xa8\x8c\x32\xb2\x16\xc4\xdc\x7d\x30\x89\x68\xb4\x9d\x13\x9d\x93\x57\x2c\xaa\xfc\xcf\x82\x67\xde\x4f\xc0\xd1\x62\x63\x9e\xce\x12\x24\x27\x58\x12\x18\x61\x19\x65\x5c\x0f\x2d\xb9\xee\x11\x47\x6b\xae\x08\xb3\xae\x42\x32\xdf\x08\xaa\xae\xa2\x37\x9b\x5c\x6f\x32\x9b\x1a\x2e\xad\x77\xff\x47\x9a\xd9\x1c\x44\x91\xcb\xb5\x19\x9d\x5f\x45\x92\x28\xa5\x7b\xfd\x9b\x49\xf0\xfc\x23\x93\x78\x41\x9e\xbb\x39\x4d\x22\x25\x36\xe4\x6f\x1a\x1e\x33\x25\x7b\xfd\xa4\xc2\xc2\x2b\x83\xc4\x90\xa4\x2d\xdd\x58\x27\x86\x42\xad\x6b\x84\x41\x4f\x0d\x06\x49\xd7\x32\xa9\xee\x9d\x82\x81\x26\x0b\x45\x57\x84\x6f\x54\x90\x33\x30\xc7\x8a\x88\x24\xaf\x50\x48\x1b\x0d\x96\x14\x07\x23\xbc\x51\x4b\x2e\xe8\x3f\x6d\xf0\x97\x2e\xc9\x08\xa3\xba\x84\x0b\xbd\xd6\xc1\xf5\x15\x5d\xc1\xe3\xcf\x3c\x97\x70\x49\x25\x31\xa4\x2c\xc8\x9c\x50\xbd\x7e\xee\xed\x05\x93\xf7\xde\x6c\x42\x37\x4e\x1a\x6b\x5d\x1e\x1e\x8f\xc7\xe6\xc4\xc5\x6d\x50\x9c\x59\x35\xfe\x5b\x2a\x95\xe6\x91\x49\x2c\xed\x64\x63\xb8\x30\x27\x35\xee\x59\xb6\x0a\xff\x29\x76\xa8\xef\xc5\x22\x66\x6f\x47\x2d\xf7\x91\x02\xee\xef\x6f\x05\x9a\x3a\x8e\xf9\x54\x44\x0f\xb2\x2f\x6f\x5b\xff\x1c\xbd\xb8\xd0\x03\x14\xfb\xd1\x7b\x1b\xe6\x39\xc1\xec\xc7\x75\x62\x06\x33\x3f\x1b\xc3\xe9\xef\xe2\xa5\x5d\x36\x5d\xaf\xc6\xd8\x1a\xf5\xd7\xf6\x7b\x63\x85\x55\x6b\x6a\x47\x5d\xbb\x0a\x7d\x83\x71\xee\x00\xfc\xf4\x33\x07\xa0\x07\x24\x1c\xb5\x1c\x68\xae\xd5\x4c\x6b\xe3\x7b\x42\x73\x9d\x7a\xb2\x73\x76\xb1\xe2\x6b\x0f\xbe\x0f\x52\xe9\x62\x56\xed\xbd\xbb\x49\x9a\x65\x0a\x63\x17\x36\x4d\xd5\xae\xbc\xc0\x30\x5a\x0b\xfa\x06\x2b\x72\xf4\xa1\x03\xec\xf8\x1b\x22\x04\xcd\xc8\xb7\x1c\x67\x2f\x8c\x5f\xa0\x2d\x8c\x51\x10\x49\x54\x5b\x15\x5d\xa3\x7f\x6c\x63\xc0\x5a\x3b\xa0\x8b\xa4\xc8\x15\x60\x72\x4d\x59\x9b\x2b\xe3\x73\xa3\x02\x39\x81\xee\x12\x1f\x26\xb1\x75\x4d\xc4\x00\xb2\xb2\xca\x05\xf1\x19\x6d\xe5\x17\x57\x2f\x6d\x66\xdc\xb2\xe6\x74\x3c\xeb\x89\x54\x8a\x39\x22\x90\x69\x45\x80\x30\xf5\x1d\xcf\x48\x4a\x4d\x2e\x5c\xfb\x40\x4a\x62\xae\xf3\x38\x7b\xb3\x7f\xbc\x0f\xf3\x8d\x40\xfb\x7d\x37\x7c\xdc\x05\x85\x39\xcf\xc8\xa1\x7a\xf0\xfb\xb0\x99\x59\x99\xa6\xa2\x08\x33\x60\x26\x5f\x70\x03\xfa\x73\x2c\xc9\x8f\x22\x9f\xec\x09\x0a\x76\xf6\xf4\x52\xa9\xb5\x9c\x1c\x1d\xe5\xfc\x82\xb2\xd4\xf2\x1e\x99\x32\xa2\x8e\xc2\x20\x58\x45\x18\xc3\x36\x37\xe4\x30\x76\xf3\x3f\xf2\x3c\x96\xc4\x1a\xb3\x45\x95\x89\xb1\x6a\xc2\x80\x65\x10\x76\x00\xe3\x39\x5f\xad\x4c\x56\x35\x7f\x0a\x59\x1c\xcd\x4f\xa6\x31\x5e\xd3\x91\x0b\x30\xd1\x55\x73\x4a\x98\x3a\xa3\x59\x3c\x83\x8d\x83\xfc\xc9\x34\x96\x73\x6e\x5e\xaa\x66\xdc\xe6\x81\x17\x44\xae\x39\x93\xe4\x6c\xa5\xd7\x66\x06\xfd\xdf\xcf\x78\x46\x5a\xe1\x0a\x2b\xc4\xd0\x24\x57\x2c\x1a\xb9\x51\x6e\xc4\xe1\xb4\xc4\x93\x6f\xfa\xf2\x6a\x4d\x62\x00\x63\x7b\xe6\x37\xd3\xf8\xc1\x6b\xfa\x67\x3b\xaf\x49\x7c\x9c\x8e\x63\x18\xd6\xdd\x0b\xdb\x4b\xfb\x1a\xb7\x21\x37\x0d\x9d\x15\xc2\x3f\x0a\xda\xd1\xaa\x28\xaf\xf2\xa9\x4a\x66\x06\x63\x9d\x24\x0d\xee\xd4\xe2\x18\x2a\xc9\x5e\x13\x55\x97\xbd\xd9\x72\x62\xbe\x2f\x72\xf8\x50\xe3\xf1\x7d\x6c\x1b\xda\x1e\xa0\x63\x76\x4e\xd5\x64\x07\xf6\xf1\x32\xc3\x6a\xe4\x1a\xcf\x49\x7d\xed\x6d\x30\x78\x0b\x56\xf7\xc6\xc1\x6b\x9c\xda\x10\xb2\x7a\x77\x45\x10\x79\x66\x25\x9c\x4b\x1e\xfa\x5d\x63\x94\x42\xb3\x2d\x03\x58\x81\x0d\x81\xf7\xb1\x80\x2e\xd9\x6b\x77\x7f\x60\xbb\x2d\x0d\x2a\x51\x2f\xde\x6e\x63\x7b\xd5\xa6\x0c\x82\xf1\x77\x56\xaa\x17\x72\x4c\x8a\x45\xe0\x31\xd5\x3a\xd4\xc4\x5c\x46\x6d\x90\x65\x63\x82\x36\x95\x69\x48\x7e\x74\x1f\xf9\xd5\xaf\x27\x1d\xc0\xa1\x6b\x37\x27\x3f\x2c\x8f\x0e\x73\x5d\x76\xf0\xe9\xfa\x14\x3c\x9b\x2e\xb8\x30\x5e\xd3\xd4\x56\xd2\x54\x62\xa7\x11\xf0\xd9\x3a\x6b\x9a\xc6\x78\x3e\x27\x52\x9e\x29\xfe\x9a\x30\xc3\xef\x0e\x67\x0e\x00\x1a\xee\xd9\x5a\xcf\xf3\x55\x77\xf3\xb8\x2d\xa0\x68\xdf\xe5\xd2\x7d\x4b\x63\xb9\xc8\x8d\xaa\xcf\x1d\x39\x84\xd9\xf0\x95\x88\x02\x60\x5f\x3f\xf6\x09\x84\x9c\x36\xe0\x94\xec\xc5\xf9\x13\x79\xc5\xe6\x4f\x19\x55\xe6\xd5\x78\x63\x9a\xf8\x47\x23\x23\x97\xe5\xd5\x7f\x86\x14\xdd\xe8\x40\xb1\x0f\x50\xbb\xde\xbf\xf9\xa2\xd4\x81\x40\xaf\x39\x64\xa8\x50\x7d\xf3\x85\x89\x64\x49\x48\xe8\xa0\xb0\x0a\x3a\xd8\x59\x47\x61\xa9\x6b\x81\x24\x3e\x3a\x72\xd8\x4e\x3d\xfa\x9d\xd0\x66\xc3\xf8\x48\x66\xaf\xd3\xbf\x4b\x1b\x16\xa6\xed\x9c\x8a\xd0\x6a\x81\x43\xc1\xe6\xc7\xc1\x20\x69\x7e\x34\xb7\x2b\x36\xe6\x1d\xec\x66\x61\x62\x0f\x36\xc2\xd8\x05\x7f\x7c\x71\xbd\x91\x44\x3c\xcd\x26\x24\x35\x3f\xbe\x82\x96\x6e\x5f\x6a\xb2\x9d\x90\x34\xf8\x0b\x92\xb7\x6b\x2a\x88\x7c\xaa\xbf\x17\xbf\x77\x25\x5b\xba\x10\x98\x29\x92\xbd\xd0\x14\x2a\x4d\x1a\xa7\xca\x17\x54\xab\x01\xa0\xba\x75\x6c\x67\xcf\x3e\x7b\xde\xb5\x8b\x9b\xf4\x5e\x6c\xa4\x06\xdb\xf3\x1b\xc9\x3c\x4b\x69\xa4\xb7\x9e\x86\x05\xad\x83\x4f\x96\x15\x62\xd8\x3f\xd6\x8a\xc3\xda\x2a\x55\x8d\xba\xa6\x24\x06\xd0\xe9\x4b\xad\x75\x4a\x5d\xea\xcd\xc3\xf4\x61\x0c\xe0\xdb\xc5\xf9\x2a\x6f\xad\x6a\x4a\xec\x98\xf3\x25\x66\x8c\x68\x55\xab\xb5\x66\x59\xec\x75\x26\xbb\x43\x5a\x2b\xdb\x22\x8d\x03\x76\xf6\xe3\x8b\x18\xc0\xdb\xfb\x4b\xb9\x8b\xc1\xb2\xae\x0d\x69\xd2\xd6\xd7\x3c\xa1\xe0\xba\xb8\x4d\xa6\x2d\x5f\x82\xae\x77\x95\x54\x66\x46\x3e\xda\xd5\x00\x50\x20\x92\x6a\xae\xaa\x35\x2b\x1f\x7b\xe1\xf4\xb7\x00\xfb\x45\x98\x60\x73\xf8\xe6\xae\x6a\x79\x39\x3e\x08\x1f\xba\x91\x6f\x98\xf8\x9e\x6f\xbe\x48\x8d\x1a\x5e\x0d\xf5\xb3\xa0\x3e\x77\x9c\xff\xb4\xc6\x1d\x18\xac\x96\x83\x49\xad\x02\x85\x36\x0a\x6e\x23\xb5\x9d\x7c\x6d\x49\x95\x38\x42\x3c\x93\x96\x12\x15\xd4\x7d\x9c\x99\xb7\x5c\x84\xe1\xf6\xbb\x44\x41\x66\x5f\xab\xb5\x93\xc5\xf6\xe5\x07\x83\x81\x66\x74\xce\xb5\x1d\x62\xd2\x1f\xc3\x39\xe7\xaf\xa9\xde\x48\x8e\xd4\x4a\xec\x5a\x02\x2b\xe9\xb5\x2c\xf1\x54\xea\xa9\xbd\x2c\xf1\x34\x1e\x50\x64\xa0\xef\x94\x74\x58\x90\x60\x59\xea\x08\x0f\xec\xaa\x19\x52\x64\x98\xa0\xfb\xc6\x2c\x08\x4d\x51\x56\xbb\x11\xba\xd7\x3a\xfc\x80\x3a\x86\xb8\x89\x3b\xd5\x6d\xc1\x42\xc9\xb8\xbc\xbc\x2c\x85\x86\x56\x33\x32\x8a\x73\x7e\x61\x01\x8f\x5b\xad\xb2\x8c\xca\x75\x8e\xaf\x02\x8b\xaa\x28\x72\x56\xb0\xb3\x74\x4a\x56\xa8\x6e\x62\x85\xae\xcf\x89\x53\x3c\xeb\xba\x4b\xa3\xfd\x6d\x0d\x1b\xd8\x91\xd7\xa8\x52\xaf\xbe\x91\xad\xba\x60\xb7\x54\xe1\x3f\xfc\x92\x67\x64\x30\x88\x1f\x8e\xc7\x36\x54\xac\x51\xd8\x12\xa1\x25\x89\x88\xac\x3f\x88\x64\x55\x6f\x64\xc9\x57\x88\x8d\xbd\xdd\xa7\x5b\xd5\xb2\x06\xfc\xaa\xbc\x12\x35\xd8\x1b\x74\x68\xcb\x0d\x05\x1a\xb6\x77\x80\xba\x5b\x23\xb6\x9f\xcf\x16\xee\x4c\x55\xf1\xeb\x5a\xa1\xae\x59\x34\x0d\x93\xf9\x9c\x6f\x98\x92\xa9\x6d\x62\xad\x13\xef\x08\x7a\x63\x7d\x41\x31\x34\x66\xc8\x9f\x8b\xc7\xc9\x1a\x5c\xc7\x36\xc6\x6b\x93\x7a\x7d\x15\x34\x37\x0d\x29\x5b\xf0\x78\xaf\x9b\xc7\x9d\xdb\x9e\xb9\xec\x79\x67\xd8\x60\x4a\x86\x6c\xa7\xc3\x94\xb1\xce\x26\x22\x95\x4b\x9f\x68\x1f\xea\x91\x1d\x54\xd3\x52\x33\x86\x71\x0c\xaa\x3e\x9b\xd8\x5a\x5d\x37\x18\x65\xd0\x56\x33\xb2\x55\x73\x3f\xab\xd2\x9e\xd1\xdb\x9b\x6b\x4d\x8d\xa7\xa6\xde\x58\x77\x03\x74\x07\xc9\xe7\x1b\x9a\x6b\x26\x9e\x80\x9a\x8a\x13\xf6\x49\x51\xd3\x79\x65\xe7\x11\x17\x59\xff\xac\x07\xb0\xb1\xb4\x5a\x58\xa3\x50\x50\xd3\x3f\x91\xab\xb8\x9a\xc4\xd4\x94\x58\xfe\x0e\xcc\x21\x68\x22\xb4\x42\xd2\xc6\x76\xad\x87\x78\x6a\x42\x9b\x69\x47\x74\x55\xa1\xe1\x4d\xd5\x6c\x30\x10\x45\x18\x9d\x79\x9c\xdf\x5d\xee\x68\xcd\xb3\xe6\xa7\x66\x62\x9d\xcd\x39\x4e\x71\xe3\x9f\xca\x68\xe5\x22\xf5\xd5\x92\x48\x52\xdc\x8d\x28\x1b\xd9\x0b\x6e\x26\x44\xda\x45\xf6\xc2\x28\x2e\x6f\x91\xdc\xa8\xdc\x15\xaf\x0f\x4b\x63\x40\xfe\xcf\xb3\x6f\xff\xa8\xd4\xfa\xb9\x25\xb3\x9e\x2c\xbc\xf1\xcf\xe8\xca\x50\x96\xd1\x7a\xfc\x25\xd8\xa3\xbf\x4b\xa3\x18\xc9\x94\x37\x0e\x7c\xed\xe1\xf9\x7f\xbd\xf8\xfe\x3b\x77\x16\x2e\xd3\x82\x42\xc9\x5b\x05\x7a\x3c\xc5\x9b\x8c\x12\x36\x27\x08\x15\x6f\x5c\xd6\x8f\xbe\x8b\xfb\x48\xb6\x18\x4b\x49\x2f\x34\xfb\xb9\x2e\x53\xdd\x54\x28\x95\x19\x4e\xe9\x6f\xce\x21\x84\xca\x51\xf6\x8f\x40\x93\x4a\x0c\x33\xf1\x99\x1a\x6a\xab\xa3\x29\x2d\x2a\x9f\x38\x8c\xec\x1b\x6b\x69\xa4\x17\xf2\x81\x1f\xe9\x41\xb4\xa0\x24\xcf\xa2\x15\xbe\x8a\xce\x89\x5f\x42\x7b\x20\x17\xea\xc0\x37\x81\xf1\xc4\xec\x55\x37\x68\xf9\x86\x7d\xc4\x45\xb4\xc4\x32\x3a\x27\x84\x45\x8a\xac\xd6\x44\x53\xc4\x25\x55\xcb\x34\xfa\x2b\xdf\xf8\x61\xe5\xc6\x30\xe4\x48\xf1\x08\x47\x0f\xf4\xee\xdd\x48\x92\x45\x19\x59\x6f\xd4\xd5\x83\x08\x2b\x85\xe7\xaf\x1d\x50\x3b\xb3\x84\xa4\xfa\xfa\x49\x70\x7c\x74\x23\xa8\x2f\xeb\x88\x71\x8c\x2a\x5a\x60\x9a\x3b\xe8\x22\xab\x87\x47\x0f\xe2\xa1\x74\x6a\xbf\xa6\x84\x61\xfc\x20\x4a\x2c\x1e\x75\x11\xd7\x7f\x9b\x2a\x21\xb9\x0c\xe3\x07\x20\x84\x55\x6f\xd7\xf8\x3f\xbf\x7e\x19\x43\x3e\x8c\x4f\x43\xa6\x86\xe2\x61\xcb\x65\x4a\x6f\xc7\xdb\x3a\x40\x93\xac\xd4\xc2\xc6\x4a\xd6\x66\x52\xc7\xe0\x26\xdb\xee\xdd\x24\xef\x2f\xcf\x19\x78\x07\xc1\x7b\x5b\xa9\x6b\x45\xee\x5d\xc4\x25\x8c\x97\x99\x91\x3e\xef\x51\x22\x76\x79\x24\x6f\xf6\x31\x96\xae\x91\x5b\x28\x73\x06\x45\xe6\xd8\x6a\x8e\xf3\x25\x97\x6a\xf2\xbb\x87\xe3\xb1\x43\x4d\x11\xb9\x08\xe0\xb2\xfd\x38\x6a\x99\x19\xe8\xef\x48\x75\xbf\x66\x2d\xef\x63\x52\x99\x27\x05\xab\xf9\xe0\xb5\xc6\x11\xce\xcf\xd6\x82\xaf\xd6\xea\xbd\x52\xa1\x73\x20\x76\x9d\xa4\x95\xc5\x1d\x44\xdb\x65\xc4\xde\x48\xb4\x7e\x52\x3f\x98\x39\xb5\x0f\x5e\xa9\xa2\x11\xb1\x51\xfc\xdd\xe9\xfd\x0f\xe3\x0f\x49\xef\xcd\x9c\x81\xbf\x2a\x92\x6f\x82\xdf\xea\x05\xb1\xd5\x28\x33\x24\xbf\xc1\xb2\x7e\xb2\xed\x5c\x3c\xbf\x5c\x33\xd4\x67\xdb\x3c\xf8\xc0\xe5\x67\x5d\x15\x0f\xad\xdb\xc8\x46\x9f\xe9\xc6\x59\xa5\x4e\x0c\xa0\xb1\x67\x9e\x57\x3e\xe7\x5d\xee\x1d\x67\xcf\xd4\xba\x68\x73\x1a\xdf\x6c\x42\xd5\x86\x4c\x6e\xb6\x70\x1c\x81\xcc\xda\x0d\x9d\xe2\x24\xc3\x2f\x91\xbd\x57\x0a\x6e\xa1\x03\xdd\x5e\xf9\x69\xf3\x46\xbe\x8f\xc5\x16\x2d\x8b\xdd\x6a\x24\x7f\x6c\xe3\xf5\x5f\xce\x0c\xbd\xae\x30\x2d\x77\xb2\x06\x3b\x4d\xb8\x06\xc1\x89\x03\x08\xce\xf2\xbd\x3b\x32\x1b\xd8\x99\x19\xe7\xe0\x38\x92\x7a\x02\x8b\x0f\x73\xdd\xc0\xdd\x21\x68\x12\xb6\x7d\x23\x94\x30\xac\x48\xe6\xfa\xa1\x26\xa5\x64\xc3\x65\x1e\xc3\xb8\xa1\x32\x39\x5d\xa7\xee\x5a\x2f\x42\x96\x9c\x9a\x54\x86\x3c\xc1\x82\xdc\xcf\x36\x46\x07\xf0\xf2\xa6\x5b\x1b\x9b\x15\x72\xae\x1a\xec\x6c\xc2\x8f\xfe\x44\xae\x3a\x14\x14\xeb\xb9\xb9\x59\xed\xb1\x67\x7d\x16\xc2\x8e\x40\x2f\x5f\xd8\x2d\xe8\x2a\xde\x22\xf3\x76\xb9\xb9\xc5\xdc\x3a\xac\x99\xf0\xfe\x9e\x2c\x4d\xbc\xb0\xc9\x15\x74\x77\x67\xc1\x17\x93\x9e\x09\x86\x1f\xea\x21\x38\x61\xed\xb6\x98\x9b\x72\xa0\x4a\xcd\xd2\x87\xbf\xdd\x26\x2e\xe6\xbc\xc0\xf6\xf1\xe7\xe5\xc3\xf7\xf5\x11\x08\x00\x86\xdb\xd7\x5c\x89\x76\x67\xd5\x14\x8d\xfa\x1a\xbe\xa3\x9e\x11\x1f\xc5\x7d\x84\x12\x82\xa6\xee\xec\x5e\x2b\x93\x26\xe6\xdb\x5c\xc5\x9f\xf3\x1c\xc6\x47\x47\x31\xac\x97\x6a\x75\xb3\xf1\x71\x8d\xd5\x52\xb3\xec\x99\x63\x45\x31\x00\xfe\x36\xf4\xe8\x18\x0c\x06\x09\x19\xa2\xf8\x28\x06\x90\x0c\xfd\xcb\x01\x0e\xba\x74\xa9\x56\xb9\x8d\xd4\x30\x88\x30\xac\xfe\xbf\x35\x43\xd8\x9b\xd8\xa7\x10\xe9\xd5\x8d\x56\x0d\x80\x6a\x6e\xba\xd2\x4b\xd7\xb8\x4d\x52\xf2\x46\x93\x9f\xa2\x92\x6d\x69\x42\x60\x35\x4f\x92\xb9\x70\x52\xde\xb0\xdc\x41\x2f\xa1\x9a\x2a\x48\x10\x0f\xe8\x76\x63\xec\xe8\xa1\x3e\xd5\x04\x78\xf4\x9d\xde\x55\x3b\x79\x6f\x0e\xde\x5a\xe8\x62\xe8\xda\x75\x99\x4b\xa0\x44\xa3\xe3\x3e\x42\xb4\xbc\x08\x2f\xab\x9b\xe1\x5f\x40\xd8\xd2\x45\x22\x07\x03\x97\x58\xa6\x8f\x10\x6e\xa6\x2d\xbb\x61\xf0\x25\x96\x11\x66\x11\x65\x73\x2e\xcc\x45\x13\xff\xb2\x87\xe9\xd2\x27\x3a\x73\xe9\x77\xcf\x49\x14\x3f\x18\xe2\xe1\x83\x18\x9a\x04\x6a\x54\xea\xbf\xdd\xf0\xc3\x07\xf1\x83\x76\xf1\xff\x25\xcf\xc8\x24\x23\x4d\x17\xdd\x94\xcf\xc0\x2d\x94\x02\xbc\x4f\x29\xa8\x67\x19\xff\x65\x59\x88\x07\x84\xe3\xd5\x27\xd0\xb0\x11\x7d\x88\x95\xad\xd8\x15\x92\xd7\x90\xe9\x1d\x12\xda\x74\x72\x96\x63\x96\x59\xad\xc7\xa6\x56\xf6\xee\x90\x5b\x1c\xad\x77\x7a\x25\x04\xc1\xd9\xd9\xa5\xa0\x76\xb7\x9a\xf1\xbe\xb5\xc3\x75\x88\xd7\xa0\x86\x73\xa4\x18\x98\xf6\x79\x33\x82\x0a\x31\x8c\x17\x38\x97\x1f\x26\x2a\x79\x1f\xe5\xd5\x1f\x9b\xb8\x91\xf2\x8e\x3f\xdc\xdb\x25\x5d\xc4\xe5\x9f\x07\x68\x9b\x89\xc7\xc6\xc8\xde\xfa\x6f\x35\xe1\x3a\x2f\xfc\xde\x69\xf7\x84\xb9\xb3\xa0\x0d\x52\xec\x27\x24\xf2\x37\xaf\xf9\x22\x52\xa0\xfd\x09\xd5\x2f\x6d\x6e\xbe\x39\xce\xf3\x08\x47\x36\x83\x98\xe6\x60\x45\xa8\x53\x1c\x84\xfc\xd1\xb2\xf7\x30\x28\xe2\x39\x59\x10\x41\xd8\xdc\xf7\x69\xee\xac\x2d\xb1\x64\x0f\x94\x3d\x61\xf1\x17\xbf\x25\xc9\xa2\x51\xe4\xc8\xa0\x52\x43\x8f\x4f\xb2\x42\xd4\xf4\xd5\x76\x1b\xdb\xc7\xdd\xcb\x47\x60\xd5\x60\x50\x5e\x81\x2c\xbf\x9e\x92\xc9\xed\x63\x00\x21\x49\xcd\xed\x38\x7f\xe7\xcd\xbe\x5a\x1f\x5c\x32\xe6\xa8\xb5\x46\x40\xda\x05\x56\x48\x02\xae\x99\x4b\xa2\xe2\x83\xd2\xa8\xbb\xee\x44\xd2\xb3\x33\xa3\x7e\x9d\x9d\x6d\xb7\x0e\xc8\x0b\xa2\x7e\xf0\xc9\x91\x4c\x22\x45\xd0\x1e\x17\x57\xca\xdd\x54\xd3\x1c\x8a\x9b\xf0\xc4\xb0\xc8\x2a\x55\x25\x7f\xba\x48\xda\x70\x35\x18\xd8\x37\xe6\x90\x6a\xa7\x86\x17\x7a\x69\x22\xf2\x76\x2d\x9c\xd0\x32\x6f\x56\x11\xaa\x96\x44\x68\x61\xa5\x5b\x9b\x2b\x76\xc5\x70\xd0\x5c\xa5\x8b\x87\x7e\x04\x2d\x5e\x3a\x9f\x6e\x1d\x0c\x82\x57\x5b\xe1\x75\x90\x50\x6b\xe2\xd6\x86\x40\xc2\x36\x2b\x62\xf8\xca\xa4\x7f\x0c\x35\xb7\xb3\xbf\xc7\x30\xe4\x39\x7a\x11\x77\x00\xaa\xc1\x20\x71\x63\xc8\x0a\x56\x4f\x5b\xbf\x1a\xdc\x4c\x82\x35\x41\x0a\xec\x12\xe2\x42\x72\xed\xa3\x80\x90\xec\xcc\x0b\x78\xad\xb7\x0a\xc4\xa6\x91\x56\x84\xf8\x97\xfa\xb4\x02\x6d\xab\x1f\x7c\x72\x5c\xa4\xfd\xc2\x3e\x38\xb9\x7e\xdd\x52\xb5\xdd\x74\x37\x6a\x4a\xad\x41\x78\x07\xb3\xb5\x0d\xc4\xfe\x90\x9a\x94\x6a\x7e\x90\x53\xa4\xd6\x9f\x2c\x00\x08\x2e\xd0\xc3\x58\x89\x0d\x31\x8f\x2e\x75\xdc\x94\x96\x00\x3a\xe5\x10\x21\x54\x3e\x61\xb5\xe7\x46\x02\xd0\xea\x96\xbf\xbe\x4c\x72\x49\xdc\xa9\x28\x4f\xe2\xef\xb8\x8a\x70\x64\xf8\x61\xe4\x2a\xfb\x17\xd1\xb0\x7b\x5f\xeb\x4b\xcd\xb0\x92\x6b\xcb\x68\xdb\xce\x1e\x71\x61\x0f\x84\x2b\x34\x21\x3b\x60\x0e\x65\x75\x67\x70\xaf\x42\xe4\x1e\xea\xc8\x64\x3e\x22\x6f\x8d\x1a\xb4\xef\x2d\x8f\x7d\x17\xf9\xc2\x37\xfa\x9e\x9b\x26\x5f\xbd\xf8\x36\xd8\x0f\xc2\x3e\x34\xa6\xd2\xca\xe3\x6b\xa6\x26\x6a\xdc\x01\xd5\x5f\x3b\xc2\x69\x9d\x12\x1d\x66\xbb\x01\x3b\x18\x8e\xeb\x1f\x27\xbb\x3e\xd3\x9c\xd9\x7e\xfb\xaf\x6a\xd8\x27\x0a\xb2\x1b\x75\x46\xee\xba\x29\x25\xe3\x12\x85\xee\xde\x4a\xeb\x2c\x24\x6a\x4f\x35\x7d\xe3\xe3\x74\x37\x45\x69\x7e\x30\xe9\xdf\x96\x0f\xc2\xde\x16\x7e\xc6\x33\x92\x77\x58\x73\xb0\xf2\x0e\x47\x07\xea\x7c\x58\x86\x36\x7a\x34\xa2\x4e\x45\x67\xd4\xb1\x4a\xe7\x4b\x32\x7f\xfd\xad\x09\x1e\x36\x09\xd1\x27\xf5\x4f\xb0\xfc\xb3\x25\xe1\xce\x18\xaa\xb6\x2b\xf3\x0d\xbb\x4e\xef\x64\xc3\xf7\x83\x8d\x0a\x52\x73\xae\x9f\x80\x74\x6e\xd2\x66\x87\xf0\x75\x05\x38\x1e\xf0\x8a\xe0\xbf\xfc\x92\x86\xb8\x29\x16\xb5\xfe\x11\x86\x1f\x5a\xf2\x6a\x75\xad\xac\xf3\x18\x84\xee\x01\xd1\xb6\xb6\xa1\x8b\xa0\xad\xc2\x30\x4e\xa9\x7c\x12\xae\xa2\xf1\x1d\x14\x4f\xb9\xf0\x22\x86\xfe\x34\x10\x74\xee\xb9\x8a\x04\x4c\x12\x9a\x62\xa5\xc8\x6a\xad\x48\x90\xe9\x0d\x11\x88\x4f\x99\x0b\x27\xf9\xca\x5c\xdc\x4f\x08\x98\xd0\x3d\x94\x56\x78\x79\x6a\x8d\x76\x00\x68\x2c\x05\x1f\x27\xd5\xe0\x7a\x13\xa2\x12\x87\x15\x62\x48\xda\xa9\xb6\xfe\x34\xdc\x2d\xb4\xf6\x0f\x72\xf4\xd2\xa6\x81\x38\x4d\xe5\x0d\x61\x8a\x64\xe5\xe5\x46\x78\x5d\xa6\x20\xa9\x20\x20\xcc\x07\xd0\x75\x3d\xdb\x4d\xb7\x92\x3c\xc0\xdd\xbd\x0e\xbf\xd0\x0c\x55\x1e\x57\x8a\x7b\x45\x87\xc6\xdf\xff\x82\xe4\x44\xab\x72\x49\x9c\x76\xbe\xc1\x64\x34\x5d\xc2\xb2\x2f\x97\x34\xcf\x92\xa0\x77\x9f\xec\xa0\x3e\x85\xca\x0c\x9c\x92\x93\x80\x1d\x2c\xd3\x06\x84\x75\xb5\xfc\x44\x08\x75\xc1\xf5\x6f\x15\xf0\x81\xcb\xaf\xd7\x92\x1c\xe1\xc6\xa3\x93\xfa\xe3\x82\xbf\x7a\x4a\x09\x12\x6c\xb6\x3c\xb7\xef\x52\x0d\x9b\xc1\x22\xca\x22\x02\x8c\x02\xba\xc4\xf2\xfb\x4b\x56\x80\x29\x80\x4f\xed\x2b\x2f\xa9\xde\xc0\x64\x2a\x66\xe0\x7a\x8e\x25\xe9\x8f\x27\x0c\xc5\xc7\x71\xcf\x3e\x00\x6e\x3e\x1d\xeb\x4f\x63\xff\xc9\x81\x37\x61\x26\x01\xee\x4e\x59\x1d\x46\x0c\x63\x14\x0f\x59\x99\xe8\xdf\x3b\xeb\x62\xb0\x6b\xc9\xde\x4e\xec\xab\xd8\xdb\xed\x67\xe3\xb1\xb9\x05\x64\xdf\x6b\x36\x7f\xf7\x2a\x69\xb7\x57\x44\x5c\x90\xe4\x3a\x27\x0b\x35\x91\x73\x41\x88\x7b\x73\xfe\xe8\xe1\x48\x1d\x3d\x84\x8a\xaf\xfd\x67\xdb\xc5\xd1\xc3\x91\x38\x7a\x08\x4d\x9d\x89\x82\xf6\xe3\x44\xec\x34\x2f\x49\xc4\x76\xab\x45\x61\x2f\xdc\x6c\x3e\x9b\x8f\x56\xb3\x34\x76\x59\x37\x85\x77\x51\x73\x25\xd9\x47\xb8\x0d\x6c\x76\x92\xf7\x41\xbe\xb5\xdc\x6e\x6d\x4f\xc5\x9a\xa2\x7a\xb2\xf0\x3d\x97\xbf\x6f\xeb\xaa\xb0\x14\x5c\xbf\x8f\xec\xdf\x1f\x8c\x87\xaa\x94\xab\xdb\x6d\xd2\x5d\x33\x7c\xa9\x10\x00\x28\xde\xfd\xc9\x07\x27\x07\xab\x1b\xea\xec\x07\xc1\xdf\x5e\x19\xf5\x01\xda\xc4\xc6\xf6\x10\x4a\x06\xd9\x8b\x6f\xce\x29\x50\xbd\x98\x6e\x34\x66\x73\x54\x46\xd4\x66\x6d\x4e\x92\xcc\x28\x41\x6e\x12\xad\xa7\xef\x3f\xbf\x0a\x01\x28\x8e\x4d\x7a\x24\x6d\xc9\xb4\x5b\x49\xc2\x62\x4f\xb1\xe6\xf6\xbd\xf8\xd8\xdd\x26\x23\x00\xfa\x82\x5a\x1e\x61\x5d\xa3\x91\x65\xda\x46\x80\x6a\xf0\x5d\x1e\x4b\x8f\xee\x2a\x99\x37\xb2\x9b\xf9\x64\x62\xad\x37\xdf\x79\xeb\xe7\x62\xf5\xeb\xef\x00\x37\x4e\x34\x0a\x5c\x1c\x6c\x8e\x13\x70\x8d\x9d\xc2\x20\x15\x16\xea\xfb\x35\x61\xda\xd8\x4d\xda\x6f\xda\x7a\xd5\xa7\xd8\xe4\x6d\xd5\x82\x7c\x67\xe6\x1d\x08\x5b\xb9\xb5\x6a\x68\xb4\x5a\x28\x16\x94\x51\xb9\x34\x60\x40\x62\x0f\x16\x1b\xba\x51\x4b\x2b\x4c\xf3\xa2\x4d\x45\x2d\x33\x2f\x22\x93\xf6\x68\xdd\x1b\x57\xe3\x7d\xa0\x97\x87\xe8\xfd\x46\x43\x70\x33\x7e\x1d\xde\xac\x6e\xd8\x85\x38\x5e\xc1\x98\xed\x19\x9a\x99\xee\x41\x18\x0f\x10\x56\x34\xe9\xc6\x58\x2d\x1b\xd3\xcf\x80\x31\xc7\xdf\x0f\xc4\x98\x75\xaa\xb4\x62\xac\x8e\x30\x2f\x38\x0e\x46\x97\x4b\x94\xb4\x07\x5d\x7b\x35\x6c\x97\xa8\xb4\x3d\xd9\xc8\x0d\x12\xa5\x4b\x9e\x88\x4a\x46\xff\xa6\x8f\xad\x23\x0d\x61\x5d\x9e\x14\xa7\x67\x26\x15\x46\xe2\x2d\xac\xca\xd2\xda\xf7\x2d\xfb\xbc\x79\x32\x59\x3c\x4f\x89\xeb\x8f\x4e\x3e\x30\x77\xf7\x1f\x44\xd0\xbc\x92\x74\xc5\x37\xd1\x82\x8b\x0b\x62\x2e\x17\xf8\x47\x05\x23\xaa\x4e\x63\xd7\xf7\x94\xcc\x8c\x1b\xb7\x25\x3f\x7c\x31\x48\x31\x84\xef\x5c\x71\xf7\xee\xa5\x39\x93\x74\xcf\xeb\x44\x2b\xa2\x96\x3c\x4b\x4b\xc2\x6b\x12\x5d\x61\xb3\x5d\xef\x0a\x65\xeb\x90\x6c\x08\x2a\xd1\x80\x26\xd4\x39\xe6\xde\xb7\xcc\x35\xca\xea\x44\x24\x31\x37\xfc\xac\x3f\x06\x8e\x6f\x89\x24\x5e\x38\xf6\x61\xb7\xa5\x48\xe2\xb9\x27\xe2\x36\xc2\x6b\x55\x63\xda\xe9\xaf\x5a\xe9\x23\xbc\x8a\xef\xe9\x53\x23\xbc\x50\x0b\x6c\xe2\x51\xff\xf4\xc9\x24\xde\xb0\x8a\x37\x25\x86\xfe\x55\x85\x5a\xc1\xe4\xda\xdc\x41\x79\x66\x53\xde\x59\xe5\xa4\x66\xc3\x4f\xfa\xc7\xb0\x10\x70\x13\x6a\xb1\xeb\x1f\x31\x0b\x1a\xc7\x33\x00\x4b\x4e\xad\x2b\x1a\x9c\xb7\xd7\xac\xfa\x2a\xb2\xc9\xb5\xd3\x12\x7e\x94\x44\x74\x40\x31\x86\x25\x57\xf3\x0b\xa8\x3b\x77\xb1\x12\x94\x5d\x4c\xae\xa9\xfc\x0b\x17\xaf\xf5\xcf\xfe\x18\x52\xf9\xbd\xfb\xde\x1f\xc3\x52\x38\x56\x2c\x5e\xb3\x4a\x65\x4e\xf0\xaa\x1b\xd2\x67\x83\x0b\x13\x76\xc7\x55\xbc\x6a\xd1\xe8\x04\x68\xd3\x92\x76\x7d\xd6\x50\x9e\x86\xa8\xf0\x56\x73\x75\x8c\xfa\xea\x81\x9d\x93\xc0\x6d\x93\xfc\xc6\x17\x14\xb3\xfc\xa6\x71\xb5\xe6\x3d\x4d\xb3\xd9\xf1\xfb\x9f\xa7\x5b\xd6\xc6\x34\xbf\x74\xdf\xcd\x1f\x0d\xd2\x08\x04\x53\xc3\x28\xba\x69\x4c\x58\x88\xa8\x0f\x3b\x35\x6d\x68\x05\xc2\xd1\xf0\x18\x44\x20\xdf\x35\x82\x67\xc3\xae\x1a\x26\x50\xcd\xb6\x6e\x31\xac\x07\x83\x44\x4d\xc5\xcc\xd8\xc6\xcd\xf3\xd8\xe6\xab\x2c\x45\x8f\x27\xa2\x7c\x31\x52\x0c\x87\x40\xcf\x6b\xaa\xbb\x9a\xb9\xc3\x86\xd6\xe7\x5b\x2a\x0c\x54\xe0\xf9\x6b\x92\x8d\x56\x78\x2d\x47\x98\x65\x23\x49\x54\x90\xcf\x67\x85\xeb\xee\x8f\xfd\xf5\xb5\x48\xbf\x85\x44\x0f\x1e\xf9\x69\x49\x7f\xfb\xe2\x6a\x75\xce\xf3\xc1\x20\x96\xe6\x47\xbd\x20\xa5\xca\x26\x33\x3e\x6d\xd1\x66\x5c\x4d\xb2\x6b\xbd\xb1\x16\x1e\x35\x37\x86\x23\xb5\xc7\x86\x8a\xef\x7d\xff\xbb\x3c\xd5\x39\xf5\xb0\x4d\x8a\x01\x81\xc6\xf1\xc7\x3d\xb1\x2f\xe8\x01\x8d\xeb\x14\xe1\x9c\x3e\x9a\x26\x7a\x2c\x2d\x4f\x5f\x51\xf8\xc7\x76\xdb\x3f\xae\xa5\x7e\x41\xfd\x31\x8c\x8d\x60\x8b\x29\x8b\xd8\x60\x90\xb0\xd4\x9f\xd6\x22\x2d\xa8\xbb\x44\x23\x4b\x5f\x93\x2b\xc8\xc0\xae\x84\x92\xd7\xf2\xa9\xa8\xc1\x80\x26\xc1\x39\x32\x54\x00\x0a\xf3\x0d\x9a\x03\xda\xa2\x21\xae\x36\x4c\x30\x8a\x37\xcc\xbd\xfc\x5d\x1e\x7b\x3f\x27\x8b\x9c\xcc\xd5\x60\xe0\x7e\x68\x7d\xee\x34\xf8\x7d\xa3\x1f\xcc\xa3\xf0\xa4\xef\x26\x55\xbe\x64\x56\xdd\xaa\xf6\xc9\x07\x5d\xbf\x38\x69\x4f\x08\x5a\x27\x04\x80\x13\x70\x52\x5c\x87\x34\x35\xb4\x9a\x57\x3c\xf0\x59\x86\x06\x04\xbd\x7d\x45\x6c\x3e\x4c\x2e\x12\x06\x4b\x3f\x08\x35\xf0\x9b\xff\xda\xf1\x04\x98\xd0\xd4\x2c\xc5\x4e\x13\x97\x9e\xc3\x76\x1b\xd2\x98\xfc\xc8\x41\x01\xf1\x3b\x47\x01\xdc\x7c\xee\xbf\xb4\x16\x77\x31\xc7\x4d\xe9\x06\xcc\xca\xa3\xad\x9a\xc3\x44\x40\x66\x56\xc3\xbc\xfb\xe6\x71\xbf\x76\x9e\x85\x00\x90\x9e\x40\x9e\x3e\x8a\xaf\x09\x2b\xcf\x7a\x20\x75\x67\xd5\x02\xb1\xfd\x87\x41\xfe\x79\xb4\x90\xdc\xf3\x90\x6d\x57\x43\x5d\x90\x48\x34\xed\xb4\xc6\xb9\x84\x7c\x2a\x7c\x5e\xff\xc3\x86\xe2\x18\x72\x05\x13\x55\x82\x3f\x0f\xde\x2d\x69\x32\xc9\x67\x78\x7d\xaa\x21\x79\x86\xd7\x93\x4a\x7a\xfa\x64\x5e\xcf\x21\xeb\xdc\xf5\xc4\xfa\xf5\xe0\xe8\x18\x21\xf4\x8d\xab\x52\x84\x26\x78\x12\x2f\xa3\x52\xa7\x0c\x2b\xfa\x86\x44\x73\x9e\x91\x59\x0c\x80\xcf\xc2\x46\xac\xd4\xed\xb5\x93\x39\x79\x8f\xc4\x5d\x60\xdf\x6c\x1a\xfb\x3a\xdc\x12\x4b\xbd\xcd\x0b\x47\xb5\x39\x4f\x05\x3d\xeb\x46\x23\x9a\xdf\x05\x2c\xbf\x94\xd9\x09\x09\xa8\xaa\x85\x12\x4b\x6b\xac\x73\x43\x91\x1b\x76\x13\xbb\x5d\x4c\xcd\xd2\xbe\x0a\x56\x95\x52\x8b\xd2\x75\xb9\xd0\xfb\xeb\xb4\xb1\x3d\x3a\x98\xe8\x54\x23\x50\x4b\x96\xf5\x46\x2e\xdd\x56\x31\xcc\xcc\x3d\x14\x48\x2e\x93\x62\xc9\xcf\x29\xcb\x5c\x15\x8d\xb0\xf0\x40\x75\x99\x50\x28\xca\x79\x02\x48\x77\x3e\x6a\xca\xd8\x16\xe5\xc6\x2b\x61\xce\x6c\xaa\xf9\x40\x22\xa0\x9a\x44\xd8\x6e\xfb\x8d\x79\xb8\x15\xec\x1f\xeb\x55\x6e\x94\xa6\x72\x89\x57\x95\x2a\x2d\x5b\xc0\x38\x6f\x7d\xa5\x71\x4f\x89\x2b\xbf\xdc\x5f\x61\x15\xac\x56\x8d\xc6\x9b\x1c\x47\x57\x87\xd3\x19\xac\x9d\xb9\x03\xd8\x1f\xef\xac\x9f\xa6\x50\x59\xfa\xc7\x01\x83\x59\x56\xde\x47\x5c\xa2\xd6\x60\xa8\xed\xb6\xc3\x1f\x12\x44\x47\x41\x62\x05\x4a\x80\xd5\x75\xa0\x94\xad\xdb\x7b\x3e\x6d\x0d\x74\x6b\xd5\xb3\x0e\x09\x8f\xb3\xa4\x78\x97\x08\x3f\xab\x8a\xfe\x85\xe0\xd7\xcf\xf0\x1a\x15\x1f\xf4\x1f\x41\xa8\xdf\xaa\xc2\x97\xa4\x7d\xae\xd7\x3d\xf5\x94\x50\xd0\x0b\x94\xa9\xc0\xc5\x66\xcf\xd7\x01\xec\x08\x06\xd8\x15\xc9\xe5\x28\x9c\x5e\xbf\x26\x57\x93\xf8\x82\xa8\x18\x5a\x00\x9b\xa8\xf0\x29\xb1\xe4\x66\x45\xfe\x44\xae\x80\x8f\x27\x84\x38\x59\x27\x34\xa4\x7c\xdb\x8f\x63\x14\xe5\xf3\x6d\xda\xd2\xb2\xe3\x2c\xb1\x7c\x2f\xe3\x98\x7e\xf6\x8c\x43\x98\x12\x94\x34\xc7\x6a\x1b\xea\x4b\x9e\x6b\xda\x36\xd1\x09\xd6\x87\xd6\x1c\xaf\xe8\xaf\x36\x66\x39\xe2\x6b\x72\xf5\xfe\x86\xb3\x9d\x75\x8e\x65\x46\x79\x7f\xa3\xf9\xee\x3a\xc7\x73\xd7\x23\xda\x56\xee\xb6\x63\x15\x5d\xed\x59\x3c\xd9\x46\x8c\x81\x26\x6d\x0e\xa8\xa8\x50\x57\x15\x22\x29\x3f\x1f\x02\x87\x6c\x25\x54\xa3\x0b\x39\x28\x6c\x0a\xd6\x1b\xa8\xf5\x5d\xc1\xf0\x83\xec\xc1\x86\x79\x5a\xa0\x65\xad\xcb\x43\x36\x2f\x8b\x6e\x81\xed\x30\x43\x10\xeb\x98\x91\x51\x0c\xc0\x6d\x67\xe4\xc0\xed\xa4\x25\x69\xae\x2e\x54\x2c\x9b\xbb\xd2\xad\xed\xca\x75\x3f\xd3\x72\x37\x99\x27\xcf\xf0\x1a\xb8\x20\xd4\x80\xa5\xae\x60\xa1\x14\xb5\x0a\x5d\x6b\x1a\x9f\x06\x45\x13\x91\xd8\x8f\xc0\x85\x0e\xbc\x41\xab\x72\xf4\x69\xcd\x8a\x9f\x75\x78\x5b\x83\x26\xb0\xd6\x04\x5e\xdf\x01\x09\x6f\x76\x3b\xfb\x04\xca\xd5\xbd\x60\xb8\x93\x60\xb8\x1b\x6f\xf9\x88\xfc\xe3\x76\x3c\xc2\x53\xbd\xd3\x23\x80\x36\x6e\x6b\xaa\xc5\xd5\x2d\x3c\x66\x66\x56\xf7\x1e\xb3\x7b\x8f\xd9\xbd\xc7\xec\xde\x63\x76\xef\x31\xbb\xf7\x98\xdd\x7b\xcc\xee\x3d\x66\xf7\x1e\xb3\x7b\x8f\xd9\x2f\xcb\x63\xf6\x82\xa8\xd2\x63\xa6\xff\xf8\x19\x3c\x66\xf7\x9e\xac\x7b\x4f\xd6\x8d\x9e\x2c\x9c\x65\x1f\xd8\x81\x64\x46\xd8\x03\xc1\xbd\x17\xeb\x57\xe9\xc5\x7a\x41\x54\xcd\x8b\xa5\xd9\xdc\xbd\x17\xeb\x17\xce\xac\xef\xb2\xdf\x3f\xda\x9e\xbe\xbb\x67\xc9\x52\x63\x43\x04\xdf\xc6\xb3\x64\x3c\x45\x07\xbe\x2a\x5b\xac\xba\xfa\x55\xf8\x3b\xfe\x2f\x3b\xb6\xee\xa0\xa7\x59\x3b\xe6\x25\xbe\x40\x0d\xae\x60\xcc\x35\xba\x83\x24\xd8\x6e\x28\x83\xa4\x20\x56\xb4\xf4\x7f\x94\x4c\x03\x91\x26\x23\x41\xae\x96\x1e\xa5\x28\xd6\x7f\x04\x8a\x60\xd5\xe5\x03\xcb\x58\x7b\x88\x51\xc1\x2c\x1c\x2d\x41\x89\xf0\xa3\x4f\x4f\xd5\xc4\x19\xb1\xf4\xf4\x66\x27\x8e\x82\x0c\x4c\xa8\x31\x1a\x9c\xc1\x8f\x3a\xd8\xb2\x33\x05\x6a\x7c\xd9\x7d\x05\xa0\x75\x11\xbd\xf9\x90\x91\x39\x17\x58\x11\x20\x51\xfd\x53\x31\xad\x9e\x71\x5e\xf8\x5d\xb2\x41\xc4\xcd\x6a\x74\x7c\xb2\x79\x8c\xc6\x27\x9b\xd1\x08\x24\x1c\x91\xe9\x66\x06\x06\x83\x44\xa2\x44\x4f\x96\x27\x12\x4c\xf0\x63\xfd\x43\x77\x23\xc1\xc4\xfc\x00\x60\xbb\x2d\x1d\x1e\xf8\xf1\xa7\x83\x81\x1c\x0c\xda\xe9\xc0\xb6\x83\x72\x07\x69\x67\xf6\x99\x9a\x6f\xf8\xfd\x7a\x46\x0b\xe6\xb6\x73\xfe\x20\x48\x0b\x33\x13\x11\x48\x91\xe3\xff\x25\x85\xb4\x71\x4d\x6d\xb7\x28\x7c\x71\x66\x4a\xce\xce\x4a\x3e\xeb\x48\xec\x80\x36\x8e\xf0\x76\xbb\x19\x4c\x98\x09\x5f\x05\x83\x81\x4a\x02\x23\x17\x32\x00\xa9\xf9\xa6\x45\x17\xd9\x25\xa0\xc7\x92\xa9\xbb\xb8\xe7\x98\xe7\x0c\x06\xfc\x59\xef\xb1\x60\x84\xd8\xc9\x7e\xe0\x52\x00\xd1\x80\xec\x7b\x95\x3d\xc0\x5d\x16\x51\x5a\xec\x91\x5e\xb0\x5d\xb0\x7b\x62\xf0\x7a\x07\x37\x15\xe9\x9b\x25\x04\x4a\xb0\xeb\xb5\x6d\xb7\x8d\x69\x94\x57\xea\x2f\x8b\xfa\xf5\x0d\x9b\x97\x6a\x8a\x99\xdf\x60\x90\xb4\x76\x8a\x5a\x58\x9a\x45\x88\x71\xb7\xc0\x78\x3a\x8b\xc1\xae\x85\x23\xe4\xdd\x2d\x19\x57\x74\x71\xe5\x29\xf4\xcb\x25\x66\x17\xa4\xe8\xca\xe2\x6e\x6e\x2e\x33\xb8\xe3\x91\x5e\xe0\x14\x09\xee\x7c\xce\xbd\xc7\xa7\xf0\xcb\xe9\x59\x08\xe4\x7c\x61\x70\xee\x1c\x41\x02\xf8\xcc\xd3\x16\xe8\xd2\xaf\x5b\x34\x34\xc2\xc5\x34\xa4\x50\x98\x66\x66\x97\x41\x16\xfa\x36\xcc\xd0\x3c\xb1\x30\x80\x86\xed\x8f\x8b\x92\x9b\x45\xae\xf1\xac\xdd\xea\x14\xc7\xc4\x49\x1f\x72\x34\xf4\xde\x13\xe5\x75\x36\x28\x8f\x6e\x63\x78\x1d\x3a\xbc\xc6\xed\x4a\x77\xa4\x82\xd3\xde\xdd\x01\x3d\xbb\xe5\xbf\x6d\xef\xae\xd9\x21\x23\xbc\x20\xea\xc0\xde\x45\xa0\xe3\x1f\x0a\xfb\x1d\x7a\x77\xcd\xec\xed\x37\x43\xb5\x67\x67\x44\x6f\x9a\x33\xbc\x51\xfc\x8c\xae\x34\xb9\x9c\x9d\x55\xf6\x56\xa0\x8a\x05\x8a\x18\x83\x18\x4a\xa4\xa6\xe3\x19\xdc\x20\x35\x3d\x9e\xc1\x1c\xa9\xe9\xc3\x19\x5c\xa0\x31\xcc\xd0\x74\x76\xb2\x78\xe4\x45\xeb\xc9\x62\x38\x04\x18\xc9\xe9\x62\x06\xe9\x14\xcf\x06\x83\xcc\xde\x9f\xd7\x7f\x4c\xc7\x5a\xcd\x9c\xe2\x19\x1a\x9b\x5b\xfc\x2c\xa2\x2c\xda\x80\x83\xce\x65\x36\x90\x99\x64\xaf\x53\x36\x43\x9b\x29\x9b\x01\xd3\xc3\x7c\x30\x98\x27\x0a\x9c\x64\x7e\x78\x90\xa5\x72\x49\x17\x2a\x09\x92\xca\xf0\xd0\x7f\xc9\x61\xbe\xdd\x4e\x67\x00\x8a\x04\x84\x4a\x5d\x39\x5d\x02\x15\x1a\x9f\xa8\x47\xdc\xf7\xa9\xb4\xe6\x59\x6a\xa5\x7c\xaa\x66\xd0\xbc\x4c\x2b\xd1\xf1\x89\x7c\xe4\x93\x83\x9e\x48\xaf\xa1\x6e\x90\x98\xca\x59\x4f\x73\x44\x3a\xdd\xcc\x0c\x47\xe8\x1f\x83\x9d\xe6\x0d\x3c\x95\xeb\x9c\xce\x49\xa2\x46\x23\x78\x0c\x20\x41\x38\xc1\xa9\x44\x42\x23\xa7\x30\x66\xc8\xce\xb2\x99\x6b\x2d\x6b\xaf\xc7\x93\xf1\x0e\x72\x93\xfb\xa0\x3c\x3c\xb3\xd2\x95\x4d\xd5\xcc\xfb\xad\xf5\xef\xd4\xb1\x01\x67\x56\xe9\x4f\xe8\x9a\x4e\x14\xcc\x27\xfd\x63\xe8\x0a\x27\xd7\xbb\xf2\x9d\x5b\xdd\xc8\xba\xe9\x7d\x5b\x28\x60\xf9\x1b\x9b\xec\xa7\x7a\xb6\xc5\xb7\x1d\x4e\x57\x88\x40\x9c\xce\x11\x83\x38\xcd\x50\x9d\x4b\xe0\xd4\x1c\x0a\x82\xc2\x2d\xd8\xa0\x6d\xd5\x46\xcc\x62\x07\x76\x10\xa7\x02\x55\x4d\x85\xe6\x99\xa0\x57\x6d\x9d\x5a\xeb\x3d\xb1\x2f\xf1\x45\x97\xea\x52\x18\xb2\x41\x5d\xcf\x9a\x62\xc7\xaa\xf6\x6d\xc5\x0e\x8e\xa6\xc1\x55\xa8\xa1\xf2\x1c\x0f\x94\x79\x19\x16\x27\x04\x00\xf8\x87\x81\x2a\x4f\x39\xe8\x22\xf9\x9d\x2e\x2d\x95\x48\xaf\x81\x0f\x06\xfa\xff\x69\x39\x52\xed\x68\xa4\x76\x70\x60\x94\x0e\xdd\x1d\x4e\x45\x22\xba\x40\x17\xda\xea\x33\xf7\x7e\x1a\xec\xc3\x9d\xd6\xed\x00\x7c\x68\x00\x72\x39\xd2\x83\x33\x97\x62\xff\xdb\xcb\x40\x38\xcd\x12\xad\x73\x15\xd3\x0d\xfc\xce\x53\x35\xdb\x99\x23\x00\xf7\x56\x6c\xe0\xff\xd7\x38\x6a\xcb\xe4\x51\x9b\xed\x69\x93\x95\x15\x17\x14\x77\x2d\x7c\x8e\x14\x14\xac\xe1\x52\x30\xc6\x31\x54\x00\x2a\x3d\x5c\xc7\xfd\xda\x83\xcf\x7f\x75\x1f\x6b\x14\xc7\x4e\x77\x72\x09\x34\x2e\xc9\xf9\x1a\xcf\x5f\xff\x97\xe4\x6c\xdd\xc2\x49\x0f\xac\xa6\x99\x0f\xdc\x20\x69\x79\x92\x41\x99\x04\x3d\xfb\x27\x52\x50\x22\x99\x4a\xc3\x1f\x40\x91\xe8\x24\x47\xe3\x93\xbc\xe4\xb0\xf9\x70\x08\x54\x22\xa7\xf9\xcc\x2b\x38\x9b\x2a\xa7\x4b\xa6\x9f\x8d\xe1\x43\xc7\xe2\x92\xeb\x87\x9f\x85\xe8\x73\x50\x9e\x11\x4c\xcf\x04\x72\x39\x65\x61\xf8\x35\x43\x96\x88\x76\xf0\xb3\x71\xe3\x60\x48\x24\x0f\x3f\xd3\x66\x9f\x63\x05\x48\x24\x9f\x1d\x83\x1d\xfc\xec\xb8\xfd\x08\x09\x52\xc8\x7b\x6d\x5b\xd8\x27\xc6\xd1\x6a\x56\xba\x46\x09\xeb\x48\x95\xf3\x24\xcf\x93\xd8\x1a\x61\x31\x00\x53\x56\xd8\x3a\xb3\x54\x8a\x79\x2a\x88\xc9\xe9\x93\x1c\xbd\x3a\x9a\xfe\x74\x34\xfb\xe4\x37\x47\x30\x3e\x8a\x41\x08\x61\x42\x91\x9d\x16\xe4\xf6\x87\xf0\xb3\x35\x8b\xf3\x64\xa3\xf8\x53\xb3\x34\x5f\x5d\x31\xbc\xa2\xf3\x36\x65\x93\x27\xb1\xed\xe3\x8a\x9d\xc5\x43\x02\x76\x90\x26\xf1\x7f\xbc\x35\x17\xf8\x8e\x16\x72\x15\xd7\x0f\x7a\x3c\xf1\x27\x9f\x3d\x34\xee\x48\x6a\x33\x74\x7f\xfe\xbb\xd1\xdf\xe5\x9e\xca\x9f\xfa\xca\xf3\x9c\xae\xcf\x39\x16\xd9\x9e\xca\xbf\xf3\x95\xb3\x4f\x47\x58\x08\x7c\xd5\x5d\xf7\xd3\xa0\xaa\xb4\x8f\x64\x77\x55\x3d\x1e\x1f\xd7\x2b\x8f\xe6\x4b\xc1\x57\x58\xd1\xf9\xbe\x66\x21\x38\x92\x38\xdd\x7d\x5f\x83\x87\x61\x83\x25\x5e\xef\x05\xaa\x9c\x01\xbe\xda\x8b\xc2\xcf\x2a\x15\x8f\xd6\xf9\xe6\x82\xb2\x23\x3d\x0d\x96\x61\xb1\xa7\xe1\xe7\xbe\xe1\x22\xc7\x6a\x4f\xbd\xdf\xfb\x7a\x2b\x46\x56\x9c\x51\xa9\x8e\x56\x9b\x5c\xd1\x91\xbd\x7f\xd8\xd5\xec\x0f\xcd\x66\x36\xfc\xaa\xa3\xc1\xe7\xc5\x32\xb0\x0b\x81\xd7\xcb\xd4\xfc\x77\x4f\xfd\x02\x9d\xee\xdd\x3e\x92\x8d\xe6\xc6\x1e\xda\x3f\x8c\x5d\x36\x63\xbe\xd0\x24\xbe\xc2\x59\x86\xf7\xd0\xd1\xa7\x36\xcd\xd9\x0e\x9c\x24\xef\x9d\x2b\x02\xc7\xbc\xb4\x66\x39\xdd\x13\x62\xa6\x52\xdc\x91\x3f\xe1\x91\x3a\x1d\x1d\x4f\xc8\x63\x75\xaa\xff\x8b\xd4\xe9\x78\xf2\x1d\xfe\x6e\xb7\x83\x7b\xcd\x18\x67\xd0\x25\xc7\xc7\xa0\x57\xb2\x8d\x0e\xb5\xb8\x14\x5f\xa7\xd3\x59\x6a\xdf\xe9\x48\x08\x98\x4c\x67\x65\x8a\x5c\xca\xce\xcc\x7e\x44\xcc\xe4\xa7\xb9\x4a\x14\x14\x46\x36\xa5\x04\xcf\x97\xc1\x57\x5e\x7e\x3d\xc3\xf2\x8a\xcd\x83\x32\x6c\xcb\xe6\xd6\x0c\x0e\x0a\x64\xa5\xa0\xd1\x6e\x63\x8b\x35\x11\x2b\xc2\x82\x02\x6a\x0b\x28\xfb\x7b\xb5\xbf\xdc\x7e\xd7\xb8\x3f\xc3\x79\x1e\x94\xcc\x5d\x57\xb4\xf2\x75\xe1\xbf\xb2\xac\x56\x3f\x2b\x4b\x82\xaf\x4b\xfb\x35\xc7\x32\x1c\x75\x6d\xbf\x32\xfc\x9a\x84\x95\x57\x56\x86\x87\xce\xd6\xa6\x4b\x98\x84\x2e\x61\xba\x30\xc9\xbd\x10\x42\xc5\xe9\xff\xb8\x12\x42\x67\x9d\x50\x4d\xa6\x1e\x4f\xad\x0a\x16\x3d\xd1\x6b\x35\x8b\x11\x42\x0d\x05\xa1\x7a\xc6\x4f\xc0\xae\x8c\x12\x99\x12\xf3\x98\x80\x89\xe1\xf1\xaf\x03\xd4\x14\x36\x9a\x10\x63\xf1\x30\xfd\xcb\x49\xf5\xe3\x20\x97\x72\x22\x3c\x01\xb1\xd0\x09\xc0\x6b\x73\x86\x0c\x8d\x4f\x58\x39\x6b\x36\x1c\x02\x81\x94\x31\x85\x20\x0b\x14\xad\x66\x64\x1d\x5d\x24\x02\x89\xed\x96\xa5\x8c\xf3\x35\xec\xd7\x21\x15\x89\x8f\xe5\x18\xf7\xfa\x95\x10\x17\xdd\x3d\x9d\x41\x1a\xf0\x01\x05\x79\x69\x21\x9f\x8a\x44\x81\xc9\x70\x48\x1f\x17\xd3\x3f\x15\x56\xf9\xe3\xee\xc1\x56\x66\xf3\xab\x27\xb5\x58\x36\x11\x18\x96\x48\x25\x00\x52\x34\x3e\xa1\xe5\xf4\xe8\x70\x08\x98\xcb\xb9\xe6\x80\x08\x5e\xc0\xad\xc4\x8c\x41\x73\x0e\x68\x27\xa0\x12\xd0\xd3\xf3\xae\xba\x2c\x98\xd6\x58\xf4\x8f\xc6\xc3\xeb\x85\xd1\x64\x22\xca\x0a\xf2\x4f\x0c\x35\x04\x24\x60\xad\x35\x4b\x00\x65\xb0\xcf\x31\x00\xd0\xcd\x0f\xdc\xd0\x37\xb3\x58\xa1\xa6\x72\x35\x8c\xac\x86\x8b\x56\x4c\x20\x91\x30\xa8\xd1\xd0\x86\x83\xb9\x25\x15\x85\x54\xc0\x8d\x94\xe1\x46\x7b\x4e\x51\x88\x7b\xda\x62\x2a\x66\x41\xa0\x58\xd5\x33\x56\x05\x4d\xd3\x9f\x30\x84\xe7\xdb\xb6\x35\xcc\x0e\x5c\xdd\x62\x59\x07\x03\xb7\xd0\x5d\xf3\x5b\x1e\xb0\x15\xe8\x22\x29\xf6\x02\xb8\x16\x48\xff\xb4\x99\xfc\x76\xcd\x9d\xb1\x0e\x8f\x53\xa6\xa5\xe7\x7c\x56\x56\x59\x95\x55\x42\x0e\x5f\xe4\xfd\x33\x69\x09\x0e\x93\x28\x9f\x7e\xa6\xe7\x2f\x92\x0e\xc1\x52\xfa\x1f\xcd\x81\xb8\x49\x80\x40\xe5\x59\x8e\xd9\xc5\x06\x5f\x98\x43\x2b\xf3\x2d\xa7\xe7\x02\x8b\xab\x36\xc5\x54\xd8\xec\xd7\x54\x92\x33\x57\xcb\x64\xac\xd6\x55\xc0\xce\xb5\xae\x55\x68\xeb\x86\x26\x2a\x3d\x93\x8a\xac\x25\x30\xd2\xa8\x9a\x59\x47\x5b\x77\x65\x2b\xe3\x0d\x82\x9b\xf0\xe5\xe0\x46\x23\x56\x1e\x01\x21\x9e\x94\x40\x26\x0a\x40\xe6\x32\xcf\x50\x46\x8a\xbe\x76\xce\xd5\x49\x76\xbd\xb6\xfc\x48\xce\x97\x61\x42\x24\x2f\xbe\x7e\xbb\x4e\xe2\x9f\x8e\xb6\x47\xbf\x89\x61\x7c\x11\x6b\xf6\x1a\x94\x1c\xfd\x94\x9c\x4e\x5e\xfd\x04\x4e\x8f\x82\x9c\xf5\x65\x6e\xf1\xc2\x60\x10\x30\x8e\xcb\xbf\x18\x8c\x4d\xbb\x57\x12\x7c\x62\x32\x15\xbd\x7a\x25\x87\x31\xd8\xf5\x2a\x18\x2c\xa1\x12\xd5\x20\x4e\xb3\x93\x1a\xaf\xb3\xfc\x89\x5c\x5d\x72\x91\x45\xf1\x83\xa1\x18\x3e\x88\xcd\x73\x2c\x8c\xbb\x40\x4d\x93\xe8\x22\xd7\x5a\x5a\x44\x99\xe2\xd1\x03\x3d\x6a\x90\x17\x49\x77\xb9\xbb\x89\xce\x44\xaa\xb9\x70\x41\x6e\xff\x6e\xa9\x6d\x0c\x20\xd7\x44\xf7\x7b\xd0\xab\x4a\x04\x87\xc8\x5e\x47\x5c\x9d\xf5\x90\x6c\xb7\xf6\x50\xac\x19\x2d\x60\xe6\x6c\xd9\x23\x95\xe6\xdf\x84\x00\x13\xfe\xd9\x70\x80\x58\x3e\xe8\x5d\x0a\xa5\x8f\xc3\x33\x46\x1b\xd3\x5c\xf5\x6b\x74\x4b\x5d\x27\x3a\xff\x00\x47\xc7\x1e\x3f\xf1\xf7\xc5\x19\x9c\xa8\x1d\x7d\x1a\xc7\x7d\xe5\x8b\x79\xb3\x00\xc0\xf8\x19\x36\xb9\xe0\xc5\x76\x1b\xbf\x20\xb6\xed\xa9\x9d\xcf\x42\x70\xbd\xed\x27\xf1\x13\xcf\xe1\x5d\x45\x43\x4e\x3f\xd2\xed\x53\xc0\x54\x72\x3a\xf9\xc3\xf6\xf8\xf3\xed\xa7\x0f\x41\x72\x3a\xf9\x32\xc7\xab\x35\xc9\x80\xed\xe1\x37\x47\xa9\x22\x52\x25\x02\x9c\xda\xb9\x4d\xfc\x09\x91\xde\x89\xdb\xad\x32\xde\x9d\x98\x6d\xb4\xe6\x1b\x20\xc4\xcb\xe3\x6b\x73\x6a\x82\x84\x5f\xcc\x71\xf5\x88\xcd\xfb\x3a\xae\xe5\x84\x42\xd6\xe2\x0d\x61\x81\x18\xbe\xce\x38\x33\xee\xa9\x89\xfb\x75\xec\x7d\x3d\x53\x36\x1c\xce\x76\x3b\x58\xcf\x45\xa3\x09\x97\xec\xe0\x62\x42\x77\xbb\xd6\xc3\xb9\xa7\xee\xad\x72\x97\x41\x39\x52\x3c\xb2\x64\x41\x22\xc6\xd9\xc8\xfc\x3e\xcf\xcb\x73\xbe\xf4\x15\x7b\xca\x22\x2e\x32\x22\x74\xdd\x73\x12\xf9\x2a\xd0\x34\x30\xea\x71\x64\xf5\x2f\x69\xa3\x76\x97\xf8\x0d\x89\x70\xd4\xa0\xba\x04\x94\x49\xc3\x76\xfe\x40\xb7\x3f\x86\x1b\xd4\x3f\x2e\xb1\x12\x62\xa4\x85\x74\x13\xb0\x83\x2d\xd9\xc8\x45\xca\xc8\x5b\x55\x3a\x8a\x31\x22\xa9\x46\x19\x24\x75\x1c\x6d\xf4\x90\x1c\x19\x24\x05\xdd\x28\x71\x75\x8d\xfd\x8e\x11\xa9\xed\x66\xbb\xf5\xbf\xb4\xea\x43\x19\xce\xf3\x2b\xbd\x1d\x36\x8e\x45\xf0\xdd\x6e\xd7\x08\xef\x77\xf1\xd4\x6a\xbb\x55\x8f\x0b\xaa\x18\x0c\x12\x55\x6a\x97\xa1\x48\x77\x4c\xcf\xee\x42\x05\xb4\x84\x37\xa2\x9d\xf9\xd4\x3c\x1d\x0a\x53\xc1\x4c\xc7\xbd\x0a\x03\x2b\xdc\x35\xc6\x67\x69\xa2\x5e\xf5\x68\x34\x95\x09\x38\xe9\x27\x0c\xd1\x94\x25\x00\x18\xec\x9c\x14\x49\xc2\xec\xbd\x85\x9e\xbd\x81\xc0\x07\x83\x84\xff\x7f\xf6\xfe\x7d\xbb\x6d\x1c\x59\x14\xc6\xff\xf7\x53\xc8\xdc\x3d\xda\x80\x09\xd1\xa4\x6e\xb6\x69\xc3\xfa\xa5\xd3\xce\x74\xf6\xe4\xb6\x93\xf4\xf4\xf4\x56\x34\x5e\xb0\x04\x49\xe8\x50\xa4\x1a\x04\xed\x78\x2c\xfd\x7b\x9e\xe0\xbc\xc4\xef\x35\xbe\x47\x39\x4f\xf2\x2d\x5c\x48\x82\x12\x95\x38\xdd\x3d\x59\x39\xf9\x9c\xb5\x62\x91\x60\xe1\x5e\xa8\x2a\x14\x0a\x55\xd8\x4d\xe0\xb9\x7c\x74\x5d\xbe\x2e\xcd\x5c\x99\xa7\x7c\x88\x17\x83\xe1\x4d\x01\x5c\x2b\x23\x7c\x1d\x08\x02\x65\xb8\x15\xa0\xa8\x5a\x79\x64\x2a\x4f\x71\xb4\x55\xf9\x18\xa7\x95\xca\xc1\x18\x0b\x30\x46\xae\x9b\x21\x0a\xe5\xb8\x8d\xb1\x3b\x86\xe7\x78\xbc\xd9\x92\xa8\xda\x92\x48\xb7\x64\x5b\x50\x88\xbe\xd8\xb4\x8c\x2d\x7b\x92\xf1\x37\x66\x4f\x62\xcb\x94\x45\xb5\xfe\x2a\x1f\xbb\x8a\xe8\x58\x18\x43\x03\x7a\xee\x57\xcf\x44\x8b\x2d\x5b\x79\xd5\x62\xac\x78\x8f\xa3\xcb\x71\x58\xdc\xa0\x03\x1a\x56\x88\x79\xbd\xd0\x57\xa7\xbc\x36\x27\x43\x7a\x35\xa0\x9a\x81\xda\x90\xef\x37\x79\x20\x2c\xae\x8b\xe8\x1d\xa2\x6d\x9c\xbd\x69\xc5\xbe\xeb\x0c\x23\x9f\xc4\x06\xcb\xf5\xd4\x56\xc1\xd5\x7e\x6d\xd4\x70\x4f\x96\x1b\x7d\xc3\x2c\x37\xda\x62\xb9\xd6\x00\xe5\x0c\xee\xd3\x2c\x2d\x5d\x72\x4a\x26\x5f\x96\xa3\x01\xb8\x06\xea\xa0\xdf\xda\x7f\x58\x47\x91\xdb\xa6\x4b\xc2\xa2\x30\x14\x22\xa3\x11\xd1\x1e\xd5\x24\x95\x29\x63\xad\xf0\x91\x11\x26\x6a\x16\xb9\x18\x8a\x72\xef\xd3\x6c\x2e\x81\xf0\x96\xc9\x12\x40\x29\x41\x02\x81\x85\xb7\x20\x4b\x30\x87\x50\xfd\x4e\x95\x07\xd9\x02\x1e\x11\xab\x09\x89\x1b\x40\xa5\x21\x92\x62\x67\x6a\x22\x2c\x26\x67\xfe\x6a\xc5\xbc\x34\x59\x50\x30\x29\xb0\x38\x55\x94\xf2\xf4\x14\xde\xa5\x26\x2c\x8c\x2a\xdd\xde\xb0\x5b\xb7\x08\x87\x7c\x34\xa4\xa3\x35\x84\x25\x81\xcd\x70\x72\xea\xba\x64\x98\x8d\xb0\x3e\x58\x3d\x55\x38\x2f\x19\x58\x56\x6c\xb9\x07\xa9\x2a\x35\x86\x61\xba\x47\x86\x59\xab\x35\xc2\xbe\xcd\x6f\xaf\x2b\x5c\x50\x6e\x28\x73\x9a\xfc\x24\x4a\x88\xe8\x77\x6d\xf4\x44\x25\x87\xac\xa3\xae\xdc\xc5\x2e\x5d\xad\x7c\x8b\xba\xb2\xca\x47\x01\x18\x8a\x5d\x17\x49\x84\xf4\x6b\x8c\x60\x2d\xe5\xa5\x38\xa3\x83\x56\x10\x8a\x73\x3a\x90\x7f\x31\x35\xca\xcb\x52\x86\xbf\xfa\xba\x64\xf8\xd9\x37\x4c\x50\x66\x0f\x32\xfc\x97\x90\xe1\xd3\x2f\x2a\xc3\xa7\x7f\x82\x0c\x9f\xd6\xca\xf0\xb3\x2f\x26\x2c\x5e\x5a\x34\x00\x69\x14\x93\x7d\xaa\x95\xe6\x09\x4a\xf1\x95\x2d\x50\xa7\x46\xa0\x26\x38\xdd\x12\xa8\x33\x4c\x2a\x02\x75\xd6\x6c\x82\x0c\xbb\x19\x3c\x57\x8f\x89\x8b\x01\xc7\x59\x8b\xc1\x03\x90\xb5\x00\x73\x31\x3f\x74\xdd\x58\x9d\x05\x15\xb2\x75\x5a\x95\xad\xd3\x0d\x29\x3f\x42\x63\x29\xe5\x4f\xab\x8d\x9a\x9a\x46\x45\x78\xba\xd5\xa8\x09\x8e\xaa\x52\xfe\x04\x0b\x30\x41\xae\x3b\x36\x52\xfe\x04\xbb\x13\x78\x8e\x27\x45\x0b\x27\xaa\x85\x93\x5d\x2d\x9c\x56\x5b\x38\xd5\x2d\x64\x53\x10\x9f\x07\x39\x5d\x4b\x0e\x41\xdc\x0a\x2c\xf1\xf1\xc6\xe6\x18\x7a\x02\x0a\x9d\xfb\xe0\x39\x11\x73\x2f\xfd\x8d\x4b\xb2\x11\x5a\xfb\x87\x8b\xaf\x8b\x58\xbf\xf9\x86\x89\xf5\x9b\x07\x62\xfd\x40\xac\xef\x4f\xac\xdf\xfc\xbb\x89\xb5\xcc\xf1\xb2\x4e\x83\x8d\xe2\x3a\x32\xcd\x50\x82\x2f\x6c\x8a\x98\x18\x8a\xc8\x70\xb2\x45\x11\x09\x66\x15\x8a\x48\x9a\xcd\xb2\x40\x3e\x20\xe7\x2a\x85\xe3\x18\x13\x18\x02\x7e\xae\xdf\x08\x44\xf1\x19\x51\x66\x88\xa4\x4a\x10\x93\x2a\x41\x4c\x76\x29\x66\x2e\xfe\x34\xc5\x8c\xd5\xda\xb1\xd2\xcf\xa8\xd6\x8e\x55\x6b\xf5\xdb\x58\xb6\x76\xac\x5a\x3b\xae\xb6\xf6\x63\xca\x9b\x21\x47\xf1\xc8\x92\x96\x3f\x7c\x5d\x04\xf8\xd1\x37\x4c\x80\x1f\x3d\x10\xe0\x07\x02\x7c\x7f\x02\xfc\xe8\x8b\x49\xcb\x6f\xbf\xe6\x0b\x85\xb2\xe6\xf7\x3b\xef\x51\xed\x6f\x51\x98\x3f\xf1\x1e\x55\x71\x47\x54\x1d\x6f\x5e\x2e\x09\x17\x8c\x44\xa9\x1a\x60\x5b\x0b\x02\x3a\xed\x1c\x26\xc6\xbe\x6a\xb1\x40\xbc\x38\xa2\xc4\x14\x01\x9e\xdf\xb9\xda\x71\x17\x36\x1f\x7b\x81\xab\x75\x21\xa3\x7c\x39\x8d\xcf\x4c\x05\xcd\x66\x7c\xd6\x69\xab\x23\xfd\xdc\xa4\x63\x18\x8f\x24\x0a\xba\x0c\x11\xac\x04\x6d\x72\x95\x02\x0a\xcf\x8a\x67\x06\x07\xb4\x05\x92\x16\x83\x21\x93\xbf\x14\xee\x11\x1d\xa0\xc0\x75\x47\x92\xed\x51\x9c\xac\x2d\x8d\x52\x1e\x4e\xe1\x32\xc6\xdc\x0d\xd4\x73\xd5\x37\xc1\xcb\xe9\xae\x4b\xeb\x48\x20\x6e\x62\x99\x5a\xbd\x30\x51\x4d\x2f\xe3\x7c\x13\xc6\xce\x7d\xdd\xe9\x04\xc7\xc3\x56\x8b\x8d\x4e\xd9\xb9\xaf\x28\x5d\x82\xf6\x01\xc7\x40\x98\x74\xd8\x02\x40\xf6\x4d\xc0\x16\x85\xca\xc3\x94\x06\xe4\x67\x7e\xb3\x19\x0f\x59\x2b\x18\x9d\xf9\xab\x15\x3f\x2f\x5e\xcf\x7d\xbd\x3c\xda\x07\x1c\x2a\xd7\x54\x89\xcc\xac\x8f\x5d\x4a\xfb\x84\x64\xbd\x1e\xc1\x66\xf3\x2d\xb0\xfd\x34\xe5\xb1\xc4\x9f\xef\x3c\x58\x7f\xbf\xeb\x3c\xe8\xc3\x67\x9f\x07\x9d\xea\x63\xa0\x66\x93\x7b\x64\x32\x01\x09\xbc\xff\x41\x90\xdc\xb2\xb6\x02\x94\x55\x6b\xcd\x8a\x7d\x6b\xb6\x55\x6b\x94\xef\x5b\x4f\x41\x84\x5d\x01\x22\xe4\xba\xa9\x16\x35\x74\xf5\x91\x5d\x7d\x56\xad\x3e\xb3\x05\x08\x97\xaf\xd1\xab\x3a\xe3\x08\x6a\x49\x15\xbf\xd6\x87\xb9\xf8\xf8\xb9\x00\xdd\xa1\xb2\xff\xdd\xc7\x02\x66\xde\x86\xe6\x1a\x0a\xc3\xfb\x01\x4a\xf2\xcb\xb0\xf9\xa8\xe5\xe3\x59\xc7\x1b\xd4\x14\x6a\x3d\x80\x62\x07\x7a\x48\xa1\x36\xc6\xd6\xaa\x59\x35\xa8\x10\xed\x0b\x49\xdc\x35\xc5\x54\x0e\x93\x4e\x65\x95\xf0\xd4\x9a\xd2\x9c\x51\xe4\xa3\x2a\x1b\x10\xe7\x2c\x22\x2d\x58\x44\x5a\xcb\x22\x58\xc9\x22\x8a\x43\xb8\xb5\xb9\x3c\xf2\xd8\xfc\xfe\x0e\x55\xfe\x84\x6a\x51\x28\xe3\x5f\x98\x5f\xdb\xd6\x6e\xaf\xff\xad\x22\xe8\xe3\x07\x39\xeb\x41\xce\xfa\x98\x9c\xf5\xf8\xde\x9b\x93\xa7\xdf\xf0\xe6\xe4\x69\x75\x73\x52\x8c\xce\xd3\x2f\x26\x85\xfe\x50\x95\x83\xb6\x4e\xf4\xb8\x5d\xe4\x79\x30\x10\xad\x20\xf4\x21\x8a\x71\x20\x85\x23\x6d\xee\x3b\x8c\x5b\x81\x7d\xb6\x17\x17\x15\xfd\x08\x28\x7a\x85\x5e\x21\x6e\x11\x9e\x17\xff\xf6\x1a\xcb\x79\xda\xa8\xfa\xd9\xa6\xc8\xbd\x55\xb9\x3d\x82\xfc\xbc\x3d\xe0\xad\xb6\xac\x9c\xe1\xf6\x29\x3b\xe3\xda\xe8\x75\xc8\x5a\x6d\xbb\x72\xb6\xd1\x5d\x51\x71\xc9\xf7\xe4\x0b\xd4\x69\x75\xb8\x5a\xf9\xbf\xbe\xc0\xec\x7e\x5f\x19\xe2\x9f\xbe\xe4\xec\x56\xab\xfe\xde\x90\x92\x60\xdf\xb2\x7a\xdf\x0a\x0a\x39\xc9\x74\xfc\x63\xda\x78\x4f\x6f\x2d\x5f\x94\x43\xdf\x32\xb3\xfd\x11\x18\x91\x7a\x4b\x9a\x6a\x50\xc0\x50\xa2\xea\x49\xce\x71\xbc\x65\xb2\xce\x34\xa5\x92\xb2\x4d\x7e\x3f\x3f\xc3\xf1\x30\x71\xdd\x11\x8a\xa4\xf8\x38\xc6\xaf\x25\x50\x2e\x08\x8d\x0b\xf1\x71\xbc\x25\x3e\x4e\x73\xf1\x11\x4d\x70\x06\xa6\xc8\x75\x23\xc4\x20\x9a\x63\x1d\x2d\x75\x02\xf7\xe6\x83\xb9\x16\x89\xa6\x30\x4c\xd5\x7d\xfe\x09\x1a\x4e\x47\xb6\x54\x39\xae\x4a\x95\x63\x25\x55\xca\xd2\x97\x68\x81\x5f\x83\xb4\x6c\xca\xc2\x34\x65\x89\x17\x5b\x4d\xb9\xc6\xbf\x82\xa5\x69\x4c\x1b\xa2\x5b\x7c\x3d\xf4\x47\xe8\x0a\x5f\x0f\x83\xd1\x9e\xae\xf9\x16\x51\x70\x85\x92\x8a\x4e\x6c\x51\xad\x7c\xa1\x2a\x2f\x6c\x95\x53\x28\x85\x29\x5f\x37\xe7\xef\x78\xc3\xb8\x1d\xfd\x86\xff\xae\xa9\x39\xfa\x19\x83\xbf\x7b\x0b\xb2\xfc\xa8\xf9\x8b\x25\x12\xaf\x21\xfa\x0e\x73\x60\xdb\x98\xfe\x75\xcb\x6e\xfc\xf4\xb4\xea\x22\x17\x7c\xe7\x5d\x19\x1f\xb7\xea\xea\x2a\xc3\x18\xc7\xab\x95\xdc\x71\xb0\xd5\x6a\x9f\xa5\x4f\x58\xcc\x04\x05\xac\xbc\x64\x81\xc4\x68\x8f\x9d\xfb\x03\x40\xf5\x0e\x70\x1a\x25\x09\x07\xf4\x90\xc1\x03\x86\x84\x4e\x1b\x53\x16\x01\xa1\x92\x60\xc8\xce\xf4\x76\xab\xfc\x42\x0f\x18\x3c\x2c\x80\x75\x01\x42\xa5\xa9\xab\x19\x7a\x27\xfe\x4b\x9d\xe4\x5f\x96\xa1\x9e\xa2\x64\x06\x32\x29\x75\x1d\xaa\xd7\x67\x2f\xda\xd0\x0d\xac\xcd\xc1\xdf\xbe\x84\x66\xf9\xbf\xf1\x96\xb0\xf1\x0a\x09\xfc\x12\x71\xfc\x8b\xed\x40\x8b\xc1\xbb\xaa\xd8\xc8\xa4\xd8\xc8\xb0\xc5\x61\x99\xf1\x0b\x90\xa8\xfb\xfd\x2c\xa7\x1f\x99\xd5\x9e\x54\x37\x35\xc1\xfe\x69\x72\x96\x9e\xba\x6e\x02\xb3\x61\x32\xc2\x14\xb0\x61\x32\x42\x09\x32\x8b\x31\xc2\x02\x64\x10\x8d\x71\x24\x91\x76\x8a\xa3\x61\x30\x42\x13\xcc\x41\x86\xc6\x68\xaa\xe3\xc8\x56\x9b\x33\x81\x6a\x85\x4f\xb0\x3b\x41\x02\x63\xfc\x52\xf7\x66\x5e\x6f\x1d\xf1\xb0\xd3\xfa\xb7\xee\xb4\x3e\x5b\x9d\xfd\xb7\x6f\x58\x62\xfc\xdb\xa6\x3a\xfb\xff\xc6\x4d\x28\xf8\x2b\x18\xa3\x29\x9a\x40\xd4\x86\x7b\x63\x3c\xd7\xcb\x72\x3e\x0c\x46\x6b\x30\x29\xc9\x31\x81\x06\x0c\x0e\x27\xa5\x41\x18\xc6\x78\xaa\x1c\x77\x24\x4b\x89\x43\x06\xc5\x97\xb8\xf0\xb2\x31\x19\xfa\xa3\x33\x3c\xb6\xbc\x6d\xa0\x56\x6b\xa9\xed\xbb\x26\xc3\x65\x2b\x18\x9d\x4f\xe5\x47\x55\x80\xfa\x24\x0b\x58\xa0\x6b\x8b\xb4\x2c\xdd\xc0\x26\x2e\x78\xa9\xa8\x0b\x58\xe0\x6b\x49\x60\x86\x23\xe8\x7d\xf0\x71\x72\xee\x0f\x26\xc3\xa4\x15\x8c\xc2\x31\x5a\x78\x1f\x02\x9c\x9c\x2d\x65\xca\x28\x9c\x6e\x51\xa6\xf1\x99\x5c\x69\x92\x3e\xc1\x66\x93\x9c\xc9\x3e\x5c\x0f\x4d\x57\x63\x6f\x02\xc1\x04\x11\xe4\xa3\x25\x1c\xe5\x2e\x49\x92\xf2\xd6\xd1\x75\xbe\x2a\xcc\x01\x1b\xae\xb1\x14\xdd\x14\xb5\x24\x57\xaa\x33\xae\x1b\x88\xf0\x67\x20\x20\x62\x30\xa4\x6b\xc4\xbc\x49\xb2\x20\x2c\xae\xe3\x30\xdb\x25\xd6\xfa\xe5\xa6\x03\x1a\xfe\x0c\x86\x52\x82\x42\x74\x18\x8c\x46\xaa\x6c\x21\xcb\x16\x73\x4e\xd3\x79\x12\x4d\xd2\xfb\x95\x5f\xeb\xb2\xae\x34\x9e\x2d\x69\xea\xe0\x67\xf0\x5b\xbe\x80\x61\xf8\x33\xa0\xaa\x4e\xbe\x46\x6c\x8d\xfe\x0b\x73\x70\x0c\xd1\x3f\xb6\x3c\x7f\x6c\x31\x4e\xc0\x5b\x02\x1e\x82\xf6\x01\x30\x13\xf1\x5f\x12\xe7\x28\xf2\x8e\x7a\xb0\xb5\x91\xd4\xee\x41\x78\xa0\xb2\x2e\x93\x1b\xc5\x69\x51\x2b\x38\xec\x40\x08\xd7\xe8\x7f\xee\x5d\x55\xc7\xeb\x1d\xdc\x00\xba\xb3\x24\x4a\x31\x07\xc1\xb1\x25\xb8\x68\xdf\x6a\x5f\xcf\x59\x21\xa7\xdf\x30\x75\x35\x9d\x7b\x38\x2d\x7c\xd0\x62\xdd\x4b\x8b\x65\xf0\xe5\x4b\x28\x6a\x62\x5a\xb5\xae\x6b\x05\x88\xe1\x56\x50\x77\x32\x22\x07\x59\x92\x8d\x72\x6b\x47\xcc\xd6\x2e\xc1\x64\x6b\x6b\x97\xe2\xc4\x1c\x52\xb8\x2e\x43\xda\x30\x22\x55\x67\x3d\xe9\x6a\x65\xbb\x9c\x4b\xcf\x71\xaa\x64\x43\x9c\xca\xad\x89\xbd\xcf\x23\xd5\x7d\x1e\xd9\x38\x39\xc9\x50\xb4\xd1\xa0\xdc\x4a\x23\xab\xb5\xd2\xc8\xea\xad\x34\x98\xb1\xd2\xe0\x67\xe3\x6a\xcb\xc6\xe7\x78\xac\x5b\x36\xde\x6c\xd9\x47\xaf\xd4\x58\xc3\xcb\xbe\x32\x32\x9b\x7c\xcb\x64\x36\x79\x20\xb3\x0f\x64\xf6\x33\xc8\x6c\xf2\xe5\xc8\x2c\xa1\xdb\x57\x30\x76\xd8\xc5\x31\xfa\x47\x0c\xe3\x08\x76\x09\xd4\x16\x71\xae\xcb\x51\xec\x62\xf2\x7b\x6c\xdf\x58\x2d\x59\xfd\x83\xb7\x12\xf3\x16\x8d\x3f\x4d\x49\xd9\x14\xf0\xe2\x7a\xcb\x21\x57\xd8\x67\x5f\x46\xdf\x76\x71\x56\x48\xd4\x3d\xe5\xcc\x2c\xa3\x98\xd3\x19\x8d\x35\x16\xbe\xce\x62\xc1\x16\xd4\x5b\x10\xfe\x1e\x4c\xa9\x25\x07\x47\x5f\x19\x81\x1e\x7f\xcb\x04\x7a\xfc\x40\xa0\x1f\x08\xf4\x67\x10\xe8\xf1\x97\x23\xd0\x53\x5a\xb8\xb9\x42\x1c\xc5\xc5\x65\x87\x6d\x1a\x72\xc3\x2b\x17\xf8\x98\x89\xb4\x77\x0a\xd3\x1b\x26\x69\x1a\xf3\x96\x9c\x5e\x63\xa6\xc6\x0f\xde\x8d\x49\x4a\x1b\x7e\x28\xb0\xa4\x34\x10\x99\xaf\x01\x12\x92\xa6\xee\xa9\xaf\x9d\x90\x4d\x01\xe0\x58\x94\xc4\x15\xde\xe9\xfc\xf8\xb8\xea\xd6\x25\xc6\xdc\x1c\x97\x30\x6f\x42\x23\x3a\x23\x82\xfe\xc2\x68\x34\x01\x31\x72\x84\xef\xa0\xbe\x29\xb3\x1f\x9a\x02\x3a\xba\x00\x9d\x7a\x9c\xa7\x06\x95\xe4\xc0\x0f\xf3\x76\xf9\x88\x79\x22\xc0\xcc\xd3\x04\x3a\x50\xbe\xba\x80\x4c\x33\x05\x07\x9d\xb0\x50\x1a\xe9\x2c\x1d\x24\x24\xd1\x46\xcc\x9b\xb2\x98\xa5\x73\x10\x74\x72\xd8\x7e\x28\x7f\x1d\x1a\x4f\x9c\x32\x57\x2a\x94\x8a\x6d\x0d\x51\x46\xd5\xc6\x00\x0d\x87\x01\x0a\x7c\x14\x74\x50\xd0\x1f\x8d\xec\x88\x58\xd4\xd2\xeb\x58\xf4\x48\xcd\x96\x46\xf9\xb9\x52\x6d\xf8\x16\x49\x5f\x7e\x65\x24\x7d\xf1\x2d\x93\xf4\xc5\x03\x49\x7f\x20\xe9\x9f\x41\xd2\x17\x5f\x8e\xa4\x5f\x7f\x9e\x6a\x63\xf9\xc7\x55\x1b\xe7\x7f\xaa\x6a\x63\xf9\x27\xaa\x36\xce\xff\x7c\xd5\xc6\xed\x57\x46\x66\xaf\xbe\x65\x32\x7b\xf5\x40\x66\x1f\xc8\xec\x67\x90\xd9\xab\x2f\x47\x66\x67\x55\xc9\x79\xcb\x36\xeb\x3c\x68\x36\x8b\x60\x29\xa5\xf5\x55\x30\x1a\xd8\x2f\xe1\xa5\x8a\x65\x33\x42\x09\xde\x0f\x10\xc1\xb7\xb5\xd4\x98\xd7\x52\x63\x23\x12\xef\x25\xcd\xa6\x76\x6a\x09\x62\x20\x50\x0a\x21\x12\x38\x95\x05\xfa\x9f\x22\xbc\xb9\x6c\x6a\x5d\x3a\xa7\xb6\x8e\x41\xd9\xe4\x28\x3c\xb9\xd9\xa1\x84\xb0\x96\xbc\xed\x78\x73\xc3\x5d\x3c\x84\x6b\x74\x21\x05\xd6\x76\x17\xa2\x37\xf2\xa1\xd3\xb6\x24\xd7\x97\x5f\x19\x49\xfd\xf0\x2d\x93\xd4\x0f\x0f\x24\xf5\x81\xa4\x7e\x06\x49\xfd\xf0\xe5\x48\xea\x23\x9b\xa4\xfe\x5e\x82\xca\x3c\x82\x62\xac\x63\x3e\x07\x72\x95\x14\x28\x5c\xda\xbf\xbd\xa4\x9f\xed\x2b\x03\x45\x98\x83\x0c\x9e\x82\xd8\x44\x4d\x06\xcc\x23\x10\x44\x28\x81\x67\x7e\xe8\x17\x1e\xa5\xf3\xe4\x08\xea\xc1\xc9\x50\x82\x23\x65\x51\xf6\x19\xee\x33\xc6\x68\xba\xd1\xc6\xdc\x75\xc6\xb8\xd6\x75\xc6\x38\xbf\x17\x15\x0f\x38\x98\x20\x91\x37\x49\xbe\x4c\x4c\x43\x26\x5b\x8d\xa8\xf7\x90\x91\xdb\x93\x5a\x57\x2b\xbf\x32\xf2\xfc\xfe\x5b\x26\xcf\xef\x1f\xc8\xf3\x03\x79\xfe\x0c\xf2\xfc\xfe\xcb\x91\xe7\xe7\x7f\x12\x79\xde\xa2\xcc\xb9\x59\x1e\x55\x6e\xe1\x34\x0a\xa3\x04\x2b\xf7\x73\xad\x00\xa5\xf8\x6d\x2d\xbd\x8e\x6b\xe9\x75\x5c\xe8\x28\x08\x02\xc9\x99\x3f\xd0\x84\x30\x43\x19\x0c\xe5\x8f\x24\x8e\x25\x69\x26\x9f\xa4\xca\xc5\x5d\xdb\x62\x1c\x5e\x7d\x65\xf4\xf0\xd7\x6f\x99\x1e\xfe\xfa\x40\x0f\x1f\xe8\xe1\x67\xd0\xc3\x5f\xbf\x1c\x3d\x7c\xfd\xa5\xc4\xd5\x57\x7f\xaa\xb8\x7a\xfe\x6f\x11\x57\x5f\xfd\x11\x71\xf5\xfc\xcf\x14\x57\x1f\x7f\x65\xe4\xf9\xe9\xb7\x4c\x9e\x9f\x3e\x90\xe7\x07\xf2\xfc\x19\xe4\xf9\xe9\x97\x23\xcf\x3f\xfc\x9b\xc5\xd5\x78\xa7\xb8\xfa\xf8\x4f\x15\x57\xcf\xff\xa0\xb8\xfa\xa2\x62\x83\xf7\x9c\x56\xbd\x5a\x9e\xf9\x03\x3d\x0c\xa1\xb6\x36\x7b\x46\xf1\x13\xaa\xef\x40\x72\x12\x4f\x92\x85\xa5\xa7\x7d\x42\x77\x78\x57\xdf\x7d\x1d\xfb\x9e\xc3\xec\xd7\x29\xd0\xdb\xb5\x59\xdb\x76\xd6\xf6\x28\xcc\x7d\x3c\x21\x86\xe3\x16\xe0\xd8\xe5\xf0\x94\x15\x7e\x6a\x28\x80\x07\xac\xd5\x5a\xf9\x88\x60\x31\x64\x2e\x1f\xed\xe9\x1f\x2c\x86\x89\xcb\x47\x48\xff\x60\x52\x32\x12\xeb\xbe\xf7\x57\xc6\x49\x7e\xfa\x96\x39\xc9\x4f\x0f\x9c\xe4\x81\x93\x7c\x06\x27\xf9\xe9\xcb\x71\x92\xef\xe9\xbd\xc2\xa9\xfc\x8b\xfe\x7e\xff\x59\x80\xbb\xf8\x77\x79\xcf\xaa\x56\xfa\x3b\xdd\x67\xc9\xda\xef\xed\x3c\xab\xa1\x19\xc5\x8f\xb4\x72\x09\x51\x79\xad\x63\xe5\x98\xe7\xb7\xfa\xcb\xe8\x74\x42\x36\x38\x27\x5b\x60\x4e\xb5\xdd\xf2\xdf\x29\xac\xba\xec\x80\xa7\xae\x2b\xce\xf8\x69\x11\x92\x9a\xe5\xbc\x55\x05\x38\x2f\x21\x99\x84\x4c\xce\xd8\x29\x24\xea\x9a\xfa\x30\x19\x0d\x85\x35\x7d\x25\xdf\xfa\xbb\xcd\xb7\x8a\x80\x24\xb2\xec\xdf\x28\xde\xa6\x09\x3f\xd2\x32\xfa\x1f\xb4\x8a\xf9\xf9\xcb\x61\xdc\x77\xb4\xbc\xcf\x5e\x5c\xe1\x2c\xae\xb3\x8b\x7a\x77\x80\x92\x92\x36\x98\x0e\x3c\x66\xfb\x00\xdc\xab\x58\x02\x55\xb9\xce\xd7\xc2\xda\x7e\xfe\x96\x59\xdb\xcf\x0f\xac\xed\x81\xb5\x7d\x9a\xb5\xd5\x71\x0f\x5e\xe5\x1e\x92\xca\x0a\x90\xdb\x42\xbb\x6e\x8c\x0a\x87\x18\xfb\xc1\x27\x98\x87\x01\xb3\x22\xe6\xfe\xf5\xcb\x11\xb4\x5f\xfe\xbf\x46\xd0\xfe\xfa\x2d\x13\xb4\xbf\x3e\x10\xb4\x07\x82\xf6\x67\x11\xb4\x5d\xf4\xcc\xbf\x1f\x3d\x0b\x4a\x22\xf3\xb7\x2f\x47\xcf\xfe\xfb\xdf\x42\xcf\x86\x23\x65\xaa\x8d\x6a\x83\xe2\x7e\x05\x44\xed\x6f\xdf\x32\x51\xfb\xdb\x03\x51\x7b\x20\x6a\x9f\x47\xd4\x92\x82\xa8\xd5\xdd\x52\xce\xed\x73\x05\x20\xe6\x4e\x42\x11\x04\xfd\xd3\x97\x93\xb7\x49\xce\x7f\x7d\x94\xe4\xd4\xac\xfb\x5a\x84\x50\x4d\x4a\x73\x2a\x94\x4f\xae\xa3\xdc\xb6\xdd\x9f\x92\x2d\xc8\x72\x49\x79\x2d\x2d\xdb\x36\x0c\xb6\x03\xf5\xdb\x4e\x20\x85\x7c\x43\xb4\x1a\x2c\xff\x1f\x34\x77\xfa\xf3\x59\x0d\xe2\x74\x92\x8d\x77\xb4\xc8\xe8\x67\x24\x16\xd4\xe0\x97\x52\xda\xcb\xde\x6f\xea\x9f\xcf\x3a\xe5\xb5\x17\x83\x6d\x6c\xaa\xb4\xf8\x0a\xd3\x78\x7e\x01\x1c\xc5\x86\x3c\x9e\xba\x2e\x51\x1e\xb4\x4e\x63\x0c\xb2\x22\x97\xc6\x0a\xc4\xf2\xcb\x2a\x68\x3f\xce\xb5\xff\x7b\x1c\xcb\x41\x60\xc8\x75\x09\x2a\xfd\xba\x5b\xb1\xa5\xfe\x87\xe6\x44\xf9\xdf\x30\xe5\x35\x53\x05\x3d\x4e\xaf\x29\x4f\xa9\xed\xdc\x9a\x8a\xe2\x24\xe5\x0f\x9e\xa3\x7c\xb1\x5e\xa4\x09\x17\x40\x58\x7d\x10\xe2\xeb\x62\xa5\x5c\x7c\xc3\xac\xd4\x74\xee\x81\x95\x3e\xb0\xd2\xfb\x39\x7e\x12\x5f\xce\xf1\x93\xa2\x65\x54\x65\x7c\xa3\x08\xdb\xde\x9f\xef\x5f\xb9\x50\x5d\xab\x88\x8d\xfc\x94\x9d\x25\xb9\x3b\x45\x96\xc7\x3c\x21\x28\xc5\xc9\x90\x8d\x50\x86\x85\xb0\x1d\x07\xdf\x4b\x87\xbf\x47\xd5\x3d\x78\x41\xef\x1f\xf4\xa2\x41\x2d\xff\x4c\x5f\x6e\xc0\x13\x51\xbd\x8e\x2a\xea\x78\x30\xcb\xe7\xe3\xab\xdd\xfa\xb0\x6f\x99\x5e\xb3\x07\x7a\xfd\x40\xaf\xff\x1d\x5b\x1f\x36\x05\xcc\x9b\x93\x14\x90\x52\x4d\x5d\x10\x94\xd4\x38\x57\x46\x99\x79\x38\x4d\x31\x88\x70\x5c\xc8\xcd\x5a\x5c\xce\x70\xa4\x3b\x18\xe5\x44\x50\x16\x9b\x41\xed\xc8\x83\x4d\x8d\xb7\x51\x8f\xa5\x80\xa0\xd4\xaa\x87\xa9\xa0\x40\x29\x5c\xdf\x6f\xaf\x65\x6b\xc6\x89\xb0\x4f\x0c\xed\x58\x5c\x6f\xa8\x18\xd0\xb0\xe4\x1e\x65\x9e\xf4\x2b\x93\x30\xb3\x6f\x99\x62\x65\x0f\x14\xeb\x81\x62\x7d\x86\x84\x99\x7d\x39\x81\x27\x12\xff\x9e\xa0\x1d\xb6\xcc\x8a\x38\xe6\xde\x82\x2c\x01\x31\x0b\x9c\xa1\x04\xa7\x22\x27\xd0\x34\xfc\xa4\x0f\x3d\x15\x05\x20\x27\xb0\x6a\x4d\x7d\xa6\x00\xca\xa6\x60\x3f\x52\xb4\x3d\x85\xf0\xae\x10\x47\x53\xb8\x37\x4e\x62\xc1\xe2\x8c\x36\xe8\xfa\x93\xa2\xe9\xfd\xb4\x60\x96\xe4\x3a\xfe\x72\x13\x39\xdd\x90\x5c\x6b\xb5\x47\x5f\xbf\xe4\x3a\xfe\x96\xf9\xc0\xf8\x81\x0f\x3c\xf0\x81\x7b\x48\xae\xe2\x77\x48\xae\xfb\x85\xe8\xfa\x27\x49\xac\xa5\x64\x2a\xc5\x62\x2d\x9c\xa2\x0d\xe9\x55\xbb\xbd\xfb\x7c\x89\x75\x22\xaa\x41\x54\x04\x10\xc8\x96\x4e\xe7\x5f\x99\x74\xba\xfc\x96\xa9\xd2\xf2\x81\x2a\x3d\x50\xa5\xcf\x90\x4e\x97\x5f\x4e\xa8\x59\x08\x50\x0a\xa7\x85\x48\x89\x3e\x25\xa6\xc2\x3c\x80\x73\x2e\x9e\xfe\x31\x8d\xe7\xfc\x77\x69\x3c\x3f\x2b\xc6\x6f\x83\xae\xb9\x37\x01\x02\x39\x57\x2c\x95\x74\xc2\x3a\x85\x2c\x97\x8c\x37\x59\x43\x88\x2a\x80\xaf\xd9\x6c\xbe\x0b\x7a\xbc\x05\xfd\x8c\x4e\x77\x01\x5f\x6d\x01\x3f\xa6\xb1\xa0\x7c\x07\x38\xb1\xc0\x49\x3a\xa6\xf1\x44\x52\xce\x3a\x58\x56\x81\xd5\x45\x27\xf5\xc5\x26\x15\xd0\x71\x92\xc5\xf5\xad\xcd\x6c\x28\x9e\xa4\x69\x2d\xd4\xc2\x86\xca\x16\x69\xb6\xa8\x05\xbb\xb6\xc0\x26\xf4\xa3\x5d\xb9\xad\x80\x5e\x33\xa2\x0e\x07\xeb\x20\x6f\x2c\x48\xfa\x41\xd0\x1d\x1d\x79\x69\x81\x4d\x77\x35\xf0\xb9\x05\xf4\x68\x32\xd9\x31\x25\xef\x2d\xa8\x19\x4f\xb2\x65\x2d\xd4\x0f\x9b\x50\xf5\x43\xf7\xc2\x02\x63\xf1\x84\x7e\xa8\x85\xfa\xd7\x26\x14\xad\x2f\xed\x27\x0b\x8e\x27\x51\xb4\xa3\x6d\xcf\xb6\xc0\xea\x8b\x7b\x52\x41\xa7\xfa\xf1\xff\x6f\x0b\x66\xce\x52\x91\xcc\x38\xa9\x1f\x5d\x1b\xb2\x08\x59\xf4\x84\x53\x3a\x59\x90\xf8\x07\x46\xc6\x49\xcc\xea\xdb\xf1\x8f\xba\x9c\x6f\xc6\x89\xa8\x9f\xeb\xff\xa9\x05\x17\x19\x9f\xed\x18\xb6\x5f\xac\x0c\x0b\x52\x3f\x05\x94\x56\x96\xcc\x82\x7c\x78\xba\x73\xba\x62\x6a\x43\x52\x52\x3f\x72\xa4\x0a\x35\x61\x3b\xe0\xd2\x2a\x1c\x9f\xd1\x5a\xb0\x49\x05\x6c\xc7\x6c\xcd\x37\x7a\xc1\xe2\xdd\xbd\xb8\xb6\x0b\x8c\xd9\xb8\xbe\xda\xbf\x5a\x40\x4b\xc2\x78\xfd\x08\xcf\xec\xb2\x96\x94\x2f\x32\x51\x5f\xdc\x8d\x0d\xf8\x5b\x46\x62\xc1\xa2\x7a\xc8\xff\xaa\xf4\x24\x07\x7d\x93\x70\x41\x27\x3b\x32\x5c\x55\x32\xb0\xf1\xfb\x94\x46\xbb\x58\xc0\x45\x75\xa4\x38\x89\x77\x8c\xfb\x9b\x2a\x60\x44\x49\x5a\x5f\xe2\x23\xba\x09\xb6\x7b\xec\x9f\xd3\x0a\xf9\xa0\x44\x8a\x90\xb5\x90\xaf\xeb\x20\x77\x17\xfc\x83\x0d\x9e\x8e\x77\xa0\xdc\x8b\x0a\xd4\x3c\x9b\x4e\x77\x4c\xc2\xb3\x1a\xc0\x7a\xaa\xf9\xa4\x02\xb9\x83\x00\x7f\x6f\x03\x09\x39\x41\xb5\x60\xdf\x55\x46\x5c\xc2\x3d\x8d\xc7\x9c\x2e\x76\x11\xff\xef\x2a\x33\x2f\xe1\xdf\x08\x5a\x4f\x1a\xbf\xab\xf0\x72\xc1\x49\x9c\x2e\x93\xb4\xbe\xf3\x3f\xda\xad\xbd\x26\x9c\x49\xf1\xb6\x16\xf2\xd2\x02\xfc\x17\xab\xaf\xf9\x37\xbb\x34\x7a\x4d\xf9\x6d\x7d\x03\x2b\xe3\x98\x2c\xea\x2b\xfc\xc5\x86\x9a\xb2\x68\x97\x78\xf1\xdf\x15\xa2\x41\xea\x5b\xf6\x5f\x36\x90\xb6\xa8\xaa\x27\xd3\x55\x38\x65\x2f\x54\x4f\xa0\xab\x7d\xe0\xf5\xb3\x46\x85\x2d\x04\xb0\xe9\x94\x72\xba\x6b\x80\xe3\x2a\x6c\xfa\x6b\xc2\x76\xe0\x42\x22\x2a\xbc\x54\xc8\x46\x8e\x77\x4a\x17\x91\xa8\x60\xed\x55\x4a\xeb\x4b\x9d\x54\xe1\x96\xb2\xd4\x7a\xc8\xa9\x0d\x99\xc5\xbb\x2a\x5e\x08\xe5\x1d\xd3\xde\x3f\x23\x0e\xef\x9c\x2c\xa5\x0d\xb9\x79\x1e\x0b\xa7\xbc\x81\x66\x6b\x16\xf3\x3d\xf3\x58\x91\x02\x40\xcb\xcd\x73\xb9\x47\x88\x1b\x2c\x6e\x08\x2d\xae\x0b\x2b\xf0\x33\x2f\x44\xe3\xfa\x41\x96\x2d\x17\x1e\xd9\x8a\xc3\x67\x55\x82\xad\xdd\x3a\xe6\x88\xdb\x9b\x6d\x4c\xd7\x9f\xe8\x51\x2e\x43\xd6\xcf\x9c\x2d\x8d\xd4\x73\x54\x5b\x54\xae\xe7\xa5\x6b\x98\x6f\xa3\x39\x08\x6c\x67\xa3\xac\x3e\xd8\x6c\x19\x65\x90\xba\xfc\xc0\xbe\x05\x9e\xd8\x83\x2e\x5a\xb4\x18\xc4\x81\x2c\x8a\x9f\x07\xc7\xfe\x6a\xc5\xcf\x5a\xc1\xb1\x3f\xe0\xad\x4e\xdf\xd7\xd1\x08\x79\x92\xc5\x13\xc0\x0f\x3b\x7d\x1f\x86\x1c\x86\x45\x70\x4a\x02\x01\x4b\x5f\x90\x17\x80\xc2\x81\x08\x6d\x1d\x0d\xb1\x0e\x1d\x03\x8c\x01\xc5\x2e\x85\x03\x6b\x63\x6b\x07\x43\xe4\x2d\x31\xd8\x1c\xe3\xbc\x07\xb8\x88\x87\x48\x11\x87\x79\x38\x64\xf9\x2e\xc1\x5a\x14\x71\x1c\x1c\xf2\x72\x8a\xe2\x6a\x88\x45\x95\xd1\x8d\x0f\x24\xf0\x7a\x2d\xf3\x20\x5a\xd7\x01\x01\x07\x3c\x14\xd0\x1a\xab\xf4\xe3\x63\xf5\xb1\x51\xb8\x1f\xc6\xd4\xcf\x36\xb3\x89\xc2\x27\x71\xaa\x1e\xeb\x6c\x9c\xfa\x34\x71\xaf\xdf\xcd\xbc\xb1\x89\xf1\x27\xb7\x27\xf5\xb8\xfd\xc1\xc6\xdc\x6e\x05\x71\xe1\x9d\x56\x7e\x60\xef\x08\x11\x1c\x1c\x26\x28\xc5\xce\xbb\x77\xe9\x01\x18\xba\xad\xd1\xe0\xdd\xbb\x89\x0b\xe5\xab\x83\xb2\x8d\xf4\x83\x77\xef\x3c\xf5\x1d\x0c\xc2\x21\xbd\x18\x95\xf0\x03\x93\x23\xfa\x8c\x1c\x7f\xd1\x59\xc6\xf8\xf0\x9f\xff\x01\x86\x7e\xeb\x84\xb4\xa6\xa3\xbb\x0e\x3a\x5e\xc3\xef\x0e\xd1\x54\xe9\x0d\x5e\xd3\xd9\xc5\x87\x25\x70\xfe\xc9\x67\x57\xef\xde\x01\xc7\x1d\xa6\x28\x45\xe9\xc8\x75\xde\xbd\x83\xdf\x39\x10\x4d\x76\x80\x45\x28\x42\x51\x09\x36\xdf\x02\x23\x56\x71\x28\x2b\x21\x97\xbb\x20\x55\x89\x36\xe4\xa2\x0a\x39\x4f\x23\x0d\x98\x55\xab\xbe\xde\x02\x23\x16\x9c\x5d\xe0\x2d\xbe\x23\x11\x1b\xd3\xab\x28\xa3\x61\xd0\x3b\x3a\x69\x77\x8e\x3b\x48\x0a\xaa\xbf\x65\xf4\x66\xce\x04\x0d\x83\x7e\xb7\xdb\xed\x1c\xf5\x10\xf9\x2d\x23\x61\xbf\xd7\xeb\xe8\xc7\x05\xe1\x2c\xa6\xe1\x71\xe7\xf8\xb8\xd7\xef\x22\xf2\xaf\x8c\xeb\x22\xba\xc1\x51\x0f\x5d\x51\x36\x93\x79\x83\xe0\xa4\xdd\xf7\xd1\x15\x4b\x7f\x93\x35\xf4\x8f\x8e\xfc\x76\xb7\x8b\xae\x22\x32\x7e\x1f\xfa\xf2\x37\x1e\xcf\xe9\x84\x44\x8b\x24\x9e\xa8\xef\x6d\xbf\xdb\x43\xaa\x3d\xed\x9e\x7e\xb8\x66\x49\x44\x45\x78\xe2\xf7\x7a\x6d\xbf\x8d\xae\x78\x72\x13\x87\x81\x7f\xdc\xee\xb6\x3b\x5d\x74\x95\xf1\xe8\xf6\x26\x49\x26\x61\xd0\xed\x9d\xf4\xdb\x9d\x00\x8d\xc9\x84\x0a\x55\x44\xbf\xdd\xef\xf7\xda\xc7\x68\x3c\x27\x5c\x70\x9a\xa5\xba\xc1\x9d\x5e\x1b\x8d\xe7\xc9\x38\x89\x88\xec\x61\xe7\xe8\xf8\xa4\x7b\xe4\xa3\x71\xc2\x49\x24\x1b\xd1\xed\xb6\x8f\xda\xf2\x35\x9e\x46\xc9\x0d\xe5\xba\xac\xde\x49\x70\x72\x1c\xa8\xe4\x94\x45\xef\x55\x6b\x7b\x9d\xe3\x63\x34\xe6\x6c\x91\x26\x71\x18\x74\xbb\xed\x4e\xe0\xfb\x68\x7c\x4b\x62\x33\x54\x13\xc2\xdf\xeb\xd1\xed\x9c\xa8\x17\xf5\xad\xd3\x3b\x6a\x77\xd4\xeb\x2c\x89\x26\x34\xe6\xb2\xf9\x6d\xff\xa4\x7d\x62\xa0\x66\x9c\xdc\x86\x41\x10\x04\x27\x7e\x70\x64\x52\x28\x8d\xc3\x76\xaf\xef\xfb\xf9\xfb\x06\xc4\xfb\x39\x79\xcf\xc2\xa0\xdd\xed\x74\xda\x3d\x5d\xcc\x82\xcc\x68\x2c\x48\x78\x12\xf8\x27\xfd\xae\xae\x31\x89\xd8\x35\xd5\xa5\xf5\x7a\x27\x47\x27\x27\x1a\x34\x51\x1b\x08\xd5\xfb\xa3\x5e\xdb\x37\x69\xe3\x39\x9b\x84\x81\xef\x77\x7d\x3f\x68\xab\x34\x4e\x27\xaa\xb8\x9e\xdf\x55\xef\xa9\x9a\xbb\x30\xe8\x75\xfc\xe3\x6e\xa0\xf3\xa5\x94\xe8\x0a\x4e\xba\xc1\xc9\x49\xa0\x2b\x48\xe5\x60\xab\xa1\xe8\x1e\x75\xba\x9d\xee\x51\x99\xaa\x7a\x2b\x47\xae\x7b\xd2\xb3\x53\x69\x35\x55\x64\xfc\xb7\x2c\x61\x29\x0d\x7b\xed\x93\xae\x4e\xcb\x91\xa3\x7f\x72\xd2\x93\x63\x47\xe9\x72\xc9\x62\x35\x39\x41\xff\x44\x56\x42\xe9\x32\x7d\x7f\xab\x2b\x3e\x09\x7a\x01\x9a\xb0\x85\xaa\xb0\x7f\xe2\x1f\xb7\xfb\x3d\xfd\x4e\xad\xf7\x64\x32\x33\x73\xde\xf6\xfd\x4e\x70\x72\x82\xa6\x8c\xd3\x2b\xce\xc6\xef\xc3\x40\x0e\x50\xd0\xed\xa3\x69\x24\xb1\x25\x5f\x23\x47\x47\xbd\x93\xb6\x8f\xa6\x09\xa7\xa9\x30\x53\xd5\xee\x77\x8e\xbb\x6d\x34\xcd\xc6\xf3\x94\x11\xd5\xa2\xe0\xa4\xd3\x43\x33\xc2\xe2\xf4\x2a\xe1\x89\x44\x98\xa3\x6e\xb7\xef\xa3\xd9\x3c\x49\x45\x5e\x56\x27\xe8\xf7\x8f\x02\x24\x31\x43\x66\xea\xf7\x8f\xda\x3e\xb2\xf0\xa4\xdb\x69\x9f\x04\x32\x49\x76\xe2\xb8\xdb\x0e\xe4\x54\xe8\x3a\x3b\xed\xa3\xfe\xb1\x7e\xbe\xa5\x51\x94\xdc\x84\x41\xd0\xf5\x3b\x7e\xaf\x87\x54\x17\x73\xe8\x79\x12\xd3\xdb\x09\xbd\x31\x0b\xb6\xef\xa3\x79\x22\xf2\x71\xeb\x1c\x1f\x75\x7d\xc4\x62\xb9\xdf\x97\xb3\x1d\x74\xba\xbd\xe3\x5e\xbb\xab\x92\x66\x89\x1a\xc5\x4e\xc7\x47\xec\x3a\xe1\xb7\xaa\xef\x47\x6d\xdf\x47\x06\xfd\x7a\x47\xc7\x47\xfd\xbe\x8f\x22\x72\x4d\xe3\x09\xe5\x61\xd0\x0b\x3a\x6d\x89\x19\x79\xca\x55\x94\xa5\x73\x95\xaf\xd3\xe9\xf7\x50\x44\x6e\x62\xdd\xfa\xe3\xe0\xc4\x3f\x39\xea\xa3\x88\x2e\x92\x78\x3c\x67\xd3\xa9\x44\x2c\x39\xb6\xc7\xc7\x3d\x14\xb1\xd9\x5c\xaf\xea\x20\xe8\x9c\x74\xda\xbd\xae\x4e\x32\xab\xb6\x77\xd4\x0f\x7a\x9d\xbe\x49\x93\x8b\x2c\xe8\x1e\x75\x7b\xbd\x93\x13\x9d\x54\x0c\x60\x3e\x30\xfd\x6e\xf7\xb8\x2d\x9b\xa5\xbe\xaa\xf5\xd6\x39\x3e\x6e\x77\xda\x9d\x3c\x49\x63\xf0\xc9\x71\xbb\xd7\x2f\x92\x36\xa1\xf2\x41\xeb\x1d\x77\xfb\xa6\x8d\xf9\x8a\xe8\x1f\xf5\xda\x47\xfd\xb6\x49\xcc\x97\x44\x3b\xe8\xb6\x8f\x4f\x4c\xb5\x39\x62\x1e\x9f\xf8\x7e\xa7\x6b\x6a\x29\x97\xc4\xd1\x71\xa7\x73\xd4\xeb\x54\x92\xe9\x66\xb2\xa0\x34\x32\xc3\xd2\x3b\x96\x4b\x4b\xa7\x17\xdd\x3c\x3a\x3a\x0a\x8e\x65\xe2\x42\xd2\xb0\xf6\xb1\xaf\x1e\x0d\xbe\x74\xda\x27\x72\x2a\x23\x16\xd3\x58\x0d\x49\xaf\x7f\xe4\xa3\x9c\x6c\x14\x28\xbb\x20\x3c\x49\x62\x45\x3b\xfb\xfe\x31\x5a\xd0\x09\xcb\x16\x16\x17\xe8\x1f\x75\x8e\x3a\xed\xb6\xf9\x60\x96\x4e\xcf\xbc\xe6\x54\xa4\xdd\x0e\x24\x66\x9b\xd4\x65\xc6\x97\x11\x0d\x4f\xfa\xfd\x76\xff\xb8\x63\x12\x8b\x51\xea\x9c\x1c\x1d\xfb\x27\x39\x6c\x49\x3a\x8e\xfd\xe3\xa3\xa3\x13\x3f\x4f\x5f\x72\x16\xcf\x74\x8e\x7e\x37\xe8\x75\x4d\x7a\x49\x28\xba\x47\x47\xed\x8e\x9f\xc3\x6b\x62\xa1\x71\xda\xef\x1e\x05\x47\x1d\xb4\x60\x93\xb8\x44\xac\x7e\xb7\x7b\x12\xb4\xd1\x82\xc5\x42\x6e\x4f\x16\x92\x83\xb5\x83\xe3\x9e\x8f\x16\x2c\x15\xb7\x3c\x49\x73\x26\x26\xb3\x26\xe3\x31\x49\x59\x6c\x52\xda\x27\x28\x26\xd7\xe4\xd7\xa4\xa0\x09\xfd\xe3\xfe\x71\x4f\x26\xde\x86\x41\xfb\x18\x25\xd1\x24\x22\x63\xf9\xa5\xdf\xed\xf4\x7a\x32\x81\x5d\x53\xb5\x26\x3b\x47\x7d\xfd\x36\xe1\xe4\x2a\x3c\xf2\xbb\xc7\x47\x9d\x13\x54\x92\xe4\x5e\x47\x52\x17\xfd\xae\x9a\xdf\x3f\x6a\x9f\x74\xba\x5d\x94\x8f\x6d\xb7\x13\xf4\xe4\xd4\x2f\x49\x44\x2d\x52\xd1\xeb\xf7\x8e\x82\x8e\xaf\x93\xd5\x30\x05\xbe\xdf\xee\x1d\x1f\xeb\xa4\x72\x9c\x82\xa0\xd7\x3e\x39\xe9\xf7\x55\xb2\x35\x4c\xdd\xce\x71\xd0\xf6\x3b\x68\x49\x96\xe4\x96\xdc\xcc\xd9\x52\x2f\x5c\xff\xe8\x08\x2d\x29\x19\xcf\x97\xd9\x74\xaa\xfa\x7a\xd4\x3f\xea\xa0\x25\xe5\x99\xa4\x17\xfd\xe3\x93\x93\x00\xe5\x6b\xa3\x1f\xf8\x9d\x1e\x5a\x46\xd9\x42\xf2\xe8\x76\xb7\xdf\x39\x42\xcb\xe4\x66\x62\x88\x6c\x10\x48\xce\x1a\xf8\xc8\xa0\x84\xc4\xb2\xa3\x4e\x1f\x71\x7a\x45\xc7\x63\x62\x52\xfb\xfd\x93\xa3\xe3\xe3\x00\x99\xee\x07\x41\xff\xd8\x47\x3c\x49\x6f\x8d\x3c\xd0\xee\xf4\x8e\x7a\xc1\x09\xe2\xc9\x2d\xd1\xeb\xa1\xdb\x3e\xee\x4b\x36\x91\x92\xc9\x24\xa2\x1a\xec\x24\x68\x1f\x05\xc7\x47\xa8\x58\xa3\xdd\xa0\x7f\x7c\xdc\x46\x29\x89\x27\x79\x49\x7d\xbf\xd3\x3e\xee\x77\x51\x89\x8c\x7e\xcf\xef\xb4\x8f\x64\x42\x3a\xa7\x91\x12\x11\x8e\xba\xfd\xce\x31\x4a\x19\x8d\x63\x12\x06\x7e\xcf\xef\x1f\x9d\x1c\xa1\x94\x45\xd7\x92\xe4\xb5\xfb\x9d\xb6\xa4\x1a\x95\xf5\xdd\x09\x50\x89\xc8\xfd\x93\x23\xdf\xef\x9b\x14\xbd\xd8\x3b\x47\xed\x93\x6e\x17\x59\xeb\x3c\x4f\x89\xcd\x42\xee\x9d\x74\x7c\x54\x41\xfa\x5e\xd7\x3f\x42\x25\x09\xe8\xf6\xdb\xfe\xc9\xb1\x8f\x84\x24\x7f\x1d\xb9\x58\xe4\x0b\x25\x51\xd8\x69\x1f\x9f\xf4\x91\x98\xb3\x54\x44\x34\x0c\xba\x6d\xbf\x7b\x7c\x7c\x8c\x44\xb2\x20\x22\x51\x54\xff\xc8\x3f\xe9\x21\x6b\xe5\xb4\x7b\xc1\x71\xaf\x8f\x0c\x83\x0d\x7a\xfd\x4e\xe0\x1f\xf7\xd1\xcd\x9c\x12\xa1\x24\xbb\x8e\xec\x51\xc9\x00\x8f\xda\x41\x4f\xbf\xa6\x8b\xe4\x7d\x2e\xfc\x1d\xf7\x90\x45\x89\xfa\x27\x7d\xdf\xbc\xe7\xe8\x18\x74\x7b\xfe\x51\xd7\xf2\x56\x73\x55\x6e\x29\x64\x73\x3d\x3e\xbb\x02\xd0\x9b\x26\x7c\x41\xc4\x8f\xf4\x83\x7d\xbf\x6b\xf6\x11\xd0\xd7\xf2\xd9\x8a\x0f\x62\xf9\xd4\xdb\x2b\xb6\x9b\x80\xba\x8e\x03\x3d\xc1\xd9\x02\x40\x4f\x24\xcf\xa4\xb4\xf7\x98\xa4\x14\x40\x04\x04\x1e\x7b\xf4\x03\x1d\x03\x0a\xe1\x00\x70\x2c\x86\xc1\x28\x3f\x63\x14\x78\x49\x78\x4a\x9f\xc6\x02\xc8\x64\x14\xf4\x21\xea\xab\x43\xf9\x1b\x20\x60\xd8\x51\x8f\x52\x0a\xff\x00\xc4\xf9\xf9\x71\x33\xe8\xad\xc4\xf9\x79\xb7\xd9\xee\xfa\x48\x3d\x04\xbd\x55\xbb\xeb\x37\x05\x02\x41\xaf\x29\xe0\xd9\x59\x77\x25\x1f\x50\x00\xc3\x63\x95\xf9\x42\x66\x6c\x77\x9b\x52\x0a\x16\xe7\xe7\x41\x3f\x7f\x3a\x56\x0f\xa0\xdd\x93\xf9\x0e\xdb\xbd\x1e\x0c\xbb\x65\x8e\xa0\x6d\xea\x3a\xce\xeb\xfa\x68\xe5\xd5\xda\x4d\x71\x71\x16\x45\x30\x04\x02\x4f\xcb\xfe\x9b\xbe\xc8\xbe\x8a\x61\x5b\xfe\xe9\x8c\x64\x63\x81\xc0\x93\x4d\xa8\x76\xaf\x77\x20\x21\x0f\xa5\x2c\xac\x5f\xda\xf6\x4b\x47\xbf\xe8\xdc\xf3\x32\xf7\xc5\x66\xf9\x62\xd8\x1d\x29\xa0\xa5\x0d\x74\xcf\xe2\x8b\xcc\x8b\x32\xf3\xf3\xb2\x06\x03\x53\x69\xcb\xf5\x3d\x20\x75\xb1\xb7\xde\x9c\xa4\x2f\x6f\xe2\x57\x3c\x59\x52\x2e\x6e\x01\x85\x83\x1b\x70\x3b\xa4\x23\x18\x1a\xa5\x2c\xe1\x34\x56\x86\x1a\xd4\x0c\xcb\x0b\xf2\x02\xe5\xff\x7d\x3d\xca\x25\x7e\xde\x58\x2a\x14\x0d\x4e\x8b\x49\xa7\xf9\xa4\xcb\x39\xa7\x28\xb0\xd0\xfa\x42\xeb\x1c\xac\xcb\xa9\xf1\x19\xf6\x95\x39\x86\xc0\x1c\xbf\x20\x2f\x20\x32\xc5\x19\xb8\x32\xef\x9b\x5d\xa6\xe2\x6c\xb5\x02\x14\xcb\x15\x03\x51\xde\x78\x40\x31\xd5\xeb\x0b\x7a\x1c\x51\x6f\x86\xa8\x77\x85\xa8\x97\x2c\xc9\x98\x89\x5b\xa8\x2c\xcb\x3f\x94\x85\xbf\xdc\x6a\x58\x80\xf1\xd6\x59\xfd\x40\xb6\x21\xac\x34\x50\x19\x12\xc4\x83\x20\xb4\x9b\x5a\x36\xff\x4e\x2f\x74\xec\x52\x45\xcc\xbc\x19\x76\x85\x7e\xba\xc2\x2e\xd7\x4f\xa6\x4d\xd8\xb5\x43\x74\x14\xa4\xc2\xf9\x0f\xc7\x7d\x0f\x74\x31\x30\x7f\x9a\x15\x4f\x57\x56\xb5\x6f\x0b\x63\x0b\xbb\x5c\x43\x3e\x94\x6f\x4d\x40\x71\xa1\x0d\x0a\x42\xa5\x84\x5a\x90\x0f\xc0\x47\xfa\x91\xc5\x20\x40\x14\x42\x38\x70\xe4\xd8\x39\xa1\xfc\x21\xc0\x81\x6e\x1d\xa8\x9c\x62\x4b\x05\x67\x9a\xb8\x5a\xf9\x10\xba\x0e\x6a\x38\xf7\xce\x34\xfb\x3d\x99\xae\x4c\x26\xd5\x2f\x3a\x70\xa0\x13\xaa\xfc\xd4\x75\xa0\x63\x0d\xca\xfb\x12\x6d\x24\x56\xdc\xa3\x78\xaa\x4b\x86\x67\x41\x7f\xe0\xf8\x4e\xe8\x38\xd0\x2d\x2d\xa5\x40\xd0\xb7\x4a\x7f\x5e\x8b\xd0\x83\x02\x9d\x43\x7e\x86\xfd\xd5\x8a\x9f\xe3\x40\x25\xca\x24\x91\xa3\x7c\x81\xee\xbf\xd6\xa0\xfb\x2b\x63\xda\x55\x41\xf5\x5f\xa1\xb5\xe6\x7e\x05\xd4\x9b\x23\xea\xa5\x88\x7a\x91\x85\xdb\x7b\x9b\xb9\xec\x05\xb2\x4f\x2b\x45\x6c\xc1\x16\x35\xd0\x3d\x6d\x56\x5d\x59\x49\x92\xe0\x22\x8e\xa9\x37\x53\x4f\x31\xa6\xde\x95\x7a\x4a\x70\x31\x9a\xba\x23\x88\x94\x43\x6d\x52\x52\xd9\x61\x94\x61\xd2\x4a\x50\x84\x01\x71\x13\x78\xd8\xce\x99\x5b\x36\x00\x29\x16\x72\xcd\x0d\x00\x6f\xc5\xf0\x30\x73\xfb\x07\x80\x9f\xc5\x30\xe4\x3a\x35\x6e\x09\x99\xda\x0e\x81\x68\x71\xf9\xd4\x45\xd9\x21\x8e\xce\xbc\xde\x80\xb8\x49\xd8\x6e\xc9\x72\xd3\x03\xdc\xf7\x61\x98\xe1\xe8\xdc\x6f\x36\xa3\xb3\x60\xe0\x87\xa9\x19\xe3\x14\x65\xc8\x1e\x27\xcb\x99\xf9\xc6\x7a\x9d\x17\xeb\x35\x2d\xd6\x6b\xf4\xd1\xf5\xfa\x7a\x43\x35\x2c\x49\x3b\xa0\x67\x7d\x7f\x20\x5c\xc0\x5b\x02\x1e\xd0\xc3\xbe\x1f\xd2\x33\xa5\xbd\x0e\xe9\x59\xbb\x5b\x7e\x02\xed\xae\xdf\xa2\x50\x02\x08\xb8\xae\xa8\x6e\xd1\x25\xba\x1b\x27\xcb\xdb\x8a\x81\x54\xae\xe3\xd4\x07\x13\x24\x4d\xd9\x2c\x06\xb2\x8f\xaa\x79\xd6\x01\x81\x6a\x2f\xa2\x70\x8d\x26\x2c\x5d\x46\xe4\x96\x5c\x45\xb4\xc6\xa2\xcd\x92\x46\x2c\x40\x00\xd7\x68\x4e\x3f\x84\x57\xa8\x90\x66\xca\xe7\x34\xaa\x29\xe7\x95\x5a\x9a\x85\xf4\x93\x46\xb2\x88\x42\xbe\x09\x67\x28\x5f\x44\xe1\x6c\x9d\x5b\x64\xea\x8e\x7e\x40\x2f\xcb\xf7\x2b\xd9\xf1\xbb\x2b\x2e\x37\x3a\x94\xd7\x75\x9d\x62\x63\x3a\x39\x20\x61\xa1\x4a\x27\x88\xe6\xdc\x43\x77\xe8\x20\x27\xba\xf9\xc3\x55\xfe\x50\xa0\x80\x52\xca\x7c\xaa\x8e\xa4\xac\x23\xf9\x3d\x75\xf0\xd9\xd5\x8e\x41\xff\xc4\xc4\xb4\xbc\xde\x99\xa6\xe5\xbc\xd9\xd4\xbf\x67\xed\x5e\xcf\xeb\x35\x9b\xe5\xa7\x99\xf9\x34\xdb\xfe\x74\x65\x3e\x5d\xe5\x9f\xfc\xb3\x0a\x6b\x30\x9f\xcd\xdb\x19\x0e\xf4\x84\x3f\xb2\x26\xfc\x91\x35\x7f\x6f\xcb\xf9\x7b\xbb\x86\xd5\x09\xfc\xd5\xd2\xb1\xdf\x8b\x95\xbe\xca\x59\xe9\xaf\x75\xac\x14\xfe\x79\xd8\xf0\xab\x9e\xa9\xb9\x59\xd0\x66\x35\xff\x79\x98\x70\xdf\xf2\x37\xb0\xc0\x62\xd4\xf3\xbf\x74\xfa\xbe\xdb\xe9\xfb\x07\xa6\xa8\x33\x1f\x22\x51\x70\xea\xd5\xca\x1c\x03\xa9\xf2\xe1\xc0\x0f\x4d\x4d\x5c\x67\x8f\x50\x8c\xb9\x0b\xb8\xa4\x84\x3c\x0c\x5a\x1c\x1e\x08\xc4\x70\xfb\x80\xb7\x8a\x40\xe3\x1a\x65\x5f\x03\x7a\x8e\x25\xe5\xa1\xad\x76\xd7\x0f\xa9\x1b\xb4\x7d\xc4\x24\x6d\x96\xf4\x2b\x7f\x38\x0b\xda\xfe\x80\xba\x0a\xa2\x55\x40\x6c\x8e\xd6\xc7\xf0\x16\xe4\x78\x96\x1a\x0c\x4b\xcf\x70\xb0\xd1\x0d\x58\x62\x63\x64\xa0\xa2\x33\x1c\xdc\x07\x47\x6b\x49\xd0\x9f\x25\xf8\xcc\xd3\x48\x0a\x3e\xf3\x34\x52\x82\x8f\x99\x11\x29\x11\x68\xf9\x24\xf0\xf3\x69\x4a\x75\xe2\x5f\xaa\xa9\x91\x49\x75\x76\x49\x26\x9f\x3e\x87\xbe\xf7\x99\x6c\xfd\x09\x9b\x75\x26\xab\x7a\x97\xfe\xc6\x05\xe8\xf9\x10\x31\xeb\x3d\xf0\x61\xce\xb4\xd5\xbb\x7d\x74\x4b\xf2\x56\x69\x53\x7d\x20\x24\x73\xb2\xc6\x8c\x4b\x5e\xae\xde\xa7\x51\x92\x70\xed\xc5\x3c\x4a\x66\x80\x18\xb0\x67\x2f\x64\xf1\x19\x26\x87\xc5\x72\x09\x7c\x94\x16\xb6\xbf\xe9\x39\xf6\x07\x20\x3b\x97\xab\xdd\x0f\xb3\x73\xcc\x06\x3d\xf9\x93\x0c\xda\x61\x00\x0f\xaa\x99\xc2\x96\xfd\xde\x4a\xe1\xe1\xce\x9c\x1b\x07\xa4\x65\x17\x54\x09\xe4\x2a\xfd\x48\x57\x4c\xf9\x9f\xec\x96\xee\x57\x5a\xc8\x2d\xb2\x29\xe9\x01\xce\x5b\x93\x1e\x60\xdd\xa0\x66\x13\xa4\x07\xb8\x0d\x91\x38\xa3\x83\x56\x1a\xa6\xeb\xba\x93\xfe\xc2\x67\x0e\x4a\x51\x66\x1c\xe4\x70\x29\x69\xe8\x43\x69\x8c\x81\xc0\xae\x80\xcd\x26\x3f\xf7\x73\x57\xbf\x74\x24\xa1\x40\x8c\xc5\x19\x85\xcd\x26\x60\x98\x22\x8a\x85\xa4\x18\x10\xf9\x12\xd9\x53\x9c\x4f\x21\x5c\xad\xf6\x59\xfa\x84\xc5\x4c\xdd\x19\x2b\xbd\x05\xb3\x29\x48\xcf\x7d\x75\xe3\xc2\x08\xc5\x63\xca\x22\x40\x0f\xd3\xe2\x1c\x5b\x8f\x82\x90\x29\x89\xed\x0f\xd8\x02\x17\x2d\xea\x06\x10\x9e\xba\x6e\x76\xc6\x4e\x61\x32\xcc\x46\x18\x50\x37\x83\x07\xe9\x1e\x8d\x52\xda\x50\x8e\xf9\x71\x2b\x45\x95\x4a\x0e\xb6\x2a\x39\xf8\x3d\x95\x94\xb3\x10\x37\x9b\x49\xe9\x51\x07\x25\x7f\xe8\x94\x3b\xfd\xe4\xd9\x71\x56\xb1\x7a\x38\x96\x2b\x8b\x9b\x15\xa5\x63\xaf\x12\xf9\x7e\x62\x2d\xa9\xd4\xf2\xb6\x94\x4a\x6a\xf4\x24\x4a\x88\xe8\x77\xad\x3b\x11\x86\xe1\x11\xc9\xf0\xa8\x9c\x3a\x58\x5c\x58\x90\xd3\xad\xf0\x40\x6d\x26\xd2\xb3\x36\xac\x88\x80\x3a\xb8\x0c\x55\x82\xbf\x38\xc7\xc1\xc6\xd7\xd8\x7c\x55\x37\x6b\x50\x86\x41\xda\x0a\x24\x8b\x88\xec\x19\xc8\x20\x1a\x63\x3b\x83\x79\x4e\xb4\xfb\xe8\x08\x7a\x69\x76\xa5\xae\x12\x00\x1f\x45\x72\x3e\xf2\xb1\x1f\xbb\xa0\xd2\x8c\x12\x50\x81\xb5\xc6\xf0\x00\x64\xad\xc8\x36\x5f\xc8\x6c\xf3\x85\xdf\x19\x8f\x80\x68\x4f\x47\x71\x69\xb2\xbf\x31\x4c\x71\x31\x4c\x2e\x07\x74\xe8\x8f\x90\x8f\xb6\xc6\x48\x7d\x8a\x5b\xc1\x08\xc5\x2d\xc9\x01\x72\x27\x56\x18\xc4\x7a\x90\x12\x7b\x90\x98\xa4\x16\x2a\x4b\x32\x42\x4a\x00\xc8\xcc\xab\x1b\x8c\x50\xe2\xaa\x12\x72\x2c\x72\x41\xd6\x4a\xe1\x01\x60\xad\x04\xae\xff\x90\xa1\xce\xfd\x10\xf2\xe3\x86\x3a\x91\x8d\xb2\xbe\xc1\xd8\x23\x8d\xb1\xc1\x89\xc4\x58\x7b\x12\x25\x06\xa0\x14\x13\x4f\x49\x5d\x92\xe2\x79\x11\x9d\x4a\x94\xb1\xa1\x24\x6e\x78\x63\x65\x6b\xbf\x27\xbc\x09\x4e\x7f\x8f\x7d\xd5\x57\x70\x47\x8a\x7d\xc3\x57\xa4\xd8\x9f\x73\x43\x2a\xd9\x71\x43\x2a\xf9\x77\xde\x90\x4a\xfe\x2f\xb8\x21\x45\x90\xba\xae\x94\xfd\x1b\x6e\x48\xa5\x3b\x6f\x48\x65\xb2\x4a\x52\x7b\x43\x2a\xbd\xef\x0d\xa9\xcc\xdc\x90\x22\x95\x1b\x52\xec\xcb\xf9\x2b\xda\xa0\x01\x9b\x91\x1e\x98\x94\x07\xea\x3c\xa1\xd4\x5e\xb3\xcf\x2f\xd9\xef\xc9\x86\xef\x63\x22\x97\xdd\x39\x59\xad\x8a\x52\x79\xb3\x49\xce\x31\x51\x41\x18\xf0\xa7\xdd\x42\x96\x11\x20\xb4\x5c\x86\xa2\x6a\x63\x22\xd3\x98\x14\x47\x5b\x8d\x19\xe7\x1e\x0b\x4d\x63\xc0\x18\x0b\x30\x46\xae\x9b\xe5\x51\x20\xce\xc7\xd5\x96\x8d\xcf\xf1\x58\xb7\x6c\x6c\xb7\x2c\xaa\xb6\x2c\xda\x88\x0e\xf1\x51\x7a\x9f\x6c\x6c\x33\x36\x48\x31\xf5\xe8\x87\x65\xc2\x45\x8a\xb7\xd0\x50\xd3\xa0\x92\xfe\x29\x72\x57\xd2\x6e\x21\x09\x40\xf1\xc6\x2b\xb6\x92\x1b\x65\x49\xde\xac\x88\x66\xc1\xb8\xd1\x26\xb3\x6f\x05\x50\x72\x66\xb6\x0d\xe9\x6f\xc3\xb6\xe1\x1e\xf7\xc8\x72\x19\xdd\x02\x81\x18\x44\x71\xb3\x19\x97\x23\x72\x17\x27\xc9\x32\x14\x28\x4e\x08\x9f\xa5\x75\xfb\xf8\x1a\x93\x68\x99\x1d\x91\xf4\x36\x1e\x5f\xaa\xec\x5c\x61\x3e\x12\x50\x27\xce\x79\x12\xb3\x7f\xd1\x90\x23\x96\x5e\xe6\xd9\x6b\x55\x04\xcd\xa6\x33\xd4\x14\xa4\xf1\xc4\x7c\x1e\x49\xaa\x7d\xb7\xde\x62\x20\x6b\x34\xce\x38\xbf\xdd\x30\x37\xdd\x31\x60\xed\x82\x1c\x6c\xb7\xbe\x1c\x8c\x58\x32\x98\x31\x11\x60\x33\x3f\x84\xb2\x83\x2c\xbe\x4e\xde\xdb\x24\xa4\x6a\xc6\x5a\x14\xc3\xa5\xa0\x02\x36\xb6\xa7\x1b\x98\x53\xdd\xc5\x7c\x6c\x6c\xa5\xd0\x83\x2a\x28\x58\x83\x75\x76\xc0\x90\x1b\x7a\xb5\x24\xe3\xf7\xaf\x92\xe8\x76\xca\xa2\x68\xb5\x02\xd4\x9b\xd0\x25\xa7\x63\x22\x2a\x01\x44\xd6\x88\x7a\x4b\x22\xe6\x29\x1e\x8e\x10\xf5\xc6\x73\x16\x4d\x38\x8d\x55\x86\xfc\x05\x0f\x47\xc5\xa5\x6f\x2d\x5c\x94\x87\x5f\xc8\x89\x12\x32\xa1\x13\x07\xdd\xd1\x38\x5b\x68\x5e\x10\xee\xfb\x68\x46\x45\x0d\x3b\xa3\x5e\xb4\x5e\x7f\xa4\x30\x76\xff\x82\x98\x2c\x68\xab\xa7\x38\x80\xe8\x53\xb6\xdc\xa7\xc0\xc6\x17\x14\xd7\x8e\x26\xbc\x2b\x56\x26\xb5\x2e\x1e\xe5\xd2\x34\xb7\x24\x6b\x61\x3d\xc7\xeb\x8a\xf5\xab\x11\x6a\x4a\xa1\xac\x70\x22\x7a\xc3\xe2\x49\x72\x63\x13\xf1\x8f\x41\x2f\xe7\x24\x16\xc9\x22\x5f\x9f\x33\x2a\x2e\xc7\x49\x2c\x08\x8b\x6d\x3d\x5b\x69\x5d\x0c\xe0\x40\x57\x10\x26\x00\x0e\x4c\xee\x90\x02\x38\x10\xb9\x00\x23\xd7\x61\x9c\x4c\x68\x48\xe5\xd3\x15\x4f\x6e\x52\xca\x43\x26\x5f\x72\xf8\x44\xbe\xbc\x27\x7c\x41\xb6\xeb\xd8\xdd\x27\x6b\x34\x74\x82\x77\xa9\x0b\xb9\xbc\x94\x0c\x12\xea\x75\xa5\xf4\xe9\x1c\x74\x7d\x88\x38\x68\x1f\x41\xe4\x1c\x3a\x9f\xd2\xe6\x94\x42\xf7\xd6\xda\xd1\x27\x2c\x14\x71\x4c\x37\x0c\xe7\x51\x8c\x98\xbe\x3f\x6c\xd4\xa2\xcd\x26\x88\xb1\x0f\x8d\x96\x94\xe9\x6d\x7f\xce\x8b\x4f\xe3\xb3\x32\x14\x5b\xec\xb2\xf3\xf3\xf3\x60\xcf\x6c\x53\x04\x3c\xf3\x07\x31\x4e\xdc\x20\x64\x38\x29\xfd\x1d\x5b\xba\xd9\xbc\x1c\xc5\xe0\x6b\x8d\xe0\x29\x10\xb0\xc5\xd7\x88\x7f\x74\xe9\xdb\x39\x2a\x7b\x4f\x20\xa0\x36\x71\xa7\x10\xa2\x3b\xb9\x93\x08\x19\xd2\x1b\x07\x9b\x28\x71\x14\xa3\x04\xde\xd5\xf6\x38\x69\x36\x41\x62\x49\x1f\x86\xeb\xe7\xb9\x4a\x59\xbc\x41\xce\xe3\x66\x53\x00\x3a\x24\x72\x5b\xc7\xe1\x79\x4b\xbd\xc8\xc7\x01\x69\x05\x21\x59\x23\xb5\xab\xa9\x92\xc3\x3f\x71\xbc\xcf\xfd\x01\xc3\x49\xa8\xc6\xbc\x1c\xef\x4f\x6e\x01\x1f\x76\x47\x0f\xbb\xa3\x87\xdd\xd1\xc3\xee\xe8\x0b\xed\x8e\xce\xbe\xda\xdd\xd1\xd9\x97\xdf\x1d\xfd\x9e\x43\x98\x9c\xb1\xd3\x19\x8d\x35\xea\xbe\xce\x62\xc1\x16\xd4\x5b\x10\xfe\x1e\x90\xed\xbb\x70\x5f\x0b\x45\x4f\xbe\x61\x8a\x9e\x3c\x78\x04\x7a\xa0\xe8\xf7\xa7\xe8\xc9\x17\xa3\xe8\xc4\x76\x72\x98\x20\x82\xb4\x39\xd2\xb8\xb8\xba\xb9\x4d\x47\x6e\x38\x59\x82\x92\xfa\xc4\x5a\x40\x3d\x3d\x85\xe9\x0d\x93\x44\x30\xf6\x96\x9c\x5e\x1b\xb7\x68\xf0\x6e\x4c\x52\xda\xf0\xc3\x82\x5b\xec\x2b\x6e\xa1\xbf\xe2\x76\xb0\xa7\x5d\x9e\x71\x29\x34\x43\x64\xf2\xb6\x11\x97\xb4\x7a\x4f\xe5\xed\xca\xbc\x20\x91\x13\x93\x13\xed\x22\x7f\x90\xe7\x57\x01\x48\x0d\xe9\x26\x38\xd1\xb4\x5c\x8e\x15\xc1\x2e\x81\x92\x89\x14\x79\x4e\xf2\x2a\xcd\x60\x98\x54\x44\x74\x75\x27\xa1\x49\xe9\x6a\x38\x9d\x1a\x04\x79\x72\xd0\xaf\xa4\x77\x42\xd3\xe6\xa0\x83\x62\x4f\xf8\x38\xf6\x34\x2f\x68\x43\xc4\x3d\x0a\x64\x9a\xe9\x48\xd0\x0f\x8b\x3a\x75\x96\x3e\xe2\x92\x3f\xa0\xd8\x9b\xb2\x98\xa5\x73\x10\xf4\x73\xd8\xb2\x19\xbe\x5d\x5f\x3b\x08\x4d\xe8\xd7\xca\x78\x75\x50\x56\x0e\x58\xbb\xa7\x46\x2c\xb2\xfd\x29\x15\xbd\xef\xb4\xcb\x11\x1b\xe3\x28\x0f\x4a\x02\x36\xd8\x5e\x1e\x1a\x76\x8c\xdd\x31\x94\x9c\xae\x2c\xc0\xaf\x1d\xbf\x8e\x8f\xc6\xba\xfa\x8e\x9f\x37\xbd\xdd\xb3\x9b\xde\x69\xe7\xe9\x9d\xa3\x4a\x7a\x37\x1f\xc2\x4e\x57\x0e\x61\x50\x0e\x61\x07\xa2\x4c\x8f\x61\x60\xfa\xd6\x39\xda\x18\xc3\xce\x11\xca\xaa\x63\xd8\x39\xca\x11\xc7\x0f\xe5\xaf\x43\xe3\x89\x53\xe6\x4a\x45\xb2\x94\x2c\x19\xa2\x58\x6d\xa3\xd0\x70\xd8\x46\x41\x07\x05\x7d\x14\x9c\x8c\xd0\xb0\xdd\x41\x9d\x2e\xea\x1c\xa1\xae\x3f\x1a\xc1\xf5\x0e\xc5\x92\x5e\x99\x98\x0e\x5e\x90\x17\xa1\x4b\xd7\x6b\xf4\x39\x5a\x4d\xb5\x73\xd5\x46\x7d\xcb\xb7\x4f\x7e\xfa\x71\x2e\x8e\x3a\x9d\xf9\xf3\xfe\xcd\x34\xe6\xd9\x5f\x9f\xcd\x1e\x65\xfd\x9f\x7e\xbb\xbe\x3d\x7a\xfe\xf7\xa5\xa4\x31\x1a\x50\xab\x76\x18\x4d\xf1\xdd\x5a\x27\x29\x2f\x31\xd6\xd6\xb8\x34\xe2\x6a\x36\xc5\x27\x4b\x1e\x94\x65\x00\x61\x15\xaf\xed\x9f\x28\xd8\xa8\x15\x7a\x97\x06\x16\x9a\xea\x2f\x37\xea\xb7\xfd\xde\x36\x58\xdc\xa0\x70\xa3\x88\xa1\x90\x74\xa8\x8c\xd2\xab\x6d\xcd\xac\xb2\x64\xd9\xf7\xd7\x37\xd9\x76\x0a\x92\x01\x70\xb5\x7c\xca\xd1\x06\x6c\x3b\xbc\xef\xdd\x34\x0d\xb9\x42\xac\x25\x11\x73\xf9\x78\x0c\xd1\x92\x27\x63\x9a\xa6\xa1\x58\xaf\xab\x9b\x26\x3b\xcf\x51\xbb\xc8\x73\xd4\x29\xf3\x70\x70\xd4\x55\xda\xda\x5d\xf9\xba\x41\x91\xaf\xdb\xae\xe4\xeb\xc9\x7c\x40\x13\xed\x14\x7a\xa5\xb2\x08\x48\x81\x01\x86\xb1\x57\x2a\x93\x80\x8a\x1e\x95\xab\x90\x00\x1c\x90\x1c\x20\x4e\x26\x14\xc8\x3d\x23\x0c\xef\xd6\x70\x43\x25\xd4\x3e\xaa\x48\x94\xf0\xee\x8f\xde\xb3\xb7\xf5\x46\x9b\x82\x64\xc9\x8a\x7e\xe7\xe1\xb9\xe4\xa6\x5b\x59\x3b\xb5\x59\x3b\x76\xd6\xce\x28\xa4\x85\xe6\x1e\xa5\xdb\x65\x74\x6b\xcb\xe8\xda\x65\x74\x47\x61\xec\x91\x53\x72\xce\x4f\x95\x9c\x4a\x5a\xfc\xbc\xef\xfb\x26\x54\x13\x26\x2d\xee\xca\x0d\x85\x50\xbf\x63\x5c\x58\xe1\x64\x10\x4d\xb1\xd7\xd3\xd6\x41\xf4\xc3\x12\xb4\x0f\xc6\x87\x1d\x88\x26\x45\xa2\x32\x64\x1a\x1f\x4c\x0f\x40\xd6\x9a\xc2\xc3\x0c\x1e\x80\xa8\x95\x1d\xb6\xcf\xfc\x41\x2b\x08\x03\x88\xe6\xa5\x4d\x32\xb7\x2d\x7d\x44\x2b\x3a\x98\x1e\x66\xee\x04\x42\xb4\x2c\x2d\x99\x49\x05\xc6\x55\x56\x0c\x39\xdc\x9e\x56\xd3\xcd\xd1\x12\xa5\x5a\x32\x5a\xa8\x15\x87\xae\x31\x47\xb7\x98\x28\x71\x21\x51\xea\x29\x01\x51\xaa\x35\x50\x0b\x78\xee\x37\x9b\x3a\x95\xc0\xd3\xeb\xb3\xdb\x53\x3d\x99\x32\xe9\x1a\xdd\x42\xe4\xba\xd7\xa8\xd5\xba\x3d\x95\x19\xae\x65\x86\x33\xff\x14\xba\xee\xb5\x2a\x4e\xa5\xde\xea\x62\x4e\x61\xab\x75\xbb\x96\x3b\x24\x99\xc8\x65\xe2\x40\x17\x7c\x0b\x43\xf9\xe0\xba\xb7\x88\x40\x74\x7b\x86\x85\x92\xc9\x6f\xdd\x00\x22\x71\x86\x6f\x15\xab\xbe\x6d\x05\x75\x5e\x9f\x93\x8a\x5d\x92\x26\x21\x54\x13\x13\x3e\x42\xf2\x0f\x8e\xab\x14\xf8\x23\x0a\xcf\xc0\x58\x19\x04\xb9\x69\xcf\x96\x04\x18\x03\xb8\xa7\x4d\xe9\x68\x3c\xc1\x55\x4d\xe0\xc7\xad\x47\x8b\x5c\x80\xa2\xbb\x35\x0c\xdb\x35\x40\xcd\x26\xf3\xac\x63\x1b\xb9\x3b\xa8\x66\x43\x1c\x86\x40\x68\xdf\x1d\xfa\x2c\x49\x91\xc8\x9c\xea\x26\xf1\x0e\x65\xa8\x8e\x2d\x77\xb7\x94\xf2\x38\x8f\x43\x81\x24\x21\xb8\x22\xe3\xf7\x21\x5f\xeb\x22\xd6\xc6\x78\xbe\xba\x35\xe3\x72\x37\x45\xc9\x78\x6e\x09\x75\xb2\x58\x70\x27\xb7\x48\x21\x45\x13\x22\x48\x28\xd6\x2a\x52\x9b\xad\x6b\x15\x56\xdd\x53\x16\x4f\x2e\x25\xe1\x01\x75\xcc\xb2\x74\xa4\xa0\x4e\x48\x64\xfb\xa0\xde\x1b\x09\x59\xaa\x37\x4e\xa2\x88\x8e\x45\x6d\x66\x7d\x76\x24\xfb\x21\xeb\x5f\x5b\xf4\xfd\x2e\xdf\x59\xd4\xec\x7d\x92\x35\x7a\xf9\xe2\xf2\xcd\xe3\x8b\x17\x8f\x5e\x3f\x7d\x19\x3a\x97\x97\xd6\xeb\xe5\xa5\xa3\xbe\xbe\xbd\x78\x95\x7f\x79\x7b\xf1\xca\xa4\x5e\xfc\xe3\xe2\xf1\x4f\x6f\x2f\xcc\x07\xf3\x66\xbe\xfd\x70\xf1\xe4\xe9\x8b\xfc\x93\x7e\xb9\xbc\x74\xd6\xd5\x13\x4d\x73\x3f\x4e\x5d\x43\x28\x9a\xba\xae\x7a\xf2\x28\x37\x54\x66\x33\x95\x52\xf1\x96\x2d\x68\x92\xc9\x4d\x8f\x0e\x72\x76\x45\x69\xdc\xc8\x37\xe4\xb0\x7a\xba\xb1\x95\x7f\x1c\x51\xc2\xef\x5b\x02\x31\x7b\x71\x21\xd7\x69\x51\x71\xbe\x0f\x2f\x53\x00\x45\xbe\x32\x4d\x52\x90\x6c\xb5\xda\x17\xb0\xd9\xdc\xce\x21\xac\x52\xd0\x66\x76\xb9\x1d\xca\xe1\x54\x8a\xd1\x95\x70\xbd\x53\xca\x3f\x69\xb6\xa5\x04\xb2\x2a\x50\x15\x40\x5f\x1d\x90\x00\xeb\xf5\xfe\xc6\xa6\x4b\xe0\x32\xc0\x5c\xb1\x9b\x2e\x9b\x33\x28\x1f\x43\x56\x2a\x6c\x04\x66\x6b\xd5\x90\xba\xdc\xf6\xb0\x0e\xec\x97\x30\x29\x4b\xe0\x38\x59\xaf\x41\x69\xc9\x36\x1c\xa1\x08\xef\x4b\x2e\xd1\x0a\xca\x69\x9f\x02\x78\x17\x35\x9b\x69\xb3\x09\xd4\xd7\x82\x68\x64\x38\xcd\xcf\x49\x33\x18\x8e\x95\x74\x5f\xd0\x8a\x09\xb0\xc3\x23\x4e\x80\x9a\xb7\xfd\x28\x27\x55\x04\x4c\xe1\x5e\x84\xf7\x7d\x2b\x8c\x55\x9e\xf9\x54\x18\x32\x9e\xe2\x4c\xb5\xea\xd4\x75\xc7\x67\xe2\x14\xa6\xcd\x66\x3a\x1c\x8f\x3c\x9e\x49\x4a\xa7\x2a\x2c\x73\xad\x53\x65\x56\xae\x7b\x60\xa3\xb5\x32\x01\xc5\xd8\x1e\x84\xc2\xc7\xbc\x95\x66\x0c\xfe\x14\x6c\xb2\x5a\xed\x73\xd8\x6c\xd6\xe5\xe1\x95\x92\xd0\x66\x11\x6a\x46\x00\xcd\xf1\x40\x54\x90\x85\xdb\xc8\x62\x81\x54\x3f\xe7\xb7\x4c\x94\xba\xc5\xda\x5c\xcf\x35\xd9\x53\xc4\x74\x9a\xc5\xd8\x98\xc4\x2b\xf5\x03\x16\x96\x5b\x5e\x29\x2e\xe9\x1d\xcb\x5b\x36\x7e\x5f\x73\x44\x56\xee\xb6\x6b\x0c\x08\xea\x82\x4a\x9e\x07\xb0\x14\x92\x82\x53\x7e\xb6\x09\xa0\xf6\xeb\x62\xc8\xab\xe1\x1f\xf8\x68\x2f\xd3\xd4\x5d\xd6\xa8\xdb\x0f\x51\xb0\x8f\x8b\x59\x5b\xad\xa2\xd5\x8a\x80\x09\x5c\xa3\xb9\xa5\x34\xe3\x59\x6c\x8b\xa5\x79\x97\xcd\xc9\xba\xb6\x29\x28\xfa\x0e\xd7\x72\xf7\xc5\x44\x44\xb1\x63\xa4\x4e\x07\xc5\x9e\x79\x94\xfb\x90\xd8\xa3\xf1\xb5\xdc\x7d\xc4\x1e\xe1\xb3\x6b\x89\xe8\xb1\x77\x4d\x79\xca\x92\x18\x3b\x4e\xf9\x92\x6a\xa0\x24\xc6\x4b\x09\x3b\x99\x3c\x63\xa9\xa0\x31\xe5\xea\x3d\x89\xc7\x54\x3f\x4c\xa7\xea\x97\xd3\x45\x72\x4d\x2b\x30\x3a\xe9\x51\x14\xe5\xa9\xa9\x4a\xa6\x0b\x26\xd4\xc3\x92\xd3\x25\x8d\xab\xe5\x9a\xb4\x97\xf1\xb8\x5a\x56\x54\x14\xb1\xc5\x27\x86\x23\xd9\xce\x2b\xa6\x5c\xd4\x56\x87\x6a\x83\xc0\x1a\xb9\x3d\x87\xcd\x23\x51\xa6\xd9\x72\xa9\x7d\x51\xaa\xe1\x1b\xdf\x4c\xb6\x2b\x71\x0e\x1d\xf5\x6d\x3e\x61\xfc\x5e\x75\x28\xc8\x1d\x35\x64\x0b\x92\xbe\xdf\xae\xa3\xe1\xd7\x6c\x9c\x2a\xec\xd4\x32\x8e\xd9\x90\xd6\x7d\x54\x9a\xab\xb6\x82\xd3\xf8\x1c\xfb\xa7\x71\xab\x65\x54\xfa\x98\x0e\xe3\xd1\x9e\xe3\x39\x92\x05\x0c\xa8\x97\x2e\x95\xe2\x35\x46\x01\x0c\x1d\xcf\x24\x83\x4a\x3a\x92\x58\x1c\x2a\xed\x65\x35\xb9\xd5\x82\x6b\xc9\x77\xd4\x2a\x38\xe5\xad\xd6\x29\x87\xd4\xcb\xe2\x74\xce\xa6\x02\xc8\xd2\x0a\xb5\x9b\x25\xfe\x59\x2a\x64\x4f\x3b\x39\x84\x96\xdc\x21\xdf\x81\xb0\x15\x61\x12\x2d\x95\xbb\xea\xbc\x53\xca\x6b\xb5\x00\xb2\x23\x2a\xe4\x6c\xb3\xc9\xf5\x72\x92\x29\xb0\x74\x8b\x27\x3c\x4e\xd3\x24\xba\xae\x58\x75\x94\x84\xd5\x71\x10\x93\x54\x31\xd9\x92\xe9\x5a\xc1\x69\x72\x8e\x5b\x41\xb3\xb9\xcf\x4e\x93\x7c\xe8\x08\x4e\xce\xb1\x6f\xed\x31\x12\xb9\x4f\x19\xdf\x4c\x74\x2c\xd9\x5c\x13\x5e\x1c\xf9\x93\xfa\xd0\xa7\x85\xfa\xb9\x21\x92\xc6\x52\x5d\x08\xd5\xad\xd4\x3a\xd2\x2b\x2d\xe2\xc6\xb3\xd4\x81\x7b\x44\x69\x07\x89\xeb\x1c\x3a\xae\x40\x0c\x3b\x87\x72\x7e\x88\x37\x9e\x13\xfe\x48\x00\x1f\xe6\xe2\x35\x60\x03\xe7\x50\x5f\x22\x05\x02\x73\x10\x03\xa1\xa6\x4a\x00\xe7\xd0\x81\xa8\x46\x10\xdb\xdf\x57\xee\x1c\xf7\x19\xf4\x7e\x4d\x58\xac\xe0\xe0\x6a\xe5\x78\xce\x1a\x09\x2f\x4e\xf8\x82\x44\xec\x5f\x74\x8b\x4c\x26\x58\x78\x2c\x7d\x74\x95\x26\x51\x26\x28\xa0\x10\x11\xd3\x2c\xb9\x57\x29\xb5\xf7\x80\xaa\x66\xd0\x7b\x36\x23\xa9\x36\x23\x51\x97\x49\x1d\xcf\x81\x88\x36\x9b\x72\x18\xa8\x8b\x75\x19\x49\xd1\x53\x2a\x5b\x5a\xb6\xa5\x46\xaf\xa3\x1b\x46\xcb\xf1\x92\x39\x64\x3d\xf7\x34\x48\xdb\x32\x17\x2b\xb0\xcb\x1a\x22\xd9\xcb\x6a\xd7\xea\xb0\x81\xde\x17\x1b\x64\xf3\x6a\x50\xa1\x58\x47\xd0\x1e\x29\xd9\x1f\x4e\x23\x22\x98\x8d\xe5\x72\xaf\x71\x67\xaf\x37\x1b\xed\xfd\x53\x71\x56\xda\x62\x38\x6a\x80\x86\x62\x74\x2a\x5c\x17\x9e\x96\xab\xce\xa2\x20\xfc\x1c\xfb\x05\x24\x1f\xc9\x85\x0e\x4f\xf3\x71\x38\xe7\x83\xa1\x5c\x07\xfa\xfc\x46\x20\xde\x12\x6e\x00\xd7\x14\x17\xab\x4f\x9d\xee\x64\x57\xa9\x50\x9b\x35\x6e\x7d\xe0\xd6\x07\xcb\xe9\x7c\x15\x6b\xd4\xbe\x0e\xf0\x4a\x0a\x29\xb7\xcf\x2c\xf7\x3e\x91\xbb\xa8\x57\x26\xe5\x28\xc3\xfe\x69\x76\x46\x4e\x33\xd7\x85\x6c\x0a\xd8\x30\x1b\xed\x63\x9c\x0c\xb3\x11\xbc\x4b\x71\x66\x74\x9e\xda\x27\xfd\x50\x7b\xbc\xcf\x70\x7a\x9a\x9d\xe5\xe5\xa9\x9c\x91\xa6\x2b\x36\x25\x03\x11\x8e\x72\xf9\x2e\x31\xbd\x4e\xa1\x3d\x29\x72\x4e\x52\xba\x94\xe8\x8a\x84\x37\xa1\x11\x5b\x30\x41\x39\x76\x42\xf5\xce\xb8\xdc\x87\xe1\x4f\xe2\x8b\xc1\x79\x47\xdf\xb6\x29\x4e\x08\x0c\x62\x7b\x8e\x25\x22\x6a\x04\x7f\x9c\x4c\xa8\x42\x72\xc4\x71\xf7\x08\x63\x2c\x50\x2c\x85\x41\x66\x22\x1d\x54\x88\x5b\x70\xda\x6a\x25\x72\x64\x14\x24\xd8\x28\x23\x81\x50\x4b\xa6\x0c\xde\xc5\x38\x31\xa3\xa5\x0e\x64\x1b\xac\x3c\x94\x69\xc9\x5d\x73\x3c\xe0\x7a\x45\x7a\x8e\xe4\x11\x3a\x49\x26\xe4\x38\xe1\xa3\x58\x8d\xc9\x15\x49\xe9\x46\xd7\xcb\xfb\x19\x15\x6d\xeb\xee\xb1\xd8\x33\xbb\x31\xc5\xe4\x4c\xdf\xd4\x40\x08\xbb\x7f\x42\xb2\xbc\x56\x4b\x14\xfd\xab\x74\x4e\x94\x7d\xe3\x58\xb8\x81\xdd\x3b\xdd\x23\x65\x87\xb3\x1f\xa0\x58\x7e\x86\xd5\xce\x3a\x65\xc7\xd4\x55\x7a\x50\x5e\xc6\x10\x92\x11\x19\x84\x6e\x05\x07\x22\x9f\x32\x8c\x8d\x76\xa4\xf8\xea\x23\x9e\xb7\xb6\x80\x82\x88\xcb\x51\xa2\x1f\xc4\x16\x7e\x7c\x6c\x40\x4a\x2c\x68\x05\xd5\x71\x41\x09\x56\xe7\x59\xe5\xb8\x10\x3d\x2e\x24\x0f\x85\x5e\x19\x16\xa2\xb8\x58\xf7\x68\x1f\xe3\x14\x6e\x8e\x03\x71\x03\x88\xba\x7d\xb9\xc1\x1c\xa8\x6f\x62\x20\x30\x09\xa5\xcc\xaa\x6d\xa6\x02\x18\xb6\x02\x6d\xf0\x07\x12\x2c\xd9\x80\x46\x96\x7c\x9c\x49\x39\xce\xd6\x70\x8a\xd5\x4a\xd7\xb4\x5a\xf9\x7a\x83\x21\xdf\x92\x66\x53\x6e\x50\x63\xc9\x80\xe5\x03\x77\x03\x7b\xd8\x85\x1c\x76\x1d\x27\x0d\x3b\x57\x92\x2a\x39\xe4\xca\x29\x07\x1e\xee\xf4\xa4\x9a\xc3\x28\x1b\xd4\x5d\x86\xaa\xe2\xcc\xaf\x9c\xc9\xb9\x02\xa2\x6a\xce\x8f\x2b\x65\xeb\x94\x55\x96\xe6\xe0\xf1\x9c\xc5\x34\xa5\x21\x07\x47\x7d\x88\x2e\xe2\x59\xc4\x52\xa5\x4c\xee\x40\xf4\x84\xd3\x78\xac\x34\xd2\x47\x10\xfd\x95\xf2\x05\x89\xe5\xcb\x31\x44\x3f\x64\x42\x7f\x38\x81\xe8\x45\xc2\x6f\xe8\x8c\xa9\x6f\xc7\x3e\x44\xaf\x18\x27\x42\x16\x78\x1c\x40\xf4\xd3\x7b\x4e\x58\x6c\x3e\xb6\x21\x7a\x95\x98\xf2\x8f\x3b\x10\xbd\x59\x92\xd8\xbc\x75\x21\x7a\x9d\xa5\xa9\x01\xec\x49\x40\x2e\xb2\x59\xa6\x9b\x76\xdc\x87\x68\x42\xa7\x24\x8b\x84\x69\xda\x33\x12\xcf\x32\x32\x93\x1f\xdb\x9f\x74\xef\x9a\xeb\xe6\xfa\x9b\x4a\x65\x65\x46\xc7\x72\x41\x82\x1e\x50\x44\x70\x72\x90\x3b\x96\x05\x20\x68\x75\x0e\xa8\xdb\x39\x48\x5a\x04\x1e\x08\x17\x74\x5b\xfd\x83\xc4\xed\x1c\x10\x78\xc0\x5d\x10\xb8\xf9\x57\x95\x12\xbb\xe4\x80\xc1\xc3\xbe\x71\xa3\xca\x41\xaf\x7a\xbb\xb4\xc6\x74\x30\x3f\x19\x65\x48\x8a\x31\x86\x71\x10\x6b\xe3\x97\x48\xee\x51\x79\xcd\x2a\xaf\x6a\xb9\x71\xec\x9f\xf2\xb3\xe4\xd4\x75\x39\x64\xe5\x75\xb6\x29\x04\x62\xc8\x47\x10\x91\x21\x1f\x61\xe6\xf1\xd5\xca\x47\xa9\x7e\x9e\xc9\xe7\x4c\x3f\x5f\xad\x56\xbe\x15\x9f\x06\xa8\x4b\x50\x92\x89\xa0\x0c\x53\x90\x41\xc4\x0a\xe7\x0f\xd5\x2d\x7b\xae\xb7\xf7\x38\x96\xdd\x43\xcc\x9b\xe1\x54\x3f\x5c\xe1\x4c\x3d\xb8\x8e\xb3\x5e\x7f\xdc\x1f\x74\xba\xe9\x0f\x5a\x9f\x5e\xd9\x76\x1a\x20\xf1\xae\xa0\x12\xc2\x6b\x6c\x4b\x18\xe6\x00\xd0\x4a\xb7\xa9\xf2\x7f\x03\x44\x75\x2c\x64\xa2\xbe\xa4\x48\xbd\x19\x12\xde\x0c\xaa\x43\x1d\xea\x5d\x49\x66\x20\x7b\x5b\xb9\xfd\x97\x77\x1a\x89\xd2\xc7\x48\xcd\x04\x16\x6b\x99\x63\x06\xd4\xd2\x9c\x61\xa2\x1f\xae\x70\xaa\x1f\xf2\xe1\xcb\xd4\xab\x1a\x93\x62\xec\x66\x64\xb1\x20\x98\x22\xb6\x96\x42\x87\xa6\x83\xa4\xaa\xa9\xcc\x99\x6a\x4e\x37\xb7\x9a\x51\xa8\xae\xf9\x19\xf6\x07\x1c\xfb\xa1\x72\xbd\x02\x38\x0e\x90\x68\x05\x30\xb4\x34\xfa\xfc\x40\x48\x09\x46\x6d\x56\x88\xfc\x71\x83\x91\xc4\xb1\x73\x7f\xa0\xef\x04\x86\x6d\x89\xee\x12\xcf\xce\x44\x2b\x90\x89\x6e\x5b\x26\x92\x56\xb2\x57\x18\x47\x02\xde\x8a\x0f\x05\x3c\x10\x28\x55\xa7\x63\x99\xba\xe1\xbd\xf7\xd1\x86\xef\x6e\xb6\xd5\x3c\x00\xf8\x5f\x70\x00\xcf\xfc\x81\xeb\xf2\x90\xc3\xbc\xb5\x20\x76\x65\x4f\xfe\x22\x4c\xab\xe5\x43\xaa\xd3\x75\x6a\xa6\x5f\xda\xf2\xa5\xae\x9d\xc6\xf8\xc0\xdc\x44\xbf\xbf\xad\xbf\xf1\x4d\xae\x7c\xa3\x60\x57\xb2\x7a\xc0\xb6\x36\x68\xf0\xac\x3d\x90\x24\x1a\x51\xac\xdc\x54\xb1\xb3\xce\x20\x08\x5d\x5e\xfa\x4a\xd7\x4c\xd0\x5f\x6d\x5e\xc2\x57\x77\x7d\xf5\x05\x6d\x0e\x37\x6e\x03\xc3\x53\xd7\x8d\xf5\xe5\xdf\x78\x84\xa9\x1b\x1f\x14\x5e\xd1\x3e\x79\xd7\x57\x57\x7a\xf7\x0b\x99\x4c\x48\xc8\x41\xbf\x07\xd1\xc5\x35\x8d\xc5\xf7\x99\x3a\xa0\xec\x43\xf4\x34\x16\x94\x2f\x39\x15\x94\x87\x1c\x74\xba\x10\x3d\x4e\x62\x41\x3f\x48\x0a\xdb\x0e\x20\x7a\xc6\xae\x38\xe1\xb7\xf2\x5b\x0f\xa2\x1f\x98\xaa\xcb\x24\x1c\x41\xf4\x84\x12\x91\x71\xfa\x84\x45\xf4\x0d\x25\x5c\x73\x83\x00\xa2\x4a\x42\xe7\x04\xa2\x57\x11\x11\xd3\x84\x2f\x42\x75\x7e\x8a\xa2\x64\x4c\x22\x96\xaa\x50\x3c\xb2\xa6\x13\x88\xc6\x49\x7c\x4d\xb9\xa0\x5c\x36\xed\xf8\x08\x22\xe5\xb6\x4d\xbd\x9d\x74\x20\x5a\x46\xd9\x8c\xc5\xea\xad\x07\x51\x3a\x67\x0b\xd5\x85\x36\x44\xda\x3b\xfd\xd3\xdd\x6a\xfa\xd8\x53\x03\x60\x2b\xa4\xee\xb9\xaf\xaa\x1e\x05\xc4\xf7\x65\x30\x7d\x7d\xfa\xd3\x0e\xcc\xad\xe8\xbe\xb9\x15\xad\x49\x4d\x10\xc0\xba\x3b\x48\x54\xe2\x17\xc9\x2f\x2b\x4b\x14\x4b\xbc\xfc\xec\x01\x48\xba\x24\x19\x7b\x49\xfb\x22\x6b\xb7\x4a\x3d\x65\x24\x65\x45\x30\xad\x1c\x6d\xa4\x82\x2e\x5d\x60\x80\xa4\xcc\xe2\x34\xce\x5a\xad\x86\xe3\x52\x8f\x53\x92\x26\x31\x5c\x6b\x07\x2b\xf4\xb7\x8c\x71\x9a\xd6\x1f\xbe\xc8\x3d\x87\x3a\x7c\x11\xe6\x9c\x47\x6b\xf5\x54\xa1\x44\x6c\x6f\xc9\x35\x3b\xa8\x3f\x75\xd1\xdf\x33\x8f\x93\xf8\xfd\xe5\x82\x8c\x79\x22\x39\x46\x51\x56\x69\x17\x25\x30\xf7\x6e\x58\x1c\x53\x8e\xb8\x24\x2d\x6c\x0a\xb8\x3a\x06\x02\x11\x84\x5b\xaa\xad\x37\x63\x1a\x13\xce\x92\xc6\x98\xc4\xfa\x68\xa2\xc1\x0a\xfc\x9e\xbc\x8b\x1d\x97\x17\xed\x19\xe7\x7b\xa3\x77\xb1\xde\xb1\xca\xce\x14\xd0\xd5\xa5\x1f\xc3\x3b\x81\x95\x5a\x94\xc1\xdc\x96\x01\x22\xae\x4f\xd3\x12\xcf\x3a\xf4\x41\x77\xa9\x69\x43\x48\xd1\x58\x7c\x08\x6d\x9b\x87\x75\x4e\xd9\xa7\x4a\x5a\xdc\x23\xf9\x99\xd8\xa5\xba\x70\x05\xd2\x42\x84\x9c\x7e\x7c\x37\x62\x2e\xc1\x64\x65\x7b\x2f\xe5\x1c\x03\x81\xa8\x2a\x22\x1f\xbc\x01\x0f\x53\xcf\xbe\xcc\xa5\x91\x9f\xc3\xf5\x5e\xb5\xbb\x2a\xbb\x5d\x67\x8c\x0a\x71\xbc\xda\xef\x18\xee\x55\xfa\xfd\xf6\xe2\x15\xba\x93\xb9\x4d\x7f\xd3\xed\xfe\x66\xc6\x8d\x4f\x75\xae\x95\x2e\xfe\x52\xcf\x2d\x80\x7b\x02\x67\xc8\xea\x0f\xa0\x28\x5d\xad\xee\xd6\x88\xe4\x53\x63\x65\xaf\x35\x95\xa1\x37\x4a\x85\x37\x91\x02\x87\x30\xc3\x38\xa9\xc7\x64\x16\x2b\x06\x3f\x1c\x55\xfc\xf6\xd8\x12\xb9\xd9\x49\x6b\x54\xbb\x1c\x27\x8b\x25\x11\xec\x2a\xa2\x79\xfb\x05\x54\xe7\x94\xf7\x95\x38\x8f\xcc\xa5\xf3\x4e\x7e\xe9\x7c\x37\x01\xa0\xab\x95\x1a\x6f\x73\x88\x9a\x00\x68\x5c\xdd\xe8\x19\xd3\xe7\x6c\x1b\x8c\xc9\x3a\x30\x4e\x6a\x8e\x59\x29\xbc\x23\xa5\x93\x35\x68\x9f\xd2\x5a\x2c\xce\xd8\xb7\xe8\x23\x18\x6f\x46\x85\xee\x2b\x60\x35\xeb\xec\x87\x6c\x19\xb1\x31\x11\xb4\xa1\x60\xc2\xc6\xd0\x71\x99\xeb\x8c\x1c\xb8\x27\xca\x23\x04\x59\xa6\xea\x26\x89\x27\x80\x41\x55\x3e\x47\x29\xcc\xb1\xaf\xa8\xa3\x6e\x3e\x85\x5e\xe5\xa0\xce\xee\xc8\x63\xe9\x25\x9b\xd0\x58\xb0\x29\xa3\x93\xcb\xab\x5b\x40\xf5\xb1\xb1\x3e\x7a\xa8\x9d\xb2\xdd\x75\x6c\x1c\x28\x8b\xca\x61\x60\x7c\x69\xa1\xe4\x67\xcd\xf9\xce\x39\xd6\x13\x7b\x08\xfe\xb9\x1a\xfe\xf3\xdd\xbb\x77\xef\x46\xf0\x1d\xf0\x0e\x06\xef\xe0\xe1\x0c\xf1\x6a\xfa\x50\xa6\x8f\x0e\x67\x88\x55\xd3\xef\x64\xfa\xfa\x70\x86\x92\x6a\xfa\x3b\xef\x70\x86\x08\x3e\x1c\xfe\xf3\xdd\xcd\xbb\x54\x66\x4c\xed\xf8\x02\xd4\x58\x1c\x08\x9a\x8a\x9a\x26\xe9\x0f\xb6\xe6\x40\x33\x85\x94\x0a\x00\x91\x30\xc3\xab\xe3\xcf\xd5\xdb\x63\xe1\x58\xa1\x6b\x9a\xfb\xe6\x3c\xe5\xa7\x85\x74\x6e\xb6\xc9\x41\xa1\x63\x28\x70\x85\xe9\x3c\xb3\x28\xb9\x22\x51\xb3\x59\xe4\x5e\xd7\x36\xc3\x9b\x46\x44\x08\x1a\x83\x82\x30\xc8\x2f\x35\x67\x15\xa9\x17\xe5\x61\xb1\xb0\x6f\x73\xac\x1b\x26\xe6\x49\x26\x2e\xe9\x87\x25\xa7\xa9\x3e\x49\xaa\xcb\x9e\x26\x19\x1f\x4b\x16\xb9\x8c\x88\xda\xe0\x3b\xdf\x05\x0e\x2c\xde\xf9\xc6\x3b\xdb\x78\x4f\x36\xde\x09\x72\x9c\xbc\xcd\xf4\xb7\x8c\x44\xf5\x38\xa9\x26\x28\xf7\xb7\x08\x95\x96\xa8\x7c\x35\xd9\xf3\x84\xda\x53\x20\x37\x6f\xb9\xeb\x1c\x3a\x9f\x81\xae\x9a\x42\xf5\x35\x85\xea\x1c\xd7\xa1\xaf\xb1\x28\xc4\x62\xb5\x72\xbe\x73\x8c\x11\xbd\x24\xd2\x0a\xcb\x18\xb0\x63\x59\x80\x41\x68\x63\xa6\xe3\x0a\xd7\x01\xef\xde\xdd\xb8\xd0\x41\xce\xcc\x81\xb0\x8a\x9b\xf2\x9b\x82\xd1\x20\xb5\xf2\x8e\x45\xa2\xc7\x35\x74\x2e\x36\xb4\x8b\xc5\x97\xda\x07\x4b\x5c\x43\xba\x1e\x33\x3e\xce\x22\xc2\x1b\x3f\x48\x4a\xca\x94\xfc\x29\xc9\x17\x37\xd2\x00\x6a\x38\x50\x53\x32\x8d\xb7\x53\x10\x23\x5e\xea\xb9\xb1\x85\x0f\x6e\x8c\x98\x22\x09\xb5\x62\x17\x31\x2b\x05\xd8\xd1\x77\xa6\x25\x3b\x8f\x31\x1f\xd2\xd1\x40\xfe\xc9\xad\x55\x42\x07\x78\x2e\x74\xf2\xca\x96\x20\x86\x83\x2c\x27\xa0\x31\x12\xc5\x45\x67\x08\x8b\x2c\xb1\x7d\x6e\x6f\x0b\x7d\x25\xd2\x14\x2d\x3e\xfc\xe7\xbb\xc3\xd5\xbb\xc3\xef\x0e\x67\x0a\x15\xed\xb3\xea\xf2\xe0\x43\x36\xc8\x3e\x9e\xb6\x7b\x64\xe8\x83\x15\xe9\xd5\xe6\xc0\x85\x7e\x3c\x85\x30\xe7\xb1\x92\x20\x80\x0d\x4b\xa0\x2d\x81\x72\x09\x84\xad\x1d\xab\x4e\xf2\x27\x0b\x9a\xcb\xdc\x56\x69\x7c\x28\x46\x5e\xb9\x99\x80\xa1\xf5\x6d\x01\xa4\xe8\x35\x1c\x41\xcd\xbf\x81\x80\xe1\x75\xce\xcc\x8b\x4e\x5d\x57\x3a\x05\xbd\x29\x8b\x22\x90\x20\xc9\x65\x2c\xa8\xdb\x1d\xa6\x47\xae\xb3\x72\xa0\x26\x61\x8e\x03\x8b\xdd\xfa\x7a\x27\xfb\x66\x0a\x6d\xe5\x1c\x7c\x8c\xd1\x0a\xca\x17\x0a\x51\xa9\xc6\x4e\x36\x05\xac\xd9\x94\x23\xb7\x9d\xeb\x42\x61\x8c\xba\x16\x21\xb3\xa5\xb9\x38\x2c\xd7\xbd\xb5\xcb\xda\x2a\x6d\xbf\x76\x7c\xeb\x84\x2d\x6b\x62\xfc\x5d\xf3\xeb\x8a\xb2\xf3\x50\x69\xa4\x31\xc6\xb7\x40\xc0\x35\x60\xa8\xae\xd9\x3f\xf3\x24\x9e\x35\xf4\x45\x95\x46\x32\xb5\x9a\xda\x98\x26\xdc\x6e\x6e\xb1\x40\x04\x5c\xad\xd8\x6a\x05\x18\x56\xd3\x88\x24\xf2\xe2\xc2\x38\x6d\x22\xa5\x74\xab\xc3\x31\x60\x86\x82\xd6\x9b\x36\x73\x43\x40\x2e\x97\x9c\x4e\xd9\x07\x00\xf7\xb1\x16\x5d\x8b\x84\x1a\x7a\xa2\x87\x56\x95\xd4\x98\xe4\xdb\x63\x46\xd3\x86\x64\x33\x8d\x3c\xd4\x9c\x68\xe8\x22\xa8\x75\x68\x66\x0c\xa0\x4b\x93\x67\xe5\x3f\xd4\xbc\xf0\x8f\xd8\x3f\x17\x2b\x68\x53\xd0\x93\xc3\x9f\x19\x24\x93\x6f\x85\x19\x5c\x21\xf5\x21\xbb\x3f\x35\x5c\x2f\xe7\xf2\xb2\xe4\xdd\x36\xd7\x1c\xaa\x33\xb5\xa1\x18\x15\x0c\x4d\xa1\x5c\xed\xae\x65\x62\x49\x14\x4b\xc0\xe1\xa0\x98\x9f\x08\x70\x14\xab\x79\xb3\x26\x69\x21\xbb\x1e\x16\x30\x7c\xeb\xdb\x7a\xfd\x79\xbe\x3d\x6c\xa4\x14\x85\x39\xcf\x3d\xd9\x62\xbb\x2d\xf9\x62\xac\x3c\x2e\xa0\x04\xc7\xde\x34\x35\x5b\xf9\x9d\x55\x29\xf6\x78\xe8\x1d\x1c\xee\x18\x49\xed\x29\x91\xa5\x42\xfb\xbf\xbf\x20\xca\xbe\xcb\x8c\xa3\x4c\xaf\x99\x16\x62\x2d\x38\xf2\x11\x92\x9a\xef\x5b\x24\x56\x15\xb2\xed\x54\xd3\xb7\xbd\xed\x23\xad\xa2\xf4\x58\xef\xd4\x55\x66\xc9\xb1\xa4\x30\x1d\xd7\x81\x66\x12\xb0\x28\x39\x82\x6b\x54\x2b\xc5\x54\xc1\xc6\x9f\xdb\x76\x2d\xcd\x67\x75\x25\x27\x1e\xfd\xc0\x52\x91\xbe\x91\x1b\x66\x0a\x07\x04\x24\x1e\xa7\x64\x32\x61\xdc\x24\xd5\xa9\x1c\x84\xa5\xa6\x56\x7c\x5e\x56\xbd\x86\x30\x24\x52\xa6\x8a\x6a\x2a\xda\x1f\x6b\x6f\x25\xf5\x6d\x48\x05\x11\xa6\x3a\x8f\xa5\x3f\x30\xae\xa2\x63\xdf\x2a\xf7\x21\xf5\x23\x6c\x26\xa4\xb6\x4d\x16\xfb\x10\xb0\x60\xb2\x9b\x7b\x0d\xeb\xec\x5c\x58\x7e\xbd\x6b\xed\x11\xf5\x2d\xb4\x66\xd3\x49\xd5\xc3\xe6\x87\xe2\x7a\x5a\x1d\xd7\xcd\x0f\xf3\xd6\xbb\x7c\xbd\xec\xae\xae\x72\xf7\x11\x63\x5c\xa4\xef\xe7\xcf\xa5\xca\x6d\x90\xb7\x2d\x2c\x2a\x84\xb2\xdb\xfa\xa2\x28\xaf\xa3\x4d\x92\x80\x01\x63\xb5\x87\xb9\xde\x28\xe7\x0e\x67\x80\x63\x41\x39\x10\xc0\xd2\x72\xd2\x49\x8a\x1b\x9b\xb5\xb7\x4f\xb5\xcf\x8b\x81\xf5\x29\x14\x40\x27\xea\x4b\xb9\xc6\x2b\x06\x5c\x97\x4b\x9e\x6f\xd3\x8f\x5a\x97\x24\x5b\x44\x85\x62\x75\x43\xc3\xf6\x29\x54\x39\x3e\xc8\x8d\x13\x2c\x43\x8e\xc2\x66\xe6\xdd\x3b\xc7\xb6\xb2\xd0\x63\xb5\x6d\x7b\xc7\xe9\x8c\xa5\x82\xdf\x6a\xa1\x1c\xe5\x8e\xb1\x35\x11\x55\x89\x09\x70\x0e\xaf\x48\x4a\x0f\x1d\xe5\xc4\x23\xdf\x47\x91\x89\xf9\x4e\x40\x35\x13\x34\x4d\x37\xf7\x65\xdf\xd3\xdb\x14\x6c\x7a\x0a\x91\x62\x12\x4d\xcd\x0e\xb3\xc8\xe9\x29\x25\xee\x4f\x9c\x29\x9d\x4f\x4e\xee\x2a\xcd\xf4\xc8\x64\xf2\x84\x45\x14\x55\x52\xe1\x7a\x2f\xb6\xa2\x7f\xde\x59\x88\x15\xc6\xe8\x26\xe1\xef\x59\x3c\x2b\x16\x5e\xe8\x1c\x3a\xa8\x24\x0c\x75\x98\x5b\xad\x53\xc3\xaa\x25\x6e\x51\x8f\x4f\xe7\x9b\x51\xa1\xf4\xe3\xb1\x5a\xa2\x28\xa7\x03\x35\x19\xef\x2c\xba\xb0\xd3\xed\x78\x5e\xac\x4d\x43\x28\x5c\x2b\xfb\x3f\x2d\x0f\xac\x75\x03\x95\x3e\xbd\x5a\x91\xb1\x56\x73\x32\x31\x3d\x76\xd4\x7d\xc7\x2d\xe1\xe4\xed\x9c\xa5\x8d\xa9\x9e\xda\xbc\x04\x00\x1b\xe9\x9c\x2d\x1a\x93\x84\x56\x4c\xff\x1a\x89\x98\x53\xde\x10\x73\x12\x37\x64\x91\x0d\x1a\x8f\x93\x09\x8b\x67\x9e\x96\x0f\xf7\x37\x5b\x2c\x0b\xac\x15\x5a\xe5\x87\xb2\x78\x35\xd2\x61\xc3\x71\xb7\xf4\x0a\x12\xdd\x8a\xa6\x29\xeb\xd9\x7c\xcf\xb5\x81\xd0\xda\xdd\xd1\xdd\x7a\xbd\xc7\x76\xa1\x04\x43\x06\x8b\x42\x5b\x9a\xe3\x58\x00\x6e\xd0\x5b\x15\xa2\x8f\x3a\xdf\xfe\xf2\xea\xe2\xf2\xc9\xd3\x67\x17\x7b\xb9\xe3\x29\x63\xfe\x02\xb8\xc1\x5f\x32\x99\x94\x13\x12\xc3\x35\xb2\x13\xee\x5d\xc5\x0f\x4f\x5f\x5f\x3c\x7e\xfb\xf2\xf5\x2f\x75\xf5\xc4\xda\x27\x51\x7d\x75\x7a\x74\xeb\xfd\x71\x0b\xa5\xe1\xd4\x42\x97\x41\x62\x53\x8c\xae\x9f\x8e\x30\xb6\x3b\x29\x4b\xab\x69\xfb\xef\x2d\xb2\xe8\xd4\xda\x2c\xb8\x4f\x15\xa9\x8a\xd8\x8e\xc1\xb2\x46\xe5\x5a\x0a\x37\x44\x70\x8d\x6b\xf6\xa2\xe0\x35\x78\xf6\x22\x11\x0d\xd2\x98\x14\x5d\x6b\x38\x6e\xb9\x53\x37\xf3\x62\x53\xac\xb2\x35\x30\xb7\xe8\xac\x55\xfb\xed\x9b\x9b\xfd\xf9\x64\x09\xb9\x71\xc9\x6f\xb7\x40\x6f\x51\xb9\x98\x6c\x13\xef\xdc\x94\x48\xdf\x37\x59\xaf\x91\x35\x0b\xd8\x47\x9b\x03\x88\x83\x3d\x6d\x23\xb0\x21\x3f\x2a\x1d\xd5\x06\x81\xc3\x26\x12\xc3\x66\xfa\x2b\x2d\x26\xe3\xbc\x6f\xf2\xe5\x09\x4f\x16\xdf\x93\x94\xe6\x07\x35\xaa\x5d\x3f\x71\x96\xdb\xa0\x9b\xd7\x8f\x66\xa5\x70\xbd\x97\xec\x5a\x6c\x09\xda\x00\x0f\xeb\xe4\x7e\xe7\x9f\xfa\x80\xc9\xe8\x1e\x86\xad\x77\x87\xef\xde\xfd\xf3\xbb\x03\x77\xe0\x01\xb8\x1a\xbe\x1b\xdd\xad\x47\x87\x33\xe4\xbc\x7b\xf7\x5d\xb3\xba\x29\x32\xb2\x10\x97\x32\x1a\x2a\x18\x48\x2d\x9e\x6d\x4f\xe4\x06\xe5\xae\x76\xb6\x14\xae\x6a\x27\x93\x56\x38\xb1\x51\xf3\x6c\x97\x52\x3f\x15\x45\xa1\x6b\x74\x95\xb1\x68\xf2\x13\x67\xe1\x86\x39\x9d\x59\x16\xfb\x1f\x9b\xca\xbc\x89\xdb\xf8\xfe\x8a\x88\x79\x6e\xaf\xcd\xe2\x86\xc9\x5f\x5d\x00\x25\x91\xdd\xe8\xc1\x8e\xda\x2a\x18\x91\x53\x60\xb2\xbd\x5f\x29\xe5\x07\x5a\x1c\x2f\x91\x5d\xf8\x41\x0a\x96\x15\x6e\x6b\x99\x37\xe4\x83\x7c\xa8\xe4\xb8\x68\xe1\xe3\x1f\xcf\x9f\xfd\x28\xc4\xf2\x35\xfd\x2d\xa3\xa9\x28\xd6\xb3\x97\x2c\x69\x0c\x9c\x19\x15\x0e\x12\x68\x3f\x28\xce\xdf\xe4\x03\xa7\xe9\x32\x89\x53\xfa\x96\x7e\x10\xeb\xb5\x0a\x4d\x10\x6f\x39\xf3\xfb\x1c\x21\xed\x6e\xad\xc4\x4c\x29\xad\xb5\x8f\x2d\x59\xb2\x86\xc5\xd2\x06\x8d\xaf\x19\x4f\xe2\x85\xdc\xe6\x6f\xb1\x55\x31\xa7\xca\x82\xb6\xb1\x48\x26\x59\x44\x51\x83\x89\xff\x4c\x1b\x4b\x9e\x5c\x91\xab\xe8\xb6\xa1\xf5\x32\x72\x1e\xcd\x15\x08\x36\xbd\xf5\x1c\x65\xc0\x5e\x0a\xda\xa5\x85\x5d\x29\x16\xae\x56\xb5\xdf\x0d\xd1\xaa\x93\x05\x2a\xed\x68\xd0\x45\x16\x11\xad\x37\xcc\x9b\x6c\x1c\xd4\x35\xd8\x62\x19\x51\xd9\x1b\xf5\x3d\x6d\x24\xd3\x86\x39\x1a\x9e\x14\xda\xa0\xb4\x62\x45\x5f\x37\xd4\xf5\xfb\x69\x7b\xdf\xac\x0f\x89\x1c\x63\x6d\xe6\xa0\xbb\xa9\xb6\x26\x08\x9d\xe1\x93\xe9\x48\x3f\x3b\xa8\x38\x50\x75\xc0\x20\x1c\xbe\x49\x47\xe6\x7d\x65\x3d\x37\x86\x2f\x93\x51\x26\x22\x16\x53\x28\x05\x41\x22\x7b\x90\xea\x1c\x17\x74\x64\xde\x57\xc3\x9f\x6f\x46\x73\xca\x25\xcc\x92\xaa\x1b\x16\x1a\xe4\xd5\x72\xa4\x5f\x57\xc3\xb7\x62\x94\x4c\x12\xe8\xa0\x24\x8e\x6e\xf5\xd7\x97\xc9\x28\x8e\x6e\xa1\x83\xae\xc8\xf8\xfd\x4c\xc5\x49\x0a\x9d\xe1\xf7\x57\xa3\xe2\xd5\x41\x33\x76\x4d\x63\x0d\xfe\xd7\xd9\x48\xbe\xa8\xca\x98\x98\xaf\x86\x8f\xc8\x28\x9e\xac\x64\x86\x4c\xac\x54\x73\xc6\x74\x29\xa0\x83\x6e\xe6\x79\x1e\xd5\xae\x78\x35\x7c\xca\x46\xd3\x6a\x06\xe8\x20\x51\x80\xbd\x15\x1a\x4c\x96\xb1\xa4\x63\xb1\x05\xaa\xce\x71\xd3\x70\xe8\xa8\xf6\x38\xc8\x91\x55\x38\xc8\x91\x45\x38\xa3\xf5\xfd\xbc\xa2\xde\x09\xce\x16\xf5\xd4\xd6\xd2\x24\xa7\xee\xea\x5d\xea\xe6\xba\x64\xc4\xef\x91\xc9\x86\x67\xe9\xf7\x11\x89\xdf\xd7\xe4\x90\x65\x1f\x7c\x77\x38\x2b\x68\x35\x62\xe9\x8b\x44\xec\x02\xcf\x65\x05\xf5\x5d\x83\xc7\x93\x1c\x77\x6b\xe8\xcf\xe1\x3f\xc1\xbb\xf4\x00\x1e\xe6\xa7\x4c\x96\x99\xac\x18\xfa\xa3\xe2\xaa\x93\xff\xb9\x47\x27\x81\xb1\xf6\xe8\x1a\x1f\xf8\xed\x93\x8f\x9e\x00\x22\x8e\x52\x7c\x17\xe5\x06\x8c\xc4\x33\x96\x8d\x28\xa2\x53\xf1\x4a\x0e\xd8\x3c\x89\x26\x94\x3f\x9e\x13\x1e\x3a\x43\x47\x3b\xee\xdb\xfa\x30\x72\xd6\x28\x53\x81\xaa\xa4\xc8\xc2\xd2\xcb\xbc\xc4\x41\x59\x36\x5d\x87\x74\xb5\x4a\xa1\x97\xa7\xac\x56\x69\xf1\x8c\x22\x65\x9a\xb5\x55\xa7\x82\xd9\x4e\x46\x63\x4c\xbd\xba\xa6\x48\xf8\xba\xf4\xcd\x58\xed\x2a\xae\xbb\x9b\x79\xc6\x02\x88\x02\xc7\xac\x7a\x07\xba\x4e\xa8\xe2\xc3\x7b\x07\xd0\x41\x0e\xdb\x0e\xe0\xbe\x9d\x37\x27\x0e\x75\x99\xe7\x9f\xca\x5c\xae\xe7\xba\xec\xcb\x4f\x65\xcf\xc9\x8c\xca\x6c\x32\x6d\x84\x7d\x97\xc5\x7d\x67\x3e\x5d\x6f\x97\xf7\x1f\x2a\xae\xfb\x76\xf2\x5d\x07\xad\x1d\x88\xae\x36\x0a\x93\xdf\x54\x2c\xf8\x59\xf5\xe4\x4c\x65\x1a\xbe\x7b\xb7\xfa\x3f\xff\xfb\x7f\x8d\x06\x2d\x99\x1b\x3a\x10\x5d\x6e\x97\xfc\xff\x03\xc3\x7f\xe2\x91\x2e\xe4\x66\xf7\x67\xac\xdb\x6d\x69\x29\x2e\x00\x45\x71\xee\x7e\x8d\xe0\xd8\x0d\x14\x7f\x64\x53\xc0\xf0\x6d\x21\xb2\x14\xb2\xf7\xbe\x72\xf5\x95\xdf\xa0\x52\xc7\x0b\xf8\x7a\x03\x4c\xa7\x5e\x16\x71\x1c\x8b\x53\xf7\x39\x89\x27\x11\x05\xce\xa3\x38\x4e\xf4\x32\x76\xd0\xdd\x7b\x7a\x1b\x26\x3a\xfa\x27\x1b\x06\x23\x68\x1c\x4b\xed\xfb\x6b\xa4\x4d\xc4\x19\xbe\xf9\x63\x45\x15\x49\xed\x11\x2c\x0b\x9d\xee\x2e\xf4\x49\xce\xa1\x64\x29\x45\x86\xc9\xee\x0c\xb9\x79\xd2\x46\x8e\xf9\xee\x1c\xdf\x5b\x2c\xa6\x92\x67\xb9\x3b\xcf\x45\x8e\x96\x05\xf0\xd5\x47\x2a\x90\x54\x53\x96\xed\x97\x65\xcf\x76\x83\xff\x40\x24\x9f\xae\xb4\x64\xb1\x1b\x5a\x4a\x63\x05\xb4\x75\xc7\x56\x89\x26\xc2\x5b\xd0\x34\x25\x33\x8a\x1d\x25\xa1\x34\xa4\xa0\x2f\xe5\x20\xc9\xc4\x1b\x8e\x4b\xdc\xff\x44\x0d\xe7\x3f\x5d\xea\xfe\xa7\xe3\xbd\x8b\x5f\x72\x36\x63\x31\x89\x1a\x54\x01\xdf\x90\x34\x6c\xfc\xa7\x5b\x14\x82\xc4\x7a\x6d\x36\x32\x3c\xad\x1c\xb0\xb1\x72\x3f\xa0\x10\xfe\x25\xe2\x9b\x97\x8e\xb7\x0e\x30\x0f\xdf\xf1\x77\xf1\xea\x5d\x7c\xa8\xcf\xad\xf4\x39\xcb\x05\x44\xac\xd9\x64\x40\x18\x9a\x0e\x94\x77\xb5\xe2\x45\x8b\xce\x6f\xb6\xcd\x79\xee\xd6\xb6\x66\x8b\xf2\x0d\xc7\x0a\xca\xc5\x04\x37\x30\x59\xbc\x0d\x05\xef\x62\x70\x1f\x73\x45\xb8\x75\x20\x2e\xe0\xdd\x84\x46\x54\xd0\x86\xac\xa4\x6a\x21\x53\xb1\x8c\x92\x5b\x6e\x3a\x14\xd5\xa8\xba\xa3\x2d\x19\x52\xb8\x8e\xdc\x7f\x64\x31\x55\xd2\x07\x9d\x34\x88\x50\xbb\xac\x86\x60\x0b\x5a\xc8\x83\x77\x7a\xfe\xc3\xed\x12\x25\x4b\x7d\xb9\x75\xc9\x0d\xe9\x4d\x81\x11\xff\x3f\x18\x07\x63\x6f\xc0\x9d\x32\x43\x65\x5e\x9c\x24\x4b\x74\xa5\xd8\xbf\x79\x21\xc5\x72\xde\xd8\x79\xc6\xd6\x08\x56\xe9\xbb\xdc\x2d\x08\x92\xce\x81\x52\x06\x20\x61\x7c\x77\xad\x51\x2e\x73\x5a\xb3\x12\xdb\xd1\xcf\xe8\x4d\xe3\x11\x88\x11\xd7\x91\xef\xe0\xba\x94\x47\x13\x5b\x20\x24\x6b\x8b\x5a\x26\xc0\x38\xd5\x2d\x2e\x1d\xe6\xc5\xe8\x1e\x72\x08\x3d\x5d\x13\x62\xc6\xb5\x1c\x4e\xb4\xe6\x49\x8f\xdd\x96\x3f\x10\x81\x85\x57\xbc\xd5\xf8\xe8\xa8\x5e\x16\x89\xf5\x59\x03\x85\xf9\x52\xd4\x9f\x57\x2b\xeb\x0c\x50\xe3\xad\x3d\x19\x0a\x0b\xb6\x37\x0e\x8f\x1a\x66\x88\xf4\xf5\xbf\x7c\x93\x90\xc4\xb4\x91\xf0\xc6\x22\xe1\xb4\x91\x0f\x89\x7d\x23\xb0\x5c\x18\x6b\xf4\x61\xfb\x62\xe3\x9d\x31\x02\x53\x93\xb2\xb1\x24\xd8\x54\xca\x8a\x87\xb9\xef\x8e\xed\x26\x15\x4e\x01\x4b\x3c\x68\x38\xae\x80\x7b\xdb\x28\x57\x2c\xad\xed\xfe\x16\xbb\x97\x35\x7a\x54\x1b\x9c\x8a\xe0\xe1\x08\x29\x3f\xeb\xfa\xba\xc5\x7b\x14\x55\x50\xb3\x8a\x7b\x44\x5b\x33\x19\x36\x22\xe4\x6a\xbb\x1f\xd2\x46\xbb\x90\x16\x39\xb2\x9a\x8f\xe0\x6e\x81\x8a\xdb\xfa\x17\xbd\x88\x9e\x03\x81\x32\xc4\xd1\xb8\x74\x34\x68\xec\xf3\x60\xb9\xdc\xd6\x36\x1e\xd7\x1e\xce\xe9\xee\xbf\x05\x02\x8d\xcb\x7c\xd9\x7a\x0d\xd1\xd8\xb2\x4d\xdc\x8d\x8f\xd1\xef\xc2\xc7\x4d\xfb\x03\x85\x18\xca\xeb\x4f\x6e\x41\xb6\xad\x7a\x36\x98\x9a\x5b\x32\xef\xc2\xd2\x35\x80\xe8\x4e\x79\x21\x08\xa9\x35\x31\x69\x58\xd2\x73\x34\xa1\xe9\x98\xb3\xa5\x9a\x30\x52\x0c\x75\x1a\xc6\x20\xfd\x94\x2f\x99\x02\xf5\x21\x2c\xcd\xd5\xbc\x98\xbc\xa7\x13\xa0\x4e\xf5\xde\xd6\x9e\x94\xab\x2b\xe5\xc3\x11\x22\xd8\x37\xc6\x51\x39\xa6\x65\x3b\x51\xe9\xba\x44\x82\x5b\x9b\x04\x99\x30\x53\x25\xdb\x01\xce\x44\x31\xef\x48\xa2\xd3\x26\xa6\x56\xac\xac\x54\x36\x1b\x25\x75\x46\x87\x58\x42\x94\x25\x78\x23\xbb\x0e\x85\xb0\x12\x4b\xec\xc4\x2b\x2d\x64\x4c\xe4\xbe\x28\xf1\xac\xed\x19\x10\x55\xe3\xa9\xfa\x16\x2f\xeb\xaa\x98\xee\xaa\xc2\x4e\xb5\x5b\x7c\x5d\xfd\x54\xb4\x1f\xdd\x42\xb4\x00\x02\x29\x3b\xf0\x2d\x4b\xad\x39\xa8\xfd\x3a\xc9\xd9\x8d\x1a\x48\x51\xb1\xa5\x92\xc9\x85\x4f\xf9\x05\x88\x2d\x33\x73\x5d\x8c\x9a\x64\x58\x75\x01\x52\x33\xe0\x75\xbd\xce\x6a\x7b\xad\xb1\x02\xa2\x39\xa8\x9a\x66\x99\x13\xa2\xc4\x2b\x37\xd0\x4a\xb3\x5f\x9d\x03\x0a\xcf\x48\x1d\x89\x2d\x20\xb4\xc8\x25\x49\xfb\xb0\xb8\x1f\x1a\x8c\x70\xe5\xcd\x15\x6e\xe2\x29\x1d\x00\x28\x6e\x25\x92\x0d\xa3\xaa\x8a\xa1\xf2\x95\xb2\xe5\x2c\x59\x9a\x6d\x57\x75\x3f\xc0\xab\x92\x20\xf0\x9d\x04\xa1\x14\xa0\x77\xd0\x04\x41\x97\x92\x1e\x7c\x82\x80\xa5\x7f\x84\x80\xc9\x1e\xdc\x69\xc5\x0c\x97\x8b\xff\xfd\x36\x37\x54\x6b\x7d\x9b\x8a\x56\x6d\xbb\xb5\xff\x2b\x20\x8a\x46\xe8\xcf\xf7\x6a\x84\xa9\x7f\xa8\x44\xb0\xe7\x35\xf6\xe3\xb9\x7f\x5b\xc5\xec\x94\x6f\xa1\xe1\x08\x8d\xb1\x6f\xb6\xef\x39\x21\x9a\xef\x24\x44\x37\x25\x21\xba\x29\x35\x70\x17\x6b\xb9\x89\xaf\x5a\x72\x1a\xd7\x38\xd3\xba\x85\x9e\xed\x26\x4d\xcb\x3c\xdb\xbd\x49\x13\xb2\xb6\xe8\x68\xba\xb5\x98\x16\xd5\x44\xb3\x98\x6e\x25\x53\xdb\x4d\xa5\x16\xbb\x1a\x3f\xab\xab\xe2\x7a\x57\x15\xd3\x1d\x54\xea\xa6\xfa\xa9\xec\xca\xc6\x87\xa2\x63\xe8\x02\xa2\xcb\x6d\x02\x75\xad\x9b\x29\x51\xaf\xe6\xeb\x6d\x2e\x78\x6c\x91\x2f\xb9\xa8\xa2\x92\x7c\x5d\x82\x68\x9b\x7c\x45\x55\xf2\x35\x03\xb5\x93\x52\x37\x1c\xf3\xda\xe1\xc8\xc9\xd7\x95\x4d\xbe\x2e\x3f\x83\x7c\x8d\xef\x47\xbe\xb2\x61\x66\x91\xaf\xca\x5b\x1d\xf9\x1a\xdb\xc8\x77\xb3\x41\x10\x5e\x2a\x5f\xb0\x05\x9d\x58\x5b\x8a\x92\x0a\x8c\xb6\x8c\x7e\x05\x26\x16\xc8\xcb\x92\x70\x65\x3b\x09\x57\x71\x95\xe9\x8f\x90\xad\xe9\xef\x22\x5b\x2f\x41\xee\x80\xb3\x56\x44\xe2\xf5\x22\x52\x8a\x34\x89\x29\x25\x28\x75\xef\xcc\xf2\x3a\x56\x1e\x1c\x0d\x48\x61\xd5\x0c\xc3\x78\xbd\x46\xaf\x6a\xae\x23\x0c\x47\x52\xd4\x2c\xc6\xf0\x43\x29\x12\x55\x48\x90\x44\x36\xdb\xbe\xa2\xca\x49\x0d\x8a\x19\x94\x5c\xa3\x4d\xb9\x9d\x57\x05\x0e\x7b\x29\x66\xf7\x10\x3b\xf4\xd2\x9f\xe4\xe3\x15\xec\x09\x3c\x03\xfc\x23\x97\xde\x04\xd6\x74\xd4\x10\x38\x0a\x95\xba\x37\x8c\x2b\x4a\xeb\x4d\x04\x2f\x06\x2e\x76\xcb\xfb\xff\x01\x12\x52\xbc\x2c\x84\xca\x3a\xd9\x6f\xf7\x48\x20\x52\xbf\xa5\xa8\xca\x3f\x92\x31\x6c\x77\xf7\xba\x56\x08\xb9\x2e\xe4\xca\x3b\x1b\x5b\x08\x9a\x32\x1a\x4d\xd2\xf0\x0a\x08\xa4\x5c\xc7\xa2\x5b\xb9\xfb\x30\x93\x5a\xf5\x3a\xb7\x3d\xde\xf3\xba\xf1\x5e\xc0\x0d\x3f\x6b\x9b\xed\xd4\x79\x97\xf5\x79\xff\x78\xe3\xb7\x78\x92\xfc\xcc\xd5\x75\x13\x65\x2e\x2e\xb3\x54\x58\xc6\x8e\x9e\x6d\x8d\xc1\xf5\x16\xfe\x6a\xd8\x3a\x81\x70\x83\x78\xee\xc2\xe2\xcb\x5d\x62\xef\xe5\xa6\x2d\x7b\x7e\x4f\xa7\xd2\x8d\x3d\xc9\xfd\x6a\xf4\x4a\x4c\x6e\xb4\xe9\x07\xe1\x3a\x0a\x57\x3f\x38\x23\x5c\x88\x83\x23\x64\x7d\x4d\x05\xe1\xc2\x8b\x58\x4c\x25\x08\xad\xf9\x36\x4e\xa2\x6c\x11\xcb\xaf\x42\x1d\x38\xb8\xc2\x46\xff\x51\xc5\x34\xff\xaa\x72\x09\x64\xa6\x6c\x9c\x0d\x05\xdd\x36\x86\xce\xf5\xd5\x58\x0c\xe3\x91\xaa\x13\x11\xfd\x6c\x95\x8f\x52\x5c\x27\xb8\xee\xfd\xb9\x72\x33\x1b\x61\x20\xff\xae\x56\xc3\x51\x69\x68\xab\xcc\xb2\xb9\xcd\x49\xad\xcd\x20\xd5\x03\xfb\x72\x0a\x9c\xff\xf3\xbf\xff\x97\x03\xcf\xb1\x3f\x50\x4f\xa1\xb3\x72\x90\xed\x8e\x88\xeb\xe6\xda\xd1\xcd\xc4\x3e\xc6\x6c\x27\x6f\x79\x1a\x8f\x13\xce\xe9\x58\x58\xc6\xf6\x7a\xba\x95\x43\x6d\x2d\x5a\x34\x04\xb9\x8a\xa8\xd7\xb8\xc8\x75\x7d\xea\x76\x4e\xe3\x2a\x13\x8d\xa9\x92\xa7\x1d\xb7\xa8\xa1\xb8\x69\x6f\xf3\xef\xaa\xf0\x7a\x03\x94\x0b\x84\x5c\xa6\xb5\x39\x6b\xc1\x0d\xc5\xce\x16\xe7\x3a\x6d\xdd\xa8\x7a\x9e\x38\xa7\x64\x62\xbc\x52\x7d\x72\x5b\x70\x9f\xf2\x78\x72\x93\x3a\x1b\x9c\xbd\xd0\x5d\x15\x2a\xe3\xdf\xad\x99\x2d\x7c\x5a\xc9\x31\x17\x50\xf9\x17\x16\x43\x2e\xf1\x1d\x51\x5b\x58\xb0\x15\x31\x6a\x35\x7e\xcc\xbc\xf9\x51\x6e\xd9\x5c\x30\x86\xa2\xa4\x47\x1b\x1e\xf9\x8c\xf3\x74\xe5\xf8\x4a\x1f\xd0\xda\xe7\x41\xef\xde\x39\x6e\xe4\x3a\xfa\xd4\x8b\xeb\x07\x99\x36\x56\x97\xb7\x50\xb1\x66\x86\x7c\x64\xdf\xa3\x2e\x8f\x53\xff\xa4\x2d\x55\xf5\x56\x41\x05\x9d\xf8\xc7\x46\xc2\x88\x2e\x8f\x80\x30\x94\x0c\x51\xed\x76\x12\x56\x84\x99\x0b\x20\x3c\xeb\xbd\x14\x6d\xa8\x9d\x5c\x95\x74\x5e\x02\x81\xa8\x67\xa5\x40\x23\xfa\xbc\xb4\x2b\x53\x49\xca\xcf\x84\xa5\xf8\xb9\xb7\x43\x9e\x6d\xb9\x41\xdd\x45\xf0\xa6\xa9\x56\x8f\x03\x0e\xba\x3d\x08\x8b\x2b\x9d\x5b\xc7\x1e\xbc\x20\x7e\x55\xeb\x4f\x8a\xb4\xc1\xa8\x72\x32\xa1\xb3\x01\x56\x5a\xcd\x35\x9b\x1c\x24\x70\xb5\x4a\xee\x7d\xfa\xdd\x3e\x31\xc7\xdf\xe6\xe6\x60\xb7\x70\x76\x50\x76\xc7\xd3\x2e\x1a\x76\x38\x37\x65\x48\xf9\x75\x2b\xce\xa6\xe3\xe2\x28\x3c\xc5\x54\x37\xd1\x18\x7b\x27\x80\x2b\x77\x34\x5e\x11\x4a\x71\xb5\x12\x5e\x25\xb6\x22\x80\x7b\x9b\xca\x2c\x52\x7f\x27\x7a\x0c\x0c\x46\x20\xb3\x64\x36\x54\x51\x85\x2b\xf0\x53\x30\x01\x31\xae\xe0\x09\x72\x8c\xfd\x88\x03\x07\x99\xf7\x41\xe3\xc2\x15\x0d\x27\x20\x46\x4e\x12\x47\xb7\x2a\x3d\x4f\xf6\x64\xca\x6a\x95\x79\xd3\x3c\x45\xbe\x4c\x8a\x5c\x25\x24\xac\xf8\xec\x83\x77\x1c\x6c\xb4\x6c\x6a\xad\x81\x89\x9c\xcc\x4a\x3b\x98\x08\x55\x62\xd1\x02\x26\xca\xba\x99\x90\x3f\x8c\x89\x50\xa6\x6f\xe9\xb2\x4a\xa5\x71\x71\x24\xec\xb8\xbc\x3c\xee\x16\xd0\x75\xcc\x51\x76\xe9\x14\x4f\xd3\x10\x36\x05\xc6\x6c\x8d\xe5\xa7\x80\xfb\x7e\x1e\xf9\x72\x5a\x7a\x08\x49\x37\x35\xe6\xf5\x13\x13\x01\x83\xcf\xe6\x2a\x3f\x2c\x4f\x69\xd2\x30\x42\xc5\xb0\x8d\x11\x13\xda\x73\xc2\x96\xd3\xac\x69\x75\x59\xc3\x4d\x57\x88\x5c\x7b\xc9\x12\xc8\x5c\x1c\x67\xe2\xf2\xf3\xcb\x29\x8b\x31\x97\x35\xd6\x08\xa1\x4f\xf8\x87\x2f\x46\xdd\x22\x66\x20\xfe\xc6\xae\x70\xec\x1d\x1e\xec\x37\x0e\xfe\xcc\x7f\x7b\x8f\x93\xe5\xad\xb2\x2e\x69\x80\x31\x6c\x3c\x67\x63\x9e\xa4\xc9\x54\x34\x1e\x27\x7c\x99\x70\x35\x3b\x5e\xe3\x51\x14\x35\x14\x50\xda\xe0\x34\xa5\xfc\x9a\x4e\xbc\xbd\x67\x6c\x4c\xe3\x94\x4e\x1a\x59\xac\x62\x42\xcd\x69\xe3\xd1\x92\x8c\xe7\xb4\x61\xbe\xa0\xc6\xdf\xb5\x3f\xe1\x46\xdb\xf3\x1b\x40\x02\x38\xe6\x93\x03\x4f\x1b\xb7\x49\xd6\x58\x90\xdc\x50\x8f\x2a\x72\xdb\x98\xb2\x88\x36\xa8\xb2\xe3\x92\x4b\x60\x9c\x2c\x96\x11\x23\xf1\x98\xea\x5b\x7f\xa2\x2c\xdd\x6b\xfc\x62\x0a\x48\xae\xd4\xb9\x19\x69\x8c\x93\xe5\xad\x14\xb9\xc4\x9c\xe6\xad\x6b\x10\xd1\x98\x0b\xb1\x0c\x0f\x0f\x6f\x6e\x6e\x3c\xa2\x1a\xe8\x25\x7c\x76\x18\x69\x80\xf4\xf0\xd9\xd3\xc7\x17\x2f\xde\x5c\xb4\xda\x9e\xbf\xb7\xf7\xf6\xc7\xa7\x6f\x1a\x8f\x5f\xfe\x70\xd1\x78\xfa\xa6\xf1\xea\xf5\xcb\xbf\x3f\xfd\xe1\xe2\x87\xc6\xcb\x17\x8d\x47\x2f\x1a\x07\x8f\xde\x34\x9e\xbe\x39\x68\x7c\xff\xe8\xcd\xd3\x37\xa8\xf1\xf3\xd3\xb7\x3f\xbe\xfc\xe9\x6d\xe3\xe7\x47\xaf\x5f\x3f\x7a\xf1\xf6\xe9\xc5\x9b\xc6\xcb\xd7\x8d\xc7\x2f\x5f\xfc\xf0\xf4\xed\xd3\x97\x2f\xde\x34\x5e\x3e\x69\x3c\x7a\xf1\xcb\xde\xdf\x9e\xbe\xf8\x01\x35\x2e\x9e\xbe\xfd\xf1\xe2\x75\xe3\xe2\x1f\xaf\x5e\x5f\xbc\x51\x90\x4f\x9f\xbf\x7a\xf6\xf4\xe2\x07\xd4\x78\xfa\xe2\xf1\xb3\x9f\x7e\x78\xfa\xe2\xaf\x45\x91\xcf\x9e\x3e\x7f\xfa\xf6\x91\x2c\x45\x96\x90\x43\xee\x7d\xac\xa6\xb7\x4f\xdf\x3e\xbb\x40\x8d\x27\x4f\xdf\xbe\x90\xe5\x3f\x79\xf9\xba\xf1\xa8\xf1\xea\xd1\xeb\xb7\x4f\x1f\xff\xf4\xec\xd1\xeb\xc6\xab\x9f\x5e\xbf\x7a\xf9\xe6\x02\xed\x3d\xbf\x78\xfd\xf8\xc7\x47\x2f\xde\x3e\xfa\xfe\xd9\xd3\xb7\xbf\xc8\x82\x5e\xbc\x7c\xd1\x7a\xfa\xe2\xc9\xeb\xa7\x2f\xfe\x7a\xf1\xfc\xe2\xc5\x5b\x6f\x6f\xef\x0d\xa5\xf6\x84\xda\xf3\x98\x0f\xec\x34\xe1\x8d\x74\x49\xc7\x6c\xca\xc6\x8d\x9c\xc7\x34\x66\xc9\x35\xe5\x31\x8b\x67\x8d\x25\xe5\x0b\xa6\x9d\x00\xec\x91\x78\xd2\x50\x6e\x31\x8d\xdd\x63\x89\x31\xf9\x64\xee\xfd\xa9\x58\xdd\x38\x38\x54\x54\x74\x8f\x7b\x5c\x3b\x94\x51\x0e\xd2\x2c\x97\x4c\x6f\x04\x11\x59\xba\x33\x4e\x4a\x9e\x83\xa4\x29\x9b\xc5\xbb\xfd\xaa\x19\x30\xcd\x85\x9f\x93\xf1\x5c\x6e\xc7\xea\xa0\x27\x16\x74\xe1\xf8\xa2\x16\x72\x29\x21\x2b\xb6\x0e\x43\xea\xbd\x48\xc4\x1b\xb9\xa7\xa3\x13\xec\x8f\xb0\x53\xbe\x3a\x48\x7e\x7e\x9d\xc5\x72\xcc\x71\x30\xc2\x8e\x79\xd6\x1f\xde\x88\x64\xb9\xa4\x13\xdc\x1e\x61\xc7\x3c\x3b\x6b\xa0\x2f\xf6\xde\xe5\xf1\x60\x12\x7c\x27\xc9\x4c\xe8\x7c\x48\x05\x11\x72\x7b\xc4\x84\xb3\xae\xf7\xad\x57\x84\x50\xa4\x83\xe1\x28\x1c\x8e\xca\x9b\xf3\x25\xdf\x4b\xad\xbb\x3a\x95\x82\xf3\xd1\xd4\xbf\x52\x82\x0f\xa9\xe5\xd9\x3d\xb3\x25\xf2\xcd\x40\x83\x80\xe2\xed\xd8\x83\xcd\xa6\x32\x2e\xa4\xa3\x81\xfc\x13\x52\x38\xd0\x15\xd2\x75\x58\x43\x89\x69\xfe\x55\x05\x0f\x44\xf4\x03\x1d\x2b\x0b\xbe\xca\x21\x5d\xad\x17\xc1\xc2\x68\x01\x63\xb1\xae\xf5\x4a\xb0\xdd\xb6\xb2\x29\x74\xeb\xf0\xcb\x0c\x8e\x09\xe1\x87\xc6\xc6\x31\x98\x40\x64\xac\xa5\xe7\xe1\x08\x8d\xe7\x24\x9e\xd1\x49\xb8\x1f\xa0\x05\x11\xe3\xb9\x64\xd1\x55\x4f\xf8\xb9\x7c\x51\x44\xf1\x54\x7e\x2c\xef\xd6\x79\x10\xc6\xbb\x71\x12\x4f\xd9\x2c\xa4\xe8\x32\x59\xea\x72\x05\x52\xae\x19\x48\x24\xf1\x9f\x86\x79\x0b\x3c\x93\x5a\xd4\x4f\xe4\x1e\x58\x82\xa4\xc3\xe2\xe3\xc8\xa3\xb1\xe0\xb7\xbb\x4d\xfb\xd5\xfc\x79\xa6\x08\xb5\x05\xcf\x3b\xa6\xe5\x4a\xfa\x41\xd8\x5d\xc9\xcb\x85\x6b\x24\x38\x89\x53\xed\x32\xc2\x3a\xa2\xc9\x1d\x47\xa2\x14\x4d\xb6\x27\x5f\x0c\x4c\xeb\xc5\x76\x35\xeb\x50\xa0\x39\x9e\x98\xe8\x68\x4b\x3c\x29\xeb\xc7\x63\xc0\x20\xba\xc6\x45\xff\xe6\x23\xb5\xc7\xf7\x12\xa3\xd5\xb8\xc5\x44\xbd\x0d\x17\x9e\xac\x69\x04\xd1\xd5\xa6\x49\x8f\x15\x37\xb5\x32\x93\x53\x30\x47\x4b\x63\xaf\x14\xd7\xb6\x58\x10\x3e\xa3\x22\x54\x0d\x64\x38\xf6\xf4\x3b\x4a\x70\x51\x24\x1b\xcc\x43\x65\x08\x98\x0f\x24\x4a\xcb\x8f\x44\x2e\x3a\x82\xc6\x58\x85\xe6\x9f\xa0\x09\x5e\xaa\x68\x0d\x05\xc0\x78\xb0\x45\x50\xf6\xfd\x75\x38\x86\x60\x89\x16\x30\xef\x60\xd1\xf7\x64\x84\xae\xf0\x7e\x80\x66\xb8\x5c\xc9\xd7\x1e\xfd\xc0\x04\x4a\xd1\x6d\x3e\xdf\x1f\xb9\x09\xa2\xdc\x53\x7f\x0c\x1f\xb8\x97\xe3\x9e\x8d\x18\xb5\x45\xb2\x29\xd8\x20\x14\xda\x47\xcb\xed\x92\xc2\xbb\x2b\xbc\xef\x1b\xcf\x4d\xe6\xe6\x91\x86\x01\x77\x6b\x34\x29\x22\x88\xd6\xac\x79\xaf\x24\x36\x03\x81\xed\x57\x30\x41\x0b\x18\xda\xf7\x98\xec\xaf\xe5\x9d\xca\x4a\x58\x1d\x31\xe4\xa3\x3a\xa1\xd2\xce\x3a\xe4\xa3\xc1\xc6\xbb\xae\x6b\x23\x51\xae\x90\x09\x16\x68\x3f\x0f\xe8\xbd\xef\xaf\x8b\x7d\xbe\x41\x29\xf3\x93\x14\x38\x3e\x29\xd6\xe8\xac\x20\x11\xc9\x3e\xc6\xf3\xd5\x6a\x96\x87\xa9\xf0\x57\xab\x2b\x6b\xa5\x25\x4a\x84\x2e\xe2\xe8\xca\x51\x9c\xd5\xec\x18\x3f\x26\xbb\x6e\x45\xdf\x44\x1c\xfb\xa5\x37\x34\x91\x87\x75\x0d\xef\xe2\xca\x39\x80\x2d\x1b\xf3\x73\x3b\x26\x3c\x35\x58\x0d\x51\x4e\x84\x64\x35\xdc\x75\x47\x48\x47\x38\xa5\xb2\xd1\xe0\x16\xa2\x4b\x3c\x33\x31\x3d\x4f\xf7\x2f\x75\xd0\xdf\x32\x49\x37\xfe\x06\x5f\x81\x4b\xa3\x69\x57\xbe\xf9\x8b\x8b\xc9\x31\xb8\x29\xec\x27\x6f\x34\x84\x1d\x87\x18\xdf\x29\x55\xa2\x62\x43\x26\xaa\xa7\x1c\xa6\xcb\x66\xd3\x54\xd5\x6c\x82\x14\xcf\x4c\xec\x4f\xd8\x6c\xa6\xba\xa7\xb3\x4a\x14\xd0\xc4\xe8\xc1\x12\x4f\x95\xb6\x2e\xdc\x8f\x1a\x82\xb0\x2e\x63\x14\xc8\xd6\xce\xeb\x5d\x28\xd0\x7c\x85\xd4\x63\x9e\x51\x0b\x28\xa3\xd0\x42\x4b\xd6\x6c\xc6\xa0\x24\xae\x7a\xbb\xb4\x67\x2b\xd1\x4b\x27\xa1\x36\xe1\x47\x1c\x33\x4b\xa6\x30\xfa\xf2\x37\x54\xa0\x14\xdf\x5d\x2e\xb4\x1c\x13\x52\x94\x52\xdb\x70\x29\x86\x77\x5c\x5d\x57\x34\x22\x86\x71\x9b\x5c\x12\x6f\x65\xe1\x87\xe6\x40\xa0\x31\x88\x21\x44\xa4\xa6\x27\x16\xed\xd0\x5b\x70\xb8\x46\x69\x76\x65\x76\x9e\x35\x60\xc4\x23\x13\xe5\x7b\x4e\x5d\xbb\xbb\xcb\xe2\x1a\x68\x0b\x58\xdb\x65\x2a\x46\xa9\x6e\x11\x73\x0b\x1b\x89\x0e\x0d\x97\x07\x85\xb3\xb1\x84\xc0\x01\x09\xef\x2a\x8c\x64\xca\x66\xc5\xc8\x6a\x14\x25\xeb\x3d\x81\x0d\xba\x66\x86\xb9\xd8\x1c\xdb\xe4\xce\x6a\xb8\x5d\x96\x9f\x03\x15\xb1\xa4\xcb\x71\x54\x23\x96\x40\x94\xca\x06\x27\xcb\x9a\x6e\x49\x60\x23\xbe\x21\xa2\x1d\xfc\x01\x05\x3f\xa3\xa2\xa1\x48\x66\xc5\xd1\x48\x9e\x9a\xa5\x56\x11\x25\x16\xa6\x1b\x1a\xa8\x2d\xff\xac\x57\xb7\x82\x3e\x53\x0b\xb5\x86\x4c\x64\xfa\x42\x99\x18\xfa\x23\x14\x63\x31\x0c\x0a\x77\xb0\x9d\x03\xc0\xdd\x18\x1e\x76\x5b\xf1\x1a\x09\x4f\x24\xdf\xdf\x0a\xaa\xd4\xb8\xb5\x97\x34\x12\x5d\x14\xc1\x89\x2c\x2a\xc5\xc9\x30\x18\x19\x3b\x40\x06\x76\xe8\x36\x3b\x07\x40\xb8\x5c\x56\xc1\xd7\xc0\x57\x6e\xf5\xa0\x31\xa6\x48\xcf\xfd\x01\x69\x75\x43\x62\xf9\x6c\x9e\x9e\x72\x17\x77\xa1\xc0\xf1\xb0\xe2\xfb\x9c\xc3\xd1\xd9\x59\x70\xbc\xda\x4c\x76\x03\xf5\xa1\xbd\xfd\xa1\x2d\x3f\xf4\xb7\xd3\x3b\x70\x84\xa2\xe1\xd8\x75\x47\x58\x9c\x9f\x07\xfd\x66\xbb\xd7\xb3\x12\x8e\xed\xf7\x76\xaf\xd7\x2c\xae\xdd\xb5\x31\xc6\xa9\x5a\x41\x75\x6d\xab\x69\x41\x00\x47\xe7\xe7\xdd\x4a\x59\x10\x05\x1f\x2d\x25\xf0\x77\xf4\xb0\x5b\xdb\xc1\xf3\xf3\xf6\x47\x9b\x0e\x51\x24\xe7\x75\xca\x93\x45\xfd\xcc\x16\xae\x6c\xac\x88\x34\x52\xcc\xf9\x4b\x07\x25\x96\xf9\x5d\x8b\x9d\x92\xb3\xf4\x94\xb8\x38\xe8\x77\x8e\x3b\x30\xd1\x07\x84\x11\xa0\x88\x20\xe2\xaa\xc4\xf3\x74\x90\x86\xe6\xb9\xd4\x7d\x07\x3a\x5a\x8d\xc0\xda\x95\x32\x32\x39\xf9\x50\x9c\x9f\xb7\x47\x2e\x1f\x8a\xb3\xb3\x6e\xb3\xdf\x19\xb9\x0e\xc6\x0e\xd4\x11\xfc\x98\x1a\x1f\x20\xb3\xb4\x47\x67\x67\xc7\xd0\xad\xc9\x1d\xf8\x2a\xfb\xf9\xb9\xce\xae\x4a\x6a\x9b\x92\x54\x4c\x0a\xa3\x8b\x77\x24\x7d\xad\x86\xaa\x19\x8e\x10\xc3\x96\x8f\x8b\xe2\xce\xe0\x4f\x2c\x16\xc7\x6a\x94\x06\xe5\x63\xa8\xfe\xa2\x04\x3b\x8f\xbe\x7f\xfc\xc3\xc5\x93\xbf\xfe\xf8\xf4\xbf\xfe\xf6\xec\xf9\x8b\x97\xaf\xfe\xfb\xf5\x9b\xb7\x3f\xfd\xfd\xe7\x7f\xfc\xf2\x3f\xe4\x6a\x3c\xa1\xd3\xd9\x9c\xfd\xfa\x3e\x5a\xc4\xc9\xf2\x37\x9e\x8a\xec\xfa\xe6\xc3\xed\xbf\xfc\xa0\xdd\xe9\xf6\xfa\x47\xc7\x27\xee\xa1\x63\xc6\x33\x0f\x84\xa1\x06\xd5\x75\x09\xe4\x43\x32\xc2\xc9\x90\x8c\x50\x3c\x4c\xaa\x2e\xff\x47\x98\x54\x4e\xb3\xb7\x7c\x48\xb3\x29\x10\x7f\xe9\x9e\xfb\xbb\x4d\x83\xb5\x54\xeb\x35\x34\x81\x28\x22\x97\x90\xc6\x22\x8b\x04\x5b\x46\xb4\x91\x4c\x1b\x5d\x27\xdf\x84\x58\xa7\x6d\xd8\xa9\xc4\x56\xd0\x51\xdd\x05\x44\x43\x8e\xb8\x0a\x31\xe0\x87\xdd\x16\xff\x4b\x77\xb4\x61\x35\x89\xe2\x12\xb5\x94\x33\x4d\x6d\x3d\x2c\x4e\xd3\xb3\xf8\x34\x75\x71\x07\x32\x39\xbd\xa9\xc4\xf8\x7e\x33\xe8\x1f\x05\x41\xff\xd8\x87\xae\x4c\x73\x03\x39\xe5\xcd\x7e\xaf\xad\x52\x24\x1e\xcb\xd4\xf6\x48\x72\x27\x33\xfd\x20\xc1\x0c\x9e\x9f\x07\xc7\x66\xea\x93\xf3\xf3\xa0\x5d\x3e\xf7\xcd\x63\xbf\xd3\x4c\xca\x70\x43\xa4\x44\x88\x78\xe8\xb4\x9c\x6a\x48\x8e\x11\xee\xb7\x51\x3c\x74\x2e\xb7\xd3\x3b\x9f\x08\xf4\xa4\x3d\xd6\xab\xb0\xb8\xb5\x5b\x70\x40\xbe\x41\xa5\xe6\x5e\xe3\xa0\x31\x8e\xd8\xf2\x2a\x21\x7c\xe2\xfd\x9a\x36\xae\xdb\x9e\xef\xf5\x65\xf2\x5c\x88\x65\x1a\x1e\x1e\x16\x9f\x7f\x4d\xbd\x71\xb2\x38\x94\xdf\xe4\xff\x42\x0d\xf9\xfc\xe9\xdb\xc6\xff\xf3\xff\x6f\xfc\x0f\x8d\x93\xc6\xeb\x64\x3c\x27\x7b\x8d\x83\xc3\x9a\x78\xc0\x8d\x1a\xd3\x11\x4b\x68\xe2\xc6\xdd\xa1\x18\xc6\xa3\xe2\xe6\xcd\x30\x1e\xe5\x47\x2e\x7b\xe5\xd1\x37\xbe\x63\x61\x8c\x22\xb9\x45\x37\x1f\xc3\xbb\x92\xcd\x52\x99\x49\x49\x8b\x2c\xcf\x8b\x18\x2a\x9f\x39\x44\xcc\x8b\xf0\xbe\x5f\xa6\x15\xc2\x81\xb7\xc0\x72\xef\x34\xc6\x02\x71\x6f\xb2\xe5\x33\x99\x7b\x3a\xc4\xfc\x6a\x65\xb6\x2f\x9a\xf6\x94\x4e\x20\x90\x40\x77\x34\xce\x16\x3a\x40\x7f\xb8\xef\x4b\x99\x20\x8c\xd7\x70\x8d\xb8\xb7\x11\x7d\xa5\x86\x72\xe5\xd3\x68\xa6\x30\xf7\x78\xf8\x96\xcc\x9a\xcd\x5d\x35\x6e\xc3\xe6\x92\xbd\xf3\x5c\x5d\x8c\x76\xd6\x85\xd7\x88\xad\xcc\xce\xe5\x25\x4d\x0d\x58\x9e\x4d\xee\x86\x64\x73\x37\x03\x9e\xb2\x29\x08\x9a\x42\x6d\x21\x38\xa0\x10\xa2\xe3\x66\x11\x96\x90\xaa\x98\x26\xf2\xab\xe5\x9b\x88\x28\x1b\x03\x75\x8d\xb3\xac\xa6\xcc\xa1\x05\x6b\xd3\x32\xad\xc9\x53\xce\xcc\x8c\x4f\x6c\x89\x0f\x3b\xda\x1d\x23\xc7\x1c\xa8\x39\x9b\xc3\x6d\xf6\x34\x6b\x88\xda\xaa\x35\xdb\xe1\xa1\x36\x8e\x7a\xb8\x37\x01\x72\xd1\xd7\xa9\x9d\x86\x62\x64\x3c\xd7\x28\x27\x6b\xac\x64\x88\xb1\x1c\xa0\xb8\x46\x4a\xdb\xe8\xed\xb6\x5a\xa0\x41\xf3\xc3\xc0\x75\xdd\x76\xad\xdc\xb2\x14\x21\xa5\x85\x72\x55\xcb\xbd\x4d\xb7\x1a\xb9\x51\x9e\x1e\xa2\xf2\xc0\xbe\xea\x98\xc4\xec\x10\x95\xe7\x09\xee\x2d\xb1\xe3\x20\x0e\xb8\x97\xe2\x3e\x5c\x83\x61\x45\xdf\xb9\xfb\xac\x56\xed\xed\xde\x5c\x3c\xbb\x78\xfc\x56\x2b\x07\xe2\x64\x42\x5f\x90\x05\x85\xd4\x9b\x26\x63\x29\xef\x22\xc9\xcc\xd4\xe8\x17\x11\x69\x9c\xa7\x2f\x5e\xfd\xb4\x91\x61\xb5\x72\xde\x5e\xfc\xe3\xed\xa3\xd7\x17\x8f\x36\x4a\x2a\xac\x44\xe6\x24\x7d\x24\x04\x67\x57\x99\xa0\xc0\xe1\x94\x4c\xf4\xe9\xdf\x1e\x5f\xad\xa8\x97\x52\x51\xf7\x15\x39\x8e\x0a\x1f\x43\xd5\xf1\xb9\x7e\x14\x6f\xd4\x1b\x4b\xe2\xd7\x72\xbf\x0e\x7c\x64\x5a\x58\x44\xb0\x52\x25\x9a\x98\x89\x75\x55\x96\x9d\x52\x51\x8b\xee\x36\x1b\x37\xd6\xde\x5e\xe8\x84\x29\xb3\x0b\x47\xa2\x7b\x3e\x20\x06\xbf\x8d\x57\xa9\x99\xd5\x1a\x00\x11\xc3\x93\x64\xac\x6c\x29\x0c\xe6\xeb\x16\xc2\x3d\x66\xba\xf0\x22\x99\x50\xe3\x4b\x46\x85\x1e\xb1\x42\x3b\x2a\xd0\x54\x99\x6b\x92\xc9\x44\x67\x64\xb2\xa9\xb1\xed\x57\xb7\xd8\x95\xec\xf4\xb8\x06\xef\xd6\xc2\x76\x78\xb1\x71\x8d\xa7\x0c\x1c\xad\x2d\x17\x56\x2b\xed\x77\x83\x2a\x4d\x67\x7e\xd0\x37\xa4\xa3\xd5\x4a\xfd\xe0\xe1\x08\x42\x63\x72\x36\x55\x71\x94\xc5\x87\x32\x84\x32\x4a\x2a\x91\x0c\xb6\xca\xaf\xc6\xf9\x55\x31\x2e\xd5\x55\x47\x24\x4c\x90\x03\x8e\x4a\xeb\x93\x32\xca\xc8\x65\xee\x46\x46\xdf\x8c\x44\x1c\xae\x11\x5d\x30\x11\xd6\x8a\xc7\x78\x38\xaa\x8f\x8b\xa0\xe2\xa5\x01\x50\xd3\x51\xa8\x3a\x38\x1c\x41\xe3\xed\x19\xa2\x18\xfb\x88\x15\x96\x38\xa7\xf1\x19\x53\x71\x12\xb9\xe4\x3a\xd3\x3c\x46\xa8\x7a\x1b\x8b\x0f\x48\xc0\x6a\xd4\xfe\x64\x3a\xad\xf5\x2d\x53\x53\x35\xd2\x0e\x75\x11\xc3\x43\xa5\x2a\x8d\x9b\x4d\x51\x50\x2f\x1d\x73\x2a\xbf\x97\x71\x9a\x9c\x91\xd3\xc4\x75\x61\x3c\x4c\x64\x2b\xb4\xcd\x94\x79\xf1\x2e\xf5\x2b\x33\x17\xa5\x86\x96\x34\x95\x1b\x3c\x29\xaf\xbd\x98\x85\xe6\x76\xa5\xaa\x57\x35\x78\x8d\x4a\xb2\x20\xca\x67\xef\x2d\x8b\x6f\x2f\x16\x4c\x08\xca\xb1\xd8\x96\xac\x72\x5b\x8a\x8e\x36\xa5\xe8\xee\x72\x2e\x69\x2e\xc7\xed\xd3\x66\x73\x5f\x34\x9b\xfb\x7c\x5b\xfe\x7d\xce\x52\x75\x8b\xb6\x70\xd8\x51\x4c\x9b\x71\xe3\x15\x7b\x9a\xc8\x57\x2f\xd6\x59\xb1\xff\xde\xd0\x71\x12\x97\xf9\x2c\xd1\x59\xaf\x96\xa2\x9c\x69\x5c\x75\xcb\x64\x95\xf1\x76\xce\x78\x6d\x11\xb9\xbb\x3e\x5d\x48\xac\xe8\x99\x75\x77\x78\xc7\x7e\x9a\xca\xa5\xab\x02\x97\xe4\x21\x57\xd5\x45\x41\x74\x37\xa1\xa9\xe0\x49\xc5\xbf\x5a\x4e\xa1\xb6\xc1\x55\x8c\x5e\x55\x6e\x59\xb7\x04\xf8\x74\xfd\x9b\x46\x5e\x46\x5f\x94\x33\x0b\x50\xe5\x0b\xb5\x6d\x5d\xc3\xfa\xe6\x7e\x5e\xd1\x3b\xbb\x06\xb7\x7a\x67\x66\xf9\x93\x7d\x63\xa0\xa0\xad\x57\xc9\xe4\x16\x19\x83\xf6\xbc\xac\xda\xe9\x7d\xc2\x78\x2a\x76\x63\x08\x6a\xfc\xf8\xf6\xf9\xb3\x0b\xed\x43\x46\xbf\x3c\xd6\x96\x5a\x2c\x89\x51\x23\xe1\x8d\x17\x66\xe8\x9d\x4d\x47\xac\xf0\x4e\xa8\x79\xa9\xb3\xf9\x2a\x0c\x1c\xa5\xd4\xd0\xc8\x43\xa3\x24\x53\xbb\x36\x1d\xe9\x4f\xf3\x49\xd9\x60\x1d\x35\x54\x57\x56\x13\xa1\x64\x4b\x1a\xc8\x59\x42\xae\x29\xde\xab\xa9\x1b\x38\x43\x2d\xb5\x15\xdd\x18\x49\xe6\xcc\x57\xab\xe2\x43\xb5\xcb\xfa\x33\x6c\x36\x1d\x4d\x3e\x1c\xa6\x36\x2c\xc0\x8e\xa0\xb8\x5a\x09\xb3\x18\x86\xfe\x48\x47\xd0\x4c\x37\x7c\xbc\x7f\xe4\x14\x6f\xb5\xaa\x0c\xc8\xff\xcb\xde\xdb\x75\x49\x72\x5b\x07\x82\xef\xf5\x2b\x32\x63\xdb\x29\x80\x89\xca\xce\xec\x26\x5b\x62\x74\x83\xb9\xcd\xee\xe6\x87\xc4\x6e\xb6\x54\x4d\x51\x54\x30\x54\x42\x65\x22\x2b\x83\x1d\x89\x48\x46\x20\xaa\xba\xba\x22\xf6\x58\xf4\xda\x1e\x8f\xbd\x3b\xde\x9d\x59\xed\xec\x58\x33\xda\x99\xb1\x67\xd6\xe7\xec\xcc\x68\x6c\x6b\x56\x96\x2c\xfa\x81\xa3\xf7\xea\xff\x20\xca\xde\xb7\xfd\x09\x7b\x70\x01\x44\x20\x22\x23\xab\x8a\x22\xe5\xf1\x07\xc9\x3e\x95\xf1\x81\x00\x2e\x80\x8b\x8b\x7b\x2f\xee\x87\xee\x03\x68\x41\xba\xa2\xb8\x56\x60\xda\xd5\x08\x00\x5e\x38\x16\x1d\x16\x61\x96\x70\xbd\x70\x5e\x4a\x35\x46\x13\x43\xe7\xc1\x5a\xa6\xde\x98\x76\xb6\x2f\xef\x94\x30\xb5\x9d\x5d\x7e\x81\xeb\x0f\xca\xd2\xcd\x60\xaf\xe1\x88\x36\x25\x2a\x85\xfd\xa0\x82\x3d\x64\x92\x3f\x82\xc3\x2d\x48\xe6\x69\xce\xb9\xf4\x51\x7c\xe3\xb5\xda\x0f\xcc\x92\x54\x84\x64\x1b\x79\x26\x82\x24\xd5\x28\x77\x1e\xbf\xb4\x3a\x3a\x8d\xdc\xac\x44\xf5\xd0\x74\x1d\x0c\xab\xc2\x35\x7b\x6d\x57\x2d\xde\x52\x01\xea\x3a\x87\x46\xbc\xe6\xa4\xde\xcf\x79\x7a\xa2\xb9\xac\x24\xbd\x0d\x33\x8c\x37\xf2\x22\xad\xd8\xba\x93\x14\x55\xc4\xa3\xee\x36\x28\xc9\xcb\x76\x36\xf7\x2e\xb9\xad\x5a\xab\x7d\x73\xd5\x68\x10\x74\xd1\x56\x40\xd8\x28\xb0\x23\x6d\x11\x5a\x5d\xd9\x4e\xa8\x35\xb4\x4a\x9e\xde\xef\x78\x9a\x75\x3c\x4c\x3a\x9e\x1d\xf3\x83\xc7\x91\x6c\xbd\xd8\x32\xdd\x9a\x55\xba\xc9\x07\x83\x17\xfb\x2e\xcd\xb9\xa9\x3b\xde\x35\xfd\x06\x60\xc5\xf7\x9a\x4b\xb5\x0d\x57\x32\x1e\xd7\xf6\x8e\x5c\x00\x43\x7b\xa1\x09\xa6\x36\x1b\xa9\x2c\x31\x75\x92\x99\x91\x50\x92\x60\x72\x39\xed\x0b\x65\xa8\xa5\x79\xe9\x0c\xc4\xaf\x44\xd3\xbf\x31\xb5\x0b\xd3\x91\x55\x1b\xd9\xb1\xed\x9a\xe6\x1b\x59\xc5\x6f\xa6\xb7\xa4\x9b\xd6\xde\x32\xc9\x41\x1a\xee\x88\x51\x2d\xed\x52\xf7\xa6\x28\xfa\x13\x22\xcc\xe9\x49\xae\xdf\xf7\xc7\xc4\x03\xd9\x45\x51\x67\x31\x18\x20\x31\x3a\x4e\xb5\xa0\x42\xfb\xe3\xed\x3a\x01\x01\x0e\x34\xa2\x3e\x32\x71\x4c\x03\x5c\x03\xf8\x74\x30\xe0\xc8\x41\x64\xc5\xbf\x08\x78\x46\x84\x12\x59\x4b\xc8\xf1\xd5\xdd\x69\x89\x4f\xfb\x1b\xda\x85\x3e\x6a\xd0\xfc\x6d\xec\x9c\x09\x50\xaf\x16\x71\x8f\xf5\x66\x31\xcb\xb2\x1e\xcb\x7a\xac\x82\xd3\xc3\xa5\x26\xcc\xbc\x0a\x04\x0c\x31\x88\xdf\xd4\x07\xe2\x55\x14\xc9\x48\x44\xae\x50\x66\xbb\x9b\x21\x4e\x02\x88\xa9\xe3\x35\x3f\xf4\x8c\x76\xc1\xe9\x92\x36\x9f\x6f\xa7\xcd\x7b\x69\x3c\x18\x54\xfb\x6b\x9d\xc7\x7c\x1c\x4e\xdd\x1b\xdf\x46\x8c\xd0\x47\x59\xd4\x9e\x43\x56\xf1\x8d\xb5\xfd\xaf\x6b\x1c\x6c\x8c\xc8\x0d\xdf\xcd\xed\x95\xc9\xa1\xa2\xc9\x3e\xaf\x88\xbe\xce\x8c\xf3\x04\x1e\xc1\x31\x25\x3c\x48\xa3\xc3\x43\xf8\xd8\x5c\xe9\xc7\x5a\xea\xe4\xf3\x47\xaa\xbc\xe7\x95\xa5\x8e\x2a\xe4\x35\xc6\xa8\x63\x00\xaa\x46\xa6\x4e\x35\xaf\xb0\xc7\x1c\x61\xdf\x81\xca\x04\x5f\xd5\xaf\xf5\x06\x04\x71\x34\x74\x23\xf5\x57\x5b\x87\x58\x9b\xa5\x52\x2f\x95\x6a\x95\x57\x24\xdf\x5e\x58\xaa\x7a\xd8\xd0\x0e\xcc\xa3\xd4\x33\xe6\xe4\x7a\x87\xd5\x80\x99\x98\x31\xec\x31\x7f\x0d\x0c\xf5\xd3\x3b\x2c\x8e\x0f\xd8\xec\x71\x57\x2c\x8d\xc6\x97\xe5\xc6\xa7\xb4\x39\x59\x9b\xfb\xbe\x37\x8b\xa3\xd9\x63\x6f\x6b\x9b\xb8\x28\xfa\xe3\xfa\xad\xea\x48\x5b\x37\x60\x3a\xa7\x7d\xa7\x58\xca\x99\x87\x9b\x1f\x8c\x32\x79\x12\x2b\x4e\x5b\xc8\xbd\xe8\x29\xa7\xde\xe4\xda\x5a\x7a\x9d\x65\x0e\x92\x74\xce\x53\xea\x8d\xbb\x5f\xaf\xd9\x7c\xae\x58\xb4\x6d\xef\x57\x2c\x3d\x8c\xc4\xf6\xcf\x13\x7d\x20\x4d\x3d\x66\x92\xc5\x77\x96\x0b\xe4\xd4\x03\xb3\x56\xcf\xf7\x62\xbe\x90\x5e\x48\xbd\xdd\x17\x5f\x7c\xf1\xc5\xf5\x13\x9b\x83\xc7\xa8\x4d\xd6\xec\x90\xbf\xf3\xe6\x62\x91\x71\x59\x14\x5b\x67\x3d\x9b\xa5\x49\x1c\x3f\x4a\xd6\x3b\x5d\x40\xc9\x64\x4d\xd3\xa1\xb7\x7e\xb2\x01\xcb\x39\xaa\xa4\x66\x49\x40\x4a\x5a\xe1\x3a\x69\x4f\xfa\x7a\xcd\xc5\xfc\xce\x32\x8a\x75\x8c\xeb\xea\x43\xdc\xb1\xb8\x22\x84\x3b\x0b\xcd\x92\xf5\xc9\x23\xb0\xad\xa8\xd6\x45\x8d\x7a\xdb\x56\x9e\x83\x50\x83\x01\x6a\x81\xd5\xc5\x55\x5e\x88\x8e\x9b\x18\x0e\x7c\xd8\xd6\x25\x03\x1a\xdb\xe6\x70\x6d\x83\x64\xfb\x00\x55\x98\x0f\xb5\xb5\xe8\x82\x26\x17\xdb\x46\xa0\x7b\x6c\x35\xd5\xd9\x3e\xb2\xf6\xd1\x56\x7a\xa3\xc9\xb7\x09\x99\x5a\x21\x1e\x7f\xc2\x67\x77\x92\xd5\x8a\x99\x60\xe6\x86\x62\x3b\xa1\xc0\x38\xed\x9b\xcc\x38\xda\x09\xe8\x6b\x3c\xcb\x63\xa9\x65\x0d\xdd\xb4\xfb\x7c\xa3\x79\x1b\x9d\xd6\x10\x76\xf8\x45\x8a\x95\xc8\x67\x33\x9e\x65\x9e\xef\x69\x17\x3c\x72\xaa\x5b\xf6\x1d\x28\xb4\x2b\xf0\xc6\xa0\x10\x43\xe7\x7d\x97\xfc\x13\xb0\x65\xa8\x08\xbb\x7e\xd7\x7c\xe6\x86\x6c\x77\x06\xae\x51\x66\xeb\x86\xa0\x5b\x31\x54\xdf\xdc\x55\x9a\xe2\x6a\x38\x15\xdc\x47\x96\xbc\x8d\x0e\xe2\x3c\x45\x98\x74\x2a\x4c\x37\xb5\x9f\x15\x44\x46\xa0\xda\x06\x4a\x83\x7c\xdb\x6f\x98\x81\x3e\xe3\xf2\x33\xdb\xcd\x01\xa7\x3c\x38\xc8\x85\x8c\x34\x76\x57\x27\xfa\x45\x95\x79\x47\x3f\x1f\x0c\xbc\x59\x2e\xdb\x4f\x37\xb4\x5f\x5f\xb0\xa7\xbf\x16\xe4\x9e\xb6\x7e\x81\xcc\x47\x3c\x82\x00\xf7\xba\xfe\x5e\xa2\xae\x72\xe9\x7d\x41\x07\x22\xdf\x16\xa1\xdf\xb4\x54\x0d\x85\x34\xab\xab\x31\x14\xdc\x31\xb7\x54\x92\x80\x51\xd2\x15\x85\x3d\xdd\xe9\x53\x8a\x1c\x93\x64\x37\xd3\x44\xa2\xc4\xae\xa2\x98\x34\x24\x88\x73\x3a\x66\x00\x70\x3b\xc6\x7a\xfa\x9d\xc1\x8c\x2f\x68\xdb\x32\xe8\x26\x35\x03\x66\x47\xb1\xad\x91\x9f\x47\x99\x62\x70\xe7\xde\x66\x90\xad\xcd\x26\x99\xfd\x6e\xd4\x7b\x18\x73\x96\x71\x68\xbd\xde\x09\x80\x1b\xe5\x6c\xde\x4b\x16\xbd\xba\xe6\xfa\x33\x0b\x58\x2e\x37\xe0\x42\xdb\xcf\x31\x8a\xe2\x1c\xa0\x3f\x19\xd4\xef\x24\x79\x6f\xc6\xc4\xbb\x5f\x90\xbd\x59\x2e\x7b\x8a\x00\xf4\x16\x69\xb2\xea\x71\x3d\x72\x26\x67\x93\xd3\x23\x85\x25\x1d\x3d\xc9\xbe\x60\xf8\xa4\x7d\xcb\x45\x96\xe7\x63\x91\x2e\x56\x96\x21\x26\x5c\x31\xfa\xb1\x0e\x1b\x3b\x03\x71\x2d\xc6\x64\x01\xa1\x91\xc9\x1c\xee\x17\x98\x2c\xff\xae\x8b\x6f\xeb\x7f\x88\xe2\xdb\x8a\x6e\x39\x3b\x02\x77\xcc\xbf\x01\x09\xae\x52\x06\x6c\x36\xe5\xd2\x94\xaf\x71\xc8\x49\x36\xb3\x0d\x80\x4b\xd3\x92\x65\xe2\x0b\xb2\x77\xc0\xb9\xe8\x19\x23\xcc\x28\xe3\xf3\xde\x6e\x2f\xcb\xd7\x3c\x45\xb8\x51\x42\x01\xa3\x56\xa0\x51\xe1\xf5\x65\x83\xd8\x31\x24\xb1\x8b\x5a\xfd\xda\xb6\x9c\xfb\xd2\x00\x8b\xe4\x68\x7f\x1f\xc6\x73\x7f\xbf\xb2\x10\x38\xe4\xf2\xa1\x1d\xe2\x37\x17\x90\xad\x1f\xd4\x4f\xb0\xb1\xd6\xe7\xc9\x6d\x19\x55\x4d\x06\xe4\xce\xe2\xe2\x8e\xe2\xd8\xe0\x0c\x70\x63\x46\xab\x94\x29\x1d\x80\x0d\x06\x8a\x99\x6a\xa5\x51\x71\x4f\x45\xd4\x20\xf4\xea\x94\xa1\x5a\xe9\x6d\xf6\x94\x03\xde\x53\x5f\x2b\x72\x51\xcf\x0a\x01\x97\x31\x6f\xa8\x06\x03\xef\x70\xe7\xec\xb0\x79\x88\xaf\xa4\x3d\x07\xaf\x1a\x91\xf4\x2b\xdf\x0b\xf7\xd8\x7e\x42\x2c\x66\xfb\xfd\x31\x71\x57\x81\xdf\x1f\x97\x25\x26\x72\x30\x40\xa6\x8d\xac\x31\x9e\xd3\xce\xa7\x30\x2e\x3e\xaf\x67\x83\x4a\x85\x50\x84\x63\xb2\x46\xf2\xbf\x89\x70\xdf\xad\x3b\x85\x27\x53\x7b\xa1\xb9\x30\x63\x1d\x70\xdb\xd1\x05\x18\x9a\xdc\x59\x87\x7e\x37\xb5\x17\x8d\x3a\x1e\xb5\x15\x01\xdd\x35\x28\xe9\x5d\xff\x34\xbf\xde\x94\x74\x1c\xd3\x5d\xba\x44\x8e\x62\x02\x4f\x9d\x1b\xbf\x71\xfe\x52\x71\x1a\x0e\x36\x77\xf1\xbd\x75\x32\x05\x3d\x70\xb1\x11\x59\xe8\x1c\x61\xa4\xb8\x28\xfd\x61\x67\x5e\x8c\x51\x52\xad\x12\x9d\xa7\x44\xb7\x98\x5c\xd4\x1a\x6f\x29\xc5\xd5\xd6\x3c\xcb\xd3\x94\x0b\x33\x76\x26\xf9\x93\x35\x81\xba\x6d\x77\xf7\xae\xc7\xae\x28\xb4\xf1\x8a\x1f\xf7\x72\xd4\xc1\xb4\x83\x32\xca\x99\x39\x7d\x0d\x4f\xab\xf9\x50\x57\x26\xf1\xa3\x19\xe0\xe6\xac\xd4\x1c\x3e\x31\x72\x03\x14\x28\x5d\x1e\xd9\xc1\xa9\xae\xe1\xb0\x87\x42\xa8\x62\x8d\xf9\xc6\xd7\x5b\xe4\xb0\x6a\x30\x8f\x50\xc5\x4c\x6a\x6f\x80\xca\x3a\xa8\x5b\x43\x8f\xe4\x66\x13\x5d\x22\x59\x03\x3c\x1d\x3e\x86\x5f\x9a\xfd\xb7\x58\x34\x32\xe5\x50\xf7\x04\x6d\x99\xd2\x0b\xbe\xb2\xe2\x6a\x68\x49\x4a\x94\xed\xe9\x24\x19\x7c\xfe\x59\xd3\x93\x40\xf3\xbf\x04\xb8\xcd\x90\xc8\x0e\xaf\xbc\x29\xf8\xe2\x91\x94\xf6\xfb\xcd\x11\x37\x22\x6b\x05\x5b\x65\x92\xb0\xc5\x4f\x80\xa6\x83\xc1\x45\x75\xe8\xa5\x46\x52\x60\x01\x65\x89\x66\x23\xe6\x1c\x99\x1d\x35\xf2\xe6\xcc\x99\x64\xbb\xd5\xd8\xed\x7a\x43\x30\x17\x93\x4d\x2e\x38\x75\xe2\x6d\x37\xd4\x78\x29\x2e\xa5\xa5\x49\x74\x55\x86\xb8\x32\xa0\x22\x0d\x63\x33\xd8\xa1\x9b\xd6\x67\xd3\xfa\x9c\x23\x41\xd8\x47\x60\x34\x5c\xc9\x2d\x28\xea\x20\x88\x28\xa5\x09\x9e\xa6\xf6\x7c\x8f\x08\xec\xa7\xb8\x28\x50\x5d\x53\x84\x71\xe9\x6c\xe2\x24\x45\x93\x17\x30\xa4\xd2\xed\x3e\x4d\x24\x91\x1b\x47\xb9\xb6\x27\xbd\xe4\x89\xc6\xdf\x19\x7b\xd2\x9a\x1d\x84\xac\xfb\xf5\x54\x24\x30\x35\xb5\x34\xe9\xcc\x4a\x86\xb0\x7f\xc1\x7c\x08\x9a\xe1\xa9\x30\xe3\x4d\x52\x08\x71\xe0\x8b\xf6\x94\x94\x8d\xb4\xbd\x9d\x19\x70\xbc\x55\x14\x2b\x0e\x70\x96\x88\xb9\x07\x0b\xc8\x5c\xa6\xea\x95\x00\x65\xa5\xa0\xde\x32\xc9\x53\x8f\x44\x0a\x6b\x4f\x3c\xc2\xa8\x77\xcc\xf9\x63\x8f\x64\xd4\x5b\x25\x42\x2e\x3d\x92\x53\xef\xfd\x9c\xa5\x92\xa7\x1e\x89\xa9\x77\xc2\x59\xea\x91\x19\x60\x39\xf7\xc8\x02\xf2\x71\xcc\x4f\x9f\x2f\x71\xb0\x7b\x35\x9c\xaa\xeb\x09\xb9\x56\xe2\x69\x75\x3b\x56\xb7\xc1\xb7\xc6\xbb\x2f\x86\xcf\xd5\xaf\xfd\x69\xf7\xf5\x48\x5d\x0f\xf1\xf4\xca\x55\x32\xa7\x57\xdf\x0d\x50\xf0\xad\x77\xc3\x70\x88\xc3\xe2\x9d\xd3\x6b\xe4\xf9\xb2\xb8\x7f\x3a\x51\x3f\x77\xa1\x7c\x31\xd7\x77\xaf\xe9\xbb\xa5\xfe\x61\xc5\xed\x62\xa5\x2f\x33\xfd\xf3\x4d\xfd\xb3\xb7\xb7\x77\xf5\x90\x2c\xe9\xa9\x60\x2b\xee\x7b\x5c\x78\x44\x75\x77\xce\x4e\x32\xdf\xdb\xcb\xc5\x9c\x9d\xec\xdf\x4f\xe0\xe7\x51\xce\x33\xf5\xfb\x36\x9f\x0b\x7d\xf5\x68\x99\xa7\x70\xf1\x4a\x1a\xa9\x9f\x3d\x26\xf3\x54\x8d\x9a\x4d\xef\xb8\xef\x61\x02\x83\x96\xf9\xde\x97\x99\xc8\x59\x7a\xb2\xff\x0a\x3f\x48\xe1\xe2\x3e\x4b\x67\xcb\xfd\xdb\xeb\x34\x8a\xf7\xef\xb3\x93\xfd\x2f\xe7\x82\xef\x7f\x39\x8f\x4f\xf6\x6f\xe7\x87\x79\x26\xf7\xf7\xf8\x5a\xf2\xd5\x01\x4f\xf7\xdf\x9c\xc9\x44\xfd\x3e\x48\x8e\xf4\x83\xbb\x7c\x06\x17\x6e\x4b\x0d\x11\xad\x71\x9a\xbf\x67\x0d\x47\x2c\x6f\x2f\x8a\xc2\x5a\x4e\xbd\x44\x15\x07\xef\x79\x43\x38\x27\x46\x72\x38\xd9\x15\x55\x00\x2e\xb0\x34\x4f\xf1\x90\x97\x64\x45\x4f\x33\x7f\x4d\x9e\x76\xec\x7b\xbb\x7c\x94\xcb\x99\x56\x52\x23\x4c\x52\x7a\x9f\xc9\xe5\x88\x1d\xc0\x41\x93\xd0\x77\x8b\x38\x49\x52\x94\x5e\xbd\xa1\x8f\x34\x7f\xed\x86\x75\xe2\x43\xf2\x16\x1d\x4f\xbd\xa1\xe7\x7b\xbb\x1e\x1e\xae\x91\x20\xd7\x88\x37\xd6\x19\x38\x86\x6b\x14\x99\xdb\x92\xd4\xb9\x68\x7a\xbc\x8a\x2a\x2e\x47\x73\x70\x42\xba\x95\x9a\x0b\x43\x43\x77\x39\x24\x1b\xb3\x51\xfc\xae\x3d\x87\xd2\xd1\x09\x78\x2f\xed\x4a\x73\x81\x87\x28\x1d\xc1\xec\xc0\x43\x73\xa5\xc0\x93\xa3\x59\x9c\x08\x8e\x30\x78\x80\x09\x92\x41\x1c\x9c\xdd\xe8\xd6\x98\xb0\xf6\xcb\x21\x4a\xa6\xbb\x13\x7f\x82\x49\x65\xfd\x30\x44\xbb\xea\x79\xba\x1b\xe1\xab\x28\x99\x46\xbb\xcc\x67\xbb\x11\xc6\x45\x31\xc6\x25\x61\x9d\xc4\xe9\xd6\x78\x0a\xe3\x34\xe3\x51\x8c\xb8\x2a\xea\x3b\xe3\x06\xf2\x77\xfd\x5d\x65\x90\x70\x7a\xdf\xcf\xc8\x89\x1f\x93\x63\x9f\x91\xb9\x1f\x91\xbb\xfe\x8c\x2c\x7d\x41\x56\x7e\x4a\x32\x5f\x92\x55\xe6\x73\xf2\x55\x3f\x2f\x83\x24\x2c\x0a\x83\x07\x49\x51\x78\x1e\x6e\x46\x55\xaf\x53\xfa\x64\x57\xae\xea\x7c\x3e\x79\x27\x07\x52\xe9\xbc\xca\x92\x1c\x51\x58\x30\x27\xf4\xb4\xdc\x39\x09\x8e\x42\xba\x84\xf1\x3e\xe8\x4c\x6d\xed\xca\xc5\xf7\x4a\x72\xd8\x8d\xab\x3b\x5a\xb2\xb5\xad\x81\x7a\x69\x63\x9f\xc7\x27\x01\x0f\x07\x03\x24\x28\xd7\xa2\x91\xba\xa7\xe0\xfc\x83\xc1\xf8\xd6\x04\x4a\xd2\xfe\xf6\x3b\x27\x41\x14\x52\x4e\x04\x8d\xac\xbb\x6b\x3a\x18\x28\x8e\xe7\x88\x0a\x4c\x44\x51\xa8\xfb\xa3\x92\xec\x6f\x0a\xd9\x07\x8e\xb5\x15\xb7\x13\x6f\x4e\x68\x9a\xf4\x7d\x2a\xfd\x53\xd7\x76\x99\x49\x0e\x96\xf4\x2c\x3d\xcc\x6a\xae\x06\xb2\x05\xdc\x83\x54\xe0\xc7\x74\xb5\x73\x3c\x8a\xe9\x21\x39\x1e\x45\xf4\x80\x1c\x8f\x8e\xbb\xed\x9b\xf7\x11\x27\xa7\x10\xb4\x87\xfb\x72\x74\xe5\x0d\x92\xcb\x99\xba\xc8\xc9\x13\xf5\xf3\x84\x5c\x49\x60\xe9\xa9\x1b\x7d\x55\x1a\x57\xf0\x7b\x9d\x2a\x9b\xa4\x52\xb2\x5f\x79\x83\x9a\xdf\xa2\x38\x44\x5c\x47\x06\xe2\x04\xce\x3b\xfa\xe3\x2a\xd9\xa3\x8e\xdb\x63\x3c\x48\x9d\x14\x82\xb6\xb7\xcb\x8d\x58\x55\xb6\xfe\x79\x97\x81\x38\x8c\x0d\x04\x88\xca\xe5\x0c\x2c\xdb\xf2\x38\x76\x7c\xda\x41\x4e\xbf\xab\x16\xf3\x03\xf6\x00\xf8\xe8\xe3\x51\xee\x18\x55\xd8\xd7\xc0\x42\xb9\x58\xa5\x1e\x6e\xd4\x21\x71\x27\x0e\xc9\xc1\xa0\x7f\xf5\x9b\x57\xae\x46\x55\x4a\x02\xab\xa7\xd2\x66\x1c\x68\xa1\x8d\xee\x6c\xcc\x2d\x11\x5c\x0b\x77\x27\x45\x31\x26\x09\x45\x22\xf8\x62\x58\x14\x8a\x2a\x99\xf8\x82\x6a\x55\x8d\xc9\xf5\x3a\xe8\xd6\xb4\x6a\x5f\xfd\x19\xbd\xf5\xe8\x0e\x12\xc1\x24\x24\x11\x11\xc1\xf5\xb0\x28\x26\x44\x04\xcf\x87\xaa\x3a\x11\xbc\x60\x7e\x6f\xc0\x6f\x82\xb1\x5f\x7d\x7c\xe9\x6f\x2a\x5d\x97\xd3\xef\xb2\xca\xd7\x79\xe5\x09\xe5\xa3\x27\x75\xde\x92\x48\x44\x12\xe1\x92\x2c\xe1\x6a\x33\x76\xb5\x99\x3c\x2d\xfb\x5d\x39\xa1\x5c\xf1\xa3\xaf\xe4\x71\xfc\x8e\xf6\xff\xd4\xcf\xef\xeb\xe7\xf7\x35\xdd\x34\x0f\xef\xea\x87\x00\x82\x7d\xf6\xb6\x7d\x56\x89\x11\x57\x5e\xd3\x8f\x5e\x4b\xf2\x34\xab\x1e\xae\x4c\x85\xc0\x8a\xd4\x8f\x33\xfd\x58\x1b\xb1\x3a\xa5\x33\x5b\xbc\x62\x6a\x32\xdd\xa9\x2b\xb9\x8c\xe2\xac\xe3\x2c\xfb\x18\xba\x9c\x7d\x9d\xc5\xd1\x7c\xf3\x75\xbf\x76\x35\x53\xe0\x57\x1a\xed\x2b\x73\xc7\xac\x5c\x8f\x5a\xb6\xc7\x56\xbc\x33\xe0\xff\x3e\x6a\x25\xc5\x05\x4f\x60\xd0\x7b\xdd\x52\x52\x45\x7a\xcb\x58\x3a\x8b\x39\x3c\xd4\xd5\xdd\x5e\x34\xf2\xc3\xb4\x56\x3f\xbe\xd5\xaa\x49\x7f\xf4\x32\x5f\x24\x69\x1b\x0a\xb7\x69\xdb\xc6\xad\x7d\xd8\x40\x96\xa3\x2b\x9b\x44\xb7\xf2\x50\xcf\x95\xb4\xa0\x3e\x0b\x64\x68\xcf\xd0\x24\x4a\x89\xfe\x32\x17\xd1\x93\x8e\x01\x75\xb6\x28\xf8\x04\x24\xbe\x37\x17\x08\x5f\x9d\xf0\xeb\xf0\xa1\x79\xb2\x25\xf7\xb7\x1a\xdb\x43\x2e\x1f\x45\x2b\xae\xa7\xce\xf4\xd1\x05\x33\xb1\x5e\xd3\x20\x6b\x2c\x68\xbf\xaf\x80\x85\x88\x76\x64\x4e\x8f\x47\x6b\x85\xe6\x6d\xcf\x76\x73\x86\x3e\x3a\x46\xf9\xe8\x4a\x3e\xad\x16\x61\x3e\xba\x72\x62\x18\x68\xbb\x50\xaa\x47\x24\xaf\x66\x6e\x31\x4d\xfd\xd4\x8c\x5f\xb4\xc1\x58\x39\xa3\xa6\xea\x97\x89\xc6\xf6\x80\x87\x46\x68\xaa\x9e\x79\x99\x87\x09\x5a\x4c\x83\x31\x81\xff\x43\x3f\xb8\x76\x9d\xbc\xf0\xa2\xfa\xf7\xe2\x8b\x2f\x56\x46\xf5\x12\xab\xd6\x15\x93\x65\x56\x0c\x39\x32\x57\xf7\xc9\x89\xb9\xba\x4b\x0e\x14\xc7\x2e\xbd\xa1\x1e\xeb\x2b\xf9\xd4\x7b\xeb\xd1\x1d\xcf\xf7\x3c\xbc\x93\x1d\x47\x8a\x68\xcd\xf1\xe9\x8c\x65\xbc\x17\xfb\x55\x47\x96\x68\x42\xc6\xd8\x5f\xa2\xeb\x13\x32\x99\xe0\x1d\x78\x9f\x35\xdf\x1f\xa9\xf7\x63\x72\x34\xb4\xef\x99\xaf\x63\x35\xe8\x86\xf4\xb6\x80\xf0\x48\x71\xc6\xe0\xb9\xaf\x88\xce\x3e\x45\xab\x5b\x87\xd3\xd5\xf0\x8b\xfe\x0a\xef\x1e\x56\x9b\x01\x5a\x4c\x4f\x76\xf7\xfd\x93\x21\xba\xb1\xbb\x8f\xc9\x91\xa9\x32\xf2\xe1\x67\x66\x5b\x5e\xa3\x83\xa1\x07\xeb\xdf\x23\x63\x53\x46\x34\x5e\x1a\x3a\xe0\x11\x0b\x55\xda\x78\x6d\xe8\x81\x47\xae\x99\xd7\xb2\xf5\x75\x4d\x16\x3c\x45\x9a\x8d\xcc\xec\xbb\xe8\x67\x36\xf4\x52\xa1\x1e\xcc\x76\x17\xe7\xd2\x58\x7c\x9c\xf4\x27\x7a\x2d\x65\xdc\xa1\x9c\x09\xb1\xce\xfd\x64\x01\x38\x99\x60\x08\x1d\xd3\x3d\x5d\x64\x49\x51\x4e\x4f\x4b\x92\x2b\xce\x64\x3e\xf4\x80\xde\x90\x3c\x98\x35\xee\x32\xb8\xbb\x6f\x84\xae\x20\x86\x5b\x4b\x86\xd5\x13\x01\x4f\xcc\x20\xe6\x41\xaa\xcb\xdb\x61\xcb\x03\x09\x0f\xaa\x81\xca\x15\x97\x34\x6f\x0f\x4d\x8e\x83\x45\xa8\x30\x1c\x5c\x9c\x0d\xae\x0d\x11\xdb\x35\xa8\x88\x7d\xa6\x76\x42\xf5\x3a\x2b\x0a\xf5\x13\xeb\xae\x1a\x64\xb5\xdc\xb0\x22\x17\x33\x35\x57\xab\xd1\x95\x79\xb0\x0c\xd1\x1a\x93\x95\xd9\x6a\x88\x65\x07\x56\xa6\x18\x10\x8e\x55\x24\x90\xc5\xed\xd5\x48\x89\x5c\xaf\x0b\xb3\x9b\x60\x3c\xba\x32\x07\x97\xa3\xde\xd2\x1c\xa2\xdb\x4a\x1b\xd4\xd5\xa9\x1e\xc8\x07\x6f\xfb\xec\x75\xcc\x36\x4c\x9d\x71\x08\x5b\x2a\xf2\xb3\x6d\xd2\x03\x4d\x5c\x42\x4d\x9a\xd8\x7c\xde\x45\x96\x6c\xbe\x1c\x4e\x1f\x40\xe4\x5d\x45\xff\xd5\x0b\x07\x0d\xea\xf3\xa7\x7a\x97\xa8\xd3\xf7\x28\x22\x62\x84\x17\x2b\xc3\x0c\x61\x78\x20\xc7\x05\x92\xcf\x71\x8c\xc9\x0c\x97\xd5\x24\xe0\x06\x5e\x72\x89\x32\xbb\x21\x0f\xb5\xda\x51\xcf\x51\xbb\x94\x31\x61\xb9\x72\xe2\x94\x8a\x2a\x05\x25\x9a\x54\x0f\x59\xfd\xf0\x8b\xba\x2f\x35\xba\xa6\x21\xbd\xc1\x9f\xd7\xa8\x77\xfd\x06\x7f\x41\x23\xd9\x84\x5f\xd7\x68\xa4\x98\x94\x35\xdd\xa0\xec\x43\xfe\xdc\xd2\xed\xee\xda\x66\x55\x5e\x2a\xfe\x49\xa6\x6c\x76\xde\xb4\x29\x31\x6b\x77\xf2\x9c\x9d\xb0\x45\x92\xae\xd8\xa6\xe5\xbf\xd1\x9c\x3b\xa9\xc6\x61\x9b\xaf\x04\xc2\xe6\xde\x6e\x7d\xc4\x8b\xc2\x7b\xe7\x9d\x77\xde\xd9\xbd\x7f\x7f\xf7\xee\xdd\x47\xaf\xbd\xe6\xaf\x56\x7e\x96\x7d\xd3\x23\x82\x1e\x8f\x9e\xea\x33\x2a\x25\x10\x36\xe8\x20\x49\xcc\x83\xd7\x94\x38\xa8\x99\x11\x92\x55\x04\x3b\xa7\xd1\xc8\xea\x10\x48\x4c\x23\x2d\x59\x66\x64\xe6\xf6\x11\xdc\xac\x5d\xdd\x14\xe2\x81\x08\x8b\x42\x4b\xb6\xb8\x28\xa2\x40\x84\x36\x7a\x35\x70\x78\xa4\x93\x38\x1d\x8f\x32\x94\xfc\xda\xe4\x5a\x51\x4c\xae\x11\x6e\x24\xe5\xa5\x6a\x94\xa7\xd1\x3c\xe2\xab\xa2\xe8\xd6\x09\xf0\x5b\x93\x6b\x53\xef\xf6\x7d\xcf\xf7\x1e\xde\xf7\x1c\xc6\xb5\x29\x17\xfa\x42\xed\x7e\xa7\xef\xbc\xe3\x1b\x0e\xc8\x20\x91\xdd\xb9\x76\xaf\x61\xa2\x46\xd0\x37\xcf\xc9\x7d\x3f\x1b\x4e\xc8\xfd\xfb\xbe\x82\x4c\x5d\x6a\xf1\x9d\xdc\xbf\x7f\xdf\x9f\x21\x3b\x18\x7b\xcb\x24\x95\x24\x23\x31\xb9\x0e\xaf\xd4\xbb\x58\xc9\xd9\x77\x7d\x4b\x11\xee\xde\x85\x2a\xec\xad\xa9\x66\xde\x84\xe3\x6d\x4c\xe6\x73\xa8\xd7\x8e\xf8\xfd\x48\x58\xb6\x93\xe4\xe4\x9a\x7a\xdf\x2c\xa0\x9b\xae\x8b\x5c\x87\x22\x73\x3f\x0f\xcc\xb3\x90\xbc\x66\x1b\x49\x30\x79\xed\x35\x00\x23\xb1\x00\x2c\xfd\x05\x9a\x60\xb2\x54\xbf\xd7\x30\x61\xfe\x52\x11\x7f\x10\x97\x6e\xdb\xeb\x09\x26\x2b\x5b\x05\xc3\x64\xb5\x82\x2a\x98\xad\x22\x6b\xf6\x21\xc3\x24\xcb\x9c\xbe\x66\xb6\xdc\xde\xde\x9e\xf3\x78\x95\x91\xeb\xfa\xf9\x37\x7d\xe1\x48\x9a\x56\x70\x9f\x13\xd4\xbd\x86\x8a\x62\x0d\x3e\x7c\xa2\x2a\x0a\xb9\x4d\x3d\x1d\x27\x75\x59\xeb\x6e\x3a\x98\xb4\xc9\x0b\xcf\xed\xba\xc4\xa8\xb9\xb2\x9f\x26\x82\x5b\xb5\xcf\xd5\xc9\x0b\x50\xdb\x3c\x5a\x34\xd9\x37\x32\xd3\x28\xb7\x30\xdc\x5a\xa2\xb6\x3f\xc5\x91\x92\xb5\xa2\x25\xcf\xa1\xa5\xab\x3d\xd2\xbb\x8e\xf3\x00\x1b\xa6\x68\x77\x49\x8e\xe8\xf1\x68\xa5\x55\xce\x75\x80\xf2\x23\x8a\x16\x8a\x36\x2d\xd4\xfe\x78\x74\x75\x72\x8d\x2c\xd4\xc6\x79\x44\x16\x41\xae\x1e\x5c\x27\x8b\x80\x85\x14\xad\x76\xd7\xf8\xea\x8d\xf1\xf3\x5f\xe2\x2f\x90\x05\x44\x6f\x87\x27\x5f\xba\xf1\x3c\x3c\x10\x21\x5d\x5d\x05\x8a\xb6\x50\x44\x6e\x75\x55\x91\xb9\x85\x22\x6e\x2b\xc5\xcb\x92\x05\x0e\xe6\x61\x51\xac\xc8\x6c\x7a\xe4\x1f\x8f\x18\x3a\xd2\xbd\xad\x37\xad\x6d\x2c\xae\xe6\x22\x33\x3c\xba\x72\x17\xf8\x06\x4d\x45\x3a\x4a\x9f\x18\x04\x7c\x23\x54\xe5\xda\xc5\x9c\x63\xff\x06\x03\xfd\xc6\x8e\xe3\x3f\x69\x76\x38\x22\x28\x04\x9e\x57\x58\xe9\x44\x6c\x42\xa9\x92\xf8\x05\x26\xa9\x6a\x00\xca\x76\x09\x49\xa3\x63\x3b\xcf\x35\x99\xd6\xfc\x6c\x47\xe9\x5a\xde\x6c\xf0\xff\xe6\xa3\x2f\xef\xbd\xf9\x60\xdb\xb8\x54\x04\x5a\xf3\x1c\x32\x79\x7d\xef\x4d\x2b\x65\xf9\x22\x8f\x63\x5d\x45\xf5\xf4\x1c\x11\xa2\xf1\xad\xfe\xec\x12\xdf\xbc\xf5\xe8\x4e\xfd\x4d\x52\x22\x4c\xf6\xe8\xbd\x4d\xed\xc6\xbe\x73\xcc\xbf\x47\x82\xc0\xbb\xb2\xca\x3c\xc2\x43\x12\x78\x57\x32\x8f\x48\xb8\x58\x79\x24\x85\x8b\xd7\x3c\x22\xe0\xe2\x6d\x8f\x44\x70\x71\xdf\x23\x19\x5c\x9c\x78\x24\x86\x8b\xbb\x1e\x99\x85\x61\xf7\xd1\xd3\x5e\xc0\x83\x49\x18\x36\x78\x86\x06\xe4\x87\x48\x12\x1e\x8c\x43\xa2\xca\x41\x30\x72\xb2\x3f\xe2\x4f\x24\x17\xf3\x2d\xd1\xbd\x90\x24\xf7\xc8\x3e\x26\xfb\x25\xd9\xb7\x68\x75\x48\xf6\x47\x51\x76\x97\x9d\xbc\x97\xd1\x03\xb2\xdf\x92\xef\xb8\x23\x7d\x4e\xf8\xf5\xe7\x94\x0c\xb8\x3f\xe2\x82\x9e\x04\x47\x21\xd9\x1f\xbd\x91\xd1\x13\xb2\x5f\x9e\x73\xe0\xf3\x0f\x25\x84\x48\x23\xca\x47\xd3\x93\xa7\xdb\x45\xd3\x44\x68\x5c\xfa\xab\x55\xef\xb6\x47\x22\x7a\x1a\xb3\x4c\xde\x65\x27\xbe\x17\xbc\xc3\x33\xc9\xd3\x39\x3b\xe9\x31\x19\xf6\xbc\xa1\x20\x19\x5b\x71\xfd\xee\x51\xe2\x3e\x17\xfc\x89\xb4\xcf\x57\x49\x9a\x26\xc7\x8d\x57\x6f\x73\xfe\xd8\xf7\xd4\xae\xd6\x0b\xec\x73\xd5\x8c\x7e\x1e\xbc\xc1\x32\x19\xf6\x9a\xaf\x55\x4b\xf7\xe2\x8c\xfb\xde\xfd\xfb\x57\xef\xde\xbd\xaa\xf6\x74\xaf\xdc\x71\xfd\xb8\x14\xe2\x88\x39\x6b\xeb\x29\x8c\xda\x4c\x47\xf9\x77\x84\x45\x5b\xbc\x28\x22\x88\x22\xcf\x8b\xc2\x04\xde\xab\x84\x29\x6f\xee\x61\xcb\x42\xa9\x7d\x03\x25\xc4\x9b\x7b\xb0\x97\x66\x94\xdd\xda\xbd\x31\xf5\x2c\x5c\x9e\xcf\x6e\xed\x4e\xa6\x9e\xed\x86\xba\x1f\xeb\xdb\xbb\xec\x44\xdd\x4d\x74\x61\x73\x77\x6d\xea\x99\x41\x52\x77\x5f\xd4\x77\xfa\xc3\xba\x4e\x92\x53\x11\x64\xa1\x62\xb6\xb2\x70\x7b\x28\xc7\x7c\x9a\x37\x4e\x3b\xb1\xf1\xec\xd0\x9c\x28\xca\x21\xe2\x5b\xad\x0d\x66\xdb\x4f\xfb\x92\xcb\x9c\xf6\x25\x97\x39\xed\xdb\x16\xd3\xa0\x81\xfc\x0d\x0c\xef\x5c\x0b\x8d\x12\xa3\x28\x7b\x39\x5f\x2c\x78\xda\xfa\xb2\x7a\xde\x08\xb6\x9b\x36\xa2\x71\x56\x8f\x1b\x69\x5a\x90\xa0\xa2\x28\x4e\x4b\x3c\x9a\x73\x08\xc3\xcc\xd3\xa2\xf0\x46\x1e\x64\x2a\x58\xb1\x27\x77\xf9\x5a\x2e\xc1\x8d\x1f\x62\xf9\xa9\x01\xfd\x0a\x3f\x29\x0a\x48\xa4\x5f\xb6\xd7\x50\x8f\xa3\x94\xe4\x24\xc6\xa7\x31\x8d\x95\xa8\xe1\x86\xd0\x4c\xbb\xe2\x66\x5a\xd6\x83\xa6\xc1\x2c\x24\x73\x2a\x46\x19\x5b\xf0\xc1\x40\xfb\x44\x46\x99\x3e\xf3\x02\xeb\xcc\x0b\x7c\x65\x17\x8a\x5d\x91\xea\x67\x45\x2b\x67\x5b\xfd\x0d\xb8\xda\x2e\x1d\x57\x61\xa8\x55\x3f\x25\x47\x34\x9f\xe6\xc3\x68\xc8\xd0\x0c\xfb\xea\x0f\x48\x28\xf3\xc1\xa0\xbf\x1e\x0c\x56\x55\x50\x1b\xe8\xc2\x02\xd7\x51\x2a\xfb\xf5\xf8\x14\x45\x7c\x2b\xa9\x4f\x21\xd0\x82\x1c\x91\x78\x38\xc1\x3b\x59\x70\x14\xd2\x45\xa9\x33\x5a\x93\xcc\xf1\x69\x14\x44\xd8\x2c\xa5\x70\x9d\x0b\x7b\xe7\x8c\x65\x64\x65\x58\x46\x51\x42\x93\xce\x79\xca\x68\x32\x4a\x8e\x78\x7a\x9c\x46\x52\x1b\x69\xe6\x34\xd9\x98\xac\x58\x4d\x56\xb4\x40\x12\x45\xd8\x19\x07\x3b\x3c\xfd\x0b\x3d\x91\xab\x24\x03\x3d\xc7\x54\x60\x56\x8b\x76\xb5\x68\x6d\x8b\x65\x0f\xd8\x03\x24\x71\x51\xec\x6a\x3b\xeb\x2a\xd6\xd7\xc8\xc3\x45\x91\x8c\x34\x08\x60\x9b\x68\x3f\xa1\xee\x58\x47\x78\x94\xf2\x79\x3e\xe3\x08\x75\x69\x0e\x2f\x82\x37\x90\x55\x08\x89\xae\xee\xaa\xc5\xd6\xc2\x86\x3e\xb8\x93\x6f\x4a\xad\x17\xfa\x68\x93\xb4\x13\xe1\x6c\x3c\xbf\x3e\x2f\x0a\xd4\x81\x7a\x72\xda\xb7\x8e\xe8\x7e\x3a\xed\x37\xa2\xcd\x5a\x3c\x33\xb4\x08\x97\xba\x43\x53\x04\x99\xcb\xd5\xb5\x22\x3a\x5b\x54\xc5\xad\x45\xb7\x31\x8a\x6e\xb2\x6d\x19\xf0\x21\x1b\x8a\x90\xa6\x81\x08\x89\x2c\x21\xf9\x83\x62\x60\x88\x80\x26\x49\x82\x71\x89\xc9\x69\x1d\xa0\xc9\x4e\xce\xe6\x5a\x6e\x58\x19\x4b\x73\xee\xcd\x74\x10\xe0\x5c\xb1\xbc\x33\x94\x8e\xb2\x65\xb4\x00\xa1\x61\xa1\x6e\x83\x71\x88\xc9\x9c\xc6\x37\x2b\x62\xbc\x30\x9e\xbc\x95\x61\xa4\x1a\x2a\x61\x90\xcf\xe8\x3a\x2e\x98\x91\x79\x20\x42\x45\x0c\x3e\x01\x15\x80\x35\x9f\xe9\x35\x5f\x81\x32\xaf\xc3\x7c\xdd\x44\xf0\xb2\x28\x54\x21\x7d\x1a\x06\x6f\x07\x03\x68\x8d\x7a\x3a\xa9\x53\x6d\xdb\xba\x70\x50\xfc\xb4\xf4\x03\xe8\xa6\x2a\x4a\x52\xc7\xa8\x0a\x6d\x1b\x13\x5c\x42\xb5\xdc\xce\x81\x62\x22\xe3\xf3\x62\x01\x98\x84\x30\x37\xc6\x78\xa7\xe3\x18\xf1\x4e\xed\xa9\x59\x14\x3a\xca\xa0\xe6\xf0\x25\x5f\xe9\x0c\x7f\xf7\xd9\xda\xda\x8f\xe9\x13\xa4\x6e\xdb\xed\xfa\x2b\xe2\x39\xfb\x4f\x15\x98\x2b\x69\x1a\xcd\x96\xb8\x4c\x5c\xfe\x44\xd5\x4d\x37\xdc\xa3\xa2\xa7\x9c\x1a\xff\xc2\x79\xb4\xe2\x22\x8b\x12\x61\x1f\x40\x5b\x16\xa8\x92\xb8\xb5\x6d\xaa\x12\x4d\x7c\x3c\xea\x7c\x79\xc8\xa5\x43\x94\x84\x8d\x5e\x53\xb5\x33\x1c\x9a\xd4\xf7\xcd\x71\x72\x1b\xd7\xba\x48\x81\x8d\x8e\xb4\x1e\x4b\x4a\xf7\xb8\x9c\xa2\x54\x6d\x5a\xd1\x53\xae\x83\x1d\x41\x4e\x81\x5b\xfa\x89\x75\x29\x8d\x9e\xf2\xe1\x10\xfb\xa8\x4a\x5d\x4c\xdc\xe7\x36\xfa\x90\xd3\x35\x1d\xe3\x66\x8b\x06\xad\xab\x67\xfd\xbe\xb4\xf6\x81\xaa\xd6\x5d\xda\x09\xaa\x84\x97\xbe\x35\xfe\x6f\x0d\xf9\xee\xae\xdb\xeb\x2a\x58\xae\x62\xf6\x9a\xd0\x69\x7f\xa5\xee\xb1\xb7\xaa\xb8\x4e\x18\x23\x0b\xe3\xc6\x18\xa2\x94\x46\xb6\x49\x89\xb1\x33\x70\xbb\xbb\x04\x62\x9f\x9b\x01\x45\x9d\x20\xb6\x3b\x82\x49\x8a\x7d\xd8\x77\x90\xa0\x51\xb5\xf5\x40\xcd\xc8\xad\x1a\xa2\x86\xda\x00\x43\x97\xab\x5b\x8d\x87\x8f\x22\x20\x6f\x33\x8e\x04\x99\xc0\x10\xe1\xd6\x20\x2d\x59\xb6\xf5\xa8\x42\x37\xb1\x64\x19\x9c\xfa\xb9\x5f\x9d\xa3\xeb\x6e\x0c\x69\xf3\x2b\x13\x5e\x33\x9a\x45\xb2\x23\x9e\xee\xf6\xe5\x50\x07\xab\x9f\x8e\xfd\xcb\x60\x4c\xb3\xd9\x59\x92\x0b\x49\xb7\x01\xd2\x28\x6a\x36\x8b\x2e\x9c\x71\xd3\xf3\x08\x7c\xca\x2d\x63\x2d\x48\x8a\x4b\xb9\x69\x8b\x3a\x99\x6a\x9b\x63\x17\x59\x3b\x04\x75\x90\xaf\x21\x1e\x94\x7d\x29\xb4\x3a\xad\x03\xac\xdb\x59\x96\xcc\x22\x48\x40\xd2\x82\xf0\x13\xb6\xaf\x35\xe0\x6e\x0b\x6a\xb7\xdc\xaa\x5f\x81\x6f\x61\x3f\x6d\x7d\x05\xc4\x34\xdb\x38\xf6\xd7\xa1\x55\xac\x72\x5b\x7f\xae\x8b\x42\xc6\xd6\xfe\xa4\x71\xf2\xd2\x9e\x4b\x45\xe5\x44\x3d\x44\xbd\x54\x27\x01\xec\xeb\xd0\xd7\x48\xcd\xa4\x09\x9c\x0e\xe1\xcd\x6d\xfe\x02\x1d\x72\x7d\x5c\xee\x30\xda\x1f\x13\x4e\x4d\xda\xd2\xaa\xe1\xd2\x5a\x89\x51\xde\xf8\x7e\x8a\x14\x44\x5a\x18\x33\x95\x4c\x8c\xc1\xb1\xb4\xd1\xd6\x8d\x25\x85\x0b\x95\xf8\x54\x50\x91\x14\x42\x9f\x59\xbe\xaa\x0a\x9a\xf9\x12\x8d\x0c\x3c\xa2\x03\x1e\x1d\x5c\xbe\xdc\x40\x0f\x2e\x64\x1a\x9d\x33\x0f\x56\x32\xd6\x33\x61\x4a\x23\x25\x1a\x7f\xc2\xa9\xb0\x9d\xce\x6c\xa7\xd9\xf9\x9d\xce\x54\xa7\x53\xdb\x69\xd0\x35\x55\x37\x93\xf0\x12\x53\x93\x6d\x1b\x8a\x20\xb5\x79\x69\xc3\x73\xa7\xe7\xb3\x81\x94\x44\x74\x4c\x92\x8d\xe9\x8a\x5e\xa2\xc9\xf9\x30\xf2\x20\x1a\x0e\xc3\x8e\x29\xab\x3c\x0e\x2e\x58\x75\xd5\x10\x35\xbe\x66\x35\x21\xb8\xe0\xfb\x6a\xb2\x4b\x72\x5e\x94\x54\xe4\xd4\xbe\x91\x28\x81\x76\xe0\x1a\x6e\xc0\x13\x89\x6c\xcd\x67\x5d\x6a\xff\x1a\x94\x4f\x0e\x80\x62\xd2\x3d\x91\xcc\xf9\x7b\xd9\x28\x97\x51\x6c\x9b\x19\xcd\xf2\x4c\x26\x2b\x0f\x37\x21\x33\x6f\x9b\x90\x5d\xa0\x39\xd6\x80\x25\x10\x10\xbc\xd3\xf0\x43\x67\x16\xac\x43\x0f\x46\xcd\x60\x47\x40\xbd\x81\xf3\x32\xe9\xe2\x48\xea\x86\xf9\x4b\x2e\xd6\xae\xa0\x73\xb3\x56\xfc\x1d\x54\x64\x36\xd5\x3a\xdb\xd9\x73\xe2\xed\x0b\xf0\x40\x39\xad\x3d\xd6\x26\x2d\x5f\xb6\x3a\x04\xad\xe6\x6e\x12\x01\x41\x01\x52\x67\x82\x55\x1d\xee\xf4\x5a\xa7\xf1\xce\x55\xee\x18\xa5\xed\x6b\x72\x50\x87\x19\x33\xa9\x32\x9c\x86\xc6\x98\xf0\x0b\xb0\x36\x3d\x6f\xd9\x74\x23\x5d\x89\x49\x3a\x4a\x16\x9b\xb6\x72\xb5\x69\x67\x1d\xcc\x9c\x88\x3a\x47\x89\x42\x45\x37\xdf\x4c\x7d\x72\xf2\x12\x95\xd3\xaa\x93\x9b\x9b\x86\xa8\x36\x8d\x74\xc4\x57\x6b\x97\xf7\xb2\x6d\xeb\xba\x75\xc8\xe0\xc6\x88\xc0\xae\xa5\x3e\x8c\x3a\xd9\xc4\x86\x2d\x6e\x5a\xfb\x79\x2a\x5e\x0d\x42\x16\x1b\xc7\xc9\x6e\xb4\xd3\xb3\xe7\x2e\x98\xb4\xb9\x60\x4c\x56\x97\x8e\x19\x00\xe1\x50\xeb\x12\x49\xda\x59\x42\x4f\xc7\x4e\xa7\x3a\x51\x6d\x89\x24\x23\xf9\x4e\xdb\xfb\xd5\x38\x74\x26\x07\xb1\x9d\xc6\xab\x86\x67\xf2\x7b\x91\x39\xf6\x87\x37\x07\x31\x1f\xe9\x38\x95\x1d\x0e\xa3\x9b\xc1\x07\xba\x6b\xe4\x90\x3e\x39\x12\x87\x3d\x06\x4e\xb3\x07\x6c\xf6\xd8\xd4\xda\xd4\x2b\x72\x5c\x14\xd2\x28\x1b\x75\xa7\x47\x51\xf6\xf5\x88\x1f\xc3\x9b\xae\x90\x7f\x8e\xf2\xc0\x60\x55\x68\x72\x11\xd5\x06\x88\x8a\xbe\xea\xf8\xfb\xdc\x8d\xbf\xcf\x86\x43\x2c\x10\x0f\x58\x48\x18\xae\x23\x10\x6f\x76\xb3\xe2\x4b\x71\xb4\x40\x69\x15\x6a\xdb\xf6\xb3\x17\xb5\xc8\x4d\xbf\x39\xef\x10\x71\x6e\x73\xd9\x20\x8c\xc9\xd6\x6f\x00\xe6\x44\x87\x9b\x6e\x87\x67\x46\x09\x86\x5c\x32\x41\x12\x92\xc4\x00\xae\x8a\x47\x94\x13\x46\xc7\x37\xfb\x63\x25\x67\xe5\x34\x6a\x70\x02\x37\xb1\x40\x55\x22\x14\x4c\xd8\x70\xa8\xbf\x6c\xf0\xe3\xc2\xde\xbc\x1d\xc9\xe5\x83\x3c\x8e\xbf\xd2\x60\x97\x3f\x15\x62\xb9\x55\x7e\xf6\x48\xd6\xac\xfd\x6f\x3d\xc2\x69\x0a\x64\x71\xae\x19\xb7\x92\x4b\xcc\xbb\x8f\x3a\x61\x06\xc0\x7f\x10\xff\xc3\x42\x58\xed\x26\xdb\x8d\xb3\x0e\x55\x15\x9b\x71\x54\x21\x81\x63\xa6\x63\xc2\xb4\xb6\xcf\xb6\x24\x79\xeb\xda\x26\xa6\xad\x04\x5f\x25\x22\xca\xe4\xd5\x3d\xde\xac\xcc\xef\x09\xce\xe7\x59\x8f\xc9\x5e\xcc\x59\x26\x7b\xf2\x38\xa9\xe3\x0c\x8f\x4c\x52\x0d\x10\x4d\xaa\x8c\x4d\x82\x4e\xae\x2a\x71\x08\xdc\x05\x92\x0d\x51\x16\xb2\x95\x48\x3a\xbe\x29\x6f\x25\x37\xe5\x70\x58\xe5\x84\x47\xce\xa6\x19\xc8\x10\x83\x12\xc0\xea\xff\xd3\x1d\x0e\xf7\xb7\x84\xf6\xef\xd0\xba\xaf\x88\x2a\x16\xc5\x68\x7f\x61\xa9\x92\x98\xcc\x68\x54\x31\xda\x37\xfb\x88\xd1\x59\x6b\xc4\x41\x5f\x9c\x51\x66\x86\x3d\x57\xbb\xa2\x0b\x90\x12\x31\xe2\x26\x2c\x7d\xc8\xda\xd2\x8f\x41\x7d\x92\x61\x7c\x9a\x2b\x61\xeb\x20\xe5\xec\x71\x99\x0f\x06\x10\xde\x0c\xd5\xf1\xb7\xd3\x92\xc8\x51\x2e\x3e\x8b\xd9\x80\x5a\x3e\xc1\x34\x18\xc5\xa2\x9a\x88\xa8\x7b\xec\x39\x1d\xdf\xe4\xb7\xa2\x9b\x7c\x38\xc4\x7a\x2e\xea\xae\xf2\xd0\x1d\x3a\x25\x41\xb5\x90\x15\x3a\x9a\xda\xcc\x66\x96\x65\x51\xdd\x9d\x47\x0b\x13\x6b\xa2\xcb\x38\xa5\x31\x99\x06\x40\x6d\x94\xd7\xf5\x06\xf1\x3a\xf3\x74\xb3\x47\xbc\x09\x5f\x7b\x31\x81\xeb\x6c\x05\x5f\x51\x9c\x03\x6f\x76\xb2\x5a\x71\x99\x46\xb3\xbb\xdb\x00\xff\x55\x40\xa0\x29\x82\x3c\xbf\x0e\x7e\xf9\x5e\x44\xd9\x5e\x7e\xb0\x5d\x27\x5d\x03\xab\x06\x9b\x3b\xde\x34\xfd\x31\x3c\x81\xd1\x7f\xa9\x31\x09\xfd\x09\x40\x09\x90\x89\x16\x64\x7a\xc6\x5c\xe8\xea\x8f\x6c\xbd\x16\xac\xb5\xa2\x22\xb2\x95\xa9\xde\xb2\xce\x15\xe0\xc6\x95\x40\xb6\xed\x68\x5b\xe3\xdf\x1a\xb1\x36\x5c\xbc\x31\x42\x30\xbd\xdd\x06\xa4\x9f\xa8\x4e\xa3\x8e\x75\xab\xad\x88\xe3\x39\xf5\xf2\xf3\xeb\x6d\x63\x48\x67\x3b\xf3\x28\x7b\x4f\x35\x70\xa9\x66\x20\x12\xfe\x25\xda\xaa\x42\xdd\x37\xd0\xf1\x12\x03\xd1\x06\x78\x03\xa5\xeb\xc8\xfb\x51\x3b\xf2\x7e\xd5\xbd\x28\x48\xc2\xe6\x18\x46\x89\x80\xb0\x8c\x5d\xfa\xd9\x36\x72\x42\x6e\x26\x4e\x38\x95\x44\xd2\x14\x13\x1d\x51\xdb\xa5\x1d\xe3\x36\x8a\xf7\xf4\xfb\x0a\x40\xd1\x58\xbd\x24\x51\x9b\x32\x68\xea\xbb\xc6\x4c\x54\x63\x96\x0c\x87\x76\xc9\x25\x15\x5d\x6f\xc3\x5d\xe7\x6c\xd8\xe8\x1e\xbc\xdd\x69\x80\x34\x4c\xf5\x51\x00\x2c\xe1\xf7\xd8\x6c\xc6\xd2\xf9\x2f\x53\x9b\x1a\x04\x31\x1d\xfb\xe2\x2a\x6a\x55\x0c\x03\x9d\x1c\xf1\x34\x66\xeb\x4f\x57\x73\x65\x92\x6f\xf6\x5c\xdd\x42\x57\x88\xf0\xee\x3c\x29\x3a\x32\x74\xf4\x7e\xce\xdf\x88\xc4\xe3\xd7\xe7\x9e\xaa\x8a\x72\x30\x2b\x18\x0c\xd0\x2c\x11\x59\x12\xf3\xd1\x31\x4b\x05\xf2\xc4\x61\xca\xd6\xcb\x11\xfc\xf5\x7b\xe0\x53\xa2\xf8\x5b\x08\xdd\x75\x64\x72\x7e\x8f\x47\x93\xe7\x7b\xdf\x76\xab\xfc\x76\x2f\xca\x7a\x73\xbe\x4e\xf9\x8c\x49\x3e\x1f\xbd\x2b\xde\xca\x78\xef\xdb\x70\x2e\x00\x55\x7d\xbb\xa7\x73\xbe\xda\xb8\x65\xef\x0a\x8f\x78\xf0\xe7\x41\x22\xb9\xdf\x93\x4b\x9e\x72\x55\x09\x8b\xb3\xa4\xa7\xb3\x98\x2a\x2e\xcf\xf8\x86\xf4\x0e\xf8\x92\x1d\x45\x49\xea\xf7\x5e\x51\x90\x88\xe4\xb8\x97\x88\x1e\x67\xb3\x65\x0f\xea\x7f\x57\x44\x59\x4f\xf5\x24\x9a\xf3\x94\xcf\x7b\x32\x81\x40\x41\x89\xb4\x59\xc8\xa0\x54\xef\xe0\xa4\xaa\x11\xc1\xc7\x7c\x7e\x08\xcd\xea\xce\xe0\x11\xa4\x6a\xa9\x3f\xa0\x7c\xe4\x76\x13\xd7\x11\x1a\xdc\x52\x10\x53\xcd\xf9\xa8\x3f\xe9\xe4\x60\xef\xb3\xf5\x26\xaf\xe1\x8e\xb7\x4d\x24\x91\xf5\xbe\x7d\x9f\xad\xbf\x6d\x3a\x61\x24\xf1\x2a\x10\xdc\x3a\x89\x4f\x16\x51\x1c\xf7\x22\x35\x2c\x8b\x24\xe5\xbd\x1c\xd2\x50\xe8\xaa\x0c\x2b\x22\xab\xe3\x5d\xc8\x49\x17\xd3\xd3\xd2\x64\x45\x74\x41\x9d\x76\x1f\x2c\xeb\xb4\xdb\x24\xa2\x71\x9b\xc5\x16\xb0\x8d\x45\x45\x71\x1b\x8a\xe0\xd3\xa8\x28\x50\x1c\x88\x90\x8e\x6d\xe6\x70\xef\xbf\xf7\x86\xbd\xe1\x50\x3d\xdc\x81\xaa\x86\x09\x91\xc3\x04\xbb\x8e\x90\x99\x8d\x65\xde\x88\x95\xd6\xb0\x66\x70\x8b\x69\x78\x70\x49\xe6\xaa\x2f\x4b\xfa\x88\xac\xe9\x23\xb2\xa2\x8f\xc8\x11\x7d\x44\x4e\xe8\x29\x9b\xcf\x1f\x24\x73\xee\xef\x13\x36\x9f\xab\xb9\x6a\xd6\x2a\xf0\xe9\xca\x78\x07\x47\x54\xcb\x5c\x60\xe7\x9c\xd0\x63\x30\x55\xd9\x47\x12\x93\x8c\x2e\x4c\xe1\xda\x84\x1b\x68\x75\x86\x09\x43\x11\xc9\x30\xe1\x3a\x5d\x09\x43\x89\xba\x5b\xa2\x8c\x78\x6c\x3e\xf7\x30\x39\xd2\xb9\x37\xf5\x09\x29\xb4\xff\xc4\xdc\x00\x58\xf7\xc8\x21\x87\x30\xe3\xfe\xb1\xbd\xba\x93\xe4\x42\xfa\x7b\xea\x56\x95\xd7\xb7\x6f\xda\xdb\xcc\xb9\x57\xa5\xb3\x56\xf1\xac\xc3\xd9\xff\xd8\x75\x70\x9c\xca\x51\x0c\xe5\xb4\xbd\xae\x91\x63\x00\x84\x87\xf6\x4e\x55\xc4\xf5\xb8\xb9\xf4\xa9\x36\x12\x83\x1a\xd5\x74\xab\x6d\x0b\xaa\xeb\x54\x3b\xa5\x15\xef\x38\x6d\xd7\x53\x65\xb4\xa2\xe3\x9b\xd1\xad\x4a\x4a\x1d\x0e\x6d\x22\x6f\xca\x83\x08\x52\xc8\x68\x9d\xf1\xeb\x73\x9d\x05\x50\x20\x88\xb4\x82\x92\x91\x4c\xd4\xb2\xab\xac\xac\xfa\xe3\xb2\x44\x06\x18\xa2\xc8\xe5\x06\xe8\x97\x6b\x92\x30\xea\xb6\x38\xd5\x0d\xf9\xf6\x19\x78\x18\x1b\x18\xd8\x79\xcd\x97\xee\x60\x6e\x4e\x0a\x11\x3b\x5b\xc2\xd3\x1b\xc6\x7f\x4c\x44\x9d\xb0\x47\xde\x12\x37\x87\x43\x89\x39\x4a\x95\xc8\x53\x92\x03\x7e\x18\x89\xb7\xd6\x73\x26\xb9\xbf\x22\x5c\xcc\xcd\xf5\x91\x0e\x92\xea\x46\xf0\x59\x21\x4c\x1e\x36\xc5\xf8\x7b\x88\x8f\xa2\x39\x68\xd1\x8f\xc0\xfa\x9a\x65\x00\xe5\x6d\x75\x55\x63\xa3\x7e\x56\xd9\xf4\x09\x74\x82\xc9\x86\x42\xf3\x64\x94\x88\x1d\xf5\xa7\xcb\x3c\x7e\xe4\xc0\x49\x57\xf4\x31\xe4\x09\x37\xb0\xd2\x23\x7a\x9f\x2c\xe9\x01\x59\xd3\x43\x02\x15\x70\xc2\x8d\x37\xe6\x89\x9b\x38\xa9\x44\x98\x9c\xd4\xea\xc5\x03\xcd\x8a\xcc\x4d\xda\x26\x35\xe2\x3e\x37\xe9\xad\x1f\x9d\xac\xb9\x2f\x4b\x47\x37\x7e\xd8\x2c\x2d\x54\xe7\xb6\x97\xde\xd7\xdb\xb0\x9b\xb6\xbd\x43\xb7\x64\xdd\x92\x54\x65\xbd\x68\xce\x85\x8c\x16\x11\x4f\x3d\xbc\xb3\xaa\x53\x68\xb9\x46\x26\x53\x24\x46\x73\x26\x19\x4d\xc9\x1a\x09\xe2\xe5\x30\x00\x1e\x86\xe8\x3e\xfa\xe0\x03\x42\x19\xc2\x4b\xa0\x1b\x98\xc8\xca\xcc\x04\x68\x88\xa8\x81\x3c\x6e\x44\x11\x33\xc7\xff\xd5\xdb\x7b\x75\x5e\x15\xbb\x4a\xfb\x69\x2d\x09\xd4\x10\xa6\x1a\x59\x8d\xcb\xbc\xb9\x03\xcd\xc0\x4e\x73\xa5\x08\x77\xa5\x3c\x41\x22\x88\xc2\x3a\x55\x97\x63\x17\xb1\x46\x29\x31\xe1\x9f\x0d\xe1\xeb\x8f\x6b\xb8\xf6\x1c\xe5\x3c\xb0\x29\xf5\xab\x37\x9d\xcc\xc3\xf6\xe0\xaf\x7a\xf9\x04\xf1\xa6\x13\x45\x7f\x62\xb6\xb1\x48\x73\x45\xd1\x02\xc9\x5b\xe3\x46\x0f\x15\x23\xa4\x8d\x31\x24\x99\x38\x33\x62\xd6\xb0\x26\xef\x5c\x53\x10\xd7\xd9\x42\xd7\x29\xf4\x50\x60\xfc\x12\x1d\x0f\x06\xe6\xce\xad\x90\x24\x55\xd9\xa4\x51\x36\xe9\x28\xbb\x44\xfc\x9c\x51\xb9\xdd\x94\x09\xab\x19\x13\x45\xd1\xb7\x70\x58\x00\xed\xcc\xe8\x80\x9d\x16\xae\x6a\x6e\xd2\x2a\xee\x81\x7e\x13\xa4\x40\x3e\xa3\x9a\x98\x71\x45\xad\x55\xa7\x5d\x46\x3c\x2a\x9d\xfa\x6b\xc0\x1e\x21\x7c\x5a\xdf\x3d\x46\xf8\x74\x36\xa4\x93\xfa\xc9\x7d\x84\x4f\xc7\x94\xa2\xd9\x2e\x9d\xe0\xc1\x60\xee\xda\xb0\x9d\x8c\x16\x51\xca\x91\x67\x52\xce\x7b\x64\x8e\x89\x2d\x40\xc7\x0e\xae\x3e\xb4\x4c\x68\x87\x52\x6f\x73\xd9\xd9\x3c\x39\x8a\x2b\xd3\xfa\x55\xcd\xce\x69\xfd\x20\xef\x29\x96\x5a\xf3\x7c\xb0\x32\x33\x1d\x6a\x76\xcd\xb2\x8c\xcf\x7b\xde\xd0\xd5\x5b\x38\x62\x15\x90\x59\x9b\x32\x5e\x58\x35\x94\x12\x57\x2a\x39\xa3\x16\xcb\xeb\xb2\x65\x59\x56\x29\x3f\x6e\x5c\x6f\x27\xde\xd1\x18\x6b\xc7\x78\x77\xa2\x43\x87\x19\xab\xa3\x3a\x64\x98\x35\x43\x32\xfe\xa7\x5a\xf0\x75\xd4\x41\x66\xa6\x6f\xa6\x43\x3a\xc1\x90\x66\x34\x0d\x81\x24\x55\x9a\x37\xdb\x40\x2b\xe1\x8e\x31\xa4\x8b\xe6\x94\xeb\x03\xbd\x7a\x71\x9b\x03\x3e\x45\x8d\x64\xe9\x3a\x7c\xa8\xaf\xb8\x2e\x38\x35\xbf\xd6\x3a\xcd\x37\xf7\x34\x90\x4e\xbe\xdd\x9a\x55\x33\x71\xdd\x35\x9e\x99\x16\x01\xcf\xa4\xd3\x9a\x35\xa1\x9b\x53\x87\x96\xe5\xad\xac\xf6\xb5\x0e\x7b\xe8\xfd\x7f\xdf\xff\x5f\x7e\xa7\xe7\x0d\xa5\x9b\x21\xb0\x79\x6a\xd5\x2d\xd5\xf4\x5b\x22\x4e\xd7\xf1\x00\x04\x98\x8f\x16\x27\xbd\x99\x0e\xeb\x9a\x67\xbc\xb7\x60\x71\x76\xd2\x33\xca\x75\x96\xf5\xf8\x11\x44\x23\xce\x72\x7d\xd2\x56\xa3\x8f\xa4\x81\x97\x28\x09\x45\xa1\xb9\x47\xbc\x64\xb1\xf0\x42\xd2\x8a\xa3\xab\x16\x24\x08\xca\x2d\x3e\x59\xcd\xe1\x66\xc4\x64\x6f\x4f\xb7\x62\xe1\x39\xe0\xba\x79\xb5\xb1\xcc\x49\x2f\x8b\xc4\x8c\x2b\xb6\x9e\xc5\x29\x67\xf3\x93\xde\x92\x65\xbd\xb5\xa9\xb2\xf7\x05\x6f\xa8\x6a\x1d\x7a\x5f\xf0\xc0\xae\xdc\xd0\xc7\xad\x86\xcb\x8d\xbc\xa5\xe6\xe4\xd6\x4d\xa4\x68\xb2\x46\x5d\xfa\x34\xc4\x1e\x70\xb4\x17\x26\x24\x23\xab\x6a\xb0\x52\x00\x44\x15\xb6\x42\x7b\x51\x20\xfd\x84\x06\x21\xb6\x49\xb6\x4f\x6d\x85\xbe\x80\x84\x8c\x51\x09\xe7\xc3\x8d\x34\x84\x80\x76\xee\x3e\x5d\xf1\x9a\x9d\xdd\x24\x3a\xf4\x8c\x1a\xfb\x6d\xdd\x32\x69\x04\x01\xbc\xea\x84\xe0\xc8\xe4\xef\x4d\x43\xd0\x49\x24\xb7\xa2\x7a\x7e\x13\x1c\x05\x89\xce\xda\x0b\x59\x05\x28\x15\x8a\xc0\x1a\xe2\x9f\xa8\x9d\xa7\xf2\xb5\x20\x0a\x55\x1c\xe8\x2b\xaf\x2b\x3d\x1c\x0a\x4b\xa3\x3a\x03\xd1\xa6\x89\x19\x68\xd6\xdb\x69\xa1\x74\x4b\x9b\x79\x21\x1b\x7a\x9f\x36\xcc\xc6\x7d\x40\x81\xbe\xc3\x2a\xe0\x0d\xdf\xc5\x20\xff\xa3\xa8\xb6\x77\x0e\xf9\xec\x1c\x0d\x49\xa2\x28\x54\x22\x08\x1f\x25\x8b\x85\xba\x5c\x2c\x08\x07\x72\x4f\x25\xfc\x10\x7e\x51\xbe\x24\xf7\x9c\xb8\xb2\xcd\xe8\x0c\x36\xfb\x77\xd8\x36\x43\x27\x85\x22\x26\x21\xae\x3e\xd8\xe3\xf3\x3b\xb0\x21\x66\x5c\x7a\xa4\xc3\xba\x20\xe1\x60\xd6\xa2\x3f\xb9\xf3\xda\xed\x07\xaf\xde\xdb\xbb\xf7\xa8\xb3\xe8\x23\xb7\x24\x54\xda\x59\x2c\xda\x28\xb6\xad\xed\xdc\x6d\xfb\x5e\x9a\x76\x16\x62\x4e\x19\x70\x04\x65\xf2\xa2\x3e\x65\x6e\xbd\x07\x79\x14\xcf\xdf\x8c\xe7\x5f\x87\xad\xb7\xb3\xfc\x03\xa7\xf8\xec\xdc\x9a\x99\x5b\xf3\x21\x97\x77\x39\x5f\x77\x16\x9c\x37\xcb\x7d\x85\x9f\x9c\xd3\x7e\xec\x14\x8e\xb2\xf3\xfb\xf6\xb8\x51\x56\x13\x9d\xee\x89\x6d\x14\x7c\x98\x26\xab\x28\xeb\x9e\xb0\x99\x53\xf2\x31\x3f\x79\x5d\x9c\x53\xeb\x7d\xa7\x6c\x9c\x24\x8f\xf3\xb5\x99\x93\xa4\x7b\xf6\x96\x4e\xf9\x15\x4f\x0f\xf9\xd6\x11\x7b\xb5\x5d\xf2\x01\xcf\x20\x3a\x6c\x47\xd9\xbb\x4e\x59\x91\xa4\x2b\x16\x47\x4f\xf9\x39\x50\x1f\x3b\xe5\xf5\x56\xfb\x76\x24\x97\x49\xde\x5d\xfa\x65\xa7\xf4\x3a\x4f\xf9\xed\x2c\x8b\x0e\x45\x67\xd1\x3d\xa7\x68\x76\x0e\x3a\xdc\x71\xca\x49\xc8\x52\xd3\x51\xe8\xb5\x12\x5b\xa5\x90\x4b\x3e\x6a\x87\x69\xca\xcb\xce\x00\xa9\x3d\xc7\x0c\xa7\xb6\xd0\x11\x60\xa1\xd3\x0a\x34\x7f\x97\xc9\x76\xc6\xc8\xaf\xf1\xc3\x7b\x4f\xd6\xaa\x68\xdb\x48\xa0\xd4\x54\xbb\x75\xb8\xec\x80\x43\xec\x8d\xc2\x80\x48\x91\xe9\x46\xf6\x36\x37\xb2\xed\x39\x94\x6f\xe3\xc8\xbd\x21\x3e\xda\xfc\xe7\x60\x71\x9c\x56\xce\x4e\x8c\x06\x21\x24\x9d\x81\xa3\xa9\x7a\x47\x96\x45\x21\x77\x77\x7b\x2f\x8d\xa1\xef\xa2\x65\xb7\x7b\x13\x33\x93\xdb\xd7\x1e\xad\xe8\x7c\x34\x8a\x67\xa3\xa7\x90\x31\xc6\xe7\x65\xb9\x88\x04\x8b\xe3\x93\x53\x55\xbf\x18\x0c\x0c\x87\x0e\x27\x0e\xc9\x48\x83\x85\x07\x03\x03\x4c\x82\xab\xf2\x4a\xf2\x31\x9c\x4a\x34\x82\xda\xaa\x78\x6b\xac\x6c\xa5\x78\x33\x9b\x25\xa7\x41\x68\x0e\x9b\xdb\x1b\x30\x9c\x3d\x73\x9d\xd5\x6c\xc6\x24\xca\x50\xe3\x08\xda\xd9\xe8\x6b\xac\x88\xcd\xa0\x57\xc3\x01\x42\x63\x10\xda\x58\x84\x41\x58\x9f\x7e\x18\xb3\x85\x40\x84\x83\x41\x02\x61\x45\x70\x1d\x3d\xfe\x82\x2c\xe9\x81\x08\x6d\xd2\x05\x3c\x35\x8a\x49\x88\xec\x9c\x23\x49\x54\x4d\x3a\x24\xa8\x37\x52\xe2\xa7\x35\x54\x33\x67\xc9\x25\xf6\xcd\xa7\x7d\xe0\x5e\xf4\xe7\x55\xf6\xea\x1c\x99\xfa\x6d\x55\xea\xbf\x4a\x07\x5a\x73\xf1\x33\x67\x01\x24\x80\xeb\x9b\x9b\x6e\xbf\x8f\xc0\xbd\x55\x2e\x39\xa4\x40\x81\xd9\x86\xd4\xe3\x7a\xc6\xb6\xd8\xad\xe9\xe2\xdd\x6e\xb0\xba\x86\xce\x77\xa6\x52\x60\x87\x6b\x38\x17\x0e\x9c\x4d\x1e\xc5\x71\x80\x13\xfc\x18\xa5\x45\x81\x52\x6a\x28\x35\xc6\x8e\xf6\x0c\x3c\x30\x5d\xb1\x09\x03\x6a\xe6\xc8\x9c\xcc\x71\xec\x20\x72\x02\x39\x94\x5c\x81\xa9\x2e\x0d\xb8\x79\x6e\xf1\xbc\x4e\x65\xaf\x4d\x04\xa7\x11\x32\x67\x64\xd8\x47\x55\x96\x77\xd2\x08\xa8\x98\x4e\xa5\xdf\xb6\x5f\x54\x92\x12\x92\x90\x1a\x14\xc6\x13\x62\x1d\x97\x39\x42\x82\xda\xdc\xdf\x9c\x48\xc8\x18\x8e\xed\x1a\x05\x17\x55\xb0\x1e\xd5\x08\x6c\x7f\x50\x4b\x01\x28\x49\xda\xe5\x37\xef\xb8\xff\x80\x55\xfc\x69\xcc\x0e\x78\xec\x8f\x49\xc6\x45\x23\x41\x4b\xb4\x40\x93\x41\x14\x8c\x43\xbb\x58\x83\x49\x25\x1d\xa8\xeb\x92\xc8\xf4\x24\xf3\x83\x90\x24\x6b\xf5\x53\x69\x23\x13\x7a\xaa\x40\xf5\x33\x04\x51\x2f\xd3\xe4\xd8\xcf\xd0\x04\x13\xfd\xda\xcf\xd0\x35\x5c\x92\x73\x68\x1d\x4a\x3e\x81\x1d\xa9\x13\x1a\x21\xab\x43\xb9\xd6\x3d\xce\x36\x1f\x25\xd0\xb7\xb4\x3b\x8f\xc5\xab\x5c\x58\x4b\xa8\xac\x92\xe9\xf8\x13\x3e\xcb\x65\x24\x0e\x47\x46\xd6\xbc\xc9\x6e\x62\x85\x2e\xaa\x1e\x3a\x21\x62\x30\x40\x11\xbd\x36\x48\x82\x71\x38\x15\x86\xf8\xf9\xe6\x0e\x9a\x29\x0a\x84\x22\x2a\x6a\xba\x68\xd2\xe5\x0a\x4c\xc6\xd8\xd7\x18\x0a\xc4\x38\xa2\xf6\x0d\x49\x82\x49\xd8\xb4\xd5\xef\x45\x36\x36\x1d\xa4\x8d\x57\x43\x45\x03\xdd\x2c\x31\xe6\x3b\x4a\x56\x53\x73\xa6\x43\xd7\x8d\x75\x9c\xb8\x89\x1f\xd1\x44\x1b\xde\xe8\xe8\x6e\xcf\xdb\xc0\x6d\x6c\x04\xd3\x3f\x1c\x56\x5e\x81\xc1\x24\x24\xc6\x7a\xb6\xd4\x85\x5f\xf0\xeb\x52\x82\x42\x81\x84\x06\xe3\x70\x67\x96\x08\x19\x89\x9c\xeb\x62\x5f\xf4\x13\xca\x46\xc9\x3a\x1b\xad\x93\x35\xc2\x84\x8d\x14\x7e\xe8\x9b\xba\xa8\x0d\x1c\x07\xe9\x5d\x50\x44\x51\x44\x75\x41\xec\xe8\xa9\xa2\xc0\x0a\x46\xbb\x93\x10\x17\xc5\x8d\x3e\xa5\xaa\x57\x83\xc1\x35\x73\x85\xf1\x29\xa3\xe3\xaa\xda\x32\x5a\xa0\xeb\xd4\x16\x42\xfd\xa8\x28\x14\x9c\x2f\x45\x70\xaf\x2e\x6f\x45\xc1\x75\xf8\x4a\x77\x05\xba\x61\x4c\x91\xa2\x05\xba\x51\x7d\x6b\xde\xdf\x52\x18\x5e\x97\x8e\xb4\x03\x44\x52\x7f\x11\xb9\x45\xaf\x35\x8a\x5e\x0b\x89\x19\x07\x45\xf0\x13\x6c\x3f\x0a\xae\x41\xfd\x17\x8c\x50\x99\x50\x69\x53\x0a\x33\x97\x04\xd1\xe0\x06\xe1\x21\x11\x74\x5c\x6d\xa5\x29\x8d\xe8\x58\x41\xf3\x02\xe0\x80\xc1\xe8\xa4\x5e\xa8\xd5\xa4\x8e\xc3\xa9\x7a\x6c\x7c\x94\x89\x35\x94\x2e\x51\x90\x90\x2c\x84\xe4\xe8\x40\x52\x6a\x22\x22\xf0\xa9\xc5\x35\xdd\xb3\x0a\xa5\x2c\x35\x36\xd0\xab\x4e\x06\x63\x72\x8d\x90\xeb\x21\x26\xc1\xf3\xc4\x10\xe7\x91\x66\x42\xc2\x1d\x83\x82\x95\x12\x40\x8c\x14\xa9\x41\x98\x04\xd7\xc0\x20\x01\x2c\xa6\x16\x51\x2c\x79\x8b\x34\xea\x2f\xbc\x83\x24\x89\x39\x73\x35\x90\x83\x01\x07\x92\x69\x53\x83\xa7\xa6\x91\x6b\xa6\x91\xe0\x1a\xb1\x8d\x98\x37\xd7\xab\x37\xda\x0c\x1c\x3b\x7b\xcf\xdc\xe5\xc1\x40\x1b\xb1\x3b\x51\x5c\x41\xc3\x0d\xbe\x52\xec\x05\xd2\xe1\x0e\x36\xd3\x26\x80\x1f\x9e\x8e\x22\x3e\xf2\xb0\x2f\x49\x4b\x53\x1f\x19\xdb\x3d\xed\x98\x6c\xf9\xb7\x9d\x94\xa6\x81\x08\xa2\x30\x2c\x37\xf7\xf0\x65\xd7\xde\x58\x01\x2c\x75\x82\x26\x30\x3a\x3b\x06\xf9\x09\x62\x6e\x27\x46\x98\xd3\x31\xb6\xb5\xb4\x44\x32\x75\x9d\x08\xc9\x85\x24\x39\x9d\x23\xb0\x27\x30\x9a\xfa\x7c\x30\xc8\x2d\x97\xaa\xb8\xb8\x9c\xd6\xb7\x3a\x79\x5f\x8e\x31\xe9\xe7\x45\x91\xa8\x2b\xd7\x1e\xaa\xc9\x12\xe7\x58\xd5\x94\x25\x2b\xde\x39\x9b\x1d\x0a\x65\x35\x97\xe7\xd5\xd7\x95\xa1\xff\xb2\xdd\x4f\x9c\xee\x33\xa7\xfb\x99\xd1\xd9\x2c\xd2\x64\x85\x20\x8f\x77\x17\xb4\x10\x24\xc3\xec\x94\xb0\x4b\xdb\x3d\x2e\xd3\x1d\x9c\xe1\xa9\x8b\xed\x99\xd9\xc5\x17\xb8\x33\x3b\xcc\x2f\x81\xe3\xae\x65\x89\xac\x53\xe1\x97\x28\xc3\x25\xca\x75\xd2\x92\x94\xd8\xae\xfb\x82\xd8\x8e\xfb\x91\x39\x4a\xcb\x7c\x46\x4c\xa7\xfd\xac\xd4\x2c\x6e\x4c\x73\xd3\x2f\x56\x07\x5a\xef\xcd\x50\x8c\xa7\xb1\xee\x41\xe7\x58\x94\x18\xfb\x71\x09\x02\x4f\x3b\x86\xeb\xe7\x02\x8c\x15\x60\x56\x9f\x52\x80\x59\x6f\x15\x60\xc8\xd1\x96\xa4\x71\xad\xe4\x34\x19\x0d\x2a\x32\xc2\x5d\x8f\xb9\xf9\xdc\x26\x6e\xdd\x16\xf0\xd1\xe1\xad\xea\xea\xf4\x58\xf2\xc6\x09\x73\x75\x50\x62\xcd\x27\x4c\x42\x58\x30\x71\xe2\x1b\x0e\xe8\x9d\xed\xd6\x4a\x7b\x35\x2e\xad\x36\x9d\xc1\xb1\xee\x4c\xd5\xcb\x40\x36\xce\x5a\x00\x2b\x5a\x9f\x3b\xe7\x7c\x4d\x78\x6c\xc2\xea\x5f\x66\x92\x54\xbb\xee\xe4\xec\xb4\x1a\xed\x0c\xb3\x51\x8d\x94\x66\xe7\xcd\x06\xbc\x02\xf9\x02\x2b\xe0\x4a\xe4\x9c\x51\x9d\xb4\x44\x53\x3e\xda\x87\xd3\x06\x3e\x7f\x90\xe8\xb3\xec\x0c\x2c\x97\x36\x9e\xd2\xd3\xd2\x8a\xaf\x1d\x6f\x15\xb0\x76\x63\x01\x01\xaa\xbb\x0c\x9c\x78\x1f\x61\x92\xc2\x1a\x3f\x68\xa4\x15\xa8\x3c\x91\xb6\xaf\xf1\xd6\x0a\x27\xa9\x92\xac\xd5\xa8\x81\x0b\x17\xf0\xdc\xd5\x61\xb2\x59\xe1\x60\x7d\x38\x18\xd8\x98\x1c\x8e\x9c\x68\xb2\x66\x18\x3e\x06\x04\x8a\x4d\xfc\xe3\x83\x81\x78\xa9\xf2\xa4\x00\xe7\x04\x13\x85\xc5\xf2\xb3\x8a\x8e\x82\xf7\x97\xe1\x79\x78\x59\x96\x3b\x5d\x9c\xbf\x9c\x7a\x5a\xaa\x57\x8c\xbf\x48\xa4\xe3\x7e\xe2\x7b\x1b\x5e\x12\xba\x88\x35\xf3\xf2\x70\x23\xdf\x41\xa5\x3b\xdf\xb7\x07\x1e\x0c\xb4\x63\xcd\x88\x35\x15\xfa\x13\x10\x21\x36\xcc\xce\xcd\xf9\xa2\x36\x37\x07\x8d\x57\x2f\x52\xec\x53\x8d\x81\x69\x88\x2f\xa5\x88\x90\x24\xc2\x10\x13\x35\x0a\xa9\x0c\xa2\xd0\xa1\x29\xd8\x66\x26\x52\xcc\x9f\x63\xd9\xb1\xd3\xb4\x69\x30\xf9\x5a\xfb\x89\x9b\xc1\x61\xa7\xed\x9e\x52\x9f\x93\x68\xba\x6b\x4e\xbb\xf6\xd1\x69\x49\xdc\x33\x5e\xe8\x47\x33\x95\xe5\x60\x90\x20\x71\x69\xcd\x8a\xa8\xd4\x2a\x83\x81\x68\x40\x30\x85\x13\x2b\x43\xf7\x7d\xb8\x39\x46\x02\xd7\x56\x11\x2d\x73\x8c\x6a\x12\xb4\x9e\x07\x4e\x97\x03\x19\x76\x74\x4a\xb3\x26\x09\xbc\xc6\x76\xc3\xbb\xa7\x6f\x9b\xb8\x6d\x77\x83\xfe\xa4\x69\x63\xf1\xcb\xd3\x99\x6a\x58\xbb\xa3\x2c\x99\xd7\x5d\x7e\xa6\x11\xcf\x10\x27\x07\x48\xda\xd0\x40\xe5\x01\xad\x82\xe6\xd4\x39\x25\x9d\x11\xbe\xcb\xb3\x59\x1a\xad\x65\x92\x66\xd3\x8b\x0a\x74\x70\x39\x75\xa0\xb1\x56\x90\xa4\x4d\xe2\x98\xe2\x53\x98\xa0\x0b\x5a\x01\x5b\x92\x12\x63\x22\xf5\xb9\xfe\x9b\x9f\xb3\x1e\x5b\x58\x8f\x27\x9f\x92\xf5\x78\xf3\x12\xba\xd3\xdb\x2e\x43\x38\x75\x98\x10\x50\xd5\x11\x63\xb0\xc7\x48\xb6\x53\x8d\x58\x04\xda\x91\x20\xc4\xd5\x70\xea\x14\x04\x9f\xef\x2d\x97\xdc\x5b\x90\xc0\x24\xa6\x79\x65\x0b\x13\x6b\x54\xab\x1f\xe9\xf1\x9b\xd1\xd8\xe8\x1d\x17\x54\x06\xb3\x70\xa7\x63\x38\x17\x95\x4c\x37\x4d\x83\x59\x48\x17\x7e\x82\x16\x78\xca\xd1\x82\xa4\xa4\x19\x3e\x8f\x3c\x41\x11\x09\x66\x21\xc6\x7e\x97\x35\xe4\xc2\x44\xa7\x72\x02\xff\x0d\x06\x8b\x11\x3f\xe2\xe9\xc9\xf9\x82\x1f\x6d\x08\x7e\x0a\xe9\x03\xdb\x54\xad\x10\x0f\xe9\x02\x97\xf5\xe2\x61\x5b\x16\x4f\x0c\xfe\x65\x66\xf1\x64\x34\xaf\x17\x4f\xa6\xd1\x20\x6f\x2c\x1e\x66\x16\x0f\x6b\x2d\x9e\xb4\x44\x9c\x9c\x96\xa4\x49\xb3\xb0\x7f\xaa\xa5\x9d\x47\xd4\xdb\xdf\xaf\xce\x7d\xf7\xf7\x9d\xa3\xf2\xc7\xed\x20\x91\xfb\xfb\xd5\xe9\xe8\xfe\x3e\xa5\xf4\x91\x6b\x99\xe5\x10\xac\xcf\x89\x58\x27\x11\x43\xae\xfa\x04\x02\xa5\x05\xe3\x10\xfa\xa4\x43\xa4\xeb\xc8\xfa\xfd\xa8\x28\xfa\x28\xd2\x9b\x76\x6d\x60\xa8\xde\x24\xcd\xd5\xdd\xef\x83\xb5\xb2\x3e\xa4\x83\xcb\xe6\x71\x20\x6b\x1d\x07\x32\x3c\x18\xdc\x07\x56\x89\x24\x35\x36\xea\x53\xbe\x87\x1d\x2c\xde\xc3\xbf\x07\x2c\xde\x7b\x9f\xe3\xe5\xa5\xf0\x52\xc7\xe8\x9f\x60\x32\xc1\x0a\x29\x05\x6d\xb3\x38\x5b\xf5\x3b\x3d\xde\xa7\x34\x2d\x71\x67\x84\x47\xc7\xc1\x4f\xb1\x43\x3c\x48\x75\x74\xc7\x0e\x63\xa9\x6a\x5a\x1f\x2a\x9e\x5a\x38\x4a\xcc\xaf\x39\x94\xb6\x8e\xc7\x68\xce\xbb\xdd\xf0\x7f\xe6\x51\x85\x4e\xf0\xa0\xae\xe7\x4e\x7d\xea\x56\xcd\x8a\xf6\x1e\x3e\xcd\xd8\x82\xef\x71\x69\x74\xc8\x46\xdc\x64\x9d\x21\x31\x9c\x35\x5c\x22\x59\x8d\xcc\xd7\x30\xc9\xb4\x86\x55\xc7\x8e\xdd\xe3\x92\x56\x57\x9b\xb9\x15\x6c\x6d\x8a\x1f\x4e\x4b\x08\x00\xc7\x9a\xab\xbb\x57\x7d\x6d\xbe\x21\xb5\xe3\x5a\x4e\xc7\x37\xf3\x5b\xf6\x83\x9b\xb9\xcd\x9e\x1f\x53\x16\xe4\x21\x99\x51\xc5\xcb\xc7\x9a\x79\x9f\x01\xe7\x3f\x53\xe8\x1c\x37\x99\xff\x53\xc3\xf4\xc7\xa1\x35\x39\x35\x41\x70\xdf\x73\x1e\x12\x86\xc9\x9c\xa6\x4d\x49\xc4\xb8\xfa\xf9\xe9\x8e\x2a\x08\xa2\x75\x84\xee\xa0\x05\x61\x96\x94\x11\xd6\xcc\x0d\x09\x07\xc1\x73\x22\xb0\x3d\x32\x70\x7b\x17\x03\xf7\xae\xb3\xb8\x6c\x3c\x07\x05\xae\x33\x3c\xbb\x13\x7c\xda\x2c\x94\xda\x3a\x39\x55\xe0\x58\xc4\xce\x80\xb0\xbd\xee\x62\x72\x4d\x17\xee\x7e\x2a\xa1\x45\x93\x8e\x5a\x1e\xd8\x12\xb8\xc0\xbc\x7d\xbd\x5b\x46\xa8\xa5\x9b\x3b\x08\xc2\x37\x83\x93\x05\x36\x61\x86\x2a\x48\x1f\x6c\x44\x4c\xef\xb4\xa8\x74\xf9\x4f\xf6\x39\xff\x79\x69\xfe\x13\x3c\xad\x58\xc5\x7f\xea\xe0\x40\x37\xeb\x47\x36\xa9\x98\xb1\x79\xd9\x49\x82\x5c\xa1\x52\x48\x95\xf0\x06\x97\x2e\x2f\x27\xb6\xd0\xea\x6c\x30\x30\x55\x83\xc0\xc0\x36\x0e\x4b\x59\x83\x56\x57\xe6\xae\x2d\x5a\x9d\x00\x4a\xbf\xd1\xb1\x57\xbf\xf1\x77\x76\xaf\x26\xaf\xd0\xd3\x43\x2e\xfd\x8e\xcd\x19\xb6\x5b\x54\x1b\x62\x52\x01\xee\x71\xdc\x9e\x7a\xb4\x40\x00\x03\x8f\xce\x37\x4e\xa0\x75\x7d\x28\xc7\x81\x80\xbc\xaa\x08\x48\x75\x84\x22\x31\xc6\xfa\xf8\xbc\x53\xf1\x63\x68\x9e\xd6\x94\xa4\xd8\x9a\xb4\xaa\xef\xa3\x78\x9e\x72\xa1\x08\x83\x6b\x1b\xcc\x8c\x51\xa7\xe4\xc2\x74\x28\x6b\xb6\x6b\x8e\x6b\x24\xde\x69\x55\x03\x04\xf5\x2d\x94\x92\x8c\x54\x1f\xe0\x12\x78\xfc\xea\x6c\x7b\x9d\x26\x4f\x4e\xca\xaa\xbd\xbe\x63\x8b\x6c\x7c\xa5\x1b\x4d\xe7\xb4\x7a\x60\x3c\xa9\x0d\x1c\x39\x91\x4e\xe2\x52\xf7\x69\xb9\x5d\xb8\x09\x64\xa8\xa6\x61\x63\x90\xa7\xea\x8d\xdd\x44\x4b\x92\x1c\x0b\x08\x4c\xd3\x41\x13\xbf\xc6\x17\xb1\x42\x27\x53\xa4\x9e\x06\x5c\x92\x6d\xda\x12\xbf\x53\x35\x64\x6b\xda\xae\x63\x71\x66\x18\xbc\xce\xce\xaf\x07\xe2\xa1\x36\x3e\xc9\x5a\xd8\xd9\x08\x5b\x00\x29\x0a\xb2\xb7\x23\xb9\x84\xdc\xca\x53\x5b\x4d\x56\xed\xdb\x7e\xe3\x51\x5d\x33\xd1\xdb\x66\x8a\x71\xe9\x30\xac\x4f\x9b\xbe\x09\x81\x0c\x61\xcd\xbf\xb5\xe5\x7c\xc4\xee\x0d\x95\x52\x1d\x88\xe9\x69\xe9\xb8\x06\x6b\x13\xb0\xc6\xa3\x14\x38\xc6\xa7\x36\x00\xb0\x9e\x74\xeb\x2b\x61\x00\xb4\xd6\x7d\x06\x6b\xac\x57\x05\xe0\x1d\x20\xe8\x43\x75\xa5\x97\xf3\x2b\x36\xeb\xbf\xc1\xe1\xae\x1d\xaa\xeb\xd8\xe6\xbc\x38\xb3\x16\x15\x5d\x98\x20\x32\x04\x3f\x37\xf8\x72\xb5\xa5\x36\xbf\x83\x89\x74\xbf\xcc\xc5\x71\xea\x7a\xc2\x37\x52\x9a\x9a\xcf\x8c\x56\x14\xe3\x53\xae\x9d\xa4\xea\xe3\x24\x77\x31\x25\x4e\xce\x59\x5d\x90\xbc\x81\xde\x50\x5c\xac\xc4\x0a\xe2\xfa\x94\xab\x79\x20\xf2\x72\xf3\xa4\x28\x08\x15\x79\xbe\x99\x6e\x32\x21\x8a\x34\xcb\x20\xdd\x9d\x84\x0d\x92\xbc\xe3\x9c\x54\x9d\xc3\x79\xb7\x93\x1f\xb4\x39\xf9\x6a\xd0\xc0\x34\x80\x3b\x61\x8a\x8b\xa2\x9f\x6e\x2e\x72\xc5\xea\x9f\xc7\xee\xc8\x80\x87\x34\x0d\x78\xa8\x15\x9b\x5a\x35\x5b\x75\xfa\xb5\xf6\x29\xd0\x36\x84\xad\x6d\x16\x4f\xcb\xb6\xcd\x22\xc4\x54\xae\x8d\x18\x84\xd6\xb4\x08\x25\x60\x88\xd0\xb1\x15\x54\x9f\x7c\xfd\x73\xb1\x6f\x8b\x4e\xf5\xfd\x4f\xa9\x53\xfd\xfa\x25\x74\xaa\x6f\x1b\xa3\xe1\xf4\xa4\x42\x0f\x98\xc2\xba\x9f\xd5\x81\x42\x8d\x23\x57\x5a\x54\xb6\x03\xc9\x5a\xe2\xa9\x81\x68\x7b\xc1\xe6\xee\xa0\x27\x78\xcb\x21\x80\x79\xd9\x29\xf5\xba\x5e\x63\xd6\x13\xea\xf5\xec\x5e\x15\xd5\x52\x2f\x0f\x3f\x08\x4b\x38\x04\x05\xf9\x70\x63\xa9\x68\x23\xbd\x4e\xb2\xa5\x87\x4b\x61\x8a\x01\xad\xd3\xf8\x16\x8a\xd4\xfc\xd8\x06\x14\x75\x31\x5c\x42\x06\x4a\xcd\xd6\x58\xa1\xc9\xb2\x2e\x2d\x0d\x37\xa4\x26\xed\x18\xde\xce\x3e\x64\x55\xb2\xdd\x20\x0b\x77\xc0\xc0\xa6\x45\x28\xea\x63\xac\xbc\x29\x3c\x26\xc1\xfb\x88\x91\x20\x6b\xaa\x44\x4d\xcc\x33\xbf\xa1\xb1\xca\xf1\x60\xc0\x51\x0e\xc0\xd9\x8f\x40\x3e\x4a\x4a\x00\xf9\xb4\x24\x81\x96\x72\x5d\x80\x59\x6d\x6f\x57\xc7\x67\x63\x96\x05\x63\x41\x12\xee\xa4\x8e\x00\x99\x90\x0c\x97\x5a\xfa\x84\xc3\xc0\xb7\x61\xc8\x8a\xa2\xdf\x81\x4d\x5d\x16\xc6\x9b\x56\xf7\xa5\xb6\xbc\xdf\x14\xc2\x2e\xcc\xe1\xd1\x4e\x15\xa2\x6d\xf3\x75\x9e\x0e\x27\x08\xdf\x5d\x26\xb9\x7e\x08\xa6\xc6\x48\x06\x49\x88\x8b\x42\xfd\x34\x25\x7c\x3b\x47\x49\xb5\x59\xe4\x1b\xf3\xd1\x1c\x8b\xdc\xda\xfa\x36\x1f\x1f\xa3\x1c\xe3\xb2\xf9\xec\x55\x83\x52\xaf\xea\x7b\x70\x80\xb6\x9b\x36\xdc\x62\x9d\x76\xcc\x51\xc1\xbc\xba\xc1\xb0\x68\x56\xe4\xd4\x7c\x68\x8d\xf8\xda\xfa\x98\xba\x6a\x5a\x5d\x35\x95\x2a\x4d\x96\x89\x54\x90\xd2\xf4\xb2\x4a\x18\xe3\x59\xdb\xd4\xfc\xd7\xa1\x81\x05\xa5\xb4\xed\x20\x31\x15\x53\xe9\x5b\x6a\xe5\x4b\xd8\x6f\xde\xa1\x9f\x1b\x79\x5f\x68\xe4\x4d\xbe\xb2\x2d\x6f\xc3\xe7\x86\xdb\x9f\x1b\x6e\x7f\x6e\xb8\xfd\xb9\xe1\x36\x18\x6e\x93\xaf\x7e\xce\xbc\x6f\x61\xde\xbf\xfc\x29\x99\xf7\xaf\x6e\xb7\xc5\xfc\x86\xab\x32\x27\xdf\xa4\xde\xbe\x11\x76\x3d\xc2\xb9\xba\xd3\xd2\xb1\x47\xa4\xba\x03\xc8\x32\x8f\xa4\x1d\x59\x5f\xfb\xe3\x92\x08\x4e\x4f\xb3\xc7\x91\xf5\x13\xd5\x6b\xb8\xa2\x8f\x11\x6f\x58\xe1\x82\xfb\x38\x3f\x4f\xd7\xd1\x38\xbd\xd1\x92\x62\xca\x37\x54\x1b\x0d\x79\xd2\x9c\xf1\xd8\x30\xf3\xd6\x4a\xe0\x15\x61\x75\x1a\xb5\x03\xe3\x7d\xb6\xb6\x6a\x90\xe6\x61\xf7\x23\xf3\xb0\xc3\x36\xd1\x44\x98\x30\xbe\xb8\x34\xd1\xf7\x2b\x76\x72\xc0\xdf\x02\x25\x03\x28\x4a\x68\x64\xf4\x29\xc6\x4d\x94\xde\xd1\xb7\xc6\x89\x98\xea\x1c\xba\xc1\x37\x43\xab\x77\xd9\x5f\xa7\xfc\x28\x4a\xf2\xec\x8e\x51\xc0\xe8\xe7\x01\xe7\xa1\x6d\x34\x90\xf5\xf5\x68\xff\xc8\x3a\xe2\xda\x6e\xed\xeb\x18\x77\x19\xdd\x43\x02\x42\xfa\xe8\xa7\x69\x2e\x44\x24\x0e\xbf\x5e\x75\x5a\x75\xa2\x4b\x3b\xb3\x91\x86\xc6\x94\x31\x4a\x1f\x8e\x5d\xb3\x5b\xd4\x56\xb0\x24\xcd\xf4\xce\x5d\x9f\xb7\x0c\x6c\xdb\x35\x6c\xd8\xb3\x7e\x4a\x75\x89\xe6\xef\xaa\xe6\x77\xc4\x60\x20\x6c\x23\x86\x59\x11\xe4\xcb\x60\x4f\xd6\x54\x32\x19\xce\xf3\x1c\x76\xb3\x5d\x7c\xaf\x55\xbc\xe3\xc8\xaf\x3b\x75\x82\x53\x11\xf1\xf6\x0f\x58\xca\xef\xd8\xd5\xd6\xd4\x92\xbb\xfa\x2a\x85\x13\x76\xfd\x7e\x03\xf1\xcb\x9e\xc4\x5a\x26\x6f\xcb\x79\x6c\xd9\xca\xd6\x30\x4b\xc4\x22\x3a\xcc\xcd\xfd\xb8\xdc\x96\x9c\xad\xd1\x85\xd9\x36\xe8\x0d\x30\x3a\x57\xaa\xea\xc0\x67\xd3\x9e\xa5\x46\x5b\x9a\x6b\x8a\xbc\x1b\x62\x88\xd5\x39\x09\xd7\x4f\x56\x1f\x86\x60\x19\x44\xe0\x27\x0b\xc7\x1a\x97\xb5\xe6\x54\x85\x1d\x83\x4e\x75\xeb\x70\xd4\x6c\x2a\x1a\x9e\xb3\x29\x51\x75\x37\x3d\x67\xcd\x1a\xf5\xd5\xa7\x0e\xa1\xb2\x29\x8c\xcc\xd3\x96\x53\x6d\xa4\x30\xdb\x71\xaa\x15\x24\x47\x5c\x03\x63\x5b\x71\x9d\x6a\x85\xf6\x90\x52\xe4\xe4\xb3\x9c\xf5\xcb\xa2\xec\xbd\x1a\x07\xa6\x4a\x6e\xf1\x4f\xcb\xcf\x0e\x17\xb6\xa2\x82\xed\xf1\x67\xd2\xd4\x9c\x49\x76\x7e\x4b\xdf\xfc\x6c\x1a\x32\xc9\xd0\xb7\xb6\xa5\x70\x39\xae\x67\xb3\x4a\x98\xf6\x99\x34\xfd\x30\x8d\x32\x19\x89\xad\x13\xdb\xd0\x1a\xd9\x29\x25\x46\x61\x6e\x77\xa3\x51\xb5\xad\x7e\x85\x9f\x54\x6e\x19\x6d\xa9\x7b\x30\x90\xee\xe9\xf0\x79\x0e\x46\x10\xd2\x6a\x16\xe7\x73\x0e\x89\xec\x30\xb6\xb1\x80\xad\x4b\x51\xff\xde\x67\x4c\x64\xa2\xcc\x04\xe3\xdb\x36\x0d\x7d\x37\x71\xfd\x67\xd4\xe4\xdd\x28\x95\x27\x17\x35\x68\x67\xe8\xe2\x36\x5b\xa7\x28\x6f\x89\xc7\x22\xa9\xa9\x57\x27\xdb\xdd\x98\x46\x88\x60\xd6\x9c\x4a\x10\x9f\x9a\x13\xa9\x38\x5b\x51\x6b\xe3\x8a\x42\x8c\x16\x91\x98\x6f\xd1\xa8\xae\x80\x7d\xd6\xea\x04\x13\x56\x2e\x1d\xb9\xbc\xa3\xc9\x39\x17\x7c\x33\xb4\x39\xcf\xac\xc2\x29\x21\x26\x36\x28\x76\xcf\x90\xf6\x33\x2e\xab\xf1\x04\x22\xcb\x2d\xe1\xac\xbd\xc9\x98\xe5\x15\xf5\x27\x4b\x26\xe6\x31\xaf\xb9\x23\xd4\x1f\x93\xe6\xa7\x25\xde\xf9\x64\xb5\x37\xf8\x33\xfe\x15\xae\x3d\x61\x5a\xde\x44\x56\x15\xb8\xc9\x45\xd7\x31\x69\x7c\x6f\xb8\x87\xec\x08\x9c\x96\xd8\x0d\x52\xd6\xa8\x6c\x9d\xf2\x35\x4b\xbb\x52\x77\x72\x7d\x30\xe6\xb2\x16\x3a\x9a\xa1\xcb\xc4\x56\xb9\x41\x9d\x07\x16\x0b\xbe\x81\x64\x67\x4a\x64\x97\xc3\x49\xad\x4d\x10\xc4\xbe\x22\x5c\x1f\x02\xed\x54\xfc\x6b\x5a\xba\x0a\x93\x06\xe4\x5a\xad\xc1\x37\x0e\xe6\x1c\x18\x61\x6e\x4c\x6e\x4e\xb3\x2e\x5c\x4f\x2f\x35\x36\x69\xbd\xc9\x70\xfa\x00\xc9\xc6\xc9\x66\x83\xf1\xc6\x15\xdf\xfd\x2a\xb0\x04\x2e\x64\x96\x39\x44\x9e\x81\xca\xc3\x1b\x3c\xf8\x36\x3e\xbd\xcd\x13\x1e\xf1\xae\x93\xce\x77\x2e\x19\xed\x40\x6b\xc6\x2c\xb1\xfc\x4a\xdb\xa1\x99\x55\x0e\xcd\xac\xe5\xd0\xec\x0e\x89\x75\xe7\x4c\x79\x96\xc4\x47\x1a\x11\xcc\x3c\x9b\xfe\x21\xdc\xa5\x03\x93\x00\xfe\x14\x92\x29\xb3\x23\x25\xb0\xf9\x5d\xa5\x1a\x87\xb6\xc4\x53\x45\x15\xcf\x83\x4c\x22\xdc\xb6\x40\xa4\xd0\x08\xaa\xd3\x76\xd2\x54\x60\x62\xd5\x15\x93\x96\x5f\x35\x73\xdd\xb1\x27\xe4\x3a\x21\xcf\x6b\x77\xec\xb6\x73\x74\x2f\xa2\xcc\x7a\x60\x43\xa3\x69\xa2\x23\x8d\x69\x8f\xec\xa8\xf2\x98\x36\x4a\x89\x56\xe9\xf6\x54\x9a\x7c\x61\x16\x39\x3a\xcb\x90\x4a\x75\xed\x0e\x40\xa5\xc0\xae\x1e\xee\x71\x09\x07\x17\x4d\x5d\x97\xe3\xb3\xdd\xc0\x17\x08\x80\xb4\xc5\x93\x31\xf8\x26\xe8\x34\x1e\x23\x8e\x09\x57\x33\xdb\xa2\xfd\x83\x01\x77\xee\x5c\x7a\xb8\x53\xd3\x71\x85\xc2\x44\x50\x0e\xbf\x3a\x59\xae\x62\x18\x48\x42\x39\xfc\x32\x58\xc0\x19\xaf\xba\x5d\x49\x97\x98\x64\xf4\x65\xf4\x0d\x24\x30\x89\x30\xc9\xe1\x1a\x94\xfd\x24\xa6\x77\x51\x46\x12\x4c\x66\xf4\x2e\xca\x9d\xc0\xd5\x0c\x04\xd5\x98\x30\x58\x38\x33\xc2\x46\xfb\x42\x09\xd0\x27\x5f\x8f\x52\x99\xb3\xd8\x71\xe8\xc1\x84\xb5\x9c\x2c\xcd\x0c\x6e\x39\xa9\xdf\xb7\xef\xc1\x8a\x04\xbb\x5e\x9e\xdb\x25\xe5\x6d\x8d\xdb\x34\xbb\xd5\xb2\x67\x0b\xc9\xd3\xaf\x99\x16\x3c\xdc\xb1\xb0\x6d\xf3\x86\x21\xd8\x32\x65\x04\xc8\xa6\x65\xca\x2a\x55\x8b\x49\xf5\xbb\x15\x9e\x00\xd8\x27\x0b\xbe\x2e\xab\x03\x06\xaa\x3d\x44\x72\xc2\x31\x49\x9d\x78\x9e\x2f\xed\x4e\x2c\xca\xf2\x8e\x0f\xb8\xfa\x00\x63\xff\x82\x56\x71\x63\xc4\xd2\xee\xb3\x7e\xa9\x5b\xd8\xa8\x1e\xd8\xaf\xed\xc3\xd4\xc1\x5f\x34\xd9\xe4\xad\x70\x5f\x34\x0e\x9b\x6d\xda\xfd\xf6\xb3\xf1\x87\xfd\x84\x04\xbb\xe1\x73\xbc\x41\xaf\x6b\x76\xbd\x4f\x0d\x66\x34\x95\x50\x75\xfc\x07\x5e\xa5\x85\xe6\x15\x4b\xfb\xd2\x78\xca\xfd\x6f\xa0\xdb\x5d\x1f\x62\x48\x2f\xb8\xe1\xf3\xaf\x71\x31\x0d\x60\xd5\x37\x8e\x75\xde\x9a\x4a\x63\x0c\x83\xb0\x2f\xeb\x58\xf3\x2d\x7e\x05\xd2\x16\x2b\x22\xea\x06\x05\x90\x38\xc4\xbe\xf3\xcc\xee\x2c\xa0\x40\x08\xbb\x08\x1b\x9b\xcf\xe1\x50\xe3\x9c\x94\xe9\x3b\x8d\xc3\xf1\xfa\xf0\xac\x66\x46\x78\x67\xb0\x32\xc5\xa3\xb4\x0f\xcc\xab\x53\xe8\xa2\xb0\xa9\x79\x3b\x8b\x98\x01\xf4\xb0\x49\x5b\xc5\x50\x5d\xbc\x7e\xad\x93\x78\x19\xce\x54\xa3\x6b\xb8\x63\x3f\x88\x14\x4b\x67\x82\x8d\x1a\x54\xdd\x69\x89\x9a\xd4\x55\x00\x2a\x96\x95\xa4\xe4\xb4\x7b\xa7\x20\xb2\xc5\xd0\xe5\xd9\x12\x06\x2e\xfb\x8c\xd5\x61\x15\xe5\x37\x19\xd3\x0d\x5b\x84\x04\x81\x44\x43\xd0\x35\x88\xe0\x0b\xa1\x52\x75\x26\x2d\xab\x83\xc8\xaa\x41\x68\xcd\x46\x82\x07\x83\x97\x75\xd8\x07\xb8\x46\xee\x67\x34\x48\x8c\x9a\x25\x6f\x54\xb7\x93\xd0\x2f\x83\xe1\xa1\x89\xe3\xa0\xdb\x56\x1b\xca\xf9\xe3\x28\x08\x58\x8a\x6f\x19\x47\x73\xda\x90\xb9\xba\x94\xa4\xc5\x7a\x67\x82\xad\xb3\x65\x22\xbb\xf7\x18\xd8\x22\x65\x7b\x52\x4f\x6d\x08\x8a\x5f\x4e\xe1\x76\xaa\x44\x30\x98\x4f\xff\x1c\x86\xda\x71\x23\x76\x79\x6b\xd3\x27\x73\xec\xe0\xf6\x4c\x38\xe3\x59\x5a\xbe\x7b\x23\x6c\x41\x26\x93\x6e\xd9\xa0\xe2\x90\x53\xca\xf5\x91\x83\x92\xf3\x7e\x79\x8e\x9f\x24\xf4\x1b\x28\xed\xfc\xb8\x72\x92\x4e\x5d\x2f\x60\x6b\xfc\xca\xec\x99\x0a\x71\x7b\x54\x4b\x12\xed\x2d\x43\xd4\xdb\x43\x72\xc1\x26\xdf\xb5\x55\xcc\x58\xd6\x8a\x5c\xdc\x34\x4f\xb3\x7a\x41\x59\x8b\x15\x1d\x39\x15\x07\x03\x57\xef\xd0\xc1\x78\xbd\x86\x24\xf9\x86\xe3\x33\xd2\x2d\x05\x57\xca\x0c\xd9\x08\xcb\x52\x0b\x4f\x1d\x1d\x30\x42\x11\x93\x0d\x01\xb2\x99\x7a\xbf\x43\xf1\xaf\xf9\x12\x87\x21\x49\x5d\x55\x8a\x9f\x56\xfb\x4d\xb3\x35\x77\x6b\xd8\xaa\x29\x30\xd4\x5c\x31\xa8\x1d\xa4\xc5\x66\x8f\xaf\xaa\x02\x2d\x79\x54\x8b\xa2\x15\x0f\xa6\x73\xca\xd4\x40\x7b\xea\xeb\x19\xaa\x72\x60\xd4\x92\xfe\xeb\xce\x20\x20\x4e\xfa\x63\x4c\x92\x76\xc8\x17\xe1\x04\xfd\xef\xfa\x66\xa2\x38\xaa\x4d\x1d\x80\xd8\x50\x01\x94\xd6\xe2\xa1\x6b\x12\xd3\x16\x0b\xd9\x82\x5e\xda\x40\x9f\x46\x89\xb1\xd9\x5e\xb2\xa9\x72\xe8\x94\x4b\xbb\x6a\x6f\x31\xd0\x1b\x95\x77\xcf\x58\x15\x6b\xe8\xc8\x04\x1a\xea\x03\x32\xb7\x3d\x61\x15\x96\x4f\x1c\x2c\x1f\x0c\x74\xb9\x60\xbc\x65\xb7\x6b\x32\x6a\x29\x26\xd1\x54\x68\x1a\x6d\x59\x01\x94\x5a\x22\x2d\x5c\x52\xc6\x4b\xbc\x05\xeb\x36\x4e\x56\xea\x9d\xcc\x91\x53\xac\x54\xa3\xa5\xa5\x0e\x81\x55\xd8\x04\x2c\xc2\x2a\x6f\xaa\x58\x43\x8e\xfe\x26\xad\x62\x0d\x39\x2a\x84\x2a\xea\x50\x54\x4d\xcc\x66\x98\xa3\x64\x30\xe8\xd7\x9b\x60\x51\x24\x65\x7d\x28\xda\xe8\x97\xa3\x46\xea\x24\xca\x6a\x66\xd2\xca\x26\x47\x50\xde\x08\x01\xe5\x10\x24\x01\x5e\x00\xa7\x0e\x66\xd5\xbc\x46\x6d\x6e\xbe\x6d\xab\xac\xd5\x33\x4c\xbb\x62\xdd\x57\x9f\xe1\x0b\x24\x8a\x8d\xd3\xb2\xf6\xaa\x3a\x47\x95\xd8\x41\x90\x04\xf0\xa8\x45\x31\xde\x91\x45\x31\xe9\x53\x2a\xa6\x8d\x8e\xa4\x84\x13\x39\x15\xc3\x89\x2f\x76\x27\xd8\x37\xe1\xd3\xc1\xda\xb8\x09\xc5\x16\xf2\xdf\xe9\xd2\x57\x14\xa8\x5b\x9c\x84\x08\xf0\x8d\x6a\xdd\xf7\x9f\x84\x5d\xe8\x7d\x19\xd9\x54\x96\x5f\x46\x8a\x65\x80\x8d\x00\x6f\x0c\x5e\x35\xb6\xed\x61\x6b\x1e\x79\x7b\x1e\x6e\x08\xf3\xc0\xd5\x3b\x9e\x89\x0a\x1b\xd4\x32\x15\xd5\x32\xed\x30\xe4\xc6\xd5\xe8\xc9\xb0\xca\xab\x9b\x06\x22\x18\x87\x61\xed\x0a\x44\xbf\xaa\x44\xfd\x84\x46\xc1\x38\x84\x74\x7e\xd6\x59\x99\x64\x34\x25\x39\x4d\x83\x24\x24\x31\x4d\x6e\x36\x15\x86\x39\x1e\x0c\xe2\x9b\xd6\x7b\x3f\xbf\x59\xfb\xa9\xcc\x34\x22\x17\xc5\xcc\xdd\xda\x07\x03\x03\x4d\x16\xc4\x21\xc9\x68\x4e\x50\x4c\xd9\x28\x5b\x46\x0b\xa9\x55\x44\x39\xcd\x83\x38\x74\x53\xaa\x9e\xe7\x4a\xa0\x17\xcf\x57\x11\x6f\xf8\x5c\xa7\x54\x6a\xf7\x56\x59\x77\xa3\x5e\x43\x46\xa9\x6c\x48\xc6\xa5\x0e\xf8\x12\x62\x5d\x81\xb2\xe6\x26\x67\x15\xd2\xfd\xe6\xb0\x64\x95\x23\x52\x9f\xd2\x2a\xcb\x4a\x56\x7e\x92\xf6\x06\x83\x7b\x6a\xfb\x33\xc6\x9d\x49\x90\xaa\xf1\x3f\x46\x79\x87\x1e\x37\xae\xe2\x27\x6c\xd1\xc1\xb9\x20\xc7\x44\x38\x6e\xe1\xb8\xe1\xcc\x34\x73\xa3\xeb\xba\xfe\x88\xc9\xd6\x50\x39\x26\x65\x0e\x6b\x20\x26\x38\xc9\x36\x63\x65\x1c\x22\xf6\xc9\x62\x40\xc0\xb0\x66\x0d\xd7\x78\x16\xd4\xee\xa1\x61\x1f\xc0\x4d\x51\x46\x66\xb8\x3b\xda\x4d\x46\xf5\xdb\x4b\x78\xee\x35\xa2\x30\x24\x6e\x14\x86\xa4\x2b\x0a\xc3\x16\xcf\xbd\xfe\xa4\x04\x79\xcf\xd5\x11\x36\x4d\x84\xdb\x3e\x9e\x8d\x41\x63\xad\x41\xcb\xe8\x21\x4a\x30\xc9\x69\x56\x0d\x5a\xae\x07\xad\x7e\x64\x3d\x82\x73\x67\xd0\x58\x51\xf4\x2f\x85\x66\x8c\xc4\x4e\xec\x01\x46\x53\x78\x72\x89\xe1\xca\x07\x03\x03\x0a\x98\x1f\x66\x1b\xc6\x85\xd9\xa5\x86\x6b\xdc\x39\x5c\x0d\x6c\x65\xa4\x0a\x8f\xb0\x89\xf7\x33\x6d\xf2\x3e\xeb\xf4\xe4\x9b\x39\x21\x9c\x16\xcd\x63\x24\xa6\x38\x94\x79\x73\x25\x2f\x1a\xcb\x82\x2c\x3b\x37\xb4\xcf\x3c\xb6\xa6\x4e\xa2\x51\xc5\xd6\x4c\xce\x8b\xad\x99\x84\x61\xd3\xa2\x5b\x3f\xb3\x4e\xda\xfa\xce\x89\x07\x02\xb4\xa9\xb6\x49\xee\xbd\x85\x96\x64\xde\x3c\x15\xe9\xf0\x2f\x9c\x55\xe3\xa7\x1e\x37\x8d\xc8\xb5\xe8\x23\x5a\xa2\x8f\x41\xbd\xd2\xf8\x54\x02\x67\xa8\x83\xcf\xc3\x65\x83\x81\xb7\xa3\x2d\x8d\x71\xce\x11\x44\x62\xbc\x04\xd5\x02\x3c\x68\x70\xc7\x15\x16\xac\xf1\x14\xa1\xe5\x26\x5d\xc6\x45\xd1\x7e\xbc\xa1\x99\x01\x01\x1d\x63\x62\xc7\x67\xdd\x35\x3e\xd8\x5f\x5f\xe4\x8f\x06\x5f\xb5\xb6\x5e\x8e\x8b\xe2\xbe\xed\xe9\xd4\xec\xe0\xd4\xf2\x63\x1b\x87\xb1\xc8\x78\xaf\x35\x9c\xc7\x18\xef\x32\x2f\xef\x25\xf5\x63\x50\x46\x65\x6d\x6e\xb9\x4e\xa7\xe8\xd4\xe0\x22\x83\x1e\xe2\x88\x74\x38\xe5\x56\x22\xea\x21\x97\xc8\xcd\x90\x74\xbe\x93\x24\x0c\x4b\xa3\xbc\x5a\x65\xfd\x71\x59\xba\x91\x3a\x72\xfe\xb7\x12\xc0\x0b\xf2\xca\x18\x1d\x06\xba\xfe\x3c\x04\x74\x41\xd7\x80\xa1\x48\xd1\x64\x82\x77\x36\x13\x45\x59\xb3\x23\x38\x29\x57\xb3\xed\x2e\xa2\x3a\xfc\x9c\xea\xa5\x2e\xa9\x0f\x9a\x21\x31\xef\x3a\xe5\x92\x6b\x65\xa3\xa8\xce\x67\x6d\x86\xd6\xad\x5e\x94\xce\xa7\x55\x61\x54\xa9\xcb\xa1\xc8\x09\x9b\xcf\x9b\x49\x1e\x1c\x9c\x02\x47\xe6\x96\x46\x11\x30\xd6\xbf\xd6\xf1\x46\x6d\x8a\x51\xb6\xef\x48\xc4\xd3\xba\x09\x1d\x86\x48\xda\xf3\x07\x17\xb2\x5a\x09\xe0\x1e\xc5\xbb\x25\xaa\x6b\xc4\x09\x70\xd2\x11\xd6\x87\x64\x28\xb5\x17\x12\x13\xa1\x26\x5a\x0f\x4c\x6e\x04\x42\x68\xda\x26\x07\xdb\x7a\xc2\xfe\x8e\x2a\xd5\xbb\x36\x9a\x8c\xc6\xbd\x3b\xc9\xfa\x24\x8d\x0e\x97\xb2\x77\x6d\x3c\x19\xf7\xf6\x24\x5f\x2f\xb9\xe8\xdd\x49\x79\x96\x1d\xf3\x38\xee\x5d\xed\xdd\x13\x3c\x3d\x8c\x9e\xf2\x79\xef\xed\x24\x7d\xdc\x7b\x43\xce\xbd\xf2\xb2\x98\x72\xe3\x8b\x1a\x53\x6e\x7c\x49\x63\xca\x8d\x17\xd5\xfe\x9e\xa2\x4e\x84\x71\xf9\x82\x0c\x8c\xd2\x6a\x17\x8e\xc6\x1c\x65\x1b\x29\x0c\x63\x27\x1f\x8e\x93\xd1\x29\x0b\xc6\xe1\x28\x9b\x25\x29\x1f\xf1\xf7\x73\x16\x67\x28\x0b\x26\xe6\x09\x76\x93\x2b\x38\x5f\x2f\x22\x31\xdf\x57\x9b\xf7\x1c\x8f\x66\x49\x1c\x2b\xda\x5a\x05\xf6\x20\x3d\xaf\x99\xec\x80\xb8\x91\x41\x75\x4b\xb3\x64\xb5\x66\x29\x57\xcc\x78\xab\x9d\x79\x33\xb4\x4a\x13\xae\xf1\x26\x5c\xcb\x46\xf9\x15\x9b\xa5\x89\x6b\x04\xe1\x1e\x88\x74\xd8\x23\xab\x51\x9b\x9e\x66\x92\xaf\x7d\xa3\x36\xf5\xfb\x13\x92\x72\x96\x25\xc2\xf7\xde\x12\x26\x30\x04\xcc\xb9\x57\xfa\xf1\x79\xa5\x6f\xaf\x0e\xa2\xc3\x3c\xc9\x33\x28\xdd\x43\x0f\x99\x94\x3c\x15\x59\x2f\xf0\x86\x33\x84\x87\x5e\xd8\x63\x29\xef\xb1\x38\xee\x41\x87\xe2\x93\xde\x61\x92\xcc\x7b\x33\x26\xe6\x00\x5e\x86\xbd\xd2\x6f\x55\x3f\x26\xc7\x91\x10\x3c\xd5\x5b\x81\xbe\x86\x04\x74\x5a\xf9\x10\x73\x96\xee\xeb\xa7\xb4\xe9\x15\x93\xa3\x8e\xf4\x6e\xcd\x0e\xf9\x0a\x32\x3e\xf4\x42\x2d\x1e\xc6\x5d\x5f\x34\x3b\x55\x7d\x31\xea\x75\xf4\x0e\xac\x75\xaa\xbe\xa9\x95\xa1\x04\x4f\x97\xf8\x54\xf0\x13\xe7\xb6\x63\x56\x60\xa6\x61\x2e\x9b\x6b\x08\x9f\xea\xa8\xde\x1a\xe3\x3a\x14\x6d\xa7\xf0\x91\x2f\x09\xa0\x89\xaf\x93\x9a\x06\x9a\x44\x72\x22\x47\x31\x3f\xe2\x22\x5b\x4a\x1e\x89\xfd\x2c\x3a\x14\x4c\xe6\x29\x47\x66\x57\x8f\x80\xc2\x86\xe0\xa3\x36\xca\x92\x54\xa2\x05\xb8\x4b\x32\xb0\x00\x6e\xe6\xfc\x6b\xac\xe4\xee\x65\x6a\x63\x56\x58\x14\xcc\x6d\x4a\xc2\x93\x35\xa7\xde\x1b\x35\x24\x77\x23\x4d\xf2\xf7\x14\xcc\x9e\x73\x0c\xa3\x3f\x35\x6b\xa5\x3b\xf6\x10\xd4\xbb\x5b\x37\x61\x46\x56\xaf\x98\x8e\x4f\xc0\x3b\xb1\x06\x83\x52\x0e\x17\xe6\x99\xce\xe2\x43\xad\x6a\xa9\x6c\xe7\xd9\x15\x95\x9a\x0f\x02\x8f\x9b\x1c\x91\x7a\x0f\x32\xf6\x5d\xc3\x49\x3b\xef\x1b\x15\xc0\xac\xa6\x41\x12\x3a\x05\x23\x5b\xb0\x51\xa8\x0e\x58\x33\xbe\xc9\x6e\xd1\xe8\x26\x33\x5f\x06\x2c\xa4\xe3\xcd\xf2\xf0\x6a\x1c\xd2\x04\x5e\xb5\xbe\x1a\xc3\x57\xac\x44\x8d\x68\xce\x4a\x3a\x75\x33\x8f\x9a\x73\x05\x53\xfb\x51\x95\x6f\x56\xba\x51\xec\x9b\x3d\xe2\x2e\x13\x0e\x51\x54\x93\x50\x55\x19\x44\xa1\x82\x68\x38\x09\x83\x68\x38\x09\x41\x13\x12\x44\x61\x7d\x48\xc8\xcc\xa3\xe1\x24\x1c\x4e\x48\x46\x6d\x61\x75\x97\xdb\xe2\xc3\xc9\x8e\x5b\x49\x95\x5d\x3f\x87\x00\xe6\xa5\x85\x37\x0d\x2c\x18\x61\x60\x61\x0d\xcb\x8d\xe4\x94\x97\x42\x54\x67\xf2\xb9\xda\xaf\xb3\xe8\x20\x56\xf4\x53\xe2\xe9\xc4\x1f\xbb\x68\xbb\xc7\x56\xfc\x8d\xe8\x20\x65\xe9\x89\x46\x57\x72\x11\x8e\xd6\x75\xef\xf2\x5f\x05\x8e\x5e\x76\x9b\xdd\xb2\x9d\x9a\xce\x03\xbd\xc8\xc0\x59\xd7\xed\xee\xfd\x3c\x96\xd1\x45\x1d\xed\x88\xed\xad\xab\x73\x0d\x08\x5c\x3d\xa7\x7e\x1b\xc8\xb0\xbd\x0f\x66\x1d\x01\x76\xed\x9e\xfe\x4b\x8f\x1a\x28\x09\x1d\xd8\xc1\xf3\xf3\xb2\x83\x36\xd1\xbc\x89\x61\x62\x15\x33\xab\x58\x93\xeb\x37\x40\xd9\x87\xae\xdd\xd8\xce\xa3\x90\x9c\xc4\x64\x86\x4f\x39\x5d\xdb\x48\x19\x8b\xea\x28\x7d\xad\x77\x0f\x25\x5a\xa3\x94\xa6\x45\x21\x46\x2c\x3b\x11\xb3\x7d\x91\x24\x6b\xa2\x38\x3d\x4d\x12\x11\x76\x24\x1c\x77\xab\x9f\x8d\x56\xc9\x1c\xf2\x1e\x8a\x99\x47\x29\xd5\xf7\x7e\xda\x57\x42\x67\x5d\xd5\x60\x60\x8f\xac\xfa\xf5\x11\xc5\xd0\x89\x55\xbc\x76\x0d\x0a\xf8\xb1\xf1\xaf\x46\xbc\x61\x49\x39\xa3\x33\x48\x1e\x01\xa3\x18\x6b\xec\xa7\xb1\x35\xb3\xda\xaf\x72\x6f\xcf\xf7\x0f\x1c\x35\xad\x23\x7e\x50\x4a\xd7\xe0\xcd\xa2\xe7\x81\x89\xfd\x8a\x7d\xed\x5a\x32\x8b\x91\xe4\x19\xe4\xd3\x26\x4d\xbe\xd7\x1d\x62\x46\x62\x8d\x54\x6b\x93\xbb\xdb\x70\x0e\xa5\x65\x7f\x73\x7b\xc1\xf0\x4e\xbf\xeb\x18\x79\xbc\x13\x21\x48\x12\x71\xc4\x53\xc9\xd3\x0c\x9f\xb7\xb3\xd6\x9e\xa9\x29\x3e\xb5\x01\xde\xc1\x0e\x80\x1b\xcd\xa9\x20\x62\x58\x6d\x0a\xbb\x93\x2a\x06\x83\xf1\xfa\xb6\x95\xef\xc3\xec\x34\x8f\x7e\x15\x4c\x8a\x71\x2f\x95\x9c\x55\xa2\xc5\xe8\x30\x4d\xf2\x35\xc8\x25\xee\x09\xba\x8e\x50\x57\x51\xee\x18\x19\xd3\x80\x64\x67\x3e\xca\xb8\x98\xa3\x6c\xf4\xe6\x83\xfd\x7b\xdf\xb8\x77\xe7\xad\x47\xf7\x88\xe5\xa4\x66\xf2\x89\xbf\xb6\x61\x11\x22\x9e\x11\x83\x7c\xfe\xc2\x95\xef\x58\x7a\x98\xc1\xe9\x8d\x4c\x4f\x4e\x13\x2a\x46\x91\x38\x4a\x1e\x73\x94\x92\xc6\xb7\x4b\x14\xe1\x69\xe4\x47\xb6\x73\x71\xe5\x54\xad\xb3\x2d\xc7\x0d\xe0\x34\x3b\x25\xcb\xf6\x10\x6e\xe2\xf1\xda\xa4\x63\xac\x51\xb9\x4a\x53\x56\xa2\x04\x4f\xcd\xb9\xa5\x18\x89\x44\x41\xaa\xda\xd5\x99\xc7\x50\x8c\x7d\x00\x2a\x1e\x0c\x62\x84\x2b\x07\xf9\x0a\x77\x2a\x6a\xde\xc9\x40\xa8\x46\x0c\x4f\xb8\x1f\x09\x14\xdb\xcf\xea\x67\x5d\x9f\xc5\x8a\xbc\xd8\xf5\xd0\xc5\x52\x75\xf0\x74\x8b\xd1\xb1\x4e\xb1\xb8\xcf\x9f\xac\x95\xe8\x14\x25\x22\xab\x58\xc1\xed\xa2\x58\x8f\x97\xc4\x9d\xde\xbb\xf7\x5e\x79\xfd\x81\x9a\x5d\xdb\x96\xcf\x3b\x67\xf4\x13\x88\xea\x2f\x2a\x22\xb7\xb1\x25\x38\x81\x24\x11\x27\x57\x47\xcf\xbd\x3b\x42\x53\x7f\xc1\xa1\xd1\x22\x5b\xf3\x19\xfc\x89\x16\xd1\x4c\x9f\x58\x5c\xb9\x8a\xcb\x9d\xa8\x56\xfe\x68\xd1\x9c\xd4\x04\x32\x3a\x1f\xa0\x9b\x4d\x37\xfa\x4d\xba\xaa\x99\x97\xd1\x2c\x8e\xb8\xb0\xab\xe0\xb4\x34\x86\x08\x29\xba\x76\xbd\xe6\xb6\x47\xfc\x49\x94\xc9\x6c\xef\x44\xcc\xa8\x7b\x53\x14\xf6\x8e\xc8\x51\xca\xd9\x7c\x1e\xa5\xa6\x90\x73\xd7\x8c\x16\x57\xd5\x19\x47\x40\x95\xce\xcb\xed\x32\xb2\x31\x37\x47\xfa\x4a\x23\xe2\x28\x93\x4c\x9a\x66\xec\x65\x57\x1b\xa7\x60\xbd\xcd\xd5\x90\x9f\x74\xf9\xcd\x8c\x9c\xf7\x66\x1b\x93\x8a\xe5\xc1\xc6\xb9\x0a\x2c\x2b\xd1\xe4\x05\x0c\xc1\x0e\x7e\xd5\x83\x4d\x04\x3d\x2d\x81\x5e\x28\x2c\xba\xf6\x25\xc7\xdd\xb7\xca\x66\x0f\x32\x31\xd5\x3f\x4e\x8f\xab\x2e\xb5\x93\x29\xab\x72\xed\x54\xca\x72\x94\xf1\x35\x03\xe7\x65\x5c\x12\x31\x4a\x79\xcc\x64\x74\xc4\x69\x7d\xd9\x08\x65\xe1\xe8\xb1\x86\xce\xb7\xc3\xb4\x24\xe2\xbf\xe9\x68\x55\x9a\x63\x31\x15\x7e\x1d\x2c\x53\x8c\x66\xc7\xf3\xae\xe0\x09\xa3\xe3\x24\x7d\x1c\x89\xc3\x6a\xce\x3f\x59\x07\x3a\xc1\xdc\xa0\x00\x9c\xa6\xe8\xf9\x2a\x49\xf6\xe9\xec\x78\xde\x15\x9f\x72\x13\x94\x52\x41\x72\x39\x02\x73\xcd\xe5\x92\xb4\x30\xea\xdd\x59\x46\x82\x67\xdc\x23\xa7\x86\xa2\xf8\x5e\xf0\xca\x22\x34\xd4\xe5\xe3\x7f\xfc\xfd\xbf\xfe\x8d\x9f\x7a\x24\x9b\x71\xc1\xd2\x28\xf1\x3d\x34\xf5\x83\xbd\x2c\x34\xf7\x85\x73\xdd\x0b\xde\x4c\xc2\x5c\xc6\x91\xe0\xc5\xc7\xdf\xfb\xf1\x2f\xfe\x8f\xff\x54\x7c\xfc\x3b\xff\xfe\x17\xdf\xfb\xbf\x0b\x34\xf5\x1b\x0f\xf0\xf4\xe3\x3f\xfc\xf7\x7f\xf5\xe3\x3f\xc1\x1e\xe1\x4f\xd8\x6a\x1d\xf3\x4c\x57\x7c\x8f\x87\xe6\xbe\x08\xde\x3e\x0e\x97\x3c\xe5\xc5\xcf\x3f\xfc\xdd\x8f\xff\xc3\xef\x17\x7f\xf5\x87\x3f\xfe\xf9\x87\xbf\x5b\xfc\xfc\x47\x1f\xaa\x9f\x5f\xfc\x9f\xff\xcf\xcf\x3f\xfc\x5d\xec\x91\x35\x17\xf3\x48\x1c\xea\xcf\x1f\xae\x43\x7d\x5b\x04\x8f\x64\x98\xcc\x93\xe2\xe3\x0f\x7f\xf3\xe3\xff\xf8\x2f\xe0\xe7\x3b\xfa\xe7\x1f\xff\xab\xe2\x17\xff\xe2\x83\x8f\xbf\xf3\x3d\xf5\xf3\x57\x7f\xf1\x4f\xb1\x47\x12\x11\x9f\xe8\x0a\xde\x4c\x42\x11\x9f\x14\x3f\xff\xc9\x6f\xfe\xfc\x27\xbf\x39\xc5\x1e\x39\x60\xb3\xc7\x8a\x07\x10\x73\xdf\x0b\x5e\x3e\x08\xab\xdb\xe2\xaf\x7f\xe3\xf7\x74\x87\xfe\xa7\x5f\xfc\x93\xdf\xf7\xc8\x61\x74\xc4\x85\xae\xe4\xd5\xc3\x50\xdd\x40\x0f\x22\xb9\x2c\x82\xdb\x2c\x14\xf3\x42\x7d\x9e\xcb\x02\xfa\x38\xe3\x6b\x59\x7c\xfc\x9d\xdf\xfe\xf8\xdf\x7d\xa0\x7e\xfe\xfa\x3f\x7e\x08\x77\x0a\xd2\x3f\xff\x2f\x3f\xff\xd1\x3f\x2b\xfe\xfa\xd7\x7f\x4f\xfd\x7c\xfc\xfb\xbf\xf7\x8b\xff\xfd\xbf\x14\x3f\xff\xe9\x6f\xfd\xe2\x9f\xff\x27\xec\x91\xe3\xa5\x6d\x04\x46\x47\x14\xc1\xeb\x51\xb8\x68\xb5\xf0\xf1\x4f\xff\x69\xf1\xf1\xbf\xfb\xe0\x17\xff\xea\x7b\x17\xd4\x26\xab\xda\x1e\x49\x5d\x9b\x82\x6d\xcd\x67\xb2\x55\xe3\xff\xfb\xc1\xbf\xfd\xf9\x9f\xff\xa3\xe2\x17\xdf\xfb\xfe\x2f\xbe\xf7\x07\x17\x54\xba\xaf\xb8\x9d\xcc\x0f\x3c\x18\x11\x8f\x78\x0a\x66\x8f\x78\xaa\x31\x2f\x2c\x3f\x0d\xaa\xbe\x92\x72\x31\x5b\xba\x98\xaa\x60\x7f\x65\x11\x26\xba\x42\xc1\xe2\x48\x7e\xf4\xc7\xb8\x0b\x5d\x3f\xfa\x63\x83\xaf\x0f\xd7\x61\xcc\x44\x2f\xb8\x3b\x0f\xf3\x9e\xfb\xaa\x13\x19\xb9\x41\xc6\xea\xba\x50\x38\x12\xe4\x1f\xfd\x79\xd8\x46\xbe\x7b\x3c\x14\x3d\xb5\xff\x0b\xc9\x0b\x7d\x37\x4b\xf2\x34\xb3\xb8\xd8\x40\xb4\xbd\x2c\xe4\x79\xcc\x15\x5d\x0d\x5b\x68\xa6\x5e\xdf\x99\x85\x89\x90\xfc\x89\xe4\xb8\x81\x5a\x7b\x59\x98\x44\xb2\x08\x3e\xfa\x9d\x8f\xfe\xf8\x1e\x0f\x25\x13\xb2\x37\x4f\x84\xf8\xe8\x8f\x15\x90\x1d\x4f\xbb\x1e\x76\x96\x84\x19\x3f\xe2\x33\x80\x5c\x16\xc1\xfd\x55\xc8\xa2\x0c\x9e\xaa\x2e\xcd\x53\xde\x40\xbf\xaf\xbe\x1f\xe6\x4c\x21\xc8\x1b\x71\x98\xa4\xd9\xfb\xf9\x17\xea\x4b\x0e\x44\x21\x6a\xd6\xd4\x40\xb7\xdb\x2c\x8c\x93\xb4\x51\xfb\x46\xe9\x73\xf1\x88\x78\x59\x12\x49\x8f\x78\x5c\x75\x41\xf5\x80\xf3\xac\x79\xdb\xb8\xf3\x88\xf7\xbe\x82\xd7\x23\x5e\xac\x61\xf4\x88\xc7\xd4\xa5\x17\x92\x43\x2e\x7b\xaa\xba\xa6\x5f\xec\x08\xda\x85\x98\x9f\x3d\xb7\x95\x4b\x95\xba\x4c\xa1\xed\x65\x00\xd4\xd6\x6b\xd5\x7b\xfd\xd6\x74\x60\xeb\x7b\xe8\x56\xeb\x2d\xb0\xef\x9f\x6a\xed\xbd\xca\xd3\x15\x13\x1d\x6b\x2f\x17\x8f\x55\x85\xb0\xf4\xfe\x50\x16\xce\xde\xa1\x66\x37\x5b\xf3\xc7\xb2\x08\xde\xca\xc3\x8c\xcf\x58\xa6\x1f\x8a\x63\x2e\xe6\xb9\x38\xcc\x16\x2c\x8e\xbb\x56\xeb\x53\x67\x73\x31\xd7\xa8\x77\x58\xbc\x8a\xd3\x5c\xcc\xd3\x28\xcb\x0a\x45\x64\x79\x36\x5b\xf2\xa5\x00\x6c\x69\xae\xdc\x97\x0f\x42\x1e\x65\xeb\x88\xc7\x7c\xda\x5e\xa6\x66\x63\x50\xcb\x78\xb1\xe0\xa2\xb1\x2a\x1f\x88\x30\x4f\x01\x13\x23\xf1\x34\x3a\xec\x58\x98\xaf\x1e\x86\x0a\x86\x98\x1d\xf2\x22\x78\x6d\x19\x82\x44\x7c\xa8\x1e\x01\xb0\x5c\xe6\xeb\x22\xf8\xfa\x51\x98\xa4\x2c\xcf\xc0\x33\xf2\xa9\x6c\x2e\x61\xd5\xff\x43\x2e\x92\xd5\x4a\x11\x5c\xd5\x8d\x43\x7e\xc0\x05\xea\x65\x3c\x42\x5c\xe0\x29\x9e\xc2\x2a\x88\xf4\xb0\xa9\x8a\x6f\xb3\xf0\x80\xa7\xf0\x9b\x7f\xf4\x7d\x9e\xb6\x37\x02\x2e\x04\x8c\x3b\x8b\xe3\xac\xf5\x51\x63\xd9\xdd\x9d\x87\xcc\x14\x4d\xe2\xc3\x38\x9a\x2d\xeb\x3a\x37\xbf\xfb\x15\x12\xf2\xbb\xb9\xec\xa4\xe3\x16\x71\x00\xad\x66\x16\xad\x78\xa4\x77\xcd\xe8\x90\x8b\x6c\xb6\x64\xeb\x4e\x02\x6f\x51\xe6\xd5\xc3\x82\x1f\xb1\x78\x03\x27\xd4\xa4\x24\xe9\x01\xe7\xf1\x9c\x8b\xad\x58\x71\x7f\x15\x26\x5c\xf6\x44\x72\xd8\x40\x0c\x45\xb0\x62\x0e\xd8\xd2\xc6\x88\xdb\x2c\x9c\x2d\x01\x09\x12\x31\xdf\xa0\xd6\x92\xc7\x76\x92\x8f\xb8\x40\x53\xff\xdd\x77\xb3\x39\x93\x6a\x8e\xd5\x0e\xa1\xe9\x1d\x6b\xce\xa8\x6a\x4c\xf3\x3f\x4c\xd1\x92\x74\xa3\x68\x6b\x46\x01\xe1\x78\x7a\x94\xc4\x6a\x80\x36\x4a\xff\x0a\xe7\xf1\x41\x92\x1e\xf3\xc3\xa8\x49\x17\x54\xfb\x0a\x90\xc7\x6c\xed\xce\x93\x33\x49\xee\xd4\xa8\xd2\x8f\x33\xd8\x5a\x53\x67\x4e\x60\x37\x82\x88\x36\xa9\x9d\x07\x60\xbf\x52\xde\xc1\x93\x3d\x56\x0b\x50\x6c\xf0\x60\x52\x6f\x27\x7c\x0e\x8b\xfd\x50\xdf\x08\x8d\xe8\x42\x32\x29\x1b\xa3\xfe\x40\x84\x1f\xfd\x51\xda\x28\xda\x18\xea\xbd\x2c\xfc\xe8\x8f\x00\x35\x17\x49\xaa\x20\x6b\x17\xbd\x60\xc3\x3a\x8c\xa4\xda\xb0\xc4\x47\x7f\x94\xaa\xed\xeb\xa3\x3f\x32\x3b\x8f\x7a\xbe\x75\x2b\xd0\xc5\xb7\x91\x7a\xa8\xe5\x33\xa7\xf4\x0f\xa3\x94\x49\xde\x5e\x9d\x8f\x64\xc8\x14\xf7\xf3\xce\x49\xc8\x52\xb1\xb1\x02\x6f\xb3\x70\xae\x06\x05\x96\xaf\xe2\x52\x52\x19\xf1\xc6\x1a\xb4\xfc\x7c\x26\xdd\x69\x7e\xf9\x20\x4c\xa3\x43\x77\x8a\x63\x36\x7b\x0c\x7c\xd9\x3a\x91\xad\xb9\xbe\xcd\xc2\x85\xd4\x77\x1d\x0c\xb7\xe2\xb4\xcf\xe7\xb8\x3b\x18\xe8\x19\xef\x62\xa1\x3b\x78\xe3\x19\xdf\xc6\x1d\x5f\x66\xea\x15\x74\xe6\xf1\x8c\x9b\x17\x33\x5e\x61\x80\x7a\xbd\x9d\x1d\xd0\x5f\x6d\xdd\xef\x65\xd7\xeb\x4f\x8f\x06\x6f\x3d\x4e\x59\x24\xa2\xcd\x3d\xff\xec\x0f\x9f\xfd\x8f\xe1\xb3\xdf\x38\xfb\xe9\xd9\x8f\x9f\xfd\xd6\xb3\xef\x3e\xfb\x27\x45\xfb\xd1\xd9\x87\x67\x3f\x3d\xfb\xc1\xd9\x4f\x8a\xe0\xec\xfb\x67\x7f\x19\x9e\x7d\xf8\xec\x83\x67\xbf\x7e\xf6\xc3\xb3\xff\x7c\xf6\x83\x22\x38\xfb\xfd\xb3\x1f\x84\xcf\xbe\x73\xf6\x97\x67\x3f\x3c\xfb\xf1\xb3\x0f\x8a\xe0\xec\x5f\x9d\x7d\xa8\x1e\x7c\x78\xf6\x9f\xcf\x7e\x72\xf6\xa3\xb3\x3f\x79\xf6\xdd\x67\xdf\x79\xf6\xc1\xb3\xdf\x2b\x82\xb3\xff\xf5\xec\x4f\xc2\xb3\x9f\x9c\xfd\x40\x3d\x70\x5f\x6d\xe0\xdf\xd9\xbf\x7e\xf6\x9d\xf0\xd9\x6f\x9d\xfd\x50\xb5\xfc\xec\xd7\x9f\x7d\xf7\xec\xcf\x8b\xe0\xec\xff\x7a\xf6\x8f\xc2\xb3\x1f\x40\xbd\x1f\x9e\xfd\xb4\x89\x8e\x00\xda\xb3\x5f\x3f\xfb\xd1\xd9\x8f\x55\x0b\x67\x7f\x76\xf6\xa3\xd6\x9e\x70\xf6\x2f\xcf\x7e\x1a\x9e\xfd\x50\x41\x0a\xe0\xab\xd6\x7f\x1d\x5a\xf8\x11\xd4\xfe\xef\x9f\xfd\xb6\x7a\xfd\xe3\xb3\x1f\x3c\xfb\x9f\x9f\xfd\xb6\x7e\xb8\x21\x81\x56\xdb\x48\x70\xf6\x6f\x9e\x7d\x10\x3e\xfb\xee\xd9\x4f\x9e\xfd\xde\xd9\x8f\x55\x63\x0d\xdc\x3e\xfb\x17\x67\x3f\x0e\x15\x94\xcf\x3e\x80\x81\xf9\xce\xb3\x0f\x1a\x38\x7e\xf6\xcf\xce\xfe\x4c\xf5\xe5\xa7\x67\x1f\x16\x35\xec\x85\x05\xf2\xd9\x6f\x9e\xfd\x00\x80\xfa\xad\x67\xdf\x0d\x0b\xdd\x56\x35\xda\x67\x3f\x39\xfb\x61\x03\xf7\xcf\xfe\xd3\xb3\x7f\x12\x9e\xfd\xf8\xd9\xef\x40\x65\x50\xf3\x0f\x8b\x0a\x84\x9f\x40\xbd\xe7\x54\x54\xaf\x0d\xfd\xfa\xc3\xb3\x3f\x7b\xf6\xdd\xf3\x3f\xf9\x15\x6e\x42\x0f\x93\x38\xca\x36\xb8\x89\xb7\x8f\xc3\x9f\x7d\xc0\x7e\xf6\x07\xb3\xe8\x38\xf9\xd9\x1f\xfc\xd7\xdf\x36\x4c\xc5\xe3\xd9\x7b\xcc\x65\x4c\x1f\xae\xc3\x44\xa6\x4f\xf9\x01\xeb\xa9\xd5\x1c\x3d\x15\x3c\x4b\x8e\xd9\x76\x0e\x23\xcf\x9e\x6a\xb6\x94\x1d\xc4\x89\xe8\x35\x5e\xb0\x26\x86\x3d\x5c\x87\xe9\xd3\x93\xc7\x3f\xfb\x80\xcd\x4f\x5a\xa8\xf5\x66\x12\xce\x9e\xf2\xc7\xf9\x7b\xff\xf5\x37\x67\x27\x85\xda\x7b\x22\xfe\xf4\x98\xa7\x27\x8b\xe8\x71\x72\xcc\xc4\xc9\x26\xfa\x3c\x92\xe1\x49\xfc\x38\x69\xa1\xcd\x37\x9f\x86\xec\x67\x1f\x24\x3f\xfb\x0b\x2e\x22\xd6\x40\x18\xf5\x06\xda\x66\xaa\x11\xcd\x0f\xe8\xab\x37\x93\x30\x65\x4f\x81\xee\xc1\x50\xc4\x4d\xd1\xee\xcb\xef\x85\xfc\x67\x7f\xc1\xe3\xa8\xd0\x97\x7f\xa0\xae\x5e\x3d\x0c\xe7\x27\x45\xf0\x95\xc7\x61\xc4\xd5\x45\x67\x1d\xd2\x25\xae\x72\x7b\xb9\x0b\xc8\xe5\x53\xf6\x38\x56\x60\xb3\x99\x47\xbc\x95\xf9\x7d\x8f\x3f\xe5\x71\x04\x17\x19\xfc\x1e\xaa\x41\xf5\x1e\x2b\x70\x54\x0d\xaa\x39\x43\x4f\xeb\xef\xb7\xd3\xd4\xd5\xf9\xaf\x75\x6b\x5b\x49\x2e\xc0\xb0\xf5\xed\xe1\xfc\x64\xeb\x3b\x80\x77\xeb\x5b\xe8\xc5\x67\x4e\xc9\xf7\xd6\x4c\x74\xac\x10\xcd\x64\x6b\x1e\x7b\xce\xe6\x45\x70\x67\x16\xb2\x94\xcd\x24\x4f\x3f\xfa\x0f\x99\x8c\x66\x9b\xab\xe0\x1e\x0f\xb3\x8a\xd1\x56\xc5\xb3\x4e\xad\xc9\x7b\x8a\x9d\x4b\x34\x27\xaa\xaf\x5d\x76\xdb\xd2\x48\xc5\xdc\x55\xd8\xbd\x17\x7e\xf4\xa7\x71\x1b\xb9\x41\xb3\x33\x4f\xda\x3c\x35\x67\x5a\xd6\x52\x9c\xaf\x62\x80\x15\xdf\x0e\xbf\xcc\xde\x67\xf6\x41\xd6\xc0\xec\x3b\x33\x50\x5a\x24\x56\x3f\xf1\xd5\xf7\xc3\xbc\x89\xb7\x8a\x75\x96\x89\x98\xf1\xcb\x68\x20\x38\xd3\x7f\xd5\xcd\x9c\x29\x38\xd5\x0f\x33\x77\x99\xb9\x55\xbf\x33\x68\x56\x95\x56\x98\xcb\x4d\x13\x56\xf5\xc0\xd9\x76\x44\x54\xd5\x6f\x7f\xab\xda\x39\xf7\xed\x39\x35\x03\x8c\xe7\x7f\x7c\xce\x6b\xdd\xa3\xad\x88\x9c\x6d\x5f\x1d\xb6\xf7\x9f\x39\x9a\x7f\x2d\xcf\xb2\x8b\xd8\x95\xb3\x1f\x6d\xb0\x2b\x67\x3f\x72\xd8\x15\xc5\x45\x9c\xfd\xc9\xd9\x87\x67\x7f\x0e\x1c\xc7\x9f\x9c\x7d\xd8\x58\x03\x67\xff\xba\x66\x31\xd4\x7e\xef\xe2\xfe\xd9\xf7\xe1\xd9\x5f\x28\x66\xe1\xd9\xef\x4e\x5b\x04\x5f\x31\xa6\xeb\x0d\xa2\x7e\xf6\x6f\xd4\x76\x0b\xfc\xc0\x87\x9b\x92\xa5\xdd\xe5\x7f\x78\xf6\x67\xcf\x7e\x17\xe0\xf9\x50\x35\x01\x3d\xd8\xe4\x16\x70\x07\xbb\xf0\xe1\xd9\x5f\x3e\xfb\x0d\xc3\x3b\xfd\x45\xd1\xc5\x43\xfc\x46\xc5\x6a\xfd\xf3\xb3\x1f\xa9\xcd\xfb\x5f\x86\x67\x1f\x62\x2d\xa7\x6a\x36\x01\x4f\x1b\x9c\xc3\xff\x76\xf6\x43\xc5\xac\x69\x1e\xc1\x40\xf1\xa7\x67\x7f\x06\xfb\xfd\x79\x55\x6c\xf0\x0c\x45\xc5\x3c\x5c\xe6\xf3\x5f\x29\xff\x90\xca\xfc\x30\x6f\x9d\x81\x74\x50\x48\xee\x92\xc8\xe0\xa3\xff\x10\x85\xdd\x54\xf2\xce\x2c\xe4\x22\x60\x1f\xfd\xeb\xf0\x02\x3a\xf9\xc4\xa1\x93\x4f\xb6\xd1\xc9\x16\x99\x0c\x3e\xfa\xd3\x24\xdc\xa4\x93\x79\x17\x9d\x7c\xcf\x10\xca\xf7\xd8\xea\x62\x4a\x09\x50\x68\x36\x21\xeb\x52\xf5\x6a\xaa\xc9\x0d\xd5\x6c\x95\x6e\x51\xd0\x80\x7d\xf4\x6f\xc3\xa4\x55\xe6\x42\x72\xfa\x1e\x33\x3f\xab\x0b\x09\xea\xfb\x15\x41\xe5\x9a\xa0\xb2\xa4\xa2\xa6\xef\x9d\x4b\x4e\xdf\x63\xab\xbf\x8d\xf4\xf4\xfd\x0b\xe8\xe9\x76\xf1\x0f\x3a\xff\x4b\x11\xd3\x7a\x25\x9c\x42\xf8\xe3\x14\x7d\xe9\x4b\x98\x44\x42\xf2\x43\x9e\xaa\xbb\x17\x31\x59\xc4\x09\x93\x7e\x8a\x5e\x1c\x63\x12\x47\x19\x5c\x4e\x30\x91\x10\xae\x2f\x45\x2f\x5e\xc3\x64\xcd\xb2\x6c\x5f\x2e\xd3\x24\x3f\x5c\xfa\x29\xba\xfe\xa5\x5f\xde\x44\x95\xde\x65\x92\x8f\xd6\x2c\xcd\x78\x9d\x72\xa2\x17\x65\x0f\xd8\x03\x94\xe2\xa9\x44\x8e\x41\xf0\x1d\x26\x44\x22\x7b\xc6\x6a\xc8\xda\x03\xf7\x64\xd2\x63\x3d\xd5\x1d\x0f\x63\x5f\x6a\xc3\x20\xf5\x95\xaa\x59\x5b\x00\xfd\xb2\xb0\x01\x58\xaf\x0b\xf9\x69\x20\x13\x3d\x33\xbc\x0e\x74\xe9\xa7\x85\xe9\x15\x35\x47\x9f\x6a\xbc\x60\x96\x3f\x35\x48\x16\x03\x2b\x6b\x2c\xf0\x1a\xbb\xfa\xae\xb8\x8a\x2f\x6d\x02\x63\xcc\xfc\x9e\x7f\x1e\x93\x84\x5e\x0d\xde\x2d\xde\xcd\xaf\xbd\x30\xbe\x11\x5e\x25\x8c\x5e\xfd\x56\x7d\x5f\xd4\x97\x57\xae\x1e\x92\x0c\x5e\x56\x8f\xa6\xbb\xa7\xd7\x49\x79\xf5\xfc\xc1\x23\x39\x6d\xc0\x48\x62\x8a\x52\x9a\x5b\xc7\x5e\x22\x50\x3a\x4a\xf9\x3a\x66\x33\x8e\x18\xf1\x3c\x6c\x0a\x27\xb8\xcb\x3e\xad\x36\x1d\x91\xfc\x89\xf4\xa3\x91\x4c\xa3\x15\xe2\x6a\x3d\x29\x12\xae\x23\x07\x44\x23\xe7\x0e\xec\x46\x30\x1e\x09\xf6\x98\xcf\x11\xc6\x64\x46\xe7\x28\x0f\xc6\x21\x9e\xba\xb5\x46\x0b\x34\x47\xb5\x07\xce\x12\xe1\x9d\xb5\xfa\xd4\xef\x2a\xb4\x61\x36\x7f\x97\x65\x4b\x9e\x81\xbd\x7f\x2e\x38\x68\xaf\xf8\xbc\xc7\x24\xd0\x89\x9e\x8c\x56\xdc\xc3\x3b\x4b\x84\x09\xd4\x49\x16\x54\x20\x6d\x79\x26\x50\x8e\x47\x9c\xcd\x96\x68\x86\x89\x99\xd2\x4e\xc3\xef\xce\xa1\xd0\xe6\x16\x4e\x7a\xac\x54\xa7\xc7\xaa\x03\xce\x68\x17\x8d\x77\x85\x63\x98\xef\x0c\x46\x89\x16\x6e\x92\x10\x30\x41\xec\xf4\xcc\xc8\x2a\x0b\x45\xc7\x3a\x13\x9f\x2e\x4c\xf4\x62\x37\xbf\xd7\xba\x06\x6c\x31\x8a\x59\x26\x11\xde\x11\x88\x6f\x9d\x63\xde\x0a\x2d\x56\xdb\x2b\xc6\xaa\x03\x6a\x9a\x49\xa2\xaf\x9d\x59\x05\x47\xf4\x54\x4f\xfe\x28\xcb\x0f\x32\x99\xaa\xda\x20\x02\xe8\x28\xca\x1e\x24\xf2\xe5\x98\x89\xc7\x10\xae\xa2\x8d\x0e\xb7\x92\xcd\x09\x7c\xbd\x2e\xd1\xd3\x61\x83\xf1\x8e\x0c\x44\x48\x91\xfa\x0b\xf9\x4b\xac\x09\x20\x83\xa0\x56\x17\xad\x34\x87\xea\xef\x49\xbe\x7e\xa8\x28\x88\xa2\xf6\x2f\x3e\x8f\xc9\x2b\x9a\xfb\xa9\x9e\x3d\xff\x42\xf5\xec\x95\x28\x76\x9e\xdf\xf8\x04\x0b\xba\x6b\x15\xda\xb0\x04\x57\x83\x6f\xbd\x9b\x85\x57\xb5\x7f\x01\x10\x33\x77\xa5\x56\xfe\x76\xc6\xd8\xcb\xf8\xfa\xa4\xb5\xd3\xdd\x60\x20\x50\x84\x8b\x22\xb2\x16\x3e\x1d\x28\x2a\x50\x8b\x14\x91\xb4\xcb\x36\x56\x82\x99\xa3\x42\x26\xf9\x89\x06\x71\xc6\xb2\xb5\x1e\xc0\x1b\x98\xac\x92\xd9\x92\xf9\xa7\x7b\x86\x1f\x7c\x83\x1f\xf1\xf8\x61\x9c\x1f\x46\x42\x15\xf8\x22\x26\x6a\xc8\x5b\x4f\xbf\x84\x8d\x52\x81\x65\xab\x68\xe3\x58\x18\x6a\xbc\x08\x9e\x9b\xad\xf8\x45\xd1\x02\xf5\x2b\x1b\xa8\xd3\x8a\xf9\xbd\x86\x47\x8b\x6c\x07\x3c\xac\x67\x3c\xcb\x68\x75\x55\x14\x5b\xcc\x8d\x44\x97\xb9\xd1\x79\x54\x15\xcc\x18\xaf\xe3\xd1\xbd\x23\x2e\xe4\xcb\x79\xb6\xc3\xbb\x9d\xe5\x80\x19\x74\xbf\x4f\x49\x64\xa3\x9e\x68\x8f\x93\x76\x0c\x1b\x7c\x2a\x61\x7a\x46\x91\x58\x24\x8a\xb0\x0a\xc7\x38\x5b\x9b\x65\x8a\xd1\x9b\x0f\xf6\xf7\x1e\xdd\x7b\xd8\x30\xb9\x4d\x4b\x4c\x92\x51\xca\xc4\xe3\x7d\x70\xca\xd1\x69\xd9\x1c\x87\x25\x84\x1b\x4e\x7c\x0a\x12\x63\x2d\xd8\x72\x40\xb4\x1e\x92\x75\xc8\x8b\x46\x28\x25\x3e\x4a\x73\x5d\xa8\x2c\x3b\x4d\xc3\x48\x8a\x9e\x1f\x5f\x64\xe1\xd6\xde\x0a\x27\x37\xb4\xc9\xfb\xf3\x5f\x74\x56\xd2\x28\x12\x51\x13\xd9\x39\xe5\x45\x51\x19\xba\x81\x17\x11\x84\x66\x99\x25\x42\xb2\x48\xf0\xb4\x28\x20\x9d\xdc\x7e\xf5\x00\x61\xc2\x68\x62\x23\xeb\x2b\xf6\x61\xb4\xa8\xd7\x7a\x46\x1b\xb7\x94\x35\x5e\x92\xea\xa5\x53\xae\x2e\xa3\xde\x5b\x99\x48\x15\xb0\xd7\x2d\x84\x51\x80\x6f\x90\x59\x7c\x8a\xb4\xb3\xba\x71\xe9\x64\xa3\x48\xee\x67\x27\x62\xe6\xc3\x15\x18\x6d\x63\xc4\x47\x32\x92\x31\x27\x9c\x34\x28\xb4\x22\x19\x12\xa5\x3a\x26\xe0\x65\xa8\xe1\x3f\xf8\xc1\x66\xa3\x39\x24\xa4\x3d\xe0\xce\x98\x4a\xbd\x00\xd2\x11\x88\x6c\x9d\x9c\x67\x7f\xe2\xa4\x4a\xd1\x2f\xea\xf9\x41\xed\x89\x11\xc6\x64\x3e\x75\x12\xfa\x3e\x8e\xd6\x53\xfd\x83\xb0\x1f\x21\xbc\x93\xd2\xfe\x98\xc8\xd1\x41\x24\xd4\x0e\x8f\x04\x41\x2d\x16\xc7\x86\x8c\x45\xd1\x68\xc1\xa2\xb8\x28\x22\x0c\x43\x49\xfb\x13\x12\x21\x3b\xe5\x15\x58\x89\x03\x56\x37\x54\x5d\x30\xa9\x6d\x40\x03\xb5\x01\x10\x26\xaa\x29\xd5\xc6\xa5\x30\x37\xf1\x15\x7c\x66\x30\xcb\x92\x90\xf3\x51\x31\x1d\xa5\xd6\x8f\x00\xa8\xe8\x35\xbc\x31\xc2\x36\x94\x72\xcb\xb9\xb9\x8a\xa9\xec\xe4\xac\x9a\x68\x47\xcd\x94\x89\x43\xc0\x37\xfd\xca\xe6\x93\x72\xde\x49\x3c\x9a\x27\x2b\x16\x01\x3f\xea\x90\xb3\x8d\x71\xfc\x44\x8d\x77\xe5\x66\x9e\x3a\x3e\x24\x49\xcc\xc0\x9c\x1d\x5f\x0c\x66\x05\x5d\x67\x04\xe8\x8e\x4a\x25\x6e\xf6\xaf\xbb\x57\xac\x95\xce\xdb\xcb\xad\x4f\x6a\x3b\x77\x53\x51\xe8\xd8\x16\x9b\x19\x9c\x00\x7f\xda\x61\xc8\x20\x8d\xde\xc6\x7e\xac\x31\x78\x23\xba\x46\x15\x05\x39\x83\x92\x26\x74\xd2\x85\xd9\x18\x8d\xa7\xcb\x97\xc8\x6e\x65\x30\x6c\x92\xcd\x7b\x3a\x65\x08\x77\xbd\x06\x20\x8a\x75\xe3\xc9\x48\xb0\x95\x1a\xd0\xfb\x6c\x0d\x1f\x14\x85\xb7\xc7\xf5\xb7\x53\xdd\x9f\x45\x9a\xac\x20\x9e\xf6\x6d\x3b\xdf\xa6\xe0\xd5\x6f\xa1\xa9\xff\x56\x54\xbc\x8e\x85\x44\x53\xff\x4b\xc5\xe4\x46\x71\xfd\x1a\x46\x53\xff\x4e\xcc\x56\x6b\x3e\xc7\xba\x86\x2b\x57\x35\x37\x95\xe2\xa9\xee\x5b\x95\x7d\x1b\x41\x9c\x0b\xc5\x6f\x9d\x97\xa7\xff\x34\x85\x00\x87\xa9\x5d\x11\x63\xd7\x35\x02\x57\x46\xdb\xa7\x99\x1f\x11\xd1\xc5\xba\xd4\x69\xfc\xa7\xa7\x36\x83\x97\x6f\xae\x26\x26\x7c\x9d\xce\xe4\x5f\x96\x84\xfb\x4d\xb7\x0b\xc5\x85\xf3\x92\x2c\xfc\xa8\x2c\x3b\x33\xdf\x99\xb0\xca\x60\xf0\xb9\x5a\x4b\x25\x47\x6b\xb4\xe0\x3d\x91\x88\x5d\x9b\xeb\xbf\x0a\xa3\x30\x7a\x57\xbc\x2e\x7a\x49\x3a\xe7\xa9\x2a\x7b\xc0\x7b\xb6\x08\x81\x0f\x98\x1a\xb3\x9e\xce\xa2\x99\xf5\x56\x79\x26\x7b\x4b\x76\xc4\x7b\xac\xb7\x81\x75\x08\xf7\x56\x5c\x2e\x93\xf9\xc8\x33\x71\x5d\x09\x53\x94\x2a\x57\x44\xb9\x1a\x15\x77\x44\x3a\x50\x17\xe1\xb2\x39\x6c\xc6\x04\xdd\xc4\xe8\xa9\x02\x64\x53\x9d\x86\x11\xc2\x8d\x35\xc6\x28\x57\x4d\x26\x14\x06\xc9\x65\xd2\xd2\x93\x53\x66\x57\x4c\x6a\x82\xec\x14\x85\xbd\x42\x8d\x20\x3b\xb9\xcd\xc1\x56\x96\xcd\x94\x91\x6a\xd1\x98\x88\x32\xb2\x28\xe4\x4b\x15\x56\x40\x8c\xb1\xea\xae\x16\x2f\xe9\x98\x08\xc7\xa9\x57\xe2\x9b\xe9\x2d\x09\x01\x66\x85\x15\x39\xeb\x9c\x32\x3a\xba\x93\x1e\x11\xe4\x45\xab\x75\x1c\xcd\x22\xe9\x39\xf4\x36\xae\x06\x44\xd5\x79\x9f\xad\x89\x89\x63\x1b\x84\x44\xd0\x7c\xc7\xa1\x8d\x15\xdb\x1a\x0d\x3d\x8f\xa8\xf1\x3a\xe4\x4a\x80\xd4\x61\x8d\x74\x68\x9c\x3e\xa5\x79\xe5\xe6\xbb\xa3\x83\x7a\xa8\x49\x93\x5a\x4c\x8d\x70\x1d\x3b\x2c\x40\x6c\x77\x82\x7f\x2d\xad\x1c\x69\xcd\x8b\xc4\xd0\x41\xea\xba\xbf\x41\x13\x6d\x7a\x5c\x47\x38\x00\x1a\x81\x77\x00\xf4\xaa\x27\x36\xcd\x1c\x65\x4a\x90\xb2\xb1\x9b\xa2\x51\x86\xf0\xcd\x3e\x12\x34\x1a\x89\x3a\x8d\x9c\x09\xef\x60\x43\x9e\xe6\x34\x1b\x7a\x4a\xfa\x59\xb2\x0c\xe5\xb8\x28\x74\x57\x72\x62\x3a\x92\x61\x37\x12\x53\x34\x02\x17\xcf\x6a\xbe\x47\x0b\x54\xf5\x33\x29\x35\x4f\x7e\xd8\xe9\xaa\xbb\x11\xd7\x03\xa5\xb4\x41\x96\x48\x02\x69\x60\x75\x07\x55\x55\xb9\x0e\x4c\x73\xb9\xca\x04\xe5\xaa\x02\xa1\x3e\x9c\x25\xeb\x93\x0e\x97\x8f\x18\xf8\x78\x5b\x2d\x12\xb8\x24\x91\xf1\x35\x4c\x48\x55\x23\x26\x89\x1b\x98\xc2\xd5\x82\xb5\x58\x97\xf6\x26\x51\xf1\x1c\x25\xec\x18\x1b\xdb\x85\xb3\x1b\xf5\xdb\x99\x04\x5b\x4b\xb9\x17\xd9\xac\xc8\x90\x10\x5e\x2f\x07\xc0\xd3\xbe\xa2\x99\xfd\x09\x49\x8c\xc3\x4b\x23\x52\x17\x23\x59\x27\x59\x00\x24\x40\xac\x8e\xd6\xa5\x53\x6a\xaa\x3d\x44\x4f\x32\x33\x39\x05\x49\x5f\xaa\x75\x5d\x79\xb5\x4a\x7c\x53\x35\x89\x6f\xba\xc9\x06\x0d\x8d\x68\x64\x1a\xb4\xd4\x21\xab\xa8\x43\xd6\x49\x1d\xa2\x9a\x3a\x54\x4e\xc8\x25\x8c\x50\xc7\x80\x5d\xb4\xbf\x2e\xfe\x1e\xef\xaf\x8b\xf6\xfe\xda\x1c\x22\xbb\x9f\x5d\xbc\x83\xcd\xb9\xee\x40\x9e\xfe\x0d\xef\x62\x68\x33\x50\xcb\xaf\x8e\xfc\x3b\x8a\x44\x43\xe5\x15\x37\x4e\x63\x54\xaf\x77\x3d\x94\x20\x0b\x1a\xba\x4b\x98\xda\xcd\x20\xc4\x6a\x46\xd5\x5e\x3b\x21\x0b\xb5\xb6\x96\x74\x4c\xd6\x74\x4c\x56\x74\xf4\x42\xbd\x2d\x1c\x21\xbb\x10\x13\x84\xeb\x48\x15\xf9\xad\x8c\xc4\x34\x9a\xe6\x7e\x46\x66\x34\x9a\x66\x7e\xbe\xc3\x29\x9a\xed\xc6\xf8\xaa\x0e\xaf\xc0\x9e\xa0\x09\x49\x77\x97\xc3\x6b\xcf\xad\x31\x59\x00\x0b\x04\x6f\x16\x71\x02\xfc\x32\x26\xf1\x10\xbe\xd8\xe5\xcf\xa1\x74\x77\x89\xf1\x73\x2b\x22\x29\x7f\x0e\x4d\x76\x97\xfa\x8b\x58\x7f\x01\xa7\x83\x28\xc6\x44\xba\xf7\xd2\x04\xf8\x9d\x9b\x45\x80\xc4\x88\x61\x08\x55\xd4\x08\xcc\x5f\x13\xb2\x78\xc8\x9f\x83\xb0\xc0\x96\x9c\xa2\x68\x3a\x1f\xa5\xfc\x88\xa7\x19\x47\xd8\x9f\x57\x34\xdd\x06\xed\xb4\xa3\x48\xd2\x8d\x3d\xeb\x3c\xaa\x0c\x4a\x9d\x23\x84\xb1\x9f\x20\x10\x3e\x37\xb7\x07\x90\xb7\x77\xb6\xd6\x20\xa9\xa2\xc1\xd7\x30\xc9\x74\x30\xcd\x9c\xca\x60\x12\x92\x8c\x0e\x33\x92\xd3\x61\xae\x6b\x0f\x32\x92\x87\x55\xfd\x5f\x53\xa3\xb2\xbd\x91\x0b\xab\x5c\x28\x12\x77\xa4\x01\x3e\x60\x62\x7e\x1c\xcd\xe5\xb2\xcb\x87\xd0\x8a\xd3\xdd\x8e\xc5\xa9\x9e\x9e\xcb\x8d\xd4\x82\xf6\xfb\x5c\x77\x66\xa1\x3e\x5d\xb3\xf9\x7c\x8b\x5f\xf5\xe6\xc7\xcb\x3a\x90\xc7\x84\xac\xe9\xd0\x0e\xfa\xd2\xa9\xe9\xf5\x66\x38\x9c\x4b\x57\xd7\x55\xd7\x9b\xb9\xbc\x6c\x5d\x0a\x1a\x5d\xc1\x5a\x55\xc0\xe2\xe8\xf0\x92\xb8\xb3\xa2\xd5\xf2\x19\x93\x06\x40\x06\xa2\x95\xaa\x70\xcb\x5e\x3f\x47\x09\xc2\x04\xd0\x02\x9b\x55\xb2\xc0\x8d\xa1\x40\x4b\xdc\xe8\x0e\x5a\x63\x0d\x1d\x5a\x39\x8c\xc1\x91\xf6\xde\x37\xac\x41\x2b\x32\x54\x15\xc7\x3e\x59\x9f\x54\x51\xcd\xab\x99\xe3\x8d\xea\x89\x59\x49\xbc\x01\xc4\xc6\x53\x5d\x96\x6f\xeb\xd6\x12\x41\x4e\x73\x37\xc9\xfd\xda\x7d\x3b\x77\x63\x27\xd4\x70\x37\x3b\x3e\xc1\x5a\xc4\x58\xd1\x14\x7d\x11\x93\x23\x9a\xa2\x17\x31\x39\xa1\x29\xba\x81\xc9\x01\x4d\xd1\xf5\x31\x26\xed\x48\xca\xb2\x28\x90\xac\x42\xd3\xa7\x44\x50\x3e\xad\x26\xc5\xaa\x47\x48\x45\xc6\xfd\x31\x04\xf1\xb1\xec\x6a\x9b\x81\x4a\x74\x60\x93\x94\x8e\x6f\xa6\xb7\xc4\xcd\xe1\x30\xc5\x91\x25\xea\x8a\xea\x25\x78\x28\xd5\x65\x95\x84\x2a\x2a\x9d\xe0\x7d\xfb\xad\x34\x1e\x53\xdb\x3e\xb4\xea\xc0\x25\x1a\x00\x25\x6e\x84\x20\x6c\x92\x0e\xd9\xcc\x71\x3b\x35\x3c\x11\xc0\x93\x28\x78\x1e\x22\x05\x11\x81\x34\x03\x3a\xed\xb9\x05\x97\xa9\xd7\x6e\xae\x04\x17\xa7\xdb\x75\x41\x61\x55\xa1\x73\xa2\xcb\x4a\x98\x84\xe3\x4e\x4d\x9c\x3d\xdd\xae\xb0\x4a\xad\x22\x49\x87\xb2\x56\x37\xb9\xb1\xe5\x33\x2e\x1f\x45\x2b\x8e\x60\xc7\x10\x78\x28\x9f\x13\x98\xa4\x65\x49\xee\x6d\x49\x23\xbb\x59\x9d\xe3\xd7\xad\x2a\x49\x55\x25\xa9\x3b\xe8\x7b\xf5\x62\x45\x7b\xe7\x25\xc5\xf6\x32\xb8\x68\xbf\xa8\xb8\x84\x69\xc7\xea\xb7\x9c\x5d\xf3\x04\xd4\x02\x34\x18\x9c\x97\x83\xdb\xe5\xd1\x28\xa5\xd5\xf3\xbe\xbd\xae\x79\xc2\xa9\x85\xcd\xaf\x1a\xc4\x4a\x9c\x51\x83\xfe\xe6\x96\x24\x31\xa7\x25\x89\xec\xa9\x27\xf0\xe5\x6a\x6d\x99\x38\x04\x49\xc5\x3e\xee\x69\x25\x11\x87\xc4\xcf\xa6\x84\x6c\x95\x50\x0c\x1c\x92\x3a\x35\x34\xd6\x87\xa7\x53\xd1\xc6\x32\x3f\xba\x10\xb1\x00\x08\xbd\x5e\x44\x13\xa7\xa2\xb2\x24\x4f\xe8\xd5\x60\x77\x18\x4e\xd1\xd4\x7f\x77\x3e\x7c\x77\x34\x7d\x77\xfe\x5c\x01\x3f\x43\xc5\x70\x06\xfc\x5e\x08\xef\xd5\xfd\xf4\xea\x21\xb9\x4d\x9d\xd0\x34\x4f\x46\x59\x92\xa7\x33\x4e\xbc\x43\x0f\x93\x47\xdd\x43\x02\x11\x83\x9f\xc0\x71\xeb\xeb\x62\xce\x9f\xd0\xdb\xce\xf5\x98\x30\xba\x3b\x21\x99\x92\x56\x72\x9b\xd8\x96\x0f\xa9\xe7\x11\xa9\xfe\xde\x44\x29\x7d\x02\x19\xe0\x14\xe3\x03\x09\xdb\x6e\xeb\x5b\x89\xf1\x4d\x8c\x22\x88\x8e\x32\xe7\x4f\xf0\x4b\x09\x04\xf5\xb5\x44\x24\x21\x11\x26\x59\xc0\xc2\xa9\xfa\x33\xa4\x91\x9f\x05\xc3\x21\x0b\x69\x84\x09\x4a\x69\x1a\x8c\x43\x4c\x29\x45\x82\x0a\x38\x6f\x77\x8a\x0a\x5b\x54\xf8\xc8\x5e\x29\x02\x99\x9b\x13\xe5\xc8\x67\xe4\x89\x7f\xcf\x9e\x31\x90\xc4\xed\x91\x1d\xdb\xe4\x96\x93\x23\xd4\x01\x6b\x2b\x50\x76\x27\xbb\x75\x6d\x9a\x07\xe3\xb0\x0b\xed\x3b\x58\x33\x8e\x24\x1e\x7a\x5e\x59\x82\xd9\xc0\xe8\x09\xee\x5a\x11\x5d\xec\x46\x89\x20\xd8\x25\xcd\x2d\x2d\x6e\xe3\x8d\x45\xe8\xf1\x4d\x71\x4b\xde\x1c\x0e\x05\xce\x02\x94\xd2\x3c\x10\x21\x1e\x45\x21\x4d\x47\x4f\x1c\x54\xca\xcc\x69\xbe\x87\x4b\x5c\x92\xc7\x34\x45\x13\x57\x79\x7d\xdf\xa1\x06\xf7\xff\x1e\x52\x83\x87\x5b\xa8\xc1\x7d\x27\x81\x49\x25\xcc\x54\xd9\x18\x28\xa5\x62\x6a\x78\xf0\xc7\x8a\x07\x57\x53\x52\xab\x43\xa9\x98\xde\xf3\x6b\x71\x96\x8a\x29\xb2\x72\x2b\x3a\x19\x71\x55\x1c\x2b\x8e\x37\x25\x07\x23\x86\xfd\x47\x7e\x23\x75\xd6\xc9\x88\x4f\x0f\x46\xac\xf9\x50\x6d\x12\xd3\xe3\xae\x71\x82\x8d\xed\xe5\x7c\xb1\xe0\xe9\x28\xca\xbe\x1e\xf1\x63\x9d\xc9\xaa\x19\x3e\xfd\x2e\x93\x4c\xbd\x83\x84\x56\xd3\x43\xbf\x9d\x19\x77\xba\xef\xa8\xfd\xfb\x75\x8e\x46\x50\x17\xbc\xb9\x70\xe7\xc2\x79\x6b\x45\xef\xa2\xd0\x76\x4b\x12\x4f\xdf\xf4\xef\x99\x83\x13\xf2\xde\x2f\xb1\x29\x39\xd2\x8e\xb3\x3f\x61\x77\x83\xfa\x5a\xdd\xf9\xa1\xce\xed\x7f\x87\x06\x63\x32\x71\xc2\x98\xbe\xde\x48\xff\x5f\x3d\xbe\xeb\xc2\x81\xe4\x2e\x55\xa0\x38\x16\x3b\x15\x18\x28\xdd\xe5\xf8\xaa\x2c\x7d\x94\xd2\xaa\x67\x0f\xd8\x03\x7f\xf4\x02\xd9\x5c\x93\x69\x69\x98\xa5\xba\xa5\x07\xcd\x24\x22\x5c\x89\x1f\x11\xe5\x4a\xfc\x48\xb4\x30\xc2\x40\x18\xa9\x08\xfa\x2d\x31\x45\x82\xde\x45\x11\x11\xfa\x14\x93\x91\x04\x63\x1f\x9e\x09\x45\x11\xd5\xb3\x84\x30\x8c\xbb\x2c\x79\x12\x24\x20\x7a\x49\x0d\xc0\x1b\x4d\x00\x2a\x4e\xa9\x0a\xbd\x68\x89\x1c\xde\x9d\x90\xa8\xc1\x21\x35\xf8\x27\x81\x81\xce\x6b\xea\x1e\x88\xf0\x96\xea\x8a\x49\x9e\x6c\x98\xbe\x5a\x9e\x24\xb2\x66\x05\xeb\xa7\xf8\xe6\x70\xc8\x6e\x89\x9b\x38\x0a\x58\x48\xef\x22\x1e\xb0\x90\xf0\x80\x0d\x27\x21\x26\x89\x7a\x96\x22\xa9\x9e\x49\xfd\x6c\x63\x3f\xac\xb8\x25\xb3\x84\x8e\x46\x73\x40\x31\x32\x21\x02\xef\x4e\x2a\xc2\xad\xf6\x48\xb5\x5b\xea\x48\x9b\xd5\x50\xbc\xd2\x0a\x1e\x6b\xcf\xa4\xec\x05\xc6\xf6\x08\xcb\xfc\x62\xec\x9c\x49\xa9\xc7\xee\x1d\xc6\xa3\x59\xcc\x56\x6b\x88\x53\xa3\x7e\x71\xad\x79\xe0\xd5\x95\x7b\x94\xf9\xd4\xd5\x54\xe8\x5d\x95\x30\x7a\x87\x64\xf4\x0e\xc9\xe9\x43\x12\xd3\xd7\x77\x1c\x45\xa4\x5b\x38\xaf\x27\xce\x66\x22\xa8\xb6\x9b\x6a\x9c\x14\x0b\xf2\x3a\x4c\x09\x53\x88\x25\x29\x0b\xf2\xdd\x49\x48\xf8\x4b\x52\x2b\xb7\x08\xa7\x92\x48\x0a\xb9\x34\xb7\x2d\x39\x25\x7d\xf1\x5a\xfa\x52\xa8\x83\x15\x87\x43\xf3\x97\xae\x4d\xdf\xf0\x1f\x90\x88\x26\x7a\x33\x5d\xb8\xda\x9e\x7a\x5c\xcd\x32\xa1\x43\x89\xa7\xa9\x8f\xa2\xa2\x50\x5b\x3c\x62\xa0\x9b\xe0\x98\x64\x24\xc7\x18\x23\x8e\x62\xc8\x50\x52\x45\x33\x1b\x45\x60\xd3\xd8\x05\x58\x8c\x24\x42\x49\x51\xa0\x84\x0a\x94\x91\xaa\xaa\x7b\xaa\xa2\x14\xb2\x9c\x2c\x3e\x91\x96\x82\x35\x14\xd1\xe4\x6b\x98\xcc\x94\x7c\xc9\x6a\x65\xf4\xe2\x93\xe8\xb5\xb3\x96\x5e\x1b\x2a\xcb\x36\x2a\xdb\xd4\x52\xd8\xad\xb7\xf5\x7d\x4e\xdf\x53\x75\xa8\x0f\x01\xb5\x2e\x07\x45\x4c\xfb\x7d\x5e\x14\xaf\xeb\xe6\x01\x19\x54\x0d\x0e\xce\x5e\xae\x9e\x9c\x72\x5d\x45\xae\x3e\xff\x44\x3a\x79\x85\x63\x0b\xec\xa7\x8e\xbd\x86\x1b\x41\x9e\xd3\x94\x48\x2a\xa0\x6f\x35\xf2\xbc\x55\x13\xd0\xa7\x08\xa3\xd7\xc9\xeb\x7a\x47\x7e\x99\x82\x16\x15\x8d\xf0\x14\x05\xb7\x5e\xa2\xdf\x0a\xd5\x66\x19\x0c\xdf\xdd\x45\xbd\x50\x5d\x5d\xf9\xef\xd4\xcf\x18\x4f\x11\xb0\xb6\x88\xa8\xab\x91\xbe\xfe\x1f\x54\x01\xb6\xfb\xf4\xd7\x42\x3c\xbd\x72\x35\xaa\xd7\xd5\x6b\x46\xc9\xdc\x47\x92\xbe\x5c\xb1\xa5\x9b\x26\x7b\x91\x51\xac\x2e\x92\x74\xc5\xa4\xdf\xf3\x86\x26\xec\xa4\x74\x83\xc5\x7f\x1d\x9d\x2e\xa2\x38\xf6\x41\x9f\x04\xca\x04\x5f\x06\xd7\x42\x92\xe9\xab\xeb\x21\xd1\x1c\x87\x2f\x83\xe7\x43\xf2\x94\xa7\x89\x2f\x83\x17\x42\x02\x0a\x26\x5f\x06\x37\x42\x32\x4b\x56\x2b\xe6\xcb\xe0\x8b\x21\x59\xa7\x7c\x16\x65\x51\xa2\x3e\xfd\x52\x38\x18\xa8\xbf\x75\x22\x19\x99\x46\x2b\x5f\x06\x2f\x86\x44\x6d\xbb\xaa\xc9\x71\xe8\x9a\x46\x7e\xbd\x8a\x35\xa7\x40\xa2\x75\x8e\xb9\xff\x9f\xbd\x77\x5d\x6e\x1b\x57\x1a\x00\xff\xe7\x29\x12\x6e\xa2\x02\xc4\xa6\x44\xca\x49\x66\x0e\x6d\x58\xeb\x24\x9e\x24\x93\x7b\x9c\xbb\x46\xc7\x45\x4b\x90\xc5\x44\x26\x15\x10\xb2\xad\xc4\xfa\x7e\xef\xef\x7d\x97\x7d\x81\x7d\x94\x7d\x92\x2d\x34\x78\x01\x29\x4a\x96\x33\x73\xe6\x9b\x33\x35\xe5\x2a\x8b\x04\x1b\x8d\x5b\x03\x68\x34\xfa\x82\xef\x5d\xeb\xba\xe5\xeb\x47\xdb\x4a\xdd\x8f\x6a\xd9\x8c\x01\x88\x09\x5d\x6b\x57\x41\xe2\x73\x0e\x9a\x54\x20\x13\x04\x74\x14\x60\x52\x82\xc3\xe6\x96\x20\x31\xa5\x6b\x21\x28\x3e\xe7\xc0\xaa\x3f\x14\xd1\xe2\x43\xe6\xc4\x79\x28\xc7\x66\x76\x4c\xe8\xea\x04\xdf\x4e\xdf\x73\xef\xa9\x27\x01\xe6\xc7\x27\x9d\x98\xf7\xa1\x89\x24\x4f\x34\x10\xe5\x69\x79\x50\xde\x13\xc4\xa5\x1e\x0c\xa7\xad\x06\x16\xcd\x42\xaa\x76\xa8\x27\xc5\xb3\xe7\x7d\xff\x35\xbf\xc2\x20\x82\x11\xce\x64\x97\xb7\x64\xbc\x7f\x3e\x8d\x23\x1e\xc9\x30\x98\x10\xe9\x78\xd4\xaf\x26\xe2\x06\x93\x46\xf3\xe0\x16\xa5\x3b\x2e\x35\x58\xcd\x42\xf0\x92\x12\x81\x0b\xb9\xd6\x64\x2f\x0f\x7b\xef\x75\xd5\xf1\xc7\x8e\x52\x98\x0e\xf5\x23\xb0\xb3\x1c\xc2\xf6\x68\x7f\xf1\xc8\xf0\x22\xf8\xce\x08\xfb\xff\x6e\xa3\xf8\xf0\xd7\x73\x9a\xb2\x0b\xaa\xb1\x73\xaa\xb0\x8d\x71\xb7\x49\x3e\xae\x5d\xcb\xb5\x7c\xcb\xa2\xb6\xa1\x68\x97\x0f\xb0\xea\x45\x43\x54\xee\x5e\x14\x9f\x28\x4d\x91\xe0\x98\x76\x2d\xa8\xc5\x52\x0c\xa8\x65\xf9\x56\xcb\xb2\x0d\xc9\x61\x8a\x2d\x07\xc9\x31\xaa\x91\xed\x5a\xff\xa3\x11\xe6\x23\xac\x15\xc0\xde\xc3\x4d\x78\x08\x1f\xe1\x49\xcd\x42\x47\x38\xfb\x4a\xb0\x80\xe0\x28\xc1\xd5\xa2\xab\x18\x38\xff\x79\xf0\x7c\x01\xaf\x6a\xc5\x39\x9a\x1e\xf0\xf6\xb8\xd0\x4c\xb2\xad\x5c\x55\x4d\xb3\x81\xa2\xc4\xf8\xb9\x5d\xcb\x6d\x59\x76\xc1\x72\x39\x61\xe6\x04\xdf\xb5\xa8\x1d\xf9\xf9\x90\x87\xb6\xd7\x8d\x72\x9a\x08\x6d\x8f\xda\xaa\x0f\xb2\x24\x95\xe0\x47\x06\xa2\xd0\xc9\xb2\xda\x1d\x03\xe5\x02\x7e\x65\xdf\xad\x5b\x56\x6d\x94\x0b\xe2\xb9\x6e\x13\x1d\xd7\xfe\x12\x9e\xf3\x21\xfa\x9b\x3d\xaa\x3b\x76\x98\x8c\xba\xe1\xe7\xb6\x43\x17\x30\xa8\x3d\xce\xa9\x89\x03\xc3\x95\xa8\xb0\x8f\x59\x09\x2b\xdd\x65\x1e\xef\x78\x38\xa7\x9e\xc6\x83\x60\xc2\xd3\x42\x2c\x1e\x59\x34\xd7\xfd\x6e\x43\xfb\x18\x2c\x4b\x4f\xb3\x14\xc2\x73\x69\x59\xe7\xa1\x14\xc7\xa3\x32\x45\x69\x49\x0d\xa2\x0a\x5a\xf4\xc3\xf1\x6a\xa0\x97\x19\xd5\x21\x60\x7c\x85\x0e\xfb\x99\x2e\x60\x5a\x8f\xf8\x95\x1e\x0c\x3c\x4b\x09\xff\x15\x24\xfe\xef\xa3\x39\x88\x59\xe8\x90\xf7\x6c\xab\x99\x4f\x1b\xe7\xe7\x82\xe7\x4b\x1f\xf5\x65\x55\xd8\xde\xa2\x94\x52\xdb\x83\x20\x0f\xc0\x93\x33\xda\x8c\xb1\xa0\x1b\xf9\xf1\x6e\xd0\x35\xe9\x2d\x76\x02\xdb\x33\x08\xcd\x8f\x77\x5d\x83\x60\xe3\x32\xb9\xc6\xd4\xaf\x10\xbe\xe7\xc4\x26\xe5\x7f\xcd\x19\x52\x9c\xdf\xd2\x8e\x1d\x8f\xd2\x9e\xdb\x5f\xc0\x87\x2b\x74\xb0\x77\x57\xbd\xbc\x9d\x4e\xb9\xb8\x1f\x24\xc8\x98\x9d\x5f\x2d\xfb\x62\x01\x1f\x6a\xfd\xde\x2e\xe0\x13\xab\xfa\xde\x3c\x09\xa6\xc0\x39\xeb\x59\x73\x0b\xac\x6f\x16\x58\x81\x05\xd6\xc8\x02\x6b\x6a\x81\x15\x59\x60\xfd\xbf\xff\x8f\x05\xd6\x89\x05\x96\x05\xd6\x17\x0b\xac\x67\x16\x58\x0f\x2d\xb0\xde\x58\x60\xbd\xb4\xc0\xda\xb7\xc0\xfa\x64\x81\xf5\xd1\x32\x0e\xb4\xb2\x1a\xc6\x06\xe2\xec\x34\x74\xd2\x1a\xd0\xf4\xb0\x77\x2d\x55\xf3\x23\x11\x7b\x94\x5e\xc1\x46\x5d\x0b\x46\x96\x1f\x51\x8a\xab\x9e\x56\xf8\xb3\x12\xcb\xd7\x9e\xe4\xf3\xfe\x35\xd6\x39\xc8\x9f\x25\x2d\xc9\x40\x6e\xb0\xa8\x58\x5e\xb3\x23\x7f\x58\x7f\xc8\x37\x06\x6e\x13\x72\x7b\x42\x24\x45\x8a\x73\x9e\x94\x97\xdc\x85\x3e\xf4\x5e\x5c\x10\xa3\x6c\x16\x52\xf8\x48\x22\x08\x28\xaa\x2c\x5a\x96\x8f\x3f\x3c\xfd\x3d\x4e\x7f\xa7\xe9\xaf\xb0\xfc\xab\x56\x3f\x5d\x89\xd2\x0e\x91\xcc\xe8\x12\xa7\x44\x95\xaa\xe2\xce\x13\x55\x55\x1b\x83\xb1\x5d\xda\xa1\xcb\x6d\x71\x14\x13\x80\x71\xae\x70\x84\x32\x3d\x4a\xac\xfa\x28\x6d\xc2\xad\x0d\x9b\x50\xd7\xff\x35\x5d\x5a\x53\x89\x4e\x93\x58\xb7\xcc\x6a\x64\x27\xb4\x87\x24\x32\xb8\x4d\xf4\xfc\x9e\x5f\x88\xe9\xc3\x57\x71\x25\x26\xc3\xc1\x97\x64\xe9\x42\x56\x30\x43\x29\x2d\xa7\xda\x80\x12\x5c\x9b\x44\x4f\x14\x41\xf6\x20\xd5\xd6\xec\x7a\xae\xcf\x31\x8a\xa5\x42\xf9\x0b\x32\xe3\x25\x8b\x83\x3c\x3c\x6b\x81\x59\x72\x12\x61\x18\xc6\x9c\x49\xaa\x22\x04\x81\x28\xa3\x70\xc0\x4b\xe7\xcd\x54\xe1\x0d\x4f\xcb\x9e\x4b\xaf\x19\xf1\xf2\x50\xf7\xdb\x85\x84\xc5\x39\x4e\x98\xb1\xb8\x17\x60\x74\xca\x5e\xd2\x87\x01\xf3\x74\xd4\x87\xc9\xce\x0c\x25\xc6\x33\x98\xb1\x09\x4c\x58\x08\x21\x0b\x20\x60\x09\x24\x2c\xa4\xdb\x03\xc7\xb9\xbe\xeb\x6e\x6b\x6e\x31\x2c\x66\xef\x11\x25\x33\x98\xa8\xf3\xb6\xea\x7c\x9a\x0b\x33\x82\x3e\x9b\x81\x2a\x81\x4d\x20\xd3\x49\x0b\x77\x5d\x3a\x33\x75\x0a\x66\xed\x90\x36\x43\x48\xb5\x06\x06\x3c\x9c\x90\x09\x26\xe9\x70\x11\x78\xe0\x09\x77\x5c\x4a\x35\x4d\xcd\x0c\xb8\x59\x33\xa4\xed\x3c\xab\x46\x37\xc1\xb4\x45\xc4\xc2\x45\xb1\xc6\x19\x02\x34\xb4\x70\xd1\xba\x75\x6f\x8b\x8e\x5f\x79\x8b\xf9\x0b\xe1\xa0\xb2\x18\xf7\xac\xdc\x54\xc0\xd2\x61\x04\x0a\x45\xe9\x82\xb6\x8a\x95\x4f\x18\x44\xad\xe9\x5d\x0b\xed\xa4\xcf\x73\xcd\xa2\x4c\x86\x20\x0a\xad\x85\x25\x0d\x04\xb9\xe6\xfc\xca\xcd\x83\xb8\x84\xd7\x14\x84\xe2\x26\xf2\x83\xbc\xb8\xda\x71\x58\x32\x45\x69\xbe\x5c\x73\x6d\x8d\x4d\xcd\xa5\x45\x18\x87\x6d\x39\x20\x56\x45\x58\xe1\xa3\x90\x53\x75\x9a\x30\x15\xe5\x79\x59\x70\xed\x42\xc8\x4c\xe9\x1c\x2d\xe8\x36\x66\xbc\x17\xf5\x21\x60\xbc\x17\xe6\x0c\x68\xb0\x13\x23\xdd\x47\x10\x21\xc5\x0a\x10\x2c\x86\x18\x29\x57\x50\x50\x39\x98\x4c\xc9\x23\x56\xef\xa1\x7a\x47\x0a\x0a\xa8\x49\x1b\x01\xaf\x2e\x3f\x93\xf8\xb8\x34\xbe\xc9\x12\x04\xc7\x28\x09\x05\xc4\xcc\x80\x70\x72\x1c\x8e\x09\x32\x59\x02\x51\x48\x4a\x20\x03\x5e\xa2\x99\x5f\xc2\x28\x44\xbb\x8d\xae\x4d\x2c\x8f\xab\x13\xbd\xcf\x77\xdc\xae\xeb\x1b\xb5\x1f\xf1\xb5\xd7\x35\x0e\x27\x8e\x34\xa5\x17\xc3\x82\x56\x01\xcf\x6a\x24\xe0\x90\x70\x0a\x21\x8b\x32\xad\xa3\x18\x57\x86\xbc\x7f\x8c\x93\x55\x2d\x37\xc1\x98\x9e\x8a\xfb\xdd\xac\xe5\xbe\x97\x06\x8b\xcf\x12\x3c\xf7\xe2\xa2\x53\x4e\xea\xe0\x6d\xa4\xd1\xdf\x50\x43\xf2\xf9\x67\x49\xdb\x7c\x81\x3b\x00\xd4\xea\x75\xe8\x02\xbb\x03\xee\x57\xab\xc3\xcf\x0d\x2e\xb5\x82\x79\x1a\x9f\x69\x91\x3f\x22\x0e\x89\x62\xd2\x76\x5c\x35\x11\x46\x18\x40\x4d\xa8\x5f\x45\x4c\x64\xc6\x61\xc2\x29\xf5\xf3\xee\x8a\x0a\x27\xe7\x47\x41\xb2\xa1\xa8\x2a\x66\x36\x87\x00\xb5\x8d\x16\x10\x5d\x49\x04\x18\xaa\x1e\xc2\xac\x21\x6a\x51\xaf\xd8\xb2\xd0\x14\x94\x50\x48\xb4\x4c\x75\xc6\x4a\xa1\x60\xb7\x49\xc4\x66\x3b\x09\x6d\x34\xc8\x10\x97\x77\xb5\xe4\x0f\xf5\xbe\x31\x81\x01\x8c\x60\xc8\x24\x49\x28\x8c\x99\x24\x33\x0a\x53\x66\xec\x42\x36\x87\x53\xd6\xc3\x58\xc0\x37\x48\x7c\xcb\xa3\x8d\xc6\xd8\x19\xee\x4c\xb5\x21\xb0\xb9\x1a\x0f\x15\x82\x62\xc1\x1e\x53\x48\x76\x5d\x7d\xc7\xb7\x3d\xdc\x61\xe3\x6d\xdb\x1e\x62\x50\xa1\x01\xf3\x60\xc2\x54\x86\xed\xc1\x4e\xbc\x6d\xdb\x03\x8a\xd8\xc9\x88\x4d\x9a\x03\xba\x93\xe8\xb8\xa5\xa3\xdd\x59\xba\x0f\x9c\xea\x0b\xd1\x11\x5d\xe8\x98\xdc\x75\x28\x63\xa7\x40\xba\xcb\xbc\x6d\xc7\xd9\x1c\x6b\xa7\x79\x9a\x5d\x8a\x4e\x1b\x0d\x72\xca\xcc\x5d\x3f\x81\x19\x4c\x29\xd5\x25\x97\x3f\x0d\x61\x5c\x30\x88\x63\x67\xa8\xe0\x50\xea\x6b\x98\x8d\x76\x4f\x0d\x05\xb6\xd3\x6c\x08\x97\x59\x84\xd0\x88\x6c\x1a\xe2\xc6\x8c\xc4\x1d\x77\xad\x96\xcb\x2d\xdf\x02\xcb\x34\x4a\xc9\x2f\xb5\x34\xe8\x43\x12\x52\x0a\x6a\x0e\x78\xed\x5c\x38\x13\x5e\x4b\x87\x11\x85\xed\x19\xa3\x60\x30\xd1\x1e\xc4\x4d\xde\x4e\x69\x2a\xd7\x1d\x5c\xbe\xd0\xe0\xf9\xbd\x50\x5b\x10\x53\xbf\x0f\xf9\xb3\xbc\xa5\xcd\x78\x27\x76\x5a\x77\x1a\x0d\x12\x35\x59\x4c\x21\xda\x61\x41\x37\x44\xc5\x53\x6b\xa1\x1a\x5e\x66\x64\x8a\x25\x8f\xc4\x9c\x28\xea\xfd\x8e\x74\x54\x77\xd8\x49\x8b\xd5\x74\xa6\x8b\x5d\x80\xa2\xb2\x35\xc0\x48\x84\x29\x2c\x9a\x98\x19\xda\x98\xe3\x82\x31\x18\x72\xf2\x4d\x6b\x1e\xe3\xed\x4a\xcf\x03\xcf\xed\x6f\xc6\x2b\x8c\x71\xbf\x52\xeb\x00\xe1\xfa\x67\x25\xeb\x60\x2a\x46\xad\x5f\xba\xf5\x12\x95\x84\xc7\x2a\xad\x99\xaf\xa4\xd3\x82\x29\x96\xed\xf2\xdd\xd9\xc9\x95\x11\xf2\xf3\xe9\x89\x47\x4c\x36\xbf\xc9\x0d\x84\xa7\x06\xd3\xec\x81\x60\x9c\x4c\x71\x5d\x3c\xe1\xe6\x11\x4b\xe8\x2b\xed\x20\xaa\xbd\x0c\x59\x5a\xca\x34\x12\x66\x8b\x0c\x0f\x32\x1c\x65\xe6\x60\x5e\x0c\xcb\xa9\x1e\x96\x8d\xc6\x61\xae\xaf\xb9\xd2\xda\x10\x5e\x3c\xae\x1a\x8f\xa2\xc8\xa3\x4b\x3a\x4f\xee\xb8\x5d\x27\xdf\x35\x1c\x09\x9c\xfa\xf9\xab\x7a\x33\xfa\xed\xd8\xc4\xc5\xf3\x8c\xc9\x57\x21\xd5\x8e\xef\x17\x6f\xe6\xf6\x7f\xb8\x94\x8b\x37\xb9\xcf\x9b\x06\xc9\x9c\x99\xa7\x18\xbc\x7a\x00\xc1\x0c\xa3\x48\xa3\x3f\x3c\xd4\xfb\xd6\x40\x7e\xeb\x4e\xfa\x76\xcc\xe1\x50\xb1\x11\xe4\x08\x37\xb6\x23\x4e\xbc\xb6\x28\xce\x4c\x12\xcd\x4f\x23\x1e\xd5\xee\xf4\x75\x17\x28\x36\x87\x48\xed\x4a\x02\xc7\x50\x1a\xcd\xd9\x2f\xc6\xf0\xec\x0a\x63\xb8\x8f\x63\x98\x55\x83\xf0\xe2\x71\x93\x39\x75\x60\x98\xb2\xef\xf3\x15\xca\x86\x39\xc6\xd6\x1d\xa3\xbe\x2f\x96\xb8\x3c\x9c\x2a\x9c\x36\x4b\x43\x70\xbe\x12\xac\x18\x55\xf3\xd8\x5a\xe4\xdc\xe3\xc5\x1d\xa9\x3a\x86\x80\xd0\xd7\xff\x10\x95\x0c\x5b\x63\x22\x32\x17\x04\xe7\x9c\x60\x04\xa9\xb2\x93\x95\x90\x76\xb9\x1f\x75\x8d\xf5\x37\xa4\x7e\x58\xd8\xec\x54\x2f\x26\xcd\x20\x36\xfa\x1b\xc1\xb6\xa2\x0d\xcb\x55\x78\x10\x69\x98\x45\xc6\xd4\xcf\x5f\xe9\x15\xed\x6a\x64\x7a\x5f\x5d\x31\xb0\x81\xd7\xe9\xa6\xf9\x82\xd3\x65\x63\x9b\xf5\x57\x92\x71\x6e\xcd\x99\x76\xc9\x0d\x57\xe7\xda\x5c\xc1\x39\x42\x05\xe7\xdc\x44\x67\xf3\x8b\x4c\x99\x5d\xac\xa7\xbd\x92\x5e\xaf\xd7\x5a\x08\xad\x3f\xcd\x49\x85\x80\xaf\xb1\x10\xda\xe3\xc5\x20\xa8\xc3\x5e\xda\xd8\x28\xbb\xdb\x97\x35\x77\xfb\xab\xac\x88\x04\x27\x31\x5d\xdc\x5c\x56\x43\xc7\x73\x81\x71\x8f\x84\xe1\xc8\x50\x59\xc6\xbc\x5c\x1a\xc7\xb3\x24\x88\x86\x49\xf7\x83\x4f\x24\xfb\x94\x1a\xb1\xe4\xc0\xf0\x1c\x95\x8a\x28\x9a\xa8\xe7\xc0\xb6\x65\x99\xf6\xc8\x51\xa1\xf8\x15\x16\xc1\x35\x63\xd6\xeb\xa7\xc2\x8b\x54\xfd\xdd\xdd\x0e\x77\xdd\x46\x23\x51\xff\xc8\xcc\x4e\x6c\x6f\x37\x6a\x34\x48\x62\x72\x30\x91\x33\x53\x54\xa3\x59\xb9\xcc\x0b\x4a\x18\x1d\x93\xd0\x61\x09\x84\x76\x42\x29\xdc\x20\x64\x66\xb3\xc4\xf6\xe8\x6e\x44\xe9\x36\x55\x05\x04\x8c\x04\xb6\x47\x6f\xe5\x51\x24\xaf\x15\x24\x95\xb1\x6b\x5a\xb8\x8b\x11\xda\x42\xb3\x67\x06\x33\x21\x78\x34\x98\xeb\x5b\xb6\xec\xad\xe7\xf6\x55\x3b\xe3\x0d\x20\xbd\xbe\xb6\xdf\x33\x20\x87\x7c\x10\x9e\x04\x93\xae\xd5\x52\x90\xe9\x9b\x82\x4a\x4c\xa8\x68\x76\xc2\x45\x30\x51\xbd\xbf\x4e\xfd\xce\x54\x1f\xc9\xaf\x1d\x7a\xae\xf3\xaf\x7e\xfb\x18\xea\x0c\x2f\x78\xcf\x96\x7d\x34\x1d\x27\xf9\x90\x66\x65\x81\x96\x2c\x53\x0a\xb3\xd2\x65\x25\x17\x03\x1e\xc9\xae\x75\x4b\x55\x38\x7d\x53\x15\x2e\x5d\xab\x9e\x84\xd1\x2c\xe9\x5a\xff\xdf\xff\xf5\x7f\x2b\x28\x7c\x53\x30\x83\x52\xa3\x82\xa8\x6b\x3d\x0f\x9e\x2b\x88\x28\x88\x6c\xcb\xba\x66\xa8\x6c\xe4\x1b\x1f\xe1\xec\x91\x5a\xbe\xf0\x8e\x0f\xe9\x0b\xaf\xf8\x60\x94\xde\xf3\xc2\x30\xbf\xc6\x85\x31\x4b\x6f\x6b\xa7\xd9\xdd\x2c\x9c\xb0\xec\x02\xf6\xd4\xbc\x6a\x85\x39\x4b\x2f\x53\x8f\xd2\xbb\xd3\x6b\x16\x2a\xcc\x1d\x75\xc9\x09\xbb\xe1\xc2\x11\xb3\x8e\x2d\xea\xff\xda\x3b\xea\x5f\x5c\x14\xf7\x7b\xa7\x78\x4e\xf0\x3a\x14\xe6\x05\x14\x90\xf1\xc5\x85\xe5\xaa\xec\xb2\xd1\xb0\x18\x9a\x59\xa9\x63\xd7\x18\xad\xfb\x99\xe5\x5a\x20\x98\xc5\x2c\xcd\x8a\x1f\x33\xeb\xa6\x02\x19\x76\x43\xdf\xfa\x3f\xf0\xa9\xd1\x68\xf7\x8e\xe2\xf3\x0f\xfd\xd4\xe2\xea\x88\x76\x2d\xd7\xb2\x8f\xf0\x4a\xe9\x2c\xbb\x12\xf0\x2d\x0b\x0e\xf3\xcc\xb1\xdf\xee\xdd\x9a\x1a\x39\x66\xea\xfb\x19\x53\x55\x86\x7d\xd6\xee\x0d\xf9\xe8\x78\x2a\x92\x5b\x05\x48\x45\x7d\x3a\x15\xd1\xc3\x0c\x86\xec\x18\x0e\xd8\x21\x1a\xa9\x63\x8c\xc9\x23\x7a\xc0\xce\x08\xa7\xf6\x01\x70\x66\x59\x45\x58\xd7\x17\x4c\x4b\xb6\x76\xdc\x8b\x0b\xaf\xcd\x77\xdc\x6b\x18\x64\x36\x95\x79\xd1\xee\xc0\x3f\x2b\x09\x95\x4f\x29\xcc\xf1\x20\x62\x12\x2e\xf7\xf3\x38\xa2\x38\xa2\xe9\x52\x10\x31\x0f\x42\xe6\x78\xdb\xd1\x8e\xd0\x1a\xa1\xfa\xa2\x80\xf7\xa2\x7e\x7a\x25\xd0\xb2\xfc\x90\x49\x16\x99\xd2\x67\xd7\xf2\xd5\xd0\xe8\x23\x51\x44\xa1\xf8\x9c\x19\xf9\xab\x03\xa1\x8d\x58\x30\xfd\x3a\xbf\x86\x2b\x0c\x09\x99\x9b\x33\x43\xe1\xae\xdb\x2d\xae\xb2\x43\x9a\xdf\x52\x4b\xdb\x53\xcb\x34\x1a\x46\xbd\xc0\x10\xa3\x36\x6f\x34\x2c\xdb\xba\xc1\xd8\xa8\xd1\x20\x2f\xd8\x0d\x0f\x83\x7b\xbe\xe8\x5a\x44\xf5\xdd\xa8\x3b\xf2\x27\xbe\xe5\xe0\xf3\xc5\x45\x96\x68\x59\xfe\x88\xda\x43\x38\x60\xc4\x4a\x34\xa9\x71\xde\xfb\xd9\x7e\xdf\xde\xea\xe3\xa5\xef\x81\x4d\x5e\x34\x1a\x39\x38\xc5\xab\x60\xd8\xc7\x83\xae\xea\x16\x88\xf3\xae\xda\xb6\xed\x70\x27\xde\x56\x27\xdd\xdb\x3f\xef\x92\x99\x22\xf2\x71\x20\xee\xc7\x43\xbe\x27\xd5\xa1\xf0\xe2\x62\xb6\x7b\xe7\x27\xfa\xfd\x80\x91\xdb\x77\x19\x63\xb3\x6e\x90\x37\x08\x6f\x60\xf3\x17\xaa\xc7\xd8\x6c\xba\xee\xbd\xc5\xe2\xa4\xd1\xb8\x31\xc6\xc1\x53\xcb\xb7\x3a\x62\x6a\x02\x3e\x67\xc3\xec\xc6\x36\x8f\x33\x7a\x90\x0d\xe2\x1e\x3b\xdf\x99\x76\x8b\xeb\xb2\xa9\x73\x9e\x5f\xb7\x49\x45\xc2\xd9\xf5\xcf\x49\xa3\x91\x21\xdf\xb3\x39\xec\x65\x3b\xe3\xd4\xc9\x70\xf9\xaa\x48\xd8\x63\xaa\x1b\x44\x4a\x00\x3b\x96\xcf\xd9\xd0\xe6\xf6\x81\xbd\x67\x12\x01\xd3\xe9\x7b\xea\x8b\x99\xfe\x6f\x95\xbe\x97\x37\x0e\xb5\xc3\xf5\x3d\xf5\xae\x47\xed\x14\x51\xfa\xf9\xbc\xea\x1c\x82\xb3\x3d\x0d\x92\x11\x49\x62\x78\xb0\x38\x2d\x16\xb3\xd3\xee\x5d\xbf\xdd\x53\x93\xcd\x98\x8e\xc6\x6e\x95\x0b\x0b\x3a\x1e\x9c\x52\xea\xd7\x59\x12\x75\x5c\xf5\x09\x0e\xd6\x86\x87\xc4\xdb\xe9\xac\x36\xdf\x53\xed\x9f\x11\xe8\x87\x97\x82\x8f\xc2\xf3\xda\xdb\xd7\x11\x21\xf9\x3a\xaa\xa3\xfd\x8e\x2c\xb4\x5c\x8a\x36\xba\x66\xcd\xef\xbd\x20\x64\xf9\x29\xc8\x73\xc1\x41\x35\x4c\xa4\xe2\xa8\xbd\x55\x6b\x22\x90\x1f\xce\xc3\x26\xa7\x36\x5a\xe1\x93\xef\x39\x87\xe0\x5b\x60\x41\xc6\x44\xf8\xbd\xad\x3e\x64\x9b\xa5\xdf\xb3\x6e\x5a\x60\x59\xfd\x05\x85\x87\xec\x66\x4b\x37\x11\x3e\xe6\x8f\xba\xb5\x48\x8f\x6f\x38\x13\xe4\x67\x0a\x5f\xd4\xaf\x6b\xaa\x85\xf3\xbf\x96\x07\x8e\x97\xfc\x6f\x6c\x22\x9c\x36\xee\x1f\x1f\x1c\xff\x61\x1f\x1c\xc9\x9f\xea\x83\x23\xf9\x03\x7c\x70\x24\xb5\x3e\x38\x52\x7a\xf9\x33\xac\xb0\x3f\x9b\x67\xf1\xc2\xc9\x46\xaf\x6f\x9e\xc3\xb3\xbe\x71\xb3\x45\x2e\xb5\x94\x2e\x55\xc2\x2c\x3c\x74\x3c\xba\x6d\xdb\x7c\x27\xdc\xa6\x51\x8f\x3b\x5e\x3f\x93\x12\xbf\xe1\xad\x23\x4a\x24\xf0\x76\x68\x18\xd8\x19\x77\x2c\xf5\x0a\xc9\xdc\x17\x3d\x53\x79\x3c\x02\x49\x73\xef\x1c\x41\x7a\x9a\xdf\x3f\x97\x55\x81\x8d\x3e\x51\x89\x5c\x5b\xcf\xb0\xc0\xda\x71\xbb\xbd\xe7\xc1\x73\x78\x1e\x3c\xef\xfb\x3d\xc5\xe3\x44\xbd\xd0\xf1\xfa\x3e\x9e\xb5\xc2\x9d\xec\x0e\x5a\x25\xab\xc4\x22\xa6\x75\xbf\xbf\x80\xa0\x4e\x60\xb0\xb9\x47\x90\x5c\x45\xf0\x19\x3a\x5e\xca\x5c\x43\x44\xa9\x23\x10\xc1\xa2\x25\x47\x20\xaa\x19\x38\x67\x53\x21\x76\x58\xa8\x0f\xd8\xa1\x5a\x4e\x32\x77\x26\x86\x13\x90\xa8\xec\x04\x24\x32\x9d\x80\xc8\x56\x12\x0b\x49\xbe\xf0\x56\x40\x01\x8d\xbe\x83\xdf\xe5\x13\x04\x85\x5f\x85\xa0\x22\xb8\xfa\x99\x3f\xc0\x33\x7f\xd0\xfa\x3a\x0b\x22\x89\x8e\xd9\x6a\x16\x35\xb3\x84\x15\xc2\x01\x45\xd3\x99\x70\x40\x66\xb6\x01\xa2\x5e\x12\x10\xd4\xca\x40\x5f\xf3\x7f\xdc\x89\xfc\x85\xdd\x89\xdc\xff\x3b\x33\x0b\xf7\x97\x98\x85\xff\x6a\x87\x22\xf7\xff\xbc\xbd\xec\xb1\xb9\x97\xb9\x20\x98\x87\xe7\xe6\x98\xf5\x5a\x77\xfa\x10\x54\x6d\xcc\x92\xd2\xa5\x06\x93\xdd\xa0\xb4\xc5\xc4\x20\xc1\x85\x88\xf6\x4d\x2d\x83\x59\xbe\x17\xa6\x26\x55\x65\x53\x2b\xdc\xf3\xa2\x6d\x1a\xf7\x78\x9f\x11\xc2\x6d\x8f\x36\x85\x43\xb8\x13\xd1\xa6\xa4\x6d\x12\xd9\x5e\x61\xb7\x99\x9f\x9c\xea\xb6\x12\x64\xf9\x56\x3b\xdb\x88\x18\x2e\x51\x1d\x3c\xd2\xa3\x12\x16\x8b\x7a\x5e\x5f\x5b\xe5\x09\x66\x0b\x98\xa1\xb7\x0d\x09\xa2\xbf\x80\xe4\x2a\x0b\x3b\x2e\x18\x25\xb2\x36\x34\x50\x66\x15\x73\x9b\xe4\xb2\xad\x37\xb8\x74\xeb\x0d\x77\xbc\x6e\x4f\x42\xdc\x73\xfb\x7d\x3f\xdc\x65\x51\xb7\x17\xf7\x22\xc7\xeb\x83\xe8\xfb\xbd\x18\xf7\x64\x88\x7b\x61\x1f\x1b\x72\xe5\x4d\x25\xa1\x7e\xa2\x32\xca\xb1\xe0\xc9\x38\x9e\x0c\xeb\x76\x95\xd8\x6c\xd1\x8a\x5d\xe5\xb1\xb1\xab\x60\xbf\x66\x3b\x4b\x50\xbf\xb3\x08\x4e\x92\x7a\x97\x14\x0f\x4a\x3c\x97\xa2\xcd\xe2\x02\xc4\xab\x78\x37\xcb\xbb\x8c\x85\xdd\x32\x0b\x24\x21\xcc\xe9\x33\x6f\xc6\x95\x6e\x31\x2a\x3b\xb8\x61\x64\x98\xbb\x89\x28\x34\xfb\x52\x99\x7e\xf5\x22\xe2\xc7\x98\x85\x0d\x8a\x2a\xdd\x79\xac\x25\xb2\xa8\x8e\xbf\xeb\x49\x4d\x43\xb2\x17\x29\xc2\xf9\xe3\x6f\x20\x1e\x5c\x81\xc9\x30\xaf\x1b\xf0\xbc\xf2\x5c\x1d\xc7\xbd\x9f\x28\x3c\xe5\xb9\x07\x09\xf8\xa5\x78\x2e\x88\xe0\x9b\xa1\x37\x5c\xe8\xd9\x95\xcd\xd0\x99\xcb\xd8\xb2\xf2\x59\x86\xcb\xcf\x03\x30\xd8\x92\x52\x90\xb9\x54\x4f\x4b\x30\xea\x3a\x44\xe1\xac\xe6\x82\x10\xf5\x07\xea\x6e\xb6\x39\x29\xfc\x60\x10\xe1\x78\x0a\x9e\x08\xf0\x28\xe0\xdd\xaa\x50\x79\x97\xef\x9f\xb4\x0c\x1b\xd5\x79\x04\xd3\xc8\x8d\x35\x82\x3b\x72\x47\x38\xbc\x2b\x7d\xcc\x1e\x8f\x46\x09\xaf\x2a\x90\x66\x6b\x37\xe1\x46\x6d\x39\x4d\x35\x46\x45\xd7\xf3\x0d\x41\x8d\xa0\x54\x1d\xe1\xc2\x2a\xd9\x0a\x88\x20\xd6\xb5\x09\xd0\x19\xc2\xb5\x70\x44\xf2\x0a\x09\x34\xa6\x45\x7c\x71\x19\x5f\x4c\xe1\x06\x11\x3b\x51\xa3\x11\xef\xba\x39\x0b\x98\x5c\x1b\xc6\xdf\x93\x94\xb7\x32\x6a\x25\xd2\x3e\x89\x75\x9f\x2c\xce\xc6\xe1\x84\x93\x60\x47\x34\x1a\x62\x27\x32\xf6\x04\x08\x5b\xa3\x70\x52\x72\xda\x53\xb4\xf4\x1b\x2f\x3b\x89\x0a\x47\x44\xee\x32\x89\x62\xd0\x6d\x54\x48\xb8\x21\xd4\x66\x49\x65\xee\x68\x44\x3a\x1e\x5d\xd0\x1a\xc7\xbb\x7c\x97\x71\x1a\x8e\x48\xb4\xe3\xea\xfc\xb6\x1d\xed\x30\x77\x5b\xbf\x48\xc2\x15\xb7\xa4\xf0\x71\xba\x4d\xb7\x0b\x25\x23\xc7\x89\x76\x4b\x60\x06\x94\xf6\x5b\xdc\x68\x90\xb0\x35\x88\x67\xe6\x54\x95\x86\x35\xe1\x53\x9e\xd7\xce\x96\x14\x7e\x31\x5e\x23\xd5\x3d\x4f\xb9\xfa\xff\x4b\xa6\x76\x9d\x0e\x1f\x79\xaa\x66\x88\xbe\xfa\xe6\xa7\x5c\xcc\xeb\x55\xf0\x4a\xee\xba\xc0\xd0\x1d\x6c\x34\xf8\xae\xdb\xe5\xbb\x5e\x37\xeb\x61\x12\x75\x6b\x68\x5f\x3d\xdf\xe2\x8c\xb9\x8b\x3a\x6d\xb9\xb4\x61\xc4\x85\x0c\x8a\xfa\x21\x6a\x76\x2f\x28\x84\x38\xb7\xdf\x72\x56\x1a\x27\x4e\xbf\x63\x0b\x9f\xc5\x91\x1c\x13\x17\xa7\x85\x7a\x7f\x14\xcf\x44\x42\x5c\xc0\xbf\xea\x18\xc9\x34\xd3\x2f\xb3\xc9\xe4\x23\x0f\x04\x41\xc7\x96\xf9\x1b\xb5\x65\x4d\x8e\xfc\x60\x57\x02\x75\x2a\x59\xcb\xf9\x0c\x23\x98\x0a\x14\xbd\xf6\x96\xaf\xee\xe9\xa2\x67\x2b\x1e\xd2\x74\x3f\x57\x29\x55\x96\x1a\x63\xaa\x2e\x95\x8b\x6d\x73\xda\xe4\x14\x64\xa5\xc3\xe4\x25\x1d\x86\x86\xf2\xe5\x32\x2a\x88\x6d\xd1\xe4\xaa\x51\x7a\xac\xf0\xe4\x70\x8f\xb3\xb7\x1c\x1e\x71\x46\xde\xa6\x86\xe3\x50\x3b\x70\x38\x83\xaf\x34\x6a\xba\xe6\xd8\xa3\xfa\xf1\xf2\xf1\x4a\xe1\x9c\x52\x26\xaf\xd3\xac\xb6\xa3\x3a\x9a\x6b\x87\x33\xc5\xb3\xa0\x94\xc2\x3b\xce\x1e\x19\xfb\xca\x57\x53\x7b\xa3\x76\xb4\xb0\xd9\x58\x3a\x3e\x51\x27\x7b\x99\x13\x6a\xff\xe4\x70\x7a\xeb\xa7\xcb\x07\xa6\xe8\x93\x07\xda\x12\x3f\x47\x67\xff\xd4\x5c\xdd\x27\x44\x3a\xdc\xb9\xcb\x6f\xa7\xcd\x57\x8b\xc3\xb7\x38\xe2\x2f\x70\x17\xc8\x3a\xa1\x9a\x4a\x69\xfb\xae\x7b\xfb\x67\x7e\x47\x2d\x43\x8f\xd2\x21\xd5\x46\x82\x9c\x7d\xe5\xc4\xa5\x70\x13\x1f\x3c\x0a\x0f\xf1\xa1\x43\xe1\x23\x3e\x6c\x51\x78\x82\x0f\xb7\x29\xbc\xc2\x87\x3b\x14\x7e\xc5\x87\xbb\x14\x3e\x70\x46\xde\x67\x24\x72\x33\x7b\x78\x98\x3d\x7c\xcc\x1e\x9e\x64\x0f\xaf\xb2\x87\x5f\x57\x11\x56\x3e\x4a\x1b\x74\x9f\x09\xbb\xd4\x8b\x7f\x7c\x1f\xfe\x7c\xf7\xb6\xea\xc2\xd5\x54\x95\x92\x83\x87\x64\xf5\x89\xb3\x0f\x1c\xb8\x64\xe4\xc3\xda\x49\xa4\xbd\x5e\xa5\xe4\x1d\x4e\x26\x61\xc2\x07\x71\x34\x4c\x14\x22\xbe\xd5\xc4\xf4\x83\x3c\x49\x55\x3b\x05\x8d\x66\x92\x27\x4b\x74\x9e\x93\x95\xde\x37\xb8\xbd\x75\x97\xdf\xb9\x84\xa0\x68\x5b\x01\xad\x6b\x99\x1e\x09\x3d\x5f\xa4\x64\x5c\x82\x90\x8c\x70\xf9\x87\x35\xec\xb2\x56\xa8\x76\x5f\xd6\x88\xbb\xfc\xf6\xda\x39\x9f\xf5\x18\xb6\x22\x92\x4c\x48\x08\x25\x23\xe2\x07\x5b\x71\x59\x95\x55\x23\x2f\xab\xb2\xc7\xb7\xd6\x55\xf9\xed\x9b\xfb\x79\x0f\x61\xad\x63\xc9\x42\x09\x81\x64\x24\xac\xad\x35\xfd\x7e\x49\xa5\xd6\xad\xb6\x0e\x57\x65\x5c\x0b\xe4\xef\x64\x23\x6a\x17\x4d\xac\x80\xb9\xbd\xe9\x0d\x6d\xc5\x66\x95\xf2\x40\xe9\xde\x54\x05\x49\x7b\x50\x38\x5a\xe7\x9f\xfa\x81\x34\x76\xaf\x44\xb2\xc0\xb0\xb2\x99\xc9\xcb\xd6\xf3\xb7\x6f\xee\x17\x4b\x7a\xf6\x92\xad\xea\xf8\xbe\xb4\xb0\xbf\x7d\x73\x7f\xa3\xb5\x3d\xc3\xc6\x4b\xa8\x2f\x5d\xe1\xcd\xf5\x3a\x90\xc6\x7a\x3d\x91\x6c\x26\xd5\x7a\x3d\xc0\x07\x8f\xc2\x08\x1f\x3a\x14\x86\xf8\xb0\x45\x61\x8c\x0f\xb7\x29\x4c\xf1\xe1\x0e\x85\x13\x7c\xb8\x4b\xe1\x54\x32\x32\xc9\x08\x67\x90\x3d\x8c\xb2\x87\x61\xf6\x30\xce\x1e\xa6\xd9\xc3\xc9\xda\x49\xf2\x3b\xbb\xe3\xb2\xce\xb8\x74\xe1\x2d\x06\x4d\xaf\xbd\x73\xc9\x4e\x25\x1c\x49\x46\x4e\x2f\xab\x77\x95\xf9\xbc\x42\x53\xca\x2c\xa8\x99\x70\x39\x57\x53\x82\x76\x96\x11\x5c\xd2\xda\x12\x3b\x4a\xaf\x1d\xad\x99\xb2\x3f\xc2\x8f\x9a\x25\x54\x59\xd2\x52\xe9\x26\x57\x5a\xee\xcc\x0d\xa6\x49\x31\xdd\x4d\x9c\xcb\x85\xd4\x70\xa8\xc7\x92\x1d\x19\x73\xfc\x50\xa6\x92\x71\x77\x87\xf1\xd6\xbc\xd1\xe0\xad\xf9\x8e\xe7\xba\xd9\x59\x3a\x3f\x6e\x3a\x1e\xf0\xd6\x09\xf0\xd6\x10\x78\xeb\x11\xf0\xd6\x33\xe0\xad\x03\xe0\xad\xa7\x85\xad\x65\xe5\x74\x31\x37\x24\x03\x39\x1e\xde\x9a\xaf\x44\x64\xe8\x62\x6f\x5a\x2d\x8c\x2f\xf9\xf6\xcd\xfd\x75\xf5\x2b\x57\xb0\x4c\x7e\xb5\x75\xcc\x91\xae\xab\xac\xa9\x8d\x2d\x33\xc7\x5a\xe9\x45\xf1\xdc\xe7\x70\xe2\x4b\x18\xfa\x02\x1e\xf9\x2e\x3c\xf3\x5d\x38\xf0\x5d\x78\xea\xbb\x8b\xc5\x91\xb9\x2c\x1d\x48\x78\x21\xe1\x5c\xc2\x9e\x64\xdf\x2d\xc7\x42\xa5\x33\xdf\xba\x6e\x81\xeb\x5b\xae\xb5\x80\x37\x92\xb5\xff\xfd\x5b\xd2\xfc\x6d\x68\xb7\xe1\x8b\x7a\xb9\xd5\x86\x67\x92\xb5\x7b\xbf\xfd\xf6\xef\x9b\x4d\xbb\x7b\xd1\xfb\xad\x4f\x68\xeb\xfb\xa2\xdf\x3e\x2e\xc6\xf5\xa5\xac\x38\x1b\xdb\x71\xbb\x29\xfa\x90\x91\xa8\xeb\x70\x9f\x53\xad\x49\x19\x56\x2c\xf9\x23\x9b\xc4\x3b\xc2\xd0\x29\x12\x4e\x6c\xe8\x14\xd9\xa1\x1f\x1a\x6d\xff\x2c\x4b\x93\x2c\x53\x84\x7c\x26\xc1\xfa\xed\xb7\x9b\x0d\xcb\xbc\x01\x33\x41\x0d\xbf\x93\xd6\xbf\x49\xd7\xb7\x6c\x34\x93\x27\x9f\x65\x66\xee\x7f\x61\x51\xdb\xa2\x16\x58\xa1\x89\xe4\x7e\x15\xc9\xb3\x60\x4a\x78\xc5\xd9\xb5\xb1\x68\xf4\x78\x59\xab\x0f\x50\x05\xd3\x40\xf8\xb8\xd2\x53\x6f\x64\xea\x91\x32\x73\x9b\x02\xc2\xf6\x0c\x03\x9c\x2e\xe1\xad\x33\x66\x6b\x09\x39\xfe\xe4\x5e\x66\x1d\xcf\x10\xc8\xfe\x00\xda\xd9\xe5\x68\x9f\x6f\x80\xb6\x53\x41\xfb\xf6\x72\xb4\x4f\x7f\x00\xed\xbb\xcb\xd1\xfe\xf2\x03\x68\xdf\x5f\x8e\xf6\xdb\x06\x68\x6f\x57\xd0\xce\x2f\x47\xfb\xf6\x07\x6a\x9b\xa2\xb5\x09\xfe\xec\xde\xfd\xb9\xeb\xfd\xcb\x75\xfd\x0e\xdf\xa2\xeb\x8a\xba\x57\x29\xaa\xfd\x6f\xf2\x89\x5e\x90\x9e\xed\xf4\x7f\x1b\xfe\x36\xa4\xa4\xeb\xfb\x5d\x82\x8f\xb4\xdb\x5e\xae\xc6\xdd\x4a\x35\x3e\xe1\x55\x4d\xd7\xf5\x1d\x12\xf5\x3a\x7d\x9b\x44\xbd\xad\xfe\xc5\x85\xe5\xba\x16\x5d\x5b\x91\x47\x3f\x40\xa6\x5f\xd9\x56\x53\x21\x74\xb6\xd6\x61\x7e\xf7\x03\xbd\x79\x82\x17\x4f\x8e\xb7\x0e\xef\xd7\x1f\xc0\x3b\xbc\x7c\xf0\xdf\x6f\x80\x76\x6b\xa9\xba\x2e\x6c\x84\xfc\xe6\x0f\xd4\xf9\xd1\xe5\x68\x1f\xfe\x00\xda\x67\x97\xa3\xfd\xf8\x03\x68\x0f\x2e\x47\xfb\xe4\x07\x7a\xf8\xe9\xe5\x68\x5f\x6d\x80\xb6\x3a\x5d\x9e\x9a\x0c\x9d\xc2\xac\x8e\x93\x6b\xe7\xc9\xaf\x95\x52\xbe\x5c\x36\x4f\x4a\xb8\x4a\xa8\x3e\x5c\x56\xe1\x4a\x65\x5f\x5d\xde\x07\x9f\xae\x88\x32\xb9\x1c\x25\x17\x25\xd6\x5b\xf1\x13\x85\xa0\x06\x24\x74\x8c\x2d\x54\xd6\xc3\xa6\xa2\x8f\x0a\xb0\x58\x0b\x7c\xcb\xeb\x5c\x5c\x78\x9d\x4a\x9e\x68\x29\x8f\x67\x7f\xe2\xa9\xdc\xfc\x9e\x3a\x43\x83\xe2\xa5\x61\xcb\x74\x1c\x51\x5f\x4e\x59\x12\x51\xc9\x13\x97\xf3\xa4\x28\x6c\xcb\x75\x5d\xc3\xc1\x5b\xb0\x02\x73\x26\x61\xad\x54\x3e\x59\x55\x91\x54\xa8\x52\x01\x9f\xd5\x83\x1f\x18\x55\x36\xc1\x27\xc2\xf4\xbd\x92\x09\x53\xb3\xd1\x46\x27\x69\xdd\x9f\x7c\x69\x38\x42\x58\xc2\xff\xbe\xd4\x93\x8e\xa7\xfb\xd2\x2c\x64\xb4\xb6\x10\xb9\xcb\x6e\x5f\x5c\xe8\xa2\x9e\x28\x14\xfe\x13\x9e\xdd\xbd\x19\xce\x11\x44\xc5\x99\x0e\x22\x85\x97\x92\x3c\xa9\x8e\xa4\x4d\x6e\x33\xc6\xf0\x2d\x2f\xac\x5a\xa5\xb1\x58\x96\x21\xce\x4d\x25\x91\xe9\x52\x3b\x6f\x5e\xda\xce\x93\xfa\xbe\x2f\x0e\x54\xb7\x3c\xd7\xad\xe4\x39\x5d\xca\x43\xd2\xb6\xd1\x4b\xf3\xce\x2f\x2f\x8f\xdf\x06\x09\xb7\x4d\x5b\x5a\x61\xaa\x9a\x2f\x8f\x86\xae\x80\xc8\xc7\x44\x2c\x8d\xc9\x52\xbd\x96\xca\x38\xae\x8e\x77\x55\xa6\x7b\x2d\x13\x32\xec\xea\x63\x05\x91\x4d\xe6\x78\x60\xd9\x16\xa5\xf6\x4b\x49\x64\xfb\xae\x7b\xe1\x82\xe5\x5a\xd0\xd1\x09\xb7\xee\x66\xaf\x86\x51\x6e\x7d\xf3\x73\x99\x44\xa5\xb7\xce\x56\x82\xd7\xaf\x34\xfb\x97\xc1\xd7\x2f\x36\x07\x35\x8b\xcd\x5c\xa6\xa4\x73\x2c\x6b\x17\x9b\x17\x2b\x8b\x5a\xbb\xde\x9c\x97\xb3\xbd\xa8\x5f\x6f\xf6\x56\x23\x5f\xb1\xe4\xbc\x59\x53\x9d\xfa\x55\xe7\xcb\xca\x1c\xab\x16\x9e\x67\x55\x1a\xc9\xe4\x7d\x6b\xd6\x9e\x97\x4b\xa5\x4c\x4a\x1d\x5b\x37\x27\x3f\x5f\x56\x8e\xb9\xfc\x8c\x15\x16\x7f\x2c\x97\x97\x9f\xd7\xd5\xe5\xe7\x73\xb6\xfc\x8c\xab\x63\xab\x97\x1f\x7c\x33\xcb\xab\x56\xec\xfe\xd2\x0a\x94\x41\x1a\x87\xcb\xa5\x06\x0f\x2e\x6d\xf0\x83\x95\x43\xb1\x76\x2d\x79\x5e\xb7\x0e\x7d\xce\xd7\xa1\xcb\xb2\x3f\xdd\xa8\xd4\xa5\x95\xe2\x97\xe5\xd5\xa8\x3a\x3e\xcb\x0b\x52\x75\x94\xea\x2a\xb8\x54\xd2\x37\x91\x2b\xca\x58\xb6\x5b\x9e\x21\x6f\x8d\x6f\xb7\x8c\xf4\x7b\xa2\xe4\x16\xbe\x38\xf5\x88\xaa\x9d\xb9\x66\x05\x6d\x8e\x8c\xa0\x71\x88\x11\x15\x69\x83\x96\x61\x19\x10\x5f\x4b\x54\xb0\xe4\x9d\xdf\xe6\xbe\x6d\x2a\x92\x18\x07\x0e\x41\x4a\xce\xbf\xd1\x19\x36\xf6\xe3\x04\x0d\xd8\x07\x6c\x92\xea\x28\xc1\x88\x4d\x32\xf7\x41\x43\x36\x23\x56\xeb\xd6\x53\x8b\xc2\x58\x3d\xfa\xb7\x0e\x2c\x0a\x53\xf5\x78\xeb\xb1\x7f\xeb\x99\x45\xe1\x54\xbf\x5c\xbf\x35\xb5\x28\xcc\xf1\x25\xb8\x7e\x6b\x68\x51\x38\xc2\x97\x23\xfd\x72\x8c\x2f\xf7\x2c\x0a\x87\xf8\xf4\xd1\xa2\x70\xc6\x7a\xbd\x00\x3c\xf0\xf8\x56\x1f\x7a\x01\xdc\x81\x3b\xe9\x93\x77\x07\xbc\xec\x79\xcb\x85\x2d\x7e\xbb\x0f\xbd\x18\x3c\xb8\x9b\x3e\xdd\x81\x2d\x7e\x47\xa7\xdd\x81\x7f\xa5\x8f\x5b\x2e\x78\x3f\xe3\x73\x08\x1e\x6c\xdd\x4d\x1f\xb7\xc0\x73\xb3\xe4\xbb\xd0\xf1\xb2\x74\xaf\x03\xb7\xb7\x3a\xf8\x12\x81\x07\x28\xbc\xc6\xe7\x0e\x78\x3f\x75\x74\x0e\xa1\xca\x44\x11\x7f\x1f\x7a\x12\x3c\xe8\xdc\xf9\x57\x87\xdf\xc5\x97\x2d\xf8\xe9\xa7\x9f\xee\xe2\x0b\x57\xe5\x79\x77\xb6\xd4\x9b\xa1\x9f\xb9\x4f\x92\x5c\x40\x1e\x90\x84\xee\x24\xdd\xa1\x1f\xeb\x87\xb1\x1f\xea\x87\xa9\x1f\xe9\x87\x53\x5f\xea\x07\xa1\x7f\xe6\xfe\x91\xcf\xf5\xe3\xb1\x7f\x48\x89\xa9\x80\x77\x40\x52\x8d\xaa\xdc\xbf\x8c\x44\x4d\x54\xcf\xa5\xb0\x64\x8f\x23\x0b\x87\x8d\xb9\xf5\x66\xe4\x08\xda\x96\x10\x64\x56\x0d\xcf\x79\x2b\xa0\xf5\x37\xbc\xbd\x4e\x7f\x41\x69\x4b\x84\xc7\x63\x49\xce\x20\x36\x0c\x4b\x18\x3b\x2b\xdc\x1a\x95\xbc\x41\x8a\x76\xda\x1f\x10\xe5\x4f\x92\x82\x64\x9c\xfa\x81\x02\x26\x01\x3b\xeb\xc5\xed\xb3\x5e\xe0\x78\xfd\x5e\xa7\xbf\x73\xd6\x0b\xd4\x6f\x3b\xee\x06\x8e\xe7\x07\x7d\xaa\xb5\x41\x83\x9e\xdb\xa7\x3e\x31\xcc\x36\x4a\xc5\x40\xa4\xd0\x7a\x0a\x73\x42\x21\x15\xaf\x93\xb0\xb0\x11\xc8\x1e\x26\x6b\x9c\x29\xe4\x53\x66\xa0\x7d\x29\x4c\xae\xa2\x85\x98\x69\xd3\xa7\x9e\x0f\xbe\x0a\x4a\xfd\x11\xd1\xee\x0f\xde\x09\xc4\x56\xef\xe0\x49\x82\x60\x23\x42\xc1\x70\x90\x6a\xba\x21\x8c\x59\xb8\x93\xeb\xcf\xc6\x38\xba\x99\x83\x34\xec\x48\x22\xd9\x41\x1a\x1a\x9d\x76\x33\x3f\x0c\x11\xfa\xe4\xf5\x7b\x7d\x88\x55\x5a\xee\xa4\x48\x66\xd5\x58\x76\x52\x64\x28\x0e\x69\x42\xea\xee\xfb\x33\xf4\x07\x37\xa9\x78\xf7\xc9\x37\xc6\x51\xc1\x92\x71\xac\x04\x1a\x9c\x94\x0c\x4c\x28\xed\x8e\x48\xcc\xd1\x9d\x0a\xf5\x27\x0a\xd9\x4a\x4f\x21\x13\xa8\x5d\x9d\x54\x0d\x0c\xa1\x86\x30\xbc\x0b\xa5\x5a\x89\xef\x05\xb9\xc7\xe1\x1d\x87\xf7\x1c\x3e\x71\x90\x12\x22\x09\xb1\x84\x44\xc2\x8b\x22\x2e\x79\x2f\x1f\xde\x0e\xdf\x02\xbc\xf4\xa8\xa4\x74\x68\xbf\xa4\xe7\x7a\xb0\xac\xa2\x89\xae\x26\x03\xc9\x15\x6b\x8a\x66\xcd\xea\x05\x1d\x64\x4b\x95\x12\x6a\xeb\xf9\x30\x1e\x26\x68\xc9\x3b\x0c\xe6\x09\x06\xf3\x4d\xc6\xb1\x50\x1c\x73\x02\x09\xe3\xad\x13\xc5\x41\x25\x30\xcb\x3e\x3c\xd3\xef\x13\xf6\x5a\x92\x50\x2d\xc2\xf7\xf1\x77\xa4\xde\x63\x0a\x43\xf5\x1e\xab\xb5\xf7\xb5\x24\x81\x5a\x78\xef\xe3\xef\x89\x7a\x4f\xd4\xda\x7b\x1f\x7f\xe7\xea\x7d\xa6\x56\xdc\xfb\xf8\x7b\xcc\xbe\x07\x75\xce\x04\x82\x5e\xc1\xc0\xf7\x17\xb0\x57\x07\x13\x97\x61\x6a\x1d\x2f\xcf\x7a\xe6\x11\xb4\xbf\x80\x7b\x75\x50\x49\x15\x6a\x80\x17\x43\x30\xf4\xb9\x00\xae\xfe\x8d\xfc\x58\xc0\xb1\x7f\x2a\xe0\xa1\x7f\x24\xe0\x91\x2f\x05\x3c\xf6\x85\x80\xcf\x7e\x24\xe0\xa9\x1f\x0a\x38\xf1\x03\x01\xcf\xfc\x44\x94\x3c\x14\x17\x94\xd0\xb3\x4b\x07\xfa\x5d\xe6\x75\x54\x51\x5f\xeb\x80\x3d\xfb\x7f\xfe\xa7\x74\x78\x6e\x6f\xd1\x05\xbc\xf2\xef\x09\x48\xfc\x47\x02\x0e\xfc\x99\x80\x99\x3f\x11\xf0\xd6\x1f\x08\x78\xe7\x0f\x05\x9c\xf9\x63\x01\xef\xfd\xa9\x80\x73\x5d\xfb\x0f\xfa\x67\xee\x9f\x08\xf8\xe8\xcf\x05\x7c\xf2\x8f\x05\x58\xb7\x2c\xff\xad\x58\xc0\xe1\xfa\x9e\xcf\x98\x95\x4b\x3a\xdf\x00\x5b\xd7\xff\x05\x4b\x7e\xc9\x10\x94\x00\xf3\x51\x38\x54\xa3\x70\xa8\x46\xe1\x5c\x8d\xc2\x73\x35\x0a\xbf\xa8\x51\x38\x53\xa3\xb0\xaf\x46\xe1\x40\x8d\xc2\x0b\x35\x0a\x7b\x6a\x14\xde\x5c\x36\x0a\xc5\x61\x67\xc3\x81\x28\x6a\xb6\x34\x16\x5f\xd4\x58\x3c\x53\x63\xf1\x52\x8d\xc5\x6b\x35\x16\xf7\xd5\x58\x3c\x5e\x1e\x8b\x07\x6a\x2c\x9e\xaa\xb1\xf8\x56\x8c\xc5\x59\x79\x2c\x4c\x89\xd5\x78\xbd\xc0\xea\x8c\x4d\x31\x0a\x37\x8a\xab\x4a\xf7\x39\x75\x52\xbb\xd2\x50\x9a\xa5\x8c\x2e\x2b\x65\x78\x95\x52\x8e\x56\x94\x32\x5f\x5f\xca\x09\x3b\xba\x4a\x29\xf7\x56\x94\x72\x72\x59\x29\xa7\x57\x29\xc5\x74\xcf\x0e\x66\x9c\x8e\x17\xb9\xae\xf8\x02\x86\xfe\x57\x09\x5c\xfd\x1b\xf9\xaf\x24\x1c\xfb\x6f\x25\x3c\xf4\xbf\x49\x78\xe4\xdf\x94\xf0\x58\xfd\xfb\xec\xbf\x97\xf0\xd4\x7f\x22\xe1\xc4\x7f\x27\xe1\x99\xff\x50\x56\x3c\x99\x17\x2d\x98\xac\x6f\xc1\x94\x0d\xae\xd2\x82\xaf\xfe\x23\x09\xaf\xfc\x0f\x12\x12\xff\x93\x84\x03\xff\xa3\x84\x99\xff\x40\xc2\x5b\xff\xb9\x84\x77\xfe\x53\x09\x67\xfe\x63\x09\xef\xfd\x5f\x24\x94\xed\xf6\x2b\xcd\x15\x98\x52\x76\x28\x6e\x5e\xef\x22\x50\x84\x29\x0b\x98\xab\x4e\xf8\xa8\x3a\xe1\x93\x7f\x4f\x22\xa9\xff\x2a\x17\x26\xc7\x59\x6b\xf5\x97\x75\x42\x1a\xf8\xa7\xd7\x87\x84\xa1\x17\x61\x17\x26\xb9\xf5\x52\x1e\x76\xb0\x74\xa6\x40\x63\xf8\x92\x1a\xf8\xb6\x6d\x27\x3b\x93\x6d\xba\xf5\x93\xf6\x87\x53\xf8\xa6\x40\x77\x94\x41\xee\xb7\x07\xfb\x79\x06\x09\xcd\xc2\x14\x92\x90\xed\xc9\x5e\x94\x66\xda\x93\xc4\xb6\x13\xda\xa7\xdd\x4a\x8a\x1f\xb2\xd4\x1d\x35\x86\x0e\xb1\x5c\x0b\x48\xcc\x64\x2f\xea\xeb\x20\x7e\x31\x11\x8a\xe9\x81\xb4\xa4\x88\x62\x60\xf9\xc2\x2e\xa9\xb6\x06\x41\x11\x64\xce\x64\xa3\x2f\xed\x2e\xb6\x2f\x89\xf7\x2f\xd7\x05\x6d\xcd\x06\x1e\x7a\x41\x7e\x41\x62\xe0\x20\x30\xd6\xa0\x4b\x6f\x30\x51\xb1\x95\xc5\x20\x1a\xe1\x88\x58\xaf\xac\x30\xba\x1e\xd3\x2a\xa3\x19\xb7\x5e\x21\x1e\x2b\xa9\xff\xee\xf1\xad\x66\xdc\x4a\x6c\x62\x3d\x45\x80\x6e\xdc\x7a\xea\xbb\x14\xf3\xc8\x46\xe3\x06\xb1\x3e\xe9\x8c\x8d\x06\x89\x5b\x9f\x98\x62\xfb\xa7\x98\x82\x09\x8f\x58\xdc\x7a\x74\xcb\xeb\xd8\x5e\xa7\x19\xb7\xa6\x14\x72\x6f\x16\x71\xeb\x04\x21\x4e\x98\xf5\x35\xc3\xfc\xd5\x57\xd9\xdf\x69\x84\xea\x44\x11\xb7\xde\xed\x78\x17\x17\x71\xeb\xdd\xee\x9d\xad\x52\x93\xac\x33\x84\xba\xb8\x20\x71\xeb\x8c\x79\x14\xd2\x7a\x20\x47\x1f\xb1\x33\x49\xf6\x25\x89\x5b\x73\x64\xb3\x68\x49\xa0\xa1\x78\xd7\xdd\xf4\x50\x1e\x76\x07\xe9\x71\x3c\xa2\xfe\x40\xaa\x21\x8c\xd8\x5c\xa6\x46\x12\x24\x82\x9f\x9a\xaa\x12\x68\x88\x11\xb7\xe6\x2c\x5a\x3a\xb2\x83\x6a\x42\x54\xde\x42\x20\x6e\x0d\xf3\xb4\x54\x65\x49\xd5\xd3\xbe\x4b\x6f\xfd\x84\x67\x08\x12\xb1\xc3\x9a\x2a\xd6\xd4\xef\x26\xcf\xeb\x77\x93\xeb\xfa\x7d\xe2\xeb\xeb\x57\x57\xb9\xa5\x9a\x2d\x55\x0b\x7d\x90\x12\xeb\x7d\xda\xaf\xd6\xdb\x7c\x5c\xcb\x7d\x6d\xcd\xb2\xe1\x9a\xdd\xfa\xc9\x4f\xe1\xbb\x9e\x1a\xba\x90\x65\xa3\x50\xe9\x7f\xb3\xfb\xfd\xc3\xe5\x6f\xba\xdd\x31\xde\x2c\xaa\x1a\x66\x58\xf3\xda\xd9\x3f\x35\xe3\xd6\x7b\x87\x84\xf6\x1d\x7a\xeb\x27\x5f\x25\xab\x94\xb7\x2a\x05\x6b\x9f\x19\xa3\x7e\xca\x33\x3e\xb2\x59\xdc\xfa\xd4\xf6\x5c\xf7\x42\x21\x7d\x86\xaf\x28\x01\x3a\x53\xbc\x2c\xd6\x23\x36\xe7\xe0\x0b\xc3\x3c\x28\xf3\x20\x86\xab\x14\x7a\x0d\xcb\x6c\xab\x66\xf9\x14\xdb\x0e\x76\x12\xed\xc2\x3c\xda\x65\xb3\x94\x3a\x1d\x4f\xcd\x0c\x5c\x91\x30\x60\xa6\xb1\x28\x05\xb6\x4d\xb5\x9b\xd8\xec\x43\x9a\x08\x37\x48\xcc\xce\x7a\xe1\xf5\x30\xba\xbe\x27\xbb\xa5\x6f\x7e\xd8\x47\xff\xf4\x2c\x4e\x37\xa8\x22\x40\x8e\xe3\x69\xb7\xb1\x0a\xa1\x9a\xf8\x46\x51\x91\x2a\x2a\x87\xca\xe6\x4d\xf6\x70\xdc\x3a\x67\xfb\x44\xc0\x31\x85\xe3\xd6\x07\xb6\x4f\x22\xfd\x38\x60\xfb\x44\xaa\xc7\xc3\x14\xe0\x50\x3d\x6a\x00\x7c\xd4\x00\x87\x14\x72\xa7\x30\x4b\x87\x93\xfd\x34\xee\xe9\xb1\xa1\x7d\xb4\xce\xd7\xcc\x02\xe4\x02\xa6\x81\x48\x78\x0d\xb2\x83\x14\xd9\x0d\xef\x2a\xd8\x66\x72\xf0\xcb\x65\xd5\x3b\xbc\x22\xc2\x97\x97\xd5\xd0\xbd\x02\xc2\xc5\x82\x7c\xcf\x8e\x70\xbe\x75\xeb\x1c\xae\xdf\xfa\x60\x81\x4a\xf1\xad\x5b\xce\x49\xfb\x96\x33\x6c\xdf\xfa\x68\x81\xd4\xdf\x9d\xc7\xfe\xad\x67\xfe\xad\x83\xeb\xb7\xa6\x16\xa4\x67\x3b\xbf\x67\xed\x3d\xb3\xc0\x7a\xf9\xcc\xea\x83\x3a\xe3\xf9\x3d\xeb\x60\x16\x0d\x83\xb9\x05\xd6\xb3\x38\x7d\x78\x33\xe3\x89\x7e\x7a\xcf\x87\x51\xf6\xfc\x66\x3c\x13\xe9\xe3\x2f\x22\xd4\x0f\x07\x81\x9c\x09\xf5\xd8\x87\xfc\xa0\xa8\x51\x6a\x7c\x1a\x99\x46\xa4\x51\xe8\xdc\x3a\xab\xd5\x07\x7d\xa0\xf4\x7b\xd6\xaf\x41\x34\x0b\x04\x22\xe7\x47\x22\x7d\x7c\x16\x88\xc1\xd8\x02\x6b\x6f\x2a\xc2\x09\xbe\xab\xd4\x5f\x67\x11\xc7\x9f\x89\x7a\xdb\x9b\x1d\xcf\x12\xa9\x10\xf2\xa9\xe4\x28\x38\x02\xeb\xc5\x40\xc6\xfa\xe9\x79\x7c\x9a\x25\x3e\xe0\x03\xfd\x98\x56\xf6\x99\x51\xb6\x2e\x57\x17\xa9\x0b\x34\x8b\xd3\xa5\xe9\xc2\x74\x49\xba\x0c\x8d\x5f\xa3\x46\x67\x40\x2f\x24\x3b\x90\x99\x3b\xa0\x03\xd9\x42\x0a\x85\x73\x4c\xcd\xe9\x0b\xf4\x0b\xd2\x06\x6a\xb5\x3d\x14\xf5\xf6\x4a\xd9\x2e\xf0\x03\x2a\xa3\x86\xfd\x8b\x71\xf1\xb1\x81\xb2\x68\xc9\x0a\xc6\xbc\x33\xc9\x0c\x61\x2e\x53\x28\xbd\x4c\xa3\xb4\xb0\x88\x81\x8f\x82\x3d\x14\xf0\x44\x30\xf2\x50\x5c\xa6\x3d\x9b\x5e\xc4\xac\x6d\xf7\x1f\x6a\x89\x50\x1c\x05\x51\xd3\xf7\x95\x60\x4f\x04\xfc\x2a\x18\x79\x72\x59\x5d\xb3\x2b\xa0\x0d\x6a\xfa\x07\x58\x1b\x98\xb7\x54\x58\xd3\x0f\x82\xfd\x2a\x0a\x8e\xfa\x53\xbd\xdc\xe9\x58\xc2\x47\x01\x13\x09\x73\x09\xaf\x04\x7c\x10\xa9\xdc\xe9\xdc\x90\x3b\xe5\x8a\x9d\xb9\xdc\xa9\x92\x52\x95\x3b\x15\xea\x10\xd1\x3f\xde\x3b\xfe\xc2\xde\x3b\x64\xf4\x37\xf6\xde\x91\x36\xee\xef\xe2\xbd\x23\x6d\xce\x9f\xe1\xbd\x43\x44\xcb\x61\x76\x31\x48\xbd\x07\x09\x7b\x0c\xb3\x92\x6f\xe8\xc9\x0a\x3f\x51\xa1\x9f\x10\x7d\x6f\xd9\xba\xe3\x13\xc9\x48\x84\x01\x9f\x68\x53\xc0\xac\x5b\xe7\x5b\xd0\x03\x74\xbc\x6e\x2a\x19\x0f\x56\x38\x90\x3d\xcd\x82\xea\xaf\x73\xcb\xa1\xa8\x2f\x22\x12\x3a\x18\xe8\x2c\x8b\xdb\x96\x30\xae\x83\x40\x4f\xa8\xdf\x4b\x88\x4b\x21\x21\x1e\xed\x2f\x8a\xeb\x95\xea\x95\x49\xa8\xcb\x4b\x56\x97\x95\xa8\x82\x42\xe8\x50\x88\x59\xa2\x03\x52\x27\xaa\x2c\xce\x22\x12\x33\x3b\x46\xd7\x20\x24\x60\x76\x80\xbe\x87\xf1\xca\xdd\xf5\xbd\x36\xae\xeb\x58\x91\x18\x82\x3e\x5e\x2d\x6c\xee\xe2\x79\x86\xbe\xa1\x27\x18\x63\x76\x62\x84\xa8\x8d\x6b\x83\x91\xd4\x56\x5a\xe5\x4e\x54\x6e\x6d\x88\x3f\x20\x2f\x69\xf6\xa2\xbd\x5a\x0f\xc8\x67\x95\x72\xa5\x88\x3d\xa1\xc6\x1b\x1a\x01\x6c\x0b\xe7\x19\x11\x0b\x81\xb3\x90\x60\x97\x84\xa4\xbe\x3f\x8c\x33\x55\x54\x65\x4e\x6a\x02\x4e\x9b\x4d\x2f\x05\x98\x8e\xc5\x0f\x44\x98\x36\xfd\xcf\x71\xa2\x66\x02\x79\xbc\x81\x9b\x78\xac\x68\x8c\xa8\x20\x5e\xeb\xd4\x3f\x88\xcc\xf0\x0e\x22\xfa\x81\xf8\x0e\x58\x58\x10\xd5\x05\x78\x58\x5f\x76\x12\x99\x31\x0c\xb0\xec\xcd\x0a\x4b\xa2\x75\x51\x0c\xd6\x17\x3a\x8b\x4c\xa7\xfb\x57\x28\x74\x16\xad\x73\xbb\xbf\xbe\xd0\x89\x81\x6c\x16\x5d\xc9\xe9\xfe\x20\xfa\x6b\xf9\xe3\x1c\xfd\x9d\x37\xe9\xd1\xd2\x26\xfd\x8f\x3f\xce\x7f\xfc\x71\xae\xf6\xc7\x39\xfa\xf3\xb8\xa0\x61\xd1\xf2\x5e\x1f\x24\x7b\x6c\x06\xd2\x13\xda\xc5\xa4\x66\x78\x04\xb3\x45\x7e\x78\x91\x84\x98\xbe\xa1\x38\x08\xf0\xa8\xe3\xd1\x36\xe1\x85\x5b\x25\x5a\xc4\xdb\xab\xb2\x1b\x72\xbd\xf3\xca\x3c\x18\xdd\x35\x9e\x39\xaf\x8c\x20\x64\x03\x95\x31\x3f\xca\x84\xa9\xf3\xca\x88\x85\x4b\xce\x2b\x63\x16\x95\x9c\x57\xc6\x99\xf3\x4a\xe4\x54\x2e\x2e\xb8\x3e\xd0\xc4\xa6\xf3\xca\xb0\xec\xbc\x32\x34\x9d\x57\x72\xd3\x79\xa5\x58\x80\xf8\x01\x5e\xc4\x8c\xf2\x57\x71\x0a\x64\x1c\x72\xcb\xc6\x6a\xe6\x6d\x9b\x24\x51\xa5\x7b\xd1\xfd\x4d\x9d\xfb\xca\x82\x99\x30\x16\xb3\xef\xa9\xbd\x81\xb4\xbd\x05\xd4\x17\x51\x38\x4d\x0d\xd4\xa0\x46\x6d\x99\x15\xb2\x62\x0b\x1b\xa2\x33\xaa\x3c\x3a\x49\xb1\x61\x89\xda\x0d\x6b\x9c\xed\x3a\x79\x90\x6e\x4d\xcd\xc0\xd9\xcb\x2a\x29\x17\xea\x29\x10\xea\x78\x14\x25\xdf\x77\x18\x8f\x2f\x52\x44\x8e\xfe\xef\x14\x85\x13\xd4\xb6\xe9\xd9\xb6\xe8\xaf\x0c\xa1\x25\x59\x1d\x57\x1e\x39\x9e\xe9\xfc\x87\x37\x59\x64\xc4\xd5\x8a\x7b\xb2\x4f\x78\x39\x9c\xdf\xf4\x9f\x33\xff\x5f\xf9\xcc\x7f\xf2\x77\x66\x27\x4e\xfe\x5e\x67\xfe\x93\x3f\x6f\xb7\x3b\xad\x39\xf3\x83\x9a\x1a\x2e\xcc\x58\xeb\x0e\x4c\x98\x07\x03\xe6\xc1\x88\x3d\x86\x61\x49\x00\x30\x26\xf5\x51\x65\x03\x9f\x70\xd6\xba\x63\x13\xf5\x1e\xab\x29\xe9\x48\xda\x24\x83\x26\xdf\x19\x34\x65\x37\xf2\x43\x0a\x23\x32\x5c\x21\x0b\xc0\xc8\x96\xe6\xc1\x6c\x7a\x99\x2c\x00\xe2\x4b\xa4\x01\xd3\x88\x48\xd8\x2a\x49\x03\x62\x26\x7a\x9d\x3e\x8c\x18\x2e\xbf\x3d\xc4\xd2\xa7\x30\xa6\x7e\x6f\x44\x5c\x55\xbf\xd6\x1d\xf5\xdf\x94\x10\x8c\x97\xb6\xec\x40\xd7\x62\xb4\xba\xfc\x91\x2a\x3c\x80\x2d\x0a\x09\x1b\xe9\x00\x42\x23\x55\xfe\x84\x8d\x54\xf9\x9c\xc5\x24\x61\x76\xa2\x4e\xc5\x31\x99\x31\x7b\xa6\x0e\xc6\x31\x99\x30\x7b\x42\x21\xca\x8f\xc8\xad\x3b\xe9\x19\x39\x64\x12\x67\x90\x4e\x12\x8e\xa4\x30\x60\x72\x87\x77\x1d\xcf\xf7\xb0\xfa\x09\xcc\x60\xd2\x5f\xc0\xf8\x2a\x32\x85\x21\xca\x14\xc6\xd4\x1f\xaa\x8c\x57\xdf\xc7\x47\x0c\x73\x8f\x54\x6e\xbd\x8f\x4f\xc9\x4b\x9a\xbd\x68\x99\xc2\x94\x7c\x56\x29\x57\x92\x29\x04\x1a\x6f\x60\xc8\x14\x82\x42\xd7\x8c\x05\xc0\x59\x40\xb0\xf7\x02\x82\x5d\x17\x90\x1f\xea\x37\x63\x17\x9b\x97\xe4\x00\xa7\x57\x92\x03\xcc\x37\x91\x03\x1c\x95\xe4\x00\xa7\x25\x39\x40\xcb\x83\xab\x88\x02\x8e\x7e\x40\x14\x70\x5c\x12\x05\x9c\x6e\x7e\x2a\x3f\xfe\x1d\xa2\x80\xc3\x92\x28\xe0\x0a\x85\x1e\xfe\x0e\x51\xc0\x99\x81\xec\x70\x23\x51\xc0\xaf\xd9\xcd\x8e\x68\x0d\x89\x04\x2b\x19\x04\x13\x7e\x2f\x88\x86\x16\x90\x1a\x46\x6f\x41\x69\x09\xf2\x65\x1c\x46\xb2\x16\x74\x5a\x05\x7d\x3c\xe4\x91\x0c\xe5\xbc\x16\x3a\xe4\x55\xf0\xa7\x61\xc4\x03\x51\x0b\x1c\x2d\x03\xc7\xc7\xb5\x90\xe3\x25\xc8\x83\xf9\xc9\x64\x05\xf0\x7c\x09\xf8\x85\x18\x2a\xce\xa4\x16\x7a\xb2\xd4\xbe\x93\xe9\x24\x1c\x84\xf5\xbd\x31\x5b\xee\xb8\xb3\x5a\xc0\xfd\xe5\x1a\x7f\x15\xf5\x38\x0f\x96\x40\x5f\x07\xc3\x70\x45\x75\xf7\x96\x80\x5f\xa5\x07\x86\x5a\xf0\xcf\x2b\xc0\xbf\xd5\x83\x3f\x5e\x02\x7f\x93\x39\x3e\xae\x85\x7f\xb0\x0c\x1f\x9e\xd4\xa3\xbe\x29\xaa\xa0\x6f\xe5\xa0\x16\xf2\xd3\x12\xe4\x01\xff\x3a\x53\x44\xb7\xa2\x4f\xe2\x68\x75\x86\x55\x14\x15\xac\xc9\xb3\x6a\x4c\x67\x6b\xf2\xac\x1c\xdd\xc9\xba\x4c\xab\x89\x38\x59\x93\x6d\xed\x88\x0f\x97\x32\x3e\x08\x4f\xb9\x38\x56\x9c\x75\xed\x6c\x59\x0d\xbf\xaa\xef\x8e\x56\x67\x59\xd5\x75\x87\xab\xb3\xac\xec\xb9\xb3\x35\x79\x56\x77\xdc\xb1\x99\xab\xb0\xba\xa8\x85\x95\x1c\xcf\xc3\x55\xdd\x4f\x6b\x96\xf0\xeb\xea\x30\x32\x90\xd6\x35\xd1\x12\x44\x66\x42\x3b\x6b\x2c\xe5\xd4\x6f\xb7\xcf\xce\xce\x5a\x67\x5b\xad\x58\x1c\xb7\xbd\x7f\xfd\xeb\x5f\xed\xf3\xb1\x3c\x99\x58\x10\xb2\xef\xc9\xe9\xb1\x5f\x03\xd5\x71\x5d\xb7\x9d\x9c\x1e\x5b\x80\xa0\x7e\x04\xe7\x93\x30\xfa\x52\x07\xaa\x11\xaa\xaf\x16\x9c\x9f\x4c\xea\x40\x3e\x3c\x7b\xaa\xc0\x7e\x6e\xab\x83\x4a\x32\x0d\x06\x1c\x41\xa3\x64\x65\xd1\xf8\xb5\x6d\x2d\x20\xae\xb3\xae\x40\x7d\x1e\xc1\x64\xee\x08\xdb\xf2\xad\x22\x2e\xf1\x2e\x73\x1b\x0d\x0b\x31\x58\x37\x18\x43\x0e\x3e\x0b\xfb\x25\x28\x45\xb1\x66\x96\x82\xae\x11\x20\x6c\x8d\x83\xe4\xc5\x59\xf4\x52\xc4\x53\x2e\xa4\x62\xe8\xbb\xdf\xb1\x9e\x7e\xd8\x93\x7d\x98\xc4\x83\x60\xe2\xf3\x85\xcf\x17\x66\x80\xfc\x1a\x66\x39\xab\xa2\x1c\x87\x49\x2b\x3e\x8b\xb8\x78\x10\x0f\x70\x03\x54\xf5\x55\x89\x79\x17\xbc\x7d\xfd\x38\xaf\x32\x63\x2c\x6a\x34\x64\x6b\x98\x02\xef\x4f\xb8\xfa\x29\x01\xa3\x8e\xab\x6c\x0d\x04\x0f\x24\x4f\x01\xd4\x99\xae\x92\xf4\xfc\x80\x88\x72\x58\xe2\xa4\xbe\xa2\x19\x4d\x2d\xd5\x74\x09\x1f\x6f\x61\x1d\x80\xb7\xb0\x23\xe8\x02\xa5\x9e\xb3\x9a\x91\x89\x0b\x9f\xd6\x44\x6a\xe8\x6e\xe2\x07\x94\x48\xba\x30\xaf\x33\xe9\x77\x44\x31\xa8\x35\xb0\x4a\x63\xcf\x4f\x6a\x84\xca\x58\xd9\xaf\x33\x2e\xe6\x07\x7c\xc2\x07\x78\x1b\x45\x17\x8b\x4a\xbc\xc8\xb4\x02\x23\x56\xc4\x4b\x67\x55\xb9\x86\xa5\x23\x45\x56\x3f\xe4\x07\xc6\x6e\x4d\xcd\xb2\x63\xfe\xa2\xce\x4e\x81\x37\x1a\x6b\x8a\x2b\x9d\xd7\x19\x63\x79\xfa\x8d\xec\xb9\x90\x0f\x74\xb3\xba\xf9\x79\x81\x54\x35\x53\xf5\x58\x5d\x50\x5b\x2b\xce\x65\x05\x23\xf4\xd9\x68\x69\x9e\xde\x0a\xa3\xeb\xbc\xcb\xfd\x92\x08\x60\x61\x1e\x2a\x33\x0c\xbd\x3e\x22\xaf\x3d\xc1\x64\xc3\x31\xde\x68\x38\xf6\x50\xa0\xb1\x58\xc0\x49\x1d\xae\x15\x18\x4e\x02\x39\x18\xf3\xa4\x32\x94\xa7\x97\x45\x36\x35\xb3\xa9\xea\xcf\x53\xb7\xfb\x85\xa0\x65\x14\x46\xc3\x02\xe1\x51\xa5\xd8\x51\x28\x92\x6c\xa6\xdd\x1f\x87\x93\xe1\x42\x07\xe5\x5c\xc6\x32\x91\xdc\xd0\xf2\x39\xac\xe0\x19\xa8\xbc\x82\x47\x98\xfd\x6c\x95\xcd\x60\x2a\x8c\xcb\x64\x09\xcb\x7a\xf8\xcb\x13\x91\xf1\xca\x12\xb2\xb4\x80\x60\xf4\xd4\xe2\x55\x03\x1c\x46\xfc\x5c\xa2\x1b\xf7\xf4\x7d\x1a\x08\xc4\x96\xbe\x1e\x0e\x03\x19\x1c\x1e\x32\xb9\xd8\x2f\x5a\xc9\xbe\x1b\x04\xea\xef\x43\x30\x9d\xf2\x68\x88\xdd\x52\x47\xed\x26\xe2\x56\x18\x25\x5c\xc8\x7b\x7c\x14\x0b\xf4\xdf\x9f\x57\x82\x2e\xc0\xfc\x56\x89\x48\xb8\x09\x2a\xba\x80\x12\x7d\x5d\x5a\x97\xa5\xc5\x01\xaa\xf4\x79\x35\x14\x19\x41\x6b\x97\x78\x9b\x11\x35\x37\xc9\xf8\x85\x69\xad\x48\x4b\x12\x51\x17\x66\x85\xd2\xf2\x84\xc5\x99\xd2\x72\xb2\x33\xd9\xb6\xed\x84\x92\x80\xc9\x5e\xd2\xa7\x5d\x12\x14\xa3\x16\xf7\x92\x3e\x44\xbd\xa4\xcf\x02\xea\x0b\xf5\xab\xa8\x4b\xd1\x90\xfa\xa2\x65\x54\xdb\xc9\xce\xac\x84\xa1\xd1\x20\xa1\xce\x62\x78\x78\x28\x9b\x51\xa6\x1a\x18\x30\x83\x09\x0c\x58\xea\xbe\x0e\x46\x45\x05\x87\x79\x05\x61\x6c\xc8\xbe\x46\xba\xc8\x84\xb9\xdb\xc9\xce\x48\x97\x3a\xcb\x4b\x1d\xab\x52\x27\x2c\xd0\xa2\xce\x19\xcc\xf2\x86\x40\x82\xfe\x24\x2c\x18\xa8\xcd\x97\x4c\x68\x17\x6b\x38\xf3\x07\xad\x84\x4b\x32\x81\x19\x35\x31\x0f\x11\x73\x8e\x49\xb7\x16\x12\x88\x11\x07\x99\xa5\x16\x39\x13\x4a\xbb\x04\x7b\xc7\x2c\x4b\x77\xda\xa0\x35\xe4\x13\x2e\xb9\x02\x5a\xd5\x73\xf5\xcd\xd0\xb8\x55\x5b\x28\x63\x6c\x96\xf5\xe6\xcc\x8c\xf2\x5e\xd2\x15\xcc\x0a\x36\xfc\x5e\x94\x7d\x3c\xec\xc8\xae\xe3\xf9\x7c\x57\x76\xd5\x7f\x14\xa0\x3c\x0f\x9e\x1b\x4e\x2f\xfe\x34\xa1\xe4\xb3\x7a\x52\xc6\x19\x21\xf8\x49\x7c\xca\xf7\xa4\x14\xe1\xd1\x4c\x7b\x17\x30\x3c\x66\x6c\x9e\xb1\x96\x87\xc8\x11\x7d\xae\xbf\xcb\x48\x51\x25\x5c\x1a\x15\x80\xd2\x35\xc8\xeb\x8d\x73\x2e\xd7\xa0\x8c\xe9\xfe\x2a\x4c\xba\x67\x65\x2a\xd2\x50\x78\x0d\x91\xc6\xb5\x2c\xf6\xc6\x8a\xde\xf2\xeb\x5a\x20\xcc\x72\x1f\xff\xf1\xe5\xd6\x74\xf6\x72\x3d\x6a\xfa\x43\xa4\xdb\xe8\x83\x5a\x1f\xd1\xe5\x9d\x48\x31\x34\x65\x9e\x31\x8d\x94\xfb\x2e\xe4\x67\x17\x17\x3c\x67\x64\x1b\x0d\x8e\xaf\xc5\x57\x63\x69\x7c\xbe\x86\x82\x12\x39\x9f\xf0\xb4\x69\x39\x5b\x5e\xa2\xbf\xa7\x15\xd3\xb7\x7a\x0c\x09\x97\x45\x76\x6d\x18\x67\xb8\x08\x59\x8d\x42\x9f\x9f\xd6\xf7\x7f\xd4\x5d\x57\x55\x7f\x65\x2d\xa2\x72\x2d\xbe\x91\x8a\xe3\x7b\xcc\x72\x5c\x64\x79\x17\x4c\x66\x9c\x48\x7a\x71\xf1\x20\x75\xfc\x72\x3f\x3e\x99\xce\x24\x1f\x1e\x28\x50\x85\x71\x36\x99\xd0\xba\x2c\x86\x23\x92\xfa\xce\xd6\x4b\x22\x6e\x80\x3d\xde\x37\x6a\x75\x6f\xdd\xdc\xea\xf1\x3e\x93\x06\xf0\xa3\xdf\x47\xc6\xe5\x4a\xf8\x59\x09\xc2\x28\xe1\x5d\x89\x18\xa5\x08\x4f\x08\x6d\x25\xd3\x49\x28\x49\xfb\xdf\x17\xbf\x25\x76\xdb\xf4\x7c\x52\x02\x1e\x4c\x82\x24\x79\x1a\x26\xf2\xe2\x42\xad\x8e\xef\x4b\x4e\x52\xde\x6b\x7d\x13\xe4\x58\xe2\x21\xcf\x99\x24\x64\xab\xd8\x3b\xad\xd6\x5f\x4c\x5f\x0b\x91\x59\xf4\xe2\xc2\x32\x5d\xbf\xde\xd4\xed\x2f\x96\xe2\xaf\x3a\xee\x93\xbe\x3d\x2e\x62\x75\x47\x3b\xe1\x36\x15\xad\x60\x38\x24\x68\xa2\x68\x38\x4c\xbc\x1a\x06\x4d\x6d\x55\x24\x1f\xeb\xc7\xf8\xa6\xee\xf8\xd2\xec\x79\x52\x0f\xfa\xb0\x06\xf4\xd5\xaa\xc1\x25\x2b\xc6\xb5\x7b\xd3\x7f\x48\x6b\x10\xfd\x9a\x4d\x4d\xc9\xcf\xe5\xfd\x38\xc2\xf8\x56\x96\xe1\x14\xe7\xc3\x9a\x05\xc1\xcc\xc3\x0d\xa4\x9f\xd6\x1d\xc3\xf9\x0a\xc2\x5b\xc2\x98\xb9\xb3\xb0\x2c\xdf\xa4\x6b\xce\xb3\xe2\xc3\x28\xe2\xe2\xd1\x9b\x67\x4f\x4b\x15\x96\x7c\x4d\x8d\x8b\x2c\x66\x7d\xc5\x8a\x2c\x1b\x54\xb8\x40\xb8\xa2\xba\x51\x5e\x5d\xc5\x7d\x1f\x84\x47\x93\x30\x3a\x6e\x34\x30\x45\x33\xb7\xcf\xe3\x21\x16\x91\xf1\xf6\x58\x90\xe9\x9a\x30\xc7\x30\x15\xfc\x34\x8c\x67\xc9\x4a\x2c\x25\x56\x1d\xeb\x5b\x85\xc0\x03\x16\x16\x63\x2a\x7f\x72\x52\x3a\x5b\x1a\x5a\x9b\x79\xa0\x38\x56\xc1\x74\x8d\xab\x0d\x47\xd3\x7c\x6d\xb5\x93\x4a\xd6\xc1\x24\x8e\xb8\xca\x49\x6e\xa0\xbb\x97\x2a\xbe\x8c\xed\xef\xd6\x1f\x5e\x8c\xde\xa3\xa5\x78\x88\xab\x8b\x71\xff\xc0\x62\x26\xfc\xf2\xc5\xae\xea\x56\x3a\x23\x20\x14\x8c\xf1\x42\x30\xd6\xaa\x0a\xc6\x0c\x71\x98\xb0\x3d\x5a\x8a\xf8\x2f\x28\x85\xef\xea\x34\xe8\x73\x50\x0b\xa0\x22\xae\x92\xae\xf8\x5a\xda\x4d\x4f\x97\x71\x84\x86\xc7\xc6\x5a\x06\x5a\x7b\xd0\xf1\x20\x2e\x96\xb2\x68\x27\x56\xcb\x19\x15\x68\xac\x0d\x1c\xc3\xd1\x37\x1a\x02\x7f\x6f\x30\xa6\x13\x2e\x2e\xb4\x76\x03\x26\xa8\x87\xae\xec\xd9\x76\xd8\x67\xc2\x37\x78\x9f\xfd\x53\x1e\x49\xb5\xc2\xf3\x88\x0b\xa2\x51\x80\x68\x4d\xd2\x14\x10\xad\x78\xaa\xaa\x9a\xd0\x6d\xdb\x0e\xbb\x59\x1d\x58\xe8\x1b\x3b\x0f\x56\xbd\xa4\x07\xc7\x2f\x61\x0f\xd4\xca\x9c\x65\xac\x08\x2a\x6b\xe4\x16\x5c\x9f\x5c\xf4\x4c\x29\x1f\xc5\xe9\x62\x41\x24\xda\x6b\x87\x34\x3f\x20\xa2\x4d\x6b\x68\x1a\xb2\xda\x76\x40\xc3\x11\x21\x11\x0b\x7b\x41\x3f\x0d\xe0\x9f\xf5\x54\xa3\x11\x61\x07\xb1\xac\xa7\xa8\x79\xb6\xad\xeb\xa7\x48\xf7\x53\x54\xf4\x53\x94\xf7\x93\xae\x5f\x30\x1c\x5e\x92\x85\xc5\x45\x26\x26\xb4\xed\x38\x49\x95\xdf\x98\x4c\xd7\xad\x25\x34\xba\xc6\x10\x83\x50\x5b\x5c\x4a\x71\x29\x6a\x45\x76\xba\x01\xa9\x8e\xa8\x84\xac\x30\x3f\x86\xb4\x28\x0c\x93\xd7\x0d\x33\x9b\x7e\x3f\x1f\x06\xd6\x8b\x4c\x26\x66\xc8\xcb\x7e\x1d\x1e\x60\x7c\x13\x16\xb5\xee\xcf\x12\x19\x9f\x60\xad\xae\xd5\x88\xed\xc2\x6e\x88\x27\xa9\x10\xe3\x19\xf8\x44\x65\x19\x56\xc4\xa3\x2a\x2f\xb1\xf0\xc7\xa2\x20\xba\x24\x6c\x85\x51\x28\x75\xba\x04\xd1\x3a\x9a\x1d\x1d\x4d\x78\x02\xa2\x35\x08\xa2\x01\x9f\x04\x47\x13\x55\x7a\x6b\xc8\x65\x10\x4e\x98\x48\x1f\xa8\x5f\xce\x78\xc3\x83\x1b\x1e\xa5\xc0\x5b\xc3\x30\x99\x06\x72\x30\xd6\x5f\x4c\xd7\xf6\xe3\x15\x11\x9b\x8b\x5b\x95\x74\x49\xae\x1c\x98\xa6\x57\xc8\x57\xbf\x13\xd1\xc5\xe2\xbd\x29\x35\x0a\x86\xc3\x8a\xea\x6e\xce\x3d\x19\x61\x2a\x77\x70\xe1\x31\x3e\x69\xa7\x0b\x14\x0a\xce\xab\x7c\x4c\x4a\xf9\x2c\x93\x19\x4b\x7d\x32\x5c\xb7\x28\xea\x04\x22\x41\xd7\x98\xfb\xd6\x57\xe0\x9a\x4c\x17\x3f\xe3\xab\x5a\x50\x07\x9c\x48\xf4\x08\xf6\xa3\xf5\x18\xc4\x91\x0c\xc2\x28\x59\x2d\x55\xaa\x56\x65\x97\xb9\xa9\x38\xe9\x84\x33\xc1\x8f\x15\x65\x07\x32\x16\xaf\x67\x91\x0c\x4f\x78\xeb\x24\x10\x5f\xc8\x29\xa7\x86\x24\x94\xd7\xe9\x0d\xe5\xcb\xfa\x32\x8a\x33\x51\xda\x1c\x12\xbd\x16\x6f\x6f\xd3\xe4\x2c\x94\x83\x31\xd1\xbb\x7b\xaa\x75\x47\xbf\x0f\x82\x84\x5f\x77\xfd\x74\x53\x3b\x3c\x16\xf1\x6c\x9a\xa4\x41\x85\x73\x87\x1f\x08\xe4\xf9\xe1\x88\xdc\x20\x72\x47\x50\xfa\x5d\x67\x67\xde\xd6\xb5\x23\xc1\x83\x2f\x8b\x88\xf1\x9e\xec\x43\xc8\x5c\x88\x59\x54\xca\xb7\xa5\xf3\x85\x3b\xb1\x91\xcf\x4d\xf3\xe1\xa7\x80\x45\xbd\xb0\x5f\x7c\xfd\x29\xfd\x98\x5d\x2f\xa6\xa9\x10\x68\x84\x3f\xf9\xb6\x1d\x42\x9a\x9a\x56\x20\xad\xa2\xeb\xdb\xb6\xcc\x3e\x79\xa5\x4f\x5b\xbe\xfa\xb5\x78\x34\xb4\xfc\x1c\x71\x22\xe3\x29\xa1\x8b\x05\x85\x13\xbd\x2f\x6b\x49\xfb\x9c\xb3\x9e\xe2\x4f\x0c\x17\x7d\x47\xdc\x90\xd4\xa6\xdd\x94\x1f\x18\xf4\xb6\x9f\x30\xc3\xa7\xe8\xb1\xc9\xea\xf0\x33\x95\xbf\xd7\xcb\x97\x91\xca\x5d\x4f\xbf\x0f\x73\x4e\x17\x47\xdc\x98\x5d\xc7\xe6\x4b\xf5\xd6\x2f\x23\xb2\xeb\x28\xe6\x4f\x95\x0c\xb5\x1e\x67\xe9\xc4\xfb\x5d\x2f\xa3\x02\x78\x34\x3b\xd1\xda\x73\xfe\x0d\x57\x11\xee\x28\x3c\x9e\xe5\xef\x67\x22\x94\xe9\xf3\x82\xfa\x6a\x24\x99\x00\xbe\x20\x25\xb9\xf0\x11\x87\x04\x05\xa3\x25\x72\x2f\x16\xd0\x5c\x7d\x94\xe3\x2d\x1b\xba\xc8\xcb\x05\x54\xb2\x4c\x5f\xa2\x10\x2d\x9a\x62\x2b\xa1\x16\x68\x77\x3b\xdc\x11\x6a\xaf\xce\xb7\x43\xad\x28\x27\x7b\x61\x1f\x66\x2c\x29\x84\xa6\x8a\x6a\x8c\xdc\x33\x0a\x23\xe6\x6e\x8f\x50\xfe\x39\xa2\x24\x66\x49\x6f\x84\x92\xc8\x80\xa5\x1b\x70\x0c\x71\x21\x84\x1c\x41\x82\x37\x82\x56\x96\x92\xf9\x45\x31\x25\xae\xc5\x3e\x0d\x93\xde\xa8\xcf\x82\xc2\x1b\x90\x1e\xd5\xa8\x4c\x03\x74\x91\xf6\x52\x55\xda\xcc\xeb\x6e\xa4\x78\xdd\x55\xd3\xc6\x07\x83\xd2\x2d\x8d\xec\xf6\xfa\xfe\x50\x1d\xfb\x17\x84\x53\x7f\xaa\x16\xbe\x4d\x7a\xbf\xa7\x66\x6d\xaf\x0f\x31\x73\xb7\x63\xec\xf8\x98\x9a\x82\x6a\xd9\x8b\x2b\xdd\xee\x6e\x4f\xb0\x8b\x27\x94\x04\x2c\xe9\x4d\xb4\xb7\x9d\xcc\x97\x0e\xf6\x73\x00\x45\x1f\xc2\x04\xfd\xea\xa4\x1b\x76\x40\x97\x3b\x30\xcc\x3b\x6d\xfd\x9d\x83\x86\x21\xd9\xad\x54\xad\xcb\xb3\x1a\xa5\x81\x82\xf7\xca\xaf\x6b\xf0\x6c\x4a\x6a\x07\x84\xfb\xa7\x8a\x72\xcb\x55\x12\x3c\xba\xa4\x56\x7b\x93\x49\x5e\xb1\xc3\xcd\x2a\x76\xfc\xa3\x15\xd3\x97\x52\x9b\x4d\xc3\x93\x3f\x74\x1a\xea\x49\x98\xb0\xa0\x70\xb7\x82\x93\xb0\xd7\x4f\xe9\x22\xd1\x74\x11\xb3\x40\xd3\x45\xdd\xbc\x9b\x40\x40\x1b\x8d\x59\x66\x07\x71\xe9\x7c\x52\xd9\x2a\xd7\x47\xeb\x2c\x38\x8c\x2b\x4f\x9c\x30\x7b\x99\x2e\xb6\xec\x9e\xfb\x2f\x20\x62\x25\xfc\x39\x1f\xaf\xbb\xe4\xda\xca\x8e\x3c\x28\x75\x64\x11\x9f\x08\x02\xa3\xe7\x62\x0a\x49\xf9\x75\x56\x7e\xd5\xbd\x14\x63\x2f\x7d\xd7\xd7\xe0\x51\x6f\xd2\x87\x11\x0b\xd5\xcf\x98\x8d\x32\xb4\x53\x36\xcc\x66\xd3\x00\x06\x8d\xc6\xc0\xec\xc0\x88\x52\x38\x61\xd3\x0c\xf6\x14\xa7\xa1\x51\xd2\x09\x85\x39\x0e\x41\x39\xed\x88\xcd\xca\x69\x63\x7a\x4d\x90\x01\x8c\xe0\x14\xe6\x70\x04\x53\x90\x45\x13\x8f\xe1\x10\xce\x98\x0b\xfb\xcc\xdd\x3e\xdb\x39\xd9\xb6\xed\x33\x75\x02\x39\x66\xa7\xbd\xb3\xbe\xe6\x2a\xce\x76\xd9\x7e\xa3\x41\xf6\xd9\x99\xed\xd1\xed\x1b\xe4\x90\xcd\x7b\xfb\x6a\xd8\x6d\x7b\x7f\xe7\x64\x9b\x6e\x1f\xa7\x17\x92\x87\x5a\x15\x3f\xd3\xf1\x4d\x03\x46\x1f\x71\x12\xa8\xa6\xb4\x0e\x79\x24\xb9\x60\x89\x5a\x35\xf8\x79\x28\xd9\x0c\x82\x05\x60\x62\x9d\x75\x99\xce\xaa\x87\x0d\x81\x2e\x2e\xcc\x31\xc4\xe3\xf1\x19\x5d\xa2\x23\x85\xf9\x52\x74\xe7\xa1\xdc\x0c\x9b\xe2\x04\x57\x78\x90\x43\x50\xac\x18\xa1\x29\x7d\xa9\xd3\x2f\xa6\x9e\x87\x86\x85\x57\x54\xbf\x27\x70\x75\xac\x89\x52\x51\x0d\xe1\xb6\x65\x65\x8e\xd1\x64\xa3\x41\x42\xa6\xce\x03\x45\xec\xef\x38\x13\x08\x52\x1f\x63\x75\x47\x8d\x46\xd8\x8d\x5a\x27\x5c\x1c\x73\x12\xd2\x16\xaa\xd0\x13\xb4\x18\xc6\xb4\xd2\xba\x81\xfc\x57\xc9\x3f\xf4\x11\xa7\xb4\x50\xe2\x4f\x15\xf8\xc3\x54\x81\x1f\x11\x58\x6b\xd6\x13\x9e\x3f\x17\x66\x34\x10\xe6\x3e\x99\x32\xcf\xc2\x68\xf9\x02\x21\x2d\x4d\x9e\x48\x4d\x1e\x77\x3b\xc1\xe9\x91\xe4\xcb\xce\x0c\x26\x78\x17\x07\x03\x26\xd4\xcf\x88\x4d\x8a\x6b\xc9\x20\xbb\xca\xcb\x2e\x24\x61\xcc\xdc\xed\x31\xde\xe2\x8d\x29\x99\xb1\x49\x6f\xdc\xbf\xb8\x18\xf4\xc6\xb8\x4b\x0d\x7b\xe3\x3e\x9b\xe5\x17\xa5\x11\x16\x84\x38\x54\x09\x95\x95\x28\x58\xb1\xb3\x87\x71\x9d\xcd\xa3\x82\x5d\x00\x76\xb6\xf9\x35\x6b\xc5\x12\x83\xed\x78\x06\x87\xbd\x6d\xdb\x72\x47\x6c\xe7\x6d\x8e\x20\xd4\x0c\x75\xb1\xce\x38\x1e\x04\x2c\xec\xc5\xfd\x6d\xc7\x89\x31\x2e\x39\xca\x02\x62\xcd\xe0\x34\x1a\xb7\xff\x1d\xb5\x06\xf1\x89\xaa\x6c\x76\x31\xf3\x32\x4e\x42\xa9\x95\xb9\x1b\x8d\x60\xa5\xfc\x2e\x82\x00\x07\xa2\x70\x91\x84\x4d\x49\x62\x51\x66\xf5\x0a\xc9\x27\x29\x31\xa1\x8d\x86\xe8\x72\x22\x8b\xf5\x49\x14\x4c\x93\x7f\x43\x3a\x37\xc4\x82\x5f\x5c\x10\xce\xde\x98\x17\x96\xa5\xee\x88\x0a\x0a\x09\xcb\x14\xa1\xd9\x92\x08\xd9\x92\xd2\x05\xba\x58\xe2\x4b\x54\x67\x94\xd9\xc1\x01\x73\xb7\x07\xc8\xab\x0c\x34\xaf\x32\xc0\xde\x9a\xf4\x06\xc8\xc8\x4d\xb4\x69\x9d\xa4\x8b\xf2\xc0\x87\x95\x81\xcf\xa6\xd0\x02\xd4\x72\xbc\x6c\xb8\x99\xef\x44\x3d\xb7\xbf\x64\xa3\xd0\x73\xfb\x7a\x05\xe0\xf5\xaa\xd1\xa0\x7b\x5b\x1d\x3f\x93\x1a\xb2\xaa\xec\x66\x54\x43\x6e\x44\x61\xe6\x11\x6e\x5b\xe2\x66\x2e\x0b\x0a\xab\x3b\xb0\x6d\x87\x38\xf7\x52\x8f\x0c\xfa\x58\x76\x2d\x1c\x91\x20\xdb\x5b\x83\x85\x29\xbd\x85\x24\xfc\xc6\x97\xba\x23\x2d\xb9\xbc\x61\xff\x55\x8c\xbd\xbf\xfc\x8d\x8d\xb3\xbe\xfc\x63\xea\xfd\x8f\xa9\x77\xca\x60\xad\x36\xf5\xd6\xcb\x48\x6e\xa1\x29\x52\x53\x66\xac\x53\x61\xca\xcc\xb5\x18\x17\x6c\x5b\x16\x56\x96\xa2\x6c\xa6\x2c\x4c\x33\x65\xb9\x00\x35\x40\xf3\x65\x12\xb9\xa1\xef\x3b\xe2\x21\x57\x9d\xc1\x83\xc1\xb8\xbc\xab\xac\x62\x25\x4c\x4b\x5c\xb4\xb5\xb5\x6d\x41\x0d\xcf\x8f\x4c\xf6\x44\x3f\x75\xff\x18\x57\x45\xe5\x24\x64\x71\x2f\x30\x4e\x20\x21\x84\xc5\x06\x15\x18\xc1\x09\xf4\xf2\x1b\x48\x29\xfc\x9a\x25\x4b\x6b\xb5\xaa\x25\xb0\x72\xda\xd8\xe9\x94\xb8\x3d\xdd\xbc\x5c\x2c\x97\xaa\xbf\x46\xa5\x0b\xe4\xe7\x07\xaa\xb7\x51\xef\x42\x64\xca\x19\x65\x08\x22\x8a\xfe\x44\x6e\x31\x18\x8c\x49\xa6\x07\xd4\xcd\xb0\xbe\xf4\x9f\xf9\x35\x7c\x63\x01\xf0\xd8\xbf\xef\x67\xcf\xaf\xfd\xcf\x94\x08\x90\x78\xa0\x95\xf3\x09\x5f\xe5\x3d\xb8\xda\xc0\x5d\xaf\x5b\x53\x87\xe7\xf5\x25\xff\xe2\x3f\xa5\xda\x65\x71\xca\x94\x5a\x96\x2f\x28\xf5\xbf\x11\xa3\x77\xd4\xd9\x16\xa6\xa9\x78\xaa\x5e\x1f\x70\xb3\x4a\xbc\xad\xaf\xc4\x23\xff\x1e\x56\x82\xa6\x77\x02\xba\xd4\x1e\xef\x2f\x00\x25\xb9\x7c\x58\x3b\xc2\xef\x34\x87\xbd\x6a\x90\x8b\x0d\xf3\xab\xd9\x18\x9a\x5d\x6a\x89\x82\x85\x53\xbb\xa7\x3a\x22\xdd\x50\x9c\x98\x16\x0d\x13\x81\x92\xcd\x74\x26\x64\xeb\xc6\x0d\xb7\x66\x98\x6b\xdb\xf4\xca\x97\xdd\x8f\xfe\x93\x7c\x08\x25\x3f\x97\xb5\x7e\xe3\xab\x36\x7d\x05\xe2\x4c\x2a\xf1\xab\x5f\x2f\x57\xf8\xe4\x7f\xa0\x6a\xaf\x30\x3b\xcd\xbc\x1f\x5f\x00\x5a\x01\xfc\x58\xa1\x9c\xaf\x28\x55\x70\x5f\xf2\xe5\x72\xf3\x6b\xee\x05\x88\x20\x4c\xf8\x2a\xc5\x63\x5d\x88\x22\xa8\x49\x7c\x56\x7b\x4a\x2c\xc0\x42\x05\xa6\x0f\x53\x35\x77\x06\x2b\x64\x2d\xb3\x42\x9b\xbd\x24\x7c\xaa\xb3\xcc\xc0\x7b\x2e\xf3\x5e\x7d\xd5\xf5\x09\xcd\x95\x62\x6b\x29\x71\x4d\x55\x20\xca\xef\xfd\x63\x5e\x4f\xfe\xd2\x1f\x10\x79\xa5\x3a\x97\x4e\x01\xa2\xbe\xd2\x10\xd5\xa7\xeb\xbd\x27\xf5\xd1\x50\xb9\x8f\xa9\x19\x83\x40\x8d\x01\x5e\x99\x5f\x26\xdd\xe3\xdd\x19\xf7\x13\xae\xe5\x3e\xb3\x93\xcd\xe9\x2e\x5b\x59\x0c\x79\x2e\xf0\x32\x75\xe5\xaa\x99\x10\xaf\x38\xbb\xa3\x2b\xb6\x09\x4f\x0f\xdd\x41\xbe\xb1\x5c\xd3\x17\x15\xcb\xeb\x83\x5e\x20\x12\x26\xbb\x23\xee\x0f\x38\x44\xcc\xdd\x8e\x76\x02\xbc\xde\x2e\x9a\x9f\x90\xb8\x17\xf5\xb1\x9c\xf2\xc6\x83\x7a\xb7\xac\x5c\x47\x7d\x89\x5e\x3e\x00\xbb\x30\xc8\x8f\x3a\xdb\x93\x9d\x01\x0a\x90\x14\x40\x84\x9a\xc4\x49\x6f\xd2\xcf\x8b\x0d\x47\x04\xb7\xbf\xa8\xb8\x26\x9e\xa5\xd7\xc4\x61\x76\x4d\x3c\x2b\x5d\x13\xcf\xf4\x6e\xbf\x80\xec\xd6\x71\x8d\xb6\xf6\x9a\xc5\x6a\xca\xfd\x31\x4f\x97\xe0\xc5\x02\x2a\xbc\x10\x9c\x72\xcd\x64\x1e\x72\x76\xcc\xe1\x8c\xd7\x99\x33\x2c\x31\xee\xdd\xe5\xcb\x93\xaa\x9a\x77\xbf\x0f\xab\x6f\x56\xa8\x9f\x23\xe0\xe9\x35\x0b\xec\xd7\x15\x7d\xfd\x8c\x13\x35\xd3\x34\xbb\xb0\x0a\x9f\x22\xf7\x03\xce\x5c\x43\xc7\xbb\x72\xd1\x73\x6e\x28\x73\x9c\xe7\x1a\x35\x87\xcc\xfa\x3f\x2d\x9b\xd8\xf6\x01\xa7\xf9\x31\x83\x6c\xdd\xa5\x8b\x73\xf3\x9e\xe7\x05\x5f\xa5\x95\x7f\xce\xe1\x98\xcb\xb5\x9c\xd3\xf6\x0d\xa2\x2f\x84\xa8\xde\x85\xd0\xd4\xa9\x38\xf4\x67\xbb\x50\x6e\x11\xdc\x93\xfd\x05\x24\xbc\xba\x16\x15\x9f\x11\x6b\x9f\xc9\xda\x1b\xd7\xd2\x3d\x27\x16\xdb\x68\xa4\x1a\x15\x79\xd6\x05\x64\x4d\x5d\xb5\x38\x1c\xa6\xd7\xa1\x7b\xe5\x21\xc9\x9b\xb6\x8d\x1a\x2b\xf1\x4c\x0c\xf4\xa5\xfb\x36\xe5\x4c\xe6\x2d\x58\xc0\x1b\x5e\x73\x06\x64\x7b\x18\xb1\xb3\xea\xea\xa5\x35\x98\x09\xd5\x19\x6f\x02\x71\xcc\x25\x2d\xd6\x5d\xa9\xf5\x59\x0f\xde\x3d\x4c\x47\xf9\xe2\x42\xaa\x29\x28\xd2\xeb\xfe\x83\x77\x0f\xd1\xe6\x38\xe3\xf8\xaa\xe9\x86\x40\xaf\x75\xae\xca\x99\x84\x3c\x92\x1f\x20\x6a\xcd\xf3\xb7\x8f\xd0\x23\x11\x8b\x5a\x27\x81\x14\xe1\xf9\x1b\x11\x44\xc9\x28\x16\x27\xda\xd7\xef\xc1\x40\x70\x1e\xdd\x7f\xf3\x0c\x77\xc0\x34\x16\x13\xa5\xad\x73\x85\xa2\xbf\x08\x47\x1a\xec\x5e\x3c\x8b\x86\x61\x74\x7c\x1f\x31\xbe\xe6\x83\x2c\x60\x17\x5b\xf1\x39\xaf\x58\x2f\xaf\x94\x13\xb6\x26\x7c\x24\x1d\x99\x26\x3c\xe5\x23\x09\x79\x25\x9d\xb0\x25\xe3\x69\xfe\xf1\x4d\x3c\xcd\xfd\x32\xf4\x14\x2d\x1d\xf3\x0f\xa0\x7f\x3f\xf6\x17\xf0\xa5\xda\xf9\x85\xda\x12\x76\x31\x9e\x2c\x37\x1b\x0b\x45\xaa\x32\x9e\x0d\xc6\x3c\xb9\xb8\xe8\xf1\x3e\x85\x52\xb0\xac\x3a\xaf\xbc\x6f\x52\x95\x70\x35\x25\x9f\x5d\x71\x31\xa9\x5f\x4b\xb4\xbd\xc7\x66\xab\x49\xc6\xe0\xe0\xa5\x9b\xca\xa4\x56\x96\x6b\xa9\x29\xa7\x26\x8f\xcb\x6d\xad\x11\x2e\xae\x37\x38\x37\xad\xb7\x91\x95\xaf\x85\x7a\x61\xa2\xd3\x46\x51\xf5\xe8\x4e\x0c\x38\xc3\x12\xb3\xce\x42\xb9\x0e\x32\xa9\xb7\xa0\x37\x40\xa7\x31\xfa\xb3\xa8\x85\x7b\xc3\x97\x01\xeb\x31\x7e\x29\x19\x69\xe3\xb8\xd4\xdb\xdb\x2e\xc3\xed\x4d\xea\xbb\xe8\xd9\x32\xa8\xda\xb7\x6a\x2d\x7f\x97\x41\x57\x8c\xce\xa0\x06\x70\x55\x05\x4a\x5e\x09\xd4\x11\xac\x16\xea\x9b\x01\x75\x16\x46\xc3\x15\xc6\xc9\x0f\xae\x68\x05\x8c\xe2\xf6\x97\x8f\x21\x64\x9d\x66\x04\x31\x0b\x1d\x8f\x3b\x77\x4d\x4b\xd6\x6c\x87\x3a\x77\xd3\x7d\x64\x9e\x3d\x9c\x7b\x59\x8a\x67\x9a\x94\x95\xb4\x60\x93\xf2\xee\x17\x2c\x02\x63\x07\x4b\x56\xed\x66\x01\xa8\xfd\xe4\x4d\x5c\xd9\x7a\x34\x7e\x9b\x59\xcf\x2c\x9b\x54\x6a\x75\xee\x31\x9b\x53\xdb\x82\xfc\x53\x5e\xcf\xb9\xc7\x6c\xa9\xf9\xcb\x84\xbf\x0c\x64\xc9\x5c\x51\x5f\x9c\xe4\x48\x72\x3d\xa0\xbc\x71\xe7\x2e\xe4\x68\x32\xc4\x90\xd7\xe4\x93\xa5\xce\x18\x61\xb4\xa6\xb2\x4f\x8b\xca\x2e\xd7\x31\xad\xda\xd7\x59\x30\x14\x81\x0c\x07\xf7\x67\x62\xa9\xe1\x3a\xa8\x45\x8e\xef\x95\x65\x5f\xb7\x39\x62\xb9\x6e\x4b\x13\x9b\xc2\x2f\x96\xf0\x47\x74\x01\x47\xfc\x5b\xc8\xc5\x2a\xe4\xda\xfc\x2c\x2f\xe0\xfe\x72\x01\xd7\x6d\x91\xfe\x46\xd5\x02\xc3\xa5\x02\x63\x75\x9e\x12\x83\xe5\x82\xb0\x18\xce\x6c\x0e\x92\xd9\x12\x04\xb3\x05\x84\xcc\x56\x3c\xb5\x1d\x5f\xd3\x32\xe5\x0c\x31\x24\xf9\xe8\xc1\x8c\x09\x87\xc3\x84\x85\x8e\x84\x01\x0b\x1c\x0e\x23\x96\x38\x12\x86\x6c\xd0\x1c\xd8\xa3\xe6\x48\xed\xc6\xf1\x8e\xbb\x7c\x31\x15\xf1\xe3\x40\x86\xa7\xfc\xba\x08\x86\xe1\x2c\xf1\xaf\x5b\x76\x8c\x47\x79\xbd\x3e\xe7\xa5\xd1\x3a\xd2\xf2\xd8\xd2\x60\x49\x7a\x2d\x0b\xda\x31\xdc\x55\x33\x45\x71\x52\x79\x30\xcc\x51\x73\xe6\x4c\x9a\x03\x8a\x5f\x1a\x8d\x58\x6f\xbf\x63\x26\x9c\x00\xa6\x2c\x74\x12\x38\x61\xb3\xe6\xcc\x9e\x34\x27\x70\xca\xc6\xcd\xb1\x3d\x6d\x4e\x61\xae\x27\x61\xf2\x55\x48\x7d\x09\x5b\xbc\x0e\x29\x1c\xb3\xb8\x89\x09\x32\x88\x08\x89\x1c\x5d\xd8\x20\x4e\x08\x39\xb1\x87\xce\x29\x6d\x93\x4e\x73\xde\x3c\xa2\x94\xb6\x3b\x14\x0e\xd9\x71\xfb\x08\xce\xd8\x71\x7b\x7e\x2d\xaf\xd7\xa1\xe3\x65\x75\x22\x25\xb2\xe4\xf6\x61\x73\x90\xb5\xd1\x3e\x6c\x8e\x28\x2d\x48\x7b\xcf\xb2\x63\xfc\xa4\xfe\xbb\xe0\xe2\xf0\x93\x51\x73\xbc\x3b\x68\x4e\x69\x85\x0c\xb8\x7d\xd6\x9c\x2d\xf5\x96\x7d\xd6\x9c\xe8\xc8\x34\xd7\xeb\xa7\x43\x4d\x07\x23\xed\x54\x29\x27\x8d\x33\x5b\xd0\xce\x8c\xdd\xb8\x31\x43\x92\x99\x30\xed\x00\x52\xf7\x92\xea\x98\x80\xc2\x80\x09\xfd\x9e\x84\x91\x7a\x1f\x31\x6e\x4f\x60\xc8\xa4\x3d\x80\x31\xf3\xfe\x3d\x83\x29\x9b\x75\x03\x27\xf1\x13\x27\x40\x5e\x6e\x43\xea\x11\x99\x65\x4a\x4e\x3a\x5d\x93\x74\x46\xd8\x9c\xa1\x5f\xd0\x44\x06\xe6\x8c\xf4\x10\x5c\x5c\x54\x3e\xcd\x3d\x67\xa8\x3f\xd1\xca\xf0\xa4\xc8\x28\x88\x46\x83\x4c\x51\x4f\x72\xca\xa6\xb7\x42\x3b\xa4\x30\xdd\x8d\xbb\xe6\x48\xe9\xe9\x29\x70\xa4\x3c\xb0\xec\xb1\xee\x57\xee\x4c\xb2\x1e\x76\xd4\x40\xaf\x86\xcc\x87\x64\x54\x1d\x92\x21\xf5\xa7\x4b\xd4\x53\x41\x84\xa4\x31\xdd\x65\x91\xce\x5c\xc5\xc9\x6d\x51\x0c\x4f\x42\x97\xe9\xc4\x18\xad\x84\xa6\x4a\x9c\x03\xb9\x6e\x15\xfc\x91\x2d\xc0\xb6\xc6\xe9\x52\x76\x9a\x2e\x65\x63\xcb\x76\x84\x6d\x7d\xb2\x36\x3f\x8a\xcc\x58\x02\x93\x8d\x8d\x7d\x61\x90\xc7\xca\x85\x51\xfa\x28\x83\xa8\x03\x43\x96\x75\x08\x8c\x73\xcf\x8f\x30\xcd\xef\xbf\xe1\x84\x65\x5d\x02\xa7\xc5\x92\x90\xad\x16\x2f\x1f\xc3\x11\x9b\xb7\x3b\x70\xcc\x3a\xcd\xb9\x69\x80\x6e\x98\x07\xec\x7a\x5d\xd7\xe7\x3b\x8e\xd7\x9d\xfb\xc5\xba\x61\x9a\x38\x9d\x95\xc0\x99\xd7\x3d\xf2\xf9\x0e\x73\xbc\xae\x73\x94\xe6\x48\xb4\xfb\xcc\x3c\xc7\x7e\xc9\xfe\x00\xe5\x71\xaf\x71\x76\x94\xa2\xa1\x99\xc6\x81\x33\xb9\x0c\xf2\xa2\x04\x92\xc8\x40\xc8\xbd\xe8\x78\xc2\x4b\x26\xc8\x06\x04\x8f\x86\x95\xef\x7b\x65\xff\x0a\xea\xd4\x51\x05\x79\x53\x0d\x06\xab\xd7\xe3\x6c\x37\x89\xd2\xdd\x24\xc4\xdd\x24\x86\x21\x53\xeb\xf7\xa0\x39\xd1\xc2\x9c\x61\x73\xb8\xe3\x71\xc7\xeb\x64\x07\xe3\x1e\xb7\xc9\x90\x91\x41\x93\x48\x27\xa6\xce\xa8\x49\xb8\x13\x52\xda\x1e\xd2\xe6\x0c\xa4\x3d\x6c\x4e\xfa\x15\x23\xdd\x25\x0b\x6a\xc6\x1d\x01\x33\x26\x9d\x08\x26\x8c\x04\xdd\xd8\x77\x62\xda\x3e\x25\x49\x33\xb1\x67\x4d\xbc\x91\x9e\x34\x67\x30\x62\xce\xa4\x99\xc0\x90\x71\x7b\x00\x53\x26\xed\x11\x9c\x30\x61\x0f\x60\xce\x22\x7b\x04\x47\x8c\x0c\xed\x13\x8a\x83\x4f\xa6\xf6\x5c\x3d\x1d\xb2\x13\x67\x08\x67\x6c\xee\x4c\x61\x9f\x1d\x36\x0f\xed\xb3\xe6\x19\x1c\xb0\xd0\x89\xe1\x05\x1b\x36\xe7\xce\x49\x73\x0a\xe7\x8c\x9c\xed\xb8\xe8\x6d\x8d\x36\x4f\xc9\x98\xb8\x70\xd0\x3c\x68\xee\x3b\x2f\x9a\x2f\x28\x85\x3d\x46\x5e\x34\xcf\x9c\xc3\xe6\x39\x6d\xef\xc3\x1b\x46\x9c\x17\xcd\x43\xe7\x4c\xbf\x7e\xc1\x8f\x76\xfa\xf1\x99\xfe\x68\xa7\x1f\x5f\xb2\x3d\xe7\x08\x3e\xb3\x37\xce\x31\xbc\x66\x5f\x9c\x23\xb8\xcf\x9e\x39\xc7\x79\x30\xf5\xe6\x4b\xfb\x73\xf3\xf3\xee\xeb\xe6\x6b\xfb\x7e\xf3\x7e\xa3\x41\xf6\xd8\x17\x78\xc3\x9e\x51\xf8\x3e\x38\xf7\xf7\x60\x30\xf7\xdf\xc0\xb9\xeb\xf9\xce\x00\xe6\xea\x67\x04\xe7\x9e\xe7\xef\x35\x49\xd8\x3e\x70\x3c\x0a\x73\xcf\xf3\xdf\x64\x6f\xda\x18\xf5\x19\x5b\xba\x37\xdb\x07\xc9\x0e\x40\xb0\x09\x71\x33\x91\x28\x84\xec\x05\xc4\xec\x1c\x02\xb6\x07\x09\x26\x95\xdd\x5c\xe0\x1e\x02\x63\xd8\x67\xf6\x0a\x45\x4a\x38\x60\xf6\x0a\x99\x2d\xbc\x60\x61\xfd\x17\xe7\x08\xce\x59\xbc\xf2\xdb\x1e\x1b\x90\x73\xe7\x05\x85\x67\xec\x7c\xf7\x05\x0a\xf4\x2e\x2e\x48\xc2\x26\x6c\x46\x28\x85\x83\x9d\xfd\x46\x83\x8c\xd9\x01\x1c\xb0\x7d\xd8\x67\x63\x0a\x07\xbb\x9a\x1a\xc3\x11\xd9\xdb\x3d\x76\xf4\x4b\xd2\xd2\x8c\x32\x39\x68\x0e\xc9\x0b\x0a\x07\xcd\x13\xa2\x46\x32\x69\x05\x62\x80\x51\x7a\x0e\xe0\x05\x9c\xc3\x8d\x67\x14\xf6\x35\x82\x46\x83\xe4\xb9\xf6\x9b\x43\x72\x4e\x61\xbf\x79\x42\xce\x4b\xb9\xf6\xe1\x1c\x5e\xc0\x33\xaa\xd9\x1d\xec\xa3\x97\xf0\x19\x5e\xb3\x17\x70\x9f\x9d\xc3\x63\xf6\x02\x1e\xb0\x73\x78\xce\xf6\xe0\x29\xdb\x83\x5f\x58\x50\xdf\xd2\x76\x07\xbe\xb1\x5f\xf2\x82\xa3\xae\xbd\x42\x5e\xec\x9f\x92\xfd\xe6\xbe\x7d\xd0\x3c\xa0\x14\xde\xb2\x29\x19\x90\x03\x67\x5f\xe5\xb7\x57\x48\x9e\x29\xdc\x63\x6f\xe1\x11\x7b\xab\x3a\xef\x5b\xda\x39\x58\xd3\x77\xec\x8c\x7c\x6b\xab\x46\xfd\x42\x29\x7c\xc5\xb7\x03\xfd\xb6\x4d\x9e\x3b\xac\xd3\x7c\x47\x35\x7c\x97\x3c\xb6\xd9\xbb\x26\x7b\xd6\xf5\x7c\xc7\x83\x07\x0e\x7b\x47\x7d\xf2\x9c\xb9\xf0\x98\x3d\x60\xe4\x85\x7d\x8e\x4c\x15\x79\xaa\x32\x7d\xcd\x33\xbd\xb6\xd9\xd7\x3c\xd3\x7d\x87\x7d\xa5\x3e\x79\xca\x5c\x78\xcd\xee\xe7\x99\x90\x44\xdf\x33\x35\x2e\xaf\x29\xdc\x64\xaa\x02\xaf\x29\x3c\x64\xaa\xcf\x1f\x50\xf8\xc8\x54\x05\x1f\x20\x33\xfa\xd6\xac\xfd\x13\x78\x85\xb9\xee\x53\xf8\x15\x73\xdd\xa7\xf0\x01\x73\x3d\xa6\xf0\x09\x73\x3d\xc6\x5c\x7b\x3b\xf3\x46\x83\x3c\x61\x6f\xc8\x7b\xb8\x09\x1f\xe0\x13\xbc\x82\x5f\xe1\x21\x7c\xa4\xa9\xf7\x5d\xce\xd9\x7b\xe7\x09\x86\xd4\xe6\xec\xa6\xf3\xa4\xe7\xf5\x41\x70\xf6\x4a\xa7\x45\x9c\xfd\xaa\xd3\x42\xce\xbc\xf6\x09\x39\x24\x84\xf3\xa6\xe0\xb6\xe4\xcd\x88\xd3\x36\x39\x55\xef\x1c\xdf\x25\x57\xeb\x85\xc0\xcf\x11\x7e\xd6\xec\x66\xcc\xd9\x29\x51\xe8\x9a\xea\x9f\xad\xd0\x35\xd5\x3f\x7a\xed\x1e\x9b\x92\xb7\x40\xf6\x9d\x58\xa1\x0a\x39\xc6\x38\x7c\xa4\x13\x0f\xb2\x44\xdb\xa3\x74\xb1\x78\x9a\xf6\xeb\xa3\xac\x7f\x5f\xb2\x2f\x44\xb5\x47\xb5\xeb\x00\x1e\xc1\x33\x0a\x9f\xd9\x17\x92\x36\x2f\x4b\xca\xa9\xf8\x65\x6b\x70\x6e\xbf\x6c\x9d\xbb\x1e\xbc\x6c\x0d\xe6\xf6\xcb\xd6\xdc\xf5\x28\x3c\xda\x79\xdb\xd5\x14\xad\x00\xf0\x13\x3c\x82\x11\xc1\xcf\x80\xf0\x14\x46\xe4\x33\xbe\x7e\xd6\xaf\x37\x9e\x51\x9f\x6c\x90\xe9\x65\x6b\xee\xe1\xab\xa7\x33\x95\x26\x9c\xfa\xac\xab\x81\x30\xba\x72\x5e\x5a\xd8\x60\x6e\x7f\xc6\x0f\x9f\xd5\x87\xcf\x55\x0c\x2a\x55\x7d\xd2\xa5\x66\x90\x79\xee\x72\x55\x29\x56\x36\xed\x85\xf7\x70\xb3\x5c\x8d\xd7\x70\x1f\x81\xfc\x32\x48\xbe\x0c\x3c\x4f\xbb\xfb\x9e\xd9\xed\xaa\x7f\x55\x3f\xef\x83\x73\x2f\xeb\xf7\x8c\xbc\xb2\xb4\xa4\xa5\x0f\xbc\xab\x3a\xfe\x5e\x4d\xc7\xdf\xfb\x91\x8e\xaf\xc9\xb4\xa6\xe3\xf7\x7f\xa0\xe3\x6b\xfa\xfd\xde\x46\xfd\x6e\x16\xfb\x00\x1e\xc3\x33\x95\x94\x76\x8b\x9a\x82\xfa\xd0\x93\xf7\xbc\x0b\x2e\xce\x59\xb4\x0b\xd5\x42\x08\x42\x61\x92\x5d\xb0\xe8\x7d\x09\x26\xb6\x65\xa5\x9a\xb0\xe9\x87\x71\x6b\xc0\x23\x29\xe2\x70\x58\xdd\xec\x04\x23\xab\xf6\x2b\x75\x6a\x5f\xb1\x66\xb6\x3b\x10\x31\x62\xaf\xd8\xb3\xec\xeb\xf6\x8a\x1d\x8b\xb6\x3b\xce\xbc\xdd\xc9\xc4\xc5\x43\x12\xd1\xa6\x80\x13\xfc\xe9\x6b\x67\xb5\x39\x23\x58\xe7\xec\x7d\xd9\xa7\x6c\xad\xbd\x83\xec\x4a\x7f\x42\x6c\x89\x2e\x80\xb9\xc2\x6b\x70\x8f\x9b\xfa\xb2\x5f\x71\x4d\x3a\x21\x36\x47\xbc\x12\xbd\xf2\xc6\xa2\xa6\xc2\xeb\x10\xaf\xbc\x7f\xcd\x11\x0b\x85\x78\x1a\x0c\xaf\x82\x35\xbb\xb7\xe5\x5d\xf5\x5b\x77\x73\x5b\x2a\x22\x52\x45\x14\xec\xf2\xa6\x21\x81\x2e\x43\x1b\x2a\xb4\x19\x8f\xbd\x19\xd2\xf8\x52\xa4\x71\xda\x1d\x57\x40\x1a\x5c\x8a\x34\xd0\x83\x17\x49\x7e\x2e\x37\x0d\xb4\x54\xea\x61\xf4\x64\x9c\x2c\x60\x6c\x38\x1b\x31\xdc\xd5\x90\x97\x7f\x43\xcf\x70\x9f\x97\xfc\x96\xa1\xe2\x22\xbc\x5e\xef\x31\xee\xe5\x55\x3c\xc6\xdd\x2f\x2c\x3c\xb3\xe1\xe1\x8b\xfb\x25\x73\x50\xc1\x83\x03\x45\xba\x25\x45\x35\xcc\xa1\x16\x4e\xe6\x2e\x40\x81\xec\x9b\x6a\x18\x25\x80\xe7\xc1\x73\x2d\x6b\x5d\x81\x05\x6f\x0e\x14\x1a\x05\x53\x41\x43\x0a\x3c\x17\x17\x6e\x2e\xf0\x55\xef\x8d\x86\x97\x8b\x73\x10\x05\x4d\x1d\x1a\x64\x0d\x29\xad\xd9\x46\x7d\x3c\xa7\x78\x59\x00\x66\xad\xc8\x80\x53\x9b\xca\x42\x6c\x65\x96\x92\xd9\x56\x9a\x95\xf7\x0c\xfc\xdd\x72\x25\xd2\xcd\x05\x75\x38\xcb\x5f\xd2\x3d\x06\x35\x57\x4d\x93\xc6\x12\xe6\xce\xb5\xd4\xd1\x8e\xbf\x12\xed\x22\x95\x70\x3c\x5e\xe5\xa7\xee\x7e\x79\xc8\x1f\x98\x84\xdc\x73\x8d\xd3\xef\xf3\xd2\x17\x4f\xbb\x10\x7c\x5a\xa7\xf3\xcb\x26\xe8\x1f\x21\x3f\xab\x3d\x86\xb8\x72\x46\x0b\x48\xee\x7f\x6c\x02\x03\x18\x31\x12\xb0\xd7\x24\xa0\xb4\xd0\xf2\xbf\xe1\xa1\xe2\x78\xea\x79\xa7\xd1\x20\x31\x0b\xc9\x00\x4f\x52\x99\xcd\x00\xd3\x7e\xbb\x6e\x90\x64\x67\xd4\x68\x08\x32\x41\xd3\x00\x48\x20\xa0\x94\x31\x36\x6c\x34\x08\x19\xb2\x1b\x43\xda\x8d\x5b\x39\x89\x11\xea\xeb\xb7\xfd\x68\xa8\x4e\x65\xc3\x46\x23\x6e\x61\x77\x12\x9b\x93\x09\xe6\x06\x5b\xa6\x4f\xb8\xc1\x0f\xb2\x2d\x5d\x37\x03\x06\x4b\x5b\xfa\x0a\x43\x3f\xee\xe7\x77\xa0\xbc\xfb\xc0\x9f\xa0\x05\xf4\xaa\x3d\xb2\xb8\x2e\xed\x3e\xf7\x27\x44\x52\x08\x5a\xe7\x7f\xc8\xbe\x1b\xe0\xbe\x1b\xb4\xe6\x7f\xc8\x6e\x1b\xe0\x6e\x1b\xa4\xa6\xa7\x75\x0e\x2a\xaf\xb6\xd1\xde\xb8\xa1\x91\x0a\x85\x74\x30\x13\xa7\x1b\xef\x80\x3c\xb5\x90\xc9\xa8\x23\xa2\x88\x28\x44\x44\x57\xd9\x4e\xf2\xcd\x84\xe9\x11\xf6\x11\x1b\xd3\xf5\x8a\x16\x10\x2c\xe0\x97\x25\x7b\x5c\x7d\xd7\x96\x92\xb8\xa6\xf8\x94\x3e\x02\xf6\x78\x49\x2a\x31\x20\x99\xf1\x17\x8c\x60\x08\x63\x98\xc2\x09\x23\x13\xf6\x9a\x4c\x0a\xaa\x3f\x65\x37\x3c\x98\x57\xed\xb7\xcc\x57\x63\x4e\xc4\xea\xd0\xcf\x02\x32\x4d\xe7\x84\x36\x7c\x60\x27\x68\xf9\xa0\x8d\x7c\x06\x3b\x27\x8d\x46\x48\xc6\x6c\xd2\x1b\xf4\x61\x00\x13\x9c\x17\xa7\x34\x1c\x91\x53\x76\xe3\x94\x8e\xd8\x00\x59\xe5\x74\x0d\x27\xd9\x31\x20\x7d\xd3\x72\x02\xd4\x75\x2a\x66\x4c\x19\x04\x86\x6c\xe0\x78\xdb\xc3\x5d\x36\xda\x76\x9c\x21\x4d\xd2\xa9\x34\xef\x0d\xfb\x70\xd4\x1b\xf6\xe9\xb5\x72\xde\x74\x37\x20\x74\x71\xda\x68\x90\x79\x6f\xd0\x67\x36\x27\x63\xac\x1c\x1c\xe1\xab\xcc\x5e\x33\x64\x51\xd7\x8e\xd2\x34\x5f\xe5\x00\xd1\xb5\x45\x96\xa0\xf2\x50\xba\x08\x47\x64\x5a\xe1\xbc\xa7\xc5\x34\xcd\x87\x61\x54\x08\x72\x9f\x12\x9a\xd1\x30\x09\xa9\xa6\x3c\x12\xd0\x8c\x72\x48\x4c\xaf\x3a\xbb\xed\x75\xd3\x7b\x42\x8c\x09\xee\xfa\x6a\x5e\xd6\x4e\x0a\xd1\x15\x05\x5e\x81\x4b\x81\x2d\x28\x0c\xfe\xa0\xb5\x20\xa5\xd8\x01\x2e\x09\x83\xd6\xb9\xfb\x87\x60\xcd\xd1\x79\x7f\x3c\x87\x3c\xc0\x29\x38\xf8\x83\x56\x2f\x91\xb7\x5f\x22\x52\xf7\x0f\xc1\x9a\xa3\xdb\xb0\xfd\xe2\x6a\xed\x17\x0a\xb7\x9a\x45\x1f\x5c\xa6\x1f\x3e\xba\x35\x61\x1d\x46\x84\xb6\xce\x09\xa7\xad\x39\xc1\xab\x71\x0d\xe9\xad\x87\x14\x39\xe4\x87\xd5\x90\x51\x81\xf3\x4a\xcb\xfe\x9a\x53\x0a\x2e\xfb\x03\x5c\xad\x07\x57\x59\xf6\x83\x7c\xd9\xcf\x16\xc0\x98\x22\xa2\x00\x11\xfd\xc8\xb2\x1f\x33\xbd\x62\xf8\x88\x8d\xe9\x7a\xc5\x0b\x18\x2c\xe0\x5b\xbd\xb6\x53\x1a\xde\x44\xee\xf2\xae\xfa\xcf\x78\xea\xcf\x13\xde\xd6\x3a\x53\x5c\xc0\xbd\x65\xb9\xf6\x5b\x90\xec\x5b\x46\x8f\x91\x16\x6f\xab\x8d\xe4\x58\xed\x23\xea\xad\x96\x5d\x9a\x69\x86\x09\x86\x4b\x2c\xd3\x98\xb9\x30\x35\x36\x8b\x21\x85\x93\xf2\xeb\x29\x5b\x25\xa9\xcd\x6e\xa0\x4e\xc2\x88\x1c\x43\x1e\x3d\xc8\x39\x86\x55\x92\xf0\x53\x9a\xdf\x6a\xab\x4c\xf9\xfd\xe7\x9c\xb6\x87\xb0\x4a\xe0\x00\x87\xec\xa8\x49\xe6\xd9\x6d\xc5\x92\xbb\x57\x32\x62\x27\xbd\x69\x2f\xe9\xb3\x04\xb7\x85\x82\x9d\xdb\x75\x1b\x0d\x32\xb6\xd9\xa8\xd8\x01\x6f\x30\xd9\x9d\x6a\x6b\x3e\x33\xc2\xbb\x61\xa4\x48\x4e\x7a\xbc\x0f\x27\x3d\xd1\xa7\x0b\x4a\x7d\x9d\x49\x34\x1a\x35\xb9\x8a\xa1\x15\x24\x50\xb9\x82\x9e\xc4\x5c\xe8\xb6\x77\xc2\xc6\x5d\x32\x77\x86\xcd\x43\xda\x1e\xfb\x79\x7d\xe1\x94\x0d\xe8\x8c\x4d\xb5\xa1\xea\xa9\x4d\xb0\xfe\xb3\x3e\xdd\x75\xbb\xa3\xe6\xc4\x77\xa9\x7d\x08\x2a\x81\x7d\x47\x7b\xf6\xa0\x37\xeb\x03\x3a\x86\xf1\x93\xd4\x4a\x6a\x04\xc5\xc1\xdf\x3f\x85\xec\xb8\xee\x0f\x20\x3b\x64\xfb\x47\x99\x3d\xd6\xf5\x93\x6c\x43\x4a\xa3\xa4\xfd\xa1\xcc\xa1\xea\x12\xf4\x22\xb9\xb1\x4c\x86\x67\xc4\x9b\x71\x84\x0a\xc5\xa6\xeb\x9f\x3a\x3b\x65\x99\x91\xf3\xbb\xaa\x00\x64\x95\x1d\x75\xc1\xa5\x2a\xc6\xed\x8a\x02\x90\x4b\xa4\x2a\x19\x73\x79\x35\x01\xc8\x25\x52\x95\x00\xd7\x9a\x60\x01\x8f\xd8\x57\xf2\xd8\x98\xf5\xef\x8c\xd3\x37\xae\x8f\xbc\xe2\xf1\x32\x7f\x93\x06\x01\xa8\x19\xff\x8e\x70\x22\x8b\x80\x98\x32\x47\x00\xb2\xe2\x09\x33\x73\x36\x82\xdf\x8b\xb8\x41\x01\xb6\x8e\xb7\xce\x21\x53\xef\x6d\x9d\x03\x6f\x69\x95\x09\xc6\x5b\xf3\x22\x7d\x0e\xfc\x0a\xcb\xb7\x24\x5f\xb5\xfd\x07\xa1\x69\xa5\x16\xc0\x17\xef\x36\x14\x29\x60\x06\x93\x5f\x5d\x23\x5d\x28\x60\x35\xbb\xb9\x4e\xc8\xa0\x61\x0d\xb6\xb6\x56\xdc\x50\x85\x4d\xf1\xd6\xc9\x08\x4c\x50\xcd\xc3\xca\x42\x19\x42\x71\x89\x4d\x27\x57\x9d\xe0\x34\x73\x37\x7e\xb3\x66\xff\x7d\x4f\x14\x9f\xaa\x99\xd3\x47\x94\x2e\xe0\xe1\xf2\x4e\xf2\x8b\x01\x01\xf9\x68\x6a\x4b\x60\x64\x1a\x20\xca\x1e\x3d\x08\xd3\xc7\x8f\x68\x62\x98\xb2\x08\x97\x8e\xbc\x31\x3b\x79\xeb\xdc\x35\x3e\xba\x50\xdc\xe4\xab\x6f\x9e\xf1\xcd\x5b\x43\x33\xa6\x70\x99\xb7\xe6\x06\xca\xb9\x42\x69\xca\x88\x79\x6b\x6e\x60\x9d\x2b\xac\xf9\x58\x55\xe6\xa1\xd1\x6f\x02\xe3\x58\xe5\xd9\xd2\x9e\xc8\x87\x6e\x75\xc6\xa8\x26\x63\x56\xe6\xe3\x3a\x91\xb8\x91\x37\x5c\xce\xfb\x31\x2b\xf4\x45\x9d\xd8\xdb\xc8\x1b\xd7\xe4\xf5\xfe\x80\xd9\x05\x1f\x6b\x99\x98\x1e\x91\xcc\x96\x86\x8a\x15\x77\x32\x35\x94\x76\x47\x91\xa8\x41\xb0\x7d\x43\x42\xf4\xa4\xac\xe6\x81\x7a\xfa\x25\xe7\xb1\x4b\x3a\xe1\xa6\x47\xd8\x7c\xcd\x79\x02\x82\xbd\x82\x88\x3d\x80\x90\x3d\xaf\x11\x10\xa5\xf6\xe8\x90\xb0\xcf\xa9\x7f\xa1\x82\x5b\x99\x94\x3d\x0c\x27\xa8\x1b\x56\x4e\x41\xed\xc1\x8b\x0b\x12\xb3\x40\xdf\xbe\x73\x12\x43\x99\xfd\x21\x68\xa7\xaf\x3d\x15\x95\x6f\x4f\x12\x5a\x0b\x3a\xa8\x05\x55\x2b\x78\x59\x3e\x14\x2c\xc9\x87\x82\xb4\x9f\x36\xdf\x5a\xb3\x3d\x55\xf7\xe0\xe6\xbb\x6a\xb6\x9d\x9e\xff\xa1\xbb\xe8\x86\x67\xaf\x0d\xb7\xcf\x2b\x31\xe9\x71\x55\xd4\x9f\xed\x97\x39\xad\x7c\x28\xd4\x72\xe8\x77\x9e\x49\x4e\x25\x08\x0a\xbc\x55\x52\x92\x25\x92\x11\x69\x47\xb4\xdd\x01\x01\x12\x42\xcc\x52\x72\x2d\xbc\x31\x22\x10\x8c\x08\x3b\xc4\xcb\xb7\x34\x4b\xc9\x8d\xb0\x81\x49\xfb\x0e\xfa\xa8\x11\x05\xfa\x21\xcb\xac\xf8\xcb\x8f\x24\x52\x5f\x66\xf8\x10\xd2\x6b\x79\xc9\x31\x86\x21\xee\x79\xfd\xe5\xf2\x03\xf5\x29\xe8\x79\x7d\x50\x94\x09\x89\x7a\x9a\x61\x10\x4c\x05\x5e\x72\x58\x9c\xf7\xed\xaf\xe4\x03\x2d\xf9\x25\x36\xbe\x7c\xa2\x15\xaf\xc2\x7a\x67\xf9\x95\x70\x4e\x7f\x94\x2d\x40\x01\x71\xc8\xd9\xf7\xa1\x08\xce\x6a\x8d\x1f\x0b\xa5\x58\xd9\x9e\x1b\x0d\x17\xe0\xaa\x26\x67\xb7\xb1\x02\x5c\x38\xa6\x8b\x05\xc4\x9b\x22\xbb\x43\xdb\x9d\x02\x9d\xb3\xd5\x14\xe0\xe0\x28\xa6\x92\x71\xa7\xe6\x7d\xab\x69\xa6\xd4\x25\x98\xaf\x4b\x28\x55\x42\x19\xbe\xfc\x56\xc6\xe6\xd4\x24\x94\x5e\x73\x74\xc6\x3d\xc5\x62\x01\x01\x37\xda\xe9\xb5\xb7\x28\x24\x9c\x75\x9a\x01\x87\xd9\xa6\x7d\x93\xa0\x65\xa9\x68\x06\xbc\xe8\x21\xb7\xdc\x96\x48\xf7\x7f\xfa\xe6\x96\x6b\x96\x7e\x2c\xd7\x6b\xc2\x73\xcd\x46\x32\x6f\x7b\x2e\x6d\xe7\xaf\x3f\x35\x31\x01\x06\x06\xc8\xb1\x4a\x69\x4e\x38\x8c\x38\x2b\x38\xa1\x3c\x75\xb8\x59\x5b\x5a\x3f\xff\xcb\xfd\xd9\xdb\x72\xff\xe5\xdd\xe9\xfc\xab\xf3\xf3\x9d\x4e\x13\x05\x5c\x03\xde\x14\x10\xb2\x11\x6f\x8a\x35\x2d\x0c\x4d\xc7\x5e\xde\x76\xbc\x73\x47\xfb\x9b\xd1\x1a\xeb\xc7\xcd\xb8\x7d\x07\x12\x66\xea\x1f\xcf\x98\xa1\x7d\x7c\x2d\x47\x35\x53\x94\x90\x94\x06\x33\x69\x46\xce\xac\x19\xc2\xac\x19\xd9\x49\x33\xa4\x8b\x6a\x77\x8d\x37\x1c\x2c\xf4\x08\x2f\x90\x96\x05\xba\xc1\xc3\xc5\x46\x28\x14\x53\x93\x12\xb6\x28\x9c\xac\x43\xe9\x98\x04\x40\xb6\x9a\x53\x4e\xa9\xd9\x37\x9d\x32\x2d\x4e\x79\x95\xba\x8d\x94\x72\x4b\x4e\xcb\xd5\x68\x77\x60\xce\x99\xd7\x36\x88\xb4\x43\xe1\x88\xb3\xad\x26\x99\xf3\x76\xc7\xf6\x28\x1c\x6f\x4a\xa9\x47\x9a\x52\xdb\x1d\x08\x99\x68\xce\xb9\xe2\x12\x20\xc0\x47\x5b\x40\xc2\x9c\x18\x66\x2c\x28\xda\x81\xde\xa5\xf2\x2a\xc7\x10\x98\x43\x02\x33\xb3\x85\xad\x3b\xcd\xc8\x39\xe5\xcd\x10\x4e\x79\x33\xb2\xd5\x7b\x58\xf9\x1e\xab\xef\x81\xfa\x1e\xe3\xf7\xa0\xf2\x3d\x51\xdf\x67\xea\x7b\x82\xdf\x97\xf0\xdb\x88\x1f\x51\x2b\xd0\xa8\x8a\xdf\x46\xfc\x88\x5a\x7d\x8f\xab\xf8\x6d\xc4\x8f\xa8\xd5\xf7\x64\xb9\xf3\x0f\x39\xeb\x85\x1c\x62\x35\xfb\x61\xac\xe6\x0d\x9c\x70\x38\xe6\xfd\xb2\xa5\x6d\xd1\xbb\x65\x26\x2b\x77\x6c\x8d\xca\xf2\xe8\x5c\x27\x4a\x99\xa5\x7a\x01\x4e\x4b\x0d\x1b\x11\xb0\x52\x15\x05\xa2\x8c\x15\xca\xe4\x5a\x9b\x5f\x95\x4d\x08\xbf\xb8\x08\x37\x16\xa1\xdf\xbd\x8d\x32\x74\xed\xa1\xfa\x77\x4b\x42\x14\x26\x14\x84\x44\xad\x24\xfc\xb6\x31\x9f\xb6\x96\xdd\x89\x90\x85\x8b\xae\xc6\xee\x88\x2a\xbb\x13\x21\x43\x17\x95\x2d\x98\xe9\x77\x83\x21\x3f\xc8\x9d\x5e\xf3\xe2\x0a\xb8\xcc\x2e\x90\x4e\x93\xb7\x0e\xcf\x5d\x9b\xa3\x61\x4c\x7b\x0b\x74\xca\x1c\x53\xe6\x3a\x45\x43\x68\xc8\x3c\x65\x9e\xa6\x94\x60\x6e\x6b\x18\x5b\xd2\xf6\xdd\x0c\xea\xb6\x86\xb2\x05\x6d\xdf\x35\x98\x89\x17\xbc\x4e\x87\xa0\x6c\xf3\xfc\x1f\x57\x22\x38\x5f\xb6\x6e\x33\x8c\x08\x9e\x07\xcf\xe1\x72\x65\x83\xf4\xda\x7f\xf9\xb2\x7f\xcb\x3f\x30\xe3\x21\x1c\x9e\x7b\xb9\x6d\x19\xd5\x97\xf6\x9d\xfa\xeb\xf9\x65\xf0\xc5\x3f\x1a\x0d\xe6\xa7\x4e\xe9\xd3\x16\xd4\x96\x44\xee\x34\xb3\x41\xb6\x73\xcb\x2f\x45\x96\x59\xfa\x3c\x4b\x57\x24\x7c\x97\xe6\x2a\x13\x07\xa6\xcb\xf4\x25\x3a\x81\xc2\xce\x05\x96\x48\xc6\x30\x1e\x4c\x45\x37\xe7\xb5\x4b\x46\xc4\xcf\xf4\x04\x30\x66\xeb\x5e\xed\x84\xd8\x5b\x31\x21\xf6\x79\x4e\xfa\xfb\xfc\x6a\x24\x7e\xde\xc9\x1e\xb6\xb2\x87\xdb\x35\xd4\x9f\x3e\x64\xc0\xf3\x0c\x78\x7e\xfb\xf7\x4e\x0c\xaf\x9e\x00\xb2\xda\x65\x9d\xd8\xa1\xb0\x92\x8e\xeb\xa8\xa1\x82\x2e\xc7\x67\x77\x32\x42\xd8\xc2\xa5\x2a\x43\x9f\xa7\xcf\x55\x7a\xb5\xb0\x8c\x8a\xb2\xac\x05\x96\x8e\x89\xa5\x48\x9f\x77\x6a\xb0\xac\xa8\xf2\x96\xae\x72\x2a\x01\x5c\xd1\xee\xd2\xd7\x8c\xc8\xe7\x5b\x75\x5f\x6f\x67\x5f\x6f\x23\x07\xf8\x47\x4e\xe5\xf3\x4e\x41\xe8\x1d\x26\xd7\xcc\x50\xc8\xa9\x2a\xcf\xb0\x55\xce\x50\x3f\x6f\xcf\x6f\x17\x19\x6e\x33\x09\x6b\x47\x53\xed\x27\x19\x3d\xdb\x1c\xe7\x73\x3e\x9b\xb3\x2f\x73\xbd\x01\x65\x3d\xfe\x1f\x99\xd7\x6f\x56\xce\xeb\xbd\xca\xbc\xfe\x52\x3b\xaf\xbf\xfc\xf7\x6d\x74\x6b\xf7\xa0\xad\xbf\xce\x1e\xf4\x63\x9b\x48\xea\x06\x72\x35\x9d\x45\x6c\x25\xa5\x5d\xbb\x6c\xd7\x13\x10\xad\xd8\xf5\xd4\x97\x9a\x95\x21\xad\xd5\xed\xff\x0c\xf1\xd6\x7a\xc8\x40\xe2\xfd\x52\x21\xde\x97\xa5\x48\x07\x47\x41\x12\x6a\x97\xd6\xb8\x79\xa5\x88\x8f\xb8\x0c\x98\x5c\xbc\x2c\x51\xf4\x3a\x5a\x64\xbd\x7e\x56\xa7\xe2\x11\x71\x5f\x7a\xd5\x62\xfa\x36\x3d\xcf\x02\x2d\x1d\xce\x0d\xe7\xa6\x8e\x87\x87\x96\x5d\xb7\xe2\x3f\xd7\xed\xa3\x97\x40\xb7\x0f\x01\x46\xc0\x74\x42\xf4\x67\x2f\xfa\x78\x58\x74\xbc\x6d\xdb\x9e\xed\x30\xb1\x4d\x23\x36\x6b\x8b\x52\xa5\xcc\xa5\x56\x35\xb6\xc9\x7b\xb3\xbe\x4d\x32\xda\x55\x49\xb4\x49\x42\x3b\x52\x47\x41\x03\x4c\xd6\x81\xc5\x76\xd4\x4c\x68\x1a\x10\xe7\xf0\x3c\x6b\x81\xe9\x53\xa1\xe8\x8a\x4b\x6f\x92\xce\xb5\xe3\x74\x3b\x1f\x8c\x79\x9a\x20\xb3\xbb\xa3\xcf\xc5\x58\x5f\xe7\x18\x8d\x29\x17\xf4\x19\x63\x8f\x2c\x64\x37\x1f\x59\xf4\x6c\x92\x8e\x7d\x76\x3e\x13\x2d\x1c\xe8\x9a\x03\x15\xc7\xe2\x40\x2c\x48\xeb\xe7\x3b\xc6\x3d\xe5\xeb\xcb\xcf\x1f\xfa\xb8\xc0\x5b\x87\x5f\x9a\xf8\xdc\x71\xf0\x20\xa1\x0e\x9a\x6a\x72\xe5\x1f\xe6\xf8\x61\xae\x3f\x9c\x77\x8c\x1c\x9e\x23\x35\xb4\x91\x38\xf7\xb4\x44\x42\x6d\xaa\xf8\xc9\x38\x77\xdc\x2f\x51\x74\xbe\x20\xa7\xdd\xf7\x85\xa9\xf1\xa2\xed\xbb\x8b\xfb\xff\xdb\x0b\x74\xce\xa6\xd5\x32\x65\xbf\x93\x05\x5b\x7f\xf2\x30\x58\x91\xf2\xda\xf4\x7a\xe5\x81\xe6\x9f\x13\x4a\xa7\x66\x11\xf6\xd6\xf2\x3f\xf9\xe2\xfe\x7a\xc3\xc5\xbd\x32\x3c\x26\x6b\x56\xbb\xdc\xa7\x83\x68\xb0\x6f\x99\xd2\xf7\x46\x8b\x02\x6a\x81\x57\x17\x01\xc9\xa3\x24\x8c\xa3\xf5\xeb\x80\xa9\xa3\xf4\x60\xc3\x09\xf7\xe0\x4f\x3d\xe9\x9c\xdf\xb9\xda\x91\x27\x7d\xb8\xf3\x9f\x3d\xfb\x2c\x71\xf9\x57\x3d\xfb\x94\xe7\xf1\x95\xd1\xd5\x9d\x4b\x36\x3e\x79\xd4\x7c\xbd\x93\x7d\xbd\xf3\xc7\x9f\x4b\x56\x1f\x33\xea\xe7\x65\x7d\x8f\x97\xcf\x1e\xb5\x7d\x5b\x39\xad\xdc\x29\x72\xdc\xc9\xcb\xfd\x5f\x9b\xc9\xcf\x37\x9e\xc9\x0f\x7e\xf7\x4c\x7e\xba\xe1\x4c\x7e\xfa\x77\xd8\x3a\xff\xde\xa7\x9d\x4b\x77\xc1\x65\x4e\x60\x53\xa1\xcd\x26\xa7\x99\x3f\x7d\x9a\xfc\xb2\xf1\x34\x79\xfa\xbb\xa7\xc9\xb7\x4a\xac\x49\xe4\x52\x51\xbd\x4a\x55\x36\x66\x9a\x2f\x0d\xf0\xbd\xa3\x0e\x2b\xbc\x75\x38\x71\xbd\xc3\xc0\x74\x0c\x90\x30\x94\xae\xab\xf4\x4e\x60\x6f\x65\xcf\x01\x3e\x78\x9d\xc3\xc0\x4e\x1f\x3a\x01\xcc\x98\xf1\x3d\xc7\x96\x01\x04\xf4\x5a\xc4\x48\xd4\x4c\x34\x6b\xdd\xcc\xf3\xa1\xcc\xdf\x28\x85\xb6\x67\x10\x32\x12\x6a\xc8\x79\x05\x72\x5e\x86\x5c\xa4\xf5\xee\x6c\x95\xeb\x3d\x49\xeb\xdd\xd9\x2a\xea\xad\x60\xea\xea\x3d\x60\xc6\xf7\x1c\x9b\x51\xef\x98\x91\xb8\x39\xd1\x77\x13\x05\x56\x47\x16\x35\xa3\xed\x01\x04\x8c\x04\x1a\x6a\x6e\x42\x89\x12\xd4\x62\xe5\x11\x24\x73\x18\x53\x7f\x5c\x78\xbb\x76\xcd\x0b\x26\xd3\xb1\x3a\xfb\xbe\xfd\x6f\x59\xf1\x90\x32\xb2\xa5\x4c\x75\x72\xf6\xac\x7a\x9e\x15\x30\x1d\x13\xa8\x63\x42\xe5\x2f\x7f\xe6\xb9\x63\x99\xb3\x30\x40\xff\x97\x8e\x1e\xe8\x5c\xb6\x76\x99\x36\x63\xda\xa8\x13\x6d\x1e\x66\x6c\xde\x71\xe4\x35\xb3\xc3\x8d\x4b\x6d\xb3\x83\x31\x79\x1a\x9f\x11\xd1\x14\x76\xd4\x8c\x4c\x6a\xa3\x74\xb1\xb2\x77\xff\x0a\x97\x31\xf9\x1a\xff\x6d\x79\x8d\x5f\xa2\x3e\x58\x41\x89\xb0\x92\x12\x61\x25\x59\xc2\x9f\xb1\x8f\xdc\xdb\x68\x1f\xd1\x92\x94\x74\xe9\xf0\xf3\x63\x94\x6b\xec\x2a\x7a\xe5\x58\x2f\x4c\x31\x65\x29\x8f\x36\x5a\x87\x1e\xfd\xb7\x9d\xa1\xfe\xb7\xd7\xa3\x7f\x8e\x63\xff\xa5\x8b\xda\x5f\xf3\xf8\xf7\xb7\x5c\xf3\xde\x5d\x61\xcd\x7b\x64\xac\x79\x0f\x7e\xef\x9a\xf7\x75\xa3\x35\xef\xeb\x3f\xbc\xd7\x5f\xe0\xe0\xfa\xd7\x5f\x38\xfe\x2b\x0f\xca\x7f\xcb\x05\xe5\xfd\x15\x16\x94\xaf\xc6\x82\xf2\xf4\xf7\x2e\x28\x37\x6b\xaf\xe2\x6f\xfe\x5e\xa6\x69\xdd\x6c\x34\x20\xd6\xcc\xb5\xfa\x39\x55\x3b\xa1\xd6\x70\xf2\xa4\x6e\xa3\xac\x61\xec\xb3\xab\xc1\x87\x2b\xaf\x81\x6f\x56\xae\x81\x3f\x72\xd3\x7a\x27\x35\xd3\x2d\x0e\xc9\x4f\xea\x24\x1e\x5a\xdc\x00\x21\x93\x8e\x96\x80\xc4\x2c\xbd\x9b\xd3\x37\x79\x6d\x12\x5d\x5c\x84\x3b\x6e\xa3\xe1\xb8\x54\x1d\xe2\x85\x93\xaa\x13\x92\xf0\xe2\x22\xca\x3e\x24\x8c\xc4\xcd\xd0\x0e\x9a\x91\xca\x61\x87\x99\xd5\x01\xf9\xc8\x49\x4c\xed\x8f\x9c\x04\x34\xb5\x55\x2a\xd9\x1b\xc7\x14\xf2\xe7\x80\x42\xeb\x4e\x33\x7f\x4d\x28\xbd\xb8\x70\x0d\xd3\x24\x6e\xaa\xc2\x1a\x95\xcf\x43\xb8\x75\xc9\x56\xb3\x5c\x79\xe1\x48\xda\xee\xf8\xa6\x09\x53\x4d\x27\xb8\xa9\xd8\xc7\x4d\xc5\x3e\x5e\x2a\xf6\xf1\xb0\x59\x4e\x44\xdb\x5b\xd7\x56\x0b\x26\xec\x04\x42\x3b\x69\x4a\x88\x9d\x04\x02\x27\x69\x0a\xf4\x2e\x6b\x18\xb8\xd4\xd2\x73\x61\xb6\x52\xf3\x59\x8d\x2e\x97\x25\x27\xbf\xf8\xba\x1a\x8b\x94\x15\xe2\xf8\xc0\x4b\xd9\x45\xf5\xfb\xa7\xf2\xf7\x68\x3d\xfa\x50\xe6\xa6\x5f\x20\xb4\x3d\x62\x16\xe2\x76\x29\xfa\x6b\xe9\xb5\x1c\x2d\x18\x75\xf6\xc3\x9e\xdb\x67\x2e\xc4\xea\xa7\x03\x81\xfa\xe1\x3d\xb7\x6f\x77\x9a\xbc\xe7\xf5\x41\x32\x6f\x5b\xee\x44\x78\xd7\x2f\x69\xd8\x93\x7d\xe6\x41\xac\x7e\x6e\xa3\x59\x37\xbb\xdd\xe4\x3d\xa9\xc1\xa5\xed\xf5\x53\x9c\x91\xe3\x29\x74\xb1\x7e\xf8\x09\x02\xfd\xf0\x73\x93\xe3\x83\xcd\x31\x9a\x93\xc6\x8d\x98\x05\x53\xb8\xdb\x71\x4f\x3a\x5e\x1f\x0b\x70\x98\xc0\x12\x1c\x26\x9a\x01\x26\x9b\xb8\x35\xc2\xb6\x2e\x00\x24\x8b\x9c\xce\xb6\xdc\x65\xee\xb6\xe3\xa4\xd5\x24\x98\x39\xc4\x5a\x51\x85\x58\xe7\x4f\xab\x44\x54\x0d\x6c\x8d\x8c\xb6\x3b\x20\x99\x6b\xb4\x13\x1b\x98\x35\x29\xc5\x91\xb9\xf6\x0b\x21\xee\x2f\x3e\xfc\x6f\x33\x50\xcb\x7c\x93\x74\xff\xb3\x17\xdc\xa6\x26\x6e\x69\x17\xfe\xb5\x74\xc1\x2d\x5d\x78\x55\x49\xa0\xff\x5b\xe2\x26\xbd\x38\x3d\x0f\x9e\x5f\x0b\x47\x68\xa0\x09\xc8\x70\x51\x23\x9c\xc5\xc5\x85\xcc\xdf\xe6\xde\x9a\xce\xf9\x2b\xc8\x89\x20\xeb\xea\xac\x87\x05\x7b\x62\x30\x3b\x14\x44\x55\x7f\x6f\x69\x6c\x2a\x39\x7e\x5c\x2d\x2a\x47\xc9\xc4\x62\xb1\x00\xf2\xa9\x14\x86\x4b\x07\x06\xd6\x61\x7c\x88\x39\x59\x28\xd5\xc7\xeb\x8a\x45\x85\x09\xa2\x01\xb4\x9d\xaa\xae\x3c\x06\xbe\xe4\xd2\x9c\x72\x6b\xc2\x9f\x54\x99\x48\xe0\xab\x42\x9b\xac\xe1\x2d\x26\xab\x23\x96\x54\xa7\x07\xe2\xdf\x3c\x7e\x48\xfd\xc6\x25\x81\xa3\x39\x52\x0c\x21\x5d\x2c\x20\x92\x7f\xee\xfa\x52\x56\x2f\xfb\x41\x35\x32\x54\x22\xa3\x6a\xaa\x5d\x36\x37\xd0\xe5\x72\xcf\xed\xaf\x9a\x21\xf9\x77\xe8\x30\xc6\x04\x5d\x81\x45\xad\xfc\xe8\x4b\x19\x7d\xc9\x16\x81\x46\x71\x7f\x84\x50\xfd\x4a\x8c\x80\x0e\x01\xf3\xb6\x03\x8c\xe0\x1d\x83\x6d\x07\x74\xdd\x50\x44\x3d\xb7\xdf\x8b\xfb\x10\xa6\xbf\x51\xcf\x4b\xdf\xf5\x2f\xef\x05\xaa\xdc\xa0\x4f\xb7\x2f\x5d\xd6\xc4\x8f\x2c\x66\xd9\x14\x2c\xe9\xb9\xfd\x3e\x8d\xb6\xb8\xd6\x62\x46\x31\x03\xc8\x6a\x18\x6c\x6b\x20\xd7\x09\x10\x24\x93\x8b\xe0\xcf\xa6\xcd\xac\x1b\x36\xdb\xde\xdc\x9d\xb4\xaa\x59\xcf\xcb\x1d\xaf\xd1\xe8\x94\xf7\x98\xea\xa8\x94\xb7\xba\xac\x17\x29\xfc\x07\xf6\xad\x5d\xe6\xe6\x71\x42\x64\x3e\xee\x72\x15\x31\xac\x38\xe7\xfc\x95\x94\xb8\xf2\xdd\x26\x9f\xfa\x72\x87\xb9\xf5\x93\x36\xef\xe1\x15\xb6\x03\x58\x54\xee\x52\x3f\x97\x81\x34\x73\x95\x50\x49\x6d\x9e\x6a\x12\x67\x92\x90\x25\xc5\xe1\x7c\xf8\x56\x7d\xa7\x8b\x6c\xe3\x2b\x76\xb9\xfc\xa8\x9d\xac\x9c\x2b\x38\x37\x5a\x77\xcc\xe9\x32\xab\x72\xf2\x08\xe3\x1a\xbc\xfc\xa4\x16\xc2\xd3\x8e\x67\x07\xd5\x8d\x50\xc7\x1e\xcd\xa3\xcb\xef\x7a\xb9\x4a\x6e\xba\x8d\x30\x3c\x0f\xf5\xd4\xea\xd8\x87\x84\x05\x59\x4c\xd3\x78\x27\x44\x9b\x5b\x1d\xd3\x34\x48\x81\xe2\x7e\x1f\x04\x73\xb7\x05\x86\xf5\x16\x34\xe8\x89\x7e\xcf\xeb\xdb\x0c\x1f\xdc\x3e\x0b\x93\xe7\xc1\x73\x12\xe9\x64\xda\x8d\x74\xb2\x9f\x26\x2c\x60\x24\xeb\xe3\x4a\xe6\x55\x04\x61\x9c\x29\x24\x55\xfc\xb7\x62\xc3\xa9\x50\x2c\x74\x1e\x69\x52\x18\x5d\x36\x94\x06\x77\xa6\xf6\x0c\x6b\x16\xa5\x8e\xd0\xaa\x1e\x7e\xb3\x00\xed\xcb\x71\xe1\xb1\xa7\xb4\xab\xdd\x30\xd1\x85\x73\x8a\x56\x97\xcb\x32\x36\xfc\xbf\x1c\xcc\x30\xb3\xae\x1c\xeb\xfa\xa4\xca\xec\x29\xeb\x52\x70\x23\x59\xd8\x1b\xcd\x90\x70\xaa\x5d\x03\x93\x9f\xc1\xf1\xb2\x73\xb5\xf5\x22\x77\x09\x2c\x2a\x4e\x89\x1b\x0d\xa2\x36\x48\x23\x45\x07\x8e\x05\xeb\x59\x30\xc5\x0c\x17\x17\xd6\x01\xd7\x79\xbb\x25\xdf\xc1\xbe\xb5\x97\x59\x34\xa6\x80\xed\x7f\x93\xae\xff\x36\xbc\x78\x4c\x23\x49\xba\xfe\xcf\x17\xde\xdd\x8b\xad\x0e\x25\x5d\xff\xfe\x24\x38\x99\xf2\x21\xd5\x18\x6e\xb6\x5b\x92\x27\x92\x08\xda\x4d\x1b\x97\x7a\x41\x5c\x2c\x08\x57\x07\x79\xd9\x68\xf0\x46\xc3\x8a\x66\x27\x47\x5c\x18\x5d\x92\x91\xdd\x77\x81\xa1\x27\x45\x16\x04\x4f\x9d\xc9\x4b\xf6\x92\xba\xdd\xdf\x13\x3f\x2c\x47\xe7\xcf\xc8\x7c\x37\xa7\x8f\xee\xf7\x61\x1c\x71\xff\x86\xbb\xf0\xd3\x27\x2f\x75\xd7\xc5\x7b\x91\x6d\xf7\x17\xd5\x80\xfd\x3a\xc8\x14\xc6\xeb\x0f\xd5\x34\xcd\x42\x4e\xbd\x99\x4f\x79\x1a\x76\xea\x71\x74\x1a\x4c\xc2\xe1\xf5\x40\x4a\x7e\x32\x95\xd7\x65\x7c\x5d\x13\x06\xbf\x1e\xc5\x91\x83\xcf\x47\x13\x7e\x3d\x8c\x12\x19\x44\x03\xde\xfa\x2d\x7a\x1c\x5d\x8f\xc5\x90\x0b\x05\x7b\xc4\xaf\x67\x20\x80\x19\x02\xd5\x69\xd7\xb5\x5f\xe7\xe4\xfa\xc9\x2c\x91\xd7\xc7\xc1\x29\xbf\x1e\x5c\x5f\xa2\x3b\x42\xaf\x9f\x70\x39\x8e\x87\x2d\x4b\xcf\xe0\x18\x02\x76\xc3\x85\x84\xe5\xc1\xc9\xbf\x27\xa5\x1e\xa9\x21\x5e\xc5\x60\x46\xcb\xbc\x95\x68\x45\xfc\xdc\x08\x86\x1a\x30\xde\x52\x5d\x06\xbc\xda\x47\x89\x2a\x32\x66\xd8\x49\xe6\x86\x29\xe6\xdf\x83\x6c\xce\x88\x96\x46\x73\x71\x91\x3d\x11\xba\x18\x85\x51\x30\x99\xcc\xbf\x63\x7c\x64\xdd\xb7\xf1\x62\xb1\x28\x56\xab\x94\x5e\xbe\x67\xb1\xe2\x2f\x2e\xe4\x6e\x4e\x16\x69\xe8\xd1\xf4\x2d\x37\xf9\x17\xcc\x85\xa8\xbc\x0a\x88\x1d\xb9\x2d\x6c\x9b\xaa\x75\x04\x4d\x07\xf2\x00\xaf\x45\x51\x53\x59\x8d\x97\x6b\x38\x48\x3e\x29\x44\x1c\xac\x97\xe7\x96\xad\x2f\x7c\x8e\x9e\xb7\xd4\x97\x53\xb9\xec\xbe\x69\x42\x7a\x7d\x0a\x92\x8d\x24\x08\x36\x90\x10\xb1\xa9\x2c\x96\x9e\x90\x64\x2e\x44\x74\xc0\x34\x66\x4e\xb8\x15\xde\xfc\x4e\x24\x85\x09\x9b\x65\xcb\xdd\x80\x39\x1e\x8c\xd8\x50\x92\x90\x5e\x53\x1d\xae\x7a\x61\xd4\x4a\x08\xdd\xbe\x41\x12\x36\x6a\x45\x84\x52\x1c\xb6\x6d\x5d\xd4\x90\x25\xda\xc3\x9c\x16\x3f\x30\x17\x6c\x7b\xb0\x1d\xef\x4c\x70\xb9\x26\xb3\x5e\xdc\xef\x0d\xfa\xac\xe7\x82\x1d\x91\x21\xa8\x77\xd5\x4a\x18\x40\x48\xfb\xb4\x35\x0c\x64\xc0\x86\x8b\xc5\x20\xc0\xfd\x9e\x7e\x1f\xb5\xb4\xac\x28\x1d\xc9\x51\x6b\xa4\xc6\x35\x45\x1d\xb0\xd7\x44\x92\x19\xa5\x79\x01\xb3\x5e\xa0\x76\x81\x16\xba\xca\x63\x71\xbe\x20\x93\x19\x04\x14\x66\x99\x60\x38\x54\x65\xfe\xfe\xc8\x04\x46\x7f\xaa\xf3\x68\x88\x66\xe0\x61\xd5\xc3\xde\xef\x70\xa2\x13\xa2\x13\x9d\xb0\x85\x93\x79\x53\xcb\xf2\xcc\x0a\x7c\x24\x57\x7b\x07\x2d\x2d\xbd\x58\x8e\xc4\x72\x46\xa3\x64\x73\x97\x41\x59\x41\x03\xe9\x73\x85\x42\x2c\x20\x5c\xc0\xbc\x6e\x93\x8f\x8c\x4d\xde\x2d\x36\xd6\x6c\x97\x77\x71\x03\x77\xfb\xc5\xf6\x1e\x68\x97\x1a\x28\x03\x63\x7a\x4f\x8f\x70\x4f\x0f\x6d\x9c\x61\x8a\x8e\xbc\xfe\xc5\x85\xab\xb6\xd4\x10\xf9\x00\x13\xaa\x00\x69\xb3\x70\x31\x90\xa9\x43\x73\x38\xaa\xab\x5c\x52\xaa\x5c\xa5\x6e\xe9\xd4\x71\x61\x92\xf1\x21\x59\x25\x67\x48\x73\x33\xaa\xa9\x31\x60\x6e\x89\xf7\x20\x21\x53\xad\xee\xc9\x9e\xe8\xf7\x7b\xb3\x3e\xed\x79\x7d\x47\x1d\xb6\xe8\xae\xdb\xc5\x53\x17\x8b\xf1\xb0\xc5\x62\x9b\x85\xd4\x0f\x77\x30\xd9\xeb\xb3\x00\xf0\x6b\x80\xc9\x1a\xd2\xd5\x90\x21\x5d\xc0\x71\x5d\x0b\xc4\xca\xee\xc5\xcd\x2c\x63\xa0\x62\x16\x66\x95\x8f\x76\x62\x8c\xfe\x9e\xc3\xaa\xfa\x27\xcc\x4d\xcf\x8d\x01\x4d\x54\x3f\x07\xfd\x5e\x94\xf7\xb3\x7e\xb4\x19\x3e\xb8\x7d\xe6\x24\xed\x8e\xd1\xb5\x87\x97\x31\x77\xea\x20\x10\x31\x55\x57\x5d\x1d\x7a\x19\x45\xa8\x43\x6c\x84\x95\xc9\x3f\x27\x18\xbf\x5e\x0d\x86\xbb\x9d\x20\x0f\x98\x14\x1f\x07\x88\x39\xe9\xf7\x61\xc4\x06\xaa\xee\x58\x71\x18\x32\x32\x72\xc8\xa0\x17\x38\x5e\x9a\x84\x81\x4f\xc6\xcc\xdd\x1e\xe3\x60\x8d\xf5\xd2\x35\xc5\xec\xe3\x7e\xff\xda\xd0\x66\x64\x9a\x23\xa0\x8e\x7a\x29\x32\x2f\x66\x36\x1b\xc1\xc4\x66\xc3\xe6\x68\x21\xb2\x2f\x36\x4b\x1f\x71\x60\x67\x8d\x06\x89\x1d\x36\x69\xcf\xe8\x2a\x90\xa2\xe7\xce\xca\x33\x2e\xe3\x38\x4f\x82\x29\xd9\x97\xf9\xfe\x38\x92\xc8\x8e\xad\x71\x5a\xda\xe3\x7d\x47\x91\xdb\x82\x9a\x3c\xfb\xbe\x2c\xb1\xb2\x20\xd4\x92\x9e\xd2\x45\xb6\xcc\xc7\xcc\xf1\xda\xae\xa2\xdb\x9d\x70\x9b\x12\xc9\x6c\x9e\xf2\xc8\xbb\x31\x7a\x48\x57\x5b\x8b\x28\xe2\x96\xe3\x86\x74\xb0\xba\xda\x2f\x7e\x7f\xb5\x5f\x2c\x55\x5b\x6d\xbb\x8e\x67\x54\x5b\x11\x70\x51\x5f\xa4\x4e\xb5\x69\x0b\x9b\x15\xc5\x0b\xac\x6a\xbd\x0b\x8d\x03\xac\x9a\xe0\x69\x04\xf5\x05\xec\xd5\xb4\xa8\x74\xe5\x80\x85\xa7\x0d\x84\x98\x9d\xa1\xe4\x25\x9d\x39\x30\x63\xbd\x3e\x4c\xd4\xfe\xad\x6a\x9d\x8a\xd8\x53\x71\x7f\xdc\x93\x7d\x08\x76\x92\x2e\x51\xd3\xba\x27\xfa\x30\xd3\x42\x0b\x81\x41\x9b\xd2\xb4\x49\x9e\x96\x55\x7f\x52\x54\x4f\x71\xd5\x83\x40\x6d\x77\x0b\x78\x53\xdb\x9e\x51\xa5\x3d\x59\x7c\xf1\x40\x0c\xea\x43\x5d\x1b\x31\xa4\x03\xc1\x83\x5a\xa0\x5f\xcc\xc0\xe2\x61\x54\x1f\x8d\xfa\xa9\x19\xb0\x3b\xac\x87\xb9\x57\x29\xed\x75\x30\x0c\x57\x84\x29\x7f\x68\x80\x0a\x04\xdb\x5b\x55\xbd\x87\x95\xea\xad\xc1\x7a\x73\x09\xeb\xd3\x55\xed\xb9\x59\x0d\x40\xbe\x06\xed\xc7\x72\x0d\xbe\x3c\x8a\x45\xf8\x2d\x8e\xe4\x0a\x70\xc9\x2b\xf0\xef\xb8\x90\xe1\xaa\x80\xed\xa2\x0a\xbd\xa6\x22\x51\x29\x1c\xb9\x8e\xfe\x72\x79\x30\x74\x84\xab\x8f\xae\x7e\xb8\x0c\xf8\xff\xd3\xf6\xe6\xbd\x91\x1c\x47\xfa\xf0\xff\xfe\x14\x06\x5f\x63\xd1\xcd\xe9\x69\x47\xe4\x11\x11\xe9\x5d\xbe\x86\x2e\xcb\xda\xb5\x34\xb2\x46\x3e\xb4\x0b\xc3\xc8\x23\x62\x86\xd6\x90\x1c\x37\x39\x3a\xbc\xd6\x77\xff\x21\xb3\x9a\x64\x0f\x59\xc5\x31\x17\x12\x0b\x78\x50\xcd\x7c\xe2\xa8\xc8\xca\xc8\xc8\x3e\xb2\x3e\x38\xdd\xd5\x85\x27\x92\x9f\xce\xb0\x77\x17\x97\xf3\xaa\x2f\xee\x93\x3f\x3c\xcd\x67\x17\xe7\x6d\xfe\xe9\xf6\xf7\xe9\xcf\xff\xfe\x26\xef\xe6\x3d\x79\x39\xc3\xbe\xca\xf3\x4f\x66\x6f\xf7\xb9\x5f\xee\x4e\xc7\x6e\x75\xf3\x0f\xc6\xbf\xcf\xff\xd3\xf7\xf3\xd4\x17\x6f\x3d\xbb\xff\xcd\xee\x1b\x7d\x3f\x5f\x9e\x5e\x7e\xf0\xea\xe2\x52\xe7\x2f\xf3\xcb\x79\x89\x67\xaf\x75\xfe\x01\xf4\x9f\xce\xf3\x67\xb9\xdf\xdd\xe7\xbe\x39\x6f\x0b\x57\xf9\xb7\x7b\xe4\x0f\xf2\xae\xf5\x1a\xfc\x01\xef\x3f\x5b\x14\x5a\xbc\x80\xdf\x2c\x8a\xcc\xd2\x3f\x99\xa1\x5f\x9d\xbd\x79\xf5\xea\x8b\x8b\xb3\x07\x1c\xfb\xe3\x03\x62\x8b\xae\xfd\xe9\x01\xa1\xf9\xfc\x76\x4f\xa0\xa7\x97\xbc\x7b\xc0\xb1\x8f\x17\x44\xe6\x2f\xfe\x2e\xf7\xd3\x8b\xf3\x8b\xab\x8b\x73\xfd\xf3\x7c\x9e\xb9\x5a\xe2\x7f\x35\x9f\x69\xee\xf1\x3f\xcb\x57\x6f\x76\x0b\x3d\x71\x71\x8f\xfd\xfc\x4a\x5f\xcf\x52\x2f\x67\xa9\xef\xd9\x95\xce\x5f\xe7\xab\x59\xfe\xfb\x6a\x17\x0b\xc3\xfd\xcd\xa1\xc0\xe5\x55\xae\x5f\xcf\xd2\xbe\xb9\x47\x7b\x36\x56\x3b\x1f\x7d\xf7\x3a\x2f\xa4\x9d\xef\x17\x44\x3e\x3c\xfd\x46\x77\x2f\x4e\xcf\x5f\xcc\x4a\x95\x05\xa9\xcf\x2e\x16\x66\x9b\xba\x20\xf0\xfc\xf4\xd5\xcb\x8b\x37\x7a\x75\xb5\x90\x5f\x16\xc4\xfe\x74\xfa\x62\x29\x7b\xfd\xf5\xbe\x48\x5f\x59\xbe\xf7\xfa\xb5\xe6\x5d\x3e\xaf\xf3\x52\xdf\x2e\x48\x5d\x56\x3d\x6f\x4b\x51\x78\x3e\x2f\xf4\xa1\x3e\x28\xf5\xdd\xbc\xd4\x27\xe7\x97\xa7\x4d\x9f\xbd\xb9\x9a\x15\x7a\x6f\x5e\x68\x31\xde\x36\xcf\xff\x62\x2a\x9c\xe6\x33\x73\x17\xf9\x61\xf3\xf6\x27\x9d\xeb\xff\x3d\x7a\x73\xa9\x3f\xbf\xbc\xda\x9d\xd6\xab\xa3\x9f\xed\xb6\xbb\xd5\xd5\xf5\x7b\x88\x0f\xbf\x8d\xfc\x4b\xfa\x27\xdc\x79\x2b\xb9\x97\xe4\xff\x7e\xfe\x1f\x57\xff\xbe\xde\xfd\xcf\xf9\x5f\x4e\x8e\xfe\xbf\xa3\x27\xfb\xe7\xb2\xad\xe8\xf8\x7c\x43\xc7\x7d\xb5\x76\x5b\xd5\x6e\x4e\x4f\xce\x57\x47\x68\xcc\x25\x98\xb1\x81\xba\x9a\xc1\xd5\x46\x8e\x9d\xa4\x40\x5c\x9a\xd4\x48\xa1\xa8\x67\xae\x8e\xad\x1f\xa5\x96\xe6\x1c\x72\xd1\x6a\x47\xe3\xfb\x32\xab\x23\xb6\x9a\xd8\x8a\x66\x6d\xc1\x5a\x05\x21\x33\xb3\x94\xbc\x50\x2d\x60\x00\x8e\xad\x58\x2c\xc8\x34\xfe\x8e\xc6\x17\x6b\x56\x47\x58\x92\x32\xb7\x14\x0d\x1c\x47\x86\xe2\x95\x5d\x92\x4c\x94\x09\x55\x29\x17\x70\x99\x98\xb0\xdd\xc8\x5d\x76\xb9\x4c\x55\xd5\xa3\xb1\x94\x50\x5c\x33\xc9\xde\x77\xcf\xad\xa4\x9c\x92\x7a\xcc\x58\xad\x15\xeb\x6e\xb0\x01\xd4\x5c\x5c\x23\xca\xbe\xa5\x3c\x79\x56\x30\x26\x27\x47\xeb\xcd\x9b\xae\xcf\x4a\x09\x59\x8b\xaf\x4d\x7d\xad\x5a\x6a\x6c\x5a\x8b\x06\xd3\x96\xf2\xb8\x96\x5a\x35\x36\x29\xcd\x5a\xcb\x5a\xcd\xf5\xe3\x68\xbd\x79\xd5\xa5\x8b\x57\x57\x9b\xb5\xda\x72\xad\xa5\x45\x15\x0b\x35\x6b\x50\xb2\x58\x93\x99\xb9\xac\x86\xea\xea\xfe\xef\x68\xbd\xa9\x5d\x4e\x43\xf7\xd3\x33\x6b\x91\xd0\xb2\x85\x9c\x24\x68\xf6\x93\xcf\xdd\xaa\xf7\x99\x22\x39\x31\x16\x2c\x96\xc6\xdf\xd1\x7a\x63\x5d\x9a\xa8\xba\x1c\xad\x4a\x23\x27\x2d\x43\x2d\xca\x92\xab\xcf\xd4\x24\x06\xb3\x96\x9c\x69\xac\x21\x85\xe2\xfb\x71\xb4\xde\xb4\x2e\x27\xad\xf9\xca\x5d\x7b\xf1\x45\x4b\x6e\xd9\x8a\x00\x3b\x81\x82\xcd\x5b\x2b\x81\x5c\xf1\x4d\x29\x59\xad\x4d\x63\x4b\xfd\x28\x55\xa0\xb4\x29\x36\x66\xda\xa8\xf7\xfd\xcb\xae\x2f\x28\xa7\xcc\xe6\x44\x5d\x55\x8c\x1c\x13\x53\xe1\xe2\x62\xca\xd8\x03\x58\x53\x48\xd9\x38\x67\x34\x4b\x2d\x73\xaa\x1c\xa3\x95\x5c\x20\x97\xa3\xf5\xe6\xf5\xc9\x6e\xe5\x61\xbd\x39\x9b\x5b\x8d\x4c\x9f\x12\xac\x5e\x6f\xcb\x7a\xa5\xff\x73\xfb\xa5\xad\xbf\xac\x7f\xd8\x7c\x73\x70\xeb\xfb\x9b\x95\xcd\x51\x93\xe2\x29\xda\x38\x62\x2e\x21\xd7\xa3\xcd\x51\x26\x42\xcc\xcd\xaa\xe3\x26\x50\x5b\x45\x40\x89\x8c\x77\x9a\x26\xa9\x3b\x04\xa9\x11\x21\xef\xd5\x92\x4a\xf5\x95\x35\xeb\x5e\x39\x20\x51\xd4\x59\xda\xa4\xed\x01\x72\x31\x41\xd7\xf6\xa6\x0f\x34\x4f\x0e\xf8\x98\x58\xec\x9d\x22\x87\x56\x66\x05\x63\xf0\x00\xf1\xb1\x16\x01\x7c\xf5\xf0\x4e\xf1\x87\xad\xef\x95\xac\xc7\x72\xf7\x7c\xbd\xf9\xfe\xe4\x6c\xf5\xcd\xdb\xcf\x14\x3b\xe8\xb9\x6c\xd2\xaa\x1f\x39\x86\x7b\xba\xe0\x72\xb4\x39\xe2\xe2\x5d\x0a\xfd\x4e\xaf\x96\xa9\x95\x0c\x00\x22\x9e\xef\x34\x4d\x52\x77\x09\xe4\xb2\xf8\x49\xad\x72\x0b\x2a\x2d\x19\x34\x3f\x29\xc7\xc2\x4b\xb4\x49\xdb\x03\xe4\x94\x18\x72\x99\x4c\x1f\x6a\x9e\x1c\x88\x39\x2b\xe1\x3b\x45\x0e\xad\xcc\x0a\x06\x00\x08\xe5\xb1\x16\x01\x42\xc0\xf2\x4e\xf1\x87\xad\xef\x95\xdc\xf4\xdc\x8b\x93\xb3\x55\x59\x6f\xfe\x3a\xdf\x73\x9a\xb2\xaf\x69\xdf\x07\xd8\x98\xf2\xd1\xe6\xa8\x01\x56\x29\x86\x85\x5a\x2e\xa2\x28\x14\x5a\xae\x8e\xee\x34\x4d\x52\x77\x08\x35\x62\xe1\xb6\x57\xdb\x14\xd4\x7a\x2e\x6d\x30\x29\x0f\x2d\x39\x87\xb3\xb4\x49\xdb\x03\xe4\xa6\xcc\x3d\x1b\x0f\xd3\x07\x9a\x27\x07\xfa\xec\x16\xf0\x9d\x22\x87\x56\x66\x05\x45\x01\xa3\x7b\xac\x45\xc7\x14\x30\xbd\x53\xfc\x61\xeb\x7b\x25\x37\x3d\xf7\xed\xc9\xd9\xea\xaf\xeb\xcd\x47\xf3\x3d\x97\x92\xe8\xf5\x98\x33\xcc\x3e\x8c\x21\xaf\xbe\xa6\x54\x5c\x2e\xcd\x59\x2b\x42\x5e\x89\x10\xf0\x6e\xd3\x24\x75\x87\x10\x1c\x8b\x4c\x6a\x9b\xb4\xac\xc5\x54\xa1\xd0\xa4\xbc\xf8\x28\x40\xf3\xb4\x49\xdb\x32\x59\x80\x7d\xae\x93\xe9\xb7\x34\x4f\x0e\x80\x38\x0c\xef\x16\x39\xb4\x32\x27\xe8\x5a\x1f\x34\x8f\xb5\xc8\xe6\x0b\xc8\xbb\xc5\x1f\xb4\xbe\x57\x72\xd3\x73\xcf\x4f\xce\x56\x1f\xad\x37\xcf\x16\xc6\x9c\x49\xa6\x7d\x1f\x10\xe7\x54\xad\xdf\xb0\x19\xc0\x81\x85\x1c\xc5\x25\xd7\xab\x18\x88\x8c\x05\xee\x34\x4d\x52\x77\x08\xc5\xa1\xb8\xb2\x57\xdb\x5a\xa9\xdc\x50\xa3\xc1\xa4\xdc\x21\xd1\x98\x4a\xef\xd3\xf6\x99\x64\x99\xdc\x88\x20\xb4\xbd\xe9\x03\xcd\x93\x03\xc1\x27\x5f\xfd\x3b\x45\x0e\xad\xcc\x0a\x12\x03\xa0\x3d\xd6\x22\x44\x0f\x84\xef\x14\x7f\xd8\xfa\x5e\xc9\x4d\xcf\x7d\x77\x72\xb6\x7a\xb6\xde\xbc\xf7\x60\xcf\xd9\x54\x88\x8e\x92\xee\xed\xee\x29\xb9\x1f\x01\xfa\x71\xb7\xe7\xc6\xdf\x1d\xc2\xfd\x2e\x51\xe8\xc7\xa4\x3c\xb4\x7e\xcc\xf7\xdc\xf8\x7b\x80\x7c\x3f\x10\x13\x79\x72\x40\xb8\x1f\xef\x14\x39\xb4\x32\x2b\xf8\x70\xe8\x97\x04\x31\xf7\xe3\xdd\x3d\xf7\xa0\xf5\xbd\x92\x9b\x9e\xfb\xf2\xe4\x6c\xf5\xde\x7a\xf3\xf5\x7c\xcf\xf5\x62\x3b\xa6\xd1\x03\x96\xb0\x58\xeb\xd3\x6c\x63\x4c\x7d\xb5\xd1\x27\xcf\x5c\x5a\xd2\xe4\x2a\x97\x42\x77\x9a\x26\xa9\x7b\x04\xdf\x97\x46\x93\x5a\x55\x48\xa0\x60\xde\x64\x52\x1e\x22\xc7\x12\x66\x69\x93\xb6\x87\xc8\x81\x5a\xf0\x7b\xd3\x07\x9a\x27\x07\x38\xe4\xd6\xf0\x9d\x22\x87\x56\x66\x05\x73\x04\x70\xf4\x58\x8b\x1e\x3d\xa5\xf8\x4e\xf1\x87\xad\xef\x95\xdc\xf4\xdc\xa7\x27\x67\xab\xaf\xd7\x9b\xcf\xff\x95\x9e\xab\x46\x70\xb7\xe7\xa8\x25\xca\x98\x13\x05\x9c\xef\xb9\xbb\x84\xb7\xbb\x44\xba\x83\x26\x65\x52\x8e\x39\x49\x84\x59\xda\xa4\xed\x21\xf2\x9d\x40\x5c\x6b\x9e\x1c\x20\x2a\x8d\xfc\x3b\x45\x0e\xad\xcc\x0a\x3e\x14\xfa\x65\x8b\x00\x34\x95\xa6\x0f\x8b\x3f\x6c\x7d\xaf\xe4\xa6\xe7\xfe\x76\x72\xb6\xfa\x7c\xbd\xf9\xe2\x5f\xe8\xb9\xd4\x62\x0a\xf7\xc7\x5c\xcb\xc1\x15\xf1\x25\x2f\x8d\xb9\xb7\x08\xd1\x6b\xb0\xc3\x2e\xe9\xa5\x54\x92\x49\xb9\x77\x22\xa5\xcd\xd2\xf6\xf7\xe3\x03\xe4\x7b\x81\x98\xc8\x93\x03\xd3\x7a\xfd\x9d\x22\x87\x56\x66\x05\x93\x02\x06\xf7\x58\x8b\x51\x83\x65\xf7\x4e\xf1\x87\xad\xef\x95\xdc\xf4\xdc\x07\x27\x67\xab\x2f\xd6\x9b\x4f\x16\xe6\xb9\xbe\x36\x4c\x29\x35\xa9\xc9\xd5\xec\x62\xaf\x50\xb4\x99\x58\x29\x4e\x9d\xba\xa1\x3a\x38\x2f\x25\xc4\xf9\xa6\x21\x05\x40\xcd\xd5\x1b\x42\xad\x5a\x95\x26\xb5\x8f\xa2\x05\xcc\xca\x34\x99\xeb\x4b\x5a\xd7\xef\x24\x63\xab\xd6\x26\x57\x7f\x02\x91\xee\xd2\xdd\xb5\xd4\x87\x27\x67\xab\x4f\xd6\x9b\xcf\x16\xa2\x06\x5a\x2d\x24\x2d\xb5\x65\x91\x48\x99\x6f\x43\x33\xde\x9f\xea\x96\x2a\x89\x04\x4c\x6d\xa1\xa9\x4b\x09\x82\xf1\x6d\x38\x8a\x35\xaf\xb4\x57\xfb\x28\x5a\xa5\x52\x70\x32\x47\x0a\x48\xe5\x36\x04\xc3\xd5\x1f\x5d\x64\x72\x29\x8c\x4a\xfa\x36\x6a\xbf\x3b\x39\x5b\x7d\xb6\xde\xfc\x66\x29\x6a\xe6\x5b\xc9\xd2\x5a\x89\xc1\x67\x57\xfb\x48\x37\xb0\xa4\x52\xb2\x86\x52\xb9\xd4\x5a\x7b\x12\xa8\x45\x67\x9b\x26\x29\x10\x92\x51\x4d\x4e\x84\xe9\xfd\xae\x49\xed\xe3\x68\x5a\x7c\xf3\x93\x39\x90\x28\x49\xaf\x43\x00\x93\xab\x3f\x81\x48\x77\x09\x24\x80\x1c\x54\xa2\xff\x38\x39\x5b\xfd\x66\xbd\xf9\xc3\x42\x6e\x55\x95\x2a\xd6\x4a\x91\xa0\x3e\x64\xef\xbb\x49\x35\x68\xc9\x5a\xad\x92\xa7\xf4\xd7\xd3\x3c\xda\x6c\xd3\x24\x55\x3c\x00\xc0\x01\xa1\x85\xa4\x93\xda\xc7\xd1\x8c\x62\x90\xc9\x5c\x4a\xd7\x64\x33\xd6\x7a\xed\xea\x8f\x2c\x32\xb9\xc4\x36\x04\x6f\xa2\xf6\xfe\xc9\xd9\xea\x0f\xeb\xcd\x6f\x17\xee\xb5\xaa\xce\x20\x53\x69\xad\x60\x4d\x30\xea\x77\xa3\xbe\x30\x2f\xad\x26\xc5\x69\x11\x04\x4e\x50\xf2\x6c\xd3\x24\x05\x48\x35\xde\xca\x36\x68\xa8\x34\xa9\x7d\x14\xcd\x53\x82\x0a\x93\x39\x40\x0a\xf1\x3a\x04\x56\x26\x57\x7f\x0a\x91\x1a\x13\x60\x20\x4f\xb7\x51\xfb\xe3\xc9\xd9\xea\xb7\xeb\xcd\xdf\x17\xa3\xc6\xe6\x26\x8d\xb7\xc3\x10\x55\x8d\xa6\xd0\x70\x18\x51\x8b\x0c\x63\x39\x7a\xbf\x69\x7f\x9f\x87\x3e\x04\x6e\x08\x87\x8e\x3e\x8a\xb6\xbf\x9e\x61\x0e\x7c\xd0\xf1\x6e\xe3\x4d\x08\xd8\xdc\x8f\x2f\x32\x5c\x02\xe7\x25\x1e\xac\xf2\xff\x74\x72\xb6\xfa\xfb\x7a\xf3\x8b\x85\xa8\xb1\xa2\x5a\x4d\x29\x54\x6e\x0d\x2b\xf3\xed\x25\x71\x89\x4d\x9a\x51\x2c\x50\x15\x5d\xa4\xd9\xa6\x49\x2a\x09\x40\xf0\xb7\x84\x50\x52\xcb\x7b\xb5\x8f\xa1\x4d\x1f\xcf\x4c\xe6\x12\x02\x78\x9b\x92\x54\xb0\x34\xb9\xfa\xe3\x8b\x0c\x97\xa6\x35\xde\x6d\xd4\x3e\x3e\x39\x5b\xfd\x62\xbd\xf9\x6a\x21\xaf\x35\x85\xd6\x2c\x27\x2b\xb1\x46\x2c\xd3\x30\x54\x2d\xea\xac\x94\x50\x92\x31\x49\xc6\xac\x80\xac\xb3\x4d\x93\x14\x67\xc0\x29\xe2\x13\xa1\xd6\x58\x61\x52\xfb\x28\x5a\x6b\x3e\x24\x9e\xcc\xdd\x92\xfb\x8d\xe3\xf7\xae\xfe\x34\x22\x21\x01\xd0\xc1\xea\xf6\xbf\x4e\xce\x56\x5f\xad\x37\xbf\x5f\xb8\xd7\x9a\x49\x41\xb6\xda\x4a\x71\x95\xad\xc8\x64\xd2\x6a\xcd\xd8\x72\xe9\x55\x0c\xd5\xe0\x5c\xd4\xbc\xd0\x34\xa4\x5c\xf4\x61\x54\xe9\x13\xa1\xb2\xa6\x12\x26\xb5\x8f\xa2\x61\x4b\x58\x61\x32\x07\xd5\x55\xb9\x26\xb7\x34\xb9\xfa\xa3\x8b\x4c\x2e\x81\x60\x3b\x1c\xa1\xff\x79\x72\xb6\xfa\xfd\x7a\xf3\xe7\x85\x7b\x8d\xad\x96\x94\x5b\x6b\xa2\x1e\xb3\x8f\x07\x97\xe4\x7a\x69\xc8\x52\x89\x93\xf3\x12\xa6\x91\x75\xaf\x69\x92\xba\x59\x5a\x4d\x84\x96\x0c\xb2\x9f\xd4\x3e\x8a\x16\x30\x97\xd8\x26\x73\x00\x31\x7b\xb7\x27\x6b\x9c\x5c\xfd\x09\x44\x68\xfa\xc4\x20\xba\x83\xf7\x9d\xff\xfb\xe4\x6c\xf5\xe7\xf5\x46\x75\x21\x6c\x7d\x4a\xac\xa6\x35\x04\x1b\x9f\xff\xea\x75\x4f\x8d\x0f\x5d\x45\x4d\x53\x72\xa9\xd6\x50\xc1\xcd\x36\x4d\x52\x29\xf9\x00\xe1\x80\xa0\x3e\xe1\xa4\xf6\x51\x34\xad\x0c\x18\x26\x73\x52\x5d\xbb\x21\x6b\xbc\x76\xf5\x47\x16\x99\x5c\x22\x72\x11\x0e\x26\xd1\x2b\x3d\x39\x5b\xa9\xae\x37\xbb\xc5\xc0\x69\xcb\x60\x5a\x5c\xa8\x06\xbe\xb8\xfd\xd4\x6d\xc5\x99\xf6\x9c\x60\x4d\x9a\xaf\xd3\x67\xe0\xb3\x4d\x93\x54\x69\x7d\x05\x7f\x40\x68\x89\x69\xaf\xf6\x51\xb4\x1a\xd4\xe5\xc9\x5c\xc1\x03\x72\xad\xd7\xae\xfe\xd8\x22\xc3\x25\x81\x21\x78\x13\xb8\xf3\x1e\xb8\x9d\xae\x37\xa7\x0b\x81\x6b\xaa\xc5\x38\x69\xcd\x8a\x7e\xbc\x57\xd8\x57\x3d\x66\xde\xac\xb4\xc6\xca\x54\xb2\x36\x72\xc8\x58\xe2\x6c\xd3\x24\x05\x12\x31\xd5\x1b\x42\xa5\x56\xd4\x26\xb5\x8f\xa2\x05\x97\x5c\xdd\x9b\x03\x09\xd3\x1b\x1b\xbd\x96\x30\x9b\x5c\xfd\x09\x44\xba\x4b\x20\x1e\xe8\x60\x61\x75\xd1\x03\x77\xaa\xeb\x4d\x5e\x08\x5c\x5f\xe9\x2a\x64\x6c\x29\x95\x9b\x0c\xd7\xd3\xa9\xa6\xb1\x80\xf2\x1c\x6a\xb8\x5e\xf2\xce\x36\xdd\xa4\xae\xdb\x05\xba\xa6\x9e\x8a\xeb\x5e\xed\xa3\x68\x37\xb9\x67\x5a\x94\xef\xd3\x55\x5f\x28\xc5\xc9\xd5\x9f\x40\x64\x6e\x1d\x7f\xd9\x03\x97\x75\xbd\x79\xb3\x34\x54\xa1\x1f\xa5\xf5\x83\x7c\x3f\x26\xab\x6c\x3c\x7d\x11\x24\x51\x3f\xa2\xeb\xc7\x6c\xd3\x24\x35\xda\xe3\x0d\x61\xff\x85\x8c\xa1\xf6\x51\x34\xf6\xfd\x98\xcc\xdd\x92\xa7\xbf\xe1\xea\x4f\x24\x02\xf0\xf6\xf2\xea\x55\x0f\xdc\x1b\x1d\xcf\xe4\x5d\xf8\x84\x44\x9b\xc5\x52\x4b\x6b\x95\x23\x95\x82\xdd\xaa\x33\x30\xae\xa5\x26\x75\x49\x53\xae\x42\x39\x62\xf6\xb3\x4d\x93\xd4\xf8\x1c\xce\x6e\x08\x2d\xb7\xac\x65\x52\xfb\x28\x9a\x00\xb7\x92\x27\x73\x21\x63\x90\x91\xb0\xaa\x15\x6b\x93\xab\x3f\xba\xc8\xe4\x92\x37\x00\x6e\xb7\x81\xb3\x1e\xb8\xaa\xeb\x4d\x5b\xba\xe3\x54\xa1\x39\xab\xc9\xb1\x6b\xea\xda\x94\x59\x55\x63\x4b\x56\xb3\x26\xb4\x42\x39\xe4\x5a\x50\xb0\xcd\x36\x4d\x52\x39\x82\x61\x3c\x20\x94\x92\x71\x52\xfb\x28\x9a\x9a\x2f\xae\x4e\xe6\xc6\xea\xbc\x4d\xb7\x4f\x34\xb8\x76\xf5\x47\x16\x99\x5c\xea\xcb\x05\x38\x08\xdc\xcb\x1e\xb8\xa6\xeb\xcd\xeb\xe5\xc0\x51\xd5\xf1\x4e\x68\x51\x8a\x11\xf6\xd1\x69\x4d\xad\x15\x95\x38\x4d\x43\x2d\x05\x1e\x1f\x73\xdf\x6f\x9a\xa4\x32\x79\x02\x7f\x40\x68\x90\xdd\xa4\xf6\x51\x34\x43\x4a\xe8\x5b\x0a\x02\x78\x58\x5b\xc4\xf1\x19\xf4\x70\xf5\x47\x16\x99\x5c\x62\x73\x0c\xe1\x36\x70\x67\x3d\x70\xaf\x75\xbd\xf9\x66\xf6\xc7\x88\xfb\xa7\x2f\x9f\xe5\xef\x56\xb0\xb9\xd9\x1d\x0d\x37\xba\x5e\x6f\x8e\x76\x2f\xca\xea\xe8\xc9\x1c\xc1\xc5\x38\xbd\xd8\x5d\xbc\x39\x6f\xab\xa7\x61\x1b\xc3\x53\x3d\x5e\xf9\xb8\xf5\xe3\xc4\x79\xc1\x2d\xfb\x7e\x4a\x01\xdc\x96\xfb\x19\x83\x0b\x5b\x76\x4f\x1d\x23\x6c\x23\x1f\xeb\x7a\xfa\x7b\x72\xb4\xf9\xf9\xbf\x64\xc7\xbb\x6d\x48\x4f\xf4\x78\x85\x0c\x5b\xf6\xfd\x2c\xba\xad\xb8\xae\x1c\x3d\x6e\x03\x8d\x33\xa6\x6d\x94\xa7\xc4\x5b\xff\x7f\xb0\x21\xb8\x75\xa1\x6b\x0e\xc1\x6d\xfd\x50\xe8\x82\xb8\x6d\x98\x2e\x06\x89\xb7\x6e\x5c\x22\x11\x86\x6d\x0a\x4f\x5d\xe0\xb8\xa5\x43\x4b\xeb\xa3\x1f\x36\xdf\xeb\xc9\x6e\x15\xc6\xa3\xab\x77\x2b\x1a\x0f\xad\x1e\x46\x3e\xff\xe4\x97\x28\xb0\xf9\xab\x9e\xa0\xc0\x2f\xf7\xff\xda\x7c\xab\x27\xb8\x65\x71\xcc\x9b\x8f\xf4\xe4\xe9\xd6\x25\xe7\x78\xf3\xbc\x9f\x26\xa0\x90\x36\xcf\x3a\x21\xb1\x4b\x61\xf3\x9d\x9e\x3c\xd3\xe3\xe7\xba\x79\x6f\x9c\x7c\xab\x9b\x2f\xf5\xe4\x5b\x3d\xfe\x48\x9f\xfe\xfc\xe9\xb6\x27\x2a\x3c\x7e\xae\x77\x1f\x2c\x78\x6a\xab\xdb\x1f\x87\x5f\xd8\xcf\x3f\xbf\xd9\x0b\xe0\xfa\x19\x5e\xdb\x97\x1b\xdd\x5e\x6e\x74\xfb\x6a\xa3\xdb\x8b\xd7\xb9\x9e\x5e\x7d\xbf\xfe\xd9\x5b\x42\x45\xb7\xe5\x9f\xff\x5c\x5d\x6f\x76\xb4\x2a\xba\x7d\xb1\x5e\xe9\x7a\xfa\xbe\xeb\xd5\x89\x6e\x77\xbf\xec\xe1\xdc\x9d\xe8\xf6\xc5\x38\x3b\x3f\xd1\x6d\x19\x67\xa7\x27\xab\x2f\xf5\xf8\xfc\xc9\x77\x7a\x7c\xf5\xf4\x3d\x3d\xde\xad\x7f\xb9\xfa\x52\x9f\x7c\xa7\x4f\xdf\xd3\xf1\x25\xd4\xa7\xa7\x9b\x7c\xb2\x7a\xa6\xc7\xab\xdd\xd3\xd3\xf5\xd3\x8f\xf4\xf8\x62\xfd\xcb\xe7\x7a\xfd\x10\xf5\xb1\xe1\x67\x3e\xce\x4f\x2e\xfa\xff\x3b\xef\xf4\x78\x85\x4f\x4f\xd7\xeb\xcd\x9b\x93\xcb\x5f\x4f\xbb\xf6\x5d\xe5\x73\xb7\xca\x9b\x8b\xf5\xf1\x5f\xf5\x29\x3a\xf8\xd5\x67\xf9\xb3\x9f\xbd\x7d\x9d\x6f\xfe\x03\x7e\xfd\xe6\x89\x27\xf8\xd5\x9b\xcd\xe5\xe6\xf4\xe0\x5a\x6f\x7f\x89\xfd\xa9\x5e\xef\x62\xf4\xd6\x93\xcf\xee\xfd\xfc\xf5\xeb\x3b\x0f\x41\xeb\x12\xe3\xe7\xb0\xe7\xbf\xc6\x5f\x9d\x1f\x28\xfc\xfc\x40\xe1\xd8\x7b\xe3\xe5\xd8\xc4\xa4\x9f\x5d\xde\xec\x64\xf2\xea\xe4\xc9\x7e\x1f\x8f\xbd\x47\x27\x4f\xce\x7f\xd8\x47\xfa\x7b\xdd\xe6\xf5\xea\x73\xdd\x7c\xaa\x9b\xdb\x7f\x95\x75\xef\x82\xbc\xf9\xdf\xb2\x3b\x7d\xf1\xf2\x4a\x77\xbf\x9a\x1d\xe2\xd7\x3f\xd1\x2d\xba\xad\xbf\xba\xd9\x26\xb5\xbf\xda\x68\xaf\xbb\x87\xfb\x93\x5b\x7b\x9f\xf6\x0e\x1d\xeb\x5b\xfe\xac\x7f\xd8\xb4\xbc\xfb\xfa\x5f\x30\xd3\xde\x32\xd3\x1e\x6d\x66\xf7\xa2\xdc\xdf\x2b\x60\xda\xb7\x63\x52\xb0\xfe\x35\xec\xf7\xb1\x7c\xf9\x04\x1d\xac\x8f\x5f\x4c\x7b\xc2\x0c\x7d\x9b\xdd\x21\xf7\xb2\x73\xa7\xb3\xe3\xab\xb1\xa9\xca\x7a\x73\x7e\xfb\x60\xfe\xb1\x6b\xd2\xcd\x83\xf9\x75\x7d\x78\xbb\xf4\xfb\xbd\xe7\x87\xe3\xd5\xd5\x93\xdd\xf1\xea\x7a\x74\x9d\x3f\xf9\x56\x8f\xfb\x8d\x77\xdb\xf4\x51\xbf\xb5\x9f\xdf\xfd\xef\x33\x3d\x3e\x5f\xaf\xef\x5c\xdc\x0f\xfb\xe1\xf2\xb7\x9e\x19\xee\x3e\x07\xef\xf6\xeb\xe9\x37\xfb\x2a\xae\x76\x07\x3b\x9f\x9e\xaf\xae\xfa\x3d\xd4\xe5\x4f\x4f\x74\xb5\xba\x3a\xf9\x54\x57\x57\xeb\xf5\xf6\xe5\x66\x75\xde\xcf\xcf\xfb\x79\x1f\x4f\xfb\xbb\xe4\x6f\xe3\xc6\xb9\xda\x5e\x6e\xce\xb7\x97\xeb\x4d\xbe\xfb\xff\x57\x9b\xf3\xed\xab\xf5\xe6\xf2\xee\xff\xf7\xee\x6e\xce\x6f\x53\xc1\x1d\xcf\x0e\xf7\x60\xdd\xbe\x3c\x39\x1d\x4f\x7a\xdc\x5e\x9e\x5c\x4c\x27\xaf\x4e\xf2\xea\xe6\x26\xd0\xcd\xae\xc7\xe1\xe6\xc6\x1e\x61\xbf\x7a\x72\x74\xf4\xc3\xcd\x2e\xad\xfd\xe6\x3f\xdf\xbe\xc8\x67\x67\xf9\xe4\x6a\x73\xfe\xc3\x0a\xd7\x3f\x7c\xa1\xdd\x9f\x3a\xc5\xeb\x03\x3d\x99\x5e\xe7\xf5\xe6\x13\x3d\xf9\x40\x57\x9f\xea\xca\x03\x6c\xb6\x71\x03\xeb\xcd\xa7\xba\x7a\xea\xc2\x78\x85\xeb\xf5\xe6\xc3\x6b\xc6\x53\xec\x14\x8e\x9b\xad\x8f\x83\x25\xb0\xc1\x6d\xdc\x6c\x65\xbd\xde\x7c\x76\xcd\x72\xb4\x4c\xfa\x9d\xf6\xc0\xae\x37\xbf\x79\x7b\x06\x5d\xe9\x7f\xc0\x3f\xff\xa9\xff\x3f\xae\xff\xed\xdf\x56\xfa\x74\xba\x87\xec\xd5\xc5\xc5\xee\x20\x23\xde\x6c\x26\xaa\x4f\xb7\xf1\x26\x84\xbf\xd3\xed\xcb\x13\x4f\x70\xac\xc3\xbb\xdf\xe9\xf6\xf2\x04\xb7\xf1\x29\x6e\xe3\xf1\x55\x7f\xf9\xea\x64\x2b\x4f\xb7\x69\xbc\xe8\x51\xda\xfc\xe3\x30\xe7\xda\x7a\xb5\xde\xfc\xe1\x76\x42\xf1\x9b\xf7\xf5\xc4\x1d\xdf\xbe\xfc\xad\xde\xff\x09\xeb\xcf\x6e\xc6\xe9\x6a\x1b\x9f\xea\xfa\x9a\xbe\xf9\x87\x6e\x77\x27\xd3\x3d\x7b\x38\x0e\xd6\xc7\x57\xbd\xe9\xc5\xfd\xa6\x27\x7f\xb8\x69\x2d\x33\xad\xef\x5f\xb7\x0e\xc7\xff\xf8\x13\x96\x1d\x3e\x6c\x09\x47\x39\x80\xec\xb6\x7e\x4c\xd0\x08\x9c\xfc\x36\x8e\x79\xdb\x7b\x0f\xb0\xc5\x51\x1e\x78\xf1\x29\x6c\x43\x7a\x8a\x41\x5c\xdc\x42\x7c\x7c\x65\xe0\xfc\xd6\x0f\x73\x31\xf2\xd6\x8f\xea\x03\x9d\x8b\x7b\xc3\x3e\x72\xd8\x26\xda\xfb\xe0\xb7\xcc\x4f\x18\x78\x1b\xe9\xff\x60\x88\xb7\xae\x6b\xf7\x0e\x71\x8b\x43\x63\xf4\x8e\xb7\x69\x54\x51\x8e\x05\xa7\x1a\xcb\x45\x4a\x5b\x94\xa7\x24\x5e\xb6\x44\x6f\x57\x20\x6f\xef\x8f\x7e\xfb\xcb\xec\xfd\xbe\x75\x77\x07\xf3\xee\x60\x53\x92\x39\x17\xaf\x9e\xe2\xe6\xe0\x0e\xdf\x1d\x5f\xad\xd7\xeb\xbf\xfc\xf0\xc3\x7e\xa3\xe6\xbf\xeb\xea\x7c\x75\x14\x02\x60\x0c\x21\x80\x8b\x14\x22\x84\xc8\x21\x42\x8c\x29\x10\x70\xcc\x81\x40\x62\x0d\x04\x39\xb6\x40\x50\xa2\x06\x86\x46\x10\x18\x94\x30\x30\x02\xf9\xc0\x88\x14\x02\xa3\xa7\x18\x04\x03\x71\x10\x24\x92\x20\xc8\x94\x82\xa0\x50\x0e\x82\x99\x6a\x10\x2c\xd4\x82\x60\x25\x0d\x82\x8d\x2c\x08\x1a\x43\x10\x07\xdc\x3b\x19\xd9\x07\x71\x9e\x43\x90\x5e\xa2\xf5\x6e\x67\x0a\xe2\x88\x39\x88\x13\x96\x20\x2e\x71\x0a\xec\x32\xe7\xc0\xae\x0e\x6c\x5c\x02\x3b\xe5\x1a\xd8\x19\xb7\x40\x1e\x58\x03\x79\x37\xd0\xb3\x05\xf2\x41\x20\x44\x1f\x05\x43\xf4\x3c\x50\xc4\x85\xe0\x93\xf8\x10\x7c\x1e\x58\x24\x04\xef\xdb\x40\x95\x18\x9c\xb7\x8e\x01\x84\x82\x0b\x28\x14\x30\x38\xe1\x80\x21\x08\x07\x08\x51\x24\x40\x20\x11\x6f\x81\x07\x8a\x24\xaf\x21\x0d\xcc\x03\xab\x64\xdf\x42\x1b\xa8\x92\x7d\x0d\xd6\x31\x82\x14\x5f\x22\x0e\x74\x52\x7c\x8e\x7e\x60\x90\xea\x53\x8c\x03\x49\xaa\x97\x28\x03\x93\x54\xcf\x31\x0f\x2c\xd2\x3c\xc5\x3a\xb0\x2f\x29\x62\xd4\x81\x26\xcd\xf7\x0e\xeb\x88\xd2\xbc\x27\x37\xd0\x4b\xf3\x8e\x82\xa8\x77\x14\x45\x7d\xef\x9c\x8e\x3c\x50\x44\x3d\x50\x1a\x98\x45\x9d\x51\x19\x58\x45\x9d\x52\x1b\xa8\x03\x4d\xd4\x35\x86\x81\x28\xea\xea\x1e\xc7\xaf\x50\xd8\x8b\xba\xc2\x61\x60\x14\x75\x99\x69\x20\x0f\x14\xd1\xde\x73\x03\xf3\xc0\x6e\x45\xb8\x0e\xec\x56\x98\x75\x60\xb7\xc2\xd2\xad\x90\xe0\x40\x77\x83\x51\xfc\xc0\x30\xb0\x5b\x09\x42\x03\xbb\x15\x2f\x32\x30\x0d\xcc\xd2\x9c\x93\x32\xb0\x0e\x6c\xd2\x1c\x8a\x0e\xb4\x8e\x09\x06\xf6\x95\x1b\x24\x77\x80\x5e\x2a\x5a\x0a\x03\xa3\x14\xb4\x44\x03\x79\xa0\x0c\x4c\x92\xd1\x52\x96\x8c\x9a\xca\xc0\x2a\x09\x35\x35\x49\x68\x49\x07\x9a\x08\x5a\x86\x81\xb8\x47\x46\xcb\x4e\xd8\x41\xf6\x42\x0e\x72\x10\x72\x98\xa3\x44\x87\x99\x24\xba\x1e\xac\x8e\x22\xc1\xf9\x9c\xc4\xbb\x90\xb3\x78\x17\x73\x11\xe7\x62\xae\xe2\x1c\xe5\x26\xe8\x78\xa0\x64\x15\x70\x29\x1b\x9b\xcb\x05\xd8\x5c\x2d\xc8\xea\x5a\x71\xdc\x9c\x16\xcf\xd5\x59\x09\x5c\x3d\x96\xc8\xc5\xbb\x42\x9c\x7d\x28\xc4\xc9\xc7\xc2\x9c\x3c\x17\x61\xf1\x52\x12\xb3\xcf\x25\x33\xf9\x52\x0a\x47\xdf\x4a\xe5\xe0\xad\x54\xf6\x01\x4a\x63\x17\x5c\x51\xc6\x10\x4a\x1f\xb3\x54\xa1\x8f\xdf\x8a\xa4\x21\x57\xa4\x16\x6a\x75\x54\x83\x56\x4f\x25\x42\x0d\x94\xa3\xab\x91\x52\x0c\x35\x92\x44\xaa\x44\x1c\xa5\x32\xc5\x7e\x11\x14\x62\xad\x42\x3e\x6a\x4d\xe4\x08\x6a\x26\x20\x5f\x4b\x34\x8a\xb5\x44\x25\xae\x35\x56\x4a\xb5\xc5\x42\xb5\xb6\x98\x49\xab\x46\x61\xa8\x16\x99\x7d\x83\x48\x1c\x1b\xc4\xc0\xdc\x30\x7a\xce\x0d\x23\x72\x6d\x2e\x02\x5b\xf3\x41\x05\x9b\x0f\x4d\x42\x0b\xa1\x08\xb5\xd8\xc7\x65\x8b\x41\xa4\x34\x0a\x24\xda\x28\xc4\x04\x8d\x83\x4f\xbe\x71\xc0\x14\x9b\x04\x48\xd2\xc4\x6b\x2a\x2d\xf9\x9a\x5a\x4b\xbe\x64\x68\xd9\xa7\xec\x5a\xf6\x9c\x63\x2b\x9e\xb2\xb4\xe2\x43\xce\xad\x7a\x97\x5b\xab\x1e\x0a\xb4\xe6\xac\xb8\xd6\x5c\x2b\xb1\xa9\x2b\x45\x9a\xba\x54\x72\x53\x27\xa5\x35\x73\x54\xa1\x99\x8b\xd5\x35\x73\xbe\x46\x05\x87\x55\x14\x1c\xd4\xac\x88\x56\x9b\x22\xb6\x06\x8a\x58\x9b\x53\x87\xa5\x45\x75\x98\xfb\xd0\xc0\xd4\xb2\x7a\x4c\xad\xa9\x47\x69\xd6\x51\x9d\x06\x14\x8d\x1a\x30\x29\x0f\xcc\x1a\x31\xf7\x20\x61\x51\xd3\x88\xd5\x50\x23\x36\x0b\x4a\xa8\x46\x4a\x0e\x4c\x94\x1c\x5a\x51\x76\xde\x9a\xb2\x8b\x47\xeb\xf5\xe6\x17\xd7\x93\xc1\x78\xcf\x30\x00\x02\x40\x04\x04\x04\x1a\x28\xe0\x00\x21\x81\x03\x07\x65\x60\x03\x0f\x1e\xac\x23\x3a\x08\x10\x30\x40\x84\x80\x04\x04\x11\x65\x60\x06\x06\xc2\x0a\x02\x8c\x0a\x09\xd8\x01\x64\x10\xd7\x75\x24\x17\xa0\x42\x72\x04\x0d\xb2\x4b\xa0\x50\x5c\x41\x80\xe2\x1a\x22\x54\x67\xe8\xa0\x79\x44\x0f\xcd\x77\xdd\xea\x09\x23\xa8\x17\x24\x30\x5f\x50\xc0\x7c\xc3\x84\xe0\x0d\x33\x42\x70\x58\x11\x42\xc0\x86\x7d\x52\x52\xc4\x90\x1c\x20\x86\xe2\x10\x31\xa8\x73\x88\x11\x5c\x40\x17\xbd\x8b\xe8\x62\x74\x8c\x2e\x8a\x4b\x88\x31\xbb\x8c\x18\xab\xab\x88\xd1\xba\x7d\x42\x67\x88\xe4\x3d\x22\x52\xf4\x1e\x81\xd8\x07\x04\x4a\x9e\x10\xa8\x78\x41\xa0\xea\x13\x18\xa9\x2f\x60\x0c\xbe\x81\x31\x7a\x03\x63\x17\x00\x8c\x43\x70\x60\x1c\x43\x00\x63\x0a\x11\x81\xb9\x4f\x96\x2c\x21\x0d\xcc\xbd\xe6\x09\x15\x91\x73\x50\x44\x2e\xc1\xd0\x71\x89\x88\x8e\x6b\x74\xe8\xb9\xc6\x80\x9e\x5b\xec\xb3\x6c\x8b\x8c\x91\x35\xa6\x81\x19\x89\x35\x56\x24\xb6\xd8\x90\xd9\xa2\xa1\xb0\x11\xa0\x08\x90\xc3\x24\x40\x01\xb3\x00\xc5\x81\x8c\x45\x80\x04\xab\x20\xe5\x81\x05\x9b\x20\xb5\x81\x8a\x2a\xc8\x80\x26\xc8\x6e\xa0\x77\x20\xc8\xd1\x61\x9f\xbf\x07\x8a\x73\x82\x9c\x9c\x13\xc7\xc5\x79\x71\x5c\x07\xf6\xc4\xeb\x04\x7a\x20\xa5\x87\x13\xc5\x8f\xa4\x1d\x06\x52\xaf\x7a\x44\x06\x26\x27\x82\x52\x5c\x92\x9e\x6c\xd3\x48\xec\x59\x30\xc1\x40\x74\x45\x30\x79\x57\x04\x52\x70\x55\x20\xd1\x40\x71\x4d\x20\xa5\x81\xc5\x29\x5b\xaa\x03\xd5\x19\x5b\x86\x81\xd8\x27\xfb\xec\x07\x46\x8f\xac\x99\x3c\x72\xeb\x19\x93\x5b\xce\xde\x73\xcb\xc5\x7b\xae\xb9\xf9\xc0\x35\xab\x0f\x5c\x0a\xf8\xc8\xa5\xb8\x81\xde\x13\xe7\x12\x07\xb2\x67\x4e\x45\x06\x66\x2f\x2c\xa5\xfa\x9e\xf5\x9b\x4f\xcc\xc5\x7c\x66\xae\xe0\x33\x53\x75\xbe\x70\xac\xc1\x57\x8e\x35\xfa\xca\xa1\xb2\x6f\xec\xab\x78\x65\x5f\xb3\x57\x76\xb5\x7a\x63\xac\x2d\x00\x63\xb5\x00\x0c\xad\x0f\x11\x6b\x2e\x38\xea\x29\xca\x93\xb6\x18\x02\xb5\x9e\x8a\xa8\x36\x19\x98\x02\x51\x69\x25\x30\xe5\x56\x83\x50\x6a\x1a\x12\x49\xb3\x90\x49\x14\x42\xa5\x1e\xf8\x46\xa4\x3e\x28\x45\x0d\xc1\x28\x68\x8c\x40\x41\x39\x3a\xea\xb5\x8b\x27\xa7\x29\x06\x72\x9a\x23\x11\x6a\x89\x4c\xa0\x35\x0a\x81\xb6\x98\xa3\xa9\xc6\x12\x55\x2d\xb6\xa8\x06\xd1\xa2\x1a\x12\xc4\x9e\xa7\xdc\xc0\x10\xab\x79\x8a\xb1\x5a\x20\x1e\x98\x62\xb5\x48\x25\x56\x23\xaa\x03\x35\x56\x63\x86\x81\x2e\x56\x13\x0e\x03\x29\xd6\x3e\x57\xc6\x66\x89\xd3\xc0\x12\x9b\x65\xee\xb6\x32\x77\x5b\x59\x30\x9a\x15\xf1\x03\x23\x81\x15\x61\x42\xab\x92\x06\x66\x72\x56\xa5\x92\xb7\x2a\x4a\xc1\x6a\x02\x8a\xd6\x92\x23\xb2\x1e\x20\xb6\x96\x88\xc4\x5a\x12\x4a\xd6\x52\xa6\x6c\x2d\x15\x2a\xa6\xa9\x51\x35\x4d\x46\xcd\x34\x23\xa9\x69\xf6\x64\xa6\x39\x32\x9a\x66\x66\x67\x9a\x13\x7b\xd3\x9c\x39\x98\xe6\xca\x64\x9a\x95\xd9\xb4\x00\x8b\x69\x71\x9c\x4d\x4b\xe0\x62\x5a\x88\xab\x69\x61\x56\xd3\x92\xd8\x4c\x4b\x11\x34\x2d\x4d\x9c\x69\x31\x09\xa6\x15\x25\x9a\x56\x27\x6c\x5a\x83\x88\x69\x25\xc9\xa6\x55\xa4\x9a\xd6\xdc\x33\x76\xad\x62\xa6\xb5\x25\x30\xad\x96\x9c\x69\xc3\x14\x4c\x9b\x4f\xd1\xb4\xc5\xc4\xa6\x8d\x53\x32\x6d\x92\xb2\xb5\x96\x53\xb5\xf1\x29\x85\xb5\xa6\x19\xac\x29\x64\xb4\xa6\x2e\xf7\xc4\xed\x73\xb4\xa6\x31\x73\x4f\xe2\x39\x59\xd3\x94\xb3\x35\x2d\xb9\x5a\xd5\x9a\xd5\xaa\x6a\x01\xab\x06\xc5\x59\x35\x57\x82\x55\x0b\x85\xac\xf6\xfa\xce\xaa\x71\x49\x56\x2d\x95\x62\xd5\x4a\x69\x36\x7e\xba\xdd\x27\x83\x8f\xff\xa5\xc9\x20\x8f\x69\xa0\x0e\x54\xf0\xe0\xb0\x73\xa7\xc9\xc0\xef\x27\x03\x06\x82\x80\x09\x18\x22\x16\x10\x88\xd8\x20\x01\xa1\x41\x06\x1e\xd3\x00\x8f\x69\x40\xc6\x34\x20\x63\x1a\x48\x63\x1a\x48\x63\x1a\xc8\x1e\xb0\x97\x49\x0e\x03\x14\x1f\x30\x42\xf1\x8c\x04\xc5\x27\x14\xa8\xbe\x62\x82\xea\x15\x0b\xd4\x80\x58\xa1\x06\x8f\x0a\x35\x44\x34\xa8\x7d\x35\x01\x35\x64\xe7\xa1\x86\xda\xed\x04\xeb\x65\x46\x44\x27\x50\xa2\x77\x09\x4a\x8c\xae\x40\x89\xec\x1a\x94\x98\x9c\x41\x8e\xc5\x23\xe4\x58\xbd\x83\x1c\xd5\x07\xc8\xd1\x3c\x41\x22\xf4\x23\x2b\xf9\x04\x89\xbc\x2f\x90\x28\xf8\x06\x89\xa2\x57\x48\x44\x01\x20\x13\x07\x07\x99\x24\x84\x81\x11\x32\xa5\xc0\x50\x28\x87\x34\x30\x43\xa5\x12\xea\xc0\x06\x8d\x6a\xb0\x8e\x11\x41\xa9\x46\x07\xda\x8b\x14\x30\x6a\x31\x0e\xec\xab\xab\x9e\xf4\x3b\x66\xc4\x3e\xdc\xd0\x91\xc6\x36\xd0\xd0\x93\x12\x0e\x74\x18\x48\x29\x60\x24\xa5\x38\x90\x91\x48\x29\x0d\xcc\xc8\xa4\x54\x51\x48\xa9\x0d\x34\x4c\xa4\x8c\x03\x7b\xd9\xa9\x1c\x06\x46\x2c\xa4\xcc\x58\xa9\xb1\x0c\xcc\xd8\xa8\x71\x1d\xd8\x50\xa9\xb1\xa1\x52\x15\xc0\xbe\x42\x70\x0e\xa8\x4a\x70\x40\xa5\xd7\xaf\x54\x84\x07\x8e\x12\x55\xf2\xc0\xea\x3c\x25\x69\x03\xcd\x05\x4a\xa9\x2f\x35\x25\xb9\x81\xde\x11\x71\x8a\x03\xd9\x31\x51\x92\x81\xd9\x09\xc5\x54\x5c\xa2\x90\xda\x40\x73\x99\x7c\x86\x81\xce\x15\x72\xd9\xbb\x4a\xd8\x8b\x4c\x82\x4c\xae\x11\x64\x71\x1a\x2d\x27\xa7\x51\x73\x71\x16\x35\x37\x0f\xb1\x17\x4f\x10\x6b\x01\x8f\xb1\x14\x1c\xa5\xb4\x1f\x18\xbc\x8f\xa9\x90\x0f\x51\x0a\xfb\x18\xb9\x24\x1f\x23\x95\xdc\x33\x5f\xe9\x6b\xad\x50\x9a\x97\xe8\x8b\xf9\x14\x5d\x4f\xfd\x11\x2b\xfa\x1c\xa1\x7a\xdf\xc7\x54\xf0\xbd\xe2\xa5\xbe\xc6\xab\xdc\xd7\x7b\xb5\xaf\x03\x4b\xcd\x01\x42\xae\x25\x60\x48\xb5\x06\x17\xa4\x6a\xe8\xf3\x8f\x85\x9e\xef\x21\xc4\x10\x9b\x0b\x14\x42\x9f\x95\x82\x6f\x21\x48\x70\x2d\x86\x1c\xb0\x71\x28\xde\x9a\x84\xea\xb5\xa5\xd0\x7c\x6b\x39\xa8\xaf\xad\x44\xf0\xa5\xb5\x88\x3e\x37\x8d\xce\x4b\xb3\xe8\x3d\x2b\xc4\xe8\x49\x31\xf6\x62\xda\x45\xf6\x41\x7d\x4c\xde\x6b\x88\xd9\xa3\xc6\x58\x3d\x28\xc5\xe6\x4c\x39\xaa\x53\x15\x02\xd7\x34\x11\xba\xd2\x67\x4b\x97\xb5\x50\x70\x49\x0b\x91\x13\xad\xc4\x8e\xb4\x51\x72\x51\x95\xb2\x0b\x6a\x7d\xb6\xeb\x05\xa4\x43\x03\x32\x07\x86\x8c\x68\x86\xec\xb1\x99\xe3\x80\xd5\x3c\x13\x16\xeb\x4b\xeb\x64\x81\x13\x8a\x45\x2e\xc8\x16\x7b\x71\x6e\xc4\x8a\xc1\x48\x00\xbd\xb1\x38\x74\xc6\x12\x10\x4c\x24\x82\x99\x08\x83\x9a\x48\x82\x6a\x49\x0a\x14\x4b\x52\x21\x5b\x12\x85\x64\x39\x01\x48\xef\x54\x60\xcb\x29\x00\x5b\x49\x04\x64\x25\xf1\xc0\x34\xb0\x0c\x6c\xc0\x56\x93\x75\xcc\x08\x62\x35\x7b\x48\x56\x73\x84\x6c\x7d\x81\x51\xad\x66\x81\x66\x35\x67\x30\xab\xb9\xf6\xc2\x3b\x2b\x3a\xab\x05\x30\x58\x2d\x0e\xc9\x7a\xb7\x89\x95\x42\x98\xad\x67\xfb\x66\xe3\xc3\x4f\x2b\xa5\xf6\xda\xb9\xa8\xf3\x96\x2b\x38\xb2\x5c\x9d\x13\xcb\x35\xb8\x6c\xb9\x92\x6b\x96\x2a\x3b\xb3\x54\x93\x77\x96\x6a\xf1\xd1\xa4\x36\xcf\x26\xd5\x7c\x36\x6e\xe8\x9b\x71\xf3\xd3\x30\x0f\xde\xa8\x71\x20\x8b\x2d\x85\x64\xb1\x95\x50\x2d\xb4\x16\xcc\x42\xef\x5b\x0b\xbd\x57\xcd\xab\x8f\xd9\xbc\xc6\x3e\x31\x2b\x11\x9a\x53\xa1\x68\x4e\x33\x25\x43\xad\xd4\x0c\xb5\x31\x1a\xaa\x71\x34\x34\xe4\x64\xce\x1c\x37\x73\x16\xc4\x99\xb7\x28\x64\xde\xfa\xb4\x14\x4c\x44\xc7\x8f\x44\x9c\x91\xe5\x44\x26\x56\x52\xb6\x64\x35\x35\xcb\xd6\x32\x5a\x35\xcb\xa1\x4f\x06\x5f\xdd\x4c\x06\x0d\x44\x18\x01\x58\xa4\x97\x5c\x92\x90\x80\x25\x63\x02\x92\x8a\x05\x48\x1a\x36\xe8\x8b\x71\x00\x12\xeb\x99\x21\x81\x0b\x40\x09\x1d\x41\x4c\x3d\xed\xc6\xe4\x5c\x86\x98\xbc\xab\x10\x53\x70\x0a\x31\x45\x67\x10\x13\x79\x84\x98\xd8\xfb\x81\x11\x42\x12\xcf\x10\x52\xf2\x02\x21\x65\x9f\x07\x56\x08\xa9\x78\x85\x90\xaa\xb7\x8e\x01\x21\xa4\x16\x3c\xf8\xa4\x21\x0c\x24\xf0\xc9\x82\x0c\x4c\xd0\x05\x0b\xf8\x8c\xa1\x82\xcb\x18\x14\x5c\x76\x11\x06\x22\xb8\xec\xa3\x1f\x18\xc1\xe5\x10\x09\x30\x87\x28\x03\x13\x60\x8e\xb1\x0c\xac\x80\x99\xa2\x76\x24\x18\x88\x00\x7d\x9d\x3c\x30\x0c\xa4\x81\x0c\x90\x85\xd2\xc0\x3c\xb0\x0e\xd4\x81\xd6\xb1\x07\x31\xf7\xf5\x3f\x66\xe1\x30\x30\x0e\xe4\x81\x32\xb0\xe7\x39\xe1\x32\xb0\x81\xcf\xc2\xda\x51\x00\x42\x16\x41\x08\x99\xc5\x43\xcc\x2c\x61\x20\x01\x65\x12\x06\xce\x24\x02\x92\x49\x32\xa4\x1c\xa5\x40\xce\x51\x1a\x94\x1c\x45\xa1\xe6\x20\x06\x2d\xf7\x45\x88\x66\x9f\x1c\x58\xf6\x29\x60\x5f\x82\x45\xc4\x8c\x7d\x9e\xcb\x98\x04\x43\x86\x94\x30\x26\x4b\x19\x29\x59\xaa\xc8\x49\x53\x43\x49\x2d\x29\xa6\xd4\x32\x60\x4e\x35\x23\x96\x54\xb2\xc3\x96\x72\xcf\x35\x29\xe7\x88\x96\x52\x26\x07\x49\x32\x3b\x4c\x9c\xc5\xb9\x44\x39\x3b\x9f\x62\x2e\x2e\xa4\x90\xab\xa3\x14\x72\x73\x9c\x7c\x56\x27\xc9\x15\x70\x29\x61\x41\x97\x13\x14\xe7\x8a\x58\xf1\xae\x8a\x96\xe0\x54\x5a\x89\xce\xa4\x16\xf2\x20\xa5\xb0\x47\xc9\x45\xbc\x93\x5e\xa1\x7b\x91\x52\x7c\x5f\xd3\x57\x1f\x85\x4b\xf3\x2c\x54\xd4\x8b\xc4\x9e\xb2\x25\xf4\x94\x2d\xbe\xa2\x2f\xe2\xaa\xf3\x55\xb0\x7a\xdf\xa4\xd7\x0a\xca\x56\x63\x00\xd6\x4a\x01\xb9\x55\x0e\x8e\x6b\x95\xe0\xb9\xd4\x14\x02\xe7\x9a\x43\xe4\x9e\xc4\x89\x7b\x12\x67\x96\x5a\x43\x62\xae\x2d\xf4\x15\x80\x86\x32\x0a\xe3\xca\xa1\x41\x68\xec\x1b\x06\x65\xd7\x5c\x30\xc6\xe6\x23\x32\xb6\x10\x1d\x43\xeb\xf9\xd9\x5a\x8c\xa1\xe7\xd5\x18\xa9\x35\x8e\xd4\xeb\xfd\xc8\x54\x5a\x8a\x42\xb9\xe5\x98\x07\x16\x4a\xad\xc4\x4a\xd2\x6a\x6c\xc4\xad\x45\x25\x6a\x1a\x8d\x62\x53\x42\x0a\xcd\xa8\xd7\xf8\x40\x9e\xbc\x22\xf5\x1a\xdf\x51\x24\x54\x47\x44\x7d\xa1\xdc\x8b\xd1\x5e\xad\xab\x46\xca\xb1\x69\xaf\xd9\x9b\x8e\x9a\x5d\x99\x34\x16\x65\xb2\x98\x55\x18\x62\xd2\xc4\x18\x45\x13\xbb\xc8\x9a\x39\x44\xd6\xc2\x31\x92\x16\xa6\x18\xb5\x32\xc7\xd0\x0b\xd3\xe8\xb5\x71\x8e\x4e\xb5\xaf\x52\xd5\xb8\x0e\xd4\x08\x3d\xdb\x06\x33\x10\x08\x6a\x28\x18\x9a\xa1\xf8\x50\xcd\x49\x08\xc5\xbc\xc4\x81\x1c\xb2\x05\x91\xd0\x07\x67\x0a\x62\x51\x4a\x60\x8b\x52\x03\x19\x49\x0b\xd1\x48\x2c\x04\xe3\x04\x03\x31\x78\xe3\xe4\x83\x33\x49\x21\xa0\x49\xea\xb5\x51\xea\x85\xbb\xa5\x24\x5e\xfb\x6d\xe6\xd5\x72\x2a\xbe\x59\x4e\xd5\x57\xcb\x49\x7d\xb1\x92\x7a\xaa\x2d\x19\x7d\xb2\x92\x9d\x1f\xd3\xc0\xc0\xe8\xfb\xc4\x40\x9e\xfa\x34\xe0\xa3\xd5\x9c\x7c\xb0\xb1\x3e\xb4\x96\xeb\x40\xf5\xce\x5a\x36\x8f\xd6\x0a\x7a\xb0\x56\x9c\x33\x6b\x25\x0c\x8c\xae\xaf\x03\xd8\x35\xd3\x7e\x43\x99\x96\x3c\xb0\xb8\xbe\x56\x68\xae\xaf\x1b\xb4\x63\x05\x97\xac\x55\x37\xd0\x3b\xb1\x56\xa3\x63\x6b\x95\x06\xca\xc0\xdc\x97\x81\xb5\x38\xb2\x5a\x9b\x8b\x56\xab\x76\x6c\x30\xd0\xb9\x68\xa5\x79\x17\xac\xb4\x38\x90\x5d\xb0\xdc\x64\x60\x76\xc1\x52\xab\x03\xbb\xac\x34\xeb\xa8\xe8\xa2\xb1\xba\x81\xc1\xc5\xf1\xb6\x0f\x19\xa9\x38\xb2\xa8\x69\x60\x71\x6c\x41\x9b\x63\xf3\xaa\x1d\x0d\x1c\xf7\x09\xc3\xb1\xa1\xf5\xc5\x29\x5a\x74\x71\x7a\x3b\xc3\xc0\x92\xc3\xa3\xf5\xfa\x7a\x57\xd2\xcb\xfa\x52\xcf\xf4\x83\x7c\xa5\x2f\x2e\x76\xdf\x23\xcc\x6f\x2a\x79\xb8\x53\xd7\x10\x78\xaf\x56\x3d\x9f\xdf\x07\xec\xe2\x1e\xf9\xc3\xbc\xfb\xda\xcd\x72\xf3\x3d\xee\xe7\xf9\x74\xb7\xb0\x4f\xdf\xe5\x0c\xf9\xf2\x4a\x5f\xe1\xfc\x7e\x74\x0b\xec\x79\x47\x5e\xdd\x63\x3f\xd7\xab\x79\xc5\x75\x8e\x3a\xaf\xd5\xe6\xa8\x7e\x7e\x07\xcc\x7b\xd4\x2f\x73\x79\xa5\xf9\xcd\x42\x97\xbc\x3c\xe0\x9f\x9e\x5f\xe9\xee\xf5\xc5\xab\x7c\xa5\xef\xef\xde\xff\x78\x7e\x13\xbd\x7b\xfa\x17\xa9\xdf\xcc\xab\xfe\xfc\x8b\x8f\xe7\xf7\x68\x7c\x71\x3f\xd2\x4b\xd4\xb2\xa0\xfa\xf4\xab\x79\x57\xbe\xbd\xaf\x7a\x89\xfa\xd7\x05\xd5\x6f\x9e\xcd\x6f\x70\xf8\xfc\xbe\xea\x25\xea\x47\xf3\xaa\xbf\x68\xef\xbf\x99\xdf\x3e\xef\x9e\xea\x45\xea\xb3\x25\xd5\x1f\x7f\x3f\xbf\x03\xde\x8c\xea\x05\xea\x7b\x4b\xaa\xbf\x7a\xb5\xe0\xcc\xa7\x33\xca\x17\xc9\x5f\x2f\xab\x5f\xe8\xfc\xbf\xcd\xaa\x5f\x20\x7f\x3e\xaf\xfe\xf9\x6b\xad\x57\x4b\xdb\x61\x7e\x70\x7f\xb8\x3d\x44\xff\x62\x61\x08\xbd\x59\x70\xe9\xc3\xfb\x43\x68\x89\xfa\xc9\x92\xea\xcf\xe7\x83\xf9\xbb\x19\xd5\x0b\xd4\xcf\xe6\x55\x7f\x7c\xbe\xd0\x4f\xff\xb8\xa7\x7a\x91\xfa\x9b\x79\xd5\xcf\x76\x5f\xcc\x27\xe4\xf7\xef\xa9\x5e\xa4\xfe\x61\x69\x74\x2e\x86\xf0\x8f\x33\xe3\x73\x91\xfc\xdb\x65\xf5\xf3\xdb\xca\xce\x2a\x9f\xa5\xfe\x7d\x49\xf5\xc2\x95\x7e\x3c\xa3\x7a\x81\xfa\x8b\xa5\x21\xb4\xd0\xf5\xff\x35\x33\x80\x16\xa8\x5f\xcd\xab\xee\xc3\x6d\xe1\x3a\xff\xf3\x9e\xf2\x07\xc8\xbf\x5f\x56\x3f\xcb\xff\xef\x59\xe5\xb3\xd4\x3f\x2f\xa9\x7e\xb6\x7b\x7f\x3e\x3d\xbf\xb5\x97\xf7\xb5\xf6\x45\xb6\xea\xb2\x81\x85\x7e\x3a\x9f\x37\xb0\xc0\xde\x2d\x18\x78\xff\xd5\x1b\xfd\x57\xb6\xe1\x9e\x86\xff\x22\xf9\x74\x41\xfd\xc7\x3b\xd5\xf3\x79\x91\xcb\xfb\xfa\x1f\x60\xe7\x65\x03\xdf\xcf\x4b\xbc\x9a\xd5\xbf\x40\x7e\xb3\xa0\xfe\xf3\x37\xbb\xd7\xaf\x16\xae\xd9\xee\x1b\x78\x88\x5e\x17\x4c\x7c\xa1\x6d\x5e\xe0\xe5\x7d\xfd\x8b\xdc\xb6\xa0\xfc\xd9\x2e\x9f\xbf\x58\x70\xe8\xec\xbe\xfe\x87\xe8\xaf\x17\x4c\x7c\x70\xfa\xcd\x69\x5b\xd8\x58\xfc\x9b\x25\x99\x37\x45\x5f\xea\xab\xd3\xef\x3e\x9c\x9e\x97\xf7\xee\x1d\xbd\x0f\x03\x96\x4f\xcf\xcb\xc5\xb7\xef\xde\x34\xfc\x40\xe6\x4f\x79\x37\xbf\x33\xf7\x87\x4b\x1e\x5e\x2c\xec\x90\xff\xd9\x82\xc0\xf3\xd3\x73\x5d\xf2\xea\xb7\x0b\x32\x5f\xbe\xd9\x95\x8b\x77\x6f\x4b\x7e\x20\xf1\xc7\xd3\xdd\x62\xb0\xff\xb4\x20\xf3\x69\x7e\x71\x36\xff\x80\x84\x5f\x2c\x48\x7c\x72\x6e\xba\x3b\x9f\xf7\xec\xe3\xa5\x91\xf2\x2a\x5f\x2e\x98\xf9\xaa\x8b\xfc\xf0\x97\xbf\xac\x7f\xf6\xff\x02\x00\x00\xff\xff\x1f\x2a\x64\xfa\x16\x57\x1c\x00") -func web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89JsBytes() ([]byte, error) { +func web_uiAssetsVendorEd71485765549f3aea50f590e9204f99JsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89Js, - "web_ui/assets/vendor-b134a6d8acef5d5cec0e83b782718c89.js", + _web_uiAssetsVendorEd71485765549f3aea50f590e9204f99Js, + "web_ui/assets/vendor-ed71485765549f3aea50f590e9204f99.js", ) } -func web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89Js() (*asset, error) { - bytes, err := web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89JsBytes() +func web_uiAssetsVendorEd71485765549f3aea50f590e9204f99Js() (*asset, error) { + bytes, err := web_uiAssetsVendorEd71485765549f3aea50f590e9204f99JsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/vendor-b134a6d8acef5d5cec0e83b782718c89.js", size: 1859524, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/assets/vendor-ed71485765549f3aea50f590e9204f99.js", size: 1857302, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiIndexHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x59\xdd\x72\xdb\x3a\x92\xbe\xcf\x53\x60\xb4\xeb\x49\x4e\xd5\x10\xc2\x3f\xc0\x1c\x2b\x55\x8a\x2c\x27\x9e\xb2\x2d\xaf\x64\x67\x27\x57\x2a\x90\x80\x2c\x66\x29\x52\x4b\x52\x72\x9c\x94\xdf\x7d\xab\x41\x4a\x56\x6c\x27\x67\xce\xce\x5c\x18\x6c\x02\xdd\x5f\xff\xa0\xbb\x01\xca\xc7\x7f\x39\x99\x8c\xae\x3f\x5f\x8d\xd1\xb2\x59\xe5\xef\x5e\x1d\xc3\x03\xe5\xb6\xb8\x1d\xf4\x7c\xd1\x43\x69\x6e\xeb\x7a\xd0\xf3\xab\xc4\x57\x51\x5e\x5a\x97\x15\xb7\xbd\x77\xaf\x10\x3a\x5e\x7a\xeb\x80\x40\xe8\x78\xe5\x1b\x8b\xd2\xa5\xad\x6a\xdf\x0c\x7a\x9b\x66\x11\x99\xde\xe1\xd2\xb2\x69\xd6\x91\xff\xdf\x4d\xb6\x1d\xf4\xfe\x11\xdd\x0c\xa3\x51\xb9\x5a\xdb\x26\x4b\x72\xdf\x43\x69\x59\x34\xbe\x68\x06\xbd\xb3\xf1\xc0\xbb\x5b\xbf\x93\x6c\xb2\x26\xf7\xef\x46\x65\x51\x6f\x72\x94\xdc\xa3\x8f\xb6\x5e\x66\xa3\xb2\x5a\x1f\xf7\xdb\xa5\x03\x05\x85\x5d\xf9\x41\xcf\xf9\x3a\xad\xb2\x75\x93\x95\xc5\x01\x6c\xef\x39\xe3\x36\xf3\x77\xeb\xb2\x6a\x0e\xb8\xee\x32\xd7\x2c\x07\xce\x6f\xb3\xd4\x47\xe1\xe5\x6f\x28\x2b\xb2\x26\xb3\x79\x54\xa7\x36\xf7\x03\xda\x01\xb5\xc3\x21\x5c\x1a\x6c\x8c\x36\x59\x3f\x2d\x8b\x45\x76\xdb\xf7\xc5\x36\xab\xca\x62\xe5\x8b\x43\x15\x47\xfa\xfd\x11\x63\xab\xd2\x6d\x72\x7f\x55\xf9\x45\xf6\xf5\x88\xb1\x23\x3e\x3c\x62\x6c\x8f\x00\x33\x6c\x74\xc4\xd8\x01\xc4\x9e\x6b\x5d\x95\x6e\x93\x82\x7b\x7b\xb6\xaa\x2c\x9b\x9b\xe9\xf9\x9e\xe5\x88\x9d\x02\xc8\xe9\x9e\x21\x2f\x53\x0b\x12\xd7\xf7\x6b\xbf\xe7\xb2\x9b\xa6\xdc\x73\x34\x65\x95\x65\xdd\x92\x7e\x7f\xa4\x4f\xda\xe9\x31\xec\xf8\xf8\xf2\xd3\xe3\x0a\x63\xa7\xe3\xe1\xf5\xcd\x74\x3c\x7b\x81\xfb\x1f\xd7\xe3\xcb\x93\xf9\xd5\x74\x72\x3d\x81\x6c\x9a\x1d\x8a\x9d\xd8\xa6\xd3\xbd\xb0\x79\xed\xf7\x42\xf3\xe1\xd5\xd5\xf9\xd9\x68\x78\x7d\x36\xb9\x9c\x5f\x8f\x2f\xae\xce\x87\xd7\xe3\xf9\x7f\x4f\x87\x57\x57\xe3\xe9\xa1\x40\xcb\x7d\x32\x3e\x1d\xde\x9c\x5f\xcf\x87\xb3\xcf\x97\xa3\xf9\xe4\xfd\x6c\x3c\xfd\x34\x9e\x76\x9a\x9a\x6a\xb3\xe3\xfb\xfb\x7f\xdd\x8c\xa7\x9f\xe7\x67\x97\xd7\xe3\x0f\xd3\x00\xfe\x1c\x6b\xaf\x6d\x72\x79\xfe\x79\xfe\xe1\xfc\xec\xe2\x62\x3c\x9d\x8f\x26\x17\x57\x93\xcb\xf1\xe5\xf5\x21\xe8\xce\xda\xe1\xd5\xd5\xa1\x53\xb0\xf5\xbf\xd8\xbf\xad\xaf\xea\x6e\xa3\x02\x07\xc3\x0c\x93\x23\xf6\x9e\x69\xcd\x9d\xf5\x0e\x16\x76\xc8\x95\xaf\xb3\x6f\x7e\xe6\x2b\x48\xbe\x13\xbf\xb0\x9b\xbc\xa9\x0f\x75\x65\xc5\x17\x1f\xf6\xfd\xd4\xa6\xb0\x5d\x7e\xb7\x2a\x61\x15\xb2\x79\xaf\x17\xb2\xad\x2a\xf3\xdc\x57\x07\x53\xab\x75\x59\x74\x89\x24\x4f\xf6\x6a\x47\x93\xcb\xd9\xcd\xf9\x7c\x34\xb9\xfa\x3c\x3d\xfb\xf0\xf1\x7a\xfe\x79\x3c\x9c\x3e\x1a\x4c\x18\xd9\x43\x74\xac\x1f\xce\xae\xe7\xb3\x8f\xc3\x47\x9e\xce\x99\xf4\x29\x23\xec\xcb\x3e\xee\x47\x8c\x51\x1c\xe3\x67\x68\xef\xcf\x2e\x87\xd3\xcf\x73\x48\x97\x3d\x63\x59\xd7\x4f\xd9\x6e\xce\xe6\x27\x67\xb3\xe1\xfb\xf3\xf1\x7c\x3a\x1e\x9e\x5f\x9f\x5d\x8c\x9f\xed\xe7\x73\xd6\xe1\xe5\xe8\xe3\x64\x3a\x9f\x8d\xcf\xc7\xa3\x17\x53\xa0\x13\x19\x8e\xce\x67\xf3\xf1\x25\xc8\x9c\xec\xad\x98\xcf\xa7\x37\x97\xa0\x68\xfe\x7e\x32\x09\x3c\xf5\xb8\xb0\x49\xee\xdd\x7c\xfe\xd4\xbc\xcb\xd9\xd5\x70\x34\xfe\x43\x8c\x4b\xbb\xf2\xf5\xda\xa6\xfe\xe7\x48\xb3\xd9\xe4\x8f\x50\x66\xb3\xc9\x4f\xc5\x3f\x4e\x2e\xc6\xf3\xc3\x5e\x00\x5d\xb7\x0e\xe4\xe9\x11\x3b\xbd\xbb\xbb\xc3\x6d\x9a\xe2\xac\x7c\x2a\x3b\x1d\x5f\x4d\xe6\x67\xb3\xd9\xcd\x78\xf6\x0b\x88\xdb\xac\x59\x6e\x12\x9c\x96\xab\x23\x76\xba\x84\x76\x9c\x96\xd5\xfa\x88\x9d\xb6\xb8\x47\xec\x34\xab\xeb\x0d\x24\xe7\x69\x01\x29\x79\x9a\x2e\xcb\xb2\xf6\x4f\x95\x9d\x4c\x46\xbf\xd2\xf2\xc4\xd0\x53\x57\xa6\xcf\x72\x22\x40\x9c\x8f\x87\xd3\xcb\x5f\x00\xe5\xde\x56\x05\xde\xdb\xd9\xda\xfd\x02\xce\xf0\xea\xec\x4f\x98\x63\xd7\xd9\x53\x94\xc7\x0a\xfa\x35\xcc\xcb\xa6\x24\x55\x79\x57\xfb\x2a\x5b\xdc\x1f\x96\x7c\xe3\xeb\x5d\x0f\xf8\xa1\x0b\xf9\xaf\x70\x70\x0d\xd7\xeb\x3c\x6b\x1b\xfb\x87\xbc\x4c\x6c\xfe\x63\x7b\xed\xa1\xfe\xbb\x57\x70\x46\xff\x25\x8a\xd0\x8f\x25\xf9\x16\x85\x5a\x44\x51\x14\x0e\xf1\x17\x4f\xb1\x4d\x36\x6f\x0f\xb2\x83\xc3\xeb\xfb\x77\xf4\xa5\x2e\x8b\x71\x91\x96\xce\x0f\x0b\x37\xae\x53\xbb\xf6\x08\xdf\x9c\x8d\x02\x2b\x7a\x78\xd8\x6b\xcd\xb3\xe2\x7f\x50\xe5\xf3\x41\x2f\x4b\xe1\x28\x6e\xee\xd7\x7e\xd0\xcb\x56\xf6\xd6\xf7\xd7\xc5\x6d\x0f\x2d\x2b\xbf\x00\x48\x3c\x6a\xe1\xaf\x6c\xb3\x7c\x78\xb0\x75\xed\x9b\xba\xbf\xb0\x5b\x10\x8b\x38\xfb\xca\x59\xa4\x84\xd2\x92\x5b\x46\x64\xaa\xac\x72\x89\x5e\xc4\xdc\x11\x47\x13\xcb\x49\xe2\x62\x8e\x03\x20\xf4\xcf\x7a\xd0\x0b\x22\xed\xed\xe4\xdf\x63\x03\x55\x5f\xa9\x8a\x94\x66\x29\xa7\x5c\x0b\x25\x54\xc2\x44\xc2\xb8\x4c\x62\x49\xa9\x91\x3a\x75\xd6\xf9\x1f\x6c\x08\x22\x07\x36\x64\x45\xe3\x6f\xab\xac\xb9\x1f\xf4\x7a\xad\x41\x75\x73\x9f\xfb\x7a\xe9\x7d\xf3\x07\x56\x6c\x7d\xe1\xca\x2a\x8a\x63\x26\x94\x4c\x4c\xc2\x38\x59\x98\xd8\x09\xeb\x52\x2f\x17\x84\x2a\x29\x78\x2a\x1c\x4e\xeb\xfa\xdf\xa3\x70\x9f\x02\x91\xd5\x54\x1a\xe5\xa9\xe7\xcc\x69\xcb\xd2\x84\x33\xe1\x8c\x4b\x39\x31\xcc\x0a\x9f\xec\x75\xbe\xda\xdd\x89\x8e\xfb\xbb\x0b\xe1\x71\x52\xba\xfb\xfd\x5d\xe9\xb8\x28\xdb\x5b\x59\x3b\x83\xd0\xb1\xcb\xb6\x28\x98\x34\xe8\xad\x6c\x75\x9b\x15\x6f\x11\x41\x70\x25\xf9\xbd\xb7\xe3\x09\x7c\x4b\xf6\xee\xef\x76\x6b\x67\x41\x1a\x4d\xe1\xfe\x58\x79\x77\xdc\x5f\xb2\x1f\xd8\xd6\xef\xae\x72\x6f\x6b\x8f\x7c\xe8\x8c\xe8\x40\x26\x2b\xd0\x7d\xb9\xa9\xd0\x9d\x4f\x50\x57\x66\xa8\x29\xd1\xa6\xf6\xa8\xbb\x57\xde\x9c\xe1\xe3\xfe\x7a\x6f\x5a\xdf\x65\xdb\xe0\x42\xff\xd0\xea\xe3\x7a\x7b\x8b\xda\x0b\x62\x8f\x2a\xd3\x43\x4b\x9f\xdd\x2e\x9b\x41\x4f\xf2\x1e\xfa\xba\xca\x8b\x7a\xd0\x83\x6a\x7f\xdb\xef\x43\x99\xdf\x71\x5c\x56\xb7\x7d\x46\x08\xe9\xd7\xdb\xdb\xde\xbb\xe3\x5b\xb4\xc8\xf2\x7c\xd0\xfb\x8f\x98\xc6\xa7\x43\xd3\x0b\xaf\x51\xb5\x81\x10\xf8\xad\x2f\x4a\xe7\x7a\xef\x8e\xd7\xb6\x59\x22\x37\xe8\x5d\x30\x85\x89\x36\x88\x33\x4c\x99\x95\x58\x1a\x85\xda\x91\x20\x8a\x28\xd0\x5a\x47\x12\xcb\x38\x6e\xe9\x6e\x24\xb0\x1e\xed\x66\xd4\x05\xd7\x98\x90\x18\xb1\x18\x73\x66\x2c\xc3\x52\xa1\x30\xb4\x28\x40\x46\xbb\x49\x49\xbb\xb1\xc5\xd8\xf3\x5e\x08\x85\x63\xaa\x10\xa7\x58\xa9\xf8\x19\x06\x26\x92\x46\x98\xd1\x34\xc2\x84\x19\x4c\x94\x6a\x09\xca\x23\x58\xc2\x8c\x5e\x08\x81\xa5\x31\x88\x49\x4c\x54\x6b\x84\x44\xed\xb8\x53\xa5\x34\x8b\x70\x1c\xb3\x60\x81\xe9\xc6\x76\x11\x53\xc2\x22\x86\x8d\x68\x65\x44\x37\x86\x45\x24\xb0\xd2\x0a\x6b\x25\x52\x4c\x34\x03\x1f\x31\x31\x60\xa7\xc6\x84\x69\x44\x2d\xc3\x42\x71\xd4\x8e\x2d\x1e\xc5\x31\x03\x28\xa2\xf9\x85\xe4\x38\xe6\x0c\x3c\x13\x84\x81\x61\x42\xa3\x76\xdc\x19\x16\xb7\xac\x6d\x80\xe2\x6e\xdc\x2d\x12\x25\x80\xa5\xf5\xe6\x47\x51\xc4\x70\x2c\x0c\xf0\xe8\x30\xdf\x0d\xbb\x35\xca\xc0\x49\x4d\x15\x56\x4a\xc0\x5f\x58\x21\x10\x31\xcc\x98\xb9\x90\x14\x1b\x90\x91\x98\x12\xfe\xc2\xb6\x51\x02\xd8\xb1\x90\x29\x26\x5c\x60\x46\x0d\x26\x82\x63\xc1\x63\xf0\x1b\x2b\x69\x5e\xf4\x86\x72\x30\x95\x19\x7d\x21\x62\x1c\x4b\x81\x04\xc1\x94\x3e\x57\x80\x39\x15\x11\xc5\x84\xeb\xb0\xab\x98\xc3\xa6\x52\x66\xb0\x66\x34\x82\x45\x14\x16\x2f\x84\xc1\xb1\x16\x88\x2a\x6c\xe2\x17\x50\x62\x1d\x71\x2c\x8c\x4e\x31\x53\x02\x0b\xa1\x30\xd7\x12\xe2\x85\x39\xd5\x88\x62\xa1\x7f\x4c\xa7\x76\x7b\x98\x01\xb3\x09\x31\xbd\xfe\x8f\xf5\x20\x99\x42\x92\x61\x45\x78\x1a\x51\x81\x79\xcc\x11\x89\xa0\x4e\x54\x44\x29\x96\x4a\x77\x2f\x4c\x62\xc3\xd5\x08\x0b\xa5\x10\x65\x58\xc4\x06\x1e\x94\xc3\x66\x53\xd4\x02\x01\x69\x99\xc4\x31\x57\xa8\x7b\xb4\x7b\x43\x83\x30\x92\x98\x13\x9d\x47\x1c\x53\xa5\x91\xc0\x94\xea\x21\x23\x38\x56\x0c\x75\x0f\xd2\xf2\x6b\xcc\x89\x40\x06\x33\x3e\xa2\x04\xd3\x58\x20\x4a\xb1\xa6\x1c\x49\xac\x11\x35\x18\xaa\x53\x53\x01\x5a\xb5\xe2\x10\x4d\x2a\x90\xc6\x46\x31\x24\xb0\x30\xa0\x8e\x48\x90\x91\x31\xb0\x4b\x2e\xec\x4b\x7a\x18\xc5\x26\x86\x0d\x64\x3a\x07\x9b\x0c\xd8\xc4\x78\xf0\xc0\x50\xd4\x3d\xba\x08\xee\x3d\xa0\xdf\x7e\x08\xa1\xa2\x88\x13\x4c\xe5\x27\xaa\x21\x39\x53\x12\x89\x56\x13\x14\x57\xa4\xb1\x91\x28\xc6\x22\xee\x48\x86\x85\x81\xb4\x94\x98\x08\x83\x39\x53\x48\x63\x26\x19\x36\xb1\xcc\x23\x2c\x15\x14\x9f\xe0\x3c\x05\xab\x94\x88\xb0\x20\x2a\x12\x58\x19\x13\x61\x15\xd3\x48\x61\xc9\x5b\x0a\x52\x40\x21\x50\xa6\x88\x41\x14\x33\xd6\x91\x02\xd2\x78\x4b\x09\x16\x94\xa5\x04\xcc\x30\xb0\x4e\x19\x6b\x97\xa0\xba\x89\xee\x68\x8a\x8d\x80\x12\x16\x98\x2b\x1d\x61\x66\x04\xda\xab\xc8\xb1\x6c\xe3\xd9\x9a\xc3\x88\xc0\x52\x47\x02\x6b\x65\xc0\xdc\x68\x6f\xf8\x48\xf1\xd0\x48\xb8\x41\x10\x0c\x89\x29\x65\x68\x17\x96\x6f\x2b\xae\xb0\x21\x50\x49\x29\xe8\x21\xca\x44\x14\x1b\xc2\x60\xbf\x68\x64\xb0\x88\x79\x4b\x2a\xac\x62\x44\xc2\x8c\x88\x38\xd6\x82\x75\x34\xac\x6e\x23\x89\x09\x61\x21\xba\x44\x41\x9a\x1b\xc2\xc3\x0a\x7a\x64\x42\x2d\x04\x6a\x41\x01\x82\xa3\x47\x05\x5b\x40\xe0\xdf\x56\x91\xc0\xc6\x40\x97\xa7\x4a\xa6\x04\x3c\xe3\x1a\xca\x92\x30\x08\x2a\x55\x11\xc7\x8a\xa8\x96\xae\xdb\x17\x88\x9f\xe9\xc8\x30\xbf\x95\xd0\x15\x43\x78\x19\x07\x6b\x08\x61\x61\x45\xa3\x47\x2e\x5d\xb7\x48\x20\x8c\x1e\x41\x35\xf8\xc2\x99\xf9\xb6\x62\x12\xeb\x18\xaa\x48\x2a\xb3\x6c\xcd\xfa\xc4\x78\x68\xbc\x04\x2c\x92\x3a\xc2\x02\x5a\x86\x34\x80\x22\x15\xdf\xd3\x8c\x50\x44\x22\x8e\x39\x60\x70\x06\xd1\x09\xdb\xac\x94\xd9\x52\xf0\x5c\xef\x00\xa9\xc6\xda\xc8\x25\xc7\x9a\xa9\x3c\x14\x07\x30\xa5\x0c\x8b\x00\xcd\x18\x9c\x71\x3c\xf4\xd4\x50\x43\x74\x47\x73\xcc\x84\x0c\xb9\x21\x08\xf4\x0e\x4e\x4d\x47\x4b\x68\xa3\x5b\x68\x16\x52\x7f\x5b\x51\x83\x99\x8a\x24\xd6\x5a\xa6\x04\x71\x6c\x18\x98\x49\x15\x43\x0a\x53\xc3\x22\x8d\x89\xdc\xd1\x0c\x13\xc3\x43\xd6\xc6\x0c\x9c\x33\x26\x52\x58\x07\x7e\x1e\xe7\x58\x41\x90\xb5\x61\x29\xc5\x0a\x1a\xaf\x81\xb8\x19\x02\x95\x23\x40\x2b\x0d\x44\x28\x0d\x28\x5f\xa8\xa5\x00\xd2\x91\x14\xc7\xa1\x7b\x85\x6a\xc0\x0c\x26\x0c\x87\x98\x13\x19\x85\x0e\xd7\x66\x6f\xd8\x90\xb0\x07\x50\xfc\xa2\xa3\x14\x66\x8c\x87\x98\xc6\x06\x36\x5c\x33\x0e\x4e\x71\x09\x15\x1a\xb3\x8e\x0e\x79\x17\x82\x42\x95\xc2\x4c\x04\xb3\x64\x28\x17\xb0\x04\x92\x00\xce\x8f\x88\xc2\x4b\x28\xa8\x08\x8a\x43\x41\x6d\xc7\xa0\x49\x99\x96\x84\xae\x23\xa0\xd3\x82\xe5\x21\x10\x6d\x6b\xa0\x58\x13\x38\xa4\x61\xa3\x35\xa6\x2c\x4c\xc0\x11\xa9\xc3\x21\x0d\xfa\x84\x88\xa1\xcd\x2b\xa0\x63\xd8\x19\x1a\xab\x96\x54\x70\x24\x7c\x5b\x85\x8d\x81\x66\x4e\x38\x5f\x86\x2c\x80\x9c\x30\x3c\x05\x58\x22\x35\x16\x82\x06\x05\xe0\xa7\x54\x7c\x4f\x33\x02\xad\x31\x64\x55\x84\x35\x87\x7e\x4b\x0c\xc4\x4b\x29\xb3\x4b\x24\xc0\x33\x5b\x1a\x43\x51\x2f\xa3\x36\xad\xc0\x75\x1a\xd8\x34\xb4\x0a\x21\x44\xdb\x91\x24\x96\x2c\x0e\x47\x7d\x5b\xa0\xac\xa3\x21\xb5\xda\xe6\x25\x88\x8e\x42\x6a\x75\x74\x48\xad\x4e\xd5\xb7\x0b\x68\xc9\x5c\x63\x19\xf3\x36\x9b\xcd\xa7\x18\x42\x7d\x0e\xf3\xf1\x96\x19\x58\x09\xdd\xb8\x7f\xfb\xee\x18\x6e\x84\xed\x9d\xb2\xbd\xa2\xd6\x55\xfa\x47\xf7\xff\x84\x72\x61\x95\x33\x36\xf5\x0b\xe9\x64\xea\x53\xe2\x0d\x4f\xb4\x61\x9a\x9a\xd4\xc4\xf8\x4b\xdd\x03\xe0\xfd\x7d\xf5\x11\xbe\xbd\xd8\x6e\x6d\x85\xec\x7a\xed\x0b\xd7\xdd\x8b\x07\x68\xb1\x29\xc2\x0f\x4a\x6f\xea\x2a\xfd\x0d\x7d\xef\xee\xbf\xc0\xf8\x9f\xf5\x8e\xc7\x95\xe9\x66\xe5\x8b\x06\xa7\x95\xb7\x8d\x1f\xe7\x1e\xde\xde\xbc\x6e\x19\x5e\xff\xf6\x7b\x27\xd5\x49\xe0\xba\x4a\xd1\x00\x1c\xda\x2d\xec\x01\xe0\x83\x00\xb7\x16\x8c\x96\x59\xee\xde\x74\x22\x1d\xc4\x43\x18\xb3\xc5\x9b\xbf\xbc\x79\x7d\xed\xbf\x36\x27\x1e\x3e\x32\xab\xd7\x70\x7f\xbf\xcb\x0a\x57\xde\xfd\xf6\x68\xe3\xa1\x23\x6f\x5e\xff\x24\x72\x1e\x3e\x53\xb3\xe2\x36\xca\x0a\xe7\xbf\xfa\x3a\xd2\xd2\x7b\x4b\x55\xc2\x64\xac\xa9\x72\x89\x58\x38\xaa\x98\xf7\xcc\x70\xc7\xac\x97\xf8\x4b\xfd\xe8\xd0\x9f\x53\x91\xba\x44\x92\x45\xe2\x6c\xa2\x9c\x70\x7c\xe1\x16\x52\x0b\xe7\xb4\x11\x0b\xad\x1d\xd3\x07\xd0\x07\x8e\xb6\x7e\xe1\xd1\x6c\x86\xfe\xfa\x57\xf4\xf8\x86\x7d\xf8\xb0\xfe\xb3\x0e\xa7\x75\xdd\x49\x46\x46\x52\xc3\xe3\x84\x7b\x4b\x1d\x49\x84\x4f\x44\xaa\x89\x89\x85\x50\x6e\x21\x7d\xbc\x78\x62\xcf\x61\xe2\xfc\x33\x49\xb9\xf2\x4d\x95\xa5\x75\xb4\xae\xca\x6d\xe6\x7c\xb5\xff\x6a\xe4\xd4\x69\xcf\x13\xe2\x17\x3a\x95\xc6\x29\xc6\xb9\x49\xb5\xd3\xd6\x5b\xbb\x90\x42\x3e\x4b\xd3\xff\x9f\xb6\x75\x55\xae\x7c\xb3\xf4\x9b\x3a\x72\x5c\x78\xc1\x2d\x63\x56\x33\x4d\x62\x26\x13\xe9\xd8\x62\x91\x58\x22\xa4\x93\x36\x79\xa6\xf1\xfb\x77\x54\xd9\xe2\xd6\x23\x3c\xfe\xda\x54\xdd\x57\x62\x8d\x1e\x1e\x9e\xd9\xf2\xf0\x70\x20\x09\x72\xbe\x70\xe8\xe1\xe1\x9f\xb4\xfa\xf1\x3b\x1a\xbc\x5f\xa8\xd4\xab\x54\xaa\x74\xe1\xb5\xd3\xa9\x37\x94\x99\x85\x36\xce\xc9\xc5\xe2\x67\x41\x69\x0b\x77\x54\x3a\x7f\x91\x55\x55\x59\xe1\x55\xe9\xfc\xcd\xf4\x1c\x0d\xf6\x79\x51\xf9\x75\x6e\x53\xff\xf6\xb1\x96\x8b\xbf\x21\x60\x7b\x4c\x1d\x84\xea\xbb\xac\x49\x97\x6f\x9e\x4e\x23\x94\xc2\x17\xf3\xeb\x2f\x76\x6b\xbb\x72\x7e\x7b\xb0\x08\xe0\xcd\xa6\x2a\xd0\x4f\xd3\xad\x74\x7e\x15\x0c\xeb\x03\x74\xff\x11\xe7\x80\x8c\xb4\x66\xd4\xa4\x8e\x32\x65\xbc\x55\x6e\xa1\xa5\xd6\x92\x52\x61\x3d\x31\x4a\x2a\x05\x99\xf8\xfb\x33\x9b\xaa\x4d\x72\xff\xaf\x59\x03\x08\x61\x88\xbc\x15\x3c\xb5\xdc\xf2\xc4\x39\xc5\xad\x64\x86\x52\x6f\x84\x12\x4e\x29\xca\x45\xf2\xb2\x05\xf7\x76\x95\xff\x6b\x16\x00\x42\x18\x22\xa3\x12\x9f\x1a\x66\xc9\x42\x31\xaf\xad\xe4\xde\x2f\x04\x75\x42\x58\xe3\x85\x6e\xbb\xc3\xa3\x05\x0f\xaf\x0e\x9f\x0f\xbf\x3f\xa9\xcf\xf6\xc7\x96\xf0\x03\x4a\xe6\x76\xff\x94\x4b\x6c\x9d\xa5\x91\xab\xca\xb5\x2b\xef\x8a\xe8\xae\xac\x56\xcb\x32\xf7\x90\x56\xfb\x5f\x33\xda\x5f\x64\x8e\xfb\xed\xff\xf8\xfe\x2f\x00\x00\xff\xff\xc5\x60\xa8\xe0\xf4\x1b\x00\x00") +var _web_uiIndexHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x59\xdd\x73\xdb\x38\x92\x7f\x9f\xbf\x02\xab\x3b\x6f\x32\x55\xcb\x16\xbe\x01\xce\x58\xa9\x52\x64\x39\xf1\x96\xbf\x4e\xb2\x73\x9b\x27\x15\x44\x42\x16\x73\x14\xa9\x23\x29\x39\x4e\xca\xff\xfb\x55\x83\x94\xac\xc4\x4e\x66\xe7\x76\x1f\x0c\x36\x81\xee\x5f\x7f\xa0\xbb\x01\xca\xc7\x7f\x39\xb9\x1a\xdd\x7c\xbc\x1e\x93\x65\xb3\xca\xdf\xfc\x72\x8c\x0f\x92\xbb\xe2\x6e\xd0\xf3\x45\x8f\x24\xb9\xab\xeb\x41\xcf\xaf\xe6\xbe\x8a\xf2\xd2\xa5\x59\x71\xd7\x7b\xf3\x0b\x21\xc7\x4b\xef\x52\x24\x08\x39\x5e\xf9\xc6\x91\x64\xe9\xaa\xda\x37\x83\xde\xa6\x59\x44\xb6\x77\xb8\xb4\x6c\x9a\x75\xe4\xff\x77\x93\x6d\x07\xbd\x7f\x44\xb7\xc3\x68\x54\xae\xd6\xae\xc9\xe6\xb9\xef\x91\xa4\x2c\x1a\x5f\x34\x83\xde\xd9\x78\xe0\xd3\x3b\xbf\x93\x6c\xb2\x26\xf7\x6f\x46\x65\x51\x6f\x72\x32\x7f\x20\xef\x5d\xbd\xcc\x46\x65\xb5\x3e\xee\xb7\x4b\x07\x0a\x0a\xb7\xf2\x83\x5e\xea\xeb\xa4\xca\xd6\x4d\x56\x16\x07\xb0\xbd\xe7\x8c\xdb\xcc\xdf\xaf\xcb\xaa\x39\xe0\xba\xcf\xd2\x66\x39\x48\xfd\x36\x4b\x7c\x14\x5e\xfe\x46\xb2\x22\x6b\x32\x97\x47\x75\xe2\x72\x3f\x60\x1d\x50\x3b\x1c\xc2\x25\xc1\xc6\x68\x93\xf5\x93\xb2\x58\x64\x77\x7d\x5f\x6c\xb3\xaa\x2c\x56\xbe\x38\x54\x71\x64\xde\x1e\x71\xbe\x2a\xd3\x4d\xee\xaf\x2b\xbf\xc8\x3e\x1f\x71\x7e\x24\x86\x47\x9c\xef\x11\x70\x86\x8f\x8e\x38\x3f\x80\xd8\x73\xad\xab\x32\xdd\x24\xe8\xde\x9e\xad\x2a\xcb\xe6\x76\x72\xbe\x67\x39\xe2\xa7\x08\x72\xba\x67\xc8\xcb\xc4\xa1\xc4\xcd\xc3\xda\xef\xb9\xdc\xa6\x29\xf7\x1c\x4d\x59\x65\x59\xb7\x64\xde\x1e\x99\x93\x76\x7a\x8c\x3b\x3e\xbe\xfc\xf0\xb4\xc2\xf9\xe9\x78\x78\x73\x3b\x19\x4f\x5f\xe0\xfe\xc7\xcd\xf8\xf2\x64\x76\x3d\xb9\xba\xb9\xc2\x6c\x9a\x1e\x8a\x9d\xb8\xa6\xd3\xbd\x70\x79\xed\xf7\x42\xb3\xe1\xf5\xf5\xf9\xd9\x68\x78\x73\x76\x75\x39\xbb\x19\x5f\x5c\x9f\x0f\x6f\xc6\xb3\xff\x9e\x0c\xaf\xaf\xc7\x93\x43\x81\x96\xfb\x64\x7c\x3a\xbc\x3d\xbf\x99\x0d\xa7\x1f\x2f\x47\xb3\xab\xb7\xd3\xf1\xe4\xc3\x78\xd2\x69\x6a\xaa\xcd\x8e\xef\xef\xff\x75\x3b\x9e\x7c\x9c\x9d\x5d\xde\x8c\xdf\x4d\x02\xf8\x73\xac\xbd\xb6\xab\xcb\xf3\x8f\xb3\x77\xe7\x67\x17\x17\xe3\xc9\x6c\x74\x75\x71\x7d\x75\x39\xbe\xbc\x39\x04\xdd\x59\x3b\xbc\xbe\x3e\x74\x0a\xb7\xfe\x27\xfb\xb7\xf5\x55\xdd\x6d\x54\xe0\xe0\xc0\x81\x1e\xf1\xb7\x69\xcc\x84\x5b\xf0\x39\x2e\xec\x90\x2b\x5f\x67\x5f\xfc\xd4\x57\x98\x7c\x27\x7e\xe1\x36\x79\x53\x1f\xea\xca\x8a\x4f\x3e\xec\xfb\xa9\x4b\x70\xbb\xfc\x6e\x55\xe1\x2a\x66\xf3\x5e\x2f\x66\x5b\x55\xe6\xb9\xaf\x0e\xa6\x56\xeb\xb2\xe8\x12\x49\x9d\xec\xd5\x8e\xae\x2e\xa7\xb7\xe7\xb3\xd1\xd5\xf5\xc7\xc9\xd9\xbb\xf7\x37\xb3\x8f\xe3\xe1\xe4\xc9\x60\xca\xe9\x1e\xa2\x63\x7d\x77\x76\x33\x9b\xbe\x1f\xee\x79\x76\xce\xcc\xbf\x67\xc4\x7d\xd9\xc7\xfd\x88\x73\x06\x31\x3c\x43\x7b\x7b\x76\x39\x9c\x7c\x9c\x61\xba\xec\x19\xcb\xba\xfe\x9e\xed\xf6\x6c\x76\x72\x36\x1d\xbe\x3d\x1f\xcf\x26\xe3\xe1\xf9\xcd\xd9\xc5\xf8\xd9\x7e\x3e\x67\x1d\x5e\x8e\xde\x5f\x4d\x66\xd3\xf1\xf9\x78\xf4\x62\x0a\x74\x22\xc3\xd1\xf9\x74\x36\xbe\x44\x99\x93\xbd\x15\xb3\xd9\xe4\xf6\x12\x15\xcd\xde\x5e\x5d\x05\x9e\x7a\x5c\xb8\x79\xee\xd3\xd9\xec\x7b\xf3\x2e\xa7\xd7\xc3\xd1\xf8\x0f\x31\x2e\xdd\xca\xd7\x6b\x97\xf8\x1f\x23\x4d\xa7\x57\x7f\x84\x32\x9d\x5e\xfd\x50\xfc\x64\x78\x33\x1c\x8d\x2f\x6f\xc6\x93\xd9\xf9\xd5\x68\x78\xfe\x02\xc6\xf4\x66\x72\x76\xf9\x6e\x76\x5e\x26\x2e\x3f\x71\x8d\x4b\x7c\xd1\xf8\xea\x39\xd4\xfb\xab\x8b\xf1\xec\xb0\xad\x60\x03\xaf\x03\x79\x7a\xc4\x4f\xef\xef\xef\xa1\xcd\x78\xc8\xca\xef\x65\x27\xe3\xeb\xab\xd9\xd9\x74\x7a\x3b\x9e\xfe\x04\xe2\x2e\x6b\x96\x9b\x39\x24\xe5\xea\x88\x9f\x2e\xb1\xb3\x27\x65\xb5\x3e\xe2\xa7\x2d\xee\x11\x3f\xcd\xea\x7a\x83\x79\x7e\x5a\x60\x76\x9f\x26\xcb\xb2\xac\xfd\x33\x9f\xaf\x46\x3f\xd3\xf2\x9d\xa1\xa7\x69\x99\x3c\x4b\xaf\x00\x71\x3e\x1e\x4e\x2e\x7f\x02\x94\x7b\x57\x15\xb0\xb7\xb3\xb5\xfb\x05\x9c\xe1\xf5\xd9\x9f\x30\xc7\xad\xb3\xef\x51\x9e\x8a\xf1\xe7\x30\x2f\x9b\x32\xaf\xca\xfb\xda\x57\xd9\xe2\xe1\xb0\x7b\x34\xbe\xde\xb5\x93\x6f\x1a\x9a\xff\x8c\x67\xe0\x70\xbd\xce\xb3\xf6\x8c\x78\x97\x97\x73\x97\x7f\xdb\xa9\x7b\xa4\xff\xe6\x17\x3c\xee\xff\x12\x45\xe4\xdb\xea\xfe\x8d\x84\xb2\x26\x51\x14\xee\x03\x2f\x1e\x88\x9b\x6c\xd6\x9e\x89\x07\xe7\xe0\xd7\xaf\xe4\x53\x5d\x16\xe3\x22\x29\x53\x3f\x2c\xd2\x71\x9d\xb8\xb5\x27\x70\x7b\x36\x0a\xac\xe4\xf1\x71\xaf\x35\xcf\x8a\xff\x21\x95\xcf\x07\xbd\x2c\xc1\x53\xbd\x79\x58\xfb\x41\x2f\x5b\xb9\x3b\xdf\x5f\x17\x77\x3d\xb2\xac\xfc\x02\x21\x61\xd4\xc2\x5f\xbb\x66\xf9\xf8\xe8\xea\xda\x37\x75\x7f\xe1\xb6\x28\x16\x09\xfe\x59\xf0\x48\x4b\x6d\x94\x70\x9c\xaa\x44\x3b\x9d\xce\xcd\x22\x16\x29\x4d\xd9\xdc\x09\x3a\x4f\x63\x01\x01\x10\x5b\x71\x3d\xe8\x05\x91\xf6\xa2\xf3\xef\xb1\x81\xe9\xcf\x4c\x47\xda\xf0\x44\x30\x61\xa4\x96\x7a\xce\xe5\x9c\x0b\x35\x8f\x15\x63\x56\x99\x24\x75\xa9\xff\xc6\x86\x20\x72\x60\x43\x56\x34\xfe\xae\xca\x9a\x87\x41\xaf\xd7\x1a\x54\x37\x0f\xb9\xaf\x97\xde\x37\x7f\x60\xc5\xd6\x17\x69\x59\x45\x71\xcc\xa5\x56\x73\x3b\xe7\x82\x2e\x6c\x9c\x4a\x97\x26\x5e\x2d\x28\xd3\x4a\x8a\x44\xa6\x90\xd4\xf5\xbf\x47\xe1\x3e\x05\x22\xad\xa4\x62\x96\xcf\x93\x54\x29\xcb\x2d\x53\xf3\x44\x3a\x27\xb8\x30\x4a\x71\xb1\xf0\x7b\x9d\xbf\xec\xae\x57\xc7\xfd\xdd\xdd\xf2\x78\x5e\xa6\x0f\xfb\x6b\xd7\x71\x51\xb6\x17\xbc\x76\x86\x90\xe3\x34\xdb\x92\x60\xd2\xa0\xb7\x72\xd5\x5d\x56\xfc\x46\x28\xc1\xdb\xcd\xef\xbd\x1d\x4f\xe0\x5b\xf2\x37\x7f\x77\x5b\x37\x0d\xd2\x64\x82\x57\xd1\xca\xa7\xc7\xfd\x25\xff\x86\x6d\xfd\xe6\x3a\xf7\xae\xf6\xc4\x87\x26\x4b\x0e\x64\xb2\x82\x3c\x94\x9b\x8a\xdc\xfb\x39\xe9\xca\x8c\x34\x25\xd9\xd4\x9e\x74\x57\xd4\xdb\x33\x38\xee\xaf\xf7\xa6\xf5\xd3\x6c\x1b\x5c\xe8\x1f\x5a\x7d\x5c\x6f\xef\x48\x7b\xd7\xec\x31\x6d\x7b\x64\xe9\xb3\xbb\x65\x33\xe8\x29\xd1\x23\x9f\x57\x79\x51\x0f\x7a\x58\xed\xbf\xf5\xfb\x58\xe6\xf7\x02\xca\xea\xae\xcf\x29\xa5\xfd\x7a\x7b\xd7\x7b\x73\x7c\x47\x16\x59\x9e\x0f\x7a\xff\x11\xb3\xf8\x74\x68\x7b\xe1\x35\xaa\x36\x18\x02\xbf\xf5\x45\x99\xa6\xbd\x37\xc7\x6b\xd7\x2c\x49\x3a\xe8\x5d\x70\x0d\xd4\x58\x22\x38\x30\xee\x14\x28\xab\x49\x3b\x52\xc2\x08\x43\xda\x98\x48\x81\x8a\xe3\x96\xee\x46\x8a\xeb\xd1\x6e\x46\x5f\x08\x03\x94\xc6\x84\xc7\x20\xb8\x75\x1c\x94\x26\x61\x68\x51\x90\x8c\x76\x93\x8a\x75\x63\x8b\xb1\xe7\xbd\x90\x1a\x62\xa6\x89\x60\xa0\x75\xfc\x0c\x03\xa8\x62\x11\x70\x96\x44\x40\xb9\x05\xaa\x75\x4b\x30\x11\xe1\x12\x70\x76\x21\x25\x28\x6b\x09\x57\x40\x75\x6b\x84\x22\xed\xb8\x53\xa5\x0d\x8f\x20\x8e\x79\xb0\xc0\x76\x63\xbb\x08\x8c\xf2\x88\x83\x95\xad\x8c\xec\xc6\xb0\x48\x24\x68\xa3\xc1\x68\x99\x00\x35\x1c\x7d\x04\x6a\xd1\x4e\x03\x94\x1b\xc2\x1c\x07\xa9\x05\x69\xc7\x16\x8f\x41\xcc\x11\x8a\x1a\x71\xa1\x04\xc4\x82\xa3\x67\x92\x72\x34\x4c\x1a\xd2\x8e\x3b\xc3\xe2\x96\xb5\x0d\x50\xdc\x8d\xbb\x45\xaa\x25\xb2\xb4\xde\x7c\x2b\x4a\x38\xc4\xd2\x22\x8f\x09\xf3\xdd\xb0\x5b\x63\x1c\x9d\x34\x4c\x83\xd6\x12\xff\xc2\x0a\xc5\x88\x01\xe7\xf6\x42\x31\xb0\x28\xa3\x80\x51\xf1\xc2\xb6\x31\x8a\xd8\xb1\x54\x09\x50\x21\x81\x33\x0b\x54\x0a\x90\x22\x46\xbf\x41\x2b\xfb\xa2\x37\x4c\xa0\xa9\xdc\x9a\x0b\x19\x43\xac\x24\x91\x14\x18\x7b\xae\x00\x04\x93\x11\x03\x2a\x4c\xd8\x55\x10\xb8\xa9\x8c\x5b\x30\x9c\x45\xb8\x48\xc2\xe2\x85\xb4\x10\x1b\x49\x98\x06\x1b\xbf\x80\x12\x9b\x48\x80\xb4\x26\x01\xae\x25\x48\xa9\x41\x18\x85\xf1\x02\xc1\x0c\x61\x20\xcd\xb7\xe9\xd4\x6e\x0f\xb7\x68\x36\xa5\xb6\xd7\xff\xb6\x1e\x14\xd7\x44\x71\xd0\x54\x24\x11\x93\x20\x62\x41\x68\x84\x75\xa2\x23\xc6\x40\x69\xd3\xbd\x70\x05\x56\xe8\x11\x48\xad\x09\xe3\x20\x63\x8b\x0f\x26\x70\xb3\x19\x69\x81\x90\x74\x5c\x41\x2c\x34\xe9\x1e\xed\xde\xb0\x20\x4c\x14\x08\x6a\xf2\x48\x00\xd3\x86\x48\x60\xcc\x0c\x39\x85\x58\x73\xd2\x3d\x68\xcb\x6f\x40\x50\x49\x2c\x70\x31\x62\x14\x58\x2c\x09\x63\x60\x98\x20\x0a\x0c\x61\x16\xb0\x3a\x0d\x93\xa8\xd5\x68\x81\xd1\x64\x92\x18\xb0\x9a\x13\x09\xd2\xa2\x3a\xaa\x50\x46\xc5\xc8\xae\x84\x74\x2f\xe9\xe1\x0c\x6c\x8c\x1b\xc8\x4d\x8e\x36\x59\xb4\x89\x8b\xe0\x81\x65\xa4\x7b\x74\x11\xdc\x7b\xc0\xbe\x7c\x13\x42\xcd\x88\xa0\xc0\xd4\x07\x66\x30\x39\x13\x1a\xc9\x56\x13\x16\x57\x64\xc0\x2a\x12\x83\x8c\x3b\x92\x83\xb4\x98\x96\x0a\xa8\xb4\x20\xb8\x26\x06\xb8\xe2\x60\x63\x95\x47\xa0\x34\x16\x9f\x14\x22\x41\xab\xb4\x8c\x40\x52\x1d\x49\xd0\xd6\x46\xa0\x63\x16\x69\x50\xa2\xa5\x30\x05\x34\x41\x65\x9a\x5a\xc2\x80\xf3\x8e\x94\x98\xc6\x5b\x46\x41\x32\x9e\x50\x34\xc3\xe2\x3a\xe3\xbc\x5d\xc2\xea\xa6\xa6\xa3\x19\x58\x89\x25\x2c\x41\x68\x13\x01\xb7\x92\xec\x55\xe4\xa0\xda\x78\xb6\xe6\x70\x2a\x41\x99\x48\x82\xd1\x16\xcd\x8d\xf6\x86\x8f\xb4\x08\x8d\x44\x58\x82\xc1\x50\xc0\x18\x27\xbb\xb0\x7c\x59\x09\x0d\x96\x62\x25\x25\xa8\x87\x6a\x1b\x31\xb0\x94\xe3\x7e\xb1\xc8\x82\x8c\x45\x4b\x6a\xd0\x31\xa1\x61\x46\x46\x02\x8c\xe4\x1d\x8d\xab\xdb\x48\x01\xa5\x3c\x44\x97\x6a\x4c\x73\x4b\x45\x58\x21\x4f\x4c\xa4\x85\x20\x2d\x28\x42\x08\xf2\xa4\x60\x8b\x08\xe2\xcb\x2a\x92\x60\x2d\x76\x79\xa6\x55\x42\xd1\x33\x61\xb0\x2c\x29\xc7\xa0\x32\x1d\x09\xd0\x54\xb7\x74\xdd\xbe\x60\xfc\x6c\x47\x86\xf9\xad\xc2\xae\x18\xc2\xcb\x05\x5a\x43\x29\x0f\x2b\x86\x3c\x71\x99\xba\x45\x42\x61\xf2\x04\x6a\xd0\x17\xc1\xed\x97\x15\x57\x60\x62\xac\x22\xa5\xed\xb2\x35\xeb\x03\x17\xa1\xf1\x52\xb4\x48\x99\x08\x24\xb6\x0c\x65\x11\x45\x69\xb1\xa7\x39\x65\x84\x46\x02\x04\x62\x08\x8e\xd1\x09\xdb\xac\xb5\xdd\x32\xf4\xdc\xec\x00\x99\x01\x63\xd5\x52\x80\xe1\x3a\x0f\xc5\x81\x4c\x09\x07\x19\xa0\x39\xc7\x33\x4e\x84\x9e\x1a\x6a\x88\xed\x68\x01\x5c\xaa\x90\x1b\x92\x62\xef\x10\xcc\x76\xb4\xc2\x36\xba\xc5\x66\xa1\xcc\x97\x15\xb3\xc0\x75\xa4\xc0\x18\x95\x50\x22\xc0\x72\x34\x93\x69\x4e\x34\x30\xcb\x23\x03\x54\xed\x68\x0e\xd4\x8a\x90\xb5\x31\x47\xe7\xac\x8d\x34\x98\xc0\x2f\xe2\x1c\x34\x06\xd9\x58\x9e\x30\xd0\xd8\x78\x2d\xc6\xcd\x52\xac\x1c\x89\x5a\x59\x20\x42\x69\x60\xf9\x62\x2d\x05\x90\x8e\x64\x10\x87\xee\x15\xaa\x01\x38\x4e\x58\x81\x31\xa7\x2a\x0a\x1d\xae\xcd\xde\xb0\x21\x61\x0f\xb0\xf8\x65\x47\x69\xe0\x5c\x84\x98\xc6\x16\x37\xdc\x70\x81\x4e\x09\x85\x15\x1a\xf3\x8e\x0e\x79\x17\x82\xc2\xb4\x06\x2e\x83\x59\x2a\x94\x0b\x5a\x82\x49\x80\xe7\x47\xc4\xf0\x25\x14\x54\x84\xc5\xa1\xb1\xb6\x63\xd4\xa4\x6d\x4b\x62\xd7\x91\xd8\x69\xd1\xf2\x10\x88\xb6\x35\x30\x30\x14\x0f\x69\xdc\x68\x03\x8c\x87\x09\x3c\x22\x4d\x38\xa4\x51\x9f\x94\x31\xb6\x79\x8d\x74\x8c\x3b\xc3\x62\xdd\x92\x1a\x8f\x84\x2f\xab\xb0\x31\xd8\xcc\xa9\x10\xcb\x90\x05\x98\x13\x56\x24\x08\x4b\x95\x01\x29\x59\x50\x80\x7e\x2a\x2d\xf6\x34\xa7\xd8\x1a\x43\x56\x45\x60\x04\xf6\x5b\x6a\x31\x5e\x5a\xdb\x5d\x22\x21\x9e\xdd\xb2\x18\x8b\x7a\x19\xb5\x69\x85\xae\xb3\xc0\x66\xb0\x55\x48\x29\xdb\x8e\xa4\x40\xf1\x38\x1c\xf5\x6d\x81\xf2\x8e\xc6\xd4\x6a\x9b\x97\xa4\x26\x0a\xa9\xd5\xd1\x21\xb5\x3a\x55\x5f\x2e\xb0\x25\x0b\x03\x2a\x16\x6d\x36\xdb\x0f\x31\x86\xfa\x1c\xe7\xe3\x2d\xb7\xb8\x12\xba\x71\xff\xee\xcd\x31\xde\x08\xdb\x3b\x65\x7b\x45\xad\xab\xe4\x8f\xee\xff\x3e\x35\x4c\x5a\x65\xb4\x52\x32\x5e\x08\xe7\x9d\xa2\x0b\x15\x53\x1f\x73\x2a\x17\x71\x0c\x9f\xea\x1e\x02\xef\xef\xab\x4f\xf0\xed\xc5\x76\xeb\x2a\xe2\xd6\x6b\x5f\xa4\xdd\xbd\x78\x40\x16\x9b\x22\xfc\x36\xf5\xba\xae\x92\x5f\xc9\xd7\xee\xfe\x8b\x8c\xff\x59\xef\x78\xd2\x32\xd9\xac\x7c\xd1\x40\x52\x79\xd7\xf8\x71\xee\xf1\xed\xf5\xab\x96\xe1\xd5\xaf\xbf\x77\x52\x9d\x04\xd4\x55\x42\x06\xe8\xd0\x6e\x61\x0f\x80\x1f\x04\xd0\x5a\x30\x5a\x66\x79\xfa\xba\x13\xe9\x20\x1e\xc3\x98\x2d\x5e\xff\xe5\xf5\xab\x1b\xff\xb9\x39\xf1\xf8\x91\x59\xbd\xc2\xfb\xfb\x7d\x56\xa4\xe5\xfd\xaf\x4f\x36\x1e\x3a\xf2\xfa\xd5\x0f\x22\xe7\xf1\x33\x35\x2b\xee\xa2\xac\x48\xfd\x67\x5f\x47\x46\x79\xef\x98\x9e\x73\x15\x1b\xa6\xd3\xb9\x5c\xa4\x4c\x73\xef\xb9\x15\x29\x77\x5e\xc1\xa7\xfa\xc9\xa1\x3f\xa7\x22\x49\xe7\x8a\x2e\xe6\xa9\x9b\xeb\x54\xa6\x62\x91\x2e\x94\x91\x69\x6a\xac\x5c\x18\x93\x72\x73\x00\x7d\xe0\x68\xeb\x17\x8c\xa6\x53\xf2\xd7\xbf\x92\xa7\x37\xf0\xe1\xc3\xfa\xcf\x3a\x9c\xd4\x75\x27\x19\x59\xc5\xac\x88\xe7\xc2\x3b\x96\xd2\xb9\xf4\x73\x99\x18\x6a\x63\x29\x75\xba\x50\x3e\x5e\x7c\x67\xcf\x61\xe2\xfc\x33\x49\xb9\xf2\x4d\x95\x25\x75\xb4\xae\xca\x6d\x96\xfa\x6a\xff\xd5\x28\x58\x6a\xbc\x98\x53\xbf\x30\x89\xb2\xa9\xe6\x42\xd8\xc4\xa4\xc6\x79\xe7\x16\x4a\xaa\x67\x69\xfa\xff\xd3\xb6\xae\xca\x95\x6f\x96\x7e\x53\x47\x6a\x21\xd8\xdc\x89\xb9\x59\x2c\x52\xab\xe8\xc2\xc5\x4c\x3b\xea\x8c\x8e\x85\xf0\xb1\xb6\xcf\x34\x7e\xfd\x4a\x2a\x57\xdc\x79\x02\xe3\xcf\x4d\xd5\x7d\x25\xd6\xe4\xf1\xf1\x99\x2d\x8f\x8f\x07\x92\x28\xe7\x8b\x94\x3c\x3e\xfe\x93\x56\x3f\x7d\x47\x3b\x99\x70\xb3\x60\x2a\x59\xa4\xce\x52\xa7\x62\xeb\xb8\x4e\xc4\x42\xa4\x8e\x0a\xc9\xdd\x8f\x82\xd2\x16\xee\xa8\x4c\xfd\x45\x56\x55\x65\x05\xab\x32\xf5\xb7\x93\x73\x32\xd8\xe7\x45\xe5\xd7\xb9\x4b\xfc\x6f\x4f\xb5\x5c\xfc\x8d\x20\xdb\x53\xea\x10\x52\xdf\x67\x4d\xb2\x7c\xfd\xfd\x34\x21\x09\x7e\x31\xbf\xfa\xe4\xb6\xae\x2b\xe7\xdf\x0e\x16\x11\xbc\xd9\x54\x05\xf9\x61\xba\x95\xa9\x5f\x05\xc3\xfa\x08\xdd\x7f\xc2\x39\x20\x23\x63\x38\xb3\x49\xca\xb8\xb6\xde\xe9\x74\x61\x94\x31\x8a\x31\xe9\x3c\xb5\x5a\x69\x8d\x99\xf8\xfb\x33\x9b\xaa\xcd\xfc\xe1\x5f\xb3\x06\x11\xc2\x10\x79\x27\x45\xe2\x84\x13\xf3\x34\xd5\xc2\x29\x6e\x19\xf3\x56\x6a\x99\x6a\xcd\x84\x9c\xbf\x6c\xc1\x83\x5b\xe5\xff\x9a\x05\x88\x10\x86\xc8\xea\xb9\x4f\x2c\x77\x74\xa1\xb9\x37\x4e\x09\xef\x17\x92\xa5\x52\x3a\xeb\xa5\x69\xbb\xc3\x93\x05\x8f\xbf\x1c\x3e\x1f\x7f\xff\xae\x3e\xdb\x1f\x5b\xc2\x0f\x28\x59\xba\xfb\xff\xde\xdc\xd5\x59\x12\xa5\x55\xb9\x4e\xcb\xfb\x22\xba\x2f\xab\xd5\xb2\xcc\x3d\xa6\xd5\xfe\xd7\x8c\xf6\x17\x99\xe3\x7e\xfb\xef\xc2\xff\x0b\x00\x00\xff\xff\xce\x28\x02\x68\x3f\x1c\x00\x00") func web_uiIndexHtmlBytes() ([]byte, error) { return bindataRead( @@ -885,7 +885,7 @@ func web_uiIndexHtml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/index.html", size: 7156, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/index.html", size: 7231, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -905,7 +905,7 @@ func web_uiOidcCallback() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/oidc/callback", size: 492, mode: os.FileMode(420), modTime: time.Unix(1603125142, 0)} + info := bindataFileInfo{name: "web_ui/oidc/callback", size: 492, mode: os.FileMode(420), modTime: time.Unix(1605811293, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -925,7 +925,7 @@ func web_uiRobotsTxt() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/robots.txt", size: 53, mode: os.FileMode(420), modTime: time.Unix(1603125142, 0)} + info := bindataFileInfo{name: "web_ui/robots.txt", size: 53, mode: os.FileMode(420), modTime: time.Unix(1605811293, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -945,7 +945,7 @@ func web_uiToriiRedirectHtml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/torii/redirect.html", size: 506, mode: os.FileMode(420), modTime: time.Unix(1603125247, 0)} + info := bindataFileInfo{name: "web_ui/torii/redirect.html", size: 506, mode: os.FileMode(420), modTime: time.Unix(1605811441, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -1017,8 +1017,8 @@ var _bindata = map[string]func() (*asset, error){ "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js": web_uiAssetsCodemirrorModeRubyRubyEa43ca3a3bdd63a52811e8464d66134bJs, "web_ui/assets/codemirror/mode/yaml/yaml-86bec82a0f62e7a53eef41d44a8e4727.js": web_uiAssetsCodemirrorModeYamlYaml86bec82a0f62e7a53eef41d44a8e4727Js, "web_ui/assets/consul-logo-707625c5eb04f602ade1f89a8868a329.png": web_uiAssetsConsulLogo707625c5eb04f602ade1f89a8868a329Png, - "web_ui/assets/consul-ui-7aeaf6ce6c56cfe7d7ce8128f78dd5ff.js": web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJs, - "web_ui/assets/consul-ui-a71586e1e32d7a2cb324d8dc3082a4eb.css": web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCss, + "web_ui/assets/consul-ui-6545182bcd5582815bc4aa32375523fe.css": web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCss, + "web_ui/assets/consul-ui-a4c27f15cfda80a598a26c3f3da0342a.js": web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJs, "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js": web_uiAssetsCssEscape851839b3ea1d0b4eb4c7089446df5e9fJs, "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js": web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js, "web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js": web_uiAssetsEncodingIndexes75eea16b259716db4fd162ee283d2ae5Js, @@ -1031,7 +1031,7 @@ var _bindata = map[string]func() (*asset, error){ "web_ui/assets/favicon.ico": web_uiAssetsFaviconIco, "web_ui/assets/loading-cylon-pink.svg": web_uiAssetsLoadingCylonPinkSvg, "web_ui/assets/metrics-providers/consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js": web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js, - "web_ui/assets/metrics-providers/prometheus-d34e43a22a7270925b5d2ffba045d5ab.js": web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJs, + "web_ui/assets/metrics-providers/prometheus-5f31ba3b7ffd850fa916a0a76933e968.js": web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js, "web_ui/assets/mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png": web_uiAssetsMstile144x144Ac561ffa84c7e8ce1fe68d70f1c16d1dPng, "web_ui/assets/mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png": web_uiAssetsMstile150x1506b13ab220a09a9e72328a3b05d5b9eecPng, "web_ui/assets/mstile-310x150-ccc673174b188a92f1e78bc25aa6f3f8.png": web_uiAssetsMstile310x150Ccc673174b188a92f1e78bc25aa6f3f8Png, @@ -1039,7 +1039,7 @@ var _bindata = map[string]func() (*asset, error){ "web_ui/assets/mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png": web_uiAssetsMstile70x7008e1368e84f412f6ad30279d849b1df9Png, "web_ui/assets/safari-pinned-tab.svg": web_uiAssetsSafariPinnedTabSvg, "web_ui/assets/vendor-992465b8b230f89d4adce5f016543c4d.css": web_uiAssetsVendor992465b8b230f89d4adce5f016543c4dCss, - "web_ui/assets/vendor-b134a6d8acef5d5cec0e83b782718c89.js": web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89Js, + "web_ui/assets/vendor-ed71485765549f3aea50f590e9204f99.js": web_uiAssetsVendorEd71485765549f3aea50f590e9204f99Js, "web_ui/index.html": web_uiIndexHtml, "web_ui/oidc/callback": web_uiOidcCallback, "web_ui/robots.txt": web_uiRobotsTxt, @@ -1114,8 +1114,8 @@ var _bintree = &bintree{nil, map[string]*bintree{ }}, }}, "consul-logo-707625c5eb04f602ade1f89a8868a329.png": &bintree{web_uiAssetsConsulLogo707625c5eb04f602ade1f89a8868a329Png, map[string]*bintree{}}, - "consul-ui-7aeaf6ce6c56cfe7d7ce8128f78dd5ff.js": &bintree{web_uiAssetsConsulUi7aeaf6ce6c56cfe7d7ce8128f78dd5ffJs, map[string]*bintree{}}, - "consul-ui-a71586e1e32d7a2cb324d8dc3082a4eb.css": &bintree{web_uiAssetsConsulUiA71586e1e32d7a2cb324d8dc3082a4ebCss, map[string]*bintree{}}, + "consul-ui-6545182bcd5582815bc4aa32375523fe.css": &bintree{web_uiAssetsConsulUi6545182bcd5582815bc4aa32375523feCss, map[string]*bintree{}}, + "consul-ui-a4c27f15cfda80a598a26c3f3da0342a.js": &bintree{web_uiAssetsConsulUiA4c27f15cfda80a598a26c3f3da0342aJs, map[string]*bintree{}}, "css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js": &bintree{web_uiAssetsCssEscape851839b3ea1d0b4eb4c7089446df5e9fJs, map[string]*bintree{}}, "encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js": &bintree{web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js, map[string]*bintree{}}, "encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js": &bintree{web_uiAssetsEncodingIndexes75eea16b259716db4fd162ee283d2ae5Js, map[string]*bintree{}}, @@ -1129,7 +1129,7 @@ var _bintree = &bintree{nil, map[string]*bintree{ "loading-cylon-pink.svg": &bintree{web_uiAssetsLoadingCylonPinkSvg, map[string]*bintree{}}, "metrics-providers": &bintree{nil, map[string]*bintree{ "consul-31d7e3b0ef7c58d62338c7d7aeaaf545.js": &bintree{web_uiAssetsMetricsProvidersConsul31d7e3b0ef7c58d62338c7d7aeaaf545Js, map[string]*bintree{}}, - "prometheus-d34e43a22a7270925b5d2ffba045d5ab.js": &bintree{web_uiAssetsMetricsProvidersPrometheusD34e43a22a7270925b5d2ffba045d5abJs, map[string]*bintree{}}, + "prometheus-5f31ba3b7ffd850fa916a0a76933e968.js": &bintree{web_uiAssetsMetricsProvidersPrometheus5f31ba3b7ffd850fa916a0a76933e968Js, map[string]*bintree{}}, }}, "mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png": &bintree{web_uiAssetsMstile144x144Ac561ffa84c7e8ce1fe68d70f1c16d1dPng, map[string]*bintree{}}, "mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png": &bintree{web_uiAssetsMstile150x1506b13ab220a09a9e72328a3b05d5b9eecPng, map[string]*bintree{}}, @@ -1138,7 +1138,7 @@ var _bintree = &bintree{nil, map[string]*bintree{ "mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png": &bintree{web_uiAssetsMstile70x7008e1368e84f412f6ad30279d849b1df9Png, map[string]*bintree{}}, "safari-pinned-tab.svg": &bintree{web_uiAssetsSafariPinnedTabSvg, map[string]*bintree{}}, "vendor-992465b8b230f89d4adce5f016543c4d.css": &bintree{web_uiAssetsVendor992465b8b230f89d4adce5f016543c4dCss, map[string]*bintree{}}, - "vendor-b134a6d8acef5d5cec0e83b782718c89.js": &bintree{web_uiAssetsVendorB134a6d8acef5d5cec0e83b782718c89Js, map[string]*bintree{}}, + "vendor-ed71485765549f3aea50f590e9204f99.js": &bintree{web_uiAssetsVendorEd71485765549f3aea50f590e9204f99Js, map[string]*bintree{}}, }}, "index.html": &bintree{web_uiIndexHtml, map[string]*bintree{}}, "oidc": &bintree{nil, map[string]*bintree{ diff --git a/agent/uiserver/ui_template_data.go b/agent/uiserver/ui_template_data.go index d566ebaa8..008377b4d 100644 --- a/agent/uiserver/ui_template_data.go +++ b/agent/uiserver/ui_template_data.go @@ -28,9 +28,10 @@ func uiTemplateDataFromConfig(cfg *config.RuntimeConfig) (map[string]interface{} } d := map[string]interface{}{ - "ContentPath": cfg.UIConfig.ContentPath, - "ACLsEnabled": cfg.ACLsEnabled, - "UIConfig": uiCfg, + "ContentPath": cfg.UIConfig.ContentPath, + "ACLsEnabled": cfg.ACLsEnabled, + "UIConfig": uiCfg, + "LocalDatacenter": cfg.Datacenter, } // Also inject additional provider scripts if needed, otherwise strip the diff --git a/agent/uiserver/uiserver.go b/agent/uiserver/uiserver.go index 82bedeb27..dca96a021 100644 --- a/agent/uiserver/uiserver.go +++ b/agent/uiserver/uiserver.go @@ -251,15 +251,38 @@ func (h *Handler) renderIndex(cfg *config.RuntimeConfig, fs http.FileSystem) ([] // have to match the encoded double quotes around the JSON string value that // is there as a placeholder so the end result is an actual JSON bool not a // string containing "false" etc. - re := regexp.MustCompile(`%22__RUNTIME_BOOL_[A-Za-z0-9-_]+__%22`) + re := regexp.MustCompile(`%22__RUNTIME_(BOOL|STRING)_([A-Za-z0-9-_]+)__%22`) content = []byte(re.ReplaceAllStringFunc(string(content), func(str string) string { - // Trim the prefix and __ suffix - varName := strings.TrimSuffix(strings.TrimPrefix(str, "%22__RUNTIME_BOOL_"), "__%22") - if v, ok := tplData[varName].(bool); ok && v { - return "true" + // Trim the prefix and suffix + pair := strings.TrimSuffix(strings.TrimPrefix(str, "%22__RUNTIME_"), "__%22") + parts := strings.SplitN(pair, "_", 2) + switch parts[0] { + case "BOOL": + if v, ok := tplData[parts[1]].(bool); ok && v { + return "true" + } + return "false" + case "STRING": + if v, ok := tplData[parts[1]].(string); ok { + if bs, err := json.Marshal(v); err == nil { + return url.PathEscape(string(bs)) + } + // Error! + h.logger.Error("Encoding JSON value for UI template failed", + "placeholder", str, + "value", v, + ) + // Fall through to return the empty string to make JSON parse + } + return `""` // Empty JSON string } - return "false" + // Unknown type is likely an error + h.logger.Error("Unknown placeholder type in UI template", + "placeholder", str, + ) + // Return a literal empty string so the JSON still parses + return `""` })) tpl, err := template.New("index").Funcs(template.FuncMap{ diff --git a/agent/uiserver/uiserver_test.go b/agent/uiserver/uiserver_test.go index 633e901f4..23be76759 100644 --- a/agent/uiserver/uiserver_test.go +++ b/agent/uiserver/uiserver_test.go @@ -34,14 +34,19 @@ func TestUIServerIndex(t *testing.T) { path: "/", // Note /index.html redirects to / wantStatus: http.StatusOK, wantContains: []string{" + +**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)* + +- [Prerequisites](#prerequisites) +- [Installation](#installation) +- [Yarn Commands](#yarn-commands) +- [Contributing](#contributing) + - [Building ToC](#building-toc) + + + +## Prerequisites + +You will need the following things properly installed on your computer. + +* [Git][git] +* [Node.js][node] +* [Yarn][yarn] installed globally +* [Google Chrome][chrome] +* [Firefox][firefox] + +[git]: https://git-scm.com/ +[node]: https://nodejs.org/ +[yarn]: https://classic.yarnpkg.com/lang/en/ +[chrome]: https://google.com/chrome/ +[firefox]: https://firefox.com/ +[yarn-workspaces]: https://classic.yarnpkg.com/en/docs/workspaces/ + +## Installation + +* `git clone https://github.com/hashicorp/consul.git` this repository +* `cd ui` +* `yarn` + +## Yarn Commands + +List of available project commands. `yarn run ` + +| Command | Description | +|---------------------|---| +| doc:toc | Re-builds the ToC for this README. | + +## Contributing + +### Building ToC + +To autogenerate a ToC (table of contents) for this README, +run `yarn doc:toc`. Please update the ToC whenever editing the structure +of README. diff --git a/ui/package.json b/ui/package.json new file mode 100644 index 000000000..d14647a40 --- /dev/null +++ b/ui/package.json @@ -0,0 +1,17 @@ +{ + "private": true, + "description": "Monorepo for Consul UI, packages and addons.", + "license": "MPL-2.0", + "author": "HashiCorp", + "workspaces": { + "packages": [ + "packages/*" + ] + }, + "scripts": { + "doc:toc": "doctoc README.md" + }, + "devDependencies": { + "doctoc": "^1.4.0" + } +} diff --git a/ui-v2/.dev.eslintrc.js b/ui/packages/consul-ui/.dev.eslintrc.js similarity index 100% rename from ui-v2/.dev.eslintrc.js rename to ui/packages/consul-ui/.dev.eslintrc.js diff --git a/ui-v2/.editorconfig b/ui/packages/consul-ui/.editorconfig similarity index 100% rename from ui-v2/.editorconfig rename to ui/packages/consul-ui/.editorconfig diff --git a/ui-v2/.ember-cli b/ui/packages/consul-ui/.ember-cli similarity index 75% rename from ui-v2/.ember-cli rename to ui/packages/consul-ui/.ember-cli index 7f520c46a..be16d5cba 100644 --- a/ui-v2/.ember-cli +++ b/ui/packages/consul-ui/.ember-cli @@ -10,9 +10,5 @@ We use a nested in /components folder structure: /components/component-name/index.{hbs,js} */ - "componentStructure": "nested", - /** - We currently use classic components - */ - "componentClass": "@ember/component" + "componentStructure": "nested" } diff --git a/ui-v2/.eslintignore b/ui/packages/consul-ui/.eslintignore similarity index 100% rename from ui-v2/.eslintignore rename to ui/packages/consul-ui/.eslintignore diff --git a/ui-v2/.eslintrc.js b/ui/packages/consul-ui/.eslintrc.js similarity index 83% rename from ui-v2/.eslintrc.js rename to ui/packages/consul-ui/.eslintrc.js index ce7e9cee4..c5aba8262 100644 --- a/ui-v2/.eslintrc.js +++ b/ui/packages/consul-ui/.eslintrc.js @@ -5,8 +5,8 @@ module.exports = { ecmaVersion: 2018, sourceType: 'module', ecmaFeatures: { - legacyDecorators: true - } + legacyDecorators: true, + }, }, plugins: ['ember'], extends: ['eslint:recommended', 'plugin:ember/recommended'], @@ -17,7 +17,7 @@ module.exports = { 'no-unused-vars': ['error', { args: 'none' }], 'ember/no-new-mixins': ['warn'], 'ember/no-jquery': 'warn', - 'ember/no-global-jquery': 'warn' + 'ember/no-global-jquery': 'warn', }, overrides: [ // node files @@ -31,14 +31,14 @@ module.exports = { 'blueprints/*/index.js', 'config/**/*.js', 'lib/*/index.js', - 'server/**/*.js' + 'server/**/*.js', ], parserOptions: { - sourceType: 'script' + sourceType: 'script', }, env: { browser: false, - node: true + node: true, }, plugins: ['node'], rules: Object.assign({}, require('eslint-plugin-node').configs.recommended.rules, { @@ -46,8 +46,8 @@ module.exports = { // this can be removed once the following is fixed // https://github.com/mysticatea/eslint-plugin-node/issues/77 - 'node/no-unpublished-require': 'off' - }) - } - ] + 'node/no-unpublished-require': 'off', + }), + }, + ], }; diff --git a/ui-v2/.istanbul.yml b/ui/packages/consul-ui/.istanbul.yml similarity index 100% rename from ui-v2/.istanbul.yml rename to ui/packages/consul-ui/.istanbul.yml diff --git a/ui-v2/.nvmrc b/ui/packages/consul-ui/.nvmrc similarity index 100% rename from ui-v2/.nvmrc rename to ui/packages/consul-ui/.nvmrc diff --git a/ui-v2/.prettierrc b/ui/packages/consul-ui/.prettierrc similarity index 100% rename from ui-v2/.prettierrc rename to ui/packages/consul-ui/.prettierrc diff --git a/ui/packages/consul-ui/.storybook/main.js b/ui/packages/consul-ui/.storybook/main.js new file mode 100644 index 000000000..3b8aad670 --- /dev/null +++ b/ui/packages/consul-ui/.storybook/main.js @@ -0,0 +1,10 @@ +module.exports = { + "stories": [ + "../app/**/*.stories.mdx" + ], + "addons": [ + "@storybook/addon-links", + "@storybook/addon-docs", + "@storybook/addon-controls", + ] +} diff --git a/ui/packages/consul-ui/.storybook/preview.js b/ui/packages/consul-ui/.storybook/preview.js new file mode 100644 index 000000000..621118120 --- /dev/null +++ b/ui/packages/consul-ui/.storybook/preview.js @@ -0,0 +1,4 @@ +export const parameters = { + actions: { argTypesRegex: '^on[A-Z].*' }, + layout: 'padded' +} diff --git a/ui-v2/.template-lintrc.js b/ui/packages/consul-ui/.template-lintrc.js similarity index 92% rename from ui-v2/.template-lintrc.js rename to ui/packages/consul-ui/.template-lintrc.js index a87bfda6c..df2f4f9e0 100644 --- a/ui-v2/.template-lintrc.js +++ b/ui/packages/consul-ui/.template-lintrc.js @@ -14,7 +14,7 @@ module.exports = { 'no-nested-interactive': false, 'block-indentation': false, - 'quotes': false, + quotes: false, 'no-inline-styles': false, 'no-triple-curlies': false, @@ -29,6 +29,6 @@ module.exports = { 'no-invalid-role': false, 'no-unnecessary-component-helper': false, - 'link-href-attributes': false + 'link-href-attributes': false, }, }; diff --git a/ui-v2/.watchmanconfig b/ui/packages/consul-ui/.watchmanconfig similarity index 100% rename from ui-v2/.watchmanconfig rename to ui/packages/consul-ui/.watchmanconfig diff --git a/ui-v2/GNUmakefile b/ui/packages/consul-ui/GNUmakefile similarity index 79% rename from ui-v2/GNUmakefile rename to ui/packages/consul-ui/GNUmakefile index dfff38541..27f24e9f3 100644 --- a/ui-v2/GNUmakefile +++ b/ui/packages/consul-ui/GNUmakefile @@ -1,22 +1,13 @@ ROOT:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) +CONSUL_UI_INSTALL_FLAGS?= all: build -deps: node_modules clean +deps: ../../node_modules clean clean: rm -rf ./tmp -# target for netlify ui previews -# Netlify Settings -# base-directory: ui-v2 -# build command: make netlify -# publish directory: ui-v2/ui-dist -netlify: build-staging - mkdir -p ui-dist/ui \ - && mv dist/* ui-dist/ui/ \ - && cp _redirects ui-dist/_redirects - build-staging: deps yarn run build:staging @@ -77,7 +68,6 @@ test-coverage-ci: deps test-parallel: deps yarn run test:parallel - lint: deps yarn run lint:hbs && yarn run lint:js @@ -87,7 +77,7 @@ format: deps steps: yarn run steps:list -node_modules: yarn.lock package.json - yarn install +../../node_modules: ../../yarn.lock package.json + yarn install $(CONSUL_UI_INSTALL_FLAGS) .PHONY: all deps build start test test-view lint format clean diff --git a/ui-v2/README.md b/ui/packages/consul-ui/README.md similarity index 100% rename from ui-v2/README.md rename to ui/packages/consul-ui/README.md diff --git a/ui-v2/_redirects b/ui/packages/consul-ui/_redirects similarity index 100% rename from ui-v2/_redirects rename to ui/packages/consul-ui/_redirects diff --git a/ui-v2/app/adapters/acl.js b/ui/packages/consul-ui/app/adapters/acl.js similarity index 78% rename from ui-v2/app/adapters/acl.js rename to ui/packages/consul-ui/app/adapters/acl.js index 71ad50bea..c0b2dea80 100644 --- a/ui-v2/app/adapters/acl.js +++ b/ui/packages/consul-ui/app/adapters/acl.js @@ -4,16 +4,17 @@ import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; // The old ACL system doesn't support the `ns=` query param // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, index }) { +export default class AclAdapter extends Adapter { + requestForQuery(request, { dc, index }) { // https://www.consul.io/api/acl.html#list-acls return request` GET /v1/acl/list?${{ dc }} ${{ index }} `; - }, - requestForQueryRecord: function(request, { dc, index, id }) { + } + + requestForQueryRecord(request, { dc, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -23,16 +24,18 @@ export default Adapter.extend({ ${{ index }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { // https://www.consul.io/api/acl.html#create-acl-token return request` PUT /v1/acl/create?${{ [API_DATACENTER_KEY]: data[DATACENTER_KEY] }} ${serialized} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { // the id is in the data, don't add it into the URL // https://www.consul.io/api/acl.html#update-acl-token return request` @@ -40,20 +43,23 @@ export default Adapter.extend({ ${serialized} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { // https://www.consul.io/api/acl.html#delete-acl-token return request` PUT /v1/acl/destroy/${data[SLUG_KEY]}?${{ [API_DATACENTER_KEY]: data[DATACENTER_KEY] }} `; - }, - requestForCloneRecord: function(request, serialized, data) { + } + + requestForCloneRecord(request, serialized, data) { // https://www.consul.io/api/acl.html#clone-acl-token return request` PUT /v1/acl/clone/${data[SLUG_KEY]}?${{ [API_DATACENTER_KEY]: data[DATACENTER_KEY] }} `; - }, - clone: function(store, type, id, snapshot) { + } + + clone(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, unserialized) { return adapter.requestForCloneRecord(request, serialized, unserialized); @@ -64,5 +70,5 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, -}); + } +} diff --git a/ui-v2/app/adapters/application.js b/ui/packages/consul-ui/app/adapters/application.js similarity index 66% rename from ui-v2/app/adapters/application.js rename to ui/packages/consul-ui/app/adapters/application.js index c9e0d1bc0..f49fc422d 100644 --- a/ui-v2/app/adapters/application.js +++ b/ui/packages/consul-ui/app/adapters/application.js @@ -3,17 +3,20 @@ import { inject as service } from '@ember/service'; export const DATACENTER_QUERY_PARAM = 'dc'; export const NSPACE_QUERY_PARAM = 'ns'; -export default Adapter.extend({ - client: service('client/http'), - env: service('env'), - formatNspace: function(nspace) { + +export default class ApplicationAdapter extends Adapter { + @service('client/http') client; + @service('env') env; + + formatNspace(nspace) { if (this.env.env('CONSUL_NSPACES_ENABLED')) { return nspace !== '' ? { [NSPACE_QUERY_PARAM]: nspace } : undefined; } - }, - formatDatacenter: function(dc) { + } + + formatDatacenter(dc) { return { [DATACENTER_QUERY_PARAM]: dc, }; - }, -}); + } +} diff --git a/ui-v2/app/adapters/coordinate.js b/ui/packages/consul-ui/app/adapters/coordinate.js similarity index 63% rename from ui-v2/app/adapters/coordinate.js rename to ui/packages/consul-ui/app/adapters/coordinate.js index 7bdb2bb20..66de8393b 100644 --- a/ui-v2/app/adapters/coordinate.js +++ b/ui/packages/consul-ui/app/adapters/coordinate.js @@ -1,12 +1,12 @@ import Adapter from './application'; // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, index, uri }) { +export default class CoordinateAdapter extends Adapter { + requestForQuery(request, { dc, index, uri }) { return request` GET /v1/coordinate/nodes?${{ dc }} X-Request-ID: ${uri} ${{ index }} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/dc.js b/ui/packages/consul-ui/app/adapters/dc.js similarity index 54% rename from ui-v2/app/adapters/dc.js rename to ui/packages/consul-ui/app/adapters/dc.js index e98b05465..4e265981d 100644 --- a/ui-v2/app/adapters/dc.js +++ b/ui/packages/consul-ui/app/adapters/dc.js @@ -1,9 +1,9 @@ import Adapter from './application'; -export default Adapter.extend({ - requestForQuery: function(request) { +export default class DcAdapter extends Adapter { + requestForQuery(request) { return request` GET /v1/catalog/datacenters `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/discovery-chain.js b/ui/packages/consul-ui/app/adapters/discovery-chain.js similarity index 72% rename from ui-v2/app/adapters/discovery-chain.js rename to ui/packages/consul-ui/app/adapters/discovery-chain.js index 588fd4d67..cee98ff57 100644 --- a/ui-v2/app/adapters/discovery-chain.js +++ b/ui/packages/consul-ui/app/adapters/discovery-chain.js @@ -1,8 +1,8 @@ import Adapter from './application'; // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQueryRecord: function(request, { dc, ns, index, id, uri }) { +export default class DiscoveryChainAdapter extends Adapter { + requestForQueryRecord(request, { dc, ns, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -15,5 +15,5 @@ export default Adapter.extend({ index, }} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/http.js b/ui/packages/consul-ui/app/adapters/http.js similarity index 87% rename from ui-v2/app/adapters/http.js rename to ui/packages/consul-ui/app/adapters/http.js index 13ce4c289..3e0f38fd4 100644 --- a/ui-v2/app/adapters/http.js +++ b/ui/packages/consul-ui/app/adapters/http.js @@ -1,7 +1,6 @@ import { inject as service } from '@ember/service'; -import Adapter from 'ember-data/adapter'; -import AdapterError from '@ember-data/adapter/error'; -import { +import Adapter from '@ember-data/adapter'; +import AdapterError, { AbortError, TimeoutError, ServerError, @@ -10,7 +9,7 @@ import { NotFoundError, ConflictError, InvalidError, -} from 'ember-data/adapters/errors'; +} from '@ember-data/adapter/error'; // TODO These are now exactly the same, apart from the fact that one uses // `serialized, unserialized` and the other just `query` @@ -40,9 +39,10 @@ const write = function(adapter, modelName, type, snapshot) { modelName ); }; -export default Adapter.extend({ - client: service('client/http'), - rpc: function(req, resp, obj, modelName) { +export default class HttpAdapter extends Adapter { + @service('client/http') client; + + rpc(req, resp, obj, modelName) { const client = this.client; const store = this.store; const adapter = this; @@ -79,8 +79,9 @@ export default Adapter.extend({ // .catch(function(e) { // return Promise.reject(e); // }); - }, - error: function(err) { + } + + error(err) { if (err instanceof TypeError) { throw err; } @@ -132,23 +133,29 @@ export default Adapter.extend({ // Consider changing this to return the error and then // throw from the call site instead throw error; - }, - query: function(store, type, query) { + } + + query(store, type, query) { return read(this, type.modelName, 'Query', query); - }, - queryRecord: function(store, type, query) { + } + + queryRecord(store, type, query) { return read(this, type.modelName, 'QueryRecord', query); - }, - findAll: function(store, type) { + } + + findAll(store, type) { return read(this, type.modelName, 'FindAll'); - }, - createRecord: function(store, type, snapshot) { + } + + createRecord(store, type, snapshot) { return write(this, type.modelName, 'CreateRecord', snapshot); - }, - updateRecord: function(store, type, snapshot) { + } + + updateRecord(store, type, snapshot) { return write(this, type.modelName, 'UpdateRecord', snapshot); - }, - deleteRecord: function(store, type, snapshot) { + } + + deleteRecord(store, type, snapshot) { return write(this, type.modelName, 'DeleteRecord', snapshot); - }, -}); + } +} diff --git a/ui-v2/app/adapters/intention.js b/ui/packages/consul-ui/app/adapters/intention.js similarity index 83% rename from ui-v2/app/adapters/intention.js rename to ui/packages/consul-ui/app/adapters/intention.js index 73553ba46..4b047589c 100644 --- a/ui-v2/app/adapters/intention.js +++ b/ui/packages/consul-ui/app/adapters/intention.js @@ -1,12 +1,13 @@ import Adapter, { DATACENTER_QUERY_PARAM as API_DATACENTER_KEY } from './application'; import { get } from '@ember/object'; import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; -// Intentions use SourceNS and DestinationNS properties for namespacing -// so we don't need to add the `?ns=` anywhere here + +// Intentions use SourceNS and DestinationNS properties for namespacing so we +// don't need to add the `?ns=` anywhere here // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, filter, index, uri }) { +export default class IntentionAdapter extends Adapter { + requestForQuery(request, { dc, filter, index, uri }) { return request` GET /v1/connect/intentions?${{ dc }} X-Request-ID: ${uri}${ @@ -21,13 +22,15 @@ export default Adapter.extend({ filter, }} `; - }, - requestForQueryRecord: function(request, { dc, index, id }) { + } + + requestForQueryRecord(request, { dc, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } - // get the information we need from the id, which has been previously encoded + // get the information we need from the id, which has been previously + // encoded const [SourceNS, SourceName, DestinationNS, DestinationName] = id .split(':') .map(decodeURIComponent); @@ -42,8 +45,9 @@ export default Adapter.extend({ ${{ index }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { const body = { SourceNS: serialized.SourceNS, DestinationNS: serialized.DestinationNS, @@ -72,14 +76,16 @@ export default Adapter.extend({ ${body} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { // you can no longer save Destinations delete serialized.DestinationNS; delete serialized.DestinationName; return this.requestForCreateRecord(...arguments); - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { return request` DELETE /v1/connect/intentions/exact?${{ source: `${data.SourceNS}/${data.SourceName}`, @@ -87,5 +93,5 @@ export default Adapter.extend({ [API_DATACENTER_KEY]: data[DATACENTER_KEY], }} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/kv.js b/ui/packages/consul-ui/app/adapters/kv.js similarity index 80% rename from ui-v2/app/adapters/kv.js rename to ui/packages/consul-ui/app/adapters/kv.js index 46ac36ae3..212979a5e 100644 --- a/ui-v2/app/adapters/kv.js +++ b/ui/packages/consul-ui/app/adapters/kv.js @@ -1,16 +1,15 @@ import Adapter from './application'; - import isFolder from 'consul-ui/utils/isFolder'; import keyToArray from 'consul-ui/utils/keyToArray'; - import { SLUG_KEY } from 'consul-ui/models/kv'; import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; // TODO: Update to use this.formatDatacenter() const API_KEYS_KEY = 'keys'; -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id, separator }) { + +export default class KvAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id, separator }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -22,8 +21,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id }) { + } + + requestForQueryRecord(request, { dc, ns, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -35,10 +35,11 @@ export default Adapter.extend({ index, }} `; - }, - // TODO: Should we replace text/plain here with x-www-form-encoded? - // See https://github.com/hashicorp/consul/issues/3804 - requestForCreateRecord: function(request, serialized, data) { + } + + // TODO: Should we replace text/plain here with x-www-form-encoded? See + // https://github.com/hashicorp/consul/issues/3804 + requestForCreateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), ...this.formatNspace(data[NSPACE_KEY]), @@ -49,8 +50,9 @@ export default Adapter.extend({ ${serialized} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), flags: data.Flags, @@ -62,8 +64,9 @@ export default Adapter.extend({ ${serialized} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { let recurse; if (isFolder(data[SLUG_KEY])) { recurse = null; @@ -76,5 +79,5 @@ export default Adapter.extend({ return request` DELETE /v1/kv/${keyToArray(data[SLUG_KEY])}?${params} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/node.js b/ui/packages/consul-ui/app/adapters/node.js similarity index 74% rename from ui-v2/app/adapters/node.js rename to ui/packages/consul-ui/app/adapters/node.js index 248f950d2..a4e3672c5 100644 --- a/ui-v2/app/adapters/node.js +++ b/ui/packages/consul-ui/app/adapters/node.js @@ -1,15 +1,18 @@ import Adapter from './application'; + // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, index, id, uri }) { + +export default class NodeAdapter extends Adapter { + requestForQuery(request, { dc, index, id, uri }) { return request` GET /v1/internal/ui/nodes?${{ dc }} X-Request-ID: ${uri} ${{ index }} `; - }, - requestForQueryRecord: function(request, { dc, index, id, uri }) { + } + + requestForQueryRecord(request, { dc, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -19,15 +22,17 @@ export default Adapter.extend({ ${{ index }} `; - }, - requestForQueryLeader: function(request, { dc, uri }) { + } + + requestForQueryLeader(request, { dc, uri }) { return request` GET /v1/status/leader?${{ dc }} X-Request-ID: ${uri} Refresh: 30 `; - }, - queryLeader: function(store, type, id, snapshot) { + } + + queryLeader(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, unserialized) { return adapter.requestForQueryLeader(request, serialized, unserialized); @@ -38,5 +43,5 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, -}); + } +} diff --git a/ui-v2/app/adapters/nspace.js b/ui/packages/consul-ui/app/adapters/nspace.js similarity index 78% rename from ui-v2/app/adapters/nspace.js rename to ui/packages/consul-ui/app/adapters/nspace.js index a16dce864..7a468f9ef 100644 --- a/ui-v2/app/adapters/nspace.js +++ b/ui/packages/consul-ui/app/adapters/nspace.js @@ -2,16 +2,17 @@ import Adapter from './application'; import { SLUG_KEY } from 'consul-ui/models/nspace'; // namespaces aren't categorized by datacenter, therefore no dc -export default Adapter.extend({ - requestForQuery: function(request, { index, uri }) { +export default class NspaceAdapter extends Adapter { + requestForQuery(request, { index, uri }) { return request` GET /v1/namespaces X-Request-ID: ${uri} ${{ index }} `; - }, - requestForQueryRecord: function(request, { index, id }) { + } + + requestForQueryRecord(request, { index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an name'); } @@ -20,8 +21,9 @@ export default Adapter.extend({ ${{ index }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { return request` PUT /v1/namespace/${data[SLUG_KEY]} @@ -34,8 +36,9 @@ export default Adapter.extend({ }, }} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { return request` PUT /v1/namespace/${data[SLUG_KEY]} @@ -47,13 +50,15 @@ export default Adapter.extend({ }, }} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { return request` DELETE /v1/namespace/${data[SLUG_KEY]} `; - }, - requestForAuthorize: function(request, { dc, ns, index }) { + } + + requestForAuthorize(request, { dc, ns, index }) { return request` POST /v1/internal/acl/authorize?${{ dc, ns, index }} @@ -64,8 +69,9 @@ export default Adapter.extend({ }, ]} `; - }, - authorize: function(store, type, id, snapshot) { + } + + authorize(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, unserialized) { return adapter.requestForAuthorize(request, serialized, unserialized); @@ -79,5 +85,5 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, -}); + } +} diff --git a/ui-v2/app/adapters/oidc-provider.js b/ui/packages/consul-ui/app/adapters/oidc-provider.js similarity index 83% rename from ui-v2/app/adapters/oidc-provider.js rename to ui/packages/consul-ui/app/adapters/oidc-provider.js index 55251b6c9..6f85a0160 100644 --- a/ui-v2/app/adapters/oidc-provider.js +++ b/ui/packages/consul-ui/app/adapters/oidc-provider.js @@ -1,6 +1,5 @@ import Adapter from './application'; import { inject as service } from '@ember/service'; - import { env } from 'consul-ui/env'; import nonEmptySet from 'consul-ui/utils/non-empty-set'; @@ -10,9 +9,11 @@ if (env('CONSUL_NSPACES_ENABLED')) { } else { Namespace = () => ({}); } -export default Adapter.extend({ - env: service('env'), - requestForQuery: function(request, { dc, ns, index, uri }) { + +export default class OidcProviderAdapter extends Adapter { + @service('env') env; + + requestForQuery(request, { dc, ns, index, uri }) { return request` GET /v1/internal/ui/oidc-auth-methods?${{ dc }} X-Request-ID: ${uri} @@ -22,8 +23,9 @@ export default Adapter.extend({ ...this.formatNspace(ns), }} `; - }, - requestForQueryRecord: function(request, { dc, ns, id }) { + } + + requestForQueryRecord(request, { dc, ns, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -37,8 +39,9 @@ export default Adapter.extend({ RedirectURI: `${this.env.var('CONSUL_BASE_UI_URL')}/oidc/callback`, }} `; - }, - requestForAuthorize: function(request, { dc, ns, id, code, state }) { + } + + requestForAuthorize(request, { dc, ns, id, code, state }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -59,8 +62,9 @@ export default Adapter.extend({ State: state, }} `; - }, - requestForLogout: function(request, { id }) { + } + + requestForLogout(request, { id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -69,8 +73,9 @@ export default Adapter.extend({ Cache-Control: no-store X-Consul-Token: ${id} `; - }, - authorize: function(store, type, id, snapshot) { + } + + authorize(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, unserialized) { return adapter.requestForAuthorize(request, serialized, unserialized); @@ -81,8 +86,9 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, - logout: function(store, type, id, snapshot) { + } + + logout(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, unserialized) { return adapter.requestForLogout(request, serialized, unserialized); @@ -94,5 +100,5 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, -}); + } +} diff --git a/ui-v2/app/adapters/policy.js b/ui/packages/consul-ui/app/adapters/policy.js similarity index 82% rename from ui-v2/app/adapters/policy.js rename to ui/packages/consul-ui/app/adapters/policy.js index 7f6070e43..a07b039a1 100644 --- a/ui-v2/app/adapters/policy.js +++ b/ui/packages/consul-ui/app/adapters/policy.js @@ -1,9 +1,7 @@ import Adapter from './application'; - import { SLUG_KEY } from 'consul-ui/models/policy'; import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; - import { env } from 'consul-ui/env'; import nonEmptySet from 'consul-ui/utils/non-empty-set'; @@ -15,8 +13,8 @@ if (env('CONSUL_NSPACES_ENABLED')) { } // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id }) { +export default class PolicyAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id }) { return request` GET /v1/acl/policies?${{ dc }} @@ -25,8 +23,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id }) { + } + + requestForQueryRecord(request, { dc, ns, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -38,8 +37,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), }; @@ -54,8 +54,9 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), }; @@ -70,8 +71,9 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), ...this.formatNspace(data[NSPACE_KEY]), @@ -79,5 +81,5 @@ export default Adapter.extend({ return request` DELETE /v1/acl/policy/${data[SLUG_KEY]}?${params} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/proxy.js b/ui/packages/consul-ui/app/adapters/proxy.js similarity index 76% rename from ui-v2/app/adapters/proxy.js rename to ui/packages/consul-ui/app/adapters/proxy.js index 1a80f3221..ce34ff605 100644 --- a/ui-v2/app/adapters/proxy.js +++ b/ui/packages/consul-ui/app/adapters/proxy.js @@ -1,7 +1,7 @@ import Adapter from './application'; // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id, uri }) { +export default class ProxyAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -15,5 +15,5 @@ export default Adapter.extend({ index, }} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/role.js b/ui/packages/consul-ui/app/adapters/role.js similarity index 83% rename from ui-v2/app/adapters/role.js rename to ui/packages/consul-ui/app/adapters/role.js index 210987a7d..9f9c869db 100644 --- a/ui-v2/app/adapters/role.js +++ b/ui/packages/consul-ui/app/adapters/role.js @@ -1,9 +1,7 @@ import Adapter from './application'; - import { SLUG_KEY } from 'consul-ui/models/role'; import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; - import { env } from 'consul-ui/env'; import nonEmptySet from 'consul-ui/utils/non-empty-set'; @@ -13,9 +11,10 @@ if (env('CONSUL_NSPACES_ENABLED')) { } else { Namespace = () => ({}); } + // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id }) { +export default class RoleAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id }) { return request` GET /v1/acl/roles?${{ dc }} @@ -24,8 +23,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id }) { + } + + requestForQueryRecord(request, { dc, ns, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -37,8 +37,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), }; @@ -54,8 +55,9 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForUpdateRecord: function(request, serialized, data) { + } + + requestForUpdateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), }; @@ -71,8 +73,9 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), ...this.formatNspace(data[NSPACE_KEY]), @@ -80,5 +83,5 @@ export default Adapter.extend({ return request` DELETE /v1/acl/role/${data[SLUG_KEY]}?${params} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/service-instance.js b/ui/packages/consul-ui/app/adapters/service-instance.js similarity index 72% rename from ui-v2/app/adapters/service-instance.js rename to ui/packages/consul-ui/app/adapters/service-instance.js index db5e5ee4b..971f21aee 100644 --- a/ui-v2/app/adapters/service-instance.js +++ b/ui/packages/consul-ui/app/adapters/service-instance.js @@ -1,7 +1,8 @@ import Adapter from './application'; + // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id, uri }) { +export default class ServiceInstanceAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -15,10 +16,11 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id, uri }) { + } + + requestForQueryRecord(request, { dc, ns, index, id, uri }) { // query and queryRecord both use the same endpoint // they are just serialized differently return this.requestForQuery(...arguments); - }, -}); + } +} diff --git a/ui-v2/app/adapters/service.js b/ui/packages/consul-ui/app/adapters/service.js similarity index 81% rename from ui-v2/app/adapters/service.js rename to ui/packages/consul-ui/app/adapters/service.js index dd0932702..8b07072ef 100644 --- a/ui-v2/app/adapters/service.js +++ b/ui/packages/consul-ui/app/adapters/service.js @@ -1,7 +1,8 @@ import Adapter from './application'; + // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, gateway, uri }) { +export default class ServiceAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, gateway, uri }) { if (typeof gateway !== 'undefined') { return request` GET /v1/internal/ui/gateway-services-nodes/${gateway}?${{ dc }} @@ -24,8 +25,9 @@ export default Adapter.extend({ }} `; } - }, - requestForQueryRecord: function(request, { dc, ns, index, id, uri }) { + } + + requestForQueryRecord(request, { dc, ns, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -38,5 +40,5 @@ export default Adapter.extend({ index, }} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/session.js b/ui/packages/consul-ui/app/adapters/session.js similarity index 79% rename from ui-v2/app/adapters/session.js rename to ui/packages/consul-ui/app/adapters/session.js index 12d171079..e8ba419ad 100644 --- a/ui-v2/app/adapters/session.js +++ b/ui/packages/consul-ui/app/adapters/session.js @@ -5,8 +5,8 @@ import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQuery: function(request, { dc, ns, index, id, uri }) { +export default class SessionAdapter extends Adapter { + requestForQuery(request, { dc, ns, index, id, uri }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -19,8 +19,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id }) { + } + + requestForQueryRecord(request, { dc, ns, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -32,8 +33,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), ...this.formatNspace(data[NSPACE_KEY]), @@ -41,5 +43,5 @@ export default Adapter.extend({ return request` PUT /v1/session/destroy/${data[SLUG_KEY]}?${params} `; - }, -}); + } +} diff --git a/ui-v2/app/adapters/token.js b/ui/packages/consul-ui/app/adapters/token.js similarity index 79% rename from ui-v2/app/adapters/token.js rename to ui/packages/consul-ui/app/adapters/token.js index 9ef3b1979..d0a8d3526 100644 --- a/ui-v2/app/adapters/token.js +++ b/ui/packages/consul-ui/app/adapters/token.js @@ -1,10 +1,8 @@ import Adapter from './application'; import { inject as service } from '@ember/service'; - import { SLUG_KEY } from 'consul-ui/models/token'; import { FOREIGN_KEY as DATACENTER_KEY } from 'consul-ui/models/dc'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; - import { env } from 'consul-ui/env'; import nonEmptySet from 'consul-ui/utils/non-empty-set'; @@ -14,11 +12,12 @@ if (env('CONSUL_NSPACES_ENABLED')) { } else { Namespace = () => ({}); } -// TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - store: service('store'), - requestForQuery: function(request, { dc, ns, index, role, policy }) { +// TODO: Update to use this.formatDatacenter() +export default class TokenAdapter extends Adapter { + @service('store') store; + + requestForQuery(request, { dc, ns, index, role, policy }) { return request` GET /v1/acl/tokens?${{ role, policy, dc }} @@ -27,8 +26,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForQueryRecord: function(request, { dc, ns, index, id }) { + } + + requestForQueryRecord(request, { dc, ns, index, id }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -40,8 +40,9 @@ export default Adapter.extend({ index, }} `; - }, - requestForCreateRecord: function(request, serialized, data) { + } + + requestForCreateRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), }; @@ -58,11 +59,12 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForUpdateRecord: function(request, serialized, data) { - // TODO: here we check data['Rules'] not serialized['Rules'] - // data.Rules is not undefined, and serialized.Rules is not null - // revisit this at some point we should probably use serialized here + } + + requestForUpdateRecord(request, serialized, data) { + // TODO: here we check data['Rules'] not serialized['Rules'] data.Rules is + // not undefined, and serialized.Rules is not null revisit this at some + // point we should probably use serialized here // If a token has Rules, use the old API if (typeof data['Rules'] !== 'undefined') { @@ -90,8 +92,9 @@ export default Adapter.extend({ ...Namespace(serialized.Namespace), }} `; - }, - requestForDeleteRecord: function(request, serialized, data) { + } + + requestForDeleteRecord(request, serialized, data) { const params = { ...this.formatDatacenter(data[DATACENTER_KEY]), ...this.formatNspace(data[NSPACE_KEY]), @@ -99,8 +102,9 @@ export default Adapter.extend({ return request` DELETE /v1/acl/token/${data[SLUG_KEY]}?${params} `; - }, - requestForSelf: function(request, serialized, { dc, index, secret }) { + } + + requestForSelf(request, serialized, { dc, index, secret }) { // TODO: Change here and elsewhere to use Authorization Bearer Token // https://github.com/hashicorp/consul/pull/4502 return request` @@ -110,8 +114,9 @@ export default Adapter.extend({ ${{ index }} `; - }, - requestForCloneRecord: function(request, serialized, data) { + } + + requestForCloneRecord(request, serialized, data) { // this uses snapshots const id = data[SLUG_KEY]; if (typeof id === 'undefined') { @@ -124,12 +129,13 @@ export default Adapter.extend({ return request` PUT /v1/acl/token/${id}/clone?${params} `; - }, - // TODO: self doesn't get passed a snapshot right now - // ideally it would just for consistency - // thing is its probably not the same shape as a 'Token', - // plus we can't create Snapshots as they are private, see services/store.js - self: function(store, type, id, unserialized) { + } + + // TODO: self doesn't get passed a snapshot right now ideally it would just + // for consistency thing is its probably not the same shape as a + // 'Token', plus we can't create Snapshots as they are private, see + // services/store.js + self(store, type, id, unserialized) { return this.rpc( function(adapter, request, serialized, data) { return adapter.requestForSelf(request, serialized, data); @@ -140,8 +146,9 @@ export default Adapter.extend({ unserialized, type.modelName ); - }, - clone: function(store, type, id, snapshot) { + } + + clone(store, type, id, snapshot) { return this.rpc( function(adapter, request, serialized, data) { return adapter.requestForCloneRecord(request, serialized, data); @@ -159,5 +166,5 @@ export default Adapter.extend({ snapshot, type.modelName ); - }, -}); + } +} diff --git a/ui-v2/app/adapters/topology.js b/ui/packages/consul-ui/app/adapters/topology.js similarity index 73% rename from ui-v2/app/adapters/topology.js rename to ui/packages/consul-ui/app/adapters/topology.js index f5e3d3245..41ec913a7 100644 --- a/ui-v2/app/adapters/topology.js +++ b/ui/packages/consul-ui/app/adapters/topology.js @@ -1,7 +1,8 @@ import Adapter from './application'; + // TODO: Update to use this.formatDatacenter() -export default Adapter.extend({ - requestForQueryRecord: function(request, { dc, ns, index, id, uri, kind }) { +export default class TopologyAdapter extends Adapter { + requestForQueryRecord(request, { dc, ns, index, id, uri, kind }) { if (typeof id === 'undefined') { throw new Error('You must specify an id'); } @@ -14,5 +15,5 @@ export default Adapter.extend({ index, }} `; - }, -}); + } +} diff --git a/ui-v2/app/app.js b/ui/packages/consul-ui/app/app.js similarity index 100% rename from ui-v2/app/app.js rename to ui/packages/consul-ui/app/app.js diff --git a/ui-v2/app/components/form-component/index.hbs b/ui/packages/consul-ui/app/components/anonymous/index.hbs similarity index 100% rename from ui-v2/app/components/form-component/index.hbs rename to ui/packages/consul-ui/app/components/anonymous/index.hbs diff --git a/ui-v2/app/components/app-error/index.js b/ui/packages/consul-ui/app/components/anonymous/index.js similarity index 100% rename from ui-v2/app/components/app-error/index.js rename to ui/packages/consul-ui/app/components/anonymous/index.js diff --git a/ui/packages/consul-ui/app/components/app-error/README.stories.mdx b/ui/packages/consul-ui/app/components/app-error/README.stories.mdx new file mode 100644 index 000000000..4eb7063d4 --- /dev/null +++ b/ui/packages/consul-ui/app/components/app-error/README.stories.mdx @@ -0,0 +1,30 @@ +import { Meta, Story, Canvas } from '@storybook/addon-docs/blocks'; +import { hbs } from 'ember-cli-htmlbars'; + + + +# AppError + + + {(args) => ({ + template: hbs``, + context: args + })} + + + diff --git a/ui/packages/consul-ui/app/components/app-error/index.hbs b/ui/packages/consul-ui/app/components/app-error/index.hbs new file mode 100644 index 000000000..0b96fa2d4 --- /dev/null +++ b/ui/packages/consul-ui/app/components/app-error/index.hbs @@ -0,0 +1,10 @@ + + +

+ Error {{@error.status}} +

+
+ + + +
diff --git a/ui-v2/app/components/app-view/index.hbs b/ui/packages/consul-ui/app/components/app-view/index.hbs similarity index 100% rename from ui-v2/app/components/app-view/index.hbs rename to ui/packages/consul-ui/app/components/app-view/index.hbs diff --git a/ui-v2/app/components/app-view/index.js b/ui/packages/consul-ui/app/components/app-view/index.js similarity index 100% rename from ui-v2/app/components/app-view/index.js rename to ui/packages/consul-ui/app/components/app-view/index.js diff --git a/ui-v2/app/components/aria-menu/index.hbs b/ui/packages/consul-ui/app/components/aria-menu/index.hbs similarity index 100% rename from ui-v2/app/components/aria-menu/index.hbs rename to ui/packages/consul-ui/app/components/aria-menu/index.hbs diff --git a/ui-v2/app/components/aria-menu/index.js b/ui/packages/consul-ui/app/components/aria-menu/index.js similarity index 100% rename from ui-v2/app/components/aria-menu/index.js rename to ui/packages/consul-ui/app/components/aria-menu/index.js diff --git a/ui-v2/app/components/auth-dialog/README.mdx b/ui/packages/consul-ui/app/components/auth-dialog/README.mdx similarity index 100% rename from ui-v2/app/components/auth-dialog/README.mdx rename to ui/packages/consul-ui/app/components/auth-dialog/README.mdx diff --git a/ui-v2/app/components/auth-dialog/chart.xstate.js b/ui/packages/consul-ui/app/components/auth-dialog/chart.xstate.js similarity index 100% rename from ui-v2/app/components/auth-dialog/chart.xstate.js rename to ui/packages/consul-ui/app/components/auth-dialog/chart.xstate.js diff --git a/ui-v2/app/components/auth-dialog/index.hbs b/ui/packages/consul-ui/app/components/auth-dialog/index.hbs similarity index 100% rename from ui-v2/app/components/auth-dialog/index.hbs rename to ui/packages/consul-ui/app/components/auth-dialog/index.hbs diff --git a/ui-v2/app/components/auth-dialog/index.js b/ui/packages/consul-ui/app/components/auth-dialog/index.js similarity index 100% rename from ui-v2/app/components/auth-dialog/index.js rename to ui/packages/consul-ui/app/components/auth-dialog/index.js diff --git a/ui-v2/app/components/auth-form/README.mdx b/ui/packages/consul-ui/app/components/auth-form/README.mdx similarity index 100% rename from ui-v2/app/components/auth-form/README.mdx rename to ui/packages/consul-ui/app/components/auth-form/README.mdx diff --git a/ui-v2/app/components/auth-form/chart.xstate.js b/ui/packages/consul-ui/app/components/auth-form/chart.xstate.js similarity index 100% rename from ui-v2/app/components/auth-form/chart.xstate.js rename to ui/packages/consul-ui/app/components/auth-form/chart.xstate.js diff --git a/ui-v2/app/components/auth-form/index.hbs b/ui/packages/consul-ui/app/components/auth-form/index.hbs similarity index 65% rename from ui-v2/app/components/auth-form/index.hbs rename to ui/packages/consul-ui/app/components/auth-form/index.hbs index e83e3f05c..9b47405fd 100644 --- a/ui-v2/app/components/auth-form/index.hbs +++ b/ui/packages/consul-ui/app/components/auth-form/index.hbs @@ -9,31 +9,38 @@
{{#if error.status}} - + + +

+ {{#if value.Name}} + {{#if (eq error.status '403')}} + Consul login failed
+ We received a token from your OIDC provider but could not log in to Consul with it. + {{else if (eq error.status '401')}} + Could not log in to provider
+ The OIDC provider has rejected this access token. Please have an administrator check your auth method configuration. + {{else if (eq error.status '499')}} + SSO log in window closed
+ The OIDC provider window was closed. Please try again. + {{else}} + Error
+ {{error.detail}} + {{/if}} + {{else}} + {{#if (eq error.status '403')}} + Invalid token
+ The token entered does not exist. Please enter a valid token to log in. + {{else}} + Error
+ {{error.detail}} + {{/if}} + {{/if}} +

+
+
{{/if}}
diff --git a/ui-v2/app/components/auth-form/index.js b/ui/packages/consul-ui/app/components/auth-form/index.js similarity index 100% rename from ui-v2/app/components/auth-form/index.js rename to ui/packages/consul-ui/app/components/auth-form/index.js diff --git a/ui-v2/app/components/auth-form/pageobject.js b/ui/packages/consul-ui/app/components/auth-form/pageobject.js similarity index 100% rename from ui-v2/app/components/auth-form/pageobject.js rename to ui/packages/consul-ui/app/components/auth-form/pageobject.js diff --git a/ui-v2/app/components/auth-profile/README.mdx b/ui/packages/consul-ui/app/components/auth-profile/README.mdx similarity index 100% rename from ui-v2/app/components/auth-profile/README.mdx rename to ui/packages/consul-ui/app/components/auth-profile/README.mdx diff --git a/ui-v2/app/components/auth-profile/index.hbs b/ui/packages/consul-ui/app/components/auth-profile/index.hbs similarity index 100% rename from ui-v2/app/components/auth-profile/index.hbs rename to ui/packages/consul-ui/app/components/auth-profile/index.hbs diff --git a/ui-v2/app/components/auth-profile/index.js b/ui/packages/consul-ui/app/components/auth-profile/index.js similarity index 100% rename from ui-v2/app/components/auth-profile/index.js rename to ui/packages/consul-ui/app/components/auth-profile/index.js diff --git a/ui-v2/app/components/changeable-set/index.hbs b/ui/packages/consul-ui/app/components/changeable-set/index.hbs similarity index 100% rename from ui-v2/app/components/changeable-set/index.hbs rename to ui/packages/consul-ui/app/components/changeable-set/index.hbs diff --git a/ui-v2/app/components/changeable-set/index.js b/ui/packages/consul-ui/app/components/changeable-set/index.js similarity index 100% rename from ui-v2/app/components/changeable-set/index.js rename to ui/packages/consul-ui/app/components/changeable-set/index.js diff --git a/ui-v2/app/components/child-selector/index.hbs b/ui/packages/consul-ui/app/components/child-selector/index.hbs similarity index 93% rename from ui-v2/app/components/child-selector/index.hbs rename to ui/packages/consul-ui/app/components/child-selector/index.hbs index 1b13235f0..801005122 100644 --- a/ui-v2/app/components/child-selector/index.hbs +++ b/ui/packages/consul-ui/app/components/child-selector/index.hbs @@ -1,4 +1,6 @@ -
+
{{yield}} {{yield}}
+ + diff --git a/ui/packages/consul-ui/app/components/topology-metrics/popover/index.js b/ui/packages/consul-ui/app/components/topology-metrics/popover/index.js new file mode 100644 index 000000000..d84750af5 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/popover/index.js @@ -0,0 +1,14 @@ +import Component from '@glimmer/component'; +import { action } from '@ember/object'; +import { tracked } from '@glimmer/tracking'; + +export default class TopoloyMetricsButton extends Component { + // =attributes + @tracked showToggleablePopover = false; + + // =actions + @action + togglePopover() { + this.showToggleablePopover = !this.showToggleablePopover; + } +} diff --git a/ui/packages/consul-ui/app/components/topology-metrics/popover/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/popover/index.scss new file mode 100644 index 000000000..daa3282b6 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/popover/index.scss @@ -0,0 +1,87 @@ +.topology-metrics-popover { + .deny-target, + .L7-target { + transform: translate(-50%,-50%); + position: absolute; + background-color: $white; + padding: 1px 2px; + } + .deny-target:hover, + .L7-target:hover { + cursor:pointer; + } + .deny-target:active, + .deny-target:focus, + .L7-target:active, + .L7-target:focus { + outline: none; + } + .deny-target::before { + @extend %with-cancel-square-fill-color-mask, %as-pseudo; + background-color: $red-500; + } + .L7-target::before { + @extend %with-layers-mask, %as-pseudo; + background-color: $gray-300; + } + .body { + padding: 12px 12px 16px 25px; + h3 { + font-size: 14px; + padding-bottom: 4px; + } + p { + font-size: 12px; + } + } + .actions { + border-top: 1px solid $gray-300; + width: 100%; + display: inline-flex; + a, + button { + width: 50%; + height: 36px; + padding: 10px 0; + font-weight: $typo-weight-medium; + text-align: center; + line-height: normal; + } + button:first-child { + color: $blue-500; + } + button:nth-child(2) { + color: $gray-800; + } + button:hover { + cursor: pointer; + } + } + .ember-popover { + padding: 0; + width: 200px; + z-index: 3 !important; + } +} +.L7-popover { + .body { + background-color: $white; + } + h3 { + margin-left: -20px; + color: $blue-500; + } + h3::before { + @extend %with-info-circle-fill-mask, %as-pseudo; + color: $blue-500; + margin-right: 4px; + } +} +.deny-popover { + .body { + background-color: $white; + } + h3 { + color: $red-800; + } +} \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/topology-metrics/series/index.hbs b/ui/packages/consul-ui/app/components/topology-metrics/series/index.hbs new file mode 100644 index 000000000..fda4fdeef --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/series/index.hbs @@ -0,0 +1,62 @@ +{{#unless @noMetricsReason}} + +{{/unless}} + +{{on-window 'resize' (action 'redraw')}} + +{{#if (not empty)}} + {{#if data.labels}} + Key + {{/if}} +{{/if}} + +
+
+
Timestamp
+
+ {{#if empty}} + + {{/if}} + +
+ +{{#if shouldShowKey}} + + +

Metrics Key

+
+ +
+

This key describes the metrics corresponding to the graph tooltip labels in more detail.

+
+ {{#each-in data.labels as |label desc| }} +
{{label}}
+
{{desc}}
+ {{/each-in}} +
+ {{#unless data.labels}} + No metrics loaded. + {{/unless}} +
+
+ + + +
+{{/if}} \ No newline at end of file diff --git a/ui-v2/app/components/topology-metrics/series/index.js b/ui/packages/consul-ui/app/components/topology-metrics/series/index.js similarity index 73% rename from ui-v2/app/components/topology-metrics/series/index.js rename to ui/packages/consul-ui/app/components/topology-metrics/series/index.js index 7558ff565..238e0d665 100644 --- a/ui-v2/app/components/topology-metrics/series/index.js +++ b/ui/packages/consul-ui/app/components/topology-metrics/series/index.js @@ -7,6 +7,7 @@ import { scaleLinear, scaleTime, scaleOrdinal } from 'd3-scale'; import { schemeTableau10 } from 'd3-scale-chromatic'; import { area, stack, stackOrderReverse } from 'd3-shape'; import { max, extent, bisector } from 'd3-array'; +import { set } from '@ember/object'; dayjs.extend(Calendar); @@ -21,20 +22,21 @@ function niceTimeWithSeconds(d) { export default Component.extend({ data: null, - + empty: false, actions: { redraw: function(evt) { this.drawGraphs(); }, change: function(evt) { - this.data = evt.data; - this.element.querySelector('.sparkline-loader').style.display = 'none'; + this.set('data', evt.data.series); this.drawGraphs(); + this.rerender(); }, }, drawGraphs: function() { - if (!this.data.series) { + if (!this.data) { + set(this, 'empty', true); return; } @@ -50,47 +52,41 @@ export default Component.extend({ // To be safe, filter any series that actually have no data points. This can // happen thanks to our current provider contract allowing empty arrays for // series data if there is no value. - // - // TODO(banks): switch series provider data to be a single array with series - // values as properties as we need below to enforce sensible alignment of - // timestamps and explicit summing expectations. - let series = ((this.data || {}).series || []).filter(s => s.data.length > 0); + let maybeData = this.data || {}; + let series = maybeData.data || []; + let labels = maybeData.labels || {}; + let unitSuffix = maybeData.unitSuffix || ''; + let keys = Object.keys(labels).filter(l => l != 'Total'); - if (series.length == 0) { + if (series.length == 0 || keys.length == 0) { // Put the graph in an error state that might get fixed if metrics show up // on next poll. - let loader = this.element.querySelector('.sparkline-loader'); - loader.innerHTML = 'No Metrics Available'; - loader.style.display = 'block'; + set(this, 'empty', true); return; - } - - // Fill the timestamps for x axis. - let data = series[0].data.map(d => { - return { time: d[0] }; - }); - let keys = []; - // Initialize zeros - let summed = this.data.series[0].data.map(d => 0); - - for (var i = 0; i < series.length; i++) { - let s = series[i]; - // Attach the value as a new field to the data grid. - s.data.map((d, idx) => { - data[idx][s.label] = d[1]; - summed[idx] += d[1]; - }); - keys.push(s.label); + } else { + set(this, 'empty', false); } let st = stack() .keys(keys) .order(stackOrderReverse); - let stackData = st(data); + let stackData = st(series); + + // Sum all of the values for each point to get max range. Technically + // stackData contains this but I didn't find reliable documentation on + // whether we can rely on the highest stacked area to always be first/last + // in array etc. so this is simpler. + let summed = series.map(d => { + let sum = 0; + keys.forEach(l => { + sum = sum + d[l]; + }); + return sum; + }); let x = scaleTime() - .domain(extent(data, d => d.time)) + .domain(extent(series, d => d.time)) .range([0, w]); let y = scaleLinear() @@ -126,6 +122,7 @@ export default Component.extend({ let tooltip = select(this.element.querySelector('.tooltip')); tooltip.selectAll('.sparkline-tt-legend').remove(); + tooltip.selectAll('.sparkline-tt-sum').remove(); for (var k of keys) { let legend = tooltip.append('div').attr('class', 'sparkline-tt-legend'); @@ -137,13 +134,24 @@ export default Component.extend({ legend .append('span') - .text(k + ': ') + .text(k) .append('span') .attr('class', 'sparkline-tt-legend-value'); } let tipVals = tooltip.selectAll('.sparkline-tt-legend-value'); + // Add a label for the summed value + if (keys.length > 1) { + tooltip + .append('div') + .attr('class', 'sparkline-tt-sum') + .append('span') + .text('Total') + .append('span') + .attr('class', 'sparkline-tt-sum-value'); + } + let self = this; svg .on('mouseover', function(e) { @@ -152,10 +160,10 @@ export default Component.extend({ // We update here since we might redraw the graph with user's cursor // stationary over it. If that happens mouseover fires but not // mousemove but the tooltip and cursor are wrong (based on old data). - self.updateTooltip(e, data, stackData, keys, x, tooltip, tipVals, cursor); + self.updateTooltip(e, series, stackData, summed, unitSuffix, x, tooltip, tipVals, cursor); }) - .on('mousemove', function(e, d, i) { - self.updateTooltip(e, data, stackData, keys, x, tooltip, tipVals, cursor); + .on('mousemove', function(e) { + self.updateTooltip(e, series, stackData, summed, unitSuffix, x, tooltip, tipVals, cursor); }) .on('mouseout', function(e) { tooltip.style('visibility', 'hidden'); @@ -168,7 +176,7 @@ export default Component.extend({ this.svg.on('mouseover mousemove mouseout', null); } }, - updateTooltip: function(e, data, stackData, keys, x, tooltip, tipVals, cursor) { + updateTooltip: function(e, series, stackData, summed, unitSuffix, x, tooltip, tipVals, cursor) { let [mouseX] = pointer(e); cursor.attr('x', mouseX); @@ -176,7 +184,7 @@ export default Component.extend({ var bisectTime = bisector(function(d) { return d.time; }).left; - let tipIdx = bisectTime(data, mouseTime); + let tipIdx = bisectTime(series, mouseTime); tooltip // 22 px is the correction to align the arrow on the tool tip with @@ -185,23 +193,15 @@ export default Component.extend({ .select('.sparkline-time') .text(niceTimeWithSeconds(mouseTime)); + // Get the summed value - that's the one of the top most stack. + tooltip.select('.sparkline-tt-sum-value').text(`${shortNumStr(summed[tipIdx])}${unitSuffix}`); + tipVals.nodes().forEach((n, i) => { let val = stackData[i][tipIdx][1] - stackData[i][tipIdx][0]; - select(n).text(this.formatTooltip(keys[i], val)); + select(n).text(`${shortNumStr(val)}${unitSuffix}`); }); cursor.attr('x', mouseX); }, - - formatTooltip: function(label, val) { - switch (label) { - case 'Data rate received': - // fallthrough - case 'Data rate transmitted': - return dataRateStr(val); - default: - return shortNumStr(val); - } - }, }); // Duplicated in vendor/metrics-providers/prometheus.js since we want that to @@ -228,7 +228,3 @@ function shortNumStr(n) { if (n >= 1e9 && n < 1e12) return +(n / 1e9).toPrecision(3) + 'g'; if (n >= 1e12) return +(n / 1e12).toFixed(0) + 't'; } - -function dataRateStr(n) { - return shortNumStr(n) + 'bps'; -} diff --git a/ui-v2/app/components/topology-metrics/series/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/series/index.scss similarity index 100% rename from ui-v2/app/components/topology-metrics/series/index.scss rename to ui/packages/consul-ui/app/components/topology-metrics/series/index.scss diff --git a/ui/packages/consul-ui/app/components/topology-metrics/series/layout.scss b/ui/packages/consul-ui/app/components/topology-metrics/series/layout.scss new file mode 100644 index 000000000..c0a763095 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/series/layout.scss @@ -0,0 +1,66 @@ +#metrics-container div .sparkline-wrapper { + position: relative; + width: 100%; + padding: 0; + margin: 0; + height: 70px; + + svg.sparkline { + width: 100%; + height: 70px; + padding: 0; + margin: 0; + } + + .tooltip { + visibility: hidden; + position: absolute; + z-index: 10; + bottom: 78px; + width: 217px; + } + + .sparkline-tt-legend-color { + display: inline-block; + } + + // extra padding for the status sub-component that's not needed for the stats + // status + .topology-metrics-error, + .topology-metrics-loader { + padding-top: 15px; + } +} + +// Key modal +.sparkline-key { + .sparkline-key-content { + width: 500px; + min-height: 100px; + + dl { + padding: 10px 0 0 0; + } + dt { + width: 125px; + float: left; + } + dd { + margin: 0 0 12px 135px; + } + } +} + +.sparkline-key-link { + visibility: hidden; + float: right; + // TODO: this is a massive hack but we want it to be actually outside of the + // bounding box of this component. We could move it into the parent component + // but it's pretty tied up to the state - should only show if we have metrics + // loaded etc. I expect there is a cleaner way to refactor this though. + margin-top: -35px; + margin-right: 12px; +} +#metrics-container:hover .sparkline-key-link { + visibility: visible; +} \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/topology-metrics/series/skin.scss b/ui/packages/consul-ui/app/components/topology-metrics/series/skin.scss new file mode 100644 index 000000000..104539e72 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/series/skin.scss @@ -0,0 +1,102 @@ +#metrics-container .sparkline-wrapper { + svg path { + stroke-width: 0; + } + + .tooltip { + padding: 0 0 10px; + font-size: 0.875em; + line-height: 1.5em; + font-weight: normal; + border: 1px solid $gray-300; + background: #fff; + border-radius: 2px; + box-sizing: border-box; + box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.05), 0px 4px 4px rgba(0, 0, 0, 0.1); + + .sparkline-time { + padding: 8px 10px; + font-weight: bold; + font-size: 14px; + color: #000; + border-bottom: 1px solid $gray-200; + margin-bottom: 4px; + text-align: center; + } + + .sparkline-tt-legend, + .sparkline-tt-sum { + border: 0; + padding: 3px 10px 0 10px; + } + + .sparkline-tt-sum { + border-top: 1px solid $gray-200; + margin-top: 4px; + padding: 8px 10px 0 10px; + } + + .sparkline-tt-legend-color { + width: 12px; + height: 12px; + border-radius: 2px; + margin: 0 5px 0 0; + padding: 0; + } + + .sparkline-tt-legend-value, + .sparkline-tt-sum-value { + float: right; + } + } + + div.tooltip:before{ + content:''; + display:block; + position: absolute; + width: 12px; + height: 12px; + left: 15px; + bottom: -7px; + border: 1px solid $gray-300; + border-top: 0; + border-left: 0; + background: #fff; + transform: rotate(45deg); + } +} + +// Key modal +.sparkline-key { + h3::before { + @extend %with-info-circle-fill-mask, %as-pseudo; + margin: 2px 3px 0 0; + font-size: 14px; + } + + h3 { + color: $gray-900; + font-size: 16px; + } + + .sparkline-key-content { + dt { + font-weight: 600; + } + dd { + color: $gray-500; + } + } +} + +.sparkline-key-link { + color: $gray-500; +} +.sparkline-key-link:hover { + color: $blue-500; +} +#metrics-container:hover .sparkline-key-link::before { + @extend %with-info-circle-fill-mask, %as-pseudo; + margin: 1px 3px 0 0; + font-size: 12px; +} \ No newline at end of file diff --git a/ui-v2/app/components/topology-metrics/skin.scss b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss similarity index 86% rename from ui-v2/app/components/topology-metrics/skin.scss rename to ui/packages/consul-ui/app/components/topology-metrics/skin.scss index 2fb25f5fc..5a1372c4a 100644 --- a/ui-v2/app/components/topology-metrics/skin.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/skin.scss @@ -82,7 +82,7 @@ .metrics-link::before { @extend %with-exit-mask, %as-pseudo; } - .settings-link::before { + .config-link::before { @extend %with-docs-mask, %as-pseudo; } } @@ -123,22 +123,3 @@ stroke-linejoin: round; } } - - -// Icon on SVG Lines -#downstream-lines, -#upstream-lines { - .deny::before { - @extend %with-cancel-square-fill-color-mask, %as-pseudo; - background-color: $red-500; - } - .L7::before { - @extend %with-layers-mask, %as-pseudo; - background-color: $gray-300; - } - span { - transform: translate(-50%,-50%); - position: absolute; - background-color: $white; - } -} \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/topology-metrics/stats/index.hbs b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.hbs new file mode 100644 index 000000000..c36d14112 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.hbs @@ -0,0 +1,30 @@ +{{#unless @noMetricsReason}} + +{{/unless}} + +
+ {{#if hasLoaded }} + {{#each stats as |stat|}} +
+
+ {{stat.value}} +
+
+ {{stat.label}} +
+ {{{stat.desc}}} +
+ {{else}} + No Metrics Available + {{/each}} + {{else}} + + {{/if}} +
\ No newline at end of file diff --git a/ui-v2/app/components/topology-metrics/stats/index.js b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.js similarity index 74% rename from ui-v2/app/components/topology-metrics/stats/index.js rename to ui/packages/consul-ui/app/components/topology-metrics/stats/index.js index c5f9344ad..cacaf6001 100644 --- a/ui-v2/app/components/topology-metrics/stats/index.js +++ b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.js @@ -14,7 +14,12 @@ export default class TopologyMetricsStats extends Component { } else { // For up/downstreams we need to pull out the stats for the service we // represent. - this.stats = event.data.stats[this.args.item]; + let nspace = this.args.nspace || ''; + if (nspace.length === 0) { + nspace = 'default'; + } + let entity = `${this.args.item}.${nspace}.${this.args.dc}`; + this.stats = event.data.stats[entity]; } // Limit to 4 metrics for now. this.stats = (this.stats || []).slice(0, 4); diff --git a/ui-v2/app/components/topology-metrics/stats/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.scss similarity index 50% rename from ui-v2/app/components/topology-metrics/stats/index.scss rename to ui/packages/consul-ui/app/components/topology-metrics/stats/index.scss index e2bdf6702..0a0502f93 100644 --- a/ui-v2/app/components/topology-metrics/stats/index.scss +++ b/ui/packages/consul-ui/app/components/topology-metrics/stats/index.scss @@ -1,15 +1,13 @@ .stats { - padding: 12px; + padding: 12px 12px 0 12px; display: flex; flex-flow: row wrap; justify-content: space-between; align-items: stretch; width: 100%; - height: 46px; - overflow: hidden; dl { display:flex; - margin-bottom: 50px; // pushes wrapped metrics well out of the bounding box to hide them. + padding-bottom: 12px; } dt { margin-right: 5px; @@ -19,10 +17,6 @@ color: $gray-400 !important; } span { - margin: 0 auto !important; - color: $gray-500; - } - span.loader::after { - @extend %with-loading-icon, %as-pseudo; + padding-bottom: 12px; } } \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/topology-metrics/status/index.hbs b/ui/packages/consul-ui/app/components/topology-metrics/status/index.hbs new file mode 100644 index 000000000..735749b59 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/status/index.hbs @@ -0,0 +1,12 @@ +{{#if @noMetricsReason}} + + Unable to load metrics + + {{@noMetricsReason}} + + +{{else if @error}} + Unable to load metrics +{{else}} + Loading Metrics +{{/if}} \ No newline at end of file diff --git a/ui/packages/consul-ui/app/components/topology-metrics/status/index.scss b/ui/packages/consul-ui/app/components/topology-metrics/status/index.scss new file mode 100644 index 000000000..fb4cefb89 --- /dev/null +++ b/ui/packages/consul-ui/app/components/topology-metrics/status/index.scss @@ -0,0 +1,18 @@ +.topology-metrics-error, +.topology-metrics-loader { + font-weight: normal; + font-size: 0.875rem; + color: $gray-500; + text-align: center; + margin: 0 auto !important; + display: block; + + span::before { + @extend %with-info-circle-outline-mask, %as-pseudo; + background-color: $gray-500; + } +} + +span.topology-metrics-loader::after { + @extend %with-loading-icon, %as-pseudo; +} \ No newline at end of file diff --git a/ui-v2/app/components/topology-metrics/up-lines/index.hbs b/ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.hbs similarity index 88% rename from ui-v2/app/components/topology-metrics/up-lines/index.hbs rename to ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.hbs index 4987ce821..41bbfacd9 100644 --- a/ui-v2/app/components/topology-metrics/up-lines/index.hbs +++ b/ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.hbs @@ -55,7 +55,10 @@ {{/if}} - +{{#each @items as |item|}} + +{{/each}} diff --git a/ui-v2/app/components/topology-metrics/up-lines/index.js b/ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.js similarity index 90% rename from ui-v2/app/components/topology-metrics/up-lines/index.js rename to ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.js index 81544cfb8..3c622e549 100644 --- a/ui-v2/app/components/topology-metrics/up-lines/index.js +++ b/ui/packages/consul-ui/app/components/topology-metrics/up-lines/index.js @@ -2,7 +2,7 @@ import Component from '@glimmer/component'; import { tracked } from '@glimmer/tracking'; import { action } from '@ember/object'; -export default class TopoloyMetricsUpLines extends Component { +export default class TopologyMetricsUpLines extends Component { @tracked iconPositions; @action diff --git a/ui/packages/consul-ui/app/controllers/application.js b/ui/packages/consul-ui/app/controllers/application.js new file mode 100644 index 000000000..e192b4dda --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/application.js @@ -0,0 +1,82 @@ +import { inject as service } from '@ember/service'; +import Controller from '@ember/controller'; +import { getOwner } from '@ember/application'; +import { get, action } from '@ember/object'; +import transitionable from 'consul-ui/utils/routing/transitionable'; + +export default class ApplicationController extends Controller { + @service('router') + router; + + @service('store') + store; + + @service('feedback') + feedback; + + // TODO: We currently do this in the controller instead of the router + // as the nspace and dc variables aren't available directly on the Route + // look to see if we can move this up there so we can empty the Controller + // out again + @action + reauthorize(e) { + // TODO: For the moment e isn't a real event + // it has data which is potentially the token + // and type which is the logout/authorize/use action + // used for the feedback service. + this.feedback.execute( + () => { + // TODO: Currently we clear cache from the ember-data store + // ideally this would be a static method of the abstract Repository class + // once we move to proper classes for services take another look at this. + this.store.clear(); + // + const params = {}; + if (e.data) { + const token = e.data; + // TODO: Do I actually need to check to see if nspaces are enabled here? + if (typeof this.nspace !== 'undefined') { + const nspace = get(token, 'Namespace') || this.nspace.Name; + // you potentially have a new namespace + // if you do redirect to it + if (nspace !== this.nspace.Name) { + params.nspace = `~${nspace}`; + } + } + } + const container = getOwner(this); + const routeName = this.router.currentRoute.name; + const route = container.lookup(`route:${routeName}`); + // Refresh the application route as everything including the main nav needs refreshing + return container + .lookup('route:application') + .refresh() + .promise.catch(function(e) { + // passthrough + // if you are on an error page a refresh of the application route will reject + // thats ok as we then transition to the actual route you were trying + // to get to originally anyway + }) + .then(res => { + // Use transitionable if we need to change a section of the URL + // or routeName and currentRouteName aren't equal (i.e. error page) + if ( + routeName !== this.router.currentRouteName || + typeof params.nspace !== 'undefined' + ) { + return route.transitionTo( + ...transitionable(this.router.currentRoute, params, container) + ); + } else { + return res; + } + }); + }, + e.type, + function(type, e) { + return type; + }, + {} + ); + } +} diff --git a/ui/packages/consul-ui/app/controllers/dc.js b/ui/packages/consul-ui/app/controllers/dc.js new file mode 100644 index 000000000..7abcab1c7 --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc.js @@ -0,0 +1,3 @@ +import Controller from '@ember/controller'; + +export default class DcController extends Controller {} diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/create.js b/ui/packages/consul-ui/app/controllers/dc/acls/create.js new file mode 100644 index 000000000..f4c701cbb --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/create.js @@ -0,0 +1,2 @@ +import Controller from './edit'; +export default class CreateController extends Controller {} diff --git a/ui-v2/app/controllers/dc/acls/edit.js b/ui/packages/consul-ui/app/controllers/dc/acls/edit.js similarity index 100% rename from ui-v2/app/controllers/dc/acls/edit.js rename to ui/packages/consul-ui/app/controllers/dc/acls/edit.js diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/index.js b/ui/packages/consul-ui/app/controllers/dc/acls/index.js new file mode 100644 index 000000000..71d59e974 --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/index.js @@ -0,0 +1,18 @@ +import { action } from '@ember/object'; +import Controller from '@ember/controller'; +export default class IndexController extends Controller { + queryParams = { + filterBy: { + as: 'type', + }, + search: { + as: 'filter', + replace: true, + }, + }; + + @action + sendClone(item) { + this.send('clone', item); + } +} diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/policies/create.js b/ui/packages/consul-ui/app/controllers/dc/acls/policies/create.js new file mode 100644 index 000000000..f4c701cbb --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/policies/create.js @@ -0,0 +1,2 @@ +import Controller from './edit'; +export default class CreateController extends Controller {} diff --git a/ui-v2/app/controllers/dc/acls/policies/edit.js b/ui/packages/consul-ui/app/controllers/dc/acls/policies/edit.js similarity index 69% rename from ui-v2/app/controllers/dc/acls/policies/edit.js rename to ui/packages/consul-ui/app/controllers/dc/acls/policies/edit.js index 70dd907c9..6288962de 100644 --- a/ui-v2/app/controllers/dc/acls/policies/edit.js +++ b/ui/packages/consul-ui/app/controllers/dc/acls/policies/edit.js @@ -1,14 +1,17 @@ -import Controller from '@ember/controller'; import { inject as service } from '@ember/service'; -export default Controller.extend({ - builder: service('form'), - init: function() { - this._super(...arguments); +import Controller from '@ember/controller'; +export default class EditController extends Controller { + @service('form') + builder; + + init() { + super.init(...arguments); this.form = this.builder.form('policy'); - }, - setProperties: function(model) { + } + + setProperties(model) { // essentially this replaces the data with changesets - this._super( + super.setProperties( Object.keys(model).reduce((prev, key, i) => { switch (key) { case 'item': @@ -18,5 +21,5 @@ export default Controller.extend({ return prev; }, model) ); - }, -}); + } +} diff --git a/ui-v2/app/controllers/dc/acls/policies/index.js b/ui/packages/consul-ui/app/controllers/dc/acls/policies/index.js similarity index 57% rename from ui-v2/app/controllers/dc/acls/policies/index.js rename to ui/packages/consul-ui/app/controllers/dc/acls/policies/index.js index 54f6cac2d..58e6fef2b 100644 --- a/ui-v2/app/controllers/dc/acls/policies/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/acls/policies/index.js @@ -1,12 +1,13 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { + +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', dc: 'dc', - type: 'type', + kind: 'kind', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/roles/create.js b/ui/packages/consul-ui/app/controllers/dc/acls/roles/create.js new file mode 100644 index 000000000..f4c701cbb --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/roles/create.js @@ -0,0 +1,2 @@ +import Controller from './edit'; +export default class CreateController extends Controller {} diff --git a/ui-v2/app/controllers/dc/acls/roles/edit.js b/ui/packages/consul-ui/app/controllers/dc/acls/roles/edit.js similarity index 69% rename from ui-v2/app/controllers/dc/acls/roles/edit.js rename to ui/packages/consul-ui/app/controllers/dc/acls/roles/edit.js index c50e088fb..17d870ddc 100644 --- a/ui-v2/app/controllers/dc/acls/roles/edit.js +++ b/ui/packages/consul-ui/app/controllers/dc/acls/roles/edit.js @@ -1,14 +1,17 @@ -import Controller from '@ember/controller'; import { inject as service } from '@ember/service'; -export default Controller.extend({ - builder: service('form'), - init: function() { - this._super(...arguments); +import Controller from '@ember/controller'; +export default class EditController extends Controller { + @service('form') + builder; + + init() { + super.init(...arguments); this.form = this.builder.form('role'); - }, - setProperties: function(model) { + } + + setProperties(model) { // essentially this replaces the data with changesets - this._super( + super.setProperties( Object.keys(model).reduce((prev, key, i) => { switch (key) { case 'item': @@ -18,5 +21,5 @@ export default Controller.extend({ return prev; }, model) ); - }, -}); + } +} diff --git a/ui-v2/app/controllers/dc/services/show/intentions/index.js b/ui/packages/consul-ui/app/controllers/dc/acls/roles/index.js similarity index 60% rename from ui-v2/app/controllers/dc/services/show/intentions/index.js rename to ui/packages/consul-ui/app/controllers/dc/acls/roles/index.js index f99cde37f..9913cb826 100644 --- a/ui-v2/app/controllers/dc/services/show/intentions/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/acls/roles/index.js @@ -1,10 +1,10 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/tokens/create.js b/ui/packages/consul-ui/app/controllers/dc/acls/tokens/create.js new file mode 100644 index 000000000..f4c701cbb --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/tokens/create.js @@ -0,0 +1,2 @@ +import Controller from './edit'; +export default class CreateController extends Controller {} diff --git a/ui-v2/app/controllers/dc/acls/tokens/edit.js b/ui/packages/consul-ui/app/controllers/dc/acls/tokens/edit.js similarity index 100% rename from ui-v2/app/controllers/dc/acls/tokens/edit.js rename to ui/packages/consul-ui/app/controllers/dc/acls/tokens/edit.js diff --git a/ui/packages/consul-ui/app/controllers/dc/acls/tokens/index.js b/ui/packages/consul-ui/app/controllers/dc/acls/tokens/index.js new file mode 100644 index 000000000..e6dbcbeff --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/acls/tokens/index.js @@ -0,0 +1,12 @@ +import Controller from '@ember/controller'; + +export default class IndexController extends Controller { + queryParams = { + sortBy: 'sort', + kind: 'kind', + search: { + as: 'filter', + replace: true, + }, + }; +} diff --git a/ui-v2/app/controllers/dc/intentions/index.js b/ui/packages/consul-ui/app/controllers/dc/intentions/index.js similarity index 64% rename from ui-v2/app/controllers/dc/intentions/index.js rename to ui/packages/consul-ui/app/controllers/dc/intentions/index.js index c22bc54ce..bdee37254 100644 --- a/ui-v2/app/controllers/dc/intentions/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/intentions/index.js @@ -1,12 +1,12 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', access: 'access', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/acls/roles/index.js b/ui/packages/consul-ui/app/controllers/dc/kv/index.js similarity index 60% rename from ui-v2/app/controllers/dc/acls/roles/index.js rename to ui/packages/consul-ui/app/controllers/dc/kv/index.js index f99cde37f..9913cb826 100644 --- a/ui-v2/app/controllers/dc/acls/roles/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/kv/index.js @@ -1,10 +1,10 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/nodes/index.js b/ui/packages/consul-ui/app/controllers/dc/nodes/index.js similarity index 64% rename from ui-v2/app/controllers/dc/nodes/index.js rename to ui/packages/consul-ui/app/controllers/dc/nodes/index.js index b3f36efae..8fffd8d19 100644 --- a/ui-v2/app/controllers/dc/nodes/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/nodes/index.js @@ -1,12 +1,12 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', status: 'status', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/nodes/show/services.js b/ui/packages/consul-ui/app/controllers/dc/nodes/show/services.js similarity index 77% rename from ui-v2/app/controllers/dc/nodes/show/services.js rename to ui/packages/consul-ui/app/controllers/dc/nodes/show/services.js index c9199c3b4..0fb98b410 100644 --- a/ui-v2/app/controllers/dc/nodes/show/services.js +++ b/ui/packages/consul-ui/app/controllers/dc/nodes/show/services.js @@ -1,14 +1,16 @@ import Controller from '@ember/controller'; import { get, computed } from '@ember/object'; -export default Controller.extend({ - queryParams: { +export default class ServicesController extends Controller { + queryParams = { search: { as: 'filter', replace: true, }, - }, - checks: computed('item.Checks.[]', function() { + }; + + @computed('item.Checks.[]') + get checks() { const checks = {}; get(this, 'item.Checks') .filter(item => { @@ -22,5 +24,5 @@ export default Controller.extend({ }); return checks; - }), -}); + } +} diff --git a/ui/packages/consul-ui/app/controllers/dc/nspaces/create.js b/ui/packages/consul-ui/app/controllers/dc/nspaces/create.js new file mode 100644 index 000000000..f4c701cbb --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/nspaces/create.js @@ -0,0 +1,2 @@ +import Controller from './edit'; +export default class CreateController extends Controller {} diff --git a/ui-v2/app/controllers/dc/nspaces/edit.js b/ui/packages/consul-ui/app/controllers/dc/nspaces/edit.js similarity index 100% rename from ui-v2/app/controllers/dc/nspaces/edit.js rename to ui/packages/consul-ui/app/controllers/dc/nspaces/edit.js diff --git a/ui-v2/app/controllers/dc/nspaces/index.js b/ui/packages/consul-ui/app/controllers/dc/nspaces/index.js similarity index 56% rename from ui-v2/app/controllers/dc/nspaces/index.js rename to ui/packages/consul-ui/app/controllers/dc/nspaces/index.js index 422233d16..039254995 100644 --- a/ui-v2/app/controllers/dc/nspaces/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/nspaces/index.js @@ -1,10 +1,10 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', search: { as: 'filter', }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/services/index.js b/ui/packages/consul-ui/app/controllers/dc/services/index.js similarity index 69% rename from ui-v2/app/controllers/dc/services/index.js rename to ui/packages/consul-ui/app/controllers/dc/services/index.js index ad77eb593..be63cf699 100644 --- a/ui-v2/app/controllers/dc/services/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/services/index.js @@ -1,26 +1,31 @@ -import Controller from '@ember/controller'; import { computed } from '@ember/object'; +import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', status: 'status', source: 'source', - type: 'type', + kind: 'kind', search: { as: 'filter', + replace: true, }, - }, - services: computed('items.[]', function() { + }; + + @computed('items.[]') + get services() { return this.items.filter(function(item) { return item.Kind !== 'connect-proxy'; }); - }), - externalSources: computed('services', function() { + } + + @computed('services') + get externalSources() { const sources = this.services.reduce(function(prev, item) { return prev.concat(item.ExternalSources || []); }, []); // unique, non-empty values, alpha sort return [...new Set(sources)].filter(Boolean).sort(); - }), -}); + } +} diff --git a/ui/packages/consul-ui/app/controllers/dc/services/instance.js b/ui/packages/consul-ui/app/controllers/dc/services/instance.js new file mode 100644 index 000000000..8030ab37e --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/services/instance.js @@ -0,0 +1,28 @@ +import { inject as service } from '@ember/service'; +import Controller from '@ember/controller'; +import { get, action } from '@ember/object'; + +export default class InstanceController extends Controller { + @service('flashMessages') + notify; + + @action + error(e) { + if (e.target.readyState === 1) { + // OPEN + if (get(e, 'error.errors.firstObject.status') === '404') { + this.notify.add({ + destroyOnClick: false, + sticky: true, + type: 'warning', + action: 'update', + }); + [e.target, this.proxy].forEach(function(item) { + if (item && typeof item.close === 'function') { + item.close(); + } + }); + } + } + } +} diff --git a/ui/packages/consul-ui/app/controllers/dc/services/instance/upstreams.js b/ui/packages/consul-ui/app/controllers/dc/services/instance/upstreams.js new file mode 100644 index 000000000..ecb092564 --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/services/instance/upstreams.js @@ -0,0 +1,11 @@ +import Controller from '@ember/controller'; + +export default class DcServicesInstanceUpstreamsController extends Controller { + queryParams = { + sortBy: 'sort', + search: { + as: 'filter', + replace: true, + }, + }; +} diff --git a/ui/packages/consul-ui/app/controllers/dc/services/show.js b/ui/packages/consul-ui/app/controllers/dc/services/show.js new file mode 100644 index 000000000..e715f0de6 --- /dev/null +++ b/ui/packages/consul-ui/app/controllers/dc/services/show.js @@ -0,0 +1,41 @@ +import { inject as service } from '@ember/service'; +import { alias } from '@ember/object/computed'; +import Controller from '@ember/controller'; +import { get, action } from '@ember/object'; +export default class ShowController extends Controller { + @service('dom') + dom; + + @service('flashMessages') + notify; + + @alias('items.firstObject') + item; + + @action + error(e) { + if (e.target.readyState === 1) { + // OPEN + if (get(e, 'error.errors.firstObject.status') === '404') { + this.notify.add({ + destroyOnClick: false, + sticky: true, + type: 'warning', + action: 'update', + }); + } + [ + e.target, + this.intentions, + this.chain, + this.proxies, + this.gatewayServices, + this.topology, + ].forEach(function(item) { + if (item && typeof item.close === 'function') { + item.close(); + } + }); + } + } +} diff --git a/ui-v2/app/controllers/dc/services/show/instances.js b/ui/packages/consul-ui/app/controllers/dc/services/show/instances.js similarity index 76% rename from ui-v2/app/controllers/dc/services/show/instances.js rename to ui/packages/consul-ui/app/controllers/dc/services/show/instances.js index d8a4846dc..183b8b72d 100644 --- a/ui-v2/app/controllers/dc/services/show/instances.js +++ b/ui/packages/consul-ui/app/controllers/dc/services/show/instances.js @@ -1,8 +1,8 @@ -import Controller from '@ember/controller'; import { computed } from '@ember/object'; +import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class InstancesController extends Controller { + queryParams = { sortBy: 'sort', status: 'status', source: 'source', @@ -10,12 +10,14 @@ export default Controller.extend({ as: 'filter', replace: true, }, - }, - externalSources: computed('items', function() { + }; + + @computed('items') + get externalSources() { const sources = this.items.reduce(function(prev, item) { return prev.concat(item.ExternalSources || []); }, []); // unique, non-empty values, alpha sort return [...new Set(sources)].filter(Boolean).sort(); - }), -}); + } +} diff --git a/ui-v2/app/controllers/dc/acls/tokens/index.js b/ui/packages/consul-ui/app/controllers/dc/services/show/intentions/index.js similarity index 54% rename from ui-v2/app/controllers/dc/acls/tokens/index.js rename to ui/packages/consul-ui/app/controllers/dc/services/show/intentions/index.js index f99cde37f..49b2a9262 100644 --- a/ui-v2/app/controllers/dc/acls/tokens/index.js +++ b/ui/packages/consul-ui/app/controllers/dc/services/show/intentions/index.js @@ -1,10 +1,11 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class IndexController extends Controller { + queryParams = { sortBy: 'sort', + access: 'access', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/services/show/services.js b/ui/packages/consul-ui/app/controllers/dc/services/show/services.js similarity index 64% rename from ui-v2/app/controllers/dc/services/show/services.js rename to ui/packages/consul-ui/app/controllers/dc/services/show/services.js index b71de3054..b06b46320 100644 --- a/ui-v2/app/controllers/dc/services/show/services.js +++ b/ui/packages/consul-ui/app/controllers/dc/services/show/services.js @@ -1,12 +1,12 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class ServicesController extends Controller { + queryParams = { sortBy: 'sort', instance: 'instance', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/dc/services/show/upstreams.js b/ui/packages/consul-ui/app/controllers/dc/services/show/upstreams.js similarity index 63% rename from ui-v2/app/controllers/dc/services/show/upstreams.js rename to ui/packages/consul-ui/app/controllers/dc/services/show/upstreams.js index b71de3054..9dcd36b7d 100644 --- a/ui-v2/app/controllers/dc/services/show/upstreams.js +++ b/ui/packages/consul-ui/app/controllers/dc/services/show/upstreams.js @@ -1,12 +1,12 @@ import Controller from '@ember/controller'; -export default Controller.extend({ - queryParams: { +export default class UpstreamsController extends Controller { + queryParams = { sortBy: 'sort', instance: 'instance', search: { as: 'filter', replace: true, }, - }, -}); + }; +} diff --git a/ui-v2/app/controllers/settings.js b/ui/packages/consul-ui/app/controllers/settings.js similarity index 100% rename from ui-v2/app/controllers/settings.js rename to ui/packages/consul-ui/app/controllers/settings.js diff --git a/ui-v2/app/env.js b/ui/packages/consul-ui/app/env.js similarity index 100% rename from ui-v2/app/env.js rename to ui/packages/consul-ui/app/env.js diff --git a/ui/packages/consul-ui/app/filter/predicates/intention.js b/ui/packages/consul-ui/app/filter/predicates/intention.js new file mode 100644 index 000000000..2d0157040 --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/intention.js @@ -0,0 +1,9 @@ +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + accesses: { + allow: (item, value) => item.Action === value, + deny: (item, value) => item.Action === value, + 'app-aware': (item, value) => typeof item.Action === 'undefined', + }, +}); diff --git a/ui/packages/consul-ui/app/filter/predicates/node.js b/ui/packages/consul-ui/app/filter/predicates/node.js new file mode 100644 index 000000000..0b41f17b4 --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/node.js @@ -0,0 +1,10 @@ +import setHelpers from 'mnemonist/set'; +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + statuses: { + passing: (item, value) => item.Status === value, + warning: (item, value) => item.Status === value, + critical: (item, value) => item.Status === value, + }, +}); diff --git a/ui/packages/consul-ui/app/filter/predicates/policy.js b/ui/packages/consul-ui/app/filter/predicates/policy.js new file mode 100644 index 000000000..c5b65b0dc --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/policy.js @@ -0,0 +1,15 @@ +import setHelpers from 'mnemonist/set'; +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + kinds: { + 'global-management': (item, value) => item.isGlobalManagement, + standard: (item, value) => !item.isGlobalManagement, + }, + dcs: (item, values) => { + return ( + typeof item.Datacenters === 'undefined' || + setHelpers.intersectionSize(values, new Set(item.Datacenters)) > 0 + ); + }, +}); diff --git a/ui/packages/consul-ui/app/filter/predicates/service-instance.js b/ui/packages/consul-ui/app/filter/predicates/service-instance.js new file mode 100644 index 000000000..2bd09d631 --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/service-instance.js @@ -0,0 +1,13 @@ +import setHelpers from 'mnemonist/set'; +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + statuses: { + passing: (item, value) => item.Status === value, + warning: (item, value) => item.Status === value, + critical: (item, value) => item.Status === value, + }, + sources: (item, values) => { + return setHelpers.intersectionSize(values, new Set(item.ExternalSources || [])) !== 0; + }, +}); diff --git a/ui/packages/consul-ui/app/filter/predicates/service.js b/ui/packages/consul-ui/app/filter/predicates/service.js new file mode 100644 index 000000000..7be04d7bc --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/service.js @@ -0,0 +1,25 @@ +import setHelpers from 'mnemonist/set'; +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + kinds: { + 'ingress-gateway': (item, value) => item.Kind === value, + 'terminating-gateway': (item, value) => item.Kind === value, + 'mesh-gateway': (item, value) => item.Kind === value, + service: (item, value) => !item.Kind, + 'in-mesh': (item, value) => item.InMesh, + 'not-in-mesh': (item, value) => !item.InMesh, + }, + statuses: { + passing: (item, value) => item.MeshStatus === value, + warning: (item, value) => item.MeshStatus === value, + critical: (item, value) => item.MeshStatus === value, + }, + instances: { + registered: (item, value) => item.InstanceCount > 0, + 'not-registered': (item, value) => item.InstanceCount === 0, + }, + sources: (item, values) => { + return setHelpers.intersectionSize(values, new Set(item.ExternalSources || [])) !== 0; + }, +}); diff --git a/ui/packages/consul-ui/app/filter/predicates/token.js b/ui/packages/consul-ui/app/filter/predicates/token.js new file mode 100644 index 000000000..cf85f2ce1 --- /dev/null +++ b/ui/packages/consul-ui/app/filter/predicates/token.js @@ -0,0 +1,10 @@ +import setHelpers from 'mnemonist/set'; +import { andOr } from 'consul-ui/utils/filter'; + +export default andOr({ + kinds: { + 'global-management': (item, value) => item.isGlobalManagement, + global: (item, value) => !item.Local, + local: (item, value) => item.Local, + }, +}); diff --git a/ui-v2/app/forms/acl.js b/ui/packages/consul-ui/app/forms/acl.js similarity index 100% rename from ui-v2/app/forms/acl.js rename to ui/packages/consul-ui/app/forms/acl.js diff --git a/ui-v2/app/forms/intention.js b/ui/packages/consul-ui/app/forms/intention.js similarity index 100% rename from ui-v2/app/forms/intention.js rename to ui/packages/consul-ui/app/forms/intention.js diff --git a/ui-v2/app/forms/kv.js b/ui/packages/consul-ui/app/forms/kv.js similarity index 100% rename from ui-v2/app/forms/kv.js rename to ui/packages/consul-ui/app/forms/kv.js diff --git a/ui-v2/app/forms/nspace.js b/ui/packages/consul-ui/app/forms/nspace.js similarity index 100% rename from ui-v2/app/forms/nspace.js rename to ui/packages/consul-ui/app/forms/nspace.js diff --git a/ui-v2/app/forms/policy.js b/ui/packages/consul-ui/app/forms/policy.js similarity index 100% rename from ui-v2/app/forms/policy.js rename to ui/packages/consul-ui/app/forms/policy.js diff --git a/ui-v2/app/forms/role.js b/ui/packages/consul-ui/app/forms/role.js similarity index 100% rename from ui-v2/app/forms/role.js rename to ui/packages/consul-ui/app/forms/role.js diff --git a/ui-v2/app/forms/token.js b/ui/packages/consul-ui/app/forms/token.js similarity index 100% rename from ui-v2/app/forms/token.js rename to ui/packages/consul-ui/app/forms/token.js diff --git a/ui-v2/app/helpers/atob.js b/ui/packages/consul-ui/app/helpers/atob.js similarity index 100% rename from ui-v2/app/helpers/atob.js rename to ui/packages/consul-ui/app/helpers/atob.js diff --git a/ui-v2/app/helpers/comparator.js b/ui/packages/consul-ui/app/helpers/comparator.js similarity index 100% rename from ui-v2/app/helpers/comparator.js rename to ui/packages/consul-ui/app/helpers/comparator.js diff --git a/ui-v2/app/helpers/default.js b/ui/packages/consul-ui/app/helpers/default.js similarity index 100% rename from ui-v2/app/helpers/default.js rename to ui/packages/consul-ui/app/helpers/default.js diff --git a/ui-v2/app/helpers/difference.js b/ui/packages/consul-ui/app/helpers/difference.js similarity index 100% rename from ui-v2/app/helpers/difference.js rename to ui/packages/consul-ui/app/helpers/difference.js diff --git a/ui-v2/app/helpers/dom-position.js b/ui/packages/consul-ui/app/helpers/dom-position.js similarity index 100% rename from ui-v2/app/helpers/dom-position.js rename to ui/packages/consul-ui/app/helpers/dom-position.js diff --git a/ui-v2/app/helpers/env.js b/ui/packages/consul-ui/app/helpers/env.js similarity index 100% rename from ui-v2/app/helpers/env.js rename to ui/packages/consul-ui/app/helpers/env.js diff --git a/ui-v2/app/helpers/filter-predicate.js b/ui/packages/consul-ui/app/helpers/filter-predicate.js similarity index 100% rename from ui-v2/app/helpers/filter-predicate.js rename to ui/packages/consul-ui/app/helpers/filter-predicate.js diff --git a/ui-v2/app/helpers/format-number.js b/ui/packages/consul-ui/app/helpers/format-number.js similarity index 100% rename from ui-v2/app/helpers/format-number.js rename to ui/packages/consul-ui/app/helpers/format-number.js diff --git a/ui-v2/app/helpers/format-time.js b/ui/packages/consul-ui/app/helpers/format-time.js similarity index 100% rename from ui-v2/app/helpers/format-time.js rename to ui/packages/consul-ui/app/helpers/format-time.js diff --git a/ui-v2/app/helpers/href-mut.js b/ui/packages/consul-ui/app/helpers/href-mut.js similarity index 100% rename from ui-v2/app/helpers/href-mut.js rename to ui/packages/consul-ui/app/helpers/href-mut.js diff --git a/ui-v2/app/helpers/href-to.js b/ui/packages/consul-ui/app/helpers/href-to.js similarity index 91% rename from ui-v2/app/helpers/href-to.js rename to ui/packages/consul-ui/app/helpers/href-to.js index d04f8cc42..617da11f3 100644 --- a/ui-v2/app/helpers/href-to.js +++ b/ui/packages/consul-ui/app/helpers/href-to.js @@ -30,7 +30,8 @@ export const hrefTo = function(owned, router, [targetRouteName, ...rest], namedA // this globally converts non-nspaced href-to's to nspace aware // href-to's only if you are within a namespace - if (router.currentRouteName.startsWith('nspace.') && targetRouteName.startsWith('dc.')) { + const currentRouteName = router.currentRouteName || ''; + if (currentRouteName.startsWith('nspace.') && targetRouteName.startsWith('dc.')) { targetRouteName = `nspace.${targetRouteName}`; } return _hrefTo(owned, [targetRouteName, ...rest]); diff --git a/ui-v2/app/helpers/is-href.js b/ui/packages/consul-ui/app/helpers/is-href.js similarity index 100% rename from ui-v2/app/helpers/is-href.js rename to ui/packages/consul-ui/app/helpers/is-href.js diff --git a/ui-v2/app/helpers/last.js b/ui/packages/consul-ui/app/helpers/last.js similarity index 100% rename from ui-v2/app/helpers/last.js rename to ui/packages/consul-ui/app/helpers/last.js diff --git a/ui-v2/app/helpers/left-trim.js b/ui/packages/consul-ui/app/helpers/left-trim.js similarity index 100% rename from ui-v2/app/helpers/left-trim.js rename to ui/packages/consul-ui/app/helpers/left-trim.js diff --git a/ui-v2/app/helpers/object-entries.js b/ui/packages/consul-ui/app/helpers/object-entries.js similarity index 100% rename from ui-v2/app/helpers/object-entries.js rename to ui/packages/consul-ui/app/helpers/object-entries.js diff --git a/ui-v2/app/helpers/policy/datacenters.js b/ui/packages/consul-ui/app/helpers/policy/datacenters.js similarity index 100% rename from ui-v2/app/helpers/policy/datacenters.js rename to ui/packages/consul-ui/app/helpers/policy/datacenters.js diff --git a/ui-v2/app/helpers/policy/group.js b/ui/packages/consul-ui/app/helpers/policy/group.js similarity index 100% rename from ui-v2/app/helpers/policy/group.js rename to ui/packages/consul-ui/app/helpers/policy/group.js diff --git a/ui-v2/app/helpers/policy/typeof.js b/ui/packages/consul-ui/app/helpers/policy/typeof.js similarity index 100% rename from ui-v2/app/helpers/policy/typeof.js rename to ui/packages/consul-ui/app/helpers/policy/typeof.js diff --git a/ui-v2/app/helpers/refresh-route.js b/ui/packages/consul-ui/app/helpers/refresh-route.js similarity index 100% rename from ui-v2/app/helpers/refresh-route.js rename to ui/packages/consul-ui/app/helpers/refresh-route.js diff --git a/ui-v2/app/helpers/render-template.js b/ui/packages/consul-ui/app/helpers/render-template.js similarity index 100% rename from ui-v2/app/helpers/render-template.js rename to ui/packages/consul-ui/app/helpers/render-template.js diff --git a/ui-v2/app/helpers/right-trim.js b/ui/packages/consul-ui/app/helpers/right-trim.js similarity index 100% rename from ui-v2/app/helpers/right-trim.js rename to ui/packages/consul-ui/app/helpers/right-trim.js diff --git a/ui-v2/app/helpers/route-match.js b/ui/packages/consul-ui/app/helpers/route-match.js similarity index 100% rename from ui-v2/app/helpers/route-match.js rename to ui/packages/consul-ui/app/helpers/route-match.js diff --git a/ui-v2/app/helpers/searchable.js b/ui/packages/consul-ui/app/helpers/searchable.js similarity index 100% rename from ui-v2/app/helpers/searchable.js rename to ui/packages/consul-ui/app/helpers/searchable.js diff --git a/ui-v2/app/helpers/selectable-key-values.js b/ui/packages/consul-ui/app/helpers/selectable-key-values.js similarity index 100% rename from ui-v2/app/helpers/selectable-key-values.js rename to ui/packages/consul-ui/app/helpers/selectable-key-values.js diff --git a/ui-v2/app/helpers/service/external-source.js b/ui/packages/consul-ui/app/helpers/service/external-source.js similarity index 100% rename from ui-v2/app/helpers/service/external-source.js rename to ui/packages/consul-ui/app/helpers/service/external-source.js diff --git a/ui-v2/app/helpers/service/health-percentage.js b/ui/packages/consul-ui/app/helpers/service/health-percentage.js similarity index 100% rename from ui-v2/app/helpers/service/health-percentage.js rename to ui/packages/consul-ui/app/helpers/service/health-percentage.js diff --git a/ui-v2/app/helpers/service/intention-permissions.js b/ui/packages/consul-ui/app/helpers/service/intention-permissions.js similarity index 100% rename from ui-v2/app/helpers/service/intention-permissions.js rename to ui/packages/consul-ui/app/helpers/service/intention-permissions.js diff --git a/ui-v2/app/helpers/slugify.js b/ui/packages/consul-ui/app/helpers/slugify.js similarity index 100% rename from ui-v2/app/helpers/slugify.js rename to ui/packages/consul-ui/app/helpers/slugify.js diff --git a/ui-v2/app/helpers/split.js b/ui/packages/consul-ui/app/helpers/split.js similarity index 100% rename from ui-v2/app/helpers/split.js rename to ui/packages/consul-ui/app/helpers/split.js diff --git a/ui-v2/app/helpers/starts-with.js b/ui/packages/consul-ui/app/helpers/starts-with.js similarity index 100% rename from ui-v2/app/helpers/starts-with.js rename to ui/packages/consul-ui/app/helpers/starts-with.js diff --git a/ui-v2/app/helpers/state-matches.js b/ui/packages/consul-ui/app/helpers/state-matches.js similarity index 100% rename from ui-v2/app/helpers/state-matches.js rename to ui/packages/consul-ui/app/helpers/state-matches.js diff --git a/ui-v2/app/helpers/substr.js b/ui/packages/consul-ui/app/helpers/substr.js similarity index 100% rename from ui-v2/app/helpers/substr.js rename to ui/packages/consul-ui/app/helpers/substr.js diff --git a/ui-v2/app/helpers/svg-curve.js b/ui/packages/consul-ui/app/helpers/svg-curve.js similarity index 100% rename from ui-v2/app/helpers/svg-curve.js rename to ui/packages/consul-ui/app/helpers/svg-curve.js diff --git a/ui-v2/app/helpers/token/is-anonymous.js b/ui/packages/consul-ui/app/helpers/token/is-anonymous.js similarity index 100% rename from ui-v2/app/helpers/token/is-anonymous.js rename to ui/packages/consul-ui/app/helpers/token/is-anonymous.js diff --git a/ui-v2/app/helpers/token/is-legacy.js b/ui/packages/consul-ui/app/helpers/token/is-legacy.js similarity index 100% rename from ui-v2/app/helpers/token/is-legacy.js rename to ui/packages/consul-ui/app/helpers/token/is-legacy.js diff --git a/ui-v2/app/helpers/tween-to.js b/ui/packages/consul-ui/app/helpers/tween-to.js similarity index 100% rename from ui-v2/app/helpers/tween-to.js rename to ui/packages/consul-ui/app/helpers/tween-to.js diff --git a/ui-v2/app/helpers/uniq-by.js b/ui/packages/consul-ui/app/helpers/uniq-by.js similarity index 100% rename from ui-v2/app/helpers/uniq-by.js rename to ui/packages/consul-ui/app/helpers/uniq-by.js diff --git a/ui-v2/app/helpers/uri.js b/ui/packages/consul-ui/app/helpers/uri.js similarity index 100% rename from ui-v2/app/helpers/uri.js rename to ui/packages/consul-ui/app/helpers/uri.js diff --git a/ui-v2/app/index.html b/ui/packages/consul-ui/app/index.html similarity index 100% rename from ui-v2/app/index.html rename to ui/packages/consul-ui/app/index.html diff --git a/ui-v2/app/initializers/ivy-codemirror.js b/ui/packages/consul-ui/app/initializers/ivy-codemirror.js similarity index 100% rename from ui-v2/app/initializers/ivy-codemirror.js rename to ui/packages/consul-ui/app/initializers/ivy-codemirror.js diff --git a/ui-v2/app/initializers/oidc-provider.js b/ui/packages/consul-ui/app/initializers/oidc-provider.js similarity index 100% rename from ui-v2/app/initializers/oidc-provider.js rename to ui/packages/consul-ui/app/initializers/oidc-provider.js diff --git a/ui-v2/app/instance-initializers/nspace.js b/ui/packages/consul-ui/app/instance-initializers/nspace.js similarity index 100% rename from ui-v2/app/instance-initializers/nspace.js rename to ui/packages/consul-ui/app/instance-initializers/nspace.js diff --git a/ui-v2/app/instance-initializers/selection.js b/ui/packages/consul-ui/app/instance-initializers/selection.js similarity index 100% rename from ui-v2/app/instance-initializers/selection.js rename to ui/packages/consul-ui/app/instance-initializers/selection.js diff --git a/ui-v2/app/mixins/acl/with-actions.js b/ui/packages/consul-ui/app/mixins/acl/with-actions.js similarity index 100% rename from ui-v2/app/mixins/acl/with-actions.js rename to ui/packages/consul-ui/app/mixins/acl/with-actions.js diff --git a/ui-v2/app/mixins/creating-route.js b/ui/packages/consul-ui/app/mixins/creating-route.js similarity index 100% rename from ui-v2/app/mixins/creating-route.js rename to ui/packages/consul-ui/app/mixins/creating-route.js diff --git a/ui-v2/app/mixins/nspace/with-actions.js b/ui/packages/consul-ui/app/mixins/nspace/with-actions.js similarity index 100% rename from ui-v2/app/mixins/nspace/with-actions.js rename to ui/packages/consul-ui/app/mixins/nspace/with-actions.js diff --git a/ui-v2/app/mixins/policy/as-many.js b/ui/packages/consul-ui/app/mixins/policy/as-many.js similarity index 100% rename from ui-v2/app/mixins/policy/as-many.js rename to ui/packages/consul-ui/app/mixins/policy/as-many.js diff --git a/ui-v2/app/mixins/policy/with-actions.js b/ui/packages/consul-ui/app/mixins/policy/with-actions.js similarity index 100% rename from ui-v2/app/mixins/policy/with-actions.js rename to ui/packages/consul-ui/app/mixins/policy/with-actions.js diff --git a/ui-v2/app/mixins/role/as-many.js b/ui/packages/consul-ui/app/mixins/role/as-many.js similarity index 100% rename from ui-v2/app/mixins/role/as-many.js rename to ui/packages/consul-ui/app/mixins/role/as-many.js diff --git a/ui-v2/app/mixins/role/with-actions.js b/ui/packages/consul-ui/app/mixins/role/with-actions.js similarity index 100% rename from ui-v2/app/mixins/role/with-actions.js rename to ui/packages/consul-ui/app/mixins/role/with-actions.js diff --git a/ui-v2/app/mixins/token/with-actions.js b/ui/packages/consul-ui/app/mixins/token/with-actions.js similarity index 100% rename from ui-v2/app/mixins/token/with-actions.js rename to ui/packages/consul-ui/app/mixins/token/with-actions.js diff --git a/ui-v2/app/mixins/with-blocking-actions.js b/ui/packages/consul-ui/app/mixins/with-blocking-actions.js similarity index 100% rename from ui-v2/app/mixins/with-blocking-actions.js rename to ui/packages/consul-ui/app/mixins/with-blocking-actions.js diff --git a/ui/packages/consul-ui/app/models/acl.js b/ui/packages/consul-ui/app/models/acl.js new file mode 100644 index 000000000..d442ae3c7 --- /dev/null +++ b/ui/packages/consul-ui/app/models/acl.js @@ -0,0 +1,19 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Acl extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + // TODO: Why didn't I have to do this for KV's? This is to ensure that Name + // is '' and not null when creating maybe its due to the fact that `Key` is + // the primaryKey in Kv's + @attr('string', { defaultValue: () => '' }) Name; + @attr('string') Type; + @attr('string') Rules; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; +} diff --git a/ui/packages/consul-ui/app/models/coordinate.js b/ui/packages/consul-ui/app/models/coordinate.js new file mode 100644 index 000000000..325b7d820 --- /dev/null +++ b/ui/packages/consul-ui/app/models/coordinate.js @@ -0,0 +1,14 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Node'; + +export default class Coordinate extends Model { + @attr('string') uid; + @attr('string') Node; + + @attr() Coord; // {Vec, Error, Adjustment, Height} + @attr('string') Segment; + @attr('string') Datacenter; + @attr('number') SyncTime; +} diff --git a/ui/packages/consul-ui/app/models/dc.js b/ui/packages/consul-ui/app/models/dc.js new file mode 100644 index 000000000..65cdd2066 --- /dev/null +++ b/ui/packages/consul-ui/app/models/dc.js @@ -0,0 +1,12 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const FOREIGN_KEY = 'Datacenter'; +export const SLUG_KEY = 'Name'; + +export default class Datacenter extends Model { + @attr('string') uid; + @attr('string') Name; + + @attr('boolean', { defaultValue: () => true }) MeshEnabled; +} diff --git a/ui/packages/consul-ui/app/models/discovery-chain.js b/ui/packages/consul-ui/app/models/discovery-chain.js new file mode 100644 index 000000000..8ca2ae60b --- /dev/null +++ b/ui/packages/consul-ui/app/models/discovery-chain.js @@ -0,0 +1,13 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ServiceName'; + +export default class DiscoveryChain extends Model { + @attr('string') uid; + @attr('string') ServiceName; + + @attr('string') Datacenter; + @attr() Chain; // {} + @attr() meta; // {} +} diff --git a/ui/packages/consul-ui/app/models/intention-permission-http-header.js b/ui/packages/consul-ui/app/models/intention-permission-http-header.js new file mode 100644 index 000000000..8921df935 --- /dev/null +++ b/ui/packages/consul-ui/app/models/intention-permission-http-header.js @@ -0,0 +1,31 @@ +import Fragment from 'ember-data-model-fragments/fragment'; +import { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; +import { or } from '@ember/object/computed'; + +export const schema = { + Name: { + required: true, + }, + HeaderType: { + allowedValues: ['Exact', 'Prefix', 'Suffix', 'Regex', 'Present'], + }, +}; + +export default class IntentionPermission extends Fragment { + @attr('string') Name; + + @attr('string') Exact; + @attr('string') Prefix; + @attr('string') Suffix; + @attr('string') Regex; + // this is a boolean but we don't want it to automatically be set to false + @attr() Present; + + @or(...schema.HeaderType.allowedValues) Value; + + @computed(...schema.HeaderType.allowedValues) + get HeaderType() { + return schema.HeaderType.allowedValues.find(prop => typeof this[prop] !== 'undefined'); + } +} diff --git a/ui-v2/app/models/intention-permission-http.js b/ui/packages/consul-ui/app/models/intention-permission-http.js similarity index 57% rename from ui-v2/app/models/intention-permission-http.js rename to ui/packages/consul-ui/app/models/intention-permission-http.js index 7e551eaa0..93860c2e9 100644 --- a/ui-v2/app/models/intention-permission-http.js +++ b/ui/packages/consul-ui/app/models/intention-permission-http.js @@ -1,9 +1,8 @@ -import attr from 'ember-data/attr'; -import { computed } from '@ember/object'; -import { or } from '@ember/object/computed'; - import Fragment from 'ember-data-model-fragments/fragment'; import { fragmentArray, array } from 'ember-data-model-fragments/attributes'; +import { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; +import { or } from '@ember/object/computed'; export const schema = { PathType: { @@ -14,16 +13,18 @@ export const schema = { }, }; -export default Fragment.extend({ - PathExact: attr('string'), - PathPrefix: attr('string'), - PathRegex: attr('string'), +export default class IntentionPermissionHttp extends Fragment { + @attr('string') PathExact; + @attr('string') PathPrefix; + @attr('string') PathRegex; - Header: fragmentArray('intention-permission-http-header'), - Methods: array('string'), + @fragmentArray('intention-permission-http-header') Header; + @array('string') Methods; - Path: or(...schema.PathType.allowedValues), - PathType: computed(...schema.PathType.allowedValues, function() { + @or(...schema.PathType.allowedValues) Path; + + @computed(...schema.PathType.allowedValues) + get PathType() { return schema.PathType.allowedValues.find(prop => typeof this[prop] === 'string'); - }), -}); + } +} diff --git a/ui-v2/app/models/intention-permission.js b/ui/packages/consul-ui/app/models/intention-permission.js similarity index 50% rename from ui-v2/app/models/intention-permission.js rename to ui/packages/consul-ui/app/models/intention-permission.js index af1e8e4ce..56a3223f0 100644 --- a/ui-v2/app/models/intention-permission.js +++ b/ui/packages/consul-ui/app/models/intention-permission.js @@ -1,7 +1,6 @@ -import attr from 'ember-data/attr'; - import Fragment from 'ember-data-model-fragments/fragment'; import { fragment } from 'ember-data-model-fragments/attributes'; +import { attr } from '@ember-data/model'; export const schema = { Action: { @@ -10,9 +9,7 @@ export const schema = { }, }; -export default Fragment.extend({ - Action: attr('string', { - defaultValue: schema.Action.defaultValue, - }), - HTTP: fragment('intention-permission-http'), -}); +export default class IntentionPermission extends Fragment { + @attr('string', { defaultValue: () => schema.Action.defaultValue }) Action; + @fragment('intention-permission-http') HTTP; +} diff --git a/ui/packages/consul-ui/app/models/intention.js b/ui/packages/consul-ui/app/models/intention.js new file mode 100644 index 000000000..e86ec3e2b --- /dev/null +++ b/ui/packages/consul-ui/app/models/intention.js @@ -0,0 +1,43 @@ +import Model, { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; +import { fragmentArray } from 'ember-data-model-fragments/attributes'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Intention extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + @attr('string') Description; + @attr('string', { defaultValue: () => 'default' }) SourceNS; + @attr('string', { defaultValue: () => '*' }) SourceName; + @attr('string', { defaultValue: () => 'default' }) DestinationNS; + @attr('string', { defaultValue: () => '*' }) DestinationName; + @attr('number') Precedence; + @attr('string', { defaultValue: () => 'consul' }) SourceType; + @attr('string') Action; + @attr('string') LegacyID; + @attr('boolean', { defaultValue: () => true }) Legacy; + @attr('number') SyncTime; + @attr('date') CreatedAt; + @attr('date') UpdatedAt; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + @attr() Meta; // {} + @fragmentArray('intention-permission') Permissions; + + @computed('Meta') + get IsManagedByCRD() { + const meta = Object.entries(this.Meta || {}).find( + ([key, value]) => key === 'external-source' && value === 'kubernetes' + ); + return typeof meta !== 'undefined'; + } + + @computed('IsManagedByCRD') + get IsEditable() { + return !this.IsManagedByCRD; + } +} diff --git a/ui/packages/consul-ui/app/models/kv.js b/ui/packages/consul-ui/app/models/kv.js new file mode 100644 index 000000000..44e23cde1 --- /dev/null +++ b/ui/packages/consul-ui/app/models/kv.js @@ -0,0 +1,32 @@ +import Model, { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; +import isFolder from 'consul-ui/utils/isFolder'; + +export const PRIMARY_KEY = 'uid'; +// not really a slug as it contains slashes but all intents and purposes its +// my 'slug' +export const SLUG_KEY = 'Key'; + +export default class Kv extends Model { + @attr('string') uid; + @attr('string') Key; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('number') LockIndex; + @attr('number') Flags; + // TODO: Consider defaulting all strings to '' because `typeof null !== + // 'string'` look into what other transformers do with `null` also + // preferably removeNull would be done in this layer also as if a property + // is `null` default Values don't kick in, which also explains `Tags` + // elsewhere + @attr('string') Value; //, {defaultValue: function() {return '';}} + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + @attr('string') Session; + + @computed('Key') + get isFolder() { + return isFolder(this.Key || ''); + } +} diff --git a/ui/packages/consul-ui/app/models/node.js b/ui/packages/consul-ui/app/models/node.js new file mode 100644 index 000000000..3723743a8 --- /dev/null +++ b/ui/packages/consul-ui/app/models/node.js @@ -0,0 +1,51 @@ +import Model, { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Node extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + @attr('string') Address; + @attr('string') Node; + @attr('number') SyncTime; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + @attr() meta; // {} + @attr() Meta; // {} + @attr() TaggedAddresses; // {lan, wan} + @attr() Services; // ServiceInstances[] + @attr() Checks; // Checks[] + + @computed('Checks.[]', 'ChecksCritical', 'ChecksPassing', 'ChecksWarning') + get Status() { + switch (true) { + case this.ChecksCritical !== 0: + return 'critical'; + case this.ChecksWarning !== 0: + return 'warning'; + case this.ChecksPassing !== 0: + return 'passing'; + default: + return 'empty'; + } + } + + @computed('Checks.[]') + get ChecksCritical() { + return this.Checks.filter(item => item.Status === 'critical').length; + } + + @computed('Checks.[]') + get ChecksPassing() { + return this.Checks.filter(item => item.Status === 'passing').length; + } + + @computed('Checks.[]') + get ChecksWarning() { + return this.Checks.filter(item => item.Status === 'warning').length; + } +} diff --git a/ui/packages/consul-ui/app/models/nspace.js b/ui/packages/consul-ui/app/models/nspace.js new file mode 100644 index 000000000..d35312491 --- /dev/null +++ b/ui/packages/consul-ui/app/models/nspace.js @@ -0,0 +1,22 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'Name'; +export const SLUG_KEY = 'Name'; +export const NSPACE_KEY = 'Namespace'; + +export default class Nspace extends Model { + @attr('string') uid; + @attr('string') Name; + + @attr('number') SyncTime; + @attr('string', { defaultValue: () => '' }) Description; + // TODO: Is there some sort of date we can use here + @attr('string') DeletedAt; + @attr({ + defaultValue: () => ({ + PolicyDefaults: [], + RoleDefaults: [], + }), + }) + ACLs; +} diff --git a/ui/packages/consul-ui/app/models/oidc-provider.js b/ui/packages/consul-ui/app/models/oidc-provider.js new file mode 100644 index 000000000..4129d7216 --- /dev/null +++ b/ui/packages/consul-ui/app/models/oidc-provider.js @@ -0,0 +1,16 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Name'; + +export default class OidcProvider extends Model { + @attr('string') uid; + @attr('string') Name; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') Kind; + @attr('string') AuthURL; + @attr('string') DisplayName; + @attr() meta; // {} +} diff --git a/ui/packages/consul-ui/app/models/policy.js b/ui/packages/consul-ui/app/models/policy.js new file mode 100644 index 000000000..bf4f29197 --- /dev/null +++ b/ui/packages/consul-ui/app/models/policy.js @@ -0,0 +1,31 @@ +import Model, { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; + +export const MANAGEMENT_ID = '00000000-0000-0000-0000-000000000001'; +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Policy extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string', { defaultValue: () => '' }) Name; + @attr('string', { defaultValue: () => '' }) Description; + @attr('string', { defaultValue: () => '' }) Rules; + @attr('number') SyncTime; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + @attr() Datacenters; // string[] + @attr() meta; // {} + // frontend only for templated policies (Identities) + @attr('string', { defaultValue: () => '' }) template; + // frontend only for ordering where CreateIndex can't be used + @attr('number', { defaultValue: () => new Date().getTime() }) CreateTime; + + @computed('ID') + get isGlobalManagement() { + return this.ID === MANAGEMENT_ID; + } +} diff --git a/ui/packages/consul-ui/app/models/proxy.js b/ui/packages/consul-ui/app/models/proxy.js new file mode 100644 index 000000000..ec8ba6a8b --- /dev/null +++ b/ui/packages/consul-ui/app/models/proxy.js @@ -0,0 +1,18 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Node,ServiceID'; + +// TODO: This should be changed to ProxyInstance +export default class Proxy extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') ServiceName; + @attr('string') ServiceID; + @attr('string') Node; + @attr('number') SyncTime; + @attr() ServiceProxy; // {} +} diff --git a/ui/packages/consul-ui/app/models/role.js b/ui/packages/consul-ui/app/models/role.js new file mode 100644 index 000000000..18bcc2841 --- /dev/null +++ b/ui/packages/consul-ui/app/models/role.js @@ -0,0 +1,25 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Role extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string', { defaultValue: () => '' }) Name; + @attr('string', { defaultValue: () => '' }) Description; + @attr({ defaultValue: () => [] }) Policies; + @attr({ defaultValue: () => [] }) ServiceIdentities; + @attr({ defaultValue: () => [] }) NodeIdentities; + @attr('number') SyncTime; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + // frontend only for ordering where CreateIndex can't be used + @attr('number') CreateTime; + // TODO: Figure out whether we need this or not + @attr() Datacenters; // string[] + @attr('string') Hash; +} diff --git a/ui/packages/consul-ui/app/models/service-instance.js b/ui/packages/consul-ui/app/models/service-instance.js new file mode 100644 index 000000000..0e29d0e66 --- /dev/null +++ b/ui/packages/consul-ui/app/models/service-instance.js @@ -0,0 +1,82 @@ +import Model, { attr, belongsTo } from '@ember-data/model'; +import { computed } from '@ember/object'; +import { or, filter, alias } from '@ember/object/computed'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Node.Node,Service.ID'; + +export default class ServiceInstance extends Model { + @attr('string') uid; + + @attr('string') Datacenter; + // ProxyInstance is the ember-data model relationship + @belongsTo('Proxy') ProxyInstance; + // Proxy is the actual JSON api response + @attr() Proxy; + @attr() Node; + @attr() Service; + @attr() Checks; + @attr('number') SyncTime; + @attr() meta; + + @or('Service.ID', 'Service.Service') Name; + @alias('Service.Tags') Tags; + @alias('Service.Meta') Meta; + @alias('Service.Namespace') Namespace; + @filter('Checks.[]', (item, i, arr) => item.ServiceID !== '') ServiceChecks; + @filter('Checks.[]', (item, i, arr) => item.ServiceID === '') NodeChecks; + + @computed('Service.Meta') + get ExternalSources() { + const sources = Object.entries(this.Service.Meta || {}) + .filter(([key, value]) => key === 'external-source') + .map(([key, value]) => { + return value; + }); + return [...new Set(sources)]; + } + + @computed('ChecksPassing', 'ChecksWarning', 'ChecksCritical') + get Status() { + switch (true) { + case this.ChecksCritical.length !== 0: + return 'critical'; + case this.ChecksWarning.length !== 0: + return 'warning'; + case this.ChecksPassing.length !== 0: + return 'passing'; + default: + return 'empty'; + } + } + + @computed('Checks.[]') + get ChecksPassing() { + return this.Checks.filter(item => item.Status === 'passing'); + } + + @computed('Checks.[]') + get ChecksWarning() { + return this.Checks.filter(item => item.Status === 'warning'); + } + + @computed('Checks.[]') + get ChecksCritical() { + return this.Checks.filter(item => item.Status === 'critical'); + } + + @computed('Checks.[]', 'ChecksPassing') + get PercentageChecksPassing() { + return (this.ChecksPassing.length / this.Checks.length) * 100; + } + + @computed('Checks.[]', 'ChecksWarning') + get PercentageChecksWarning() { + return (this.ChecksWarning.length / this.Checks.length) * 100; + } + + @computed('Checks.[]', 'ChecksCritical') + get PercentageChecksCritical() { + return (this.ChecksCritical.length / this.Checks.length) * 100; + } +} diff --git a/ui/packages/consul-ui/app/models/service.js b/ui/packages/consul-ui/app/models/service.js new file mode 100644 index 000000000..a04d2e599 --- /dev/null +++ b/ui/packages/consul-ui/app/models/service.js @@ -0,0 +1,85 @@ +import Model, { attr } from '@ember-data/model'; +import { computed, get } from '@ember/object'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Name'; + +export default class Service extends Model { + @attr('string') uid; + @attr('string') Name; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') Kind; + @attr('number') ChecksPassing; + @attr('number') ChecksCritical; + @attr('number') ChecksWarning; + @attr('number') InstanceCount; + @attr('boolean') ConnectedWithGateway; + @attr('boolean') ConnectedWithProxy; + @attr('number') SyncTime; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + @attr({ defaultValue: () => [] }) Tags; + + @attr() Nodes; // array + @attr() Proxy; // Service + @attr() GatewayConfig; // {AssociatedServiceCount: 0} + @attr() ExternalSources; // array + @attr() Meta; // {} + + @attr() meta; // {} + + /* Mesh properties involve both the service and the associated proxy */ + @computed('ConnectedWithProxy', 'ConnectedWithGateway') + get MeshEnabled() { + return this.ConnectedWithProxy || this.ConnectedWithGateway; + } + + @computed('MeshEnabled', 'Kind') + get InMesh() { + return this.MeshEnabled || (this.Kind || '').length > 0; + } + + @computed('MeshChecksPassing', 'MeshChecksWarning', 'MeshChecksCritical') + get MeshStatus() { + switch (true) { + case this.MeshChecksCritical !== 0: + return 'critical'; + case this.MeshChecksWarning !== 0: + return 'warning'; + case this.MeshChecksPassing !== 0: + return 'passing'; + default: + return 'empty'; + } + } + + @computed('ChecksPassing', 'Proxy.ChecksPassing') + get MeshChecksPassing() { + let proxyCount = 0; + if (typeof this.Proxy !== 'undefined') { + proxyCount = this.Proxy.ChecksPassing; + } + return this.ChecksPassing + proxyCount; + } + + @computed('ChecksWarning', 'Proxy.ChecksWarning') + get MeshChecksWarning() { + let proxyCount = 0; + if (typeof this.Proxy !== 'undefined') { + proxyCount = this.Proxy.ChecksWarning; + } + return this.ChecksWarning + proxyCount; + } + + @computed('ChecksCritical', 'Proxy.ChecksCritical') + get MeshChecksCritical() { + let proxyCount = 0; + if (typeof this.Proxy !== 'undefined') { + proxyCount = this.Proxy.ChecksCritical; + } + return this.ChecksCritical + proxyCount; + } + /**/ +} diff --git a/ui/packages/consul-ui/app/models/session.js b/ui/packages/consul-ui/app/models/session.js new file mode 100644 index 000000000..e08765c89 --- /dev/null +++ b/ui/packages/consul-ui/app/models/session.js @@ -0,0 +1,22 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ID'; + +export default class Session extends Model { + @attr('string') uid; + @attr('string') ID; + + @attr('string') Name; + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') Node; + @attr('string') Behavior; + @attr('string') TTL; + @attr('number') LockDelay; + @attr('number') SyncTime; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + + @attr({ defaultValue: () => [] }) Checks; +} diff --git a/ui/packages/consul-ui/app/models/token.js b/ui/packages/consul-ui/app/models/token.js new file mode 100644 index 000000000..a37446bc0 --- /dev/null +++ b/ui/packages/consul-ui/app/models/token.js @@ -0,0 +1,41 @@ +import Model, { attr } from '@ember-data/model'; +import { computed } from '@ember/object'; +import { MANAGEMENT_ID } from 'consul-ui/models/policy'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'AccessorID'; + +export default class Token extends Model { + @attr('string') uid; + @attr('string') AccessorID; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') IDPName; + @attr('string') SecretID; + + @attr('boolean') Legacy; + @attr('boolean') Local; + @attr('string', { defaultValue: () => '' }) Description; + @attr() meta; // {} + + @attr({ defaultValue: () => [] }) Policies; + @attr({ defaultValue: () => [] }) Roles; + @attr({ defaultValue: () => [] }) ServiceIdentities; + @attr({ defaultValue: () => [] }) NodeIdentities; + @attr('date') CreateTime; + @attr('string') Hash; + @attr('number') CreateIndex; + @attr('number') ModifyIndex; + + // Legacy + @attr('string') Type; + @attr('string', { defaultValue: () => '' }) Name; + @attr('string') Rules; + // End Legacy + + @computed('Policies.[]') + get isGlobalManagement() { + return (this.Policies || []).find(item => item.ID === MANAGEMENT_ID); + } +} diff --git a/ui/packages/consul-ui/app/models/topology.js b/ui/packages/consul-ui/app/models/topology.js new file mode 100644 index 000000000..9c06acd5e --- /dev/null +++ b/ui/packages/consul-ui/app/models/topology.js @@ -0,0 +1,17 @@ +import Model, { attr } from '@ember-data/model'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'ServiceName'; + +export default class Topology extends Model { + @attr('string') uid; + @attr('string') ServiceName; + + @attr('string') Datacenter; + @attr('string') Namespace; + @attr('string') Protocol; + @attr('boolean') FilteredByACLs; + @attr() Upstreams; // Service[] + @attr() Downstreams; // Service[], + @attr() meta; // {} +} diff --git a/ui-v2/app/router.js b/ui/packages/consul-ui/app/router.js similarity index 98% rename from ui-v2/app/router.js rename to ui/packages/consul-ui/app/router.js index c90e50fe1..25bd36bfd 100644 --- a/ui-v2/app/router.js +++ b/ui/packages/consul-ui/app/router.js @@ -46,9 +46,6 @@ export const routes = { healthchecks: { _options: { path: '/health-checks' }, }, - proxy: { - _options: { path: '/proxy' }, - }, upstreams: { _options: { path: '/upstreams' }, }, diff --git a/ui-v2/app/routes/application.js b/ui/packages/consul-ui/app/routes/application.js similarity index 97% rename from ui-v2/app/routes/application.js rename to ui/packages/consul-ui/app/routes/application.js index 12667edc2..82bf5bdd4 100644 --- a/ui-v2/app/routes/application.js +++ b/ui/packages/consul-ui/app/routes/application.js @@ -41,7 +41,7 @@ export default Route.extend(WithBlockingActions, { }; if (e.errors && e.errors[0]) { error = e.errors[0]; - error.message = error.title || error.detail || 'Error'; + error.message = error.message || error.title || error.detail || 'Error'; } if (error.status === '') { error.message = 'Error'; diff --git a/ui-v2/app/routes/dc.js b/ui/packages/consul-ui/app/routes/dc.js similarity index 55% rename from ui-v2/app/routes/dc.js rename to ui/packages/consul-ui/app/routes/dc.js index 245ee68ba..090a29168 100644 --- a/ui-v2/app/routes/dc.js +++ b/ui/packages/consul-ui/app/routes/dc.js @@ -1,7 +1,7 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash, Promise } from 'rsvp'; -import { get } from '@ember/object'; +import { get, action } from '@ember/object'; // TODO: We should potentially move all these nspace related things // up a level to application.js @@ -23,11 +23,17 @@ const findActiveNspace = function(nspaces, nspace) { } return found; }; -export default Route.extend({ - repo: service('repository/dc'), - nspacesRepo: service('repository/nspace/disabled'), - settingsRepo: service('settings'), - model: function(params) { +export default class DcRoute extends Route { + @service('repository/dc') + repo; + + @service('repository/nspace/disabled') + nspacesRepo; + + @service('settings') + settingsRepo; + + model(params) { const app = this.modelFor('application'); return hash({ nspace: this.nspacesRepo.getActive(), @@ -61,44 +67,45 @@ export default Route.extend({ return model; } }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); // the model here is actually required for the entire application // but we need to wait until we are in this route so we know what the dc // and or nspace is if the below changes please revists the comments // in routes/application:model this.controllerFor('application').setProperties(model); - }, - actions: { - // TODO: This will eventually be deprecated please see - // https://deprecations.emberjs.com/v3.x/#toc_deprecate-router-events - willTransition: function(transition) { - this._super(...arguments); - if ( - typeof transition !== 'undefined' && - (transition.from.name.endsWith('nspaces.create') || - transition.from.name.startsWith('nspace.dc.acls.tokens')) - ) { - // Only when we create, reload the nspaces in the main menu to update them - // as we don't block for those - // And also when we [Use] a token reload the nspaces that you are able to see, - // including your permissions for being able to manage namespaces - // Potentially we should just do this on every single transition - // but then we would need to check to see if nspaces are enabled - const controller = this.controllerFor('application'); - Promise.all([ - this.nspacesRepo.findAll(), - this.nspacesRepo.authorize(get(controller, 'dc.Name'), get(controller, 'nspace.Name')), - ]).then(([nspaces, permissions]) => { - if (typeof controller !== 'undefined') { - controller.setProperties({ - nspaces: nspaces, - permissions: permissions, - }); - } - }); - } - }, - }, -}); + } + + // TODO: This will eventually be deprecated please see + // https://deprecations.emberjs.com/v3.x/#toc_deprecate-router-events + @action + willTransition(transition) { + undefined; + if ( + typeof transition !== 'undefined' && + (transition.from.name.endsWith('nspaces.create') || + transition.from.name.startsWith('nspace.dc.acls.tokens')) + ) { + // Only when we create, reload the nspaces in the main menu to update them + // as we don't block for those + // And also when we [Use] a token reload the nspaces that you are able to see, + // including your permissions for being able to manage namespaces + // Potentially we should just do this on every single transition + // but then we would need to check to see if nspaces are enabled + const controller = this.controllerFor('application'); + Promise.all([ + this.nspacesRepo.findAll(), + this.nspacesRepo.authorize(get(controller, 'dc.Name'), get(controller, 'nspace.Name')), + ]).then(([nspaces, permissions]) => { + if (typeof controller !== 'undefined') { + controller.setProperties({ + nspaces: nspaces, + permissions: permissions, + }); + } + }); + } + } +} diff --git a/ui-v2/app/routes/dc/acls.js b/ui/packages/consul-ui/app/routes/dc/acls.js similarity index 61% rename from ui-v2/app/routes/dc/acls.js rename to ui/packages/consul-ui/app/routes/dc/acls.js index a9e8e8e12..33a8e84e7 100644 --- a/ui-v2/app/routes/dc/acls.js +++ b/ui/packages/consul-ui/app/routes/dc/acls.js @@ -1,3 +1,3 @@ import Route from 'consul-ui/routing/route'; import WithBlockingActions from 'consul-ui/mixins/with-blocking-actions'; -export default Route.extend(WithBlockingActions, {}); +export default class AclsRoute extends Route.extend(WithBlockingActions) {} diff --git a/ui-v2/app/routes/dc/acls/create.js b/ui/packages/consul-ui/app/routes/dc/acls/create.js similarity index 65% rename from ui-v2/app/routes/dc/acls/create.js rename to ui/packages/consul-ui/app/routes/dc/acls/create.js index 89ba3f4e3..f35340681 100644 --- a/ui-v2/app/routes/dc/acls/create.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/create.js @@ -1,17 +1,21 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import WithAclActions from 'consul-ui/mixins/acl/with-actions'; -export default Route.extend(WithAclActions, { - templateName: 'dc/acls/edit', - repo: service('repository/acl'), - beforeModel: function() { +export default class CreateRoute extends Route.extend(WithAclActions) { + templateName = 'dc/acls/edit'; + + @service('repository/acl') + repo; + + beforeModel() { this.repo.invalidate(); - }, - model: function(params) { + } + + model(params) { this.item = this.repo.create({ Datacenter: this.modelFor('dc').dc.Name, }); @@ -20,14 +24,16 @@ export default Route.extend(WithAclActions, { item: this.item, types: ['management', 'client'], }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, - deactivate: function() { + } + + deactivate() { if (get(this.item, 'isNew')) { this.item.destroyRecord(); } - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/acls/edit.js b/ui/packages/consul-ui/app/routes/dc/acls/edit.js similarity index 59% rename from ui-v2/app/routes/dc/acls/edit.js rename to ui/packages/consul-ui/app/routes/dc/acls/edit.js index c3895b347..60ed4371e 100644 --- a/ui-v2/app/routes/dc/acls/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/edit.js @@ -1,20 +1,25 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithAclActions from 'consul-ui/mixins/acl/with-actions'; -export default Route.extend(WithAclActions, { - repo: service('repository/acl'), - settings: service('settings'), - model: function(params) { +export default class EditRoute extends Route.extend(WithAclActions) { + @service('repository/acl') + repo; + + @service('settings') + settings; + + model(params) { return hash({ item: this.repo.findBySlug(params.id, this.modelFor('dc').dc.Name), types: ['management', 'client'], }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/acls/index.js b/ui/packages/consul-ui/app/routes/dc/acls/index.js similarity index 75% rename from ui-v2/app/routes/dc/acls/index.js rename to ui/packages/consul-ui/app/routes/dc/acls/index.js index a78ab1669..41833229a 100644 --- a/ui-v2/app/routes/dc/acls/index.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/index.js @@ -1,20 +1,25 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import WithAclActions from 'consul-ui/mixins/acl/with-actions'; -export default Route.extend(WithAclActions, { - repo: service('repository/acl'), - settings: service('settings'), - queryParams: { +export default class IndexRoute extends Route.extend(WithAclActions) { + @service('repository/acl') + repo; + + @service('settings') + settings; + + queryParams = { search: { as: 'filter', replace: true, }, - }, - beforeModel: function(transition) { + }; + + beforeModel(transition) { return this.settings.findBySlug('token').then(token => { // If you don't have a token set or you have a // token set with AccessorID set to not null (new ACL mode) @@ -25,15 +30,17 @@ export default Route.extend(WithAclActions, { this.replaceWith('dc.acls.tokens'); } }); - }, - model: function(params) { + } + + model(params) { return hash({ items: this.repo.findAllByDatacenter(this.modelFor('dc').dc.Name), token: this.settings.findBySlug('token'), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/acls/policies/create.js b/ui/packages/consul-ui/app/routes/dc/acls/policies/create.js new file mode 100644 index 000000000..629f885fa --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/acls/policies/create.js @@ -0,0 +1,6 @@ +import Route from './edit'; +import CreatingRoute from 'consul-ui/mixins/creating-route'; + +export default class CreateRoute extends Route.extend(CreatingRoute) { + templateName = 'dc/acls/policies/edit'; +} diff --git a/ui-v2/app/routes/dc/acls/policies/edit.js b/ui/packages/consul-ui/app/routes/dc/acls/policies/edit.js similarity index 73% rename from ui-v2/app/routes/dc/acls/policies/edit.js rename to ui/packages/consul-ui/app/routes/dc/acls/policies/edit.js index 81e21d2e0..5705a180a 100644 --- a/ui-v2/app/routes/dc/acls/policies/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/policies/edit.js @@ -1,18 +1,22 @@ -import SingleRoute from 'consul-ui/routing/single'; import { inject as service } from '@ember/service'; +import SingleRoute from 'consul-ui/routing/single'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import WithPolicyActions from 'consul-ui/mixins/policy/with-actions'; -export default SingleRoute.extend(WithPolicyActions, { - repo: service('repository/policy'), - tokenRepo: service('repository/token'), - model: function(params) { +export default class EditRoute extends SingleRoute.extend(WithPolicyActions) { + @service('repository/policy') + repo; + + @service('repository/token') + tokenRepo; + + model(params) { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); const tokenRepo = this.tokenRepo; - return this._super(...arguments).then(model => { + return super.model(...arguments).then(model => { return hash({ ...model, ...{ @@ -29,9 +33,10 @@ export default SingleRoute.extend(WithPolicyActions, { }, }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/acls/policies/index.js b/ui/packages/consul-ui/app/routes/dc/acls/policies/index.js similarity index 65% rename from ui-v2/app/routes/dc/acls/policies/index.js rename to ui/packages/consul-ui/app/routes/dc/acls/policies/index.js index ca7b217d7..b137798ef 100644 --- a/ui-v2/app/routes/dc/acls/policies/index.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/policies/index.js @@ -1,19 +1,23 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithPolicyActions from 'consul-ui/mixins/policy/with-actions'; -export default Route.extend(WithPolicyActions, { - repo: service('repository/policy'), - queryParams: { +export default class IndexRoute extends Route.extend(WithPolicyActions) { + @service('repository/policy') repo; + + queryParams = { sortBy: 'sort', + dc: 'dc', + kind: 'kind', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { return hash({ ...this.repo.status({ items: this.repo.findAllByDatacenter( @@ -22,9 +26,10 @@ export default Route.extend(WithPolicyActions, { ), }), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/acls/roles/create.js b/ui/packages/consul-ui/app/routes/dc/acls/roles/create.js new file mode 100644 index 000000000..d565805a0 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/acls/roles/create.js @@ -0,0 +1,6 @@ +import Route from './edit'; +import CreatingRoute from 'consul-ui/mixins/creating-route'; + +export default class CreateRoute extends Route.extend(CreatingRoute) { + templateName = 'dc/acls/roles/edit'; +} diff --git a/ui-v2/app/routes/dc/acls/roles/edit.js b/ui/packages/consul-ui/app/routes/dc/acls/roles/edit.js similarity index 72% rename from ui-v2/app/routes/dc/acls/roles/edit.js rename to ui/packages/consul-ui/app/routes/dc/acls/roles/edit.js index e519f4f4a..e45862e96 100644 --- a/ui-v2/app/routes/dc/acls/roles/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/roles/edit.js @@ -1,18 +1,22 @@ -import SingleRoute from 'consul-ui/routing/single'; import { inject as service } from '@ember/service'; +import SingleRoute from 'consul-ui/routing/single'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import WithRoleActions from 'consul-ui/mixins/role/with-actions'; -export default SingleRoute.extend(WithRoleActions, { - repo: service('repository/role'), - tokenRepo: service('repository/token'), - model: function(params) { +export default class EditRoute extends SingleRoute.extend(WithRoleActions) { + @service('repository/role') + repo; + + @service('repository/token') + tokenRepo; + + model(params) { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); const tokenRepo = this.tokenRepo; - return this._super(...arguments).then(model => { + return super.model(...arguments).then(model => { return hash({ ...model, ...{ @@ -28,9 +32,10 @@ export default SingleRoute.extend(WithRoleActions, { }, }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/acls/roles/index.js b/ui/packages/consul-ui/app/routes/dc/acls/roles/index.js similarity index 68% rename from ui-v2/app/routes/dc/acls/roles/index.js rename to ui/packages/consul-ui/app/routes/dc/acls/roles/index.js index f0c52d616..0f8c2fa3e 100644 --- a/ui-v2/app/routes/dc/acls/roles/index.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/roles/index.js @@ -1,19 +1,21 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithRoleActions from 'consul-ui/mixins/role/with-actions'; -export default Route.extend(WithRoleActions, { - repo: service('repository/role'), - queryParams: { +export default class IndexRoute extends Route.extend(WithRoleActions) { + @service('repository/role') repo; + + queryParams = { sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { return hash({ ...this.repo.status({ items: this.repo.findAllByDatacenter( @@ -22,9 +24,10 @@ export default Route.extend(WithRoleActions, { ), }), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/acls/tokens/create.js b/ui/packages/consul-ui/app/routes/dc/acls/tokens/create.js new file mode 100644 index 000000000..bce6c5ade --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/acls/tokens/create.js @@ -0,0 +1,6 @@ +import Route from './edit'; +import CreatingRoute from 'consul-ui/mixins/creating-route'; + +export default class CreateRoute extends Route.extend(CreatingRoute) { + templateName = 'dc/acls/tokens/edit'; +} diff --git a/ui-v2/app/routes/dc/acls/tokens/edit.js b/ui/packages/consul-ui/app/routes/dc/acls/tokens/edit.js similarity index 55% rename from ui-v2/app/routes/dc/acls/tokens/edit.js rename to ui/packages/consul-ui/app/routes/dc/acls/tokens/edit.js index bf1b106ce..e2b0f2073 100644 --- a/ui-v2/app/routes/dc/acls/tokens/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/tokens/edit.js @@ -1,14 +1,18 @@ -import SingleRoute from 'consul-ui/routing/single'; import { inject as service } from '@ember/service'; +import SingleRoute from 'consul-ui/routing/single'; import { hash } from 'rsvp'; import WithTokenActions from 'consul-ui/mixins/token/with-actions'; -export default SingleRoute.extend(WithTokenActions, { - repo: service('repository/token'), - settings: service('settings'), - model: function(params, transition) { - return this._super(...arguments).then(model => { +export default class EditRoute extends SingleRoute.extend(WithTokenActions) { + @service('repository/token') + repo; + + @service('settings') + settings; + + model(params, transition) { + return super.model(...arguments).then(model => { return hash({ ...model, ...{ @@ -17,9 +21,10 @@ export default SingleRoute.extend(WithTokenActions, { }, }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/acls/tokens/index.js b/ui/packages/consul-ui/app/routes/dc/acls/tokens/index.js similarity index 76% rename from ui-v2/app/routes/dc/acls/tokens/index.js rename to ui/packages/consul-ui/app/routes/dc/acls/tokens/index.js index 29ac9dab2..78e3c18ef 100644 --- a/ui-v2/app/routes/dc/acls/tokens/index.js +++ b/ui/packages/consul-ui/app/routes/dc/acls/tokens/index.js @@ -1,19 +1,23 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import WithTokenActions from 'consul-ui/mixins/token/with-actions'; -export default Route.extend(WithTokenActions, { - repo: service('repository/token'), - settings: service('settings'), - queryParams: { + +export default class IndexRoute extends Route.extend(WithTokenActions) { + @service('repository/token') repo; + @service('settings') settings; + + queryParams = { sortBy: 'sort', + kind: 'kind', search: { as: 'filter', replace: true, }, - }, - beforeModel: function(transition) { + }; + + beforeModel(transition) { return this.settings.findBySlug('token').then(token => { // If you have a token set with AccessorID set to null (legacy mode) // then rewrite to the old acls @@ -23,8 +27,9 @@ export default Route.extend(WithTokenActions, { this.replaceWith('dc.acls'); } }); - }, - model: function(params) { + } + + model(params) { return hash({ ...this.repo.status({ items: this.repo.findAllByDatacenter( @@ -35,9 +40,10 @@ export default Route.extend(WithTokenActions, { nspace: this.modelFor('nspace').nspace.substr(1), token: this.settings.findBySlug('token'), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/index.js b/ui/packages/consul-ui/app/routes/dc/index.js similarity index 53% rename from ui-v2/app/routes/dc/index.js rename to ui/packages/consul-ui/app/routes/dc/index.js index e3694636c..064ea8548 100644 --- a/ui-v2/app/routes/dc/index.js +++ b/ui/packages/consul-ui/app/routes/dc/index.js @@ -1,7 +1,7 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - beforeModel: function() { +export default class IndexRoute extends Route { + beforeModel() { this.transitionTo('dc.services'); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/intentions/create.js b/ui/packages/consul-ui/app/routes/dc/intentions/create.js new file mode 100644 index 000000000..33c876eb1 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/intentions/create.js @@ -0,0 +1,5 @@ +import Route from './edit'; + +export default class CreateRoute extends Route { + templateName = 'dc/intentions/edit'; +} diff --git a/ui-v2/app/routes/dc/intentions/edit.js b/ui/packages/consul-ui/app/routes/dc/intentions/edit.js similarity index 68% rename from ui-v2/app/routes/dc/intentions/edit.js rename to ui/packages/consul-ui/app/routes/dc/intentions/edit.js index 5d24b52c2..c151cbf5b 100644 --- a/ui-v2/app/routes/dc/intentions/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/intentions/edit.js @@ -1,10 +1,12 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -export default Route.extend({ - repo: service('repository/intention'), - model: function({ intention_id }, transition) { +export default class EditRoute extends Route { + @service('repository/intention') + repo; + + model({ intention_id }, transition) { const dc = this.modelFor('dc').dc.Name; const nspace = '*'; return hash({ @@ -17,9 +19,10 @@ export default Route.extend({ Datacenter: dc, }), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/intentions/index.js b/ui/packages/consul-ui/app/routes/dc/intentions/index.js similarity index 59% rename from ui-v2/app/routes/dc/intentions/index.js rename to ui/packages/consul-ui/app/routes/dc/intentions/index.js index e3c3e2af6..412a53ad4 100644 --- a/ui-v2/app/routes/dc/intentions/index.js +++ b/ui/packages/consul-ui/app/routes/dc/intentions/index.js @@ -1,21 +1,24 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - queryParams: { +export default class IndexRoute extends Route { + queryParams = { sortBy: 'sort', + access: 'access', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { return { dc: this.modelFor('dc').dc.Name, nspace: this.modelFor('nspace').nspace.substr(1) || 'default', }; - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/kv/create.js b/ui/packages/consul-ui/app/routes/dc/kv/create.js new file mode 100644 index 000000000..892888a76 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/kv/create.js @@ -0,0 +1,5 @@ +import Route from './edit'; + +export default class CreateRoute extends Route { + templateName = 'dc/kv/edit'; +} diff --git a/ui-v2/app/routes/dc/kv/edit.js b/ui/packages/consul-ui/app/routes/dc/kv/edit.js similarity index 84% rename from ui-v2/app/routes/dc/kv/edit.js rename to ui/packages/consul-ui/app/routes/dc/kv/edit.js index 6005c13d4..a839cc798 100644 --- a/ui-v2/app/routes/dc/kv/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/kv/edit.js @@ -1,14 +1,18 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; import ascend from 'consul-ui/utils/ascend'; -export default Route.extend({ - repo: service('repository/kv'), - sessionRepo: service('repository/session'), - model: function(params) { +export default class EditRoute extends Route { + @service('repository/kv') + repo; + + @service('repository/session') + sessionRepo; + + model(params) { const create = this.routeName .split('.') @@ -46,9 +50,10 @@ export default Route.extend({ } return model; }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/kv/folder.js b/ui/packages/consul-ui/app/routes/dc/kv/folder.js similarity index 54% rename from ui-v2/app/routes/dc/kv/folder.js rename to ui/packages/consul-ui/app/routes/dc/kv/folder.js index 287c18c11..335447023 100644 --- a/ui-v2/app/routes/dc/kv/folder.js +++ b/ui/packages/consul-ui/app/routes/dc/kv/folder.js @@ -1,12 +1,13 @@ import Route from './index'; -export default Route.extend({ - templateName: 'dc/kv/index', - beforeModel: function(transition) { - this._super(...arguments); +export default class FolderRoute extends Route { + templateName = 'dc/kv/index'; + + beforeModel(transition) { + super.beforeModel(...arguments); const params = this.paramsFor('dc.kv.folder'); if (params.key === '/' || params.key == null) { return this.transitionTo('dc.kv.index'); } - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/kv/index.js b/ui/packages/consul-ui/app/routes/dc/kv/index.js similarity index 72% rename from ui-v2/app/routes/dc/kv/index.js rename to ui/packages/consul-ui/app/routes/dc/kv/index.js index 1f4525bb5..28668d01b 100644 --- a/ui-v2/app/routes/dc/kv/index.js +++ b/ui/packages/consul-ui/app/routes/dc/kv/index.js @@ -1,18 +1,21 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -import { get } from '@ember/object'; +import { get, action } from '@ember/object'; import isFolder from 'consul-ui/utils/isFolder'; -export default Route.extend({ - queryParams: { +export default class IndexRoute extends Route { + @service('repository/kv') repo; + + queryParams = { + sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, - repo: service('repository/kv'), - beforeModel: function() { + }; + + beforeModel() { // we are index or folder, so if the key doesn't have a trailing slash // add one to force a fake findBySlug const params = this.paramsFor(this.routeName); @@ -20,8 +23,9 @@ export default Route.extend({ if (!isFolder(key)) { return this.replaceWith(this.routeName, key + '/'); } - }, - model: function(params) { + } + + model(params) { let key = params.key || '/'; const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); @@ -43,17 +47,18 @@ export default Route.extend({ }, }); }); - }, - actions: { - error: function(e) { - if (e.errors && e.errors[0] && e.errors[0].status == '404') { - return this.transitionTo('dc.kv.index'); - } - throw e; - }, - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + @action + error(e) { + if (e.errors && e.errors[0] && e.errors[0].status == '404') { + return this.transitionTo('dc.kv.index'); + } + throw e; + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/kv/root-create.js b/ui/packages/consul-ui/app/routes/dc/kv/root-create.js new file mode 100644 index 000000000..796723b13 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/kv/root-create.js @@ -0,0 +1,3 @@ +import Route from './create'; + +export default class RootCreateRoute extends Route {} diff --git a/ui-v2/app/routes/dc/nodes/index.js b/ui/packages/consul-ui/app/routes/dc/nodes/index.js similarity index 66% rename from ui-v2/app/routes/dc/nodes/index.js rename to ui/packages/consul-ui/app/routes/dc/nodes/index.js index f49018ec8..9b6a926f6 100644 --- a/ui-v2/app/routes/dc/nodes/index.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/index.js @@ -1,26 +1,30 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -export default Route.extend({ - data: service('data-source/service'), - queryParams: { +export default class IndexRoute extends Route { + @service('data-source/service') data; + + queryParams = { sortBy: 'sort', + status: 'status', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { const dc = this.modelFor('dc').dc.Name; const nspace = '*'; return hash({ items: this.data.source(uri => uri`/${nspace}/${dc}/nodes`), leader: this.data.source(uri => uri`/${nspace}/${dc}/leader`), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show.js b/ui/packages/consul-ui/app/routes/dc/nodes/show.js similarity index 75% rename from ui-v2/app/routes/dc/nodes/show.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show.js index 7a8ae9330..087dc573f 100644 --- a/ui-v2/app/routes/dc/nodes/show.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show.js @@ -1,10 +1,12 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -export default Route.extend({ - data: service('data-source/service'), - model: function(params) { +export default class ShowRoute extends Route { + @service('data-source/service') + data; + + model(params) { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); const name = params.name; @@ -18,9 +20,10 @@ export default Route.extend({ tomography: this.data.source(uri => uri`/${nspace}/${dc}/coordinates/for-node/${name}`), }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/healthchecks.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js similarity index 56% rename from ui-v2/app/routes/dc/nodes/show/healthchecks.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js index 87d8c2665..feb40dc04 100644 --- a/ui-v2/app/routes/dc/nodes/show/healthchecks.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/healthchecks.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function() { +export default class HealthchecksRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/index.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/index.js similarity index 82% rename from ui-v2/app/routes/dc/nodes/show/index.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/index.js index a12f75bc1..f08762f5b 100644 --- a/ui-v2/app/routes/dc/nodes/show/index.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/index.js @@ -1,8 +1,8 @@ import Route from 'consul-ui/routing/route'; import { get } from '@ember/object'; -export default Route.extend({ - afterModel: function(model, transition) { +export default class IndexRoute extends Route { + afterModel(model, transition) { const parent = this.routeName .split('.') .slice(0, -1) @@ -11,5 +11,5 @@ export default Route.extend({ // so check the length here. const to = get(model, 'item.Checks.length') > 0 ? 'healthchecks' : 'services'; this.replaceWith(`${parent}.${to}`, model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/metadata.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/metadata.js similarity index 57% rename from ui-v2/app/routes/dc/nodes/show/metadata.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/metadata.js index 87d8c2665..1d065d45d 100644 --- a/ui-v2/app/routes/dc/nodes/show/metadata.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/metadata.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function() { +export default class MetadataRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/rtt.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/rtt.js similarity index 68% rename from ui-v2/app/routes/dc/nodes/show/rtt.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/rtt.js index 79a2eb6c2..6ae31b2e2 100644 --- a/ui-v2/app/routes/dc/nodes/show/rtt.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/rtt.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; import { get } from '@ember/object'; -export default Route.extend({ - model: function() { +export default class RttRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - afterModel: function(model, transition) { + } + + afterModel(model, transition) { if (!get(model, 'tomography.distances')) { const parent = this.routeName .split('.') @@ -17,9 +18,10 @@ export default Route.extend({ .join('.'); this.replaceWith(parent); } - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/services.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/services.js similarity index 60% rename from ui-v2/app/routes/dc/nodes/show/services.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/services.js index 99471befc..5dbd9b712 100644 --- a/ui-v2/app/routes/dc/nodes/show/services.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/services.js @@ -1,21 +1,23 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - queryParams: { +export default class ServicesRoute extends Route { + queryParams = { search: { as: 'filter', replace: true, }, - }, - model: function() { + }; + + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nodes/show/sessions.js b/ui/packages/consul-ui/app/routes/dc/nodes/show/sessions.js similarity index 53% rename from ui-v2/app/routes/dc/nodes/show/sessions.js rename to ui/packages/consul-ui/app/routes/dc/nodes/show/sessions.js index a2cc3deee..fb8bd9c7b 100644 --- a/ui-v2/app/routes/dc/nodes/show/sessions.js +++ b/ui/packages/consul-ui/app/routes/dc/nodes/show/sessions.js @@ -1,13 +1,20 @@ -import Route from 'consul-ui/routing/route'; +import { action } from '@ember/object'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithBlockingActions from 'consul-ui/mixins/with-blocking-actions'; -export default Route.extend(WithBlockingActions, { - data: service('data-source/service'), - sessionRepo: service('repository/session'), - feedback: service('feedback'), - model: function() { +export default class SessionsRoute extends Route.extend(WithBlockingActions) { + @service('data-source/service') + data; + + @service('repository/session') + sessionRepo; + + @service('feedback') + feedback; + + model() { const parent = this.routeName .split('.') .slice(0, -1) @@ -21,19 +28,20 @@ export default Route.extend(WithBlockingActions, { node: node, sessions: this.data.source(uri => uri`/${nspace}/${dc}/sessions/for-node/${node}`), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, - actions: { - invalidateSession: function(item) { - const route = this; - return this.feedback.execute(() => { - return this.sessionRepo.remove(item).then(() => { - route.refresh(); - }); - }, 'delete'); - }, - }, -}); + } + + @action + invalidateSession(item) { + const route = this; + return this.feedback.execute(() => { + return this.sessionRepo.remove(item).then(() => { + route.refresh(); + }); + }, 'delete'); + } +} diff --git a/ui-v2/app/routes/dc/nspaces/create.js b/ui/packages/consul-ui/app/routes/dc/nspaces/create.js similarity index 77% rename from ui-v2/app/routes/dc/nspaces/create.js rename to ui/packages/consul-ui/app/routes/dc/nspaces/create.js index fabd7a8fc..f1599c6eb 100644 --- a/ui-v2/app/routes/dc/nspaces/create.js +++ b/ui/packages/consul-ui/app/routes/dc/nspaces/create.js @@ -1,14 +1,15 @@ import Route from './edit'; import CreatingRoute from 'consul-ui/mixins/creating-route'; -export default Route.extend(CreatingRoute, { - templateName: 'dc/nspaces/edit', - beforeModel: function() { +export default class CreateRoute extends Route.extend(CreatingRoute) { + templateName = 'dc/nspaces/edit'; + + beforeModel() { // we need to skip CreatingRoute.beforeModel here // TODO(octane): ideally we'd like to call Route.beforeModel // but its not clear how to do that with old ember // maybe it will be more normal with modern ember // up until now we haven't been calling super here anyway // so this is probably ok until we can skip a parent super - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nspaces/edit.js b/ui/packages/consul-ui/app/routes/dc/nspaces/edit.js similarity index 72% rename from ui-v2/app/routes/dc/nspaces/edit.js rename to ui/packages/consul-ui/app/routes/dc/nspaces/edit.js index 68da2a276..28dc3408b 100644 --- a/ui-v2/app/routes/dc/nspaces/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/nspaces/edit.js @@ -1,15 +1,18 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithNspaceActions from 'consul-ui/mixins/nspace/with-actions'; -export default Route.extend(WithNspaceActions, { - repo: service('repository/nspace'), - isCreate: function(params, transition) { +export default class EditRoute extends Route.extend(WithNspaceActions) { + @service('repository/nspace') + repo; + + isCreate(params, transition) { return transition.targetName.split('.').pop() === 'create'; - }, - model: function(params, transition) { + } + + model(params, transition) { const repo = this.repo; const create = this.isCreate(...arguments); const dc = this.modelFor('dc').dc.Name; @@ -27,9 +30,10 @@ export default Route.extend(WithNspaceActions, { ) : repo.findBySlug(params.name), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/nspaces/index.js b/ui/packages/consul-ui/app/routes/dc/nspaces/index.js similarity index 58% rename from ui-v2/app/routes/dc/nspaces/index.js rename to ui/packages/consul-ui/app/routes/dc/nspaces/index.js index 8bcc45979..39505ec67 100644 --- a/ui-v2/app/routes/dc/nspaces/index.js +++ b/ui/packages/consul-ui/app/routes/dc/nspaces/index.js @@ -1,25 +1,28 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import WithNspaceActions from 'consul-ui/mixins/nspace/with-actions'; -export default Route.extend(WithNspaceActions, { - data: service('data-source/service'), - repo: service('repository/nspace'), - queryParams: { +export default class IndexRoute extends Route.extend(WithNspaceActions) { + @service('data-source/service') data; + @service('repository/nspace') repo; + + queryParams = { sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { return hash({ items: this.data.source(uri => uri`/*/*/namespaces`), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/index.js b/ui/packages/consul-ui/app/routes/dc/services/index.js similarity index 75% rename from ui-v2/app/routes/dc/services/index.js rename to ui/packages/consul-ui/app/routes/dc/services/index.js index 58441da9d..7328daeb7 100644 --- a/ui-v2/app/routes/dc/services/index.js +++ b/ui/packages/consul-ui/app/routes/dc/services/index.js @@ -1,20 +1,22 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -export default Route.extend({ - data: service('data-source/service'), - queryParams: { +export default class IndexRoute extends Route { + @service('data-source/service') data; + + queryParams = { + sortBy: 'sort', + status: 'status', + source: 'source', + kind: 'kind', search: { as: 'filter', replace: true, }, - // temporary support of old style status - status: { - as: 'status', - }, - }, - model: function(params) { + }; + + model(params) { let terms = params.s || ''; // we check for the old style `status` variable here // and convert it to the new style filter=status:critical @@ -37,9 +39,10 @@ export default Route.extend({ terms: terms !== '' ? terms.split('\n') : [], items: this.data.source(uri => uri`/${nspace}/${dc}/services`), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/instance.js b/ui/packages/consul-ui/app/routes/dc/services/instance.js similarity index 89% rename from ui-v2/app/routes/dc/services/instance.js rename to ui/packages/consul-ui/app/routes/dc/services/instance.js index 0bac35b1c..ae73574a1 100644 --- a/ui-v2/app/routes/dc/services/instance.js +++ b/ui/packages/consul-ui/app/routes/dc/services/instance.js @@ -1,11 +1,13 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; -export default Route.extend({ - data: service('data-source/service'), - model: function(params) { +export default class InstanceRoute extends Route { + @service('data-source/service') + data; + + model(params) { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1) || 'default'; return hash({ @@ -47,9 +49,10 @@ export default Route.extend({ }); }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/instance/addresses.js b/ui/packages/consul-ui/app/routes/dc/services/instance/addresses.js similarity index 69% rename from ui-v2/app/routes/dc/services/instance/addresses.js rename to ui/packages/consul-ui/app/routes/dc/services/instance/addresses.js index 80ca41f6d..d0b857175 100644 --- a/ui-v2/app/routes/dc/services/instance/addresses.js +++ b/ui/packages/consul-ui/app/routes/dc/services/instance/addresses.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; import { get } from '@ember/object'; -export default Route.extend({ - model: function() { +export default class AddressesRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - afterModel: function(model, transition) { + } + + afterModel(model, transition) { if (get(model, 'item.Service.Kind') !== 'mesh-gateway') { const parent = this.routeName .split('.') @@ -17,9 +18,10 @@ export default Route.extend({ .join('.'); this.replaceWith(parent); } - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/services/instance/exposedpaths.js b/ui/packages/consul-ui/app/routes/dc/services/instance/exposedpaths.js new file mode 100644 index 000000000..e0ae7969e --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/services/instance/exposedpaths.js @@ -0,0 +1,16 @@ +import Route from 'consul-ui/routing/route'; + +export default class ExposedpathsRoute extends Route { + model() { + const parent = this.routeName + .split('.') + .slice(0, -1) + .join('.'); + return this.modelFor(parent); + } + + setupController(controller, model) { + super.setupController(...arguments); + controller.setProperties(model); + } +} diff --git a/ui-v2/app/routes/dc/services/instance/healthchecks.js b/ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js similarity index 56% rename from ui-v2/app/routes/dc/services/instance/healthchecks.js rename to ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js index 87d8c2665..feb40dc04 100644 --- a/ui-v2/app/routes/dc/services/instance/healthchecks.js +++ b/ui/packages/consul-ui/app/routes/dc/services/instance/healthchecks.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function() { +export default class HealthchecksRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/instance/index.js b/ui/packages/consul-ui/app/routes/dc/services/instance/index.js similarity index 100% rename from ui-v2/app/routes/dc/services/instance/index.js rename to ui/packages/consul-ui/app/routes/dc/services/instance/index.js diff --git a/ui-v2/app/routes/dc/services/instance/metadata.js b/ui/packages/consul-ui/app/routes/dc/services/instance/metadata.js similarity index 57% rename from ui-v2/app/routes/dc/services/instance/metadata.js rename to ui/packages/consul-ui/app/routes/dc/services/instance/metadata.js index 87d8c2665..1d065d45d 100644 --- a/ui-v2/app/routes/dc/services/instance/metadata.js +++ b/ui/packages/consul-ui/app/routes/dc/services/instance/metadata.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function() { +export default class MetadataRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/instances.js b/ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js similarity index 57% rename from ui-v2/app/routes/dc/services/show/instances.js rename to ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js index 99471befc..7dece4286 100644 --- a/ui-v2/app/routes/dc/services/show/instances.js +++ b/ui/packages/consul-ui/app/routes/dc/services/instance/upstreams.js @@ -1,21 +1,24 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - queryParams: { +export default class UpstreamsRoute extends Route { + queryParams = { + sortBy: 'sort', search: { as: 'filter', replace: true, }, - }, - model: function() { + }; + + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/notfound.js b/ui/packages/consul-ui/app/routes/dc/services/notfound.js similarity index 58% rename from ui-v2/app/routes/dc/services/notfound.js rename to ui/packages/consul-ui/app/routes/dc/services/notfound.js index 74dda4a60..d58d8fa61 100644 --- a/ui-v2/app/routes/dc/services/notfound.js +++ b/ui/packages/consul-ui/app/routes/dc/services/notfound.js @@ -1,7 +1,7 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - redirect: function(model, transition) { +export default class NotfoundRoute extends Route { + redirect(model, transition) { this.replaceWith('dc.services.instance', model.name, model.node, model.id); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show.js b/ui/packages/consul-ui/app/routes/dc/services/show.js similarity index 69% rename from ui-v2/app/routes/dc/services/show.js rename to ui/packages/consul-ui/app/routes/dc/services/show.js index 63e621b35..b3fa4c15e 100644 --- a/ui-v2/app/routes/dc/services/show.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show.js @@ -1,12 +1,30 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; +import { action, setProperties } from '@ember/object'; -export default Route.extend({ - data: service('data-source/service'), - settings: service('settings'), - model: function(params, transition) { +export default class ShowRoute extends Route { + @service('data-source/service') data; + @service('repository/intention') repo; + @service('ui-config') config; + + @action + async createIntention(source, destination) { + const intention = service.Intention; + const model = this.repo.create({ + Datacenter: source.Datacenter, + SourceName: source.Name, + SourceNS: source.Namespace || 'default', + DestinationName: destination.Name, + DestinationNS: destination.Namespace || 'default', + Action: 'allow', + }); + await this.repo.persist(model); + this.refresh(); + } + + model(params, transition) { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); return hash({ @@ -16,7 +34,7 @@ export default Route.extend({ items: this.data.source( uri => uri`/${nspace}/${dc}/service-instances/for-service/${params.name}` ), - urls: this.settings.findBySlug('urls'), + urls: this.config.get().dashboard_url_templates, chain: null, proxies: [], topology: null, @@ -54,9 +72,10 @@ export default Route.extend({ ), }); }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/index.js b/ui/packages/consul-ui/app/routes/dc/services/show/index.js similarity index 74% rename from ui-v2/app/routes/dc/services/show/index.js rename to ui/packages/consul-ui/app/routes/dc/services/show/index.js index 5b9171d8e..18647d63f 100644 --- a/ui-v2/app/routes/dc/services/show/index.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/index.js @@ -1,8 +1,8 @@ import Route from '@ember/routing/route'; import { get } from '@ember/object'; -export default Route.extend({ - afterModel: function(model, transition) { +export default class IndexRoute extends Route { + afterModel(model, transition) { const parent = this.routeName .split('.') .slice(0, -1) @@ -11,12 +11,12 @@ export default Route.extend({ // so check the length here. let to = 'topology'; const parentModel = this.modelFor(parent); - + const hasProxy = get(parentModel, 'proxies.length') !== 0; const kind = get(parentModel, 'items.firstObject.Service.Kind'); switch (kind) { case 'ingress-gateway': - if (!get(parentModel, 'topology.Exists')) { + if (!get(parentModel, 'topology.Datacenter')) { to = 'upstreams'; } break; @@ -27,11 +27,11 @@ export default Route.extend({ to = 'instances'; break; default: - if (!get(parentModel, 'topology.Exists')) { + if (!hasProxy || !get(parentModel, 'topology.Datacenter')) { to = 'instances'; } } this.replaceWith(`${parent}.${to}`, parentModel); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/instances.js b/ui/packages/consul-ui/app/routes/dc/services/show/instances.js new file mode 100644 index 000000000..52a39ab82 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/services/show/instances.js @@ -0,0 +1,26 @@ +import Route from 'consul-ui/routing/route'; + +export default class InstancesRoute extends Route { + queryParams = { + sortBy: 'sort', + status: 'status', + source: 'source', + search: { + as: 'filter', + replace: true, + }, + }; + + model() { + const parent = this.routeName + .split('.') + .slice(0, -1) + .join('.'); + return this.modelFor(parent); + } + + setupController(controller, model) { + super.setupController(...arguments); + controller.setProperties(model); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/intentions.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions.js new file mode 100644 index 000000000..73133f7ac --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/services/show/intentions.js @@ -0,0 +1,8 @@ +import Route from 'consul-ui/routing/route'; + +export default class IntentionsRoute extends Route { + setupController(controller, model) { + super.setupController(...arguments); + controller.setProperties(model); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js new file mode 100644 index 000000000..d505070cf --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/create.js @@ -0,0 +1,5 @@ +import Route from './edit'; + +export default class CreateRoute extends Route { + templateName = 'dc/services/show/intentions/edit'; +} diff --git a/ui-v2/app/routes/dc/services/show/intentions/edit.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/edit.js similarity index 59% rename from ui-v2/app/routes/dc/services/show/intentions/edit.js rename to ui/packages/consul-ui/app/routes/dc/services/show/intentions/edit.js index d721d9578..b241e75d9 100644 --- a/ui-v2/app/routes/dc/services/show/intentions/edit.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/edit.js @@ -1,16 +1,17 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function(params, transition) { +export default class EditRoute extends Route { + model(params, transition) { return { nspace: '*', dc: this.paramsFor('dc').dc, service: this.paramsFor('dc.services.show').name, src: params.intention_id, }; - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/intentions/index.js b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js similarity index 59% rename from ui-v2/app/routes/dc/services/show/intentions/index.js rename to ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js index f0e2b3a50..a1bd38877 100644 --- a/ui-v2/app/routes/dc/services/show/intentions/index.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/intentions/index.js @@ -1,21 +1,25 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - queryParams: { +export default class IndexRoute extends Route { + queryParams = { + sortBy: 'sort', + access: 'access', search: { as: 'filter', replace: true, }, - }, - model: function(params) { + }; + + model(params) { return { dc: this.modelFor('dc').dc.Name, nspace: this.modelFor('nspace').nspace.substr(1) || 'default', slug: this.paramsFor('dc.services.show').name, }; - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/routing.js b/ui/packages/consul-ui/app/routes/dc/services/show/routing.js similarity index 67% rename from ui-v2/app/routes/dc/services/show/routing.js rename to ui/packages/consul-ui/app/routes/dc/services/show/routing.js index a4f90f65e..e5045782b 100644 --- a/ui-v2/app/routes/dc/services/show/routing.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/routing.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; import { get } from '@ember/object'; -export default Route.extend({ - model: function() { +export default class RoutingRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - afterModel: function(model, transition) { + } + + afterModel(model, transition) { if (!get(model, 'chain')) { const parent = this.routeName .split('.') @@ -17,9 +18,10 @@ export default Route.extend({ .join('.'); this.replaceWith(parent); } - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/services.js b/ui/packages/consul-ui/app/routes/dc/services/show/services.js similarity index 74% rename from ui-v2/app/routes/dc/services/show/services.js rename to ui/packages/consul-ui/app/routes/dc/services/show/services.js index 096c9ff8b..927d4b7be 100644 --- a/ui-v2/app/routes/dc/services/show/services.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/services.js @@ -1,10 +1,12 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; -export default Route.extend({ - data: service('data-source/service'), - model: function() { +export default class ServicesRoute extends Route { + @service('data-source/service') + data; + + model() { const dc = this.modelFor('dc').dc.Name; const nspace = this.modelFor('nspace').nspace.substr(1); const parent = this.routeName @@ -17,9 +19,10 @@ export default Route.extend({ nspace: nspace, gatewayServices: this.data.source(uri => uri`/${nspace}/${dc}/gateways/for-service/${name}`), }); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/tags.js b/ui/packages/consul-ui/app/routes/dc/services/show/tags.js similarity index 57% rename from ui-v2/app/routes/dc/services/show/tags.js rename to ui/packages/consul-ui/app/routes/dc/services/show/tags.js index 87d8c2665..3c6b4e0f0 100644 --- a/ui-v2/app/routes/dc/services/show/tags.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/tags.js @@ -1,15 +1,16 @@ import Route from 'consul-ui/routing/route'; -export default Route.extend({ - model: function() { +export default class TagsRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui-v2/app/routes/dc/services/show/topology.js b/ui/packages/consul-ui/app/routes/dc/services/show/topology.js similarity index 56% rename from ui-v2/app/routes/dc/services/show/topology.js rename to ui/packages/consul-ui/app/routes/dc/services/show/topology.js index 4311f0d0c..b5c644e52 100644 --- a/ui-v2/app/routes/dc/services/show/topology.js +++ b/ui/packages/consul-ui/app/routes/dc/services/show/topology.js @@ -1,15 +1,16 @@ import Route from '@ember/routing/route'; -export default Route.extend({ - model: function() { +export default class TopologyRoute extends Route { + model() { const parent = this.routeName .split('.') .slice(0, -1) .join('.'); return this.modelFor(parent); - }, - setupController: function(controller, model) { - this._super(...arguments); + } + + setupController(controller, model) { + super.setupController(...arguments); controller.setProperties(model); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js b/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js new file mode 100644 index 000000000..338d607d4 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/dc/services/show/upstreams.js @@ -0,0 +1,5 @@ +import Route from './services'; + +export default class UpstreamsRoute extends Route { + templateName = 'dc/services/show/upstreams'; +} diff --git a/ui-v2/app/routes/index.js b/ui/packages/consul-ui/app/routes/index.js similarity index 64% rename from ui-v2/app/routes/index.js rename to ui/packages/consul-ui/app/routes/index.js index b469ac2ee..fc88f0570 100644 --- a/ui-v2/app/routes/index.js +++ b/ui/packages/consul-ui/app/routes/index.js @@ -1,16 +1,19 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { get } from '@ember/object'; -export default Route.extend({ - repo: service('repository/dc'), - model: function(params) { +export default class IndexRoute extends Route { + @service('repository/dc') + repo; + + model(params) { return hash({ item: this.repo.getActive(), }); - }, - afterModel: function({ item }, transition) { + } + + afterModel({ item }, transition) { this.transitionTo('dc.services', get(item, 'Name')); - }, -}); + } +} diff --git a/ui-v2/app/routes/notfound.js b/ui/packages/consul-ui/app/routes/notfound.js similarity index 67% rename from ui-v2/app/routes/notfound.js rename to ui/packages/consul-ui/app/routes/notfound.js index bd50ac724..3ee38c6be 100644 --- a/ui-v2/app/routes/notfound.js +++ b/ui/packages/consul-ui/app/routes/notfound.js @@ -1,10 +1,10 @@ import Route from 'consul-ui/routing/route'; import Error from '@ember/error'; -export default Route.extend({ - beforeModel: function() { +export default class NotfoundRoute extends Route { + beforeModel() { const e = new Error('Page not found'); e.code = 404; throw e; - }, -}); + } +} diff --git a/ui-v2/app/routes/nspace.js b/ui/packages/consul-ui/app/routes/nspace.js similarity index 93% rename from ui-v2/app/routes/nspace.js rename to ui/packages/consul-ui/app/routes/nspace.js index 9a1acc3e5..148c28846 100644 --- a/ui-v2/app/routes/nspace.js +++ b/ui/packages/consul-ui/app/routes/nspace.js @@ -1,14 +1,18 @@ -import Route from 'consul-ui/routing/route'; import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; import { hash } from 'rsvp'; import { getOwner } from '@ember/application'; import { env } from 'consul-ui/env'; import transitionable from 'consul-ui/utils/routing/transitionable'; const DEFAULT_NSPACE_PARAM = '~default'; -export default Route.extend({ - repo: service('repository/dc'), - router: service('router'), +export default class NspaceRoute extends Route { + @service('repository/dc') + repo; + + @service('router') + router; + // The ember router seems to change the priority of individual routes // depending on whether they are wildcard routes or not. // This means that the namespace routes will be recognized before kv ones @@ -22,7 +26,7 @@ export default Route.extend({ // information that we generated onto the route, which leaves us with the route // we actually want. Using this final route information we redirect the user // to where they wanted to go. - beforeModel: function(transition) { + beforeModel(transition) { if (!this.paramsFor('nspace').nspace.startsWith('~')) { const url = `${env('rootURL')}${DEFAULT_NSPACE_PARAM}${transition.intent.url}`; const route = this.router.recognize(url); @@ -37,13 +41,14 @@ export default Route.extend({ ...params.slice(1), ]); } - }, - model: function(params) { + } + + model(params) { return hash({ item: this.repo.getActive(), nspace: params.nspace, }); - }, + } /** * We need to redirect if someone doesn't specify the section they want, @@ -64,5 +69,5 @@ export default Route.extend({ this.transitionTo('dc.services', model.nspace); } } - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/routes/settings.js b/ui/packages/consul-ui/app/routes/settings.js new file mode 100644 index 000000000..6cdf65380 --- /dev/null +++ b/ui/packages/consul-ui/app/routes/settings.js @@ -0,0 +1,51 @@ +import { inject as service } from '@ember/service'; +import Route from 'consul-ui/routing/route'; +import { hash } from 'rsvp'; +import { get, set, action } from '@ember/object'; + +export default class SettingsRoute extends Route { + @service('client/http') + client; + + @service('settings') + repo; + + @service('repository/dc') + dcRepo; + + @service('repository/nspace/disabled') + nspacesRepo; + + model(params) { + const app = this.modelFor('application'); + return hash({ + item: this.repo.findAll(), + dc: this.dcRepo.getActive(undefined, app.dcs), + nspace: this.nspacesRepo.getActive(), + }).then(model => { + if (typeof get(model.item, 'client.blocking') === 'undefined') { + set(model, 'item.client', { blocking: true }); + } + return model; + }); + } + + setupController(controller, model) { + super.setupController(...arguments); + controller.setProperties(model); + } + + @action + update(slug, item) { + switch (slug) { + case 'client': + if (!get(item, 'client.blocking')) { + this.client.abort(); + } + break; + } + this.repo.persist({ + [slug]: item, + }); + } +} diff --git a/ui-v2/app/routing/route.js b/ui/packages/consul-ui/app/routing/route.js similarity index 100% rename from ui-v2/app/routing/route.js rename to ui/packages/consul-ui/app/routing/route.js diff --git a/ui-v2/app/routing/single.js b/ui/packages/consul-ui/app/routing/single.js similarity index 100% rename from ui-v2/app/routing/single.js rename to ui/packages/consul-ui/app/routing/single.js diff --git a/ui-v2/app/search/filters/acl.js b/ui/packages/consul-ui/app/search/filters/acl.js similarity index 100% rename from ui-v2/app/search/filters/acl.js rename to ui/packages/consul-ui/app/search/filters/acl.js diff --git a/ui-v2/app/search/filters/kv.js b/ui/packages/consul-ui/app/search/filters/kv.js similarity index 100% rename from ui-v2/app/search/filters/kv.js rename to ui/packages/consul-ui/app/search/filters/kv.js diff --git a/ui-v2/app/search/filters/node.js b/ui/packages/consul-ui/app/search/filters/node.js similarity index 100% rename from ui-v2/app/search/filters/node.js rename to ui/packages/consul-ui/app/search/filters/node.js diff --git a/ui-v2/app/search/filters/node/service.js b/ui/packages/consul-ui/app/search/filters/node/service.js similarity index 100% rename from ui-v2/app/search/filters/node/service.js rename to ui/packages/consul-ui/app/search/filters/node/service.js diff --git a/ui-v2/app/search/filters/nspace.js b/ui/packages/consul-ui/app/search/filters/nspace.js similarity index 100% rename from ui-v2/app/search/filters/nspace.js rename to ui/packages/consul-ui/app/search/filters/nspace.js diff --git a/ui-v2/app/search/filters/policy.js b/ui/packages/consul-ui/app/search/filters/policy.js similarity index 100% rename from ui-v2/app/search/filters/policy.js rename to ui/packages/consul-ui/app/search/filters/policy.js diff --git a/ui-v2/app/search/filters/role.js b/ui/packages/consul-ui/app/search/filters/role.js similarity index 100% rename from ui-v2/app/search/filters/role.js rename to ui/packages/consul-ui/app/search/filters/role.js diff --git a/ui-v2/app/search/filters/service.js b/ui/packages/consul-ui/app/search/filters/service.js similarity index 100% rename from ui-v2/app/search/filters/service.js rename to ui/packages/consul-ui/app/search/filters/service.js diff --git a/ui-v2/app/search/filters/service/node.js b/ui/packages/consul-ui/app/search/filters/service/node.js similarity index 100% rename from ui-v2/app/search/filters/service/node.js rename to ui/packages/consul-ui/app/search/filters/service/node.js diff --git a/ui-v2/app/search/filters/token.js b/ui/packages/consul-ui/app/search/filters/token.js similarity index 100% rename from ui-v2/app/search/filters/token.js rename to ui/packages/consul-ui/app/search/filters/token.js diff --git a/ui/packages/consul-ui/app/search/predicates/intention.js b/ui/packages/consul-ui/app/search/predicates/intention.js new file mode 100644 index 000000000..12da95a26 --- /dev/null +++ b/ui/packages/consul-ui/app/search/predicates/intention.js @@ -0,0 +1,12 @@ +export default () => term => item => { + const source = item.SourceName.toLowerCase(); + const destination = item.DestinationName.toLowerCase(); + const allLabel = 'All Services (*)'.toLowerCase(); + const lowerTerm = term.toLowerCase(); + return ( + source.indexOf(lowerTerm) !== -1 || + destination.indexOf(lowerTerm) !== -1 || + (source === '*' && allLabel.indexOf(lowerTerm) !== -1) || + (destination === '*' && allLabel.indexOf(lowerTerm) !== -1) + ); +}; diff --git a/ui/packages/consul-ui/app/search/predicates/upstream-instance.js b/ui/packages/consul-ui/app/search/predicates/upstream-instance.js new file mode 100644 index 000000000..2d1a993df --- /dev/null +++ b/ui/packages/consul-ui/app/search/predicates/upstream-instance.js @@ -0,0 +1,12 @@ +export default () => term => item => { + const lowerTerm = term.toLowerCase(); + return Object.entries(item) + .filter(([key, value]) => key !== 'DestinationType') + .some( + ([key, value]) => + value + .toString() + .toLowerCase() + .indexOf(lowerTerm) !== -1 + ); +}; diff --git a/ui/packages/consul-ui/app/serializers/acl.js b/ui/packages/consul-ui/app/serializers/acl.js new file mode 100644 index 000000000..f363532b0 --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/acl.js @@ -0,0 +1,14 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/acl'; + +export default class AclSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord( + cb => respond((headers, body) => cb(headers, body[0])), + query + ); + } +} diff --git a/ui-v2/app/serializers/application.js b/ui/packages/consul-ui/app/serializers/application.js similarity index 64% rename from ui-v2/app/serializers/application.js rename to ui/packages/consul-ui/app/serializers/application.js index 1eeefdda4..9176a0842 100644 --- a/ui-v2/app/serializers/application.js +++ b/ui/packages/consul-ui/app/serializers/application.js @@ -1,5 +1,4 @@ import Serializer from './http'; - import { set } from '@ember/object'; import { HEADERS_SYMBOL as HTTP_HEADERS_SYMBOL, @@ -27,9 +26,9 @@ const attachHeaders = function(headers, body, query = {}) { Object.keys(headers).forEach(function(key) { lower[key.toLowerCase()] = headers[key]; }); - // Add a 'pretend' Datacenter/Nspace header, they are not headers - // the come from the request but we add them here so we can use them later - // for store reconciliation + // Add a 'pretend' Datacenter/Nspace header, they are not headers the come + // from the request but we add them here so we can use them later for store + // reconciliation if (typeof query.dc !== 'undefined') { lower[HTTP_HEADERS_DATACENTER.toLowerCase()] = query.dc; } @@ -40,10 +39,11 @@ const attachHeaders = function(headers, body, query = {}) { return body; }; -export default Serializer.extend({ - attachHeaders: attachHeaders, - fingerprint: createFingerprinter(DATACENTER_KEY, NSPACE_KEY), - respondForQuery: function(respond, query) { +export default class ApplicationSerializer extends Serializer { + attachHeaders = attachHeaders; + fingerprint = createFingerprinter(DATACENTER_KEY, NSPACE_KEY); + + respondForQuery(respond, query) { return respond((headers, body) => attachHeaders( headers, @@ -51,13 +51,15 @@ export default Serializer.extend({ query ) ); - }, - respondForQueryRecord: function(respond, query) { + } + + respondForQueryRecord(respond, query) { return respond((headers, body) => attachHeaders(headers, this.fingerprint(this.primaryKey, this.slugKey, query.dc)(body), query) ); - }, - respondForCreateRecord: function(respond, serialized, data) { + } + + respondForCreateRecord(respond, serialized, data) { const slugKey = this.slugKey; const primaryKey = this.primaryKey; return respond((headers, body) => { @@ -68,29 +70,32 @@ export default Serializer.extend({ // Creates need a primaryKey adding return this.fingerprint(primaryKey, slugKey, data[DATACENTER_KEY])(body); }); - }, - respondForUpdateRecord: function(respond, serialized, data) { + } + + respondForUpdateRecord(respond, serialized, data) { const slugKey = this.slugKey; const primaryKey = this.primaryKey; return respond((headers, body) => { // If updates are true use the info we already have - // TODO: We may aswell avoid re-fingerprinting here if we are just - // going to reuse data then its already fingerprinted and as the response - // is true we don't have anything changed so the old fingerprint stays the same - // as long as nothing in the fingerprint has been edited (the namespace?) + // TODO: We may aswell avoid re-fingerprinting here if we are just going + // to reuse data then its already fingerprinted and as the response is + // true we don't have anything changed so the old fingerprint stays the + // same as long as nothing in the fingerprint has been edited (the + // namespace?) if (body === true) { body = data; } return this.fingerprint(primaryKey, slugKey, data[DATACENTER_KEY])(body); }); - }, - respondForDeleteRecord: function(respond, serialized, data) { + } + + respondForDeleteRecord(respond, serialized, data) { const slugKey = this.slugKey; const primaryKey = this.primaryKey; return respond((headers, body) => { - // Deletes only need the primaryKey/uid returning - // and they need the slug key AND potential namespace in order to - // create the correct uid/fingerprint + // Deletes only need the primaryKey/uid returning and they need the slug + // key AND potential namespace in order to create the correct + // uid/fingerprint return { [primaryKey]: this.fingerprint( primaryKey, @@ -102,24 +107,25 @@ export default Serializer.extend({ })[primaryKey], }; }); - }, - // this could get confusing if you tried to override - // say `normalizeQueryResponse` - // TODO: consider creating a method for each one of the `normalize...Response` family - normalizeResponse: function(store, modelClass, payload, id, requestType) { + } + + // this could get confusing if you tried to override say + // `normalizeQueryResponse` + // TODO: consider creating a method for each one of the + // `normalize...Response` family + normalizeResponse(store, modelClass, payload, id, requestType) { const normalizedPayload = this.normalizePayload(payload, id, requestType); - // put the meta onto the response, here this is ok - // as JSON-API allows this and our specific data is now in - // response[primaryModelClass.modelName] - // so we aren't in danger of overwriting anything - // (which was the reason for the Symbol-like property earlier) - // use a method modelled on ember-data methods so we have the opportunity to - // do this on a per-model level + // put the meta onto the response, here this is ok as JSON-API allows this + // and our specific data is now in response[primaryModelClass.modelName] + // so we aren't in danger of overwriting anything (which was the reason + // for the Symbol-like property earlier) use a method modelled on + // ember-data methods so we have the opportunity to do this on a per-model + // level const meta = this.normalizeMeta(store, modelClass, normalizedPayload, id, requestType); if (requestType !== 'query') { normalizedPayload.meta = meta; } - const res = this._super( + const res = super.normalizeResponse( store, modelClass, { @@ -129,22 +135,24 @@ export default Serializer.extend({ id, requestType ); - // If the result of the super normalizeResponse is undefined - // its because the JSONSerializer (which REST inherits from) - // doesn't recognise the requestType, in this case its likely to be an 'action' - // request rather than a specific 'load me some data' one. - // Therefore its ok to bypass the store here for the moment - // we currently use this for self, but it also would affect any custom - // methods that use a serializer in our custom service/store + // If the result of the super normalizeResponse is undefined its because + // the JSONSerializer (which REST inherits from) doesn't recognise the + // requestType, in this case its likely to be an 'action' request rather + // than a specific 'load me some data' one. Therefore its ok to bypass the + // store here for the moment we currently use this for self, but it also + // would affect any custom methods that use a serializer in our custom + // service/store if (typeof res === 'undefined') { return payload; } return res; - }, - timestamp: function() { + } + + timestamp() { return new Date().getTime(); - }, - normalizeMeta: function(store, modelClass, payload, id, requestType) { + } + + normalizeMeta(store, modelClass, payload, id, requestType) { // Pick the meta/headers back off the payload and cleanup const headers = payload[HTTP_HEADERS_SYMBOL] || {}; delete payload[HTTP_HEADERS_SYMBOL]; @@ -167,8 +175,9 @@ export default Serializer.extend({ }); } return meta; - }, - normalizePayload: function(payload, id, requestType) { + } + + normalizePayload(payload, id, requestType) { return payload; - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/serializers/coordinate.js b/ui/packages/consul-ui/app/serializers/coordinate.js new file mode 100644 index 000000000..2882ec265 --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/coordinate.js @@ -0,0 +1,7 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/coordinate'; + +export default class CoordinateSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; +} diff --git a/ui-v2/app/serializers/dc.js b/ui/packages/consul-ui/app/serializers/dc.js similarity index 63% rename from ui-v2/app/serializers/dc.js rename to ui/packages/consul-ui/app/serializers/dc.js index 46471a736..8fdd3ee6a 100644 --- a/ui-v2/app/serializers/dc.js +++ b/ui/packages/consul-ui/app/serializers/dc.js @@ -1,13 +1,15 @@ import Serializer from './application'; -export default Serializer.extend({ - primaryKey: 'Name', - respondForQuery: function(respond, query) { +export default class DcSerializer extends Serializer { + primaryKey = 'Name'; + + respondForQuery(respond, query) { return respond(function(headers, body) { return body; }); - }, - normalizePayload: function(payload, id, requestType) { + } + + normalizePayload(payload, id, requestType) { switch (requestType) { case 'query': return payload.map(item => { @@ -17,5 +19,5 @@ export default Serializer.extend({ }); } return payload; - }, -}); + } +} diff --git a/ui-v2/app/serializers/discovery-chain.js b/ui/packages/consul-ui/app/serializers/discovery-chain.js similarity index 56% rename from ui-v2/app/serializers/discovery-chain.js rename to ui/packages/consul-ui/app/serializers/discovery-chain.js index fc144194f..e8faa8b00 100644 --- a/ui-v2/app/serializers/discovery-chain.js +++ b/ui/packages/consul-ui/app/serializers/discovery-chain.js @@ -1,11 +1,12 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/discovery-chain'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForQueryRecord: function(respond, query) { - return this._super(function(cb) { +export default class DiscoveryChainSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord(function(cb) { return respond(function(headers, body) { return cb(headers, { ...body, @@ -13,5 +14,5 @@ export default Serializer.extend({ }); }); }, query); - }, -}); + } +} diff --git a/ui-v2/app/serializers/http.js b/ui/packages/consul-ui/app/serializers/http.js similarity index 52% rename from ui-v2/app/serializers/http.js rename to ui/packages/consul-ui/app/serializers/http.js index 370e96047..2821d468a 100644 --- a/ui-v2/app/serializers/http.js +++ b/ui/packages/consul-ui/app/serializers/http.js @@ -1,25 +1,31 @@ -import Serializer from 'ember-data/serializers/rest'; +import Serializer from '@ember-data/serializer/rest'; -export default Serializer.extend({ - respondForQuery: function(respond, query) { +export default class HttpSerializer extends Serializer { + respondForQuery(respond, query) { return respond((headers, body) => body); - }, - respondForQueryRecord: function(respond, query) { + } + + respondForQueryRecord(respond, query) { return respond((headers, body) => body); - }, - respondForFindAll: function(respond, query) { + } + + respondForFindAll(respond, query) { return respond((headers, body) => body); - }, - respondForCreateRecord: function(respond, data) { + } + + respondForCreateRecord(respond, data) { // TODO: Creates may need a primaryKey adding (remove from application) return respond((headers, body) => body); - }, - respondForUpdateRecord: function(respond, data) { - // TODO: Updates only need the primaryKey/uid returning (remove from application) + } + + respondForUpdateRecord(respond, data) { + // TODO: Updates only need the primaryKey/uid returning (remove from + // application) return respond((headers, body) => body); - }, - respondForDeleteRecord: function(respond, data) { + } + + respondForDeleteRecord(respond, data) { // TODO: Deletes only need the primaryKey/uid returning (remove from application) return respond((headers, body) => body); - }, -}); + } +} diff --git a/ui-v2/app/serializers/intention.js b/ui/packages/consul-ui/app/serializers/intention.js similarity index 67% rename from ui-v2/app/serializers/intention.js rename to ui/packages/consul-ui/app/serializers/intention.js index c85057fde..d8474f3ad 100644 --- a/ui-v2/app/serializers/intention.js +++ b/ui/packages/consul-ui/app/serializers/intention.js @@ -2,16 +2,20 @@ import Serializer from './application'; import { inject as service } from '@ember/service'; import { get } from '@ember/object'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/intention'; +import removeNull from 'consul-ui/utils/remove-null'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - encoder: service('encoder'), - init: function() { - this._super(); +export default class IntentionSerializer extends Serializer { + @service('encoder') encoder; + + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + init() { + super.init(...arguments); this.uri = this.encoder.uriTag(); - }, - ensureID: function(item) { + } + + ensureID(item) { if (!get(item, 'ID.length')) { item.Legacy = false; } else { @@ -21,30 +25,33 @@ export default Serializer.extend({ item.ID = this .uri`${item.SourceNS}:${item.SourceName}:${item.DestinationNS}:${item.DestinationName}`; return item; - }, - respondForQuery: function(respond, query) { - return this._super( + } + + respondForQuery(respond, query) { + return super.respondForQuery( cb => respond((headers, body) => { return cb( headers, - body.map(item => this.ensureID(item)) + body.map(item => this.ensureID(removeNull(item))) ); }), query ); - }, - respondForQueryRecord: function(respond, query) { - return this._super( + } + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord( cb => respond((headers, body) => { - body = this.ensureID(body); + body = this.ensureID(removeNull(body)); return cb(headers, body); }), query ); - }, - respondForCreateRecord: function(respond, serialized, data) { + } + + respondForCreateRecord(respond, serialized, data) { const slugKey = this.slugKey; const primaryKey = this.primaryKey; return respond((headers, body) => { @@ -53,8 +60,9 @@ export default Serializer.extend({ .uri`${serialized.SourceNS}:${serialized.SourceName}:${serialized.DestinationNS}:${serialized.DestinationName}`; return this.fingerprint(primaryKey, slugKey, body.Datacenter)(body); }); - }, - respondForUpdateRecord: function(respond, serialized, data) { + } + + respondForUpdateRecord(respond, serialized, data) { const slugKey = this.slugKey; const primaryKey = this.primaryKey; return respond((headers, body) => { @@ -63,5 +71,5 @@ export default Serializer.extend({ body.ID = serialized.ID; return this.fingerprint(primaryKey, slugKey, body.Datacenter)(body); }); - }, -}); + } +} diff --git a/ui-v2/app/serializers/kv.js b/ui/packages/consul-ui/app/serializers/kv.js similarity index 66% rename from ui-v2/app/serializers/kv.js rename to ui/packages/consul-ui/app/serializers/kv.js index 09a01b841..5069b9028 100644 --- a/ui-v2/app/serializers/kv.js +++ b/ui/packages/consul-ui/app/serializers/kv.js @@ -1,25 +1,31 @@ import Serializer from './application'; import { inject as service } from '@ember/service'; - import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/kv'; import { NSPACE_KEY } from 'consul-ui/models/nspace'; import { NSPACE_QUERY_PARAM as API_NSPACE_KEY } from 'consul-ui/adapters/application'; import removeNull from 'consul-ui/utils/remove-null'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - decoder: service('atob'), +export default class KvSerializer extends Serializer { + @service('atob') decoder; + + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + // TODO: Would undefined be better instead of null? - serialize: function(snapshot, options) { + serialize(snapshot, options) { const value = snapshot.attr('Value'); return typeof value === 'string' ? this.decoder.execute(value) : null; - }, - respondForQueryRecord: function(respond, query) { - return this._super(cb => respond((headers, body) => cb(headers, removeNull(body[0]))), query); - }, - respondForQuery: function(respond, query) { - return this._super( + } + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord( + cb => respond((headers, body) => cb(headers, removeNull(body[0]))), + query + ); + } + + respondForQuery(respond, query) { + return super.respondForQuery( cb => respond((headers, body) => { return cb( @@ -34,5 +40,5 @@ export default Serializer.extend({ }), query ); - }, -}); + } +} diff --git a/ui-v2/app/serializers/node.js b/ui/packages/consul-ui/app/serializers/node.js similarity index 66% rename from ui-v2/app/serializers/node.js rename to ui/packages/consul-ui/app/serializers/node.js index 05e9e7d17..ef028c736 100644 --- a/ui-v2/app/serializers/node.js +++ b/ui/packages/consul-ui/app/serializers/node.js @@ -1,8 +1,8 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/node'; -// TODO: Looks like ID just isn't used at all -// consider just using .Node for the SLUG_KEY +// TODO: Looks like ID just isn't used at all consider just using .Node for +// the SLUG_KEY const fillSlug = function(item) { if (item[SLUG_KEY] === '') { item[SLUG_KEY] = item['Node']; @@ -10,22 +10,28 @@ const fillSlug = function(item) { return item; }; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForQuery: function(respond, query) { - return this._super(cb => respond((headers, body) => cb(headers, body.map(fillSlug))), query); - }, - respondForQueryRecord: function(respond, query) { - return this._super( +export default class NodeSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQuery(respond, query) { + return super.respondForQuery( + cb => respond((headers, body) => cb(headers, body.map(fillSlug))), + query + ); + } + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord( cb => respond((headers, body) => { return cb(headers, fillSlug(body)); }), query ); - }, - respondForQueryLeader: function(respond, query) { + } + + respondForQueryLeader(respond, query) { // don't call super here we don't care about // ids/fingerprinting return respond((headers, body) => { @@ -45,5 +51,5 @@ export default Serializer.extend({ query ); }); - }, -}); + } +} diff --git a/ui-v2/app/serializers/nspace.js b/ui/packages/consul-ui/app/serializers/nspace.js similarity index 58% rename from ui-v2/app/serializers/nspace.js rename to ui/packages/consul-ui/app/serializers/nspace.js index 1ce0c0248..e93c466cb 100644 --- a/ui-v2/app/serializers/nspace.js +++ b/ui/packages/consul-ui/app/serializers/nspace.js @@ -2,10 +2,11 @@ import Serializer from './application'; import { get } from '@ember/object'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/nspace'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForQuery: function(respond, serialized, data) { +export default class NspaceSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQuery(respond, serialized, data) { return respond((headers, body) => { return this.attachHeaders( headers, @@ -16,9 +17,9 @@ export default Serializer.extend({ return item; }); } - // Both of these might come though unset so we make sure - // we at least have an empty array here so we can add - // children to them if we need to whilst saving nspaces + // Both of these might come though unset so we make sure we at least + // have an empty array here so we can add children to them if we + // need to whilst saving nspaces ['PolicyDefaults', 'RoleDefaults'].forEach(function(prop) { if (typeof item.ACLs === 'undefined') { item.ACLs = []; @@ -31,33 +32,36 @@ export default Serializer.extend({ }) ); }); - }, - respondForQueryRecord: function(respond, serialized, data) { - // We don't attachHeaders here yet, mainly because we don't use - // blocking queries on form views yet, and by the time we do - // Serializers should have been refactored to not use attachHeaders + } + + respondForQueryRecord(respond, serialized, data) { + // We don't attachHeaders here yet, mainly because we don't use blocking + // queries on form views yet, and by the time we do Serializers should + // have been refactored to not use attachHeaders return respond((headers, body) => { return body; }); - }, - respondForCreateRecord: function(respond, serialized, data) { + } + + respondForCreateRecord(respond, serialized, data) { return respond((headers, body) => { - // The data properties sent to be saved in the backend - // or the same ones that we receive back if its successfull - // therefore we can just ignore the result and avoid ember-data - // syncing problems + // The data properties sent to be saved in the backend or the same ones + // that we receive back if its successfull therefore we can just ignore + // the result and avoid ember-data syncing problems return {}; }); - }, - respondForUpdateRecord: function(respond, serialized, data) { + } + + respondForUpdateRecord(respond, serialized, data) { return respond((headers, body) => { return body; }); - }, - respondForDeleteRecord: function(respond, serialized, data) { + } + + respondForDeleteRecord(respond, serialized, data) { return respond((headers, body) => { // Deletes only need the primaryKey/uid returning return body; }); - }, -}); + } +} diff --git a/ui-v2/app/serializers/oidc-provider.js b/ui/packages/consul-ui/app/serializers/oidc-provider.js similarity index 63% rename from ui-v2/app/serializers/oidc-provider.js rename to ui/packages/consul-ui/app/serializers/oidc-provider.js index aacd96b1e..1da745dcd 100644 --- a/ui-v2/app/serializers/oidc-provider.js +++ b/ui/packages/consul-ui/app/serializers/oidc-provider.js @@ -1,21 +1,22 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/oidc-provider'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForAuthorize: function(respond, serialized, data) { - // we avoid the parent serializer here as it tries to create a - // fingerprint for an 'action' request - // but we still need to pass the headers through +export default class OidcSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForAuthorize(respond, serialized, data) { + // we avoid the parent serializer here as it tries to create a fingerprint + // for an 'action' request but we still need to pass the headers through return respond((headers, body) => { return this.attachHeaders(headers, body, data); }); - }, - respondForQueryRecord: function(respond, query) { + } + + respondForQueryRecord(respond, query) { // add the name and nspace here so we can merge this // TODO: Look to see if we always want the merging functionality - return this._super( + return super.respondForQueryRecord( cb => respond((headers, body) => cb(headers, { @@ -26,5 +27,5 @@ export default Serializer.extend({ ), query ); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/serializers/policy.js b/ui/packages/consul-ui/app/serializers/policy.js new file mode 100644 index 000000000..a2e8fb941 --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/policy.js @@ -0,0 +1,7 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/policy'; + +export default class PolicySerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; +} diff --git a/ui/packages/consul-ui/app/serializers/proxy.js b/ui/packages/consul-ui/app/serializers/proxy.js new file mode 100644 index 000000000..5876ccebd --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/proxy.js @@ -0,0 +1,7 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/proxy'; + +export default class ProxySerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; +} diff --git a/ui-v2/app/serializers/role.js b/ui/packages/consul-ui/app/serializers/role.js similarity index 55% rename from ui-v2/app/serializers/role.js rename to ui/packages/consul-ui/app/serializers/role.js index 7f0382599..7f734c8a5 100644 --- a/ui-v2/app/serializers/role.js +++ b/ui/packages/consul-ui/app/serializers/role.js @@ -1,7 +1,8 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/role'; import WithPolicies from 'consul-ui/mixins/policy/as-many'; -export default Serializer.extend(WithPolicies, { - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, -}); + +export default class RoleSerializer extends Serializer.extend(WithPolicies) { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; +} diff --git a/ui-v2/app/serializers/service-instance.js b/ui/packages/consul-ui/app/serializers/service-instance.js similarity index 75% rename from ui-v2/app/serializers/service-instance.js rename to ui/packages/consul-ui/app/serializers/service-instance.js index 4e4f12a58..e1b0400a0 100644 --- a/ui-v2/app/serializers/service-instance.js +++ b/ui/packages/consul-ui/app/serializers/service-instance.js @@ -1,11 +1,12 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/service-instance'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForQuery: function(respond, query) { - return this._super(function(cb) { +export default class ServiceInstanceSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQuery(respond, query) { + return super.respondForQuery(function(cb) { return respond(function(headers, body) { if (body.length === 0) { const e = new Error(); @@ -20,9 +21,10 @@ export default Serializer.extend({ return cb(headers, body); }); }, query); - }, - respondForQueryRecord: function(respond, query) { - return this._super(function(cb) { + } + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord(function(cb) { return respond(function(headers, body) { body = body.find(function(item) { return item.Node.Node === query.node && item.Service.ID === query.serviceId; @@ -41,5 +43,5 @@ export default Serializer.extend({ return cb(headers, body); }); }, query); - }, -}); + } +} diff --git a/ui-v2/app/serializers/service.js b/ui/packages/consul-ui/app/serializers/service.js similarity index 78% rename from ui-v2/app/serializers/service.js rename to ui/packages/consul-ui/app/serializers/service.js index 4edaa7ada..ef535ba4c 100644 --- a/ui-v2/app/serializers/service.js +++ b/ui/packages/consul-ui/app/serializers/service.js @@ -2,15 +2,16 @@ import Serializer from './application'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/service'; import { get } from '@ember/object'; -export default Serializer.extend({ - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - respondForQuery: function(respond, query) { - return this._super( +export default class ServiceSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQuery(respond, query) { + return super.respondForQuery( cb => respond((headers, body) => { - // Services and proxies all come together in the same list - // Here we map the proxies to their related services on a Service.Proxy + // Services and proxies all come together in the same list. Here we + // map the proxies to their related services on a Service.Proxy // property for easy access later on const services = {}; body @@ -25,8 +26,8 @@ export default Serializer.extend({ return item.Kind === 'connect-proxy'; }) .forEach(item => { - // Iterating to cover the usecase of a proxy being - // used by more than one service + // Iterating to cover the usecase of a proxy being used by more + // than one service if (item.ProxyFor) { item.ProxyFor.forEach(service => { if (typeof services[service] !== 'undefined') { @@ -39,11 +40,12 @@ export default Serializer.extend({ }), query ); - }, - respondForQueryRecord: function(respond, query) { + } + + respondForQueryRecord(respond, query) { // Name is added here from the query, which is used to make the uid // Datacenter gets added in the ApplicationSerializer - return this._super( + return super.respondForQueryRecord( cb => respond((headers, body) => { return cb(headers, { @@ -54,5 +56,5 @@ export default Serializer.extend({ }), query ); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/serializers/session.js b/ui/packages/consul-ui/app/serializers/session.js new file mode 100644 index 000000000..119619cea --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/session.js @@ -0,0 +1,14 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/session'; + +export default class SessionSerializer extends Serializer { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQueryRecord(respond, query) { + return super.respondForQueryRecord( + cb => respond((headers, body) => cb(headers, body[0])), + query + ); + } +} diff --git a/ui-v2/app/serializers/token.js b/ui/packages/consul-ui/app/serializers/token.js similarity index 65% rename from ui-v2/app/serializers/token.js rename to ui/packages/consul-ui/app/serializers/token.js index b4addcf45..2264b52b8 100644 --- a/ui-v2/app/serializers/token.js +++ b/ui/packages/consul-ui/app/serializers/token.js @@ -1,18 +1,18 @@ import Serializer from './application'; import { get } from '@ember/object'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/token'; - import WithPolicies from 'consul-ui/mixins/policy/as-many'; import WithRoles from 'consul-ui/mixins/role/as-many'; -export default Serializer.extend(WithPolicies, WithRoles, { - primaryKey: PRIMARY_KEY, - slugKey: SLUG_KEY, - serialize: function(snapshot, options) { - let data = this._super(...arguments); - // If a token has Rules, use the old API shape - // notice we use a null check here (not an undefined check) - // as we are dealing with the serialized model not raw user data +export default class TokenSerializer extends Serializer.extend(WithPolicies, WithRoles) { + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + serialize(snapshot, options) { + let data = super.serialize(...arguments); + // If a token has Rules, use the old API shape notice we use a null check + // here (not an undefined check) as we are dealing with the serialized + // model not raw user data if (data['Rules'] !== null) { data = { ID: data.SecretID, @@ -22,20 +22,22 @@ export default Serializer.extend(WithPolicies, WithRoles, { }; } // make sure we never send the SecretID - // TODO: If we selectively format the request payload in the adapter - // we won't have to do this here - // see side note in https://github.com/hashicorp/consul/pull/6285 - // which will mean most if not all of this method can go + // TODO: If we selectively format the request payload in the adapter we + // won't have to do this here see side note in + // https://github.com/hashicorp/consul/pull/6285 which will mean most if + // not all of this method can go if (data) { delete data['SecretID']; } return data; - }, - respondForSelf: function(respond, query) { + } + + respondForSelf(respond, query) { return this.respondForQueryRecord(respond, query); - }, - respondForUpdateRecord: function(respond, serialized, data) { - return this._super( + } + + respondForUpdateRecord(respond, serialized, data) { + return super.respondForUpdateRecord( cb => respond((headers, body) => { // Sometimes we get `Policies: null`, make null equal an empty array @@ -55,5 +57,5 @@ export default Serializer.extend(WithPolicies, WithRoles, { serialized, data ); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/serializers/topology.js b/ui/packages/consul-ui/app/serializers/topology.js new file mode 100644 index 000000000..05ff6a289 --- /dev/null +++ b/ui/packages/consul-ui/app/serializers/topology.js @@ -0,0 +1,36 @@ +import Serializer from './application'; +import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/topology'; +import { inject as service } from '@ember/service'; + +export default class TopologySerializer extends Serializer { + @service('store') store; + + primaryKey = PRIMARY_KEY; + slugKey = SLUG_KEY; + + respondForQueryRecord(respond, query) { + const intentionSerializer = this.store.serializerFor('intention'); + return super.respondForQueryRecord(function(cb) { + return respond(function(headers, body) { + body.Downstreams.forEach(item => { + item.Intention.SourceName = item.Name; + item.Intention.SourceNS = item.Namespace; + item.Intention.DestinationName = query.id; + item.Intention.DestinationNS = query.ns || 'default'; + intentionSerializer.ensureID(item.Intention); + }); + body.Upstreams.forEach(item => { + item.Intention.SourceName = query.id; + item.Intention.SourceNS = query.ns || 'default'; + item.Intention.DestinationName = item.Name; + item.Intention.DestinationNS = item.Namespace; + intentionSerializer.ensureID(item.Intention); + }); + return cb(headers, { + ...body, + [SLUG_KEY]: query.id, + }); + }); + }, query); + } +} diff --git a/ui-v2/app/services/atob.js b/ui/packages/consul-ui/app/services/atob.js similarity index 60% rename from ui-v2/app/services/atob.js rename to ui/packages/consul-ui/app/services/atob.js index d01d37e1b..712650436 100644 --- a/ui-v2/app/services/atob.js +++ b/ui/packages/consul-ui/app/services/atob.js @@ -1,7 +1,7 @@ import Service from '@ember/service'; import atob from 'consul-ui/utils/atob'; -export default Service.extend({ - execute: function() { +export default class AtobService extends Service { + execute() { return atob(...arguments); - }, -}); + } +} diff --git a/ui-v2/app/services/btoa.js b/ui/packages/consul-ui/app/services/btoa.js similarity index 60% rename from ui-v2/app/services/btoa.js rename to ui/packages/consul-ui/app/services/btoa.js index d3d0c131e..32d5a1eed 100644 --- a/ui-v2/app/services/btoa.js +++ b/ui/packages/consul-ui/app/services/btoa.js @@ -1,7 +1,7 @@ import Service from '@ember/service'; import btoa from 'consul-ui/utils/btoa'; -export default Service.extend({ - execute: function() { +export default class BtoaService extends Service { + execute() { return btoa(...arguments); - }, -}); + } +} diff --git a/ui-v2/app/services/change.js b/ui/packages/consul-ui/app/services/change.js similarity index 83% rename from ui-v2/app/services/change.js rename to ui/packages/consul-ui/app/services/change.js index a5150464d..a4b22f095 100644 --- a/ui-v2/app/services/change.js +++ b/ui/packages/consul-ui/app/services/change.js @@ -13,17 +13,20 @@ const validators = { 'intention-permission-http-header': intentionPermissionHttpHeaderValidator, }; -export default Service.extend({ - schema: service('schema'), +export default class ChangeService extends Service { + @service('schema') + schema; - init: function() { - this._super(...arguments); + init() { + super.init(...arguments); this._validators = new Map(); - }, - willDestroy: function() { + } + + willDestroy() { this._validators = null; - }, - changesetFor: function(modelName, model, options = {}) { + } + + changesetFor(modelName, model, options = {}) { const validator = this.validatorFor(modelName, options); let changeset; if (validator) { @@ -36,8 +39,9 @@ export default Service.extend({ changeset = createChangeset(model); } return changeset; - }, - validatorFor: function(modelName, options = {}) { + } + + validatorFor(modelName, options = {}) { if (!this._validators.has(modelName)) { const factory = validators[modelName]; let validator; @@ -47,5 +51,5 @@ export default Service.extend({ this._validators.set(modelName, validator); } return this._validators.get(modelName); - }, -}); + } +} diff --git a/ui-v2/app/services/client/connections.js b/ui/packages/consul-ui/app/services/client/connections.js similarity index 82% rename from ui-v2/app/services/client/connections.js rename to ui/packages/consul-ui/app/services/client/connections.js index 32f11214d..45e7cb725 100644 --- a/ui-v2/app/services/client/connections.js +++ b/ui/packages/consul-ui/app/services/client/connections.js @@ -1,22 +1,29 @@ import Service, { inject as service } from '@ember/service'; -export default Service.extend({ - dom: service('dom'), - env: service('env'), - data: service('data-source/service'), - sources: service('repository/type/event-source'), - init: function() { - this._super(...arguments); +export default class ConnectionsService extends Service { + @service('dom') + dom; + + @service('env') + env; + + @service('data-source/service') + data; + + init() { + super.init(...arguments); this._listeners = this.dom.listeners(); this.connections = new Set(); this.addVisibilityChange(); - }, - willDestroy: function() { + } + + willDestroy() { this._listeners.remove(); this.purge(); - this._super(...arguments); - }, - addVisibilityChange: function() { + super.willDestroy(...arguments); + } + + addVisibilityChange() { // when the user hides the tab, abort all connections this._listeners.add(this.dom.document(), { visibilitychange: e => { @@ -25,8 +32,9 @@ export default Service.extend({ } }, }); - }, - whenAvailable: function(e) { + } + + whenAvailable(e) { // if the user has hidden the tab (hidden browser/tab switch) // any aborted errors should restart const doc = this.dom.document(); @@ -43,15 +51,17 @@ export default Service.extend({ }); } return Promise.resolve(e); - }, - purge: function(statusCode = 0) { + } + + purge(statusCode = 0) { [...this.connections].forEach(function(connection) { // Cancelled connection.abort(statusCode); }); this.connections = new Set(); - }, - acquire: function(request) { + } + + acquire(request) { if (this.connections.size >= this.env.var('CONSUL_HTTP_MAX_CONNECTIONS')) { const closed = this.data.closed(); let connection = [...this.connections].find(item => { @@ -79,8 +89,9 @@ export default Service.extend({ } } this.connections.add(request); - }, - release: function(request) { + } + + release(request) { this.connections.delete(request); - }, -}); + } +} diff --git a/ui-v2/app/services/client/http.js b/ui/packages/consul-ui/app/services/client/http.js similarity index 89% rename from ui-v2/app/services/client/http.js rename to ui/packages/consul-ui/app/services/client/http.js index 967e88242..365b7f12c 100644 --- a/ui-v2/app/services/client/http.js +++ b/ui/packages/consul-ui/app/services/client/http.js @@ -71,26 +71,38 @@ const parseBody = function(strs, ...values) { }; const CLIENT_HEADERS = [CACHE_CONTROL, 'X-Request-ID', 'X-Range', 'Refresh']; -export default Service.extend({ - dom: service('dom'), - connections: service('client/connections'), - transport: service('client/transports/xhr'), - settings: service('settings'), - init: function() { - this._super(...arguments); +export default class HttpService extends Service { + @service('dom') + dom; + + @service('client/connections') + connections; + + @service('client/transports/xhr') + transport; + + @service('settings') + settings; + + init() { + super.init(...arguments); this._listeners = this.dom.listeners(); - }, - willDestroy: function() { + } + + willDestroy() { this._listeners.remove(); - this._super(...arguments); - }, - url: function() { + super.willDestroy(...arguments); + } + + url() { return parseURL(...arguments); - }, - body: function() { + } + + body() { return parseBody(...arguments); - }, - requestParams: function(strs, ...values) { + } + + requestParams(strs, ...values) { // first go to the end and remove/parse the http body const [body, ...urlVars] = this.body(...arguments); // with whats left get the method off the front @@ -151,8 +163,21 @@ export default Service.extend({ // also see https://github.com/hashicorp/consul/issues/3804 params.headers[CONTENT_TYPE] = 'application/json; charset=utf-8'; return params; - }, - request: function(cb) { + } + + fetchWithToken(path, params) { + return this.settings.findBySlug('token').then(token => { + return fetch(`${path}`, { + ...params, + headers: { + 'X-Consul-Token': typeof token.SecretID === 'undefined' ? '' : token.SecretID, + ...params.headers, + }, + }); + }); + } + + request(cb) { const client = this; return cb(function(strs, ...values) { const params = client.requestParams(...arguments); @@ -197,17 +222,21 @@ export default Service.extend({ }); }); }); - }, - whenAvailable: function(e) { + } + + whenAvailable(e) { return this.connections.whenAvailable(e); - }, - abort: function() { + } + + abort() { return this.connections.purge(...arguments); - }, - acquire: function() { + } + + acquire() { return this.connections.acquire(...arguments); - }, - release: function() { + } + + release() { return this.connections.release(...arguments); - }, -}); + } +} diff --git a/ui-v2/app/services/client/transports/xhr.js b/ui/packages/consul-ui/app/services/client/transports/xhr.js similarity index 93% rename from ui-v2/app/services/client/transports/xhr.js rename to ui/packages/consul-ui/app/services/client/transports/xhr.js index 0f3a6f3f8..5040e6478 100644 --- a/ui-v2/app/services/client/transports/xhr.js +++ b/ui/packages/consul-ui/app/services/client/transports/xhr.js @@ -7,11 +7,12 @@ import HTTPError from 'consul-ui/utils/http/error'; const xhr = createXHR(createHeaders()); -export default Service.extend({ - xhr: function(options) { +export default class XhrService extends Service { + xhr(options) { return xhr(options); - }, - request: function(params) { + } + + request(params) { const request = new Request(params.method, params.url, { ['x-request-id']: params.clientHeaders['x-request-id'], body: params.data || {}, @@ -57,5 +58,5 @@ export default Service.extend({ return request; }; return request; - }, -}); + } +} diff --git a/ui-v2/app/services/clipboard/local-storage.js b/ui/packages/consul-ui/app/services/clipboard/local-storage.js similarity index 79% rename from ui-v2/app/services/clipboard/local-storage.js rename to ui/packages/consul-ui/app/services/clipboard/local-storage.js index 7e30d4348..01eacb74f 100644 --- a/ui-v2/app/services/clipboard/local-storage.js +++ b/ui/packages/consul-ui/app/services/clipboard/local-storage.js @@ -16,12 +16,13 @@ class ClipboardCallback extends Clipboard { } } -export default Service.extend({ - storage: window.localStorage, - key: 'clipboard', - execute: function(trigger) { +export default class LocalStorageService extends Service { + storage = window.localStorage; + key = 'clipboard'; + + execute(trigger) { return new ClipboardCallback(trigger, val => { this.storage.setItem(this.key, val); }); - }, -}); + } +} diff --git a/ui-v2/app/services/clipboard/os.js b/ui/packages/consul-ui/app/services/clipboard/os.js similarity index 59% rename from ui-v2/app/services/clipboard/os.js rename to ui/packages/consul-ui/app/services/clipboard/os.js index e51f37007..10a6dba8a 100644 --- a/ui-v2/app/services/clipboard/os.js +++ b/ui/packages/consul-ui/app/services/clipboard/os.js @@ -2,8 +2,8 @@ import Service from '@ember/service'; import Clipboard from 'clipboard'; -export default Service.extend({ - execute: function(trigger) { +export default class OsService extends Service { + execute(trigger) { return new Clipboard(trigger); - }, -}); + } +} diff --git a/ui-v2/app/services/code-mirror/linter.js b/ui/packages/consul-ui/app/services/code-mirror/linter.js similarity index 80% rename from ui-v2/app/services/code-mirror/linter.js rename to ui/packages/consul-ui/app/services/code-mirror/linter.js index 9623af801..c89ba0b95 100644 --- a/ui-v2/app/services/code-mirror/linter.js +++ b/ui/packages/consul-ui/app/services/code-mirror/linter.js @@ -18,15 +18,19 @@ const MODES = [ { name: 'YAML', mime: 'text/x-yaml', mode: 'yaml', ext: ['yaml', 'yml'], alias: ['yml'] }, ]; -export default Service.extend({ - dom: service('dom'), - modes: function() { +export default class LinterService extends Service { + @service('dom') + dom; + + modes() { return MODES; - }, - lint: function() { + } + + lint() { return lint(...arguments); - }, - getEditor: function(element) { + } + + getEditor(element) { return this.dom.element('textarea + div', element).CodeMirror; - }, -}); + } +} diff --git a/ui-v2/app/services/data-sink/protocols/http.js b/ui/packages/consul-ui/app/services/data-sink/protocols/http.js similarity index 53% rename from ui-v2/app/services/data-sink/protocols/http.js rename to ui/packages/consul-ui/app/services/data-sink/protocols/http.js index 3383bd6b7..21c1b86af 100644 --- a/ui-v2/app/services/data-sink/protocols/http.js +++ b/ui/packages/consul-ui/app/services/data-sink/protocols/http.js @@ -1,22 +1,32 @@ import Service, { inject as service } from '@ember/service'; import { setProperties } from '@ember/object'; -export default Service.extend({ - settings: service('settings'), - intention: service('repository/intention'), - kv: service('repository/kv'), - session: service('repository/session'), - prepare: function(sink, data, instance) { +export default class HttpService extends Service { + @service('settings') + settings; + + @service('repository/intention') + intention; + + @service('repository/kv') + kv; + + @service('repository/session') + session; + + prepare(sink, data, instance) { return setProperties(instance, data); - }, - persist: function(sink, instance) { + } + + persist(sink, instance) { const [, , , model] = sink.split('/'); const repo = this[model]; return repo.persist(instance); - }, - remove: function(sink, instance) { + } + + remove(sink, instance) { const [, , , model] = sink.split('/'); const repo = this[model]; return repo.remove(instance); - }, -}); + } +} diff --git a/ui-v2/app/services/data-sink/protocols/local-storage.js b/ui/packages/consul-ui/app/services/data-sink/protocols/local-storage.js similarity index 68% rename from ui-v2/app/services/data-sink/protocols/local-storage.js rename to ui/packages/consul-ui/app/services/data-sink/protocols/local-storage.js index 797fd9e2b..5f26157c1 100644 --- a/ui-v2/app/services/data-sink/protocols/local-storage.js +++ b/ui/packages/consul-ui/app/services/data-sink/protocols/local-storage.js @@ -1,24 +1,28 @@ import Service, { inject as service } from '@ember/service'; import { setProperties } from '@ember/object'; -export default Service.extend({ - settings: service('settings'), - prepare: function(sink, data, instance = {}) { +export default class LocalStorageService extends Service { + @service('settings') + settings; + + prepare(sink, data, instance = {}) { if (data === null || data === '') { return instance; } return setProperties(instance, data); - }, - persist: function(sink, instance) { + } + + persist(sink, instance) { const slug = sink.split(':').pop(); const repo = this.settings; return repo.persist({ [slug]: instance, }); - }, - remove: function(sink, instance) { + } + + remove(sink, instance) { const slug = sink.split(':').pop(); const repo = this.settings; return repo.delete(slug); - }, -}); + } +} diff --git a/ui-v2/app/services/data-sink/service.js b/ui/packages/consul-ui/app/services/data-sink/service.js similarity index 69% rename from ui-v2/app/services/data-sink/service.js rename to ui/packages/consul-ui/app/services/data-sink/service.js index afadc0fe3..31b051252 100644 --- a/ui-v2/app/services/data-sink/service.js +++ b/ui/packages/consul-ui/app/services/data-sink/service.js @@ -6,23 +6,28 @@ const parts = function(uri) { } return uri.split('://'); }; -export default Service.extend({ - consul: service('data-sink/protocols/http'), - settings: service('data-sink/protocols/local-storage'), +export default class DataSinkService extends Service { + @service('data-sink/protocols/http') + consul; - prepare: function(uri, data, assign) { + @service('data-sink/protocols/local-storage') + settings; + + prepare(uri, data, assign) { const [providerName, pathname] = parts(uri); const provider = this[providerName]; return provider.prepare(pathname, data, assign); - }, - persist: function(uri, data) { + } + + persist(uri, data) { const [providerName, pathname] = parts(uri); const provider = this[providerName]; return provider.persist(pathname, data); - }, - remove: function(uri, data) { + } + + remove(uri, data) { const [providerName, pathname] = parts(uri); const provider = this[providerName]; return provider.remove(pathname, data); - }, -}); + } +} diff --git a/ui-v2/app/services/data-source/protocols/http.js b/ui/packages/consul-ui/app/services/data-source/protocols/http.js similarity index 79% rename from ui-v2/app/services/data-source/protocols/http.js rename to ui/packages/consul-ui/app/services/data-source/protocols/http.js index 66ebd4f33..3798a5f7d 100644 --- a/ui-v2/app/services/data-source/protocols/http.js +++ b/ui/packages/consul-ui/app/services/data-source/protocols/http.js @@ -1,36 +1,86 @@ import Service, { inject as service } from '@ember/service'; import { get } from '@ember/object'; -export default Service.extend({ - datacenters: service('repository/dc'), - nodes: service('repository/node'), - node: service('repository/node'), - leader: service('repository/node'), - gateways: service('repository/service'), - services: service('repository/service'), - service: service('repository/service'), - ['service-instance']: service('repository/service-instance'), - ['service-instances']: service('repository/service-instance'), - proxies: service('repository/proxy'), - ['proxy-instance']: service('repository/proxy'), - ['discovery-chain']: service('repository/discovery-chain'), - ['topology']: service('repository/topology'), - coordinates: service('repository/coordinate'), - sessions: service('repository/session'), - namespaces: service('repository/nspace'), - intentions: service('repository/intention'), - intention: service('repository/intention'), - kv: service('repository/kv'), - token: service('repository/token'), - policies: service('repository/policy'), - policy: service('repository/policy'), - roles: service('repository/role'), - oidc: service('repository/oidc-provider'), - metrics: service('repository/metrics'), +export default class HttpService extends Service { + @service('repository/dc') + datacenters; - type: service('data-source/protocols/http/blocking'), + @service('repository/node') + nodes; - source: function(src, configuration) { + @service('repository/node') + node; + + @service('repository/node') + leader; + + @service('repository/service') + gateways; + + @service('repository/service') + services; + + @service('repository/service') + service; + + @service('repository/service-instance') + 'service-instance'; + + @service('repository/service-instance') + 'service-instances'; + + @service('repository/proxy') + proxies; + + @service('repository/proxy') + 'proxy-instance'; + + @service('repository/discovery-chain') + 'discovery-chain'; + + @service('repository/topology') + topology; + + @service('repository/coordinate') + coordinates; + + @service('repository/session') + sessions; + + @service('repository/nspace') + namespaces; + + @service('repository/intention') + intentions; + + @service('repository/intention') + intention; + + @service('repository/kv') + kv; + + @service('repository/token') + token; + + @service('repository/policy') + policies; + + @service('repository/policy') + policy; + + @service('repository/role') + roles; + + @service('repository/oidc-provider') + oidc; + + @service('repository/metrics') + metrics; + + @service('data-source/protocols/http/blocking') + type; + + source(src, configuration) { // TODO: Consider adding/requiring 'action': nspace, dc, model, action, ...rest const [, nspace, dc, model, ...rest] = src.split('/').map(decodeURIComponent); // nspaces can be filled, blank or * @@ -179,5 +229,5 @@ export default Service.extend({ break; } return this.type.source(find, configuration); - }, -}); + } +} diff --git a/ui-v2/app/services/data-source/protocols/http/blocking.js b/ui/packages/consul-ui/app/services/data-source/protocols/http/blocking.js similarity index 86% rename from ui-v2/app/services/data-source/protocols/http/blocking.js rename to ui/packages/consul-ui/app/services/data-source/protocols/http/blocking.js index 3026aad98..b315d77e0 100644 --- a/ui-v2/app/services/data-source/protocols/http/blocking.js +++ b/ui/packages/consul-ui/app/services/data-source/protocols/http/blocking.js @@ -6,10 +6,14 @@ import { ifNotBlocking } from 'consul-ui/services/settings'; import { restartWhenAvailable } from 'consul-ui/services/client/http'; import maybeCall from 'consul-ui/utils/maybe-call'; -export default Service.extend({ - client: service('client/http'), - settings: service('settings'), - source: function(find, configuration) { +export default class BlockingService extends Service { + @service('client/http') + client; + + @service('settings') + settings; + + source(find, configuration) { return new EventSource((configuration, source) => { const close = source.close.bind(source); const deleteCursor = () => (configuration.cursor = undefined); @@ -27,5 +31,5 @@ export default Service.extend({ .catch(restartWhenAvailable(this.client)); }); }, configuration); - }, -}); + } +} diff --git a/ui-v2/app/services/data-source/protocols/http/promise.js b/ui/packages/consul-ui/app/services/data-source/protocols/http/promise.js similarity index 59% rename from ui-v2/app/services/data-source/protocols/http/promise.js rename to ui/packages/consul-ui/app/services/data-source/protocols/http/promise.js index cc1d55c00..53a21b7da 100644 --- a/ui-v2/app/services/data-source/protocols/http/promise.js +++ b/ui/packages/consul-ui/app/services/data-source/protocols/http/promise.js @@ -1,8 +1,8 @@ import Service from '@ember/service'; import { once } from 'consul-ui/utils/dom/event-source'; -export default Service.extend({ - source: function(find, configuration) { +export default class PromiseService extends Service { + source(find, configuration) { return once(find, configuration); - }, -}); + } +} diff --git a/ui-v2/app/services/data-source/protocols/local-storage.js b/ui/packages/consul-ui/app/services/data-source/protocols/local-storage.js similarity index 73% rename from ui-v2/app/services/data-source/protocols/local-storage.js rename to ui/packages/consul-ui/app/services/data-source/protocols/local-storage.js index 805d94b4c..e7046c82f 100644 --- a/ui-v2/app/services/data-source/protocols/local-storage.js +++ b/ui/packages/consul-ui/app/services/data-source/protocols/local-storage.js @@ -1,9 +1,11 @@ import Service, { inject as service } from '@ember/service'; import { StorageEventSource } from 'consul-ui/utils/dom/event-source'; -export default Service.extend({ - repo: service('settings'), - source: function(src, configuration) { +export default class LocalStorageService extends Service { + @service('settings') + repo; + + source(src, configuration) { const slug = src.split(':').pop(); return new StorageEventSource( configuration => { @@ -14,5 +16,5 @@ export default Service.extend({ uri: configuration.uri, } ); - }, -}); + } +} diff --git a/ui-v2/app/services/data-source/service.js b/ui/packages/consul-ui/app/services/data-source/service.js similarity index 90% rename from ui-v2/app/services/data-source/service.js rename to ui/packages/consul-ui/app/services/data-source/service.js index 1d56d295b..24b7d0462 100644 --- a/ui-v2/app/services/data-source/service.js +++ b/ui/packages/consul-ui/app/services/data-source/service.js @@ -11,23 +11,32 @@ let cache = null; let sources = null; // keeps a count of currently in use EventSources let usage = null; -export default Service.extend({ - dom: service('dom'), - encoder: service('encoder'), - consul: service('data-source/protocols/http'), - settings: service('data-source/protocols/local-storage'), +export default class DataSourceService extends Service { + @service('dom') + dom; - init: function() { - this._super(...arguments); + @service('encoder') + encoder; + + @service('data-source/protocols/http') + consul; + + @service('data-source/protocols/local-storage') + settings; + + init() { + super.init(...arguments); cache = new Map(); sources = new Map(); usage = new MultiMap(Set); this._listeners = this.dom.listeners(); - }, - resetCache: function() { + } + + resetCache() { cache = new Map(); - }, - willDestroy: function() { + } + + willDestroy() { this._listeners.remove(); sources.forEach(function(item) { item.close(); @@ -36,8 +45,9 @@ export default Service.extend({ sources = null; usage.clear(); usage = null; - }, - source: function(cb, attrs) { + } + + source(cb, attrs) { const src = cb(this.encoder.uriTag()); return new Promise((resolve, reject) => { const ref = {}; @@ -61,15 +71,17 @@ export default Service.extend({ source.dispatchEvent(source.getCurrentEvent()); } }); - }, - unwrap: function(src, ref) { + } + + unwrap(src, ref) { const source = src._source; usage.set(source, ref); usage.remove(source, source.configuration.ref); delete source.configuration.ref; return source; - }, - open: function(uri, ref, open = false) { + } + + open(uri, ref, open = false) { if (typeof uri !== 'string') { return this.unwrap(uri, ref); } @@ -131,8 +143,9 @@ export default Service.extend({ // set/increase the usage counter usage.set(source, ref); return source; - }, - close: function(source, ref) { + } + + close(source, ref) { // this close is called when the source has either left the page // or in the case of a proxied source, it errors if (source) { @@ -151,13 +164,14 @@ export default Service.extend({ } } } - }, - closed: function() { + } + + closed() { // anything that is closed or closing return [...sources.entries()] .filter(([key, item]) => { return item.readyState > 1; }) .map(item => item[0]); - }, -}); + } +} diff --git a/ui-v2/app/services/data-structs.js b/ui/packages/consul-ui/app/services/data-structs.js similarity index 58% rename from ui-v2/app/services/data-structs.js rename to ui/packages/consul-ui/app/services/data-structs.js index 7fa27f152..663c30fea 100644 --- a/ui-v2/app/services/data-structs.js +++ b/ui/packages/consul-ui/app/services/data-structs.js @@ -2,8 +2,8 @@ import Service from '@ember/service'; import createGraph from 'ngraph.graph'; -export default Service.extend({ - graph: function() { +export default class DataStructsService extends Service { + graph() { return createGraph(); - }, -}); + } +} diff --git a/ui-v2/app/services/dom.js b/ui/packages/consul-ui/app/services/dom.js similarity index 82% rename from ui-v2/app/services/dom.js rename to ui/packages/consul-ui/app/services/dom.js index ae4582ffb..9f55bf936 100644 --- a/ui-v2/app/services/dom.js +++ b/ui/packages/consul-ui/app/services/dom.js @@ -23,35 +23,43 @@ const $$ = qsaFactory(); let $_; let inViewportCallbacks; const clickFirstAnchor = clickFirstAnchorFactory(closest); -export default Service.extend({ - doc: document, - win: window, - init: function() { - this._super(...arguments); +export default class DomService extends Service { + doc = document; + win = window; + + init() { + super.init(...arguments); inViewportCallbacks = new WeakMap(); $_ = getComponentFactory(getOwner(this)); - }, - willDestroy: function() { - this._super(...arguments); + } + + willDestroy() { + super.willDestroy(...arguments); inViewportCallbacks = null; $_ = null; - }, - document: function() { + } + + document() { return this.doc; - }, - viewport: function() { + } + + viewport() { return this.win; - }, - guid: function(el) { + } + + guid(el) { return guidFor(el); - }, + } + // TODO: should this be here? Needs a better name at least - clickFirstAnchor: clickFirstAnchor, - closest: closest, - sibling: sibling, - isOutside: isOutside, - normalizeEvent: normalizeEvent, - setEventTargetProperty: function(e, property, cb) { + clickFirstAnchor = clickFirstAnchor; + + closest = closest; + sibling = sibling; + isOutside = isOutside; + normalizeEvent = normalizeEvent; + + setEventTargetProperty(e, property, cb) { const target = e.target; return new Proxy(e, { get: function(obj, prop, receiver) { @@ -68,8 +76,9 @@ export default Service.extend({ return Reflect.get(...arguments); }, }); - }, - setEventTargetProperties: function(e, propObj) { + } + + setEventTargetProperties(e, propObj) { const target = e.target; return new Proxy(e, { get: function(obj, prop, receiver) { @@ -86,44 +95,52 @@ export default Service.extend({ return Reflect.get(...arguments); }, }); - }, - listeners: createListeners, - root: function() { + } + + listeners = createListeners; + + root() { return this.doc.documentElement; - }, + } + // TODO: Should I change these to use the standard names // even though they don't have a standard signature (querySelector*) - elementById: function(id) { + elementById(id) { return this.doc.getElementById(id); - }, - elementsByTagName: function(name, context) { + } + + elementsByTagName(name, context) { context = typeof context === 'undefined' ? this.doc : context; return context.getElementsByTagName(name); - }, - elements: function(selector, context) { + } + + elements(selector, context) { // don't ever be tempted to [...$$()] here // it should return a NodeList return $$(selector, context); - }, - element: function(selector, context) { + } + + element(selector, context) { if (selector.substr(0, 1) === '#') { return this.elementById(selector.substr(1)); } // TODO: This can just use querySelector return [...$$(selector, context)][0]; - }, + } + // ember components aren't strictly 'dom-like' // but if you think of them as a web component 'shim' // then it makes more sense to think of them as part of the dom // with traditional/standard web components you wouldn't actually need this // method as you could just get to their methods from the dom element - component: function(selector, context) { + component(selector, context) { if (typeof selector !== 'string') { return $_(selector); } return $_(this.element(selector, context)); - }, - components: function(selector, context) { + } + + components(selector, context) { return [...this.elements(selector, context)] .map(function(item) { return $_(item); @@ -131,8 +148,9 @@ export default Service.extend({ .filter(function(item) { return item != null; }); - }, - isInViewport: function($el, cb, threshold = 0) { + } + + isInViewport($el, cb, threshold = 0) { inViewportCallbacks.set($el, cb); let observer = new IntersectionObserver( (entries, observer) => { @@ -158,5 +176,5 @@ export default Service.extend({ observer.disconnect(); // eslint-disable-line ember/no-observers observer = null; }; - }, -}); + } +} diff --git a/ui-v2/app/services/encoder.js b/ui/packages/consul-ui/app/services/encoder.js similarity index 62% rename from ui-v2/app/services/encoder.js rename to ui/packages/consul-ui/app/services/encoder.js index 84917777f..c9a6c135b 100644 --- a/ui-v2/app/services/encoder.js +++ b/ui/packages/consul-ui/app/services/encoder.js @@ -2,26 +2,32 @@ import Service from '@ember/service'; import atob from 'consul-ui/utils/atob'; import btoa from 'consul-ui/utils/btoa'; -export default Service.extend({ - uriComponent: encodeURIComponent, - atob: function() { +export default class EncoderService extends Service { + uriComponent = encodeURIComponent; + + atob() { return atob(...arguments); - }, - btoa: function() { + } + + btoa() { return btoa(...arguments); - }, - uriJoin: function() { + } + + uriJoin() { return this.joiner(this.uriComponent, '/', '')(...arguments); - }, - uriTag: function() { + } + + uriTag() { return this.tag(this.uriJoin.bind(this)); - }, - joiner: (encoder, joiner = '', defaultValue = '') => (values, strs) => + } + + joiner = (encoder, joiner = '', defaultValue = '') => (values, strs) => (strs || Array(values.length).fill(joiner)).reduce( (prev, item, i) => `${prev}${item}${encoder(values[i] || defaultValue)}`, '' - ), - tag: function(join) { + ); + + tag(join) { return (strs, ...values) => join(values, strs); - }, -}); + } +} diff --git a/ui-v2/app/services/env.js b/ui/packages/consul-ui/app/services/env.js similarity index 68% rename from ui-v2/app/services/env.js rename to ui/packages/consul-ui/app/services/env.js index 544252723..fa25518b0 100644 --- a/ui-v2/app/services/env.js +++ b/ui/packages/consul-ui/app/services/env.js @@ -1,13 +1,14 @@ import Service from '@ember/service'; import { env } from 'consul-ui/env'; -export default Service.extend({ +export default class EnvService extends Service { // deprecated // TODO: Remove this elsewhere in the app and use var instead - env: function(key) { + env(key) { return env(key); - }, - var: function(key) { + } + + var(key) { return env(key); - }, -}); + } +} diff --git a/ui-v2/app/services/feedback.js b/ui/packages/consul-ui/app/services/feedback.js similarity index 89% rename from ui-v2/app/services/feedback.js rename to ui/packages/consul-ui/app/services/feedback.js index 8815192f2..1fe23e65d 100644 --- a/ui-v2/app/services/feedback.js +++ b/ui/packages/consul-ui/app/services/feedback.js @@ -12,10 +12,14 @@ const notificationDefaults = function() { extendedTimeout: 300, }; }; -export default Service.extend({ - notify: service('flashMessages'), - logger: service('logger'), - execute: function(handle, action, status = defaultStatus, controller) { +export default class FeedbackService extends Service { + @service('flashMessages') + notify; + + @service('logger') + logger; + + execute(handle, action, status = defaultStatus, controller) { const getAction = callableType(action); const getStatus = callableType(status); const notify = this.notify; @@ -58,5 +62,5 @@ export default Service.extend({ } }) ); - }, -}); + } +} diff --git a/ui-v2/app/services/filter.js b/ui/packages/consul-ui/app/services/filter.js similarity index 88% rename from ui-v2/app/services/filter.js rename to ui/packages/consul-ui/app/services/filter.js index 5123a617c..7b18a6849 100644 --- a/ui-v2/app/services/filter.js +++ b/ui/packages/consul-ui/app/services/filter.js @@ -16,8 +16,8 @@ const predicates = { policy: policy(), }; -export default Service.extend({ - predicate: function(type) { +export default class FilterService extends Service { + predicate(type) { return predicates[type]; - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/services/form.js b/ui/packages/consul-ui/app/services/form.js new file mode 100644 index 000000000..3c40b4c20 --- /dev/null +++ b/ui/packages/consul-ui/app/services/form.js @@ -0,0 +1,56 @@ +import Service, { inject as service } from '@ember/service'; +import builderFactory from 'consul-ui/utils/form/builder'; + +import kv from 'consul-ui/forms/kv'; +import acl from 'consul-ui/forms/acl'; +import token from 'consul-ui/forms/token'; +import policy from 'consul-ui/forms/policy'; +import role from 'consul-ui/forms/role'; +import intention from 'consul-ui/forms/intention'; +import nspace from 'consul-ui/forms/nspace'; + +const builder = builderFactory(); + +const forms = { + kv: kv, + acl: acl, + token: token, + policy: policy, + role: role, + intention: intention, + nspace: nspace, +}; + +export default class FormService extends Service { + // a `get` method is added via the form initializer + // see initializers/form.js + + // TODO: Temporarily add these here until something else needs + // dynamic repos + @service('repository/role') role; + @service('repository/policy') policy; + // + forms = []; + + build(obj, name) { + return builder(...arguments); + } + + form(name) { + let form = this.forms[name]; + if (typeof form === 'undefined') { + form = this.forms[name] = forms[name](this); + // only do special things for our new things for the moment + if (name === 'role' || name === 'policy') { + const repo = this[name]; + form.clear(function(obj) { + return repo.create(obj); + }); + form.submit(function(obj) { + return repo.persist(obj); + }); + } + } + return form; + } +} diff --git a/ui-v2/app/services/logger.js b/ui/packages/consul-ui/app/services/logger.js similarity index 82% rename from ui-v2/app/services/logger.js rename to ui/packages/consul-ui/app/services/logger.js index e61252afe..8b4a73c24 100644 --- a/ui-v2/app/services/logger.js +++ b/ui/packages/consul-ui/app/services/logger.js @@ -1,8 +1,8 @@ import Service from '@ember/service'; import { runInDebug } from '@ember/debug'; -export default Service.extend({ - execute: function(obj) { +export default class LoggerService extends Service { + execute(obj) { runInDebug(() => { obj = typeof obj.error !== 'undefined' ? obj.error : obj; if (obj instanceof Error) { @@ -11,5 +11,5 @@ export default Service.extend({ console.log(obj); // eslint-disable-line no-console } }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository.js b/ui/packages/consul-ui/app/services/repository.js similarity index 84% rename from ui-v2/app/services/repository.js rename to ui/packages/consul-ui/app/services/repository.js index 195022b88..a332e8325 100644 --- a/ui-v2/app/services/repository.js +++ b/ui/packages/consul-ui/app/services/repository.js @@ -4,19 +4,24 @@ import { typeOf } from '@ember/utils'; import { get } from '@ember/object'; import { isChangeset } from 'validated-changeset'; -export default Service.extend({ - getModelName: function() { +export default class RepositoryService extends Service { + getModelName() { assert('RepositoryService.getModelName should be overridden', false); - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { assert('RepositoryService.getPrimaryKey should be overridden', false); - }, - getSlugKey: function() { + } + + getSlugKey() { assert('RepositoryService.getSlugKey should be overridden', false); - }, + } + // - store: service('store'), - reconcile: function(meta = {}) { + @service('store') + store; + + reconcile(meta = {}) { // unload anything older than our current sync date/time if (typeof meta.date !== 'undefined') { const checkNspace = meta.nspace !== ''; @@ -36,11 +41,13 @@ export default Service.extend({ } }); } - }, - peekOne: function(id) { + } + + peekOne(id) { return this.store.peekRecord(this.getModelName(), id); - }, - findAllByDatacenter: function(dc, nspace, configuration = {}) { + } + + findAllByDatacenter(dc, nspace, configuration = {}) { const query = { dc: dc, ns: nspace, @@ -50,8 +57,9 @@ export default Service.extend({ query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, - findBySlug: function(slug, dc, nspace, configuration = {}) { + } + + findBySlug(slug, dc, nspace, configuration = {}) { const query = { dc: dc, ns: nspace, @@ -62,12 +70,14 @@ export default Service.extend({ query.uri = configuration.uri; } return this.store.queryRecord(this.getModelName(), query); - }, - create: function(obj) { + } + + create(obj) { // TODO: This should probably return a Promise return this.store.createRecord(this.getModelName(), obj); - }, - persist: function(item) { + } + + persist(item) { // workaround for saving changesets that contain fragments // firstly commit the changes down onto the object if // its a changeset, then save as a normal object @@ -76,8 +86,9 @@ export default Service.extend({ item = item.data; } return item.save(); - }, - remove: function(obj) { + } + + remove(obj) { let item = obj; if (typeof obj.destroyRecord === 'undefined') { item = obj.get('data'); @@ -91,9 +102,10 @@ export default Service.extend({ return item.destroyRecord().then(item => { return this.store.unloadRecord(item); }); - }, - invalidate: function() { + } + + invalidate() { // TODO: This should probably return a Promise this.store.unloadAll(this.getModelName()); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/acl.js b/ui/packages/consul-ui/app/services/repository/acl.js similarity index 67% rename from ui-v2/app/services/repository/acl.js rename to ui/packages/consul-ui/app/services/repository/acl.js index bdc9a557b..2f17409d7 100644 --- a/ui-v2/app/services/repository/acl.js +++ b/ui/packages/consul-ui/app/services/repository/acl.js @@ -2,14 +2,16 @@ import RepositoryService from 'consul-ui/services/repository'; import { get } from '@ember/object'; import { PRIMARY_KEY } from 'consul-ui/models/acl'; const modelName = 'acl'; -export default RepositoryService.extend({ - getModelName: function() { +export default class AclService extends RepositoryService { + getModelName() { return modelName; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, - clone: function(item) { + } + + clone(item) { return this.store.clone(this.getModelName(), get(item, this.getPrimaryKey())); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/coordinate.js b/ui/packages/consul-ui/app/services/repository/coordinate.js similarity index 78% rename from ui-v2/app/services/repository/coordinate.js rename to ui/packages/consul-ui/app/services/repository/coordinate.js index fa7623549..5978893f0 100644 --- a/ui-v2/app/services/repository/coordinate.js +++ b/ui/packages/consul-ui/app/services/repository/coordinate.js @@ -6,13 +6,14 @@ import distance from 'consul-ui/utils/distance'; const tomography = tomographyFactory(distance); const modelName = 'coordinate'; -export default RepositoryService.extend({ - getModelName: function() { +export default class CoordinateService extends RepositoryService { + getModelName() { return modelName; - }, + } + // Coordinates don't need nspaces so we have a custom method here // that doesn't accept nspaces - findAllByDatacenter: function(dc, configuration = {}) { + findAllByDatacenter(dc, configuration = {}) { const query = { dc: dc, }; @@ -21,18 +22,19 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, - findAllByNode: function(node, dc, configuration) { + } + + findAllByNode(node, dc, configuration) { return this.findAllByDatacenter(dc, configuration).then(function(coordinates) { let results = {}; if (get(coordinates, 'length') > 1) { results = tomography( node, - coordinates.map(item => get(item, 'data')) + coordinates ); } results.meta = get(coordinates, 'meta'); return results; }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/dc.js b/ui/packages/consul-ui/app/services/repository/dc.js similarity index 76% rename from ui-v2/app/services/repository/dc.js rename to ui/packages/consul-ui/app/services/repository/dc.js index e34379625..8fdc17879 100644 --- a/ui-v2/app/services/repository/dc.js +++ b/ui/packages/consul-ui/app/services/repository/dc.js @@ -1,18 +1,22 @@ -import RepositoryService from 'consul-ui/services/repository'; import { inject as service } from '@ember/service'; +import RepositoryService from 'consul-ui/services/repository'; import { get } from '@ember/object'; import Error from '@ember/error'; const modelName = 'dc'; -export default RepositoryService.extend({ - settings: service('settings'), - getModelName: function() { +export default class DcService extends RepositoryService { + @service('settings') + settings; + + getModelName() { return modelName; - }, - findAll: function() { + } + + findAll() { return this.store.query(this.getModelName(), {}); - }, - findBySlug: function(name, items) { + } + + findBySlug(name, items) { if (name != null) { const item = items.findBy('Name', name); if (item) { @@ -22,12 +26,12 @@ export default RepositoryService.extend({ }); } } - const e = new Error(); + const e = new Error('Page not found'); e.status = '404'; - e.detail = 'Page not found'; return Promise.reject({ errors: [e] }); - }, - getActive: function(name, items) { + } + + getActive(name, items) { const settings = this.settings; return Promise.all([name || settings.findBySlug('dc'), items || this.findAll()]).then( ([name, items]) => { @@ -38,8 +42,9 @@ export default RepositoryService.extend({ }); } ); - }, - clearActive: function() { + } + + clearActive() { return this.settings.delete('dc'); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/discovery-chain.js b/ui/packages/consul-ui/app/services/repository/discovery-chain.js similarity index 76% rename from ui-v2/app/services/repository/discovery-chain.js rename to ui/packages/consul-ui/app/services/repository/discovery-chain.js index 704a42e54..0ce555872 100644 --- a/ui-v2/app/services/repository/discovery-chain.js +++ b/ui/packages/consul-ui/app/services/repository/discovery-chain.js @@ -4,17 +4,20 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'discovery-chain'; const ERROR_MESH_DISABLED = 'Connect must be enabled in order to use this endpoint'; -export default RepositoryService.extend({ - dcs: service('repository/dc'), - getModelName: function() { +export default class DiscoveryChainService extends RepositoryService { + @service('repository/dc') + dcs; + + getModelName() { return modelName; - }, - findBySlug: function(slug, dc, nspace, configuration = {}) { + } + + findBySlug(slug, dc, nspace, configuration = {}) { const datacenter = this.dcs.peekOne(dc); if (datacenter !== null && !get(datacenter, 'MeshEnabled')) { return Promise.resolve(); } - return this._super(...arguments).catch(e => { + return super.findBySlug(...arguments).catch(e => { const code = get(e, 'errors.firstObject.status'); const body = get(e, 'errors.firstObject.detail').trim(); switch (code) { @@ -27,5 +30,5 @@ export default RepositoryService.extend({ throw e; } }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/intention-permission-http-header.js b/ui/packages/consul-ui/app/services/repository/intention-permission-http-header.js similarity index 59% rename from ui-v2/app/services/repository/intention-permission-http-header.js rename to ui/packages/consul-ui/app/services/repository/intention-permission-http-header.js index 7fb1ee093..d3a8aecc7 100644 --- a/ui-v2/app/services/repository/intention-permission-http-header.js +++ b/ui/packages/consul-ui/app/services/repository/intention-permission-http-header.js @@ -1,14 +1,16 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'intention-permission-http-header'; -export default RepositoryService.extend({ - getModelName: function() { +export default class IntentionPermissionHttpHeaderService extends RepositoryService { + getModelName() { return modelName; - }, - create: function(obj = {}) { + } + + create(obj = {}) { return this.store.createFragment(this.getModelName(), obj); - }, - persist: function(item) { + } + + persist(item) { return item.execute(); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/intention-permission.js b/ui/packages/consul-ui/app/services/repository/intention-permission.js similarity index 74% rename from ui-v2/app/services/repository/intention-permission.js rename to ui/packages/consul-ui/app/services/repository/intention-permission.js index 79e2c906f..aa4cbdda5 100644 --- a/ui-v2/app/services/repository/intention-permission.js +++ b/ui/packages/consul-ui/app/services/repository/intention-permission.js @@ -1,18 +1,20 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'intention-permission'; -export default RepositoryService.extend({ - getModelName: function() { +export default class IntentionPermissionService extends RepositoryService { + getModelName() { return modelName; - }, - create: function(obj = {}) { + } + + create(obj = {}) { // intention-permission and intention-permission-http // are currently treated as one and the same return this.store.createFragment(this.getModelName(), { ...obj, HTTP: this.store.createFragment('intention-permission-http', obj.HTTP || {}), }); - }, - persist: function(item) { + } + + persist(item) { return item.execute(); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/services/repository/intention.js b/ui/packages/consul-ui/app/services/repository/intention.js new file mode 100644 index 000000000..7489b3beb --- /dev/null +++ b/ui/packages/consul-ui/app/services/repository/intention.js @@ -0,0 +1,60 @@ +import { set, get } from '@ember/object'; +import RepositoryService from 'consul-ui/services/repository'; +import { PRIMARY_KEY } from 'consul-ui/models/intention'; + +const modelName = 'intention'; +export default class IntentionRepository extends RepositoryService { + managedByCRDs = false; + + getModelName() { + return modelName; + } + + getPrimaryKey() { + return PRIMARY_KEY; + } + + create(obj) { + delete obj.Namespace; + return super.create({ + Action: 'allow', + ...obj, + }); + } + + isManagedByCRDs() { + if (!this.managedByCRDs) { + this.managedByCRDs = this.store + .peekAll(this.getModelName()) + .toArray() + .some(item => item.IsManagedByCRD); + } + return this.managedByCRDs; + } + + async persist(obj) { + const res = await super.persist(...arguments); + // if Action is set it means we are an l4 type intention + // we don't delete these at a UI level incase the user + // would like to switch backwards and forwards between + // allow/deny/l7 in the forms, but once its been saved + // to the backend we then delete them + if (get(res, 'Action.length')) { + set(res, 'Permissions', []); + } + return res; + } + + async findByService(slug, dc, nspace, configuration = {}) { + const query = { + dc, + nspace, + filter: `SourceName == "${slug}" or DestinationName == "${slug}" or SourceName == "*" or DestinationName == "*"`, + }; + if (typeof configuration.cursor !== 'undefined') { + query.index = configuration.cursor; + query.uri = configuration.uri; + } + return this.store.query(this.getModelName(), query); + } +} diff --git a/ui-v2/app/services/repository/kv.js b/ui/packages/consul-ui/app/services/repository/kv.js similarity index 90% rename from ui-v2/app/services/repository/kv.js rename to ui/packages/consul-ui/app/services/repository/kv.js index fccd822d1..5d4e3c1eb 100644 --- a/ui-v2/app/services/repository/kv.js +++ b/ui/packages/consul-ui/app/services/repository/kv.js @@ -4,15 +4,17 @@ import { get } from '@ember/object'; import { PRIMARY_KEY } from 'consul-ui/models/kv'; const modelName = 'kv'; -export default RepositoryService.extend({ - getModelName: function() { +export default class KvService extends RepositoryService { + getModelName() { return modelName; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, + } + // this one gives you the full object so key,values and meta - findBySlug: function(key, dc, nspace, configuration = {}) { + findBySlug(key, dc, nspace, configuration = {}) { if (isFolder(key)) { // TODO: This very much shouldn't be here, // needs to eventually use ember-datas generateId thing @@ -37,10 +39,11 @@ export default RepositoryService.extend({ query.index = configuration.cursor; } return this.store.queryRecord(this.getModelName(), query); - }, + } + // this one only gives you keys // https://www.consul.io/api/kv.html - findAllBySlug: function(key, dc, nspace, configuration = {}) { + findAllBySlug(key, dc, nspace, configuration = {}) { if (key === '/') { key = ''; } @@ -76,5 +79,5 @@ export default RepositoryService.extend({ } throw e; }); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/services/repository/metrics.js b/ui/packages/consul-ui/app/services/repository/metrics.js new file mode 100644 index 000000000..9f29137d3 --- /dev/null +++ b/ui/packages/consul-ui/app/services/repository/metrics.js @@ -0,0 +1,80 @@ +import { inject as service } from '@ember/service'; +import RepositoryService from 'consul-ui/services/repository'; +import { env } from 'consul-ui/env'; + +// meta is used by DataSource to configure polling. The interval controls how +// long between each poll to the metrics provider. TODO - make this configurable +// in the UI settings. +const meta = { + interval: env('CONSUL_METRICS_POLL_INTERVAL') || 10000, +}; + +export default class MetricsService extends RepositoryService { + @service('ui-config') + cfg; + + @service('client/http') + client; + + error = null; + + init() { + super.init(...arguments); + const uiCfg = this.cfg.get(); + // Inject whether or not the proxy is enabled as an option into the opaque + // JSON options the user provided. + const opts = uiCfg.metrics_provider_options || {}; + opts.metrics_proxy_enabled = uiCfg.metrics_proxy_enabled; + // Inject a convenience function for dialing through the metrics proxy. + opts.fetch = (path, params) => + this.client.fetchWithToken(`/v1/internal/ui/metrics-proxy${path}`, params); + // Inject the base app URL + const provider = uiCfg.metrics_provider || 'prometheus'; + + try { + this.provider = window.consul.getMetricsProvider(provider, opts); + } catch (e) { + this.error = new Error(`metrics provider not initialized: ${e}`); + // Show the user the error once for debugging their provider outside UI + // Dev. + console.error(this.error); // eslint-disable-line no-console + } + } + + findServiceSummary(protocol, slug, dc, nspace, configuration = {}) { + if (this.error) { + return Promise.reject(this.error); + } + const promises = [ + this.provider.serviceRecentSummarySeries(slug, dc, nspace, protocol, {}), + this.provider.serviceRecentSummaryStats(slug, dc, nspace, protocol, {}), + ]; + return Promise.all(promises).then(function (results) { + return { + meta: meta, + series: results[0], + stats: results[1].stats, + }; + }); + } + + findUpstreamSummary(slug, dc, nspace, configuration = {}) { + if (this.error) { + return Promise.reject(this.error); + } + return this.provider.upstreamRecentSummaryStats(slug, dc, nspace, {}).then(function (result) { + result.meta = meta; + return result; + }); + } + + findDownstreamSummary(slug, dc, nspace, configuration = {}) { + if (this.error) { + return Promise.reject(this.error); + } + return this.provider.downstreamRecentSummaryStats(slug, dc, nspace, {}).then(function (result) { + result.meta = meta; + return result; + }); + } +} diff --git a/ui-v2/app/services/repository/node.js b/ui/packages/consul-ui/app/services/repository/node.js similarity index 70% rename from ui-v2/app/services/repository/node.js rename to ui/packages/consul-ui/app/services/repository/node.js index 26ca7c894..7b557f4ea 100644 --- a/ui-v2/app/services/repository/node.js +++ b/ui/packages/consul-ui/app/services/repository/node.js @@ -1,11 +1,12 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'node'; -export default RepositoryService.extend({ - getModelName: function() { +export default class NodeService extends RepositoryService { + getModelName() { return modelName; - }, - findLeader: function(dc, configuration = {}) { + } + + findLeader(dc, configuration = {}) { const query = { dc: dc, }; @@ -13,5 +14,5 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.queryLeader(this.getModelName(), query); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/nspace.js b/ui/packages/consul-ui/app/services/repository/nspace.js similarity index 85% rename from ui-v2/app/services/repository/nspace.js rename to ui/packages/consul-ui/app/services/repository/nspace.js index 040b1b804..da962e2f9 100644 --- a/ui-v2/app/services/repository/nspace.js +++ b/ui/packages/consul-ui/app/services/repository/nspace.js @@ -2,17 +2,20 @@ import RepositoryService from 'consul-ui/services/repository'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/nspace'; const modelName = 'nspace'; -export default RepositoryService.extend({ - getPrimaryKey: function() { +export default class NspaceService extends RepositoryService { + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - getModelName: function() { + } + + getModelName() { return modelName; - }, - remove: function(item) { + } + + remove(item) { // Namespace deletion is more of a soft delete. // Therefore the namespace still exists once we've requested a delete/removal. // This makes 'removing' more of a custom action rather than a standard @@ -32,13 +35,14 @@ export default RepositoryService.extend({ 'nspace' ); return res; - }, - findAll: function(configuration = {}) { + } + + findAll(configuration = {}) { const query = {}; if (typeof configuration.cursor !== 'undefined') { query.index = configuration.cursor; query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/nspace/disabled.js b/ui/packages/consul-ui/app/services/repository/nspace/disabled.js similarity index 58% rename from ui-v2/app/services/repository/nspace/disabled.js rename to ui/packages/consul-ui/app/services/repository/nspace/disabled.js index 50e4af710..68437a427 100644 --- a/ui-v2/app/services/repository/nspace/disabled.js +++ b/ui/packages/consul-ui/app/services/repository/nspace/disabled.js @@ -3,25 +3,30 @@ import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/nspace'; const modelName = 'nspace'; const DEFAULT_NSPACE = 'default'; -export default RepositoryService.extend({ - getPrimaryKey: function() { +export default class DisabledService extends RepositoryService { + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - getModelName: function() { + } + + getModelName() { return modelName; - }, - findAll: function(configuration = {}) { + } + + findAll(configuration = {}) { return Promise.resolve([]); - }, - getActive: function() { + } + + getActive() { return { Name: DEFAULT_NSPACE, }; - }, - authorize: function(dc, nspace) { + } + + authorize(dc, nspace) { return Promise.resolve([]); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/nspace/enabled.js b/ui/packages/consul-ui/app/services/repository/nspace/enabled.js similarity index 87% rename from ui-v2/app/services/repository/nspace/enabled.js rename to ui/packages/consul-ui/app/services/repository/nspace/enabled.js index ec05fa1bf..8239c6346 100644 --- a/ui-v2/app/services/repository/nspace/enabled.js +++ b/ui/packages/consul-ui/app/services/repository/nspace/enabled.js @@ -5,27 +5,35 @@ import RepositoryService from 'consul-ui/services/repository'; import { PRIMARY_KEY, SLUG_KEY } from 'consul-ui/models/nspace'; const modelName = 'nspace'; -export default RepositoryService.extend({ - router: service('router'), - settings: service('settings'), - getPrimaryKey: function() { +export default class EnabledService extends RepositoryService { + @service('router') + router; + + @service('settings') + settings; + + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - getModelName: function() { + } + + getModelName() { return modelName; - }, - findAll: function(configuration = {}) { + } + + findAll(configuration = {}) { const query = {}; if (typeof configuration.cursor !== 'undefined') { query.index = configuration.cursor; query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, - authorize: function(dc, nspace) { + } + + authorize(dc, nspace) { if (!env('CONSUL_ACLS_ENABLED')) { return Promise.resolve([ { @@ -38,8 +46,9 @@ export default RepositoryService.extend({ return this.store.authorize(this.getModelName(), { dc: dc, ns: nspace }).catch(function(e) { return []; }); - }, - getActive: function() { + } + + getActive() { let routeParams = {}; // this is only populated before the model hook as fired, // it is then deleted after the model hook has finished @@ -77,5 +86,5 @@ export default RepositoryService.extend({ Name: item.nspace.substr(1), }; }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/oidc-provider.js b/ui/packages/consul-ui/app/services/repository/oidc-provider.js similarity index 78% rename from ui-v2/app/services/repository/oidc-provider.js rename to ui/packages/consul-ui/app/services/repository/oidc-provider.js index ac8db7d9c..77907013c 100644 --- a/ui-v2/app/services/repository/oidc-provider.js +++ b/ui/packages/consul-ui/app/services/repository/oidc-provider.js @@ -1,20 +1,24 @@ -import RepositoryService from 'consul-ui/services/repository'; import { inject as service } from '@ember/service'; +import RepositoryService from 'consul-ui/services/repository'; import { getOwner } from '@ember/application'; import { set } from '@ember/object'; const modelName = 'oidc-provider'; const OAUTH_PROVIDER_NAME = 'oidc-with-url'; -export default RepositoryService.extend({ - manager: service('torii'), - init: function() { - this._super(...arguments); +export default class OidcProviderService extends RepositoryService { + @service('torii') + manager; + + init() { + super.init(...arguments); this.provider = getOwner(this).lookup(`torii-provider:${OAUTH_PROVIDER_NAME}`); - }, - getModelName: function() { + } + + getModelName() { return modelName; - }, - authorize: function(id, code, state, dc, nspace, configuration = {}) { + } + + authorize(id, code, state, dc, nspace, configuration = {}) { const query = { id: id, code: code, @@ -23,8 +27,9 @@ export default RepositoryService.extend({ ns: nspace, }; return this.store.authorize(this.getModelName(), query); - }, - logout: function(id, code, state, dc, nspace, configuration = {}) { + } + + logout(id, code, state, dc, nspace, configuration = {}) { // TODO: Temporarily call this secret, as we alreayd do that with // self in the `store` look to see whether we should just call it id like // the rest @@ -32,11 +37,13 @@ export default RepositoryService.extend({ id: id, }; return this.store.logout(this.getModelName(), query); - }, - close: function() { + } + + close() { this.manager.close(OAUTH_PROVIDER_NAME); - }, - findCodeByURL: function(src) { + } + + findCodeByURL(src) { // TODO: Maybe move this to the provider itself set(this.provider, 'baseUrl', src); return this.manager.open(OAUTH_PROVIDER_NAME, {}).catch(e => { @@ -52,5 +59,5 @@ export default RepositoryService.extend({ } this.store.adapterFor(this.getModelName()).error(err); }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/policy.js b/ui/packages/consul-ui/app/services/repository/policy.js similarity index 78% rename from ui-v2/app/services/repository/policy.js rename to ui/packages/consul-ui/app/services/repository/policy.js index 59ed5a89a..57c4dedbe 100644 --- a/ui-v2/app/services/repository/policy.js +++ b/ui/packages/consul-ui/app/services/repository/policy.js @@ -8,20 +8,24 @@ const isValidServerError = isValidServerErrorFactory(); const status = statusFactory(isValidServerError, Promise); const MODEL_NAME = 'policy'; -export default RepositoryService.extend({ - getModelName: function() { +export default class PolicyService extends RepositoryService { + getModelName() { return MODEL_NAME; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - status: function(obj) { + } + + status(obj) { return status(obj); - }, - persist: function(item) { + } + + persist(item) { // only if a policy doesn't have a template, save it // right now only ServiceIdentities have templates and // are not saveable themselves (but can be saved to a Role/Token) @@ -30,8 +34,9 @@ export default RepositoryService.extend({ return item.save(); } return Promise.resolve(item); - }, - translate: function(item) { + } + + translate(item) { return this.store.translate('policy', get(item, 'Rules')); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/proxy.js b/ui/packages/consul-ui/app/services/repository/proxy.js similarity index 85% rename from ui-v2/app/services/repository/proxy.js rename to ui/packages/consul-ui/app/services/repository/proxy.js index 9e20745dd..e0fa74143 100644 --- a/ui-v2/app/services/repository/proxy.js +++ b/ui/packages/consul-ui/app/services/repository/proxy.js @@ -2,14 +2,16 @@ import RepositoryService from 'consul-ui/services/repository'; import { PRIMARY_KEY } from 'consul-ui/models/proxy'; import { get, set } from '@ember/object'; const modelName = 'proxy'; -export default RepositoryService.extend({ - getModelName: function() { +export default class ProxyService extends RepositoryService { + getModelName() { return modelName; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, - findAllBySlug: function(slug, dc, nspace, configuration = {}) { + } + + findAllBySlug(slug, dc, nspace, configuration = {}) { const query = { id: slug, ns: nspace, @@ -33,8 +35,9 @@ export default RepositoryService.extend({ }); return items; }); - }, - findInstanceBySlug: function(id, node, slug, dc, nspace, configuration) { + } + + findInstanceBySlug(id, node, slug, dc, nspace, configuration) { return this.findAllBySlug(slug, dc, nspace, configuration).then(function(items) { let res = {}; if (get(items, 'length') > 0) { @@ -51,5 +54,5 @@ export default RepositoryService.extend({ set(res, 'meta', get(items, 'meta')); return res; }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/role.js b/ui/packages/consul-ui/app/services/repository/role.js similarity index 74% rename from ui-v2/app/services/repository/role.js rename to ui/packages/consul-ui/app/services/repository/role.js index 942b7f288..6c40c3929 100644 --- a/ui-v2/app/services/repository/role.js +++ b/ui/packages/consul-ui/app/services/repository/role.js @@ -7,17 +7,20 @@ const isValidServerError = isValidServerErrorFactory(); const status = statusFactory(isValidServerError, Promise); const MODEL_NAME = 'role'; -export default RepositoryService.extend({ - getModelName: function() { +export default class RoleService extends RepositoryService { + getModelName() { return MODEL_NAME; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - status: function(obj) { + } + + status(obj) { return status(obj); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/service-instance.js b/ui/packages/consul-ui/app/services/repository/service-instance.js similarity index 75% rename from ui-v2/app/services/repository/service-instance.js rename to ui/packages/consul-ui/app/services/repository/service-instance.js index 737f366e4..31ec872f1 100644 --- a/ui-v2/app/services/repository/service-instance.js +++ b/ui/packages/consul-ui/app/services/repository/service-instance.js @@ -1,10 +1,11 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'service-instance'; -export default RepositoryService.extend({ - getModelName: function() { +export default class ServiceInstanceService extends RepositoryService { + getModelName() { return modelName; - }, - findByService: function(slug, dc, nspace, configuration = {}) { + } + + findByService(slug, dc, nspace, configuration = {}) { const query = { dc: dc, ns: nspace, @@ -15,8 +16,9 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, - findBySlug: function(serviceId, node, service, dc, nspace, configuration = {}) { + } + + findBySlug(serviceId, node, service, dc, nspace, configuration = {}) { const query = { dc: dc, ns: nspace, @@ -29,5 +31,5 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.queryRecord(this.getModelName(), query); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/service.js b/ui/packages/consul-ui/app/services/repository/service.js similarity index 71% rename from ui-v2/app/services/repository/service.js rename to ui/packages/consul-ui/app/services/repository/service.js index 1a1d9d903..b804b486b 100644 --- a/ui-v2/app/services/repository/service.js +++ b/ui/packages/consul-ui/app/services/repository/service.js @@ -1,10 +1,11 @@ import RepositoryService from 'consul-ui/services/repository'; const modelName = 'service'; -export default RepositoryService.extend({ - getModelName: function() { +export default class _RepositoryService extends RepositoryService { + getModelName() { return modelName; - }, - findGatewayBySlug: function(slug, dc, nspace, configuration = {}) { + } + + findGatewayBySlug(slug, dc, nspace, configuration = {}) { const query = { dc: dc, ns: nspace, @@ -15,5 +16,5 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/session.js b/ui/packages/consul-ui/app/services/repository/session.js similarity index 71% rename from ui-v2/app/services/repository/session.js rename to ui/packages/consul-ui/app/services/repository/session.js index aa96584da..bc98df92d 100644 --- a/ui-v2/app/services/repository/session.js +++ b/ui/packages/consul-ui/app/services/repository/session.js @@ -1,13 +1,16 @@ -import RepositoryService from 'consul-ui/services/repository'; import { inject as service } from '@ember/service'; +import RepositoryService from 'consul-ui/services/repository'; const modelName = 'session'; -export default RepositoryService.extend({ - store: service('store'), - getModelName: function() { +export default class SessionService extends RepositoryService { + @service('store') + store; + + getModelName() { return modelName; - }, - findByNode: function(node, dc, nspace, configuration = {}) { + } + + findByNode(node, dc, nspace, configuration = {}) { const query = { id: node, dc: dc, @@ -18,9 +21,10 @@ export default RepositoryService.extend({ query.uri = configuration.uri; } return this.store.query(this.getModelName(), query); - }, + } + // TODO: Why Key? Probably should be findBySlug like the others - findByKey: function(slug, dc, nspace) { + findByKey(slug, dc, nspace) { return this.findBySlug(...arguments); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/token.js b/ui/packages/consul-ui/app/services/repository/token.js similarity index 79% rename from ui-v2/app/services/repository/token.js rename to ui/packages/consul-ui/app/services/repository/token.js index 15a59b925..75f4017d6 100644 --- a/ui-v2/app/services/repository/token.js +++ b/ui/packages/consul-ui/app/services/repository/token.js @@ -8,20 +8,24 @@ const isValidServerError = isValidServerErrorFactory(); const status = statusFactory(isValidServerError, Promise); const MODEL_NAME = 'token'; -export default RepositoryService.extend({ - getModelName: function() { +export default class TokenService extends RepositoryService { + getModelName() { return MODEL_NAME; - }, - getPrimaryKey: function() { + } + + getPrimaryKey() { return PRIMARY_KEY; - }, - getSlugKey: function() { + } + + getSlugKey() { return SLUG_KEY; - }, - status: function(obj) { + } + + status(obj) { return status(obj); - }, - self: function(secret, dc) { + } + + self(secret, dc) { return this.store .self(this.getModelName(), { secret: secret, @@ -38,22 +42,25 @@ export default RepositoryService.extend({ } return Promise.reject(e); }); - }, - clone: function(item) { + } + + clone(item) { return this.store.clone(this.getModelName(), get(item, PRIMARY_KEY)); - }, - findByPolicy: function(id, dc, nspace) { + } + + findByPolicy(id, dc, nspace) { return this.store.query(this.getModelName(), { policy: id, dc: dc, ns: nspace, }); - }, - findByRole: function(id, dc, nspace) { + } + + findByRole(id, dc, nspace) { return this.store.query(this.getModelName(), { role: id, dc: dc, ns: nspace, }); - }, -}); + } +} diff --git a/ui-v2/app/services/repository/topology.js b/ui/packages/consul-ui/app/services/repository/topology.js similarity index 85% rename from ui-v2/app/services/repository/topology.js rename to ui/packages/consul-ui/app/services/repository/topology.js index 7e9f51383..bd9fb0309 100644 --- a/ui-v2/app/services/repository/topology.js +++ b/ui/packages/consul-ui/app/services/repository/topology.js @@ -1,16 +1,19 @@ -import RepositoryService from 'consul-ui/services/repository'; import { inject as service } from '@ember/service'; +import RepositoryService from 'consul-ui/services/repository'; import { get, set } from '@ember/object'; const modelName = 'topology'; const ERROR_MESH_DISABLED = 'Connect must be enabled in order to use this endpoint'; -export default RepositoryService.extend({ - dcs: service('repository/dc'), - getModelName: function() { +export default class TopologyService extends RepositoryService { + @service('repository/dc') + dcs; + + getModelName() { return modelName; - }, - findBySlug: function(slug, kind, dc, nspace, configuration = {}) { + } + + findBySlug(slug, kind, dc, nspace, configuration = {}) { const datacenter = this.dcs.peekOne(dc); if (datacenter !== null && !get(datacenter, 'MeshEnabled')) { return Promise.resolve(); @@ -38,5 +41,5 @@ export default RepositoryService.extend({ throw e; } }); - }, -}); + } +} diff --git a/ui-v2/app/services/schema.js b/ui/packages/consul-ui/app/services/schema.js similarity index 58% rename from ui-v2/app/services/schema.js rename to ui/packages/consul-ui/app/services/schema.js index bf4e9c22f..7874ce824 100644 --- a/ui-v2/app/services/schema.js +++ b/ui/packages/consul-ui/app/services/schema.js @@ -3,8 +3,8 @@ import { schema as intentionPermissionSchema } from 'consul-ui/models/intention- import { schema as intentionPermissionHttpSchema } from 'consul-ui/models/intention-permission-http'; import { schema as intentionPermissionHttpHeaderSchema } from 'consul-ui/models/intention-permission-http-header'; -export default Service.extend({ - 'intention-permission': intentionPermissionSchema, - 'intention-permission-http': intentionPermissionHttpSchema, - 'intention-permission-http-header': intentionPermissionHttpHeaderSchema, -}); +export default class SchemaService extends Service { + 'intention-permission' = intentionPermissionSchema; + 'intention-permission-http' = intentionPermissionHttpSchema; + 'intention-permission-http-header' = intentionPermissionHttpHeaderSchema; +} diff --git a/ui/packages/consul-ui/app/services/search.js b/ui/packages/consul-ui/app/services/search.js new file mode 100644 index 000000000..78f236b72 --- /dev/null +++ b/ui/packages/consul-ui/app/services/search.js @@ -0,0 +1,43 @@ +import Service from '@ember/service'; + +import intention from 'consul-ui/search/predicates/intention'; +import upstreamInstance from 'consul-ui/search/predicates/upstream-instance'; + +import token from 'consul-ui/search/filters/token'; +import policy from 'consul-ui/search/filters/policy'; +import role from 'consul-ui/search/filters/role'; +import kv from 'consul-ui/search/filters/kv'; +import acl from 'consul-ui/search/filters/acl'; +import node from 'consul-ui/search/filters/node'; +// service instance +import nodeService from 'consul-ui/search/filters/node/service'; +import serviceNode from 'consul-ui/search/filters/service/node'; +import service from 'consul-ui/search/filters/service'; +import nspace from 'consul-ui/search/filters/nspace'; + +import filterableFactory from 'consul-ui/utils/search/filterable'; +const filterable = filterableFactory(); +const searchables = { + token: token(filterable), + acl: acl(filterable), + policy: policy(filterable), + role: role(filterable), + kv: kv(filterable), + node: node(filterable), + serviceInstance: serviceNode(filterable), + nodeservice: nodeService(filterable), + service: service(filterable), + nspace: nspace(filterable), +}; +const predicates = { + intention: intention(), + ['upstream-instance']: upstreamInstance(), +}; +export default class SearchService extends Service { + searchable(name) { + return searchables[name]; + } + predicate(name) { + return predicates[name]; + } +} diff --git a/ui-v2/app/services/settings.js b/ui/packages/consul-ui/app/services/settings.js similarity index 83% rename from ui-v2/app/services/settings.js rename to ui/packages/consul-ui/app/services/settings.js index 7870a8ac1..ced7243f2 100644 --- a/ui-v2/app/services/settings.js +++ b/ui/packages/consul-ui/app/services/settings.js @@ -8,22 +8,26 @@ export const ifNotBlocking = function(repo) { return typeof settings.blocking !== 'undefined' && !settings.blocking; }); }; -export default Service.extend({ - storage: storage, - findAll: function(key) { +export default class SettingsService extends Service { + storage = storage; + + findAll(key) { return Promise.resolve(this.storage.all()); - }, - findBySlug: function(slug) { + } + + findBySlug(slug) { return Promise.resolve(this.storage.getValue(slug)); - }, - persist: function(obj) { + } + + persist(obj) { const storage = this.storage; Object.keys(obj).forEach((item, i) => { storage.setValue(item, obj[item]); }); return Promise.resolve(obj); - }, - delete: function(obj) { + } + + delete(obj) { // TODO: Loop through and delete the specified keys if (!Array.isArray(obj)) { obj = [obj]; @@ -34,5 +38,5 @@ export default Service.extend({ return prev; }, {}); return Promise.resolve(item); - }, -}); + } +} diff --git a/ui/packages/consul-ui/app/services/sort.js b/ui/packages/consul-ui/app/services/sort.js new file mode 100644 index 000000000..c741d8d3d --- /dev/null +++ b/ui/packages/consul-ui/app/services/sort.js @@ -0,0 +1,46 @@ +import Service from '@ember/service'; +import service from 'consul-ui/sort/comparators/service'; +import serviceInstance from 'consul-ui/sort/comparators/service-instance'; +import upstreamInstance from 'consul-ui/sort/comparators/upstream-instance'; +import kv from 'consul-ui/sort/comparators/kv'; +import check from 'consul-ui/sort/comparators/check'; +import intention from 'consul-ui/sort/comparators/intention'; +import token from 'consul-ui/sort/comparators/token'; +import role from 'consul-ui/sort/comparators/role'; +import policy from 'consul-ui/sort/comparators/policy'; +import nspace from 'consul-ui/sort/comparators/nspace'; +import node from 'consul-ui/sort/comparators/node'; + +// returns an array of Property:asc, Property:desc etc etc +const directionify = arr => { + return arr.reduce((prev, item) => prev.concat([`${item}:asc`, `${item}:desc`]), []); +}; +// Specify a list of sortable properties, when called with a property +// returns an array ready to be passed to ember @sort +// properties(['Potential', 'Sortable', 'Properties'])('Sortable:asc') => ['Sortable:asc'] +const properties = (props = []) => key => { + const comparables = directionify(props); + return [comparables.find(item => item === key) || comparables[0]]; +}; +const options = { + properties, + directionify, +}; +const comparators = { + service: service(options), + serviceInstance: serviceInstance(options), + ['upstream-instance']: upstreamInstance(options), + kv: kv(options), + check: check(options), + intention: intention(options), + token: token(options), + role: role(options), + policy: policy(options), + nspace: nspace(options), + node: node(options), +}; +export default class SortService extends Service { + comparator(type) { + return comparators[type]; + } +} diff --git a/ui-v2/app/services/state.js b/ui/packages/consul-ui/app/services/state.js similarity index 83% rename from ui-v2/app/services/state.js rename to ui/packages/consul-ui/app/services/state.js index efb9cd88e..6e9d612cd 100644 --- a/ui-v2/app/services/state.js +++ b/ui/packages/consul-ui/app/services/state.js @@ -3,13 +3,16 @@ import { set } from '@ember/object'; import flat from 'flat'; import { createMachine, interpret } from '@xstate/fsm'; -export default Service.extend({ - logger: service('logger'), +export default class StateService extends Service { + @service('logger') + logger; + // @xstate/fsm - log: function(chart, state) { + log(chart, state) { // this.logger.execute(`${chart.id} > ${state.value}`); - }, - addGuards: function(chart, options) { + } + + addGuards(chart, options) { this.guards(chart).forEach(function([path, name]) { // xstate/fsm has no guard lookup set(chart, path, function() { @@ -17,11 +20,13 @@ export default Service.extend({ }); }); return [chart, options]; - }, - machine: function(chart, options = {}) { + } + + machine(chart, options = {}) { return createMachine(...this.addGuards(chart, options)); - }, - prepareChart: function(chart) { + } + + prepareChart(chart) { // xstate/fsm has no guard lookup so we clone the chart here // for when we replace the string based guards with functions // further down @@ -42,9 +47,10 @@ export default Service.extend({ }); } return chart; - }, + } + // abstract - matches: function(state, matches) { + matches(state, matches) { if (typeof state === 'undefined') { return false; } @@ -52,13 +58,15 @@ export default Service.extend({ return values.some(item => { return state.matches(item); }); - }, - state: function(cb) { + } + + state(cb) { return { matches: cb, }; - }, - interpret: function(chart, options) { + } + + interpret(chart, options) { chart = this.prepareChart(chart); const service = interpret(this.machine(chart, options)); // returns subscription @@ -69,8 +77,9 @@ export default Service.extend({ } }); return service; - }, - guards: function(chart) { + } + + guards(chart) { return Object.entries(flat(chart)).filter(([key]) => key.endsWith('.cond')); - }, -}); + } +} diff --git a/ui-v2/app/services/store.js b/ui/packages/consul-ui/app/services/store.js similarity index 82% rename from ui-v2/app/services/store.js rename to ui/packages/consul-ui/app/services/store.js index b4dd9767a..e5a372c4d 100644 --- a/ui-v2/app/services/store.js +++ b/ui/packages/consul-ui/app/services/store.js @@ -1,25 +1,26 @@ -import Store from 'ember-data/store'; import { inject as service } from '@ember/service'; +import Store from '@ember-data/store'; -export default Store.extend({ - // TODO: This should eventually go on a static method - // of the abstract Repository class - http: service('repository/type/event-source'), - dataSource: service('data-source/service'), - client: service('client/http'), - clear: function() { +export default class StoreService extends Store { + @service('data-source/service') + dataSource; + + @service('client/http') + client; + + clear() { // Aborting the client will close all open http type sources this.client.abort(); // once they are closed clear their caches - this.http.resetCache(); this.dataSource.resetCache(); this.init(); - }, + } + // // TODO: These only exist for ACLs, should probably make sure they fail // nicely if you aren't on ACLs for good DX // cloning immediately refreshes the view - clone: function(modelName, id) { + clone(modelName, id) { // TODO: no normalization, type it properly for the moment const adapter = this.adapterFor(modelName); // passing empty options gives me a snapshot - ? @@ -32,8 +33,9 @@ export default Store.extend({ this._internalModelForId(modelName, id).createSnapshot(options) ); // TODO: See https://github.com/emberjs/data/blob/7b8019818526a17ee72747bd3c0041354e58371a/addon/-private/system/promise-proxies.js#L68 - }, - self: function(modelName, token) { + } + + self(modelName, token) { // TODO: no normalization, type it properly for the moment const adapter = this.adapterFor(modelName); const serializer = this.serializerFor(modelName); @@ -46,11 +48,12 @@ export default Store.extend({ return adapter .self(this, modelClass, token.secret, token) .then(payload => serializer.normalizeResponse(this, modelClass, payload, token, 'self')); - }, + } + // // TODO: This one is only for nodes, should fail nicely if you call it // for anything other than nodes for good DX - queryLeader: function(modelName, query) { + queryLeader(modelName, query) { const adapter = this.adapterFor(modelName); const serializer = this.serializerFor(modelName); const modelClass = { modelName: modelName }; @@ -58,10 +61,11 @@ export default Store.extend({ payload.meta = serializer.normalizeMeta(this, modelClass, payload, null, 'leader'); return payload; }); - }, + } + // TODO: This one is only for nspaces and OIDC, should fail nicely if you call it // for anything other than nspaces/OIDC for good DX - authorize: function(modelName, query = {}) { + authorize(modelName, query = {}) { const adapter = this.adapterFor(modelName); const serializer = this.serializerFor(modelName); const modelClass = { modelName: modelName }; @@ -70,10 +74,11 @@ export default Store.extend({ .then(payload => serializer.normalizeResponse(this, modelClass, payload, undefined, 'authorize') ); - }, - logout: function(modelName, query = {}) { + } + + logout(modelName, query = {}) { const adapter = this.adapterFor(modelName); const modelClass = { modelName: modelName }; return adapter.logout(this, modelClass, query.id, query); - }, -}); + } +} diff --git a/ui-v2/app/services/ticker.js b/ui/packages/consul-ui/app/services/ticker.js similarity index 76% rename from ui-v2/app/services/ticker.js rename to ui/packages/consul-ui/app/services/ticker.js index c2cb59282..81b406779 100644 --- a/ui-v2/app/services/ticker.js +++ b/ui/packages/consul-ui/app/services/ticker.js @@ -2,12 +2,13 @@ import Service from '@ember/service'; import { Tween } from 'consul-ui/utils/ticker'; let map; -export default Service.extend({ - init: function() { - this._super(...arguments); +export default class TickerService extends Service { + init() { + super.init(...arguments); this.reset(); - }, - tweenTo: function(props, obj = '', frames, method) { + } + + tweenTo(props, obj = '', frames, method) { // TODO: Right now we only support string id's // but potentially look at allowing passing of other objects // especially DOM elements @@ -23,13 +24,15 @@ export default Service.extend({ map.set(id, Tween.to(obj, props, frames, method)); return obj; } - }, + } + // TODO: We'll try and use obj later for ticker bookkeeping - destroy: function(obj) { + destroy(obj) { this.reset(); return Tween.destroy(); - }, - reset: function() { + } + + reset() { map = new Map(); - }, -}); + } +} diff --git a/ui-v2/app/services/timeout.js b/ui/packages/consul-ui/app/services/timeout.js similarity index 82% rename from ui-v2/app/services/timeout.js rename to ui/packages/consul-ui/app/services/timeout.js index 2cda8f7c4..baa498756 100644 --- a/ui-v2/app/services/timeout.js +++ b/ui/packages/consul-ui/app/services/timeout.js @@ -3,16 +3,17 @@ import promisedTimeoutFactory from 'consul-ui/utils/promisedTimeout'; import { next } from '@ember/runloop'; const promisedTimeout = promisedTimeoutFactory(Promise); -export default Service.extend({ +export default class TimeoutService extends Service { // TODO: milliseconds should default to 0 or potentially just null // if it is 0/null use tick/next instead // if Octane eliminates the runloop things, look to use raf here instead - execute: function(milliseconds, cb) { + execute(milliseconds, cb) { return promisedTimeout(milliseconds, cb); - }, - tick: function() { + } + + tick() { return new Promise(function(resolve, reject) { next(resolve); }); - }, -}); + } +} diff --git a/ui-v2/app/services/ui-config.js b/ui/packages/consul-ui/app/services/ui-config.js similarity index 78% rename from ui-v2/app/services/ui-config.js rename to ui/packages/consul-ui/app/services/ui-config.js index 8a3973008..cdd6b8593 100644 --- a/ui-v2/app/services/ui-config.js +++ b/ui/packages/consul-ui/app/services/ui-config.js @@ -1,9 +1,9 @@ import Service from '@ember/service'; -export default Service.extend({ - config: undefined, +export default class UiConfigService extends Service { + config = undefined; - get: function() { + get() { if (this.config === undefined) { // Load config from our special meta tag for now. Later it might come from // an API instead/as well. @@ -11,5 +11,5 @@ export default Service.extend({ this.config = JSON.parse(meta); } return this.config; - }, -}); + } +} diff --git a/ui-v2/app/sort/comparators/check.js b/ui/packages/consul-ui/app/sort/comparators/check.js similarity index 100% rename from ui-v2/app/sort/comparators/check.js rename to ui/packages/consul-ui/app/sort/comparators/check.js diff --git a/ui-v2/app/sort/comparators/intention.js b/ui/packages/consul-ui/app/sort/comparators/intention.js similarity index 100% rename from ui-v2/app/sort/comparators/intention.js rename to ui/packages/consul-ui/app/sort/comparators/intention.js diff --git a/ui-v2/app/sort/comparators/kv.js b/ui/packages/consul-ui/app/sort/comparators/kv.js similarity index 100% rename from ui-v2/app/sort/comparators/kv.js rename to ui/packages/consul-ui/app/sort/comparators/kv.js diff --git a/ui-v2/app/sort/comparators/node.js b/ui/packages/consul-ui/app/sort/comparators/node.js similarity index 100% rename from ui-v2/app/sort/comparators/node.js rename to ui/packages/consul-ui/app/sort/comparators/node.js diff --git a/ui-v2/app/sort/comparators/nspace.js b/ui/packages/consul-ui/app/sort/comparators/nspace.js similarity index 100% rename from ui-v2/app/sort/comparators/nspace.js rename to ui/packages/consul-ui/app/sort/comparators/nspace.js diff --git a/ui/packages/consul-ui/app/sort/comparators/policy.js b/ui/packages/consul-ui/app/sort/comparators/policy.js new file mode 100644 index 000000000..93a22f098 --- /dev/null +++ b/ui/packages/consul-ui/app/sort/comparators/policy.js @@ -0,0 +1,3 @@ +export default ({ properties }) => (key = 'Name:asc') => { + return properties(['Name'])(key); +}; diff --git a/ui/packages/consul-ui/app/sort/comparators/role.js b/ui/packages/consul-ui/app/sort/comparators/role.js new file mode 100644 index 000000000..fc036177f --- /dev/null +++ b/ui/packages/consul-ui/app/sort/comparators/role.js @@ -0,0 +1,3 @@ +export default ({ properties }) => (key = 'Name:asc') => { + return properties(['Name', 'CreateIndex'])(key); +}; diff --git a/ui-v2/app/sort/comparators/service-instance.js b/ui/packages/consul-ui/app/sort/comparators/service-instance.js similarity index 100% rename from ui-v2/app/sort/comparators/service-instance.js rename to ui/packages/consul-ui/app/sort/comparators/service-instance.js diff --git a/ui-v2/app/sort/comparators/service.js b/ui/packages/consul-ui/app/sort/comparators/service.js similarity index 100% rename from ui-v2/app/sort/comparators/service.js rename to ui/packages/consul-ui/app/sort/comparators/service.js diff --git a/ui-v2/app/sort/comparators/token.js b/ui/packages/consul-ui/app/sort/comparators/token.js similarity index 100% rename from ui-v2/app/sort/comparators/token.js rename to ui/packages/consul-ui/app/sort/comparators/token.js diff --git a/ui/packages/consul-ui/app/sort/comparators/upstream-instance.js b/ui/packages/consul-ui/app/sort/comparators/upstream-instance.js new file mode 100644 index 000000000..8e3bd0cd7 --- /dev/null +++ b/ui/packages/consul-ui/app/sort/comparators/upstream-instance.js @@ -0,0 +1,3 @@ +export default ({ properties }) => (key = 'DestinationName:asc') => { + return properties(['DestinationName'])(key); +}; diff --git a/ui-v2/app/styles/app.scss b/ui/packages/consul-ui/app/styles/app.scss similarity index 100% rename from ui-v2/app/styles/app.scss rename to ui/packages/consul-ui/app/styles/app.scss diff --git a/ui-v2/app/styles/base/animation/index.scss b/ui/packages/consul-ui/app/styles/base/animation/index.scss similarity index 100% rename from ui-v2/app/styles/base/animation/index.scss rename to ui/packages/consul-ui/app/styles/base/animation/index.scss diff --git a/ui-v2/app/styles/base/color/base-variables.scss b/ui/packages/consul-ui/app/styles/base/color/base-variables.scss similarity index 100% rename from ui-v2/app/styles/base/color/base-variables.scss rename to ui/packages/consul-ui/app/styles/base/color/base-variables.scss diff --git a/ui-v2/app/styles/base/color/frame-placeholders.scss b/ui/packages/consul-ui/app/styles/base/color/frame-placeholders.scss similarity index 100% rename from ui-v2/app/styles/base/color/frame-placeholders.scss rename to ui/packages/consul-ui/app/styles/base/color/frame-placeholders.scss diff --git a/ui-v2/app/styles/base/color/index.scss b/ui/packages/consul-ui/app/styles/base/color/index.scss similarity index 100% rename from ui-v2/app/styles/base/color/index.scss rename to ui/packages/consul-ui/app/styles/base/color/index.scss diff --git a/ui-v2/app/styles/base/color/semantic-variables.scss b/ui/packages/consul-ui/app/styles/base/color/semantic-variables.scss similarity index 100% rename from ui-v2/app/styles/base/color/semantic-variables.scss rename to ui/packages/consul-ui/app/styles/base/color/semantic-variables.scss diff --git a/ui-v2/app/styles/base/components/anchors/index.scss b/ui/packages/consul-ui/app/styles/base/components/anchors/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/anchors/index.scss rename to ui/packages/consul-ui/app/styles/base/components/anchors/index.scss diff --git a/ui-v2/app/styles/base/components/breadcrumbs/index.scss b/ui/packages/consul-ui/app/styles/base/components/breadcrumbs/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/breadcrumbs/index.scss rename to ui/packages/consul-ui/app/styles/base/components/breadcrumbs/index.scss diff --git a/ui-v2/app/styles/base/components/breadcrumbs/layout.scss b/ui/packages/consul-ui/app/styles/base/components/breadcrumbs/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/breadcrumbs/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/breadcrumbs/layout.scss diff --git a/ui-v2/app/styles/base/components/breadcrumbs/skin.scss b/ui/packages/consul-ui/app/styles/base/components/breadcrumbs/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/breadcrumbs/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/breadcrumbs/skin.scss diff --git a/ui-v2/app/styles/base/components/buttons/index.scss b/ui/packages/consul-ui/app/styles/base/components/buttons/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/buttons/index.scss rename to ui/packages/consul-ui/app/styles/base/components/buttons/index.scss diff --git a/ui-v2/app/styles/base/components/buttons/layout.scss b/ui/packages/consul-ui/app/styles/base/components/buttons/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/buttons/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/buttons/layout.scss diff --git a/ui-v2/app/styles/base/components/buttons/skin.scss b/ui/packages/consul-ui/app/styles/base/components/buttons/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/buttons/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/buttons/skin.scss diff --git a/ui-v2/app/styles/base/components/checkbox-group/index.scss b/ui/packages/consul-ui/app/styles/base/components/checkbox-group/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/checkbox-group/index.scss rename to ui/packages/consul-ui/app/styles/base/components/checkbox-group/index.scss diff --git a/ui-v2/app/styles/base/components/checkbox-group/layout.scss b/ui/packages/consul-ui/app/styles/base/components/checkbox-group/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/checkbox-group/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/checkbox-group/layout.scss diff --git a/ui-v2/app/styles/base/components/checkbox-group/skin.scss b/ui/packages/consul-ui/app/styles/base/components/checkbox-group/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/checkbox-group/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/checkbox-group/skin.scss diff --git a/ui-v2/app/styles/base/components/confirmation-alert/index.scss b/ui/packages/consul-ui/app/styles/base/components/confirmation-alert/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/confirmation-alert/index.scss rename to ui/packages/consul-ui/app/styles/base/components/confirmation-alert/index.scss diff --git a/ui-v2/app/styles/base/components/confirmation-alert/layout.scss b/ui/packages/consul-ui/app/styles/base/components/confirmation-alert/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/confirmation-alert/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/confirmation-alert/layout.scss diff --git a/ui-v2/app/styles/base/components/confirmation-alert/skin.scss b/ui/packages/consul-ui/app/styles/base/components/confirmation-alert/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/confirmation-alert/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/confirmation-alert/skin.scss diff --git a/ui-v2/app/styles/base/components/display-toggle/index.scss b/ui/packages/consul-ui/app/styles/base/components/display-toggle/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/display-toggle/index.scss rename to ui/packages/consul-ui/app/styles/base/components/display-toggle/index.scss diff --git a/ui-v2/app/styles/base/components/display-toggle/layout.scss b/ui/packages/consul-ui/app/styles/base/components/display-toggle/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/display-toggle/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/display-toggle/layout.scss diff --git a/ui-v2/app/styles/base/components/display-toggle/skin.scss b/ui/packages/consul-ui/app/styles/base/components/display-toggle/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/display-toggle/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/display-toggle/skin.scss diff --git a/ui-v2/app/styles/base/components/form-elements/index.scss b/ui/packages/consul-ui/app/styles/base/components/form-elements/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/form-elements/index.scss rename to ui/packages/consul-ui/app/styles/base/components/form-elements/index.scss diff --git a/ui-v2/app/styles/base/components/form-elements/layout.scss b/ui/packages/consul-ui/app/styles/base/components/form-elements/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/form-elements/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/form-elements/layout.scss diff --git a/ui-v2/app/styles/base/components/form-elements/skin.scss b/ui/packages/consul-ui/app/styles/base/components/form-elements/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/form-elements/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/form-elements/skin.scss diff --git a/ui-v2/app/styles/base/components/index.scss b/ui/packages/consul-ui/app/styles/base/components/index.scss similarity index 89% rename from ui-v2/app/styles/base/components/index.scss rename to ui/packages/consul-ui/app/styles/base/components/index.scss index da964526c..8df208d4a 100644 --- a/ui-v2/app/styles/base/components/index.scss +++ b/ui/packages/consul-ui/app/styles/base/components/index.scss @@ -7,8 +7,6 @@ @import './form-elements/index'; @import './inline-alert/index'; @import './menu-panel/index'; -@import './modal-dialog/index'; -@import './notice/index'; @import './pill/index'; @import './popover-menu/index'; @import './radio-group/index'; diff --git a/ui-v2/app/styles/base/components/inline-alert/index.scss b/ui/packages/consul-ui/app/styles/base/components/inline-alert/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/inline-alert/index.scss rename to ui/packages/consul-ui/app/styles/base/components/inline-alert/index.scss diff --git a/ui-v2/app/styles/base/components/inline-alert/layout.scss b/ui/packages/consul-ui/app/styles/base/components/inline-alert/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/inline-alert/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/inline-alert/layout.scss diff --git a/ui-v2/app/styles/base/components/inline-alert/skin.scss b/ui/packages/consul-ui/app/styles/base/components/inline-alert/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/inline-alert/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/inline-alert/skin.scss diff --git a/ui-v2/app/styles/base/components/menu-panel/index.scss b/ui/packages/consul-ui/app/styles/base/components/menu-panel/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/menu-panel/index.scss rename to ui/packages/consul-ui/app/styles/base/components/menu-panel/index.scss diff --git a/ui-v2/app/styles/base/components/menu-panel/layout.scss b/ui/packages/consul-ui/app/styles/base/components/menu-panel/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/menu-panel/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/menu-panel/layout.scss diff --git a/ui-v2/app/styles/base/components/menu-panel/skin.scss b/ui/packages/consul-ui/app/styles/base/components/menu-panel/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/menu-panel/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/menu-panel/skin.scss diff --git a/ui-v2/app/styles/base/components/modal-dialog/index.scss b/ui/packages/consul-ui/app/styles/base/components/pill/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/modal-dialog/index.scss rename to ui/packages/consul-ui/app/styles/base/components/pill/index.scss diff --git a/ui-v2/app/styles/base/components/pill/layout.scss b/ui/packages/consul-ui/app/styles/base/components/pill/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/pill/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/pill/layout.scss diff --git a/ui-v2/app/styles/base/components/pill/skin.scss b/ui/packages/consul-ui/app/styles/base/components/pill/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/pill/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/pill/skin.scss diff --git a/ui-v2/app/styles/base/components/popover-menu/index.scss b/ui/packages/consul-ui/app/styles/base/components/popover-menu/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/popover-menu/index.scss rename to ui/packages/consul-ui/app/styles/base/components/popover-menu/index.scss diff --git a/ui-v2/app/styles/base/components/popover-menu/layout.scss b/ui/packages/consul-ui/app/styles/base/components/popover-menu/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/popover-menu/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/popover-menu/layout.scss diff --git a/ui-v2/app/styles/base/components/popover-menu/skin.scss b/ui/packages/consul-ui/app/styles/base/components/popover-menu/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/popover-menu/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/popover-menu/skin.scss diff --git a/ui-v2/app/styles/base/components/notice/index.scss b/ui/packages/consul-ui/app/styles/base/components/radio-group/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/notice/index.scss rename to ui/packages/consul-ui/app/styles/base/components/radio-group/index.scss diff --git a/ui-v2/app/styles/base/components/radio-group/layout.scss b/ui/packages/consul-ui/app/styles/base/components/radio-group/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/radio-group/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/radio-group/layout.scss diff --git a/ui-v2/app/styles/base/components/radio-group/skin.scss b/ui/packages/consul-ui/app/styles/base/components/radio-group/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/radio-group/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/radio-group/skin.scss diff --git a/ui-v2/app/styles/base/components/pill/index.scss b/ui/packages/consul-ui/app/styles/base/components/sliding-toggle/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/pill/index.scss rename to ui/packages/consul-ui/app/styles/base/components/sliding-toggle/index.scss diff --git a/ui-v2/app/styles/base/components/sliding-toggle/layout.scss b/ui/packages/consul-ui/app/styles/base/components/sliding-toggle/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/sliding-toggle/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/sliding-toggle/layout.scss diff --git a/ui-v2/app/styles/base/components/sliding-toggle/skin.scss b/ui/packages/consul-ui/app/styles/base/components/sliding-toggle/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/sliding-toggle/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/sliding-toggle/skin.scss diff --git a/ui-v2/app/styles/base/components/radio-group/index.scss b/ui/packages/consul-ui/app/styles/base/components/table/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/radio-group/index.scss rename to ui/packages/consul-ui/app/styles/base/components/table/index.scss diff --git a/ui-v2/app/styles/base/components/table/layout.scss b/ui/packages/consul-ui/app/styles/base/components/table/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/table/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/table/layout.scss diff --git a/ui-v2/app/styles/base/components/table/skin.scss b/ui/packages/consul-ui/app/styles/base/components/table/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/table/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/table/skin.scss diff --git a/ui-v2/app/styles/base/components/tabs/index.scss b/ui/packages/consul-ui/app/styles/base/components/tabs/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/tabs/index.scss rename to ui/packages/consul-ui/app/styles/base/components/tabs/index.scss diff --git a/ui-v2/app/styles/base/components/tabs/layout.scss b/ui/packages/consul-ui/app/styles/base/components/tabs/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/tabs/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/tabs/layout.scss diff --git a/ui-v2/app/styles/base/components/tabs/skin.scss b/ui/packages/consul-ui/app/styles/base/components/tabs/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/tabs/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/tabs/skin.scss diff --git a/ui-v2/app/styles/base/components/sliding-toggle/index.scss b/ui/packages/consul-ui/app/styles/base/components/toggle-button/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/sliding-toggle/index.scss rename to ui/packages/consul-ui/app/styles/base/components/toggle-button/index.scss diff --git a/ui-v2/app/styles/base/components/toggle-button/layout.scss b/ui/packages/consul-ui/app/styles/base/components/toggle-button/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/toggle-button/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/toggle-button/layout.scss diff --git a/ui-v2/app/styles/base/components/toggle-button/skin.scss b/ui/packages/consul-ui/app/styles/base/components/toggle-button/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/toggle-button/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/toggle-button/skin.scss diff --git a/ui-v2/app/styles/base/components/tooltip/index.scss b/ui/packages/consul-ui/app/styles/base/components/tooltip/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/tooltip/index.scss rename to ui/packages/consul-ui/app/styles/base/components/tooltip/index.scss diff --git a/ui-v2/app/styles/base/components/tooltip/layout.scss b/ui/packages/consul-ui/app/styles/base/components/tooltip/layout.scss similarity index 100% rename from ui-v2/app/styles/base/components/tooltip/layout.scss rename to ui/packages/consul-ui/app/styles/base/components/tooltip/layout.scss diff --git a/ui-v2/app/styles/base/components/tooltip/skin.scss b/ui/packages/consul-ui/app/styles/base/components/tooltip/skin.scss similarity index 100% rename from ui-v2/app/styles/base/components/tooltip/skin.scss rename to ui/packages/consul-ui/app/styles/base/components/tooltip/skin.scss diff --git a/ui-v2/app/styles/base/decoration/base-placeholders.scss b/ui/packages/consul-ui/app/styles/base/decoration/base-placeholders.scss similarity index 100% rename from ui-v2/app/styles/base/decoration/base-placeholders.scss rename to ui/packages/consul-ui/app/styles/base/decoration/base-placeholders.scss diff --git a/ui-v2/app/styles/base/decoration/base-variables.scss b/ui/packages/consul-ui/app/styles/base/decoration/base-variables.scss similarity index 100% rename from ui-v2/app/styles/base/decoration/base-variables.scss rename to ui/packages/consul-ui/app/styles/base/decoration/base-variables.scss diff --git a/ui-v2/app/styles/base/decoration/index.scss b/ui/packages/consul-ui/app/styles/base/decoration/index.scss similarity index 100% rename from ui-v2/app/styles/base/decoration/index.scss rename to ui/packages/consul-ui/app/styles/base/decoration/index.scss diff --git a/ui-v2/app/styles/base/icons/base-placeholders.scss b/ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss similarity index 100% rename from ui-v2/app/styles/base/icons/base-placeholders.scss rename to ui/packages/consul-ui/app/styles/base/icons/base-placeholders.scss diff --git a/ui-v2/app/styles/base/icons/base-variables.scss b/ui/packages/consul-ui/app/styles/base/icons/base-variables.scss similarity index 100% rename from ui-v2/app/styles/base/icons/base-variables.scss rename to ui/packages/consul-ui/app/styles/base/icons/base-variables.scss diff --git a/ui-v2/app/styles/base/icons/icon-placeholders.scss b/ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss similarity index 100% rename from ui-v2/app/styles/base/icons/icon-placeholders.scss rename to ui/packages/consul-ui/app/styles/base/icons/icon-placeholders.scss diff --git a/ui-v2/app/styles/base/icons/index.scss b/ui/packages/consul-ui/app/styles/base/icons/index.scss similarity index 100% rename from ui-v2/app/styles/base/icons/index.scss rename to ui/packages/consul-ui/app/styles/base/icons/index.scss diff --git a/ui-v2/app/styles/base/index.scss b/ui/packages/consul-ui/app/styles/base/index.scss similarity index 100% rename from ui-v2/app/styles/base/index.scss rename to ui/packages/consul-ui/app/styles/base/index.scss diff --git a/ui-v2/app/styles/base/reset/base-variables.scss b/ui/packages/consul-ui/app/styles/base/reset/base-variables.scss similarity index 100% rename from ui-v2/app/styles/base/reset/base-variables.scss rename to ui/packages/consul-ui/app/styles/base/reset/base-variables.scss diff --git a/ui-v2/app/styles/base/reset/index.scss b/ui/packages/consul-ui/app/styles/base/reset/index.scss similarity index 100% rename from ui-v2/app/styles/base/reset/index.scss rename to ui/packages/consul-ui/app/styles/base/reset/index.scss diff --git a/ui-v2/app/styles/base/reset/minireset.scss b/ui/packages/consul-ui/app/styles/base/reset/minireset.scss similarity index 100% rename from ui-v2/app/styles/base/reset/minireset.scss rename to ui/packages/consul-ui/app/styles/base/reset/minireset.scss diff --git a/ui-v2/app/styles/base/reset/system.scss b/ui/packages/consul-ui/app/styles/base/reset/system.scss similarity index 100% rename from ui-v2/app/styles/base/reset/system.scss rename to ui/packages/consul-ui/app/styles/base/reset/system.scss diff --git a/ui-v2/app/styles/base/typography/base-placeholders.scss b/ui/packages/consul-ui/app/styles/base/typography/base-placeholders.scss similarity index 100% rename from ui-v2/app/styles/base/typography/base-placeholders.scss rename to ui/packages/consul-ui/app/styles/base/typography/base-placeholders.scss diff --git a/ui-v2/app/styles/base/typography/base-variables.scss b/ui/packages/consul-ui/app/styles/base/typography/base-variables.scss similarity index 100% rename from ui-v2/app/styles/base/typography/base-variables.scss rename to ui/packages/consul-ui/app/styles/base/typography/base-variables.scss diff --git a/ui-v2/app/styles/base/typography/index.scss b/ui/packages/consul-ui/app/styles/base/typography/index.scss similarity index 100% rename from ui-v2/app/styles/base/typography/index.scss rename to ui/packages/consul-ui/app/styles/base/typography/index.scss diff --git a/ui-v2/app/styles/base/typography/semantic-variables.scss b/ui/packages/consul-ui/app/styles/base/typography/semantic-variables.scss similarity index 100% rename from ui-v2/app/styles/base/typography/semantic-variables.scss rename to ui/packages/consul-ui/app/styles/base/typography/semantic-variables.scss diff --git a/ui-v2/app/styles/components.scss b/ui/packages/consul-ui/app/styles/components.scss similarity index 84% rename from ui-v2/app/styles/components.scss rename to ui/packages/consul-ui/app/styles/components.scss index 254c98bd3..c0ec50a3c 100644 --- a/ui-v2/app/styles/components.scss +++ b/ui/packages/consul-ui/app/styles/components.scss @@ -22,16 +22,12 @@ @import './components/healthcheck-output'; @import './components/freetext-filter'; @import './components/filter-bar'; -@import './components/tomography-graph'; @import './components/flash-message'; @import './components/code-editor'; @import './components/confirmation-dialog'; -@import './components/modal-dialog'; @import './components/auth-form'; @import './components/auth-modal'; -@import './components/notice'; @import './components/oidc-select'; -@import './components/discovery-chain'; @import './components/empty-state'; @import './components/tabular-details'; @import './components/tabular-collection'; @@ -55,17 +51,20 @@ /**/ -/** - * Migration: We are migrating our consul-* styles to use colocated styles - * consul-* component styles should be moved or added under here - * when convienient - **/ +@import 'consul-ui/components/notice'; +@import 'consul-ui/components/modal-dialog'; +@import 'consul-ui/components/consul/tomography/graph'; +@import 'consul-ui/components/consul/discovery-chain'; +@import 'consul-ui/components/consul/upstream-instance/list'; @import 'consul-ui/components/consul/exposed-path/list'; @import 'consul-ui/components/consul/external-source'; @import 'consul-ui/components/consul/kind'; @import 'consul-ui/components/consul/intention'; + @import 'consul-ui/components/role-selector'; @import 'consul-ui/components/topology-metrics'; +@import 'consul-ui/components/topology-metrics/popover'; @import 'consul-ui/components/topology-metrics/series'; @import 'consul-ui/components/topology-metrics/stats'; +@import 'consul-ui/components/topology-metrics/status'; diff --git a/ui-v2/app/styles/components/anchors.scss b/ui/packages/consul-ui/app/styles/components/anchors.scss similarity index 100% rename from ui-v2/app/styles/components/anchors.scss rename to ui/packages/consul-ui/app/styles/components/anchors.scss diff --git a/ui-v2/app/styles/components/app-view.scss b/ui/packages/consul-ui/app/styles/components/app-view.scss similarity index 100% rename from ui-v2/app/styles/components/app-view.scss rename to ui/packages/consul-ui/app/styles/components/app-view.scss diff --git a/ui-v2/app/styles/components/app-view/index.scss b/ui/packages/consul-ui/app/styles/components/app-view/index.scss similarity index 100% rename from ui-v2/app/styles/components/app-view/index.scss rename to ui/packages/consul-ui/app/styles/components/app-view/index.scss diff --git a/ui-v2/app/styles/components/app-view/layout.scss b/ui/packages/consul-ui/app/styles/components/app-view/layout.scss similarity index 100% rename from ui-v2/app/styles/components/app-view/layout.scss rename to ui/packages/consul-ui/app/styles/components/app-view/layout.scss diff --git a/ui-v2/app/styles/components/app-view/skin.scss b/ui/packages/consul-ui/app/styles/components/app-view/skin.scss similarity index 100% rename from ui-v2/app/styles/components/app-view/skin.scss rename to ui/packages/consul-ui/app/styles/components/app-view/skin.scss diff --git a/ui-v2/app/styles/components/auth-form.scss b/ui/packages/consul-ui/app/styles/components/auth-form.scss similarity index 100% rename from ui-v2/app/styles/components/auth-form.scss rename to ui/packages/consul-ui/app/styles/components/auth-form.scss diff --git a/ui-v2/app/styles/base/components/table/index.scss b/ui/packages/consul-ui/app/styles/components/auth-form/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/table/index.scss rename to ui/packages/consul-ui/app/styles/components/auth-form/index.scss diff --git a/ui-v2/app/styles/components/auth-form/layout.scss b/ui/packages/consul-ui/app/styles/components/auth-form/layout.scss similarity index 100% rename from ui-v2/app/styles/components/auth-form/layout.scss rename to ui/packages/consul-ui/app/styles/components/auth-form/layout.scss diff --git a/ui-v2/app/styles/components/auth-form/skin.scss b/ui/packages/consul-ui/app/styles/components/auth-form/skin.scss similarity index 100% rename from ui-v2/app/styles/components/auth-form/skin.scss rename to ui/packages/consul-ui/app/styles/components/auth-form/skin.scss diff --git a/ui-v2/app/styles/components/auth-modal.scss b/ui/packages/consul-ui/app/styles/components/auth-modal.scss similarity index 100% rename from ui-v2/app/styles/components/auth-modal.scss rename to ui/packages/consul-ui/app/styles/components/auth-modal.scss diff --git a/ui-v2/app/styles/components/auth-modal/index.scss b/ui/packages/consul-ui/app/styles/components/auth-modal/index.scss similarity index 100% rename from ui-v2/app/styles/components/auth-modal/index.scss rename to ui/packages/consul-ui/app/styles/components/auth-modal/index.scss diff --git a/ui-v2/app/styles/components/auth-modal/layout.scss b/ui/packages/consul-ui/app/styles/components/auth-modal/layout.scss similarity index 74% rename from ui-v2/app/styles/components/auth-modal/layout.scss rename to ui/packages/consul-ui/app/styles/components/auth-modal/layout.scss index f2c1669d4..b41e574d0 100644 --- a/ui-v2/app/styles/components/auth-modal/layout.scss +++ b/ui/packages/consul-ui/app/styles/components/auth-modal/layout.scss @@ -1,8 +1,9 @@ %auth-modal footer { - border: 0; + border-top: 0; padding-top: 10px; padding-bottom: 20px; - margin: 0px 26px; + padding-left: 42px; + padding-right: 42px; } %auth-modal footer { background-color: $transparent; diff --git a/ui-v2/app/styles/components/auth-modal/skin.scss b/ui/packages/consul-ui/app/styles/components/auth-modal/skin.scss similarity index 100% rename from ui-v2/app/styles/components/auth-modal/skin.scss rename to ui/packages/consul-ui/app/styles/components/auth-modal/skin.scss diff --git a/ui-v2/app/styles/components/brand-loader.scss b/ui/packages/consul-ui/app/styles/components/brand-loader.scss similarity index 100% rename from ui-v2/app/styles/components/brand-loader.scss rename to ui/packages/consul-ui/app/styles/components/brand-loader.scss diff --git a/ui-v2/app/styles/base/components/toggle-button/index.scss b/ui/packages/consul-ui/app/styles/components/brand-loader/index.scss similarity index 100% rename from ui-v2/app/styles/base/components/toggle-button/index.scss rename to ui/packages/consul-ui/app/styles/components/brand-loader/index.scss diff --git a/ui-v2/app/styles/components/brand-loader/layout.scss b/ui/packages/consul-ui/app/styles/components/brand-loader/layout.scss similarity index 100% rename from ui-v2/app/styles/components/brand-loader/layout.scss rename to ui/packages/consul-ui/app/styles/components/brand-loader/layout.scss diff --git a/ui-v2/app/styles/components/brand-loader/skin.scss b/ui/packages/consul-ui/app/styles/components/brand-loader/skin.scss similarity index 100% rename from ui-v2/app/styles/components/brand-loader/skin.scss rename to ui/packages/consul-ui/app/styles/components/brand-loader/skin.scss diff --git a/ui-v2/app/styles/components/breadcrumbs.scss b/ui/packages/consul-ui/app/styles/components/breadcrumbs.scss similarity index 100% rename from ui-v2/app/styles/components/breadcrumbs.scss rename to ui/packages/consul-ui/app/styles/components/breadcrumbs.scss diff --git a/ui-v2/app/styles/components/buttons.scss b/ui/packages/consul-ui/app/styles/components/buttons.scss similarity index 100% rename from ui-v2/app/styles/components/buttons.scss rename to ui/packages/consul-ui/app/styles/components/buttons.scss diff --git a/ui-v2/app/styles/components/auth-form/index.scss b/ui/packages/consul-ui/app/styles/components/card/index.scss similarity index 100% rename from ui-v2/app/styles/components/auth-form/index.scss rename to ui/packages/consul-ui/app/styles/components/card/index.scss diff --git a/ui-v2/app/styles/components/card/layout.scss b/ui/packages/consul-ui/app/styles/components/card/layout.scss similarity index 100% rename from ui-v2/app/styles/components/card/layout.scss rename to ui/packages/consul-ui/app/styles/components/card/layout.scss diff --git a/ui-v2/app/styles/components/card/skin.scss b/ui/packages/consul-ui/app/styles/components/card/skin.scss similarity index 100% rename from ui-v2/app/styles/components/card/skin.scss rename to ui/packages/consul-ui/app/styles/components/card/skin.scss diff --git a/ui-v2/app/styles/components/code-editor.scss b/ui/packages/consul-ui/app/styles/components/code-editor.scss similarity index 100% rename from ui-v2/app/styles/components/code-editor.scss rename to ui/packages/consul-ui/app/styles/components/code-editor.scss diff --git a/ui-v2/app/styles/components/brand-loader/index.scss b/ui/packages/consul-ui/app/styles/components/code-editor/index.scss similarity index 100% rename from ui-v2/app/styles/components/brand-loader/index.scss rename to ui/packages/consul-ui/app/styles/components/code-editor/index.scss diff --git a/ui-v2/app/styles/components/code-editor/layout.scss b/ui/packages/consul-ui/app/styles/components/code-editor/layout.scss similarity index 100% rename from ui-v2/app/styles/components/code-editor/layout.scss rename to ui/packages/consul-ui/app/styles/components/code-editor/layout.scss diff --git a/ui-v2/app/styles/components/code-editor/skin.scss b/ui/packages/consul-ui/app/styles/components/code-editor/skin.scss similarity index 100% rename from ui-v2/app/styles/components/code-editor/skin.scss rename to ui/packages/consul-ui/app/styles/components/code-editor/skin.scss diff --git a/ui-v2/app/styles/components/composite-row.scss b/ui/packages/consul-ui/app/styles/components/composite-row.scss similarity index 96% rename from ui-v2/app/styles/components/composite-row.scss rename to ui/packages/consul-ui/app/styles/components/composite-row.scss index 115571cad..56c5263fd 100644 --- a/ui-v2/app/styles/components/composite-row.scss +++ b/ui/packages/consul-ui/app/styles/components/composite-row.scss @@ -1,6 +1,5 @@ @import './composite-row/index'; -.proxy-upstreams > ul > li, .list-collection > ul > li:not(:first-child) { @extend %composite-row; } @@ -33,8 +32,7 @@ .consul-service-instance-list .detail { overflow-x: visible !important; } -.consul-intention-permission-list > ul, -.proxy-upstreams > ul { +.consul-intention-permission-list > ul { border-top: 1px solid $gray-200; } .consul-service-instance-list .port dt, diff --git a/ui-v2/app/styles/components/composite-row/index.scss b/ui/packages/consul-ui/app/styles/components/composite-row/index.scss similarity index 100% rename from ui-v2/app/styles/components/composite-row/index.scss rename to ui/packages/consul-ui/app/styles/components/composite-row/index.scss diff --git a/ui-v2/app/styles/components/composite-row/layout.scss b/ui/packages/consul-ui/app/styles/components/composite-row/layout.scss similarity index 100% rename from ui-v2/app/styles/components/composite-row/layout.scss rename to ui/packages/consul-ui/app/styles/components/composite-row/layout.scss diff --git a/ui-v2/app/styles/components/composite-row/skin.scss b/ui/packages/consul-ui/app/styles/components/composite-row/skin.scss similarity index 100% rename from ui-v2/app/styles/components/composite-row/skin.scss rename to ui/packages/consul-ui/app/styles/components/composite-row/skin.scss diff --git a/ui-v2/app/styles/components/confirmation-alert.scss b/ui/packages/consul-ui/app/styles/components/confirmation-alert.scss similarity index 100% rename from ui-v2/app/styles/components/confirmation-alert.scss rename to ui/packages/consul-ui/app/styles/components/confirmation-alert.scss diff --git a/ui-v2/app/styles/components/confirmation-dialog.scss b/ui/packages/consul-ui/app/styles/components/confirmation-dialog.scss similarity index 100% rename from ui-v2/app/styles/components/confirmation-dialog.scss rename to ui/packages/consul-ui/app/styles/components/confirmation-dialog.scss diff --git a/ui-v2/app/styles/components/card/index.scss b/ui/packages/consul-ui/app/styles/components/confirmation-dialog/index.scss similarity index 100% rename from ui-v2/app/styles/components/card/index.scss rename to ui/packages/consul-ui/app/styles/components/confirmation-dialog/index.scss diff --git a/ui-v2/app/styles/components/confirmation-dialog/layout.scss b/ui/packages/consul-ui/app/styles/components/confirmation-dialog/layout.scss similarity index 100% rename from ui-v2/app/styles/components/confirmation-dialog/layout.scss rename to ui/packages/consul-ui/app/styles/components/confirmation-dialog/layout.scss diff --git a/ui-v2/app/styles/components/confirmation-dialog/skin.scss b/ui/packages/consul-ui/app/styles/components/confirmation-dialog/skin.scss similarity index 100% rename from ui-v2/app/styles/components/confirmation-dialog/skin.scss rename to ui/packages/consul-ui/app/styles/components/confirmation-dialog/skin.scss diff --git a/ui-v2/app/styles/components/definition-table.scss b/ui/packages/consul-ui/app/styles/components/definition-table.scss similarity index 100% rename from ui-v2/app/styles/components/definition-table.scss rename to ui/packages/consul-ui/app/styles/components/definition-table.scss diff --git a/ui-v2/app/styles/components/code-editor/index.scss b/ui/packages/consul-ui/app/styles/components/definition-table/index.scss similarity index 100% rename from ui-v2/app/styles/components/code-editor/index.scss rename to ui/packages/consul-ui/app/styles/components/definition-table/index.scss diff --git a/ui-v2/app/styles/components/definition-table/layout.scss b/ui/packages/consul-ui/app/styles/components/definition-table/layout.scss similarity index 100% rename from ui-v2/app/styles/components/definition-table/layout.scss rename to ui/packages/consul-ui/app/styles/components/definition-table/layout.scss diff --git a/ui-v2/app/styles/components/definition-table/skin.scss b/ui/packages/consul-ui/app/styles/components/definition-table/skin.scss similarity index 100% rename from ui-v2/app/styles/components/definition-table/skin.scss rename to ui/packages/consul-ui/app/styles/components/definition-table/skin.scss diff --git a/ui-v2/app/styles/components/dom-recycling-table/index.scss b/ui/packages/consul-ui/app/styles/components/dom-recycling-table/index.scss similarity index 100% rename from ui-v2/app/styles/components/dom-recycling-table/index.scss rename to ui/packages/consul-ui/app/styles/components/dom-recycling-table/index.scss diff --git a/ui-v2/app/styles/components/dom-recycling-table/layout.scss b/ui/packages/consul-ui/app/styles/components/dom-recycling-table/layout.scss similarity index 100% rename from ui-v2/app/styles/components/dom-recycling-table/layout.scss rename to ui/packages/consul-ui/app/styles/components/dom-recycling-table/layout.scss diff --git a/ui-v2/app/styles/components/empty-state.scss b/ui/packages/consul-ui/app/styles/components/empty-state.scss similarity index 100% rename from ui-v2/app/styles/components/empty-state.scss rename to ui/packages/consul-ui/app/styles/components/empty-state.scss diff --git a/ui-v2/app/styles/components/empty-state/index.scss b/ui/packages/consul-ui/app/styles/components/empty-state/index.scss similarity index 100% rename from ui-v2/app/styles/components/empty-state/index.scss rename to ui/packages/consul-ui/app/styles/components/empty-state/index.scss diff --git a/ui-v2/app/styles/components/empty-state/layout.scss b/ui/packages/consul-ui/app/styles/components/empty-state/layout.scss similarity index 100% rename from ui-v2/app/styles/components/empty-state/layout.scss rename to ui/packages/consul-ui/app/styles/components/empty-state/layout.scss diff --git a/ui-v2/app/styles/components/empty-state/skin.scss b/ui/packages/consul-ui/app/styles/components/empty-state/skin.scss similarity index 100% rename from ui-v2/app/styles/components/empty-state/skin.scss rename to ui/packages/consul-ui/app/styles/components/empty-state/skin.scss diff --git a/ui-v2/app/styles/components/confirmation-dialog/index.scss b/ui/packages/consul-ui/app/styles/components/expanded-single-select/index.scss similarity index 100% rename from ui-v2/app/styles/components/confirmation-dialog/index.scss rename to ui/packages/consul-ui/app/styles/components/expanded-single-select/index.scss diff --git a/ui-v2/app/styles/components/expanded-single-select/layout.scss b/ui/packages/consul-ui/app/styles/components/expanded-single-select/layout.scss similarity index 100% rename from ui-v2/app/styles/components/expanded-single-select/layout.scss rename to ui/packages/consul-ui/app/styles/components/expanded-single-select/layout.scss diff --git a/ui-v2/app/styles/components/expanded-single-select/skin.scss b/ui/packages/consul-ui/app/styles/components/expanded-single-select/skin.scss similarity index 100% rename from ui-v2/app/styles/components/expanded-single-select/skin.scss rename to ui/packages/consul-ui/app/styles/components/expanded-single-select/skin.scss diff --git a/ui-v2/app/styles/components/filter-bar.scss b/ui/packages/consul-ui/app/styles/components/filter-bar.scss similarity index 100% rename from ui-v2/app/styles/components/filter-bar.scss rename to ui/packages/consul-ui/app/styles/components/filter-bar.scss diff --git a/ui-v2/app/styles/components/definition-table/index.scss b/ui/packages/consul-ui/app/styles/components/filter-bar/index.scss similarity index 100% rename from ui-v2/app/styles/components/definition-table/index.scss rename to ui/packages/consul-ui/app/styles/components/filter-bar/index.scss diff --git a/ui-v2/app/styles/components/filter-bar/layout.scss b/ui/packages/consul-ui/app/styles/components/filter-bar/layout.scss similarity index 100% rename from ui-v2/app/styles/components/filter-bar/layout.scss rename to ui/packages/consul-ui/app/styles/components/filter-bar/layout.scss diff --git a/ui-v2/app/styles/components/filter-bar/skin.scss b/ui/packages/consul-ui/app/styles/components/filter-bar/skin.scss similarity index 93% rename from ui-v2/app/styles/components/filter-bar/skin.scss rename to ui/packages/consul-ui/app/styles/components/filter-bar/skin.scss index f0998780a..6b42c18ec 100644 --- a/ui-v2/app/styles/components/filter-bar/skin.scss +++ b/ui/packages/consul-ui/app/styles/components/filter-bar/skin.scss @@ -20,8 +20,7 @@ } %filter-bar, %filter-bar > * { - /* frame-gray */ - background-color: $gray-050; + background-color: $gray-010; } %filter-bar > *, %filter-bar label:not(:last-child) { diff --git a/ui-v2/app/styles/components/flash-message.scss b/ui/packages/consul-ui/app/styles/components/flash-message.scss similarity index 100% rename from ui-v2/app/styles/components/flash-message.scss rename to ui/packages/consul-ui/app/styles/components/flash-message.scss diff --git a/ui-v2/app/styles/components/discovery-chain/index.scss b/ui/packages/consul-ui/app/styles/components/flash-message/index.scss similarity index 100% rename from ui-v2/app/styles/components/discovery-chain/index.scss rename to ui/packages/consul-ui/app/styles/components/flash-message/index.scss diff --git a/ui-v2/app/styles/components/flash-message/layout.scss b/ui/packages/consul-ui/app/styles/components/flash-message/layout.scss similarity index 100% rename from ui-v2/app/styles/components/flash-message/layout.scss rename to ui/packages/consul-ui/app/styles/components/flash-message/layout.scss diff --git a/ui-v2/app/styles/components/flash-message/skin.scss b/ui/packages/consul-ui/app/styles/components/flash-message/skin.scss similarity index 100% rename from ui-v2/app/styles/components/flash-message/skin.scss rename to ui/packages/consul-ui/app/styles/components/flash-message/skin.scss diff --git a/ui-v2/app/styles/components/footer.scss b/ui/packages/consul-ui/app/styles/components/footer.scss similarity index 100% rename from ui-v2/app/styles/components/footer.scss rename to ui/packages/consul-ui/app/styles/components/footer.scss diff --git a/ui-v2/app/styles/components/expanded-single-select/index.scss b/ui/packages/consul-ui/app/styles/components/footer/index.scss similarity index 100% rename from ui-v2/app/styles/components/expanded-single-select/index.scss rename to ui/packages/consul-ui/app/styles/components/footer/index.scss diff --git a/ui-v2/app/styles/components/footer/layout.scss b/ui/packages/consul-ui/app/styles/components/footer/layout.scss similarity index 100% rename from ui-v2/app/styles/components/footer/layout.scss rename to ui/packages/consul-ui/app/styles/components/footer/layout.scss diff --git a/ui-v2/app/styles/components/footer/skin.scss b/ui/packages/consul-ui/app/styles/components/footer/skin.scss similarity index 100% rename from ui-v2/app/styles/components/footer/skin.scss rename to ui/packages/consul-ui/app/styles/components/footer/skin.scss diff --git a/ui-v2/app/styles/components/form-elements.scss b/ui/packages/consul-ui/app/styles/components/form-elements.scss similarity index 79% rename from ui-v2/app/styles/components/form-elements.scss rename to ui/packages/consul-ui/app/styles/components/form-elements.scss index 14cf5ef32..7b966afe3 100644 --- a/ui-v2/app/styles/components/form-elements.scss +++ b/ui/packages/consul-ui/app/styles/components/form-elements.scss @@ -4,6 +4,12 @@ label span { .has-error { @extend %form-element-error; } +// TODO: float right here is too specific, this is currently used just for the role/policy selectors +label.type-dialog { + @extend %anchor; + cursor: pointer; + float: right; +} .type-toggle { @extend %form-element, %sliding-toggle; } diff --git a/ui-v2/app/styles/components/freetext-filter.scss b/ui/packages/consul-ui/app/styles/components/freetext-filter.scss similarity index 100% rename from ui-v2/app/styles/components/freetext-filter.scss rename to ui/packages/consul-ui/app/styles/components/freetext-filter.scss diff --git a/ui-v2/app/styles/components/filter-bar/index.scss b/ui/packages/consul-ui/app/styles/components/freetext-filter/index.scss similarity index 100% rename from ui-v2/app/styles/components/filter-bar/index.scss rename to ui/packages/consul-ui/app/styles/components/freetext-filter/index.scss diff --git a/ui-v2/app/styles/components/freetext-filter/layout.scss b/ui/packages/consul-ui/app/styles/components/freetext-filter/layout.scss similarity index 100% rename from ui-v2/app/styles/components/freetext-filter/layout.scss rename to ui/packages/consul-ui/app/styles/components/freetext-filter/layout.scss diff --git a/ui-v2/app/styles/components/freetext-filter/skin.scss b/ui/packages/consul-ui/app/styles/components/freetext-filter/skin.scss similarity index 100% rename from ui-v2/app/styles/components/freetext-filter/skin.scss rename to ui/packages/consul-ui/app/styles/components/freetext-filter/skin.scss diff --git a/ui-v2/app/styles/components/healthcheck-output.scss b/ui/packages/consul-ui/app/styles/components/healthcheck-output.scss similarity index 100% rename from ui-v2/app/styles/components/healthcheck-output.scss rename to ui/packages/consul-ui/app/styles/components/healthcheck-output.scss diff --git a/ui-v2/app/styles/components/flash-message/index.scss b/ui/packages/consul-ui/app/styles/components/healthcheck-output/index.scss similarity index 100% rename from ui-v2/app/styles/components/flash-message/index.scss rename to ui/packages/consul-ui/app/styles/components/healthcheck-output/index.scss diff --git a/ui-v2/app/styles/components/healthcheck-output/layout.scss b/ui/packages/consul-ui/app/styles/components/healthcheck-output/layout.scss similarity index 100% rename from ui-v2/app/styles/components/healthcheck-output/layout.scss rename to ui/packages/consul-ui/app/styles/components/healthcheck-output/layout.scss diff --git a/ui-v2/app/styles/components/healthcheck-output/skin.scss b/ui/packages/consul-ui/app/styles/components/healthcheck-output/skin.scss similarity index 100% rename from ui-v2/app/styles/components/healthcheck-output/skin.scss rename to ui/packages/consul-ui/app/styles/components/healthcheck-output/skin.scss diff --git a/ui-v2/app/styles/components/icon-definition.scss b/ui/packages/consul-ui/app/styles/components/icon-definition.scss similarity index 100% rename from ui-v2/app/styles/components/icon-definition.scss rename to ui/packages/consul-ui/app/styles/components/icon-definition.scss diff --git a/ui-v2/app/styles/components/footer/index.scss b/ui/packages/consul-ui/app/styles/components/icon-definition/index.scss similarity index 100% rename from ui-v2/app/styles/components/footer/index.scss rename to ui/packages/consul-ui/app/styles/components/icon-definition/index.scss diff --git a/ui-v2/app/styles/components/icon-definition/layout.scss b/ui/packages/consul-ui/app/styles/components/icon-definition/layout.scss similarity index 100% rename from ui-v2/app/styles/components/icon-definition/layout.scss rename to ui/packages/consul-ui/app/styles/components/icon-definition/layout.scss diff --git a/ui-v2/app/styles/components/icon-definition/skin.scss b/ui/packages/consul-ui/app/styles/components/icon-definition/skin.scss similarity index 100% rename from ui-v2/app/styles/components/icon-definition/skin.scss rename to ui/packages/consul-ui/app/styles/components/icon-definition/skin.scss diff --git a/ui-v2/app/styles/components/list-collection.scss b/ui/packages/consul-ui/app/styles/components/list-collection.scss similarity index 100% rename from ui-v2/app/styles/components/list-collection.scss rename to ui/packages/consul-ui/app/styles/components/list-collection.scss diff --git a/ui-v2/app/styles/components/list-row/index.scss b/ui/packages/consul-ui/app/styles/components/list-row/index.scss similarity index 100% rename from ui-v2/app/styles/components/list-row/index.scss rename to ui/packages/consul-ui/app/styles/components/list-row/index.scss diff --git a/ui-v2/app/styles/components/list-row/layout.scss b/ui/packages/consul-ui/app/styles/components/list-row/layout.scss similarity index 100% rename from ui-v2/app/styles/components/list-row/layout.scss rename to ui/packages/consul-ui/app/styles/components/list-row/layout.scss diff --git a/ui-v2/app/styles/components/list-row/skin.scss b/ui/packages/consul-ui/app/styles/components/list-row/skin.scss similarity index 100% rename from ui-v2/app/styles/components/list-row/skin.scss rename to ui/packages/consul-ui/app/styles/components/list-row/skin.scss diff --git a/ui-v2/app/styles/components/loader.scss b/ui/packages/consul-ui/app/styles/components/loader.scss similarity index 100% rename from ui-v2/app/styles/components/loader.scss rename to ui/packages/consul-ui/app/styles/components/loader.scss diff --git a/ui-v2/app/styles/components/freetext-filter/index.scss b/ui/packages/consul-ui/app/styles/components/loader/index.scss similarity index 100% rename from ui-v2/app/styles/components/freetext-filter/index.scss rename to ui/packages/consul-ui/app/styles/components/loader/index.scss diff --git a/ui-v2/app/styles/components/loader/layout.scss b/ui/packages/consul-ui/app/styles/components/loader/layout.scss similarity index 100% rename from ui-v2/app/styles/components/loader/layout.scss rename to ui/packages/consul-ui/app/styles/components/loader/layout.scss diff --git a/ui-v2/app/styles/components/loader/skin.scss b/ui/packages/consul-ui/app/styles/components/loader/skin.scss similarity index 100% rename from ui-v2/app/styles/components/loader/skin.scss rename to ui/packages/consul-ui/app/styles/components/loader/skin.scss diff --git a/ui-v2/app/styles/components/main-header-horizontal.scss b/ui/packages/consul-ui/app/styles/components/main-header-horizontal.scss similarity index 100% rename from ui-v2/app/styles/components/main-header-horizontal.scss rename to ui/packages/consul-ui/app/styles/components/main-header-horizontal.scss diff --git a/ui-v2/app/styles/components/main-header-horizontal/index.scss b/ui/packages/consul-ui/app/styles/components/main-header-horizontal/index.scss similarity index 100% rename from ui-v2/app/styles/components/main-header-horizontal/index.scss rename to ui/packages/consul-ui/app/styles/components/main-header-horizontal/index.scss diff --git a/ui-v2/app/styles/components/main-header-horizontal/layout.scss b/ui/packages/consul-ui/app/styles/components/main-header-horizontal/layout.scss similarity index 100% rename from ui-v2/app/styles/components/main-header-horizontal/layout.scss rename to ui/packages/consul-ui/app/styles/components/main-header-horizontal/layout.scss diff --git a/ui-v2/app/styles/components/main-header-horizontal/skin.scss b/ui/packages/consul-ui/app/styles/components/main-header-horizontal/skin.scss similarity index 100% rename from ui-v2/app/styles/components/main-header-horizontal/skin.scss rename to ui/packages/consul-ui/app/styles/components/main-header-horizontal/skin.scss diff --git a/ui-v2/app/styles/components/main-nav-horizontal.scss b/ui/packages/consul-ui/app/styles/components/main-nav-horizontal.scss similarity index 100% rename from ui-v2/app/styles/components/main-nav-horizontal.scss rename to ui/packages/consul-ui/app/styles/components/main-nav-horizontal.scss diff --git a/ui-v2/app/styles/components/main-nav-horizontal/index.scss b/ui/packages/consul-ui/app/styles/components/main-nav-horizontal/index.scss similarity index 100% rename from ui-v2/app/styles/components/main-nav-horizontal/index.scss rename to ui/packages/consul-ui/app/styles/components/main-nav-horizontal/index.scss diff --git a/ui-v2/app/styles/components/main-nav-horizontal/layout.scss b/ui/packages/consul-ui/app/styles/components/main-nav-horizontal/layout.scss similarity index 100% rename from ui-v2/app/styles/components/main-nav-horizontal/layout.scss rename to ui/packages/consul-ui/app/styles/components/main-nav-horizontal/layout.scss diff --git a/ui-v2/app/styles/components/main-nav-horizontal/skin.scss b/ui/packages/consul-ui/app/styles/components/main-nav-horizontal/skin.scss similarity index 100% rename from ui-v2/app/styles/components/main-nav-horizontal/skin.scss rename to ui/packages/consul-ui/app/styles/components/main-nav-horizontal/skin.scss diff --git a/ui-v2/app/styles/components/menu-panel.scss b/ui/packages/consul-ui/app/styles/components/menu-panel.scss similarity index 100% rename from ui-v2/app/styles/components/menu-panel.scss rename to ui/packages/consul-ui/app/styles/components/menu-panel.scss diff --git a/ui-v2/app/styles/components/more-popover-menu.scss b/ui/packages/consul-ui/app/styles/components/more-popover-menu.scss similarity index 100% rename from ui-v2/app/styles/components/more-popover-menu.scss rename to ui/packages/consul-ui/app/styles/components/more-popover-menu.scss diff --git a/ui-v2/app/styles/components/oidc-select.scss b/ui/packages/consul-ui/app/styles/components/oidc-select.scss similarity index 100% rename from ui-v2/app/styles/components/oidc-select.scss rename to ui/packages/consul-ui/app/styles/components/oidc-select.scss diff --git a/ui-v2/app/styles/components/oidc-select/index.scss b/ui/packages/consul-ui/app/styles/components/oidc-select/index.scss similarity index 100% rename from ui-v2/app/styles/components/oidc-select/index.scss rename to ui/packages/consul-ui/app/styles/components/oidc-select/index.scss diff --git a/ui-v2/app/styles/components/oidc-select/layout.scss b/ui/packages/consul-ui/app/styles/components/oidc-select/layout.scss similarity index 100% rename from ui-v2/app/styles/components/oidc-select/layout.scss rename to ui/packages/consul-ui/app/styles/components/oidc-select/layout.scss diff --git a/ui-v2/app/styles/components/oidc-select/skin.scss b/ui/packages/consul-ui/app/styles/components/oidc-select/skin.scss similarity index 100% rename from ui-v2/app/styles/components/oidc-select/skin.scss rename to ui/packages/consul-ui/app/styles/components/oidc-select/skin.scss diff --git a/ui-v2/app/styles/components/pill.scss b/ui/packages/consul-ui/app/styles/components/pill.scss similarity index 100% rename from ui-v2/app/styles/components/pill.scss rename to ui/packages/consul-ui/app/styles/components/pill.scss diff --git a/ui-v2/app/styles/components/popover-select.scss b/ui/packages/consul-ui/app/styles/components/popover-select.scss similarity index 100% rename from ui-v2/app/styles/components/popover-select.scss rename to ui/packages/consul-ui/app/styles/components/popover-select.scss diff --git a/ui-v2/app/styles/components/progress.scss b/ui/packages/consul-ui/app/styles/components/progress.scss similarity index 100% rename from ui-v2/app/styles/components/progress.scss rename to ui/packages/consul-ui/app/styles/components/progress.scss diff --git a/ui-v2/app/styles/components/healthcheck-output/index.scss b/ui/packages/consul-ui/app/styles/components/progress/index.scss similarity index 100% rename from ui-v2/app/styles/components/healthcheck-output/index.scss rename to ui/packages/consul-ui/app/styles/components/progress/index.scss diff --git a/ui-v2/app/styles/components/progress/layout.scss b/ui/packages/consul-ui/app/styles/components/progress/layout.scss similarity index 100% rename from ui-v2/app/styles/components/progress/layout.scss rename to ui/packages/consul-ui/app/styles/components/progress/layout.scss diff --git a/ui-v2/app/styles/components/progress/skin.scss b/ui/packages/consul-ui/app/styles/components/progress/skin.scss similarity index 100% rename from ui-v2/app/styles/components/progress/skin.scss rename to ui/packages/consul-ui/app/styles/components/progress/skin.scss diff --git a/ui-v2/app/styles/components/radio-card.scss b/ui/packages/consul-ui/app/styles/components/radio-card.scss similarity index 100% rename from ui-v2/app/styles/components/radio-card.scss rename to ui/packages/consul-ui/app/styles/components/radio-card.scss diff --git a/ui-v2/app/styles/components/icon-definition/index.scss b/ui/packages/consul-ui/app/styles/components/radio-card/index.scss similarity index 100% rename from ui-v2/app/styles/components/icon-definition/index.scss rename to ui/packages/consul-ui/app/styles/components/radio-card/index.scss diff --git a/ui-v2/app/styles/components/radio-card/layout.scss b/ui/packages/consul-ui/app/styles/components/radio-card/layout.scss similarity index 100% rename from ui-v2/app/styles/components/radio-card/layout.scss rename to ui/packages/consul-ui/app/styles/components/radio-card/layout.scss diff --git a/ui-v2/app/styles/components/radio-card/skin.scss b/ui/packages/consul-ui/app/styles/components/radio-card/skin.scss similarity index 100% rename from ui-v2/app/styles/components/radio-card/skin.scss rename to ui/packages/consul-ui/app/styles/components/radio-card/skin.scss diff --git a/ui-v2/app/styles/components/secret-button.scss b/ui/packages/consul-ui/app/styles/components/secret-button.scss similarity index 100% rename from ui-v2/app/styles/components/secret-button.scss rename to ui/packages/consul-ui/app/styles/components/secret-button.scss diff --git a/ui-v2/app/styles/components/loader/index.scss b/ui/packages/consul-ui/app/styles/components/secret-button/index.scss similarity index 100% rename from ui-v2/app/styles/components/loader/index.scss rename to ui/packages/consul-ui/app/styles/components/secret-button/index.scss diff --git a/ui-v2/app/styles/components/secret-button/layout.scss b/ui/packages/consul-ui/app/styles/components/secret-button/layout.scss similarity index 100% rename from ui-v2/app/styles/components/secret-button/layout.scss rename to ui/packages/consul-ui/app/styles/components/secret-button/layout.scss diff --git a/ui-v2/app/styles/components/secret-button/skin.scss b/ui/packages/consul-ui/app/styles/components/secret-button/skin.scss similarity index 100% rename from ui-v2/app/styles/components/secret-button/skin.scss rename to ui/packages/consul-ui/app/styles/components/secret-button/skin.scss diff --git a/ui-v2/app/styles/components/table.scss b/ui/packages/consul-ui/app/styles/components/table.scss similarity index 100% rename from ui-v2/app/styles/components/table.scss rename to ui/packages/consul-ui/app/styles/components/table.scss diff --git a/ui-v2/app/styles/components/tabs.scss b/ui/packages/consul-ui/app/styles/components/tabs.scss similarity index 100% rename from ui-v2/app/styles/components/tabs.scss rename to ui/packages/consul-ui/app/styles/components/tabs.scss diff --git a/ui-v2/app/styles/components/tabular-collection.scss b/ui/packages/consul-ui/app/styles/components/tabular-collection.scss similarity index 91% rename from ui-v2/app/styles/components/tabular-collection.scss rename to ui/packages/consul-ui/app/styles/components/tabular-collection.scss index c486551ea..b3d33b4a4 100644 --- a/ui-v2/app/styles/components/tabular-collection.scss +++ b/ui/packages/consul-ui/app/styles/components/tabular-collection.scss @@ -69,10 +69,10 @@ table.has-actions tr > *:nth-last-child(5):first-child ~ * { } /*TODO: trs only live in tables, get rid of table */ -html[data-route^='dc.acls.policies.edit'] [role='dialog'] table tr, -html[data-route^='dc.acls.policies.edit'] table tr, -html[data-route^='dc.acls.roles.edit'] [role='dialog'] table tr, -html[data-route^='dc.acls.roles.edit'] main table.token-list tr { +html[data-route^='dc.acls.policies'] [role='dialog'] table tr, +html[data-route^='dc.acls.policies'] table tr, +html[data-route^='dc.acls.roles'] [role='dialog'] table tr, +html[data-route^='dc.acls.roles'] main table.token-list tr { @extend %tokens-minimal-row; } // this will get auto calculated later in tabular-collection.js diff --git a/ui-v2/app/styles/components/tabular-details.scss b/ui/packages/consul-ui/app/styles/components/tabular-details.scss similarity index 100% rename from ui-v2/app/styles/components/tabular-details.scss rename to ui/packages/consul-ui/app/styles/components/tabular-details.scss diff --git a/ui-v2/app/styles/components/progress/index.scss b/ui/packages/consul-ui/app/styles/components/tabular-details/index.scss similarity index 100% rename from ui-v2/app/styles/components/progress/index.scss rename to ui/packages/consul-ui/app/styles/components/tabular-details/index.scss diff --git a/ui-v2/app/styles/components/tabular-details/layout.scss b/ui/packages/consul-ui/app/styles/components/tabular-details/layout.scss similarity index 100% rename from ui-v2/app/styles/components/tabular-details/layout.scss rename to ui/packages/consul-ui/app/styles/components/tabular-details/layout.scss diff --git a/ui-v2/app/styles/components/tabular-details/skin.scss b/ui/packages/consul-ui/app/styles/components/tabular-details/skin.scss similarity index 100% rename from ui-v2/app/styles/components/tabular-details/skin.scss rename to ui/packages/consul-ui/app/styles/components/tabular-details/skin.scss diff --git a/ui-v2/app/styles/components/tag-list.scss b/ui/packages/consul-ui/app/styles/components/tag-list.scss similarity index 100% rename from ui-v2/app/styles/components/tag-list.scss rename to ui/packages/consul-ui/app/styles/components/tag-list.scss diff --git a/ui-v2/app/styles/components/radio-card/index.scss b/ui/packages/consul-ui/app/styles/components/tag-list/index.scss similarity index 100% rename from ui-v2/app/styles/components/radio-card/index.scss rename to ui/packages/consul-ui/app/styles/components/tag-list/index.scss diff --git a/ui-v2/app/styles/components/tag-list/layout.scss b/ui/packages/consul-ui/app/styles/components/tag-list/layout.scss similarity index 100% rename from ui-v2/app/styles/components/tag-list/layout.scss rename to ui/packages/consul-ui/app/styles/components/tag-list/layout.scss diff --git a/ui-v2/app/styles/components/tag-list/skin.scss b/ui/packages/consul-ui/app/styles/components/tag-list/skin.scss similarity index 100% rename from ui-v2/app/styles/components/tag-list/skin.scss rename to ui/packages/consul-ui/app/styles/components/tag-list/skin.scss diff --git a/ui-v2/app/styles/components/tooltip-panel.scss b/ui/packages/consul-ui/app/styles/components/tooltip-panel.scss similarity index 100% rename from ui-v2/app/styles/components/tooltip-panel.scss rename to ui/packages/consul-ui/app/styles/components/tooltip-panel.scss diff --git a/ui-v2/app/styles/components/secret-button/index.scss b/ui/packages/consul-ui/app/styles/components/tooltip-panel/index.scss similarity index 100% rename from ui-v2/app/styles/components/secret-button/index.scss rename to ui/packages/consul-ui/app/styles/components/tooltip-panel/index.scss diff --git a/ui-v2/app/styles/components/tooltip-panel/layout.scss b/ui/packages/consul-ui/app/styles/components/tooltip-panel/layout.scss similarity index 100% rename from ui-v2/app/styles/components/tooltip-panel/layout.scss rename to ui/packages/consul-ui/app/styles/components/tooltip-panel/layout.scss diff --git a/ui-v2/app/styles/components/tooltip-panel/skin.scss b/ui/packages/consul-ui/app/styles/components/tooltip-panel/skin.scss similarity index 100% rename from ui-v2/app/styles/components/tooltip-panel/skin.scss rename to ui/packages/consul-ui/app/styles/components/tooltip-panel/skin.scss diff --git a/ui-v2/app/styles/components/tooltip.scss b/ui/packages/consul-ui/app/styles/components/tooltip.scss similarity index 100% rename from ui-v2/app/styles/components/tooltip.scss rename to ui/packages/consul-ui/app/styles/components/tooltip.scss diff --git a/ui-v2/app/styles/layout.scss b/ui/packages/consul-ui/app/styles/layout.scss similarity index 90% rename from ui-v2/app/styles/layout.scss rename to ui/packages/consul-ui/app/styles/layout.scss index fa5036da7..01a8a0347 100644 --- a/ui-v2/app/styles/layout.scss +++ b/ui/packages/consul-ui/app/styles/layout.scss @@ -1,8 +1,8 @@ @import 'layouts/index'; /* all forms have a margin below the header */ -html[data-route$='.create'] .app-view > header + div > *:first-child, -html[data-route$='.edit'] .app-view > header + div > *:first-child { +html[data-route$='create'] .app-view > header + div > *:first-child, +html[data-route$='edit'] .app-view > header + div > *:first-child { margin-top: 1.8em; } /* most tabs have margin after the tab bar, unless the tab has a filter bar */ @@ -12,10 +12,11 @@ html[data-route$='.edit'] .app-view > header + div > *:first-child { %app-view-content [role='tabpanel'] > .filter-bar + p { margin-top: 1.25em; } -/* turn off top borders for things flush up to a filter bar */ +.consul-upstream-instance-list, .consul-lock-session-list { margin-top: 0 !important; } +/* turn off top borders for things flush up to a filter bar */ html[data-route='dc.services.index'] .consul-service-list ul, .consul-nspace-list ul, .consul-service-instance-list ul, @@ -59,7 +60,8 @@ main, #wrapper > footer { @extend %content-container; } -html[data-route$='.edit'] main { +html[data-route$='create'] main, +html[data-route$='edit'] main { @extend %content-container-restricted; } diff --git a/ui-v2/app/styles/layouts/containers.scss b/ui/packages/consul-ui/app/styles/layouts/containers.scss similarity index 100% rename from ui-v2/app/styles/layouts/containers.scss rename to ui/packages/consul-ui/app/styles/layouts/containers.scss diff --git a/ui-v2/app/styles/layouts/index.scss b/ui/packages/consul-ui/app/styles/layouts/index.scss similarity index 100% rename from ui-v2/app/styles/layouts/index.scss rename to ui/packages/consul-ui/app/styles/layouts/index.scss diff --git a/ui-v2/app/styles/layouts/with-sticky-footer.scss b/ui/packages/consul-ui/app/styles/layouts/with-sticky-footer.scss similarity index 100% rename from ui-v2/app/styles/layouts/with-sticky-footer.scss rename to ui/packages/consul-ui/app/styles/layouts/with-sticky-footer.scss diff --git a/ui-v2/app/styles/routes.scss b/ui/packages/consul-ui/app/styles/routes.scss similarity index 100% rename from ui-v2/app/styles/routes.scss rename to ui/packages/consul-ui/app/styles/routes.scss diff --git a/ui-v2/app/styles/routes/dc/acls/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/acls/index.scss similarity index 81% rename from ui-v2/app/styles/routes/dc/acls/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/acls/index.scss index 55b1f30d0..4f2944dff 100644 --- a/ui-v2/app/styles/routes/dc/acls/index.scss +++ b/ui/packages/consul-ui/app/styles/routes/dc/acls/index.scss @@ -17,16 +17,19 @@ html[data-route^='dc.acls.index'] .filter-bar [role='radiogroup'] { } @media #{$--lt-wide-form} { + html[data-route^='dc.acls.create'] main header .actions, html[data-route^='dc.acls.edit'] main header .actions { float: none; display: flex; justify-content: space-between; margin-bottom: 1em; } + html[data-route^='dc.acls.create'] main header .actions .with-feedback, html[data-route^='dc.acls.edit'] main header .actions .with-feedback { position: absolute; right: 0; } + html[data-route^='dc.acls.create'] main header .actions .with-confirmation, html[data-route^='dc.acls.edit'] main header .actions .with-confirmation { margin-top: 0; } diff --git a/ui-v2/app/styles/routes/dc/intentions/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/intentions/index.scss similarity index 100% rename from ui-v2/app/styles/routes/dc/intentions/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/intentions/index.scss diff --git a/ui-v2/app/styles/routes/dc/kv/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/kv/index.scss similarity index 51% rename from ui-v2/app/styles/routes/dc/kv/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/kv/index.scss index 9532c59d4..e55f58ebd 100644 --- a/ui-v2/app/styles/routes/dc/kv/index.scss +++ b/ui/packages/consul-ui/app/styles/routes/dc/kv/index.scss @@ -1,4 +1,4 @@ -html[data-route^='dc.kv.edit'] .type-toggle { +html[data-route^='dc.kv'] .type-toggle { float: right; margin-bottom: 0 !important; } diff --git a/ui-v2/app/styles/routes/dc/nodes/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/nodes/index.scss similarity index 100% rename from ui-v2/app/styles/routes/dc/nodes/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/nodes/index.scss diff --git a/ui-v2/app/styles/routes/dc/services/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/services/index.scss similarity index 100% rename from ui-v2/app/styles/routes/dc/services/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/services/index.scss diff --git a/ui-v2/app/styles/routes/dc/settings/index.scss b/ui/packages/consul-ui/app/styles/routes/dc/settings/index.scss similarity index 100% rename from ui-v2/app/styles/routes/dc/settings/index.scss rename to ui/packages/consul-ui/app/styles/routes/dc/settings/index.scss diff --git a/ui-v2/app/styles/typography.scss b/ui/packages/consul-ui/app/styles/typography.scss similarity index 100% rename from ui-v2/app/styles/typography.scss rename to ui/packages/consul-ui/app/styles/typography.scss diff --git a/ui-v2/app/styles/variables.scss b/ui/packages/consul-ui/app/styles/variables.scss similarity index 100% rename from ui-v2/app/styles/variables.scss rename to ui/packages/consul-ui/app/styles/variables.scss diff --git a/ui-v2/app/styles/variables/custom-query.scss b/ui/packages/consul-ui/app/styles/variables/custom-query.scss similarity index 100% rename from ui-v2/app/styles/variables/custom-query.scss rename to ui/packages/consul-ui/app/styles/variables/custom-query.scss diff --git a/ui-v2/app/styles/variables/skin.scss b/ui/packages/consul-ui/app/styles/variables/skin.scss similarity index 100% rename from ui-v2/app/styles/variables/skin.scss rename to ui/packages/consul-ui/app/styles/variables/skin.scss diff --git a/ui-v2/app/templates/application.hbs b/ui/packages/consul-ui/app/templates/application.hbs similarity index 91% rename from ui-v2/app/templates/application.hbs rename to ui/packages/consul-ui/app/templates/application.hbs index 24ff2b9ad..c19a304e2 100644 --- a/ui-v2/app/templates/application.hbs +++ b/ui/packages/consul-ui/app/templates/application.hbs @@ -1,5 +1,5 @@ -{{title 'Consul' separator=' - '}} +{{page-title 'Consul' separator=' - '}} {{#if (not-eq router.currentRouteName 'application')}} + +

Management

+
+ +

+ This global-management token is built into Consul's policy system. You can apply this special policy to tokens for full access. This policy is not editable or removeable, but can be ignored by not applying it to any tokens. Learn more in our documentation. +

+
+ +
+
+
Name
+
{{item.Name}}
+
Valid Datacenters
+
{{ join ', ' (policy/datacenters item)}}
+
Description
+
{{item.Description}}
+
+
+ diff --git a/ui-v2/app/templates/dc/acls/policies/edit.hbs b/ui/packages/consul-ui/app/templates/dc/acls/policies/edit.hbs similarity index 90% rename from ui-v2/app/templates/dc/acls/policies/edit.hbs rename to ui/packages/consul-ui/app/templates/dc/acls/policies/edit.hbs index c09685958..5d932fc7e 100644 --- a/ui-v2/app/templates/dc/acls/policies/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/acls/policies/edit.hbs @@ -1,11 +1,11 @@ {{#if isAuthorized }} {{#if create }} - {{title 'New Policy'}} + {{page-title 'New Policy'}} {{else}} - {{title 'Edit Policy'}} + {{page-title 'Edit Policy'}} {{/if}} {{else}} - {{title 'Access Controls'}} + {{page-title 'Access Controls'}} {{/if}} {{/if}} diff --git a/ui-v2/app/templates/dc/acls/roles/-form.hbs b/ui/packages/consul-ui/app/templates/dc/acls/roles/-form.hbs similarity index 100% rename from ui-v2/app/templates/dc/acls/roles/-form.hbs rename to ui/packages/consul-ui/app/templates/dc/acls/roles/-form.hbs diff --git a/ui-v2/app/templates/dc/acls/roles/edit.hbs b/ui/packages/consul-ui/app/templates/dc/acls/roles/edit.hbs similarity index 88% rename from ui-v2/app/templates/dc/acls/roles/edit.hbs rename to ui/packages/consul-ui/app/templates/dc/acls/roles/edit.hbs index a17f12500..fa1ae716e 100644 --- a/ui-v2/app/templates/dc/acls/roles/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/acls/roles/edit.hbs @@ -1,11 +1,11 @@ {{#if isAuthorized }} {{#if item.ID}} - {{title 'Edit Role'}} + {{page-title 'Edit Role'}} {{else}} - {{title 'New Role'}} + {{page-title 'New Role'}} {{/if}} {{else}} - {{title 'Access Controls'}} + {{page-title 'Access Controls'}} {{/if}} {{#if (token/is-legacy item)}} -

Update. We have upgraded our ACL system by allowing you to create reusable policies which you can then apply to tokens. Don't worry, even though this token was written in the old style, it is still valid. However, we do recommend upgrading your old tokens to the new style. Learn how in our documentation.

+ + +

Update

+
+ +

+ We have upgraded our ACL system by allowing you to create reusable policies which you can then apply to tokens. Don't worry, even though this token was written in the old style, it is still valid. However, we do recommend upgrading your old tokens to the new style. Learn how in our documentation. +

+
+
{{/if}} {{#if (not create) }}
diff --git a/ui-v2/app/templates/dc/acls/tokens/index.hbs b/ui/packages/consul-ui/app/templates/dc/acls/tokens/index.hbs similarity index 80% rename from ui-v2/app/templates/dc/acls/tokens/index.hbs rename to ui/packages/consul-ui/app/templates/dc/acls/tokens/index.hbs index 8a9b6e162..719c52827 100644 --- a/ui-v2/app/templates/dc/acls/tokens/index.hbs +++ b/ui/packages/consul-ui/app/templates/dc/acls/tokens/index.hbs @@ -1,11 +1,11 @@ {{#if isAuthorized }} - {{title 'Tokens'}} + {{page-title 'Tokens'}} {{else}} - {{title 'Access Controls'}} + {{page-title 'Access Controls'}} {{/if}} {{#let (hash - types=(if type (split type ',') undefined) + kinds=(if kind (split kind ',') undefined) ) as |filters|}} {{#let (or sortBy "CreateTime:desc") as |sort|}} {{/if}} {{#if (token/is-legacy items)}} -

Update. We have upgraded our ACL System to allow the creation of reusable policies that can be applied to tokens. Read more about the changes and how to upgrade legacy tokens in our documentation.

+ + +

Update

+
+ +

We have upgraded our ACL System to allow the creation of reusable policies that can be applied to tokens. Read more about the changes and how to upgrade legacy tokens in our documentation.

+
+
{{/if}} {{#let (filter (filter-predicate 'token' filters) items) as |filtered|}} {{#let (sort-by (comparator 'token' sort) filtered) as |sorted|}} diff --git a/ui-v2/app/templates/dc/intentions/edit.hbs b/ui/packages/consul-ui/app/templates/dc/intentions/edit.hbs similarity index 89% rename from ui-v2/app/templates/dc/intentions/edit.hbs rename to ui/packages/consul-ui/app/templates/dc/intentions/edit.hbs index d837c857d..9978385ed 100644 --- a/ui-v2/app/templates/dc/intentions/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/intentions/edit.hbs @@ -1,7 +1,7 @@ {{#if item.ID}} - {{title 'Edit Intention'}} + {{page-title 'Edit Intention'}} {{else}} - {{title 'New Intention'}} + {{page-title 'New Intention'}} {{/if}} diff --git a/ui/packages/consul-ui/app/templates/dc/intentions/index.hbs b/ui/packages/consul-ui/app/templates/dc/intentions/index.hbs new file mode 100644 index 000000000..07926611b --- /dev/null +++ b/ui/packages/consul-ui/app/templates/dc/intentions/index.hbs @@ -0,0 +1,91 @@ +{{page-title 'Intentions'}} + + + + + + + +{{#let api.data as |items|}} + {{#let (hash + accesses=(if access (split access ',') undefined) + ) as |filters|}} + {{#let (or sortBy "Action:asc") as |sort|}} + + +

+ Intentions {{format-number items.length}} total +

+ +
+ + Create + + + + {{#if (gt items.length 0) }} + + {{/if}} + + + + + <:idle as |list|> + + + + <:empty as |list|> + + +

+ {{#if (gt items.length 0)}} + No intentions found + {{else}} + Welcome to Intentions + {{/if}} +

+
+ +

+ {{#if (gt items.length 0)}} + No intentions where found matching that search, or you may not have access to view the intentions you are searching for. + {{else}} + There don't seem to be any intentions, or you may not have access to view intentions yet. + {{/if}} +

+
+ + + + +
+ +
+
+
+ {{/let}} + {{/let}} +{{/let}} +
+
\ No newline at end of file diff --git a/ui-v2/app/templates/dc/kv/edit.hbs b/ui/packages/consul-ui/app/templates/dc/kv/edit.hbs similarity index 63% rename from ui-v2/app/templates/dc/kv/edit.hbs rename to ui/packages/consul-ui/app/templates/dc/kv/edit.hbs index 5311dbc35..03ea5661e 100644 --- a/ui-v2/app/templates/dc/kv/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/kv/edit.hbs @@ -1,7 +1,7 @@ {{#if item.Key }} - {{title 'Edit Key/Value'}} + {{page-title 'Edit Key/Value'}} {{else}} - {{title 'New Key/Value'}} + {{page-title 'New Key/Value'}} {{/if}} @@ -25,9 +25,15 @@ {{#if session}} -

- Warning. This KV has a lock session. You can edit KV's with lock sessions, but we recommend doing so with care, or not doing so at all. It may negatively impact the active node it's associated with. See below for more details on the Lock Session and see our documentation for more information. -

+ + +

+ Warning. This KV has a lock session. You can edit KV's with lock sessions, but we recommend doing so with care, or not doing so at all. It may negatively impact the active node it's associated with. See below for more details on the Lock Session and see our documentation for more information. +

+
+
{{/if}} diff --git a/ui-v2/app/templates/dc/nodes/index.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/index.hbs similarity index 95% rename from ui-v2/app/templates/dc/nodes/index.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/index.hbs index ccff471e3..a4ea68891 100644 --- a/ui-v2/app/templates/dc/nodes/index.hbs +++ b/ui/packages/consul-ui/app/templates/dc/nodes/index.hbs @@ -1,10 +1,10 @@ -{{title 'Nodes'}} +{{page-title 'Nodes'}} {{#let (hash statuses=(if status (split status ',') undefined) ) as |filters|}} -{{#let (or sortBy "Node:asc") as |sort|}} +{{#let (or sortBy "Status:asc") as |sort|}}

diff --git a/ui-v2/app/templates/dc/nodes/show.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show.hbs similarity index 99% rename from ui-v2/app/templates/dc/nodes/show.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show.hbs index 5f12fbc79..80f48562c 100644 --- a/ui-v2/app/templates/dc/nodes/show.hbs +++ b/ui/packages/consul-ui/app/templates/dc/nodes/show.hbs @@ -1,4 +1,4 @@ -{{title item.Node}} +{{page-title item.Node}} diff --git a/ui-v2/app/templates/dc/nodes/show/healthchecks.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show/healthchecks.hbs similarity index 100% rename from ui-v2/app/templates/dc/nodes/show/healthchecks.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show/healthchecks.hbs diff --git a/ui-v2/app/templates/dc/nodes/show/metadata.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show/metadata.hbs similarity index 100% rename from ui-v2/app/templates/dc/nodes/show/metadata.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show/metadata.hbs diff --git a/ui-v2/app/templates/dc/nodes/show/rtt.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show/rtt.hbs similarity index 90% rename from ui-v2/app/templates/dc/nodes/show/rtt.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show/rtt.hbs index f6715fbd7..2767303d9 100644 --- a/ui-v2/app/templates/dc/nodes/show/rtt.hbs +++ b/ui/packages/consul-ui/app/templates/dc/nodes/show/rtt.hbs @@ -22,7 +22,7 @@

- +
diff --git a/ui-v2/app/templates/dc/nodes/show/services.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show/services.hbs similarity index 100% rename from ui-v2/app/templates/dc/nodes/show/services.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show/services.hbs diff --git a/ui-v2/app/templates/dc/nodes/show/sessions.hbs b/ui/packages/consul-ui/app/templates/dc/nodes/show/sessions.hbs similarity index 100% rename from ui-v2/app/templates/dc/nodes/show/sessions.hbs rename to ui/packages/consul-ui/app/templates/dc/nodes/show/sessions.hbs diff --git a/ui-v2/app/templates/dc/nspaces/-form.hbs b/ui/packages/consul-ui/app/templates/dc/nspaces/-form.hbs similarity index 100% rename from ui-v2/app/templates/dc/nspaces/-form.hbs rename to ui/packages/consul-ui/app/templates/dc/nspaces/-form.hbs diff --git a/ui-v2/app/templates/dc/nspaces/edit.hbs b/ui/packages/consul-ui/app/templates/dc/nspaces/edit.hbs similarity index 90% rename from ui-v2/app/templates/dc/nspaces/edit.hbs rename to ui/packages/consul-ui/app/templates/dc/nspaces/edit.hbs index 72bdd234d..bf2a5eab6 100644 --- a/ui-v2/app/templates/dc/nspaces/edit.hbs +++ b/ui/packages/consul-ui/app/templates/dc/nspaces/edit.hbs @@ -1,7 +1,7 @@ {{#if create }} - {{title 'New Namespace'}} + {{page-title 'New Namespace'}} {{else}} - {{title 'Edit Namespace'}} + {{page-title 'Edit Namespace'}} {{/if}} diff --git a/ui/packages/consul-ui/app/templates/dc/nspaces/index.hbs b/ui/packages/consul-ui/app/templates/dc/nspaces/index.hbs new file mode 100644 index 000000000..5abe5a8a3 --- /dev/null +++ b/ui/packages/consul-ui/app/templates/dc/nspaces/index.hbs @@ -0,0 +1,76 @@ +{{page-title 'Namespaces'}} +{{#let (or sortBy "Name:asc") as |sort|}} + + + + + + +

+ Namespaces +

+
+ + Create + + + {{#if (gt items.length 0)}} + + {{/if}} + + + {{#let (sort-by (comparator 'nspace' sort) items) as |sorted|}} + + + + <:empty> + + +

+ {{#if (gt items.length 0)}} + No namespaces found + {{else}} + Welcome to Namespaces + {{/if}} +

+
+ +

+ {{#if (gt items.length 0)}} + No namespaces where found matching that search, or you may not have access to view the namespaces you are searching for. + {{else}} + There don't seem to be any namespaces, or you may not have access to view namespaces yet. + {{/if}} +

+
+ + + + +
+ +
+
+
+ {{/let}} +
+
+{{/let}} \ No newline at end of file diff --git a/ui-v2/app/templates/dc/services/index.hbs b/ui/packages/consul-ui/app/templates/dc/services/index.hbs similarity index 94% rename from ui-v2/app/templates/dc/services/index.hbs rename to ui/packages/consul-ui/app/templates/dc/services/index.hbs index b18eca890..b9101e336 100644 --- a/ui-v2/app/templates/dc/services/index.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/index.hbs @@ -1,11 +1,11 @@ -{{title 'Services'}} +{{page-title 'Services'}} {{#let (hash statuses=(if status (split status ',') undefined) - types=(if type (split type ',') undefined) + kinds=(if kind (split kind ',') undefined) sources=(if source (split source ',') undefined) ) as |filters|}} - {{#let (or sortBy "Name:asc") as |sort|}} + {{#let (or sortBy "Status:asc") as |sort|}} diff --git a/ui-v2/app/templates/dc/services/instance.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance.hbs similarity index 85% rename from ui-v2/app/templates/dc/services/instance.hbs rename to ui/packages/consul-ui/app/templates/dc/services/instance.hbs index aaa34c746..bddb96272 100644 --- a/ui-v2/app/templates/dc/services/instance.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance.hbs @@ -1,4 +1,4 @@ -{{title item.Service.ID}} +{{page-title item.Service.ID}} @@ -47,8 +47,10 @@ (hash label="Addresses" href=(href-to "dc.services.instance.addresses") selected=(is-href "dc.services.instance.addresses")) "" ) (if proxy - (hash label="Proxy Info" href=(href-to "dc.services.instance.proxy") selected=(is-href "dc.services.instance.proxy")) - + (hash label="Upstreams" href=(href-to "dc.services.instance.upstreams") selected=(is-href "dc.services.instance.upstreams")) +) +(if proxy + (hash label="Exposed Paths" href=(href-to "dc.services.instance.exposedpaths") selected=(is-href "dc.services.instance.exposedpaths")) ) (hash label="Tags & Meta" href=(href-to "dc.services.instance.metadata") selected=(is-href "dc.services.instance.metadata")) ) diff --git a/ui-v2/app/templates/dc/services/instance/addresses.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs similarity index 100% rename from ui-v2/app/templates/dc/services/instance/addresses.hbs rename to ui/packages/consul-ui/app/templates/dc/services/instance/addresses.hbs diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs new file mode 100644 index 000000000..34901d8c7 --- /dev/null +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/exposedpaths.hbs @@ -0,0 +1,10 @@ +
+
+ {{#if (gt proxy.Service.Proxy.Expose.Paths.length 0)}} +

+ The following list shows individual HTTP paths exposed through Envoy for external services like Prometheus. Read more about this in our documentation. +

+ + {{/if}} +
+
\ No newline at end of file diff --git a/ui-v2/app/templates/dc/services/instance/healthchecks.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs similarity index 52% rename from ui-v2/app/templates/dc/services/instance/healthchecks.hbs rename to ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs index 6264daa55..edf2ac0c3 100644 --- a/ui-v2/app/templates/dc/services/instance/healthchecks.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/healthchecks.hbs @@ -1,8 +1,12 @@
- {{#if (gt item.Checks.length 0) }} + {{#let (append item.Checks (or proxy.Checks (array))) as |checks|}} + {{#if (gt checks.length 0) }}
- +
{{else}} @@ -13,5 +17,6 @@ {{/if}} + {{/let}}
diff --git a/ui-v2/app/templates/dc/services/instance/metadata.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/metadata.hbs similarity index 100% rename from ui-v2/app/templates/dc/services/instance/metadata.hbs rename to ui/packages/consul-ui/app/templates/dc/services/instance/metadata.hbs diff --git a/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs b/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs new file mode 100644 index 000000000..3708b3f22 --- /dev/null +++ b/ui/packages/consul-ui/app/templates/dc/services/instance/upstreams.hbs @@ -0,0 +1,37 @@ +
+
+{{#let (or sortBy "DestinationName:asc") as |sort|}} + {{#if (gt proxy.Service.Proxy.Upstreams.length 0)}} + + + + <:empty> + + +

+ {{#if search.length}} + No upstreams where found matching that search. + {{else}} + This service has no upstreams. + {{/if}} +

+
+
+ +
+ {{/if}} +{{/let}} +
+
\ No newline at end of file diff --git a/ui-v2/app/templates/dc/services/show.hbs b/ui/packages/consul-ui/app/templates/dc/services/show.hbs similarity index 94% rename from ui-v2/app/templates/dc/services/show.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show.hbs index e3c11aa32..a051e3caf 100644 --- a/ui-v2/app/templates/dc/services/show.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show.hbs @@ -4,7 +4,7 @@ -{{title item.Service.Service}} +{{page-title item.Service.Service}} {{/if}} -{{#let (filter (filter-predicate 'intention' filters) items) as |filtered|}} - {{#let (sort-by (comparator 'intention' sort) filtered) as |sorted|}} - - <:idle as |list|> - {{#if (eq searched.length 1)}} - {{#let searched.firstObject as |item|}} - {{#if (eq search item.SourceName)}} - - {{/if}} - {{/let}} - {{/if}} - + + + <:empty as |list|> @@ -58,10 +51,6 @@ - - - {{/let}} -{{/let}} {{/let}} diff --git a/ui-v2/app/templates/dc/services/show/routing.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/routing.hbs similarity index 55% rename from ui-v2/app/templates/dc/services/show/routing.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show/routing.hbs index bc4367253..c493ae005 100644 --- a/ui-v2/app/templates/dc/services/show/routing.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show/routing.hbs @@ -1,6 +1,8 @@
- +
diff --git a/ui-v2/app/templates/dc/services/show/services.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/services.hbs similarity index 100% rename from ui-v2/app/templates/dc/services/show/services.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show/services.hbs diff --git a/ui-v2/app/templates/dc/services/show/tags.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/tags.hbs similarity index 100% rename from ui-v2/app/templates/dc/services/show/tags.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show/tags.hbs diff --git a/ui-v2/app/templates/dc/services/show/topology.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/topology.hbs similarity index 80% rename from ui-v2/app/templates/dc/services/show/topology.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show/topology.hbs index 2e5edbb2e..99eb63a47 100644 --- a/ui-v2/app/templates/dc/services/show/topology.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show/topology.hbs @@ -1,16 +1,20 @@
+ {{#if topology.FilteredByACLs}} + + {{/if}} {{#if topology}} {{else}} diff --git a/ui-v2/app/templates/dc/services/show/upstreams.hbs b/ui/packages/consul-ui/app/templates/dc/services/show/upstreams.hbs similarity index 97% rename from ui-v2/app/templates/dc/services/show/upstreams.hbs rename to ui/packages/consul-ui/app/templates/dc/services/show/upstreams.hbs index 16c9eb802..3059ad1c6 100644 --- a/ui-v2/app/templates/dc/services/show/upstreams.hbs +++ b/ui/packages/consul-ui/app/templates/dc/services/show/upstreams.hbs @@ -4,7 +4,7 @@ {{#let (hash instances=(if instance (split instance ',') undefined) ) as |filters|}} - {{#let (or sortBy "Name:asc") as |sort|}} + {{#let (or sortBy "Status:asc") as |sort|}} {{#if (gt gatewayServices.length 0)}} + +

+ Settings +

+
+ + + +

Local Storage

+
+ +

+ These settings are immediately saved to local storage and persisted through browser usage. +

+
+
+
+ {{#if (not (env 'CONSUL_UI_DISABLE_REALTIME'))}} +
+

Blocking Queries

+

Keep catalog info up-to-date without refreshing the page. Any changes made to services, nodes and intentions would be reflected in real time.

+
+ +
+
+ {{/if}} +
+
+ diff --git a/ui-v2/app/utils/acls-status.js b/ui/packages/consul-ui/app/utils/acls-status.js similarity index 100% rename from ui-v2/app/utils/acls-status.js rename to ui/packages/consul-ui/app/utils/acls-status.js diff --git a/ui-v2/app/utils/ascend.js b/ui/packages/consul-ui/app/utils/ascend.js similarity index 100% rename from ui-v2/app/utils/ascend.js rename to ui/packages/consul-ui/app/utils/ascend.js diff --git a/ui-v2/app/utils/atob.js b/ui/packages/consul-ui/app/utils/atob.js similarity index 100% rename from ui-v2/app/utils/atob.js rename to ui/packages/consul-ui/app/utils/atob.js diff --git a/ui-v2/app/utils/btoa.js b/ui/packages/consul-ui/app/utils/btoa.js similarity index 100% rename from ui-v2/app/utils/btoa.js rename to ui/packages/consul-ui/app/utils/btoa.js diff --git a/ui-v2/app/utils/callable-type.js b/ui/packages/consul-ui/app/utils/callable-type.js similarity index 100% rename from ui-v2/app/utils/callable-type.js rename to ui/packages/consul-ui/app/utils/callable-type.js diff --git a/ui-v2/app/utils/create-fingerprinter.js b/ui/packages/consul-ui/app/utils/create-fingerprinter.js similarity index 100% rename from ui-v2/app/utils/create-fingerprinter.js rename to ui/packages/consul-ui/app/utils/create-fingerprinter.js diff --git a/ui-v2/app/utils/distance.js b/ui/packages/consul-ui/app/utils/distance.js similarity index 100% rename from ui-v2/app/utils/distance.js rename to ui/packages/consul-ui/app/utils/distance.js diff --git a/ui-v2/app/utils/dom/click-first-anchor.js b/ui/packages/consul-ui/app/utils/dom/click-first-anchor.js similarity index 100% rename from ui-v2/app/utils/dom/click-first-anchor.js rename to ui/packages/consul-ui/app/utils/dom/click-first-anchor.js diff --git a/ui-v2/app/utils/dom/closest.js b/ui/packages/consul-ui/app/utils/dom/closest.js similarity index 100% rename from ui-v2/app/utils/dom/closest.js rename to ui/packages/consul-ui/app/utils/dom/closest.js diff --git a/ui-v2/app/utils/dom/create-listeners.js b/ui/packages/consul-ui/app/utils/dom/create-listeners.js similarity index 100% rename from ui-v2/app/utils/dom/create-listeners.js rename to ui/packages/consul-ui/app/utils/dom/create-listeners.js diff --git a/ui-v2/app/utils/dom/event-source/blocking.js b/ui/packages/consul-ui/app/utils/dom/event-source/blocking.js similarity index 95% rename from ui-v2/app/utils/dom/event-source/blocking.js rename to ui/packages/consul-ui/app/utils/dom/event-source/blocking.js index e0d9ef5cb..8ff1ad539 100644 --- a/ui-v2/app/utils/dom/event-source/blocking.js +++ b/ui/packages/consul-ui/app/utils/dom/event-source/blocking.js @@ -7,8 +7,11 @@ const pause = 2000; export const createErrorBackoff = function(ms = 3000, P = Promise, wait = setTimeout) { // This expects an ember-data like error return function(err) { - const status = get(err, 'errors.firstObject.status'); + // expect and ember-data error or a http-like error (e.statusCode) + let status = get(err, 'errors.firstObject.status') || get(err, 'statusCode'); if (typeof status !== 'undefined') { + // ember-data errors are strings, http errors are numbers + status = status.toString(); switch (true) { // Any '5xx' (not 500) errors should back off and try again case status.indexOf('5') === 0 && status.length === 3 && status !== '500': diff --git a/ui-v2/app/utils/dom/event-source/cache.js b/ui/packages/consul-ui/app/utils/dom/event-source/cache.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/cache.js rename to ui/packages/consul-ui/app/utils/dom/event-source/cache.js diff --git a/ui-v2/app/utils/dom/event-source/callable.js b/ui/packages/consul-ui/app/utils/dom/event-source/callable.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/callable.js rename to ui/packages/consul-ui/app/utils/dom/event-source/callable.js diff --git a/ui-v2/app/utils/dom/event-source/index.js b/ui/packages/consul-ui/app/utils/dom/event-source/index.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/index.js rename to ui/packages/consul-ui/app/utils/dom/event-source/index.js diff --git a/ui-v2/app/utils/dom/event-source/openable.js b/ui/packages/consul-ui/app/utils/dom/event-source/openable.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/openable.js rename to ui/packages/consul-ui/app/utils/dom/event-source/openable.js diff --git a/ui-v2/app/utils/dom/event-source/proxy.js b/ui/packages/consul-ui/app/utils/dom/event-source/proxy.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/proxy.js rename to ui/packages/consul-ui/app/utils/dom/event-source/proxy.js diff --git a/ui-v2/app/utils/dom/event-source/resolver.js b/ui/packages/consul-ui/app/utils/dom/event-source/resolver.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/resolver.js rename to ui/packages/consul-ui/app/utils/dom/event-source/resolver.js diff --git a/ui-v2/app/utils/dom/event-source/storage.js b/ui/packages/consul-ui/app/utils/dom/event-source/storage.js similarity index 100% rename from ui-v2/app/utils/dom/event-source/storage.js rename to ui/packages/consul-ui/app/utils/dom/event-source/storage.js diff --git a/ui-v2/app/utils/dom/event-target/event-target-shim/LICENSE b/ui/packages/consul-ui/app/utils/dom/event-target/event-target-shim/LICENSE similarity index 100% rename from ui-v2/app/utils/dom/event-target/event-target-shim/LICENSE rename to ui/packages/consul-ui/app/utils/dom/event-target/event-target-shim/LICENSE diff --git a/ui-v2/app/utils/dom/event-target/event-target-shim/event.js b/ui/packages/consul-ui/app/utils/dom/event-target/event-target-shim/event.js similarity index 100% rename from ui-v2/app/utils/dom/event-target/event-target-shim/event.js rename to ui/packages/consul-ui/app/utils/dom/event-target/event-target-shim/event.js diff --git a/ui-v2/app/utils/dom/event-target/rsvp.js b/ui/packages/consul-ui/app/utils/dom/event-target/rsvp.js similarity index 100% rename from ui-v2/app/utils/dom/event-target/rsvp.js rename to ui/packages/consul-ui/app/utils/dom/event-target/rsvp.js diff --git a/ui-v2/app/utils/dom/get-component-factory.js b/ui/packages/consul-ui/app/utils/dom/get-component-factory.js similarity index 100% rename from ui-v2/app/utils/dom/get-component-factory.js rename to ui/packages/consul-ui/app/utils/dom/get-component-factory.js diff --git a/ui-v2/app/utils/dom/is-outside.js b/ui/packages/consul-ui/app/utils/dom/is-outside.js similarity index 100% rename from ui-v2/app/utils/dom/is-outside.js rename to ui/packages/consul-ui/app/utils/dom/is-outside.js diff --git a/ui-v2/app/utils/dom/normalize-event.js b/ui/packages/consul-ui/app/utils/dom/normalize-event.js similarity index 100% rename from ui-v2/app/utils/dom/normalize-event.js rename to ui/packages/consul-ui/app/utils/dom/normalize-event.js diff --git a/ui-v2/app/utils/dom/qsa-factory.js b/ui/packages/consul-ui/app/utils/dom/qsa-factory.js similarity index 100% rename from ui-v2/app/utils/dom/qsa-factory.js rename to ui/packages/consul-ui/app/utils/dom/qsa-factory.js diff --git a/ui-v2/app/utils/dom/sibling.js b/ui/packages/consul-ui/app/utils/dom/sibling.js similarity index 100% rename from ui-v2/app/utils/dom/sibling.js rename to ui/packages/consul-ui/app/utils/dom/sibling.js diff --git a/ui-v2/app/utils/editor/lint.js b/ui/packages/consul-ui/app/utils/editor/lint.js similarity index 100% rename from ui-v2/app/utils/editor/lint.js rename to ui/packages/consul-ui/app/utils/editor/lint.js diff --git a/ui/packages/consul-ui/app/utils/filter/index.js b/ui/packages/consul-ui/app/utils/filter/index.js new file mode 100644 index 000000000..89fcde58b --- /dev/null +++ b/ui/packages/consul-ui/app/utils/filter/index.js @@ -0,0 +1,56 @@ +import setHelpers from 'mnemonist/set'; + +const createPossibles = function(predicates) { + // create arrays of allowed values + return Object.entries(predicates).reduce((prev, [key, value]) => { + if (typeof value !== 'function') { + prev[key] = new Set(Object.keys(value)); + } else { + prev[key] = null; + } + return prev; + }, {}); +}; +const sanitize = function(values, possibles) { + return Object.keys(possibles).reduce((prev, key) => { + // only set the value if the value has a length of > 0 + const value = typeof values[key] === 'undefined' ? [] : values[key]; + if (value.length > 0) { + if (possibles[key] !== null) { + // only include possible values + prev[key] = [...setHelpers.intersection(possibles[key], new Set(value))]; + } else { + // only unique values + prev[key] = [...new Set(value)]; + } + } + return prev; + }, {}); +}; +const execute = function(item, values, predicates) { + // every/and the top level values + return Object.entries(values).every(([key, values]) => { + let predicate = predicates[key]; + if (typeof predicate === 'function') { + return predicate(item, values); + } else { + // if the top level values can have multiple values some/or them + return values.some(val => predicate[val](item, val)); + } + }); +}; +// exports a function that requires a hash of predicates passed in +export const andOr = predicates => { + // figure out all possible values from the hash of predicates + const possibles = createPossibles(predicates); + return () => values => { + // this is what is called post injection + // the actual user values are passed in here so 'sanitize' them which is + // basically checking against the possibles + values = sanitize(values, possibles); + // this is your actual filter predicate + return item => { + return execute(item, values, predicates); + }; + }; +}; diff --git a/ui-v2/app/utils/form/builder.js b/ui/packages/consul-ui/app/utils/form/builder.js similarity index 100% rename from ui-v2/app/utils/form/builder.js rename to ui/packages/consul-ui/app/utils/form/builder.js diff --git a/ui-v2/app/utils/form/changeset.js b/ui/packages/consul-ui/app/utils/form/changeset.js similarity index 100% rename from ui-v2/app/utils/form/changeset.js rename to ui/packages/consul-ui/app/utils/form/changeset.js diff --git a/ui-v2/app/utils/get-environment.js b/ui/packages/consul-ui/app/utils/get-environment.js similarity index 100% rename from ui-v2/app/utils/get-environment.js rename to ui/packages/consul-ui/app/utils/get-environment.js diff --git a/ui-v2/app/utils/get-form-name-property.js b/ui/packages/consul-ui/app/utils/get-form-name-property.js similarity index 100% rename from ui-v2/app/utils/get-form-name-property.js rename to ui/packages/consul-ui/app/utils/get-form-name-property.js diff --git a/ui-v2/app/utils/helpers/call-if-type.js b/ui/packages/consul-ui/app/utils/helpers/call-if-type.js similarity index 100% rename from ui-v2/app/utils/helpers/call-if-type.js rename to ui/packages/consul-ui/app/utils/helpers/call-if-type.js diff --git a/ui-v2/app/utils/http/acl/is-valid-server-error.js b/ui/packages/consul-ui/app/utils/http/acl/is-valid-server-error.js similarity index 100% rename from ui-v2/app/utils/http/acl/is-valid-server-error.js rename to ui/packages/consul-ui/app/utils/http/acl/is-valid-server-error.js diff --git a/ui-v2/app/utils/http/consul.js b/ui/packages/consul-ui/app/utils/http/consul.js similarity index 100% rename from ui-v2/app/utils/http/consul.js rename to ui/packages/consul-ui/app/utils/http/consul.js diff --git a/ui-v2/app/utils/http/create-headers.js b/ui/packages/consul-ui/app/utils/http/create-headers.js similarity index 100% rename from ui-v2/app/utils/http/create-headers.js rename to ui/packages/consul-ui/app/utils/http/create-headers.js diff --git a/ui-v2/app/utils/http/create-query-params.js b/ui/packages/consul-ui/app/utils/http/create-query-params.js similarity index 100% rename from ui-v2/app/utils/http/create-query-params.js rename to ui/packages/consul-ui/app/utils/http/create-query-params.js diff --git a/ui-v2/app/utils/http/create-url.js b/ui/packages/consul-ui/app/utils/http/create-url.js similarity index 100% rename from ui-v2/app/utils/http/create-url.js rename to ui/packages/consul-ui/app/utils/http/create-url.js diff --git a/ui-v2/app/utils/http/error.js b/ui/packages/consul-ui/app/utils/http/error.js similarity index 100% rename from ui-v2/app/utils/http/error.js rename to ui/packages/consul-ui/app/utils/http/error.js diff --git a/ui-v2/app/utils/http/headers.js b/ui/packages/consul-ui/app/utils/http/headers.js similarity index 100% rename from ui-v2/app/utils/http/headers.js rename to ui/packages/consul-ui/app/utils/http/headers.js diff --git a/ui-v2/app/utils/http/method.js b/ui/packages/consul-ui/app/utils/http/method.js similarity index 100% rename from ui-v2/app/utils/http/method.js rename to ui/packages/consul-ui/app/utils/http/method.js diff --git a/ui-v2/app/utils/http/request.js b/ui/packages/consul-ui/app/utils/http/request.js similarity index 100% rename from ui-v2/app/utils/http/request.js rename to ui/packages/consul-ui/app/utils/http/request.js diff --git a/ui-v2/app/utils/http/status.js b/ui/packages/consul-ui/app/utils/http/status.js similarity index 100% rename from ui-v2/app/utils/http/status.js rename to ui/packages/consul-ui/app/utils/http/status.js diff --git a/ui-v2/app/utils/http/xhr.js b/ui/packages/consul-ui/app/utils/http/xhr.js similarity index 100% rename from ui-v2/app/utils/http/xhr.js rename to ui/packages/consul-ui/app/utils/http/xhr.js diff --git a/ui-v2/app/utils/isFolder.js b/ui/packages/consul-ui/app/utils/isFolder.js similarity index 100% rename from ui-v2/app/utils/isFolder.js rename to ui/packages/consul-ui/app/utils/isFolder.js diff --git a/ui-v2/app/utils/keyToArray.js b/ui/packages/consul-ui/app/utils/keyToArray.js similarity index 100% rename from ui-v2/app/utils/keyToArray.js rename to ui/packages/consul-ui/app/utils/keyToArray.js diff --git a/ui-v2/app/utils/left-trim.js b/ui/packages/consul-ui/app/utils/left-trim.js similarity index 100% rename from ui-v2/app/utils/left-trim.js rename to ui/packages/consul-ui/app/utils/left-trim.js diff --git a/ui-v2/app/utils/maybe-call.js b/ui/packages/consul-ui/app/utils/maybe-call.js similarity index 100% rename from ui-v2/app/utils/maybe-call.js rename to ui/packages/consul-ui/app/utils/maybe-call.js diff --git a/ui-v2/app/utils/minimizeModel.js b/ui/packages/consul-ui/app/utils/minimizeModel.js similarity index 100% rename from ui-v2/app/utils/minimizeModel.js rename to ui/packages/consul-ui/app/utils/minimizeModel.js diff --git a/ui-v2/app/utils/non-empty-set.js b/ui/packages/consul-ui/app/utils/non-empty-set.js similarity index 100% rename from ui-v2/app/utils/non-empty-set.js rename to ui/packages/consul-ui/app/utils/non-empty-set.js diff --git a/ui-v2/app/utils/promisedTimeout.js b/ui/packages/consul-ui/app/utils/promisedTimeout.js similarity index 100% rename from ui-v2/app/utils/promisedTimeout.js rename to ui/packages/consul-ui/app/utils/promisedTimeout.js diff --git a/ui-v2/app/utils/remove-null.js b/ui/packages/consul-ui/app/utils/remove-null.js similarity index 100% rename from ui-v2/app/utils/remove-null.js rename to ui/packages/consul-ui/app/utils/remove-null.js diff --git a/ui-v2/app/utils/right-trim.js b/ui/packages/consul-ui/app/utils/right-trim.js similarity index 100% rename from ui-v2/app/utils/right-trim.js rename to ui/packages/consul-ui/app/utils/right-trim.js diff --git a/ui-v2/app/utils/routing/redirect-to.js b/ui/packages/consul-ui/app/utils/routing/redirect-to.js similarity index 100% rename from ui-v2/app/utils/routing/redirect-to.js rename to ui/packages/consul-ui/app/utils/routing/redirect-to.js diff --git a/ui-v2/app/utils/routing/transitionable.js b/ui/packages/consul-ui/app/utils/routing/transitionable.js similarity index 100% rename from ui-v2/app/utils/routing/transitionable.js rename to ui/packages/consul-ui/app/utils/routing/transitionable.js diff --git a/ui-v2/app/utils/routing/walk.js b/ui/packages/consul-ui/app/utils/routing/walk.js similarity index 100% rename from ui-v2/app/utils/routing/walk.js rename to ui/packages/consul-ui/app/utils/routing/walk.js diff --git a/ui-v2/app/utils/routing/wildcard.js b/ui/packages/consul-ui/app/utils/routing/wildcard.js similarity index 100% rename from ui-v2/app/utils/routing/wildcard.js rename to ui/packages/consul-ui/app/utils/routing/wildcard.js diff --git a/ui-v2/app/utils/search/filterable.js b/ui/packages/consul-ui/app/utils/search/filterable.js similarity index 100% rename from ui-v2/app/utils/search/filterable.js rename to ui/packages/consul-ui/app/utils/search/filterable.js diff --git a/ui-v2/app/utils/storage/local-storage.js b/ui/packages/consul-ui/app/utils/storage/local-storage.js similarity index 100% rename from ui-v2/app/utils/storage/local-storage.js rename to ui/packages/consul-ui/app/utils/storage/local-storage.js diff --git a/ui-v2/app/utils/templatize.js b/ui/packages/consul-ui/app/utils/templatize.js similarity index 100% rename from ui-v2/app/utils/templatize.js rename to ui/packages/consul-ui/app/utils/templatize.js diff --git a/ui-v2/app/utils/ticker/index.js b/ui/packages/consul-ui/app/utils/ticker/index.js similarity index 100% rename from ui-v2/app/utils/ticker/index.js rename to ui/packages/consul-ui/app/utils/ticker/index.js diff --git a/ui-v2/app/utils/tomography.js b/ui/packages/consul-ui/app/utils/tomography.js similarity index 100% rename from ui-v2/app/utils/tomography.js rename to ui/packages/consul-ui/app/utils/tomography.js diff --git a/ui-v2/app/utils/ucfirst.js b/ui/packages/consul-ui/app/utils/ucfirst.js similarity index 100% rename from ui-v2/app/utils/ucfirst.js rename to ui/packages/consul-ui/app/utils/ucfirst.js diff --git a/ui-v2/app/utils/update-array-object.js b/ui/packages/consul-ui/app/utils/update-array-object.js similarity index 100% rename from ui-v2/app/utils/update-array-object.js rename to ui/packages/consul-ui/app/utils/update-array-object.js diff --git a/ui-v2/app/validations/acl.js b/ui/packages/consul-ui/app/validations/acl.js similarity index 100% rename from ui-v2/app/validations/acl.js rename to ui/packages/consul-ui/app/validations/acl.js diff --git a/ui-v2/app/validations/intention-permission-http-header.js b/ui/packages/consul-ui/app/validations/intention-permission-http-header.js similarity index 100% rename from ui-v2/app/validations/intention-permission-http-header.js rename to ui/packages/consul-ui/app/validations/intention-permission-http-header.js diff --git a/ui-v2/app/validations/intention-permission.js b/ui/packages/consul-ui/app/validations/intention-permission.js similarity index 100% rename from ui-v2/app/validations/intention-permission.js rename to ui/packages/consul-ui/app/validations/intention-permission.js diff --git a/ui-v2/app/validations/intention.js b/ui/packages/consul-ui/app/validations/intention.js similarity index 100% rename from ui-v2/app/validations/intention.js rename to ui/packages/consul-ui/app/validations/intention.js diff --git a/ui-v2/app/validations/kv.js b/ui/packages/consul-ui/app/validations/kv.js similarity index 100% rename from ui-v2/app/validations/kv.js rename to ui/packages/consul-ui/app/validations/kv.js diff --git a/ui-v2/app/validations/nspace.js b/ui/packages/consul-ui/app/validations/nspace.js similarity index 100% rename from ui-v2/app/validations/nspace.js rename to ui/packages/consul-ui/app/validations/nspace.js diff --git a/ui-v2/app/validations/policy.js b/ui/packages/consul-ui/app/validations/policy.js similarity index 100% rename from ui-v2/app/validations/policy.js rename to ui/packages/consul-ui/app/validations/policy.js diff --git a/ui-v2/app/validations/role.js b/ui/packages/consul-ui/app/validations/role.js similarity index 100% rename from ui-v2/app/validations/role.js rename to ui/packages/consul-ui/app/validations/role.js diff --git a/ui-v2/app/validations/token.js b/ui/packages/consul-ui/app/validations/token.js similarity index 100% rename from ui-v2/app/validations/token.js rename to ui/packages/consul-ui/app/validations/token.js diff --git a/ui-v2/blueprints/adapter-test/index.js b/ui/packages/consul-ui/blueprints/adapter-test/index.js similarity index 100% rename from ui-v2/blueprints/adapter-test/index.js rename to ui/packages/consul-ui/blueprints/adapter-test/index.js diff --git a/ui-v2/blueprints/adapter-test/qunit-files/__root__/__path__/integration/adapters/__test__.js b/ui/packages/consul-ui/blueprints/adapter-test/qunit-files/__root__/__path__/integration/adapters/__test__.js similarity index 100% rename from ui-v2/blueprints/adapter-test/qunit-files/__root__/__path__/integration/adapters/__test__.js rename to ui/packages/consul-ui/blueprints/adapter-test/qunit-files/__root__/__path__/integration/adapters/__test__.js diff --git a/ui-v2/blueprints/adapter-test/qunit-files/__root__/__path__/unit/adapters/__test__.js b/ui/packages/consul-ui/blueprints/adapter-test/qunit-files/__root__/__path__/unit/adapters/__test__.js similarity index 100% rename from ui-v2/blueprints/adapter-test/qunit-files/__root__/__path__/unit/adapters/__test__.js rename to ui/packages/consul-ui/blueprints/adapter-test/qunit-files/__root__/__path__/unit/adapters/__test__.js diff --git a/ui-v2/blueprints/adapter/files/__root__/__path__/__name__.js b/ui/packages/consul-ui/blueprints/adapter/files/__root__/__path__/__name__.js similarity index 100% rename from ui-v2/blueprints/adapter/files/__root__/__path__/__name__.js rename to ui/packages/consul-ui/blueprints/adapter/files/__root__/__path__/__name__.js diff --git a/ui-v2/blueprints/adapter/index.js b/ui/packages/consul-ui/blueprints/adapter/index.js similarity index 100% rename from ui-v2/blueprints/adapter/index.js rename to ui/packages/consul-ui/blueprints/adapter/index.js diff --git a/ui-v2/blueprints/css-component/files/__root__/__path__/__name__.scss b/ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__.scss similarity index 100% rename from ui-v2/blueprints/css-component/files/__root__/__path__/__name__.scss rename to ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__.scss diff --git a/ui-v2/app/styles/components/tabular-details/index.scss b/ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/index.scss similarity index 100% rename from ui-v2/app/styles/components/tabular-details/index.scss rename to ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/index.scss diff --git a/ui-v2/blueprints/css-component/files/__root__/__path__/__name__/layout.scss b/ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/layout.scss similarity index 100% rename from ui-v2/blueprints/css-component/files/__root__/__path__/__name__/layout.scss rename to ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/layout.scss diff --git a/ui-v2/blueprints/css-component/files/__root__/__path__/__name__/skin.scss b/ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/skin.scss similarity index 100% rename from ui-v2/blueprints/css-component/files/__root__/__path__/__name__/skin.scss rename to ui/packages/consul-ui/blueprints/css-component/files/__root__/__path__/__name__/skin.scss diff --git a/ui-v2/blueprints/css-component/index.js b/ui/packages/consul-ui/blueprints/css-component/index.js similarity index 100% rename from ui-v2/blueprints/css-component/index.js rename to ui/packages/consul-ui/blueprints/css-component/index.js diff --git a/ui-v2/blueprints/model-test/index.js b/ui/packages/consul-ui/blueprints/model-test/index.js similarity index 100% rename from ui-v2/blueprints/model-test/index.js rename to ui/packages/consul-ui/blueprints/model-test/index.js diff --git a/ui-v2/blueprints/model-test/qunit-files/__root__/__path__/unit/models/__test__.js b/ui/packages/consul-ui/blueprints/model-test/qunit-files/__root__/__path__/unit/models/__test__.js similarity index 100% rename from ui-v2/blueprints/model-test/qunit-files/__root__/__path__/unit/models/__test__.js rename to ui/packages/consul-ui/blueprints/model-test/qunit-files/__root__/__path__/unit/models/__test__.js diff --git a/ui-v2/blueprints/model/files/__root__/__path__/__name__.js b/ui/packages/consul-ui/blueprints/model/files/__root__/__path__/__name__.js similarity index 100% rename from ui-v2/blueprints/model/files/__root__/__path__/__name__.js rename to ui/packages/consul-ui/blueprints/model/files/__root__/__path__/__name__.js diff --git a/ui-v2/blueprints/model/index.js b/ui/packages/consul-ui/blueprints/model/index.js similarity index 100% rename from ui-v2/blueprints/model/index.js rename to ui/packages/consul-ui/blueprints/model/index.js diff --git a/ui-v2/blueprints/repository-test/index.js b/ui/packages/consul-ui/blueprints/repository-test/index.js similarity index 100% rename from ui-v2/blueprints/repository-test/index.js rename to ui/packages/consul-ui/blueprints/repository-test/index.js diff --git a/ui-v2/blueprints/repository-test/qunit-files/__root__/__path__/integration/services/repository/__test__.js b/ui/packages/consul-ui/blueprints/repository-test/qunit-files/__root__/__path__/integration/services/repository/__test__.js similarity index 100% rename from ui-v2/blueprints/repository-test/qunit-files/__root__/__path__/integration/services/repository/__test__.js rename to ui/packages/consul-ui/blueprints/repository-test/qunit-files/__root__/__path__/integration/services/repository/__test__.js diff --git a/ui-v2/blueprints/repository-test/qunit-files/__root__/__path__/unit/services/repository/__test__.js b/ui/packages/consul-ui/blueprints/repository-test/qunit-files/__root__/__path__/unit/services/repository/__test__.js similarity index 100% rename from ui-v2/blueprints/repository-test/qunit-files/__root__/__path__/unit/services/repository/__test__.js rename to ui/packages/consul-ui/blueprints/repository-test/qunit-files/__root__/__path__/unit/services/repository/__test__.js diff --git a/ui-v2/blueprints/repository/files/__root__/__path__/__name__.js b/ui/packages/consul-ui/blueprints/repository/files/__root__/__path__/__name__.js similarity index 100% rename from ui-v2/blueprints/repository/files/__root__/__path__/__name__.js rename to ui/packages/consul-ui/blueprints/repository/files/__root__/__path__/__name__.js diff --git a/ui-v2/blueprints/repository/index.js b/ui/packages/consul-ui/blueprints/repository/index.js similarity index 100% rename from ui-v2/blueprints/repository/index.js rename to ui/packages/consul-ui/blueprints/repository/index.js diff --git a/ui-v2/blueprints/route/index.js b/ui/packages/consul-ui/blueprints/route/index.js similarity index 100% rename from ui-v2/blueprints/route/index.js rename to ui/packages/consul-ui/blueprints/route/index.js diff --git a/ui-v2/blueprints/route/native-files/__root__/__path__/__name__.js b/ui/packages/consul-ui/blueprints/route/native-files/__root__/__path__/__name__.js similarity index 100% rename from ui-v2/blueprints/route/native-files/__root__/__path__/__name__.js rename to ui/packages/consul-ui/blueprints/route/native-files/__root__/__path__/__name__.js diff --git a/ui-v2/blueprints/route/native-files/__root__/__templatepath__/__templatename__.hbs b/ui/packages/consul-ui/blueprints/route/native-files/__root__/__templatepath__/__templatename__.hbs similarity index 100% rename from ui-v2/blueprints/route/native-files/__root__/__templatepath__/__templatename__.hbs rename to ui/packages/consul-ui/blueprints/route/native-files/__root__/__templatepath__/__templatename__.hbs diff --git a/ui-v2/blueprints/serializer-test/index.js b/ui/packages/consul-ui/blueprints/serializer-test/index.js similarity index 100% rename from ui-v2/blueprints/serializer-test/index.js rename to ui/packages/consul-ui/blueprints/serializer-test/index.js diff --git a/ui-v2/blueprints/serializer-test/qunit-files/__root__/__path__/integration/serializers/__test__.js b/ui/packages/consul-ui/blueprints/serializer-test/qunit-files/__root__/__path__/integration/serializers/__test__.js similarity index 100% rename from ui-v2/blueprints/serializer-test/qunit-files/__root__/__path__/integration/serializers/__test__.js rename to ui/packages/consul-ui/blueprints/serializer-test/qunit-files/__root__/__path__/integration/serializers/__test__.js diff --git a/ui-v2/blueprints/serializer-test/qunit-files/__root__/__path__/unit/serializers/__test__.js b/ui/packages/consul-ui/blueprints/serializer-test/qunit-files/__root__/__path__/unit/serializers/__test__.js similarity index 100% rename from ui-v2/blueprints/serializer-test/qunit-files/__root__/__path__/unit/serializers/__test__.js rename to ui/packages/consul-ui/blueprints/serializer-test/qunit-files/__root__/__path__/unit/serializers/__test__.js diff --git a/ui-v2/blueprints/serializer/files/__root__/__path__/__name__.js b/ui/packages/consul-ui/blueprints/serializer/files/__root__/__path__/__name__.js similarity index 100% rename from ui-v2/blueprints/serializer/files/__root__/__path__/__name__.js rename to ui/packages/consul-ui/blueprints/serializer/files/__root__/__path__/__name__.js diff --git a/ui-v2/blueprints/serializer/index.js b/ui/packages/consul-ui/blueprints/serializer/index.js similarity index 100% rename from ui-v2/blueprints/serializer/index.js rename to ui/packages/consul-ui/blueprints/serializer/index.js diff --git a/ui-v2/config/environment.js b/ui/packages/consul-ui/config/environment.js similarity index 93% rename from ui-v2/config/environment.js rename to ui/packages/consul-ui/config/environment.js index 485fe35d1..950c7a476 100644 --- a/ui-v2/config/environment.js +++ b/ui/packages/consul-ui/config/environment.js @@ -2,7 +2,7 @@ const path = require('path'); const utils = require('./utils'); -const repositoryRoot = path.resolve(__dirname, '../../'); +const repositoryRoot = path.resolve(__dirname, '../../../../'); const repositoryYear = utils.repositoryYear; const repositorySHA = utils.repositorySHA; @@ -96,6 +96,7 @@ module.exports = function(environment, $ = process.env) { CONSUL_ACLS_ENABLED: false, CONSUL_NSPACES_ENABLED: false, CONSUL_SSO_ENABLED: false, + CONSUL_DATACENTER_LOCAL: env('CONSUL_DATACENTER_LOCAL', 'dc1'), // Static variables used in multiple places throughout the UI CONSUL_HOME_URL: 'https://www.consul.io', @@ -119,7 +120,7 @@ module.exports = function(environment, $ = process.env) { 'auto-import': false, enabled: true, endpoints: { - '/v1': '/node_modules/@hashicorp/consul-api-double/v1', + '/v1': '/mock-api/v1', }, }, APP: Object.assign({}, ENV.APP, { @@ -149,7 +150,7 @@ module.exports = function(environment, $ = process.env) { '@hashicorp/ember-cli-api-double': { enabled: true, endpoints: { - '/v1': '/node_modules/@hashicorp/consul-api-double/v1', + '/v1': '/mock-api/v1', }, }, }); @@ -164,9 +165,14 @@ module.exports = function(environment, $ = process.env) { // __RUNTIME_BOOL_Xxxx__ will be replaced with either "true" or "false" // depending on whether the named variable is true or false in the data // returned from `uiTemplateDataFromConfig`. + // + // __RUNTIME_STRING_Xxxx__ will be replaced with the literal string in + // the named variable in the data returned from + // `uiTemplateDataFromConfig`. It may be empty. CONSUL_ACLS_ENABLED: '__RUNTIME_BOOL_ACLsEnabled__', CONSUL_SSO_ENABLED: '__RUNTIME_BOOL_SSOEnabled__', CONSUL_NSPACES_ENABLED: '__RUNTIME_BOOL_NamespacesEnabled__', + CONSUL_DATACENTER_LOCAL: '__RUNTIME_STRING_LocalDatacenter__', }); break; } diff --git a/ui-v2/config/optional-features.json b/ui/packages/consul-ui/config/optional-features.json similarity index 100% rename from ui-v2/config/optional-features.json rename to ui/packages/consul-ui/config/optional-features.json diff --git a/ui-v2/config/targets.js b/ui/packages/consul-ui/config/targets.js similarity index 100% rename from ui-v2/config/targets.js rename to ui/packages/consul-ui/config/targets.js diff --git a/ui-v2/config/utils.js b/ui/packages/consul-ui/config/utils.js similarity index 100% rename from ui-v2/config/utils.js rename to ui/packages/consul-ui/config/utils.js diff --git a/ui-v2/ember-cli-build.js b/ui/packages/consul-ui/ember-cli-build.js similarity index 89% rename from ui-v2/ember-cli-build.js rename to ui/packages/consul-ui/ember-cli-build.js index b95308891..ab756fc28 100644 --- a/ui-v2/ember-cli-build.js +++ b/ui/packages/consul-ui/ember-cli-build.js @@ -8,18 +8,15 @@ module.exports = function(defaults) { const isProdLike = prodlike.indexOf(env) > -1; const sourcemaps = !isProd; let trees = {}; - if(isProdLike) { + if (isProdLike) { // exclude any component/pageobject.js files from production-like environments - trees.app = new Funnel( - 'app', - { - exclude: [ - 'components/**/pageobject.js', - 'components/**/*.test-support.js', - 'components/**/*.test.js' - ] - } - ); + trees.app = new Funnel('app', { + exclude: [ + 'components/**/pageobject.js', + 'components/**/*.test-support.js', + 'components/**/*.test.js', + ], + }); } let app = new EmberApp( Object.assign({}, defaults, { @@ -31,14 +28,7 @@ module.exports = function(defaults) { includePolyfill: true, }, 'ember-cli-string-helpers': { - only: [ - 'capitalize', - 'lowercase', - 'truncate', - 'uppercase', - 'humanize', - 'titleize' - ], + only: ['capitalize', 'lowercase', 'truncate', 'uppercase', 'humanize', 'titleize'], }, 'ember-cli-math-helpers': { only: ['div'], @@ -65,7 +55,7 @@ module.exports = function(defaults) { }, }, sassOptions: { - implementation: require('dart-sass'), + implementation: require('sass'), sourceMapEmbed: sourcemaps, }, autoprefixer: { diff --git a/ui-v2/lib/.eslintrc.js b/ui/packages/consul-ui/lib/.eslintrc.js similarity index 100% rename from ui-v2/lib/.eslintrc.js rename to ui/packages/consul-ui/lib/.eslintrc.js diff --git a/ui-v2/lib/block-slots/LICENSE.md b/ui/packages/consul-ui/lib/block-slots/LICENSE.md similarity index 100% rename from ui-v2/lib/block-slots/LICENSE.md rename to ui/packages/consul-ui/lib/block-slots/LICENSE.md diff --git a/ui-v2/lib/block-slots/README.md b/ui/packages/consul-ui/lib/block-slots/README.md similarity index 100% rename from ui-v2/lib/block-slots/README.md rename to ui/packages/consul-ui/lib/block-slots/README.md diff --git a/ui-v2/lib/block-slots/addon/components/block-slot.js b/ui/packages/consul-ui/lib/block-slots/addon/components/block-slot.js similarity index 100% rename from ui-v2/lib/block-slots/addon/components/block-slot.js rename to ui/packages/consul-ui/lib/block-slots/addon/components/block-slot.js diff --git a/ui-v2/lib/block-slots/addon/components/yield-slot.js b/ui/packages/consul-ui/lib/block-slots/addon/components/yield-slot.js similarity index 100% rename from ui-v2/lib/block-slots/addon/components/yield-slot.js rename to ui/packages/consul-ui/lib/block-slots/addon/components/yield-slot.js diff --git a/ui-v2/lib/block-slots/addon/helpers/block-params.js b/ui/packages/consul-ui/lib/block-slots/addon/helpers/block-params.js similarity index 100% rename from ui-v2/lib/block-slots/addon/helpers/block-params.js rename to ui/packages/consul-ui/lib/block-slots/addon/helpers/block-params.js diff --git a/ui-v2/lib/block-slots/addon/index.js b/ui/packages/consul-ui/lib/block-slots/addon/index.js similarity index 100% rename from ui-v2/lib/block-slots/addon/index.js rename to ui/packages/consul-ui/lib/block-slots/addon/index.js diff --git a/ui-v2/lib/block-slots/addon/mixins/slots.js b/ui/packages/consul-ui/lib/block-slots/addon/mixins/slots.js similarity index 100% rename from ui-v2/lib/block-slots/addon/mixins/slots.js rename to ui/packages/consul-ui/lib/block-slots/addon/mixins/slots.js diff --git a/ui-v2/lib/block-slots/addon/templates/components/block-slot.hbs b/ui/packages/consul-ui/lib/block-slots/addon/templates/components/block-slot.hbs similarity index 100% rename from ui-v2/lib/block-slots/addon/templates/components/block-slot.hbs rename to ui/packages/consul-ui/lib/block-slots/addon/templates/components/block-slot.hbs diff --git a/ui-v2/lib/block-slots/addon/templates/components/yield-slot.hbs b/ui/packages/consul-ui/lib/block-slots/addon/templates/components/yield-slot.hbs similarity index 100% rename from ui-v2/lib/block-slots/addon/templates/components/yield-slot.hbs rename to ui/packages/consul-ui/lib/block-slots/addon/templates/components/yield-slot.hbs diff --git a/ui-v2/lib/block-slots/app/components/block-slot.js b/ui/packages/consul-ui/lib/block-slots/app/components/block-slot.js similarity index 100% rename from ui-v2/lib/block-slots/app/components/block-slot.js rename to ui/packages/consul-ui/lib/block-slots/app/components/block-slot.js diff --git a/ui-v2/lib/block-slots/app/components/yield-slot.js b/ui/packages/consul-ui/lib/block-slots/app/components/yield-slot.js similarity index 100% rename from ui-v2/lib/block-slots/app/components/yield-slot.js rename to ui/packages/consul-ui/lib/block-slots/app/components/yield-slot.js diff --git a/ui-v2/lib/block-slots/app/helpers/block-params.js b/ui/packages/consul-ui/lib/block-slots/app/helpers/block-params.js similarity index 100% rename from ui-v2/lib/block-slots/app/helpers/block-params.js rename to ui/packages/consul-ui/lib/block-slots/app/helpers/block-params.js diff --git a/ui-v2/lib/block-slots/app/mixins/slots.js b/ui/packages/consul-ui/lib/block-slots/app/mixins/slots.js similarity index 100% rename from ui-v2/lib/block-slots/app/mixins/slots.js rename to ui/packages/consul-ui/lib/block-slots/app/mixins/slots.js diff --git a/ui-v2/lib/block-slots/index.js b/ui/packages/consul-ui/lib/block-slots/index.js similarity index 100% rename from ui-v2/lib/block-slots/index.js rename to ui/packages/consul-ui/lib/block-slots/index.js diff --git a/ui-v2/lib/block-slots/package.json b/ui/packages/consul-ui/lib/block-slots/package.json similarity index 100% rename from ui-v2/lib/block-slots/package.json rename to ui/packages/consul-ui/lib/block-slots/package.json diff --git a/ui-v2/lib/colocated-components/index.js b/ui/packages/consul-ui/lib/colocated-components/index.js similarity index 100% rename from ui-v2/lib/colocated-components/index.js rename to ui/packages/consul-ui/lib/colocated-components/index.js diff --git a/ui-v2/lib/colocated-components/package.json b/ui/packages/consul-ui/lib/colocated-components/package.json similarity index 100% rename from ui-v2/lib/colocated-components/package.json rename to ui/packages/consul-ui/lib/colocated-components/package.json diff --git a/ui-v2/lib/commands/bin/list.js b/ui/packages/consul-ui/lib/commands/bin/list.js similarity index 100% rename from ui-v2/lib/commands/bin/list.js rename to ui/packages/consul-ui/lib/commands/bin/list.js diff --git a/ui-v2/lib/commands/index.js b/ui/packages/consul-ui/lib/commands/index.js similarity index 100% rename from ui-v2/lib/commands/index.js rename to ui/packages/consul-ui/lib/commands/index.js diff --git a/ui-v2/lib/commands/lib/list.js b/ui/packages/consul-ui/lib/commands/lib/list.js similarity index 100% rename from ui-v2/lib/commands/lib/list.js rename to ui/packages/consul-ui/lib/commands/lib/list.js diff --git a/ui-v2/lib/commands/package.json b/ui/packages/consul-ui/lib/commands/package.json similarity index 100% rename from ui-v2/lib/commands/package.json rename to ui/packages/consul-ui/lib/commands/package.json diff --git a/ui-v2/lib/startup/index.js b/ui/packages/consul-ui/lib/startup/index.js similarity index 95% rename from ui-v2/lib/startup/index.js rename to ui/packages/consul-ui/lib/startup/index.js index dde531512..fefb117ae 100644 --- a/ui-v2/lib/startup/index.js +++ b/ui/packages/consul-ui/lib/startup/index.js @@ -24,7 +24,7 @@ module.exports = { // so we can set this path name centrally in config // TODO: undefined here is a possible faker salt that we should be able // to pass in from ember serve/config somehow - const dir = path.resolve('./node_modules/@hashicorp/consul-api-double'); + const dir = path.resolve('./mock-api'); const controller = apiDouble(undefined, dir, read, $, path.resolve); [ apiDoubleHeaders(), diff --git a/ui-v2/lib/startup/package.json b/ui/packages/consul-ui/lib/startup/package.json similarity index 100% rename from ui-v2/lib/startup/package.json rename to ui/packages/consul-ui/lib/startup/package.json diff --git a/ui-v2/lib/startup/templates/body.html.js b/ui/packages/consul-ui/lib/startup/templates/body.html.js similarity index 100% rename from ui-v2/lib/startup/templates/body.html.js rename to ui/packages/consul-ui/lib/startup/templates/body.html.js diff --git a/ui-v2/lib/startup/templates/head.html.js b/ui/packages/consul-ui/lib/startup/templates/head.html.js similarity index 71% rename from ui-v2/lib/startup/templates/head.html.js rename to ui/packages/consul-ui/lib/startup/templates/head.html.js index 5442607c2..35c217e1f 100644 --- a/ui-v2/lib/startup/templates/head.html.js +++ b/ui/packages/consul-ui/lib/startup/templates/head.html.js @@ -3,7 +3,15 @@ module.exports = ({ appName, environment, rootURL, config }) => ` diff --git a/ui/packages/consul-ui/mock-api/README.md b/ui/packages/consul-ui/mock-api/README.md new file mode 100644 index 000000000..686fb89df --- /dev/null +++ b/ui/packages/consul-ui/mock-api/README.md @@ -0,0 +1,7 @@ +# consul-api-double + +Super simple API 'double' for easily visualizing the Consul API via the filesystem. + +This can be served via either a simple javascript HTTP server, or entirely via frontend methods if your project/circumstances means you are unable to use or it's complicated to use a backend server for testing. + +See [@hashicorp/api-double](https://github.com/hashicorp/api-double/) for more details. diff --git a/ui/packages/consul-ui/mock-api/v1/.config b/ui/packages/consul-ui/mock-api/v1/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/.config b/ui/packages/consul-ui/mock-api/v1/acl/.config new file mode 100644 index 000000000..746e92f0e --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/.config @@ -0,0 +1,14 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + Status-Code: ${ + // when legacy is enabled tokens and policies return a 500 + (env('CONSUL_ACLS_LEGACY', false) && (location.pathname.get(2) === 'tokens' || location.pathname.get(2) === 'policies')) ? + 500 : + env('CONSUL_ACLS_ENABLE', false) ? (headers['x-consul-token'] !== '' ? 200 : 403) : 401 + } + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/_ b/ui/packages/consul-ui/mock-api/v1/acl/_ new file mode 100644 index 000000000..e383c8bad --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/_ @@ -0,0 +1,28 @@ +${ + location.pathname.get(2) === 'policy' && http.method === 'PUT' ? ` +{ + "ID": "${fake.random.uuid()}-1", + "Name": "${body.Name || ''}", + "Description": "${body.Description || ''}", + "Datacenters": ${fake.helpers.randomize(['null', '["dc-1", "dc-2"]'])}, + "Rules": "${body.Rules || ''}" +} +` : location.pathname.get(2) === 'token' && http.method === 'PUT' ? + ` +{ + "AccessorID":"${fake.random.uuid()}-1", + "SecretID":"${fake.random.uuid()}", + "Name": "${body.Name || ''}", + "Policies": ["dc2-service-register", "global-service-read"], + "CreateTime":"2017-08-23T22:47:14.695408057Z", + "CreateIndex":7, + "ModifyIndex":7 +} +` : location.pathname.get(2) === 'role' && http.method === 'PUT' ? + ` +{ + "ID": "${fake.random.uuid()}-1" +} + ` : `true` +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/destroy/_ b/ui/packages/consul-ui/mock-api/v1/acl/destroy/_ new file mode 100644 index 000000000..27ba77dda --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/destroy/_ @@ -0,0 +1 @@ +true diff --git a/ui/packages/consul-ui/mock-api/v1/acl/idp/.config b/ui/packages/consul-ui/mock-api/v1/acl/idp/.config new file mode 100644 index 000000000..485ab5df6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/idp/.config @@ -0,0 +1,13 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + Status-Code: ${ + env('CONSUL_ACLS_LEGACY', false) ? + 500 : + env('CONSUL_ACLS_ENABLE', false) ? (headers['x-consul-token'] !== '' ? 200 : 403) : 401 + } + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/idp/_ b/ui/packages/consul-ui/mock-api/v1/acl/idp/_ new file mode 100644 index 000000000..0418d191b --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/idp/_ @@ -0,0 +1,10 @@ +{ + "Name": "${location.pathname.get(3)}", + "Description": "${fake.lorem.sentence()}", + "Type": "${fake.helpers.randomize(['kubernetes'])}", ${''/* oidc */} + "KubernetesHost": "https://${fake.internet.ip()}:8443", + "KubernetesCACert": "-----BEGIN CERTIFICATE-----${fake.internet.password(1357)}-----END CERTIFICATE-----", + "KubernetesServiceAccountJWT": "eyJhbGciOiJ${fake.internet.password(25)}.eyJ${fake.internet.password(61)}.${fake.internet.password(32)}", + "CreateIndex": 10, + "ModifyIndex": 10 +} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/idps b/ui/packages/consul-ui/mock-api/v1/acl/idps new file mode 100644 index 000000000..e53030a5b --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/idps @@ -0,0 +1,30 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +[ + ${ + range( + env( + 'CONSUL_IDP_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_IDP_MAX', 10) + ) + parseInt(env('CONSUL_IDP_MIN', 1)) + ) + ) + ).map( + function(item, i) { + const type = fake.helpers.randomize(['kubernetes']); // oidc + return ` + { + "Name": "idp-${i}", + "Description": "${fake.lorem.sentence()}", + "Type": "${type}", + ${ type === 'kubernetes' ? `"KubernetesHost": "https://${fake.internet.ip()}:8443",` : ``} + "CreateIndex": 10, + "ModifyIndex": 10 + } + ` + } + ) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/info/_ b/ui/packages/consul-ui/mock-api/v1/acl/info/_ new file mode 100644 index 000000000..b12b40004 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/info/_ @@ -0,0 +1,19 @@ +[ + { + "ID":"${ location.pathname.get(3) }", + "Name":"${ location.pathname.get(3) } Token", + "Type":"${fake.helpers.randomize(['client', 'management'])}", + "Rules":${ + JSON.stringify( +`agent "${fake.hacker.noun()}" { + policy = "write" +} +node "node-0" { + policy = "read" +}` + ) + }, + "CreateIndex":4, + "ModifyIndex":4 + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/acl/list b/ui/packages/consul-ui/mock-api/v1/acl/list new file mode 100644 index 000000000..aa9f8c6a7 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/list @@ -0,0 +1,71 @@ +${ + env('CONSUL_ENABLE_ACLS', 1) ? ` +[ + ${ + (count = env( + 'CONSUL_ACL_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_ACL_MAX', 10) + ) + parseInt(env('CONSUL_ACL_MIN', 2)) + ) + )) >= 2 ? ` + { + "ID":"anonymous", + "Name":"Anonymous Token", + "Type":"client", + "Rules":"", + "CreateIndex":4, + "ModifyIndex":4 + }, + { + "ID":"secret", + "Name":"Master Token", + "Type":"management", + "Rules":"", + "CreateIndex":5, + "ModifyIndex":5 + }${count > 2 ? "," : ""} + ${ + range( + Math.max(0, count - 2) + ).map( + function(item, i) { + return `{ + "ID":"${fake.lorem.word()}-${i}", + "Name":"${fake.lorem.word()}-${i}", + "Type":"client", + "Rules":"", + "CreateIndex":5, + "ModifyIndex":5 + }`; + } + ) + }` : ` + ${ + range( + env( + 'CONSUL_ACL_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_ACL_MAX', 10) + ) + parseInt(env('CONSUL_ACL_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return `{ + "ID":"${fake.lorem.word()}-${i}", + "Name":"${fake.lorem.word()}-${i}", + "Type":"client", + "Rules":"", + "CreateIndex":5, + "ModifyIndex":5 + }`; + } + ) + } + `} +] +` : "ACL support disabled" +} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/oidc/auth-url b/ui/packages/consul-ui/mock-api/v1/acl/oidc/auth-url new file mode 100644 index 000000000..27bb33a91 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/oidc/auth-url @@ -0,0 +1,3 @@ +{ + "AuthURL": "${env('CONSUL_OIDC_PROVIDER_URL')}&redirect_uri=${encodeURIComponent(http.body.RedirectURI)}&response_type=code&scope=openid" +} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/oidc/callback b/ui/packages/consul-ui/mock-api/v1/acl/oidc/callback new file mode 100644 index 000000000..7ccf5fff7 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/oidc/callback @@ -0,0 +1,40 @@ +{ + "AccessorID": "${fake.random.uuid()}", + "SecretID": "${fake.random.uuid()}", + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + "Local": false, + "Description": "${fake.lorem.sentence()}", + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 3)).map( + function(item, i) { + return ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${location.search.policy || fake.hacker.noun()}" + } + `; + } + ) + } + ], + "Roles": [ + ${ + range(env('CONSUL_ROLE_COUNT', 10)).map( + function(item, j) { + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${location.search.role || fake.hacker.noun()}" + } + `; + } + ) + } + ], + "CreateTime": "2019-10-11T11:24:06.1385039Z" +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/policies b/ui/packages/consul-ui/mock-api/v1/acl/policies new file mode 100644 index 000000000..44bf495cb --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/policies @@ -0,0 +1,46 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +[ + ${ + range( + env( + 'CONSUL_POLICY_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_POLICY_MAX', 10) + ) + parseInt(env('CONSUL_POLICY_MIN', 1)) + ) + ) + ).map( + function(item, i) { + if(i === 1) { + return ` + { + "ID": "00000000-0000-0000-0000-000000000001", + "Name": "global-management", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Description": "Built-In Management Policy", + "CreateIndex": 10, + "ModifyIndex": 10 + } + ` + } + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}-${i}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", + ` : ``} + "Description": "${fake.lorem.sentence()}", + "Datacenters": ${fake.helpers.randomize(['["aq west-5", "ch east-4"]'])}, + "CreateIndex": 10, + "ModifyIndex": 10 + } + ` + } + ) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/policy/.config b/ui/packages/consul-ui/mock-api/v1/acl/policy/.config new file mode 100644 index 000000000..485ab5df6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/policy/.config @@ -0,0 +1,13 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + Status-Code: ${ + env('CONSUL_ACLS_LEGACY', false) ? + 500 : + env('CONSUL_ACLS_ENABLE', false) ? (headers['x-consul-token'] !== '' ? 200 : 403) : 401 + } + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/policy/_ b/ui/packages/consul-ui/mock-api/v1/acl/policy/_ new file mode 100644 index 000000000..32fa47ea5 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/policy/_ @@ -0,0 +1,17 @@ +{ + "ID": "${location.pathname.get(3)}", + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + "Description": "${location.pathname.get(3) === '00000000-0000-0000-0000-000000000001' ? 'Built-in Management Policy' : fake.lorem.sentence()}", +${ location.pathname.get(3) !== '00000000-0000-0000-0000-000000000001' ? ` + "Datacenters": ${fake.helpers.randomize(['["aq west-5", "ch east-4"]'])}, + "Rules": ${JSON.stringify( +`key "foo" { + policy = "write" +}`)}, +` : "" } + "Name": "${location.pathname.get(3) === '00000000-0000-0000-0000-000000000001' ? 'global-management' : fake.hacker.noun() + '-policy'}" +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/policy/translate b/ui/packages/consul-ui/mock-api/v1/acl/policy/translate new file mode 100644 index 000000000..bd5b4aed4 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/policy/translate @@ -0,0 +1,8 @@ +key_prefix "foo" { + permission = "read" +} + +operator { + permission = "read" +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/role/_ b/ui/packages/consul-ui/mock-api/v1/acl/role/_ new file mode 100644 index 000000000..f891e5047 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/role/_ @@ -0,0 +1,64 @@ +{ + "ID": "${location.pathname.get(3)}", + "Name": "${fake.hacker.noun() + '-role'}", + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + "Description": "${fake.lorem.sentence()}", + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 3)).map( + function(item, i) { + return ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "ServiceIdentities": [ + ${ + range(env('CONSUL_SERVICE_IDENTITY_COUNT', env('CONSUL_IDENTITY_COUNT', 1))).map( + function(item, i) { + return ` + { + "ServiceName": "${fake.hacker.noun()}"${ fake.random.boolean() ? `, + "Datacenters": [ + ${ + range(env('CONSUL_DATACENTER_COUNT', fake.random.number({min: 1, max: 10}))).map( + function(item, i) { + return `"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}"`; + } + ) + } + ] + ` : ``} + } + `; + } + ) + } + ], + "NodeIdentities": [ + ${ + range(env('CONSUL_NODE_IDENTITY_COUNT', 1)).map( + function(item, i) { + return ` + { + "NodeName": "${fake.hacker.noun()}", + "Datacenter":"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}" + } + `; + } + ) + } + ], + "Hash": "${fake.internet.password(64)}=", + "CreateIndex": 57, + "ModifyIndex": 57 +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/.config b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/.config new file mode 100644 index 000000000..485ab5df6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/.config @@ -0,0 +1,13 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + Status-Code: ${ + env('CONSUL_ACLS_LEGACY', false) ? + 500 : + env('CONSUL_ACLS_ENABLE', false) ? (headers['x-consul-token'] !== '' ? 200 : 403) : 401 + } + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/_ b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/_ new file mode 100644 index 000000000..119c98d77 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrule/_ @@ -0,0 +1,30 @@ +{ + "ID": "${location.pathname.get(3)}", + "IDPName": "${fake.hacker.noun()}-idp", + "RoleName": "${ fake.random.boolean() ? `${fake.hacker.noun()}-role` : `${fake.hacker.noun()}-{{ serviceaccount.name }}`}", + "Description": "${fake.lorem.sentence()}", + "Matches": [ + ${ + range(env('CONSUL_MATCH_COUNT', 3)).map( + function(item, i) { + return ` + { + "Selectors": [ + ${ + range(env('CONSUL_SELECTOR_COUNT', fake.random.number({min: 1, max: 5}))).map( + function(item, i) { + return `"serviceaccount.name=${fake.hacker.noun()}"`; + } + ) + } + ] + } + `; + } + ) + } + ], + "MustExist": ${fake.helpers.randomize(['true', 'false'])}, + "CreateIndex": 10, + "ModifyIndex": 10 +} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrules b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrules new file mode 100644 index 000000000..8cf7c29b6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/rolebindingrules @@ -0,0 +1,49 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +[ + ${ + range( + env( + 'CONSUL_BINDING_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_BINDING_MAX', 10) + ) + parseInt(env('CONSUL_BINDING_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return ` + { + "Description": "${fake.lorem.sentence()}", + "IDPName": "${fake.hacker.noun()}-idp", + "Matches": [ + ${ + range(env('CONSUL_MATCH_COUNT', 3)).map( + function(item, i) { + return ` + { + "Selectors": [ + ${ + range(env('CONSUL_SELECTOR_COUNT', fake.random.number({min: 1, max: 5}))).map( + function(item, i) { + return `"serviceaccount.name=${fake.hacker.noun()}"`; + } + ) + } + ] + } + `; + } + ) + } + ], + "RoleName": "${ fake.random.boolean() ? `role-{$i}` : `{{ serviceaccount.name }}`}", + "CreateIndex": 10, + "ModifyIndex": 10 + } + ` + } + ) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/roles b/ui/packages/consul-ui/mock-api/v1/acl/roles new file mode 100644 index 000000000..0fc8fe5e1 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/roles @@ -0,0 +1,90 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +[ + ${ + range( + env( + 'CONSUL_ROLE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_ROLE_MAX', 10) + ) + parseInt(env('CONSUL_ROLE_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}-${i}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Description": "${fake.lorem.sentence()}", + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 10)).map( + function(item, j) { + if(i == 1 && j == 0) { + return ` + { + "ID": "00000000-0000-0000-0000-000000000001", + "Name": "global-management" + } + `; + } + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "ServiceIdentities": [ + ${ + range(env('CONSUL_SERVICE_IDENTITY_COUNT', env('CONSUL_IDENTITY_COUNT', 1))).map( + function(item, i) { + return ` + { + "ServiceName": "${fake.hacker.noun()}"${ fake.random.boolean() ? `, + "Datacenters": [ + ${ + range(env('CONSUL_DATACENTER_COUNT', fake.random.number({min: 1, max: 10}))).map( + function(item, i) { + return `"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}"`; + } + ) + } + ] + ` : ``} + } + `; + } + ) + } + ], + "NodeIdentities": [ + ${ + range(env('CONSUL_NODE_IDENTITY_COUNT', 1)).map( + function(item, i) { + return ` + { + "NodeName": "${fake.hacker.noun()}", + "Datacenter":"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}" + } + `; + } + ) + } + ], + "CreateIndex": ${fake.random.number()}, + "ModifyIndex": 10 + } + ` + } + ) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/token/.config b/ui/packages/consul-ui/mock-api/v1/acl/token/.config new file mode 100644 index 000000000..485ab5df6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/token/.config @@ -0,0 +1,13 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + Status-Code: ${ + env('CONSUL_ACLS_LEGACY', false) ? + 500 : + env('CONSUL_ACLS_ENABLE', false) ? (headers['x-consul-token'] !== '' ? 200 : 403) : 401 + } + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/token/_ b/ui/packages/consul-ui/mock-api/v1/acl/token/_ new file mode 100644 index 000000000..dc01a3c45 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/token/_ @@ -0,0 +1,98 @@ +{ + "AccessorID": "${location.pathname.get(3)}", + "SecretID":"${fake.random.uuid()}", + "IDPName": "${fake.hacker.noun()}", + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + ${ location.pathname.get(3) === '00000000-0000-0000-0000-000000000002' ? + ` + "Name": "${fake.hacker.noun()}", + "Type":"${fake.helpers.randomize(['client', 'management'])}", + "Rules": ${ + JSON.stringify( +`agent "${fake.hacker.noun()}" { + policy = "write" +} +node "node-0" { + policy = "read" +}` + ) + }, + ` + : + ` + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 3)).map( + function(item, i) { + return ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "Roles": [ + ${ + range(env('CONSUL_ROLE_COUNT', 10)).map( + function(item, j) { + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "ServiceIdentities": [ + ${ + range(env('CONSUL_SERVICE_IDENTITY_COUNT', env('CONSUL_IDENTITY_COUNT', 1))).map( + function(item, i) { + return ` + { + "ServiceName": "${fake.hacker.noun()}"${ fake.random.boolean() ? `, + "Datacenters": [ + ${ + range(env('CONSUL_DATACENTER_COUNT', fake.random.number({min: 1, max: 10}))).map( + function(item, i) { + return `"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}"`; + } + ) + } + ] + ` : ``} + } + `; + } + ) + } + ], + "NodeIdentities": [ + ${ + range(env('CONSUL_NODE_IDENTITY_COUNT', 1)).map( + function(item, i) { + return ` + { + "NodeName": "${fake.hacker.noun()}", + "Datacenter":"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}" + } + `; + } + ) + } + ], + ${ fake.random.boolean() ? '"Local": true,' : "" } + ` + } + "CreateTime":"2017-08-23T22:47:14.695408057Z", + "CreateIndex":7, + "ModifyIndex":7 +} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/token/self b/ui/packages/consul-ui/mock-api/v1/acl/token/self new file mode 100644 index 000000000..5b41756a6 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/token/self @@ -0,0 +1,42 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +{ + "AccessorID": "${fake.random.uuid()}", + "SecretID": ${typeof headers['X-Consul-Token'] !== 'undefined' ? '"' + headers['X-Consul-Token'] + '"' : null}, + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + "Local": false, + "Description": "${fake.lorem.sentence()}", + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 3)).map( + function(item, i) { + return ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${location.search.policy || fake.hacker.noun()}" + } + `; + } + ) + } + ], + "Roles": [ + ${ + range(env('CONSUL_ROLE_COUNT', 10)).map( + function(item, j) { + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${location.search.role || fake.hacker.noun()}" + } + `; + } + ) + } + ], + "CreateTime": "2019-10-11T11:24:06.1385039Z" +} +`} + diff --git a/ui/packages/consul-ui/mock-api/v1/acl/tokens b/ui/packages/consul-ui/mock-api/v1/acl/tokens new file mode 100644 index 000000000..a76d58c49 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/tokens @@ -0,0 +1,108 @@ +${ env('CONSUL_ACLS_LEGACY', false) ? `rpc error making call: rpc: can't find method ACL.Method` : ` +[ + ${ + range( + env( + 'CONSUL_TOKEN_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_TOKEN_MAX', 10) + ) + parseInt(env('CONSUL_TOKEN_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return ` + { + "AccessorID": "${i === 1 ? '00000000-0000-0000-0000-000000000002' : fake.random.uuid()}", + "Name": "token-${i}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "IDPName": "${fake.hacker.noun()}", + "Policies": [ + ${ + range(env('CONSUL_POLICY_COUNT', 10)).map( + function(item, j) { + if(i == 1 && j == 0) { + return ` + { + "ID": "00000000-0000-0000-0000-000000000001", + "Name": "global-management" + } + `; + } + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "Roles": [ + ${ + range(env('CONSUL_ROLE_COUNT', 10)).map( + function(item, j) { + return ` + { + "ID": "${fake.random.uuid()}", + "Name": "${fake.hacker.noun()}" + } + `; + } + ) + } + ], + "ServiceIdentities": [ + ${ + range(env('CONSUL_SERVICE_IDENTITY_COUNT', env('CONSUL_IDENTITY_COUNT', 1))).map( + function(item, i) { + return ` + { + "ServiceName": "${fake.hacker.noun()}"${ fake.random.boolean() ? `, + "Datacenters": [ + ${ + range(env('CONSUL_DATACENTER_COUNT', fake.random.number({min: 1, max: 10}))).map( + function(item, i) { + return `"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}"`; + } + ) + } + ] + ` : ``} + } + `; + } + ) + } + ], + "NodeIdentities": [ + ${ + range(env('CONSUL_NODE_IDENTITY_COUNT', 1)).map( + function(item, i) { + return ` + { + "NodeName": "${fake.hacker.noun()}", + "Datacenter":"${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${i}" + } + `; + } + ) + } + ], + ${ fake.random.boolean() && i !== 1 ? '"Legacy": true,' : "" } + ${ fake.random.boolean() ? '"Local": true,' : "" } + "CreateTime": "${fake.date.past(10).toISOString()}", + "Hash": "${fake.internet.password(64)}=", + "CreateIndex": 10, + "ModifyIndex": 10 + } + ` + } + ) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/acl/update b/ui/packages/consul-ui/mock-api/v1/acl/update new file mode 100644 index 000000000..0200653ac --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/acl/update @@ -0,0 +1,3 @@ +{ + "ID": "${body.ID}" +} diff --git a/ui/packages/consul-ui/mock-api/v1/agent/connect/authorize b/ui/packages/consul-ui/mock-api/v1/agent/connect/authorize new file mode 100644 index 000000000..e6a4b7fd2 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/agent/connect/authorize @@ -0,0 +1,13 @@ +${ + true ? ` +{ + "Authorized": true, + "Reason": "matches intention XXX" +} + ` : ` +{ + "Authorized": false, + "Reason": "denied by intention XXX" +} + ` +} diff --git a/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/leaf/_ b/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/leaf/_ new file mode 100644 index 000000000..5ddcfd941 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/leaf/_ @@ -0,0 +1,11 @@ +{ + "SerialNumber": "08", + "CertPEM": "-----BEGIN CERTIFICATE-----\nMIIChjCCAi2gAwIBAgIBCDAKBggqhkjOPQQDAjAWMRQwEgYDVQQDEwtDb25zdWwg\nQ0EgNzAeFw0xODA1MjExNjMzMjhaFw0xODA1MjQxNjMzMjhaMA4xDDAKBgNVBAMT\nA3dlYjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJdLqRKd1SRycFOFceMHOBZK\nQW8HHO8jZ5C8dRswD+IwTd/otJPiaPrVzGOAi4MsaEUgDMemvN1jiywHt3II08mj\nggFyMIIBbjAOBgNVHQ8BAf8EBAMCA7gwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG\nAQUFBwMBMAwGA1UdEwEB/wQCMAAwaAYDVR0OBGEEXzFmOjkxOmNhOjQxOjhmOmFj\nOjY3OmJmOjU5OmMyOmZhOjRlOjc1OjVjOmQ4OmYwOjU1OmRlOmJlOjc1OmI4OjMz\nOjMxOmQ1OjI0OmIwOjA0OmIzOmU4Ojk3OjViOjdlMGoGA1UdIwRjMGGAXzFmOjkx\nOmNhOjQxOjhmOmFjOjY3OmJmOjU5OmMyOmZhOjRlOjc1OjVjOmQ4OmYwOjU1OmRl\nOmJlOjc1OmI4OjMzOjMxOmQ1OjI0OmIwOjA0OmIzOmU4Ojk3OjViOjdlMFkGA1Ud\nEQRSMFCGTnNwaWZmZTovLzExMTExMTExLTIyMjItMzMzMy00NDQ0LTU1NTU1NTU1\nNTU1NS5jb25zdWwvbnMvZGVmYXVsdC9kYy9kYzEvc3ZjL3dlYjAKBggqhkjOPQQD\nAgNHADBEAiBS8kH3UERhBPHM/CQV/jXKLr0kReLqCdq1jZxc8Aq7hQIgFIus/ZX0\nOM/X3Yc1xb/qJiiEVzXcaz3oVFULOzrNAwk=\n-----END CERTIFICATE-----\n", + "PrivateKeyPEM": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIAOGglbwY8HdD3LFX6Bc94co2pzeFTto8ebWoML5E+QfoAoGCCqGSM49\nAwEHoUQDQgAEl0upEp3VJHJwU4Vx4wc4FkpBbwcc7yNnkLx1GzAP4jBN3+i0k+Jo\n+tXMY4CLgyxoRSAMx6a83WOLLAe3cgjTyQ==\n-----END EC PRIVATE KEY-----\n", + "Service": "web", + "ServiceURI": "spiffe://11111111-2222-3333-4444-555555555555.consul/ns/default/dc/dc1/svc/web", + "ValidAfter": "2018-05-21T16:33:28Z", + "ValidBefore": "2018-05-24T16:33:28Z", + "CreateIndex": 5, + "ModifyIndex": 5 +} diff --git a/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/roots b/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/roots new file mode 100644 index 000000000..2543cf543 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/agent/connect/ca/roots @@ -0,0 +1,18 @@ +{ + "ActiveRootID": "15:bf:3a:7d:ff:ea:c1:8c:46:67:6c:db:b8:81:18:36:ad:e5:d0:c7", + "Roots": [ + { + "ID": "15:bf:3a:7d:ff:ea:c1:8c:46:67:6c:db:b8:81:18:36:ad:e5:d0:c7", + "Name": "Consul CA Root Cert", + "SerialNumber": 7, + "SigningKeyID": "31:66:3a:39:31:3a:63:61:3a:34:31:3a:38:66:3a:61:63:3a:36:37:3a:62:66:3a:35:39:3a:63:32:3a:66:61:3a:34:65:3a:37:35:3a:35:63:3a:64:38:3a:66:30:3a:35:35:3a:64:65:3a:62:65:3a:37:35:3a:62:38:3a:33:33:3a:33:31:3a:64:35:3a:32:34:3a:62:30:3a:30:34:3a:62:33:3a:65:38:3a:39:37:3a:35:62:3a:37:65", + "NotBefore": "2018-05-21T16:33:28Z", + "NotAfter": "2028-05-18T16:33:28Z", + "RootCert": "-----BEGIN CERTIFICATE-----\nMIICmDCCAj6gAwIBAgIBBzAKBggqhkjOPQQDAjAWMRQwEgYDVQQDEwtDb25zdWwg\nQ0EgNzAeFw0xODA1MjExNjMzMjhaFw0yODA1MTgxNjMzMjhaMBYxFDASBgNVBAMT\nC0NvbnN1bCBDQSA3MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAER0qlxjnRcMEr\niSGlH7G7dYU7lzBEmLUSMZkyBbClmyV8+e8WANemjn+PLnCr40If9cmpr7RnC9Qk\nGTaLnLiF16OCAXswggF3MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/\nMGgGA1UdDgRhBF8xZjo5MTpjYTo0MTo4ZjphYzo2NzpiZjo1OTpjMjpmYTo0ZTo3\nNTo1YzpkODpmMDo1NTpkZTpiZTo3NTpiODozMzozMTpkNToyNDpiMDowNDpiMzpl\nODo5Nzo1Yjo3ZTBqBgNVHSMEYzBhgF8xZjo5MTpjYTo0MTo4ZjphYzo2NzpiZjo1\nOTpjMjpmYTo0ZTo3NTo1YzpkODpmMDo1NTpkZTpiZTo3NTpiODozMzozMTpkNToy\nNDpiMDowNDpiMzplODo5Nzo1Yjo3ZTA/BgNVHREEODA2hjRzcGlmZmU6Ly8xMjRk\nZjVhMC05ODIwLTc2YzMtOWFhOS02ZjYyMTY0YmExYzIuY29uc3VsMD0GA1UdHgEB\n/wQzMDGgLzAtgisxMjRkZjVhMC05ODIwLTc2YzMtOWFhOS02ZjYyMTY0YmExYzIu\nY29uc3VsMAoGCCqGSM49BAMCA0gAMEUCIQDzkkI7R+0U12a+zq2EQhP/n2mHmta+\nfs2hBxWIELGwTAIgLdO7RRw+z9nnxCIA6kNl//mIQb+PGItespiHZKAz74Q=\n-----END CERTIFICATE-----\n", + "IntermediateCerts": null, + "Active": true, + "CreateIndex": 8, + "ModifyIndex": 8 + } + ] +} diff --git a/ui/packages/consul-ui/mock-api/v1/agent/connect/proxy/_ b/ui/packages/consul-ui/mock-api/v1/agent/connect/proxy/_ new file mode 100644 index 000000000..195f4a018 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/agent/connect/proxy/_ @@ -0,0 +1,17 @@ +{ + "ProxyServiceID": "web-proxy", + "TargetServiceID": "web", + "TargetServiceName": "web", + "ContentHash": "cffa5f4635b134b9", + "ExecMode": "daemon", + "Command": [ + "/bin/consul", + "connect", + "proxy" + ], + "Config": { + "bind_address": "127.0.0.1", + "bind_port": 20199, + "local_service_address": "127.0.0.1:8181" + } +} diff --git a/ui-v2/tests/helpers/.gitkeep b/ui/packages/consul-ui/mock-api/v1/agent/service/register similarity index 100% rename from ui-v2/tests/helpers/.gitkeep rename to ui/packages/consul-ui/mock-api/v1/agent/service/register diff --git a/ui/packages/consul-ui/mock-api/v1/agent/services b/ui/packages/consul-ui/mock-api/v1/agent/services new file mode 100644 index 000000000..6397b362e --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/agent/services @@ -0,0 +1,40 @@ +{ + "web": { + "Kind": "", + "ID": "web", + "Service": "web", + "Tags": [], + "Meta": {}, + "Port": 8181, + "Address": "", + "EnableTagOverride": false, + "CreateIndex": 0, + "ModifyIndex": 0, + "ProxyDestination": "", + "Connect": { + "Proxy": { + "ExecMode": "daemon", + "Command": [ + "/bin/consul", + "connect", + "proxy" + ], + "Config": null + } + } + }, + "web-proxy": { + "Kind": "connect-proxy", + "ID": "web-proxy", + "Service": "web-proxy", + "Tags": [], + "Meta": {}, + "Port": 20199, + "Address": "", + "EnableTagOverride": false, + "CreateIndex": 0, + "ModifyIndex": 0, + "ProxyDestination": "web", + "Connect": null + } +} diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/connect/_ b/ui/packages/consul-ui/mock-api/v1/catalog/connect/_ new file mode 100644 index 000000000..e15b69694 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/catalog/connect/_ @@ -0,0 +1,72 @@ +${ location.pathname.slice(4).indexOf('-proxy') !== -1 ? `[]` :` +[ + ${ + range( + env( + 'CONSUL_PROXY_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_PROXY_MAX', 10) + ) + parseInt(env('CONSUL_PROXY_MIN', 1)) + ) + ) + ).map((item, i) => ` + { + "ID": "${fake.random.uuid()}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Node": "node-${i}", + "Address": "${fake.internet.ip()}", + "Datacenter": "${location.search.dc}", + "TaggedAddresses": { + "lan": "${fake.internet.ip()}", + "wan": "${fake.internet.ip()}" + }, + "NodeMeta": { + "consul-network-segment": "" + }, + "ServiceConnect": {}, + "ServiceKind": "connect-proxy", + "ServiceID": "${location.pathname.slice(4)}-with-id-proxy", + "ServiceName": "${location.pathname.slice(4)}-proxy", + "ServiceTags": ["Tag", "Another Tag"], + "ServiceAddress": "${fake.internet.ip()}", + "ServiceMeta": {}, + "ServicePort": ${fake.random.number({min: 21000, max: 21255})}, + "ServiceEnableTagOverride": false, + "ServiceProxy": { + "Expose": { + "Checks": true, + "Paths": [ +${range(env('CONSUL_EXPOSED_COUNT', 3)).map((i) => ` + { + "Path": "/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}", + "Protocol": "${fake.helpers.randomize(['http', 'http2', 'grpc'])}", + "LocalPathPort": ${fake.random.number({min: 0, max: 65535})}, + "ListenerPort": ${fake.random.number({min: 0, max: 65535})} + } +`)} + ] + }, + "DestinationServiceName": "${location.pathname.slice(4)}" + ${ location.pathname.slice(4) === "service-0" ? ` + , + "DestinationServiceID": "${location.pathname.slice(4)}-with-id", + "LocalServiceAddress": "${fake.internet.ip()}", + "LocalServicePort": ${fake.random.number({min: 0, max: 65535})} + ` + : ``} + }, + "ServiceProxyDestination": "${location.pathname.slice(4)}", + "ServiceWeights": { + "Passing": 1, + "Warning": 1 + }, + "CreateIndex": 11, + "ModifyIndex": 11 + } + `) + } +] +`} diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/datacenters b/ui/packages/consul-ui/mock-api/v1/catalog/datacenters new file mode 100644 index 000000000..1b091390c --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/catalog/datacenters @@ -0,0 +1,13 @@ +[ + ${ + range(env('CONSUL_DATACENTER_COUNT', 10)).map((item, i) => { + if(i === 0) { + return `"dc1"`; + } + return ` + "${fake.address.countryCode().toLowerCase()}_${ i % 2 ? "west" : "east"}-${i}" +`; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/deregister b/ui/packages/consul-ui/mock-api/v1/catalog/deregister new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/node/_ b/ui/packages/consul-ui/mock-api/v1/catalog/node/_ new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/register b/ui/packages/consul-ui/mock-api/v1/catalog/register new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/mock-api/v1/catalog/service/_ b/ui/packages/consul-ui/mock-api/v1/catalog/service/_ new file mode 100644 index 000000000..e69de29bb diff --git a/ui/packages/consul-ui/mock-api/v1/connect/.config b/ui/packages/consul-ui/mock-api/v1/connect/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/_ b/ui/packages/consul-ui/mock-api/v1/connect/_ new file mode 100644 index 000000000..389033975 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/_ @@ -0,0 +1,115 @@ +${ + location.pathname.get(2) === 'intentions' && http.method === 'GET' ? ` +[ + ${ + range( + env( + 'CONSUL_INTENTION_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_INTENTION_MAX', 10) + ) + parseInt(env('CONSUL_INTENTION_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + const legacy = fake.random.boolean(); + return ` + { +${legacy ? ` + "ID": "${fake.random.uuid()}", + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", +`:``} + "Description": "${fake.lorem.sentence()}", + "SourceNS": "default", + "SourceName": "${fake.hacker.noun()}-${i}", + "DestinationNS": "default", + "DestinationName": "${fake.hacker.noun()}", + "SourceType": "${fake.helpers.randomize(['consul', 'externaluri'])}", +${!legacy ? ` + "Permissions": [ +${range( + env( + 'CONSUL_INTENTION_PERMISSION_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_INTENTION_PERMISSION_MAX', 10) + ) + parseInt(env('CONSUL_INTENTION_PERMISSION_MIN', 1)) + ) + ) +).map((item, i) => { + const headerCount = env( + 'CONSUL_HEADER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_HEADER_MAX', 3) + ) + parseInt(env('CONSUL_HEADER_MIN', 1)) + ) + ); + const path = fake.helpers.randomize(['PathExact', 'PathPrefix', 'PathRegex', '']); + return ` + { + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", + "HTTP": { + +${path !== '' ? ` + "${path}": "${path === 'PathRegex' ? `${fake.helpers.randomize(['^[0-9]{1,3}?$', '(\w+)\s(\w+)'])}` : `/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}`}", +`:``} + +${ fake.random.boolean() ? ` + "Methods": [ + ${ + fake.helpers.shuffle( + ["GET", "POST", "PUT", "DELETE", "OPTIONS", "HEAD", "PATCH"] + ).filter(item => fake.random.boolean()).map(item => ` + "${item}" + `) + } + ], +` : ``} + "Header": [ +${range(headerCount).map(item => ` + { + "Name": "X-${fake.hacker.noun().split(' ').map(item => `${item.substr(0, 1).toUpperCase()}${item.substr(1)}`).join('-')}", +${fake.random.boolean() ? ` + "Invert": true, +` : ``} +${fake.helpers.randomize([ + '"Present": true', + '"Exact": "abc"', + '"Prefix": "abc"', + '"Suffix": "xyz"', + '"Regex": "[abc]"' +])} + } +`)} + ] + } + } + +`})} + ], +`:``} + "Precedence": ${i + 1}, +${ fake.random.number({min: 1, max: 10}) > 2 ? ` + "Meta": { + "external-source": "${fake.helpers.randomize(['kubernetes'])}" + }, +` : `` } + "CreatedAt": "2018-05-21T16:41:27.977155457Z", + "UpdatedAt": "2018-05-21T16:41:27.977157724Z", + "CreateIndex": 11, + "ModifyIndex": 11 + } + `; + } + ) + } +] + ` : location.pathname.get(2) === 'intentions' && http.method === 'POST' ? ` +{ + "ID": "${ location.pathname.get(3) }" +} + ` : `` +} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/ca/configuration b/ui/packages/consul-ui/mock-api/v1/connect/ca/configuration new file mode 100644 index 000000000..352457d23 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/ca/configuration @@ -0,0 +1,10 @@ +{ + "Provider": "consul", + "Config": { + "PrivateKey": null, + "RootCert": null, + "RotationPeriod": 7776000000000000 + }, + "CreateIndex": 5, + "ModifyIndex": 5 +} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/ca/roots b/ui/packages/consul-ui/mock-api/v1/connect/ca/roots new file mode 100644 index 000000000..2543cf543 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/ca/roots @@ -0,0 +1,18 @@ +{ + "ActiveRootID": "15:bf:3a:7d:ff:ea:c1:8c:46:67:6c:db:b8:81:18:36:ad:e5:d0:c7", + "Roots": [ + { + "ID": "15:bf:3a:7d:ff:ea:c1:8c:46:67:6c:db:b8:81:18:36:ad:e5:d0:c7", + "Name": "Consul CA Root Cert", + "SerialNumber": 7, + "SigningKeyID": "31:66:3a:39:31:3a:63:61:3a:34:31:3a:38:66:3a:61:63:3a:36:37:3a:62:66:3a:35:39:3a:63:32:3a:66:61:3a:34:65:3a:37:35:3a:35:63:3a:64:38:3a:66:30:3a:35:35:3a:64:65:3a:62:65:3a:37:35:3a:62:38:3a:33:33:3a:33:31:3a:64:35:3a:32:34:3a:62:30:3a:30:34:3a:62:33:3a:65:38:3a:39:37:3a:35:62:3a:37:65", + "NotBefore": "2018-05-21T16:33:28Z", + "NotAfter": "2028-05-18T16:33:28Z", + "RootCert": "-----BEGIN CERTIFICATE-----\nMIICmDCCAj6gAwIBAgIBBzAKBggqhkjOPQQDAjAWMRQwEgYDVQQDEwtDb25zdWwg\nQ0EgNzAeFw0xODA1MjExNjMzMjhaFw0yODA1MTgxNjMzMjhaMBYxFDASBgNVBAMT\nC0NvbnN1bCBDQSA3MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAER0qlxjnRcMEr\niSGlH7G7dYU7lzBEmLUSMZkyBbClmyV8+e8WANemjn+PLnCr40If9cmpr7RnC9Qk\nGTaLnLiF16OCAXswggF3MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/\nMGgGA1UdDgRhBF8xZjo5MTpjYTo0MTo4ZjphYzo2NzpiZjo1OTpjMjpmYTo0ZTo3\nNTo1YzpkODpmMDo1NTpkZTpiZTo3NTpiODozMzozMTpkNToyNDpiMDowNDpiMzpl\nODo5Nzo1Yjo3ZTBqBgNVHSMEYzBhgF8xZjo5MTpjYTo0MTo4ZjphYzo2NzpiZjo1\nOTpjMjpmYTo0ZTo3NTo1YzpkODpmMDo1NTpkZTpiZTo3NTpiODozMzozMTpkNToy\nNDpiMDowNDpiMzplODo5Nzo1Yjo3ZTA/BgNVHREEODA2hjRzcGlmZmU6Ly8xMjRk\nZjVhMC05ODIwLTc2YzMtOWFhOS02ZjYyMTY0YmExYzIuY29uc3VsMD0GA1UdHgEB\n/wQzMDGgLzAtgisxMjRkZjVhMC05ODIwLTc2YzMtOWFhOS02ZjYyMTY0YmExYzIu\nY29uc3VsMAoGCCqGSM49BAMCA0gAMEUCIQDzkkI7R+0U12a+zq2EQhP/n2mHmta+\nfs2hBxWIELGwTAIgLdO7RRw+z9nnxCIA6kNl//mIQb+PGItespiHZKAz74Q=\n-----END CERTIFICATE-----\n", + "IntermediateCerts": null, + "Active": true, + "CreateIndex": 8, + "ModifyIndex": 8 + } + ] +} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/intentions/_ b/ui/packages/consul-ui/mock-api/v1/connect/intentions/_ new file mode 100644 index 000000000..f3e9a8ca5 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/intentions/_ @@ -0,0 +1,91 @@ +${range(1).map(item => { + const ID = location.pathname.get(3); + const legacy = ID.indexOf('%3A') === -1; +return ` + { + "ID": "${legacy ? ID : ''}" +${ http.method !== "PUT" ? ` + ,"Description": "${fake.lorem.sentence()}", + "SourceNS": "default", + "SourceName": "${fake.hacker.noun()}", + "DestinationNS": "default", + "DestinationName": "${fake.hacker.noun()}", + "SourceType": "${fake.helpers.randomize(['consul', 'externaluri'])}", +${legacy ? ` + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", +`:``} +${!legacy ? ` + "Permissions": [ +${range( + env( + 'CONSUL_INTENTION_PERMISSION_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_INTENTION_PERMISSION_MAX', 10) + ) + parseInt(env('CONSUL_INTENTION_PERMISSION_MIN', 1)) + ) + ) +).map((item, i) => { + const headerCount = env( + 'CONSUL_HEADER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_HEADER_MAX', 3) + ) + parseInt(env('CONSUL_HEADER_MIN', 1)) + ) + ); + const path = fake.helpers.randomize(['PathExact', 'PathPrefix', 'PathRegex', '']); + return ` + { + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", + "HTTP": { +${path !== '' ? ` + "${path}": "${path === 'PathRegex' ? `${fake.helpers.randomize(['^[0-9]{1,3}?$', '(\w+)\s(\w+)'])}` : `/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}`}", +`:``} + +${ fake.random.boolean() ? ` + "Methods": [ + ${ + fake.helpers.shuffle( + ["GET", "POST", "PUT", "DELETE", "OPTIONS", "HEAD", "PATCH"] + ).filter(item => fake.random.boolean()).map(item => ` + "${item}" + `) + } + ], +` : ``} + "Header": [ +${range(headerCount).map(item => ` + { + "Name": "X-${fake.hacker.noun().split(' ').map(item => `${item.substr(0, 1).toUpperCase()}${item.substr(1)}`).join('-')}", +${fake.random.boolean() ? ` + "Invert": true, +` : ``} +${fake.helpers.randomize([ + '"Present": true', + '"Exact": "abc"', + '"Prefix": "abc"', + '"Suffix": "xyz"', + '"Regex": "[abc]"' +])} + } +`)} + ] + } + } +`})} + ], +`:``} + "Precedence": ${fake.random.number({min: 1, max: 100})}, +${ !legacy && fake.random.number({min: 1, max: 10}) > 2 ? ` + "Meta": { + "external-source": "${fake.helpers.randomize(['kubernetes'])}" + }, +` : `` } + "CreatedAt": "2018-05-21T16:41:27.977155457Z", + "UpdatedAt": "2018-05-21T16:41:27.977157724Z", + "CreateIndex": 11, + "ModifyIndex": 11 +` : ``} + } +`})} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/intentions/check b/ui/packages/consul-ui/mock-api/v1/connect/intentions/check new file mode 100644 index 000000000..0352d975b --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/intentions/check @@ -0,0 +1,4 @@ +{ + "Allowed": true +} + diff --git a/ui/packages/consul-ui/mock-api/v1/connect/intentions/exact b/ui/packages/consul-ui/mock-api/v1/connect/intentions/exact new file mode 100644 index 000000000..0b8d1269c --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/intentions/exact @@ -0,0 +1,93 @@ +${range(1).map(item => { + const ID = fake.random.uuid(); + const legacy = ID.indexOf('%3A') === -1; + const source = location.search.source.split('/'); + const destination = location.search.destination.split('/'); +return ` + { + "ID": "${legacy ? ID : ''}" +${ http.method !== "PUT" ? ` + ,"Description": "${fake.lorem.sentence()}", + "SourceNS": "${source[0]}", + "SourceName": "${source[1]}", + "DestinationNS": "${destination[0]}", + "DestinationName": "${destination[1]}", + "SourceType": "${fake.helpers.randomize(['consul', 'externaluri'])}", +${legacy ? ` + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", +`:``} +${!legacy ? ` + "Permissions": [ +${range( + env( + 'CONSUL_INTENTION_PERMISSION_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_INTENTION_PERMISSION_MAX', 10) + ) + parseInt(env('CONSUL_INTENTION_PERMISSION_MIN', 1)) + ) + ) +).map((item, i) => { + const headerCount = env( + 'CONSUL_HEADER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_HEADER_MAX', 3) + ) + parseInt(env('CONSUL_HEADER_MIN', 1)) + ) + ); + const path = fake.helpers.randomize(['PathExact', 'PathPrefix', 'PathRegex', '']); + return ` + { + "Action": "${fake.helpers.randomize(['allow', 'deny'])}", + "HTTP": { +${path !== '' ? ` + "${path}": "${path === 'PathRegex' ? `${fake.helpers.randomize(['^[0-9]{1,3}?$', '(\w+)\s(\w+)'])}` : `/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}`}", +`:``} + +${ fake.random.boolean() ? ` + "Methods": [ + ${ + fake.helpers.shuffle( + ["GET", "POST", "PUT", "DELETE", "OPTIONS", "HEAD", "PATCH"] + ).filter(item => fake.random.boolean()).map(item => ` + "${item}" + `) + } + ], +` : ``} + "Header": [ +${range(headerCount).map(item => ` + { + "Name": "X-${fake.hacker.noun().split(' ').map(item => `${item.substr(0, 1).toUpperCase()}${item.substr(1)}`).join('-')}", +${fake.random.boolean() ? ` + "Invert": true, +` : ``} +${fake.helpers.randomize([ + '"Present": true', + '"Exact": "abc"', + '"Prefix": "abc"', + '"Suffix": "xyz"', + '"Regex": "[abc]"' +])} + } +`)} + ] + } + } +`})} + ], +`:``} + "Precedence": ${fake.random.number({min: 1, max: 100})}, +${ !legacy && fake.random.number({min: 1, max: 10}) > 2 ? ` + "Meta": { + "external-source": "${fake.helpers.randomize(['kubernetes'])}" + }, +` : `` } + "CreatedAt": "2018-05-21T16:41:27.977155457Z", + "UpdatedAt": "2018-05-21T16:41:27.977157724Z", + "CreateIndex": 11, + "ModifyIndex": 11 +` : ``} + } +`})} diff --git a/ui/packages/consul-ui/mock-api/v1/connect/intentions/match b/ui/packages/consul-ui/mock-api/v1/connect/intentions/match new file mode 100644 index 000000000..cf99720d5 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/connect/intentions/match @@ -0,0 +1,38 @@ +{ + "db": [ + { + "ID": "ed16f6a6-d863-1bec-af45-96bbdcbe02be", + "Description": "", + "SourceNS": "default", + "SourceName": "billing", + "DestinationNS": "default", + "DestinationName": "db", + "SourceType": "consul", + "Action": "deny", + "DefaultAddr": "", + "DefaultPort": 0, + "Meta": {}, + "CreatedAt": "2018-05-21T16:41:33.296693825Z", + "UpdatedAt": "2018-05-21T16:41:33.296694288Z", + "CreateIndex": 12, + "ModifyIndex": 12 + }, + { + "ID": "e9ebc19f-d481-42b1-4871-4d298d3acd5c", + "Description": "", + "SourceNS": "default", + "SourceName": "web", + "DestinationNS": "default", + "DestinationName": "db", + "SourceType": "consul", + "Action": "allow", + "DefaultAddr": "", + "DefaultPort": 0, + "Meta": {}, + "CreatedAt": "2018-05-21T16:41:27.977155457Z", + "UpdatedAt": "2018-05-21T16:41:27.977157724Z", + "CreateIndex": 11, + "ModifyIndex": 11 + } + ] +} diff --git a/ui/packages/consul-ui/mock-api/v1/coordinate/.config b/ui/packages/consul-ui/mock-api/v1/coordinate/.config new file mode 100644 index 000000000..7c74663cd --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/coordinate/.config @@ -0,0 +1,10 @@ +--- +"*": + GET: + "*": + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} + index: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } diff --git a/ui/packages/consul-ui/mock-api/v1/coordinate/nodes b/ui/packages/consul-ui/mock-api/v1/coordinate/nodes new file mode 100644 index 000000000..d79a16b71 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/coordinate/nodes @@ -0,0 +1,30 @@ +[ + ${ + range( + env( + 'CONSUL_NODE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_NODE_MAX', 10) + ) + parseInt(env('CONSUL_NODE_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + return ` + { + "Node":"node-${i}", + "Segment":"", + "Coord":{ + "Vec":[${range(7).map((item, i) => fake.random.number())}], + "Error":1.5, + "Adjustment":0, + "Height":0.0000${fake.random.number()} + } + } + `; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/.config b/ui/packages/consul-ui/mock-api/v1/discovery-chain/.config new file mode 100644 index 000000000..b79f23c96 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/.config @@ -0,0 +1,9 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} + diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/_ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/_ new file mode 100644 index 000000000..f5f5d0109 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/_ @@ -0,0 +1,352 @@ +${ + [1].map(() => { + + const namespaces = ['default']; + const ns = location.search.ns || 'default'; + const dc = location.search.dc; + const service = location.pathname.get(2); + + const routeCount = env( + 'CONSUL_ROUTE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_ROUTE_MAX', 10) + ) + parseInt(env('CONSUL_ROUTE_MIN', 1)) + ) + ); + const headerCount = env( + 'CONSUL_HEADER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_HEADER_MAX', 3) + ) + parseInt(env('CONSUL_HEADER_MIN', 1)) + ) + ); + + const queryParamCount = env( + 'CONSUL_QUERYPARAM_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_QUERYPARAM_MAX', 3) + ) + parseInt(env('CONSUL_QUERYPARAM_MIN', 1)) + ) + ); + + const resolverCount = env( + 'CONSUL_RESOLVER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_RESOLVER_MAX', 10) + ) + parseInt(env('CONSUL_RESOLVER_MIN', 1)) + ) + ); + const redirectCount = env( + 'CONSUL_REDIRECT_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_REDIRECT_MAX', resolverCount) + ) + parseInt(env('CONSUL_REDIRECT_MIN', 0)) + ) + ); + const splitterCount = env( + 'CONSUL_SPLITTER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SPLITTER_MAX', 5) + ) + parseInt(env('CONSUL_SPLITTER_MIN', 1)) + ) + ); + const splitCount = env( + 'CONSUL_SPLIT_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SPLIT_MAX', 10) + ) + parseInt(env('CONSUL_SPLIT_MIN', 1)) + ) + ); + + + + + // make some resolvers + let resolvers = range( + resolverCount + ).map(() => { + const service = fake.hacker.noun().split(' ').join('-'); + return { + ServiceName: service, + Name: `${service}.${ns}.${dc}`, + Subsets: range( + env( + 'CONSUL_SUBSET_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SUBSET_MAX', 3) + ) + parseInt(env('CONSUL_SUBSET_MIN', 1)) + ) + ) + ).map((item) => `v${item + 1}`) + }; + }); + + // make some redirects + const redirects = range( + redirectCount + ).map((item, i) => { + const service = resolvers[i].ServiceName; + return { + ServiceName: service, + Name: `${service}.${ns}.redirect-${dc}`, + Subsets: [] + }; + }); + + // make some resolver targets with possible subsets + let resolverTargets = resolvers.reduce( + function(prev, resolver) { + const targets = [`${resolver.Name}`]; + return prev.concat(targets.concat( + resolver.Subsets.map( + function(item) { + return `${item}.${targets[0]}` + } + ) + ).map( + (item) => `resolver:${item}` + )); + }, + [] + ); + const redirectTargets = redirects.map( + function(item) { + return `resolver:${item.Name}`; + } + ); + + resolverTargets = resolverTargets.concat(redirectTargets); + resolvers = resolvers.concat(redirects); + + const splitters = range( + splitterCount + ).map(() => ({ + Name: `${service}-${fake.hacker.noun()}.${ns}`, + Splits: range( + splitCount + ).map((item, i, arr) => ({ + "Weight": 100 / arr.length, + "NextNode": fake.helpers.randomize(resolverTargets) + })) + })); + + + const splitterTargets = splitters.map( + function(item) { + return `splitter:${item.Name}`; + } + ); + + const nextNodes = resolverTargets.concat(splitterTargets); + return ` +{ + "Chain": { + "ServiceName": "${service}", + "Namespace": "${ns}", + "Datacenter": "${dc}", + "Protocol": "http", + "StartNode": "router:${service}", + "Nodes": { + + "router:${service}": { + "Type": "router", + "Name": "${service}", + "Routes": [ +${ + range( + routeCount + ).map((item, i) => { + const path = fake.helpers.randomize(['PathExact', 'PathPrefix', 'PathRegex', '']); + const splitter = fake.helpers.randomize(splitters); + const nextNode = fake.helpers.randomize(nextNodes); + return ` + { + "NextNode": "${nextNode}", + "Definition": { + "Match": { + "HTTP": { +${ path !== '' ? ` + "${path}": "${path === 'PathRegex' ? `${fake.helpers.randomize(['^[0-9]{1,3}?$', '(\w+)\s(\w+)'])}` : `/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}`}" +` : `"": ""`} +${ fake.random.boolean() ? ` + ,"Header": [ +${ + range( + headerCount + ).map(item => ` + { + "Name": "X-${fake.hacker.noun().split(' ').map(item => `${item.substr(0, 1).toUpperCase()}${item.substr(1)}`).join('-')}", + ${fake.random.boolean() ? ` + "Invert": true, + ` : `` + } + ${fake.helpers.randomize([ + '"Present": true', + '"Exact": true', + '"Prefix": "abc"', + '"Suffix": "xyz"', + '"Regex": "[abc]"' + ])} + } + `)} + ] +` : ``} +${ fake.random.boolean() ? ` + ,"QueryParam": [ +${ + range( + queryParamCount + ).map(item => ` + { + "Name": "${fake.hacker.noun().split(' ').join('-')}", + ${fake.helpers.randomize([ + '"Present": true', + '"Exact": true', + '"Prefix": "abc"', + '"Suffix": "xyz"', + '"Regex": "[abc]"' + ])} + } + `)} + ] +` : ``} +${ fake.random.boolean() ? ` + ,"Methods": [ + ${ + fake.helpers.shuffle( + ["GET", "POST", "PUT", "DELETE", "OPTIONS", "HEAD", "PATCH"] + ).filter(item => fake.random.boolean()).map(item => ` + "${item}" + `) + } + ] +` : ``} + } + }, + "Destination": { + "Service": "${nextNode}", + "PrefixRewrite": "/" + } + } + } +`;})} + ] + }, +${resolvers.map((resolver) => { + const failoverCount = env( + 'CONSUL_FAILOVER_COUNT', + fake.helpers.randomize([0, 0, 0, 0, 0, 1, 2, 3]) + ); + const failover = ({ + Datacenter: `${resolver.Name.replace(`.${dc}`, `.fail-${dc}`).replace(`.redirect-${dc}`, `.fail-${dc}`)}`, + Namespace: `${resolver.Name.replace(`.${ns}.`, `.fail-${ns}.`).replace(`.redirect-${ns}.`, `.fail-${ns}.`)}`, + })[env('CONSUL_FAILOVER_TYPE', 'Datacenter')]; + + return ` + "resolver:${resolver.Name}": { + "Type": "resolver", + "Name": "${resolver.Name}", + "Resolver": { + "ConnectTimeout": "5s", +${failoverCount > 0 ? ` + "Failover": { + "Targets": [ + ${range(failoverCount).map(item => ` + "${failover.replace('fail-', `fail-${item + 1}-`)}" + `)} + ] + }, +` : `` } + "Target": "${resolver.Name}" + } + }${resolver.Subsets.length > 0 ? ',' : ''} +${resolver.Subsets.map((subset) => { + const id = `${subset}.${resolver.Name}`; + const failover = ({ + Datacenter: `${subset}.${resolver.Name.replace(`.${dc}`, `.fail-${dc}`)}`, + Namespace: `${subset}.${resolver.Name.replace(`.${ns}.`, `.fail-${ns}.`)}`, + })[env('CONSUL_FAILOVER_TYPE', 'Datacenter')]; + + return ` + "resolver:${id}": { + "Type": "resolver", + "Name": "${id}", + "Resolver": { + "ConnectTimeout": "5s", +${failoverCount > 0 ? ` + "Failover": { + "Targets": [ + ${range(failoverCount).map(item => ` + "${failover.replace('fail-', `fail-${item + 1}-`)}" + `)} + ] + }, +` : `` } + "Target": "${id}" + } + } + `; + })} +`})}, +${splitters.map((item, i) => ` + "splitter:${item.Name}": { + "Type": "splitter", + "Name": "${item.Name}", + "Splits": [ + ${item.Splits.map(item => ` + { + "Weight": ${item.Weight}, + "NextNode": "${item.NextNode}" + } + `)} + ] + } +`)} + }, + "Targets": { +${resolvers.map(item => { + const uuid = fake.random.uuid(); + const domain = 'consul'; + const name = `${item.Name}.internal.${uuid}.${domain}`; + return ` + "${item.Name}": { + "ID": "${item.Name}", + "Service": "${item.ServiceName}", + "Namespace": "${ns}", + "Datacenter": "${dc}", + "MeshGateway": {}, + "SNI": "${name}", + "Name": "${name}" + }${item.Subsets.length > 0 ? ',' : ''} +${item.Subsets.map(ktem => { + const id = `${ktem}.${item.Name}`; + const name = `${id}.internal.${uuid}.${domain}`; + return ` + "${id}": { + "ID": "${id}", + "Service": "${item.ServiceName}", + "ServiceSubset": "${ktem}", + "Namespace": "${ns}", + "Datacenter": "${dc}", + "MeshGateway": { + }, + "Subset": { + "Filter": "Service.Meta.value == ${ktem}" + }, + "SNI": "${name}", + "Name": "${name}" + } + `})} +`})} + } + } +} +`})} diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-1 b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-1 new file mode 100644 index 000000000..13177cdd5 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-1 @@ -0,0 +1 @@ +{"Chain":{"ServiceName":"virtual-admin-1","Namespace":"default","Datacenter":"dc-gcp","Protocol":"http","StartNode":"router:virtual-admin-1","Nodes":{"resolver:virtual-admin-1.default.dc-gcp":{"Type":"resolver","Name":"virtual-admin-1.default.dc-gcp","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"virtual-admin-1.default.dc-gcp"}},"resolver:web.default.dc-aws":{"Type":"resolver","Name":"web.default.dc-aws","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-aws","Failover":{"Targets":["web.default.dc-gcp"]}}},"resolver:web.default.dc-gcp":{"Type":"resolver","Name":"web.default.dc-gcp","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-gcp","Failover":{"Targets":["web.default.dc-aws"]}}},"router:virtual-admin-1":{"Type":"router","Name":"virtual-admin-1","Routes":[{"Definition":{"Match":{"HTTP":{"PathPrefix":"/login"}},"Destination":{"Service":"login","PrefixRewrite":"/"}},"NextNode":"splitter:login.default"},{"Definition":{"Destination":{"Service":"global-admin"}},"NextNode":"splitter:global-admin.default"},{"Definition":{"Match":{"HTTP":{"PathPrefix":"/"}},"Destination":{"Service":"virtual-admin-1"}},"NextNode":"resolver:virtual-admin-1.default.dc-gcp"}]},"splitter:global-admin.default":{"Type":"splitter","Name":"global-admin.default","Splits":[{"Weight":50,"NextNode":"resolver:web.default.dc-aws"},{"Weight":50,"NextNode":"resolver:web.default.dc-gcp"}]},"splitter:login.default":{"Type":"splitter","Name":"login.default","Splits":[{"Weight":50,"NextNode":"resolver:web.default.dc-gcp"},{"Weight":50,"NextNode":"resolver:web.default.dc-aws"}]}},"Targets":{"virtual-admin-1.default.dc-gcp":{"ID":"virtual-admin-1.default.dc-gcp","Service":"virtual-admin-1","Namespace":"default","Datacenter":"dc-gcp","MeshGateway":{},"Subset":{},"SNI":"virtual-admin-1.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"virtual-admin-1.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"},"web.default.dc-aws":{"ID":"web.default.dc-aws","Service":"web","Namespace":"default","Datacenter":"dc-aws","MeshGateway":{"Mode":"local"},"Subset":{},"SNI":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"},"web.default.dc-gcp":{"ID":"web.default.dc-gcp","Service":"web","Namespace":"default","Datacenter":"dc-gcp","MeshGateway":{},"Subset":{},"SNI":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"}}}} diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-2 b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-2 new file mode 100644 index 000000000..221964e5c --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-2 @@ -0,0 +1 @@ +{"Chain":{"ServiceName":"virtual-admin-2","Namespace":"default","Datacenter":"dc-gcp","Protocol":"http","StartNode":"splitter:virtual-admin-2.default","Nodes":{"resolver:web.default.dc-aws":{"Type":"resolver","Name":"web.default.dc-aws","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-aws","Failover":{"Targets":["web.default.dc-gcp"]}}},"resolver:web.default.dc-gcp":{"Type":"resolver","Name":"web.default.dc-gcp","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-gcp","Failover":{"Targets":["web.default.dc-aws"]}}},"splitter:virtual-admin-2.default":{"Type":"splitter","Name":"virtual-admin-2.default","Splits":[{"Weight":50,"NextNode":"resolver:web.default.dc-gcp"},{"Weight":50,"NextNode":"resolver:web.default.dc-aws"}]}},"Targets":{"web.default.dc-aws":{"ID":"web.default.dc-aws","Service":"web","Namespace":"default","Datacenter":"dc-aws","MeshGateway":{"Mode":"local"},"Subset":{},"SNI":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"},"web.default.dc-gcp":{"ID":"web.default.dc-gcp","Service":"web","Namespace":"default","Datacenter":"dc-gcp","MeshGateway":{},"Subset":{},"SNI":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"}}}} diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-3 b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-3 new file mode 100644 index 000000000..9f7f32eba --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-3 @@ -0,0 +1 @@ +{"Chain":{"ServiceName":"virtual-admin-3","Namespace":"default","Datacenter":"dc-gcp","Protocol":"http","StartNode":"splitter:virtual-admin-3.default","Nodes":{"resolver:web.default.dc-aws":{"Type":"resolver","Name":"web.default.dc-aws","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-aws"}},"resolver:web.default.dc-gcp":{"Type":"resolver","Name":"web.default.dc-gcp","Resolver":{"ConnectTimeout":"15s","Target":"web.default.dc-gcp"}},"splitter:virtual-admin-3.default":{"Type":"splitter","Name":"virtual-admin-3.default","Splits":[{"Weight":50,"NextNode":"resolver:web.default.dc-gcp"},{"Weight":50,"NextNode":"resolver:web.default.dc-aws"}]}},"Targets":{"web.default.dc-aws":{"ID":"web.default.dc-aws","Service":"web","Namespace":"default","Datacenter":"dc-aws","MeshGateway":{"Mode":"local"},"Subset":{},"SNI":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-aws.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"},"web.default.dc-gcp":{"ID":"web.default.dc-gcp","Service":"web","Namespace":"default","Datacenter":"dc-gcp","MeshGateway":{},"Subset":{},"SNI":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul","Name":"web.default.dc-gcp.internal.ede9daf4-b641-3954-5a52-15f4fd666f6e.consul"}}}} diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-4 b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-4 new file mode 100644 index 000000000..f0bf99482 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-4 @@ -0,0 +1 @@ +{"Chain":{"ServiceName":"virtual-admin-4","Namespace":"default","Datacenter":"dc1","Protocol":"http","StartNode":"router:virtual-admin-4","Nodes":{"resolver:admin.default.dc1":{"Type":"resolver","Name":"admin.default.dc1","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"admin.default.dc1"}},"resolver:admin.default.dc2":{"Type":"resolver","Name":"admin.default.dc2","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"admin.default.dc2"}},"resolver:login.default.dc1":{"Type":"resolver","Name":"login.default.dc1","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"login.default.dc1"}},"resolver:virtual-admin-4.default.dc1":{"Type":"resolver","Name":"virtual-admin-4.default.dc1","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"virtual-admin-4.default.dc1"}},"router:virtual-admin-4":{"Type":"router","Name":"virtual-admin-4","Routes":[{"Definition":{"Match":{"HTTP":{"PathPrefix":"/login"}},"Destination":{"Service":"login","PrefixRewrite":"/"}},"NextNode":"resolver:login.default.dc1"},{"Definition":{"Destination":{"Service":"global-admin"}},"NextNode":"splitter:global-admin.default"},{"Definition":{"Match":{"HTTP":{"PathPrefix":"/"}},"Destination":{"Service":"virtual-admin-4"}},"NextNode":"resolver:virtual-admin-4.default.dc1"}]},"splitter:global-admin.default":{"Type":"splitter","Name":"global-admin.default","Splits":[{"Weight":50,"NextNode":"resolver:admin.default.dc1"},{"Weight":50,"NextNode":"resolver:admin.default.dc2"}]}},"Targets":{"admin.default.dc1":{"ID":"admin.default.dc1","Service":"admin","Namespace":"default","Datacenter":"dc1","MeshGateway":{},"Subset":{},"SNI":"admin.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"admin.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"admin.default.dc2":{"ID":"admin.default.dc2","Service":"admin","Namespace":"default","Datacenter":"dc2","MeshGateway":{"Mode":"local"},"Subset":{},"SNI":"admin.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"admin.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"login.default.dc1":{"ID":"login.default.dc1","Service":"login","Namespace":"default","Datacenter":"dc1","MeshGateway":{},"Subset":{},"SNI":"login.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"login.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"virtual-admin-4.default.dc1":{"ID":"virtual-admin-4.default.dc1","Service":"virtual-admin-4","Namespace":"default","Datacenter":"dc1","MeshGateway":{},"Subset":{},"SNI":"virtual-admin-4.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"virtual-admin-4.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"}}}} diff --git a/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-5 b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-5 new file mode 100644 index 000000000..35a216eed --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/discovery-chain/virtual-admin-5 @@ -0,0 +1 @@ +{"Chain":{"ServiceName":"virtual-admin-5","Namespace":"default","Datacenter":"dc2","Protocol":"http","StartNode":"router:virtual-admin-5","Nodes":{"resolver:admin.default.dc1":{"Type":"resolver","Name":"admin.default.dc1","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"admin.default.dc1"}},"resolver:admin.default.dc2":{"Type":"resolver","Name":"admin.default.dc2","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"admin.default.dc2"}},"resolver:login.default.dc2":{"Type":"resolver","Name":"login.default.dc2","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"login.default.dc2"}},"resolver:virtual-admin-5.default.dc2":{"Type":"resolver","Name":"virtual-admin-5.default.dc2","Resolver":{"ConnectTimeout":"5s","Default":true,"Target":"virtual-admin-5.default.dc2"}},"router:virtual-admin-5":{"Type":"router","Name":"virtual-admin-5","Routes":[{"Definition":{"Match":{"HTTP":{"PathPrefix":"/login"}},"Destination":{"Service":"login","PrefixRewrite":"/"}},"NextNode":"resolver:login.default.dc2"},{"Definition":{"Match":{"HTTP":{"PathPrefix":"/"}},"Destination":{"Service":"global-admin"}},"NextNode":"splitter:global-admin.default"},{"Definition":{"Match":{"HTTP":{"PathPrefix":"/"}},"Destination":{"Service":"virtual-admin-5"}},"NextNode":"resolver:virtual-admin-5.default.dc2"}]},"splitter:global-admin.default":{"Type":"splitter","Name":"global-admin.default","Splits":[{"Weight":50,"NextNode":"resolver:admin.default.dc1"},{"Weight":50,"NextNode":"resolver:admin.default.dc2"}]}},"Targets":{"admin.default.dc1":{"ID":"admin.default.dc1","Service":"admin","Namespace":"default","Datacenter":"dc1","MeshGateway":{"Mode":"local"},"Subset":{},"SNI":"admin.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"admin.default.dc1.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"admin.default.dc2":{"ID":"admin.default.dc2","Service":"admin","Namespace":"default","Datacenter":"dc2","MeshGateway":{},"Subset":{},"SNI":"admin.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"admin.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"login.default.dc2":{"ID":"login.default.dc2","Service":"login","Namespace":"default","Datacenter":"dc2","MeshGateway":{},"Subset":{},"SNI":"login.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"login.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"},"virtual-admin-5.default.dc2":{"ID":"virtual-admin-5.default.dc2","Service":"virtual-admin-5","Namespace":"default","Datacenter":"dc2","MeshGateway":{},"Subset":{},"SNI":"virtual-admin-5.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul","Name":"virtual-admin-5.default.dc2.internal.6818c189-1048-8114-7d9f-ae248864b349.consul"}}}} diff --git a/ui/packages/consul-ui/mock-api/v1/health/service/.config b/ui/packages/consul-ui/mock-api/v1/health/service/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/health/service/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/health/service/_ b/ui/packages/consul-ui/mock-api/v1/health/service/_ new file mode 100644 index 000000000..468f9f25d --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/health/service/_ @@ -0,0 +1,160 @@ +[ + ${ + range( + env( + 'CONSUL_NODE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_NODE_MAX', 10) + ) + parseInt(env('CONSUL_NODE_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + const node = `node-${i}`; + const service = location.pathname.slice(4); + const ip = fake.internet.ip(); + const proxy = service.indexOf('-proxy') + const sidecar = service.indexOf('-sidecar-proxy') + const id = (proxy !== -1 ? service.slice(0, -6) + '-with-id-proxy' : service + '-with-id'); + let kind = ''; + switch(true) { + case service.endsWith('-mesh-gateway'): + kind = 'mesh-gateway'; + break; + case service.endsWith('-terminating-gateway'): + kind = 'terminating-gateway'; + break; + case service.endsWith('-ingress-gateway'): + kind = 'ingress-gateway'; + break; + case service.endsWith('-proxy'): + kind = 'connect-proxy'; + break; + } + + return ` + { + "Node":{ + "ID":"7037e928-d9e8-3b58-4712-6f5ded209002", + "Node":"${node}", + "Address":"${ip}", + "Datacenter":"dc1", + "TaggedAddresses":{"lan":"${ip}","wan":"${ip}"}, + "Meta":{"${service}-network-segment":""}, + "CreateIndex":5, + "ModifyIndex":6 + }, + "Service":{ + "ID": "${ i === 0 ? id : fake.helpers.randomize([service, service + '-ID'])}", + "Service":"${service}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Tags":[ + ${ + range( + env( + 'CONSUL_TAG_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_TAG_MAX', 10) + ) + parseInt(env('CONSUL_TAG_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + return `"${fake.hacker.noun()}"`; + } + ) + } + ], +${ fake.random.number({min: 1, max: 10}) > 2 ? ` + "Meta": { + "consul-dashboard-url": "${fake.internet.protocol()}://${fake.internet.domainName()}/?id={{Service}}", + "external-source": "${fake.helpers.randomize(['consul', 'nomad', 'terraform', 'kubernetes', 'aws', ''])}" + }, +` : `` } + "Address":"${fake.internet.ip()}", + "Port":${fake.random.number({min: 0, max: 65535})}, +${kind !== '' ? ` + "Kind": "${kind}", +` : `` } + "Proxy": { +${proxy !== -1 && sidecar === -1 ? ` + "DestinationServiceName": "${service.substr(0, proxy)}", +` : ``} +${sidecar !== -1 ? ` + "DestinationServiceName": "${service.substr(0, sidecar)}", + "DestinationServiceID": "${service.substr(0, sidecar)}-ID", + "LocalServiceAddress": "${fake.internet.ip()}", + "LocalServicePort": ${fake.random.number({min: 0, max: 65535})}, +` : ``} +${proxy !== -1 ? ` + "Expose": { + "Checks": true, + "Paths": [ +${range(env('CONSUL_EXPOSED_COUNT', 3)).map((i) => ` + { + "Path": "/${fake.lorem.words(fake.random.number({min: 1, max: 5})).split(' ').join('/')}${fake.random.boolean() ? fake.system.fileName() : ''}", + "Protocol": "${fake.helpers.randomize(['http', 'http2', 'grpc'])}", + "LocalPathPort": ${fake.random.number({min: 0, max: 65535})}, + "ListenerPort": ${fake.random.number({min: 0, max: 65535})} + } +`)} + ] + }, + "Upstreams": [ + ${range(env('CONSUL_UPSTREAM_COUNT', 10)).map((item, j) => ` + { + "Datacenter": "${fake.address.countryCode().toLowerCase()} ${ i % 2 ? "west" : "east"}-${j}", + "DestinationName": "${fake.hacker.noun()}", + "DestinationNamespace": "${fake.hacker.noun()}", + "DestinationType": "${fake.helpers.randomize(['service', 'prepared_query'])}", + "LocalBindAddress": "${fake.internet.ip()}", + "LocalBindPort": ${fake.random.number({min: 0, max: 65535})} + } + `)} + ] +` : ``} + }, + "ProxyDestination": "", + "EnableTagOverride":false, + "CreateIndex":5, + "ModifyIndex":5 + }, + "Checks":[ + ${ + range(env('CONSUL_CHECK_COUNT', 10)).map( + function(item, j) { + const passing = i > 7 || j > fake.random.number(4); + const id = fake.helpers.randomize([service, '']); + return ` + { + "Node":"${node}", + "CheckID":"${fake.hacker.noun()}Health", + "Name":"${fake.hacker.noun()} Status", + "Type": "${j === 0 ? 'ttl' : (j === 1 ? 'http' : fake.helpers.randomize(['script', 'http', 'tcp', 'ttl', 'docker', 'grpc', 'alias']))}", + "Status":"${j < 2 ? 'critical' : (passing ? "passing" : fake.helpers.randomize(['warning', 'critical']))}", + "Notes":"${fake.lorem.paragraph()}", + "Output":"${fake.internet.ipv6()} ${fake.internet.protocol()}://${fake.internet.userName()}:${fake.internet.password()}@${fake.internet.domainName()} ${fake.internet.userAgent()}", + "ServiceID":"${j < 2 ? service : id}", + "ServiceName":"", + "ServiceTags":["Tag"], + "Definition":{}, + "CreateIndex":5, + "ModifyIndex":5 + } + `; + } + ) + } + ] + } + `; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/internal/acl/authorize b/ui/packages/consul-ui/mock-api/v1/internal/acl/authorize new file mode 100644 index 000000000..9f410abbd --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/acl/authorize @@ -0,0 +1,34 @@ +[ + { + "Resource": "acl", + "Access": "read", + "Allow": false + }, + { + "Resource": "acl", + "Access": "write", + "Allow": false + }, + { + "Resource": "operator", + "Access": "read", + "Allow": true + }, + { + "Resource": "operator", + "Access": "write", + "Allow": true + }, + { + "Resource": "service", + "Segment": "web", + "Access": "read", + "Allow": true + }, + { + "Resource": "service", + "Segment": "web", + "Access": "write", + "Allow": true + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/.config b/ui/packages/consul-ui/mock-api/v1/internal/ui/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/.config b/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/_ b/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/_ new file mode 100644 index 000000000..9b871e930 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/gateway-services-nodes/_ @@ -0,0 +1,70 @@ +[ + ${ + range( + env( + 'CONSUL_SERVICE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SERVICE_MAX', 10) + ) + parseInt(env('CONSUL_SERVICE_MIN', 1)) + ) + ) + ).map((item, i) => ` + { + "Name": "service-${i}", +${i === 1 ? ` + "Namespace": "default", +` : ` + "Namespace": "${fake.hacker.noun()}-ns-${i}", +`} + "Tags": [ + ${ + range(env('CONSUL_TAG_COUNT', fake.random.number(10))).map( + function(item, i) + { + return `"${fake.hacker.noun()}"`; + } + ) + } + ], + "Nodes": [ + ${ + range(env('CONSUL_NODE_COUNT', 100)).map( + function(item, i) + { + return `"node-${i}"`; + } + ) + } + ], + "InstanceCount": ${fake.helpers.randomize([fake.random.number({min: 1, max: 100})])}, + "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, +${ fake.random.number({min: 1, max: 10}) > 2 ? ` + "ExternalSources": [ + ${ + range(fake.random.number({min: 1, max: 1})).map( + function(item, i) + { + return `"${fake.helpers.randomize(['consul', 'nomad', 'terraform', 'kubernetes', 'aws', ''])}"`; + } + ) + } + ], +` : `` } + "GatewayConfig": { + "Addresses": [ + ${ + range(fake.random.number(6)).map( + function(item, i) + { + return `"${fake.random.number({min: 1, max: 10}) > 8 ? `*.`: ``}${fake.internet.domainName()}:${fake.random.number({min: 0, max: 65535})}"`; + } + ) + } + ] + } + } + `)} +] \ No newline at end of file diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/.config b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/.config new file mode 100644 index 000000000..dccc95192 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/.config @@ -0,0 +1,5 @@ +--- +"*": + GET: + "*": + latency: ${env('CONSUL_LATENCY', 0)} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query new file mode 100644 index 000000000..e79f0b7d4 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query @@ -0,0 +1,217 @@ +{ + "status": "success", + "data": { + "resultType": "vector", + "result": [ + ${ + [1].map(item => { + const dc = 'dc1'; + const generateTargets = function(num) { + // Seed faker by the number of results we want to make it deterministic + // here and in other correlated endpoints. + fake.seed(num); + return range(num).map(i => { + const nspace = i === 0 ? `default` : `${fake.hacker.noun()}-ns-${i}`; + return { + Name: `service-${fake.random.number({min:0, max:99})}`, + Datacenter: `${dc}`, + Namespace: `${nspace}` + } + }) + }; + + // little helper to get a deterministic number from the target service + // name string. NOTE: this should be the same as in metrics-proxy/.../query + // endpoint so metrics match what is requested. + const hashStr = function(s) { + for(var i = 0, h = 0xdeadbeef; i < s.length; i++) + h = Math.imul(h ^ s.charCodeAt(i), 2654435761); + return (h ^ h >>> 16) >>> 0; + }; + + const randExp = function(max, lambda) { + return (-Math.log(1-(1-Math.exp(-lambda))*Math.random())/lambda) * max; + }; + + const q = location.search.query; + let type = 'service'; + let proto = 'tcp'; + + // Match the relabel arguments since "downstream" appears in both + // "service" and "upstream" type queries' metric names while + // "upstream" appears in downstream query metric names (confusingly). + if (q.match('consul_destination_service=')) { + type = "downstream"; + } else if (q.match('consul_upstream_service')) { + type = "upstream"; + } + + if (q.match('envoy_http_')) { + proto = 'http'; + } + + // NOTE!!! The logic below to pick the upstream/downstream service + // names must exactly match the logic in internal/ui/service-topology/_ + // If you change this, change it there too! + + // Pick a number of down/upstreams to return based on the cookie variable. + // If you change anything about this variable or it's default, you'll need + // to change the topology endpoint to match. + let numResults = 1; + if (type === 'upstream') { + numResults = parseInt(env('CONSUL_UPSTREAM_COUNT', 3)); + } + if (type === 'downstream') { + numResults = parseInt(env('CONSUL_DOWNSTREAM_COUNT', 5)); + } + + // Figure out the actual name for the target service + var targetService = "invalid-local-cluster"; + var m = q.match(/consul_source_service="([^"]*)"/); + if (m && m.length >= 2 && m[1] != "") { + targetService = m[1]; + } + m = q.match(/consul_destination_service="([^"]*)"/); + if (type == "downstream" && m && m.length >= 2 && m[1] != "") { + // downstreams don't have the same selector for the main service + // name. + targetService = m[1]; + } + + // Figure out the actual namespace for the target service + var targetNS = "invalid-local-ns"; + var m = q.match(/consul_source_namespace="([^"]*)"/); + if (m && m.length >= 2 && m[1] != "") { + targetNS = m[1]; + } + m = q.match(/consul_destination_namespace="([^"]*)"/); + if (type == "downstream" && m && m.length >= 2 && m[1] != "") { + // downstreams don't have the same selector for the main service + // name. + targetNS = m[1]; + } + + // Figure out the actual datacenter for the target service + var targetDC = "invalid-local-dc"; + var m = q.match(/consul_source_datacenter="([^"]*)"/); + if (m && m.length >= 2 && m[1] != "") { + targetDC = m[1]; + } + m = q.match(/consul_destination_datacenter="([^"]*)"/); + if (type == "downstream" && m && m.length >= 2 && m[1] != "") { + // downstreams don't have the same selector for the main service + // name. + targetDC = m[1]; + } + + var serviceNames = []; + switch(type) { + case 'downstream': // fallthrough + case 'upstream': + targets = generateTargets(numResults); + break; + default: + // fallthrough + case 'service': + targets = [targetService]; + break; + } + + let serviceProto = 'tcp'; + // Randomly pick the serviceProtocol which will affect which types of + // stats we return for downstream clusters. But we need it to be + // deterministic for a given service name so that all the downstream + // stats are consistently typed. + fake.seed(hashStr(targetService)) + if (fake.random.number(1) > 0.5) { + serviceProto = 'http'; + } + + // For up/downstreams only return HTTP metrics half of the time. + + // For upstreams it's based on the upstream's protocol which might be + // mixed so alternate protocols for upstreams. + if (type === "upstream") { + // Pretend all odd service indexes are tcp and even are http + const wantMod = proto === 'tcp' ? 1 : 0; + targets = targets.filter((item, i) => i % 2 === wantMod); + } + // For downstreams it's based on the target's protocol which we + // don't really know but all downstreams should be the same type + // so only return metrics for that protocol. + if (type === 'downstream' && proto === 'http' && serviceProto !== 'http') { + targets = []; + } + + // Work out which metric is being queried to make them more realistic. + let max = 100; + switch(proto) { + case 'http': + if (q.match('envoy_response_code_class="5"')) { + // It's error rate make it a percentage + max = 30; + } else if (q.match("rq_completed")) { + // Requests per second + max = 1000; + } else if (q.match("quantile\\(0.99")) { + // 99 percentile time in ms make it longer than 50 percentile + max = 5000; + } else if (q.match("quantile\\(0.5")) { + // 50th percentile + max = 500; + } + break; + case 'tcp': + if (q.match('cx_total')) { + // New conns per second + max = 100; + } else if (q.match('cx_rx_bytes')) { + // inbound data rate tends to be lower than outbound + max = 0.5 * 1e9; + } else if (q.match('cx_tx_bytes')) { + // inbound data rate + max = 1e9; + } + // no route/connect failed are OK with default 0-100 + break; + } + + + // Now generate the data points + return targets.map((item, i) => { + let metric = `{}`; + switch(type) { + case 'upstream': + metric = `{"consul_upstream_service": "${item.Name}", "consul_upstream_datacenter": "${targetDC}", "consul_upstream_namespace": "${targetNS}"}`; + break; + case "downstream": + metric = `{"consul_source_service": "${item.Name}", "consul_source_datacenter": "${targetDC}", "consul_source_namespace": "${targetNS}"}`; + break; + } + const timestamp = Date.now() / 1000; + let value = randExp(max, 20); + + // prometheus can sometimes generate NaN and undefined strings, so + // replicate that randomly + const num = fake.random.number({min: 0, max: 10}); + switch(true) { + case num > 8: + value = 'NaN'; + break; + case num > 5: + value = 'undefined'; + break; + } + return `{ + "metric": ${metric}, + "value": [ + ${timestamp}, + "${value}" + ] + }`; + }) + }) + } + ] + } +} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query_range b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query_range new file mode 100644 index 000000000..357dbc866 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/metrics-proxy/api/v1/query_range @@ -0,0 +1,91 @@ +{ + "status": "success", + "data": { + "resultType": "matrix", + "result": [ + ${ + // We need 15 minutes worth of data at 10 second resoution. Currently we + // always query for two series together so loop twice over this. + [0, 1].map((i) => { + const timePeriodMins = 15; + const resolutionSecs = 10; + const numPoints = (timePeriodMins * 60) / resolutionSecs; + let time = (Date.now() / 1000) - (timePeriodMins * 60); + + const q = location.search.query; + let proto = 'tcp'; + let max = 1000; + let riseBias = 10; + let fallBias = 10; + let volatility = 0.2; + let label = ''; + + if (q.match('envoy_listener_http_downstream_rq_xx')) { + proto = 'http' + // Switch random value ranges for total vs error rates + switch(i) { + case 0: + max = 1000; // up to 1000 rps for success + label = 'Successes'; + break; + case 1: + max = 500; // up to 500 errors per second + fallBias = 1; // fall quicker than we rise + riseBias = 30; // start low generally + volatility = 1; + label = 'Errors'; + break; + } + } else { + // Type tcp + switch(i) { + case 0: + max = 0.5 * 1e9; // up to 500 mbps recieved + label = 'Inbound'; + break; + case 1: + max = 1e9; // up to 1 gbps + label = 'Outbound'; + break; + } + } + + const randExp = function(max, lambda) { + return (-Math.log(1-(1-Math.exp(-lambda))*Math.random())/lambda) * max; + } + + // Starting value + let value = randExp(max, riseBias); + if (value > max) { + value = max; + } + + const points = []; + let rising; + for (var i = 0; i < numPoints; i++) { + points.push(`[${time}, "${value}"]`); + time = time + resolutionSecs; + rising = (Math.random() > 0.5); + delta = volatility * randExp(max, rising ? riseBias : fallBias); + if (!rising) { + // Make it a negative change + delta = 0 - delta; + } + value = value + delta + if (value > max) { + value = max; + } + if (value < 0) { + value = 0; + } + } + return ` + { + "metric": {"label": "${label}"}, + "values": [${points.join(",")}] + }`; + }) + } + ] + } +} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/node/.config b/ui/packages/consul-ui/mock-api/v1/internal/ui/node/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/node/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/node/_ b/ui/packages/consul-ui/mock-api/v1/internal/ui/node/_ new file mode 100644 index 000000000..d75f7a47e --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/node/_ @@ -0,0 +1,105 @@ +${[1].map(() => { + + const services = range( + env( + 'CONSUL_SERVICE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SERVICE_MAX', 10) + ) + parseInt(env('CONSUL_SERVICE_MIN', 1)) + ) + ) + ).map( + (item, i) => { + const service = `service-${i}`; + return { + "ID": i === 0 ? 'service-0-with-id' : fake.helpers.randomize([service, service + '-ID']), + "Service": service, + }; + } + ); + +return ` +{ + "ID":"${node = location.pathname.get(4)}", + "Node":"${node}", + "Address":"${ip = fake.internet.ip()}", + "TaggedAddresses":{"lan":"${ip}","wan":"${ip}"}, + "Meta":{ + "consul-network-segment":"", + "consul-dashboard-url": "${fake.internet.protocol()}://${fake.internet.domainName()}/?id={{Node}}" + }, + "Services":[ + ${ + services.map( + function(item, i) + { + const service = `service-${i}`; + return ` + { + "ID": "${item.ID}", + "Service":"${item.Service}", + "Tags":[ + ${ + range( + env( + 'CONSUL_TAG_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_TAG_MAX', 10) + ) + parseInt(env('CONSUL_TAG_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + return `"${fake.hacker.noun()}"`; + } + ) + } + ], +${ fake.random.number({min: 1, max: 10}) > 2 ? ` + "Meta": { + "external-source": "${fake.helpers.randomize(['consul', 'nomad', 'terraform', 'kubernetes', ''])}" + }, +` : `` } + "Address":"", + "Port": ${ i === 0 ? '65535' : fake.random.number({min: 0, max: 65534})}, + "EnableTagOverride":false, + "CreateIndex":11, + "ModifyIndex":11 + } + `; + } + ) + } + ], + "Checks":[ + ${ + range(env('CONSUL_CHECK_COUNT', 10)).map( + function(item, i) + { + const service = fake.random.number({min: 0, max: 10}) > 5 ? fake.helpers.randomize(services) : {ID: '', Service: ''}; + return ` + { + "Node":"${location.pathname.get(4)}", + "CheckID":"${fake.hacker.noun()}Health", + "Name":"${fake.hacker.noun()} Status", + "Type": "${fake.helpers.randomize(['script', 'http', 'tcp', 'ttl', 'docker', 'grpc', 'alias'])}", + "Status":"${fake.helpers.randomize(['passing', 'warning', 'critical'])}", + "Notes":"${fake.lorem.paragraph()}", + "Output":"${fake.internet.ipv6()} ${fake.internet.protocol()}://${fake.internet.userName()}:${fake.internet.password()}@${fake.internet.domainName()} ${fake.internet.userAgent()}", + "ServiceID":"${service.ID}", + "ServiceName":"${service.Service}", + "ServiceTags":null, + "Definition":{}, + "CreateIndex":12, + "ModifyIndex":230113 + } + `; + } + ) + } + ] +}` +})} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/nodes b/ui/packages/consul-ui/mock-api/v1/internal/ui/nodes new file mode 100644 index 000000000..a867b6db0 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/nodes @@ -0,0 +1,90 @@ +[ + ${ + range( + env( + 'CONSUL_NODE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_NODE_MAX', 10) + ) + parseInt(env('CONSUL_NODE_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + return ` + { + "ID":"${fake.random.uuid()}", + "Node":"node-${i}", + "Address":"${fake.internet.ip()}", + "TaggedAddresses":{ + "lan":"${fake.internet.ip()}", + "wan":"${fake.internet.ip()}" + }, + "Meta": { + "consul-network-segment":"" + }, + "Services":[ + ${ + range(fake.random.number(4) + 1).map( + function(item, i) { + const service = `service-${i}`; + return ` + { + "ID":"${service}", + "Service":"${service}", + "Tags":[ + ${ + range(env('CONSUL_TAG_COUNT', fake.random.number(10))).map( + function(item, i) + { + return `"${fake.hacker.noun()}"`; + } + ) + } + ], + "Address":"", + "Port":${fake.random.number({min: 0, max: 65535})}, + "EnableTagOverride":false, + "CreateIndex":5, + "ModifyIndex":5 + } + `; + } + ) + } + ], + "Checks":[ + ${ + range(env('CONSUL_CHECK_COUNT', fake.random.number(9) + 1)).map( + function(item, j) + { + const passing = i > 7 || j > fake.random.number(4); + return ` + { + "Node":"node-${i}", + "CheckID":"${fake.hacker.noun()}Health", + "Name":"${fake.hacker.noun()} Status", + "Type": "${fake.helpers.randomize(['script', 'http', 'tcp', 'ttl', 'docker', 'grpc', 'alias'])}", + "Status":"${ passing ? "passing" : fake.helpers.randomize(['warning', 'critical'])}", + "Notes":"${fake.lorem.paragraph()}", + "Output":"${fake.internet.ipv6()} ${fake.internet.protocol()}://${fake.internet.userName()}:${fake.internet.password()}@${fake.internet.domainName()} ${fake.internet.userAgent()}", + "ServiceID":"", + "ServiceName":"", + "ServiceTags":["Tag"], + "Definition":{}, + "CreateIndex":5, + "ModifyIndex":5 + } + `; + + } + ) + } + ] + } + `; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/oidc-auth-methods b/ui/packages/consul-ui/mock-api/v1/internal/ui/oidc-auth-methods new file mode 100644 index 000000000..fe2df04cf --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/oidc-auth-methods @@ -0,0 +1,23 @@ +[ + ${ + range( + env( + 'CONSUL_OIDC_PROVIDER_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_OIDC_PROVIDER_MAX', 10) + ) + parseInt(env('CONSUL_OIDC_PROVIDER_MIN', 1)) + ) + ) + ).map((item, i) => { + const name = `${fake.company.companyName()}`; +return ` + { + "Name": "${name.split(' ').join('-').toLowerCase()}", + "DisplayName": "${name}", + "Kind": "${fake.helpers.randomize(['no-icon', 'google', 'okta', 'auth0', 'microsoft'])}", + "Namespace": "default" + } +`}) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/.config b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/.config new file mode 100644 index 000000000..b79f23c96 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/.config @@ -0,0 +1,9 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} + diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ new file mode 100644 index 000000000..339adee51 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/service-topology/_ @@ -0,0 +1,108 @@ +${ + [1].map(() => { + const dc = location.search.dc; + const generateTargets = function(num) { + // Seed faker by the number of results we want to make it deterministic + // here and in other correlated endpoints. + fake.seed(num); + return range(num).map(i => { + const nspace = i === 0 ? `default` : `${fake.hacker.noun()}-ns-${i}`; + return { + Name: `service-${fake.random.number({min:0, max:99})}`, + Datacenter: `${dc}`, + Namespace: `${nspace}` + } + }) + }; + + // little helper to get a deterministic number from the target service + // name string. NOTE: this should be the same as in metrics-proxy/.../query + // endpoint so metrics match what is requested. + const hashStr = function(s) { + for(var i = 0, h = 0xdeadbeef; i < s.length; i++) + h = Math.imul(h ^ s.charCodeAt(i), 2654435761); + return (h ^ h >>> 16) >>> 0; + }; + + + // NOTE!!! The logic below to pick the upstream/downstream service + // names must exactly match the logic in internal/ui/metrics-proxy/.../query + // If you change this, change it there too! + + // Pick a number of down/upstreams to return based on the cookie variable. + // If you change anything about this variable or it's default, you'll need + // to change the topology endpoint to match. + const numUp = parseInt(env('CONSUL_UPSTREAM_COUNT', 3)); + const numDown = parseInt(env('CONSUL_DOWNSTREAM_COUNT', 5)); + + const index = parseInt(location.search.index || 0); + const targetService = location.pathname.get(4) + + const upstreams = generateTargets(numUp); + const downstreams = generateTargets(numDown); + + // Randomly pick the serviceProtocol which will affect which types of + // stats we return for downstream clusters. But we need it to be + // deterministic for a given service name so that all the downstream + // stats are consistently typed. + let serviceProto = 'tcp'; + fake.seed(hashStr(targetService)) + if (fake.random.number(1) > 0.5) { + serviceProto = 'http'; + } + fake.seed(index); + + return ` +{ + "Protocol": "${serviceProto}", + "FilteredByACLs": ${fake.random.boolean()}, + "Upstreams": [ + ${ + upstreams.map((item, i) => { + const hasPerms = fake.random.boolean(); + // if hasPerms is true allowed is always false as some restrictions apply + const allowed = hasPerms ? false : fake.random.boolean(); + return ` + { + "Name": "${item.Name}", + "Datacenter": "${item.Datacenter}", + "Namespace": "${item.Namespace}", + "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "Intention": { + "Allowed": ${allowed}, + "HasPermissions": ${hasPerms}, + "ExternalSource": "${fake.helpers.randomize(['nomad', 'kubernetes', ''])}", + "HasExact": ${fake.random.boolean()} + } + } + `})} + ], + "Downstreams": [ + ${ + downstreams.map((item, i) => { + const hasPerms = fake.random.boolean(); + // if hasPerms is true allowed is always false as some restrictions apply + const allowed = hasPerms ? false : fake.random.boolean(); + return ` + { + "Name": "${item.Name}", + "Datacenter": "${item.Datacenter}", + "Namespace": "${item.Namespace}", + "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "Intention": { + "Allowed": ${allowed}, + "HasPermissions": ${hasPerms}, + "ExternalSource": "${fake.helpers.randomize(['nomad', 'kubernetes', ''])}", + "HasExact": ${fake.random.boolean()} + } + } + `})} + ] +}` + + }) +} diff --git a/ui/packages/consul-ui/mock-api/v1/internal/ui/services b/ui/packages/consul-ui/mock-api/v1/internal/ui/services new file mode 100644 index 000000000..3fa598cd2 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/internal/ui/services @@ -0,0 +1,109 @@ +${[0].map( + () => { + let prevKind; + let name; + const gateways = ['mesh-gateway', 'ingress-gateway', 'terminating-gateway']; + return ` +[ + ${ + range( + env( + 'CONSUL_SERVICE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SERVICE_MAX', 10) + ) + parseInt(env('CONSUL_SERVICE_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + let kind; + switch(i) { + case 0: + kind = ''; + break; + case 1: + kind = 'connect-proxy'; + break; + case 2: + case 3: + case 4: + kind = gateways[i - 2]; + break; + default: + kind = prevKind === '' ? fake.helpers.randomize(['connect-proxy', '']) : fake.helpers.randomize(['', '', '', ''].concat(gateways)); + } + prevKind = kind; + if(kind === 'connect-proxy') { + name = `${name}-proxy`; + } else { + name = `service-${i}${ kind !== '' ? `-${kind.replace('connect-', '')}` : '' }`; + } + return ` + { + "Name":"${name}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Tags": [ + ${ + range( + env( + 'CONSUL_TAG_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_TAG_MAX', 10) + ) + parseInt(env('CONSUL_TAG_MIN', 1)) + ) + ) + ).map( + function(item, i) + { + return `"${fake.hacker.noun()}"`; + } + ) + } + ], + "ConnectedWithProxy":${fake.random.boolean()}, + "ConnectedWithGateway":${fake.random.boolean()}, + "GatewayConfig": { + "AssociatedServiceCount": ${fake.random.number({min: 1, max: 4000})} + }, +${kind !== '' ? ` + "Kind": "${kind}", +` : `` } + "InstanceCount": ${fake.helpers.randomize([fake.random.number({min: 1, max: 4000}), fake.random.number({min: 1, max: 90}), fake.random.number({min: 1, max: 10})])}, +${ fake.random.number({min: 1, max: 10}) > 2 ? ` + "ExternalSources": [ + ${ + range(fake.random.number({min: 1, max: 1})).map( + function(item, i) + { + return `"${fake.helpers.randomize(['consul', 'nomad', 'terraform', 'kubernetes', 'aws', ''])}"`; + } + ) + } + + ], +` : `` } + "Nodes":[ + ${ + range(env('CONSUL_NODE_COUNT', 100)).map( + function(item, i) + { + return `"node-${i}"`; + } + ) + } + ], + "ChecksPassing":${fake.random.number({min: 1, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksWarning":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})}, + "ChecksCritical":${fake.random.number({min: 0, max: env('CONSUL_CHECK_COUNT', fake.random.number(10))})} + } + `; + } + ) + } +] +`})} diff --git a/ui/packages/consul-ui/mock-api/v1/kv/.config b/ui/packages/consul-ui/mock-api/v1/kv/.config new file mode 100644 index 000000000..88427f05c --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/kv/.config @@ -0,0 +1,12 @@ +--- +"*": + PUT: + "_": + "*": + latency: ${ env('CONSUL_LATENCY', 0)} + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/kv/_ b/ui/packages/consul-ui/mock-api/v1/kv/_ new file mode 100644 index 000000000..cdb7251e2 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/kv/_ @@ -0,0 +1,50 @@ +${ + http.method == "GET" ? + typeof location.search.keys !== 'undefined' ? ` +[ + ${ + range( + env( + 'CONSUL_KV_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_KV_MAX', 10) + ) + parseInt(env('CONSUL_KV_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return `"${ + range( + fake.random.number( + {max: env('CONSUL_KV_MAX_DEPTH', 0)} + ) + ).reduce( + function(prev, item, i, arr) { + return `${prev}/${fake.lorem.word()}-${i}` + }, + `${i}-${i === 0 ? 'key-value' : fake.lorem.word()}` + )}"`; + } + ) + } +] + ` : ` +[ + { + "LockIndex":0, + "Key":"${ + location.pathname.slice(3) + }", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Flags":0, + "Value":"VHVlIEZlYiAgNiAxMzoxOToyMiBVVEMgMjAxOA==", + "CreateIndex":467034, + "ModifyIndex":467499, + "Session": "${fake.random.uuid()}" + } +] +` : "true" +} diff --git a/ui/packages/consul-ui/mock-api/v1/kv/index b/ui/packages/consul-ui/mock-api/v1/kv/index new file mode 100644 index 000000000..30ea6b3ca --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/kv/index @@ -0,0 +1,28 @@ +[ + ${ + range( + env( + 'CONSUL_KV_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_KV_MAX', 10) + ) + parseInt(env('CONSUL_KV_MIN', 1)) + ) + ) + ).map( + function(item, i) { + return `"${ + range( + fake.random.number( + {max: env('CONSUL_KV_MAX_DEPTH', 0)} + ) + ).reduce( + function(prev, item, i, arr) { + return `${prev}/${fake.lorem.word()}-${i}` + }, + `${i}-${i === 0 ? 'key-value' : fake.lorem.word()}` + )}"`; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/namespace/_ b/ui/packages/consul-ui/mock-api/v1/namespace/_ new file mode 100644 index 000000000..63041f00f --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/namespace/_ @@ -0,0 +1,24 @@ +{ + "Name": "${location.pathname.get(2)}", + "Description": "${fake.lorem.sentence()}", + "ACLs": { + "PolicyDefaults": [ +${range(env('CONSUL_POLICY_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-policy" + } +`)} + ], + "RoleDefaults": [ +${range(env('CONSUL_ROLE_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-role" + } +`)} + ] + }, + "CreateIndex": 12, + "ModifyIndex": 16 +} diff --git a/ui/packages/consul-ui/mock-api/v1/namespaces b/ui/packages/consul-ui/mock-api/v1/namespaces new file mode 100644 index 000000000..3d4eef39d --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/namespaces @@ -0,0 +1,64 @@ +[ + { + "Name": "default", + "Description": "The default namespace", + "ACLs": { + "PolicyDefaults": [ +${range(env('CONSUL_POLICY_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-policy" + } +`)} + ], + "RoleDefaults": [ +${range(env('CONSUL_ROLE_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-role" + } +`)} + ] + } + } +${range( + env( + 'CONSUL_NSPACE_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_NSPACE_MAX', 10) + ) + parseInt(env('CONSUL_NSPACE_MIN', 1)) + ) + ) - 1 +).map(i => ` +${i === 0 ? ` + , +` : ``} + { + "Name": "${fake.hacker.noun()}-ns-${i}", + "ACLs": { + "PolicyDefaults": [ +${range(env('CONSUL_POLICY_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-policy" + } +`)} + ], + "RoleDefaults": [ +${range(env('CONSUL_ROLE_COUNT', 3)).map((i) => ` + { + "ID": "${fake.random.uuid()}-${i}", + "Name": "${fake.hacker.noun()}-role" + } +`)} + ] + }, +${fake.random.boolean() ? ` + "Description": "${fake.lorem.sentence()}", +` : ``} + "CreateIndex": 12, + "ModifyIndex": 16 + } +`)} +] diff --git a/ui/packages/consul-ui/mock-api/v1/session/destroy/_ b/ui/packages/consul-ui/mock-api/v1/session/destroy/_ new file mode 100644 index 000000000..27ba77dda --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/session/destroy/_ @@ -0,0 +1 @@ +true diff --git a/ui/packages/consul-ui/mock-api/v1/session/info/_ b/ui/packages/consul-ui/mock-api/v1/session/info/_ new file mode 100644 index 000000000..e70261964 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/session/info/_ @@ -0,0 +1,17 @@ +[ + { + "ID":"${location.pathname.get(3)}", + "Name":"${fake.hacker.noun()}", + "Namespace": "${ + typeof location.search.ns !== 'undefined' ? location.search.ns : + typeof http.body.Namespace !== 'undefined' ? http.body.Namespace : 'default' + }", + "Node":"node-1", + "Checks":["serfHealth"], + "LockDelay":15000000000, + "Behavior":"${fake.helpers.randomize(['release', 'delete'])}", + "TTL":"", + "CreateIndex":2782, + "ModifyIndex":2782 + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/session/node/.config b/ui/packages/consul-ui/mock-api/v1/session/node/.config new file mode 100644 index 000000000..b3baa4013 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/session/node/.config @@ -0,0 +1,8 @@ +--- +"*": + GET: + "*": + latency: ${ location.search.index ? env('CONSUL_LATENCY', 60000) : env('CONSUL_LATENCY', 0) } + headers: + response: + X-Consul-Index: ${ parseInt((location.search.index || 1)) + 1} diff --git a/ui/packages/consul-ui/mock-api/v1/session/node/_ b/ui/packages/consul-ui/mock-api/v1/session/node/_ new file mode 100644 index 000000000..0346f4f08 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/session/node/_ @@ -0,0 +1,32 @@ +[ + ${ + range( + env( + 'CONSUL_SESSION_COUNT', + Math.floor( + ( + Math.random() * env('CONSUL_SESSION_MAX', 5) + ) + parseInt(env('CONSUL_SESSION_MIN', 1)) + ) + ) + ).map( + function(item, i) { + // TTL = "" | 10:84600 + return `{ + "ID":"${fake.random.uuid()}", + "Name":"${fake.hacker.noun()}", +${typeof location.search.ns !== 'undefined' ? ` + "Namespace": "${location.search.ns}", +` : ``} + "Node":"${location.pathname.get(3)}", + "Checks":["serfHealth"], + "LockDelay":15000000000, + "Behavior":"${fake.helpers.randomize(['release', 'delete'])}", + "TTL":"", + "CreateIndex":2782, + "ModifyIndex":2782 + }`; + } + ) + } +] diff --git a/ui/packages/consul-ui/mock-api/v1/status/leader b/ui/packages/consul-ui/mock-api/v1/status/leader new file mode 100644 index 000000000..7424e37c9 --- /dev/null +++ b/ui/packages/consul-ui/mock-api/v1/status/leader @@ -0,0 +1 @@ +"211.245.86.75:8500" diff --git a/ui-v2/node-tests/config/environment.js b/ui/packages/consul-ui/node-tests/config/environment.js similarity index 100% rename from ui-v2/node-tests/config/environment.js rename to ui/packages/consul-ui/node-tests/config/environment.js diff --git a/ui-v2/node-tests/config/utils.js b/ui/packages/consul-ui/node-tests/config/utils.js similarity index 100% rename from ui-v2/node-tests/config/utils.js rename to ui/packages/consul-ui/node-tests/config/utils.js diff --git a/ui-v2/package.json b/ui/packages/consul-ui/package.json similarity index 87% rename from ui-v2/package.json rename to ui/packages/consul-ui/package.json index e4d1a2c71..9be254601 100644 --- a/ui-v2/package.json +++ b/ui/packages/consul-ui/package.json @@ -15,7 +15,7 @@ "lint:dev:js": "eslint -c .dev.eslintrc.js --fix ./*.js ./.*.js app config lib server tests", "lint:hbs": "ember-template-lint .", "lint:js": "eslint .", - "format:js": "prettier --write \"{app,config,lib,server,tests}/**/*.js\" ./*.js ./.*.js", + "format:js": "prettier --write \"{app,config,lib,server,vendor,tests}/**/*.js\" ./*.js ./.*.js", "format:css": "prettier --write \"app/styles/**/*.*\"", "start": "ember serve --port=${EMBER_SERVE_PORT:-4200} --live-reload-port=${EMBER_LIVE_RELOAD_PORT:-7020}", "start:staging": "ember serve --port=${EMBER_SERVE_PORT:-4200} --live-reload-port=${EMBER_LIVE_RELOAD_PORT:-7020} --environment staging", @@ -32,7 +32,9 @@ "test:coverage": "COVERAGE=true ember test --environment test --filter=Unit --test-port=${EMBER_TEST_PORT:-7357}", "test:coverage:ci": "COVERAGE=true ember test --environment test --filter=Unit --path dist --test-port=${EMBER_TEST_PORT:-7357}", "test:coverage:view": "COVERAGE=true ember test --server --environment test --filter=Unit --test-port=${EMBER_TEST_PORT:-7357}", - "steps:list": "node ./lib/commands/bin/list.js" + "steps:list": "node ./lib/commands/bin/list.js", + "storybook": "start-storybook -p 6006 -s dist", + "build-storybook": "build-storybook -s dist" }, "husky": { "hooks": { @@ -40,7 +42,7 @@ } }, "lint-staged": { - "{app,config,lib,server,tests}/**/*.js": [ + "{app,config,lib,server,vendor,tests}/**/*.js": [ "prettier --write" ], "app/styles/**/*.*": [ @@ -56,10 +58,18 @@ "@ember/render-modifiers": "^1.0.2", "@glimmer/component": "^1.0.0", "@glimmer/tracking": "^1.0.0", - "@hashicorp/consul-api-double": "^5.3.7", "@hashicorp/ember-cli-api-double": "^3.1.0", + "@storybook/addon-actions": "^6.0.27", + "@storybook/addon-controls": "^6.0.28", + "@storybook/addon-essentials": "^6.0.27", + "@storybook/addon-links": "^6.0.27", + "@storybook/ember": "^6.0.27", + "@storybook/ember-cli-storybook": "^0.2.1", "@xstate/fsm": "^1.4.0", "babel-eslint": "^10.0.3", + "babel-loader": "^8.1.0", + "babel-plugin-ember-modules-api-polyfill": "^3.2.0", + "babel-plugin-htmlbars-inline-precompile": "^4.2.0", "base64-js": "^1.3.0", "broccoli-asset-rev": "^3.0.0", "broccoli-funnel": "^3.0.3", @@ -72,7 +82,6 @@ "d3-scale-chromatic": "^2.0.0", "d3-selection": "^2.0.0", "d3-shape": "^2.0.0", - "dart-sass": "^1.25.0", "dayjs": "^1.9.3", "ember-auto-import": "^1.5.3", "ember-changeset-conditional-validations": "^0.6.0", @@ -83,7 +92,6 @@ "ember-cli-babel": "^7.17.2", "ember-cli-code-coverage": "^1.0.0-beta.4", "ember-cli-dependency-checker": "^3.2.0", - "ember-cli-eslint": "^5.1.0", "ember-cli-flash": "^1.6.3", "ember-cli-htmlbars": "^5.2.0", "ember-cli-inject-live-reload": "^2.0.2", @@ -96,7 +104,6 @@ "ember-cli-yadda": "^0.5.0", "ember-collection": "^1.0.0-alpha.9", "ember-composable-helpers": "~4.0.0", - "ember-computed-style": "^0.3.0", "ember-data": "~3.20.4", "ember-data-model-fragments": "5.0.0-beta.0", "ember-exam": "^4.0.0", @@ -115,6 +122,7 @@ "ember-ref-modifier": "^1.0.0", "ember-render-helpers": "^0.1.1", "ember-resolver": "^8.0.0", + "ember-route-action-helper": "^2.0.8", "ember-router-helpers": "^0.4.0", "ember-sinon-qunit": "5.0.0", "ember-source": "~3.20.5", @@ -123,6 +131,7 @@ "ember-test-selectors": "^4.0.0", "ember-tooltips": "^3.4.3", "ember-truth-helpers": "^2.0.0", + "eslint": "^7.12.1", "eslint-plugin-ember": "^7.7.2", "eslint-plugin-node": "^11.0.0", "flat": "^5.0.0", @@ -134,10 +143,11 @@ "loader.js": "^4.7.0", "mnemonist": "^0.38.0", "ngraph.graph": "^19.1.0", - "node-sass": "^4.9.3", "pretender": "^3.2.0", "prettier": "^1.10.2", "qunit-dom": "^1.0.0", + "react-is": "^17.0.1", + "sass": "^1.28.0", "tape": "^5.0.1", "text-encoding": "^0.7.0", "torii": "^0.10.1" diff --git a/ui-v2/public/assets/android-chrome-192x192.png b/ui/packages/consul-ui/public/assets/android-chrome-192x192.png similarity index 100% rename from ui-v2/public/assets/android-chrome-192x192.png rename to ui/packages/consul-ui/public/assets/android-chrome-192x192.png diff --git a/ui-v2/public/assets/android-chrome-512x512.png b/ui/packages/consul-ui/public/assets/android-chrome-512x512.png similarity index 100% rename from ui-v2/public/assets/android-chrome-512x512.png rename to ui/packages/consul-ui/public/assets/android-chrome-512x512.png diff --git a/ui-v2/public/assets/apple-touch-icon-114x114.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-114x114.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-114x114.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-114x114.png diff --git a/ui-v2/public/assets/apple-touch-icon-120x120.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-120x120.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-120x120.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-120x120.png diff --git a/ui-v2/public/assets/apple-touch-icon-144x144.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-144x144.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-144x144.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-144x144.png diff --git a/ui-v2/public/assets/apple-touch-icon-152x152.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-152x152.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-152x152.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-152x152.png diff --git a/ui-v2/public/assets/apple-touch-icon-57x57.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-57x57.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-57x57.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-57x57.png diff --git a/ui-v2/public/assets/apple-touch-icon-60x60.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-60x60.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-60x60.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-60x60.png diff --git a/ui-v2/public/assets/apple-touch-icon-72x72.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-72x72.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-72x72.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-72x72.png diff --git a/ui-v2/public/assets/apple-touch-icon-76x76.png b/ui/packages/consul-ui/public/assets/apple-touch-icon-76x76.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon-76x76.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon-76x76.png diff --git a/ui-v2/public/assets/apple-touch-icon.png b/ui/packages/consul-ui/public/assets/apple-touch-icon.png similarity index 100% rename from ui-v2/public/assets/apple-touch-icon.png rename to ui/packages/consul-ui/public/assets/apple-touch-icon.png diff --git a/ui-v2/public/assets/consul-logo.png b/ui/packages/consul-ui/public/assets/consul-logo.png similarity index 100% rename from ui-v2/public/assets/consul-logo.png rename to ui/packages/consul-ui/public/assets/consul-logo.png diff --git a/ui-v2/public/assets/favicon-128.png b/ui/packages/consul-ui/public/assets/favicon-128.png similarity index 100% rename from ui-v2/public/assets/favicon-128.png rename to ui/packages/consul-ui/public/assets/favicon-128.png diff --git a/ui-v2/public/assets/favicon-16x16.png b/ui/packages/consul-ui/public/assets/favicon-16x16.png similarity index 100% rename from ui-v2/public/assets/favicon-16x16.png rename to ui/packages/consul-ui/public/assets/favicon-16x16.png diff --git a/ui-v2/public/assets/favicon-196x196.png b/ui/packages/consul-ui/public/assets/favicon-196x196.png similarity index 100% rename from ui-v2/public/assets/favicon-196x196.png rename to ui/packages/consul-ui/public/assets/favicon-196x196.png diff --git a/ui-v2/public/assets/favicon-32x32.png b/ui/packages/consul-ui/public/assets/favicon-32x32.png similarity index 100% rename from ui-v2/public/assets/favicon-32x32.png rename to ui/packages/consul-ui/public/assets/favicon-32x32.png diff --git a/ui-v2/public/assets/favicon-96x96.png b/ui/packages/consul-ui/public/assets/favicon-96x96.png similarity index 100% rename from ui-v2/public/assets/favicon-96x96.png rename to ui/packages/consul-ui/public/assets/favicon-96x96.png diff --git a/ui-v2/public/assets/favicon.ico b/ui/packages/consul-ui/public/assets/favicon.ico similarity index 100% rename from ui-v2/public/assets/favicon.ico rename to ui/packages/consul-ui/public/assets/favicon.ico diff --git a/ui-v2/public/assets/favicon.png b/ui/packages/consul-ui/public/assets/favicon.png similarity index 100% rename from ui-v2/public/assets/favicon.png rename to ui/packages/consul-ui/public/assets/favicon.png diff --git a/ui-v2/public/assets/loading-cylon-pink.svg b/ui/packages/consul-ui/public/assets/loading-cylon-pink.svg similarity index 100% rename from ui-v2/public/assets/loading-cylon-pink.svg rename to ui/packages/consul-ui/public/assets/loading-cylon-pink.svg diff --git a/ui-v2/public/assets/mstile-144x144.png b/ui/packages/consul-ui/public/assets/mstile-144x144.png similarity index 100% rename from ui-v2/public/assets/mstile-144x144.png rename to ui/packages/consul-ui/public/assets/mstile-144x144.png diff --git a/ui-v2/public/assets/mstile-150x150.png b/ui/packages/consul-ui/public/assets/mstile-150x150.png similarity index 100% rename from ui-v2/public/assets/mstile-150x150.png rename to ui/packages/consul-ui/public/assets/mstile-150x150.png diff --git a/ui-v2/public/assets/mstile-310x150.png b/ui/packages/consul-ui/public/assets/mstile-310x150.png similarity index 100% rename from ui-v2/public/assets/mstile-310x150.png rename to ui/packages/consul-ui/public/assets/mstile-310x150.png diff --git a/ui-v2/public/assets/mstile-310x310.png b/ui/packages/consul-ui/public/assets/mstile-310x310.png similarity index 100% rename from ui-v2/public/assets/mstile-310x310.png rename to ui/packages/consul-ui/public/assets/mstile-310x310.png diff --git a/ui-v2/public/assets/mstile-70x70.png b/ui/packages/consul-ui/public/assets/mstile-70x70.png similarity index 100% rename from ui-v2/public/assets/mstile-70x70.png rename to ui/packages/consul-ui/public/assets/mstile-70x70.png diff --git a/ui-v2/public/assets/safari-pinned-tab.svg b/ui/packages/consul-ui/public/assets/safari-pinned-tab.svg similarity index 100% rename from ui-v2/public/assets/safari-pinned-tab.svg rename to ui/packages/consul-ui/public/assets/safari-pinned-tab.svg diff --git a/ui-v2/public/oidc/callback b/ui/packages/consul-ui/public/oidc/callback similarity index 100% rename from ui-v2/public/oidc/callback rename to ui/packages/consul-ui/public/oidc/callback diff --git a/ui-v2/public/robots.txt b/ui/packages/consul-ui/public/robots.txt similarity index 100% rename from ui-v2/public/robots.txt rename to ui/packages/consul-ui/public/robots.txt diff --git a/ui-v2/server/index.js b/ui/packages/consul-ui/server/index.js similarity index 100% rename from ui-v2/server/index.js rename to ui/packages/consul-ui/server/index.js diff --git a/ui-v2/testem.js b/ui/packages/consul-ui/testem.js similarity index 91% rename from ui-v2/testem.js rename to ui/packages/consul-ui/testem.js index 88ff011cc..3a84839e8 100644 --- a/ui-v2/testem.js +++ b/ui/packages/consul-ui/testem.js @@ -1,12 +1,8 @@ module.exports = { test_page: 'tests/index.html?hidepassed', disable_watching: true, - launch_in_ci: [ - 'Chrome' - ], - launch_in_dev: [ - 'Chrome' - ], + launch_in_ci: ['Chrome'], + launch_in_dev: ['Chrome'], browser_start_timeout: 120, browser_args: { Chrome: { @@ -39,5 +35,5 @@ if (process.env.EMBER_TEST_REPORT) { * https://github.com/trentmwillis/ember-exam/issues/108 */ if (process.env.EMBER_EXAM_PARALLEL) { - module.exports.parallel = -1 + module.exports.parallel = -1; } diff --git a/ui-v2/tests/acceptance/components/acl-filter.feature b/ui/packages/consul-ui/tests/acceptance/components/acl-filter.feature similarity index 100% rename from ui-v2/tests/acceptance/components/acl-filter.feature rename to ui/packages/consul-ui/tests/acceptance/components/acl-filter.feature diff --git a/ui-v2/tests/acceptance/components/catalog-filter.feature b/ui/packages/consul-ui/tests/acceptance/components/catalog-filter.feature similarity index 100% rename from ui-v2/tests/acceptance/components/catalog-filter.feature rename to ui/packages/consul-ui/tests/acceptance/components/catalog-filter.feature diff --git a/ui-v2/tests/acceptance/components/copy-button.feature b/ui/packages/consul-ui/tests/acceptance/components/copy-button.feature similarity index 100% rename from ui-v2/tests/acceptance/components/copy-button.feature rename to ui/packages/consul-ui/tests/acceptance/components/copy-button.feature diff --git a/ui-v2/tests/acceptance/components/kv-filter.feature b/ui/packages/consul-ui/tests/acceptance/components/kv-filter.feature similarity index 100% rename from ui-v2/tests/acceptance/components/kv-filter.feature rename to ui/packages/consul-ui/tests/acceptance/components/kv-filter.feature diff --git a/ui-v2/tests/acceptance/components/text-input.feature b/ui/packages/consul-ui/tests/acceptance/components/text-input.feature similarity index 100% rename from ui-v2/tests/acceptance/components/text-input.feature rename to ui/packages/consul-ui/tests/acceptance/components/text-input.feature diff --git a/ui-v2/tests/acceptance/dc/acls/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/index.feature diff --git a/ui-v2/tests/acceptance/dc/acls/list-order.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/list-order.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/list-order.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/list-order.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/add-existing.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/add-existing.feature similarity index 88% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/add-existing.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/add-existing.feature index 4eeae7a89..a83bb0e20 100644 --- a/ui-v2/tests/acceptance/dc/acls/policies/as-many/add-existing.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/add-existing.feature @@ -22,10 +22,12 @@ Feature: dc / acls / policies / as many / add existing: Add existing policy --- Then the url should be /datacenter/acls/[Model]s/key And I click "form > #policies .ember-power-select-trigger" + And I type "Policy 1" into ".ember-power-select-search-input" And I click ".ember-power-select-option:first-child" And I see 1 policy model on the policies component And I click "form > #policies .ember-power-select-trigger" - And I click ".ember-power-select-option:nth-child(1)" + And I type "Policy 2" into ".ember-power-select-search-input" + And I click ".ember-power-select-option:first-child" And I see 2 policy models on the policies component And I submit Then a PUT request was made to "/v1/acl/[Model]/key?dc=datacenter" with the body from yaml diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/add-new.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/add-new.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/add-new.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/add-new.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/list.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/nspaces.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/nspaces.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/nspaces.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/nspaces.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/remove.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/remove.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/remove.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/remove.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/as-many/reset.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/reset.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/as-many/reset.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/as-many/reset.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/create.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/delete.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/delete.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/index.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/navigation.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/navigation.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/navigation.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/sorting.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/update.feature diff --git a/ui-v2/tests/acceptance/dc/acls/policies/view-management.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/policies/view-management.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/policies/view-management.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/policies/view-management.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/as-many/add-existing.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/add-existing.feature similarity index 88% rename from ui-v2/tests/acceptance/dc/acls/roles/as-many/add-existing.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/add-existing.feature index 21b3bed6c..30d02d48c 100644 --- a/ui-v2/tests/acceptance/dc/acls/roles/as-many/add-existing.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/add-existing.feature @@ -22,10 +22,12 @@ Feature: dc / acls / roles / as many / add existing: Add existing --- Then the url should be /datacenter/acls/tokens/key And I click "form > #roles .ember-power-select-trigger" + And I type "Role 1" into ".ember-power-select-search-input" And I click ".ember-power-select-option:first-child" And I see 1 role model on the roles component And I click "form > #roles .ember-power-select-trigger" - And I click ".ember-power-select-option:nth-child(1)" + And I type "Role 2" into ".ember-power-select-search-input" + And I click ".ember-power-select-option:first-child" And I see 2 role models on the roles component Then I fill in with yaml --- diff --git a/ui-v2/tests/acceptance/dc/acls/roles/as-many/add-new.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/add-new.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/as-many/add-new.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/add-new.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/as-many/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/as-many/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/list.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/as-many/remove.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/remove.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/as-many/remove.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/as-many/remove.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/create.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/index.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/navigation.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/navigation.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/navigation.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/sorting.feature diff --git a/ui-v2/tests/acceptance/dc/acls/roles/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/roles/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/roles/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/roles/update.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/anonymous-no-delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/anonymous-no-delete.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/anonymous-no-delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/anonymous-no-delete.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/clone.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/clone.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/clone.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/clone.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/create.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/index.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/legacy/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/legacy/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/legacy/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/legacy/update.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/navigation.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/navigation.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/navigation.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/own-no-delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/own-no-delete.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/own-no-delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/own-no-delete.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/sorting.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/update.feature diff --git a/ui-v2/tests/acceptance/dc/acls/tokens/use.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/use.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/tokens/use.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/tokens/use.feature diff --git a/ui-v2/tests/acceptance/dc/acls/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/update.feature diff --git a/ui-v2/tests/acceptance/dc/acls/use.feature b/ui/packages/consul-ui/tests/acceptance/dc/acls/use.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/acls/use.feature rename to ui/packages/consul-ui/tests/acceptance/dc/acls/use.feature diff --git a/ui-v2/tests/acceptance/dc/error.feature b/ui/packages/consul-ui/tests/acceptance/dc/error.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/error.feature rename to ui/packages/consul-ui/tests/acceptance/dc/error.feature diff --git a/ui-v2/tests/acceptance/dc/forwarding.feature b/ui/packages/consul-ui/tests/acceptance/dc/forwarding.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/forwarding.feature rename to ui/packages/consul-ui/tests/acceptance/dc/forwarding.feature diff --git a/ui-v2/tests/acceptance/dc/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/index.feature diff --git a/ui-v2/tests/acceptance/dc/intentions/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/intentions/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/create.feature diff --git a/ui-v2/tests/acceptance/dc/intentions/delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/delete.feature similarity index 93% rename from ui-v2/tests/acceptance/dc/intentions/delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/delete.feature index 58202d686..9b5f18646 100644 --- a/ui-v2/tests/acceptance/dc/intentions/delete.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/delete.feature @@ -16,9 +16,9 @@ Feature: dc / intentions / deleting: Deleting items with confirmations, success --- dc: datacenter --- - And I click actions on the intentions - And I click delete on the intentions - And I click confirmDelete on the intentions + And I click actions on the intentionList.intentions + And I click delete on the intentionList.intentions + And I click confirmDelete on the intentionList.intentions Then a DELETE request was made to "/v1/connect/intentions/exact?source=default%2Fname&destination=default%2Fdestination&dc=datacenter" And "[data-notification]" has the "notification-delete" class And "[data-notification]" has the "success" class diff --git a/ui-v2/tests/acceptance/dc/intentions/filtered-select.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/filtered-select.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/intentions/filtered-select.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/filtered-select.feature diff --git a/ui-v2/tests/acceptance/dc/intentions/form-select.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/form-select.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/intentions/form-select.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/form-select.feature diff --git a/ui/packages/consul-ui/tests/acceptance/dc/intentions/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/index.feature new file mode 100644 index 000000000..014fde220 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/index.feature @@ -0,0 +1,54 @@ +@setupApplicationTest +Feature: dc / intentions / index + Scenario: Viewing intentions in the listing + Given 1 datacenter model with the value "dc-1" + And 3 intention models + When I visit the intentions page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/intentions + And the title should be "Intentions - Consul" + Then I see 3 intention models on the intentionList component + Scenario: Viewing intentions in the listing live updates + Given 1 datacenter model with the value "dc-1" + Given 3 intention models + And a network latency of 100 + When I visit the intentions page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/intentions + And pause until I see 3 intention models on the intentionList component + And an external edit results in 5 intention models + And pause until I see 5 intention models on the intentionList component + And an external edit results in 1 intention model + And pause until I see 1 intention models on the intentionList component + And an external edit results in 0 intention models + And pause until I see 0 intention models on the intentionList component + Scenario: Viewing intentions in the listing with CRDs + Given 1 datacenter model with the value "dc-1" + And 1 intention models from yaml + --- + Meta: + external-source: kubernetes + --- + When I visit the intentions page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/intentions + Then I see customResourceNotice on the intentionList + Scenario: Viewing intentions in the listing without CRDs + Given 1 datacenter model with the value "dc-1" + And 1 intention models from yaml + --- + Meta: + external-source: consul + --- + When I visit the intentions page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/intentions + Then I don't see customResourceNotice on the intentionList diff --git a/ui-v2/tests/acceptance/dc/intentions/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/navigation.feature similarity index 86% rename from ui-v2/tests/acceptance/dc/intentions/navigation.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/navigation.feature index 38979f1a6..4b1bd2318 100644 --- a/ui-v2/tests/acceptance/dc/intentions/navigation.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/navigation.feature @@ -21,12 +21,12 @@ Feature: dc / intentions / navigation --- Then the url should be /dc-1/intentions And the title should be "Intentions - Consul" - Then I see 3 intention models + Then I see 3 intention models on the intentionList component Given 1 intention model from yaml --- ID: 755b72bd-f5ab-4c92-90cc-bed0e7d8e9f0 --- - When I click intention on the intentions + When I click intention on the intentionList.intentions component Then a GET request was made to "/v1/internal/ui/services?dc=dc-1&ns=*" And I click "[data-test-back]" Then the url should be /dc-1/intentions @@ -37,7 +37,7 @@ Feature: dc / intentions / navigation --- Then the url should be /dc-1/intentions And the title should be "Intentions - Consul" - Then I see 3 intention models + Then I see 3 intention models on the intentionList component When I click create Then the url should be /dc-1/intentions/create And I click "[data-test-back]" diff --git a/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/create.feature new file mode 100644 index 000000000..ad42b85ec --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/create.feature @@ -0,0 +1,24 @@ +@setupApplicationTest +Feature: dc / intentions / permissions / create: Intention Permission Create + Scenario: + Given 1 datacenter model with the value "datacenter" + When I visit the intention page for yaml + --- + dc: datacenter + --- + Then the url should be /datacenter/intentions/create + And the title should be "New Intention - Consul" + # Specifically set L7 + And I click "[value='']" + + And I click the permissions.create object + And I click the permissions.form.Action.option.Deny object + And I click the permissions.form.PathType object + And I click the permissions.form.PathType.option.PrefixedBy object + And I fillIn the permissions.form.Path object with value "/path" + And I fillIn the permissions.form.Headers.form.Name object with value "Name" + And I fillIn the permissions.form.Headers.form.Value object with value "/path/name" + And I click the permissions.form.Headers.form.submit object + And I see 1 of the permissions.form.Headers.list.intentionPermissionHeaders objects + And I click the permissions.form.submit object + And I see 1 of the permissions.list.intentionPermissions objects diff --git a/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/warn.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/warn.feature new file mode 100644 index 000000000..b5d7b3431 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/permissions/warn.feature @@ -0,0 +1,31 @@ +@setupApplicationTest +Feature: dc / intentions / permissions / warn: Intention Permission Warn + Scenario: + Given 1 datacenter model with the value "datacenter" + And 1 intention model from yaml + --- + SourceNS: default + SourceName: web + DestinationNS: default + DestinationName: db + Action: ~ + Permissions: + - Action: allow + HTTP: + PathExact: /path + --- + When I visit the intention page for yaml + --- + dc: datacenter + intention: intention-id + --- + Then the url should be /datacenter/intentions/intention-id + And I click "[value='deny']" + And I submit + And the warning object is present + And I click the warning.cancel object + And the warning object isn't present + And I submit + And the warning object is present + And I click the warning.confirm object + Then a PUT request was made to "/v1/connect/intentions/exact?source=default%2Fweb&destination=default%2Fdb&dc=datacenter" from yaml diff --git a/ui-v2/tests/acceptance/dc/intentions/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/sorting.feature similarity index 78% rename from ui-v2/tests/acceptance/dc/intentions/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/sorting.feature index 8575c6044..2c4c7ef96 100644 --- a/ui-v2/tests/acceptance/dc/intentions/sorting.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/intentions/sorting.feature @@ -1,42 +1,42 @@ -@setupApplicationTest -@notNamespaceable -Feature: dc / intentions / sorting - Scenario: Sorting Intentions - Given 1 datacenter model with the value "dc-1" - And 6 intention models from yaml - --- - - Action: "allow" - - Action: "allow" - - Action: "deny" - - Action: "deny" - - Action: "allow" - - Action: "deny" - --- - When I visit the intentions page for yaml - --- - dc: dc-1 - --- - Then I see 6 intention models - When I click selected on the sort - When I click options.1.button on the sort - Then I see action on the intentions vertically like yaml - --- - - "deny" - - "deny" - - "deny" - - "allow" - - "allow" - - "allow" - --- - When I click selected on the sort - When I click options.0.button on the sort - Then I see action on the intentions vertically like yaml - --- - - "allow" - - "allow" - - "allow" - - "deny" - - "deny" - - "deny" - --- - +@setupApplicationTest +@notNamespaceable +Feature: dc / intentions / sorting + Scenario: Sorting Intentions + Given 1 datacenter model with the value "dc-1" + And 6 intention models from yaml + --- + - Action: "allow" + - Action: "allow" + - Action: "deny" + - Action: "deny" + - Action: "allow" + - Action: "deny" + --- + When I visit the intentions page for yaml + --- + dc: dc-1 + --- + Then I see 6 intention models on the intentionList component + When I click selected on the sort + When I click options.1.button on the sort + Then I see action on the intentionList.intentions vertically like yaml + --- + - "deny" + - "deny" + - "deny" + - "allow" + - "allow" + - "allow" + --- + When I click selected on the sort + When I click options.0.button on the sort + Then I see action on the intentionList.intentions vertically like yaml + --- + - "allow" + - "allow" + - "allow" + - "deny" + - "deny" + - "deny" + --- + diff --git a/ui-v2/tests/acceptance/dc/intentions/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/intentions/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/intentions/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/intentions/update.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/create.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/delete.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/delete.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/edit.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/edit.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/edit.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/edit.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/list-order.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/list-order.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/list-order.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/list-order.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/sessions/invalidate.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/sessions/invalidate.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/sessions/invalidate.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/sessions/invalidate.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/trailing-slash.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/trailing-slash.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/trailing-slash.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/trailing-slash.feature diff --git a/ui-v2/tests/acceptance/dc/kvs/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/kvs/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/kvs/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/kvs/update.feature diff --git a/ui-v2/tests/acceptance/dc/list-blocking.feature b/ui/packages/consul-ui/tests/acceptance/dc/list-blocking.feature similarity index 97% rename from ui-v2/tests/acceptance/dc/list-blocking.feature rename to ui/packages/consul-ui/tests/acceptance/dc/list-blocking.feature index 2cbdfadc2..0194be140 100644 --- a/ui-v2/tests/acceptance/dc/list-blocking.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/list-blocking.feature @@ -24,7 +24,6 @@ Feature: dc / list-blocking ------------------------------------------------ | Page | Model | Url | | nodes | node | nodes | - | intentions | intention | intentions | ------------------------------------------------ Scenario: Viewing detail pages with a listing for [Page] Given 3 [Model] models diff --git a/ui-v2/tests/acceptance/dc/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/list.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/empty-ids.feature similarity index 76% rename from ui-v2/tests/acceptance/dc/nodes/empty-ids.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/empty-ids.feature index 52df760af..b0f1429ae 100644 --- a/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/nodes/empty-ids.feature @@ -6,14 +6,24 @@ Feature: dc / nodes / empty-ids: Hedge for if nodes come in over the API with no --- - ID: id-1 Node: name-1 + Checks: + - Status: passing - ID: "" Node: name-2 + Checks: + - Status: passing - ID: "" Node: name-3 + Checks: + - Status: passing - ID: "" Node: name-4 + Checks: + - Status: passing - ID: "" Node: name-5 + Checks: + - Status: passing --- When I visit the nodes page for yaml --- @@ -27,4 +37,4 @@ Feature: dc / nodes / empty-ids: Hedge for if nodes come in over the API with no - name-3 - name-4 - name-5 - --- \ No newline at end of file + --- diff --git a/ui-v2/tests/acceptance/dc/nodes/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/index.feature similarity index 89% rename from ui-v2/tests/acceptance/dc/nodes/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/index.feature index 07a4f3ef4..59158038b 100644 --- a/ui-v2/tests/acceptance/dc/nodes/index.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/nodes/index.feature @@ -21,10 +21,14 @@ Feature: dc / nodes / index --- - Address: 211.245.86.75 Checks: - - Status: warning + - Status: critical Name: Warning check - Address: 10.0.0.1 + Checks: + - Status: passing - Address: 10.0.0.3 + Checks: + - Status: passing --- When I visit the nodes page for yaml --- @@ -59,4 +63,4 @@ Feature: dc / nodes / index s: 10.0.0.1 --- And I see 1 node model - And I see 1 node model with the name "node-02" \ No newline at end of file + And I see 1 node model with the name "node-02" diff --git a/ui-v2/tests/acceptance/dc/nodes/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/navigation.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/navigation.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/navigation.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/no-leader.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/no-leader.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/no-leader.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/no-leader.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/services/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/services/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/services/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/services/list.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/sessions/invalidate.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/sessions/invalidate.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/sessions/invalidate.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/sessions/invalidate.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/sessions/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/sessions/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/sessions/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/sessions/list.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/show.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/show.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/show.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/show.feature diff --git a/ui-v2/tests/acceptance/dc/nodes/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/nodes/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nodes/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nodes/sorting.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/create.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/create.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/create.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/create.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/delete.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/delete.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/delete.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/delete.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/index.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/index.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/manage.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/manage.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/manage.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/manage.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/sorting.feature diff --git a/ui-v2/tests/acceptance/dc/nspaces/update.feature b/ui/packages/consul-ui/tests/acceptance/dc/nspaces/update.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/nspaces/update.feature rename to ui/packages/consul-ui/tests/acceptance/dc/nspaces/update.feature diff --git a/ui-v2/tests/acceptance/dc/services/dc-switch.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/dc-switch.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/dc-switch.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/dc-switch.feature diff --git a/ui-v2/tests/acceptance/dc/services/error.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/error.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/error.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/error.feature diff --git a/ui-v2/tests/acceptance/dc/services/index.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/index.feature similarity index 75% rename from ui-v2/tests/acceptance/dc/services/index.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/index.feature index 2ff0ac98c..5b460d5f4 100644 --- a/ui-v2/tests/acceptance/dc/services/index.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/index.feature @@ -7,33 +7,51 @@ Feature: dc / services / index: List Services - Name: Service-0 ExternalSources: - consul + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 10 Kind: ~ - Name: Service-0-proxy Kind: 'connect-proxy' - Name: Service-1 ExternalSources: - nomad + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 9 Kind: ~ - Name: Service-1-proxy Kind: 'connect-proxy' - Name: Service-2 ExternalSources: - terraform + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 8 Kind: ~ - Name: Service-2-proxy Kind: 'connect-proxy' - Name: Service-3 ExternalSources: - kubernetes + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 7 Kind: ~ - Name: Service-3-proxy Kind: 'connect-proxy' - Name: Service-4 ExternalSources: - aws + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 6 Kind: ~ - Name: Service-4-proxy Kind: 'connect-proxy' + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 5 --- When I visit the services page for yaml @@ -57,10 +75,19 @@ Feature: dc / services / index: List Services --- - Name: Service-0-proxy Kind: 'connect-proxy' + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 3 - Name: Service-1-ingress-gateway Kind: 'ingress-gateway' + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 2 - Name: Service-2-terminating-gateway Kind: 'terminating-gateway' + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 1 --- When I visit the services page for yaml @@ -83,12 +110,18 @@ Feature: dc / services / index: List Services Kind: ~ ConnectedWithProxy: true ConnectedWithGateway: true + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 2 - Name: Service-0-proxy Kind: connect-proxy - Name: Service-1 Kind: ~ ConnectedWithProxy: false ConnectedWithGateway: false + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 1 --- When I visit the services page for yaml @@ -106,10 +139,19 @@ Feature: dc / services / index: List Services --- - Name: Service-0 Kind: ~ + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 2 - Name: Service-0-proxy Kind: connect-proxy + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 1 - Name: Service-1 Kind: 'ingress-gateway' + ChecksPassing: 0 + ChecksWarning: 0 + ChecksCritical: 1 GatewayConfig: - AssociatedServiceCount: 345 --- diff --git a/ui-v2/tests/acceptance/dc/services/instances/error.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/error.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/instances/error.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/instances/error.feature diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/instances/exposed-paths.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/exposed-paths.feature new file mode 100644 index 000000000..e688deae0 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/exposed-paths.feature @@ -0,0 +1,42 @@ +@setupApplicationTest +Feature: dc / services / instances / Exposed Paths + Background: + Given 1 datacenter model with the value "dc1" + Scenario: A Service instance without a Proxy does not display Exposed Paths tab + Given 1 proxy model from yaml + --- + - ServiceProxy: + DestinationServiceName: service-1 + DestinationServiceID: ~ + --- + When I visit the instance page for yaml + --- + dc: dc1 + service: service-0 + node: node-0 + id: service-0-with-id + --- + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/health-checks + And I don't see exposedPaths on the tabs + Scenario: A Service instance with a Proxy displays Exposed Paths tab + Given 1 proxy model from yaml + --- + - ServiceProxy: + DestinationServiceName: service-0 + DestinationServiceID: ~ + --- + When I visit the instance page for yaml + --- + dc: dc1 + service: service-0 + node: node-0 + id: service-0-with-id + --- + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/health-checks + And I see exposedPaths on the tabs + + When I click exposedPaths on the tabs + + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/exposed-paths + And I see exposedPathsIsSelected on the tabs + diff --git a/ui-v2/tests/acceptance/dc/services/instances/gateway.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/gateway.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/instances/gateway.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/instances/gateway.feature diff --git a/ui-v2/tests/acceptance/dc/services/instances/show.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/show.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/instances/show.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/instances/show.feature diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/instances/upstreams.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/upstreams.feature new file mode 100644 index 000000000..ba86f6992 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/instances/upstreams.feature @@ -0,0 +1,42 @@ +@setupApplicationTest +Feature: dc / services / instances / Upstreams + Background: + Given 1 datacenter model with the value "dc1" + Scenario: A Service instance without a Proxy does not display Upstreams tab + Given 1 proxy model from yaml + --- + - ServiceProxy: + DestinationServiceName: service-1 + DestinationServiceID: ~ + --- + When I visit the instance page for yaml + --- + dc: dc1 + service: service-0 + node: node-0 + id: service-0-with-id + --- + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/health-checks + And I don't see upstreams on the tabs + Scenario: A Service instance with a Proxy displays Upstreams tab + Given 1 proxy model from yaml + --- + - ServiceProxy: + DestinationServiceName: service-0 + DestinationServiceID: ~ + --- + When I visit the instance page for yaml + --- + dc: dc1 + service: service-0 + node: node-0 + id: service-0-with-id + --- + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/health-checks + And I see upstreams on the tabs + + When I click upstreams on the tabs + + Then the url should be /dc1/services/service-0/instances/node-0/service-0-with-id/upstreams + And I see upstreamsIsSelected on the tabs + diff --git a/ui-v2/tests/acceptance/dc/services/list-blocking.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/list-blocking.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/list-blocking.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/list-blocking.feature diff --git a/ui-v2/tests/acceptance/dc/services/list.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/list.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/list.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/list.feature diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/navigation.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/navigation.feature new file mode 100644 index 000000000..3944655b2 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/navigation.feature @@ -0,0 +1,16 @@ +@setupApplicationTest +Feature: dc / services / navigation + Scenario: Clicking a service in the listing and back again + Given 1 datacenter model with the value "dc-1" + And 1 service model + When I visit the services page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/services + And the title should be "Services - Consul" + Then I see 1 service models + When I click service on the services + And I click "[data-test-back]" + Then the url should be /dc-1/services + diff --git a/ui-v2/tests/acceptance/dc/services/show-routing.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show-routing.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/show-routing.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show-routing.feature diff --git a/ui/packages/consul-ui/tests/acceptance/dc/services/show-topology.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show-topology.feature new file mode 100644 index 000000000..54c7bd2ed --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/show-topology.feature @@ -0,0 +1,40 @@ +@setupApplicationTest +Feature: dc / services / show-topology: Show Topology tab for Service + Scenario: Given a service, the Topology tab should display + Given 1 datacenter model with the value "dc1" + And 1 node models + And 1 service model from yaml + --- + - Service: + Name: service-0 + ID: service-0-with-id + --- + When I visit the service page for yaml + --- + dc: dc1 + service: service-0 + --- + And I see topology on the tabs + Then the url should be /dc1/services/service-0/topology + Scenario: Given connect is disabled, the Topology tab should not display or error + Given 1 datacenter model with the value "dc1" + And 1 node models + And 1 service model from yaml + --- + - Service: + Name: service-0 + ID: service-0-with-id + --- + And the url "/v1/discovery-chain/service-0?dc=dc1&ns=@namespace" responds with from yaml + --- + status: 500 + body: "Connect must be enabled in order to use this endpoint" + --- + When I visit the service page for yaml + --- + dc: dc1 + service: service-0 + --- + And I don't see topology on the tabs + Then the url should be /dc1/services/service-0/instances + diff --git a/ui-v2/tests/acceptance/dc/services/show-with-slashes.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show-with-slashes.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/show-with-slashes.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show-with-slashes.feature diff --git a/ui-v2/tests/acceptance/dc/services/show.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show.feature similarity index 91% rename from ui-v2/tests/acceptance/dc/services/show.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show.feature index 47859dcf6..dd068f698 100644 --- a/ui-v2/tests/acceptance/dc/services/show.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/show.feature @@ -66,7 +66,7 @@ Feature: dc / services / show: Show Service And 1 service model from yaml --- - Checks: - - Status: passing + - Status: critical Service: Kind: ~ ID: passing-service-8080 @@ -74,14 +74,18 @@ Feature: dc / services / show: Show Service Address: 1.1.1.1 Node: Address: 1.2.2.2 - - Service: + - Checks: + - Status: warning + Service: Kind: ~ ID: service-8000 Port: 8000 Address: 2.2.2.2 Node: Address: 2.3.3.3 - - Service: + - Checks: + - Status: passing + Service: Kind: ~ ID: service-8888 Port: 8888 @@ -103,14 +107,9 @@ Feature: dc / services / show: Show Service --- Scenario: Given a dashboard template has been set Given 1 datacenter model with the value "dc1" - And settings from yaml - --- - consul:urls: - service: https://consul.io?service-name={{Service.Name}}&dc={{Datacenter}} - --- When I visit the service page for yaml --- dc: dc1 service: service-0 --- - And I see href on the dashboardAnchor like "https://consul.io?service-name=service-0&dc=dc1" + And I see href on the metricsAnchor like "https://example.com?service-0-with-id&dc1" diff --git a/ui-v2/tests/acceptance/dc/services/show/dc-switch.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/dc-switch.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/show/dc-switch.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show/dc-switch.feature diff --git a/ui-v2/tests/acceptance/dc/services/show/intentions.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature similarity index 75% rename from ui-v2/tests/acceptance/dc/services/show/intentions.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature index 58706574e..2e87d1649 100644 --- a/ui-v2/tests/acceptance/dc/services/show/intentions.feature +++ b/ui/packages/consul-ui/tests/acceptance/dc/services/show/intentions.feature @@ -37,11 +37,13 @@ Feature: dc / services / show / intentions: Intentions per service When I click intentions on the tabs And I see intentionsIsSelected on the tabs Scenario: I can see intentions - And I see 3 intention models + And I see 3 intention models on the intentionList component + And I click intention on the intentionList.intentions component + Then the url should be /dc1/services/service-0/intentions/default:name:default:destination Scenario: I can delete intentions - And I click actions on the intentions - And I click delete on the intentions - And I click confirmDelete on the intentions + And I click actions on the intentionList.intentions component + And I click delete on the intentionList.intentions component + And I click confirmDelete on the intentionList.intentions Then a DELETE request was made to "/v1/connect/intentions/exact?source=default%2Fname&destination=default%2Fdestination&dc=dc1" And "[data-notification]" has the "notification-delete" class And "[data-notification]" has the "success" class diff --git a/ui-v2/tests/acceptance/dc/services/show/services.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/services.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/show/services.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show/services.feature diff --git a/ui-v2/tests/acceptance/dc/services/show/upstreams.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/show/upstreams.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/show/upstreams.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/show/upstreams.feature diff --git a/ui-v2/tests/acceptance/dc/services/sorting.feature b/ui/packages/consul-ui/tests/acceptance/dc/services/sorting.feature similarity index 100% rename from ui-v2/tests/acceptance/dc/services/sorting.feature rename to ui/packages/consul-ui/tests/acceptance/dc/services/sorting.feature diff --git a/ui-v2/tests/acceptance/deleting.feature b/ui/packages/consul-ui/tests/acceptance/deleting.feature similarity index 100% rename from ui-v2/tests/acceptance/deleting.feature rename to ui/packages/consul-ui/tests/acceptance/deleting.feature diff --git a/ui-v2/tests/acceptance/index-forwarding.feature b/ui/packages/consul-ui/tests/acceptance/index-forwarding.feature similarity index 100% rename from ui-v2/tests/acceptance/index-forwarding.feature rename to ui/packages/consul-ui/tests/acceptance/index-forwarding.feature diff --git a/ui-v2/tests/acceptance/login-errors.feature b/ui/packages/consul-ui/tests/acceptance/login-errors.feature similarity index 100% rename from ui-v2/tests/acceptance/login-errors.feature rename to ui/packages/consul-ui/tests/acceptance/login-errors.feature diff --git a/ui-v2/tests/acceptance/login.feature b/ui/packages/consul-ui/tests/acceptance/login.feature similarity index 100% rename from ui-v2/tests/acceptance/login.feature rename to ui/packages/consul-ui/tests/acceptance/login.feature diff --git a/ui-v2/tests/acceptance/page-navigation.feature b/ui/packages/consul-ui/tests/acceptance/page-navigation.feature similarity index 96% rename from ui-v2/tests/acceptance/page-navigation.feature rename to ui/packages/consul-ui/tests/acceptance/page-navigation.feature index ed8be3a5d..614d841a1 100644 --- a/ui-v2/tests/acceptance/page-navigation.feature +++ b/ui/packages/consul-ui/tests/acceptance/page-navigation.feature @@ -41,7 +41,6 @@ Feature: page-navigation Where: ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | Item | Model | URL | Endpoint | Back | - | service | services | /dc-1/services/service-0/topology | /v1/discovery-chain/service-0?dc=dc-1&ns=@namespace | /dc-1/services | | kv | kvs | /dc-1/kv/0-key-value/edit | /v1/session/info/ee52203d-989f-4f7a-ab5a-2bef004164ca?dc=dc-1&ns=@namespace | /dc-1/kv | # | acl | acls | /dc-1/acls/anonymous | /v1/acl/info/anonymous?dc=dc-1 | /dc-1/acls | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- diff --git a/ui-v2/tests/acceptance/settings/show.feature b/ui/packages/consul-ui/tests/acceptance/settings/show.feature similarity index 100% rename from ui-v2/tests/acceptance/settings/show.feature rename to ui/packages/consul-ui/tests/acceptance/settings/show.feature diff --git a/ui-v2/tests/acceptance/settings/update.feature b/ui/packages/consul-ui/tests/acceptance/settings/update.feature similarity index 100% rename from ui-v2/tests/acceptance/settings/update.feature rename to ui/packages/consul-ui/tests/acceptance/settings/update.feature diff --git a/ui-v2/tests/acceptance/startup.feature b/ui/packages/consul-ui/tests/acceptance/startup.feature similarity index 100% rename from ui-v2/tests/acceptance/startup.feature rename to ui/packages/consul-ui/tests/acceptance/startup.feature diff --git a/ui-v2/tests/acceptance/steps/components/acl-filter-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/acl-filter-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/acl-filter-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/acl-filter-steps.js diff --git a/ui-v2/tests/acceptance/steps/components/catalog-filter-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/catalog-filter-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/catalog-filter-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/catalog-filter-steps.js diff --git a/ui-v2/tests/acceptance/steps/components/catalog-toolbar-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/catalog-toolbar-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/catalog-toolbar-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/catalog-toolbar-steps.js diff --git a/ui-v2/tests/acceptance/steps/components/copy-button-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/copy-button-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/copy-button-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/copy-button-steps.js diff --git a/ui-v2/tests/acceptance/steps/components/kv-filter-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/kv-filter-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/kv-filter-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/kv-filter-steps.js diff --git a/ui-v2/tests/acceptance/steps/components/text-input-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/components/text-input-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/components/text-input-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/components/text-input-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/list-order-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/list-order-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/list-order-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/list-order-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/add-existing-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/add-existing-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/add-existing-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/add-existing-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/add-new-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/add-new-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/add-new-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/add-new-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/nspaces-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/nspaces-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/nspaces-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/nspaces-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/remove-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/remove-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/remove-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/remove-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/reset-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/reset-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/as-many/reset-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/as-many/reset-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/policies/view-management-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/view-management-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/policies/view-management-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/policies/view-management-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/add-existing-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/add-existing-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/add-existing-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/add-existing-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/add-new-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/add-new-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/add-new-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/add-new-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/remove-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/remove-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/as-many/remove-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/as-many/remove-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/roles/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/roles/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/roles/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/anonymous-no-delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/anonymous-no-delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/anonymous-no-delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/anonymous-no-delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/clone-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/clone-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/clone-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/clone-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/legacy/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/legacy/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/legacy/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/legacy/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/login-errors-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/login-errors-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/login-errors-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/login-errors-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/login-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/login-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/login-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/login-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/own-no-delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/own-no-delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/own-no-delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/own-no-delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/tokens/use-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/use-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/tokens/use-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/tokens/use-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/acls/use-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/acls/use-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/acls/use-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/acls/use-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/error-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/error-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/error-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/error-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/forwarding-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/forwarding-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/forwarding-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/forwarding-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/filtered-select-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/filtered-select-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/filtered-select-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/filtered-select-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/form-select-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/form-select-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/form-select-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/form-select-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kv/index/view-kvs-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/permissions/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kv/index/view-kvs-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/permissions/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/sessions/invalidate-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/permissions/warn-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/sessions/invalidate-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/permissions/warn-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/intentions/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/intentions/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/intentions/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/index/view-nodes-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kv/index/view-kvs-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/index/view-nodes-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kv/index/view-kvs-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/edit-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/edit-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/edit-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/edit-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/list-order-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/list-order-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/list-order-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/list-order-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/sessions/invalidate-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/sessions/invalidate-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/sessions/invalidate-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/sessions/invalidate-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/trailing-slash-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/trailing-slash-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/trailing-slash-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/trailing-slash-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/kvs/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/kvs/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/kvs/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/list-blocking-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/list-blocking-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/list-blocking-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/list-blocking-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/empty-ids-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/empty-ids-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/empty-ids-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/empty-ids-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/services/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/index/view-nodes-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/services/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/index/view-nodes-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/no-leader-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/no-leader-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/no-leader-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/no-leader-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/sessions/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/services/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/sessions/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/services/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/index/view-services-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sessions/invalidate-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/index/view-services-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sessions/invalidate-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/error-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sessions/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/error-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sessions/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/show-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/show-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/show-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/show-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nodes/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nodes/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nodes/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/create-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/create-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/create-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/create-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/delete-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/delete-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/delete-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/delete-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/manage-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/manage-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/manage-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/manage-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/nspaces/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/nspaces/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/nspaces/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/dc-switch-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/dc-switch-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/dc-switch-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/dc-switch-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/error-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/error-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/error-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/error-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/index-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/index-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/index-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/index-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/gateway-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/index/view-services-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/gateway-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/index/view-services-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/proxy-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/error-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/proxy-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/error-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/proxyinfo-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/exposed-paths-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/proxyinfo-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/exposed-paths-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/show-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/gateway-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/show-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/gateway-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/sidecar-proxy-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/proxy-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/sidecar-proxy-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/proxy-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/with-proxy-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/show-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/with-proxy-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/show-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/instances/with-sidecar-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/sidecar-proxy-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/instances/with-sidecar-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/sidecar-proxy-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show/upstreams-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/upstreams-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show/upstreams-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/upstreams-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show/dc-switch-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/with-proxy-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show/dc-switch-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/with-proxy-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show/intentions-error-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/with-sidecar-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show/intentions-error-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/instances/with-sidecar-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/list-blocking-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/list-blocking-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/list-blocking-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/list-blocking-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/list-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/list-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/list-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/list-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show-routing-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show-routing-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-routing-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-routing-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show-with-slashes-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show-with-slashes-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-topology-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-topology-steps.js diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-with-slashes-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-with-slashes-steps.js new file mode 100644 index 000000000..ba1093295 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show-with-slashes-steps.js @@ -0,0 +1,10 @@ +import steps from '../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui-v2/tests/acceptance/steps/dc/services/show/intentions-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/dc-switch-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show/intentions-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/dc-switch-steps.js diff --git a/ui-v2/tests/acceptance/steps/dc/services/show/services-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-error-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/dc/services/show/services-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-error-steps.js diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js new file mode 100644 index 000000000..3231912b9 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/intentions-steps.js @@ -0,0 +1,10 @@ +import steps from '../../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/services-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/services-steps.js new file mode 100644 index 000000000..3231912b9 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/services-steps.js @@ -0,0 +1,10 @@ +import steps from '../../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/upstreams-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/upstreams-steps.js new file mode 100644 index 000000000..3231912b9 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/show/upstreams-steps.js @@ -0,0 +1,10 @@ +import steps from '../../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui/packages/consul-ui/tests/acceptance/steps/dc/services/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/sorting-steps.js new file mode 100644 index 000000000..ba1093295 --- /dev/null +++ b/ui/packages/consul-ui/tests/acceptance/steps/dc/services/sorting-steps.js @@ -0,0 +1,10 @@ +import steps from '../../steps'; + +// step definitions that are shared between features should be moved to the +// tests/acceptance/steps/steps.js file + +export default function(assert) { + return steps(assert).then('I should find a file', function() { + assert.ok(true, this.step); + }); +} diff --git a/ui-v2/tests/acceptance/steps/deleting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/deleting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/deleting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/deleting-steps.js diff --git a/ui-v2/tests/acceptance/steps/index-forwarding-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/index-forwarding-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/index-forwarding-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/index-forwarding-steps.js diff --git a/ui-v2/tests/acceptance/steps/login-errors-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/login-errors-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/login-errors-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/login-errors-steps.js diff --git a/ui-v2/tests/acceptance/steps/login-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/login-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/login-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/login-steps.js diff --git a/ui-v2/tests/acceptance/steps/nodes/sorting-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/nodes/sorting-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/nodes/sorting-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/nodes/sorting-steps.js diff --git a/ui-v2/tests/acceptance/steps/page-navigation-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/page-navigation-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/page-navigation-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/page-navigation-steps.js diff --git a/ui-v2/tests/acceptance/steps/settings/show-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/settings/show-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/settings/show-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/settings/show-steps.js diff --git a/ui-v2/tests/acceptance/steps/settings/update-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/settings/update-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/settings/update-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/settings/update-steps.js diff --git a/ui-v2/tests/acceptance/steps/startup-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/startup-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/startup-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/startup-steps.js diff --git a/ui-v2/tests/acceptance/steps/steps.js b/ui/packages/consul-ui/tests/acceptance/steps/steps.js similarity index 73% rename from ui-v2/tests/acceptance/steps/steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/steps.js index 248f5e30d..6f573f2c0 100644 --- a/ui-v2/tests/acceptance/steps/steps.js +++ b/ui/packages/consul-ui/tests/acceptance/steps/steps.js @@ -1,17 +1,19 @@ +import Inflector from 'ember-inflector'; +import helpers from '@ember/test-helpers'; +import $ from '-jquery'; + import steps from 'consul-ui/tests/steps'; import pages from 'consul-ui/tests/pages'; -import Inflector from 'ember-inflector'; -import utils from '@ember/test-helpers'; -import $ from '-jquery'; import api from 'consul-ui/tests/helpers/api'; -export default function({ assert, library }) { +export default function({ assert, utils, library }) { return steps({ assert, + utils, library, pages, - utils, + helpers, api, Inflector, $, diff --git a/ui-v2/tests/acceptance/steps/submit-blank-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/submit-blank-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/submit-blank-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/submit-blank-steps.js diff --git a/ui-v2/tests/acceptance/steps/token-header-steps.js b/ui/packages/consul-ui/tests/acceptance/steps/token-header-steps.js similarity index 100% rename from ui-v2/tests/acceptance/steps/token-header-steps.js rename to ui/packages/consul-ui/tests/acceptance/steps/token-header-steps.js diff --git a/ui-v2/tests/acceptance/submit-blank.feature b/ui/packages/consul-ui/tests/acceptance/submit-blank.feature similarity index 100% rename from ui-v2/tests/acceptance/submit-blank.feature rename to ui/packages/consul-ui/tests/acceptance/submit-blank.feature diff --git a/ui-v2/tests/acceptance/token-header.feature b/ui/packages/consul-ui/tests/acceptance/token-header.feature similarity index 100% rename from ui-v2/tests/acceptance/token-header.feature rename to ui/packages/consul-ui/tests/acceptance/token-header.feature diff --git a/ui-v2/tests/dictionary.js b/ui/packages/consul-ui/tests/dictionary.js similarity index 93% rename from ui-v2/tests/dictionary.js rename to ui/packages/consul-ui/tests/dictionary.js index 3a031810b..6e5bf12e4 100644 --- a/ui-v2/tests/dictionary.js +++ b/ui/packages/consul-ui/tests/dictionary.js @@ -2,8 +2,12 @@ import Yadda from 'yadda'; import YAML from 'js-yaml'; import { env } from '../env'; -export default function(annotations, nspace, dict = new Yadda.Dictionary()) { +export default utils => (annotations, nspace, dict = new Yadda.Dictionary()) => { dict + .define('pageObject', /(\S+)/, function(path, cb) { + const $el = utils.find(path); + cb(null, $el); + }) .define('model', /(\w+)/, function(model, cb) { switch (model) { case 'datacenter': @@ -89,4 +93,4 @@ export default function(annotations, nspace, dict = new Yadda.Dictionary()) { }); } return dict; -} +}; diff --git a/ui/packages/consul-ui/tests/helpers/.gitkeep b/ui/packages/consul-ui/tests/helpers/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/ui-v2/tests/helpers/api.js b/ui/packages/consul-ui/tests/helpers/api.js similarity index 100% rename from ui-v2/tests/helpers/api.js rename to ui/packages/consul-ui/tests/helpers/api.js diff --git a/ui-v2/tests/helpers/destroy-app.js b/ui/packages/consul-ui/tests/helpers/destroy-app.js similarity index 100% rename from ui-v2/tests/helpers/destroy-app.js rename to ui/packages/consul-ui/tests/helpers/destroy-app.js diff --git a/ui-v2/tests/helpers/flash-message.js b/ui/packages/consul-ui/tests/helpers/flash-message.js similarity index 100% rename from ui-v2/tests/helpers/flash-message.js rename to ui/packages/consul-ui/tests/helpers/flash-message.js diff --git a/ui-v2/tests/helpers/get-nspace-runner.js b/ui/packages/consul-ui/tests/helpers/get-nspace-runner.js similarity index 100% rename from ui-v2/tests/helpers/get-nspace-runner.js rename to ui/packages/consul-ui/tests/helpers/get-nspace-runner.js diff --git a/ui-v2/tests/helpers/measure.js b/ui/packages/consul-ui/tests/helpers/measure.js similarity index 100% rename from ui-v2/tests/helpers/measure.js rename to ui/packages/consul-ui/tests/helpers/measure.js diff --git a/ui-v2/tests/helpers/module-for-acceptance.js b/ui/packages/consul-ui/tests/helpers/module-for-acceptance.js similarity index 100% rename from ui-v2/tests/helpers/module-for-acceptance.js rename to ui/packages/consul-ui/tests/helpers/module-for-acceptance.js diff --git a/ui-v2/tests/helpers/normalizers.js b/ui/packages/consul-ui/tests/helpers/normalizers.js similarity index 100% rename from ui-v2/tests/helpers/normalizers.js rename to ui/packages/consul-ui/tests/helpers/normalizers.js diff --git a/ui/packages/consul-ui/tests/helpers/page.js b/ui/packages/consul-ui/tests/helpers/page.js new file mode 100644 index 000000000..1fc567fdd --- /dev/null +++ b/ui/packages/consul-ui/tests/helpers/page.js @@ -0,0 +1,39 @@ +const mb = function(path) { + return function(obj) { + return ( + path.map(function(prop) { + obj = obj || {}; + if (isNaN(parseInt(prop))) { + return (obj = obj[prop]); + } else { + return (obj = obj.objectAt(parseInt(prop))); + } + }) && obj + ); + }; +}; +let currentPage; +export const getCurrentPage = function() { + return currentPage; +}; +export const setCurrentPage = function(page) { + currentPage = page; + return page; +}; +export const find = function(path, page = currentPage) { + const parts = path.split('.'); + const last = parts.pop(); + let obj; + let parent = mb(parts)(page) || page; + if (typeof parent.objectAt === 'function') { + parent = parent.objectAt(0); + } + obj = parent[last]; + if (typeof obj === 'undefined') { + throw new Error(`PageObject not found: The '${path}' object doesn't exist`); + } + if (typeof obj === 'function') { + obj = obj.bind(parent); + } + return obj; +}; diff --git a/ui-v2/tests/helpers/repo.js b/ui/packages/consul-ui/tests/helpers/repo.js similarity index 100% rename from ui-v2/tests/helpers/repo.js rename to ui/packages/consul-ui/tests/helpers/repo.js diff --git a/ui-v2/tests/helpers/set-cookies.js b/ui/packages/consul-ui/tests/helpers/set-cookies.js similarity index 100% rename from ui-v2/tests/helpers/set-cookies.js rename to ui/packages/consul-ui/tests/helpers/set-cookies.js diff --git a/ui-v2/tests/helpers/stub-super.js b/ui/packages/consul-ui/tests/helpers/stub-super.js similarity index 100% rename from ui-v2/tests/helpers/stub-super.js rename to ui/packages/consul-ui/tests/helpers/stub-super.js diff --git a/ui-v2/tests/helpers/type-to-url.js b/ui/packages/consul-ui/tests/helpers/type-to-url.js similarity index 100% rename from ui-v2/tests/helpers/type-to-url.js rename to ui/packages/consul-ui/tests/helpers/type-to-url.js diff --git a/ui-v2/tests/helpers/yadda-annotations.js b/ui/packages/consul-ui/tests/helpers/yadda-annotations.js similarity index 87% rename from ui-v2/tests/helpers/yadda-annotations.js rename to ui/packages/consul-ui/tests/helpers/yadda-annotations.js index 9c7549b4f..40056ca05 100644 --- a/ui-v2/tests/helpers/yadda-annotations.js +++ b/ui/packages/consul-ui/tests/helpers/yadda-annotations.js @@ -4,7 +4,9 @@ import Yadda from 'yadda'; import { env } from '../../env'; import api from './api'; -import getDictionary from '../dictionary'; +import utils from './page'; +import dictionary from '../dictionary'; +const getDictionary = dictionary(utils); const staticClassList = [...document.documentElement.classList]; const reset = function() { @@ -46,21 +48,22 @@ const checkAnnotations = function(annotations, isScenario) { if (env('CONSUL_NSPACES_ENABLED')) { if (!annotations.notnamespaceable) { return function(scenario, feature, yadda, yaddaAnnotations, library) { + const stepDefinitions = library.default; ['', 'default', 'team-1', undefined].forEach(function(item) { test(`Scenario: ${ scenario.title } with the ${item === '' ? 'empty' : typeof item === 'undefined' ? 'undefined' : item} namespace set`, function(assert) { - const libraries = library.default({ - assert: assert, - library: Yadda.localisation.English.library(getDictionary(annotations, item)), - }); const scenarioContext = { ctx: { nspace: item, }, }; - const result = runTest(this, libraries, scenario.steps, scenarioContext); - return result; + const libraries = stepDefinitions({ + assert: assert, + utils: utils, + library: Yadda.localisation.English.library(getDictionary(annotations, item)), + }); + return runTest(this, libraries, scenario.steps, scenarioContext); }); }); }; @@ -70,14 +73,16 @@ const checkAnnotations = function(annotations, isScenario) { } else { if (!annotations.onlynamespaceable) { return function(scenario, feature, yadda, yaddaAnnotations, library) { + const stepDefinitions = library.default; test(`Scenario: ${scenario.title}`, function(assert) { - const libraries = library.default({ - assert: assert, - library: Yadda.localisation.English.library(getDictionary(annotations)), - }); const scenarioContext = { ctx: {}, }; + const libraries = stepDefinitions({ + assert: assert, + utils: utils, + library: Yadda.localisation.English.library(getDictionary(annotations)), + }); return runTest(this, libraries, scenario.steps, scenarioContext); }); }; diff --git a/ui-v2/tests/index.html b/ui/packages/consul-ui/tests/index.html similarity index 100% rename from ui-v2/tests/index.html rename to ui/packages/consul-ui/tests/index.html diff --git a/ui-v2/tests/integration/adapters/acl-test.js b/ui/packages/consul-ui/tests/integration/adapters/acl-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/acl-test.js rename to ui/packages/consul-ui/tests/integration/adapters/acl-test.js diff --git a/ui-v2/tests/integration/adapters/coordinate-test.js b/ui/packages/consul-ui/tests/integration/adapters/coordinate-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/coordinate-test.js rename to ui/packages/consul-ui/tests/integration/adapters/coordinate-test.js diff --git a/ui-v2/tests/integration/adapters/dc-test.js b/ui/packages/consul-ui/tests/integration/adapters/dc-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/dc-test.js rename to ui/packages/consul-ui/tests/integration/adapters/dc-test.js diff --git a/ui-v2/tests/integration/adapters/discovery-chain-test.js b/ui/packages/consul-ui/tests/integration/adapters/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/discovery-chain-test.js rename to ui/packages/consul-ui/tests/integration/adapters/discovery-chain-test.js diff --git a/ui-v2/tests/integration/adapters/intention-test.js b/ui/packages/consul-ui/tests/integration/adapters/intention-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/intention-test.js rename to ui/packages/consul-ui/tests/integration/adapters/intention-test.js diff --git a/ui-v2/tests/integration/adapters/kv-test.js b/ui/packages/consul-ui/tests/integration/adapters/kv-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/kv-test.js rename to ui/packages/consul-ui/tests/integration/adapters/kv-test.js diff --git a/ui-v2/tests/integration/adapters/node-test.js b/ui/packages/consul-ui/tests/integration/adapters/node-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/node-test.js rename to ui/packages/consul-ui/tests/integration/adapters/node-test.js diff --git a/ui-v2/tests/integration/adapters/nspace-test.js b/ui/packages/consul-ui/tests/integration/adapters/nspace-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/nspace-test.js rename to ui/packages/consul-ui/tests/integration/adapters/nspace-test.js diff --git a/ui-v2/tests/integration/adapters/oidc-provider-test.js b/ui/packages/consul-ui/tests/integration/adapters/oidc-provider-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/oidc-provider-test.js rename to ui/packages/consul-ui/tests/integration/adapters/oidc-provider-test.js diff --git a/ui-v2/tests/integration/adapters/policy-test.js b/ui/packages/consul-ui/tests/integration/adapters/policy-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/policy-test.js rename to ui/packages/consul-ui/tests/integration/adapters/policy-test.js diff --git a/ui-v2/tests/integration/adapters/role-test.js b/ui/packages/consul-ui/tests/integration/adapters/role-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/role-test.js rename to ui/packages/consul-ui/tests/integration/adapters/role-test.js diff --git a/ui-v2/tests/integration/adapters/service-instance-test.js b/ui/packages/consul-ui/tests/integration/adapters/service-instance-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/service-instance-test.js rename to ui/packages/consul-ui/tests/integration/adapters/service-instance-test.js diff --git a/ui-v2/tests/integration/adapters/service-test.js b/ui/packages/consul-ui/tests/integration/adapters/service-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/service-test.js rename to ui/packages/consul-ui/tests/integration/adapters/service-test.js diff --git a/ui-v2/tests/integration/adapters/session-test.js b/ui/packages/consul-ui/tests/integration/adapters/session-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/session-test.js rename to ui/packages/consul-ui/tests/integration/adapters/session-test.js diff --git a/ui-v2/tests/integration/adapters/token-test.js b/ui/packages/consul-ui/tests/integration/adapters/token-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/token-test.js rename to ui/packages/consul-ui/tests/integration/adapters/token-test.js diff --git a/ui-v2/tests/integration/adapters/topology-test.js b/ui/packages/consul-ui/tests/integration/adapters/topology-test.js similarity index 100% rename from ui-v2/tests/integration/adapters/topology-test.js rename to ui/packages/consul-ui/tests/integration/adapters/topology-test.js diff --git a/ui-v2/tests/integration/components/app-view-test.js b/ui/packages/consul-ui/tests/integration/components/app-view-test.js similarity index 100% rename from ui-v2/tests/integration/components/app-view-test.js rename to ui/packages/consul-ui/tests/integration/components/app-view-test.js diff --git a/ui-v2/tests/integration/components/aria-menu-test.js b/ui/packages/consul-ui/tests/integration/components/aria-menu-test.js similarity index 100% rename from ui-v2/tests/integration/components/aria-menu-test.js rename to ui/packages/consul-ui/tests/integration/components/aria-menu-test.js diff --git a/ui-v2/tests/integration/components/auth-dialog-test.js b/ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js similarity index 100% rename from ui-v2/tests/integration/components/auth-dialog-test.js rename to ui/packages/consul-ui/tests/integration/components/auth-dialog-test.js diff --git a/ui-v2/tests/integration/components/auth-profile-test.js b/ui/packages/consul-ui/tests/integration/components/auth-profile-test.js similarity index 100% rename from ui-v2/tests/integration/components/auth-profile-test.js rename to ui/packages/consul-ui/tests/integration/components/auth-profile-test.js diff --git a/ui-v2/tests/integration/components/changeable-set-test.js b/ui/packages/consul-ui/tests/integration/components/changeable-set-test.js similarity index 100% rename from ui-v2/tests/integration/components/changeable-set-test.js rename to ui/packages/consul-ui/tests/integration/components/changeable-set-test.js diff --git a/ui-v2/tests/integration/components/code-editor-test.js b/ui/packages/consul-ui/tests/integration/components/code-editor-test.js similarity index 100% rename from ui-v2/tests/integration/components/code-editor-test.js rename to ui/packages/consul-ui/tests/integration/components/code-editor-test.js diff --git a/ui-v2/tests/integration/components/confirmation-dialog-test.js b/ui/packages/consul-ui/tests/integration/components/confirmation-dialog-test.js similarity index 100% rename from ui-v2/tests/integration/components/confirmation-dialog-test.js rename to ui/packages/consul-ui/tests/integration/components/confirmation-dialog-test.js diff --git a/ui-v2/tests/integration/components/discovery-chain-test.js b/ui/packages/consul-ui/tests/integration/components/consul/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/integration/components/discovery-chain-test.js rename to ui/packages/consul-ui/tests/integration/components/consul/discovery-chain-test.js diff --git a/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/form-test.js b/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/form-test.js new file mode 100644 index 000000000..5584cadd9 --- /dev/null +++ b/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/form-test.js @@ -0,0 +1,32 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +import { create } from 'ember-cli-page-object'; +import obj from 'consul-ui/components/consul/intention/permission/form/pageobject'; + +const PermissionForm = create(obj()); +module('Integration | Component | consul/intention/permission/form', function(hooks) { + setupRenderingTest(hooks); + + test('it renders', async function(assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + + await render(hbs` + + + + `); + + await PermissionForm.Action.option.Deny.click(); + await PermissionForm.PathType.click(); + await PermissionForm.PathType.option.PrefixedBy.click(); + assert.ok(PermissionForm.Path.present); + await PermissionForm.Path.fillIn('/path'); + await PermissionForm.AllMethods.click(); + }); +}); diff --git a/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/header/form-test.js b/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/header/form-test.js new file mode 100644 index 000000000..7bb71894c --- /dev/null +++ b/ui/packages/consul-ui/tests/integration/components/consul/intention/permission/header/form-test.js @@ -0,0 +1,42 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +import { create } from 'ember-cli-page-object'; + +import obj from 'consul-ui/components/consul/intention/permission/header/form/pageobject'; + +const PermissionHeaderForm = create(obj()); + +module('Integration | Component | consul/intention/permission/header/form', function(hooks) { + setupRenderingTest(hooks); + + test('when IsPresent is selected we only show validate the header name', async function(assert) { + this.set('PermissionHeaderForm', PermissionHeaderForm); + // Handle any actions with this.set('myAction', function(val) { ... }); + + await render(hbs` + + + + `); + + assert.ok(PermissionHeaderForm.Name.present); + assert.ok(PermissionHeaderForm.Value.present); + + await PermissionHeaderForm.HeaderType.click(); + await PermissionHeaderForm.HeaderType.option.IsPresent.click(); + + assert.notOk( + PermissionHeaderForm.Value.present, + `Value isn't present when IsPresent is selected` + ); + + await PermissionHeaderForm.Name.fillIn('header'); + + assert.ok(PermissionHeaderForm.api.isDirty); + }); +}); diff --git a/ui-v2/tests/integration/components/data-source-test.js b/ui/packages/consul-ui/tests/integration/components/data-source-test.js similarity index 100% rename from ui-v2/tests/integration/components/data-source-test.js rename to ui/packages/consul-ui/tests/integration/components/data-source-test.js diff --git a/ui-v2/tests/integration/components/delete-confirmation-test.js b/ui/packages/consul-ui/tests/integration/components/delete-confirmation-test.js similarity index 100% rename from ui-v2/tests/integration/components/delete-confirmation-test.js rename to ui/packages/consul-ui/tests/integration/components/delete-confirmation-test.js diff --git a/ui-v2/tests/integration/components/event-source-test.js b/ui/packages/consul-ui/tests/integration/components/event-source-test.js similarity index 100% rename from ui-v2/tests/integration/components/event-source-test.js rename to ui/packages/consul-ui/tests/integration/components/event-source-test.js diff --git a/ui-v2/tests/integration/components/freetext-filter-test.js b/ui/packages/consul-ui/tests/integration/components/freetext-filter-test.js similarity index 100% rename from ui-v2/tests/integration/components/freetext-filter-test.js rename to ui/packages/consul-ui/tests/integration/components/freetext-filter-test.js diff --git a/ui-v2/tests/integration/components/hashicorp-consul-test.js b/ui/packages/consul-ui/tests/integration/components/hashicorp-consul-test.js similarity index 100% rename from ui-v2/tests/integration/components/hashicorp-consul-test.js rename to ui/packages/consul-ui/tests/integration/components/hashicorp-consul-test.js diff --git a/ui-v2/tests/integration/components/healthcheck-list-test.js b/ui/packages/consul-ui/tests/integration/components/healthcheck-list-test.js similarity index 100% rename from ui-v2/tests/integration/components/healthcheck-list-test.js rename to ui/packages/consul-ui/tests/integration/components/healthcheck-list-test.js diff --git a/ui-v2/tests/integration/components/jwt-source-test.js b/ui/packages/consul-ui/tests/integration/components/jwt-source-test.js similarity index 100% rename from ui-v2/tests/integration/components/jwt-source-test.js rename to ui/packages/consul-ui/tests/integration/components/jwt-source-test.js diff --git a/ui-v2/tests/integration/components/list-collection-test.js b/ui/packages/consul-ui/tests/integration/components/list-collection-test.js similarity index 100% rename from ui-v2/tests/integration/components/list-collection-test.js rename to ui/packages/consul-ui/tests/integration/components/list-collection-test.js diff --git a/ui-v2/tests/integration/components/oidc-select-test.js b/ui/packages/consul-ui/tests/integration/components/oidc-select-test.js similarity index 100% rename from ui-v2/tests/integration/components/oidc-select-test.js rename to ui/packages/consul-ui/tests/integration/components/oidc-select-test.js diff --git a/ui-v2/tests/integration/components/popover-menu-test.js b/ui/packages/consul-ui/tests/integration/components/popover-menu-test.js similarity index 100% rename from ui-v2/tests/integration/components/popover-menu-test.js rename to ui/packages/consul-ui/tests/integration/components/popover-menu-test.js diff --git a/ui-v2/tests/integration/components/radio-group-test.js b/ui/packages/consul-ui/tests/integration/components/radio-group-test.js similarity index 100% rename from ui-v2/tests/integration/components/radio-group-test.js rename to ui/packages/consul-ui/tests/integration/components/radio-group-test.js diff --git a/ui-v2/tests/integration/components/ref-test.js b/ui/packages/consul-ui/tests/integration/components/ref-test.js similarity index 100% rename from ui-v2/tests/integration/components/ref-test.js rename to ui/packages/consul-ui/tests/integration/components/ref-test.js diff --git a/ui-v2/tests/integration/components/resolver-card-test.js b/ui/packages/consul-ui/tests/integration/components/resolver-card-test.js similarity index 100% rename from ui-v2/tests/integration/components/resolver-card-test.js rename to ui/packages/consul-ui/tests/integration/components/resolver-card-test.js diff --git a/ui-v2/tests/integration/components/route-card-test.js b/ui/packages/consul-ui/tests/integration/components/route-card-test.js similarity index 100% rename from ui-v2/tests/integration/components/route-card-test.js rename to ui/packages/consul-ui/tests/integration/components/route-card-test.js diff --git a/ui-v2/tests/integration/components/search-bar-test.js b/ui/packages/consul-ui/tests/integration/components/search-bar-test.js similarity index 100% rename from ui-v2/tests/integration/components/search-bar-test.js rename to ui/packages/consul-ui/tests/integration/components/search-bar-test.js diff --git a/ui-v2/tests/integration/components/secret-button-test.js b/ui/packages/consul-ui/tests/integration/components/secret-button-test.js similarity index 100% rename from ui-v2/tests/integration/components/secret-button-test.js rename to ui/packages/consul-ui/tests/integration/components/secret-button-test.js diff --git a/ui-v2/tests/integration/components/service-identity-test.js b/ui/packages/consul-ui/tests/integration/components/service-identity-test.js similarity index 100% rename from ui-v2/tests/integration/components/service-identity-test.js rename to ui/packages/consul-ui/tests/integration/components/service-identity-test.js diff --git a/ui-v2/tests/integration/components/splitter-card-test.js b/ui/packages/consul-ui/tests/integration/components/splitter-card-test.js similarity index 100% rename from ui-v2/tests/integration/components/splitter-card-test.js rename to ui/packages/consul-ui/tests/integration/components/splitter-card-test.js diff --git a/ui-v2/tests/integration/components/state-test.js b/ui/packages/consul-ui/tests/integration/components/state-test.js similarity index 100% rename from ui-v2/tests/integration/components/state-test.js rename to ui/packages/consul-ui/tests/integration/components/state-test.js diff --git a/ui-v2/tests/integration/components/tab-nav-test.js b/ui/packages/consul-ui/tests/integration/components/tab-nav-test.js similarity index 100% rename from ui-v2/tests/integration/components/tab-nav-test.js rename to ui/packages/consul-ui/tests/integration/components/tab-nav-test.js diff --git a/ui-v2/tests/integration/components/tab-section-test.js b/ui/packages/consul-ui/tests/integration/components/tab-section-test.js similarity index 100% rename from ui-v2/tests/integration/components/tab-section-test.js rename to ui/packages/consul-ui/tests/integration/components/tab-section-test.js diff --git a/ui-v2/tests/integration/components/tabular-collection-test.js b/ui/packages/consul-ui/tests/integration/components/tabular-collection-test.js similarity index 100% rename from ui-v2/tests/integration/components/tabular-collection-test.js rename to ui/packages/consul-ui/tests/integration/components/tabular-collection-test.js diff --git a/ui-v2/tests/integration/components/tabular-details-test.js b/ui/packages/consul-ui/tests/integration/components/tabular-details-test.js similarity index 100% rename from ui-v2/tests/integration/components/tabular-details-test.js rename to ui/packages/consul-ui/tests/integration/components/tabular-details-test.js diff --git a/ui-v2/tests/integration/components/tag-list-test.js b/ui/packages/consul-ui/tests/integration/components/tag-list-test.js similarity index 100% rename from ui-v2/tests/integration/components/tag-list-test.js rename to ui/packages/consul-ui/tests/integration/components/tag-list-test.js diff --git a/ui-v2/tests/integration/components/toggle-button-test.js b/ui/packages/consul-ui/tests/integration/components/toggle-button-test.js similarity index 100% rename from ui-v2/tests/integration/components/toggle-button-test.js rename to ui/packages/consul-ui/tests/integration/components/toggle-button-test.js diff --git a/ui-v2/tests/integration/components/token-list-test.js b/ui/packages/consul-ui/tests/integration/components/token-list-test.js similarity index 100% rename from ui-v2/tests/integration/components/token-list-test.js rename to ui/packages/consul-ui/tests/integration/components/token-list-test.js diff --git a/ui-v2/tests/integration/components/tooltip-test.js b/ui/packages/consul-ui/tests/integration/components/tooltip-test.js similarity index 100% rename from ui-v2/tests/integration/components/tooltip-test.js rename to ui/packages/consul-ui/tests/integration/components/tooltip-test.js diff --git a/ui-v2/tests/integration/helpers/atob-test.js b/ui/packages/consul-ui/tests/integration/helpers/atob-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/atob-test.js rename to ui/packages/consul-ui/tests/integration/helpers/atob-test.js diff --git a/ui-v2/tests/integration/helpers/default-test.js b/ui/packages/consul-ui/tests/integration/helpers/default-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/default-test.js rename to ui/packages/consul-ui/tests/integration/helpers/default-test.js diff --git a/ui-v2/tests/integration/helpers/dom-position-test.js b/ui/packages/consul-ui/tests/integration/helpers/dom-position-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/dom-position-test.js rename to ui/packages/consul-ui/tests/integration/helpers/dom-position-test.js diff --git a/ui-v2/tests/integration/helpers/env-test.js b/ui/packages/consul-ui/tests/integration/helpers/env-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/env-test.js rename to ui/packages/consul-ui/tests/integration/helpers/env-test.js diff --git a/ui-v2/tests/integration/helpers/format-number-test.js b/ui/packages/consul-ui/tests/integration/helpers/format-number-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/format-number-test.js rename to ui/packages/consul-ui/tests/integration/helpers/format-number-test.js diff --git a/ui-v2/tests/integration/helpers/format-time-test.js b/ui/packages/consul-ui/tests/integration/helpers/format-time-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/format-time-test.js rename to ui/packages/consul-ui/tests/integration/helpers/format-time-test.js diff --git a/ui-v2/tests/integration/helpers/href-mut-test.js b/ui/packages/consul-ui/tests/integration/helpers/href-mut-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/href-mut-test.js rename to ui/packages/consul-ui/tests/integration/helpers/href-mut-test.js diff --git a/ui-v2/tests/integration/helpers/is-href-test.js b/ui/packages/consul-ui/tests/integration/helpers/is-href-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/is-href-test.js rename to ui/packages/consul-ui/tests/integration/helpers/is-href-test.js diff --git a/ui-v2/tests/integration/helpers/last-test.js b/ui/packages/consul-ui/tests/integration/helpers/last-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/last-test.js rename to ui/packages/consul-ui/tests/integration/helpers/last-test.js diff --git a/ui-v2/tests/integration/helpers/left-trim-test.js b/ui/packages/consul-ui/tests/integration/helpers/left-trim-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/left-trim-test.js rename to ui/packages/consul-ui/tests/integration/helpers/left-trim-test.js diff --git a/ui-v2/tests/integration/helpers/object-entries-test.js b/ui/packages/consul-ui/tests/integration/helpers/object-entries-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/object-entries-test.js rename to ui/packages/consul-ui/tests/integration/helpers/object-entries-test.js diff --git a/ui-v2/tests/integration/helpers/policy/datacenters-test.js b/ui/packages/consul-ui/tests/integration/helpers/policy/datacenters-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/policy/datacenters-test.js rename to ui/packages/consul-ui/tests/integration/helpers/policy/datacenters-test.js diff --git a/ui-v2/tests/integration/helpers/policy/typeof-test.js b/ui/packages/consul-ui/tests/integration/helpers/policy/typeof-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/policy/typeof-test.js rename to ui/packages/consul-ui/tests/integration/helpers/policy/typeof-test.js diff --git a/ui-v2/tests/integration/helpers/render-template-test.js b/ui/packages/consul-ui/tests/integration/helpers/render-template-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/render-template-test.js rename to ui/packages/consul-ui/tests/integration/helpers/render-template-test.js diff --git a/ui-v2/tests/integration/helpers/right-trim-test.js b/ui/packages/consul-ui/tests/integration/helpers/right-trim-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/right-trim-test.js rename to ui/packages/consul-ui/tests/integration/helpers/right-trim-test.js diff --git a/ui-v2/tests/integration/helpers/route-match-test.js b/ui/packages/consul-ui/tests/integration/helpers/route-match-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/route-match-test.js rename to ui/packages/consul-ui/tests/integration/helpers/route-match-test.js diff --git a/ui-v2/tests/integration/helpers/searchable-test.js b/ui/packages/consul-ui/tests/integration/helpers/searchable-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/searchable-test.js rename to ui/packages/consul-ui/tests/integration/helpers/searchable-test.js diff --git a/ui-v2/tests/integration/helpers/service/external-source-test.js b/ui/packages/consul-ui/tests/integration/helpers/service/external-source-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/service/external-source-test.js rename to ui/packages/consul-ui/tests/integration/helpers/service/external-source-test.js diff --git a/ui-v2/tests/integration/helpers/service/health-percentage-test.js b/ui/packages/consul-ui/tests/integration/helpers/service/health-percentage-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/service/health-percentage-test.js rename to ui/packages/consul-ui/tests/integration/helpers/service/health-percentage-test.js diff --git a/ui-v2/tests/integration/helpers/service/intention-permissions-test.js b/ui/packages/consul-ui/tests/integration/helpers/service/intention-permissions-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/service/intention-permissions-test.js rename to ui/packages/consul-ui/tests/integration/helpers/service/intention-permissions-test.js diff --git a/ui-v2/tests/integration/helpers/slugify-test.js b/ui/packages/consul-ui/tests/integration/helpers/slugify-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/slugify-test.js rename to ui/packages/consul-ui/tests/integration/helpers/slugify-test.js diff --git a/ui-v2/tests/integration/helpers/split-test.js b/ui/packages/consul-ui/tests/integration/helpers/split-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/split-test.js rename to ui/packages/consul-ui/tests/integration/helpers/split-test.js diff --git a/ui-v2/tests/integration/helpers/starts-with-test.js b/ui/packages/consul-ui/tests/integration/helpers/starts-with-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/starts-with-test.js rename to ui/packages/consul-ui/tests/integration/helpers/starts-with-test.js diff --git a/ui-v2/tests/integration/helpers/state-matches-test.js b/ui/packages/consul-ui/tests/integration/helpers/state-matches-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/state-matches-test.js rename to ui/packages/consul-ui/tests/integration/helpers/state-matches-test.js diff --git a/ui-v2/tests/integration/helpers/substr-test.js b/ui/packages/consul-ui/tests/integration/helpers/substr-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/substr-test.js rename to ui/packages/consul-ui/tests/integration/helpers/substr-test.js diff --git a/ui-v2/tests/integration/helpers/svg-curve-test.js b/ui/packages/consul-ui/tests/integration/helpers/svg-curve-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/svg-curve-test.js rename to ui/packages/consul-ui/tests/integration/helpers/svg-curve-test.js diff --git a/ui-v2/tests/integration/helpers/token/is-anonymous-test.js b/ui/packages/consul-ui/tests/integration/helpers/token/is-anonymous-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/token/is-anonymous-test.js rename to ui/packages/consul-ui/tests/integration/helpers/token/is-anonymous-test.js diff --git a/ui-v2/tests/integration/helpers/token/is-legacy-test.js b/ui/packages/consul-ui/tests/integration/helpers/token/is-legacy-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/token/is-legacy-test.js rename to ui/packages/consul-ui/tests/integration/helpers/token/is-legacy-test.js diff --git a/ui-v2/tests/integration/helpers/tween-to-test.js b/ui/packages/consul-ui/tests/integration/helpers/tween-to-test.js similarity index 100% rename from ui-v2/tests/integration/helpers/tween-to-test.js rename to ui/packages/consul-ui/tests/integration/helpers/tween-to-test.js diff --git a/ui-v2/tests/integration/serializers/acl-test.js b/ui/packages/consul-ui/tests/integration/serializers/acl-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/acl-test.js rename to ui/packages/consul-ui/tests/integration/serializers/acl-test.js diff --git a/ui-v2/tests/integration/serializers/coordinate-test.js b/ui/packages/consul-ui/tests/integration/serializers/coordinate-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/coordinate-test.js rename to ui/packages/consul-ui/tests/integration/serializers/coordinate-test.js diff --git a/ui-v2/tests/integration/serializers/dc-test.js b/ui/packages/consul-ui/tests/integration/serializers/dc-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/dc-test.js rename to ui/packages/consul-ui/tests/integration/serializers/dc-test.js diff --git a/ui-v2/tests/integration/serializers/discovery-chain-test.js b/ui/packages/consul-ui/tests/integration/serializers/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/discovery-chain-test.js rename to ui/packages/consul-ui/tests/integration/serializers/discovery-chain-test.js diff --git a/ui-v2/tests/integration/serializers/intention-test.js b/ui/packages/consul-ui/tests/integration/serializers/intention-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/intention-test.js rename to ui/packages/consul-ui/tests/integration/serializers/intention-test.js diff --git a/ui-v2/tests/integration/serializers/kv-test.js b/ui/packages/consul-ui/tests/integration/serializers/kv-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/kv-test.js rename to ui/packages/consul-ui/tests/integration/serializers/kv-test.js diff --git a/ui-v2/tests/integration/serializers/node-test.js b/ui/packages/consul-ui/tests/integration/serializers/node-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/node-test.js rename to ui/packages/consul-ui/tests/integration/serializers/node-test.js diff --git a/ui-v2/tests/integration/serializers/nspace-test.js b/ui/packages/consul-ui/tests/integration/serializers/nspace-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/nspace-test.js rename to ui/packages/consul-ui/tests/integration/serializers/nspace-test.js diff --git a/ui-v2/tests/integration/serializers/oidc-provider-test.js b/ui/packages/consul-ui/tests/integration/serializers/oidc-provider-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/oidc-provider-test.js rename to ui/packages/consul-ui/tests/integration/serializers/oidc-provider-test.js diff --git a/ui-v2/tests/integration/serializers/policy-test.js b/ui/packages/consul-ui/tests/integration/serializers/policy-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/policy-test.js rename to ui/packages/consul-ui/tests/integration/serializers/policy-test.js diff --git a/ui-v2/tests/integration/serializers/role-test.js b/ui/packages/consul-ui/tests/integration/serializers/role-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/role-test.js rename to ui/packages/consul-ui/tests/integration/serializers/role-test.js diff --git a/ui-v2/tests/integration/serializers/service-instance-test.js b/ui/packages/consul-ui/tests/integration/serializers/service-instance-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/service-instance-test.js rename to ui/packages/consul-ui/tests/integration/serializers/service-instance-test.js diff --git a/ui-v2/tests/integration/serializers/service-test.js b/ui/packages/consul-ui/tests/integration/serializers/service-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/service-test.js rename to ui/packages/consul-ui/tests/integration/serializers/service-test.js diff --git a/ui-v2/tests/integration/serializers/session-test.js b/ui/packages/consul-ui/tests/integration/serializers/session-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/session-test.js rename to ui/packages/consul-ui/tests/integration/serializers/session-test.js diff --git a/ui-v2/tests/integration/serializers/token-test.js b/ui/packages/consul-ui/tests/integration/serializers/token-test.js similarity index 100% rename from ui-v2/tests/integration/serializers/token-test.js rename to ui/packages/consul-ui/tests/integration/serializers/token-test.js diff --git a/ui-v2/tests/integration/serializers/topology-test.js b/ui/packages/consul-ui/tests/integration/serializers/topology-test.js similarity index 90% rename from ui-v2/tests/integration/serializers/topology-test.js rename to ui/packages/consul-ui/tests/integration/serializers/topology-test.js index aed5be4cb..4806908f2 100644 --- a/ui-v2/tests/integration/serializers/topology-test.js +++ b/ui/packages/consul-ui/tests/integration/serializers/topology-test.js @@ -10,8 +10,9 @@ module('Integration | Serializer | topology', function(hooks) { const serializer = this.owner.lookup('serializer:topology'); const dc = 'dc-1'; const id = 'slug'; + const kind = ''; const request = { - url: `/v1/internal/ui/service-topology/${id}?dc=${dc}`, + url: `/v1/internal/ui/service-topology/${id}?dc=${dc}&kind=${kind}`, }; return get(request.url).then(function(payload) { const expected = { @@ -28,6 +29,7 @@ module('Integration | Serializer | topology', function(hooks) { { dc: dc, id: id, + kind: kind, } ); assert.equal(actual.Datacenter, expected.Datacenter); diff --git a/ui-v2/tests/integration/services/repository/acl-test.js b/ui/packages/consul-ui/tests/integration/services/repository/acl-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/acl-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/acl-test.js diff --git a/ui-v2/tests/integration/services/repository/coordinate-test.js b/ui/packages/consul-ui/tests/integration/services/repository/coordinate-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/coordinate-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/coordinate-test.js diff --git a/ui-v2/tests/integration/services/repository/dc-test.js b/ui/packages/consul-ui/tests/integration/services/repository/dc-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/dc-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/dc-test.js diff --git a/ui-v2/tests/integration/services/repository/discovery-chain-test.js b/ui/packages/consul-ui/tests/integration/services/repository/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/discovery-chain-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/discovery-chain-test.js diff --git a/ui-v2/tests/integration/services/repository/kv-test.js b/ui/packages/consul-ui/tests/integration/services/repository/kv-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/kv-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/kv-test.js diff --git a/ui-v2/tests/integration/services/repository/node-test.js b/ui/packages/consul-ui/tests/integration/services/repository/node-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/node-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/node-test.js diff --git a/ui-v2/tests/integration/services/repository/policy-test.js b/ui/packages/consul-ui/tests/integration/services/repository/policy-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/policy-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/policy-test.js diff --git a/ui-v2/tests/integration/services/repository/role-test.js b/ui/packages/consul-ui/tests/integration/services/repository/role-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/role-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/role-test.js diff --git a/ui-v2/tests/integration/services/repository/service-test.js b/ui/packages/consul-ui/tests/integration/services/repository/service-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/service-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/service-test.js diff --git a/ui-v2/tests/integration/services/repository/session-test.js b/ui/packages/consul-ui/tests/integration/services/repository/session-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/session-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/session-test.js diff --git a/ui-v2/tests/integration/services/repository/token-test.js b/ui/packages/consul-ui/tests/integration/services/repository/token-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/token-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/token-test.js diff --git a/ui-v2/tests/integration/services/repository/topology-test.js b/ui/packages/consul-ui/tests/integration/services/repository/topology-test.js similarity index 100% rename from ui-v2/tests/integration/services/repository/topology-test.js rename to ui/packages/consul-ui/tests/integration/services/repository/topology-test.js diff --git a/ui-v2/tests/integration/utils/dom/event-source/callable-test.js b/ui/packages/consul-ui/tests/integration/utils/dom/event-source/callable-test.js similarity index 100% rename from ui-v2/tests/integration/utils/dom/event-source/callable-test.js rename to ui/packages/consul-ui/tests/integration/utils/dom/event-source/callable-test.js diff --git a/ui-v2/tests/lib/measure/getMeasure.js b/ui/packages/consul-ui/tests/lib/measure/getMeasure.js similarity index 100% rename from ui-v2/tests/lib/measure/getMeasure.js rename to ui/packages/consul-ui/tests/lib/measure/getMeasure.js diff --git a/ui-v2/tests/lib/page-object/createCancelable.js b/ui/packages/consul-ui/tests/lib/page-object/createCancelable.js similarity index 100% rename from ui-v2/tests/lib/page-object/createCancelable.js rename to ui/packages/consul-ui/tests/lib/page-object/createCancelable.js diff --git a/ui-v2/tests/lib/page-object/createCreatable.js b/ui/packages/consul-ui/tests/lib/page-object/createCreatable.js similarity index 100% rename from ui-v2/tests/lib/page-object/createCreatable.js rename to ui/packages/consul-ui/tests/lib/page-object/createCreatable.js diff --git a/ui-v2/tests/lib/page-object/createDeletable.js b/ui/packages/consul-ui/tests/lib/page-object/createDeletable.js similarity index 100% rename from ui-v2/tests/lib/page-object/createDeletable.js rename to ui/packages/consul-ui/tests/lib/page-object/createDeletable.js diff --git a/ui-v2/tests/lib/page-object/createSubmitable.js b/ui/packages/consul-ui/tests/lib/page-object/createSubmitable.js similarity index 100% rename from ui-v2/tests/lib/page-object/createSubmitable.js rename to ui/packages/consul-ui/tests/lib/page-object/createSubmitable.js diff --git a/ui/packages/consul-ui/tests/lib/page-object/index.js b/ui/packages/consul-ui/tests/lib/page-object/index.js new file mode 100644 index 000000000..c0a66d50d --- /dev/null +++ b/ui/packages/consul-ui/tests/lib/page-object/index.js @@ -0,0 +1,32 @@ +import { isPresent as present, fillable, clickable, property } from 'ember-cli-page-object'; + +export const input = function() { + return { + present: present(), + fillIn: fillable(), + }; +}; +export const button = function() { + return { + disabled: property('disabled'), + present: present(), + click: clickable(), + }; +}; +export const click = function() { + return { + present: present(), + click: clickable(), + }; +}; +export const options = function(options, selector = `input`) { + return { + option: options.reduce((prev, item, i) => { + prev[item] = { + present: present(), + click: clickable(selector, { at: i }), + }; + return prev; + }, {}), + }; +}; diff --git a/ui-v2/tests/lib/page-object/visitable.js b/ui/packages/consul-ui/tests/lib/page-object/visitable.js similarity index 100% rename from ui-v2/tests/lib/page-object/visitable.js rename to ui/packages/consul-ui/tests/lib/page-object/visitable.js diff --git a/ui-v2/tests/pages.js b/ui/packages/consul-ui/tests/pages.js similarity index 89% rename from ui-v2/tests/pages.js rename to ui/packages/consul-ui/tests/pages.js index bc4632d7e..fda98b6ef 100644 --- a/ui-v2/tests/pages.js +++ b/ui/packages/consul-ui/tests/pages.js @@ -19,6 +19,8 @@ import createCreatable from 'consul-ui/tests/lib/page-object/createCreatable'; import createCancelable from 'consul-ui/tests/lib/page-object/createCancelable'; // components +import intentionPermissionForm from 'consul-ui/components/consul/intention/permission/form/pageobject'; +import intentionPermissionList from 'consul-ui/components/consul/intention/permission/list/pageobject'; import pageFactory from 'consul-ui/components/hashicorp-consul/pageobject'; import radiogroup from 'consul-ui/components/radio-group/pageobject'; @@ -38,6 +40,7 @@ import popoverSelectFactory from 'consul-ui/components/popover-select/pageobject import morePopoverMenuFactory from 'consul-ui/components/more-popover-menu/pageobject'; import tokenListFactory from 'consul-ui/components/token-list/pageobject'; +import consulUpstreamInstanceListFactory from 'consul-ui/components/consul/upstream-instance/list/pageobject'; import consulTokenListFactory from 'consul-ui/components/consul/token/list/pageobject'; import consulRoleListFactory from 'consul-ui/components/consul/role/list/pageobject'; import consulPolicyListFactory from 'consul-ui/components/consul/policy/list/pageobject'; @@ -92,7 +95,14 @@ const morePopoverMenu = morePopoverMenuFactory(clickable); const popoverSelect = popoverSelectFactory(clickable, collection); const emptyState = emptyStateFactory(isPresent); -const consulIntentionList = consulIntentionListFactory(collection, clickable, attribute, deletable); +const consulUpstreamInstanceList = consulUpstreamInstanceListFactory(collection, text); +const consulIntentionList = consulIntentionListFactory( + collection, + clickable, + attribute, + isPresent, + deletable +); const consulNspaceList = consulNspaceListFactory( collection, clickable, @@ -151,7 +161,9 @@ export default { service: create( service(visitable, attribute, collection, text, consulIntentionList, catalogToolbar, tabgroup) ), - instance: create(instance(visitable, attribute, collection, text, tabgroup)), + instance: create( + instance(visitable, alias, attribute, collection, text, tabgroup, consulUpstreamInstanceList) + ), nodes: create(nodes(visitable, text, clickable, attribute, collection, popoverSelect)), node: create(node(visitable, deletable, clickable, attribute, collection, tabgroup, text)), kvs: create(kvs(visitable, creatable, consulKvList)), @@ -170,7 +182,18 @@ export default { intentions: create( intentions(visitable, creatable, clickable, consulIntentionList, popoverSelect) ), - intention: create(intention(visitable, submitable, deletable, cancelable)), + intention: create( + intention( + visitable, + clickable, + isPresent, + submitable, + deletable, + cancelable, + intentionPermissionForm, + intentionPermissionList + ) + ), nspaces: create(nspaces(visitable, creatable, consulNspaceList, popoverSelect)), nspace: create( nspace(visitable, submitable, deletable, cancelable, policySelector, roleSelector) diff --git a/ui-v2/tests/pages/dc.js b/ui/packages/consul-ui/tests/pages/dc.js similarity index 100% rename from ui-v2/tests/pages/dc.js rename to ui/packages/consul-ui/tests/pages/dc.js diff --git a/ui-v2/tests/pages/dc/acls/edit.js b/ui/packages/consul-ui/tests/pages/dc/acls/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/edit.js rename to ui/packages/consul-ui/tests/pages/dc/acls/edit.js diff --git a/ui-v2/tests/pages/dc/acls/index.js b/ui/packages/consul-ui/tests/pages/dc/acls/index.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/index.js rename to ui/packages/consul-ui/tests/pages/dc/acls/index.js diff --git a/ui-v2/tests/pages/dc/acls/policies/edit.js b/ui/packages/consul-ui/tests/pages/dc/acls/policies/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/policies/edit.js rename to ui/packages/consul-ui/tests/pages/dc/acls/policies/edit.js diff --git a/ui-v2/tests/pages/dc/acls/policies/index.js b/ui/packages/consul-ui/tests/pages/dc/acls/policies/index.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/policies/index.js rename to ui/packages/consul-ui/tests/pages/dc/acls/policies/index.js diff --git a/ui-v2/tests/pages/dc/acls/roles/edit.js b/ui/packages/consul-ui/tests/pages/dc/acls/roles/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/roles/edit.js rename to ui/packages/consul-ui/tests/pages/dc/acls/roles/edit.js diff --git a/ui-v2/tests/pages/dc/acls/roles/index.js b/ui/packages/consul-ui/tests/pages/dc/acls/roles/index.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/roles/index.js rename to ui/packages/consul-ui/tests/pages/dc/acls/roles/index.js diff --git a/ui-v2/tests/pages/dc/acls/tokens/edit.js b/ui/packages/consul-ui/tests/pages/dc/acls/tokens/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/tokens/edit.js rename to ui/packages/consul-ui/tests/pages/dc/acls/tokens/edit.js diff --git a/ui-v2/tests/pages/dc/acls/tokens/index.js b/ui/packages/consul-ui/tests/pages/dc/acls/tokens/index.js similarity index 100% rename from ui-v2/tests/pages/dc/acls/tokens/index.js rename to ui/packages/consul-ui/tests/pages/dc/acls/tokens/index.js diff --git a/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js b/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js new file mode 100644 index 000000000..d79fb84fa --- /dev/null +++ b/ui/packages/consul-ui/tests/pages/dc/intentions/edit.js @@ -0,0 +1,39 @@ +export default function( + visitable, + clickable, + isPresent, + submitable, + deletable, + cancelable, + permissionsForm, + permissionsList +) { + return { + scope: 'main', + visit: visitable(['/:dc/intentions/:intention', '/:dc/intentions/create']), + permissions: { + create: { + scope: '[data-test-create-permission]', + click: clickable(), + }, + form: permissionsForm(), + list: permissionsList(), + }, + warning: { + scope: '[data-test-action-warning]', + resetScope: true, + present: isPresent(), + confirm: { + scope: '[data-test-action-warning-confirm]', + click: clickable(), + }, + cancel: { + scope: '[data-test-action-warning-cancel]', + click: clickable(), + }, + }, + ...submitable(), + ...cancelable(), + ...deletable(), + }; +} diff --git a/ui-v2/tests/pages/dc/intentions/index.js b/ui/packages/consul-ui/tests/pages/dc/intentions/index.js similarity index 64% rename from ui-v2/tests/pages/dc/intentions/index.js rename to ui/packages/consul-ui/tests/pages/dc/intentions/index.js index f554d1964..9e3b1176b 100644 --- a/ui-v2/tests/pages/dc/intentions/index.js +++ b/ui/packages/consul-ui/tests/pages/dc/intentions/index.js @@ -1,8 +1,8 @@ export default function(visitable, creatable, clickable, intentions, popoverSelect) { - return creatable({ + return { visit: visitable('/:dc/intentions'), - intentions: intentions(), + intentionList: intentions(), sort: popoverSelect('[data-test-sort-control]'), - create: clickable('[data-test-create]'), - }); + ...creatable({}), + }; } diff --git a/ui-v2/tests/pages/dc/kv/edit.js b/ui/packages/consul-ui/tests/pages/dc/kv/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/kv/edit.js rename to ui/packages/consul-ui/tests/pages/dc/kv/edit.js diff --git a/ui-v2/tests/pages/dc/kv/index.js b/ui/packages/consul-ui/tests/pages/dc/kv/index.js similarity index 100% rename from ui-v2/tests/pages/dc/kv/index.js rename to ui/packages/consul-ui/tests/pages/dc/kv/index.js diff --git a/ui-v2/tests/pages/dc/nodes/index.js b/ui/packages/consul-ui/tests/pages/dc/nodes/index.js similarity index 100% rename from ui-v2/tests/pages/dc/nodes/index.js rename to ui/packages/consul-ui/tests/pages/dc/nodes/index.js diff --git a/ui-v2/tests/pages/dc/nodes/show.js b/ui/packages/consul-ui/tests/pages/dc/nodes/show.js similarity index 100% rename from ui-v2/tests/pages/dc/nodes/show.js rename to ui/packages/consul-ui/tests/pages/dc/nodes/show.js diff --git a/ui-v2/tests/pages/dc/nspaces/edit.js b/ui/packages/consul-ui/tests/pages/dc/nspaces/edit.js similarity index 100% rename from ui-v2/tests/pages/dc/nspaces/edit.js rename to ui/packages/consul-ui/tests/pages/dc/nspaces/edit.js diff --git a/ui-v2/tests/pages/dc/nspaces/index.js b/ui/packages/consul-ui/tests/pages/dc/nspaces/index.js similarity index 100% rename from ui-v2/tests/pages/dc/nspaces/index.js rename to ui/packages/consul-ui/tests/pages/dc/nspaces/index.js diff --git a/ui-v2/tests/pages/dc/services/index.js b/ui/packages/consul-ui/tests/pages/dc/services/index.js similarity index 100% rename from ui-v2/tests/pages/dc/services/index.js rename to ui/packages/consul-ui/tests/pages/dc/services/index.js diff --git a/ui-v2/tests/pages/dc/services/instance.js b/ui/packages/consul-ui/tests/pages/dc/services/instance.js similarity index 70% rename from ui-v2/tests/pages/dc/services/instance.js rename to ui/packages/consul-ui/tests/pages/dc/services/instance.js index 414346437..33ec95697 100644 --- a/ui-v2/tests/pages/dc/services/instance.js +++ b/ui/packages/consul-ui/tests/pages/dc/services/instance.js @@ -1,14 +1,13 @@ -export default function(visitable, attribute, collection, text, tabs) { +export default function(visitable, alias, attribute, collection, text, tabs, upstreams) { return { visit: visitable('/:dc/services/:service/instances/:node/:id'), externalSource: attribute('data-test-external-source', '[data-test-external-source]', { scope: '.title', }), - tabs: tabs('tab', ['health-checks', 'proxy-info', 'addresses', 'tags-&-meta']), + tabs: tabs('tab', ['health-checks', 'upstreams', 'exposed-paths', 'addresses', 'tags-&-meta']), checks: collection('[data-test-checks] li'), - upstreams: collection('[data-test-proxy-upstreams] > li', { - name: text('[data-test-destination-name]'), - }), + upstreams: alias('upstreamInstances.item'), + upstreamInstances: upstreams(), exposedPaths: collection('[data-test-proxy-exposed-paths] > tbody tr', { combinedAddress: text('[data-test-combined-address]'), }), diff --git a/ui-v2/tests/pages/dc/services/show.js b/ui/packages/consul-ui/tests/pages/dc/services/show.js similarity index 88% rename from ui-v2/tests/pages/dc/services/show.js rename to ui/packages/consul-ui/tests/pages/dc/services/show.js index 0630edbe9..0d31559d3 100644 --- a/ui-v2/tests/pages/dc/services/show.js +++ b/ui/packages/consul-ui/tests/pages/dc/services/show.js @@ -7,7 +7,11 @@ export default function(visitable, attribute, collection, text, intentions, filt dashboardAnchor: { href: attribute('href', '[data-test-dashboard-anchor]'), }, + metricsAnchor: { + href: attribute('href', '[data-test-metrics-anchor]'), + }, tabs: tabs('tab', [ + 'topology', 'instances', 'linked-services', 'upstreams', @@ -20,7 +24,7 @@ export default function(visitable, attribute, collection, text, intentions, filt instances: collection('.consul-service-instance-list > ul > li:not(:first-child)', { address: text('[data-test-address]'), }), - intentions: intentions(), + intentionList: intentions(), }; page.tabs.upstreamsTab = { services: collection('.consul-upstream-list > ul > li:not(:first-child)', { diff --git a/ui-v2/tests/pages/index.js b/ui/packages/consul-ui/tests/pages/index.js similarity index 100% rename from ui-v2/tests/pages/index.js rename to ui/packages/consul-ui/tests/pages/index.js diff --git a/ui-v2/tests/pages/settings.js b/ui/packages/consul-ui/tests/pages/settings.js similarity index 100% rename from ui-v2/tests/pages/settings.js rename to ui/packages/consul-ui/tests/pages/settings.js diff --git a/ui-v2/tests/steps.js b/ui/packages/consul-ui/tests/steps.js similarity index 68% rename from ui-v2/tests/steps.js rename to ui/packages/consul-ui/tests/steps.js index a0285c9f4..1d61f0fb3 100644 --- a/ui-v2/tests/steps.js +++ b/ui/packages/consul-ui/tests/steps.js @@ -18,9 +18,10 @@ import assertForm from './steps/assertions/form'; export default function({ assert, + utils, library, pages = {}, - utils = {}, + helpers = {}, api = {}, Inflector = {}, $ = {}, @@ -44,20 +45,6 @@ export default function({ return requests[n]; }; }; - const mb = function(path) { - return function(obj) { - return ( - path.map(function(prop) { - obj = obj || {}; - if (isNaN(parseInt(prop))) { - return (obj = obj[prop]); - } else { - return (obj = obj.objectAt(parseInt(prop))); - } - }) && obj - ); - }; - }; const pauseUntil = function(run, message = 'assertion timed out') { return new Promise(function(r) { let count = 0; @@ -102,48 +89,25 @@ export default function({ const setCookie = function(key, value) { api.server.setCookie(key, value); }; - let currentPage; - const getCurrentPage = function() { - return currentPage; - }; - const setCurrentPage = function(page) { + + const reset = function() { api.server.clearHistory(); - currentPage = page; - return page; }; - const find = function(path) { - const page = getCurrentPage(); - const parts = path.split('.'); - const last = parts.pop(); - let obj; - let parent = mb(parts)(page) || page; - if (typeof parent.objectAt === 'function') { - parent = parent.objectAt(0); - } - obj = parent[last]; - if (typeof obj === 'undefined') { - throw new Error(`PageObject not found: The '${path}' object doesn't exist`); - } - if (typeof obj === 'function') { - obj = obj.bind(parent); - } - return obj; - }; const clipboard = function() { return window.localStorage.getItem('clipboard'); }; models(library, create); http(library, respondWith, setCookie); - visit(library, pages, setCurrentPage); - click(library, find, utils.click); - form(library, find, utils.fillIn, utils.triggerKeyEvent, getCurrentPage); + visit(library, pages, utils.setCurrentPage, reset); + click(library, utils.find, helpers.click); + form(library, utils.find, helpers.fillIn, helpers.triggerKeyEvent, utils.getCurrentPage); debug(library, assert, utils.currentURL); assertHttp(library, assert, lastNthRequest); - assertModel(library, assert, find, getCurrentPage, pauseUntil, pluralize); - assertPage(library, assert, find, getCurrentPage, $); - assertDom(library, assert, pauseUntil, utils.find, utils.currentURL, clipboard); - assertForm(library, assert, find, getCurrentPage); + assertModel(library, assert, utils.find, utils.getCurrentPage, pauseUntil, pluralize); + assertPage(library, assert, utils.find, utils.getCurrentPage, $); + assertDom(library, assert, pauseUntil, helpers.find, helpers.currentURL, clipboard); + assertForm(library, assert, utils.find, utils.getCurrentPage); return library.given(["I'm using a legacy token"], function(number, model, data) { window.localStorage['consul:token'] = JSON.stringify({ diff --git a/ui-v2/tests/steps/assertions/dom.js b/ui/packages/consul-ui/tests/steps/assertions/dom.js similarity index 100% rename from ui-v2/tests/steps/assertions/dom.js rename to ui/packages/consul-ui/tests/steps/assertions/dom.js diff --git a/ui-v2/tests/steps/assertions/form.js b/ui/packages/consul-ui/tests/steps/assertions/form.js similarity index 100% rename from ui-v2/tests/steps/assertions/form.js rename to ui/packages/consul-ui/tests/steps/assertions/form.js diff --git a/ui-v2/tests/steps/assertions/http.js b/ui/packages/consul-ui/tests/steps/assertions/http.js similarity index 100% rename from ui-v2/tests/steps/assertions/http.js rename to ui/packages/consul-ui/tests/steps/assertions/http.js diff --git a/ui-v2/tests/steps/assertions/model.js b/ui/packages/consul-ui/tests/steps/assertions/model.js similarity index 79% rename from ui-v2/tests/steps/assertions/model.js rename to ui/packages/consul-ui/tests/steps/assertions/model.js index bcacb8c0a..220bdfc16 100644 --- a/ui-v2/tests/steps/assertions/model.js +++ b/ui/packages/consul-ui/tests/steps/assertions/model.js @@ -11,6 +11,22 @@ export default function(scenario, assert, find, currentPage, pauseUntil, plurali return retry(); }, `Expected ${num} ${model}s`); }) + .then('pause until I see $number $model model[s]? on the $component component', function( + num, + model, + component + ) { + return pauseUntil(function(resolve, reject, retry) { + const obj = find(component); + const len = obj[pluralize(model)].filter(function(item) { + return item.isVisible; + }).length; + if (len === num) { + return resolve(); + } + return retry(); + }, `Expected ${num} ${model}s`); + }) .then(['I see $num $model model[s]?'], function(num, model) { const len = currentPage()[pluralize(model)].filter(function(item) { return item.isVisible; diff --git a/ui-v2/tests/steps/assertions/page.js b/ui/packages/consul-ui/tests/steps/assertions/page.js similarity index 85% rename from ui-v2/tests/steps/assertions/page.js rename to ui/packages/consul-ui/tests/steps/assertions/page.js index 6e03d3aa2..24cb0f651 100644 --- a/ui-v2/tests/steps/assertions/page.js +++ b/ui/packages/consul-ui/tests/steps/assertions/page.js @@ -33,6 +33,32 @@ const isExpectedError = function(e) { const dont = `( don't| shouldn't| can't)?`; export default function(scenario, assert, find, currentPage, $) { scenario + .then([`I${dont} $verb the $pageObject object`], function(negative, verb, element, next) { + assert[negative ? 'notOk' : 'ok'](element[verb]()); + setTimeout(() => next()); + }) + .then( + [ + `I${dont} $verb the $pageObject object with value "$value"`, + `I${dont} $verb the $pageObject object from $yaml`, + ], + function(negative, verb, element, data, next) { + assert[negative ? 'notOk' : 'ok'](element[verb](data)); + setTimeout(() => next()); + } + ) + .then(`the $pageObject object is(n't)? $state`, function(element, negative, state, next) { + assert[negative ? 'notOk' : 'ok'](element[state]); + setTimeout(() => next()); + }) + .then(`I${dont} see $num of the $pageObject objects`, function(negative, num, element, next) { + assert[negative ? 'notEqual' : 'equal']( + element.length, + num, + `Expected to${negative ? ' not' : ''} see ${num} ${element.key}` + ); + setTimeout(() => next()); + }) .then(['I see $num of the $component object'], function(num, component) { assert.equal( currentPage()[component].length, @@ -75,7 +101,7 @@ export default function(scenario, assert, find, currentPage, $) { component, yaml ) { - const _component = currentPage()[component]; + const _component = find(component); const iterator = new Array(_component.length).fill(true); assert.ok(iterator.length > 0); diff --git a/ui-v2/tests/steps/debug/index.js b/ui/packages/consul-ui/tests/steps/debug/index.js similarity index 100% rename from ui-v2/tests/steps/debug/index.js rename to ui/packages/consul-ui/tests/steps/debug/index.js diff --git a/ui-v2/tests/steps/doubles/http.js b/ui/packages/consul-ui/tests/steps/doubles/http.js similarity index 100% rename from ui-v2/tests/steps/doubles/http.js rename to ui/packages/consul-ui/tests/steps/doubles/http.js diff --git a/ui-v2/tests/steps/doubles/model.js b/ui/packages/consul-ui/tests/steps/doubles/model.js similarity index 92% rename from ui-v2/tests/steps/doubles/model.js rename to ui/packages/consul-ui/tests/steps/doubles/model.js index f02bdbf50..75a0cb981 100644 --- a/ui-v2/tests/steps/doubles/model.js +++ b/ui/packages/consul-ui/tests/steps/doubles/model.js @@ -14,7 +14,8 @@ export default function(scenario, create) { function(number, model, data) { return create(number, model, data); } - ).given(['settings from yaml\n$yaml'], function(data) { + ) + .given(['settings from yaml\n$yaml'], function(data) { return Object.keys(data).forEach(function(key) { window.localStorage[key] = JSON.stringify(data[key]); }); diff --git a/ui/packages/consul-ui/tests/steps/interactions/click.js b/ui/packages/consul-ui/tests/steps/interactions/click.js new file mode 100644 index 000000000..d1ef934f4 --- /dev/null +++ b/ui/packages/consul-ui/tests/steps/interactions/click.js @@ -0,0 +1,24 @@ +export default function(scenario, find, click) { + scenario + .when('I click "$selector"', function(selector) { + return click(selector); + }) + // TODO: Probably nicer to think of better vocab than having the 'without " rule' + .when( + [ + 'I click (?!")$property(?!")', + 'I click $property on the $component', + 'I click $property on the $component component', + ], + function(property, component, next) { + try { + if (typeof component === 'string') { + property = `${component}.${property}`; + } + return find(property)(); + } catch (e) { + throw e; + } + } + ); +} diff --git a/ui-v2/tests/steps/interactions/form.js b/ui/packages/consul-ui/tests/steps/interactions/form.js similarity index 100% rename from ui-v2/tests/steps/interactions/form.js rename to ui/packages/consul-ui/tests/steps/interactions/form.js diff --git a/ui-v2/tests/steps/interactions/visit.js b/ui/packages/consul-ui/tests/steps/interactions/visit.js similarity index 88% rename from ui-v2/tests/steps/interactions/visit.js rename to ui/packages/consul-ui/tests/steps/interactions/visit.js index 72a5f71e2..54890318f 100644 --- a/ui-v2/tests/steps/interactions/visit.js +++ b/ui/packages/consul-ui/tests/steps/interactions/visit.js @@ -1,9 +1,11 @@ -export default function(scenario, pages, set) { +export default function(scenario, pages, set, reset) { scenario .when('I visit the $name page', function(name) { + reset(); return set(pages[name]).visit(); }) .when('I visit the $name page for the "$id" $model', function(name, id, model) { + reset(); return set(pages[name]).visit({ [model]: id, }); @@ -15,6 +17,7 @@ export default function(scenario, pages, set) { if (nspace !== '' && typeof nspace !== 'undefined') { data.nspace = `~${nspace}`; } + reset(); // TODO: Consider putting an assertion here for testing the current url // do I absolutely definitely need that all the time? return set(pages[name]).visit(data); diff --git a/ui-v2/tests/test-helper.js b/ui/packages/consul-ui/tests/test-helper.js similarity index 100% rename from ui-v2/tests/test-helper.js rename to ui/packages/consul-ui/tests/test-helper.js diff --git a/ui-v2/tests/unit/adapters/acl-test.js b/ui/packages/consul-ui/tests/unit/adapters/acl-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/acl-test.js rename to ui/packages/consul-ui/tests/unit/adapters/acl-test.js diff --git a/ui-v2/tests/unit/adapters/application-test.js b/ui/packages/consul-ui/tests/unit/adapters/application-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/application-test.js rename to ui/packages/consul-ui/tests/unit/adapters/application-test.js diff --git a/ui-v2/tests/unit/adapters/coordinate-test.js b/ui/packages/consul-ui/tests/unit/adapters/coordinate-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/coordinate-test.js rename to ui/packages/consul-ui/tests/unit/adapters/coordinate-test.js diff --git a/ui-v2/tests/unit/adapters/dc-test.js b/ui/packages/consul-ui/tests/unit/adapters/dc-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/dc-test.js rename to ui/packages/consul-ui/tests/unit/adapters/dc-test.js diff --git a/ui-v2/tests/unit/adapters/discovery-chain-test.js b/ui/packages/consul-ui/tests/unit/adapters/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/discovery-chain-test.js rename to ui/packages/consul-ui/tests/unit/adapters/discovery-chain-test.js diff --git a/ui-v2/tests/unit/adapters/http-test.js b/ui/packages/consul-ui/tests/unit/adapters/http-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/http-test.js rename to ui/packages/consul-ui/tests/unit/adapters/http-test.js diff --git a/ui-v2/tests/unit/adapters/intention-test.js b/ui/packages/consul-ui/tests/unit/adapters/intention-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/intention-test.js rename to ui/packages/consul-ui/tests/unit/adapters/intention-test.js diff --git a/ui-v2/tests/unit/adapters/kv-test.js b/ui/packages/consul-ui/tests/unit/adapters/kv-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/kv-test.js rename to ui/packages/consul-ui/tests/unit/adapters/kv-test.js diff --git a/ui-v2/tests/unit/adapters/node-test.js b/ui/packages/consul-ui/tests/unit/adapters/node-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/node-test.js rename to ui/packages/consul-ui/tests/unit/adapters/node-test.js diff --git a/ui-v2/tests/unit/adapters/nspace-test.js b/ui/packages/consul-ui/tests/unit/adapters/nspace-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/nspace-test.js rename to ui/packages/consul-ui/tests/unit/adapters/nspace-test.js diff --git a/ui-v2/tests/unit/adapters/oidc-provider-test.js b/ui/packages/consul-ui/tests/unit/adapters/oidc-provider-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/oidc-provider-test.js rename to ui/packages/consul-ui/tests/unit/adapters/oidc-provider-test.js diff --git a/ui-v2/tests/unit/adapters/policy-test.js b/ui/packages/consul-ui/tests/unit/adapters/policy-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/policy-test.js rename to ui/packages/consul-ui/tests/unit/adapters/policy-test.js diff --git a/ui-v2/tests/unit/adapters/proxy-test.js b/ui/packages/consul-ui/tests/unit/adapters/proxy-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/proxy-test.js rename to ui/packages/consul-ui/tests/unit/adapters/proxy-test.js diff --git a/ui-v2/tests/unit/adapters/role-test.js b/ui/packages/consul-ui/tests/unit/adapters/role-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/role-test.js rename to ui/packages/consul-ui/tests/unit/adapters/role-test.js diff --git a/ui-v2/tests/unit/adapters/service-instance-test.js b/ui/packages/consul-ui/tests/unit/adapters/service-instance-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/service-instance-test.js rename to ui/packages/consul-ui/tests/unit/adapters/service-instance-test.js diff --git a/ui-v2/tests/unit/adapters/session-test.js b/ui/packages/consul-ui/tests/unit/adapters/session-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/session-test.js rename to ui/packages/consul-ui/tests/unit/adapters/session-test.js diff --git a/ui-v2/tests/unit/adapters/token-test.js b/ui/packages/consul-ui/tests/unit/adapters/token-test.js similarity index 100% rename from ui-v2/tests/unit/adapters/token-test.js rename to ui/packages/consul-ui/tests/unit/adapters/token-test.js diff --git a/ui-v2/tests/unit/components/discovery-chain/get-alternate-services-test.js b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-alternate-services-test.js similarity index 90% rename from ui-v2/tests/unit/components/discovery-chain/get-alternate-services-test.js rename to ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-alternate-services-test.js index 56152a97d..53e986cd3 100644 --- a/ui-v2/tests/unit/components/discovery-chain/get-alternate-services-test.js +++ b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-alternate-services-test.js @@ -1,7 +1,7 @@ -import { getAlternateServices } from 'consul-ui/components/discovery-chain/utils'; +import { getAlternateServices } from 'consul-ui/components/consul/discovery-chain/utils'; import { module, test } from 'qunit'; -module('Unit | Component | discovery-chain/get-alternative-services', function() { +module('Unit | Component | consul/discovery-chain/get-alternative-services', function() { test('it guesses a different namespace', function(assert) { const expected = { Type: 'Namespace', diff --git a/ui-v2/tests/unit/components/discovery-chain/get-resolvers-test.js b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-resolvers-test.js similarity index 98% rename from ui-v2/tests/unit/components/discovery-chain/get-resolvers-test.js rename to ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-resolvers-test.js index 4ec4b9d10..69dc9634b 100644 --- a/ui-v2/tests/unit/components/discovery-chain/get-resolvers-test.js +++ b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-resolvers-test.js @@ -1,4 +1,4 @@ -import { getResolvers } from 'consul-ui/components/discovery-chain/utils'; +import { getResolvers } from 'consul-ui/components/consul/discovery-chain/utils'; import { module, test } from 'qunit'; import { get } from 'consul-ui/tests/helpers/api'; @@ -7,7 +7,7 @@ const nspace = 'default'; const request = { url: `/v1/discovery-chain/service-name?dc=${dc}`, }; -module('Unit | Component | discovery-chain/get-resolvers', function() { +module('Unit | Component | consul/discovery-chain/get-resolvers', function() { test('it assigns Subsets correctly', function(assert) { return get(request.url, { headers: { diff --git a/ui-v2/tests/unit/components/discovery-chain/get-splitters-test.js b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-splitters-test.js similarity index 87% rename from ui-v2/tests/unit/components/discovery-chain/get-splitters-test.js rename to ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-splitters-test.js index 78e89af42..317936b2e 100644 --- a/ui-v2/tests/unit/components/discovery-chain/get-splitters-test.js +++ b/ui/packages/consul-ui/tests/unit/components/consul/discovery-chain/get-splitters-test.js @@ -1,7 +1,7 @@ -import { getSplitters } from 'consul-ui/components/discovery-chain/utils'; +import { getSplitters } from 'consul-ui/components/consul/discovery-chain/utils'; import { module, test } from 'qunit'; -module('Unit | Component | discovery-chain/get-splitters', function() { +module('Unit | Component | consul/discovery-chain/get-splitters', function() { test('it collects and correctly parses splitter Names', function(assert) { const actual = getSplitters({ 'splitter:splitter-name.default': { diff --git a/ui-v2/tests/unit/controllers/application-test.js b/ui/packages/consul-ui/tests/unit/controllers/application-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/application-test.js rename to ui/packages/consul-ui/tests/unit/controllers/application-test.js diff --git a/ui-v2/tests/unit/controllers/dc-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/create-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/create-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/create-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/create-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/edit-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/edit-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/edit-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/edit-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/policies/create-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/create-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/policies/create-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/create-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/policies/edit-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/edit-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/policies/edit-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/edit-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/policies/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/policies/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/policies/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/roles/create-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/create-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/roles/create-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/create-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/roles/edit-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/edit-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/roles/edit-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/edit-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/roles/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/roles/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/roles/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/tokens/create-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/create-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/tokens/create-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/create-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/tokens/edit-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/edit-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/tokens/edit-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/edit-test.js diff --git a/ui-v2/tests/unit/controllers/dc/acls/tokens/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/acls/tokens/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/acls/tokens/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/intentions/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/intentions/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/intentions/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/intentions/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/kv/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/kv/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/kv/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/kv/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/nodes/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/nodes/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/nodes/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/nodes/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/nspaces/create-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/create-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/nspaces/create-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/create-test.js diff --git a/ui-v2/tests/unit/controllers/dc/nspaces/edit-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/edit-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/nspaces/edit-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/edit-test.js diff --git a/ui-v2/tests/unit/controllers/dc/nspaces/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/nspaces/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/nspaces/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/services/index-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/services/index-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/services/index-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/services/index-test.js diff --git a/ui-v2/tests/unit/controllers/dc/services/instance-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/services/instance-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/services/instance-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/services/instance-test.js diff --git a/ui-v2/tests/unit/controllers/dc/services/show-test.js b/ui/packages/consul-ui/tests/unit/controllers/dc/services/show-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/dc/services/show-test.js rename to ui/packages/consul-ui/tests/unit/controllers/dc/services/show-test.js diff --git a/ui-v2/tests/unit/controllers/settings-test.js b/ui/packages/consul-ui/tests/unit/controllers/settings-test.js similarity index 100% rename from ui-v2/tests/unit/controllers/settings-test.js rename to ui/packages/consul-ui/tests/unit/controllers/settings-test.js diff --git a/ui-v2/tests/unit/filter/predicates/intention-test.js b/ui/packages/consul-ui/tests/unit/filter/predicates/intention-test.js similarity index 100% rename from ui-v2/tests/unit/filter/predicates/intention-test.js rename to ui/packages/consul-ui/tests/unit/filter/predicates/intention-test.js diff --git a/ui-v2/tests/unit/filter/predicates/service-test.js b/ui/packages/consul-ui/tests/unit/filter/predicates/service-test.js similarity index 92% rename from ui-v2/tests/unit/filter/predicates/service-test.js rename to ui/packages/consul-ui/tests/unit/filter/predicates/service-test.js index 55d243610..e1e6cd7ef 100644 --- a/ui-v2/tests/unit/filter/predicates/service-test.js +++ b/ui/packages/consul-ui/tests/unit/filter/predicates/service-test.js @@ -97,7 +97,7 @@ module('Unit | Filter | Predicates | service', function() { expected = [items[0]]; actual = items.filter( predicate({ - types: ['ingress-gateway'], + kinds: ['ingress-gateway'], }) ); assert.deepEqual(actual, expected); @@ -105,7 +105,7 @@ module('Unit | Filter | Predicates | service', function() { expected = [items[1]]; actual = items.filter( predicate({ - types: ['mesh-gateway'], + kinds: ['mesh-gateway'], }) ); assert.deepEqual(actual, expected); @@ -113,7 +113,7 @@ module('Unit | Filter | Predicates | service', function() { expected = items; actual = items.filter( predicate({ - types: ['ingress-gateway', 'mesh-gateway', 'service'], + kinds: ['ingress-gateway', 'mesh-gateway', 'service'], }) ); assert.deepEqual(actual, expected); @@ -141,7 +141,7 @@ module('Unit | Filter | Predicates | service', function() { expected = [items[0]]; actual = items.filter( predicate({ - types: ['ingress-gateway'], + kinds: ['ingress-gateway'], statuses: ['passing'], instances: ['registered'], }) @@ -151,7 +151,7 @@ module('Unit | Filter | Predicates | service', function() { expected = [items[1]]; actual = items.filter( predicate({ - types: ['mesh-gateway'], + kinds: ['mesh-gateway'], statuses: ['warning'], instances: ['registered'], }) @@ -161,7 +161,7 @@ module('Unit | Filter | Predicates | service', function() { expected = items; actual = items.filter( predicate({ - types: ['ingress-gateway', 'mesh-gateway', 'service'], + kinds: ['ingress-gateway', 'mesh-gateway', 'service'], statuses: ['passing', 'warning', 'critical'], instances: ['registered', 'not-registered'], }) diff --git a/ui-v2/tests/unit/helpers/policy/datacenters-test.js b/ui/packages/consul-ui/tests/unit/helpers/policy/datacenters-test.js similarity index 100% rename from ui-v2/tests/unit/helpers/policy/datacenters-test.js rename to ui/packages/consul-ui/tests/unit/helpers/policy/datacenters-test.js diff --git a/ui-v2/tests/unit/helpers/selectable-key-values-test.js b/ui/packages/consul-ui/tests/unit/helpers/selectable-key-values-test.js similarity index 77% rename from ui-v2/tests/unit/helpers/selectable-key-values-test.js rename to ui/packages/consul-ui/tests/unit/helpers/selectable-key-values-test.js index 76090b307..82ef44781 100644 --- a/ui-v2/tests/unit/helpers/selectable-key-values-test.js +++ b/ui/packages/consul-ui/tests/unit/helpers/selectable-key-values-test.js @@ -3,21 +3,36 @@ import { module, test } from 'qunit'; module('Unit | Helper | selectable-key-values', function() { test('it turns arrays into key values and selects the first item by default', function(assert) { - const actual = selectableKeyValues([['key-1', 'value-1'], ['key-2', 'value-2']]); + const actual = selectableKeyValues([ + ['key-1', 'value-1'], + ['key-2', 'value-2'], + ]); assert.equal(actual.items.length, 2); assert.deepEqual(actual.selected, { key: 'key-1', value: 'value-1' }); }); test('it turns arrays into key values and selects the defined key', function(assert) { - const actual = selectableKeyValues([['key-1', 'value-1'], ['key-2', 'value-2']], { - selected: 'key-2', - }); + const actual = selectableKeyValues( + [ + ['key-1', 'value-1'], + ['key-2', 'value-2'], + ], + { + selected: 'key-2', + } + ); assert.equal(actual.items.length, 2); assert.deepEqual(actual.selected, { key: 'key-2', value: 'value-2' }); }); test('it turns arrays into key values and selects the defined index', function(assert) { - const actual = selectableKeyValues([['key-1', 'value-1'], ['key-2', 'value-2']], { - selected: 1, - }); + const actual = selectableKeyValues( + [ + ['key-1', 'value-1'], + ['key-2', 'value-2'], + ], + { + selected: 1, + } + ); assert.equal(actual.items.length, 2); assert.deepEqual(actual.selected, { key: 'key-2', value: 'value-2' }); }); diff --git a/ui-v2/tests/unit/helpers/token/is-anonymous-test.js b/ui/packages/consul-ui/tests/unit/helpers/token/is-anonymous-test.js similarity index 100% rename from ui-v2/tests/unit/helpers/token/is-anonymous-test.js rename to ui/packages/consul-ui/tests/unit/helpers/token/is-anonymous-test.js diff --git a/ui-v2/tests/unit/helpers/token/is-legacy-test.js b/ui/packages/consul-ui/tests/unit/helpers/token/is-legacy-test.js similarity index 100% rename from ui-v2/tests/unit/helpers/token/is-legacy-test.js rename to ui/packages/consul-ui/tests/unit/helpers/token/is-legacy-test.js diff --git a/ui-v2/tests/unit/mixins/acl/with-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/acl/with-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/acl/with-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/acl/with-actions-test.js diff --git a/ui-v2/tests/unit/mixins/creating-route-test.js b/ui/packages/consul-ui/tests/unit/mixins/creating-route-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/creating-route-test.js rename to ui/packages/consul-ui/tests/unit/mixins/creating-route-test.js diff --git a/ui-v2/tests/unit/mixins/nspace/with-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/nspace/with-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/nspace/with-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/nspace/with-actions-test.js diff --git a/ui-v2/tests/unit/mixins/policy/as-many-test.js b/ui/packages/consul-ui/tests/unit/mixins/policy/as-many-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/policy/as-many-test.js rename to ui/packages/consul-ui/tests/unit/mixins/policy/as-many-test.js diff --git a/ui-v2/tests/unit/mixins/policy/with-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/policy/with-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/policy/with-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/policy/with-actions-test.js diff --git a/ui-v2/tests/unit/mixins/role/as-many-test.js b/ui/packages/consul-ui/tests/unit/mixins/role/as-many-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/role/as-many-test.js rename to ui/packages/consul-ui/tests/unit/mixins/role/as-many-test.js diff --git a/ui-v2/tests/unit/mixins/role/with-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/role/with-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/role/with-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/role/with-actions-test.js diff --git a/ui-v2/tests/unit/mixins/token/with-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/token/with-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/token/with-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/token/with-actions-test.js diff --git a/ui-v2/tests/unit/mixins/with-blocking-actions-test.js b/ui/packages/consul-ui/tests/unit/mixins/with-blocking-actions-test.js similarity index 100% rename from ui-v2/tests/unit/mixins/with-blocking-actions-test.js rename to ui/packages/consul-ui/tests/unit/mixins/with-blocking-actions-test.js diff --git a/ui-v2/tests/unit/models/acl-test.js b/ui/packages/consul-ui/tests/unit/models/acl-test.js similarity index 100% rename from ui-v2/tests/unit/models/acl-test.js rename to ui/packages/consul-ui/tests/unit/models/acl-test.js diff --git a/ui-v2/tests/unit/models/coordinate-test.js b/ui/packages/consul-ui/tests/unit/models/coordinate-test.js similarity index 100% rename from ui-v2/tests/unit/models/coordinate-test.js rename to ui/packages/consul-ui/tests/unit/models/coordinate-test.js diff --git a/ui-v2/tests/unit/models/dc-test.js b/ui/packages/consul-ui/tests/unit/models/dc-test.js similarity index 100% rename from ui-v2/tests/unit/models/dc-test.js rename to ui/packages/consul-ui/tests/unit/models/dc-test.js diff --git a/ui-v2/tests/unit/models/discovery-chain-test.js b/ui/packages/consul-ui/tests/unit/models/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/unit/models/discovery-chain-test.js rename to ui/packages/consul-ui/tests/unit/models/discovery-chain-test.js diff --git a/ui-v2/tests/unit/models/intention-test.js b/ui/packages/consul-ui/tests/unit/models/intention-test.js similarity index 100% rename from ui-v2/tests/unit/models/intention-test.js rename to ui/packages/consul-ui/tests/unit/models/intention-test.js diff --git a/ui-v2/tests/unit/models/kv-test.js b/ui/packages/consul-ui/tests/unit/models/kv-test.js similarity index 100% rename from ui-v2/tests/unit/models/kv-test.js rename to ui/packages/consul-ui/tests/unit/models/kv-test.js diff --git a/ui-v2/tests/unit/models/node-test.js b/ui/packages/consul-ui/tests/unit/models/node-test.js similarity index 100% rename from ui-v2/tests/unit/models/node-test.js rename to ui/packages/consul-ui/tests/unit/models/node-test.js diff --git a/ui-v2/tests/unit/models/oidc-provider-test.js b/ui/packages/consul-ui/tests/unit/models/oidc-provider-test.js similarity index 100% rename from ui-v2/tests/unit/models/oidc-provider-test.js rename to ui/packages/consul-ui/tests/unit/models/oidc-provider-test.js diff --git a/ui-v2/tests/unit/models/policy-test.js b/ui/packages/consul-ui/tests/unit/models/policy-test.js similarity index 100% rename from ui-v2/tests/unit/models/policy-test.js rename to ui/packages/consul-ui/tests/unit/models/policy-test.js diff --git a/ui-v2/tests/unit/models/proxy-test.js b/ui/packages/consul-ui/tests/unit/models/proxy-test.js similarity index 100% rename from ui-v2/tests/unit/models/proxy-test.js rename to ui/packages/consul-ui/tests/unit/models/proxy-test.js diff --git a/ui-v2/tests/unit/models/role-test.js b/ui/packages/consul-ui/tests/unit/models/role-test.js similarity index 100% rename from ui-v2/tests/unit/models/role-test.js rename to ui/packages/consul-ui/tests/unit/models/role-test.js diff --git a/ui-v2/tests/unit/models/service-instance-test.js b/ui/packages/consul-ui/tests/unit/models/service-instance-test.js similarity index 100% rename from ui-v2/tests/unit/models/service-instance-test.js rename to ui/packages/consul-ui/tests/unit/models/service-instance-test.js diff --git a/ui-v2/tests/unit/models/service-test.js b/ui/packages/consul-ui/tests/unit/models/service-test.js similarity index 100% rename from ui-v2/tests/unit/models/service-test.js rename to ui/packages/consul-ui/tests/unit/models/service-test.js diff --git a/ui-v2/tests/unit/models/session-test.js b/ui/packages/consul-ui/tests/unit/models/session-test.js similarity index 100% rename from ui-v2/tests/unit/models/session-test.js rename to ui/packages/consul-ui/tests/unit/models/session-test.js diff --git a/ui-v2/tests/unit/models/token-test.js b/ui/packages/consul-ui/tests/unit/models/token-test.js similarity index 100% rename from ui-v2/tests/unit/models/token-test.js rename to ui/packages/consul-ui/tests/unit/models/token-test.js diff --git a/ui-v2/tests/unit/routes/application-test.js b/ui/packages/consul-ui/tests/unit/routes/application-test.js similarity index 100% rename from ui-v2/tests/unit/routes/application-test.js rename to ui/packages/consul-ui/tests/unit/routes/application-test.js diff --git a/ui-v2/tests/unit/routes/dc-test.js b/ui/packages/consul-ui/tests/unit/routes/dc-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/policies/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/policies/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/policies/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/policies/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/policies/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/policies/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/policies/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/roles/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/roles/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/roles/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/roles/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/roles/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/roles/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/roles/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/tokens/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/tokens/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/tokens/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/tokens/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/acls/tokens/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/acls/tokens/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/acls/tokens/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/intentions/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/intentions/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/intentions/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/intentions/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/intentions/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/intentions/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/intentions/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/intentions/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/intentions/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/intentions/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/kv/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/kv/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/kv/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/kv/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/kv/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/kv/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/kv/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/kv/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/kv/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/kv/root-create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/kv/root-create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/kv/root-create-test.js diff --git a/ui-v2/tests/unit/routes/dc/nodes/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/nodes/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/nodes/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/nodes/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/nodes/show-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/nodes/show-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/nodes/show-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/nodes/show-test.js diff --git a/ui-v2/tests/unit/routes/dc/nspaces/create-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/nspaces/create-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/nspaces/create-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/nspaces/create-test.js diff --git a/ui-v2/tests/unit/routes/dc/nspaces/edit-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/nspaces/edit-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/nspaces/edit-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/nspaces/edit-test.js diff --git a/ui-v2/tests/unit/routes/dc/nspaces/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/nspaces/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/nspaces/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/nspaces/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/services/index-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/services/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/services/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/services/index-test.js diff --git a/ui-v2/tests/unit/routes/dc/services/instance-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/services/instance-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/services/instance-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/services/instance-test.js diff --git a/ui-v2/tests/unit/routes/dc/services/show-test.js b/ui/packages/consul-ui/tests/unit/routes/dc/services/show-test.js similarity index 100% rename from ui-v2/tests/unit/routes/dc/services/show-test.js rename to ui/packages/consul-ui/tests/unit/routes/dc/services/show-test.js diff --git a/ui-v2/tests/unit/routes/index-test.js b/ui/packages/consul-ui/tests/unit/routes/index-test.js similarity index 100% rename from ui-v2/tests/unit/routes/index-test.js rename to ui/packages/consul-ui/tests/unit/routes/index-test.js diff --git a/ui-v2/tests/unit/routes/notfound-test.js b/ui/packages/consul-ui/tests/unit/routes/notfound-test.js similarity index 100% rename from ui-v2/tests/unit/routes/notfound-test.js rename to ui/packages/consul-ui/tests/unit/routes/notfound-test.js diff --git a/ui-v2/tests/unit/routes/nspace-test.js b/ui/packages/consul-ui/tests/unit/routes/nspace-test.js similarity index 100% rename from ui-v2/tests/unit/routes/nspace-test.js rename to ui/packages/consul-ui/tests/unit/routes/nspace-test.js diff --git a/ui-v2/tests/unit/routes/settings-test.js b/ui/packages/consul-ui/tests/unit/routes/settings-test.js similarity index 100% rename from ui-v2/tests/unit/routes/settings-test.js rename to ui/packages/consul-ui/tests/unit/routes/settings-test.js diff --git a/ui-v2/tests/unit/search/filters/acl-test.js b/ui/packages/consul-ui/tests/unit/search/filters/acl-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/acl-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/acl-test.js diff --git a/ui-v2/tests/unit/search/filters/kv-test.js b/ui/packages/consul-ui/tests/unit/search/filters/kv-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/kv-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/kv-test.js diff --git a/ui-v2/tests/unit/search/filters/node-test.js b/ui/packages/consul-ui/tests/unit/search/filters/node-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/node-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/node-test.js diff --git a/ui-v2/tests/unit/search/filters/node/service-test.js b/ui/packages/consul-ui/tests/unit/search/filters/node/service-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/node/service-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/node/service-test.js diff --git a/ui-v2/tests/unit/search/filters/policy-test.js b/ui/packages/consul-ui/tests/unit/search/filters/policy-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/policy-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/policy-test.js diff --git a/ui-v2/tests/unit/search/filters/role-test.js b/ui/packages/consul-ui/tests/unit/search/filters/role-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/role-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/role-test.js diff --git a/ui-v2/tests/unit/search/filters/service-test.js b/ui/packages/consul-ui/tests/unit/search/filters/service-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/service-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/service-test.js diff --git a/ui-v2/tests/unit/search/filters/service/node-test.js b/ui/packages/consul-ui/tests/unit/search/filters/service/node-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/service/node-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/service/node-test.js diff --git a/ui-v2/tests/unit/search/filters/token-test.js b/ui/packages/consul-ui/tests/unit/search/filters/token-test.js similarity index 100% rename from ui-v2/tests/unit/search/filters/token-test.js rename to ui/packages/consul-ui/tests/unit/search/filters/token-test.js diff --git a/ui-v2/tests/unit/search/filters/intention-test.js b/ui/packages/consul-ui/tests/unit/search/predicates/intention-test.js similarity index 75% rename from ui-v2/tests/unit/search/filters/intention-test.js rename to ui/packages/consul-ui/tests/unit/search/predicates/intention-test.js index a3357ef6d..a7c39bb4d 100644 --- a/ui-v2/tests/unit/search/filters/intention-test.js +++ b/ui/packages/consul-ui/tests/unit/search/predicates/intention-test.js @@ -1,8 +1,8 @@ -import getFilter from 'consul-ui/search/filters/intention'; +import getPredicate from 'consul-ui/search/predicates/intention'; import { module, test } from 'qunit'; -module('Unit | Search | Filter | intention', function() { - const filter = getFilter(cb => cb); +module('Unit | Search | Predicate | intention', function() { + const predicate = getPredicate(); test('items are found by properties', function(assert) { [ { @@ -14,9 +14,7 @@ module('Unit | Search | Filter | intention', function() { DestinationName: 'hiT', }, ].forEach(function(item) { - const actual = filter(item, { - s: 'hit', - }); + const actual = predicate('hit')(item); assert.ok(actual); }); }); @@ -27,9 +25,7 @@ module('Unit | Search | Filter | intention', function() { DestinationName: 'destination', }, ].forEach(function(item) { - const actual = filter(item, { - s: '*', - }); + const actual = predicate('*')(item); assert.notOk(actual); }); }); @@ -44,9 +40,7 @@ module('Unit | Search | Filter | intention', function() { DestinationName: '*', }, ].forEach(function(item) { - const actual = filter(item, { - s: '*', - }); + const actual = predicate('*')(item); assert.ok(actual); }); }); @@ -62,9 +56,7 @@ module('Unit | Search | Filter | intention', function() { }, ].forEach(function(item) { ['All Services (*)', 'SerVices', '(*)', '*', 'vIces', 'lL Ser'].forEach(function(term) { - const actual = filter(item, { - s: term, - }); + const actual = predicate(term)(item); assert.ok(actual); }); }); diff --git a/ui-v2/tests/unit/serializers/acl-test.js b/ui/packages/consul-ui/tests/unit/serializers/acl-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/acl-test.js rename to ui/packages/consul-ui/tests/unit/serializers/acl-test.js diff --git a/ui-v2/tests/unit/serializers/application-test.js b/ui/packages/consul-ui/tests/unit/serializers/application-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/application-test.js rename to ui/packages/consul-ui/tests/unit/serializers/application-test.js diff --git a/ui-v2/tests/unit/serializers/coordinate-test.js b/ui/packages/consul-ui/tests/unit/serializers/coordinate-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/coordinate-test.js rename to ui/packages/consul-ui/tests/unit/serializers/coordinate-test.js diff --git a/ui-v2/tests/unit/serializers/dc-test.js b/ui/packages/consul-ui/tests/unit/serializers/dc-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/dc-test.js rename to ui/packages/consul-ui/tests/unit/serializers/dc-test.js diff --git a/ui-v2/tests/unit/serializers/discovery-chain-test.js b/ui/packages/consul-ui/tests/unit/serializers/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/discovery-chain-test.js rename to ui/packages/consul-ui/tests/unit/serializers/discovery-chain-test.js diff --git a/ui-v2/tests/unit/serializers/intention-test.js b/ui/packages/consul-ui/tests/unit/serializers/intention-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/intention-test.js rename to ui/packages/consul-ui/tests/unit/serializers/intention-test.js diff --git a/ui-v2/tests/unit/serializers/kv-test.js b/ui/packages/consul-ui/tests/unit/serializers/kv-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/kv-test.js rename to ui/packages/consul-ui/tests/unit/serializers/kv-test.js diff --git a/ui-v2/tests/unit/serializers/node-test.js b/ui/packages/consul-ui/tests/unit/serializers/node-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/node-test.js rename to ui/packages/consul-ui/tests/unit/serializers/node-test.js diff --git a/ui-v2/tests/unit/serializers/nspace-test.js b/ui/packages/consul-ui/tests/unit/serializers/nspace-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/nspace-test.js rename to ui/packages/consul-ui/tests/unit/serializers/nspace-test.js diff --git a/ui-v2/tests/unit/serializers/oidc-provider-test.js b/ui/packages/consul-ui/tests/unit/serializers/oidc-provider-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/oidc-provider-test.js rename to ui/packages/consul-ui/tests/unit/serializers/oidc-provider-test.js diff --git a/ui-v2/tests/unit/serializers/policy-test.js b/ui/packages/consul-ui/tests/unit/serializers/policy-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/policy-test.js rename to ui/packages/consul-ui/tests/unit/serializers/policy-test.js diff --git a/ui-v2/tests/unit/serializers/proxy-test.js b/ui/packages/consul-ui/tests/unit/serializers/proxy-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/proxy-test.js rename to ui/packages/consul-ui/tests/unit/serializers/proxy-test.js diff --git a/ui-v2/tests/unit/serializers/role-test.js b/ui/packages/consul-ui/tests/unit/serializers/role-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/role-test.js rename to ui/packages/consul-ui/tests/unit/serializers/role-test.js diff --git a/ui-v2/tests/unit/serializers/service-instance-test.js b/ui/packages/consul-ui/tests/unit/serializers/service-instance-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/service-instance-test.js rename to ui/packages/consul-ui/tests/unit/serializers/service-instance-test.js diff --git a/ui-v2/tests/unit/serializers/service-test.js b/ui/packages/consul-ui/tests/unit/serializers/service-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/service-test.js rename to ui/packages/consul-ui/tests/unit/serializers/service-test.js diff --git a/ui-v2/tests/unit/serializers/session-test.js b/ui/packages/consul-ui/tests/unit/serializers/session-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/session-test.js rename to ui/packages/consul-ui/tests/unit/serializers/session-test.js diff --git a/ui-v2/tests/unit/serializers/token-test.js b/ui/packages/consul-ui/tests/unit/serializers/token-test.js similarity index 100% rename from ui-v2/tests/unit/serializers/token-test.js rename to ui/packages/consul-ui/tests/unit/serializers/token-test.js diff --git a/ui-v2/tests/unit/services/atob-test.js b/ui/packages/consul-ui/tests/unit/services/atob-test.js similarity index 100% rename from ui-v2/tests/unit/services/atob-test.js rename to ui/packages/consul-ui/tests/unit/services/atob-test.js diff --git a/ui-v2/tests/unit/services/btoa-test.js b/ui/packages/consul-ui/tests/unit/services/btoa-test.js similarity index 100% rename from ui-v2/tests/unit/services/btoa-test.js rename to ui/packages/consul-ui/tests/unit/services/btoa-test.js diff --git a/ui-v2/tests/unit/services/client/connections-test.js b/ui/packages/consul-ui/tests/unit/services/client/connections-test.js similarity index 100% rename from ui-v2/tests/unit/services/client/connections-test.js rename to ui/packages/consul-ui/tests/unit/services/client/connections-test.js diff --git a/ui-v2/tests/unit/services/client/http-test.js b/ui/packages/consul-ui/tests/unit/services/client/http-test.js similarity index 100% rename from ui-v2/tests/unit/services/client/http-test.js rename to ui/packages/consul-ui/tests/unit/services/client/http-test.js diff --git a/ui-v2/tests/unit/services/client/transports/xhr-test.js b/ui/packages/consul-ui/tests/unit/services/client/transports/xhr-test.js similarity index 100% rename from ui-v2/tests/unit/services/client/transports/xhr-test.js rename to ui/packages/consul-ui/tests/unit/services/client/transports/xhr-test.js diff --git a/ui-v2/tests/unit/services/clipboard/local-storage-test.js b/ui/packages/consul-ui/tests/unit/services/clipboard/local-storage-test.js similarity index 100% rename from ui-v2/tests/unit/services/clipboard/local-storage-test.js rename to ui/packages/consul-ui/tests/unit/services/clipboard/local-storage-test.js diff --git a/ui-v2/tests/unit/services/clipboard/os-test.js b/ui/packages/consul-ui/tests/unit/services/clipboard/os-test.js similarity index 100% rename from ui-v2/tests/unit/services/clipboard/os-test.js rename to ui/packages/consul-ui/tests/unit/services/clipboard/os-test.js diff --git a/ui-v2/tests/unit/services/code-mirror/linter-test.js b/ui/packages/consul-ui/tests/unit/services/code-mirror/linter-test.js similarity index 100% rename from ui-v2/tests/unit/services/code-mirror/linter-test.js rename to ui/packages/consul-ui/tests/unit/services/code-mirror/linter-test.js diff --git a/ui-v2/tests/unit/services/data-source/protocols/http-test.js b/ui/packages/consul-ui/tests/unit/services/data-source/protocols/http-test.js similarity index 100% rename from ui-v2/tests/unit/services/data-source/protocols/http-test.js rename to ui/packages/consul-ui/tests/unit/services/data-source/protocols/http-test.js diff --git a/ui-v2/tests/unit/services/data-source/protocols/local-storage-test.js b/ui/packages/consul-ui/tests/unit/services/data-source/protocols/local-storage-test.js similarity index 100% rename from ui-v2/tests/unit/services/data-source/protocols/local-storage-test.js rename to ui/packages/consul-ui/tests/unit/services/data-source/protocols/local-storage-test.js diff --git a/ui-v2/tests/unit/services/data-structs-test.js b/ui/packages/consul-ui/tests/unit/services/data-structs-test.js similarity index 100% rename from ui-v2/tests/unit/services/data-structs-test.js rename to ui/packages/consul-ui/tests/unit/services/data-structs-test.js diff --git a/ui-v2/tests/unit/services/dom-test.js b/ui/packages/consul-ui/tests/unit/services/dom-test.js similarity index 100% rename from ui-v2/tests/unit/services/dom-test.js rename to ui/packages/consul-ui/tests/unit/services/dom-test.js diff --git a/ui-v2/tests/unit/services/encoder-test.js b/ui/packages/consul-ui/tests/unit/services/encoder-test.js similarity index 100% rename from ui-v2/tests/unit/services/encoder-test.js rename to ui/packages/consul-ui/tests/unit/services/encoder-test.js diff --git a/ui-v2/tests/unit/services/env-test.js b/ui/packages/consul-ui/tests/unit/services/env-test.js similarity index 100% rename from ui-v2/tests/unit/services/env-test.js rename to ui/packages/consul-ui/tests/unit/services/env-test.js diff --git a/ui-v2/tests/unit/services/feedback-test.js b/ui/packages/consul-ui/tests/unit/services/feedback-test.js similarity index 100% rename from ui-v2/tests/unit/services/feedback-test.js rename to ui/packages/consul-ui/tests/unit/services/feedback-test.js diff --git a/ui-v2/tests/unit/services/form-test.js b/ui/packages/consul-ui/tests/unit/services/form-test.js similarity index 100% rename from ui-v2/tests/unit/services/form-test.js rename to ui/packages/consul-ui/tests/unit/services/form-test.js diff --git a/ui-v2/tests/unit/services/logger-test.js b/ui/packages/consul-ui/tests/unit/services/logger-test.js similarity index 100% rename from ui-v2/tests/unit/services/logger-test.js rename to ui/packages/consul-ui/tests/unit/services/logger-test.js diff --git a/ui-v2/tests/unit/services/repository-test.js b/ui/packages/consul-ui/tests/unit/services/repository-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository-test.js rename to ui/packages/consul-ui/tests/unit/services/repository-test.js diff --git a/ui-v2/tests/unit/services/repository/acl-test.js b/ui/packages/consul-ui/tests/unit/services/repository/acl-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/acl-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/acl-test.js diff --git a/ui-v2/tests/unit/services/repository/coordinate-test.js b/ui/packages/consul-ui/tests/unit/services/repository/coordinate-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/coordinate-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/coordinate-test.js diff --git a/ui-v2/tests/unit/services/repository/dc-test.js b/ui/packages/consul-ui/tests/unit/services/repository/dc-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/dc-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/dc-test.js diff --git a/ui-v2/tests/unit/services/repository/discovery-chain-test.js b/ui/packages/consul-ui/tests/unit/services/repository/discovery-chain-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/discovery-chain-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/discovery-chain-test.js diff --git a/ui-v2/tests/unit/services/repository/intention-test.js b/ui/packages/consul-ui/tests/unit/services/repository/intention-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/intention-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/intention-test.js diff --git a/ui-v2/tests/unit/services/repository/kv-test.js b/ui/packages/consul-ui/tests/unit/services/repository/kv-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/kv-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/kv-test.js diff --git a/ui-v2/tests/unit/services/repository/node-test.js b/ui/packages/consul-ui/tests/unit/services/repository/node-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/node-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/node-test.js diff --git a/ui-v2/tests/unit/services/repository/nspace/disabled-test.js b/ui/packages/consul-ui/tests/unit/services/repository/nspace/disabled-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/nspace/disabled-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/nspace/disabled-test.js diff --git a/ui-v2/tests/unit/services/repository/nspace/enabled-test.js b/ui/packages/consul-ui/tests/unit/services/repository/nspace/enabled-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/nspace/enabled-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/nspace/enabled-test.js diff --git a/ui-v2/tests/unit/services/repository/policy-test.js b/ui/packages/consul-ui/tests/unit/services/repository/policy-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/policy-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/policy-test.js diff --git a/ui-v2/tests/unit/services/repository/role-test.js b/ui/packages/consul-ui/tests/unit/services/repository/role-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/role-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/role-test.js diff --git a/ui-v2/tests/unit/services/repository/service-instance-test.js b/ui/packages/consul-ui/tests/unit/services/repository/service-instance-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/service-instance-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/service-instance-test.js diff --git a/ui-v2/tests/unit/services/repository/service-test.js b/ui/packages/consul-ui/tests/unit/services/repository/service-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/service-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/service-test.js diff --git a/ui-v2/tests/unit/services/repository/session-test.js b/ui/packages/consul-ui/tests/unit/services/repository/session-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/session-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/session-test.js diff --git a/ui-v2/tests/unit/services/repository/token-test.js b/ui/packages/consul-ui/tests/unit/services/repository/token-test.js similarity index 100% rename from ui-v2/tests/unit/services/repository/token-test.js rename to ui/packages/consul-ui/tests/unit/services/repository/token-test.js diff --git a/ui-v2/tests/unit/services/search-test.js b/ui/packages/consul-ui/tests/unit/services/search-test.js similarity index 100% rename from ui-v2/tests/unit/services/search-test.js rename to ui/packages/consul-ui/tests/unit/services/search-test.js diff --git a/ui-v2/tests/unit/services/settings-test.js b/ui/packages/consul-ui/tests/unit/services/settings-test.js similarity index 100% rename from ui-v2/tests/unit/services/settings-test.js rename to ui/packages/consul-ui/tests/unit/services/settings-test.js diff --git a/ui-v2/tests/unit/services/sort-test.js b/ui/packages/consul-ui/tests/unit/services/sort-test.js similarity index 100% rename from ui-v2/tests/unit/services/sort-test.js rename to ui/packages/consul-ui/tests/unit/services/sort-test.js diff --git a/ui-v2/tests/unit/services/state-test.js b/ui/packages/consul-ui/tests/unit/services/state-test.js similarity index 100% rename from ui-v2/tests/unit/services/state-test.js rename to ui/packages/consul-ui/tests/unit/services/state-test.js diff --git a/ui-v2/tests/unit/services/store-test.js b/ui/packages/consul-ui/tests/unit/services/store-test.js similarity index 100% rename from ui-v2/tests/unit/services/store-test.js rename to ui/packages/consul-ui/tests/unit/services/store-test.js diff --git a/ui-v2/tests/unit/services/ticker-test.js b/ui/packages/consul-ui/tests/unit/services/ticker-test.js similarity index 100% rename from ui-v2/tests/unit/services/ticker-test.js rename to ui/packages/consul-ui/tests/unit/services/ticker-test.js diff --git a/ui-v2/tests/unit/services/timeout-test.js b/ui/packages/consul-ui/tests/unit/services/timeout-test.js similarity index 100% rename from ui-v2/tests/unit/services/timeout-test.js rename to ui/packages/consul-ui/tests/unit/services/timeout-test.js diff --git a/ui-v2/tests/unit/sort/comparators/service-test.js b/ui/packages/consul-ui/tests/unit/sort/comparators/service-test.js similarity index 100% rename from ui-v2/tests/unit/sort/comparators/service-test.js rename to ui/packages/consul-ui/tests/unit/sort/comparators/service-test.js diff --git a/ui-v2/tests/unit/utils/acls-status-test.js b/ui/packages/consul-ui/tests/unit/utils/acls-status-test.js similarity index 100% rename from ui-v2/tests/unit/utils/acls-status-test.js rename to ui/packages/consul-ui/tests/unit/utils/acls-status-test.js diff --git a/ui-v2/tests/unit/utils/ascend-test.js b/ui/packages/consul-ui/tests/unit/utils/ascend-test.js similarity index 100% rename from ui-v2/tests/unit/utils/ascend-test.js rename to ui/packages/consul-ui/tests/unit/utils/ascend-test.js diff --git a/ui-v2/tests/unit/utils/atob-test.js b/ui/packages/consul-ui/tests/unit/utils/atob-test.js similarity index 100% rename from ui-v2/tests/unit/utils/atob-test.js rename to ui/packages/consul-ui/tests/unit/utils/atob-test.js diff --git a/ui-v2/tests/unit/utils/btoa-test.js b/ui/packages/consul-ui/tests/unit/utils/btoa-test.js similarity index 100% rename from ui-v2/tests/unit/utils/btoa-test.js rename to ui/packages/consul-ui/tests/unit/utils/btoa-test.js diff --git a/ui-v2/tests/unit/utils/callable-type-test.js b/ui/packages/consul-ui/tests/unit/utils/callable-type-test.js similarity index 100% rename from ui-v2/tests/unit/utils/callable-type-test.js rename to ui/packages/consul-ui/tests/unit/utils/callable-type-test.js diff --git a/ui-v2/tests/unit/utils/create-fingerprinter-test.js b/ui/packages/consul-ui/tests/unit/utils/create-fingerprinter-test.js similarity index 100% rename from ui-v2/tests/unit/utils/create-fingerprinter-test.js rename to ui/packages/consul-ui/tests/unit/utils/create-fingerprinter-test.js diff --git a/ui-v2/tests/unit/utils/dom/click-first-anchor-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/click-first-anchor-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/click-first-anchor-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/click-first-anchor-test.js diff --git a/ui-v2/tests/unit/utils/dom/closest-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/closest-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/closest-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/closest-test.js diff --git a/ui-v2/tests/unit/utils/dom/create-listeners-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/create-listeners-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/create-listeners-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/create-listeners-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/blocking-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/blocking-test.js similarity index 98% rename from ui-v2/tests/unit/utils/dom/event-source/blocking-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/blocking-test.js index 51a0e3d21..49d6dac98 100644 --- a/ui-v2/tests/unit/utils/dom/event-source/blocking-test.js +++ b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/blocking-test.js @@ -51,8 +51,8 @@ module('Unit | Utility | dom/event-source/blocking', function() { undefined, null, new Error(), + { statusCode: 404 }, { errors: [] }, - { errors: [{ status: 501 }] }, { errors: [{ status: '401' }] }, { errors: [{ status: '500' }] }, { errors: [{ status: '5' }] }, @@ -67,6 +67,8 @@ module('Unit | Utility | dom/event-source/blocking', function() { }); test('the 5xx backoff returns a resolve promise on a 5xx (apart from 500)', function(assert) { [ + { statusCode: 501 }, + { errors: [{ status: 501 }] }, { errors: [{ status: '501' }] }, { errors: [{ status: '503' }] }, { errors: [{ status: '504' }] }, diff --git a/ui-v2/tests/unit/utils/dom/event-source/cache-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/cache-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/cache-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/cache-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/callable-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/callable-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/callable-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/callable-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/index-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/index-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/index-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/index-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/openable-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/openable-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/openable-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/openable-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/proxy-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/proxy-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/proxy-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/proxy-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/resolver-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/resolver-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/resolver-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/resolver-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-source/storage-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-source/storage-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-source/storage-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-source/storage-test.js diff --git a/ui-v2/tests/unit/utils/dom/event-target/rsvp-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/event-target/rsvp-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/event-target/rsvp-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/event-target/rsvp-test.js diff --git a/ui-v2/tests/unit/utils/dom/get-component-factory-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/get-component-factory-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/get-component-factory-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/get-component-factory-test.js diff --git a/ui-v2/tests/unit/utils/dom/is-outside-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/is-outside-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/is-outside-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/is-outside-test.js diff --git a/ui-v2/tests/unit/utils/dom/normalize-event-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/normalize-event-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/normalize-event-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/normalize-event-test.js diff --git a/ui-v2/tests/unit/utils/dom/qsa-factory-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/qsa-factory-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/qsa-factory-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/qsa-factory-test.js diff --git a/ui-v2/tests/unit/utils/dom/sibling-test.js b/ui/packages/consul-ui/tests/unit/utils/dom/sibling-test.js similarity index 100% rename from ui-v2/tests/unit/utils/dom/sibling-test.js rename to ui/packages/consul-ui/tests/unit/utils/dom/sibling-test.js diff --git a/ui-v2/tests/unit/utils/get-environment-test.js b/ui/packages/consul-ui/tests/unit/utils/get-environment-test.js similarity index 100% rename from ui-v2/tests/unit/utils/get-environment-test.js rename to ui/packages/consul-ui/tests/unit/utils/get-environment-test.js diff --git a/ui-v2/tests/unit/utils/get-form-name-property-test.js b/ui/packages/consul-ui/tests/unit/utils/get-form-name-property-test.js similarity index 100% rename from ui-v2/tests/unit/utils/get-form-name-property-test.js rename to ui/packages/consul-ui/tests/unit/utils/get-form-name-property-test.js diff --git a/ui-v2/tests/unit/utils/helpers/call-if-type-test.js b/ui/packages/consul-ui/tests/unit/utils/helpers/call-if-type-test.js similarity index 100% rename from ui-v2/tests/unit/utils/helpers/call-if-type-test.js rename to ui/packages/consul-ui/tests/unit/utils/helpers/call-if-type-test.js diff --git a/ui-v2/tests/unit/utils/http/acl/is-valid-server-error-test.js b/ui/packages/consul-ui/tests/unit/utils/http/acl/is-valid-server-error-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/acl/is-valid-server-error-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/acl/is-valid-server-error-test.js diff --git a/ui-v2/tests/unit/utils/http/create-headers-test.js b/ui/packages/consul-ui/tests/unit/utils/http/create-headers-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/create-headers-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/create-headers-test.js diff --git a/ui-v2/tests/unit/utils/http/create-query-params-test.js b/ui/packages/consul-ui/tests/unit/utils/http/create-query-params-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/create-query-params-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/create-query-params-test.js diff --git a/ui-v2/tests/unit/utils/http/create-url-test.js b/ui/packages/consul-ui/tests/unit/utils/http/create-url-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/create-url-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/create-url-test.js diff --git a/ui-v2/tests/unit/utils/http/error-test.js b/ui/packages/consul-ui/tests/unit/utils/http/error-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/error-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/error-test.js diff --git a/ui-v2/tests/unit/utils/http/request-test.js b/ui/packages/consul-ui/tests/unit/utils/http/request-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/request-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/request-test.js diff --git a/ui-v2/tests/unit/utils/http/xhr-test.js b/ui/packages/consul-ui/tests/unit/utils/http/xhr-test.js similarity index 100% rename from ui-v2/tests/unit/utils/http/xhr-test.js rename to ui/packages/consul-ui/tests/unit/utils/http/xhr-test.js diff --git a/ui-v2/tests/unit/utils/isFolder-test.js b/ui/packages/consul-ui/tests/unit/utils/isFolder-test.js similarity index 100% rename from ui-v2/tests/unit/utils/isFolder-test.js rename to ui/packages/consul-ui/tests/unit/utils/isFolder-test.js diff --git a/ui-v2/tests/unit/utils/keyToArray-test.js b/ui/packages/consul-ui/tests/unit/utils/keyToArray-test.js similarity index 100% rename from ui-v2/tests/unit/utils/keyToArray-test.js rename to ui/packages/consul-ui/tests/unit/utils/keyToArray-test.js diff --git a/ui-v2/tests/unit/utils/left-trim-test.js b/ui/packages/consul-ui/tests/unit/utils/left-trim-test.js similarity index 100% rename from ui-v2/tests/unit/utils/left-trim-test.js rename to ui/packages/consul-ui/tests/unit/utils/left-trim-test.js diff --git a/ui-v2/tests/unit/utils/maybe-call-test.js b/ui/packages/consul-ui/tests/unit/utils/maybe-call-test.js similarity index 100% rename from ui-v2/tests/unit/utils/maybe-call-test.js rename to ui/packages/consul-ui/tests/unit/utils/maybe-call-test.js diff --git a/ui-v2/tests/unit/utils/non-empty-set-test.js b/ui/packages/consul-ui/tests/unit/utils/non-empty-set-test.js similarity index 100% rename from ui-v2/tests/unit/utils/non-empty-set-test.js rename to ui/packages/consul-ui/tests/unit/utils/non-empty-set-test.js diff --git a/ui-v2/tests/unit/utils/promisedTimeout-test.js b/ui/packages/consul-ui/tests/unit/utils/promisedTimeout-test.js similarity index 100% rename from ui-v2/tests/unit/utils/promisedTimeout-test.js rename to ui/packages/consul-ui/tests/unit/utils/promisedTimeout-test.js diff --git a/ui-v2/tests/unit/utils/remove-null-test.js b/ui/packages/consul-ui/tests/unit/utils/remove-null-test.js similarity index 100% rename from ui-v2/tests/unit/utils/remove-null-test.js rename to ui/packages/consul-ui/tests/unit/utils/remove-null-test.js diff --git a/ui-v2/tests/unit/utils/right-trim-test.js b/ui/packages/consul-ui/tests/unit/utils/right-trim-test.js similarity index 100% rename from ui-v2/tests/unit/utils/right-trim-test.js rename to ui/packages/consul-ui/tests/unit/utils/right-trim-test.js diff --git a/ui-v2/tests/unit/utils/routing/transitionable-test.js b/ui/packages/consul-ui/tests/unit/utils/routing/transitionable-test.js similarity index 100% rename from ui-v2/tests/unit/utils/routing/transitionable-test.js rename to ui/packages/consul-ui/tests/unit/utils/routing/transitionable-test.js diff --git a/ui-v2/tests/unit/utils/routing/walk-test.js b/ui/packages/consul-ui/tests/unit/utils/routing/walk-test.js similarity index 100% rename from ui-v2/tests/unit/utils/routing/walk-test.js rename to ui/packages/consul-ui/tests/unit/utils/routing/walk-test.js diff --git a/ui-v2/tests/unit/utils/routing/wildcard-test.js b/ui/packages/consul-ui/tests/unit/utils/routing/wildcard-test.js similarity index 100% rename from ui-v2/tests/unit/utils/routing/wildcard-test.js rename to ui/packages/consul-ui/tests/unit/utils/routing/wildcard-test.js diff --git a/ui-v2/tests/unit/utils/search/filterable-test.js b/ui/packages/consul-ui/tests/unit/utils/search/filterable-test.js similarity index 100% rename from ui-v2/tests/unit/utils/search/filterable-test.js rename to ui/packages/consul-ui/tests/unit/utils/search/filterable-test.js diff --git a/ui-v2/tests/unit/utils/storage/local-storage-test.js b/ui/packages/consul-ui/tests/unit/utils/storage/local-storage-test.js similarity index 100% rename from ui-v2/tests/unit/utils/storage/local-storage-test.js rename to ui/packages/consul-ui/tests/unit/utils/storage/local-storage-test.js diff --git a/ui-v2/tests/unit/utils/templatize-test.js b/ui/packages/consul-ui/tests/unit/utils/templatize-test.js similarity index 100% rename from ui-v2/tests/unit/utils/templatize-test.js rename to ui/packages/consul-ui/tests/unit/utils/templatize-test.js diff --git a/ui-v2/tests/unit/utils/ticker/index-test.js b/ui/packages/consul-ui/tests/unit/utils/ticker/index-test.js similarity index 100% rename from ui-v2/tests/unit/utils/ticker/index-test.js rename to ui/packages/consul-ui/tests/unit/utils/ticker/index-test.js diff --git a/ui-v2/tests/unit/utils/ucfirst-test.js b/ui/packages/consul-ui/tests/unit/utils/ucfirst-test.js similarity index 100% rename from ui-v2/tests/unit/utils/ucfirst-test.js rename to ui/packages/consul-ui/tests/unit/utils/ucfirst-test.js diff --git a/ui-v2/tests/unit/utils/update-array-object-test.js b/ui/packages/consul-ui/tests/unit/utils/update-array-object-test.js similarity index 100% rename from ui-v2/tests/unit/utils/update-array-object-test.js rename to ui/packages/consul-ui/tests/unit/utils/update-array-object-test.js diff --git a/ui/packages/consul-ui/vendor/metrics-providers/consul.js b/ui/packages/consul-ui/vendor/metrics-providers/consul.js new file mode 100644 index 000000000..a77f64e90 --- /dev/null +++ b/ui/packages/consul-ui/vendor/metrics-providers/consul.js @@ -0,0 +1,47 @@ +(function(global) { + // Current interface is these three methods. + const requiredMethods = [ + 'init', + 'serviceRecentSummarySeries', + 'serviceRecentSummaryStats', + 'upstreamRecentSummaryStats', + 'downstreamRecentSummaryStats', + ]; + + // This is a bit gross but we want to support simple extensibility by + // including JS in the browser without forcing operators to setup a whole + // transpiling stack. So for now we use a window global as a thin registry for + // these providers. + class Consul { + constructor() { + this.registry = {}; + this.providers = {}; + } + + registerMetricsProvider(name, provider) { + // Basic check that it matches the type we expect + for (var m of requiredMethods) { + if (typeof provider[m] !== 'function') { + throw new Error(`Can't register metrics provider '${name}': missing ${m} method.`); + } + } + this.registry[name] = provider; + } + + getMetricsProvider(name, options) { + if (!(name in this.registry)) { + throw new Error(`Metrics Provider '${name}' is not registered.`); + } + if (name in this.providers) { + return this.providers[name]; + } + + this.providers[name] = Object.create(this.registry[name]); + this.providers[name].init(options); + + return this.providers[name]; + } + } + + global.consul = new Consul(); +})(window); diff --git a/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js b/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js new file mode 100644 index 000000000..8bd5c87fc --- /dev/null +++ b/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js @@ -0,0 +1,729 @@ +/*eslint no-console: "off"*/ +(function () { + var emptySeries = { unitSuffix: '', labels: {}, data: [] }; + + var prometheusProvider = { + options: {}, + + /** + * init is called when the provider is first loaded. + * + * options.providerOptions contains any operator configured parameters + * specified in the Consul agent config that is serving the UI. + * + * Consul will provide: + * + * 1. A boolean options.metrics_proxy_enabled to indicate whether the agent + * has a metrics proxy configured. + * 2. A fetch-like options.fetch which is a thin fetch wrapper that prefixes + * any url with the url of Consul's proxy endpoint and adds your current + * Consul ACL token to the request headers. Otherwise it functions like the + * browsers native fetch + * + * The provider should throw an Exception if the options are not valid for + * example because it requires a metrics proxy and one is not configured. + */ + init: function (options) { + this.options = options; + if (!this.options.metrics_proxy_enabled) { + throw new Error( + 'prometheus metrics provider currently requires the ui_config.metrics_proxy to be configured in the Consul agent.' + ); + } + }, + + // simple httpGet function that also encodes query parameters + // before passing the constructed url through to native fetch + // any errors should throw an error with a statusCode property + httpGet: function (url, queryParams, headers) { + if (queryParams) { + var separator = url.indexOf('?') !== -1 ? '&' : '?'; + var qs = Object.keys(queryParams) + .map(function (key) { + return encodeURIComponent(key) + '=' + encodeURIComponent(queryParams[key]); + }) + .join('&'); + url = url + separator + qs; + } + // fetch the url along with any headers + return this.options.fetch(url, { headers: headers || {} }).then(function (response) { + if (response.ok) { + return response.json(); + } else { + // throw a statusCode error if any errors are received + var e = new Error('HTTP Error: ' + response.statusText); + e.statusCode = response.status; + throw e; + } + }); + }, + + /** + * serviceRecentSummarySeries should return time series for a recent time + * period summarizing the usage of the named service in the indicated + * datacenter. In Consul Enterprise a non-empty namespace is also provided. + * + * If these metrics aren't available then an empty series array may be + * returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The service's protocol must be given as one of Consul's supported + * protocols e.g. "tcp", "http", "http2", "grpc". If it is empty or the + * provider doesn't recognize the protocol, it should treat it as "tcp" and + * provide basic connection stats. + * + * The expected return value is a promise which resolves to an object that + * should look like the following: + * + * { + * // The unitSuffix is shown after the value in tooltips. Values will be + * // rounded and shortened. Larger values will already have a suffix + * // like "10k". The suffix provided here is concatenated directly + * // allowing for suffixes like "mbps/kbps" by using a suffix of "bps". + * // If the unit doesn't make sense in this format, include a + * // leading space for example " rps" would show as "1.2k rps". + * unitSuffix: " rps", + * + * // The set of labels to graph. The key should exactly correspond to a + * // property of every data point in the array below except for the + * // special case "Total" which is used to show the sum of all the + * // stacked graph values. The key is displayed in the tooltop so it + * // should be human-friendly but as concise as possible. The value is a + * // longer description that is displayed in the graph's key on request + * // to explain exactly what the metrics mean. + * labels: { + * "Total": "Total inbound requests per second.", + * "Successes": "Successful responses (with an HTTP response code ...", + * "Errors": "Error responses (with an HTTP response code in the ...", + * }, + * + * data: [ + * { + * time: 1600944516286, // milliseconds since Unix epoch + * "Successes": 1234.5, + * "Errors": 2.3, + * }, + * ... + * ] + * } + * + * Every data point object should have a value for every series label + * (except for "Total") otherwise it will be assumed to be "0". + */ + serviceRecentSummarySeries: function (service, dc, nspace, protocol, options) { + // Fetch time-series + var series = []; + var labels = []; + + // Set the start and end range here so that all queries end up with + // identical time axes. Later we might accept these as options. + var now = new Date().getTime() / 1000; + options.start = now - 15 * 60; + options.end = now; + + if (this.hasL7Metrics(protocol)) { + return this.fetchRequestRateSeries(service, dc, nspace, options); + } + + // Fallback to just L4 metrics. + return this.fetchDataRateSeries(service, dc, nspace, options); + }, + + /** + * serviceRecentSummaryStats should return four summary statistics for a + * recent time period for the named service in the indicated datacenter. In + * Consul Enterprise a non-empty namespace is also provided. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The service's protocol must be given as one of Consul's supported + * protocols e.g. "tcp", "http", "http2", "grpc". If it is empty or the + * provider doesn't recognize it it should treat it as "tcp" and provide + * just basic connection stats. + * + * The expected return value is a promise which resolves to an object that + * should look like the following: + * + * { + * stats: [ // We expect four of these for now. + * { + * // label should be 3 chars or fewer as an abbreviation + * label: "SR", + * + * // desc describes the stat in a tooltip + * desc: "Success Rate - the percentage of all requests that were not 5xx status", + * + * // value is a string allowing the provider to format it and add + * // units as appropriate. It should be as compact as possible. + * value: "98%", + * } + * ] + * } + */ + serviceRecentSummaryStats: function (service, dc, nspace, protocol, options) { + // Fetch stats + var stats = []; + if (this.hasL7Metrics(protocol)) { + stats.push(this.fetchRPS(service, dc, nspace, 'service', options)); + stats.push(this.fetchER(service, dc, nspace, 'service', options)); + stats.push(this.fetchPercentile(50, service, dc, nspace, 'service', options)); + stats.push(this.fetchPercentile(99, service, dc, nspace, 'service', options)); + } else { + // Fallback to just L4 metrics. + stats.push(this.fetchConnRate(service, dc, nspace, 'service', options)); + stats.push(this.fetchServiceRx(service, dc, nspace, 'service', options)); + stats.push(this.fetchServiceTx(service, dc, nspace, 'service', options)); + stats.push(this.fetchServiceNoRoute(service, dc, nspace, 'service', options)); + } + return this.fetchStats(stats); + }, + + /** + * upstreamRecentSummaryStats should return four summary statistics for each + * upstream service over a recent time period, relative to the named service + * in the indicated datacenter. In Consul Enterprise a non-empty namespace + * is also provided. + * + * Note that the upstreams themselves might be in different datacenters but + * we only pass the target service DC since typically these metrics should + * be from the outbound listener of the target service in this DC even if + * they eventually end up in another DC. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The expected return value format is shown below: + * + * { + * stats: { + * // Each upstream will appear as an entry keyed by the upstream + * // service name. The value is an array of stats with the same + * // format as serviceRecentSummaryStats response.stats. Note that + * // different upstreams might show different stats depending on + * // their protocol. + * "upstream_name": [ + * {label: "SR", desc: "...", value: "99%"}, + * ... + * ], + * ... + * } + * } + */ + upstreamRecentSummaryStats: function (service, dc, nspace, options) { + return this.fetchRecentSummaryStats(service, dc, nspace, 'upstream', options); + }, + + /** + * downstreamRecentSummaryStats should return four summary statistics for + * each downstream service over a recent time period, relative to the named + * service in the indicated datacenter. In Consul Enterprise a non-empty + * namespace is also provided. + * + * Note that the service may have downstreams in different datacenters. For + * some metrics systems which are per-datacenter this makes it hard to query + * for all downstream metrics from one source. For now the UI will only show + * downstreams in the same datacenter as the target service. In the future + * this method may be called multiple times, once for each DC that contains + * downstream services to gather metrics from each. In that case a separate + * option for target datacenter will be used since the target service's DC + * is still needed to correctly identify the outbound clusters that will + * route to it from the remote DC. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The expected return value format is shown below: + * + * { + * stats: { + * // Each downstream will appear as an entry keyed by "service.namespace.dc". + * // The value is an array of stats with the same + * // format as serviceRecentSummaryStats response.stats. Different + * // downstreams may display different stats if required although the + * // protocol should be the same for all as it is the target + * // service's protocol that matters here. + * "web.default.dc1": [ + * {label: "SR", desc: "...", value: "99%"}, + * ... + * ], + * ... + * } + * } + */ + downstreamRecentSummaryStats: function (service, dc, nspace, options) { + return this.fetchRecentSummaryStats(service, dc, nspace, 'downstream', options); + }, + + fetchRecentSummaryStats: function (service, dc, nspace, type, options) { + // Fetch stats + var stats = []; + + // We don't know which upstreams are HTTP/TCP so just fetch all of them. + + // HTTP + stats.push(this.fetchRPS(service, dc, nspace, type, options)); + stats.push(this.fetchER(service, dc, nspace, type, options)); + stats.push(this.fetchPercentile(50, service, dc, nspace, type, options)); + stats.push(this.fetchPercentile(99, service, dc, nspace, type, options)); + + // L4 + stats.push(this.fetchConnRate(service, dc, nspace, type, options)); + stats.push(this.fetchServiceRx(service, dc, nspace, type, options)); + stats.push(this.fetchServiceTx(service, dc, nspace, type, options)); + stats.push(this.fetchServiceNoRoute(service, dc, nspace, type, options)); + + return this.fetchStatsGrouped(stats); + }, + + hasL7Metrics: function (protocol) { + return protocol === 'http' || protocol === 'http2' || protocol === 'grpc'; + }, + + fetchStats: function (statsPromises) { + var all = Promise.all(statsPromises).then(function (results) { + var data = { + stats: [], + }; + // Add all non-empty stats + for (var i = 0; i < statsPromises.length; i++) { + if (results[i].value) { + data.stats.push(results[i]); + } + } + return data; + }); + + // Fetch the metrics async, and return a promise to the result. + return all; + }, + + fetchStatsGrouped: function (statsPromises) { + var all = Promise.all(statsPromises).then(function (results) { + var data = { + stats: {}, + }; + // Add all non-empty stats + for (var i = 0; i < statsPromises.length; i++) { + if (results[i]) { + for (var group in results[i]) { + if (!results[i].hasOwnProperty(group)) continue; + if (!data.stats[group]) { + data.stats[group] = []; + } + data.stats[group].push(results[i][group]); + } + } + } + return data; + }); + + // Fetch the metrics async, and return a promise to the result. + return all; + }, + + reformatSeries: function (unitSuffix, labelMap) { + return function (response) { + // Handle empty result sets gracefully. + if ( + !response.data || + !response.data.result || + response.data.result.length == 0 || + !response.data.result[0].values || + response.data.result[0].values.length == 0 + ) { + return emptySeries; + } + // Reformat the prometheus data to be the format we want with stacked + // values as object properties. + + // Populate time values first based on first result since Prometheus will + // always return all the same points for all series in the query. + let series = response.data.result[0].values.map(function (d, i) { + return { + time: Math.round(d[0] * 1000), + }; + }); + + // Then for each series returned populate the labels and values in the + // points. + response.data.result.map(function (d) { + d.values.map(function (p, i) { + series[i][d.metric.label] = parseFloat(p[1]); + }); + }); + + return { + unitSuffix: unitSuffix, + labels: labelMap, + data: series, + }; + }; + }, + + fetchRequestRateSeries: function (service, dc, nspace, options) { + // We need the sum of all non-500 error rates as one value and the 500 + // error rate as a separate series so that they stack to show the full + // request rate. Some creative label replacement makes this possible in + // one query. + var q = + `sum by (label) (` + + // The outer label_replace catches 5xx error and relabels them as + // err=yes + `label_replace(` + + // The inner label_replace relabels all !5xx rates as err=no so they + // will get summed together. + `label_replace(` + + // Get rate of requests to the service + `irate(envoy_listener_http_downstream_rq_xx{` + + `consul_source_service="${service}",` + + `consul_source_datacenter="${dc}",` + + `consul_source_namespace="${nspace}",` + + `envoy_http_conn_manager_prefix="public_listener"}[10m])` + + // ... inner replacement matches all code classes except "5" and + // applies err=no + `, "label", "Successes", "envoy_response_code_class", "[^5]")` + + // ... outer replacement matches code=5 and applies err=yes + `, "label", "Errors", "envoy_response_code_class", "5")` + + `)`; + var labelMap = { + Total: 'Total inbound requests per second', + Successes: + 'Successful responses (with an HTTP response code not in the 5xx range) per second.', + Errors: 'Error responses (with an HTTP response code in the 5xx range) per second.', + }; + return this.fetchSeries(q, options).then(this.reformatSeries(' rps', labelMap)); + }, + + fetchDataRateSeries: function (service, dc, nspace, options) { + // 8 * converts from bytes/second to bits/second + var q = + `8 * sum by (label) (` + + // Label replace generates a unique label per rx/tx metric to stop them + // being summed together. + `label_replace(` + + // Get the tx rate + `irate(envoy_tcp_downstream_cx_tx_bytes_total{` + + `consul_source_service="${service}",` + + `consul_source_datacenter="${dc}",` + + `consul_source_namespace="${nspace}",` + + `envoy_tcp_prefix="public_listener"}[10m])` + + // Match all and apply the tx label + `, "label", "Outbound", "__name__", ".*"` + + // Union those vectors with the RX ones + `) or label_replace(` + + // Get the rx rate + `irate(envoy_tcp_downstream_cx_rx_bytes_total{` + + `consul_source_service="${service}",` + + `consul_source_datacenter="${dc}",` + + `consul_source_namespace="${nspace}",` + + `envoy_tcp_prefix="public_listener"}[10m])` + + // Match all and apply the rx label + `, "label", "Inbound", "__name__", ".*"` + + `)` + + `)`; + var labelMap = { + Total: 'Total bandwidth', + Inbound: 'Inbound data rate (data recieved) from the network in bits per second.', + Outbound: 'Outbound data rate (data transmitted) from the network in bits per second.', + }; + return this.fetchSeries(q, options).then(this.reformatSeries('bps', labelMap)); + }, + + makeSubject: function (service, dc, nspace, type) { + var entity = `${nspace}/${service} (${dc})`; + if (type == 'upstream') { + // {{GROUP}} is a placeholder that is replaced by the upstream name + return `${entity} → {{GROUP}}`; + } + if (type == 'downstream') { + // {{GROUP}} is a placeholder that is replaced by the downstream name + return `{{GROUP}} → ${entity}`; + } + return entity; + }, + + makeHTTPSelector: function (service, dc, nspace, type) { + // Downstreams are totally different + if (type == 'downstream') { + return `consul_destination_service="${service}",consul_destination_datacenter="${dc}",consul_destination_namespace="${nspace}"`; + } + var lc = `consul_source_service="${service}",consul_source_datacenter="${dc}",consul_source_namespace="${nspace}"`; + if (type == 'upstream') { + lc += `,envoy_http_conn_manager_prefix="upstream"`; + } else { + // Only care about inbound public listener + lc += `,envoy_http_conn_manager_prefix="public_listener"`; + } + return lc; + }, + + makeTCPSelector: function (service, dc, nspace, type) { + // Downstreams are totally different + if (type == 'downstream') { + return `consul_destination_service="${service}",consul_destination_datacenter="${dc}",consul_destination_namespace="${nspace}"`; + } + var lc = `consul_source_service="${service}",consul_source_datacenter="${dc}",consul_source_namespace="${nspace}"`; + if (type == 'upstream') { + lc += `,envoy_tcp_prefix=~"upstream.*"`; + } else { + // Only care about inbound public listener + lc += `,envoy_tcp_prefix="public_listener"`; + } + return lc; + }, + + groupQuery: function (type, q) { + if (type == 'upstream') { + q += ' by (consul_upstream_service,consul_upstream_datacenter,consul_upstream_namespace)'; + } else if (type == 'downstream') { + q += ' by (consul_source_service,consul_source_datacenter,consul_source_namespace)'; + } + return q; + }, + + groupByInfix: function (type) { + if (type == 'upstream') { + return 'upstream'; + } else if (type == 'downstream') { + return 'source'; + } else { + return false; + } + }, + + metricPrefixHTTP: function (type) { + if (type == 'downstream') { + return 'envoy_cluster_upstream_rq'; + } + return 'envoy_http_downstream_rq'; + }, + + metricPrefixTCP: function (type) { + if (type == 'downstream') { + return 'envoy_cluster_upstream_cx'; + } + return 'envoy_tcp_downstream_cx'; + }, + + fetchRPS: function (service, dc, nspace, type, options) { + var sel = this.makeHTTPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var metricPfx = this.metricPrefixHTTP(type); + var q = `sum(rate(${metricPfx}_completed{${sel}}[15m]))`; + return this.fetchStat( + this.groupQuery(type, q), + 'RPS', + `${subject} request rate averaged over the last 15 minutes`, + shortNumStr, + this.groupByInfix(type) + ); + }, + + fetchER: function (service, dc, nspace, type, options) { + var sel = this.makeHTTPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var groupBy = ''; + if (type == 'upstream') { + groupBy += + ' by (consul_upstream_service,consul_upstream_datacenter,consul_upstream_namespace)'; + } else if (type == 'downstream') { + groupBy += ' by (consul_source_service,consul_source_datacenter,consul_source_namespace)'; + } + var metricPfx = this.metricPrefixHTTP(type); + var q = `sum(rate(${metricPfx}_xx{${sel},envoy_response_code_class="5"}[15m]))${groupBy}/sum(rate(${metricPfx}_xx{${sel}}[15m]))${groupBy}`; + return this.fetchStat( + q, + 'ER', + `Percentage of ${subject} requests which were 5xx status over the last 15 minutes`, + function (val) { + return shortNumStr(val) + '%'; + }, + this.groupByInfix(type) + ); + }, + + fetchPercentile: function (percentile, service, dc, nspace, type, options) { + var sel = this.makeHTTPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var groupBy = 'le'; + if (type == 'upstream') { + groupBy += ',consul_upstream_service,consul_upstream_datacenter,consul_upstream_namespace'; + } else if (type == 'downstream') { + groupBy += ',consul_source_service,consul_source_datacenter,consul_source_namespace'; + } + var metricPfx = this.metricPrefixHTTP(type); + var q = `histogram_quantile(${percentile / + 100}, sum by(${groupBy}) (rate(${metricPfx}_time_bucket{${sel}}[15m])))`; + return this.fetchStat( + q, + `P${percentile}`, + `${subject} ${percentile}th percentile request service time over the last 15 minutes`, + shortTimeStr, + this.groupByInfix(type) + ); + }, + + fetchConnRate: function (service, dc, nspace, type, options) { + var sel = this.makeTCPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var metricPfx = this.metricPrefixTCP(type); + var q = `sum(rate(${metricPfx}_total{${sel}}[15m]))`; + return this.fetchStat( + this.groupQuery(type, q), + 'CR', + `${subject} inbound TCP connections per second averaged over the last 15 minutes`, + shortNumStr, + this.groupByInfix(type) + ); + }, + + fetchServiceRx: function (service, dc, nspace, type, options) { + var sel = this.makeTCPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var metricPfx = this.metricPrefixTCP(type); + var q = `8 * sum(rate(${metricPfx}_rx_bytes_total{${sel}}[15m]))`; + return this.fetchStat( + this.groupQuery(type, q), + 'RX', + `${subject} received bits per second averaged over the last 15 minutes`, + shortNumStr, + this.groupByInfix(type) + ); + }, + + fetchServiceTx: function (service, dc, nspace, type, options) { + var sel = this.makeTCPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var metricPfx = this.metricPrefixTCP(type); + var q = `8 * sum(rate(${metricPfx}_tx_bytes_total{${sel}}[15m]))`; + var self = this; + return this.fetchStat( + this.groupQuery(type, q), + 'TX', + `${subject} transmitted bits per second averaged over the last 15 minutes`, + shortNumStr, + this.groupByInfix(type) + ); + }, + + fetchServiceNoRoute: function (service, dc, nspace, type, options) { + var sel = this.makeTCPSelector(service, dc, nspace, type); + var subject = this.makeSubject(service, dc, nspace, type); + var metricPfx = this.metricPrefixTCP(type); + var metric = '_no_route'; + if (type == 'downstream') { + metric = '_connect_fail'; + } + var q = `sum(rate(${metricPfx}${metric}{${sel}}[15m]))`; + return this.fetchStat( + this.groupQuery(type, q), + 'NR', + `${subject} unroutable (failed) connections per second averaged over the last 15 minutes`, + shortNumStr, + this.groupByInfix(type) + ); + }, + + fetchStat: function (promql, label, desc, formatter, groupByInfix) { + if (!groupByInfix) { + // If we don't have a grouped result and its just a single stat, return + // no result as a zero not a missing stat. + promql += ' OR on() vector(0)'; + } + var params = { + query: promql, + time: new Date().getTime() / 1000, + }; + return this.httpGet('/api/v1/query', params).then(function (response) { + if (!groupByInfix) { + // Not grouped, expect just one stat value return that + var v = parseFloat(response.data.result[0].value[1]); + return { + label: label, + desc: desc, + value: isNaN(v) ? '-' : formatter(v), + }; + } + + var data = {}; + for (var i = 0; i < response.data.result.length; i++) { + var res = response.data.result[i]; + var v = parseFloat(res.value[1]); + var service = res.metric['consul_' + groupByInfix + '_service']; + var nspace = res.metric['consul_' + groupByInfix + '_namespace']; + var datacenter = res.metric['consul_' + groupByInfix + '_datacenter']; + var groupName = `${service}.${nspace}.${datacenter}`; + data[groupName] = { + label: label, + desc: desc.replace('{{GROUP}}', groupName), + value: isNaN(v) ? '-' : formatter(v), + }; + } + return data; + }); + }, + + fetchSeries: function (promql, options) { + var params = { + query: promql, + start: options.start, + end: options.end, + step: '10s', + timeout: '8s', + }; + return this.httpGet('/api/v1/query_range', params); + }, + }; + + // Helper functions + function shortNumStr(n) { + if (n < 1e3) { + if (Number.isInteger(n)) return '' + n; + if (n >= 100) { + // Go to 3 significant figures but wrap it in Number to avoid scientific + // notation lie 2.3e+2 for 230. + return Number(n.toPrecision(3)); + } + if (n < 1) { + // Very small numbers show with limited precision to prevent long string + // of 0.000000. + return Number(n.toFixed(2)); + } else { + // Two sig figs is enough below this + return Number(n.toPrecision(2)); + } + } + if (n >= 1e3 && n < 1e6) return +(n / 1e3).toPrecision(3) + 'k'; + if (n >= 1e6 && n < 1e9) return +(n / 1e6).toPrecision(3) + 'm'; + if (n >= 1e9 && n < 1e12) return +(n / 1e9).toPrecision(3) + 'g'; + if (n >= 1e12) return +(n / 1e12).toFixed(0) + 't'; + } + + function shortTimeStr(n) { + if (n < 1e3) return Math.round(n) + 'ms'; + + var secs = n / 1e3; + if (secs < 60) return secs.toFixed(1) + 's'; + + var mins = secs / 60; + if (mins < 60) return mins.toFixed(1) + 'm'; + + var hours = mins / 60; + if (hours < 24) return hours.toFixed(1) + 'h'; + + var days = hours / 24; + return days.toFixed(1) + 'd'; + } + + /* global consul:writable */ + window.consul.registerMetricsProvider('prometheus', prometheusProvider); +})(); diff --git a/ui-v2/yarn.lock b/ui/yarn.lock similarity index 64% rename from ui-v2/yarn.lock rename to ui/yarn.lock index c0c390b00..d9f2fbca7 100644 --- a/ui-v2/yarn.lock +++ b/ui/yarn.lock @@ -2,60 +2,32 @@ # yarn lockfile v1 -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4": +"@babel/code-frame@7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" + integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== + dependencies: + "@babel/highlight" "^7.8.3" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.5.5": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== dependencies: "@babel/highlight" "^7.10.4" -"@babel/compat-data@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.4.tgz#706a6484ee6f910b719b696a9194f8da7d7ac241" - integrity sha512-t+rjExOrSVvjQQXNp5zAIYDp00KjdvGl/TpDX5REPr0S9IAIPQMTilcfG6q8c0QFmj9lSTVySV2VTsyggvtNIw== - dependencies: - browserslist "^4.12.0" - invariant "^2.2.4" - semver "^5.5.0" +"@babel/compat-data@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.12.1.tgz#d7386a689aa0ddf06255005b4b991988021101a0" + integrity sha512-725AQupWJZ8ba0jbKceeFblZTY90McUBWMwHhkFQ9q1zKPJ95GUktljFcgcsIVwRnTnRKlcYzfiNImg5G9m6ZQ== -"@babel/compat-data@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.11.0.tgz#e9f73efe09af1355b723a7f39b11bad637d7c99c" - integrity sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ== - dependencies: - browserslist "^4.12.0" - invariant "^2.2.4" - semver "^5.5.0" - -"@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.10.2", "@babel/core@^7.2.2", "@babel/core@^7.3.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.4.tgz#780e8b83e496152f8dd7df63892b2e052bf1d51d" - integrity sha512-3A0tS0HWpy4XujGc7QtOIHTeNwUgWaZc/WuS5YQrfhU67jnVmsD6OGPc1AKHH0LJHQICGncy3+YUjIhVlfDdcA== +"@babel/core@7.11.6": + version "7.11.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.6.tgz#3a9455dc7387ff1bac45770650bc13ba04a15651" + integrity sha512-Wpcv03AGnmkgm6uS6k8iwhIwTrcP0m17TL1n1sy7qD0qelDu4XNeW0dN0mHfa+Gei211yDaLoEe/VlbXQzM4Bg== dependencies: "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.11.0": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.5.tgz#6ad96e2f71899ea3f9b651f0a911e85205d1ff6d" - integrity sha512-fsEANVOcZHzrsV6dMVWqpSeXClq3lNbYrfFGme6DE25FQWe7pyeYpXyx9guqUnpy466JLzZ8z4uwSr2iv60V5Q== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.11.5" + "@babel/generator" "^7.11.6" "@babel/helper-module-transforms" "^7.11.0" "@babel/helpers" "^7.10.4" "@babel/parser" "^7.11.5" @@ -69,26 +41,38 @@ lodash "^4.17.19" resolve "^1.3.2" semver "^5.4.1" - source-map "^0.6.1" - -"@babel/generator@^7.10.4", "@babel/generator@^7.4.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.4.tgz#e49eeed9fe114b62fa5b181856a43a5e32f5f243" - integrity sha512-toLIHUIAgcQygFZRAQcsLQV3CBuX6yOIru1kJk/qqqvcRmZrYe6WavZTSG+bB8MxhnL9YPf+pKQfuiP161q7ng== - dependencies: - "@babel/types" "^7.10.4" - jsesc "^2.5.1" - lodash "^4.17.13" source-map "^0.5.0" -"@babel/generator@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.11.5.tgz#a5582773425a468e4ba269d9a1f701fbca6a7a82" - integrity sha512-9UqHWJ4IwRTy4l0o8gq2ef8ws8UPzvtMkVKjTLAiRmza9p9V6Z+OfuNd9fB1j5Q67F+dVJtPC2sZXI8NM9br4g== +"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.1.6", "@babel/core@^7.10.2", "@babel/core@^7.12.0", "@babel/core@^7.2.2", "@babel/core@^7.3.4", "@babel/core@^7.7.5": + version "7.12.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.12.3.tgz#1b436884e1e3bff6fb1328dc02b208759de92ad8" + integrity sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g== dependencies: - "@babel/types" "^7.11.5" + "@babel/code-frame" "^7.10.4" + "@babel/generator" "^7.12.1" + "@babel/helper-module-transforms" "^7.12.1" + "@babel/helpers" "^7.12.1" + "@babel/parser" "^7.12.3" + "@babel/template" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.19" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.11.6", "@babel/generator@^7.12.1", "@babel/generator@^7.9.6": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.12.1.tgz#0d70be32bdaa03d7c51c8597dda76e0df1f15468" + integrity sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg== + dependencies: + "@babel/types" "^7.12.1" jsesc "^2.5.1" - source-map "^0.6.1" + source-map "^0.5.0" "@babel/helper-annotate-as-pure@^7.10.4": version "7.10.4" @@ -105,75 +89,76 @@ "@babel/helper-explode-assignable-expression" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/helper-call-delegate@^7.10.1": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.10.4.tgz#300ae262c6ad7e4da91d47e20d77152e84a8201e" - integrity sha512-Tn9r7FUOcBYJi7gZOcYZQtMgh/EzGQ13Z8Bc2Mwzlcuo/edUcwt9YneF/hHs7mv8GJv64VqXErClQLQeGDxDlg== +"@babel/helper-builder-react-jsx-experimental@^7.12.1": + version "7.12.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.12.4.tgz#55fc1ead5242caa0ca2875dcb8eed6d311e50f48" + integrity sha512-AjEa0jrQqNk7eDQOo0pTfUOwQBMF+xVqrausQwT9/rTKy0g04ggFNaJpaE09IQMn9yExluigWMJcj0WC7bq+Og== dependencies: - "@babel/helper-hoist-variables" "^7.10.4" - "@babel/traverse" "^7.10.4" + "@babel/helper-annotate-as-pure" "^7.10.4" + "@babel/helper-module-imports" "^7.12.1" + "@babel/types" "^7.12.1" + +"@babel/helper-builder-react-jsx@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.10.4.tgz#8095cddbff858e6fa9c326daee54a2f2732c1d5d" + integrity sha512-5nPcIZ7+KKDxT1427oBivl9V9YTal7qk0diccnh7RrcgrT/pGFOjgGw1dgryyx1GvHEpXVfoDF6Ak3rTiWh8Rg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/helper-compilation-targets@^7.10.2", "@babel/helper-compilation-targets@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz#804ae8e3f04376607cc791b9d47d540276332bd2" - integrity sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ== +"@babel/helper-call-delegate@^7.10.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.12.1.tgz#0fa31fee33f7e9bf1e8ae711f5c3be7eda2fb657" + integrity sha512-GeAkqxDhZPlbpr7ajtyS97reL9YlGZ1OQtuOZgPADO67yqN58vS8o0Vuu4ImILgvfksUbDonztD9loGV8qNhow== dependencies: - "@babel/compat-data" "^7.10.4" + "@babel/helper-hoist-variables" "^7.10.4" + "@babel/types" "^7.12.1" + +"@babel/helper-compilation-targets@^7.12.0", "@babel/helper-compilation-targets@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.1.tgz#310e352888fbdbdd8577be8dfdd2afb9e7adcf50" + integrity sha512-jtBEif7jsPwP27GPHs06v4WBV0KrE8a/P7n0N0sSvHn2hwUCYnolP/CLmz51IzAW4NlN+HuoBtb9QcwnRo9F/g== + dependencies: + "@babel/compat-data" "^7.12.1" + "@babel/helper-validator-option" "^7.12.1" browserslist "^4.12.0" - invariant "^2.2.4" - levenary "^1.1.1" semver "^5.5.0" -"@babel/helper-create-class-features-plugin@^7.10.4", "@babel/helper-create-class-features-plugin@^7.5.5", "@babel/helper-create-class-features-plugin@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.4.tgz#2d4015d0136bd314103a70d84a7183e4b344a355" - integrity sha512-9raUiOsXPxzzLjCXeosApJItoMnX3uyT4QdM2UldffuGApNrF8e938MwNpDCK9CPoyxrEoCgT+hObJc3mZa6lQ== +"@babel/helper-create-class-features-plugin@^7.12.1", "@babel/helper-create-class-features-plugin@^7.5.5", "@babel/helper-create-class-features-plugin@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz#3c45998f431edd4a9214c5f1d3ad1448a6137f6e" + integrity sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w== dependencies: "@babel/helper-function-name" "^7.10.4" - "@babel/helper-member-expression-to-functions" "^7.10.4" + "@babel/helper-member-expression-to-functions" "^7.12.1" "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" -"@babel/helper-create-class-features-plugin@^7.10.5": - version "7.10.5" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz#9f61446ba80e8240b0a5c85c6fdac8459d6f259d" - integrity sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A== - dependencies: - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-member-expression-to-functions" "^7.10.5" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - -"@babel/helper-create-regexp-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz#fdd60d88524659a0b6959c0579925e425714f3b8" - integrity sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g== +"@babel/helper-create-regexp-features-plugin@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.1.tgz#18b1302d4677f9dc4740fe8c9ed96680e29d37e8" + integrity sha512-rsZ4LGvFTZnzdNZR5HZdmJVuXK8834R5QkF3WvcnBhrlVtF0HSIUC6zbreL9MgjTywhKokn8RIYRiq99+DLAxA== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-regex" "^7.10.4" - regexpu-core "^4.7.0" + regexpu-core "^4.7.1" "@babel/helper-define-map@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.4.tgz#f037ad794264f729eda1889f4ee210b870999092" - integrity sha512-nIij0oKErfCnLUCWaCaHW0Bmtl2RO9cN7+u2QT8yqTywgALKlyUVOvHDElh+b5DwVC6YB1FOYFOTWcN/+41EDA== + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz#b53c10db78a640800152692b13393147acb9bb30" + integrity sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ== dependencies: "@babel/helper-function-name" "^7.10.4" - "@babel/types" "^7.10.4" - lodash "^4.17.13" + "@babel/types" "^7.10.5" + lodash "^4.17.19" "@babel/helper-explode-assignable-expression@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz#40a1cd917bff1288f699a94a75b37a1a2dbd8c7c" - integrity sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A== + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.1.tgz#8006a466695c4ad86a2a5f2fb15b5f2c31ad5633" + integrity sha512-dmUwH8XmlrUpVqgtZ737tK88v07l840z9j3OEhCLwKTkjlvKpfqXVIZ0wpK3aeOxspwGrf/5AP5qLx4rO3w5rA== dependencies: - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/types" "^7.12.1" "@babel/helper-function-name@^7.10.4": version "7.10.4" @@ -198,51 +183,33 @@ dependencies: "@babel/types" "^7.10.4" -"@babel/helper-member-expression-to-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.4.tgz#7cd04b57dfcf82fce9aeae7d4e4452fa31b8c7c4" - integrity sha512-m5j85pK/KZhuSdM/8cHUABQTAslV47OjfIB9Cc7P+PvlAoBzdb79BGNfw8RhT5Mq3p+xGd0ZfAKixbrUZx0C7A== +"@babel/helper-member-expression-to-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz#fba0f2fcff3fba00e6ecb664bb5e6e26e2d6165c" + integrity sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ== dependencies: - "@babel/types" "^7.10.4" + "@babel/types" "^7.12.1" -"@babel/helper-member-expression-to-functions@^7.10.5": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz#ae69c83d84ee82f4b42f96e2a09410935a8f26df" - integrity sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q== +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.12.1", "@babel/helper-module-imports@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz#1644c01591a15a2f084dd6d092d9430eb1d1216c" + integrity sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA== dependencies: - "@babel/types" "^7.11.0" + "@babel/types" "^7.12.1" -"@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" - integrity sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw== +"@babel/helper-module-transforms@^7.11.0", "@babel/helper-module-transforms@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz#7954fec71f5b32c48e4b303b437c34453fd7247c" + integrity sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w== dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-module-transforms@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.4.tgz#ca1f01fdb84e48c24d7506bb818c961f1da8805d" - integrity sha512-Er2FQX0oa3nV7eM1o0tNCTx7izmQtwAQsIiaLRWtavAAEcskb0XJ5OjJbVrYXWOTr8om921Scabn4/tzlx7j1Q== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - lodash "^4.17.13" - -"@babel/helper-module-transforms@^7.10.5", "@babel/helper-module-transforms@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz#b16f250229e47211abdd84b34b64737c2ab2d359" - integrity sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" + "@babel/helper-module-imports" "^7.12.1" + "@babel/helper-replace-supers" "^7.12.1" + "@babel/helper-simple-access" "^7.12.1" "@babel/helper-split-export-declaration" "^7.11.0" + "@babel/helper-validator-identifier" "^7.10.4" "@babel/template" "^7.10.4" - "@babel/types" "^7.11.0" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" lodash "^4.17.19" "@babel/helper-optimise-call-expression@^7.10.4": @@ -252,62 +219,52 @@ dependencies: "@babel/types" "^7.10.4" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": +"@babel/helper-plugin-utils@7.10.4", "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== "@babel/helper-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.4.tgz#59b373daaf3458e5747dece71bbaf45f9676af6d" - integrity sha512-inWpnHGgtg5NOF0eyHlC0/74/VkdRITY9dtTpB2PrxKKn+AkVMRiZz/Adrx+Ssg+MLDesi2zohBW6MVq6b4pOQ== + version "7.10.5" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.5.tgz#32dfbb79899073c415557053a19bd055aae50ae0" + integrity sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg== dependencies: - lodash "^4.17.13" + lodash "^4.17.19" -"@babel/helper-remap-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz#fce8bea4e9690bbe923056ded21e54b4e8b68ed5" - integrity sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg== +"@babel/helper-remap-async-to-generator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz#8c4dbbf916314f6047dc05e6a2217074238347fd" + integrity sha512-9d0KQCRM8clMPcDwo8SevNs+/9a8yWVVmaE80FGJcEP8N1qToREmWEGnBn8BUlJhYRFz6fqxeRL1sl5Ogsed7A== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-wrap-function" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/types" "^7.12.1" -"@babel/helper-replace-supers@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz#d585cd9388ea06e6031e4cd44b6713cbead9e6cf" - integrity sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A== +"@babel/helper-replace-supers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz#f15c9cc897439281891e11d5ce12562ac0cf3fa9" + integrity sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw== dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.4" + "@babel/helper-member-expression-to-functions" "^7.12.1" "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" -"@babel/helper-simple-access@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" - integrity sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw== +"@babel/helper-simple-access@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz#32427e5aa61547d38eb1e6eaf5fd1426fdad9136" + integrity sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA== dependencies: - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/types" "^7.12.1" -"@babel/helper-skip-transparent-expression-wrappers@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz#eec162f112c2f58d3af0af125e3bb57665146729" - integrity sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q== +"@babel/helper-skip-transparent-expression-wrappers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz#462dc63a7e435ade8468385c63d2b84cce4b3cbf" + integrity sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA== dependencies: - "@babel/types" "^7.11.0" + "@babel/types" "^7.12.1" -"@babel/helper-split-export-declaration@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.4.tgz#2c70576eaa3b5609b24cb99db2888cc3fc4251d1" - integrity sha512-pySBTeoUff56fL5CBU2hWm9TesA4r/rOkI9DyJLvvgz09MB9YtfIYe3iBriVaYNaPe+Alua0vBIOVOLs2buWhg== - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-split-export-declaration@^7.11.0": +"@babel/helper-split-export-declaration@^7.10.4", "@babel/helper-split-export-declaration@^7.11.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz#f8a491244acf6a676158ac42072911ba83ad099f" integrity sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg== @@ -319,26 +276,31 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== +"@babel/helper-validator-option@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.1.tgz#175567380c3e77d60ff98a54bb015fe78f2178d9" + integrity sha512-YpJabsXlJVWP0USHjnC/AQDTLlZERbON577YUVO/wLpqyj6HAtVYnWaQaN0iUN+1/tWn3c+uKKXjRut5115Y2A== + "@babel/helper-wrap-function@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz#8a6f701eab0ff39f765b5a1cfef409990e624b87" - integrity sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug== + version "7.12.3" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.12.3.tgz#3332339fc4d1fbbf1c27d7958c27d34708e990d9" + integrity sha512-Cvb8IuJDln3rs6tzjW3Y8UeelAOdnpB8xtQ4sme2MSZ9wOxrbThporC0y/EtE16VAtoyEfLM404Xr1e0OOp+ow== dependencies: "@babel/helper-function-name" "^7.10.4" "@babel/template" "^7.10.4" "@babel/traverse" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/helpers@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" - integrity sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA== +"@babel/helpers@^7.10.4", "@babel/helpers@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.12.1.tgz#8a8261c1d438ec18cb890434df4ec768734c1e79" + integrity sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g== dependencies: "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" -"@babel/highlight@^7.10.4": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== @@ -347,109 +309,94 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.10.4", "@babel/parser@^7.3.4", "@babel/parser@^7.4.3", "@babel/parser@^7.4.5", "@babel/parser@^7.7.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.4.tgz#9eedf27e1998d87739fb5028a5120557c06a1a64" - integrity sha512-8jHII4hf+YVDsskTF6WuMB3X4Eh+PsUkC2ljq22so5rHvH+T8BzyL94VOdyFLNR8tBSVXOTbNHOKpR4TfRxVtA== +"@babel/parser@^7.10.4", "@babel/parser@^7.11.5", "@babel/parser@^7.12.1", "@babel/parser@^7.12.3", "@babel/parser@^7.3.4", "@babel/parser@^7.4.5", "@babel/parser@^7.7.0", "@babel/parser@^7.9.6": + version "7.12.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.12.3.tgz#a305415ebe7a6c7023b40b5122a0662d928334cd" + integrity sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw== -"@babel/parser@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.11.5.tgz#c7ff6303df71080ec7a4f5b8c003c58f1cf51037" - integrity sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q== - -"@babel/plugin-proposal-async-generator-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.4.tgz#4b65abb3d9bacc6c657aaa413e56696f9f170fc6" - integrity sha512-MJbxGSmejEFVOANAezdO39SObkURO5o/8b6fSH6D1pi9RZQt+ldppKPXfqgUWpSQ9asM6xaSaSJIaeWMDRP0Zg== +"@babel/plugin-proposal-async-generator-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.1.tgz#dc6c1170e27d8aca99ff65f4925bd06b1c90550e" + integrity sha512-d+/o30tJxFxrA1lhzJqiUcEJdI6jKlNregCv5bASeGf2Q4MXmnwH7viDo7nhx1/ohf09oaH8j1GVYG/e3Yqk6A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.12.1" "@babel/plugin-syntax-async-generators" "^7.8.0" -"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.10.1", "@babel/plugin-proposal-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz#a33bf632da390a59c7a8c570045d1115cd778807" - integrity sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg== +"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.10.1", "@babel/plugin-proposal-class-properties@^7.10.4", "@babel/plugin-proposal-class-properties@^7.12.1", "@babel/plugin-proposal-class-properties@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.1.tgz#a082ff541f2a29a4821065b8add9346c0c16e5de" + integrity sha512-cKp3dlQsFsEs5CWKnN7BnSHOd0EOW8EKpEjkoz1pO2E5KzIDNV9Ros1b0CnmbVgAGXJubOYVBOGCT1OmJwOI7w== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-decorators@^7.10.1": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.10.4.tgz#fe20ef10cc73f386f70910fca48798041cd357c7" - integrity sha512-JHTWjQngOPv+ZQQqOGv2x6sCCr4IYWy7S1/VH6BE9ZfkoLrdQ2GpEP3tfb5M++G9PwvqjhY8VC/C3tXm+/eHvA== +"@babel/plugin-proposal-decorators@^7.10.5", "@babel/plugin-proposal-decorators@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.12.1.tgz#59271439fed4145456c41067450543aee332d15f" + integrity sha512-knNIuusychgYN8fGJHONL0RbFxLGawhXOJNLBk75TniTsZZeA+wdkDuv6wp4lGwzQEKjZi6/WYtnb3udNPmQmQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-decorators" "^7.10.4" + "@babel/plugin-syntax-decorators" "^7.12.1" -"@babel/plugin-proposal-decorators@^7.10.5": - version "7.10.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.10.5.tgz#42898bba478bc4b1ae242a703a953a7ad350ffb4" - integrity sha512-Sc5TAQSZuLzgY0664mMDn24Vw2P8g/VhyLyGPaWiHahhgLqeZvcGeyBZOrJW0oSKIK2mvQ22a1ENXBIQLhrEiQ== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.5" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-decorators" "^7.10.4" - -"@babel/plugin-proposal-dynamic-import@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz#ba57a26cb98b37741e9d5bca1b8b0ddf8291f17e" - integrity sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ== +"@babel/plugin-proposal-dynamic-import@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.12.1.tgz#43eb5c2a3487ecd98c5c8ea8b5fdb69a2749b2dc" + integrity sha512-a4rhUSZFuq5W8/OO8H7BL5zspjnc1FLd9hlOxIK/f7qG4a0qsqk8uvF/ywgBA8/OmjsapjpvaEOYItfGG1qIvQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-dynamic-import" "^7.8.0" -"@babel/plugin-proposal-export-namespace-from@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz#570d883b91031637b3e2958eea3c438e62c05f54" - integrity sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg== +"@babel/plugin-proposal-export-default-from@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.12.1.tgz#c6e62d668a8abcfe0d28b82f560395fecb611c5a" + integrity sha512-z5Q4Ke7j0AexQRfgUvnD+BdCSgpTEKnqQ3kskk2jWtOBulxICzd1X9BGt7kmWftxZ2W3++OZdt5gtmC8KLxdRQ== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-export-default-from" "^7.12.1" + +"@babel/plugin-proposal-export-namespace-from@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.1.tgz#8b9b8f376b2d88f5dd774e4d24a5cc2e3679b6d4" + integrity sha512-6CThGf0irEkzujYS5LQcjBx8j/4aQGiVv7J9+2f7pGfxqyKh3WnmVJYW3hdrQjyksErMGBPQrCnHfOtna+WLbw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-proposal-json-strings@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz#593e59c63528160233bd321b1aebe0820c2341db" - integrity sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw== +"@babel/plugin-proposal-json-strings@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.12.1.tgz#d45423b517714eedd5621a9dfdc03fa9f4eb241c" + integrity sha512-GoLDUi6U9ZLzlSda2Df++VSqDJg3CG+dR0+iWsv6XRw1rEq+zwt4DirM9yrxW6XWaTpmai1cWJLMfM8qQJf+yw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.0" -"@babel/plugin-proposal-logical-assignment-operators@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz#9f80e482c03083c87125dee10026b58527ea20c8" - integrity sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q== +"@babel/plugin-proposal-logical-assignment-operators@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.12.1.tgz#f2c490d36e1b3c9659241034a5d2cd50263a2751" + integrity sha512-k8ZmVv0JU+4gcUGeCDZOGd0lCIamU/sMtIiX3UWnUc5yzgq6YUGyEolNYD+MLYKfSzgECPcqetVcJP9Afe/aCA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.4", "@babel/plugin-proposal-nullish-coalescing-operator@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz#02a7e961fc32e6d5b2db0649e01bf80ddee7e04a" - integrity sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.10.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.12.1", "@babel/plugin-proposal-nullish-coalescing-operator@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.1.tgz#3ed4fff31c015e7f3f1467f190dbe545cd7b046c" + integrity sha512-nZY0ESiaQDI1y96+jk6VxMOaL4LPo/QDHBqL+SF3/vl6dHkTwHlOI8L4ZwuRBHgakRBw5zsVylel7QPbbGuYgg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" -"@babel/plugin-proposal-numeric-separator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz#ce1590ff0a65ad12970a609d78855e9a4c1aef06" - integrity sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA== +"@babel/plugin-proposal-numeric-separator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.1.tgz#0e2c6774c4ce48be412119b4d693ac777f7685a6" + integrity sha512-MR7Ok+Af3OhNTCxYVjJZHS0t97ydnJZt/DbR4WISO39iDnhiD8XHrY12xuSJ90FFEGjir0Fzyyn7g/zY6hxbxA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-proposal-object-rest-spread@^7.10.4", "@babel/plugin-proposal-object-rest-spread@^7.5.5": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.4.tgz#50129ac216b9a6a55b3853fdd923e74bf553a4c0" - integrity sha512-6vh4SqRuLLarjgeOf4EaROJAHjvu9Gl+/346PbDH9yWbJyfnJ/ah3jmYKYtswEyCoWZiidvVHjHshd4WgjB9BA== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-transform-parameters" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@^7.11.0": +"@babel/plugin-proposal-object-rest-spread@7.11.0": version "7.11.0" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz#bd81f95a1f746760ea43b6c2d3d62b11790ad0af" integrity sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA== @@ -458,45 +405,46 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-transform-parameters" "^7.10.4" -"@babel/plugin-proposal-optional-catch-binding@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz#31c938309d24a78a49d68fdabffaa863758554dd" - integrity sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g== +"@babel/plugin-proposal-object-rest-spread@^7.12.1", "@babel/plugin-proposal-object-rest-spread@^7.5.5", "@babel/plugin-proposal-object-rest-spread@^7.9.6": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz#def9bd03cea0f9b72283dac0ec22d289c7691069" + integrity sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-object-rest-spread" "^7.8.0" + "@babel/plugin-transform-parameters" "^7.12.1" + +"@babel/plugin-proposal-optional-catch-binding@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.1.tgz#ccc2421af64d3aae50b558a71cede929a5ab2942" + integrity sha512-hFvIjgprh9mMw5v42sJWLI1lzU5L2sznP805zeT6rySVRA0Y18StRhDqhSxlap0oVgItRsB6WSROp4YnJTJz0g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" -"@babel/plugin-proposal-optional-chaining@^7.10.4", "@babel/plugin-proposal-optional-chaining@^7.6.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.4.tgz#750f1255e930a1f82d8cdde45031f81a0d0adff7" - integrity sha512-ZIhQIEeavTgouyMSdZRap4VPPHqJJ3NEs2cuHs5p0erH+iz6khB0qfgU8g7UuJkG88+fBMy23ZiU+nuHvekJeQ== +"@babel/plugin-proposal-optional-chaining@^7.10.1", "@babel/plugin-proposal-optional-chaining@^7.12.1", "@babel/plugin-proposal-optional-chaining@^7.6.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.1.tgz#cce122203fc8a32794296fc377c6dedaf4363797" + integrity sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" "@babel/plugin-syntax-optional-chaining" "^7.8.0" -"@babel/plugin-proposal-optional-chaining@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz#de5866d0646f6afdaab8a566382fe3a221755076" - integrity sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA== +"@babel/plugin-proposal-private-methods@^7.12.1", "@babel/plugin-proposal-private-methods@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.1.tgz#86814f6e7a21374c980c10d38b4493e703f4a389" + integrity sha512-mwZ1phvH7/NHK6Kf8LP7MYDogGV+DKB1mryFOEwx5EBNQrosvIczzZFTUmWaeujd5xT6G1ELYWUz3CutMhjE1w== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-skip-transparent-expression-wrappers" "^7.11.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - -"@babel/plugin-proposal-private-methods@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz#b160d972b8fdba5c7d111a145fc8c421fc2a6909" - integrity sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-create-class-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-proposal-unicode-property-regex@^7.10.4", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz#4483cda53041ce3413b7fe2f00022665ddfaa75d" - integrity sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA== +"@babel/plugin-proposal-unicode-property-regex@^7.12.1", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.1.tgz#2a183958d417765b9eae334f47758e5d6a82e072" + integrity sha512-MYq+l+PvHuw/rKUz1at/vb6nCnQ2gmJBNaM62z0OgH7B2W1D9pvkpYtlti9bGtizNIU1K3zm4bZF9F91efVY0w== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-async-generators@^7.8.0": @@ -506,27 +454,34 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz#6644e6a0baa55a61f9e3231f6c9eeb6ee46c124c" - integrity sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA== +"@babel/plugin-syntax-class-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.1.tgz#bcb297c5366e79bebadef509549cd93b04f19978" + integrity sha512-U40A76x5gTwmESz+qiqssqmeEsKvcSyvtgktrm0uzcARAmM9I1jR221f6Oq+GmHrcD+LvZDag1UTOTe2fL3TeA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-decorators@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.10.4.tgz#6853085b2c429f9d322d02f5a635018cdeb2360c" - integrity sha512-2NaoC6fAk2VMdhY1eerkfHV+lVYC1u8b+jmRJISqANCJlTxYy19HGdIkkQtix2UtkcPuPu+IlDgrVseZnU03bw== +"@babel/plugin-syntax-decorators@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.12.1.tgz#81a8b535b284476c41be6de06853a8802b98c5dd" + integrity sha512-ir9YW5daRrTYiy9UJ2TzdNIJEZu8KclVzDcfSt4iEmOtwQ4llPtWInNKJyKnVXp1vE4bbVd5S31M/im3mYMO1w== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-dynamic-import@^7.2.0", "@babel/plugin-syntax-dynamic-import@^7.8.0": +"@babel/plugin-syntax-dynamic-import@^7.2.0", "@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" +"@babel/plugin-syntax-export-default-from@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.12.1.tgz#a9eb31881f4f9a1115a3d2c6d64ac3f6016b5a9d" + integrity sha512-dP5eGg6tHEkhnRD2/vRG/KJKRSg8gtxu2i+P/8/yFPJn/CfPU5G0/7Gks2i3M6IOVAPQekmsLN9LPsmXFFL4Uw== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" @@ -541,6 +496,20 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" +"@babel/plugin-syntax-jsx@7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.4.tgz#39abaae3cbf710c4373d8429484e6ba21340166c" + integrity sha512-KCg9mio9jwiARCB7WAcQ7Y1q+qicILjoK8LP/VkPkEKaf5dkaZZK1EcTe91a3JJlZ3qy6L5s9X52boEYi8DM9g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-jsx@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz#9d9d357cc818aa7ae7935917c1257f67677a0926" + integrity sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -562,7 +531,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@^7.8.0": +"@babel/plugin-syntax-object-rest-spread@7.8.3", "@babel/plugin-syntax-object-rest-spread@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -583,317 +552,328 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-top-level-await@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz#4bbeb8917b54fcf768364e0a81f560e33a3ef57d" - integrity sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ== +"@babel/plugin-syntax-top-level-await@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.1.tgz#dd6c0b357ac1bb142d98537450a319625d13d2a0" + integrity sha512-i7ooMZFS+a/Om0crxZodrTzNEPJHZrlMVGMTEpFAj6rYY/bKCddB0Dk/YxfPuYXOopuhKk/e1jV6h+WUU9XN3A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-typescript@^7.10.4", "@babel/plugin-syntax-typescript@^7.2.0", "@babel/plugin-syntax-typescript@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.10.4.tgz#2f55e770d3501e83af217d782cb7517d7bb34d25" - integrity sha512-oSAEz1YkBCAKr5Yiq8/BNtvSAPwkp/IyUnwZogd8p+F0RuYQQrLeRUzIQhueQTTBy/F+a40uS7OFKxnkRvmvFQ== +"@babel/plugin-syntax-typescript@^7.12.1", "@babel/plugin-syntax-typescript@^7.2.0", "@babel/plugin-syntax-typescript@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz#460ba9d77077653803c3dd2e673f76d66b4029e5" + integrity sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-arrow-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz#e22960d77e697c74f41c501d44d73dbf8a6a64cd" - integrity sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA== +"@babel/plugin-transform-arrow-functions@^7.12.1", "@babel/plugin-transform-arrow-functions@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.1.tgz#8083ffc86ac8e777fbe24b5967c4b2521f3cb2b3" + integrity sha512-5QB50qyN44fzzz4/qxDPQMBCTHgxg3n0xRBLJUmBlLoU/sFvxVWGZF/ZUfMVDQuJUKXaBhbupxIzIfZ6Fwk/0A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-async-to-generator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz#41a5017e49eb6f3cda9392a51eef29405b245a37" - integrity sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ== +"@babel/plugin-transform-async-to-generator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.1.tgz#3849a49cc2a22e9743cbd6b52926d30337229af1" + integrity sha512-SDtqoEcarK1DFlRJ1hHRY5HvJUj5kX4qmtpMAm2QnhOlyuMC4TMdCRgW6WXpv93rZeYNeLP22y8Aq2dbcDRM1A== dependencies: - "@babel/helper-module-imports" "^7.10.4" + "@babel/helper-module-imports" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-remap-async-to-generator" "^7.10.4" + "@babel/helper-remap-async-to-generator" "^7.12.1" -"@babel/plugin-transform-block-scoped-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz#1afa595744f75e43a91af73b0d998ecfe4ebc2e8" - integrity sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA== +"@babel/plugin-transform-block-scoped-functions@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.1.tgz#f2a1a365bde2b7112e0a6ded9067fdd7c07905d9" + integrity sha512-5OpxfuYnSgPalRpo8EWGPzIYf0lHBWORCkj5M0oLBwHdlux9Ri36QqGW3/LR13RSVOAoUUMzoPI/jpE4ABcHoA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-block-scoping@^7.10.4", "@babel/plugin-transform-block-scoping@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.4.tgz#a670d1364bb5019a621b9ea2001482876d734787" - integrity sha512-J3b5CluMg3hPUii2onJDRiaVbPtKFPLEaV5dOPY5OeAbDi1iU/UbbFFTgwb7WnanaDy7bjU35kc26W3eM5Qa0A== +"@babel/plugin-transform-block-scoping@^7.12.1", "@babel/plugin-transform-block-scoping@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.1.tgz#f0ee727874b42a208a48a586b84c3d222c2bbef1" + integrity sha512-zJyAC9sZdE60r1nVQHblcfCj29Dh2Y0DOvlMkcqSo0ckqjiCwNiUezUKw+RjOCwGfpLRwnAeQ2XlLpsnGkvv9w== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - lodash "^4.17.13" -"@babel/plugin-transform-classes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz#405136af2b3e218bc4a1926228bc917ab1a0adc7" - integrity sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA== +"@babel/plugin-transform-classes@^7.12.1", "@babel/plugin-transform-classes@^7.9.5": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.1.tgz#65e650fcaddd3d88ddce67c0f834a3d436a32db6" + integrity sha512-/74xkA7bVdzQTBeSUhLLJgYIcxw/dpEpCdRDiHgPJ3Mv6uC11UhjpOhl72CgqbBCmt1qtssCyB2xnJm1+PFjog== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-define-map" "^7.10.4" "@babel/helper-function-name" "^7.10.4" "@babel/helper-optimise-call-expression" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" "@babel/helper-split-export-declaration" "^7.10.4" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz#9ded83a816e82ded28d52d4b4ecbdd810cdfc0eb" - integrity sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw== +"@babel/plugin-transform-computed-properties@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.1.tgz#d68cf6c9b7f838a8a4144badbe97541ea0904852" + integrity sha512-vVUOYpPWB7BkgUWPo4C44mUQHpTZXakEqFjbv8rQMg7TC6S6ZhGZ3otQcRH6u7+adSlE5i0sp63eMC/XGffrzg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-destructuring@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz#70ddd2b3d1bea83d01509e9bb25ddb3a74fc85e5" - integrity sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA== +"@babel/plugin-transform-destructuring@^7.12.1", "@babel/plugin-transform-destructuring@^7.9.5": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.1.tgz#b9a570fe0d0a8d460116413cb4f97e8e08b2f847" + integrity sha512-fRMYFKuzi/rSiYb2uRLiUENJOKq4Gnl+6qOv5f8z0TZXg3llUwUhsNNwrwaT/6dUhJTzNpBr+CUvEWBtfNY1cw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-dotall-regex@^7.10.4", "@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz#469c2062105c1eb6a040eaf4fac4b488078395ee" - integrity sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA== +"@babel/plugin-transform-dotall-regex@^7.12.1", "@babel/plugin-transform-dotall-regex@^7.4.4": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.1.tgz#a1d16c14862817b6409c0a678d6f9373ca9cd975" + integrity sha512-B2pXeRKoLszfEW7J4Hg9LoFaWEbr/kzo3teWHmtFCszjRNa/b40f9mfeqZsIDLLt/FjwQ6pz/Gdlwy85xNckBA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-duplicate-keys@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz#697e50c9fee14380fe843d1f306b295617431e47" - integrity sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA== +"@babel/plugin-transform-duplicate-keys@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.1.tgz#745661baba295ac06e686822797a69fbaa2ca228" + integrity sha512-iRght0T0HztAb/CazveUpUQrZY+aGKKaWXMJ4uf9YJtqxSUe09j3wteztCUDRHs+SRAL7yMuFqUsLoAKKzgXjw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-exponentiation-operator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz#5ae338c57f8cf4001bdb35607ae66b92d665af2e" - integrity sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw== +"@babel/plugin-transform-exponentiation-operator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.1.tgz#b0f2ed356ba1be1428ecaf128ff8a24f02830ae0" + integrity sha512-7tqwy2bv48q+c1EHbXK0Zx3KXd2RVQp6OC7PbwFNt/dPTAV3Lu5sWtWuAj8owr5wqtWnqHfl2/mJlUmqkChKug== dependencies: "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-for-of@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz#c08892e8819d3a5db29031b115af511dbbfebae9" - integrity sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ== +"@babel/plugin-transform-for-of@^7.12.1", "@babel/plugin-transform-for-of@^7.9.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.1.tgz#07640f28867ed16f9511c99c888291f560921cfa" + integrity sha512-Zaeq10naAsuHo7heQvyV0ptj4dlZJwZgNAtBYBnu5nNKJoW62m0zKcIEyVECrUKErkUkg6ajMy4ZfnVZciSBhg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-function-name@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz#6a467880e0fc9638514ba369111811ddbe2644b7" - integrity sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg== +"@babel/plugin-transform-function-name@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.1.tgz#2ec76258c70fe08c6d7da154003a480620eba667" + integrity sha512-JF3UgJUILoFrFMEnOJLJkRHSk6LUSXLmEFsA23aR2O5CSLUxbeUX1IZ1YQ7Sn0aXb601Ncwjx73a+FVqgcljVw== dependencies: "@babel/helper-function-name" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz#9f42ba0841100a135f22712d0e391c462f571f3c" - integrity sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ== +"@babel/plugin-transform-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.1.tgz#d73b803a26b37017ddf9d3bb8f4dc58bfb806f57" + integrity sha512-+PxVGA+2Ag6uGgL0A5f+9rklOnnMccwEBzwYFL3EUaKuiyVnUipyXncFcfjSkbimLrODoqki1U9XxZzTvfN7IQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz#b1ec44fcf195afcb8db2c62cd8e551c881baf8b7" - integrity sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw== +"@babel/plugin-transform-member-expression-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.1.tgz#496038602daf1514a64d43d8e17cbb2755e0c3ad" + integrity sha512-1sxePl6z9ad0gFMB9KqmYofk34flq62aqMt9NqliS/7hPEpURUCMbyHXrMPlo282iY7nAvUB1aQd5mg79UD9Jg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-modules-amd@^7.10.1", "@babel/plugin-transform-modules-amd@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.4.tgz#cb407c68b862e4c1d13a2fc738c7ec5ed75fc520" - integrity sha512-3Fw+H3WLUrTlzi3zMiZWp3AR4xadAEMv6XRCYnd5jAlLM61Rn+CRJaZMaNvIpcJpQ3vs1kyifYvEVPFfoSkKOA== +"@babel/plugin-transform-modules-amd@^7.10.4", "@babel/plugin-transform-modules-amd@^7.10.5", "@babel/plugin-transform-modules-amd@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.1.tgz#3154300b026185666eebb0c0ed7f8415fefcf6f9" + integrity sha512-tDW8hMkzad5oDtzsB70HIQQRBiTKrhfgwC/KkJeGsaNFTdWhKNt/BiE8c5yj19XiGyrxpbkOfH87qkNg1YGlOQ== dependencies: - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-amd@^7.10.5": - version "7.10.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz#1b9cddaf05d9e88b3aad339cb3e445c4f020a9b1" - integrity sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw== +"@babel/plugin-transform-modules-commonjs@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.1.tgz#fa403124542636c786cf9b460a0ffbb48a86e648" + integrity sha512-dY789wq6l0uLY8py9c1B48V8mVL5gZh/+PQ5ZPrylPYsnAvnEMjqsUXkuoDVPeVK+0VyGar+D08107LzDQ6pag== dependencies: - "@babel/helper-module-transforms" "^7.10.5" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-simple-access" "^7.12.1" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-commonjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz#66667c3eeda1ebf7896d41f1f16b17105a2fbca0" - integrity sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w== - dependencies: - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" - babel-plugin-dynamic-import-node "^2.3.3" - -"@babel/plugin-transform-modules-systemjs@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.4.tgz#8f576afd943ac2f789b35ded0a6312f929c633f9" - integrity sha512-Tb28LlfxrTiOTGtZFsvkjpyjCl9IoaRI52AEU/VIwOwvDQWtbNJsAqTXzh+5R7i74e/OZHH2c2w2fsOqAfnQYQ== +"@babel/plugin-transform-modules-systemjs@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.1.tgz#663fea620d593c93f214a464cd399bf6dc683086" + integrity sha512-Hn7cVvOavVh8yvW6fLwveFqSnd7rbQN3zJvoPNyNaQSvgfKmDBO9U1YL9+PCXGRlZD9tNdWTy5ACKqMuzyn32Q== dependencies: "@babel/helper-hoist-variables" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-validator-identifier" "^7.10.4" babel-plugin-dynamic-import-node "^2.3.3" -"@babel/plugin-transform-modules-umd@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz#9a8481fe81b824654b3a0b65da3df89f3d21839e" - integrity sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA== +"@babel/plugin-transform-modules-umd@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.12.1.tgz#eb5a218d6b1c68f3d6217b8fa2cc82fec6547902" + integrity sha512-aEIubCS0KHKM0zUos5fIoQm+AZUMt1ZvMpqz0/H5qAQ7vWylr9+PLYurT+Ic7ID/bKLd4q8hDovaG3Zch2uz5Q== dependencies: - "@babel/helper-module-transforms" "^7.10.4" + "@babel/helper-module-transforms" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-named-capturing-groups-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz#78b4d978810b6f3bcf03f9e318f2fc0ed41aecb6" - integrity sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA== +"@babel/plugin-transform-named-capturing-groups-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.1.tgz#b407f5c96be0d9f5f88467497fa82b30ac3e8753" + integrity sha512-tB43uQ62RHcoDp9v2Nsf+dSM8sbNodbEicbQNA53zHz8pWUhsgHSJCGpt7daXxRydjb0KnfmB+ChXOv3oADp1Q== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" -"@babel/plugin-transform-new-target@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz#9097d753cb7b024cb7381a3b2e52e9513a9c6888" - integrity sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw== +"@babel/plugin-transform-new-target@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.1.tgz#80073f02ee1bb2d365c3416490e085c95759dec0" + integrity sha512-+eW/VLcUL5L9IvJH7rT1sT0CzkdUTvPrXC2PXTn/7z7tXLBuKvezYbGdxD5WMRoyvyaujOq2fWoKl869heKjhw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-transform-object-assign@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.10.4.tgz#f7c8f54ce8052ccd8b9da9b3358848423221c338" - integrity sha512-6zccDhYEICfMeQqIjuY5G09/yhKzG30DKHJeYBQUHIsJH7c2jXSGvgwRalufLAXAq432OSlsEfAOLlzEsQzxVw== + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.12.1.tgz#9102b06625f60a5443cc292d32b565373665e1e4" + integrity sha512-geUHn4XwHznRAFiuROTy0Hr7bKbpijJCmr1Svt/VNGhpxmp0OrdxURNpWbOAf94nUbL+xj6gbxRVPHWIbRpRoA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-object-super@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz#d7146c4d139433e7a6526f888c667e314a093894" - integrity sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ== +"@babel/plugin-transform-object-super@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.1.tgz#4ea08696b8d2e65841d0c7706482b048bed1066e" + integrity sha512-AvypiGJH9hsquNUn+RXVcBdeE3KHPZexWRdimhuV59cSoOt5kFBmqlByorAeUlGG2CJWd0U+4ZtNKga/TB0cAw== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" + "@babel/helper-replace-supers" "^7.12.1" -"@babel/plugin-transform-parameters@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.4.tgz#7b4d137c87ea7adc2a0f3ebf53266871daa6fced" - integrity sha512-RurVtZ/D5nYfEg0iVERXYKEgDFeesHrHfx8RT05Sq57ucj2eOYAP6eu5fynL4Adju4I/mP/I6SO0DqNWAXjfLQ== - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - -"@babel/plugin-transform-property-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz#f6fe54b6590352298785b83edd815d214c42e3c0" - integrity sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g== +"@babel/plugin-transform-parameters@^7.10.4", "@babel/plugin-transform-parameters@^7.12.1", "@babel/plugin-transform-parameters@^7.9.5": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.1.tgz#d2e963b038771650c922eff593799c96d853255d" + integrity sha512-xq9C5EQhdPK23ZeCdMxl8bbRnAgHFrw5EOC3KJUsSylZqdkCaFEXxGSBuTSObOpiiHHNyb82es8M1QYgfQGfNg== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-regenerator@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz#2015e59d839074e76838de2159db421966fd8b63" - integrity sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw== - dependencies: - regenerator-transform "^0.14.2" - -"@babel/plugin-transform-reserved-words@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz#8f2682bcdcef9ed327e1b0861585d7013f8a54dd" - integrity sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ== +"@babel/plugin-transform-property-literals@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.1.tgz#41bc81200d730abb4456ab8b3fbd5537b59adecd" + integrity sha512-6MTCR/mZ1MQS+AwZLplX4cEySjCpnIF26ToWo942nqn8hXSm7McaHQNeGx/pt7suI1TWOWMfa/NgBhiqSnX0cQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-runtime@^7.10.1": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.10.4.tgz#594fb53453ea1b6f0779cceb48ce0718a447feb7" - integrity sha512-8ULlGv8p+Vuxu+kz2Y1dk6MYS2b/Dki+NO6/0ZlfSj5tMalfDL7jI/o/2a+rrWLqSXvnadEqc2WguB4gdQIxZw== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-runtime@^7.11.0": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.11.5.tgz#f108bc8e0cf33c37da031c097d1df470b3a293fc" - integrity sha512-9aIoee+EhjySZ6vY5hnLjigHzunBlscx9ANKutkeWTJTx6m5Rbq6Ic01tLvO54lSusR+BxV7u4UDdCmXv5aagg== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - resolve "^1.8.1" - semver "^5.5.1" - -"@babel/plugin-transform-shorthand-properties@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz#9fd25ec5cdd555bb7f473e5e6ee1c971eede4dd6" - integrity sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q== +"@babel/plugin-transform-react-display-name@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.12.1.tgz#1cbcd0c3b1d6648c55374a22fc9b6b7e5341c00d" + integrity sha512-cAzB+UzBIrekfYxyLlFqf/OagTvHLcVBb5vpouzkYkBclRPraiygVnafvAoipErZLI8ANv8Ecn6E/m5qPXD26w== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-spread@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.4.tgz#4e2c85ea0d6abaee1b24dcfbbae426fe8d674cff" - integrity sha512-1e/51G/Ni+7uH5gktbWv+eCED9pP8ZpRhZB3jOaI3mmzfvJTWHkuyYTv0Z5PYtyM+Tr2Ccr9kUdQxn60fI5WuQ== +"@babel/plugin-transform-react-jsx-development@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.1.tgz#0b8f8cd531dcf7991f1e5f2c10a2a4f1cfc78e36" + integrity sha512-IilcGWdN1yNgEGOrB96jbTplRh+V2Pz1EoEwsKsHfX1a/L40cUYuD71Zepa7C+ujv7kJIxnDftWeZbKNEqZjCQ== + dependencies: + "@babel/helper-builder-react-jsx-experimental" "^7.12.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-jsx" "^7.12.1" + +"@babel/plugin-transform-react-jsx-self@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.12.1.tgz#ef43cbca2a14f1bd17807dbe4376ff89d714cf28" + integrity sha512-FbpL0ieNWiiBB5tCldX17EtXgmzeEZjFrix72rQYeq9X6nUK38HCaxexzVQrZWXanxKJPKVVIU37gFjEQYkPkA== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-spread@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz#fa84d300f5e4f57752fe41a6d1b3c554f13f17cc" - integrity sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw== +"@babel/plugin-transform-react-jsx-source@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.12.1.tgz#d07de6863f468da0809edcf79a1aa8ce2a82a26b" + integrity sha512-keQ5kBfjJNRc6zZN1/nVHCd6LLIHq4aUKcVnvE/2l+ZZROSbqoiGFRtT5t3Is89XJxBQaP7NLZX2jgGHdZvvFQ== dependencies: "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-skip-transparent-expression-wrappers" "^7.11.0" -"@babel/plugin-transform-sticky-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz#8f3889ee8657581130a29d9cc91d7c73b7c4a28d" - integrity sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ== +"@babel/plugin-transform-react-jsx@^7.12.1", "@babel/plugin-transform-react-jsx@^7.3.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.12.1.tgz#c2d96c77c2b0e4362cc4e77a43ce7c2539d478cb" + integrity sha512-RmKejwnT0T0QzQUzcbP5p1VWlpnP8QHtdhEtLG55ZDQnJNalbF3eeDyu3dnGKvGzFIQiBzFhBYTwvv435p9Xpw== dependencies: + "@babel/helper-builder-react-jsx" "^7.10.4" + "@babel/helper-builder-react-jsx-experimental" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/helper-regex" "^7.10.4" + "@babel/plugin-syntax-jsx" "^7.12.1" -"@babel/plugin-transform-template-literals@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.4.tgz#e6375407b30fcb7fcfdbba3bb98ef3e9d36df7bc" - integrity sha512-4NErciJkAYe+xI5cqfS8pV/0ntlY5N5Ske/4ImxAVX7mk9Rxt2bwDTGv1Msc2BRJvWQcmYEC+yoMLdX22aE4VQ== +"@babel/plugin-transform-react-pure-annotations@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz#05d46f0ab4d1339ac59adf20a1462c91b37a1a42" + integrity sha512-RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg== dependencies: "@babel/helper-annotate-as-pure" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-typeof-symbol@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz#9509f1a7eec31c4edbffe137c16cc33ff0bc5bfc" - integrity sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA== +"@babel/plugin-transform-regenerator@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.1.tgz#5f0a28d842f6462281f06a964e88ba8d7ab49753" + integrity sha512-gYrHqs5itw6i4PflFX3OdBPMQdPbF4bj2REIUxlMRUFk0/ZOAIpDFuViuxPjUL7YC8UPnf+XG7/utJvqXdPKng== + dependencies: + regenerator-transform "^0.14.2" + +"@babel/plugin-transform-reserved-words@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.1.tgz#6fdfc8cc7edcc42b36a7c12188c6787c873adcd8" + integrity sha512-pOnUfhyPKvZpVyBHhSBoX8vfA09b7r00Pmm1sH+29ae2hMTKVmSp4Ztsr8KBKjLjx17H0eJqaRC3bR2iThM54A== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-typescript@^7.10.1": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.10.4.tgz#8b01cb8d77f795422277cc3fcf45af72bc68ba78" - integrity sha512-3WpXIKDJl/MHoAN0fNkSr7iHdUMHZoppXjf2HJ9/ed5Xht5wNIsXllJXdityKOxeA3Z8heYRb1D3p2H5rfCdPw== +"@babel/plugin-transform-runtime@^7.12.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.12.1.tgz#04b792057eb460389ff6a4198e377614ea1e7ba5" + integrity sha512-Ac/H6G9FEIkS2tXsZjL4RAdS3L3WHxci0usAnz7laPWUmFiGtj7tIASChqKZMHTSQTQY6xDbOq+V1/vIq3QrWg== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.4" + "@babel/helper-module-imports" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-typescript" "^7.10.4" + resolve "^1.8.1" + semver "^5.5.1" -"@babel/plugin-transform-typescript@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.11.0.tgz#2b4879676af37342ebb278216dd090ac67f13abb" - integrity sha512-edJsNzTtvb3MaXQwj8403B7mZoGu9ElDJQZOKjGUnvilquxBA3IQoEIOvkX/1O8xfAsnHS/oQhe2w/IXrr+w0w== +"@babel/plugin-transform-shorthand-properties@^7.12.1", "@babel/plugin-transform-shorthand-properties@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.1.tgz#0bf9cac5550fce0cfdf043420f661d645fdc75e3" + integrity sha512-GFZS3c/MhX1OusqB1MZ1ct2xRzX5ppQh2JU1h2Pnfk88HtFTM+TWQqJNfwkmxtPQtb/s1tk87oENfXJlx7rSDw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.10.5" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-typescript" "^7.10.4" + +"@babel/plugin-transform-spread@^7.12.1", "@babel/plugin-transform-spread@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.1.tgz#527f9f311be4ec7fdc2b79bb89f7bf884b3e1e1e" + integrity sha512-vuLp8CP0BE18zVYjsEBZ5xoCecMK6LBMMxYzJnh01rxQRvhNhH1csMMmBfNo5tGpGO+NhdSNW2mzIvBu3K1fng== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-skip-transparent-expression-wrappers" "^7.12.1" + +"@babel/plugin-transform-sticky-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.1.tgz#5c24cf50de396d30e99afc8d1c700e8bce0f5caf" + integrity sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-regex" "^7.10.4" + +"@babel/plugin-transform-template-literals@^7.12.1", "@babel/plugin-transform-template-literals@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.1.tgz#b43ece6ed9a79c0c71119f576d299ef09d942843" + integrity sha512-b4Zx3KHi+taXB1dVRBhVJtEPi9h1THCeKmae2qP0YdUHIFhVjtpqqNfxeVAa1xeHVhAy4SbHxEwx5cltAu5apw== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-transform-typeof-symbol@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.1.tgz#9ca6be343d42512fbc2e68236a82ae64bc7af78a" + integrity sha512-EPGgpGy+O5Kg5pJFNDKuxt9RdmTgj5sgrus2XVeMp/ZIbOESadgILUbm50SNpghOh3/6yrbsH+NB5+WJTmsA7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-transform-typescript@^7.12.0", "@babel/plugin-transform-typescript@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz#d92cc0af504d510e26a754a7dbc2e5c8cd9c7ab4" + integrity sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.12.1" + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-typescript" "^7.12.1" "@babel/plugin-transform-typescript@~7.4.0": version "7.4.5" @@ -921,131 +901,54 @@ "@babel/helper-plugin-utils" "^7.8.3" "@babel/plugin-syntax-typescript" "^7.8.3" -"@babel/plugin-transform-unicode-escapes@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz#feae523391c7651ddac115dae0a9d06857892007" - integrity sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg== +"@babel/plugin-transform-unicode-escapes@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.1.tgz#5232b9f81ccb07070b7c3c36c67a1b78f1845709" + integrity sha512-I8gNHJLIc7GdApm7wkVnStWssPNbSRMPtgHdmH3sRM1zopz09UWPS4x5V4n1yz/MIWTVnJ9sp6IkuXdWM4w+2Q== dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-transform-unicode-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz#e56d71f9282fac6db09c82742055576d5e6d80a8" - integrity sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A== +"@babel/plugin-transform-unicode-regex@^7.12.1": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.1.tgz#cc9661f61390db5c65e3febaccefd5c6ac3faecb" + integrity sha512-SqH4ClNngh/zGwHZOOQMTD+e8FGWexILV+ePMyiDJttAWRh5dhDL8rcl5lSgU3Huiq6Zn6pWTMvdPAb21Dwdyg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" + "@babel/helper-create-regexp-features-plugin" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/polyfill@^7.10.1": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.10.4.tgz#915e5bfe61490ac0199008e35ca9d7d151a8e45a" - integrity sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg== +"@babel/polyfill@^7.11.5": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.12.1.tgz#1f2d6371d1261bbd961f3c5d5909150e12d0bd96" + integrity sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g== dependencies: core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/polyfill@^7.10.4": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.11.5.tgz#df550b2ec53abbc2ed599367ec59e64c7a707bb5" - integrity sha512-FunXnE0Sgpd61pKSj2OSOs1D44rKTD3pGOfGilZ6LGrrIH0QEtJlTjqOqdF8Bs98JmjfGhni2BBkTfv9KcKJ9g== +"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.12.0", "@babel/preset-env@^7.9.6": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.12.1.tgz#9c7e5ca82a19efc865384bb4989148d2ee5d7ac2" + integrity sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg== dependencies: - core-js "^2.6.5" - regenerator-runtime "^0.13.4" - -"@babel/preset-env@^7.10.2": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.4.tgz#fbf57f9a803afd97f4f32e4f798bb62e4b2bef5f" - integrity sha512-tcmuQ6vupfMZPrLrc38d0sF2OjLT3/bZ0dry5HchNCQbrokoQi4reXqclvkkAT5b+gWc23meVWpve5P/7+w/zw== - dependencies: - "@babel/compat-data" "^7.10.4" - "@babel/helper-compilation-targets" "^7.10.4" - "@babel/helper-module-imports" "^7.10.4" + "@babel/compat-data" "^7.12.1" + "@babel/helper-compilation-targets" "^7.12.1" + "@babel/helper-module-imports" "^7.12.1" "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-proposal-async-generator-functions" "^7.10.4" - "@babel/plugin-proposal-class-properties" "^7.10.4" - "@babel/plugin-proposal-dynamic-import" "^7.10.4" - "@babel/plugin-proposal-json-strings" "^7.10.4" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.4" - "@babel/plugin-proposal-numeric-separator" "^7.10.4" - "@babel/plugin-proposal-object-rest-spread" "^7.10.4" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.4" - "@babel/plugin-proposal-optional-chaining" "^7.10.4" - "@babel/plugin-proposal-private-methods" "^7.10.4" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.4" + "@babel/helper-validator-option" "^7.12.1" + "@babel/plugin-proposal-async-generator-functions" "^7.12.1" + "@babel/plugin-proposal-class-properties" "^7.12.1" + "@babel/plugin-proposal-dynamic-import" "^7.12.1" + "@babel/plugin-proposal-export-namespace-from" "^7.12.1" + "@babel/plugin-proposal-json-strings" "^7.12.1" + "@babel/plugin-proposal-logical-assignment-operators" "^7.12.1" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.12.1" + "@babel/plugin-proposal-numeric-separator" "^7.12.1" + "@babel/plugin-proposal-object-rest-spread" "^7.12.1" + "@babel/plugin-proposal-optional-catch-binding" "^7.12.1" + "@babel/plugin-proposal-optional-chaining" "^7.12.1" + "@babel/plugin-proposal-private-methods" "^7.12.1" + "@babel/plugin-proposal-unicode-property-regex" "^7.12.1" "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.4" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-json-strings" "^7.8.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" - "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.4" - "@babel/plugin-transform-arrow-functions" "^7.10.4" - "@babel/plugin-transform-async-to-generator" "^7.10.4" - "@babel/plugin-transform-block-scoped-functions" "^7.10.4" - "@babel/plugin-transform-block-scoping" "^7.10.4" - "@babel/plugin-transform-classes" "^7.10.4" - "@babel/plugin-transform-computed-properties" "^7.10.4" - "@babel/plugin-transform-destructuring" "^7.10.4" - "@babel/plugin-transform-dotall-regex" "^7.10.4" - "@babel/plugin-transform-duplicate-keys" "^7.10.4" - "@babel/plugin-transform-exponentiation-operator" "^7.10.4" - "@babel/plugin-transform-for-of" "^7.10.4" - "@babel/plugin-transform-function-name" "^7.10.4" - "@babel/plugin-transform-literals" "^7.10.4" - "@babel/plugin-transform-member-expression-literals" "^7.10.4" - "@babel/plugin-transform-modules-amd" "^7.10.4" - "@babel/plugin-transform-modules-commonjs" "^7.10.4" - "@babel/plugin-transform-modules-systemjs" "^7.10.4" - "@babel/plugin-transform-modules-umd" "^7.10.4" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.4" - "@babel/plugin-transform-new-target" "^7.10.4" - "@babel/plugin-transform-object-super" "^7.10.4" - "@babel/plugin-transform-parameters" "^7.10.4" - "@babel/plugin-transform-property-literals" "^7.10.4" - "@babel/plugin-transform-regenerator" "^7.10.4" - "@babel/plugin-transform-reserved-words" "^7.10.4" - "@babel/plugin-transform-shorthand-properties" "^7.10.4" - "@babel/plugin-transform-spread" "^7.10.4" - "@babel/plugin-transform-sticky-regex" "^7.10.4" - "@babel/plugin-transform-template-literals" "^7.10.4" - "@babel/plugin-transform-typeof-symbol" "^7.10.4" - "@babel/plugin-transform-unicode-escapes" "^7.10.4" - "@babel/plugin-transform-unicode-regex" "^7.10.4" - "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.10.4" - browserslist "^4.12.0" - core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" - semver "^5.5.0" - -"@babel/preset-env@^7.11.0": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.11.5.tgz#18cb4b9379e3e92ffea92c07471a99a2914e4272" - integrity sha512-kXqmW1jVcnB2cdueV+fyBM8estd5mlNfaQi6lwLgRwCby4edpavgbFhiBNjmWA3JpB/yZGSISa7Srf+TwxDQoA== - dependencies: - "@babel/compat-data" "^7.11.0" - "@babel/helper-compilation-targets" "^7.10.4" - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-proposal-async-generator-functions" "^7.10.4" - "@babel/plugin-proposal-class-properties" "^7.10.4" - "@babel/plugin-proposal-dynamic-import" "^7.10.4" - "@babel/plugin-proposal-export-namespace-from" "^7.10.4" - "@babel/plugin-proposal-json-strings" "^7.10.4" - "@babel/plugin-proposal-logical-assignment-operators" "^7.11.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.4" - "@babel/plugin-proposal-numeric-separator" "^7.10.4" - "@babel/plugin-proposal-object-rest-spread" "^7.11.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.10.4" - "@babel/plugin-proposal-optional-chaining" "^7.11.0" - "@babel/plugin-proposal-private-methods" "^7.10.4" - "@babel/plugin-proposal-unicode-property-regex" "^7.10.4" - "@babel/plugin-syntax-async-generators" "^7.8.0" - "@babel/plugin-syntax-class-properties" "^7.10.4" + "@babel/plugin-syntax-class-properties" "^7.12.1" "@babel/plugin-syntax-dynamic-import" "^7.8.0" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" "@babel/plugin-syntax-json-strings" "^7.8.0" @@ -1055,51 +958,48 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" "@babel/plugin-syntax-optional-chaining" "^7.8.0" - "@babel/plugin-syntax-top-level-await" "^7.10.4" - "@babel/plugin-transform-arrow-functions" "^7.10.4" - "@babel/plugin-transform-async-to-generator" "^7.10.4" - "@babel/plugin-transform-block-scoped-functions" "^7.10.4" - "@babel/plugin-transform-block-scoping" "^7.10.4" - "@babel/plugin-transform-classes" "^7.10.4" - "@babel/plugin-transform-computed-properties" "^7.10.4" - "@babel/plugin-transform-destructuring" "^7.10.4" - "@babel/plugin-transform-dotall-regex" "^7.10.4" - "@babel/plugin-transform-duplicate-keys" "^7.10.4" - "@babel/plugin-transform-exponentiation-operator" "^7.10.4" - "@babel/plugin-transform-for-of" "^7.10.4" - "@babel/plugin-transform-function-name" "^7.10.4" - "@babel/plugin-transform-literals" "^7.10.4" - "@babel/plugin-transform-member-expression-literals" "^7.10.4" - "@babel/plugin-transform-modules-amd" "^7.10.4" - "@babel/plugin-transform-modules-commonjs" "^7.10.4" - "@babel/plugin-transform-modules-systemjs" "^7.10.4" - "@babel/plugin-transform-modules-umd" "^7.10.4" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.4" - "@babel/plugin-transform-new-target" "^7.10.4" - "@babel/plugin-transform-object-super" "^7.10.4" - "@babel/plugin-transform-parameters" "^7.10.4" - "@babel/plugin-transform-property-literals" "^7.10.4" - "@babel/plugin-transform-regenerator" "^7.10.4" - "@babel/plugin-transform-reserved-words" "^7.10.4" - "@babel/plugin-transform-shorthand-properties" "^7.10.4" - "@babel/plugin-transform-spread" "^7.11.0" - "@babel/plugin-transform-sticky-regex" "^7.10.4" - "@babel/plugin-transform-template-literals" "^7.10.4" - "@babel/plugin-transform-typeof-symbol" "^7.10.4" - "@babel/plugin-transform-unicode-escapes" "^7.10.4" - "@babel/plugin-transform-unicode-regex" "^7.10.4" + "@babel/plugin-syntax-top-level-await" "^7.12.1" + "@babel/plugin-transform-arrow-functions" "^7.12.1" + "@babel/plugin-transform-async-to-generator" "^7.12.1" + "@babel/plugin-transform-block-scoped-functions" "^7.12.1" + "@babel/plugin-transform-block-scoping" "^7.12.1" + "@babel/plugin-transform-classes" "^7.12.1" + "@babel/plugin-transform-computed-properties" "^7.12.1" + "@babel/plugin-transform-destructuring" "^7.12.1" + "@babel/plugin-transform-dotall-regex" "^7.12.1" + "@babel/plugin-transform-duplicate-keys" "^7.12.1" + "@babel/plugin-transform-exponentiation-operator" "^7.12.1" + "@babel/plugin-transform-for-of" "^7.12.1" + "@babel/plugin-transform-function-name" "^7.12.1" + "@babel/plugin-transform-literals" "^7.12.1" + "@babel/plugin-transform-member-expression-literals" "^7.12.1" + "@babel/plugin-transform-modules-amd" "^7.12.1" + "@babel/plugin-transform-modules-commonjs" "^7.12.1" + "@babel/plugin-transform-modules-systemjs" "^7.12.1" + "@babel/plugin-transform-modules-umd" "^7.12.1" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.12.1" + "@babel/plugin-transform-new-target" "^7.12.1" + "@babel/plugin-transform-object-super" "^7.12.1" + "@babel/plugin-transform-parameters" "^7.12.1" + "@babel/plugin-transform-property-literals" "^7.12.1" + "@babel/plugin-transform-regenerator" "^7.12.1" + "@babel/plugin-transform-reserved-words" "^7.12.1" + "@babel/plugin-transform-shorthand-properties" "^7.12.1" + "@babel/plugin-transform-spread" "^7.12.1" + "@babel/plugin-transform-sticky-regex" "^7.12.1" + "@babel/plugin-transform-template-literals" "^7.12.1" + "@babel/plugin-transform-typeof-symbol" "^7.12.1" + "@babel/plugin-transform-unicode-escapes" "^7.12.1" + "@babel/plugin-transform-unicode-regex" "^7.12.1" "@babel/preset-modules" "^0.1.3" - "@babel/types" "^7.11.5" - browserslist "^4.12.0" + "@babel/types" "^7.12.1" core-js-compat "^3.6.2" - invariant "^2.2.2" - levenary "^1.1.1" semver "^5.5.0" "@babel/preset-modules@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.3.tgz#13242b53b5ef8c883c3cf7dddd55b36ce80fbc72" - integrity sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== + version "0.1.4" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.4.tgz#362f2b68c662842970fdb5e254ffc8fc1c2e415e" + integrity sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" @@ -1107,40 +1007,46 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/register@^7.6.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.10.4.tgz#53004ba8b04c4af3cbd84508e03ad150669746e4" - integrity sha512-whHmgGiWNVyTVnYTSawtDWhaeYsc+noeU8Rmi+MPnbGhDYmr5QpEDMrQcIA07D2RUv0BlThPcN89XcHCqq/O4g== +"@babel/preset-react@^7.8.3": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.12.1.tgz#7f022b13f55b6dd82f00f16d1c599ae62985358c" + integrity sha512-euCExymHCi0qB9u5fKw7rvlw7AZSjw/NaB9h7EkdTt5+yHRrXdiRTh7fkG3uBPpJg82CqLfp1LHLqWGSCrab+g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-transform-react-display-name" "^7.12.1" + "@babel/plugin-transform-react-jsx" "^7.12.1" + "@babel/plugin-transform-react-jsx-development" "^7.12.1" + "@babel/plugin-transform-react-jsx-self" "^7.12.1" + "@babel/plugin-transform-react-jsx-source" "^7.12.1" + "@babel/plugin-transform-react-pure-annotations" "^7.12.1" + +"@babel/preset-typescript@^7.9.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.12.1.tgz#86480b483bb97f75036e8864fe404cc782cc311b" + integrity sha512-hNK/DhmoJPsksdHuI/RVrcEws7GN5eamhi28JkO52MqIxU8Z0QpmiSOQxZHWOHV7I3P4UjHV97ay4TcamMA6Kw== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-transform-typescript" "^7.12.1" + +"@babel/register@^7.10.5": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.12.1.tgz#cdb087bdfc4f7241c03231f22e15d211acf21438" + integrity sha512-XWcmseMIncOjoydKZnWvWi0/5CUCD+ZYKhRwgYlWOrA8fGZ/FjuLRpqtIhLOVD/fvR1b9DQHtZPn68VvhpYf+Q== dependencies: find-cache-dir "^2.0.0" - lodash "^4.17.13" + lodash "^4.17.19" make-dir "^2.1.0" pirates "^4.0.0" source-map-support "^0.5.16" -"@babel/runtime-corejs3@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.10.4.tgz#f29fc1990307c4c57b10dbd6ce667b27159d9e0d" - integrity sha512-BFlgP2SoLO9HJX9WBwN67gHWMBhDX/eDz64Jajd6mR/UAUzqrNMm99d4qHnVaKscAElZoFiPv+JpR/Siud5lXw== - dependencies: - core-js-pure "^3.0.0" - regenerator-runtime "^0.13.4" - -"@babel/runtime@^7.10.2", "@babel/runtime@^7.8.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.4.tgz#a6724f1a6b8d2f6ea5236dbfe58c7d7ea9c5eb99" - integrity sha512-UpTN5yUJr9b4EX2CnGNWIvER7Ab83ibv0pcvvHc4UOdrBI5jb8bj+32cCwPX6xu0mt2daFNjYhoi+X7beH0RSw== +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.12.1.tgz#b4116a6b6711d010b2dad3b7b6e43bf1b9954740" + integrity sha512-J5AIf3vPj3UwXaAzb5j1xM4WAQDX3EMgemF8rjCP3SoW09LfRKAXQKt6CoVYl230P6iWdRcBbnLDDdnqWxZSCA== dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.11.0": - version "7.11.2" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.11.2.tgz#f549c13c754cc40b87644b9fa9f09a6a95fe0736" - integrity sha512-TeWkU52so0mPtDcaCTxNBI/IHiz0pZgr8VEFqXFtZWpYD08ZB6FaSwVAS8MKRQAP3bYKiVjwysOJgMFY28o6Tw== - dependencies: - regenerator-runtime "^0.13.4" - -"@babel/template@^7.10.4", "@babel/template@^7.4.0": +"@babel/template@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" integrity sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA== @@ -1149,54 +1055,35 @@ "@babel/parser" "^7.10.4" "@babel/types" "^7.10.4" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.10.4", "@babel/traverse@^7.2.4", "@babel/traverse@^7.3.4", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.0": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.4.tgz#e642e5395a3b09cc95c8e74a27432b484b697818" - integrity sha512-aSy7p5THgSYm4YyxNGz6jZpXf+Ok40QF3aA2LyIONkDHpAcJzDUqlCKXv6peqYUs2gmic849C/t2HKw2a2K20Q== +"@babel/traverse@^7.1.6", "@babel/traverse@^7.10.4", "@babel/traverse@^7.11.5", "@babel/traverse@^7.12.1", "@babel/traverse@^7.2.4", "@babel/traverse@^7.3.4", "@babel/traverse@^7.4.5", "@babel/traverse@^7.7.0": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.12.1.tgz#941395e0c5cc86d5d3e75caa095d3924526f0c1e" + integrity sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw== dependencies: "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.11.5.tgz#be777b93b518eb6d76ee2e1ea1d143daa11e61c3" - integrity sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.11.5" + "@babel/generator" "^7.12.1" "@babel/helper-function-name" "^7.10.4" "@babel/helper-split-export-declaration" "^7.11.0" - "@babel/parser" "^7.11.5" - "@babel/types" "^7.11.5" + "@babel/parser" "^7.12.1" + "@babel/types" "^7.12.1" debug "^4.1.0" globals "^11.1.0" lodash "^4.17.19" -"@babel/types@^7.1.6", "@babel/types@^7.10.4", "@babel/types@^7.3.2", "@babel/types@^7.3.4", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.7.2": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.4.tgz#369517188352e18219981efd156bfdb199fff1ee" - integrity sha512-UTCFOxC3FsFHb7lkRMVvgLzaRVamXuAs2Tz4wajva4WxtVY82eZeaUBtC2Zt95FU9TiznuC0Zk35tsim8jeVpg== - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.11.0", "@babel/types@^7.11.5": - version "7.11.5" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.11.5.tgz#d9de577d01252d77c6800cee039ee64faf75662d" - integrity sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q== +"@babel/types@^7.1.6", "@babel/types@^7.10.4", "@babel/types@^7.10.5", "@babel/types@^7.11.0", "@babel/types@^7.11.5", "@babel/types@^7.12.1", "@babel/types@^7.3.2", "@babel/types@^7.3.4", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.7.2": + version "7.12.1" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.12.1.tgz#e109d9ab99a8de735be287ee3d6a9947a190c4ae" + integrity sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA== dependencies: "@babel/helper-validator-identifier" "^7.10.4" lodash "^4.17.19" to-fast-properties "^2.0.0" +"@base2/pretty-print-object@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@base2/pretty-print-object/-/pretty-print-object-1.0.0.tgz#860ce718b0b73f4009e153541faff2cb6b85d047" + integrity sha512-4Th98KlMHr5+JkxfcoDT//6vY8vM+iSPrLNpHhRyLx2CFYi8e2RfqPLdpbnpo0Q5lQC5hNB79yes07zb02fvCw== + "@cnakazawa/watch@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" @@ -1375,10 +1262,10 @@ ember-cli-babel "^7.10.0" ember-modifier-manager-polyfill "^1.1.0" -"@ember/test-helpers@^1.7.1": - version "1.7.1" - resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-1.7.1.tgz#cc22a954b3b46856518f034bd492a74e0482389f" - integrity sha512-+ioumnanSRJzZ0ZH30FIkB0r41UhVyuWQ9R9Yp1phDWJQDLumxg+25WDr40relwcH6z0Cn6LIEzeTVujO/0Rww== +"@ember/test-helpers@^1.7.0", "@ember/test-helpers@^1.7.1": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-1.7.2.tgz#5b128dc5f6524c3850abf52668e6bd4fda401194" + integrity sha512-FEJBpbFNIaWAsCSnataiNwYFvmcpoymL/B7fXLruuJ/46BnJjzLaRPtpUIZ91w4GNTK6knxbHWXW76aVb3Aezg== dependencies: broccoli-debug "^0.6.5" broccoli-funnel "^2.0.2" @@ -1433,26 +1320,125 @@ resolve "^1.8.1" semver "^5.6.0" -"@glimmer/component@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@glimmer/component/-/component-1.0.0.tgz#f9052c8e99fb7b3d48d27c65891c5f0e59084a82" - integrity sha512-1ERZYNLZRuC8RYbcfkJeAWn3Ly7W2VdoHLQIHCmhQH/m7ubkNOdLQcTnUzje7OnRUs9EJ6DjfoN57XRX9Ux4rA== +"@emotion/cache@^10.0.27": + version "10.0.29" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.29.tgz#87e7e64f412c060102d589fe7c6dc042e6f9d1e0" + integrity sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ== dependencies: - "@glimmer/di" "^0.1.9" - "@glimmer/env" "^0.1.7" - "@glimmer/util" "^0.44.0" - broccoli-file-creator "^2.1.1" - broccoli-merge-trees "^3.0.2" - ember-cli-babel "^7.7.3" - ember-cli-get-component-path-option "^1.0.0" - ember-cli-is-package-missing "^1.0.0" - ember-cli-normalize-entity-name "^1.0.0" - ember-cli-path-utils "^1.0.0" - ember-cli-string-utils "^1.1.0" - ember-cli-typescript "3.0.0" - ember-compatibility-helpers "^1.1.2" + "@emotion/sheet" "0.9.4" + "@emotion/stylis" "0.8.5" + "@emotion/utils" "0.11.3" + "@emotion/weak-memoize" "0.2.5" -"@glimmer/component@^1.0.1": +"@emotion/core@^10.0.20": + version "10.0.35" + resolved "https://registry.yarnpkg.com/@emotion/core/-/core-10.0.35.tgz#513fcf2e22cd4dfe9d3894ed138c9d7a859af9b3" + integrity sha512-sH++vJCdk025fBlRZSAhkRlSUoqSqgCzYf5fMOmqqi3bM6how+sQpg3hkgJonj8GxXM4WbD7dRO+4tegDB9fUw== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/cache" "^10.0.27" + "@emotion/css" "^10.0.27" + "@emotion/serialize" "^0.11.15" + "@emotion/sheet" "0.9.4" + "@emotion/utils" "0.11.3" + +"@emotion/css@^10.0.27": + version "10.0.27" + resolved "https://registry.yarnpkg.com/@emotion/css/-/css-10.0.27.tgz#3a7458198fbbebb53b01b2b87f64e5e21241e14c" + integrity sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw== + dependencies: + "@emotion/serialize" "^0.11.15" + "@emotion/utils" "0.11.3" + babel-plugin-emotion "^10.0.27" + +"@emotion/hash@0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413" + integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow== + +"@emotion/is-prop-valid@0.8.8", "@emotion/is-prop-valid@^0.8.6": + version "0.8.8" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz#db28b1c4368a259b60a97311d6a952d4fd01ac1a" + integrity sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA== + dependencies: + "@emotion/memoize" "0.7.4" + +"@emotion/memoize@0.7.4": + version "0.7.4" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb" + integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw== + +"@emotion/serialize@^0.11.15", "@emotion/serialize@^0.11.16": + version "0.11.16" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.16.tgz#dee05f9e96ad2fb25a5206b6d759b2d1ed3379ad" + integrity sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg== + dependencies: + "@emotion/hash" "0.8.0" + "@emotion/memoize" "0.7.4" + "@emotion/unitless" "0.7.5" + "@emotion/utils" "0.11.3" + csstype "^2.5.7" + +"@emotion/sheet@0.9.4": + version "0.9.4" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.4.tgz#894374bea39ec30f489bbfc3438192b9774d32e5" + integrity sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA== + +"@emotion/styled-base@^10.0.27": + version "10.0.31" + resolved "https://registry.yarnpkg.com/@emotion/styled-base/-/styled-base-10.0.31.tgz#940957ee0aa15c6974adc7d494ff19765a2f742a" + integrity sha512-wTOE1NcXmqMWlyrtwdkqg87Mu6Rj1MaukEoEmEkHirO5IoHDJ8LgCQL4MjJODgxWxXibGR3opGp1p7YvkNEdXQ== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/is-prop-valid" "0.8.8" + "@emotion/serialize" "^0.11.15" + "@emotion/utils" "0.11.3" + +"@emotion/styled@^10.0.17": + version "10.0.27" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-10.0.27.tgz#12cb67e91f7ad7431e1875b1d83a94b814133eaf" + integrity sha512-iK/8Sh7+NLJzyp9a5+vIQIXTYxfT4yB/OJbjzQanB2RZpvmzBQOHZWhpAMZWYEKRNNbsD6WfBw5sVWkb6WzS/Q== + dependencies: + "@emotion/styled-base" "^10.0.27" + babel-plugin-emotion "^10.0.27" + +"@emotion/stylis@0.8.5": + version "0.8.5" + resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" + integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== + +"@emotion/unitless@0.7.5": + version "0.7.5" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" + integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== + +"@emotion/utils@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.3.tgz#a759863867befa7e583400d322652a3f44820924" + integrity sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw== + +"@emotion/weak-memoize@0.2.5": + version "0.2.5" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46" + integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA== + +"@eslint/eslintrc@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.2.1.tgz#f72069c330461a06684d119384435e12a5d76e3c" + integrity sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + lodash "^4.17.19" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@glimmer/component@^1.0.0", "@glimmer/component@^1.0.1": version "1.0.2" resolved "https://registry.yarnpkg.com/@glimmer/component/-/component-1.0.2.tgz#679307972d29a849225c13062ab11c779956ff60" integrity sha512-st6YroDjkvUeYWE36NglNG9hXmJOuOI8t44UEp1tufGc4B1L/CTlt1ziQGkaxkhY7/o2r0ZCcWHvf5bpq838YQ== @@ -1482,32 +1468,24 @@ resolved "https://registry.yarnpkg.com/@glimmer/env/-/env-0.1.7.tgz#fd2d2b55a9029c6b37a6c935e8c8871ae70dfa07" integrity sha1-/S0rVakCnGs3psk16MiHGucN+gc= -"@glimmer/interfaces@^0.51.1": - version "0.51.1" - resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.51.1.tgz#c5637669ff83c630d91c700598b9963225d656f2" - integrity sha512-ImwkFNj92RaeANQPlnSQ5kTtK18JzkY2FPE7N7Ktn3AvdXgM4P3puQzPuXhTn4UCBl6NZtN8YqCAy7kQ6eRC0w== +"@glimmer/interfaces@0.62.3": + version "0.62.3" + resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.62.3.tgz#8ad314d66d1a43197663509806e1cc2088db6741" + integrity sha512-bhbKs5vfys4mo+LRxcA4bfMl2zGn+43et4uAzsYppuNPSkP7rwdPD+mLXTYQRkTm0G5K4SnyxDPxMsWCWUNuTw== dependencies: "@simple-dom/interface" "^1.4.0" -"@glimmer/syntax@^0.51.1": - version "0.51.1" - resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.51.1.tgz#24cb4f01693bd934075d03087bdc76ab6bff0524" - integrity sha512-z5XSbLgMKGU8tgSm9Ju4mimSAJ6/SZrY2Xw2znEAmUJOIPte+tmkdpggpgj7lAjD5u2YVBVHDbz6RaZDhYASsw== +"@glimmer/syntax@^0.62.3": + version "0.62.3" + resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.62.3.tgz#8c4abd245a54e8cc084a47ab4a65c33194256fda" + integrity sha512-PU4PpMg9UOeYFTODkHN9K6As74lm16XGEQAQbd59oAbvGRu5OAIWFtSU4sMexpKOXu6iJacFO5udX7gVTACRQQ== dependencies: - "@glimmer/interfaces" "^0.51.1" - "@glimmer/util" "^0.51.1" - handlebars "^4.7.4" - simple-html-tokenizer "^0.5.9" + "@glimmer/interfaces" "0.62.3" + "@glimmer/util" "0.62.3" + "@handlebars/parser" "^1.1.0" + simple-html-tokenizer "^0.5.10" -"@glimmer/tracking@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@glimmer/tracking/-/tracking-1.0.0.tgz#aba9feeb47c48d5aadc1226b7e8d19e34031a6bc" - integrity sha512-OuF04ihYD/Rjvf++Rf7MzJVnawMSax/SZXEj4rlsQoMRwtQafgtkWjlFBcbBNQkJ3rev1zzfNN+3mdD2BFIaNg== - dependencies: - "@glimmer/env" "^0.1.7" - "@glimmer/validator" "^0.44.0" - -"@glimmer/tracking@^1.0.1": +"@glimmer/tracking@^1.0.0", "@glimmer/tracking@^1.0.1": version "1.0.2" resolved "https://registry.yarnpkg.com/@glimmer/tracking/-/tracking-1.0.2.tgz#4fe9ca89e3f4a2ae8e37c8bd8e4ea0d886d9abbf" integrity sha512-9Vp04TM2IDTShGFdxccfvnmcaj4NwqLrwbOXm4iju5KL/WkeB8mqoCSLtO3kUg+80DqU0pKE8tR460lQP8CutA== @@ -1515,25 +1493,30 @@ "@glimmer/env" "^0.1.7" "@glimmer/validator" "^0.44.0" +"@glimmer/util@0.62.3": + version "0.62.3" + resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.62.3.tgz#d6fc5d64e5e97cbec02b5fcf8a8c78c7f67dc6f5" + integrity sha512-HImkS2UJuZYPxyjXPFL9PS659kwjNcRIr5hnUo1PzrPfyZxXwWys2+vTxIv34tI1xkgkQmB1pB0S8pCdNrJY5w== + dependencies: + "@glimmer/env" "0.1.7" + "@glimmer/interfaces" "0.62.3" + "@simple-dom/interface" "^1.4.0" + "@glimmer/util@^0.44.0": version "0.44.0" resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.44.0.tgz#45df98d73812440206ae7bda87cfe04aaae21ed9" integrity sha512-duAsm30uVK9jSysElCbLyU6QQYO2X9iLDLBIBUcCqck9qN1o3tK2qWiHbGK5d6g8E2AJ4H88UrfElkyaJlGrwg== -"@glimmer/util@^0.51.1": - version "0.51.1" - resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.51.1.tgz#db27afd2ee7191e8e399c272b9f7fbe05cc26691" - integrity sha512-MCwUvV3z4pqLpeXcv5Mbchdgw0GeEPH8jUEkUTG837b5XlC2M/NO893E5A8AZbGNSP7CDsYibDExz7mjaLqq/A== - dependencies: - "@glimmer/env" "0.1.7" - "@glimmer/interfaces" "^0.51.1" - "@simple-dom/interface" "^1.4.0" - "@glimmer/validator@^0.44.0": version "0.44.0" resolved "https://registry.yarnpkg.com/@glimmer/validator/-/validator-0.44.0.tgz#03d127097dc9cb23052cdb7fcae59d0a9dca53e1" integrity sha512-i01plR0EgFVz69GDrEuFgq1NheIjZcyTy3c7q+w7d096ddPVeVcRzU3LKaqCfovvLJ+6lJx40j45ecycASUUyw== +"@handlebars/parser@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@handlebars/parser/-/parser-1.1.0.tgz#d6dbc7574774b238114582410e8fee0dc3532bdf" + integrity sha512-rR7tJoSwJ2eooOpYGxGGW95sLq6GXUaS1UtWvN7pei6n2/okYvCGld9vsUTvkl2migxbkszsycwtMf/GEc1k1A== + "@hashicorp/api-double@^1.6.1": version "1.6.1" resolved "https://registry.yarnpkg.com/@hashicorp/api-double/-/api-double-1.6.1.tgz#67c4c4c5cbf9f51f3b8bc992ab2df21acf63b318" @@ -1547,11 +1530,6 @@ faker "^4.1.0" js-yaml "^3.13.1" -"@hashicorp/consul-api-double@^5.3.7": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@hashicorp/consul-api-double/-/consul-api-double-5.4.0.tgz#fc75e064c3e50385f4fb8c5dd9068875806d8901" - integrity sha512-vAi580MyPoFhjDl8WhSviMzFJ1/PZesLqYCuGy8vuxqFaKCQET4AR8gRuungWSdRf5432aJXUNtXLhMHdJeNPg== - "@hashicorp/ember-cli-api-double@^3.1.0": version "3.1.2" resolved "https://registry.yarnpkg.com/@hashicorp/ember-cli-api-double/-/ember-cli-api-double-3.1.2.tgz#0eaee116da1431ed63e55eea9ff9c28028cf9f8c" @@ -1567,6 +1545,111 @@ pretender "^3.2.0" recursive-readdir-sync "^1.0.6" +"@icons/material@^0.2.4": + version "0.2.4" + resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8" + integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw== + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" + integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== + +"@jest/transform@^26.0.0": + version "26.6.1" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.1.tgz#f70786f96e0f765947b4fb4f54ffcfb7bd783711" + integrity sha512-oNFAqVtqRxZRx6vXL3I4bPKUK0BIlEeaalkwxyQGGI8oXDQBtYQBpiMe5F7qPs4QdvvFYB42gPGIMMcxXaBBxQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.1" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.1" + jest-regex-util "^26.0.0" + jest-util "^26.6.1" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^26.6.1": + version "26.6.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.1.tgz#2638890e8031c0bc8b4681e0357ed986e2f866c5" + integrity sha512-ywHavIKNpAVrStiRY5wiyehvcktpijpItvGiK72RAn5ctqmzvPk8OvKnvHeBqa1XdQr959CTWAJMqxI8BTibyg== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@mdx-js/loader@^1.5.1": + version "1.6.19" + resolved "https://registry.yarnpkg.com/@mdx-js/loader/-/loader-1.6.19.tgz#2b90dee54b6f959539f310776f18fe24e1f15cc5" + integrity sha512-sUOVonSzd6w821p8jCL2ET5KK24cu1w3igGwcXG/T+ZTl81EjUR9Tbv4Q50jxWS9umtmk5GcdAZndnDmpRHZXQ== + dependencies: + "@mdx-js/mdx" "1.6.19" + "@mdx-js/react" "1.6.19" + loader-utils "2.0.0" + +"@mdx-js/mdx@1.6.19", "@mdx-js/mdx@^1.5.1": + version "1.6.19" + resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-1.6.19.tgz#a89522f53d0712691115b301a4fbd04933714a6f" + integrity sha512-L3eLhEFnV/2bcb9XwOegsRmLHd1oEDQPtTBVezhptQ5U1YM+/WQNzx1apjzVTAyukwOanUXnTUMjRUtqJNgFCg== + dependencies: + "@babel/core" "7.11.6" + "@babel/plugin-syntax-jsx" "7.10.4" + "@babel/plugin-syntax-object-rest-spread" "7.8.3" + "@mdx-js/util" "1.6.19" + babel-plugin-apply-mdx-type-prop "1.6.19" + babel-plugin-extract-import-names "1.6.19" + camelcase-css "2.0.1" + detab "2.0.3" + hast-util-raw "6.0.1" + lodash.uniq "4.5.0" + mdast-util-to-hast "9.1.1" + remark-footnotes "2.0.0" + remark-mdx "1.6.19" + remark-parse "8.0.3" + remark-squeeze-paragraphs "4.0.0" + style-to-object "0.3.0" + unified "9.2.0" + unist-builder "2.0.3" + unist-util-visit "2.0.3" + +"@mdx-js/react@1.6.19", "@mdx-js/react@^1.5.1": + version "1.6.19" + resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-1.6.19.tgz#fce0f2b802804258b67817550bf3186dde2b1bd6" + integrity sha512-RS37Tagqyp2R0XFPoUZeSbZC5uJQRPhqOHWeT1LEwxESjMWb3VORHz7E827ldeQr3UW6VEQEyq/THegu+bLj6A== + +"@mdx-js/util@1.6.19": + version "1.6.19" + resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.19.tgz#5d4d8f66536d6653963ab2600490b52c3df546be" + integrity sha512-bkkQNSHz3xSr3KRHUQ2Qk2XhewvvXAOUqjIUKwcQuL4ijOA4tUHZfUgXExi5CpMysrX7izcsyICtXjZHlfJUjg== + +"@mrmlnc/readdir-enhanced@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" + integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== + dependencies: + call-me-maybe "^1.0.1" + glob-to-regexp "^0.3.0" + "@nodelib/fs.scandir@2.1.3": version "2.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" @@ -1580,6 +1663,11 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== +"@nodelib/fs.stat@^1.1.2": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" + integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== + "@nodelib/fs.walk@^1.2.3": version "1.2.4" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" @@ -1588,6 +1676,23 @@ "@nodelib/fs.scandir" "2.1.3" fastq "^1.6.0" +"@npmcli/move-file@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464" + integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw== + dependencies: + mkdirp "^1.0.4" + +"@reach/router@^1.3.3": + version "1.3.4" + resolved "https://registry.yarnpkg.com/@reach/router/-/router-1.3.4.tgz#d2574b19370a70c80480ed91f3da840136d10f8c" + integrity sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA== + dependencies: + create-react-context "0.3.0" + invariant "^2.2.3" + prop-types "^15.6.1" + react-lifecycles-compat "^3.0.4" + "@simple-dom/interface@^1.4.0": version "1.4.0" resolved "https://registry.yarnpkg.com/@simple-dom/interface/-/interface-1.4.0.tgz#e8feea579232017f89b0138e2726facda6fbb71f" @@ -1598,10 +1703,10 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== -"@sinonjs/commons@^1", "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.7.2": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.0.tgz#c8d68821a854c555bba172f3b06959a0039b236d" - integrity sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q== +"@sinonjs/commons@^1", "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.1.tgz#e7df00f98a203324f6dc7cc606cad9d4a8ab2217" + integrity sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw== dependencies: type-detect "4.0.8" @@ -1620,10 +1725,10 @@ "@sinonjs/commons" "^1" "@sinonjs/samsam" "^5.0.2" -"@sinonjs/samsam@^5.0.2", "@sinonjs/samsam@^5.0.3": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-5.0.3.tgz#86f21bdb3d52480faf0892a480c9906aa5a52938" - integrity sha512-QucHkc2uMJ0pFGjJUDP3F9dq5dx8QIaqISl9QgwLOh6P9yv877uONPGXh/OH/0zmM3tW1JjuJltAZV2l7zU+uQ== +"@sinonjs/samsam@^5.0.2", "@sinonjs/samsam@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-5.2.0.tgz#fcff83ab86f83b5498f4a967869c079408d9b5eb" + integrity sha512-CaIcyX5cDsjcW/ab7HposFWzV1kC++4HNsfnEdFJa7cP1QIuILAKV+BgfeqRXhcnSAc76r/Rh/O5C+300BwUIw== dependencies: "@sinonjs/commons" "^1.6.0" lodash.get "^4.4.2" @@ -1634,6 +1739,745 @@ resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== +"@storybook/addon-actions@6.0.27", "@storybook/addon-actions@^6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-6.0.27.tgz#0ef0ad916808aadfd4989c95ca46b5b711fa5260" + integrity sha512-GtYSjwGeuRSOAVLuSM2Kae5w17aUgKNXzy1zrWlXlBpTrcyhciRsRBSMGV3PV3EpF3HpxQfyWmJZa3OgFsXdRw== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-api" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/theming" "6.0.27" + core-js "^3.0.1" + fast-deep-equal "^3.1.1" + global "^4.3.2" + lodash "^4.17.15" + polished "^3.4.4" + prop-types "^15.7.2" + react "^16.8.3" + react-inspector "^5.0.1" + regenerator-runtime "^0.13.3" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + uuid "^8.0.0" + +"@storybook/addon-backgrounds@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-backgrounds/-/addon-backgrounds-6.0.27.tgz#b8c7eb0aaf115766ec94a6946dfbcb466b8ce0ae" + integrity sha512-TO7+ip7KzcADftuH+BFfH8aWVHfHs50Cl4/02uv8AQ/mLZFmb/HkuGDBfRwCv4fWclX613mmL9P0M4sbpYUlGw== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/theming" "6.0.27" + core-js "^3.0.1" + memoizerific "^1.11.3" + react "^16.8.3" + regenerator-runtime "^0.13.3" + +"@storybook/addon-controls@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.0.27.tgz#faf183cb8984647fcf14ef3d6dcffb9d5118ed24" + integrity sha512-YdAwizkDJKo+TpsBB4nnorZZuSdl7+lI0kD7CUUicDdcTAQdI/mNUvKOCKVWAnYLzQmdWRc3e3GNvp003Q155g== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-api" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/node-logger" "6.0.27" + "@storybook/theming" "6.0.27" + core-js "^3.0.1" + ts-dedent "^1.1.1" + +"@storybook/addon-controls@^6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/addon-controls/-/addon-controls-6.0.28.tgz#5872ede3d33b103c0b519304dedde1000b8c68f0" + integrity sha512-wG42u5wkLSuk5M3VPAr6ui/lH75tU1BNGZWtCbDDVPRX/EOF3WxXDhS8gvWefyNcmshnFlbCOhA1Xt7rrLPfpg== + dependencies: + "@storybook/addons" "6.0.28" + "@storybook/api" "6.0.28" + "@storybook/client-api" "6.0.28" + "@storybook/components" "6.0.28" + "@storybook/node-logger" "6.0.28" + "@storybook/theming" "6.0.28" + core-js "^3.0.1" + ts-dedent "^1.1.1" + +"@storybook/addon-docs@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-docs/-/addon-docs-6.0.27.tgz#ff6558a3a68f9c9fa918e23ad636cdef3a461d1e" + integrity sha512-NXSNulvpH2CL/aPPVa/llVc7SFOZUMkECcVmNf3aO0inE3nn2QN1dW3LfJaESuZYwLKFRa7qY+0CmvNqOrHXrQ== + dependencies: + "@babel/generator" "^7.9.6" + "@babel/parser" "^7.9.6" + "@babel/plugin-transform-react-jsx" "^7.3.0" + "@babel/preset-env" "^7.9.6" + "@jest/transform" "^26.0.0" + "@mdx-js/loader" "^1.5.1" + "@mdx-js/mdx" "^1.5.1" + "@mdx-js/react" "^1.5.1" + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-api" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/csf" "0.0.1" + "@storybook/node-logger" "6.0.27" + "@storybook/postinstall" "6.0.27" + "@storybook/source-loader" "6.0.27" + "@storybook/theming" "6.0.27" + acorn "^7.1.0" + acorn-jsx "^5.1.0" + acorn-walk "^7.0.0" + core-js "^3.0.1" + doctrine "^3.0.0" + escodegen "^1.12.0" + fast-deep-equal "^3.1.1" + global "^4.3.2" + html-tags "^3.1.0" + js-string-escape "^1.0.1" + lodash "^4.17.15" + prop-types "^15.7.2" + react-element-to-jsx-string "^14.3.1" + regenerator-runtime "^0.13.3" + remark-external-links "^6.0.0" + remark-slug "^6.0.0" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/addon-essentials@^6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-essentials/-/addon-essentials-6.0.27.tgz#f65a5b74cc585cf41cf7d1acce1601fa780abcdb" + integrity sha512-JmiMojlqivAG3kaIAIdKX2eOd4jlNK0ATfcU7PLjTh45BlW08erQIwdLAmU5BlTld/HcwCiGkpGKC7KJgcjGGQ== + dependencies: + "@storybook/addon-actions" "6.0.27" + "@storybook/addon-backgrounds" "6.0.27" + "@storybook/addon-controls" "6.0.27" + "@storybook/addon-docs" "6.0.27" + "@storybook/addon-toolbars" "6.0.27" + "@storybook/addon-viewport" "6.0.27" + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/node-logger" "6.0.27" + core-js "^3.0.1" + regenerator-runtime "^0.13.3" + ts-dedent "^1.1.1" + +"@storybook/addon-links@^6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-6.0.27.tgz#b1a0b0840e8d80ece73ad749b89f48efbf177fbc" + integrity sha512-3jgGy+wgeJuqrdOPQCIOTk8TBtFGGoAbzahnuDjh4eH34uSAZgVurME3ojdnqq743ELzMZXL78Y46otZOzVnkA== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/csf" "0.0.1" + "@storybook/router" "6.0.27" + "@types/qs" "^6.9.0" + core-js "^3.0.1" + global "^4.3.2" + prop-types "^15.7.2" + qs "^6.6.0" + regenerator-runtime "^0.13.3" + ts-dedent "^1.1.1" + +"@storybook/addon-toolbars@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-toolbars/-/addon-toolbars-6.0.27.tgz#20632c610e2e47fb688a1794fd8d31a0c542dd85" + integrity sha512-Ak0srUPOX9m44UfQwZK4ue1hCNvkhfhB5PfVwjN6KyglpRCCNdFIT3BIPshmPXSyO1eeRL4rufxWtvtcqCodag== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-api" "6.0.27" + "@storybook/components" "6.0.27" + core-js "^3.0.1" + +"@storybook/addon-viewport@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addon-viewport/-/addon-viewport-6.0.27.tgz#acfecc633b84b9d486e5ca7c302c4a328fe813a9" + integrity sha512-oSHJeWsWr21UIxp5yU+aTpegBLBphz1Vx49t1v3uqxTWZaUAWtXTbdZxkvTd4kkEDzEEyUa4Vj8UoXPMTpYBAA== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/theming" "6.0.27" + core-js "^3.0.1" + global "^4.3.2" + memoizerific "^1.11.3" + prop-types "^15.7.2" + regenerator-runtime "^0.13.3" + +"@storybook/addons@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.0.27.tgz#bd39373b3b95360d732b855f692f843e0745f9fe" + integrity sha512-ruumzJ1BLQ/2+KbV6qTN1OWPqejPWczY2EjEKo8azMlmZ4xBSiczi5HvDto/fYt6fMQfzgkdIUAcofHGf4XQGQ== + dependencies: + "@storybook/api" "6.0.27" + "@storybook/channels" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/router" "6.0.27" + "@storybook/theming" "6.0.27" + core-js "^3.0.1" + global "^4.3.2" + regenerator-runtime "^0.13.3" + +"@storybook/addons@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-6.0.28.tgz#8c7ef3229706e2dc32d40ec9158431a3ffee3e5b" + integrity sha512-3Brf9w/u2sw0huarcO1iLFBmGt7KtApRxX4bFcsRiPPFxliDrmb1sAsd37UbKp8qBSw1U6FByjuTJQ7xn/TDhg== + dependencies: + "@storybook/api" "6.0.28" + "@storybook/channels" "6.0.28" + "@storybook/client-logger" "6.0.28" + "@storybook/core-events" "6.0.28" + "@storybook/router" "6.0.28" + "@storybook/theming" "6.0.28" + core-js "^3.0.1" + global "^4.3.2" + regenerator-runtime "^0.13.3" + +"@storybook/api@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.0.27.tgz#e2f42918560f17d725eaf10cd601e78b21d79f02" + integrity sha512-48LDFK+mOdPBHjZWYTOLZnOJ3XPn8OxJm7h5dCuuFe6wblQIYxXeyBwn6BVOkmonmNJ9OglUGY7KqslaOrGYyQ== + dependencies: + "@reach/router" "^1.3.3" + "@storybook/channels" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/csf" "0.0.1" + "@storybook/router" "6.0.27" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.0.27" + "@types/reach__router" "^1.3.5" + core-js "^3.0.1" + fast-deep-equal "^3.1.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + react "^16.8.3" + regenerator-runtime "^0.13.3" + store2 "^2.7.1" + telejson "^5.0.2" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/api@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/api/-/api-6.0.28.tgz#ec87494e982240e2ccc2390f79d3100cc5a8f4da" + integrity sha512-6dWjz5HSM3v8c+J0Z/lGYGujs4ZKSt1lJUWaH/MPvuoeDiVm+1jKLwWTAMlMnOP9o8xgNTuQtEbQkNG2D66oQA== + dependencies: + "@reach/router" "^1.3.3" + "@storybook/channels" "6.0.28" + "@storybook/client-logger" "6.0.28" + "@storybook/core-events" "6.0.28" + "@storybook/csf" "0.0.1" + "@storybook/router" "6.0.28" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.0.28" + "@types/reach__router" "^1.3.5" + core-js "^3.0.1" + fast-deep-equal "^3.1.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + react "^16.8.3" + regenerator-runtime "^0.13.3" + store2 "^2.7.1" + telejson "^5.0.2" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/channel-postmessage@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.0.27.tgz#42641312e0453d848ae899ad92b4a998f1905440" + integrity sha512-ygLbzJ/WbllPL4albJUSRoiRC3M+Q/stq66PWkLBlb1NhoXanPbmLBFaAiGsypXyH/E9Z6bQT88eUyzM5IlTmw== + dependencies: + "@storybook/channels" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/core-events" "6.0.27" + core-js "^3.0.1" + global "^4.3.2" + qs "^6.6.0" + telejson "^5.0.2" + +"@storybook/channel-postmessage@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-6.0.28.tgz#82028e368d440d49e3c4ad4e6d0166d044f0a35b" + integrity sha512-HnLKXPIwZo+JvuG1aYfGX+BoDVpmYbZBlFDSSKroBdCWZRxJJ7OQIOjBWfnf9RxOJqtwEZfVylgtmIUr9ult3Q== + dependencies: + "@storybook/channels" "6.0.28" + "@storybook/client-logger" "6.0.28" + "@storybook/core-events" "6.0.28" + core-js "^3.0.1" + global "^4.3.2" + qs "^6.6.0" + telejson "^5.0.2" + +"@storybook/channels@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.0.27.tgz#048b93566a16982ce244d5272f20f21e0c60ab66" + integrity sha512-W47tQO/1oAUDEb51URIsodT/G0QPkzpPVy+Q3bJ9buJ9TLIO/qObAH9pYw9ggUOgIJmHJY54I1KN7QAvhuVCfw== + dependencies: + core-js "^3.0.1" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/channels@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-6.0.28.tgz#9d086db8ae9ee0464fa743fefd155a2e810eb4b7" + integrity sha512-Ow1fR0GGdlfAQlagOrXHs7QQlCQ0xTKoznQgUFv1KxKw/bMwMtTJcpCYGSAuDzCzypCIR4EHtIHZxJsd/A2ieg== + dependencies: + core-js "^3.0.1" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/client-api@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.0.27.tgz#665b49ef6723162f2a570b54e9ddfdf9f77fe85f" + integrity sha512-4AaBZCds2dr4JVVlOVa2LF3Vjv0VcLVWaqibydPRO6Ch2shDw2ImwQxYBEq0WygfHR7VzG1cmOK8D92C7goPKA== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/channel-postmessage" "6.0.27" + "@storybook/channels" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/csf" "0.0.1" + "@types/qs" "^6.9.0" + "@types/webpack-env" "^1.15.2" + core-js "^3.0.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + qs "^6.6.0" + stable "^0.1.8" + store2 "^2.7.1" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/client-api@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/client-api/-/client-api-6.0.28.tgz#789e1dd85e5bfed8580035bbefe1871359bac8fc" + integrity sha512-KZ6cw6MU8exXyahHrpNAG5gmSioCXw6I5k0IOH/xzkJpN/9IMbYSbACvxbSKHeCIZorhcWNVWJjth8Kc6dD4Hg== + dependencies: + "@storybook/addons" "6.0.28" + "@storybook/channel-postmessage" "6.0.28" + "@storybook/channels" "6.0.28" + "@storybook/client-logger" "6.0.28" + "@storybook/core-events" "6.0.28" + "@storybook/csf" "0.0.1" + "@types/qs" "^6.9.0" + "@types/webpack-env" "^1.15.2" + core-js "^3.0.1" + global "^4.3.2" + lodash "^4.17.15" + memoizerific "^1.11.3" + qs "^6.6.0" + stable "^0.1.8" + store2 "^2.7.1" + ts-dedent "^1.1.1" + util-deprecate "^1.0.2" + +"@storybook/client-logger@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.0.27.tgz#b31d92908938de433cb5bd76f52c04a6b2c994ad" + integrity sha512-IY/p0f9XxfHZWVkjeIYOwF6xuonjgmZ9mYPy7Ks47zzDFrUe0/g5cqfBJBUj1YOqlANbF6XCO8YiKXjkE70olw== + dependencies: + core-js "^3.0.1" + global "^4.3.2" + +"@storybook/client-logger@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-6.0.28.tgz#f71d0ad3314facfdce4a5d2bebd0f08dc0289109" + integrity sha512-FOgeRQknrlm5PTgfY0THPrcrDyxu4ImuFOn+VWQW60mf9ShJQl45BEgm4bm9hbblYYnVHtnskWUOJfxqhHvgjg== + dependencies: + core-js "^3.0.1" + global "^4.3.2" + +"@storybook/components@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.0.27.tgz#6349fb15b6cf3034cfccbbccfa541fa74d4848c5" + integrity sha512-CnWgr/jgo7/XU+s7jhpNYevUivEsJccMRxuyOI+Ry8ndnoheifT4fp4+O5OaOeC08hStlPyad85LdTbOKigt7g== + dependencies: + "@storybook/client-logger" "6.0.27" + "@storybook/csf" "0.0.1" + "@storybook/theming" "6.0.27" + "@types/overlayscrollbars" "^1.9.0" + "@types/react-color" "^3.0.1" + "@types/react-syntax-highlighter" "11.0.4" + core-js "^3.0.1" + fast-deep-equal "^3.1.1" + global "^4.3.2" + lodash "^4.17.15" + markdown-to-jsx "^6.11.4" + memoizerific "^1.11.3" + overlayscrollbars "^1.10.2" + polished "^3.4.4" + popper.js "^1.14.7" + react "^16.8.3" + react-color "^2.17.0" + react-dom "^16.8.3" + react-popper-tooltip "^2.11.0" + react-syntax-highlighter "^12.2.1" + react-textarea-autosize "^8.1.1" + ts-dedent "^1.1.1" + +"@storybook/components@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-6.0.28.tgz#aca24419a3941e0f5a20dd349f2b13614542b3da" + integrity sha512-rp18w+xC5/ATQThnUR6Rv2cg/DAokbV88uZLPCGHX8HsPY2jFPLyCsWnNiIHBF/SfUCjIlljChlX3bzGk+SQUA== + dependencies: + "@storybook/client-logger" "6.0.28" + "@storybook/csf" "0.0.1" + "@storybook/theming" "6.0.28" + "@types/overlayscrollbars" "^1.9.0" + "@types/react-color" "^3.0.1" + "@types/react-syntax-highlighter" "11.0.4" + core-js "^3.0.1" + fast-deep-equal "^3.1.1" + global "^4.3.2" + lodash "^4.17.15" + markdown-to-jsx "^6.11.4" + memoizerific "^1.11.3" + overlayscrollbars "^1.10.2" + polished "^3.4.4" + popper.js "^1.14.7" + react "^16.8.3" + react-color "^2.17.0" + react-dom "^16.8.3" + react-popper-tooltip "^2.11.0" + react-syntax-highlighter "^12.2.1" + react-textarea-autosize "^8.1.1" + ts-dedent "^1.1.1" + +"@storybook/core-events@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.0.27.tgz#175314970236d115b04c204d85121fde1a47bb4d" + integrity sha512-w+Q2pt7DyhonWhHqjeBMMHMtV8h07ROOF9P40RthepT6/GO/471X33cgngr0i0uPgqha3JajNIl9fwAybsIROw== + dependencies: + core-js "^3.0.1" + +"@storybook/core-events@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/core-events/-/core-events-6.0.28.tgz#f9d0925cf11e696fdd3602ae581d29568f352822" + integrity sha512-YT691sQEyoTabXZGCeCXulIO31aXfiWpvE7vW7t3F/uo/Xv6aiNcY/Fzy1vRNcbgCAf3EWsBtzb1eh0FCJkyuA== + dependencies: + core-js "^3.0.1" + +"@storybook/core@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-6.0.27.tgz#a1155c5826a6b585d1942009a6811cd9590da26c" + integrity sha512-qHONOXU8g17IfSaMF0HaSQfUFUGqOIBCX6g5qNHuzuASNsrdDmSr6xgF9+htltaQjSpC+s/4zOpn7kXfh1+eGQ== + dependencies: + "@babel/plugin-proposal-class-properties" "^7.8.3" + "@babel/plugin-proposal-decorators" "^7.8.3" + "@babel/plugin-proposal-export-default-from" "^7.8.3" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.1" + "@babel/plugin-proposal-object-rest-spread" "^7.9.6" + "@babel/plugin-proposal-optional-chaining" "^7.10.1" + "@babel/plugin-proposal-private-methods" "^7.8.3" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/plugin-transform-arrow-functions" "^7.8.3" + "@babel/plugin-transform-block-scoping" "^7.8.3" + "@babel/plugin-transform-classes" "^7.9.5" + "@babel/plugin-transform-destructuring" "^7.9.5" + "@babel/plugin-transform-for-of" "^7.9.0" + "@babel/plugin-transform-parameters" "^7.9.5" + "@babel/plugin-transform-shorthand-properties" "^7.8.3" + "@babel/plugin-transform-spread" "^7.8.3" + "@babel/plugin-transform-template-literals" "^7.8.3" + "@babel/preset-env" "^7.9.6" + "@babel/preset-react" "^7.8.3" + "@babel/preset-typescript" "^7.9.0" + "@babel/register" "^7.10.5" + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/channel-postmessage" "6.0.27" + "@storybook/channels" "6.0.27" + "@storybook/client-api" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/csf" "0.0.1" + "@storybook/node-logger" "6.0.27" + "@storybook/router" "6.0.27" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.0.27" + "@storybook/ui" "6.0.27" + "@types/glob-base" "^0.3.0" + "@types/micromatch" "^4.0.1" + "@types/node-fetch" "^2.5.4" + airbnb-js-shims "^2.2.1" + ansi-to-html "^0.6.11" + autoprefixer "^9.7.2" + babel-loader "^8.0.6" + babel-plugin-emotion "^10.0.20" + babel-plugin-macros "^2.8.0" + babel-preset-minify "^0.5.0 || 0.6.0-alpha.5" + better-opn "^2.0.0" + boxen "^4.1.0" + case-sensitive-paths-webpack-plugin "^2.2.0" + chalk "^4.0.0" + cli-table3 "0.6.0" + commander "^5.0.0" + core-js "^3.0.1" + css-loader "^3.5.3" + detect-port "^1.3.0" + dotenv-webpack "^1.7.0" + ejs "^3.1.2" + express "^4.17.0" + file-loader "^6.0.0" + file-system-cache "^1.0.5" + find-up "^4.1.0" + fork-ts-checker-webpack-plugin "^4.1.4" + fs-extra "^9.0.0" + glob "^7.1.6" + glob-base "^0.3.0" + glob-promise "^3.4.0" + global "^4.3.2" + html-webpack-plugin "^4.2.1" + inquirer "^7.0.0" + interpret "^2.0.0" + ip "^1.1.5" + json5 "^2.1.1" + lazy-universal-dotenv "^3.0.1" + micromatch "^4.0.2" + node-fetch "^2.6.0" + pkg-dir "^4.2.0" + pnp-webpack-plugin "1.6.4" + postcss-flexbugs-fixes "^4.1.0" + postcss-loader "^3.0.0" + pretty-hrtime "^1.0.3" + qs "^6.6.0" + raw-loader "^4.0.1" + react-dev-utils "^10.0.0" + regenerator-runtime "^0.13.3" + resolve-from "^5.0.0" + serve-favicon "^2.5.0" + shelljs "^0.8.3" + stable "^0.1.8" + style-loader "^1.2.1" + terser-webpack-plugin "^3.0.0" + ts-dedent "^1.1.1" + unfetch "^4.1.0" + url-loader "^4.0.0" + util-deprecate "^1.0.2" + webpack "^4.43.0" + webpack-dev-middleware "^3.7.0" + webpack-hot-middleware "^2.25.0" + webpack-virtual-modules "^0.2.2" + +"@storybook/csf@0.0.1": + version "0.0.1" + resolved "https://registry.yarnpkg.com/@storybook/csf/-/csf-0.0.1.tgz#95901507dc02f0bc6f9ac8ee1983e2fc5bb98ce6" + integrity sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw== + dependencies: + lodash "^4.17.15" + +"@storybook/ember-cli-storybook@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@storybook/ember-cli-storybook/-/ember-cli-storybook-0.2.1.tgz#12fa8a122fc75a5faabf9e3842eb6575febc4fd3" + integrity sha512-V5zqMqMHNrvwI0Ut0X0gnTAf+psbhKGV9HMN810gYZ+4ke3LQGdW4Zvq2CRk/wO6+FPNswImSf7fKEd/nOdaUA== + dependencies: + broccoli-funnel "^2.0.2" + cheerio "^1.0.0-rc.2" + ember-cli-addon-docs-yuidoc "^0.2.3" + ember-cli-babel "^7.1.2" + +"@storybook/ember@^6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/ember/-/ember-6.0.27.tgz#9abffc4a464f3dfb10c309654beec4bfa2755870" + integrity sha512-xt9wgh9EztznXdHmcKX7uLfzL8pxha5bNXqM5KEiI4M070Il2qreMW8Mxf/1EuW0EWTULAF50B1+/Srca/Xcgw== + dependencies: + "@ember/test-helpers" "^1.7.0" + "@storybook/core" "6.0.27" + core-js "^3.0.1" + global "^4.3.2" + regenerator-runtime "^0.13.3" + ts-dedent "^1.1.1" + +"@storybook/node-logger@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.0.27.tgz#31b19f9cb36fe2c2cf3aa0ddcf2d51dc0f619f4e" + integrity sha512-HlVWi2EvWPAOS19BctlhDZ989oBd7MvFbkgr2xTs01UhH96DcsUXCeMwQGhw1D5wgvpi7JtM4Y830BsBBiBLJQ== + dependencies: + "@types/npmlog" "^4.1.2" + chalk "^4.0.0" + core-js "^3.0.1" + npmlog "^4.1.2" + pretty-hrtime "^1.0.3" + +"@storybook/node-logger@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-6.0.28.tgz#b1e51d00c8acaa44b91e4cef33ab3275cad93b14" + integrity sha512-foGRKU9n6tRcN+Os2XJvsWMQQoUubUjuX6/pIyh+rGVOfOxbK56logE/UDOAsdibGMiof9MOldNeGmYS51vPCg== + dependencies: + "@types/npmlog" "^4.1.2" + chalk "^4.0.0" + core-js "^3.0.1" + npmlog "^4.1.2" + pretty-hrtime "^1.0.3" + +"@storybook/postinstall@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/postinstall/-/postinstall-6.0.27.tgz#20ad2685e32bb875aa629fdf21b2c44f5db309a7" + integrity sha512-GgrBCuOQKhlM3+X+bVCdoQqCofzfwCQS+21VgAfJ8bFeCHT8n6kY48OTf+vr6uosjSuQ7sJCiHWvosk3OqBsXA== + dependencies: + core-js "^3.0.1" + +"@storybook/router@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.0.27.tgz#04725a105a4e7fc286ca670700a22f78fec50f0d" + integrity sha512-jo6d48mZLeHyv8wYf0NnV0eCtJ7LRsBaf1x2c967u4GAQ128+bYXm0iZwAtv4kYmH3YgETGuCbKpZyQbjbhUVQ== + dependencies: + "@reach/router" "^1.3.3" + "@types/reach__router" "^1.3.5" + core-js "^3.0.1" + global "^4.3.2" + memoizerific "^1.11.3" + qs "^6.6.0" + +"@storybook/router@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/router/-/router-6.0.28.tgz#e95d8c3bcc18688c17a5f582b2612014400fed58" + integrity sha512-omp2LRq3LYc7A89PM0WpJnioedzCme3jJbJXRR7tFva4N+aP6JGaFTJZZdk2NHXHxerGfWG0Cs9G6HNAw9nN1A== + dependencies: + "@reach/router" "^1.3.3" + "@types/reach__router" "^1.3.5" + core-js "^3.0.1" + global "^4.3.2" + memoizerific "^1.11.3" + qs "^6.6.0" + +"@storybook/semver@^7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@storybook/semver/-/semver-7.3.2.tgz#f3b9c44a1c9a0b933c04e66d0048fcf2fa10dac0" + integrity sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg== + dependencies: + core-js "^3.6.5" + find-up "^4.1.0" + +"@storybook/source-loader@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/source-loader/-/source-loader-6.0.27.tgz#f36560e82d215e2554160326cc9baca9e037154d" + integrity sha512-mLncCAN0s9mcUY7/wFAwJvXDV2ts5XxB40ZHRZKlseTiI011uwf1AEBOmeSWft/CxOtbicHTYbIHdMokuWNjmg== + dependencies: + "@storybook/addons" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/csf" "0.0.1" + core-js "^3.0.1" + estraverse "^4.2.0" + global "^4.3.2" + loader-utils "^2.0.0" + lodash "^4.17.15" + prettier "~2.0.5" + regenerator-runtime "^0.13.3" + +"@storybook/theming@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.0.27.tgz#dc09d02b7f6c70db079f4aa3fb50c2fe3e3fe9b9" + integrity sha512-6jm7tJuGUZzSftRQce776fS9/Pt5OAypmaTOj035z3RWswoQ1pj8olXVnSNxSt6jyYoWrJru8kiCl7w78q0rPg== + dependencies: + "@emotion/core" "^10.0.20" + "@emotion/is-prop-valid" "^0.8.6" + "@emotion/styled" "^10.0.17" + "@storybook/client-logger" "6.0.27" + core-js "^3.0.1" + deep-object-diff "^1.1.0" + emotion-theming "^10.0.19" + global "^4.3.2" + memoizerific "^1.11.3" + polished "^3.4.4" + resolve-from "^5.0.0" + ts-dedent "^1.1.1" + +"@storybook/theming@6.0.28": + version "6.0.28" + resolved "https://registry.yarnpkg.com/@storybook/theming/-/theming-6.0.28.tgz#8403333c68c44729eb677ef7c934aaa06e269f33" + integrity sha512-dcZXDkO1LYcnWUejAzvjl3OPBnAB1m2+fzmRx0dBrgm2O+fcNXTadQ6SXZYKaSz37lS+aGtYG7I9nurwhXMMXA== + dependencies: + "@emotion/core" "^10.0.20" + "@emotion/is-prop-valid" "^0.8.6" + "@emotion/styled" "^10.0.17" + "@storybook/client-logger" "6.0.28" + core-js "^3.0.1" + deep-object-diff "^1.1.0" + emotion-theming "^10.0.19" + global "^4.3.2" + memoizerific "^1.11.3" + polished "^3.4.4" + resolve-from "^5.0.0" + ts-dedent "^1.1.1" + +"@storybook/ui@6.0.27": + version "6.0.27" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-6.0.27.tgz#ae3321de6714bfba1913c8edc1a9338d8e301d38" + integrity sha512-hxTeoe3QTSJ4P9EI8Kc8hroxem5OXEYq77zKq8XxgtOKhVzhQVaA+c4p/t6Z68+yK693CCp07+6QvGo++EQEHw== + dependencies: + "@emotion/core" "^10.0.20" + "@storybook/addons" "6.0.27" + "@storybook/api" "6.0.27" + "@storybook/channels" "6.0.27" + "@storybook/client-logger" "6.0.27" + "@storybook/components" "6.0.27" + "@storybook/core-events" "6.0.27" + "@storybook/router" "6.0.27" + "@storybook/semver" "^7.3.2" + "@storybook/theming" "6.0.27" + "@types/markdown-to-jsx" "^6.11.0" + copy-to-clipboard "^3.0.8" + core-js "^3.0.1" + core-js-pure "^3.0.1" + emotion-theming "^10.0.19" + fuse.js "^3.6.1" + global "^4.3.2" + lodash "^4.17.15" + markdown-to-jsx "^6.11.4" + memoizerific "^1.11.3" + polished "^3.4.4" + qs "^6.6.0" + react "^16.8.3" + react-dom "^16.8.3" + react-draggable "^4.0.3" + react-helmet-async "^1.0.2" + react-hotkeys "2.0.0" + react-sizeme "^2.6.7" + regenerator-runtime "^0.13.3" + resolve-from "^5.0.0" + store2 "^2.7.1" + +"@textlint/ast-node-types@^4.0.3": + version "4.3.4" + resolved "https://registry.yarnpkg.com/@textlint/ast-node-types/-/ast-node-types-4.3.4.tgz#f6596c45c32c85dc06915c3077bb7686033efd32" + integrity sha512-Grq+vJuNH7HCa278eFeiqJvowrD+onMCoG2ctLyoN+fXYIQGIr1/8fo8AcIg+VM16Kga+N6Y1UWNOWPd8j1nFg== + +"@textlint/markdown-to-ast@~6.0.9": + version "6.0.9" + resolved "https://registry.yarnpkg.com/@textlint/markdown-to-ast/-/markdown-to-ast-6.0.9.tgz#e7c89e5ad15d17dcd8e5a62758358936827658fa" + integrity sha512-hfAWBvTeUGh5t5kTn2U3uP3qOSM1BSrxzl1jF3nn0ywfZXpRBZr5yRjXnl4DzIYawCtZOshmRi/tI3/x4TE1jQ== + dependencies: + "@textlint/ast-node-types" "^4.0.3" + debug "^2.1.3" + remark-frontmatter "^1.2.0" + remark-parse "^5.0.0" + structured-source "^3.0.2" + traverse "^0.6.6" + unified "^6.1.6" + +"@types/anymatch@*": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" + integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== + "@types/body-parser@*": version "1.19.0" resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f" @@ -1642,6 +2486,11 @@ "@types/connect" "*" "@types/node" "*" +"@types/braces@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/braces/-/braces-3.0.0.tgz#7da1c0d44ff1c7eb660a36ec078ea61ba7eb42cb" + integrity sha512-TbH79tcyi9FHwbyboOKeRachRq63mSuWYXOflsNO9ZyE5ClQ/JaozNKl+aWUq87qPNsXasXxi2AbgfwIJ+8GQw== + "@types/broccoli-plugin@^1.3.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@types/broccoli-plugin/-/broccoli-plugin-1.3.0.tgz#38f8462fecaebc4e09a32e4d4ed1b9808f75bbca" @@ -1655,14 +2504,9 @@ "@types/chai" "*" "@types/chai@*", "@types/chai@^4.2.9": - version "4.2.11" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.2.11.tgz#d3614d6c5f500142358e6ed24e1bf16657536c50" - integrity sha512-t7uW6eFafjO+qJ3BIV2gGUyZs27egcNRkUdalkud+Qa3+kg//f129iuOFivHDXQ+vnU3fDXuwgv0cqMCbcE8sw== - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== + version "4.2.14" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.2.14.tgz#44d2dd0b5de6185089375d976b4ec5caf6861193" + integrity sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ== "@types/connect@*": version "3.4.33" @@ -1677,18 +2521,18 @@ integrity sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g== "@types/express-serve-static-core@*": - version "4.17.8" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.8.tgz#b8f7b714138536742da222839892e203df569d1c" - integrity sha512-1SJZ+R3Q/7mLkOD9ewCBDYD2k0WyZQtWYqF/2VvoNN2/uhI49J9CDN4OAm+wGMA0DbArA4ef27xl4+JwMtGggw== + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.13.tgz#d9af025e925fc8b089be37423b8d1eac781be084" + integrity sha512-RgDi5a4nuzam073lRGKTUIaL3eF2+H7LJvJ8eUnCI0wA6SNjXc44DCmWNiTLs/AZ7QlsFWZiw/gTG3nSQGL0fA== dependencies: "@types/node" "*" "@types/qs" "*" "@types/range-parser" "*" "@types/express@^4.17.2": - version "4.17.7" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.7.tgz#42045be6475636d9801369cd4418ef65cdb0dd59" - integrity sha512-dCOT5lcmV/uC2J9k0rPafATeeyz+99xTt54ReX11/LObZgfzJqZNcW27zGhYyX+9iSEGXGt5qLPwRSvBZcLvtQ== + version "4.17.8" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.8.tgz#3df4293293317e61c60137d273a2e96cd8d5f27a" + integrity sha512-wLhcKh3PMlyA2cNAB9sjM1BntnhPMiM0JOBwPBqttjHev2428MLEB4AYVN+d8s2iyCVZac+o41Pflm/ZH5vLXQ== dependencies: "@types/body-parser" "*" "@types/express-serve-static-core" "*" @@ -1709,6 +2553,11 @@ dependencies: "@types/node" "*" +"@types/glob-base@^0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@types/glob-base/-/glob-base-0.3.0.tgz#a581d688347e10e50dd7c17d6f2880a10354319d" + integrity sha1-pYHWiDR+EOUN18F9byiAoQNUMZ0= + "@types/glob@*", "@types/glob@^7.1.1": version "7.1.3" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" @@ -1717,41 +2566,176 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/json-schema@^7.0.4": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" - integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== +"@types/graceful-fs@^4.1.2": + version "4.1.4" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.4.tgz#4ff9f641a7c6d1a3508ff88bc3141b152772e753" + integrity sha512-mWA/4zFQhfvOA8zWkXobwJvBD7vzcxgrOQ0J5CH1votGqdq9m7+FwtGaqyCZqC3NyyBkc9z4m+iry4LlqcMWJg== + dependencies: + "@types/node" "*" + +"@types/hast@^2.0.0": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.1.tgz#b16872f2a6144c7025f296fb9636a667ebb79cd9" + integrity sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q== + dependencies: + "@types/unist" "*" + +"@types/history@*": + version "4.7.8" + resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.8.tgz#49348387983075705fe8f4e02fb67f7daaec4934" + integrity sha512-S78QIYirQcUoo6UJZx9CSP0O2ix9IaeAXwQi26Rhr/+mg7qqPy8TzaxHSUut7eGjL8WmLccT7/MXf304WjqHcA== + +"@types/html-minifier-terser@^5.0.0": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#3c9ee980f1a10d6021ae6632ca3e79ca2ec4fb50" + integrity sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA== + +"@types/is-function@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.0.tgz#1b0b819b1636c7baf0d6785d030d12edf70c3e83" + integrity sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w== + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" + integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": + version "7.0.6" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" + integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== + +"@types/markdown-to-jsx@^6.11.0": + version "6.11.2" + resolved "https://registry.yarnpkg.com/@types/markdown-to-jsx/-/markdown-to-jsx-6.11.2.tgz#05d1aaffbf15be7be12c70535fa4fed65cc7c64f" + integrity sha512-ESuCu8Bk7jpTZ3YPdMW1+6wUj13F5N15vXfc7BuUAN0eCp0lrvVL9nzOTzoqvbRzXMciuqXr1KrHt3xQAhfwPA== + dependencies: + "@types/react" "*" + +"@types/mdast@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" + integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== + dependencies: + "@types/unist" "*" + +"@types/micromatch@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@types/micromatch/-/micromatch-4.0.1.tgz#9381449dd659fc3823fd2a4190ceacc985083bc7" + integrity sha512-my6fLBvpY70KattTNzYOK6KU1oR1+UCz9ug/JbcF5UrEmeCt9P7DV2t7L8+t18mMPINqGQCE4O8PLOPbI84gxw== + dependencies: + "@types/braces" "*" "@types/mime@*": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.2.tgz#857a118d8634c84bba7ae14088e4508490cd5da5" - integrity sha512-4kPlzbljFcsttWEq6aBW0OZe6BDajAmyvr2xknBG92tejQnvdGtT9+kXSZ580DqpxY9qG2xeQVF9Dq0ymUTo5Q== + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.3.tgz#c893b73721db73699943bfc3653b1deb7faa4a3a" + integrity sha512-Jus9s4CDbqwocc5pOAnh8ShfrnMcPHuJYzVcSUU7lrh8Ni5HuIqX3oilL86p3dlTrk0LzHRCgA/GQ7uNCw6l2Q== "@types/minimatch@*", "@types/minimatch@^3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== +"@types/node-fetch@^2.5.4": + version "2.5.7" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.5.7.tgz#20a2afffa882ab04d44ca786449a276f9f6bbf3c" + integrity sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw== + dependencies: + "@types/node" "*" + form-data "^3.0.0" + "@types/node@*": - version "14.0.20" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.20.tgz#0da05cddbc761e1fa98af88a17244c8c1ff37231" - integrity sha512-MRn/NP3dee8yL5QhbSA6riuwkS+UOcsPUMOIOG3KMUQpuor/2TopdRBu8QaaB4fGU+gz/bzyDWt0FtUbeJ8H1A== + version "14.14.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.0.tgz#f1091b6ad5de18e8e91bdbd43ec63f13de372538" + integrity sha512-BfbIHP9IapdupGhq/hc+jT5dyiBVZ2DdeC5WwJWQWDb0GijQlzUFAeIQn/2GtvZcd2HVUU7An8felIICFTC2qg== + +"@types/npmlog@^4.1.2": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@types/npmlog/-/npmlog-4.1.2.tgz#d070fe6a6b78755d1092a3dc492d34c3d8f871c4" + integrity sha512-4QQmOF5KlwfxJ5IGXFIudkeLCdMABz03RcUXu+LCb24zmln8QW6aDjuGl4d4XPVLf2j+FnjelHTP7dvceAFbhA== + +"@types/overlayscrollbars@^1.9.0": + version "1.12.0" + resolved "https://registry.yarnpkg.com/@types/overlayscrollbars/-/overlayscrollbars-1.12.0.tgz#98456caceca8ad73bd5bb572632a585074e70764" + integrity sha512-h/pScHNKi4mb+TrJGDon8Yb06ujFG0mSg12wIO0sWMUF3dQIe2ExRRdNRviaNt9IjxIiOfnRr7FsQAdHwK4sMg== "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/qs@*": - version "6.9.3" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.3.tgz#b755a0934564a200d3efdf88546ec93c369abd03" - integrity sha512-7s9EQWupR1fTc2pSMtXRQ9w9gLOcrJn+h7HOXw4evxyvVqMi4f+q7d2tnFe3ng3SNHjtK+0EzGMGFUQX4/AQRA== +"@types/parse5@^5.0.0": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@types/parse5/-/parse5-5.0.3.tgz#e7b5aebbac150f8b5fdd4a46e7f0bd8e65e19109" + integrity sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw== + +"@types/prop-types@*": + version "15.7.3" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" + integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== + +"@types/qs@*", "@types/qs@^6.9.0": + version "6.9.5" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.5.tgz#434711bdd49eb5ee69d90c1d67c354a9a8ecb18b" + integrity sha512-/JHkVHtx/REVG0VVToGRGH2+23hsYLHdyG+GrvoUGlGAd0ErauXDyvHtRI/7H7mzLm+tBCKA7pfcpkQ1lf58iQ== "@types/range-parser@*": version "1.2.3" resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== +"@types/reach__router@^1.3.5": + version "1.3.6" + resolved "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.6.tgz#413417ce74caab331c70ce6a03a4c825188e4709" + integrity sha512-RHYataCUPQnt+GHoASyRLq6wmZ0n8jWlBW8Lxcwd30NN6vQfbmTeoSDfkgxO0S1lEzArp8OFDsq5KIs7FygjtA== + dependencies: + "@types/history" "*" + "@types/react" "*" + +"@types/react-color@^3.0.1": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/react-color/-/react-color-3.0.4.tgz#c63daf012ad067ac0127bdd86725f079d02082bd" + integrity sha512-EswbYJDF1kkrx93/YU+BbBtb46CCtDMvTiGmcOa/c5PETnwTiSWoseJ1oSWeRl/4rUXkhME9bVURvvPg0W5YQw== + dependencies: + "@types/react" "*" + "@types/reactcss" "*" + +"@types/react-syntax-highlighter@11.0.4": + version "11.0.4" + resolved "https://registry.yarnpkg.com/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.4.tgz#d86d17697db62f98046874f62fdb3e53a0bbc4cd" + integrity sha512-9GfTo3a0PHwQeTVoqs0g5bS28KkSY48pp5659wA+Dp4MqceDEa8EHBqrllJvvtyusszyJhViUEap0FDvlk/9Zg== + dependencies: + "@types/react" "*" + +"@types/react@*": + version "16.9.53" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.53.tgz#40cd4f8b8d6b9528aedd1fff8fcffe7a112a3d23" + integrity sha512-4nW60Sd4L7+WMXH1D6jCdVftuW7j4Za6zdp6tJ33Rqv0nk1ZAmQKML9ZLD4H0dehA3FZxXR/GM8gXplf82oNGw== + dependencies: + "@types/prop-types" "*" + csstype "^3.0.2" + +"@types/reactcss@*": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@types/reactcss/-/reactcss-1.2.3.tgz#af28ae11bbb277978b99d04d1eedfd068ca71834" + integrity sha512-d2gQQ0IL6hXLnoRfVYZukQNWHuVsE75DzFTLPUuyyEhJS8G2VvlE+qfQQ91SJjaMqlURRCNIsX7Jcsw6cEuJlA== + dependencies: + "@types/react" "*" + "@types/rimraf@^2.0.2", "@types/rimraf@^2.0.3": version "2.0.4" resolved "https://registry.yarnpkg.com/@types/rimraf/-/rimraf-2.0.4.tgz#403887b0b53c6100a6c35d2ab24f6ccc042fec46" @@ -1761,18 +2745,78 @@ "@types/node" "*" "@types/serve-static@*": - version "1.13.4" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.4.tgz#6662a93583e5a6cabca1b23592eb91e12fa80e7c" - integrity sha512-jTDt0o/YbpNwZbQmE/+2e+lfjJEJJR0I3OFaKQKPWkASkCoW3i6fsUnqudSMcNAfbtmADGu8f4MV4q+GqULmug== + version "1.13.6" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.6.tgz#866b1b8dec41c36e28c7be40ac725b88be43c5c1" + integrity sha512-nuRJmv7jW7VmCVTn+IgYDkkbbDGyIINOeu/G0d74X3lm6E5KfMeQPJhxIt1ayQeQB3cSxvYs1RA/wipYoFB4EA== dependencies: - "@types/express-serve-static-core" "*" "@types/mime" "*" + "@types/node" "*" + +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== "@types/symlink-or-copy@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@types/symlink-or-copy/-/symlink-or-copy-1.2.0.tgz#4151a81b4052c80bc2becbae09f3a9ec010a9c7a" integrity sha512-Lja2xYuuf2B3knEsga8ShbOdsfNOtzT73GyJmZyY7eGl2+ajOqrs8yM5ze0fsSoYwvA6bw7/Qr7OZ7PEEmYwWg== +"@types/tapable@*", "@types/tapable@^1.0.5": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" + integrity sha512-W+bw9ds02rAQaMvaLYxAbJ6cvguW/iJXNT6lTssS1ps6QdrMKttqEAMEG/b5CR8TZl3/L7/lH0ZV5nNR1LXikA== + +"@types/uglify-js@*": + version "3.11.0" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.11.0.tgz#2868d405cc45cd9dc3069179052103032c33afbc" + integrity sha512-I0Yd8TUELTbgRHq2K65j8rnDPAzAP+DiaF/syLem7yXwYLsHZhPd+AM2iXsWmf9P2F2NlFCgl5erZPQx9IbM9Q== + dependencies: + source-map "^0.6.1" + +"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" + integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== + +"@types/webpack-env@^1.15.2": + version "1.15.3" + resolved "https://registry.yarnpkg.com/@types/webpack-env/-/webpack-env-1.15.3.tgz#fb602cd4c2f0b7c0fb857e922075fdf677d25d84" + integrity sha512-5oiXqR7kwDGZ6+gmzIO2lTC+QsriNuQXZDWNYRV3l2XRN/zmPgnC21DLSx2D05zvD8vnXW6qUg7JnXZ4I6qLVQ== + +"@types/webpack-sources@*": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-2.0.0.tgz#08216ab9be2be2e1499beaebc4d469cec81e82a7" + integrity sha512-a5kPx98CNFRKQ+wqawroFunvFqv7GHm/3KOI52NY9xWADgc8smu4R6prt4EU/M4QfVjvgBkMqU4fBhw3QfMVkg== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.7.3" + +"@types/webpack@^4.41.8": + version "4.41.23" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.23.tgz#1925f42a7325be4ae0fce38329f1cc27768fcda7" + integrity sha512-ojA4CupZg8RCzVJLugWlvqrHpT59GWhqFxbinlsnvk10MjQCWB+ot7XDACctbWhnhtdhYK7+HOH1JxkVLiZhMg== + dependencies: + "@types/anymatch" "*" + "@types/node" "*" + "@types/tapable" "*" + "@types/uglify-js" "*" + "@types/webpack-sources" "*" + source-map "^0.6.0" + +"@types/yargs-parser@*": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" + integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== + +"@types/yargs@^15.0.0": + version "15.0.9" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.9.tgz#524cd7998fe810cdb02f26101b699cccd156ff19" + integrity sha512-HmU8SeIRhZCWcnRskCs36Q1Q00KBV6Cqh/ora8WN1+22dY07AZdn6Gel8QZ3t26XYPImtcL8WV/eqjhVmMEw4g== + dependencies: + "@types/yargs-parser" "*" + "@webassemblyjs/ast@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.11.tgz#b988582cafbb2b095e8b556526f30c90d057cace" @@ -1782,21 +2826,45 @@ "@webassemblyjs/helper-wasm-bytecode" "1.7.11" "@webassemblyjs/wast-parser" "1.7.11" +"@webassemblyjs/ast@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" + integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== + dependencies: + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + "@webassemblyjs/floating-point-hex-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz#a69f0af6502eb9a3c045555b1a6129d3d3f2e313" integrity sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg== +"@webassemblyjs/floating-point-hex-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" + integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== + "@webassemblyjs/helper-api-error@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz#c7b6bb8105f84039511a2b39ce494f193818a32a" integrity sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg== +"@webassemblyjs/helper-api-error@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" + integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== + "@webassemblyjs/helper-buffer@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz#3122d48dcc6c9456ed982debe16c8f37101df39b" integrity sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w== +"@webassemblyjs/helper-buffer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" + integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== + "@webassemblyjs/helper-code-frame@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz#cf8f106e746662a0da29bdef635fcd3d1248364b" @@ -1804,21 +2872,45 @@ dependencies: "@webassemblyjs/wast-printer" "1.7.11" +"@webassemblyjs/helper-code-frame@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" + integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== + dependencies: + "@webassemblyjs/wast-printer" "1.9.0" + "@webassemblyjs/helper-fsm@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz#df38882a624080d03f7503f93e3f17ac5ac01181" integrity sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A== +"@webassemblyjs/helper-fsm@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" + integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== + "@webassemblyjs/helper-module-context@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz#d874d722e51e62ac202476935d649c802fa0e209" integrity sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg== +"@webassemblyjs/helper-module-context@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" + integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz#dd9a1e817f1c2eb105b4cf1013093cb9f3c9cb06" integrity sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ== +"@webassemblyjs/helper-wasm-bytecode@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" + integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== + "@webassemblyjs/helper-wasm-section@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz#9c9ac41ecf9fbcfffc96f6d2675e2de33811e68a" @@ -1829,6 +2921,16 @@ "@webassemblyjs/helper-wasm-bytecode" "1.7.11" "@webassemblyjs/wasm-gen" "1.7.11" +"@webassemblyjs/helper-wasm-section@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" + integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/ieee754@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz#c95839eb63757a31880aaec7b6512d4191ac640b" @@ -1836,6 +2938,13 @@ dependencies: "@xtuc/ieee754" "^1.2.0" +"@webassemblyjs/ieee754@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" + integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== + dependencies: + "@xtuc/ieee754" "^1.2.0" + "@webassemblyjs/leb128@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.11.tgz#d7267a1ee9c4594fd3f7e37298818ec65687db63" @@ -1843,11 +2952,23 @@ dependencies: "@xtuc/long" "4.2.1" +"@webassemblyjs/leb128@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" + integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== + dependencies: + "@xtuc/long" "4.2.2" + "@webassemblyjs/utf8@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.11.tgz#06d7218ea9fdc94a6793aa92208160db3d26ee82" integrity sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA== +"@webassemblyjs/utf8@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" + integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== + "@webassemblyjs/wasm-edit@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz#8c74ca474d4f951d01dbae9bd70814ee22a82005" @@ -1862,6 +2983,20 @@ "@webassemblyjs/wasm-parser" "1.7.11" "@webassemblyjs/wast-printer" "1.7.11" +"@webassemblyjs/wasm-edit@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" + integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/helper-wasm-section" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-opt" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + "@webassemblyjs/wast-printer" "1.9.0" + "@webassemblyjs/wasm-gen@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz#9bbba942f22375686a6fb759afcd7ac9c45da1a8" @@ -1873,6 +3008,17 @@ "@webassemblyjs/leb128" "1.7.11" "@webassemblyjs/utf8" "1.7.11" +"@webassemblyjs/wasm-gen@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" + integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + "@webassemblyjs/wasm-opt@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz#b331e8e7cef8f8e2f007d42c3a36a0580a7d6ca7" @@ -1883,6 +3029,16 @@ "@webassemblyjs/wasm-gen" "1.7.11" "@webassemblyjs/wasm-parser" "1.7.11" +"@webassemblyjs/wasm-opt@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" + integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-buffer" "1.9.0" + "@webassemblyjs/wasm-gen" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + "@webassemblyjs/wasm-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz#6e3d20fa6a3519f6b084ef9391ad58211efb0a1a" @@ -1895,6 +3051,18 @@ "@webassemblyjs/leb128" "1.7.11" "@webassemblyjs/utf8" "1.7.11" +"@webassemblyjs/wasm-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" + integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-wasm-bytecode" "1.9.0" + "@webassemblyjs/ieee754" "1.9.0" + "@webassemblyjs/leb128" "1.9.0" + "@webassemblyjs/utf8" "1.9.0" + "@webassemblyjs/wast-parser@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz#25bd117562ca8c002720ff8116ef9072d9ca869c" @@ -1907,6 +3075,18 @@ "@webassemblyjs/helper-fsm" "1.7.11" "@xtuc/long" "4.2.1" +"@webassemblyjs/wast-parser@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" + integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/floating-point-hex-parser" "1.9.0" + "@webassemblyjs/helper-api-error" "1.9.0" + "@webassemblyjs/helper-code-frame" "1.9.0" + "@webassemblyjs/helper-fsm" "1.9.0" + "@xtuc/long" "4.2.2" + "@webassemblyjs/wast-printer@1.7.11": version "1.7.11" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz#c4245b6de242cb50a2cc950174fdbf65c78d7813" @@ -1916,10 +3096,19 @@ "@webassemblyjs/wast-parser" "1.7.11" "@xtuc/long" "4.2.1" +"@webassemblyjs/wast-printer@1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" + integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/wast-parser" "1.9.0" + "@xtuc/long" "4.2.2" + "@xstate/fsm@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@xstate/fsm/-/fsm-1.4.0.tgz#6fd082336fde4d026e9e448576189ee5265fa51a" - integrity sha512-uTHDeu2xI5E1IFwf37JFQM31RrH7mY7877RqPBS4ZqSNUwoLDuct8AhBWaXGnVizBAYyimVwgCyGa9z/NiRhXA== + version "1.5.1" + resolved "https://registry.yarnpkg.com/@xstate/fsm/-/fsm-1.5.1.tgz#b1ebedc77b11e4956fda0a6429cef986cd17979e" + integrity sha512-t8blLI0e90jCE71yUQHLH5uEljD1v0aC8PKkHUtNWEnXt81EOj7xBjnlwmaHn/8cmE2aSygiBElUpkRZUV9hXA== "@xtuc/ieee754@^1.2.0": version "1.2.0" @@ -1931,15 +3120,20 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== + JSV@^4.0.x: version "4.0.2" resolved "https://registry.yarnpkg.com/JSV/-/JSV-4.0.2.tgz#d077f6825571f82132f9dffaed587b4029feff57" integrity sha1-0Hf2glVx+CEy+d/67Vh7QCn+/1c= abab@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" - integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== + version "2.0.5" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== abbrev@1: version "1.1.1" @@ -1969,30 +3163,40 @@ acorn-globals@^4.3.0: acorn "^6.0.1" acorn-walk "^6.0.1" -acorn-jsx@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" - integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== +acorn-jsx@^5.1.0, acorn-jsx@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== acorn-walk@^6.0.1: version "6.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== +acorn-walk@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + acorn@^5.0.0, acorn@^5.6.2: version "5.7.4" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== -acorn@^6.0.1, acorn@^6.0.2, acorn@^6.0.7: - version "6.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" - integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== +acorn@^6.0.1, acorn@^6.0.2, acorn@^6.4.1: + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.1.0: - version "7.3.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" - integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== +acorn@^7.1.0, acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +address@1.1.2, address@^1.0.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" + integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== after@0.8.2: version "0.8.2" @@ -2000,27 +3204,50 @@ after@0.8.2: integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= aggregate-error@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" - integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" indent-string "^4.0.0" +airbnb-js-shims@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz#db481102d682b98ed1daa4c5baa697a05ce5c040" + integrity sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ== + dependencies: + array-includes "^3.0.3" + array.prototype.flat "^1.2.1" + array.prototype.flatmap "^1.2.1" + es5-shim "^4.5.13" + es6-shim "^0.35.5" + function.prototype.name "^1.1.0" + globalthis "^1.0.0" + object.entries "^1.1.0" + object.fromentries "^2.0.0 || ^1.0.0" + object.getownpropertydescriptors "^2.0.3" + object.values "^1.1.0" + promise.allsettled "^1.0.0" + promise.prototype.finally "^3.1.0" + string.prototype.matchall "^4.0.0 || ^3.0.1" + string.prototype.padend "^3.0.0" + string.prototype.padstart "^3.0.0" + symbol.prototype.description "^1.0.0" + ajv-errors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.1.tgz#b83ca89c5d42d69031f424cad49aada0236c6957" - integrity sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA== +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.5.5, ajv@^6.9.1: - version "6.12.3" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706" - integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA== +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" @@ -2047,6 +3274,25 @@ amdefine@>=0.0.4: resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= +anchor-markdown-header@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/anchor-markdown-header/-/anchor-markdown-header-0.5.7.tgz#045063d76e6a1f9cd327a57a0126aa0fdec371a7" + integrity sha1-BFBj125qH5zTJ6V6ASaqD97Dcac= + dependencies: + emoji-regex "~6.1.0" + +ansi-align@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" + integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + dependencies: + string-width "^3.0.0" + +ansi-colors@^3.0.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== + ansi-colors@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" @@ -2064,7 +3310,7 @@ ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: dependencies: type-fest "^0.11.0" -ansi-html@^0.0.7: +ansi-html@0.0.7, ansi-html@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= @@ -2102,11 +3348,10 @@ ansi-styles@^3.0.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: - "@types/color-name" "^1.1.1" color-convert "^2.0.1" ansi-styles@~1.0.0: @@ -2114,7 +3359,7 @@ ansi-styles@~1.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" integrity sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg= -ansi-to-html@^0.6.6: +ansi-to-html@^0.6.11, ansi-to-html@^0.6.6: version "0.6.14" resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.14.tgz#65fe6d08bba5dd9db33f44a20aec331e0010dad8" integrity sha512-7ZslfB1+EnFSDO5Ju+ue5Y6It19DRnZXWv8jrGHgIlPna5Mh4jz7BV5jCbQneXNFurQcKoolaaAjHtgSBfOIuA== @@ -2126,6 +3371,11 @@ ansicolors@~0.2.1: resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.2.1.tgz#be089599097b74a5c9c4a84a0cdbcdb62bd87aef" integrity sha1-vgiVmQl7dKXJxKhKDNvNtivYeu8= +any-promise@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -2134,7 +3384,7 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@~3.1.1: +anymatch@^3.0.3, anymatch@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== @@ -2149,12 +3399,10 @@ aot-test-generators@^0.1.0: dependencies: jsesc "^2.5.0" -append-transform@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-1.0.0.tgz#046a52ae582a228bd72f58acfbe2967c678759ab" - integrity sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw== - dependencies: - default-require-extensions "^2.0.0" +app-root-dir@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/app-root-dir/-/app-root-dir-1.0.2.tgz#38187ec2dea7577fff033ffcb12172692ff6e118" + integrity sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg= aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" @@ -2169,7 +3417,7 @@ are-we-there-yet@~1.1.2: delegates "^1.0.0" readable-stream "^2.0.6" -argparse@^1.0.7: +argparse@^1.0.7, argparse@~1.0.2: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== @@ -2201,16 +3449,20 @@ array-filter@^1.0.0: resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-1.0.0.tgz#baf79e62e6ef4c2a4c0b831232daffec251f9d83" integrity sha1-uveeYubvTCpMC4MSMtr/7CUfnYM= -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= +array-includes@^3.0.3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz#cdd67e6852bdf9c1215460786732255ed2459348" + integrity sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0" + is-string "^1.0.5" + array-range@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/array-range/-/array-range-1.0.1.tgz#f56e46591843611c6a56f77ef02eda7c50089bfc" @@ -2228,29 +3480,79 @@ array-to-sentence@^1.1.0: resolved "https://registry.yarnpkg.com/array-to-sentence/-/array-to-sentence-1.1.0.tgz#c804956dafa53232495b205a9452753a258d39fc" integrity sha1-yASVba+lMjJJWyBalFJ1OiWNOfw= +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + dependencies: + array-uniq "^1.0.1" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.flat@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz#0de82b426b0318dbfdb940089e38b043d37f6c7b" + integrity sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + +array.prototype.flatmap@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.3.tgz#1c13f84a178566042dd63de4414440db9222e443" + integrity sha512-OOEk+lkePcg+ODXIpvuU9PAryCikCJyo7GlDG1upleEpQRx6mzL9puEBkozQ5iAx20KV0l3DbyQwqciJtqe5Pg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + function-bind "^1.1.1" + +array.prototype.map@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array.prototype.map/-/array.prototype.map-1.0.2.tgz#9a4159f416458a23e9483078de1106b2ef68f8ec" + integrity sha512-Az3OYxgsa1g7xDYp86l0nnN4bcmuEITGe1rbdEBVkrqkzMgDcbdQ2R7r41pNzti+4NMces3H8gMmuioZUilLgw== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.4" + arraybuffer.slice@~0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog== -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + +asn1.js@^5.2.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" + integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== dependencies: bn.js "^4.0.0" inherits "^2.0.1" minimalistic-assert "^1.0.0" + safer-buffer "^2.1.0" + +asn1@0.1.11: + version "0.1.11" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.1.11.tgz#559be18376d08a4ec4dbe80877d27818639b2df7" + integrity sha1-VZvhg3bQik7E2+gId9J4GGObLfc= asn1@~0.2.3: version "0.2.4" @@ -2269,6 +3571,11 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= +assert-plus@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.1.5.tgz#ee74009413002d84cec7219c6ac811812e723160" + integrity sha1-7nQAlBMALYTOxyGcasgRgS5yMWA= + assert@^1.1.1: version "1.5.0" resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" @@ -2328,11 +3635,6 @@ async-each@^1.0.1: resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== -async-foreach@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= - async-limiter@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" @@ -2346,6 +3648,11 @@ async-promise-queue@^1.0.3, async-promise-queue@^1.0.5: async "^2.4.1" debug "^2.6.8" +async@0.9.x, async@~0.9.0: + version "0.9.2" + resolved "https://registry.yarnpkg.com/async/-/async-0.9.2.tgz#aea74d5e61c1f899613bf64bda66d4c78f2fd17d" + integrity sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0= + async@^2.4.1, async@^2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" @@ -2385,6 +3692,19 @@ autoprefixer@^7.0.0: postcss "^6.0.17" postcss-value-parser "^3.2.3" +autoprefixer@^9.7.2: + version "9.8.6" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.6.tgz#3b73594ca1bf9266320c5acf1588d74dea74210f" + integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== + dependencies: + browserslist "^4.12.0" + caniuse-lite "^1.0.30001109" + colorette "^1.2.1" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.32" + postcss-value-parser "^4.1.0" + available-typed-arrays@^1.0.0, available-typed-arrays@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz#6b098ca9d8039079ee3f77f7b783c4480ba513f5" @@ -2392,17 +3712,22 @@ available-typed-arrays@^1.0.0, available-typed-arrays@^1.0.2: dependencies: array-filter "^1.0.0" +aws-sign2@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.5.0.tgz#c57103f7a17fc037f02d7c2e64b602ea223f7d63" + integrity sha1-xXED96F/wDfwLXwuZLYC6iI/fWM= + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.8.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" - integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== + version "1.10.1" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.1.tgz#e1e82e4f3e999e2cfd61b161280d16a111f86428" + integrity sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA== -babel-code-frame@^6.26.0: +babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= @@ -2491,6 +3816,11 @@ babel-helper-define-map@^6.24.1: babel-types "^6.26.0" lodash "^4.17.4" +babel-helper-evaluate-path@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz#a62fa9c4e64ff7ea5cea9353174ef023a900a67c" + integrity sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA== + babel-helper-explode-assignable-expression@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" @@ -2500,6 +3830,11 @@ babel-helper-explode-assignable-expression@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" +babel-helper-flip-expressions@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz#3696736a128ac18bc25254b5f40a22ceb3c1d3fd" + integrity sha1-NpZzahKKwYvCUlS19AoizrPB0/0= + babel-helper-function-name@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" @@ -2527,6 +3862,21 @@ babel-helper-hoist-variables@^6.24.1: babel-runtime "^6.22.0" babel-types "^6.24.1" +babel-helper-is-nodes-equiv@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz#34e9b300b1479ddd98ec77ea0bbe9342dfe39684" + integrity sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ= + +babel-helper-is-void-0@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz#7d9c01b4561e7b95dbda0f6eee48f5b60e67313e" + integrity sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4= + +babel-helper-mark-eval-scopes@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz#d244a3bef9844872603ffb46e22ce8acdf551562" + integrity sha1-0kSjvvmESHJgP/tG4izorN9VFWI= + babel-helper-optimise-call-expression@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" @@ -2555,6 +3905,11 @@ babel-helper-remap-async-to-generator@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" +babel-helper-remove-or-void@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz#a4f03b40077a0ffe88e45d07010dee241ff5ae60" + integrity sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA= + babel-helper-replace-supers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" @@ -2567,6 +3922,11 @@ babel-helper-replace-supers@^6.24.1: babel-traverse "^6.24.1" babel-types "^6.24.1" +babel-helper-to-multiple-sequence-expressions@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz#a3f924e3561882d42fcf48907aa98f7979a4588d" + integrity sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA== + babel-helpers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" @@ -2575,7 +3935,7 @@ babel-helpers@^6.24.1: babel-runtime "^6.22.0" babel-template "^6.24.1" -babel-loader@^8.0.6: +babel-loader@^8.0.6, babel-loader@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.1.0.tgz#c611d5112bd5209abe8b9fa84c3e4da25275f1c3" integrity sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw== @@ -2593,6 +3953,14 @@ babel-messages@^6.23.0: dependencies: babel-runtime "^6.22.0" +babel-plugin-apply-mdx-type-prop@1.6.19: + version "1.6.19" + resolved "https://registry.yarnpkg.com/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.19.tgz#423792e9f7cd06e5b270e66c661ac9e454cdb4fe" + integrity sha512-zAuL11EaBbeNpfTqsa9xP7mkvX3V4LaEV6M9UUaI4zQtTqN5JwvDyhNsALQs5Ud7WFQSXtoqU74saTgE+rgZOw== + dependencies: + "@babel/helper-plugin-utils" "7.10.4" + "@mdx-js/util" "1.6.19" + babel-plugin-check-es2015-constants@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" @@ -2628,19 +3996,42 @@ babel-plugin-ember-data-packages-polyfill@^0.1.2: dependencies: "@ember-data/rfc395-data" "^0.0.4" -babel-plugin-ember-modules-api-polyfill@^2.13.4, babel-plugin-ember-modules-api-polyfill@^2.6.0: +babel-plugin-ember-modules-api-polyfill@^2.6.0: version "2.13.4" resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-2.13.4.tgz#cf62bc9bfd808c48d810d5194f4329e9453bd603" integrity sha512-uxQPkEQAzCYdwhZk16O9m1R4xtCRNy4oEUTBrccOPfzlIahRZJic/JeP/ZEL0BC6Mfq6r55eOg6gMF/zdFoCvA== dependencies: ember-rfc176-data "^0.3.13" -babel-plugin-ember-modules-api-polyfill@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-3.1.1.tgz#c6e9ede43b64c4e36512f260e42e829b071d9b4f" - integrity sha512-hRTnr59fJ6cIiSiSgQLM9QRiVv/RrBAYRYggCPQDj4dvYhOWZeoX6e+1jFY1qC3tJnSDuMWu3OrDciSIi1MJ0A== +babel-plugin-ember-modules-api-polyfill@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-3.2.0.tgz#302cb58a3c0fa33d93ab5115f1e91d76c6ec766b" + integrity sha512-k5gyC1kUDyZDcdD8LMGTI7KA+cHdKainuWpmc7d5yv42WgZFO75njPi3hZchEGsFFXtSqm9jiahgvLBUV8E8mA== dependencies: - ember-rfc176-data "^0.3.15" + ember-rfc176-data "^0.3.16" + +babel-plugin-emotion@^10.0.20, babel-plugin-emotion@^10.0.27: + version "10.0.33" + resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.0.33.tgz#ce1155dcd1783bbb9286051efee53f4e2be63e03" + integrity sha512-bxZbTTGz0AJQDHm8k6Rf3RQJ8tX2scsfsRyKVgAbiUPUNIRtlK+7JxP+TAd1kRLABFxe0CFm2VdK4ePkoA9FxQ== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@emotion/hash" "0.8.0" + "@emotion/memoize" "0.7.4" + "@emotion/serialize" "^0.11.16" + babel-plugin-macros "^2.0.0" + babel-plugin-syntax-jsx "^6.18.0" + convert-source-map "^1.5.0" + escape-string-regexp "^1.0.5" + find-root "^1.1.0" + source-map "^0.5.7" + +babel-plugin-extract-import-names@1.6.19: + version "1.6.19" + resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.19.tgz#637fad6c47e6dc69e08716cc90e3a87a2fba8c9c" + integrity sha512-5kbSEhQdg1ybR9OnxybbyR1PXw51z6T6ZCtX3vYSU6t1pC/+eBlSzWXyU2guStbwQgJyxS+mHWSNnL7PUdzAlw== + dependencies: + "@babel/helper-plugin-utils" "7.10.4" babel-plugin-filter-imports@^4.0.0: version "4.0.0" @@ -2655,30 +4046,111 @@ babel-plugin-htmlbars-inline-precompile@^1.0.0: resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-1.0.0.tgz#a9d2f6eaad8a3f3d361602de593a8cbef8179c22" integrity sha512-4jvKEHR1bAX03hBDZ94IXsYCj3bwk9vYsn6ux6JZNL2U5pvzCWjqyrGahfsGNrhERyxw8IqcirOi9Q6WCo3dkQ== -babel-plugin-htmlbars-inline-precompile@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-3.1.0.tgz#85085b50385277f2b331ebd54e22fa91aadc24e8" - integrity sha512-ar6c4YVX6OV7Dzpq7xRyllQrHwVEzJf41qysYULnD6tu6TS+y1FxT2VcEvMC6b9Rq9xoHMzvB79HO3av89JCGg== - babel-plugin-htmlbars-inline-precompile@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-3.2.0.tgz#c4882ea875d0f5683f0d91c1f72e29a4f14b5606" integrity sha512-IUeZmgs9tMUGXYu1vfke5I18yYJFldFGdNFQOWslXTnDWXzpwPih7QFduUqvT+awDpDuNtXpdt5JAf43Q1Hhzg== -babel-plugin-htmlbars-inline-precompile@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-4.1.0.tgz#11796422e65d900a968481fa3fb37e0425c928dd" - integrity sha512-gM+UP6HO5RlGiOQzJVGRUHgAsefJeOdh5Pn+rZRS6Tr1MnEqVgTJ2G2ywnl+G+Zcuec18fz7XA+O2tHhsmct6w== +babel-plugin-htmlbars-inline-precompile@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-4.2.0.tgz#73e7a199c14db139b9c9aea240e03b7112784c81" + integrity sha512-n2jMGcFKvubnYi8Ink7zJnC+aQor97v5FJKYUOUKijj5gIDy/sOIAZ7BxDWb0co1VzZokdN7tvtLnQtiWfD1Gw== -babel-plugin-istanbul@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854" - integrity sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw== +babel-plugin-istanbul@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" + integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - find-up "^3.0.0" - istanbul-lib-instrument "^3.3.0" - test-exclude "^5.2.3" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^4.0.0" + test-exclude "^6.0.0" + +babel-plugin-macros@^2.0.0, babel-plugin-macros@^2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" + integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== + dependencies: + "@babel/runtime" "^7.7.2" + cosmiconfig "^6.0.0" + resolve "^1.12.0" + +babel-plugin-minify-builtins@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz#31eb82ed1a0d0efdc31312f93b6e4741ce82c36b" + integrity sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag== + +babel-plugin-minify-constant-folding@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz#f84bc8dbf6a561e5e350ff95ae216b0ad5515b6e" + integrity sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ== + dependencies: + babel-helper-evaluate-path "^0.5.0" + +babel-plugin-minify-dead-code-elimination@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz#1a0c68e44be30de4976ca69ffc535e08be13683f" + integrity sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-mark-eval-scopes "^0.4.3" + babel-helper-remove-or-void "^0.4.3" + lodash "^4.17.11" + +babel-plugin-minify-flip-comparisons@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz#00ca870cb8f13b45c038b3c1ebc0f227293c965a" + integrity sha1-AMqHDLjxO0XAOLPB68DyJyk8llo= + dependencies: + babel-helper-is-void-0 "^0.4.3" + +babel-plugin-minify-guarded-expressions@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz#818960f64cc08aee9d6c75bec6da974c4d621135" + integrity sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-flip-expressions "^0.4.3" + +babel-plugin-minify-infinity@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz#dfb876a1b08a06576384ef3f92e653ba607b39ca" + integrity sha1-37h2obCKBldjhO8/kuZTumB7Oco= + +babel-plugin-minify-mangle-names@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz#bcddb507c91d2c99e138bd6b17a19c3c271e3fd3" + integrity sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw== + dependencies: + babel-helper-mark-eval-scopes "^0.4.3" + +babel-plugin-minify-numeric-literals@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz#8e4fd561c79f7801286ff60e8c5fd9deee93c0bc" + integrity sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw= + +babel-plugin-minify-replace@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz#d3e2c9946c9096c070efc96761ce288ec5c3f71c" + integrity sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q== + +babel-plugin-minify-simplify@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz#f21613c8b95af3450a2ca71502fdbd91793c8d6a" + integrity sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-flip-expressions "^0.4.3" + babel-helper-is-nodes-equiv "^0.0.1" + babel-helper-to-multiple-sequence-expressions "^0.5.0" + +babel-plugin-minify-type-constructors@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz#1bc6f15b87f7ab1085d42b330b717657a2156500" + integrity sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA= + dependencies: + babel-helper-is-void-0 "^0.4.3" babel-plugin-module-resolver@^3.1.1: version "3.2.0" @@ -2717,12 +4189,17 @@ babel-plugin-syntax-exponentiation-operator@^6.8.0: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= +babel-plugin-syntax-jsx@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= + babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" integrity sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= -babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1: +babel-plugin-transform-async-to-generator@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= @@ -2930,6 +4407,33 @@ babel-plugin-transform-exponentiation-operator@^6.22.0: babel-plugin-syntax-exponentiation-operator "^6.8.0" babel-runtime "^6.22.0" +babel-plugin-transform-inline-consecutive-adds@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz#323d47a3ea63a83a7ac3c811ae8e6941faf2b0d1" + integrity sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE= + +babel-plugin-transform-member-expression-literals@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz#37039c9a0c3313a39495faac2ff3a6b5b9d038bf" + integrity sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8= + +babel-plugin-transform-merge-sibling-variables@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz#85b422fc3377b449c9d1cde44087203532401dae" + integrity sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4= + +babel-plugin-transform-minify-booleans@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz#acbb3e56a3555dd23928e4b582d285162dd2b198" + integrity sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg= + +babel-plugin-transform-property-literals@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz#98c1d21e255736573f93ece54459f6ce24985d39" + integrity sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk= + dependencies: + esutils "^2.0.2" + babel-plugin-transform-regenerator@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" @@ -2937,6 +4441,33 @@ babel-plugin-transform-regenerator@^6.22.0: dependencies: regenerator-transform "^0.10.0" +babel-plugin-transform-regexp-constructors@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz#58b7775b63afcf33328fae9a5f88fbd4fb0b4965" + integrity sha1-WLd3W2OvzzMyj66aX4j71PsLSWU= + +babel-plugin-transform-remove-console@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz#b980360c067384e24b357a588d807d3c83527780" + integrity sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A= + +babel-plugin-transform-remove-debugger@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz#42b727631c97978e1eb2d199a7aec84a18339ef2" + integrity sha1-QrcnYxyXl44estGZp67IShgznvI= + +babel-plugin-transform-remove-undefined@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz#80208b31225766c630c97fa2d288952056ea22dd" + integrity sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ== + dependencies: + babel-helper-evaluate-path "^0.5.0" + +babel-plugin-transform-simplify-comparison-operators@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz#f62afe096cab0e1f68a2d753fdf283888471ceb9" + integrity sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk= + babel-plugin-transform-strict-mode@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" @@ -2945,6 +4476,11 @@ babel-plugin-transform-strict-mode@^6.24.1: babel-runtime "^6.22.0" babel-types "^6.24.1" +babel-plugin-transform-undefined-to-void@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz#be241ca81404030678b748717322b89d0c8fe280" + integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA= + babel-polyfill@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153" @@ -2990,6 +4526,35 @@ babel-preset-env@^1.7.0: invariant "^2.2.2" semver "^5.3.0" +"babel-preset-minify@^0.5.0 || 0.6.0-alpha.5": + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz#25f5d0bce36ec818be80338d0e594106e21eaa9f" + integrity sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg== + dependencies: + babel-plugin-minify-builtins "^0.5.0" + babel-plugin-minify-constant-folding "^0.5.0" + babel-plugin-minify-dead-code-elimination "^0.5.1" + babel-plugin-minify-flip-comparisons "^0.4.3" + babel-plugin-minify-guarded-expressions "^0.4.4" + babel-plugin-minify-infinity "^0.4.3" + babel-plugin-minify-mangle-names "^0.5.0" + babel-plugin-minify-numeric-literals "^0.4.3" + babel-plugin-minify-replace "^0.5.0" + babel-plugin-minify-simplify "^0.5.1" + babel-plugin-minify-type-constructors "^0.4.3" + babel-plugin-transform-inline-consecutive-adds "^0.4.3" + babel-plugin-transform-member-expression-literals "^6.9.4" + babel-plugin-transform-merge-sibling-variables "^6.9.4" + babel-plugin-transform-minify-booleans "^6.9.4" + babel-plugin-transform-property-literals "^6.9.4" + babel-plugin-transform-regexp-constructors "^0.4.3" + babel-plugin-transform-remove-console "^6.9.4" + babel-plugin-transform-remove-debugger "^6.9.4" + babel-plugin-transform-remove-undefined "^0.5.0" + babel-plugin-transform-simplify-comparison-operators "^6.9.4" + babel-plugin-transform-undefined-to-void "^6.9.4" + lodash "^4.17.11" + babel-register@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" @@ -3074,11 +4639,21 @@ backtick-template@^0.2.0: resolved "https://registry.yarnpkg.com/backtick-template/-/backtick-template-0.2.0.tgz#de33168260e70eff6435f565ad7aa8699d0b7fe9" integrity sha512-F5h0OHBy6gHJDA952velLcEuKQ+GTZHPsJEKyA1s+7aRTZ0i3V+gdLOxYenDKE19t0FDbMEFR3+Yvr64jtjShA== +bail@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" + integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= +base64-arraybuffer@0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" + integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= + base64-arraybuffer@0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" @@ -3114,6 +4689,11 @@ basic-auth@~2.0.1: dependencies: safe-buffer "5.1.2" +batch-processor@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/batch-processor/-/batch-processor-1.0.0.tgz#75c95c32b748e0850d10c2b168f6bdbe9891ace8" + integrity sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg= + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -3128,6 +4708,13 @@ better-assert@~1.0.0: dependencies: callsite "1.0.0" +better-opn@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/better-opn/-/better-opn-2.1.1.tgz#94a55b4695dc79288f31d7d0e5f658320759f7c6" + integrity sha512-kIPXZS5qwyKiX/HcRvDYfmBQUa8XP17I0mYZZ0y4UhpYOSvtsLHDYqmomS+Mj20aDvD3knEiQ0ecQy2nhio3yA== + dependencies: + open "^7.0.3" + big.js@^5.2.2: version "5.2.2" resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" @@ -3165,22 +4752,15 @@ blob@0.0.5: resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= - dependencies: - inherits "~2.0.0" - -bluebird@^3.1.1, bluebird@^3.4.6, bluebird@^3.5.5: +bluebird@^3.1.1, bluebird@^3.3.5, bluebird@^3.4.6, bluebird@^3.5.5: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== blueimp-md5@^2.10.0: - version "2.16.0" - resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.16.0.tgz#9018bb805e4ee05512e0e8cbdb9305eeecbdc87c" - integrity sha512-j4nzWIqEFpLSbdhUApHRGDwfXbV8ALhqOn+FY5L6XBdKPAXU9BpGgFSbDsgqogfqPPR9R2WooseWCsfhfEC6uQ== + version "2.18.0" + resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.18.0.tgz#1152be1335f0c6b3911ed9e36db54f3e6ac52935" + integrity sha512-vE52okJvzsVWhcgUHOv+69OG3Mdg151xyn41aVQN/5W5S+S43qZhxECtYLAEHMSFWX6Mv5IZrzj3T5+JqXfj5Q== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.4.0: version "4.11.9" @@ -3188,9 +4768,9 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.4.0: integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== bn.js@^5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0" - integrity sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA== + version "5.1.3" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.3.tgz#beca005408f642ebebea80b042b4d18d2ac0ee6b" + integrity sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ== body-parser@1.19.0, body-parser@^1.19.0: version "1.19.0" @@ -3218,6 +4798,23 @@ body@^5.1.0: raw-body "~1.1.0" safe-json-parse "~1.0.1" +boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + +boom@0.4.x: + version "0.4.2" + resolved "https://registry.yarnpkg.com/boom/-/boom-0.4.2.tgz#7a636e9ded4efcefb19cef4947a3c67dfaee911b" + integrity sha1-emNune1O/O+xnO9JR6PGffrukRs= + dependencies: + hoek "0.9.x" + +boundary@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/boundary/-/boundary-1.0.1.tgz#4d67dc2602c0cc16dd9bce7ebf87e948290f5812" + integrity sha1-TWfcJgLAzBbdm85+v4fpSCkPWBI= + bower-config@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/bower-config/-/bower-config-1.4.3.tgz#3454fecdc5f08e7aa9cc6d556e492be0669689ae" @@ -3235,6 +4832,20 @@ bower-endpoint-parser@0.2.2: resolved "https://registry.yarnpkg.com/bower-endpoint-parser/-/bower-endpoint-parser-0.2.2.tgz#00b565adbfab6f2d35addde977e97962acbcb3f6" integrity sha1-ALVlrb+rby01rd3pd+l5Yqy8s/Y= +boxen@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" + integrity sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ== + dependencies: + ansi-align "^3.0.0" + camelcase "^5.3.1" + chalk "^3.0.0" + cli-boxes "^2.2.0" + string-width "^4.1.0" + term-size "^2.1.0" + type-fest "^0.8.1" + widest-line "^3.1.0" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -3318,31 +4929,13 @@ broccoli-babel-transpiler@^6.5.0: rsvp "^4.8.2" workerpool "^2.3.0" -broccoli-babel-transpiler@^7.5.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.6.0.tgz#819e6d228b8aa3b4f3b6dfc4b546c13dd304b462" - integrity sha512-VjqIl4qe3zEkGjsPA2jgw/jakjfLjw2IpQ62d4f1kArZyMW/cQ6o54VD0Cd6cai4J08nb4WPLu4cr4Z62vr5uw== +broccoli-babel-transpiler@^7.6.0, broccoli-babel-transpiler@^7.8.0: + version "7.8.0" + resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.8.0.tgz#7e0f01fce5739f49bbadeee7f1e625ca51cad66e" + integrity sha512-dv30Td5uL7dO3NzQUqQKQs+Iq7JGKnCNtvc6GBO76uVPqGnRlsQZcYqdBVr33JrctR+ZrpTUf7TjsFKeDRFA8Q== dependencies: - "@babel/core" "^7.10.2" - "@babel/polyfill" "^7.10.1" - broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.2" - broccoli-persistent-filter "^2.2.1" - clone "^2.1.2" - hash-for-dep "^1.4.7" - heimdalljs "^0.2.1" - heimdalljs-logger "^0.1.9" - json-stable-stringify "^1.0.1" - rsvp "^4.8.4" - workerpool "^3.1.1" - -broccoli-babel-transpiler@^7.6.0, broccoli-babel-transpiler@^7.7.0: - version "7.7.0" - resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.7.0.tgz#271d401e713bfd338d5ef0435d3c4c68f6eddd2a" - integrity sha512-U8Cmnv0/AcQKehiIVi6UDzqq3jqhAEbY9CvOW5vdeNRmYhFpK6bXPmVczS/nUz5g4KsPc/FdnC3zbU6yVf4e7w== - dependencies: - "@babel/core" "^7.11.0" - "@babel/polyfill" "^7.10.4" + "@babel/core" "^7.12.0" + "@babel/polyfill" "^7.11.5" broccoli-funnel "^2.0.2" broccoli-merge-trees "^3.0.2" broccoli-persistent-filter "^2.2.1" @@ -3401,24 +4994,6 @@ broccoli-clean-css@^1.1.0: inline-source-map-comment "^1.0.5" json-stable-stringify "^1.0.0" -broccoli-concat@^3.2.2: - version "3.7.5" - resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-3.7.5.tgz#223beda8c1184252cf08ae020a3d45ffa6a48218" - integrity sha512-rDs1Mej3Ej0Cy5yIO9oIQq5+BCv0opAwS2NW7M0BeCsAMeFM42Z/zacDUC6jKc5OV5wiHvGTyCPLnZkMe0h6kQ== - dependencies: - broccoli-debug "^0.6.5" - broccoli-kitchen-sink-helpers "^0.3.1" - broccoli-plugin "^1.3.0" - ensure-posix-path "^1.0.2" - fast-sourcemap-concat "^1.4.0" - find-index "^1.1.0" - fs-extra "^4.0.3" - fs-tree-diff "^0.5.7" - lodash.merge "^4.6.2" - lodash.omit "^4.1.0" - lodash.uniq "^4.2.0" - walk-sync "^0.3.2" - broccoli-concat@^4.2.2, broccoli-concat@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-4.2.4.tgz#78e359ddc540b999d815355163bf3cfb6bd67322" @@ -3591,19 +5166,6 @@ broccoli-kitchen-sink-helpers@^0.3.1: glob "^5.0.10" mkdirp "^0.5.1" -broccoli-lint-eslint@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/broccoli-lint-eslint/-/broccoli-lint-eslint-5.0.0.tgz#05365879d597dd78496a1c718db0e5ea5d4a2bde" - integrity sha512-V7M6U4th21bf1X4u3KoZa0xkcPq9JCSyKxB/nCWCBFMI3rkrB8nlyDLd8DKIUTqL+ojlFOGV5lohPZwndw0sZw== - dependencies: - aot-test-generators "^0.1.0" - broccoli-concat "^3.2.2" - broccoli-persistent-filter "^2.1.0" - eslint "^5.6.0" - json-stable-stringify "^1.0.1" - lodash.defaultsdeep "^4.6.0" - md5-hex "^2.0.0" - broccoli-merge-trees@^1.0.0, broccoli-merge-trees@^1.1.1: version "1.2.4" resolved "https://registry.yarnpkg.com/broccoli-merge-trees/-/broccoli-merge-trees-1.2.4.tgz#a001519bb5067f06589d91afa2942445a2d0fdb5" @@ -3723,9 +5285,9 @@ broccoli-persistent-filter@^2.1.0, broccoli-persistent-filter@^2.2.1, broccoli-p walk-sync "^1.0.0" broccoli-persistent-filter@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.0.tgz#5812abbc000b2409ef40addeeed16a2a9482696e" - integrity sha512-yHHPv7M04qb9ajo3QkbGWetpshekVYG8sSjNdgAPQQ3spiRvS6RthYBddni5iw9b2DidSCpe/YPGRnp7LL4OIQ== + version "3.1.1" + resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.1.tgz#318c68a82d5759582bb60e7e2c0f3ca008176224" + integrity sha512-gP797MF87JjkcwhGBkE0fhF3aIbGnOF3K3A0iZpQSxtpmSNt+rbNzuqDOmgiKwWpx6v0+APkM5HUA0NiIZpgsQ== dependencies: async-disk-cache "^2.0.0" async-promise-queue "^1.0.3" @@ -3734,7 +5296,6 @@ broccoli-persistent-filter@^3.1.0: hash-for-dep "^1.5.0" heimdalljs "^0.2.1" heimdalljs-logger "^0.1.7" - mkdirp "^0.5.1" promise-map-series "^0.2.1" rimraf "^3.0.0" symlink-or-copy "^1.0.1" @@ -3982,15 +5543,15 @@ browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11" - integrity sha512-hEZC1KEeYuoHRqhGhTy6gWrpJA3ZDjFWv0DE61643ZnOXAKJb3u7yWcrU0mMc9SwAqK1n7myPGndkp0dFG7NFA== + version "4.2.1" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" + integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== dependencies: bn.js "^5.1.1" browserify-rsa "^4.0.1" create-hash "^1.2.0" create-hmac "^1.1.7" - elliptic "^6.5.2" + elliptic "^6.5.3" inherits "^2.0.4" parse-asn1 "^5.1.5" readable-stream "^3.6.0" @@ -4003,6 +5564,16 @@ browserify-zlib@^0.2.0: dependencies: pako "~1.0.5" +browserslist@4.10.0: + version "4.10.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.10.0.tgz#f179737913eaf0d2b98e4926ac1ca6a15cbcc6a9" + integrity sha512-TpfK0TDgv71dzuTsEAlQiHeWQ/tiPqgNZVdv046fvNtBZrjbv2O3TsWCDU0AWGJJKCF/KsjNdLzR9hXOsh/CfA== + dependencies: + caniuse-lite "^1.0.30001035" + electron-to-chromium "^1.3.378" + node-releases "^1.1.52" + pkg-up "^3.1.0" + browserslist@^2.11.3: version "2.11.3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2" @@ -4020,14 +5591,14 @@ browserslist@^3.2.6: electron-to-chromium "^1.3.47" browserslist@^4.12.0, browserslist@^4.8.5: - version "4.13.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.13.0.tgz#42556cba011e1b0a2775b611cba6a8eca18e940d" - integrity sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ== + version "4.14.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.14.5.tgz#1c751461a102ddc60e40993639b709be7f2c4015" + integrity sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA== dependencies: - caniuse-lite "^1.0.30001093" - electron-to-chromium "^1.3.488" - escalade "^3.0.1" - node-releases "^1.1.58" + caniuse-lite "^1.0.30001135" + electron-to-chromium "^1.3.571" + escalade "^3.1.0" + node-releases "^1.1.61" bser@2.1.1: version "2.1.1" @@ -4101,6 +5672,29 @@ cacache@^12.0.2: unique-filename "^1.1.1" y18n "^4.0.0" +cacache@^15.0.5: + version "15.0.5" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0" + integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A== + dependencies: + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.0" + tar "^6.0.2" + unique-filename "^1.1.1" + cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -4143,30 +5737,54 @@ calculate-cache-key-for-tree@^2.0.0: dependencies: json-stable-stringify "^1.0.1" +call-me-maybe@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" + integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + callsite@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA= +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= +camel-case@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" + integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" + pascal-case "^3.1.1" + tslib "^1.10.0" -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= +camelcase-css@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== -camelcase@^5.0.0: +camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== @@ -4178,15 +5796,15 @@ can-symlink@^1.0.0: dependencies: tmp "0.0.28" -caniuse-lite@^1.0.30000792, caniuse-lite@^1.0.30000805, caniuse-lite@^1.0.30001093: - version "1.0.30001096" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001096.tgz#5a4541af5317dc21f91f5b24d453030a35f919c0" - integrity sha512-PFTw9UyVfbkcMEFs82q8XVlRayj7HKvnhu5BLcmjGpv+SNyiWasCcWXPGJuO0rK0dhLRDJmtZcJ+LHUfypbw1w== +caniuse-lite@^1.0.30000792, caniuse-lite@^1.0.30000805, caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001135: + version "1.0.30001148" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001148.tgz#dc97c7ed918ab33bf8706ddd5e387287e015d637" + integrity sha512-E66qcd0KMKZHNJQt9hiLZGE3J4zuTqE1OnU53miEVtylFbwOEmeA5OsRu90noZful+XGSQOni1aT2tiqu/9yYw== -caniuse-lite@^1.0.30000844: - version "1.0.30001137" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001137.tgz#6f0127b1d3788742561a25af3607a17fc778b803" - integrity sha512-54xKQZTqZrKVHmVz0+UvdZR6kQc7pJDgfhsMYDG19ID1BWoNnDMFm5Q3uSBSU401pBvKYMsHAt9qhEDcxmk8aw== +caniuse-lite@^1.0.30001035, caniuse-lite@^1.0.30001109: + version "1.0.30001151" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001151.tgz#1ddfde5e6fff02aad7940b4edb7d3ac76b0cb00b" + integrity sha512-Zh3sHqskX6mHNrqUerh+fkf0N72cMxrmflzje/JyVImfpknscMnkeJrlFGJcqTmaa0iszdYptGpWMJCRQDkBVw== capture-exit@^2.0.0: version "2.0.0" @@ -4203,17 +5821,36 @@ cardinal@^1.0.0: ansicolors "~0.2.1" redeyed "~1.0.0" +case-sensitive-paths-webpack-plugin@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz#23ac613cc9a856e4f88ff8bb73bbb5e989825cf7" + integrity sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +ccount@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.5.tgz#ac82a944905a65ce204eb03023157edf29425c17" + integrity sha512-MOli1W+nfbPLlKEhInaxhRdp7KVLFxLN5ykwzHgLsLI3H3gs5jjFAK4Eoj3OzzcxCtumDaI8onoVDeQyWaNTkw== + ceibo@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ceibo/-/ceibo-2.0.0.tgz#9a61eb054a91c09934588d4e45d9dd2c3bf04eee" integrity sha1-mmHrBUqRwJk0WI1ORdndLDvwTu4= -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: +chalk@2.4.2, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^1.0.0, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= @@ -4224,15 +5861,6 @@ chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - chalk@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" @@ -4258,6 +5886,21 @@ chalk@~0.4.0: has-color "~0.1.0" strip-ansi "~0.1.0" +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-1.2.4.tgz#e12c3939b7eaf4e5b15e7ad4c5e28e1d48c5b16b" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -4270,10 +5913,22 @@ charm@^1.0.0: dependencies: inherits "^2.0.1" -"chokidar@>=2.0.0 <4.0.0", chokidar@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.0.tgz#b30611423ce376357c765b9b8f904b9fba3c0be8" - integrity sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ== +cheerio@^1.0.0-rc.2: + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.3.tgz#094636d425b2e9c0f4eb91a46c05630c9a1a8bf6" + integrity sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA== + dependencies: + css-select "~1.2.0" + dom-serializer "~0.1.1" + entities "~1.1.1" + htmlparser2 "^3.9.1" + lodash "^4.15.0" + parse5 "^3.0.1" + +"chokidar@>=2.0.0 <4.0.0", chokidar@^3.3.0, chokidar@^3.4.1: + version "3.4.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" + integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -4281,7 +5936,7 @@ charm@^1.0.0: is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.4.0" + readdirp "~3.5.0" optionalDependencies: fsevents "~2.1.2" @@ -4309,7 +5964,12 @@ chownr@^1.1.1: resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== -chrome-trace-event@^1.0.0: +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + +chrome-trace-event@^1.0.0, chrome-trace-event@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== @@ -4339,6 +5999,11 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" +classnames@^2.2.5: + version "2.2.6" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce" + integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q== + clean-base-url@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clean-base-url/-/clean-base-url-1.0.0.tgz#c901cf0a20b972435b0eccd52d056824a4351b7b" @@ -4361,6 +6026,13 @@ clean-css@^3.4.5: commander "2.8.x" source-map "0.4.x" +clean-css@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" + integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== + dependencies: + source-map "~0.6.0" + clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" @@ -4371,6 +6043,11 @@ clean-up-path@^1.0.0: resolved "https://registry.yarnpkg.com/clean-up-path/-/clean-up-path-1.0.0.tgz#de9e8196519912e749c9eaf67c13d64fac72a3e5" integrity sha512-PHGlEF0Z6976qQyN6gM7kKH6EH0RdfZcc8V+QhFe36eRxV0SMH5OUBZG7Bxa9YcreNzyNbK63cGiZxdSZgosRw== +cli-boxes@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -4385,10 +6062,20 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-spinners@^2.0.0, cli-spinners@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.3.0.tgz#0632239a4b5aa4c958610142c34bb7a651fc8df5" - integrity sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w== +cli-spinners@^2.0.0, cli-spinners@^2.4.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.5.0.tgz#12763e47251bf951cb75c201dfa58ff1bcb2d047" + integrity sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ== + +cli-table3@0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.0.tgz#b7b1bc65ca8e7b5cef9124e13dc2b21e2ce4faee" + integrity sha512-gnB85c3MGC7Nm9I/FkiasNBOKjOiO1RNuXXarQms37q4QMpWdlbBgD/VnOStA2faG1dpXMv31RFApjX1/QdgWQ== + dependencies: + object-assign "^4.1.0" + string-width "^4.2.0" + optionalDependencies: + colors "^1.1.2" cli-table3@^0.5.1: version "0.5.1" @@ -4407,7 +6094,7 @@ cli-table@^0.3.1: dependencies: colors "1.0.3" -cli-truncate@2.1.0, cli-truncate@^2.1.0: +cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== @@ -4425,7 +6112,7 @@ cli-width@^3.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== -clipboard@^2.0.4: +clipboard@^2.0.0, clipboard@^2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.6.tgz#52921296eec0fdf77ead1749421b21c968647376" integrity sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg== @@ -4434,23 +6121,14 @@ clipboard@^2.0.4: select "^1.1.2" tiny-emitter "^2.0.0" -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== - dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" - -cliui@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" - integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== +cliui@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.3.tgz#ef180f26c8d9bff3927ee52428bfec2090427981" + integrity sha512-Gj3QHTkVMPKqwP3f7B4KPkBZRMR9r4rfi5bXFpg1a+Svvj8l7q5CnkBkVQzfxT5DFSsGk2+PascOgL0JYkL2kw== dependencies: string-width "^4.2.0" strip-ansi "^6.0.0" - wrap-ansi "^6.2.0" + wrap-ansi "^7.0.0" clone-response@1.0.2: version "1.0.2" @@ -4469,11 +6147,6 @@ clone@^2.0.0, clone@^2.1.2: resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" @@ -4484,6 +6157,11 @@ codemirror@~5.15.0: resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.15.2.tgz#58b3dc732c6d10d7aae806f4c7cdd56a9b87fe8f" integrity sha1-WLPccyxtENeq6Ab0x83VapuH/o8= +collapse-white-space@^1.0.2: + version "1.0.6" + resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" + integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== + collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" @@ -4516,6 +6194,11 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +colorette@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" + integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== + colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" @@ -4526,17 +6209,24 @@ colors@^1.1.2, colors@^1.4.0: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" -commander@2.12.2: - version "2.12.2" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" - integrity sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA== +combined-stream@~0.0.4: + version "0.0.7" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-0.0.7.tgz#0137e657baa5a7541c57ac37ac5fc07d73b4dc1f" + integrity sha1-ATfmV7qlp1QcV6w3rF/AfXO03B8= + dependencies: + delayed-stream "0.0.5" + +comma-separated-tokens@^1.0.0: + version "1.0.8" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" + integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== commander@2.8.x: version "2.8.1" @@ -4545,6 +6235,11 @@ commander@2.8.x: dependencies: graceful-readlink ">= 1.0.0" +commander@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.0.0.tgz#2b270da94f8fb9014455312f829a1129dbf8887e" + integrity sha512-s7EA+hDtTYNhuXkTlhqew4txMZVdszBmKWSPEMxGr8ru8JXR7bLUFIAtPhcSuFdJQ0ILMxnJi8GkQL0yvDy/YA== + commander@^2.20.0, commander@^2.6.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -4555,11 +6250,16 @@ commander@^4.1.1: resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== -commander@^5.1.0: +commander@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== +commander@^6.0.0, commander@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.1.0.tgz#f8d722b78103141006b66f4c7ba1e97315ba75bc" + integrity sha512-wl7PNrYWd2y5mp1OK/LhTlv8Ff4kQJQRXXAvF+uU/TPNiVJUxZLRYGj/B0y/lPGAVcSbJqH2Za/cvHmrPMC8mA== + common-tags@^1.4.0, common-tags@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" @@ -4570,7 +6270,7 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= -compare-versions@^3.4.0, compare-versions@^3.6.0: +compare-versions@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz#1a5689913685e5a87637b8d3ffca75514ec41d62" integrity sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA== @@ -4702,7 +6402,7 @@ continuable-cache@^0.3.1: resolved "https://registry.yarnpkg.com/continuable-cache/-/continuable-cache-0.3.1.tgz#bd727a7faed77e71ff3985ac93351a912733ad0f" integrity sha1-vXJ6f67XfnH/OYWskzUakSczrQ8= -convert-source-map@^1.5.1, convert-source-map@^1.7.0: +convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== @@ -4754,6 +6454,13 @@ copy-descriptor@^0.1.0: resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= +copy-to-clipboard@^3.0.8: + version "3.3.1" + resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz#115aa1a9998ffab6196f93076ad6da3b913662ae" + integrity sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw== + dependencies: + toggle-selection "^1.0.6" + core-js-compat@^3.6.2: version "3.6.5" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.5.tgz#2a51d9a4e25dfd6e690251aa81f99e3c05481f1c" @@ -4762,7 +6469,7 @@ core-js-compat@^3.6.2: browserslist "^4.8.5" semver "7.0.0" -core-js-pure@^3.0.0: +core-js-pure@^3.0.1: version "3.6.5" resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.5.tgz#c79e75f5e38dbc85a662d91eea52b8256d53b813" integrity sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA== @@ -4777,6 +6484,11 @@ core-js@^2.4.0, core-js@^2.5.0, core-js@^2.6.5: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== +core-js@^3.0.1, core-js@^3.0.4, core-js@^3.6.5: + version "3.6.5" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.6.5.tgz#7395dc273af37fb2e50e9bd3d9fe841285231d1a" + integrity sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA== + core-object@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/core-object/-/core-object-3.1.5.tgz#fa627b87502adc98045e44678e9a8ec3b9c0d2a9" @@ -4789,6 +6501,16 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +cosmiconfig@^5.0.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.1" + parse-json "^4.0.0" + cosmiconfig@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" @@ -4800,13 +6522,24 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" +cosmiconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== + version "4.0.4" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" + integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== dependencies: bn.js "^4.1.0" - elliptic "^6.0.0" + elliptic "^6.5.3" create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: version "1.2.0" @@ -4831,15 +6564,24 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" -cross-spawn@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= +create-react-context@0.3.0, create-react-context@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.3.0.tgz#546dede9dc422def0d3fc2fe03afe0bc0f4f7d8c" + integrity sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw== dependencies: - lru-cache "^4.0.1" - which "^1.2.9" + gud "^1.0.0" + warning "^4.0.3" -cross-spawn@^6.0.0, cross-spawn@^6.0.5: +cross-spawn@7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14" + integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cross-spawn@^6.0.0: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== @@ -4850,7 +6592,7 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0: +cross-spawn@^7.0.0, cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -4859,6 +6601,13 @@ cross-spawn@^7.0.0: shebang-command "^2.0.0" which "^2.0.1" +cryptiles@0.2.x: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-0.2.2.tgz#ed91ff1f17ad13d3748288594f8a48a0d26f325c" + integrity sha1-7ZH/HxetE9N0gohZT4pIoNJvMlw= + dependencies: + boom "0.4.x" + crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -4881,11 +6630,50 @@ crypto-random-string@^2.0.0: resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== +css-loader@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" + integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== + dependencies: + camelcase "^5.3.1" + cssesc "^3.0.0" + icss-utils "^4.1.1" + loader-utils "^1.2.3" + normalize-path "^3.0.0" + postcss "^7.0.32" + postcss-modules-extract-imports "^2.0.0" + postcss-modules-local-by-default "^3.0.2" + postcss-modules-scope "^2.2.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^2.7.0" + semver "^6.3.0" + +css-select@^1.1.0, css-select@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + +css-what@2.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" + integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== + css.escape@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" integrity sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s= +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + cssom@0.3.x, cssom@^0.3.4: version "0.3.8" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" @@ -4898,12 +6686,20 @@ cssstyle@^1.1.1: dependencies: cssom "0.3.x" -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= - dependencies: - array-find-index "^1.0.1" +csstype@^2.5.7: + version "2.6.13" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.13.tgz#a6893015b90e84dd6e85d0e3b442a1e84f2dbe0f" + integrity sha512-ul26pfSQTZW8dcOnD2iiJssfXw0gdNVX9IJDH/X3K5DGPfj+fUYe3kB+swUY6BF3oZDxaID3AJt+9/ojSAE05A== + +csstype@^3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.4.tgz#b156d7be03b84ff425c9a0a4b1e5f4da9c5ca888" + integrity sha512-xc8DUsCLmjvCfoD7LTGE0ou2MIWLx0K9RCZwSHMOdynqRsP4MtUcLeqh1HcQ2dInwDTqn+3CE0/FZh1et+p4jA== + +ctype@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f" + integrity sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8= cyclist@^1.0.1: version "1.0.1" @@ -4985,13 +6781,6 @@ dag-map@^2.0.2: resolved "https://registry.yarnpkg.com/dag-map/-/dag-map-2.0.2.tgz#9714b472de82a1843de2fba9b6876938cab44c68" integrity sha1-lxS0ct6CoYQ94vuptodpOMq0TGg= -dart-sass@^1.25.0: - version "1.25.0" - resolved "https://registry.yarnpkg.com/dart-sass/-/dart-sass-1.25.0.tgz#e00c0348118916e9d81cb485297184c131af1dad" - integrity sha512-syNOAstJXAmvD3RifcDk3fiPMyYE2fY8so6w9gf2/wNlKpG0zyH+oiXubEYVOy1WAWkzOc72pbAxwx+3OU4JJA== - dependencies: - chokidar ">=2.0.0 <4.0.0" - dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" @@ -5013,26 +6802,26 @@ dayjs@^1.9.3: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.9.3.tgz#b7f94b22ad2a136a4ca02a01ab68ae893fe1a268" integrity sha512-V+1SyIvkS+HmNbN1G7A9+ERbFTV9KTXu6Oor98v2xHmzzpp52OIJhQuJSTywWuBY5pyAEmlwbCi1Me87n/SLOw== -debug@2.6.9, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@^3.0.1, debug@^3.1.0, debug@^3.1.1: +debug@^3.0.0, debug@^3.0.1, debug@^3.1.0, debug@^3.1.1: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: ms "^2.1.1" -debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@~4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== +debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: + version "4.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1" + integrity sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== dependencies: - ms "^2.1.1" + ms "2.1.2" debug@~3.1.0: version "3.1.0" @@ -5041,17 +6830,12 @@ debug@~3.1.0: dependencies: ms "2.0.0" -decamelize@^1.1.2, decamelize@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-3.2.0.tgz#84b8e8f4f8c579f938e35e2cc7024907e0090851" - integrity sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw== +debug@~4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== dependencies: - xregexp "^4.2.4" + ms "^2.1.1" decode-uri-component@^0.2.0: version "0.2.0" @@ -5070,37 +6854,47 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= -deep-equal@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.0.3.tgz#cad1c15277ad78a5c01c49c2dee0f54de8a6a7b0" - integrity sha512-Spqdl4H+ky45I9ByyJtXteOm9CaIrPmnIPmOhrkKGNYWeDgCvJ8jNYVCTjChxW4FqGuZnLHADc8EKRMX6+CgvA== +deep-equal@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" + integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== dependencies: - es-abstract "^1.17.5" + is-arguments "^1.0.4" + is-date-object "^1.0.1" + is-regex "^1.0.4" + object-is "^1.0.1" + object-keys "^1.1.1" + regexp.prototype.flags "^1.2.0" + +deep-equal@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.0.4.tgz#6b0b407a074666033169df3acaf128e1c6f3eab6" + integrity sha512-BUfaXrVoCfgkOQY/b09QdO9L3XNoF2XH0A3aY9IQwQL/ZjLOe8FQgCNVl1wiolhsFo8kFdO9zdPViCPbmaJA5w== + dependencies: + es-abstract "^1.18.0-next.1" es-get-iterator "^1.1.0" is-arguments "^1.0.4" is-date-object "^1.0.2" - is-regex "^1.0.5" + is-regex "^1.1.1" isarray "^2.0.5" - object-is "^1.1.2" + object-is "^1.1.3" object-keys "^1.1.1" - object.assign "^4.1.0" + object.assign "^4.1.1" regexp.prototype.flags "^1.3.0" - side-channel "^1.0.2" + side-channel "^1.0.3" which-boxed-primitive "^1.0.1" which-collection "^1.0.1" which-typed-array "^1.1.2" -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= -default-require-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" - integrity sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc= - dependencies: - strip-bom "^3.0.0" +deep-object-diff@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.0.tgz#d6fabf476c2ed1751fc94d5ca693d2ed8c18bc5a" + integrity sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw== defaults@^1.0.3: version "1.0.3" @@ -5143,6 +6937,11 @@ defined@^1.0.0: resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= +delayed-stream@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-0.0.5.tgz#d4b1f43a93e8296dfe02694f4680bc37a313c73f" + integrity sha1-1LH0OpPoKW3+AmlPRoC8N6MTxz8= + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -5181,6 +6980,13 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= +detab@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/detab/-/detab-2.0.3.tgz#33e5dd74d230501bd69985a0d2b9a3382699a130" + integrity sha512-Up8P0clUVwq0FnFjDclzZsy9PadzRn5FFxrr47tQQvMHqyiFYVbpH8oXDzWtF0Q7pYy3l+RPmtBl+BsFF6wH0A== + dependencies: + repeat-string "^1.5.4" + detect-file@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" @@ -5203,6 +7009,22 @@ detect-newline@3.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +detect-port-alt@1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" + integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== + dependencies: + address "^1.0.1" + debug "^2.6.0" + +detect-port@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.3.0.tgz#d9c40e9accadd4df5cac6a782aefd014d573d1f1" + integrity sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ== + dependencies: + address "^1.0.1" + debug "^2.6.0" + diff@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" @@ -5217,6 +7039,14 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" +dir-glob@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -5224,6 +7054,18 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" +doctoc@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/doctoc/-/doctoc-1.4.0.tgz#3115aa61d0a92f0abb0672036918ea904f5b9e02" + integrity sha512-8IAq3KdMkxhXCUF+xdZxdJxwuz8N2j25sMgqiu4U4JWluN9tRKMlAalxGASszQjlZaBprdD2YfXpL3VPWUD4eg== + dependencies: + "@textlint/markdown-to-ast" "~6.0.9" + anchor-markdown-header "^0.5.5" + htmlparser2 "~3.9.2" + minimist "~1.2.0" + underscore "~1.8.3" + update-section "^0.3.0" + doctrine@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" @@ -5231,11 +7073,49 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" +dom-converter@^0.2: + version "0.2.0" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== + dependencies: + utila "~0.4" + +dom-serializer@0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" + integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== + dependencies: + domelementtype "^2.0.1" + entities "^2.0.0" + +dom-serializer@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0" + integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== + dependencies: + domelementtype "^1.3.0" + entities "^1.1.1" + +dom-walk@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" + integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== + domain-browser@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== +domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" + integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== + +domelementtype@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.2.tgz#f3b6e549201e46f588b59463dd77187131fe6971" + integrity sha512-wFwTwCVebUrMgGeAwRL/NhZtHAUyT9n9yg4IMDwf10+6iCMxSkVq9MGCVEH+QZWo1nNidy8kNvwmv4zWHDTqvA== + domexception@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" @@ -5243,6 +7123,29 @@ domexception@^1.0.1: dependencies: webidl-conversions "^4.0.2" +domhandler@^2.3.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" + integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== + dependencies: + domelementtype "1" + +domutils@1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= + dependencies: + dom-serializer "0" + domelementtype "1" + +domutils@^1.5.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" + integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== + dependencies: + dom-serializer "0" + domelementtype "1" + dot-case@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" @@ -5252,12 +7155,41 @@ dot-case@^3.0.3: tslib "^1.10.0" dot-prop@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" - integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== + version "5.3.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== dependencies: is-obj "^2.0.0" +dotenv-defaults@^1.0.2: + version "1.1.1" + resolved "https://registry.yarnpkg.com/dotenv-defaults/-/dotenv-defaults-1.1.1.tgz#032c024f4b5906d9990eb06d722dc74cc60ec1bd" + integrity sha512-6fPRo9o/3MxKvmRZBD3oNFdxODdhJtIy1zcJeUSCs6HCy4tarUpd+G67UTU9tF6OWXeSPqsm4fPAB+2eY9Rt9Q== + dependencies: + dotenv "^6.2.0" + +dotenv-expand@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" + integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== + +dotenv-webpack@^1.7.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/dotenv-webpack/-/dotenv-webpack-1.8.0.tgz#7ca79cef2497dd4079d43e81e0796bc9d0f68a5e" + integrity sha512-o8pq6NLBehtrqA8Jv8jFQNtG9nhRtVqmoD4yWbgUyoU3+9WBlPe+c2EAiaJok9RB28QvrWvdWLZGeTT5aATDMg== + dependencies: + dotenv-defaults "^1.0.2" + +dotenv@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz#941c0410535d942c8becf28d3f357dbd9d476064" + integrity sha512-HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w== + +dotenv@^8.0.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" + integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== + dotignore@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/dotignore/-/dotignore-0.1.2.tgz#f942f2200d28c3a76fbdd6f0ee9f3257c8a2e905" @@ -5270,6 +7202,11 @@ duplexer3@^0.1.4: resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= +duplexer@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== + duplexify@^3.4.2, duplexify@^3.6.0: version "3.7.1" resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" @@ -5306,17 +7243,31 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.30, electron-to-chromium@^1.3.488: - version "1.3.494" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.494.tgz#0d2dba65b69d696c5b71abb37552ff055fb32a5c" - integrity sha512-EOZuaDT3L1sCIMAVN5J0nGuGWVq5dThrdl0d8XeDYf4MOzbXqZ19OLKesN8TZj0RxtpYjqHpiw/fR6BKWdMwYA== +ejs@^3.1.2: + version "3.1.5" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.5.tgz#aed723844dc20acb4b170cd9ab1017e476a0d93b" + integrity sha512-dldq3ZfFtgVTJMLjOe+/3sROTzALlL9E34V4/sDtUd/KlBSS0s6U1/+WPE1B4sj9CXHJpL1M6rhNJnc9Wbal9w== + dependencies: + jake "^10.6.1" -electron-to-chromium@^1.3.47: - version "1.3.575" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.575.tgz#57065cfad7b977a817dba47b28e7eb4dbce3fc37" - integrity sha512-031VrjcilnE8bXivDGhEeuGjMZrjTAeyAKm3XWPY9SvGYE6Hn8003gCqoNszFu6lh1v0gDx5hrM0VE1cPSMUkQ== +electron-to-chromium@^1.3.30, electron-to-chromium@^1.3.47, electron-to-chromium@^1.3.571: + version "1.3.582" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.582.tgz#1adfac5affce84d85b3d7b3dfbc4ade293a6ffc4" + integrity sha512-0nCJ7cSqnkMC+kUuPs0YgklFHraWGl/xHqtZWWtOeVtyi+YqkoAOMGuZQad43DscXCQI/yizcTa3u6B5r+BLww== -elliptic@^6.0.0, elliptic@^6.5.2: +electron-to-chromium@^1.3.378: + version "1.3.584" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.584.tgz#506cf7ba5895aafa8241876ab028654b61fd9ceb" + integrity sha512-NB3DzrTzJFhWkUp+nl2KtUtoFzrfGXTir2S+BU4tXGyXH9vlluPuFpE3pTKeH7+PY460tHLjKzh6K2+TWwW+Ww== + +element-resize-detector@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/element-resize-detector/-/element-resize-detector-1.2.1.tgz#b0305194447a4863155e58f13323a0aef30851d1" + integrity sha512-BdFsPepnQr9fznNPF9nF4vQ457U/ZJXQDSNF1zBe7yaga8v9AdZf3/NElYxFdUh7SitSGt040QygiTo6dtatIw== + dependencies: + batch-processor "1.0.0" + +elliptic@^6.5.3: version "6.5.3" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.3.tgz#cb59eb2efdaf73a0bd78ccd7015a62ad6e0f93d6" integrity sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw== @@ -5338,11 +7289,11 @@ ember-assign-helper@^0.3.0: ember-cli-htmlbars "^4.3.1" ember-assign-polyfill@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/ember-assign-polyfill/-/ember-assign-polyfill-2.6.0.tgz#07847e3357ee35b33f886a0b5fbec6873f6860eb" - integrity sha512-Y8NzOmHI/g4PuJ+xC14eTYiQbigNYddyHB8FY2kuQMxThTEIDE7SJtgttJrYYcPciOu0Tnb5ff36iO46LeiXkw== + version "2.7.2" + resolved "https://registry.yarnpkg.com/ember-assign-polyfill/-/ember-assign-polyfill-2.7.2.tgz#58f6f60235126cb23df248c846008fa9a3245fc1" + integrity sha512-hDSaKIZyFS0WRQsWzxUgO6pJPFfmcpfdM7CbGoMgYGriYbvkKn+k8zTXSKpTFVGehhSmsLE9YPqisQ9QpPisfA== dependencies: - ember-cli-babel "^6.16.0" + ember-cli-babel "^7.20.5" ember-cli-version-checker "^2.0.0" ember-auto-import@^1.2.13, ember-auto-import@^1.5.2, ember-auto-import@^1.5.3: @@ -5379,7 +7330,7 @@ ember-auto-import@^1.2.13, ember-auto-import@^1.5.2, ember-auto-import@^1.5.3: walk-sync "^0.3.3" webpack "~4.28" -ember-basic-dropdown@^3.0.10, ember-basic-dropdown@^3.0.3: +ember-basic-dropdown@^3.0.10: version "3.0.10" resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-3.0.10.tgz#47ed9fe9ff9e69d1a021771a91823c730985ffe0" integrity sha512-TabEKUIlLPQLZqyXx1N8M/tDhrf/2meXjK2mNw6RfiOvwMHYJ41MwIhJusnlQd/Rn7cL0MbA+EGCnjdI0HhB/w== @@ -5413,14 +7364,26 @@ ember-changeset-validations@^3.9.0: ember-validators "^2.0.0" ember-changeset@^3.9.1: - version "3.9.1" - resolved "https://registry.yarnpkg.com/ember-changeset/-/ember-changeset-3.9.1.tgz#53b50be95364a71f38e68a01c33eba12808cd8a4" - integrity sha512-Ntf0fITb2klRZF+5s5xbBQ6HNuSn1IbwppyZPU8v7oh26QOlfjyxYE7QNWM3nZnybHkCrF1iSqN3s8xj3OoFCg== + version "3.10.1" + resolved "https://registry.yarnpkg.com/ember-changeset/-/ember-changeset-3.10.1.tgz#d6f06bc55f867a2c1ac7c5fd780776bd1e5a9b60" + integrity sha512-4FoGKRcKxixSr+NBQ+ZoiwwbJE0/fuZRULUp9M1RIHejYhst+U8/ni47SsphrMhoRAcZCeyl+JqlBMlwR7v50g== dependencies: "@glimmer/tracking" "^1.0.1" ember-auto-import "^1.5.2" ember-cli-babel "^7.19.0" - validated-changeset "~0.9.1" + validated-changeset "~0.10.0" + +ember-cli-addon-docs-yuidoc@^0.2.3: + version "0.2.4" + resolved "https://registry.yarnpkg.com/ember-cli-addon-docs-yuidoc/-/ember-cli-addon-docs-yuidoc-0.2.4.tgz#dd8f5cf4982e8492b255fb677e9d771925e27dce" + integrity sha512-asyGxagV+VKK+edc5iOW8JI8Css/d8mEE7ndWKqYa8Ub4eFwVfI6SLr9gHZc8f7q9BK+M5a/RSWHSnTTL5/3Zw== + dependencies: + broccoli-caching-writer "^3.0.3" + ember-cli-babel "^7.7.3" + fs-extra "^5.0.0" + json-api-serializer "^1.11.0" + lodash "^4.17.5" + yuidocjs "^0.10.2" ember-cli-app-version@^3.2.0: version "3.2.0" @@ -5438,37 +7401,37 @@ ember-cli-autoprefixer@^0.8.1: broccoli-autoprefixer "^5.0.0" lodash "^4.0.0" -ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.0.tgz#de3baedd093163b6c2461f95964888c1676325ac" - integrity sha512-Zr4my8Xn+CzO0gIuFNXji0eTRml5AxZUTDQz/wsNJ5AJAtyFWCY4QtKdoELNNbiCVGt1lq5yLiwTm4scGKu6xA== +ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.0, ember-cli-babel-plugin-helpers@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" + integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== -ember-cli-babel@7, ember-cli-babel@^7.8.0: - version "7.22.1" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.22.1.tgz#cad28b89cf0e184c93b863d09bc5ba4ce1d2e453" - integrity sha512-kCT8WbC1AYFtyOpU23ESm22a+gL6fWv8Nzwe8QFQ5u0piJzM9MEudfbjADEaoyKTrjMQTDsrWwEf3yjggDsOng== +ember-cli-babel@7, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.12.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.18.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: + version "7.23.0" + resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.23.0.tgz#ec580aa2c115d0810e454dd5c2fffce238284b92" + integrity sha512-ix58DlRDAbGITtdJoRUPcAoQwKLYr/x/kIXjU9u1ATyhmuUjqb+0FDXghOWbkNihGiNOqBBR49+LBgK9AeBcNw== dependencies: - "@babel/core" "^7.11.0" - "@babel/helper-compilation-targets" "^7.10.4" + "@babel/core" "^7.12.0" + "@babel/helper-compilation-targets" "^7.12.0" "@babel/plugin-proposal-class-properties" "^7.10.4" "@babel/plugin-proposal-decorators" "^7.10.5" "@babel/plugin-transform-modules-amd" "^7.10.5" - "@babel/plugin-transform-runtime" "^7.11.0" - "@babel/plugin-transform-typescript" "^7.11.0" - "@babel/polyfill" "^7.10.4" - "@babel/preset-env" "^7.11.0" - "@babel/runtime" "^7.11.0" + "@babel/plugin-transform-runtime" "^7.12.0" + "@babel/plugin-transform-typescript" "^7.12.0" + "@babel/polyfill" "^7.11.5" + "@babel/preset-env" "^7.12.0" + "@babel/runtime" "^7.12.0" amd-name-resolver "^1.2.1" babel-plugin-debug-macros "^0.3.3" babel-plugin-ember-data-packages-polyfill "^0.1.2" - babel-plugin-ember-modules-api-polyfill "^3.1.1" + babel-plugin-ember-modules-api-polyfill "^3.2.0" babel-plugin-module-resolver "^3.1.1" - broccoli-babel-transpiler "^7.7.0" + broccoli-babel-transpiler "^7.8.0" broccoli-debug "^0.6.4" broccoli-funnel "^2.0.1" broccoli-source "^1.1.0" clone "^2.1.2" - ember-cli-babel-plugin-helpers "^1.1.0" + ember-cli-babel-plugin-helpers "^1.1.1" ember-cli-version-checker "^4.1.0" ensure-posix-path "^1.0.2" fixturify-project "^1.10.0" @@ -5494,57 +7457,20 @@ ember-cli-babel@^6.0.0, ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.11.0, ember-cli-version-checker "^2.1.2" semver "^5.5.0" -ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.12.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.17.2, ember-cli-babel@^7.18.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.7.3: - version "7.21.0" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.21.0.tgz#c79e888876aee87dfc3260aee7cb580b74264bbc" - integrity sha512-jHVi9melAibo0DrAG3GAxid+29xEyjBoU53652B4qcu3Xp58feZGTH/JGXovH7TjvbeNn65zgNyoV3bk1onULw== - dependencies: - "@babel/core" "^7.10.2" - "@babel/helper-compilation-targets" "^7.10.2" - "@babel/plugin-proposal-class-properties" "^7.10.1" - "@babel/plugin-proposal-decorators" "^7.10.1" - "@babel/plugin-transform-modules-amd" "^7.10.1" - "@babel/plugin-transform-runtime" "^7.10.1" - "@babel/plugin-transform-typescript" "^7.10.1" - "@babel/polyfill" "^7.10.1" - "@babel/preset-env" "^7.10.2" - "@babel/runtime" "^7.10.2" - amd-name-resolver "^1.2.1" - babel-plugin-debug-macros "^0.3.3" - babel-plugin-ember-data-packages-polyfill "^0.1.2" - babel-plugin-ember-modules-api-polyfill "^2.13.4" - babel-plugin-module-resolver "^3.1.1" - broccoli-babel-transpiler "^7.5.0" - broccoli-debug "^0.6.4" - broccoli-funnel "^2.0.1" - broccoli-source "^1.1.0" - clone "^2.1.2" - ember-cli-babel-plugin-helpers "^1.1.0" - ember-cli-version-checker "^4.1.0" - ensure-posix-path "^1.0.2" - fixturify-project "^1.10.0" - rimraf "^3.0.1" - semver "^5.5.0" - ember-cli-code-coverage@^1.0.0-beta.4: - version "1.0.0-beta.9" - resolved "https://registry.yarnpkg.com/ember-cli-code-coverage/-/ember-cli-code-coverage-1.0.0-beta.9.tgz#4a4ca60e88fbf1895de99e3b439f46c129417ab7" - integrity sha512-BHgpstojD05NSKt6HAMRW5V6wQI/VrSgvTzbBnX6DKrxLbY+P/ivzLIU7Zt3lvnMvPhmxlranC2Z/CYS5rdaSw== + version "1.0.2" + resolved "https://registry.yarnpkg.com/ember-cli-code-coverage/-/ember-cli-code-coverage-1.0.2.tgz#615fc7af8bc7d9388a28371c2825c224a936d73f" + integrity sha512-uD0RA6A4p/AOpPGq8JXIiZeDFWjzEm5fyWZLU5W8nCF//t3wbkly8tZukiYchJNNYEeESzd6gqdwgDkLMRzZYA== dependencies: - "@babel/register" "^7.6.0" - babel-plugin-istanbul "^5.2.0" - babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-istanbul "^6.0.0" body-parser "^1.19.0" - co "^4.6.0" - ember-cli-babel "^7.11.0" - ember-cli-version-checker "^3.1.3" - extend "^3.0.2" - fs-extra "^8.1.0" - istanbul-api "^2.1.6" - lodash.concat "^4.5.0" + ember-cli-version-checker "^5.1.1" + fs-extra "^9.0.0" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-report "^3.0.0" + istanbul-reports "^3.0.2" node-dir "^0.1.17" - rsvp "^4.8.5" - walk-sync "^2.0.2" + walk-sync "^2.1.0" ember-cli-dependency-checker@^3.2.0: version "3.2.0" @@ -5557,20 +7483,10 @@ ember-cli-dependency-checker@^3.2.0: resolve "^1.5.0" semver "^5.3.0" -ember-cli-eslint@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/ember-cli-eslint/-/ember-cli-eslint-5.1.0.tgz#acdb9b072911e04b07c313b610f514db4086d21a" - integrity sha512-o6787b0tgkRNp+KJo5BiQxtkLuz/yyYqVWF31LPrh+ZCC8jETrfyjsuk8VPDxKLGq7qEiQNJUgOEW87HTad7Vg== - dependencies: - broccoli-lint-eslint "^5.0.0" - ember-cli-version-checker "^3.0.0" - rsvp "^4.6.1" - walk-sync "^1.0.0" - ember-cli-flash@^1.6.3: - version "1.9.0" - resolved "https://registry.yarnpkg.com/ember-cli-flash/-/ember-cli-flash-1.9.0.tgz#d414ea55c869d405a46f1e26983309d3943a13cf" - integrity sha512-sTVsPDUS8NF7HDJPFFCMUZT6UnYi422R7ED/9FrnIjxlCbOABea4EgoQTqKFmLNhST482zMnsfBqdN2hpybn4A== + version "1.9.1" + resolved "https://registry.yarnpkg.com/ember-cli-flash/-/ember-cli-flash-1.9.1.tgz#fda9f7b92fdb4bb85688e4df554beb514c1749e7" + integrity sha512-9AN0BD27owvnNpFBELy5zSNIbJBUP8xW6mFV98L0qHnfJk2gG7bXbXOzt6VtRqWC+Pm5rCRqUoCz+NiwsPvObw== dependencies: ember-cli-babel "^7.1.2" ember-cli-htmlbars "^3.0.0" @@ -5620,7 +7536,7 @@ ember-cli-htmlbars@^3.0.0, ember-cli-htmlbars@^3.0.1: json-stable-stringify "^1.0.1" strip-bom "^3.0.0" -ember-cli-htmlbars@^4.0.5: +ember-cli-htmlbars@^4.0.5, ember-cli-htmlbars@^4.2.0, ember-cli-htmlbars@^4.3.1: version "4.4.0" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-4.4.0.tgz#7ca17d5ca8f7550984346d9e6e93da0c3323f8d9" integrity sha512-ohgctqk7dXIZR4TgN0xRoUYltWhghFJgqmtuswQTpZ7p74RxI9PKx+E8WV/95mGcPzraesvMNBg5utQNvcqgNg== @@ -5640,33 +7556,13 @@ ember-cli-htmlbars@^4.0.5: strip-bom "^4.0.0" walk-sync "^2.0.2" -ember-cli-htmlbars@^4.2.0, ember-cli-htmlbars@^4.2.2, ember-cli-htmlbars@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-4.3.1.tgz#4af8adc21ab3c4953f768956b7f7d207782cb175" - integrity sha512-CW6AY/yzjeVqoRtItOKj3hcYzc5dWPRETmeCzr2Iqjt5vxiVtpl0z5VTqHqIlT5fsFx6sGWBQXNHIe+ivYsxXQ== - dependencies: - "@ember/edition-utils" "^1.2.0" - babel-plugin-htmlbars-inline-precompile "^3.0.1" - broccoli-debug "^0.6.5" - broccoli-persistent-filter "^2.3.1" - broccoli-plugin "^3.1.0" - common-tags "^1.8.0" - ember-cli-babel-plugin-helpers "^1.1.0" - fs-tree-diff "^2.0.1" - hash-for-dep "^1.5.1" - heimdalljs-logger "^0.1.10" - json-stable-stringify "^1.0.1" - semver "^6.3.0" - strip-bom "^4.0.0" - walk-sync "^2.0.2" - ember-cli-htmlbars@^5.0.0, ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.2.0.tgz#5ceccd0d18163dd810dea29f6fd777d0baa01e23" - integrity sha512-EdjuUc7sq9ve6sgsG59qIzOj4svWjgYhO/QEhuV1UbOQ3ATeqNPiD++bFeAGjUhravw9HPhQPPoHnMlAikqLIw== + version "5.3.1" + resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.3.1.tgz#61793964fc2599ce750db9e972ab55c6dd177c48" + integrity sha512-ZjQTt44euDoqLvUkWbt1svgNCXgLzOztEbc2qqYMQvhQig416LMrWK7l3SSbNU+BtLD5UIxmwvLfF1tsO2CVyA== dependencies: "@ember/edition-utils" "^1.2.0" - babel-plugin-htmlbars-inline-precompile "^4.1.0" + babel-plugin-htmlbars-inline-precompile "^4.2.0" broccoli-debug "^0.6.5" broccoli-persistent-filter "^3.1.0" broccoli-plugin "^4.0.3" @@ -5679,7 +7575,7 @@ ember-cli-htmlbars@^5.0.0, ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.2.0: semver "^7.3.2" silent-error "^1.1.1" strip-bom "^4.0.0" - walk-sync "^2.1.0" + walk-sync "^2.2.0" ember-cli-inject-live-reload@^2.0.2: version "2.0.2" @@ -5879,7 +7775,7 @@ ember-cli-version-checker@^2.0.0, ember-cli-version-checker@^2.1.0, ember-cli-ve resolve "^1.3.3" semver "^5.3.0" -ember-cli-version-checker@^3.0.0, ember-cli-version-checker@^3.1.3: +ember-cli-version-checker@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/ember-cli-version-checker/-/ember-cli-version-checker-3.1.3.tgz#7c9b4f5ff30fdebcd480b1c06c4de43bb51c522c" integrity sha512-PZNSvpzwWgv68hcXxyjREpj3WWb81A7rtYNQq1lLEgrWIchF8ApKJjWP3NBpHjaatwILkZAV8klair5WFlXAKg== @@ -6039,17 +7935,10 @@ ember-composable-helpers@~4.0.0: ember-cli-babel "^7.11.1" resolve "^1.10.0" -ember-computed-style@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/ember-computed-style/-/ember-computed-style-0.3.0.tgz#a04375f8b48fbf72fd61e76da3358075bd195ae9" - integrity sha512-EMMlKa8HKUCUapkJVgi/2VPyqUTWxIGs/rNsxMcMiOLFErHv6D1Mw8tvByuXeCtW8KrbwAFX3vaCMNYsAZAjvQ== - dependencies: - ember-cli-babel "^6.6.0" - ember-concurrency-decorators@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ember-concurrency-decorators/-/ember-concurrency-decorators-2.0.0.tgz#119934636927ad0b4d1c751e35688d7596cf85e3" - integrity sha512-9gJmLwTIkOcBQIOub8k3Y1TCUPzlk/fv3gTGJc9QhcmBvBb22l6Z+TptaqSmR+06XqTITYnPfGpk+tqmrHyYug== + version "2.0.1" + resolved "https://registry.yarnpkg.com/ember-concurrency-decorators/-/ember-concurrency-decorators-2.0.1.tgz#f5465785e6cf44684fb158ae6ab3aa1b131fae43" + integrity sha512-KJ8mCZxmvgalawh/zytURsc5ParNr9avPeCDR/mE7VQxWvITHtyAuYS2s1PPFQAQggTXTZYcGnfgzjn/cDHNMQ== dependencies: "@ember-decorators/utils" "^6.1.0" ember-cli-babel "^7.19.0" @@ -6065,15 +7954,6 @@ ember-concurrency-decorators@^2.0.0: ember-compatibility-helpers "^1.2.0" ember-maybe-import-regenerator "^0.1.6" -ember-concurrency@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/ember-concurrency/-/ember-concurrency-1.2.1.tgz#54fb234579638c5c43d4153a4e14567fe2b2e325" - integrity sha512-6zlK3BndPPZlSVWq6xBohwobpDKrI58nMMDfD8OqjoeBwnaznuyVHJqDZ46NRJrvSqYX6R96XBBVpDGCCcbK+w== - dependencies: - ember-cli-babel "^7.7.3" - ember-compatibility-helpers "^1.2.0" - ember-maybe-import-regenerator "^0.1.6" - ember-copy@1.0.0, ember-copy@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ember-copy/-/ember-copy-1.0.0.tgz#426554ba6cf65920f31d24d0a3ca2cb1be16e4aa" @@ -6144,6 +8024,13 @@ ember-export-application-global@^2.0.1: resolved "https://registry.yarnpkg.com/ember-export-application-global/-/ember-export-application-global-2.0.1.tgz#b120a70e322ab208defc9e2daebe8d0dfc2dcd46" integrity sha512-B7wiurPgsxsSGzJuPFkpBWnaeuCu2PGpG2BjyrfA1VcL7//o+5RSnZqiCEY326y7qmxb2GoCgo0ft03KBU0rRw== +ember-factory-for-polyfill@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/ember-factory-for-polyfill/-/ember-factory-for-polyfill-1.3.1.tgz#b446ed64916d293c847a4955240eb2c993b86eae" + integrity sha512-y3iG2iCzH96lZMTWQw6LWNLAfOmDC4pXKbZP6FxG8lt7GGaNFkZjwsf+Z5GAe7kxfD7UG4lVkF7x37K82rySGA== + dependencies: + ember-cli-version-checker "^2.1.0" + ember-get-config@^0.2.4: version "0.2.4" resolved "https://registry.yarnpkg.com/ember-get-config/-/ember-get-config-0.2.4.tgz#118492a2a03d73e46004ed777928942021fe1ecd" @@ -6152,6 +8039,14 @@ ember-get-config@^0.2.4: broccoli-file-creator "^1.1.1" ember-cli-babel "^6.3.0" +ember-getowner-polyfill@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-2.2.0.tgz#38e7dccbcac69d5ec694000329ec0b2be651d2b2" + integrity sha512-rwGMJgbGzxIAiWYjdpAh04Abvt0s3HuS/VjHzUFhVyVg2pzAuz45B9AzOxYXzkp88vFC7FPaiA4kE8NxNk4A4Q== + dependencies: + ember-cli-version-checker "^2.1.0" + ember-factory-for-polyfill "^1.3.1" + ember-href-to@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/ember-href-to/-/ember-href-to-3.1.0.tgz#704f66c2b555a2685fac9ddc74eb9c95abaf5b8f" @@ -6185,13 +8080,13 @@ ember-load-initializers@^2.1.1: ember-cli-typescript "^2.0.2" ember-math-helpers@^2.4.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/ember-math-helpers/-/ember-math-helpers-2.14.0.tgz#5845eaa52f3d258aa1369e9cf614b4b9bcf45d8f" - integrity sha512-ZgDnTx1Za//qRtWpDM6ZAKjG2jhR1pQuo/txA2BZKIiKudJ4CWeXnKDOb498s7tQDsr2UNgo4+5bVG3EHmfazw== + version "2.15.0" + resolved "https://registry.yarnpkg.com/ember-math-helpers/-/ember-math-helpers-2.15.0.tgz#3feb3328354589e4508f7035bd6b37d7df275096" + integrity sha512-dxHU0jgErvK+ihl/GEn7FZycgZFZeUgS1P0DlEqSOuzbZ0klikntUgBDfUS1xuF31gRxnDx2V9com28htZJHaA== dependencies: broccoli-funnel "^3.0.1" - ember-cli-babel "^7.17.2" - ember-cli-htmlbars "^4.2.2" + ember-cli-babel "^7.20.5" + ember-cli-htmlbars "^5.1.2" ember-maybe-import-regenerator@^0.1.6: version "0.1.6" @@ -6203,13 +8098,6 @@ ember-maybe-import-regenerator@^0.1.6: ember-cli-babel "^6.0.0-beta.4" regenerator-runtime "^0.9.5" -ember-maybe-in-element@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/ember-maybe-in-element/-/ember-maybe-in-element-0.4.0.tgz#fe1994c60ee64527d2b2f3b4479ebf8806928bd8" - integrity sha512-ADQ9jewz46Y2MWiTAKrheIukHiU6p0QHn3xqz1BBDDOmubW1WdAjSrvtkEWsJQ08DyxIn3RdMuNDzAUo6HN6qw== - dependencies: - ember-cli-babel "^7.1.0" - ember-maybe-in-element@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/ember-maybe-in-element/-/ember-maybe-in-element-2.0.1.tgz#fa3a26cc2c522a27129d6528b400b9c820943be6" @@ -6272,25 +8160,7 @@ ember-power-select-with-create@^0.8.0: ember-cli-htmlbars "^5.0.0" ember-power-select "^4.0.0" -ember-power-select@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-4.0.3.tgz#73a98154abf9c5c19c11cdae98294a94d082b381" - integrity sha512-WkMq2eLUgq3oBW/6lxBS5u0oBu8sh9Y0ACgMPe2hP3YmZKnfXCuUzV2QrttbeNnxehmyiXKAleuev7J4BvObdA== - dependencies: - "@ember-decorators/component" "^6.1.0" - "@glimmer/component" "^1.0.0" - "@glimmer/tracking" "^1.0.0" - ember-assign-helper "^0.3.0" - ember-basic-dropdown "^3.0.3" - ember-cli-babel "^7.21.0" - ember-cli-htmlbars "^5.2.0" - ember-cli-typescript "^3.1.4" - ember-concurrency "^1.2.1" - ember-concurrency-decorators "^2.0.0" - ember-text-measurer "^0.6.0" - ember-truth-helpers "^2.1.0" - -ember-power-select@^4.0.5: +ember-power-select@^4.0.0, ember-power-select@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-4.0.5.tgz#7a018c102792e070b2f8cddff63ce3264b796dec" integrity sha512-57diMZJ2887u6VNS0rT1ppBGppocZ7WhH37ZdZnSdmApCLUnloLNFA4H9YH1VWV2V62I5/18jViRBEFJxVUUKQ== @@ -6344,26 +8214,29 @@ ember-require-module@^0.3.0: ember-cli-babel "^6.9.2" ember-resolver@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/ember-resolver/-/ember-resolver-8.0.0.tgz#cc48682c1e2f5d208499b1ecdcac1e43839683bd" - integrity sha512-M0P1++26h9KuEpg14VDrg37daneXrj9Hv9kuM0Xzsm38guma9JzO1+BvJcL/u5EGiJSUjtLtYvakk/6feFlo6A== + version "8.0.2" + resolved "https://registry.yarnpkg.com/ember-resolver/-/ember-resolver-8.0.2.tgz#8a45a744aaf5391eb52b4cb393b3b06d2db1975c" + integrity sha512-BmCoPT8nf5uv0g2QkhMsrG1Gmu6MtXd6igfhCVzCTMTwZ97SxhJKqoMY62EP/av5HVSWBC/Sa1uGU5cQvX1Aog== dependencies: babel-plugin-debug-macros "^0.3.3" - broccoli-funnel "^3.0.2" + broccoli-funnel "^3.0.3" broccoli-merge-trees "^4.2.0" - ember-cli-babel "^7.18.0" - ember-cli-version-checker "^5.0.2" - resolve "^1.15.1" + ember-cli-babel "^7.22.1" + ember-cli-version-checker "^5.1.1" + resolve "^1.17.0" -ember-rfc176-data@^0.3.12: - version "0.3.13" - resolved "https://registry.yarnpkg.com/ember-rfc176-data/-/ember-rfc176-data-0.3.13.tgz#ed1712a26e65fec703655f35410414aa1982cf3b" - integrity sha512-m9JbwQlT6PjY7x/T8HslnXP7Sz9bx/pz3FrNfNi2NesJnbNISly0Lix6NV1fhfo46572cpq4jrM+/6yYlMefTQ== +ember-rfc176-data@^0.3.12, ember-rfc176-data@^0.3.13, ember-rfc176-data@^0.3.16: + version "0.3.16" + resolved "https://registry.yarnpkg.com/ember-rfc176-data/-/ember-rfc176-data-0.3.16.tgz#2ace0ac9cf9016d493a74a1d931643a308679803" + integrity sha512-IYAzffS90r2ybAcx8c2qprYfkxa70G+/UPkxMN1hw55DU5S2aLOX6v3umKDZItoRhrvZMCnzwsdfKSrKdC9Wbg== -ember-rfc176-data@^0.3.13, ember-rfc176-data@^0.3.15: - version "0.3.15" - resolved "https://registry.yarnpkg.com/ember-rfc176-data/-/ember-rfc176-data-0.3.15.tgz#af3f1da5a0339b6feda380edc2f7190e0f416c2d" - integrity sha512-GPKa7zRDBblRy0orxTXt5yrpp/Pf5CkuRFSIR8qMFDww0CqCKjCRwdZnWYzCM4kAEfZnXRIDDefe1tBaFw7v7w== +ember-route-action-helper@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/ember-route-action-helper/-/ember-route-action-helper-2.0.8.tgz#f227fcccb73e839b65e9b814e241b322fe8c02fc" + integrity sha512-V+4uKwqaYveriVt2rl4e+9mzHJiQOr1B8dCPQQ2TS3iAcmi5RD2giRDFGtCK9d2XY9Arb/f9hJh0obP20iyt3A== + dependencies: + ember-cli-babel "^6.8.1" + ember-getowner-polyfill "^2.0.0" ember-router-generator@^2.0.0: version "2.0.0" @@ -6465,34 +8338,35 @@ ember-string-fns@^1.4.0: ember-cli-babel "^7.7.3" ember-template-lint@^2.0.1: - version "2.9.0" - resolved "https://registry.yarnpkg.com/ember-template-lint/-/ember-template-lint-2.9.0.tgz#0580468e052c53451c1e983578beb7ee59885141" - integrity sha512-O+SeYRcG1Ka1VvHIOzRShYq4ZP9hjnOifpat/5ZOElEN40avv+YhOq5iCLZIUtRN3ryceP1W0Pmsnxuaqsq0Pg== + version "2.14.0" + resolved "https://registry.yarnpkg.com/ember-template-lint/-/ember-template-lint-2.14.0.tgz#8b52b23e9237a730de9808a43f75100455fadcee" + integrity sha512-psRhYfw894mp6tF2Vv9gBbpHJwKz2dyEEwsL/zX1ksWGo7vQ4vAqrqPuLtCi/NPpoFnTr2VaCCK7xvef+fZ3MA== dependencies: chalk "^4.0.0" - ember-template-recast "^4.1.4" - find-up "^4.1.0" + ember-template-recast "^4.2.0" + find-up "^5.0.0" get-stdin "^8.0.0" globby "^11.0.1" - is-valid-glob "^1.0.0" + is-glob "^4.0.1" micromatch "^4.0.2" resolve "^1.17.0" - yargs "^15.3.1" + v8-compile-cache "^2.1.1" + yargs "^16.0.3" -ember-template-recast@^4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/ember-template-recast/-/ember-template-recast-4.1.4.tgz#0552f4f27d33b17ac05a48107f369032eb45fb97" - integrity sha512-jw38ncM5uJu7INVWYCmm4GNIEdGVLkjABWbj451A83Ag4lBfXIbIHq+5IM7rFzUlw/Ho39WxeKhKZ5KTvIVljQ== +ember-template-recast@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/ember-template-recast/-/ember-template-recast-4.2.1.tgz#f1ecc78e4d99cea7d656dfc1ac951a30e6b04451" + integrity sha512-H+8fsAy5HD30zU1Z3SPDoQnbgISucOCODQZ/OkIr2xBE9z9hEEgVYXe8sNraQ77EVa+ouAXtLfwImo38qE4YEg== dependencies: - "@glimmer/syntax" "^0.51.1" + "@glimmer/syntax" "^0.62.3" async-promise-queue "^1.0.5" colors "^1.4.0" - commander "^5.1.0" - globby "^11.0.0" - ora "^4.0.4" + commander "^6.1.0" + globby "^11.0.1" + ora "^5.1.0" slash "^3.0.0" - tmp "^0.1.0" - workerpool "^5.0.4" + tmp "^0.2.1" + workerpool "^6.0.2" ember-test-selectors@^4.0.0: version "4.1.0" @@ -6520,9 +8394,9 @@ ember-text-measurer@^0.6.0: ember-cli-htmlbars "^4.3.1" ember-tooltips@^3.4.3: - version "3.4.3" - resolved "https://registry.yarnpkg.com/ember-tooltips/-/ember-tooltips-3.4.3.tgz#a017de33e53a9b9ca6d38b8c2f829cc3024b8f8b" - integrity sha512-/swhfhodVvpKi6R+tkcqLgS0YTMo3S6Mzb8qtfTneFSz+tBhY/kd/+eI8OIZf9qocpJ9b54dbbqTw5ZBkeZe2g== + version "3.4.5" + resolved "https://registry.yarnpkg.com/ember-tooltips/-/ember-tooltips-3.4.5.tgz#c6724cd9d2c274ad567541f6cd50cc3841606afe" + integrity sha512-wElt+f0jujQkOUHIu3MfXqeHcV0bRxOgfmCro2RSNbJ/pM/ndYcsNsMuT3BCPPFikuLoTHEc85XDpzNcKoW9Fw== dependencies: broccoli-file-creator "^2.1.1" broccoli-funnel "^2.0.2" @@ -6531,7 +8405,7 @@ ember-tooltips@^3.4.3: broccoli-string-replace "^0.1.2" ember-cli-babel "^7.13.0" ember-cli-htmlbars "^4.2.0" - ember-maybe-in-element "^0.4.0" + ember-in-element-polyfill "^1.0.0" popper.js "^1.12.5" resolve "^1.10.1" tooltip.js "^1.1.5" @@ -6551,6 +8425,11 @@ ember-validators@^2.0.0: ember-cli-babel "^6.9.2" ember-require-module "^0.3.0" +"emoji-regex@>=6.0.0 <=6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.1.tgz#c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e" + integrity sha1-xs0OwbBkLio8Z6ETfvxeeW2k+I4= + emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -6561,11 +8440,30 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@~6.1.0: + version "6.1.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.1.3.tgz#ec79a3969b02d2ecf2b72254279bf99bc7a83932" + integrity sha1-7HmjlpsC0uzytyJUJ5v5m8eoOTI= + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= + emojis-list@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== +emotion-theming@^10.0.19: + version "10.0.27" + resolved "https://registry.yarnpkg.com/emotion-theming/-/emotion-theming-10.0.27.tgz#1887baaec15199862c89b1b984b79806f2b9ab10" + integrity sha512-MlF1yu/gYh8u+sLUqA0YuA9JX0P4Hb69WlKc/9OLo+WCXuX6sy/KoIa+qJimgmr2dWqnypYKYPX37esjDBbhdw== + dependencies: + "@babel/runtime" "^7.5.5" + "@emotion/weak-memoize" "0.2.5" + hoist-non-react-statics "^3.3.0" + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -6579,30 +8477,30 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: once "^1.4.0" engine.io-client@~3.4.0: - version "3.4.3" - resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.4.3.tgz#192d09865403e3097e3575ebfeb3861c4d01a66c" - integrity sha512-0NGY+9hioejTEJCaSJZfWZLk4FPI9dN+1H1C4+wj2iuFba47UgZbJzfWs4aNFajnX/qAaYKbe2lLTfEEWzCmcw== + version "3.4.4" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.4.4.tgz#77d8003f502b0782dd792b073a4d2cf7ca5ab967" + integrity sha512-iU4CRr38Fecj8HoZEnFtm2EiKGbYZcPn3cHxqNGl/tmdWRf60KhK+9vE0JeSjgnlS/0oynEfLgKbT9ALpim0sQ== dependencies: component-emitter "~1.3.0" component-inherit "0.0.3" - debug "~4.1.0" + debug "~3.1.0" engine.io-parser "~2.2.0" has-cors "1.1.0" indexof "0.0.1" - parseqs "0.0.5" - parseuri "0.0.5" + parseqs "0.0.6" + parseuri "0.0.6" ws "~6.1.0" xmlhttprequest-ssl "~1.5.4" yeast "0.1.2" engine.io-parser@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.0.tgz#312c4894f57d52a02b420868da7b5c1c84af80ed" - integrity sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w== + version "2.2.1" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.1.tgz#57ce5611d9370ee94f99641b589f94c97e4f5da7" + integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg== dependencies: after "0.8.2" arraybuffer.slice "~0.0.7" - base64-arraybuffer "0.1.5" + base64-arraybuffer "0.1.4" blob "0.0.5" has-binary2 "~1.0.2" @@ -6618,16 +8516,16 @@ engine.io@~3.4.0: engine.io-parser "~2.2.0" ws "^7.1.2" -enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.2.0.tgz#5d43bda4a0fd447cb0ebbe71bef8deff8805ad0d" - integrity sha512-S7eiFb/erugyd1rLb6mQ3Vuq+EXHv5cpCkNqqIkYkBgN2QdFnyCZzFBleqwGEx4lgNGYij81BWnCrFNK7vxvjQ== +enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.0, enhanced-resolve@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126" + integrity sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ== dependencies: graceful-fs "^4.1.2" memory-fs "^0.5.0" tapable "^1.0.0" -enquirer@^2.3.5: +enquirer@^2.3.5, enquirer@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== @@ -6639,12 +8537,12 @@ ensure-posix-path@^1.0.0, ensure-posix-path@^1.0.1, ensure-posix-path@^1.0.2, en resolved "https://registry.yarnpkg.com/ensure-posix-path/-/ensure-posix-path-1.1.1.tgz#3c62bdb19fa4681544289edb2b382adc029179ce" integrity sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw== -entities@^1.1.2, entities@~1.1.1: +entities@^1.1.1, entities@^1.1.2, entities@~1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== -entities@~2.0.0: +entities@^2.0.0, entities@~2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== @@ -6661,7 +8559,7 @@ errno@^0.1.3, errno@~0.1.7: dependencies: prr "~1.0.1" -error-ex@^1.2.0, error-ex@^1.3.1: +error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== @@ -6675,24 +8573,47 @@ error@^7.0.0: dependencies: string-template "~0.2.1" -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.17.5: - version "1.17.6" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" - integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== +es-abstract@^1.17.0, es-abstract@^1.17.0-next.0, es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.4, es-abstract@^1.17.5: + version "1.17.7" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.7.tgz#a4de61b2f66989fc7421676c1cb9787573ace54c" + integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g== dependencies: es-to-primitive "^1.2.1" function-bind "^1.1.1" has "^1.0.3" has-symbols "^1.0.1" - is-callable "^1.2.0" - is-regex "^1.1.0" - object-inspect "^1.7.0" + is-callable "^1.2.2" + is-regex "^1.1.1" + object-inspect "^1.8.0" object-keys "^1.1.1" - object.assign "^4.1.0" + object.assign "^4.1.1" string.prototype.trimend "^1.0.1" string.prototype.trimstart "^1.0.1" -es-get-iterator@^1.1.0: +es-abstract@^1.18.0-next.0, es-abstract@^1.18.0-next.1: + version "1.18.0-next.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.0-next.1.tgz#6e3a0a4bda717e5023ab3b8e90bec36108d22c68" + integrity sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.2.2" + is-negative-zero "^2.0.0" + is-regex "^1.1.1" + object-inspect "^1.8.0" + object-keys "^1.1.1" + object.assign "^4.1.1" + string.prototype.trimend "^1.0.1" + string.prototype.trimstart "^1.0.1" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-get-iterator@^1.0.2, es-get-iterator@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.0.tgz#bb98ad9d6d63b31aacdc8f89d5d0ee57bcb5b4c8" integrity sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ== @@ -6714,22 +8635,37 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" -escalade@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.1.tgz#52568a77443f6927cd0ab9c73129137533c965ed" - integrity sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA== +es5-shim@^4.5.13: + version "4.5.14" + resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.5.14.tgz#90009e1019d0ea327447cb523deaff8fe45697ef" + integrity sha512-7SwlpL+2JpymWTt8sNLuC2zdhhc+wrfe5cMPI2j0o6WsPdfAiPwmFy2f0AocPB4RQVBOZ9kNTgi5YF7TdhkvEg== + +es6-shim@^0.35.5: + version "0.35.6" + resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.6.tgz#d10578301a83af2de58b9eadb7c2c9945f7388a0" + integrity sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA== + +escalade@^3.1.0, escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= +escape-string-regexp@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= -escodegen@^1.11.0: +escodegen@^1.11.0, escodegen@^1.12.0: version "1.14.3" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== @@ -6778,80 +8714,87 @@ eslint-scope@^4.0.0, eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.3.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: - eslint-visitor-keys "^1.1.0" + esrecurse "^4.3.0" + estraverse "^4.1.1" -eslint-utils@^2.0.0: +eslint-utils@^2.0.0, eslint-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^5.6.0: - version "5.16.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" - integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint@^7.12.1: + version "7.12.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.12.1.tgz#bd9a81fa67a6cfd51656cdb88812ce49ccec5801" + integrity sha512-HlMTEdr/LicJfN08LB3nM1rRYliDXOmfoO4vj39xN6BLpFzF00hbwBoqHk8UcJ2M/3nlARZWy/mslvGEuZFvsg== dependencies: "@babel/code-frame" "^7.0.0" - ajv "^6.9.1" - chalk "^2.1.0" - cross-spawn "^6.0.5" + "@eslint/eslintrc" "^0.2.1" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" debug "^4.0.1" doctrine "^3.0.0" - eslint-scope "^4.0.3" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^5.0.1" - esquery "^1.0.1" + enquirer "^2.3.5" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.0" + esquery "^1.2.0" esutils "^2.0.2" file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.7.0" + glob-parent "^5.0.0" + globals "^12.1.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^6.2.2" - js-yaml "^3.13.0" + is-glob "^4.0.0" + js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.11" + levn "^0.4.1" + lodash "^4.17.19" minimatch "^3.0.4" - mkdirp "^0.5.1" natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" + optionator "^0.9.1" progress "^2.0.0" - regexpp "^2.0.1" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" table "^5.2.3" text-table "^0.2.0" + v8-compile-cache "^2.0.3" esm@^3.2.25, esm@^3.2.4: version "3.2.25" resolved "https://registry.yarnpkg.com/esm/-/esm-3.2.25.tgz#342c18c29d56157688ba5ce31f8431fbb795cc10" integrity sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA== -espree@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" - integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== +espree@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.0.tgz#dc30437cf67947cf576121ebd780f15eeac72348" + integrity sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw== dependencies: - acorn "^6.0.7" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" + acorn "^7.4.0" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.3.0" esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: version "4.0.1" @@ -6863,29 +8806,29 @@ esprima@~3.0.0: resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" integrity sha1-U88kes2ncxPlUcOqLnM0LT+099k= -esquery@^1.0.1: +esquery@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== dependencies: estraverse "^5.1.0" -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== +esrecurse@^4.1.0, esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: - estraverse "^4.1.0" + estraverse "^5.2.0" -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.1.1, estraverse@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== -estraverse@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" - integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== estree-walker@^0.6.1: version "0.6.1" @@ -6903,9 +8846,9 @@ etag@~1.8.1: integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= eventemitter3@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" - integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== events-to-array@^1.0.1: version "1.1.2" @@ -6913,9 +8856,9 @@ events-to-array@^1.0.1: integrity sha1-LUH1Y+H+QA7Uli/hpNXGp1Od9/Y= events@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59" - integrity sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg== + version "3.2.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379" + integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg== evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" @@ -6974,7 +8917,7 @@ execa@^3.0.0, execa@^3.4.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^4.0.1: +execa@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.3.tgz#0a34dabbad6d66100bd6f2c576c8669403f317f2" integrity sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A== @@ -7019,7 +8962,7 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -express@^4.10.7, express@^4.17.1: +express@^4.10.7, express@^4.13.1, express@^4.17.0, express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== @@ -7070,7 +9013,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.2, extend@~3.0.2: +extend@^3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -7123,6 +9066,18 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-glob@^2.0.2: + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + fast-glob@^3.0.3, fast-glob@^3.1.1: version "3.2.4" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" @@ -7140,7 +9095,7 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -7187,6 +9142,13 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" +fault@^1.0.1, fault@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/fault/-/fault-1.0.4.tgz#eafcfc0a6d214fc94601e170df29954a4f842f13" + integrity sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA== + dependencies: + format "^0.2.0" + faye-websocket@~0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" @@ -7227,18 +9189,39 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" +file-loader@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.1.1.tgz#a6f29dfb3f5933a1c350b2dbaa20ac5be0539baa" + integrity sha512-Klt8C4BjWSXYQAfhpYYkG4qHNTna4toMHEbWrI5IuVoxbU6uiDKeKAP99R8mmbJi3lvewn/jQBOgU4+NS3tDQw== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +file-system-cache@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.0.5.tgz#84259b36a2bbb8d3d6eb1021d3132ffe64cfff4f" + integrity sha1-hCWbNqK7uNPW6xAh0xMv/mTP/08= + dependencies: + bluebird "^3.3.5" + fs-extra "^0.30.0" + ramda "^0.21.0" + file-uri-to-path@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== -fileset@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= +filelist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.1.tgz#f10d1a3ae86c1694808e8f20906f43d4c9132dbb" + integrity sha512-8zSK6Nu0DQIC08mUC46sWGXi+q3GGpKydAG36k+JDba6VRpkevvOWUW5a/PhShij4+vHT9M+ghgG7eM+a9JDUQ== dependencies: - glob "^7.0.3" - minimatch "^3.0.3" + minimatch "^3.0.4" + +filesize@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.0.1.tgz#f850b509909c7c86f7e450ea19006c31c2ed3d2f" + integrity sha512-u4AYWPgbI5GBhs6id1KdImZWn5yfyFrrQ8OWZdN7ZMfA8Bf4HcO0BGo9bmUIEV8yrp8I1xVfJ/dn90GtFNNJcg== filesize@^4.1.2: version "4.2.1" @@ -7297,18 +9280,32 @@ find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: make-dir "^2.0.0" pkg-dir "^3.0.0" +find-cache-dir@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" + integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.2" + pkg-dir "^4.1.0" + find-index@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/find-index/-/find-index-1.1.1.tgz#4b221f8d46b7f8bea33d8faed953f3ca7a081cbc" integrity sha512-XYKutXMrIK99YMUPf91KX5QVJoG31/OsgftD6YoTPAObfQIxM4ziA9f0J1AsqKhJmo+IeaIPP0CFopTD4bdUBw== -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + +find-up@4.1.0, find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" + locate-path "^5.0.0" + path-exists "^4.0.0" find-up@^2.1.0: version "2.1.0" @@ -7324,12 +9321,12 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -find-up@^4.0.0, find-up@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: - locate-path "^5.0.0" + locate-path "^6.0.0" path-exists "^4.0.0" find-versions@^3.2.0: @@ -7418,11 +9415,9 @@ flat-cache@^2.0.1: write "1.0.3" flat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.0.tgz#dab7d71d60413becb0ac2de9bf4304495e3af6af" - integrity sha512-6KSMM+cHHzXC/hpldXApL2S8Uz+QZv+tq5o/L0KQYleoG+GcwrnIJhTWC7tCOiKQp8D/fIvryINU1OZCCwevjA== - dependencies: - is-buffer "~2.0.4" + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flatted@^2.0.0: version "2.0.2" @@ -7438,9 +9433,9 @@ flush-write-stream@^1.0.0: readable-stream "^2.3.6" follow-redirects@^1.0.0: - version "1.12.1" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.12.1.tgz#de54a6205311b93d60398ebc01cf7015682312b6" - integrity sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg== + version "1.13.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.0.tgz#b42e8d93a2a7eea5ed88633676d6597bc8e384db" + integrity sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA== for-each@^0.3.3: version "0.3.3" @@ -7459,11 +9454,61 @@ foreach@^2.0.5: resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k= +forever-agent@~0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130" + integrity sha1-bQ4JxJIflKJ/Y9O0nF/v8epMUTA= + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= +fork-ts-checker-webpack-plugin@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.1.tgz#a1642c0d3e65f50c2cc1742e9c0a80f441f86b19" + integrity sha512-DuVkPNrM12jR41KM2e+N+styka0EgLkTnXmNcXdgOM37vtGeY+oCBK/Jx0hzSeEU6memFCtWb4htrHPMDfwwUQ== + dependencies: + babel-code-frame "^6.22.0" + chalk "^2.4.1" + chokidar "^3.3.0" + micromatch "^3.1.10" + minimatch "^3.0.4" + semver "^5.6.0" + tapable "^1.0.0" + worker-rpc "^0.1.0" + +fork-ts-checker-webpack-plugin@^4.1.4: + version "4.1.6" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz#5055c703febcf37fa06405d400c122b905167fc5" + integrity sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw== + dependencies: + "@babel/code-frame" "^7.5.5" + chalk "^2.4.1" + micromatch "^3.1.10" + minimatch "^3.0.4" + semver "^5.6.0" + tapable "^1.0.0" + worker-rpc "^0.1.0" + +form-data@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" + integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +form-data@~0.1.0: + version "0.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-0.1.4.tgz#91abd788aba9702b1aabfa8bc01031a2ac9e3b12" + integrity sha1-kavXiKupcCsaq/qLwBAxoqyeOxI= + dependencies: + async "~0.9.0" + combined-stream "~0.0.4" + mime "~1.2.11" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -7473,6 +9518,11 @@ form-data@~2.3.2: combined-stream "^1.0.6" mime-types "^2.1.12" +format@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b" + integrity sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs= + forwarded@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" @@ -7508,6 +9558,17 @@ fs-extra@^0.24.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" +fs-extra@^0.30.0: + version "0.30.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" + integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A= + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + klaw "^1.0.0" + path-is-absolute "^1.0.0" + rimraf "^2.2.8" + fs-extra@^4.0.2, fs-extra@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" @@ -7575,7 +9636,14 @@ fs-merger@^3.0.1, fs-merger@^3.1.0: rimraf "^2.6.3" walk-sync "^2.0.2" -fs-tree-diff@^0.5.2, fs-tree-diff@^0.5.3, fs-tree-diff@^0.5.4, fs-tree-diff@^0.5.6, fs-tree-diff@^0.5.7: +fs-minipass@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + +fs-tree-diff@^0.5.2, fs-tree-diff@^0.5.3, fs-tree-diff@^0.5.4, fs-tree-diff@^0.5.6: version "0.5.9" resolved "https://registry.yarnpkg.com/fs-tree-diff/-/fs-tree-diff-0.5.9.tgz#a4ec6182c2f5bd80b9b83c8e23e4522e6f5fd946" integrity sha512-872G8ax0kHh01m9n/2KDzgYwouKza0Ad9iFltBpNykvROvf2AGtoOzPJgGx125aolGPER3JuC7uZFrQ7bG1AZw== @@ -7640,31 +9708,40 @@ fsevents@^1.2.7: bindings "^1.5.0" nan "^2.12.1" -fsevents@~2.1.2: +fsevents@^2.1.2, fsevents@~2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== -fstream@^1.0.0, fstream@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.12.tgz#4e8ba8ee2d48be4f7d0de505455548eae5932045" - integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function.prototype.name@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.2.tgz#5cdf79d7c05db401591dfde83e3b70c5123e9a45" + integrity sha512-C8A+LlHBJjB2AdcRPorc5JvJ5VUoWlXdEHLOJdCI7kjHEtGTpHQUiqMvCIKUwIsGwZX2jZJy761AXsn356bJQg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + functions-have-names "^1.2.0" + functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= +functions-have-names@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.1.tgz#a981ac397fa0c9964551402cdc5533d7a4d52f91" + integrity sha512-j48B/ZI7VKs3sgeI2cZp7WXWmZXu7Iq5pl5/vptV5N2mq+DGFuS/ulaDjtaoLpYzuD6u8UgrUKHfgo7fDTSiBA== + +fuse.js@^3.6.1: + version "3.6.1" + resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-3.6.1.tgz#7de85fdd6e1b3377c23ce010892656385fd9b10c" + integrity sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw== + gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -7679,19 +9756,12 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -gaze@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== - dependencies: - globule "^1.0.0" - gensync@^1.0.0-beta.1: version "1.0.0-beta.1" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== -get-caller-file@^2.0.1, get-caller-file@^2.0.5: +get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -7701,6 +9771,11 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" @@ -7724,9 +9799,9 @@ get-stream@^4.0.0: pump "^3.0.0" get-stream@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== dependencies: pump "^3.0.0" @@ -7764,6 +9839,28 @@ git-repo-version@^1.0.2: dependencies: git-repo-info "^1.4.1" +github-slugger@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" + integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== + dependencies: + emoji-regex ">=6.0.0 <=6.1.1" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= + dependencies: + is-glob "^2.0.0" + glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" @@ -7772,13 +9869,25 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" -glob-parent@^5.1.0, glob-parent@~5.1.0: +glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== dependencies: is-glob "^4.0.1" +glob-promise@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/glob-promise/-/glob-promise-3.4.0.tgz#b6b8f084504216f702dc2ce8c9bc9ac8866fdb20" + integrity sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw== + dependencies: + "@types/glob" "*" + +glob-to-regexp@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" + integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= + glob@^5.0.10: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" @@ -7790,7 +9899,7 @@ glob@^5.0.10: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.1: +glob@^7.0.0, glob@^7.0.4, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -7802,6 +9911,13 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.0.4, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, gl once "^1.3.0" path-is-absolute "^1.0.0" +global-modules@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -7822,16 +9938,52 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" -globals@^11.1.0, globals@^11.7.0: +global-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" + integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== + dependencies: + ini "^1.3.5" + kind-of "^6.0.2" + which "^1.3.1" + +global@^4.3.2, global@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" + integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== + dependencies: + min-document "^2.19.0" + process "^0.11.10" + +globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^12.1.0: + version "12.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== + dependencies: + type-fest "^0.8.1" + globals@^9.18.0: version "9.18.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== +globalthis@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.1.tgz#40116f5d9c071f9e8fb0037654df1ab3a83b7ef9" + integrity sha512-mJPRTc/P39NH/iNG4mXa9aIhNymaQikTrnspeCa2ZuJ+mH2QN/rXwtX3XwKrHqWgUQFbNZKtHM105aHzJalElw== + dependencies: + define-properties "^1.1.3" + +globalyzer@^0.1.0: + version "0.1.4" + resolved "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.4.tgz#bc8e273afe1ac7c24eea8def5b802340c5cc534f" + integrity sha512-LeguVWaxgHN0MNbWC6YljNMzHkrCny9fzjmEUdnF1kQ7wATFD1RHFRqA1qxaX2tgxGENlcxjOflopBwj3YZiXA== + globby@10.0.0: version "10.0.0" resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.0.tgz#abfcd0630037ae174a88590132c2f6804e291072" @@ -7846,7 +9998,20 @@ globby@10.0.0: merge2 "^1.2.3" slash "^3.0.0" -globby@^11.0.0, globby@^11.0.1: +globby@8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" + integrity sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w== + dependencies: + array-union "^1.0.1" + dir-glob "2.0.0" + fast-glob "^2.0.2" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + +globby@^11.0.1: version "11.0.1" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357" integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ== @@ -7858,14 +10023,10 @@ globby@^11.0.0, globby@^11.0.1: merge2 "^1.3.0" slash "^3.0.0" -globule@^1.0.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/globule/-/globule-1.3.2.tgz#d8bdd9e9e4eef8f96e245999a5dee7eb5d8529c4" - integrity sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA== - dependencies: - glob "~7.1.1" - lodash "~4.17.10" - minimatch "~3.0.2" +globrex@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" + integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== good-listener@^1.2.2: version "1.2.2" @@ -7897,7 +10058,7 @@ got@^8.0.1: url-parse-lax "^3.0.0" url-to-options "^1.0.1" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -7912,7 +10073,20 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= -handlebars@^4.0.11, handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.7.3, handlebars@^4.7.4: +gud@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" + integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== + +gzip-size@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" + integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== + dependencies: + duplexer "^0.1.1" + pify "^4.0.1" + +handlebars@^4.0.11, handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.7.3: version "4.7.6" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.6.tgz#d4c05c1baf90e9945f77aa68a7a219aa4a7df74e" integrity sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA== @@ -7930,11 +10104,11 @@ har-schema@^2.0.0: integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== dependencies: - ajv "^6.5.5" + ajv "^6.12.3" har-schema "^2.0.0" has-ansi@^2.0.0: @@ -7983,7 +10157,7 @@ has-symbol-support-x@^1.4.1: resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" integrity sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw== -has-symbols@^1.0.0, has-symbols@^1.0.1: +has-symbols@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== @@ -8067,6 +10241,88 @@ hash.js@^1.0.0, hash.js@^1.0.3: inherits "^2.0.3" minimalistic-assert "^1.0.1" +hast-to-hyperscript@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.0.tgz#768fb557765fe28749169c885056417342d71e83" + integrity sha512-NJvMYU3GlMLs7hN3CRbsNlMzusVNkYBogVWDGybsuuVQ336gFLiD+q9qtFZT2meSHzln3pNISZWTASWothMSMg== + dependencies: + "@types/unist" "^2.0.3" + comma-separated-tokens "^1.0.0" + property-information "^5.3.0" + space-separated-tokens "^1.0.0" + style-to-object "^0.3.0" + unist-util-is "^4.0.0" + web-namespaces "^1.0.0" + +hast-util-from-parse5@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-6.0.0.tgz#b38793c81e1a99f5fd592a4a88fc2731dccd0f30" + integrity sha512-3ZYnfKenbbkhhNdmOQqgH10vnvPivTdsOJCri+APn0Kty+nRkDHArnaX9Hiaf8H+Ig+vkNptL+SRY/6RwWJk1Q== + dependencies: + "@types/parse5" "^5.0.0" + ccount "^1.0.0" + hastscript "^5.0.0" + property-information "^5.0.0" + vfile "^4.0.0" + web-namespaces "^1.0.0" + +hast-util-parse-selector@^2.0.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.4.tgz#60c99d0b519e12ab4ed32e58f150ec3f61ed1974" + integrity sha512-gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA== + +hast-util-raw@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-6.0.1.tgz#973b15930b7529a7b66984c98148b46526885977" + integrity sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig== + dependencies: + "@types/hast" "^2.0.0" + hast-util-from-parse5 "^6.0.0" + hast-util-to-parse5 "^6.0.0" + html-void-elements "^1.0.0" + parse5 "^6.0.0" + unist-util-position "^3.0.0" + vfile "^4.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hast-util-to-parse5@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz#1ec44650b631d72952066cea9b1445df699f8479" + integrity sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ== + dependencies: + hast-to-hyperscript "^9.0.0" + property-information "^5.0.0" + web-namespaces "^1.0.0" + xtend "^4.0.0" + zwitch "^1.0.0" + +hastscript@^5.0.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-5.1.2.tgz#bde2c2e56d04c62dd24e8c5df288d050a355fb8a" + integrity sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ== + dependencies: + comma-separated-tokens "^1.0.0" + hast-util-parse-selector "^2.0.0" + property-information "^5.0.0" + space-separated-tokens "^1.0.0" + +hawk@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-1.1.1.tgz#87cd491f9b46e4e2aeaca335416766885d2d1ed9" + integrity sha1-h81JH5tG5OKurKM1QWdmiF0tHtk= + dependencies: + boom "0.4.x" + cryptiles "0.2.x" + hoek "0.9.x" + sntp "0.2.x" + +he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + heimdalljs-fs-monitor@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/heimdalljs-fs-monitor/-/heimdalljs-fs-monitor-0.2.3.tgz#1aedd4b1c61d86c51f6141fb75c5a3350dc41b15" @@ -8102,6 +10358,11 @@ heimdalljs@^0.3.0: dependencies: rsvp "~3.2.1" +highlight.js@~9.15.0, highlight.js@~9.15.1: + version "9.15.10" + resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-9.15.10.tgz#7b18ed75c90348c045eef9ed08ca1319a2219ad2" + integrity sha512-RoV7OkQm0T3os3Dd2VHLNMoaoDVx77Wygln3n9l5YV172XonWG6rgQD3XnF/BuFFZw9A0TJgmMSO8FEWQgvcXw== + hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -8111,6 +10372,23 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" +hoek@0.9.x: + version "0.9.1" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-0.9.1.tgz#3d322462badf07716ea7eb85baf88079cddce505" + integrity sha1-PTIkYrrfB3Fup+uFuviAec3c5QU= + +hoek@4.x.x: + version "4.2.1" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" + integrity sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA== + +hoist-non-react-statics@^3.3.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" + home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -8126,15 +10404,10 @@ homedir-polyfill@^1.0.1: dependencies: parse-passwd "^1.0.0" -hosted-git-info@^2.1.4: - version "2.8.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" - integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== - -hosted-git-info@^3.0.2: - version "3.0.5" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.5.tgz#bea87905ef7317442e8df3087faa3c842397df03" - integrity sha512-i4dpK6xj9BIpVOTboXIlKG9+8HMKggcrMX7WA24xZtKwX0TPelq/rbaS5rCKeNX8sJXZJGdSxpnEGtta+wismQ== +hosted-git-info@^3.0.6: + version "3.0.7" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-3.0.7.tgz#a30727385ea85acfcee94e0aad9e368c792e036c" + integrity sha512-fWqc0IcuXs+BmE9orLDyVykAG9GJtGLGuZAAqgcckPgv5xad4AcXGIv8galtQvlwutxSlaMcdw7BUtq2EIvqCQ== dependencies: lru-cache "^6.0.0" @@ -8145,11 +10418,78 @@ html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" +html-entities@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" + integrity sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA== + html-escaper@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== +html-minifier-terser@^5.0.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" + integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== + dependencies: + camel-case "^4.1.1" + clean-css "^4.2.3" + commander "^4.1.1" + he "^1.2.0" + param-case "^3.0.3" + relateurl "^0.2.7" + terser "^4.6.3" + +html-tags@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" + integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== + +html-void-elements@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-1.0.5.tgz#ce9159494e86d95e45795b166c2021c2cfca4483" + integrity sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w== + +html-webpack-plugin@^4.2.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz#625097650886b97ea5dae331c320e3238f6c121c" + integrity sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw== + dependencies: + "@types/html-minifier-terser" "^5.0.0" + "@types/tapable" "^1.0.5" + "@types/webpack" "^4.41.8" + html-minifier-terser "^5.0.1" + loader-utils "^1.2.3" + lodash "^4.17.15" + pretty-error "^2.1.1" + tapable "^1.1.3" + util.promisify "1.0.0" + +htmlparser2@^3.3.0, htmlparser2@^3.9.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" + integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== + dependencies: + domelementtype "^1.3.1" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^3.1.1" + +htmlparser2@~3.9.2: + version "3.9.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" + integrity sha1-G9+HrMoPP55T+k/M6w9LTLsAszg= + dependencies: + domelementtype "^1.3.0" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^2.0.2" + http-cache-semantics@3.8.1: version "3.8.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" @@ -8201,6 +10541,15 @@ http-proxy@^1.13.1, http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" +http-signature@~0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.10.1.tgz#4fbdac132559aa8323121e540779c0a012b27e66" + integrity sha1-T72sEyVZqoMjEh5UB3nAoBKyfmY= + dependencies: + asn1 "0.1.11" + assert-plus "^0.1.5" + ctype "0.5.3" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -8226,14 +10575,14 @@ human-signals@^1.1.1: integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== husky@^4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/husky/-/husky-4.2.5.tgz#2b4f7622673a71579f901d9885ed448394b5fa36" - integrity sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ== + version "4.3.0" + resolved "https://registry.yarnpkg.com/husky/-/husky-4.3.0.tgz#0b2ec1d66424e9219d359e26a51c58ec5278f0de" + integrity sha512-tTMeLCLqSBqnflBZnlVDhpaIMucSGaYyX6855jM4AguGeWCeSzNdb1mfyWduTZ3pe3SJVvVWGL0jO1iKZVPfTA== dependencies: chalk "^4.0.0" ci-info "^2.0.0" compare-versions "^3.6.0" - cosmiconfig "^6.0.0" + cosmiconfig "^7.0.0" find-versions "^3.2.0" opencollective-postinstall "^2.0.2" pkg-dir "^4.2.0" @@ -8248,6 +10597,13 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" +icss-utils@^4.0.0, icss-utils@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" + integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== + dependencies: + postcss "^7.0.14" + ieee754@^1.1.4: version "1.1.13" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" @@ -8258,6 +10614,11 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= +ignore@^3.3.5: + version "3.3.10" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" + integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== + ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" @@ -8268,7 +10629,27 @@ ignore@^5.1.1, ignore@^5.1.4: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== -import-fresh@^3.0.0, import-fresh@^3.1.0: +immer@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/immer/-/immer-1.10.0.tgz#bad67605ba9c810275d91e1c2a47d4582e98286d" + integrity sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg== + +import-cwd@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" + integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= + dependencies: + import-from "^2.1.0" + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + +import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== @@ -8276,39 +10657,39 @@ import-fresh@^3.0.0, import-fresh@^3.1.0: parent-module "^1.0.0" resolve-from "^4.0.0" +import-from@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" + integrity sha1-M1238qev/VOqpHHUuAId7ja387E= + dependencies: + resolve-from "^3.0.0" + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= -in-publish@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.1.tgz#948b1a535c8030561cea522f73f78f4be357e00c" - integrity sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ== - include-path-searcher@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/include-path-searcher/-/include-path-searcher-0.1.0.tgz#c0cf2ddfa164fb2eae07bc7ca43a7f191cb4d7bd" integrity sha1-wM8t36Fk+y6uB7x8pDp/GRy0170= -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= - dependencies: - repeating "^2.0.0" - indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + indexof@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= -infer-owner@^1.0.3: +infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== @@ -8326,7 +10707,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -8341,7 +10722,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.4: +ini@^1.3.4, ini@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -8357,7 +10738,31 @@ inline-source-map-comment@^1.0.5: sum-up "^1.0.1" xtend "^4.0.0" -inquirer@^6, inquirer@^6.2.2: +inline-style-parser@0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1" + integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q== + +inquirer@7.0.4: + version "7.0.4" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz#99af5bde47153abca23f5c7fc30db247f39da703" + integrity sha512-Bu5Td5+j11sCkqfqmUTiwv+tWisMtP0L7Q8WrqA2C/BbBhy1YTdFrvjjlrKq8oagA/tLQBski2Gcx/Sqyi2qSQ== + dependencies: + ansi-escapes "^4.2.1" + chalk "^2.4.2" + cli-cursor "^3.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" + run-async "^2.2.0" + rxjs "^6.5.3" + string-width "^4.1.0" + strip-ansi "^5.1.0" + through "^2.3.6" + +inquirer@^6: version "6.5.2" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== @@ -8376,10 +10781,10 @@ inquirer@^6, inquirer@^6.2.2: strip-ansi "^5.1.0" through "^2.3.6" -inquirer@^7.0.1: - version "7.3.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.0.tgz#aa3e7cb0c18a410c3c16cdd2bc9dcbe83c4d333e" - integrity sha512-K+LZp6L/6eE5swqIcVXrxl21aGDU4S50gKH0/d96OMQnSBCyGyZl/oZhbkVmdp5sBoINHd4xZvFSARh2dk6DWA== +inquirer@^7.0.0, inquirer@^7.0.1: + version "7.3.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" + integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== dependencies: ansi-escapes "^4.2.1" chalk "^4.1.0" @@ -8387,7 +10792,7 @@ inquirer@^7.0.1: cli-width "^3.0.0" external-editor "^3.0.3" figures "^3.0.0" - lodash "^4.17.15" + lodash "^4.17.19" mute-stream "0.0.8" run-async "^2.4.0" rxjs "^6.6.0" @@ -8395,6 +10800,25 @@ inquirer@^7.0.1: strip-ansi "^6.0.0" through "^2.3.6" +internal-slot@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz#9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3" + integrity sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g== + dependencies: + es-abstract "^1.17.0-next.1" + has "^1.0.3" + side-channel "^1.0.2" + +interpret@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== + +interpret@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== + into-stream@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6" @@ -8403,18 +10827,28 @@ into-stream@^3.1.0: from2 "^2.1.1" p-is-promise "^1.1.0" -invariant@^2.2.2, invariant@^2.2.4: +invariant@^2.2.2, invariant@^2.2.3, invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== dependencies: loose-envify "^1.0.0" +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== +is-absolute-url@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" + integrity sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q== + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -8429,6 +10863,19 @@ is-accessor-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" +is-alphabetical@1.0.4, is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-arguments@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" @@ -8463,20 +10910,34 @@ is-boolean-object@^1.0.0: resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.1.tgz#10edc0900dd127697a92f6f9807c7617d68ac48e" integrity sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ== -is-buffer@^1.1.5: +is-buffer@^1.1.4, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-buffer@~2.0.4: +is-buffer@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== -is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" - integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.2.tgz#c7c6715cd22d4ddb48d3e19970223aceabb080d9" + integrity sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.0.0.tgz#58531b70aed1db7c0e8d4eb1a0a2d1ddd64bd12d" + integrity sha512-jq1AH6C8MuteOoBPwkxHafmByhL9j5q4OaPGdbuD+ZtQJVzH+i6E3BJDQcBA09k57i2Hh2yQbEG8yObZ0jdlWw== + dependencies: + has "^1.0.3" is-data-descriptor@^0.1.4: version "0.1.4" @@ -8497,6 +10958,11 @@ is-date-object@^1.0.1, is-date-object@^1.0.2: resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== +is-decimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -8515,6 +10981,24 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-data-descriptor "^1.0.0" kind-of "^6.0.2" +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + +is-docker@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" + integrity sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw== + +is-dom@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-dom/-/is-dom-1.1.0.tgz#af1fced292742443bb59ca3f76ab5e80907b4e8a" + integrity sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ== + dependencies: + is-object "^1.0.1" + is-window "^1.0.2" + is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -8527,6 +11011,11 @@ is-extendable@^1.0.1: dependencies: is-plain-object "^2.0.4" +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= + is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -8554,11 +11043,23 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-function@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.2.tgz#4f097f30abf6efadac9833b17ca5dc03f8144e08" + integrity sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ== + is-git-url@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-git-url/-/is-git-url-1.0.0.tgz#53f684cd143285b52c3244b4e6f28253527af66b" integrity sha1-U/aEzRQyhbUsMkS05vKCU1J69ms= +is-glob@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= + dependencies: + is-extglob "^1.0.0" + is-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -8573,6 +11074,11 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + is-interactive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" @@ -8583,6 +11089,11 @@ is-map@^2.0.1: resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.1.tgz#520dafc4307bb8ebc33b813de5ce7c9400d644a1" integrity sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw== +is-negative-zero@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.0.tgz#9553b121b0fac28869da9ed459e20c7543788461" + integrity sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE= + is-number-object@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz#36ac95e741cf18b283fc1ddf5e83da798e3ec197" @@ -8615,16 +11126,23 @@ is-object@^1.0.1: resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470" integrity sha1-iVJojF7C/9awPsyF52ngKQMINHA= -is-plain-obj@2.1.0: +is-plain-obj@2.1.0, is-plain-obj@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== -is-plain-obj@^1.0.0, is-plain-obj@^1.1: +is-plain-obj@^1.0.0, is-plain-obj@^1.1, is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= +is-plain-object@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-3.0.0.tgz#47bfc5da1b5d50d64110806c199359482e75a928" + integrity sha512-tZIpofR+P05k8Aocp7UI/2UTa9lTJSebCXpFFoR9aibpokDj/uXBsJ8luUu0tTVYKkMU6URDUuOfJZ7koewXvg== + dependencies: + isobject "^4.0.0" + is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -8632,10 +11150,10 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-regex@^1.0.5, is-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" - integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== +is-regex@^1.0.4, is-regex@^1.0.5, is-regex@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.1.tgz#c6f98aacc546f6cec5468a07b7b153ab564a57b9" + integrity sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg== dependencies: has-symbols "^1.0.1" @@ -8649,6 +11167,11 @@ is-retry-allowed@^1.1.0: resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== +is-root@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" + integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== + is-set@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.1.tgz#d1604afdab1724986d30091575f54945da7e5f43" @@ -8669,7 +11192,7 @@ is-string@^1.0.4, is-string@^1.0.5: resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz#40493ed198ef3ff477b8c7f92f644ec82a5cd3a6" integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== -is-symbol@^1.0.2: +is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== @@ -8698,16 +11221,6 @@ is-typedarray@^1.0.0, is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-valid-glob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" - integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= - is-weakmap@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" @@ -8718,16 +11231,38 @@ is-weakset@^2.0.1: resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.1.tgz#e9a0af88dbd751589f5e50d80f4c98b780884f83" integrity sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw== +is-whitespace-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz#0858edd94a95594c7c9dd0b5c174ec6e45ee4aa7" + integrity sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w== + +is-window@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" + integrity sha1-LIlspT25feRdPDMTOmXYyfVjSA0= + is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== +is-word-character@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" + integrity sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA== + is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= +is-wsl@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -8753,6 +11288,13 @@ isbinaryfile@^4.0.6: resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.6.tgz#edcb62b224e2b4710830b67498c8e4e5a4d2610b" integrity sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg== +isemail@3.x.x: + version "3.2.0" + resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" + integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== + dependencies: + punycode "2.x.x" + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -8770,81 +11312,47 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= +isobject@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-4.0.0.tgz#3f1c9155e73b192022a80819bacd0343711697b0" + integrity sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA== + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -istanbul-api@^2.1.6: - version "2.1.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-2.1.7.tgz#82786b79f3b93d481349c7aa1e2c2b4eeb48c8a8" - integrity sha512-LYTOa2UrYFyJ/aSczZi/6lBykVMjCCvUmT64gOe+jPZFy4w6FYfPGqFT2IiQ2BxVHHDOvCD7qrIXb0EOh4uGWw== +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + +istanbul-lib-instrument@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== dependencies: - async "^2.6.2" - compare-versions "^3.4.0" - fileset "^2.0.3" - istanbul-lib-coverage "^2.0.5" - istanbul-lib-hook "^2.0.7" - istanbul-lib-instrument "^3.3.0" - istanbul-lib-report "^2.0.8" - istanbul-lib-source-maps "^3.0.6" - istanbul-reports "^2.2.5" - js-yaml "^3.13.1" - make-dir "^2.1.0" - minimatch "^3.0.4" - once "^1.4.0" + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" -istanbul-lib-coverage@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" - integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== - -istanbul-lib-hook@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" - integrity sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA== +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== dependencies: - append-transform "^1.0.0" + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" -istanbul-lib-instrument@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" - integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== - dependencies: - "@babel/generator" "^7.4.0" - "@babel/parser" "^7.4.3" - "@babel/template" "^7.4.0" - "@babel/traverse" "^7.4.3" - "@babel/types" "^7.4.0" - istanbul-lib-coverage "^2.0.5" - semver "^6.0.0" - -istanbul-lib-report@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" - integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== - dependencies: - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - supports-color "^6.1.0" - -istanbul-lib-source-maps@^3.0.6: - version "3.0.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" - integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^2.0.5" - make-dir "^2.1.0" - rimraf "^2.6.3" - source-map "^0.6.1" - -istanbul-reports@^2.2.5: - version "2.2.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz#5d939f6237d7b48393cc0959eab40cd4fd056931" - integrity sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg== +istanbul-reports@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== dependencies: html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" istextorbinary@2.1.0: version "2.1.0" @@ -8872,6 +11380,19 @@ isurl@^1.0.0-alpha5: has-to-string-tag-x "^1.2.0" is-object "^1.0.1" +iterate-iterator@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/iterate-iterator/-/iterate-iterator-1.0.1.tgz#1693a768c1ddd79c969051459453f082fe82e9f6" + integrity sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw== + +iterate-value@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/iterate-value/-/iterate-value-1.0.2.tgz#935115bd37d006a52046535ebc8d07e9c9337f57" + integrity sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ== + dependencies: + es-get-iterator "^1.0.2" + iterate-iterator "^1.0.1" + ivy-codemirror@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ivy-codemirror/-/ivy-codemirror-2.1.0.tgz#c06f1606c375610bf62b007a21a9e63f5854175e" @@ -8881,20 +11402,89 @@ ivy-codemirror@^2.1.0: ember-cli-babel "^6.0.0" ember-cli-node-assets "^0.2.2" +jake@^10.6.1: + version "10.8.2" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.2.tgz#ebc9de8558160a66d82d0eadc6a2e58fbc500a7b" + integrity sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A== + dependencies: + async "0.9.x" + chalk "^2.4.2" + filelist "^1.0.1" + minimatch "^3.0.4" + +jest-haste-map@^26.6.1: + version "26.6.1" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.1.tgz#97e96f5fd7576d980307fbe6160b10c016b543d4" + integrity sha512-9kPafkv0nX6ta1PrshnkiyhhoQoFWncrU/uUBt3/AP1r78WSCU5iLceYRTwDvJl67H3RrXqSlSVDDa/AsUB7OQ== + dependencies: + "@jest/types" "^26.6.1" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.5.0" + jest-util "^26.6.1" + jest-worker "^26.6.1" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-serializer@^26.5.0: + version "26.5.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.5.0.tgz#f5425cc4c5f6b4b355f854b5f0f23ec6b962bc13" + integrity sha512-+h3Gf5CDRlSLdgTv7y0vPIAoLgX/SI7T4v6hy+TEXMgYbv+ztzbg5PSN6mUXAT/hXYHvZRWm+MaObVfqkhCGxA== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-util@^26.6.1: + version "26.6.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.1.tgz#4cc0d09ec57f28d12d053887eec5dc976a352e9b" + integrity sha512-xCLZUqVoqhquyPLuDXmH7ogceGctbW8SMyQVjD9o+1+NPWI7t0vO08udcFLVPLgKWcvc+zotaUv/RuaR6l8HIA== + dependencies: + "@jest/types" "^26.6.1" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-worker@^26.2.1, jest-worker@^26.6.1: + version "26.6.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.1.tgz#c2ae8cde6802cc14056043f997469ec170d9c32a" + integrity sha512-R5IE3qSGz+QynJx8y+ICEkdI2OJ3RJjRQVEyCcFAd3yVhQSEtquziPO29Mlzgn07LOVE8u8jhJ1FqcwegiXWOw== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +joi@^12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/joi/-/joi-12.0.0.tgz#46f55e68f4d9628f01bbb695902c8b307ad8d33a" + integrity sha512-z0FNlV4NGgjQN1fdtHYXf5kmgludM65fG/JlXzU6+rwkt9U5UWuXVYnXa2FpK0u6+qBuCmrm5byPNuiiddAHvQ== + dependencies: + hoek "4.x.x" + isemail "3.x.x" + topo "2.x.x" + jquery@^3.4.1, jquery@^3.5.0: version "3.5.1" resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.5.1.tgz#d7b4d08e1bfdb86ad2f1a3d039ea17304717abb5" integrity sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg== -js-base64@^2.1.8: - version "2.6.3" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.6.3.tgz#7afdb9b57aa7717e15d370b66e8f36a9cb835dc3" - integrity sha512-fiUvdfCaAXoQTHdKMgTvg6IkecXDcVz6V5rlftUTclF9IKBjMizvSdQaCl/z/6TApDeby5NL+axYou3i0mu1Pg== - -js-reporters@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/js-reporters/-/js-reporters-1.2.1.tgz#f88c608e324a3373a95bcc45ad305e5c979c459b" - integrity sha1-+IxgjjJKM3OpW8xFrTBeXJecRZs= +js-reporters@1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/js-reporters/-/js-reporters-1.2.3.tgz#8febcab370539df62e09b95da133da04b11f6168" + integrity sha512-2YzWkHbbRu6LueEs5ZP3P1LqbECvAeUJYrjw3H4y1ofW06hqCS0AbzBtLwbr+Hke51bt9CUepJ/Fj1hlCRIF6A== js-string-escape@^1.0.1: version "1.0.1" @@ -8911,7 +11501,7 @@ js-tokens@^3.0.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= -js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.2.5, js-yaml@^3.2.7: +js-yaml@^3.13.1, js-yaml@^3.2.5, js-yaml@^3.2.7: version "3.14.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== @@ -8975,6 +11565,18 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= +json-api-serializer@^1.11.0: + version "1.15.1" + resolved "https://registry.yarnpkg.com/json-api-serializer/-/json-api-serializer-1.15.1.tgz#241ea66dfc5c629ae46d8315c6ee4232b81bb6b7" + integrity sha512-dp7d/TLWudViXADFnmdiq80krYZ+zA0WeB1771O1Is8HWdeySZofhp/TPWHCzgFPmGkgwI7oTEgjgZ6Dcxr/2w== + dependencies: + into-stream "^3.1.0" + joi "^12.0.0" + lodash "^4.5.1" + stream-to-array "^2.3.0" + through2 "^2.0.3" + unique-stream "^2.2.1" + json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" @@ -8985,6 +11587,11 @@ json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -9007,7 +11614,7 @@ json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.1: +json-stringify-safe@~5.0.0, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= @@ -9024,7 +11631,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2: +json5@^2.1.1, json5@^2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== @@ -9078,9 +11685,9 @@ jsprim@^1.2.2: verror "1.10.0" just-extend@^4.0.2: - version "4.1.0" - resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.1.0.tgz#7278a4027d889601640ee0ce0e5a00b992467da4" - integrity sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA== + version "4.1.1" + resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.1.1.tgz#158f1fdb01f128c411dc8b286a7b4837b3545282" + integrity sha512-aWgeGFW67BP3e5181Ep1Fv2v8z//iBJfrvyTnq8wG86vEESwmonn1zPBJ0VfmT9CJq2FIT0VsETtrNFm2a+SHA== keyv@3.0.0: version "3.0.0" @@ -9113,6 +11720,13 @@ kind-of@^6.0.0, kind-of@^6.0.2: resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== +klaw@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" + integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= + optionalDependencies: + graceful-fs "^4.1.9" + layout-bin-packer@^1.4.0: version "1.5.0" resolved "https://registry.yarnpkg.com/layout-bin-packer/-/layout-bin-packer-1.5.0.tgz#2e950456083621fe01f82007d896294f5e31e89c" @@ -9120,6 +11734,17 @@ layout-bin-packer@^1.4.0: dependencies: ember-cli-babel "^6.8.2" +lazy-universal-dotenv@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz#a6c8938414bca426ab8c9463940da451a911db38" + integrity sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ== + dependencies: + "@babel/runtime" "^7.5.0" + app-root-dir "^1.0.2" + core-js "^3.0.4" + dotenv "^8.0.0" + dotenv-expand "^5.1.0" + leek@0.0.24: version "0.0.24" resolved "https://registry.yarnpkg.com/leek/-/leek-0.0.24.tgz#e400e57f0e60d8ef2bd4d068dc428a54345dbcda" @@ -9129,19 +11754,15 @@ leek@0.0.24: lodash.assign "^3.2.0" rsvp "^3.0.21" -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - -levenary@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" - integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: - leven "^3.1.0" + prelude-ls "^1.2.1" + type-check "~0.4.0" -levn@^0.3.0, levn@~0.3.0: +levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= @@ -9168,20 +11789,27 @@ linkify-it@^3.0.1: dependencies: uc.micro "^1.0.1" -lint-staged@^10.2.11: - version "10.2.11" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.2.11.tgz#713c80877f2dc8b609b05bc59020234e766c9720" - integrity sha512-LRRrSogzbixYaZItE2APaS4l2eJMjjf5MbclRZpLJtcQJShcvUzKXsNeZgsLIZ0H0+fg2tL4B59fU9wHIHtFIA== +linkify-it@~1.2.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-1.2.4.tgz#0773526c317c8fd13bd534ee1d180ff88abf881a" + integrity sha1-B3NSbDF8j9E71TTuHRgP+Iq/iBo= dependencies: - chalk "^4.0.0" - cli-truncate "2.1.0" - commander "^5.1.0" - cosmiconfig "^6.0.0" + uc.micro "^1.0.1" + +lint-staged@^10.2.11: + version "10.4.2" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.4.2.tgz#9fee4635c4b5ddb845746f237c6d43494ccd21c1" + integrity sha512-OLCA9K1hS+Sl179SO6kX0JtnsaKj/MZalEhUj5yAgXsb63qPI/Gfn6Ua1KuZdbfkZNEu3/n5C/obYCu70IMt9g== + dependencies: + chalk "^4.1.0" + cli-truncate "^2.1.0" + commander "^6.0.0" + cosmiconfig "^7.0.0" debug "^4.1.1" dedent "^0.7.0" - enquirer "^2.3.5" - execa "^4.0.1" - listr2 "^2.1.0" + enquirer "^2.3.6" + execa "^4.0.3" + listr2 "^2.6.0" log-symbols "^4.0.0" micromatch "^4.0.2" normalize-path "^3.0.0" @@ -9189,18 +11817,18 @@ lint-staged@^10.2.11: string-argv "0.3.1" stringify-object "^3.3.0" -listr2@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-2.2.0.tgz#cb88631258abc578c7fb64e590fe5742f28e4aac" - integrity sha512-Q8qbd7rgmEwDo1nSyHaWQeztfGsdL6rb4uh7BA+Q80AZiDET5rVntiU1+13mu2ZTDVaBVbvAD1Db11rnu3l9sg== +listr2@^2.6.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-2.6.2.tgz#4912eb01e1e2dd72ec37f3895a56bf2622d6f36a" + integrity sha512-6x6pKEMs8DSIpA/tixiYY2m/GcbgMplMVmhQAaLFxEtNSKLeWTGjtmU57xvv6QCm2XcqzyNXL/cTSVf4IChCRA== dependencies: - chalk "^4.0.0" + chalk "^4.1.0" cli-truncate "^2.1.0" figures "^3.2.0" indent-string "^4.0.0" log-update "^4.0.0" p-map "^4.0.0" - rxjs "^6.5.5" + rxjs "^6.6.2" through "^2.3.8" livereload-js@^2.3.0: @@ -9208,33 +11836,30 @@ livereload-js@^2.3.0: resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.4.0.tgz#447c31cf1ea9ab52fc20db615c5ddf678f78009c" integrity sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw== -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" - integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - -loader-runner@^2.3.0: +loader-runner@^2.3.0, loader-runner@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== -loader-utils@^1.1.0, loader-utils@^1.4.0: +loader-utils@1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" + integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== + dependencies: + big.js "^5.2.2" + emojis-list "^2.0.0" + json5 "^1.0.1" + +loader-utils@2.0.0, loader-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" + integrity sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + +loader-utils@^1.1.0, loader-utils@^1.2.3, loader-utils@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== @@ -9271,6 +11896,13 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" @@ -9345,11 +11977,6 @@ lodash.clonedeep@^4.4.1: resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= -lodash.concat@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.concat/-/lodash.concat-4.5.0.tgz#b053ae02e4a8008582e7256b9d02bda6d0380395" - integrity sha1-sFOuAuSoAIWC5yVrnQK9ptA4A5U= - lodash.debounce@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-3.1.1.tgz#812211c378a94cc29d5aa4e3346cf0bfce3a7df5" @@ -9439,7 +12066,7 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash.uniq@^4.2.0: +lodash.uniq@4.5.0, lodash.uniq@^4.2.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= @@ -9449,12 +12076,7 @@ lodash.uniqby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" integrity sha1-2ZwHpmnp5tJOE2Lf4mbGdhavEwI= -lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.13, lodash@^4.17.15, lodash@^4.5.1, lodash@~4.17.10: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -lodash@^4.17.14, lodash@^4.17.19, lodash@^4.17.4: +lodash@^4.0.0, lodash@^4.0.1, lodash@^4.15.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.5.1: version "4.17.20" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== @@ -9466,13 +12088,6 @@ log-symbols@^2.2.0: dependencies: chalk "^2.0.1" -log-symbols@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" - integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== - dependencies: - chalk "^2.4.2" - log-symbols@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" @@ -9490,21 +12105,13 @@ log-update@^4.0.0: slice-ansi "^4.0.0" wrap-ansi "^6.2.0" -loose-envify@^1.0.0: +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - lower-case@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" @@ -9522,13 +12129,13 @@ lowercase-keys@^1.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== -lru-cache@^4.0.1: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== +lowlight@1.12.1: + version "1.12.1" + resolved "https://registry.yarnpkg.com/lowlight/-/lowlight-1.12.1.tgz#014acf8dd73a370e02ff1cc61debcde3bb1681eb" + integrity sha512-OqaVxMGIESnawn+TU/QMV5BJLbUghUfjDWPAtFqDYDmDtr4FnB+op8xM+pR7nKlauHNUHXGt0VgWatFB8voS5w== dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" + fault "^1.0.2" + highlight.js "~9.15.0" lru-cache@^5.1.1: version "5.1.1" @@ -9552,7 +12159,7 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0: +make-dir@^3.0.0, make-dir@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -9571,10 +12178,10 @@ map-cache@^0.2.2: resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= -map-obj@^1.0.0, map-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= +map-or-similar@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/map-or-similar/-/map-or-similar-1.5.0.tgz#6de2653174adfb5d9edc33c69d3e92a1b76faf08" + integrity sha1-beJlMXSt+12e3DPGnT6Sobdvrwg= map-visit@^1.0.0: version "1.0.0" @@ -9583,6 +12190,11 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" +markdown-escapes@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" + integrity sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg== + markdown-it-terminal@0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/markdown-it-terminal/-/markdown-it-terminal-0.2.1.tgz#670fd5ea824a7dcaa1591dcbeef28bf70aff1705" @@ -9605,6 +12217,17 @@ markdown-it@^11.0.0: mdurl "^1.0.1" uc.micro "^1.0.5" +markdown-it@^4.3.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-4.4.0.tgz#3df373dbea587a9a7fef3e56311b68908f75c414" + integrity sha1-PfNz2+pYepp/7z5WMRtokI91xBQ= + dependencies: + argparse "~1.0.2" + entities "~1.1.1" + linkify-it "~1.2.0" + mdurl "~1.0.0" + uc.micro "^1.0.0" + markdown-it@^8.3.1: version "8.4.2" resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" @@ -9616,6 +12239,14 @@ markdown-it@^8.3.1: mdurl "^1.0.1" uc.micro "^1.0.5" +markdown-to-jsx@^6.11.4: + version "6.11.4" + resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-6.11.4.tgz#b4528b1ab668aef7fe61c1535c27e837819392c5" + integrity sha512-3lRCD5Sh+tfA52iGgfs/XZiw33f7fFX9Bn55aNnVNUd2GzLDkOWyKYYD8Yju2B1Vn+feiEdgJs8T6Tg0xNokPw== + dependencies: + prop-types "^15.6.2" + unquote "^1.1.0" + matcher-collection@^1.0.0, matcher-collection@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/matcher-collection/-/matcher-collection-1.1.2.tgz#1076f506f10ca85897b53d14ef54f90a5c426838" @@ -9631,12 +12262,10 @@ matcher-collection@^2.0.0, matcher-collection@^2.0.1: "@types/minimatch" "^3.0.3" minimatch "^3.0.2" -md5-hex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-2.0.0.tgz#d0588e9f1c74954492ecd24ac0ac6ce997d92e33" - integrity sha1-0FiOnxx0lUSS7NJKwKxs6ZfZLjM= - dependencies: - md5-o-matic "^0.1.1" +material-colors@^1.2.1: + version "1.2.6" + resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.6.tgz#6d1958871126992ceecc72f4bcc4d8f010865f46" + integrity sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg== md5-hex@^3.0.1: version "3.0.1" @@ -9645,11 +12274,6 @@ md5-hex@^3.0.1: dependencies: blueimp-md5 "^2.10.0" -md5-o-matic@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/md5-o-matic/-/md5-o-matic-0.1.1.tgz#822bccd65e117c514fab176b25945d54100a03c3" - integrity sha1-givM1l4RfFFPqxdrJZRdVBAKA8M= - md5.js@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -9659,7 +12283,52 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" -mdurl@^1.0.1: +mdast-squeeze-paragraphs@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz#7c4c114679c3bee27ef10b58e2e015be79f1ef97" + integrity sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ== + dependencies: + unist-util-remove "^2.0.0" + +mdast-util-definitions@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-2.0.1.tgz#2c931d8665a96670639f17f98e32c3afcfee25f3" + integrity sha512-Co+DQ6oZlUzvUR7JCpP249PcexxygiaKk9axJh+eRzHDZJk2julbIdKB4PXHVxdBuLzvJ1Izb+YDpj2deGMOuA== + dependencies: + unist-util-visit "^2.0.0" + +mdast-util-definitions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-3.0.1.tgz#06af6c49865fc63d6d7d30125569e2f7ae3d0a86" + integrity sha512-BAv2iUm/e6IK/b2/t+Fx69EL/AGcq/IG2S+HxHjDJGfLJtd6i9SZUS76aC9cig+IEucsqxKTR0ot3m933R3iuA== + dependencies: + unist-util-visit "^2.0.0" + +mdast-util-to-hast@9.1.1: + version "9.1.1" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-9.1.1.tgz#953ff12aed57464b11d7e5549a45913e561909fa" + integrity sha512-vpMWKFKM2mnle+YbNgDXxx95vv0CoLU0v/l3F5oFAG5DV7qwkZVWA206LsAdOnEVyf5vQcLnb3cWJywu7mUxsQ== + dependencies: + "@types/mdast" "^3.0.0" + "@types/unist" "^2.0.3" + mdast-util-definitions "^3.0.0" + mdurl "^1.0.0" + unist-builder "^2.0.0" + unist-util-generated "^1.0.0" + unist-util-position "^3.0.0" + unist-util-visit "^2.0.0" + +mdast-util-to-string@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" + integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== + +mdn-links@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/mdn-links/-/mdn-links-0.1.0.tgz#e24c83b97cb4c5886cc39f2f780705fbfe273aa5" + integrity sha1-4kyDuXy0xYhsw58veAcF+/4nOqU= + +mdurl@^1.0.0, mdurl@^1.0.1, mdurl@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= @@ -9669,18 +12338,25 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= -memory-fs@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== +memoizerific@^1.11.3: + version "1.11.3" + resolved "https://registry.yarnpkg.com/memoizerific/-/memoizerific-1.11.3.tgz#7c87a4646444c32d75438570905f2dbd1b1a805a" + integrity sha1-fIekZGREwy11Q4VwkF8tvRsagFo= + dependencies: + map-or-similar "^1.5.0" + +memory-fs@^0.4.1, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= dependencies: errno "^0.1.3" readable-stream "^2.0.1" -memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= +memory-fs@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== dependencies: errno "^0.1.3" readable-stream "^2.0.1" @@ -9692,22 +12368,6 @@ memory-streams@^0.1.3: dependencies: readable-stream "~1.0.2" -meow@^3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" @@ -9755,6 +12415,11 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= +microevent.ts@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/microevent.ts/-/microevent.ts-0.1.1.tgz#70b09b83f43df5172d0205a63025bce0f7357fa0" + integrity sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g== + micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" @@ -9790,23 +12455,43 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.44.0, "mime-db@>= 1.43.0 < 2": +mime-db@1.44.0: version "1.44.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== -mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.26, mime-types@~2.1.19, mime-types@~2.1.24: +"mime-db@>= 1.43.0 < 2": + version "1.45.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea" + integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w== + +mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.26, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24: version "2.1.27" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== dependencies: mime-db "1.44.0" +mime-types@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce" + integrity sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4= + mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== +mime@^2.4.4: + version "2.4.6" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" + integrity sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA== + +mime@~1.2.11: + version "1.2.11" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.2.11.tgz#58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10" + integrity sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA= + mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" @@ -9822,6 +12507,13 @@ mimic-response@^1.0.0: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + dependencies: + dom-walk "^0.1.0" + minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -9832,7 +12524,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= -"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: +"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -9844,11 +12536,32 @@ minimist@^0.2.1: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.2.1.tgz#827ba4e7593464e7c221e8c5bed930904ee2c455" integrity sha512-GY8fANSrTMfBVfInqJAY41QkOM+upUTytK1jZ0c8+3HdHrJxBJ3rF5i9moClXTE8uUSnUo8cAsCoxDXvSY4DHg== -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5: +minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.2: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + minipass@^2.2.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" @@ -9857,6 +12570,21 @@ minipass@^2.2.0: safe-buffer "^5.1.2" yallist "^3.0.0" +minipass@^3.0.0, minipass@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + mississippi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" @@ -9881,17 +12609,22 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.0: +mkdirp@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" + integrity sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc= + +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.0: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== dependencies: minimist "^1.2.5" -mkdirp@^0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.5.tgz#de3e5f8961c88c787ee1368df849ac4413eca8d7" - integrity sha1-3j5fiWHIjHh+4TaN+EmsRBPsqNc= +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== mktemp@~0.4.0: version "0.4.0" @@ -9943,7 +12676,7 @@ ms@2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== -ms@^2.1.1: +ms@2.1.2, ms@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== @@ -9963,10 +12696,10 @@ mute-stream@0.0.8: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.12.1, nan@^2.13.2: - version "2.14.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" - integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== +nan@^2.12.1: + version "2.14.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" + integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== nanomatch@^1.2.9: version "1.2.13" @@ -9995,10 +12728,10 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -neo-async@^2.5.0, neo-async@^2.6.0: - version "2.6.1" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== +neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== ngraph.events@^1.2.1: version "1.2.1" @@ -10017,7 +12750,7 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -nise@^4.0.1: +nise@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/nise/-/nise-4.0.4.tgz#d73dea3e5731e6561992b8f570be9e363c4512dd" integrity sha512-bTTRUNlemx6deJa+ZyoCUTRvH3liK5+N6VQZ4NIw90AgDXY6iPnsqplNFf6STcj+ePk0H/xqxnP75Lr0J0Fq3A== @@ -10043,30 +12776,17 @@ node-dir@^0.1.17: dependencies: minimatch "^3.0.2" -node-gyp@^3.8.0: - version "3.8.0" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" - integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== - dependencies: - fstream "^1.0.0" - glob "^7.0.3" - graceful-fs "^4.1.2" - mkdirp "^0.5.0" - nopt "2 || 3" - npmlog "0 || 1 || 2 || 3 || 4" - osenv "0" - request "^2.87.0" - rimraf "2" - semver "~5.3.0" - tar "^2.0.0" - which "1" +node-fetch@^2.6.0: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= -node-libs-browser@^2.0.0: +node-libs-browser@^2.0.0, node-libs-browser@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== @@ -10116,38 +12836,20 @@ node-notifier@^5.0.1: shellwords "^0.1.1" which "^1.3.0" -node-releases@^1.1.58: - version "1.1.59" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.59.tgz#4d648330641cec704bff10f8e4fe28e453ab8e8e" - integrity sha512-H3JrdUczbdiwxN5FuJPyCHnGHIFqQ0wWxo+9j1kAXAzqNMAHlo+4I/sYYxpyK0irQ73HgdiyzD32oqQDcU2Osw== +node-releases@^1.1.52, node-releases@^1.1.61: + version "1.1.64" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.64.tgz#71b4ae988e9b1dd7c1ffce58dd9e561752dfebc5" + integrity sha512-Iec8O9166/x2HRMJyLLLWkd0sFFLrFNy+Xf+JQfSQsdBJzPcHpNl3JQ9gD4j+aJxmCa25jNsIbM4bmACtSbkSg== -node-sass@^4.9.3: - version "4.14.1" - resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.14.1.tgz#99c87ec2efb7047ed638fb4c9db7f3a42e2217b5" - integrity sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g== - dependencies: - async-foreach "^0.1.3" - chalk "^1.1.1" - cross-spawn "^3.0.0" - gaze "^1.0.0" - get-stdin "^4.0.1" - glob "^7.0.3" - in-publish "^2.0.0" - lodash "^4.17.15" - meow "^3.7.0" - mkdirp "^0.5.1" - nan "^2.13.2" - node-gyp "^3.8.0" - npmlog "^4.0.0" - request "^2.88.0" - sass-graph "2.2.5" - stdout-stream "^1.4.0" - "true-case-path" "^1.0.2" +node-uuid@~1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" + integrity sha1-sEDrCSOWivq/jTL7HxfxFn/auQc= -node-watch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/node-watch/-/node-watch-0.6.1.tgz#b9874111ce9f5841b1c7596120206c7b825be0e9" - integrity sha512-gwQiR7weFRV8mAtT0x0kXkZ18dfRLB45xH7q0hCOVQMLfLb2f1ZaSvR57q4/b/Vj6B0RwMNJYbvb69e1yM7qEA== +node-watch@0.6.4: + version "0.6.4" + resolved "https://registry.yarnpkg.com/node-watch/-/node-watch-0.6.4.tgz#50e564046eb7be15151c25f9c5aac4b5f495c291" + integrity sha512-cI6CHzivIFESe8djiK3Wh90CtWQBxLwMem8x8S+2GSvCvFgoMuOKVlfJtQ/2v3Afg3wOnHl/+tXotEs8z5vOrg== nomnom@^1.5.x: version "1.8.1" @@ -10157,23 +12859,13 @@ nomnom@^1.5.x: chalk "~0.4.0" underscore "~1.6.0" -"nopt@2 || 3", nopt@^3.0.6: +nopt@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= dependencies: abbrev "1" -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: - version "2.5.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== - dependencies: - hosted-git-info "^2.1.4" - resolve "^1.10.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" @@ -10206,11 +12898,11 @@ npm-git-info@^1.0.3: integrity sha1-qTPELsMh6A02RuDW6ESv6UYw4dU= npm-package-arg@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.0.1.tgz#9d76f8d7667b2373ffda60bb801a27ef71e3e270" - integrity sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ== + version "8.1.0" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.0.tgz#b5f6319418c3246a1c38e1a8fbaa06231bc5308f" + integrity sha512-/ep6QDxBkm9HvOhOg0heitSd7JHA1U7y1qhhlRlteYYAi9Pdb/ZV7FW5aHpkrpM8+P+4p/jjR8zCyKPBMBjSig== dependencies: - hosted-git-info "^3.0.2" + hosted-git-info "^3.0.6" semver "^7.0.0" validate-npm-package-name "^3.0.0" @@ -10235,7 +12927,7 @@ npm-run-path@^4.0.0: dependencies: path-key "^3.0.0" -"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.1.2: +npmlog@^4.0.0, npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -10245,6 +12937,13 @@ npm-run-path@^4.0.0: gauge "~2.7.3" set-blocking "~2.0.0" +nth-check@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" + integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== + dependencies: + boolbase "~1.0.0" + num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" @@ -10260,12 +12959,17 @@ nwsapi@^2.0.9: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== +oauth-sign@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.3.0.tgz#cb540f93bb2b22a7d5941691a288d60e8ea9386e" + integrity sha1-y1QPk7srIqfVlBaRoojWDo6pOG4= + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== -object-assign@4.1.1, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: +object-assign@4.1.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= @@ -10294,20 +12998,20 @@ object-hash@^1.3.1: resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz#fde452098a951cb145f039bb7d455449ddc126df" integrity sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA== -object-inspect@^1.7.0: +object-inspect@^1.7.0, object-inspect@^1.8.0: version "1.8.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== -object-is@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.2.tgz#c5d2e87ff9e119f78b7a088441519e2eec1573b6" - integrity sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ== +object-is@^1.0.1, object-is@^1.1.2, object-is@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81" + integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg== dependencies: define-properties "^1.1.3" - es-abstract "^1.17.5" + es-abstract "^1.18.0-next.1" -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -10319,17 +13023,36 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== +object.assign@^4.1.0, object.assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.1.tgz#303867a666cdd41936ecdedfb1f8f3e32a478cdd" + integrity sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA== dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.0" + has-symbols "^1.0.1" + object-keys "^1.1.1" -object.getownpropertydescriptors@^2.1.0: +object.entries@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.2.tgz#bc73f00acb6b6bb16c203434b10f9a7e797d3add" + integrity sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.5" + has "^1.0.3" + +"object.fromentries@^2.0.0 || ^1.0.0": + version "2.0.2" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz#4a09c9b9bb3843dd0f89acdb517a794d4f355ac9" + integrity sha512-r3ZiBH7MQppDJVLx6fhD618GKNG40CZYH9wgwdhKxBDDbQgjeWGGd4AtkZad84d291YxvWe7bJGuE65Anh0dxQ== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + function-bind "^1.1.1" + has "^1.0.3" + +object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== @@ -10344,6 +13067,16 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" +object.values@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" + integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + function-bind "^1.1.1" + has "^1.0.3" + obliterator@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-1.6.1.tgz#dea03e8ab821f6c4d96a299e17aef6a3af994ef3" @@ -10376,18 +13109,26 @@ onetime@^2.0.0: mimic-fn "^1.0.0" onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" +open@^7.0.2, open@^7.0.3: + version "7.3.0" + resolved "https://registry.yarnpkg.com/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69" + integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw== + dependencies: + is-docker "^2.0.0" + is-wsl "^2.1.1" + opencollective-postinstall@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== -optionator@^0.8.1, optionator@^0.8.2: +optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -10399,6 +13140,18 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" word-wrap "~1.2.3" +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" @@ -10411,16 +13164,16 @@ ora@^3.4.0: strip-ansi "^5.2.0" wcwidth "^1.0.1" -ora@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/ora/-/ora-4.0.4.tgz#e8da697cc5b6a47266655bf68e0fb588d29a545d" - integrity sha512-77iGeVU1cIdRhgFzCK8aw1fbtT1B/iZAvWjS+l/o1x0RShMgxHUZaD2yDpWsNCPwXg9z1ZA78Kbdvr8kBmG/Ww== +ora@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.1.0.tgz#b188cf8cd2d4d9b13fd25383bc3e5cba352c94f8" + integrity sha512-9tXIMPvjZ7hPTbk8DFq1f7Kow/HU/pQYB60JbNq+QnGwcyhWVZaQ4hM9zQDEsPxw/muLpgiHSaumUZxCAmod/w== dependencies: - chalk "^3.0.0" + chalk "^4.1.0" cli-cursor "^3.1.0" - cli-spinners "^2.2.0" + cli-spinners "^2.4.0" is-interactive "^1.0.0" - log-symbols "^3.0.0" + log-symbols "^4.0.0" mute-stream "0.0.8" strip-ansi "^6.0.0" wcwidth "^1.0.1" @@ -10440,7 +13193,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= -osenv@0, osenv@^0.1.3: +osenv@^0.1.3: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -10448,6 +13201,11 @@ osenv@0, osenv@^0.1.3: os-homedir "^1.0.0" os-tmpdir "^1.0.0" +overlayscrollbars@^1.10.2: + version "1.13.0" + resolved "https://registry.yarnpkg.com/overlayscrollbars/-/overlayscrollbars-1.13.0.tgz#1edb436328133b94877b558f77966d5497ca36a7" + integrity sha512-p8oHrMeRAKxXDMPI/EBNITj/zTVHKNnAnM59Im+xnoZUlV07FyTg46wom2286jJlXGGfcPFG/ba5NUiCwWNd4w== + p-cancelable@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0" @@ -10487,6 +13245,13 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" +p-limit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe" + integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg== + dependencies: + p-try "^2.0.0" + p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" @@ -10508,6 +13273,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + p-map@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" @@ -10546,6 +13318,14 @@ parallel-transform@^1.1.0: inherits "^2.0.3" readable-stream "^2.1.5" +param-case@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" + integrity sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA== + dependencies: + dot-case "^3.0.3" + tslib "^1.10.0" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -10554,23 +13334,39 @@ parent-module@^1.0.0: callsites "^3.0.0" parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.5" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" - integrity sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ== + version "5.1.6" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" + integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== dependencies: - asn1.js "^4.0.0" + asn1.js "^5.2.0" browserify-aes "^1.0.0" - create-hash "^1.1.0" evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" safe-buffer "^5.1.1" -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= +parse-entities@^1.1.0, parse-entities@^1.1.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-1.2.2.tgz#c31bf0f653b6661354f8973559cb86dd1d5edf50" + integrity sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg== dependencies: - error-ex "^1.2.0" + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-2.0.0.tgz#53c6eb5b9314a1f4ec99fa0fdf7ce01ecda0cbe8" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" parse-json@^4.0.0: version "4.0.0" @@ -10581,13 +13377,13 @@ parse-json@^4.0.0: json-parse-better-errors "^1.0.1" parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.1.0.tgz#f96088cdf24a8faa9aea9a009f2d9d942c999646" + integrity sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ== dependencies: "@babel/code-frame" "^7.0.0" error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" + json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" parse-passwd@^1.0.0: @@ -10600,6 +13396,18 @@ parse5@5.1.0: resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== +parse5@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" + integrity sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA== + dependencies: + "@types/node" "*" + +parse5@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + parseqs@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" @@ -10607,6 +13415,11 @@ parseqs@0.0.5: dependencies: better-assert "~1.0.0" +parseqs@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" + integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w== + parseuri@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" @@ -10614,11 +13427,24 @@ parseuri@0.0.5: dependencies: better-assert "~1.0.0" -parseurl@~1.3.3: +parseuri@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a" + integrity sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow== + +parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +pascal-case@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" + integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== + dependencies: + no-case "^3.0.3" + tslib "^1.10.0" + pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" @@ -10634,13 +13460,6 @@ path-dirname@^1.0.0: resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -10656,11 +13475,6 @@ path-is-absolute@1.0.1, path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -10705,15 +13519,6 @@ path-to-regexp@^1.7.0: dependencies: isarray "0.0.1" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -10747,11 +13552,6 @@ picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" @@ -10774,7 +13574,7 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= -pirates@^4.0.0: +pirates@^4.0.0, pirates@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== @@ -10788,13 +13588,20 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -pkg-dir@^4.2.0: +pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" +pkg-up@3.1.0, pkg-up@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" + integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== + dependencies: + find-up "^3.0.0" + pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" @@ -10802,13 +13609,6 @@ pkg-up@^2.0.0: dependencies: find-up "^2.1.0" -pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - please-upgrade-node@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" @@ -10821,7 +13621,21 @@ pn@^1.1.0: resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== -popper.js@^1.0.2, popper.js@^1.12.5: +pnp-webpack-plugin@1.6.4: + version "1.6.4" + resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" + integrity sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg== + dependencies: + ts-pnp "^1.1.6" + +polished@^3.4.4: + version "3.6.7" + resolved "https://registry.yarnpkg.com/polished/-/polished-3.6.7.tgz#44cbd0047f3187d83db0c479ef0c7d5583af5fb6" + integrity sha512-b4OViUOihwV0icb9PHmWbR+vPqaSzSAEbgLskvb7ANPATVXGiYv/TQFHQo65S53WU9i5EQ1I03YDOJW7K0bmYg== + dependencies: + "@babel/runtime" "^7.9.2" + +popper.js@^1.0.2, popper.js@^1.12.5, popper.js@^1.14.4, popper.js@^1.14.7: version "1.16.1" resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== @@ -10840,11 +13654,84 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= +postcss-flexbugs-fixes@^4.1.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz#9218a65249f30897deab1033aced8578562a6690" + integrity sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ== + dependencies: + postcss "^7.0.26" + +postcss-load-config@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.2.tgz#c5ea504f2c4aef33c7359a34de3573772ad7502a" + integrity sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw== + dependencies: + cosmiconfig "^5.0.0" + import-cwd "^2.0.0" + +postcss-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" + integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== + dependencies: + loader-utils "^1.1.0" + postcss "^7.0.0" + postcss-load-config "^2.0.0" + schema-utils "^1.0.0" + +postcss-modules-extract-imports@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" + integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== + dependencies: + postcss "^7.0.5" + +postcss-modules-local-by-default@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== + dependencies: + icss-utils "^4.1.1" + postcss "^7.0.32" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" + integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== + dependencies: + postcss "^7.0.6" + postcss-selector-parser "^6.0.0" + +postcss-modules-values@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== + dependencies: + icss-utils "^4.0.0" + postcss "^7.0.6" + +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + postcss-value-parser@^3.2.3: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== +postcss-value-parser@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" + integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + postcss@^6.0.1, postcss@^6.0.17: version "6.0.23" resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" @@ -10854,6 +13741,20 @@ postcss@^6.0.1, postcss@^6.0.17: source-map "^0.6.1" supports-color "^5.4.0" +postcss@^7.0.0, postcss@^7.0.14, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: + version "7.0.35" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" + integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" @@ -10877,11 +13778,43 @@ prettier@^1.10.2: resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== +prettier@~2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" + integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg== + +pretty-error@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" + integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== + dependencies: + lodash "^4.17.20" + renderkid "^2.0.4" + +pretty-hrtime@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" + integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + printf@^0.5.1: version "0.5.3" resolved "https://registry.yarnpkg.com/printf/-/printf-0.5.3.tgz#8b7eec278d886833312238b2bf42b2b6f250880a" integrity sha512-t3lYN6vPU5PZXDiEZZqoyXvN8wCsBfi8gPoxTKo2e5hhV673t/KUh+mfO8P8lCOCDC/BWcOGIxKyebxc5FuqLA== +prismjs@^1.8.4: + version "1.22.0" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.22.0.tgz#73c3400afc58a823dd7eed023f8e1ce9fd8977fa" + integrity sha512-lLJ/Wt9yy0AiSYBf212kK3mM5L8ycwlyTlSxHBAneXLR0nzFMlZ5y7riFPF3E33zXOF2IH95xdY5jIyZbM9z/w== + optionalDependencies: + clipboard "^2.0.0" + +prismjs@~1.17.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.17.1.tgz#e669fcbd4cdd873c35102881c33b14d0d68519be" + integrity sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q== + optionalDependencies: + clipboard "^2.0.0" + private@^0.1.6, private@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" @@ -10926,11 +13859,47 @@ promise-map-series@^0.3.0: resolved "https://registry.yarnpkg.com/promise-map-series/-/promise-map-series-0.3.0.tgz#41873ca3652bb7a042b387d538552da9b576f8a1" integrity sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA== +promise.allsettled@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/promise.allsettled/-/promise.allsettled-1.0.2.tgz#d66f78fbb600e83e863d893e98b3d4376a9c47c9" + integrity sha512-UpcYW5S1RaNKT6pd+s9jp9K9rlQge1UXKskec0j6Mmuq7UJCvlS2J2/s/yuPN8ehftf9HXMxWlKiPbGGUzpoRg== + dependencies: + array.prototype.map "^1.0.1" + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + function-bind "^1.1.1" + iterate-value "^1.0.0" + promise.hash.helper@^1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/promise.hash.helper/-/promise.hash.helper-1.0.7.tgz#2f39d8495df40dcdfbc1d5be9e9e56efeae7f180" integrity sha512-0qhWYyCV9TYDMSooYw1fShIb7R6hsWYja7JLqbeb1MvHqDTvP/uy/R1RsyVqDi6GCiHOI4G5p2Hpr3IA+/l/+Q== +promise.prototype.finally@^3.1.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz#b8af89160c9c673cefe3b4c4435b53cfd0287067" + integrity sha512-A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.0" + function-bind "^1.1.1" + +prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +property-information@^5.0.0, property-information@^5.3.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.6.0.tgz#61675545fb23002f245c6540ec46077d4da3ed69" + integrity sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA== + dependencies: + xtend "^4.0.0" + proxy-addr@~2.0.5: version "2.0.6" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" @@ -10944,12 +13913,7 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.28: +psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== @@ -10996,26 +13960,31 @@ punycode@1.3.2: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= +punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + punycode@^1.2.4: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== -qs@^6.4.0: +qs@^6.4.0, qs@^6.6.0: version "6.9.4" resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.4.tgz#9090b290d1f91728d3c22e54843ca44aea5ab687" integrity sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ== +qs@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-1.0.2.tgz#50a93e2b5af6691c31bcea5dae78ee6ea1903768" + integrity sha1-UKk+K1r2aRwxvOpdrnjubqGQN2g= + qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -11035,7 +14004,7 @@ querystring-es3@^0.2.0: resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= -querystring@0.2.0: +querystring@0.2.0, querystring@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= @@ -11050,23 +14019,27 @@ quick-temp@^0.1.2, quick-temp@^0.1.3, quick-temp@^0.1.5, quick-temp@^0.1.8: underscore.string "~3.3.4" qunit-dom@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/qunit-dom/-/qunit-dom-1.2.0.tgz#464cca19e9976c4cee4b14b06da6645c03026880" - integrity sha512-8UqSimcDIo19nokb3eh+Z5hov07xDeLnwsWAgCYPFGcpUF/eiZAIHbLDPCixH0SM1YqCm4YGCLVCojY6sJD5xQ== + version "1.5.0" + resolved "https://registry.yarnpkg.com/qunit-dom/-/qunit-dom-1.5.0.tgz#f3e062562c18fb354b7657afd31890d89a24691d" + integrity sha512-VTFApYbzcYkL5Zg7XgZMgLgMI9JXEX+lwBS5bFy5hRkIaz9V38q7rN44svxFBNHWs96y3UaFaAYpOEmlQ0j+fw== dependencies: - broccoli-funnel "^3.0.2" + broccoli-funnel "^3.0.3" broccoli-merge-trees "^4.2.0" qunit@^2.9.3: - version "2.10.1" - resolved "https://registry.yarnpkg.com/qunit/-/qunit-2.10.1.tgz#929dbc7cab975dda5537bc6b1321392d061c18ae" - integrity sha512-6ntXpabAW+ycodADqsC2QWPr6xLubag3WBujaAfOlltgwkBVDmM0gkB5dS2Mc4RAszmvtYzyYDSMZX5ibwkNWw== + version "2.11.3" + resolved "https://registry.yarnpkg.com/qunit/-/qunit-2.11.3.tgz#2f3f6598c9fc360cf52d0bdbf3db92962ec370d9" + integrity sha512-38gyZblz6kjV4G+6cn18Vvsh3ESnCXH9YXtfMJQGpKXWzLzUj8W/8iUewP+TsLwv95GQUXtMf2nl8h1iKsybFA== dependencies: - commander "2.12.2" - js-reporters "1.2.1" - minimatch "3.0.4" - node-watch "0.6.1" - resolve "1.9.0" + commander "6.0.0" + js-reporters "1.2.3" + node-watch "0.6.4" + tiny-glob "0.2.6" + +ramda@^0.21.0: + version "0.21.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.21.0.tgz#a001abedb3ff61077d4ff1d577d44de77e8d0a35" + integrity sha1-oAGr7bP/YQd9T/HVd9RN536NCjU= randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" @@ -11083,7 +14056,7 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" -range-parser@~1.2.1: +range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== @@ -11106,39 +14079,200 @@ raw-body@~1.1.0: bytes "1" string_decoder "0.10" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= +raw-loader@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" + integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" + loader-utils "^2.0.0" + schema-utils "^3.0.0" -read-pkg-up@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" - integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== +react-color@^2.17.0: + version "2.18.1" + resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.18.1.tgz#2cda8cc8e06a9e2c52ad391a30ddad31972472f4" + integrity sha512-X5XpyJS6ncplZs74ak0JJoqPi+33Nzpv5RYWWxn17bslih+X7OlgmfpmGC1fNvdkK7/SGWYf1JJdn7D2n5gSuQ== dependencies: - find-up "^3.0.0" - read-pkg "^3.0.0" + "@icons/material" "^0.2.4" + lodash "^4.17.11" + material-colors "^1.2.1" + prop-types "^15.5.10" + reactcss "^1.2.0" + tinycolor2 "^1.4.1" -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= +react-dev-utils@^10.0.0: + version "10.2.1" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.2.1.tgz#f6de325ae25fa4d546d09df4bb1befdc6dd19c19" + integrity sha512-XxTbgJnYZmxuPtY3y/UV0D8/65NKkmaia4rXzViknVnZeVlklSh8u6TnaEYPfAi/Gh1TP4mEOXHI6jQOPbeakQ== dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" + "@babel/code-frame" "7.8.3" + address "1.1.2" + browserslist "4.10.0" + chalk "2.4.2" + cross-spawn "7.0.1" + detect-port-alt "1.1.6" + escape-string-regexp "2.0.0" + filesize "6.0.1" + find-up "4.1.0" + fork-ts-checker-webpack-plugin "3.1.1" + global-modules "2.0.0" + globby "8.0.2" + gzip-size "5.1.1" + immer "1.10.0" + inquirer "7.0.4" + is-root "2.1.0" + loader-utils "1.2.3" + open "^7.0.2" + pkg-up "3.1.0" + react-error-overlay "^6.0.7" + recursive-readdir "2.2.2" + shell-quote "1.7.2" + strip-ansi "6.0.0" + text-table "0.2.0" -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= +react-dom@^16.8.3: + version "16.14.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89" + integrity sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw== dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.19.1" + +react-draggable@^4.0.3: + version "4.4.3" + resolved "https://registry.yarnpkg.com/react-draggable/-/react-draggable-4.4.3.tgz#0727f2cae5813e36b0e4962bf11b2f9ef2b406f3" + integrity sha512-jV4TE59MBuWm7gb6Ns3Q1mxX8Azffb7oTtDtBgFkxRvhDp38YAARmRplrj0+XGkhOJB5XziArX+4HUUABtyZ0w== + dependencies: + classnames "^2.2.5" + prop-types "^15.6.0" + +react-element-to-jsx-string@^14.3.1: + version "14.3.1" + resolved "https://registry.yarnpkg.com/react-element-to-jsx-string/-/react-element-to-jsx-string-14.3.1.tgz#a08fa6e46eb76061aca7eabc2e70f433583cb203" + integrity sha512-LRdQWRB+xcVPOL4PU4RYuTg6dUJ/FNmaQ8ls6w38YbzkbV6Yr5tFNESroub9GiSghtnMq8dQg2LcNN5aMIDzVg== + dependencies: + "@base2/pretty-print-object" "1.0.0" + is-plain-object "3.0.0" + +react-error-overlay@^6.0.7: + version "6.0.8" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.8.tgz#474ed11d04fc6bda3af643447d85e9127ed6b5de" + integrity sha512-HvPuUQnLp5H7TouGq3kzBeioJmXms1wHy9EGjz2OURWBp4qZO6AfGEcnxts1D/CbwPLRAgTMPCEgYhA3sEM4vw== + +react-fast-compare@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb" + integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA== + +react-helmet-async@^1.0.2: + version "1.0.7" + resolved "https://registry.yarnpkg.com/react-helmet-async/-/react-helmet-async-1.0.7.tgz#b988fbc3abdc4b704982bb74b9cb4a08fcf062c1" + integrity sha512-By90p5uxAriGukbyejq2poK41DwTxpNWOpOjN8mIyX/BKrCd3+sXZ5pHUZXjHyjR5OYS7PGsOD9dbM61YxfFmA== + dependencies: + "@babel/runtime" "^7.11.2" + invariant "^2.2.4" + prop-types "^15.7.2" + react-fast-compare "^3.2.0" + shallowequal "^1.1.0" + +react-hotkeys@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/react-hotkeys/-/react-hotkeys-2.0.0.tgz#a7719c7340cbba888b0e9184f806a9ec0ac2c53f" + integrity sha512-3n3OU8vLX/pfcJrR3xJ1zlww6KS1kEJt0Whxc4FiGV+MJrQ1mYSYI3qS/11d2MJDFm8IhOXMTFQirfu6AVOF6Q== + dependencies: + prop-types "^15.6.1" + +react-inspector@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-5.1.0.tgz#45a325e15f33e595be5356ca2d3ceffb7d6b8c3a" + integrity sha512-JAwswiengIcxi4X/Ssb8nf6suOuQsyit8Fxo04+iPKTnPNY3XIOuagjMZSzpJDDKkYcc/ARlySOYZZv626WUvA== + dependencies: + "@babel/runtime" "^7.0.0" + is-dom "^1.0.0" + prop-types "^15.0.0" + +react-is@^16.7.0, react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^17.0.1: + version "17.0.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.1.tgz#5b3531bd76a645a4c9fb6e693ed36419e3301339" + integrity sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA== + +react-lifecycles-compat@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" + integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== + +react-popper-tooltip@^2.11.0: + version "2.11.1" + resolved "https://registry.yarnpkg.com/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz#3c4bdfd8bc10d1c2b9a162e859bab8958f5b2644" + integrity sha512-04A2f24GhyyMicKvg/koIOQ5BzlrRbKiAgP6L+Pdj1MVX3yJ1NeZ8+EidndQsbejFT55oW1b++wg2Z8KlAyhfQ== + dependencies: + "@babel/runtime" "^7.9.2" + react-popper "^1.3.7" + +react-popper@^1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.7.tgz#f6a3471362ef1f0d10a4963673789de1baca2324" + integrity sha512-nmqYTx7QVjCm3WUZLeuOomna138R1luC4EqkW3hxJUrAe+3eNz3oFCLYdnPwILfn0mX1Ew2c3wctrjlUMYYUww== + dependencies: + "@babel/runtime" "^7.1.2" + create-react-context "^0.3.0" + deep-equal "^1.1.1" + popper.js "^1.14.4" + prop-types "^15.6.1" + typed-styles "^0.0.7" + warning "^4.0.2" + +react-sizeme@^2.6.7: + version "2.6.12" + resolved "https://registry.yarnpkg.com/react-sizeme/-/react-sizeme-2.6.12.tgz#ed207be5476f4a85bf364e92042520499455453e" + integrity sha512-tL4sCgfmvapYRZ1FO2VmBmjPVzzqgHA7kI8lSJ6JS6L78jXFNRdOZFpXyK6P1NBZvKPPCZxReNgzZNUajAerZw== + dependencies: + element-resize-detector "^1.2.1" + invariant "^2.2.4" + shallowequal "^1.1.0" + throttle-debounce "^2.1.0" + +react-syntax-highlighter@^12.2.1: + version "12.2.1" + resolved "https://registry.yarnpkg.com/react-syntax-highlighter/-/react-syntax-highlighter-12.2.1.tgz#14d78352da1c1c3f93c6698b70ec7c706b83493e" + integrity sha512-CTsp0ZWijwKRYFg9xhkWD4DSpQqE4vb2NKVMdPAkomnILSmsNBHE0n5GuI5zB+PU3ySVvXvdt9jo+ViD9XibCA== + dependencies: + "@babel/runtime" "^7.3.1" + highlight.js "~9.15.1" + lowlight "1.12.1" + prismjs "^1.8.4" + refractor "^2.4.1" + +react-textarea-autosize@^8.1.1: + version "8.2.0" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.2.0.tgz#fae38653f5ec172a855fd5fffb39e466d56aebdb" + integrity sha512-grajUlVbkx6VdtSxCgzloUIphIZF5bKr21OYMceWPKkniy7H0mRAT/AXPrRtObAe+zUePnNlBwUc4ivVjUGIjw== + dependencies: + "@babel/runtime" "^7.10.2" + use-composed-ref "^1.0.0" + use-latest "^1.0.0" + +react@^16.8.3: + version "16.14.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" + integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + +reactcss@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" + integrity sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A== + dependencies: + lodash "^4.0.1" "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" @@ -11153,7 +14287,7 @@ read-pkg@^3.0.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -"readable-stream@2 || 3", readable-stream@^3.6.0: +"readable-stream@2 || 3", readable-stream@^3.1.1, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -11181,10 +14315,10 @@ readdirp@^2.2.1: micromatch "^3.1.10" readable-stream "^2.0.2" -readdirp@~3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.4.0.tgz#9fdccdf9e9155805449221ac645e8303ab5b9ada" - integrity sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ== +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== dependencies: picomatch "^2.2.1" @@ -11198,18 +14332,24 @@ recast@^0.18.1: private "^0.1.8" source-map "~0.6.1" +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= + dependencies: + resolve "^1.1.6" + recursive-readdir-sync@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/recursive-readdir-sync/-/recursive-readdir-sync-1.0.6.tgz#1dbf6d32f3c5bb8d3cde97a6c588d547a9e13d56" integrity sha1-Hb9tMvPFu4083pemxYjVR6nhPVY= -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= +recursive-readdir@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" + integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" + minimatch "3.0.4" redeyed@~1.0.0: version "1.0.1" @@ -11218,6 +14358,15 @@ redeyed@~1.0.0: dependencies: esprima "~3.0.0" +refractor@^2.4.1: + version "2.10.1" + resolved "https://registry.yarnpkg.com/refractor/-/refractor-2.10.1.tgz#166c32f114ed16fd96190ad21d5193d3afc7d34e" + integrity sha512-Xh9o7hQiQlDbxo5/XkOX6H+x/q8rmlmZKr97Ie1Q8ZM32IRRd3B/UxuA/yXDW79DBSXGWxm2yRTbcTVmAciJRw== + dependencies: + hastscript "^5.0.0" + parse-entities "^1.1.2" + prismjs "~1.17.0" + regenerate-unicode-properties@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" @@ -11240,10 +14389,10 @@ regenerator-runtime@^0.11.0: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-runtime@^0.13.4: - version "0.13.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" - integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== +regenerator-runtime@^0.13.3, regenerator-runtime@^0.13.4: + version "0.13.7" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz#cac2dacc8a1ea675feaabaeb8ae833898ae46f55" + integrity sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew== regenerator-runtime@^0.9.5: version "0.9.6" @@ -11274,7 +14423,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.3.0: +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75" integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ== @@ -11282,12 +14431,7 @@ regexp.prototype.flags@^1.3.0: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - -regexpp@^3.0.0: +regexpp@^3.0.0, regexpp@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== @@ -11301,10 +14445,10 @@ regexpu-core@^2.0.0: regjsgen "^0.2.0" regjsparser "^0.1.4" -regexpu-core@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" - integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== +regexpu-core@^4.7.1: + version "4.7.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" + integrity sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ== dependencies: regenerate "^1.4.0" regenerate-unicode-properties "^8.2.0" @@ -11337,17 +14481,130 @@ regjsparser@^0.6.4: dependencies: jsesc "~0.5.0" +relateurl@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + +remark-external-links@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/remark-external-links/-/remark-external-links-6.1.0.tgz#1a545b3cf896eae00ec1732d90f595f75a329abe" + integrity sha512-dJr+vhe3wuh1+E9jltQ+efRMqtMDOOnfFkhtoArOmhnBcPQX6THttXMkc/H0kdnAvkXTk7f2QdOYm5qo/sGqdw== + dependencies: + extend "^3.0.0" + is-absolute-url "^3.0.0" + mdast-util-definitions "^2.0.0" + space-separated-tokens "^1.0.0" + unist-util-visit "^2.0.0" + +remark-footnotes@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-2.0.0.tgz#9001c4c2ffebba55695d2dd80ffb8b82f7e6303f" + integrity sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ== + +remark-frontmatter@^1.2.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/remark-frontmatter/-/remark-frontmatter-1.3.3.tgz#67ec63c89da5a84bb793ecec166e11b4eb47af10" + integrity sha512-fM5eZPBvu2pVNoq3ZPW22q+5Ativ1oLozq2qYt9I2oNyxiUd/tDl0iLLntEVAegpZIslPWg1brhcP1VsaSVUag== + dependencies: + fault "^1.0.1" + xtend "^4.0.1" + +remark-mdx@1.6.19: + version "1.6.19" + resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-1.6.19.tgz#9f5330a6b151c40643ddda81714d45a751b158e0" + integrity sha512-UKK1CFatVPNhgjsIlNQ3GjVl3+6O7x7Hag6oyntFTg8s7sgq+rhWaSfM/6lW5UWU6hzkj520KYBuBlsaSriGtA== + dependencies: + "@babel/core" "7.11.6" + "@babel/helper-plugin-utils" "7.10.4" + "@babel/plugin-proposal-object-rest-spread" "7.11.0" + "@babel/plugin-syntax-jsx" "7.10.4" + "@mdx-js/util" "1.6.19" + is-alphabetical "1.0.4" + remark-parse "8.0.3" + unified "9.2.0" + +remark-parse@8.0.3: + version "8.0.3" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-8.0.3.tgz#9c62aa3b35b79a486454c690472906075f40c7e1" + integrity sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q== + dependencies: + ccount "^1.0.0" + collapse-white-space "^1.0.2" + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + is-word-character "^1.0.0" + markdown-escapes "^1.0.0" + parse-entities "^2.0.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + trim "0.0.1" + trim-trailing-lines "^1.0.0" + unherit "^1.0.4" + unist-util-remove-position "^2.0.0" + vfile-location "^3.0.0" + xtend "^4.0.1" + +remark-parse@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-5.0.0.tgz#4c077f9e499044d1d5c13f80d7a98cf7b9285d95" + integrity sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA== + dependencies: + collapse-white-space "^1.0.2" + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + is-whitespace-character "^1.0.0" + is-word-character "^1.0.0" + markdown-escapes "^1.0.0" + parse-entities "^1.1.0" + repeat-string "^1.5.4" + state-toggle "^1.0.0" + trim "0.0.1" + trim-trailing-lines "^1.0.0" + unherit "^1.0.4" + unist-util-remove-position "^1.0.0" + vfile-location "^2.0.0" + xtend "^4.0.1" + +remark-slug@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/remark-slug/-/remark-slug-6.0.0.tgz#2b54a14a7b50407a5e462ac2f376022cce263e2c" + integrity sha512-ln67v5BrGKHpETnm6z6adlJPhESFJwfuZZ3jrmi+lKTzeZxh2tzFzUfDD4Pm2hRGOarHLuGToO86MNMZ/hA67Q== + dependencies: + github-slugger "^1.0.0" + mdast-util-to-string "^1.0.0" + unist-util-visit "^2.0.0" + +remark-squeeze-paragraphs@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz#76eb0e085295131c84748c8e43810159c5653ead" + integrity sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw== + dependencies: + mdast-squeeze-paragraphs "^4.0.0" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= +renderkid@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.4.tgz#d325e532afb28d3f8796ffee306be8ffd6fc864c" + integrity sha512-K2eXrSOJdq+HuKzlcjOlGoOarUu5SDguDEhE7+Ah4zuOWL40j8A/oHvLlLob9PSTNvVnBd+/q0Er1QfpEuem5g== + dependencies: + css-select "^1.1.0" + dom-converter "^0.2" + htmlparser2 "^3.3.0" + lodash "^4.17.20" + strip-ansi "^3.0.0" + repeat-element@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== -repeat-string@^1.6.1: +repeat-string@^1.5.4, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= @@ -11359,23 +14616,28 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -request-promise-core@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9" - integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ== +replace-ext@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== dependencies: - lodash "^4.17.15" + lodash "^4.17.19" request-promise-native@^1.0.5: - version "1.0.8" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36" - integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ== + version "1.0.9" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" + integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== dependencies: - request-promise-core "1.1.3" + request-promise-core "1.1.4" stealthy-require "^1.1.1" tough-cookie "^2.3.3" -request@^2.87.0, request@^2.88.0: +request@^2.88.0: version "2.88.2" resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== @@ -11401,16 +14663,31 @@ request@^2.87.0, request@^2.88.0: tunnel-agent "^0.6.0" uuid "^3.3.2" +request@~2.40.0: + version "2.40.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.40.0.tgz#4dd670f696f1e6e842e66b4b5e839301ab9beb67" + integrity sha1-TdZw9pbx5uhC5mtLXoOTAaub62c= + dependencies: + forever-agent "~0.5.0" + json-stringify-safe "~5.0.0" + mime-types "~1.0.1" + node-uuid "~1.4.0" + qs "~1.0.0" + optionalDependencies: + aws-sign2 "~0.5.0" + form-data "~0.1.0" + hawk "1.1.1" + http-signature "~0.10.0" + oauth-sign "~0.3.0" + stringstream "~0.0.4" + tough-cookie ">=0.12.0" + tunnel-agent "~0.4.0" + require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== - requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -11434,11 +14711,21 @@ resolve-dir@^1.0.0, resolve-dir@^1.0.1: expand-tilde "^2.0.0" global-modules "^1.0.0" +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + resolve-package-path@^1.0.11, resolve-package-path@^1.2.2, resolve-package-path@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/resolve-package-path/-/resolve-package-path-1.2.7.tgz#2a7bc37ad96865e239330e3102c31322847e652e" @@ -11468,18 +14755,12 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.9.0.tgz#a14c6fdfa8f92a7df1d996cb7105fa744658ea06" - integrity sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ== - dependencies: - path-parse "^1.0.6" - -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.15.1, resolve@^1.17.0, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.7.1, resolve@^1.8.1: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.17.0, resolve@^1.3.2, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.7.1, resolve@^1.8.1: + version "1.18.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.18.1.tgz#018fcb2c5b207d2a6424aee361c5a266da8f4130" + integrity sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA== dependencies: + is-core-module "^2.0.0" path-parse "^1.0.6" responselike@1.0.2: @@ -11522,13 +14803,6 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@2, rimraf@^2.2.8, rimraf@^2.3.4, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: - version "2.7.1" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - rimraf@2.6.3, rimraf@~2.6.2: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" @@ -11536,6 +14810,13 @@ rimraf@2.6.3, rimraf@~2.6.2: dependencies: glob "^7.1.3" +rimraf@^2.2.8, rimraf@^2.3.4, rimraf@^2.4.1, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + rimraf@^3.0.0, rimraf@^3.0.1, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -11577,7 +14858,7 @@ rsvp@^3.0.14, rsvp@^3.0.17, rsvp@^3.0.18, rsvp@^3.0.21, rsvp@^3.0.6, rsvp@^3.1.0 resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== -rsvp@^4.6.1, rsvp@^4.7.0, rsvp@^4.8.1, rsvp@^4.8.2, rsvp@^4.8.4, rsvp@^4.8.5: +rsvp@^4.7.0, rsvp@^4.8.1, rsvp@^4.8.2, rsvp@^4.8.4, rsvp@^4.8.5: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== @@ -11604,13 +14885,18 @@ run-queue@^1.0.0, run-queue@^1.0.3: dependencies: aproba "^1.1.1" -rxjs@^6.4.0, rxjs@^6.5.5, rxjs@^6.6.0: - version "6.6.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.0.tgz#af2901eedf02e3a83ffa7f886240ff9018bbec84" - integrity sha512-3HMA8z/Oz61DUHe+SdOiQyzIf4tOx5oQHmMir7IZEu6TMqCLHT4LRcmNaUS0NwOz8VLvmmBduMsoaUvMaIiqzg== +rxjs@^6.4.0, rxjs@^6.5.3, rxjs@^6.6.0, rxjs@^6.6.2: + version "6.6.3" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.3.tgz#8ca84635c4daa900c0d3967a6ee7ac60271ee552" + integrity sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ== dependencies: tslib "^1.9.0" +safe-buffer@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + integrity sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" @@ -11638,7 +14924,7 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^4.0.0, sane@^4.1.0: +sane@^4.0.0, sane@^4.0.3, sane@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== @@ -11653,15 +14939,12 @@ sane@^4.0.0, sane@^4.1.0: minimist "^1.1.1" walker "~1.0.5" -sass-graph@2.2.5: - version "2.2.5" - resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.5.tgz#a981c87446b8319d96dce0671e487879bd24c2e8" - integrity sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag== +sass@^1.28.0: + version "1.28.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.28.0.tgz#546f1308ff74cc4ec2ad735fd35dc18bc3f51f72" + integrity sha512-9FWX/0wuE1KxwfiP02chZhHaPzu6adpx9+wGch7WMOuHy5npOo0UapRI3FNSHva2CczaYJu2yNUBN8cCSqHz/A== dependencies: - glob "^7.0.0" - lodash "^4.0.0" - scss-tokenizer "^0.2.3" - yargs "^13.3.2" + chokidar ">=2.0.0 <4.0.0" saxes@^3.1.3: version "3.1.11" @@ -11670,6 +14953,14 @@ saxes@^3.1.3: dependencies: xmlchars "^2.1.1" +scheduler@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" + integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + schema-utils@^0.4.4: version "0.4.7" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" @@ -11687,22 +14978,23 @@ schema-utils@^1.0.0: ajv-errors "^1.0.0" ajv-keywords "^3.1.0" -schema-utils@^2.6.5: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== +schema-utils@^2.6.5, schema-utils@^2.6.6, schema-utils@^2.7.0: + version "2.7.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" + "@types/json-schema" "^7.0.5" + ajv "^6.12.4" + ajv-keywords "^3.5.2" -scss-tokenizer@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= +schema-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" + integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== dependencies: - js-base64 "^2.1.8" - source-map "^0.4.2" + "@types/json-schema" "^7.0.6" + ajv "^6.12.5" + ajv-keywords "^3.5.2" select@^1.1.2: version "1.1.2" @@ -11719,31 +15011,26 @@ semver-regex@^2.0.0: resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== - semver@7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== +semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.0.0, semver@^7.1.3, semver@^7.3.2: +semver@^7.0.0, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2: version "7.3.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== -semver@~5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" - integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= - send@0.17.1: version "0.17.1" resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" @@ -11763,13 +15050,24 @@ send@0.17.1: range-parser "~1.2.1" statuses "~1.5.0" -serialize-javascript@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" - integrity sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg== +serialize-javascript@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== dependencies: randombytes "^2.1.0" +serve-favicon@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.5.0.tgz#935d240cdfe0f5805307fdfe967d88942a2cbcf0" + integrity sha1-k10kDN/g9YBTB/3+ln2IlCosvPA= + dependencies: + etag "~1.8.1" + fresh "0.5.2" + ms "2.1.1" + parseurl "~1.3.2" + safe-buffer "5.1.1" + serve-static@1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" @@ -11780,7 +15078,7 @@ serve-static@1.14.1: parseurl "~1.3.3" send "0.17.1" -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= @@ -11818,6 +15116,11 @@ sha.js@^2.4.0, sha.js@^2.4.8: inherits "^2.0.1" safe-buffer "^5.0.1" +shallowequal@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -11842,18 +15145,32 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shell-quote@1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2" + integrity sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg== + +shelljs@^0.8.3: + version "0.8.4" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.4.tgz#de7684feeb767f8716b326078a8a00875890e3c2" + integrity sha512-7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ== + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + shellwords@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== -side-channel@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.2.tgz#df5d1abadb4e4bf4af1cd8852bf132d2f7876947" - integrity sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA== +side-channel@^1.0.2, side-channel@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.3.tgz#cdc46b057550bbab63706210838df5d4c19519c3" + integrity sha512-A6+ByhlLkksFoUepsGxfj5x1gTSrs+OydsRptUxeNCabQpCFUvcwIczgOigI8vhY/OJCnPnyE9rGiwgvr9cS1g== dependencies: - es-abstract "^1.17.0-next.1" - object-inspect "^1.7.0" + es-abstract "^1.18.0-next.0" + object-inspect "^1.8.0" signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.3" @@ -11867,22 +15184,22 @@ silent-error@^1.0.0, silent-error@^1.0.1, silent-error@^1.1.0, silent-error@^1.1 dependencies: debug "^2.2.0" -simple-html-tokenizer@^0.5.9: - version "0.5.9" - resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.5.9.tgz#1a83fe97f5a3e39b335fddf71cfe9b0263b581c2" - integrity sha512-w/3FEDN94r4JQ9WoYrIr8RqDIPZdyNkdpbK9glFady1CAEyD97XWCv8HFetQO21w81e7h7Nh59iYTyG1mUJftg== +simple-html-tokenizer@^0.5.10: + version "0.5.10" + resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.5.10.tgz#0843e4f00c9677f1c81e3dfeefcee0a4aca8e5d0" + integrity sha512-1DHMUmvUOGuUZ9/+cX/+hOhWhRD5dEw6lodn8WuV+T+cQ31hhBcCu1dcDsNotowi4mMaNhrLyKoS+DtB81HdDA== sinon@^9.0.0: - version "9.0.2" - resolved "https://registry.yarnpkg.com/sinon/-/sinon-9.0.2.tgz#b9017e24633f4b1c98dfb6e784a5f0509f5fd85d" - integrity sha512-0uF8Q/QHkizNUmbK3LRFqx5cpTttEVXudywY9Uwzy8bTfZUhljZ7ARzSxnRHWYWtVTeh4Cw+tTb3iU21FQVO9A== + version "9.2.0" + resolved "https://registry.yarnpkg.com/sinon/-/sinon-9.2.0.tgz#1d333967e30023609f7347351ebc0dc964c0f3c9" + integrity sha512-eSNXz1XMcGEMHw08NJXSyTHIu6qTCOiN8x9ODACmZpNQpr0aXTBXBnI4xTzQzR+TEpOmLiKowGf9flCuKIzsbw== dependencies: - "@sinonjs/commons" "^1.7.2" + "@sinonjs/commons" "^1.8.1" "@sinonjs/fake-timers" "^6.0.1" "@sinonjs/formatio" "^5.0.1" - "@sinonjs/samsam" "^5.0.3" + "@sinonjs/samsam" "^5.2.0" diff "^4.0.2" - nise "^4.0.1" + nise "^4.0.4" supports-color "^7.1.0" slash@^1.0.0: @@ -11960,6 +15277,13 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" +sntp@0.2.x: + version "0.2.4" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-0.2.4.tgz#fb885f18b0f3aad189f824862536bceeec750900" + integrity sha1-+4hfGLDzqtGJ+CSGJTa87ux1CQA= + dependencies: + hoek "0.9.x" + socket.io-adapter@~1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" @@ -11986,11 +15310,11 @@ socket.io-client@2.3.0: to-array "0.1.4" socket.io-parser@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.0.tgz#2b52a96a509fdf31440ba40fed6094c7d4f1262f" - integrity sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng== + version "3.3.1" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.1.tgz#f07d9c8cb3fb92633aa93e76d98fd3a334623199" + integrity sha512-1QLvVAe8dTz+mKmZ07Swxt+LAo4Y1ff50rlyoEx00TQmDFVQYPfcqGvIDJLGaBdhdNCecXtyKpD+EgKGcmmbuQ== dependencies: - component-emitter "1.2.1" + component-emitter "~1.3.0" debug "~3.1.0" isarray "2.0.1" @@ -12092,11 +15416,16 @@ source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + source-map@~0.1.x: version "0.1.43" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" @@ -12114,37 +15443,16 @@ sourcemap-validator@^1.1.0: lodash.template "^4.5.0" source-map "~0.1.x" +space-separated-tokens@^1.0.0: + version "1.1.5" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" + integrity sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA== + spawn-args@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/spawn-args/-/spawn-args-0.2.0.tgz#fb7d0bd1d70fd4316bd9e3dec389e65f9d6361bb" integrity sha1-+30L0dcP1DFr2ePew4nmX51jYbs= -spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== - -spdx-expression-parse@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== - split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" @@ -12189,6 +15497,18 @@ ssri@^6.0.1: dependencies: figgy-pudding "^3.5.1" +ssri@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808" + integrity sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA== + dependencies: + minipass "^3.1.1" + +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + stagehand@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/stagehand/-/stagehand-1.0.0.tgz#79515e2ad3a02c63f8720c7df9b6077ae14276d9" @@ -12196,6 +15516,11 @@ stagehand@^1.0.0: dependencies: debug "^4.1.0" +state-toggle@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" + integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== + static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" @@ -12209,18 +15534,16 @@ static-extend@^0.1.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= -stdout-stream@^1.4.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" - integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== - dependencies: - readable-stream "^2.0.1" - stealthy-require@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= +store2@^2.7.1: + version "2.12.0" + resolved "https://registry.yarnpkg.com/store2/-/store2-2.12.0.tgz#e1f1b7e1a59b6083b2596a8d067f6ee88fd4d3cf" + integrity sha512-7t+/wpKLanLzSnQPX8WAcuLCCeuSHoWdQuh9SB3xD0kNOM38DNf+0Oa+wmvxmYueRzkmh6IcdKFtvTa+ecgPDw== + stream-browserify@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" @@ -12253,6 +15576,13 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== +stream-to-array@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/stream-to-array/-/stream-to-array-2.3.0.tgz#bbf6b39f5f43ec30bc71babcb37557acecf34353" + integrity sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M= + dependencies: + any-promise "^1.1.0" + strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" @@ -12285,7 +15615,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0, string-width@^3.1.0: +string-width@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== @@ -12294,7 +15624,7 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0, string-width@^4.2.0: +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== @@ -12303,14 +15633,41 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" -string.prototype.trim@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.1.tgz#141233dff32c82bfad80684d7e5f0869ee0fb782" - integrity sha512-MjGFEeqixw47dAMFMtgUro/I0+wNqZB5GKXGt1fFr24u3TzDXCPu7J9Buppzoe3r/LqkSDLDDJzE15RGWDGAVw== +"string.prototype.matchall@^4.0.0 || ^3.0.1": + version "4.0.2" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz#48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e" + integrity sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0" + has-symbols "^1.0.1" + internal-slot "^1.0.2" + regexp.prototype.flags "^1.3.0" + side-channel "^1.0.2" + +string.prototype.padend@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.0.tgz#dc08f57a8010dc5c153550318f67e13adbb72ac3" + integrity sha512-3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA== dependencies: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" + +string.prototype.padstart@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.1.0.tgz#b47c087540d0710be5a49375751a0a627bd4ff90" + integrity sha512-envqZvUp2JItI+OeQ5UAh1ihbAV5G/2bixTojvlIa090GGqF+NQRxbWb2nv9fTGrZABv6+pE6jXoAZhhS2k4Hw== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.0-next.1" + +string.prototype.trim@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.2.tgz#f538d0bacd98fc4297f0bef645226d5aaebf59f3" + integrity sha512-b5yrbl3BXIjHau9Prk7U0RRYcUYdN4wGSVaqoBQS50CCE3KBuYU0TYRNPFCP7aVoNMX87HKThdMRVIP3giclKg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.18.0-next.0" string.prototype.trimend@^1.0.1: version "1.0.1" @@ -12356,6 +15713,18 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" +stringstream@~0.0.4: + version "0.0.6" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" + integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA== + +strip-ansi@6.0.0, strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -12370,32 +15739,18 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: +strip-ansi@^5.1.0, strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - strip-ansi@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" integrity sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE= -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -12416,17 +15771,32 @@ strip-final-newline@^2.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= - dependencies: - get-stdin "^4.0.1" +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -strip-json-comments@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= +structured-source@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/structured-source/-/structured-source-3.0.2.tgz#dd802425e0f53dc4a6e7aca3752901a1ccda7af5" + integrity sha1-3YAkJeD1PcSm56yjdSkBoczaevU= + dependencies: + boundary "^1.0.1" + +style-loader@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.3.0.tgz#828b4a3b3b7e7aa5847ce7bae9e874512114249e" + integrity sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q== + dependencies: + loader-utils "^2.0.0" + schema-utils "^2.7.0" + +style-to-object@0.3.0, style-to-object@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.3.0.tgz#b1b790d205991cc783801967214979ee19a76e46" + integrity sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA== + dependencies: + inline-style-parser "0.1.1" styled_string@0.0.1: version "0.0.1" @@ -12459,10 +15829,10 @@ supports-color@^6.1.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" @@ -12471,6 +15841,14 @@ symbol-tree@^3.2.2: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== +symbol.prototype.description@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.2.tgz#f325e1e6ad534b3b29c9c3ca73c136c9ce03c5e2" + integrity sha512-2CW5SU4/Ki1cYOOHcL2cXK4rxSg5hCU1TwZ7X4euKhV9VnfqKslh7T6/UyKkubA8cq2tOmsOv7m3ZUmQslBRuw== + dependencies: + es-abstract "^1.17.0-next.1" + has-symbols "^1.0.1" + symlink-or-copy@^1.0.0, symlink-or-copy@^1.0.1, symlink-or-copy@^1.1.8, symlink-or-copy@^1.2.0, symlink-or-copy@^1.3.0, symlink-or-copy@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz#9506dd64d8e98fa21dcbf4018d1eab23e77f71fe" @@ -12517,7 +15895,7 @@ tap-parser@^7.0.0: js-yaml "^3.2.7" minipass "^2.2.0" -tapable@^1.0.0, tapable@^1.1.0: +tapable@^1.0.0, tapable@^1.1.0, tapable@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== @@ -12545,14 +15923,31 @@ tape@^5.0.1: string.prototype.trim "^1.2.1" through "^2.3.8" -tar@^2.0.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" - integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== +tar@^6.0.2: + version "6.0.5" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f" + integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg== dependencies: - block-stream "*" - fstream "^1.0.12" - inherits "2" + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + +telejson@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/telejson/-/telejson-5.0.2.tgz#ed1e64be250cc1c757a53c19e1740b49832b3d51" + integrity sha512-XCrDHGbinczsscs8LXFr9jDhvy37yBk9piB7FJrCfxE8oP66WDkolNMpaBkWYgQqB9dQGBGtTDzGQPedc9KJmw== + dependencies: + "@types/is-function" "^1.0.0" + global "^4.4.0" + is-function "^1.0.2" + is-regex "^1.1.1" + is-symbol "^1.0.3" + isobject "^4.0.0" + lodash "^4.17.19" + memoizerific "^1.11.3" temp@0.9.1: version "0.9.1" @@ -12561,22 +15956,42 @@ temp@0.9.1: dependencies: rimraf "~2.6.2" -terser-webpack-plugin@^1.1.0: - version "1.4.4" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f" - integrity sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA== +term-size@^2.1.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" + integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== + +terser-webpack-plugin@^1.1.0, terser-webpack-plugin@^1.4.3: + version "1.4.5" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" + integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== dependencies: cacache "^12.0.2" find-cache-dir "^2.1.0" is-wsl "^1.1.0" schema-utils "^1.0.0" - serialize-javascript "^3.1.0" + serialize-javascript "^4.0.0" source-map "^0.6.1" terser "^4.1.2" webpack-sources "^1.4.0" worker-farm "^1.7.0" -terser@^4.1.2, terser@^4.3.9: +terser-webpack-plugin@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-3.1.0.tgz#91e6d39571460ed240c0cf69d295bcf30ebf98cb" + integrity sha512-cjdZte66fYkZ65rQ2oJfrdCAkkhJA7YLYk5eGOcGCSGlq0ieZupRdjedSQXYknMPo2IveQL+tPdrxUkERENCFA== + dependencies: + cacache "^15.0.5" + find-cache-dir "^3.3.1" + jest-worker "^26.2.1" + p-limit "^3.0.2" + schema-utils "^2.6.6" + serialize-javascript "^4.0.0" + source-map "^0.6.1" + terser "^4.8.0" + webpack-sources "^1.4.3" + +terser@^4.1.2, terser@^4.3.9, terser@^4.6.3, terser@^4.8.0: version "4.8.0" resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== @@ -12585,15 +16000,14 @@ terser@^4.1.2, terser@^4.3.9: source-map "~0.6.1" source-map-support "~0.5.12" -test-exclude@^5.2.3: - version "5.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" - integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: - glob "^7.1.3" + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" minimatch "^3.0.4" - read-pkg-up "^4.0.0" - require-main-filename "^2.0.0" testem@^3.1.0: version "3.2.0" @@ -12635,7 +16049,7 @@ text-encoding@^0.7.0: resolved "https://registry.yarnpkg.com/text-encoding/-/text-encoding-0.7.0.tgz#f895e836e45990624086601798ea98e8f36ee643" integrity sha512-oJQ3f1hrOnbRLOcwKz0Liq2IcrvDeZRHXhd9RgLrsT+DjWY/nty1Hi7v3dtkaEYbPYe0mUoOfzRrMwfXXwgPUA== -text-table@^0.2.0: +text-table@0.2.0, text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= @@ -12645,7 +16059,20 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/textextensions/-/textextensions-2.6.0.tgz#d7e4ab13fe54e32e08873be40d51b74229b00fc4" integrity sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ== -through2@^2.0.0: +throttle-debounce@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-2.3.0.tgz#fd31865e66502071e411817e241465b3e9c372e2" + integrity sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ== + +through2-filter@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254" + integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== + dependencies: + through2 "~2.0.0" + xtend "~4.0.0" + +through2@^2.0.0, through2@^2.0.3, through2@~2.0.0: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== @@ -12683,6 +16110,14 @@ tiny-emitter@^2.0.0: resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== +tiny-glob@0.2.6: + version "0.2.6" + resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.6.tgz#9e056e169d9788fe8a734dfa1ff02e9b92ed7eda" + integrity sha512-A7ewMqPu1B5PWwC3m7KVgAu96Ch5LA0w4SnEN/LbDREj/gAD0nPWboRbn8YoP9ISZXqeNAlMvKSKoEuhcfK3Pw== + dependencies: + globalyzer "^0.1.0" + globrex "^0.1.1" + tiny-lr@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.1.1.tgz#9fa547412f238fedb068ee295af8b682c98b2aab" @@ -12695,6 +16130,11 @@ tiny-lr@^1.1.1: object-assign "^4.1.0" qs "^6.4.0" +tinycolor2@^1.4.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803" + integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA== + tmp@0.0.28: version "0.0.28" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.28.tgz#172735b7f614ea7af39664fa84cf0de4e515d120" @@ -12716,6 +16156,13 @@ tmp@^0.1.0: dependencies: rimraf "^2.6.3" +tmp@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== + dependencies: + rimraf "^3.0.0" + tmpl@1.0.x: version "1.0.4" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" @@ -12773,6 +16220,11 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" +toggle-selection@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/toggle-selection/-/toggle-selection-1.0.6.tgz#6e45b1263f2017fa0acc7d89d78b15b8bf77da32" + integrity sha1-bkWxJj8gF/oKzH2J14sVuL932jI= + toidentifier@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" @@ -12785,6 +16237,13 @@ tooltip.js@^1.1.5: dependencies: popper.js "^1.0.2" +topo@2.x.x: + version "2.0.2" + resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" + integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= + dependencies: + hoek "4.x.x" + torii@^0.10.1: version "0.10.1" resolved "https://registry.yarnpkg.com/torii/-/torii-0.10.1.tgz#caad0a81e82189fc0483b65e68ee28041ad3590f" @@ -12792,6 +16251,15 @@ torii@^0.10.1: dependencies: ember-cli-babel "^6.11.0" +tough-cookie@>=0.12.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.1.2" + tough-cookie@^2.3.3, tough-cookie@^2.4.3, tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -12815,6 +16283,11 @@ tracked-maps-and-sets@^2.1.0: "@glimmer/tracking" "^1.0.0" ember-cli-babel "^7.17.2" +traverse@^0.6.6: + version "0.6.6" + resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.6.tgz#cbdf560fd7b9af632502fed40f918c157ea97137" + integrity sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc= + tree-sync@^1.2.2: version "1.4.0" resolved "https://registry.yarnpkg.com/tree-sync/-/tree-sync-1.4.0.tgz#314598d13abaf752547d9335b8f95d9a137100d6" @@ -12837,27 +16310,45 @@ tree-sync@^2.0.0, tree-sync@^2.1.0: quick-temp "^0.1.5" walk-sync "^0.3.3" -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= - trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= -"true-case-path@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" - integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== - dependencies: - glob "^7.1.2" +trim-trailing-lines@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/trim-trailing-lines/-/trim-trailing-lines-1.1.3.tgz#7f0739881ff76657b7776e10874128004b625a94" + integrity sha512-4ku0mmjXifQcTVfYDfR5lpgV7zVqPg6zV9rdZmwOPqq0+Zq19xDqEgagqVbc4pOOShbncuAOIs59R3+3gcF3ZA== + +trim@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" + integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= + +trough@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" + integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== + +ts-dedent@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-1.2.0.tgz#6aa2229d837159bb6d635b6b233002423b91e0b0" + integrity sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA== + +ts-essentials@^2.0.3: + version "2.0.12" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-2.0.12.tgz#c9303f3d74f75fa7528c3d49b80e089ab09d8745" + integrity sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w== + +ts-pnp@^1.1.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" + integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== tslib@^1.10.0, tslib@^1.9.0: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tty-browserify@0.0.0: version "0.0.0" @@ -12871,11 +16362,23 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" +tunnel-agent@~0.4.0: + version "0.4.3" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + integrity sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us= + tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -12893,6 +16396,11 @@ type-fest@^0.11.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -12901,6 +16409,11 @@ type-is@~1.6.17, type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" +typed-styles@^0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9" + integrity sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q== + typedarray-to-buffer@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" @@ -12920,15 +16433,15 @@ typescript-memoize@^1.0.0-alpha.3: dependencies: core-js "2.4.1" -uc.micro@^1.0.1, uc.micro@^1.0.5: +uc.micro@^1.0.0, uc.micro@^1.0.1, uc.micro@^1.0.5: version "1.0.6" resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-1.0.6.tgz#9c411a802a409a91fc6cf74081baba34b24499ac" integrity sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA== uglify-js@^3.1.4: - version "3.10.0" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.10.0.tgz#397a7e6e31ce820bfd1cb55b804ee140c587a9e7" - integrity sha512-Esj5HG5WAyrLIdYU74Z3JdG2PxdIusvj6IWHMtlyESxc7kcDz7zYlYjpnSokn1UbpV0d/QX9fan7gkCNd/9BQA== + version "3.11.3" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.11.3.tgz#b2f8c87826344f091ba48c417c499d6cba5d5786" + integrity sha512-wDRziHG94mNj2n3R864CvYw/+pc9y/RNImiTyrrf8BzgWn75JgFSwYvXrtZQMnMnOp/4UTrf3iCSQxSStPiByA== underscore.string@^3.2.2, underscore.string@~3.3.4: version "3.3.5" @@ -12939,15 +16452,33 @@ underscore.string@^3.2.2, underscore.string@~3.3.4: util-deprecate "^1.0.2" underscore@>=1.8.3: - version "1.10.2" - resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.10.2.tgz#73d6aa3668f3188e4adb0f1943bd12cfd7efaaaf" - integrity sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg== + version "1.11.0" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.11.0.tgz#dd7c23a195db34267186044649870ff1bab5929e" + integrity sha512-xY96SsN3NA461qIRKZ/+qox37YXPtSBswMGfiNptr+wrt6ds4HaMw23TP612fEyGekRE6LNRiLYr/aqbHXNedw== underscore@~1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8" integrity sha1-izixDKze9jM3uLJOT/htRa6lKag= +underscore@~1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.8.3.tgz#4f3fb53b106e6097fcf9cb4109f2a5e9bdfa5022" + integrity sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI= + +unfetch@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== + +unherit@^1.0.4: + version "1.1.3" + resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22" + integrity sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ== + dependencies: + inherits "^2.0.0" + xtend "^4.0.0" + unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" @@ -12971,6 +16502,30 @@ unicode-property-aliases-ecmascript@^1.0.4: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== +unified@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.0.tgz#67a62c627c40589edebbf60f53edfd4d822027f8" + integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + +unified@^6.1.6: + version "6.2.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-6.2.0.tgz#7fbd630f719126d67d40c644b7e3f617035f6dba" + integrity sha512-1k+KPhlVtqmG99RaTbAv/usu85fcSRu3wY8X+vnsEhIxNP5VbVIDiXnLqyKIG+UMdyTg0ZX9EI6k2AfjJkHPtA== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-plain-obj "^1.1.0" + trough "^1.0.0" + vfile "^2.0.0" + x-is-string "^0.1.0" + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -12981,6 +16536,11 @@ union-value@^1.0.0: is-extendable "^0.1.1" set-value "^2.0.1" +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -12995,6 +16555,14 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" +unique-stream@^2.2.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac" + integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== + dependencies: + json-stable-stringify-without-jsonify "^1.0.1" + through2-filter "^3.0.0" + unique-string@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" @@ -13002,7 +16570,96 @@ unique-string@^2.0.0: dependencies: crypto-random-string "^2.0.0" -universalify@^0.1.0: +unist-builder@2.0.3, unist-builder@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-builder/-/unist-builder-2.0.3.tgz#77648711b5d86af0942f334397a33c5e91516436" + integrity sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw== + +unist-util-generated@^1.0.0: + version "1.1.5" + resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-1.1.5.tgz#1e903e68467931ebfaea386dae9ea253628acd42" + integrity sha512-1TC+NxQa4N9pNdayCYA1EGUOCAO0Le3fVp7Jzns6lnua/mYgwHo0tz5WUAfrdpNch1RZLHc61VZ1SDgrtNXLSw== + +unist-util-is@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-3.0.0.tgz#d9e84381c2468e82629e4a5be9d7d05a2dd324cd" + integrity sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A== + +unist-util-is@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.2.tgz#c7d1341188aa9ce5b3cff538958de9895f14a5de" + integrity sha512-Ofx8uf6haexJwI1gxWMGg6I/dLnF2yE+KibhD3/diOqY2TinLcqHXCV6OI5gFVn3xQqDH+u0M625pfKwIwgBKQ== + +unist-util-position@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-3.1.0.tgz#1c42ee6301f8d52f47d14f62bbdb796571fa2d47" + integrity sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA== + +unist-util-remove-position@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-1.1.4.tgz#ec037348b6102c897703eee6d0294ca4755a2020" + integrity sha512-tLqd653ArxJIPnKII6LMZwH+mb5q+n/GtXQZo6S6csPRs5zB0u79Yw8ouR3wTw8wxvdJFhpP6Y7jorWdCgLO0A== + dependencies: + unist-util-visit "^1.1.0" + +unist-util-remove-position@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz#5d19ca79fdba712301999b2b73553ca8f3b352cc" + integrity sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA== + dependencies: + unist-util-visit "^2.0.0" + +unist-util-remove@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unist-util-remove/-/unist-util-remove-2.0.0.tgz#32c2ad5578802f2ca62ab808173d505b2c898488" + integrity sha512-HwwWyNHKkeg/eXRnE11IpzY8JT55JNM1YCwwU9YNCnfzk6s8GhPXrVBBZWiwLeATJbI7euvoGSzcy9M29UeW3g== + dependencies: + unist-util-is "^4.0.0" + +unist-util-stringify-position@^1.0.0, unist-util-stringify-position@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz#3f37fcf351279dcbca7480ab5889bb8a832ee1c6" + integrity sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ== + +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz#cce3bfa1cdf85ba7375d1d5b17bdc4cada9bd9da" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +unist-util-visit-parents@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz#25e43e55312166f3348cae6743588781d112c1e9" + integrity sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g== + dependencies: + unist-util-is "^3.0.0" + +unist-util-visit-parents@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" + integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + +unist-util-visit@2.0.3, unist-util-visit@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-2.0.3.tgz#c3703893146df47203bb8a9795af47d7b971208c" + integrity sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q== + dependencies: + "@types/unist" "^2.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + +unist-util-visit@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-1.4.1.tgz#4724aaa8486e6ee6e26d7ff3c8685960d560b1e3" + integrity sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw== + dependencies: + unist-util-visit-parents "^2.0.0" + +universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== @@ -13017,6 +16674,11 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= +unquote@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" + integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + unset-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" @@ -13037,10 +16699,15 @@ upath@^1.1.1: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== +update-section@^0.3.0: + version "0.3.3" + resolved "https://registry.yarnpkg.com/update-section/-/update-section-0.3.3.tgz#458f17820d37820dc60e20b86d94391b00123158" + integrity sha1-RY8Xgg03gg3GDiC4bZQ5GwASMVg= + uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + version "4.4.0" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.0.tgz#aa714261de793e8a82347a7bcc9ce74e86f28602" + integrity sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g== dependencies: punycode "^2.1.0" @@ -13049,6 +16716,15 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= +url-loader@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" + url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" @@ -13069,6 +16745,25 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" +use-composed-ref@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.1.0.tgz#9220e4e94a97b7b02d7d27eaeab0b37034438bbc" + integrity sha512-my1lNHGWsSDAhhVAT4MKs6IjBUtG6ZG11uUqexPH9PptiIZDQOzaF4f5tEbJ2+7qvNbtXNBbU3SfmN+fXlWDhg== + dependencies: + ts-essentials "^2.0.3" + +use-isomorphic-layout-effect@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.0.tgz#4db2111e0d53ca694187ea5fd5cb2ba610286fe0" + integrity sha512-kady5Z1O1qx5RitodCCKbpJSVEtECXYcnBnb5Q48Bz5V6gBmTu85ZcGdVwVFs8+DaOurNb/L5VdGHoQRMknghw== + +use-latest@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/use-latest/-/use-latest-1.2.0.tgz#a44f6572b8288e0972ec411bdd0840ada366f232" + integrity sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw== + dependencies: + use-isomorphic-layout-effect "^1.0.0" + use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -13084,6 +16779,14 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= +util.promisify@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + util.promisify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" @@ -13108,6 +16811,11 @@ util@^0.11.0: dependencies: inherits "2.0.3" +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= + utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -13118,18 +16826,20 @@ uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^8.1.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.0.tgz#ab738085ca22dc9a8c92725e459b1d507df5d6ea" - integrity sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ== +uuid@^8.0.0, uuid@^8.1.0: + version "8.3.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.1.tgz#2ba2e6ca000da60fce5a196954ab241131e05a31" + integrity sha512-FOmRr+FmWEIG8uhZv6C2bTgEVXsHk08kE7mPlrBbEe+c3r9pjceVPgupIfNIhc4yx55H69OXANrUaSuu9eInKg== -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" +v8-compile-cache@^2.0.3: + version "2.2.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz#9471efa3ef9128d2f7c6a7ca39c4dd6b5055b132" + integrity sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q== + +v8-compile-cache@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" + integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== validate-npm-package-name@^3.0.0: version "3.0.0" @@ -13138,10 +16848,10 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" -validated-changeset@~0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/validated-changeset/-/validated-changeset-0.9.1.tgz#bb4773c7c5392dcc7ecfbc8ccc10c7fef2840d42" - integrity sha512-gEMvF+GN8ECLndHw5Ehc9ckXMgM+RRDK5+lCx2hGX9Qie1q68ixLEtbNXbPPhV4JHq6d7krVfTG+sEQ3X6zoHA== +validated-changeset@~0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/validated-changeset/-/validated-changeset-0.10.0.tgz#2e8188c089ab282c1b51fba3c289073f6bd14c8b" + integrity sha512-n8NB3ol6Tbi0O7bnq1wz81m5Wd1gfHw0HUcH4MatOfqO3DyXzWZV+bUaNq6wThXn20rMFB82C8pTNFSWbgXJLA== vary@~1.1.2: version "1.1.2" @@ -13157,6 +16867,52 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +vfile-location@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.6.tgz#8a274f39411b8719ea5728802e10d9e0dff1519e" + integrity sha512-sSFdyCP3G6Ka0CEmN83A2YCMKIieHx0EDaj5IDP4g1pa5ZJ4FJDvpO0WODLxo4LUX4oe52gmSCK7Jw4SBghqxA== + +vfile-location@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-3.1.0.tgz#81cd8a04b0ac935185f4fce16f270503fc2f692f" + integrity sha512-FCZ4AN9xMcjFIG1oGmZKo61PjwJHRVA+0/tPUP2ul4uIwjGGndIxavEMRpWn5p4xwm/ZsdXp9YNygf1ZyE4x8g== + +vfile-message@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.1.1.tgz#5833ae078a1dfa2d96e9647886cd32993ab313e1" + integrity sha512-1WmsopSGhWt5laNir+633LszXvZ+Z/lxveBf6yhGsqnQIhlhzooZae7zV6YVM1Sdkw68dtAW3ow0pOdPANugvA== + dependencies: + unist-util-stringify-position "^1.1.1" + +vfile-message@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-2.0.4.tgz#5b43b88171d409eae58477d13f23dd41d52c371a" + integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^2.0.0" + +vfile@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-2.3.0.tgz#e62d8e72b20e83c324bc6c67278ee272488bf84a" + integrity sha512-ASt4mBUHcTpMKD/l5Q+WJXNtshlWxOogYyGYYrg4lt/vuRjC1EFQtlAofL5VmtVNIZJzWYFJjzGWZ0Gw8pzW1w== + dependencies: + is-buffer "^1.1.4" + replace-ext "1.0.0" + unist-util-stringify-position "^1.0.0" + vfile-message "^1.0.0" + +vfile@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.0.tgz#26c78ac92eb70816b01d4565e003b7e65a2a0e01" + integrity sha512-a/alcwCvtuc8OX92rqqo7PflxiCgXRFjdyoGVuYV+qbgCb0GgZJRvIgCD4+U/Kl1yhaRsaTwksF88xbPyGsgpw== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + replace-ext "1.0.0" + unist-util-stringify-position "^2.0.0" + vfile-message "^2.0.0" + vm-browserify@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" @@ -13177,7 +16933,7 @@ walk-sync@^0.2.5: ensure-posix-path "^1.0.0" matcher-collection "^1.0.0" -walk-sync@^0.3.0, walk-sync@^0.3.1, walk-sync@^0.3.2, walk-sync@^0.3.3: +walk-sync@^0.3.0, walk-sync@^0.3.1, walk-sync@^0.3.3: version "0.3.4" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.3.4.tgz#cf78486cc567d3a96b5b2237c6108017a5ffb9a4" integrity sha512-ttGcuHA/OBnN2pcM6johpYlEms7XpO5/fyKIr48541xXedan4roO8cS1Q2S/zbbjGH/BarYDAMeS2Mi9HE5Tig== @@ -13204,13 +16960,20 @@ walk-sync@^2.0.0, walk-sync@^2.0.2, walk-sync@^2.1.0, walk-sync@^2.2.0: matcher-collection "^2.0.0" minimatch "^3.0.4" -walker@~1.0.5: +walker@^1.0.7, walker@~1.0.5: version "1.0.7" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= dependencies: makeerror "1.0.x" +warning@^4.0.2, warning@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" + integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w== + dependencies: + loose-envify "^1.0.0" + watch-detector@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/watch-detector/-/watch-detector-1.0.0.tgz#c7b722d8695fee9ab6071e0f38f258e6adb22609" @@ -13228,15 +16991,15 @@ watchpack-chokidar2@^2.0.0: dependencies: chokidar "^2.1.8" -watchpack@^1.5.0: - version "1.7.2" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.2.tgz#c02e4d4d49913c3e7e122c3325365af9d331e9aa" - integrity sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g== +watchpack@^1.5.0, watchpack@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.4.tgz#6e9da53b3c80bb2d6508188f5b200410866cd30b" + integrity sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg== dependencies: graceful-fs "^4.1.2" neo-async "^2.5.0" optionalDependencies: - chokidar "^3.4.0" + chokidar "^3.4.1" watchpack-chokidar2 "^2.0.0" wcwidth@^1.0.1: @@ -13246,12 +17009,46 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +web-namespaces@^1.0.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.4.tgz#bc98a3de60dadd7faefc403d1076d529f5e030ec" + integrity sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw== + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webpack-sources@^1.3.0, webpack-sources@^1.4.0: +webpack-dev-middleware@^3.7.0: + version "3.7.2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" + integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw== + dependencies: + memory-fs "^0.4.1" + mime "^2.4.4" + mkdirp "^0.5.1" + range-parser "^1.2.1" + webpack-log "^2.0.0" + +webpack-hot-middleware@^2.25.0: + version "2.25.0" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" + integrity sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA== + dependencies: + ansi-html "0.0.7" + html-entities "^1.2.0" + querystring "^0.2.0" + strip-ansi "^3.0.0" + +webpack-log@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" + integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== + dependencies: + ansi-colors "^3.0.0" + uuid "^3.3.2" + +webpack-sources@^1.3.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== @@ -13259,6 +17056,42 @@ webpack-sources@^1.3.0, webpack-sources@^1.4.0: source-list-map "^2.0.0" source-map "~0.6.1" +webpack-virtual-modules@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz#20863dc3cb6bb2104729fff951fbe14b18bd0299" + integrity sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA== + dependencies: + debug "^3.0.0" + +webpack@^4.43.0: + version "4.44.2" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" + integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q== + dependencies: + "@webassemblyjs/ast" "1.9.0" + "@webassemblyjs/helper-module-context" "1.9.0" + "@webassemblyjs/wasm-edit" "1.9.0" + "@webassemblyjs/wasm-parser" "1.9.0" + acorn "^6.4.1" + ajv "^6.10.2" + ajv-keywords "^3.4.1" + chrome-trace-event "^1.0.2" + enhanced-resolve "^4.3.0" + eslint-scope "^4.0.3" + json-parse-better-errors "^1.0.2" + loader-runner "^2.4.0" + loader-utils "^1.2.3" + memory-fs "^0.4.1" + micromatch "^3.1.10" + mkdirp "^0.5.3" + neo-async "^2.6.1" + node-libs-browser "^2.2.1" + schema-utils "^1.0.0" + tapable "^1.1.3" + terser-webpack-plugin "^1.4.3" + watchpack "^1.7.4" + webpack-sources "^1.4.1" + webpack@~4.28: version "4.28.4" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.28.4.tgz#1ddae6c89887d7efb752adf0c3cd32b9b07eacd0" @@ -13345,11 +17178,6 @@ which-collection@^1.0.1: is-weakmap "^2.0.1" is-weakset "^2.0.1" -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - which-pm-runs@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" @@ -13367,7 +17195,7 @@ which-typed-array@^1.1.2: has-symbols "^1.0.1" is-typed-array "^1.1.3" -which@1, which@^1.2.14, which@^1.2.9, which@^1.3.0: +which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -13388,7 +17216,14 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2" -word-wrap@~1.2.3: +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== @@ -13410,6 +17245,13 @@ worker-farm@^1.7.0: dependencies: errno "~0.1.7" +worker-rpc@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/worker-rpc/-/worker-rpc-0.1.1.tgz#cb565bd6d7071a8f16660686051e969ad32f54d5" + integrity sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg== + dependencies: + microevent.ts "~0.1.1" + workerpool@^2.3.0: version "2.3.3" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-2.3.3.tgz#49a70089bd55e890d68cc836a19419451d7c81d7" @@ -13426,19 +17268,15 @@ workerpool@^3.1.1: object-assign "4.1.1" rsvp "^4.8.4" -workerpool@^5.0.1, workerpool@^5.0.4: +workerpool@^5.0.1: version "5.0.4" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-5.0.4.tgz#4f67cb70ff7550a27ab94de25b0b843cd92059a2" integrity sha512-Sywova24Ow2NQ24JPB68bI89EdqMDjUXo4OpofK/QMD7C2ZVMloYBgQ5J3PChcBJHj2vspsmGx1/3nBKXtUkXQ== -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== - dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" +workerpool@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.0.2.tgz#e241b43d8d033f1beb52c7851069456039d1d438" + integrity sha512-DSNyvOpFKrNusaaUwk+ej6cBj1bmhLcBfj80elGk+ZIo5JSkq+unB1dLKEOcNfJDZgjGICfhQ0Q5TbP0PvF4+Q== wrap-ansi@^6.2.0: version "6.2.0" @@ -13449,6 +17287,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -13490,6 +17337,11 @@ ws@~6.1.0: dependencies: async-limiter "~1.0.0" +x-is-string@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" + integrity sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= + xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" @@ -13515,14 +17367,7 @@ xmlhttprequest-ssl@~1.5.4: resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4= -xregexp@^4.2.4: - version "4.3.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.3.0.tgz#7e92e73d9174a99a59743f67a4ce879a04b5ae50" - integrity sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g== - dependencies: - "@babel/runtime-corejs3" "^7.8.3" - -xtend@^4.0.0, xtend@~4.0.1: +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== @@ -13532,16 +17377,16 @@ y18n@^4.0.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +y18n@^5.0.2: + version "5.0.4" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.4.tgz#0ab2db89dd5873b5ec4682d8e703e833373ea897" + integrity sha512-deLOfD+RvFgrpAmSZgfGdWYE+OKyHcVHaRQ7NphG/63scpRvTHHeQMAxGGvaLVGJ+HYVcCXlzcTK0ZehFf+eHQ== + yadda@*: version "2.1.0" resolved "https://registry.yarnpkg.com/yadda/-/yadda-2.1.0.tgz#44b2279f552d0df49e5af663457ee65a796df7ef" integrity sha512-jWEhhPemaU2OBNjOmwtdbNm7dHS43bNFexsV4aEDhlkz/vuGvYYHsySdSCM0YWdGLzlyqEJqLkXva+vFRTOblg== -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - yallist@^3.0.0, yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -13560,61 +17405,55 @@ yam@^1.0.0: fs-extra "^4.0.2" lodash.merge "^4.6.0" -yaml@^1.7.2: +yaml@^1.10.0, yaml@^1.7.2: version "1.10.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== -yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" +yargs-parser@^20.2.2: + version "20.2.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.3.tgz#92419ba867b858c868acf8bae9bf74af0dd0ce26" + integrity sha512-emOFRT9WVHw03QSvN5qor9QQT9+sw5vwxfYweivSMHTcAXPefwVae2FjO7JJjj8hCE4CzPOPeFM83VwT29HCww== -yargs-parser@^18.1.2: - version "18.1.3" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" - integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== +yargs@^16.0.3: + version "16.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.1.0.tgz#fc333fe4791660eace5a894b39d42f851cd48f2a" + integrity sha512-upWFJOmDdHN0syLuESuvXDmrRcWd1QafJolHskzaw79uZa7/x53gxQKiR07W59GWY1tFhhU/Th9DrtSfpS782g== dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" - -yargs@^13.3.2: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" - -yargs@^15.3.1: - version "15.4.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.0.tgz#53949fb768309bac1843de9b17b80051e9805ec2" - integrity sha512-D3fRFnZwLWp8jVAAhPZBsmeIHY8tTsb8ItV9KaAaopmC6wde2u6Yw29JBIZHXw14kgkRnYmDgmQU4FVMDlIsWw== - dependencies: - cliui "^6.0.0" - decamelize "^3.2.0" - find-up "^4.1.0" - get-caller-file "^2.0.1" - require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" string-width "^4.2.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^18.1.2" + y18n "^5.0.2" + yargs-parser "^20.2.2" yeast@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + +yui@^3.18.1: + version "3.18.1" + resolved "https://registry.yarnpkg.com/yui/-/yui-3.18.1.tgz#e000269ec0a7b6fbc741cbb8fcbd0e65117b014c" + integrity sha1-4AAmnsCntvvHQcu4/L0OZRF7AUw= + dependencies: + request "~2.40.0" + +yuidocjs@^0.10.2: + version "0.10.2" + resolved "https://registry.yarnpkg.com/yuidocjs/-/yuidocjs-0.10.2.tgz#33924967ce619024cd70ef694e267d2f988f73f6" + integrity sha1-M5JJZ85hkCTNcO9pTiZ9L5iPc/Y= + dependencies: + express "^4.13.1" + graceful-fs "^4.1.2" + markdown-it "^4.3.0" + mdn-links "^0.1.0" + minimatch "^3.0.2" + rimraf "^2.4.1" + yui "^3.18.1" + +zwitch@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" + integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw== diff --git a/vendor/github.com/StackExchange/wmi/swbemservices.go b/vendor/github.com/StackExchange/wmi/swbemservices.go index 9765a53f7..3ff875630 100644 --- a/vendor/github.com/StackExchange/wmi/swbemservices.go +++ b/vendor/github.com/StackExchange/wmi/swbemservices.go @@ -77,7 +77,7 @@ func (s *SWbemServices) process(initError chan error) { //fmt.Println("process: starting background thread initialization") //All OLE/WMI calls must happen on the same initialized thead, so lock this goroutine runtime.LockOSThread() - defer runtime.LockOSThread() + defer runtime.UnlockOSThread() err := ole.CoInitializeEx(0, ole.COINIT_MULTITHREADED) if err != nil { diff --git a/vendor/github.com/StackExchange/wmi/wmi.go b/vendor/github.com/StackExchange/wmi/wmi.go index a951b1258..eab18cbfe 100644 --- a/vendor/github.com/StackExchange/wmi/wmi.go +++ b/vendor/github.com/StackExchange/wmi/wmi.go @@ -285,6 +285,10 @@ func (c *Client) loadEntity(dst interface{}, src *ole.IDispatch) (errFieldMismat } defer prop.Clear() + if prop.VT == 0x1 { //VT_NULL + continue + } + switch val := prop.Value().(type) { case int8, int16, int32, int64, int: v := reflect.ValueOf(val).Int() @@ -383,7 +387,7 @@ func (c *Client) loadEntity(dst interface{}, src *ole.IDispatch) (errFieldMismat } f.Set(fArr) } - case reflect.Uint8: + case reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uint: safeArray := prop.ToArray() if safeArray != nil { arr := safeArray.ToValueArray() @@ -394,6 +398,17 @@ func (c *Client) loadEntity(dst interface{}, src *ole.IDispatch) (errFieldMismat } f.Set(fArr) } + case reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64, reflect.Int: + safeArray := prop.ToArray() + if safeArray != nil { + arr := safeArray.ToValueArray() + fArr := reflect.MakeSlice(f.Type(), len(arr), len(arr)) + for i, v := range arr { + s := fArr.Index(i) + s.SetInt(reflect.ValueOf(v).Int()) + } + f.Set(fArr) + } default: return &ErrFieldMismatch{ StructType: of.Type(), diff --git a/vendor/github.com/armon/go-metrics/prometheus/prometheus.go b/vendor/github.com/armon/go-metrics/prometheus/prometheus.go index abb8c4986..db67a4d19 100644 --- a/vendor/github.com/armon/go-metrics/prometheus/prometheus.go +++ b/vendor/github.com/armon/go-metrics/prometheus/prometheus.go @@ -5,6 +5,7 @@ package prometheus import ( "fmt" "log" + "math" "regexp" "strings" "sync" @@ -29,6 +30,26 @@ type PrometheusOpts struct { // untracked. If the value is zero, a metric is never expired. Expiration time.Duration Registerer prometheus.Registerer + + // Gauges, Summaries, and Counters allow us to pre-declare metrics by giving their Name, Help, and ConstLabels to + // the PrometheusSink when it is created. Metrics declared in this way will be initialized at zero and will not be + // deleted when their expiry is reached. + // - Gauges and Summaries will be set to NaN when they expire. + // - Counters continue to Collect their last known value. + // Ex: + // PrometheusOpts{ + // Expiration: 10 * time.Second, + // Gauges: []GaugeDefinition{ + // { + // Name: []string{ "application", "component", "measurement"}, + // Help: "application_component_measurement provides an example of how to declare static metrics", + // ConstLabels: []metrics.Label{ { Name: "my_label", Value: "does_not_change" }, }, + // }, + // }, + // } + GaugeDefinitions []GaugeDefinition + SummaryDefinitions []SummaryDefinition + CounterDefinitions []CounterDefinition } type PrometheusSink struct { @@ -39,19 +60,44 @@ type PrometheusSink struct { expiration time.Duration } -type PrometheusGauge struct { +// GaugeDefinition can be provided to PrometheusOpts to declare a constant gauge that is not deleted on expiry. +type GaugeDefinition struct { + Name []string + ConstLabels []metrics.Label + Help string +} + +type gauge struct { prometheus.Gauge updatedAt time.Time + // canDelete is set if the metric is created during runtime so we know it's ephemeral and can delete it on expiry. + canDelete bool } -type PrometheusSummary struct { +// SummaryDefinition can be provided to PrometheusOpts to declare a constant summary that is not deleted on expiry. +type SummaryDefinition struct { + Name []string + ConstLabels []metrics.Label + Help string +} + +type summary struct { prometheus.Summary updatedAt time.Time + canDelete bool } -type PrometheusCounter struct { +// CounterDefinition can be provided to PrometheusOpts to declare a constant counter that is not deleted on expiry. +type CounterDefinition struct { + Name []string + ConstLabels []metrics.Label + Help string +} + +type counter struct { prometheus.Counter updatedAt time.Time + canDelete bool } // NewPrometheusSink creates a new PrometheusSink using the default options. @@ -68,6 +114,10 @@ func NewPrometheusSinkFrom(opts PrometheusOpts) (*PrometheusSink, error) { expiration: opts.Expiration, } + initGauges(&sink.gauges, opts.GaugeDefinitions) + initSummaries(&sink.summaries, opts.SummaryDefinitions) + initCounters(&sink.counters, opts.CounterDefinitions) + reg := opts.Registerer if reg == nil { reg = prometheus.DefaultRegisterer @@ -90,43 +140,101 @@ func (p *PrometheusSink) Collect(c chan<- prometheus.Metric) { expire := p.expiration != 0 now := time.Now() p.gauges.Range(func(k, v interface{}) bool { - if v != nil { - lastUpdate := v.(*PrometheusGauge).updatedAt - if expire && lastUpdate.Add(p.expiration).Before(now) { - p.gauges.Delete(k) - } else { - v.(*PrometheusGauge).Collect(c) - } + if v == nil { + return true } + g := v.(*gauge) + lastUpdate := g.updatedAt + if expire && lastUpdate.Add(p.expiration).Before(now) { + if g.canDelete { + p.gauges.Delete(k) + return true + } + // We have not observed the gauge this interval so we don't know its value. + g.Set(math.NaN()) + } + g.Collect(c) return true }) p.summaries.Range(func(k, v interface{}) bool { - if v != nil { - lastUpdate := v.(*PrometheusSummary).updatedAt - if expire && lastUpdate.Add(p.expiration).Before(now) { - p.summaries.Delete(k) - } else { - v.(*PrometheusSummary).Collect(c) - } + if v == nil { + return true } + s := v.(*summary) + lastUpdate := s.updatedAt + if expire && lastUpdate.Add(p.expiration).Before(now) { + if s.canDelete { + p.summaries.Delete(k) + return true + } + // We have observed nothing in this interval. + s.Observe(math.NaN()) + } + s.Collect(c) return true }) p.counters.Range(func(k, v interface{}) bool { - if v != nil { - lastUpdate := v.(*PrometheusCounter).updatedAt - if expire && lastUpdate.Add(p.expiration).Before(now) { - p.counters.Delete(k) - } else { - v.(*PrometheusCounter).Collect(c) - } + if v == nil { + return true } + count := v.(*counter) + lastUpdate := count.updatedAt + if expire && lastUpdate.Add(p.expiration).Before(now) { + if count.canDelete { + p.counters.Delete(k) + return true + } + // Counters remain at their previous value when not observed, so we do not set it to NaN. + } + count.Collect(c) return true }) } +func initGauges(m *sync.Map, gauges []GaugeDefinition) { + for _, g := range gauges { + key, hash := flattenKey(g.Name, g.ConstLabels) + pG := prometheus.NewGauge(prometheus.GaugeOpts{ + Name: key, + Help: g.Help, + ConstLabels: prometheusLabels(g.ConstLabels), + }) + m.Store(hash, &gauge{ Gauge: pG }) + } + return +} + +func initSummaries(m *sync.Map, summaries []SummaryDefinition) { + for _, s := range summaries { + key, hash := flattenKey(s.Name, s.ConstLabels) + pS := prometheus.NewSummary(prometheus.SummaryOpts{ + Name: key, + Help: s.Help, + MaxAge: 10 * time.Second, + ConstLabels: prometheusLabels(s.ConstLabels), + Objectives: map[float64]float64{0.5: 0.05, 0.9: 0.01, 0.99: 0.001}, + }) + m.Store(hash, &summary{ Summary: pS }) + } + return +} + +func initCounters(m *sync.Map, counters []CounterDefinition) { + for _, c := range counters { + key, hash := flattenKey(c.Name, c.ConstLabels) + pC := prometheus.NewCounter(prometheus.CounterOpts{ + Name: key, + Help: c.Help, + ConstLabels: prometheusLabels(c.ConstLabels), + }) + m.Store(hash, &counter{ Counter: pC }) + } + return +} + var forbiddenChars = regexp.MustCompile("[ .=\\-/]") -func (p *PrometheusSink) flattenKey(parts []string, labels []metrics.Label) (string, string) { +func flattenKey(parts []string, labels []metrics.Label) (string, string) { key := strings.Join(parts, "_") key = forbiddenChars.ReplaceAllString(key, "_") @@ -151,7 +259,7 @@ func (p *PrometheusSink) SetGauge(parts []string, val float32) { } func (p *PrometheusSink) SetGaugeWithLabels(parts []string, val float32, labels []metrics.Label) { - key, hash := p.flattenKey(parts, labels) + key, hash := flattenKey(parts, labels) pg, ok := p.gauges.Load(hash) // The sync.Map underlying gauges stores pointers to our structs. If we need to make updates, @@ -161,10 +269,12 @@ func (p *PrometheusSink) SetGaugeWithLabels(parts []string, val float32, labels // so there's no issues there. It's possible for racy updates to occur to the updatedAt // value, but since we're always setting it to time.Now(), it doesn't really matter. if ok { - localGauge := *pg.(*PrometheusGauge) + localGauge := *pg.(*gauge) localGauge.Set(float64(val)) localGauge.updatedAt = time.Now() p.gauges.Store(hash, &localGauge) + + // The gauge does not exist, create the gauge and allow it to be deleted } else { g := prometheus.NewGauge(prometheus.GaugeOpts{ Name: key, @@ -172,8 +282,10 @@ func (p *PrometheusSink) SetGaugeWithLabels(parts []string, val float32, labels ConstLabels: prometheusLabels(labels), }) g.Set(float64(val)) - pg = &PrometheusGauge{ - g, time.Now(), + pg = &gauge{ + Gauge: g, + updatedAt: time.Now(), + canDelete: true, } p.gauges.Store(hash, pg) } @@ -184,14 +296,17 @@ func (p *PrometheusSink) AddSample(parts []string, val float32) { } func (p *PrometheusSink) AddSampleWithLabels(parts []string, val float32, labels []metrics.Label) { - key, hash := p.flattenKey(parts, labels) + key, hash := flattenKey(parts, labels) ps, ok := p.summaries.Load(hash) + // Does the summary already exist for this sample type? if ok { - localSummary := *ps.(*PrometheusSummary) + localSummary := *ps.(*summary) localSummary.Observe(float64(val)) localSummary.updatedAt = time.Now() p.summaries.Store(hash, &localSummary) + + // The summary does not exist, create the Summary and allow it to be deleted } else { s := prometheus.NewSummary(prometheus.SummaryOpts{ Name: key, @@ -201,8 +316,10 @@ func (p *PrometheusSink) AddSampleWithLabels(parts []string, val float32, labels Objectives: map[float64]float64{0.5: 0.05, 0.9: 0.01, 0.99: 0.001}, }) s.Observe(float64(val)) - ps = &PrometheusSummary{ - s, time.Now(), + ps = &summary{ + Summary: s, + updatedAt: time.Now(), + canDelete: true, } p.summaries.Store(hash, ps) } @@ -219,14 +336,17 @@ func (p *PrometheusSink) IncrCounter(parts []string, val float32) { } func (p *PrometheusSink) IncrCounterWithLabels(parts []string, val float32, labels []metrics.Label) { - key, hash := p.flattenKey(parts, labels) + key, hash := flattenKey(parts, labels) pc, ok := p.counters.Load(hash) + // Does the counter exist? if ok { - localCounter := *pc.(*PrometheusCounter) + localCounter := *pc.(*counter) localCounter.Add(float64(val)) localCounter.updatedAt = time.Now() p.counters.Store(hash, &localCounter) + + // The counter does not exist yet, create it and allow it to be deleted } else { c := prometheus.NewCounter(prometheus.CounterOpts{ Name: key, @@ -234,13 +354,17 @@ func (p *PrometheusSink) IncrCounterWithLabels(parts []string, val float32, labe ConstLabels: prometheusLabels(labels), }) c.Add(float64(val)) - pc = &PrometheusCounter{ - c, time.Now(), + pc = &counter{ + Counter: c, + updatedAt: time.Now(), + canDelete: true, } p.counters.Store(hash, pc) } } +// PrometheusPushSink wraps a normal prometheus sink and provides an address and facilities to export it to an address +// on an interval. type PrometheusPushSink struct { *PrometheusSink pusher *push.Pusher @@ -249,7 +373,8 @@ type PrometheusPushSink struct { stopChan chan struct{} } -func NewPrometheusPushSink(address string, pushIterval time.Duration, name string) (*PrometheusPushSink, error) { +// NewPrometheusPushSink creates a PrometheusPushSink by taking an address, interval, and destination name. +func NewPrometheusPushSink(address string, pushInterval time.Duration, name string) (*PrometheusPushSink, error) { promSink := &PrometheusSink{ gauges: sync.Map{}, summaries: sync.Map{}, @@ -263,7 +388,7 @@ func NewPrometheusPushSink(address string, pushIterval time.Duration, name strin promSink, pusher, address, - pushIterval, + pushInterval, make(chan struct{}), } diff --git a/vendor/github.com/go-ole/go-ole/.travis.yml b/vendor/github.com/go-ole/go-ole/.travis.yml index 0c2c02bdf..28f740cd5 100644 --- a/vendor/github.com/go-ole/go-ole/.travis.yml +++ b/vendor/github.com/go-ole/go-ole/.travis.yml @@ -2,8 +2,7 @@ language: go sudo: false go: - - 1.1 - - 1.2 - - 1.3 - - 1.4 + - 1.9.x + - 1.10.x + - 1.11.x - tip diff --git a/vendor/github.com/go-ole/go-ole/README.md b/vendor/github.com/go-ole/go-ole/README.md index 0ea9db33c..7b577558d 100644 --- a/vendor/github.com/go-ole/go-ole/README.md +++ b/vendor/github.com/go-ole/go-ole/README.md @@ -1,4 +1,4 @@ -#Go OLE +# Go OLE [![Build status](https://ci.appveyor.com/api/projects/status/qr0u2sf7q43us9fj?svg=true)](https://ci.appveyor.com/project/jacobsantos/go-ole-jgs28) [![Build Status](https://travis-ci.org/go-ole/go-ole.svg?branch=master)](https://travis-ci.org/go-ole/go-ole) @@ -35,12 +35,12 @@ AppVeyor is used to build on Windows using the (in-development) test COM server. The tests currently do run and do pass and this should be maintained with commits. -##Versioning +## Versioning Go OLE uses [semantic versioning](http://semver.org) for version numbers, which is similar to the version contract of the Go language. Which means that the major version will always maintain backwards compatibility with minor versions. Minor versions will only add new additions and changes. Fixes will always be in patch. This contract should allow you to upgrade to new minor and patch versions without breakage or modifications to your existing code. Leave a ticket, if there is breakage, so that it could be fixed. -##LICENSE +## LICENSE Under the MIT License: http://mattn.mit-license.org/2013 diff --git a/vendor/github.com/go-ole/go-ole/com.go b/vendor/github.com/go-ole/go-ole/com.go index 75ebbf13f..6f986b189 100644 --- a/vendor/github.com/go-ole/go-ole/com.go +++ b/vendor/github.com/go-ole/go-ole/com.go @@ -3,9 +3,7 @@ package ole import ( - "errors" "syscall" - "time" "unicode/utf16" "unsafe" ) @@ -21,6 +19,7 @@ var ( procStringFromCLSID, _ = modole32.FindProc("StringFromCLSID") procStringFromIID, _ = modole32.FindProc("StringFromIID") procIIDFromString, _ = modole32.FindProc("IIDFromString") + procCoGetObject, _ = modole32.FindProc("CoGetObject") procGetUserDefaultLCID, _ = modkernel32.FindProc("GetUserDefaultLCID") procCopyMemory, _ = modkernel32.FindProc("RtlMoveMemory") procVariantInit, _ = modoleaut32.FindProc("VariantInit") @@ -209,6 +208,32 @@ func GetActiveObject(clsid *GUID, iid *GUID) (unk *IUnknown, err error) { return } +type BindOpts struct { + CbStruct uint32 + GrfFlags uint32 + GrfMode uint32 + TickCountDeadline uint32 +} + +// GetObject retrieves pointer to active object. +func GetObject(programID string, bindOpts *BindOpts, iid *GUID) (unk *IUnknown, err error) { + if bindOpts != nil { + bindOpts.CbStruct = uint32(unsafe.Sizeof(BindOpts{})) + } + if iid == nil { + iid = IID_IUnknown + } + hr, _, _ := procCoGetObject.Call( + uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr(programID))), + uintptr(unsafe.Pointer(bindOpts)), + uintptr(unsafe.Pointer(iid)), + uintptr(unsafe.Pointer(&unk))) + if hr != 0 { + err = NewError(hr) + } + return +} + // VariantInit initializes variant. func VariantInit(v *VARIANT) (err error) { hr, _, _ := procVariantInit.Call(uintptr(unsafe.Pointer(v))) @@ -317,13 +342,3 @@ func DispatchMessage(msg *Msg) (ret int32) { ret = int32(r0) return } - -// GetVariantDate converts COM Variant Time value to Go time.Time. -func GetVariantDate(value float64) (time.Time, error) { - var st syscall.Systemtime - r, _, _ := procVariantTimeToSystemTime.Call(uintptr(value), uintptr(unsafe.Pointer(&st))) - if r != 0 { - return time.Date(int(st.Year), time.Month(st.Month), int(st.Day), int(st.Hour), int(st.Minute), int(st.Second), int(st.Milliseconds/1000), time.UTC), nil - } - return time.Now(), errors.New("Could not convert to time, passing current time.") -} diff --git a/vendor/github.com/go-ole/go-ole/com_func.go b/vendor/github.com/go-ole/go-ole/com_func.go index 425aad323..cef539d9d 100644 --- a/vendor/github.com/go-ole/go-ole/com_func.go +++ b/vendor/github.com/go-ole/go-ole/com_func.go @@ -169,6 +169,6 @@ func DispatchMessage(msg *Msg) int32 { return int32(0) } -func GetVariantDate(value float64) (time.Time, error) { +func GetVariantDate(value uint64) (time.Time, error) { return time.Now(), NewError(E_NOTIMPL) } diff --git a/vendor/github.com/go-ole/go-ole/go.mod b/vendor/github.com/go-ole/go-ole/go.mod new file mode 100644 index 000000000..df98533ea --- /dev/null +++ b/vendor/github.com/go-ole/go-ole/go.mod @@ -0,0 +1,3 @@ +module github.com/go-ole/go-ole + +go 1.12 diff --git a/vendor/github.com/go-ole/go-ole/idispatch_windows.go b/vendor/github.com/go-ole/go-ole/idispatch_windows.go index 020e4f51b..6ec180b55 100644 --- a/vendor/github.com/go-ole/go-ole/idispatch_windows.go +++ b/vendor/github.com/go-ole/go-ole/idispatch_windows.go @@ -3,6 +3,7 @@ package ole import ( + "math/big" "syscall" "time" "unsafe" @@ -132,6 +133,8 @@ func invoke(disp *IDispatch, dispid int32, dispatch int16, params ...interface{} vargs[n] = NewVariant(VT_R8, *(*int64)(unsafe.Pointer(&vv))) case *float64: vargs[n] = NewVariant(VT_R8|VT_BYREF, int64(uintptr(unsafe.Pointer(v.(*float64))))) + case *big.Int: + vargs[n] = NewVariant(VT_DECIMAL, v.(*big.Int).Int64()) case string: vargs[n] = NewVariant(VT_BSTR, int64(uintptr(unsafe.Pointer(SysAllocStringLen(v.(string)))))) case *string: diff --git a/vendor/github.com/go-ole/go-ole/safearray_func.go b/vendor/github.com/go-ole/go-ole/safearray_func.go index 8ff0baa41..0dee670ce 100644 --- a/vendor/github.com/go-ole/go-ole/safearray_func.go +++ b/vendor/github.com/go-ole/go-ole/safearray_func.go @@ -124,12 +124,12 @@ func safeArrayGetElementSize(safearray *SafeArray) (*uint32, error) { } // safeArrayGetElement retrieves element at given index. -func safeArrayGetElement(safearray *SafeArray, index int64, pv unsafe.Pointer) error { +func safeArrayGetElement(safearray *SafeArray, index int32, pv unsafe.Pointer) error { return NewError(E_NOTIMPL) } // safeArrayGetElement retrieves element at given index and converts to string. -func safeArrayGetElementString(safearray *SafeArray, index int64) (string, error) { +func safeArrayGetElementString(safearray *SafeArray, index int32) (string, error) { return "", NewError(E_NOTIMPL) } @@ -146,8 +146,8 @@ func safeArrayGetIID(safearray *SafeArray) (*GUID, error) { // multidimensional array. // // AKA: SafeArrayGetLBound in Windows API. -func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (int64, error) { - return int64(0), NewError(E_NOTIMPL) +func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (int32, error) { + return int32(0), NewError(E_NOTIMPL) } // safeArrayGetUBound returns upper bounds of SafeArray. @@ -156,8 +156,8 @@ func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (int64, error) { // multidimensional array. // // AKA: SafeArrayGetUBound in Windows API. -func safeArrayGetUBound(safearray *SafeArray, dimension uint32) (int64, error) { - return int64(0), NewError(E_NOTIMPL) +func safeArrayGetUBound(safearray *SafeArray, dimension uint32) (int32, error) { + return int32(0), NewError(E_NOTIMPL) } // safeArrayGetVartype returns data type of SafeArray. diff --git a/vendor/github.com/go-ole/go-ole/safearray_windows.go b/vendor/github.com/go-ole/go-ole/safearray_windows.go index b27936e24..b48a2394d 100644 --- a/vendor/github.com/go-ole/go-ole/safearray_windows.go +++ b/vendor/github.com/go-ole/go-ole/safearray_windows.go @@ -205,7 +205,7 @@ func safeArrayGetElementSize(safearray *SafeArray) (length *uint32, err error) { } // safeArrayGetElement retrieves element at given index. -func safeArrayGetElement(safearray *SafeArray, index int64, pv unsafe.Pointer) error { +func safeArrayGetElement(safearray *SafeArray, index int32, pv unsafe.Pointer) error { return convertHresultToError( procSafeArrayGetElement.Call( uintptr(unsafe.Pointer(safearray)), @@ -214,7 +214,7 @@ func safeArrayGetElement(safearray *SafeArray, index int64, pv unsafe.Pointer) e } // safeArrayGetElementString retrieves element at given index and converts to string. -func safeArrayGetElementString(safearray *SafeArray, index int64) (str string, err error) { +func safeArrayGetElementString(safearray *SafeArray, index int32) (str string, err error) { var element *int16 err = convertHresultToError( procSafeArrayGetElement.Call( @@ -243,7 +243,7 @@ func safeArrayGetIID(safearray *SafeArray) (guid *GUID, err error) { // multidimensional array. // // AKA: SafeArrayGetLBound in Windows API. -func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (lowerBound int64, err error) { +func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (lowerBound int32, err error) { err = convertHresultToError( procSafeArrayGetLBound.Call( uintptr(unsafe.Pointer(safearray)), @@ -258,7 +258,7 @@ func safeArrayGetLBound(safearray *SafeArray, dimension uint32) (lowerBound int6 // multidimensional array. // // AKA: SafeArrayGetUBound in Windows API. -func safeArrayGetUBound(safearray *SafeArray, dimension uint32) (upperBound int64, err error) { +func safeArrayGetUBound(safearray *SafeArray, dimension uint32) (upperBound int32, err error) { err = convertHresultToError( procSafeArrayGetUBound.Call( uintptr(unsafe.Pointer(safearray)), diff --git a/vendor/github.com/go-ole/go-ole/safearrayconversion.go b/vendor/github.com/go-ole/go-ole/safearrayconversion.go index ffeb2b97b..259f488ec 100644 --- a/vendor/github.com/go-ole/go-ole/safearrayconversion.go +++ b/vendor/github.com/go-ole/go-ole/safearrayconversion.go @@ -14,7 +14,7 @@ func (sac *SafeArrayConversion) ToStringArray() (strings []string) { totalElements, _ := sac.TotalElements(0) strings = make([]string, totalElements) - for i := int64(0); i < totalElements; i++ { + for i := int32(0); i < totalElements; i++ { strings[int32(i)], _ = safeArrayGetElementString(sac.Array, i) } @@ -25,7 +25,7 @@ func (sac *SafeArrayConversion) ToByteArray() (bytes []byte) { totalElements, _ := sac.TotalElements(0) bytes = make([]byte, totalElements) - for i := int64(0); i < totalElements; i++ { + for i := int32(0); i < totalElements; i++ { safeArrayGetElement(sac.Array, i, unsafe.Pointer(&bytes[int32(i)])) } @@ -37,59 +37,59 @@ func (sac *SafeArrayConversion) ToValueArray() (values []interface{}) { values = make([]interface{}, totalElements) vt, _ := safeArrayGetVartype(sac.Array) - for i := 0; i < int(totalElements); i++ { + for i := int32(0); i < totalElements; i++ { switch VT(vt) { case VT_BOOL: var v bool - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_I1: var v int8 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_I2: var v int16 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_I4: var v int32 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_I8: var v int64 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_UI1: var v uint8 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_UI2: var v uint16 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_UI4: var v uint32 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_UI8: var v uint64 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_R4: var v float32 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_R8: var v float64 - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_BSTR: var v string - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v case VT_VARIANT: var v VARIANT - safeArrayGetElement(sac.Array, int64(i), unsafe.Pointer(&v)) + safeArrayGetElement(sac.Array, i, unsafe.Pointer(&v)) values[i] = v.Value() default: // TODO @@ -111,14 +111,14 @@ func (sac *SafeArrayConversion) GetSize() (length *uint32, err error) { return safeArrayGetElementSize(sac.Array) } -func (sac *SafeArrayConversion) TotalElements(index uint32) (totalElements int64, err error) { +func (sac *SafeArrayConversion) TotalElements(index uint32) (totalElements int32, err error) { if index < 1 { index = 1 } // Get array bounds - var LowerBounds int64 - var UpperBounds int64 + var LowerBounds int32 + var UpperBounds int32 LowerBounds, err = safeArrayGetLBound(sac.Array, index) if err != nil { diff --git a/vendor/github.com/go-ole/go-ole/variant.go b/vendor/github.com/go-ole/go-ole/variant.go index 36969725e..967a23fea 100644 --- a/vendor/github.com/go-ole/go-ole/variant.go +++ b/vendor/github.com/go-ole/go-ole/variant.go @@ -88,10 +88,10 @@ func (v *VARIANT) Value() interface{} { return v.ToString() case VT_DATE: // VT_DATE type will either return float64 or time.Time. - d := float64(v.Val) + d := uint64(v.Val) date, err := GetVariantDate(d) if err != nil { - return d + return float64(v.Val) } return date case VT_UNKNOWN: diff --git a/vendor/github.com/go-ole/go-ole/variant_date_386.go b/vendor/github.com/go-ole/go-ole/variant_date_386.go new file mode 100644 index 000000000..1b970f63f --- /dev/null +++ b/vendor/github.com/go-ole/go-ole/variant_date_386.go @@ -0,0 +1,22 @@ +// +build windows,386 + +package ole + +import ( + "errors" + "syscall" + "time" + "unsafe" +) + +// GetVariantDate converts COM Variant Time value to Go time.Time. +func GetVariantDate(value uint64) (time.Time, error) { + var st syscall.Systemtime + v1 := uint32(value) + v2 := uint32(value >> 32) + r, _, _ := procVariantTimeToSystemTime.Call(uintptr(v1), uintptr(v2), uintptr(unsafe.Pointer(&st))) + if r != 0 { + return time.Date(int(st.Year), time.Month(st.Month), int(st.Day), int(st.Hour), int(st.Minute), int(st.Second), int(st.Milliseconds/1000), time.UTC), nil + } + return time.Now(), errors.New("Could not convert to time, passing current time.") +} diff --git a/vendor/github.com/go-ole/go-ole/variant_date_amd64.go b/vendor/github.com/go-ole/go-ole/variant_date_amd64.go new file mode 100644 index 000000000..6952f1f0d --- /dev/null +++ b/vendor/github.com/go-ole/go-ole/variant_date_amd64.go @@ -0,0 +1,20 @@ +// +build windows,amd64 + +package ole + +import ( + "errors" + "syscall" + "time" + "unsafe" +) + +// GetVariantDate converts COM Variant Time value to Go time.Time. +func GetVariantDate(value uint64) (time.Time, error) { + var st syscall.Systemtime + r, _, _ := procVariantTimeToSystemTime.Call(uintptr(value), uintptr(unsafe.Pointer(&st))) + if r != 0 { + return time.Date(int(st.Year), time.Month(st.Month), int(st.Day), int(st.Hour), int(st.Minute), int(st.Second), int(st.Milliseconds/1000), time.UTC), nil + } + return time.Now(), errors.New("Could not convert to time, passing current time.") +} diff --git a/vendor/github.com/go-ole/go-ole/variant_ppc64le.go b/vendor/github.com/go-ole/go-ole/variant_ppc64le.go new file mode 100644 index 000000000..326427a7d --- /dev/null +++ b/vendor/github.com/go-ole/go-ole/variant_ppc64le.go @@ -0,0 +1,12 @@ +// +build ppc64le + +package ole + +type VARIANT struct { + VT VT // 2 + wReserved1 uint16 // 4 + wReserved2 uint16 // 6 + wReserved3 uint16 // 8 + Val int64 // 16 + _ [8]byte // 24 +} diff --git a/vendor/github.com/hashicorp/go-hclog/exclude.go b/vendor/github.com/hashicorp/go-hclog/exclude.go new file mode 100644 index 000000000..cfd4307a8 --- /dev/null +++ b/vendor/github.com/hashicorp/go-hclog/exclude.go @@ -0,0 +1,71 @@ +package hclog + +import ( + "regexp" + "strings" +) + +// ExcludeByMessage provides a simple way to build a list of log messages that +// can be queried and matched. This is meant to be used with the Exclude +// option on Options to suppress log messages. This does not hold any mutexs +// within itself, so normal usage would be to Add entries at setup and none after +// Exclude is going to be called. Exclude is called with a mutex held within +// the Logger, so that doesn't need to use a mutex. Example usage: +// +// f := new(ExcludeByMessage) +// f.Add("Noisy log message text") +// appLogger.Exclude = f.Exclude +type ExcludeByMessage struct { + messages map[string]struct{} +} + +// Add a message to be filtered. Do not call this after Exclude is to be called +// due to concurrency issues. +func (f *ExcludeByMessage) Add(msg string) { + if f.messages == nil { + f.messages = make(map[string]struct{}) + } + + f.messages[msg] = struct{}{} +} + +// Return true if the given message should be included +func (f *ExcludeByMessage) Exclude(level Level, msg string, args ...interface{}) bool { + _, ok := f.messages[msg] + return ok +} + +// ExcludeByPrefix is a simple type to match a message string that has a common prefix. +type ExcludeByPrefix string + +// Matches an message that starts with the prefix. +func (p ExcludeByPrefix) Exclude(level Level, msg string, args ...interface{}) bool { + return strings.HasPrefix(msg, string(p)) +} + +// ExcludeByRegexp takes a regexp and uses it to match a log message string. If it matches +// the log entry is excluded. +type ExcludeByRegexp struct { + Regexp *regexp.Regexp +} + +// Exclude the log message if the message string matches the regexp +func (e ExcludeByRegexp) Exclude(level Level, msg string, args ...interface{}) bool { + return e.Regexp.MatchString(msg) +} + +// ExcludeFuncs is a slice of functions that will called to see if a log entry +// should be filtered or not. It stops calling functions once at least one returns +// true. +type ExcludeFuncs []func(level Level, msg string, args ...interface{}) bool + +// Calls each function until one of them returns true +func (ff ExcludeFuncs) Exclude(level Level, msg string, args ...interface{}) bool { + for _, f := range ff { + if f(level, msg, args...) { + return true + } + } + + return false +} diff --git a/vendor/github.com/hashicorp/go-hclog/interceptlogger.go b/vendor/github.com/hashicorp/go-hclog/interceptlogger.go index 7e86dc878..08a6677eb 100644 --- a/vendor/github.com/hashicorp/go-hclog/interceptlogger.go +++ b/vendor/github.com/hashicorp/go-hclog/interceptlogger.go @@ -213,18 +213,34 @@ func (i *interceptLogger) DeregisterSink(sink SinkAdapter) { // Create a *log.Logger that will send it's data through this Logger. This // allows packages that expect to be using the standard library to log to // actually use this logger, which will also send to any registered sinks. -func (l *interceptLogger) StandardLoggerIntercept(opts *StandardLoggerOptions) *log.Logger { +func (i *interceptLogger) StandardLoggerIntercept(opts *StandardLoggerOptions) *log.Logger { if opts == nil { opts = &StandardLoggerOptions{} } - return log.New(l.StandardWriterIntercept(opts), "", 0) + return log.New(i.StandardWriterIntercept(opts), "", 0) } -func (l *interceptLogger) StandardWriterIntercept(opts *StandardLoggerOptions) io.Writer { +func (i *interceptLogger) StandardWriterIntercept(opts *StandardLoggerOptions) io.Writer { return &stdlogAdapter{ - log: l, + log: i, inferLevels: opts.InferLevels, forceLevel: opts.ForceLevel, } } + +func (i *interceptLogger) ResetOutput(opts *LoggerOptions) error { + if or, ok := i.Logger.(OutputResettable); ok { + return or.ResetOutput(opts) + } else { + return nil + } +} + +func (i *interceptLogger) ResetOutputWithFlush(opts *LoggerOptions, flushable Flushable) error { + if or, ok := i.Logger.(OutputResettable); ok { + return or.ResetOutputWithFlush(opts, flushable) + } else { + return nil + } +} diff --git a/vendor/github.com/hashicorp/go-hclog/intlogger.go b/vendor/github.com/hashicorp/go-hclog/intlogger.go index 5d76ee3fb..7158125de 100644 --- a/vendor/github.com/hashicorp/go-hclog/intlogger.go +++ b/vendor/github.com/hashicorp/go-hclog/intlogger.go @@ -58,13 +58,15 @@ type intLogger struct { name string timeFormat string - // This is a pointer so that it's shared by any derived loggers, since + // This is an interface so that it's shared by any derived loggers, since // those derived loggers share the bufio.Writer as well. - mutex *sync.Mutex + mutex Locker writer *writer level *int32 implied []interface{} + + exclude func(level Level, msg string, args ...interface{}) bool } // New returns a configured logger. @@ -106,11 +108,14 @@ func newLogger(opts *LoggerOptions) *intLogger { mutex: mutex, writer: newWriter(output, opts.Color), level: new(int32), + exclude: opts.Exclude, } l.setColorization(opts) - if opts.TimeFormat != "" { + if opts.DisableTime { + l.timeFormat = "" + } else if opts.TimeFormat != "" { l.timeFormat = opts.TimeFormat } @@ -131,6 +136,10 @@ func (l *intLogger) log(name string, level Level, msg string, args ...interface{ l.mutex.Lock() defer l.mutex.Unlock() + if l.exclude != nil && l.exclude(level, msg, args...) { + return + } + if l.json { l.logJSON(t, name, level, msg, args...) } else { @@ -169,12 +178,14 @@ func trimCallerPath(path string) string { return path[idx+1:] } -var logImplFile = regexp.MustCompile(`github.com/hashicorp/go-hclog/.+logger.go$`) +var logImplFile = regexp.MustCompile(`.+intlogger.go|.+interceptlogger.go$`) // Non-JSON logging format function func (l *intLogger) logPlain(t time.Time, name string, level Level, msg string, args ...interface{}) { - l.writer.WriteString(t.Format(l.timeFormat)) - l.writer.WriteByte(' ') + if len(l.timeFormat) > 0 { + l.writer.WriteString(t.Format(l.timeFormat)) + l.writer.WriteByte(' ') + } s, ok := _levelToBracket[level] if ok { @@ -260,6 +271,12 @@ func (l *intLogger) logPlain(t time.Time, name string, level Level, msg string, val = strconv.FormatUint(uint64(st), 10) case uint8: val = strconv.FormatUint(uint64(st), 10) + case Hex: + val = "0x" + strconv.FormatUint(uint64(st), 16) + case Octal: + val = "0" + strconv.FormatUint(uint64(st), 8) + case Binary: + val = "0b" + strconv.FormatUint(uint64(st), 2) case CapturedStacktrace: stacktrace = st continue FOR diff --git a/vendor/github.com/hashicorp/go-hclog/logger.go b/vendor/github.com/hashicorp/go-hclog/logger.go index 147bd2d78..8d5eed76e 100644 --- a/vendor/github.com/hashicorp/go-hclog/logger.go +++ b/vendor/github.com/hashicorp/go-hclog/logger.go @@ -5,7 +5,6 @@ import ( "log" "os" "strings" - "sync" ) var ( @@ -53,6 +52,18 @@ func Fmt(str string, args ...interface{}) Format { return append(Format{str}, args...) } +// A simple shortcut to format numbers in hex when displayed with the normal +// text output. For example: L.Info("header value", Hex(17)) +type Hex int + +// A simple shortcut to format numbers in octal when displayed with the normal +// text output. For example: L.Info("perms", Octal(17)) +type Octal int + +// A simple shortcut to format numbers in binary when displayed with the normal +// text output. For example: L.Info("bits", Binary(17)) +type Binary int + // ColorOption expresses how the output should be colored, if at all. type ColorOption uint8 @@ -90,6 +101,25 @@ func LevelFromString(levelStr string) Level { } } +func (l Level) String() string { + switch l { + case Trace: + return "trace" + case Debug: + return "debug" + case Info: + return "info" + case Warn: + return "warn" + case Error: + return "error" + case NoLevel: + return "none" + default: + return "unknown" + } +} + // Logger describes the interface that must be implemeted by all loggers. type Logger interface { // Args are alternating key, val pairs @@ -186,8 +216,10 @@ type LoggerOptions struct { // Where to write the logs to. Defaults to os.Stderr if nil Output io.Writer - // An optional mutex pointer in case Output is shared - Mutex *sync.Mutex + // An optional Locker in case Output is shared. This can be a sync.Mutex or + // a NoopLocker if the caller wants control over output, e.g. for batching + // log lines. + Mutex Locker // Control if the output should be in JSON. JSONFormat bool @@ -198,9 +230,19 @@ type LoggerOptions struct { // The time format to use instead of the default TimeFormat string + // Control whether or not to display the time at all. This is required + // because setting TimeFormat to empty assumes the default format. + DisableTime bool + // Color the output. On Windows, colored logs are only avaiable for io.Writers that // are concretely instances of *os.File. Color ColorOption + + // A function which is called with the log information and if it returns true the value + // should not be logged. + // This is useful when interacting with a system that you wish to suppress the log + // message for (because it's too noisy, etc) + Exclude func(level Level, msg string, args ...interface{}) bool } // InterceptLogger describes the interface for using a logger @@ -260,3 +302,26 @@ type OutputResettable interface { // given in opts will be used for the new output. ResetOutputWithFlush(opts *LoggerOptions, flushable Flushable) error } + +// Locker is used for locking output. If not set when creating a logger, a +// sync.Mutex will be used internally. +type Locker interface { + // Lock is called when the output is going to be changed or written to + Lock() + + // Unlock is called when the operation that called Lock() completes + Unlock() +} + +// NoopLocker implements locker but does nothing. This is useful if the client +// wants tight control over locking, in order to provide grouping of log +// entries or other functionality. +type NoopLocker struct{} + +// Lock does nothing +func (n NoopLocker) Lock() {} + +// Unlock does nothing +func (n NoopLocker) Unlock() {} + +var _ Locker = (*NoopLocker)(nil) diff --git a/vendor/github.com/hashicorp/go-hclog/stdlog.go b/vendor/github.com/hashicorp/go-hclog/stdlog.go index 2cf0456a0..f35d875d3 100644 --- a/vendor/github.com/hashicorp/go-hclog/stdlog.go +++ b/vendor/github.com/hashicorp/go-hclog/stdlog.go @@ -2,6 +2,7 @@ package hclog import ( "bytes" + "log" "strings" ) @@ -72,3 +73,23 @@ func (s *stdlogAdapter) pickLevel(str string) (Level, string) { return Info, str } } + +type logWriter struct { + l *log.Logger +} + +func (l *logWriter) Write(b []byte) (int, error) { + l.l.Println(string(bytes.TrimRight(b, " \n\t"))) + return len(b), nil +} + +// Takes a standard library logger and returns a Logger that will write to it +func FromStandardLogger(l *log.Logger, opts *LoggerOptions) Logger { + var dl LoggerOptions = *opts + + // Use the time format that log.Logger uses + dl.DisableTime = true + dl.Output = &logWriter{l} + + return New(&dl) +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/LICENSE b/vendor/github.com/hashicorp/raft-autopilot/LICENSE new file mode 100644 index 000000000..a612ad981 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/LICENSE @@ -0,0 +1,373 @@ +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. diff --git a/vendor/github.com/hashicorp/raft-autopilot/README.md b/vendor/github.com/hashicorp/raft-autopilot/README.md new file mode 100644 index 000000000..b063c5493 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/README.md @@ -0,0 +1,2 @@ +# raft-autopilot +Raft Autopilot diff --git a/vendor/github.com/hashicorp/raft-autopilot/autopilot.go b/vendor/github.com/hashicorp/raft-autopilot/autopilot.go new file mode 100644 index 000000000..99b8cc848 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/autopilot.go @@ -0,0 +1,211 @@ +package autopilot + +import ( + "context" + "sync" + "time" + + hclog "github.com/hashicorp/go-hclog" + "github.com/hashicorp/raft" +) + +const ( + // These constants were take from what exists in Consul at the time of module extraction. + + DefaultUpdateInterval = 2 * time.Second + DefaultReconcileInterval = 10 * time.Second +) + +// Option is an option to be used when creating a new Autopilot instance +type Option func(*Autopilot) + +// WithUpdateInterval returns an Option to set the Autopilot instance's +// update interval. +func WithUpdateInterval(t time.Duration) Option { + if t == 0 { + t = DefaultUpdateInterval + } + return func(a *Autopilot) { + a.updateInterval = t + } +} + +// WithReconcileInterval returns an Option to set the Autopilot instance's +// reconcile interval. +func WithReconcileInterval(t time.Duration) Option { + if t == 0 { + t = DefaultReconcileInterval + } + return func(a *Autopilot) { + a.reconcileInterval = t + } +} + +// WithLogger returns an Option to set the Autopilot instance's logger +func WithLogger(logger hclog.Logger) Option { + if logger == nil { + logger = hclog.Default() + } + + return func(a *Autopilot) { + a.logger = logger.Named("autopilot") + } +} + +// withTimeProvider returns an Option which overrides and Autopilot instance's +// time provider with the given one. This should only be used in tests +// as a means of making some time.Time values in an autopilot state deterministic. +// For real uses the default runtimeTimeProvider should be used. +func withTimeProvider(provider timeProvider) Option { + return func(a *Autopilot) { + a.time = provider + } +} + +// WithPromoter returns an option to set the Promoter type that Autpilot will +// use. When the option is not given the default StablePromoter from this package +// will be used. +func WithPromoter(promoter Promoter) Option { + if promoter == nil { + promoter = DefaultPromoter() + } + + return func(a *Autopilot) { + a.promoter = promoter + } +} + +// Autopilot is the type to manage a running Raft instance. +// +// Each Raft node in the cluster will have a corresponding Autopilot instance but +// only 1 Autopilot instance should run at a time in the cluster. So when a node +// gains Raft leadership the corresponding Autopilot instance should have it's +// Start method called. Then if leadership is lost that node should call the +// Stop method on the Autopilot instance. +type Autopilot struct { + logger hclog.Logger + // delegate is used to get information about the system such as Raft server + // states, known servers etc. + delegate ApplicationIntegration + // promoter is used to calculate promotions, demotions and leadership transfers + // given a particular autopilot State. The interface also contains methods + // for filling in parts of the autopilot state that the core module doesn't + // control such as the Ext fields on the Server and State types. + promoter Promoter + // raft is an interface that implements all the parts of the Raft library interface + // that we use. It is an interface to allow for mocking raft during testing. + raft Raft + // time is an interface with a single method for getting the current time - `Now`. + // In some tests this will be the MockTimeProvider which allows tests to be more + // deterministic but for running systems this should not be overrided from the + // default which is the runtimeTimeProvider and is a small shim around calling + // time.Now. + time timeProvider + + // reconcileInterval is how long between rounds of performing promotions, demotions + // and leadership transfers. + reconcileInterval time.Duration + + // updateInterval is the time between the periodic state updates. These periodic + // state updates take in known servers from the delegate, request Raft stats be + // fetched and pull in other inputs such as the Raft configuration to create + // an updated view of the Autopilot State. + updateInterval time.Duration + + // state is the structure that autopilot uses to make decisions about what to do. + // This field should be considered immutable and no modifications to an existing + // state should be made but instead a new state is created and set to this field + // while holding the stateLock. + state *State + // stateLock is meant to only protect the state field. This just prevents + // the periodic state update and consumers requesting the autopilot state from + // racing. + stateLock sync.RWMutex + + // startTime is recorded so that we can make better determinations about server + // stability during the initial period of time after autopilot first starts. + // If autopilot has just started the default behavior to check if a server is + // stable will not work as it will ensure the server has been healthy for + // the configured server stabilization time. If that configure time is longer + // than the amount of time autopilot has been running you can run into issues + // with leadership flapping during some scenarios where a cluster is being + // brought up. + startTime time.Time + + // running is a simple bool to indicate whether the go routines to actually + // execute autopilot are currently running + running bool + + // removeDeadCh is used to trigger the running autopilot go routines to + // find and remove any dead/failed servers + removeDeadCh chan struct{} + + // reconcileCh is used to trigger an immediate round of reconciliation. + reconcileCh chan struct{} + + // shutdown is a function that can be execute to shutdown a running + // autopilot's go routines. + shutdown context.CancelFunc + // done is a chan that will be closed when the running autopilot go + // routines have exited. Technically closing it is the very last + // thing done in the go routine but at that point enough state has + // been cleaned up that we would then allow it to be started + // immediately afterward + done chan struct{} + + // runLock is meant to protect all of the fields regarding coordination + // of whether the autopilot go routines are running and + // starting/stopping them. + runLock sync.Mutex +} + +// New will create a new Autopilot instance utilizing the given Raft and Delegate. +// If the WithPromoter option is not provided the default StablePromoter will +// be used. +func New(raft Raft, delegate ApplicationIntegration, options ...Option) *Autopilot { + a := &Autopilot{ + raft: raft, + delegate: delegate, + promoter: DefaultPromoter(), + logger: hclog.Default().Named("autopilot"), + // should this be buffered? + removeDeadCh: make(chan struct{}, 1), + reconcileInterval: DefaultReconcileInterval, + updateInterval: DefaultUpdateInterval, + time: &runtimeTimeProvider{}, + } + + for _, opt := range options { + opt(a) + } + + return a +} + +// RemoveDeadServers will trigger an immediate removal of dead/failed servers. +func (a *Autopilot) RemoveDeadServers() { + select { + case a.removeDeadCh <- struct{}{}: + default: + } +} + +// GetState retrieves the current autopilot State +func (a *Autopilot) GetState() *State { + a.stateLock.Lock() + defer a.stateLock.Unlock() + return a.state +} + +// GetServerHealth returns the latest ServerHealth for a given server. +// The returned struct should not be modified or else it will im +func (a *Autopilot) GetServerHealth(id raft.ServerID) *ServerHealth { + state := a.GetState() + + srv, ok := state.Servers[id] + if ok { + return &srv.Health + } + + return nil +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/go.mod b/vendor/github.com/hashicorp/raft-autopilot/go.mod new file mode 100644 index 000000000..42f9498c8 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/go.mod @@ -0,0 +1,10 @@ +module github.com/hashicorp/raft-autopilot + +go 1.14 + +require ( + github.com/hashicorp/go-hclog v0.14.1 + github.com/hashicorp/raft v1.2.0 + github.com/stretchr/testify v1.6.1 + go.uber.org/goleak v1.1.10 +) diff --git a/vendor/github.com/hashicorp/raft-autopilot/go.sum b/vendor/github.com/hashicorp/raft-autopilot/go.sum new file mode 100644 index 000000000..86000e410 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/go.sum @@ -0,0 +1,86 @@ +github.com/DataDog/datadog-go v2.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= +github.com/armon/go-metrics v0.0.0-20190430140413-ec5e00d3c878 h1:EFSB7Zo9Eg91v7MJPVsifUysc/wPdN+NOnVe6bWbdBM= +github.com/armon/go-metrics v0.0.0-20190430140413-ec5e00d3c878/go.mod h1:3AMJUQhVx52RsWOnlkpikZr01T/yAVN2gn0861vByNg= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps= +github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag= +github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= +github.com/hashicorp/go-hclog v0.9.1 h1:9PZfAcVEvez4yhLH2TBU64/h/z4xlFI80cWXRrxuKuM= +github.com/hashicorp/go-hclog v0.9.1/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= +github.com/hashicorp/go-hclog v0.14.1 h1:nQcJDQwIAGnmoUWp8ubocEX40cCml/17YkF6csQLReU= +github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= +github.com/hashicorp/go-immutable-radix v1.0.0 h1:AKDB1HM5PWEA7i4nhcpwOrO2byshxBjXVn/J/3+z5/0= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.5 h1:i9R9JSrqIz0QVLz3sz+i3YJdT7TTSLcfLLzJi9aZTuI= +github.com/hashicorp/go-msgpack v0.5.5/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= +github.com/hashicorp/go-uuid v1.0.0 h1:RS8zrF7PhGwyNPOtxSClXXj9HA8feRnJzgnI1RJCSnM= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/golang-lru v0.5.0 h1:CL2msUPvZTLb5O648aiLNJw3hnBxN2+1Jq8rCOH9wdo= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/raft v1.2.0 h1:mHzHIrF0S91d3A7RPBvuqkgB4d/7oFJZyvf1Q4m7GA0= +github.com/hashicorp/raft v1.2.0/go.mod h1:vPAJM8Asw6u8LxC3eJCUZmRP/E4QmUGE1R7g7k8sG/8= +github.com/hashicorp/raft-boltdb v0.0.0-20171010151810-6e5ba93211ea/go.mod h1:pNv7Wc3ycL6F5oOWn+tPGo2gWD4a5X+yp/ntwdKLjRk= +github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/mattn/go-colorable v0.1.4 h1:snbPLB8fVfU9iwbbo30TPtbLRzwWu6aJS6Xh4eaaviA= +github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.10 h1:qxFzApOv4WsAL965uUPIsXzAKCZxN2p9UqdhFS4ZW10= +github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY= +github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/prometheus/client_golang v0.9.2/go.mod h1:OsXs2jCmiKlQ1lTBmv21f2mNfw4xf/QclQDMrYNZzcM= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/common v0.0.0-20181126121408-4724e9255275/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= +go.uber.org/goleak v1.1.10 h1:z+mqJhf6ss6BSfSM671tgKyZBFPTTJM+HLxnhPC3wu0= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de h1:5hukYrvBGR8/eNkX5mdUezrA6JiaEZDtJb9Ei+1LlBs= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f h1:Bl/8QSvNqXvPGPGXa2z5xUTmV7VDcZyvRZ+QQXkXTZQ= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190523142557-0e01d883c5c5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191008105621-543471e840be h1:QAcqgptGM8IQBC9K/RC4o+O9YmqEm0diQn9QmZw/0mU= +golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11 h1:Yq9t9jnGoR+dBuitxdo9l6Q7xh/zOyNnYUtDKaQ3x0E= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/vendor/github.com/hashicorp/raft-autopilot/raft.go b/vendor/github.com/hashicorp/raft-autopilot/raft.go new file mode 100644 index 000000000..8a29c9c2d --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/raft.go @@ -0,0 +1,201 @@ +package autopilot + +// +// The methods in this file are all mainly to provide synchronous methods +// for Raft operations that would normally return futures. +// + +import ( + "fmt" + "strconv" + + "github.com/hashicorp/raft" +) + +func requiredQuorum(voters int) int { + return (voters / 2) + 1 +} + +// NumVoters is a helper for calculating the number of voting peers in the +// current raft configuration. This function ignores any autopilot state +// and will make the calculation based on a newly retrieved Raft configuration. +func (a *Autopilot) NumVoters() (int, error) { + cfg, err := a.getRaftConfiguration() + if err != nil { + return 0, err + } + + var numVoters int + for _, server := range cfg.Servers { + if server.Suffrage == raft.Voter { + numVoters++ + } + } + + return numVoters, nil +} + +// AddServer is a helper for adding a new server to the raft configuration. +// This may remove servers with duplicate addresses or ids first and after +// its all done will trigger autopilot to remove dead servers if there +// are any. Servers added by this method will start in a non-voting +// state and later on autopilot will promote them to voting status +// if desired by the configured promoter. If too many removals would +// be required that would cause leadership loss then an error is returned +// instead of performing any Raft configuration changes. +func (a *Autopilot) AddServer(s *Server) error { + cfg, err := a.getRaftConfiguration() + if err != nil { + a.logger.Error("failed to get raft configuration", "error", err) + return err + } + + var existingVoter bool + var voterRemovals []raft.ServerID + var nonVoterRemovals []raft.ServerID + var numVoters int + for _, server := range cfg.Servers { + if server.Suffrage == raft.Voter { + numVoters++ + } + + if server.Address == s.Address && server.ID == s.ID { + // nothing to be done as the addr and ID both already match + return nil + } else if server.ID == s.ID { + // special case for address updates only. In this case we should be + // able to update the configuration without have to first remove the server + if server.Suffrage == raft.Voter || server.Suffrage == raft.Staging { + existingVoter = true + } + } else if server.Address == s.Address { + if server.Suffrage == raft.Voter { + voterRemovals = append(voterRemovals, server.ID) + } else { + nonVoterRemovals = append(nonVoterRemovals, server.ID) + } + } + } + + requiredVoters := requiredQuorum(numVoters) + if len(voterRemovals) > numVoters-requiredVoters { + return fmt.Errorf("Preventing server addition that would require removal of too many servers and cause cluster instability") + } + + for _, id := range voterRemovals { + if err := a.removeServer(id); err != nil { + return fmt.Errorf("error removing server %q with duplicate address %q: %w", id, s.Address, err) + } + a.logger.Info("removed server with duplicate address", "address", s.Address) + } + + for _, id := range nonVoterRemovals { + if err := a.removeServer(id); err != nil { + return fmt.Errorf("error removing server %q with duplicate address %q: %w", id, s.Address, err) + } + a.logger.Info("removed server with duplicate address", "address", s.Address) + } + + if existingVoter { + if err := a.addVoter(s.ID, s.Address); err != nil { + return err + } + } else { + if err := a.addNonVoter(s.ID, s.Address); err != nil { + return err + } + } + + // Trigger a check to remove dead servers + a.RemoveDeadServers() + return nil +} + +// RemoveServer is a helper to remove a server from Raft if it +// exists in the latest Raft configuration +func (a *Autopilot) RemoveServer(id raft.ServerID) error { + cfg, err := a.getRaftConfiguration() + if err != nil { + a.logger.Error("failed to get raft configuration", "error", err) + return err + } + + // only remove servers currently in the configuration + for _, server := range cfg.Servers { + if server.ID == id { + return a.removeServer(server.ID) + } + } + + return nil +} + +// addNonVoter is a wrapper around calling the AddNonVoter method on the Raft +// interface object provided to Autopilot +func (a *Autopilot) addNonVoter(id raft.ServerID, addr raft.ServerAddress) error { + addFuture := a.raft.AddNonvoter(id, addr, 0, 0) + if err := addFuture.Error(); err != nil { + a.logger.Error("failed to add raft non-voting peer", "id", id, "address", addr, "error", err) + return err + } + return nil +} + +// addVoter is a wrapper around calling the AddVoter method on the Raft +// interface object provided to Autopilot +func (a *Autopilot) addVoter(id raft.ServerID, addr raft.ServerAddress) error { + addFuture := a.raft.AddVoter(id, addr, 0, 0) + if err := addFuture.Error(); err != nil { + a.logger.Error("failed to add raft voting peer", "id", id, "address", addr, "error", err) + return err + } + return nil +} + +func (a *Autopilot) demoteVoter(id raft.ServerID) error { + removeFuture := a.raft.DemoteVoter(id, 0, 0) + if err := removeFuture.Error(); err != nil { + a.logger.Error("failed to demote raft peer", "id", id, "error", err) + return err + } + return nil +} + +// removeServer is a wrapper around calling the RemoveServer method on the +// Raft interface object provided to Autopilot +func (a *Autopilot) removeServer(id raft.ServerID) error { + a.logger.Debug("removing server by ID", "id", id) + future := a.raft.RemoveServer(id, 0, 0) + if err := future.Error(); err != nil { + a.logger.Error("failed to remove raft server", + "id", id, + "error", err, + ) + return err + } + a.logger.Info("removed server", "id", id) + return nil +} + +// getRaftConfiguration a wrapper arond calling the GetConfiguration method +// on the Raft interface object provided to Autopilot +func (a *Autopilot) getRaftConfiguration() (*raft.Configuration, error) { + configFuture := a.raft.GetConfiguration() + if err := configFuture.Error(); err != nil { + return nil, err + } + cfg := configFuture.Configuration() + return &cfg, nil +} + +// lastTerm will retrieve the raft stats and then pull the last term value out of it +func (a *Autopilot) lastTerm() (uint64, error) { + return strconv.ParseUint(a.raft.Stats()["last_log_term"], 10, 64) +} + +// leadershipTransfer will transfer leadership to the server with the specified id and address +func (a *Autopilot) leadershipTransfer(id raft.ServerID, address raft.ServerAddress) error { + a.logger.Info("Transferring leadership to new server", "id", id, "address", address) + future := a.raft.LeadershipTransferToServer(id, address) + return future.Error() +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/reconcile.go b/vendor/github.com/hashicorp/raft-autopilot/reconcile.go new file mode 100644 index 000000000..4bdfd7775 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/reconcile.go @@ -0,0 +1,281 @@ +package autopilot + +import ( + "fmt" + "sort" + + "github.com/hashicorp/raft" +) + +// reconcile calculates and then applies promotions and demotions +func (a *Autopilot) reconcile() error { + conf := a.delegate.AutopilotConfig() + if conf == nil { + return nil + } + + // grab the current state while locked + a.stateLock.Lock() + state := a.state + a.stateLock.Unlock() + + if state == nil || state.Leader == "" { + return fmt.Errorf("Cannote reconcile Raft server voting rights without a valid autopilot state") + } + + // have the promoter calculate the required Raft changeset. + changes := a.promoter.CalculatePromotionsAndDemotions(conf, state) + + // apply the promotions, if we did apply any then stop here + // as we do not want to apply the demotions at the same time + // as a means of preventing cluster instability. + if done, err := a.applyPromotions(state, changes); done { + return err + } + + // apply the demotions, if we did apply any then stop here + // as we do not want to transition leadership and do demotions + // at the same time. This is a preventative measure to maintain + // cluster stability. + if done, err := a.applyDemotions(state, changes); done { + return err + } + + // if no leadership transfer is desired then we can exit the method now. + if changes.Leader == "" || changes.Leader == state.Leader { + return nil + } + + // lookup the server we want to transfer leadership to + srv, ok := state.Servers[changes.Leader] + if !ok { + return fmt.Errorf("cannot transfer leadership to an unknown server with ID %s", changes.Leader) + } + + // perform the leadership transfer + return a.leadershipTransfer(changes.Leader, srv.Server.Address) +} + +// applyPromotions will apply all the promotions in the RaftChanges parameter. +// +// IDs in the change set will be ignored if: +// * The server isn't tracked in the provided state +// * The server already has voting rights +// * The server is not healthy +// +// If any servers were promoted this function returns true for the bool value. +func (a *Autopilot) applyPromotions(state *State, changes RaftChanges) (bool, error) { + promoted := false + for _, change := range changes.Promotions { + srv, found := state.Servers[change] + if !found { + a.logger.Debug("Ignoring promotion of server as it is not in the autopilot state", "id", change) + // this shouldn't be able to happen but is a nice safety measure against the + // delegate doing something less than desirable + continue + } + + if srv.HasVotingRights() { + // There is no need to promote as this server is already a voter. + // No logging is needed here as this could be a very common case + // where the promoter just returns a lists of server ids that should + // be voters and non-voters without caring about which ones currently + // already are in that state. + a.logger.Debug("Not promoting server that already has voting rights", "id", change) + continue + } + + if !srv.Health.Healthy { + // do not promote unhealthy servers + a.logger.Debug("Ignoring promotion of unhealthy server", "id", change) + continue + } + + a.logger.Info("Promoting server", "id", srv.Server.ID, "address", srv.Server.Address, "name", srv.Server.Name) + + if err := a.addVoter(srv.Server.ID, srv.Server.Address); err != nil { + return true, fmt.Errorf("failed promoting server %s: %v", srv.Server.ID, err) + } + + promoted = true + } + + // when we promoted anything we return true to indicate that the promotion/demotion applying + // process is finished to prevent promotions and demotions in the same round. This is what + // autopilot within Consul used to do so I am keeping the behavior the same for now. + return promoted, nil +} + +// applyDemotions will apply all the demotions in the RaftChanges parameter. +// +// IDs in the change set will be ignored if: +// * The server isn't tracked in the provided state +// * The server does not have voting rights +// +// If any servers were demoted this function returns true for the bool value. +func (a *Autopilot) applyDemotions(state *State, changes RaftChanges) (bool, error) { + demoted := false + for _, change := range changes.Demotions { + srv, found := state.Servers[change] + if !found { + a.logger.Debug("Ignoring demotion of server as it is not in the autopilot state", "id", change) + // this shouldn't be able to happen but is a nice safety measure against the + // delegate doing something less than desirable + continue + } + + if srv.State == RaftNonVoter { + // There is no need to demote as this server is already a non-voter. + // No logging is needed here as this could be a very common case + // where the promoter just returns a lists of server ids that should + // be voters and non-voters without caring about which ones currently + // already are in that state. + a.logger.Debug("Ignoring demotion of server that is already a non-voter", "id", change) + continue + } + + a.logger.Info("Demoting server", "id", srv.Server.ID, "address", srv.Server.Address, "name", srv.Server.Name) + + if err := a.demoteVoter(srv.Server.ID); err != nil { + return true, fmt.Errorf("failed demoting server %s: %v", srv.Server.ID, err) + } + + demoted = true + } + + // similarly to applyPromotions here we want to stop the process and prevent leadership + // transfer when any demotions took place. Basically we want to ensure the cluster is + // stable before doing the transfer + return demoted, nil +} + +// getFailedServers aggregates all of the information about servers that the consuming application believes are in +// a failed/left state (indicated by the NodeStatus field on the Server type) as well as stale servers that are +// in the raft configuration but not know to the consuming application. This function will do nothing with +// that information and is purely to collect the data. +func (a *Autopilot) getFailedServers() (*FailedServers, int, error) { + staleRaftServers := make(map[raft.ServerID]raft.Server) + raftConfig, err := a.getRaftConfiguration() + if err != nil { + return nil, 0, err + } + + // Populate a map of all the raft servers. We will + // remove some later on from the map leaving us with + // just the stale servers. + var voters int + for _, server := range raftConfig.Servers { + staleRaftServers[server.ID] = server + + if server.Suffrage == raft.Voter { + voters++ + } + } + + var failed FailedServers + for id, srv := range a.delegate.KnownServers() { + raftSrv, found := staleRaftServers[id] + if found { + delete(staleRaftServers, id) + } + + if srv.NodeStatus != NodeAlive { + if found && raftSrv.Suffrage == raft.Voter { + failed.FailedVoters = append(failed.FailedVoters, srv) + } else if found { + failed.FailedNonVoters = append(failed.FailedNonVoters, srv) + } + } + } + + for id, srv := range staleRaftServers { + if srv.Suffrage == raft.Voter { + failed.StaleVoters = append(failed.StaleVoters, id) + } else { + failed.StaleNonVoters = append(failed.StaleNonVoters, id) + } + } + + sort.Slice(failed.StaleNonVoters, func(i, j int) bool { + return failed.StaleNonVoters[i] < failed.StaleNonVoters[j] + }) + sort.Slice(failed.StaleVoters, func(i, j int) bool { + return failed.StaleVoters[i] < failed.StaleVoters[j] + }) + sort.Slice(failed.FailedNonVoters, func(i, j int) bool { + return failed.FailedNonVoters[i].ID < failed.FailedNonVoters[j].ID + }) + sort.Slice(failed.FailedVoters, func(i, j int) bool { + return failed.FailedVoters[i].ID < failed.FailedVoters[j].ID + }) + + return &failed, voters, nil +} + +// pruneDeadServers will find stale raft servers and failed servers as indicated by the consuming application +// and remove them. For stale raft servers this means removing them from the Raft configuration. For failed +// servers this means issuing RemoveFailedNode calls to the delegate. All stale/failed non-voters will be +// removed first. Then stale voters and finally failed servers. For servers with voting rights we will +// cap the number removed so that we do not remove too many at a time and do not remove nodes to the +// point where the number of voters would be below the MinQuorum value from the autopilot config. +// Additionally the delegate will be consulted to determine if all of the removals should be done and +// can filter the failed servers listings if need be. +func (a *Autopilot) pruneDeadServers() error { + conf := a.delegate.AutopilotConfig() + if conf == nil || !conf.CleanupDeadServers { + return nil + } + + state := a.GetState() + + failed, voters, err := a.getFailedServers() + if err != nil || failed == nil { + return err + } + + failed = a.promoter.FilterFailedServerRemovals(conf, state, failed) + + // remove failed non voting servers + for _, srv := range failed.FailedNonVoters { + a.logger.Info("Attempting removal of failed server node", "id", srv.ID, "name", srv.Name, "address", srv.Address) + a.delegate.RemoveFailedServer(srv) + } + + // remove stale non voters + for _, id := range failed.StaleNonVoters { + a.logger.Debug("removing stale raft server from configuration", "id", id) + if err := a.removeServer(id); err != nil { + return err + } + } + + maxRemoval := (voters - 1) / 2 + + for _, id := range failed.StaleVoters { + if voters-1 < int(conf.MinQuorum) { + a.logger.Debug("will not remove server as it would leave less voters than the minimum number allowed", "id", id, "min", conf.MinQuorum) + } else if maxRemoval < 1 { + a.logger.Debug("will not remove server as removal of a majority or servers is not safe", "id", id) + } else if err := a.removeServer(id); err != nil { + return err + } else { + maxRemoval-- + voters-- + } + } + + for _, srv := range failed.FailedVoters { + if voters-1 < int(conf.MinQuorum) { + a.logger.Debug("will not remove server as it would leave less voters than the minimum number allowed", "id", srv.ID, "min", conf.MinQuorum) + } else if maxRemoval < 1 { + a.logger.Debug("will not remove server as its removal would be unsafe due to affectingas removal of a majority or servers is not safe", "id", srv.ID) + } else { + a.logger.Info("Attempting removal of failed server node", "id", srv.ID, "name", srv.Name, "address", srv.Address) + a.delegate.RemoveFailedServer(srv) + maxRemoval-- + voters-- + } + } + + return nil +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/run.go b/vendor/github.com/hashicorp/raft-autopilot/run.go new file mode 100644 index 000000000..1e13d2017 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/run.go @@ -0,0 +1,134 @@ +package autopilot + +import ( + "context" + "time" +) + +// Start will launch the go routines in the background to perform Autopilot. +// When the context passed in is cancelled or the Stop method is called +// then these routines will exit. +func (a *Autopilot) Start(ctx context.Context) { + a.runLock.Lock() + defer a.runLock.Unlock() + + // already running so there is nothing to do + if a.running { + return + } + + ctx, shutdown := context.WithCancel(ctx) + a.shutdown = shutdown + a.startTime = a.time.Now() + a.done = make(chan struct{}) + + // While a go routine executed by a.run below will periodically + // update the state, we want to go ahead and force updating it now + // so that during a leadership transfer we don't report an empty + // autopilot state. We put a pretty small timeout on this though + // so as to prevent leader establishment from taking too long + updateCtx, updateCancel := context.WithTimeout(ctx, time.Second) + defer updateCancel() + a.updateState(updateCtx) + + go a.run(ctx) + a.running = true +} + +// Stop will terminate the go routines being executed to perform autopilot. +func (a *Autopilot) Stop() <-chan struct{} { + a.runLock.Lock() + defer a.runLock.Unlock() + + // Nothing to do + if !a.running { + done := make(chan struct{}) + close(done) + return done + } + + a.shutdown() + return a.done +} + +func (a *Autopilot) run(ctx context.Context) { + a.logger.Debug("autopilot is now running") + // autopilot needs to do 3 things + // + // 1. periodically update the cluster state + // 2. periodically check for and perform promotions and demotions + // 3. Respond to servers leaving and prune dead servers + // + // We could attempt to do all of this in a single go routine except that + // updating the cluster health could potentially take long enough to impact + // the periodicity of the promotions and demotions performed by task 2/3. + // So instead this go routine will spawn a second go routine to manage + // updating the cluster health in the background. This go routine is still + // in control of the overall running status and will not exit until the + // child go routine has exited. + + // child go routine for cluster health updating + stateUpdaterDone := make(chan struct{}) + go a.runStateUpdater(ctx, stateUpdaterDone) + + // cleanup for once we are stopped + defer func() { + // block waiting for our child go routine to also finish + <-stateUpdaterDone + + a.logger.Debug("autopilot is now stopped") + + a.runLock.Lock() + a.shutdown = nil + a.running = false + // this should be the final cleanup task as it is what notifies the rest + // of the world that we are now done + close(a.done) + a.done = nil + a.runLock.Unlock() + }() + + reconcileTicker := time.NewTicker(a.reconcileInterval) + defer reconcileTicker.Stop() + + for { + select { + case <-ctx.Done(): + return + case <-reconcileTicker.C: + if err := a.reconcile(); err != nil { + a.logger.Error("Failed to reconcile current state with the desired state") + } + + if err := a.pruneDeadServers(); err != nil { + a.logger.Error("Failed to prune dead servers", "error", err) + } + case <-a.removeDeadCh: + if err := a.pruneDeadServers(); err != nil { + a.logger.Error("Failed to prune dead servers", "error", err) + } + } + } +} + +// runStateUpdated will periodically update the autopilot state until the context +// passed in is cancelled. When finished the provide done chan will be closed. +func (a *Autopilot) runStateUpdater(ctx context.Context, done chan struct{}) { + a.logger.Debug("state update routine is now running") + defer func() { + a.logger.Debug("state update routine is now stopped") + close(done) + }() + + ticker := time.NewTicker(a.updateInterval) + defer ticker.Stop() + + for { + select { + case <-ctx.Done(): + return + case <-ticker.C: + a.updateState(ctx) + } + } +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/stable_promoter.go b/vendor/github.com/hashicorp/raft-autopilot/stable_promoter.go new file mode 100644 index 000000000..9e8b725a2 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/stable_promoter.go @@ -0,0 +1,54 @@ +package autopilot + +import ( + "time" + + "github.com/hashicorp/raft" +) + +func DefaultPromoter() Promoter { + return new(StablePromoter) +} + +type StablePromoter struct{} + +func (_ *StablePromoter) GetServerExt(_ *Config, srv *ServerState) interface{} { + return nil +} + +func (_ *StablePromoter) GetStateExt(_ *Config, _ *State) interface{} { + return nil +} + +func (_ *StablePromoter) GetNodeTypes(_ *Config, s *State) map[raft.ServerID]NodeType { + types := make(map[raft.ServerID]NodeType) + for id := range s.Servers { + // this basic implementation has all nodes be of the "voter" type regardless of + // any other settings. That means that in a healthy state all nodes in the cluster + // will be a voter. + types[id] = NodeVoter + } + return types +} + +func (_ *StablePromoter) FilterFailedServerRemovals(_ *Config, _ *State, failed *FailedServers) *FailedServers { + return failed +} + +// CalculatePromotionsAndDemotions will return a list of all promotions and demotions to be done as well as the server id of +// the desired leader. This particular interface implementation maintains a stable leader and will promote healthy servers +// to voting status. It will never change the leader ID nor will it perform demotions. +func (_ *StablePromoter) CalculatePromotionsAndDemotions(c *Config, s *State) RaftChanges { + var changes RaftChanges + + now := time.Now() + minStableDuration := s.ServerStabilizationTime(c) + for id, server := range s.Servers { + // ignore staging state as they are not ready yet + if server.State == RaftNonVoter && server.Health.IsStable(now, minStableDuration) { + changes.Promotions = append(changes.Promotions, id) + } + } + + return changes +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/state.go b/vendor/github.com/hashicorp/raft-autopilot/state.go new file mode 100644 index 000000000..f967b32b0 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/state.go @@ -0,0 +1,414 @@ +package autopilot + +import ( + "context" + "fmt" + "sort" + "time" + + "github.com/hashicorp/raft" +) + +// aliveServers will filter the input map of servers and output one with all of the +// servers in a Left state removed. +func aliveServers(servers map[raft.ServerID]*Server) map[raft.ServerID]*Server { + serverMap := make(map[raft.ServerID]*Server) + for _, server := range servers { + if server.NodeStatus == NodeLeft { + continue + } + + serverMap[server.ID] = server + } + + return serverMap +} + +// nextStateInputs is the collection of values that can influence +// creation of the next State. +type nextStateInputs struct { + Now time.Time + StartTime time.Time + Config *Config + State *State + RaftConfig *raft.Configuration + KnownServers map[raft.ServerID]*Server + AliveServers map[raft.ServerID]*Server + LatestIndex uint64 + LastTerm uint64 + FetchedStats map[raft.ServerID]*ServerStats + LeaderID raft.ServerID +} + +// gatherNextStateInputs gathers all the information that would be used to +// create the new updated state from. +// +// - Time Providers current time. +// - Autopilot Config (needed to determine if the stats should indicate unhealthiness) +// - Current state +// - Raft Configuration +// - Known Servers +// - Latest raft index (gatered right before the remote server stats so that they should +// be from about the same point in time) +// - Stats for all non-left servers +func (a *Autopilot) gatherNextStateInputs(ctx context.Context) (*nextStateInputs, error) { + // we are going to hold this lock for the entire function. In theory nothing should + // modify the state on any other go routine so this really shouldn't block anything + // else. However we want to ensure that the inputs are as consistent as possible. + a.stateLock.RLock() + defer a.stateLock.RUnlock() + + // there are a lot of inputs to computing the next state so they get put into a + // struct so that we don't have to return 8 values. + inputs := &nextStateInputs{ + Now: a.time.Now(), + StartTime: a.startTime, + } + + // grab the latest autopilot configuration + config := a.delegate.AutopilotConfig() + if config == nil { + return nil, fmt.Errorf("delegate did not return an Autopilot configuration") + } + inputs.Config = config + + // retrieve the current state + inputs.State = a.state + if inputs.State == nil { + inputs.State = &State{} + } + + // retrieve the raft configuration + raftConfig, err := a.getRaftConfiguration() + if err != nil { + return nil, fmt.Errorf("failed to get the Raft configuration: %w", err) + } + inputs.RaftConfig = raftConfig + + leader := a.raft.Leader() + for _, s := range inputs.RaftConfig.Servers { + if s.Address == leader { + inputs.LeaderID = s.ID + break + } + } + + if inputs.LeaderID == "" { + return nil, fmt.Errorf("cannot detect the current leader server id from its address: %s", leader) + } + + // get the latest Raft index - this should be kept close to the call to + // fetch the statistics so that the index values are as close in time as + // possible to make the best decision regarding an individual servers + // healthiness. + inputs.LatestIndex = a.raft.LastIndex() + + term, err := a.lastTerm() + if err != nil { + return nil, fmt.Errorf("failed to determine the last Raft term: %w", err) + } + inputs.LastTerm = term + + // getting the raft configuration could block for a while so now is a good + // time to check for context cancellation + if ctx.Err() != nil { + return nil, ctx.Err() + } + + // get the known servers which may include left/failed ones + inputs.KnownServers = a.delegate.KnownServers() + + // in most cases getting the known servers should be quick but as we cannot + // account for every potential delegate and prevent them from making + // blocking network requests we should probably check the context again. + if ctx.Err() != nil { + return nil, ctx.Err() + } + + // filter the known servers to have a map of just the alive servers + inputs.AliveServers = aliveServers(inputs.KnownServers) + + // we only allow the fetch to take place for up to half the health interval + // the next health interval will attempt to fetch the stats again but if + // we do not see responses within this time then we can assume they are + // unhealthy + d := inputs.Now.Add(a.updateInterval / 2) + fetchCtx, cancel := context.WithDeadline(ctx, d) + defer cancel() + + inputs.FetchedStats = a.delegate.FetchServerStats(fetchCtx, inputs.AliveServers) + + // it might be nil but we propagate the ctx.Err just in case our context was + // cancelled since the last time we checked. + return inputs, ctx.Err() +} + +// nextState will gather many inputs about the current state of servers from the +// delegate, raft and time provider among other sources and then compute the +// next Autopilot state. +func (a *Autopilot) nextState(ctx context.Context) (*State, error) { + inputs, err := a.gatherNextStateInputs(ctx) + if err != nil { + return nil, err + } + + state := a.nextStateWithInputs(inputs) + if state.Leader == "" { + return nil, fmt.Errorf("Unabled to detect the leader server") + } + return state, nil +} + +// nextStateWithInputs computes the next state given pre-gathered inputs +func (a *Autopilot) nextStateWithInputs(inputs *nextStateInputs) *State { + nextServers := a.nextServers(inputs) + + newState := &State{ + startTime: inputs.StartTime, + Healthy: true, + Servers: nextServers, + } + + voterCount := 0 + healthyVoters := 0 + + // This loop will + // 1. Determine the ID of the leader server and set it in the state + // 2. Count the number of voters in the cluster + // 3. Count the number of healthy voters in the cluster + // 4. Detect unhealthy servers and mark the overall health as false + for id, srv := range nextServers { + if !srv.Health.Healthy { + // any unhealthiness results in overall unhealthiness + newState.Healthy = false + } + + switch srv.State { + case RaftLeader: + newState.Leader = id + fallthrough + case RaftVoter: + newState.Voters = append(newState.Voters, id) + voterCount++ + + if srv.Health.Healthy { + healthyVoters++ + } + } + } + + // If we have extra healthy voters, update FailureTolerance from its + // zero value in the struct. + requiredQuorum := requiredQuorum(voterCount) + if healthyVoters > requiredQuorum { + newState.FailureTolerance = healthyVoters - requiredQuorum + } + + // update any promoter specific overall state + if newExt := a.promoter.GetStateExt(inputs.Config, newState); newExt != nil { + newState.Ext = newExt + } + + // update the node types - these are really informational for users to + // know how autopilot and the associate promoter algorithms have classed + // each server as some promotion algorithms may want to keep certain + // servers as non-voters for reasons. The node type then can be used + // to indicate why that might be happening. + for id, typ := range a.promoter.GetNodeTypes(inputs.Config, newState) { + if srv, ok := newState.Servers[id]; ok { + srv.Server.NodeType = typ + } + } + + // Sort the voters list to keep the output stable. This is done near the end + // as SortServers may use other parts of the state that were created in + // this method and populated in the newState. Requiring output stability + // helps make tests easier to manage and means that if you happen to be dumping + // the state periodically you shouldn't see things change unless there + // are real changes to server health or overall configuration. + SortServers(newState.Voters, newState) + + return newState +} + +// nextServers will build out the servers map for the next state to be created +// from the given inputs. This will take into account all the various sources +// of partial state (current state, raft config, application known servers etc.) +// and combine them into the final server map. +func (a *Autopilot) nextServers(inputs *nextStateInputs) map[raft.ServerID]*ServerState { + newServers := make(map[raft.ServerID]*ServerState) + + for _, srv := range inputs.RaftConfig.Servers { + state := buildServerState(inputs, srv) + + // update any promoter specific information. This isn't done within + // buildServerState to keep that function "pure" and not require + // mocking for tests + if newExt := a.promoter.GetServerExt(inputs.Config, &state); newExt != nil { + state.Server.Ext = newExt + } + + newServers[srv.ID] = &state + } + + return newServers +} + +// buildServerState takes all the nextStateInputs and builds out a ServerState +// for the given Raft server. This will take into account the raft configuration +// existing state, application known servers and recently fetched stats. +func buildServerState(inputs *nextStateInputs, srv raft.Server) ServerState { + // Note that the ordering of operations in this method are very important. + // We are building up the ServerState from the least important sources + // and overriding them with more up to date values. + + // build the basic state from the Raft server + state := ServerState{ + Server: Server{ + ID: srv.ID, + Address: srv.Address, + }, + } + + switch srv.Suffrage { + case raft.Voter: + state.State = RaftVoter + case raft.Nonvoter: + state.State = RaftNonVoter + case raft.Staging: + state.State = RaftStaging + default: + // should be impossible unless the constants in Raft were updated + // to have a new state. + // TODO (mkeeler) maybe a panic would be better here. The downside is + // that it would be hard to catch that in tests when updating the Raft + // version. + state.State = RaftNone + } + + // overwrite the raft state to mark the leader as such instead of just + // a regular voter + if srv.ID == inputs.LeaderID { + state.State = RaftLeader + } + + var existingHealth *ServerHealth + + // copy some state from an existing server into the new state - most of this + // should be overridden soon but at this point we are just building the base. + if existing, found := inputs.State.Servers[srv.ID]; found { + state.Stats = existing.Stats + state.Health = existing.Health + existingHealth = &existing.Health + + // it is is important to note that the map values we retrieved this from are + // stored by value. Therefore we are modifying a copy of what is in the existing + // state and not the actual state itself. We want to ensure that the Address + // is what Raft will know about. + existing.Server.Address = srv.Address + + state.Server = existing.Server + } + + // pull in the latest information from the applications knowledge of the + // server. Mainly we want the NodeStatus & Meta + if known, found := inputs.KnownServers[srv.ID]; found { + // it is important to note that we are modifying a copy of a Server as the + // map we retrieved this from has a non-pointer type value. We definitely + // do not want to modify the current known servers but we do want to ensure + // that we do not overwrite the Address + known.Address = srv.Address + state.Server = *known + } else { + // TODO (mkeeler) do we need a None state. In the previous autopilot code + // we would have set this to serf.StatusNone + state.Server.NodeStatus = NodeLeft + } + + // override the Stats if any where in the fetched results + if stats, found := inputs.FetchedStats[srv.ID]; found { + state.Stats = *stats + } + + // now populate the healthy field given the stats + state.Health.Healthy = state.isHealthy(inputs.LastTerm, inputs.LatestIndex, inputs.Config) + // overwrite the StableSince field if this is a new server or when + // the health status changes. No need for an else as we previously set + // it when we overwrote the whole Health structure when finding a + // server in the existing state + if existingHealth == nil || existingHealth.Healthy != state.Health.Healthy { + state.Health.StableSince = inputs.Now + } + + return state +} + +// updateState will compute the nextState, set it on the Autopilot instance and +// then notify the delegate of the update. +func (a *Autopilot) updateState(ctx context.Context) { + newState, err := a.nextState(ctx) + if err != nil { + a.logger.Error("Error when computing next state", "error", err) + return + } + + a.stateLock.Lock() + defer a.stateLock.Unlock() + a.state = newState + a.delegate.NotifyState(newState) +} + +// SortServers will take a list of raft ServerIDs and sort it using +// information from the State. See the ServerLessThan function for +// details about how two servers get compared. +func SortServers(ids []raft.ServerID, s *State) { + sort.Slice(ids, func(i, j int) bool { + return ServerLessThan(ids[i], ids[j], s) + }) +} + +// ServerLessThan will lookup both servers in the given State and return +// true if the first id corresponds to a server that is logically less than +// lower than, better than etc. the second server. The following criteria +// are considered in order of most important to least important +// +// 1. A Leader server is always less than all others +// 2. A voter is less than non voters +// 3. Healthy servers are less than unhealthy servers +// 4. Servers that have been stable longer are consider less than. +func ServerLessThan(id1 raft.ServerID, id2 raft.ServerID, s *State) bool { + srvI := s.Servers[id1] + srvJ := s.Servers[id2] + + // the leader always comes first + if srvI.State == RaftLeader { + return true + } else if srvJ.State == RaftLeader { + return false + } + + // voters come before non-voters & staging + if srvI.State == RaftVoter && srvJ.State != RaftVoter { + return true + } else if srvI.State != RaftVoter && srvJ.State == RaftVoter { + return false + } + + // at this point we know that the raft state of both nodes is roughly + // equivalent so we want to now sort based on health + if srvI.Health.Healthy == srvJ.Health.Healthy { + if srvI.Health.StableSince.Before(srvJ.Health.StableSince) { + return srvI.Health.Healthy + } else if srvJ.Health.StableSince.Before(srvI.Health.StableSince) { + return !srvI.Health.Healthy + } + + // with all else equal sort by the IDs + return id1 < id2 + } + + // one of the two isn't healthy. We consider the healthy one as less than + // the other. So we return true if server I is healthy and false if it isn't + // as we know that server J is healthy and thus should come before server I. + return srvI.Health.Healthy +} diff --git a/vendor/github.com/hashicorp/raft-autopilot/types.go b/vendor/github.com/hashicorp/raft-autopilot/types.go new file mode 100644 index 000000000..c96fb9a31 --- /dev/null +++ b/vendor/github.com/hashicorp/raft-autopilot/types.go @@ -0,0 +1,298 @@ +package autopilot + +import ( + "context" + "time" + + "github.com/hashicorp/raft" +) + +//go:generate mockery -all -inpkg -case snake -testonly + +// RaftState is the status of a single server in the Raft cluster. +type RaftState string + +const ( + RaftNone RaftState = "none" + RaftLeader RaftState = "leader" + RaftVoter RaftState = "voter" + RaftNonVoter RaftState = "non-voter" + RaftStaging RaftState = "staging" +) + +func (s RaftState) IsPotentialVoter() bool { + switch s { + case RaftVoter, RaftStaging, RaftLeader: + return true + default: + return false + } +} + +// NodeStatus represents the health of a server as know to the autopilot consumer. +// This should not take into account Raft health and the server being on a new enough +// term and index. +type NodeStatus string + +const ( + NodeUnknown NodeStatus = "unknown" + NodeAlive NodeStatus = "alive" + NodeFailed NodeStatus = "failed" + NodeLeft NodeStatus = "left" +) + +type NodeType string + +const ( + NodeVoter NodeType = "voter" +) + +// Config represents all the tunables of autopilot +type Config struct { + // CleanupDeadServers controls whether to remove dead servers when a new + // server is added to the Raft peers. + CleanupDeadServers bool + + // LastContactThreshold is the limit on the amount of time a server can go + // without leader contact before being considered unhealthy. + LastContactThreshold time.Duration + + // MaxTrailingLogs is the amount of entries in the Raft Log that a server can + // be behind before being considered unhealthy. + MaxTrailingLogs uint64 + + // MinQuorum sets the minimum number of servers required in a cluster + // before autopilot can prune dead servers. + MinQuorum uint + + // ServerStabilizationTime is the minimum amount of time a server must be + // in a stable, healthy state before it can be added to the cluster. Only + // applicable with Raft protocol version 3 or higher. + ServerStabilizationTime time.Duration + + Ext interface{} +} + +// Server represents one Raft server +type Server struct { + // This first set of fields are those that the autopilot delegate + // needs to fill in + + ID raft.ServerID + Name string + Address raft.ServerAddress + NodeStatus NodeStatus + Version string + Meta map[string]string + RaftVersion int + + // The remaining fields are those that the promoter + // will fill in + + NodeType NodeType + Ext interface{} +} + +type ServerState struct { + Server Server + State RaftState + Stats ServerStats + Health ServerHealth +} + +func (s *ServerState) HasVotingRights() bool { + return s.State == RaftVoter || s.State == RaftLeader +} + +// isHealthy determines whether this ServerState is considered healthy +// based on the given Autopilot config +func (s *ServerState) isHealthy(lastTerm uint64, leaderLastIndex uint64, conf *Config) bool { + if s.Server.NodeStatus != NodeAlive { + return false + } + + if s.Stats.LastContact > conf.LastContactThreshold || s.Stats.LastContact < 0 { + return false + } + + if s.Stats.LastTerm != lastTerm { + return false + } + + if leaderLastIndex > conf.MaxTrailingLogs && s.Stats.LastIndex < leaderLastIndex-conf.MaxTrailingLogs { + return false + } + + return true +} + +type ServerHealth struct { + // Healthy is whether or not the server is healthy according to the current + // Autopilot config. + Healthy bool + + // StableSince is the last time this server's Healthy value changed. + StableSince time.Time +} + +// IsStable returns true if the ServerState shows a stable, passing state +// according to the given AutopilotConfig +func (h *ServerHealth) IsStable(now time.Time, minStableDuration time.Duration) bool { + if h == nil { + return false + } + + if !h.Healthy { + return false + } + + if now.Sub(h.StableSince) < minStableDuration { + return false + } + + return true +} + +// ServerStats holds miscellaneous Raft metrics for a server +type ServerStats struct { + // LastContact is the time since this node's last contact with the leader. + LastContact time.Duration + + // LastTerm is the highest leader term this server has a record of in its Raft log. + LastTerm uint64 + + // LastIndex is the last log index this server has a record of in its Raft log. + LastIndex uint64 +} + +type State struct { + startTime time.Time + Healthy bool + FailureTolerance int + Servers map[raft.ServerID]*ServerState + Leader raft.ServerID + Voters []raft.ServerID + Ext interface{} +} + +func (s *State) ServerStabilizationTime(c *Config) time.Duration { + // Only use the configured stabilization time when autopilot has + // been running for 110% of the configured stabilization time. + // Before that time we haven't been running long enough to + // be able to take these values into account. 110% is pretty + // arbitrary but with the default config would prevent the + // stabilization time from mattering for an extra second. This + // allows for leeway in how quickly we get the healthy RPC responses + // after autopilot is started. + if time.Since(s.startTime) > (c.ServerStabilizationTime*110)/100 { + return c.ServerStabilizationTime + } + + // ignore stabilization time if autopilot hasn't been running long enough + // to be tracking any server long enough to meet that requirement + return 0 +} + +// Raft is the interface of all the methods on the Raft type that autopilot needs to function. Autopilot will +// take in an interface for Raft instead of a concrete type to allow for dependency injection in tests. +type Raft interface { + AddNonvoter(id raft.ServerID, address raft.ServerAddress, prevIndex uint64, timeout time.Duration) raft.IndexFuture + AddVoter(id raft.ServerID, address raft.ServerAddress, prevIndex uint64, timeout time.Duration) raft.IndexFuture + DemoteVoter(id raft.ServerID, prevIndex uint64, timeout time.Duration) raft.IndexFuture + LastIndex() uint64 + Leader() raft.ServerAddress + GetConfiguration() raft.ConfigurationFuture + RemoveServer(id raft.ServerID, prevIndex uint64, timeout time.Duration) raft.IndexFuture + Stats() map[string]string + LeadershipTransferToServer(id raft.ServerID, address raft.ServerAddress) raft.Future +} + +type ApplicationIntegration interface { + // AutopilotConfig is used to retrieve the latest configuration from the delegate + AutopilotConfig() *Config + + // NotifyState will be called when the autopilot state is updated. The application may choose to emit metrics + // or perform other actions based on this information. + NotifyState(*State) + + // FetchServerStats will be called to request the application fetch the ServerStats out of band. Usually this + // will require an RPC to each server. + FetchServerStats(context.Context, map[raft.ServerID]*Server) map[raft.ServerID]*ServerStats + + // KnownServers fetchs the list of servers as known to the application + KnownServers() map[raft.ServerID]*Server + + // RemoveFailedServer notifies the application to forcefully remove the server in the failed state + // It is expected that this returns nearly immediately so if a longer running operation needs to be + // performed then the Delegate implementation should spawn a go routine itself. + RemoveFailedServer(*Server) +} + +type RaftChanges struct { + Promotions []raft.ServerID + Demotions []raft.ServerID + Leader raft.ServerID +} + +type FailedServers struct { + // StaleNonVoters are the ids of those server in the raft configuration as non-voters + // that are not present in the delegates view of what servers should be available + StaleNonVoters []raft.ServerID + // StaleVoters are the ids of those servers in the raft configuration as voters that + // are not present in the delegates view of what servers should be available + StaleVoters []raft.ServerID + + // FailedNonVoters are the servers without voting rights in the cluster that the + // delegate has indicated are in a failed state + FailedNonVoters []*Server + // FailedVoters are the servers without voting rights in the cluster that the + // delegate has indicated are in a failed state + FailedVoters []*Server +} + +// Promoter is an interface to provide promotion/demotion algorithms to the core autopilot type. +// The BasicPromoter satisfies this interface and will promote any stable servers but other +// algorithms could be implemented. The implementation of these methods shouldn't "block". +// While they are synchronous autopilot expects the algorithms to not make any network +// or other requests which way cause an indefinite amount of waiting to occur. +// +// Note that all parameters passed to these functions should be considered read-only and +// their modification could result in undefined behavior of the core autopilot routines +// including potential crashes. +type Promoter interface { + // GetServerExt returns some object that should be stored in the Ext field of the Server + // This value will not be used by the code in this repo but may be used by the other + // Promoter methods and the application utilizing autopilot. If the value returned is + // nil the extended state will not be updated. + GetServerExt(*Config, *ServerState) interface{} + + // GetStateExt returns some object that should be stored in the Ext field of the State + // This value will not be used by the code in this repo but may be used by the other + // Promoter methods and the application utilizing autopilot. If the value returned is + // nil the extended state will not be updated. + GetStateExt(*Config, *State) interface{} + + // GetNodeTypes returns a map of ServerID to NodeType for all the servers which + // should have their NodeType field updated + GetNodeTypes(*Config, *State) map[raft.ServerID]NodeType + + // CalculatePromotionsAndDemotions + CalculatePromotionsAndDemotions(*Config, *State) RaftChanges + + // FilterFailedServerRemovals takes in the current state and structure outlining all the + // failed/stale servers and will return those failed servers which the promoter thinks + // should be allowed to be removed. + FilterFailedServerRemovals(*Config, *State, *FailedServers) *FailedServers +} + +// timeProvider is an interface for getting a local time. This is mainly useful for testing +// to inject certain times so that output validation is easier. +type timeProvider interface { + Now() time.Time +} + +type runtimeTimeProvider struct{} + +func (_ *runtimeTimeProvider) Now() time.Time { + return time.Now() +} diff --git a/vendor/github.com/mattn/go-colorable/colorable_windows.go b/vendor/github.com/mattn/go-colorable/colorable_windows.go index 04c4229c4..b9e936344 100644 --- a/vendor/github.com/mattn/go-colorable/colorable_windows.go +++ b/vendor/github.com/mattn/go-colorable/colorable_windows.go @@ -10,7 +10,6 @@ import ( "os" "strconv" "strings" - "sync" "syscall" "unsafe" @@ -28,7 +27,6 @@ const ( backgroundRed = 0x40 backgroundIntensity = 0x80 backgroundMask = (backgroundRed | backgroundBlue | backgroundGreen | backgroundIntensity) - commonLvbUnderscore = 0x8000 cENABLE_VIRTUAL_TERMINAL_PROCESSING = 0x4 ) @@ -95,7 +93,6 @@ type Writer struct { oldattr word oldpos coord rest bytes.Buffer - mutex sync.Mutex } // NewColorable returns new instance of Writer which handles escape sequence from File. @@ -435,8 +432,6 @@ func atoiWithDefault(s string, def int) (int, error) { // Write writes data on console func (w *Writer) Write(data []byte) (n int, err error) { - w.mutex.Lock() - defer w.mutex.Unlock() var csbi consoleScreenBufferInfo procGetConsoleScreenBufferInfo.Call(uintptr(w.handle), uintptr(unsafe.Pointer(&csbi))) @@ -688,19 +683,14 @@ loop: switch { case n == 0 || n == 100: attr = w.oldattr - case n == 4: - attr |= commonLvbUnderscore - case (1 <= n && n <= 3) || n == 5: + case 1 <= n && n <= 5: attr |= foregroundIntensity - case n == 7 || n == 27: - attr = - (attr &^ (foregroundMask | backgroundMask)) | - ((attr & foregroundMask) << 4) | - ((attr & backgroundMask) >> 4) - case n == 22: - attr &^= foregroundIntensity - case n == 24: - attr &^= commonLvbUnderscore + case n == 7: + attr = ((attr & foregroundMask) << 4) | ((attr & backgroundMask) >> 4) + case n == 22 || n == 25: + attr |= foregroundIntensity + case n == 27: + attr = ((attr & foregroundMask) << 4) | ((attr & backgroundMask) >> 4) case 30 <= n && n <= 37: attr &= backgroundMask if (n-30)&1 != 0 { diff --git a/vendor/github.com/shirou/gopsutil/disk/disk.go b/vendor/github.com/shirou/gopsutil/disk/disk.go deleted file mode 100644 index 38d8a8f16..000000000 --- a/vendor/github.com/shirou/gopsutil/disk/disk.go +++ /dev/null @@ -1,61 +0,0 @@ -package disk - -import ( - "encoding/json" - - "github.com/shirou/gopsutil/internal/common" -) - -var invoke common.Invoker = common.Invoke{} - -type UsageStat struct { - Path string `json:"path"` - Fstype string `json:"fstype"` - Total uint64 `json:"total"` - Free uint64 `json:"free"` - Used uint64 `json:"used"` - UsedPercent float64 `json:"usedPercent"` - InodesTotal uint64 `json:"inodesTotal"` - InodesUsed uint64 `json:"inodesUsed"` - InodesFree uint64 `json:"inodesFree"` - InodesUsedPercent float64 `json:"inodesUsedPercent"` -} - -type PartitionStat struct { - Device string `json:"device"` - Mountpoint string `json:"mountpoint"` - Fstype string `json:"fstype"` - Opts string `json:"opts"` -} - -type IOCountersStat struct { - ReadCount uint64 `json:"readCount"` - MergedReadCount uint64 `json:"mergedReadCount"` - WriteCount uint64 `json:"writeCount"` - MergedWriteCount uint64 `json:"mergedWriteCount"` - ReadBytes uint64 `json:"readBytes"` - WriteBytes uint64 `json:"writeBytes"` - ReadTime uint64 `json:"readTime"` - WriteTime uint64 `json:"writeTime"` - IopsInProgress uint64 `json:"iopsInProgress"` - IoTime uint64 `json:"ioTime"` - WeightedIO uint64 `json:"weightedIO"` - Name string `json:"name"` - SerialNumber string `json:"serialNumber"` - Label string `json:"label"` -} - -func (d UsageStat) String() string { - s, _ := json.Marshal(d) - return string(s) -} - -func (d PartitionStat) String() string { - s, _ := json.Marshal(d) - return string(s) -} - -func (d IOCountersStat) String() string { - s, _ := json.Marshal(d) - return string(s) -} diff --git a/vendor/github.com/shirou/gopsutil/process/process.go b/vendor/github.com/shirou/gopsutil/process/process.go deleted file mode 100644 index eea7f4030..000000000 --- a/vendor/github.com/shirou/gopsutil/process/process.go +++ /dev/null @@ -1,322 +0,0 @@ -package process - -import ( - "context" - "encoding/json" - "errors" - "runtime" - "sort" - "time" - - "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/mem" -) - -var ( - invoke common.Invoker = common.Invoke{} - ErrorNoChildren = errors.New("process does not have children") - ErrorProcessNotRunning = errors.New("process does not exist") -) - -type Process struct { - Pid int32 `json:"pid"` - name string - status string - parent int32 - numCtxSwitches *NumCtxSwitchesStat - uids []int32 - gids []int32 - groups []int32 - numThreads int32 - memInfo *MemoryInfoStat - sigInfo *SignalInfoStat - createTime int64 - - lastCPUTimes *cpu.TimesStat - lastCPUTime time.Time - - tgid int32 -} - -type OpenFilesStat struct { - Path string `json:"path"` - Fd uint64 `json:"fd"` -} - -type MemoryInfoStat struct { - RSS uint64 `json:"rss"` // bytes - VMS uint64 `json:"vms"` // bytes - HWM uint64 `json:"hwm"` // bytes - Data uint64 `json:"data"` // bytes - Stack uint64 `json:"stack"` // bytes - Locked uint64 `json:"locked"` // bytes - Swap uint64 `json:"swap"` // bytes -} - -type SignalInfoStat struct { - PendingProcess uint64 `json:"pending_process"` - PendingThread uint64 `json:"pending_thread"` - Blocked uint64 `json:"blocked"` - Ignored uint64 `json:"ignored"` - Caught uint64 `json:"caught"` -} - -type RlimitStat struct { - Resource int32 `json:"resource"` - Soft int32 `json:"soft"` //TODO too small. needs to be uint64 - Hard int32 `json:"hard"` //TODO too small. needs to be uint64 - Used uint64 `json:"used"` -} - -type IOCountersStat struct { - ReadCount uint64 `json:"readCount"` - WriteCount uint64 `json:"writeCount"` - ReadBytes uint64 `json:"readBytes"` - WriteBytes uint64 `json:"writeBytes"` -} - -type NumCtxSwitchesStat struct { - Voluntary int64 `json:"voluntary"` - Involuntary int64 `json:"involuntary"` -} - -type PageFaultsStat struct { - MinorFaults uint64 `json:"minorFaults"` - MajorFaults uint64 `json:"majorFaults"` - ChildMinorFaults uint64 `json:"childMinorFaults"` - ChildMajorFaults uint64 `json:"childMajorFaults"` -} - -// Resource limit constants are from /usr/include/x86_64-linux-gnu/bits/resource.h -// from libc6-dev package in Ubuntu 16.10 -const ( - RLIMIT_CPU int32 = 0 - RLIMIT_FSIZE int32 = 1 - RLIMIT_DATA int32 = 2 - RLIMIT_STACK int32 = 3 - RLIMIT_CORE int32 = 4 - RLIMIT_RSS int32 = 5 - RLIMIT_NPROC int32 = 6 - RLIMIT_NOFILE int32 = 7 - RLIMIT_MEMLOCK int32 = 8 - RLIMIT_AS int32 = 9 - RLIMIT_LOCKS int32 = 10 - RLIMIT_SIGPENDING int32 = 11 - RLIMIT_MSGQUEUE int32 = 12 - RLIMIT_NICE int32 = 13 - RLIMIT_RTPRIO int32 = 14 - RLIMIT_RTTIME int32 = 15 -) - -func (p Process) String() string { - s, _ := json.Marshal(p) - return string(s) -} - -func (o OpenFilesStat) String() string { - s, _ := json.Marshal(o) - return string(s) -} - -func (m MemoryInfoStat) String() string { - s, _ := json.Marshal(m) - return string(s) -} - -func (r RlimitStat) String() string { - s, _ := json.Marshal(r) - return string(s) -} - -func (i IOCountersStat) String() string { - s, _ := json.Marshal(i) - return string(s) -} - -func (p NumCtxSwitchesStat) String() string { - s, _ := json.Marshal(p) - return string(s) -} - -// Pids returns a slice of process ID list which are running now. -func Pids() ([]int32, error) { - return PidsWithContext(context.Background()) -} - -func PidsWithContext(ctx context.Context) ([]int32, error) { - pids, err := pidsWithContext(ctx) - sort.Slice(pids, func(i, j int) bool { return pids[i] < pids[j] }) - return pids, err -} - -// NewProcess creates a new Process instance, it only stores the pid and -// checks that the process exists. Other method on Process can be used -// to get more information about the process. An error will be returned -// if the process does not exist. -func NewProcess(pid int32) (*Process, error) { - p := &Process{Pid: pid} - - exists, err := PidExists(pid) - if err != nil { - return p, err - } - if !exists { - return p, ErrorProcessNotRunning - } - p.CreateTime() - return p, nil -} - -func PidExists(pid int32) (bool, error) { - return PidExistsWithContext(context.Background(), pid) -} - -// Background returns true if the process is in background, false otherwise. -func (p *Process) Background() (bool, error) { - return p.BackgroundWithContext(context.Background()) -} - -func (p *Process) BackgroundWithContext(ctx context.Context) (bool, error) { - fg, err := p.ForegroundWithContext(ctx) - if err != nil { - return false, err - } - return !fg, err -} - -// If interval is 0, return difference from last call(non-blocking). -// If interval > 0, wait interval sec and return diffrence between start and end. -func (p *Process) Percent(interval time.Duration) (float64, error) { - return p.PercentWithContext(context.Background(), interval) -} - -func (p *Process) PercentWithContext(ctx context.Context, interval time.Duration) (float64, error) { - cpuTimes, err := p.Times() - if err != nil { - return 0, err - } - now := time.Now() - - if interval > 0 { - p.lastCPUTimes = cpuTimes - p.lastCPUTime = now - if err := common.Sleep(ctx, interval); err != nil { - return 0, err - } - cpuTimes, err = p.Times() - now = time.Now() - if err != nil { - return 0, err - } - } else { - if p.lastCPUTimes == nil { - // invoked first time - p.lastCPUTimes = cpuTimes - p.lastCPUTime = now - return 0, nil - } - } - - numcpu := runtime.NumCPU() - delta := (now.Sub(p.lastCPUTime).Seconds()) * float64(numcpu) - ret := calculatePercent(p.lastCPUTimes, cpuTimes, delta, numcpu) - p.lastCPUTimes = cpuTimes - p.lastCPUTime = now - return ret, nil -} - -// IsRunning returns whether the process is still running or not. -func (p *Process) IsRunning() (bool, error) { - return p.IsRunningWithContext(context.Background()) -} - -func (p *Process) IsRunningWithContext(ctx context.Context) (bool, error) { - createTime, err := p.CreateTimeWithContext(ctx) - if err != nil { - return false, err - } - p2, err := NewProcess(p.Pid) - if err == ErrorProcessNotRunning { - return false, nil - } - createTime2, err := p2.CreateTimeWithContext(ctx) - if err != nil { - return false, err - } - return createTime == createTime2, nil -} - -// CreateTime returns created time of the process in milliseconds since the epoch, in UTC. -func (p *Process) CreateTime() (int64, error) { - return p.CreateTimeWithContext(context.Background()) -} - -func (p *Process) CreateTimeWithContext(ctx context.Context) (int64, error) { - if p.createTime != 0 { - return p.createTime, nil - } - createTime, err := p.createTimeWithContext(ctx) - p.createTime = createTime - return p.createTime, err -} - -func calculatePercent(t1, t2 *cpu.TimesStat, delta float64, numcpu int) float64 { - if delta == 0 { - return 0 - } - delta_proc := t2.Total() - t1.Total() - overall_percent := ((delta_proc / delta) * 100) * float64(numcpu) - return overall_percent -} - -// MemoryPercent returns how many percent of the total RAM this process uses -func (p *Process) MemoryPercent() (float32, error) { - return p.MemoryPercentWithContext(context.Background()) -} - -func (p *Process) MemoryPercentWithContext(ctx context.Context) (float32, error) { - machineMemory, err := mem.VirtualMemory() - if err != nil { - return 0, err - } - total := machineMemory.Total - - processMemory, err := p.MemoryInfo() - if err != nil { - return 0, err - } - used := processMemory.RSS - - return (100 * float32(used) / float32(total)), nil -} - -// CPU_Percent returns how many percent of the CPU time this process uses -func (p *Process) CPUPercent() (float64, error) { - return p.CPUPercentWithContext(context.Background()) -} - -func (p *Process) CPUPercentWithContext(ctx context.Context) (float64, error) { - crt_time, err := p.CreateTime() - if err != nil { - return 0, err - } - - cput, err := p.Times() - if err != nil { - return 0, err - } - - created := time.Unix(0, crt_time*int64(time.Millisecond)) - totalTime := time.Since(created).Seconds() - if totalTime <= 0 { - return 0, nil - } - - return 100 * cput.Total() / totalTime, nil -} - -// Groups returns all group IDs(include supplementary groups) of the process as a slice of the int -func (p *Process) Groups() ([]int32, error) { - return p.GroupsWithContext(context.Background()) -} diff --git a/vendor/github.com/shirou/gopsutil/LICENSE b/vendor/github.com/shirou/gopsutil/v3/LICENSE similarity index 100% rename from vendor/github.com/shirou/gopsutil/LICENSE rename to vendor/github.com/shirou/gopsutil/v3/LICENSE diff --git a/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.c b/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.c new file mode 100644 index 000000000..2cf5326c1 --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.c @@ -0,0 +1,599 @@ +/* + * Apple System Management Control (SMC) Tool + * Copyright (C) 2006 devnull + * Portions Copyright (C) 2013 Michael Wilber + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include +#include +#include +#include +#include +#include "_smc.h" +#include + +// Cache the keyInfo to lower the energy impact of SMCReadKey() / SMCReadKey2() +#define KEY_INFO_CACHE_SIZE 100 +struct { + UInt32 key; + SMCKeyData_keyInfo_t keyInfo; +} g_keyInfoCache[KEY_INFO_CACHE_SIZE]; + +int g_keyInfoCacheCount = 0; +OSSpinLock g_keyInfoSpinLock = 0; + +kern_return_t SMCCall2(int index, SMCKeyData_t *inputStructure, SMCKeyData_t *outputStructure, io_connect_t conn); + +UInt32 _strtoul(char *str, int size, int base) +{ + UInt32 total = 0; + int i; + + for (i = 0; i < size; i++) + { + if (base == 16) + total += str[i] << (size - 1 - i) * 8; + else + total += ((unsigned char) (str[i]) << (size - 1 - i) * 8); + } + return total; +} + +void _ultostr(char *str, UInt32 val) +{ + str[0] = '\0'; + sprintf(str, "%c%c%c%c", + (unsigned int) val >> 24, + (unsigned int) val >> 16, + (unsigned int) val >> 8, + (unsigned int) val); +} + +float _strtof(unsigned char *str, int size, int e) +{ + float total = 0; + int i; + + for (i = 0; i < size; i++) + { + if (i == (size - 1)) + total += (str[i] & 0xff) >> e; + else + total += str[i] << (size - 1 - i) * (8 - e); + } + + total += (str[size-1] & 0x03) * 0.25; + + return total; +} + + +void printFP1F(SMCVal_t val) +{ + printf("%.5f ", ntohs(*(UInt16*)val.bytes) / 32768.0); +} + +void printFP4C(SMCVal_t val) +{ + printf("%.5f ", ntohs(*(UInt16*)val.bytes) / 4096.0); +} + +void printFP5B(SMCVal_t val) +{ + printf("%.5f ", ntohs(*(UInt16*)val.bytes) / 2048.0); +} + +void printFP6A(SMCVal_t val) +{ + printf("%.4f ", ntohs(*(UInt16*)val.bytes) / 1024.0); +} + +void printFP79(SMCVal_t val) +{ + printf("%.4f ", ntohs(*(UInt16*)val.bytes) / 512.0); +} + +void printFP88(SMCVal_t val) +{ + printf("%.3f ", ntohs(*(UInt16*)val.bytes) / 256.0); +} + +void printFPA6(SMCVal_t val) +{ + printf("%.2f ", ntohs(*(UInt16*)val.bytes) / 64.0); +} + +void printFPC4(SMCVal_t val) +{ + printf("%.2f ", ntohs(*(UInt16*)val.bytes) / 16.0); +} + +void printFPE2(SMCVal_t val) +{ + printf("%.2f ", ntohs(*(UInt16*)val.bytes) / 4.0); +} + +void printUInt(SMCVal_t val) +{ + printf("%u ", (unsigned int) _strtoul((char *)val.bytes, val.dataSize, 10)); +} + +void printSP1E(SMCVal_t val) +{ + printf("%.5f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 16384.0); +} + +void printSP3C(SMCVal_t val) +{ + printf("%.5f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 4096.0); +} + +void printSP4B(SMCVal_t val) +{ + printf("%.4f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 2048.0); +} + +void printSP5A(SMCVal_t val) +{ + printf("%.4f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 1024.0); +} + +void printSP69(SMCVal_t val) +{ + printf("%.3f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 512.0); +} + +void printSP78(SMCVal_t val) +{ + printf("%.3f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 256.0); +} + +void printSP87(SMCVal_t val) +{ + printf("%.3f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 128.0); +} + +void printSP96(SMCVal_t val) +{ + printf("%.2f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 64.0); +} + +void printSPB4(SMCVal_t val) +{ + printf("%.2f ", ((SInt16)ntohs(*(UInt16*)val.bytes)) / 16.0); +} + +void printSPF0(SMCVal_t val) +{ + printf("%.0f ", (float)ntohs(*(UInt16*)val.bytes)); +} + +void printSI8(SMCVal_t val) +{ + printf("%d ", (signed char)*val.bytes); +} + +void printSI16(SMCVal_t val) +{ + printf("%d ", ntohs(*(SInt16*)val.bytes)); +} + +void printPWM(SMCVal_t val) +{ + printf("%.1f%% ", ntohs(*(UInt16*)val.bytes) * 100 / 65536.0); +} + +void printBytesHex(SMCVal_t val) +{ + int i; + + printf("(bytes"); + for (i = 0; i < val.dataSize; i++) + printf(" %02x", (unsigned char) val.bytes[i]); + printf(")\n"); +} + +void printVal(SMCVal_t val) +{ + printf(" %-4s [%-4s] ", val.key, val.dataType); + if (val.dataSize > 0) + { + if ((strcmp(val.dataType, DATATYPE_UINT8) == 0) || + (strcmp(val.dataType, DATATYPE_UINT16) == 0) || + (strcmp(val.dataType, DATATYPE_UINT32) == 0)) + printUInt(val); + else if (strcmp(val.dataType, DATATYPE_FP1F) == 0 && val.dataSize == 2) + printFP1F(val); + else if (strcmp(val.dataType, DATATYPE_FP4C) == 0 && val.dataSize == 2) + printFP4C(val); + else if (strcmp(val.dataType, DATATYPE_FP5B) == 0 && val.dataSize == 2) + printFP5B(val); + else if (strcmp(val.dataType, DATATYPE_FP6A) == 0 && val.dataSize == 2) + printFP6A(val); + else if (strcmp(val.dataType, DATATYPE_FP79) == 0 && val.dataSize == 2) + printFP79(val); + else if (strcmp(val.dataType, DATATYPE_FP88) == 0 && val.dataSize == 2) + printFP88(val); + else if (strcmp(val.dataType, DATATYPE_FPA6) == 0 && val.dataSize == 2) + printFPA6(val); + else if (strcmp(val.dataType, DATATYPE_FPC4) == 0 && val.dataSize == 2) + printFPC4(val); + else if (strcmp(val.dataType, DATATYPE_FPE2) == 0 && val.dataSize == 2) + printFPE2(val); + else if (strcmp(val.dataType, DATATYPE_SP1E) == 0 && val.dataSize == 2) + printSP1E(val); + else if (strcmp(val.dataType, DATATYPE_SP3C) == 0 && val.dataSize == 2) + printSP3C(val); + else if (strcmp(val.dataType, DATATYPE_SP4B) == 0 && val.dataSize == 2) + printSP4B(val); + else if (strcmp(val.dataType, DATATYPE_SP5A) == 0 && val.dataSize == 2) + printSP5A(val); + else if (strcmp(val.dataType, DATATYPE_SP69) == 0 && val.dataSize == 2) + printSP69(val); + else if (strcmp(val.dataType, DATATYPE_SP78) == 0 && val.dataSize == 2) + printSP78(val); + else if (strcmp(val.dataType, DATATYPE_SP87) == 0 && val.dataSize == 2) + printSP87(val); + else if (strcmp(val.dataType, DATATYPE_SP96) == 0 && val.dataSize == 2) + printSP96(val); + else if (strcmp(val.dataType, DATATYPE_SPB4) == 0 && val.dataSize == 2) + printSPB4(val); + else if (strcmp(val.dataType, DATATYPE_SPF0) == 0 && val.dataSize == 2) + printSPF0(val); + else if (strcmp(val.dataType, DATATYPE_SI8) == 0 && val.dataSize == 1) + printSI8(val); + else if (strcmp(val.dataType, DATATYPE_SI16) == 0 && val.dataSize == 2) + printSI16(val); + else if (strcmp(val.dataType, DATATYPE_PWM) == 0 && val.dataSize == 2) + printPWM(val); + + printBytesHex(val); + } + else + { + printf("no data\n"); + } +} + + +kern_return_t SMCOpen(io_connect_t *conn) +{ + kern_return_t result; + mach_port_t masterPort; + io_iterator_t iterator; + io_object_t device; + + IOMasterPort(MACH_PORT_NULL, &masterPort); + + CFMutableDictionaryRef matchingDictionary = IOServiceMatching("AppleSMC"); + result = IOServiceGetMatchingServices(masterPort, matchingDictionary, &iterator); + if (result != kIOReturnSuccess) + { + printf("Error: IOServiceGetMatchingServices() = %08x\n", result); + return 1; + } + + device = IOIteratorNext(iterator); + IOObjectRelease(iterator); + if (device == 0) + { + printf("Error: no SMC found\n"); + return 1; + } + + result = IOServiceOpen(device, mach_task_self(), 0, conn); + IOObjectRelease(device); + if (result != kIOReturnSuccess) + { + printf("Error: IOServiceOpen() = %08x\n", result); + return 1; + } + + return kIOReturnSuccess; +} + +kern_return_t SMCClose(io_connect_t conn) +{ + return IOServiceClose(conn); +} + +kern_return_t SMCCall2(int index, SMCKeyData_t *inputStructure, SMCKeyData_t *outputStructure,io_connect_t conn) +{ + size_t structureInputSize; + size_t structureOutputSize; + structureInputSize = sizeof(SMCKeyData_t); + structureOutputSize = sizeof(SMCKeyData_t); + + return IOConnectCallStructMethod(conn, index, inputStructure, structureInputSize, outputStructure, &structureOutputSize); +} + +// Provides key info, using a cache to dramatically improve the energy impact of smcFanControl +kern_return_t SMCGetKeyInfo(UInt32 key, SMCKeyData_keyInfo_t* keyInfo, io_connect_t conn) +{ + SMCKeyData_t inputStructure; + SMCKeyData_t outputStructure; + kern_return_t result = kIOReturnSuccess; + int i = 0; + + OSSpinLockLock(&g_keyInfoSpinLock); + + for (; i < g_keyInfoCacheCount; ++i) + { + if (key == g_keyInfoCache[i].key) + { + *keyInfo = g_keyInfoCache[i].keyInfo; + break; + } + } + + if (i == g_keyInfoCacheCount) + { + // Not in cache, must look it up. + memset(&inputStructure, 0, sizeof(inputStructure)); + memset(&outputStructure, 0, sizeof(outputStructure)); + + inputStructure.key = key; + inputStructure.data8 = SMC_CMD_READ_KEYINFO; + + result = SMCCall2(KERNEL_INDEX_SMC, &inputStructure, &outputStructure, conn); + if (result == kIOReturnSuccess) + { + *keyInfo = outputStructure.keyInfo; + if (g_keyInfoCacheCount < KEY_INFO_CACHE_SIZE) + { + g_keyInfoCache[g_keyInfoCacheCount].key = key; + g_keyInfoCache[g_keyInfoCacheCount].keyInfo = outputStructure.keyInfo; + ++g_keyInfoCacheCount; + } + } + } + + OSSpinLockUnlock(&g_keyInfoSpinLock); + + return result; +} + +kern_return_t SMCReadKey2(UInt32Char_t key, SMCVal_t *val,io_connect_t conn) +{ + kern_return_t result; + SMCKeyData_t inputStructure; + SMCKeyData_t outputStructure; + + memset(&inputStructure, 0, sizeof(SMCKeyData_t)); + memset(&outputStructure, 0, sizeof(SMCKeyData_t)); + memset(val, 0, sizeof(SMCVal_t)); + + inputStructure.key = _strtoul(key, 4, 16); + sprintf(val->key, key); + + result = SMCGetKeyInfo(inputStructure.key, &outputStructure.keyInfo, conn); + if (result != kIOReturnSuccess) + { + return result; + } + + val->dataSize = outputStructure.keyInfo.dataSize; + _ultostr(val->dataType, outputStructure.keyInfo.dataType); + inputStructure.keyInfo.dataSize = val->dataSize; + inputStructure.data8 = SMC_CMD_READ_BYTES; + + result = SMCCall2(KERNEL_INDEX_SMC, &inputStructure, &outputStructure,conn); + if (result != kIOReturnSuccess) + { + return result; + } + + memcpy(val->bytes, outputStructure.bytes, sizeof(outputStructure.bytes)); + + return kIOReturnSuccess; +} + +io_connect_t g_conn = 0; + +void smc_init(){ + SMCOpen(&g_conn); +} + +void smc_close(){ + SMCClose(g_conn); +} + +kern_return_t SMCCall(int index, SMCKeyData_t *inputStructure, SMCKeyData_t *outputStructure) +{ + return SMCCall2(index, inputStructure, outputStructure, g_conn); +} + +kern_return_t SMCReadKey(UInt32Char_t key, SMCVal_t *val) +{ + return SMCReadKey2(key, val, g_conn); +} + +kern_return_t SMCWriteKey2(SMCVal_t writeVal, io_connect_t conn) +{ + kern_return_t result; + SMCKeyData_t inputStructure; + SMCKeyData_t outputStructure; + + SMCVal_t readVal; + + result = SMCReadKey2(writeVal.key, &readVal,conn); + if (result != kIOReturnSuccess) + return result; + + if (readVal.dataSize != writeVal.dataSize) + return kIOReturnError; + + memset(&inputStructure, 0, sizeof(SMCKeyData_t)); + memset(&outputStructure, 0, sizeof(SMCKeyData_t)); + + inputStructure.key = _strtoul(writeVal.key, 4, 16); + inputStructure.data8 = SMC_CMD_WRITE_BYTES; + inputStructure.keyInfo.dataSize = writeVal.dataSize; + memcpy(inputStructure.bytes, writeVal.bytes, sizeof(writeVal.bytes)); + result = SMCCall2(KERNEL_INDEX_SMC, &inputStructure, &outputStructure,conn); + + if (result != kIOReturnSuccess) + return result; + return kIOReturnSuccess; +} + +kern_return_t SMCWriteKey(SMCVal_t writeVal) +{ + return SMCWriteKey2(writeVal, g_conn); +} + +UInt32 SMCReadIndexCount(void) +{ + SMCVal_t val; + + SMCReadKey("#KEY", &val); + return _strtoul((char *)val.bytes, val.dataSize, 10); +} + +kern_return_t SMCPrintAll(void) +{ + kern_return_t result; + SMCKeyData_t inputStructure; + SMCKeyData_t outputStructure; + + int totalKeys, i; + UInt32Char_t key; + SMCVal_t val; + + totalKeys = SMCReadIndexCount(); + for (i = 0; i < totalKeys; i++) + { + memset(&inputStructure, 0, sizeof(SMCKeyData_t)); + memset(&outputStructure, 0, sizeof(SMCKeyData_t)); + memset(&val, 0, sizeof(SMCVal_t)); + + inputStructure.data8 = SMC_CMD_READ_INDEX; + inputStructure.data32 = i; + + result = SMCCall(KERNEL_INDEX_SMC, &inputStructure, &outputStructure); + if (result != kIOReturnSuccess) + continue; + + _ultostr(key, outputStructure.key); + + SMCReadKey(key, &val); + printVal(val); + } + + return kIOReturnSuccess; +} + +kern_return_t SMCPrintFans(void) +{ + kern_return_t result; + SMCVal_t val; + UInt32Char_t key; + int totalFans, i; + + result = SMCReadKey("FNum", &val); + if (result != kIOReturnSuccess) + return kIOReturnError; + + totalFans = _strtoul((char *)val.bytes, val.dataSize, 10); + printf("Total fans in system: %d\n", totalFans); + + for (i = 0; i < totalFans; i++) + { + printf("\nFan #%d:\n", i); + sprintf(key, "F%dID", i); + SMCReadKey(key, &val); + printf(" Fan ID : %s\n", val.bytes+4); + sprintf(key, "F%dAc", i); + SMCReadKey(key, &val); + printf(" Actual speed : %.0f\n", _strtof(val.bytes, val.dataSize, 2)); + sprintf(key, "F%dMn", i); + SMCReadKey(key, &val); + printf(" Minimum speed: %.0f\n", _strtof(val.bytes, val.dataSize, 2)); + sprintf(key, "F%dMx", i); + SMCReadKey(key, &val); + printf(" Maximum speed: %.0f\n", _strtof(val.bytes, val.dataSize, 2)); + sprintf(key, "F%dSf", i); + SMCReadKey(key, &val); + printf(" Safe speed : %.0f\n", _strtof(val.bytes, val.dataSize, 2)); + sprintf(key, "F%dTg", i); + SMCReadKey(key, &val); + printf(" Target speed : %.0f\n", _strtof(val.bytes, val.dataSize, 2)); + SMCReadKey("FS! ", &val); + if ((_strtoul((char *)val.bytes, 2, 16) & (1 << i)) == 0) + printf(" Mode : auto\n"); + else + printf(" Mode : forced\n"); + } + + return kIOReturnSuccess; +} + +void usage(char* prog) +{ + printf("Apple System Management Control (SMC) tool %s\n", VERSION); + printf("Usage:\n"); + printf("%s [options]\n", prog); + printf(" -f : fan info decoded\n"); + printf(" -h : help\n"); + printf(" -k : key to manipulate\n"); + printf(" -l : list all keys and values\n"); + printf(" -r : read the value of a key\n"); + printf(" -w : write the specified value to a key\n"); + printf(" -v : version\n"); + printf("\n"); +} + +kern_return_t SMCWriteSimple(UInt32Char_t key, char *wvalue, io_connect_t conn) +{ + kern_return_t result; + SMCVal_t val; + int i; + char c[3]; + for (i = 0; i < strlen(wvalue); i++) + { + sprintf(c, "%c%c", wvalue[i * 2], wvalue[(i * 2) + 1]); + val.bytes[i] = (int) strtol(c, NULL, 16); + } + val.dataSize = i / 2; + sprintf(val.key, key); + result = SMCWriteKey2(val, conn); + if (result != kIOReturnSuccess) + printf("Error: SMCWriteKey() = %08x\n", result); + + + return result; +} + +double SMCGetTemperature(char *key) +{ + SMCVal_t val; + kern_return_t result; + + result = SMCReadKey(key, &val); + if (result == kIOReturnSuccess) { + // read succeeded - check returned value + if (val.dataSize > 0) { + if (strcmp(val.dataType, DATATYPE_SP78) == 0) { + // convert sp78 value to temperature + int intValue = val.bytes[0] * 256 + (unsigned char)val.bytes[1]; + return intValue / 256.0; + } + } + } + // read failed + return 0.0; +} diff --git a/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.h b/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.h new file mode 100644 index 000000000..659dccfda --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/_smc.h @@ -0,0 +1,133 @@ +/* + * Apple System Management Control (SMC) Tool + * Copyright (C) 2006 devnull + * Portions Copyright (C) 2013 Michael Wilber + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef __SMC_H__ +#define __SMC_H__ +#endif + +#define VERSION "0.01" + +#define OP_NONE 0 +#define OP_LIST 1 +#define OP_READ 2 +#define OP_READ_FAN 3 +#define OP_WRITE 4 + +#define KERNEL_INDEX_SMC 2 + +#define SMC_CMD_READ_BYTES 5 +#define SMC_CMD_WRITE_BYTES 6 +#define SMC_CMD_READ_INDEX 8 +#define SMC_CMD_READ_KEYINFO 9 +#define SMC_CMD_READ_PLIMIT 11 +#define SMC_CMD_READ_VERS 12 + +#define DATATYPE_FP1F "fp1f" +#define DATATYPE_FP4C "fp4c" +#define DATATYPE_FP5B "fp5b" +#define DATATYPE_FP6A "fp6a" +#define DATATYPE_FP79 "fp79" +#define DATATYPE_FP88 "fp88" +#define DATATYPE_FPA6 "fpa6" +#define DATATYPE_FPC4 "fpc4" +#define DATATYPE_FPE2 "fpe2" + +#define DATATYPE_SP1E "sp1e" +#define DATATYPE_SP3C "sp3c" +#define DATATYPE_SP4B "sp4b" +#define DATATYPE_SP5A "sp5a" +#define DATATYPE_SP69 "sp69" +#define DATATYPE_SP78 "sp78" +#define DATATYPE_SP87 "sp87" +#define DATATYPE_SP96 "sp96" +#define DATATYPE_SPB4 "spb4" +#define DATATYPE_SPF0 "spf0" + +#define DATATYPE_UINT8 "ui8 " +#define DATATYPE_UINT16 "ui16" +#define DATATYPE_UINT32 "ui32" + +#define DATATYPE_SI8 "si8 " +#define DATATYPE_SI16 "si16" + +#define DATATYPE_PWM "{pwm" + +typedef struct { + char major; + char minor; + char build; + char reserved[1]; + UInt16 release; +} SMCKeyData_vers_t; + +typedef struct { + UInt16 version; + UInt16 length; + UInt32 cpuPLimit; + UInt32 gpuPLimit; + UInt32 memPLimit; +} SMCKeyData_pLimitData_t; + +typedef struct { + UInt32 dataSize; + UInt32 dataType; + char dataAttributes; +} SMCKeyData_keyInfo_t; + +typedef unsigned char SMCBytes_t[32]; + +typedef struct { + UInt32 key; + SMCKeyData_vers_t vers; + SMCKeyData_pLimitData_t pLimitData; + SMCKeyData_keyInfo_t keyInfo; + char result; + char status; + char data8; + UInt32 data32; + SMCBytes_t bytes; +} SMCKeyData_t; + +typedef char UInt32Char_t[5]; + +typedef struct { + UInt32Char_t key; + UInt32 dataSize; + UInt32Char_t dataType; + SMCBytes_t bytes; +} SMCVal_t; + +UInt32 _strtoul(char *str, int size, int base); +float _strtof(unsigned char *str, int size, int e); + +// Exclude command-line only code from smcFanControl UI +#ifdef CMD_TOOL + +void smc_init(); +void smc_close(); +kern_return_t SMCReadKey(UInt32Char_t key, SMCVal_t *val); +kern_return_t SMCWriteSimple(UInt32Char_t key,char *wvalue,io_connect_t conn); + +#endif //#ifdef CMD_TOOL + +kern_return_t SMCOpen(io_connect_t *conn); +kern_return_t SMCClose(io_connect_t conn); +kern_return_t SMCReadKey2(UInt32Char_t key, SMCVal_t *val,io_connect_t conn); + diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/cpu/cpu.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu.go index 24a81167d..caf4d463a 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu.go @@ -10,7 +10,7 @@ import ( "sync" "time" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) // TimesStat contains the amounts of time the CPU has spent performing different diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_darwin.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin.go similarity index 97% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin.go index 3d3455ee6..73151b40f 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_darwin.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin.go @@ -14,11 +14,11 @@ import ( // sys/resource.h const ( CPUser = 0 - CPNice = 1 - CPSys = 2 - CPIntr = 3 - CPIdle = 4 - CPUStates = 5 + cpNice = 1 + cpSys = 2 + cpIntr = 3 + cpIdle = 4 + cpUStates = 5 ) // default value. from time.h diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_cgo.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin_cgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_cgo.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin_cgo.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_nocgo.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin_nocgo.go similarity index 81% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_nocgo.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin_nocgo.go index 242b4a8e7..3eaaf88f8 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_nocgo.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_darwin_nocgo.go @@ -3,7 +3,7 @@ package cpu -import "github.com/shirou/gopsutil/internal/common" +import "github.com/shirou/gopsutil/v3/internal/common" func perCPUTimes() ([]TimesStat, error) { return []TimesStat{}, common.ErrNotImplementedError diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_dragonfly.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_dragonfly.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_dragonfly.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_dragonfly.go index eed5beab7..ed6488933 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_dragonfly.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_dragonfly.go @@ -11,7 +11,7 @@ import ( "strings" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_dragonfly_amd64.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_dragonfly_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_dragonfly_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_dragonfly_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_fallback.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_fallback.go similarity index 93% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_fallback.go index 5551c49d1..d659abe71 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_fallback.go @@ -6,7 +6,7 @@ import ( "context" "runtime" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func Times(percpu bool) ([]TimesStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd.go index 57beffae1..d0ec8345e 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd.go @@ -11,7 +11,7 @@ import ( "strings" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_386.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_arm.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_arm.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_arm.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_arm.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_arm64.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_freebsd_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_linux.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_linux.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_linux.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_linux.go index a660dd455..588b473f6 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_linux.go @@ -11,7 +11,7 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) var ClocksPerSec = float64(100) diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_openbsd.go similarity index 80% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_openbsd.go index b54cf9ca6..cfe046740 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_openbsd.go @@ -13,27 +13,27 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) // sys/sched.h var ( CPUser = 0 - CPNice = 1 - CPSys = 2 - CPIntr = 3 - CPIdle = 4 - CPUStates = 5 + cpNice = 1 + cpSys = 2 + cpIntr = 3 + cpIdle = 4 + cpUStates = 5 ) // sys/sysctl.h const ( - CTLKern = 1 // "high kernel": proc, limits - CTLHw = 6 // CTL_HW - SMT = 24 // HW_SMT - KernCptime = 40 // KERN_CPTIME - KernCptime2 = 71 // KERN_CPTIME2 + ctlKern = 1 // "high kernel": proc, limits + ctlHw = 6 // CTL_HW + sMT = 24 // HW_sMT + kernCptime = 40 // KERN_CPTIME + kernCptime2 = 71 // KERN_CPTIME2 ) var ClocksPerSec = float64(128) @@ -64,15 +64,15 @@ func init() { return } if version >= 6.4 { - CPIntr = 4 - CPIdle = 5 - CPUStates = 6 + cpIntr = 4 + cpIdle = 5 + cpUStates = 6 } }() } func smt() (bool, error) { - mib := []int32{CTLHw, SMT} + mib := []int32{ctlHw, sMT} buf, _, err := common.CallSyscall(mib) if err != nil { return false, err @@ -116,12 +116,12 @@ func TimesWithContext(ctx context.Context, percpu bool) ([]TimesStat, error) { j *= 2 } - var cpuTimes = make([]int32, CPUStates) + var cpuTimes = make([]int32, cpUStates) var mib []int32 if percpu { - mib = []int32{CTLKern, KernCptime2, int32(j)} + mib = []int32{ctlKern, kernCptime2, int32(j)} } else { - mib = []int32{CTLKern, KernCptime} + mib = []int32{ctlKern, kernCptime} } buf, _, err := common.CallSyscall(mib) if err != nil { @@ -135,10 +135,10 @@ func TimesWithContext(ctx context.Context, percpu bool) ([]TimesStat, error) { } c := TimesStat{ User: float64(cpuTimes[CPUser]) / ClocksPerSec, - Nice: float64(cpuTimes[CPNice]) / ClocksPerSec, - System: float64(cpuTimes[CPSys]) / ClocksPerSec, - Idle: float64(cpuTimes[CPIdle]) / ClocksPerSec, - Irq: float64(cpuTimes[CPIntr]) / ClocksPerSec, + Nice: float64(cpuTimes[cpNice]) / ClocksPerSec, + System: float64(cpuTimes[cpSys]) / ClocksPerSec, + Idle: float64(cpuTimes[cpIdle]) / ClocksPerSec, + Irq: float64(cpuTimes[cpIntr]) / ClocksPerSec, } if percpu { c.CPU = fmt.Sprintf("cpu%d", j) diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_solaris.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_solaris.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_solaris.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_solaris.go diff --git a/vendor/github.com/shirou/gopsutil/cpu/cpu_windows.go b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_windows.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/cpu/cpu_windows.go rename to vendor/github.com/shirou/gopsutil/v3/cpu/cpu_windows.go index ad1750b5c..04b1a4708 100644 --- a/vendor/github.com/shirou/gopsutil/cpu/cpu_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/cpu/cpu_windows.go @@ -8,7 +8,7 @@ import ( "unsafe" "github.com/StackExchange/wmi" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/windows" ) @@ -17,7 +17,7 @@ var ( procGetNativeSystemInfo = common.Modkernel32.NewProc("GetNativeSystemInfo") ) -type Win32_Processor struct { +type win32Processor struct { LoadPercentage *uint16 Family uint16 Manufacturer string @@ -104,7 +104,7 @@ func Info() ([]InfoStat, error) { func InfoWithContext(ctx context.Context) ([]InfoStat, error) { var ret []InfoStat - var dst []Win32_Processor + var dst []win32Processor q := wmi.CreateQuery(&dst, "") if err := common.WMIQueryWithContext(ctx, q, &dst); err != nil { return ret, err @@ -242,7 +242,7 @@ func CountsWithContext(ctx context.Context, logical bool) (int, error) { } // physical cores https://github.com/giampaolo/psutil/blob/d01a9eaa35a8aadf6c519839e987a49d8be2d891/psutil/_psutil_windows.c#L499 // for the time being, try with unreliable and slow WMI call… - var dst []Win32_Processor + var dst []win32Processor q := wmi.CreateQuery(&dst, "") if err := common.WMIQueryWithContext(ctx, q, &dst); err != nil { return 0, err diff --git a/vendor/github.com/shirou/gopsutil/v3/disk/disk.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk.go new file mode 100644 index 000000000..dd4cc1d5f --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk.go @@ -0,0 +1,96 @@ +package disk + +import ( + "context" + "encoding/json" + + "github.com/shirou/gopsutil/v3/internal/common" +) + +var invoke common.Invoker = common.Invoke{} + +type UsageStat struct { + Path string `json:"path"` + Fstype string `json:"fstype"` + Total uint64 `json:"total"` + Free uint64 `json:"free"` + Used uint64 `json:"used"` + UsedPercent float64 `json:"usedPercent"` + InodesTotal uint64 `json:"inodesTotal"` + InodesUsed uint64 `json:"inodesUsed"` + InodesFree uint64 `json:"inodesFree"` + InodesUsedPercent float64 `json:"inodesUsedPercent"` +} + +type PartitionStat struct { + Device string `json:"device"` + Mountpoint string `json:"mountpoint"` + Fstype string `json:"fstype"` + Opts []string `json:"opts"` +} + +type IOCountersStat struct { + ReadCount uint64 `json:"readCount"` + MergedReadCount uint64 `json:"mergedReadCount"` + WriteCount uint64 `json:"writeCount"` + MergedWriteCount uint64 `json:"mergedWriteCount"` + ReadBytes uint64 `json:"readBytes"` + WriteBytes uint64 `json:"writeBytes"` + ReadTime uint64 `json:"readTime"` + WriteTime uint64 `json:"writeTime"` + IopsInProgress uint64 `json:"iopsInProgress"` + IoTime uint64 `json:"ioTime"` + WeightedIO uint64 `json:"weightedIO"` + Name string `json:"name"` + SerialNumber string `json:"serialNumber"` + Label string `json:"label"` +} + +func (d UsageStat) String() string { + s, _ := json.Marshal(d) + return string(s) +} + +func (d PartitionStat) String() string { + s, _ := json.Marshal(d) + return string(s) +} + +func (d IOCountersStat) String() string { + s, _ := json.Marshal(d) + return string(s) +} + +// Usage returns a file system usage. path is a filesystem path such +// as "/", not device file path like "/dev/vda1". If you want to use +// a return value of disk.Partitions, use "Mountpoint" not "Device". +func Usage(path string) (*UsageStat, error) { + return UsageWithContext(context.Background(), path) +} + +// Partitions returns disk partitions. If all is false, returns +// physical devices only (e.g. hard disks, cd-rom drives, USB keys) +// and ignore all others (e.g. memory partitions such as /dev/shm) +// +// 'all' argument is ignored for BSD, see: https://github.com/giampaolo/psutil/issues/906 +func Partitions(all bool) ([]PartitionStat, error) { + return PartitionsWithContext(context.Background(), all) +} + +func IOCounters(names ...string) (map[string]IOCountersStat, error) { + return IOCountersWithContext(context.Background(), names...) +} + +// SerialNumber returns Serial Number of given device or empty string +// on error. Name of device is expected, eg. /dev/sda +func SerialNumber(name string) (string, error) { + return SerialNumberWithContext(context.Background(), name) +} + +// Label returns label of given device or empty string on error. +// Name of device is expected, eg. /dev/sda +// Supports label based on devicemapper name +// See https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-block-dm +func Label(name string) (string, error) { + return LabelWithContext(context.Background(), name) +} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_darwin.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin.go similarity index 50% rename from vendor/github.com/shirou/gopsutil/disk/disk_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin.go index 64c41d70a..985e9f350 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_darwin.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin.go @@ -4,16 +4,13 @@ package disk import ( "context" - "path" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - +// PartitionsWithContext returns disk partition. +// 'all' argument is ignored, see: https://github.com/giampaolo/psutil/issues/906 func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { var ret []PartitionStat @@ -26,54 +23,49 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro return ret, err } for _, stat := range fs { - opts := "rw" + opts := []string{"rw"} if stat.Flags&unix.MNT_RDONLY != 0 { - opts = "ro" + opts = []string{"ro"} } if stat.Flags&unix.MNT_SYNCHRONOUS != 0 { - opts += ",sync" + opts = append(opts, "sync") } if stat.Flags&unix.MNT_NOEXEC != 0 { - opts += ",noexec" + opts = append(opts, "noexec") } if stat.Flags&unix.MNT_NOSUID != 0 { - opts += ",nosuid" + opts = append(opts, "nosuid") } if stat.Flags&unix.MNT_UNION != 0 { - opts += ",union" + opts = append(opts, "union") } if stat.Flags&unix.MNT_ASYNC != 0 { - opts += ",async" + opts = append(opts, "async") } if stat.Flags&unix.MNT_DONTBROWSE != 0 { - opts += ",nobrowse" + opts = append(opts, "nobrowse") } if stat.Flags&unix.MNT_AUTOMOUNTED != 0 { - opts += ",automounted" + opts = append(opts, "automounted") } if stat.Flags&unix.MNT_JOURNALED != 0 { - opts += ",journaled" + opts = append(opts, "journaled") } if stat.Flags&unix.MNT_MULTILABEL != 0 { - opts += ",multilabel" + opts = append(opts, "multilabel") } if stat.Flags&unix.MNT_NOATIME != 0 { - opts += ",noatime" + opts = append(opts, "noatime") } if stat.Flags&unix.MNT_NODEV != 0 { - opts += ",nodev" + opts = append(opts, "nodev") } d := PartitionStat{ - Device: common.IntToString(stat.Mntfromname[:]), - Mountpoint: common.IntToString(stat.Mntonname[:]), - Fstype: common.IntToString(stat.Fstypename[:]), + Device: common.ByteToString(stat.Mntfromname[:]), + Mountpoint: common.ByteToString(stat.Mntonname[:]), + Fstype: common.ByteToString(stat.Fstypename[:]), Opts: opts, } - if all == false { - if !path.IsAbs(d.Device) || !common.PathExists(d.Device) { - continue - } - } ret = append(ret, d) } @@ -82,5 +74,13 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro } func getFsType(stat unix.Statfs_t) string { - return common.IntToString(stat.Fstypename[:]) + return common.ByteToString(stat.Fstypename[:]) +} + +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_darwin_cgo.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_cgo.go similarity index 85% rename from vendor/github.com/shirou/gopsutil/disk/disk_darwin_cgo.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_cgo.go index 8a1848ed7..18ea590f6 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_darwin_cgo.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_cgo.go @@ -14,13 +14,9 @@ import "C" import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { var buf [C.NDRIVE]C.DriveStats n, err := C.readdrivestat(&buf[0], C.int(len(buf))) diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_darwin_nocgo.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_nocgo.go similarity index 54% rename from vendor/github.com/shirou/gopsutil/disk/disk_darwin_nocgo.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_nocgo.go index fe76d83e5..a118be804 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_darwin_nocgo.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_darwin_nocgo.go @@ -6,13 +6,9 @@ package disk import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { return nil, common.ErrNotImplementedError } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_fallback.go similarity index 57% rename from vendor/github.com/shirou/gopsutil/disk/disk_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_fallback.go index 22eb50794..f50ebf19e 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_fallback.go @@ -5,29 +5,25 @@ package disk import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { return []PartitionStat{}, common.ErrNotImplementedError } -func Usage(path string) (*UsageStat, error) { - return UsageWithContext(context.Background(), path) -} - func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { return nil, common.ErrNotImplementedError } + +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd.go similarity index 63% rename from vendor/github.com/shirou/gopsutil/disk/disk_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd.go index f17282848..767a28b92 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd.go @@ -6,18 +6,15 @@ import ( "bytes" "context" "encoding/binary" - "path" "strconv" "golang.org/x/sys/unix" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - +// PartitionsWithContext returns disk partition. +// 'all' argument is ignored, see: https://github.com/giampaolo/psutil/issues/906 func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { var ret []PartitionStat @@ -33,54 +30,54 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro } for _, stat := range fs { - opts := "rw" + opts := []string{"rw"} if stat.Flags&unix.MNT_RDONLY != 0 { - opts = "ro" + opts = []string{"ro"} } if stat.Flags&unix.MNT_SYNCHRONOUS != 0 { - opts += ",sync" + opts = append(opts, "sync") } if stat.Flags&unix.MNT_NOEXEC != 0 { - opts += ",noexec" + opts = append(opts, "noexec") } if stat.Flags&unix.MNT_NOSUID != 0 { - opts += ",nosuid" + opts = append(opts, "nosuid") } if stat.Flags&unix.MNT_UNION != 0 { - opts += ",union" + opts = append(opts, "union") } if stat.Flags&unix.MNT_ASYNC != 0 { - opts += ",async" + opts = append(opts, "async") } if stat.Flags&unix.MNT_SUIDDIR != 0 { - opts += ",suiddir" + opts = append(opts, "suiddir") } if stat.Flags&unix.MNT_SOFTDEP != 0 { - opts += ",softdep" + opts = append(opts, "softdep") } if stat.Flags&unix.MNT_NOSYMFOLLOW != 0 { - opts += ",nosymfollow" + opts = append(opts, "nosymfollow") } if stat.Flags&unix.MNT_GJOURNAL != 0 { - opts += ",gjournal" + opts = append(opts, "gjournal") } if stat.Flags&unix.MNT_MULTILABEL != 0 { - opts += ",multilabel" + opts = append(opts, "multilabel") } if stat.Flags&unix.MNT_ACLS != 0 { - opts += ",acls" + opts = append(opts, "acls") } if stat.Flags&unix.MNT_NOATIME != 0 { - opts += ",noatime" + opts = append(opts, "noatime") } if stat.Flags&unix.MNT_NOCLUSTERR != 0 { - opts += ",noclusterr" + opts = append(opts, "noclusterr") } if stat.Flags&unix.MNT_NOCLUSTERW != 0 { - opts += ",noclusterw" + opts = append(opts, "noclusterw") } if stat.Flags&unix.MNT_NFS4ACLS != 0 { - opts += ",nfsv4acls" + opts = append(opts, "nfsv4acls") } d := PartitionStat{ @@ -89,11 +86,6 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro Fstype: common.ByteToString(stat.Fstypename[:]), Opts: opts, } - if all == false { - if !path.IsAbs(d.Device) || !common.PathExists(d.Device) { - continue - } - } ret = append(ret, d) } @@ -101,10 +93,6 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro return ret, nil } -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { // statinfo->devinfo->devstat // /usr/include/devinfo.h @@ -117,13 +105,13 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC buf := []byte(r) length := len(buf) - count := int(uint64(length) / uint64(sizeOfDevstat)) + count := int(uint64(length) / uint64(sizeOfdevstat)) buf = buf[8:] // devstat.all has version in the head. - // parse buf to Devstat + // parse buf to devstat for i := 0; i < count; i++ { - b := buf[i*sizeOfDevstat : i*sizeOfDevstat+sizeOfDevstat] - d, err := parseDevstat(b) + b := buf[i*sizeOfdevstat : i*sizeOfdevstat+sizeOfdevstat] + d, err := parsedevstat(b) if err != nil { continue } @@ -135,12 +123,12 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC } ds := IOCountersStat{ - ReadCount: d.Operations[DEVSTAT_READ], - WriteCount: d.Operations[DEVSTAT_WRITE], - ReadBytes: d.Bytes[DEVSTAT_READ], - WriteBytes: d.Bytes[DEVSTAT_WRITE], - ReadTime: uint64(d.Duration[DEVSTAT_READ].Compute() * 1000), - WriteTime: uint64(d.Duration[DEVSTAT_WRITE].Compute() * 1000), + ReadCount: d.Operations[devstat_READ], + WriteCount: d.Operations[devstat_WRITE], + ReadBytes: d.Bytes[devstat_READ], + WriteBytes: d.Bytes[devstat_WRITE], + ReadTime: uint64(d.Duration[devstat_READ].Compute() * 1000), + WriteTime: uint64(d.Duration[devstat_WRITE].Compute() * 1000), IoTime: uint64(d.Busy_time.Compute() * 1000), Name: name, } @@ -150,15 +138,15 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC return ret, nil } -func (b Bintime) Compute() float64 { +func (b bintime) Compute() float64 { BINTIME_SCALE := 5.42101086242752217003726400434970855712890625e-20 return float64(b.Sec) + float64(b.Frac)*BINTIME_SCALE } // BT2LD(time) ((long double)(time).sec + (time).frac * BINTIME_SCALE) -func parseDevstat(buf []byte) (Devstat, error) { - var ds Devstat +func parsedevstat(buf []byte) (devstat, error) { + var ds devstat br := bytes.NewReader(buf) // err := binary.Read(br, binary.LittleEndian, &ds) err := common.Read(br, binary.LittleEndian, &ds) @@ -172,3 +160,11 @@ func parseDevstat(buf []byte) (Devstat, error) { func getFsType(stat unix.Statfs_t) string { return common.ByteToString(stat.Fstypename[:]) } + +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_386.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_386.go similarity index 76% rename from vendor/github.com/shirou/gopsutil/disk/disk_freebsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_386.go index e2793a4fe..9fc7cb256 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_386.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_386.go @@ -11,14 +11,14 @@ const ( sizeofLongLong = 0x8 sizeofLongDouble = 0x8 - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( - sizeOfDevstat = 0xf0 + sizeOfdevstat = 0xf0 ) type ( @@ -29,21 +29,21 @@ type ( _C_long_double int64 ) -type Devstat struct { +type devstat struct { Sequence0 uint32 Allocated int32 Start_count uint32 End_count uint32 - Busy_from Bintime + Busy_from bintime Dev_links _Ctype_struct___0 Device_number uint32 Device_name [16]int8 Unit_number int32 Bytes [4]uint64 Operations [4]uint64 - Duration [4]Bintime - Busy_time Bintime - Creation_time Bintime + Duration [4]bintime + Busy_time bintime + Creation_time bintime Block_size uint32 Tag_types [3]uint64 Flags uint32 @@ -52,7 +52,7 @@ type Devstat struct { Id *byte Sequence1 uint32 } -type Bintime struct { +type bintime struct { Sec int32 Frac uint64 } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_amd64.go similarity index 77% rename from vendor/github.com/shirou/gopsutil/disk/disk_freebsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_amd64.go index e9613dc5c..ffafc8fd9 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_amd64.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_amd64.go @@ -11,14 +11,14 @@ const ( sizeofLongLong = 0x8 sizeofLongDouble = 0x8 - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( - sizeOfDevstat = 0x120 + sizeOfdevstat = 0x120 ) type ( @@ -29,21 +29,21 @@ type ( _C_long_double int64 ) -type Devstat struct { +type devstat struct { Sequence0 uint32 Allocated int32 Start_count uint32 End_count uint32 - Busy_from Bintime + Busy_from bintime Dev_links _Ctype_struct___0 Device_number uint32 Device_name [16]int8 Unit_number int32 Bytes [4]uint64 Operations [4]uint64 - Duration [4]Bintime - Busy_time Bintime - Creation_time Bintime + Duration [4]bintime + Busy_time bintime + Creation_time bintime Block_size uint32 Pad_cgo_0 [4]byte Tag_types [3]uint64 @@ -55,7 +55,7 @@ type Devstat struct { Sequence1 uint32 Pad_cgo_2 [4]byte } -type Bintime struct { +type bintime struct { Sec int64 Frac uint64 } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm.go similarity index 76% rename from vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm.go index e2793a4fe..9fc7cb256 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm.go @@ -11,14 +11,14 @@ const ( sizeofLongLong = 0x8 sizeofLongDouble = 0x8 - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( - sizeOfDevstat = 0xf0 + sizeOfdevstat = 0xf0 ) type ( @@ -29,21 +29,21 @@ type ( _C_long_double int64 ) -type Devstat struct { +type devstat struct { Sequence0 uint32 Allocated int32 Start_count uint32 End_count uint32 - Busy_from Bintime + Busy_from bintime Dev_links _Ctype_struct___0 Device_number uint32 Device_name [16]int8 Unit_number int32 Bytes [4]uint64 Operations [4]uint64 - Duration [4]Bintime - Busy_time Bintime - Creation_time Bintime + Duration [4]bintime + Busy_time bintime + Creation_time bintime Block_size uint32 Tag_types [3]uint64 Flags uint32 @@ -52,7 +52,7 @@ type Devstat struct { Id *byte Sequence1 uint32 } -type Bintime struct { +type bintime struct { Sec int32 Frac uint64 } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm64.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm64.go similarity index 78% rename from vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm64.go index 1384131a8..a3912171b 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_freebsd_arm64.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_freebsd_arm64.go @@ -13,14 +13,14 @@ const ( sizeofLongLong = 0x8 sizeofLongDouble = 0x8 - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( - sizeOfDevstat = 0x120 + sizeOfdevstat = 0x120 ) type ( @@ -31,21 +31,21 @@ type ( _C_long_double int64 ) -type Devstat struct { +type devstat struct { Sequence0 uint32 Allocated int32 Start_count uint32 End_count uint32 - Busy_from Bintime + Busy_from bintime Dev_links _Ctype_struct___0 Device_number uint32 Device_name [16]int8 Unit_number int32 Bytes [4]uint64 Operations [4]uint64 - Duration [4]Bintime - Busy_time Bintime - Creation_time Bintime + Duration [4]bintime + Busy_time bintime + Creation_time bintime Block_size uint32 Tag_types [3]uint64 Flags uint32 @@ -55,7 +55,7 @@ type Devstat struct { Sequence1 uint32 Pad_cgo_0 [4]byte } -type Bintime struct { +type bintime struct { Sec int64 Frac uint64 } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_linux.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_linux.go similarity index 92% rename from vendor/github.com/shirou/gopsutil/disk/disk_linux.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_linux.go index d23a4c432..459da5ef2 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_linux.go @@ -13,12 +13,12 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) const ( - SectorSize = 512 + sectorSize = 512 ) const ( // man statfs @@ -218,13 +218,6 @@ var fsTypeMap = map[int64]string{ ZFS_SUPER_MAGIC: "zfs", /* 0x2FC12FC1 local */ } -// Partitions returns disk partitions. If all is false, returns -// physical devices only (e.g. hard disks, cd-rom drives, USB keys) -// and ignore all others (e.g. memory partitions such as /dev/shm) -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { useMounts := false @@ -259,7 +252,7 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro Device: fields[0], Mountpoint: unescapeFstab(fields[1]), Fstype: fields[2], - Opts: fields[3], + Opts: strings.Fields(fields[3]), } if !all { @@ -281,7 +274,11 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro fields := strings.Fields(parts[0]) blockDeviceID := fields[2] mountPoint := fields[4] - mountOpts := fields[5] + mountOpts := strings.Split(fields[5], ",") + + if rootDir := fields[3]; rootDir != "" && rootDir != "/" { + mountOpts = append(mountOpts, "bind") + } fields = strings.Fields(parts[1]) fstype := fields[0] @@ -346,10 +343,6 @@ func getFileSystems() ([]string, error) { return ret, nil } -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { filename := common.HostProc("diskstats") lines, err := common.ReadLines(filename) @@ -421,8 +414,8 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC return ret, err } d := IOCountersStat{ - ReadBytes: rbytes * SectorSize, - WriteBytes: wbytes * SectorSize, + ReadBytes: rbytes * sectorSize, + WriteBytes: wbytes * sectorSize, ReadCount: reads, WriteCount: writes, MergedReadCount: mergedReads, @@ -438,25 +431,19 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC } d.Name = name - d.SerialNumber = GetDiskSerialNumber(name) - d.Label = GetLabel(name) + d.SerialNumber, _ = SerialNumberWithContext(ctx, name) + d.Label, _ = LabelWithContext(ctx, name) ret[name] = d } return ret, nil } -// GetDiskSerialNumber returns Serial Number of given device or empty string -// on error. Name of device is expected, eg. /dev/sda -func GetDiskSerialNumber(name string) string { - return GetDiskSerialNumberWithContext(context.Background(), name) -} - -func GetDiskSerialNumberWithContext(ctx context.Context, name string) string { +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { var stat unix.Stat_t err := unix.Stat(name, &stat) if err != nil { - return "" + return "", err } major := unix.Major(uint64(stat.Rdev)) minor := unix.Minor(uint64(stat.Rdev)) @@ -468,7 +455,7 @@ func GetDiskSerialNumberWithContext(ctx context.Context, name string) string { for scanner.Scan() { values := strings.Split(scanner.Text(), "=") if len(values) == 2 && values[0] == "E:ID_SERIAL" { - return values[1] + return values[1], nil } } } @@ -479,28 +466,24 @@ func GetDiskSerialNumberWithContext(ctx context.Context, name string) string { model, _ := ioutil.ReadFile(filepath.Join(devicePath, "model")) serial, _ := ioutil.ReadFile(filepath.Join(devicePath, "serial")) if len(model) > 0 && len(serial) > 0 { - return fmt.Sprintf("%s_%s", string(model), string(serial)) + return fmt.Sprintf("%s_%s", string(model), string(serial)), nil } - return "" + return "", nil } -// GetLabel returns label of given device or empty string on error. -// Name of device is expected, eg. /dev/sda -// Supports label based on devicemapper name -// See https://www.kernel.org/doc/Documentation/ABI/testing/sysfs-block-dm -func GetLabel(name string) string { +func LabelWithContext(ctx context.Context, name string) (string, error) { // Try label based on devicemapper name dmname_filename := common.HostSys(fmt.Sprintf("block/%s/dm/name", name)) if !common.PathExists(dmname_filename) { - return "" + return "", nil } dmname, err := ioutil.ReadFile(dmname_filename) if err != nil { - return "" + return "", err } else { - return strings.TrimSpace(string(dmname)) + return strings.TrimSpace(string(dmname)), nil } } diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd.go similarity index 81% rename from vendor/github.com/shirou/gopsutil/disk/disk_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd.go index cd9e29447..24324a4fd 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd.go @@ -6,16 +6,11 @@ import ( "bytes" "context" "encoding/binary" - "path" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { var ret []PartitionStat @@ -31,33 +26,33 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro } for _, stat := range fs { - opts := "rw" + opts := []string{"rw"} if stat.F_flags&unix.MNT_RDONLY != 0 { - opts = "ro" + opts = []string{"rw"} } if stat.F_flags&unix.MNT_SYNCHRONOUS != 0 { - opts += ",sync" + opts = append(opts, "sync") } if stat.F_flags&unix.MNT_NOEXEC != 0 { - opts += ",noexec" + opts = append(opts, "noexec") } if stat.F_flags&unix.MNT_NOSUID != 0 { - opts += ",nosuid" + opts = append(opts, "nosuid") } if stat.F_flags&unix.MNT_NODEV != 0 { - opts += ",nodev" + opts = append(opts, "nodev") } if stat.F_flags&unix.MNT_ASYNC != 0 { - opts += ",async" + opts = append(opts, "async") } if stat.F_flags&unix.MNT_SOFTDEP != 0 { - opts += ",softdep" + opts = append(opts, "softdep") } if stat.F_flags&unix.MNT_NOATIME != 0 { - opts += ",noatime" + opts = append(opts, "noatime") } if stat.F_flags&unix.MNT_WXALLOWED != 0 { - opts += ",wxallowed" + opts = append(opts, "wxallowed") } d := PartitionStat{ @@ -66,11 +61,6 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro Fstype: common.IntToString(stat.F_fstypename[:]), Opts: opts, } - if all == false { - if !path.IsAbs(d.Device) || !common.PathExists(d.Device) { - continue - } - } ret = append(ret, d) } @@ -78,10 +68,6 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro return ret, nil } -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { ret := make(map[string]IOCountersStat) @@ -134,10 +120,6 @@ func parseDiskstats(buf []byte) (Diskstats, error) { return ds, nil } -func Usage(path string) (*UsageStat, error) { - return UsageWithContext(context.Background(), path) -} - func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { stat := unix.Statfs_t{} err := unix.Statfs(path, &stat) @@ -166,3 +148,11 @@ func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { func getFsType(stat unix.Statfs_t) string { return common.IntToString(stat.F_fstypename[:]) } + +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd_386.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_386.go similarity index 80% rename from vendor/github.com/shirou/gopsutil/disk/disk_openbsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_386.go index 8f3f84ef6..68f4e0456 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd_386.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_386.go @@ -6,10 +6,10 @@ package disk const ( - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( @@ -34,4 +34,4 @@ type Timeval struct { } type Diskstat struct{} -type Bintime struct{} +type bintime struct{} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_amd64.go similarity index 79% rename from vendor/github.com/shirou/gopsutil/disk/disk_openbsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_amd64.go index 7c9ceaa8d..c1bd52ef8 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_openbsd_amd64.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_openbsd_amd64.go @@ -4,10 +4,10 @@ package disk const ( - DEVSTAT_NO_DATA = 0x00 - DEVSTAT_READ = 0x01 - DEVSTAT_WRITE = 0x02 - DEVSTAT_FREE = 0x03 + devstat_NO_DATA = 0x00 + devstat_READ = 0x01 + devstat_WRITE = 0x02 + devstat_FREE = 0x03 ) const ( @@ -33,4 +33,4 @@ type Timeval struct { } type Diskstat struct{} -type Bintime struct{} +type bintime struct{} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_solaris.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_solaris.go similarity index 88% rename from vendor/github.com/shirou/gopsutil/disk/disk_solaris.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_solaris.go index c66083577..8601458e4 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_solaris.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_solaris.go @@ -10,7 +10,7 @@ import ( "os" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) @@ -38,10 +38,6 @@ var ( } ) -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { ret := make([]PartitionStat, 0, _DEFAULT_NUM_MOUNTS) @@ -73,7 +69,7 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro Device: fields[0], Mountpoint: fields[1], Fstype: fields[2], - Opts: fields[3], + Opts: strings.Split(fields[3], ","), }) } if err := scanner.Err(); err != nil { @@ -83,18 +79,10 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro return ret, err } -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func Usage(path string) (*UsageStat, error) { - return UsageWithContext(context.Background(), path) -} - func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { statvfs := unix.Statvfs_t{} if err := unix.Statvfs(path, &statvfs); err != nil { @@ -125,3 +113,10 @@ func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { return usageStat, nil } +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_unix.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_unix.go similarity index 82% rename from vendor/github.com/shirou/gopsutil/disk/disk_unix.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_unix.go index 86ab99cb6..9ca3bb34c 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_unix.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_unix.go @@ -9,13 +9,6 @@ import ( "golang.org/x/sys/unix" ) -// Usage returns a file system usage. path is a filesystem path such -// as "/", not device file path like "/dev/vda1". If you want to use -// a return value of disk.Partitions, use "Mountpoint" not "Device". -func Usage(path string) (*UsageStat, error) { - return UsageWithContext(context.Background(), path) -} - func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { stat := unix.Statfs_t{} err := unix.Statfs(path, &stat) diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_windows.go b/vendor/github.com/shirou/gopsutil/v3/disk/disk_windows.go similarity index 89% rename from vendor/github.com/shirou/gopsutil/disk/disk_windows.go rename to vendor/github.com/shirou/gopsutil/v3/disk/disk_windows.go index f871e9d8c..1293586c4 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/disk/disk_windows.go @@ -9,7 +9,7 @@ import ( "syscall" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/windows" ) @@ -21,8 +21,8 @@ var ( ) var ( - FileFileCompression = int64(16) // 0x00000010 - FileReadOnlyVolume = int64(524288) // 0x00080000 + fileFileCompression = int64(16) // 0x00000010 + fileReadOnlyVolume = int64(524288) // 0x00080000 ) // diskPerformance is an equivalent representation of DISK_PERFORMANCE in the Windows API. @@ -43,10 +43,6 @@ type diskPerformance struct { alignmentPadding uint32 // necessary for 32bit support, see https://github.com/elastic/beats/pull/16553 } -func Usage(path string) (*UsageStat, error) { - return UsageWithContext(context.Background(), path) -} - func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { lpFreeBytesAvailable := int64(0) lpTotalNumberOfBytes := int64(0) @@ -73,10 +69,6 @@ func UsageWithContext(ctx context.Context, path string) (*UsageStat, error) { return ret, nil } -func Partitions(all bool) ([]PartitionStat, error) { - return PartitionsWithContext(context.Background(), all) -} - func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, error) { var ret []PartitionStat lpBuffer := make([]byte, 254) @@ -118,12 +110,12 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro } return ret, err } - opts := "rw" - if lpFileSystemFlags&FileReadOnlyVolume != 0 { - opts = "ro" + opts := []string{"rw"} + if lpFileSystemFlags&fileReadOnlyVolume != 0 { + opts = []string{"ro"} } - if lpFileSystemFlags&FileFileCompression != 0 { - opts += ".compress" + if lpFileSystemFlags&fileFileCompression != 0 { + opts = append(opts, "compress") } d := PartitionStat{ @@ -139,10 +131,6 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro return ret, nil } -func IOCounters(names ...string) (map[string]IOCountersStat, error) { - return IOCountersWithContext(context.Background(), names...) -} - func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { // https://github.com/giampaolo/psutil/blob/544e9daa4f66a9f80d7bf6c7886d693ee42f0a13/psutil/arch/windows/disk.c#L83 drivemap := make(map[string]IOCountersStat, 0) @@ -155,7 +143,7 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC } for _, v := range lpBuffer[:lpBufferLen] { if 'A' <= v && v <= 'Z' { - path := string(v) + ":" + path := string(rune(v)) + ":" typepath, _ := windows.UTF16PtrFromString(path) typeret := windows.GetDriveType(typepath) if typeret == 0 { @@ -193,3 +181,11 @@ func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOC } return drivemap, nil } + +func SerialNumberWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} + +func LabelWithContext(ctx context.Context, name string) (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/disk/iostat_darwin.c b/vendor/github.com/shirou/gopsutil/v3/disk/iostat_darwin.c similarity index 100% rename from vendor/github.com/shirou/gopsutil/disk/iostat_darwin.c rename to vendor/github.com/shirou/gopsutil/v3/disk/iostat_darwin.c diff --git a/vendor/github.com/shirou/gopsutil/disk/iostat_darwin.h b/vendor/github.com/shirou/gopsutil/v3/disk/iostat_darwin.h similarity index 100% rename from vendor/github.com/shirou/gopsutil/disk/iostat_darwin.h rename to vendor/github.com/shirou/gopsutil/v3/disk/iostat_darwin.h diff --git a/vendor/github.com/shirou/gopsutil/host/host.go b/vendor/github.com/shirou/gopsutil/v3/host/host.go similarity index 94% rename from vendor/github.com/shirou/gopsutil/host/host.go rename to vendor/github.com/shirou/gopsutil/v3/host/host.go index 647cf0156..09910b6a1 100644 --- a/vendor/github.com/shirou/gopsutil/host/host.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host.go @@ -7,7 +7,7 @@ import ( "runtime" "time" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) var invoke common.Invoker = common.Invoke{} @@ -27,7 +27,7 @@ type InfoStat struct { KernelArch string `json:"kernelArch"` // native cpu architecture queried at runtime, as returned by `uname -m` or empty string in case of error VirtualizationSystem string `json:"virtualizationSystem"` VirtualizationRole string `json:"virtualizationRole"` // guest or host - HostID string `json:"hostid"` // ex: uuid + HostID string `json:"hostId"` // ex: uuid } type UserStat struct { @@ -39,7 +39,9 @@ type UserStat struct { type TemperatureStat struct { SensorKey string `json:"sensorKey"` - Temperature float64 `json:"sensorTemperature"` + Temperature float64 `json:"temperature"` + High float64 `json:"sensorHigh"` + Critical float64 `json:"sensorCritical"` } func (h InfoStat) String() string { diff --git a/vendor/github.com/shirou/gopsutil/host/host_bsd.go b/vendor/github.com/shirou/gopsutil/v3/host/host_bsd.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_bsd.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_bsd.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin.go similarity index 94% rename from vendor/github.com/shirou/gopsutil/host/host_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin.go index 8f51b20ff..9aadc54e8 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_darwin.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin.go @@ -12,13 +12,13 @@ import ( "strings" "unsafe" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/process" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/process" "golang.org/x/sys/unix" ) // from utmpx.h -const USER_PROCESS = 7 +const user_PROCESS = 7 func HostIDWithContext(ctx context.Context) (string, error) { uuid, err := unix.Sysctl("kern.uuid") @@ -64,7 +64,7 @@ func UsersWithContext(ctx context.Context) ([]UserStat, error) { if err != nil { continue } - if u.Type != USER_PROCESS { + if u.Type != user_PROCESS { continue } user := UserStat{ diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin_386.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_darwin_386.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin_386.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin_amd64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_darwin_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin_arm64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_darwin_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin_cgo.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_cgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_darwin_cgo.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin_cgo.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin_nocgo.go b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_nocgo.go similarity index 81% rename from vendor/github.com/shirou/gopsutil/host/host_darwin_nocgo.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_darwin_nocgo.go index 784899bc0..96d80d706 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_darwin_nocgo.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_darwin_nocgo.go @@ -6,7 +6,7 @@ package host import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func SensorsTemperaturesWithContext(ctx context.Context) ([]TemperatureStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/host/host_fallback.go b/vendor/github.com/shirou/gopsutil/v3/host/host_fallback.go similarity index 96% rename from vendor/github.com/shirou/gopsutil/host/host_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_fallback.go index db697a5a5..35b553743 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_fallback.go @@ -5,7 +5,7 @@ package host import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func HostIDWithContext(ctx context.Context) (string, error) { diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd.go similarity index 97% rename from vendor/github.com/shirou/gopsutil/host/host_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_freebsd.go index 583a1f9e3..d7efd6983 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd.go @@ -12,8 +12,8 @@ import ( "strings" "unsafe" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/process" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/process" "golang.org/x/sys/unix" ) diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd_386.go b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_freebsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_freebsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd_arm.go b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_arm.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_freebsd_arm.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_arm.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd_arm64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_freebsd_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_freebsd_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux.go similarity index 83% rename from vendor/github.com/shirou/gopsutil/host/host_linux.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux.go index 739aa93b7..39488704b 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_linux.go @@ -15,11 +15,11 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) -type LSB struct { +type lsbStruct struct { ID string Release string Codename string @@ -27,7 +27,11 @@ type LSB struct { } // from utmp.h -const USER_PROCESS = 7 +const ( + user_PROCESS = 7 + + hostTemperatureScale = 1000.0 +) func HostIDWithContext(ctx context.Context) (string, error) { sysProductUUID := common.HostSys("class/dmi/id/product_uuid") @@ -104,7 +108,7 @@ func UsersWithContext(ctx context.Context) ([]UserStat, error) { if err != nil { continue } - if u.Type != USER_PROCESS { + if u.Type != user_PROCESS { continue } user := UserStat{ @@ -120,8 +124,8 @@ func UsersWithContext(ctx context.Context) ([]UserStat, error) { } -func getLSB() (*LSB, error) { - ret := &LSB{} +func getlsbStruct() (*lsbStruct, error) { + ret := &lsbStruct{} if common.PathExists(common.HostEtc("lsb-release")) { contents, err := common.ReadLines(common.HostEtc("lsb-release")) if err != nil { @@ -175,9 +179,9 @@ func getLSB() (*LSB, error) { } func PlatformInformationWithContext(ctx context.Context) (platform string, family string, version string, err error) { - lsb, err := getLSB() + lsb, err := getlsbStruct() if err != nil { - lsb = &LSB{} + lsb = &lsbStruct{} } if common.PathExists(common.HostEtc("oracle-release")) { @@ -366,19 +370,27 @@ func VirtualizationWithContext(ctx context.Context) (string, string, error) { } func SensorsTemperaturesWithContext(ctx context.Context) ([]TemperatureStat, error) { - var temperatures []TemperatureStat - files, err := filepath.Glob(common.HostSys("/class/hwmon/hwmon*/temp*_*")) - if err != nil { + var err error + + var files []string + + temperatures := make([]TemperatureStat, 0) + + // Only the temp*_input file provides current temperature + // value in millidegree Celsius as reported by the temperature to the device: + // https://www.kernel.org/doc/Documentation/hwmon/sysfs-interface + if files, err = filepath.Glob(common.HostSys("/class/hwmon/hwmon*/temp*_input")); err != nil { return temperatures, err } + if len(files) == 0 { // CentOS has an intermediate /device directory: // https://github.com/giampaolo/psutil/issues/971 - files, err = filepath.Glob(common.HostSys("/class/hwmon/hwmon*/device/temp*_*")) - if err != nil { + if files, err = filepath.Glob(common.HostSys("/class/hwmon/hwmon*/device/temp*_input")); err != nil { return temperatures, err } } + var warns Warnings if len(files) == 0 { // handle distributions without hwmon, like raspbian #391, parse legacy thermal_zone files @@ -413,6 +425,8 @@ func SensorsTemperaturesWithContext(ctx context.Context) ([]TemperatureStat, err return temperatures, warns.Reference() } + temperatures = make([]TemperatureStat, 0, len(files)) + // example directory // device/ temp1_crit_alarm temp2_crit_alarm temp3_crit_alarm temp4_crit_alarm temp5_crit_alarm temp6_crit_alarm temp7_crit_alarm // name temp1_input temp2_input temp3_input temp4_input temp5_input temp6_input temp7_input @@ -420,44 +434,81 @@ func SensorsTemperaturesWithContext(ctx context.Context) ([]TemperatureStat, err // subsystem/ temp1_max temp2_max temp3_max temp4_max temp5_max temp6_max temp7_max // temp1_crit temp2_crit temp3_crit temp4_crit temp5_crit temp6_crit temp7_crit uevent for _, file := range files { - filename := strings.Split(filepath.Base(file), "_") - if filename[1] == "label" { - // Do not try to read the temperature of the label file - continue - } + var raw []byte + + var temperature float64 + + // Get the base directory location + directory := filepath.Dir(file) + + // Get the base filename prefix like temp1 + basename := strings.Split(filepath.Base(file), "_")[0] + + // Get the base path like /temp1 + basepath := filepath.Join(directory, basename) // Get the label of the temperature you are reading - var label string - c, _ := ioutil.ReadFile(filepath.Join(filepath.Dir(file), filename[0]+"_label")) - if c != nil { - //format the label from "Core 0" to "core0_" - label = fmt.Sprintf("%s_", strings.Join(strings.Split(strings.TrimSpace(strings.ToLower(string(c))), " "), "")) + label := "" + + if raw, _ = ioutil.ReadFile(basepath + "_label"); len(raw) != 0 { + // Format the label from "Core 0" to "core_0" + label = strings.Join(strings.Split(strings.TrimSpace(strings.ToLower(string(raw))), " "), "_") } // Get the name of the temperature you are reading - name, err := ioutil.ReadFile(filepath.Join(filepath.Dir(file), "name")) - if err != nil { + if raw, err = ioutil.ReadFile(filepath.Join(directory, "name")); err != nil { warns.Add(err) continue } + name := strings.TrimSpace(string(raw)) + + if label != "" { + name = name + "_" + label + } + // Get the temperature reading - current, err := ioutil.ReadFile(file) - if err != nil { - warns.Add(err) - continue - } - temperature, err := strconv.ParseFloat(strings.TrimSpace(string(current)), 64) - if err != nil { + if raw, err = ioutil.ReadFile(file); err != nil { warns.Add(err) continue } - tempName := strings.TrimSpace(strings.ToLower(string(strings.Join(filename[1:], "")))) + if temperature, err = strconv.ParseFloat(strings.TrimSpace(string(raw)), 64); err != nil { + warns.Add(err) + continue + } + + // Add discovered temperature sensor to the list temperatures = append(temperatures, TemperatureStat{ - SensorKey: fmt.Sprintf("%s_%s%s", strings.TrimSpace(string(name)), label, tempName), - Temperature: temperature / 1000.0, + SensorKey: name, + Temperature: temperature / hostTemperatureScale, + High: optionalValueReadFromFile(basepath+"_max") / hostTemperatureScale, + Critical: optionalValueReadFromFile(basepath+"_crit") / hostTemperatureScale, }) } + return temperatures, warns.Reference() } + +func optionalValueReadFromFile(filename string) float64 { + var raw []byte + + var err error + + var value float64 + + // Check if file exists + if _, err := os.Stat(filename); os.IsNotExist(err) { + return 0 + } + + if raw, err = ioutil.ReadFile(filename); err != nil { + return 0 + } + + if value, err = strconv.ParseFloat(strings.TrimSpace(string(raw)), 64); err != nil { + return 0 + } + + return value +} diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_386.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_386.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_386.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_amd64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_arm.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_arm.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_arm.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_arm.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_arm64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_mips.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_mips.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_mips64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_mips64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_mips64le.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips64le.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_mips64le.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_mips64le.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_mipsle.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_mipsle.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_mipsle.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_mipsle.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_ppc64le.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_ppc64le.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_ppc64le.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_ppc64le.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_riscv64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_riscv64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_riscv64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_riscv64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_linux_s390x.go b/vendor/github.com/shirou/gopsutil/v3/host/host_linux_s390x.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_linux_s390x.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_linux_s390x.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/host/host_openbsd.go similarity index 95% rename from vendor/github.com/shirou/gopsutil/host/host_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_openbsd.go index cfac1e9eb..97c51fdf7 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_openbsd.go @@ -11,8 +11,8 @@ import ( "strings" "unsafe" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/process" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/process" "golang.org/x/sys/unix" ) diff --git a/vendor/github.com/shirou/gopsutil/host/host_openbsd_386.go b/vendor/github.com/shirou/gopsutil/v3/host/host_openbsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_openbsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_openbsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_openbsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/host/host_openbsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_openbsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_openbsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_posix.go b/vendor/github.com/shirou/gopsutil/v3/host/host_posix.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/host_posix.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_posix.go diff --git a/vendor/github.com/shirou/gopsutil/host/host_solaris.go b/vendor/github.com/shirou/gopsutil/v3/host/host_solaris.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/host/host_solaris.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_solaris.go index 9180db5a6..62d47869c 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_solaris.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_solaris.go @@ -12,7 +12,7 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func HostIDWithContext(ctx context.Context) (string, error) { diff --git a/vendor/github.com/shirou/gopsutil/host/host_windows.go b/vendor/github.com/shirou/gopsutil/v3/host/host_windows.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/host/host_windows.go rename to vendor/github.com/shirou/gopsutil/v3/host/host_windows.go index 6d4545854..86db211f3 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/host/host_windows.go @@ -13,8 +13,8 @@ import ( "unsafe" "github.com/StackExchange/wmi" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/process" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/process" "golang.org/x/sys/windows" ) diff --git a/vendor/github.com/shirou/gopsutil/host/smc_darwin.c b/vendor/github.com/shirou/gopsutil/v3/host/smc_darwin.c similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/smc_darwin.c rename to vendor/github.com/shirou/gopsutil/v3/host/smc_darwin.c diff --git a/vendor/github.com/shirou/gopsutil/host/smc_darwin.h b/vendor/github.com/shirou/gopsutil/v3/host/smc_darwin.h similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/smc_darwin.h rename to vendor/github.com/shirou/gopsutil/v3/host/smc_darwin.h diff --git a/vendor/github.com/shirou/gopsutil/host/types.go b/vendor/github.com/shirou/gopsutil/v3/host/types.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/host/types.go rename to vendor/github.com/shirou/gopsutil/v3/host/types.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/binary.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/binary.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/binary.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/binary.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/internal/common/common.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common.go index 57e291b10..ebf70ea0b 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common.go +++ b/vendor/github.com/shirou/gopsutil/v3/internal/common/common.go @@ -326,7 +326,6 @@ func GetEnv(key string, dfault string, combineWith ...string) string { copy(all[1:], combineWith) return filepath.Join(all...) } - panic("invalid switch case") } func HostProc(combineWith ...string) string { diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_darwin.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_darwin.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_freebsd.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_freebsd.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_linux.go similarity index 89% rename from vendor/github.com/shirou/gopsutil/internal/common/common_linux.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_linux.go index 62fac5e5c..734998993 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_linux.go @@ -10,6 +10,7 @@ import ( "path/filepath" "strconv" "strings" + "sync" "time" ) @@ -110,16 +111,24 @@ func Virtualization() (string, string, error) { return VirtualizationWithContext(context.Background()) } -var virtualizationCache map[string]string +// required variables for concurrency safe virtualization caching +var ( + cachedVirtMap map[string]string + cachedVirtMutex sync.RWMutex + cachedVirtOnce sync.Once +) func VirtualizationWithContext(ctx context.Context) (string, string, error) { + var system, role string + // if cached already, return from cache - if virtualizationCache != nil { - return virtualizationCache["system"], virtualizationCache["role"], nil + cachedVirtMutex.RLock() // unlock won't be deferred so concurrent reads don't wait for long + if cachedVirtMap != nil { + cachedSystem, cachedRole := cachedVirtMap["system"], cachedVirtMap["role"] + cachedVirtMutex.RUnlock() + return cachedSystem, cachedRole, nil } - - var system string - var role string + cachedVirtMutex.RUnlock() filename := HostProc("xen") if PathExists(filename) { @@ -238,13 +247,17 @@ func VirtualizationWithContext(ctx context.Context) (string, string, error) { role = "host" } } - + // before returning for the first time, cache the system and role - virtualizationCache = map[string]string{ - "system": system, - "role": role, - } - + cachedVirtOnce.Do(func() { + cachedVirtMutex.Lock() + defer cachedVirtMutex.Unlock() + cachedVirtMap = map[string]string{ + "system": system, + "role": role, + } + }) + return system, role, nil } diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_openbsd.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_openbsd.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_unix.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_unix.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/common_unix.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_unix.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_windows.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/common_windows.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/common_windows.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/common_windows.go diff --git a/vendor/github.com/shirou/gopsutil/internal/common/sleep.go b/vendor/github.com/shirou/gopsutil/v3/internal/common/sleep.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/internal/common/sleep.go rename to vendor/github.com/shirou/gopsutil/v3/internal/common/sleep.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem.go similarity index 68% rename from vendor/github.com/shirou/gopsutil/mem/mem.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem.go index dc2aacb59..08323f113 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem.go @@ -3,7 +3,7 @@ package mem import ( "encoding/json" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) var invoke common.Invoker = common.Invoke{} @@ -52,30 +52,30 @@ type VirtualMemoryStat struct { // https://www.kernel.org/doc/Documentation/vm/overcommit-accounting Buffers uint64 `json:"buffers"` Cached uint64 `json:"cached"` - Writeback uint64 `json:"writeback"` + WriteBack uint64 `json:"writeBack"` Dirty uint64 `json:"dirty"` - WritebackTmp uint64 `json:"writebacktmp"` + WriteBackTmp uint64 `json:"writeBackTmp"` Shared uint64 `json:"shared"` Slab uint64 `json:"slab"` - SReclaimable uint64 `json:"sreclaimable"` - SUnreclaim uint64 `json:"sunreclaim"` - PageTables uint64 `json:"pagetables"` - SwapCached uint64 `json:"swapcached"` - CommitLimit uint64 `json:"commitlimit"` - CommittedAS uint64 `json:"committedas"` - HighTotal uint64 `json:"hightotal"` - HighFree uint64 `json:"highfree"` - LowTotal uint64 `json:"lowtotal"` - LowFree uint64 `json:"lowfree"` - SwapTotal uint64 `json:"swaptotal"` - SwapFree uint64 `json:"swapfree"` + Sreclaimable uint64 `json:"sreclaimable"` + Sunreclaim uint64 `json:"sunreclaim"` + PageTables uint64 `json:"pageTables"` + SwapCached uint64 `json:"swapCached"` + CommitLimit uint64 `json:"commitLimit"` + CommittedAS uint64 `json:"committedAS"` + HighTotal uint64 `json:"highTotal"` + HighFree uint64 `json:"highFree"` + LowTotal uint64 `json:"lowTotal"` + LowFree uint64 `json:"lowFree"` + SwapTotal uint64 `json:"swapTotal"` + SwapFree uint64 `json:"swapFree"` Mapped uint64 `json:"mapped"` - VMallocTotal uint64 `json:"vmalloctotal"` - VMallocUsed uint64 `json:"vmallocused"` - VMallocChunk uint64 `json:"vmallocchunk"` - HugePagesTotal uint64 `json:"hugepagestotal"` - HugePagesFree uint64 `json:"hugepagesfree"` - HugePageSize uint64 `json:"hugepagesize"` + VmallocTotal uint64 `json:"vmallocTotal"` + VmallocUsed uint64 `json:"vmallocUsed"` + VmallocChunk uint64 `json:"vmallocChunk"` + HugePagesTotal uint64 `json:"hugePagesTotal"` + HugePagesFree uint64 `json:"hugePagesFree"` + HugePageSize uint64 `json:"hugePageSize"` } type SwapMemoryStat struct { @@ -85,13 +85,13 @@ type SwapMemoryStat struct { UsedPercent float64 `json:"usedPercent"` Sin uint64 `json:"sin"` Sout uint64 `json:"sout"` - PgIn uint64 `json:"pgin"` - PgOut uint64 `json:"pgout"` - PgFault uint64 `json:"pgfault"` + PgIn uint64 `json:"pgIn"` + PgOut uint64 `json:"pgOut"` + PgFault uint64 `json:"pgFault"` // Linux specific numbers // https://www.kernel.org/doc/Documentation/cgroup-v2.txt - PgMajFault uint64 `json:"pgmajfault"` + PgMajFault uint64 `json:"pgMajFault"` } func (m VirtualMemoryStat) String() string { diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_darwin.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/mem/mem_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_darwin_cgo.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin_cgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/mem/mem_darwin_cgo.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin_cgo.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_darwin_nocgo.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin_nocgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/mem/mem_darwin_nocgo.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_darwin_nocgo.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_fallback.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_fallback.go similarity index 91% rename from vendor/github.com/shirou/gopsutil/mem/mem_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_fallback.go index 2a0fd45b3..ada031902 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_fallback.go @@ -5,7 +5,7 @@ package mem import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func VirtualMemory() (*VirtualMemoryStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_freebsd.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/mem/mem_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_freebsd.go index f91efc9e3..ad592136b 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_freebsd.go @@ -9,7 +9,7 @@ import ( "golang.org/x/sys/unix" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func VirtualMemory() (*VirtualMemoryStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_linux.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_linux.go similarity index 91% rename from vendor/github.com/shirou/gopsutil/mem/mem_linux.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_linux.go index 72faf22b9..c9ef47bad 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_linux.go @@ -10,7 +10,7 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) @@ -59,7 +59,7 @@ func fillFromMeminfoWithContext(ctx context.Context) (*VirtualMemoryStat, *Virtu memavail := false activeFile := false // "Active(file)" not available: 2.6.28 / Dec 2008 inactiveFile := false // "Inactive(file)" not available: 2.6.28 / Dec 2008 - sReclaimable := false // "SReclaimable:" not available: 2.6.19 / Nov 2006 + sReclaimable := false // "Sreclaimable:" not available: 2.6.19 / Nov 2006 ret := &VirtualMemoryStat{} retEx := &VirtualMemoryExStat{} @@ -105,21 +105,21 @@ func fillFromMeminfoWithContext(ctx context.Context) (*VirtualMemoryStat, *Virtu retEx.InactiveFile = t * 1024 case "Unevictable": retEx.Unevictable = t * 1024 - case "Writeback": - ret.Writeback = t * 1024 - case "WritebackTmp": - ret.WritebackTmp = t * 1024 + case "WriteBack": + ret.WriteBack = t * 1024 + case "WriteBackTmp": + ret.WriteBackTmp = t * 1024 case "Dirty": ret.Dirty = t * 1024 case "Shmem": ret.Shared = t * 1024 case "Slab": ret.Slab = t * 1024 - case "SReclaimable": + case "Sreclaimable": sReclaimable = true - ret.SReclaimable = t * 1024 - case "SUnreclaim": - ret.SUnreclaim = t * 1024 + ret.Sreclaimable = t * 1024 + case "Sunreclaim": + ret.Sunreclaim = t * 1024 case "PageTables": ret.PageTables = t * 1024 case "SwapCached": @@ -143,11 +143,11 @@ func fillFromMeminfoWithContext(ctx context.Context) (*VirtualMemoryStat, *Virtu case "Mapped": ret.Mapped = t * 1024 case "VmallocTotal": - ret.VMallocTotal = t * 1024 + ret.VmallocTotal = t * 1024 case "VmallocUsed": - ret.VMallocUsed = t * 1024 + ret.VmallocUsed = t * 1024 case "VmallocChunk": - ret.VMallocChunk = t * 1024 + ret.VmallocChunk = t * 1024 case "HugePages_Total": ret.HugePagesTotal = t case "HugePages_Free": @@ -157,7 +157,7 @@ func fillFromMeminfoWithContext(ctx context.Context) (*VirtualMemoryStat, *Virtu } } - ret.Cached += ret.SReclaimable + ret.Cached += ret.Sreclaimable if !memavail { if activeFile && inactiveFile && sReclaimable { @@ -214,25 +214,25 @@ func SwapMemoryWithContext(ctx context.Context) (*SwapMemoryStat, error) { continue } ret.Sout = value * 4 * 1024 - case "pgpgin": + case "pgpgIn": value, err := strconv.ParseUint(fields[1], 10, 64) if err != nil { continue } ret.PgIn = value * 4 * 1024 - case "pgpgout": + case "pgpgOut": value, err := strconv.ParseUint(fields[1], 10, 64) if err != nil { continue } ret.PgOut = value * 4 * 1024 - case "pgfault": + case "pgFault": value, err := strconv.ParseUint(fields[1], 10, 64) if err != nil { continue } ret.PgFault = value * 4 * 1024 - case "pgmajfault": + case "pgMajFault": value, err := strconv.ParseUint(fields[1], 10, 64) if err != nil { continue @@ -278,7 +278,7 @@ func calcuateAvailVmem(ret *VirtualMemoryStat, retEx *VirtualMemoryExStat) uint6 pageCache := retEx.ActiveFile + retEx.InactiveFile pageCache -= uint64(math.Min(float64(pageCache/2), float64(watermarkLow))) availMemory += pageCache - availMemory += ret.SReclaimable - uint64(math.Min(float64(ret.SReclaimable/2.0), float64(watermarkLow))) + availMemory += ret.Sreclaimable - uint64(math.Min(float64(ret.Sreclaimable/2.0), float64(watermarkLow))) if availMemory < 0 { availMemory = 0 diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/mem/mem_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd.go index 7ecdae9fd..9dc3af1f2 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd.go @@ -10,7 +10,7 @@ import ( "fmt" "os/exec" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_openbsd_386.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/mem/mem_openbsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_openbsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/mem/mem_openbsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_openbsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_solaris.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_solaris.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/mem/mem_solaris.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_solaris.go index 08512733c..55b625b2e 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_solaris.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_solaris.go @@ -9,7 +9,7 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) // VirtualMemory for Solaris is a minimal implementation which only returns diff --git a/vendor/github.com/shirou/gopsutil/mem/mem_windows.go b/vendor/github.com/shirou/gopsutil/v3/mem/mem_windows.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/mem/mem_windows.go rename to vendor/github.com/shirou/gopsutil/v3/mem/mem_windows.go index a925faa25..8e73433cd 100644 --- a/vendor/github.com/shirou/gopsutil/mem/mem_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/mem/mem_windows.go @@ -6,7 +6,7 @@ import ( "context" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/windows" ) diff --git a/vendor/github.com/shirou/gopsutil/net/net.go b/vendor/github.com/shirou/gopsutil/v3/net/net.go similarity index 68% rename from vendor/github.com/shirou/gopsutil/net/net.go rename to vendor/github.com/shirou/gopsutil/v3/net/net.go index f1f99dc3a..5be45c830 100644 --- a/vendor/github.com/shirou/gopsutil/net/net.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net.go @@ -5,7 +5,7 @@ import ( "encoding/json" "net" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) var invoke common.Invoker = common.Invoke{} @@ -53,39 +53,45 @@ type InterfaceAddr struct { Addr string `json:"addr"` } +// InterfaceAddrList is a list of InterfaceAddr +type InterfaceAddrList []InterfaceAddr + type InterfaceStat struct { - Index int `json:"index"` - MTU int `json:"mtu"` // maximum transmission unit - Name string `json:"name"` // e.g., "en0", "lo0", "eth0.100" - HardwareAddr string `json:"hardwareaddr"` // IEEE MAC-48, EUI-48 and EUI-64 form - Flags []string `json:"flags"` // e.g., FlagUp, FlagLoopback, FlagMulticast - Addrs []InterfaceAddr `json:"addrs"` + Index int `json:"index"` + MTU int `json:"mtu"` // maximum transmission unit + Name string `json:"name"` // e.g., "en0", "lo0", "eth0.100" + HardwareAddr string `json:"hardwareAddr"` // IEEE MAC-48, EUI-48 and EUI-64 form + Flags []string `json:"flags"` // e.g., FlagUp, FlagLoopback, FlagMulticast + Addrs InterfaceAddrList `json:"addrs"` } +// InterfaceStatList is a list of InterfaceStat +type InterfaceStatList []InterfaceStat + type FilterStat struct { - ConnTrackCount int64 `json:"conntrackCount"` - ConnTrackMax int64 `json:"conntrackMax"` + ConnTrackCount int64 `json:"connTrackCount"` + ConnTrackMax int64 `json:"connTrackMax"` } // ConntrackStat has conntrack summary info type ConntrackStat struct { - Entries uint32 `json:"entries"` // Number of entries in the conntrack table - Searched uint32 `json:"searched"` // Number of conntrack table lookups performed - Found uint32 `json:"found"` // Number of searched entries which were successful - New uint32 `json:"new"` // Number of entries added which were not expected before - Invalid uint32 `json:"invalid"` // Number of packets seen which can not be tracked - Ignore uint32 `json:"ignore"` // Packets seen which are already connected to an entry - Delete uint32 `json:"delete"` // Number of entries which were removed - DeleteList uint32 `json:"delete_list"` // Number of entries which were put to dying list - Insert uint32 `json:"insert"` // Number of entries inserted into the list - InsertFailed uint32 `json:"insert_failed"` // # insertion attempted but failed (same entry exists) - Drop uint32 `json:"drop"` // Number of packets dropped due to conntrack failure. - EarlyDrop uint32 `json:"early_drop"` // Dropped entries to make room for new ones, if maxsize reached - IcmpError uint32 `json:"icmp_error"` // Subset of invalid. Packets that can't be tracked d/t error - ExpectNew uint32 `json:"expect_new"` // Entries added after an expectation was already present - ExpectCreate uint32 `json:"expect_create"` // Expectations added - ExpectDelete uint32 `json:"expect_delete"` // Expectations deleted - SearchRestart uint32 `json:"search_restart"` // Conntrack table lookups restarted due to hashtable resizes + Entries uint32 `json:"entries"` // Number of entries in the conntrack table + Searched uint32 `json:"searched"` // Number of conntrack table lookups performed + Found uint32 `json:"found"` // Number of searched entries which were successful + New uint32 `json:"new"` // Number of entries added which were not expected before + Invalid uint32 `json:"invalid"` // Number of packets seen which can not be tracked + Ignore uint32 `json:"ignore"` // Packets seen which are already connected to an entry + Delete uint32 `json:"delete"` // Number of entries which were removed + DeleteList uint32 `json:"deleteList"` // Number of entries which were put to dying list + Insert uint32 `json:"insert"` // Number of entries inserted into the list + InsertFailed uint32 `json:"insertFailed"` // # insertion attempted but failed (same entry exists) + Drop uint32 `json:"drop"` // Number of packets dropped due to conntrack failure. + EarlyDrop uint32 `json:"earlyDrop"` // Dropped entries to make room for new ones, if maxsize reached + IcmpError uint32 `json:"icmpError"` // Subset of invalid. Packets that can't be tracked d/t error + ExpectNew uint32 `json:"expectNew"` // Entries added after an expectation was already present + ExpectCreate uint32 `json:"expectCreate"` // Expectations added + ExpectDelete uint32 `json:"expectDelete"` // Expectations deleted + SearchRestart uint32 `json:"searchRestart"` // Conntrack table lookups restarted due to hashtable resizes } func NewConntrackStat(e uint32, s uint32, f uint32, n uint32, inv uint32, ign uint32, del uint32, dlst uint32, ins uint32, insfail uint32, drop uint32, edrop uint32, ie uint32, en uint32, ec uint32, ed uint32, sr uint32) *ConntrackStat { @@ -182,6 +188,11 @@ func (n InterfaceStat) String() string { return string(s) } +func (l InterfaceStatList) String() string { + s, _ := json.Marshal(l) + return string(s) +} + func (n InterfaceAddr) String() string { s, _ := json.Marshal(n) return string(s) @@ -192,16 +203,16 @@ func (n ConntrackStat) String() string { return string(s) } -func Interfaces() ([]InterfaceStat, error) { +func Interfaces() (InterfaceStatList, error) { return InterfacesWithContext(context.Background()) } -func InterfacesWithContext(ctx context.Context) ([]InterfaceStat, error) { +func InterfacesWithContext(ctx context.Context) (InterfaceStatList, error) { is, err := net.Interfaces() if err != nil { return nil, err } - ret := make([]InterfaceStat, 0, len(is)) + ret := make(InterfaceStatList, 0, len(is)) for _, ifi := range is { var flags []string @@ -230,7 +241,7 @@ func InterfacesWithContext(ctx context.Context) ([]InterfaceStat, error) { } addrs, err := ifi.Addrs() if err == nil { - r.Addrs = make([]InterfaceAddr, 0, len(addrs)) + r.Addrs = make(InterfaceAddrList, 0, len(addrs)) for _, addr := range addrs { r.Addrs = append(r.Addrs, InterfaceAddr{ Addr: addr.String(), diff --git a/vendor/github.com/shirou/gopsutil/net/net_aix.go b/vendor/github.com/shirou/gopsutil/v3/net/net_aix.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/net/net_aix.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_aix.go index 4ac849701..e954d56b2 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_aix.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_aix.go @@ -11,7 +11,7 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func parseNetstatI(output string) ([]IOCountersStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/net/net_darwin.go b/vendor/github.com/shirou/gopsutil/v3/net/net_darwin.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/net/net_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_darwin.go index 1daed8698..109f11e50 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_darwin.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_darwin.go @@ -6,7 +6,7 @@ import ( "context" "errors" "fmt" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "os/exec" "regexp" "strconv" diff --git a/vendor/github.com/shirou/gopsutil/net/net_fallback.go b/vendor/github.com/shirou/gopsutil/v3/net/net_fallback.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/net/net_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_fallback.go index 7d9a26591..6220e8340 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_fallback.go @@ -5,7 +5,7 @@ package net import ( "context" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func IOCounters(pernic bool) ([]IOCountersStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/net/net_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/net/net_freebsd.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/net/net_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_freebsd.go index 2284d982c..0883590c5 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_freebsd.go @@ -9,7 +9,7 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) func IOCounters(pernic bool) ([]IOCountersStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/net/net_linux.go b/vendor/github.com/shirou/gopsutil/v3/net/net_linux.go similarity index 94% rename from vendor/github.com/shirou/gopsutil/net/net_linux.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_linux.go index ed5d027b8..19836ca78 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_linux.go @@ -16,27 +16,27 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) const ( // Conntrack Column numbers - CT_ENTRIES = iota - CT_SEARCHED - CT_FOUND - CT_NEW - CT_INVALID - CT_IGNORE - CT_DELETE - CT_DELETE_LIST - CT_INSERT - CT_INSERT_FAILED - CT_DROP - CT_EARLY_DROP - CT_ICMP_ERROR - CT_EXPECT_NEW - CT_EXPECT_CREATE - CT_EXPECT_DELETE - CT_SEARCH_RESTART + ctENTRIES = iota + ctSEARCHED + ctFOUND + ctNEW + ctINVALID + ctIGNORE + ctDELETE + ctDELETE_LIST + ctINSERT + ctINSERT_FAILED + ctDROP + ctEARLY_DROP + ctICMP_ERROR + CT_EXPEctNEW + ctEXPECT_CREATE + CT_EXPEctDELETE + ctSEARCH_RESTART ) // NetIOCounters returnes network I/O statistics for every network @@ -278,23 +278,23 @@ func conntrackStatsFromFile(filename string, percpu bool) ([]ConntrackStat, erro fields := strings.Fields(line) if len(fields) == 17 && fields[0] != "entries" { statlist.Append(NewConntrackStat( - common.HexToUint32(fields[CT_ENTRIES]), - common.HexToUint32(fields[CT_SEARCHED]), - common.HexToUint32(fields[CT_FOUND]), - common.HexToUint32(fields[CT_NEW]), - common.HexToUint32(fields[CT_INVALID]), - common.HexToUint32(fields[CT_IGNORE]), - common.HexToUint32(fields[CT_DELETE]), - common.HexToUint32(fields[CT_DELETE_LIST]), - common.HexToUint32(fields[CT_INSERT]), - common.HexToUint32(fields[CT_INSERT_FAILED]), - common.HexToUint32(fields[CT_DROP]), - common.HexToUint32(fields[CT_EARLY_DROP]), - common.HexToUint32(fields[CT_ICMP_ERROR]), - common.HexToUint32(fields[CT_EXPECT_NEW]), - common.HexToUint32(fields[CT_EXPECT_CREATE]), - common.HexToUint32(fields[CT_EXPECT_DELETE]), - common.HexToUint32(fields[CT_SEARCH_RESTART]), + common.HexToUint32(fields[ctENTRIES]), + common.HexToUint32(fields[ctSEARCHED]), + common.HexToUint32(fields[ctFOUND]), + common.HexToUint32(fields[ctNEW]), + common.HexToUint32(fields[ctINVALID]), + common.HexToUint32(fields[ctIGNORE]), + common.HexToUint32(fields[ctDELETE]), + common.HexToUint32(fields[ctDELETE_LIST]), + common.HexToUint32(fields[ctINSERT]), + common.HexToUint32(fields[ctINSERT_FAILED]), + common.HexToUint32(fields[ctDROP]), + common.HexToUint32(fields[ctEARLY_DROP]), + common.HexToUint32(fields[ctICMP_ERROR]), + common.HexToUint32(fields[CT_EXPEctNEW]), + common.HexToUint32(fields[ctEXPECT_CREATE]), + common.HexToUint32(fields[CT_EXPEctDELETE]), + common.HexToUint32(fields[ctSEARCH_RESTART]), )) } } @@ -306,7 +306,7 @@ func conntrackStatsFromFile(filename string, percpu bool) ([]ConntrackStat, erro } // http://students.mimuw.edu.pl/lxr/source/include/net/tcp_states.h -var TCPStatuses = map[string]string{ +var tcpStatuses = map[string]string{ "01": "ESTABLISHED", "02": "SYN_SENT", "03": "SYN_RECV", @@ -786,7 +786,7 @@ func processInet(file string, kind netConnectionKindType, inodes map[string][]in continue } if kind.sockType == syscall.SOCK_STREAM { - status = TCPStatuses[status] + status = tcpStatuses[status] } else { status = "NONE" } diff --git a/vendor/github.com/shirou/gopsutil/net/net_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/net/net_openbsd.go similarity index 97% rename from vendor/github.com/shirou/gopsutil/net/net_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_openbsd.go index 3cf0a89d4..4e09a66d0 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_openbsd.go @@ -4,7 +4,6 @@ package net import ( "context" - "errors" "fmt" "os/exec" "regexp" @@ -12,7 +11,7 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) var portMatch = regexp.MustCompile(`(.*)\.(\d+)$`) @@ -153,7 +152,7 @@ func FilterCounters() ([]FilterStat, error) { } func FilterCountersWithContext(ctx context.Context) ([]FilterStat, error) { - return nil, errors.New("NetFilterCounters not implemented for openbsd") + return nil, common.ErrNotImplementedError } func ConntrackStats(percpu bool) ([]ConntrackStat, error) { @@ -173,7 +172,7 @@ func ProtoCounters(protocols []string) ([]ProtoCountersStat, error) { } func ProtoCountersWithContext(ctx context.Context, protocols []string) ([]ProtoCountersStat, error) { - return nil, errors.New("NetProtoCounters not implemented for openbsd") + return nil, common.ErrNotImplementedError } func parseNetstatLine(line string) (ConnectionStat, error) { diff --git a/vendor/github.com/shirou/gopsutil/net/net_unix.go b/vendor/github.com/shirou/gopsutil/v3/net/net_unix.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/net/net_unix.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_unix.go index d6e4303fd..fd42ca70a 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_unix.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_unix.go @@ -10,7 +10,7 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) // Return a list of network connections opened. diff --git a/vendor/github.com/shirou/gopsutil/net/net_windows.go b/vendor/github.com/shirou/gopsutil/v3/net/net_windows.go similarity index 99% rename from vendor/github.com/shirou/gopsutil/net/net_windows.go rename to vendor/github.com/shirou/gopsutil/v3/net/net_windows.go index 629fdfc7c..f43f50301 100644 --- a/vendor/github.com/shirou/gopsutil/net/net_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/net/net_windows.go @@ -10,7 +10,7 @@ import ( "syscall" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/windows" ) diff --git a/vendor/github.com/shirou/gopsutil/v3/process/process.go b/vendor/github.com/shirou/gopsutil/v3/process/process.go new file mode 100644 index 000000000..28deb2f22 --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/process/process.go @@ -0,0 +1,571 @@ +package process + +import ( + "context" + "encoding/json" + "errors" + "runtime" + "sort" + "sync" + "syscall" + "time" + + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/mem" + "github.com/shirou/gopsutil/v3/net" +) + +var ( + invoke common.Invoker = common.Invoke{} + ErrorNoChildren = errors.New("process does not have children") + ErrorProcessNotRunning = errors.New("process does not exist") +) + +type Process struct { + Pid int32 `json:"pid"` + name string + status string + parent int32 + parentMutex *sync.RWMutex // for windows ppid cache + numCtxSwitches *NumCtxSwitchesStat + uids []int32 + gids []int32 + groups []int32 + numThreads int32 + memInfo *MemoryInfoStat + sigInfo *SignalInfoStat + createTime int64 + + lastCPUTimes *cpu.TimesStat + lastCPUTime time.Time + + tgid int32 +} + +// Process status +const ( + Running = "running" + Sleep = "sleep" + Stop = "stop" + Idle = "idle" + Zombie = "zombie" + Wait = "wait" + Lock = "lock" +) + +type OpenFilesStat struct { + Path string `json:"path"` + Fd uint64 `json:"fd"` +} + +type MemoryInfoStat struct { + RSS uint64 `json:"rss"` // bytes + VMS uint64 `json:"vms"` // bytes + HWM uint64 `json:"hwm"` // bytes + Data uint64 `json:"data"` // bytes + Stack uint64 `json:"stack"` // bytes + Locked uint64 `json:"locked"` // bytes + Swap uint64 `json:"swap"` // bytes +} + +type SignalInfoStat struct { + PendingProcess uint64 `json:"pending_process"` + PendingThread uint64 `json:"pending_thread"` + Blocked uint64 `json:"blocked"` + Ignored uint64 `json:"ignored"` + Caught uint64 `json:"caught"` +} + +type RlimitStat struct { + Resource int32 `json:"resource"` + Soft uint64 `json:"soft"` + Hard uint64 `json:"hard"` + Used uint64 `json:"used"` +} + +type IOCountersStat struct { + ReadCount uint64 `json:"readCount"` + WriteCount uint64 `json:"writeCount"` + ReadBytes uint64 `json:"readBytes"` + WriteBytes uint64 `json:"writeBytes"` +} + +type NumCtxSwitchesStat struct { + Voluntary int64 `json:"voluntary"` + Involuntary int64 `json:"involuntary"` +} + +type PageFaultsStat struct { + MinorFaults uint64 `json:"minorFaults"` + MajorFaults uint64 `json:"majorFaults"` + ChildMinorFaults uint64 `json:"childMinorFaults"` + ChildMajorFaults uint64 `json:"childMajorFaults"` +} + +// Resource limit constants are from /usr/include/x86_64-linux-gnu/bits/resource.h +// from libc6-dev package in Ubuntu 16.10 +const ( + RLIMIT_CPU int32 = 0 + RLIMIT_FSIZE int32 = 1 + RLIMIT_DATA int32 = 2 + RLIMIT_STACK int32 = 3 + RLIMIT_CORE int32 = 4 + RLIMIT_RSS int32 = 5 + RLIMIT_NPROC int32 = 6 + RLIMIT_NOFILE int32 = 7 + RLIMIT_MEMLOCK int32 = 8 + RLIMIT_AS int32 = 9 + RLIMIT_LOCKS int32 = 10 + RLIMIT_SIGPENDING int32 = 11 + RLIMIT_MSGQUEUE int32 = 12 + RLIMIT_NICE int32 = 13 + RLIMIT_RTPRIO int32 = 14 + RLIMIT_RTTIME int32 = 15 +) + +func (p Process) String() string { + s, _ := json.Marshal(p) + return string(s) +} + +func (o OpenFilesStat) String() string { + s, _ := json.Marshal(o) + return string(s) +} + +func (m MemoryInfoStat) String() string { + s, _ := json.Marshal(m) + return string(s) +} + +func (r RlimitStat) String() string { + s, _ := json.Marshal(r) + return string(s) +} + +func (i IOCountersStat) String() string { + s, _ := json.Marshal(i) + return string(s) +} + +func (p NumCtxSwitchesStat) String() string { + s, _ := json.Marshal(p) + return string(s) +} + +// Pids returns a slice of process ID list which are running now. +func Pids() ([]int32, error) { + return PidsWithContext(context.Background()) +} + +func PidsWithContext(ctx context.Context) ([]int32, error) { + pids, err := pidsWithContext(ctx) + sort.Slice(pids, func(i, j int) bool { return pids[i] < pids[j] }) + return pids, err +} + +// Processes returns a slice of pointers to Process structs for all +// currently running processes. +func Processes() ([]*Process, error) { + return ProcessesWithContext(context.Background()) +} + +// NewProcess creates a new Process instance, it only stores the pid and +// checks that the process exists. Other method on Process can be used +// to get more information about the process. An error will be returned +// if the process does not exist. +func NewProcess(pid int32) (*Process, error) { + return NewProcessWithContext(context.Background(), pid) +} + +func NewProcessWithContext(ctx context.Context, pid int32) (*Process, error) { + p := &Process{ + Pid: pid, + parentMutex: new(sync.RWMutex), + } + + exists, err := PidExistsWithContext(ctx, pid) + if err != nil { + return p, err + } + if !exists { + return p, ErrorProcessNotRunning + } + p.CreateTimeWithContext(ctx) + return p, nil +} + +func PidExists(pid int32) (bool, error) { + return PidExistsWithContext(context.Background(), pid) +} + +// Background returns true if the process is in background, false otherwise. +func (p *Process) Background() (bool, error) { + return p.BackgroundWithContext(context.Background()) +} + +func (p *Process) BackgroundWithContext(ctx context.Context) (bool, error) { + fg, err := p.ForegroundWithContext(ctx) + if err != nil { + return false, err + } + return !fg, err +} + +// If interval is 0, return difference from last call(non-blocking). +// If interval > 0, wait interval sec and return diffrence between start and end. +func (p *Process) Percent(interval time.Duration) (float64, error) { + return p.PercentWithContext(context.Background(), interval) +} + +func (p *Process) PercentWithContext(ctx context.Context, interval time.Duration) (float64, error) { + cpuTimes, err := p.TimesWithContext(ctx) + if err != nil { + return 0, err + } + now := time.Now() + + if interval > 0 { + p.lastCPUTimes = cpuTimes + p.lastCPUTime = now + if err := common.Sleep(ctx, interval); err != nil { + return 0, err + } + cpuTimes, err = p.TimesWithContext(ctx) + now = time.Now() + if err != nil { + return 0, err + } + } else { + if p.lastCPUTimes == nil { + // invoked first time + p.lastCPUTimes = cpuTimes + p.lastCPUTime = now + return 0, nil + } + } + + numcpu := runtime.NumCPU() + delta := (now.Sub(p.lastCPUTime).Seconds()) * float64(numcpu) + ret := calculatePercent(p.lastCPUTimes, cpuTimes, delta, numcpu) + p.lastCPUTimes = cpuTimes + p.lastCPUTime = now + return ret, nil +} + +// IsRunning returns whether the process is still running or not. +func (p *Process) IsRunning() (bool, error) { + return p.IsRunningWithContext(context.Background()) +} + +func (p *Process) IsRunningWithContext(ctx context.Context) (bool, error) { + createTime, err := p.CreateTimeWithContext(ctx) + if err != nil { + return false, err + } + p2, err := NewProcessWithContext(ctx, p.Pid) + if err == ErrorProcessNotRunning { + return false, nil + } + createTime2, err := p2.CreateTimeWithContext(ctx) + if err != nil { + return false, err + } + return createTime == createTime2, nil +} + +// CreateTime returns created time of the process in milliseconds since the epoch, in UTC. +func (p *Process) CreateTime() (int64, error) { + return p.CreateTimeWithContext(context.Background()) +} + +func (p *Process) CreateTimeWithContext(ctx context.Context) (int64, error) { + if p.createTime != 0 { + return p.createTime, nil + } + createTime, err := p.createTimeWithContext(ctx) + p.createTime = createTime + return p.createTime, err +} + +func calculatePercent(t1, t2 *cpu.TimesStat, delta float64, numcpu int) float64 { + if delta == 0 { + return 0 + } + delta_proc := t2.Total() - t1.Total() + overall_percent := ((delta_proc / delta) * 100) * float64(numcpu) + return overall_percent +} + +// MemoryPercent returns how many percent of the total RAM this process uses +func (p *Process) MemoryPercent() (float32, error) { + return p.MemoryPercentWithContext(context.Background()) +} + +func (p *Process) MemoryPercentWithContext(ctx context.Context) (float32, error) { + machineMemory, err := mem.VirtualMemoryWithContext(ctx) + if err != nil { + return 0, err + } + total := machineMemory.Total + + processMemory, err := p.MemoryInfoWithContext(ctx) + if err != nil { + return 0, err + } + used := processMemory.RSS + + return (100 * float32(used) / float32(total)), nil +} + +// CPU_Percent returns how many percent of the CPU time this process uses +func (p *Process) CPUPercent() (float64, error) { + return p.CPUPercentWithContext(context.Background()) +} + +func (p *Process) CPUPercentWithContext(ctx context.Context) (float64, error) { + crt_time, err := p.createTimeWithContext(ctx) + if err != nil { + return 0, err + } + + cput, err := p.TimesWithContext(ctx) + if err != nil { + return 0, err + } + + created := time.Unix(0, crt_time*int64(time.Millisecond)) + totalTime := time.Since(created).Seconds() + if totalTime <= 0 { + return 0, nil + } + + return 100 * cput.Total() / totalTime, nil +} + +// Groups returns all group IDs(include supplementary groups) of the process as a slice of the int +func (p *Process) Groups() ([]int32, error) { + return p.GroupsWithContext(context.Background()) +} + +// Ppid returns Parent Process ID of the process. +func (p *Process) Ppid() (int32, error) { + return p.PpidWithContext(context.Background()) +} + +// Name returns name of the process. +func (p *Process) Name() (string, error) { + return p.NameWithContext(context.Background()) +} + +// Exe returns executable path of the process. +func (p *Process) Exe() (string, error) { + return p.ExeWithContext(context.Background()) +} + +// Cmdline returns the command line arguments of the process as a string with +// each argument separated by 0x20 ascii character. +func (p *Process) Cmdline() (string, error) { + return p.CmdlineWithContext(context.Background()) +} + +// CmdlineSlice returns the command line arguments of the process as a slice with each +// element being an argument. +func (p *Process) CmdlineSlice() ([]string, error) { + return p.CmdlineSliceWithContext(context.Background()) +} + +// Cwd returns current working directory of the process. +func (p *Process) Cwd() (string, error) { + return p.CwdWithContext(context.Background()) +} + +// Parent returns parent Process of the process. +func (p *Process) Parent() (*Process, error) { + return p.ParentWithContext(context.Background()) +} + +// Status returns the process status. +// Return value could be one of these. +// R: Running S: Sleep T: Stop I: Idle +// Z: Zombie W: Wait L: Lock +// The character is same within all supported platforms. +func (p *Process) Status() ([]string, error) { + return p.StatusWithContext(context.Background()) +} + +// Foreground returns true if the process is in foreground, false otherwise. +func (p *Process) Foreground() (bool, error) { + return p.ForegroundWithContext(context.Background()) +} + +// Uids returns user ids of the process as a slice of the int +func (p *Process) Uids() ([]int32, error) { + return p.UidsWithContext(context.Background()) +} + +// Gids returns group ids of the process as a slice of the int +func (p *Process) Gids() ([]int32, error) { + return p.GidsWithContext(context.Background()) +} + +// Terminal returns a terminal which is associated with the process. +func (p *Process) Terminal() (string, error) { + return p.TerminalWithContext(context.Background()) +} + +// Nice returns a nice value (priority). +func (p *Process) Nice() (int32, error) { + return p.NiceWithContext(context.Background()) +} + +// IOnice returns process I/O nice value (priority). +func (p *Process) IOnice() (int32, error) { + return p.IOniceWithContext(context.Background()) +} + +// Rlimit returns Resource Limits. +func (p *Process) Rlimit() ([]RlimitStat, error) { + return p.RlimitWithContext(context.Background()) +} + +// RlimitUsage returns Resource Limits. +// If gatherUsed is true, the currently used value will be gathered and added +// to the resulting RlimitStat. +func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { + return p.RlimitUsageWithContext(context.Background(), gatherUsed) +} + +// IOCounters returns IO Counters. +func (p *Process) IOCounters() (*IOCountersStat, error) { + return p.IOCountersWithContext(context.Background()) +} + +// NumCtxSwitches returns the number of the context switches of the process. +func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { + return p.NumCtxSwitchesWithContext(context.Background()) +} + +// NumFDs returns the number of File Descriptors used by the process. +func (p *Process) NumFDs() (int32, error) { + return p.NumFDsWithContext(context.Background()) +} + +// NumThreads returns the number of threads used by the process. +func (p *Process) NumThreads() (int32, error) { + return p.NumThreadsWithContext(context.Background()) +} + +func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { + return p.ThreadsWithContext(context.Background()) +} + +// Times returns CPU times of the process. +func (p *Process) Times() (*cpu.TimesStat, error) { + return p.TimesWithContext(context.Background()) +} + +// CPUAffinity returns CPU affinity of the process. +func (p *Process) CPUAffinity() ([]int32, error) { + return p.CPUAffinityWithContext(context.Background()) +} + +// MemoryInfo returns generic process memory information, +// such as RSS, VMS and Swap +func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { + return p.MemoryInfoWithContext(context.Background()) +} + +// MemoryInfoEx returns platform-specific process memory information. +func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { + return p.MemoryInfoExWithContext(context.Background()) +} + +// PageFaultsInfo returns the process's page fault counters. +func (p *Process) PageFaults() (*PageFaultsStat, error) { + return p.PageFaultsWithContext(context.Background()) +} + +// Children returns a slice of Process of the process. +func (p *Process) Children() ([]*Process, error) { + return p.ChildrenWithContext(context.Background()) +} + +// OpenFiles returns a slice of OpenFilesStat opend by the process. +// OpenFilesStat includes a file path and file descriptor. +func (p *Process) OpenFiles() ([]OpenFilesStat, error) { + return p.OpenFilesWithContext(context.Background()) +} + +// Connections returns a slice of net.ConnectionStat used by the process. +// This returns all kind of the connection. This means TCP, UDP or UNIX. +func (p *Process) Connections() ([]net.ConnectionStat, error) { + return p.ConnectionsWithContext(context.Background()) +} + +// Connections returns a slice of net.ConnectionStat used by the process at most `max`. +func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { + return p.ConnectionsMaxWithContext(context.Background(), max) +} + +// MemoryMaps get memory maps from /proc/(pid)/smaps +func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { + return p.MemoryMapsWithContext(context.Background(), grouped) +} + +// Tgid returns thread group id of the process. +func (p *Process) Tgid() (int32, error) { + return p.TgidWithContext(context.Background()) +} + +// SendSignal sends a unix.Signal to the process. +func (p *Process) SendSignal(sig syscall.Signal) error { + return p.SendSignalWithContext(context.Background(), sig) +} + +// Suspend sends SIGSTOP to the process. +func (p *Process) Suspend() error { + return p.SuspendWithContext(context.Background()) +} + +// Resume sends SIGCONT to the process. +func (p *Process) Resume() error { + return p.ResumeWithContext(context.Background()) +} + +// Terminate sends SIGTERM to the process. +func (p *Process) Terminate() error { + return p.TerminateWithContext(context.Background()) +} + +// Kill sends SIGKILL to the process. +func (p *Process) Kill() error { + return p.KillWithContext(context.Background()) +} + +// Username returns a username of the process. +func (p *Process) Username() (string, error) { + return p.UsernameWithContext(context.Background()) +} + +func convertStatusChar(letter string) string { + switch letter { + case "R": + return Running + case "S": + return Sleep + case "T": + return Stop + case "I": + return Idle + case "Z": + return Zombie + case "W": + return Wait + case "L": + return Lock + default: + return "" + } +} diff --git a/vendor/github.com/shirou/gopsutil/v3/process/process_bsd.go b/vendor/github.com/shirou/gopsutil/v3/process/process_bsd.go new file mode 100644 index 000000000..da90e2070 --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_bsd.go @@ -0,0 +1,76 @@ +// +build darwin freebsd openbsd + +package process + +import ( + "bytes" + "context" + "encoding/binary" + + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" +) + +type MemoryInfoExStat struct{} + +type MemoryMapsStat struct{} + +func (p *Process) TgidWithContext(ctx context.Context) (int32, error) { + return 0, common.ErrNotImplementedError +} + +func (p *Process) CwdWithContext(ctx context.Context) (string, error) { + return "", common.ErrNotImplementedError +} + +func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { + return 0, common.ErrNotImplementedError +} + +func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { + return 0, common.ErrNotImplementedError +} + +func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { + return nil, common.ErrNotImplementedError +} + +func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { + return nil, common.ErrNotImplementedError +} + +func parseKinfoProc(buf []byte) (KinfoProc, error) { + var k KinfoProc + br := bytes.NewReader(buf) + err := common.Read(br, binary.LittleEndian, &k) + return k, err +} + diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin.go similarity index 57% rename from vendor/github.com/shirou/gopsutil/process/process_darwin.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin.go index 1a0ccfb12..644d5bc63 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_darwin.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin.go @@ -3,20 +3,17 @@ package process import ( - "bytes" "context" - "encoding/binary" "fmt" "os/exec" "path/filepath" "strconv" "strings" "time" - "unsafe" - "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/net" + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/net" "golang.org/x/sys/unix" ) @@ -31,20 +28,13 @@ const ( ) const ( - ClockTicks = 100 // C.sysconf(C._SC_CLK_TCK) + clockTicks = 100 // C.sysconf(C._SC_CLK_TCK) ) type _Ctype_struct___0 struct { Pad uint64 } -// MemoryInfoExStat is different between OSes -type MemoryInfoExStat struct { -} - -type MemoryMapsStat struct { -} - func pidsWithContext(ctx context.Context) ([]int32, error) { var ret []int32 @@ -64,10 +54,6 @@ func pidsWithContext(ctx context.Context) ([]int32, error) { return ret, nil } -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) -} - func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { r, err := callPsWithContext(ctx, "ppid", p.Pid, false) if err != nil { @@ -81,9 +67,6 @@ func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { return int32(v), err } -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} func (p *Process) NameWithContext(ctx context.Context) (string, error) { k, err := p.getKProc() @@ -109,18 +92,6 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) { return name, nil } -func (p *Process) Tgid() (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} - -// Cmdline returns the command line arguments of the process as a string with -// each argument separated by 0x20 ascii character. -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { r, err := callPsWithContext(ctx, "command", p.Pid, false) @@ -130,15 +101,11 @@ func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { return strings.Join(r[0], " "), err } -// CmdlineSlice returns the command line arguments of the process as a slice with each +// CmdlineSliceWithContext returns the command line arguments of the process as a slice with each // element being an argument. Because of current deficiencies in the way that the command // line arguments are found, single arguments that have spaces in the will actually be // reported as two separate items. In order to do something better CGO would be needed // to use the native darwin functions. -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} - func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { r, err := callPsWithContext(ctx, "command", p.Pid, false) if err != nil { @@ -177,16 +144,6 @@ func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { start := time.Now().Add(-elapsed) return start.Unix() * 1000, nil } -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} - -func (p *Process) CwdWithContext(ctx context.Context) (string, error) { - return "", common.ErrNotImplementedError -} -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { rr, err := common.CallLsofWithContext(ctx, invoke, p.Pid, "-FR") @@ -202,25 +159,18 @@ func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { if err != nil { return nil, err } - return NewProcess(int32(v)) + return NewProcessWithContext(ctx, int32(v)) } return nil, fmt.Errorf("could not find parent line") } -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) -} -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { r, err := callPsWithContext(ctx, "state", p.Pid, false) if err != nil { - return "", err + return []string{""}, err } - - return r[0][0][0:1], err -} - -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) + status := convertStatusChar(r[0][0][0:1]) + return []string{status}, err } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { @@ -237,10 +187,6 @@ func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { return strings.IndexByte(string(out), '+') != -1, nil } -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} - func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() if err != nil { @@ -252,9 +198,6 @@ func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { return []int32{userEffectiveUID}, nil } -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) -} func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() @@ -281,9 +224,6 @@ func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { return groups, nil } -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) -} func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError @@ -302,9 +242,6 @@ func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return termmap[ttyNr], nil */ } -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() @@ -313,53 +250,10 @@ func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { } return int32(k.Proc.P_nice), nil } -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} - -func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} - -func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) -} - -func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) -} func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} - -func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} - -func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { r, err := callPsWithContext(ctx, "utime,stime", p.Pid, true) @@ -368,14 +262,6 @@ func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { } return int32(len(r)), nil } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} - -func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { - ret := make(map[int32]*cpu.TimesStat) - return ret, common.ErrNotImplementedError -} func convertCPUTimes(s string) (ret float64, err error) { var t int @@ -388,20 +274,20 @@ func convertCPUTimes(s string) (ret float64, err error) { if err != nil { return ret, err } - t += hour * 60 * 60 * ClockTicks + t += hour * 60 * 60 * clockTicks mins, err := strconv.Atoi(_t[1]) if err != nil { return ret, err } - t += mins * 60 * ClockTicks + t += mins * 60 * clockTicks _tmp = _t[2] case 2: mins, err := strconv.Atoi(_t[0]) if err != nil { return ret, err } - t += mins * 60 * ClockTicks + t += mins * 60 * clockTicks _tmp = _t[1] case 1, 0: _tmp = s @@ -417,13 +303,10 @@ func convertCPUTimes(s string) (ret float64, err error) { return ret, err } h, err := strconv.Atoi(_t[0]) - t += h * ClockTicks + t += h * clockTicks h, err = strconv.Atoi(_t[1]) t += h - return float64(t) / ClockTicks, nil -} -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) + return float64(t) / clockTicks, nil } func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { @@ -449,16 +332,6 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) } return ret, nil } -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} - -func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { r, err := callPsWithContext(ctx, "rss,vsize,pagein", p.Pid, false) @@ -486,25 +359,6 @@ func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, e return ret, nil } -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} - -func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} - -func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { pids, err := common.CallPgrepWithContext(ctx, invoke, p.Pid) @@ -513,7 +367,7 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { } ret := make([]*Process, 0, len(pids)) for _, pid := range pids { - np, err := NewProcess(pid) + np, err := NewProcessWithContext(ctx, pid) if err != nil { return nil, err } @@ -522,50 +376,12 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return ret, nil } -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} - -func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) -} - func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { - return net.ConnectionsPid("all", p.Pid) -} - -// Connections returns a slice of net.ConnectionStat used by the process at most `max` -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) + return net.ConnectionsPidWithContext(ctx, "all", p.Pid) } func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return net.ConnectionsPidMax("all", p.Pid, max) -} - -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) -} - -func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { - var ret []MemoryMapsStat - return &ret, common.ErrNotImplementedError -} - -func Processes() ([]*Process, error) { - return ProcessesWithContext(context.Background()) + return net.ConnectionsPidMaxWithContext(ctx, "all", p.Pid, max) } func ProcessesWithContext(ctx context.Context) ([]*Process, error) { @@ -577,7 +393,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { } for _, pid := range pids { - p, err := NewProcess(pid) + p, err := NewProcessWithContext(ctx, pid) if err != nil { continue } @@ -587,39 +403,12 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { return out, nil } -func parseKinfoProc(buf []byte) (KinfoProc, error) { - var k KinfoProc - br := bytes.NewReader(buf) - - err := common.Read(br, binary.LittleEndian, &k) - if err != nil { - return k, err - } - - return k, nil -} - // Returns a proc as defined here: // http://unix.superglobalmegacorp.com/Net2/newsrc/sys/kinfo_proc.h.html func (p *Process) getKProc() (*KinfoProc, error) { - return p.getKProcWithContext(context.Background()) -} - -func (p *Process) getKProcWithContext(ctx context.Context) (*KinfoProc, error) { - mib := []int32{CTLKern, KernProc, KernProcPID, p.Pid} - procK := KinfoProc{} - length := uint64(unsafe.Sizeof(procK)) - buf := make([]byte, length) - _, _, syserr := unix.Syscall6( - 202, // unix.SYS___SYSCTL https://github.com/golang/sys/blob/76b94024e4b621e672466e8db3d7f084e7ddcad2/unix/zsysnum_darwin_amd64.go#L146 - uintptr(unsafe.Pointer(&mib[0])), - uintptr(len(mib)), - uintptr(unsafe.Pointer(&buf[0])), - uintptr(unsafe.Pointer(&length)), - 0, - 0) - if syserr != 0 { - return nil, syserr + buf, err := unix.SysctlRaw("kern.proc.pid", int(p.Pid)) + if err != nil { + return nil, err } k, err := parseKinfoProc(buf) if err != nil { diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin_386.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_darwin_386.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin_386.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin_amd64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_darwin_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_amd64.go.cgo b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_amd64.go.cgo new file mode 100644 index 000000000..467de0785 --- /dev/null +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_amd64.go.cgo @@ -0,0 +1,236 @@ +// +build darwin +// +build amd64 +// Created by cgo -godefs - DO NOT EDIT +// cgo -godefs process/types_darwin.go + +package process + +const ( + sizeofPtr = 0x8 + sizeofShort = 0x2 + sizeofInt = 0x4 + sizeofLong = 0x8 + sizeofLongLong = 0x8 +) + +type ( + _C_short int16 + _C_int int32 + _C_long int64 + _C_long_long int64 +) + +type Timespec struct { + Sec int64 + Nsec int64 +} + +type Timeval struct { + Sec int64 + Usec int32 + Pad_cgo_0 [4]byte +} + +type Rusage struct { + Utime Timeval + Stime Timeval + Maxrss int64 + Ixrss int64 + Idrss int64 + Isrss int64 + Minflt int64 + Majflt int64 + Nswap int64 + Inblock int64 + Oublock int64 + Msgsnd int64 + Msgrcv int64 + Nsignals int64 + Nvcsw int64 + Nivcsw int64 +} + +type Rlimit struct { + Cur uint64 + Max uint64 +} + +type UGid_t uint32 + +type KinfoProc struct { + Proc ExternProc + Eproc Eproc +} + +type Eproc struct { + Paddr *Proc + Sess *Session + Pcred Upcred + Ucred Uucred + Pad_cgo_0 [4]byte + Vm Vmspace + Ppid int32 + Pgid int32 + Jobc int16 + Pad_cgo_1 [2]byte + Tdev int32 + Tpgid int32 + Pad_cgo_2 [4]byte + Tsess *Session + Wmesg [8]int8 + Xsize int32 + Xrssize int16 + Xccount int16 + Xswrss int16 + Pad_cgo_3 [2]byte + Flag int32 + Login [12]int8 + Spare [4]int32 + Pad_cgo_4 [4]byte +} + +type Proc struct{} + +type Session struct{} + +type ucred struct { + Link UcredQueue + Ref uint64 + Posix Posix_cred + Label *Label + Audit Au_session +} + +type Uucred struct { + Ref int32 + Uid uint32 + Ngroups int16 + Pad_cgo_0 [2]byte + Groups [16]uint32 +} + +type Upcred struct { + Pc_lock [72]int8 + Pc_ucred *ucred + P_ruid uint32 + P_svuid uint32 + P_rgid uint32 + P_svgid uint32 + P_refcnt int32 + Pad_cgo_0 [4]byte +} + +type Vmspace struct { + Dummy int32 + Pad_cgo_0 [4]byte + Dummy2 *int8 + Dummy3 [5]int32 + Pad_cgo_1 [4]byte + Dummy4 [3]*int8 +} + +type Sigacts struct{} + +type ExternProc struct { + P_un [16]byte + P_vmspace *Vmspace + P_sigacts *Sigacts + P_flag int32 + P_stat int8 + Pad_cgo_0 [3]byte + P_pid int32 + P_oppid int32 + P_dupfd int32 + Pad_cgo_1 [4]byte + User_stack *int8 + Exit_thread *byte + P_debugger int32 + Sigwait int32 + P_estcpu uint32 + P_cpticks int32 + P_pctcpu uint32 + Pad_cgo_2 [4]byte + P_wchan *byte + P_wmesg *int8 + P_swtime uint32 + P_slptime uint32 + P_realtimer Itimerval + P_rtime Timeval + P_uticks uint64 + P_sticks uint64 + P_iticks uint64 + P_traceflag int32 + Pad_cgo_3 [4]byte + P_tracep *Vnode + P_siglist int32 + Pad_cgo_4 [4]byte + P_textvp *Vnode + P_holdcnt int32 + P_sigmask uint32 + P_sigignore uint32 + P_sigcatch uint32 + P_priority uint8 + P_usrpri uint8 + P_nice int8 + P_comm [17]int8 + Pad_cgo_5 [4]byte + P_pgrp *Pgrp + P_addr *UserStruct + P_xstat uint16 + P_acflag uint16 + Pad_cgo_6 [4]byte + P_ru *Rusage +} + +type Itimerval struct { + Interval Timeval + Value Timeval +} + +type Vnode struct{} + +type Pgrp struct{} + +type UserStruct struct{} + +type Au_session struct { + Aia_p *AuditinfoAddr + Mask AuMask +} + +type Posix_cred struct { + Uid uint32 + Ruid uint32 + Svuid uint32 + Ngroups int16 + Pad_cgo_0 [2]byte + Groups [16]uint32 + Rgid uint32 + Svgid uint32 + Gmuid uint32 + Flags int32 +} + +type Label struct{} + +type AuditinfoAddr struct { + Auid uint32 + Mask AuMask + Termid AuTidAddr + Asid int32 + Flags uint64 +} +type AuMask struct { + Success uint32 + Failure uint32 +} +type AuTidAddr struct { + Port int32 + Type uint32 + Addr [4]uint32 +} + +type UcredQueue struct { + Next *ucred + Prev **ucred +} diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin_arm64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_darwin_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin_cgo.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_cgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_darwin_cgo.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin_cgo.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_darwin_nocgo.go b/vendor/github.com/shirou/gopsutil/v3/process/process_darwin_nocgo.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_darwin_nocgo.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_darwin_nocgo.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_fallback.go b/vendor/github.com/shirou/gopsutil/v3/process/process_fallback.go similarity index 51% rename from vendor/github.com/shirou/gopsutil/process/process_fallback.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_fallback.go index 43803e785..317148e7c 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_fallback.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_fallback.go @@ -6,9 +6,9 @@ import ( "context" "syscall" - "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/net" + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/net" ) type MemoryMapsStat struct { @@ -29,10 +29,6 @@ type MemoryInfoExStat struct { } func pidsWithContext(ctx context.Context) ([]int32, error) { - return []int32{}, common.ErrNotImplementedError -} - -func Processes() ([]*Process, error) { return nil, common.ErrNotImplementedError } @@ -41,295 +37,164 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { } func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) { - pids, err := PidsWithContext(ctx) - if err != nil { - return false, err - } - - for _, i := range pids { - if i == pid { - return true, err - } - } - - return false, err -} - -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) + return false, common.ErrNotImplementedError } func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} func (p *Process) NameWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Tgid() (int32, error) { + +func (p *Process) TgidWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} func (p *Process) ExeWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { - return []string{}, common.ErrNotImplementedError + return nil, common.ErrNotImplementedError } func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} func (p *Process) CwdWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { return nil, common.ErrNotImplementedError } -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) -} -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { - return "", common.ErrNotImplementedError -} -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { + return []string{""}, common.ErrNotImplementedError } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { return false, common.ErrNotImplementedError } -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { - return []int32{}, common.ErrNotImplementedError -} -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { - return []int32{}, common.ErrNotImplementedError + return nil, common.ErrNotImplementedError } func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { - return []int32{}, common.ErrNotImplementedError -} -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) -} func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) -} func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) -} func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} + func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return nil, common.ErrNotImplementedError } -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { - return []OpenFilesStat{}, common.ErrNotImplementedError -} -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { - return []net.ConnectionStat{}, common.ErrNotImplementedError -} - -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) + return nil, common.ErrNotImplementedError } func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return []net.ConnectionStat{}, common.ErrNotImplementedError -} - -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { - return []net.IOCountersStat{}, common.ErrNotImplementedError -} - -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) + return nil, common.ErrNotImplementedError } func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) SendSignal(sig syscall.Signal) error { - return p.SendSignalWithContext(context.Background(), sig) -} func (p *Process) SendSignalWithContext(ctx context.Context, sig syscall.Signal) error { return common.ErrNotImplementedError } -func (p *Process) Suspend() error { - return p.SuspendWithContext(context.Background()) -} func (p *Process) SuspendWithContext(ctx context.Context) error { return common.ErrNotImplementedError } -func (p *Process) Resume() error { - return p.ResumeWithContext(context.Background()) -} func (p *Process) ResumeWithContext(ctx context.Context) error { return common.ErrNotImplementedError } -func (p *Process) Terminate() error { - return p.TerminateWithContext(context.Background()) -} func (p *Process) TerminateWithContext(ctx context.Context) error { return common.ErrNotImplementedError } -func (p *Process) Kill() error { - return p.KillWithContext(context.Background()) -} func (p *Process) KillWithContext(ctx context.Context) error { return common.ErrNotImplementedError } -func (p *Process) Username() (string, error) { - return p.UsernameWithContext(context.Background()) -} func (p *Process) UsernameWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError diff --git a/vendor/github.com/shirou/gopsutil/process/process_freebsd.go b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd.go similarity index 51% rename from vendor/github.com/shirou/gopsutil/process/process_freebsd.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_freebsd.go index 84dbead96..431a673df 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd.go @@ -5,28 +5,20 @@ package process import ( "bytes" "context" - "encoding/binary" "os/exec" "path/filepath" "strconv" "strings" - cpu "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - net "github.com/shirou/gopsutil/net" + cpu "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + net "github.com/shirou/gopsutil/v3/net" "golang.org/x/sys/unix" ) -// MemoryInfoExStat is different between OSes -type MemoryInfoExStat struct { -} - -type MemoryMapsStat struct { -} - func pidsWithContext(ctx context.Context) ([]int32, error) { var ret []int32 - procs, err := Processes() + procs, err := ProcessesWithContext(ctx) if err != nil { return ret, nil } @@ -38,10 +30,6 @@ func pidsWithContext(ctx context.Context) ([]int32, error) { return ret, nil } -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) -} - func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() if err != nil { @@ -50,9 +38,6 @@ func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { return k.Ppid, nil } -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} func (p *Process) NameWithContext(ctx context.Context) (string, error) { k, err := p.getKProc() @@ -78,21 +63,11 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) { return name, nil } -func (p *Process) Tgid() (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} func (p *Process) ExeWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} - func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { mib := []int32{CTLKern, KernProc, KernProcArgs, p.Pid} buf, _, err := common.CallSyscall(mib) @@ -109,10 +84,6 @@ func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { return strings.Join(ret, " "), nil } -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} - func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { mib := []int32{CTLKern, KernProc, KernProcArgs, p.Pid} buf, _, err := common.CallSyscall(mib) @@ -137,52 +108,35 @@ func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} - -func (p *Process) CwdWithContext(ctx context.Context) (string, error) { - return "", common.ErrNotImplementedError -} -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { - return p, common.ErrNotImplementedError -} -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) + return nil, common.ErrNotImplementedError } -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { k, err := p.getKProc() if err != nil { - return "", err + return []string{""}, err } var s string switch k.Stat { case SIDL: - s = "I" + s = Idle case SRUN: - s = "R" + s = Running case SSLEEP: - s = "S" + s = Sleep case SSTOP: - s = "T" + s = Stop case SZOMB: - s = "Z" + s = Zombie case SWAIT: - s = "W" + s = Wait case SLOCK: - s = "L" + s = Lock } - return s, nil -} - -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) + return []string{s}, nil } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { @@ -199,10 +153,6 @@ func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { return strings.IndexByte(string(out), '+') != -1, nil } -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} - func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() if err != nil { @@ -215,9 +165,6 @@ func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { return uids, nil } -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) -} func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() @@ -244,9 +191,6 @@ func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { return groups, nil } -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) -} func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { k, err := p.getKProc() @@ -263,9 +207,6 @@ func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return termmap[ttyNr], nil } -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() @@ -274,32 +215,6 @@ func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { } return int32(k.Nice), nil } -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} - -func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} - -func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) -} - -func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) -} func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { k, err := p.getKProc() @@ -311,23 +226,6 @@ func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, e WriteCount: uint64(k.Rusage.Oublock), }, nil } -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} - -func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} - -func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() @@ -337,17 +235,6 @@ func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { return k.Numthreads, nil } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} - -func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { - ret := make(map[int32]*cpu.TimesStat) - return ret, common.ErrNotImplementedError -} -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) -} func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { k, err := p.getKProc() @@ -360,16 +247,6 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) System: float64(k.Rusage.Stime.Sec) + float64(k.Rusage.Stime.Usec)/1000000, }, nil } -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} - -func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { k, err := p.getKProc() @@ -387,25 +264,6 @@ func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, e VMS: uint64(k.Size), }, nil } -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} - -func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} - -func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { pids, err := common.CallPgrepWithContext(ctx, invoke, p.Pid) @@ -414,7 +272,7 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { } ret := make([]*Process, 0, len(pids)) for _, pid := range pids { - np, err := NewProcess(pid) + np, err := NewProcessWithContext(ctx, pid) if err != nil { return nil, err } @@ -423,52 +281,14 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return ret, nil } -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} - -func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) -} - func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { return nil, common.ErrNotImplementedError } -// Connections returns a slice of net.ConnectionStat used by the process at most `max` -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) -} - func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return []net.ConnectionStat{}, common.ErrNotImplementedError -} - -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) -} - -func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { - var ret []MemoryMapsStat - return &ret, common.ErrNotImplementedError -} - -func Processes() ([]*Process, error) { - return ProcessesWithContext(context.Background()) -} - func ProcessesWithContext(ctx context.Context) ([]*Process, error) { results := []*Process{} @@ -488,7 +308,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { if err != nil { continue } - p, err := NewProcess(int32(k.Pid)) + p, err := NewProcessWithContext(ctx, int32(k.Pid)) if err != nil { continue } @@ -499,18 +319,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { return results, nil } -func parseKinfoProc(buf []byte) (KinfoProc, error) { - var k KinfoProc - br := bytes.NewReader(buf) - err := common.Read(br, binary.LittleEndian, &k) - return k, err -} - func (p *Process) getKProc() (*KinfoProc, error) { - return p.getKProcWithContext(context.Background()) -} - -func (p *Process) getKProcWithContext(ctx context.Context) (*KinfoProc, error) { mib := []int32{CTLKern, KernProc, KernProcPID, p.Pid} buf, length, err := common.CallSyscall(mib) diff --git a/vendor/github.com/shirou/gopsutil/process/process_freebsd_386.go b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_freebsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_freebsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_freebsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_freebsd_arm.go b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_arm.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_freebsd_arm.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_arm.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_freebsd_arm64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_arm64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_freebsd_arm64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_freebsd_arm64.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_linux.go b/vendor/github.com/shirou/gopsutil/v3/process/process_linux.go similarity index 76% rename from vendor/github.com/shirou/gopsutil/process/process_linux.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_linux.go index 6a509099c..7c1d4ce66 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_linux.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_linux.go @@ -15,17 +15,17 @@ import ( "strconv" "strings" - "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - "github.com/shirou/gopsutil/net" + "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + "github.com/shirou/gopsutil/v3/net" "golang.org/x/sys/unix" ) -var PageSize = uint64(os.Getpagesize()) +var pageSize = uint64(os.Getpagesize()) const ( - PrioProcess = 0 // linux/resource.h - ClockTicks = 100 // C.sysconf(C._SC_CLK_TCK) + prioProcess = 0 // linux/resource.h + clockTicks = 100 // C.sysconf(C._SC_CLK_TCK) ) // MemoryInfoExStat is different between OSes @@ -64,11 +64,6 @@ func (m MemoryMapsStat) String() string { return string(s) } -// Ppid returns Parent Process ID of the process. -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) -} - func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { _, ppid, _, _, _, _, _, err := p.fillFromStatWithContext(ctx) if err != nil { @@ -77,11 +72,6 @@ func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { return ppid, nil } -// Name returns name of the process. -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} - func (p *Process) NameWithContext(ctx context.Context) (string, error) { if p.name == "" { if err := p.fillFromStatusWithContext(ctx); err != nil { @@ -91,41 +81,23 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) { return p.name, nil } -// Tgid returns tgid, a Linux-synonym for user-space Pid -func (p *Process) Tgid() (int32, error) { +func (p *Process) TgidWithContext(ctx context.Context) (int32, error) { if p.tgid == 0 { - if err := p.fillFromStatusWithContext(context.Background()); err != nil { + if err := p.fillFromStatusWithContext(ctx); err != nil { return 0, err } } return p.tgid, nil } -// Exe returns executable path of the process. -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} - func (p *Process) ExeWithContext(ctx context.Context) (string, error) { return p.fillFromExeWithContext(ctx) } -// Cmdline returns the command line arguments of the process as a string with -// each argument separated by 0x20 ascii character. -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} - func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { return p.fillFromCmdlineWithContext(ctx) } -// CmdlineSlice returns the command line arguments of the process as a slice with each -// element being an argument. -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} - func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { return p.fillSliceFromCmdlineWithContext(ctx) } @@ -138,20 +110,10 @@ func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { return createTime, nil } -// Cwd returns current working directory of the process. -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} - func (p *Process) CwdWithContext(ctx context.Context) (string, error) { return p.fillFromCwdWithContext(ctx) } -// Parent returns parent Process of the process. -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} - func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { @@ -160,29 +122,15 @@ func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { if p.parent == 0 { return nil, fmt.Errorf("wrong number of parents") } - return NewProcess(p.parent) + return NewProcessWithContext(ctx, p.parent) } -// Status returns the process status. -// Return value could be one of these. -// R: Running S: Sleep T: Stop I: Idle -// Z: Zombie W: Wait L: Lock -// The character is same within all supported platforms. -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) -} - -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { - return "", err + return []string{""}, err } - return p.status, nil -} - -// Foreground returns true if the process is in foreground, false otherwise. -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) + return []string{p.status}, nil } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { @@ -202,11 +150,6 @@ func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { return pgid == tpgid, nil } -// Uids returns user ids of the process as a slice of the int -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} - func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { @@ -215,11 +158,6 @@ func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { return p.uids, nil } -// Gids returns group ids of the process as a slice of the int -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) -} - func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { @@ -236,11 +174,6 @@ func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { return p.groups, nil } -// Terminal returns a terminal which is associated with the process. -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) -} - func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { t, _, _, _, _, _, _, err := p.fillFromStatWithContext(ctx) if err != nil { @@ -254,12 +187,6 @@ func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return terminal, nil } -// Nice returns a nice value (priority). -// Notice: gopsutil can not set nice value. -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} - func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { _, _, _, _, _, nice, _, err := p.fillFromStatWithContext(ctx) if err != nil { @@ -268,29 +195,12 @@ func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { return nice, nil } -// IOnice returns process I/O nice value (priority). -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} - func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -// Rlimit returns Resource Limits. -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} - func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { - return p.RlimitUsage(false) -} - -// RlimitUsage returns Resource Limits. -// If gatherUsed is true, the currently used value will be gathered and added -// to the resulting RlimitStat. -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) + return p.RlimitUsageWithContext(ctx, false) } func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { @@ -311,7 +221,7 @@ func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ( rs := &rlimits[i] switch rs.Resource { case RLIMIT_CPU: - times, err := p.Times() + times, err := p.TimesWithContext(ctx) if err != nil { return nil, err } @@ -323,7 +233,7 @@ func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ( case RLIMIT_RSS: rs.Used = uint64(p.memInfo.RSS) case RLIMIT_NOFILE: - n, err := p.NumFDs() + n, err := p.NumFDsWithContext(ctx) if err != nil { return nil, err } @@ -348,20 +258,10 @@ func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ( return rlimits, err } -// IOCounters returns IO Counters. -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) -} - func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { return p.fillFromIOWithContext(ctx) } -// NumCtxSwitches returns the number of the context switches of the process. -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} - func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { @@ -370,21 +270,11 @@ func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitche return p.numCtxSwitches, nil } -// NumFDs returns the number of File Descriptors used by the process. -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} - func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { _, fnames, err := p.fillFromfdListWithContext(ctx) return int32(len(fnames)), err } -// NumThreads returns the number of threads used by the process. -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} - func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { err := p.fillFromStatusWithContext(ctx) if err != nil { @@ -393,10 +283,6 @@ func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { return p.numThreads, nil } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} - func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { ret := make(map[int32]*cpu.TimesStat) taskPath := common.HostProc(strconv.Itoa(int(p.Pid)), "task") @@ -417,11 +303,6 @@ func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesS return ret, nil } -// Times returns CPU times of the process. -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) -} - func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { _, _, cpuTimes, _, _, _, _, err := p.fillFromStatWithContext(ctx) if err != nil { @@ -430,22 +311,10 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) return cpuTimes, nil } -// CPUAffinity returns CPU affinity of the process. -// -// Notice: Not implemented yet. -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} - func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { return nil, common.ErrNotImplementedError } -// MemoryInfo returns platform in-dependend memory information, such as RSS, VMS and Swap -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} - func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { meminfo, _, err := p.fillFromStatmWithContext(ctx) if err != nil { @@ -454,11 +323,6 @@ func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, e return meminfo, nil } -// MemoryInfoEx returns platform dependend memory information. -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} - func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { _, memInfoEx, err := p.fillFromStatmWithContext(ctx) if err != nil { @@ -467,11 +331,6 @@ func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExSta return memInfoEx, nil } -// PageFaultsInfo returns the process's page fault counters -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} - func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { _, _, _, _, _, _, pageFaults, err := p.fillFromStatWithContext(ctx) if err != nil { @@ -481,11 +340,6 @@ func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, e } -// Children returns a slice of Process of the process. -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} - func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { pids, err := common.CallPgrepWithContext(ctx, invoke, p.Pid) if err != nil { @@ -496,7 +350,7 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { } ret := make([]*Process, 0, len(pids)) for _, pid := range pids { - np, err := NewProcess(pid) + np, err := NewProcessWithContext(ctx, pid) if err != nil { return nil, err } @@ -505,12 +359,6 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return ret, nil } -// OpenFiles returns a slice of OpenFilesStat opend by the process. -// OpenFilesStat includes a file path and file descriptor. -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} - func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { _, ofs, err := p.fillFromfdWithContext(ctx) if err != nil { @@ -524,38 +372,12 @@ func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, er return ret, nil } -// Connections returns a slice of net.ConnectionStat used by the process. -// This returns all kind of the connection. This measn TCP, UDP or UNIX. -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) -} - func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { - return net.ConnectionsPid("all", p.Pid) -} - -// Connections returns a slice of net.ConnectionStat used by the process at most `max` -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) + return net.ConnectionsPidWithContext(ctx, "all", p.Pid) } func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return net.ConnectionsPidMax("all", p.Pid, max) -} - -// NetIOCounters returns NetIOCounters of the process. -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { - filename := common.HostProc(strconv.Itoa(int(p.Pid)), "net/dev") - return net.IOCountersByFile(pernic, filename) -} - -// MemoryMaps get memory maps from /proc/(pid)/smaps -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) + return net.ConnectionsPidMaxWithContext(ctx, "all", p.Pid, max) } func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { @@ -656,15 +478,15 @@ func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]M ** Internal functions **/ -func limitToInt(val string) (int32, error) { +func limitToUint(val string) (uint64, error) { if val == "unlimited" { - return math.MaxInt32, nil + return math.MaxUint64, nil } else { res, err := strconv.ParseInt(val, 10, 32) if err != nil { return 0, err } - return int32(res), nil + return uint64(res), nil } } @@ -692,11 +514,11 @@ func (p *Process) fillFromLimitsWithContext(ctx context.Context) ([]RlimitStat, } // Assert that last item is a Hard limit - statItem.Hard, err = limitToInt(str[len(str)-1]) + statItem.Hard, err = limitToUint(str[len(str)-1]) if err != nil { // On error remove last item an try once again since it can be unit or header line str = str[:len(str)-1] - statItem.Hard, err = limitToInt(str[len(str)-1]) + statItem.Hard, err = limitToUint(str[len(str)-1]) if err != nil { return nil, err } @@ -705,7 +527,7 @@ func (p *Process) fillFromLimitsWithContext(ctx context.Context) ([]RlimitStat, str = str[:len(str)-1] //Now last item is a Soft limit - statItem.Soft, err = limitToInt(str[len(str)-1]) + statItem.Soft, err = limitToUint(str[len(str)-1]) if err != nil { return nil, err } @@ -923,8 +745,8 @@ func (p *Process) fillFromStatmWithContext(ctx context.Context) (*MemoryInfoStat return nil, nil, err } memInfo := &MemoryInfoStat{ - RSS: rss * PageSize, - VMS: vms * PageSize, + RSS: rss * pageSize, + VMS: vms * pageSize, } shared, err := strconv.ParseUint(fields[2], 10, 64) @@ -945,12 +767,12 @@ func (p *Process) fillFromStatmWithContext(ctx context.Context) (*MemoryInfoStat } memInfoEx := &MemoryInfoExStat{ - RSS: rss * PageSize, - VMS: vms * PageSize, - Shared: shared * PageSize, - Text: text * PageSize, - Lib: lib * PageSize, - Dirty: dirty * PageSize, + RSS: rss * pageSize, + VMS: vms * pageSize, + Shared: shared * pageSize, + Text: text * pageSize, + Lib: lib * pageSize, + Dirty: dirty * pageSize, } return memInfo, memInfoEx, nil @@ -992,7 +814,7 @@ func (p *Process) fillFromStatusWithContext(ctx context.Context) error { } } case "State": - p.status = value[0:1] + p.status = convertStatusChar(value[0:1]) case "PPid", "Ppid": pval, err := strconv.ParseInt(value, 10, 32) if err != nil { @@ -1181,14 +1003,14 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui // docs). Note: I am assuming at least Linux 2.6.18 iotime, err := strconv.ParseFloat(fields[i+40], 64) if err != nil { - iotime = 0 // Ancient linux version, most likely + iotime = 0 // Ancient linux version, most likely } cpuTimes := &cpu.TimesStat{ CPU: "cpu", - User: float64(utime / ClockTicks), - System: float64(stime / ClockTicks), - Iowait: float64(iotime / ClockTicks), + User: float64(utime / clockTicks), + System: float64(stime / clockTicks), + Iowait: float64(iotime / clockTicks), } bootTime, _ := common.BootTimeWithContext(ctx) @@ -1196,7 +1018,7 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui if err != nil { return 0, 0, nil, 0, 0, 0, nil, err } - ctime := (t / uint64(ClockTicks)) + uint64(bootTime) + ctime := (t / uint64(clockTicks)) + uint64(bootTime) createTime := int64(ctime * 1000) rtpriority, err := strconv.ParseInt(fields[i+16], 10, 32) @@ -1211,7 +1033,7 @@ func (p *Process) fillFromTIDStatWithContext(ctx context.Context, tid int32) (ui // p.Nice = mustParseInt32(fields[18]) // use syscall instead of parse Stat file - snice, _ := unix.Getpriority(PrioProcess, int(pid)) + snice, _ := unix.Getpriority(prioProcess, int(pid)) nice := int32(snice) // FIXME: is this true? minFault, err := strconv.ParseUint(fields[i+8], 10, 64) @@ -1249,12 +1071,6 @@ func pidsWithContext(ctx context.Context) ([]int32, error) { return readPidsFromDir(common.HostProc()) } -// Process returns a slice of pointers to Process structs for all -// currently running processes. -func Processes() ([]*Process, error) { - return ProcessesWithContext(context.Background()) -} - func ProcessesWithContext(ctx context.Context) ([]*Process, error) { out := []*Process{} @@ -1264,7 +1080,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { } for _, pid := range pids { - p, err := NewProcess(pid) + p, err := NewProcessWithContext(ctx, pid) if err != nil { continue } diff --git a/vendor/github.com/shirou/gopsutil/process/process_openbsd.go b/vendor/github.com/shirou/gopsutil/v3/process/process_openbsd.go similarity index 50% rename from vendor/github.com/shirou/gopsutil/process/process_openbsd.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_openbsd.go index 93f9875ea..6e45d849d 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_openbsd.go @@ -4,32 +4,23 @@ package process import ( "C" - "bytes" "context" - "encoding/binary" "os/exec" "path/filepath" "strconv" "strings" "unsafe" - cpu "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - mem "github.com/shirou/gopsutil/mem" - net "github.com/shirou/gopsutil/net" + cpu "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + mem "github.com/shirou/gopsutil/v3/mem" + net "github.com/shirou/gopsutil/v3/net" "golang.org/x/sys/unix" ) -// MemoryInfoExStat is different between OSes -type MemoryInfoExStat struct { -} - -type MemoryMapsStat struct { -} - func pidsWithContext(ctx context.Context) ([]int32, error) { var ret []int32 - procs, err := Processes() + procs, err := ProcessesWithContext(ctx) if err != nil { return ret, nil } @@ -41,10 +32,6 @@ func pidsWithContext(ctx context.Context) ([]int32, error) { return ret, nil } -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) -} - func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() if err != nil { @@ -53,9 +40,6 @@ func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { return k.Ppid, nil } -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} func (p *Process) NameWithContext(ctx context.Context) (string, error) { k, err := p.getKProc() @@ -81,21 +65,11 @@ func (p *Process) NameWithContext(ctx context.Context) (string, error) { return name, nil } -func (p *Process) Tgid() (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} func (p *Process) ExeWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} - func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { mib := []int32{CTLKern, KernProcArgs, p.Pid, KernProcArgv} buf, _, err := common.CallSyscall(mib) @@ -119,12 +93,8 @@ func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) return strParts, nil } -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} - func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { - argv, err := p.CmdlineSlice() + argv, err := p.CmdlineSliceWithContext(ctx) if err != nil { return "", err } @@ -134,47 +104,31 @@ func (p *Process) CmdlineWithContext(ctx context.Context) (string, error) { func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} - -func (p *Process) CwdWithContext(ctx context.Context) (string, error) { - return "", common.ErrNotImplementedError -} -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { - return p, common.ErrNotImplementedError -} -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) + return nil, common.ErrNotImplementedError } -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { k, err := p.getKProc() if err != nil { - return "", err + return []string{""}, err } var s string switch k.Stat { case SIDL: case SRUN: case SONPROC: - s = "R" + s = Running case SSLEEP: - s = "S" + s = Sleep case SSTOP: - s = "T" + s = Stop case SDEAD: - s = "Z" + s = Zombie } - return s, nil -} -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) + return []string{s}, nil } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { @@ -190,9 +144,6 @@ func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { } return strings.IndexByte(string(out), '+') != -1, nil } -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() @@ -206,9 +157,6 @@ func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { return uids, nil } -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) -} func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() @@ -221,16 +169,19 @@ func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { return gids, nil } + func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { k, err := p.getKProc() if err != nil { return nil, err } - return k.Groups, nil -} -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) + groups := make([]int32, k.Ngroups) + for i := int16(0); i < k.Ngroups; i++ { + groups[i] = int32(k.Groups[i]) + } + + return groups, nil } func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { @@ -248,9 +199,6 @@ func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { return termmap[ttyNr], nil } -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { k, err := p.getKProc() @@ -259,32 +207,6 @@ func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { } return int32(k.Nice), nil } -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} - -func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} - -func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) -} - -func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { - var rlimit []RlimitStat - return rlimit, common.ErrNotImplementedError -} -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) -} func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { k, err := p.getKProc() @@ -296,39 +218,11 @@ func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, e WriteCount: uint64(k.Uru_oublock), }, nil } -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} - -func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} - -func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { - return 0, common.ErrNotImplementedError -} -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { /* not supported, just return 1 */ return 1, nil } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} - -func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { - ret := make(map[int32]*cpu.TimesStat) - return ret, common.ErrNotImplementedError -} -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) -} func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { k, err := p.getKProc() @@ -341,23 +235,13 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) System: float64(k.Ustime_sec) + float64(k.Ustime_usec)/1000000, }, nil } -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} - -func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { - return nil, common.ErrNotImplementedError -} -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { k, err := p.getKProc() if err != nil { return nil, err } - pageSize, err := mem.GetPageSize() + pageSize, err := mem.GetpageSizeWithContext(ctx) if err != nil { return nil, err } @@ -368,25 +252,6 @@ func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, e uint64(k.Vm_ssize), }, nil } -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} - -func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} - -func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { pids, err := common.CallPgrepWithContext(ctx, invoke, p.Pid) @@ -395,7 +260,7 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { } ret := make([]*Process, 0, len(pids)) for _, pid := range pids { - np, err := NewProcess(pid) + np, err := NewProcessWithContext(ctx, pid) if err != nil { return nil, err } @@ -404,55 +269,18 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return ret, nil } -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} - -func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { - return nil, common.ErrNotImplementedError -} - -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) -} - func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) -} - func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return []net.ConnectionStat{}, common.ErrNotImplementedError -} - -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) -} - -func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { - var ret []MemoryMapsStat - return &ret, common.ErrNotImplementedError -} - -func Processes() ([]*Process, error) { - return ProcessesWithContext(context.Background()) -} - func ProcessesWithContext(ctx context.Context) ([]*Process, error) { results := []*Process{} - buf, length, err := CallKernProcSyscall(KernProcAll, 0) + buf, length, err := callKernProcSyscall(KernProcAll, 0) if err != nil { return results, err @@ -468,7 +296,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { if err != nil { continue } - p, err := NewProcess(int32(k.Pid)) + p, err := NewProcessWithContext(ctx, int32(k.Pid)) if err != nil { continue } @@ -479,19 +307,8 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { return results, nil } -func parseKinfoProc(buf []byte) (KinfoProc, error) { - var k KinfoProc - br := bytes.NewReader(buf) - err := common.Read(br, binary.LittleEndian, &k) - return k, err -} - func (p *Process) getKProc() (*KinfoProc, error) { - return p.getKProcWithContext(context.Background()) -} - -func (p *Process) getKProcWithContext(ctx context.Context) (*KinfoProc, error) { - buf, length, err := CallKernProcSyscall(KernProcPID, p.Pid) + buf, length, err := callKernProcSyscall(KernProcPID, p.Pid) if err != nil { return nil, err } @@ -506,11 +323,7 @@ func (p *Process) getKProcWithContext(ctx context.Context) (*KinfoProc, error) { return &k, nil } -func CallKernProcSyscall(op int32, arg int32) ([]byte, uint64, error) { - return CallKernProcSyscallWithContext(context.Background(), op, arg) -} - -func CallKernProcSyscallWithContext(ctx context.Context, op int32, arg int32) ([]byte, uint64, error) { +func callKernProcSyscall(op int32, arg int32) ([]byte, uint64, error) { mib := []int32{CTLKern, KernProc, op, arg, sizeOfKinfoProc, 0} mibptr := unsafe.Pointer(&mib[0]) miblen := uint64(len(mib)) diff --git a/vendor/github.com/shirou/gopsutil/process/process_openbsd_386.go b/vendor/github.com/shirou/gopsutil/v3/process/process_openbsd_386.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_openbsd_386.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_openbsd_386.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_openbsd_amd64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_openbsd_amd64.go similarity index 100% rename from vendor/github.com/shirou/gopsutil/process/process_openbsd_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_openbsd_amd64.go diff --git a/vendor/github.com/shirou/gopsutil/process/process_posix.go b/vendor/github.com/shirou/gopsutil/v3/process/process_posix.go similarity index 74% rename from vendor/github.com/shirou/gopsutil/process/process_posix.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_posix.go index 109239a57..2b9997d20 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_posix.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_posix.go @@ -12,7 +12,7 @@ import ( "strings" "syscall" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" "golang.org/x/sys/unix" ) @@ -114,12 +114,6 @@ func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) { return false, err } -// SendSignal sends a unix.Signal to the process. -// Currently, SIGSTOP, SIGCONT, SIGTERM and SIGKILL are supported. -func (p *Process) SendSignal(sig syscall.Signal) error { - return p.SendSignalWithContext(context.Background(), sig) -} - func (p *Process) SendSignalWithContext(ctx context.Context, sig syscall.Signal) error { process, err := os.FindProcess(int(p.Pid)) if err != nil { @@ -134,49 +128,24 @@ func (p *Process) SendSignalWithContext(ctx context.Context, sig syscall.Signal) return nil } -// Suspend sends SIGSTOP to the process. -func (p *Process) Suspend() error { - return p.SuspendWithContext(context.Background()) -} - func (p *Process) SuspendWithContext(ctx context.Context) error { - return p.SendSignal(unix.SIGSTOP) -} - -// Resume sends SIGCONT to the process. -func (p *Process) Resume() error { - return p.ResumeWithContext(context.Background()) + return p.SendSignalWithContext(ctx, unix.SIGSTOP) } func (p *Process) ResumeWithContext(ctx context.Context) error { - return p.SendSignal(unix.SIGCONT) -} - -// Terminate sends SIGTERM to the process. -func (p *Process) Terminate() error { - return p.TerminateWithContext(context.Background()) + return p.SendSignalWithContext(ctx, unix.SIGCONT) } func (p *Process) TerminateWithContext(ctx context.Context) error { - return p.SendSignal(unix.SIGTERM) -} - -// Kill sends SIGKILL to the process. -func (p *Process) Kill() error { - return p.KillWithContext(context.Background()) + return p.SendSignalWithContext(ctx, unix.SIGTERM) } func (p *Process) KillWithContext(ctx context.Context) error { - return p.SendSignal(unix.SIGKILL) -} - -// Username returns a username of the process. -func (p *Process) Username() (string, error) { - return p.UsernameWithContext(context.Background()) + return p.SendSignalWithContext(ctx, unix.SIGKILL) } func (p *Process) UsernameWithContext(ctx context.Context) (string, error) { - uids, err := p.Uids() + uids, err := p.UidsWithContext(ctx) if err != nil { return "", err } @@ -189,3 +158,4 @@ func (p *Process) UsernameWithContext(ctx context.Context) (string, error) { } return "", nil } + diff --git a/vendor/github.com/shirou/gopsutil/process/process_windows.go b/vendor/github.com/shirou/gopsutil/v3/process/process_windows.go similarity index 79% rename from vendor/github.com/shirou/gopsutil/process/process_windows.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_windows.go index 994577905..5cad3ba7e 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_windows.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_windows.go @@ -11,9 +11,9 @@ import ( "syscall" "unsafe" - cpu "github.com/shirou/gopsutil/cpu" - "github.com/shirou/gopsutil/internal/common" - net "github.com/shirou/gopsutil/net" + cpu "github.com/shirou/gopsutil/v3/cpu" + "github.com/shirou/gopsutil/v3/internal/common" + net "github.com/shirou/gopsutil/v3/net" "golang.org/x/sys/windows" ) @@ -38,21 +38,6 @@ var ( processorArchitecture uint ) -type SystemProcessInformation struct { - NextEntryOffset uint64 - NumberOfThreads uint64 - Reserved1 [48]byte - Reserved2 [3]byte - UniqueProcessID uintptr - Reserved3 uintptr - HandleCount uint64 - Reserved4 [4]byte - Reserved5 [11]byte - PeakPagefileUsage uint64 - PrivatePageCount uint64 - Reserved6 [6]uint64 -} - type systemProcessorInformation struct { ProcessorArchitecture uint16 ProcessorLevel uint16 @@ -64,7 +49,7 @@ type systemProcessorInformation struct { type systemInfo struct { wProcessorArchitecture uint16 wReserved uint16 - dwPageSize uint32 + dwpageSize uint32 lpMinimumApplicationAddress uintptr lpMaximumApplicationAddress uintptr dwActiveProcessorMask uintptr @@ -235,38 +220,43 @@ func PidExistsWithContext(ctx context.Context, pid int32) (bool, error) { return exitCode == STILL_ACTIVE, err } -func (p *Process) Ppid() (int32, error) { - return p.PpidWithContext(context.Background()) -} - func (p *Process) PpidWithContext(ctx context.Context) (int32, error) { + // if cached already, return from cache + cachedPpid := p.getPpid() + if cachedPpid != 0 { + return cachedPpid, nil + } + ppid, _, _, err := getFromSnapProcess(p.Pid) if err != nil { return 0, err } + + // no errors and not cached already, so cache it + p.setPpid(ppid) + return ppid, nil } -func (p *Process) Name() (string, error) { - return p.NameWithContext(context.Background()) -} - func (p *Process) NameWithContext(ctx context.Context) (string, error) { - _, _, name, err := getFromSnapProcess(p.Pid) + ppid, _, name, err := getFromSnapProcess(p.Pid) if err != nil { return "", fmt.Errorf("could not get Name: %s", err) } + + // if no errors and not cached already, cache ppid + p.parent = ppid + if 0 == p.getPpid() { + p.setPpid(ppid) + } + return name, nil } -func (p *Process) Tgid() (int32, error) { +func (p *Process) TgidWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Exe() (string, error) { - return p.ExeWithContext(context.Background()) -} - func (p *Process) ExeWithContext(ctx context.Context) (string, error) { c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(p.Pid)) if err != nil { @@ -294,10 +284,6 @@ func (p *Process) ExeWithContext(ctx context.Context) (string, error) { return common.ConvertDOSPath(windows.UTF16ToString(buf[:])), nil } -func (p *Process) Cmdline() (string, error) { - return p.CmdlineWithContext(context.Background()) -} - func (p *Process) CmdlineWithContext(_ context.Context) (string, error) { cmdline, err := getProcessCommandLine(p.Pid) if err != nil { @@ -306,13 +292,6 @@ func (p *Process) CmdlineWithContext(_ context.Context) (string, error) { return cmdline, nil } -// CmdlineSlice returns the command line arguments of the process as a slice with each -// element being an argument. This merely returns the CommandLine informations passed -// to the process split on the 0x20 ASCII character. -func (p *Process) CmdlineSlice() ([]string, error) { - return p.CmdlineSliceWithContext(context.Background()) -} - func (p *Process) CmdlineSliceWithContext(ctx context.Context) ([]string, error) { cmdline, err := p.CmdlineWithContext(ctx) if err != nil { @@ -330,16 +309,9 @@ func (p *Process) createTimeWithContext(ctx context.Context) (int64, error) { return ru.CreationTime.Nanoseconds() / 1000000, nil } -func (p *Process) Cwd() (string, error) { - return p.CwdWithContext(context.Background()) -} - func (p *Process) CwdWithContext(ctx context.Context) (string, error) { return "", common.ErrNotImplementedError } -func (p *Process) Parent() (*Process, error) { - return p.ParentWithContext(context.Background()) -} func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { ppid, err := p.PpidWithContext(ctx) @@ -347,28 +319,17 @@ func (p *Process) ParentWithContext(ctx context.Context) (*Process, error) { return nil, fmt.Errorf("could not get ParentProcessID: %s", err) } - return NewProcess(ppid) -} -func (p *Process) Status() (string, error) { - return p.StatusWithContext(context.Background()) + return NewProcessWithContext(ctx, ppid) } -func (p *Process) StatusWithContext(ctx context.Context) (string, error) { - return "", common.ErrNotImplementedError -} - -func (p *Process) Foreground() (bool, error) { - return p.ForegroundWithContext(context.Background()) +func (p *Process) StatusWithContext(ctx context.Context) ([]string, error) { + return []string{""}, common.ErrNotImplementedError } func (p *Process) ForegroundWithContext(ctx context.Context) (bool, error) { return false, common.ErrNotImplementedError } -func (p *Process) Username() (string, error) { - return p.UsernameWithContext(context.Background()) -} - func (p *Process) UsernameWithContext(ctx context.Context) (string, error) { pid := p.Pid c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pid)) @@ -392,30 +353,16 @@ func (p *Process) UsernameWithContext(ctx context.Context) (string, error) { return domain + "\\" + user, err } -func (p *Process) Uids() ([]int32, error) { - return p.UidsWithContext(context.Background()) -} - func (p *Process) UidsWithContext(ctx context.Context) ([]int32, error) { - var uids []int32 - - return uids, common.ErrNotImplementedError -} -func (p *Process) Gids() ([]int32, error) { - return p.GidsWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) GidsWithContext(ctx context.Context) ([]int32, error) { - var gids []int32 - return gids, common.ErrNotImplementedError + return nil, common.ErrNotImplementedError } func (p *Process) GroupsWithContext(ctx context.Context) ([]int32, error) { - var groups []int32 - return groups, common.ErrNotImplementedError -} -func (p *Process) Terminal() (string, error) { - return p.TerminalWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) TerminalWithContext(ctx context.Context) (string, error) { @@ -434,11 +381,6 @@ var priorityClasses = map[int]int32{ 0x00000100: 24, // REALTIME_PRIORITY_CLASS } -// Nice returns priority in Windows -func (p *Process) Nice() (int32, error) { - return p.NiceWithContext(context.Background()) -} - func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { c, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(p.Pid)) if err != nil { @@ -455,34 +397,17 @@ func (p *Process) NiceWithContext(ctx context.Context) (int32, error) { } return priority, nil } -func (p *Process) IOnice() (int32, error) { - return p.IOniceWithContext(context.Background()) -} func (p *Process) IOniceWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) Rlimit() ([]RlimitStat, error) { - return p.RlimitWithContext(context.Background()) -} func (p *Process) RlimitWithContext(ctx context.Context) ([]RlimitStat, error) { - var rlimit []RlimitStat - - return rlimit, common.ErrNotImplementedError -} -func (p *Process) RlimitUsage(gatherUsed bool) ([]RlimitStat, error) { - return p.RlimitUsageWithContext(context.Background(), gatherUsed) + return nil, common.ErrNotImplementedError } func (p *Process) RlimitUsageWithContext(ctx context.Context, gatherUsed bool) ([]RlimitStat, error) { - var rlimit []RlimitStat - - return rlimit, common.ErrNotImplementedError -} - -func (p *Process) IOCounters() (*IOCountersStat, error) { - return p.IOCountersWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, error) { @@ -505,41 +430,32 @@ func (p *Process) IOCountersWithContext(ctx context.Context) (*IOCountersStat, e return stats, nil } -func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { - return p.NumCtxSwitchesWithContext(context.Background()) -} func (p *Process) NumCtxSwitchesWithContext(ctx context.Context) (*NumCtxSwitchesStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) NumFDs() (int32, error) { - return p.NumFDsWithContext(context.Background()) -} func (p *Process) NumFDsWithContext(ctx context.Context) (int32, error) { return 0, common.ErrNotImplementedError } -func (p *Process) NumThreads() (int32, error) { - return p.NumThreadsWithContext(context.Background()) -} func (p *Process) NumThreadsWithContext(ctx context.Context) (int32, error) { - _, ret, _, err := getFromSnapProcess(p.Pid) + ppid, ret, _, err := getFromSnapProcess(p.Pid) if err != nil { return 0, err } + + // if no errors and not cached already, cache ppid + p.parent = ppid + if 0 == p.getPpid() { + p.setPpid(ppid) + } + return ret, nil } -func (p *Process) Threads() (map[int32]*cpu.TimesStat, error) { - return p.ThreadsWithContext(context.Background()) -} func (p *Process) ThreadsWithContext(ctx context.Context) (map[int32]*cpu.TimesStat, error) { - ret := make(map[int32]*cpu.TimesStat) - return ret, common.ErrNotImplementedError -} -func (p *Process) Times() (*cpu.TimesStat, error) { - return p.TimesWithContext(context.Background()) + return nil, common.ErrNotImplementedError } func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) { @@ -565,16 +481,10 @@ func (p *Process) TimesWithContext(ctx context.Context) (*cpu.TimesStat, error) System: kernel, }, nil } -func (p *Process) CPUAffinity() ([]int32, error) { - return p.CPUAffinityWithContext(context.Background()) -} func (p *Process) CPUAffinityWithContext(ctx context.Context) ([]int32, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryInfo() (*MemoryInfoStat, error) { - return p.MemoryInfoWithContext(context.Background()) -} func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, error) { mem, err := getMemoryInfo(p.Pid) @@ -589,26 +499,15 @@ func (p *Process) MemoryInfoWithContext(ctx context.Context) (*MemoryInfoStat, e return ret, nil } -func (p *Process) MemoryInfoEx() (*MemoryInfoExStat, error) { - return p.MemoryInfoExWithContext(context.Background()) -} func (p *Process) MemoryInfoExWithContext(ctx context.Context) (*MemoryInfoExStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) PageFaults() (*PageFaultsStat, error) { - return p.PageFaultsWithContext(context.Background()) -} - func (p *Process) PageFaultsWithContext(ctx context.Context) (*PageFaultsStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) Children() ([]*Process, error) { - return p.ChildrenWithContext(context.Background()) -} - func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { out := []*Process{} snap, err := windows.CreateToolhelp32Snapshot(windows.TH32CS_SNAPPROCESS, uint32(0)) @@ -623,7 +522,7 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { } for { if pe32.ParentProcessID == uint32(p.Pid) { - p, err := NewProcess(int32(pe32.ProcessID)) + p, err := NewProcessWithContext(ctx, int32(pe32.ProcessID)) if err == nil { out = append(out, p) } @@ -635,59 +534,26 @@ func (p *Process) ChildrenWithContext(ctx context.Context) ([]*Process, error) { return out, nil } -func (p *Process) OpenFiles() ([]OpenFilesStat, error) { - return p.OpenFilesWithContext(context.Background()) -} - func (p *Process) OpenFilesWithContext(ctx context.Context) ([]OpenFilesStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) Connections() ([]net.ConnectionStat, error) { - return p.ConnectionsWithContext(context.Background()) -} - func (p *Process) ConnectionsWithContext(ctx context.Context) ([]net.ConnectionStat, error) { return net.ConnectionsPidWithContext(ctx, "all", p.Pid) } -func (p *Process) ConnectionsMax(max int) ([]net.ConnectionStat, error) { - return p.ConnectionsMaxWithContext(context.Background(), max) -} - func (p *Process) ConnectionsMaxWithContext(ctx context.Context, max int) ([]net.ConnectionStat, error) { - return []net.ConnectionStat{}, common.ErrNotImplementedError -} - -func (p *Process) NetIOCounters(pernic bool) ([]net.IOCountersStat, error) { - return p.NetIOCountersWithContext(context.Background(), pernic) -} - -func (p *Process) NetIOCountersWithContext(ctx context.Context, pernic bool) ([]net.IOCountersStat, error) { return nil, common.ErrNotImplementedError } -func (p *Process) MemoryMaps(grouped bool) (*[]MemoryMapsStat, error) { - return p.MemoryMapsWithContext(context.Background(), grouped) -} - func (p *Process) MemoryMapsWithContext(ctx context.Context, grouped bool) (*[]MemoryMapsStat, error) { - var ret []MemoryMapsStat - return &ret, common.ErrNotImplementedError + return nil, common.ErrNotImplementedError } -func (p *Process) SendSignal(sig windows.Signal) error { - return p.SendSignalWithContext(context.Background(), sig) -} - -func (p *Process) SendSignalWithContext(ctx context.Context, sig windows.Signal) error { +func (p *Process) SendSignalWithContext(ctx context.Context, sig syscall.Signal) error { return common.ErrNotImplementedError } -func (p *Process) Suspend() error { - return p.SuspendWithContext(context.Background()) -} - func (p *Process) SuspendWithContext(ctx context.Context) error { c, err := windows.OpenProcess(windows.PROCESS_SUSPEND_RESUME, false, uint32(p.Pid)) if err != nil { @@ -695,7 +561,7 @@ func (p *Process) SuspendWithContext(ctx context.Context) error { } defer windows.CloseHandle(c) - r1, _, _ := procNtSuspendProcess.Call(uintptr(unsafe.Pointer(c))) + r1, _, _ := procNtSuspendProcess.Call(uintptr(c)) if r1 != 0 { // See https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-erref/596a1078-e883-4972-9bbc-49e60bebca55 return fmt.Errorf("NtStatus='0x%.8X'", r1) @@ -704,10 +570,6 @@ func (p *Process) SuspendWithContext(ctx context.Context) error { return nil } -func (p *Process) Resume() error { - return p.ResumeWithContext(context.Background()) -} - func (p *Process) ResumeWithContext(ctx context.Context) error { c, err := windows.OpenProcess(windows.PROCESS_SUSPEND_RESUME, false, uint32(p.Pid)) if err != nil { @@ -715,7 +577,7 @@ func (p *Process) ResumeWithContext(ctx context.Context) error { } defer windows.CloseHandle(c) - r1, _, _ := procNtResumeProcess.Call(uintptr(unsafe.Pointer(c))) + r1, _, _ := procNtResumeProcess.Call(uintptr(c)) if r1 != 0 { // See https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-erref/596a1078-e883-4972-9bbc-49e60bebca55 return fmt.Errorf("NtStatus='0x%.8X'", r1) @@ -724,10 +586,6 @@ func (p *Process) ResumeWithContext(ctx context.Context) error { return nil } -func (p *Process) Terminate() error { - return p.TerminateWithContext(context.Background()) -} - func (p *Process) TerminateWithContext(ctx context.Context) error { proc, err := windows.OpenProcess(windows.PROCESS_TERMINATE, false, uint32(p.Pid)) if err != nil { @@ -738,15 +596,26 @@ func (p *Process) TerminateWithContext(ctx context.Context) error { return err } -func (p *Process) Kill() error { - return p.KillWithContext(context.Background()) -} - func (p *Process) KillWithContext(ctx context.Context) error { process := os.Process{Pid: int(p.Pid)} return process.Kill() } +// retrieve Ppid in a thread-safe manner +func (p *Process) getPpid() int32 { + p.parentMutex.RLock() + defer p.parentMutex.RUnlock() + return p.parent +} + +// cache Ppid in a thread-safe manner (WINDOWS ONLY) +// see https://psutil.readthedocs.io/en/latest/#psutil.Process.ppid +func (p *Process) setPpid(ppid int32) { + p.parentMutex.Lock() + defer p.parentMutex.Unlock() + p.parent = ppid +} + func getFromSnapProcess(pid int32) (int32, int32, string, error) { snap, err := windows.CreateToolhelp32Snapshot(windows.TH32CS_SNAPPROCESS, uint32(pid)) if err != nil { @@ -770,11 +639,6 @@ func getFromSnapProcess(pid int32) (int32, int32, string, error) { return 0, 0, "", fmt.Errorf("couldn't find pid: %d", pid) } -// Get processes -func Processes() ([]*Process, error) { - return ProcessesWithContext(context.Background()) -} - func ProcessesWithContext(ctx context.Context) ([]*Process, error) { out := []*Process{} @@ -784,7 +648,7 @@ func ProcessesWithContext(ctx context.Context) ([]*Process, error) { } for _, pid := range pids { - p, err := NewProcess(pid) + p, err := NewProcessWithContext(ctx, pid) if err != nil { continue } diff --git a/vendor/github.com/shirou/gopsutil/process/process_windows_386.go b/vendor/github.com/shirou/gopsutil/v3/process/process_windows_386.go similarity index 98% rename from vendor/github.com/shirou/gopsutil/process/process_windows_386.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_windows_386.go index cd884968e..f8a78ba7c 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_windows_386.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_windows_386.go @@ -6,7 +6,7 @@ import ( "syscall" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) type PROCESS_MEMORY_COUNTERS struct { diff --git a/vendor/github.com/shirou/gopsutil/process/process_windows_amd64.go b/vendor/github.com/shirou/gopsutil/v3/process/process_windows_amd64.go similarity index 97% rename from vendor/github.com/shirou/gopsutil/process/process_windows_amd64.go rename to vendor/github.com/shirou/gopsutil/v3/process/process_windows_amd64.go index 3ee5be449..4191dd9bc 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_windows_amd64.go +++ b/vendor/github.com/shirou/gopsutil/v3/process/process_windows_amd64.go @@ -6,7 +6,7 @@ import ( "syscall" "unsafe" - "github.com/shirou/gopsutil/internal/common" + "github.com/shirou/gopsutil/v3/internal/common" ) type PROCESS_MEMORY_COUNTERS struct { diff --git a/vendor/github.com/stretchr/testify/LICENSE b/vendor/github.com/stretchr/testify/LICENSE index f38ec5956..4b0421cf9 100644 --- a/vendor/github.com/stretchr/testify/LICENSE +++ b/vendor/github.com/stretchr/testify/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2012-2018 Mat Ryer and Tyler Bunnell +Copyright (c) 2012-2020 Mat Ryer, Tyler Bunnell and contributors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/vendor/github.com/stretchr/testify/assert/assertion_order.go b/vendor/github.com/stretchr/testify/assert/assertion_compare.go similarity index 62% rename from vendor/github.com/stretchr/testify/assert/assertion_order.go rename to vendor/github.com/stretchr/testify/assert/assertion_compare.go index 15a486ca6..dc200395c 100644 --- a/vendor/github.com/stretchr/testify/assert/assertion_order.go +++ b/vendor/github.com/stretchr/testify/assert/assertion_compare.go @@ -5,20 +5,28 @@ import ( "reflect" ) -func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { +type CompareType int + +const ( + compareLess CompareType = iota - 1 + compareEqual + compareGreater +) + +func compare(obj1, obj2 interface{}, kind reflect.Kind) (CompareType, bool) { switch kind { case reflect.Int: { intobj1 := obj1.(int) intobj2 := obj2.(int) if intobj1 > intobj2 { - return -1, true + return compareGreater, true } if intobj1 == intobj2 { - return 0, true + return compareEqual, true } if intobj1 < intobj2 { - return 1, true + return compareLess, true } } case reflect.Int8: @@ -26,13 +34,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { int8obj1 := obj1.(int8) int8obj2 := obj2.(int8) if int8obj1 > int8obj2 { - return -1, true + return compareGreater, true } if int8obj1 == int8obj2 { - return 0, true + return compareEqual, true } if int8obj1 < int8obj2 { - return 1, true + return compareLess, true } } case reflect.Int16: @@ -40,13 +48,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { int16obj1 := obj1.(int16) int16obj2 := obj2.(int16) if int16obj1 > int16obj2 { - return -1, true + return compareGreater, true } if int16obj1 == int16obj2 { - return 0, true + return compareEqual, true } if int16obj1 < int16obj2 { - return 1, true + return compareLess, true } } case reflect.Int32: @@ -54,13 +62,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { int32obj1 := obj1.(int32) int32obj2 := obj2.(int32) if int32obj1 > int32obj2 { - return -1, true + return compareGreater, true } if int32obj1 == int32obj2 { - return 0, true + return compareEqual, true } if int32obj1 < int32obj2 { - return 1, true + return compareLess, true } } case reflect.Int64: @@ -68,13 +76,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { int64obj1 := obj1.(int64) int64obj2 := obj2.(int64) if int64obj1 > int64obj2 { - return -1, true + return compareGreater, true } if int64obj1 == int64obj2 { - return 0, true + return compareEqual, true } if int64obj1 < int64obj2 { - return 1, true + return compareLess, true } } case reflect.Uint: @@ -82,13 +90,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { uintobj1 := obj1.(uint) uintobj2 := obj2.(uint) if uintobj1 > uintobj2 { - return -1, true + return compareGreater, true } if uintobj1 == uintobj2 { - return 0, true + return compareEqual, true } if uintobj1 < uintobj2 { - return 1, true + return compareLess, true } } case reflect.Uint8: @@ -96,13 +104,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { uint8obj1 := obj1.(uint8) uint8obj2 := obj2.(uint8) if uint8obj1 > uint8obj2 { - return -1, true + return compareGreater, true } if uint8obj1 == uint8obj2 { - return 0, true + return compareEqual, true } if uint8obj1 < uint8obj2 { - return 1, true + return compareLess, true } } case reflect.Uint16: @@ -110,13 +118,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { uint16obj1 := obj1.(uint16) uint16obj2 := obj2.(uint16) if uint16obj1 > uint16obj2 { - return -1, true + return compareGreater, true } if uint16obj1 == uint16obj2 { - return 0, true + return compareEqual, true } if uint16obj1 < uint16obj2 { - return 1, true + return compareLess, true } } case reflect.Uint32: @@ -124,13 +132,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { uint32obj1 := obj1.(uint32) uint32obj2 := obj2.(uint32) if uint32obj1 > uint32obj2 { - return -1, true + return compareGreater, true } if uint32obj1 == uint32obj2 { - return 0, true + return compareEqual, true } if uint32obj1 < uint32obj2 { - return 1, true + return compareLess, true } } case reflect.Uint64: @@ -138,13 +146,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { uint64obj1 := obj1.(uint64) uint64obj2 := obj2.(uint64) if uint64obj1 > uint64obj2 { - return -1, true + return compareGreater, true } if uint64obj1 == uint64obj2 { - return 0, true + return compareEqual, true } if uint64obj1 < uint64obj2 { - return 1, true + return compareLess, true } } case reflect.Float32: @@ -152,13 +160,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { float32obj1 := obj1.(float32) float32obj2 := obj2.(float32) if float32obj1 > float32obj2 { - return -1, true + return compareGreater, true } if float32obj1 == float32obj2 { - return 0, true + return compareEqual, true } if float32obj1 < float32obj2 { - return 1, true + return compareLess, true } } case reflect.Float64: @@ -166,13 +174,13 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { float64obj1 := obj1.(float64) float64obj2 := obj2.(float64) if float64obj1 > float64obj2 { - return -1, true + return compareGreater, true } if float64obj1 == float64obj2 { - return 0, true + return compareEqual, true } if float64obj1 < float64obj2 { - return 1, true + return compareLess, true } } case reflect.String: @@ -180,18 +188,18 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { stringobj1 := obj1.(string) stringobj2 := obj2.(string) if stringobj1 > stringobj2 { - return -1, true + return compareGreater, true } if stringobj1 == stringobj2 { - return 0, true + return compareEqual, true } if stringobj1 < stringobj2 { - return 1, true + return compareLess, true } } } - return 0, false + return compareEqual, false } // Greater asserts that the first element is greater than the second @@ -200,26 +208,7 @@ func compare(obj1, obj2 interface{}, kind reflect.Kind) (int, bool) { // assert.Greater(t, float64(2), float64(1)) // assert.Greater(t, "b", "a") func Greater(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - - e1Kind := reflect.ValueOf(e1).Kind() - e2Kind := reflect.ValueOf(e2).Kind() - if e1Kind != e2Kind { - return Fail(t, "Elements should be the same type", msgAndArgs...) - } - - res, isComparable := compare(e1, e2, e1Kind) - if !isComparable { - return Fail(t, fmt.Sprintf("Can not compare type \"%s\"", reflect.TypeOf(e1)), msgAndArgs...) - } - - if res != -1 { - return Fail(t, fmt.Sprintf("\"%v\" is not greater than \"%v\"", e1, e2), msgAndArgs...) - } - - return true + return compareTwoValues(t, e1, e2, []CompareType{compareGreater}, "\"%v\" is not greater than \"%v\"", msgAndArgs) } // GreaterOrEqual asserts that the first element is greater than or equal to the second @@ -229,26 +218,7 @@ func Greater(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface // assert.GreaterOrEqual(t, "b", "a") // assert.GreaterOrEqual(t, "b", "b") func GreaterOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - - e1Kind := reflect.ValueOf(e1).Kind() - e2Kind := reflect.ValueOf(e2).Kind() - if e1Kind != e2Kind { - return Fail(t, "Elements should be the same type", msgAndArgs...) - } - - res, isComparable := compare(e1, e2, e1Kind) - if !isComparable { - return Fail(t, fmt.Sprintf("Can not compare type \"%s\"", reflect.TypeOf(e1)), msgAndArgs...) - } - - if res != -1 && res != 0 { - return Fail(t, fmt.Sprintf("\"%v\" is not greater than or equal to \"%v\"", e1, e2), msgAndArgs...) - } - - return true + return compareTwoValues(t, e1, e2, []CompareType{compareGreater, compareEqual}, "\"%v\" is not greater than or equal to \"%v\"", msgAndArgs) } // Less asserts that the first element is less than the second @@ -257,26 +227,7 @@ func GreaterOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...in // assert.Less(t, float64(1), float64(2)) // assert.Less(t, "a", "b") func Less(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - - e1Kind := reflect.ValueOf(e1).Kind() - e2Kind := reflect.ValueOf(e2).Kind() - if e1Kind != e2Kind { - return Fail(t, "Elements should be the same type", msgAndArgs...) - } - - res, isComparable := compare(e1, e2, e1Kind) - if !isComparable { - return Fail(t, fmt.Sprintf("Can not compare type \"%s\"", reflect.TypeOf(e1)), msgAndArgs...) - } - - if res != 1 { - return Fail(t, fmt.Sprintf("\"%v\" is not less than \"%v\"", e1, e2), msgAndArgs...) - } - - return true + return compareTwoValues(t, e1, e2, []CompareType{compareLess}, "\"%v\" is not less than \"%v\"", msgAndArgs) } // LessOrEqual asserts that the first element is less than or equal to the second @@ -286,6 +237,10 @@ func Less(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) // assert.LessOrEqual(t, "a", "b") // assert.LessOrEqual(t, "b", "b") func LessOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...interface{}) bool { + return compareTwoValues(t, e1, e2, []CompareType{compareLess, compareEqual}, "\"%v\" is not less than or equal to \"%v\"", msgAndArgs) +} + +func compareTwoValues(t TestingT, e1 interface{}, e2 interface{}, allowedComparesResults []CompareType, failMessage string, msgAndArgs ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() } @@ -296,14 +251,24 @@ func LessOrEqual(t TestingT, e1 interface{}, e2 interface{}, msgAndArgs ...inter return Fail(t, "Elements should be the same type", msgAndArgs...) } - res, isComparable := compare(e1, e2, e1Kind) + compareResult, isComparable := compare(e1, e2, e1Kind) if !isComparable { return Fail(t, fmt.Sprintf("Can not compare type \"%s\"", reflect.TypeOf(e1)), msgAndArgs...) } - if res != 1 && res != 0 { - return Fail(t, fmt.Sprintf("\"%v\" is not less than or equal to \"%v\"", e1, e2), msgAndArgs...) + if !containsValue(allowedComparesResults, compareResult) { + return Fail(t, fmt.Sprintf(failMessage, e1, e2), msgAndArgs...) } return true } + +func containsValue(values []CompareType, value CompareType) bool { + for _, v := range values { + if v == value { + return true + } + } + + return false +} diff --git a/vendor/github.com/stretchr/testify/assert/assertion_format.go b/vendor/github.com/stretchr/testify/assert/assertion_format.go index bf89ecd21..49370eb16 100644 --- a/vendor/github.com/stretchr/testify/assert/assertion_format.go +++ b/vendor/github.com/stretchr/testify/assert/assertion_format.go @@ -93,7 +93,7 @@ func EqualErrorf(t TestingT, theError error, errString string, msg string, args // EqualValuesf asserts that two objects are equal or convertable to the same types // and equal. // -// assert.EqualValuesf(t, uint32(123, "error message %s", "formatted"), int32(123)) +// assert.EqualValuesf(t, uint32(123), int32(123), "error message %s", "formatted") func EqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() @@ -127,7 +127,7 @@ func Eventuallyf(t TestingT, condition func() bool, waitFor time.Duration, tick // Exactlyf asserts that two objects are equal in value and type. // -// assert.Exactlyf(t, int32(123, "error message %s", "formatted"), int64(123)) +// assert.Exactlyf(t, int32(123), int64(123), "error message %s", "formatted") func Exactlyf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() @@ -173,7 +173,7 @@ func FileExistsf(t TestingT, path string, msg string, args ...interface{}) bool // Greaterf asserts that the first element is greater than the second // // assert.Greaterf(t, 2, 1, "error message %s", "formatted") -// assert.Greaterf(t, float64(2, "error message %s", "formatted"), float64(1)) +// assert.Greaterf(t, float64(2), float64(1), "error message %s", "formatted") // assert.Greaterf(t, "b", "a", "error message %s", "formatted") func Greaterf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { @@ -225,7 +225,7 @@ func HTTPBodyNotContainsf(t TestingT, handler http.HandlerFunc, method string, u // // assert.HTTPErrorf(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func HTTPErrorf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() @@ -237,7 +237,7 @@ func HTTPErrorf(t TestingT, handler http.HandlerFunc, method string, url string, // // assert.HTTPRedirectf(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() @@ -245,6 +245,18 @@ func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url stri return HTTPRedirect(t, handler, method, url, values, append([]interface{}{msg}, args...)...) } +// HTTPStatusCodef asserts that a specified handler returns a specified status code. +// +// assert.HTTPStatusCodef(t, myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted") +// +// Returns whether the assertion was successful (true) or not (false). +func HTTPStatusCodef(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msg string, args ...interface{}) bool { + if h, ok := t.(tHelper); ok { + h.Helper() + } + return HTTPStatusCode(t, handler, method, url, values, statuscode, append([]interface{}{msg}, args...)...) +} + // HTTPSuccessf asserts that a specified handler returns a success status code. // // assert.HTTPSuccessf(t, myHandler, "POST", "http://www.google.com", nil, "error message %s", "formatted") @@ -259,7 +271,7 @@ func HTTPSuccessf(t TestingT, handler http.HandlerFunc, method string, url strin // Implementsf asserts that an object is implemented by the specified interface. // -// assert.Implementsf(t, (*MyInterface, "error message %s", "formatted")(nil), new(MyObject)) +// assert.Implementsf(t, (*MyInterface)(nil), new(MyObject), "error message %s", "formatted") func Implementsf(t TestingT, interfaceObject interface{}, object interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { h.Helper() @@ -341,7 +353,7 @@ func Lenf(t TestingT, object interface{}, length int, msg string, args ...interf // Lessf asserts that the first element is less than the second // // assert.Lessf(t, 1, 2, "error message %s", "formatted") -// assert.Lessf(t, float64(1, "error message %s", "formatted"), float64(2)) +// assert.Lessf(t, float64(1), float64(2), "error message %s", "formatted") // assert.Lessf(t, "a", "b", "error message %s", "formatted") func Lessf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { @@ -454,6 +466,16 @@ func NotEqualf(t TestingT, expected interface{}, actual interface{}, msg string, return NotEqual(t, expected, actual, append([]interface{}{msg}, args...)...) } +// NotEqualValuesf asserts that two objects are not equal even when converted to the same type +// +// assert.NotEqualValuesf(t, obj1, obj2, "error message %s", "formatted") +func NotEqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) bool { + if h, ok := t.(tHelper); ok { + h.Helper() + } + return NotEqualValues(t, expected, actual, append([]interface{}{msg}, args...)...) +} + // NotNilf asserts that the specified object is not nil. // // assert.NotNilf(t, err, "error message %s", "formatted") @@ -476,7 +498,7 @@ func NotPanicsf(t TestingT, f PanicTestFunc, msg string, args ...interface{}) bo // NotRegexpf asserts that a specified regexp does not match a string. // -// assert.NotRegexpf(t, regexp.MustCompile("starts", "error message %s", "formatted"), "it's starting") +// assert.NotRegexpf(t, regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted") // assert.NotRegexpf(t, "^start", "it's not starting", "error message %s", "formatted") func NotRegexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { @@ -552,7 +574,7 @@ func PanicsWithValuef(t TestingT, expected interface{}, f PanicTestFunc, msg str // Regexpf asserts that a specified regexp matches a string. // -// assert.Regexpf(t, regexp.MustCompile("start", "error message %s", "formatted"), "it's starting") +// assert.Regexpf(t, regexp.MustCompile("start"), "it's starting", "error message %s", "formatted") // assert.Regexpf(t, "start...$", "it's not starting", "error message %s", "formatted") func Regexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) bool { if h, ok := t.(tHelper); ok { diff --git a/vendor/github.com/stretchr/testify/assert/assertion_forward.go b/vendor/github.com/stretchr/testify/assert/assertion_forward.go index 75ecdcaa2..9db889427 100644 --- a/vendor/github.com/stretchr/testify/assert/assertion_forward.go +++ b/vendor/github.com/stretchr/testify/assert/assertion_forward.go @@ -169,7 +169,7 @@ func (a *Assertions) EqualValues(expected interface{}, actual interface{}, msgAn // EqualValuesf asserts that two objects are equal or convertable to the same types // and equal. // -// a.EqualValuesf(uint32(123, "error message %s", "formatted"), int32(123)) +// a.EqualValuesf(uint32(123), int32(123), "error message %s", "formatted") func (a *Assertions) EqualValuesf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -251,7 +251,7 @@ func (a *Assertions) Exactly(expected interface{}, actual interface{}, msgAndArg // Exactlyf asserts that two objects are equal in value and type. // -// a.Exactlyf(int32(123, "error message %s", "formatted"), int64(123)) +// a.Exactlyf(int32(123), int64(123), "error message %s", "formatted") func (a *Assertions) Exactlyf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -370,7 +370,7 @@ func (a *Assertions) GreaterOrEqualf(e1 interface{}, e2 interface{}, msg string, // Greaterf asserts that the first element is greater than the second // // a.Greaterf(2, 1, "error message %s", "formatted") -// a.Greaterf(float64(2, "error message %s", "formatted"), float64(1)) +// a.Greaterf(float64(2), float64(1), "error message %s", "formatted") // a.Greaterf("b", "a", "error message %s", "formatted") func (a *Assertions) Greaterf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { @@ -447,7 +447,7 @@ func (a *Assertions) HTTPError(handler http.HandlerFunc, method string, url stri // // a.HTTPErrorf(myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func (a *Assertions) HTTPErrorf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -471,7 +471,7 @@ func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, method string, url s // // a.HTTPRedirectf(myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func (a *Assertions) HTTPRedirectf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -479,6 +479,30 @@ func (a *Assertions) HTTPRedirectf(handler http.HandlerFunc, method string, url return HTTPRedirectf(a.t, handler, method, url, values, msg, args...) } +// HTTPStatusCode asserts that a specified handler returns a specified status code. +// +// a.HTTPStatusCode(myHandler, "GET", "/notImplemented", nil, 501) +// +// Returns whether the assertion was successful (true) or not (false). +func (a *Assertions) HTTPStatusCode(handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msgAndArgs ...interface{}) bool { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + return HTTPStatusCode(a.t, handler, method, url, values, statuscode, msgAndArgs...) +} + +// HTTPStatusCodef asserts that a specified handler returns a specified status code. +// +// a.HTTPStatusCodef(myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted") +// +// Returns whether the assertion was successful (true) or not (false). +func (a *Assertions) HTTPStatusCodef(handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msg string, args ...interface{}) bool { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + return HTTPStatusCodef(a.t, handler, method, url, values, statuscode, msg, args...) +} + // HTTPSuccess asserts that a specified handler returns a success status code. // // a.HTTPSuccess(myHandler, "POST", "http://www.google.com", nil) @@ -515,7 +539,7 @@ func (a *Assertions) Implements(interfaceObject interface{}, object interface{}, // Implementsf asserts that an object is implemented by the specified interface. // -// a.Implementsf((*MyInterface, "error message %s", "formatted")(nil), new(MyObject)) +// a.Implementsf((*MyInterface)(nil), new(MyObject), "error message %s", "formatted") func (a *Assertions) Implementsf(interfaceObject interface{}, object interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -706,7 +730,7 @@ func (a *Assertions) LessOrEqualf(e1 interface{}, e2 interface{}, msg string, ar // Lessf asserts that the first element is less than the second // // a.Lessf(1, 2, "error message %s", "formatted") -// a.Lessf(float64(1, "error message %s", "formatted"), float64(2)) +// a.Lessf(float64(1), float64(2), "error message %s", "formatted") // a.Lessf("a", "b", "error message %s", "formatted") func (a *Assertions) Lessf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { @@ -884,6 +908,26 @@ func (a *Assertions) NotEqual(expected interface{}, actual interface{}, msgAndAr return NotEqual(a.t, expected, actual, msgAndArgs...) } +// NotEqualValues asserts that two objects are not equal even when converted to the same type +// +// a.NotEqualValues(obj1, obj2) +func (a *Assertions) NotEqualValues(expected interface{}, actual interface{}, msgAndArgs ...interface{}) bool { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + return NotEqualValues(a.t, expected, actual, msgAndArgs...) +} + +// NotEqualValuesf asserts that two objects are not equal even when converted to the same type +// +// a.NotEqualValuesf(obj1, obj2, "error message %s", "formatted") +func (a *Assertions) NotEqualValuesf(expected interface{}, actual interface{}, msg string, args ...interface{}) bool { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + return NotEqualValuesf(a.t, expected, actual, msg, args...) +} + // NotEqualf asserts that the specified values are NOT equal. // // a.NotEqualf(obj1, obj2, "error message %s", "formatted") @@ -950,7 +994,7 @@ func (a *Assertions) NotRegexp(rx interface{}, str interface{}, msgAndArgs ...in // NotRegexpf asserts that a specified regexp does not match a string. // -// a.NotRegexpf(regexp.MustCompile("starts", "error message %s", "formatted"), "it's starting") +// a.NotRegexpf(regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted") // a.NotRegexpf("^start", "it's not starting", "error message %s", "formatted") func (a *Assertions) NotRegexpf(rx interface{}, str interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { @@ -1102,7 +1146,7 @@ func (a *Assertions) Regexp(rx interface{}, str interface{}, msgAndArgs ...inter // Regexpf asserts that a specified regexp matches a string. // -// a.Regexpf(regexp.MustCompile("start", "error message %s", "formatted"), "it's starting") +// a.Regexpf(regexp.MustCompile("start"), "it's starting", "error message %s", "formatted") // a.Regexpf("start...$", "it's not starting", "error message %s", "formatted") func (a *Assertions) Regexpf(rx interface{}, str interface{}, msg string, args ...interface{}) bool { if h, ok := a.t.(tHelper); ok { diff --git a/vendor/github.com/stretchr/testify/assert/assertions.go b/vendor/github.com/stretchr/testify/assert/assertions.go index bdd81389a..914a10d83 100644 --- a/vendor/github.com/stretchr/testify/assert/assertions.go +++ b/vendor/github.com/stretchr/testify/assert/assertions.go @@ -19,7 +19,7 @@ import ( "github.com/davecgh/go-spew/spew" "github.com/pmezard/go-difflib/difflib" - yaml "gopkg.in/yaml.v2" + yaml "gopkg.in/yaml.v3" ) //go:generate sh -c "cd ../_codegen && go build && cd - && ../_codegen/_codegen -output-package=assert -template=assertion_format.go.tmpl" @@ -45,7 +45,7 @@ type BoolAssertionFunc func(TestingT, bool, ...interface{}) bool // for table driven tests. type ErrorAssertionFunc func(TestingT, error, ...interface{}) bool -// Comparison a custom function that returns true on success and false on failure +// Comparison is a custom function that returns true on success and false on failure type Comparison func() (success bool) /* @@ -104,11 +104,11 @@ the problem actually occurred in calling code.*/ // failed. func CallerInfo() []string { - pc := uintptr(0) - file := "" - line := 0 - ok := false - name := "" + var pc uintptr + var ok bool + var file string + var line int + var name string callers := []string{} for i := 0; ; i++ { @@ -429,14 +429,27 @@ func samePointers(first, second interface{}) bool { // to a type conversion in the Go grammar. func formatUnequalValues(expected, actual interface{}) (e string, a string) { if reflect.TypeOf(expected) != reflect.TypeOf(actual) { - return fmt.Sprintf("%T(%#v)", expected, expected), - fmt.Sprintf("%T(%#v)", actual, actual) + return fmt.Sprintf("%T(%s)", expected, truncatingFormat(expected)), + fmt.Sprintf("%T(%s)", actual, truncatingFormat(actual)) } switch expected.(type) { case time.Duration: return fmt.Sprintf("%v", expected), fmt.Sprintf("%v", actual) } - return fmt.Sprintf("%#v", expected), fmt.Sprintf("%#v", actual) + return truncatingFormat(expected), truncatingFormat(actual) +} + +// truncatingFormat formats the data and truncates it if it's too long. +// +// This helps keep formatted error messages lines from exceeding the +// bufio.MaxScanTokenSize max line length that the go testing framework imposes. +func truncatingFormat(data interface{}) string { + value := fmt.Sprintf("%#v", data) + max := bufio.MaxScanTokenSize - 100 // Give us some space the type info too if needed. + if len(value) > max { + value = value[0:max] + "<... truncated>" + } + return value } // EqualValues asserts that two objects are equal or convertable to the same types @@ -483,12 +496,12 @@ func Exactly(t TestingT, expected, actual interface{}, msgAndArgs ...interface{} // // assert.NotNil(t, err) func NotNil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } if !isNil(object) { return true } + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, "Expected value not to be nil.", msgAndArgs...) } @@ -529,12 +542,12 @@ func isNil(object interface{}) bool { // // assert.Nil(t, err) func Nil(t TestingT, object interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } if isNil(object) { return true } + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, fmt.Sprintf("Expected nil, but got: %#v", object), msgAndArgs...) } @@ -571,12 +584,11 @@ func isEmpty(object interface{}) bool { // // assert.Empty(t, obj) func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - pass := isEmpty(object) if !pass { + if h, ok := t.(tHelper); ok { + h.Helper() + } Fail(t, fmt.Sprintf("Should be empty, but was %v", object), msgAndArgs...) } @@ -591,12 +603,11 @@ func Empty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool { // assert.Equal(t, "two", obj[1]) // } func NotEmpty(t TestingT, object interface{}, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - pass := !isEmpty(object) if !pass { + if h, ok := t.(tHelper); ok { + h.Helper() + } Fail(t, fmt.Sprintf("Should NOT be empty, but was %v", object), msgAndArgs...) } @@ -639,16 +650,10 @@ func Len(t TestingT, object interface{}, length int, msgAndArgs ...interface{}) // // assert.True(t, myBool) func True(t TestingT, value bool, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - if h, ok := t.(interface { - Helper() - }); ok { - h.Helper() - } - - if value != true { + if !value { + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, "Should be true", msgAndArgs...) } @@ -660,11 +665,10 @@ func True(t TestingT, value bool, msgAndArgs ...interface{}) bool { // // assert.False(t, myBool) func False(t TestingT, value bool, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - - if value != false { + if value { + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, "Should be false", msgAndArgs...) } @@ -695,6 +699,21 @@ func NotEqual(t TestingT, expected, actual interface{}, msgAndArgs ...interface{ } +// NotEqualValues asserts that two objects are not equal even when converted to the same type +// +// assert.NotEqualValues(t, obj1, obj2) +func NotEqualValues(t TestingT, expected, actual interface{}, msgAndArgs ...interface{}) bool { + if h, ok := t.(tHelper); ok { + h.Helper() + } + + if ObjectsAreEqualValues(expected, actual) { + return Fail(t, fmt.Sprintf("Should not be: %#v\n", actual), msgAndArgs...) + } + + return true +} + // containsElement try loop over the list check if the list includes the element. // return (false, false) if impossible. // return (true, false) if element was not found. @@ -747,10 +766,10 @@ func Contains(t TestingT, s, contains interface{}, msgAndArgs ...interface{}) bo ok, found := includeElement(s, contains) if !ok { - return Fail(t, fmt.Sprintf("\"%s\" could not be applied builtin len()", s), msgAndArgs...) + return Fail(t, fmt.Sprintf("%#v could not be applied builtin len()", s), msgAndArgs...) } if !found { - return Fail(t, fmt.Sprintf("\"%s\" does not contain \"%s\"", s, contains), msgAndArgs...) + return Fail(t, fmt.Sprintf("%#v does not contain %#v", s, contains), msgAndArgs...) } return true @@ -881,27 +900,39 @@ func ElementsMatch(t TestingT, listA, listB interface{}, msgAndArgs ...interface return true } - aKind := reflect.TypeOf(listA).Kind() - bKind := reflect.TypeOf(listB).Kind() - - if aKind != reflect.Array && aKind != reflect.Slice { - return Fail(t, fmt.Sprintf("%q has an unsupported type %s", listA, aKind), msgAndArgs...) + if !isList(t, listA, msgAndArgs...) || !isList(t, listB, msgAndArgs...) { + return false } - if bKind != reflect.Array && bKind != reflect.Slice { - return Fail(t, fmt.Sprintf("%q has an unsupported type %s", listB, bKind), msgAndArgs...) + extraA, extraB := diffLists(listA, listB) + + if len(extraA) == 0 && len(extraB) == 0 { + return true } + return Fail(t, formatListDiff(listA, listB, extraA, extraB), msgAndArgs...) +} + +// isList checks that the provided value is array or slice. +func isList(t TestingT, list interface{}, msgAndArgs ...interface{}) (ok bool) { + kind := reflect.TypeOf(list).Kind() + if kind != reflect.Array && kind != reflect.Slice { + return Fail(t, fmt.Sprintf("%q has an unsupported type %s, expecting array or slice", list, kind), + msgAndArgs...) + } + return true +} + +// diffLists diffs two arrays/slices and returns slices of elements that are only in A and only in B. +// If some element is present multiple times, each instance is counted separately (e.g. if something is 2x in A and +// 5x in B, it will be 0x in extraA and 3x in extraB). The order of items in both lists is ignored. +func diffLists(listA, listB interface{}) (extraA, extraB []interface{}) { aValue := reflect.ValueOf(listA) bValue := reflect.ValueOf(listB) aLen := aValue.Len() bLen := bValue.Len() - if aLen != bLen { - return Fail(t, fmt.Sprintf("lengths don't match: %d != %d", aLen, bLen), msgAndArgs...) - } - // Mark indexes in bValue that we already used visited := make([]bool, bLen) for i := 0; i < aLen; i++ { @@ -918,11 +949,38 @@ func ElementsMatch(t TestingT, listA, listB interface{}, msgAndArgs ...interface } } if !found { - return Fail(t, fmt.Sprintf("element %s appears more times in %s than in %s", element, aValue, bValue), msgAndArgs...) + extraA = append(extraA, element) } } - return true + for j := 0; j < bLen; j++ { + if visited[j] { + continue + } + extraB = append(extraB, bValue.Index(j).Interface()) + } + + return +} + +func formatListDiff(listA, listB interface{}, extraA, extraB []interface{}) string { + var msg bytes.Buffer + + msg.WriteString("elements differ") + if len(extraA) > 0 { + msg.WriteString("\n\nextra elements in list A:\n") + msg.WriteString(spewConfig.Sdump(extraA)) + } + if len(extraB) > 0 { + msg.WriteString("\n\nextra elements in list B:\n") + msg.WriteString(spewConfig.Sdump(extraB)) + } + msg.WriteString("\n\nlistA:\n") + msg.WriteString(spewConfig.Sdump(listA)) + msg.WriteString("\n\nlistB:\n") + msg.WriteString(spewConfig.Sdump(listB)) + + return msg.String() } // Condition uses a Comparison to assert a complex condition. @@ -1058,6 +1116,8 @@ func toFloat(x interface{}) (float64, bool) { xok := true switch xn := x.(type) { + case uint: + xf = float64(xn) case uint8: xf = float64(xn) case uint16: @@ -1079,7 +1139,7 @@ func toFloat(x interface{}) (float64, bool) { case float32: xf = float64(xn) case float64: - xf = float64(xn) + xf = xn case time.Duration: xf = float64(xn) default: @@ -1193,6 +1253,9 @@ func calcRelativeError(expected, actual interface{}) (float64, error) { if !aok { return 0, fmt.Errorf("expected value %q cannot be converted to float", expected) } + if math.IsNaN(af) { + return 0, errors.New("expected value must not be NaN") + } if af == 0 { return 0, fmt.Errorf("expected value must have a value other than zero to calculate the relative error") } @@ -1200,6 +1263,9 @@ func calcRelativeError(expected, actual interface{}) (float64, error) { if !bok { return 0, fmt.Errorf("actual value %q cannot be converted to float", actual) } + if math.IsNaN(bf) { + return 0, errors.New("actual value must not be NaN") + } return math.Abs(af-bf) / math.Abs(af), nil } @@ -1209,6 +1275,9 @@ func InEpsilon(t TestingT, expected, actual interface{}, epsilon float64, msgAnd if h, ok := t.(tHelper); ok { h.Helper() } + if math.IsNaN(epsilon) { + return Fail(t, "epsilon must not be NaN") + } actualEpsilon, err := calcRelativeError(expected, actual) if err != nil { return Fail(t, err.Error(), msgAndArgs...) @@ -1256,10 +1325,10 @@ func InEpsilonSlice(t TestingT, expected, actual interface{}, epsilon float64, m // assert.Equal(t, expectedObj, actualObj) // } func NoError(t TestingT, err error, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } if err != nil { + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, fmt.Sprintf("Received unexpected error:\n%+v", err), msgAndArgs...) } @@ -1273,11 +1342,10 @@ func NoError(t TestingT, err error, msgAndArgs ...interface{}) bool { // assert.Equal(t, expectedError, err) // } func Error(t TestingT, err error, msgAndArgs ...interface{}) bool { - if h, ok := t.(tHelper); ok { - h.Helper() - } - if err == nil { + if h, ok := t.(tHelper); ok { + h.Helper() + } return Fail(t, "An error is expected but got nil.", msgAndArgs...) } @@ -1553,6 +1621,7 @@ var spewConfig = spew.ConfigState{ DisablePointerAddresses: true, DisableCapacities: true, SortKeys: true, + DisableMethods: true, } type tHelper interface { diff --git a/vendor/github.com/stretchr/testify/assert/http_assertions.go b/vendor/github.com/stretchr/testify/assert/http_assertions.go index df46fa777..4ed341dd2 100644 --- a/vendor/github.com/stretchr/testify/assert/http_assertions.go +++ b/vendor/github.com/stretchr/testify/assert/http_assertions.go @@ -33,7 +33,6 @@ func HTTPSuccess(t TestingT, handler http.HandlerFunc, method, url string, value code, err := httpCode(handler, method, url, values) if err != nil { Fail(t, fmt.Sprintf("Failed to build test request, got error: %s", err)) - return false } isSuccessCode := code >= http.StatusOK && code <= http.StatusPartialContent @@ -56,7 +55,6 @@ func HTTPRedirect(t TestingT, handler http.HandlerFunc, method, url string, valu code, err := httpCode(handler, method, url, values) if err != nil { Fail(t, fmt.Sprintf("Failed to build test request, got error: %s", err)) - return false } isRedirectCode := code >= http.StatusMultipleChoices && code <= http.StatusTemporaryRedirect @@ -79,7 +77,6 @@ func HTTPError(t TestingT, handler http.HandlerFunc, method, url string, values code, err := httpCode(handler, method, url, values) if err != nil { Fail(t, fmt.Sprintf("Failed to build test request, got error: %s", err)) - return false } isErrorCode := code >= http.StatusBadRequest @@ -90,6 +87,28 @@ func HTTPError(t TestingT, handler http.HandlerFunc, method, url string, values return isErrorCode } +// HTTPStatusCode asserts that a specified handler returns a specified status code. +// +// assert.HTTPStatusCode(t, myHandler, "GET", "/notImplemented", nil, 501) +// +// Returns whether the assertion was successful (true) or not (false). +func HTTPStatusCode(t TestingT, handler http.HandlerFunc, method, url string, values url.Values, statuscode int, msgAndArgs ...interface{}) bool { + if h, ok := t.(tHelper); ok { + h.Helper() + } + code, err := httpCode(handler, method, url, values) + if err != nil { + Fail(t, fmt.Sprintf("Failed to build test request, got error: %s", err)) + } + + successful := code == statuscode + if !successful { + Fail(t, fmt.Sprintf("Expected HTTP status code %d for %q but received %d", statuscode, url+"?"+values.Encode(), code)) + } + + return successful +} + // HTTPBody is a helper that returns HTTP body of the response. It returns // empty string if building a new request fails. func HTTPBody(handler http.HandlerFunc, method, url string, values url.Values) string { diff --git a/vendor/github.com/stretchr/testify/mock/mock.go b/vendor/github.com/stretchr/testify/mock/mock.go index 58e0798da..c6df4485a 100644 --- a/vendor/github.com/stretchr/testify/mock/mock.go +++ b/vendor/github.com/stretchr/testify/mock/mock.go @@ -65,6 +65,11 @@ type Call struct { // reference. It's useful when mocking methods such as unmarshalers or // decoders. RunFn func(Arguments) + + // PanicMsg holds msg to be used to mock panic on the function call + // if the PanicMsg is set to a non nil string the function call will panic + // irrespective of other settings + PanicMsg *string } func newCall(parent *Mock, methodName string, callerInfo []string, methodArguments ...interface{}) *Call { @@ -77,6 +82,7 @@ func newCall(parent *Mock, methodName string, callerInfo []string, methodArgumen Repeatability: 0, WaitFor: nil, RunFn: nil, + PanicMsg: nil, } } @@ -100,6 +106,18 @@ func (c *Call) Return(returnArguments ...interface{}) *Call { return c } +// Panic specifies if the functon call should fail and the panic message +// +// Mock.On("DoSomething").Panic("test panic") +func (c *Call) Panic(msg string) *Call { + c.lock() + defer c.unlock() + + c.PanicMsg = &msg + + return c +} + // Once indicates that that the mock should only return the value once. // // Mock.On("MyMethod", arg1, arg2).Return(returnArg1, returnArg2).Once() @@ -150,7 +168,7 @@ func (c *Call) After(d time.Duration) *Call { // mocking a method (such as an unmarshaler) that takes a pointer to a struct and // sets properties in such struct // -// Mock.On("Unmarshal", AnythingOfType("*map[string]interface{}").Return().Run(func(args Arguments) { +// Mock.On("Unmarshal", AnythingOfType("*map[string]interface{}")).Return().Run(func(args Arguments) { // arg := args.Get(0).(*map[string]interface{}) // arg["foo"] = "bar" // }) @@ -392,6 +410,13 @@ func (m *Mock) MethodCalled(methodName string, arguments ...interface{}) Argumen time.Sleep(call.waitTime) } + m.mutex.Lock() + panicMsg := call.PanicMsg + m.mutex.Unlock() + if panicMsg != nil { + panic(*panicMsg) + } + m.mutex.Lock() runFn := call.RunFn m.mutex.Unlock() @@ -527,6 +552,45 @@ func (m *Mock) AssertNotCalled(t TestingT, methodName string, arguments ...inter return true } +// IsMethodCallable checking that the method can be called +// If the method was called more than `Repeatability` return false +func (m *Mock) IsMethodCallable(t TestingT, methodName string, arguments ...interface{}) bool { + if h, ok := t.(tHelper); ok { + h.Helper() + } + m.mutex.Lock() + defer m.mutex.Unlock() + + for _, v := range m.ExpectedCalls { + if v.Method != methodName { + continue + } + if len(arguments) != len(v.Arguments) { + continue + } + if v.Repeatability < v.totalCalls { + continue + } + if isArgsEqual(v.Arguments, arguments) { + return true + } + } + return false +} + +// isArgsEqual compares arguments +func isArgsEqual(expected Arguments, args []interface{}) bool { + if len(expected) != len(args) { + return false + } + for i, v := range args { + if !reflect.DeepEqual(expected[i], v) { + return false + } + } + return true +} + func (m *Mock) methodWasCalled(methodName string, expected []interface{}) bool { for _, call := range m.calls() { if call.Method == methodName { @@ -791,7 +855,7 @@ func (args Arguments) String(indexOrNil ...int) string { // normal String() method - return a string representation of the args var argsStr []string for _, arg := range args { - argsStr = append(argsStr, fmt.Sprintf("%s", reflect.TypeOf(arg))) + argsStr = append(argsStr, fmt.Sprintf("%T", arg)) // handles nil nicely } return strings.Join(argsStr, ",") } else if len(indexOrNil) == 1 { diff --git a/vendor/github.com/stretchr/testify/require/require.go b/vendor/github.com/stretchr/testify/require/require.go index cf6c7b566..ec4624b28 100644 --- a/vendor/github.com/stretchr/testify/require/require.go +++ b/vendor/github.com/stretchr/testify/require/require.go @@ -212,7 +212,7 @@ func EqualValues(t TestingT, expected interface{}, actual interface{}, msgAndArg // EqualValuesf asserts that two objects are equal or convertable to the same types // and equal. // -// assert.EqualValuesf(t, uint32(123, "error message %s", "formatted"), int32(123)) +// assert.EqualValuesf(t, uint32(123), int32(123), "error message %s", "formatted") func EqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { h.Helper() @@ -315,7 +315,7 @@ func Exactly(t TestingT, expected interface{}, actual interface{}, msgAndArgs .. // Exactlyf asserts that two objects are equal in value and type. // -// assert.Exactlyf(t, int32(123, "error message %s", "formatted"), int64(123)) +// assert.Exactlyf(t, int32(123), int64(123), "error message %s", "formatted") func Exactlyf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { h.Helper() @@ -470,7 +470,7 @@ func GreaterOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, arg // Greaterf asserts that the first element is greater than the second // // assert.Greaterf(t, 2, 1, "error message %s", "formatted") -// assert.Greaterf(t, float64(2, "error message %s", "formatted"), float64(1)) +// assert.Greaterf(t, float64(2), float64(1), "error message %s", "formatted") // assert.Greaterf(t, "b", "a", "error message %s", "formatted") func Greaterf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { @@ -565,7 +565,7 @@ func HTTPError(t TestingT, handler http.HandlerFunc, method string, url string, // // assert.HTTPErrorf(t, myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func HTTPErrorf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { h.Helper() @@ -595,7 +595,7 @@ func HTTPRedirect(t TestingT, handler http.HandlerFunc, method string, url strin // // assert.HTTPRedirectf(t, myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { h.Helper() @@ -606,6 +606,36 @@ func HTTPRedirectf(t TestingT, handler http.HandlerFunc, method string, url stri t.FailNow() } +// HTTPStatusCode asserts that a specified handler returns a specified status code. +// +// assert.HTTPStatusCode(t, myHandler, "GET", "/notImplemented", nil, 501) +// +// Returns whether the assertion was successful (true) or not (false). +func HTTPStatusCode(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msgAndArgs ...interface{}) { + if h, ok := t.(tHelper); ok { + h.Helper() + } + if assert.HTTPStatusCode(t, handler, method, url, values, statuscode, msgAndArgs...) { + return + } + t.FailNow() +} + +// HTTPStatusCodef asserts that a specified handler returns a specified status code. +// +// assert.HTTPStatusCodef(t, myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted") +// +// Returns whether the assertion was successful (true) or not (false). +func HTTPStatusCodef(t TestingT, handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msg string, args ...interface{}) { + if h, ok := t.(tHelper); ok { + h.Helper() + } + if assert.HTTPStatusCodef(t, handler, method, url, values, statuscode, msg, args...) { + return + } + t.FailNow() +} + // HTTPSuccess asserts that a specified handler returns a success status code. // // assert.HTTPSuccess(t, myHandler, "POST", "http://www.google.com", nil) @@ -651,7 +681,7 @@ func Implements(t TestingT, interfaceObject interface{}, object interface{}, msg // Implementsf asserts that an object is implemented by the specified interface. // -// assert.Implementsf(t, (*MyInterface, "error message %s", "formatted")(nil), new(MyObject)) +// assert.Implementsf(t, (*MyInterface)(nil), new(MyObject), "error message %s", "formatted") func Implementsf(t TestingT, interfaceObject interface{}, object interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { h.Helper() @@ -902,7 +932,7 @@ func LessOrEqualf(t TestingT, e1 interface{}, e2 interface{}, msg string, args . // Lessf asserts that the first element is less than the second // // assert.Lessf(t, 1, 2, "error message %s", "formatted") -// assert.Lessf(t, float64(1, "error message %s", "formatted"), float64(2)) +// assert.Lessf(t, float64(1), float64(2), "error message %s", "formatted") // assert.Lessf(t, "a", "b", "error message %s", "formatted") func Lessf(t TestingT, e1 interface{}, e2 interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { @@ -1128,6 +1158,32 @@ func NotEqual(t TestingT, expected interface{}, actual interface{}, msgAndArgs . t.FailNow() } +// NotEqualValues asserts that two objects are not equal even when converted to the same type +// +// assert.NotEqualValues(t, obj1, obj2) +func NotEqualValues(t TestingT, expected interface{}, actual interface{}, msgAndArgs ...interface{}) { + if h, ok := t.(tHelper); ok { + h.Helper() + } + if assert.NotEqualValues(t, expected, actual, msgAndArgs...) { + return + } + t.FailNow() +} + +// NotEqualValuesf asserts that two objects are not equal even when converted to the same type +// +// assert.NotEqualValuesf(t, obj1, obj2, "error message %s", "formatted") +func NotEqualValuesf(t TestingT, expected interface{}, actual interface{}, msg string, args ...interface{}) { + if h, ok := t.(tHelper); ok { + h.Helper() + } + if assert.NotEqualValuesf(t, expected, actual, msg, args...) { + return + } + t.FailNow() +} + // NotEqualf asserts that the specified values are NOT equal. // // assert.NotEqualf(t, obj1, obj2, "error message %s", "formatted") @@ -1212,7 +1268,7 @@ func NotRegexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interf // NotRegexpf asserts that a specified regexp does not match a string. // -// assert.NotRegexpf(t, regexp.MustCompile("starts", "error message %s", "formatted"), "it's starting") +// assert.NotRegexpf(t, regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted") // assert.NotRegexpf(t, "^start", "it's not starting", "error message %s", "formatted") func NotRegexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { @@ -1406,7 +1462,7 @@ func Regexp(t TestingT, rx interface{}, str interface{}, msgAndArgs ...interface // Regexpf asserts that a specified regexp matches a string. // -// assert.Regexpf(t, regexp.MustCompile("start", "error message %s", "formatted"), "it's starting") +// assert.Regexpf(t, regexp.MustCompile("start"), "it's starting", "error message %s", "formatted") // assert.Regexpf(t, "start...$", "it's not starting", "error message %s", "formatted") func Regexpf(t TestingT, rx interface{}, str interface{}, msg string, args ...interface{}) { if h, ok := t.(tHelper); ok { diff --git a/vendor/github.com/stretchr/testify/require/require_forward.go b/vendor/github.com/stretchr/testify/require/require_forward.go index 5aac226df..103d7dcb6 100644 --- a/vendor/github.com/stretchr/testify/require/require_forward.go +++ b/vendor/github.com/stretchr/testify/require/require_forward.go @@ -170,7 +170,7 @@ func (a *Assertions) EqualValues(expected interface{}, actual interface{}, msgAn // EqualValuesf asserts that two objects are equal or convertable to the same types // and equal. // -// a.EqualValuesf(uint32(123, "error message %s", "formatted"), int32(123)) +// a.EqualValuesf(uint32(123), int32(123), "error message %s", "formatted") func (a *Assertions) EqualValuesf(expected interface{}, actual interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -252,7 +252,7 @@ func (a *Assertions) Exactly(expected interface{}, actual interface{}, msgAndArg // Exactlyf asserts that two objects are equal in value and type. // -// a.Exactlyf(int32(123, "error message %s", "formatted"), int64(123)) +// a.Exactlyf(int32(123), int64(123), "error message %s", "formatted") func (a *Assertions) Exactlyf(expected interface{}, actual interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -371,7 +371,7 @@ func (a *Assertions) GreaterOrEqualf(e1 interface{}, e2 interface{}, msg string, // Greaterf asserts that the first element is greater than the second // // a.Greaterf(2, 1, "error message %s", "formatted") -// a.Greaterf(float64(2, "error message %s", "formatted"), float64(1)) +// a.Greaterf(float64(2), float64(1), "error message %s", "formatted") // a.Greaterf("b", "a", "error message %s", "formatted") func (a *Assertions) Greaterf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { @@ -448,7 +448,7 @@ func (a *Assertions) HTTPError(handler http.HandlerFunc, method string, url stri // // a.HTTPErrorf(myHandler, "POST", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func (a *Assertions) HTTPErrorf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -472,7 +472,7 @@ func (a *Assertions) HTTPRedirect(handler http.HandlerFunc, method string, url s // // a.HTTPRedirectf(myHandler, "GET", "/a/b/c", url.Values{"a": []string{"b", "c"}} // -// Returns whether the assertion was successful (true, "error message %s", "formatted") or not (false). +// Returns whether the assertion was successful (true) or not (false). func (a *Assertions) HTTPRedirectf(handler http.HandlerFunc, method string, url string, values url.Values, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -480,6 +480,30 @@ func (a *Assertions) HTTPRedirectf(handler http.HandlerFunc, method string, url HTTPRedirectf(a.t, handler, method, url, values, msg, args...) } +// HTTPStatusCode asserts that a specified handler returns a specified status code. +// +// a.HTTPStatusCode(myHandler, "GET", "/notImplemented", nil, 501) +// +// Returns whether the assertion was successful (true) or not (false). +func (a *Assertions) HTTPStatusCode(handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msgAndArgs ...interface{}) { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + HTTPStatusCode(a.t, handler, method, url, values, statuscode, msgAndArgs...) +} + +// HTTPStatusCodef asserts that a specified handler returns a specified status code. +// +// a.HTTPStatusCodef(myHandler, "GET", "/notImplemented", nil, 501, "error message %s", "formatted") +// +// Returns whether the assertion was successful (true) or not (false). +func (a *Assertions) HTTPStatusCodef(handler http.HandlerFunc, method string, url string, values url.Values, statuscode int, msg string, args ...interface{}) { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + HTTPStatusCodef(a.t, handler, method, url, values, statuscode, msg, args...) +} + // HTTPSuccess asserts that a specified handler returns a success status code. // // a.HTTPSuccess(myHandler, "POST", "http://www.google.com", nil) @@ -516,7 +540,7 @@ func (a *Assertions) Implements(interfaceObject interface{}, object interface{}, // Implementsf asserts that an object is implemented by the specified interface. // -// a.Implementsf((*MyInterface, "error message %s", "formatted")(nil), new(MyObject)) +// a.Implementsf((*MyInterface)(nil), new(MyObject), "error message %s", "formatted") func (a *Assertions) Implementsf(interfaceObject interface{}, object interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { h.Helper() @@ -707,7 +731,7 @@ func (a *Assertions) LessOrEqualf(e1 interface{}, e2 interface{}, msg string, ar // Lessf asserts that the first element is less than the second // // a.Lessf(1, 2, "error message %s", "formatted") -// a.Lessf(float64(1, "error message %s", "formatted"), float64(2)) +// a.Lessf(float64(1), float64(2), "error message %s", "formatted") // a.Lessf("a", "b", "error message %s", "formatted") func (a *Assertions) Lessf(e1 interface{}, e2 interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { @@ -885,6 +909,26 @@ func (a *Assertions) NotEqual(expected interface{}, actual interface{}, msgAndAr NotEqual(a.t, expected, actual, msgAndArgs...) } +// NotEqualValues asserts that two objects are not equal even when converted to the same type +// +// a.NotEqualValues(obj1, obj2) +func (a *Assertions) NotEqualValues(expected interface{}, actual interface{}, msgAndArgs ...interface{}) { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + NotEqualValues(a.t, expected, actual, msgAndArgs...) +} + +// NotEqualValuesf asserts that two objects are not equal even when converted to the same type +// +// a.NotEqualValuesf(obj1, obj2, "error message %s", "formatted") +func (a *Assertions) NotEqualValuesf(expected interface{}, actual interface{}, msg string, args ...interface{}) { + if h, ok := a.t.(tHelper); ok { + h.Helper() + } + NotEqualValuesf(a.t, expected, actual, msg, args...) +} + // NotEqualf asserts that the specified values are NOT equal. // // a.NotEqualf(obj1, obj2, "error message %s", "formatted") @@ -951,7 +995,7 @@ func (a *Assertions) NotRegexp(rx interface{}, str interface{}, msgAndArgs ...in // NotRegexpf asserts that a specified regexp does not match a string. // -// a.NotRegexpf(regexp.MustCompile("starts", "error message %s", "formatted"), "it's starting") +// a.NotRegexpf(regexp.MustCompile("starts"), "it's starting", "error message %s", "formatted") // a.NotRegexpf("^start", "it's not starting", "error message %s", "formatted") func (a *Assertions) NotRegexpf(rx interface{}, str interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { @@ -1103,7 +1147,7 @@ func (a *Assertions) Regexp(rx interface{}, str interface{}, msgAndArgs ...inter // Regexpf asserts that a specified regexp matches a string. // -// a.Regexpf(regexp.MustCompile("start", "error message %s", "formatted"), "it's starting") +// a.Regexpf(regexp.MustCompile("start"), "it's starting", "error message %s", "formatted") // a.Regexpf("start...$", "it's not starting", "error message %s", "formatted") func (a *Assertions) Regexpf(rx interface{}, str interface{}, msg string, args ...interface{}) { if h, ok := a.t.(tHelper); ok { diff --git a/vendor/go.uber.org/goleak/.travis.yml b/vendor/go.uber.org/goleak/.travis.yml index b215cef17..dfdb5b6d9 100644 --- a/vendor/go.uber.org/goleak/.travis.yml +++ b/vendor/go.uber.org/goleak/.travis.yml @@ -10,6 +10,7 @@ matrix: include: - go: 1.12.x - go: 1.13.x + - go: 1.14.x env: LINT=1 install: diff --git a/vendor/go.uber.org/goleak/CHANGELOG.md b/vendor/go.uber.org/goleak/CHANGELOG.md index 2dfb98f61..ba3df4f37 100644 --- a/vendor/go.uber.org/goleak/CHANGELOG.md +++ b/vendor/go.uber.org/goleak/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [1.1.0] +### Added +- [#49]: Add option to ignore current goroutines, which checks for any additional leaks and allows for incremental adoption of goleak in larger projects. + +Thanks to @denis-tingajkin for their contributions to this release. + ## [1.0.0] ### Changed - Migrate to Go modules. @@ -15,3 +21,4 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Initial release. [1.0.0]: https://github.com/uber-go/goleak/compare/v0.10.0...v1.0.0 +[#49]: https://github.com/uber-go/goleak/pull/49 diff --git a/vendor/go.uber.org/goleak/README.md b/vendor/go.uber.org/goleak/README.md index 8702de9fd..b8a748b08 100644 --- a/vendor/go.uber.org/goleak/README.md +++ b/vendor/go.uber.org/goleak/README.md @@ -2,10 +2,6 @@ Goroutine leak detector to help avoid Goroutine leaks. -## Development Status: Alpha - -goleak is still in development, and APIs are still in flux. - ## Installation You can use `go get` to get the latest version: @@ -50,7 +46,7 @@ $ go test -c -o tests # Run each test individually, printing "." for successful tests, or the test name # for failing tests. -$ for test in $(go test -list . | grep "^Test"); do ./tests -test.run "^$test\$" &>/dev/null && echo -n "." || echo "\n$test failed"; done +$ for test in $(go test -list . | grep -E "^(Test|Example)"); do ./tests -test.run "^$test\$" &>/dev/null && echo -n "." || echo "\n$test failed"; done ``` This will only print names of failing tests which can be investigated individually. E.g., @@ -61,6 +57,11 @@ TestLeakyTest failed ....... ``` +## Stability + +goleak is v1 and follows [SemVer](http://semver.org/) strictly. + +No breaking changes will be made to exported APIs before 2.0. [doc-img]: https://godoc.org/go.uber.org/goleak?status.svg [doc]: https://godoc.org/go.uber.org/goleak diff --git a/vendor/go.uber.org/goleak/options.go b/vendor/go.uber.org/goleak/options.go index e011ba1b8..0f6bd9e79 100644 --- a/vendor/go.uber.org/goleak/options.go +++ b/vendor/go.uber.org/goleak/options.go @@ -57,6 +57,18 @@ func IgnoreTopFunction(f string) Option { }) } +// IgnoreCurrent records all current goroutines when the option is created, and ignores +// them in any future Find/Verify calls. +func IgnoreCurrent() Option { + excludeIDSet := map[int]bool{} + for _, s := range stack.All() { + excludeIDSet[s.ID()] = true + } + return addFilter(func(s stack.Stack) bool { + return excludeIDSet[s.ID()] + }) +} + func maxSleep(d time.Duration) Option { return optionFunc(func(opts *opts) { opts.maxSleep = d diff --git a/vendor/golang.org/x/sys/cpu/cpu_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_arm64.go index 951078f2e..87dd5e302 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_arm64.go +++ b/vendor/golang.org/x/sys/cpu/cpu_arm64.go @@ -39,31 +39,34 @@ func initOptions() { func archInit() { switch runtime.GOOS { - case "android", "darwin", "ios", "netbsd": - // Android and iOS don't seem to allow reading these registers. - // - // NetBSD: - // ID_AA64ISAR0_EL1 is a privileged register and cannot be read from EL0. - // It can be read via sysctl(3). Example for future implementers: - // https://nxr.netbsd.org/xref/src/usr.sbin/cpuctl/arch/aarch64.c - // - // Fake the minimal features expected by - // TestARM64minimalFeatures. - ARM64.HasASIMD = true - ARM64.HasFP = true - case "linux": + case "freebsd": + readARM64Registers() + case "linux", "netbsd": doinit() default: - readARM64Registers() + // Most platforms don't seem to allow reading these registers. + // + // OpenBSD: + // See https://golang.org/issue/31746 + setMinimalFeatures() } } +// setMinimalFeatures fakes the minimal ARM64 features expected by +// TestARM64minimalFeatures. +func setMinimalFeatures() { + ARM64.HasASIMD = true + ARM64.HasFP = true +} + func readARM64Registers() { Initialized = true - // ID_AA64ISAR0_EL1 - isar0 := getisar0() + parseARM64SystemRegisters(getisar0(), getisar1(), getpfr0()) +} +func parseARM64SystemRegisters(isar0, isar1, pfr0 uint64) { + // ID_AA64ISAR0_EL1 switch extractBits(isar0, 4, 7) { case 1: ARM64.HasAES = true @@ -121,8 +124,6 @@ func readARM64Registers() { } // ID_AA64ISAR1_EL1 - isar1 := getisar1() - switch extractBits(isar1, 0, 3) { case 1: ARM64.HasDCPOP = true @@ -144,8 +145,6 @@ func readARM64Registers() { } // ID_AA64PFR0_EL1 - pfr0 := getpfr0() - switch extractBits(pfr0, 16, 19) { case 0: ARM64.HasFP = true diff --git a/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go new file mode 100644 index 000000000..ebfb3fc8e --- /dev/null +++ b/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go @@ -0,0 +1,173 @@ +// Copyright 2020 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package cpu + +import ( + "syscall" + "unsafe" +) + +// Minimal copy of functionality from x/sys/unix so the cpu package can call +// sysctl without depending on x/sys/unix. + +const ( + _CTL_QUERY = -2 + + _SYSCTL_VERS_1 = 0x1000000 +) + +var _zero uintptr + +func sysctl(mib []int32, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { + var _p0 unsafe.Pointer + if len(mib) > 0 { + _p0 = unsafe.Pointer(&mib[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + _, _, errno := syscall.Syscall6( + syscall.SYS___SYSCTL, + uintptr(_p0), + uintptr(len(mib)), + uintptr(unsafe.Pointer(old)), + uintptr(unsafe.Pointer(oldlen)), + uintptr(unsafe.Pointer(new)), + uintptr(newlen)) + if errno != 0 { + return errno + } + return nil +} + +type sysctlNode struct { + Flags uint32 + Num int32 + Name [32]int8 + Ver uint32 + __rsvd uint32 + Un [16]byte + _sysctl_size [8]byte + _sysctl_func [8]byte + _sysctl_parent [8]byte + _sysctl_desc [8]byte +} + +func sysctlNodes(mib []int32) ([]sysctlNode, error) { + var olen uintptr + + // Get a list of all sysctl nodes below the given MIB by performing + // a sysctl for the given MIB with CTL_QUERY appended. + mib = append(mib, _CTL_QUERY) + qnode := sysctlNode{Flags: _SYSCTL_VERS_1} + qp := (*byte)(unsafe.Pointer(&qnode)) + sz := unsafe.Sizeof(qnode) + if err := sysctl(mib, nil, &olen, qp, sz); err != nil { + return nil, err + } + + // Now that we know the size, get the actual nodes. + nodes := make([]sysctlNode, olen/sz) + np := (*byte)(unsafe.Pointer(&nodes[0])) + if err := sysctl(mib, np, &olen, qp, sz); err != nil { + return nil, err + } + + return nodes, nil +} + +func nametomib(name string) ([]int32, error) { + // Split name into components. + var parts []string + last := 0 + for i := 0; i < len(name); i++ { + if name[i] == '.' { + parts = append(parts, name[last:i]) + last = i + 1 + } + } + parts = append(parts, name[last:]) + + mib := []int32{} + // Discover the nodes and construct the MIB OID. + for partno, part := range parts { + nodes, err := sysctlNodes(mib) + if err != nil { + return nil, err + } + for _, node := range nodes { + n := make([]byte, 0) + for i := range node.Name { + if node.Name[i] != 0 { + n = append(n, byte(node.Name[i])) + } + } + if string(n) == part { + mib = append(mib, int32(node.Num)) + break + } + } + if len(mib) != partno+1 { + return nil, err + } + } + + return mib, nil +} + +// aarch64SysctlCPUID is struct aarch64_sysctl_cpu_id from NetBSD's +type aarch64SysctlCPUID struct { + midr uint64 /* Main ID Register */ + revidr uint64 /* Revision ID Register */ + mpidr uint64 /* Multiprocessor Affinity Register */ + aa64dfr0 uint64 /* A64 Debug Feature Register 0 */ + aa64dfr1 uint64 /* A64 Debug Feature Register 1 */ + aa64isar0 uint64 /* A64 Instruction Set Attribute Register 0 */ + aa64isar1 uint64 /* A64 Instruction Set Attribute Register 1 */ + aa64mmfr0 uint64 /* A64 Memory Model Feature Register 0 */ + aa64mmfr1 uint64 /* A64 Memory Model Feature Register 1 */ + aa64mmfr2 uint64 /* A64 Memory Model Feature Register 2 */ + aa64pfr0 uint64 /* A64 Processor Feature Register 0 */ + aa64pfr1 uint64 /* A64 Processor Feature Register 1 */ + aa64zfr0 uint64 /* A64 SVE Feature ID Register 0 */ + mvfr0 uint32 /* Media and VFP Feature Register 0 */ + mvfr1 uint32 /* Media and VFP Feature Register 1 */ + mvfr2 uint32 /* Media and VFP Feature Register 2 */ + pad uint32 + clidr uint64 /* Cache Level ID Register */ + ctr uint64 /* Cache Type Register */ +} + +func sysctlCPUID(name string) (*aarch64SysctlCPUID, error) { + mib, err := nametomib(name) + if err != nil { + return nil, err + } + + out := aarch64SysctlCPUID{} + n := unsafe.Sizeof(out) + _, _, errno := syscall.Syscall6( + syscall.SYS___SYSCTL, + uintptr(unsafe.Pointer(&mib[0])), + uintptr(len(mib)), + uintptr(unsafe.Pointer(&out)), + uintptr(unsafe.Pointer(&n)), + uintptr(0), + uintptr(0)) + if errno != 0 { + return nil, errno + } + return &out, nil +} + +func doinit() { + cpuid, err := sysctlCPUID("machdep.cpu0.cpu_id") + if err != nil { + setMinimalFeatures() + return + } + parseARM64SystemRegisters(cpuid.aa64isar0, cpuid.aa64isar1, cpuid.aa64pfr0) + + Initialized = true +} diff --git a/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go b/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go index 3ffc4afa0..16c1c4090 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go +++ b/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go @@ -2,7 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// +build !linux,arm64 +// +build !linux,!netbsd +// +build arm64 package cpu diff --git a/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go index fc0e50e03..8db48e5e0 100644 --- a/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +++ b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go @@ -1,9 +1,9 @@ -// +build linux,386 linux,arm linux,mips linux,mipsle - // Copyright 2014 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +// +build linux,386 linux,arm linux,mips linux,mipsle + package unix func init() { diff --git a/vendor/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh index 197301fb8..2363df863 100644 --- a/vendor/golang.org/x/sys/unix/mkerrors.sh +++ b/vendor/golang.org/x/sys/unix/mkerrors.sh @@ -59,6 +59,7 @@ includes_Darwin=' #include #include #include +#include #include #include #include @@ -94,6 +95,7 @@ includes_DragonFly=' #include #include #include +#include #include #include #include @@ -372,6 +374,7 @@ includes_SunOS=' #include #include #include +#include #include #include #include @@ -496,6 +499,7 @@ ccflags="$@" $2 !~ "NLA_TYPE_MASK" && $2 !~ /^RTC_VL_(ACCURACY|BACKUP|DATA)/ && $2 ~ /^(NETLINK|NLM|NLMSG|NLA|IFA|IFAN|RT|RTC|RTCF|RTN|RTPROT|RTNH|ARPHRD|ETH_P|NETNSA)_/ || + $2 ~ /^FIORDCHK$/ || $2 ~ /^SIOC/ || $2 ~ /^TIOC/ || $2 ~ /^TCGET/ || @@ -516,6 +520,7 @@ ccflags="$@" $2 ~ /^CAP_/ || $2 ~ /^CP_/ || $2 ~ /^CPUSTATES$/ || + $2 ~ /^CTLIOCGINFO$/ || $2 ~ /^ALG_/ || $2 ~ /^FI(CLONE|DEDUPERANGE)/ || $2 ~ /^FS_(POLICY_FLAGS|KEY_DESC|ENCRYPTION_MODE|[A-Z0-9_]+_KEY_SIZE)/ || diff --git a/vendor/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go index fd4ee8ebe..ab75ef9cc 100644 --- a/vendor/golang.org/x/sys/unix/syscall.go +++ b/vendor/golang.org/x/sys/unix/syscall.go @@ -24,7 +24,13 @@ // holds a value of type syscall.Errno. package unix // import "golang.org/x/sys/unix" -import "strings" +import ( + "bytes" + "strings" + "unsafe" + + "golang.org/x/sys/internal/unsafeheader" +) // ByteSliceFromString returns a NUL-terminated slice of bytes // containing the text of s. If s contains a NUL byte at any @@ -49,5 +55,40 @@ func BytePtrFromString(s string) (*byte, error) { return &a[0], nil } +// ByteSliceToString returns a string form of the text represented by the slice s, with a terminating NUL and any +// bytes after the NUL removed. +func ByteSliceToString(s []byte) string { + if i := bytes.IndexByte(s, 0); i != -1 { + s = s[:i] + } + return string(s) +} + +// BytePtrToString takes a pointer to a sequence of text and returns the corresponding string. +// If the pointer is nil, it returns the empty string. It assumes that the text sequence is terminated +// at a zero byte; if the zero byte is not present, the program may crash. +func BytePtrToString(p *byte) string { + if p == nil { + return "" + } + if *p == 0 { + return "" + } + + // Find NUL terminator. + n := 0 + for ptr := unsafe.Pointer(p); *(*byte)(ptr) != 0; n++ { + ptr = unsafe.Pointer(uintptr(ptr) + 1) + } + + var s []byte + h := (*unsafeheader.Slice)(unsafe.Pointer(&s)) + h.Data = unsafe.Pointer(p) + h.Len = n + h.Cap = n + + return string(s) +} + // Single-word zero for use when we need a valid pointer to 0 bytes. var _zero uintptr diff --git a/vendor/golang.org/x/sys/unix/syscall_aix.go b/vendor/golang.org/x/sys/unix/syscall_aix.go index 9ad8a0d4a..440815382 100644 --- a/vendor/golang.org/x/sys/unix/syscall_aix.go +++ b/vendor/golang.org/x/sys/unix/syscall_aix.go @@ -19,6 +19,22 @@ import "unsafe" * Wrapped */ +func Access(path string, mode uint32) (err error) { + return Faccessat(AT_FDCWD, path, mode, 0) +} + +func Chmod(path string, mode uint32) (err error) { + return Fchmodat(AT_FDCWD, path, mode, 0) +} + +func Chown(path string, uid int, gid int) (err error) { + return Fchownat(AT_FDCWD, path, uid, gid, 0) +} + +func Creat(path string, mode uint32) (fd int, err error) { + return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode) +} + //sys utimes(path string, times *[2]Timeval) (err error) func Utimes(path string, tv []Timeval) error { if len(tv) != 2 { diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.go b/vendor/golang.org/x/sys/unix/syscall_darwin.go index 21b8092cd..5b0e831f2 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin.go @@ -13,6 +13,7 @@ package unix import ( + "runtime" "syscall" "unsafe" ) @@ -257,6 +258,12 @@ func Kill(pid int, signum syscall.Signal) (err error) { return kill(pid, int(sig //sys ioctl(fd int, req uint, arg uintptr) (err error) +func IoctlCtlInfo(fd int, ctlInfo *CtlInfo) error { + err := ioctl(fd, CTLIOCGINFO, uintptr(unsafe.Pointer(ctlInfo))) + runtime.KeepAlive(ctlInfo) + return err +} + //sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS_SYSCTL func Uname(uname *Utsname) error { diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go index ea0be1e92..6c1f4ab95 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go @@ -6,11 +6,7 @@ package unix -import ( - "syscall" -) - -//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) +import "syscall" func setTimespec(sec, nsec int64) Timespec { return Timespec{Sec: int32(sec), Nsec: int32(nsec)} @@ -49,5 +45,6 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, //sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64 //sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64 //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 +//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 //sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64 diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go index 586240448..0582ae256 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go @@ -6,11 +6,7 @@ package unix -import ( - "syscall" -) - -//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) +import "syscall" func setTimespec(sec, nsec int64) Timespec { return Timespec{Sec: sec, Nsec: nsec} @@ -49,5 +45,6 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, //sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64 //sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64 //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 +//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 //sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64 diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go index b8b314181..c6a9733b4 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go @@ -4,9 +4,7 @@ package unix -import ( - "syscall" -) +import "syscall" func ptrace(request int, pid int, addr uintptr, data uintptr) error { return ENOTSUP diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go index 674139837..253afa4de 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go @@ -6,13 +6,7 @@ package unix -import ( - "syscall" -) - -func ptrace(request int, pid int, addr uintptr, data uintptr) error { - return ENOTSUP -} +import "syscall" func setTimespec(sec, nsec int64) Timespec { return Timespec{Sec: sec, Nsec: nsec} @@ -51,5 +45,6 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, //sys Fstatfs(fd int, stat *Statfs_t) (err error) //sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT //sys Lstat(path string, stat *Stat_t) (err error) +//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) //sys Stat(path string, stat *Stat_t) (err error) //sys Statfs(path string, stat *Statfs_t) (err error) diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go index 048d18e3c..c97c2ee53 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_386.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_386.go @@ -2,9 +2,6 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP) -// so that go vet can check that they are correct. - // +build 386,linux package unix diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go index 6f333594b..c8f9f7a1f 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go +++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go @@ -251,6 +251,7 @@ const ( CSTOP = 0x13 CSTOPB = 0x400 CSUSP = 0x1a + CTLIOCGINFO = 0xc0644e03 CTL_HW = 0x6 CTL_KERN = 0x1 CTL_MAXNAME = 0xc diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go index db767eb25..7180064b2 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go @@ -251,6 +251,7 @@ const ( CSTOP = 0x13 CSTOPB = 0x400 CSUSP = 0x1a + CTLIOCGINFO = 0xc0644e03 CTL_HW = 0x6 CTL_KERN = 0x1 CTL_MAXNAME = 0xc diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go index ddc5d001b..3b9ca7585 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go +++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go @@ -251,6 +251,7 @@ const ( CSTOP = 0x13 CSTOPB = 0x400 CSUSP = 0x1a + CTLIOCGINFO = 0xc0644e03 CTL_HW = 0x6 CTL_KERN = 0x1 CTL_MAXNAME = 0xc diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go index 0614d26d0..4687c73ac 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go @@ -251,6 +251,7 @@ const ( CSTOP = 0x13 CSTOPB = 0x400 CSUSP = 0x1a + CTLIOCGINFO = 0xc0644e03 CTL_HW = 0x6 CTL_KERN = 0x1 CTL_MAXNAME = 0xc diff --git a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go index 613047174..f5e91b7ab 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go @@ -62,6 +62,7 @@ const ( B28800 = 0x7080 B300 = 0x12c B38400 = 0x9600 + B460800 = 0x70800 B4800 = 0x12c0 B50 = 0x32 B57600 = 0xe100 @@ -69,12 +70,15 @@ const ( B7200 = 0x1c20 B75 = 0x4b B76800 = 0x12c00 + B921600 = 0xe1000 B9600 = 0x2580 + BIOCFEEDBACK = 0x8004427d BIOCFLUSH = 0x20004268 BIOCGBLEN = 0x40044266 BIOCGDLT = 0x4004426a BIOCGDLTLIST = 0xc0104279 BIOCGETIF = 0x4020426b + BIOCGFEEDBACK = 0x4004427c BIOCGHDRCMPLT = 0x40044274 BIOCGRSIG = 0x40044272 BIOCGRTIMEOUT = 0x4010426e @@ -88,6 +92,7 @@ const ( BIOCSETF = 0x80104267 BIOCSETIF = 0x8020426c BIOCSETWF = 0x8010427b + BIOCSFEEDBACK = 0x8004427d BIOCSHDRCMPLT = 0x80044275 BIOCSRSIG = 0x80044273 BIOCSRTIMEOUT = 0x8010426d @@ -125,6 +130,7 @@ const ( BPF_MINBUFSIZE = 0x20 BPF_MINOR_VERSION = 0x1 BPF_MISC = 0x7 + BPF_MOD = 0x90 BPF_MSH = 0xa0 BPF_MUL = 0x20 BPF_NEG = 0x80 @@ -139,6 +145,7 @@ const ( BPF_TXA = 0x80 BPF_W = 0x0 BPF_X = 0x8 + BPF_XOR = 0xa0 BRKINT = 0x2 CFLUSH = 0xf CLOCAL = 0x8000 @@ -156,6 +163,12 @@ const ( CLOCK_UPTIME_FAST = 0x8 CLOCK_UPTIME_PRECISE = 0x7 CLOCK_VIRTUAL = 0x1 + CPUSTATES = 0x5 + CP_IDLE = 0x4 + CP_INTR = 0x3 + CP_NICE = 0x1 + CP_SYS = 0x2 + CP_USER = 0x0 CREAD = 0x800 CRTSCTS = 0x30000 CS5 = 0x0 @@ -175,6 +188,7 @@ const ( DLT_A429 = 0xb8 DLT_A653_ICM = 0xb9 DLT_AIRONET_HEADER = 0x78 + DLT_AOS = 0xde DLT_APPLE_IP_OVER_IEEE1394 = 0x8a DLT_ARCNET = 0x7 DLT_ARCNET_LINUX = 0x81 @@ -184,22 +198,33 @@ const ( DLT_AX25 = 0x3 DLT_AX25_KISS = 0xca DLT_BACNET_MS_TP = 0xa5 + DLT_BLUETOOTH_BREDR_BB = 0xff DLT_BLUETOOTH_HCI_H4 = 0xbb DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 + DLT_BLUETOOTH_LE_LL = 0xfb + DLT_BLUETOOTH_LE_LL_WITH_PHDR = 0x100 + DLT_BLUETOOTH_LINUX_MONITOR = 0xfe DLT_CAN20B = 0xbe + DLT_CAN_SOCKETCAN = 0xe3 DLT_CHAOS = 0x5 DLT_CHDLC = 0x68 DLT_CISCO_IOS = 0x76 DLT_C_HDLC = 0x68 DLT_C_HDLC_WITH_DIR = 0xcd + DLT_DBUS = 0xe7 + DLT_DECT = 0xdd DLT_DOCSIS = 0x8f + DLT_DVB_CI = 0xeb DLT_ECONET = 0x73 DLT_EN10MB = 0x1 DLT_EN3MB = 0x2 DLT_ENC = 0x6d + DLT_EPON = 0x103 DLT_ERF = 0xc5 DLT_ERF_ETH = 0xaf DLT_ERF_POS = 0xb0 + DLT_FC_2 = 0xe0 + DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 DLT_FDDI = 0xa DLT_FLEXRAY = 0xd2 DLT_FRELAY = 0x6b @@ -209,6 +234,8 @@ const ( DLT_GPF_F = 0xab DLT_GPF_T = 0xaa DLT_GPRS_LLC = 0xa9 + DLT_GSMTAP_ABIS = 0xda + DLT_GSMTAP_UM = 0xd9 DLT_HHDLC = 0x79 DLT_IBM_SN = 0x92 DLT_IBM_SP = 0x91 @@ -218,18 +245,28 @@ const ( DLT_IEEE802_11_RADIO_AVS = 0xa3 DLT_IEEE802_15_4 = 0xc3 DLT_IEEE802_15_4_LINUX = 0xbf + DLT_IEEE802_15_4_NOFCS = 0xe6 DLT_IEEE802_15_4_NONASK_PHY = 0xd7 DLT_IEEE802_16_MAC_CPS = 0xbc DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 + DLT_INFINIBAND = 0xf7 DLT_IPFILTER = 0x74 DLT_IPMB = 0xc7 DLT_IPMB_LINUX = 0xd1 + DLT_IPMI_HPM_2 = 0x104 + DLT_IPNET = 0xe2 + DLT_IPOIB = 0xf2 + DLT_IPV4 = 0xe4 + DLT_IPV6 = 0xe5 DLT_IP_OVER_FC = 0x7a + DLT_ISO_14443 = 0x108 DLT_JUNIPER_ATM1 = 0x89 DLT_JUNIPER_ATM2 = 0x87 + DLT_JUNIPER_ATM_CEMIC = 0xee DLT_JUNIPER_CHDLC = 0xb5 DLT_JUNIPER_ES = 0x84 DLT_JUNIPER_ETHER = 0xb2 + DLT_JUNIPER_FIBRECHANNEL = 0xea DLT_JUNIPER_FRELAY = 0xb4 DLT_JUNIPER_GGSN = 0x85 DLT_JUNIPER_ISM = 0xc2 @@ -242,25 +279,40 @@ const ( DLT_JUNIPER_PPPOE = 0xa7 DLT_JUNIPER_PPPOE_ATM = 0xa8 DLT_JUNIPER_SERVICES = 0x88 + DLT_JUNIPER_SRX_E2E = 0xe9 DLT_JUNIPER_ST = 0xc8 DLT_JUNIPER_VP = 0xb7 + DLT_JUNIPER_VS = 0xe8 DLT_LAPB_WITH_DIR = 0xcf DLT_LAPD = 0xcb DLT_LIN = 0xd4 + DLT_LINUX_EVDEV = 0xd8 DLT_LINUX_IRDA = 0x90 DLT_LINUX_LAPD = 0xb1 DLT_LINUX_SLL = 0x71 DLT_LOOP = 0x6c DLT_LTALK = 0x72 + DLT_MATCHING_MAX = 0x109 + DLT_MATCHING_MIN = 0x68 DLT_MFR = 0xb6 DLT_MOST = 0xd3 + DLT_MPEG_2_TS = 0xf3 + DLT_MPLS = 0xdb DLT_MTP2 = 0x8c DLT_MTP2_WITH_PHDR = 0x8b DLT_MTP3 = 0x8d + DLT_MUX27010 = 0xec + DLT_NETANALYZER = 0xf0 + DLT_NETANALYZER_TRANSPARENT = 0xf1 + DLT_NETLINK = 0xfd + DLT_NFC_LLCP = 0xf5 + DLT_NFLOG = 0xef + DLT_NG40 = 0xf4 DLT_NULL = 0x0 DLT_PCI_EXP = 0x7d DLT_PFLOG = 0x75 DLT_PFSYNC = 0x12 + DLT_PKTAP = 0x102 DLT_PPI = 0xc0 DLT_PPP = 0x9 DLT_PPP_BSDOS = 0x10 @@ -269,22 +321,51 @@ const ( DLT_PPP_SERIAL = 0x32 DLT_PPP_WITH_DIR = 0xcc DLT_PRISM_HEADER = 0x77 + DLT_PROFIBUS_DL = 0x101 DLT_PRONET = 0x4 DLT_RAIF1 = 0xc6 DLT_RAW = 0xc + DLT_RDS = 0x109 DLT_REDBACK_SMARTEDGE = 0x20 DLT_RIO = 0x7c + DLT_RTAC_SERIAL = 0xfa DLT_SCCP = 0x8e + DLT_SCTP = 0xf8 DLT_SITA = 0xc4 DLT_SLIP = 0x8 DLT_SLIP_BSDOS = 0xf + DLT_STANAG_5066_D_PDU = 0xed DLT_SUNATM = 0x7b DLT_SYMANTEC_FIREWALL = 0x63 DLT_TZSP = 0x80 DLT_USB = 0xba + DLT_USBPCAP = 0xf9 + DLT_USB_FREEBSD = 0xba DLT_USB_LINUX = 0xbd + DLT_USB_LINUX_MMAPPED = 0xdc + DLT_USER0 = 0x93 + DLT_USER1 = 0x94 + DLT_USER10 = 0x9d + DLT_USER11 = 0x9e + DLT_USER12 = 0x9f + DLT_USER13 = 0xa0 + DLT_USER14 = 0xa1 + DLT_USER15 = 0xa2 + DLT_USER2 = 0x95 + DLT_USER3 = 0x96 + DLT_USER4 = 0x97 + DLT_USER5 = 0x98 + DLT_USER6 = 0x99 + DLT_USER7 = 0x9a + DLT_USER8 = 0x9b + DLT_USER9 = 0x9c + DLT_WATTSTOPPER_DLM = 0x107 + DLT_WIHART = 0xdf + DLT_WIRESHARK_UPPER_PDU = 0xfc DLT_X2E_SERIAL = 0xd5 DLT_X2E_XORAYA = 0xd6 + DLT_ZWAVE_R1_R2 = 0x105 + DLT_ZWAVE_R3 = 0x106 DT_BLK = 0x6 DT_CHR = 0x2 DT_DBF = 0xf @@ -323,10 +404,11 @@ const ( EV_EOF = 0x8000 EV_ERROR = 0x4000 EV_FLAG1 = 0x2000 + EV_HUP = 0x800 EV_NODATA = 0x1000 EV_ONESHOT = 0x10 EV_RECEIPT = 0x40 - EV_SYSFLAGS = 0xf000 + EV_SYSFLAGS = 0xf800 EXTA = 0x4b00 EXTB = 0x9600 EXTEXIT_LWP = 0x10000 @@ -365,8 +447,9 @@ const ( IFF_ALLMULTI = 0x200 IFF_ALTPHYS = 0x4000 IFF_BROADCAST = 0x2 - IFF_CANTCHANGE = 0x118e72 + IFF_CANTCHANGE = 0x318e72 IFF_DEBUG = 0x4 + IFF_IDIRECT = 0x200000 IFF_LINK0 = 0x1000 IFF_LINK1 = 0x2000 IFF_LINK2 = 0x4000 @@ -441,7 +524,6 @@ const ( IFT_EPLRS = 0x57 IFT_ESCON = 0x49 IFT_ETHER = 0x6 - IFT_FAITH = 0xf2 IFT_FAST = 0x7d IFT_FASTETHER = 0x3e IFT_FASTETHERFX = 0x45 @@ -614,6 +696,7 @@ const ( IN_CLASSD_NET = 0xf0000000 IN_CLASSD_NSHIFT = 0x1c IN_LOOPBACKNET = 0x7f + IN_RFC3021_MASK = 0xfffffffe IPPROTO_3PC = 0x22 IPPROTO_ADFS = 0x44 IPPROTO_AH = 0x33 @@ -735,7 +818,6 @@ const ( IPV6_DEFHLIM = 0x40 IPV6_DONTFRAG = 0x3e IPV6_DSTOPTS = 0x32 - IPV6_FAITH = 0x1d IPV6_FLOWINFO_MASK = 0xffffff0f IPV6_FLOWLABEL_MASK = 0xffff0f00 IPV6_FRAGTTL = 0x78 @@ -747,7 +829,6 @@ const ( IPV6_HLIMDEC = 0x1 IPV6_HOPLIMIT = 0x2f IPV6_HOPOPTS = 0x31 - IPV6_IPSEC_POLICY = 0x1c IPV6_JOIN_GROUP = 0xc IPV6_LEAVE_GROUP = 0xd IPV6_MAXHLIM = 0xff @@ -795,16 +876,22 @@ const ( IP_DUMMYNET_DEL = 0x3d IP_DUMMYNET_FLUSH = 0x3e IP_DUMMYNET_GET = 0x40 - IP_FAITH = 0x16 IP_FW_ADD = 0x32 IP_FW_DEL = 0x33 IP_FW_FLUSH = 0x34 IP_FW_GET = 0x36 IP_FW_RESETLOG = 0x37 + IP_FW_TBL_ADD = 0x2a + IP_FW_TBL_CREATE = 0x28 + IP_FW_TBL_DEL = 0x2b + IP_FW_TBL_DESTROY = 0x29 + IP_FW_TBL_EXPIRE = 0x2f + IP_FW_TBL_FLUSH = 0x2c + IP_FW_TBL_GET = 0x2d + IP_FW_TBL_ZERO = 0x2e IP_FW_X = 0x31 IP_FW_ZERO = 0x35 IP_HDRINCL = 0x2 - IP_IPSEC_POLICY = 0x15 IP_MAXPACKET = 0xffff IP_MAX_MEMBERSHIPS = 0x14 IP_MF = 0x2000 @@ -1080,12 +1167,10 @@ const ( RTM_MISS = 0x7 RTM_NEWADDR = 0xc RTM_NEWMADDR = 0xf - RTM_OLDADD = 0x9 - RTM_OLDDEL = 0xa RTM_REDIRECT = 0x6 RTM_RESOLVE = 0xb RTM_RTTUNIT = 0xf4240 - RTM_VERSION = 0x6 + RTM_VERSION = 0x7 RTV_EXPIRE = 0x4 RTV_HOPCOUNT = 0x2 RTV_IWCAPSEGS = 0x400 @@ -1106,13 +1191,13 @@ const ( SHUT_RDWR = 0x2 SHUT_WR = 0x1 SIOCADDMULTI = 0x80206931 - SIOCADDRT = 0x8040720a SIOCAIFADDR = 0x8040691a + SIOCAIFGROUP = 0x80286987 SIOCALIFADDR = 0x8118691b SIOCATMARK = 0x40047307 SIOCDELMULTI = 0x80206932 - SIOCDELRT = 0x8040720b SIOCDIFADDR = 0x80206919 + SIOCDIFGROUP = 0x80286989 SIOCDIFPHYADDR = 0x80206949 SIOCDLIFADDR = 0x8118691d SIOCGDRVSPEC = 0xc028697b @@ -1120,6 +1205,7 @@ const ( SIOCGETVIFCNT = 0xc028720f SIOCGHIWAT = 0x40047301 SIOCGIFADDR = 0xc0206921 + SIOCGIFALIAS = 0xc0406929 SIOCGIFBRDADDR = 0xc0206923 SIOCGIFCAP = 0xc020691f SIOCGIFCONF = 0xc0106924 @@ -1128,6 +1214,7 @@ const ( SIOCGIFFLAGS = 0xc0206911 SIOCGIFGENERIC = 0xc020693a SIOCGIFGMEMB = 0xc028698a + SIOCGIFGROUP = 0xc0286988 SIOCGIFINDEX = 0xc0206920 SIOCGIFMEDIA = 0xc0306938 SIOCGIFMETRIC = 0xc0206917 @@ -1194,6 +1281,7 @@ const ( SO_RCVBUF = 0x1002 SO_RCVLOWAT = 0x1004 SO_RCVTIMEO = 0x1006 + SO_RERROR = 0x2000 SO_REUSEADDR = 0x4 SO_REUSEPORT = 0x200 SO_SNDBUF = 0x1001 @@ -1233,6 +1321,9 @@ const ( S_IXGRP = 0x8 S_IXOTH = 0x1 S_IXUSR = 0x40 + TAB0 = 0x0 + TAB3 = 0x4 + TABDLY = 0x4 TCIFLUSH = 0x1 TCIOFF = 0x3 TCIOFLUSH = 0x3 @@ -1259,6 +1350,8 @@ const ( TCP_NOPUSH = 0x4 TCP_SIGNATURE_ENABLE = 0x10 TCSAFLUSH = 0x2 + TIMER_ABSTIME = 0x1 + TIMER_RELTIME = 0x0 TIOCCBRK = 0x2000747a TIOCCDTR = 0x20007478 TIOCCONS = 0x80047462 @@ -1272,7 +1365,6 @@ const ( TIOCGETD = 0x4004741a TIOCGPGRP = 0x40047477 TIOCGSID = 0x40047463 - TIOCGSIZE = 0x40087468 TIOCGWINSZ = 0x40087468 TIOCISPTMASTER = 0x20007455 TIOCMBIC = 0x8004746b @@ -1317,7 +1409,6 @@ const ( TIOCSETD = 0x8004741b TIOCSIG = 0x2000745f TIOCSPGRP = 0x80047476 - TIOCSSIZE = 0x80087467 TIOCSTART = 0x2000746e TIOCSTAT = 0x20007465 TIOCSTI = 0x80017472 @@ -1326,6 +1417,8 @@ const ( TIOCTIMESTAMP = 0x40107459 TIOCUCNTL = 0x80047466 TOSTOP = 0x400000 + UTIME_NOW = -0x1 + UTIME_OMIT = -0x2 VCHECKPT = 0x13 VDISCARD = 0xf VDSUSP = 0xb @@ -1350,9 +1443,12 @@ const ( VWERASE = 0x4 WCONTINUED = 0x4 WCOREFLAG = 0x80 + WEXITED = 0x10 WLINUXCLONE = 0x80000000 WNOHANG = 0x1 - WSTOPPED = 0x7f + WNOWAIT = 0x8 + WSTOPPED = 0x2 + WTRAPPED = 0x20 WUNTRACED = 0x2 ) @@ -1452,11 +1548,6 @@ const ( ETIMEDOUT = syscall.Errno(0x3c) ETOOMANYREFS = syscall.Errno(0x3b) ETXTBSY = syscall.Errno(0x1a) - EUNUSED94 = syscall.Errno(0x5e) - EUNUSED95 = syscall.Errno(0x5f) - EUNUSED96 = syscall.Errno(0x60) - EUNUSED97 = syscall.Errno(0x61) - EUNUSED98 = syscall.Errno(0x62) EUSERS = syscall.Errno(0x44) EWOULDBLOCK = syscall.Errno(0x23) EXDEV = syscall.Errno(0x12) @@ -1600,12 +1691,7 @@ var errorList = [...]struct { {91, "ENOLINK", "link has been severed"}, {92, "EPROTO", "protocol error"}, {93, "ENOMEDIUM", "no medium found"}, - {94, "EUNUSED94", "unknown error: 94"}, - {95, "EUNUSED95", "unknown error: 95"}, - {96, "EUNUSED96", "unknown error: 96"}, - {97, "EUNUSED97", "unknown error: 97"}, - {98, "EUNUSED98", "unknown error: 98"}, - {99, "ELAST", "unknown error: 99"}, + {99, "EASYNC", "unknown error: 99"}, } // Signal table diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go index 6232b2eb8..2069fb861 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go @@ -324,6 +324,7 @@ const ( CAP_AUDIT_WRITE = 0x1d CAP_BLOCK_SUSPEND = 0x24 CAP_BPF = 0x27 + CAP_CHECKPOINT_RESTORE = 0x28 CAP_CHOWN = 0x0 CAP_DAC_OVERRIDE = 0x1 CAP_DAC_READ_SEARCH = 0x2 @@ -332,7 +333,7 @@ const ( CAP_IPC_LOCK = 0xe CAP_IPC_OWNER = 0xf CAP_KILL = 0x5 - CAP_LAST_CAP = 0x27 + CAP_LAST_CAP = 0x28 CAP_LEASE = 0x1c CAP_LINUX_IMMUTABLE = 0x9 CAP_MAC_ADMIN = 0x21 @@ -650,8 +651,8 @@ const ( FAN_DELETE = 0x200 FAN_DELETE_SELF = 0x400 FAN_DENY = 0x2 - FAN_DIR_MODIFY = 0x80000 FAN_ENABLE_AUDIT = 0x40 + FAN_EVENT_INFO_TYPE_DFID = 0x3 FAN_EVENT_INFO_TYPE_DFID_NAME = 0x2 FAN_EVENT_INFO_TYPE_FID = 0x1 FAN_EVENT_METADATA_LEN = 0x18 @@ -679,7 +680,10 @@ const ( FAN_OPEN_EXEC_PERM = 0x40000 FAN_OPEN_PERM = 0x10000 FAN_Q_OVERFLOW = 0x4000 + FAN_REPORT_DFID_NAME = 0xc00 + FAN_REPORT_DIR_FID = 0x400 FAN_REPORT_FID = 0x200 + FAN_REPORT_NAME = 0x800 FAN_REPORT_TID = 0x100 FAN_UNLIMITED_MARKS = 0x20 FAN_UNLIMITED_QUEUE = 0x10 @@ -1980,6 +1984,7 @@ const ( RTPROT_EIGRP = 0xc0 RTPROT_GATED = 0x8 RTPROT_ISIS = 0xbb + RTPROT_KEEPALIVED = 0x12 RTPROT_KERNEL = 0x2 RTPROT_MROUTED = 0x11 RTPROT_MRT = 0xa @@ -2170,6 +2175,7 @@ const ( SO_EE_ORIGIN_TXSTATUS = 0x4 SO_EE_ORIGIN_TXTIME = 0x6 SO_EE_ORIGIN_ZEROCOPY = 0x5 + SO_EE_RFC4884_FLAG_INVALID = 0x1 SO_GET_FILTER = 0x1a SO_NO_CHECK = 0xb SO_PEERNAME = 0x1c diff --git a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go index 46e054ccb..5312c36cc 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go @@ -192,6 +192,12 @@ const ( CSTOPB = 0x40 CSUSP = 0x1a CSWTCH = 0x1a + DIOC = 0x6400 + DIOCGETB = 0x6402 + DIOCGETC = 0x6401 + DIOCGETP = 0x6408 + DIOCSETE = 0x6403 + DIOCSETP = 0x6409 DLT_AIRONET_HEADER = 0x78 DLT_APPLE_IP_OVER_IEEE1394 = 0x8a DLT_ARCNET = 0x7 @@ -290,6 +296,7 @@ const ( FF0 = 0x0 FF1 = 0x8000 FFDLY = 0x8000 + FIORDCHK = 0x6603 FLUSHALL = 0x1 FLUSHDATA = 0x0 FLUSHO = 0x2000 @@ -645,6 +652,14 @@ const ( MAP_SHARED = 0x1 MAP_TEXT = 0x400 MAP_TYPE = 0xf + MCAST_BLOCK_SOURCE = 0x2b + MCAST_EXCLUDE = 0x2 + MCAST_INCLUDE = 0x1 + MCAST_JOIN_GROUP = 0x29 + MCAST_JOIN_SOURCE_GROUP = 0x2d + MCAST_LEAVE_GROUP = 0x2a + MCAST_LEAVE_SOURCE_GROUP = 0x2e + MCAST_UNBLOCK_SOURCE = 0x2c MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MSG_CTRUNC = 0x10 @@ -653,6 +668,7 @@ const ( MSG_DUPCTRL = 0x800 MSG_EOR = 0x8 MSG_MAXIOVLEN = 0x10 + MSG_NOSIGNAL = 0x200 MSG_NOTIFICATION = 0x100 MSG_OOB = 0x1 MSG_PEEK = 0x2 @@ -687,6 +703,7 @@ const ( O_APPEND = 0x8 O_CLOEXEC = 0x800000 O_CREAT = 0x100 + O_DIRECTORY = 0x1000000 O_DSYNC = 0x40 O_EXCL = 0x400 O_EXEC = 0x400000 @@ -725,7 +742,7 @@ const ( RLIMIT_FSIZE = 0x1 RLIMIT_NOFILE = 0x5 RLIMIT_STACK = 0x3 - RLIM_INFINITY = -0x3 + RLIM_INFINITY = 0xfffffffffffffffd RTAX_AUTHOR = 0x6 RTAX_BRD = 0x7 RTAX_DST = 0x0 @@ -1047,6 +1064,7 @@ const ( TCOON = 0x1 TCP_ABORT_THRESHOLD = 0x11 TCP_ANONPRIVBIND = 0x20 + TCP_CONGESTION = 0x25 TCP_CONN_ABORT_THRESHOLD = 0x13 TCP_CONN_NOTIFY_THRESHOLD = 0x12 TCP_CORK = 0x18 @@ -1076,6 +1094,8 @@ const ( TCSETSF = 0x5410 TCSETSW = 0x540f TCXONC = 0x5406 + TIMER_ABSTIME = 0x1 + TIMER_RELTIME = 0x0 TIOC = 0x5400 TIOCCBRK = 0x747a TIOCCDTR = 0x7478 diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go index bd13b3856..6eb457983 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go @@ -2434,21 +2434,6 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ptrace_trampoline() - -//go:linkname libc_ptrace libc_ptrace -//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - func Fstat(fd int, stat *Stat_t) (err error) { _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { @@ -2535,6 +2520,21 @@ func libc_lstat64_trampoline() // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { + _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +func libc_ptrace_trampoline() + +//go:linkname libc_ptrace libc_ptrace +//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Stat(path string, stat *Stat_t) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s index d5fb53fd1..1c53979a1 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s @@ -272,8 +272,6 @@ TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 JMP libc_mmap(SB) TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 JMP libc_munmap(SB) -TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ptrace(SB) TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_fstat64(SB) TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 @@ -284,6 +282,8 @@ TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_getfsstat64(SB) TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_lstat64(SB) +TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 + JMP libc_ptrace(SB) TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_stat64(SB) TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go index d81696f9e..889c14059 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go @@ -2434,21 +2434,6 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ptrace_trampoline() - -//go:linkname libc_ptrace libc_ptrace -//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - func Fstat(fd int, stat *Stat_t) (err error) { _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { @@ -2535,6 +2520,21 @@ func libc_lstat64_trampoline() // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { + _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +func libc_ptrace_trampoline() + +//go:linkname libc_ptrace libc_ptrace +//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Stat(path string, stat *Stat_t) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s index 887fd5f4e..c77bd6e20 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s @@ -272,8 +272,6 @@ TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 JMP libc_mmap(SB) TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 JMP libc_munmap(SB) -TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ptrace(SB) TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_fstat64(SB) TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 @@ -284,6 +282,8 @@ TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_getfsstat64(SB) TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_lstat64(SB) +TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 + JMP libc_ptrace(SB) TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 JMP libc_stat64(SB) TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go index 08638436c..23b65a530 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go @@ -2520,6 +2520,21 @@ func libc_lstat_trampoline() // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { + _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +func libc_ptrace_trampoline() + +//go:linkname libc_ptrace libc_ptrace +//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Stat(path string, stat *Stat_t) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s index 16aebee23..53c402bf6 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s @@ -282,6 +282,8 @@ TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0 JMP libc_getfsstat(SB) TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0 JMP libc_lstat(SB) +TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 + JMP libc_ptrace(SB) TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0 JMP libc_stat(SB) TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0 diff --git a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go index fe1fdd78d..aebfe511a 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go @@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { - var _p0 unsafe.Pointer - if len(mib) > 0 { - _p0 = unsafe.Pointer(&mib[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - func utimes(path string, timeval *[2]Timeval) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) @@ -439,6 +423,22 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { + var _p0 unsafe.Pointer + if len(mib) > 0 { + _p0 = unsafe.Pointer(&mib[0]) + } else { + _p0 = unsafe.Pointer(&_zero) + } + _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Access(path string, mode uint32) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go index 464c9a983..9912c6ee3 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go @@ -6,129 +6,125 @@ package unix const ( - // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int - SYS_EXIT = 1 // { void exit(int rval); } - SYS_FORK = 2 // { int fork(void); } - SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); } - SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); } - SYS_OPEN = 5 // { int open(char *path, int flags, int mode); } - SYS_CLOSE = 6 // { int close(int fd); } - SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int - SYS_LINK = 9 // { int link(char *path, char *link); } - SYS_UNLINK = 10 // { int unlink(char *path); } - SYS_CHDIR = 12 // { int chdir(char *path); } - SYS_FCHDIR = 13 // { int fchdir(int fd); } - SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } - SYS_CHMOD = 15 // { int chmod(char *path, int mode); } - SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } - SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int - SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); } - SYS_GETPID = 20 // { pid_t getpid(void); } - SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } - SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } - SYS_SETUID = 23 // { int setuid(uid_t uid); } - SYS_GETUID = 24 // { uid_t getuid(void); } - SYS_GETEUID = 25 // { uid_t geteuid(void); } - SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); } - SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); } - SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); } - SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); } - SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); } - SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); } - SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); } - SYS_ACCESS = 33 // { int access(char *path, int flags); } - SYS_CHFLAGS = 34 // { int chflags(char *path, int flags); } - SYS_FCHFLAGS = 35 // { int fchflags(int fd, int flags); } - SYS_SYNC = 36 // { int sync(void); } - SYS_KILL = 37 // { int kill(int pid, int signum); } - SYS_GETPPID = 39 // { pid_t getppid(void); } - SYS_DUP = 41 // { int dup(int fd); } - SYS_PIPE = 42 // { int pipe(void); } - SYS_GETEGID = 43 // { gid_t getegid(void); } - SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } - SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } - SYS_GETGID = 47 // { gid_t getgid(void); } - SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); } - SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); } - SYS_ACCT = 51 // { int acct(char *path); } - SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); } - SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); } - SYS_REBOOT = 55 // { int reboot(int opt); } - SYS_REVOKE = 56 // { int revoke(char *path); } - SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } - SYS_READLINK = 58 // { int readlink(char *path, char *buf, int count); } - SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } - SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int - SYS_CHROOT = 61 // { int chroot(char *path); } - SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } - SYS_VFORK = 66 // { pid_t vfork(void); } - SYS_SBRK = 69 // { int sbrk(int incr); } - SYS_SSTK = 70 // { int sstk(int incr); } - SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } - SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } - SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } - SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } - SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } - SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); } - SYS_GETPGRP = 81 // { int getpgrp(void); } - SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); } - SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); } - SYS_SWAPON = 85 // { int swapon(char *name); } - SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); } - SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); } - SYS_DUP2 = 90 // { int dup2(int from, int to); } - SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); } - SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } - SYS_FSYNC = 95 // { int fsync(int fd); } - SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); } - SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); } - SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); } - SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); } - SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); } - SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); } - SYS_LISTEN = 106 // { int listen(int s, int backlog); } - SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); } - SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); } - SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); } - SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); } - SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); } - SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); } - SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); } - SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); } - SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); } - SYS_SETREGID = 127 // { int setregid(int rgid, int egid); } - SYS_RENAME = 128 // { int rename(char *from, char *to); } - SYS_FLOCK = 131 // { int flock(int fd, int how); } - SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); } - SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); } - SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); } - SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); } - SYS_MKDIR = 136 // { int mkdir(char *path, int mode); } - SYS_RMDIR = 137 // { int rmdir(char *path); } - SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); } - SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); } - SYS_SETSID = 147 // { int setsid(void); } - SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); } - SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); } - SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); } - SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); } - SYS_GETDOMAINNAME = 162 // { int getdomainname(char *domainname, int len); } - SYS_SETDOMAINNAME = 163 // { int setdomainname(char *domainname, int len); } - SYS_UNAME = 164 // { int uname(struct utsname *name); } - SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); } - SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); } - SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); } - SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); } - SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); } - SYS_SETGID = 181 // { int setgid(gid_t gid); } - SYS_SETEGID = 182 // { int setegid(gid_t egid); } - SYS_SETEUID = 183 // { int seteuid(uid_t euid); } - SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } - SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } - SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int - SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int - SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); } - // SYS_NOSYS = 198; // { int nosys(void); } __syscall __syscall_args int + SYS_EXIT = 1 // { void exit(int rval); } + SYS_FORK = 2 // { int fork(void); } + SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); } + SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); } + SYS_OPEN = 5 // { int open(char *path, int flags, int mode); } + SYS_CLOSE = 6 // { int close(int fd); } + SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int + // SYS_NOSYS = 8; // { int nosys(void); } __nosys nosys_args int + SYS_LINK = 9 // { int link(char *path, char *link); } + SYS_UNLINK = 10 // { int unlink(char *path); } + SYS_CHDIR = 12 // { int chdir(char *path); } + SYS_FCHDIR = 13 // { int fchdir(int fd); } + SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } + SYS_CHMOD = 15 // { int chmod(char *path, int mode); } + SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } + SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int + SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); } + SYS_GETPID = 20 // { pid_t getpid(void); } + SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } + SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } + SYS_SETUID = 23 // { int setuid(uid_t uid); } + SYS_GETUID = 24 // { uid_t getuid(void); } + SYS_GETEUID = 25 // { uid_t geteuid(void); } + SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); } + SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); } + SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); } + SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); } + SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); } + SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); } + SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); } + SYS_ACCESS = 33 // { int access(char *path, int flags); } + SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); } + SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); } + SYS_SYNC = 36 // { int sync(void); } + SYS_KILL = 37 // { int kill(int pid, int signum); } + SYS_GETPPID = 39 // { pid_t getppid(void); } + SYS_DUP = 41 // { int dup(int fd); } + SYS_PIPE = 42 // { int pipe(void); } + SYS_GETEGID = 43 // { gid_t getegid(void); } + SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, u_long offset, u_int scale); } + SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } + SYS_GETGID = 47 // { gid_t getgid(void); } + SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, size_t namelen); } + SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); } + SYS_ACCT = 51 // { int acct(char *path); } + SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); } + SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); } + SYS_REBOOT = 55 // { int reboot(int opt); } + SYS_REVOKE = 56 // { int revoke(char *path); } + SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } + SYS_READLINK = 58 // { int readlink(char *path, char *buf, int count); } + SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } + SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int + SYS_CHROOT = 61 // { int chroot(char *path); } + SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } + SYS_VFORK = 66 // { pid_t vfork(void); } + SYS_SBRK = 69 // { caddr_t sbrk(size_t incr); } + SYS_SSTK = 70 // { int sstk(size_t incr); } + SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } + SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } + SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } + SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } + SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } + SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); } + SYS_GETPGRP = 81 // { int getpgrp(void); } + SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); } + SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); } + SYS_SWAPON = 85 // { int swapon(char *name); } + SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); } + SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); } + SYS_DUP2 = 90 // { int dup2(int from, int to); } + SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); } + SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } + SYS_FSYNC = 95 // { int fsync(int fd); } + SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); } + SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); } + SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); } + SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); } + SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); } + SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); } + SYS_LISTEN = 106 // { int listen(int s, int backlog); } + SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); } + SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); } + SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); } + SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); } + SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); } + SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); } + SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); } + SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); } + SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); } + SYS_SETREGID = 127 // { int setregid(int rgid, int egid); } + SYS_RENAME = 128 // { int rename(char *from, char *to); } + SYS_FLOCK = 131 // { int flock(int fd, int how); } + SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); } + SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); } + SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); } + SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); } + SYS_MKDIR = 136 // { int mkdir(char *path, int mode); } + SYS_RMDIR = 137 // { int rmdir(char *path); } + SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); } + SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); } + SYS_SETSID = 147 // { int setsid(void); } + SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); } + SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); } + SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); } + SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); } + SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); } + SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); } + SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); } + SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); } + SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); } + SYS_SETGID = 181 // { int setgid(gid_t gid); } + SYS_SETEGID = 182 // { int setegid(gid_t egid); } + SYS_SETEUID = 183 // { int seteuid(uid_t euid); } + SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } + SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } + SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int + SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int + SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); } SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, int whence); } SYS_TRUNCATE = 200 // { int truncate(char *path, int pad, off_t length); } SYS_FTRUNCATE = 201 // { int ftruncate(int fd, int pad, off_t length); } @@ -161,8 +157,8 @@ const ( SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } - SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, u_int iovcnt, int flags, off_t offset); } - SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,u_int iovcnt, int flags, off_t offset); } + SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, const struct iovec *iovp, int iovcnt, int flags, off_t offset); } + SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, const struct iovec *iovp, int iovcnt, int flags, off_t offset); } SYS_FHSTATFS = 297 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } SYS_MODNEXT = 300 // { int modnext(int modid); } @@ -225,7 +221,7 @@ const ( SYS_KQUEUE = 362 // { int kqueue(void); } SYS_KEVENT = 363 // { int kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); } - SYS_LCHFLAGS = 391 // { int lchflags(char *path, int flags); } + SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); } SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } SYS_VARSYM_SET = 450 // { int varsym_set(int level, const char *name, const char *data); } @@ -302,7 +298,7 @@ const ( SYS_VMM_GUEST_CTL = 534 // { int vmm_guest_ctl(int op, struct vmm_guest_options *options); } SYS_VMM_GUEST_SYNC_ADDR = 535 // { int vmm_guest_sync_addr(long *dstaddr, long *srcaddr); } SYS_PROCCTL = 536 // { int procctl(idtype_t idtype, id_t id, int cmd, void *data); } - SYS_CHFLAGSAT = 537 // { int chflagsat(int fd, const char *path, int flags, int atflags);} + SYS_CHFLAGSAT = 537 // { int chflagsat(int fd, const char *path, u_long flags, int atflags);} SYS_PIPE2 = 538 // { int pipe2(int *fildes, int flags); } SYS_UTIMENSAT = 539 // { int utimensat(int fd, const char *path, const struct timespec *ts, int flags); } SYS_FUTIMENS = 540 // { int futimens(int fd, const struct timespec *ts); } @@ -312,4 +308,9 @@ const ( SYS_LWP_SETAFFINITY = 544 // { int lwp_setaffinity(pid_t pid, lwpid_t tid, const cpumask_t *mask); } SYS_LWP_GETAFFINITY = 545 // { int lwp_getaffinity(pid_t pid, lwpid_t tid, cpumask_t *mask); } SYS_LWP_CREATE2 = 546 // { int lwp_create2(struct lwp_params *params, const cpumask_t *mask); } + SYS_GETCPUCLOCKID = 547 // { int getcpuclockid(pid_t pid, lwpid_t lwp_id, clockid_t *clock_id); } + SYS_WAIT6 = 548 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); } + SYS_LWP_GETNAME = 549 // { int lwp_getname(lwpid_t tid, char *name, size_t len); } + SYS_GETRANDOM = 550 // { ssize_t getrandom(void *buf, size_t len, unsigned flags); } + SYS___REALPATH = 551 // { ssize_t __realpath(const char *path, char *buf, size_t len); } ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go index a597e061c..0f5a3f697 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go @@ -431,6 +431,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go index 8c102e55a..36d5219ef 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go @@ -353,6 +353,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go index 98f9b68fb..3622ba14b 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go @@ -395,6 +395,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go index 4dabc33fb..6193c3dc0 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go @@ -298,6 +298,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go index d5724e596..640b97434 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go @@ -416,6 +416,7 @@ const ( SYS_FSPICK = 4433 SYS_PIDFD_OPEN = 4434 SYS_CLONE3 = 4435 + SYS_CLOSE_RANGE = 4436 SYS_OPENAT2 = 4437 SYS_PIDFD_GETFD = 4438 SYS_FACCESSAT2 = 4439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go index c1d824a4f..3467fbb5f 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go @@ -346,6 +346,7 @@ const ( SYS_FSPICK = 5433 SYS_PIDFD_OPEN = 5434 SYS_CLONE3 = 5435 + SYS_CLOSE_RANGE = 5436 SYS_OPENAT2 = 5437 SYS_PIDFD_GETFD = 5438 SYS_FACCESSAT2 = 5439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go index 598dd5d63..0fc38d5a7 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go @@ -346,6 +346,7 @@ const ( SYS_FSPICK = 5433 SYS_PIDFD_OPEN = 5434 SYS_CLONE3 = 5435 + SYS_CLOSE_RANGE = 5436 SYS_OPENAT2 = 5437 SYS_PIDFD_GETFD = 5438 SYS_FACCESSAT2 = 5439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go index c36782d08..999fd55bc 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go @@ -416,6 +416,7 @@ const ( SYS_FSPICK = 4433 SYS_PIDFD_OPEN = 4434 SYS_CLONE3 = 4435 + SYS_CLOSE_RANGE = 4436 SYS_OPENAT2 = 4437 SYS_PIDFD_GETFD = 4438 SYS_FACCESSAT2 = 4439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go index 9287538d3..1df0d7993 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go @@ -395,6 +395,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go index 4dafad835..4db39cca4 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go @@ -395,6 +395,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go index 6642cfccd..e69274014 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go @@ -297,6 +297,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go index 23367b946..a585aec4e 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go @@ -360,6 +360,7 @@ const ( SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 SYS_CLONE3 = 435 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go index 083aa0204..d047e567a 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go @@ -374,6 +374,7 @@ const ( SYS_FSMOUNT = 432 SYS_FSPICK = 433 SYS_PIDFD_OPEN = 434 + SYS_CLOSE_RANGE = 436 SYS_OPENAT2 = 437 SYS_PIDFD_GETFD = 438 SYS_FACCESSAT2 = 439 diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go index 6103f2150..9ea0293aa 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go +++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go @@ -92,9 +92,9 @@ type Statfs_t struct { Type uint32 Flags uint32 Fssubtype uint32 - Fstypename [16]int8 - Mntonname [1024]int8 - Mntfromname [1024]int8 + Fstypename [16]byte + Mntonname [1024]byte + Mntfromname [1024]byte Reserved [8]uint32 } @@ -305,7 +305,6 @@ type IfMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Data IfData } @@ -348,7 +347,6 @@ type IfaMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Metric int32 } @@ -369,7 +367,6 @@ type IfmaMsghdr2 struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Refcount int32 } @@ -378,7 +375,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -400,7 +396,8 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - Filler [4]uint32 + State uint32 + Filler [3]uint32 } const ( @@ -501,3 +498,8 @@ type Clockinfo struct { Stathz int32 Profhz int32 } + +type CtlInfo struct { + Id uint32 + Name [96]byte +} diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go index e6576d1c4..255e6cbb6 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go @@ -70,7 +70,6 @@ type Stat_t struct { Uid uint32 Gid uint32 Rdev int32 - _ [4]byte Atim Timespec Mtim Timespec Ctim Timespec @@ -97,10 +96,11 @@ type Statfs_t struct { Type uint32 Flags uint32 Fssubtype uint32 - Fstypename [16]int8 - Mntonname [1024]int8 - Mntfromname [1024]int8 - Reserved [8]uint32 + Fstypename [16]byte + Mntonname [1024]byte + Mntfromname [1024]byte + Flags_ext uint32 + Reserved [7]uint32 } type Flock_t struct { @@ -133,8 +133,7 @@ type Fbootstraptransfer_t struct { type Log2phys_t struct { Flags uint32 - _ [8]byte - _ [8]byte + _ [16]byte } type Fsid struct { @@ -225,10 +224,8 @@ type IPv6Mreq struct { type Msghdr struct { Name *byte Namelen uint32 - _ [4]byte Iov *Iovec Iovlen int32 - _ [4]byte Control *byte Controllen uint32 Flags int32 @@ -313,7 +310,6 @@ type IfMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Data IfData } @@ -356,7 +352,6 @@ type IfaMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Metric int32 } @@ -377,7 +372,6 @@ type IfmaMsghdr2 struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Refcount int32 } @@ -386,7 +380,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -408,7 +401,8 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - Filler [4]uint32 + State uint32 + Filler [3]uint32 } const ( @@ -431,7 +425,6 @@ type BpfStat struct { type BpfProgram struct { Len uint32 - _ [4]byte Insns *BpfInsn } @@ -456,7 +449,6 @@ type Termios struct { Cflag uint64 Lflag uint64 Cc [20]uint8 - _ [4]byte Ispeed uint64 Ospeed uint64 } @@ -511,3 +503,8 @@ type Clockinfo struct { Stathz int32 Profhz int32 } + +type CtlInfo struct { + Id uint32 + Name [96]byte +} diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go index af9560fa1..e21c82850 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go +++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go @@ -1,6 +1,5 @@ -// NOTE: cgo can't generate struct Stat_t and struct Statfs_t yet -// Created by cgo -godefs - DO NOT EDIT -// cgo -godefs types_darwin.go +// cgo -godefs types_darwin.go | go run mkpost.go +// Code generated by the command above; see README.md. DO NOT EDIT. // +build arm,darwin @@ -31,7 +30,7 @@ type Timeval struct { Usec int32 } -type Timeval32 [0]byte +type Timeval32 struct{} type Rusage struct { Utime Timeval @@ -93,9 +92,9 @@ type Statfs_t struct { Type uint32 Flags uint32 Fssubtype uint32 - Fstypename [16]int8 - Mntonname [1024]int8 - Mntfromname [1024]int8 + Fstypename [16]byte + Mntonname [1024]byte + Mntfromname [1024]byte Reserved [8]uint32 } @@ -306,7 +305,6 @@ type IfMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Data IfData } @@ -349,7 +347,6 @@ type IfaMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Metric int32 } @@ -370,7 +367,6 @@ type IfmaMsghdr2 struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Refcount int32 } @@ -379,7 +375,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -401,7 +396,8 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - Filler [4]uint32 + State uint32 + Filler [3]uint32 } const ( @@ -502,3 +498,8 @@ type Clockinfo struct { Stathz int32 Profhz int32 } + +type CtlInfo struct { + Id uint32 + Name [96]byte +} diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go index a09c0f942..5eff2c1c4 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go @@ -70,7 +70,6 @@ type Stat_t struct { Uid uint32 Gid uint32 Rdev int32 - _ [4]byte Atim Timespec Mtim Timespec Ctim Timespec @@ -97,10 +96,11 @@ type Statfs_t struct { Type uint32 Flags uint32 Fssubtype uint32 - Fstypename [16]int8 - Mntonname [1024]int8 - Mntfromname [1024]int8 - Reserved [8]uint32 + Fstypename [16]byte + Mntonname [1024]byte + Mntfromname [1024]byte + Flags_ext uint32 + Reserved [7]uint32 } type Flock_t struct { @@ -133,8 +133,7 @@ type Fbootstraptransfer_t struct { type Log2phys_t struct { Flags uint32 - _ [8]byte - _ [8]byte + _ [16]byte } type Fsid struct { @@ -225,10 +224,8 @@ type IPv6Mreq struct { type Msghdr struct { Name *byte Namelen uint32 - _ [4]byte Iov *Iovec Iovlen int32 - _ [4]byte Control *byte Controllen uint32 Flags int32 @@ -313,7 +310,6 @@ type IfMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Data IfData } @@ -356,7 +352,6 @@ type IfaMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Metric int32 } @@ -377,7 +372,6 @@ type IfmaMsghdr2 struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Refcount int32 } @@ -386,7 +380,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -408,7 +401,8 @@ type RtMetrics struct { Rtt uint32 Rttvar uint32 Pksent uint32 - Filler [4]uint32 + State uint32 + Filler [3]uint32 } const ( @@ -431,7 +425,6 @@ type BpfStat struct { type BpfProgram struct { Len uint32 - _ [4]byte Insns *BpfInsn } @@ -456,7 +449,6 @@ type Termios struct { Cflag uint64 Lflag uint64 Cc [20]uint8 - _ [4]byte Ispeed uint64 Ospeed uint64 } @@ -511,3 +503,8 @@ type Clockinfo struct { Stathz int32 Profhz int32 } + +type CtlInfo struct { + Id uint32 + Name [96]byte +} diff --git a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go index 71ea1d6d2..c4772df23 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go @@ -70,11 +70,11 @@ type Stat_t struct { Ctim Timespec Size int64 Blocks int64 - Blksize uint32 + _ uint32 Flags uint32 Gen uint32 Lspare int32 - Qspare1 int64 + Blksize int64 Qspare2 int64 } @@ -91,17 +91,15 @@ type Statfs_t struct { Owner uint32 Type int32 Flags int32 - _ [4]byte Syncwrites int64 Asyncwrites int64 - Fstypename [16]int8 - Mntonname [80]int8 + Fstypename [16]byte + Mntonname [80]byte Syncreads int64 Asyncreads int64 Spares1 int16 - Mntfromname [80]int8 + Mntfromname [80]byte Spares2 int16 - _ [4]byte Spare [2]int64 } @@ -202,10 +200,8 @@ type IPv6Mreq struct { type Msghdr struct { Name *byte Namelen uint32 - _ [4]byte Iov *Iovec Iovlen int32 - _ [4]byte Control *byte Controllen uint32 Flags int32 @@ -269,7 +265,7 @@ type FdSet struct { const ( SizeofIfMsghdr = 0xb0 SizeofIfData = 0xa0 - SizeofIfaMsghdr = 0x14 + SizeofIfaMsghdr = 0x18 SizeofIfmaMsghdr = 0x10 SizeofIfAnnounceMsghdr = 0x18 SizeofRtMsghdr = 0x98 @@ -280,10 +276,9 @@ type IfMsghdr struct { Msglen uint16 Version uint8 Type uint8 - Addrs int32 - Flags int32 Index uint16 - _ [2]byte + Flags int32 + Addrs int32 Data IfData } @@ -294,7 +289,6 @@ type IfData struct { Hdrlen uint8 Recvquota uint8 Xmitquota uint8 - _ [2]byte Mtu uint64 Metric uint64 Link_state uint64 @@ -316,24 +310,23 @@ type IfData struct { } type IfaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - _ [2]byte - Metric int32 + Msglen uint16 + Version uint8 + Type uint8 + Index uint16 + Flags int32 + Addrs int32 + Addrflags int32 + Metric int32 } type IfmaMsghdr struct { Msglen uint16 Version uint8 Type uint8 - Addrs int32 - Flags int32 Index uint16 - _ [2]byte + Flags int32 + Addrs int32 } type IfAnnounceMsghdr struct { @@ -350,7 +343,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -374,7 +366,6 @@ type RtMetrics struct { Hopcount uint64 Mssopt uint16 Pad uint16 - _ [4]byte Msl uint64 Iwmaxsegs uint64 Iwcapsegs uint64 @@ -400,7 +391,6 @@ type BpfStat struct { type BpfProgram struct { Len uint32 - _ [4]byte Insns *BpfInsn } diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go index 8d1429a0e..773fc321b 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go @@ -554,7 +554,11 @@ const ( IFLA_NEW_IFINDEX = 0x31 IFLA_MIN_MTU = 0x32 IFLA_MAX_MTU = 0x33 - IFLA_MAX = 0x36 + IFLA_PROP_LIST = 0x34 + IFLA_ALT_IFNAME = 0x35 + IFLA_PERM_ADDRESS = 0x36 + IFLA_PROTO_DOWN_REASON = 0x37 + IFLA_MAX = 0x37 IFLA_INFO_KIND = 0x1 IFLA_INFO_DATA = 0x2 IFLA_INFO_XSTATS = 0x3 @@ -946,7 +950,10 @@ type PerfEventMmapPage struct { Time_offset uint64 Time_zero uint64 Size uint32 - _ [948]uint8 + _ uint32 + Time_cycles uint64 + Time_mask uint64 + _ [928]uint8 Data_head uint64 Data_tail uint64 Data_offset uint64 @@ -1145,10 +1152,12 @@ const ( PERF_RECORD_KSYMBOL = 0x11 PERF_RECORD_BPF_EVENT = 0x12 PERF_RECORD_CGROUP = 0x13 - PERF_RECORD_MAX = 0x14 + PERF_RECORD_TEXT_POKE = 0x14 + PERF_RECORD_MAX = 0x15 PERF_RECORD_KSYMBOL_TYPE_UNKNOWN = 0x0 PERF_RECORD_KSYMBOL_TYPE_BPF = 0x1 - PERF_RECORD_KSYMBOL_TYPE_MAX = 0x2 + PERF_RECORD_KSYMBOL_TYPE_OOL = 0x2 + PERF_RECORD_KSYMBOL_TYPE_MAX = 0x3 PERF_BPF_EVENT_UNKNOWN = 0x0 PERF_BPF_EVENT_PROG_LOAD = 0x1 PERF_BPF_EVENT_PROG_UNLOAD = 0x2 @@ -1465,7 +1474,7 @@ const ( NFT_MSG_DELOBJ = 0x14 NFT_MSG_GETOBJ_RESET = 0x15 NFT_MSG_MAX = 0x19 - NFTA_LIST_UNPEC = 0x0 + NFTA_LIST_UNSPEC = 0x0 NFTA_LIST_ELEM = 0x1 NFTA_HOOK_UNSPEC = 0x0 NFTA_HOOK_HOOKNUM = 0x1 @@ -1904,9 +1913,12 @@ type XDPMmapOffsets struct { } type XDPStatistics struct { - Rx_dropped uint64 - Rx_invalid_descs uint64 - Tx_invalid_descs uint64 + Rx_dropped uint64 + Rx_invalid_descs uint64 + Tx_invalid_descs uint64 + Rx_ring_full uint64 + Rx_fill_ring_empty_descs uint64 + Tx_ring_empty_descs uint64 } type XDPDesc struct { @@ -2553,7 +2565,7 @@ const ( DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c DEVLINK_ATTR_PAD = 0x3d DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e - DEVLINK_ATTR_MAX = 0x90 + DEVLINK_ATTR_MAX = 0x94 DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0 DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1 DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0 diff --git a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go index 23ed9fe51..db817f3ba 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go @@ -88,7 +88,6 @@ type Stat_t struct { Mtim Timespec Ctim Timespec Blksize int32 - _ [4]byte Blocks int64 Fstype [16]int8 } @@ -96,7 +95,6 @@ type Stat_t struct { type Flock_t struct { Type int16 Whence int16 - _ [4]byte Start int64 Len int64 Sysid int32 @@ -138,12 +136,12 @@ type RawSockaddrInet4 struct { } type RawSockaddrInet6 struct { - Family uint16 - Port uint16 - Flowinfo uint32 - Addr [16]byte /* in6_addr */ - Scope_id uint32 - X__sin6_src_id uint32 + Family uint16 + Port uint16 + Flowinfo uint32 + Addr [16]byte /* in6_addr */ + Scope_id uint32 + _ uint32 } type RawSockaddrUnix struct { @@ -196,10 +194,8 @@ type IPv6Mreq struct { type Msghdr struct { Name *byte Namelen uint32 - _ [4]byte Iov *Iovec Iovlen int32 - _ [4]byte Accrights *int8 Accrightslen int32 _ [4]byte @@ -228,7 +224,7 @@ type IPv6MTUInfo struct { } type ICMPv6Filter struct { - X__icmp6_filt [8]uint32 + Filt [8]uint32 } const ( @@ -291,7 +287,6 @@ type IfMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Data IfData } @@ -299,7 +294,6 @@ type IfData struct { Type uint8 Addrlen uint8 Hdrlen uint8 - _ [1]byte Mtu uint32 Metric uint32 Baudrate uint32 @@ -324,7 +318,6 @@ type IfaMsghdr struct { Addrs int32 Flags int32 Index uint16 - _ [2]byte Metric int32 } @@ -333,7 +326,6 @@ type RtMsghdr struct { Version uint8 Type uint8 Index uint16 - _ [2]byte Flags int32 Addrs int32 Pid int32 @@ -371,15 +363,14 @@ type BpfVersion struct { } type BpfStat struct { - Recv uint64 - Drop uint64 - Capt uint64 - Padding [13]uint64 + Recv uint64 + Drop uint64 + Capt uint64 + _ [13]uint64 } type BpfProgram struct { Len uint32 - _ [4]byte Insns *BpfInsn } diff --git a/vendor/golang.org/x/sys/windows/svc/security.go b/vendor/golang.org/x/sys/windows/svc/security.go index 65025998d..da6df1d3c 100644 --- a/vendor/golang.org/x/sys/windows/svc/security.go +++ b/vendor/golang.org/x/sys/windows/svc/security.go @@ -7,6 +7,10 @@ package svc import ( + "errors" + "syscall" + "unsafe" + "golang.org/x/sys/windows" ) @@ -23,6 +27,8 @@ func allocSid(subAuth0 uint32) (*windows.SID, error) { // IsAnInteractiveSession determines if calling process is running interactively. // It queries the process token for membership in the Interactive group. // http://stackoverflow.com/questions/2668851/how-do-i-detect-that-my-application-is-running-as-service-or-in-an-interactive-s +// +// Deprecated: Use IsWindowsService instead. func IsAnInteractiveSession() (bool, error) { interSid, err := allocSid(windows.SECURITY_INTERACTIVE_RID) if err != nil { @@ -57,3 +63,95 @@ func IsAnInteractiveSession() (bool, error) { } return false, nil } + +var ( + ntdll = windows.NewLazySystemDLL("ntdll.dll") + _NtQueryInformationProcess = ntdll.NewProc("NtQueryInformationProcess") + + kernel32 = windows.NewLazySystemDLL("kernel32.dll") + _QueryFullProcessImageNameA = kernel32.NewProc("QueryFullProcessImageNameA") +) + +// IsWindowsService reports whether the process is currently executing +// as a Windows service. +func IsWindowsService() (bool, error) { + // This code was copied from runtime.isWindowsService function. + + // The below technique looks a bit hairy, but it's actually + // exactly what the .NET framework does for the similarly named function: + // https://github.com/dotnet/extensions/blob/f4066026ca06984b07e90e61a6390ac38152ba93/src/Hosting/WindowsServices/src/WindowsServiceHelpers.cs#L26-L31 + // Specifically, it looks up whether the parent process has session ID zero + // and is called "services". + const _CURRENT_PROCESS = ^uintptr(0) + // pbi is a PROCESS_BASIC_INFORMATION struct, where we just care about + // the 6th pointer inside of it, which contains the pid of the process + // parent: + // https://github.com/wine-mirror/wine/blob/42cb7d2ad1caba08de235e6319b9967296b5d554/include/winternl.h#L1294 + var pbi [6]uintptr + var pbiLen uint32 + r0, _, _ := syscall.Syscall6(_NtQueryInformationProcess.Addr(), 5, _CURRENT_PROCESS, 0, uintptr(unsafe.Pointer(&pbi[0])), uintptr(unsafe.Sizeof(pbi)), uintptr(unsafe.Pointer(&pbiLen)), 0) + if r0 != 0 { + return false, errors.New("NtQueryInformationProcess failed: error=" + itoa(int(r0))) + } + var psid uint32 + err := windows.ProcessIdToSessionId(uint32(pbi[5]), &psid) + if err != nil { + return false, err + } + if psid != 0 { + // parent session id should be 0 for service process + return false, nil + } + + pproc, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pbi[5])) + if err != nil { + return false, err + } + defer windows.CloseHandle(pproc) + + // exeName gets the path to the executable image of the parent process + var exeName [261]byte + exeNameLen := uint32(len(exeName) - 1) + r0, _, e0 := syscall.Syscall6(_QueryFullProcessImageNameA.Addr(), 4, uintptr(pproc), 0, uintptr(unsafe.Pointer(&exeName[0])), uintptr(unsafe.Pointer(&exeNameLen)), 0, 0) + if r0 == 0 { + if e0 != 0 { + return false, e0 + } else { + return false, syscall.EINVAL + } + } + const ( + servicesLower = "services.exe" + servicesUpper = "SERVICES.EXE" + ) + i := int(exeNameLen) - 1 + j := len(servicesLower) - 1 + if i < j { + return false, nil + } + for { + if j == -1 { + return i == -1 || exeName[i] == '\\', nil + } + if exeName[i] != servicesLower[j] && exeName[i] != servicesUpper[j] { + return false, nil + } + i-- + j-- + } +} + +func itoa(val int) string { // do it here rather than with fmt to avoid dependency + if val < 0 { + return "-" + itoa(-val) + } + var buf [32]byte // big enough for int64 + i := len(buf) - 1 + for val >= 10 { + buf[i] = byte(val%10 + '0') + i-- + val /= 10 + } + buf[i] = byte(val + '0') + return string(buf[i:]) +} diff --git a/vendor/golang.org/x/sys/windows/syscall.go b/vendor/golang.org/x/sys/windows/syscall.go index af828a91b..6122f557a 100644 --- a/vendor/golang.org/x/sys/windows/syscall.go +++ b/vendor/golang.org/x/sys/windows/syscall.go @@ -25,17 +25,20 @@ package windows // import "golang.org/x/sys/windows" import ( + "bytes" + "strings" "syscall" + "unsafe" + + "golang.org/x/sys/internal/unsafeheader" ) // ByteSliceFromString returns a NUL-terminated slice of bytes // containing the text of s. If s contains a NUL byte at any // location, it returns (nil, syscall.EINVAL). func ByteSliceFromString(s string) ([]byte, error) { - for i := 0; i < len(s); i++ { - if s[i] == 0 { - return nil, syscall.EINVAL - } + if strings.IndexByte(s, 0) != -1 { + return nil, syscall.EINVAL } a := make([]byte, len(s)+1) copy(a, s) @@ -53,6 +56,41 @@ func BytePtrFromString(s string) (*byte, error) { return &a[0], nil } +// ByteSliceToString returns a string form of the text represented by the slice s, with a terminating NUL and any +// bytes after the NUL removed. +func ByteSliceToString(s []byte) string { + if i := bytes.IndexByte(s, 0); i != -1 { + s = s[:i] + } + return string(s) +} + +// BytePtrToString takes a pointer to a sequence of text and returns the corresponding string. +// If the pointer is nil, it returns the empty string. It assumes that the text sequence is terminated +// at a zero byte; if the zero byte is not present, the program may crash. +func BytePtrToString(p *byte) string { + if p == nil { + return "" + } + if *p == 0 { + return "" + } + + // Find NUL terminator. + n := 0 + for ptr := unsafe.Pointer(p); *(*byte)(ptr) != 0; n++ { + ptr = unsafe.Pointer(uintptr(ptr) + 1) + } + + var s []byte + h := (*unsafeheader.Slice)(unsafe.Pointer(&s)) + h.Data = unsafe.Pointer(p) + h.Len = n + h.Cap = n + + return string(s) +} + // Single-word zero for use when we need a valid pointer to 0 bytes. // See mksyscall.pl. var _zero uintptr diff --git a/vendor/golang.org/x/sys/windows/syscall_windows.go b/vendor/golang.org/x/sys/windows/syscall_windows.go index 30ef6410f..cd71f570a 100644 --- a/vendor/golang.org/x/sys/windows/syscall_windows.go +++ b/vendor/golang.org/x/sys/windows/syscall_windows.go @@ -92,11 +92,11 @@ func UTF16FromString(s string) ([]uint16, error) { } // UTF16ToString returns the UTF-8 encoding of the UTF-16 sequence s, -// with a terminating NUL removed. +// with a terminating NUL and any bytes after the NUL removed. func UTF16ToString(s []uint16) string { for i, v := range s { if v == 0 { - s = s[0:i] + s = s[:i] break } } @@ -120,7 +120,7 @@ func UTF16PtrFromString(s string) (*uint16, error) { } // UTF16PtrToString takes a pointer to a UTF-16 sequence and returns the corresponding UTF-8 encoded string. -// If the pointer is nil, this returns the empty string. This assumes that the UTF-16 sequence is terminated +// If the pointer is nil, it returns the empty string. It assumes that the UTF-16 sequence is terminated // at a zero word; if the zero word is not present, the program may crash. func UTF16PtrToString(p *uint16) string { if p == nil { @@ -270,6 +270,7 @@ func NewCallbackCDecl(fn interface{}) uintptr { //sys RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reserved *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (regerrno error) = advapi32.RegEnumKeyExW //sys RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uint32, buf *byte, buflen *uint32) (regerrno error) = advapi32.RegQueryValueExW //sys GetCurrentProcessId() (pid uint32) = kernel32.GetCurrentProcessId +//sys ProcessIdToSessionId(pid uint32, sessionid *uint32) (err error) = kernel32.ProcessIdToSessionId //sys GetConsoleMode(console Handle, mode *uint32) (err error) = kernel32.GetConsoleMode //sys SetConsoleMode(console Handle, mode uint32) (err error) = kernel32.SetConsoleMode //sys GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) = kernel32.GetConsoleScreenBufferInfo @@ -389,11 +390,7 @@ func GetProcAddressByOrdinal(module Handle, ordinal uintptr) (proc uintptr, err r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), ordinal, 0) proc = uintptr(r0) if proc == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } @@ -1090,11 +1087,7 @@ func WSASendMsg(fd Handle, msg *WSAMsg, flags uint32, bytesSent *uint32, overlap } r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.sendAddr, 6, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(flags), uintptr(unsafe.Pointer(bytesSent)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return err } @@ -1106,11 +1099,7 @@ func WSARecvMsg(fd Handle, msg *WSAMsg, bytesReceived *uint32, overlapped *Overl } r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.recvAddr, 5, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(unsafe.Pointer(bytesReceived)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0) if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return err } diff --git a/vendor/golang.org/x/sys/windows/zsyscall_windows.go b/vendor/golang.org/x/sys/windows/zsyscall_windows.go index f1ae76b38..f50d03730 100644 --- a/vendor/golang.org/x/sys/windows/zsyscall_windows.go +++ b/vendor/golang.org/x/sys/windows/zsyscall_windows.go @@ -17,6 +17,7 @@ const ( var ( errERROR_IO_PENDING error = syscall.Errno(errnoERROR_IO_PENDING) + errERROR_EINVAL error = syscall.EINVAL ) // errnoErr returns common boxed Errno values, to prevent @@ -24,7 +25,7 @@ var ( func errnoErr(e syscall.Errno) error { switch e { case 0: - return nil + return errERROR_EINVAL case errnoERROR_IO_PENDING: return errERROR_IO_PENDING } @@ -36,376 +37,391 @@ func errnoErr(e syscall.Errno) error { var ( modadvapi32 = NewLazySystemDLL("advapi32.dll") - modkernel32 = NewLazySystemDLL("kernel32.dll") - modshell32 = NewLazySystemDLL("shell32.dll") - moduserenv = NewLazySystemDLL("userenv.dll") - modmswsock = NewLazySystemDLL("mswsock.dll") modcrypt32 = NewLazySystemDLL("crypt32.dll") - moduser32 = NewLazySystemDLL("user32.dll") - modole32 = NewLazySystemDLL("ole32.dll") - modntdll = NewLazySystemDLL("ntdll.dll") - modpsapi = NewLazySystemDLL("psapi.dll") - modws2_32 = NewLazySystemDLL("ws2_32.dll") moddnsapi = NewLazySystemDLL("dnsapi.dll") modiphlpapi = NewLazySystemDLL("iphlpapi.dll") - modsecur32 = NewLazySystemDLL("secur32.dll") + modkernel32 = NewLazySystemDLL("kernel32.dll") + modmswsock = NewLazySystemDLL("mswsock.dll") modnetapi32 = NewLazySystemDLL("netapi32.dll") + modntdll = NewLazySystemDLL("ntdll.dll") + modole32 = NewLazySystemDLL("ole32.dll") + modpsapi = NewLazySystemDLL("psapi.dll") + modsecur32 = NewLazySystemDLL("secur32.dll") + modshell32 = NewLazySystemDLL("shell32.dll") + moduser32 = NewLazySystemDLL("user32.dll") + moduserenv = NewLazySystemDLL("userenv.dll") + modws2_32 = NewLazySystemDLL("ws2_32.dll") modwtsapi32 = NewLazySystemDLL("wtsapi32.dll") - procRegisterEventSourceW = modadvapi32.NewProc("RegisterEventSourceW") - procDeregisterEventSource = modadvapi32.NewProc("DeregisterEventSource") - procReportEventW = modadvapi32.NewProc("ReportEventW") - procOpenSCManagerW = modadvapi32.NewProc("OpenSCManagerW") - procCloseServiceHandle = modadvapi32.NewProc("CloseServiceHandle") - procCreateServiceW = modadvapi32.NewProc("CreateServiceW") - procOpenServiceW = modadvapi32.NewProc("OpenServiceW") - procDeleteService = modadvapi32.NewProc("DeleteService") - procStartServiceW = modadvapi32.NewProc("StartServiceW") - procQueryServiceStatus = modadvapi32.NewProc("QueryServiceStatus") - procQueryServiceLockStatusW = modadvapi32.NewProc("QueryServiceLockStatusW") - procControlService = modadvapi32.NewProc("ControlService") - procStartServiceCtrlDispatcherW = modadvapi32.NewProc("StartServiceCtrlDispatcherW") - procSetServiceStatus = modadvapi32.NewProc("SetServiceStatus") - procChangeServiceConfigW = modadvapi32.NewProc("ChangeServiceConfigW") - procQueryServiceConfigW = modadvapi32.NewProc("QueryServiceConfigW") + procAdjustTokenGroups = modadvapi32.NewProc("AdjustTokenGroups") + procAdjustTokenPrivileges = modadvapi32.NewProc("AdjustTokenPrivileges") + procAllocateAndInitializeSid = modadvapi32.NewProc("AllocateAndInitializeSid") + procBuildSecurityDescriptorW = modadvapi32.NewProc("BuildSecurityDescriptorW") procChangeServiceConfig2W = modadvapi32.NewProc("ChangeServiceConfig2W") - procQueryServiceConfig2W = modadvapi32.NewProc("QueryServiceConfig2W") - procEnumServicesStatusExW = modadvapi32.NewProc("EnumServicesStatusExW") - procQueryServiceStatusEx = modadvapi32.NewProc("QueryServiceStatusEx") - procNotifyServiceStatusChangeW = modadvapi32.NewProc("NotifyServiceStatusChangeW") - procGetLastError = modkernel32.NewProc("GetLastError") - procLoadLibraryW = modkernel32.NewProc("LoadLibraryW") - procLoadLibraryExW = modkernel32.NewProc("LoadLibraryExW") - procFreeLibrary = modkernel32.NewProc("FreeLibrary") - procGetProcAddress = modkernel32.NewProc("GetProcAddress") - procGetModuleFileNameW = modkernel32.NewProc("GetModuleFileNameW") - procGetModuleHandleExW = modkernel32.NewProc("GetModuleHandleExW") - procGetVersion = modkernel32.NewProc("GetVersion") - procFormatMessageW = modkernel32.NewProc("FormatMessageW") - procExitProcess = modkernel32.NewProc("ExitProcess") - procIsWow64Process = modkernel32.NewProc("IsWow64Process") - procCreateFileW = modkernel32.NewProc("CreateFileW") - procReadFile = modkernel32.NewProc("ReadFile") - procWriteFile = modkernel32.NewProc("WriteFile") - procGetOverlappedResult = modkernel32.NewProc("GetOverlappedResult") - procSetFilePointer = modkernel32.NewProc("SetFilePointer") - procCloseHandle = modkernel32.NewProc("CloseHandle") - procGetStdHandle = modkernel32.NewProc("GetStdHandle") - procSetStdHandle = modkernel32.NewProc("SetStdHandle") - procFindFirstFileW = modkernel32.NewProc("FindFirstFileW") - procFindNextFileW = modkernel32.NewProc("FindNextFileW") - procFindClose = modkernel32.NewProc("FindClose") - procGetFileInformationByHandle = modkernel32.NewProc("GetFileInformationByHandle") - procGetFileInformationByHandleEx = modkernel32.NewProc("GetFileInformationByHandleEx") - procGetCurrentDirectoryW = modkernel32.NewProc("GetCurrentDirectoryW") - procSetCurrentDirectoryW = modkernel32.NewProc("SetCurrentDirectoryW") - procCreateDirectoryW = modkernel32.NewProc("CreateDirectoryW") - procRemoveDirectoryW = modkernel32.NewProc("RemoveDirectoryW") - procDeleteFileW = modkernel32.NewProc("DeleteFileW") - procMoveFileW = modkernel32.NewProc("MoveFileW") - procMoveFileExW = modkernel32.NewProc("MoveFileExW") - procLockFileEx = modkernel32.NewProc("LockFileEx") - procUnlockFileEx = modkernel32.NewProc("UnlockFileEx") - procGetComputerNameW = modkernel32.NewProc("GetComputerNameW") - procGetComputerNameExW = modkernel32.NewProc("GetComputerNameExW") - procSetEndOfFile = modkernel32.NewProc("SetEndOfFile") - procGetSystemTimeAsFileTime = modkernel32.NewProc("GetSystemTimeAsFileTime") - procGetSystemTimePreciseAsFileTime = modkernel32.NewProc("GetSystemTimePreciseAsFileTime") - procGetTimeZoneInformation = modkernel32.NewProc("GetTimeZoneInformation") - procCreateIoCompletionPort = modkernel32.NewProc("CreateIoCompletionPort") - procGetQueuedCompletionStatus = modkernel32.NewProc("GetQueuedCompletionStatus") - procPostQueuedCompletionStatus = modkernel32.NewProc("PostQueuedCompletionStatus") - procCancelIo = modkernel32.NewProc("CancelIo") - procCancelIoEx = modkernel32.NewProc("CancelIoEx") - procCreateProcessW = modkernel32.NewProc("CreateProcessW") - procOpenProcess = modkernel32.NewProc("OpenProcess") - procShellExecuteW = modshell32.NewProc("ShellExecuteW") - procSHGetKnownFolderPath = modshell32.NewProc("SHGetKnownFolderPath") - procTerminateProcess = modkernel32.NewProc("TerminateProcess") - procGetExitCodeProcess = modkernel32.NewProc("GetExitCodeProcess") - procGetStartupInfoW = modkernel32.NewProc("GetStartupInfoW") - procGetProcessTimes = modkernel32.NewProc("GetProcessTimes") - procDuplicateHandle = modkernel32.NewProc("DuplicateHandle") - procWaitForSingleObject = modkernel32.NewProc("WaitForSingleObject") - procWaitForMultipleObjects = modkernel32.NewProc("WaitForMultipleObjects") - procGetTempPathW = modkernel32.NewProc("GetTempPathW") - procCreatePipe = modkernel32.NewProc("CreatePipe") - procGetFileType = modkernel32.NewProc("GetFileType") + procChangeServiceConfigW = modadvapi32.NewProc("ChangeServiceConfigW") + procCheckTokenMembership = modadvapi32.NewProc("CheckTokenMembership") + procCloseServiceHandle = modadvapi32.NewProc("CloseServiceHandle") + procControlService = modadvapi32.NewProc("ControlService") + procConvertSecurityDescriptorToStringSecurityDescriptorW = modadvapi32.NewProc("ConvertSecurityDescriptorToStringSecurityDescriptorW") + procConvertSidToStringSidW = modadvapi32.NewProc("ConvertSidToStringSidW") + procConvertStringSecurityDescriptorToSecurityDescriptorW = modadvapi32.NewProc("ConvertStringSecurityDescriptorToSecurityDescriptorW") + procConvertStringSidToSidW = modadvapi32.NewProc("ConvertStringSidToSidW") + procCopySid = modadvapi32.NewProc("CopySid") + procCreateServiceW = modadvapi32.NewProc("CreateServiceW") + procCreateWellKnownSid = modadvapi32.NewProc("CreateWellKnownSid") procCryptAcquireContextW = modadvapi32.NewProc("CryptAcquireContextW") - procCryptReleaseContext = modadvapi32.NewProc("CryptReleaseContext") procCryptGenRandom = modadvapi32.NewProc("CryptGenRandom") - procGetEnvironmentStringsW = modkernel32.NewProc("GetEnvironmentStringsW") - procFreeEnvironmentStringsW = modkernel32.NewProc("FreeEnvironmentStringsW") - procGetEnvironmentVariableW = modkernel32.NewProc("GetEnvironmentVariableW") - procSetEnvironmentVariableW = modkernel32.NewProc("SetEnvironmentVariableW") - procCreateEnvironmentBlock = moduserenv.NewProc("CreateEnvironmentBlock") - procDestroyEnvironmentBlock = moduserenv.NewProc("DestroyEnvironmentBlock") - procGetTickCount64 = modkernel32.NewProc("GetTickCount64") - procSetFileTime = modkernel32.NewProc("SetFileTime") - procGetFileAttributesW = modkernel32.NewProc("GetFileAttributesW") - procSetFileAttributesW = modkernel32.NewProc("SetFileAttributesW") - procGetFileAttributesExW = modkernel32.NewProc("GetFileAttributesExW") - procGetCommandLineW = modkernel32.NewProc("GetCommandLineW") - procCommandLineToArgvW = modshell32.NewProc("CommandLineToArgvW") - procLocalFree = modkernel32.NewProc("LocalFree") - procSetHandleInformation = modkernel32.NewProc("SetHandleInformation") - procFlushFileBuffers = modkernel32.NewProc("FlushFileBuffers") - procGetFullPathNameW = modkernel32.NewProc("GetFullPathNameW") - procGetLongPathNameW = modkernel32.NewProc("GetLongPathNameW") - procGetShortPathNameW = modkernel32.NewProc("GetShortPathNameW") - procCreateFileMappingW = modkernel32.NewProc("CreateFileMappingW") - procMapViewOfFile = modkernel32.NewProc("MapViewOfFile") - procUnmapViewOfFile = modkernel32.NewProc("UnmapViewOfFile") - procFlushViewOfFile = modkernel32.NewProc("FlushViewOfFile") - procVirtualLock = modkernel32.NewProc("VirtualLock") - procVirtualUnlock = modkernel32.NewProc("VirtualUnlock") - procVirtualAlloc = modkernel32.NewProc("VirtualAlloc") - procVirtualFree = modkernel32.NewProc("VirtualFree") - procVirtualProtect = modkernel32.NewProc("VirtualProtect") - procTransmitFile = modmswsock.NewProc("TransmitFile") - procReadDirectoryChangesW = modkernel32.NewProc("ReadDirectoryChangesW") - procCertOpenSystemStoreW = modcrypt32.NewProc("CertOpenSystemStoreW") - procCertOpenStore = modcrypt32.NewProc("CertOpenStore") - procCertEnumCertificatesInStore = modcrypt32.NewProc("CertEnumCertificatesInStore") + procCryptReleaseContext = modadvapi32.NewProc("CryptReleaseContext") + procDeleteService = modadvapi32.NewProc("DeleteService") + procDeregisterEventSource = modadvapi32.NewProc("DeregisterEventSource") + procDuplicateTokenEx = modadvapi32.NewProc("DuplicateTokenEx") + procEnumServicesStatusExW = modadvapi32.NewProc("EnumServicesStatusExW") + procEqualSid = modadvapi32.NewProc("EqualSid") + procFreeSid = modadvapi32.NewProc("FreeSid") + procGetLengthSid = modadvapi32.NewProc("GetLengthSid") + procGetNamedSecurityInfoW = modadvapi32.NewProc("GetNamedSecurityInfoW") + procGetSecurityDescriptorControl = modadvapi32.NewProc("GetSecurityDescriptorControl") + procGetSecurityDescriptorDacl = modadvapi32.NewProc("GetSecurityDescriptorDacl") + procGetSecurityDescriptorGroup = modadvapi32.NewProc("GetSecurityDescriptorGroup") + procGetSecurityDescriptorLength = modadvapi32.NewProc("GetSecurityDescriptorLength") + procGetSecurityDescriptorOwner = modadvapi32.NewProc("GetSecurityDescriptorOwner") + procGetSecurityDescriptorRMControl = modadvapi32.NewProc("GetSecurityDescriptorRMControl") + procGetSecurityDescriptorSacl = modadvapi32.NewProc("GetSecurityDescriptorSacl") + procGetSecurityInfo = modadvapi32.NewProc("GetSecurityInfo") + procGetSidIdentifierAuthority = modadvapi32.NewProc("GetSidIdentifierAuthority") + procGetSidSubAuthority = modadvapi32.NewProc("GetSidSubAuthority") + procGetSidSubAuthorityCount = modadvapi32.NewProc("GetSidSubAuthorityCount") + procGetTokenInformation = modadvapi32.NewProc("GetTokenInformation") + procImpersonateSelf = modadvapi32.NewProc("ImpersonateSelf") + procInitializeSecurityDescriptor = modadvapi32.NewProc("InitializeSecurityDescriptor") + procInitiateSystemShutdownExW = modadvapi32.NewProc("InitiateSystemShutdownExW") + procIsValidSecurityDescriptor = modadvapi32.NewProc("IsValidSecurityDescriptor") + procIsValidSid = modadvapi32.NewProc("IsValidSid") + procIsWellKnownSid = modadvapi32.NewProc("IsWellKnownSid") + procLookupAccountNameW = modadvapi32.NewProc("LookupAccountNameW") + procLookupAccountSidW = modadvapi32.NewProc("LookupAccountSidW") + procLookupPrivilegeValueW = modadvapi32.NewProc("LookupPrivilegeValueW") + procMakeAbsoluteSD = modadvapi32.NewProc("MakeAbsoluteSD") + procMakeSelfRelativeSD = modadvapi32.NewProc("MakeSelfRelativeSD") + procNotifyServiceStatusChangeW = modadvapi32.NewProc("NotifyServiceStatusChangeW") + procOpenProcessToken = modadvapi32.NewProc("OpenProcessToken") + procOpenSCManagerW = modadvapi32.NewProc("OpenSCManagerW") + procOpenServiceW = modadvapi32.NewProc("OpenServiceW") + procOpenThreadToken = modadvapi32.NewProc("OpenThreadToken") + procQueryServiceConfig2W = modadvapi32.NewProc("QueryServiceConfig2W") + procQueryServiceConfigW = modadvapi32.NewProc("QueryServiceConfigW") + procQueryServiceLockStatusW = modadvapi32.NewProc("QueryServiceLockStatusW") + procQueryServiceStatus = modadvapi32.NewProc("QueryServiceStatus") + procQueryServiceStatusEx = modadvapi32.NewProc("QueryServiceStatusEx") + procRegCloseKey = modadvapi32.NewProc("RegCloseKey") + procRegEnumKeyExW = modadvapi32.NewProc("RegEnumKeyExW") + procRegOpenKeyExW = modadvapi32.NewProc("RegOpenKeyExW") + procRegQueryInfoKeyW = modadvapi32.NewProc("RegQueryInfoKeyW") + procRegQueryValueExW = modadvapi32.NewProc("RegQueryValueExW") + procRegisterEventSourceW = modadvapi32.NewProc("RegisterEventSourceW") + procReportEventW = modadvapi32.NewProc("ReportEventW") + procRevertToSelf = modadvapi32.NewProc("RevertToSelf") + procSetEntriesInAclW = modadvapi32.NewProc("SetEntriesInAclW") + procSetNamedSecurityInfoW = modadvapi32.NewProc("SetNamedSecurityInfoW") + procSetSecurityDescriptorControl = modadvapi32.NewProc("SetSecurityDescriptorControl") + procSetSecurityDescriptorDacl = modadvapi32.NewProc("SetSecurityDescriptorDacl") + procSetSecurityDescriptorGroup = modadvapi32.NewProc("SetSecurityDescriptorGroup") + procSetSecurityDescriptorOwner = modadvapi32.NewProc("SetSecurityDescriptorOwner") + procSetSecurityDescriptorRMControl = modadvapi32.NewProc("SetSecurityDescriptorRMControl") + procSetSecurityDescriptorSacl = modadvapi32.NewProc("SetSecurityDescriptorSacl") + procSetSecurityInfo = modadvapi32.NewProc("SetSecurityInfo") + procSetServiceStatus = modadvapi32.NewProc("SetServiceStatus") + procSetThreadToken = modadvapi32.NewProc("SetThreadToken") + procSetTokenInformation = modadvapi32.NewProc("SetTokenInformation") + procStartServiceCtrlDispatcherW = modadvapi32.NewProc("StartServiceCtrlDispatcherW") + procStartServiceW = modadvapi32.NewProc("StartServiceW") procCertAddCertificateContextToStore = modcrypt32.NewProc("CertAddCertificateContextToStore") procCertCloseStore = modcrypt32.NewProc("CertCloseStore") - procCertGetCertificateChain = modcrypt32.NewProc("CertGetCertificateChain") - procCertFreeCertificateChain = modcrypt32.NewProc("CertFreeCertificateChain") procCertCreateCertificateContext = modcrypt32.NewProc("CertCreateCertificateContext") + procCertEnumCertificatesInStore = modcrypt32.NewProc("CertEnumCertificatesInStore") + procCertFreeCertificateChain = modcrypt32.NewProc("CertFreeCertificateChain") procCertFreeCertificateContext = modcrypt32.NewProc("CertFreeCertificateContext") + procCertGetCertificateChain = modcrypt32.NewProc("CertGetCertificateChain") + procCertOpenStore = modcrypt32.NewProc("CertOpenStore") + procCertOpenSystemStoreW = modcrypt32.NewProc("CertOpenSystemStoreW") procCertVerifyCertificateChainPolicy = modcrypt32.NewProc("CertVerifyCertificateChainPolicy") - procRegOpenKeyExW = modadvapi32.NewProc("RegOpenKeyExW") - procRegCloseKey = modadvapi32.NewProc("RegCloseKey") - procRegQueryInfoKeyW = modadvapi32.NewProc("RegQueryInfoKeyW") - procRegEnumKeyExW = modadvapi32.NewProc("RegEnumKeyExW") - procRegQueryValueExW = modadvapi32.NewProc("RegQueryValueExW") - procGetCurrentProcessId = modkernel32.NewProc("GetCurrentProcessId") - procGetConsoleMode = modkernel32.NewProc("GetConsoleMode") - procSetConsoleMode = modkernel32.NewProc("SetConsoleMode") - procGetConsoleScreenBufferInfo = modkernel32.NewProc("GetConsoleScreenBufferInfo") - procSetConsoleCursorPosition = modkernel32.NewProc("SetConsoleCursorPosition") - procWriteConsoleW = modkernel32.NewProc("WriteConsoleW") - procReadConsoleW = modkernel32.NewProc("ReadConsoleW") - procCreateToolhelp32Snapshot = modkernel32.NewProc("CreateToolhelp32Snapshot") - procProcess32FirstW = modkernel32.NewProc("Process32FirstW") - procProcess32NextW = modkernel32.NewProc("Process32NextW") - procThread32First = modkernel32.NewProc("Thread32First") - procThread32Next = modkernel32.NewProc("Thread32Next") - procDeviceIoControl = modkernel32.NewProc("DeviceIoControl") - procCreateSymbolicLinkW = modkernel32.NewProc("CreateSymbolicLinkW") - procCreateHardLinkW = modkernel32.NewProc("CreateHardLinkW") - procGetCurrentThreadId = modkernel32.NewProc("GetCurrentThreadId") - procCreateEventW = modkernel32.NewProc("CreateEventW") - procCreateEventExW = modkernel32.NewProc("CreateEventExW") - procOpenEventW = modkernel32.NewProc("OpenEventW") - procSetEvent = modkernel32.NewProc("SetEvent") - procResetEvent = modkernel32.NewProc("ResetEvent") - procPulseEvent = modkernel32.NewProc("PulseEvent") - procCreateMutexW = modkernel32.NewProc("CreateMutexW") - procCreateMutexExW = modkernel32.NewProc("CreateMutexExW") - procOpenMutexW = modkernel32.NewProc("OpenMutexW") - procReleaseMutex = modkernel32.NewProc("ReleaseMutex") - procSleepEx = modkernel32.NewProc("SleepEx") - procCreateJobObjectW = modkernel32.NewProc("CreateJobObjectW") + procDnsNameCompare_W = moddnsapi.NewProc("DnsNameCompare_W") + procDnsQuery_W = moddnsapi.NewProc("DnsQuery_W") + procDnsRecordListFree = moddnsapi.NewProc("DnsRecordListFree") + procGetAdaptersAddresses = modiphlpapi.NewProc("GetAdaptersAddresses") + procGetAdaptersInfo = modiphlpapi.NewProc("GetAdaptersInfo") + procGetIfEntry = modiphlpapi.NewProc("GetIfEntry") procAssignProcessToJobObject = modkernel32.NewProc("AssignProcessToJobObject") - procTerminateJobObject = modkernel32.NewProc("TerminateJobObject") - procSetErrorMode = modkernel32.NewProc("SetErrorMode") - procResumeThread = modkernel32.NewProc("ResumeThread") - procSetPriorityClass = modkernel32.NewProc("SetPriorityClass") - procGetPriorityClass = modkernel32.NewProc("GetPriorityClass") - procQueryInformationJobObject = modkernel32.NewProc("QueryInformationJobObject") - procSetInformationJobObject = modkernel32.NewProc("SetInformationJobObject") - procGenerateConsoleCtrlEvent = modkernel32.NewProc("GenerateConsoleCtrlEvent") - procGetProcessId = modkernel32.NewProc("GetProcessId") - procOpenThread = modkernel32.NewProc("OpenThread") - procSetProcessPriorityBoost = modkernel32.NewProc("SetProcessPriorityBoost") - procGetProcessWorkingSetSizeEx = modkernel32.NewProc("GetProcessWorkingSetSizeEx") - procSetProcessWorkingSetSizeEx = modkernel32.NewProc("SetProcessWorkingSetSizeEx") + procCancelIo = modkernel32.NewProc("CancelIo") + procCancelIoEx = modkernel32.NewProc("CancelIoEx") + procCloseHandle = modkernel32.NewProc("CloseHandle") + procCreateDirectoryW = modkernel32.NewProc("CreateDirectoryW") + procCreateEventExW = modkernel32.NewProc("CreateEventExW") + procCreateEventW = modkernel32.NewProc("CreateEventW") + procCreateFileMappingW = modkernel32.NewProc("CreateFileMappingW") + procCreateFileW = modkernel32.NewProc("CreateFileW") + procCreateHardLinkW = modkernel32.NewProc("CreateHardLinkW") + procCreateIoCompletionPort = modkernel32.NewProc("CreateIoCompletionPort") + procCreateJobObjectW = modkernel32.NewProc("CreateJobObjectW") + procCreateMutexExW = modkernel32.NewProc("CreateMutexExW") + procCreateMutexW = modkernel32.NewProc("CreateMutexW") + procCreatePipe = modkernel32.NewProc("CreatePipe") + procCreateProcessW = modkernel32.NewProc("CreateProcessW") + procCreateSymbolicLinkW = modkernel32.NewProc("CreateSymbolicLinkW") + procCreateToolhelp32Snapshot = modkernel32.NewProc("CreateToolhelp32Snapshot") procDefineDosDeviceW = modkernel32.NewProc("DefineDosDeviceW") + procDeleteFileW = modkernel32.NewProc("DeleteFileW") procDeleteVolumeMountPointW = modkernel32.NewProc("DeleteVolumeMountPointW") - procFindFirstVolumeW = modkernel32.NewProc("FindFirstVolumeW") + procDeviceIoControl = modkernel32.NewProc("DeviceIoControl") + procDuplicateHandle = modkernel32.NewProc("DuplicateHandle") + procExitProcess = modkernel32.NewProc("ExitProcess") + procFindClose = modkernel32.NewProc("FindClose") + procFindFirstFileW = modkernel32.NewProc("FindFirstFileW") procFindFirstVolumeMountPointW = modkernel32.NewProc("FindFirstVolumeMountPointW") - procFindNextVolumeW = modkernel32.NewProc("FindNextVolumeW") + procFindFirstVolumeW = modkernel32.NewProc("FindFirstVolumeW") + procFindNextFileW = modkernel32.NewProc("FindNextFileW") procFindNextVolumeMountPointW = modkernel32.NewProc("FindNextVolumeMountPointW") + procFindNextVolumeW = modkernel32.NewProc("FindNextVolumeW") procFindVolumeClose = modkernel32.NewProc("FindVolumeClose") procFindVolumeMountPointClose = modkernel32.NewProc("FindVolumeMountPointClose") + procFlushFileBuffers = modkernel32.NewProc("FlushFileBuffers") + procFlushViewOfFile = modkernel32.NewProc("FlushViewOfFile") + procFormatMessageW = modkernel32.NewProc("FormatMessageW") + procFreeEnvironmentStringsW = modkernel32.NewProc("FreeEnvironmentStringsW") + procFreeLibrary = modkernel32.NewProc("FreeLibrary") + procGenerateConsoleCtrlEvent = modkernel32.NewProc("GenerateConsoleCtrlEvent") + procGetACP = modkernel32.NewProc("GetACP") + procGetCommandLineW = modkernel32.NewProc("GetCommandLineW") + procGetComputerNameExW = modkernel32.NewProc("GetComputerNameExW") + procGetComputerNameW = modkernel32.NewProc("GetComputerNameW") + procGetConsoleMode = modkernel32.NewProc("GetConsoleMode") + procGetConsoleScreenBufferInfo = modkernel32.NewProc("GetConsoleScreenBufferInfo") + procGetCurrentDirectoryW = modkernel32.NewProc("GetCurrentDirectoryW") + procGetCurrentProcessId = modkernel32.NewProc("GetCurrentProcessId") + procGetCurrentThreadId = modkernel32.NewProc("GetCurrentThreadId") procGetDiskFreeSpaceExW = modkernel32.NewProc("GetDiskFreeSpaceExW") procGetDriveTypeW = modkernel32.NewProc("GetDriveTypeW") - procGetLogicalDrives = modkernel32.NewProc("GetLogicalDrives") + procGetEnvironmentStringsW = modkernel32.NewProc("GetEnvironmentStringsW") + procGetEnvironmentVariableW = modkernel32.NewProc("GetEnvironmentVariableW") + procGetExitCodeProcess = modkernel32.NewProc("GetExitCodeProcess") + procGetFileAttributesExW = modkernel32.NewProc("GetFileAttributesExW") + procGetFileAttributesW = modkernel32.NewProc("GetFileAttributesW") + procGetFileInformationByHandle = modkernel32.NewProc("GetFileInformationByHandle") + procGetFileInformationByHandleEx = modkernel32.NewProc("GetFileInformationByHandleEx") + procGetFileType = modkernel32.NewProc("GetFileType") + procGetFullPathNameW = modkernel32.NewProc("GetFullPathNameW") + procGetLastError = modkernel32.NewProc("GetLastError") procGetLogicalDriveStringsW = modkernel32.NewProc("GetLogicalDriveStringsW") - procGetVolumeInformationW = modkernel32.NewProc("GetVolumeInformationW") + procGetLogicalDrives = modkernel32.NewProc("GetLogicalDrives") + procGetLongPathNameW = modkernel32.NewProc("GetLongPathNameW") + procGetModuleFileNameW = modkernel32.NewProc("GetModuleFileNameW") + procGetModuleHandleExW = modkernel32.NewProc("GetModuleHandleExW") + procGetOverlappedResult = modkernel32.NewProc("GetOverlappedResult") + procGetPriorityClass = modkernel32.NewProc("GetPriorityClass") + procGetProcAddress = modkernel32.NewProc("GetProcAddress") + procGetProcessId = modkernel32.NewProc("GetProcessId") + procGetProcessPreferredUILanguages = modkernel32.NewProc("GetProcessPreferredUILanguages") + procGetProcessShutdownParameters = modkernel32.NewProc("GetProcessShutdownParameters") + procGetProcessTimes = modkernel32.NewProc("GetProcessTimes") + procGetProcessWorkingSetSizeEx = modkernel32.NewProc("GetProcessWorkingSetSizeEx") + procGetQueuedCompletionStatus = modkernel32.NewProc("GetQueuedCompletionStatus") + procGetShortPathNameW = modkernel32.NewProc("GetShortPathNameW") + procGetStartupInfoW = modkernel32.NewProc("GetStartupInfoW") + procGetStdHandle = modkernel32.NewProc("GetStdHandle") + procGetSystemDirectoryW = modkernel32.NewProc("GetSystemDirectoryW") + procGetSystemPreferredUILanguages = modkernel32.NewProc("GetSystemPreferredUILanguages") + procGetSystemTimeAsFileTime = modkernel32.NewProc("GetSystemTimeAsFileTime") + procGetSystemTimePreciseAsFileTime = modkernel32.NewProc("GetSystemTimePreciseAsFileTime") + procGetSystemWindowsDirectoryW = modkernel32.NewProc("GetSystemWindowsDirectoryW") + procGetTempPathW = modkernel32.NewProc("GetTempPathW") + procGetThreadPreferredUILanguages = modkernel32.NewProc("GetThreadPreferredUILanguages") + procGetTickCount64 = modkernel32.NewProc("GetTickCount64") + procGetTimeZoneInformation = modkernel32.NewProc("GetTimeZoneInformation") + procGetUserPreferredUILanguages = modkernel32.NewProc("GetUserPreferredUILanguages") + procGetVersion = modkernel32.NewProc("GetVersion") procGetVolumeInformationByHandleW = modkernel32.NewProc("GetVolumeInformationByHandleW") + procGetVolumeInformationW = modkernel32.NewProc("GetVolumeInformationW") procGetVolumeNameForVolumeMountPointW = modkernel32.NewProc("GetVolumeNameForVolumeMountPointW") procGetVolumePathNameW = modkernel32.NewProc("GetVolumePathNameW") procGetVolumePathNamesForVolumeNameW = modkernel32.NewProc("GetVolumePathNamesForVolumeNameW") + procGetWindowsDirectoryW = modkernel32.NewProc("GetWindowsDirectoryW") + procIsWow64Process = modkernel32.NewProc("IsWow64Process") + procLoadLibraryExW = modkernel32.NewProc("LoadLibraryExW") + procLoadLibraryW = modkernel32.NewProc("LoadLibraryW") + procLocalFree = modkernel32.NewProc("LocalFree") + procLockFileEx = modkernel32.NewProc("LockFileEx") + procMapViewOfFile = modkernel32.NewProc("MapViewOfFile") + procMoveFileExW = modkernel32.NewProc("MoveFileExW") + procMoveFileW = modkernel32.NewProc("MoveFileW") + procMultiByteToWideChar = modkernel32.NewProc("MultiByteToWideChar") + procOpenEventW = modkernel32.NewProc("OpenEventW") + procOpenMutexW = modkernel32.NewProc("OpenMutexW") + procOpenProcess = modkernel32.NewProc("OpenProcess") + procOpenThread = modkernel32.NewProc("OpenThread") + procPostQueuedCompletionStatus = modkernel32.NewProc("PostQueuedCompletionStatus") + procProcess32FirstW = modkernel32.NewProc("Process32FirstW") + procProcess32NextW = modkernel32.NewProc("Process32NextW") + procProcessIdToSessionId = modkernel32.NewProc("ProcessIdToSessionId") + procPulseEvent = modkernel32.NewProc("PulseEvent") procQueryDosDeviceW = modkernel32.NewProc("QueryDosDeviceW") + procQueryInformationJobObject = modkernel32.NewProc("QueryInformationJobObject") + procReadConsoleW = modkernel32.NewProc("ReadConsoleW") + procReadDirectoryChangesW = modkernel32.NewProc("ReadDirectoryChangesW") + procReadFile = modkernel32.NewProc("ReadFile") + procReleaseMutex = modkernel32.NewProc("ReleaseMutex") + procRemoveDirectoryW = modkernel32.NewProc("RemoveDirectoryW") + procResetEvent = modkernel32.NewProc("ResetEvent") + procResumeThread = modkernel32.NewProc("ResumeThread") + procSetConsoleCursorPosition = modkernel32.NewProc("SetConsoleCursorPosition") + procSetConsoleMode = modkernel32.NewProc("SetConsoleMode") + procSetCurrentDirectoryW = modkernel32.NewProc("SetCurrentDirectoryW") + procSetEndOfFile = modkernel32.NewProc("SetEndOfFile") + procSetEnvironmentVariableW = modkernel32.NewProc("SetEnvironmentVariableW") + procSetErrorMode = modkernel32.NewProc("SetErrorMode") + procSetEvent = modkernel32.NewProc("SetEvent") + procSetFileAttributesW = modkernel32.NewProc("SetFileAttributesW") + procSetFileCompletionNotificationModes = modkernel32.NewProc("SetFileCompletionNotificationModes") + procSetFilePointer = modkernel32.NewProc("SetFilePointer") + procSetFileTime = modkernel32.NewProc("SetFileTime") + procSetHandleInformation = modkernel32.NewProc("SetHandleInformation") + procSetInformationJobObject = modkernel32.NewProc("SetInformationJobObject") + procSetPriorityClass = modkernel32.NewProc("SetPriorityClass") + procSetProcessPriorityBoost = modkernel32.NewProc("SetProcessPriorityBoost") + procSetProcessShutdownParameters = modkernel32.NewProc("SetProcessShutdownParameters") + procSetProcessWorkingSetSizeEx = modkernel32.NewProc("SetProcessWorkingSetSizeEx") + procSetStdHandle = modkernel32.NewProc("SetStdHandle") procSetVolumeLabelW = modkernel32.NewProc("SetVolumeLabelW") procSetVolumeMountPointW = modkernel32.NewProc("SetVolumeMountPointW") - procMessageBoxW = moduser32.NewProc("MessageBoxW") - procExitWindowsEx = moduser32.NewProc("ExitWindowsEx") - procInitiateSystemShutdownExW = modadvapi32.NewProc("InitiateSystemShutdownExW") - procSetProcessShutdownParameters = modkernel32.NewProc("SetProcessShutdownParameters") - procGetProcessShutdownParameters = modkernel32.NewProc("GetProcessShutdownParameters") - procCLSIDFromString = modole32.NewProc("CLSIDFromString") - procStringFromGUID2 = modole32.NewProc("StringFromGUID2") - procCoCreateGuid = modole32.NewProc("CoCreateGuid") - procCoTaskMemFree = modole32.NewProc("CoTaskMemFree") - procRtlGetVersion = modntdll.NewProc("RtlGetVersion") - procRtlGetNtVersionNumbers = modntdll.NewProc("RtlGetNtVersionNumbers") - procGetProcessPreferredUILanguages = modkernel32.NewProc("GetProcessPreferredUILanguages") - procGetThreadPreferredUILanguages = modkernel32.NewProc("GetThreadPreferredUILanguages") - procGetUserPreferredUILanguages = modkernel32.NewProc("GetUserPreferredUILanguages") - procGetSystemPreferredUILanguages = modkernel32.NewProc("GetSystemPreferredUILanguages") - procEnumProcesses = modpsapi.NewProc("EnumProcesses") - procWSAStartup = modws2_32.NewProc("WSAStartup") - procWSACleanup = modws2_32.NewProc("WSACleanup") - procWSAIoctl = modws2_32.NewProc("WSAIoctl") - procsocket = modws2_32.NewProc("socket") - procsendto = modws2_32.NewProc("sendto") - procrecvfrom = modws2_32.NewProc("recvfrom") - procsetsockopt = modws2_32.NewProc("setsockopt") - procgetsockopt = modws2_32.NewProc("getsockopt") - procbind = modws2_32.NewProc("bind") - procconnect = modws2_32.NewProc("connect") - procgetsockname = modws2_32.NewProc("getsockname") - procgetpeername = modws2_32.NewProc("getpeername") - proclisten = modws2_32.NewProc("listen") - procshutdown = modws2_32.NewProc("shutdown") - procclosesocket = modws2_32.NewProc("closesocket") + procSleepEx = modkernel32.NewProc("SleepEx") + procTerminateJobObject = modkernel32.NewProc("TerminateJobObject") + procTerminateProcess = modkernel32.NewProc("TerminateProcess") + procThread32First = modkernel32.NewProc("Thread32First") + procThread32Next = modkernel32.NewProc("Thread32Next") + procUnlockFileEx = modkernel32.NewProc("UnlockFileEx") + procUnmapViewOfFile = modkernel32.NewProc("UnmapViewOfFile") + procVirtualAlloc = modkernel32.NewProc("VirtualAlloc") + procVirtualFree = modkernel32.NewProc("VirtualFree") + procVirtualLock = modkernel32.NewProc("VirtualLock") + procVirtualProtect = modkernel32.NewProc("VirtualProtect") + procVirtualUnlock = modkernel32.NewProc("VirtualUnlock") + procWaitForMultipleObjects = modkernel32.NewProc("WaitForMultipleObjects") + procWaitForSingleObject = modkernel32.NewProc("WaitForSingleObject") + procWriteConsoleW = modkernel32.NewProc("WriteConsoleW") + procWriteFile = modkernel32.NewProc("WriteFile") procAcceptEx = modmswsock.NewProc("AcceptEx") procGetAcceptExSockaddrs = modmswsock.NewProc("GetAcceptExSockaddrs") - procWSARecv = modws2_32.NewProc("WSARecv") - procWSASend = modws2_32.NewProc("WSASend") - procWSARecvFrom = modws2_32.NewProc("WSARecvFrom") - procWSASendTo = modws2_32.NewProc("WSASendTo") - procgethostbyname = modws2_32.NewProc("gethostbyname") - procgetservbyname = modws2_32.NewProc("getservbyname") - procntohs = modws2_32.NewProc("ntohs") - procgetprotobyname = modws2_32.NewProc("getprotobyname") - procDnsQuery_W = moddnsapi.NewProc("DnsQuery_W") - procDnsRecordListFree = moddnsapi.NewProc("DnsRecordListFree") - procDnsNameCompare_W = moddnsapi.NewProc("DnsNameCompare_W") - procGetAddrInfoW = modws2_32.NewProc("GetAddrInfoW") - procFreeAddrInfoW = modws2_32.NewProc("FreeAddrInfoW") - procGetIfEntry = modiphlpapi.NewProc("GetIfEntry") - procGetAdaptersInfo = modiphlpapi.NewProc("GetAdaptersInfo") - procSetFileCompletionNotificationModes = modkernel32.NewProc("SetFileCompletionNotificationModes") - procWSAEnumProtocolsW = modws2_32.NewProc("WSAEnumProtocolsW") - procGetAdaptersAddresses = modiphlpapi.NewProc("GetAdaptersAddresses") - procGetACP = modkernel32.NewProc("GetACP") - procMultiByteToWideChar = modkernel32.NewProc("MultiByteToWideChar") - procTranslateNameW = modsecur32.NewProc("TranslateNameW") - procGetUserNameExW = modsecur32.NewProc("GetUserNameExW") - procNetUserGetInfo = modnetapi32.NewProc("NetUserGetInfo") - procNetGetJoinInformation = modnetapi32.NewProc("NetGetJoinInformation") + procTransmitFile = modmswsock.NewProc("TransmitFile") procNetApiBufferFree = modnetapi32.NewProc("NetApiBufferFree") - procLookupAccountSidW = modadvapi32.NewProc("LookupAccountSidW") - procLookupAccountNameW = modadvapi32.NewProc("LookupAccountNameW") - procConvertSidToStringSidW = modadvapi32.NewProc("ConvertSidToStringSidW") - procConvertStringSidToSidW = modadvapi32.NewProc("ConvertStringSidToSidW") - procGetLengthSid = modadvapi32.NewProc("GetLengthSid") - procCopySid = modadvapi32.NewProc("CopySid") - procAllocateAndInitializeSid = modadvapi32.NewProc("AllocateAndInitializeSid") - procCreateWellKnownSid = modadvapi32.NewProc("CreateWellKnownSid") - procIsWellKnownSid = modadvapi32.NewProc("IsWellKnownSid") - procFreeSid = modadvapi32.NewProc("FreeSid") - procEqualSid = modadvapi32.NewProc("EqualSid") - procGetSidIdentifierAuthority = modadvapi32.NewProc("GetSidIdentifierAuthority") - procGetSidSubAuthorityCount = modadvapi32.NewProc("GetSidSubAuthorityCount") - procGetSidSubAuthority = modadvapi32.NewProc("GetSidSubAuthority") - procIsValidSid = modadvapi32.NewProc("IsValidSid") - procCheckTokenMembership = modadvapi32.NewProc("CheckTokenMembership") - procOpenProcessToken = modadvapi32.NewProc("OpenProcessToken") - procOpenThreadToken = modadvapi32.NewProc("OpenThreadToken") - procImpersonateSelf = modadvapi32.NewProc("ImpersonateSelf") - procRevertToSelf = modadvapi32.NewProc("RevertToSelf") - procSetThreadToken = modadvapi32.NewProc("SetThreadToken") - procLookupPrivilegeValueW = modadvapi32.NewProc("LookupPrivilegeValueW") - procAdjustTokenPrivileges = modadvapi32.NewProc("AdjustTokenPrivileges") - procAdjustTokenGroups = modadvapi32.NewProc("AdjustTokenGroups") - procGetTokenInformation = modadvapi32.NewProc("GetTokenInformation") - procSetTokenInformation = modadvapi32.NewProc("SetTokenInformation") - procDuplicateTokenEx = modadvapi32.NewProc("DuplicateTokenEx") + procNetGetJoinInformation = modnetapi32.NewProc("NetGetJoinInformation") + procNetUserGetInfo = modnetapi32.NewProc("NetUserGetInfo") + procRtlGetNtVersionNumbers = modntdll.NewProc("RtlGetNtVersionNumbers") + procRtlGetVersion = modntdll.NewProc("RtlGetVersion") + procCLSIDFromString = modole32.NewProc("CLSIDFromString") + procCoCreateGuid = modole32.NewProc("CoCreateGuid") + procCoTaskMemFree = modole32.NewProc("CoTaskMemFree") + procStringFromGUID2 = modole32.NewProc("StringFromGUID2") + procEnumProcesses = modpsapi.NewProc("EnumProcesses") + procGetUserNameExW = modsecur32.NewProc("GetUserNameExW") + procTranslateNameW = modsecur32.NewProc("TranslateNameW") + procCommandLineToArgvW = modshell32.NewProc("CommandLineToArgvW") + procSHGetKnownFolderPath = modshell32.NewProc("SHGetKnownFolderPath") + procShellExecuteW = modshell32.NewProc("ShellExecuteW") + procExitWindowsEx = moduser32.NewProc("ExitWindowsEx") + procMessageBoxW = moduser32.NewProc("MessageBoxW") + procCreateEnvironmentBlock = moduserenv.NewProc("CreateEnvironmentBlock") + procDestroyEnvironmentBlock = moduserenv.NewProc("DestroyEnvironmentBlock") procGetUserProfileDirectoryW = moduserenv.NewProc("GetUserProfileDirectoryW") - procGetSystemDirectoryW = modkernel32.NewProc("GetSystemDirectoryW") - procGetWindowsDirectoryW = modkernel32.NewProc("GetWindowsDirectoryW") - procGetSystemWindowsDirectoryW = modkernel32.NewProc("GetSystemWindowsDirectoryW") - procWTSQueryUserToken = modwtsapi32.NewProc("WTSQueryUserToken") + procFreeAddrInfoW = modws2_32.NewProc("FreeAddrInfoW") + procGetAddrInfoW = modws2_32.NewProc("GetAddrInfoW") + procWSACleanup = modws2_32.NewProc("WSACleanup") + procWSAEnumProtocolsW = modws2_32.NewProc("WSAEnumProtocolsW") + procWSAIoctl = modws2_32.NewProc("WSAIoctl") + procWSARecv = modws2_32.NewProc("WSARecv") + procWSARecvFrom = modws2_32.NewProc("WSARecvFrom") + procWSASend = modws2_32.NewProc("WSASend") + procWSASendTo = modws2_32.NewProc("WSASendTo") + procWSAStartup = modws2_32.NewProc("WSAStartup") + procbind = modws2_32.NewProc("bind") + procclosesocket = modws2_32.NewProc("closesocket") + procconnect = modws2_32.NewProc("connect") + procgethostbyname = modws2_32.NewProc("gethostbyname") + procgetpeername = modws2_32.NewProc("getpeername") + procgetprotobyname = modws2_32.NewProc("getprotobyname") + procgetservbyname = modws2_32.NewProc("getservbyname") + procgetsockname = modws2_32.NewProc("getsockname") + procgetsockopt = modws2_32.NewProc("getsockopt") + proclisten = modws2_32.NewProc("listen") + procntohs = modws2_32.NewProc("ntohs") + procrecvfrom = modws2_32.NewProc("recvfrom") + procsendto = modws2_32.NewProc("sendto") + procsetsockopt = modws2_32.NewProc("setsockopt") + procshutdown = modws2_32.NewProc("shutdown") + procsocket = modws2_32.NewProc("socket") procWTSEnumerateSessionsW = modwtsapi32.NewProc("WTSEnumerateSessionsW") procWTSFreeMemory = modwtsapi32.NewProc("WTSFreeMemory") - procGetSecurityInfo = modadvapi32.NewProc("GetSecurityInfo") - procSetSecurityInfo = modadvapi32.NewProc("SetSecurityInfo") - procGetNamedSecurityInfoW = modadvapi32.NewProc("GetNamedSecurityInfoW") - procSetNamedSecurityInfoW = modadvapi32.NewProc("SetNamedSecurityInfoW") - procBuildSecurityDescriptorW = modadvapi32.NewProc("BuildSecurityDescriptorW") - procInitializeSecurityDescriptor = modadvapi32.NewProc("InitializeSecurityDescriptor") - procGetSecurityDescriptorControl = modadvapi32.NewProc("GetSecurityDescriptorControl") - procGetSecurityDescriptorDacl = modadvapi32.NewProc("GetSecurityDescriptorDacl") - procGetSecurityDescriptorSacl = modadvapi32.NewProc("GetSecurityDescriptorSacl") - procGetSecurityDescriptorOwner = modadvapi32.NewProc("GetSecurityDescriptorOwner") - procGetSecurityDescriptorGroup = modadvapi32.NewProc("GetSecurityDescriptorGroup") - procGetSecurityDescriptorLength = modadvapi32.NewProc("GetSecurityDescriptorLength") - procGetSecurityDescriptorRMControl = modadvapi32.NewProc("GetSecurityDescriptorRMControl") - procIsValidSecurityDescriptor = modadvapi32.NewProc("IsValidSecurityDescriptor") - procSetSecurityDescriptorControl = modadvapi32.NewProc("SetSecurityDescriptorControl") - procSetSecurityDescriptorDacl = modadvapi32.NewProc("SetSecurityDescriptorDacl") - procSetSecurityDescriptorSacl = modadvapi32.NewProc("SetSecurityDescriptorSacl") - procSetSecurityDescriptorOwner = modadvapi32.NewProc("SetSecurityDescriptorOwner") - procSetSecurityDescriptorGroup = modadvapi32.NewProc("SetSecurityDescriptorGroup") - procSetSecurityDescriptorRMControl = modadvapi32.NewProc("SetSecurityDescriptorRMControl") - procConvertStringSecurityDescriptorToSecurityDescriptorW = modadvapi32.NewProc("ConvertStringSecurityDescriptorToSecurityDescriptorW") - procConvertSecurityDescriptorToStringSecurityDescriptorW = modadvapi32.NewProc("ConvertSecurityDescriptorToStringSecurityDescriptorW") - procMakeAbsoluteSD = modadvapi32.NewProc("MakeAbsoluteSD") - procMakeSelfRelativeSD = modadvapi32.NewProc("MakeSelfRelativeSD") - procSetEntriesInAclW = modadvapi32.NewProc("SetEntriesInAclW") + procWTSQueryUserToken = modwtsapi32.NewProc("WTSQueryUserToken") ) -func RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procRegisterEventSourceW.Addr(), 2, uintptr(unsafe.Pointer(uncServerName)), uintptr(unsafe.Pointer(sourceName)), 0) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func AdjustTokenGroups(token Token, resetToDefault bool, newstate *Tokengroups, buflen uint32, prevstate *Tokengroups, returnlen *uint32) (err error) { + var _p0 uint32 + if resetToDefault { + _p0 = 1 } - return -} - -func DeregisterEventSource(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procDeregisterEventSource.Addr(), 1, uintptr(handle), 0, 0) + r1, _, e1 := syscall.Syscall6(procAdjustTokenGroups.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) { - r1, _, e1 := syscall.Syscall9(procReportEventW.Addr(), 9, uintptr(log), uintptr(etype), uintptr(category), uintptr(eventId), uintptr(usrSId), uintptr(numStrings), uintptr(dataSize), uintptr(unsafe.Pointer(strings)), uintptr(unsafe.Pointer(rawData))) +func AdjustTokenPrivileges(token Token, disableAllPrivileges bool, newstate *Tokenprivileges, buflen uint32, prevstate *Tokenprivileges, returnlen *uint32) (err error) { + var _p0 uint32 + if disableAllPrivileges { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall6(procAdjustTokenPrivileges.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procOpenSCManagerW.Addr(), 3, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(databaseName)), uintptr(access)) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func AllocateAndInitializeSid(identAuth *SidIdentifierAuthority, subAuth byte, subAuth0 uint32, subAuth1 uint32, subAuth2 uint32, subAuth3 uint32, subAuth4 uint32, subAuth5 uint32, subAuth6 uint32, subAuth7 uint32, sid **SID) (err error) { + r1, _, e1 := syscall.Syscall12(procAllocateAndInitializeSid.Addr(), 11, uintptr(unsafe.Pointer(identAuth)), uintptr(subAuth), uintptr(subAuth0), uintptr(subAuth1), uintptr(subAuth2), uintptr(subAuth3), uintptr(subAuth4), uintptr(subAuth5), uintptr(subAuth6), uintptr(subAuth7), uintptr(unsafe.Pointer(sid)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func buildSecurityDescriptor(owner *TRUSTEE, group *TRUSTEE, countAccessEntries uint32, accessEntries *EXPLICIT_ACCESS, countAuditEntries uint32, auditEntries *EXPLICIT_ACCESS, oldSecurityDescriptor *SECURITY_DESCRIPTOR, sizeNewSecurityDescriptor *uint32, newSecurityDescriptor **SECURITY_DESCRIPTOR) (ret error) { + r0, _, _ := syscall.Syscall9(procBuildSecurityDescriptorW.Addr(), 9, uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(countAccessEntries), uintptr(unsafe.Pointer(accessEntries)), uintptr(countAuditEntries), uintptr(unsafe.Pointer(auditEntries)), uintptr(unsafe.Pointer(oldSecurityDescriptor)), uintptr(unsafe.Pointer(sizeNewSecurityDescriptor)), uintptr(unsafe.Pointer(newSecurityDescriptor))) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func ChangeServiceConfig2(service Handle, infoLevel uint32, info *byte) (err error) { + r1, _, e1 := syscall.Syscall(procChangeServiceConfig2W.Addr(), 3, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(info))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ChangeServiceConfig(service Handle, serviceType uint32, startType uint32, errorControl uint32, binaryPathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16, displayName *uint16) (err error) { + r1, _, e1 := syscall.Syscall12(procChangeServiceConfigW.Addr(), 11, uintptr(service), uintptr(serviceType), uintptr(startType), uintptr(errorControl), uintptr(unsafe.Pointer(binaryPathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), uintptr(unsafe.Pointer(displayName)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func checkTokenMembership(tokenHandle Token, sidToCheck *SID, isMember *int32) (err error) { + r1, _, e1 := syscall.Syscall(procCheckTokenMembership.Addr(), 3, uintptr(tokenHandle), uintptr(unsafe.Pointer(sidToCheck)), uintptr(unsafe.Pointer(isMember))) + if r1 == 0 { + err = errnoErr(e1) } return } @@ -413,11 +429,64 @@ func OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (ha func CloseServiceHandle(handle Handle) (err error) { r1, _, e1 := syscall.Syscall(procCloseServiceHandle.Addr(), 1, uintptr(handle), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) + } + return +} + +func ControlService(service Handle, control uint32, status *SERVICE_STATUS) (err error) { + r1, _, e1 := syscall.Syscall(procControlService.Addr(), 3, uintptr(service), uintptr(control), uintptr(unsafe.Pointer(status))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func convertSecurityDescriptorToStringSecurityDescriptor(sd *SECURITY_DESCRIPTOR, revision uint32, securityInformation SECURITY_INFORMATION, str **uint16, strLen *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procConvertSecurityDescriptorToStringSecurityDescriptorW.Addr(), 5, uintptr(unsafe.Pointer(sd)), uintptr(revision), uintptr(securityInformation), uintptr(unsafe.Pointer(str)), uintptr(unsafe.Pointer(strLen)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ConvertSidToStringSid(sid *SID, stringSid **uint16) (err error) { + r1, _, e1 := syscall.Syscall(procConvertSidToStringSidW.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(stringSid)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func convertStringSecurityDescriptorToSecurityDescriptor(str string, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { + var _p0 *uint16 + _p0, err = syscall.UTF16PtrFromString(str) + if err != nil { + return + } + return _convertStringSecurityDescriptorToSecurityDescriptor(_p0, revision, sd, size) +} + +func _convertStringSecurityDescriptorToSecurityDescriptor(str *uint16, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procConvertStringSecurityDescriptorToSecurityDescriptorW.Addr(), 4, uintptr(unsafe.Pointer(str)), uintptr(revision), uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(size)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ConvertStringSidToSid(stringSid *uint16, sid **SID) (err error) { + r1, _, e1 := syscall.Syscall(procConvertStringSidToSidW.Addr(), 2, uintptr(unsafe.Pointer(stringSid)), uintptr(unsafe.Pointer(sid)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CopySid(destSidLen uint32, destSid *SID, srcSid *SID) (err error) { + r1, _, e1 := syscall.Syscall(procCopySid.Addr(), 3, uintptr(destSidLen), uintptr(unsafe.Pointer(destSid)), uintptr(unsafe.Pointer(srcSid))) + if r1 == 0 { + err = errnoErr(e1) } return } @@ -426,24 +495,39 @@ func CreateService(mgr Handle, serviceName *uint16, displayName *uint16, access r0, _, e1 := syscall.Syscall15(procCreateServiceW.Addr(), 13, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(unsafe.Pointer(displayName)), uintptr(access), uintptr(srvType), uintptr(startType), uintptr(errCtl), uintptr(unsafe.Pointer(pathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), 0, 0) handle = Handle(r0) if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procOpenServiceW.Addr(), 3, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(access)) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func createWellKnownSid(sidType WELL_KNOWN_SID_TYPE, domainSid *SID, sid *SID, sizeSid *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procCreateWellKnownSid.Addr(), 4, uintptr(sidType), uintptr(unsafe.Pointer(domainSid)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sizeSid)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CryptAcquireContext(provhandle *Handle, container *uint16, provider *uint16, provtype uint32, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procCryptAcquireContextW.Addr(), 5, uintptr(unsafe.Pointer(provhandle)), uintptr(unsafe.Pointer(container)), uintptr(unsafe.Pointer(provider)), uintptr(provtype), uintptr(flags), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CryptGenRandom(provhandle Handle, buflen uint32, buf *byte) (err error) { + r1, _, e1 := syscall.Syscall(procCryptGenRandom.Addr(), 3, uintptr(provhandle), uintptr(buflen), uintptr(unsafe.Pointer(buf))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CryptReleaseContext(provhandle Handle, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procCryptReleaseContext.Addr(), 2, uintptr(provhandle), uintptr(flags), 0) + if r1 == 0 { + err = errnoErr(e1) } return } @@ -451,131 +535,23 @@ func OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, func DeleteService(service Handle) (err error) { r1, _, e1 := syscall.Syscall(procDeleteService.Addr(), 1, uintptr(service), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func StartService(service Handle, numArgs uint32, argVectors **uint16) (err error) { - r1, _, e1 := syscall.Syscall(procStartServiceW.Addr(), 3, uintptr(service), uintptr(numArgs), uintptr(unsafe.Pointer(argVectors))) +func DeregisterEventSource(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procDeregisterEventSource.Addr(), 1, uintptr(handle), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func QueryServiceStatus(service Handle, status *SERVICE_STATUS) (err error) { - r1, _, e1 := syscall.Syscall(procQueryServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(status)), 0) +func DuplicateTokenEx(existingToken Token, desiredAccess uint32, tokenAttributes *SecurityAttributes, impersonationLevel uint32, tokenType uint32, newToken *Token) (err error) { + r1, _, e1 := syscall.Syscall6(procDuplicateTokenEx.Addr(), 6, uintptr(existingToken), uintptr(desiredAccess), uintptr(unsafe.Pointer(tokenAttributes)), uintptr(impersonationLevel), uintptr(tokenType), uintptr(unsafe.Pointer(newToken))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func QueryServiceLockStatus(mgr Handle, lockStatus *QUERY_SERVICE_LOCK_STATUS, bufSize uint32, bytesNeeded *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procQueryServiceLockStatusW.Addr(), 4, uintptr(mgr), uintptr(unsafe.Pointer(lockStatus)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ControlService(service Handle, control uint32, status *SERVICE_STATUS) (err error) { - r1, _, e1 := syscall.Syscall(procControlService.Addr(), 3, uintptr(service), uintptr(control), uintptr(unsafe.Pointer(status))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func StartServiceCtrlDispatcher(serviceTable *SERVICE_TABLE_ENTRY) (err error) { - r1, _, e1 := syscall.Syscall(procStartServiceCtrlDispatcherW.Addr(), 1, uintptr(unsafe.Pointer(serviceTable)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetServiceStatus(service Handle, serviceStatus *SERVICE_STATUS) (err error) { - r1, _, e1 := syscall.Syscall(procSetServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(serviceStatus)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ChangeServiceConfig(service Handle, serviceType uint32, startType uint32, errorControl uint32, binaryPathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16, displayName *uint16) (err error) { - r1, _, e1 := syscall.Syscall12(procChangeServiceConfigW.Addr(), 11, uintptr(service), uintptr(serviceType), uintptr(startType), uintptr(errorControl), uintptr(unsafe.Pointer(binaryPathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), uintptr(unsafe.Pointer(displayName)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func QueryServiceConfig(service Handle, serviceConfig *QUERY_SERVICE_CONFIG, bufSize uint32, bytesNeeded *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procQueryServiceConfigW.Addr(), 4, uintptr(service), uintptr(unsafe.Pointer(serviceConfig)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ChangeServiceConfig2(service Handle, infoLevel uint32, info *byte) (err error) { - r1, _, e1 := syscall.Syscall(procChangeServiceConfig2W.Addr(), 3, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(info))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func QueryServiceConfig2(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procQueryServiceConfig2W.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } @@ -583,23 +559,252 @@ func QueryServiceConfig2(service Handle, infoLevel uint32, buff *byte, buffSize func EnumServicesStatusEx(mgr Handle, infoLevel uint32, serviceType uint32, serviceState uint32, services *byte, bufSize uint32, bytesNeeded *uint32, servicesReturned *uint32, resumeHandle *uint32, groupName *uint16) (err error) { r1, _, e1 := syscall.Syscall12(procEnumServicesStatusExW.Addr(), 10, uintptr(mgr), uintptr(infoLevel), uintptr(serviceType), uintptr(serviceState), uintptr(unsafe.Pointer(services)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), uintptr(unsafe.Pointer(servicesReturned)), uintptr(unsafe.Pointer(resumeHandle)), uintptr(unsafe.Pointer(groupName)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func QueryServiceStatusEx(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procQueryServiceStatusEx.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0) +func EqualSid(sid1 *SID, sid2 *SID) (isEqual bool) { + r0, _, _ := syscall.Syscall(procEqualSid.Addr(), 2, uintptr(unsafe.Pointer(sid1)), uintptr(unsafe.Pointer(sid2)), 0) + isEqual = r0 != 0 + return +} + +func FreeSid(sid *SID) (err error) { + r1, _, e1 := syscall.Syscall(procFreeSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) + if r1 != 0 { + err = errnoErr(e1) + } + return +} + +func GetLengthSid(sid *SID) (len uint32) { + r0, _, _ := syscall.Syscall(procGetLengthSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) + len = uint32(r0) + return +} + +func getNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { + var _p0 *uint16 + _p0, ret = syscall.UTF16PtrFromString(objectName) + if ret != nil { + return + } + return _getNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl, sd) +} + +func _getNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { + r0, _, _ := syscall.Syscall9(procGetNamedSecurityInfoW.Addr(), 8, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func getSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, control *SECURITY_DESCRIPTOR_CONTROL, revision *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(control)), uintptr(unsafe.Pointer(revision))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) + } + return +} + +func getSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent *bool, dacl **ACL, daclDefaulted *bool) (err error) { + var _p0 uint32 + if *daclPresent { + _p0 = 1 + } + var _p1 uint32 + if *daclDefaulted { + _p1 = 1 + } + r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) + *daclPresent = _p0 != 0 + *daclDefaulted = _p1 != 0 + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group **SID, groupDefaulted *bool) (err error) { + var _p0 uint32 + if *groupDefaulted { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(&_p0))) + *groupDefaulted = _p0 != 0 + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getSecurityDescriptorLength(sd *SECURITY_DESCRIPTOR) (len uint32) { + r0, _, _ := syscall.Syscall(procGetSecurityDescriptorLength.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) + len = uint32(r0) + return +} + +func getSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner **SID, ownerDefaulted *bool) (err error) { + var _p0 uint32 + if *ownerDefaulted { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(&_p0))) + *ownerDefaulted = _p0 != 0 + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) (ret error) { + r0, _, _ := syscall.Syscall(procGetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func getSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent *bool, sacl **ACL, saclDefaulted *bool) (err error) { + var _p0 uint32 + if *saclPresent { + _p0 = 1 + } + var _p1 uint32 + if *saclDefaulted { + _p1 = 1 + } + r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) + *saclPresent = _p0 != 0 + *saclDefaulted = _p1 != 0 + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { + r0, _, _ := syscall.Syscall9(procGetSecurityInfo.Addr(), 8, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func getSidIdentifierAuthority(sid *SID) (authority *SidIdentifierAuthority) { + r0, _, _ := syscall.Syscall(procGetSidIdentifierAuthority.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) + authority = (*SidIdentifierAuthority)(unsafe.Pointer(r0)) + return +} + +func getSidSubAuthority(sid *SID, index uint32) (subAuthority *uint32) { + r0, _, _ := syscall.Syscall(procGetSidSubAuthority.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(index), 0) + subAuthority = (*uint32)(unsafe.Pointer(r0)) + return +} + +func getSidSubAuthorityCount(sid *SID) (count *uint8) { + r0, _, _ := syscall.Syscall(procGetSidSubAuthorityCount.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) + count = (*uint8)(unsafe.Pointer(r0)) + return +} + +func GetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32, returnedLen *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetTokenInformation.Addr(), 5, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), uintptr(unsafe.Pointer(returnedLen)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ImpersonateSelf(impersonationlevel uint32) (err error) { + r1, _, e1 := syscall.Syscall(procImpersonateSelf.Addr(), 1, uintptr(impersonationlevel), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func initializeSecurityDescriptor(absoluteSD *SECURITY_DESCRIPTOR, revision uint32) (err error) { + r1, _, e1 := syscall.Syscall(procInitializeSecurityDescriptor.Addr(), 2, uintptr(unsafe.Pointer(absoluteSD)), uintptr(revision), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func InitiateSystemShutdownEx(machineName *uint16, message *uint16, timeout uint32, forceAppsClosed bool, rebootAfterShutdown bool, reason uint32) (err error) { + var _p0 uint32 + if forceAppsClosed { + _p0 = 1 + } + var _p1 uint32 + if rebootAfterShutdown { + _p1 = 1 + } + r1, _, e1 := syscall.Syscall6(procInitiateSystemShutdownExW.Addr(), 6, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(message)), uintptr(timeout), uintptr(_p0), uintptr(_p1), uintptr(reason)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func isValidSecurityDescriptor(sd *SECURITY_DESCRIPTOR) (isValid bool) { + r0, _, _ := syscall.Syscall(procIsValidSecurityDescriptor.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) + isValid = r0 != 0 + return +} + +func isValidSid(sid *SID) (isValid bool) { + r0, _, _ := syscall.Syscall(procIsValidSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) + isValid = r0 != 0 + return +} + +func isWellKnownSid(sid *SID, sidType WELL_KNOWN_SID_TYPE) (isWellKnown bool) { + r0, _, _ := syscall.Syscall(procIsWellKnownSid.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(sidType), 0) + isWellKnown = r0 != 0 + return +} + +func LookupAccountName(systemName *uint16, accountName *uint16, sid *SID, sidLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { + r1, _, e1 := syscall.Syscall9(procLookupAccountNameW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(accountName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sidLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func LookupAccountSid(systemName *uint16, sid *SID, name *uint16, nameLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { + r1, _, e1 := syscall.Syscall9(procLookupAccountSidW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(nameLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func LookupPrivilegeValue(systemname *uint16, name *uint16, luid *LUID) (err error) { + r1, _, e1 := syscall.Syscall(procLookupPrivilegeValueW.Addr(), 3, uintptr(unsafe.Pointer(systemname)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(luid))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func makeAbsoluteSD(selfRelativeSD *SECURITY_DESCRIPTOR, absoluteSD *SECURITY_DESCRIPTOR, absoluteSDSize *uint32, dacl *ACL, daclSize *uint32, sacl *ACL, saclSize *uint32, owner *SID, ownerSize *uint32, group *SID, groupSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall12(procMakeAbsoluteSD.Addr(), 11, uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(absoluteSDSize)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(daclSize)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(saclSize)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(ownerSize)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(groupSize)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func makeSelfRelativeSD(absoluteSD *SECURITY_DESCRIPTOR, selfRelativeSD *SECURITY_DESCRIPTOR, selfRelativeSDSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procMakeSelfRelativeSD.Addr(), 3, uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(selfRelativeSDSize))) + if r1 == 0 { + err = errnoErr(e1) } return } @@ -612,1295 +817,80 @@ func NotifyServiceStatusChange(service Handle, notifyMask uint32, notifier *SERV return } -func GetLastError() (lasterr error) { - r0, _, _ := syscall.Syscall(procGetLastError.Addr(), 0, 0, 0, 0) - if r0 != 0 { - lasterr = syscall.Errno(r0) +func OpenProcessToken(process Handle, access uint32, token *Token) (err error) { + r1, _, e1 := syscall.Syscall(procOpenProcessToken.Addr(), 3, uintptr(process), uintptr(access), uintptr(unsafe.Pointer(token))) + if r1 == 0 { + err = errnoErr(e1) } return } -func LoadLibrary(libname string) (handle Handle, err error) { - var _p0 *uint16 - _p0, err = syscall.UTF16PtrFromString(libname) - if err != nil { - return - } - return _LoadLibrary(_p0) -} - -func _LoadLibrary(libname *uint16) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procLoadLibraryW.Addr(), 1, uintptr(unsafe.Pointer(libname)), 0, 0) +func OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procOpenSCManagerW.Addr(), 3, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(databaseName)), uintptr(access)) handle = Handle(r0) if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func LoadLibraryEx(libname string, zero Handle, flags uintptr) (handle Handle, err error) { - var _p0 *uint16 - _p0, err = syscall.UTF16PtrFromString(libname) - if err != nil { - return - } - return _LoadLibraryEx(_p0, zero, flags) -} - -func _LoadLibraryEx(libname *uint16, zero Handle, flags uintptr) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procLoadLibraryExW.Addr(), 3, uintptr(unsafe.Pointer(libname)), uintptr(zero), uintptr(flags)) +func OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procOpenServiceW.Addr(), 3, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(access)) handle = Handle(r0) if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func FreeLibrary(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procFreeLibrary.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetProcAddress(module Handle, procname string) (proc uintptr, err error) { - var _p0 *byte - _p0, err = syscall.BytePtrFromString(procname) - if err != nil { - return - } - return _GetProcAddress(module, _p0) -} - -func _GetProcAddress(module Handle, procname *byte) (proc uintptr, err error) { - r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), uintptr(unsafe.Pointer(procname)), 0) - proc = uintptr(r0) - if proc == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetModuleFileName(module Handle, filename *uint16, size uint32) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetModuleFileNameW.Addr(), 3, uintptr(module), uintptr(unsafe.Pointer(filename)), uintptr(size)) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err error) { - r1, _, e1 := syscall.Syscall(procGetModuleHandleExW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(moduleName)), uintptr(unsafe.Pointer(module))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVersion() (ver uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetVersion.Addr(), 0, 0, 0, 0) - ver = uint32(r0) - if ver == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FormatMessage(flags uint32, msgsrc uintptr, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) { - var _p0 *uint16 - if len(buf) > 0 { - _p0 = &buf[0] - } - r0, _, e1 := syscall.Syscall9(procFormatMessageW.Addr(), 7, uintptr(flags), uintptr(msgsrc), uintptr(msgid), uintptr(langid), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(args)), 0, 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ExitProcess(exitcode uint32) { - syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0) - return -} - -func IsWow64Process(handle Handle, isWow64 *bool) (err error) { +func OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) { var _p0 uint32 - if *isWow64 { + if openAsSelf { _p0 = 1 - } else { - _p0 = 0 } - r1, _, e1 := syscall.Syscall(procIsWow64Process.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(&_p0)), 0) - *isWow64 = _p0 != 0 + r1, _, e1 := syscall.Syscall6(procOpenThreadToken.Addr(), 4, uintptr(thread), uintptr(access), uintptr(_p0), uintptr(unsafe.Pointer(token)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttributes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall9(procCreateFileW.Addr(), 7, uintptr(unsafe.Pointer(name)), uintptr(access), uintptr(mode), uintptr(unsafe.Pointer(sa)), uintptr(createmode), uintptr(attrs), uintptr(templatefile), 0, 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { - var _p0 *byte - if len(buf) > 0 { - _p0 = &buf[0] - } - r1, _, e1 := syscall.Syscall6(procReadFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) +func QueryServiceConfig2(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procQueryServiceConfig2W.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { - var _p0 *byte - if len(buf) > 0 { - _p0 = &buf[0] - } - r1, _, e1 := syscall.Syscall6(procWriteFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) +func QueryServiceConfig(service Handle, serviceConfig *QUERY_SERVICE_CONFIG, bufSize uint32, bytesNeeded *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procQueryServiceConfigW.Addr(), 4, uintptr(service), uintptr(unsafe.Pointer(serviceConfig)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) { - var _p0 uint32 - if wait { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall6(procGetOverlappedResult.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(done)), uintptr(_p0), 0, 0) +func QueryServiceLockStatus(mgr Handle, lockStatus *QUERY_SERVICE_LOCK_STATUS, bufSize uint32, bytesNeeded *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procQueryServiceLockStatusW.Addr(), 4, uintptr(mgr), uintptr(unsafe.Pointer(lockStatus)), uintptr(bufSize), uintptr(unsafe.Pointer(bytesNeeded)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whence uint32) (newlowoffset uint32, err error) { - r0, _, e1 := syscall.Syscall6(procSetFilePointer.Addr(), 4, uintptr(handle), uintptr(lowoffset), uintptr(unsafe.Pointer(highoffsetptr)), uintptr(whence), 0, 0) - newlowoffset = uint32(r0) - if newlowoffset == 0xffffffff { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CloseHandle(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procCloseHandle.Addr(), 1, uintptr(handle), 0, 0) +func QueryServiceStatus(service Handle, status *SERVICE_STATUS) (err error) { + r1, _, e1 := syscall.Syscall(procQueryServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(status)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func GetStdHandle(stdhandle uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procGetStdHandle.Addr(), 1, uintptr(stdhandle), 0, 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetStdHandle(stdhandle uint32, handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procSetStdHandle.Addr(), 2, uintptr(stdhandle), uintptr(handle), 0) +func QueryServiceStatusEx(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procQueryServiceStatusEx.Addr(), 5, uintptr(service), uintptr(infoLevel), uintptr(unsafe.Pointer(buff)), uintptr(buffSize), uintptr(unsafe.Pointer(bytesNeeded)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procFindFirstFileW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(data)), 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func findNextFile1(handle Handle, data *win32finddata1) (err error) { - r1, _, e1 := syscall.Syscall(procFindNextFileW.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindClose(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procFindClose.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) { - r1, _, e1 := syscall.Syscall(procGetFileInformationByHandle.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte, outBufferLen uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetFileInformationByHandleEx.Addr(), 4, uintptr(handle), uintptr(class), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferLen), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetCurrentDirectoryW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetCurrentDirectory(path *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procSetCurrentDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) { - r1, _, e1 := syscall.Syscall(procCreateDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(sa)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func RemoveDirectory(path *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procRemoveDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DeleteFile(path *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procDeleteFileW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func MoveFile(from *uint16, to *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procMoveFileW.Addr(), 2, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func MoveFileEx(from *uint16, to *uint16, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procMoveFileExW.Addr(), 3, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), uintptr(flags)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func LockFileEx(file Handle, flags uint32, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall6(procLockFileEx.Addr(), 6, uintptr(file), uintptr(flags), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func UnlockFileEx(file Handle, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall6(procUnlockFileEx.Addr(), 5, uintptr(file), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetComputerName(buf *uint16, n *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetComputerNameW.Addr(), 2, uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetComputerNameEx(nametype uint32, buf *uint16, n *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetComputerNameExW.Addr(), 3, uintptr(nametype), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetEndOfFile(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetSystemTimeAsFileTime(time *Filetime) { - syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) - return -} - -func GetSystemTimePreciseAsFileTime(time *Filetime) { - syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) - return -} - -func GetTimeZoneInformation(tzi *Timezoneinformation) (rc uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetTimeZoneInformation.Addr(), 1, uintptr(unsafe.Pointer(tzi)), 0, 0) - rc = uint32(r0) - if rc == 0xffffffff { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateIoCompletionPort(filehandle Handle, cphandle Handle, key uint32, threadcnt uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCreateIoCompletionPort.Addr(), 4, uintptr(filehandle), uintptr(cphandle), uintptr(key), uintptr(threadcnt), 0, 0) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uint32, overlapped **Overlapped, timeout uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetQueuedCompletionStatus.Addr(), 5, uintptr(cphandle), uintptr(unsafe.Pointer(qty)), uintptr(unsafe.Pointer(key)), uintptr(unsafe.Pointer(overlapped)), uintptr(timeout), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uint32, overlapped *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall6(procPostQueuedCompletionStatus.Addr(), 4, uintptr(cphandle), uintptr(qty), uintptr(key), uintptr(unsafe.Pointer(overlapped)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CancelIo(s Handle) (err error) { - r1, _, e1 := syscall.Syscall(procCancelIo.Addr(), 1, uintptr(s), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CancelIoEx(s Handle, o *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall(procCancelIoEx.Addr(), 2, uintptr(s), uintptr(unsafe.Pointer(o)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) { - var _p0 uint32 - if inheritHandles { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall12(procCreateProcessW.Addr(), 10, uintptr(unsafe.Pointer(appName)), uintptr(unsafe.Pointer(commandLine)), uintptr(unsafe.Pointer(procSecurity)), uintptr(unsafe.Pointer(threadSecurity)), uintptr(_p0), uintptr(creationFlags), uintptr(unsafe.Pointer(env)), uintptr(unsafe.Pointer(currentDir)), uintptr(unsafe.Pointer(startupInfo)), uintptr(unsafe.Pointer(outProcInfo)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error) { - var _p0 uint32 - if inheritHandle { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall(procOpenProcess.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(processId)) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) { - r1, _, e1 := syscall.Syscall6(procShellExecuteW.Addr(), 6, uintptr(hwnd), uintptr(unsafe.Pointer(verb)), uintptr(unsafe.Pointer(file)), uintptr(unsafe.Pointer(args)), uintptr(unsafe.Pointer(cwd)), uintptr(showCmd)) - if r1 <= 32 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func shGetKnownFolderPath(id *KNOWNFOLDERID, flags uint32, token Token, path **uint16) (ret error) { - r0, _, _ := syscall.Syscall6(procSHGetKnownFolderPath.Addr(), 4, uintptr(unsafe.Pointer(id)), uintptr(flags), uintptr(token), uintptr(unsafe.Pointer(path)), 0, 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func TerminateProcess(handle Handle, exitcode uint32) (err error) { - r1, _, e1 := syscall.Syscall(procTerminateProcess.Addr(), 2, uintptr(handle), uintptr(exitcode), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetExitCodeProcess(handle Handle, exitcode *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetExitCodeProcess.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(exitcode)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetStartupInfo(startupInfo *StartupInfo) (err error) { - r1, _, e1 := syscall.Syscall(procGetStartupInfoW.Addr(), 1, uintptr(unsafe.Pointer(startupInfo)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetProcessTimes(handle Handle, creationTime *Filetime, exitTime *Filetime, kernelTime *Filetime, userTime *Filetime) (err error) { - r1, _, e1 := syscall.Syscall6(procGetProcessTimes.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(creationTime)), uintptr(unsafe.Pointer(exitTime)), uintptr(unsafe.Pointer(kernelTime)), uintptr(unsafe.Pointer(userTime)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error) { - var _p0 uint32 - if bInheritHandle { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall9(procDuplicateHandle.Addr(), 7, uintptr(hSourceProcessHandle), uintptr(hSourceHandle), uintptr(hTargetProcessHandle), uintptr(unsafe.Pointer(lpTargetHandle)), uintptr(dwDesiredAccess), uintptr(_p0), uintptr(dwOptions), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WaitForSingleObject(handle Handle, waitMilliseconds uint32) (event uint32, err error) { - r0, _, e1 := syscall.Syscall(procWaitForSingleObject.Addr(), 2, uintptr(handle), uintptr(waitMilliseconds), 0) - event = uint32(r0) - if event == 0xffffffff { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func waitForMultipleObjects(count uint32, handles uintptr, waitAll bool, waitMilliseconds uint32) (event uint32, err error) { - var _p0 uint32 - if waitAll { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall6(procWaitForMultipleObjects.Addr(), 4, uintptr(count), uintptr(handles), uintptr(_p0), uintptr(waitMilliseconds), 0, 0) - event = uint32(r0) - if event == 0xffffffff { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetTempPath(buflen uint32, buf *uint16) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetTempPathW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreatePipe(readhandle *Handle, writehandle *Handle, sa *SecurityAttributes, size uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procCreatePipe.Addr(), 4, uintptr(unsafe.Pointer(readhandle)), uintptr(unsafe.Pointer(writehandle)), uintptr(unsafe.Pointer(sa)), uintptr(size), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFileType(filehandle Handle) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetFileType.Addr(), 1, uintptr(filehandle), 0, 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CryptAcquireContext(provhandle *Handle, container *uint16, provider *uint16, provtype uint32, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procCryptAcquireContextW.Addr(), 5, uintptr(unsafe.Pointer(provhandle)), uintptr(unsafe.Pointer(container)), uintptr(unsafe.Pointer(provider)), uintptr(provtype), uintptr(flags), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CryptReleaseContext(provhandle Handle, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procCryptReleaseContext.Addr(), 2, uintptr(provhandle), uintptr(flags), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CryptGenRandom(provhandle Handle, buflen uint32, buf *byte) (err error) { - r1, _, e1 := syscall.Syscall(procCryptGenRandom.Addr(), 3, uintptr(provhandle), uintptr(buflen), uintptr(unsafe.Pointer(buf))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetEnvironmentStrings() (envs *uint16, err error) { - r0, _, e1 := syscall.Syscall(procGetEnvironmentStringsW.Addr(), 0, 0, 0, 0) - envs = (*uint16)(unsafe.Pointer(r0)) - if envs == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FreeEnvironmentStrings(envs *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procFreeEnvironmentStringsW.Addr(), 1, uintptr(unsafe.Pointer(envs)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetEnvironmentVariable(name *uint16, buffer *uint16, size uint32) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetEnvironmentVariableW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(buffer)), uintptr(size)) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetEnvironmentVariable(name *uint16, value *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procSetEnvironmentVariableW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(value)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) { - var _p0 uint32 - if inheritExisting { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procCreateEnvironmentBlock.Addr(), 3, uintptr(unsafe.Pointer(block)), uintptr(token), uintptr(_p0)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DestroyEnvironmentBlock(block *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procDestroyEnvironmentBlock.Addr(), 1, uintptr(unsafe.Pointer(block)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getTickCount64() (ms uint64) { - r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0) - ms = uint64(r0) - return -} - -func SetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error) { - r1, _, e1 := syscall.Syscall6(procSetFileTime.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(ctime)), uintptr(unsafe.Pointer(atime)), uintptr(unsafe.Pointer(wtime)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFileAttributes(name *uint16) (attrs uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetFileAttributesW.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) - attrs = uint32(r0) - if attrs == INVALID_FILE_ATTRIBUTES { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetFileAttributes(name *uint16, attrs uint32) (err error) { - r1, _, e1 := syscall.Syscall(procSetFileAttributesW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(attrs), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFileAttributesEx(name *uint16, level uint32, info *byte) (err error) { - r1, _, e1 := syscall.Syscall(procGetFileAttributesExW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(level), uintptr(unsafe.Pointer(info))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetCommandLine() (cmd *uint16) { - r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0) - cmd = (*uint16)(unsafe.Pointer(r0)) - return -} - -func CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) { - r0, _, e1 := syscall.Syscall(procCommandLineToArgvW.Addr(), 2, uintptr(unsafe.Pointer(cmd)), uintptr(unsafe.Pointer(argc)), 0) - argv = (*[8192]*[8192]uint16)(unsafe.Pointer(r0)) - if argv == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func LocalFree(hmem Handle) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0) - handle = Handle(r0) - if handle != 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procSetHandleInformation.Addr(), 3, uintptr(handle), uintptr(mask), uintptr(flags)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FlushFileBuffers(handle Handle) (err error) { - r1, _, e1 := syscall.Syscall(procFlushFileBuffers.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) { - r0, _, e1 := syscall.Syscall6(procGetFullPathNameW.Addr(), 4, uintptr(unsafe.Pointer(path)), uintptr(buflen), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(fname)), 0, 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetLongPathNameW.Addr(), 3, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(buf)), uintptr(buflen)) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetShortPathNameW.Addr(), 3, uintptr(unsafe.Pointer(longpath)), uintptr(unsafe.Pointer(shortpath)), uintptr(buflen)) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCreateFileMappingW.Addr(), 6, uintptr(fhandle), uintptr(unsafe.Pointer(sa)), uintptr(prot), uintptr(maxSizeHigh), uintptr(maxSizeLow), uintptr(unsafe.Pointer(name))) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) { - r0, _, e1 := syscall.Syscall6(procMapViewOfFile.Addr(), 5, uintptr(handle), uintptr(access), uintptr(offsetHigh), uintptr(offsetLow), uintptr(length), 0) - addr = uintptr(r0) - if addr == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func UnmapViewOfFile(addr uintptr) (err error) { - r1, _, e1 := syscall.Syscall(procUnmapViewOfFile.Addr(), 1, uintptr(addr), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FlushViewOfFile(addr uintptr, length uintptr) (err error) { - r1, _, e1 := syscall.Syscall(procFlushViewOfFile.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func VirtualLock(addr uintptr, length uintptr) (err error) { - r1, _, e1 := syscall.Syscall(procVirtualLock.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func VirtualUnlock(addr uintptr, length uintptr) (err error) { - r1, _, e1 := syscall.Syscall(procVirtualUnlock.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func VirtualAlloc(address uintptr, size uintptr, alloctype uint32, protect uint32) (value uintptr, err error) { - r0, _, e1 := syscall.Syscall6(procVirtualAlloc.Addr(), 4, uintptr(address), uintptr(size), uintptr(alloctype), uintptr(protect), 0, 0) - value = uintptr(r0) - if value == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func VirtualFree(address uintptr, size uintptr, freetype uint32) (err error) { - r1, _, e1 := syscall.Syscall(procVirtualFree.Addr(), 3, uintptr(address), uintptr(size), uintptr(freetype)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procVirtualProtect.Addr(), 4, uintptr(address), uintptr(size), uintptr(newprotect), uintptr(unsafe.Pointer(oldprotect)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func TransmitFile(s Handle, handle Handle, bytesToWrite uint32, bytsPerSend uint32, overlapped *Overlapped, transmitFileBuf *TransmitFileBuffers, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall9(procTransmitFile.Addr(), 7, uintptr(s), uintptr(handle), uintptr(bytesToWrite), uintptr(bytsPerSend), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(transmitFileBuf)), uintptr(flags), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ReadDirectoryChanges(handle Handle, buf *byte, buflen uint32, watchSubTree bool, mask uint32, retlen *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { - var _p0 uint32 - if watchSubTree { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall9(procReadDirectoryChangesW.Addr(), 8, uintptr(handle), uintptr(unsafe.Pointer(buf)), uintptr(buflen), uintptr(_p0), uintptr(mask), uintptr(unsafe.Pointer(retlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertOpenSystemStore(hprov Handle, name *uint16) (store Handle, err error) { - r0, _, e1 := syscall.Syscall(procCertOpenSystemStoreW.Addr(), 2, uintptr(hprov), uintptr(unsafe.Pointer(name)), 0) - store = Handle(r0) - if store == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertOpenStore(storeProvider uintptr, msgAndCertEncodingType uint32, cryptProv uintptr, flags uint32, para uintptr) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCertOpenStore.Addr(), 5, uintptr(storeProvider), uintptr(msgAndCertEncodingType), uintptr(cryptProv), uintptr(flags), uintptr(para), 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertEnumCertificatesInStore(store Handle, prevContext *CertContext) (context *CertContext, err error) { - r0, _, e1 := syscall.Syscall(procCertEnumCertificatesInStore.Addr(), 2, uintptr(store), uintptr(unsafe.Pointer(prevContext)), 0) - context = (*CertContext)(unsafe.Pointer(r0)) - if context == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertAddCertificateContextToStore(store Handle, certContext *CertContext, addDisposition uint32, storeContext **CertContext) (err error) { - r1, _, e1 := syscall.Syscall6(procCertAddCertificateContextToStore.Addr(), 4, uintptr(store), uintptr(unsafe.Pointer(certContext)), uintptr(addDisposition), uintptr(unsafe.Pointer(storeContext)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertCloseStore(store Handle, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procCertCloseStore.Addr(), 2, uintptr(store), uintptr(flags), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertGetCertificateChain(engine Handle, leaf *CertContext, time *Filetime, additionalStore Handle, para *CertChainPara, flags uint32, reserved uintptr, chainCtx **CertChainContext) (err error) { - r1, _, e1 := syscall.Syscall9(procCertGetCertificateChain.Addr(), 8, uintptr(engine), uintptr(unsafe.Pointer(leaf)), uintptr(unsafe.Pointer(time)), uintptr(additionalStore), uintptr(unsafe.Pointer(para)), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(chainCtx)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertFreeCertificateChain(ctx *CertChainContext) { - syscall.Syscall(procCertFreeCertificateChain.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) - return -} - -func CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) { - r0, _, e1 := syscall.Syscall(procCertCreateCertificateContext.Addr(), 3, uintptr(certEncodingType), uintptr(unsafe.Pointer(certEncoded)), uintptr(encodedLen)) - context = (*CertContext)(unsafe.Pointer(r0)) - if context == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertFreeCertificateContext(ctx *CertContext) (err error) { - r1, _, e1 := syscall.Syscall(procCertFreeCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainContext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) { - r1, _, e1 := syscall.Syscall6(procCertVerifyCertificateChainPolicy.Addr(), 4, uintptr(policyOID), uintptr(unsafe.Pointer(chain)), uintptr(unsafe.Pointer(para)), uintptr(unsafe.Pointer(status)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess uint32, result *Handle) (regerrno error) { - r0, _, _ := syscall.Syscall6(procRegOpenKeyExW.Addr(), 5, uintptr(key), uintptr(unsafe.Pointer(subkey)), uintptr(options), uintptr(desiredAccess), uintptr(unsafe.Pointer(result)), 0) - if r0 != 0 { - regerrno = syscall.Errno(r0) + err = errnoErr(e1) } return } @@ -1913,14 +903,6 @@ func RegCloseKey(key Handle) (regerrno error) { return } -func RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *uint32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteTime *Filetime) (regerrno error) { - r0, _, _ := syscall.Syscall12(procRegQueryInfoKeyW.Addr(), 12, uintptr(key), uintptr(unsafe.Pointer(class)), uintptr(unsafe.Pointer(classLen)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(subkeysLen)), uintptr(unsafe.Pointer(maxSubkeyLen)), uintptr(unsafe.Pointer(maxClassLen)), uintptr(unsafe.Pointer(valuesLen)), uintptr(unsafe.Pointer(maxValueNameLen)), uintptr(unsafe.Pointer(maxValueLen)), uintptr(unsafe.Pointer(saLen)), uintptr(unsafe.Pointer(lastWriteTime))) - if r0 != 0 { - regerrno = syscall.Errno(r0) - } - return -} - func RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reserved *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (regerrno error) { r0, _, _ := syscall.Syscall9(procRegEnumKeyExW.Addr(), 8, uintptr(key), uintptr(index), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(nameLen)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(class)), uintptr(unsafe.Pointer(classLen)), uintptr(unsafe.Pointer(lastWriteTime)), 0) if r0 != 0 { @@ -1929,6 +911,22 @@ func RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reser return } +func RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess uint32, result *Handle) (regerrno error) { + r0, _, _ := syscall.Syscall6(procRegOpenKeyExW.Addr(), 5, uintptr(key), uintptr(unsafe.Pointer(subkey)), uintptr(options), uintptr(desiredAccess), uintptr(unsafe.Pointer(result)), 0) + if r0 != 0 { + regerrno = syscall.Errno(r0) + } + return +} + +func RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *uint32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteTime *Filetime) (regerrno error) { + r0, _, _ := syscall.Syscall12(procRegQueryInfoKeyW.Addr(), 12, uintptr(key), uintptr(unsafe.Pointer(class)), uintptr(unsafe.Pointer(classLen)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(subkeysLen)), uintptr(unsafe.Pointer(maxSubkeyLen)), uintptr(unsafe.Pointer(maxClassLen)), uintptr(unsafe.Pointer(valuesLen)), uintptr(unsafe.Pointer(maxValueNameLen)), uintptr(unsafe.Pointer(maxValueLen)), uintptr(unsafe.Pointer(saLen)), uintptr(unsafe.Pointer(lastWriteTime))) + if r0 != 0 { + regerrno = syscall.Errno(r0) + } + return +} + func RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uint32, buf *byte, buflen *uint32) (regerrno error) { r0, _, _ := syscall.Syscall6(procRegQueryValueExW.Addr(), 6, uintptr(key), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(valtype)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(buflen))) if r0 != 0 { @@ -1937,1269 +935,254 @@ func RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uint32 return } -func GetCurrentProcessId() (pid uint32) { - r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0) - pid = uint32(r0) - return -} - -func GetConsoleMode(console Handle, mode *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetConsoleMode.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(mode)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetConsoleMode(console Handle, mode uint32) (err error) { - r1, _, e1 := syscall.Syscall(procSetConsoleMode.Addr(), 2, uintptr(console), uintptr(mode), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) { - r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetConsoleCursorPosition(console Handle, position Coord) (err error) { - r1, _, e1 := syscall.Syscall(procSetConsoleCursorPosition.Addr(), 2, uintptr(console), uintptr(*((*uint32)(unsafe.Pointer(&position)))), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint32, reserved *byte) (err error) { - r1, _, e1 := syscall.Syscall6(procWriteConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(towrite), uintptr(unsafe.Pointer(written)), uintptr(unsafe.Pointer(reserved)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, inputControl *byte) (err error) { - r1, _, e1 := syscall.Syscall6(procReadConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(toread), uintptr(unsafe.Pointer(read)), uintptr(unsafe.Pointer(inputControl)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateToolhelp32Snapshot(flags uint32, processId uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procCreateToolhelp32Snapshot.Addr(), 2, uintptr(flags), uintptr(processId), 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Process32First(snapshot Handle, procEntry *ProcessEntry32) (err error) { - r1, _, e1 := syscall.Syscall(procProcess32FirstW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) { - r1, _, e1 := syscall.Syscall(procProcess32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) { - r1, _, e1 := syscall.Syscall(procThread32First.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) { - r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DeviceIoControl(handle Handle, ioControlCode uint32, inBuffer *byte, inBufferSize uint32, outBuffer *byte, outBufferSize uint32, bytesReturned *uint32, overlapped *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall9(procDeviceIoControl.Addr(), 8, uintptr(handle), uintptr(ioControlCode), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferSize), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferSize), uintptr(unsafe.Pointer(bytesReturned)), uintptr(unsafe.Pointer(overlapped)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateSymbolicLink(symlinkfilename *uint16, targetfilename *uint16, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procCreateSymbolicLinkW.Addr(), 3, uintptr(unsafe.Pointer(symlinkfilename)), uintptr(unsafe.Pointer(targetfilename)), uintptr(flags)) - if r1&0xff == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateHardLink(filename *uint16, existingfilename *uint16, reserved uintptr) (err error) { - r1, _, e1 := syscall.Syscall(procCreateHardLinkW.Addr(), 3, uintptr(unsafe.Pointer(filename)), uintptr(unsafe.Pointer(existingfilename)), uintptr(reserved)) - if r1&0xff == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetCurrentThreadId() (id uint32) { - r0, _, _ := syscall.Syscall(procGetCurrentThreadId.Addr(), 0, 0, 0, 0) - id = uint32(r0) - return -} - -func CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCreateEventW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(manualReset), uintptr(initialState), uintptr(unsafe.Pointer(name)), 0, 0) +func RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procRegisterEventSourceW.Addr(), 2, uintptr(unsafe.Pointer(uncServerName)), uintptr(unsafe.Pointer(sourceName)), 0) handle = Handle(r0) if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCreateEventExW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) { + r1, _, e1 := syscall.Syscall9(procReportEventW.Addr(), 9, uintptr(log), uintptr(etype), uintptr(category), uintptr(eventId), uintptr(usrSId), uintptr(numStrings), uintptr(dataSize), uintptr(unsafe.Pointer(strings)), uintptr(unsafe.Pointer(rawData))) + if r1 == 0 { + err = errnoErr(e1) } return } -func OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { +func RevertToSelf() (err error) { + r1, _, e1 := syscall.Syscall(procRevertToSelf.Addr(), 0, 0, 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func setEntriesInAcl(countExplicitEntries uint32, explicitEntries *EXPLICIT_ACCESS, oldACL *ACL, newACL **ACL) (ret error) { + r0, _, _ := syscall.Syscall6(procSetEntriesInAclW.Addr(), 4, uintptr(countExplicitEntries), uintptr(unsafe.Pointer(explicitEntries)), uintptr(unsafe.Pointer(oldACL)), uintptr(unsafe.Pointer(newACL)), 0, 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func SetNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { + var _p0 *uint16 + _p0, ret = syscall.UTF16PtrFromString(objectName) + if ret != nil { + return + } + return _SetNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl) +} + +func _SetNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { + r0, _, _ := syscall.Syscall9(procSetNamedSecurityInfoW.Addr(), 7, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func setSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, controlBitsOfInterest SECURITY_DESCRIPTOR_CONTROL, controlBitsToSet SECURITY_DESCRIPTOR_CONTROL) (err error) { + r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(controlBitsOfInterest), uintptr(controlBitsToSet)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func setSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent bool, dacl *ACL, daclDefaulted bool) (err error) { var _p0 uint32 - if inheritHandle { + if daclPresent { _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall(procOpenEventW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetEvent(event Handle) (err error) { - r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ResetEvent(event Handle) (err error) { - r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func PulseEvent(event Handle) (err error) { - r1, _, e1 := syscall.Syscall(procPulseEvent.Addr(), 1, uintptr(event), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) { - var _p0 uint32 - if initialOwner { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall(procCreateMutexW.Addr(), 3, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(_p0), uintptr(unsafe.Pointer(name))) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall6(procCreateMutexExW.Addr(), 4, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { - var _p0 uint32 - if inheritHandle { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall(procOpenMutexW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ReleaseMutex(mutex Handle) (err error) { - r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SleepEx(milliseconds uint32, alertable bool) (ret uint32) { - var _p0 uint32 - if alertable { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, _ := syscall.Syscall(procSleepEx.Addr(), 2, uintptr(milliseconds), uintptr(_p0), 0) - ret = uint32(r0) - return -} - -func CreateJobObject(jobAttr *SecurityAttributes, name *uint16) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procCreateJobObjectW.Addr(), 2, uintptr(unsafe.Pointer(jobAttr)), uintptr(unsafe.Pointer(name)), 0) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func AssignProcessToJobObject(job Handle, process Handle) (err error) { - r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func TerminateJobObject(job Handle, exitCode uint32) (err error) { - r1, _, e1 := syscall.Syscall(procTerminateJobObject.Addr(), 2, uintptr(job), uintptr(exitCode), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetErrorMode(mode uint32) (ret uint32) { - r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0) - ret = uint32(r0) - return -} - -func ResumeThread(thread Handle) (ret uint32, err error) { - r0, _, e1 := syscall.Syscall(procResumeThread.Addr(), 1, uintptr(thread), 0, 0) - ret = uint32(r0) - if ret == 0xffffffff { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetPriorityClass(process Handle, priorityClass uint32) (err error) { - r1, _, e1 := syscall.Syscall(procSetPriorityClass.Addr(), 2, uintptr(process), uintptr(priorityClass), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetPriorityClass(process Handle) (ret uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetPriorityClass.Addr(), 1, uintptr(process), 0, 0) - ret = uint32(r0) - if ret == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func QueryInformationJobObject(job Handle, JobObjectInformationClass int32, JobObjectInformation uintptr, JobObjectInformationLength uint32, retlen *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procQueryInformationJobObject.Addr(), 5, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), uintptr(unsafe.Pointer(retlen)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error) { - r0, _, e1 := syscall.Syscall6(procSetInformationJobObject.Addr(), 4, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), 0, 0) - ret = int(r0) - if ret == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGenerateConsoleCtrlEvent.Addr(), 2, uintptr(ctrlEvent), uintptr(processGroupID), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetProcessId(process Handle) (id uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetProcessId.Addr(), 1, uintptr(process), 0, 0) - id = uint32(r0) - if id == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) { - var _p0 uint32 - if inheritHandle { - _p0 = 1 - } else { - _p0 = 0 - } - r0, _, e1 := syscall.Syscall(procOpenThread.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(threadId)) - handle = Handle(r0) - if handle == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetProcessPriorityBoost(process Handle, disable bool) (err error) { - var _p0 uint32 - if disable { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetProcessWorkingSetSizeEx(hProcess Handle, lpMinimumWorkingSetSize *uintptr, lpMaximumWorkingSetSize *uintptr, flags *uint32) { - syscall.Syscall6(procGetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(unsafe.Pointer(lpMinimumWorkingSetSize)), uintptr(unsafe.Pointer(lpMaximumWorkingSetSize)), uintptr(unsafe.Pointer(flags)), 0, 0) - return -} - -func SetProcessWorkingSetSizeEx(hProcess Handle, dwMinimumWorkingSetSize uintptr, dwMaximumWorkingSetSize uintptr, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procSetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(dwMinimumWorkingSetSize), uintptr(dwMaximumWorkingSetSize), uintptr(flags), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DefineDosDevice(flags uint32, deviceName *uint16, targetPath *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procDefineDosDeviceW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindFirstVolume(volumeName *uint16, bufferLength uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procFindFirstVolumeW.Addr(), 2, uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength), 0) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindFirstVolumeMountPoint(rootPathName *uint16, volumeMountPoint *uint16, bufferLength uint32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procFindFirstVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) - handle = Handle(r0) - if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindNextVolume(findVolume Handle, volumeName *uint16, bufferLength uint32) (err error) { - r1, _, e1 := syscall.Syscall(procFindNextVolumeW.Addr(), 3, uintptr(findVolume), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindNextVolumeMountPoint(findVolumeMountPoint Handle, volumeMountPoint *uint16, bufferLength uint32) (err error) { - r1, _, e1 := syscall.Syscall(procFindNextVolumeMountPointW.Addr(), 3, uintptr(findVolumeMountPoint), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindVolumeClose(findVolume Handle) (err error) { - r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func FindVolumeMountPointClose(findVolumeMountPoint Handle) (err error) { - r1, _, e1 := syscall.Syscall(procFindVolumeMountPointClose.Addr(), 1, uintptr(findVolumeMountPoint), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetDiskFreeSpaceEx(directoryName *uint16, freeBytesAvailableToCaller *uint64, totalNumberOfBytes *uint64, totalNumberOfFreeBytes *uint64) (err error) { - r1, _, e1 := syscall.Syscall6(procGetDiskFreeSpaceExW.Addr(), 4, uintptr(unsafe.Pointer(directoryName)), uintptr(unsafe.Pointer(freeBytesAvailableToCaller)), uintptr(unsafe.Pointer(totalNumberOfBytes)), uintptr(unsafe.Pointer(totalNumberOfFreeBytes)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetDriveType(rootPathName *uint16) (driveType uint32) { - r0, _, _ := syscall.Syscall(procGetDriveTypeW.Addr(), 1, uintptr(unsafe.Pointer(rootPathName)), 0, 0) - driveType = uint32(r0) - return -} - -func GetLogicalDrives() (drivesBitMask uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetLogicalDrives.Addr(), 0, 0, 0, 0) - drivesBitMask = uint32(r0) - if drivesBitMask == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetLogicalDriveStrings(bufferLength uint32, buffer *uint16) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetLogicalDriveStringsW.Addr(), 2, uintptr(bufferLength), uintptr(unsafe.Pointer(buffer)), 0) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVolumeInformation(rootPathName *uint16, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { - r1, _, e1 := syscall.Syscall9(procGetVolumeInformationW.Addr(), 8, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVolumeInformationByHandle(file Handle, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { - r1, _, e1 := syscall.Syscall9(procGetVolumeInformationByHandleW.Addr(), 8, uintptr(file), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVolumeNameForVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16, bufferlength uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetVolumeNameForVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferlength)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVolumePathName(fileName *uint16, volumePathName *uint16, bufferLength uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetVolumePathNameW.Addr(), 3, uintptr(unsafe.Pointer(fileName)), uintptr(unsafe.Pointer(volumePathName)), uintptr(bufferLength)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetVolumePathNamesForVolumeName(volumeName *uint16, volumePathNames *uint16, bufferLength uint32, returnLength *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetVolumePathNamesForVolumeNameW.Addr(), 4, uintptr(unsafe.Pointer(volumeName)), uintptr(unsafe.Pointer(volumePathNames)), uintptr(bufferLength), uintptr(unsafe.Pointer(returnLength)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint32, err error) { - r0, _, e1 := syscall.Syscall(procQueryDosDeviceW.Addr(), 3, uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath)), uintptr(max)) - n = uint32(r0) - if n == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procSetVolumeLabelW.Addr(), 2, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeName)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) { - r1, _, e1 := syscall.Syscall(procSetVolumeMountPointW.Addr(), 2, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func MessageBox(hwnd Handle, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) { - r0, _, e1 := syscall.Syscall6(procMessageBoxW.Addr(), 4, uintptr(hwnd), uintptr(unsafe.Pointer(text)), uintptr(unsafe.Pointer(caption)), uintptr(boxtype), 0, 0) - ret = int32(r0) - if ret == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func ExitWindowsEx(flags uint32, reason uint32) (err error) { - r1, _, e1 := syscall.Syscall(procExitWindowsEx.Addr(), 2, uintptr(flags), uintptr(reason), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func InitiateSystemShutdownEx(machineName *uint16, message *uint16, timeout uint32, forceAppsClosed bool, rebootAfterShutdown bool, reason uint32) (err error) { - var _p0 uint32 - if forceAppsClosed { - _p0 = 1 - } else { - _p0 = 0 } var _p1 uint32 - if rebootAfterShutdown { + if daclDefaulted { _p1 = 1 - } else { - _p1 = 0 } - r1, _, e1 := syscall.Syscall6(procInitiateSystemShutdownExW.Addr(), 6, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(message)), uintptr(timeout), uintptr(_p0), uintptr(_p1), uintptr(reason)) + r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(dacl)), uintptr(_p1), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func SetProcessShutdownParameters(level uint32, flags uint32) (err error) { - r1, _, e1 := syscall.Syscall(procSetProcessShutdownParameters.Addr(), 2, uintptr(level), uintptr(flags), 0) +func setSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group *SID, groupDefaulted bool) (err error) { + var _p0 uint32 + if groupDefaulted { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(_p0)) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetProcessShutdownParameters.Addr(), 2, uintptr(unsafe.Pointer(level)), uintptr(unsafe.Pointer(flags)), 0) +func setSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner *SID, ownerDefaulted bool) (err error) { + var _p0 uint32 + if ownerDefaulted { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(_p0)) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func clsidFromString(lpsz *uint16, pclsid *GUID) (ret error) { - r0, _, _ := syscall.Syscall(procCLSIDFromString.Addr(), 2, uintptr(unsafe.Pointer(lpsz)), uintptr(unsafe.Pointer(pclsid)), 0) - if r0 != 0 { - ret = syscall.Errno(r0) +func setSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) { + syscall.Syscall(procSetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) + return +} + +func setSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent bool, sacl *ACL, saclDefaulted bool) (err error) { + var _p0 uint32 + if saclPresent { + _p0 = 1 } - return -} - -func stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) { - r0, _, _ := syscall.Syscall(procStringFromGUID2.Addr(), 3, uintptr(unsafe.Pointer(rguid)), uintptr(unsafe.Pointer(lpsz)), uintptr(cchMax)) - chars = int32(r0) - return -} - -func coCreateGuid(pguid *GUID) (ret error) { - r0, _, _ := syscall.Syscall(procCoCreateGuid.Addr(), 1, uintptr(unsafe.Pointer(pguid)), 0, 0) - if r0 != 0 { - ret = syscall.Errno(r0) + var _p1 uint32 + if saclDefaulted { + _p1 = 1 } - return -} - -func CoTaskMemFree(address unsafe.Pointer) { - syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0) - return -} - -func rtlGetVersion(info *OsVersionInfoEx) (ret error) { - r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) { - syscall.Syscall(procRtlGetNtVersionNumbers.Addr(), 3, uintptr(unsafe.Pointer(majorVersion)), uintptr(unsafe.Pointer(minorVersion)), uintptr(unsafe.Pointer(buildNumber))) - return -} - -func getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetProcessPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) + r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(sacl)), uintptr(_p1), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetThreadPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) +func SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) { + syscall.Syscall9(procSetSecurityInfo.Addr(), 7, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) + return +} + +func SetServiceStatus(service Handle, serviceStatus *SERVICE_STATUS) (err error) { + r1, _, e1 := syscall.Syscall(procSetServiceStatus.Addr(), 2, uintptr(service), uintptr(unsafe.Pointer(serviceStatus)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetUserPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) +func SetThreadToken(thread *Handle, token Token) (err error) { + r1, _, e1 := syscall.Syscall(procSetThreadToken.Addr(), 2, uintptr(unsafe.Pointer(thread)), uintptr(token), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetSystemPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) +func SetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procSetTokenInformation.Addr(), 4, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) { - var _p0 *uint32 - if len(processIds) > 0 { - _p0 = &processIds[0] - } - r1, _, e1 := syscall.Syscall(procEnumProcesses.Addr(), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(processIds)), uintptr(unsafe.Pointer(bytesReturned))) +func StartServiceCtrlDispatcher(serviceTable *SERVICE_TABLE_ENTRY) (err error) { + r1, _, e1 := syscall.Syscall(procStartServiceCtrlDispatcherW.Addr(), 1, uintptr(unsafe.Pointer(serviceTable)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func WSAStartup(verreq uint32, data *WSAData) (sockerr error) { - r0, _, _ := syscall.Syscall(procWSAStartup.Addr(), 2, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0) - if r0 != 0 { - sockerr = syscall.Errno(r0) +func StartService(service Handle, numArgs uint32, argVectors **uint16) (err error) { + r1, _, e1 := syscall.Syscall(procStartServiceW.Addr(), 3, uintptr(service), uintptr(numArgs), uintptr(unsafe.Pointer(argVectors))) + if r1 == 0 { + err = errnoErr(e1) } return } -func WSACleanup() (err error) { - r1, _, e1 := syscall.Syscall(procWSACleanup.Addr(), 0, 0, 0, 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func CertAddCertificateContextToStore(store Handle, certContext *CertContext, addDisposition uint32, storeContext **CertContext) (err error) { + r1, _, e1 := syscall.Syscall6(procCertAddCertificateContextToStore.Addr(), 4, uintptr(store), uintptr(unsafe.Pointer(certContext)), uintptr(addDisposition), uintptr(unsafe.Pointer(storeContext)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) } return } -func WSAIoctl(s Handle, iocc uint32, inbuf *byte, cbif uint32, outbuf *byte, cbob uint32, cbbr *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { - r1, _, e1 := syscall.Syscall9(procWSAIoctl.Addr(), 9, uintptr(s), uintptr(iocc), uintptr(unsafe.Pointer(inbuf)), uintptr(cbif), uintptr(unsafe.Pointer(outbuf)), uintptr(cbob), uintptr(unsafe.Pointer(cbbr)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine)) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func CertCloseStore(store Handle, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procCertCloseStore.Addr(), 2, uintptr(store), uintptr(flags), 0) + if r1 == 0 { + err = errnoErr(e1) } return } -func socket(af int32, typ int32, protocol int32) (handle Handle, err error) { - r0, _, e1 := syscall.Syscall(procsocket.Addr(), 3, uintptr(af), uintptr(typ), uintptr(protocol)) +func CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) { + r0, _, e1 := syscall.Syscall(procCertCreateCertificateContext.Addr(), 3, uintptr(certEncodingType), uintptr(unsafe.Pointer(certEncoded)), uintptr(encodedLen)) + context = (*CertContext)(unsafe.Pointer(r0)) + if context == nil { + err = errnoErr(e1) + } + return +} + +func CertEnumCertificatesInStore(store Handle, prevContext *CertContext) (context *CertContext, err error) { + r0, _, e1 := syscall.Syscall(procCertEnumCertificatesInStore.Addr(), 2, uintptr(store), uintptr(unsafe.Pointer(prevContext)), 0) + context = (*CertContext)(unsafe.Pointer(r0)) + if context == nil { + err = errnoErr(e1) + } + return +} + +func CertFreeCertificateChain(ctx *CertChainContext) { + syscall.Syscall(procCertFreeCertificateChain.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) + return +} + +func CertFreeCertificateContext(ctx *CertContext) (err error) { + r1, _, e1 := syscall.Syscall(procCertFreeCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CertGetCertificateChain(engine Handle, leaf *CertContext, time *Filetime, additionalStore Handle, para *CertChainPara, flags uint32, reserved uintptr, chainCtx **CertChainContext) (err error) { + r1, _, e1 := syscall.Syscall9(procCertGetCertificateChain.Addr(), 8, uintptr(engine), uintptr(unsafe.Pointer(leaf)), uintptr(unsafe.Pointer(time)), uintptr(additionalStore), uintptr(unsafe.Pointer(para)), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(chainCtx)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CertOpenStore(storeProvider uintptr, msgAndCertEncodingType uint32, cryptProv uintptr, flags uint32, para uintptr) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCertOpenStore.Addr(), 5, uintptr(storeProvider), uintptr(msgAndCertEncodingType), uintptr(cryptProv), uintptr(flags), uintptr(para), 0) handle = Handle(r0) if handle == InvalidHandle { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func sendto(s Handle, buf []byte, flags int32, to unsafe.Pointer, tolen int32) (err error) { - var _p0 *byte - if len(buf) > 0 { - _p0 = &buf[0] - } - r1, _, e1 := syscall.Syscall6(procsendto.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(tolen)) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func CertOpenSystemStore(hprov Handle, name *uint16) (store Handle, err error) { + r0, _, e1 := syscall.Syscall(procCertOpenSystemStoreW.Addr(), 2, uintptr(hprov), uintptr(unsafe.Pointer(name)), 0) + store = Handle(r0) + if store == 0 { + err = errnoErr(e1) } return } -func recvfrom(s Handle, buf []byte, flags int32, from *RawSockaddrAny, fromlen *int32) (n int32, err error) { - var _p0 *byte - if len(buf) > 0 { - _p0 = &buf[0] - } - r0, _, e1 := syscall.Syscall6(procrecvfrom.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int32(r0) - if n == -1 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Setsockopt(s Handle, level int32, optname int32, optval *byte, optlen int32) (err error) { - r1, _, e1 := syscall.Syscall6(procsetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(optlen), 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Getsockopt(s Handle, level int32, optname int32, optval *byte, optlen *int32) (err error) { - r1, _, e1 := syscall.Syscall6(procgetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(unsafe.Pointer(optlen)), 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func bind(s Handle, name unsafe.Pointer, namelen int32) (err error) { - r1, _, e1 := syscall.Syscall(procbind.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func connect(s Handle, name unsafe.Pointer, namelen int32) (err error) { - r1, _, e1 := syscall.Syscall(procconnect.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getsockname(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { - r1, _, e1 := syscall.Syscall(procgetsockname.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getpeername(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { - r1, _, e1 := syscall.Syscall(procgetpeername.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func listen(s Handle, backlog int32) (err error) { - r1, _, e1 := syscall.Syscall(proclisten.Addr(), 2, uintptr(s), uintptr(backlog), 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func shutdown(s Handle, how int32) (err error) { - r1, _, e1 := syscall.Syscall(procshutdown.Addr(), 2, uintptr(s), uintptr(how), 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Closesocket(s Handle) (err error) { - r1, _, e1 := syscall.Syscall(procclosesocket.Addr(), 1, uintptr(s), 0, 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func AcceptEx(ls Handle, as Handle, buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (err error) { - r1, _, e1 := syscall.Syscall9(procAcceptEx.Addr(), 8, uintptr(ls), uintptr(as), uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(overlapped)), 0) +func CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainContext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) { + r1, _, e1 := syscall.Syscall6(procCertVerifyCertificateChainPolicy.Addr(), 4, uintptr(policyOID), uintptr(unsafe.Pointer(chain)), uintptr(unsafe.Pointer(para)), uintptr(unsafe.Pointer(status)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsalen *int32) { - syscall.Syscall9(procGetAcceptExSockaddrs.Addr(), 8, uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(lrsa)), uintptr(unsafe.Pointer(lrsalen)), uintptr(unsafe.Pointer(rrsa)), uintptr(unsafe.Pointer(rrsalen)), 0) - return -} - -func WSARecv(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, overlapped *Overlapped, croutine *byte) (err error) { - r1, _, e1 := syscall.Syscall9(procWSARecv.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WSASend(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, overlapped *Overlapped, croutine *byte) (err error) { - r1, _, e1 := syscall.Syscall9(procWSASend.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WSARecvFrom(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (err error) { - r1, _, e1 := syscall.Syscall9(procWSARecvFrom.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WSASendTo(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (err error) { - r1, _, e1 := syscall.Syscall9(procWSASendTo.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(to)), uintptr(tolen), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) - if r1 == socket_error { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetHostByName(name string) (h *Hostent, err error) { - var _p0 *byte - _p0, err = syscall.BytePtrFromString(name) - if err != nil { - return - } - return _GetHostByName(_p0) -} - -func _GetHostByName(name *byte) (h *Hostent, err error) { - r0, _, e1 := syscall.Syscall(procgethostbyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) - h = (*Hostent)(unsafe.Pointer(r0)) - if h == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetServByName(name string, proto string) (s *Servent, err error) { - var _p0 *byte - _p0, err = syscall.BytePtrFromString(name) - if err != nil { - return - } - var _p1 *byte - _p1, err = syscall.BytePtrFromString(proto) - if err != nil { - return - } - return _GetServByName(_p0, _p1) -} - -func _GetServByName(name *byte, proto *byte) (s *Servent, err error) { - r0, _, e1 := syscall.Syscall(procgetservbyname.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(proto)), 0) - s = (*Servent)(unsafe.Pointer(r0)) - if s == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func Ntohs(netshort uint16) (u uint16) { - r0, _, _ := syscall.Syscall(procntohs.Addr(), 1, uintptr(netshort), 0, 0) - u = uint16(r0) - return -} - -func GetProtoByName(name string) (p *Protoent, err error) { - var _p0 *byte - _p0, err = syscall.BytePtrFromString(name) - if err != nil { - return - } - return _GetProtoByName(_p0) -} - -func _GetProtoByName(name *byte) (p *Protoent, err error) { - r0, _, e1 := syscall.Syscall(procgetprotobyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) - p = (*Protoent)(unsafe.Pointer(r0)) - if p == nil { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } +func DnsNameCompare(name1 *uint16, name2 *uint16) (same bool) { + r0, _, _ := syscall.Syscall(procDnsNameCompare_W.Addr(), 2, uintptr(unsafe.Pointer(name1)), uintptr(unsafe.Pointer(name2)), 0) + same = r0 != 0 return } @@ -3225,27 +1208,8 @@ func DnsRecordListFree(rl *DNSRecord, freetype uint32) { return } -func DnsNameCompare(name1 *uint16, name2 *uint16) (same bool) { - r0, _, _ := syscall.Syscall(procDnsNameCompare_W.Addr(), 2, uintptr(unsafe.Pointer(name1)), uintptr(unsafe.Pointer(name2)), 0) - same = r0 != 0 - return -} - -func GetAddrInfoW(nodename *uint16, servicename *uint16, hints *AddrinfoW, result **AddrinfoW) (sockerr error) { - r0, _, _ := syscall.Syscall6(procGetAddrInfoW.Addr(), 4, uintptr(unsafe.Pointer(nodename)), uintptr(unsafe.Pointer(servicename)), uintptr(unsafe.Pointer(hints)), uintptr(unsafe.Pointer(result)), 0, 0) - if r0 != 0 { - sockerr = syscall.Errno(r0) - } - return -} - -func FreeAddrInfoW(addrinfo *AddrinfoW) { - syscall.Syscall(procFreeAddrInfoW.Addr(), 1, uintptr(unsafe.Pointer(addrinfo)), 0, 0) - return -} - -func GetIfEntry(pIfRow *MibIfRow) (errcode error) { - r0, _, _ := syscall.Syscall(procGetIfEntry.Addr(), 1, uintptr(unsafe.Pointer(pIfRow)), 0, 0) +func GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) { + r0, _, _ := syscall.Syscall6(procGetAdaptersAddresses.Addr(), 5, uintptr(family), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(adapterAddresses)), uintptr(unsafe.Pointer(sizePointer)), 0) if r0 != 0 { errcode = syscall.Errno(r0) } @@ -3260,84 +1224,1407 @@ func GetAdaptersInfo(ai *IpAdapterInfo, ol *uint32) (errcode error) { return } -func SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) { - r1, _, e1 := syscall.Syscall(procSetFileCompletionNotificationModes.Addr(), 2, uintptr(handle), uintptr(flags), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) { - r0, _, e1 := syscall.Syscall(procWSAEnumProtocolsW.Addr(), 3, uintptr(unsafe.Pointer(protocols)), uintptr(unsafe.Pointer(protocolBuffer)), uintptr(unsafe.Pointer(bufferLength))) - n = int32(r0) - if n == -1 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) { - r0, _, _ := syscall.Syscall6(procGetAdaptersAddresses.Addr(), 5, uintptr(family), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(adapterAddresses)), uintptr(unsafe.Pointer(sizePointer)), 0) +func GetIfEntry(pIfRow *MibIfRow) (errcode error) { + r0, _, _ := syscall.Syscall(procGetIfEntry.Addr(), 1, uintptr(unsafe.Pointer(pIfRow)), 0, 0) if r0 != 0 { errcode = syscall.Errno(r0) } return } +func AssignProcessToJobObject(job Handle, process Handle) (err error) { + r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CancelIo(s Handle) (err error) { + r1, _, e1 := syscall.Syscall(procCancelIo.Addr(), 1, uintptr(s), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CancelIoEx(s Handle, o *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall(procCancelIoEx.Addr(), 2, uintptr(s), uintptr(unsafe.Pointer(o)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CloseHandle(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procCloseHandle.Addr(), 1, uintptr(handle), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) { + r1, _, e1 := syscall.Syscall(procCreateDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(sa)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCreateEventExW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCreateEventW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(manualReset), uintptr(initialState), uintptr(unsafe.Pointer(name)), 0, 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCreateFileMappingW.Addr(), 6, uintptr(fhandle), uintptr(unsafe.Pointer(sa)), uintptr(prot), uintptr(maxSizeHigh), uintptr(maxSizeLow), uintptr(unsafe.Pointer(name))) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttributes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall9(procCreateFileW.Addr(), 7, uintptr(unsafe.Pointer(name)), uintptr(access), uintptr(mode), uintptr(unsafe.Pointer(sa)), uintptr(createmode), uintptr(attrs), uintptr(templatefile), 0, 0) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func CreateHardLink(filename *uint16, existingfilename *uint16, reserved uintptr) (err error) { + r1, _, e1 := syscall.Syscall(procCreateHardLinkW.Addr(), 3, uintptr(unsafe.Pointer(filename)), uintptr(unsafe.Pointer(existingfilename)), uintptr(reserved)) + if r1&0xff == 0 { + err = errnoErr(e1) + } + return +} + +func CreateIoCompletionPort(filehandle Handle, cphandle Handle, key uint32, threadcnt uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCreateIoCompletionPort.Addr(), 4, uintptr(filehandle), uintptr(cphandle), uintptr(key), uintptr(threadcnt), 0, 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateJobObject(jobAttr *SecurityAttributes, name *uint16) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procCreateJobObjectW.Addr(), 2, uintptr(unsafe.Pointer(jobAttr)), uintptr(unsafe.Pointer(name)), 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall6(procCreateMutexExW.Addr(), 4, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) { + var _p0 uint32 + if initialOwner { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall(procCreateMutexW.Addr(), 3, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(_p0), uintptr(unsafe.Pointer(name))) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func CreatePipe(readhandle *Handle, writehandle *Handle, sa *SecurityAttributes, size uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procCreatePipe.Addr(), 4, uintptr(unsafe.Pointer(readhandle)), uintptr(unsafe.Pointer(writehandle)), uintptr(unsafe.Pointer(sa)), uintptr(size), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) { + var _p0 uint32 + if inheritHandles { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall12(procCreateProcessW.Addr(), 10, uintptr(unsafe.Pointer(appName)), uintptr(unsafe.Pointer(commandLine)), uintptr(unsafe.Pointer(procSecurity)), uintptr(unsafe.Pointer(threadSecurity)), uintptr(_p0), uintptr(creationFlags), uintptr(unsafe.Pointer(env)), uintptr(unsafe.Pointer(currentDir)), uintptr(unsafe.Pointer(startupInfo)), uintptr(unsafe.Pointer(outProcInfo)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func CreateSymbolicLink(symlinkfilename *uint16, targetfilename *uint16, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procCreateSymbolicLinkW.Addr(), 3, uintptr(unsafe.Pointer(symlinkfilename)), uintptr(unsafe.Pointer(targetfilename)), uintptr(flags)) + if r1&0xff == 0 { + err = errnoErr(e1) + } + return +} + +func CreateToolhelp32Snapshot(flags uint32, processId uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procCreateToolhelp32Snapshot.Addr(), 2, uintptr(flags), uintptr(processId), 0) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func DefineDosDevice(flags uint32, deviceName *uint16, targetPath *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procDefineDosDeviceW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func DeleteFile(path *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procDeleteFileW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func DeviceIoControl(handle Handle, ioControlCode uint32, inBuffer *byte, inBufferSize uint32, outBuffer *byte, outBufferSize uint32, bytesReturned *uint32, overlapped *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall9(procDeviceIoControl.Addr(), 8, uintptr(handle), uintptr(ioControlCode), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferSize), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferSize), uintptr(unsafe.Pointer(bytesReturned)), uintptr(unsafe.Pointer(overlapped)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error) { + var _p0 uint32 + if bInheritHandle { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall9(procDuplicateHandle.Addr(), 7, uintptr(hSourceProcessHandle), uintptr(hSourceHandle), uintptr(hTargetProcessHandle), uintptr(unsafe.Pointer(lpTargetHandle)), uintptr(dwDesiredAccess), uintptr(_p0), uintptr(dwOptions), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ExitProcess(exitcode uint32) { + syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0) + return +} + +func FindClose(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procFindClose.Addr(), 1, uintptr(handle), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procFindFirstFileW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(data)), 0) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func FindFirstVolumeMountPoint(rootPathName *uint16, volumeMountPoint *uint16, bufferLength uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procFindFirstVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func FindFirstVolume(volumeName *uint16, bufferLength uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procFindFirstVolumeW.Addr(), 2, uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength), 0) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func findNextFile1(handle Handle, data *win32finddata1) (err error) { + r1, _, e1 := syscall.Syscall(procFindNextFileW.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FindNextVolumeMountPoint(findVolumeMountPoint Handle, volumeMountPoint *uint16, bufferLength uint32) (err error) { + r1, _, e1 := syscall.Syscall(procFindNextVolumeMountPointW.Addr(), 3, uintptr(findVolumeMountPoint), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FindNextVolume(findVolume Handle, volumeName *uint16, bufferLength uint32) (err error) { + r1, _, e1 := syscall.Syscall(procFindNextVolumeW.Addr(), 3, uintptr(findVolume), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FindVolumeClose(findVolume Handle) (err error) { + r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FindVolumeMountPointClose(findVolumeMountPoint Handle) (err error) { + r1, _, e1 := syscall.Syscall(procFindVolumeMountPointClose.Addr(), 1, uintptr(findVolumeMountPoint), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FlushFileBuffers(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procFlushFileBuffers.Addr(), 1, uintptr(handle), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FlushViewOfFile(addr uintptr, length uintptr) (err error) { + r1, _, e1 := syscall.Syscall(procFlushViewOfFile.Addr(), 2, uintptr(addr), uintptr(length), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FormatMessage(flags uint32, msgsrc uintptr, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) { + var _p0 *uint16 + if len(buf) > 0 { + _p0 = &buf[0] + } + r0, _, e1 := syscall.Syscall9(procFormatMessageW.Addr(), 7, uintptr(flags), uintptr(msgsrc), uintptr(msgid), uintptr(langid), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(args)), 0, 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func FreeEnvironmentStrings(envs *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procFreeEnvironmentStringsW.Addr(), 1, uintptr(unsafe.Pointer(envs)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func FreeLibrary(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procFreeLibrary.Addr(), 1, uintptr(handle), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGenerateConsoleCtrlEvent.Addr(), 2, uintptr(ctrlEvent), uintptr(processGroupID), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + func GetACP() (acp uint32) { r0, _, _ := syscall.Syscall(procGetACP.Addr(), 0, 0, 0, 0) acp = uint32(r0) return } +func GetCommandLine() (cmd *uint16) { + r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0) + cmd = (*uint16)(unsafe.Pointer(r0)) + return +} + +func GetComputerNameEx(nametype uint32, buf *uint16, n *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetComputerNameExW.Addr(), 3, uintptr(nametype), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetComputerName(buf *uint16, n *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetComputerNameW.Addr(), 2, uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetConsoleMode(console Handle, mode *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetConsoleMode.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(mode)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) { + r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetCurrentDirectoryW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetCurrentProcessId() (pid uint32) { + r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0) + pid = uint32(r0) + return +} + +func GetCurrentThreadId() (id uint32) { + r0, _, _ := syscall.Syscall(procGetCurrentThreadId.Addr(), 0, 0, 0, 0) + id = uint32(r0) + return +} + +func GetDiskFreeSpaceEx(directoryName *uint16, freeBytesAvailableToCaller *uint64, totalNumberOfBytes *uint64, totalNumberOfFreeBytes *uint64) (err error) { + r1, _, e1 := syscall.Syscall6(procGetDiskFreeSpaceExW.Addr(), 4, uintptr(unsafe.Pointer(directoryName)), uintptr(unsafe.Pointer(freeBytesAvailableToCaller)), uintptr(unsafe.Pointer(totalNumberOfBytes)), uintptr(unsafe.Pointer(totalNumberOfFreeBytes)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetDriveType(rootPathName *uint16) (driveType uint32) { + r0, _, _ := syscall.Syscall(procGetDriveTypeW.Addr(), 1, uintptr(unsafe.Pointer(rootPathName)), 0, 0) + driveType = uint32(r0) + return +} + +func GetEnvironmentStrings() (envs *uint16, err error) { + r0, _, e1 := syscall.Syscall(procGetEnvironmentStringsW.Addr(), 0, 0, 0, 0) + envs = (*uint16)(unsafe.Pointer(r0)) + if envs == nil { + err = errnoErr(e1) + } + return +} + +func GetEnvironmentVariable(name *uint16, buffer *uint16, size uint32) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetEnvironmentVariableW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(buffer)), uintptr(size)) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetExitCodeProcess(handle Handle, exitcode *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetExitCodeProcess.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(exitcode)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetFileAttributesEx(name *uint16, level uint32, info *byte) (err error) { + r1, _, e1 := syscall.Syscall(procGetFileAttributesExW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(level), uintptr(unsafe.Pointer(info))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetFileAttributes(name *uint16) (attrs uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetFileAttributesW.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) + attrs = uint32(r0) + if attrs == INVALID_FILE_ATTRIBUTES { + err = errnoErr(e1) + } + return +} + +func GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) { + r1, _, e1 := syscall.Syscall(procGetFileInformationByHandle.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte, outBufferLen uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetFileInformationByHandleEx.Addr(), 4, uintptr(handle), uintptr(class), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferLen), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetFileType(filehandle Handle) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetFileType.Addr(), 1, uintptr(filehandle), 0, 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) { + r0, _, e1 := syscall.Syscall6(procGetFullPathNameW.Addr(), 4, uintptr(unsafe.Pointer(path)), uintptr(buflen), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(fname)), 0, 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetLastError() (lasterr error) { + r0, _, _ := syscall.Syscall(procGetLastError.Addr(), 0, 0, 0, 0) + if r0 != 0 { + lasterr = syscall.Errno(r0) + } + return +} + +func GetLogicalDriveStrings(bufferLength uint32, buffer *uint16) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetLogicalDriveStringsW.Addr(), 2, uintptr(bufferLength), uintptr(unsafe.Pointer(buffer)), 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetLogicalDrives() (drivesBitMask uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetLogicalDrives.Addr(), 0, 0, 0, 0) + drivesBitMask = uint32(r0) + if drivesBitMask == 0 { + err = errnoErr(e1) + } + return +} + +func GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetLongPathNameW.Addr(), 3, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(buf)), uintptr(buflen)) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetModuleFileName(module Handle, filename *uint16, size uint32) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetModuleFileNameW.Addr(), 3, uintptr(module), uintptr(unsafe.Pointer(filename)), uintptr(size)) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err error) { + r1, _, e1 := syscall.Syscall(procGetModuleHandleExW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(moduleName)), uintptr(unsafe.Pointer(module))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) { + var _p0 uint32 + if wait { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall6(procGetOverlappedResult.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(done)), uintptr(_p0), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetPriorityClass(process Handle) (ret uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetPriorityClass.Addr(), 1, uintptr(process), 0, 0) + ret = uint32(r0) + if ret == 0 { + err = errnoErr(e1) + } + return +} + +func GetProcAddress(module Handle, procname string) (proc uintptr, err error) { + var _p0 *byte + _p0, err = syscall.BytePtrFromString(procname) + if err != nil { + return + } + return _GetProcAddress(module, _p0) +} + +func _GetProcAddress(module Handle, procname *byte) (proc uintptr, err error) { + r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), uintptr(unsafe.Pointer(procname)), 0) + proc = uintptr(r0) + if proc == 0 { + err = errnoErr(e1) + } + return +} + +func GetProcessId(process Handle) (id uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetProcessId.Addr(), 1, uintptr(process), 0, 0) + id = uint32(r0) + if id == 0 { + err = errnoErr(e1) + } + return +} + +func getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetProcessPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetProcessShutdownParameters.Addr(), 2, uintptr(unsafe.Pointer(level)), uintptr(unsafe.Pointer(flags)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetProcessTimes(handle Handle, creationTime *Filetime, exitTime *Filetime, kernelTime *Filetime, userTime *Filetime) (err error) { + r1, _, e1 := syscall.Syscall6(procGetProcessTimes.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(creationTime)), uintptr(unsafe.Pointer(exitTime)), uintptr(unsafe.Pointer(kernelTime)), uintptr(unsafe.Pointer(userTime)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetProcessWorkingSetSizeEx(hProcess Handle, lpMinimumWorkingSetSize *uintptr, lpMaximumWorkingSetSize *uintptr, flags *uint32) { + syscall.Syscall6(procGetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(unsafe.Pointer(lpMinimumWorkingSetSize)), uintptr(unsafe.Pointer(lpMaximumWorkingSetSize)), uintptr(unsafe.Pointer(flags)), 0, 0) + return +} + +func GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uint32, overlapped **Overlapped, timeout uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetQueuedCompletionStatus.Addr(), 5, uintptr(cphandle), uintptr(unsafe.Pointer(qty)), uintptr(unsafe.Pointer(key)), uintptr(unsafe.Pointer(overlapped)), uintptr(timeout), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetShortPathNameW.Addr(), 3, uintptr(unsafe.Pointer(longpath)), uintptr(unsafe.Pointer(shortpath)), uintptr(buflen)) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func GetStartupInfo(startupInfo *StartupInfo) (err error) { + r1, _, e1 := syscall.Syscall(procGetStartupInfoW.Addr(), 1, uintptr(unsafe.Pointer(startupInfo)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetStdHandle(stdhandle uint32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procGetStdHandle.Addr(), 1, uintptr(stdhandle), 0, 0) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) + } + return +} + +func getSystemDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetSystemDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) + len = uint32(r0) + if len == 0 { + err = errnoErr(e1) + } + return +} + +func getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetSystemPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetSystemTimeAsFileTime(time *Filetime) { + syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) + return +} + +func GetSystemTimePreciseAsFileTime(time *Filetime) { + syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) + return +} + +func getSystemWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetSystemWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) + len = uint32(r0) + if len == 0 { + err = errnoErr(e1) + } + return +} + +func GetTempPath(buflen uint32, buf *uint16) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetTempPathW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetThreadPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getTickCount64() (ms uint64) { + r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0) + ms = uint64(r0) + return +} + +func GetTimeZoneInformation(tzi *Timezoneinformation) (rc uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetTimeZoneInformation.Addr(), 1, uintptr(unsafe.Pointer(tzi)), 0, 0) + rc = uint32(r0) + if rc == 0xffffffff { + err = errnoErr(e1) + } + return +} + +func getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetUserPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetVersion() (ver uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetVersion.Addr(), 0, 0, 0, 0) + ver = uint32(r0) + if ver == 0 { + err = errnoErr(e1) + } + return +} + +func GetVolumeInformationByHandle(file Handle, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { + r1, _, e1 := syscall.Syscall9(procGetVolumeInformationByHandleW.Addr(), 8, uintptr(file), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetVolumeInformation(rootPathName *uint16, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { + r1, _, e1 := syscall.Syscall9(procGetVolumeInformationW.Addr(), 8, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetVolumeNameForVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16, bufferlength uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetVolumeNameForVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferlength)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetVolumePathName(fileName *uint16, volumePathName *uint16, bufferLength uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetVolumePathNameW.Addr(), 3, uintptr(unsafe.Pointer(fileName)), uintptr(unsafe.Pointer(volumePathName)), uintptr(bufferLength)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetVolumePathNamesForVolumeName(volumeName *uint16, volumePathNames *uint16, bufferLength uint32, returnLength *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procGetVolumePathNamesForVolumeNameW.Addr(), 4, uintptr(unsafe.Pointer(volumeName)), uintptr(unsafe.Pointer(volumePathNames)), uintptr(bufferLength), uintptr(unsafe.Pointer(returnLength)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func getWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { + r0, _, e1 := syscall.Syscall(procGetWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) + len = uint32(r0) + if len == 0 { + err = errnoErr(e1) + } + return +} + +func IsWow64Process(handle Handle, isWow64 *bool) (err error) { + var _p0 uint32 + if *isWow64 { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procIsWow64Process.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(&_p0)), 0) + *isWow64 = _p0 != 0 + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func LoadLibraryEx(libname string, zero Handle, flags uintptr) (handle Handle, err error) { + var _p0 *uint16 + _p0, err = syscall.UTF16PtrFromString(libname) + if err != nil { + return + } + return _LoadLibraryEx(_p0, zero, flags) +} + +func _LoadLibraryEx(libname *uint16, zero Handle, flags uintptr) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procLoadLibraryExW.Addr(), 3, uintptr(unsafe.Pointer(libname)), uintptr(zero), uintptr(flags)) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func LoadLibrary(libname string) (handle Handle, err error) { + var _p0 *uint16 + _p0, err = syscall.UTF16PtrFromString(libname) + if err != nil { + return + } + return _LoadLibrary(_p0) +} + +func _LoadLibrary(libname *uint16) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procLoadLibraryW.Addr(), 1, uintptr(unsafe.Pointer(libname)), 0, 0) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func LocalFree(hmem Handle) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0) + handle = Handle(r0) + if handle != 0 { + err = errnoErr(e1) + } + return +} + +func LockFileEx(file Handle, flags uint32, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall6(procLockFileEx.Addr(), 6, uintptr(file), uintptr(flags), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped))) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) { + r0, _, e1 := syscall.Syscall6(procMapViewOfFile.Addr(), 5, uintptr(handle), uintptr(access), uintptr(offsetHigh), uintptr(offsetLow), uintptr(length), 0) + addr = uintptr(r0) + if addr == 0 { + err = errnoErr(e1) + } + return +} + +func MoveFileEx(from *uint16, to *uint16, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procMoveFileExW.Addr(), 3, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), uintptr(flags)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func MoveFile(from *uint16, to *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procMoveFileW.Addr(), 2, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + func MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) { r0, _, e1 := syscall.Syscall6(procMultiByteToWideChar.Addr(), 6, uintptr(codePage), uintptr(dwFlags), uintptr(unsafe.Pointer(str)), uintptr(nstr), uintptr(unsafe.Pointer(wchar)), uintptr(nwchar)) nwrite = int32(r0) if nwrite == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func TranslateName(accName *uint16, accNameFormat uint32, desiredNameFormat uint32, translatedName *uint16, nSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procTranslateNameW.Addr(), 5, uintptr(unsafe.Pointer(accName)), uintptr(accNameFormat), uintptr(desiredNameFormat), uintptr(unsafe.Pointer(translatedName)), uintptr(unsafe.Pointer(nSize)), 0) - if r1&0xff == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { + var _p0 uint32 + if inheritHandle { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall(procOpenEventW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) } return } -func GetUserNameEx(nameFormat uint32, nameBuffre *uint16, nSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetUserNameExW.Addr(), 3, uintptr(nameFormat), uintptr(unsafe.Pointer(nameBuffre)), uintptr(unsafe.Pointer(nSize))) - if r1&0xff == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { + var _p0 uint32 + if inheritHandle { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall(procOpenMutexW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) } return } -func NetUserGetInfo(serverName *uint16, userName *uint16, level uint32, buf **byte) (neterr error) { - r0, _, _ := syscall.Syscall6(procNetUserGetInfo.Addr(), 4, uintptr(unsafe.Pointer(serverName)), uintptr(unsafe.Pointer(userName)), uintptr(level), uintptr(unsafe.Pointer(buf)), 0, 0) +func OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error) { + var _p0 uint32 + if inheritHandle { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall(procOpenProcess.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(processId)) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) { + var _p0 uint32 + if inheritHandle { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall(procOpenThread.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(threadId)) + handle = Handle(r0) + if handle == 0 { + err = errnoErr(e1) + } + return +} + +func PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uint32, overlapped *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall6(procPostQueuedCompletionStatus.Addr(), 4, uintptr(cphandle), uintptr(qty), uintptr(key), uintptr(unsafe.Pointer(overlapped)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func Process32First(snapshot Handle, procEntry *ProcessEntry32) (err error) { + r1, _, e1 := syscall.Syscall(procProcess32FirstW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) { + r1, _, e1 := syscall.Syscall(procProcess32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ProcessIdToSessionId(pid uint32, sessionid *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procProcessIdToSessionId.Addr(), 2, uintptr(pid), uintptr(unsafe.Pointer(sessionid)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func PulseEvent(event Handle) (err error) { + r1, _, e1 := syscall.Syscall(procPulseEvent.Addr(), 1, uintptr(event), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint32, err error) { + r0, _, e1 := syscall.Syscall(procQueryDosDeviceW.Addr(), 3, uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath)), uintptr(max)) + n = uint32(r0) + if n == 0 { + err = errnoErr(e1) + } + return +} + +func QueryInformationJobObject(job Handle, JobObjectInformationClass int32, JobObjectInformation uintptr, JobObjectInformationLength uint32, retlen *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procQueryInformationJobObject.Addr(), 5, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), uintptr(unsafe.Pointer(retlen)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, inputControl *byte) (err error) { + r1, _, e1 := syscall.Syscall6(procReadConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(toread), uintptr(unsafe.Pointer(read)), uintptr(unsafe.Pointer(inputControl)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ReadDirectoryChanges(handle Handle, buf *byte, buflen uint32, watchSubTree bool, mask uint32, retlen *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { + var _p0 uint32 + if watchSubTree { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall9(procReadDirectoryChangesW.Addr(), 8, uintptr(handle), uintptr(unsafe.Pointer(buf)), uintptr(buflen), uintptr(_p0), uintptr(mask), uintptr(unsafe.Pointer(retlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { + var _p0 *byte + if len(buf) > 0 { + _p0 = &buf[0] + } + r1, _, e1 := syscall.Syscall6(procReadFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ReleaseMutex(mutex Handle) (err error) { + r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func RemoveDirectory(path *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procRemoveDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ResetEvent(event Handle) (err error) { + r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func ResumeThread(thread Handle) (ret uint32, err error) { + r0, _, e1 := syscall.Syscall(procResumeThread.Addr(), 1, uintptr(thread), 0, 0) + ret = uint32(r0) + if ret == 0xffffffff { + err = errnoErr(e1) + } + return +} + +func SetConsoleCursorPosition(console Handle, position Coord) (err error) { + r1, _, e1 := syscall.Syscall(procSetConsoleCursorPosition.Addr(), 2, uintptr(console), uintptr(*((*uint32)(unsafe.Pointer(&position)))), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetConsoleMode(console Handle, mode uint32) (err error) { + r1, _, e1 := syscall.Syscall(procSetConsoleMode.Addr(), 2, uintptr(console), uintptr(mode), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetCurrentDirectory(path *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procSetCurrentDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetEndOfFile(handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetEnvironmentVariable(name *uint16, value *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procSetEnvironmentVariableW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(value)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetErrorMode(mode uint32) (ret uint32) { + r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0) + ret = uint32(r0) + return +} + +func SetEvent(event Handle) (err error) { + r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetFileAttributes(name *uint16, attrs uint32) (err error) { + r1, _, e1 := syscall.Syscall(procSetFileAttributesW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(attrs), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) { + r1, _, e1 := syscall.Syscall(procSetFileCompletionNotificationModes.Addr(), 2, uintptr(handle), uintptr(flags), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whence uint32) (newlowoffset uint32, err error) { + r0, _, e1 := syscall.Syscall6(procSetFilePointer.Addr(), 4, uintptr(handle), uintptr(lowoffset), uintptr(unsafe.Pointer(highoffsetptr)), uintptr(whence), 0, 0) + newlowoffset = uint32(r0) + if newlowoffset == 0xffffffff { + err = errnoErr(e1) + } + return +} + +func SetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error) { + r1, _, e1 := syscall.Syscall6(procSetFileTime.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(ctime)), uintptr(unsafe.Pointer(atime)), uintptr(unsafe.Pointer(wtime)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procSetHandleInformation.Addr(), 3, uintptr(handle), uintptr(mask), uintptr(flags)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error) { + r0, _, e1 := syscall.Syscall6(procSetInformationJobObject.Addr(), 4, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), 0, 0) + ret = int(r0) + if ret == 0 { + err = errnoErr(e1) + } + return +} + +func SetPriorityClass(process Handle, priorityClass uint32) (err error) { + r1, _, e1 := syscall.Syscall(procSetPriorityClass.Addr(), 2, uintptr(process), uintptr(priorityClass), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetProcessPriorityBoost(process Handle, disable bool) (err error) { + var _p0 uint32 + if disable { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetProcessShutdownParameters(level uint32, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall(procSetProcessShutdownParameters.Addr(), 2, uintptr(level), uintptr(flags), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetProcessWorkingSetSizeEx(hProcess Handle, dwMinimumWorkingSetSize uintptr, dwMaximumWorkingSetSize uintptr, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procSetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(dwMinimumWorkingSetSize), uintptr(dwMaximumWorkingSetSize), uintptr(flags), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetStdHandle(stdhandle uint32, handle Handle) (err error) { + r1, _, e1 := syscall.Syscall(procSetStdHandle.Addr(), 2, uintptr(stdhandle), uintptr(handle), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procSetVolumeLabelW.Addr(), 2, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeName)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procSetVolumeMountPointW.Addr(), 2, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func SleepEx(milliseconds uint32, alertable bool) (ret uint32) { + var _p0 uint32 + if alertable { + _p0 = 1 + } + r0, _, _ := syscall.Syscall(procSleepEx.Addr(), 2, uintptr(milliseconds), uintptr(_p0), 0) + ret = uint32(r0) + return +} + +func TerminateJobObject(job Handle, exitCode uint32) (err error) { + r1, _, e1 := syscall.Syscall(procTerminateJobObject.Addr(), 2, uintptr(job), uintptr(exitCode), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func TerminateProcess(handle Handle, exitcode uint32) (err error) { + r1, _, e1 := syscall.Syscall(procTerminateProcess.Addr(), 2, uintptr(handle), uintptr(exitcode), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) { + r1, _, e1 := syscall.Syscall(procThread32First.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) { + r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func UnlockFileEx(file Handle, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall6(procUnlockFileEx.Addr(), 5, uintptr(file), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func UnmapViewOfFile(addr uintptr) (err error) { + r1, _, e1 := syscall.Syscall(procUnmapViewOfFile.Addr(), 1, uintptr(addr), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func VirtualAlloc(address uintptr, size uintptr, alloctype uint32, protect uint32) (value uintptr, err error) { + r0, _, e1 := syscall.Syscall6(procVirtualAlloc.Addr(), 4, uintptr(address), uintptr(size), uintptr(alloctype), uintptr(protect), 0, 0) + value = uintptr(r0) + if value == 0 { + err = errnoErr(e1) + } + return +} + +func VirtualFree(address uintptr, size uintptr, freetype uint32) (err error) { + r1, _, e1 := syscall.Syscall(procVirtualFree.Addr(), 3, uintptr(address), uintptr(size), uintptr(freetype)) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func VirtualLock(addr uintptr, length uintptr) (err error) { + r1, _, e1 := syscall.Syscall(procVirtualLock.Addr(), 2, uintptr(addr), uintptr(length), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procVirtualProtect.Addr(), 4, uintptr(address), uintptr(size), uintptr(newprotect), uintptr(unsafe.Pointer(oldprotect)), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func VirtualUnlock(addr uintptr, length uintptr) (err error) { + r1, _, e1 := syscall.Syscall(procVirtualUnlock.Addr(), 2, uintptr(addr), uintptr(length), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func waitForMultipleObjects(count uint32, handles uintptr, waitAll bool, waitMilliseconds uint32) (event uint32, err error) { + var _p0 uint32 + if waitAll { + _p0 = 1 + } + r0, _, e1 := syscall.Syscall6(procWaitForMultipleObjects.Addr(), 4, uintptr(count), uintptr(handles), uintptr(_p0), uintptr(waitMilliseconds), 0, 0) + event = uint32(r0) + if event == 0xffffffff { + err = errnoErr(e1) + } + return +} + +func WaitForSingleObject(handle Handle, waitMilliseconds uint32) (event uint32, err error) { + r0, _, e1 := syscall.Syscall(procWaitForSingleObject.Addr(), 2, uintptr(handle), uintptr(waitMilliseconds), 0) + event = uint32(r0) + if event == 0xffffffff { + err = errnoErr(e1) + } + return +} + +func WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint32, reserved *byte) (err error) { + r1, _, e1 := syscall.Syscall6(procWriteConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(towrite), uintptr(unsafe.Pointer(written)), uintptr(unsafe.Pointer(reserved)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { + var _p0 *byte + if len(buf) > 0 { + _p0 = &buf[0] + } + r1, _, e1 := syscall.Syscall6(procWriteFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func AcceptEx(ls Handle, as Handle, buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (err error) { + r1, _, e1 := syscall.Syscall9(procAcceptEx.Addr(), 8, uintptr(ls), uintptr(as), uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(overlapped)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsalen *int32) { + syscall.Syscall9(procGetAcceptExSockaddrs.Addr(), 8, uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(lrsa)), uintptr(unsafe.Pointer(lrsalen)), uintptr(unsafe.Pointer(rrsa)), uintptr(unsafe.Pointer(rrsalen)), 0) + return +} + +func TransmitFile(s Handle, handle Handle, bytesToWrite uint32, bytsPerSend uint32, overlapped *Overlapped, transmitFileBuf *TransmitFileBuffers, flags uint32) (err error) { + r1, _, e1 := syscall.Syscall9(procTransmitFile.Addr(), 7, uintptr(s), uintptr(handle), uintptr(bytesToWrite), uintptr(bytsPerSend), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(transmitFileBuf)), uintptr(flags), 0, 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + +func NetApiBufferFree(buf *byte) (neterr error) { + r0, _, _ := syscall.Syscall(procNetApiBufferFree.Addr(), 1, uintptr(unsafe.Pointer(buf)), 0, 0) if r0 != 0 { neterr = syscall.Errno(r0) } @@ -3352,310 +2639,140 @@ func NetGetJoinInformation(server *uint16, name **uint16, bufType *uint32) (nete return } -func NetApiBufferFree(buf *byte) (neterr error) { - r0, _, _ := syscall.Syscall(procNetApiBufferFree.Addr(), 1, uintptr(unsafe.Pointer(buf)), 0, 0) +func NetUserGetInfo(serverName *uint16, userName *uint16, level uint32, buf **byte) (neterr error) { + r0, _, _ := syscall.Syscall6(procNetUserGetInfo.Addr(), 4, uintptr(unsafe.Pointer(serverName)), uintptr(unsafe.Pointer(userName)), uintptr(level), uintptr(unsafe.Pointer(buf)), 0, 0) if r0 != 0 { neterr = syscall.Errno(r0) } return } -func LookupAccountSid(systemName *uint16, sid *SID, name *uint16, nameLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { - r1, _, e1 := syscall.Syscall9(procLookupAccountSidW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(nameLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) +func rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) { + syscall.Syscall(procRtlGetNtVersionNumbers.Addr(), 3, uintptr(unsafe.Pointer(majorVersion)), uintptr(unsafe.Pointer(minorVersion)), uintptr(unsafe.Pointer(buildNumber))) + return +} + +func rtlGetVersion(info *OsVersionInfoEx) (ret error) { + r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func clsidFromString(lpsz *uint16, pclsid *GUID) (ret error) { + r0, _, _ := syscall.Syscall(procCLSIDFromString.Addr(), 2, uintptr(unsafe.Pointer(lpsz)), uintptr(unsafe.Pointer(pclsid)), 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func coCreateGuid(pguid *GUID) (ret error) { + r0, _, _ := syscall.Syscall(procCoCreateGuid.Addr(), 1, uintptr(unsafe.Pointer(pguid)), 0, 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func CoTaskMemFree(address unsafe.Pointer) { + syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0) + return +} + +func stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) { + r0, _, _ := syscall.Syscall(procStringFromGUID2.Addr(), 3, uintptr(unsafe.Pointer(rguid)), uintptr(unsafe.Pointer(lpsz)), uintptr(cchMax)) + chars = int32(r0) + return +} + +func EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) { + var _p0 *uint32 + if len(processIds) > 0 { + _p0 = &processIds[0] + } + r1, _, e1 := syscall.Syscall(procEnumProcesses.Addr(), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(processIds)), uintptr(unsafe.Pointer(bytesReturned))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func LookupAccountName(systemName *uint16, accountName *uint16, sid *SID, sidLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { - r1, _, e1 := syscall.Syscall9(procLookupAccountNameW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(accountName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sidLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) +func GetUserNameEx(nameFormat uint32, nameBuffre *uint16, nSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall(procGetUserNameExW.Addr(), 3, uintptr(nameFormat), uintptr(unsafe.Pointer(nameBuffre)), uintptr(unsafe.Pointer(nSize))) + if r1&0xff == 0 { + err = errnoErr(e1) + } + return +} + +func TranslateName(accName *uint16, accNameFormat uint32, desiredNameFormat uint32, translatedName *uint16, nSize *uint32) (err error) { + r1, _, e1 := syscall.Syscall6(procTranslateNameW.Addr(), 5, uintptr(unsafe.Pointer(accName)), uintptr(accNameFormat), uintptr(desiredNameFormat), uintptr(unsafe.Pointer(translatedName)), uintptr(unsafe.Pointer(nSize)), 0) + if r1&0xff == 0 { + err = errnoErr(e1) + } + return +} + +func CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) { + r0, _, e1 := syscall.Syscall(procCommandLineToArgvW.Addr(), 2, uintptr(unsafe.Pointer(cmd)), uintptr(unsafe.Pointer(argc)), 0) + argv = (*[8192]*[8192]uint16)(unsafe.Pointer(r0)) + if argv == nil { + err = errnoErr(e1) + } + return +} + +func shGetKnownFolderPath(id *KNOWNFOLDERID, flags uint32, token Token, path **uint16) (ret error) { + r0, _, _ := syscall.Syscall6(procSHGetKnownFolderPath.Addr(), 4, uintptr(unsafe.Pointer(id)), uintptr(flags), uintptr(token), uintptr(unsafe.Pointer(path)), 0, 0) + if r0 != 0 { + ret = syscall.Errno(r0) + } + return +} + +func ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) { + r1, _, e1 := syscall.Syscall6(procShellExecuteW.Addr(), 6, uintptr(hwnd), uintptr(unsafe.Pointer(verb)), uintptr(unsafe.Pointer(file)), uintptr(unsafe.Pointer(args)), uintptr(unsafe.Pointer(cwd)), uintptr(showCmd)) + if r1 <= 32 { + err = errnoErr(e1) + } + return +} + +func ExitWindowsEx(flags uint32, reason uint32) (err error) { + r1, _, e1 := syscall.Syscall(procExitWindowsEx.Addr(), 2, uintptr(flags), uintptr(reason), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func ConvertSidToStringSid(sid *SID, stringSid **uint16) (err error) { - r1, _, e1 := syscall.Syscall(procConvertSidToStringSidW.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(stringSid)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func MessageBox(hwnd Handle, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) { + r0, _, e1 := syscall.Syscall6(procMessageBoxW.Addr(), 4, uintptr(hwnd), uintptr(unsafe.Pointer(text)), uintptr(unsafe.Pointer(caption)), uintptr(boxtype), 0, 0) + ret = int32(r0) + if ret == 0 { + err = errnoErr(e1) } return } -func ConvertStringSidToSid(stringSid *uint16, sid **SID) (err error) { - r1, _, e1 := syscall.Syscall(procConvertStringSidToSidW.Addr(), 2, uintptr(unsafe.Pointer(stringSid)), uintptr(unsafe.Pointer(sid)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetLengthSid(sid *SID) (len uint32) { - r0, _, _ := syscall.Syscall(procGetLengthSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) - len = uint32(r0) - return -} - -func CopySid(destSidLen uint32, destSid *SID, srcSid *SID) (err error) { - r1, _, e1 := syscall.Syscall(procCopySid.Addr(), 3, uintptr(destSidLen), uintptr(unsafe.Pointer(destSid)), uintptr(unsafe.Pointer(srcSid))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func AllocateAndInitializeSid(identAuth *SidIdentifierAuthority, subAuth byte, subAuth0 uint32, subAuth1 uint32, subAuth2 uint32, subAuth3 uint32, subAuth4 uint32, subAuth5 uint32, subAuth6 uint32, subAuth7 uint32, sid **SID) (err error) { - r1, _, e1 := syscall.Syscall12(procAllocateAndInitializeSid.Addr(), 11, uintptr(unsafe.Pointer(identAuth)), uintptr(subAuth), uintptr(subAuth0), uintptr(subAuth1), uintptr(subAuth2), uintptr(subAuth3), uintptr(subAuth4), uintptr(subAuth5), uintptr(subAuth6), uintptr(subAuth7), uintptr(unsafe.Pointer(sid)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func createWellKnownSid(sidType WELL_KNOWN_SID_TYPE, domainSid *SID, sid *SID, sizeSid *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procCreateWellKnownSid.Addr(), 4, uintptr(sidType), uintptr(unsafe.Pointer(domainSid)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sizeSid)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func isWellKnownSid(sid *SID, sidType WELL_KNOWN_SID_TYPE) (isWellKnown bool) { - r0, _, _ := syscall.Syscall(procIsWellKnownSid.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(sidType), 0) - isWellKnown = r0 != 0 - return -} - -func FreeSid(sid *SID) (err error) { - r1, _, e1 := syscall.Syscall(procFreeSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) - if r1 != 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func EqualSid(sid1 *SID, sid2 *SID) (isEqual bool) { - r0, _, _ := syscall.Syscall(procEqualSid.Addr(), 2, uintptr(unsafe.Pointer(sid1)), uintptr(unsafe.Pointer(sid2)), 0) - isEqual = r0 != 0 - return -} - -func getSidIdentifierAuthority(sid *SID) (authority *SidIdentifierAuthority) { - r0, _, _ := syscall.Syscall(procGetSidIdentifierAuthority.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) - authority = (*SidIdentifierAuthority)(unsafe.Pointer(r0)) - return -} - -func getSidSubAuthorityCount(sid *SID) (count *uint8) { - r0, _, _ := syscall.Syscall(procGetSidSubAuthorityCount.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) - count = (*uint8)(unsafe.Pointer(r0)) - return -} - -func getSidSubAuthority(sid *SID, index uint32) (subAuthority *uint32) { - r0, _, _ := syscall.Syscall(procGetSidSubAuthority.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(index), 0) - subAuthority = (*uint32)(unsafe.Pointer(r0)) - return -} - -func isValidSid(sid *SID) (isValid bool) { - r0, _, _ := syscall.Syscall(procIsValidSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) - isValid = r0 != 0 - return -} - -func checkTokenMembership(tokenHandle Token, sidToCheck *SID, isMember *int32) (err error) { - r1, _, e1 := syscall.Syscall(procCheckTokenMembership.Addr(), 3, uintptr(tokenHandle), uintptr(unsafe.Pointer(sidToCheck)), uintptr(unsafe.Pointer(isMember))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func OpenProcessToken(process Handle, access uint32, token *Token) (err error) { - r1, _, e1 := syscall.Syscall(procOpenProcessToken.Addr(), 3, uintptr(process), uintptr(access), uintptr(unsafe.Pointer(token))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) { +func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) { var _p0 uint32 - if openAsSelf { + if inheritExisting { _p0 = 1 - } else { - _p0 = 0 } - r1, _, e1 := syscall.Syscall6(procOpenThreadToken.Addr(), 4, uintptr(thread), uintptr(access), uintptr(_p0), uintptr(unsafe.Pointer(token)), 0, 0) + r1, _, e1 := syscall.Syscall(procCreateEnvironmentBlock.Addr(), 3, uintptr(unsafe.Pointer(block)), uintptr(token), uintptr(_p0)) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func ImpersonateSelf(impersonationlevel uint32) (err error) { - r1, _, e1 := syscall.Syscall(procImpersonateSelf.Addr(), 1, uintptr(impersonationlevel), 0, 0) +func DestroyEnvironmentBlock(block *uint16) (err error) { + r1, _, e1 := syscall.Syscall(procDestroyEnvironmentBlock.Addr(), 1, uintptr(unsafe.Pointer(block)), 0, 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func RevertToSelf() (err error) { - r1, _, e1 := syscall.Syscall(procRevertToSelf.Addr(), 0, 0, 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetThreadToken(thread *Handle, token Token) (err error) { - r1, _, e1 := syscall.Syscall(procSetThreadToken.Addr(), 2, uintptr(unsafe.Pointer(thread)), uintptr(token), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func LookupPrivilegeValue(systemname *uint16, name *uint16, luid *LUID) (err error) { - r1, _, e1 := syscall.Syscall(procLookupPrivilegeValueW.Addr(), 3, uintptr(unsafe.Pointer(systemname)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(luid))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func AdjustTokenPrivileges(token Token, disableAllPrivileges bool, newstate *Tokenprivileges, buflen uint32, prevstate *Tokenprivileges, returnlen *uint32) (err error) { - var _p0 uint32 - if disableAllPrivileges { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall6(procAdjustTokenPrivileges.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func AdjustTokenGroups(token Token, resetToDefault bool, newstate *Tokengroups, buflen uint32, prevstate *Tokengroups, returnlen *uint32) (err error) { - var _p0 uint32 - if resetToDefault { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall6(procAdjustTokenGroups.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func GetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32, returnedLen *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procGetTokenInformation.Addr(), 5, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), uintptr(unsafe.Pointer(returnedLen)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func SetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procSetTokenInformation.Addr(), 4, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func DuplicateTokenEx(existingToken Token, desiredAccess uint32, tokenAttributes *SecurityAttributes, impersonationLevel uint32, tokenType uint32, newToken *Token) (err error) { - r1, _, e1 := syscall.Syscall6(procDuplicateTokenEx.Addr(), 6, uintptr(existingToken), uintptr(desiredAccess), uintptr(unsafe.Pointer(tokenAttributes)), uintptr(impersonationLevel), uintptr(tokenType), uintptr(unsafe.Pointer(newToken))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } @@ -3663,62 +2780,256 @@ func DuplicateTokenEx(existingToken Token, desiredAccess uint32, tokenAttributes func GetUserProfileDirectory(t Token, dir *uint16, dirLen *uint32) (err error) { r1, _, e1 := syscall.Syscall(procGetUserProfileDirectoryW.Addr(), 3, uintptr(t), uintptr(unsafe.Pointer(dir)), uintptr(unsafe.Pointer(dirLen))) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } -func getSystemDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetSystemDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) - len = uint32(r0) - if len == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func FreeAddrInfoW(addrinfo *AddrinfoW) { + syscall.Syscall(procFreeAddrInfoW.Addr(), 1, uintptr(unsafe.Pointer(addrinfo)), 0, 0) + return +} + +func GetAddrInfoW(nodename *uint16, servicename *uint16, hints *AddrinfoW, result **AddrinfoW) (sockerr error) { + r0, _, _ := syscall.Syscall6(procGetAddrInfoW.Addr(), 4, uintptr(unsafe.Pointer(nodename)), uintptr(unsafe.Pointer(servicename)), uintptr(unsafe.Pointer(hints)), uintptr(unsafe.Pointer(result)), 0, 0) + if r0 != 0 { + sockerr = syscall.Errno(r0) } return } -func getWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) - len = uint32(r0) - if len == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func WSACleanup() (err error) { + r1, _, e1 := syscall.Syscall(procWSACleanup.Addr(), 0, 0, 0, 0) + if r1 == socket_error { + err = errnoErr(e1) } return } -func getSystemWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { - r0, _, e1 := syscall.Syscall(procGetSystemWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) - len = uint32(r0) - if len == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) { + r0, _, e1 := syscall.Syscall(procWSAEnumProtocolsW.Addr(), 3, uintptr(unsafe.Pointer(protocols)), uintptr(unsafe.Pointer(protocolBuffer)), uintptr(unsafe.Pointer(bufferLength))) + n = int32(r0) + if n == -1 { + err = errnoErr(e1) } return } -func WTSQueryUserToken(session uint32, token *Token) (err error) { - r1, _, e1 := syscall.Syscall(procWTSQueryUserToken.Addr(), 2, uintptr(session), uintptr(unsafe.Pointer(token)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } +func WSAIoctl(s Handle, iocc uint32, inbuf *byte, cbif uint32, outbuf *byte, cbob uint32, cbbr *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { + r1, _, e1 := syscall.Syscall9(procWSAIoctl.Addr(), 9, uintptr(s), uintptr(iocc), uintptr(unsafe.Pointer(inbuf)), uintptr(cbif), uintptr(unsafe.Pointer(outbuf)), uintptr(cbob), uintptr(unsafe.Pointer(cbbr)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine)) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func WSARecv(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, overlapped *Overlapped, croutine *byte) (err error) { + r1, _, e1 := syscall.Syscall9(procWSARecv.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func WSARecvFrom(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (err error) { + r1, _, e1 := syscall.Syscall9(procWSARecvFrom.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func WSASend(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, overlapped *Overlapped, croutine *byte) (err error) { + r1, _, e1 := syscall.Syscall9(procWSASend.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func WSASendTo(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (err error) { + r1, _, e1 := syscall.Syscall9(procWSASendTo.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(to)), uintptr(tolen), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func WSAStartup(verreq uint32, data *WSAData) (sockerr error) { + r0, _, _ := syscall.Syscall(procWSAStartup.Addr(), 2, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0) + if r0 != 0 { + sockerr = syscall.Errno(r0) + } + return +} + +func bind(s Handle, name unsafe.Pointer, namelen int32) (err error) { + r1, _, e1 := syscall.Syscall(procbind.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func Closesocket(s Handle) (err error) { + r1, _, e1 := syscall.Syscall(procclosesocket.Addr(), 1, uintptr(s), 0, 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func connect(s Handle, name unsafe.Pointer, namelen int32) (err error) { + r1, _, e1 := syscall.Syscall(procconnect.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func GetHostByName(name string) (h *Hostent, err error) { + var _p0 *byte + _p0, err = syscall.BytePtrFromString(name) + if err != nil { + return + } + return _GetHostByName(_p0) +} + +func _GetHostByName(name *byte) (h *Hostent, err error) { + r0, _, e1 := syscall.Syscall(procgethostbyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) + h = (*Hostent)(unsafe.Pointer(r0)) + if h == nil { + err = errnoErr(e1) + } + return +} + +func getpeername(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { + r1, _, e1 := syscall.Syscall(procgetpeername.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func GetProtoByName(name string) (p *Protoent, err error) { + var _p0 *byte + _p0, err = syscall.BytePtrFromString(name) + if err != nil { + return + } + return _GetProtoByName(_p0) +} + +func _GetProtoByName(name *byte) (p *Protoent, err error) { + r0, _, e1 := syscall.Syscall(procgetprotobyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) + p = (*Protoent)(unsafe.Pointer(r0)) + if p == nil { + err = errnoErr(e1) + } + return +} + +func GetServByName(name string, proto string) (s *Servent, err error) { + var _p0 *byte + _p0, err = syscall.BytePtrFromString(name) + if err != nil { + return + } + var _p1 *byte + _p1, err = syscall.BytePtrFromString(proto) + if err != nil { + return + } + return _GetServByName(_p0, _p1) +} + +func _GetServByName(name *byte, proto *byte) (s *Servent, err error) { + r0, _, e1 := syscall.Syscall(procgetservbyname.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(proto)), 0) + s = (*Servent)(unsafe.Pointer(r0)) + if s == nil { + err = errnoErr(e1) + } + return +} + +func getsockname(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { + r1, _, e1 := syscall.Syscall(procgetsockname.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func Getsockopt(s Handle, level int32, optname int32, optval *byte, optlen *int32) (err error) { + r1, _, e1 := syscall.Syscall6(procgetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(unsafe.Pointer(optlen)), 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func listen(s Handle, backlog int32) (err error) { + r1, _, e1 := syscall.Syscall(proclisten.Addr(), 2, uintptr(s), uintptr(backlog), 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func Ntohs(netshort uint16) (u uint16) { + r0, _, _ := syscall.Syscall(procntohs.Addr(), 1, uintptr(netshort), 0, 0) + u = uint16(r0) + return +} + +func recvfrom(s Handle, buf []byte, flags int32, from *RawSockaddrAny, fromlen *int32) (n int32, err error) { + var _p0 *byte + if len(buf) > 0 { + _p0 = &buf[0] + } + r0, _, e1 := syscall.Syscall6(procrecvfrom.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) + n = int32(r0) + if n == -1 { + err = errnoErr(e1) + } + return +} + +func sendto(s Handle, buf []byte, flags int32, to unsafe.Pointer, tolen int32) (err error) { + var _p0 *byte + if len(buf) > 0 { + _p0 = &buf[0] + } + r1, _, e1 := syscall.Syscall6(procsendto.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(tolen)) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func Setsockopt(s Handle, level int32, optname int32, optval *byte, optlen int32) (err error) { + r1, _, e1 := syscall.Syscall6(procsetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(optlen), 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func shutdown(s Handle, how int32) (err error) { + r1, _, e1 := syscall.Syscall(procshutdown.Addr(), 2, uintptr(s), uintptr(how), 0) + if r1 == socket_error { + err = errnoErr(e1) + } + return +} + +func socket(af int32, typ int32, protocol int32) (handle Handle, err error) { + r0, _, e1 := syscall.Syscall(procsocket.Addr(), 3, uintptr(af), uintptr(typ), uintptr(protocol)) + handle = Handle(r0) + if handle == InvalidHandle { + err = errnoErr(e1) } return } @@ -3726,11 +3037,7 @@ func WTSQueryUserToken(session uint32, token *Token) (err error) { func WTSEnumerateSessions(handle Handle, reserved uint32, version uint32, sessions **WTS_SESSION_INFO, count *uint32) (err error) { r1, _, e1 := syscall.Syscall6(procWTSEnumerateSessionsW.Addr(), 5, uintptr(handle), uintptr(reserved), uintptr(version), uintptr(unsafe.Pointer(sessions)), uintptr(unsafe.Pointer(count)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } + err = errnoErr(e1) } return } @@ -3740,357 +3047,10 @@ func WTSFreeMemory(ptr uintptr) { return } -func getSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { - r0, _, _ := syscall.Syscall9(procGetSecurityInfo.Addr(), 8, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) { - syscall.Syscall9(procSetSecurityInfo.Addr(), 7, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) - return -} - -func getNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { - var _p0 *uint16 - _p0, ret = syscall.UTF16PtrFromString(objectName) - if ret != nil { - return - } - return _getNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl, sd) -} - -func _getNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { - r0, _, _ := syscall.Syscall9(procGetNamedSecurityInfoW.Addr(), 8, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func SetNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { - var _p0 *uint16 - _p0, ret = syscall.UTF16PtrFromString(objectName) - if ret != nil { - return - } - return _SetNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl) -} - -func _SetNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { - r0, _, _ := syscall.Syscall9(procSetNamedSecurityInfoW.Addr(), 7, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func buildSecurityDescriptor(owner *TRUSTEE, group *TRUSTEE, countAccessEntries uint32, accessEntries *EXPLICIT_ACCESS, countAuditEntries uint32, auditEntries *EXPLICIT_ACCESS, oldSecurityDescriptor *SECURITY_DESCRIPTOR, sizeNewSecurityDescriptor *uint32, newSecurityDescriptor **SECURITY_DESCRIPTOR) (ret error) { - r0, _, _ := syscall.Syscall9(procBuildSecurityDescriptorW.Addr(), 9, uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(countAccessEntries), uintptr(unsafe.Pointer(accessEntries)), uintptr(countAuditEntries), uintptr(unsafe.Pointer(auditEntries)), uintptr(unsafe.Pointer(oldSecurityDescriptor)), uintptr(unsafe.Pointer(sizeNewSecurityDescriptor)), uintptr(unsafe.Pointer(newSecurityDescriptor))) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func initializeSecurityDescriptor(absoluteSD *SECURITY_DESCRIPTOR, revision uint32) (err error) { - r1, _, e1 := syscall.Syscall(procInitializeSecurityDescriptor.Addr(), 2, uintptr(unsafe.Pointer(absoluteSD)), uintptr(revision), 0) +func WTSQueryUserToken(session uint32, token *Token) (err error) { + r1, _, e1 := syscall.Syscall(procWTSQueryUserToken.Addr(), 2, uintptr(session), uintptr(unsafe.Pointer(token)), 0) if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, control *SECURITY_DESCRIPTOR_CONTROL, revision *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(control)), uintptr(unsafe.Pointer(revision))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent *bool, dacl **ACL, daclDefaulted *bool) (err error) { - var _p0 uint32 - if *daclPresent { - _p0 = 1 - } else { - _p0 = 0 - } - var _p1 uint32 - if *daclDefaulted { - _p1 = 1 - } else { - _p1 = 0 - } - r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) - *daclPresent = _p0 != 0 - *daclDefaulted = _p1 != 0 - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent *bool, sacl **ACL, saclDefaulted *bool) (err error) { - var _p0 uint32 - if *saclPresent { - _p0 = 1 - } else { - _p0 = 0 - } - var _p1 uint32 - if *saclDefaulted { - _p1 = 1 - } else { - _p1 = 0 - } - r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) - *saclPresent = _p0 != 0 - *saclDefaulted = _p1 != 0 - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner **SID, ownerDefaulted *bool) (err error) { - var _p0 uint32 - if *ownerDefaulted { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(&_p0))) - *ownerDefaulted = _p0 != 0 - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group **SID, groupDefaulted *bool) (err error) { - var _p0 uint32 - if *groupDefaulted { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(&_p0))) - *groupDefaulted = _p0 != 0 - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func getSecurityDescriptorLength(sd *SECURITY_DESCRIPTOR) (len uint32) { - r0, _, _ := syscall.Syscall(procGetSecurityDescriptorLength.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) - len = uint32(r0) - return -} - -func getSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) (ret error) { - r0, _, _ := syscall.Syscall(procGetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) - if r0 != 0 { - ret = syscall.Errno(r0) - } - return -} - -func isValidSecurityDescriptor(sd *SECURITY_DESCRIPTOR) (isValid bool) { - r0, _, _ := syscall.Syscall(procIsValidSecurityDescriptor.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) - isValid = r0 != 0 - return -} - -func setSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, controlBitsOfInterest SECURITY_DESCRIPTOR_CONTROL, controlBitsToSet SECURITY_DESCRIPTOR_CONTROL) (err error) { - r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(controlBitsOfInterest), uintptr(controlBitsToSet)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent bool, dacl *ACL, daclDefaulted bool) (err error) { - var _p0 uint32 - if daclPresent { - _p0 = 1 - } else { - _p0 = 0 - } - var _p1 uint32 - if daclDefaulted { - _p1 = 1 - } else { - _p1 = 0 - } - r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(dacl)), uintptr(_p1), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent bool, sacl *ACL, saclDefaulted bool) (err error) { - var _p0 uint32 - if saclPresent { - _p0 = 1 - } else { - _p0 = 0 - } - var _p1 uint32 - if saclDefaulted { - _p1 = 1 - } else { - _p1 = 0 - } - r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(sacl)), uintptr(_p1), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner *SID, ownerDefaulted bool) (err error) { - var _p0 uint32 - if ownerDefaulted { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(_p0)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group *SID, groupDefaulted bool) (err error) { - var _p0 uint32 - if groupDefaulted { - _p0 = 1 - } else { - _p0 = 0 - } - r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(_p0)) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) { - syscall.Syscall(procSetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) - return -} - -func convertStringSecurityDescriptorToSecurityDescriptor(str string, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { - var _p0 *uint16 - _p0, err = syscall.UTF16PtrFromString(str) - if err != nil { - return - } - return _convertStringSecurityDescriptorToSecurityDescriptor(_p0, revision, sd, size) -} - -func _convertStringSecurityDescriptorToSecurityDescriptor(str *uint16, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procConvertStringSecurityDescriptorToSecurityDescriptorW.Addr(), 4, uintptr(unsafe.Pointer(str)), uintptr(revision), uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(size)), 0, 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func convertSecurityDescriptorToStringSecurityDescriptor(sd *SECURITY_DESCRIPTOR, revision uint32, securityInformation SECURITY_INFORMATION, str **uint16, strLen *uint32) (err error) { - r1, _, e1 := syscall.Syscall6(procConvertSecurityDescriptorToStringSecurityDescriptorW.Addr(), 5, uintptr(unsafe.Pointer(sd)), uintptr(revision), uintptr(securityInformation), uintptr(unsafe.Pointer(str)), uintptr(unsafe.Pointer(strLen)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func makeAbsoluteSD(selfRelativeSD *SECURITY_DESCRIPTOR, absoluteSD *SECURITY_DESCRIPTOR, absoluteSDSize *uint32, dacl *ACL, daclSize *uint32, sacl *ACL, saclSize *uint32, owner *SID, ownerSize *uint32, group *SID, groupSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall12(procMakeAbsoluteSD.Addr(), 11, uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(absoluteSDSize)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(daclSize)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(saclSize)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(ownerSize)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(groupSize)), 0) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func makeSelfRelativeSD(absoluteSD *SECURITY_DESCRIPTOR, selfRelativeSD *SECURITY_DESCRIPTOR, selfRelativeSDSize *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procMakeSelfRelativeSD.Addr(), 3, uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(selfRelativeSDSize))) - if r1 == 0 { - if e1 != 0 { - err = errnoErr(e1) - } else { - err = syscall.EINVAL - } - } - return -} - -func setEntriesInAcl(countExplicitEntries uint32, explicitEntries *EXPLICIT_ACCESS, oldACL *ACL, newACL **ACL) (ret error) { - r0, _, _ := syscall.Syscall6(procSetEntriesInAclW.Addr(), 4, uintptr(countExplicitEntries), uintptr(unsafe.Pointer(explicitEntries)), uintptr(unsafe.Pointer(oldACL)), uintptr(unsafe.Pointer(newACL)), 0, 0) - if r0 != 0 { - ret = syscall.Errno(r0) + err = errnoErr(e1) } return } diff --git a/vendor/gopkg.in/yaml.v3/.travis.yml b/vendor/gopkg.in/yaml.v3/.travis.yml new file mode 100644 index 000000000..04d4dae09 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/.travis.yml @@ -0,0 +1,16 @@ +language: go + +go: + - "1.4.x" + - "1.5.x" + - "1.6.x" + - "1.7.x" + - "1.8.x" + - "1.9.x" + - "1.10.x" + - "1.11.x" + - "1.12.x" + - "1.13.x" + - "tip" + +go_import_path: gopkg.in/yaml.v3 diff --git a/vendor/gopkg.in/yaml.v3/LICENSE b/vendor/gopkg.in/yaml.v3/LICENSE new file mode 100644 index 000000000..2683e4bb1 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/LICENSE @@ -0,0 +1,50 @@ + +This project is covered by two different licenses: MIT and Apache. + +#### MIT License #### + +The following files were ported to Go from C files of libyaml, and thus +are still covered by their original MIT license, with the additional +copyright staring in 2011 when the project was ported over: + + apic.go emitterc.go parserc.go readerc.go scannerc.go + writerc.go yamlh.go yamlprivateh.go + +Copyright (c) 2006-2010 Kirill Simonov +Copyright (c) 2006-2011 Kirill Simonov + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +### Apache License ### + +All the remaining project files are covered by the Apache license: + +Copyright (c) 2011-2019 Canonical Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/vendor/gopkg.in/yaml.v3/NOTICE b/vendor/gopkg.in/yaml.v3/NOTICE new file mode 100644 index 000000000..866d74a7a --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/NOTICE @@ -0,0 +1,13 @@ +Copyright 2011-2016 Canonical Ltd. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/vendor/gopkg.in/yaml.v3/README.md b/vendor/gopkg.in/yaml.v3/README.md new file mode 100644 index 000000000..08eb1babd --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/README.md @@ -0,0 +1,150 @@ +# YAML support for the Go language + +Introduction +------------ + +The yaml package enables Go programs to comfortably encode and decode YAML +values. It was developed within [Canonical](https://www.canonical.com) as +part of the [juju](https://juju.ubuntu.com) project, and is based on a +pure Go port of the well-known [libyaml](http://pyyaml.org/wiki/LibYAML) +C library to parse and generate YAML data quickly and reliably. + +Compatibility +------------- + +The yaml package supports most of YAML 1.2, but preserves some behavior +from 1.1 for backwards compatibility. + +Specifically, as of v3 of the yaml package: + + - YAML 1.1 bools (_yes/no, on/off_) are supported as long as they are being + decoded into a typed bool value. Otherwise they behave as a string. Booleans + in YAML 1.2 are _true/false_ only. + - Octals encode and decode as _0777_ per YAML 1.1, rather than _0o777_ + as specified in YAML 1.2, because most parsers still use the old format. + Octals in the _0o777_ format are supported though, so new files work. + - Does not support base-60 floats. These are gone from YAML 1.2, and were + actually never supported by this package as it's clearly a poor choice. + +and offers backwards +compatibility with YAML 1.1 in some cases. +1.2, including support for +anchors, tags, map merging, etc. Multi-document unmarshalling is not yet +implemented, and base-60 floats from YAML 1.1 are purposefully not +supported since they're a poor design and are gone in YAML 1.2. + +Installation and usage +---------------------- + +The import path for the package is *gopkg.in/yaml.v3*. + +To install it, run: + + go get gopkg.in/yaml.v3 + +API documentation +----------------- + +If opened in a browser, the import path itself leads to the API documentation: + + - [https://gopkg.in/yaml.v3](https://gopkg.in/yaml.v3) + +API stability +------------- + +The package API for yaml v3 will remain stable as described in [gopkg.in](https://gopkg.in). + + +License +------- + +The yaml package is licensed under the MIT and Apache License 2.0 licenses. +Please see the LICENSE file for details. + + +Example +------- + +```Go +package main + +import ( + "fmt" + "log" + + "gopkg.in/yaml.v3" +) + +var data = ` +a: Easy! +b: + c: 2 + d: [3, 4] +` + +// Note: struct fields must be public in order for unmarshal to +// correctly populate the data. +type T struct { + A string + B struct { + RenamedC int `yaml:"c"` + D []int `yaml:",flow"` + } +} + +func main() { + t := T{} + + err := yaml.Unmarshal([]byte(data), &t) + if err != nil { + log.Fatalf("error: %v", err) + } + fmt.Printf("--- t:\n%v\n\n", t) + + d, err := yaml.Marshal(&t) + if err != nil { + log.Fatalf("error: %v", err) + } + fmt.Printf("--- t dump:\n%s\n\n", string(d)) + + m := make(map[interface{}]interface{}) + + err = yaml.Unmarshal([]byte(data), &m) + if err != nil { + log.Fatalf("error: %v", err) + } + fmt.Printf("--- m:\n%v\n\n", m) + + d, err = yaml.Marshal(&m) + if err != nil { + log.Fatalf("error: %v", err) + } + fmt.Printf("--- m dump:\n%s\n\n", string(d)) +} +``` + +This example will generate the following output: + +``` +--- t: +{Easy! {2 [3 4]}} + +--- t dump: +a: Easy! +b: + c: 2 + d: [3, 4] + + +--- m: +map[a:Easy! b:map[c:2 d:[3 4]]] + +--- m dump: +a: Easy! +b: + c: 2 + d: + - 3 + - 4 +``` + diff --git a/vendor/gopkg.in/yaml.v3/apic.go b/vendor/gopkg.in/yaml.v3/apic.go new file mode 100644 index 000000000..65846e674 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/apic.go @@ -0,0 +1,746 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "io" +) + +func yaml_insert_token(parser *yaml_parser_t, pos int, token *yaml_token_t) { + //fmt.Println("yaml_insert_token", "pos:", pos, "typ:", token.typ, "head:", parser.tokens_head, "len:", len(parser.tokens)) + + // Check if we can move the queue at the beginning of the buffer. + if parser.tokens_head > 0 && len(parser.tokens) == cap(parser.tokens) { + if parser.tokens_head != len(parser.tokens) { + copy(parser.tokens, parser.tokens[parser.tokens_head:]) + } + parser.tokens = parser.tokens[:len(parser.tokens)-parser.tokens_head] + parser.tokens_head = 0 + } + parser.tokens = append(parser.tokens, *token) + if pos < 0 { + return + } + copy(parser.tokens[parser.tokens_head+pos+1:], parser.tokens[parser.tokens_head+pos:]) + parser.tokens[parser.tokens_head+pos] = *token +} + +// Create a new parser object. +func yaml_parser_initialize(parser *yaml_parser_t) bool { + *parser = yaml_parser_t{ + raw_buffer: make([]byte, 0, input_raw_buffer_size), + buffer: make([]byte, 0, input_buffer_size), + } + return true +} + +// Destroy a parser object. +func yaml_parser_delete(parser *yaml_parser_t) { + *parser = yaml_parser_t{} +} + +// String read handler. +func yaml_string_read_handler(parser *yaml_parser_t, buffer []byte) (n int, err error) { + if parser.input_pos == len(parser.input) { + return 0, io.EOF + } + n = copy(buffer, parser.input[parser.input_pos:]) + parser.input_pos += n + return n, nil +} + +// Reader read handler. +func yaml_reader_read_handler(parser *yaml_parser_t, buffer []byte) (n int, err error) { + return parser.input_reader.Read(buffer) +} + +// Set a string input. +func yaml_parser_set_input_string(parser *yaml_parser_t, input []byte) { + if parser.read_handler != nil { + panic("must set the input source only once") + } + parser.read_handler = yaml_string_read_handler + parser.input = input + parser.input_pos = 0 +} + +// Set a file input. +func yaml_parser_set_input_reader(parser *yaml_parser_t, r io.Reader) { + if parser.read_handler != nil { + panic("must set the input source only once") + } + parser.read_handler = yaml_reader_read_handler + parser.input_reader = r +} + +// Set the source encoding. +func yaml_parser_set_encoding(parser *yaml_parser_t, encoding yaml_encoding_t) { + if parser.encoding != yaml_ANY_ENCODING { + panic("must set the encoding only once") + } + parser.encoding = encoding +} + +// Create a new emitter object. +func yaml_emitter_initialize(emitter *yaml_emitter_t) { + *emitter = yaml_emitter_t{ + buffer: make([]byte, output_buffer_size), + raw_buffer: make([]byte, 0, output_raw_buffer_size), + states: make([]yaml_emitter_state_t, 0, initial_stack_size), + events: make([]yaml_event_t, 0, initial_queue_size), + } +} + +// Destroy an emitter object. +func yaml_emitter_delete(emitter *yaml_emitter_t) { + *emitter = yaml_emitter_t{} +} + +// String write handler. +func yaml_string_write_handler(emitter *yaml_emitter_t, buffer []byte) error { + *emitter.output_buffer = append(*emitter.output_buffer, buffer...) + return nil +} + +// yaml_writer_write_handler uses emitter.output_writer to write the +// emitted text. +func yaml_writer_write_handler(emitter *yaml_emitter_t, buffer []byte) error { + _, err := emitter.output_writer.Write(buffer) + return err +} + +// Set a string output. +func yaml_emitter_set_output_string(emitter *yaml_emitter_t, output_buffer *[]byte) { + if emitter.write_handler != nil { + panic("must set the output target only once") + } + emitter.write_handler = yaml_string_write_handler + emitter.output_buffer = output_buffer +} + +// Set a file output. +func yaml_emitter_set_output_writer(emitter *yaml_emitter_t, w io.Writer) { + if emitter.write_handler != nil { + panic("must set the output target only once") + } + emitter.write_handler = yaml_writer_write_handler + emitter.output_writer = w +} + +// Set the output encoding. +func yaml_emitter_set_encoding(emitter *yaml_emitter_t, encoding yaml_encoding_t) { + if emitter.encoding != yaml_ANY_ENCODING { + panic("must set the output encoding only once") + } + emitter.encoding = encoding +} + +// Set the canonical output style. +func yaml_emitter_set_canonical(emitter *yaml_emitter_t, canonical bool) { + emitter.canonical = canonical +} + +// Set the indentation increment. +func yaml_emitter_set_indent(emitter *yaml_emitter_t, indent int) { + if indent < 2 || indent > 9 { + indent = 2 + } + emitter.best_indent = indent +} + +// Set the preferred line width. +func yaml_emitter_set_width(emitter *yaml_emitter_t, width int) { + if width < 0 { + width = -1 + } + emitter.best_width = width +} + +// Set if unescaped non-ASCII characters are allowed. +func yaml_emitter_set_unicode(emitter *yaml_emitter_t, unicode bool) { + emitter.unicode = unicode +} + +// Set the preferred line break character. +func yaml_emitter_set_break(emitter *yaml_emitter_t, line_break yaml_break_t) { + emitter.line_break = line_break +} + +///* +// * Destroy a token object. +// */ +// +//YAML_DECLARE(void) +//yaml_token_delete(yaml_token_t *token) +//{ +// assert(token); // Non-NULL token object expected. +// +// switch (token.type) +// { +// case YAML_TAG_DIRECTIVE_TOKEN: +// yaml_free(token.data.tag_directive.handle); +// yaml_free(token.data.tag_directive.prefix); +// break; +// +// case YAML_ALIAS_TOKEN: +// yaml_free(token.data.alias.value); +// break; +// +// case YAML_ANCHOR_TOKEN: +// yaml_free(token.data.anchor.value); +// break; +// +// case YAML_TAG_TOKEN: +// yaml_free(token.data.tag.handle); +// yaml_free(token.data.tag.suffix); +// break; +// +// case YAML_SCALAR_TOKEN: +// yaml_free(token.data.scalar.value); +// break; +// +// default: +// break; +// } +// +// memset(token, 0, sizeof(yaml_token_t)); +//} +// +///* +// * Check if a string is a valid UTF-8 sequence. +// * +// * Check 'reader.c' for more details on UTF-8 encoding. +// */ +// +//static int +//yaml_check_utf8(yaml_char_t *start, size_t length) +//{ +// yaml_char_t *end = start+length; +// yaml_char_t *pointer = start; +// +// while (pointer < end) { +// unsigned char octet; +// unsigned int width; +// unsigned int value; +// size_t k; +// +// octet = pointer[0]; +// width = (octet & 0x80) == 0x00 ? 1 : +// (octet & 0xE0) == 0xC0 ? 2 : +// (octet & 0xF0) == 0xE0 ? 3 : +// (octet & 0xF8) == 0xF0 ? 4 : 0; +// value = (octet & 0x80) == 0x00 ? octet & 0x7F : +// (octet & 0xE0) == 0xC0 ? octet & 0x1F : +// (octet & 0xF0) == 0xE0 ? octet & 0x0F : +// (octet & 0xF8) == 0xF0 ? octet & 0x07 : 0; +// if (!width) return 0; +// if (pointer+width > end) return 0; +// for (k = 1; k < width; k ++) { +// octet = pointer[k]; +// if ((octet & 0xC0) != 0x80) return 0; +// value = (value << 6) + (octet & 0x3F); +// } +// if (!((width == 1) || +// (width == 2 && value >= 0x80) || +// (width == 3 && value >= 0x800) || +// (width == 4 && value >= 0x10000))) return 0; +// +// pointer += width; +// } +// +// return 1; +//} +// + +// Create STREAM-START. +func yaml_stream_start_event_initialize(event *yaml_event_t, encoding yaml_encoding_t) { + *event = yaml_event_t{ + typ: yaml_STREAM_START_EVENT, + encoding: encoding, + } +} + +// Create STREAM-END. +func yaml_stream_end_event_initialize(event *yaml_event_t) { + *event = yaml_event_t{ + typ: yaml_STREAM_END_EVENT, + } +} + +// Create DOCUMENT-START. +func yaml_document_start_event_initialize( + event *yaml_event_t, + version_directive *yaml_version_directive_t, + tag_directives []yaml_tag_directive_t, + implicit bool, +) { + *event = yaml_event_t{ + typ: yaml_DOCUMENT_START_EVENT, + version_directive: version_directive, + tag_directives: tag_directives, + implicit: implicit, + } +} + +// Create DOCUMENT-END. +func yaml_document_end_event_initialize(event *yaml_event_t, implicit bool) { + *event = yaml_event_t{ + typ: yaml_DOCUMENT_END_EVENT, + implicit: implicit, + } +} + +// Create ALIAS. +func yaml_alias_event_initialize(event *yaml_event_t, anchor []byte) bool { + *event = yaml_event_t{ + typ: yaml_ALIAS_EVENT, + anchor: anchor, + } + return true +} + +// Create SCALAR. +func yaml_scalar_event_initialize(event *yaml_event_t, anchor, tag, value []byte, plain_implicit, quoted_implicit bool, style yaml_scalar_style_t) bool { + *event = yaml_event_t{ + typ: yaml_SCALAR_EVENT, + anchor: anchor, + tag: tag, + value: value, + implicit: plain_implicit, + quoted_implicit: quoted_implicit, + style: yaml_style_t(style), + } + return true +} + +// Create SEQUENCE-START. +func yaml_sequence_start_event_initialize(event *yaml_event_t, anchor, tag []byte, implicit bool, style yaml_sequence_style_t) bool { + *event = yaml_event_t{ + typ: yaml_SEQUENCE_START_EVENT, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(style), + } + return true +} + +// Create SEQUENCE-END. +func yaml_sequence_end_event_initialize(event *yaml_event_t) bool { + *event = yaml_event_t{ + typ: yaml_SEQUENCE_END_EVENT, + } + return true +} + +// Create MAPPING-START. +func yaml_mapping_start_event_initialize(event *yaml_event_t, anchor, tag []byte, implicit bool, style yaml_mapping_style_t) { + *event = yaml_event_t{ + typ: yaml_MAPPING_START_EVENT, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(style), + } +} + +// Create MAPPING-END. +func yaml_mapping_end_event_initialize(event *yaml_event_t) { + *event = yaml_event_t{ + typ: yaml_MAPPING_END_EVENT, + } +} + +// Destroy an event object. +func yaml_event_delete(event *yaml_event_t) { + *event = yaml_event_t{} +} + +///* +// * Create a document object. +// */ +// +//YAML_DECLARE(int) +//yaml_document_initialize(document *yaml_document_t, +// version_directive *yaml_version_directive_t, +// tag_directives_start *yaml_tag_directive_t, +// tag_directives_end *yaml_tag_directive_t, +// start_implicit int, end_implicit int) +//{ +// struct { +// error yaml_error_type_t +// } context +// struct { +// start *yaml_node_t +// end *yaml_node_t +// top *yaml_node_t +// } nodes = { NULL, NULL, NULL } +// version_directive_copy *yaml_version_directive_t = NULL +// struct { +// start *yaml_tag_directive_t +// end *yaml_tag_directive_t +// top *yaml_tag_directive_t +// } tag_directives_copy = { NULL, NULL, NULL } +// value yaml_tag_directive_t = { NULL, NULL } +// mark yaml_mark_t = { 0, 0, 0 } +// +// assert(document) // Non-NULL document object is expected. +// assert((tag_directives_start && tag_directives_end) || +// (tag_directives_start == tag_directives_end)) +// // Valid tag directives are expected. +// +// if (!STACK_INIT(&context, nodes, INITIAL_STACK_SIZE)) goto error +// +// if (version_directive) { +// version_directive_copy = yaml_malloc(sizeof(yaml_version_directive_t)) +// if (!version_directive_copy) goto error +// version_directive_copy.major = version_directive.major +// version_directive_copy.minor = version_directive.minor +// } +// +// if (tag_directives_start != tag_directives_end) { +// tag_directive *yaml_tag_directive_t +// if (!STACK_INIT(&context, tag_directives_copy, INITIAL_STACK_SIZE)) +// goto error +// for (tag_directive = tag_directives_start +// tag_directive != tag_directives_end; tag_directive ++) { +// assert(tag_directive.handle) +// assert(tag_directive.prefix) +// if (!yaml_check_utf8(tag_directive.handle, +// strlen((char *)tag_directive.handle))) +// goto error +// if (!yaml_check_utf8(tag_directive.prefix, +// strlen((char *)tag_directive.prefix))) +// goto error +// value.handle = yaml_strdup(tag_directive.handle) +// value.prefix = yaml_strdup(tag_directive.prefix) +// if (!value.handle || !value.prefix) goto error +// if (!PUSH(&context, tag_directives_copy, value)) +// goto error +// value.handle = NULL +// value.prefix = NULL +// } +// } +// +// DOCUMENT_INIT(*document, nodes.start, nodes.end, version_directive_copy, +// tag_directives_copy.start, tag_directives_copy.top, +// start_implicit, end_implicit, mark, mark) +// +// return 1 +// +//error: +// STACK_DEL(&context, nodes) +// yaml_free(version_directive_copy) +// while (!STACK_EMPTY(&context, tag_directives_copy)) { +// value yaml_tag_directive_t = POP(&context, tag_directives_copy) +// yaml_free(value.handle) +// yaml_free(value.prefix) +// } +// STACK_DEL(&context, tag_directives_copy) +// yaml_free(value.handle) +// yaml_free(value.prefix) +// +// return 0 +//} +// +///* +// * Destroy a document object. +// */ +// +//YAML_DECLARE(void) +//yaml_document_delete(document *yaml_document_t) +//{ +// struct { +// error yaml_error_type_t +// } context +// tag_directive *yaml_tag_directive_t +// +// context.error = YAML_NO_ERROR // Eliminate a compiler warning. +// +// assert(document) // Non-NULL document object is expected. +// +// while (!STACK_EMPTY(&context, document.nodes)) { +// node yaml_node_t = POP(&context, document.nodes) +// yaml_free(node.tag) +// switch (node.type) { +// case YAML_SCALAR_NODE: +// yaml_free(node.data.scalar.value) +// break +// case YAML_SEQUENCE_NODE: +// STACK_DEL(&context, node.data.sequence.items) +// break +// case YAML_MAPPING_NODE: +// STACK_DEL(&context, node.data.mapping.pairs) +// break +// default: +// assert(0) // Should not happen. +// } +// } +// STACK_DEL(&context, document.nodes) +// +// yaml_free(document.version_directive) +// for (tag_directive = document.tag_directives.start +// tag_directive != document.tag_directives.end +// tag_directive++) { +// yaml_free(tag_directive.handle) +// yaml_free(tag_directive.prefix) +// } +// yaml_free(document.tag_directives.start) +// +// memset(document, 0, sizeof(yaml_document_t)) +//} +// +///** +// * Get a document node. +// */ +// +//YAML_DECLARE(yaml_node_t *) +//yaml_document_get_node(document *yaml_document_t, index int) +//{ +// assert(document) // Non-NULL document object is expected. +// +// if (index > 0 && document.nodes.start + index <= document.nodes.top) { +// return document.nodes.start + index - 1 +// } +// return NULL +//} +// +///** +// * Get the root object. +// */ +// +//YAML_DECLARE(yaml_node_t *) +//yaml_document_get_root_node(document *yaml_document_t) +//{ +// assert(document) // Non-NULL document object is expected. +// +// if (document.nodes.top != document.nodes.start) { +// return document.nodes.start +// } +// return NULL +//} +// +///* +// * Add a scalar node to a document. +// */ +// +//YAML_DECLARE(int) +//yaml_document_add_scalar(document *yaml_document_t, +// tag *yaml_char_t, value *yaml_char_t, length int, +// style yaml_scalar_style_t) +//{ +// struct { +// error yaml_error_type_t +// } context +// mark yaml_mark_t = { 0, 0, 0 } +// tag_copy *yaml_char_t = NULL +// value_copy *yaml_char_t = NULL +// node yaml_node_t +// +// assert(document) // Non-NULL document object is expected. +// assert(value) // Non-NULL value is expected. +// +// if (!tag) { +// tag = (yaml_char_t *)YAML_DEFAULT_SCALAR_TAG +// } +// +// if (!yaml_check_utf8(tag, strlen((char *)tag))) goto error +// tag_copy = yaml_strdup(tag) +// if (!tag_copy) goto error +// +// if (length < 0) { +// length = strlen((char *)value) +// } +// +// if (!yaml_check_utf8(value, length)) goto error +// value_copy = yaml_malloc(length+1) +// if (!value_copy) goto error +// memcpy(value_copy, value, length) +// value_copy[length] = '\0' +// +// SCALAR_NODE_INIT(node, tag_copy, value_copy, length, style, mark, mark) +// if (!PUSH(&context, document.nodes, node)) goto error +// +// return document.nodes.top - document.nodes.start +// +//error: +// yaml_free(tag_copy) +// yaml_free(value_copy) +// +// return 0 +//} +// +///* +// * Add a sequence node to a document. +// */ +// +//YAML_DECLARE(int) +//yaml_document_add_sequence(document *yaml_document_t, +// tag *yaml_char_t, style yaml_sequence_style_t) +//{ +// struct { +// error yaml_error_type_t +// } context +// mark yaml_mark_t = { 0, 0, 0 } +// tag_copy *yaml_char_t = NULL +// struct { +// start *yaml_node_item_t +// end *yaml_node_item_t +// top *yaml_node_item_t +// } items = { NULL, NULL, NULL } +// node yaml_node_t +// +// assert(document) // Non-NULL document object is expected. +// +// if (!tag) { +// tag = (yaml_char_t *)YAML_DEFAULT_SEQUENCE_TAG +// } +// +// if (!yaml_check_utf8(tag, strlen((char *)tag))) goto error +// tag_copy = yaml_strdup(tag) +// if (!tag_copy) goto error +// +// if (!STACK_INIT(&context, items, INITIAL_STACK_SIZE)) goto error +// +// SEQUENCE_NODE_INIT(node, tag_copy, items.start, items.end, +// style, mark, mark) +// if (!PUSH(&context, document.nodes, node)) goto error +// +// return document.nodes.top - document.nodes.start +// +//error: +// STACK_DEL(&context, items) +// yaml_free(tag_copy) +// +// return 0 +//} +// +///* +// * Add a mapping node to a document. +// */ +// +//YAML_DECLARE(int) +//yaml_document_add_mapping(document *yaml_document_t, +// tag *yaml_char_t, style yaml_mapping_style_t) +//{ +// struct { +// error yaml_error_type_t +// } context +// mark yaml_mark_t = { 0, 0, 0 } +// tag_copy *yaml_char_t = NULL +// struct { +// start *yaml_node_pair_t +// end *yaml_node_pair_t +// top *yaml_node_pair_t +// } pairs = { NULL, NULL, NULL } +// node yaml_node_t +// +// assert(document) // Non-NULL document object is expected. +// +// if (!tag) { +// tag = (yaml_char_t *)YAML_DEFAULT_MAPPING_TAG +// } +// +// if (!yaml_check_utf8(tag, strlen((char *)tag))) goto error +// tag_copy = yaml_strdup(tag) +// if (!tag_copy) goto error +// +// if (!STACK_INIT(&context, pairs, INITIAL_STACK_SIZE)) goto error +// +// MAPPING_NODE_INIT(node, tag_copy, pairs.start, pairs.end, +// style, mark, mark) +// if (!PUSH(&context, document.nodes, node)) goto error +// +// return document.nodes.top - document.nodes.start +// +//error: +// STACK_DEL(&context, pairs) +// yaml_free(tag_copy) +// +// return 0 +//} +// +///* +// * Append an item to a sequence node. +// */ +// +//YAML_DECLARE(int) +//yaml_document_append_sequence_item(document *yaml_document_t, +// sequence int, item int) +//{ +// struct { +// error yaml_error_type_t +// } context +// +// assert(document) // Non-NULL document is required. +// assert(sequence > 0 +// && document.nodes.start + sequence <= document.nodes.top) +// // Valid sequence id is required. +// assert(document.nodes.start[sequence-1].type == YAML_SEQUENCE_NODE) +// // A sequence node is required. +// assert(item > 0 && document.nodes.start + item <= document.nodes.top) +// // Valid item id is required. +// +// if (!PUSH(&context, +// document.nodes.start[sequence-1].data.sequence.items, item)) +// return 0 +// +// return 1 +//} +// +///* +// * Append a pair of a key and a value to a mapping node. +// */ +// +//YAML_DECLARE(int) +//yaml_document_append_mapping_pair(document *yaml_document_t, +// mapping int, key int, value int) +//{ +// struct { +// error yaml_error_type_t +// } context +// +// pair yaml_node_pair_t +// +// assert(document) // Non-NULL document is required. +// assert(mapping > 0 +// && document.nodes.start + mapping <= document.nodes.top) +// // Valid mapping id is required. +// assert(document.nodes.start[mapping-1].type == YAML_MAPPING_NODE) +// // A mapping node is required. +// assert(key > 0 && document.nodes.start + key <= document.nodes.top) +// // Valid key id is required. +// assert(value > 0 && document.nodes.start + value <= document.nodes.top) +// // Valid value id is required. +// +// pair.key = key +// pair.value = value +// +// if (!PUSH(&context, +// document.nodes.start[mapping-1].data.mapping.pairs, pair)) +// return 0 +// +// return 1 +//} +// +// diff --git a/vendor/gopkg.in/yaml.v3/decode.go b/vendor/gopkg.in/yaml.v3/decode.go new file mode 100644 index 000000000..be63169b7 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/decode.go @@ -0,0 +1,931 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package yaml + +import ( + "encoding" + "encoding/base64" + "fmt" + "io" + "math" + "reflect" + "strconv" + "time" +) + +// ---------------------------------------------------------------------------- +// Parser, produces a node tree out of a libyaml event stream. + +type parser struct { + parser yaml_parser_t + event yaml_event_t + doc *Node + anchors map[string]*Node + doneInit bool +} + +func newParser(b []byte) *parser { + p := parser{} + if !yaml_parser_initialize(&p.parser) { + panic("failed to initialize YAML emitter") + } + if len(b) == 0 { + b = []byte{'\n'} + } + yaml_parser_set_input_string(&p.parser, b) + return &p +} + +func newParserFromReader(r io.Reader) *parser { + p := parser{} + if !yaml_parser_initialize(&p.parser) { + panic("failed to initialize YAML emitter") + } + yaml_parser_set_input_reader(&p.parser, r) + return &p +} + +func (p *parser) init() { + if p.doneInit { + return + } + p.anchors = make(map[string]*Node) + p.expect(yaml_STREAM_START_EVENT) + p.doneInit = true +} + +func (p *parser) destroy() { + if p.event.typ != yaml_NO_EVENT { + yaml_event_delete(&p.event) + } + yaml_parser_delete(&p.parser) +} + +// expect consumes an event from the event stream and +// checks that it's of the expected type. +func (p *parser) expect(e yaml_event_type_t) { + if p.event.typ == yaml_NO_EVENT { + if !yaml_parser_parse(&p.parser, &p.event) { + p.fail() + } + } + if p.event.typ == yaml_STREAM_END_EVENT { + failf("attempted to go past the end of stream; corrupted value?") + } + if p.event.typ != e { + p.parser.problem = fmt.Sprintf("expected %s event but got %s", e, p.event.typ) + p.fail() + } + yaml_event_delete(&p.event) + p.event.typ = yaml_NO_EVENT +} + +// peek peeks at the next event in the event stream, +// puts the results into p.event and returns the event type. +func (p *parser) peek() yaml_event_type_t { + if p.event.typ != yaml_NO_EVENT { + return p.event.typ + } + if !yaml_parser_parse(&p.parser, &p.event) { + p.fail() + } + return p.event.typ +} + +func (p *parser) fail() { + var where string + var line int + if p.parser.problem_mark.line != 0 { + line = p.parser.problem_mark.line + // Scanner errors don't iterate line before returning error + if p.parser.error == yaml_SCANNER_ERROR { + line++ + } + } else if p.parser.context_mark.line != 0 { + line = p.parser.context_mark.line + } + if line != 0 { + where = "line " + strconv.Itoa(line) + ": " + } + var msg string + if len(p.parser.problem) > 0 { + msg = p.parser.problem + } else { + msg = "unknown problem parsing YAML content" + } + failf("%s%s", where, msg) +} + +func (p *parser) anchor(n *Node, anchor []byte) { + if anchor != nil { + n.Anchor = string(anchor) + p.anchors[n.Anchor] = n + } +} + +func (p *parser) parse() *Node { + p.init() + switch p.peek() { + case yaml_SCALAR_EVENT: + return p.scalar() + case yaml_ALIAS_EVENT: + return p.alias() + case yaml_MAPPING_START_EVENT: + return p.mapping() + case yaml_SEQUENCE_START_EVENT: + return p.sequence() + case yaml_DOCUMENT_START_EVENT: + return p.document() + case yaml_STREAM_END_EVENT: + // Happens when attempting to decode an empty buffer. + return nil + case yaml_TAIL_COMMENT_EVENT: + panic("internal error: unexpected tail comment event (please report)") + default: + panic("internal error: attempted to parse unknown event (please report): " + p.event.typ.String()) + } +} + +func (p *parser) node(kind Kind, defaultTag, tag, value string) *Node { + var style Style + if tag != "" && tag != "!" { + tag = shortTag(tag) + style = TaggedStyle + } else if defaultTag != "" { + tag = defaultTag + } else if kind == ScalarNode { + tag, _ = resolve("", value) + } + return &Node{ + Kind: kind, + Tag: tag, + Value: value, + Style: style, + Line: p.event.start_mark.line + 1, + Column: p.event.start_mark.column + 1, + HeadComment: string(p.event.head_comment), + LineComment: string(p.event.line_comment), + FootComment: string(p.event.foot_comment), + } +} + +func (p *parser) parseChild(parent *Node) *Node { + child := p.parse() + parent.Content = append(parent.Content, child) + return child +} + +func (p *parser) document() *Node { + n := p.node(DocumentNode, "", "", "") + p.doc = n + p.expect(yaml_DOCUMENT_START_EVENT) + p.parseChild(n) + if p.peek() == yaml_DOCUMENT_END_EVENT { + n.FootComment = string(p.event.foot_comment) + } + p.expect(yaml_DOCUMENT_END_EVENT) + return n +} + +func (p *parser) alias() *Node { + n := p.node(AliasNode, "", "", string(p.event.anchor)) + n.Alias = p.anchors[n.Value] + if n.Alias == nil { + failf("unknown anchor '%s' referenced", n.Value) + } + p.expect(yaml_ALIAS_EVENT) + return n +} + +func (p *parser) scalar() *Node { + var parsedStyle = p.event.scalar_style() + var nodeStyle Style + switch { + case parsedStyle&yaml_DOUBLE_QUOTED_SCALAR_STYLE != 0: + nodeStyle = DoubleQuotedStyle + case parsedStyle&yaml_SINGLE_QUOTED_SCALAR_STYLE != 0: + nodeStyle = SingleQuotedStyle + case parsedStyle&yaml_LITERAL_SCALAR_STYLE != 0: + nodeStyle = LiteralStyle + case parsedStyle&yaml_FOLDED_SCALAR_STYLE != 0: + nodeStyle = FoldedStyle + } + var nodeValue = string(p.event.value) + var nodeTag = string(p.event.tag) + var defaultTag string + if nodeStyle == 0 { + if nodeValue == "<<" { + defaultTag = mergeTag + } + } else { + defaultTag = strTag + } + n := p.node(ScalarNode, defaultTag, nodeTag, nodeValue) + n.Style |= nodeStyle + p.anchor(n, p.event.anchor) + p.expect(yaml_SCALAR_EVENT) + return n +} + +func (p *parser) sequence() *Node { + n := p.node(SequenceNode, seqTag, string(p.event.tag), "") + if p.event.sequence_style()&yaml_FLOW_SEQUENCE_STYLE != 0 { + n.Style |= FlowStyle + } + p.anchor(n, p.event.anchor) + p.expect(yaml_SEQUENCE_START_EVENT) + for p.peek() != yaml_SEQUENCE_END_EVENT { + p.parseChild(n) + } + n.LineComment = string(p.event.line_comment) + n.FootComment = string(p.event.foot_comment) + p.expect(yaml_SEQUENCE_END_EVENT) + return n +} + +func (p *parser) mapping() *Node { + n := p.node(MappingNode, mapTag, string(p.event.tag), "") + block := true + if p.event.mapping_style()&yaml_FLOW_MAPPING_STYLE != 0 { + block = false + n.Style |= FlowStyle + } + p.anchor(n, p.event.anchor) + p.expect(yaml_MAPPING_START_EVENT) + for p.peek() != yaml_MAPPING_END_EVENT { + k := p.parseChild(n) + if block && k.FootComment != "" { + // Must be a foot comment for the prior value when being dedented. + if len(n.Content) > 2 { + n.Content[len(n.Content)-3].FootComment = k.FootComment + k.FootComment = "" + } + } + v := p.parseChild(n) + if k.FootComment == "" && v.FootComment != "" { + k.FootComment = v.FootComment + v.FootComment = "" + } + if p.peek() == yaml_TAIL_COMMENT_EVENT { + if k.FootComment == "" { + k.FootComment = string(p.event.foot_comment) + } + p.expect(yaml_TAIL_COMMENT_EVENT) + } + } + n.LineComment = string(p.event.line_comment) + n.FootComment = string(p.event.foot_comment) + if n.Style&FlowStyle == 0 && n.FootComment != "" && len(n.Content) > 1 { + n.Content[len(n.Content)-2].FootComment = n.FootComment + n.FootComment = "" + } + p.expect(yaml_MAPPING_END_EVENT) + return n +} + +// ---------------------------------------------------------------------------- +// Decoder, unmarshals a node into a provided value. + +type decoder struct { + doc *Node + aliases map[*Node]bool + terrors []string + + stringMapType reflect.Type + generalMapType reflect.Type + + knownFields bool + uniqueKeys bool + decodeCount int + aliasCount int + aliasDepth int +} + +var ( + nodeType = reflect.TypeOf(Node{}) + durationType = reflect.TypeOf(time.Duration(0)) + stringMapType = reflect.TypeOf(map[string]interface{}{}) + generalMapType = reflect.TypeOf(map[interface{}]interface{}{}) + ifaceType = generalMapType.Elem() + timeType = reflect.TypeOf(time.Time{}) + ptrTimeType = reflect.TypeOf(&time.Time{}) +) + +func newDecoder() *decoder { + d := &decoder{ + stringMapType: stringMapType, + generalMapType: generalMapType, + uniqueKeys: true, + } + d.aliases = make(map[*Node]bool) + return d +} + +func (d *decoder) terror(n *Node, tag string, out reflect.Value) { + if n.Tag != "" { + tag = n.Tag + } + value := n.Value + if tag != seqTag && tag != mapTag { + if len(value) > 10 { + value = " `" + value[:7] + "...`" + } else { + value = " `" + value + "`" + } + } + d.terrors = append(d.terrors, fmt.Sprintf("line %d: cannot unmarshal %s%s into %s", n.Line, shortTag(tag), value, out.Type())) +} + +func (d *decoder) callUnmarshaler(n *Node, u Unmarshaler) (good bool) { + err := u.UnmarshalYAML(n) + if e, ok := err.(*TypeError); ok { + d.terrors = append(d.terrors, e.Errors...) + return false + } + if err != nil { + fail(err) + } + return true +} + +func (d *decoder) callObsoleteUnmarshaler(n *Node, u obsoleteUnmarshaler) (good bool) { + terrlen := len(d.terrors) + err := u.UnmarshalYAML(func(v interface{}) (err error) { + defer handleErr(&err) + d.unmarshal(n, reflect.ValueOf(v)) + if len(d.terrors) > terrlen { + issues := d.terrors[terrlen:] + d.terrors = d.terrors[:terrlen] + return &TypeError{issues} + } + return nil + }) + if e, ok := err.(*TypeError); ok { + d.terrors = append(d.terrors, e.Errors...) + return false + } + if err != nil { + fail(err) + } + return true +} + +// d.prepare initializes and dereferences pointers and calls UnmarshalYAML +// if a value is found to implement it. +// It returns the initialized and dereferenced out value, whether +// unmarshalling was already done by UnmarshalYAML, and if so whether +// its types unmarshalled appropriately. +// +// If n holds a null value, prepare returns before doing anything. +func (d *decoder) prepare(n *Node, out reflect.Value) (newout reflect.Value, unmarshaled, good bool) { + if n.ShortTag() == nullTag { + return out, false, false + } + again := true + for again { + again = false + if out.Kind() == reflect.Ptr { + if out.IsNil() { + out.Set(reflect.New(out.Type().Elem())) + } + out = out.Elem() + again = true + } + if out.CanAddr() { + outi := out.Addr().Interface() + if u, ok := outi.(Unmarshaler); ok { + good = d.callUnmarshaler(n, u) + return out, true, good + } + if u, ok := outi.(obsoleteUnmarshaler); ok { + good = d.callObsoleteUnmarshaler(n, u) + return out, true, good + } + } + } + return out, false, false +} + +func (d *decoder) fieldByIndex(n *Node, v reflect.Value, index []int) (field reflect.Value) { + if n.ShortTag() == nullTag { + return reflect.Value{} + } + for _, num := range index { + for { + if v.Kind() == reflect.Ptr { + if v.IsNil() { + v.Set(reflect.New(v.Type().Elem())) + } + v = v.Elem() + continue + } + break + } + v = v.Field(num) + } + return v +} + +const ( + // 400,000 decode operations is ~500kb of dense object declarations, or + // ~5kb of dense object declarations with 10000% alias expansion + alias_ratio_range_low = 400000 + + // 4,000,000 decode operations is ~5MB of dense object declarations, or + // ~4.5MB of dense object declarations with 10% alias expansion + alias_ratio_range_high = 4000000 + + // alias_ratio_range is the range over which we scale allowed alias ratios + alias_ratio_range = float64(alias_ratio_range_high - alias_ratio_range_low) +) + +func allowedAliasRatio(decodeCount int) float64 { + switch { + case decodeCount <= alias_ratio_range_low: + // allow 99% to come from alias expansion for small-to-medium documents + return 0.99 + case decodeCount >= alias_ratio_range_high: + // allow 10% to come from alias expansion for very large documents + return 0.10 + default: + // scale smoothly from 99% down to 10% over the range. + // this maps to 396,000 - 400,000 allowed alias-driven decodes over the range. + // 400,000 decode operations is ~100MB of allocations in worst-case scenarios (single-item maps). + return 0.99 - 0.89*(float64(decodeCount-alias_ratio_range_low)/alias_ratio_range) + } +} + +func (d *decoder) unmarshal(n *Node, out reflect.Value) (good bool) { + d.decodeCount++ + if d.aliasDepth > 0 { + d.aliasCount++ + } + if d.aliasCount > 100 && d.decodeCount > 1000 && float64(d.aliasCount)/float64(d.decodeCount) > allowedAliasRatio(d.decodeCount) { + failf("document contains excessive aliasing") + } + if out.Type() == nodeType { + out.Set(reflect.ValueOf(n).Elem()) + return true + } + switch n.Kind { + case DocumentNode: + return d.document(n, out) + case AliasNode: + return d.alias(n, out) + } + out, unmarshaled, good := d.prepare(n, out) + if unmarshaled { + return good + } + switch n.Kind { + case ScalarNode: + good = d.scalar(n, out) + case MappingNode: + good = d.mapping(n, out) + case SequenceNode: + good = d.sequence(n, out) + default: + panic("internal error: unknown node kind: " + strconv.Itoa(int(n.Kind))) + } + return good +} + +func (d *decoder) document(n *Node, out reflect.Value) (good bool) { + if len(n.Content) == 1 { + d.doc = n + d.unmarshal(n.Content[0], out) + return true + } + return false +} + +func (d *decoder) alias(n *Node, out reflect.Value) (good bool) { + if d.aliases[n] { + // TODO this could actually be allowed in some circumstances. + failf("anchor '%s' value contains itself", n.Value) + } + d.aliases[n] = true + d.aliasDepth++ + good = d.unmarshal(n.Alias, out) + d.aliasDepth-- + delete(d.aliases, n) + return good +} + +var zeroValue reflect.Value + +func resetMap(out reflect.Value) { + for _, k := range out.MapKeys() { + out.SetMapIndex(k, zeroValue) + } +} + +func (d *decoder) scalar(n *Node, out reflect.Value) bool { + var tag string + var resolved interface{} + if n.indicatedString() { + tag = strTag + resolved = n.Value + } else { + tag, resolved = resolve(n.Tag, n.Value) + if tag == binaryTag { + data, err := base64.StdEncoding.DecodeString(resolved.(string)) + if err != nil { + failf("!!binary value contains invalid base64 data") + } + resolved = string(data) + } + } + if resolved == nil { + if out.CanAddr() { + switch out.Kind() { + case reflect.Interface, reflect.Ptr, reflect.Map, reflect.Slice: + out.Set(reflect.Zero(out.Type())) + return true + } + } + return false + } + if resolvedv := reflect.ValueOf(resolved); out.Type() == resolvedv.Type() { + // We've resolved to exactly the type we want, so use that. + out.Set(resolvedv) + return true + } + // Perhaps we can use the value as a TextUnmarshaler to + // set its value. + if out.CanAddr() { + u, ok := out.Addr().Interface().(encoding.TextUnmarshaler) + if ok { + var text []byte + if tag == binaryTag { + text = []byte(resolved.(string)) + } else { + // We let any value be unmarshaled into TextUnmarshaler. + // That might be more lax than we'd like, but the + // TextUnmarshaler itself should bowl out any dubious values. + text = []byte(n.Value) + } + err := u.UnmarshalText(text) + if err != nil { + fail(err) + } + return true + } + } + switch out.Kind() { + case reflect.String: + if tag == binaryTag { + out.SetString(resolved.(string)) + return true + } + out.SetString(n.Value) + return true + case reflect.Interface: + out.Set(reflect.ValueOf(resolved)) + return true + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + // This used to work in v2, but it's very unfriendly. + isDuration := out.Type() == durationType + + switch resolved := resolved.(type) { + case int: + if !isDuration && !out.OverflowInt(int64(resolved)) { + out.SetInt(int64(resolved)) + return true + } + case int64: + if !isDuration && !out.OverflowInt(resolved) { + out.SetInt(resolved) + return true + } + case uint64: + if !isDuration && resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) { + out.SetInt(int64(resolved)) + return true + } + case float64: + if !isDuration && resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) { + out.SetInt(int64(resolved)) + return true + } + case string: + if out.Type() == durationType { + d, err := time.ParseDuration(resolved) + if err == nil { + out.SetInt(int64(d)) + return true + } + } + } + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: + switch resolved := resolved.(type) { + case int: + if resolved >= 0 && !out.OverflowUint(uint64(resolved)) { + out.SetUint(uint64(resolved)) + return true + } + case int64: + if resolved >= 0 && !out.OverflowUint(uint64(resolved)) { + out.SetUint(uint64(resolved)) + return true + } + case uint64: + if !out.OverflowUint(uint64(resolved)) { + out.SetUint(uint64(resolved)) + return true + } + case float64: + if resolved <= math.MaxUint64 && !out.OverflowUint(uint64(resolved)) { + out.SetUint(uint64(resolved)) + return true + } + } + case reflect.Bool: + switch resolved := resolved.(type) { + case bool: + out.SetBool(resolved) + return true + case string: + // This offers some compatibility with the 1.1 spec (https://yaml.org/type/bool.html). + // It only works if explicitly attempting to unmarshal into a typed bool value. + switch resolved { + case "y", "Y", "yes", "Yes", "YES", "on", "On", "ON": + out.SetBool(true) + return true + case "n", "N", "no", "No", "NO", "off", "Off", "OFF": + out.SetBool(false) + return true + } + } + case reflect.Float32, reflect.Float64: + switch resolved := resolved.(type) { + case int: + out.SetFloat(float64(resolved)) + return true + case int64: + out.SetFloat(float64(resolved)) + return true + case uint64: + out.SetFloat(float64(resolved)) + return true + case float64: + out.SetFloat(resolved) + return true + } + case reflect.Struct: + if resolvedv := reflect.ValueOf(resolved); out.Type() == resolvedv.Type() { + out.Set(resolvedv) + return true + } + case reflect.Ptr: + panic("yaml internal error: please report the issue") + } + d.terror(n, tag, out) + return false +} + +func settableValueOf(i interface{}) reflect.Value { + v := reflect.ValueOf(i) + sv := reflect.New(v.Type()).Elem() + sv.Set(v) + return sv +} + +func (d *decoder) sequence(n *Node, out reflect.Value) (good bool) { + l := len(n.Content) + + var iface reflect.Value + switch out.Kind() { + case reflect.Slice: + out.Set(reflect.MakeSlice(out.Type(), l, l)) + case reflect.Array: + if l != out.Len() { + failf("invalid array: want %d elements but got %d", out.Len(), l) + } + case reflect.Interface: + // No type hints. Will have to use a generic sequence. + iface = out + out = settableValueOf(make([]interface{}, l)) + default: + d.terror(n, seqTag, out) + return false + } + et := out.Type().Elem() + + j := 0 + for i := 0; i < l; i++ { + e := reflect.New(et).Elem() + if ok := d.unmarshal(n.Content[i], e); ok { + out.Index(j).Set(e) + j++ + } + } + if out.Kind() != reflect.Array { + out.Set(out.Slice(0, j)) + } + if iface.IsValid() { + iface.Set(out) + } + return true +} + +func (d *decoder) mapping(n *Node, out reflect.Value) (good bool) { + l := len(n.Content) + if d.uniqueKeys { + nerrs := len(d.terrors) + for i := 0; i < l; i += 2 { + ni := n.Content[i] + for j := i + 2; j < l; j += 2 { + nj := n.Content[j] + if ni.Kind == nj.Kind && ni.Value == nj.Value { + d.terrors = append(d.terrors, fmt.Sprintf("line %d: mapping key %#v already defined at line %d", nj.Line, nj.Value, ni.Line)) + } + } + } + if len(d.terrors) > nerrs { + return false + } + } + switch out.Kind() { + case reflect.Struct: + return d.mappingStruct(n, out) + case reflect.Map: + // okay + case reflect.Interface: + iface := out + if isStringMap(n) { + out = reflect.MakeMap(d.stringMapType) + } else { + out = reflect.MakeMap(d.generalMapType) + } + iface.Set(out) + default: + d.terror(n, mapTag, out) + return false + } + + outt := out.Type() + kt := outt.Key() + et := outt.Elem() + + stringMapType := d.stringMapType + generalMapType := d.generalMapType + if outt.Elem() == ifaceType { + if outt.Key().Kind() == reflect.String { + d.stringMapType = outt + } else if outt.Key() == ifaceType { + d.generalMapType = outt + } + } + + if out.IsNil() { + out.Set(reflect.MakeMap(outt)) + } + for i := 0; i < l; i += 2 { + if isMerge(n.Content[i]) { + d.merge(n.Content[i+1], out) + continue + } + k := reflect.New(kt).Elem() + if d.unmarshal(n.Content[i], k) { + kkind := k.Kind() + if kkind == reflect.Interface { + kkind = k.Elem().Kind() + } + if kkind == reflect.Map || kkind == reflect.Slice { + failf("invalid map key: %#v", k.Interface()) + } + e := reflect.New(et).Elem() + if d.unmarshal(n.Content[i+1], e) { + out.SetMapIndex(k, e) + } + } + } + d.stringMapType = stringMapType + d.generalMapType = generalMapType + return true +} + +func isStringMap(n *Node) bool { + if n.Kind != MappingNode { + return false + } + l := len(n.Content) + for i := 0; i < l; i += 2 { + if n.Content[i].ShortTag() != strTag { + return false + } + } + return true +} + +func (d *decoder) mappingStruct(n *Node, out reflect.Value) (good bool) { + sinfo, err := getStructInfo(out.Type()) + if err != nil { + panic(err) + } + + var inlineMap reflect.Value + var elemType reflect.Type + if sinfo.InlineMap != -1 { + inlineMap = out.Field(sinfo.InlineMap) + inlineMap.Set(reflect.New(inlineMap.Type()).Elem()) + elemType = inlineMap.Type().Elem() + } + + for _, index := range sinfo.InlineUnmarshalers { + field := d.fieldByIndex(n, out, index) + d.prepare(n, field) + } + + var doneFields []bool + if d.uniqueKeys { + doneFields = make([]bool, len(sinfo.FieldsList)) + } + name := settableValueOf("") + l := len(n.Content) + for i := 0; i < l; i += 2 { + ni := n.Content[i] + if isMerge(ni) { + d.merge(n.Content[i+1], out) + continue + } + if !d.unmarshal(ni, name) { + continue + } + if info, ok := sinfo.FieldsMap[name.String()]; ok { + if d.uniqueKeys { + if doneFields[info.Id] { + d.terrors = append(d.terrors, fmt.Sprintf("line %d: field %s already set in type %s", ni.Line, name.String(), out.Type())) + continue + } + doneFields[info.Id] = true + } + var field reflect.Value + if info.Inline == nil { + field = out.Field(info.Num) + } else { + field = d.fieldByIndex(n, out, info.Inline) + } + d.unmarshal(n.Content[i+1], field) + } else if sinfo.InlineMap != -1 { + if inlineMap.IsNil() { + inlineMap.Set(reflect.MakeMap(inlineMap.Type())) + } + value := reflect.New(elemType).Elem() + d.unmarshal(n.Content[i+1], value) + inlineMap.SetMapIndex(name, value) + } else if d.knownFields { + d.terrors = append(d.terrors, fmt.Sprintf("line %d: field %s not found in type %s", ni.Line, name.String(), out.Type())) + } + } + return true +} + +func failWantMap() { + failf("map merge requires map or sequence of maps as the value") +} + +func (d *decoder) merge(n *Node, out reflect.Value) { + switch n.Kind { + case MappingNode: + d.unmarshal(n, out) + case AliasNode: + if n.Alias != nil && n.Alias.Kind != MappingNode { + failWantMap() + } + d.unmarshal(n, out) + case SequenceNode: + // Step backwards as earlier nodes take precedence. + for i := len(n.Content) - 1; i >= 0; i-- { + ni := n.Content[i] + if ni.Kind == AliasNode { + if ni.Alias != nil && ni.Alias.Kind != MappingNode { + failWantMap() + } + } else if ni.Kind != MappingNode { + failWantMap() + } + d.unmarshal(ni, out) + } + default: + failWantMap() + } +} + +func isMerge(n *Node) bool { + return n.Kind == ScalarNode && n.Value == "<<" && (n.Tag == "" || n.Tag == "!" || shortTag(n.Tag) == mergeTag) +} diff --git a/vendor/gopkg.in/yaml.v3/emitterc.go b/vendor/gopkg.in/yaml.v3/emitterc.go new file mode 100644 index 000000000..ab2a06619 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/emitterc.go @@ -0,0 +1,1992 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "bytes" + "fmt" +) + +// Flush the buffer if needed. +func flush(emitter *yaml_emitter_t) bool { + if emitter.buffer_pos+5 >= len(emitter.buffer) { + return yaml_emitter_flush(emitter) + } + return true +} + +// Put a character to the output buffer. +func put(emitter *yaml_emitter_t, value byte) bool { + if emitter.buffer_pos+5 >= len(emitter.buffer) && !yaml_emitter_flush(emitter) { + return false + } + emitter.buffer[emitter.buffer_pos] = value + emitter.buffer_pos++ + emitter.column++ + return true +} + +// Put a line break to the output buffer. +func put_break(emitter *yaml_emitter_t) bool { + if emitter.buffer_pos+5 >= len(emitter.buffer) && !yaml_emitter_flush(emitter) { + return false + } + switch emitter.line_break { + case yaml_CR_BREAK: + emitter.buffer[emitter.buffer_pos] = '\r' + emitter.buffer_pos += 1 + case yaml_LN_BREAK: + emitter.buffer[emitter.buffer_pos] = '\n' + emitter.buffer_pos += 1 + case yaml_CRLN_BREAK: + emitter.buffer[emitter.buffer_pos+0] = '\r' + emitter.buffer[emitter.buffer_pos+1] = '\n' + emitter.buffer_pos += 2 + default: + panic("unknown line break setting") + } + if emitter.column == 0 { + emitter.space_above = true + } + emitter.column = 0 + emitter.line++ + // [Go] Do this here and below and drop from everywhere else (see commented lines). + emitter.indention = true + return true +} + +// Copy a character from a string into buffer. +func write(emitter *yaml_emitter_t, s []byte, i *int) bool { + if emitter.buffer_pos+5 >= len(emitter.buffer) && !yaml_emitter_flush(emitter) { + return false + } + p := emitter.buffer_pos + w := width(s[*i]) + switch w { + case 4: + emitter.buffer[p+3] = s[*i+3] + fallthrough + case 3: + emitter.buffer[p+2] = s[*i+2] + fallthrough + case 2: + emitter.buffer[p+1] = s[*i+1] + fallthrough + case 1: + emitter.buffer[p+0] = s[*i+0] + default: + panic("unknown character width") + } + emitter.column++ + emitter.buffer_pos += w + *i += w + return true +} + +// Write a whole string into buffer. +func write_all(emitter *yaml_emitter_t, s []byte) bool { + for i := 0; i < len(s); { + if !write(emitter, s, &i) { + return false + } + } + return true +} + +// Copy a line break character from a string into buffer. +func write_break(emitter *yaml_emitter_t, s []byte, i *int) bool { + if s[*i] == '\n' { + if !put_break(emitter) { + return false + } + *i++ + } else { + if !write(emitter, s, i) { + return false + } + if emitter.column == 0 { + emitter.space_above = true + } + emitter.column = 0 + emitter.line++ + // [Go] Do this here and above and drop from everywhere else (see commented lines). + emitter.indention = true + } + return true +} + +// Set an emitter error and return false. +func yaml_emitter_set_emitter_error(emitter *yaml_emitter_t, problem string) bool { + emitter.error = yaml_EMITTER_ERROR + emitter.problem = problem + return false +} + +// Emit an event. +func yaml_emitter_emit(emitter *yaml_emitter_t, event *yaml_event_t) bool { + emitter.events = append(emitter.events, *event) + for !yaml_emitter_need_more_events(emitter) { + event := &emitter.events[emitter.events_head] + if !yaml_emitter_analyze_event(emitter, event) { + return false + } + if !yaml_emitter_state_machine(emitter, event) { + return false + } + yaml_event_delete(event) + emitter.events_head++ + } + return true +} + +// Check if we need to accumulate more events before emitting. +// +// We accumulate extra +// - 1 event for DOCUMENT-START +// - 2 events for SEQUENCE-START +// - 3 events for MAPPING-START +// +func yaml_emitter_need_more_events(emitter *yaml_emitter_t) bool { + if emitter.events_head == len(emitter.events) { + return true + } + var accumulate int + switch emitter.events[emitter.events_head].typ { + case yaml_DOCUMENT_START_EVENT: + accumulate = 1 + break + case yaml_SEQUENCE_START_EVENT: + accumulate = 2 + break + case yaml_MAPPING_START_EVENT: + accumulate = 3 + break + default: + return false + } + if len(emitter.events)-emitter.events_head > accumulate { + return false + } + var level int + for i := emitter.events_head; i < len(emitter.events); i++ { + switch emitter.events[i].typ { + case yaml_STREAM_START_EVENT, yaml_DOCUMENT_START_EVENT, yaml_SEQUENCE_START_EVENT, yaml_MAPPING_START_EVENT: + level++ + case yaml_STREAM_END_EVENT, yaml_DOCUMENT_END_EVENT, yaml_SEQUENCE_END_EVENT, yaml_MAPPING_END_EVENT: + level-- + } + if level == 0 { + return false + } + } + return true +} + +// Append a directive to the directives stack. +func yaml_emitter_append_tag_directive(emitter *yaml_emitter_t, value *yaml_tag_directive_t, allow_duplicates bool) bool { + for i := 0; i < len(emitter.tag_directives); i++ { + if bytes.Equal(value.handle, emitter.tag_directives[i].handle) { + if allow_duplicates { + return true + } + return yaml_emitter_set_emitter_error(emitter, "duplicate %TAG directive") + } + } + + // [Go] Do we actually need to copy this given garbage collection + // and the lack of deallocating destructors? + tag_copy := yaml_tag_directive_t{ + handle: make([]byte, len(value.handle)), + prefix: make([]byte, len(value.prefix)), + } + copy(tag_copy.handle, value.handle) + copy(tag_copy.prefix, value.prefix) + emitter.tag_directives = append(emitter.tag_directives, tag_copy) + return true +} + +// Increase the indentation level. +func yaml_emitter_increase_indent(emitter *yaml_emitter_t, flow, indentless bool) bool { + emitter.indents = append(emitter.indents, emitter.indent) + if emitter.indent < 0 { + if flow { + emitter.indent = emitter.best_indent + } else { + emitter.indent = 0 + } + } else if !indentless { + emitter.indent += emitter.best_indent + // [Go] If inside a block sequence item, discount the space taken by the indicator. + if emitter.best_indent > 2 && emitter.states[len(emitter.states)-1] == yaml_EMIT_BLOCK_SEQUENCE_ITEM_STATE { + emitter.indent -= 2 + } + } + return true +} + +// State dispatcher. +func yaml_emitter_state_machine(emitter *yaml_emitter_t, event *yaml_event_t) bool { + switch emitter.state { + default: + case yaml_EMIT_STREAM_START_STATE: + return yaml_emitter_emit_stream_start(emitter, event) + + case yaml_EMIT_FIRST_DOCUMENT_START_STATE: + return yaml_emitter_emit_document_start(emitter, event, true) + + case yaml_EMIT_DOCUMENT_START_STATE: + return yaml_emitter_emit_document_start(emitter, event, false) + + case yaml_EMIT_DOCUMENT_CONTENT_STATE: + return yaml_emitter_emit_document_content(emitter, event) + + case yaml_EMIT_DOCUMENT_END_STATE: + return yaml_emitter_emit_document_end(emitter, event) + + case yaml_EMIT_FLOW_SEQUENCE_FIRST_ITEM_STATE: + return yaml_emitter_emit_flow_sequence_item(emitter, event, true, false) + + case yaml_EMIT_FLOW_SEQUENCE_TRAIL_ITEM_STATE: + return yaml_emitter_emit_flow_sequence_item(emitter, event, false, true) + + case yaml_EMIT_FLOW_SEQUENCE_ITEM_STATE: + return yaml_emitter_emit_flow_sequence_item(emitter, event, false, false) + + case yaml_EMIT_FLOW_MAPPING_FIRST_KEY_STATE: + return yaml_emitter_emit_flow_mapping_key(emitter, event, true, false) + + case yaml_EMIT_FLOW_MAPPING_TRAIL_KEY_STATE: + return yaml_emitter_emit_flow_mapping_key(emitter, event, false, true) + + case yaml_EMIT_FLOW_MAPPING_KEY_STATE: + return yaml_emitter_emit_flow_mapping_key(emitter, event, false, false) + + case yaml_EMIT_FLOW_MAPPING_SIMPLE_VALUE_STATE: + return yaml_emitter_emit_flow_mapping_value(emitter, event, true) + + case yaml_EMIT_FLOW_MAPPING_VALUE_STATE: + return yaml_emitter_emit_flow_mapping_value(emitter, event, false) + + case yaml_EMIT_BLOCK_SEQUENCE_FIRST_ITEM_STATE: + return yaml_emitter_emit_block_sequence_item(emitter, event, true) + + case yaml_EMIT_BLOCK_SEQUENCE_ITEM_STATE: + return yaml_emitter_emit_block_sequence_item(emitter, event, false) + + case yaml_EMIT_BLOCK_MAPPING_FIRST_KEY_STATE: + return yaml_emitter_emit_block_mapping_key(emitter, event, true) + + case yaml_EMIT_BLOCK_MAPPING_KEY_STATE: + return yaml_emitter_emit_block_mapping_key(emitter, event, false) + + case yaml_EMIT_BLOCK_MAPPING_SIMPLE_VALUE_STATE: + return yaml_emitter_emit_block_mapping_value(emitter, event, true) + + case yaml_EMIT_BLOCK_MAPPING_VALUE_STATE: + return yaml_emitter_emit_block_mapping_value(emitter, event, false) + + case yaml_EMIT_END_STATE: + return yaml_emitter_set_emitter_error(emitter, "expected nothing after STREAM-END") + } + panic("invalid emitter state") +} + +// Expect STREAM-START. +func yaml_emitter_emit_stream_start(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if event.typ != yaml_STREAM_START_EVENT { + return yaml_emitter_set_emitter_error(emitter, "expected STREAM-START") + } + if emitter.encoding == yaml_ANY_ENCODING { + emitter.encoding = event.encoding + if emitter.encoding == yaml_ANY_ENCODING { + emitter.encoding = yaml_UTF8_ENCODING + } + } + if emitter.best_indent < 2 || emitter.best_indent > 9 { + emitter.best_indent = 2 + } + if emitter.best_width >= 0 && emitter.best_width <= emitter.best_indent*2 { + emitter.best_width = 80 + } + if emitter.best_width < 0 { + emitter.best_width = 1<<31 - 1 + } + if emitter.line_break == yaml_ANY_BREAK { + emitter.line_break = yaml_LN_BREAK + } + + emitter.indent = -1 + emitter.line = 0 + emitter.column = 0 + emitter.whitespace = true + emitter.indention = true + emitter.space_above = true + emitter.foot_indent = -1 + + if emitter.encoding != yaml_UTF8_ENCODING { + if !yaml_emitter_write_bom(emitter) { + return false + } + } + emitter.state = yaml_EMIT_FIRST_DOCUMENT_START_STATE + return true +} + +// Expect DOCUMENT-START or STREAM-END. +func yaml_emitter_emit_document_start(emitter *yaml_emitter_t, event *yaml_event_t, first bool) bool { + + if event.typ == yaml_DOCUMENT_START_EVENT { + + if event.version_directive != nil { + if !yaml_emitter_analyze_version_directive(emitter, event.version_directive) { + return false + } + } + + for i := 0; i < len(event.tag_directives); i++ { + tag_directive := &event.tag_directives[i] + if !yaml_emitter_analyze_tag_directive(emitter, tag_directive) { + return false + } + if !yaml_emitter_append_tag_directive(emitter, tag_directive, false) { + return false + } + } + + for i := 0; i < len(default_tag_directives); i++ { + tag_directive := &default_tag_directives[i] + if !yaml_emitter_append_tag_directive(emitter, tag_directive, true) { + return false + } + } + + implicit := event.implicit + if !first || emitter.canonical { + implicit = false + } + + if emitter.open_ended && (event.version_directive != nil || len(event.tag_directives) > 0) { + if !yaml_emitter_write_indicator(emitter, []byte("..."), true, false, false) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + } + + if event.version_directive != nil { + implicit = false + if !yaml_emitter_write_indicator(emitter, []byte("%YAML"), true, false, false) { + return false + } + if !yaml_emitter_write_indicator(emitter, []byte("1.1"), true, false, false) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + } + + if len(event.tag_directives) > 0 { + implicit = false + for i := 0; i < len(event.tag_directives); i++ { + tag_directive := &event.tag_directives[i] + if !yaml_emitter_write_indicator(emitter, []byte("%TAG"), true, false, false) { + return false + } + if !yaml_emitter_write_tag_handle(emitter, tag_directive.handle) { + return false + } + if !yaml_emitter_write_tag_content(emitter, tag_directive.prefix, true) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + } + } + + if yaml_emitter_check_empty_document(emitter) { + implicit = false + } + if !implicit { + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_indicator(emitter, []byte("---"), true, false, false) { + return false + } + if emitter.canonical || true { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + } + + if len(emitter.head_comment) > 0 { + if !yaml_emitter_process_head_comment(emitter) { + return false + } + if !put_break(emitter) { + return false + } + } + + emitter.state = yaml_EMIT_DOCUMENT_CONTENT_STATE + return true + } + + if event.typ == yaml_STREAM_END_EVENT { + if emitter.open_ended { + if !yaml_emitter_write_indicator(emitter, []byte("..."), true, false, false) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !yaml_emitter_flush(emitter) { + return false + } + emitter.state = yaml_EMIT_END_STATE + return true + } + + return yaml_emitter_set_emitter_error(emitter, "expected DOCUMENT-START or STREAM-END") +} + +// Expect the root node. +func yaml_emitter_emit_document_content(emitter *yaml_emitter_t, event *yaml_event_t) bool { + emitter.states = append(emitter.states, yaml_EMIT_DOCUMENT_END_STATE) + + if !yaml_emitter_process_head_comment(emitter) { + return false + } + if !yaml_emitter_emit_node(emitter, event, true, false, false, false) { + return false + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + return true +} + +// Expect DOCUMENT-END. +func yaml_emitter_emit_document_end(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if event.typ != yaml_DOCUMENT_END_EVENT { + return yaml_emitter_set_emitter_error(emitter, "expected DOCUMENT-END") + } + // [Go] Force document foot separation. + emitter.foot_indent = 0 + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + emitter.foot_indent = -1 + if !yaml_emitter_write_indent(emitter) { + return false + } + if !event.implicit { + // [Go] Allocate the slice elsewhere. + if !yaml_emitter_write_indicator(emitter, []byte("..."), true, false, false) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !yaml_emitter_flush(emitter) { + return false + } + emitter.state = yaml_EMIT_DOCUMENT_START_STATE + emitter.tag_directives = emitter.tag_directives[:0] + return true +} + +// Expect a flow item node. +func yaml_emitter_emit_flow_sequence_item(emitter *yaml_emitter_t, event *yaml_event_t, first, trail bool) bool { + if first { + if !yaml_emitter_write_indicator(emitter, []byte{'['}, true, true, false) { + return false + } + if !yaml_emitter_increase_indent(emitter, true, false) { + return false + } + emitter.flow_level++ + } + + if event.typ == yaml_SEQUENCE_END_EVENT { + if emitter.canonical && !first && !trail { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + emitter.flow_level-- + emitter.indent = emitter.indents[len(emitter.indents)-1] + emitter.indents = emitter.indents[:len(emitter.indents)-1] + if emitter.column == 0 || emitter.canonical && !first { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !yaml_emitter_write_indicator(emitter, []byte{']'}, false, false, false) { + return false + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + + return true + } + + if !first && !trail { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + + if !yaml_emitter_process_head_comment(emitter) { + return false + } + if emitter.column == 0 { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + + if emitter.canonical || emitter.column > emitter.best_width { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if len(emitter.line_comment)+len(emitter.foot_comment)+len(emitter.tail_comment) > 0 { + emitter.states = append(emitter.states, yaml_EMIT_FLOW_SEQUENCE_TRAIL_ITEM_STATE) + } else { + emitter.states = append(emitter.states, yaml_EMIT_FLOW_SEQUENCE_ITEM_STATE) + } + if !yaml_emitter_emit_node(emitter, event, false, true, false, false) { + return false + } + if len(emitter.line_comment)+len(emitter.foot_comment)+len(emitter.tail_comment) > 0 { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + return true +} + +// Expect a flow key node. +func yaml_emitter_emit_flow_mapping_key(emitter *yaml_emitter_t, event *yaml_event_t, first, trail bool) bool { + if first { + if !yaml_emitter_write_indicator(emitter, []byte{'{'}, true, true, false) { + return false + } + if !yaml_emitter_increase_indent(emitter, true, false) { + return false + } + emitter.flow_level++ + } + + if event.typ == yaml_MAPPING_END_EVENT { + if (emitter.canonical || len(emitter.head_comment)+len(emitter.foot_comment)+len(emitter.tail_comment) > 0) && !first && !trail { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + if !yaml_emitter_process_head_comment(emitter) { + return false + } + emitter.flow_level-- + emitter.indent = emitter.indents[len(emitter.indents)-1] + emitter.indents = emitter.indents[:len(emitter.indents)-1] + if emitter.canonical && !first { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !yaml_emitter_write_indicator(emitter, []byte{'}'}, false, false, false) { + return false + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + return true + } + + if !first && !trail { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + + if !yaml_emitter_process_head_comment(emitter) { + return false + } + + if emitter.column == 0 { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + + if emitter.canonical || emitter.column > emitter.best_width { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + + if !emitter.canonical && yaml_emitter_check_simple_key(emitter) { + emitter.states = append(emitter.states, yaml_EMIT_FLOW_MAPPING_SIMPLE_VALUE_STATE) + return yaml_emitter_emit_node(emitter, event, false, false, true, true) + } + if !yaml_emitter_write_indicator(emitter, []byte{'?'}, true, false, false) { + return false + } + emitter.states = append(emitter.states, yaml_EMIT_FLOW_MAPPING_VALUE_STATE) + return yaml_emitter_emit_node(emitter, event, false, false, true, false) +} + +// Expect a flow value node. +func yaml_emitter_emit_flow_mapping_value(emitter *yaml_emitter_t, event *yaml_event_t, simple bool) bool { + if simple { + if !yaml_emitter_write_indicator(emitter, []byte{':'}, false, false, false) { + return false + } + } else { + if emitter.canonical || emitter.column > emitter.best_width { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !yaml_emitter_write_indicator(emitter, []byte{':'}, true, false, false) { + return false + } + } + if len(emitter.line_comment)+len(emitter.foot_comment)+len(emitter.tail_comment) > 0 { + emitter.states = append(emitter.states, yaml_EMIT_FLOW_MAPPING_TRAIL_KEY_STATE) + } else { + emitter.states = append(emitter.states, yaml_EMIT_FLOW_MAPPING_KEY_STATE) + } + if !yaml_emitter_emit_node(emitter, event, false, false, true, false) { + return false + } + if len(emitter.line_comment)+len(emitter.foot_comment)+len(emitter.tail_comment) > 0 { + if !yaml_emitter_write_indicator(emitter, []byte{','}, false, false, false) { + return false + } + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + return true +} + +// Expect a block item node. +func yaml_emitter_emit_block_sequence_item(emitter *yaml_emitter_t, event *yaml_event_t, first bool) bool { + if first { + // [Go] The original logic here would not indent the sequence when inside a mapping. + // In Go we always indent it, but take the sequence indicator out of the indentation. + indentless := emitter.best_indent == 2 && emitter.mapping_context && (emitter.column == 0 || !emitter.indention) + original := emitter.indent + if !yaml_emitter_increase_indent(emitter, false, indentless) { + return false + } + if emitter.indent > original+2 { + emitter.indent -= 2 + } + } + if event.typ == yaml_SEQUENCE_END_EVENT { + emitter.indent = emitter.indents[len(emitter.indents)-1] + emitter.indents = emitter.indents[:len(emitter.indents)-1] + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + return true + } + if !yaml_emitter_process_head_comment(emitter) { + return false + } + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_indicator(emitter, []byte{'-'}, true, false, true) { + return false + } + emitter.states = append(emitter.states, yaml_EMIT_BLOCK_SEQUENCE_ITEM_STATE) + if !yaml_emitter_emit_node(emitter, event, false, true, false, false) { + return false + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + return true +} + +// Expect a block key node. +func yaml_emitter_emit_block_mapping_key(emitter *yaml_emitter_t, event *yaml_event_t, first bool) bool { + if first { + if !yaml_emitter_increase_indent(emitter, false, false) { + return false + } + } + if !yaml_emitter_process_head_comment(emitter) { + return false + } + if event.typ == yaml_MAPPING_END_EVENT { + emitter.indent = emitter.indents[len(emitter.indents)-1] + emitter.indents = emitter.indents[:len(emitter.indents)-1] + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + return true + } + if !yaml_emitter_write_indent(emitter) { + return false + } + if yaml_emitter_check_simple_key(emitter) { + emitter.states = append(emitter.states, yaml_EMIT_BLOCK_MAPPING_SIMPLE_VALUE_STATE) + return yaml_emitter_emit_node(emitter, event, false, false, true, true) + } + if !yaml_emitter_write_indicator(emitter, []byte{'?'}, true, false, true) { + return false + } + emitter.states = append(emitter.states, yaml_EMIT_BLOCK_MAPPING_VALUE_STATE) + return yaml_emitter_emit_node(emitter, event, false, false, true, false) +} + +// Expect a block value node. +func yaml_emitter_emit_block_mapping_value(emitter *yaml_emitter_t, event *yaml_event_t, simple bool) bool { + if simple { + if !yaml_emitter_write_indicator(emitter, []byte{':'}, false, false, false) { + return false + } + } else { + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_indicator(emitter, []byte{':'}, true, false, true) { + return false + } + } + emitter.states = append(emitter.states, yaml_EMIT_BLOCK_MAPPING_KEY_STATE) + if !yaml_emitter_emit_node(emitter, event, false, false, true, false) { + return false + } + if !yaml_emitter_process_line_comment(emitter) { + return false + } + if !yaml_emitter_process_foot_comment(emitter) { + return false + } + return true +} + +// Expect a node. +func yaml_emitter_emit_node(emitter *yaml_emitter_t, event *yaml_event_t, + root bool, sequence bool, mapping bool, simple_key bool) bool { + + emitter.root_context = root + emitter.sequence_context = sequence + emitter.mapping_context = mapping + emitter.simple_key_context = simple_key + + switch event.typ { + case yaml_ALIAS_EVENT: + return yaml_emitter_emit_alias(emitter, event) + case yaml_SCALAR_EVENT: + return yaml_emitter_emit_scalar(emitter, event) + case yaml_SEQUENCE_START_EVENT: + return yaml_emitter_emit_sequence_start(emitter, event) + case yaml_MAPPING_START_EVENT: + return yaml_emitter_emit_mapping_start(emitter, event) + default: + return yaml_emitter_set_emitter_error(emitter, + fmt.Sprintf("expected SCALAR, SEQUENCE-START, MAPPING-START, or ALIAS, but got %v", event.typ)) + } +} + +// Expect ALIAS. +func yaml_emitter_emit_alias(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if !yaml_emitter_process_anchor(emitter) { + return false + } + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + return true +} + +// Expect SCALAR. +func yaml_emitter_emit_scalar(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if !yaml_emitter_select_scalar_style(emitter, event) { + return false + } + if !yaml_emitter_process_anchor(emitter) { + return false + } + if !yaml_emitter_process_tag(emitter) { + return false + } + if !yaml_emitter_increase_indent(emitter, true, false) { + return false + } + if !yaml_emitter_process_scalar(emitter) { + return false + } + emitter.indent = emitter.indents[len(emitter.indents)-1] + emitter.indents = emitter.indents[:len(emitter.indents)-1] + emitter.state = emitter.states[len(emitter.states)-1] + emitter.states = emitter.states[:len(emitter.states)-1] + return true +} + +// Expect SEQUENCE-START. +func yaml_emitter_emit_sequence_start(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if !yaml_emitter_process_anchor(emitter) { + return false + } + if !yaml_emitter_process_tag(emitter) { + return false + } + if emitter.flow_level > 0 || emitter.canonical || event.sequence_style() == yaml_FLOW_SEQUENCE_STYLE || + yaml_emitter_check_empty_sequence(emitter) { + emitter.state = yaml_EMIT_FLOW_SEQUENCE_FIRST_ITEM_STATE + } else { + emitter.state = yaml_EMIT_BLOCK_SEQUENCE_FIRST_ITEM_STATE + } + return true +} + +// Expect MAPPING-START. +func yaml_emitter_emit_mapping_start(emitter *yaml_emitter_t, event *yaml_event_t) bool { + if !yaml_emitter_process_anchor(emitter) { + return false + } + if !yaml_emitter_process_tag(emitter) { + return false + } + if emitter.flow_level > 0 || emitter.canonical || event.mapping_style() == yaml_FLOW_MAPPING_STYLE || + yaml_emitter_check_empty_mapping(emitter) { + emitter.state = yaml_EMIT_FLOW_MAPPING_FIRST_KEY_STATE + } else { + emitter.state = yaml_EMIT_BLOCK_MAPPING_FIRST_KEY_STATE + } + return true +} + +// Check if the document content is an empty scalar. +func yaml_emitter_check_empty_document(emitter *yaml_emitter_t) bool { + return false // [Go] Huh? +} + +// Check if the next events represent an empty sequence. +func yaml_emitter_check_empty_sequence(emitter *yaml_emitter_t) bool { + if len(emitter.events)-emitter.events_head < 2 { + return false + } + return emitter.events[emitter.events_head].typ == yaml_SEQUENCE_START_EVENT && + emitter.events[emitter.events_head+1].typ == yaml_SEQUENCE_END_EVENT +} + +// Check if the next events represent an empty mapping. +func yaml_emitter_check_empty_mapping(emitter *yaml_emitter_t) bool { + if len(emitter.events)-emitter.events_head < 2 { + return false + } + return emitter.events[emitter.events_head].typ == yaml_MAPPING_START_EVENT && + emitter.events[emitter.events_head+1].typ == yaml_MAPPING_END_EVENT +} + +// Check if the next node can be expressed as a simple key. +func yaml_emitter_check_simple_key(emitter *yaml_emitter_t) bool { + length := 0 + switch emitter.events[emitter.events_head].typ { + case yaml_ALIAS_EVENT: + length += len(emitter.anchor_data.anchor) + case yaml_SCALAR_EVENT: + if emitter.scalar_data.multiline { + return false + } + length += len(emitter.anchor_data.anchor) + + len(emitter.tag_data.handle) + + len(emitter.tag_data.suffix) + + len(emitter.scalar_data.value) + case yaml_SEQUENCE_START_EVENT: + if !yaml_emitter_check_empty_sequence(emitter) { + return false + } + length += len(emitter.anchor_data.anchor) + + len(emitter.tag_data.handle) + + len(emitter.tag_data.suffix) + case yaml_MAPPING_START_EVENT: + if !yaml_emitter_check_empty_mapping(emitter) { + return false + } + length += len(emitter.anchor_data.anchor) + + len(emitter.tag_data.handle) + + len(emitter.tag_data.suffix) + default: + return false + } + return length <= 128 +} + +// Determine an acceptable scalar style. +func yaml_emitter_select_scalar_style(emitter *yaml_emitter_t, event *yaml_event_t) bool { + + no_tag := len(emitter.tag_data.handle) == 0 && len(emitter.tag_data.suffix) == 0 + if no_tag && !event.implicit && !event.quoted_implicit { + return yaml_emitter_set_emitter_error(emitter, "neither tag nor implicit flags are specified") + } + + style := event.scalar_style() + if style == yaml_ANY_SCALAR_STYLE { + style = yaml_PLAIN_SCALAR_STYLE + } + if emitter.canonical { + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + if emitter.simple_key_context && emitter.scalar_data.multiline { + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + + if style == yaml_PLAIN_SCALAR_STYLE { + if emitter.flow_level > 0 && !emitter.scalar_data.flow_plain_allowed || + emitter.flow_level == 0 && !emitter.scalar_data.block_plain_allowed { + style = yaml_SINGLE_QUOTED_SCALAR_STYLE + } + if len(emitter.scalar_data.value) == 0 && (emitter.flow_level > 0 || emitter.simple_key_context) { + style = yaml_SINGLE_QUOTED_SCALAR_STYLE + } + if no_tag && !event.implicit { + style = yaml_SINGLE_QUOTED_SCALAR_STYLE + } + } + if style == yaml_SINGLE_QUOTED_SCALAR_STYLE { + if !emitter.scalar_data.single_quoted_allowed { + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + } + if style == yaml_LITERAL_SCALAR_STYLE || style == yaml_FOLDED_SCALAR_STYLE { + if !emitter.scalar_data.block_allowed || emitter.flow_level > 0 || emitter.simple_key_context { + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + } + + if no_tag && !event.quoted_implicit && style != yaml_PLAIN_SCALAR_STYLE { + emitter.tag_data.handle = []byte{'!'} + } + emitter.scalar_data.style = style + return true +} + +// Write an anchor. +func yaml_emitter_process_anchor(emitter *yaml_emitter_t) bool { + if emitter.anchor_data.anchor == nil { + return true + } + c := []byte{'&'} + if emitter.anchor_data.alias { + c[0] = '*' + } + if !yaml_emitter_write_indicator(emitter, c, true, false, false) { + return false + } + return yaml_emitter_write_anchor(emitter, emitter.anchor_data.anchor) +} + +// Write a tag. +func yaml_emitter_process_tag(emitter *yaml_emitter_t) bool { + if len(emitter.tag_data.handle) == 0 && len(emitter.tag_data.suffix) == 0 { + return true + } + if len(emitter.tag_data.handle) > 0 { + if !yaml_emitter_write_tag_handle(emitter, emitter.tag_data.handle) { + return false + } + if len(emitter.tag_data.suffix) > 0 { + if !yaml_emitter_write_tag_content(emitter, emitter.tag_data.suffix, false) { + return false + } + } + } else { + // [Go] Allocate these slices elsewhere. + if !yaml_emitter_write_indicator(emitter, []byte("!<"), true, false, false) { + return false + } + if !yaml_emitter_write_tag_content(emitter, emitter.tag_data.suffix, false) { + return false + } + if !yaml_emitter_write_indicator(emitter, []byte{'>'}, false, false, false) { + return false + } + } + return true +} + +// Write a scalar. +func yaml_emitter_process_scalar(emitter *yaml_emitter_t) bool { + switch emitter.scalar_data.style { + case yaml_PLAIN_SCALAR_STYLE: + return yaml_emitter_write_plain_scalar(emitter, emitter.scalar_data.value, !emitter.simple_key_context) + + case yaml_SINGLE_QUOTED_SCALAR_STYLE: + return yaml_emitter_write_single_quoted_scalar(emitter, emitter.scalar_data.value, !emitter.simple_key_context) + + case yaml_DOUBLE_QUOTED_SCALAR_STYLE: + return yaml_emitter_write_double_quoted_scalar(emitter, emitter.scalar_data.value, !emitter.simple_key_context) + + case yaml_LITERAL_SCALAR_STYLE: + return yaml_emitter_write_literal_scalar(emitter, emitter.scalar_data.value) + + case yaml_FOLDED_SCALAR_STYLE: + return yaml_emitter_write_folded_scalar(emitter, emitter.scalar_data.value) + } + panic("unknown scalar style") +} + +// Write a head comment. +func yaml_emitter_process_head_comment(emitter *yaml_emitter_t) bool { + if len(emitter.tail_comment) > 0 { + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_comment(emitter, emitter.tail_comment) { + return false + } + emitter.tail_comment = emitter.tail_comment[:0] + emitter.foot_indent = emitter.indent + if emitter.foot_indent < 0 { + emitter.foot_indent = 0 + } + } + + if len(emitter.head_comment) == 0 { + return true + } + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_comment(emitter, emitter.head_comment) { + return false + } + emitter.head_comment = emitter.head_comment[:0] + return true +} + +// Write an line comment. +func yaml_emitter_process_line_comment(emitter *yaml_emitter_t) bool { + if len(emitter.line_comment) == 0 { + return true + } + if !emitter.whitespace { + if !put(emitter, ' ') { + return false + } + } + if !yaml_emitter_write_comment(emitter, emitter.line_comment) { + return false + } + emitter.line_comment = emitter.line_comment[:0] + return true +} + +// Write a foot comment. +func yaml_emitter_process_foot_comment(emitter *yaml_emitter_t) bool { + if len(emitter.foot_comment) == 0 { + return true + } + if !yaml_emitter_write_indent(emitter) { + return false + } + if !yaml_emitter_write_comment(emitter, emitter.foot_comment) { + return false + } + emitter.foot_comment = emitter.foot_comment[:0] + emitter.foot_indent = emitter.indent + if emitter.foot_indent < 0 { + emitter.foot_indent = 0 + } + return true +} + +// Check if a %YAML directive is valid. +func yaml_emitter_analyze_version_directive(emitter *yaml_emitter_t, version_directive *yaml_version_directive_t) bool { + if version_directive.major != 1 || version_directive.minor != 1 { + return yaml_emitter_set_emitter_error(emitter, "incompatible %YAML directive") + } + return true +} + +// Check if a %TAG directive is valid. +func yaml_emitter_analyze_tag_directive(emitter *yaml_emitter_t, tag_directive *yaml_tag_directive_t) bool { + handle := tag_directive.handle + prefix := tag_directive.prefix + if len(handle) == 0 { + return yaml_emitter_set_emitter_error(emitter, "tag handle must not be empty") + } + if handle[0] != '!' { + return yaml_emitter_set_emitter_error(emitter, "tag handle must start with '!'") + } + if handle[len(handle)-1] != '!' { + return yaml_emitter_set_emitter_error(emitter, "tag handle must end with '!'") + } + for i := 1; i < len(handle)-1; i += width(handle[i]) { + if !is_alpha(handle, i) { + return yaml_emitter_set_emitter_error(emitter, "tag handle must contain alphanumerical characters only") + } + } + if len(prefix) == 0 { + return yaml_emitter_set_emitter_error(emitter, "tag prefix must not be empty") + } + return true +} + +// Check if an anchor is valid. +func yaml_emitter_analyze_anchor(emitter *yaml_emitter_t, anchor []byte, alias bool) bool { + if len(anchor) == 0 { + problem := "anchor value must not be empty" + if alias { + problem = "alias value must not be empty" + } + return yaml_emitter_set_emitter_error(emitter, problem) + } + for i := 0; i < len(anchor); i += width(anchor[i]) { + if !is_alpha(anchor, i) { + problem := "anchor value must contain alphanumerical characters only" + if alias { + problem = "alias value must contain alphanumerical characters only" + } + return yaml_emitter_set_emitter_error(emitter, problem) + } + } + emitter.anchor_data.anchor = anchor + emitter.anchor_data.alias = alias + return true +} + +// Check if a tag is valid. +func yaml_emitter_analyze_tag(emitter *yaml_emitter_t, tag []byte) bool { + if len(tag) == 0 { + return yaml_emitter_set_emitter_error(emitter, "tag value must not be empty") + } + for i := 0; i < len(emitter.tag_directives); i++ { + tag_directive := &emitter.tag_directives[i] + if bytes.HasPrefix(tag, tag_directive.prefix) { + emitter.tag_data.handle = tag_directive.handle + emitter.tag_data.suffix = tag[len(tag_directive.prefix):] + return true + } + } + emitter.tag_data.suffix = tag + return true +} + +// Check if a scalar is valid. +func yaml_emitter_analyze_scalar(emitter *yaml_emitter_t, value []byte) bool { + var ( + block_indicators = false + flow_indicators = false + line_breaks = false + special_characters = false + tab_characters = false + + leading_space = false + leading_break = false + trailing_space = false + trailing_break = false + break_space = false + space_break = false + + preceded_by_whitespace = false + followed_by_whitespace = false + previous_space = false + previous_break = false + ) + + emitter.scalar_data.value = value + + if len(value) == 0 { + emitter.scalar_data.multiline = false + emitter.scalar_data.flow_plain_allowed = false + emitter.scalar_data.block_plain_allowed = true + emitter.scalar_data.single_quoted_allowed = true + emitter.scalar_data.block_allowed = false + return true + } + + if len(value) >= 3 && ((value[0] == '-' && value[1] == '-' && value[2] == '-') || (value[0] == '.' && value[1] == '.' && value[2] == '.')) { + block_indicators = true + flow_indicators = true + } + + preceded_by_whitespace = true + for i, w := 0, 0; i < len(value); i += w { + w = width(value[i]) + followed_by_whitespace = i+w >= len(value) || is_blank(value, i+w) + + if i == 0 { + switch value[i] { + case '#', ',', '[', ']', '{', '}', '&', '*', '!', '|', '>', '\'', '"', '%', '@', '`': + flow_indicators = true + block_indicators = true + case '?', ':': + flow_indicators = true + if followed_by_whitespace { + block_indicators = true + } + case '-': + if followed_by_whitespace { + flow_indicators = true + block_indicators = true + } + } + } else { + switch value[i] { + case ',', '?', '[', ']', '{', '}': + flow_indicators = true + case ':': + flow_indicators = true + if followed_by_whitespace { + block_indicators = true + } + case '#': + if preceded_by_whitespace { + flow_indicators = true + block_indicators = true + } + } + } + + if value[i] == '\t' { + tab_characters = true + } else if !is_printable(value, i) || !is_ascii(value, i) && !emitter.unicode { + special_characters = true + } + if is_space(value, i) { + if i == 0 { + leading_space = true + } + if i+width(value[i]) == len(value) { + trailing_space = true + } + if previous_break { + break_space = true + } + previous_space = true + previous_break = false + } else if is_break(value, i) { + line_breaks = true + if i == 0 { + leading_break = true + } + if i+width(value[i]) == len(value) { + trailing_break = true + } + if previous_space { + space_break = true + } + previous_space = false + previous_break = true + } else { + previous_space = false + previous_break = false + } + + // [Go]: Why 'z'? Couldn't be the end of the string as that's the loop condition. + preceded_by_whitespace = is_blankz(value, i) + } + + emitter.scalar_data.multiline = line_breaks + emitter.scalar_data.flow_plain_allowed = true + emitter.scalar_data.block_plain_allowed = true + emitter.scalar_data.single_quoted_allowed = true + emitter.scalar_data.block_allowed = true + + if leading_space || leading_break || trailing_space || trailing_break { + emitter.scalar_data.flow_plain_allowed = false + emitter.scalar_data.block_plain_allowed = false + } + if trailing_space { + emitter.scalar_data.block_allowed = false + } + if break_space { + emitter.scalar_data.flow_plain_allowed = false + emitter.scalar_data.block_plain_allowed = false + emitter.scalar_data.single_quoted_allowed = false + } + if space_break || tab_characters || special_characters { + emitter.scalar_data.flow_plain_allowed = false + emitter.scalar_data.block_plain_allowed = false + emitter.scalar_data.single_quoted_allowed = false + } + if space_break || special_characters { + emitter.scalar_data.block_allowed = false + } + if line_breaks { + emitter.scalar_data.flow_plain_allowed = false + emitter.scalar_data.block_plain_allowed = false + } + if flow_indicators { + emitter.scalar_data.flow_plain_allowed = false + } + if block_indicators { + emitter.scalar_data.block_plain_allowed = false + } + return true +} + +// Check if the event data is valid. +func yaml_emitter_analyze_event(emitter *yaml_emitter_t, event *yaml_event_t) bool { + + emitter.anchor_data.anchor = nil + emitter.tag_data.handle = nil + emitter.tag_data.suffix = nil + emitter.scalar_data.value = nil + + if len(event.head_comment) > 0 { + emitter.head_comment = event.head_comment + } + if len(event.line_comment) > 0 { + emitter.line_comment = event.line_comment + } + if len(event.foot_comment) > 0 { + emitter.foot_comment = event.foot_comment + } + if len(event.tail_comment) > 0 { + emitter.tail_comment = event.tail_comment + } + + switch event.typ { + case yaml_ALIAS_EVENT: + if !yaml_emitter_analyze_anchor(emitter, event.anchor, true) { + return false + } + + case yaml_SCALAR_EVENT: + if len(event.anchor) > 0 { + if !yaml_emitter_analyze_anchor(emitter, event.anchor, false) { + return false + } + } + if len(event.tag) > 0 && (emitter.canonical || (!event.implicit && !event.quoted_implicit)) { + if !yaml_emitter_analyze_tag(emitter, event.tag) { + return false + } + } + if !yaml_emitter_analyze_scalar(emitter, event.value) { + return false + } + + case yaml_SEQUENCE_START_EVENT: + if len(event.anchor) > 0 { + if !yaml_emitter_analyze_anchor(emitter, event.anchor, false) { + return false + } + } + if len(event.tag) > 0 && (emitter.canonical || !event.implicit) { + if !yaml_emitter_analyze_tag(emitter, event.tag) { + return false + } + } + + case yaml_MAPPING_START_EVENT: + if len(event.anchor) > 0 { + if !yaml_emitter_analyze_anchor(emitter, event.anchor, false) { + return false + } + } + if len(event.tag) > 0 && (emitter.canonical || !event.implicit) { + if !yaml_emitter_analyze_tag(emitter, event.tag) { + return false + } + } + } + return true +} + +// Write the BOM character. +func yaml_emitter_write_bom(emitter *yaml_emitter_t) bool { + if !flush(emitter) { + return false + } + pos := emitter.buffer_pos + emitter.buffer[pos+0] = '\xEF' + emitter.buffer[pos+1] = '\xBB' + emitter.buffer[pos+2] = '\xBF' + emitter.buffer_pos += 3 + return true +} + +func yaml_emitter_write_indent(emitter *yaml_emitter_t) bool { + indent := emitter.indent + if indent < 0 { + indent = 0 + } + if !emitter.indention || emitter.column > indent || (emitter.column == indent && !emitter.whitespace) { + if !put_break(emitter) { + return false + } + } + if emitter.foot_indent == indent { + if !put_break(emitter) { + return false + } + } + for emitter.column < indent { + if !put(emitter, ' ') { + return false + } + } + emitter.whitespace = true + //emitter.indention = true + emitter.space_above = false + emitter.foot_indent = -1 + return true +} + +func yaml_emitter_write_indicator(emitter *yaml_emitter_t, indicator []byte, need_whitespace, is_whitespace, is_indention bool) bool { + if need_whitespace && !emitter.whitespace { + if !put(emitter, ' ') { + return false + } + } + if !write_all(emitter, indicator) { + return false + } + emitter.whitespace = is_whitespace + emitter.indention = (emitter.indention && is_indention) + emitter.open_ended = false + return true +} + +func yaml_emitter_write_anchor(emitter *yaml_emitter_t, value []byte) bool { + if !write_all(emitter, value) { + return false + } + emitter.whitespace = false + emitter.indention = false + return true +} + +func yaml_emitter_write_tag_handle(emitter *yaml_emitter_t, value []byte) bool { + if !emitter.whitespace { + if !put(emitter, ' ') { + return false + } + } + if !write_all(emitter, value) { + return false + } + emitter.whitespace = false + emitter.indention = false + return true +} + +func yaml_emitter_write_tag_content(emitter *yaml_emitter_t, value []byte, need_whitespace bool) bool { + if need_whitespace && !emitter.whitespace { + if !put(emitter, ' ') { + return false + } + } + for i := 0; i < len(value); { + var must_write bool + switch value[i] { + case ';', '/', '?', ':', '@', '&', '=', '+', '$', ',', '_', '.', '~', '*', '\'', '(', ')', '[', ']': + must_write = true + default: + must_write = is_alpha(value, i) + } + if must_write { + if !write(emitter, value, &i) { + return false + } + } else { + w := width(value[i]) + for k := 0; k < w; k++ { + octet := value[i] + i++ + if !put(emitter, '%') { + return false + } + + c := octet >> 4 + if c < 10 { + c += '0' + } else { + c += 'A' - 10 + } + if !put(emitter, c) { + return false + } + + c = octet & 0x0f + if c < 10 { + c += '0' + } else { + c += 'A' - 10 + } + if !put(emitter, c) { + return false + } + } + } + } + emitter.whitespace = false + emitter.indention = false + return true +} + +func yaml_emitter_write_plain_scalar(emitter *yaml_emitter_t, value []byte, allow_breaks bool) bool { + if len(value) > 0 && !emitter.whitespace { + if !put(emitter, ' ') { + return false + } + } + + spaces := false + breaks := false + for i := 0; i < len(value); { + if is_space(value, i) { + if allow_breaks && !spaces && emitter.column > emitter.best_width && !is_space(value, i+1) { + if !yaml_emitter_write_indent(emitter) { + return false + } + i += width(value[i]) + } else { + if !write(emitter, value, &i) { + return false + } + } + spaces = true + } else if is_break(value, i) { + if !breaks && value[i] == '\n' { + if !put_break(emitter) { + return false + } + } + if !write_break(emitter, value, &i) { + return false + } + //emitter.indention = true + breaks = true + } else { + if breaks { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !write(emitter, value, &i) { + return false + } + emitter.indention = false + spaces = false + breaks = false + } + } + + if len(value) > 0 { + emitter.whitespace = false + } + emitter.indention = false + if emitter.root_context { + emitter.open_ended = true + } + + return true +} + +func yaml_emitter_write_single_quoted_scalar(emitter *yaml_emitter_t, value []byte, allow_breaks bool) bool { + + if !yaml_emitter_write_indicator(emitter, []byte{'\''}, true, false, false) { + return false + } + + spaces := false + breaks := false + for i := 0; i < len(value); { + if is_space(value, i) { + if allow_breaks && !spaces && emitter.column > emitter.best_width && i > 0 && i < len(value)-1 && !is_space(value, i+1) { + if !yaml_emitter_write_indent(emitter) { + return false + } + i += width(value[i]) + } else { + if !write(emitter, value, &i) { + return false + } + } + spaces = true + } else if is_break(value, i) { + if !breaks && value[i] == '\n' { + if !put_break(emitter) { + return false + } + } + if !write_break(emitter, value, &i) { + return false + } + //emitter.indention = true + breaks = true + } else { + if breaks { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if value[i] == '\'' { + if !put(emitter, '\'') { + return false + } + } + if !write(emitter, value, &i) { + return false + } + emitter.indention = false + spaces = false + breaks = false + } + } + if !yaml_emitter_write_indicator(emitter, []byte{'\''}, false, false, false) { + return false + } + emitter.whitespace = false + emitter.indention = false + return true +} + +func yaml_emitter_write_double_quoted_scalar(emitter *yaml_emitter_t, value []byte, allow_breaks bool) bool { + spaces := false + if !yaml_emitter_write_indicator(emitter, []byte{'"'}, true, false, false) { + return false + } + + for i := 0; i < len(value); { + if !is_printable(value, i) || (!emitter.unicode && !is_ascii(value, i)) || + is_bom(value, i) || is_break(value, i) || + value[i] == '"' || value[i] == '\\' { + + octet := value[i] + + var w int + var v rune + switch { + case octet&0x80 == 0x00: + w, v = 1, rune(octet&0x7F) + case octet&0xE0 == 0xC0: + w, v = 2, rune(octet&0x1F) + case octet&0xF0 == 0xE0: + w, v = 3, rune(octet&0x0F) + case octet&0xF8 == 0xF0: + w, v = 4, rune(octet&0x07) + } + for k := 1; k < w; k++ { + octet = value[i+k] + v = (v << 6) + (rune(octet) & 0x3F) + } + i += w + + if !put(emitter, '\\') { + return false + } + + var ok bool + switch v { + case 0x00: + ok = put(emitter, '0') + case 0x07: + ok = put(emitter, 'a') + case 0x08: + ok = put(emitter, 'b') + case 0x09: + ok = put(emitter, 't') + case 0x0A: + ok = put(emitter, 'n') + case 0x0b: + ok = put(emitter, 'v') + case 0x0c: + ok = put(emitter, 'f') + case 0x0d: + ok = put(emitter, 'r') + case 0x1b: + ok = put(emitter, 'e') + case 0x22: + ok = put(emitter, '"') + case 0x5c: + ok = put(emitter, '\\') + case 0x85: + ok = put(emitter, 'N') + case 0xA0: + ok = put(emitter, '_') + case 0x2028: + ok = put(emitter, 'L') + case 0x2029: + ok = put(emitter, 'P') + default: + if v <= 0xFF { + ok = put(emitter, 'x') + w = 2 + } else if v <= 0xFFFF { + ok = put(emitter, 'u') + w = 4 + } else { + ok = put(emitter, 'U') + w = 8 + } + for k := (w - 1) * 4; ok && k >= 0; k -= 4 { + digit := byte((v >> uint(k)) & 0x0F) + if digit < 10 { + ok = put(emitter, digit+'0') + } else { + ok = put(emitter, digit+'A'-10) + } + } + } + if !ok { + return false + } + spaces = false + } else if is_space(value, i) { + if allow_breaks && !spaces && emitter.column > emitter.best_width && i > 0 && i < len(value)-1 { + if !yaml_emitter_write_indent(emitter) { + return false + } + if is_space(value, i+1) { + if !put(emitter, '\\') { + return false + } + } + i += width(value[i]) + } else if !write(emitter, value, &i) { + return false + } + spaces = true + } else { + if !write(emitter, value, &i) { + return false + } + spaces = false + } + } + if !yaml_emitter_write_indicator(emitter, []byte{'"'}, false, false, false) { + return false + } + emitter.whitespace = false + emitter.indention = false + return true +} + +func yaml_emitter_write_block_scalar_hints(emitter *yaml_emitter_t, value []byte) bool { + if is_space(value, 0) || is_break(value, 0) { + indent_hint := []byte{'0' + byte(emitter.best_indent)} + if !yaml_emitter_write_indicator(emitter, indent_hint, false, false, false) { + return false + } + } + + emitter.open_ended = false + + var chomp_hint [1]byte + if len(value) == 0 { + chomp_hint[0] = '-' + } else { + i := len(value) - 1 + for value[i]&0xC0 == 0x80 { + i-- + } + if !is_break(value, i) { + chomp_hint[0] = '-' + } else if i == 0 { + chomp_hint[0] = '+' + emitter.open_ended = true + } else { + i-- + for value[i]&0xC0 == 0x80 { + i-- + } + if is_break(value, i) { + chomp_hint[0] = '+' + emitter.open_ended = true + } + } + } + if chomp_hint[0] != 0 { + if !yaml_emitter_write_indicator(emitter, chomp_hint[:], false, false, false) { + return false + } + } + return true +} + +func yaml_emitter_write_literal_scalar(emitter *yaml_emitter_t, value []byte) bool { + if !yaml_emitter_write_indicator(emitter, []byte{'|'}, true, false, false) { + return false + } + if !yaml_emitter_write_block_scalar_hints(emitter, value) { + return false + } + if !put_break(emitter) { + return false + } + //emitter.indention = true + emitter.whitespace = true + breaks := true + for i := 0; i < len(value); { + if is_break(value, i) { + if !write_break(emitter, value, &i) { + return false + } + //emitter.indention = true + breaks = true + } else { + if breaks { + if !yaml_emitter_write_indent(emitter) { + return false + } + } + if !write(emitter, value, &i) { + return false + } + emitter.indention = false + breaks = false + } + } + + return true +} + +func yaml_emitter_write_folded_scalar(emitter *yaml_emitter_t, value []byte) bool { + if !yaml_emitter_write_indicator(emitter, []byte{'>'}, true, false, false) { + return false + } + if !yaml_emitter_write_block_scalar_hints(emitter, value) { + return false + } + + if !put_break(emitter) { + return false + } + //emitter.indention = true + emitter.whitespace = true + + breaks := true + leading_spaces := true + for i := 0; i < len(value); { + if is_break(value, i) { + if !breaks && !leading_spaces && value[i] == '\n' { + k := 0 + for is_break(value, k) { + k += width(value[k]) + } + if !is_blankz(value, k) { + if !put_break(emitter) { + return false + } + } + } + if !write_break(emitter, value, &i) { + return false + } + //emitter.indention = true + breaks = true + } else { + if breaks { + if !yaml_emitter_write_indent(emitter) { + return false + } + leading_spaces = is_blank(value, i) + } + if !breaks && is_space(value, i) && !is_space(value, i+1) && emitter.column > emitter.best_width { + if !yaml_emitter_write_indent(emitter) { + return false + } + i += width(value[i]) + } else { + if !write(emitter, value, &i) { + return false + } + } + emitter.indention = false + breaks = false + } + } + return true +} + +func yaml_emitter_write_comment(emitter *yaml_emitter_t, comment []byte) bool { + breaks := false + pound := false + for i := 0; i < len(comment); { + if is_break(comment, i) { + if !write_break(emitter, comment, &i) { + return false + } + //emitter.indention = true + breaks = true + pound = false + } else { + if breaks && !yaml_emitter_write_indent(emitter) { + return false + } + if !pound { + if comment[i] != '#' && (!put(emitter, '#') || !put(emitter, ' ')) { + return false + } + pound = true + } + if !write(emitter, comment, &i) { + return false + } + emitter.indention = false + breaks = false + } + } + if !breaks && !put_break(emitter) { + return false + } + + emitter.whitespace = true + //emitter.indention = true + return true +} diff --git a/vendor/gopkg.in/yaml.v3/encode.go b/vendor/gopkg.in/yaml.v3/encode.go new file mode 100644 index 000000000..1f37271ce --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/encode.go @@ -0,0 +1,561 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package yaml + +import ( + "encoding" + "fmt" + "io" + "reflect" + "regexp" + "sort" + "strconv" + "strings" + "time" + "unicode/utf8" +) + +type encoder struct { + emitter yaml_emitter_t + event yaml_event_t + out []byte + flow bool + indent int + doneInit bool +} + +func newEncoder() *encoder { + e := &encoder{} + yaml_emitter_initialize(&e.emitter) + yaml_emitter_set_output_string(&e.emitter, &e.out) + yaml_emitter_set_unicode(&e.emitter, true) + return e +} + +func newEncoderWithWriter(w io.Writer) *encoder { + e := &encoder{} + yaml_emitter_initialize(&e.emitter) + yaml_emitter_set_output_writer(&e.emitter, w) + yaml_emitter_set_unicode(&e.emitter, true) + return e +} + +func (e *encoder) init() { + if e.doneInit { + return + } + if e.indent == 0 { + e.indent = 4 + } + e.emitter.best_indent = e.indent + yaml_stream_start_event_initialize(&e.event, yaml_UTF8_ENCODING) + e.emit() + e.doneInit = true +} + +func (e *encoder) finish() { + e.emitter.open_ended = false + yaml_stream_end_event_initialize(&e.event) + e.emit() +} + +func (e *encoder) destroy() { + yaml_emitter_delete(&e.emitter) +} + +func (e *encoder) emit() { + // This will internally delete the e.event value. + e.must(yaml_emitter_emit(&e.emitter, &e.event)) +} + +func (e *encoder) must(ok bool) { + if !ok { + msg := e.emitter.problem + if msg == "" { + msg = "unknown problem generating YAML content" + } + failf("%s", msg) + } +} + +func (e *encoder) marshalDoc(tag string, in reflect.Value) { + e.init() + var node *Node + if in.IsValid() { + node, _ = in.Interface().(*Node) + } + if node != nil && node.Kind == DocumentNode { + e.nodev(in) + } else { + yaml_document_start_event_initialize(&e.event, nil, nil, true) + e.emit() + e.marshal(tag, in) + yaml_document_end_event_initialize(&e.event, true) + e.emit() + } +} + +func (e *encoder) marshal(tag string, in reflect.Value) { + tag = shortTag(tag) + if !in.IsValid() || in.Kind() == reflect.Ptr && in.IsNil() { + e.nilv() + return + } + iface := in.Interface() + switch value := iface.(type) { + case *Node: + e.nodev(in) + return + case time.Time: + e.timev(tag, in) + return + case *time.Time: + e.timev(tag, in.Elem()) + return + case time.Duration: + e.stringv(tag, reflect.ValueOf(value.String())) + return + case Marshaler: + v, err := value.MarshalYAML() + if err != nil { + fail(err) + } + if v == nil { + e.nilv() + return + } + e.marshal(tag, reflect.ValueOf(v)) + return + case encoding.TextMarshaler: + text, err := value.MarshalText() + if err != nil { + fail(err) + } + in = reflect.ValueOf(string(text)) + case nil: + e.nilv() + return + } + switch in.Kind() { + case reflect.Interface: + e.marshal(tag, in.Elem()) + case reflect.Map: + e.mapv(tag, in) + case reflect.Ptr: + e.marshal(tag, in.Elem()) + case reflect.Struct: + e.structv(tag, in) + case reflect.Slice, reflect.Array: + e.slicev(tag, in) + case reflect.String: + e.stringv(tag, in) + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + e.intv(tag, in) + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: + e.uintv(tag, in) + case reflect.Float32, reflect.Float64: + e.floatv(tag, in) + case reflect.Bool: + e.boolv(tag, in) + default: + panic("cannot marshal type: " + in.Type().String()) + } +} + +func (e *encoder) mapv(tag string, in reflect.Value) { + e.mappingv(tag, func() { + keys := keyList(in.MapKeys()) + sort.Sort(keys) + for _, k := range keys { + e.marshal("", k) + e.marshal("", in.MapIndex(k)) + } + }) +} + +func (e *encoder) fieldByIndex(v reflect.Value, index []int) (field reflect.Value) { + for _, num := range index { + for { + if v.Kind() == reflect.Ptr { + if v.IsNil() { + return reflect.Value{} + } + v = v.Elem() + continue + } + break + } + v = v.Field(num) + } + return v +} + +func (e *encoder) structv(tag string, in reflect.Value) { + sinfo, err := getStructInfo(in.Type()) + if err != nil { + panic(err) + } + e.mappingv(tag, func() { + for _, info := range sinfo.FieldsList { + var value reflect.Value + if info.Inline == nil { + value = in.Field(info.Num) + } else { + value = e.fieldByIndex(in, info.Inline) + if !value.IsValid() { + continue + } + } + if info.OmitEmpty && isZero(value) { + continue + } + e.marshal("", reflect.ValueOf(info.Key)) + e.flow = info.Flow + e.marshal("", value) + } + if sinfo.InlineMap >= 0 { + m := in.Field(sinfo.InlineMap) + if m.Len() > 0 { + e.flow = false + keys := keyList(m.MapKeys()) + sort.Sort(keys) + for _, k := range keys { + if _, found := sinfo.FieldsMap[k.String()]; found { + panic(fmt.Sprintf("cannot have key %q in inlined map: conflicts with struct field", k.String())) + } + e.marshal("", k) + e.flow = false + e.marshal("", m.MapIndex(k)) + } + } + } + }) +} + +func (e *encoder) mappingv(tag string, f func()) { + implicit := tag == "" + style := yaml_BLOCK_MAPPING_STYLE + if e.flow { + e.flow = false + style = yaml_FLOW_MAPPING_STYLE + } + yaml_mapping_start_event_initialize(&e.event, nil, []byte(tag), implicit, style) + e.emit() + f() + yaml_mapping_end_event_initialize(&e.event) + e.emit() +} + +func (e *encoder) slicev(tag string, in reflect.Value) { + implicit := tag == "" + style := yaml_BLOCK_SEQUENCE_STYLE + if e.flow { + e.flow = false + style = yaml_FLOW_SEQUENCE_STYLE + } + e.must(yaml_sequence_start_event_initialize(&e.event, nil, []byte(tag), implicit, style)) + e.emit() + n := in.Len() + for i := 0; i < n; i++ { + e.marshal("", in.Index(i)) + } + e.must(yaml_sequence_end_event_initialize(&e.event)) + e.emit() +} + +// isBase60 returns whether s is in base 60 notation as defined in YAML 1.1. +// +// The base 60 float notation in YAML 1.1 is a terrible idea and is unsupported +// in YAML 1.2 and by this package, but these should be marshalled quoted for +// the time being for compatibility with other parsers. +func isBase60Float(s string) (result bool) { + // Fast path. + if s == "" { + return false + } + c := s[0] + if !(c == '+' || c == '-' || c >= '0' && c <= '9') || strings.IndexByte(s, ':') < 0 { + return false + } + // Do the full match. + return base60float.MatchString(s) +} + +// From http://yaml.org/type/float.html, except the regular expression there +// is bogus. In practice parsers do not enforce the "\.[0-9_]*" suffix. +var base60float = regexp.MustCompile(`^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+(?:\.[0-9_]*)?$`) + +// isOldBool returns whether s is bool notation as defined in YAML 1.1. +// +// We continue to force strings that YAML 1.1 would interpret as booleans to be +// rendered as quotes strings so that the marshalled output valid for YAML 1.1 +// parsing. +func isOldBool(s string) (result bool) { + switch s { + case "y", "Y", "yes", "Yes", "YES", "on", "On", "ON", + "n", "N", "no", "No", "NO", "off", "Off", "OFF": + return true + default: + return false + } +} + +func (e *encoder) stringv(tag string, in reflect.Value) { + var style yaml_scalar_style_t + s := in.String() + canUsePlain := true + switch { + case !utf8.ValidString(s): + if tag == binaryTag { + failf("explicitly tagged !!binary data must be base64-encoded") + } + if tag != "" { + failf("cannot marshal invalid UTF-8 data as %s", shortTag(tag)) + } + // It can't be encoded directly as YAML so use a binary tag + // and encode it as base64. + tag = binaryTag + s = encodeBase64(s) + case tag == "": + // Check to see if it would resolve to a specific + // tag when encoded unquoted. If it doesn't, + // there's no need to quote it. + rtag, _ := resolve("", s) + canUsePlain = rtag == strTag && !(isBase60Float(s) || isOldBool(s)) + } + // Note: it's possible for user code to emit invalid YAML + // if they explicitly specify a tag and a string containing + // text that's incompatible with that tag. + switch { + case strings.Contains(s, "\n"): + if e.flow { + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } else { + style = yaml_LITERAL_SCALAR_STYLE + } + case canUsePlain: + style = yaml_PLAIN_SCALAR_STYLE + default: + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + e.emitScalar(s, "", tag, style, nil, nil, nil, nil) +} + +func (e *encoder) boolv(tag string, in reflect.Value) { + var s string + if in.Bool() { + s = "true" + } else { + s = "false" + } + e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) intv(tag string, in reflect.Value) { + s := strconv.FormatInt(in.Int(), 10) + e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) uintv(tag string, in reflect.Value) { + s := strconv.FormatUint(in.Uint(), 10) + e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) timev(tag string, in reflect.Value) { + t := in.Interface().(time.Time) + s := t.Format(time.RFC3339Nano) + e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) floatv(tag string, in reflect.Value) { + // Issue #352: When formatting, use the precision of the underlying value + precision := 64 + if in.Kind() == reflect.Float32 { + precision = 32 + } + + s := strconv.FormatFloat(in.Float(), 'g', -1, precision) + switch s { + case "+Inf": + s = ".inf" + case "-Inf": + s = "-.inf" + case "NaN": + s = ".nan" + } + e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) nilv() { + e.emitScalar("null", "", "", yaml_PLAIN_SCALAR_STYLE, nil, nil, nil, nil) +} + +func (e *encoder) emitScalar(value, anchor, tag string, style yaml_scalar_style_t, head, line, foot, tail []byte) { + // TODO Kill this function. Replace all initialize calls by their underlining Go literals. + implicit := tag == "" + if !implicit { + tag = longTag(tag) + } + e.must(yaml_scalar_event_initialize(&e.event, []byte(anchor), []byte(tag), []byte(value), implicit, implicit, style)) + e.event.head_comment = head + e.event.line_comment = line + e.event.foot_comment = foot + e.event.tail_comment = tail + e.emit() +} + +func (e *encoder) nodev(in reflect.Value) { + e.node(in.Interface().(*Node), "") +} + +func (e *encoder) node(node *Node, tail string) { + // If the tag was not explicitly requested, and dropping it won't change the + // implicit tag of the value, don't include it in the presentation. + var tag = node.Tag + var stag = shortTag(tag) + var rtag string + var forceQuoting bool + if tag != "" && node.Style&TaggedStyle == 0 { + if node.Kind == ScalarNode { + if stag == strTag && node.Style&(SingleQuotedStyle|DoubleQuotedStyle|LiteralStyle|FoldedStyle) != 0 { + tag = "" + } else { + rtag, _ = resolve("", node.Value) + if rtag == stag { + tag = "" + } else if stag == strTag { + tag = "" + forceQuoting = true + } + } + } else { + switch node.Kind { + case MappingNode: + rtag = mapTag + case SequenceNode: + rtag = seqTag + } + if rtag == stag { + tag = "" + } + } + } + + switch node.Kind { + case DocumentNode: + yaml_document_start_event_initialize(&e.event, nil, nil, true) + e.event.head_comment = []byte(node.HeadComment) + e.emit() + for _, node := range node.Content { + e.node(node, "") + } + yaml_document_end_event_initialize(&e.event, true) + e.event.foot_comment = []byte(node.FootComment) + e.emit() + + case SequenceNode: + style := yaml_BLOCK_SEQUENCE_STYLE + if node.Style&FlowStyle != 0 { + style = yaml_FLOW_SEQUENCE_STYLE + } + e.must(yaml_sequence_start_event_initialize(&e.event, []byte(node.Anchor), []byte(tag), tag == "", style)) + e.event.head_comment = []byte(node.HeadComment) + e.emit() + for _, node := range node.Content { + e.node(node, "") + } + e.must(yaml_sequence_end_event_initialize(&e.event)) + e.event.line_comment = []byte(node.LineComment) + e.event.foot_comment = []byte(node.FootComment) + e.emit() + + case MappingNode: + style := yaml_BLOCK_MAPPING_STYLE + if node.Style&FlowStyle != 0 { + style = yaml_FLOW_MAPPING_STYLE + } + yaml_mapping_start_event_initialize(&e.event, []byte(node.Anchor), []byte(tag), tag == "", style) + e.event.tail_comment = []byte(tail) + e.event.head_comment = []byte(node.HeadComment) + e.emit() + + // The tail logic below moves the foot comment of prior keys to the following key, + // since the value for each key may be a nested structure and the foot needs to be + // processed only the entirety of the value is streamed. The last tail is processed + // with the mapping end event. + var tail string + for i := 0; i+1 < len(node.Content); i += 2 { + k := node.Content[i] + foot := k.FootComment + if foot != "" { + kopy := *k + kopy.FootComment = "" + k = &kopy + } + e.node(k, tail) + tail = foot + + v := node.Content[i+1] + e.node(v, "") + } + + yaml_mapping_end_event_initialize(&e.event) + e.event.tail_comment = []byte(tail) + e.event.line_comment = []byte(node.LineComment) + e.event.foot_comment = []byte(node.FootComment) + e.emit() + + case AliasNode: + yaml_alias_event_initialize(&e.event, []byte(node.Value)) + e.event.head_comment = []byte(node.HeadComment) + e.event.line_comment = []byte(node.LineComment) + e.event.foot_comment = []byte(node.FootComment) + e.emit() + + case ScalarNode: + value := node.Value + if !utf8.ValidString(value) { + if tag == binaryTag { + failf("explicitly tagged !!binary data must be base64-encoded") + } + if tag != "" { + failf("cannot marshal invalid UTF-8 data as %s", shortTag(tag)) + } + // It can't be encoded directly as YAML so use a binary tag + // and encode it as base64. + tag = binaryTag + value = encodeBase64(value) + } + + style := yaml_PLAIN_SCALAR_STYLE + switch { + case node.Style&DoubleQuotedStyle != 0: + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + case node.Style&SingleQuotedStyle != 0: + style = yaml_SINGLE_QUOTED_SCALAR_STYLE + case node.Style&LiteralStyle != 0: + style = yaml_LITERAL_SCALAR_STYLE + case node.Style&FoldedStyle != 0: + style = yaml_FOLDED_SCALAR_STYLE + case strings.Contains(value, "\n"): + style = yaml_LITERAL_SCALAR_STYLE + case forceQuoting: + style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + + e.emitScalar(value, node.Anchor, tag, style, []byte(node.HeadComment), []byte(node.LineComment), []byte(node.FootComment), []byte(tail)) + } +} diff --git a/vendor/gopkg.in/yaml.v3/go.mod b/vendor/gopkg.in/yaml.v3/go.mod new file mode 100644 index 000000000..f407ea321 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/go.mod @@ -0,0 +1,5 @@ +module "gopkg.in/yaml.v3" + +require ( + "gopkg.in/check.v1" v0.0.0-20161208181325-20d25e280405 +) diff --git a/vendor/gopkg.in/yaml.v3/parserc.go b/vendor/gopkg.in/yaml.v3/parserc.go new file mode 100644 index 000000000..aea9050b8 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/parserc.go @@ -0,0 +1,1229 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "bytes" +) + +// The parser implements the following grammar: +// +// stream ::= STREAM-START implicit_document? explicit_document* STREAM-END +// implicit_document ::= block_node DOCUMENT-END* +// explicit_document ::= DIRECTIVE* DOCUMENT-START block_node? DOCUMENT-END* +// block_node_or_indentless_sequence ::= +// ALIAS +// | properties (block_content | indentless_block_sequence)? +// | block_content +// | indentless_block_sequence +// block_node ::= ALIAS +// | properties block_content? +// | block_content +// flow_node ::= ALIAS +// | properties flow_content? +// | flow_content +// properties ::= TAG ANCHOR? | ANCHOR TAG? +// block_content ::= block_collection | flow_collection | SCALAR +// flow_content ::= flow_collection | SCALAR +// block_collection ::= block_sequence | block_mapping +// flow_collection ::= flow_sequence | flow_mapping +// block_sequence ::= BLOCK-SEQUENCE-START (BLOCK-ENTRY block_node?)* BLOCK-END +// indentless_sequence ::= (BLOCK-ENTRY block_node?)+ +// block_mapping ::= BLOCK-MAPPING_START +// ((KEY block_node_or_indentless_sequence?)? +// (VALUE block_node_or_indentless_sequence?)?)* +// BLOCK-END +// flow_sequence ::= FLOW-SEQUENCE-START +// (flow_sequence_entry FLOW-ENTRY)* +// flow_sequence_entry? +// FLOW-SEQUENCE-END +// flow_sequence_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// flow_mapping ::= FLOW-MAPPING-START +// (flow_mapping_entry FLOW-ENTRY)* +// flow_mapping_entry? +// FLOW-MAPPING-END +// flow_mapping_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? + +// Peek the next token in the token queue. +func peek_token(parser *yaml_parser_t) *yaml_token_t { + if parser.token_available || yaml_parser_fetch_more_tokens(parser) { + token := &parser.tokens[parser.tokens_head] + yaml_parser_unfold_comments(parser, token) + return token + } + return nil +} + +// yaml_parser_unfold_comments walks through the comments queue and joins all +// comments behind the position of the provided token into the respective +// top-level comment slices in the parser. +func yaml_parser_unfold_comments(parser *yaml_parser_t, token *yaml_token_t) { + for parser.comments_head < len(parser.comments) && token.start_mark.index >= parser.comments[parser.comments_head].token_mark.index { + comment := &parser.comments[parser.comments_head] + if len(comment.head) > 0 { + if token.typ == yaml_BLOCK_END_TOKEN { + // No heads on ends, so keep comment.head for a follow up token. + break + } + if len(parser.head_comment) > 0 { + parser.head_comment = append(parser.head_comment, '\n') + } + parser.head_comment = append(parser.head_comment, comment.head...) + } + if len(comment.foot) > 0 { + if len(parser.foot_comment) > 0 { + parser.foot_comment = append(parser.foot_comment, '\n') + } + parser.foot_comment = append(parser.foot_comment, comment.foot...) + } + if len(comment.line) > 0 { + if len(parser.line_comment) > 0 { + parser.line_comment = append(parser.line_comment, '\n') + } + parser.line_comment = append(parser.line_comment, comment.line...) + } + *comment = yaml_comment_t{} + parser.comments_head++ + } +} + +// Remove the next token from the queue (must be called after peek_token). +func skip_token(parser *yaml_parser_t) { + parser.token_available = false + parser.tokens_parsed++ + parser.stream_end_produced = parser.tokens[parser.tokens_head].typ == yaml_STREAM_END_TOKEN + parser.tokens_head++ +} + +// Get the next event. +func yaml_parser_parse(parser *yaml_parser_t, event *yaml_event_t) bool { + // Erase the event object. + *event = yaml_event_t{} + + // No events after the end of the stream or error. + if parser.stream_end_produced || parser.error != yaml_NO_ERROR || parser.state == yaml_PARSE_END_STATE { + return true + } + + // Generate the next event. + return yaml_parser_state_machine(parser, event) +} + +// Set parser error. +func yaml_parser_set_parser_error(parser *yaml_parser_t, problem string, problem_mark yaml_mark_t) bool { + parser.error = yaml_PARSER_ERROR + parser.problem = problem + parser.problem_mark = problem_mark + return false +} + +func yaml_parser_set_parser_error_context(parser *yaml_parser_t, context string, context_mark yaml_mark_t, problem string, problem_mark yaml_mark_t) bool { + parser.error = yaml_PARSER_ERROR + parser.context = context + parser.context_mark = context_mark + parser.problem = problem + parser.problem_mark = problem_mark + return false +} + +// State dispatcher. +func yaml_parser_state_machine(parser *yaml_parser_t, event *yaml_event_t) bool { + //trace("yaml_parser_state_machine", "state:", parser.state.String()) + + switch parser.state { + case yaml_PARSE_STREAM_START_STATE: + return yaml_parser_parse_stream_start(parser, event) + + case yaml_PARSE_IMPLICIT_DOCUMENT_START_STATE: + return yaml_parser_parse_document_start(parser, event, true) + + case yaml_PARSE_DOCUMENT_START_STATE: + return yaml_parser_parse_document_start(parser, event, false) + + case yaml_PARSE_DOCUMENT_CONTENT_STATE: + return yaml_parser_parse_document_content(parser, event) + + case yaml_PARSE_DOCUMENT_END_STATE: + return yaml_parser_parse_document_end(parser, event) + + case yaml_PARSE_BLOCK_NODE_STATE: + return yaml_parser_parse_node(parser, event, true, false) + + case yaml_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE: + return yaml_parser_parse_node(parser, event, true, true) + + case yaml_PARSE_FLOW_NODE_STATE: + return yaml_parser_parse_node(parser, event, false, false) + + case yaml_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE: + return yaml_parser_parse_block_sequence_entry(parser, event, true) + + case yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE: + return yaml_parser_parse_block_sequence_entry(parser, event, false) + + case yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE: + return yaml_parser_parse_indentless_sequence_entry(parser, event) + + case yaml_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE: + return yaml_parser_parse_block_mapping_key(parser, event, true) + + case yaml_PARSE_BLOCK_MAPPING_KEY_STATE: + return yaml_parser_parse_block_mapping_key(parser, event, false) + + case yaml_PARSE_BLOCK_MAPPING_VALUE_STATE: + return yaml_parser_parse_block_mapping_value(parser, event) + + case yaml_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE: + return yaml_parser_parse_flow_sequence_entry(parser, event, true) + + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE: + return yaml_parser_parse_flow_sequence_entry(parser, event, false) + + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE: + return yaml_parser_parse_flow_sequence_entry_mapping_key(parser, event) + + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE: + return yaml_parser_parse_flow_sequence_entry_mapping_value(parser, event) + + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE: + return yaml_parser_parse_flow_sequence_entry_mapping_end(parser, event) + + case yaml_PARSE_FLOW_MAPPING_FIRST_KEY_STATE: + return yaml_parser_parse_flow_mapping_key(parser, event, true) + + case yaml_PARSE_FLOW_MAPPING_KEY_STATE: + return yaml_parser_parse_flow_mapping_key(parser, event, false) + + case yaml_PARSE_FLOW_MAPPING_VALUE_STATE: + return yaml_parser_parse_flow_mapping_value(parser, event, false) + + case yaml_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE: + return yaml_parser_parse_flow_mapping_value(parser, event, true) + + default: + panic("invalid parser state") + } +} + +// Parse the production: +// stream ::= STREAM-START implicit_document? explicit_document* STREAM-END +// ************ +func yaml_parser_parse_stream_start(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_STREAM_START_TOKEN { + return yaml_parser_set_parser_error(parser, "did not find expected ", token.start_mark) + } + parser.state = yaml_PARSE_IMPLICIT_DOCUMENT_START_STATE + *event = yaml_event_t{ + typ: yaml_STREAM_START_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + encoding: token.encoding, + } + skip_token(parser) + return true +} + +// Parse the productions: +// implicit_document ::= block_node DOCUMENT-END* +// * +// explicit_document ::= DIRECTIVE* DOCUMENT-START block_node? DOCUMENT-END* +// ************************* +func yaml_parser_parse_document_start(parser *yaml_parser_t, event *yaml_event_t, implicit bool) bool { + + token := peek_token(parser) + if token == nil { + return false + } + + // Parse extra document end indicators. + if !implicit { + for token.typ == yaml_DOCUMENT_END_TOKEN { + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } + } + + if implicit && token.typ != yaml_VERSION_DIRECTIVE_TOKEN && + token.typ != yaml_TAG_DIRECTIVE_TOKEN && + token.typ != yaml_DOCUMENT_START_TOKEN && + token.typ != yaml_STREAM_END_TOKEN { + // Parse an implicit document. + if !yaml_parser_process_directives(parser, nil, nil) { + return false + } + parser.states = append(parser.states, yaml_PARSE_DOCUMENT_END_STATE) + parser.state = yaml_PARSE_BLOCK_NODE_STATE + + var head_comment []byte + if len(parser.head_comment) > 0 { + // [Go] Scan the header comment backwards, and if an empty line is found, break + // the header so the part before the last empty line goes into the + // document header, while the bottom of it goes into a follow up event. + for i := len(parser.head_comment) - 1; i > 0; i-- { + if parser.head_comment[i] == '\n' { + if i == len(parser.head_comment)-1 { + head_comment = parser.head_comment[:i] + parser.head_comment = parser.head_comment[i+1:] + break + } else if parser.head_comment[i-1] == '\n' { + head_comment = parser.head_comment[:i-1] + parser.head_comment = parser.head_comment[i+1:] + break + } + } + } + } + + *event = yaml_event_t{ + typ: yaml_DOCUMENT_START_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + + head_comment: head_comment, + } + + } else if token.typ != yaml_STREAM_END_TOKEN { + // Parse an explicit document. + var version_directive *yaml_version_directive_t + var tag_directives []yaml_tag_directive_t + start_mark := token.start_mark + if !yaml_parser_process_directives(parser, &version_directive, &tag_directives) { + return false + } + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_DOCUMENT_START_TOKEN { + yaml_parser_set_parser_error(parser, + "did not find expected ", token.start_mark) + return false + } + parser.states = append(parser.states, yaml_PARSE_DOCUMENT_END_STATE) + parser.state = yaml_PARSE_DOCUMENT_CONTENT_STATE + end_mark := token.end_mark + + *event = yaml_event_t{ + typ: yaml_DOCUMENT_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + version_directive: version_directive, + tag_directives: tag_directives, + implicit: false, + } + skip_token(parser) + + } else { + // Parse the stream end. + parser.state = yaml_PARSE_END_STATE + *event = yaml_event_t{ + typ: yaml_STREAM_END_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + } + skip_token(parser) + } + + return true +} + +// Parse the productions: +// explicit_document ::= DIRECTIVE* DOCUMENT-START block_node? DOCUMENT-END* +// *********** +// +func yaml_parser_parse_document_content(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + + if token.typ == yaml_VERSION_DIRECTIVE_TOKEN || + token.typ == yaml_TAG_DIRECTIVE_TOKEN || + token.typ == yaml_DOCUMENT_START_TOKEN || + token.typ == yaml_DOCUMENT_END_TOKEN || + token.typ == yaml_STREAM_END_TOKEN { + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + return yaml_parser_process_empty_scalar(parser, event, + token.start_mark) + } + return yaml_parser_parse_node(parser, event, true, false) +} + +// Parse the productions: +// implicit_document ::= block_node DOCUMENT-END* +// ************* +// explicit_document ::= DIRECTIVE* DOCUMENT-START block_node? DOCUMENT-END* +// +func yaml_parser_parse_document_end(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + + start_mark := token.start_mark + end_mark := token.start_mark + + implicit := true + if token.typ == yaml_DOCUMENT_END_TOKEN { + end_mark = token.end_mark + skip_token(parser) + implicit = false + } + + parser.tag_directives = parser.tag_directives[:0] + + parser.state = yaml_PARSE_DOCUMENT_START_STATE + *event = yaml_event_t{ + typ: yaml_DOCUMENT_END_EVENT, + start_mark: start_mark, + end_mark: end_mark, + implicit: implicit, + } + yaml_parser_set_event_comments(parser, event) + if len(event.head_comment) > 0 && len(event.foot_comment) == 0 { + event.foot_comment = event.head_comment + event.head_comment = nil + } + return true +} + +func yaml_parser_set_event_comments(parser *yaml_parser_t, event *yaml_event_t) { + event.head_comment = parser.head_comment + event.line_comment = parser.line_comment + event.foot_comment = parser.foot_comment + parser.head_comment = nil + parser.line_comment = nil + parser.foot_comment = nil + parser.tail_comment = nil + parser.stem_comment = nil +} + +// Parse the productions: +// block_node_or_indentless_sequence ::= +// ALIAS +// ***** +// | properties (block_content | indentless_block_sequence)? +// ********** * +// | block_content | indentless_block_sequence +// * +// block_node ::= ALIAS +// ***** +// | properties block_content? +// ********** * +// | block_content +// * +// flow_node ::= ALIAS +// ***** +// | properties flow_content? +// ********** * +// | flow_content +// * +// properties ::= TAG ANCHOR? | ANCHOR TAG? +// ************************* +// block_content ::= block_collection | flow_collection | SCALAR +// ****** +// flow_content ::= flow_collection | SCALAR +// ****** +func yaml_parser_parse_node(parser *yaml_parser_t, event *yaml_event_t, block, indentless_sequence bool) bool { + //defer trace("yaml_parser_parse_node", "block:", block, "indentless_sequence:", indentless_sequence)() + + token := peek_token(parser) + if token == nil { + return false + } + + if token.typ == yaml_ALIAS_TOKEN { + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + *event = yaml_event_t{ + typ: yaml_ALIAS_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + anchor: token.value, + } + yaml_parser_set_event_comments(parser, event) + skip_token(parser) + return true + } + + start_mark := token.start_mark + end_mark := token.start_mark + + var tag_token bool + var tag_handle, tag_suffix, anchor []byte + var tag_mark yaml_mark_t + if token.typ == yaml_ANCHOR_TOKEN { + anchor = token.value + start_mark = token.start_mark + end_mark = token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ == yaml_TAG_TOKEN { + tag_token = true + tag_handle = token.value + tag_suffix = token.suffix + tag_mark = token.start_mark + end_mark = token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } + } else if token.typ == yaml_TAG_TOKEN { + tag_token = true + tag_handle = token.value + tag_suffix = token.suffix + start_mark = token.start_mark + tag_mark = token.start_mark + end_mark = token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ == yaml_ANCHOR_TOKEN { + anchor = token.value + end_mark = token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } + } + + var tag []byte + if tag_token { + if len(tag_handle) == 0 { + tag = tag_suffix + tag_suffix = nil + } else { + for i := range parser.tag_directives { + if bytes.Equal(parser.tag_directives[i].handle, tag_handle) { + tag = append([]byte(nil), parser.tag_directives[i].prefix...) + tag = append(tag, tag_suffix...) + break + } + } + if len(tag) == 0 { + yaml_parser_set_parser_error_context(parser, + "while parsing a node", start_mark, + "found undefined tag handle", tag_mark) + return false + } + } + } + + implicit := len(tag) == 0 + if indentless_sequence && token.typ == yaml_BLOCK_ENTRY_TOKEN { + end_mark = token.end_mark + parser.state = yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE + *event = yaml_event_t{ + typ: yaml_SEQUENCE_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(yaml_BLOCK_SEQUENCE_STYLE), + } + return true + } + if token.typ == yaml_SCALAR_TOKEN { + var plain_implicit, quoted_implicit bool + end_mark = token.end_mark + if (len(tag) == 0 && token.style == yaml_PLAIN_SCALAR_STYLE) || (len(tag) == 1 && tag[0] == '!') { + plain_implicit = true + } else if len(tag) == 0 { + quoted_implicit = true + } + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + + *event = yaml_event_t{ + typ: yaml_SCALAR_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + value: token.value, + implicit: plain_implicit, + quoted_implicit: quoted_implicit, + style: yaml_style_t(token.style), + } + yaml_parser_set_event_comments(parser, event) + skip_token(parser) + return true + } + if token.typ == yaml_FLOW_SEQUENCE_START_TOKEN { + // [Go] Some of the events below can be merged as they differ only on style. + end_mark = token.end_mark + parser.state = yaml_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE + *event = yaml_event_t{ + typ: yaml_SEQUENCE_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(yaml_FLOW_SEQUENCE_STYLE), + } + yaml_parser_set_event_comments(parser, event) + return true + } + if token.typ == yaml_FLOW_MAPPING_START_TOKEN { + end_mark = token.end_mark + parser.state = yaml_PARSE_FLOW_MAPPING_FIRST_KEY_STATE + *event = yaml_event_t{ + typ: yaml_MAPPING_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(yaml_FLOW_MAPPING_STYLE), + } + yaml_parser_set_event_comments(parser, event) + return true + } + if block && token.typ == yaml_BLOCK_SEQUENCE_START_TOKEN { + end_mark = token.end_mark + parser.state = yaml_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE + *event = yaml_event_t{ + typ: yaml_SEQUENCE_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(yaml_BLOCK_SEQUENCE_STYLE), + } + if parser.stem_comment != nil { + event.head_comment = parser.stem_comment + parser.stem_comment = nil + } + return true + } + if block && token.typ == yaml_BLOCK_MAPPING_START_TOKEN { + end_mark = token.end_mark + parser.state = yaml_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE + *event = yaml_event_t{ + typ: yaml_MAPPING_START_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + style: yaml_style_t(yaml_BLOCK_MAPPING_STYLE), + } + return true + } + if len(anchor) > 0 || len(tag) > 0 { + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + + *event = yaml_event_t{ + typ: yaml_SCALAR_EVENT, + start_mark: start_mark, + end_mark: end_mark, + anchor: anchor, + tag: tag, + implicit: implicit, + quoted_implicit: false, + style: yaml_style_t(yaml_PLAIN_SCALAR_STYLE), + } + return true + } + + context := "while parsing a flow node" + if block { + context = "while parsing a block node" + } + yaml_parser_set_parser_error_context(parser, context, start_mark, + "did not find expected node content", token.start_mark) + return false +} + +// Parse the productions: +// block_sequence ::= BLOCK-SEQUENCE-START (BLOCK-ENTRY block_node?)* BLOCK-END +// ******************** *********** * ********* +// +func yaml_parser_parse_block_sequence_entry(parser *yaml_parser_t, event *yaml_event_t, first bool) bool { + if first { + token := peek_token(parser) + parser.marks = append(parser.marks, token.start_mark) + skip_token(parser) + } + + token := peek_token(parser) + if token == nil { + return false + } + + if token.typ == yaml_BLOCK_ENTRY_TOKEN { + mark := token.end_mark + prior_head := len(parser.head_comment) + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if prior_head > 0 && token.typ == yaml_BLOCK_SEQUENCE_START_TOKEN { + // [Go] It's a sequence under a sequence entry, so the former head comment + // is for the list itself, not the first list item under it. + parser.stem_comment = parser.head_comment[:prior_head] + if len(parser.head_comment) == prior_head { + parser.head_comment = nil + } else { + // Copy suffix to prevent very strange bugs if someone ever appends + // further bytes to the prefix in the stem_comment slice above. + parser.head_comment = append([]byte(nil), parser.head_comment[prior_head+1:]...) + } + + } + if token.typ != yaml_BLOCK_ENTRY_TOKEN && token.typ != yaml_BLOCK_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE) + return yaml_parser_parse_node(parser, event, true, false) + } else { + parser.state = yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE + return yaml_parser_process_empty_scalar(parser, event, mark) + } + } + if token.typ == yaml_BLOCK_END_TOKEN { + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + + *event = yaml_event_t{ + typ: yaml_SEQUENCE_END_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + } + + skip_token(parser) + return true + } + + context_mark := parser.marks[len(parser.marks)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + return yaml_parser_set_parser_error_context(parser, + "while parsing a block collection", context_mark, + "did not find expected '-' indicator", token.start_mark) +} + +// Parse the productions: +// indentless_sequence ::= (BLOCK-ENTRY block_node?)+ +// *********** * +func yaml_parser_parse_indentless_sequence_entry(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + + if token.typ == yaml_BLOCK_ENTRY_TOKEN { + mark := token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_BLOCK_ENTRY_TOKEN && + token.typ != yaml_KEY_TOKEN && + token.typ != yaml_VALUE_TOKEN && + token.typ != yaml_BLOCK_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE) + return yaml_parser_parse_node(parser, event, true, false) + } + parser.state = yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE + return yaml_parser_process_empty_scalar(parser, event, mark) + } + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + + *event = yaml_event_t{ + typ: yaml_SEQUENCE_END_EVENT, + start_mark: token.start_mark, + end_mark: token.start_mark, // [Go] Shouldn't this be token.end_mark? + } + return true +} + +// Parse the productions: +// block_mapping ::= BLOCK-MAPPING_START +// ******************* +// ((KEY block_node_or_indentless_sequence?)? +// *** * +// (VALUE block_node_or_indentless_sequence?)?)* +// +// BLOCK-END +// ********* +// +func yaml_parser_parse_block_mapping_key(parser *yaml_parser_t, event *yaml_event_t, first bool) bool { + if first { + token := peek_token(parser) + parser.marks = append(parser.marks, token.start_mark) + skip_token(parser) + } + + token := peek_token(parser) + if token == nil { + return false + } + + // [Go] A tail comment was left from the prior mapping value processed. Emit an event + // as it needs to be processed with that value and not the following key. + if len(parser.tail_comment) > 0 { + *event = yaml_event_t{ + typ: yaml_TAIL_COMMENT_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + foot_comment: parser.tail_comment, + } + parser.tail_comment = nil + return true + } + + if token.typ == yaml_KEY_TOKEN { + mark := token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_KEY_TOKEN && + token.typ != yaml_VALUE_TOKEN && + token.typ != yaml_BLOCK_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_BLOCK_MAPPING_VALUE_STATE) + return yaml_parser_parse_node(parser, event, true, true) + } else { + parser.state = yaml_PARSE_BLOCK_MAPPING_VALUE_STATE + return yaml_parser_process_empty_scalar(parser, event, mark) + } + } else if token.typ == yaml_BLOCK_END_TOKEN { + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + *event = yaml_event_t{ + typ: yaml_MAPPING_END_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + } + yaml_parser_set_event_comments(parser, event) + skip_token(parser) + return true + } + + context_mark := parser.marks[len(parser.marks)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + return yaml_parser_set_parser_error_context(parser, + "while parsing a block mapping", context_mark, + "did not find expected key", token.start_mark) +} + +// Parse the productions: +// block_mapping ::= BLOCK-MAPPING_START +// +// ((KEY block_node_or_indentless_sequence?)? +// +// (VALUE block_node_or_indentless_sequence?)?)* +// ***** * +// BLOCK-END +// +// +func yaml_parser_parse_block_mapping_value(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + if token.typ == yaml_VALUE_TOKEN { + mark := token.end_mark + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_KEY_TOKEN && + token.typ != yaml_VALUE_TOKEN && + token.typ != yaml_BLOCK_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_BLOCK_MAPPING_KEY_STATE) + return yaml_parser_parse_node(parser, event, true, true) + } + parser.state = yaml_PARSE_BLOCK_MAPPING_KEY_STATE + return yaml_parser_process_empty_scalar(parser, event, mark) + } + parser.state = yaml_PARSE_BLOCK_MAPPING_KEY_STATE + return yaml_parser_process_empty_scalar(parser, event, token.start_mark) +} + +// Parse the productions: +// flow_sequence ::= FLOW-SEQUENCE-START +// ******************* +// (flow_sequence_entry FLOW-ENTRY)* +// * ********** +// flow_sequence_entry? +// * +// FLOW-SEQUENCE-END +// ***************** +// flow_sequence_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// * +// +func yaml_parser_parse_flow_sequence_entry(parser *yaml_parser_t, event *yaml_event_t, first bool) bool { + if first { + token := peek_token(parser) + parser.marks = append(parser.marks, token.start_mark) + skip_token(parser) + } + token := peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_FLOW_SEQUENCE_END_TOKEN { + if !first { + if token.typ == yaml_FLOW_ENTRY_TOKEN { + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } else { + context_mark := parser.marks[len(parser.marks)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + return yaml_parser_set_parser_error_context(parser, + "while parsing a flow sequence", context_mark, + "did not find expected ',' or ']'", token.start_mark) + } + } + + if token.typ == yaml_KEY_TOKEN { + parser.state = yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE + *event = yaml_event_t{ + typ: yaml_MAPPING_START_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + implicit: true, + style: yaml_style_t(yaml_FLOW_MAPPING_STYLE), + } + skip_token(parser) + return true + } else if token.typ != yaml_FLOW_SEQUENCE_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } + } + + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + + *event = yaml_event_t{ + typ: yaml_SEQUENCE_END_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + } + yaml_parser_set_event_comments(parser, event) + + skip_token(parser) + return true +} + +// +// Parse the productions: +// flow_sequence_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// *** * +// +func yaml_parser_parse_flow_sequence_entry_mapping_key(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_VALUE_TOKEN && + token.typ != yaml_FLOW_ENTRY_TOKEN && + token.typ != yaml_FLOW_SEQUENCE_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } + mark := token.end_mark + skip_token(parser) + parser.state = yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE + return yaml_parser_process_empty_scalar(parser, event, mark) +} + +// Parse the productions: +// flow_sequence_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// ***** * +// +func yaml_parser_parse_flow_sequence_entry_mapping_value(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + if token.typ == yaml_VALUE_TOKEN { + skip_token(parser) + token := peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_FLOW_ENTRY_TOKEN && token.typ != yaml_FLOW_SEQUENCE_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } + } + parser.state = yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE + return yaml_parser_process_empty_scalar(parser, event, token.start_mark) +} + +// Parse the productions: +// flow_sequence_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// * +// +func yaml_parser_parse_flow_sequence_entry_mapping_end(parser *yaml_parser_t, event *yaml_event_t) bool { + token := peek_token(parser) + if token == nil { + return false + } + parser.state = yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE + *event = yaml_event_t{ + typ: yaml_MAPPING_END_EVENT, + start_mark: token.start_mark, + end_mark: token.start_mark, // [Go] Shouldn't this be end_mark? + } + return true +} + +// Parse the productions: +// flow_mapping ::= FLOW-MAPPING-START +// ****************** +// (flow_mapping_entry FLOW-ENTRY)* +// * ********** +// flow_mapping_entry? +// ****************** +// FLOW-MAPPING-END +// **************** +// flow_mapping_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// * *** * +// +func yaml_parser_parse_flow_mapping_key(parser *yaml_parser_t, event *yaml_event_t, first bool) bool { + if first { + token := peek_token(parser) + parser.marks = append(parser.marks, token.start_mark) + skip_token(parser) + } + + token := peek_token(parser) + if token == nil { + return false + } + + if token.typ != yaml_FLOW_MAPPING_END_TOKEN { + if !first { + if token.typ == yaml_FLOW_ENTRY_TOKEN { + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } else { + context_mark := parser.marks[len(parser.marks)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + return yaml_parser_set_parser_error_context(parser, + "while parsing a flow mapping", context_mark, + "did not find expected ',' or '}'", token.start_mark) + } + } + + if token.typ == yaml_KEY_TOKEN { + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_VALUE_TOKEN && + token.typ != yaml_FLOW_ENTRY_TOKEN && + token.typ != yaml_FLOW_MAPPING_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_MAPPING_VALUE_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } else { + parser.state = yaml_PARSE_FLOW_MAPPING_VALUE_STATE + return yaml_parser_process_empty_scalar(parser, event, token.start_mark) + } + } else if token.typ != yaml_FLOW_MAPPING_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } + } + + parser.state = parser.states[len(parser.states)-1] + parser.states = parser.states[:len(parser.states)-1] + parser.marks = parser.marks[:len(parser.marks)-1] + *event = yaml_event_t{ + typ: yaml_MAPPING_END_EVENT, + start_mark: token.start_mark, + end_mark: token.end_mark, + } + yaml_parser_set_event_comments(parser, event) + skip_token(parser) + return true +} + +// Parse the productions: +// flow_mapping_entry ::= flow_node | KEY flow_node? (VALUE flow_node?)? +// * ***** * +// +func yaml_parser_parse_flow_mapping_value(parser *yaml_parser_t, event *yaml_event_t, empty bool) bool { + token := peek_token(parser) + if token == nil { + return false + } + if empty { + parser.state = yaml_PARSE_FLOW_MAPPING_KEY_STATE + return yaml_parser_process_empty_scalar(parser, event, token.start_mark) + } + if token.typ == yaml_VALUE_TOKEN { + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + if token.typ != yaml_FLOW_ENTRY_TOKEN && token.typ != yaml_FLOW_MAPPING_END_TOKEN { + parser.states = append(parser.states, yaml_PARSE_FLOW_MAPPING_KEY_STATE) + return yaml_parser_parse_node(parser, event, false, false) + } + } + parser.state = yaml_PARSE_FLOW_MAPPING_KEY_STATE + return yaml_parser_process_empty_scalar(parser, event, token.start_mark) +} + +// Generate an empty scalar event. +func yaml_parser_process_empty_scalar(parser *yaml_parser_t, event *yaml_event_t, mark yaml_mark_t) bool { + *event = yaml_event_t{ + typ: yaml_SCALAR_EVENT, + start_mark: mark, + end_mark: mark, + value: nil, // Empty + implicit: true, + style: yaml_style_t(yaml_PLAIN_SCALAR_STYLE), + } + return true +} + +var default_tag_directives = []yaml_tag_directive_t{ + {[]byte("!"), []byte("!")}, + {[]byte("!!"), []byte("tag:yaml.org,2002:")}, +} + +// Parse directives. +func yaml_parser_process_directives(parser *yaml_parser_t, + version_directive_ref **yaml_version_directive_t, + tag_directives_ref *[]yaml_tag_directive_t) bool { + + var version_directive *yaml_version_directive_t + var tag_directives []yaml_tag_directive_t + + token := peek_token(parser) + if token == nil { + return false + } + + for token.typ == yaml_VERSION_DIRECTIVE_TOKEN || token.typ == yaml_TAG_DIRECTIVE_TOKEN { + if token.typ == yaml_VERSION_DIRECTIVE_TOKEN { + if version_directive != nil { + yaml_parser_set_parser_error(parser, + "found duplicate %YAML directive", token.start_mark) + return false + } + if token.major != 1 || token.minor != 1 { + yaml_parser_set_parser_error(parser, + "found incompatible YAML document", token.start_mark) + return false + } + version_directive = &yaml_version_directive_t{ + major: token.major, + minor: token.minor, + } + } else if token.typ == yaml_TAG_DIRECTIVE_TOKEN { + value := yaml_tag_directive_t{ + handle: token.value, + prefix: token.prefix, + } + if !yaml_parser_append_tag_directive(parser, value, false, token.start_mark) { + return false + } + tag_directives = append(tag_directives, value) + } + + skip_token(parser) + token = peek_token(parser) + if token == nil { + return false + } + } + + for i := range default_tag_directives { + if !yaml_parser_append_tag_directive(parser, default_tag_directives[i], true, token.start_mark) { + return false + } + } + + if version_directive_ref != nil { + *version_directive_ref = version_directive + } + if tag_directives_ref != nil { + *tag_directives_ref = tag_directives + } + return true +} + +// Append a tag directive to the directives stack. +func yaml_parser_append_tag_directive(parser *yaml_parser_t, value yaml_tag_directive_t, allow_duplicates bool, mark yaml_mark_t) bool { + for i := range parser.tag_directives { + if bytes.Equal(value.handle, parser.tag_directives[i].handle) { + if allow_duplicates { + return true + } + return yaml_parser_set_parser_error(parser, "found duplicate %TAG directive", mark) + } + } + + // [Go] I suspect the copy is unnecessary. This was likely done + // because there was no way to track ownership of the data. + value_copy := yaml_tag_directive_t{ + handle: make([]byte, len(value.handle)), + prefix: make([]byte, len(value.prefix)), + } + copy(value_copy.handle, value.handle) + copy(value_copy.prefix, value.prefix) + parser.tag_directives = append(parser.tag_directives, value_copy) + return true +} diff --git a/vendor/gopkg.in/yaml.v3/readerc.go b/vendor/gopkg.in/yaml.v3/readerc.go new file mode 100644 index 000000000..b7de0a89c --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/readerc.go @@ -0,0 +1,434 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "io" +) + +// Set the reader error and return 0. +func yaml_parser_set_reader_error(parser *yaml_parser_t, problem string, offset int, value int) bool { + parser.error = yaml_READER_ERROR + parser.problem = problem + parser.problem_offset = offset + parser.problem_value = value + return false +} + +// Byte order marks. +const ( + bom_UTF8 = "\xef\xbb\xbf" + bom_UTF16LE = "\xff\xfe" + bom_UTF16BE = "\xfe\xff" +) + +// Determine the input stream encoding by checking the BOM symbol. If no BOM is +// found, the UTF-8 encoding is assumed. Return 1 on success, 0 on failure. +func yaml_parser_determine_encoding(parser *yaml_parser_t) bool { + // Ensure that we had enough bytes in the raw buffer. + for !parser.eof && len(parser.raw_buffer)-parser.raw_buffer_pos < 3 { + if !yaml_parser_update_raw_buffer(parser) { + return false + } + } + + // Determine the encoding. + buf := parser.raw_buffer + pos := parser.raw_buffer_pos + avail := len(buf) - pos + if avail >= 2 && buf[pos] == bom_UTF16LE[0] && buf[pos+1] == bom_UTF16LE[1] { + parser.encoding = yaml_UTF16LE_ENCODING + parser.raw_buffer_pos += 2 + parser.offset += 2 + } else if avail >= 2 && buf[pos] == bom_UTF16BE[0] && buf[pos+1] == bom_UTF16BE[1] { + parser.encoding = yaml_UTF16BE_ENCODING + parser.raw_buffer_pos += 2 + parser.offset += 2 + } else if avail >= 3 && buf[pos] == bom_UTF8[0] && buf[pos+1] == bom_UTF8[1] && buf[pos+2] == bom_UTF8[2] { + parser.encoding = yaml_UTF8_ENCODING + parser.raw_buffer_pos += 3 + parser.offset += 3 + } else { + parser.encoding = yaml_UTF8_ENCODING + } + return true +} + +// Update the raw buffer. +func yaml_parser_update_raw_buffer(parser *yaml_parser_t) bool { + size_read := 0 + + // Return if the raw buffer is full. + if parser.raw_buffer_pos == 0 && len(parser.raw_buffer) == cap(parser.raw_buffer) { + return true + } + + // Return on EOF. + if parser.eof { + return true + } + + // Move the remaining bytes in the raw buffer to the beginning. + if parser.raw_buffer_pos > 0 && parser.raw_buffer_pos < len(parser.raw_buffer) { + copy(parser.raw_buffer, parser.raw_buffer[parser.raw_buffer_pos:]) + } + parser.raw_buffer = parser.raw_buffer[:len(parser.raw_buffer)-parser.raw_buffer_pos] + parser.raw_buffer_pos = 0 + + // Call the read handler to fill the buffer. + size_read, err := parser.read_handler(parser, parser.raw_buffer[len(parser.raw_buffer):cap(parser.raw_buffer)]) + parser.raw_buffer = parser.raw_buffer[:len(parser.raw_buffer)+size_read] + if err == io.EOF { + parser.eof = true + } else if err != nil { + return yaml_parser_set_reader_error(parser, "input error: "+err.Error(), parser.offset, -1) + } + return true +} + +// Ensure that the buffer contains at least `length` characters. +// Return true on success, false on failure. +// +// The length is supposed to be significantly less that the buffer size. +func yaml_parser_update_buffer(parser *yaml_parser_t, length int) bool { + if parser.read_handler == nil { + panic("read handler must be set") + } + + // [Go] This function was changed to guarantee the requested length size at EOF. + // The fact we need to do this is pretty awful, but the description above implies + // for that to be the case, and there are tests + + // If the EOF flag is set and the raw buffer is empty, do nothing. + if parser.eof && parser.raw_buffer_pos == len(parser.raw_buffer) { + // [Go] ACTUALLY! Read the documentation of this function above. + // This is just broken. To return true, we need to have the + // given length in the buffer. Not doing that means every single + // check that calls this function to make sure the buffer has a + // given length is Go) panicking; or C) accessing invalid memory. + //return true + } + + // Return if the buffer contains enough characters. + if parser.unread >= length { + return true + } + + // Determine the input encoding if it is not known yet. + if parser.encoding == yaml_ANY_ENCODING { + if !yaml_parser_determine_encoding(parser) { + return false + } + } + + // Move the unread characters to the beginning of the buffer. + buffer_len := len(parser.buffer) + if parser.buffer_pos > 0 && parser.buffer_pos < buffer_len { + copy(parser.buffer, parser.buffer[parser.buffer_pos:]) + buffer_len -= parser.buffer_pos + parser.buffer_pos = 0 + } else if parser.buffer_pos == buffer_len { + buffer_len = 0 + parser.buffer_pos = 0 + } + + // Open the whole buffer for writing, and cut it before returning. + parser.buffer = parser.buffer[:cap(parser.buffer)] + + // Fill the buffer until it has enough characters. + first := true + for parser.unread < length { + + // Fill the raw buffer if necessary. + if !first || parser.raw_buffer_pos == len(parser.raw_buffer) { + if !yaml_parser_update_raw_buffer(parser) { + parser.buffer = parser.buffer[:buffer_len] + return false + } + } + first = false + + // Decode the raw buffer. + inner: + for parser.raw_buffer_pos != len(parser.raw_buffer) { + var value rune + var width int + + raw_unread := len(parser.raw_buffer) - parser.raw_buffer_pos + + // Decode the next character. + switch parser.encoding { + case yaml_UTF8_ENCODING: + // Decode a UTF-8 character. Check RFC 3629 + // (http://www.ietf.org/rfc/rfc3629.txt) for more details. + // + // The following table (taken from the RFC) is used for + // decoding. + // + // Char. number range | UTF-8 octet sequence + // (hexadecimal) | (binary) + // --------------------+------------------------------------ + // 0000 0000-0000 007F | 0xxxxxxx + // 0000 0080-0000 07FF | 110xxxxx 10xxxxxx + // 0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx + // 0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + // + // Additionally, the characters in the range 0xD800-0xDFFF + // are prohibited as they are reserved for use with UTF-16 + // surrogate pairs. + + // Determine the length of the UTF-8 sequence. + octet := parser.raw_buffer[parser.raw_buffer_pos] + switch { + case octet&0x80 == 0x00: + width = 1 + case octet&0xE0 == 0xC0: + width = 2 + case octet&0xF0 == 0xE0: + width = 3 + case octet&0xF8 == 0xF0: + width = 4 + default: + // The leading octet is invalid. + return yaml_parser_set_reader_error(parser, + "invalid leading UTF-8 octet", + parser.offset, int(octet)) + } + + // Check if the raw buffer contains an incomplete character. + if width > raw_unread { + if parser.eof { + return yaml_parser_set_reader_error(parser, + "incomplete UTF-8 octet sequence", + parser.offset, -1) + } + break inner + } + + // Decode the leading octet. + switch { + case octet&0x80 == 0x00: + value = rune(octet & 0x7F) + case octet&0xE0 == 0xC0: + value = rune(octet & 0x1F) + case octet&0xF0 == 0xE0: + value = rune(octet & 0x0F) + case octet&0xF8 == 0xF0: + value = rune(octet & 0x07) + default: + value = 0 + } + + // Check and decode the trailing octets. + for k := 1; k < width; k++ { + octet = parser.raw_buffer[parser.raw_buffer_pos+k] + + // Check if the octet is valid. + if (octet & 0xC0) != 0x80 { + return yaml_parser_set_reader_error(parser, + "invalid trailing UTF-8 octet", + parser.offset+k, int(octet)) + } + + // Decode the octet. + value = (value << 6) + rune(octet&0x3F) + } + + // Check the length of the sequence against the value. + switch { + case width == 1: + case width == 2 && value >= 0x80: + case width == 3 && value >= 0x800: + case width == 4 && value >= 0x10000: + default: + return yaml_parser_set_reader_error(parser, + "invalid length of a UTF-8 sequence", + parser.offset, -1) + } + + // Check the range of the value. + if value >= 0xD800 && value <= 0xDFFF || value > 0x10FFFF { + return yaml_parser_set_reader_error(parser, + "invalid Unicode character", + parser.offset, int(value)) + } + + case yaml_UTF16LE_ENCODING, yaml_UTF16BE_ENCODING: + var low, high int + if parser.encoding == yaml_UTF16LE_ENCODING { + low, high = 0, 1 + } else { + low, high = 1, 0 + } + + // The UTF-16 encoding is not as simple as one might + // naively think. Check RFC 2781 + // (http://www.ietf.org/rfc/rfc2781.txt). + // + // Normally, two subsequent bytes describe a Unicode + // character. However a special technique (called a + // surrogate pair) is used for specifying character + // values larger than 0xFFFF. + // + // A surrogate pair consists of two pseudo-characters: + // high surrogate area (0xD800-0xDBFF) + // low surrogate area (0xDC00-0xDFFF) + // + // The following formulas are used for decoding + // and encoding characters using surrogate pairs: + // + // U = U' + 0x10000 (0x01 00 00 <= U <= 0x10 FF FF) + // U' = yyyyyyyyyyxxxxxxxxxx (0 <= U' <= 0x0F FF FF) + // W1 = 110110yyyyyyyyyy + // W2 = 110111xxxxxxxxxx + // + // where U is the character value, W1 is the high surrogate + // area, W2 is the low surrogate area. + + // Check for incomplete UTF-16 character. + if raw_unread < 2 { + if parser.eof { + return yaml_parser_set_reader_error(parser, + "incomplete UTF-16 character", + parser.offset, -1) + } + break inner + } + + // Get the character. + value = rune(parser.raw_buffer[parser.raw_buffer_pos+low]) + + (rune(parser.raw_buffer[parser.raw_buffer_pos+high]) << 8) + + // Check for unexpected low surrogate area. + if value&0xFC00 == 0xDC00 { + return yaml_parser_set_reader_error(parser, + "unexpected low surrogate area", + parser.offset, int(value)) + } + + // Check for a high surrogate area. + if value&0xFC00 == 0xD800 { + width = 4 + + // Check for incomplete surrogate pair. + if raw_unread < 4 { + if parser.eof { + return yaml_parser_set_reader_error(parser, + "incomplete UTF-16 surrogate pair", + parser.offset, -1) + } + break inner + } + + // Get the next character. + value2 := rune(parser.raw_buffer[parser.raw_buffer_pos+low+2]) + + (rune(parser.raw_buffer[parser.raw_buffer_pos+high+2]) << 8) + + // Check for a low surrogate area. + if value2&0xFC00 != 0xDC00 { + return yaml_parser_set_reader_error(parser, + "expected low surrogate area", + parser.offset+2, int(value2)) + } + + // Generate the value of the surrogate pair. + value = 0x10000 + ((value & 0x3FF) << 10) + (value2 & 0x3FF) + } else { + width = 2 + } + + default: + panic("impossible") + } + + // Check if the character is in the allowed range: + // #x9 | #xA | #xD | [#x20-#x7E] (8 bit) + // | #x85 | [#xA0-#xD7FF] | [#xE000-#xFFFD] (16 bit) + // | [#x10000-#x10FFFF] (32 bit) + switch { + case value == 0x09: + case value == 0x0A: + case value == 0x0D: + case value >= 0x20 && value <= 0x7E: + case value == 0x85: + case value >= 0xA0 && value <= 0xD7FF: + case value >= 0xE000 && value <= 0xFFFD: + case value >= 0x10000 && value <= 0x10FFFF: + default: + return yaml_parser_set_reader_error(parser, + "control characters are not allowed", + parser.offset, int(value)) + } + + // Move the raw pointers. + parser.raw_buffer_pos += width + parser.offset += width + + // Finally put the character into the buffer. + if value <= 0x7F { + // 0000 0000-0000 007F . 0xxxxxxx + parser.buffer[buffer_len+0] = byte(value) + buffer_len += 1 + } else if value <= 0x7FF { + // 0000 0080-0000 07FF . 110xxxxx 10xxxxxx + parser.buffer[buffer_len+0] = byte(0xC0 + (value >> 6)) + parser.buffer[buffer_len+1] = byte(0x80 + (value & 0x3F)) + buffer_len += 2 + } else if value <= 0xFFFF { + // 0000 0800-0000 FFFF . 1110xxxx 10xxxxxx 10xxxxxx + parser.buffer[buffer_len+0] = byte(0xE0 + (value >> 12)) + parser.buffer[buffer_len+1] = byte(0x80 + ((value >> 6) & 0x3F)) + parser.buffer[buffer_len+2] = byte(0x80 + (value & 0x3F)) + buffer_len += 3 + } else { + // 0001 0000-0010 FFFF . 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + parser.buffer[buffer_len+0] = byte(0xF0 + (value >> 18)) + parser.buffer[buffer_len+1] = byte(0x80 + ((value >> 12) & 0x3F)) + parser.buffer[buffer_len+2] = byte(0x80 + ((value >> 6) & 0x3F)) + parser.buffer[buffer_len+3] = byte(0x80 + (value & 0x3F)) + buffer_len += 4 + } + + parser.unread++ + } + + // On EOF, put NUL into the buffer and return. + if parser.eof { + parser.buffer[buffer_len] = 0 + buffer_len++ + parser.unread++ + break + } + } + // [Go] Read the documentation of this function above. To return true, + // we need to have the given length in the buffer. Not doing that means + // every single check that calls this function to make sure the buffer + // has a given length is Go) panicking; or C) accessing invalid memory. + // This happens here due to the EOF above breaking early. + for buffer_len < length { + parser.buffer[buffer_len] = 0 + buffer_len++ + } + parser.buffer = parser.buffer[:buffer_len] + return true +} diff --git a/vendor/gopkg.in/yaml.v3/resolve.go b/vendor/gopkg.in/yaml.v3/resolve.go new file mode 100644 index 000000000..64ae88805 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/resolve.go @@ -0,0 +1,326 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package yaml + +import ( + "encoding/base64" + "math" + "regexp" + "strconv" + "strings" + "time" +) + +type resolveMapItem struct { + value interface{} + tag string +} + +var resolveTable = make([]byte, 256) +var resolveMap = make(map[string]resolveMapItem) + +func init() { + t := resolveTable + t[int('+')] = 'S' // Sign + t[int('-')] = 'S' + for _, c := range "0123456789" { + t[int(c)] = 'D' // Digit + } + for _, c := range "yYnNtTfFoO~" { + t[int(c)] = 'M' // In map + } + t[int('.')] = '.' // Float (potentially in map) + + var resolveMapList = []struct { + v interface{} + tag string + l []string + }{ + {true, boolTag, []string{"true", "True", "TRUE"}}, + {false, boolTag, []string{"false", "False", "FALSE"}}, + {nil, nullTag, []string{"", "~", "null", "Null", "NULL"}}, + {math.NaN(), floatTag, []string{".nan", ".NaN", ".NAN"}}, + {math.Inf(+1), floatTag, []string{".inf", ".Inf", ".INF"}}, + {math.Inf(+1), floatTag, []string{"+.inf", "+.Inf", "+.INF"}}, + {math.Inf(-1), floatTag, []string{"-.inf", "-.Inf", "-.INF"}}, + {"<<", mergeTag, []string{"<<"}}, + } + + m := resolveMap + for _, item := range resolveMapList { + for _, s := range item.l { + m[s] = resolveMapItem{item.v, item.tag} + } + } +} + +const ( + nullTag = "!!null" + boolTag = "!!bool" + strTag = "!!str" + intTag = "!!int" + floatTag = "!!float" + timestampTag = "!!timestamp" + seqTag = "!!seq" + mapTag = "!!map" + binaryTag = "!!binary" + mergeTag = "!!merge" +) + +var longTags = make(map[string]string) +var shortTags = make(map[string]string) + +func init() { + for _, stag := range []string{nullTag, boolTag, strTag, intTag, floatTag, timestampTag, seqTag, mapTag, binaryTag, mergeTag} { + ltag := longTag(stag) + longTags[stag] = ltag + shortTags[ltag] = stag + } +} + +const longTagPrefix = "tag:yaml.org,2002:" + +func shortTag(tag string) string { + if strings.HasPrefix(tag, longTagPrefix) { + if stag, ok := shortTags[tag]; ok { + return stag + } + return "!!" + tag[len(longTagPrefix):] + } + return tag +} + +func longTag(tag string) string { + if strings.HasPrefix(tag, "!!") { + if ltag, ok := longTags[tag]; ok { + return ltag + } + return longTagPrefix + tag[2:] + } + return tag +} + +func resolvableTag(tag string) bool { + switch tag { + case "", strTag, boolTag, intTag, floatTag, nullTag, timestampTag: + return true + } + return false +} + +var yamlStyleFloat = regexp.MustCompile(`^[-+]?(\.[0-9]+|[0-9]+(\.[0-9]*)?)([eE][-+]?[0-9]+)?$`) + +func resolve(tag string, in string) (rtag string, out interface{}) { + tag = shortTag(tag) + if !resolvableTag(tag) { + return tag, in + } + + defer func() { + switch tag { + case "", rtag, strTag, binaryTag: + return + case floatTag: + if rtag == intTag { + switch v := out.(type) { + case int64: + rtag = floatTag + out = float64(v) + return + case int: + rtag = floatTag + out = float64(v) + return + } + } + } + failf("cannot decode %s `%s` as a %s", shortTag(rtag), in, shortTag(tag)) + }() + + // Any data is accepted as a !!str or !!binary. + // Otherwise, the prefix is enough of a hint about what it might be. + hint := byte('N') + if in != "" { + hint = resolveTable[in[0]] + } + if hint != 0 && tag != strTag && tag != binaryTag { + // Handle things we can lookup in a map. + if item, ok := resolveMap[in]; ok { + return item.tag, item.value + } + + // Base 60 floats are a bad idea, were dropped in YAML 1.2, and + // are purposefully unsupported here. They're still quoted on + // the way out for compatibility with other parser, though. + + switch hint { + case 'M': + // We've already checked the map above. + + case '.': + // Not in the map, so maybe a normal float. + floatv, err := strconv.ParseFloat(in, 64) + if err == nil { + return floatTag, floatv + } + + case 'D', 'S': + // Int, float, or timestamp. + // Only try values as a timestamp if the value is unquoted or there's an explicit + // !!timestamp tag. + if tag == "" || tag == timestampTag { + t, ok := parseTimestamp(in) + if ok { + return timestampTag, t + } + } + + plain := strings.Replace(in, "_", "", -1) + intv, err := strconv.ParseInt(plain, 0, 64) + if err == nil { + if intv == int64(int(intv)) { + return intTag, int(intv) + } else { + return intTag, intv + } + } + uintv, err := strconv.ParseUint(plain, 0, 64) + if err == nil { + return intTag, uintv + } + if yamlStyleFloat.MatchString(plain) { + floatv, err := strconv.ParseFloat(plain, 64) + if err == nil { + return floatTag, floatv + } + } + if strings.HasPrefix(plain, "0b") { + intv, err := strconv.ParseInt(plain[2:], 2, 64) + if err == nil { + if intv == int64(int(intv)) { + return intTag, int(intv) + } else { + return intTag, intv + } + } + uintv, err := strconv.ParseUint(plain[2:], 2, 64) + if err == nil { + return intTag, uintv + } + } else if strings.HasPrefix(plain, "-0b") { + intv, err := strconv.ParseInt("-"+plain[3:], 2, 64) + if err == nil { + if true || intv == int64(int(intv)) { + return intTag, int(intv) + } else { + return intTag, intv + } + } + } + // Octals as introduced in version 1.2 of the spec. + // Octals from the 1.1 spec, spelled as 0777, are still + // decoded by default in v3 as well for compatibility. + // May be dropped in v4 depending on how usage evolves. + if strings.HasPrefix(plain, "0o") { + intv, err := strconv.ParseInt(plain[2:], 8, 64) + if err == nil { + if intv == int64(int(intv)) { + return intTag, int(intv) + } else { + return intTag, intv + } + } + uintv, err := strconv.ParseUint(plain[2:], 8, 64) + if err == nil { + return intTag, uintv + } + } else if strings.HasPrefix(plain, "-0o") { + intv, err := strconv.ParseInt("-"+plain[3:], 8, 64) + if err == nil { + if true || intv == int64(int(intv)) { + return intTag, int(intv) + } else { + return intTag, intv + } + } + } + default: + panic("internal error: missing handler for resolver table: " + string(rune(hint)) + " (with " + in + ")") + } + } + return strTag, in +} + +// encodeBase64 encodes s as base64 that is broken up into multiple lines +// as appropriate for the resulting length. +func encodeBase64(s string) string { + const lineLen = 70 + encLen := base64.StdEncoding.EncodedLen(len(s)) + lines := encLen/lineLen + 1 + buf := make([]byte, encLen*2+lines) + in := buf[0:encLen] + out := buf[encLen:] + base64.StdEncoding.Encode(in, []byte(s)) + k := 0 + for i := 0; i < len(in); i += lineLen { + j := i + lineLen + if j > len(in) { + j = len(in) + } + k += copy(out[k:], in[i:j]) + if lines > 1 { + out[k] = '\n' + k++ + } + } + return string(out[:k]) +} + +// This is a subset of the formats allowed by the regular expression +// defined at http://yaml.org/type/timestamp.html. +var allowedTimestampFormats = []string{ + "2006-1-2T15:4:5.999999999Z07:00", // RCF3339Nano with short date fields. + "2006-1-2t15:4:5.999999999Z07:00", // RFC3339Nano with short date fields and lower-case "t". + "2006-1-2 15:4:5.999999999", // space separated with no time zone + "2006-1-2", // date only + // Notable exception: time.Parse cannot handle: "2001-12-14 21:59:43.10 -5" + // from the set of examples. +} + +// parseTimestamp parses s as a timestamp string and +// returns the timestamp and reports whether it succeeded. +// Timestamp formats are defined at http://yaml.org/type/timestamp.html +func parseTimestamp(s string) (time.Time, bool) { + // TODO write code to check all the formats supported by + // http://yaml.org/type/timestamp.html instead of using time.Parse. + + // Quick check: all date formats start with YYYY-. + i := 0 + for ; i < len(s); i++ { + if c := s[i]; c < '0' || c > '9' { + break + } + } + if i != 4 || i == len(s) || s[i] != '-' { + return time.Time{}, false + } + for _, format := range allowedTimestampFormats { + if t, err := time.Parse(format, s); err == nil { + return t, true + } + } + return time.Time{}, false +} diff --git a/vendor/gopkg.in/yaml.v3/scannerc.go b/vendor/gopkg.in/yaml.v3/scannerc.go new file mode 100644 index 000000000..57e954ca5 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/scannerc.go @@ -0,0 +1,3025 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "bytes" + "fmt" +) + +// Introduction +// ************ +// +// The following notes assume that you are familiar with the YAML specification +// (http://yaml.org/spec/1.2/spec.html). We mostly follow it, although in +// some cases we are less restrictive that it requires. +// +// The process of transforming a YAML stream into a sequence of events is +// divided on two steps: Scanning and Parsing. +// +// The Scanner transforms the input stream into a sequence of tokens, while the +// parser transform the sequence of tokens produced by the Scanner into a +// sequence of parsing events. +// +// The Scanner is rather clever and complicated. The Parser, on the contrary, +// is a straightforward implementation of a recursive-descendant parser (or, +// LL(1) parser, as it is usually called). +// +// Actually there are two issues of Scanning that might be called "clever", the +// rest is quite straightforward. The issues are "block collection start" and +// "simple keys". Both issues are explained below in details. +// +// Here the Scanning step is explained and implemented. We start with the list +// of all the tokens produced by the Scanner together with short descriptions. +// +// Now, tokens: +// +// STREAM-START(encoding) # The stream start. +// STREAM-END # The stream end. +// VERSION-DIRECTIVE(major,minor) # The '%YAML' directive. +// TAG-DIRECTIVE(handle,prefix) # The '%TAG' directive. +// DOCUMENT-START # '---' +// DOCUMENT-END # '...' +// BLOCK-SEQUENCE-START # Indentation increase denoting a block +// BLOCK-MAPPING-START # sequence or a block mapping. +// BLOCK-END # Indentation decrease. +// FLOW-SEQUENCE-START # '[' +// FLOW-SEQUENCE-END # ']' +// BLOCK-SEQUENCE-START # '{' +// BLOCK-SEQUENCE-END # '}' +// BLOCK-ENTRY # '-' +// FLOW-ENTRY # ',' +// KEY # '?' or nothing (simple keys). +// VALUE # ':' +// ALIAS(anchor) # '*anchor' +// ANCHOR(anchor) # '&anchor' +// TAG(handle,suffix) # '!handle!suffix' +// SCALAR(value,style) # A scalar. +// +// The following two tokens are "virtual" tokens denoting the beginning and the +// end of the stream: +// +// STREAM-START(encoding) +// STREAM-END +// +// We pass the information about the input stream encoding with the +// STREAM-START token. +// +// The next two tokens are responsible for tags: +// +// VERSION-DIRECTIVE(major,minor) +// TAG-DIRECTIVE(handle,prefix) +// +// Example: +// +// %YAML 1.1 +// %TAG ! !foo +// %TAG !yaml! tag:yaml.org,2002: +// --- +// +// The correspoding sequence of tokens: +// +// STREAM-START(utf-8) +// VERSION-DIRECTIVE(1,1) +// TAG-DIRECTIVE("!","!foo") +// TAG-DIRECTIVE("!yaml","tag:yaml.org,2002:") +// DOCUMENT-START +// STREAM-END +// +// Note that the VERSION-DIRECTIVE and TAG-DIRECTIVE tokens occupy a whole +// line. +// +// The document start and end indicators are represented by: +// +// DOCUMENT-START +// DOCUMENT-END +// +// Note that if a YAML stream contains an implicit document (without '---' +// and '...' indicators), no DOCUMENT-START and DOCUMENT-END tokens will be +// produced. +// +// In the following examples, we present whole documents together with the +// produced tokens. +// +// 1. An implicit document: +// +// 'a scalar' +// +// Tokens: +// +// STREAM-START(utf-8) +// SCALAR("a scalar",single-quoted) +// STREAM-END +// +// 2. An explicit document: +// +// --- +// 'a scalar' +// ... +// +// Tokens: +// +// STREAM-START(utf-8) +// DOCUMENT-START +// SCALAR("a scalar",single-quoted) +// DOCUMENT-END +// STREAM-END +// +// 3. Several documents in a stream: +// +// 'a scalar' +// --- +// 'another scalar' +// --- +// 'yet another scalar' +// +// Tokens: +// +// STREAM-START(utf-8) +// SCALAR("a scalar",single-quoted) +// DOCUMENT-START +// SCALAR("another scalar",single-quoted) +// DOCUMENT-START +// SCALAR("yet another scalar",single-quoted) +// STREAM-END +// +// We have already introduced the SCALAR token above. The following tokens are +// used to describe aliases, anchors, tag, and scalars: +// +// ALIAS(anchor) +// ANCHOR(anchor) +// TAG(handle,suffix) +// SCALAR(value,style) +// +// The following series of examples illustrate the usage of these tokens: +// +// 1. A recursive sequence: +// +// &A [ *A ] +// +// Tokens: +// +// STREAM-START(utf-8) +// ANCHOR("A") +// FLOW-SEQUENCE-START +// ALIAS("A") +// FLOW-SEQUENCE-END +// STREAM-END +// +// 2. A tagged scalar: +// +// !!float "3.14" # A good approximation. +// +// Tokens: +// +// STREAM-START(utf-8) +// TAG("!!","float") +// SCALAR("3.14",double-quoted) +// STREAM-END +// +// 3. Various scalar styles: +// +// --- # Implicit empty plain scalars do not produce tokens. +// --- a plain scalar +// --- 'a single-quoted scalar' +// --- "a double-quoted scalar" +// --- |- +// a literal scalar +// --- >- +// a folded +// scalar +// +// Tokens: +// +// STREAM-START(utf-8) +// DOCUMENT-START +// DOCUMENT-START +// SCALAR("a plain scalar",plain) +// DOCUMENT-START +// SCALAR("a single-quoted scalar",single-quoted) +// DOCUMENT-START +// SCALAR("a double-quoted scalar",double-quoted) +// DOCUMENT-START +// SCALAR("a literal scalar",literal) +// DOCUMENT-START +// SCALAR("a folded scalar",folded) +// STREAM-END +// +// Now it's time to review collection-related tokens. We will start with +// flow collections: +// +// FLOW-SEQUENCE-START +// FLOW-SEQUENCE-END +// FLOW-MAPPING-START +// FLOW-MAPPING-END +// FLOW-ENTRY +// KEY +// VALUE +// +// The tokens FLOW-SEQUENCE-START, FLOW-SEQUENCE-END, FLOW-MAPPING-START, and +// FLOW-MAPPING-END represent the indicators '[', ']', '{', and '}' +// correspondingly. FLOW-ENTRY represent the ',' indicator. Finally the +// indicators '?' and ':', which are used for denoting mapping keys and values, +// are represented by the KEY and VALUE tokens. +// +// The following examples show flow collections: +// +// 1. A flow sequence: +// +// [item 1, item 2, item 3] +// +// Tokens: +// +// STREAM-START(utf-8) +// FLOW-SEQUENCE-START +// SCALAR("item 1",plain) +// FLOW-ENTRY +// SCALAR("item 2",plain) +// FLOW-ENTRY +// SCALAR("item 3",plain) +// FLOW-SEQUENCE-END +// STREAM-END +// +// 2. A flow mapping: +// +// { +// a simple key: a value, # Note that the KEY token is produced. +// ? a complex key: another value, +// } +// +// Tokens: +// +// STREAM-START(utf-8) +// FLOW-MAPPING-START +// KEY +// SCALAR("a simple key",plain) +// VALUE +// SCALAR("a value",plain) +// FLOW-ENTRY +// KEY +// SCALAR("a complex key",plain) +// VALUE +// SCALAR("another value",plain) +// FLOW-ENTRY +// FLOW-MAPPING-END +// STREAM-END +// +// A simple key is a key which is not denoted by the '?' indicator. Note that +// the Scanner still produce the KEY token whenever it encounters a simple key. +// +// For scanning block collections, the following tokens are used (note that we +// repeat KEY and VALUE here): +// +// BLOCK-SEQUENCE-START +// BLOCK-MAPPING-START +// BLOCK-END +// BLOCK-ENTRY +// KEY +// VALUE +// +// The tokens BLOCK-SEQUENCE-START and BLOCK-MAPPING-START denote indentation +// increase that precedes a block collection (cf. the INDENT token in Python). +// The token BLOCK-END denote indentation decrease that ends a block collection +// (cf. the DEDENT token in Python). However YAML has some syntax pecularities +// that makes detections of these tokens more complex. +// +// The tokens BLOCK-ENTRY, KEY, and VALUE are used to represent the indicators +// '-', '?', and ':' correspondingly. +// +// The following examples show how the tokens BLOCK-SEQUENCE-START, +// BLOCK-MAPPING-START, and BLOCK-END are emitted by the Scanner: +// +// 1. Block sequences: +// +// - item 1 +// - item 2 +// - +// - item 3.1 +// - item 3.2 +// - +// key 1: value 1 +// key 2: value 2 +// +// Tokens: +// +// STREAM-START(utf-8) +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// SCALAR("item 1",plain) +// BLOCK-ENTRY +// SCALAR("item 2",plain) +// BLOCK-ENTRY +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// SCALAR("item 3.1",plain) +// BLOCK-ENTRY +// SCALAR("item 3.2",plain) +// BLOCK-END +// BLOCK-ENTRY +// BLOCK-MAPPING-START +// KEY +// SCALAR("key 1",plain) +// VALUE +// SCALAR("value 1",plain) +// KEY +// SCALAR("key 2",plain) +// VALUE +// SCALAR("value 2",plain) +// BLOCK-END +// BLOCK-END +// STREAM-END +// +// 2. Block mappings: +// +// a simple key: a value # The KEY token is produced here. +// ? a complex key +// : another value +// a mapping: +// key 1: value 1 +// key 2: value 2 +// a sequence: +// - item 1 +// - item 2 +// +// Tokens: +// +// STREAM-START(utf-8) +// BLOCK-MAPPING-START +// KEY +// SCALAR("a simple key",plain) +// VALUE +// SCALAR("a value",plain) +// KEY +// SCALAR("a complex key",plain) +// VALUE +// SCALAR("another value",plain) +// KEY +// SCALAR("a mapping",plain) +// BLOCK-MAPPING-START +// KEY +// SCALAR("key 1",plain) +// VALUE +// SCALAR("value 1",plain) +// KEY +// SCALAR("key 2",plain) +// VALUE +// SCALAR("value 2",plain) +// BLOCK-END +// KEY +// SCALAR("a sequence",plain) +// VALUE +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// SCALAR("item 1",plain) +// BLOCK-ENTRY +// SCALAR("item 2",plain) +// BLOCK-END +// BLOCK-END +// STREAM-END +// +// YAML does not always require to start a new block collection from a new +// line. If the current line contains only '-', '?', and ':' indicators, a new +// block collection may start at the current line. The following examples +// illustrate this case: +// +// 1. Collections in a sequence: +// +// - - item 1 +// - item 2 +// - key 1: value 1 +// key 2: value 2 +// - ? complex key +// : complex value +// +// Tokens: +// +// STREAM-START(utf-8) +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// SCALAR("item 1",plain) +// BLOCK-ENTRY +// SCALAR("item 2",plain) +// BLOCK-END +// BLOCK-ENTRY +// BLOCK-MAPPING-START +// KEY +// SCALAR("key 1",plain) +// VALUE +// SCALAR("value 1",plain) +// KEY +// SCALAR("key 2",plain) +// VALUE +// SCALAR("value 2",plain) +// BLOCK-END +// BLOCK-ENTRY +// BLOCK-MAPPING-START +// KEY +// SCALAR("complex key") +// VALUE +// SCALAR("complex value") +// BLOCK-END +// BLOCK-END +// STREAM-END +// +// 2. Collections in a mapping: +// +// ? a sequence +// : - item 1 +// - item 2 +// ? a mapping +// : key 1: value 1 +// key 2: value 2 +// +// Tokens: +// +// STREAM-START(utf-8) +// BLOCK-MAPPING-START +// KEY +// SCALAR("a sequence",plain) +// VALUE +// BLOCK-SEQUENCE-START +// BLOCK-ENTRY +// SCALAR("item 1",plain) +// BLOCK-ENTRY +// SCALAR("item 2",plain) +// BLOCK-END +// KEY +// SCALAR("a mapping",plain) +// VALUE +// BLOCK-MAPPING-START +// KEY +// SCALAR("key 1",plain) +// VALUE +// SCALAR("value 1",plain) +// KEY +// SCALAR("key 2",plain) +// VALUE +// SCALAR("value 2",plain) +// BLOCK-END +// BLOCK-END +// STREAM-END +// +// YAML also permits non-indented sequences if they are included into a block +// mapping. In this case, the token BLOCK-SEQUENCE-START is not produced: +// +// key: +// - item 1 # BLOCK-SEQUENCE-START is NOT produced here. +// - item 2 +// +// Tokens: +// +// STREAM-START(utf-8) +// BLOCK-MAPPING-START +// KEY +// SCALAR("key",plain) +// VALUE +// BLOCK-ENTRY +// SCALAR("item 1",plain) +// BLOCK-ENTRY +// SCALAR("item 2",plain) +// BLOCK-END +// + +// Ensure that the buffer contains the required number of characters. +// Return true on success, false on failure (reader error or memory error). +func cache(parser *yaml_parser_t, length int) bool { + // [Go] This was inlined: !cache(A, B) -> unread < B && !update(A, B) + return parser.unread >= length || yaml_parser_update_buffer(parser, length) +} + +// Advance the buffer pointer. +func skip(parser *yaml_parser_t) { + if !is_blank(parser.buffer, parser.buffer_pos) { + parser.newlines = 0 + } + parser.mark.index++ + parser.mark.column++ + parser.unread-- + parser.buffer_pos += width(parser.buffer[parser.buffer_pos]) +} + +func skip_line(parser *yaml_parser_t) { + if is_crlf(parser.buffer, parser.buffer_pos) { + parser.mark.index += 2 + parser.mark.column = 0 + parser.mark.line++ + parser.unread -= 2 + parser.buffer_pos += 2 + parser.newlines++ + } else if is_break(parser.buffer, parser.buffer_pos) { + parser.mark.index++ + parser.mark.column = 0 + parser.mark.line++ + parser.unread-- + parser.buffer_pos += width(parser.buffer[parser.buffer_pos]) + parser.newlines++ + } +} + +// Copy a character to a string buffer and advance pointers. +func read(parser *yaml_parser_t, s []byte) []byte { + if !is_blank(parser.buffer, parser.buffer_pos) { + parser.newlines = 0 + } + w := width(parser.buffer[parser.buffer_pos]) + if w == 0 { + panic("invalid character sequence") + } + if len(s) == 0 { + s = make([]byte, 0, 32) + } + if w == 1 && len(s)+w <= cap(s) { + s = s[:len(s)+1] + s[len(s)-1] = parser.buffer[parser.buffer_pos] + parser.buffer_pos++ + } else { + s = append(s, parser.buffer[parser.buffer_pos:parser.buffer_pos+w]...) + parser.buffer_pos += w + } + parser.mark.index++ + parser.mark.column++ + parser.unread-- + return s +} + +// Copy a line break character to a string buffer and advance pointers. +func read_line(parser *yaml_parser_t, s []byte) []byte { + buf := parser.buffer + pos := parser.buffer_pos + switch { + case buf[pos] == '\r' && buf[pos+1] == '\n': + // CR LF . LF + s = append(s, '\n') + parser.buffer_pos += 2 + parser.mark.index++ + parser.unread-- + case buf[pos] == '\r' || buf[pos] == '\n': + // CR|LF . LF + s = append(s, '\n') + parser.buffer_pos += 1 + case buf[pos] == '\xC2' && buf[pos+1] == '\x85': + // NEL . LF + s = append(s, '\n') + parser.buffer_pos += 2 + case buf[pos] == '\xE2' && buf[pos+1] == '\x80' && (buf[pos+2] == '\xA8' || buf[pos+2] == '\xA9'): + // LS|PS . LS|PS + s = append(s, buf[parser.buffer_pos:pos+3]...) + parser.buffer_pos += 3 + default: + return s + } + parser.mark.index++ + parser.mark.column = 0 + parser.mark.line++ + parser.unread-- + parser.newlines++ + return s +} + +// Get the next token. +func yaml_parser_scan(parser *yaml_parser_t, token *yaml_token_t) bool { + // Erase the token object. + *token = yaml_token_t{} // [Go] Is this necessary? + + // No tokens after STREAM-END or error. + if parser.stream_end_produced || parser.error != yaml_NO_ERROR { + return true + } + + // Ensure that the tokens queue contains enough tokens. + if !parser.token_available { + if !yaml_parser_fetch_more_tokens(parser) { + return false + } + } + + // Fetch the next token from the queue. + *token = parser.tokens[parser.tokens_head] + parser.tokens_head++ + parser.tokens_parsed++ + parser.token_available = false + + if token.typ == yaml_STREAM_END_TOKEN { + parser.stream_end_produced = true + } + return true +} + +// Set the scanner error and return false. +func yaml_parser_set_scanner_error(parser *yaml_parser_t, context string, context_mark yaml_mark_t, problem string) bool { + parser.error = yaml_SCANNER_ERROR + parser.context = context + parser.context_mark = context_mark + parser.problem = problem + parser.problem_mark = parser.mark + return false +} + +func yaml_parser_set_scanner_tag_error(parser *yaml_parser_t, directive bool, context_mark yaml_mark_t, problem string) bool { + context := "while parsing a tag" + if directive { + context = "while parsing a %TAG directive" + } + return yaml_parser_set_scanner_error(parser, context, context_mark, problem) +} + +func trace(args ...interface{}) func() { + pargs := append([]interface{}{"+++"}, args...) + fmt.Println(pargs...) + pargs = append([]interface{}{"---"}, args...) + return func() { fmt.Println(pargs...) } +} + +// Ensure that the tokens queue contains at least one token which can be +// returned to the Parser. +func yaml_parser_fetch_more_tokens(parser *yaml_parser_t) bool { + // While we need more tokens to fetch, do it. + for { + // [Go] The comment parsing logic requires a lookahead of two tokens + // so that foot comments may be parsed in time of associating them + // with the tokens that are parsed before them, and also for line + // comments to be transformed into head comments in some edge cases. + if parser.tokens_head < len(parser.tokens)-2 { + // If a potential simple key is at the head position, we need to fetch + // the next token to disambiguate it. + head_tok_idx, ok := parser.simple_keys_by_tok[parser.tokens_parsed] + if !ok { + break + } else if valid, ok := yaml_simple_key_is_valid(parser, &parser.simple_keys[head_tok_idx]); !ok { + return false + } else if !valid { + break + } + } + // Fetch the next token. + if !yaml_parser_fetch_next_token(parser) { + return false + } + } + + parser.token_available = true + return true +} + +// The dispatcher for token fetchers. +func yaml_parser_fetch_next_token(parser *yaml_parser_t) (ok bool) { + // Ensure that the buffer is initialized. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + // Check if we just started scanning. Fetch STREAM-START then. + if !parser.stream_start_produced { + return yaml_parser_fetch_stream_start(parser) + } + + scan_mark := parser.mark + + // Eat whitespaces and comments until we reach the next token. + if !yaml_parser_scan_to_next_token(parser) { + return false + } + + // [Go] While unrolling indents, transform the head comments of prior + // indentation levels observed after scan_start into foot comments at + // the respective indexes. + + // Check the indentation level against the current column. + if !yaml_parser_unroll_indent(parser, parser.mark.column, scan_mark) { + return false + } + + // Ensure that the buffer contains at least 4 characters. 4 is the length + // of the longest indicators ('--- ' and '... '). + if parser.unread < 4 && !yaml_parser_update_buffer(parser, 4) { + return false + } + + // Is it the end of the stream? + if is_z(parser.buffer, parser.buffer_pos) { + return yaml_parser_fetch_stream_end(parser) + } + + // Is it a directive? + if parser.mark.column == 0 && parser.buffer[parser.buffer_pos] == '%' { + return yaml_parser_fetch_directive(parser) + } + + buf := parser.buffer + pos := parser.buffer_pos + + // Is it the document start indicator? + if parser.mark.column == 0 && buf[pos] == '-' && buf[pos+1] == '-' && buf[pos+2] == '-' && is_blankz(buf, pos+3) { + return yaml_parser_fetch_document_indicator(parser, yaml_DOCUMENT_START_TOKEN) + } + + // Is it the document end indicator? + if parser.mark.column == 0 && buf[pos] == '.' && buf[pos+1] == '.' && buf[pos+2] == '.' && is_blankz(buf, pos+3) { + return yaml_parser_fetch_document_indicator(parser, yaml_DOCUMENT_END_TOKEN) + } + + comment_mark := parser.mark + if len(parser.tokens) > 0 && (parser.flow_level == 0 && buf[pos] == ':' || parser.flow_level > 0 && buf[pos] == ',') { + // Associate any following comments with the prior token. + comment_mark = parser.tokens[len(parser.tokens)-1].start_mark + } + defer func() { + if !ok { + return + } + if !yaml_parser_scan_line_comment(parser, comment_mark) { + ok = false + return + } + }() + + // Is it the flow sequence start indicator? + if buf[pos] == '[' { + return yaml_parser_fetch_flow_collection_start(parser, yaml_FLOW_SEQUENCE_START_TOKEN) + } + + // Is it the flow mapping start indicator? + if parser.buffer[parser.buffer_pos] == '{' { + return yaml_parser_fetch_flow_collection_start(parser, yaml_FLOW_MAPPING_START_TOKEN) + } + + // Is it the flow sequence end indicator? + if parser.buffer[parser.buffer_pos] == ']' { + return yaml_parser_fetch_flow_collection_end(parser, + yaml_FLOW_SEQUENCE_END_TOKEN) + } + + // Is it the flow mapping end indicator? + if parser.buffer[parser.buffer_pos] == '}' { + return yaml_parser_fetch_flow_collection_end(parser, + yaml_FLOW_MAPPING_END_TOKEN) + } + + // Is it the flow entry indicator? + if parser.buffer[parser.buffer_pos] == ',' { + return yaml_parser_fetch_flow_entry(parser) + } + + // Is it the block entry indicator? + if parser.buffer[parser.buffer_pos] == '-' && is_blankz(parser.buffer, parser.buffer_pos+1) { + return yaml_parser_fetch_block_entry(parser) + } + + // Is it the key indicator? + if parser.buffer[parser.buffer_pos] == '?' && (parser.flow_level > 0 || is_blankz(parser.buffer, parser.buffer_pos+1)) { + return yaml_parser_fetch_key(parser) + } + + // Is it the value indicator? + if parser.buffer[parser.buffer_pos] == ':' && (parser.flow_level > 0 || is_blankz(parser.buffer, parser.buffer_pos+1)) { + return yaml_parser_fetch_value(parser) + } + + // Is it an alias? + if parser.buffer[parser.buffer_pos] == '*' { + return yaml_parser_fetch_anchor(parser, yaml_ALIAS_TOKEN) + } + + // Is it an anchor? + if parser.buffer[parser.buffer_pos] == '&' { + return yaml_parser_fetch_anchor(parser, yaml_ANCHOR_TOKEN) + } + + // Is it a tag? + if parser.buffer[parser.buffer_pos] == '!' { + return yaml_parser_fetch_tag(parser) + } + + // Is it a literal scalar? + if parser.buffer[parser.buffer_pos] == '|' && parser.flow_level == 0 { + return yaml_parser_fetch_block_scalar(parser, true) + } + + // Is it a folded scalar? + if parser.buffer[parser.buffer_pos] == '>' && parser.flow_level == 0 { + return yaml_parser_fetch_block_scalar(parser, false) + } + + // Is it a single-quoted scalar? + if parser.buffer[parser.buffer_pos] == '\'' { + return yaml_parser_fetch_flow_scalar(parser, true) + } + + // Is it a double-quoted scalar? + if parser.buffer[parser.buffer_pos] == '"' { + return yaml_parser_fetch_flow_scalar(parser, false) + } + + // Is it a plain scalar? + // + // A plain scalar may start with any non-blank characters except + // + // '-', '?', ':', ',', '[', ']', '{', '}', + // '#', '&', '*', '!', '|', '>', '\'', '\"', + // '%', '@', '`'. + // + // In the block context (and, for the '-' indicator, in the flow context + // too), it may also start with the characters + // + // '-', '?', ':' + // + // if it is followed by a non-space character. + // + // The last rule is more restrictive than the specification requires. + // [Go] TODO Make this logic more reasonable. + //switch parser.buffer[parser.buffer_pos] { + //case '-', '?', ':', ',', '?', '-', ',', ':', ']', '[', '}', '{', '&', '#', '!', '*', '>', '|', '"', '\'', '@', '%', '-', '`': + //} + if !(is_blankz(parser.buffer, parser.buffer_pos) || parser.buffer[parser.buffer_pos] == '-' || + parser.buffer[parser.buffer_pos] == '?' || parser.buffer[parser.buffer_pos] == ':' || + parser.buffer[parser.buffer_pos] == ',' || parser.buffer[parser.buffer_pos] == '[' || + parser.buffer[parser.buffer_pos] == ']' || parser.buffer[parser.buffer_pos] == '{' || + parser.buffer[parser.buffer_pos] == '}' || parser.buffer[parser.buffer_pos] == '#' || + parser.buffer[parser.buffer_pos] == '&' || parser.buffer[parser.buffer_pos] == '*' || + parser.buffer[parser.buffer_pos] == '!' || parser.buffer[parser.buffer_pos] == '|' || + parser.buffer[parser.buffer_pos] == '>' || parser.buffer[parser.buffer_pos] == '\'' || + parser.buffer[parser.buffer_pos] == '"' || parser.buffer[parser.buffer_pos] == '%' || + parser.buffer[parser.buffer_pos] == '@' || parser.buffer[parser.buffer_pos] == '`') || + (parser.buffer[parser.buffer_pos] == '-' && !is_blank(parser.buffer, parser.buffer_pos+1)) || + (parser.flow_level == 0 && + (parser.buffer[parser.buffer_pos] == '?' || parser.buffer[parser.buffer_pos] == ':') && + !is_blankz(parser.buffer, parser.buffer_pos+1)) { + return yaml_parser_fetch_plain_scalar(parser) + } + + // If we don't determine the token type so far, it is an error. + return yaml_parser_set_scanner_error(parser, + "while scanning for the next token", parser.mark, + "found character that cannot start any token") +} + +func yaml_simple_key_is_valid(parser *yaml_parser_t, simple_key *yaml_simple_key_t) (valid, ok bool) { + if !simple_key.possible { + return false, true + } + + // The 1.2 specification says: + // + // "If the ? indicator is omitted, parsing needs to see past the + // implicit key to recognize it as such. To limit the amount of + // lookahead required, the “:” indicator must appear at most 1024 + // Unicode characters beyond the start of the key. In addition, the key + // is restricted to a single line." + // + if simple_key.mark.line < parser.mark.line || simple_key.mark.index+1024 < parser.mark.index { + // Check if the potential simple key to be removed is required. + if simple_key.required { + return false, yaml_parser_set_scanner_error(parser, + "while scanning a simple key", simple_key.mark, + "could not find expected ':'") + } + simple_key.possible = false + return false, true + } + return true, true +} + +// Check if a simple key may start at the current position and add it if +// needed. +func yaml_parser_save_simple_key(parser *yaml_parser_t) bool { + // A simple key is required at the current position if the scanner is in + // the block context and the current column coincides with the indentation + // level. + + required := parser.flow_level == 0 && parser.indent == parser.mark.column + + // + // If the current position may start a simple key, save it. + // + if parser.simple_key_allowed { + simple_key := yaml_simple_key_t{ + possible: true, + required: required, + token_number: parser.tokens_parsed + (len(parser.tokens) - parser.tokens_head), + mark: parser.mark, + } + + if !yaml_parser_remove_simple_key(parser) { + return false + } + parser.simple_keys[len(parser.simple_keys)-1] = simple_key + parser.simple_keys_by_tok[simple_key.token_number] = len(parser.simple_keys) - 1 + } + return true +} + +// Remove a potential simple key at the current flow level. +func yaml_parser_remove_simple_key(parser *yaml_parser_t) bool { + i := len(parser.simple_keys) - 1 + if parser.simple_keys[i].possible { + // If the key is required, it is an error. + if parser.simple_keys[i].required { + return yaml_parser_set_scanner_error(parser, + "while scanning a simple key", parser.simple_keys[i].mark, + "could not find expected ':'") + } + // Remove the key from the stack. + parser.simple_keys[i].possible = false + delete(parser.simple_keys_by_tok, parser.simple_keys[i].token_number) + } + return true +} + +// max_flow_level limits the flow_level +const max_flow_level = 10000 + +// Increase the flow level and resize the simple key list if needed. +func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool { + // Reset the simple key on the next level. + parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{ + possible: false, + required: false, + token_number: parser.tokens_parsed + (len(parser.tokens) - parser.tokens_head), + mark: parser.mark, + }) + + // Increase the flow level. + parser.flow_level++ + if parser.flow_level > max_flow_level { + return yaml_parser_set_scanner_error(parser, + "while increasing flow level", parser.simple_keys[len(parser.simple_keys)-1].mark, + fmt.Sprintf("exceeded max depth of %d", max_flow_level)) + } + return true +} + +// Decrease the flow level. +func yaml_parser_decrease_flow_level(parser *yaml_parser_t) bool { + if parser.flow_level > 0 { + parser.flow_level-- + last := len(parser.simple_keys) - 1 + delete(parser.simple_keys_by_tok, parser.simple_keys[last].token_number) + parser.simple_keys = parser.simple_keys[:last] + } + return true +} + +// max_indents limits the indents stack size +const max_indents = 10000 + +// Push the current indentation level to the stack and set the new level +// the current column is greater than the indentation level. In this case, +// append or insert the specified token into the token queue. +func yaml_parser_roll_indent(parser *yaml_parser_t, column, number int, typ yaml_token_type_t, mark yaml_mark_t) bool { + // In the flow context, do nothing. + if parser.flow_level > 0 { + return true + } + + if parser.indent < column { + // Push the current indentation level to the stack and set the new + // indentation level. + parser.indents = append(parser.indents, parser.indent) + parser.indent = column + if len(parser.indents) > max_indents { + return yaml_parser_set_scanner_error(parser, + "while increasing indent level", parser.simple_keys[len(parser.simple_keys)-1].mark, + fmt.Sprintf("exceeded max depth of %d", max_indents)) + } + + // Create a token and insert it into the queue. + token := yaml_token_t{ + typ: typ, + start_mark: mark, + end_mark: mark, + } + if number > -1 { + number -= parser.tokens_parsed + } + yaml_insert_token(parser, number, &token) + } + return true +} + +// Pop indentation levels from the indents stack until the current level +// becomes less or equal to the column. For each indentation level, append +// the BLOCK-END token. +func yaml_parser_unroll_indent(parser *yaml_parser_t, column int, scan_mark yaml_mark_t) bool { + // In the flow context, do nothing. + if parser.flow_level > 0 { + return true + } + + block_mark := scan_mark + block_mark.index-- + + // Loop through the indentation levels in the stack. + for parser.indent > column { + + // [Go] Reposition the end token before potential following + // foot comments of parent blocks. For that, search + // backwards for recent comments that were at the same + // indent as the block that is ending now. + stop_index := block_mark.index + for i := len(parser.comments) - 1; i >= 0; i-- { + comment := &parser.comments[i] + + if comment.end_mark.index < stop_index { + // Don't go back beyond the start of the comment/whitespace scan, unless column < 0. + // If requested indent column is < 0, then the document is over and everything else + // is a foot anyway. + break + } + if comment.start_mark.column == parser.indent+1 { + // This is a good match. But maybe there's a former comment + // at that same indent level, so keep searching. + block_mark = comment.start_mark + } + + // While the end of the former comment matches with + // the start of the following one, we know there's + // nothing in between and scanning is still safe. + stop_index = comment.scan_mark.index + } + + // Create a token and append it to the queue. + token := yaml_token_t{ + typ: yaml_BLOCK_END_TOKEN, + start_mark: block_mark, + end_mark: block_mark, + } + yaml_insert_token(parser, -1, &token) + + // Pop the indentation level. + parser.indent = parser.indents[len(parser.indents)-1] + parser.indents = parser.indents[:len(parser.indents)-1] + } + return true +} + +// Initialize the scanner and produce the STREAM-START token. +func yaml_parser_fetch_stream_start(parser *yaml_parser_t) bool { + + // Set the initial indentation. + parser.indent = -1 + + // Initialize the simple key stack. + parser.simple_keys = append(parser.simple_keys, yaml_simple_key_t{}) + + parser.simple_keys_by_tok = make(map[int]int) + + // A simple key is allowed at the beginning of the stream. + parser.simple_key_allowed = true + + // We have started. + parser.stream_start_produced = true + + // Create the STREAM-START token and append it to the queue. + token := yaml_token_t{ + typ: yaml_STREAM_START_TOKEN, + start_mark: parser.mark, + end_mark: parser.mark, + encoding: parser.encoding, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the STREAM-END token and shut down the scanner. +func yaml_parser_fetch_stream_end(parser *yaml_parser_t) bool { + + // Force new line. + if parser.mark.column != 0 { + parser.mark.column = 0 + parser.mark.line++ + } + + // Reset the indentation level. + if !yaml_parser_unroll_indent(parser, -1, parser.mark) { + return false + } + + // Reset simple keys. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + parser.simple_key_allowed = false + + // Create the STREAM-END token and append it to the queue. + token := yaml_token_t{ + typ: yaml_STREAM_END_TOKEN, + start_mark: parser.mark, + end_mark: parser.mark, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce a VERSION-DIRECTIVE or TAG-DIRECTIVE token. +func yaml_parser_fetch_directive(parser *yaml_parser_t) bool { + // Reset the indentation level. + if !yaml_parser_unroll_indent(parser, -1, parser.mark) { + return false + } + + // Reset simple keys. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + parser.simple_key_allowed = false + + // Create the YAML-DIRECTIVE or TAG-DIRECTIVE token. + token := yaml_token_t{} + if !yaml_parser_scan_directive(parser, &token) { + return false + } + // Append the token to the queue. + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the DOCUMENT-START or DOCUMENT-END token. +func yaml_parser_fetch_document_indicator(parser *yaml_parser_t, typ yaml_token_type_t) bool { + // Reset the indentation level. + if !yaml_parser_unroll_indent(parser, -1, parser.mark) { + return false + } + + // Reset simple keys. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + parser.simple_key_allowed = false + + // Consume the token. + start_mark := parser.mark + + skip(parser) + skip(parser) + skip(parser) + + end_mark := parser.mark + + // Create the DOCUMENT-START or DOCUMENT-END token. + token := yaml_token_t{ + typ: typ, + start_mark: start_mark, + end_mark: end_mark, + } + // Append the token to the queue. + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the FLOW-SEQUENCE-START or FLOW-MAPPING-START token. +func yaml_parser_fetch_flow_collection_start(parser *yaml_parser_t, typ yaml_token_type_t) bool { + + // The indicators '[' and '{' may start a simple key. + if !yaml_parser_save_simple_key(parser) { + return false + } + + // Increase the flow level. + if !yaml_parser_increase_flow_level(parser) { + return false + } + + // A simple key may follow the indicators '[' and '{'. + parser.simple_key_allowed = true + + // Consume the token. + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the FLOW-SEQUENCE-START of FLOW-MAPPING-START token. + token := yaml_token_t{ + typ: typ, + start_mark: start_mark, + end_mark: end_mark, + } + // Append the token to the queue. + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the FLOW-SEQUENCE-END or FLOW-MAPPING-END token. +func yaml_parser_fetch_flow_collection_end(parser *yaml_parser_t, typ yaml_token_type_t) bool { + // Reset any potential simple key on the current flow level. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + // Decrease the flow level. + if !yaml_parser_decrease_flow_level(parser) { + return false + } + + // No simple keys after the indicators ']' and '}'. + parser.simple_key_allowed = false + + // Consume the token. + + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the FLOW-SEQUENCE-END of FLOW-MAPPING-END token. + token := yaml_token_t{ + typ: typ, + start_mark: start_mark, + end_mark: end_mark, + } + // Append the token to the queue. + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the FLOW-ENTRY token. +func yaml_parser_fetch_flow_entry(parser *yaml_parser_t) bool { + // Reset any potential simple keys on the current flow level. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + // Simple keys are allowed after ','. + parser.simple_key_allowed = true + + // Consume the token. + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the FLOW-ENTRY token and append it to the queue. + token := yaml_token_t{ + typ: yaml_FLOW_ENTRY_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the BLOCK-ENTRY token. +func yaml_parser_fetch_block_entry(parser *yaml_parser_t) bool { + // Check if the scanner is in the block context. + if parser.flow_level == 0 { + // Check if we are allowed to start a new entry. + if !parser.simple_key_allowed { + return yaml_parser_set_scanner_error(parser, "", parser.mark, + "block sequence entries are not allowed in this context") + } + // Add the BLOCK-SEQUENCE-START token if needed. + if !yaml_parser_roll_indent(parser, parser.mark.column, -1, yaml_BLOCK_SEQUENCE_START_TOKEN, parser.mark) { + return false + } + } else { + // It is an error for the '-' indicator to occur in the flow context, + // but we let the Parser detect and report about it because the Parser + // is able to point to the context. + } + + // Reset any potential simple keys on the current flow level. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + // Simple keys are allowed after '-'. + parser.simple_key_allowed = true + + // Consume the token. + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the BLOCK-ENTRY token and append it to the queue. + token := yaml_token_t{ + typ: yaml_BLOCK_ENTRY_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the KEY token. +func yaml_parser_fetch_key(parser *yaml_parser_t) bool { + + // In the block context, additional checks are required. + if parser.flow_level == 0 { + // Check if we are allowed to start a new key (not nessesary simple). + if !parser.simple_key_allowed { + return yaml_parser_set_scanner_error(parser, "", parser.mark, + "mapping keys are not allowed in this context") + } + // Add the BLOCK-MAPPING-START token if needed. + if !yaml_parser_roll_indent(parser, parser.mark.column, -1, yaml_BLOCK_MAPPING_START_TOKEN, parser.mark) { + return false + } + } + + // Reset any potential simple keys on the current flow level. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + // Simple keys are allowed after '?' in the block context. + parser.simple_key_allowed = parser.flow_level == 0 + + // Consume the token. + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the KEY token and append it to the queue. + token := yaml_token_t{ + typ: yaml_KEY_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the VALUE token. +func yaml_parser_fetch_value(parser *yaml_parser_t) bool { + + simple_key := &parser.simple_keys[len(parser.simple_keys)-1] + + // Have we found a simple key? + if valid, ok := yaml_simple_key_is_valid(parser, simple_key); !ok { + return false + + } else if valid { + + // Create the KEY token and insert it into the queue. + token := yaml_token_t{ + typ: yaml_KEY_TOKEN, + start_mark: simple_key.mark, + end_mark: simple_key.mark, + } + yaml_insert_token(parser, simple_key.token_number-parser.tokens_parsed, &token) + + // In the block context, we may need to add the BLOCK-MAPPING-START token. + if !yaml_parser_roll_indent(parser, simple_key.mark.column, + simple_key.token_number, + yaml_BLOCK_MAPPING_START_TOKEN, simple_key.mark) { + return false + } + + // Remove the simple key. + simple_key.possible = false + delete(parser.simple_keys_by_tok, simple_key.token_number) + + // A simple key cannot follow another simple key. + parser.simple_key_allowed = false + + } else { + // The ':' indicator follows a complex key. + + // In the block context, extra checks are required. + if parser.flow_level == 0 { + + // Check if we are allowed to start a complex value. + if !parser.simple_key_allowed { + return yaml_parser_set_scanner_error(parser, "", parser.mark, + "mapping values are not allowed in this context") + } + + // Add the BLOCK-MAPPING-START token if needed. + if !yaml_parser_roll_indent(parser, parser.mark.column, -1, yaml_BLOCK_MAPPING_START_TOKEN, parser.mark) { + return false + } + } + + // Simple keys after ':' are allowed in the block context. + parser.simple_key_allowed = parser.flow_level == 0 + } + + // Consume the token. + start_mark := parser.mark + skip(parser) + end_mark := parser.mark + + // Create the VALUE token and append it to the queue. + token := yaml_token_t{ + typ: yaml_VALUE_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the ALIAS or ANCHOR token. +func yaml_parser_fetch_anchor(parser *yaml_parser_t, typ yaml_token_type_t) bool { + // An anchor or an alias could be a simple key. + if !yaml_parser_save_simple_key(parser) { + return false + } + + // A simple key cannot follow an anchor or an alias. + parser.simple_key_allowed = false + + // Create the ALIAS or ANCHOR token and append it to the queue. + var token yaml_token_t + if !yaml_parser_scan_anchor(parser, &token, typ) { + return false + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the TAG token. +func yaml_parser_fetch_tag(parser *yaml_parser_t) bool { + // A tag could be a simple key. + if !yaml_parser_save_simple_key(parser) { + return false + } + + // A simple key cannot follow a tag. + parser.simple_key_allowed = false + + // Create the TAG token and append it to the queue. + var token yaml_token_t + if !yaml_parser_scan_tag(parser, &token) { + return false + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the SCALAR(...,literal) or SCALAR(...,folded) tokens. +func yaml_parser_fetch_block_scalar(parser *yaml_parser_t, literal bool) bool { + // Remove any potential simple keys. + if !yaml_parser_remove_simple_key(parser) { + return false + } + + // A simple key may follow a block scalar. + parser.simple_key_allowed = true + + // Create the SCALAR token and append it to the queue. + var token yaml_token_t + if !yaml_parser_scan_block_scalar(parser, &token, literal) { + return false + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the SCALAR(...,single-quoted) or SCALAR(...,double-quoted) tokens. +func yaml_parser_fetch_flow_scalar(parser *yaml_parser_t, single bool) bool { + // A plain scalar could be a simple key. + if !yaml_parser_save_simple_key(parser) { + return false + } + + // A simple key cannot follow a flow scalar. + parser.simple_key_allowed = false + + // Create the SCALAR token and append it to the queue. + var token yaml_token_t + if !yaml_parser_scan_flow_scalar(parser, &token, single) { + return false + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Produce the SCALAR(...,plain) token. +func yaml_parser_fetch_plain_scalar(parser *yaml_parser_t) bool { + // A plain scalar could be a simple key. + if !yaml_parser_save_simple_key(parser) { + return false + } + + // A simple key cannot follow a flow scalar. + parser.simple_key_allowed = false + + // Create the SCALAR token and append it to the queue. + var token yaml_token_t + if !yaml_parser_scan_plain_scalar(parser, &token) { + return false + } + yaml_insert_token(parser, -1, &token) + return true +} + +// Eat whitespaces and comments until the next token is found. +func yaml_parser_scan_to_next_token(parser *yaml_parser_t) bool { + + scan_mark := parser.mark + + // Until the next token is not found. + for { + // Allow the BOM mark to start a line. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if parser.mark.column == 0 && is_bom(parser.buffer, parser.buffer_pos) { + skip(parser) + } + + // Eat whitespaces. + // Tabs are allowed: + // - in the flow context + // - in the block context, but not at the beginning of the line or + // after '-', '?', or ':' (complex value). + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + for parser.buffer[parser.buffer_pos] == ' ' || ((parser.flow_level > 0 || !parser.simple_key_allowed) && parser.buffer[parser.buffer_pos] == '\t') { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Check if we just had a line comment under a sequence entry that + // looks more like a header to the following content. Similar to this: + // + // - # The comment + // - Some data + // + // If so, transform the line comment to a head comment and reposition. + if len(parser.comments) > 0 && len(parser.tokens) > 1 { + tokenA := parser.tokens[len(parser.tokens)-2] + tokenB := parser.tokens[len(parser.tokens)-1] + comment := &parser.comments[len(parser.comments)-1] + if tokenA.typ == yaml_BLOCK_SEQUENCE_START_TOKEN && tokenB.typ == yaml_BLOCK_ENTRY_TOKEN && len(comment.line) > 0 && !is_break(parser.buffer, parser.buffer_pos) { + // If it was in the prior line, reposition so it becomes a + // header of the follow up token. Otherwise, keep it in place + // so it becomes a header of the former. + comment.head = comment.line + comment.line = nil + if comment.start_mark.line == parser.mark.line-1 { + comment.token_mark = parser.mark + } + } + } + + // Eat a comment until a line break. + if parser.buffer[parser.buffer_pos] == '#' { + if !yaml_parser_scan_comments(parser, scan_mark) { + return false + } + } + + // If it is a line break, eat it. + if is_break(parser.buffer, parser.buffer_pos) { + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + skip_line(parser) + + // In the block context, a new line may start a simple key. + if parser.flow_level == 0 { + parser.simple_key_allowed = true + } + } else { + break // We have found a token. + } + } + + return true +} + +// Scan a YAML-DIRECTIVE or TAG-DIRECTIVE token. +// +// Scope: +// %YAML 1.1 # a comment \n +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// %TAG !yaml! tag:yaml.org,2002: \n +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// +func yaml_parser_scan_directive(parser *yaml_parser_t, token *yaml_token_t) bool { + // Eat '%'. + start_mark := parser.mark + skip(parser) + + // Scan the directive name. + var name []byte + if !yaml_parser_scan_directive_name(parser, start_mark, &name) { + return false + } + + // Is it a YAML directive? + if bytes.Equal(name, []byte("YAML")) { + // Scan the VERSION directive value. + var major, minor int8 + if !yaml_parser_scan_version_directive_value(parser, start_mark, &major, &minor) { + return false + } + end_mark := parser.mark + + // Create a VERSION-DIRECTIVE token. + *token = yaml_token_t{ + typ: yaml_VERSION_DIRECTIVE_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + major: major, + minor: minor, + } + + // Is it a TAG directive? + } else if bytes.Equal(name, []byte("TAG")) { + // Scan the TAG directive value. + var handle, prefix []byte + if !yaml_parser_scan_tag_directive_value(parser, start_mark, &handle, &prefix) { + return false + } + end_mark := parser.mark + + // Create a TAG-DIRECTIVE token. + *token = yaml_token_t{ + typ: yaml_TAG_DIRECTIVE_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + value: handle, + prefix: prefix, + } + + // Unknown directive. + } else { + yaml_parser_set_scanner_error(parser, "while scanning a directive", + start_mark, "found unknown directive name") + return false + } + + // Eat the rest of the line including any comments. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + for is_blank(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + if parser.buffer[parser.buffer_pos] == '#' { + // [Go] Discard this inline comment for the time being. + //if !yaml_parser_scan_line_comment(parser, start_mark) { + // return false + //} + for !is_breakz(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + } + + // Check if we are at the end of the line. + if !is_breakz(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a directive", + start_mark, "did not find expected comment or line break") + return false + } + + // Eat a line break. + if is_break(parser.buffer, parser.buffer_pos) { + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + skip_line(parser) + } + + return true +} + +// Scan the directive name. +// +// Scope: +// %YAML 1.1 # a comment \n +// ^^^^ +// %TAG !yaml! tag:yaml.org,2002: \n +// ^^^ +// +func yaml_parser_scan_directive_name(parser *yaml_parser_t, start_mark yaml_mark_t, name *[]byte) bool { + // Consume the directive name. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + var s []byte + for is_alpha(parser.buffer, parser.buffer_pos) { + s = read(parser, s) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Check if the name is empty. + if len(s) == 0 { + yaml_parser_set_scanner_error(parser, "while scanning a directive", + start_mark, "could not find expected directive name") + return false + } + + // Check for an blank character after the name. + if !is_blankz(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a directive", + start_mark, "found unexpected non-alphabetical character") + return false + } + *name = s + return true +} + +// Scan the value of VERSION-DIRECTIVE. +// +// Scope: +// %YAML 1.1 # a comment \n +// ^^^^^^ +func yaml_parser_scan_version_directive_value(parser *yaml_parser_t, start_mark yaml_mark_t, major, minor *int8) bool { + // Eat whitespaces. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + for is_blank(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Consume the major version number. + if !yaml_parser_scan_version_directive_number(parser, start_mark, major) { + return false + } + + // Eat '.'. + if parser.buffer[parser.buffer_pos] != '.' { + return yaml_parser_set_scanner_error(parser, "while scanning a %YAML directive", + start_mark, "did not find expected digit or '.' character") + } + + skip(parser) + + // Consume the minor version number. + if !yaml_parser_scan_version_directive_number(parser, start_mark, minor) { + return false + } + return true +} + +const max_number_length = 2 + +// Scan the version number of VERSION-DIRECTIVE. +// +// Scope: +// %YAML 1.1 # a comment \n +// ^ +// %YAML 1.1 # a comment \n +// ^ +func yaml_parser_scan_version_directive_number(parser *yaml_parser_t, start_mark yaml_mark_t, number *int8) bool { + + // Repeat while the next character is digit. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + var value, length int8 + for is_digit(parser.buffer, parser.buffer_pos) { + // Check if the number is too long. + length++ + if length > max_number_length { + return yaml_parser_set_scanner_error(parser, "while scanning a %YAML directive", + start_mark, "found extremely long version number") + } + value = value*10 + int8(as_digit(parser.buffer, parser.buffer_pos)) + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Check if the number was present. + if length == 0 { + return yaml_parser_set_scanner_error(parser, "while scanning a %YAML directive", + start_mark, "did not find expected version number") + } + *number = value + return true +} + +// Scan the value of a TAG-DIRECTIVE token. +// +// Scope: +// %TAG !yaml! tag:yaml.org,2002: \n +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +// +func yaml_parser_scan_tag_directive_value(parser *yaml_parser_t, start_mark yaml_mark_t, handle, prefix *[]byte) bool { + var handle_value, prefix_value []byte + + // Eat whitespaces. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + for is_blank(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Scan a handle. + if !yaml_parser_scan_tag_handle(parser, true, start_mark, &handle_value) { + return false + } + + // Expect a whitespace. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if !is_blank(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a %TAG directive", + start_mark, "did not find expected whitespace") + return false + } + + // Eat whitespaces. + for is_blank(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Scan a prefix. + if !yaml_parser_scan_tag_uri(parser, true, nil, start_mark, &prefix_value) { + return false + } + + // Expect a whitespace or line break. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if !is_blankz(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a %TAG directive", + start_mark, "did not find expected whitespace or line break") + return false + } + + *handle = handle_value + *prefix = prefix_value + return true +} + +func yaml_parser_scan_anchor(parser *yaml_parser_t, token *yaml_token_t, typ yaml_token_type_t) bool { + var s []byte + + // Eat the indicator character. + start_mark := parser.mark + skip(parser) + + // Consume the value. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + for is_alpha(parser.buffer, parser.buffer_pos) { + s = read(parser, s) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + end_mark := parser.mark + + /* + * Check if length of the anchor is greater than 0 and it is followed by + * a whitespace character or one of the indicators: + * + * '?', ':', ',', ']', '}', '%', '@', '`'. + */ + + if len(s) == 0 || + !(is_blankz(parser.buffer, parser.buffer_pos) || parser.buffer[parser.buffer_pos] == '?' || + parser.buffer[parser.buffer_pos] == ':' || parser.buffer[parser.buffer_pos] == ',' || + parser.buffer[parser.buffer_pos] == ']' || parser.buffer[parser.buffer_pos] == '}' || + parser.buffer[parser.buffer_pos] == '%' || parser.buffer[parser.buffer_pos] == '@' || + parser.buffer[parser.buffer_pos] == '`') { + context := "while scanning an alias" + if typ == yaml_ANCHOR_TOKEN { + context = "while scanning an anchor" + } + yaml_parser_set_scanner_error(parser, context, start_mark, + "did not find expected alphabetic or numeric character") + return false + } + + // Create a token. + *token = yaml_token_t{ + typ: typ, + start_mark: start_mark, + end_mark: end_mark, + value: s, + } + + return true +} + +/* + * Scan a TAG token. + */ + +func yaml_parser_scan_tag(parser *yaml_parser_t, token *yaml_token_t) bool { + var handle, suffix []byte + + start_mark := parser.mark + + // Check if the tag is in the canonical form. + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + + if parser.buffer[parser.buffer_pos+1] == '<' { + // Keep the handle as '' + + // Eat '!<' + skip(parser) + skip(parser) + + // Consume the tag value. + if !yaml_parser_scan_tag_uri(parser, false, nil, start_mark, &suffix) { + return false + } + + // Check for '>' and eat it. + if parser.buffer[parser.buffer_pos] != '>' { + yaml_parser_set_scanner_error(parser, "while scanning a tag", + start_mark, "did not find the expected '>'") + return false + } + + skip(parser) + } else { + // The tag has either the '!suffix' or the '!handle!suffix' form. + + // First, try to scan a handle. + if !yaml_parser_scan_tag_handle(parser, false, start_mark, &handle) { + return false + } + + // Check if it is, indeed, handle. + if handle[0] == '!' && len(handle) > 1 && handle[len(handle)-1] == '!' { + // Scan the suffix now. + if !yaml_parser_scan_tag_uri(parser, false, nil, start_mark, &suffix) { + return false + } + } else { + // It wasn't a handle after all. Scan the rest of the tag. + if !yaml_parser_scan_tag_uri(parser, false, handle, start_mark, &suffix) { + return false + } + + // Set the handle to '!'. + handle = []byte{'!'} + + // A special case: the '!' tag. Set the handle to '' and the + // suffix to '!'. + if len(suffix) == 0 { + handle, suffix = suffix, handle + } + } + } + + // Check the character which ends the tag. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if !is_blankz(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a tag", + start_mark, "did not find expected whitespace or line break") + return false + } + + end_mark := parser.mark + + // Create a token. + *token = yaml_token_t{ + typ: yaml_TAG_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + value: handle, + suffix: suffix, + } + return true +} + +// Scan a tag handle. +func yaml_parser_scan_tag_handle(parser *yaml_parser_t, directive bool, start_mark yaml_mark_t, handle *[]byte) bool { + // Check the initial '!' character. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if parser.buffer[parser.buffer_pos] != '!' { + yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "did not find expected '!'") + return false + } + + var s []byte + + // Copy the '!' character. + s = read(parser, s) + + // Copy all subsequent alphabetical and numerical characters. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + for is_alpha(parser.buffer, parser.buffer_pos) { + s = read(parser, s) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Check if the trailing character is '!' and copy it. + if parser.buffer[parser.buffer_pos] == '!' { + s = read(parser, s) + } else { + // It's either the '!' tag or not really a tag handle. If it's a %TAG + // directive, it's an error. If it's a tag token, it must be a part of URI. + if directive && string(s) != "!" { + yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "did not find expected '!'") + return false + } + } + + *handle = s + return true +} + +// Scan a tag. +func yaml_parser_scan_tag_uri(parser *yaml_parser_t, directive bool, head []byte, start_mark yaml_mark_t, uri *[]byte) bool { + //size_t length = head ? strlen((char *)head) : 0 + var s []byte + hasTag := len(head) > 0 + + // Copy the head if needed. + // + // Note that we don't copy the leading '!' character. + if len(head) > 1 { + s = append(s, head[1:]...) + } + + // Scan the tag. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + // The set of characters that may appear in URI is as follows: + // + // '0'-'9', 'A'-'Z', 'a'-'z', '_', '-', ';', '/', '?', ':', '@', '&', + // '=', '+', '$', ',', '.', '!', '~', '*', '\'', '(', ')', '[', ']', + // '%'. + // [Go] TODO Convert this into more reasonable logic. + for is_alpha(parser.buffer, parser.buffer_pos) || parser.buffer[parser.buffer_pos] == ';' || + parser.buffer[parser.buffer_pos] == '/' || parser.buffer[parser.buffer_pos] == '?' || + parser.buffer[parser.buffer_pos] == ':' || parser.buffer[parser.buffer_pos] == '@' || + parser.buffer[parser.buffer_pos] == '&' || parser.buffer[parser.buffer_pos] == '=' || + parser.buffer[parser.buffer_pos] == '+' || parser.buffer[parser.buffer_pos] == '$' || + parser.buffer[parser.buffer_pos] == ',' || parser.buffer[parser.buffer_pos] == '.' || + parser.buffer[parser.buffer_pos] == '!' || parser.buffer[parser.buffer_pos] == '~' || + parser.buffer[parser.buffer_pos] == '*' || parser.buffer[parser.buffer_pos] == '\'' || + parser.buffer[parser.buffer_pos] == '(' || parser.buffer[parser.buffer_pos] == ')' || + parser.buffer[parser.buffer_pos] == '[' || parser.buffer[parser.buffer_pos] == ']' || + parser.buffer[parser.buffer_pos] == '%' { + // Check if it is a URI-escape sequence. + if parser.buffer[parser.buffer_pos] == '%' { + if !yaml_parser_scan_uri_escapes(parser, directive, start_mark, &s) { + return false + } + } else { + s = read(parser, s) + } + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + hasTag = true + } + + if !hasTag { + yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "did not find expected tag URI") + return false + } + *uri = s + return true +} + +// Decode an URI-escape sequence corresponding to a single UTF-8 character. +func yaml_parser_scan_uri_escapes(parser *yaml_parser_t, directive bool, start_mark yaml_mark_t, s *[]byte) bool { + + // Decode the required number of characters. + w := 1024 + for w > 0 { + // Check for a URI-escaped octet. + if parser.unread < 3 && !yaml_parser_update_buffer(parser, 3) { + return false + } + + if !(parser.buffer[parser.buffer_pos] == '%' && + is_hex(parser.buffer, parser.buffer_pos+1) && + is_hex(parser.buffer, parser.buffer_pos+2)) { + return yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "did not find URI escaped octet") + } + + // Get the octet. + octet := byte((as_hex(parser.buffer, parser.buffer_pos+1) << 4) + as_hex(parser.buffer, parser.buffer_pos+2)) + + // If it is the leading octet, determine the length of the UTF-8 sequence. + if w == 1024 { + w = width(octet) + if w == 0 { + return yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "found an incorrect leading UTF-8 octet") + } + } else { + // Check if the trailing octet is correct. + if octet&0xC0 != 0x80 { + return yaml_parser_set_scanner_tag_error(parser, directive, + start_mark, "found an incorrect trailing UTF-8 octet") + } + } + + // Copy the octet and move the pointers. + *s = append(*s, octet) + skip(parser) + skip(parser) + skip(parser) + w-- + } + return true +} + +// Scan a block scalar. +func yaml_parser_scan_block_scalar(parser *yaml_parser_t, token *yaml_token_t, literal bool) bool { + // Eat the indicator '|' or '>'. + start_mark := parser.mark + skip(parser) + + // Scan the additional block scalar indicators. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + // Check for a chomping indicator. + var chomping, increment int + if parser.buffer[parser.buffer_pos] == '+' || parser.buffer[parser.buffer_pos] == '-' { + // Set the chomping method and eat the indicator. + if parser.buffer[parser.buffer_pos] == '+' { + chomping = +1 + } else { + chomping = -1 + } + skip(parser) + + // Check for an indentation indicator. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if is_digit(parser.buffer, parser.buffer_pos) { + // Check that the indentation is greater than 0. + if parser.buffer[parser.buffer_pos] == '0' { + yaml_parser_set_scanner_error(parser, "while scanning a block scalar", + start_mark, "found an indentation indicator equal to 0") + return false + } + + // Get the indentation level and eat the indicator. + increment = as_digit(parser.buffer, parser.buffer_pos) + skip(parser) + } + + } else if is_digit(parser.buffer, parser.buffer_pos) { + // Do the same as above, but in the opposite order. + + if parser.buffer[parser.buffer_pos] == '0' { + yaml_parser_set_scanner_error(parser, "while scanning a block scalar", + start_mark, "found an indentation indicator equal to 0") + return false + } + increment = as_digit(parser.buffer, parser.buffer_pos) + skip(parser) + + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if parser.buffer[parser.buffer_pos] == '+' || parser.buffer[parser.buffer_pos] == '-' { + if parser.buffer[parser.buffer_pos] == '+' { + chomping = +1 + } else { + chomping = -1 + } + skip(parser) + } + } + + // Eat whitespaces and comments to the end of the line. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + for is_blank(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + if parser.buffer[parser.buffer_pos] == '#' { + // TODO Test this and then re-enable it. + //if !yaml_parser_scan_line_comment(parser, start_mark) { + // return false + //} + for !is_breakz(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + } + + // Check if we are at the end of the line. + if !is_breakz(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a block scalar", + start_mark, "did not find expected comment or line break") + return false + } + + // Eat a line break. + if is_break(parser.buffer, parser.buffer_pos) { + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + skip_line(parser) + } + + end_mark := parser.mark + + // Set the indentation level if it was specified. + var indent int + if increment > 0 { + if parser.indent >= 0 { + indent = parser.indent + increment + } else { + indent = increment + } + } + + // Scan the leading line breaks and determine the indentation level if needed. + var s, leading_break, trailing_breaks []byte + if !yaml_parser_scan_block_scalar_breaks(parser, &indent, &trailing_breaks, start_mark, &end_mark) { + return false + } + + // Scan the block scalar content. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + var leading_blank, trailing_blank bool + for parser.mark.column == indent && !is_z(parser.buffer, parser.buffer_pos) { + // We are at the beginning of a non-empty line. + + // Is it a trailing whitespace? + trailing_blank = is_blank(parser.buffer, parser.buffer_pos) + + // Check if we need to fold the leading line break. + if !literal && !leading_blank && !trailing_blank && len(leading_break) > 0 && leading_break[0] == '\n' { + // Do we need to join the lines by space? + if len(trailing_breaks) == 0 { + s = append(s, ' ') + } + } else { + s = append(s, leading_break...) + } + leading_break = leading_break[:0] + + // Append the remaining line breaks. + s = append(s, trailing_breaks...) + trailing_breaks = trailing_breaks[:0] + + // Is it a leading whitespace? + leading_blank = is_blank(parser.buffer, parser.buffer_pos) + + // Consume the current line. + for !is_breakz(parser.buffer, parser.buffer_pos) { + s = read(parser, s) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Consume the line break. + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + + leading_break = read_line(parser, leading_break) + + // Eat the following indentation spaces and line breaks. + if !yaml_parser_scan_block_scalar_breaks(parser, &indent, &trailing_breaks, start_mark, &end_mark) { + return false + } + } + + // Chomp the tail. + if chomping != -1 { + s = append(s, leading_break...) + } + if chomping == 1 { + s = append(s, trailing_breaks...) + } + + // Create a token. + *token = yaml_token_t{ + typ: yaml_SCALAR_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + value: s, + style: yaml_LITERAL_SCALAR_STYLE, + } + if !literal { + token.style = yaml_FOLDED_SCALAR_STYLE + } + return true +} + +// Scan indentation spaces and line breaks for a block scalar. Determine the +// indentation level if needed. +func yaml_parser_scan_block_scalar_breaks(parser *yaml_parser_t, indent *int, breaks *[]byte, start_mark yaml_mark_t, end_mark *yaml_mark_t) bool { + *end_mark = parser.mark + + // Eat the indentation spaces and line breaks. + max_indent := 0 + for { + // Eat the indentation spaces. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + for (*indent == 0 || parser.mark.column < *indent) && is_space(parser.buffer, parser.buffer_pos) { + skip(parser) + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + if parser.mark.column > max_indent { + max_indent = parser.mark.column + } + + // Check for a tab character messing the indentation. + if (*indent == 0 || parser.mark.column < *indent) && is_tab(parser.buffer, parser.buffer_pos) { + return yaml_parser_set_scanner_error(parser, "while scanning a block scalar", + start_mark, "found a tab character where an indentation space is expected") + } + + // Have we found a non-empty line? + if !is_break(parser.buffer, parser.buffer_pos) { + break + } + + // Consume the line break. + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + // [Go] Should really be returning breaks instead. + *breaks = read_line(parser, *breaks) + *end_mark = parser.mark + } + + // Determine the indentation level if needed. + if *indent == 0 { + *indent = max_indent + if *indent < parser.indent+1 { + *indent = parser.indent + 1 + } + if *indent < 1 { + *indent = 1 + } + } + return true +} + +// Scan a quoted scalar. +func yaml_parser_scan_flow_scalar(parser *yaml_parser_t, token *yaml_token_t, single bool) bool { + // Eat the left quote. + start_mark := parser.mark + skip(parser) + + // Consume the content of the quoted scalar. + var s, leading_break, trailing_breaks, whitespaces []byte + for { + // Check that there are no document indicators at the beginning of the line. + if parser.unread < 4 && !yaml_parser_update_buffer(parser, 4) { + return false + } + + if parser.mark.column == 0 && + ((parser.buffer[parser.buffer_pos+0] == '-' && + parser.buffer[parser.buffer_pos+1] == '-' && + parser.buffer[parser.buffer_pos+2] == '-') || + (parser.buffer[parser.buffer_pos+0] == '.' && + parser.buffer[parser.buffer_pos+1] == '.' && + parser.buffer[parser.buffer_pos+2] == '.')) && + is_blankz(parser.buffer, parser.buffer_pos+3) { + yaml_parser_set_scanner_error(parser, "while scanning a quoted scalar", + start_mark, "found unexpected document indicator") + return false + } + + // Check for EOF. + if is_z(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a quoted scalar", + start_mark, "found unexpected end of stream") + return false + } + + // Consume non-blank characters. + leading_blanks := false + for !is_blankz(parser.buffer, parser.buffer_pos) { + if single && parser.buffer[parser.buffer_pos] == '\'' && parser.buffer[parser.buffer_pos+1] == '\'' { + // Is is an escaped single quote. + s = append(s, '\'') + skip(parser) + skip(parser) + + } else if single && parser.buffer[parser.buffer_pos] == '\'' { + // It is a right single quote. + break + } else if !single && parser.buffer[parser.buffer_pos] == '"' { + // It is a right double quote. + break + + } else if !single && parser.buffer[parser.buffer_pos] == '\\' && is_break(parser.buffer, parser.buffer_pos+1) { + // It is an escaped line break. + if parser.unread < 3 && !yaml_parser_update_buffer(parser, 3) { + return false + } + skip(parser) + skip_line(parser) + leading_blanks = true + break + + } else if !single && parser.buffer[parser.buffer_pos] == '\\' { + // It is an escape sequence. + code_length := 0 + + // Check the escape character. + switch parser.buffer[parser.buffer_pos+1] { + case '0': + s = append(s, 0) + case 'a': + s = append(s, '\x07') + case 'b': + s = append(s, '\x08') + case 't', '\t': + s = append(s, '\x09') + case 'n': + s = append(s, '\x0A') + case 'v': + s = append(s, '\x0B') + case 'f': + s = append(s, '\x0C') + case 'r': + s = append(s, '\x0D') + case 'e': + s = append(s, '\x1B') + case ' ': + s = append(s, '\x20') + case '"': + s = append(s, '"') + case '\'': + s = append(s, '\'') + case '\\': + s = append(s, '\\') + case 'N': // NEL (#x85) + s = append(s, '\xC2') + s = append(s, '\x85') + case '_': // #xA0 + s = append(s, '\xC2') + s = append(s, '\xA0') + case 'L': // LS (#x2028) + s = append(s, '\xE2') + s = append(s, '\x80') + s = append(s, '\xA8') + case 'P': // PS (#x2029) + s = append(s, '\xE2') + s = append(s, '\x80') + s = append(s, '\xA9') + case 'x': + code_length = 2 + case 'u': + code_length = 4 + case 'U': + code_length = 8 + default: + yaml_parser_set_scanner_error(parser, "while parsing a quoted scalar", + start_mark, "found unknown escape character") + return false + } + + skip(parser) + skip(parser) + + // Consume an arbitrary escape code. + if code_length > 0 { + var value int + + // Scan the character value. + if parser.unread < code_length && !yaml_parser_update_buffer(parser, code_length) { + return false + } + for k := 0; k < code_length; k++ { + if !is_hex(parser.buffer, parser.buffer_pos+k) { + yaml_parser_set_scanner_error(parser, "while parsing a quoted scalar", + start_mark, "did not find expected hexdecimal number") + return false + } + value = (value << 4) + as_hex(parser.buffer, parser.buffer_pos+k) + } + + // Check the value and write the character. + if (value >= 0xD800 && value <= 0xDFFF) || value > 0x10FFFF { + yaml_parser_set_scanner_error(parser, "while parsing a quoted scalar", + start_mark, "found invalid Unicode character escape code") + return false + } + if value <= 0x7F { + s = append(s, byte(value)) + } else if value <= 0x7FF { + s = append(s, byte(0xC0+(value>>6))) + s = append(s, byte(0x80+(value&0x3F))) + } else if value <= 0xFFFF { + s = append(s, byte(0xE0+(value>>12))) + s = append(s, byte(0x80+((value>>6)&0x3F))) + s = append(s, byte(0x80+(value&0x3F))) + } else { + s = append(s, byte(0xF0+(value>>18))) + s = append(s, byte(0x80+((value>>12)&0x3F))) + s = append(s, byte(0x80+((value>>6)&0x3F))) + s = append(s, byte(0x80+(value&0x3F))) + } + + // Advance the pointer. + for k := 0; k < code_length; k++ { + skip(parser) + } + } + } else { + // It is a non-escaped non-blank character. + s = read(parser, s) + } + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + } + + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + // Check if we are at the end of the scalar. + if single { + if parser.buffer[parser.buffer_pos] == '\'' { + break + } + } else { + if parser.buffer[parser.buffer_pos] == '"' { + break + } + } + + // Consume blank characters. + for is_blank(parser.buffer, parser.buffer_pos) || is_break(parser.buffer, parser.buffer_pos) { + if is_blank(parser.buffer, parser.buffer_pos) { + // Consume a space or a tab character. + if !leading_blanks { + whitespaces = read(parser, whitespaces) + } else { + skip(parser) + } + } else { + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + + // Check if it is a first line break. + if !leading_blanks { + whitespaces = whitespaces[:0] + leading_break = read_line(parser, leading_break) + leading_blanks = true + } else { + trailing_breaks = read_line(parser, trailing_breaks) + } + } + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Join the whitespaces or fold line breaks. + if leading_blanks { + // Do we need to fold line breaks? + if len(leading_break) > 0 && leading_break[0] == '\n' { + if len(trailing_breaks) == 0 { + s = append(s, ' ') + } else { + s = append(s, trailing_breaks...) + } + } else { + s = append(s, leading_break...) + s = append(s, trailing_breaks...) + } + trailing_breaks = trailing_breaks[:0] + leading_break = leading_break[:0] + } else { + s = append(s, whitespaces...) + whitespaces = whitespaces[:0] + } + } + + // Eat the right quote. + skip(parser) + end_mark := parser.mark + + // Create a token. + *token = yaml_token_t{ + typ: yaml_SCALAR_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + value: s, + style: yaml_SINGLE_QUOTED_SCALAR_STYLE, + } + if !single { + token.style = yaml_DOUBLE_QUOTED_SCALAR_STYLE + } + return true +} + +// Scan a plain scalar. +func yaml_parser_scan_plain_scalar(parser *yaml_parser_t, token *yaml_token_t) bool { + + var s, leading_break, trailing_breaks, whitespaces []byte + var leading_blanks bool + var indent = parser.indent + 1 + + start_mark := parser.mark + end_mark := parser.mark + + // Consume the content of the plain scalar. + for { + // Check for a document indicator. + if parser.unread < 4 && !yaml_parser_update_buffer(parser, 4) { + return false + } + if parser.mark.column == 0 && + ((parser.buffer[parser.buffer_pos+0] == '-' && + parser.buffer[parser.buffer_pos+1] == '-' && + parser.buffer[parser.buffer_pos+2] == '-') || + (parser.buffer[parser.buffer_pos+0] == '.' && + parser.buffer[parser.buffer_pos+1] == '.' && + parser.buffer[parser.buffer_pos+2] == '.')) && + is_blankz(parser.buffer, parser.buffer_pos+3) { + break + } + + // Check for a comment. + if parser.buffer[parser.buffer_pos] == '#' { + break + } + + // Consume non-blank characters. + for !is_blankz(parser.buffer, parser.buffer_pos) { + + // Check for indicators that may end a plain scalar. + if (parser.buffer[parser.buffer_pos] == ':' && is_blankz(parser.buffer, parser.buffer_pos+1)) || + (parser.flow_level > 0 && + (parser.buffer[parser.buffer_pos] == ',' || + parser.buffer[parser.buffer_pos] == '?' || parser.buffer[parser.buffer_pos] == '[' || + parser.buffer[parser.buffer_pos] == ']' || parser.buffer[parser.buffer_pos] == '{' || + parser.buffer[parser.buffer_pos] == '}')) { + break + } + + // Check if we need to join whitespaces and breaks. + if leading_blanks || len(whitespaces) > 0 { + if leading_blanks { + // Do we need to fold line breaks? + if leading_break[0] == '\n' { + if len(trailing_breaks) == 0 { + s = append(s, ' ') + } else { + s = append(s, trailing_breaks...) + } + } else { + s = append(s, leading_break...) + s = append(s, trailing_breaks...) + } + trailing_breaks = trailing_breaks[:0] + leading_break = leading_break[:0] + leading_blanks = false + } else { + s = append(s, whitespaces...) + whitespaces = whitespaces[:0] + } + } + + // Copy the character. + s = read(parser, s) + + end_mark = parser.mark + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + } + + // Is it the end? + if !(is_blank(parser.buffer, parser.buffer_pos) || is_break(parser.buffer, parser.buffer_pos)) { + break + } + + // Consume blank characters. + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + + for is_blank(parser.buffer, parser.buffer_pos) || is_break(parser.buffer, parser.buffer_pos) { + if is_blank(parser.buffer, parser.buffer_pos) { + + // Check for tab characters that abuse indentation. + if leading_blanks && parser.mark.column < indent && is_tab(parser.buffer, parser.buffer_pos) { + yaml_parser_set_scanner_error(parser, "while scanning a plain scalar", + start_mark, "found a tab character that violates indentation") + return false + } + + // Consume a space or a tab character. + if !leading_blanks { + whitespaces = read(parser, whitespaces) + } else { + skip(parser) + } + } else { + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + + // Check if it is a first line break. + if !leading_blanks { + whitespaces = whitespaces[:0] + leading_break = read_line(parser, leading_break) + leading_blanks = true + } else { + trailing_breaks = read_line(parser, trailing_breaks) + } + } + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + } + + // Check indentation level. + if parser.flow_level == 0 && parser.mark.column < indent { + break + } + } + + // Create a token. + *token = yaml_token_t{ + typ: yaml_SCALAR_TOKEN, + start_mark: start_mark, + end_mark: end_mark, + value: s, + style: yaml_PLAIN_SCALAR_STYLE, + } + + // Note that we change the 'simple_key_allowed' flag. + if leading_blanks { + parser.simple_key_allowed = true + } + return true +} + +func yaml_parser_scan_line_comment(parser *yaml_parser_t, token_mark yaml_mark_t) bool { + if parser.newlines > 0 { + return true + } + + var start_mark yaml_mark_t + var text []byte + + for peek := 0; peek < 512; peek++ { + if parser.unread < peek+1 && !yaml_parser_update_buffer(parser, peek+1) { + break + } + if is_blank(parser.buffer, parser.buffer_pos+peek) { + continue + } + if parser.buffer[parser.buffer_pos+peek] == '#' { + seen := parser.mark.index+peek + for { + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if is_breakz(parser.buffer, parser.buffer_pos) { + if parser.mark.index >= seen { + break + } + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + skip_line(parser) + } else { + if parser.mark.index >= seen { + if len(text) == 0 { + start_mark = parser.mark + } + text = append(text, parser.buffer[parser.buffer_pos]) + } + skip(parser) + } + } + } + break + } + if len(text) > 0 { + parser.comments = append(parser.comments, yaml_comment_t{ + token_mark: token_mark, + start_mark: start_mark, + line: text, + }) + } + return true +} + +func yaml_parser_scan_comments(parser *yaml_parser_t, scan_mark yaml_mark_t) bool { + token := parser.tokens[len(parser.tokens)-1] + + if token.typ == yaml_FLOW_ENTRY_TOKEN && len(parser.tokens) > 1 { + token = parser.tokens[len(parser.tokens)-2] + } + + var token_mark = token.start_mark + var start_mark yaml_mark_t + + var recent_empty = false + var first_empty = parser.newlines <= 1 + + var line = parser.mark.line + var column = parser.mark.column + + var text []byte + + // The foot line is the place where a comment must start to + // still be considered as a foot of the prior content. + // If there's some content in the currently parsed line, then + // the foot is the line below it. + var foot_line = -1 + if scan_mark.line > 0 { + foot_line = parser.mark.line-parser.newlines+1 + if parser.newlines == 0 && parser.mark.column > 1 { + foot_line++ + } + } + + var peek = 0 + for ; peek < 512; peek++ { + if parser.unread < peek+1 && !yaml_parser_update_buffer(parser, peek+1) { + break + } + column++ + if is_blank(parser.buffer, parser.buffer_pos+peek) { + continue + } + c := parser.buffer[parser.buffer_pos+peek] + if is_breakz(parser.buffer, parser.buffer_pos+peek) || parser.flow_level > 0 && (c == ']' || c == '}') { + // Got line break or terminator. + if !recent_empty { + if first_empty && (start_mark.line == foot_line || start_mark.column-1 < parser.indent) { + // This is the first empty line and there were no empty lines before, + // so this initial part of the comment is a foot of the prior token + // instead of being a head for the following one. Split it up. + if len(text) > 0 { + if start_mark.column-1 < parser.indent { + // If dedented it's unrelated to the prior token. + token_mark = start_mark + } + parser.comments = append(parser.comments, yaml_comment_t{ + scan_mark: scan_mark, + token_mark: token_mark, + start_mark: start_mark, + end_mark: yaml_mark_t{parser.mark.index + peek, line, column}, + foot: text, + }) + scan_mark = yaml_mark_t{parser.mark.index + peek, line, column} + token_mark = scan_mark + text = nil + } + } else { + if len(text) > 0 && parser.buffer[parser.buffer_pos+peek] != 0 { + text = append(text, '\n') + } + } + } + if !is_break(parser.buffer, parser.buffer_pos+peek) { + break + } + first_empty = false + recent_empty = true + column = 0 + line++ + continue + } + + if len(text) > 0 && column < parser.indent+1 && column != start_mark.column { + // The comment at the different indentation is a foot of the + // preceding data rather than a head of the upcoming one. + parser.comments = append(parser.comments, yaml_comment_t{ + scan_mark: scan_mark, + token_mark: token_mark, + start_mark: start_mark, + end_mark: yaml_mark_t{parser.mark.index + peek, line, column}, + foot: text, + }) + scan_mark = yaml_mark_t{parser.mark.index + peek, line, column} + token_mark = scan_mark + text = nil + } + + if parser.buffer[parser.buffer_pos+peek] != '#' { + break + } + + if len(text) == 0 { + start_mark = yaml_mark_t{parser.mark.index + peek, line, column} + } else { + text = append(text, '\n') + } + + recent_empty = false + + // Consume until after the consumed comment line. + seen := parser.mark.index+peek + for { + if parser.unread < 1 && !yaml_parser_update_buffer(parser, 1) { + return false + } + if is_breakz(parser.buffer, parser.buffer_pos) { + if parser.mark.index >= seen { + break + } + if parser.unread < 2 && !yaml_parser_update_buffer(parser, 2) { + return false + } + skip_line(parser) + } else { + if parser.mark.index >= seen { + text = append(text, parser.buffer[parser.buffer_pos]) + } + skip(parser) + } + } + + peek = 0 + column = 0 + line = parser.mark.line + } + + if len(text) > 0 { + parser.comments = append(parser.comments, yaml_comment_t{ + scan_mark: scan_mark, + token_mark: start_mark, + start_mark: start_mark, + end_mark: yaml_mark_t{parser.mark.index + peek - 1, line, column}, + head: text, + }) + } + return true +} diff --git a/vendor/gopkg.in/yaml.v3/sorter.go b/vendor/gopkg.in/yaml.v3/sorter.go new file mode 100644 index 000000000..9210ece7e --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/sorter.go @@ -0,0 +1,134 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package yaml + +import ( + "reflect" + "unicode" +) + +type keyList []reflect.Value + +func (l keyList) Len() int { return len(l) } +func (l keyList) Swap(i, j int) { l[i], l[j] = l[j], l[i] } +func (l keyList) Less(i, j int) bool { + a := l[i] + b := l[j] + ak := a.Kind() + bk := b.Kind() + for (ak == reflect.Interface || ak == reflect.Ptr) && !a.IsNil() { + a = a.Elem() + ak = a.Kind() + } + for (bk == reflect.Interface || bk == reflect.Ptr) && !b.IsNil() { + b = b.Elem() + bk = b.Kind() + } + af, aok := keyFloat(a) + bf, bok := keyFloat(b) + if aok && bok { + if af != bf { + return af < bf + } + if ak != bk { + return ak < bk + } + return numLess(a, b) + } + if ak != reflect.String || bk != reflect.String { + return ak < bk + } + ar, br := []rune(a.String()), []rune(b.String()) + digits := false + for i := 0; i < len(ar) && i < len(br); i++ { + if ar[i] == br[i] { + digits = unicode.IsDigit(ar[i]) + continue + } + al := unicode.IsLetter(ar[i]) + bl := unicode.IsLetter(br[i]) + if al && bl { + return ar[i] < br[i] + } + if al || bl { + if digits { + return al + } else { + return bl + } + } + var ai, bi int + var an, bn int64 + if ar[i] == '0' || br[i] == '0' { + for j := i - 1; j >= 0 && unicode.IsDigit(ar[j]); j-- { + if ar[j] != '0' { + an = 1 + bn = 1 + break + } + } + } + for ai = i; ai < len(ar) && unicode.IsDigit(ar[ai]); ai++ { + an = an*10 + int64(ar[ai]-'0') + } + for bi = i; bi < len(br) && unicode.IsDigit(br[bi]); bi++ { + bn = bn*10 + int64(br[bi]-'0') + } + if an != bn { + return an < bn + } + if ai != bi { + return ai < bi + } + return ar[i] < br[i] + } + return len(ar) < len(br) +} + +// keyFloat returns a float value for v if it is a number/bool +// and whether it is a number/bool or not. +func keyFloat(v reflect.Value) (f float64, ok bool) { + switch v.Kind() { + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + return float64(v.Int()), true + case reflect.Float32, reflect.Float64: + return v.Float(), true + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: + return float64(v.Uint()), true + case reflect.Bool: + if v.Bool() { + return 1, true + } + return 0, true + } + return 0, false +} + +// numLess returns whether a < b. +// a and b must necessarily have the same kind. +func numLess(a, b reflect.Value) bool { + switch a.Kind() { + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + return a.Int() < b.Int() + case reflect.Float32, reflect.Float64: + return a.Float() < b.Float() + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: + return a.Uint() < b.Uint() + case reflect.Bool: + return !a.Bool() && b.Bool() + } + panic("not a number") +} diff --git a/vendor/gopkg.in/yaml.v3/writerc.go b/vendor/gopkg.in/yaml.v3/writerc.go new file mode 100644 index 000000000..b8a116bf9 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/writerc.go @@ -0,0 +1,48 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +// Set the writer error and return false. +func yaml_emitter_set_writer_error(emitter *yaml_emitter_t, problem string) bool { + emitter.error = yaml_WRITER_ERROR + emitter.problem = problem + return false +} + +// Flush the output buffer. +func yaml_emitter_flush(emitter *yaml_emitter_t) bool { + if emitter.write_handler == nil { + panic("write handler not set") + } + + // Check if the buffer is empty. + if emitter.buffer_pos == 0 { + return true + } + + if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil { + return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error()) + } + emitter.buffer_pos = 0 + return true +} diff --git a/vendor/gopkg.in/yaml.v3/yaml.go b/vendor/gopkg.in/yaml.v3/yaml.go new file mode 100644 index 000000000..b5d35a50d --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/yaml.go @@ -0,0 +1,662 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package yaml implements YAML support for the Go language. +// +// Source code and other details for the project are available at GitHub: +// +// https://github.com/go-yaml/yaml +// +package yaml + +import ( + "errors" + "fmt" + "io" + "reflect" + "strings" + "sync" + "unicode/utf8" +) + +// The Unmarshaler interface may be implemented by types to customize their +// behavior when being unmarshaled from a YAML document. +type Unmarshaler interface { + UnmarshalYAML(value *Node) error +} + +type obsoleteUnmarshaler interface { + UnmarshalYAML(unmarshal func(interface{}) error) error +} + +// The Marshaler interface may be implemented by types to customize their +// behavior when being marshaled into a YAML document. The returned value +// is marshaled in place of the original value implementing Marshaler. +// +// If an error is returned by MarshalYAML, the marshaling procedure stops +// and returns with the provided error. +type Marshaler interface { + MarshalYAML() (interface{}, error) +} + +// Unmarshal decodes the first document found within the in byte slice +// and assigns decoded values into the out value. +// +// Maps and pointers (to a struct, string, int, etc) are accepted as out +// values. If an internal pointer within a struct is not initialized, +// the yaml package will initialize it if necessary for unmarshalling +// the provided data. The out parameter must not be nil. +// +// The type of the decoded values should be compatible with the respective +// values in out. If one or more values cannot be decoded due to a type +// mismatches, decoding continues partially until the end of the YAML +// content, and a *yaml.TypeError is returned with details for all +// missed values. +// +// Struct fields are only unmarshalled if they are exported (have an +// upper case first letter), and are unmarshalled using the field name +// lowercased as the default key. Custom keys may be defined via the +// "yaml" name in the field tag: the content preceding the first comma +// is used as the key, and the following comma-separated options are +// used to tweak the marshalling process (see Marshal). +// Conflicting names result in a runtime error. +// +// For example: +// +// type T struct { +// F int `yaml:"a,omitempty"` +// B int +// } +// var t T +// yaml.Unmarshal([]byte("a: 1\nb: 2"), &t) +// +// See the documentation of Marshal for the format of tags and a list of +// supported tag options. +// +func Unmarshal(in []byte, out interface{}) (err error) { + return unmarshal(in, out, false) +} + +// A Decorder reads and decodes YAML values from an input stream. +type Decoder struct { + parser *parser + knownFields bool +} + +// NewDecoder returns a new decoder that reads from r. +// +// The decoder introduces its own buffering and may read +// data from r beyond the YAML values requested. +func NewDecoder(r io.Reader) *Decoder { + return &Decoder{ + parser: newParserFromReader(r), + } +} + +// KnownFields ensures that the keys in decoded mappings to +// exist as fields in the struct being decoded into. +func (dec *Decoder) KnownFields(enable bool) { + dec.knownFields = enable +} + +// Decode reads the next YAML-encoded value from its input +// and stores it in the value pointed to by v. +// +// See the documentation for Unmarshal for details about the +// conversion of YAML into a Go value. +func (dec *Decoder) Decode(v interface{}) (err error) { + d := newDecoder() + d.knownFields = dec.knownFields + defer handleErr(&err) + node := dec.parser.parse() + if node == nil { + return io.EOF + } + out := reflect.ValueOf(v) + if out.Kind() == reflect.Ptr && !out.IsNil() { + out = out.Elem() + } + d.unmarshal(node, out) + if len(d.terrors) > 0 { + return &TypeError{d.terrors} + } + return nil +} + +// Decode decodes the node and stores its data into the value pointed to by v. +// +// See the documentation for Unmarshal for details about the +// conversion of YAML into a Go value. +func (n *Node) Decode(v interface{}) (err error) { + d := newDecoder() + defer handleErr(&err) + out := reflect.ValueOf(v) + if out.Kind() == reflect.Ptr && !out.IsNil() { + out = out.Elem() + } + d.unmarshal(n, out) + if len(d.terrors) > 0 { + return &TypeError{d.terrors} + } + return nil +} + +func unmarshal(in []byte, out interface{}, strict bool) (err error) { + defer handleErr(&err) + d := newDecoder() + p := newParser(in) + defer p.destroy() + node := p.parse() + if node != nil { + v := reflect.ValueOf(out) + if v.Kind() == reflect.Ptr && !v.IsNil() { + v = v.Elem() + } + d.unmarshal(node, v) + } + if len(d.terrors) > 0 { + return &TypeError{d.terrors} + } + return nil +} + +// Marshal serializes the value provided into a YAML document. The structure +// of the generated document will reflect the structure of the value itself. +// Maps and pointers (to struct, string, int, etc) are accepted as the in value. +// +// Struct fields are only marshalled if they are exported (have an upper case +// first letter), and are marshalled using the field name lowercased as the +// default key. Custom keys may be defined via the "yaml" name in the field +// tag: the content preceding the first comma is used as the key, and the +// following comma-separated options are used to tweak the marshalling process. +// Conflicting names result in a runtime error. +// +// The field tag format accepted is: +// +// `(...) yaml:"[][,[,]]" (...)` +// +// The following flags are currently supported: +// +// omitempty Only include the field if it's not set to the zero +// value for the type or to empty slices or maps. +// Zero valued structs will be omitted if all their public +// fields are zero, unless they implement an IsZero +// method (see the IsZeroer interface type), in which +// case the field will be included if that method returns true. +// +// flow Marshal using a flow style (useful for structs, +// sequences and maps). +// +// inline Inline the field, which must be a struct or a map, +// causing all of its fields or keys to be processed as if +// they were part of the outer struct. For maps, keys must +// not conflict with the yaml keys of other struct fields. +// +// In addition, if the key is "-", the field is ignored. +// +// For example: +// +// type T struct { +// F int `yaml:"a,omitempty"` +// B int +// } +// yaml.Marshal(&T{B: 2}) // Returns "b: 2\n" +// yaml.Marshal(&T{F: 1}} // Returns "a: 1\nb: 0\n" +// +func Marshal(in interface{}) (out []byte, err error) { + defer handleErr(&err) + e := newEncoder() + defer e.destroy() + e.marshalDoc("", reflect.ValueOf(in)) + e.finish() + out = e.out + return +} + +// An Encoder writes YAML values to an output stream. +type Encoder struct { + encoder *encoder +} + +// NewEncoder returns a new encoder that writes to w. +// The Encoder should be closed after use to flush all data +// to w. +func NewEncoder(w io.Writer) *Encoder { + return &Encoder{ + encoder: newEncoderWithWriter(w), + } +} + +// Encode writes the YAML encoding of v to the stream. +// If multiple items are encoded to the stream, the +// second and subsequent document will be preceded +// with a "---" document separator, but the first will not. +// +// See the documentation for Marshal for details about the conversion of Go +// values to YAML. +func (e *Encoder) Encode(v interface{}) (err error) { + defer handleErr(&err) + e.encoder.marshalDoc("", reflect.ValueOf(v)) + return nil +} + +// SetIndent changes the used indentation used when encoding. +func (e *Encoder) SetIndent(spaces int) { + if spaces < 0 { + panic("yaml: cannot indent to a negative number of spaces") + } + e.encoder.indent = spaces +} + +// Close closes the encoder by writing any remaining data. +// It does not write a stream terminating string "...". +func (e *Encoder) Close() (err error) { + defer handleErr(&err) + e.encoder.finish() + return nil +} + +func handleErr(err *error) { + if v := recover(); v != nil { + if e, ok := v.(yamlError); ok { + *err = e.err + } else { + panic(v) + } + } +} + +type yamlError struct { + err error +} + +func fail(err error) { + panic(yamlError{err}) +} + +func failf(format string, args ...interface{}) { + panic(yamlError{fmt.Errorf("yaml: "+format, args...)}) +} + +// A TypeError is returned by Unmarshal when one or more fields in +// the YAML document cannot be properly decoded into the requested +// types. When this error is returned, the value is still +// unmarshaled partially. +type TypeError struct { + Errors []string +} + +func (e *TypeError) Error() string { + return fmt.Sprintf("yaml: unmarshal errors:\n %s", strings.Join(e.Errors, "\n ")) +} + +type Kind uint32 + +const ( + DocumentNode Kind = 1 << iota + SequenceNode + MappingNode + ScalarNode + AliasNode +) + +type Style uint32 + +const ( + TaggedStyle Style = 1 << iota + DoubleQuotedStyle + SingleQuotedStyle + LiteralStyle + FoldedStyle + FlowStyle +) + +// Node represents an element in the YAML document hierarchy. While documents +// are typically encoded and decoded into higher level types, such as structs +// and maps, Node is an intermediate representation that allows detailed +// control over the content being decoded or encoded. +// +// Values that make use of the Node type interact with the yaml package in the +// same way any other type would do, by encoding and decoding yaml data +// directly or indirectly into them. +// +// For example: +// +// var person struct { +// Name string +// Address yaml.Node +// } +// err := yaml.Unmarshal(data, &person) +// +// Or by itself: +// +// var person Node +// err := yaml.Unmarshal(data, &person) +// +type Node struct { + // Kind defines whether the node is a document, a mapping, a sequence, + // a scalar value, or an alias to another node. The specific data type of + // scalar nodes may be obtained via the ShortTag and LongTag methods. + Kind Kind + + // Style allows customizing the apperance of the node in the tree. + Style Style + + // Tag holds the YAML tag defining the data type for the value. + // When decoding, this field will always be set to the resolved tag, + // even when it wasn't explicitly provided in the YAML content. + // When encoding, if this field is unset the value type will be + // implied from the node properties, and if it is set, it will only + // be serialized into the representation if TaggedStyle is used or + // the implicit tag diverges from the provided one. + Tag string + + // Value holds the unescaped and unquoted represenation of the value. + Value string + + // Anchor holds the anchor name for this node, which allows aliases to point to it. + Anchor string + + // Alias holds the node that this alias points to. Only valid when Kind is AliasNode. + Alias *Node + + // Content holds contained nodes for documents, mappings, and sequences. + Content []*Node + + // HeadComment holds any comments in the lines preceding the node and + // not separated by an empty line. + HeadComment string + + // LineComment holds any comments at the end of the line where the node is in. + LineComment string + + // FootComment holds any comments following the node and before empty lines. + FootComment string + + // Line and Column hold the node position in the decoded YAML text. + // These fields are not respected when encoding the node. + Line int + Column int +} + +// LongTag returns the long form of the tag that indicates the data type for +// the node. If the Tag field isn't explicitly defined, one will be computed +// based on the node properties. +func (n *Node) LongTag() string { + return longTag(n.ShortTag()) +} + +// ShortTag returns the short form of the YAML tag that indicates data type for +// the node. If the Tag field isn't explicitly defined, one will be computed +// based on the node properties. +func (n *Node) ShortTag() string { + if n.indicatedString() { + return strTag + } + if n.Tag == "" || n.Tag == "!" { + switch n.Kind { + case MappingNode: + return mapTag + case SequenceNode: + return seqTag + case AliasNode: + if n.Alias != nil { + return n.Alias.ShortTag() + } + case ScalarNode: + tag, _ := resolve("", n.Value) + return tag + } + return "" + } + return shortTag(n.Tag) +} + +func (n *Node) indicatedString() bool { + return n.Kind == ScalarNode && + (shortTag(n.Tag) == strTag || + (n.Tag == "" || n.Tag == "!") && n.Style&(SingleQuotedStyle|DoubleQuotedStyle|LiteralStyle|FoldedStyle) != 0) +} + +// SetString is a convenience function that sets the node to a string value +// and defines its style in a pleasant way depending on its content. +func (n *Node) SetString(s string) { + n.Kind = ScalarNode + if utf8.ValidString(s) { + n.Value = s + n.Tag = strTag + } else { + n.Value = encodeBase64(s) + n.Tag = binaryTag + } + if strings.Contains(n.Value, "\n") { + n.Style = LiteralStyle + } +} + +// -------------------------------------------------------------------------- +// Maintain a mapping of keys to structure field indexes + +// The code in this section was copied from mgo/bson. + +// structInfo holds details for the serialization of fields of +// a given struct. +type structInfo struct { + FieldsMap map[string]fieldInfo + FieldsList []fieldInfo + + // InlineMap is the number of the field in the struct that + // contains an ,inline map, or -1 if there's none. + InlineMap int + + // InlineUnmarshalers holds indexes to inlined fields that + // contain unmarshaler values. + InlineUnmarshalers [][]int +} + +type fieldInfo struct { + Key string + Num int + OmitEmpty bool + Flow bool + // Id holds the unique field identifier, so we can cheaply + // check for field duplicates without maintaining an extra map. + Id int + + // Inline holds the field index if the field is part of an inlined struct. + Inline []int +} + +var structMap = make(map[reflect.Type]*structInfo) +var fieldMapMutex sync.RWMutex +var unmarshalerType reflect.Type + +func init() { + var v Unmarshaler + unmarshalerType = reflect.ValueOf(&v).Elem().Type() +} + +func getStructInfo(st reflect.Type) (*structInfo, error) { + fieldMapMutex.RLock() + sinfo, found := structMap[st] + fieldMapMutex.RUnlock() + if found { + return sinfo, nil + } + + n := st.NumField() + fieldsMap := make(map[string]fieldInfo) + fieldsList := make([]fieldInfo, 0, n) + inlineMap := -1 + inlineUnmarshalers := [][]int(nil) + for i := 0; i != n; i++ { + field := st.Field(i) + if field.PkgPath != "" && !field.Anonymous { + continue // Private field + } + + info := fieldInfo{Num: i} + + tag := field.Tag.Get("yaml") + if tag == "" && strings.Index(string(field.Tag), ":") < 0 { + tag = string(field.Tag) + } + if tag == "-" { + continue + } + + inline := false + fields := strings.Split(tag, ",") + if len(fields) > 1 { + for _, flag := range fields[1:] { + switch flag { + case "omitempty": + info.OmitEmpty = true + case "flow": + info.Flow = true + case "inline": + inline = true + default: + return nil, errors.New(fmt.Sprintf("unsupported flag %q in tag %q of type %s", flag, tag, st)) + } + } + tag = fields[0] + } + + if inline { + switch field.Type.Kind() { + case reflect.Map: + if inlineMap >= 0 { + return nil, errors.New("multiple ,inline maps in struct " + st.String()) + } + if field.Type.Key() != reflect.TypeOf("") { + return nil, errors.New("option ,inline needs a map with string keys in struct " + st.String()) + } + inlineMap = info.Num + case reflect.Struct, reflect.Ptr: + ftype := field.Type + for ftype.Kind() == reflect.Ptr { + ftype = ftype.Elem() + } + if ftype.Kind() != reflect.Struct { + return nil, errors.New("option ,inline may only be used on a struct or map field") + } + if reflect.PtrTo(ftype).Implements(unmarshalerType) { + inlineUnmarshalers = append(inlineUnmarshalers, []int{i}) + } else { + sinfo, err := getStructInfo(ftype) + if err != nil { + return nil, err + } + for _, index := range sinfo.InlineUnmarshalers { + inlineUnmarshalers = append(inlineUnmarshalers, append([]int{i}, index...)) + } + for _, finfo := range sinfo.FieldsList { + if _, found := fieldsMap[finfo.Key]; found { + msg := "duplicated key '" + finfo.Key + "' in struct " + st.String() + return nil, errors.New(msg) + } + if finfo.Inline == nil { + finfo.Inline = []int{i, finfo.Num} + } else { + finfo.Inline = append([]int{i}, finfo.Inline...) + } + finfo.Id = len(fieldsList) + fieldsMap[finfo.Key] = finfo + fieldsList = append(fieldsList, finfo) + } + } + default: + return nil, errors.New("option ,inline may only be used on a struct or map field") + } + continue + } + + if tag != "" { + info.Key = tag + } else { + info.Key = strings.ToLower(field.Name) + } + + if _, found = fieldsMap[info.Key]; found { + msg := "duplicated key '" + info.Key + "' in struct " + st.String() + return nil, errors.New(msg) + } + + info.Id = len(fieldsList) + fieldsList = append(fieldsList, info) + fieldsMap[info.Key] = info + } + + sinfo = &structInfo{ + FieldsMap: fieldsMap, + FieldsList: fieldsList, + InlineMap: inlineMap, + InlineUnmarshalers: inlineUnmarshalers, + } + + fieldMapMutex.Lock() + structMap[st] = sinfo + fieldMapMutex.Unlock() + return sinfo, nil +} + +// IsZeroer is used to check whether an object is zero to +// determine whether it should be omitted when marshaling +// with the omitempty flag. One notable implementation +// is time.Time. +type IsZeroer interface { + IsZero() bool +} + +func isZero(v reflect.Value) bool { + kind := v.Kind() + if z, ok := v.Interface().(IsZeroer); ok { + if (kind == reflect.Ptr || kind == reflect.Interface) && v.IsNil() { + return true + } + return z.IsZero() + } + switch kind { + case reflect.String: + return len(v.String()) == 0 + case reflect.Interface, reflect.Ptr: + return v.IsNil() + case reflect.Slice: + return v.Len() == 0 + case reflect.Map: + return v.Len() == 0 + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + return v.Int() == 0 + case reflect.Float32, reflect.Float64: + return v.Float() == 0 + case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr: + return v.Uint() == 0 + case reflect.Bool: + return !v.Bool() + case reflect.Struct: + vt := v.Type() + for i := v.NumField() - 1; i >= 0; i-- { + if vt.Field(i).PkgPath != "" { + continue // Private field + } + if !isZero(v.Field(i)) { + return false + } + } + return true + } + return false +} diff --git a/vendor/gopkg.in/yaml.v3/yamlh.go b/vendor/gopkg.in/yaml.v3/yamlh.go new file mode 100644 index 000000000..2719cfbb0 --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/yamlh.go @@ -0,0 +1,805 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +import ( + "fmt" + "io" +) + +// The version directive data. +type yaml_version_directive_t struct { + major int8 // The major version number. + minor int8 // The minor version number. +} + +// The tag directive data. +type yaml_tag_directive_t struct { + handle []byte // The tag handle. + prefix []byte // The tag prefix. +} + +type yaml_encoding_t int + +// The stream encoding. +const ( + // Let the parser choose the encoding. + yaml_ANY_ENCODING yaml_encoding_t = iota + + yaml_UTF8_ENCODING // The default UTF-8 encoding. + yaml_UTF16LE_ENCODING // The UTF-16-LE encoding with BOM. + yaml_UTF16BE_ENCODING // The UTF-16-BE encoding with BOM. +) + +type yaml_break_t int + +// Line break types. +const ( + // Let the parser choose the break type. + yaml_ANY_BREAK yaml_break_t = iota + + yaml_CR_BREAK // Use CR for line breaks (Mac style). + yaml_LN_BREAK // Use LN for line breaks (Unix style). + yaml_CRLN_BREAK // Use CR LN for line breaks (DOS style). +) + +type yaml_error_type_t int + +// Many bad things could happen with the parser and emitter. +const ( + // No error is produced. + yaml_NO_ERROR yaml_error_type_t = iota + + yaml_MEMORY_ERROR // Cannot allocate or reallocate a block of memory. + yaml_READER_ERROR // Cannot read or decode the input stream. + yaml_SCANNER_ERROR // Cannot scan the input stream. + yaml_PARSER_ERROR // Cannot parse the input stream. + yaml_COMPOSER_ERROR // Cannot compose a YAML document. + yaml_WRITER_ERROR // Cannot write to the output stream. + yaml_EMITTER_ERROR // Cannot emit a YAML stream. +) + +// The pointer position. +type yaml_mark_t struct { + index int // The position index. + line int // The position line. + column int // The position column. +} + +// Node Styles + +type yaml_style_t int8 + +type yaml_scalar_style_t yaml_style_t + +// Scalar styles. +const ( + // Let the emitter choose the style. + yaml_ANY_SCALAR_STYLE yaml_scalar_style_t = 0 + + yaml_PLAIN_SCALAR_STYLE yaml_scalar_style_t = 1 << iota // The plain scalar style. + yaml_SINGLE_QUOTED_SCALAR_STYLE // The single-quoted scalar style. + yaml_DOUBLE_QUOTED_SCALAR_STYLE // The double-quoted scalar style. + yaml_LITERAL_SCALAR_STYLE // The literal scalar style. + yaml_FOLDED_SCALAR_STYLE // The folded scalar style. +) + +type yaml_sequence_style_t yaml_style_t + +// Sequence styles. +const ( + // Let the emitter choose the style. + yaml_ANY_SEQUENCE_STYLE yaml_sequence_style_t = iota + + yaml_BLOCK_SEQUENCE_STYLE // The block sequence style. + yaml_FLOW_SEQUENCE_STYLE // The flow sequence style. +) + +type yaml_mapping_style_t yaml_style_t + +// Mapping styles. +const ( + // Let the emitter choose the style. + yaml_ANY_MAPPING_STYLE yaml_mapping_style_t = iota + + yaml_BLOCK_MAPPING_STYLE // The block mapping style. + yaml_FLOW_MAPPING_STYLE // The flow mapping style. +) + +// Tokens + +type yaml_token_type_t int + +// Token types. +const ( + // An empty token. + yaml_NO_TOKEN yaml_token_type_t = iota + + yaml_STREAM_START_TOKEN // A STREAM-START token. + yaml_STREAM_END_TOKEN // A STREAM-END token. + + yaml_VERSION_DIRECTIVE_TOKEN // A VERSION-DIRECTIVE token. + yaml_TAG_DIRECTIVE_TOKEN // A TAG-DIRECTIVE token. + yaml_DOCUMENT_START_TOKEN // A DOCUMENT-START token. + yaml_DOCUMENT_END_TOKEN // A DOCUMENT-END token. + + yaml_BLOCK_SEQUENCE_START_TOKEN // A BLOCK-SEQUENCE-START token. + yaml_BLOCK_MAPPING_START_TOKEN // A BLOCK-SEQUENCE-END token. + yaml_BLOCK_END_TOKEN // A BLOCK-END token. + + yaml_FLOW_SEQUENCE_START_TOKEN // A FLOW-SEQUENCE-START token. + yaml_FLOW_SEQUENCE_END_TOKEN // A FLOW-SEQUENCE-END token. + yaml_FLOW_MAPPING_START_TOKEN // A FLOW-MAPPING-START token. + yaml_FLOW_MAPPING_END_TOKEN // A FLOW-MAPPING-END token. + + yaml_BLOCK_ENTRY_TOKEN // A BLOCK-ENTRY token. + yaml_FLOW_ENTRY_TOKEN // A FLOW-ENTRY token. + yaml_KEY_TOKEN // A KEY token. + yaml_VALUE_TOKEN // A VALUE token. + + yaml_ALIAS_TOKEN // An ALIAS token. + yaml_ANCHOR_TOKEN // An ANCHOR token. + yaml_TAG_TOKEN // A TAG token. + yaml_SCALAR_TOKEN // A SCALAR token. +) + +func (tt yaml_token_type_t) String() string { + switch tt { + case yaml_NO_TOKEN: + return "yaml_NO_TOKEN" + case yaml_STREAM_START_TOKEN: + return "yaml_STREAM_START_TOKEN" + case yaml_STREAM_END_TOKEN: + return "yaml_STREAM_END_TOKEN" + case yaml_VERSION_DIRECTIVE_TOKEN: + return "yaml_VERSION_DIRECTIVE_TOKEN" + case yaml_TAG_DIRECTIVE_TOKEN: + return "yaml_TAG_DIRECTIVE_TOKEN" + case yaml_DOCUMENT_START_TOKEN: + return "yaml_DOCUMENT_START_TOKEN" + case yaml_DOCUMENT_END_TOKEN: + return "yaml_DOCUMENT_END_TOKEN" + case yaml_BLOCK_SEQUENCE_START_TOKEN: + return "yaml_BLOCK_SEQUENCE_START_TOKEN" + case yaml_BLOCK_MAPPING_START_TOKEN: + return "yaml_BLOCK_MAPPING_START_TOKEN" + case yaml_BLOCK_END_TOKEN: + return "yaml_BLOCK_END_TOKEN" + case yaml_FLOW_SEQUENCE_START_TOKEN: + return "yaml_FLOW_SEQUENCE_START_TOKEN" + case yaml_FLOW_SEQUENCE_END_TOKEN: + return "yaml_FLOW_SEQUENCE_END_TOKEN" + case yaml_FLOW_MAPPING_START_TOKEN: + return "yaml_FLOW_MAPPING_START_TOKEN" + case yaml_FLOW_MAPPING_END_TOKEN: + return "yaml_FLOW_MAPPING_END_TOKEN" + case yaml_BLOCK_ENTRY_TOKEN: + return "yaml_BLOCK_ENTRY_TOKEN" + case yaml_FLOW_ENTRY_TOKEN: + return "yaml_FLOW_ENTRY_TOKEN" + case yaml_KEY_TOKEN: + return "yaml_KEY_TOKEN" + case yaml_VALUE_TOKEN: + return "yaml_VALUE_TOKEN" + case yaml_ALIAS_TOKEN: + return "yaml_ALIAS_TOKEN" + case yaml_ANCHOR_TOKEN: + return "yaml_ANCHOR_TOKEN" + case yaml_TAG_TOKEN: + return "yaml_TAG_TOKEN" + case yaml_SCALAR_TOKEN: + return "yaml_SCALAR_TOKEN" + } + return "" +} + +// The token structure. +type yaml_token_t struct { + // The token type. + typ yaml_token_type_t + + // The start/end of the token. + start_mark, end_mark yaml_mark_t + + // The stream encoding (for yaml_STREAM_START_TOKEN). + encoding yaml_encoding_t + + // The alias/anchor/scalar value or tag/tag directive handle + // (for yaml_ALIAS_TOKEN, yaml_ANCHOR_TOKEN, yaml_SCALAR_TOKEN, yaml_TAG_TOKEN, yaml_TAG_DIRECTIVE_TOKEN). + value []byte + + // The tag suffix (for yaml_TAG_TOKEN). + suffix []byte + + // The tag directive prefix (for yaml_TAG_DIRECTIVE_TOKEN). + prefix []byte + + // The scalar style (for yaml_SCALAR_TOKEN). + style yaml_scalar_style_t + + // The version directive major/minor (for yaml_VERSION_DIRECTIVE_TOKEN). + major, minor int8 +} + +// Events + +type yaml_event_type_t int8 + +// Event types. +const ( + // An empty event. + yaml_NO_EVENT yaml_event_type_t = iota + + yaml_STREAM_START_EVENT // A STREAM-START event. + yaml_STREAM_END_EVENT // A STREAM-END event. + yaml_DOCUMENT_START_EVENT // A DOCUMENT-START event. + yaml_DOCUMENT_END_EVENT // A DOCUMENT-END event. + yaml_ALIAS_EVENT // An ALIAS event. + yaml_SCALAR_EVENT // A SCALAR event. + yaml_SEQUENCE_START_EVENT // A SEQUENCE-START event. + yaml_SEQUENCE_END_EVENT // A SEQUENCE-END event. + yaml_MAPPING_START_EVENT // A MAPPING-START event. + yaml_MAPPING_END_EVENT // A MAPPING-END event. + yaml_TAIL_COMMENT_EVENT +) + +var eventStrings = []string{ + yaml_NO_EVENT: "none", + yaml_STREAM_START_EVENT: "stream start", + yaml_STREAM_END_EVENT: "stream end", + yaml_DOCUMENT_START_EVENT: "document start", + yaml_DOCUMENT_END_EVENT: "document end", + yaml_ALIAS_EVENT: "alias", + yaml_SCALAR_EVENT: "scalar", + yaml_SEQUENCE_START_EVENT: "sequence start", + yaml_SEQUENCE_END_EVENT: "sequence end", + yaml_MAPPING_START_EVENT: "mapping start", + yaml_MAPPING_END_EVENT: "mapping end", + yaml_TAIL_COMMENT_EVENT: "tail comment", +} + +func (e yaml_event_type_t) String() string { + if e < 0 || int(e) >= len(eventStrings) { + return fmt.Sprintf("unknown event %d", e) + } + return eventStrings[e] +} + +// The event structure. +type yaml_event_t struct { + + // The event type. + typ yaml_event_type_t + + // The start and end of the event. + start_mark, end_mark yaml_mark_t + + // The document encoding (for yaml_STREAM_START_EVENT). + encoding yaml_encoding_t + + // The version directive (for yaml_DOCUMENT_START_EVENT). + version_directive *yaml_version_directive_t + + // The list of tag directives (for yaml_DOCUMENT_START_EVENT). + tag_directives []yaml_tag_directive_t + + // The comments + head_comment []byte + line_comment []byte + foot_comment []byte + tail_comment []byte + + // The anchor (for yaml_SCALAR_EVENT, yaml_SEQUENCE_START_EVENT, yaml_MAPPING_START_EVENT, yaml_ALIAS_EVENT). + anchor []byte + + // The tag (for yaml_SCALAR_EVENT, yaml_SEQUENCE_START_EVENT, yaml_MAPPING_START_EVENT). + tag []byte + + // The scalar value (for yaml_SCALAR_EVENT). + value []byte + + // Is the document start/end indicator implicit, or the tag optional? + // (for yaml_DOCUMENT_START_EVENT, yaml_DOCUMENT_END_EVENT, yaml_SEQUENCE_START_EVENT, yaml_MAPPING_START_EVENT, yaml_SCALAR_EVENT). + implicit bool + + // Is the tag optional for any non-plain style? (for yaml_SCALAR_EVENT). + quoted_implicit bool + + // The style (for yaml_SCALAR_EVENT, yaml_SEQUENCE_START_EVENT, yaml_MAPPING_START_EVENT). + style yaml_style_t +} + +func (e *yaml_event_t) scalar_style() yaml_scalar_style_t { return yaml_scalar_style_t(e.style) } +func (e *yaml_event_t) sequence_style() yaml_sequence_style_t { return yaml_sequence_style_t(e.style) } +func (e *yaml_event_t) mapping_style() yaml_mapping_style_t { return yaml_mapping_style_t(e.style) } + +// Nodes + +const ( + yaml_NULL_TAG = "tag:yaml.org,2002:null" // The tag !!null with the only possible value: null. + yaml_BOOL_TAG = "tag:yaml.org,2002:bool" // The tag !!bool with the values: true and false. + yaml_STR_TAG = "tag:yaml.org,2002:str" // The tag !!str for string values. + yaml_INT_TAG = "tag:yaml.org,2002:int" // The tag !!int for integer values. + yaml_FLOAT_TAG = "tag:yaml.org,2002:float" // The tag !!float for float values. + yaml_TIMESTAMP_TAG = "tag:yaml.org,2002:timestamp" // The tag !!timestamp for date and time values. + + yaml_SEQ_TAG = "tag:yaml.org,2002:seq" // The tag !!seq is used to denote sequences. + yaml_MAP_TAG = "tag:yaml.org,2002:map" // The tag !!map is used to denote mapping. + + // Not in original libyaml. + yaml_BINARY_TAG = "tag:yaml.org,2002:binary" + yaml_MERGE_TAG = "tag:yaml.org,2002:merge" + + yaml_DEFAULT_SCALAR_TAG = yaml_STR_TAG // The default scalar tag is !!str. + yaml_DEFAULT_SEQUENCE_TAG = yaml_SEQ_TAG // The default sequence tag is !!seq. + yaml_DEFAULT_MAPPING_TAG = yaml_MAP_TAG // The default mapping tag is !!map. +) + +type yaml_node_type_t int + +// Node types. +const ( + // An empty node. + yaml_NO_NODE yaml_node_type_t = iota + + yaml_SCALAR_NODE // A scalar node. + yaml_SEQUENCE_NODE // A sequence node. + yaml_MAPPING_NODE // A mapping node. +) + +// An element of a sequence node. +type yaml_node_item_t int + +// An element of a mapping node. +type yaml_node_pair_t struct { + key int // The key of the element. + value int // The value of the element. +} + +// The node structure. +type yaml_node_t struct { + typ yaml_node_type_t // The node type. + tag []byte // The node tag. + + // The node data. + + // The scalar parameters (for yaml_SCALAR_NODE). + scalar struct { + value []byte // The scalar value. + length int // The length of the scalar value. + style yaml_scalar_style_t // The scalar style. + } + + // The sequence parameters (for YAML_SEQUENCE_NODE). + sequence struct { + items_data []yaml_node_item_t // The stack of sequence items. + style yaml_sequence_style_t // The sequence style. + } + + // The mapping parameters (for yaml_MAPPING_NODE). + mapping struct { + pairs_data []yaml_node_pair_t // The stack of mapping pairs (key, value). + pairs_start *yaml_node_pair_t // The beginning of the stack. + pairs_end *yaml_node_pair_t // The end of the stack. + pairs_top *yaml_node_pair_t // The top of the stack. + style yaml_mapping_style_t // The mapping style. + } + + start_mark yaml_mark_t // The beginning of the node. + end_mark yaml_mark_t // The end of the node. + +} + +// The document structure. +type yaml_document_t struct { + + // The document nodes. + nodes []yaml_node_t + + // The version directive. + version_directive *yaml_version_directive_t + + // The list of tag directives. + tag_directives_data []yaml_tag_directive_t + tag_directives_start int // The beginning of the tag directives list. + tag_directives_end int // The end of the tag directives list. + + start_implicit int // Is the document start indicator implicit? + end_implicit int // Is the document end indicator implicit? + + // The start/end of the document. + start_mark, end_mark yaml_mark_t +} + +// The prototype of a read handler. +// +// The read handler is called when the parser needs to read more bytes from the +// source. The handler should write not more than size bytes to the buffer. +// The number of written bytes should be set to the size_read variable. +// +// [in,out] data A pointer to an application data specified by +// yaml_parser_set_input(). +// [out] buffer The buffer to write the data from the source. +// [in] size The size of the buffer. +// [out] size_read The actual number of bytes read from the source. +// +// On success, the handler should return 1. If the handler failed, +// the returned value should be 0. On EOF, the handler should set the +// size_read to 0 and return 1. +type yaml_read_handler_t func(parser *yaml_parser_t, buffer []byte) (n int, err error) + +// This structure holds information about a potential simple key. +type yaml_simple_key_t struct { + possible bool // Is a simple key possible? + required bool // Is a simple key required? + token_number int // The number of the token. + mark yaml_mark_t // The position mark. +} + +// The states of the parser. +type yaml_parser_state_t int + +const ( + yaml_PARSE_STREAM_START_STATE yaml_parser_state_t = iota + + yaml_PARSE_IMPLICIT_DOCUMENT_START_STATE // Expect the beginning of an implicit document. + yaml_PARSE_DOCUMENT_START_STATE // Expect DOCUMENT-START. + yaml_PARSE_DOCUMENT_CONTENT_STATE // Expect the content of a document. + yaml_PARSE_DOCUMENT_END_STATE // Expect DOCUMENT-END. + yaml_PARSE_BLOCK_NODE_STATE // Expect a block node. + yaml_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE // Expect a block node or indentless sequence. + yaml_PARSE_FLOW_NODE_STATE // Expect a flow node. + yaml_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE // Expect the first entry of a block sequence. + yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE // Expect an entry of a block sequence. + yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE // Expect an entry of an indentless sequence. + yaml_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE // Expect the first key of a block mapping. + yaml_PARSE_BLOCK_MAPPING_KEY_STATE // Expect a block mapping key. + yaml_PARSE_BLOCK_MAPPING_VALUE_STATE // Expect a block mapping value. + yaml_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE // Expect the first entry of a flow sequence. + yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE // Expect an entry of a flow sequence. + yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE // Expect a key of an ordered mapping. + yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE // Expect a value of an ordered mapping. + yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE // Expect the and of an ordered mapping entry. + yaml_PARSE_FLOW_MAPPING_FIRST_KEY_STATE // Expect the first key of a flow mapping. + yaml_PARSE_FLOW_MAPPING_KEY_STATE // Expect a key of a flow mapping. + yaml_PARSE_FLOW_MAPPING_VALUE_STATE // Expect a value of a flow mapping. + yaml_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE // Expect an empty value of a flow mapping. + yaml_PARSE_END_STATE // Expect nothing. +) + +func (ps yaml_parser_state_t) String() string { + switch ps { + case yaml_PARSE_STREAM_START_STATE: + return "yaml_PARSE_STREAM_START_STATE" + case yaml_PARSE_IMPLICIT_DOCUMENT_START_STATE: + return "yaml_PARSE_IMPLICIT_DOCUMENT_START_STATE" + case yaml_PARSE_DOCUMENT_START_STATE: + return "yaml_PARSE_DOCUMENT_START_STATE" + case yaml_PARSE_DOCUMENT_CONTENT_STATE: + return "yaml_PARSE_DOCUMENT_CONTENT_STATE" + case yaml_PARSE_DOCUMENT_END_STATE: + return "yaml_PARSE_DOCUMENT_END_STATE" + case yaml_PARSE_BLOCK_NODE_STATE: + return "yaml_PARSE_BLOCK_NODE_STATE" + case yaml_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE: + return "yaml_PARSE_BLOCK_NODE_OR_INDENTLESS_SEQUENCE_STATE" + case yaml_PARSE_FLOW_NODE_STATE: + return "yaml_PARSE_FLOW_NODE_STATE" + case yaml_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE: + return "yaml_PARSE_BLOCK_SEQUENCE_FIRST_ENTRY_STATE" + case yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE: + return "yaml_PARSE_BLOCK_SEQUENCE_ENTRY_STATE" + case yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE: + return "yaml_PARSE_INDENTLESS_SEQUENCE_ENTRY_STATE" + case yaml_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE: + return "yaml_PARSE_BLOCK_MAPPING_FIRST_KEY_STATE" + case yaml_PARSE_BLOCK_MAPPING_KEY_STATE: + return "yaml_PARSE_BLOCK_MAPPING_KEY_STATE" + case yaml_PARSE_BLOCK_MAPPING_VALUE_STATE: + return "yaml_PARSE_BLOCK_MAPPING_VALUE_STATE" + case yaml_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE: + return "yaml_PARSE_FLOW_SEQUENCE_FIRST_ENTRY_STATE" + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE: + return "yaml_PARSE_FLOW_SEQUENCE_ENTRY_STATE" + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE: + return "yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_KEY_STATE" + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE: + return "yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_VALUE_STATE" + case yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE: + return "yaml_PARSE_FLOW_SEQUENCE_ENTRY_MAPPING_END_STATE" + case yaml_PARSE_FLOW_MAPPING_FIRST_KEY_STATE: + return "yaml_PARSE_FLOW_MAPPING_FIRST_KEY_STATE" + case yaml_PARSE_FLOW_MAPPING_KEY_STATE: + return "yaml_PARSE_FLOW_MAPPING_KEY_STATE" + case yaml_PARSE_FLOW_MAPPING_VALUE_STATE: + return "yaml_PARSE_FLOW_MAPPING_VALUE_STATE" + case yaml_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE: + return "yaml_PARSE_FLOW_MAPPING_EMPTY_VALUE_STATE" + case yaml_PARSE_END_STATE: + return "yaml_PARSE_END_STATE" + } + return "" +} + +// This structure holds aliases data. +type yaml_alias_data_t struct { + anchor []byte // The anchor. + index int // The node id. + mark yaml_mark_t // The anchor mark. +} + +// The parser structure. +// +// All members are internal. Manage the structure using the +// yaml_parser_ family of functions. +type yaml_parser_t struct { + + // Error handling + + error yaml_error_type_t // Error type. + + problem string // Error description. + + // The byte about which the problem occurred. + problem_offset int + problem_value int + problem_mark yaml_mark_t + + // The error context. + context string + context_mark yaml_mark_t + + // Reader stuff + + read_handler yaml_read_handler_t // Read handler. + + input_reader io.Reader // File input data. + input []byte // String input data. + input_pos int + + eof bool // EOF flag + + buffer []byte // The working buffer. + buffer_pos int // The current position of the buffer. + + unread int // The number of unread characters in the buffer. + + newlines int // The number of line breaks since last non-break/non-blank character + + raw_buffer []byte // The raw buffer. + raw_buffer_pos int // The current position of the buffer. + + encoding yaml_encoding_t // The input encoding. + + offset int // The offset of the current position (in bytes). + mark yaml_mark_t // The mark of the current position. + + // Comments + + head_comment []byte // The current head comments + line_comment []byte // The current line comments + foot_comment []byte // The current foot comments + tail_comment []byte // Foot comment that happens at the end of a block. + stem_comment []byte // Comment in item preceding a nested structure (list inside list item, etc) + + comments []yaml_comment_t // The folded comments for all parsed tokens + comments_head int + + // Scanner stuff + + stream_start_produced bool // Have we started to scan the input stream? + stream_end_produced bool // Have we reached the end of the input stream? + + flow_level int // The number of unclosed '[' and '{' indicators. + + tokens []yaml_token_t // The tokens queue. + tokens_head int // The head of the tokens queue. + tokens_parsed int // The number of tokens fetched from the queue. + token_available bool // Does the tokens queue contain a token ready for dequeueing. + + indent int // The current indentation level. + indents []int // The indentation levels stack. + + simple_key_allowed bool // May a simple key occur at the current position? + simple_keys []yaml_simple_key_t // The stack of simple keys. + simple_keys_by_tok map[int]int // possible simple_key indexes indexed by token_number + + // Parser stuff + + state yaml_parser_state_t // The current parser state. + states []yaml_parser_state_t // The parser states stack. + marks []yaml_mark_t // The stack of marks. + tag_directives []yaml_tag_directive_t // The list of TAG directives. + + // Dumper stuff + + aliases []yaml_alias_data_t // The alias data. + + document *yaml_document_t // The currently parsed document. +} + +type yaml_comment_t struct { + + scan_mark yaml_mark_t // Position where scanning for comments started + token_mark yaml_mark_t // Position after which tokens will be associated with this comment + start_mark yaml_mark_t // Position of '#' comment mark + end_mark yaml_mark_t // Position where comment terminated + + head []byte + line []byte + foot []byte +} + +// Emitter Definitions + +// The prototype of a write handler. +// +// The write handler is called when the emitter needs to flush the accumulated +// characters to the output. The handler should write @a size bytes of the +// @a buffer to the output. +// +// @param[in,out] data A pointer to an application data specified by +// yaml_emitter_set_output(). +// @param[in] buffer The buffer with bytes to be written. +// @param[in] size The size of the buffer. +// +// @returns On success, the handler should return @c 1. If the handler failed, +// the returned value should be @c 0. +// +type yaml_write_handler_t func(emitter *yaml_emitter_t, buffer []byte) error + +type yaml_emitter_state_t int + +// The emitter states. +const ( + // Expect STREAM-START. + yaml_EMIT_STREAM_START_STATE yaml_emitter_state_t = iota + + yaml_EMIT_FIRST_DOCUMENT_START_STATE // Expect the first DOCUMENT-START or STREAM-END. + yaml_EMIT_DOCUMENT_START_STATE // Expect DOCUMENT-START or STREAM-END. + yaml_EMIT_DOCUMENT_CONTENT_STATE // Expect the content of a document. + yaml_EMIT_DOCUMENT_END_STATE // Expect DOCUMENT-END. + yaml_EMIT_FLOW_SEQUENCE_FIRST_ITEM_STATE // Expect the first item of a flow sequence. + yaml_EMIT_FLOW_SEQUENCE_TRAIL_ITEM_STATE // Expect the next item of a flow sequence, with the comma already written out + yaml_EMIT_FLOW_SEQUENCE_ITEM_STATE // Expect an item of a flow sequence. + yaml_EMIT_FLOW_MAPPING_FIRST_KEY_STATE // Expect the first key of a flow mapping. + yaml_EMIT_FLOW_MAPPING_TRAIL_KEY_STATE // Expect the next key of a flow mapping, with the comma already written out + yaml_EMIT_FLOW_MAPPING_KEY_STATE // Expect a key of a flow mapping. + yaml_EMIT_FLOW_MAPPING_SIMPLE_VALUE_STATE // Expect a value for a simple key of a flow mapping. + yaml_EMIT_FLOW_MAPPING_VALUE_STATE // Expect a value of a flow mapping. + yaml_EMIT_BLOCK_SEQUENCE_FIRST_ITEM_STATE // Expect the first item of a block sequence. + yaml_EMIT_BLOCK_SEQUENCE_ITEM_STATE // Expect an item of a block sequence. + yaml_EMIT_BLOCK_MAPPING_FIRST_KEY_STATE // Expect the first key of a block mapping. + yaml_EMIT_BLOCK_MAPPING_KEY_STATE // Expect the key of a block mapping. + yaml_EMIT_BLOCK_MAPPING_SIMPLE_VALUE_STATE // Expect a value for a simple key of a block mapping. + yaml_EMIT_BLOCK_MAPPING_VALUE_STATE // Expect a value of a block mapping. + yaml_EMIT_END_STATE // Expect nothing. +) + +// The emitter structure. +// +// All members are internal. Manage the structure using the @c yaml_emitter_ +// family of functions. +type yaml_emitter_t struct { + + // Error handling + + error yaml_error_type_t // Error type. + problem string // Error description. + + // Writer stuff + + write_handler yaml_write_handler_t // Write handler. + + output_buffer *[]byte // String output data. + output_writer io.Writer // File output data. + + buffer []byte // The working buffer. + buffer_pos int // The current position of the buffer. + + raw_buffer []byte // The raw buffer. + raw_buffer_pos int // The current position of the buffer. + + encoding yaml_encoding_t // The stream encoding. + + // Emitter stuff + + canonical bool // If the output is in the canonical style? + best_indent int // The number of indentation spaces. + best_width int // The preferred width of the output lines. + unicode bool // Allow unescaped non-ASCII characters? + line_break yaml_break_t // The preferred line break. + + state yaml_emitter_state_t // The current emitter state. + states []yaml_emitter_state_t // The stack of states. + + events []yaml_event_t // The event queue. + events_head int // The head of the event queue. + + indents []int // The stack of indentation levels. + + tag_directives []yaml_tag_directive_t // The list of tag directives. + + indent int // The current indentation level. + + flow_level int // The current flow level. + + root_context bool // Is it the document root context? + sequence_context bool // Is it a sequence context? + mapping_context bool // Is it a mapping context? + simple_key_context bool // Is it a simple mapping key context? + + line int // The current line. + column int // The current column. + whitespace bool // If the last character was a whitespace? + indention bool // If the last character was an indentation character (' ', '-', '?', ':')? + open_ended bool // If an explicit document end is required? + + space_above bool // Is there's an empty line above? + foot_indent int // The indent used to write the foot comment above, or -1 if none. + + // Anchor analysis. + anchor_data struct { + anchor []byte // The anchor value. + alias bool // Is it an alias? + } + + // Tag analysis. + tag_data struct { + handle []byte // The tag handle. + suffix []byte // The tag suffix. + } + + // Scalar analysis. + scalar_data struct { + value []byte // The scalar value. + multiline bool // Does the scalar contain line breaks? + flow_plain_allowed bool // Can the scalar be expessed in the flow plain style? + block_plain_allowed bool // Can the scalar be expressed in the block plain style? + single_quoted_allowed bool // Can the scalar be expressed in the single quoted style? + block_allowed bool // Can the scalar be expressed in the literal or folded styles? + style yaml_scalar_style_t // The output style. + } + + // Comments + head_comment []byte + line_comment []byte + foot_comment []byte + tail_comment []byte + + // Dumper stuff + + opened bool // If the stream was already opened? + closed bool // If the stream was already closed? + + // The information associated with the document nodes. + anchors *struct { + references int // The number of references. + anchor int // The anchor id. + serialized bool // If the node has been emitted? + } + + last_anchor_id int // The last assigned anchor id. + + document *yaml_document_t // The currently emitted document. +} diff --git a/vendor/gopkg.in/yaml.v3/yamlprivateh.go b/vendor/gopkg.in/yaml.v3/yamlprivateh.go new file mode 100644 index 000000000..e88f9c54a --- /dev/null +++ b/vendor/gopkg.in/yaml.v3/yamlprivateh.go @@ -0,0 +1,198 @@ +// +// Copyright (c) 2011-2019 Canonical Ltd +// Copyright (c) 2006-2010 Kirill Simonov +// +// Permission is hereby granted, free of charge, to any person obtaining a copy of +// this software and associated documentation files (the "Software"), to deal in +// the Software without restriction, including without limitation the rights to +// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +// of the Software, and to permit persons to whom the Software is furnished to do +// so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +package yaml + +const ( + // The size of the input raw buffer. + input_raw_buffer_size = 512 + + // The size of the input buffer. + // It should be possible to decode the whole raw buffer. + input_buffer_size = input_raw_buffer_size * 3 + + // The size of the output buffer. + output_buffer_size = 128 + + // The size of the output raw buffer. + // It should be possible to encode the whole output buffer. + output_raw_buffer_size = (output_buffer_size*2 + 2) + + // The size of other stacks and queues. + initial_stack_size = 16 + initial_queue_size = 16 + initial_string_size = 16 +) + +// Check if the character at the specified position is an alphabetical +// character, a digit, '_', or '-'. +func is_alpha(b []byte, i int) bool { + return b[i] >= '0' && b[i] <= '9' || b[i] >= 'A' && b[i] <= 'Z' || b[i] >= 'a' && b[i] <= 'z' || b[i] == '_' || b[i] == '-' +} + +// Check if the character at the specified position is a digit. +func is_digit(b []byte, i int) bool { + return b[i] >= '0' && b[i] <= '9' +} + +// Get the value of a digit. +func as_digit(b []byte, i int) int { + return int(b[i]) - '0' +} + +// Check if the character at the specified position is a hex-digit. +func is_hex(b []byte, i int) bool { + return b[i] >= '0' && b[i] <= '9' || b[i] >= 'A' && b[i] <= 'F' || b[i] >= 'a' && b[i] <= 'f' +} + +// Get the value of a hex-digit. +func as_hex(b []byte, i int) int { + bi := b[i] + if bi >= 'A' && bi <= 'F' { + return int(bi) - 'A' + 10 + } + if bi >= 'a' && bi <= 'f' { + return int(bi) - 'a' + 10 + } + return int(bi) - '0' +} + +// Check if the character is ASCII. +func is_ascii(b []byte, i int) bool { + return b[i] <= 0x7F +} + +// Check if the character at the start of the buffer can be printed unescaped. +func is_printable(b []byte, i int) bool { + return ((b[i] == 0x0A) || // . == #x0A + (b[i] >= 0x20 && b[i] <= 0x7E) || // #x20 <= . <= #x7E + (b[i] == 0xC2 && b[i+1] >= 0xA0) || // #0xA0 <= . <= #xD7FF + (b[i] > 0xC2 && b[i] < 0xED) || + (b[i] == 0xED && b[i+1] < 0xA0) || + (b[i] == 0xEE) || + (b[i] == 0xEF && // #xE000 <= . <= #xFFFD + !(b[i+1] == 0xBB && b[i+2] == 0xBF) && // && . != #xFEFF + !(b[i+1] == 0xBF && (b[i+2] == 0xBE || b[i+2] == 0xBF)))) +} + +// Check if the character at the specified position is NUL. +func is_z(b []byte, i int) bool { + return b[i] == 0x00 +} + +// Check if the beginning of the buffer is a BOM. +func is_bom(b []byte, i int) bool { + return b[0] == 0xEF && b[1] == 0xBB && b[2] == 0xBF +} + +// Check if the character at the specified position is space. +func is_space(b []byte, i int) bool { + return b[i] == ' ' +} + +// Check if the character at the specified position is tab. +func is_tab(b []byte, i int) bool { + return b[i] == '\t' +} + +// Check if the character at the specified position is blank (space or tab). +func is_blank(b []byte, i int) bool { + //return is_space(b, i) || is_tab(b, i) + return b[i] == ' ' || b[i] == '\t' +} + +// Check if the character at the specified position is a line break. +func is_break(b []byte, i int) bool { + return (b[i] == '\r' || // CR (#xD) + b[i] == '\n' || // LF (#xA) + b[i] == 0xC2 && b[i+1] == 0x85 || // NEL (#x85) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA8 || // LS (#x2028) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA9) // PS (#x2029) +} + +func is_crlf(b []byte, i int) bool { + return b[i] == '\r' && b[i+1] == '\n' +} + +// Check if the character is a line break or NUL. +func is_breakz(b []byte, i int) bool { + //return is_break(b, i) || is_z(b, i) + return ( + // is_break: + b[i] == '\r' || // CR (#xD) + b[i] == '\n' || // LF (#xA) + b[i] == 0xC2 && b[i+1] == 0x85 || // NEL (#x85) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA8 || // LS (#x2028) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA9 || // PS (#x2029) + // is_z: + b[i] == 0) +} + +// Check if the character is a line break, space, or NUL. +func is_spacez(b []byte, i int) bool { + //return is_space(b, i) || is_breakz(b, i) + return ( + // is_space: + b[i] == ' ' || + // is_breakz: + b[i] == '\r' || // CR (#xD) + b[i] == '\n' || // LF (#xA) + b[i] == 0xC2 && b[i+1] == 0x85 || // NEL (#x85) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA8 || // LS (#x2028) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA9 || // PS (#x2029) + b[i] == 0) +} + +// Check if the character is a line break, space, tab, or NUL. +func is_blankz(b []byte, i int) bool { + //return is_blank(b, i) || is_breakz(b, i) + return ( + // is_blank: + b[i] == ' ' || b[i] == '\t' || + // is_breakz: + b[i] == '\r' || // CR (#xD) + b[i] == '\n' || // LF (#xA) + b[i] == 0xC2 && b[i+1] == 0x85 || // NEL (#x85) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA8 || // LS (#x2028) + b[i] == 0xE2 && b[i+1] == 0x80 && b[i+2] == 0xA9 || // PS (#x2029) + b[i] == 0) +} + +// Determine the width of the character. +func width(b byte) int { + // Don't replace these by a switch without first + // confirming that it is being inlined. + if b&0x80 == 0x00 { + return 1 + } + if b&0xE0 == 0xC0 { + return 2 + } + if b&0xF0 == 0xE0 { + return 3 + } + if b&0xF8 == 0xF0 { + return 4 + } + return 0 + +} diff --git a/vendor/modules.txt b/vendor/modules.txt index 8f0aaf2db..1ea40e418 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -28,11 +28,11 @@ github.com/DataDog/datadog-go/statsd github.com/Microsoft/go-winio # github.com/NYTimes/gziphandler v1.0.1 github.com/NYTimes/gziphandler -# github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 +# github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d github.com/StackExchange/wmi # github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e github.com/armon/circbuf -# github.com/armon/go-metrics v0.3.5-0.20200914211745-2bc64ebd2914 +# github.com/armon/go-metrics v0.3.5-0.20201104215618-6fd5a4ddf425 github.com/armon/go-metrics github.com/armon/go-metrics/circonus github.com/armon/go-metrics/datadog @@ -145,7 +145,7 @@ github.com/envoyproxy/go-control-plane/pkg/wellknown github.com/envoyproxy/protoc-gen-validate/validate # github.com/fatih/color v1.9.0 github.com/fatih/color -# github.com/go-ole/go-ole v1.2.1 +# github.com/go-ole/go-ole v1.2.4 github.com/go-ole/go-ole github.com/go-ole/go-ole/oleutil # github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d @@ -227,7 +227,7 @@ github.com/hashicorp/go-discover/provider/softlayer github.com/hashicorp/go-discover/provider/tencentcloud github.com/hashicorp/go-discover/provider/triton github.com/hashicorp/go-discover/provider/vsphere -# github.com/hashicorp/go-hclog v0.12.0 +# github.com/hashicorp/go-hclog v0.14.1 github.com/hashicorp/go-hclog # github.com/hashicorp/go-immutable-radix v1.3.0 github.com/hashicorp/go-immutable-radix @@ -280,6 +280,8 @@ github.com/hashicorp/memberlist github.com/hashicorp/net-rpc-msgpackrpc # github.com/hashicorp/raft v1.2.0 github.com/hashicorp/raft +# github.com/hashicorp/raft-autopilot v0.1.1 +github.com/hashicorp/raft-autopilot # github.com/hashicorp/raft-boltdb v0.0.0-20171010151810-6e5ba93211ea github.com/hashicorp/raft-boltdb # github.com/hashicorp/serf v0.9.5 @@ -316,7 +318,7 @@ github.com/konsorten/go-windows-terminal-sequences github.com/kr/text # github.com/linode/linodego v0.7.1 github.com/linode/linodego -# github.com/mattn/go-colorable v0.1.7 +# github.com/mattn/go-colorable v0.1.6 github.com/mattn/go-colorable # github.com/mattn/go-isatty v0.0.12 github.com/mattn/go-isatty @@ -389,14 +391,14 @@ github.com/ryanuber/columnize github.com/ryanuber/go-glob # github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 github.com/sean-/seed -# github.com/shirou/gopsutil v2.20.9+incompatible -github.com/shirou/gopsutil/cpu -github.com/shirou/gopsutil/disk -github.com/shirou/gopsutil/host -github.com/shirou/gopsutil/internal/common -github.com/shirou/gopsutil/mem -github.com/shirou/gopsutil/net -github.com/shirou/gopsutil/process +# github.com/shirou/gopsutil/v3 v3.20.10 +github.com/shirou/gopsutil/v3/cpu +github.com/shirou/gopsutil/v3/disk +github.com/shirou/gopsutil/v3/host +github.com/shirou/gopsutil/v3/internal/common +github.com/shirou/gopsutil/v3/mem +github.com/shirou/gopsutil/v3/net +github.com/shirou/gopsutil/v3/process # github.com/sirupsen/logrus v1.4.2 github.com/sirupsen/logrus # github.com/softlayer/softlayer-go v0.0.0-20180806151055-260589d94c7d @@ -410,7 +412,7 @@ github.com/softlayer/softlayer-go/sl github.com/spf13/pflag # github.com/stretchr/objx v0.1.1 github.com/stretchr/objx -# github.com/stretchr/testify v1.5.1 +# github.com/stretchr/testify v1.6.1 github.com/stretchr/testify/assert github.com/stretchr/testify/mock github.com/stretchr/testify/require @@ -456,7 +458,7 @@ go.opencensus.io/trace go.opencensus.io/trace/internal go.opencensus.io/trace/propagation go.opencensus.io/trace/tracestate -# go.uber.org/goleak v1.0.0 +# go.uber.org/goleak v1.1.10 go.uber.org/goleak go.uber.org/goleak/internal/stack # golang.org/x/crypto v0.0.0-20200930160638-afb6bcd081ae @@ -504,7 +506,7 @@ golang.org/x/oauth2/jwt # golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a golang.org/x/sync/errgroup golang.org/x/sync/singleflight -# golang.org/x/sys v0.0.0-20201007082116-8445cc04cbdf +# golang.org/x/sys v0.0.0-20201024232916-9f70ab9862d5 golang.org/x/sys/cpu golang.org/x/sys/internal/unsafeheader golang.org/x/sys/unix @@ -602,6 +604,8 @@ gopkg.in/square/go-jose.v2/json gopkg.in/square/go-jose.v2/jwt # gopkg.in/yaml.v2 v2.2.8 gopkg.in/yaml.v2 +# gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c +gopkg.in/yaml.v3 # k8s.io/api v0.16.9 k8s.io/api/admissionregistration/v1 k8s.io/api/admissionregistration/v1beta1 diff --git a/website/Dockerfile b/website/Dockerfile index 182f4fb58..088b29539 100644 --- a/website/Dockerfile +++ b/website/Dockerfile @@ -1,4 +1,4 @@ -FROM node:10.16.3-alpine +FROM docker.mirror.hashicorp.services/node:10.16.3-alpine RUN apk add --update --no-cache git make g++ automake autoconf libtool nasm libpng-dev COPY ./package.json /website/package.json diff --git a/website/data/alert-banner.js b/website/data/alert-banner.js index 86b80e549..3c00d9b88 100644 --- a/website/data/alert-banner.js +++ b/website/data/alert-banner.js @@ -6,4 +6,7 @@ export default { url: 'https://www.hashicorp.com/blog/announcing-hashicorp-consul-1-9', text: 'HashiCorp Consul 1.9 now available in beta.', linkText: 'Learn more', + // Set the `expirationDate prop with a datetime string (e.g. `2020-01-31T12:00:00-07:00`) + // if you'd like the component to stop showing at or after a certain date + expirationDate: null, } diff --git a/website/data/docs-navigation.js b/website/data/docs-navigation.js index d03f6acf3..ecb4ff27a 100644 --- a/website/data/docs-navigation.js +++ b/website/data/docs-navigation.js @@ -40,6 +40,11 @@ export default [ { title: 'Kubernetes', href: '/docs/k8s' }, ], }, + + { title: 'API', href: '/api-docs' }, + + { title: 'Commands (CLI)', href: '/commands' }, + { category: 'discovery', name: 'Service Discovery', @@ -61,7 +66,10 @@ export default [ }, 'intentions', 'intentions-legacy', - 'observability', + { + category: 'observability', + content: ['ui-visualization'], + }, { category: 'l7-traffic', content: ['discovery-chain'], @@ -109,7 +117,7 @@ export default [ { title: 'Kind', href: - 'https://learn.hashicorp.com/tutorials/consul/kubernetes-kind?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=mk', + 'https://learn.hashicorp.com/tutorials/consul/kubernetes-kind?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=kind', }, { title: 'AKS (Azure)', @@ -126,6 +134,11 @@ export default [ href: 'https://learn.hashicorp.com/tutorials/consul/kubernetes-gke-google?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=gke', }, + { + title: 'Red Hat OpenShift', + href: + 'https://learn.hashicorp.com/tutorials/consul/kubernetes-openshift-red-hat?utm_source=consul.io&utm_medium=docs&utm_content=k8s&utm_term=openshift', + }, 'self-hosted-kubernetes', ], }, @@ -152,10 +165,14 @@ export default [ 'terminating-gateways', 'connect-ca-provider', 'ambassador', + 'health', ], }, 'service-sync', - 'crds', + { + category: 'crds', + content: ['upgrade-to-crds'], + }, 'dns', { category: 'upgrade', @@ -220,6 +237,13 @@ export default [ ], }, 'encryption', + { + category: 'security-models', + content: [ + 'core', + 'nia', + ], + }, ], }, { diff --git a/website/data/version.js b/website/data/version.js index 354857e1c..efb583d84 100644 --- a/website/data/version.js +++ b/website/data/version.js @@ -1 +1 @@ -export default '1.8.4' +export default '1.8.6' diff --git a/website/package-lock.json b/website/package-lock.json index c8928bb06..0bf88f4b6 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -3542,11 +3542,10 @@ "integrity": "sha512-03qWTvECGrG2Z0cm/w71J/KmSBJrUem1QTdRuGFHLTPGgAdIgI90xWpYWmUjGw7gXrxJ/q1yY2JwbfpHwRrpPg==" }, "@hashicorp/react-alert-banner": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@hashicorp/react-alert-banner/-/react-alert-banner-3.2.1.tgz", - "integrity": "sha512-Gg1rr5UkhCvpUFCuv8RddHCBqPvlYL/YfkwuD28fq/ig+walMOqsJrZw1ExnbzHVJwHHC3Uis3jBuDxI/48MYQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-alert-banner/-/react-alert-banner-4.2.0.tgz", + "integrity": "sha512-mLi5caKU41L6ZMqQ/mQN9jrgPESzxIqxoKchmB0TpJqwHnUG46UPokWbQovXgtPnAUrXDyLYU0Sp3gaIsDuI9Q==", "requires": { - "@hashicorp/react-global-styles": "^4.4.2", "js-cookie": "2.2.0", "slugify": "1.3.4" }, @@ -3689,9 +3688,9 @@ "integrity": "sha512-EprEFwymJJbrbIQmzMCODM6eYwew2OsgVa9EtWNE984/KFk71QWvbjKVjebqNB0vWdpwSt6+127kfOQsx8JolA==" }, "@hashicorp/react-hashi-stack-menu": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@hashicorp/react-hashi-stack-menu/-/react-hashi-stack-menu-1.0.7.tgz", - "integrity": "sha512-WcPD9T2WjjuAlUmCNG3ed6zmroKC0T9LDf5ocL/IWTI5TSnqtjmlC63066v1YCPytG1B/QMkarFP9SYZUrIJrQ==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@hashicorp/react-hashi-stack-menu/-/react-hashi-stack-menu-1.0.8.tgz", + "integrity": "sha512-qKNkYguud3rmZQczIaPLYzhuaOahyRulV0KIxKo4TCjfHEzXJfbXaKi8uq1GJw2wAMOl0tV3brMTC0z1S3uTEw==", "requires": { "@hashicorp/react-inline-svg": "^1.0.2", "slugify": "1.3.4" diff --git a/website/package.json b/website/package.json index fc80b8e61..71d9ab4a1 100644 --- a/website/package.json +++ b/website/package.json @@ -6,7 +6,7 @@ "dependencies": { "@hashicorp/nextjs-scripts": "11.1.1", "@hashicorp/react-alert": "2.0.3", - "@hashicorp/react-alert-banner": "3.2.1", + "@hashicorp/react-alert-banner": "4.2.0", "@hashicorp/react-button": "2.2.4", "@hashicorp/react-call-to-action": "0.2.4", "@hashicorp/react-case-study-slider": "2.1.4", @@ -15,7 +15,7 @@ "@hashicorp/react-docs-page": "5.0.0", "@hashicorp/react-featured-slider": "1.1.4", "@hashicorp/react-global-styles": "4.4.2", - "@hashicorp/react-hashi-stack-menu": "^1.0.7", + "@hashicorp/react-hashi-stack-menu": "^1.0.8", "@hashicorp/react-head": "1.1.3", "@hashicorp/react-image": "2.0.3", "@hashicorp/react-inline-svg": "1.0.2", diff --git a/website/pages/api-docs/agent/service.mdx b/website/pages/api-docs/agent/service.mdx index 20e166f1c..f370082bc 100644 --- a/website/pages/api-docs/agent/service.mdx +++ b/website/pages/api-docs/agent/service.mdx @@ -74,6 +74,7 @@ $ curl \ "Port": 8000, "Address": "", "EnableTagOverride": false, + "Datacenter": "dc1", "Weights": { "Passing": 10, "Warning": 1 @@ -185,6 +186,7 @@ $ curl \ "Warning": 1 }, "EnableTagOverride": false, + "Datacenter": "dc1", "ContentHash": "4ecd29c7bc647ca8", "Proxy": { "DestinationServiceName": "web", @@ -304,6 +306,7 @@ curl localhost:8500/v1/agent/health/service/name/web "Meta": null, "Port": 80, "EnableTagOverride": false, + "Datacenter": "dc1", "Connect": { "Native": false, "Proxy": null @@ -331,6 +334,7 @@ curl localhost:8500/v1/agent/health/service/name/web "Meta": null, "Port": 80, "EnableTagOverride": false, + "Datacenter": "dc1", "Connect": { "Native": false, "Proxy": null @@ -380,6 +384,7 @@ curl localhost:8500/v1/agent/health/service/id/web2 "Meta": null, "Port": 80, "EnableTagOverride": false, + "Datacenter": "dc1", "Connect": { "Native": false, "Proxy": null @@ -425,6 +430,7 @@ curl localhost:8500/v1/agent/health/service/id/web1 "Meta": null, "Port": 80, "EnableTagOverride": false, + "Datacenter": "dc1", "Connect": { "Native": false, "Proxy": null diff --git a/website/pages/api-docs/connect/ca.mdx b/website/pages/api-docs/connect/ca.mdx index 02ba96fd6..434c45f5a 100644 --- a/website/pages/api-docs/connect/ca.mdx +++ b/website/pages/api-docs/connect/ca.mdx @@ -121,7 +121,9 @@ The table below shows this endpoint's support for | Blocking Queries | Consistency Modes | Agent Caching | ACL Required | | ---------------- | ----------------- | ------------- | --------------- | -| `YES` | `all` | `none` | `operator:read` | +| `YES` | `all` | `none` | `operator:write` 1 | + +1 ACL required was operator:read prior to versions 1.8.6, 1.7.10, and 1.6.10. ### Sample Request diff --git a/website/pages/api-docs/index.mdx b/website/pages/api-docs/index.mdx index c9c2b7fbd..0f1d09919 100644 --- a/website/pages/api-docs/index.mdx +++ b/website/pages/api-docs/index.mdx @@ -86,6 +86,18 @@ to allow clients to know if address translation is in effect, the and will have a value of `true`. If translation is not enabled then this header will not be present. +## Default ACL Policy + +All API responses for Consul versions after 1.9 will include an HTTP response +header `X-Consul-Default-ACL-Policy` set to either "allow" or "deny" which +mirrors the current value of the agent's +[`acl.default_policy`](/docs/agent/options#acl_default_policy) option. + +This is also the default [intention](/docs/connect/intentions) enforcement +action if no intention matches. + +This is returned even if ACLs are disabled. + ## UUID Format UUID-format identifiers generated by the Consul API use the diff --git a/website/pages/api-docs/operator/autopilot.mdx b/website/pages/api-docs/operator/autopilot.mdx index 6d4260336..9995e1445 100644 --- a/website/pages/api-docs/operator/autopilot.mdx +++ b/website/pages/api-docs/operator/autopilot.mdx @@ -251,3 +251,257 @@ $ curl \ The HTTP status code will indicate the health of the cluster. If `Healthy` is true, then a status of 200 will be returned. If `Healthy` is false, then a status of 429 will be returned. + + +## Read the Autopilot State + +This endpoint queries the health of the autopilot status. + +| Method | Path | Produces | +| ------ | ---------------------------- | ------------------ | +| `GET` | `/operator/autopilot/state` | `application/json` | + +The table below shows this endpoint's support for +[blocking queries](/api/features/blocking), +[consistency modes](/api/features/consistency), +[agent caching](/api/features/caching), and +[required ACLs](/api#authentication). + +| Blocking Queries | Consistency Modes | Agent Caching | ACL Required | +| ---------------- | ----------------- | ------------- | --------------- | +| `NO` | `none` | `none` | `operator:read` | + +### Parameters + +- `dc` `(string: "")` - Specifies the datacenter to query. This will default to + the datacenter of the agent being queried. This is specified as part of the + URL as a query string. + +### Sample Request + +```shell-session +$ curl \ + http://127.0.0.1:8500/v1/operator/autopilot/state +``` + +### Response Format + +```json +{ + "Healthy": true, + "FailureTolerance": 1, + "OptimisticFailureTolerance": 4, + "Servers": { + "5e26a3af-f4fc-4104-a8bb-4da9f19cb278": {}, + "10b71f14-4b08-4ae5-840c-f86d39e7d330": {}, + "1fd52e5e-2f72-47d3-8cfc-2af760a0c8c2": {}, + "63783741-abd7-48a9-895a-33d01bf7cb30": {}, + "6cf04fd0-7582-474f-b408-a830b5471285": {} + }, + "Leader": "5e26a3af-f4fc-4104-a8bb-4da9f19cb278", + "Voters": [ + "5e26a3af-f4fc-4104-a8bb-4da9f19cb278", + "10b71f14-4b08-4ae5-840c-f86d39e7d330", + "1fd52e5e-2f72-47d3-8cfc-2af760a0c8c2" + ], + "RedundancyZones": { + "az1": {}, + "az2": {}, + "az3": {} + }, + "ReadReplicas": [ + "63783741-abd7-48a9-895a-33d01bf7cb30", + "6cf04fd0-7582-474f-b408-a830b5471285" + ], + "Upgrade": {} +} +``` + +- `Healthy` is whether all the servers are currently healthy. + +- `FailureTolerance` is the number of redundant healthy servers that could be + fail without causing an outage (this would be 2 in a healthy cluster of 5 + servers). + +- `OptimisticFailuretolerance` is the maximum number + of servers that could fail in the right order over the right period of time + without causing an outage. This value is only useful when using the [Redundancy + Zones feature](/docs/enterprise/redundancy) with autopilot. + +- `Servers` is a mapping of server ID to an object holding detailed information about that server. + The format of the detailed info is documented in its own section. + +- `Leader` is the server ID of current leader. This value can be used as an index into the `Servers` object. + +- `Voters` is a list of server IDs that are voters. These values can be used as indexes into the `Servers` object. + +- `RedundancyZones` is mapping of redundancy zone name to redundancy zone information. + The format of the redundancy zone information is documented in its own section. + +- `ReadReplicas` is a list of server IDs that autopilot has identified as read replicas. + These will never be promoted. These values can be used as indexes into the `Servers` map. + +- `Upgrade` is an object holding all the information about any ongoing automated upgrade. + The format of this object is detailed in its own section. + +### Server Response Format + +```json +{ + "ID": "1c3e3278-3f88-4a97-9f6a-1058584e8058", + "Name": "node1", + "Address": "198.18.0.1:8300", + "NodeStatus": "alive", + "Version": "1.9.0+ent", + "LastContact": "1.321ms", + "LastTerm": 4, + "LastIndex": 42, + "Healthy": true, + "StableSince": "2020-08-12T12:13:14Z", + "RedundancyZone": "az1", + "UpgradeVersion": "1.2.3", + "ReadReplica": false, + "Status": "voter", + "Meta": { + "build": "1.2.3", + "zone": "az1" + }, + "NodeType": "redundancy-zone-voter" +} +``` + +- `ID` is the Raft ID of the server. + +- `Name` is the node name of the server. + +- `Address` is the address of the server. + +- `NodeStatus` is the SerfHealth check status for the server. + +- `Version` is the Consul version of the server. + +- `LastContact` is the time elapsed since this server's last contact with the leader. + +- `LastTerm` is the server's last known Raft leader term. + +- `LastIndex` is the index of the server's last committed Raft log entry. + +- `Healthy` is whether the server is healthy according to the current Autopilot configuration. + +- `StableSince` is the time this server has been in its current `Healthy` state. + +- `RedundancyZone` is the name of the redundancy zone this server is within. + +- `UpgradeVersion` is the version that will be used for automated upgrade calculations. + +- `ReadReplica` indicates whether this server is a read replica or not. + +- `Status` indicates the current Raft status of this server. Possible values are: + `leader`, `voter`, `non-voter`, or `staging`. + +- `Meta` is the node metadata of this server. Values within this map are used for determining a server's + redundancy zone and upgrade version. + +- `NodeType` is the desired type autopilot thinks this server should have. In Consul OSS the only possible + value is `voter` as all present servers should having voting rights. In Consul Enterprise the possible values also + include `read-replica`, `zone-voter`, `zone-standby` and `zone-extra-voter`. `zone-voter` indicates that autopilot + wants this server to be the voter for a particular redundancy zone. When a zone has no voter all nodes will be typed + as this until one is promoted. When that happens the other non-voters in the zone will be typed as `zone-standby`. + This indicates that they are currently desired to be standby servers in case the voter from the zone fails. Finally, + the `zone-extra-voter` status indicates that autopilot wants this server to be a voter due to a failure of all servers + in another zone and that when one of the servers in that failed zone are restored, this server will be demoted. + +### Redundancy Zone Response Format + +```json +{ + "Servers": [ + "10b71f14-4b08-4ae5-840c-f86d39e7d330", + "b007061c-6d15-4c90-b3d6-2fef276a0650" + ], + "Voters": [ + "b007061c-6d15-4c90-b3d6-2fef276a0650" + ], + "FailureTolerance": 1, +} +``` + +Each zone in the responses `RedundancyZones` mapping will have this structure. + +- `Servers` is a list of server IDs of all the servers in this zone. These values can be used as indexes + into the top level response's `Servers` mapping. + +- `Voters` is a list of server IDs of all servers in this zone that have voting rights. Typically this will + be a list with 1 value but in some failure scenarios or upgrade scenarios the size could increase. These + values can be used as indexes into the top level response's `Servers` mapping. + +- `FailureTolerance` is the number of servers in this zone that could fail without causing a total zone failure + and subsequent promotion of a server from another zone as a fallback. + +### Upgrade Information Response Format + +```json +{ + "Status": "awaiting-new-servers", + "TargetVersion": "1.9.1+ent", + "TargetVersionVoters": [ + "f0344689-3e1f-4125-b55d-e888d3abf514" + ], + "TargetVersionNonVoters": [ + "619a4ba6-1a0b-476e-8a1a-28aeee7735a2", + "fd683fe6-541f-4ebf-bc5a-6eae51571ddb" + ], + "TargetVersionReadReplicas": [ + "9f1e27ae-1129-45ef-97dd-6d8c3ec47e6a" + ], + "OtherVersionVoters": [ + "0cbdd493-235f-48f2-98d9-1bf2443b9d72", + "21812bd7-2f21-4565-9892-2fdd3d4e1a99", + "c654ba5c-cc76-4056-a5ca-6e78d95f27ad" + ], + "OtherVersionNonVoters": [ + "6d973f11-6bdb-4f7d-8a90-c1300066da4c", + "6241ab45-371e-4b2a-a0f1-d847c3b7b1b0" + ], + "OtherVersionReadReplicas": [ + "42d10fc3-581b-4403-832d-945b3a0d8841" + ], + } +``` + +- `Status` is the automated upgrade status. Possible values are: + + - `disabled` indicates that automated upgrades are disabled either from user configuration or due to being unlicensed. + + - `idle` indicates that there is no ongoing upgrade and that all servers are running the same Consul version. + + - `await-new-voters` indicates that a newer versioned server has been added but that autopilot is waiting for more servers + of that version to be added before proceeding with the upgrade. + + - `promoting` indicates that enough servers of the target version have been added and autopilot will now promote them + to voters. + + - `demoting` indicates that autopilot is currently demoting the servers not running the target version. + + - `leader-transfer` indicates that autopilot is in the process of transferring leadership to a server running + the target version. + + - `await-new-servers` indicates that the majority of the upgrade is complete but that more servers running the target + version need to be added to completely replace all of the previous servers. + + - `await-server-removal` indicates that the upgrade is complete and it is now safe to remove the previous servers. + +- `TargetVersion` is the version that Autopilot is upgrading to. This will be the maximum version of all servers + `UpgradeVersion` field in the top level `Servers` mapping. + +- `TargetVersionVoters` is a list of IDs of servers running the target version and that currently have voting rights. + +- `TargetVersionNonVoters` is a list of IDs of servers running the target version and that currently do not have voting rights. + +- `TargetVersionReadReplicas` is a list of IDs of servers running the target version and are read replicas. + +- `OtherVersionVoters` is a list of IDs of servers not running the target version and that currently have voting rights. + +- `OtherVersionNonVoters` is a list of IDs of servers not running the target version and that currently do not have voting rights. + +- `OtherVersionReadReplicas` is a list of IDs of servers not running the target version and are read replicas. \ No newline at end of file diff --git a/website/pages/api-docs/query.mdx b/website/pages/api-docs/query.mdx index c5a2c4c15..510324c4a 100644 --- a/website/pages/api-docs/query.mdx +++ b/website/pages/api-docs/query.mdx @@ -12,7 +12,7 @@ The `/query` endpoints create, update, destroy, and execute prepared queries. Prepared queries allow you to register a complex service query and then execute it later via its ID or name to get a set of healthy nodes that provide a given service. This is particularly useful in combination with Consul's -[DNS Interface](/docs/agent/dns) as it allows for much richer queries than +[DNS Interface](/docs/discovery/dns) as it allows for much richer queries than would be possible given the limited entry points exposed by DNS. Check the [Geo Failover tutorial](https://learn.hashicorp.com/tutorials/consul/automate-geo-failover) for details and diff --git a/website/pages/commands/connect/envoy.mdx b/website/pages/commands/connect/envoy.mdx index 6566a9385..59179610e 100644 --- a/website/pages/commands/connect/envoy.mdx +++ b/website/pages/commands/connect/envoy.mdx @@ -75,7 +75,7 @@ proxy configuration needed. allowed to access by [Connect intentions](/docs/connect/intentions). - `-envoy-version` - The version of envoy that is being started. Default is - `1.15.0`. This is required so that the correct configuration can be generated. + `1.16.0`. This is required so that the correct configuration can be generated. - `-no-central-config` - By default the proxy's bootstrap configuration can be customized centrally. This requires that the command run on the same agent diff --git a/website/pages/commands/operator/autopilot.mdx b/website/pages/commands/operator/autopilot.mdx index 44977dc80..b8c34d559 100644 --- a/website/pages/commands/operator/autopilot.mdx +++ b/website/pages/commands/operator/autopilot.mdx @@ -29,7 +29,7 @@ Subcommands: ## get-config -This command displays the current Raft peer configuration. +This command displays the current autopilot configuration. Usage: `consul operator autopilot get-config [options]` @@ -39,9 +39,10 @@ Usage: `consul operator autopilot get-config [options]` @include 'http_api_options_server.mdx' -The output looks like this: +### Command Output -``` +```sh +$ consul operator autopilot get-config CleanupDeadServers = true LastContactThreshold = 200ms MaxTrailingLogs = 250 @@ -90,10 +91,81 @@ Usage: `consul operator autopilot set-config [options]` - `-upgrade-version-tag` - Controls the [`-node-meta`](/docs/agent/options#_node_meta) tag to use for version info when performing upgrade migrations. If left blank, the Consul version will be used. -The output looks like this: +### Command Output -``` +```sh +$ consul operator autopilot set-config -min-quorum=3 Configuration updated! ``` The return code will indicate success or failure. + +## state + +This command displays the current autopilot state. + +Usage: `consul operator autopilot state [options]` + +#### API Options + +@include 'http_api_options_client.mdx' + +@include 'http_api_options_server.mdx' + +#### Command Options + +- `-format` - Specifies the output format. Must be one of `[pretty|json]` and it defaults to `pretty`. + +#### Command Output + +```sh +$ consul operator autopilot state +Healthy: true +Failure Tolerance: 1 +Optimistic Failure Tolerance: 0 +Leader: 79324811-9588-4311-b208-f272e38aaabf +Voters: + 79324811-9588-4311-b208-f272e38aaabf + ef8aee9a-f9d6-4ec4-b383-aac956bdb80f + ae84aefb-a303-4734-8739-5c102d4ee2d9 +Servers: + 79324811-9588-4311-b208-f272e38aaabf + Name: node1 + Address: 198.18.0.1:8300 + Version: 1.9.0 + Status: leader + Node Type: voter + Node Status: alive + Healthy: true + Last Contact: 0s + Last Term: 3 + Last Index: 42 + Meta + "foo": "bar" + ae84aefb-a303-4734-8739-5c102d4ee2d9 + Name: node3 + Address: 198.18.0.3:8300 + Version: 1.9.0 + Status: voter + Node Type: voter + Node Status: alive + Healthy: true + Last Contact: 2ms + Last Term: 3 + Last Index: 39 + Meta + "baz": "foo" + ef8aee9a-f9d6-4ec4-b383-aac956bdb80f + Name: node2 + Address: 198.18.0.2:8300 + Version: 1.9.0 + Status: voter + Node Type: voter + Node Status: alive + Healthy: true + Last Contact: 1ms + Last Term: 3 + Last Index: 41 + Meta + "bar": "baz" +``` diff --git a/website/pages/commands/snapshot/inspect.mdx b/website/pages/commands/snapshot/inspect.mdx index 37398d5bb..1f3f1c527 100644 --- a/website/pages/commands/snapshot/inspect.mdx +++ b/website/pages/commands/snapshot/inspect.mdx @@ -26,6 +26,8 @@ The following fields are displayed when inspecting a snapshot: - `Version` - The snapshot format version. This only refers to the structure of the snapshot, not the data contained within. +- Each data type, size, and count within the read snapshot. + ## Usage Usage: `consul snapshot inspect [options] FILE` @@ -36,26 +38,78 @@ To inspect a snapshot from the file "backup.snap": ```shell-session $ consul snapshot inspect backup.snap -ID 2-5-1477944140022 -Size 667 -Index 5 -Term 2 -Version 1 + ID 2-12426-1604593650375 + Size 17228 + Index 12426 + Term 2 + Version 1 - Type Count Size - ---- ---- ---- - Register 3 1.7KB - ConnectCA 1 1.2KB - ConnectCAProviderState 1 1.1KB - Index 12 344B - AutopilotRequest 1 199B - ConnectCAConfig 1 197B - FederationState 1 139B - SystemMetadata 1 68B - ChunkingState 1 12B - ---- ---- ---- - Total 5KB + Type Count Size + ---- ---- ---- + KVS 27 12.3KB + Register 5 3.4KB + Index 11 285B + Autopilot 1 199B + Session 1 199B + CoordinateBatchUpdate 1 166B + Tombstone 2 146B + FederationState 1 139B + ChunkingState 1 12B + ---- ---- ---- + Total 16.8KB +``` + +To get more details for a snapshot inspection from "backup.snap": + +```shell-session +$ consul snapshot inspect -kvdetails -kvdepth 3 -kvfilter vault/core backup.snap + ID 2-12426-1604593650375 + Size 17228 + Index 12426 + Term 2 + Version 1 + + Type Count Size + ---- ---- ---- + KVS 27 12.3KB + Register 5 3.4KB + Index 11 285B + Autopilot 1 199B + Session 1 199B + CoordinateBatchUpdate 1 166B + Tombstone 2 146B + FederationState 1 139B + ChunkingState 1 12B + ---- ---- ---- + Total 16.8KB + + Key Name Count Size + ---- ---- ---- + vault/core/leader 1 1.6KB + vault/core/mounts 1 675B + vault/core/wrapping 1 633B + vault/core/local-mounts 1 450B + vault/core/auth 1 423B + vault/core/cluster 2 388B + vault/core/keyring 1 320B + vault/core/master 1 237B + vault/core/seal-config 1 211B + vault/core/hsm 1 189B + vault/core/local-audit 1 185B + vault/core/local-auth 1 183B + vault/core/audit 1 179B + vault/core/lock 1 170B + vault/core/shamir-kek 1 159B + ---- ---- ---- + Total 5.9KB ``` Please see the [HTTP API](/api/snapshot) documentation for -more details about snapshot internals. \ No newline at end of file +more details about snapshot internals. + +#### Command Options + +- `-kvdetails` - Optional, provides a space usage breakdown for any KV data stored in Consul. +- `-kvdepth` - Can only be used with `-kvdetails`. Used to adjust the grouping level of keys. Defaults to 2. +- `-kvfilter` - Can only be used with `-kvdetails`. Used to specify a key prefix that excludes keys that don't match. +- `-format` - Optional, allows from changing the output to JSON. Parameters accepted are "pretty" and "JSON". diff --git a/website/pages/docs/agent/config-entries/ingress-gateway.mdx b/website/pages/docs/agent/config-entries/ingress-gateway.mdx index cfa06f7ab..aedf21d2b 100644 --- a/website/pages/docs/agent/config-entries/ingress-gateway.mdx +++ b/website/pages/docs/agent/config-entries/ingress-gateway.mdx @@ -38,7 +38,7 @@ gateway: - The ingress gateway will route traffic based on the host/authority header, expecting a value matching `.ingress.*`, or if using namespaces, `.ingress..*`. This matches the [Consul DNS - ingress subdomain](/docs/agent/dns#ingress-service-lookups). + ingress subdomain](/docs/discovery/dns#ingress-service-lookups). A wildcard specifier cannot be set on a listener of protocol `tcp`. diff --git a/website/pages/docs/agent/options.mdx b/website/pages/docs/agent/options.mdx index c31069c2c..df7f41e1b 100644 --- a/website/pages/docs/agent/options.mdx +++ b/website/pages/docs/agent/options.mdx @@ -196,7 +196,7 @@ The options below are all specified on the command-line. the data directory. This is useful when running multiple Consul agents on the same host for testing. This defaults to false in Consul prior to version 0.8.5 and in 0.8.5 and later defaults to true, so you must opt-in for host-based IDs. Host-based - IDs are generated using [gopsutil](https://github.com/shirou/gopsutil/tree/master/host), which + IDs are generated using [gopsutil](https://github.com/shirou/gopsutil/tree/master/v3/host), which is shared with HashiCorp's [Nomad](https://www.nomadproject.io/), so if you opt-in to host-based IDs then Consul and Nomad will use information on the host to automatically assign the same ID in both systems. @@ -479,7 +479,10 @@ The options below are all specified on the command-line. This overrides the default server RPC port 8300. This is available in Consul 1.2.2 and later. -- `-non-voting-server` ((#\_non_voting_server)) - This +- `-non-voting-server` ((#\_non_voting_server)) - **This field + is deprecated in Consul 1.9.1. See the [`-read-replica`](#_read_replica) flag instead.** + +- `-read-replica` ((#\_read_replica)) - This flag is used to make the server not participate in the Raft quorum, and have it only receive the data replication stream. This can be used to add read scalability to a cluster in cases where a high volume of reads to servers are needed. @@ -1151,13 +1154,6 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." The default value is "No limit" and should be tuned on large clusters to avoid performing too many RPCs on entries changing a lot. - - `use_streaming_backend` when enabled Consul client agents will use streaming rpc to - populate the cache, instead of the traditional blocking queries. All servers must - have [`rpc.enable_streaming`](#rpc_enable_streaming) enabled before any client can enable `use_streaming_backend`. - At least one of [`dns.use_cache`](#dns_use_cache) or - [`http_config.use_cache`](#http_config_use_cache) must be enabled, otherwise - this setting has no effect. - - `ca_file` This provides a file path to a PEM-encoded certificate authority. The certificate authority is used to check the authenticity of client and server connections with the appropriate [`verify_incoming`](#verify_incoming) @@ -1459,7 +1455,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." When set to true, in a DNS query for a service, the label between the domain and the `service` label will be treated as a namespace name instead of a datacenter. When set to false, the default, the behavior will be the same as non-Enterprise - versions and will assume the label is the datacenter. See: [this section](/docs/agent/dns#namespaced-services) + versions and will assume the label is the datacenter. See: [this section](/docs/discovery/dns#namespaced-services) for more details. - `domain` Equivalent to the [`-domain` command-line flag](#_domain). @@ -1834,7 +1830,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `enable_streaming` ((#rpc_enable_streaming)) enables the gRPC subscribe endpoint on a Consul Server. All servers in all federated datacenters must have this enabled before any client can use - [`cache.use_streaming_backend`](#use_streaming_backend). This setting will default to true in a future release of Consul. + [`use_streaming_backend`](#use_streaming_backend). This setting will default to true in a future release of Consul. - `segment` - Equivalent to the [`-segment` command-line flag](#_segment). @@ -1859,7 +1855,9 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `server` Equivalent to the [`-server` command-line flag](#_server). -- `non_voting_server` - Equivalent to the [`-non-voting-server` command-line flag](#_non_voting_server). +- `non_voting_server` - **This field is deprecated in Consul 1.9.1. See the [`read_replica`](#read_replica) field instead.** + +- `read_replica` - Equivalent to the [`-read-replica` command-line flag](#_read_replica). - `server_name` When provided, this overrides the [`node_name`](#_node) for the TLS certificate. It can be used to ensure that the certificate name matches @@ -2107,12 +2105,21 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `metrics_proxy` ((#ui_config_metrics_proxy)) - This object configures an internal agent API endpoint that will proxy GET requests to a metrics - backend to allow querying metrics data in the UI. It simplifies deployment - where the metrics backend is not exposed externally to UI user's browsers. + backend to allow querying metrics data in the UI. This simplifies deployment + where the metrics backend is not exposed externally to UI users' browsers. It may also be used to augment requests with API credentials to allow serving graphs to UI users without them needing individual access tokens for the metrics backend. + ~> **Security Note:** Exposing your metrics backend via Consul in this way + should be carefully considered in production. As Consul doesn't understand + the requests, it can't limit access to only specific resources. For example + **this might make it possible for a malicious user on the network to query + for arbitrary metrics about any server or workload in your infrastructure, + or overload the metrics infrastructure with queries**. See [Metrics Proxy + Security](/docs/connect/observability/ui-visualization#metrics-proxy-security) + for more details. + The following sub-keys are available: - `base_url` ((#ui_config_metrics_provider_base_url)) - This is required to @@ -2124,6 +2131,17 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." the proxy will prevent any access to paths without that prefix on the backend. + - `path_allowlist` ((#ui_config_metrics_provider_path_allowlist)) - This + specifies the paths that may be proxies to when appended to the + `base_url`. It will defaults to `["/api/v1/query_range", "/api/v1/query"]` + which are the endpoints required for the built-in Prometheus provider. If + a [custom + provider](/docs/connect/observability/ui-visualization#custom-metrics-providers) + is used that requires the metrics proxy, the correct allowlist must be + specified to enable proxying to necessary endpoints. See [Path + Allowlist](/docs/connect/observability/ui-visualization#path-allowlist) + for more information. + - `add_headers` ((#ui_config_metrics_proxy_add_headers)) - This is an optional list if headers to add to requests that are proxied to the metrics backend. It may be used to inject Authorization tokens within the @@ -2137,6 +2155,30 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `value` ((#ui_config_metrics_proxy_add_headers_value)) - Specifies the value in inject into proxied requests. + - `dashboard_url_templates` ((#ui_config_dashboard_url_templates)) - This map + specifies URL templates that may be used to render links to external + dashboards in various contexts in the UI. It is a map with the name of the + template as a key. The value is a string URL with optional placeholders. + + Each template may contain placeholders which will be substituted for the + correct values in content when rendered in the UI. The placeholders + available are listed for each template. + + For more information and examples see [UI + Visualization](/docs/connect/observability/ui-visualization#configuring-dashboard-urls) + + The following named templates are defined: + + - `service` ((#ui_config_dashboard_url_templates_service)) - This is the URL + to use when linking to the dashboard for a specific service. It is shown + as part of the [Topology + Visualization](/docs/connect/observability/ui-visualization). + + The placeholders available are: + - `{{Service.Name}}` - Replaced with the current service's name. + - `{{Service.Namespace}}` - Replaced with the current service's namespace or empty if namespaces are not enabled. + - `{{Datacenter}}` - Replaced with the current service's datacenter. + - `ui_dir` - **This field is deprecated in Consul 1.9.0. See the [`ui_config.dir`](#ui_config_dir) field instead.** Equivalent to the [`-ui-dir`](#_ui_dir) command-line @@ -2162,6 +2204,14 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." currently only supports numeric IDs. - `mode` - The permission bits to set on the file. +- `use_streaming_backend` when enabled Consul client agents will use streaming rpc to + populate, instead of the traditional blocking queries, for endpoints which support + streaming. All servers must have [`rpc.enable_streaming`](#rpc_enable_streaming) + enabled before any client can enable `use_streaming_backend`. + At least one of [`dns.use_cache`](#dns_use_cache) or + [`http_config.use_cache`](#http_config_use_cache) must be enabled, otherwise + this setting has no effect. + - `verify_incoming` - If set to true, Consul requires that all incoming connections make use of TLS and that the client provides a certificate signed by a Certificate Authority from the diff --git a/website/pages/docs/agent/telemetry.mdx b/website/pages/docs/agent/telemetry.mdx index c5d842519..46c1d9269 100644 --- a/website/pages/docs/agent/telemetry.mdx +++ b/website/pages/docs/agent/telemetry.mdx @@ -263,6 +263,14 @@ These metrics are used to monitor the health of the Consul servers. | `consul.session_ttl.invalidate` | This measures the time spent invalidating an expired session. | ms | timer | | `consul.txn.apply` | This measures the time spent applying a transaction operation. | ms | timer | | `consul.txn.read` | This measures the time spent returning a read transaction. | ms | timer | +| `consul.grpc.client.request.count` | This metric counts the number of gRPC requests made by the client agent to a Consul server. | requests | counter | +| `consul.grpc.client.connect.count` | This metric counts the number of new gRPC connections opened by the client agent to a Consul server. | connections | counter | +| `consul.grpc.client.connections` | This metric measures the number of active gRPC connections open from the client agent to any Consul servers. | connections | gauge | +| `consul.grpc.server.request.count` | This metric counts the number of gRPC requests received by the server. | requests | counter | +| `consul.grpc.server.connect.count` | This metric counts the number of new gRPC connections received by the server. | connections | counter | +| `consul.grpc.server.connections` | This metric measures the number of active gRPC connections open on the server. | connections | gauge | +| `consul.grpc.server.stream.count` | This metric counts the number of new gRPC streams received by the server. | streams | counter | +| `consul.grpc.server.streams` | This metric measures the number of active gRPC streams handled by the server. | streams | guage | ## Cluster Health diff --git a/website/pages/docs/connect/ca/index.mdx b/website/pages/docs/connect/ca/index.mdx index 3af7f0e6a..37ebe4d23 100644 --- a/website/pages/docs/connect/ca/index.mdx +++ b/website/pages/docs/connect/ca/index.mdx @@ -19,8 +19,7 @@ storing and signing certificates. Consul ships with a root certificate and private key on the Consul servers. Consul also has built-in support for [Vault as a CA](/docs/connect/ca/vault). With Vault, the root certificate -and private key material remain with the Vault cluster. A future version of -Consul will support pluggable CA systems using external binaries. +and private key material remain with the Vault cluster. ## CA Bootstrapping diff --git a/website/pages/docs/connect/gateways/ingress-gateway.mdx b/website/pages/docs/connect/gateways/ingress-gateway.mdx index 170a4f460..6c72c3d73 100644 --- a/website/pages/docs/connect/gateways/ingress-gateway.mdx +++ b/website/pages/docs/connect/gateways/ingress-gateway.mdx @@ -23,7 +23,7 @@ to a set of backing [services](/docs/agent/config-entries/ingress-gateway#services). To enable easier service discovery, a new Consul [DNS -subdomain](/docs/agent/dns#ingress-service-lookups) is provided, on +subdomain](/docs/discovery/dns#ingress-service-lookups) is provided, on `.ingress.`. For listeners with a @@ -32,7 +32,7 @@ For listeners with a case, the ingress gateway relies on host/authority headers to decide the service that should receive the traffic. The host used to match traffic defaults to the [Consul DNS ingress -subdomain](/docs/agent/dns#ingress-service-lookups), but can be changed using +subdomain](/docs/discovery/dns#ingress-service-lookups), but can be changed using the [hosts](/docs/agent/config-entries/ingress-gateway#hosts) field. ![Ingress Gateway Architecture](/img/ingress-gateways.png) diff --git a/website/pages/docs/connect/native/index.mdx b/website/pages/docs/connect/native/index.mdx index e4ad13414..5b0f0e049 100644 --- a/website/pages/docs/connect/native/index.mdx +++ b/website/pages/docs/connect/native/index.mdx @@ -52,7 +52,7 @@ Details on the steps are below: - **Service discovery** - This is normal service discovery using Consul, a static IP, or any other mechanism. If you're using Consul DNS, the - [`.connect`](/docs/agent/dns#connect-capable-service-lookups) + [`.connect`](/docs/discovery/dns#connect-capable-service-lookups) syntax to find Connect-capable endpoints for a service. After service discovery, choose one address from the list of **service addresses**. diff --git a/website/pages/docs/connect/observability.mdx b/website/pages/docs/connect/observability/index.mdx similarity index 100% rename from website/pages/docs/connect/observability.mdx rename to website/pages/docs/connect/observability/index.mdx diff --git a/website/pages/docs/connect/observability/ui-visualization.mdx b/website/pages/docs/connect/observability/ui-visualization.mdx new file mode 100644 index 000000000..fcd3d2a0a --- /dev/null +++ b/website/pages/docs/connect/observability/ui-visualization.mdx @@ -0,0 +1,536 @@ +--- +layout: docs +page_title: Connect - UI Visualization +sidebar_title: UI Visualization +description: |- + This page describes how to set up and customize the Service Mesh Topology + visualization in Consul's UI. +--- + +# UI Visualization + +Since Consul 1.9.0, Consul's built in UI includes a topology visualization to +show a service's immediate connectivity at a glance. It is not intended as a +replacement for dedicated monitoring solutions, but rather as a quick overview +of the state of a service and its connections within the Service Mesh. + +The topology visualization requires services to be using [Consul +Connect](/docs/connect) via [side-car proxies](/docs/connect/proxies). + +The visualization may optionally be configured to include a link to an external +per-service dashboard. This is designed to provide convenient deep links to your +existing monitoring or Application Performance Monitoring (APM) solution for +each service. More information can be found in [Configuring Dashboard +URLs](#configuring-dashboard-urls). + +It is possible to configure the UI to fetch basic metrics from your metrics +provider storage to augment the visualization as displayed below. + +![Consul UI Service Mesh Visualization](/img/ui-service-topology-view.png) + +Consul has built-in support for overlaying metrics from a +[Prometheus](https://prometheus.io) backend. Alternative metrics providers may +be supported using a new and experimental JavaScript API. See [Custom Metrics +Providers](#custom-metrics-providers). + + +## Configuring the UI To Display Metrics + +To configure Consul's UI to fetch metrics there are two required configuration settings. +These need to be set on each Consul Agent that is responsible for serving the +UI. If there are multiple clients with the UI enabled in a datacenter for +redundancy these configurations must be added to all of them. + +We assume that the UI is already enabled by setting +[`ui_config.enabled`](/docs/agent/options#ui_config_enabled) to `true` in the +agent's configuration file. + +To use the built-in Prometheus provider +[`ui_config.metrics_provider`](/docs/agent/options#ui_config_metrics_provider) +must be set to `prometheus`. + +The UI must query the metrics provider through a proxy endpoint. This simplifies +deployment where Prometheus is not exposed externally to UI user's browsers. + +To set this up, provide the URL that the _Consul agent_ should use to reach the +Prometheus server in +[`ui_config.metrics_proxy.base_url`](/docs/agent/options#ui_config_metrics_proxy_base_url). +For example in Kubernetes, the Prometheus helm chart by default installs a +service named `prometheus-server` so each Consul agent can reach it on +`http://prometheus-server` (using Kubernetes' DNS resolution). + +A full configuration to enable Prometheus is given below. + +```hcl +ui_config { + enabled = true + metrics_provider = "prometheus" + metrics_proxy { + base_url = "http://prometheus-server" + } +} +``` + +## Configuring Dashboard URLs + +Since Consul's visualization is intended as an overview of your mesh and not a +comprehensive monitoring tool, you can configure a service dashboard URL +template which allows users to click directly through to the relevant +service-specific dashboard in an external tool like +[Grafana](https://grafana.com) or a hosted provider. + +To configure this, you must provide a URL template in the [agent configuration +file](/docs/agent/options#ui_config_dashboard_url_templates) for all agents that +have the UI enabled. The template is essentially the URL to the external +dashboard, but can have placeholder values which will be replaced with the +service name, namespace and datacenter where appropriate to allow deep-linking +to the relevant information. + +An example with Grafana is shown below. + +```hcl +ui_config { + enabled = true + dashboard_url_templates { + service = "https://grafana.example.com/d/lDlaj-NGz/ + service-overview?orgId=1&var-service={{Service.Name}}& + var-namespace={{Service.Namespace}}&var-dc={{Datacenter}}" + } +} +``` + +-> **Note**: the URL is wrapped over multiple lines to make it easier to read +without horizontal scrolling in the example above however this needs to be a +normal single-line string value in an HCL configuration file. + + +![Consul UI Service Dashboard Link](/img/ui-dashboard-url-template.png) + + +### Metrics Proxy + +In many cases the metrics backend may be inaccessible to UI user's browsers or +may be on a different domain and so subject to CORS restrictions. To make it +simpler to serve the metrics to the UI in these cases, the Consul agent can +proxy requests for metrics from the UI to the backend. + +**This is intended to simplify setup in test and demo environments. Careful +consideration should be given towards using this in production.** + +The simplest configuration is described in [Configuring the UI for +metrics](#configuring-the-ui-for-metrics). + +#### Metrics Proxy Security + +~> **Security Note**: Exposing a backend metrics service to potentially + un-authenticated network traffic via the proxy should be _carefully_ considered + in production. + +The metrics proxy endpoint is internal and intended only for UI use. However by +enabling it anyone with network access to the agent's API port may use it to +access metrics from the backend. + +**If ACLs are not enabled, full access to metrics will be exposed to +un-authenticated workloads on the network**. + +With ACLs enabled, the proxy endpoint requires a valid token with read access +to all nodes and services (across all namespaces in Enterprise): + +```hcl +# Consul OSS +service_prefix "" { + policy = "read" +} +node_prefix "" { + policy = "read" +} + +# Consul Enterprise +namespace_prefix "" { + service_prefix "" { + policy = "read" + } + node_prefix "" { + policy = "read" + } +} +``` + +It's typical for most authenticated users to have this level of access in Consul +as it's required for viewing the catalog or discovering services. If you use a +[Single Sign-On integration](/docs/security/acl/auth-methods/oidc) (Consul +Enterprise) users of the UI can be automatically issued an ACL token with the +privileges above to be allowed access to the metrics through the proxy. + +Even with ACLs enabled, the proxy endpoint doesn't deeply understand the query +language of the backend so there is no way it can enforce least-privilege access +to only specific service-related metrics. + +_If you are not comfortable with all users of Consul having full access to the +metrics backend, you should not use the proxy and find an alternative like using +a custom provider that can query the metrics backend directly_. + +##### Path Allowlist + +To limit exposure of the metrics backend, paths must be explicitly added to an +allowlist to avoid exposing unintended parts of the API. For example with +Prometheus, both the `/api/v1/query_range` and `/api/v1/query` endpoints are +needed to load time-series and individual stats. If the proxy had the `base_url` +set to `http://prometheus-server` then the proxy would also expose read access +to several other endpoints such as `/api/v1/status/config` which includes all +Prometheus configuration which might include sensitive information. + +If you use the built-in `prometheus` provider the proxy is limited to the +essential endpoints. The default value for `metrics_proxy.path_allowlist` is +`["/api/v1/query_range", "/api/v1/query"]` as required by the built-in +`prometheus` provider . + +If you use a custom provider that uses the metrics proxy, you'll need to +explicitly set the allowlist based on the endpoints the provider needs to +access. + +#### Adding Headers + +It is also possible to configure the proxy to add one or more headers to +requests as they pass through. This is useful when the metrics backend requires +authentication. For example if your metrics are shipped to a hosted provider, +you could provision an API token specifically for the Consul UI and configure +the proxy to add it as in the example below. This keeps the API token only +visible to Consul operators in the configuration file while UI users can query +the metrics they need without separately obtaining a token for that provider or +having a token exposed to them that they might be able to use elsewhere. + +```hcl +ui_config { + enabled = true + metrics_provider = "example-apm" + metrics_proxy { + base_url = "https://example-apm.com/api/v1/metrics" + add_headers = [ + { + name = "Authorization" + value = "Bearer " + } + ] + } +} +``` + +## Custom Metrics Providers + +Consul 1.9.0 includes a built-in provider for fetching metrics from +[Prometheus](https://prometheus.io). To enable the UI visualization feature +to work with other existing metrics stores and hosted services, we created a +"metrics provider" interface in JavaScript. A custom provider may be written and +the JavaScript file served by the Consul agent. + +~> **Note**: this interface is _experimental_ and may change in breaking ways or + be removed entirely as we discover the needs of the community. Please provide + feedback on [GitHub](https://github.com/hashicorp/consul) or + [Discuss](https://discuss.hashicorp.com/) on how you'd like to use this. + +The template for a complete provider JavaScript file is given below. + +```JavaScript +(function () { + var provider = { + /** + * init is called when the provider is first loaded. + * + * options.providerOptions contains any operator configured parameters + * specified in the `metrics_provider_options_json` field of the Consul + * agent configuration file. + * + * Consul will provide: + * + * 1. A boolean field options.metrics_proxy_enabled to indicate whether the + * agent has a metrics proxy configured. + * + * 2. A function options.fetch which is a thin wrapper around the browser's + * [Fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) + * that prefixes any url with the url of Consul's internal metrics proxy + * endpoint and adds your current Consul ACL token to the request + * headers. Otherwise it functions like the browser's native fetch. + * + * The provider should throw an Exception if the options are not valid, for + * example because it requires a metrics proxy and one is not configured. + */ + init: function(options) {}, + + /** + * serviceRecentSummarySeries should return time series for a recent time + * period summarizing the usage of the named service in the indicated + * datacenter. In Consul Enterprise a non-empty namespace is also provided. + * + * If these metrics aren't available then an empty series array may be + * returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The service's protocol must be given as one of Consul's supported + * protocols e.g. "tcp", "http", "http2", "grpc". If it is empty or the + * provider doesn't recognize the protocol, it should treat it as "tcp" and + * provide basic connection stats. + * + * The expected return value is a JavaScript promise which resolves to an + * object that should look like the following: + * + * { + * // The unitSuffix is shown after the value in tooltips. Values will be + * // rounded and shortened. Larger values will already have a suffix + * // like "10k". The suffix provided here is concatenated directly + * // allowing for suffixes like "mbps/kbps" by using a suffix of "bps". + * // If the unit doesn't make sense in this format, include a + * // leading space for example " rps" would show as "1.2k rps". + * unitSuffix: " rps", + * + * // The set of labels to graph. The key should exactly correspond to a + * // property of every data point in the array below except for the + * // special case "Total" which is used to show the sum of all the + * // stacked graph values. The key is displayed in the tooltip so it + * // should be human-friendly but as concise as possible. The value is a + * // longer description that is displayed in the graph's key on request + * // to explain exactly what the metrics mean. + * labels: { + * "Total": "Total inbound requests per second.", + * "Successes": "Successful responses (with an HTTP response code ...", + * "Errors": "Error responses (with an HTTP response code in the ...", + * }, + * + * data: [ + * { + * time: 1600944516286, // milliseconds since Unix epoch + * "Successes": 1234.5, + * "Errors": 2.3, + * }, + * ... + * ] + * } + * + * Every data point object should have a value for every series label + * (except for "Total") otherwise it will be assumed to be "0". + */ + serviceRecentSummarySeries: function(serviceDC, namespace, serviceName, protocol, options) {}, + + /** + * serviceRecentSummaryStats should return four summary statistics for a + * recent time period for the named service in the indicated datacenter. In + * Consul Enterprise a non-empty namespace is also provided. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The service's protocol must be given as one of Consul's supported + * protocols e.g. "tcp", "http", "http2", "grpc". If it is empty or the + * provider doesn't recognize it it should treat it as "tcp" and provide + * just basic connection stats. + * + * The expected return value is a JavaScript promise which resolves to an + * object that should look like the following: + * + * { + // stats is an array of stats to show. The first four of these will be + // displayed. Fewer may be returned if not available. + * stats: [ + * { + * // label should be 3 chars or fewer as an abbreviation + * label: "SR", + * + * // desc describes the stat in a tooltip + * desc: "Success Rate - the percentage of all requests that were not 5xx status", + * + * // value is a string allowing the provider to format it and add + * // units as appropriate. It should be as compact as possible. + * value: "98%", + * } + * ] + * } + */ + serviceRecentSummaryStats: function(serviceDC, namespace, serviceName, protocol, options) {}, + + /** + * upstreamRecentSummaryStats should return four summary statistics for each + * upstream service over a recent time period, relative to the named service + * in the indicated datacenter. In Consul Enterprise a non-empty namespace + * is also provided. + * + * Note that the upstreams themselves might be in different datacenters but + * we only pass the target service DC since typically these metrics should + * be from the outbound listener of the target service in this DC even if + * the requests eventually end up in another DC. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The expected return value is a JavaScript promise which resolves to an + * object that should look like the following: + * + * { + * stats: { + * // Each upstream will appear as an entry keyed by the upstream + * // service name. The value is an array of stats with the same + * // format as serviceRecentSummaryStats response.stats. Note that + * // different upstreams might show different stats depending on + * // their protocol. + * "upstream_name": [ + * {label: "SR", desc: "...", value: "99%"}, + * ... + * ], + * ... + * } + * } + */ + upstreamRecentSummaryStats: function(serviceDC, namespace, serviceName, upstreamName, options) {}, + + /** + * downstreamRecentSummaryStats should return four summary statistics for + * each downstream service over a recent time period, relative to the named + * service in the indicated datacenter. In Consul Enterprise a non-empty + * namespace is also provided. + * + * Note that the service may have downstreams in different datacenters. For + * some metrics systems which are per-datacenter this makes it hard to query + * for all downstream metrics from one source. For now the UI will only show + * downstreams in the same datacenter as the target service. In the future + * this method may be called multiple times, once for each DC that contains + * downstream services to gather metrics from each. In that case a separate + * option for target datacenter will be used since the target service's DC + * is still needed to correctly identify the outbound clusters that will + * route to it from the remote DC. + * + * If these metrics aren't available then an empty array may be returned. + * + * The period may (later) be specified in options.startTime and + * options.endTime. + * + * The expected return value is a JavaScript promise which resolves to an + * object that should look like the following: + * + * { + * stats: { + * // Each downstream will appear as an entry keyed by the downstream + * // service name. The value is an array of stats with the same + * // format as serviceRecentSummaryStats response.stats. Different + * // downstreams may display different stats if required although the + * // protocol should be the same for all as it is the target + * // service's protocol that matters here. + * "downstream_name": [ + * {label: "SR", desc: "...", value: "99%"}, + * ... + * ], + * ... + * } + * } + */ + downstreamRecentSummaryStats: function(serviceDC, namespace, serviceName, options) {} + } + + // Register the provider with Consul for use. This example would be usable by + // configuring the agent with `ui_config.metrics_provider = "example-provider". + window.consul.registerMetricsProvider("example-provider", provider) + +}()); +``` + +Additionally, the built in [Prometheus +provider code](https://github.com/hashicorp/consul/blob/master/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js) +can be used as a reference. + +### Configuring the Agent With a Custom Metrics Provider. + +In the example below, we configure the Consul agent to use a metrics provider +named `example-provider`, which is defined in +`/usr/local/bin/example-metrics-provider.js`. The name `example-provider` must +have been specified in the call to `consul.registerMetricsProvider` as in the +code listing in the last section. + +```hcl +ui_config { + enabled = true + metrics_provider = "example-provider" + metrics_provider_files = ["/usr/local/bin/example-metrics-provider.js"] + metrics_provider_options_json = <<-EOT + { + "foo": "bar" + } + EOT +} +``` + +More than one JavaScript file may be specified in +[`metrics_provider_files`](/docs/agent/options#ui_config_metrics_provider_files) +and all we be served allowing flexibility if needed to include dependencies. +Only one metrics provider can be configured and used at one time. + +The +[`metrics_provider_options_json`](/docs/agent/options#ui_config_metrics_provider_options_json) +field is an optional literal JSON object which is passed to the provider's +`init` method at startup time. This allows configuring arbitrary parameters for +the provider in config rather than hard coding them into the provider itself to +make providers more reusable. + +The provider may fetch metrics directly from another source although in this +case the agent will probably need to serve the correct CORS headers to prevent +browsers from blocking these requests. These may be configured with +[`http_config.response_headers`](/docs/agent/options#response_headers). + +Alternatively, the provider may choose to use the [built-in metrics +proxy](#metrics-proxy) to avoid cross domain issues or to inject additional +authorization headers without requiring each UI user to be separately +authenticated to the metrics backend. + +A function that behaves like the browser's [Fetch +API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API) is provided to +the metrics provider JavaScript during `init` as `options.fetch`. This is a thin +wrapper that prefixes any url with the url of Consul's metrics proxy endpoint +and adds your current Consul ACL token to the request headers. Otherwise it +functions like the browser's native fetch and will forward your request on to the +metrics backend. The response will be returned without any modification to be +interpreted by the provider and converted into the format as described in the +interface above. + +Provider authors should make it clear to users which paths are required so they +can correctly configure the [path allowlist](#path-allowlist) in the metrics +proxy to avoid exposing more than needed of the metrics backend. + +### Custom Provider Security Model + +Since the JavaScript file(s) are included in Consul's UI verbatim, the code in +them must be treated as fully trusted by the operator. Typically they will have +authored this or will need to carefully vet providers written by third parties. + +This is equivalent to using the existing `-ui-dir` flag to serve an alternative +version of the UI - in either model the operator takes full responsibility for +the provenance of the code being served since it has the power to intercept ACL +tokens, access cookies and local storage for the Consul UI domain and possibly +more. + + +## Current Limitations + +Currently there are some limitations to this feature. + +- **No cross-datacenter support** The initial metrics provider integration is + with Prometheus which is popular and easy to setup within one Kubernetes + cluster. However, when using the Consul UI in a multi-datacenter deployment, + the UI allows users to select any datacenter to view. + + This means that the Prometheus server that the Consul agent serving the UI can + access likely only has metrics for the local datacenter and a full solution + would need additional proxying or exposing remote Prometheus servers on the + network in remote datacenters. Later we may support an easy way to set this up + via Consul Connect but initially we don't attempt to fetch metrics in the UI + if you are browsing a remote datacenter. + +- **Built-in provider requires metrics proxy** Initially the built-in + `prometheus` provider only support querying Prometheus via the [metrics + proxy](#metrics-proxy). Later it may be possible to configure it for direct + access to an expose Prometheus. + + + diff --git a/website/pages/docs/connect/proxies/envoy.mdx b/website/pages/docs/connect/proxies/envoy.mdx index 8ba5ad605..96814b8dd 100644 --- a/website/pages/docs/connect/proxies/envoy.mdx +++ b/website/pages/docs/connect/proxies/envoy.mdx @@ -35,9 +35,9 @@ compatible Envoy versions. | Consul Version | Compatible Envoy Versions | | ------------------- | --------------------------------- | -| 1.9.x | 1.15.0, 1.14.4‡, 1.13.4‡, 1.12.6‡ | -| 1.8.x | 1.14.4, 1.13.4, 1.12.6, 1.11.2 | -| 1.7.x | 1.13.1, 1.12.3, 1.11.2, 1.10.0\* | +| 1.9.x | 1.16.0, 1.15.2, 1.14.5‡, 1.13.6‡ | +| 1.8.x | 1.14.5, 1.13.6, 1.12.7, 1.11.2 | +| 1.7.x | 1.13.6, 1.12.7, 1.11.2, 1.10.0\* | | 1.6.x, 1.5.3, 1.5.2 | 1.11.1, 1.10.0, 1.9.1, 1.8.0† | | 1.5.1, 1.5.0 | 1.9.1, 1.8.0† | | 1.4.x, 1.3.x | 1.9.1, 1.8.0†, 1.7.0† | diff --git a/website/pages/docs/connect/proxies/index.mdx b/website/pages/docs/connect/proxies/index.mdx index 430c53609..874871fe8 100644 --- a/website/pages/docs/connect/proxies/index.mdx +++ b/website/pages/docs/connect/proxies/index.mdx @@ -32,7 +32,7 @@ switch service definitions for registering proxies. If an application requires dynamic dependencies that are only available at runtime, it must [natively integrate](/docs/connect/native) with Connect. After natively integrating, the HTTP API or -[DNS interface](/docs/agent/dns#connect-capable-service-lookups) +[DNS interface](/docs/discovery/dns#connect-capable-service-lookups) can be used. !> Connect proxies do not currently support dynamic upstreams. diff --git a/website/pages/docs/connect/proxies/managed-deprecated.mdx b/website/pages/docs/connect/proxies/managed-deprecated.mdx index 3f4e1c3b6..24348dd8c 100644 --- a/website/pages/docs/connect/proxies/managed-deprecated.mdx +++ b/website/pages/docs/connect/proxies/managed-deprecated.mdx @@ -32,7 +32,7 @@ After transitioning away from all managed proxy usage, the `proxy` subdirectory Originally managed proxies traded higher implementation complexity for an easier "getting started" user experience. After seeing how Connect was investigated and -adopted during beta it because obvious that they were not the best trade off. +adopted during beta it became obvious that they were not the best trade off. Managed proxies only really helped in local testing or VM-per-service based models whereas a lot of users jumped straight to containers where they are not @@ -119,7 +119,7 @@ default managed proxy and starts a listener for that service: The listener is started on random port within the configured Connect port range. It can be discovered using the -[DNS interface](/docs/agent/dns#connect-capable-service-lookups) +[DNS interface](/docs/discovery/dns#connect-capable-service-lookups) or [Catalog API](#). In most cases, service-to-service communication is established by diff --git a/website/pages/docs/discovery/services.mdx b/website/pages/docs/discovery/services.mdx index cb90f2abe..c1d01f5f2 100644 --- a/website/pages/docs/discovery/services.mdx +++ b/website/pages/docs/discovery/services.mdx @@ -355,7 +355,7 @@ services { ## Service and Tag Names with DNS -Consul exposes service definitions and tags over the [DNS](/docs/agent/dns) +Consul exposes service definitions and tags over the [DNS](/docs/discovery/dns) interface. DNS queries have a strict set of allowed characters and a well-defined format that Consul cannot override. While it is possible to register services or tags with names that don't match the conventions, those diff --git a/website/pages/docs/enterprise/read-scale.mdx b/website/pages/docs/enterprise/read-scale.mdx index a5bb4102f..cf2dd536f 100644 --- a/website/pages/docs/enterprise/read-scale.mdx +++ b/website/pages/docs/enterprise/read-scale.mdx @@ -4,12 +4,10 @@ page_title: Consul Enterprise Enhanced Read Scalability sidebar_title: Enhanced Read Scalability description: >- Consul Enterprise supports increased read scalability without impacting write - latency by introducing - - non-voting servers. + latency by introducing read replicas. --- -# Enhanced Read Scalability with Non-Voting Servers +# Enhanced Read Scalability with Read Replicas This feature requires{' '} @@ -18,10 +16,10 @@ description: >- Consul Enterprise provides the ability to scale clustered Consul servers -to include voting and non-voting servers. Non-voting servers still receive data from the cluster replication, +to include voting servers and read replicas. Read replicas still receive data from the cluster replication, however, they do not take part in quorum election operations. Expanding your Consul cluster in this way can scale reads without impacting write latency. For more details, review the [Consul server configuration](/docs/agent/options) -documentation and the [-non-voting-server](/docs/agent/options#_non_voting_server) +documentation and the [-read-replica](/docs/agent/options#_read_replica) configuration flag. diff --git a/website/pages/docs/k8s/connect/health.mdx b/website/pages/docs/k8s/connect/health.mdx new file mode 100644 index 000000000..27783e29a --- /dev/null +++ b/website/pages/docs/k8s/connect/health.mdx @@ -0,0 +1,47 @@ +--- +layout: docs +page_title: Kubernetes Health Checks +sidebar_title: Health Checks +description: Configuring Kubernetes Health Checks +--- + +# Kubernetes Health Checks in Consul on Kubernetes + +-> 0.26+: This feature is available in consul-helm versions 0.26 and higher and is defaulted on. +To disable it, set `connectInject.healthChecks.enabled: false`. + +~> This topic requires familiarity with [Kubernetes Health Checks](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/). + +This page describes how to enable Consul on Kubernetes to sync the Kubernetes readiness status to Consul for service mesh uses cases. + +When deploying your Helm chart, you can provide Helm with a custom yaml file that contains your environment configuration. +Enabling health checks is done via the `healthChecks` stanza under `connectInject`. + +The minimal configuration required to enable health check synchronization with Consul for service mesh traffic is: + +```yaml +global: + name: consul +connectInject: + enabled: true + healthChecks: + enabled: true +``` + +When `enabled: true` is set, a [TTL health check](https://www.consul.io/docs/discovery/checks#ttl) will be registered within +Consul for each Kubernetes pod that is connect-injected. The Consul health check's state will reflect the pod's readiness +status, which is the combination of all Kubernetes probes registered with the pod. + +When readiness probes are set for a pod, the status of the pod will be reflected within Consul and will cause Consul to redirect service +mesh traffic to the pod based on the pod's health. If the pod has failing health checks, Consul will no longer use +the service instance associated with the pod for service mesh traffic. When the pod passes its health checks, Consul will +then use the respective service instance for service mesh traffic. + +In the case where no user defined health checks are assigned to a pod, the default behavior is that the Consul health check will +be marked `passing` until the pod becomes unready. + +To disable the health check controller, set the configuration for `healthChecks` to `enabled: false`. +In this state no health checks will be associated with Consul for Kubernetes pods regardless of the pod's health probes. + +-> It is highly recommended to [enable TLS](/docs/k8s/helm#v-global-tls-enabled) for all configurations which use healthChecks to mitigate any +security concerns should the pod network ever be compromised. The health checks controller makes calls across the network to Consul agents on all nodes so an attacker could potentially sniff ACL tokens if those calls are not encrypted. diff --git a/website/pages/docs/k8s/connect/index.mdx b/website/pages/docs/k8s/connect/index.mdx index 174550d38..c826e0c73 100644 --- a/website/pages/docs/k8s/connect/index.mdx +++ b/website/pages/docs/k8s/connect/index.mdx @@ -256,6 +256,14 @@ Annotations can be used to configure the injection behavior. [defaultProtocol](/docs/k8s/helm#v-connectinject-centralconfig-defaultprotocol) option. Specific annotations will always override the default value. +- `consul.hashicorp.com/envoy-extra-args` - A space-separated list of [arguments](https://www.envoyproxy.io/docs/envoy/latest/operations/cli) + to be passed to the injected envoy binary. + + ```yaml + annotations: + consul.hashicorp.com/envoy-extra-args: "--log-level debug --disable-hot-restart" + ``` + - `consul.hashicorp.com/service-tags` - A comma separated list of tags that will be applied to the Consul service and its sidecar. diff --git a/website/pages/docs/k8s/crds.mdx b/website/pages/docs/k8s/crds/index.mdx similarity index 93% rename from website/pages/docs/k8s/crds.mdx rename to website/pages/docs/k8s/crds/index.mdx index a0292880b..301a6747c 100644 --- a/website/pages/docs/k8s/crds.mdx +++ b/website/pages/docs/k8s/crds/index.mdx @@ -1,19 +1,16 @@ --- layout: docs -page_title: Consul Custom Resource Definitions (Beta) -sidebar_title: Custom Resource Definitions (Beta) +page_title: Consul Custom Resource Definitions +sidebar_title: Custom Resource Definitions description: >- - Consul now supports managing configuration entries via Kubernetes Custom Resources. + Consul supports managing configuration entries via Kubernetes Custom Resources. These custom resource can be used to manage the configuration for workloads deployed within the cluster. --- -# Custom Resource Definitions (beta) +# Custom Resource Definitions -## Overview - --> **This feature is currently in Beta.** It requires consul-helm >= 0.25.0 and -consul >= 1.8.4. +-> This feature requires consul-helm >= 0.26.0, consul-k8s >= 0.20.0 and consul >= 1.8.4. We support managing Consul [configuration entries](/docs/agent/config-entries) via Kubernetes Custom Resources. Configuration entries are used to provide @@ -35,15 +32,15 @@ The following kinds are **not** currently supported: ## Installation -Ensure you have version `0.25.0` of the helm chart: +Ensure you have version `0.26.0` of the helm chart: ```shell-session $ helm search repo hashicorp/consul NAME CHART VERSION APP VERSION DESCRIPTION -hashicorp/consul 0.25.0 1.8.4 Official HashiCorp Consul Chart +hashicorp/consul 0.26.0 1.8.5 Official HashiCorp Consul Chart ``` -If you don't have `0.25.0`, you will need to update your helm repository cache: +If you don't have `0.26.0`, you will need to update your helm repository cache: ```shell-session $ helm repo update @@ -59,7 +56,7 @@ and enable the controller that acts on them: global: name: consul image: 'consul:1.9.0-beta1' # consul >= 1.8.4 must be used - imageK8S: 'hashicorp/consul-k8s:0.19.0' + imageK8S: 'hashicorp/consul-k8s:0.20.0' controller: enabled: true @@ -72,13 +69,18 @@ Note that: 1. `controller.enabled: true` installs the CRDs and enables the controller. 1. `global.image` must be a Consul version `>= 1.8.4`, e.g. `consul:1.8.4` or `consul:1.9.0-beta1`. -1. `global.imageK8S` must be `>= 0.19.0` +1. `global.imageK8S` must be `>= 0.20.0` 1. Configuration entries are used to configure Consul service mesh so it's also expected that `connectInject` will be enabled. See [Install with Helm Chart](/docs/k8s/installation/install) for further installation instructions. +## Upgrading An Existing Cluster to CRDs + +If you have an existing Consul cluster running on Kubernetes you may need to perform +extra steps to migrate to CRDs. See [Upgrade An Existing Cluster to CRDs](/docs/k8s/crds/upgrade-to-crds) for full instructions. + ## Usage Once installed, you can use `kubectl` to create and manage Consul's configuration entries. diff --git a/website/pages/docs/k8s/crds/upgrade-to-crds.mdx b/website/pages/docs/k8s/crds/upgrade-to-crds.mdx new file mode 100644 index 000000000..e864ab2c2 --- /dev/null +++ b/website/pages/docs/k8s/crds/upgrade-to-crds.mdx @@ -0,0 +1,321 @@ +--- +layout: docs +page_title: Upgrade An Existing Cluster to CRDs +sidebar_title: Upgrade An Existing Cluster to CRDs +description: >- + Upgrade an existing cluster to use custom resources. +--- + +# Upgrade An Existing Cluster to CRDs + +-> This feature requires consul-helm >= 0.26.0, consul-k8s >= 0.20.0 and consul >= 1.8.4. + +If you have an existing Consul cluster running on Kubernetes you may need to perform +extra steps to migrate to CRDs. + +You will need to perform extra steps if you are using any of the following configurations: + +- Helm config `connectInject.centralConfig.defaultProtocol`, e.g. + + ```yaml + connectInject: + centralConfig: + defaultProtocol: http + ``` + +- Or setting the `consul.hashicorp.com/connect-service-protocol` annotation on your + connect pods, e.g. + + ```yaml + annotations: + 'consul.hashicorp.com/connect-service-protocol': 'http' + ``` + +- Or Helm config `connectInject.centralConfig.proxyDefaults`, e.g. + ```yaml + connectInject: + centralConfig: + proxyDefaults: | + { + "local_connect_timeout_ms": 1000 + } + ``` + +## Why Migrate? + +All of the above settings do not support modification after the initial +installation of Consul, i.e. they cannot be updated through the Helm chart. + +By switching to custom resources, these settings can now be modified. + +## Migration Overview + +The migration process will consist of identifying which [config entries](/docs/agent/config-entries) +have been created in Consul and adding metadata to them so that they can +be managed by a custom resource instead. + +## Default Protocol + +If you are setting `connectInject.centralConfig.defaultProtocol` then you must +perform the follow steps to migrate to custom resources. + +1. Find existing `service-defaults` config entries: + ```shell-session + $ consul config list -kind service-defaults + static-client + static-server + ``` +1. For each entry, export the config to a file: + + ```shell-session + $ consul config read -name static-client -kind service-defaults > static-client.json + ``` + +1. Edit the file and add the key `"Meta": {"consul.hashicorp.com/source-datacenter": "dc1"}`. + Where `dc1` is the name of your datacenter. Make sure you add any missing trailing commas required for JSON: + + ```json + { + "Kind": "service-defaults", + "Name": "static-client", + "Protocol": "http", + "MeshGateway": {}, + "Expose": {}, + "CreateIndex": 26, + "ModifyIndex": 26, + "Meta": { "consul.hashicorp.com/source-datacenter": "dc1" } + } + ``` + +1. Write the updated config entry: + + ```shell-session + $ consul config write static-client.json + Config entry written: service-defaults/static-client + ``` + +1. Now you're ready to create a custom resource that takes over control of this + config entry. The custom resource will look like: + + ```yaml + apiVersion: consul.hashicorp.com/v1alpha1 + kind: ServiceDefaults + metadata: + name: static-client + spec: + protocol: 'http' + ``` + + Where `metadata.name` is the name of your service and `spec.protocol` is + the default protocol you've set. + +1. When you run `kubectl apply` on this file, the `ServiceDefaults` custom + resource should be created successfully and its `synced` status will be `True`: + + ```shell-session + $ cat < static-client.json + ``` + +1. Edit the file and add the key `"Meta": {"consul.hashicorp.com/source-datacenter": "dc1"}`. + Where `dc1` is the name of your datacenter. Make sure you add any missing trailing commas required for JSON: + + ```json + { + "Kind": "service-defaults", + "Name": "static-client", + "Protocol": "http", + "MeshGateway": {}, + "Expose": {}, + "CreateIndex": 26, + "ModifyIndex": 26, + "Meta": { "consul.hashicorp.com/source-datacenter": "dc1" } + } + ``` + +1. Write the updated config entry: + + ```shell-session + $ consul config write static-client.json + Config entry written: service-defaults/static-client + ``` + +1. Now you're ready to create a custom resource that takes over control of this + config entry. The custom resource will look like: + + ```yaml + apiVersion: consul.hashicorp.com/v1alpha1 + kind: ServiceDefaults + metadata: + name: static-client + spec: + protocol: 'http' + ``` + + Where `metadata.name` is the name of your service and `spec.protocol` is + the default protocol you've set. + +1. When you run `kubectl apply` on this file, the `ServiceDefaults` custom + resource should be created successfully and its `synced` status will be `True`: + + ```shell-session + $ cat < proxy-defaults.json + ``` + +1. Edit the file and add the key `"Meta": {"consul.hashicorp.com/source-datacenter": "dc1"}`. + Where `dc1` is the name of your datacenter. Make sure you add any missing trailing commas required for JSON: + + ```json + { + "Kind": "proxy-defaults", + "Name": "global", + "Config": { + "local_connect_timeout_ms": 1000 + }, + "MeshGateway": { + "Mode": "local" + }, + "Expose": {}, + "CreateIndex": 4, + "ModifyIndex": 4, + "Meta": { "consul.hashicorp.com/source-datacenter": "dc1" } + } + ``` + +1. Write the updated config entry: + + ```shell-session + $ consul config write proxy-defaults.json + Config entry written: proxy-defaults/global + ``` + +1. Now you're ready to create a custom resource that takes over control of this + config entry. The custom resource will look like: + + ```yaml + apiVersion: consul.hashicorp.com/v1alpha1 + kind: ProxyDefaults + metadata: + name: global + spec: + config: + local_connect_timeout_ms: 1000 + meshGateway: + mode: local + ``` + + Any keys you had under `"Config"` must be set in YAML. + If you previously had `"MeshGateway"` config this must also be set now + under `spec.meshGateway`. Also, `metadata.name` must be `global`. + +1. When you run `kubectl apply` on this file, the `ProxyDefaults` custom + resource should be created successfully and its `synced` status will be `True`: + + ```shell-session + $ cat <- # Consul DNS on Kubernetes One of the primary query interfaces to Consul is the -[DNS interface](/docs/agent/dns). You can configure Consul DNS in +[DNS interface](/docs/discovery/dns). You can configure Consul DNS in Kubernetes using a [stub-domain configuration](https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#configure-stub-domain-and-upstream-dns-servers) if using KubeDNS or a [proxy configuration](https://coredns.io/plugins/proxy/) if using CoreDNS. diff --git a/website/pages/docs/k8s/helm.mdx b/website/pages/docs/k8s/helm.mdx index 382036891..38bf3e47d 100644 --- a/website/pages/docs/k8s/helm.mdx +++ b/website/pages/docs/k8s/helm.mdx @@ -380,6 +380,12 @@ and consider if they're appropriate for your deployment. "annotation-key": "annotation-value" ``` + - `extraEnvironmentVars` ((#v-server-extra-environment-vars (`string: "{}"`) - extraEnvironmentVars + is a list of extra environment variables to set within the stateful set. + These could be used to include proxy settings required for cloud auto-join + feature, in case kubernetes cluster is behind egress http proxies. Additionally, + it could be used to configure custom consul parameters. + - `externalServers` ((#v-externalservers)) - Configuration for Consul servers when the servers are running outside of Kubernetes. When running external servers, configuring these values is recommended if setting `global.tls.enableAutoEncrypt` to true (requires consul-k8s >= 0.13.0) @@ -512,6 +518,9 @@ and consider if they're appropriate for your deployment. beta.kubernetes.io/arch: amd64 ``` + - `affinity` ((#v-client-affinity)) (`string`) - This value defines the [affinity](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity) + for client pods, formatted as a multi-line YAML string. + - `priorityClassName` ((#v-client-priorityclassname)) (`string: ""`) - This value references an existing Kubernetes [priorityClassName](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#pod-priority) that can be assigned to client pods. @@ -524,6 +533,12 @@ and consider if they're appropriate for your deployment. "sample/annotation2": "bar" ``` + - `extraEnvironmentVars` ((#v-client-extra-environment-vars (`string: "{}"`) - extraEnvironmentVars + is a list of extra environment variables to set with the pod. These could be + used to include proxy settings required for cloud auto-join feature, + in case kubernetes cluster is behind egress http proxies. Additionally, it + could be used to configure custom consul parameters. + - `dnsPolicy` ((#v-client-dnspolicy)) (`string: null`) - This value defines the [Pod DNS policy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) for client pods to use. @@ -616,6 +631,7 @@ and consider if they're appropriate for your deployment. `namespace1` and `namespace2` to be synced and registered with Consul. All other k8s namespaces will be ignored. Note: `k8sDenyNamespaces` takes precedence over values defined here. Requires consul-k8s v0.12+ + - `k8sDenyNamespaces` ((#v-synccatalog-k8sdenynamespaces)) (`[]string: ["kube-system", "kube-public"]` - list of k8s namespaces that should not have their services synced. This list takes precedence over `k8sAllowNamespaces`. `*` is not supported because then nothing would be allowed to sync. Requires consul-k8s v0.12+. For example, if `k8sAllowNamespaces` is `["*"]` and `k8sDenyNamespaces` is `["namespace1", "namespace2"]`, then all k8s namespaces besides `namespace1` and `namespace2` will be synced. @@ -731,11 +747,17 @@ and consider if they're appropriate for your deployment. to opt-in to Connect injection. If this is true, pods can use the same annotation to explicitly opt-out of injection. + - `healthChecks` ((#v-connectinject-healthchecks)) - Synchronization of Kubernetes health probes status with Consul. + + - `enabled` ((#v-connectinject-healthchecks-enabled)) (`boolean: true`) - Enables the Consul health check controller which syncs the readiness status of connect-injected pods with Consul. + + - `reconcilePeriod` ((#v-connectinject-healthchecks-reconcileperiod)) (`string: "1m"`) - If `healthChecks.enabled` is set to true, reconcilePeriod defines how often a full state reconcile is done after the initial reconcile at startup is completed. + + - `envoyExtraArgs` (((#v-connectinject-envoyextraargs))) (`string: ""`) - Pass [arguments](https://www.envoyproxy.io/docs/envoy/latest/operations/cli) to the injected envoy sidecar, e.g `"--log-level debug --disable-hot-restart"` + - `imageConsul` ((#v-connectinject-imageconsul)) (`string: global.image`) - The name of the Docker image (including any tag) for Consul. This is used for proxy service registration, Envoy configuration, etc. - - `imageEnvoy` ((#v-connectinject-imageenvoy)) (`string: ""`) - The name of the Docker image (including any tag) for the Envoy sidecar. `envoy` must be on the executable path within this image. This Envoy version must be compatible with the Consul version used by the injector. If not specified this defaults to letting the injector choose the Envoy image. Check [supported Envoy versions](/docs/connect/proxies/envoy#supported-versions) to ensure the version you are using is compatible with Consul. - - `namespaceSelector` ((#v-connectinject-namespaceselector)) (`string: ""`) - A [selector](https:// kubernetes.io/docs/concepts/overview/working-with-objects/labels/) for restricting injection to only matching namespaces. By default all namespaces @@ -965,8 +987,6 @@ and consider if they're appropriate for your deployment. - `additionalspec` ((#v-meshgateway-service-additionalspec)) (`string: null`) - Optional YAML string that will be appended to the Service spec. - - `imageEnvoy` ((#v-meshgateway-imageenvoy)) (`string: "envoyproxy/envoy:v1.13.0"`) - Envoy image to use. For Consul v1.7+, Envoy version 1.13+ is required. - - `hostNetwork` ((#v-meshgateway-hostnetwork)) (`boolean: false`) - If set to true, gateway Pods will run on the host network. - `dnsPolicy` ((#v-meshgateway-dnspolicy)) (`string: null`) - `dnsPolicy` to use. diff --git a/website/pages/docs/k8s/service-sync.mdx b/website/pages/docs/k8s/service-sync.mdx index 46ab6a8d9..092e18b79 100644 --- a/website/pages/docs/k8s/service-sync.mdx +++ b/website/pages/docs/k8s/service-sync.mdx @@ -21,7 +21,7 @@ automatically installed and configured using the Consul catalog enable Kubernetes services to be accessed by any node that is part of the Consul cluster, including other distinct Kubernetes clusters. For non-Kubernetes nodes, they can access services using the standard -[Consul DNS](/docs/agent/dns) or HTTP API. +[Consul DNS](/docs/discovery/dns) or HTTP API. **Why sync Consul services to Kubernetes?** Syncing Consul services to Kubernetes services enables non-Kubernetes services (such as external to diff --git a/website/pages/docs/k8s/upgrade/compatibility.mdx b/website/pages/docs/k8s/upgrade/compatibility.mdx index 0f3c903ea..0859241e6 100644 --- a/website/pages/docs/k8s/upgrade/compatibility.mdx +++ b/website/pages/docs/k8s/upgrade/compatibility.mdx @@ -15,6 +15,6 @@ the Helm chart which will ensure a compatible version of the Consul Kubernetes b | Consul Version | Compatible Consul Helm Versions | | -------------- | ------------------------------- | -| 1.8.x | 0.22.0 - 0.25.0 | +| 1.8.x | 0.22.0 - 0.26.0 | | 1.7.x | 0.17.0 - 0.21.0 | | 1.6.x | 0.10.0 - 0.16.2 | diff --git a/website/pages/docs/k8s/upgrade/index.mdx b/website/pages/docs/k8s/upgrade/index.mdx index 614d6596d..fd3734493 100644 --- a/website/pages/docs/k8s/upgrade/index.mdx +++ b/website/pages/docs/k8s/upgrade/index.mdx @@ -281,9 +281,9 @@ to be stopped and restarted with the new image. This can be confirmed by issuing `consul members` on one of the previous servers, and ensuring that all servers are listed and are `alive`. -Decrease `updatePartition` by one and upgrade again. Continue until -`updatePartition` is `0`. At this point, you may remove the -`updatePartition` configuration. Your server upgrade is complete. +1. Decrease `updatePartition` by one and upgrade again. Continue until + `updatePartition` is `0`. At this point, you may remove the + `updatePartition` configuration. Your server upgrade is complete. ## Upgrading Consul Clients diff --git a/website/pages/docs/nia/index.mdx b/website/pages/docs/nia/index.mdx index 1ef17739c..4b0b9fa45 100644 --- a/website/pages/docs/nia/index.mdx +++ b/website/pages/docs/nia/index.mdx @@ -1,6 +1,6 @@ --- layout: docs -page_title: Network Infrastructure Automation Tech Preview +page_title: Network Infrastructure Automation sidebar_title: Network Infrastructure Automation Tech Preview description: >- Network Infrastructure Automation (NIA) is the concept of dynamically updating infrastructure devices triggered by service changes. Consul-Terraform-Sync is a tool that performs NIA and utilizes Consul as a data source that contains networking information about services and monitors those services. Terraform is used as the underlying automation tool and leverages the Terraform provider ecosystem to drive relevant changes to the network infrastructure. @@ -20,7 +20,7 @@ Consul-Terraform-Sync executes one or more automation tasks with the most recent ## Glossary -**Consul-Terraform-Sync** - GitHub repo and binary/CLI name for the project that is used to perform Network Infrastructure Automation. +**Consul-Terraform-Sync** - [GitHub repo](https://github.com/hashicorp/consul-terraform-sync) and binary/CLI name for the project that is used to perform Network Infrastructure Automation. **Network Drivers** - Network drivers are used by Consul-Terraform-Sync to execute and update network infrastructure. Drivers transform Consul service level information into downstream changes by understanding and abstracting API and resource details tied to specific network infrastructure. @@ -31,3 +31,10 @@ Consul-Terraform-Sync executes one or more automation tasks with the most recent **Terraform Module** - A [Terraform module](https://www.terraform.io/docs/configuration/modules.html) is a container for multiple Terraform resources that are used together. **Terraform Provider** - A [Terraform provider](https://www.terraform.io/docs/providers/index.html) is responsible for understanding API interactions and exposing resources for an infrastructure type. + +## Community + +* [Contribute](https://github.com/hashicorp/consul-terraform-sync) to the open source project +* [Report](https://github.com/hashicorp/consul-terraform-sync/issues) bugs or request enhancements +* [Discuss](https://discuss.hashicorp.com/tags/c/consul/29/consul-tf-sync) with the community or ask questions +* [Build integrations](/docs/nia/installation/requirements#how-to-create-a-compatible-terraform-module) for Consul-Terraform-Sync diff --git a/website/pages/docs/nia/installation/requirements.mdx b/website/pages/docs/nia/installation/requirements.mdx index eba9be7f4..f5e1fed13 100644 --- a/website/pages/docs/nia/installation/requirements.mdx +++ b/website/pages/docs/nia/installation/requirements.mdx @@ -69,6 +69,8 @@ If there is no existing Terraform provider, a new Terraform provider can be [cre Working with a Terraform provider, you can write an integration task for Consul-Terraform-Sync by creating a Terraform module that is compatible with the Terraform driver. +-> **Note:** [Release 0.1.0-techpreview1](https://github.com/hashicorp/consul-terraform-sync/releases/tag/v0.1.0-techpreview1) is compatible with Terraform modules with syntax supported by [Terraform version 0.13](https://github.com/hashicorp/terraform/blob/v0.13/CHANGELOG.md). + ### Using Terraform Modules The modules listed below are availabe to use and are compatible with Consul-Terraform-Sync. diff --git a/website/pages/docs/nia/installation/run.mdx b/website/pages/docs/nia/installation/run.mdx index 62fd87078..e6b217b07 100644 --- a/website/pages/docs/nia/installation/run.mdx +++ b/website/pages/docs/nia/installation/run.mdx @@ -14,7 +14,7 @@ description: >- $ mv ~/Downloads/consul-terraform-sync /usr/local/bin/consul-terraform-sync ``` -2. Create the config.hcl file, all the options are available [here](https://github.com/hashicorp/consul-terraform-sync/blob/master/docs/config.md#consul-terraform-sync). +2. Create the config.hcl file, all the options are available [here](/docs/nia/installation/configuration). 3. Run consul-terraform-sync. diff --git a/website/pages/docs/nia/network-drivers.mdx b/website/pages/docs/nia/network-drivers.mdx index 884771e24..7d9de4a75 100644 --- a/website/pages/docs/nia/network-drivers.mdx +++ b/website/pages/docs/nia/network-drivers.mdx @@ -44,7 +44,7 @@ The following files of the root module are generated for each task. An [example * `terraform` block - The corresponding provider source and versions for the task from the configuration files are placed into this block for the root module. The Terraform backend from the configuration is also templated here. * `provider` blocks - The provider blocks generated in the root module resemble the provider blocks in the configuration. They have identical arguments present and are set from the intermediate variable created per provider. * `module` block - The module block is where the task's module is called as a [child module](https://www.terraform.io/docs/configuration/modules.html#calling-a-child-module). The child module contains the core logic for automation. Required and optional input variables are passed as arguments to the module. -* `variables.tf` - This file contains 2 types of variable declarations. The required `services` input variable which determines module compatibility with Consul-Terraform Sync (read more on [compatible Terraform modules](#compatible-terraform-modules) for more details) and various intermediate variables used to dynamically configure providers. These intermediate provider variables are interpolated from the provider blocks and arguments configured in the Consul-Terraform-Sync configuration. +* `variables.tf` - This file contains 2 types of variable declarations. The required `services` input variable which determines module compatibility with Consul-Terraform Sync (read more on [compatible Terraform modules](/docs/nia/installation/requirements#how-to-create-a-compatible-terraform-module) for more details) and various intermediate variables used to dynamically configure providers. These intermediate provider variables are interpolated from the provider blocks and arguments configured in the Consul-Terraform-Sync configuration. * `variables.module.tf` - This file is conditionally created if there are [variables configured for the task](/docs/nia/installation/configuration#variable_files) and contains the interpolated variable declarations that match the variables from configuration. These are then used to proxy the configured variables to the module through explicit assignment in the module block. * `terraform.tfvars` - The variable definitions file is where the services input variable is assigned values from the Consul catalog. It is periodically updated to reflect the current state of the configured set of services for the task. * `terraform.tfvars.tmpl` - The template file is used by Consul-Terraform-Sync to template service information from the Consul catalog by using the HashiCorp configuration and templating library ([hashicorp/hcat](https://github.com/hashicorp/hcat)). diff --git a/website/pages/docs/nia/tasks.mdx b/website/pages/docs/nia/tasks.mdx index 13d0da2f2..8036c19f0 100644 --- a/website/pages/docs/nia/tasks.mdx +++ b/website/pages/docs/nia/tasks.mdx @@ -50,4 +50,8 @@ A task is executed when any change of information for services the task is confi Consul-Terraform-Sync automatically generates any files needed to execute the network driver for each task. See [network drivers](/docs/nia/network-drivers) for more details on the files generated for the Terraform driver. -A [buffer period](/docs/nia/installation/configuration#buffer_period-1) can be configured for tasks to accumulate changes before executing the task. This helps reduce number of times a task is immediately executed by batching changes for a short duration of time. +## Task Automation + +Consul-Terraform-Sync will attempt to execute each task once upon startup to synchronize infrastructure with the current state of Consul. The daemon will stop and exit if any error occurs while preparing the automation environment or executing a task for the first time. This helps ensure all tasks have proper configuration and are executable before the daemon transitions into running tasks in full automation as service changes are discovered over time. After all tasks have successfully executed once, task failures during automation will be logged and retried or attempted again after a subsequent change. + +Tasks are executed near-real time when service changes are detected. For services or environments that are prone to flapping, it may be useful to configure a [buffer period](/docs/nia/installation/configuration#buffer_period-1) for a task to accumulate changes before it is executed. The buffer period would reduce the number of consecutive network calls to infrastructure by batching changes for a task over a short duration of time. diff --git a/website/pages/docs/security/index.mdx b/website/pages/docs/security/index.mdx index bf234978e..2ffa1004d 100644 --- a/website/pages/docs/security/index.mdx +++ b/website/pages/docs/security/index.mdx @@ -10,154 +10,19 @@ description: >- authentication. --- -# Security Model +## Security Models -Consul relies on both a lightweight gossip mechanism and an RPC system -to provide various features. Both of the systems have different security -mechanisms that stem from their designs. However, the security mechanisms -of Consul have a common goal: to provide -[confidentiality, integrity, and authentication](https://en.wikipedia.org/wiki/Information_security). +Requirements and recommendations for operating a secure Consul deployment may vary drastically depending on your +intended workloads, operating system, and environment. You can find detailed information about the various personas, +recommendations, requirements, and threats [here](/docs/security/security-models). -The [gossip protocol](/docs/internals/gossip) is powered by [Serf](https://www.serf.io/), -which uses a symmetric key, or shared secret, cryptosystem. There are more -details on the security of [Serf here](https://www.serf.io/docs/internals/security.html). -For details on how to enable Serf's gossip encryption in Consul, see the -[encryption doc here](/docs/agent/encryption). +## ACLs -The RPC system supports using end-to-end TLS with optional client authentication. -[TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security) is a widely deployed asymmetric -cryptosystem and is the foundation of security on the Web. +Consul provides an optional [Access Control List (ACL) system](/docs/security/acl) which can be used to control access +to data and APIs. -This means Consul communication is protected against eavesdropping, tampering, -and spoofing. This makes it possible to run Consul over untrusted networks such -as EC2 and other shared hosting providers. +## Encryption -## Secure Configuration - -The Consul threat model is only applicable if Consul is running in a secure -configuration. Consul does not operate in a secure-by-default configuration. If -any of the settings below are not enabled, then parts of this threat model are -going to be invalid. Additional security precautions must also be taken for -items outside of Consul's threat model as noted in sections below. - -- **Consul runs just like any other binary.** Consul runs as a single process - and obeys the same security requirements as any other application on - your system. Consul doesn't interact with the host system to change or - manipulate security values in any way. Take any precautions or remediation - steps that you would normally do for individual processes, based on your - operating system. - Some example remediation steps you could take are outlined below. - - - Run applications, including Consul, as non-root users with appropriate - configurations - - Implement Mandatory Access Control using a kernel security module such as SELinux - - Secure against unprivileged users becoming root - -- **ACLs enabled with default deny.** Consul must be configured to use ACLs with - an allowlist (default deny) approach. This forces all requests to have explicit - anonymous access or provide an ACL token. - -- **Encryption enabled.** TCP and UDP encryption must be enabled and configured - to prevent plaintext communication between Consul agents. At a minimum, - `verify_outgoing` should be enabled to verify server authenticity with each - server having a unique TLS certificate. `verify_server_hostname` is also - required to prevent a compromised agent restarting as a server and being given - access to all secrets. - - `verify_incoming` provides additional agent verification via mutual - authentication, but isn't _strictly_ necessary to enforce the threat model - since requests must also contain a valid ACL token. The subtlety is that - currently `verify_incoming = false` will allow servers to still accept - un-encrypted connections from clients (to allow for gradual TLS rollout). That - alone doesn't violate the threat model, but any misconfigured client that - chooses not to use TLS will violate the model. We recommend setting this to - true. If it is left as false care must be taken to ensure all consul clients - use `verify_outgoing = true` as noted above, but also all external API/UI - access must be via HTTPS with HTTP listeners disabled. - -### Known Insecure Configurations - -In addition to configuring the non-default settings above, Consul has several -non-default options that potentially present additional security risks. - -- **Script checks enabled with network-exposed API.** If a Consul agent (client - or server) exposes its HTTP API to the network beyond localhost, - [`enable_script_checks`](/docs/agent/options#_enable_script_checks) must - be `false` otherwise, even with ACLs configured, script checks present a - remote code execution threat. - [`enable_local_script_checks`](/docs/agent/options#_enable_local_script_checks) - provides a secure alternative if the HTTP API must be exposed and is available - from 1.3.0 on. This feature was also back-ported to patch releases 0.9.4, - 1.1.1, and 1.2.4 [as described here](https://www.hashicorp.com/blog/protecting-consul-from-rce-risk-in-specific-configurations). - -- **Remote exec enabled.** Consul includes a [`consul exec` - feature](/commands/exec) allowing execution of arbitrary commands - across the cluster. This is disabled by default since 0.8.0. We recommend - leaving it disabled. If enabled, extreme care must be taken to ensure correct - ACLs restrict access, for example any management token grants access to - execute arbitrary code on the cluster. - -- **Verify Server Hostname Used Alone.** From version 0.5.1 to 1.4.0 we documented that - `verify_server_hostname` being `true` _implied_ `verify_outgoing` however due - to a bug this was not the case so setting _only_ `verify_server_hostname` - results in plaintext communication between client and server. See - [CVE-2018-19653](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19653) - for more details. This is fixed in 1.4.1. - -## Threat Model - -The following are parts of the Consul threat model: - -- **Consul agent-to-agent communication.** Communication between Consul agents should be secure from eavesdropping. This requires transport encryption to be enabled on the cluster and covers both TCP and UDP traffic. - -- **Consul agent-to-CA communication.** Communication between the Consul server and the configured certificate authority provider for Connect is always encrypted. - -- **Tampering of data in transit.** Any tampering should be detectable and cause Consul to avoid processing the request. - -- **Access to data without authentication or authorization.** All requests must be authenticated and authorized. This requires that ACLs are enabled on the cluster with a default deny mode. - -- **State modification or corruption due to malicious messages.** Ill-formatted messages are discarded and well-formatted messages require authentication and authorization. - -- **Non-server members accessing raw data.** All servers must join the cluster (with proper authentication and authorization) to begin participating in Raft. Raft data is transmitted over TLS. - -- **Denial of Service against a node.** DoS attacks against a node should not compromise the security stance of the software. - -- **Connect-based Service-to-Service communication.** Communications between two Connect-enabled services (natively or by proxy) should be secure from eavesdropping and provide authentication. This is achieved via mutual TLS. - -The following are _not_ part of the Consul threat model for Consul server agents: - -- **Access (read or write) to the Consul data directory.** All Consul servers, including non-leaders, persist the full set of Consul state to this directory. The data includes all KV, service registrations, ACL tokens, Connect CA configuration, and more. Any read or write to this directory allows an attacker to access and tamper with that data. - -- **Access (read or write) to the Consul configuration directory.** Consul configuration can enable or disable the ACL system, modify data directory paths, and more. Any read or write of this directory allows an attacker to reconfigure many aspects of Consul. By disabling the ACL system, this may give an attacker access to all Consul data. - -- **Memory access to a running Consul server agent.** If an attacker is able to inspect the memory state of a running Consul server agent the confidentiality of almost all Consul data may be compromised. If you're using an external Connect CA, the root private key material is never available to the Consul process and can be considered safe. Service Connect TLS certificates should be considered compromised; they are never persisted by server agents but do exist in-memory during at least the duration of a Sign request. - -The following are _not_ part of the Consul threat model for Consul client agents: - -- **Access (read or write) to the Consul data directory.** Consul clients will use the data directory to cache local state. This includes local services, associated ACL tokens, Connect TLS certificates, and more. Read or write access to this directory will allow an attacker to access this data. This data is typically a smaller subset of the full data of the cluster. - -- **Access (read or write) to the Consul configuration directory.** Consul client configuration files contain the address and port information of services, default ACL tokens for the agent, and more. Access to Consul configuration could enable an attacker to change the port of a service to a malicious port, register new services, and more. Further, some service definitions have ACL tokens attached that could be used cluster-wide to impersonate that service. An attacker cannot change cluster-wide configurations such as disabling the ACL system. - -- **Memory access to a running Consul client agent.** The blast radius of this is much smaller than a server agent but the confidentiality of a subset of data can still be compromised. Particularly, any data requested against the agent's API including services, KV, and Connect information may be compromised. If a particular set of data on the server was never requested by the agent, it never enters the agent's memory since replication only exists between servers. An attacker could also potentially extract ACL tokens used for service registration on this agent, since the tokens must be stored in-memory alongside the registered service. - -- **Network access to a local Connect proxy or service.** Communications between a service and a Connect-aware proxy are generally unencrypted and must happen over a trusted network. This is typically a loopback device. This requires that other processes on the same machine are trusted, or more complex isolation mechanisms are used such as network namespaces. This also requires that external processes cannot communicate to the Connect service or proxy (except on the inbound port). Therefore, non-native Connect applications should only bind to non-public addresses. - -- **Improperly Implemented Connect proxy or service.** A Connect proxy or natively integrated service must correctly serve a valid leaf certificate, verify the inbound TLS client certificate, and call the Consul agent-local authorize endpoint. If any of this isn't performed correctly, the proxy or service may allow unauthenticated or unauthorized connections. - -## External Threat Overview - -There are four components that affect the Consul threat model: the server agent, the client agent, the Connect CA, and Consul API clients (including proxies for Connect). - -The server agent participates in leader election and data replication via Raft. All communications with other agents is encrypted. Data is stored at rest unencrypted in the configured data directory. The stored data includes ACL tokens and TLS certificates. If the built-in CA is used with Connect, root certificate private keys are also stored on disk. External CA providers do not store data in this directory. This data directory must be carefully protected to prevent an attacker from impersonating a server or specific ACL user. We plan to introduce further mitigations (including at least partial data encryption) to the data directory over time, but the data directory should always be considered secret. - -For a client agent to join a cluster, it must provide a valid ACL token with node:write capabilities. The join request and all other API requests between the client and server agents communicate via TLS. Clients serve the Consul API and forward all requests to a server over a shared TLS connection. Each request contains an ACL token which is used for both authentication and authorization. Requests that do not provide an ACL token inherit the agent-configurable default ACL token. - -The Connect CA provider is responsible for storing the private key of the root (or intermediate) certificate used to sign and verify connections established via Connect. Consul server agents communicate with the CA provider via an encrypted method. This method is dependent on the CA provider in use. Consul provides a built-in CA which performs all operations locally on the server agent. Consul itself does not store any private key material except for the built-in CA. - -Consul API clients (the agent itself, the built-in UI, external software) must communicate to a Consul agent over TLS and must provide an ACL token per request for authentication and authorization. - -## Network Ports - -For configuring network rules to support Consul, please see [Ports Used](/docs/agent/options#ports) -for a listing of network ports used by Consul and details about which features -they are used for. +The Consul agent supports encrypting all of its network traffic. The exact method of encryption is described on the +[encryption security page](/docs/security/encryption). There are two separate encryption systems, one for gossip +traffic and one for HTTP + RPC. \ No newline at end of file diff --git a/website/pages/docs/security/security-models/core.mdx b/website/pages/docs/security/security-models/core.mdx new file mode 100644 index 000000000..6448d0959 --- /dev/null +++ b/website/pages/docs/security/security-models/core.mdx @@ -0,0 +1,412 @@ +--- +layout: docs +page_title: Consul Core Security Model +sidebar_title: Core +description: >- + Security model including requirements, recommendations, and threats for the core Consul product. +--- + +## Overview + +Consul enables automation of network configurations, service discovery, and secure network connectivity across any +cloud or runtime. + +Consul uses a lightweight gossip and RPC system which provides various essential features. Both of these systems +provide security mechanisms which should be used to enable confidentiality, integrity and authentication. + +Using defense in depth is crucial for Consul security, and deployment requirements may differ drastically depending on +your use case. Some security features for multi-tenant deployments are offered exclusively in the +[Enterprise](/docs/enterprise) version. This documentation may need to be adapted to your +environment, but the general mechanisms for a secure Consul deployment revolve around: + +- **mTLS** - Mutual authentication of both the TLS server and client x509 certificates prevents internal abuse from + unauthorized access to network components within the cluster. + +- **ACLs** - Enable role-based access controls for authenticated connections by granting capabilities for an individual + human, or machine operator identity via an ACL token to authorize actions within a cluster. Optionally, custom + [authentication methods](/docs/security/acl/auth-methods) can be used to enable trusted external parties to authorize + ACL token creation. + +- **Namespaces** - Read and write operations can be scoped to a logical namespace to restrict + access to Consul components within a multi-tenant environment. + +- **Sentinel Policies** - Sentinel policies enable policy-as-code for granular control over + the built-in key-value store. + +### Personas + +It helps to consider the following types of personas when managing the security requirements of a Consul deployment. +The granularity may change depending on your team's requirements. + +- **System Administrator** - This is someone who has access to the underlying infrastructure to the Consul cluster. + Often they have access to SSH or RDP directly into a server within a cluster through a bastion host. Ultimately they + have read, write and execute permissions for the actual Consul binary. This binary is the same for server and client + agents using different configuration files. These users potentially have sudo, administrative, or some other + super-user access to the underlying compute resource. They have access to all persisted data on disk, or in memory. + This would include ACL tokens, certificates, and other secrets stored on the system. Users like these are essentially + totally trusted, as they have administrative rights to the underlying operating-system with the ability to configure, + start, and stop the agent. + +- **Consul Administrator** - This is someone (probably the same System Administrator) who has access to define the + Consul agent configurations for servers and clients, and/or have a Consul management ACL token. They also have total + rights to all of the parts in the Consul system including the ability to manage all services within a cluster. + +- **Consul Operator** - This is someone who likely has restricted capabilities to use their namespace within a cluster. + +- **Developer** - This is someone who is responsible for creating, and possibly deploying applications connected, or + configured with Consul. In some cases they may have no access, or limited capabilities to view Consul information, + such as through metrics, or logs. + +- **User** - This is the end user, using applications backed by services managed by Consul. In some cases services may + be public facing on the internet such as a web server, typically through a load-balancer, or ingress gateway. This is + someone who should not have any network access to the Consul agent APIs. + +### Secure Configuration + +Consul's security model is applicable only if all parts of the system are running with a secure configuration; **Consul +is not secure-by-default.** Without the following mechanisms enabled in Consul's configuration, it may be possible to +abuse access to a cluster. Like all security considerations, administrators must determine what is appropriate for their +environment and adapt these configurations accordingly. + +#### Requirements + +- **mTLS** - Mutual authentication of both the TLS server and client x509 certificates prevents internal abuse through + unauthorized access to Consul agents within the cluster. + + - [`verify_incoming`](/docs/agent/options#verify_incoming) - By default this is false, and should almost always be set + to true to require TLS verification for incoming client connections. This applies to both server RPC and to the + HTTPS API. + + - [`verify_incoming_https`](/docs/agent/options#verify_incoming_https) - By default this is false, and should be set + to true to require clients to provide a valid TLS certificate when the Consul HTTPS API is enabled. TLS for the API + may be not be necessary if it is exclusively served over a loopback interface such as `localhost`. + + - [`verifing_incoming_rpc`](/docs/agent/options#verify_incoming_rpc) - By default this is false, and should almost + always be set to true to require clients to provide a valid TLS certificate for Consul agent RPCs. + + - [`verify_outgoing`](/docs/agent/options#verify_outgoing) - By default this is false, and should be set to true to + require TLS for outgoing connections from server or client agents. Servers that specify `verify_outgoing = true` + will always talk to other servers over TLS, but they still accept non-TLS connections to allow for a transition of + all clients to TLS. Currently the only way to enforce that no client can communicate with a server unencrypted is + to also enable `verify_incoming` which requires client certificates too. + + - [`enable_agent_tls_for_checks`](/docs/agent/options#enable_agent_tls_for_checks) - By default this is false, and + should almost always be set to true to require mTLS to set up the client for HTTP or gRPC health checks. This was + added in Consul 1.0.1. + + - [`verify_server_hostname`](/docs/agent/options#verify_server_hostname) - By default this is false, and should be + set to true to require that the TLS certificate presented by the servers matches + `server..` hostname for outgoing TLS connections. The default configuration does not verify the + hostname of the certificate, only that it is signed by a trusted CA. This setting is critical to prevent a + compromised client agent from being restarted as a server and having all cluster state including all ACL tokens and + Connect CA root keys replicated to it. This setting was introduced in 0.5.1. From version 0.5.1 to 1.4.0 we + documented that `verify_server_hostname` being true implied verify_outgoing however due to a bug this was not the + case so setting only `verify_server_hostname` results in plaintext communication between client and server. See + [CVE-2018-19653](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19653) for more details. This is fixed + in 1.4.1. + + - [`auto_encrypt`](/docs/agent/options#auto_encrypt) - Enables automated TLS certificate distribution for client + agent RPC communication using the Connect CA. Using this configuration a [`ca_file`](/docs/agent/options#ca_file) + and ACL token would still need to be distributed to client agents. + + - [`allow_tls`](/docs/agent/options#allow_tls) - By default this is false, and should be set to true on server + agents to allow certificates to be automatically generated and distributed from the Connect CA to client agents. + + - [`tls`](/docs/agent/options#tls) - By default this false, and should be set to true on client agents to + automatically request a client TLS certificate from the server's Connect CA. + + **Example Server Agent TLS Configuration** + + ```hcl + verify_incoming = true + verify_outgoing = true + verify_server_hostname = true + + ca_file = "consul-agent-ca.pem" + cert_file = "dc1-server-consul-0.pem" + key_file = "dc1-server-consul-0-key.pem" + + auto_encrypt { + allow_tls = true + } + ``` + + **Example Client Agent TLS Configuration** + + ```hcl + verify_incoming = false + verify_outgoing = true + verify_server_hostname = true + + ca_file = "consul-agent-ca.pem" + + auto_encrypt { + tls = true + } + ``` + + -> The client agent TLS configuration from above sets [`verify_incoming`](/docs/agent/options#verify_incoming) to + false which assumes all incoming traffic is restricted to `localhost`. The primary benefit for this configuration + would be to avoid provisioning client TLS certificates (in addition to ACL tokens) for all tools or applications + using the local Consul agent. In this case ACLs should be enabled to provide authorization and only ACL tokens would + need to be distributed. + +- **ACLs** - The access control list (ACL) system provides a security mechanism for Consul administrators to grant + capabilities tied to an individual human, or machine operator identity. To ultimately secure the ACL system, + administrators should configure the [`default_policy`](/docs/agent/options#acl_default_policy) to "deny". + + The [system](/docs/acl/acl-system) is comprised of five major components: + + - **🗝 Token** - API key associated with policies, roles, or service identities. + + - **📜 Policy** - Set of rules to grant or deny access to various Consul resources. + + - **🎭 Role** - Grouping of policies, and service identities. + + - **👤 Service or Node Identity** - Synthetic policy granting a predefined set of permissions typical for services + deployed within Consul. + + - **🏷 Namespace** - a named, logical scoping of Consul Enterprise resources, typically to + enable multi-tenant environments. Consul OSS clusters always operate within the “default” namespace. + +- **Gossip Encryption** - A shared, base64-encoded 32-byte symmetric key is required to [encrypt Serf gossip + communication](https://learn.hashicorp.com/tutorials/consul/gossip-encryption-secure) within a cluster using + AES GCM. The key size determines which AES encryption types to use; 16, 24, or 32 bytes to select AES-128, AES-192, + or AES-256 respectively. 32-byte keys are ultimately preferable and is the default size generated by the + [`keygen`](/commands/keygen) command. This key should be + [regularly rotated](https://support.hashicorp.com/hc/en-us/articles/360044051754-Consul-Gossip-Key-Rotation) using + the builtin [keyring management](/commands/keyring) features of Consul. + + Two optional gossip encryption options enable Consul servers without gossip encryption to safely upgrade. After + upgrading, the verification options should be enabled, or removed to set them to their default state: + + - [`encrypt_verify_incoming`](/docs/agent/options#encrypt_verify_incoming) - By default this is true to enforce + encryption on *incoming* gossip communications. + + - [`encrypt_verify_outgoing`](/docs/agent/options#encrypt_verify_outgoing) - By default this is true to enforce + encryption on *outgoing* gossip communications. + +- **Namespaces** - Read and write operations should be scoped to logical namespaces to + restrict access to Consul components within a multi-tenant environment. Furthermore, this feature can be used to + enable a self-service approach to Consul ACL administration for teams within a scoped namespace. + +- **Sentinel Policies** - Sentinel policies allow for granular control over the builtin + key-value store. + +- **Ensure Script Checks are Disabled** - Consul’s agent optionally has an HTTP API, which can be exposed beyond + `localhost`. If this is the case, `enable_script_checks` must be false otherwise, even with ACLs configured, script + checks present a remote code execution threat. `enable_local_script_checks` provides a secure alternative if the + HTTP API must be exposed and is available from 1.3.0 on. This feature was also back-ported to patch releases 0.9.4, + 1.1.1, and 1.2.4 as described here. This is not enabled by default. + +- **Ensure Remote Execution is Disabled** - Consul includes a consul exec feature allowing execution of arbitrary + commands across the cluster. This is disabled by default since 0.8.0. We recommend leaving it disabled. If enabled, + extreme care must be taken to ensure correct ACLs restrict access to execute arbitrary code on the cluster. + +#### Recommendations + +- **Rotate Credentials** - Using short-lived credentials and rotating them frequently is highly recommended for + production environments to limit the blast radius from potentially compromised secrets, and enabling basic auditing. + + - **ACL Tokens** - Consul API’s require an ACL token to authorize actions within a cluster. + + - **X.509 Certificates** - Rotate certificates used by the Consul agent; e.g. integrate with Vault's PKI secret engine + to automatically generate and renew dynamic, unique X.509 certificates for each Consul node with a short TTL. Client + certificates can be automatically rotated by Consul when using `auto_encrypt` such that only server certificates + would be managed by Vault. + + - **Gossip Keys** - Rotating the encryption keys used by the internal gossip protocol for Consul agents can be + regularly rotated using the builtin keyring management features. + +- **Running without Root** - Consul agents can be run as unprivileged users that only require access to the + data directory. + +- **Linux Security Modules** - Use of security modules that can be directly integrated into operating systems such as + AppArmor, SElinux, and Seccomp on Consul agent hosts. + +- **Customize TLS Settings** - TLS settings such as the [available cipher suites](/docs/agent/options#tls_cipher_suites), + should be tuned to fit the needs of your environment. + + - [`tls_min_version`](/docs/agent/options#tls_min_version) - Used to specify the minimum TLS version to use. + + - [`tls_cipher_suites`](/docs/agent/options#tls_cipher_suites) - Used to specify which TLS cipher suites are allowed. + + - [`tls_prefer_server_cipher_suites`](/docs/agent/options#tls_prefer_server_cipher_suites) - Used to specify which TLS + cipher suites are preferred on the server side. + +- **Customize HTTP Response Headers** - Additional security headers, such as + [`X-XSS-Protection`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection), can be + [configured](https://www.consul.io/docs/agent/options#response_headers) for HTTP API responses. + + ```hcl + http_config { + reponse_headers { + "X-Frame-Options" = "DENY" + } + } + ``` + +- **Customize Default Limits** - Consul has a number of builtin features with default connection limits that should be + tuned to fit your environment. + + - [`http_max_conns_per_client`](/docs/agent/options#http_max_conns_per_client) - Used to limit concurrent access from + a single client to the HTTP(S) endpoint on Consul agents. + + - [`https_handshake_timeout`](/docs/agent/options#https_handshake_timeout) - Used to timeout TLS connection for the + HTTP(S) endpoint for Consul agents. + + - [`rpc_handshake_timeout`](/docs/agent/options#rpc_handshake_timeout) - Used to timeout TLS connections for the RPC + endpoint for Consul agents. + + - [`rpc_max_conns_per_client`](/docs/agent/options#rpc_max_conns_per_client) - Used to limit concurrent access from a + single client to the RPC endpoint on Consul agents. + + - [`rpc_rate`](/docs/agent/options#rpc_rate) - Disabled by default, this is used to limit (requests/second) for client + agents making RPC calls to server agents. + + - [`rpc_max_burst`](/docs/agent/options#rpc_max_burst) - Used as the token bucket size for client agents making RPC + calls to server agents. + + - [`kv_max_value_size`](/docs/agent/options#kv_max_value_size) - Used to configure the max number of bytes in a + key-value API request. + + - [`txn_max_req_len`](/docs/agent/options#txn_max_req_len) - Used to configure the max number of bytes in a + transaction API request. + +- **Secure UI Access** - Access to Consul’s builtin UI can be secured in various ways: + + - **mTLS** - Enabling the HTTPS with mutual TLS authentication is recommended, but requires extra tooling to terminate + the mTLS connection, preferably on an operator's local machine using a proxy script. + + - **TLS** - Enabling the HTTPS is recommended where mTLS may not be required for UI access, such as when ACLs are + configured with a default deny. + + - **ACL** - ACLs with a default deny policy enables safer UI access by preventing unauthorized access to sensitive + components within the cluster. + + - **Restrict HTTP Writes** - Using the allow_write_http_from configuration option enables agent endpoints restricting + write capabilities to a list of CIDRs. + + **Example Agent Configuration** + + ```hcl + http_config { + allow_write_http_from = ["127.0.0.0/8"] + } + ``` + +### Threat Model + +The following are parts of the core Consul threat model: + +- **Consul agent-to-agent communication** - Communication between Consul agents should be secure from eavesdropping. + This requires transport encryption to be enabled on the cluster and covers both TCP and UDP traffic. + +- **Consul agent-to-CA communication** - Communication between the Consul server and the configured certificate + authority provider for Connect is always encrypted. + +- **Tampering of data in transit** - Any tampering should be detectable and cause Consul to avoid processing + the request. + +- **Access to data without authentication or authorization** - All requests must be authenticated and authorized. This +requires that ACLs are enabled on the cluster with a default deny mode. + +- **State modification or corruption due to malicious messages** - Ill-formatted messages are discarded and + well-formatted messages require authentication and authorization. + +- **Non-server members accessing raw data** - All servers must join the cluster (with proper authentication and + authorization) to begin participating in Raft. Raft data is transmitted over TLS. + +- **Denial of Service against a node** - DoS attacks against a node should not compromise the security stance of + the software. + +- **Connect-based Service-to-Service communication** - Communications between two Connect-enabled services (natively or + by proxy) should be secure from eavesdropping and provide authentication. This is achieved via mutual TLS. + +The following are not part of the threat model for server agents: + +- **Access (read or write) to the Consul data directory** - All Consul servers, including non-leaders, persist the full + set of Consul state to this directory. The data includes all KV, service registrations, ACL tokens, Connect CA + configuration, and more. Any read or write to this directory allows an attacker to access and tamper with that data. + +- **Access (read or write) to the Consul configuration directory** - Consul configuration can enable or disable the ACL + system, modify data directory paths, and more. Any read or write of this directory allows an attacker to reconfigure + many aspects of Consul. By disabling the ACL system, this may give an attacker access to all Consul data. + +- **Memory access to a running Consul server agent** - If an attacker is able to inspect the memory state of a running + Consul server agent the confidentiality of almost all Consul data may be compromised. If you're using an external + Connect CA, the root private key material is never available to the Consul process and can be considered safe. Service + Connect TLS certificates should be considered compromised; they are never persisted by server agents but do exist + in-memory during at least the duration of a Sign request. + +The following are not part of the threat model for client agents: + +- **Access (read or write) to the Consul data directory** - Consul clients will use the data directory to cache local + state. This includes local services, associated ACL tokens, Connect TLS certificates, and more. Read or write access + to this directory will allow an attacker to access this data. This data is typically a smaller subset of the full data + of the cluster. + +- **Access (read or write) to the Consul configuration directory** - Consul client configuration files contain the + address and port information of services, default ACL tokens for the agent, and more. Access to Consul configuration + could enable an attacker to change the port of a service to a malicious port, register new services, and more. + Further, some service definitions have ACL tokens attached that could be used cluster-wide to impersonate that + service. An attacker cannot change cluster-wide configurations such as disabling the ACL system. + +- **Memory access to a running Consul client agent** - The blast radius of this is much smaller than a server agent but + the confidentiality of a subset of data can still be compromised. Particularly, any data requested against the agent's + API including services, KV, and Connect information may be compromised. If a particular set of data on the server was + never requested by the agent, it never enters the agent's memory since replication only exists between servers. An + attacker could also potentially extract ACL tokens used for service registration on this agent, since the tokens must + be stored in-memory alongside the registered service. + +- **Network access to a local Connect proxy or service** - Communications between a service and a Connect-aware proxy + are generally unencrypted and must happen over a trusted network. This is typically a loopback device. This requires + that other processes on the same machine are trusted, or more complex isolation mechanisms are used such as network + namespaces. This also requires that external processes cannot communicate to the Connect service or proxy (except on + the inbound port). Therefore, non-native Connect applications should only bind to non-public addresses. + +- **Improperly Implemented Connect proxy or service** - A Connect proxy or natively integrated service must correctly + serve a valid leaf certificate, verify the inbound TLS client certificate, and call the Consul agent-local authorized + endpoint. If any of this isn't performed correctly, the proxy or service may allow unauthenticated or unauthorized + connections. + +#### Internal Threats + +- **Operator** - A malicious internal Consul operator with a valid mTLS certificate and ACL token may still be a threat + to your cluster in certain situations, especially in multi-team deployments. They may accidentally or intentionally + abuse access to Consul components which can help be protected against using Namespace, and Sentinel policies. + +- **Application** - A malicious internal application, suchs as a compromised third-party dependency with access to a + Consul agent, along with the TLS certificate or ACL token used by the local agent, could effectively do anything the + token permits. Consider enabling HTTPS for the local Consul agent API, enforcing full mutual TLS verification, + segmenting services using namespaces, as well as configuring OS users, groups, and file permissions to build a defense-in-depth approach. + +- **RPC** - Malicious actors with access to a Consul agent RPC endpoint may be able to impersonate Consul server agents + if mTLS is not properly configured to verify the client TLS certificate identity. Consul should also have ACLs enabled + with a default policy explicitly set to deny to require authorization. + +- **HTTP** - Malicious actors with access to a Consul agent HTTP(S) endpoint may be able to impersonate the agent’s + configured identity, and extract information from Consul when ACLs are disabled. + +- **DNS** - Malicious actors with access to a Consul agent DNS endpoint may be able to extract service catalog + information. Gossip - Malicious actors with access to a Consul agent Serf gossip endpoint may be able to impersonate + agents within a datacenter. Gossip encryption should be enabled, with a regularly rotated gossip key. + +- **Proxy (xDS)** - Malicious actors with access to a Consul agent xDS endpoint may be able to extract Envoy service + information. When ACLs and HTTPS are enabled, the gRPC endpoint serving up the xDS service requires (m)TLS and a + valid ACL token. + +#### External Threats + +- **Agents** - External access to the Consul agent’s various network endpoints should be considered including the + gossip, HTTP, RPC, and gRPC ports. Furthermore, access through other services like SSH or `exec` functionality in + orchestration systems such as Nomad and Kubernetes may expose unencrypted information persisted to disk including + TLS certificates or ACL tokens. Access to the Consul agent directory is explicitly outside the scope of Consul’s + threat model and should only be exposed to authenticated and authorized users. + +- **Gateways** - Consul supports a variety of [gateways](/docs/connect/gateways) to allow traffic in-and-out of the + service mesh to support a variety of workloads. When using an internet-exposed gateway, you should be sure to harden + your Consul agent and host configurations. In most configurations, ACLS, gossip encryption, and mTLS should be + enforced. If an [escape hatch override](https://www.consul.io/docs/connect/proxies/envoy#escape-hatch-overrides) is + required, the proxy configuration should be audited to ensure security configurations remain intact, and do not + violate Consul’s security model. diff --git a/website/pages/docs/security/security-models/index.mdx b/website/pages/docs/security/security-models/index.mdx new file mode 100644 index 000000000..1feb44789 --- /dev/null +++ b/website/pages/docs/security/security-models/index.mdx @@ -0,0 +1,27 @@ +--- +layout: docs +page_title: Security Models +sidebar_title: Security Models +description: >- + Overview and links to various Consul security models. +--- + +## Overview + +Requirements and recommendations for operating a secure Consul deployment may vary drastically depending on your +intended workloads, operating system, and environment. Consul is not secure by default, but can be configured to satisfy +the security requirements for a wide-range of use cases from local developer environments without any configuration to +container orchestrators in-production with ACL authorization, and mTLS authentication. + +### Core + +The core Consul product provides several options for enabling encryption, authentication, and authorization +controls for a cluster. You can read more about the various personas, recommendations, requirements, and threats +[here](/docs/security/security-models/core). + +### NIA + +[Network Infrastructure Automation](/docs/nia) (NIA) enables dynamic updates to network infrastructure devices triggered +by service changes. Both the core Consul product's configuration and the configuration for the `consul-terraform-sync` +daemon used by NIA can affect the security of your deploymnet. You can read more about the various personas, +recommendations, requirements, and threats [here](/docs/security/security-models/nia). diff --git a/website/pages/docs/security/security-models/nia.mdx b/website/pages/docs/security/security-models/nia.mdx new file mode 100644 index 000000000..f085a4f92 --- /dev/null +++ b/website/pages/docs/security/security-models/nia.mdx @@ -0,0 +1,174 @@ +--- +layout: docs +page_title: Consul NIA Security Model +sidebar_title: Network Infrastructure Automation Tech Preview +description: >- + Security model including requirements, recommendations, and threats for Consul Network Infrastructure Automation (NIA). +--- + +## Overview + +Consul Network Infrastructure Automation (NIA) enables declarative workflows to handle Day-2 network security +infrastructure tasks for network, security, and operations teams. NIA uses [Terraform](https://www.terraform.io/) +to propagate Consul catalog changes, and relevant configuration to network appliances, or network APIs. + +### Personas + +When thinking about Consul NIA, it helps to consider the following types of base personas when managing the security +requirements for the cluster deployment. + +- **System Administrator** - This is someone who has access to the underlying infrastructure to the + Consul NIA daemon, and possibly the core Consul service. Often she has access to SSH directly + into a server within a cluster through a bastion host. Ultimately they have read, write and + execute permissions for the actual NIA daemon binary. These users potentially have sudo, + administrative, or some other super-user access to the underlying compute resource. Users like + these are essentially totally trusted by Consul NIA as they have administrative rights to the + system and can start or stop the daemon. + +- **Consul NIA Operator** - This is someone (probably the same System Administrator) who has access + to define the Consul NIA daemon configuration, and possibly a Consul ACL token, and other secrets to + run the daemon against various network infrastructure APIs. They also have total rights to all of + the parts in the Consul NIA system including the ability to configure, start, and stop the daemon. + +- **Developer** - This is someone who is responsible for creating, and possibly deploying applications + connected, or configured with Consul. In some cases they may have no access, or limited capabilities + to view Consul information, such as through metrics, or logs. + +- **User** - The end-user using the applications and other services managed by the NIA daemon, and should + have no knowledge or access to the daemon’s API endpoints, ACL tokens, certificates, or any other + piece of the system. + +### Secure Configuration + +Consul NIA’s security model is applicable only if all parts of the system are running with a secure +configuration; the daemon is not secure-by-default. Without the following mechanisms enabled in the +daemon’s configuration, it may be possible to abuse access to the daemon. Like all security +considerations, one must determine what concerns are appropriate for their environment, and adapt these +security concerns accordingly. + +#### Requirements + +- **Protect Configuration Files & Directories** - A dedicated NIA daemon user and group with limited + permissions should be created for production, along with directory and file permissions appropriately + scoped for your operating environment. + + Example commands to illustrate creating a dedicated `consul-nia` system user, along with the supporting + directories, configuration file, and securing those permissions using + [`chown`](https://en.wikipedia.org/wiki/Chown) and [`chmod`](https://en.wikipedia.org/wiki/Chmod): + + ```shell-session + $ useradd --system --shell /bin/false consul-nia + $ mkdir -p /consul-nia/data + $ mkdir -p /consul-nia/config + $ echo "{ ... }" > /consul-nia/config/file.hcl + $ chown --recursive consul-nia:consul-nia /consul-nia + $ chmod -R 0750 consul-nia/ + ``` + +- **Protect Consul KV Path or Namespaces** - Note the NIA daemon can monitor Consul services in other Namespaces. + This can be limited based on the ACL token used for the NIA daemon. + +- **Use Consul ACLs** - The Access Control List (ACL) system within Consul can be used to restrict access to + only the required parts of Consul for the NIA daemon to operate. + - **Read + Write** permission for Consul KV to the specified path, and namespace. + - **Read** permission for Consul Catalog for all of the selected services to be monitored, and their namespaces. + - **Read + Write** permission to update health checks, when using NIA health monitoring. + +#### Recommendations + +- **Use Dedicated Host** - The NIA daemon will potentially have access to critical secrets for your environment’s + network infrastructure. Using a hardened, dedicated host, for supporting these sensitive operations is highly. + Workload orchestrators, such as [HashiCorp Nomad](https://www.nomadproject.io/), also provide benefits of ensuring + uptime and isolation. + +- **Run without Root** - The NIA daemon does not require root or other administrative privileges to operate. + +- **Protect NIA Daemon API Endpoint** - Any network endpoints provided by, or exposed to the NIA Daemon should be + protected using Consul Connect and appropriate firewall rules. + +- **Use a centralized logging solution** - Export log entries within [syslog](https://en.wikipedia.org/wiki/Syslog) + generated from the NIA daemon to a centralized logging solution. + +- **Audit used Terraform providers** - [Terraform providers](https://www.terraform.io/docs/providers/index.html) that + are configured with the NIA daemon should be audited to ensure you’re only using providers from sources that + you trust. + +### Threat Model + +The following are the parts of the NIA threat model: + +- **Consul agent communication** - In order to monitor the Consul Catalog for changes, the NIA daemon interacts with + Consul’s HTTP API on a local or remote server agent. This communication requires TLS transport encryption, preferably + using mTLS for mutual authentication. + +- **NIA Terraform communication** - Network connectivity to downstream infrastructure APIs managed by the NIA daemon’s + Terraform runs will need to be properly configured for secure access. + +- **Tampering of data in transit** - Any tampering should be detectable and cause the daemon to avoid processing the + request. + +- **Access to data without authentication or authorization** - Requests to the Consul agent should be authenticated and + authorized using (m)TLS and ACLs respectively. ACLs should be configured with the minimal permissions required for + your environment. + +- **Denial-of-Service** - DoS attacks against the NIA Daemon should not compromise the security of Consul, or Terraform, + but may impact any networking components relying on updates from the daemon to properly handle traffic within the + network. Access to the daemon should be prevented using firewall rules. + +The following are not a part of the threat model, as the NIA Daemon expects a secure configuration, while always +providing the default options for testing in local environments which cannot be automatically configured to be both +secure, and easily usable. However, these are valid concerns for Administrators and Operators to evaluate when hardening +a production deployment: + +- **Access (read or write) to the Consul NIA Configuration Files or Directory** - Necessary configuration for the daemon + process can be loaded from a single file or a directory of files. These configurations may contain secrets and can + enable/disable insecure features, or Terraform providers. + +- **Access (read or write) to the Consul NIA Consul KV Path** - Access to the daemon’s Consul KV path may leak sensitive + information such as usernames, passwords, certificates, and tokens used by Terraform to provision infrastructure. + +- **Memory Access to a Running Consul NIA Daemon Process** - Direct access to the memory of running the daemon process + allows an attacker to extract sensitive information. + +- **Memory Access to a Running Terraform Process** - Direct access to the memory of running the Terraform process + managed by the daemon process allows an attacker to extract sensitive information. + +- **Access to the Terraform Binary** - Direct access to the Terraform binary used by the NIA daemon can allow an + attacker to extract sensitive information. + +- **Access to the Consul NIA Daemon Binary** - Direct access to the system binary used to start the NIA daemon can allow + an attacker to extract sensitive information. + +#### Internal Threats + +- **NIA Operator** - Someone with access to the NIA Host, and it’s related binaries or configuration files may be a + threat to your deployment, especially considering multi-team deployments. They may accidentally or intentionally use a + malicious Terraform provider, or extract various secrets to cause harm to the network. Access to the NIA host should + be guarded. + +- **Consul Operator** - Someone with access to the backend Consul cluster, similar to the NIA Operator, which can + perform actions that may trigger Terraform runs. They may also have access to the namespace and KV path of the NIA + daemon, which could give unintended access to Terraform’s state file, which contains sensitive information. ACL + permissions for Consul should be carefully audited to ensure that no policies may be leaking the state file containing + sensitive information to other Consul operators unintentionally within the cluster. + +- **System-bound Attackers** - Multi-tenant environments, especially container orchestrators, can introduce a number of + security concerns. These may include shared secrets, host volume access, and other sources of potential pivoting, or + privilege escalation from attackers with operating system-level access, or side-car container access, through various + means. Extra steps to configuring OS, cluster, service, user, directory, and file permissions are essential steps for + implementing defense-in-depth within a production environment. + +#### External Threats + +- **Terraform Providers and Modules** - Potentially malicious providers or modules, or any malicious dependencies part + of the Terraform ecosystem could cause harm to the network, and may have access to secrets in order to make necessary + network changes. Terraform provider configuration should be audited, pinned to a version, and audited for potential + typo-squatting issues from the Terraform Registry. + +- **Network-bound Attackers** - Whenever a service is exposed to the open internet, which may be the case, you really + need to consider external network attackers which may seek-out hidden, unauthenticated, or otherwise vulnerable + endpoints. This can lead to larger security concerns when able to pivot to internal resources from an external one. + +- **Leaking Secrets** - TLS certificates and tokens used by the Consul NIA daemon can enable external attackers to + access Consul, or Terraform resources. These secrets shouldn’t be hardcoded into configs uploaded to public + places like GitHub. \ No newline at end of file diff --git a/website/pages/docs/upgrading/upgrade-specific.mdx b/website/pages/docs/upgrading/upgrade-specific.mdx index 47835104c..487037c88 100644 --- a/website/pages/docs/upgrading/upgrade-specific.mdx +++ b/website/pages/docs/upgrading/upgrade-specific.mdx @@ -17,6 +17,15 @@ upgrade flow. ## Consul 1.9.0 +### Changes to Raft Protocol Support + +Consul 1.8 supported Raft protocols 2 and 3. Consul 1.9.0 now only supports +Raft protocol 3 so before upgrading to Consul 1.9.0 users may have to first +upgrade to a previous release supporting both protocol versions and upgrade +the protocol in use to version 3. + +### Changes to Configuration Defaults + The [`enable_central_service_config`](/docs/agent/options#enable_central_service_config) configuration now defaults to `true`. @@ -128,8 +137,8 @@ Starting with Consul 1.7.1 this is the new default. ### Vault: default `http_max_conns_per_client` too low to run Vault properly Consul 1.6.3 introduced [limiting of connections per client](/docs/agent/options#http_max_conns_per_client). The default value -was 100, but Vault could use up to 128, which caused problems. If you want to use Vault with Consul 1.6.3, you should change the value to 200. -Starting with Consul 1.6.4 this is the new default. +was 100, but Vault could use up to 128, which caused problems. If you want to use Vault with Consul 1.6.3 through 1.7.0, you should change the value to 200. +Starting with Consul 1.7.1 this is the new default. ## Consul 1.6.0 @@ -584,6 +593,11 @@ as part of upgrading agents. If this is set to `true`, you should also enable to provide control over which users are allowed to register health checks that could potentially execute scripts on the agent machines. +!> **Security Warning:** Using `enable_script_checks` without ACLs and without +`allow_write_http_from` is _DANGEROUS_. Use the `enable_local_script_checks` setting +introduced in v0.9.4 instead. See [this article](https://www.hashicorp.com/blog/protecting-consul-from-rce-risk-in-specific-configurations/) +for more information. + #### Web UI Is No Longer Released Separately Consul releases will no longer include a `web_ui.zip` file with the compiled diff --git a/website/pages/downloads/index.jsx b/website/pages/downloads/index.jsx index a82c7bcff..dbbd4f7e5 100644 --- a/website/pages/downloads/index.jsx +++ b/website/pages/downloads/index.jsx @@ -14,7 +14,7 @@ export default function DownloadsPage({ releaseData }) { prerelease={{ type: 'beta', // the type of prerelease: beta, release candidate, etc. name: 'v1.9.0', // the name displayed in text on the website - version: '1.9.0-beta1', // the actual version tag that was pushed to releases.hashicorp.com + version: '1.9.0-beta3', // the actual version tag that was pushed to releases.hashicorp.com }} >

diff --git a/website/pages/intro/getting-started/agent.mdx b/website/pages/intro/getting-started/agent.mdx index 2f9778830..42e3c8231 100644 --- a/website/pages/intro/getting-started/agent.mdx +++ b/website/pages/intro/getting-started/agent.mdx @@ -103,7 +103,7 @@ $ curl localhost:8500/v1/catalog/nodes [{"Node":"Armons-MacBook-Air","Address":"127.0.0.1","TaggedAddresses":{"lan":"127.0.0.1","wan":"127.0.0.1"},"CreateIndex":4,"ModifyIndex":110}] ``` -In addition to the HTTP API, the [DNS interface](/docs/agent/dns) can +In addition to the HTTP API, the [DNS interface](/docs/discovery/dns) can be used to query the node. Note that you have to make sure to point your DNS lookups to the Consul agent's DNS server which runs on port 8600 by default. The format of the DNS entries (such as "Armons-MacBook-Air.node.consul") will diff --git a/website/pages/style.css b/website/pages/style.css index b420d9745..c5a7b8cea 100644 --- a/website/pages/style.css +++ b/website/pages/style.css @@ -10,7 +10,7 @@ --highlight-color: var(--consul); } -@import '~@hashicorp/react-alert-banner/dist/style.css'; +@import '~@hashicorp/react-alert-banner/style.css'; @import '~@hashicorp/react-alert/dist/style.css'; @import '~@hashicorp/react-button/dist/style.css'; @import '~@hashicorp/react-call-to-action/dist/style.css'; diff --git a/website/public/img/ui-dashboard-url-template.png b/website/public/img/ui-dashboard-url-template.png new file mode 100644 index 000000000..60421cd60 --- /dev/null +++ b/website/public/img/ui-dashboard-url-template.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d7557ac24e99d023ec2a32238a1b84af5e58103f54cc15898e54f45c683ef8 +size 95310 diff --git a/website/public/img/ui-service-topology-view.png b/website/public/img/ui-service-topology-view.png new file mode 100644 index 000000000..8d11170f5 --- /dev/null +++ b/website/public/img/ui-service-topology-view.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:497b127d27a5a0953c5f898e148d0e49fbf0c0500927b3f0cd5d92a10455dc2b +size 292142